diff --git a/.gitignore b/.gitignore index 42b2f981..13c99941 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,24 @@ -.DS_Store -*.mode1v3 +# Xcode +build/ +build.log *.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +*.xcworkspace +!default.xcworkspace +xcuserdata +profile +*.moved-aside +.DS_Store +Dependencies/GPGTools_Core +Dependencies/Libmacgpg +MLHeaders +*xcuserdata/ +Dependencies/GPGTools_Core +Dependencies/Libmacgpg +Dependencies/DeployResources diff --git a/.gitmodules b/.gitmodules index c2648d1c..e69de29b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +0,0 @@ -[submodule "GPGMail/Dependencies/MacGPGME"] - path = GPGMail/Dependencies/MacGPGME - url = git://github.com/gpgmail/macgpgme.git diff --git a/.tx/config b/.tx/config new file mode 100644 index 00000000..522e8d20 --- /dev/null +++ b/.tx/config @@ -0,0 +1,40 @@ +[main] +host = https://www.transifex.com +lang_map = pt_BR:pt + +[GPGMail.general] +file_filter = Resources/.lproj/GPGMail.strings +source_lang = en +source_file = Resources/en.lproj/GPGMail.strings +type = STRINGS + +[GPGMail.preferences] +file_filter = Resources/.lproj/GPGMailPreferences.strings +source_lang = en +source_file = Resources/en.lproj/GPGMailPreferences.strings +type = STRINGS + +[GPGMail.attachment] +file_filter = Resources/.lproj/GPGAttachment.strings +source_lang = en +source_file = Resources/en.lproj/GPGAttachment.strings +type = STRINGS + +[GPGMail.attachmentsxib] +file_filter = Resources/.lproj/GPGAttachments.strings +source_lang = en +source_file = Resources/en.lproj/GPGAttachments.strings +type = STRINGS + +[GPGMail.signatureview] +file_filter = Resources/.lproj/SignatureView.strings +source_lang = en +source_file = Resources/en.lproj/SignatureView.strings +type = STRINGS + +[GPGMail.signatureviewxib] +file_filter = Resources/.lproj/GPGSignatureView.strings +source_lang = en +source_file = Resources/en.lproj/GPGSignatureView.strings +type = STRINGS + diff --git a/Dependencies/.gitignore b/Dependencies/.gitignore new file mode 100644 index 00000000..792d6005 --- /dev/null +++ b/Dependencies/.gitignore @@ -0,0 +1 @@ +# diff --git a/Docs/ADVANCED PREFERENCES b/Docs/ADVANCED PREFERENCES new file mode 100644 index 00000000..91911fe3 --- /dev/null +++ b/Docs/ADVANCED PREFERENCES @@ -0,0 +1,36 @@ +* Use PGP inline instead of PGP/MIME (EXPERIMENTAL) * + defaults write org.gpgtools.gpgmail UseOpenPGPInlineToSend -bool YES|NO + + +* Completely disable creating snippets. * + The default behaviour is to generate the preview if the passphrase is in cache + even if snippet generation is disabled in GPGMail preferences. + + This option completely disables it. + + defaults write org.gpgtools.gpgmail NeverCreatePreviewSnippets -bool YES|NO + + +* Set a default security method to prefer. * + By default OpenPGP is preferred if no better option is found. + Set this option to 2 to force S/MIME. 1 = OpenPGP. + + defaults write org.gpgtools.gpgmail DefaultSecurityMethod -int 1|2 + + +* Add a mapping for a mail-address or a domain to a key. * + defaults write org.gpgtools.common KeyMapping -dict-add email fingerprint + defaults write org.gpgtools.common KeyMapping -dict-add *@domain.com fingerprint + + +* Enable debug logging. This spills out a LOT of messages. * + defaults write org.gpgtools.common DebugLog -bool YES|NO + + +* Disable or enable OpenPGP for reading messages. * + defaults write org.gpgtools.gpgmail UseOpenPGPForReading -bool YES|NO + + +* FOR DEBUGGING ONLY: Hides all signature attachments, even if they fail to verify. * + defaults write org.gpgtools.gpgmail HideAllSignatureAttachments -bool YES|NO + diff --git a/Docs/BUGS b/Docs/BUGS new file mode 100644 index 00000000..92af9220 --- /dev/null +++ b/Docs/BUGS @@ -0,0 +1,4 @@ +- Uncaught Exception if GPG is not installed. +- Uncaught Exception if no secret keys are available. +- Uncaught Exception if no public keys are available. +- Uncaught Exception if pinentry is missing (happens in libmacgpg) diff --git a/Docs/CODING b/Docs/CODING new file mode 100644 index 00000000..7b4f3978 --- /dev/null +++ b/Docs/CODING @@ -0,0 +1,178 @@ +Every Mail.app method which is to be swizzled, has to be prefixed +with MA (MailApp). + +There's a folder in Resources which is called old. This folder +is used to diff the a modified xib with the latest xib. +It's used for localizeXIB. +DON'T EVER DELETE THIS FOLDER! + +* Reverse Engineering * + +- Sometimes it's not to easy to find out what happens to an + object you created. In that case you can over release it, + using autorelease or release. This way, the object will be + ending up an NSZombie, which can later be tracked using Instruments + allocation tool. (VERY HELPFUL) + +- clearCachedDecrypted is called everytime the message is unlodaed. + we should better cache it. + +- Mail internally seems to use firstChildPart to determine the charset of the message. + +- Log all messages -> instrumentObjcMessageSends(YES) writes to /tmp/msgSends- + +_getSomeCharsetFromPartTree -> exists only internally + +- -[Message setNumberOfAttachments:isSigned:isEncrypted:] is only called for + encrypted messages, strangely enough. + Still have to find out what usually sets the number. + Mail.app uses -[MessageStore setNumberOfAttachments:isSigned:isEncrypted:forMessage:] to set the number + of attachments for every message, but this is only called when the message comes in + and never touched again, except for encrypted messages. + + So to always work, GPGMail forces Mail.app to update the number for every message, each time + it's parsed or the number is different, by recalculating the number. + +* Committing * + +- Always use git -p . This let's you decide for each file + what lines should be added to a commit. +- Use this to create commits which only fix one problem at a time. + +* Other * + +- Mail.app comes with a lot of general class enhancements. It's best to look + them through to find helpful ones. + + @interface NSData (MessageAdditions) + - (id)initWithDataConvertingLineEndingsFromUnixToNetwork:(id)arg1; + - (id)initWithDataConvertingLineEndingsFromNetworkToUnix:(id)arg1; + - (id)dataByConvertingLineEndingsFromUnixToNetwork; + + // To detect if the data contains real message headers. + - (struct _NSRange)rangeOfRFC822HeaderData; + +* Data Detectors * + +- Extremely hard to implement native ones. +- Enabling Javascript in WebViews works + [[WebView preferences] setJavaScriptEnabled:YES] +- Using Javascript to emulate the bevaiour might be rather easy. + +* Mountain Lion * + +- MimePart, MimeBody and other very important classes from Message.framework + are now in CoreMessage.framework +- MessageStore does no longer exist but was replaced by MessageDataSource. +- On Mountain Lion compiled GPGMail doesn't load, where on Lion compiled GPGMail loads + - Check Framework dependencies. + - Update Header files for Mountain Lion + +* OpenPGP | S/MIME co-existence + +1.) A new message (not reply) is created check if the there's a key for signing + for the address in either OpenPGP or S/MIME. Choose the method to enable accordingly. + + If there are keys for either method, check the entries which method was last used + to sign with this key. + + If again both methods are found check which was used more often. + + Once a user changes the method manually, NEVER automatically manipulate that + choice again. + + [ComposeBackEnd type] defines whether the message is replied|forwared|replied-to-all|new + - 5 -> New message + - 1 -> Reply + - 2 -> Reply to all + - 3 -> Forward + - 4 -> Reply to already open mesage? (Mail.app was closed with this reply open and it's restored.) + + once a user enters addresses a dictionary is checked to see if the last time + the user sent to these addresses decided to encrypt or not and sets that status. + If no message was sent yet to that user, don't encrypt. + + If there's one key for signing for each method but the recipients can only be found for one encryption method + automatically select that encryption method. + + If a user replies to a message, check if the message was signed and set signed. + If a user replies to a message, check if the message was encrypted and set encrypted. + Don't set something which the old message was not. + + User defaults should look like this + [address][sign][SMIME][addresses][did-sign] = counter + [address][sign][PGP][addresses][did-not-sign] = counter + [address][sign][addresses][last-used-method] = 'SMIME' | 'PGP' + [address][sign][addresses][last-status] = 'did sign' | 'did not sign' + [address][encrypt][SMIME][addresses][did-encrypt] = counter + [address][encrypt][PGP][addresses][did-not-encrypt] = counter + [address][encrypt][addresses][last-used-method] = 'SMIME' | 'PGP' + [address][encrypt][addresses][last-status] = 'did encrypt' | 'did not encrypt' + +* Indexing encrypted messages + +Message.h + +- (id)stringForIndexing; +- (id)stringForIndexingUpdatingBodyFlags:(BOOL)arg1; + +might be relevant. + +* Access struct instance variables of Mail Classes * + +Copy the struct definition you want to use into your header file +using a typedef. After that you can access the struct data using the following +code. + +StructType structVar; +object_getInstanceVariable(self, "", (void **)&structVar); + +Very nice! + +* XPC Services for sandboxed Mail.app >= 10.8 * + +Bad Apple which really doesn't like plugins for Mail.app has disabled mach lookup names +for Mail.app +Our XPC Service has to use a mach name since it's running as a launchd item instead +as part of an app (otherwise it would have to live inside Mail.app and we certainly +don't want to mess with that!). +BUT fortunately for us, Apple has introduced an two exceptions for mach lookup names. +One can be found in the file /System/Library/Sandbox/Profiles/application.sb (which contains +the rules which are evaluated for each available entitlement) and one can be found +in the entitlements Mail.app is signed with directly. +Use "codesign --display --entitlements - /Applications/Mail.app" to display the available +entitlements and check for "mach-lookup" to find interesting ones. +In the application.sb file there's a mach-lookup allow rule, which allows every app to lookup +mach services which end in _OpenStep. +Mail.app's entitlements allow every mach service which only has numbers as its name. +So as long as Apple doesn't remove these rules and our xpc service has a matching name +we're mighty mighty fine :)! + +* Additional documentation for NSXPCConnection * + +NSXPCConnection invokes error, interruption or invalidation handlers +for specific errors which are documented, but as not much as one would want. + +This is a list of all the available handlers and when they are invoked: + +- invalidationHandler: + - invoked when there's a problem establishing a connection: + - the xpc service was unloaded or is being unloaded while a message + is waiting for a response + - the xpc service is not loaded at all -> in that case it's invoked + immediately after calling resume. + +- remoteObjectProxy errorHandler: + - when the xpc service crashes (e.g. overrelease or other BAD EXC failure in the xpc service) + - when the xpc service is killed (also with -9) + - when the xpc service is unloaded with `launchctl unload` + - when the xpc service is unloaded with `launchctl remove` + +- interruptionHandler: + - when the connection was already invalidated (call to invalidate) + and the xpc service is killed. + - everytime remoteObjectProxy errorHandler is invoked. + +* Class weak linking for Mavericks * + +http://www.sealiesoftware.com/blog/archive/2010/4/8/Do-it-yourself_Objective-C_weak_import.html diff --git a/Docs/GPG related notes b/Docs/GPG related notes new file mode 100644 index 00000000..904e3846 --- /dev/null +++ b/Docs/GPG related notes @@ -0,0 +1,14 @@ +Keys and Subkeys + +- Each subkey is a new key pair - public key / secret key +- To encrypt or sign a message you need at least one valid key +- either subkey or the primary key +- Subkey are used to build something similar to a certificate tree +- if a node is invalidated, the nodes under it are invalidated as well. +- not necessary to consider them in gpg mail +- Each key has at least one subkey which is automatically created when a new key is created + +UIDS + +- Each uid is an identity for a key +- A uid allows the key to set a different name or a different email address or similar diff --git a/Docs/GPGMAIL_NOTES b/Docs/GPGMAIL_NOTES new file mode 100644 index 00000000..dee2b42d --- /dev/null +++ b/Docs/GPGMAIL_NOTES @@ -0,0 +1,11 @@ +- _updateSecurityStateInBackgroundForRecipients:sender: calls inside itself + 1.) canSignFromAddress: + 2.) canEncryptFromAddress: + + +- updateSecurityControls seems to call _updateSecurityStateInBackgroundForRecipients:sender: with + an NSInvocation + + + Might be interesting +- (id)missingCertificatesMessageForRecipients:(id)arg1 uponDelivery:(BOOL)arg2; \ No newline at end of file diff --git a/Docs/GPGMail - signer info for header b/Docs/GPGMail - signer info for header new file mode 100644 index 00000000..02df9e6a --- /dev/null +++ b/Docs/GPGMail - signer info for header @@ -0,0 +1,36 @@ +for signature verification +call parentController on MessageHeaderDisplay -> receive MessageContentController +call viewingState -> call mimeBody +call mimeBody -> topLevelPart +uses messageFlags to check if the message is indeed signed. +and based on that info calls isSigned. +and then verifySignature on that. + + +verify signature steps in decodeMultipartSignedWithContext: +-> call verifySignature + -> call needsSignatureVerification:(parameter is a pointer to a MFError) + -> checks if _smimeError is set already, returns 0 if so + and sets the error pointer on _smimeError. + -> if yes + -> call usesKnownSignatureProtocol + -> if yes + -> call signedData -> being the data that was signed (obv!) + -> fetch data for signature part + -> now, when it's gpg, the signature is not recognized as such + hence verifySignatureWithCMSDecoder is never called, + we have to do it ourselves. + + + + -> call verifySignatureWithCMSDecoder + -> if an error occurs -> set MFError on error pointer + -> set _smimeError to the MFError + return value seems to be always null + +-- on a different note, on init all message flags are set to 1 +4294967295 this is 111111111111111111111111 in binary +-- after that, these flags are updated accordingly + + +Error Domain=MFMessageErrorDomain Code=1036 "Beim Lesen der digitalen Signatur dieser E-Mail ist ein Problem aufgetreten." UserInfo=0x107f01a50 {NSLocalizedDescription=Beim Lesen der digitalen Signatur dieser E-Mail ist ein Problem aufgetreten., MFSMIMESignerStatus=4, _MFShortDescription=Die E-Mail-Signatur konnte nicht überprüft werden., MFSMIMECertificateStatus=-2147409652, MFSMIMETrustKey=} diff --git a/Docs/GPGMail Interesting Notifications b/Docs/GPGMail Interesting Notifications new file mode 100644 index 00000000..b3e64450 --- /dev/null +++ b/Docs/GPGMail Interesting Notifications @@ -0,0 +1,44 @@ +2011-06-21 01:32:48.159 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] name: NSViewFrameDidChangeNotification +2011-06-21 01:32:48.160 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] object: +2011-06-21 01:32:48.160 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] userInfo: (null) +2011-06-21 01:32:48.161 Mail[40340:707] [DEBUG] -[GPGMail_MessageContentController gpgSetHasSetupMessageBody:] In List view, I'm out of here! +2011-06-21 01:32:48.161 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] name: NSViewFrameDidChangeNotification +2011-06-21 01:32:48.161 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] object: +2011-06-21 01:32:48.169 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] userInfo: (null) +2011-06-21 01:32:48.169 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] name: NSViewFrameDidChangeNotification +2011-06-21 01:32:48.169 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] object: +2011-06-21 01:32:48.169 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] userInfo: (null) +2011-06-21 01:32:48.170 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] name: NSViewFrameDidChangeNotification +2011-06-21 01:32:48.170 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] object: +2011-06-21 01:32:48.175 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] userInfo: (null) +2011-06-21 01:32:48.176 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] name: NSTableViewSelectionDidChangeNotification +2011-06-21 01:32:48.176 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] object: +2011-06-21 01:32:48.176 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] userInfo: (null) +2011-06-21 01:32:48.176 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] name: MessageViewingPaneControllerFinishedSelectingFirstActionMessage +2011-06-21 01:32:48.176 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] object: +2011-06-21 01:32:48.180 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] userInfo: (null) +2011-06-21 01:32:48.180 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] name: NSUserDefaultsDidChangeNotification +2011-06-21 01:32:48.180 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] object: +2011-06-21 01:32:48.180 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] userInfo: (null) +2011-06-21 01:32:48.563 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] name: NSViewBoundsDidChangeNotification +2011-06-21 01:32:48.564 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] object: <_MailNSClipView: 0x1074daf00> +2011-06-21 01:32:48.564 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] userInfo: (null) +2011-06-21 01:32:48.564 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] name: NSViewFrameDidChangeNotification +2011-06-21 01:32:48.564 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] object: +2011-06-21 01:32:48.564 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] userInfo: (null) +2011-06-21 01:32:48.565 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] name: NSTextViewWillChangeNotifyingTextViewNotification +GPGPostNotificationName:object:userInfo:] name: MessageCellViewSizeDidChange +2011-06-21 01:32:16.960 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] object: - +2011-06-21 01:32:16.961 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] userInfo: (null) +GPGPostNotificationName:object:userInfo:] name: MessageWillNoLongerBeDisplayedInView +2011-06-21 01:32:47.813 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] object: (null) +2011-06-21 01:32:47.813 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] userInfo: { + MVMessageContainerViewKey = ""; + MessageKey = ""; +} +2011-06-21 01:30:52.321 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] name: MessageWillBeDisplayedInView +2011-06-21 01:30:52.321 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] object: +2011-06-21 01:30:52.321 Mail[40340:707] [DEBUG] -[GPGMail_MailNotificationCenter GPGPostNotificationName:object:userInfo:] userInfo: { + MVMessageContainerViewKey = ""; + MessageKey = ""; +} diff --git a/Docs/GPGMail Method calls b/Docs/GPGMail Method calls new file mode 100644 index 00000000..6afc0a96 --- /dev/null +++ b/Docs/GPGMail Method calls @@ -0,0 +1,89 @@ +-- Decode function calls +MimePart parsedMessageWithContext + MimePart GPGDecryptedMessageBodyIsEncrypted:isSigned:isEncrypted -> returns nil, then +MimePart decodeWithContext + - within decodeWithContext sub method, SetDecrypted should be called (I have to do this!) + - after setDecrypted call decodeWithContext again, main method! + - our own decryptWithContext method GPGDecodeApplicationPgp_EncryptedWithContext returns + -> nil => decryption failed + -> html or plain text => decryption succeeded + + + +- decodedContentWithContext is only called for mails with attachments, + doesn't really concern us + + +- (id)_makeMessageWithContents:(id)arg1 isDraft:(BOOL)arg2 shouldSign:(BOOL)arg3 shouldEncrypt:(BOOL)arg4 shouldSkipSignature:(BOOL)arg5 shouldBePlainText:(BOOL)arg6; +-> Use for encryption / signing? + +- If message flags is set to encrypted (in emlx file) + GPGDecryptedMessageBodyIsEncrypted is called after + MimeBody.parsedMessage + MimeBody.parsedMessageWithContext + - ALSO when NOT set! + +Decode for mime part (top level) calls decryptedMesageBody... again +if returns nil, in case the current part contains encrypted data on to decrypting the body! + +- verifySignature will be used for signature + - is called by the signed part AFTER decryption when initializing + the decrypted message! + + +== hook methods for sending messages == + +ComposeBackEnd + +- (id)_makeMessageWithContents:(id)arg1 isDraft:(BOOL)arg2 shouldSign:(BOOL)arg3 shouldEncrypt:(BOOL)arg4 shouldSkipSignature:(BOOL)arg5 shouldBePlainText:(BOOL)arg6; +- (void)setSignIfPossible:(BOOL)arg1; +- (void)setEncryptIfPossible:(BOOL)arg1; +// I guess this defines, whether the sign icon can be enabled. +- (BOOL)canSignFromAddress:(id)arg1; +// I guess this defines, whether the sign icon can be enabled. +- (BOOL)canEncryptForRecipients:(id)arg1 sender:(id)arg2; + +MailApp + +- (BOOL)signOutgoingMessages; +- (void)setSignOutgoingMessages:(BOOL)arg1; +- (BOOL)encryptOutgoingMessages; +- (void)setEncryptOutgoingMessages:(BOOL)arg1; + +MailDocumentEditor + +- (void)backEnd:(id)arg1 didCancelMessageDeliveryForMissingCertificatesForRecipients:(id)arg2; +- (id)missingCertificatesMessageForRecipients:(id)arg1 uponDelivery:(BOOL)arg2; +- (void)backEnd:(id)arg1 didCancelMessageDeliveryForEncryptionError:(id)arg2; +- (void)_shouldDeliverMessageAlertWithoutEncryptionSheetDidDismiss:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)encryptionStatusDidChange; + +MessageWriter + +- (BOOL)signsOutput; +- (void)setSignsOutput:(BOOL)arg1; +- (BOOL)encryptsOutput; +- (void)setEncryptsOutput:(BOOL)arg1; ++ (BOOL)canSignMessagesFromAddress:(id)arg1; ++ (BOOL)canEncryptMessagesToAddress:(id)arg1; ++ (BOOL)canEncryptMessagesToAddresses:(id)arg1 sender:(id)arg2; +- (id)newSignedPartWithData:(id)arg1 sender:(id)arg2 signatureData:(id *)arg3; +- (id)newEncryptedPartWithData:(id)arg1 recipients:(id)arg2 encryptedData:(id *)arg3; + +Raise NSAlertContentView if something might go wrong! + +- toggleEncryptButtonImages and toggleSignButtonImages to change the lock and sign status + in the compose view + +== Message Framework calls to create a new message == + +[MessageWriter newMessageWithHtmlString:(id)arg1 plainTextAlternative:(id)arg2 otherHtmlStringsAndAttachments:(id)arg3 headers:(id)arg4] + Create a new outgoing message + -> OutgoingMessage + Create a new outgoing message body and set the message + -> _OutgoingMessageBody + -> setMessageBody + _createOutgoingMessageFromTopLevelMimePart + [MimePart newEncryptedPartWithData:(id)arg1 recipients:(id)arg2 encryptedData:(id *)arg3] + + diff --git a/Docs/GPGMail NOTEs b/Docs/GPGMail NOTEs new file mode 100644 index 00000000..7721e4f6 --- /dev/null +++ b/Docs/GPGMail NOTEs @@ -0,0 +1,3 @@ +// To redraw securityattributedStringsHeaders again? +- redisplayHeaders +YES \ No newline at end of file diff --git a/Docs/GPGMail READ b/Docs/GPGMail READ new file mode 100644 index 00000000..38326475 --- /dev/null +++ b/Docs/GPGMail READ @@ -0,0 +1,43 @@ +-- Path to Library Message +ExpandingSplitView -> MessageViewingPane -> controller: MessageViewingPaneController -> MessagesTableView -> _MessageContentTableRowView -> MessageContentController -> LibraryMessage + +- All Header evtl. interessant um zu checken ob GPG Message oder nicht + +MessageFlags -> + 42140681 - Not Encrypted / Not Signed + 42204169 - Encrypted & Signed + 42204161 - Signed only + 33815561 - Encrypted only + +10000000111111110000001001 +-- +00000000000000000000000100 True +--------------------------------- +00000000000000000000001000 + 100000000000000000000000 False + + +42204169 + +100000111111110000001001 +000000110000010000000001 + + +33752064 + +000000110000010000000001 + +4194312 + + +010000000000000000001000 +000000000000000000001000 + + +000000110000010000000001 +010000000000000000001000 +010000110000010000001001 + +000000110000000000000000 +010000000000000000001000 + diff --git a/Docs/GPGMail TODOs b/Docs/GPGMail TODOs new file mode 100644 index 00000000..878a6273 --- /dev/null +++ b/Docs/GPGMail TODOs @@ -0,0 +1,13 @@ +FOR 2.0 +- How to identify a key for signing? +- If a key is used identified by the fingerprint, which email address + is displayed in the signature view if the key has multiple uids + for different email addresses? +- Fix compose interface when Priority field is enabled (GPG checkbox not visible) +- Fix compose interface when in customizing mode. + +AFTER 2.0 +- Implement a ui element which allows to choose the key used for signing + (taking into consideration keys sharing the same email address, + or uids sharing the same email address but different names.) +- Same for encrypting key \ No newline at end of file diff --git a/Docs/MOUNTAIN LION b/Docs/MOUNTAIN LION new file mode 100644 index 00000000..f3659a7d --- /dev/null +++ b/Docs/MOUNTAIN LION @@ -0,0 +1,27 @@ +- Basically loads +- Symlinked bundles don't load -> Change install script in Xcode +- .gnupg can't be accessed, since it's not copied into /Users/lukele/Library/Containers/com.apple.mail/Data/ + +08.03.12 04:18:40,983 Mail: Can't load config (/Users/lukele/Library/Containers/com.apple.mail/Data/.gnupg/gpg-agent.conf): Error Domain=NSCocoaErrorDomain Code=257 "The file “gpg-agent.conf” couldn’t be opened because you don’t have permission to view it." UserInfo=0x7fecf31217a0 {NSFilePath=/Users/lukele/Library/Containers/com.apple.mail/Data/.gnupg/gpg-agent.conf, NSUnderlyingError=0x7fecf311c2a0 "The operation couldn’t be completed. Operation not permitted"} + + cp -R the .gnupg/gpg.conf into that directory for testing + + Relevant: https://developer.apple.com/library/mac/#documentation/Security/Conceptual/AppSandboxDesignGuide/MigratingALegacyApp/MigratingAnAppToASandbox.html#//apple_ref/doc/uid/TP40011183-CH6-SW1 + + + +- gpg2 can't be run + + Dyld Error Message: + Library not loaded: /usr/local/MacGPG2/lib/libintl.8.dylib + Referenced from: /usr/local/bin/gpg2 + Reason: no suitable image found. Did find: + /usr/local/MacGPG2/lib/libintl.8.dylib: open() failed with errno=1 + + Fix with XPC? + + Relevant: https://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/CreatingXPCServices.html#//apple_ref/doc/uid/10000172i-SW6 + + XPC does work, but needs to be installed inside /Applications/Mail.app/Contents/XPCServices for now. + + Takes kind of a long time to respond -> maybe use send_message_reply_sync? \ No newline at end of file diff --git a/Docs/Mail.app Notifications b/Docs/Mail.app Notifications new file mode 100644 index 00000000..1d379454 --- /dev/null +++ b/Docs/Mail.app Notifications @@ -0,0 +1,108 @@ +BackupManagerEditableMessagesAddedOrUpdated +BackupManagerEditableMessagesDeleted +LogMessageDeletionTimes +LogMessageLoadTimes +LogMessageTransferTimes +LogMessageThreadingTimes +LogEntireMessageSearchTimes +LogMessageTransferActivity +LogMessageMallSortErrors +LogUseDebugMessageViewColors +ResponseMessage +IMAPMessageDownload +IMAPMessageWithCache +NumberOfMessagesMarkedAsJunk +NumberOfMessagesMarkedAsNotJunk +MessageConsumer +LibraryMessagesAddedNotification +LibraryMessagesUpdatedNotification +LibraryMessagesFlagsChangedNotification +LibraryMessagesCompactedNotification +Messages- +MessagesNeedUpgrading +MFSQLiteExceptionErrorMessageKey +MessageDetails +LibraryIMAPMessage +CachedMessages +__-[LibraryStore async_setFlagsFromDictionary:forMessages:]_block_invoke_1 +IndexDecryptedMessages +NumberOfDaysToKeepSentMessages +MoveDeletedMessagesToTrash +MFMessageCounts +MessageIsRead +MessageIsDeleted +MessageWasRepliedTo +MessageIsEncrypted +MessageIsFlagged +MessageIsDraft +MessageFlagColor +MessageWasForwarded +MessageWasRedirected +MessageNumberOfAttachments +MessagePriorityLevel +MessageParentalControlState +MessagePerTypeCustomStorage +MessageIsSigned +MessageIsJunk +MessageIsNotJunk +MessageFontSizeDelta +MessageJunkMailLevelRecorded +MessageHighlightTextInTOC +MessageJunkMailLevel +MessageColor +MessageColorHasBeenEvaluated +MessageHasBeenViewed +MessageViewedDate +MFMessageFlagsSetFlagColor +MessageRule +MessageStoreWillOpen +MessageStoreDidOpen +MessageStoreStructureChanged +MessageStoreMessageSnippetsForMessagesKey +MessageStoreMessagesSnippetsUpdated +MessageStoreDidClose +MFMessageFlagsSetFlagColor +MessageStore +MessageStoreMessagesAddedDuringOpen +MessageStoreMessagesAdded +MessageStoreMessageFlagsKey +MessageStoreMessageFlagsMaskKey +MessageStoreMessageColorKey +MessageStoreMessageHighlightTextKey +MessageStoreMessageMetadataChanged +MessageStoreFinishedLoading +MessageStringRenderContext +MessageStringUniquer +MessageThread +MFMessageFlagsSetFlagColor +FilteredMessages +UnreadMessageCount +NewestMessage +NewestReceivedMessage +NewestSentMessage +OldestMessage +OldestUnreadMessage +MessageWithHighestLibraryID +MessageWithHighestRemoteID +FlaggedMessageCount +JunkMessageCount +RealNewestMessage +MessageWithHighestNumberWithinStores +MessageThreadMessagesChanged +MessageTracer +MessageURLProtocol +MFMessageErrorDomain +MessageRuleAdditions +MessagesFromMixedStoresConvenience +MessageQuoteLevelAttributeName +MessageSubjectAttributeName +MessageFrameworkAdditions +MessagePasteboardSupport +MessageAdditions +MFMessageFlagsSetFlagColor +MessageFlagsKey +NumberOfMessagesRouted +NumberOfMessagesJunkMailFilterEvaluated +NumberOfMessagesEvaluatedAsJunkMail +NumberOfMessagesManuallyMarkedAsJunkMail +NumberOfMessagesManuallyMarkedNotJunkMail diff --git a/Docs/NOTES b/Docs/NOTES new file mode 100644 index 00000000..b8ba7091 --- /dev/null +++ b/Docs/NOTES @@ -0,0 +1,13 @@ +- Remove Darstellung -> PGP Schlüssel +- Menu options not working -> decide which are still needed, + which can be removed. +- If details in Mail.app mail window is not active, the + lock icon is not displayed, which doesn't allow to decrypt then... + (keep the toolbar icon) +- doesn't properly display content of GPG signed messages which don't + contain an email, but only text. (create an email out of them first, then decrypt). + use - (id)newMessageWithHtmlString:(id)arg1 plainTextAlternative:(id)arg2 otherHtmlStringsAndAttachments:(id)arg3 headers:(id)arg4; + of MessageWriter + +- Support "Searching encrypted emails" in Preferences! +- Drafts not yet supported - will be stored in clean text. diff --git a/Docs/VERSIONING b/Docs/VERSIONING new file mode 100644 index 00000000..327e7029 --- /dev/null +++ b/Docs/VERSIONING @@ -0,0 +1,15 @@ + +CFBundleShortVersionString contains the human readable version in the form of "MAJOR.MINOR[PRERELEASE]" +Samples: 2.0a30, 2.1, 2.1.2b3 + +BuildNumber contains the build time in hours since 2000 +BuildNumber="$(($(date +"%s") / 3600 - 262968))" + +CFBundleVersion contains the BuildNumber and the PRERELEASE suffix. "BuildNumber[ (PRERELEASE)]" +Samples: 106645, 106750 (b15) + +CommitHash contains the first 7 characters from the git commit hash. +CommitHash="$(git rev-parse --short HEAD)" +Sample: e9021cb + +These values are filled by a post-build-action. diff --git a/GPGMail/Frameworks/Sparkle.framework/Headers b/Frameworks/RegexKit.framework/Headers similarity index 100% rename from GPGMail/Frameworks/Sparkle.framework/Headers rename to Frameworks/RegexKit.framework/Headers diff --git a/Frameworks/RegexKit.framework/RegexKit b/Frameworks/RegexKit.framework/RegexKit new file mode 120000 index 00000000..2b831b2e --- /dev/null +++ b/Frameworks/RegexKit.framework/RegexKit @@ -0,0 +1 @@ +Versions/Current/RegexKit \ No newline at end of file diff --git a/GPGMail/Frameworks/Sparkle.framework/Resources b/Frameworks/RegexKit.framework/Resources similarity index 100% rename from GPGMail/Frameworks/Sparkle.framework/Resources rename to Frameworks/RegexKit.framework/Resources diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/NSArray.h b/Frameworks/RegexKit.framework/Versions/A/Headers/NSArray.h new file mode 100644 index 00000000..fcf533ac --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/NSArray.h @@ -0,0 +1,74 @@ +// +// NSArray.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_NSARRAY_H_ +#define _REGEXKIT_NSARRAY_H_ 1 + +#import +#import + +@interface NSArray (RegexKitAdditions) +-(NSArray *)arrayByMatchingObjectsWithRegex:(id)aRegex; +-(NSArray *)arrayByMatchingObjectsWithRegex:(id)aRegex inRange:(const NSRange)range; +-(BOOL)containsObjectMatchingRegex:(id)aRegex; +-(BOOL)containsObjectMatchingRegex:(id)aRegex inRange:(const NSRange)range; +-(RKUInteger)countOfObjectsMatchingRegex:(id)aRegex; +-(RKUInteger)countOfObjectsMatchingRegex:(id)aRegex inRange:(const NSRange)range; +-(RKUInteger)indexOfObjectMatchingRegex:(id)aRegex; +-(RKUInteger)indexOfObjectMatchingRegex:(id)aRegex inRange:(const NSRange)range; +-(NSIndexSet *)indexSetOfObjectsMatchingRegex:(id)aRegex; +-(NSIndexSet *)indexSetOfObjectsMatchingRegex:(id)aRegex inRange:(const NSRange)range; + +@end + + @interface NSMutableArray (RegexKitAdditions) +- (void)addObjectsFromArray:(NSArray *)otherArray matchingRegex:(id)aRegex; +-(void)removeObjectsMatchingRegex:(id)aRegex; +-(void)removeObjectsMatchingRegex:(id)aRegex inRange:(const NSRange)range; + +@end + +#endif // _REGEXKIT_NSARRAY_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/NSData.h b/Frameworks/RegexKit.framework/Versions/A/Headers/NSData.h new file mode 100644 index 00000000..81dec475 --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/NSData.h @@ -0,0 +1,66 @@ +// +// NSData.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_NSDATA_H_ +#define _REGEXKIT_NSDATA_H_ 1 + +#import +#import +#import + +@interface NSData (RegexKitAdditions) +- (BOOL)isMatchedByRegex:(id)aRegex; +- (BOOL)isMatchedByRegex:(id)aRegex inRange:(const NSRange)range; +- (NSRange)rangeOfRegex:(id)aRegex; +- (NSRange)rangeOfRegex:(id)aRegex inRange:(const NSRange)range capture:(const RKUInteger)capture; +- (NSRange *)rangesOfRegex:(id)aRegex; +- (NSRange *)rangesOfRegex:(id)aRegex inRange:(const NSRange)range; +- (NSData *)subdataByMatching:(id)aRegex; +- (NSData *)subdataByMatching:(id)aRegex inRange:(const NSRange)range; + +@end + +#endif // _REGEXKIT_NSDATA_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/NSDictionary.h b/Frameworks/RegexKit.framework/Versions/A/Headers/NSDictionary.h new file mode 100644 index 00000000..10044363 --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/NSDictionary.h @@ -0,0 +1,74 @@ +// +// NSDictionary.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_NSDICTIONARY_H_ +#define _REGEXKIT_NSDICTIONARY_H_ 1 + +#import +#import + + @interface NSDictionary (RegexKitAdditions) +- (NSDictionary *)dictionaryByMatchingKeysWithRegex:(id)aRegex; +- (NSDictionary *)dictionaryByMatchingObjectsWithRegex:(id)aRegex; +- (BOOL)containsKeyMatchingRegex:(id)aRegex; +- (BOOL)containsObjectMatchingRegex:(id)aRegex; +- (NSArray *)keysMatchingRegex:(id)aRegex; +- (NSArray *)keysForObjectsMatchingRegex:(id)aRegex; +- (NSArray *)objectsForKeysMatchingRegex:(id)aRegex; +- (NSArray *)objectsMatchingRegex:(id)regexObject; + + @end + + @interface NSMutableDictionary (RegexKitAdditions) +- (void)addEntriesFromDictionary:(id)otherDictionary withKeysMatchingRegex:(id)aRegex; +- (void)addEntriesFromDictionary:(id)otherDictionary withObjectsMatchingRegex:(id)aRegex; +- (void)removeObjectsMatchingRegex:(id)aRegex; +- (void)removeObjectsForKeysMatchingRegex:(id)aRegex; + + +@end + +#endif // _REGEXKIT_NSDICTIONARY_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/NSObject.h b/Frameworks/RegexKit.framework/Versions/A/Headers/NSObject.h new file mode 100644 index 00000000..70b26573 --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/NSObject.h @@ -0,0 +1,68 @@ +// +// NSObject.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_NSOBJECT_H_ +#define _REGEXKIT_NSOBJECT_H_ 1 + +#import +#import + +@interface NSObject (RegexKitAdditions) +- (BOOL)isMatchedByRegex:(id)aRegex; +- (BOOL)isMatchedByAnyRegexInArray:(NSArray *)regexArray; +- (RKRegex *)anyMatchingRegexInArray:(NSArray *)regexArray; +- (RKRegex *)firstMatchingRegexInArray:(NSArray *)regexArray; +- (BOOL)isMatchedByAnyRegexInArray:(NSArray *)regexArray library:(NSString *)library options:(RKCompileOption)libraryOptions error:(NSError **)error; +- (RKRegex *)anyMatchingRegexInArray:(NSArray *)regexArray library:(NSString *)library options:(RKCompileOption)libraryOptions error:(NSError **)error; +- (RKRegex *)firstMatchingRegexInArray:(NSArray *)regexArray library:(NSString *)library options:(RKCompileOption)libraryOptions error:(NSError **)error; +- (BOOL)isMatchedByAnyRegexInSet:(NSSet *)regexSet; +- (RKRegex *)anyMatchingRegexInSet:(NSSet *)regexSet; +- (BOOL)isMatchedByAnyRegexInSet:(NSSet *)regexSet library:(NSString *)library options:(RKCompileOption)libraryOptions error:(NSError **)error; +- (RKRegex *)anyMatchingRegexInSet:(NSSet *)regexSet library:(NSString *)library options:(RKCompileOption)libraryOptions error:(NSError **)error; + +@end + +#endif // _REGEXKIT_NSOBJECT_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/NSSet.h b/Frameworks/RegexKit.framework/Versions/A/Headers/NSSet.h new file mode 100644 index 00000000..f4cdf8fa --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/NSSet.h @@ -0,0 +1,70 @@ +// +// NSSet.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_NSSET_H_ +#define _REGEXKIT_NSSET_H_ 1 + +#import +#import +#import + + @interface NSSet (RegexKitAdditions) +-(id)anyObjectMatchingRegex:(id)aRegex; +-(BOOL)containsObjectMatchingRegex:(id)aRegex; +-(RKUInteger)countOfObjectsMatchingRegex:(id)aRegex; +-(NSSet *)setByMatchingObjectsWithRegex:(id)aRegex; + + +@end + + @interface NSMutableSet (RegexKitAdditions) +-(void)removeObjectsMatchingRegex:(id)aRegex; +- (void)addObjectsFromArray:(NSArray *)otherArray matchingRegex:(id)aRegex; +- (void)addObjectsFromSet:(NSSet *)otherSet matchingRegex:(id)aRegex; + +@end + +#endif // _REGEXKIT_NSSET_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/NSString.h b/Frameworks/RegexKit.framework/Versions/A/Headers/NSString.h new file mode 100644 index 00000000..9a343b45 --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/NSString.h @@ -0,0 +1,103 @@ +// +// NSString.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_NSSTRING_H_ +#define _REGEXKIT_NSSTRING_H_ 1 + +#import +#import +#import +REGEXKIT_EXTERN NSRange RKConvertUTF8ToUTF16RangeForString(NSString *string, NSRange range); +REGEXKIT_EXTERN NSRange RKConvertUTF16ToUTF8RangeForString(NSString *string, NSRange range); + +@interface NSString (RegexKitAdditions) +- (BOOL)getCapturesWithRegexAndReferences:(id)aRegex, ... RK_REQUIRES_NIL_TERMINATION; +- (BOOL)getCapturesWithRegex:(id)aRegex inRange:(const NSRange)range references:(NSString * const)firstReference, ... RK_REQUIRES_NIL_TERMINATION; +- (NSRange *)rangesOfRegex:(id)aRegex; +- (NSRange *)rangesOfRegex:(id)aRegex inRange:(const NSRange)range; +- (NSRange)rangeOfRegex:(id)aRegex; +- (NSRange)rangeOfRegex:(id)aRegex inRange:(const NSRange)range capture:(const RKUInteger)capture; +- (BOOL)isMatchedByRegex:(id)aRegex; +- (BOOL)isMatchedByRegex:(id)aRegex inRange:(const NSRange)range; +- (RKEnumerator *)matchEnumeratorWithRegex:(id)aRegex; +- (RKEnumerator *)matchEnumeratorWithRegex:(id)aRegex inRange:(const NSRange)range; +- (NSString *)stringByMatching:(id)aRegex withReferenceString:(NSString * const)referenceString; +- (NSString *)stringByMatching:(id)aRegex inRange:(const NSRange)range withReferenceString:(NSString * const)referenceString; +//- (NSString *)stringByMatching:(id)aRegex fromIndex:(const RKUInteger)anIndex withReferenceString:(NSString * const)referenceString; +//- (NSString *)stringByMatching:(id)aRegex toIndex:(const RKUInteger)anIndex withReferenceString:(NSString * const)referenceString; +- (NSString *)stringByMatching:(id)aRegex withReferenceFormat:(NSString * const)referenceFormatString, ...; +- (NSString *)stringByMatching:(id)aRegex inRange:(const NSRange)range withReferenceFormat:(NSString * const)referenceFormatString, ...; +- (NSString *)stringByMatching:(id)aRegex inRange:(const NSRange)range withReferenceFormat:(NSString * const)referenceFormatString arguments:(va_list)argList; +//- (NSString *)stringByMatching:(id)aRegex fromIndex:(const RKUInteger)anIndex withReferenceFormat:(NSString * const)referenceFormatString, ...; +//- (NSString *)stringByMatching:(id)aRegex toIndex:(const RKUInteger)anIndex withReferenceFormat:(NSString * const)referenceFormatString, ...; +- (NSString *)stringByMatching:(id)aRegex replace:(const RKUInteger)count withReferenceString:(NSString * const)referenceString; +- (NSString *)stringByMatching:(id)aRegex inRange:(const NSRange)range replace:(const RKUInteger)count withReferenceString:(NSString * const)referenceString; +//- (NSString *)stringByMatching:(id)aRegex fromIndex:(const RKUInteger)anIndex replace:(const RKUInteger)count withReferenceString:(NSString * const)referenceString; +//- (NSString *)stringByMatching:(id)aRegex toIndex:(const RKUInteger)anIndex replace:(const RKUInteger)count withReferenceString:(NSString * const)referenceString; +- (NSString *)stringByMatching:(id)aRegex replace:(const RKUInteger)count withReferenceFormat:(NSString * const)referenceFormatString, ...; +- (NSString *)stringByMatching:(id)aRegex inRange:(const NSRange)range replace:(const RKUInteger)count withReferenceFormat:(NSString * const)referenceFormatString, ...; +//- (NSString *)stringByMatching:(id)aRegex fromIndex:(const RKUInteger)anIndex replace:(const RKUInteger)count withReferenceFormat:(NSString * const)referenceFormatString, ...; +//- (NSString *)stringByMatching:(id)aRegex toIndex:(const RKUInteger)anIndex replace:(const RKUInteger)count withReferenceFormat:(NSString * const)referenceFormatString, ...; + +- (NSString *)stringByMatching:(id)aRegex inRange:(const NSRange)range replace:(const RKUInteger)count withReferenceFormat:(NSString * const)referenceFormatString arguments:(va_list)argList; + +@end + +@interface NSMutableString (RegexKitAdditions) +- (RKUInteger)match:(id)aRegex replace:(const RKUInteger)count withString:(NSString * const)replacementString; +- (RKUInteger)match:(id)aRegex inRange:(const NSRange)range replace:(const RKUInteger)count withString:(NSString * const)replacementString; +//- (RKUInteger)match:(id)aRegex fromIndex:(const RKUInteger)anIndex replace:(const RKUInteger)count withString:(NSString * const)replacementString; +//- (RKUInteger)match:(id)aRegex toIndex:(const RKUInteger)anIndex replace:(const RKUInteger)count withString:(NSString * const)replacementString; + +- (RKUInteger)match:(id)aRegex replace:(const RKUInteger)count withFormat:(NSString * const)formatString, ...; +- (RKUInteger)match:(id)aRegex inRange:(const NSRange)range replace:(const RKUInteger)count withFormat:(NSString * const)formatString, ...; +- (RKUInteger)match:(id)aRegex inRange:(const NSRange)range replace:(const RKUInteger)count withFormat:(NSString * const)formatString arguments:(va_list)argList; +//- (RKUInteger)match:(id)aRegex fromIndex:(const RKUInteger)anIndex replace:(const RKUInteger)count withFormat:(NSString * const)formatString, ...; +//- (RKUInteger)match:(id)aRegex toIndex:(const RKUInteger)anIndex replace:(const RKUInteger)count withFormat:(NSString * const)formatString, ...; + +@end + +#endif // _REGEXKIT_NSSTRING_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/RKCache.h b/Frameworks/RegexKit.framework/Versions/A/Headers/RKCache.h new file mode 100644 index 00000000..ec9b529f --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/RKCache.h @@ -0,0 +1,110 @@ +// +// RKCache.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_RKCACHE_H_ +#define _REGEXKIT_RKCACHE_H_ 1 + +#import +#import +#import +#import + +@class RKReadWriteLock; + +@interface RKCache : NSObject { + RK_STRONG_REF RKReadWriteLock *cacheRWLock; + RK_STRONG_REF NSMapTable *cacheMapTable; + RK_STRONG_REF NSString *cacheDescriptionString; + RKUInteger cacheHits; + RKUInteger cacheMisses; + RKUInteger cacheClearedCount; + int cacheInitialized; + int cacheIsEnabled; + int cacheAddingIsEnabled; // Used during debugging + int cacheLookupIsEnabled; // Used during debugging + RK_STRONG_REF char *cacheDescriptionUTF8String; +} +- (id)initWithDescription:(NSString * const)descriptionString; +- (void)setDescription:(NSString * const)descriptionString; +- (NSString *)status; +- (NSString *)description; +- (id)objectForHash:(const RKUInteger)objectHash description:(NSString * const)descriptionString; +- (id)objectForHash:(const RKUInteger)objectHash description:(NSString * const)descriptionString autorelease:(const BOOL)shouldAutorelease; +- (BOOL)addObjectToCache:(id)object; +- (BOOL)addObjectToCache:(id)object withHash:(const RKUInteger)objectHash; +- (id)removeObjectFromCache:(id)object; +- (id)removeObjectWithHash:(const RKUInteger)objectHash; +- (BOOL)clearCache; +- (NSSet *)cacheSet; +- (BOOL)isCacheEnabled; +- (BOOL)setCacheEnabled:(const BOOL)enableCache; +- (RKUInteger)cacheCount; + +@end + + +@interface RKCache (CacheDebugging) + +- (BOOL)isCacheAddingEnabled; +- (BOOL)setCacheAddingEnabled:(const BOOL)enableCacheAdding; +- (BOOL)isCacheLookupEnabled; +- (BOOL)setCacheLookupEnabled:(const BOOL)enableCacheLookup; + +@end + +@interface RKCache (CountersDebugging) + +- (void)setDebug:(const BOOL)enableDebugging; +- (void)clearCounters; +- (RKUInteger)cacheClearedCount; +- (RKUInteger)readBusyCount; +- (RKUInteger)readSpinCount; +- (RKUInteger)writeBusyCount; +- (RKUInteger)writeSpinCount; + +@end + +#endif // _REGEXKIT_RKCACHE_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/RKEnumerator.h b/Frameworks/RegexKit.framework/Versions/A/Headers/RKEnumerator.h new file mode 100644 index 00000000..39277d55 --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/RKEnumerator.h @@ -0,0 +1,91 @@ +// +// RKEnumerator.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_RKENUMERATOR_H_ +#define _REGEXKIT_RKENUMERATOR_H_ 1 + +@class RKRegex; + +#import +#import +#import + +@interface RKEnumerator : NSEnumerator { + RKRegex *regex; + NSString *string; + RKUInteger atBufferLocation; + RKUInteger regexCaptureCount; + NSRange searchByteRange; + NSRange searchUTF16Range; + RK_STRONG_REF NSRange *resultUTF8Ranges; + RK_STRONG_REF NSRange *resultUTF16Ranges; + RKUInteger hasPerformedMatch:1; +} ++ (id)enumeratorWithRegex:(id)aRegex string:(NSString * const)string; ++ (id)enumeratorWithRegex:(id)aRegex string:(NSString * const)string inRange:(const NSRange)range; ++ (id)enumeratorWithRegex:(id)initRegex string:(NSString * const)initString inRange:(const NSRange)initRange error:(NSError **)error; +- (id)initWithRegex:(id)initRegex string:(NSString * const)initString; +- (id)initWithRegex:(id)initRegex string:(NSString * const)initString inRange:(const NSRange)initRange; +- (id)initWithRegex:(id)initRegex string:(NSString * const)initString inRange:(const NSRange)initRange error:(NSError **)error; +- (RKRegex *)regex; +- (NSString *)string; +- (NSRange)currentRange; +- (NSRange)currentRangeForCapture:(const RKUInteger)capture; +- (NSRange)currentRangeForCaptureName:(NSString * const)captureNameString; +- (NSRange *)currentRanges; +- (id)nextObject; +- (NSRange)nextRange; +- (NSRange)nextRangeForCapture:(const RKUInteger)capture; +- (NSRange)nextRangeForCaptureName:(NSString * const)captureNameString; +- (NSRange *)nextRanges; +- (BOOL)getCapturesWithReferences:(NSString * const)firstReference, ... RK_REQUIRES_NIL_TERMINATION; +- (NSString *)stringWithReferenceString:(NSString * const)referenceString; +- (NSString *)stringWithReferenceFormat:(NSString * const)referenceFormatString, ...; +- (NSString *)stringWithReferenceFormat:(NSString * const)referenceFormatString arguments:(va_list)argList; + +@end + +#endif // _REGEXKIT_RKENUMERATOR_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/RKRegex.h b/Frameworks/RegexKit.framework/Versions/A/Headers/RKRegex.h new file mode 100644 index 00000000..35773b08 --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/RKRegex.h @@ -0,0 +1,104 @@ +// +// RKRegex.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_RKREGEX_H_ +#define _REGEXKIT_RKREGEX_H_ 1 + +#import +#import +#import +#import + +@interface RKRegex : NSObject { + RK_STRONG_REF pcre *_compiledPCRE; // Pointer to pcre library type pcre. + RK_STRONG_REF pcre_extra *_extraPCRE; // Pointer to pcre library type pcre_extra. + + NSString *compiledRegexString; // A copy of the regex string that was compiled. + RKCompileOption compileOption; // The options used to compile this regex. + RKUInteger captureCount; // The number of captures in the compiled regex string. + RK_STRONG_REF char *captureNameTable; // Pointer to capture names structure. + RKUInteger captureNameTableLength; // Number of entries in the capture name structure + RKUInteger captureNameLength; // The length of a capture name entry. + NSArray *captureNameArray; // An array that maps capture index values to capture names. nil if no named captures. + + RKInteger referenceCountMinusOne; // Keep track of the reference count ourselves. + RKUInteger hash; // Hash value for this object. + + RK_STRONG_REF char *compiledRegexUTF8String; + RK_STRONG_REF char *compiledOptionUTF8String; +} + ++ (RKCache *)regexCache; + ++ (NSString *)PCREVersionString; ++ (int32_t)PCREMajorVersion; ++ (int32_t)PCREMinorVersion; ++ (RKBuildConfig)PCREBuildConfig; + ++ (BOOL)isValidRegexString:(NSString * const)regexString options:(const RKCompileOption)options; ++ (id)regexWithRegexString:(NSString * const)regexString options:(const RKCompileOption)options; ++ (id)regexWithRegexString:(NSString * const RK_C99(restrict))regexString library:(NSString * const RK_C99(restrict))libraryString options:(const RKCompileOption)libraryOptions error:(NSError **)error; +- (id)initWithRegexString:(NSString * const RK_C99(restrict))regexString options:(const RKCompileOption)options; +- (id)initWithRegexString:(NSString * const RK_C99(restrict))regexString library:(NSString * const RK_C99(restrict))library options:(const RKCompileOption)libraryOptions error:(NSError **)error; +- (NSString *)regexString; +- (RKCompileOption)compileOption; + +- (RKUInteger)captureCount; +- (NSArray *)captureNameArray; +- (BOOL)isValidCaptureName:(NSString * const)captureNameString; +- (RKUInteger)captureIndexForCaptureName:(NSString * const)captureNameString; +- (NSString *)captureNameForCaptureIndex:(const RKUInteger)captureIndex; +- (RKUInteger)captureIndexForCaptureName:(NSString * const RK_C99(restrict))captureNameString inMatchedRanges:(const NSRange * const RK_C99(restrict))matchedRanges; +- (RKUInteger)captureIndexForCaptureName:(NSString * const RK_C99(restrict))captureNameString inMatchedRanges:(const NSRange * const RK_C99(restrict))matchedRanges error:(NSError **)error; + +- (BOOL)matchesCharacters:(const void * const RK_C99(restrict))matchCharacters length:(const RKUInteger)length inRange:(const NSRange)searchRange options:(const RKMatchOption)options; +- (NSRange)rangeForCharacters:(const void * const RK_C99(restrict))matchCharacters length:(const RKUInteger)length inRange:(const NSRange)searchRange captureIndex:(const RKUInteger)captureIndex options:(const RKMatchOption)options; +- (NSRange *)rangesForCharacters:(const void * const RK_C99(restrict))matchCharacters length:(const RKUInteger)length inRange:(const NSRange)searchRange options:(const RKMatchOption)options; +- (RKMatchErrorCode)getRanges:(NSRange * const RK_C99(restrict))ranges withCharacters:(const void * const RK_C99(restrict))charactersBuffer length:(const RKUInteger)length inRange:(const NSRange)searchRange options:(const RKMatchOption)options; + +@end + +#endif // _REGEXKIT_RKREGEX_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/RKUtility.h b/Frameworks/RegexKit.framework/Versions/A/Headers/RKUtility.h new file mode 100644 index 00000000..76005fa9 --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/RKUtility.h @@ -0,0 +1,60 @@ +// +// RKUtility.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_RKUTILITY_H_ +#define _REGEXKIT_RKUTILITY_H_ 1 + +#import +#import +#import +REGEXKIT_EXTERN NSString *RKStringFromNewlineOption(const int decodeNewlineOption, NSString *prefixString) RK_ATTRIBUTES(nonnull (2), used); +REGEXKIT_EXTERN NSArray *RKArrayFromMatchOption(const RKMatchOption decodeMatchOption) RK_ATTRIBUTES(used); +REGEXKIT_EXTERN NSArray *RKArrayFromCompileOption(const RKCompileOption decodeCompileOption) RK_ATTRIBUTES(used); +REGEXKIT_EXTERN NSArray *RKArrayFromBuildConfig(const RKBuildConfig decodeBuildConfig) RK_ATTRIBUTES(used); +REGEXKIT_EXTERN NSString *RKStringFromCompileErrorCode(const RKCompileErrorCode decodeErrorCode) RK_ATTRIBUTES(used); +REGEXKIT_EXTERN NSString *RKStringFromMatchErrorCode(const RKMatchErrorCode decodeErrorCode) RK_ATTRIBUTES(used); + +#endif // _REGEXKIT_RKUTILITY_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/RegexKit.h b/Frameworks/RegexKit.framework/Versions/A/Headers/RegexKit.h new file mode 100644 index 00000000..b87cd717 --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/RegexKit.h @@ -0,0 +1,86 @@ +// +// RegexKit.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_REGEXKIT_H_ +#define _REGEXKIT_REGEXKIT_H_ 1 + +#import +#import + +// Include primary header for the runtime environment +#ifdef __MACOSX_RUNTIME__ +#import +#else // Using GNUstep run time +#import +#import +#endif //__MACOSX_RUNTIME__ defined in RegexKitDefines + +// RKLock and RKReadWriteLock are private classes +@class RKRegex, RKCache, RKEnumerator, RKLock, RKReadWriteLock; + +#ifdef USE_AUTORELEASED_MALLOC +@class RKAutoreleasedMemory; +#endif + +#ifdef USE_PLACEHOLDER +@class RKRegexPlaceholder; +#endif + +#import + +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import + + +#endif // _REGEXKIT_REGEXKIT_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/RegexKitDefines.h b/Frameworks/RegexKit.framework/Versions/A/Headers/RegexKitDefines.h new file mode 100644 index 00000000..0c9dd747 --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/RegexKitDefines.h @@ -0,0 +1,175 @@ +// +// RegexKitDefines.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_REGEXKITDEFINES_H_ +#define _REGEXKIT_REGEXKITDEFINES_H_ 1 + +#import + +#define __REGEXKIT__ + + +// Determine runtime environment +#if !defined(__MACOSX_RUNTIME__) && !defined(__GNUSTEP_RUNTIME__) + +#if defined(__APPLE__) && defined(__MACH__) && !defined(GNUSTEP) +#define __MACOSX_RUNTIME__ +#endif // If not Mac OS X, GNUstep? + +#if defined(GNUSTEP) && !defined(__MACOSX_RUNTIME__) +#define __GNUSTEP_RUNTIME__ +#endif // Not Mac OS X or GNUstep, that's a problem. + +#endif // !defined(__MACOSX_RUNTIME__) && !defined(__GNUSTEP_RUNTIME__) + + +// If the above did not set the run time environment, error out. +#if !defined(__MACOSX_RUNTIME__) && !defined(__GNUSTEP_RUNTIME__) +#error Unable to determine run time environment, automatic Mac OS X and GNUstep detection failed +#endif + +#if defined(NSINTEGER_DEFINED) +#define RKInteger NSInteger +#define RKUInteger NSUInteger +#define RKIntegerMax NSIntegerMax +#define RKIntegerMin NSIntegerMin +#define RKUIntegerMax NSUIntegerMax +#else +#define RKInteger int +#define RKUInteger unsigned int +#define RKIntegerMax INT_MAX +#define RKIntegerMin INT_MIN +#define RKUIntegerMax UINT_MAX +#endif + +#if defined (__GNUC__) && (__GNUC__ >= 4) +#define RKREGEX_STATIC_INLINE static __inline__ __attribute__((always_inline)) +#define RKREGEX_STATIC_PURE_INLINE static __inline__ __attribute__((always_inline, pure)) +#define RK_EXPECTED(cond, expect) __builtin_expect(cond, expect) +#define RK_ATTRIBUTES(attr, ...) __attribute__((attr, ##__VA_ARGS__)) +#else +#define RKREGEX_STATIC_INLINE static __inline__ +#define RKREGEX_STATIC_PURE_INLINE static __inline__ +#define RK_EXPECTED(cond, expect) cond +#define RK_ATTRIBUTES(attr, ...) +#endif + +#if defined(__MACOSX_RUNTIME__) && defined(MAC_OS_X_VERSION_10_5) && defined(NS_REQUIRES_NIL_TERMINATION) +#define RK_REQUIRES_NIL_TERMINATION NS_REQUIRES_NIL_TERMINATION +#else +#define RK_REQUIRES_NIL_TERMINATION +#endif + +// Other compilers and platforms may be able to use the following: +// +// #define RK_REQUIRES_NIL_TERMINATION RK_ATTRIBUTES(sentinel) + +#if __STDC_VERSION__ >= 199901L +#define RK_C99(keyword) keyword +#else +#define RK_C99(keyword) +#endif + +#ifdef __cplusplus +#define REGEXKIT_EXTERN extern "C" +#define REGEXKIT_PRIVATE_EXTERN __private_extern__ +#else +#define REGEXKIT_EXTERN extern +#define REGEXKIT_PRIVATE_EXTERN __private_extern__ +#endif +#define RKReplaceAll RKIntegerMax + +// Used to size/check buffers when calling private RKRegex getRanges:count:withCharacters:length:inRange:options: +#define RK_PRESIZE_CAPTURE_COUNT(x) (256 + x + (x >> 1)) +#define RK_MINIMUM_CAPTURE_COUNT(x) (x + ((x / 3) + ((3 - (x % 3)) % 3))) + +/*************** Feature and config knobs ***************/ + +// Default enabled +#define USE_PLACEHOLDER + +#if OBJC_API_VERSION < 2 && !defined (MAC_OS_X_VERSION_10_5) +#define USE_AUTORELEASED_MALLOC +#endif // Not enabled on Objective-C 2.0 (Mac OS X 10.5) + +#ifdef __COREFOUNDATION__ +#define USE_CORE_FOUNDATION +#endif + +#ifdef __MACOSX_RUNTIME__ +#define HAVE_NSNUMBERFORMATTER_CONVERSIONS +#endif + +#if defined(HAVE_NSNUMBERFORMATTER_CONVERSIONS) +#define RK_ENABLE_THREAD_LOCAL_STORAGE +#endif + +#if defined(__MACOSX_RUNTIME__) && defined(MAC_OS_X_VERSION_10_5) && defined(__OBJC_GC__) +#define ENABLE_MACOSX_GARBAGE_COLLECTION +#define RK_STRONG_REF __strong +#define RK_WEAK_REF __weak +#else +#define RK_STRONG_REF +#define RK_WEAK_REF +#endif + +#if defined(ENABLE_MACOSX_GARBAGE_COLLECTION) && !defined(MAC_OS_X_VERSION_10_5) +#error The Mac OS X Garbage Collection feature requires at least Mac OS X 10.5 +#endif + +#if defined(__MACOSX_RUNTIME__) && defined(MAC_OS_X_VERSION_10_5) && defined(S_DTRACE_DOF) +#define ENABLE_DTRACE_INSTRUMENTATION +#endif + +// AFAIK, only the GCC 3.3+ Mac OSX objc runtime has -fobjc-exception support +#if (!defined(__MACOSX_RUNTIME__)) || (!defined(__GNUC__)) || ((__GNUC__ == 3) && (__GNUC_MINOR__ < 3)) || (!defined(MAC_OS_X_VERSION_10_3)) +// Otherwise, use NS_DURING / NS_HANDLER and friends +#define USE_MACRO_EXCEPTIONS +#endif + +/*************** END Feature and config knobs ***************/ + +#endif //_REGEXKIT_REGEXKITDEFINES_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/RegexKitTypes.h b/Frameworks/RegexKit.framework/Versions/A/Headers/RegexKitTypes.h new file mode 100644 index 00000000..b77a5ce1 --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/RegexKitTypes.h @@ -0,0 +1,226 @@ +// +// RegexKitTypes.h +// RegexKit +// http://regexkit.sourceforge.net/ +// + +/* + Copyright © 2007-2008, John Engelhart + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Zang Industries nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _REGEXKIT_REGEXKITTYPES_H_ +#define _REGEXKIT_REGEXKITTYPES_H_ 1 + +@class NSString; + +// Defined in RKRegex.m Constants added here MUST be included in 'exports_list' to be visible! +extern NSString * const RKRegexSyntaxErrorException; +extern NSString * const RKRegexUnsupportedException; +extern NSString * const RKRegexCaptureReferenceException; +extern NSString * const RKRegexPCRELibrary; +extern NSString * const RKRegexPCRELibraryErrorDomain; +extern NSString * const RKRegexErrorDomain; +extern NSString * const RKRegexLibraryErrorKey; +extern NSString * const RKRegexLibraryErrorStringErrorKey; +extern NSString * const RKRegexStringErrorKey; +extern NSString * const RKRegexStringErrorRangeErrorKey; +extern NSString * const RKAttributedRegexStringErrorKey; +extern NSString * const RKAbreviatedRegexStringErrorKey; +extern NSString * const RKAbreviatedRegexStringErrorRangeErrorKey; +extern NSString * const RKAbreviatedAttributedRegexStringErrorKey; +extern NSString * const RKCompileOptionErrorKey; +extern NSString * const RKCompileOptionArrayErrorKey; +extern NSString * const RKCompileOptionArrayStringErrorKey; +extern NSString * const RKCompileErrorCodeErrorKey; +extern NSString * const RKCompileErrorCodeStringErrorKey; +extern NSString * const RKArrayIndexErrorKey; +extern NSString * const RKObjectErrorKey; +extern NSString * const RKCollectionErrorKey; + +typedef enum { + RKMatchErrorNoError = 0, + RKMatchErrorNoMatch = -1, + RKMatchErrorNull = -2, + RKMatchErrorBadOption = -3, + RKMatchErrorBadMagic = -4, + RKMatchErrorUnknownOpcode = -5, + RKMatchErrorNoMemory = -6, + RKMatchErrorNoSubstring = -7, + RKMatchErrorMatchLimit = -8, + RKMatchErrorCallout = -9, + RKMatchErrorBadUTF8 = -10, + RKMatchErrorBadUTF8Offset = -11, + RKMatchErrorPartial = -12, + RKMatchErrorBadPartial = -13, + RKMatchErrorInternal = -14, + RKMatchErrorBadCount = -15, + RKMatchErrorRecursionLimit = -21, + RKMatchErrorNullWorkSpaceLimit = -22, + RKMatchErrorBadNewline = -23 +} RKMatchErrorCode; + +typedef enum { + RKCompileErrorNoError = 0, + RKCompileErrorEscapeAtEndOfPattern = 1, + RKCompileErrorByteEscapeAtEndOfPattern = 2, + RKCompileErrorUnrecognizedCharacterFollowingEscape = 3, + RKCompileErrorNumbersOutOfOrder = 4, + RKCompileErrorNumbersToBig = 5, + RKCompileErrorMissingTerminatorForCharacterClass = 6, + RKCompileErrorInvalidEscapeInCharacterClass = 7, + RKCompileErrorRangeOutOfOrderInCharacterClass = 8, + RKCompileErrorNothingToRepeat = 9, + RKCompileErrorInternalErrorUnexpectedRepeat = 11, + RKCompileErrorUnrecognizedCharacterAfterOption = 12, + RKCompileErrorPOSIXNamedClassOutsideOfClass = 13, + RKCompileErrorMissingParentheses = 14, + RKCompileErrorReferenceToNonExistentSubpattern = 15, + RKCompileErrorErrorOffsetPassedAsNull = 16, + RKCompileErrorUnknownOptionBits = 17, + RKCompileErrorMissingParenthesesAfterComment = 18, + RKCompileErrorRegexTooLarge = 20, + RKCompileErrorNoMemory = 21, + RKCompileErrorUnmatchedParentheses = 22, + RKCompileErrorInternalCodeOverflow = 23, + RKCompileErrorUnrecognizedCharacterAfterNamedSubppatern = 24, + RKCompileErrorLookbehindAssertionNotFixedLength = 25, + RKCompileErrorMalformedNameOrNumberAfterSubpattern = 26, + RKCompileErrorConditionalGroupContainsMoreThanTwoBranches = 27, + RKCompileErrorAssertionExpectedAfterCondition = 28, + RKCompileErrorMissingEndParentheses = 29, + RKCompileErrorUnknownPOSIXClassName = 30, + RKCompileErrorPOSIXCollatingNotSupported = 31, + RKCompileErrorMissingUTF8Support = 32, + RKCompileErrorHexCharacterValueTooLarge = 34, + RKCompileErrorInvalidCondition = 35, + RKCompileErrorNotAllowedInLookbehindAssertion = 36, + RKCompileErrorNotSupported = 37, + RKCompileErrorCalloutExceedsMaximumAllowed = 38, + RKCompileErrorMissingParenthesesAfterCallout = 39, + RKCompileErrorRecursiveInfinitLoop = 40, + RKCompileErrorUnrecognizedCharacterAfterNamedPattern = 41, + RKCompileErrorSubpatternNameMissingTerminator = 42, + RKCompileErrorDuplicateSubpatternNames = 43, + RKCompileErrorInvalidUTF8String = 44, + RKCompileErrorMissingUnicodeSupport = 45, + RKCompileErrorMalformedUnicodeProperty = 46, + RKCompileErrorUnknownPropertyAfterUnicodeCharacter = 47, + RKCompileErrorSubpatternNameTooLong = 48, + RKCompileErrorTooManySubpatterns = 49, + RKCompileErrorRepeatedSubpatternTooLong = 50, + RKCompileErrorIllegalOctalValueOutsideUTF8 = 51, + RKCompileErrorInternalOverranCompilingWorkspace = 52, + RKCompileErrorInternalReferencedSubpatternNotFound = 53, + RKCompileErrorDEFINEGroupContainsMoreThanOneBranch = 54, + RKCompileErrorRepeatingDEFINEGroupNotAllowed = 55, + RKCompileErrorInconsistentNewlineOptions = 56, + RKCompileErrorReferenceMustBeNonZeroNumberOrBraced = 57, + RKCompileErrorRelativeSubpatternNumberMustNotBeZero = 58 +} RKCompileErrorCode; + + +typedef enum { + RKMatchNoOptions = 0, + RKMatchAnchored = 1 << 4, + RKMatchNotBeginningOfLine = 1 << 7, + RKMatchNotEndOfLine = 1 << 8, + RKMatchNotEmpty = 1 << 10, + RKMatchNoUTF8Check = 1 << 13, + RKMatchPartial = 1 << 15, + RKMatchNewlineDefault = 0x00000000, + RKMatchNewlineCR = 0x00100000, + RKMatchNewlineLF = 0x00200000, + RKMatchNewlineCRLF = 0x00300000, + RKMatchNewlineAny = 0x00400000, + RKMatchNewlineAnyCRLF = 0x00500000, + RKMatchNewlineMask = 0x00700000, + RKMatchBackslashRAnyCRLR = 1 << 23, + RKMatchBackslashRUnicode = 1 << 24 +} RKMatchOption; + +typedef enum { + RKCompileNoOptions = 0, + RKCompileCaseless = 1 << 0, + RKCompileMultiline = 1 << 1, + RKCompileDotAll = 1 << 2, + RKCompileExtended = 1 << 3, + RKCompileAnchored = 1 << 4, + RKCompileDollarEndOnly = 1 << 5, + RKCompileExtra = 1 << 6, + RKCompileUngreedy = 1 << 9, + RKCompileUTF8 = 1 << 11, + RKCompileNoAutoCapture = 1 << 12, + RKCompileNoUTF8Check = 1 << 13, + RKCompileAutoCallout = 1 << 14, + RKCompileFirstLine = 1 << 18, + RKCompileDupNames = 1 << 19, + RKCompileBackslashRAnyCRLR = 1 << 23, + RKCompileBackslashRUnicode = 1 << 24, + RKCompileAllOptions = (RKCompileCaseless | RKCompileMultiline | RKCompileDotAll | RKCompileExtended | RKCompileAnchored | + RKCompileDollarEndOnly | RKCompileExtra | RKCompileUngreedy | RKCompileUTF8 | RKCompileNoAutoCapture | + RKCompileNoUTF8Check | RKCompileAutoCallout | RKCompileFirstLine | RKCompileDupNames | RKCompileBackslashRAnyCRLR | + RKCompileBackslashRUnicode + ), + RKCompileUnsupported = (RKCompileAutoCallout), + RKCompileNewlineDefault = 0x00000000, + RKCompileNewlineCR = 0x00100000, + RKCompileNewlineLF = 0x00200000, + RKCompileNewlineCRLF = 0x00300000, + RKCompileNewlineAny = 0x00400000, + RKCompileNewlineAnyCRLF = 0x00500000, + RKCompileNewlineMask = 0x00700000, + RKCompileNewlineShift = 20 +} RKCompileOption; + +typedef enum { + RKBuildConfigNoOptions = 0, + RKBuildConfigUTF8 = 1 << 0, + RKBuildConfigUnicodeProperties = 1 << 1, + RKBuildConfigNewlineDefault = 0x00000000, + RKBuildConfigNewlineCR = 0x00100000, + RKBuildConfigNewlineLF = 0x00200000, + RKBuildConfigNewlineCRLF = 0x00300000, + RKBuildConfigNewlineAny = 0x00400000, + RKBuildConfigNewlineAnyCRLF = 0x00500000, + RKBuildConfigNewlineMask = 0x00700000, + RKBuildConfigBackslashRAnyCRLR = 1 << 23, + RKBuildConfigBackslashRUnicode = 1 << 24 +} RKBuildConfig; + +#endif // _REGEXKIT_REGEXKITTYPES_H_ + +#ifdef __cplusplus + } /* extern "C" */ +#endif diff --git a/Frameworks/RegexKit.framework/Versions/A/Headers/pcre.h b/Frameworks/RegexKit.framework/Versions/A/Headers/pcre.h new file mode 100644 index 00000000..c85c32ea --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Headers/pcre.h @@ -0,0 +1,303 @@ +/************************************************* +* Perl-Compatible Regular Expressions * +*************************************************/ + +/* This is the public header file for the PCRE library, to be #included by +applications that call the PCRE functions. + + Copyright (c) 1997-2008 University of Cambridge + +----------------------------------------------------------------------------- +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the University of Cambridge nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. +----------------------------------------------------------------------------- +*/ + +#ifndef _PCRE_H +#define _PCRE_H + +/* The current PCRE version information. */ + +#define PCRE_MAJOR 7 +#define PCRE_MINOR 6 +#define PCRE_PRERELEASE +#define PCRE_DATE 2008-01-28 + +/* When an application links to a PCRE DLL in Windows, the symbols that are +imported have to be identified as such. When building PCRE, the appropriate +export setting is defined in pcre_internal.h, which includes this file. So we +don't change existing definitions of PCRE_EXP_DECL and PCRECPP_EXP_DECL. */ + +#if defined(_WIN32) && !defined(PCRE_STATIC) +# ifndef PCRE_EXP_DECL +# define PCRE_EXP_DECL extern __declspec(dllimport) +# endif +# ifdef __cplusplus +# ifndef PCRECPP_EXP_DECL +# define PCRECPP_EXP_DECL extern __declspec(dllimport) +# endif +# ifndef PCRECPP_EXP_DEFN +# define PCRECPP_EXP_DEFN __declspec(dllimport) +# endif +# endif +#endif + +/* By default, we use the standard "extern" declarations. */ + +#ifndef PCRE_EXP_DECL +# ifdef __cplusplus +# define PCRE_EXP_DECL extern "C" +# else +# define PCRE_EXP_DECL extern +# endif +#endif + +#ifdef __cplusplus +# ifndef PCRECPP_EXP_DECL +# define PCRECPP_EXP_DECL extern +# endif +# ifndef PCRECPP_EXP_DEFN +# define PCRECPP_EXP_DEFN +# endif +#endif + +/* Have to include stdlib.h in order to ensure that size_t is defined; +it is needed here for malloc. */ + +#include + +/* Allow for C++ users */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* Options */ + +#define PCRE_CASELESS 0x00000001 +#define PCRE_MULTILINE 0x00000002 +#define PCRE_DOTALL 0x00000004 +#define PCRE_EXTENDED 0x00000008 +#define PCRE_ANCHORED 0x00000010 +#define PCRE_DOLLAR_ENDONLY 0x00000020 +#define PCRE_EXTRA 0x00000040 +#define PCRE_NOTBOL 0x00000080 +#define PCRE_NOTEOL 0x00000100 +#define PCRE_UNGREEDY 0x00000200 +#define PCRE_NOTEMPTY 0x00000400 +#define PCRE_UTF8 0x00000800 +#define PCRE_NO_AUTO_CAPTURE 0x00001000 +#define PCRE_NO_UTF8_CHECK 0x00002000 +#define PCRE_AUTO_CALLOUT 0x00004000 +#define PCRE_PARTIAL 0x00008000 +#define PCRE_DFA_SHORTEST 0x00010000 +#define PCRE_DFA_RESTART 0x00020000 +#define PCRE_FIRSTLINE 0x00040000 +#define PCRE_DUPNAMES 0x00080000 +#define PCRE_NEWLINE_CR 0x00100000 +#define PCRE_NEWLINE_LF 0x00200000 +#define PCRE_NEWLINE_CRLF 0x00300000 +#define PCRE_NEWLINE_ANY 0x00400000 +#define PCRE_NEWLINE_ANYCRLF 0x00500000 +#define PCRE_BSR_ANYCRLF 0x00800000 +#define PCRE_BSR_UNICODE 0x01000000 + +/* Exec-time and get/set-time error codes */ + +#define PCRE_ERROR_NOMATCH (-1) +#define PCRE_ERROR_NULL (-2) +#define PCRE_ERROR_BADOPTION (-3) +#define PCRE_ERROR_BADMAGIC (-4) +#define PCRE_ERROR_UNKNOWN_OPCODE (-5) +#define PCRE_ERROR_UNKNOWN_NODE (-5) /* For backward compatibility */ +#define PCRE_ERROR_NOMEMORY (-6) +#define PCRE_ERROR_NOSUBSTRING (-7) +#define PCRE_ERROR_MATCHLIMIT (-8) +#define PCRE_ERROR_CALLOUT (-9) /* Never used by PCRE itself */ +#define PCRE_ERROR_BADUTF8 (-10) +#define PCRE_ERROR_BADUTF8_OFFSET (-11) +#define PCRE_ERROR_PARTIAL (-12) +#define PCRE_ERROR_BADPARTIAL (-13) +#define PCRE_ERROR_INTERNAL (-14) +#define PCRE_ERROR_BADCOUNT (-15) +#define PCRE_ERROR_DFA_UITEM (-16) +#define PCRE_ERROR_DFA_UCOND (-17) +#define PCRE_ERROR_DFA_UMLIMIT (-18) +#define PCRE_ERROR_DFA_WSSIZE (-19) +#define PCRE_ERROR_DFA_RECURSE (-20) +#define PCRE_ERROR_RECURSIONLIMIT (-21) +#define PCRE_ERROR_NULLWSLIMIT (-22) /* No longer actually used */ +#define PCRE_ERROR_BADNEWLINE (-23) + +/* Request types for pcre_fullinfo() */ + +#define PCRE_INFO_OPTIONS 0 +#define PCRE_INFO_SIZE 1 +#define PCRE_INFO_CAPTURECOUNT 2 +#define PCRE_INFO_BACKREFMAX 3 +#define PCRE_INFO_FIRSTBYTE 4 +#define PCRE_INFO_FIRSTCHAR 4 /* For backwards compatibility */ +#define PCRE_INFO_FIRSTTABLE 5 +#define PCRE_INFO_LASTLITERAL 6 +#define PCRE_INFO_NAMEENTRYSIZE 7 +#define PCRE_INFO_NAMECOUNT 8 +#define PCRE_INFO_NAMETABLE 9 +#define PCRE_INFO_STUDYSIZE 10 +#define PCRE_INFO_DEFAULT_TABLES 11 +#define PCRE_INFO_OKPARTIAL 12 +#define PCRE_INFO_JCHANGED 13 +#define PCRE_INFO_HASCRORLF 14 + +/* Request types for pcre_config(). Do not re-arrange, in order to remain +compatible. */ + +#define PCRE_CONFIG_UTF8 0 +#define PCRE_CONFIG_NEWLINE 1 +#define PCRE_CONFIG_LINK_SIZE 2 +#define PCRE_CONFIG_POSIX_MALLOC_THRESHOLD 3 +#define PCRE_CONFIG_MATCH_LIMIT 4 +#define PCRE_CONFIG_STACKRECURSE 5 +#define PCRE_CONFIG_UNICODE_PROPERTIES 6 +#define PCRE_CONFIG_MATCH_LIMIT_RECURSION 7 +#define PCRE_CONFIG_BSR 8 + +/* Bit flags for the pcre_extra structure. Do not re-arrange or redefine +these bits, just add new ones on the end, in order to remain compatible. */ + +#define PCRE_EXTRA_STUDY_DATA 0x0001 +#define PCRE_EXTRA_MATCH_LIMIT 0x0002 +#define PCRE_EXTRA_CALLOUT_DATA 0x0004 +#define PCRE_EXTRA_TABLES 0x0008 +#define PCRE_EXTRA_MATCH_LIMIT_RECURSION 0x0010 + +/* Types */ + +struct real_pcre; /* declaration; the definition is private */ +typedef struct real_pcre pcre; + +/* When PCRE is compiled as a C++ library, the subject pointer type can be +replaced with a custom type. For conventional use, the public interface is a +const char *. */ + +#ifndef PCRE_SPTR +#define PCRE_SPTR const char * +#endif + +/* The structure for passing additional data to pcre_exec(). This is defined in +such as way as to be extensible. Always add new fields at the end, in order to +remain compatible. */ + +typedef struct pcre_extra { + unsigned long int flags; /* Bits for which fields are set */ + void *study_data; /* Opaque data from pcre_study() */ + unsigned long int match_limit; /* Maximum number of calls to match() */ + void *callout_data; /* Data passed back in callouts */ + const unsigned char *tables; /* Pointer to character tables */ + unsigned long int match_limit_recursion; /* Max recursive calls to match() */ +} pcre_extra; + +/* The structure for passing out data via the pcre_callout_function. We use a +structure so that new fields can be added on the end in future versions, +without changing the API of the function, thereby allowing old clients to work +without modification. */ + +typedef struct pcre_callout_block { + int version; /* Identifies version of block */ + /* ------------------------ Version 0 ------------------------------- */ + int callout_number; /* Number compiled into pattern */ + int *offset_vector; /* The offset vector */ + PCRE_SPTR subject; /* The subject being matched */ + int subject_length; /* The length of the subject */ + int start_match; /* Offset to start of this match attempt */ + int current_position; /* Where we currently are in the subject */ + int capture_top; /* Max current capture */ + int capture_last; /* Most recently closed capture */ + void *callout_data; /* Data passed in with the call */ + /* ------------------- Added for Version 1 -------------------------- */ + int pattern_position; /* Offset to next item in the pattern */ + int next_item_length; /* Length of next item in the pattern */ + /* ------------------------------------------------------------------ */ +} pcre_callout_block; + +/* Indirection for store get and free functions. These can be set to +alternative malloc/free functions if required. Special ones are used in the +non-recursive case for "frames". There is also an optional callout function +that is triggered by the (?) regex item. For Virtual Pascal, these definitions +have to take another form. */ + +#ifndef VPCOMPAT +PCRE_EXP_DECL void *(*pcre_malloc)(size_t); +PCRE_EXP_DECL void (*pcre_free)(void *); +PCRE_EXP_DECL void *(*pcre_stack_malloc)(size_t); +PCRE_EXP_DECL void (*pcre_stack_free)(void *); +PCRE_EXP_DECL int (*pcre_callout)(pcre_callout_block *); +#else /* VPCOMPAT */ +PCRE_EXP_DECL void *pcre_malloc(size_t); +PCRE_EXP_DECL void pcre_free(void *); +PCRE_EXP_DECL void *pcre_stack_malloc(size_t); +PCRE_EXP_DECL void pcre_stack_free(void *); +PCRE_EXP_DECL int pcre_callout(pcre_callout_block *); +#endif /* VPCOMPAT */ + +/* Exported PCRE functions */ + +PCRE_EXP_DECL pcre *pcre_compile(const char *, int, const char **, int *, + const unsigned char *); +PCRE_EXP_DECL pcre *pcre_compile2(const char *, int, int *, const char **, + int *, const unsigned char *); +PCRE_EXP_DECL int pcre_config(int, void *); +PCRE_EXP_DECL int pcre_copy_named_substring(const pcre *, const char *, + int *, int, const char *, char *, int); +PCRE_EXP_DECL int pcre_copy_substring(const char *, int *, int, int, char *, + int); +PCRE_EXP_DECL int pcre_dfa_exec(const pcre *, const pcre_extra *, + const char *, int, int, int, int *, int , int *, int); +PCRE_EXP_DECL int pcre_exec(const pcre *, const pcre_extra *, PCRE_SPTR, + int, int, int, int *, int); +PCRE_EXP_DECL void pcre_free_substring(const char *); +PCRE_EXP_DECL void pcre_free_substring_list(const char **); +PCRE_EXP_DECL int pcre_fullinfo(const pcre *, const pcre_extra *, int, + void *); +PCRE_EXP_DECL int pcre_get_named_substring(const pcre *, const char *, + int *, int, const char *, const char **); +PCRE_EXP_DECL int pcre_get_stringnumber(const pcre *, const char *); +PCRE_EXP_DECL int pcre_get_stringtable_entries(const pcre *, const char *, + char **, char **); +PCRE_EXP_DECL int pcre_get_substring(const char *, int *, int, int, + const char **); +PCRE_EXP_DECL int pcre_get_substring_list(const char *, int *, int, + const char ***); +PCRE_EXP_DECL int pcre_info(const pcre *, int *, int *); +PCRE_EXP_DECL const unsigned char *pcre_maketables(void); +PCRE_EXP_DECL int pcre_refcount(pcre *, int); +PCRE_EXP_DECL pcre_extra *pcre_study(const pcre *, int, const char **); +PCRE_EXP_DECL const char *pcre_version(void); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* End of pcre.h */ diff --git a/Frameworks/RegexKit.framework/Versions/A/RegexKit b/Frameworks/RegexKit.framework/Versions/A/RegexKit new file mode 100755 index 00000000..4387830d Binary files /dev/null and b/Frameworks/RegexKit.framework/Versions/A/RegexKit differ diff --git a/Frameworks/RegexKit.framework/Versions/A/Resources/English.lproj/InfoPlist.strings b/Frameworks/RegexKit.framework/Versions/A/Resources/English.lproj/InfoPlist.strings new file mode 100644 index 00000000..0c22849c Binary files /dev/null and b/Frameworks/RegexKit.framework/Versions/A/Resources/English.lproj/InfoPlist.strings differ diff --git a/Frameworks/RegexKit.framework/Versions/A/Resources/English.lproj/Localizable.strings b/Frameworks/RegexKit.framework/Versions/A/Resources/English.lproj/Localizable.strings new file mode 100644 index 00000000..16a24a8c Binary files /dev/null and b/Frameworks/RegexKit.framework/Versions/A/Resources/English.lproj/Localizable.strings differ diff --git a/Frameworks/RegexKit.framework/Versions/A/Resources/English.lproj/pcre.strings b/Frameworks/RegexKit.framework/Versions/A/Resources/English.lproj/pcre.strings new file mode 100644 index 00000000..64252e1a Binary files /dev/null and b/Frameworks/RegexKit.framework/Versions/A/Resources/English.lproj/pcre.strings differ diff --git a/Frameworks/RegexKit.framework/Versions/A/Resources/Info.plist b/Frameworks/RegexKit.framework/Versions/A/Resources/Info.plist new file mode 100644 index 00000000..384f29e2 --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,41 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + RegexKit + CFBundleIdentifier + com.zang.RegexKit + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + RegexKit + CFBundlePackageType + FMWK + CFBundleShortVersionString + 0.6.0 + CFBundleSignature + ZanG + CFBundleVersion + 0.6.0 + LSMinimumSystemVersion + 10.4.0 + LSMinimumSystemVersionByArchitecture + + i386 + 10.4.4 + ppc + 10.4.0 + ppc64 + 10.5.0 + x86_64 + 10.5.0 + + NSHumanReadableCopyright + Copyright © 2007-2008, John Engelhart + NSPrincipalClass + RKRegex + + diff --git a/Frameworks/RegexKit.framework/Versions/A/Resources/LICENSE b/Frameworks/RegexKit.framework/Versions/A/Resources/LICENSE new file mode 100644 index 00000000..ff337eca --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/Resources/LICENSE @@ -0,0 +1,79 @@ + +Important Information +--------------------- + +RegexKit uses the PCRE library, written by Philip Hazel and +Copyright © 1997-2008 University of Cambridge, as its regular expression +pattern matching engine. Therefore, RegexKit requires and incorporates the +PCRE library in to the framework executable. Because of this, you should be +aware of the PCRE library licensing requirements. + +Website: http://www.pcre.org/ +License: http://www.pcre.org/license.txt +Type : BSD License (at time of publication) + +The RegexKit BSD License +------------------------ + +Copyright © 2007-2008, John Engelhart + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +* Neither the name of the Zang Industries nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +The PCRE BSD License +------------------------ + +Copyright (c) 1997-2008 University of Cambridge +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the University of Cambridge nor the name of Google + Inc. nor the names of their contributors may be used to endorse or + promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. diff --git a/Frameworks/RegexKit.framework/Versions/A/_CodeSignature/CodeResources b/Frameworks/RegexKit.framework/Versions/A/_CodeSignature/CodeResources new file mode 100644 index 00000000..02b339e7 --- /dev/null +++ b/Frameworks/RegexKit.framework/Versions/A/_CodeSignature/CodeResources @@ -0,0 +1,233 @@ + + + + + files + + Resources/English.lproj/InfoPlist.strings + + hash + + 79/X/BfqIUiQ0jcYzzBNOwWnYvs= + + optional + + + Resources/English.lproj/Localizable.strings + + hash + + 6fVe5uUaWXcEEB2IAR383LeQCW4= + + optional + + + Resources/English.lproj/pcre.strings + + hash + + 4pHSKsYq3lRsp2Qp089KG5UVB2Y= + + optional + + + Resources/Info.plist + + Lr0KhXwakjyC2uOFru4Ig3okRlE= + + Resources/LICENSE + + FowBrViUNB+hCXzkDsYHgrYHBAU= + + + files2 + + Headers/NSArray.h + + SuXNMYZ4tINpwH8TngcnM06PTeQ= + + Headers/NSData.h + + 25/YEu4m6NxRHg90+necpU6Wvk4= + + Headers/NSDictionary.h + + G+xLq35fOjeMPFK0yj1qbC3oH/c= + + Headers/NSObject.h + + ARSXjIDVurBSNwDtaPKLPTvNr6c= + + Headers/NSSet.h + + MemftdLrwaG3W2ATBiMeB1hvAzo= + + Headers/NSString.h + + 4gIlPjxjCPWH1YWgx544TnTyLOU= + + Headers/RKCache.h + + wbV2u0kMG2SrOiuCLG6fOSd81+Q= + + Headers/RKEnumerator.h + + M8UXCJbwCB2J0DO/sIw5AuW7cO0= + + Headers/RKRegex.h + + lj4EigFfyONIVLD0ilfTyZjbJ6s= + + Headers/RKUtility.h + + e3SGLcqz5zpgOM6g6cqafiYYToQ= + + Headers/RegexKit.h + + xL7eDgdP/exQ12HsjSzqkr6DOeo= + + Headers/RegexKitDefines.h + + TIVCY0ZpBH1/5PNN54ZFLzaE0Sw= + + Headers/RegexKitTypes.h + + /YXFSJD9xodGVESD32FoKWaQwAg= + + Headers/pcre.h + + iAvabdgzy2TfG3ou4wWX9wRWBfU= + + Resources/English.lproj/InfoPlist.strings + + hash + + 79/X/BfqIUiQ0jcYzzBNOwWnYvs= + + optional + + + Resources/English.lproj/Localizable.strings + + hash + + 6fVe5uUaWXcEEB2IAR383LeQCW4= + + optional + + + Resources/English.lproj/pcre.strings + + hash + + 4pHSKsYq3lRsp2Qp089KG5UVB2Y= + + optional + + + Resources/Info.plist + + Lr0KhXwakjyC2uOFru4Ig3okRlE= + + Resources/LICENSE + + FowBrViUNB+hCXzkDsYHgrYHBAU= + + + rules + + ^Resources/ + + ^Resources/.*\.lproj/ + + optional + + weight + 1000 + + ^Resources/.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^version.plist$ + + + rules2 + + .*\.dSYM($|/) + + weight + 11 + + ^(.*/)?\.DS_Store$ + + omit + + weight + 2000 + + ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ + + nested + + weight + 10 + + ^.* + + ^Info\.plist$ + + omit + + weight + 20 + + ^PkgInfo$ + + omit + + weight + 20 + + ^Resources/ + + weight + 20 + + ^Resources/.*\.lproj/ + + optional + + weight + 1000 + + ^Resources/.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^[^/]+$ + + nested + + weight + 10 + + ^embedded\.provisionprofile$ + + weight + 20 + + ^version\.plist$ + + weight + 20 + + + + diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/Current b/Frameworks/RegexKit.framework/Versions/Current similarity index 100% rename from GPGMail/Frameworks/Sparkle.framework/Versions/Current rename to Frameworks/RegexKit.framework/Versions/Current diff --git a/GPGMail.xcodeproj/project.pbxproj b/GPGMail.xcodeproj/project.pbxproj new file mode 100644 index 00000000..31a6074b --- /dev/null +++ b/GPGMail.xcodeproj/project.pbxproj @@ -0,0 +1,7755 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 1B00D9071B544C0300DBDCD7 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B00D9061B544C0300DBDCD7 /* WebKit.framework */; }; + 1B02D70813F1E9D80032CFD1 /* GPGFlaggedString.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B02D70713F1E9D80032CFD1 /* GPGFlaggedString.m */; }; + 1B02D70A13F1E9F00032CFD1 /* NSArray+Functional.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B02D70913F1E9F00032CFD1 /* NSArray+Functional.m */; }; + 1B03125F18116CB4006D451A /* ConversationMember+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B03125E18116CB4006D451A /* ConversationMember+GPGMail.m */; }; + 1B22C45D17B138390073DF81 /* cd-bundle.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 1B22C45C17B138390073DF81 /* cd-bundle.bundle */; }; + 1B22C46417B138890073DF81 /* IntegrationHooks.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B22C46317B138890073DF81 /* IntegrationHooks.m */; }; + 1B22C46717B13A250073DF81 /* TestHelpers.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B22C46617B13A250073DF81 /* TestHelpers.m */; }; + 1B22E50C176A101800BBB351 /* GMKeyManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B22E50B176A101800BBB351 /* GMKeyManager.m */; }; + 1B2341DE14FEEC8C0007EB64 /* GMSecurityMethodAccessoryView.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B2341DD14FEEC8C0007EB64 /* GMSecurityMethodAccessoryView.m */; }; + 1B32AFF713AF827B0072079B /* CCLog.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B32AFF613AF827B0072079B /* CCLog.m */; }; + 1B34341A107AC4A200F590EF /* MimeBody+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80780838E9B10052F47C /* MimeBody+GPGMail.m */; }; + 1B34341B107AC4A400F590EF /* MimePart+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80790838E9B10052F47C /* MimePart+GPGMail.m */; }; + 1B3F2F9013E58B70006A8333 /* ComposeHeaderView+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B3F2F8F13E58B70006A8333 /* ComposeHeaderView+GPGMail.m */; }; + 1B3F2F9213E58D3D006A8333 /* NSObject+LPDynamicIvars.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B3F2F9113E58D3D006A8333 /* NSObject+LPDynamicIvars.m */; }; + 1B3F2F9613E58F1D006A8333 /* GPGTextAttachmentCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B3F2F9513E58F1D006A8333 /* GPGTextAttachmentCell.m */; }; + 1B3F2F9913E58FD3006A8333 /* NSAttributedString+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B3F2F9813E58FD3006A8333 /* NSAttributedString+GPGMail.m */; }; + 1B3F2F9C13E590AB006A8333 /* MessageHeaderDisplay+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B3F2F9B13E590AB006A8333 /* MessageHeaderDisplay+GPGMail.m */; }; + 1B3F2F9E13E59639006A8333 /* ComposeBackEnd+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B3F2F9D13E59639006A8333 /* ComposeBackEnd+GPGMail.m */; }; + 1B45481A14F7D0F0000F1646 /* GMSecurityHistory.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B45481914F7D0F0000F1646 /* GMSecurityHistory.m */; }; + 1B4741D014F550B800F36C54 /* GMSecurityControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B4741CF14F550B800F36C54 /* GMSecurityControl.m */; }; + 1B49855A17A6EB79007FE67F /* MessageRouter+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B49855917A6EB79007FE67F /* MessageRouter+GPGMail.m */; }; + 1B51231E1409345C004D0818 /* MailDocumentEditor+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B51231D1409345C004D0818 /* MailDocumentEditor+GPGMail.m */; }; + 1B51232514093795004D0818 /* NSBezierPath_KBAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B51232314093795004D0818 /* NSBezierPath_KBAdditions.m */; }; + 1B51232614093795004D0818 /* NSBezierPath+StrokeExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B51232414093795004D0818 /* NSBezierPath+StrokeExtensions.m */; }; + 1B56ECA916175AA8004A3ABE /* GPGMail-Entitlements.plist in Resources */ = {isa = PBXBuildFile; fileRef = 1B56ECA816175AA8004A3ABE /* GPGMail-Entitlements.plist */; }; + 1B73B8DA1BB2079C007D601B /* ComposeWindowController+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B73B8D91BB2079C007D601B /* ComposeWindowController+GPGMail.m */; }; + 1B73B8DD1BB2099F007D601B /* MailToolbar+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B73B8DC1BB2099F007D601B /* MailToolbar+GPGMail.m */; }; + 1B7E4DB714EEEAD90069E69C /* JRLPSwizzle.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B7E4DB614EEEAD90069E69C /* JRLPSwizzle.m */; }; + 1B8289FB13FD62880007E6A2 /* Message+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B8289FA13FD62880007E6A2 /* Message+GPGMail.m */; }; + 1B8437661404AB9C00968293 /* NSData+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B8437651404AB9C00968293 /* NSData+GPGMail.m */; }; + 1B8763671786020A00B24BBC /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1B8763651786020A00B24BBC /* InfoPlist.strings */; }; + 1B876386178602B200B24BBC /* PGPInlineDataASCIIGood.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B876376178602B200B24BBC /* PGPInlineDataASCIIGood.txt */; }; + 1B876387178602B200B24BBC /* PGPInlineDataASCIIquoted.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B876377178602B200B24BBC /* PGPInlineDataASCIIquoted.txt */; }; + 1B876388178602B200B24BBC /* PGPInlineDataUTF8Good.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B876378178602B200B24BBC /* PGPInlineDataUTF8Good.txt */; }; + 1B876389178602B200B24BBC /* PGPInlineDataUTF8quoted.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B876379178602B200B24BBC /* PGPInlineDataUTF8quoted.txt */; }; + 1B87638A178602B200B24BBC /* PGPInlineSignatureASCIIGood.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B87637A178602B200B24BBC /* PGPInlineSignatureASCIIGood.txt */; }; + 1B87638B178602B200B24BBC /* PGPInlineSignatureASCIIquoted.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B87637B178602B200B24BBC /* PGPInlineSignatureASCIIquoted.txt */; }; + 1B87638C178602B200B24BBC /* PGPInlineSignatureUTF8Good.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B87637C178602B200B24BBC /* PGPInlineSignatureUTF8Good.txt */; }; + 1B87638D178602B200B24BBC /* PGPInlineSignatureUTF8quoted.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B87637D178602B200B24BBC /* PGPInlineSignatureUTF8quoted.txt */; }; + 1B87638E178602B200B24BBC /* PGPMessageBlockBad.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B87637E178602B200B24BBC /* PGPMessageBlockBad.txt */; }; + 1B87638F178602B200B24BBC /* PGPMessageBlockGood.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B87637F178602B200B24BBC /* PGPMessageBlockGood.txt */; }; + 1B876390178602B200B24BBC /* PGPMessageBlockGood2.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B876380178602B200B24BBC /* PGPMessageBlockGood2.txt */; }; + 1B876391178602B200B24BBC /* PGPPublicKey.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B876381178602B200B24BBC /* PGPPublicKey.txt */; }; + 1B876392178602B200B24BBC /* PGPSignatureASCIIGood.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B876382178602B200B24BBC /* PGPSignatureASCIIGood.txt */; }; + 1B876393178602B200B24BBC /* PGPSignatureBlockBad.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B876383178602B200B24BBC /* PGPSignatureBlockBad.txt */; }; + 1B876394178602B200B24BBC /* PGPSignatureBlockGood.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B876384178602B200B24BBC /* PGPSignatureBlockGood.txt */; }; + 1B876395178602B200B24BBC /* PGPSignatureUTF8Good.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1B876385178602B200B24BBC /* PGPSignatureUTF8Good.txt */; }; + 1B8763981786035300B24BBC /* NSData+GPGMailTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B8763971786035300B24BBC /* NSData+GPGMailTest.m */; }; + 1B87639B178628FD00B24BBC /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B87639A178628FD00B24BBC /* XCTest.framework */; }; + 1B87639E17862AAA00B24BBC /* GPGMail.mailbundle in Resources */ = {isa = PBXBuildFile; fileRef = 8D5B49B6048680CD000E48DA /* GPGMail.mailbundle */; }; + 1B87639F17862BD700B24BBC /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B19E83F13A2AEA4002E59ED /* AppKit.framework */; }; + 1B89E21614FC40F00012D4AD /* NSWindow+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B89E21514FC40F00012D4AD /* NSWindow+GPGMail.m */; }; + 1B8C01D513E4F12D00DB9FA4 /* GPGSignatureView.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B8C01D413E4F12D00DB9FA4 /* GPGSignatureView.m */; }; + 1B9287C919F9E99700D540DF /* MCMessageGenerator+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B9287C819F9E99700D540DF /* MCMessageGenerator+GPGMail.m */; }; + 1B938AC717693F48007A0854 /* Library+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B938AC617693F48007A0854 /* Library+GPGMail.m */; }; + 1B95B4C01501297B005BE119 /* ADVANCED PREFERENCES in Resources */ = {isa = PBXBuildFile; fileRef = 1B95B4BF1501297B005BE119 /* ADVANCED PREFERENCES */; }; + 1B97AE3815096FA700A4F0F2 /* MMStopwatch.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B97AE3715096FA700A4F0F2 /* MMStopwatch.m */; }; + 1BADCE76176B6501009D3785 /* GMMessageRulesApplier.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BADCE75176B6501009D3785 /* GMMessageRulesApplier.m */; }; + 1BADCE7E176B694C009D3785 /* GMCodeInjector.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BADCE7D176B694C009D3785 /* GMCodeInjector.m */; }; + 1BAEF64413E9F57700A59CED /* MailAccount+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BAEF64313E9F57700A59CED /* MailAccount+GPGMail.m */; }; + 1BAFDD701784DAB100E9BA6A /* RegexKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1BAFDD6F1784DAB100E9BA6A /* RegexKit.framework */; }; + 1BAFDD711784DB0800E9BA6A /* RegexKit.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 1BAFDD6F1784DAB100E9BA6A /* RegexKit.framework */; }; + 1BB3DCCE1407F1CA00870DEB /* LibraryStore+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BB3DCCD1407F1CA00870DEB /* LibraryStore+GPGMail.m */; }; + 1BBEF49C13A9115E0037E53D /* NSSet+Functional.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BBEF49B13A9115E0037E53D /* NSSet+Functional.m */; }; + 1BC4778D1468AA4F0061120C /* GPGAttachmentController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BC4778C1468AA4F0061120C /* GPGAttachmentController.m */; }; + 1BD06B9B18102CF300EC9902 /* WebDocumentGenerator+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BD06B9A18102CF300EC9902 /* WebDocumentGenerator+GPGMail.m */; }; + 1BD7D27F1765E59C00F5A266 /* MessageCriterion+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BD7D27E1765E59C00F5A266 /* MessageCriterion+GPGMail.m */; }; + 1BEA7AC51760AB5B0084B2AD /* BannerController+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BEA7AC41760AB5B0084B2AD /* BannerController+GPGMail.m */; }; + 1BED92F81079529C00D22B4C /* GPGMailBundle.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A806E0838E9B10052F47C /* GPGMailBundle.m */; }; + 1BED9357107957E700D22B4C /* GPGMailPreferences.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80710838E9B10052F47C /* GPGMailPreferences.m */; }; + 1BED936B107958C700D22B4C /* NSString+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A807B0838E9B10052F47C /* NSString+GPGMail.m */; }; + 1BED93851079597600D22B4C /* NSPreferences+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80900838EA1C0052F47C /* NSPreferences+GPGMail.m */; }; + 1BF40C8A180CA59A00B4C1CE /* EAEmailAddressParser+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BF40C89180CA59A00B4C1CE /* EAEmailAddressParser+GPGMail.m */; }; + 1BF51A70108FCD1900AC8268 /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1BF51A6F108FCD1900AC8268 /* ExceptionHandling.framework */; }; + 1BF69D7F1405C04E008B07F5 /* HeadersEditor+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1BF69D7E1405C04E008B07F5 /* HeadersEditor+GPGMail.m */; }; + 3005016014FFE702004EB26B /* GreenDot.png in Resources */ = {isa = PBXBuildFile; fileRef = 30675D1E14F047F000914186 /* GreenDot.png */; }; + 3005016114FFE702004EB26B /* RedDot.png in Resources */ = {isa = PBXBuildFile; fileRef = 30675D1F14F047F000914186 /* RedDot.png */; }; + 3005016214FFE702004EB26B /* YellowDot.png in Resources */ = {isa = PBXBuildFile; fileRef = 30675D2014F047F000914186 /* YellowDot.png */; }; + 3005016E14FFE702004EB26B /* InvalidBadge.png in Resources */ = {isa = PBXBuildFile; fileRef = 30E4F6B012B3B1350093608D /* InvalidBadge.png */; }; + 3005017914FFE702004EB26B /* ValidBadge.png in Resources */ = {isa = PBXBuildFile; fileRef = 30E4F6BE12B3B1350093608D /* ValidBadge.png */; }; + 3005017B14FFE70A004EB26B /* GPGMail.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1B194B5911CC55A80092B810 /* GPGMail.strings */; }; + 3005017C14FFE70A004EB26B /* SignatureView.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1BECA61413E372AC00C622B0 /* SignatureView.strings */; }; + 3005017D14FFE70A004EB26B /* GPGAttachment.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1BBB07E11489A64600530876 /* GPGAttachment.strings */; }; + 3005017E14FFE711004EB26B /* GPGSignatureView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1B8C01D613E4F25900DB9FA4 /* GPGSignatureView.xib */; }; + 3005017F14FFE711004EB26B /* GPGMailPreferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = 308B8FA812A6AE5F00C99BD2 /* GPGMailPreferences.xib */; }; + 3005018014FFE711004EB26B /* GPGAttachments.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1BC477831468A1770061120C /* GPGAttachments.xib */; }; + 3005018114FFE719004EB26B /* GPGMailBundle.defaults in Resources */ = {isa = PBXBuildFile; fileRef = 559A80E60838ED590052F47C /* GPGMailBundle.defaults */; }; + 3005018314FFE719004EB26B /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 30913B4512B19B3B00327FDF /* Credits.rtf */; }; + 3005018514FFE719004EB26B /* LICENSE.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1BCEE1E211CC051500488D19 /* LICENSE.txt */; }; + 300F29BB175F460E00C435D2 /* GMComposeKeyEventHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 300F29BA175F460E00C435D2 /* GMComposeKeyEventHandler.m */; }; + 301380D417567D26005948EE /* CertLargeStd.png in Resources */ = {isa = PBXBuildFile; fileRef = 301380D217567D26005948EE /* CertLargeStd.png */; }; + 301380D517567D26005948EE /* CertLargeStd@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 301380D317567D26005948EE /* CertLargeStd@2x.png */; }; + 301380DC17569815005948EE /* CertLargeNotTrusted@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 301380DB17569814005948EE /* CertLargeNotTrusted@2x.png */; }; + 301380DE17569819005948EE /* CertLargeNotTrusted.png in Resources */ = {isa = PBXBuildFile; fileRef = 301380DD17569819005948EE /* CertLargeNotTrusted.png */; }; + 301380E217578133005948EE /* GPGMail.iconset in Resources */ = {isa = PBXBuildFile; fileRef = 301380E117578133005948EE /* GPGMail.iconset */; }; + 3057F2EB1507C9C000FA3C0D /* Special.html in Resources */ = {isa = PBXBuildFile; fileRef = 3057F2E91507C9C000FA3C0D /* Special.html */; }; + 3066C60A17579F5900384E29 /* CertSmallStd_Invalid.png in Resources */ = {isa = PBXBuildFile; fileRef = 3066C60617579F5900384E29 /* CertSmallStd_Invalid.png */; }; + 3066C60B17579F5900384E29 /* CertSmallStd_Invalid@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 3066C60717579F5900384E29 /* CertSmallStd_Invalid@2x.png */; }; + 3066C60C17579F5900384E29 /* CertSmallStd.png in Resources */ = {isa = PBXBuildFile; fileRef = 3066C60817579F5900384E29 /* CertSmallStd.png */; }; + 3066C60D17579F5900384E29 /* CertSmallStd@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 3066C60917579F5900384E29 /* CertSmallStd@2x.png */; }; + 3066C6101757A0FC00384E29 /* MenuArrowWhite.png in Resources */ = {isa = PBXBuildFile; fileRef = 3066C60E1757A0FC00384E29 /* MenuArrowWhite.png */; }; + 3066C6111757A0FC00384E29 /* MenuArrowWhite@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 3066C60F1757A0FC00384E29 /* MenuArrowWhite@2x.png */; }; + 3066C6171757A54900384E29 /* certificate.png in Resources */ = {isa = PBXBuildFile; fileRef = 3066C6151757A54900384E29 /* certificate.png */; }; + 3066C6181757A54900384E29 /* certificate@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 3066C6161757A54900384E29 /* certificate@2x.png */; }; + 3066C6221757ACCF00384E29 /* encryption.png in Resources */ = {isa = PBXBuildFile; fileRef = 3066C6201757ACCF00384E29 /* encryption.png */; }; + 3066C6231757ACCF00384E29 /* encryption@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 3066C6211757ACCF00384E29 /* encryption@2x.png */; }; + 306E8A37178B0BCB004C5B89 /* OptionalView+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 306E8A36178B0BCB004C5B89 /* OptionalView+GPGMail.m */; }; + 30744AB512B9733800CC3EC5 /* MessageContentController+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A808C0838EA1C0052F47C /* MessageContentController+GPGMail.m */; }; + 30A7AE9A1756709F00746C29 /* InvalidBadge@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 30A7AE991756709F00746C29 /* InvalidBadge@2x.png */; }; + 30A7AEA1175670A500746C29 /* ValidBadge@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 30A7AEA0175670A500746C29 /* ValidBadge@2x.png */; }; + 30A7AEA31756727300746C29 /* YellowDot@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 30A7AEA21756727200746C29 /* YellowDot@2x.png */; }; + 30A7AEA51756728400746C29 /* GreenDot@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 30A7AEA41756728400746C29 /* GreenDot@2x.png */; }; + 30A7AEA71756728B00746C29 /* RedDot@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 30A7AEA61756728A00746C29 /* RedDot@2x.png */; }; + 30E227901772057A00AD9A48 /* SymmetricEncryptionOff.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 30E2278E1772057A00AD9A48 /* SymmetricEncryptionOff.pdf */; }; + 30E227911772057A00AD9A48 /* SymmetricEncryptionOn.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 30E2278F1772057A00AD9A48 /* SymmetricEncryptionOn.pdf */; }; + 30E75A671731A7F900C9E391 /* Libmacgpg.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 30E75A661731A7F900C9E391 /* Libmacgpg.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; + 4555EA4B150922DF00723E1F /* GPGException+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 4555EA4A150922DF00723E1F /* GPGException+GPGMail.m */; }; + 559A81330838EEFD0052F47C /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 559A812E0838EEFD0052F47C /* Security.framework */; }; + 8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 1B0626A91746998D00E51308 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 1B06268F1746992B00E51308 /* Libmacgpg.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 8DC2EF5B0486A6940098B216; + remoteInfo = Libmacgpg; + }; + 1B0626AD1746998D00E51308 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 1B06268F1746992B00E51308 /* Libmacgpg.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 1B46CFCC161555DF00CF9C5F; + remoteInfo = org.gpgtools.Libmacgpg.xpc; + }; + 1B0626AF1746998D00E51308 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 1B06268F1746992B00E51308 /* Libmacgpg.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 30DF7CB816D39EAA00C8225C; + remoteInfo = installerHelper; + }; + 1B0626B11746998D00E51308 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 1B06268F1746992B00E51308 /* Libmacgpg.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 1BD78B9F1726B2820005F251; + remoteInfo = LeakFinder; + }; + 1B73B8D71BB20787007D601B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 1B06268F1746992B00E51308 /* Libmacgpg.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 30BE73BE1B54015C001A2137; + remoteInfo = UnitTests; + }; + 1B87636B1786020A00B24BBC /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 089C1669FE841209C02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 8D5B49AC048680CD000E48DA; + remoteInfo = GPGMail; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 1B45A52111CC977700ED4663 /* Copy Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 1BAFDD711784DB0800E9BA6A /* RegexKit.framework in Copy Frameworks */, + ); + name = "Copy Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 1B00D9061B544C0300DBDCD7 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; + 1B02D70713F1E9D80032CFD1 /* GPGFlaggedString.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GPGFlaggedString.m; sourceTree = ""; }; + 1B02D70913F1E9F00032CFD1 /* NSArray+Functional.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSArray+Functional.m"; sourceTree = ""; }; + 1B02D70B13F1EA1D0032CFD1 /* GPGFlaggedString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GPGFlaggedString.h; sourceTree = ""; }; + 1B02D70C13F1EA290032CFD1 /* NSArray+Functional.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray+Functional.h"; sourceTree = ""; }; + 1B03125A1811488F006D451A /* NSPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSPreferences.h; sourceTree = ""; }; + 1B03125B1811488F006D451A /* NSPreferencesModule-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPreferencesModule-Protocol.h"; sourceTree = ""; }; + 1B03125C1811488F006D451A /* NSPreferencesModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSPreferencesModule.h; sourceTree = ""; }; + 1B03125D18116CB4006D451A /* ConversationMember+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ConversationMember+GPGMail.h"; sourceTree = ""; }; + 1B03125E18116CB4006D451A /* ConversationMember+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "ConversationMember+GPGMail.m"; sourceTree = ""; }; + 1B06268F1746992B00E51308 /* Libmacgpg.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Libmacgpg.xcodeproj; path = Dependencies/Libmacgpg/Libmacgpg.xcodeproj; sourceTree = SOURCE_ROOT; }; + 1B194B5A11CC55A80092B810 /* en */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/GPGMail.strings; sourceTree = ""; }; + 1B19E83F13A2AEA4002E59ED /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; + 1B19E84113A2AEA4002E59ED /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + 1B22C45C17B138390073DF81 /* cd-bundle.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = "cd-bundle.bundle"; sourceTree = ""; }; + 1B22C46317B138890073DF81 /* IntegrationHooks.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = IntegrationHooks.m; sourceTree = ""; }; + 1B22C46517B13A250073DF81 /* TestHelpers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TestHelpers.h; sourceTree = ""; }; + 1B22C46617B13A250073DF81 /* TestHelpers.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TestHelpers.m; sourceTree = ""; }; + 1B22E50A176A101800BBB351 /* GMKeyManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GMKeyManager.h; sourceTree = ""; }; + 1B22E50B176A101800BBB351 /* GMKeyManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GMKeyManager.m; sourceTree = ""; }; + 1B2341DC14FEEC8C0007EB64 /* GMSecurityMethodAccessoryView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GMSecurityMethodAccessoryView.h; sourceTree = ""; }; + 1B2341DD14FEEC8C0007EB64 /* GMSecurityMethodAccessoryView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GMSecurityMethodAccessoryView.m; sourceTree = ""; }; + 1B32AFF513AF827B0072079B /* CCLog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CCLog.h; sourceTree = ""; }; + 1B32AFF613AF827B0072079B /* CCLog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CCLog.m; sourceTree = ""; }; + 1B3F2F8E13E58B70006A8333 /* ComposeHeaderView+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ComposeHeaderView+GPGMail.h"; sourceTree = ""; }; + 1B3F2F8F13E58B70006A8333 /* ComposeHeaderView+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "ComposeHeaderView+GPGMail.m"; sourceTree = ""; }; + 1B3F2F9113E58D3D006A8333 /* NSObject+LPDynamicIvars.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSObject+LPDynamicIvars.m"; sourceTree = ""; }; + 1B3F2F9313E58D66006A8333 /* NSObject+LPDynamicIvars.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject+LPDynamicIvars.h"; sourceTree = ""; }; + 1B3F2F9413E58F1C006A8333 /* GPGTextAttachmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GPGTextAttachmentCell.h; sourceTree = ""; }; + 1B3F2F9513E58F1D006A8333 /* GPGTextAttachmentCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GPGTextAttachmentCell.m; sourceTree = ""; }; + 1B3F2F9713E58FD2006A8333 /* NSAttributedString+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString+GPGMail.h"; sourceTree = ""; }; + 1B3F2F9813E58FD3006A8333 /* NSAttributedString+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSAttributedString+GPGMail.m"; sourceTree = ""; }; + 1B3F2F9A13E590AB006A8333 /* MessageHeaderDisplay+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageHeaderDisplay+GPGMail.h"; sourceTree = ""; }; + 1B3F2F9B13E590AB006A8333 /* MessageHeaderDisplay+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MessageHeaderDisplay+GPGMail.m"; sourceTree = ""; }; + 1B3F2F9D13E59639006A8333 /* ComposeBackEnd+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "ComposeBackEnd+GPGMail.m"; sourceTree = ""; }; + 1B45481814F7D0F0000F1646 /* GMSecurityHistory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GMSecurityHistory.h; sourceTree = ""; }; + 1B45481914F7D0F0000F1646 /* GMSecurityHistory.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GMSecurityHistory.m; sourceTree = ""; }; + 1B4741CE14F550B700F36C54 /* GMSecurityControl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GMSecurityControl.h; sourceTree = ""; }; + 1B4741CF14F550B800F36C54 /* GMSecurityControl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GMSecurityControl.m; sourceTree = ""; }; + 1B49855817A6EB79007FE67F /* MessageRouter+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageRouter+GPGMail.h"; sourceTree = ""; }; + 1B49855917A6EB79007FE67F /* MessageRouter+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MessageRouter+GPGMail.m"; sourceTree = ""; }; + 1B51231C1409345C004D0818 /* MailDocumentEditor+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailDocumentEditor+GPGMail.h"; sourceTree = ""; }; + 1B51231D1409345C004D0818 /* MailDocumentEditor+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MailDocumentEditor+GPGMail.m"; sourceTree = ""; }; + 1B51232314093795004D0818 /* NSBezierPath_KBAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSBezierPath_KBAdditions.m; sourceTree = ""; }; + 1B51232414093795004D0818 /* NSBezierPath+StrokeExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSBezierPath+StrokeExtensions.m"; sourceTree = ""; }; + 1B512328140937C1004D0818 /* NSBezierPath_KBAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSBezierPath_KBAdditions.h; sourceTree = ""; }; + 1B512329140937C1004D0818 /* NSBezierPath+StrokeExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSBezierPath+StrokeExtensions.h"; sourceTree = ""; }; + 1B56ECA816175AA8004A3ABE /* GPGMail-Entitlements.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GPGMail-Entitlements.plist"; sourceTree = ""; }; + 1B637BC313E39FDF00196286 /* GPGMail TODOs */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "GPGMail TODOs"; sourceTree = ""; }; + 1B64F62013E38E9200C5B4C9 /* GPG related notes */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "GPG related notes"; sourceTree = ""; }; + 1B73B8D01BB20787007D601B /* ComposeWindowController+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ComposeWindowController+GPGMail.h"; sourceTree = ""; }; + 1B73B8D91BB2079C007D601B /* ComposeWindowController+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "ComposeWindowController+GPGMail.m"; sourceTree = ""; }; + 1B73B8DB1BB20994007D601B /* MailToolbar+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailToolbar+GPGMail.h"; sourceTree = ""; }; + 1B73B8DC1BB2099F007D601B /* MailToolbar+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MailToolbar+GPGMail.m"; sourceTree = ""; }; + 1B7E4DB514EEEACE0069E69C /* JRLPSwizzle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JRLPSwizzle.h; sourceTree = ""; }; + 1B7E4DB614EEEAD90069E69C /* JRLPSwizzle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JRLPSwizzle.m; sourceTree = ""; }; + 1B8289F913FD62880007E6A2 /* Message+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Message+GPGMail.h"; sourceTree = ""; }; + 1B8289FA13FD62880007E6A2 /* Message+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "Message+GPGMail.m"; sourceTree = ""; }; + 1B8437641404AB9C00968293 /* NSData+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+GPGMail.h"; sourceTree = ""; }; + 1B8437651404AB9C00968293 /* NSData+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+GPGMail.m"; sourceTree = ""; }; + 1B87635F1786020900B24BBC /* Unit Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Unit Tests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; + 1B8763641786020A00B24BBC /* Unit Tests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Unit Tests-Info.plist"; sourceTree = ""; }; + 1B8763661786020A00B24BBC /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; + 1B87636A1786020A00B24BBC /* Unit Tests-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Unit Tests-Prefix.pch"; sourceTree = ""; }; + 1B876376178602B200B24BBC /* PGPInlineDataASCIIGood.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPInlineDataASCIIGood.txt; sourceTree = ""; }; + 1B876377178602B200B24BBC /* PGPInlineDataASCIIquoted.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPInlineDataASCIIquoted.txt; sourceTree = ""; }; + 1B876378178602B200B24BBC /* PGPInlineDataUTF8Good.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPInlineDataUTF8Good.txt; sourceTree = ""; }; + 1B876379178602B200B24BBC /* PGPInlineDataUTF8quoted.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPInlineDataUTF8quoted.txt; sourceTree = ""; }; + 1B87637A178602B200B24BBC /* PGPInlineSignatureASCIIGood.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPInlineSignatureASCIIGood.txt; sourceTree = ""; }; + 1B87637B178602B200B24BBC /* PGPInlineSignatureASCIIquoted.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPInlineSignatureASCIIquoted.txt; sourceTree = ""; }; + 1B87637C178602B200B24BBC /* PGPInlineSignatureUTF8Good.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPInlineSignatureUTF8Good.txt; sourceTree = ""; }; + 1B87637D178602B200B24BBC /* PGPInlineSignatureUTF8quoted.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPInlineSignatureUTF8quoted.txt; sourceTree = ""; }; + 1B87637E178602B200B24BBC /* PGPMessageBlockBad.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPMessageBlockBad.txt; sourceTree = ""; }; + 1B87637F178602B200B24BBC /* PGPMessageBlockGood.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPMessageBlockGood.txt; sourceTree = ""; }; + 1B876380178602B200B24BBC /* PGPMessageBlockGood2.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPMessageBlockGood2.txt; sourceTree = ""; }; + 1B876381178602B200B24BBC /* PGPPublicKey.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPPublicKey.txt; sourceTree = ""; }; + 1B876382178602B200B24BBC /* PGPSignatureASCIIGood.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPSignatureASCIIGood.txt; sourceTree = ""; }; + 1B876383178602B200B24BBC /* PGPSignatureBlockBad.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPSignatureBlockBad.txt; sourceTree = ""; }; + 1B876384178602B200B24BBC /* PGPSignatureBlockGood.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPSignatureBlockGood.txt; sourceTree = ""; }; + 1B876385178602B200B24BBC /* PGPSignatureUTF8Good.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PGPSignatureUTF8Good.txt; sourceTree = ""; }; + 1B8763971786035300B24BBC /* NSData+GPGMailTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+GPGMailTest.m"; sourceTree = ""; }; + 1B87639A178628FD00B24BBC /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; + 1B89E21414FC40F00012D4AD /* NSWindow+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSWindow+GPGMail.h"; sourceTree = ""; }; + 1B89E21514FC40F00012D4AD /* NSWindow+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSWindow+GPGMail.m"; sourceTree = ""; }; + 1B8C01D313E4F11D00DB9FA4 /* GPGSignatureView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GPGSignatureView.h; sourceTree = ""; }; + 1B8C01D413E4F12D00DB9FA4 /* GPGSignatureView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GPGSignatureView.m; sourceTree = ""; }; + 1B92838F19F9A55600D540DF /* CDStructures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDStructures.h; sourceTree = ""; }; + 1B92839019F9A55600D540DF /* EAEmailAddressGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EAEmailAddressGenerator.h; sourceTree = ""; }; + 1B92839119F9A55600D540DF /* EAEmailAddressLists.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EAEmailAddressLists.h; sourceTree = ""; }; + 1B92839219F9A55600D540DF /* EAEmailAddressParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EAEmailAddressParser.h; sourceTree = ""; }; + 1B92839319F9A55600D540DF /* EANameParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EANameParser.h; sourceTree = ""; }; + 1B92839419F9A55600D540DF /* EmailAddressingFramework.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EmailAddressingFramework.h; sourceTree = ""; }; + 1B92839619F9A55600D540DF /* _FormatFlowedWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _FormatFlowedWriter.h; sourceTree = ""; }; + 1B92839719F9A55600D540DF /* _MCActivityAggregateArrayController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCActivityAggregateArrayController.h; sourceTree = ""; }; + 1B92839819F9A55600D540DF /* _MCActivityMonitorMultiTarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCActivityMonitorMultiTarget.h; sourceTree = ""; }; + 1B92839919F9A55600D540DF /* _MCCompositeImageRep.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCCompositeImageRep.h; sourceTree = ""; }; + 1B92839A19F9A55600D540DF /* _MCConnectionAttempt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCConnectionAttempt.h; sourceTree = ""; }; + 1B92839B19F9A55600D540DF /* _MCDisplayNameInfoCacheItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCDisplayNameInfoCacheItem.h; sourceTree = ""; }; + 1B92839C19F9A55600D540DF /* _MCInsecureAuthenticationRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCInsecureAuthenticationRequest.h; sourceTree = ""; }; + 1B92839D19F9A55600D540DF /* _MCInvocationOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCInvocationOperation.h; sourceTree = ""; }; + 1B92839E19F9A55600D540DF /* _MCISPLocalAccountSettingsManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCISPLocalAccountSettingsManager.h; sourceTree = ""; }; + 1B92839F19F9A55600D540DF /* _MCISPOnlineAccountSettingsManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCISPOnlineAccountSettingsManager.h; sourceTree = ""; }; + 1B9283A019F9A55600D540DF /* _MCLogClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCLogClient.h; sourceTree = ""; }; + 1B9283A119F9A55600D540DF /* _MCMemoryMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMemoryMessage.h; sourceTree = ""; }; + 1B9283A219F9A55600D540DF /* _MCMimeEnrichedReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMimeEnrichedReader.h; sourceTree = ""; }; + 1B9283A319F9A55600D540DF /* _MCMimeEnrichedReaderCommandStackEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMimeEnrichedReaderCommandStackEntry.h; sourceTree = ""; }; + 1B9283A419F9A55600D540DF /* _MCMimeEnrichedState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMimeEnrichedState.h; sourceTree = ""; }; + 1B9283A519F9A55600D540DF /* _MCMimeEnrichedWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMimeEnrichedWriter.h; sourceTree = ""; }; + 1B9283A619F9A55600D540DF /* _MCMimeEnrichedWriterCommandStackEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMimeEnrichedWriterCommandStackEntry.h; sourceTree = ""; }; + 1B9283A719F9A55600D540DF /* _MCMimePartEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMimePartEnumerator.h; sourceTree = ""; }; + 1B9283A819F9A55600D540DF /* _MCOutgoingMessageBody.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCOutgoingMessageBody.h; sourceTree = ""; }; + 1B9283A919F9A55600D540DF /* _MCUserAlertRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCUserAlertRequest.h; sourceTree = ""; }; + 1B9283AA19F9A55600D540DF /* _MCWebAuthenticationRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCWebAuthenticationRequest.h; sourceTree = ""; }; + 1B9283AB19F9A55600D540DF /* ABAddressBook-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABAddressBook-MailCoreAdditions.h"; sourceTree = ""; }; + 1B9283AC19F9A55600D540DF /* ABAddressBook-MailCoreAdditionsInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABAddressBook-MailCoreAdditionsInternal.h"; sourceTree = ""; }; + 1B9283AD19F9A55600D540DF /* ABGroup-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABGroup-MailCoreAdditions.h"; sourceTree = ""; }; + 1B9283AE19F9A55600D540DF /* ABMailRecent-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABMailRecent-MailCoreAdditions.h"; sourceTree = ""; }; + 1B9283AF19F9A55600D540DF /* ABPerson-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABPerson-MailCoreAdditions.h"; sourceTree = ""; }; + 1B9283B019F9A55600D540DF /* ABRecord-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABRecord-MailCoreAdditions.h"; sourceTree = ""; }; + 1B9283B119F9A55600D540DF /* CDStructures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDStructures.h; sourceTree = ""; }; + 1B9283B219F9A55600D540DF /* EWSAutodiscoverBindingDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "EWSAutodiscoverBindingDelegate-Protocol.h"; sourceTree = ""; }; + 1B9283B319F9A55600D540DF /* IADataPluginDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IADataPluginDelegate-Protocol.h"; sourceTree = ""; }; + 1B9283B419F9A55600D540DF /* MailCoreFramework.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailCoreFramework.h; sourceTree = ""; }; + 1B9283B519F9A55600D540DF /* MCAccount-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCAccount-Protocol.h"; sourceTree = ""; }; + 1B9283B619F9A55600D540DF /* MCAccountProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAccountProxy.h; sourceTree = ""; }; + 1B9283B719F9A55600D540DF /* MCAccountSetupValidator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAccountSetupValidator.h; sourceTree = ""; }; + 1B9283B819F9A55600D540DF /* MCAccountSetupValidatorDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCAccountSetupValidatorDelegate-Protocol.h"; sourceTree = ""; }; + 1B9283B919F9A55600D540DF /* MCActivityAggregate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCActivityAggregate.h; sourceTree = ""; }; + 1B9283BA19F9A55600D540DF /* MCActivityAggregator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCActivityAggregator.h; sourceTree = ""; }; + 1B9283BB19F9A55600D540DF /* MCActivityMonitor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCActivityMonitor.h; sourceTree = ""; }; + 1B9283BC19F9A55600D540DF /* MCActivityTarget-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCActivityTarget-Protocol.h"; sourceTree = ""; }; + 1B9283BD19F9A55600D540DF /* MCAddressManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAddressManager.h; sourceTree = ""; }; + 1B9283BE19F9A55600D540DF /* MCApopAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCApopAuthScheme.h; sourceTree = ""; }; + 1B9283BF19F9A55600D540DF /* MCAppleTokenAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAppleTokenAuthScheme.h; sourceTree = ""; }; + 1B9283C019F9A55600D540DF /* MCArchiveFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCArchiveFileWrapper.h; sourceTree = ""; }; + 1B9283C119F9A55600D540DF /* MCAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAttachment.h; sourceTree = ""; }; + 1B9283C219F9A55600D540DF /* MCAttachmentWrappingTextAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAttachmentWrappingTextAttachment.h; sourceTree = ""; }; + 1B9283C319F9A55600D540DF /* MCAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAuthScheme.h; sourceTree = ""; }; + 1B9283C419F9A55600D540DF /* MCByteSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCByteSet.h; sourceTree = ""; }; + 1B9283C519F9A55600D540DF /* MCChanging-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCChanging-Protocol.h"; sourceTree = ""; }; + 1B9283C619F9A55600D540DF /* MCCIDURLProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCCIDURLProtocol.h; sourceTree = ""; }; + 1B9283C719F9A55600D540DF /* MCConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCConnection.h; sourceTree = ""; }; + 1B9283C819F9A55600D540DF /* MCConnectionBasedAccountProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCConnectionBasedAccountProxy.h; sourceTree = ""; }; + 1B9283C919F9A55600D540DF /* MCConnectionBasedAutodiscoverer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCConnectionBasedAutodiscoverer.h; sourceTree = ""; }; + 1B9283CA19F9A55600D540DF /* MCConnectionLogging-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCConnectionLogging-Protocol.h"; sourceTree = ""; }; + 1B9283CB19F9A55600D540DF /* MCContactsManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCContactsManager.h; sourceTree = ""; }; + 1B9283CC19F9A55600D540DF /* MCCramMD5AuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCCramMD5AuthScheme.h; sourceTree = ""; }; + 1B9283CD19F9A55600D540DF /* MCDataScanner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCDataScanner.h; sourceTree = ""; }; + 1B9283CE19F9A55600D540DF /* MCDateFormatterFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCDateFormatterFactory.h; sourceTree = ""; }; + 1B9283CF19F9A55600D540DF /* MCDateParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCDateParser.h; sourceTree = ""; }; + 1B9283D019F9A55600D540DF /* MCDisplayNameInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCDisplayNameInfo.h; sourceTree = ""; }; + 1B9283D119F9A55600D540DF /* MCDisplayNameManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCDisplayNameManager.h; sourceTree = ""; }; + 1B9283D219F9A55600D540DF /* MCError.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCError.h; sourceTree = ""; }; + 1B9283D319F9A55600D540DF /* MCEWSAutodiscoverer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCEWSAutodiscoverer.h; sourceTree = ""; }; + 1B9283D419F9A55600D540DF /* MCExternalAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCExternalAuthScheme.h; sourceTree = ""; }; + 1B9283D519F9A55600D540DF /* MCFileTypeInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCFileTypeInfo.h; sourceTree = ""; }; + 1B9283D619F9A55600D540DF /* MCGssapiAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCGssapiAuthScheme.h; sourceTree = ""; }; + 1B9283D719F9A55700D540DF /* MCIASetupViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCIASetupViewController.h; sourceTree = ""; }; + 1B9283D819F9A55700D540DF /* MCImageJunkMetadata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCImageJunkMetadata.h; sourceTree = ""; }; + 1B9283D919F9A55700D540DF /* MCInvocationQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCInvocationQueue.h; sourceTree = ""; }; + 1B9283DA19F9A55700D540DF /* MCISPAccountSettingsManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCISPAccountSettingsManager.h; sourceTree = ""; }; + 1B9283DB19F9A55700D540DF /* MCJunkRecorder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCJunkRecorder.h; sourceTree = ""; }; + 1B9283DC19F9A55700D540DF /* MCKeychainManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCKeychainManager.h; sourceTree = ""; }; + 1B9283DD19F9A55700D540DF /* MCLargeAttachmentFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCLargeAttachmentFileWrapper.h; sourceTree = ""; }; + 1B9283DE19F9A55700D540DF /* MCMailboxProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMailboxProxy.h; sourceTree = ""; }; + 1B9283DF19F9A55700D540DF /* MCMainThreadInvocationOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMainThreadInvocationOperation.h; sourceTree = ""; }; + 1B9283E019F9A55700D540DF /* MCManagedObjectContextManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCManagedObjectContextManager.h; sourceTree = ""; }; + 1B9283E119F9A55700D540DF /* MCManagedObjectProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCManagedObjectProxy.h; sourceTree = ""; }; + 1B9283E219F9A55700D540DF /* MCMemoryDataSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMemoryDataSource.h; sourceTree = ""; }; + 1B9283E319F9A55700D540DF /* MCMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMessage.h; sourceTree = ""; }; + 1B9283E419F9A55700D540DF /* MCMessageBody.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMessageBody.h; sourceTree = ""; }; + 1B9283E519F9A55700D540DF /* MCMessageDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessageDataSource-Protocol.h"; sourceTree = ""; }; + 1B9283E619F9A55700D540DF /* MCMessageGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMessageGenerator.h; sourceTree = ""; }; + 1B9283E719F9A55700D540DF /* MCMessageHeaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMessageHeaders.h; sourceTree = ""; }; + 1B9283E819F9A55700D540DF /* MCMessageSortingInterface-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessageSortingInterface-Protocol.h"; sourceTree = ""; }; + 1B9283E919F9A55700D540DF /* MCMessageTracer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMessageTracer.h; sourceTree = ""; }; + 1B9283EA19F9A55700D540DF /* MCMessageURLProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMessageURLProtocol.h; sourceTree = ""; }; + 1B9283EB19F9A55700D540DF /* MCMimeBody.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimeBody.h; sourceTree = ""; }; + 1B9283EC19F9A55700D540DF /* MCMimeCharset.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimeCharset.h; sourceTree = ""; }; + 1B9283ED19F9A55700D540DF /* MCMimeConverter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimeConverter.h; sourceTree = ""; }; + 1B9283EE19F9A55700D540DF /* MCMimeDataEncoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimeDataEncoding.h; sourceTree = ""; }; + 1B9283EF19F9A55700D540DF /* MCMimeDecodeContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimeDecodeContext.h; sourceTree = ""; }; + 1B9283F019F9A55700D540DF /* MCMimeHeaderScanContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimeHeaderScanContext.h; sourceTree = ""; }; + 1B9283F119F9A55700D540DF /* MCMimePart.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimePart.h; sourceTree = ""; }; + 1B9283F219F9A55700D540DF /* MCMimeTextAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimeTextAttachment.h; sourceTree = ""; }; + 1B9283F319F9A55700D540DF /* MCMonitoredInvocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMonitoredInvocation.h; sourceTree = ""; }; + 1B9283F419F9A55700D540DF /* MCMonitoredOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMonitoredOperation.h; sourceTree = ""; }; + 1B9283F519F9A55700D540DF /* MCMutableByteSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMutableByteSet.h; sourceTree = ""; }; + 1B9283F619F9A55700D540DF /* MCMutableMessageHeaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMutableMessageHeaders.h; sourceTree = ""; }; + 1B9283F719F9A55700D540DF /* MCNetworkController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCNetworkController.h; sourceTree = ""; }; + 1B9283F819F9A55700D540DF /* MCNtlmAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCNtlmAuthScheme.h; sourceTree = ""; }; + 1B9283F919F9A55700D540DF /* MCOutgoingMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCOutgoingMessage.h; sourceTree = ""; }; + 1B9283FA19F9A55700D540DF /* MCParsedMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCParsedMessage.h; sourceTree = ""; }; + 1B9283FB19F9A55700D540DF /* MCPersistedAccount-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCPersistedAccount-Protocol.h"; sourceTree = ""; }; + 1B9283FC19F9A55700D540DF /* MCPersistedConnectionBasedAccount-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCPersistedConnectionBasedAccount-Protocol.h"; sourceTree = ""; }; + 1B9283FD19F9A55700D540DF /* MCPersistentIDFetching-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCPersistentIDFetching-Protocol.h"; sourceTree = ""; }; + 1B9283FE19F9A55700D540DF /* MCPlaceholderArchiveFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCPlaceholderArchiveFileWrapper.h; sourceTree = ""; }; + 1B9283FF19F9A55700D540DF /* MCPlaceholderFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCPlaceholderFileWrapper.h; sourceTree = ""; }; + 1B92840019F9A55700D540DF /* MCPlainAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCPlainAuthScheme.h; sourceTree = ""; }; + 1B92840119F9A55700D540DF /* MCPortNumberFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCPortNumberFormatter.h; sourceTree = ""; }; + 1B92840219F9A55700D540DF /* MCPriorityInvocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCPriorityInvocation.h; sourceTree = ""; }; + 1B92840319F9A55700D540DF /* MCQuotaUsage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCQuotaUsage.h; sourceTree = ""; }; + 1B92840419F9A55700D540DF /* MCRemoteMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCRemoteMessage.h; sourceTree = ""; }; + 1B92840519F9A55700D540DF /* MCRemotePlaceholderFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCRemotePlaceholderFileWrapper.h; sourceTree = ""; }; + 1B92840619F9A55700D540DF /* MCResultTaskOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCResultTaskOperation.h; sourceTree = ""; }; + 1B92840719F9A55700D540DF /* MCSaslClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSaslClient.h; sourceTree = ""; }; + 1B92840819F9A55700D540DF /* MCSAXHTMLParsing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSAXHTMLParsing.h; sourceTree = ""; }; + 1B92840919F9A55700D540DF /* MCSharedPreferencesController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSharedPreferencesController.h; sourceTree = ""; }; + 1B92840A19F9A55700D540DF /* MCSocket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSocket.h; sourceTree = ""; }; + 1B92840B19F9A55700D540DF /* MCSSLCertificateTrustPanelManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSSLCertificateTrustPanelManager.h; sourceTree = ""; }; + 1B92840C19F9A55700D540DF /* MCStringRenderContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCStringRenderContext.h; sourceTree = ""; }; + 1B92840D19F9A55700D540DF /* MCSubdata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSubdata.h; sourceTree = ""; }; + 1B92840E19F9A55700D540DF /* MCSubjectParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSubjectParser.h; sourceTree = ""; }; + 1B92840F19F9A55700D540DF /* MCTaskOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCTaskOperation.h; sourceTree = ""; }; + 1B92841019F9A55700D540DF /* MCThrowingInvocationOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCThrowingInvocationOperation.h; sourceTree = ""; }; + 1B92841119F9A55700D540DF /* MCURLifier.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCURLifier.h; sourceTree = ""; }; + 1B92841219F9A55700D540DF /* MCURLMatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCURLMatch.h; sourceTree = ""; }; + 1B92841319F9A55700D540DF /* MCUserAlertCoordinator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCUserAlertCoordinator.h; sourceTree = ""; }; + 1B92841419F9A55700D540DF /* MCWorkerThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCWorkerThread.h; sourceTree = ""; }; + 1B92841519F9A55700D540DF /* NSAlertDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAlertDelegate-Protocol.h"; sourceTree = ""; }; + 1B92841619F9A55700D540DF /* NSArray-DateComparisonForRecents.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-DateComparisonForRecents.h"; sourceTree = ""; }; + 1B92841719F9A55700D540DF /* NSArray-DeepCopying.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-DeepCopying.h"; sourceTree = ""; }; + 1B92841819F9A55700D540DF /* NSArray-DerivedArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-DerivedArray.h"; sourceTree = ""; }; + 1B92841919F9A55700D540DF /* NSArray-MessagesFromMixedStoresConvenience.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-MessagesFromMixedStoresConvenience.h"; sourceTree = ""; }; + 1B92841A19F9A55700D540DF /* NSArray-removeSelf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-removeSelf.h"; sourceTree = ""; }; + 1B92841B19F9A55700D540DF /* NSAttributedString-FontAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-FontAdditions.h"; sourceTree = ""; }; + 1B92841C19F9A55700D540DF /* NSAttributedString-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92841D19F9A55700D540DF /* NSAttributedString-MCFormatFlowedSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MCFormatFlowedSupport.h"; sourceTree = ""; }; + 1B92841E19F9A55700D540DF /* NSAttributedString-MCMimeEnrichedWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MCMimeEnrichedWriter.h"; sourceTree = ""; }; + 1B92841F19F9A55700D540DF /* NSAttributedString-MessagePasteboardSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MessagePasteboardSupport.h"; sourceTree = ""; }; + 1B92842019F9A55700D540DF /* NSCharacterSet-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCharacterSet-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92842119F9A55700D540DF /* NSColor-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSColor-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92842219F9A55700D540DF /* NSCopying-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCopying-Protocol.h"; sourceTree = ""; }; + 1B92842319F9A55700D540DF /* NSData-HFSDataConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData-HFSDataConversion.h"; sourceTree = ""; }; + 1B92842419F9A55700D540DF /* NSData-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92842519F9A55700D540DF /* NSData-MCMimeDataEncoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData-MCMimeDataEncoding.h"; sourceTree = ""; }; + 1B92842619F9A55700D540DF /* NSData-MCUUEnDecode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData-MCUUEnDecode.h"; sourceTree = ""; }; + 1B92842719F9A55700D540DF /* NSDate-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDate-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92842819F9A55700D540DF /* NSError-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSError-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92842919F9A55700D540DF /* NSFileHandle-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileHandle-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92842A19F9A55700D540DF /* NSFileManager-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileManager-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92842B19F9A55700D540DF /* NSFileWrapper-ArchivedData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-ArchivedData.h"; sourceTree = ""; }; + 1B92842C19F9A55700D540DF /* NSFileWrapper-HFSDataConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-HFSDataConversion.h"; sourceTree = ""; }; + 1B92842D19F9A55700D540DF /* NSFileWrapper-iCalInvitationSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-iCalInvitationSupport.h"; sourceTree = ""; }; + 1B92842E19F9A55700D540DF /* NSFileWrapper-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92842F19F9A55700D540DF /* NSFileWrapper-PersistenceWithoutLosingMetadata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-PersistenceWithoutLosingMetadata.h"; sourceTree = ""; }; + 1B92843019F9A55700D540DF /* NSImage-CompositeImageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSImage-CompositeImageAdditions.h"; sourceTree = ""; }; + 1B92843119F9A55700D540DF /* NSImage-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSImage-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92843219F9A55700D540DF /* NSInvocation-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInvocation-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92843319F9A55700D540DF /* NSMachPortDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMachPortDelegate-Protocol.h"; sourceTree = ""; }; + 1B92843419F9A55700D540DF /* NSMutableArray-Convenience.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableArray-Convenience.h"; sourceTree = ""; }; + 1B92843519F9A55700D540DF /* NSMutableArray-SortedArrayExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableArray-SortedArrayExtensions.h"; sourceTree = ""; }; + 1B92843619F9A55700D540DF /* NSMutableAttributedString-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableAttributedString-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92843719F9A55700D540DF /* NSMutableCopying-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableCopying-Protocol.h"; sourceTree = ""; }; + 1B92843819F9A55700D540DF /* NSMutableData-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableData-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92843919F9A55700D540DF /* NSMutableData-MCMimeDataEncoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableData-MCMimeDataEncoding.h"; sourceTree = ""; }; + 1B92843A19F9A55700D540DF /* NSMutableData-RFC2231Support.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableData-RFC2231Support.h"; sourceTree = ""; }; + 1B92843B19F9A55700D540DF /* NSMutableDictionary-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableDictionary-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92843C19F9A55700D540DF /* NSMutableDictionary-RFC2231Support.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableDictionary-RFC2231Support.h"; sourceTree = ""; }; + 1B92843D19F9A55700D540DF /* NSMutableSet-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableSet-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92843E19F9A55700D540DF /* NSNumber-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92843F19F9A55700D540DF /* NSObject-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-Protocol.h"; sourceTree = ""; }; + 1B92844019F9A55700D540DF /* NSOperationQueue-MCTaskOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOperationQueue-MCTaskOperation.h"; sourceTree = ""; }; + 1B92844119F9A55700D540DF /* NSPortDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPortDelegate-Protocol.h"; sourceTree = ""; }; + 1B92844219F9A55700D540DF /* NSRunLoop-InternalMailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSRunLoop-InternalMailCoreAdditions.h"; sourceTree = ""; }; + 1B92844319F9A55700D540DF /* NSRunLoop-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSRunLoop-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92844419F9A55700D540DF /* NSScanner-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSScanner-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92844519F9A55700D540DF /* NSSet-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSet-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92844619F9A55700D540DF /* NSStreamDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSStreamDelegate-Protocol.h"; sourceTree = ""; }; + 1B92844719F9A55700D540DF /* NSString-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MailCoreAdditions.h"; sourceTree = ""; }; + 1B92844819F9A55700D540DF /* NSString-MCFormatFlowedSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MCFormatFlowedSupport.h"; sourceTree = ""; }; + 1B92844919F9A55700D540DF /* NSString-MCMimeCharsetSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MCMimeCharsetSupport.h"; sourceTree = ""; }; + 1B92844A19F9A55700D540DF /* NSString-MCMimeEnrichedReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MCMimeEnrichedReader.h"; sourceTree = ""; }; + 1B92844B19F9A55700D540DF /* NSString-RFC2047Support.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-RFC2047Support.h"; sourceTree = ""; }; + 1B92844C19F9A55700D540DF /* NSString-StationeryUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-StationeryUtilities.h"; sourceTree = ""; }; + 1B92844D19F9A55700D540DF /* NSTextAttachment-MCMimeSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextAttachment-MCMimeSupport.h"; sourceTree = ""; }; + 1B92844E19F9A55700D540DF /* NSURLDownloadDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURLDownloadDelegate-Protocol.h"; sourceTree = ""; }; + 1B92844F19F9A55700D540DF /* NSURLSessionDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURLSessionDelegate-Protocol.h"; sourceTree = ""; }; + 1B92845019F9A55700D540DF /* NSURLSessionDownloadDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURLSessionDownloadDelegate-Protocol.h"; sourceTree = ""; }; + 1B92845119F9A55700D540DF /* NSURLSessionTaskDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURLSessionTaskDelegate-Protocol.h"; sourceTree = ""; }; + 1B92845219F9A55700D540DF /* NSXMLParserDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSXMLParserDelegate-Protocol.h"; sourceTree = ""; }; + 1B92845419F9A55700D540DF /* _IMAPOfflineRestoreContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _IMAPOfflineRestoreContext.h; sourceTree = ""; }; + 1B92845519F9A55700D540DF /* _MFAppleScriptHeaderRecord.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFAppleScriptHeaderRecord.h; sourceTree = ""; }; + 1B92845619F9A55700D540DF /* _MFConversationsMessageCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFConversationsMessageCollector.h; sourceTree = ""; }; + 1B92845719F9A55700D540DF /* _MFDataCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFDataCollector.h; sourceTree = ""; }; + 1B92845819F9A55700D540DF /* _MFIMAPMailboxDeletionQueueEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFIMAPMailboxDeletionQueueEntry.h; sourceTree = ""; }; + 1B92845919F9A55700D540DF /* _MFLibraryThreadRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFLibraryThreadRequest.h; sourceTree = ""; }; + 1B92845A19F9A55700D540DF /* _MFMailboxChildrenEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMailboxChildrenEnumerator.h; sourceTree = ""; }; + 1B92845B19F9A55700D540DF /* _MFMailboxEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMailboxEnumerator.h; sourceTree = ""; }; + 1B92845C19F9A55700D540DF /* _MFMessageCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageCollector.h; sourceTree = ""; }; + 1B92845D19F9A55700D540DF /* _MFMessageLoadingContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageLoadingContext.h; sourceTree = ""; }; + 1B92845E19F9A55700D540DF /* _MFMessageSortingValueColor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueColor.h; sourceTree = ""; }; + 1B92845F19F9A55700D540DF /* _MFMessageSortingValueDateLastViewed.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueDateLastViewed.h; sourceTree = ""; }; + 1B92846019F9A55700D540DF /* _MFMessageSortingValueDateReceived.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueDateReceived.h; sourceTree = ""; }; + 1B92846119F9A55700D540DF /* _MFMessageSortingValueDateSent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueDateSent.h; sourceTree = ""; }; + 1B92846219F9A55700D540DF /* _MFMessageSortingValueLibraryID.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueLibraryID.h; sourceTree = ""; }; + 1B92846319F9A55700D540DF /* _MFMessageSortingValueMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueMailbox.h; sourceTree = ""; }; + 1B92846419F9A55700D540DF /* _MFMessageSortingValueMessageFlags.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueMessageFlags.h; sourceTree = ""; }; + 1B92846519F9A55700D540DF /* _MFMessageSortingValueMessageSize.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueMessageSize.h; sourceTree = ""; }; + 1B92846619F9A55700D540DF /* _MFMessageSortingValueNumberOfAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueNumberOfAttachments.h; sourceTree = ""; }; + 1B92846719F9A55700D540DF /* _MFMessageSortingValueSender.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueSender.h; sourceTree = ""; }; + 1B92846819F9A55700D540DF /* _MFMessageSortingValueSubject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueSubject.h; sourceTree = ""; }; + 1B92846919F9A55700D540DF /* _MFMessageSortingValueTo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueTo.h; sourceTree = ""; }; + 1B92846A19F9A55700D540DF /* _MFNonContentSmartMailboxUnreadCountManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFNonContentSmartMailboxUnreadCountManager.h; sourceTree = ""; }; + 1B92846B19F9A55700D540DF /* _MFProgressHandlerMonitorContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFProgressHandlerMonitorContext.h; sourceTree = ""; }; + 1B92846C19F9A55700D540DF /* _MFRedundantTextIdentifierAttachmentContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFRedundantTextIdentifierAttachmentContext.h; sourceTree = ""; }; + 1B92846D19F9A55700D540DF /* _MFRedundantTextIdentifierParseContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFRedundantTextIdentifierParseContext.h; sourceTree = ""; }; + 1B92846E19F9A55700D540DF /* _MFRedundantTextIdentifierSolutionContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFRedundantTextIdentifierSolutionContext.h; sourceTree = ""; }; + 1B92846F19F9A55700D540DF /* _MFRedundantTextIdentifierSolutionGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFRedundantTextIdentifierSolutionGenerator.h; sourceTree = ""; }; + 1B92847019F9A55700D540DF /* _MFRootlessMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFRootlessMailbox.h; sourceTree = ""; }; + 1B92847119F9A55700D540DF /* _MFRoutingDictionaryContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFRoutingDictionaryContext.h; sourceTree = ""; }; + 1B92847219F9A55700D540DF /* _MFSeenMessagesStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFSeenMessagesStore.h; sourceTree = ""; }; + 1B92847319F9A55700D540DF /* _MFSetFlags.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFSetFlags.h; sourceTree = ""; }; + 1B92847419F9A55700D540DF /* _MFSmartMailboxesEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFSmartMailboxesEnumerator.h; sourceTree = ""; }; + 1B92847519F9A55700D540DF /* _MFSMTPEnhancedStatusCode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFSMTPEnhancedStatusCode.h; sourceTree = ""; }; + 1B92847619F9A55700D540DF /* _MFZipStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFZipStream.h; sourceTree = ""; }; + 1B92847719F9A55700D540DF /* CDStructures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDStructures.h; sourceTree = ""; }; + 1B92847819F9A55700D540DF /* DOMDocument-JunkAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMDocument-JunkAdditions.h"; sourceTree = ""; }; + 1B92847919F9A55700D540DF /* EWSExchangeServiceBindingDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "EWSExchangeServiceBindingDelegate-Protocol.h"; sourceTree = ""; }; + 1B92847A19F9A55700D540DF /* EWSPathToExtendedFieldType-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "EWSPathToExtendedFieldType-MessageAdditions.h"; sourceTree = ""; }; + 1B92847B19F9A55700D540DF /* IMAPAccount-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IMAPAccount-Protocol.h"; sourceTree = ""; }; + 1B92847C19F9A55700D540DF /* IMAPMailbox-MCMailboxAdapter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IMAPMailbox-MCMailboxAdapter.h"; sourceTree = ""; }; + 1B92847D19F9A55700D540DF /* IMAPMailboxDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IMAPMailboxDelegate-Protocol.h"; sourceTree = ""; }; + 1B92847E19F9A55700D540DF /* IMAPMessage-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IMAPMessage-Protocol.h"; sourceTree = ""; }; + 1B92847F19F9A55700D540DF /* IMAPMessageDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IMAPMessageDataSource-Protocol.h"; sourceTree = ""; }; + 1B92848019F9A55700D540DF /* IMAPOfflineCache-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IMAPOfflineCache-Protocol.h"; sourceTree = ""; }; + 1B92848119F9A55700D540DF /* IMAPPersistedMessage-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IMAPPersistedMessage-Protocol.h"; sourceTree = ""; }; + 1B92848219F9A55700D540DF /* MailFramework.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailFramework.h; sourceTree = ""; }; + 1B92848319F9A55700D540DF /* MailMigratorService-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailMigratorService-Protocol.h"; sourceTree = ""; }; + 1B92848419F9A55700D540DF /* MCAccount-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCAccount-Protocol.h"; sourceTree = ""; }; + 1B92848519F9A55700D540DF /* MCAccountSetupValidatorDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCAccountSetupValidatorDelegate-Protocol.h"; sourceTree = ""; }; + 1B92848619F9A55700D540DF /* MCActivityTarget-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCActivityTarget-Protocol.h"; sourceTree = ""; }; + 1B92848719F9A55700D540DF /* MCAttachment-ScriptingInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCAttachment-ScriptingInternal.h"; sourceTree = ""; }; + 1B92848819F9A55700D540DF /* MCAttachment-ScriptingSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCAttachment-ScriptingSupport.h"; sourceTree = ""; }; + 1B92848919F9A55700D540DF /* MCChanging-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCChanging-Protocol.h"; sourceTree = ""; }; + 1B92848A19F9A55700D540DF /* MCCIDURLProtocolDataProvider-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCCIDURLProtocolDataProvider-Protocol.h"; sourceTree = ""; }; + 1B92848B19F9A55700D540DF /* MCGmailLabel-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCGmailLabel-Protocol.h"; sourceTree = ""; }; + 1B92848C19F9A55700D540DF /* MCMailAccount-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMailAccount-Protocol.h"; sourceTree = ""; }; + 1B92848D19F9A55700D540DF /* MCMailbox-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMailbox-Protocol.h"; sourceTree = ""; }; + 1B92848E19F9A55700D540DF /* MCMessage-MCMailAccountAdapter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessage-MCMailAccountAdapter.h"; sourceTree = ""; }; + 1B92848F19F9A55700D540DF /* MCMessage-MCMailboxAdapter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessage-MCMailboxAdapter.h"; sourceTree = ""; }; + 1B92849019F9A55700D540DF /* MCMessage-MFBackupAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessage-MFBackupAdditions.h"; sourceTree = ""; }; + 1B92849119F9A55700D540DF /* MCMessage-ParentalControl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessage-ParentalControl.h"; sourceTree = ""; }; + 1B92849219F9A55700D540DF /* MCMessage-ScriptingSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessage-ScriptingSupport.h"; sourceTree = ""; }; + 1B92849319F9A55700D540DF /* MCMessage-ScriptingSupportInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessage-ScriptingSupportInternal.h"; sourceTree = ""; }; + 1B92849419F9A55700D540DF /* MCMessage-Threads.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessage-Threads.h"; sourceTree = ""; }; + 1B92849519F9A55700D540DF /* MCMessageBody-MFAttachmentViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessageBody-MFAttachmentViewController.h"; sourceTree = ""; }; + 1B92849619F9A55700D540DF /* MCMessageDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessageDataSource-Protocol.h"; sourceTree = ""; }; + 1B92849719F9A55700D540DF /* MCMessageSortingInterface-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessageSortingInterface-Protocol.h"; sourceTree = ""; }; + 1B92849819F9A55700D540DF /* MCMimePart-SpotlightSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMimePart-SpotlightSupport.h"; sourceTree = ""; }; + 1B92849919F9A55700D540DF /* MCPersistentIDFetching-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCPersistentIDFetching-Protocol.h"; sourceTree = ""; }; + 1B92849A19F9A55700D540DF /* MCRemoteStoreAccount-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCRemoteStoreAccount-Protocol.h"; sourceTree = ""; }; + 1B92849B19F9A55700D540DF /* MFAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAccount.h; sourceTree = ""; }; + 1B92849C19F9A55700D540DF /* MFAccountStatus.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAccountStatus.h; sourceTree = ""; }; + 1B92849D19F9A55700D540DF /* MFAccountStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAccountStorage.h; sourceTree = ""; }; + 1B92849E19F9A55700D540DF /* MFAddressManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAddressManager.h; sourceTree = ""; }; + 1B92849F19F9A55700D540DF /* MFAosImapAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAosImapAccount.h; sourceTree = ""; }; + 1B9284A019F9A55700D540DF /* MFAosSmtpAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAosSmtpAccount.h; sourceTree = ""; }; + 1B9284A119F9A55700D540DF /* MFAttachmentViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAttachmentViewController.h; sourceTree = ""; }; + 1B9284A219F9A55700D540DF /* MFBackupManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFBackupManager.h; sourceTree = ""; }; + 1B9284A319F9A55700D540DF /* MFBehaviorTracker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFBehaviorTracker.h; sourceTree = ""; }; + 1B9284A419F9A55700D540DF /* MFBerkeleyMbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFBerkeleyMbox.h; sourceTree = ""; }; + 1B9284A519F9A55700D540DF /* MFCachedMailboxInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFCachedMailboxInfo.h; sourceTree = ""; }; + 1B9284A619F9A55700D540DF /* MFConversationCalculationContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFConversationCalculationContext.h; sourceTree = ""; }; + 1B9284A719F9A55700D540DF /* MFConversationCalculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFConversationCalculator.h; sourceTree = ""; }; + 1B9284A819F9A55700D540DF /* MFCriterion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFCriterion.h; sourceTree = ""; }; + 1B9284A919F9A55700D540DF /* MFCrossProcessLock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFCrossProcessLock.h; sourceTree = ""; }; + 1B9284AA19F9A55700D540DF /* MFDatabaseRecoverer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFDatabaseRecoverer.h; sourceTree = ""; }; + 1B9284AB19F9A55700D540DF /* MFDefaults.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFDefaults.h; sourceTree = ""; }; + 1B9284AC19F9A55700D540DF /* MFDeliveryAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFDeliveryAccount.h; sourceTree = ""; }; + 1B9284AD19F9A55700D540DF /* MFEWSAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSAccount.h; sourceTree = ""; }; + 1B9284AE19F9A55700D540DF /* MFEWSConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSConnection.h; sourceTree = ""; }; + 1B9284AF19F9A55700D540DF /* MFEWSCopyItemsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSCopyItemsRequestOperation.h; sourceTree = ""; }; + 1B9284B019F9A55700D540DF /* MFEWSCopyItemsResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSCopyItemsResponseOperation.h; sourceTree = ""; }; + 1B9284B119F9A55700D540DF /* MFEWSCreateEventReplyRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSCreateEventReplyRequestOperation.h; sourceTree = ""; }; + 1B9284B219F9A55700D540DF /* MFEWSCreateEventReplyResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSCreateEventReplyResponseOperation.h; sourceTree = ""; }; + 1B9284B319F9A55700D540DF /* MFEWSCreateFolderRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSCreateFolderRequestOperation.h; sourceTree = ""; }; + 1B9284B419F9A55700D540DF /* MFEWSCreateFolderResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSCreateFolderResponseOperation.h; sourceTree = ""; }; + 1B9284B519F9A55700D540DF /* MFEWSCreateItemRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSCreateItemRequestOperation.h; sourceTree = ""; }; + 1B9284B619F9A55700D540DF /* MFEWSCreateItemResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSCreateItemResponseOperation.h; sourceTree = ""; }; + 1B9284B719F9A55700D540DF /* MFEWSCreateMessageRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSCreateMessageRequestOperation.h; sourceTree = ""; }; + 1B9284B819F9A55700D540DF /* MFEWSDeleteFolderRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSDeleteFolderRequestOperation.h; sourceTree = ""; }; + 1B9284B919F9A55700D540DF /* MFEWSDeleteItemsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSDeleteItemsRequestOperation.h; sourceTree = ""; }; + 1B9284BA19F9A55700D540DF /* MFEWSDeliverer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSDeliverer.h; sourceTree = ""; }; + 1B9284BB19F9A55700D540DF /* MFEWSDeliveryAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSDeliveryAccount.h; sourceTree = ""; }; + 1B9284BC19F9A55700D540DF /* MFEWSErrorHandler-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFEWSErrorHandler-Protocol.h"; sourceTree = ""; }; + 1B9284BD19F9A55700D540DF /* MFEWSFindItemsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSFindItemsRequestOperation.h; sourceTree = ""; }; + 1B9284BE19F9A55700D540DF /* MFEWSFindItemsResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSFindItemsResponseOperation.h; sourceTree = ""; }; + 1B9284BF19F9A55700D540DF /* MFEWSGateway.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSGateway.h; sourceTree = ""; }; + 1B9284C019F9A55700D540DF /* MFEWSGetFolderRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSGetFolderRequestOperation.h; sourceTree = ""; }; + 1B9284C119F9A55700D540DF /* MFEWSGetFolderResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSGetFolderResponseOperation.h; sourceTree = ""; }; + 1B9284C219F9A55700D540DF /* MFEWSGetItemDataRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSGetItemDataRequestOperation.h; sourceTree = ""; }; + 1B9284C319F9A55700D540DF /* MFEWSGetItemDataResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSGetItemDataResponseOperation.h; sourceTree = ""; }; + 1B9284C419F9A55700D540DF /* MFEWSGetItemsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSGetItemsRequestOperation.h; sourceTree = ""; }; + 1B9284C519F9A55700D540DF /* MFEWSGetItemsResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSGetItemsResponseOperation.h; sourceTree = ""; }; + 1B9284C619F9A55700D540DF /* MFEWSGetUserOofSettingsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSGetUserOofSettingsRequestOperation.h; sourceTree = ""; }; + 1B9284C719F9A55700D540DF /* MFEWSGetUserOofSettingsResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSGetUserOofSettingsResponseOperation.h; sourceTree = ""; }; + 1B9284C819F9A55700D540DF /* MFEWSLibraryUpdateOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSLibraryUpdateOperation.h; sourceTree = ""; }; + 1B9284C919F9A55700D540DF /* MFEWSMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSMessage.h; sourceTree = ""; }; + 1B9284CA19F9A55700D540DF /* MFEWSMoveFolderRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSMoveFolderRequestOperation.h; sourceTree = ""; }; + 1B9284CB19F9A55700D540DF /* MFEWSOfflineGateway.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSOfflineGateway.h; sourceTree = ""; }; + 1B9284CC19F9A55700D540DF /* MFEWSRenameFolderRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSRenameFolderRequestOperation.h; sourceTree = ""; }; + 1B9284CD19F9A55700D540DF /* MFEWSRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSRequestOperation.h; sourceTree = ""; }; + 1B9284CE19F9A55700D540DF /* MFEWSResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSResponseOperation.h; sourceTree = ""; }; + 1B9284CF19F9A55700D540DF /* MFEWSSetUserOofSettingsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSSetUserOofSettingsRequestOperation.h; sourceTree = ""; }; + 1B9284D019F9A55700D540DF /* MFEWSSetUserOofSettingsResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSSetUserOofSettingsResponseOperation.h; sourceTree = ""; }; + 1B9284D119F9A55700D540DF /* MFEWSSizeEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSSizeEngine.h; sourceTree = ""; }; + 1B9284D219F9A55700D540DF /* MFEWSStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSStore.h; sourceTree = ""; }; + 1B9284D319F9A55700D540DF /* MFEWSSuppressReadReceiptsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSSuppressReadReceiptsRequestOperation.h; sourceTree = ""; }; + 1B9284D419F9A55700D540DF /* MFEWSSyncFolderHierarchyRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSSyncFolderHierarchyRequestOperation.h; sourceTree = ""; }; + 1B9284D519F9A55700D540DF /* MFEWSSyncFolderHierarchyResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSSyncFolderHierarchyResponseOperation.h; sourceTree = ""; }; + 1B9284D619F9A55700D540DF /* MFEWSSyncFolderItemsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSSyncFolderItemsRequestOperation.h; sourceTree = ""; }; + 1B9284D719F9A55700D540DF /* MFEWSSyncFolderItemsResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSSyncFolderItemsResponseOperation.h; sourceTree = ""; }; + 1B9284D819F9A55700D540DF /* MFEWSUpdateItemRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFEWSUpdateItemRequestOperation.h; sourceTree = ""; }; + 1B9284D919F9A55700D540DF /* MFExchangeIMAPAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFExchangeIMAPAccount.h; sourceTree = ""; }; + 1B9284DA19F9A55700D540DF /* MFExchangeIMAPConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFExchangeIMAPConnection.h; sourceTree = ""; }; + 1B9284DB19F9A55700D540DF /* MFFilesystemWatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFFilesystemWatcher.h; sourceTree = ""; }; + 1B9284DC19F9A55700D540DF /* MFGmailLabelStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFGmailLabelStore.h; sourceTree = ""; }; + 1B9284DD19F9A55700D540DF /* MFHTMLConverter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFHTMLConverter.h; sourceTree = ""; }; + 1B9284DE19F9A55700D540DF /* MFHTMLParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFHTMLParser.h; sourceTree = ""; }; + 1B9284DF19F9A55700D540DF /* MFIMAPAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFIMAPAccount.h; sourceTree = ""; }; + 1B9284E019F9A55700D540DF /* MFIMAPAppendMessageOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFIMAPAppendMessageOperation.h; sourceTree = ""; }; + 1B9284E119F9A55700D540DF /* MFIMAPCopyMessagesOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFIMAPCopyMessagesOperation.h; sourceTree = ""; }; + 1B9284E219F9A55700D540DF /* MFIMAPCreateOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFIMAPCreateOperation.h; sourceTree = ""; }; + 1B9284E319F9A55700D540DF /* MFIMAPDeleteOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFIMAPDeleteOperation.h; sourceTree = ""; }; + 1B9284E419F9A55700D540DF /* MFIMAPOfflineCopyOnStupidServerOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFIMAPOfflineCopyOnStupidServerOperation.h; sourceTree = ""; }; + 1B9284E519F9A55700D540DF /* MFIMAPOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFIMAPOperation.h; sourceTree = ""; }; + 1B9284E619F9A55700D540DF /* MFIMAPOperationCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFIMAPOperationCache.h; sourceTree = ""; }; + 1B9284E719F9A55700D540DF /* MFIMAPSizeEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFIMAPSizeEngine.h; sourceTree = ""; }; + 1B9284E819F9A55700D540DF /* MFIMAPStoreFlagsOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFIMAPStoreFlagsOperation.h; sourceTree = ""; }; + 1B9284E919F9A55700D540DF /* MFIMAPStoreGmailLabelsOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFIMAPStoreGmailLabelsOperation.h; sourceTree = ""; }; + 1B9284EA19F9A55700D540DF /* MFIMAPStoreOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFIMAPStoreOperation.h; sourceTree = ""; }; + 1B9284EB19F9A55700D540DF /* MFJunkMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFJunkMail.h; sourceTree = ""; }; + 1B9284EC19F9A55700D540DF /* MFJunkMailFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFJunkMailFilter.h; sourceTree = ""; }; + 1B9284ED19F9A55700D540DF /* MFLibrary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLibrary.h; sourceTree = ""; }; + 1B9284EE19F9A55700D540DF /* MFLibraryCalendarEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLibraryCalendarEvent.h; sourceTree = ""; }; + 1B9284EF19F9A55700D540DF /* MFLibraryIMAPMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLibraryIMAPMessage.h; sourceTree = ""; }; + 1B9284F019F9A55700D540DF /* MFLibraryIMAPStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLibraryIMAPStore.h; sourceTree = ""; }; + 1B9284F119F9A55700D540DF /* MFLibraryInterface-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFLibraryInterface-Protocol.h"; sourceTree = ""; }; + 1B9284F219F9A55700D540DF /* MFLibraryMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLibraryMessage.h; sourceTree = ""; }; + 1B9284F319F9A55700D540DF /* MFLibraryQueries.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLibraryQueries.h; sourceTree = ""; }; + 1B9284F419F9A55700D540DF /* MFLibraryStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLibraryStore.h; sourceTree = ""; }; + 1B9284F519F9A55700D540DF /* MFLibraryStoreMessageConsumer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLibraryStoreMessageConsumer.h; sourceTree = ""; }; + 1B9284F619F9A55700D540DF /* MFLibraryThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLibraryThread.h; sourceTree = ""; }; + 1B9284F719F9A55700D540DF /* MFLibraryUpgrader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLibraryUpgrader.h; sourceTree = ""; }; + 1B9284F819F9A55700D540DF /* MFLocalAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLocalAccount.h; sourceTree = ""; }; + 1B9284F919F9A55700D540DF /* MFLocationManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLocationManager.h; sourceTree = ""; }; + 1B9284FA19F9A55700D540DF /* MFMailAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMailAccount.h; sourceTree = ""; }; + 1B9284FB19F9A55700D540DF /* MFMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMailbox.h; sourceTree = ""; }; + 1B9284FC19F9A55700D540DF /* MFMailboxDirectoryScanner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMailboxDirectoryScanner.h; sourceTree = ""; }; + 1B9284FD19F9A55700D540DF /* MFMailDropPreferencesManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMailDropPreferencesManager.h; sourceTree = ""; }; + 1B9284FE19F9A55700D540DF /* MFMailMigrator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMailMigrator.h; sourceTree = ""; }; + 1B9284FF19F9A55700D540DF /* MFMessageAddressee.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageAddressee.h; sourceTree = ""; }; + 1B92850019F9A55700D540DF /* MFMessageConsumer-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFMessageConsumer-Protocol.h"; sourceTree = ""; }; + 1B92850119F9A55700D540DF /* MFMessageContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageContext.h; sourceTree = ""; }; + 1B92850219F9A55700D540DF /* MFMessageCounts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageCounts.h; sourceTree = ""; }; + 1B92850319F9A55700D540DF /* MFMessageCriterion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageCriterion.h; sourceTree = ""; }; + 1B92850419F9A55700D540DF /* MFMessageDeliverer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageDeliverer.h; sourceTree = ""; }; + 1B92850519F9A55700D540DF /* MFMessageDelivererDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFMessageDelivererDelegate-Protocol.h"; sourceTree = ""; }; + 1B92850619F9A55700D540DF /* MFMessageReplyGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageReplyGenerator.h; sourceTree = ""; }; + 1B92850719F9A55700D540DF /* MFMessageRouter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageRouter.h; sourceTree = ""; }; + 1B92850819F9A55700D540DF /* MFMessageRouterUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageRouterUtilities.h; sourceTree = ""; }; + 1B92850919F9A55700D540DF /* MFMessageRule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageRule.h; sourceTree = ""; }; + 1B92850A19F9A55700D540DF /* MFMessageRuleCriterion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageRuleCriterion.h; sourceTree = ""; }; + 1B92850B19F9A55700D540DF /* MFMessageSortingInformation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageSortingInformation.h; sourceTree = ""; }; + 1B92850C19F9A55700D540DF /* MFMessageSortingValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageSortingValue.h; sourceTree = ""; }; + 1B92850D19F9A55700D540DF /* MFMessageStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageStore.h; sourceTree = ""; }; + 1B92850E19F9A55700D540DF /* MFMessageThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageThread.h; sourceTree = ""; }; + 1B92850F19F9A55700D540DF /* MFNetworkLocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFNetworkLocation.h; sourceTree = ""; }; + 1B92851019F9A55700D540DF /* MFNeXTStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFNeXTStore.h; sourceTree = ""; }; + 1B92851119F9A55700D540DF /* MFParentalControlAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFParentalControlAccount.h; sourceTree = ""; }; + 1B92851219F9A55700D540DF /* MFParentalControlManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFParentalControlManager.h; sourceTree = ""; }; + 1B92851319F9A55700D540DF /* MFParentalControlSettings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFParentalControlSettings.h; sourceTree = ""; }; + 1B92851419F9A55700D540DF /* MFParentalControlStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFParentalControlStore.h; sourceTree = ""; }; + 1B92851519F9A55700D540DF /* MFPersistenceManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFPersistenceManager.h; sourceTree = ""; }; + 1B92851619F9A55700D540DF /* MFPOPAccount-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFPOPAccount-Protocol.h"; sourceTree = ""; }; + 1B92851719F9A55700D540DF /* MFPOPAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFPOPAccount.h; sourceTree = ""; }; + 1B92851819F9A55700D540DF /* MFPOPConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFPOPConnection.h; sourceTree = ""; }; + 1B92851919F9A55700D540DF /* MFPOPConnectionDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFPOPConnectionDelegate-Protocol.h"; sourceTree = ""; }; + 1B92851A19F9A55700D540DF /* MFPOPMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFPOPMessage.h; sourceTree = ""; }; + 1B92851B19F9A55700D540DF /* MFPOPSizeEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFPOPSizeEngine.h; sourceTree = ""; }; + 1B92851C19F9A55700D540DF /* MFPOPStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFPOPStore.h; sourceTree = ""; }; + 1B92851D19F9A55700D540DF /* MFPreparedStatement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFPreparedStatement.h; sourceTree = ""; }; + 1B92851E19F9A55700D540DF /* MFQuoteParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFQuoteParser.h; sourceTree = ""; }; + 1B92851F19F9A55700D540DF /* MFRecoveredMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFRecoveredMessage.h; sourceTree = ""; }; + 1B92852019F9A55700D540DF /* MFRecoveredStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFRecoveredStore.h; sourceTree = ""; }; + 1B92852119F9A55700D540DF /* MFRedundantContentMarkup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFRedundantContentMarkup.h; sourceTree = ""; }; + 1B92852219F9A55700D540DF /* MFRedundantTextIdentifier.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFRedundantTextIdentifier.h; sourceTree = ""; }; + 1B92852319F9A55700D540DF /* MFRemoteAppendMessagesContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFRemoteAppendMessagesContext.h; sourceTree = ""; }; + 1B92852419F9A55700D540DF /* MFRemoteAttachmentManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFRemoteAttachmentManager.h; sourceTree = ""; }; + 1B92852519F9A55700D540DF /* MFRemoteStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFRemoteStore.h; sourceTree = ""; }; + 1B92852619F9A55700D540DF /* MFRemoteStoreAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFRemoteStoreAccount.h; sourceTree = ""; }; + 1B92852719F9A55700D540DF /* MFRemoteStoreSizeEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFRemoteStoreSizeEngine.h; sourceTree = ""; }; + 1B92852819F9A55700D540DF /* MFRouterStore-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFRouterStore-Protocol.h"; sourceTree = ""; }; + 1B92852919F9A55700D540DF /* MFSeenMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSeenMessage.h; sourceTree = ""; }; + 1B92852A19F9A55700D540DF /* MFSeenMessagesManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSeenMessagesManager.h; sourceTree = ""; }; + 1B92852B19F9A55700D540DF /* MFSizeEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSizeEngine.h; sourceTree = ""; }; + 1B92852C19F9A55700D540DF /* MFSmartMailboxUnreadCountManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSmartMailboxUnreadCountManager.h; sourceTree = ""; }; + 1B92852D19F9A55700D540DF /* MFSMTPAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSMTPAccount.h; sourceTree = ""; }; + 1B92852E19F9A55700D540DF /* MFSMTPConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSMTPConnection.h; sourceTree = ""; }; + 1B92852F19F9A55700D540DF /* MFSMTPDeliverer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSMTPDeliverer.h; sourceTree = ""; }; + 1B92853019F9A55700D540DF /* MFSnippetCalculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSnippetCalculator.h; sourceTree = ""; }; + 1B92853119F9A55700D540DF /* MFSnippetCalculatorDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFSnippetCalculatorDelegate-Protocol.h"; sourceTree = ""; }; + 1B92853219F9A55700D540DF /* MFSnippetManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSnippetManager.h; sourceTree = ""; }; + 1B92853319F9A55700D540DF /* MFSpecialMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSpecialMailbox.h; sourceTree = ""; }; + 1B92853419F9A55700D540DF /* MFSpotlightManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSpotlightManager.h; sourceTree = ""; }; + 1B92853519F9A55700D540DF /* MFSpotlightResultCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSpotlightResultCollector.h; sourceTree = ""; }; + 1B92853619F9A55700D540DF /* MFSqliteHandle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSqliteHandle.h; sourceTree = ""; }; + 1B92853719F9A55700D540DF /* MFStringUniquer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFStringUniquer.h; sourceTree = ""; }; + 1B92853819F9A55700D540DF /* MFSyncedFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFSyncedFile.h; sourceTree = ""; }; + 1B92853919F9A55700D540DF /* MFTableOfContents.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFTableOfContents.h; sourceTree = ""; }; + 1B92853A19F9A55700D540DF /* MFTOCMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFTOCMessage.h; sourceTree = ""; }; + 1B92853B19F9A55700D540DF /* MFUIMailbox-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFUIMailbox-Protocol.h"; sourceTree = ""; }; + 1B92853C19F9A55700D540DF /* MFUnreadCountQueryObserver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFUnreadCountQueryObserver.h; sourceTree = ""; }; + 1B92853D19F9A55700D540DF /* MFUsageCounter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFUsageCounter.h; sourceTree = ""; }; + 1B92853E19F9A55700D540DF /* MFVIPSendersController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFVIPSendersController.h; sourceTree = ""; }; + 1B92853F19F9A55700D540DF /* MFWebMessageDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFWebMessageDocument.h; sourceTree = ""; }; + 1B92854019F9A55700D540DF /* NSAppleEventDescriptor-MessageRuleAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAppleEventDescriptor-MessageRuleAdditions.h"; sourceTree = ""; }; + 1B92854119F9A55700D540DF /* NSAppleScript-MessageRuleAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAppleScript-MessageRuleAdditions.h"; sourceTree = ""; }; + 1B92854219F9A55700D540DF /* NSArray-AppleScriptConveniences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-AppleScriptConveniences.h"; sourceTree = ""; }; + 1B92854319F9A55700D540DF /* NSCacheDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCacheDelegate-Protocol.h"; sourceTree = ""; }; + 1B92854419F9A55700D540DF /* NSCoding-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCoding-Protocol.h"; sourceTree = ""; }; + 1B92854519F9A55700D540DF /* NSCopying-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCopying-Protocol.h"; sourceTree = ""; }; + 1B92854619F9A55700D540DF /* NSDate-toc_extension.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDate-toc_extension.h"; sourceTree = ""; }; + 1B92854719F9A55700D540DF /* NSDictionary-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDictionary-MailAdditions.h"; sourceTree = ""; }; + 1B92854819F9A55700D540DF /* NSDictionary-MailFoundationAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDictionary-MailFoundationAdditions.h"; sourceTree = ""; }; + 1B92854919F9A55700D540DF /* NSFileManager-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileManager-MailAdditions.h"; sourceTree = ""; }; + 1B92854A19F9A55700D540DF /* NSFileManagerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileManagerDelegate-Protocol.h"; sourceTree = ""; }; + 1B92854B19F9A55700D540DF /* NSFilePresenter-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFilePresenter-Protocol.h"; sourceTree = ""; }; + 1B92854C19F9A55700D540DF /* NSFileWrapper-HFSExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-HFSExtensions.h"; sourceTree = ""; }; + 1B92854D19F9A55700D540DF /* NSFileWrapper-UniquePaths.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-UniquePaths.h"; sourceTree = ""; }; + 1B92854E19F9A55700D540DF /* NSKeyedUnarchiver-MailFoundationAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSKeyedUnarchiver-MailFoundationAdditions.h"; sourceTree = ""; }; + 1B92854F19F9A55700D540DF /* NSKeyedUnarchiverDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSKeyedUnarchiverDelegate-Protocol.h"; sourceTree = ""; }; + 1B92855019F9A55700D540DF /* NSLocking-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSLocking-Protocol.h"; sourceTree = ""; }; + 1B92855119F9A55700D540DF /* NSMutableDictionary-MailFoundationAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableDictionary-MailFoundationAdditions.h"; sourceTree = ""; }; + 1B92855219F9A55700D540DF /* NSNotificationCenter-MainThreadPosting.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNotificationCenter-MainThreadPosting.h"; sourceTree = ""; }; + 1B92855319F9A55700D540DF /* NSObject-_mf_LibraryMessageEquality.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-_mf_LibraryMessageEquality.h"; sourceTree = ""; }; + 1B92855419F9A55700D540DF /* NSObject-MainThreadMessaging.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-MainThreadMessaging.h"; sourceTree = ""; }; + 1B92855519F9A55700D540DF /* NSObject-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-Protocol.h"; sourceTree = ""; }; + 1B92855619F9A55700D540DF /* NSPersistentStoreCoordinator-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPersistentStoreCoordinator-MailAdditions.h"; sourceTree = ""; }; + 1B92855719F9A55700D540DF /* NSPortDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPortDelegate-Protocol.h"; sourceTree = ""; }; + 1B92855819F9A55700D540DF /* NSPortMessage-MailFoundationAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPortMessage-MailFoundationAdditions.h"; sourceTree = ""; }; + 1B92855919F9A55700D540DF /* NSSound-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSound-MailAdditions.h"; sourceTree = ""; }; + 1B92855A19F9A55700D540DF /* NSString-MailFrameworkAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MailFrameworkAdditions.h"; sourceTree = ""; }; + 1B92855B19F9A55700D540DF /* NSString-MailPathUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MailPathUtils.h"; sourceTree = ""; }; + 1B92855C19F9A55700D540DF /* NSString-MFLibraryID.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MFLibraryID.h"; sourceTree = ""; }; + 1B92855D19F9A55700D540DF /* NSURL-MailFoundationAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURL-MailFoundationAdditions.h"; sourceTree = ""; }; + 1B92855E19F9A55700D540DF /* NSUserDefaults-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserDefaults-MailAdditions.h"; sourceTree = ""; }; + 1B92855F19F9A55700D540DF /* WebArchive-Conversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebArchive-Conversion.h"; sourceTree = ""; }; + 1B92856119F9A55700D540DF /* _AccountDisplayCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AccountDisplayCell.h; sourceTree = ""; }; + 1B92856219F9A55700D540DF /* _AllSignaturesAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AllSignaturesAccount.h; sourceTree = ""; }; + 1B92856319F9A55700D540DF /* _AttachmentQueueEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AttachmentQueueEntry.h; sourceTree = ""; }; + 1B92856419F9A55700D540DF /* _AutomaticallyAdjustingScrollView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AutomaticallyAdjustingScrollView.h; sourceTree = ""; }; + 1B92856519F9A55700D540DF /* _BaselinePopupButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _BaselinePopupButton.h; sourceTree = ""; }; + 1B92856619F9A55700D540DF /* _BorderlessButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _BorderlessButton.h; sourceTree = ""; }; + 1B92856719F9A55700D540DF /* _CellFindStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _CellFindStore.h; sourceTree = ""; }; + 1B92856819F9A55700D540DF /* _ComposeAttachmentEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ComposeAttachmentEnumerator.h; sourceTree = ""; }; + 1B92856919F9A55700D540DF /* _ComposeDraftProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ComposeDraftProxy.h; sourceTree = ""; }; + 1B92856A19F9A55700D540DF /* _ConversationFindMatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ConversationFindMatch.h; sourceTree = ""; }; + 1B92856B19F9A55700D540DF /* _DeleteMailboxTransfer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _DeleteMailboxTransfer.h; sourceTree = ""; }; + 1B92856C19F9A55700D540DF /* _ExportJob.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ExportJob.h; sourceTree = ""; }; + 1B92856D19F9A55700D540DF /* _FavoriteButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _FavoriteButtonCell.h; sourceTree = ""; }; + 1B92856E19F9A55700D540DF /* _FavoriteMenuScrollHoverView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _FavoriteMenuScrollHoverView.h; sourceTree = ""; }; + 1B92856F19F9A55700D540DF /* _IMAPMailboxEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _IMAPMailboxEntry.h; sourceTree = ""; }; + 1B92857019F9A55700D540DF /* _MailboxPlaceholder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailboxPlaceholder.h; sourceTree = ""; }; + 1B92857119F9A55700D540DF /* _MailNSFontManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailNSFontManager.h; sourceTree = ""; }; + 1B92857219F9A55700D540DF /* _MailTableHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailTableHeaderView.h; sourceTree = ""; }; + 1B92857319F9A55700D540DF /* _MailToolbarSpace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailToolbarSpace.h; sourceTree = ""; }; + 1B92857419F9A55700D540DF /* _MessageViewerLazyPopUpButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MessageViewerLazyPopUpButtonCell.h; sourceTree = ""; }; + 1B92857519F9A55700D540DF /* _MouseTracker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MouseTracker.h; sourceTree = ""; }; + 1B92857619F9A55700D540DF /* _MTMAccountMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMAccountMailbox.h; sourceTree = ""; }; + 1B92857719F9A55700D540DF /* _MTMArchiveMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMArchiveMailbox.h; sourceTree = ""; }; + 1B92857819F9A55700D540DF /* _MTMBackupMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMBackupMailbox.h; sourceTree = ""; }; + 1B92857919F9A55700D540DF /* _MTMDisabledSubMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMDisabledSubMetaMailbox.h; sourceTree = ""; }; + 1B92857A19F9A55700D540DF /* _MTMDraftsMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMDraftsMailbox.h; sourceTree = ""; }; + 1B92857B19F9A55700D540DF /* _MTMHeaderCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMHeaderCell.h; sourceTree = ""; }; + 1B92857C19F9A55700D540DF /* _MTMInboxMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMInboxMailbox.h; sourceTree = ""; }; + 1B92857D19F9A55700D540DF /* _MTMJunkMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMJunkMailbox.h; sourceTree = ""; }; + 1B92857E19F9A55700D540DF /* _MTMMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMMetaMailbox.h; sourceTree = ""; }; + 1B92857F19F9A55700D540DF /* _MTMRootMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMRootMailbox.h; sourceTree = ""; }; + 1B92858019F9A55700D540DF /* _MTMSectionMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMSectionMailbox.h; sourceTree = ""; }; + 1B92858119F9A55700D540DF /* _MTMSentMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMSentMailbox.h; sourceTree = ""; }; + 1B92858219F9A55700D540DF /* _MTMSmartMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMSmartMailbox.h; sourceTree = ""; }; + 1B92858319F9A55700D540DF /* _MTMStoredMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMStoredMetaMailbox.h; sourceTree = ""; }; + 1B92858419F9A55700D540DF /* _MTMStoredSubMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMStoredSubMetaMailbox.h; sourceTree = ""; }; + 1B92858519F9A55700D540DF /* _MTMSubMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMSubMetaMailbox.h; sourceTree = ""; }; + 1B92858619F9A55700D540DF /* _MTMTrashMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMTrashMailbox.h; sourceTree = ""; }; + 1B92858719F9A55700D540DF /* _MVAlertInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MVAlertInfo.h; sourceTree = ""; }; + 1B92858819F9A55700D540DF /* _RolloverButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _RolloverButton.h; sourceTree = ""; }; + 1B92858919F9A55700D540DF /* _RolloverPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _RolloverPopUpButton.h; sourceTree = ""; }; + 1B92858A19F9A55700D540DF /* _RolloverPopUpButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _RolloverPopUpButtonCell.h; sourceTree = ""; }; + 1B92858B19F9A55700D540DF /* _RoundedCornersView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _RoundedCornersView.h; sourceTree = ""; }; + 1B92858C19F9A55700D540DF /* _SidebarButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SidebarButton.h; sourceTree = ""; }; + 1B92858D19F9A55700D540DF /* _SlidingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SlidingView.h; sourceTree = ""; }; + 1B92858E19F9A55700D540DF /* _StackContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _StackContainerView.h; sourceTree = ""; }; + 1B92858F19F9A55700D540DF /* _StationeryThumbnailCreator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _StationeryThumbnailCreator.h; sourceTree = ""; }; + 1B92859019F9A55700D540DF /* _TextButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _TextButtonCell.h; sourceTree = ""; }; + 1B92859119F9A55700D540DF /* _ThreadDisclosureTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ThreadDisclosureTextFieldCell.h; sourceTree = ""; }; + 1B92859219F9A55700D540DF /* _ToCCIndicator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ToCCIndicator.h; sourceTree = ""; }; + 1B92859319F9A55700D540DF /* _ToCCIndicatorCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ToCCIndicatorCell.h; sourceTree = ""; }; + 1B92859419F9A55700D540DF /* _TopDividerLine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _TopDividerLine.h; sourceTree = ""; }; + 1B92859519F9A55700D540DF /* _TransferOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _TransferOperation.h; sourceTree = ""; }; + 1B92859619F9A55700D540DF /* AccountCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountCell.h; sourceTree = ""; }; + 1B92859719F9A55700D540DF /* AccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountDetails.h; sourceTree = ""; }; + 1B92859819F9A55700D540DF /* AccountInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountInfo.h; sourceTree = ""; }; + 1B92859919F9A55700D540DF /* AccountInfoTabOwner-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AccountInfoTabOwner-Protocol.h"; sourceTree = ""; }; + 1B92859A19F9A55700D540DF /* AccountManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountManager.h; sourceTree = ""; }; + 1B92859B19F9A55700D540DF /* AccountPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountPreferences.h; sourceTree = ""; }; + 1B92859C19F9A55700D540DF /* AccountSetupManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountSetupManager.h; sourceTree = ""; }; + 1B92859D19F9A55700D540DF /* AccountStatusDataSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountStatusDataSource.h; sourceTree = ""; }; + 1B92859E19F9A55700D540DF /* AccountStatusDataSourceDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AccountStatusDataSourceDelegate-Protocol.h"; sourceTree = ""; }; + 1B92859F19F9A55700D540DF /* AccountSummary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountSummary.h; sourceTree = ""; }; + 1B9285A019F9A55700D540DF /* ActivityAggregateView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityAggregateView.h; sourceTree = ""; }; + 1B9285A119F9A55700D540DF /* ActivityPaneView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityPaneView.h; sourceTree = ""; }; + 1B9285A219F9A55700D540DF /* ActivityViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewController.h; sourceTree = ""; }; + 1B9285A319F9A55700D540DF /* ActivityViewEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewEntry.h; sourceTree = ""; }; + 1B9285A419F9A55700D540DF /* ActivityViewEntryView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewEntryView.h; sourceTree = ""; }; + 1B9285A519F9A55700D540DF /* ActivityViewer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewer.h; sourceTree = ""; }; + 1B9285A619F9A55700D540DF /* ActivityViewerMailSound.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewerMailSound.h; sourceTree = ""; }; + 1B9285A719F9A55700D540DF /* AddressHistoryController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddressHistoryController.h; sourceTree = ""; }; + 1B9285A819F9A55700D540DF /* AppleScriptPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppleScriptPopUpButton.h; sourceTree = ""; }; + 1B9285A919F9A55700D540DF /* Assistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Assistant.h; sourceTree = ""; }; + 1B9285AA19F9A55700D540DF /* AssistantDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AssistantDelegate-Protocol.h"; sourceTree = ""; }; + 1B9285AB19F9A55700D540DF /* AssistantManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AssistantManager.h; sourceTree = ""; }; + 1B9285AC19F9A55700D540DF /* AttachmentDragSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AttachmentDragSession.h; sourceTree = ""; }; + 1B9285AD19F9A55700D540DF /* AttachmentLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AttachmentLoader.h; sourceTree = ""; }; + 1B9285AE19F9A55700D540DF /* AttachmentManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AttachmentManager.h; sourceTree = ""; }; + 1B9285AF19F9A55700D540DF /* AuthSchemeBindingProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthSchemeBindingProxy.h; sourceTree = ""; }; + 1B9285B019F9A55700D540DF /* AuthSchemeValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthSchemeValueTransformer.h; sourceTree = ""; }; + 1B9285B119F9A55700D540DF /* BannerBackgroundView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BannerBackgroundView.h; sourceTree = ""; }; + 1B9285B219F9A55700D540DF /* BannerContainerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BannerContainerViewController.h; sourceTree = ""; }; + 1B9285B319F9A55700D540DF /* BannerImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BannerImageView.h; sourceTree = ""; }; + 1B9285B419F9A55700D540DF /* BannerTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BannerTextFieldCell.h; sourceTree = ""; }; + 1B9285B519F9A55700D540DF /* BannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BannerViewController.h; sourceTree = ""; }; + 1B9285B619F9A55700D540DF /* BindingsEnabledMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BindingsEnabledMenu.h; sourceTree = ""; }; + 1B9285B719F9A55700D540DF /* BlockedWebPluginView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BlockedWebPluginView.h; sourceTree = ""; }; + 1B9285B819F9A55700D540DF /* BorderlessToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BorderlessToolbarItem.h; sourceTree = ""; }; + 1B9285B919F9A55700D540DF /* BusyStatusErrorWindowDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BusyStatusErrorWindowDelegate.h; sourceTree = ""; }; + 1B9285BA19F9A55700D540DF /* ButtonIconTextCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ButtonIconTextCell.h; sourceTree = ""; }; + 1B9285BB19F9A55700D540DF /* CALayer-MailCALayerAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "CALayer-MailCALayerAdditions.h"; sourceTree = ""; }; + 1B9285BC19F9A55700D540DF /* CalendarBannerIconCreator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CalendarBannerIconCreator.h; sourceTree = ""; }; + 1B9285BD19F9A55700D540DF /* CalendarBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CalendarBannerViewController.h; sourceTree = ""; }; + 1B9285BE19F9A55700D540DF /* CDStructures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDStructures.h; sourceTree = ""; }; + 1B9285BF19F9A55700D540DF /* CertificateBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CertificateBannerViewController.h; sourceTree = ""; }; + 1B9285C019F9A55700D540DF /* ChildBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChildBannerViewController.h; sourceTree = ""; }; + 1B9285C119F9A55700D540DF /* ChildDateColorTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChildDateColorTransformer.h; sourceTree = ""; }; + 1B9285C219F9A55700D540DF /* ClippedItemsIndicator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ClippedItemsIndicator.h; sourceTree = ""; }; + 1B9285C319F9A55700D540DF /* ClippedItemsIndicatorDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ClippedItemsIndicatorDelegate-Protocol.h"; sourceTree = ""; }; + 1B9285C419F9A55700D540DF /* ColorBackgroundView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ColorBackgroundView.h; sourceTree = ""; }; + 1B9285C519F9A55700D540DF /* ComposeBackEnd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeBackEnd.h; sourceTree = ""; }; + 1B9285C619F9A55700D540DF /* ComposeBackEnd_Scripting.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeBackEnd_Scripting.h; sourceTree = ""; }; + 1B9285C719F9A55700D540DF /* ComposeDraft.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeDraft.h; sourceTree = ""; }; + 1B9285C819F9A55700D540DF /* ComposeDraftController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeDraftController.h; sourceTree = ""; }; + 1B9285C919F9A55700D540DF /* ComposeHeaderRowView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeHeaderRowView.h; sourceTree = ""; }; + 1B9285CA19F9A55700D540DF /* ComposePopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposePopUpButton.h; sourceTree = ""; }; + 1B9285CB19F9A55700D540DF /* ComposeSpellChecker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeSpellChecker.h; sourceTree = ""; }; + 1B9285CC19F9A55700D540DF /* ComposeStatusView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeStatusView.h; sourceTree = ""; }; + 1B9285CD19F9A55700D540DF /* ComposeViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeViewController.h; sourceTree = ""; }; + 1B9285CE19F9A55700D540DF /* ComposeWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeWindowController.h; sourceTree = ""; }; + 1B9285CF19F9A55700D540DF /* ComposingPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposingPreferences.h; sourceTree = ""; }; + 1B9285D019F9A55700D540DF /* ConnectionDoctor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConnectionDoctor.h; sourceTree = ""; }; + 1B9285D119F9A55800D540DF /* ContentSplitViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContentSplitViewController.h; sourceTree = ""; }; + 1B9285D219F9A55800D540DF /* Conversation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Conversation.h; sourceTree = ""; }; + 1B9285D319F9A55800D540DF /* ConversationMember.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationMember.h; sourceTree = ""; }; + 1B9285D419F9A55800D540DF /* ConversationMemberArrayController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationMemberArrayController.h; sourceTree = ""; }; + 1B9285D519F9A55800D540DF /* ConversationPrefetcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationPrefetcher.h; sourceTree = ""; }; + 1B9285D619F9A55800D540DF /* ConversationsObserver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationsObserver.h; sourceTree = ""; }; + 1B9285D719F9A55800D540DF /* ConversationViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationViewController.h; sourceTree = ""; }; + 1B9285D819F9A55800D540DF /* ConversationViewFindController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationViewFindController.h; sourceTree = ""; }; + 1B9285D919F9A55800D540DF /* CriteriaUIHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CriteriaUIHelper.h; sourceTree = ""; }; + 1B9285DA19F9A55800D540DF /* CriterionView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CriterionView.h; sourceTree = ""; }; + 1B9285DB19F9A55800D540DF /* DateCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DateCell.h; sourceTree = ""; }; + 1B9285DC19F9A55800D540DF /* DateColorTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DateColorTransformer.h; sourceTree = ""; }; + 1B9285DD19F9A55800D540DF /* DefaultApplicationPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DefaultApplicationPopUpButton.h; sourceTree = ""; }; + 1B9285DE19F9A55800D540DF /* DeletingTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeletingTableView.h; sourceTree = ""; }; + 1B9285DF19F9A55800D540DF /* DeliveryFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeliveryFailure.h; sourceTree = ""; }; + 1B9285E019F9A55800D540DF /* DeliveryQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeliveryQueue.h; sourceTree = ""; }; + 1B9285E119F9A55800D540DF /* DockCountController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DockCountController.h; sourceTree = ""; }; + 1B9285E219F9A55800D540DF /* DocumentEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DocumentEditor.h; sourceTree = ""; }; + 1B9285E319F9A55800D540DF /* DocumentEditor_Scripting.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DocumentEditor_Scripting.h; sourceTree = ""; }; + 1B9285E419F9A55800D540DF /* DOMCharacterData-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMCharacterData-MailExtras.h"; sourceTree = ""; }; + 1B9285E519F9A55800D540DF /* DOMCSSValue-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMCSSValue-MailExtras.h"; sourceTree = ""; }; + 1B9285E619F9A55800D540DF /* DOMDocument-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMDocument-MailExtras.h"; sourceTree = ""; }; + 1B9285E719F9A55800D540DF /* DOMDocumentFragment-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMDocumentFragment-MailExtras.h"; sourceTree = ""; }; + 1B9285E819F9A55800D540DF /* DOMElement-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMElement-MailExtras.h"; sourceTree = ""; }; + 1B9285E919F9A55800D540DF /* DOMElement-MailHTMLAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMElement-MailHTMLAttachments.h"; sourceTree = ""; }; + 1B9285EA19F9A55800D540DF /* DOMEventListener-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMEventListener-Protocol.h"; sourceTree = ""; }; + 1B9285EB19F9A55800D540DF /* DOMHTMLDocument-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLDocument-MailExtras.h"; sourceTree = ""; }; + 1B9285EC19F9A55800D540DF /* DOMHTMLElement-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLElement-MailExtras.h"; sourceTree = ""; }; + 1B9285ED19F9A55800D540DF /* DOMHTMLElement-MailQuoteLevel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLElement-MailQuoteLevel.h"; sourceTree = ""; }; + 1B9285EE19F9A55800D540DF /* DOMHTMLImageElement-MailHTMLAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLImageElement-MailHTMLAttachments.h"; sourceTree = ""; }; + 1B9285EF19F9A55800D540DF /* DOMHTMLObjectElement-AttachmentLocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLObjectElement-AttachmentLocator.h"; sourceTree = ""; }; + 1B9285F019F9A55800D540DF /* DOMNode-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMNode-MailExtras.h"; sourceTree = ""; }; + 1B9285F119F9A55800D540DF /* DOMNode-MailHTMLAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMNode-MailHTMLAttachments.h"; sourceTree = ""; }; + 1B9285F219F9A55800D540DF /* DOMRange-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMRange-MailExtras.h"; sourceTree = ""; }; + 1B9285F319F9A55800D540DF /* DynamicErrorWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DynamicErrorWindowController.h; sourceTree = ""; }; + 1B9285F419F9A55800D540DF /* DynamicErrorWindowDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DynamicErrorWindowDelegate-Protocol.h"; sourceTree = ""; }; + 1B9285F519F9A55800D540DF /* EditableWebMessageDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditableWebMessageDocument.h; sourceTree = ""; }; + 1B9285F619F9A55800D540DF /* EditingMessageWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditingMessageWebView.h; sourceTree = ""; }; + 1B9285F719F9A55800D540DF /* EditingMessageWebViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "EditingMessageWebViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B9285F819F9A55800D540DF /* EditingWebMessageController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditingWebMessageController.h; sourceTree = ""; }; + 1B9285F919F9A55800D540DF /* EmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EmailImporter.h; sourceTree = ""; }; + 1B9285FA19F9A55800D540DF /* EncryptImageValueTransormer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EncryptImageValueTransormer.h; sourceTree = ""; }; + 1B9285FB19F9A55800D540DF /* EncryptToolTipValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EncryptToolTipValueTransformer.h; sourceTree = ""; }; + 1B9285FC19F9A55800D540DF /* EudoraEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EudoraEmailImporter.h; sourceTree = ""; }; + 1B9285FD19F9A55800D540DF /* EWSAccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSAccountDetails.h; sourceTree = ""; }; + 1B9285FE19F9A55800D540DF /* EWSAccountSpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSAccountSpecialMailboxes.h; sourceTree = ""; }; + 1B9285FF19F9A55800D540DF /* EWSQuota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSQuota.h; sourceTree = ""; }; + 1B92860019F9A55800D540DF /* ExtractAddressCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExtractAddressCommand.h; sourceTree = ""; }; + 1B92860119F9A55800D540DF /* ExtractNameCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExtractNameCommand.h; sourceTree = ""; }; + 1B92860219F9A55800D540DF /* FavoriteButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoriteButton.h; sourceTree = ""; }; + 1B92860319F9A55800D540DF /* FavoriteButtonMailboxProperties.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoriteButtonMailboxProperties.h; sourceTree = ""; }; + 1B92860419F9A55800D540DF /* FavoriteHoverViewDirectionProtocol-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "FavoriteHoverViewDirectionProtocol-Protocol.h"; sourceTree = ""; }; + 1B92860519F9A55800D540DF /* FavoritesBarView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesBarView.h; sourceTree = ""; }; + 1B92860619F9A55800D540DF /* FavoritesBarViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesBarViewController.h; sourceTree = ""; }; + 1B92860719F9A55800D540DF /* FavoritesMenuController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesMenuController.h; sourceTree = ""; }; + 1B92860819F9A55800D540DF /* FavoritesMenuDelegateProtocol-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "FavoritesMenuDelegateProtocol-Protocol.h"; sourceTree = ""; }; + 1B92860919F9A55800D540DF /* FavoritesMenuItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesMenuItem.h; sourceTree = ""; }; + 1B92860A19F9A55800D540DF /* FavoritesMenuItemImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesMenuItemImageView.h; sourceTree = ""; }; + 1B92860B19F9A55800D540DF /* FavoritesMenuOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesMenuOutlineView.h; sourceTree = ""; }; + 1B92860C19F9A55800D540DF /* FilesystemEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FilesystemEmailImporter.h; sourceTree = ""; }; + 1B92860D19F9A55800D540DF /* FindBarContainer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FindBarContainer.h; sourceTree = ""; }; + 1B92860E19F9A55800D540DF /* FlagButtonImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlagButtonImageView.h; sourceTree = ""; }; + 1B92860F19F9A55800D540DF /* FlaggedStatusToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlaggedStatusToolbarItem.h; sourceTree = ""; }; + 1B92861019F9A55800D540DF /* FlaggedStatusToolbarItemDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "FlaggedStatusToolbarItemDelegate-Protocol.h"; sourceTree = ""; }; + 1B92861119F9A55800D540DF /* FlaggedStatusView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlaggedStatusView.h; sourceTree = ""; }; + 1B92861219F9A55800D540DF /* FlagIconFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlagIconFactory.h; sourceTree = ""; }; + 1B92861319F9A55800D540DF /* FlagsMenuItemView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlagsMenuItemView.h; sourceTree = ""; }; + 1B92861419F9A55800D540DF /* FlatTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlatTableView.h; sourceTree = ""; }; + 1B92861519F9A55800D540DF /* FlatTableViewDataCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlatTableViewDataCell.h; sourceTree = ""; }; + 1B92861619F9A55800D540DF /* FontPreferenceContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FontPreferenceContainerView.h; sourceTree = ""; }; + 1B92861719F9A55800D540DF /* FontsAndColorsPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FontsAndColorsPreferences.h; sourceTree = ""; }; + 1B92861819F9A55800D540DF /* FullScreenModalCapableWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FullScreenModalCapableWindow.h; sourceTree = ""; }; + 1B92861919F9A55800D540DF /* FullScreenWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FullScreenWindowController.h; sourceTree = ""; }; + 1B92861A19F9A55800D540DF /* GeneralPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GeneralPreferences.h; sourceTree = ""; }; + 1B92861B19F9A55800D540DF /* GenericAttachmentFetcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GenericAttachmentFetcher.h; sourceTree = ""; }; + 1B92861C19F9A55800D540DF /* HeaderDividerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderDividerView.h; sourceTree = ""; }; + 1B92861D19F9A55800D540DF /* HeaderLayoutManagerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "HeaderLayoutManagerDelegate-Protocol.h"; sourceTree = ""; }; + 1B92861E19F9A55800D540DF /* HeadersEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeadersEditor.h; sourceTree = ""; }; + 1B92861F19F9A55800D540DF /* HeaderTextContainer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderTextContainer.h; sourceTree = ""; }; + 1B92862019F9A55800D540DF /* HeaderTextView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderTextView.h; sourceTree = ""; }; + 1B92862119F9A55800D540DF /* HeaderTruncationAttachmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderTruncationAttachmentCell.h; sourceTree = ""; }; + 1B92862219F9A55800D540DF /* HeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderView.h; sourceTree = ""; }; + 1B92862319F9A55800D540DF /* HeaderViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderViewController.h; sourceTree = ""; }; + 1B92862419F9A55800D540DF /* HyperlinkButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HyperlinkButton.h; sourceTree = ""; }; + 1B92862519F9A55800D540DF /* HyperlinkEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HyperlinkEditor.h; sourceTree = ""; }; + 1B92862619F9A55800D540DF /* ImageResizer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImageResizer.h; sourceTree = ""; }; + 1B92862719F9A55800D540DF /* ImageResizerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ImageResizerDelegate-Protocol.h"; sourceTree = ""; }; + 1B92862819F9A55800D540DF /* IMAPAccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPAccountDetails.h; sourceTree = ""; }; + 1B92862919F9A55800D540DF /* IMAPAccountSpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPAccountSpecialMailboxes.h; sourceTree = ""; }; + 1B92862A19F9A55800D540DF /* IMAPMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPMailboxes.h; sourceTree = ""; }; + 1B92862B19F9A55800D540DF /* IMAPQuota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPQuota.h; sourceTree = ""; }; + 1B92862C19F9A55800D540DF /* IMAPUserAgent-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IMAPUserAgent-Protocol.h"; sourceTree = ""; }; + 1B92862D19F9A55800D540DF /* ImportAssistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImportAssistant.h; sourceTree = ""; }; + 1B92862E19F9A55800D540DF /* Importer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Importer.h; sourceTree = ""; }; + 1B92862F19F9A55800D540DF /* ImportItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImportItem.h; sourceTree = ""; }; + 1B92863019F9A55800D540DF /* InvitationAttachmentOpener.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InvitationAttachmentOpener.h; sourceTree = ""; }; + 1B92863119F9A55800D540DF /* IOErrorWindowDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IOErrorWindowDelegate.h; sourceTree = ""; }; + 1B92863219F9A55800D540DF /* JunkMailBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JunkMailBannerViewController.h; sourceTree = ""; }; + 1B92863319F9A55800D540DF /* JunkPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JunkPreferences.h; sourceTree = ""; }; + 1B92863419F9A55800D540DF /* LazyMenuSegmentedCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LazyMenuSegmentedCell.h; sourceTree = ""; }; + 1B92863519F9A55800D540DF /* LazySubmenuMenuItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LazySubmenuMenuItem.h; sourceTree = ""; }; + 1B92863619F9A55800D540DF /* LDAPServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDAPServer.h; sourceTree = ""; }; + 1B92863719F9A55800D540DF /* LibraryImportAssistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryImportAssistant.h; sourceTree = ""; }; + 1B92863819F9A55800D540DF /* LibraryUpgradeAssistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryUpgradeAssistant.h; sourceTree = ""; }; + 1B92863919F9A55800D540DF /* LoadingOverlay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LoadingOverlay.h; sourceTree = ""; }; + 1B92863A19F9A55800D540DF /* LoadRemoteContentBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LoadRemoteContentBannerViewController.h; sourceTree = ""; }; + 1B92863B19F9A55800D540DF /* LoweredTextAttachmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LoweredTextAttachmentCell.h; sourceTree = ""; }; + 1B92863C19F9A55800D540DF /* MailAddressDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailAddressDelegate.h; sourceTree = ""; }; + 1B92863D19F9A55800D540DF /* MailAnimatingButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailAnimatingButton.h; sourceTree = ""; }; + 1B92863E19F9A55800D540DF /* MailApp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailApp.h; sourceTree = ""; }; + 1B92863F19F9A55800D540DF /* MailBarContainerButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailBarContainerButton.h; sourceTree = ""; }; + 1B92864019F9A55800D540DF /* MailBarContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailBarContainerView.h; sourceTree = ""; }; + 1B92864119F9A55800D540DF /* MailboxBadgeCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxBadgeCell.h; sourceTree = ""; }; + 1B92864219F9A55800D540DF /* MailboxBadgeView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxBadgeView.h; sourceTree = ""; }; + 1B92864319F9A55800D540DF /* MailboxesChooser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesChooser.h; sourceTree = ""; }; + 1B92864419F9A55800D540DF /* MailboxesController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesController.h; sourceTree = ""; }; + 1B92864519F9A55800D540DF /* MailboxesOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesOutlineView.h; sourceTree = ""; }; + 1B92864619F9A55800D540DF /* MailboxesOutlineViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesOutlineViewController.h; sourceTree = ""; }; + 1B92864719F9A55800D540DF /* MailboxesOutlineViewControllerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxesOutlineViewControllerDelegate-Protocol.h"; sourceTree = ""; }; + 1B92864819F9A55800D540DF /* MailboxesOutlineViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxesOutlineViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B92864919F9A55800D540DF /* MailboxesOutlineViewStateStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesOutlineViewStateStorage.h; sourceTree = ""; }; + 1B92864A19F9A55800D540DF /* MailboxesSplitViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesSplitViewController.h; sourceTree = ""; }; + 1B92864B19F9A55800D540DF /* MailboxOutlineItemController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxOutlineItemController.h; sourceTree = ""; }; + 1B92864C19F9A55800D540DF /* MailboxOutlineItemControllerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxOutlineItemControllerDelegate-Protocol.h"; sourceTree = ""; }; + 1B92864D19F9A55800D540DF /* MailboxOutlineItemView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxOutlineItemView.h; sourceTree = ""; }; + 1B92864E19F9A55800D540DF /* MailboxOutlineItemViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxOutlineItemViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B92864F19F9A55800D540DF /* MailboxOutlineRowView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxOutlineRowView.h; sourceTree = ""; }; + 1B92865019F9A55800D540DF /* MailboxTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxTextField.h; sourceTree = ""; }; + 1B92865119F9A55800D540DF /* MailboxTextFieldDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxTextFieldDelegate-Protocol.h"; sourceTree = ""; }; + 1B92865219F9A55800D540DF /* MailCopyCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailCopyCommand.h; sourceTree = ""; }; + 1B92865319F9A55800D540DF /* MailDeleteCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailDeleteCommand.h; sourceTree = ""; }; + 1B92865419F9A55800D540DF /* MailEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailEmailImporter.h; sourceTree = ""; }; + 1B92865519F9A55800D540DF /* MailFullScreenWindowDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailFullScreenWindowDelegate-Protocol.h"; sourceTree = ""; }; + 1B92865619F9A55800D540DF /* MailInspectorBar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailInspectorBar.h; sourceTree = ""; }; + 1B92865719F9A55800D540DF /* MailInspectorBarItemController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailInspectorBarItemController.h; sourceTree = ""; }; + 1B92865819F9A55800D540DF /* MailMoveCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailMoveCommand.h; sourceTree = ""; }; + 1B92865919F9A55800D540DF /* MailPopoverWell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailPopoverWell.h; sourceTree = ""; }; + 1B92865A19F9A55800D540DF /* MailPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailPreferences.h; sourceTree = ""; }; + 1B92865B19F9A55800D540DF /* MailSearchCriteriaHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailSearchCriteriaHelper.h; sourceTree = ""; }; + 1B92865C19F9A55800D540DF /* MailSplitView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailSplitView.h; sourceTree = ""; }; + 1B92865D19F9A55800D540DF /* MailStackViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailStackViewController.h; sourceTree = ""; }; + 1B92865E19F9A55800D540DF /* MailTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailTableView.h; sourceTree = ""; }; + 1B92865F19F9A55800D540DF /* MailTableViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailTableViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B92866019F9A55800D540DF /* MailTableViewDelegateDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailTableViewDelegateDelegate-Protocol.h"; sourceTree = ""; }; + 1B92866119F9A55800D540DF /* MailTimeMachineController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailTimeMachineController.h; sourceTree = ""; }; + 1B92866219F9A55800D540DF /* MailToCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailToCommand.h; sourceTree = ""; }; + 1B92866319F9A55800D540DF /* MailToolbar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailToolbar.h; sourceTree = ""; }; + 1B92866419F9A55800D540DF /* MailToolbarBaselineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailToolbarBaselineView.h; sourceTree = ""; }; + 1B92866519F9A55800D540DF /* MailToolbarSpaceItemWithPin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailToolbarSpaceItemWithPin.h; sourceTree = ""; }; + 1B92866619F9A55800D540DF /* MailUsageStatistics.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailUsageStatistics.h; sourceTree = ""; }; + 1B92866719F9A55800D540DF /* MailWebAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailWebAttachment.h; sourceTree = ""; }; + 1B92866819F9A55800D540DF /* MailWebViewEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailWebViewEditor.h; sourceTree = ""; }; + 1B92866919F9A55800D540DF /* MailWindowShadowLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailWindowShadowLayer.h; sourceTree = ""; }; + 1B92866A19F9A55800D540DF /* MboxEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MboxEmailImporter.h; sourceTree = ""; }; + 1B92866B19F9A55800D540DF /* MCActivityTarget-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCActivityTarget-Protocol.h"; sourceTree = ""; }; + 1B92866C19F9A55800D540DF /* MCConnectionLogging-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCConnectionLogging-Protocol.h"; sourceTree = ""; }; + 1B92866D19F9A55800D540DF /* MCMessage-MailViewerAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessage-MailViewerAdditions.h"; sourceTree = ""; }; + 1B92866E19F9A55800D540DF /* MCMessageDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessageDataSource-Protocol.h"; sourceTree = ""; }; + 1B92866F19F9A55800D540DF /* MCUserAgent-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCUserAgent-Protocol.h"; sourceTree = ""; }; + 1B92867019F9A55800D540DF /* MessageBodyScrollView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageBodyScrollView.h; sourceTree = ""; }; + 1B92867119F9A55800D540DF /* MessageDeletionTransfer-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageDeletionTransfer-Protocol.h"; sourceTree = ""; }; + 1B92867219F9A55800D540DF /* MessageDragHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageDragHelper.h; sourceTree = ""; }; + 1B92867319F9A55800D540DF /* MessageEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageEditor.h; sourceTree = ""; }; + 1B92867419F9A55800D540DF /* MessageFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageFilter.h; sourceTree = ""; }; + 1B92867519F9A55800D540DF /* MessageFilterDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageFilterDelegate-Protocol.h"; sourceTree = ""; }; + 1B92867619F9A55800D540DF /* MessageListCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListCell.h; sourceTree = ""; }; + 1B92867719F9A55800D540DF /* MessageListColumnManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListColumnManager.h; sourceTree = ""; }; + 1B92867819F9A55800D540DF /* MessageListContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListContainerView.h; sourceTree = ""; }; + 1B92867919F9A55800D540DF /* MessageListHeaderCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListHeaderCell.h; sourceTree = ""; }; + 1B92867A19F9A55800D540DF /* MessageListObjectProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListObjectProxy.h; sourceTree = ""; }; + 1B92867B19F9A55800D540DF /* MessageMall.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageMall.h; sourceTree = ""; }; + 1B92867C19F9A55800D540DF /* MessageMallShared.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageMallShared.h; sourceTree = ""; }; + 1B92867D19F9A55800D540DF /* MessageSaver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageSaver.h; sourceTree = ""; }; + 1B92867E19F9A55800D540DF /* MessageSelection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageSelection.h; sourceTree = ""; }; + 1B92867F19F9A55800D540DF /* MessageTextView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageTextView.h; sourceTree = ""; }; + 1B92868019F9A55800D540DF /* MessageTransfer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageTransfer.h; sourceTree = ""; }; + 1B92868119F9A55800D540DF /* MessageTransferDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageTransferDelegate-Protocol.h"; sourceTree = ""; }; + 1B92868219F9A55800D540DF /* MessageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageView.h; sourceTree = ""; }; + 1B92868319F9A55800D540DF /* MessageViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewController.h; sourceTree = ""; }; + 1B92868419F9A55800D540DF /* MessageViewer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewer.h; sourceTree = ""; }; + 1B92868519F9A55800D540DF /* MessageViewerLazyPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewerLazyPopUpButton.h; sourceTree = ""; }; + 1B92868619F9A55800D540DF /* MessageViewerSearchField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewerSearchField.h; sourceTree = ""; }; + 1B92868719F9A55800D540DF /* MessageViewerSearchFieldFocusDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageViewerSearchFieldFocusDelegate-Protocol.h"; sourceTree = ""; }; + 1B92868819F9A55800D540DF /* MessageWebDocumentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageWebDocumentView.h; sourceTree = ""; }; + 1B92868919F9A55800D540DF /* MessageWebDocumentViewGroupManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageWebDocumentViewGroupManager.h; sourceTree = ""; }; + 1B92868A19F9A55800D540DF /* MessageWebHTMLView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageWebHTMLView.h; sourceTree = ""; }; + 1B92868B19F9A55800D540DF /* MessageWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageWebView.h; sourceTree = ""; }; + 1B92868C19F9A55800D540DF /* MFAccount-MailUIExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFAccount-MailUIExtras.h"; sourceTree = ""; }; + 1B92868D19F9A55800D540DF /* MFAddProgressMonitor-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFAddProgressMonitor-Protocol.h"; sourceTree = ""; }; + 1B92868E19F9A55800D540DF /* MFDeliveryAccount-MailUIExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFDeliveryAccount-MailUIExtras.h"; sourceTree = ""; }; + 1B92868F19F9A55800D540DF /* MFEWSAccount-MailUIExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFEWSAccount-MailUIExtras.h"; sourceTree = ""; }; + 1B92869019F9A55800D540DF /* MFLibraryUpgraderDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFLibraryUpgraderDelegate-Protocol.h"; sourceTree = ""; }; + 1B92869119F9A55800D540DF /* MFMailbox-MessageListAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFMailbox-MessageListAdditions.h"; sourceTree = ""; }; + 1B92869219F9A55800D540DF /* MFMessageSortContext-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFMessageSortContext-Protocol.h"; sourceTree = ""; }; + 1B92869319F9A55800D540DF /* MFMessageSortingValueDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFMessageSortingValueDelegate-Protocol.h"; sourceTree = ""; }; + 1B92869419F9A55800D540DF /* MFUIMailbox-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFUIMailbox-Protocol.h"; sourceTree = ""; }; + 1B92869519F9A55800D540DF /* MFUserAgent-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFUserAgent-Protocol.h"; sourceTree = ""; }; + 1B92869619F9A55800D540DF /* MFWebMessageDocument-Attachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFWebMessageDocument-Attachments.h"; sourceTree = ""; }; + 1B92869719F9A55800D540DF /* ModalDimmingWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ModalDimmingWindow.h; sourceTree = ""; }; + 1B92869819F9A55800D540DF /* MouseTrackingWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MouseTrackingWindow.h; sourceTree = ""; }; + 1B92869919F9A55800D540DF /* MTMBufferedController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMBufferedController.h; sourceTree = ""; }; + 1B92869A19F9A55800D540DF /* MTMBytesFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMBytesFormatter.h; sourceTree = ""; }; + 1B92869B19F9A55800D540DF /* MTMDiskMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMDiskMessage.h; sourceTree = ""; }; + 1B92869C19F9A55800D540DF /* MTMFakeMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMFakeMailbox.h; sourceTree = ""; }; + 1B92869D19F9A55800D540DF /* MTMFakeMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMFakeMessage.h; sourceTree = ""; }; + 1B92869E19F9A55800D540DF /* MTMFlagsCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMFlagsCell.h; sourceTree = ""; }; + 1B92869F19F9A55800D540DF /* MTMFullWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMFullWindowController.h; sourceTree = ""; }; + 1B9286A019F9A55800D540DF /* MTMIndexedMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMIndexedMessage.h; sourceTree = ""; }; + 1B9286A119F9A55800D540DF /* MTMLoadingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMLoadingView.h; sourceTree = ""; }; + 1B9286A219F9A55800D540DF /* MTMMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMailbox.h; sourceTree = ""; }; + 1B9286A319F9A55800D540DF /* MTMMailboxChangedPredicate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMailboxChangedPredicate.h; sourceTree = ""; }; + 1B9286A419F9A55800D540DF /* MTMMailboxControllerProtocol-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MTMMailboxControllerProtocol-Protocol.h"; sourceTree = ""; }; + 1B9286A519F9A55800D540DF /* MTMMailboxFetcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMailboxFetcher.h; sourceTree = ""; }; + 1B9286A619F9A55800D540DF /* MTMMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMessage.h; sourceTree = ""; }; + 1B9286A719F9A55800D540DF /* MTMMessageChangedPredicate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMessageChangedPredicate.h; sourceTree = ""; }; + 1B9286A819F9A55800D540DF /* MTMMessageColumnController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMessageColumnController.h; sourceTree = ""; }; + 1B9286A919F9A55800D540DF /* MTMNumberCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMNumberCell.h; sourceTree = ""; }; + 1B9286AA19F9A55800D540DF /* MTMOutlineCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMOutlineCell.h; sourceTree = ""; }; + 1B9286AB19F9A55800D540DF /* MTMOutlineTopLevelCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMOutlineTopLevelCell.h; sourceTree = ""; }; + 1B9286AC19F9A55800D540DF /* MTMOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMOutlineView.h; sourceTree = ""; }; + 1B9286AD19F9A55800D540DF /* MTMReadCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMReadCell.h; sourceTree = ""; }; + 1B9286AE19F9A55800D540DF /* MTMScroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMScroller.h; sourceTree = ""; }; + 1B9286AF19F9A55800D540DF /* MTMSpecialMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMSpecialMailbox.h; sourceTree = ""; }; + 1B9286B019F9A55800D540DF /* MTMTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMTableView.h; sourceTree = ""; }; + 1B9286B119F9A55800D540DF /* MTMWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMWindow.h; sourceTree = ""; }; + 1B9286B219F9A55800D540DF /* MTMWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMWindowController.h; sourceTree = ""; }; + 1B9286B319F9A55800D540DF /* MUICollectionViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MUICollectionViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286B419F9A55800D540DF /* MUITokenAddressDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MUITokenAddressDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286B519F9A55800D540DF /* MUIWebDocumentViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MUIWebDocumentViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286B619F9A55800D540DF /* MultiImageCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MultiImageCell.h; sourceTree = ""; }; + 1B9286B719F9A55800D540DF /* MVComposeAccessoryViewOwner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MVComposeAccessoryViewOwner.h; sourceTree = ""; }; + 1B9286B819F9A55800D540DF /* MVLinkButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MVLinkButton.h; sourceTree = ""; }; + 1B9286B919F9A55800D540DF /* MVMailboxSelectionOwner-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MVMailboxSelectionOwner-Protocol.h"; sourceTree = ""; }; + 1B9286BA19F9A55800D540DF /* MVMailBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MVMailBundle.h; sourceTree = ""; }; + 1B9286BB19F9A55800D540DF /* MVSelectionOwner-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MVSelectionOwner-Protocol.h"; sourceTree = ""; }; + 1B9286BC19F9A55800D540DF /* MVTerminationHandler-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MVTerminationHandler-Protocol.h"; sourceTree = ""; }; + 1B9286BD19F9A55800D540DF /* NetscapeEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NetscapeEmailImporter.h; sourceTree = ""; }; + 1B9286BE19F9A55800D540DF /* NoSelectionPlaceholderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoSelectionPlaceholderView.h; sourceTree = ""; }; + 1B9286BF19F9A55800D540DF /* NSAccessibilityElement-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAccessibilityElement-Protocol.h"; sourceTree = ""; }; + 1B9286C019F9A55800D540DF /* NSAccessibilityGroup-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAccessibilityGroup-Protocol.h"; sourceTree = ""; }; + 1B9286C119F9A55800D540DF /* NSAlert-MFErrorSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAlert-MFErrorSupport.h"; sourceTree = ""; }; + 1B9286C219F9A55800D540DF /* NSAnimationDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAnimationDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286C319F9A55800D540DF /* NSApplicationDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSApplicationDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286C419F9A55800D540DF /* NSAttributedString-MailAttributedStringToHTML.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MailAttributedStringToHTML.h"; sourceTree = ""; }; + 1B9286C519F9A55800D540DF /* NSCacheDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCacheDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286C619F9A55800D540DF /* NSCoding-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCoding-Protocol.h"; sourceTree = ""; }; + 1B9286C719F9A55800D540DF /* NSControl-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSControl-MailAdditions.h"; sourceTree = ""; }; + 1B9286C819F9A55800D540DF /* NSControlTextEditingDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSControlTextEditingDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286C919F9A55800D540DF /* NSCopying-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCopying-Protocol.h"; sourceTree = ""; }; + 1B9286CA19F9A55800D540DF /* NSDatePickerCellDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDatePickerCellDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286CB19F9A55800D540DF /* NSDraggingSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDraggingSource-Protocol.h"; sourceTree = ""; }; + 1B9286CC19F9A55800D540DF /* NSEvent-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSEvent-MailAdditions.h"; sourceTree = ""; }; + 1B9286CD19F9A55800D540DF /* NSEvent-MailViewerEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSEvent-MailViewerEvent.h"; sourceTree = ""; }; + 1B9286CE19F9A55800D540DF /* NSFileManagerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileManagerDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286CF19F9A55800D540DF /* NSFont-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFont-MailAdditions.h"; sourceTree = ""; }; + 1B9286D019F9A55800D540DF /* NSFontManager-ToReplaceWithOurOwn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFontManager-ToReplaceWithOurOwn.h"; sourceTree = ""; }; + 1B9286D119F9A55800D540DF /* NSInspectorBarClient-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInspectorBarClient-Protocol.h"; sourceTree = ""; }; + 1B9286D219F9A55800D540DF /* NSInspectorBarDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInspectorBarDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286D319F9A55800D540DF /* NSInspectorBarItemController-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInspectorBarItemController-Protocol.h"; sourceTree = ""; }; + 1B9286D419F9A55800D540DF /* NSLayoutManagerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSLayoutManagerDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286D519F9A55800D540DF /* NSMediaLibraryBrowserController-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMediaLibraryBrowserController-MailAdditions.h"; sourceTree = ""; }; + 1B9286D619F9A55800D540DF /* NSMenuDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMenuDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286D719F9A55800D540DF /* NSObject-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-Protocol.h"; sourceTree = ""; }; + 1B9286D819F9A55800D540DF /* NSOpenSavePanelDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOpenSavePanelDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286D919F9A55800D540DF /* NSOutlineView-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOutlineView-MailAdditions.h"; sourceTree = ""; }; + 1B9286DA19F9A55800D540DF /* NSOutlineViewDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOutlineViewDataSource-Protocol.h"; sourceTree = ""; }; + 1B9286DB19F9A55800D540DF /* NSOutlineViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOutlineViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286DC19F9A55800D540DF /* NSPasteboardItemDataProvider-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPasteboardItemDataProvider-Protocol.h"; sourceTree = ""; }; + 1B9286DD19F9A55800D540DF /* NSPopUpButton-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPopUpButton-MailAdditions.h"; sourceTree = ""; }; + 1B9286DE19F9A55800D540DF /* NSPreferences-ActiveModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPreferences-ActiveModule.h"; sourceTree = ""; }; + 1B9286DF19F9A55900D540DF /* NSPreferencesModule-ActiveModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPreferencesModule-ActiveModule.h"; sourceTree = ""; }; + 1B9286E019F9A55900D540DF /* NSScrollViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSScrollViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286E119F9A55900D540DF /* NSSharingServiceDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSharingServiceDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286E219F9A55900D540DF /* NSSharingServicePickerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSharingServicePickerDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286E319F9A55900D540DF /* NSSpeechSynthesizerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSpeechSynthesizerDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286E419F9A55900D540DF /* NSSpellChecker-AllocationOverride.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSpellChecker-AllocationOverride.h"; sourceTree = ""; }; + 1B9286E519F9A55900D540DF /* NSSplitViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSplitViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286E619F9A55900D540DF /* NSStackViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSStackViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286E719F9A55900D540DF /* NSStreamDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSStreamDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286E819F9A55900D540DF /* NSString-HTMLConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-HTMLConversion.h"; sourceTree = ""; }; + 1B9286E919F9A55900D540DF /* NSString-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MailAdditions.h"; sourceTree = ""; }; + 1B9286EA19F9A55900D540DF /* NSTableViewDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTableViewDataSource-Protocol.h"; sourceTree = ""; }; + 1B9286EB19F9A55900D540DF /* NSTableViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTableViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286EC19F9A55900D540DF /* NSTabViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTabViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286ED19F9A55900D540DF /* NSTextDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286EE19F9A55900D540DF /* NSTextFieldDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFieldDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286EF19F9A55900D540DF /* NSTextFinderAsynchronousDocumentFindMatch-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFinderAsynchronousDocumentFindMatch-Protocol.h"; sourceTree = ""; }; + 1B9286F019F9A55900D540DF /* NSTextFinderBarContainer-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFinderBarContainer-Protocol.h"; sourceTree = ""; }; + 1B9286F119F9A55900D540DF /* NSTextFinderClient-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFinderClient-Protocol.h"; sourceTree = ""; }; + 1B9286F219F9A55900D540DF /* NSTextInput-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextInput-Protocol.h"; sourceTree = ""; }; + 1B9286F319F9A55900D540DF /* NSTextInputClient-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextInputClient-Protocol.h"; sourceTree = ""; }; + 1B9286F419F9A55900D540DF /* NSTextViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286F519F9A55900D540DF /* NSTokenAttachmentDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTokenAttachmentDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286F619F9A55900D540DF /* NSToolbar-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSToolbar-MailAdditions.h"; sourceTree = ""; }; + 1B9286F719F9A55900D540DF /* NSToolbarDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSToolbarDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286F819F9A55900D540DF /* NSUserActivityDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserActivityDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286F919F9A55900D540DF /* NSUserDefaults-FontAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserDefaults-FontAdditions.h"; sourceTree = ""; }; + 1B9286FA19F9A55900D540DF /* NSUserInterfaceValidations-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserInterfaceValidations-Protocol.h"; sourceTree = ""; }; + 1B9286FB19F9A55900D540DF /* NSUserNotificationCenterDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserNotificationCenterDelegate-Protocol.h"; sourceTree = ""; }; + 1B9286FC19F9A55900D540DF /* NSView-AttachmentDragSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-AttachmentDragSession.h"; sourceTree = ""; }; + 1B9286FD19F9A55900D540DF /* NSView-FavoriteButtonAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-FavoriteButtonAnimation.h"; sourceTree = ""; }; + 1B9286FE19F9A55900D540DF /* NSView-LocatingFrameViews.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-LocatingFrameViews.h"; sourceTree = ""; }; + 1B9286FF19F9A55900D540DF /* NSView-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MailAdditions.h"; sourceTree = ""; }; + 1B92870019F9A55900D540DF /* NSView-MailQuickLookAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MailQuickLookAdditions.h"; sourceTree = ""; }; + 1B92870119F9A55900D540DF /* NSView-MailToolbarBaselineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MailToolbarBaselineView.h"; sourceTree = ""; }; + 1B92870219F9A55900D540DF /* NSView-ResizingAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-ResizingAnimation.h"; sourceTree = ""; }; + 1B92870319F9A55900D540DF /* NSView-SlidingExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-SlidingExtras.h"; sourceTree = ""; }; + 1B92870419F9A55900D540DF /* NSWindow-BetterDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSWindow-BetterDescription.h"; sourceTree = ""; }; + 1B92870519F9A55900D540DF /* NSWindow-MailWindowAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSWindow-MailWindowAdditions.h"; sourceTree = ""; }; + 1B92870619F9A55900D540DF /* NSWindowDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSWindowDelegate-Protocol.h"; sourceTree = ""; }; + 1B92870719F9A55900D540DF /* OofPanelController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OofPanelController.h; sourceTree = ""; }; + 1B92870819F9A55900D540DF /* OutlineViewProgressIndicatorsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OutlineViewProgressIndicatorsController.h; sourceTree = ""; }; + 1B92870919F9A55900D540DF /* ParentBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParentBannerViewController.h; sourceTree = ""; }; + 1B92870A19F9A55900D540DF /* PassbookBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PassbookBannerViewController.h; sourceTree = ""; }; + 1B92870B19F9A55900D540DF /* PasswordManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PasswordManager.h; sourceTree = ""; }; + 1B92870C19F9A55900D540DF /* PhotoExporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PhotoExporter.h; sourceTree = ""; }; + 1B92870D19F9A55900D540DF /* POPAccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POPAccountDetails.h; sourceTree = ""; }; + 1B92870E19F9A55900D540DF /* POPAccountSpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POPAccountSpecialMailboxes.h; sourceTree = ""; }; + 1B92870F19F9A55900D540DF /* POPQuota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POPQuota.h; sourceTree = ""; }; + 1B92871019F9A55900D540DF /* PowerManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PowerManager.h; sourceTree = ""; }; + 1B92871119F9A55900D540DF /* PrintingHTMLGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingHTMLGenerator.h; sourceTree = ""; }; + 1B92871219F9A55900D540DF /* PrintingHTMLPrinter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingHTMLPrinter.h; sourceTree = ""; }; + 1B92871319F9A55900D540DF /* PrintingManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingManager.h; sourceTree = ""; }; + 1B92871419F9A55900D540DF /* PrintingManagerForExportAsPDF.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingManagerForExportAsPDF.h; sourceTree = ""; }; + 1B92871519F9A55900D540DF /* PrintingManagerForPrinting.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingManagerForPrinting.h; sourceTree = ""; }; + 1B92871619F9A55900D540DF /* PrintingProgressPanelWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingProgressPanelWindowController.h; sourceTree = ""; }; + 1B92871719F9A55900D540DF /* ProgressIndicatorCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProgressIndicatorCell.h; sourceTree = ""; }; + 1B92871819F9A55900D540DF /* QLPreviewPanelDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewPanelDataSource-Protocol.h"; sourceTree = ""; }; + 1B92871919F9A55900D540DF /* QLPreviewPanelDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewPanelDelegate-Protocol.h"; sourceTree = ""; }; + 1B92871A19F9A55900D540DF /* QLSeamlessOpenerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLSeamlessOpenerDelegate-Protocol.h"; sourceTree = ""; }; + 1B92871B19F9A55900D540DF /* QuickTimeAttachmentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuickTimeAttachmentView.h; sourceTree = ""; }; + 1B92871C19F9A55900D540DF /* Quota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Quota.h; sourceTree = ""; }; + 1B92871D19F9A55900D540DF /* QuotaBar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuotaBar.h; sourceTree = ""; }; + 1B92871E19F9A55900D540DF /* RedundantContentIdentificationManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RedundantContentIdentificationManager.h; sourceTree = ""; }; + 1B92871F19F9A55900D540DF /* RemoteStoreAccountSpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteStoreAccountSpecialMailboxes.h; sourceTree = ""; }; + 1B92872019F9A55900D540DF /* RemoteStoreQuota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteStoreQuota.h; sourceTree = ""; }; + 1B92872119F9A55900D540DF /* ReplyButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ReplyButtonCell.h; sourceTree = ""; }; + 1B92872219F9A55900D540DF /* RichMessageCellBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RichMessageCellBase.h; sourceTree = ""; }; + 1B92872319F9A55900D540DF /* RichMessageCellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RichMessageCellView.h; sourceTree = ""; }; + 1B92872419F9A55900D540DF /* RichMessageChildCellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RichMessageChildCellView.h; sourceTree = ""; }; + 1B92872519F9A55900D540DF /* RichMessageListSortView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RichMessageListSortView.h; sourceTree = ""; }; + 1B92872619F9A55900D540DF /* RichMessageListSortViewProtocol-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "RichMessageListSortViewProtocol-Protocol.h"; sourceTree = ""; }; + 1B92872719F9A55900D540DF /* RichTableRowView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RichTableRowView.h; sourceTree = ""; }; + 1B92872819F9A55900D540DF /* RolloverButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RolloverButtonCell.h; sourceTree = ""; }; + 1B92872919F9A55900D540DF /* RolloverContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RolloverContainerView.h; sourceTree = ""; }; + 1B92872A19F9A55900D540DF /* RulesPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RulesPreferences.h; sourceTree = ""; }; + 1B92872B19F9A55900D540DF /* ScriptableMessageTextStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScriptableMessageTextStorage.h; sourceTree = ""; }; + 1B92872C19F9A55900D540DF /* SegmentedToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SegmentedToolbarItem.h; sourceTree = ""; }; + 1B92872D19F9A55900D540DF /* SegmentedToolbarItemSegmentedCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SegmentedToolbarItemSegmentedCell.h; sourceTree = ""; }; + 1B92872E19F9A55900D540DF /* SegmentedToolbarItemSegmentItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SegmentedToolbarItemSegmentItem.h; sourceTree = ""; }; + 1B92872F19F9A55900D540DF /* SelfAnimatingProgressIndicator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SelfAnimatingProgressIndicator.h; sourceTree = ""; }; + 1B92873019F9A55900D540DF /* SGTSearchFieldQueryScopeDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SGTSearchFieldQueryScopeDelegate-Protocol.h"; sourceTree = ""; }; + 1B92873119F9A55900D540DF /* Signature.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Signature.h; sourceTree = ""; }; + 1B92873219F9A55900D540DF /* SignatureBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SignatureBundle.h; sourceTree = ""; }; + 1B92873319F9A55900D540DF /* SignaturePreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SignaturePreferences.h; sourceTree = ""; }; + 1B92873419F9A55900D540DF /* SignImageValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SignImageValueTransformer.h; sourceTree = ""; }; + 1B92873519F9A55900D540DF /* SignTooTipValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SignTooTipValueTransformer.h; sourceTree = ""; }; + 1B92873619F9A55900D540DF /* SingleMessageViewer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SingleMessageViewer.h; sourceTree = ""; }; + 1B92873719F9A55900D540DF /* SlidingAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SlidingAnimation.h; sourceTree = ""; }; + 1B92873819F9A55900D540DF /* SlidingAnimationDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SlidingAnimationDelegate-Protocol.h"; sourceTree = ""; }; + 1B92873919F9A55900D540DF /* SlidingViewsBar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SlidingViewsBar.h; sourceTree = ""; }; + 1B92873A19F9A55900D540DF /* SmartMailboxEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SmartMailboxEditor.h; sourceTree = ""; }; + 1B92873B19F9A55900D540DF /* SMTPSettings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SMTPSettings.h; sourceTree = ""; }; + 1B92873C19F9A55900D540DF /* SnippetColorTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SnippetColorTransformer.h; sourceTree = ""; }; + 1B92873D19F9A55900D540DF /* SortByMenuDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SortByMenuDelegate.h; sourceTree = ""; }; + 1B92873E19F9A55900D540DF /* SoundPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SoundPopUpButton.h; sourceTree = ""; }; + 1B92873F19F9A55900D540DF /* SoundPopUpButtonDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SoundPopUpButtonDelegate-Protocol.h"; sourceTree = ""; }; + 1B92874019F9A55900D540DF /* SpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpecialMailboxes.h; sourceTree = ""; }; + 1B92874119F9A55900D540DF /* StackController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StackController.h; sourceTree = ""; }; + 1B92874219F9A55900D540DF /* StackDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "StackDataSource-Protocol.h"; sourceTree = ""; }; + 1B92874319F9A55900D540DF /* StackDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "StackDelegate-Protocol.h"; sourceTree = ""; }; + 1B92874419F9A55900D540DF /* StackElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StackElement.h; sourceTree = ""; }; + 1B92874519F9A55900D540DF /* StackElementDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "StackElementDelegate-Protocol.h"; sourceTree = ""; }; + 1B92874619F9A55900D540DF /* StackRevealGroup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StackRevealGroup.h; sourceTree = ""; }; + 1B92874719F9A55900D540DF /* StackRevealGroupDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "StackRevealGroupDelegate-Protocol.h"; sourceTree = ""; }; + 1B92874819F9A55900D540DF /* StarFieldController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StarFieldController.h; sourceTree = ""; }; + 1B92874919F9A55900D540DF /* StartupManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StartupManager.h; sourceTree = ""; }; + 1B92874A19F9A55900D540DF /* Stationery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Stationery.h; sourceTree = ""; }; + 1B92874B19F9A55900D540DF /* StationeryCompositeImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryCompositeImage.h; sourceTree = ""; }; + 1B92874C19F9A55900D540DF /* StationeryCompositeImageMask.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryCompositeImageMask.h; sourceTree = ""; }; + 1B92874D19F9A55900D540DF /* StationeryController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryController.h; sourceTree = ""; }; + 1B92874E19F9A55900D540DF /* StationeryDynamicElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryDynamicElement.h; sourceTree = ""; }; + 1B92874F19F9A55900D540DF /* StationeryLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryLoader.h; sourceTree = ""; }; + 1B92875019F9A55900D540DF /* StationerySelector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationerySelector.h; sourceTree = ""; }; + 1B92875119F9A55900D540DF /* StatusCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StatusCell.h; sourceTree = ""; }; + 1B92875219F9A55900D540DF /* SubjectFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SubjectFormatter.h; sourceTree = ""; }; + 1B92875319F9A55900D540DF /* TableHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableHeaderView.h; sourceTree = ""; }; + 1B92875419F9A55900D540DF /* TableViewManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableViewManager.h; sourceTree = ""; }; + 1B92875519F9A55900D540DF /* TableViewScrollState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableViewScrollState.h; sourceTree = ""; }; + 1B92875619F9A55900D540DF /* TemporaryAttachmentOpener.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TemporaryAttachmentOpener.h; sourceTree = ""; }; + 1B92875719F9A55900D540DF /* TemporaryItemManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TemporaryItemManager.h; sourceTree = ""; }; + 1B92875819F9A55900D540DF /* TextButtonToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextButtonToolbarItem.h; sourceTree = ""; }; + 1B92875919F9A55900D540DF /* TextMessageDisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextMessageDisplay.h; sourceTree = ""; }; + 1B92875A19F9A55900D540DF /* ThreadDisclosureTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThreadDisclosureTextField.h; sourceTree = ""; }; + 1B92875B19F9A55900D540DF /* ThumbnailButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThumbnailButtonCell.h; sourceTree = ""; }; + 1B92875C19F9A55900D540DF /* ThumbnailMatrix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThumbnailMatrix.h; sourceTree = ""; }; + 1B92875D19F9A55900D540DF /* ThunderbirdEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThunderbirdEmailImporter.h; sourceTree = ""; }; + 1B92875E19F9A55900D540DF /* TilingWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TilingWebView.h; sourceTree = ""; }; + 1B92875F19F9A55900D540DF /* TransparentImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TransparentImageView.h; sourceTree = ""; }; + 1B92876019F9A55900D540DF /* TypeAheadWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TypeAheadWindow.h; sourceTree = ""; }; + 1B92876119F9A55900D540DF /* UnfoldAnimationController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UnfoldAnimationController.h; sourceTree = ""; }; + 1B92876219F9A55900D540DF /* UserActivityHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserActivityHandler.h; sourceTree = ""; }; + 1B92876319F9A55900D540DF /* UserNotificationCenterController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserNotificationCenterController.h; sourceTree = ""; }; + 1B92876419F9A55900D540DF /* UserScriptGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserScriptGenerator.h; sourceTree = ""; }; + 1B92876519F9A55900D540DF /* UserStyleSheetGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserStyleSheetGenerator.h; sourceTree = ""; }; + 1B92876619F9A55900D540DF /* VerticallyCenteredTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VerticallyCenteredTextFieldCell.h; sourceTree = ""; }; + 1B92876719F9A55900D540DF /* ViewerPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewerPreferences.h; sourceTree = ""; }; + 1B92876819F9A55900D540DF /* ViewingPaneView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewingPaneView.h; sourceTree = ""; }; + 1B92876919F9A55900D540DF /* ViewingPaneViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewingPaneViewController.h; sourceTree = ""; }; + 1B92876A19F9A55900D540DF /* ViewTextAttachmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewTextAttachmentCell.h; sourceTree = ""; }; + 1B92876B19F9A55900D540DF /* WebComposeMessageContents.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebComposeMessageContents.h; sourceTree = ""; }; + 1B92876C19F9A55900D540DF /* WebDocumentGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebDocumentGenerator.h; sourceTree = ""; }; + 1B92876D19F9A55900D540DF /* WebFrame-SizingExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebFrame-SizingExtras.h"; sourceTree = ""; }; + 1B92876E19F9A55900D540DF /* WebHTMLView-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebHTMLView-MailAdditions.h"; sourceTree = ""; }; + 1B92876F19F9A55900D540DF /* WebHTMLView-ToReplaceViewWithOurOwn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebHTMLView-ToReplaceViewWithOurOwn.h"; sourceTree = ""; }; + 1B92877019F9A55900D540DF /* WebMessageController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebMessageController.h; sourceTree = ""; }; + 1B92877119F9A55A00D540DF /* WebPreferences-MessageDefaultsSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebPreferences-MessageDefaultsSupport.h"; sourceTree = ""; }; + 1B92877219F9A55A00D540DF /* WebView-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebView-MailExtras.h"; sourceTree = ""; }; + 1B92877319F9A55A00D540DF /* WebViewEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebViewEditor.h; sourceTree = ""; }; + 1B92877419F9A55A00D540DF /* WebViewLoadOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebViewLoadOperation.h; sourceTree = ""; }; + 1B92877519F9A55A00D540DF /* WindowTransformAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WindowTransformAnimation.h; sourceTree = ""; }; + 1B92877719F9A55A00D540DF /* _MUIAddContactsButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MUIAddContactsButton.h; sourceTree = ""; }; + 1B92877819F9A55A00D540DF /* _MUIJavaScriptEvaluationRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MUIJavaScriptEvaluationRequest.h; sourceTree = ""; }; + 1B92877919F9A55A00D540DF /* _MUISnapshotView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MUISnapshotView.h; sourceTree = ""; }; + 1B92877A19F9A55A00D540DF /* _MUIWebAttachmentIconPrintingDataProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MUIWebAttachmentIconPrintingDataProvider.h; sourceTree = ""; }; + 1B92877B19F9A55A00D540DF /* _MUIWebFindMatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MUIWebFindMatch.h; sourceTree = ""; }; + 1B92877C19F9A55A00D540DF /* CDStructures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDStructures.h; sourceTree = ""; }; + 1B92877D19F9A55A00D540DF /* CNAutocompleteFetchDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "CNAutocompleteFetchDelegate-Protocol.h"; sourceTree = ""; }; + 1B92877E19F9A55A00D540DF /* CNContactPickerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "CNContactPickerDelegate-Protocol.h"; sourceTree = ""; }; + 1B92877F19F9A55A00D540DF /* MCCIDURLProtocolDataProvider-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCCIDURLProtocolDataProvider-Protocol.h"; sourceTree = ""; }; + 1B92878019F9A55A00D540DF /* MUIAddressField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIAddressField.h; sourceTree = ""; }; + 1B92878119F9A55A00D540DF /* MUIAddressFieldScrollDocumentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIAddressFieldScrollDocumentView.h; sourceTree = ""; }; + 1B92878219F9A55A00D540DF /* MUIAddressTokenAttachmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIAddressTokenAttachmentCell.h; sourceTree = ""; }; + 1B92878319F9A55A00D540DF /* MUIBundleResourceURLProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIBundleResourceURLProtocol.h; sourceTree = ""; }; + 1B92878419F9A55A00D540DF /* MUICollectionCellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUICollectionCellView.h; sourceTree = ""; }; + 1B92878519F9A55A00D540DF /* MUICollectionHeightStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUICollectionHeightStorage.h; sourceTree = ""; }; + 1B92878619F9A55A00D540DF /* MUICollectionView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUICollectionView.h; sourceTree = ""; }; + 1B92878719F9A55A00D540DF /* MUIContextMenuController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIContextMenuController.h; sourceTree = ""; }; + 1B92878819F9A55A00D540DF /* MUIFramework.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIFramework.h; sourceTree = ""; }; + 1B92878919F9A55A00D540DF /* MUIJavaScriptController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIJavaScriptController.h; sourceTree = ""; }; + 1B92878A19F9A55A00D540DF /* MUILinkEditWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUILinkEditWindowController.h; sourceTree = ""; }; + 1B92878B19F9A55A00D540DF /* MUIMIMEDocumentGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIMIMEDocumentGenerator.h; sourceTree = ""; }; + 1B92878C19F9A55A00D540DF /* MUIRemoteImageCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIRemoteImageCollector.h; sourceTree = ""; }; + 1B92878D19F9A55A00D540DF /* MUISegmentedToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUISegmentedToolbarItem.h; sourceTree = ""; }; + 1B92878E19F9A55A00D540DF /* MUISelectionAndClickInformation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUISelectionAndClickInformation.h; sourceTree = ""; }; + 1B92878F19F9A55A00D540DF /* MUITokenAddress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUITokenAddress.h; sourceTree = ""; }; + 1B92879019F9A55A00D540DF /* MUITokenAddressField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUITokenAddressField.h; sourceTree = ""; }; + 1B92879119F9A55A00D540DF /* MUITokenAddressFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUITokenAddressFieldCell.h; sourceTree = ""; }; + 1B92879219F9A55A00D540DF /* MUITokenAddressTextStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUITokenAddressTextStorage.h; sourceTree = ""; }; + 1B92879319F9A55A00D540DF /* MUITokenAddressTextView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUITokenAddressTextView.h; sourceTree = ""; }; + 1B92879419F9A55A00D540DF /* MUIWebAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWebAttachment.h; sourceTree = ""; }; + 1B92879519F9A55A00D540DF /* MUIWebAttachmentController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWebAttachmentController.h; sourceTree = ""; }; + 1B92879619F9A55A00D540DF /* MUIWebDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWebDocument.h; sourceTree = ""; }; + 1B92879719F9A55A00D540DF /* MUIWebDocumentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWebDocumentView.h; sourceTree = ""; }; + 1B92879819F9A55A00D540DF /* MUIWebDocumentViewGroup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWebDocumentViewGroup.h; sourceTree = ""; }; + 1B92879919F9A55A00D540DF /* MUIWebFindController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWebFindController.h; sourceTree = ""; }; + 1B92879A19F9A55A00D540DF /* MUIWKView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWKView.h; sourceTree = ""; }; + 1B92879B19F9A55A00D540DF /* MUIWKViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWKViewController.h; sourceTree = ""; }; + 1B92879C19F9A55A00D540DF /* NSCoding-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCoding-Protocol.h"; sourceTree = ""; }; + 1B92879D19F9A55A00D540DF /* NSControlTextEditingDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSControlTextEditingDelegate-Protocol.h"; sourceTree = ""; }; + 1B92879E19F9A55A00D540DF /* NSCopying-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCopying-Protocol.h"; sourceTree = ""; }; + 1B92879F19F9A55A00D540DF /* NSDraggingDestination-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDraggingDestination-Protocol.h"; sourceTree = ""; }; + 1B9287A019F9A55A00D540DF /* NSDraggingSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDraggingSource-Protocol.h"; sourceTree = ""; }; + 1B9287A119F9A55A00D540DF /* NSObject-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-Protocol.h"; sourceTree = ""; }; + 1B9287A219F9A55A00D540DF /* NSPasteboardWriting-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPasteboardWriting-Protocol.h"; sourceTree = ""; }; + 1B9287A319F9A55A00D540DF /* NSScrollViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSScrollViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287A419F9A55A00D540DF /* NSSharingServiceDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSharingServiceDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287A519F9A55A00D540DF /* NSSharingServicePickerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSharingServicePickerDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287A619F9A55A00D540DF /* NSTableViewDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTableViewDataSource-Protocol.h"; sourceTree = ""; }; + 1B9287A719F9A55A00D540DF /* NSTableViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTableViewDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287A819F9A55A00D540DF /* NSTextFieldDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFieldDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287A919F9A55A00D540DF /* NSTextFinderAsynchronousDocumentFindMatch-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFinderAsynchronousDocumentFindMatch-Protocol.h"; sourceTree = ""; }; + 1B9287AA19F9A55A00D540DF /* NSTextFinderClient-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFinderClient-Protocol.h"; sourceTree = ""; }; + 1B9287AB19F9A55A00D540DF /* NSTokenFieldDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTokenFieldDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287AC19F9A55A00D540DF /* NSUserInterfaceValidations-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserInterfaceValidations-Protocol.h"; sourceTree = ""; }; + 1B9287AD19F9A55A00D540DF /* NSView-MUIAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MUIAdditions.h"; sourceTree = ""; }; + 1B9287AE19F9A55A00D540DF /* NSWindowDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSWindowDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287AF19F9A55A00D540DF /* QLPreviewItem-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewItem-Protocol.h"; sourceTree = ""; }; + 1B9287B019F9A55A00D540DF /* QLPreviewPanelDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewPanelDataSource-Protocol.h"; sourceTree = ""; }; + 1B9287B119F9A55A00D540DF /* QLPreviewPanelDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewPanelDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287B219F9A55A00D540DF /* QLSeamlessCloserDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLSeamlessCloserDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287B319F9A55A00D540DF /* QLSeamlessOpenerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLSeamlessOpenerDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287B419F9A55A00D540DF /* WKBrowsingContextLoadDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WKBrowsingContextLoadDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287B519F9A55A00D540DF /* WKConnectionDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WKConnectionDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287B619F9A55A00D540DF /* WKProcessGroupDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WKProcessGroupDelegate-Protocol.h"; sourceTree = ""; }; + 1B9287C719F9E99700D540DF /* MCMessageGenerator+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessageGenerator+GPGMail.h"; sourceTree = ""; }; + 1B9287C819F9E99700D540DF /* MCMessageGenerator+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MCMessageGenerator+GPGMail.m"; sourceTree = ""; }; + 1B938AC517693F48007A0854 /* Library+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Library+GPGMail.h"; sourceTree = ""; }; + 1B938AC617693F48007A0854 /* Library+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "Library+GPGMail.m"; sourceTree = ""; }; + 1B95B4BF1501297B005BE119 /* ADVANCED PREFERENCES */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "ADVANCED PREFERENCES"; sourceTree = ""; }; + 1B97AE3615096FA700A4F0F2 /* MMStopwatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MMStopwatch.h; sourceTree = ""; }; + 1B97AE3715096FA700A4F0F2 /* MMStopwatch.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MMStopwatch.m; sourceTree = ""; }; + 1BA12C2714FF578B00729B28 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/GPGAttachments.strings; sourceTree = ""; }; + 1BADCE74176B6501009D3785 /* GMMessageRulesApplier.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GMMessageRulesApplier.h; sourceTree = ""; }; + 1BADCE75176B6501009D3785 /* GMMessageRulesApplier.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GMMessageRulesApplier.m; sourceTree = ""; }; + 1BADCE7C176B694C009D3785 /* GMCodeInjector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GMCodeInjector.h; sourceTree = ""; }; + 1BADCE7D176B694C009D3785 /* GMCodeInjector.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GMCodeInjector.m; sourceTree = ""; }; + 1BAEF64213E9F57700A59CED /* MailAccount+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailAccount+GPGMail.h"; sourceTree = ""; }; + 1BAEF64313E9F57700A59CED /* MailAccount+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MailAccount+GPGMail.m"; sourceTree = ""; }; + 1BAFDD6F1784DAB100E9BA6A /* RegexKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RegexKit.framework; path = Frameworks/RegexKit.framework; sourceTree = ""; }; + 1BB3DCCC1407F1CA00870DEB /* LibraryStore+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "LibraryStore+GPGMail.h"; sourceTree = ""; }; + 1BB3DCCD1407F1CA00870DEB /* LibraryStore+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "LibraryStore+GPGMail.m"; sourceTree = ""; }; + 1BBB07E21489A64600530876 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/GPGAttachment.strings; sourceTree = ""; }; + 1BBEF49A13A9115E0037E53D /* NSSet+Functional.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSet+Functional.h"; sourceTree = ""; }; + 1BBEF49B13A9115E0037E53D /* NSSet+Functional.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSSet+Functional.m"; sourceTree = ""; }; + 1BC4778B1468AA4E0061120C /* GPGAttachmentController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GPGAttachmentController.h; sourceTree = ""; }; + 1BC4778C1468AA4F0061120C /* GPGAttachmentController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GPGAttachmentController.m; sourceTree = ""; }; + 1BCD9A4B13A8C6B5003024C7 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; }; + 1BCEE1E211CC051500488D19 /* LICENSE.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = LICENSE.txt; sourceTree = SOURCE_ROOT; }; + 1BD06B9918102CF300EC9902 /* WebDocumentGenerator+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebDocumentGenerator+GPGMail.h"; sourceTree = ""; }; + 1BD06B9A18102CF300EC9902 /* WebDocumentGenerator+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "WebDocumentGenerator+GPGMail.m"; sourceTree = ""; }; + 1BD7D27D1765E59C00F5A266 /* MessageCriterion+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageCriterion+GPGMail.h"; sourceTree = ""; }; + 1BD7D27E1765E59C00F5A266 /* MessageCriterion+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MessageCriterion+GPGMail.m"; sourceTree = ""; }; + 1BDAA67313EB680D00F27826 /* CODING */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CODING; sourceTree = ""; }; + 1BEA7AC31760AB5B0084B2AD /* BannerController+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "BannerController+GPGMail.h"; sourceTree = ""; }; + 1BEA7AC41760AB5B0084B2AD /* BannerController+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "BannerController+GPGMail.m"; sourceTree = ""; }; + 1BECA61513E372AC00C622B0 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/SignatureView.strings; sourceTree = ""; }; + 1BF40C88180CA59A00B4C1CE /* EAEmailAddressParser+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "EAEmailAddressParser+GPGMail.h"; sourceTree = ""; }; + 1BF40C89180CA59A00B4C1CE /* EAEmailAddressParser+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "EAEmailAddressParser+GPGMail.m"; sourceTree = ""; }; + 1BF51A6F108FCD1900AC8268 /* ExceptionHandling.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ExceptionHandling.framework; path = System/Library/Frameworks/ExceptionHandling.framework; sourceTree = SDKROOT; }; + 1BF69D7D1405C04E008B07F5 /* HeadersEditor+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "HeadersEditor+GPGMail.h"; sourceTree = ""; }; + 1BF69D7E1405C04E008B07F5 /* HeadersEditor+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "HeadersEditor+GPGMail.m"; sourceTree = ""; }; + 1BF69D801405DDCD008B07F5 /* GPGConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GPGConstants.h; sourceTree = ""; }; + 1BFDB13B180B30DB00B677C2 /* _AccountDisplayCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AccountDisplayCell.h; sourceTree = ""; }; + 1BFDB13C180B30DB00B677C2 /* _AddressRectangleView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AddressRectangleView.h; sourceTree = ""; }; + 1BFDB13D180B30DB00B677C2 /* _AllSignaturesAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AllSignaturesAccount.h; sourceTree = ""; }; + 1BFDB13E180B30DB00B677C2 /* _AttachmentQueueEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AttachmentQueueEntry.h; sourceTree = ""; }; + 1BFDB13F180B30DB00B677C2 /* _AutocompletionResultsAccumulator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AutocompletionResultsAccumulator.h; sourceTree = ""; }; + 1BFDB140180B30DB00B677C2 /* _AutosizingClipView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AutosizingClipView.h; sourceTree = ""; }; + 1BFDB141180B30DB00B677C2 /* _BorderlessButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _BorderlessButton.h; sourceTree = ""; }; + 1BFDB142180B30DB00B677C2 /* _CompletionWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _CompletionWindow.h; sourceTree = ""; }; + 1BFDB143180B30DB00B677C2 /* _ComposeAttachmentEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ComposeAttachmentEnumerator.h; sourceTree = ""; }; + 1BFDB144180B30DB00B677C2 /* _DataDetectorManagerDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _DataDetectorManagerDelegate.h; sourceTree = ""; }; + 1BFDB145180B30DB00B677C2 /* _DateTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _DateTextFieldCell.h; sourceTree = ""; }; + 1BFDB146180B30DB00B677C2 /* _DeleteMailboxTransfer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _DeleteMailboxTransfer.h; sourceTree = ""; }; + 1BFDB147180B30DB00B677C2 /* _DupsLinkView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _DupsLinkView.h; sourceTree = ""; }; + 1BFDB148180B30DB00B677C2 /* _EmptyFavoritesMessageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _EmptyFavoritesMessageView.h; sourceTree = ""; }; + 1BFDB149180B30DB00B677C2 /* _FavoriteButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _FavoriteButtonCell.h; sourceTree = ""; }; + 1BFDB14A180B30DB00B677C2 /* _FilteredListInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _FilteredListInfo.h; sourceTree = ""; }; + 1BFDB14B180B30DB00B677C2 /* _IMAPMailboxEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _IMAPMailboxEntry.h; sourceTree = ""; }; + 1BFDB14C180B30DB00B677C2 /* _MailboxUidPlaceholder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailboxUidPlaceholder.h; sourceTree = ""; }; + 1BFDB14D180B30DB00B677C2 /* _MailInspectorBarSeparatorView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailInspectorBarSeparatorView.h; sourceTree = ""; }; + 1BFDB14E180B30DB00B677C2 /* _MailNSClipView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailNSClipView.h; sourceTree = ""; }; + 1BFDB14F180B30DB00B677C2 /* _MailNSFontManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailNSFontManager.h; sourceTree = ""; }; + 1BFDB150180B30DB00B677C2 /* _MailSplitViewDimmingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailSplitViewDimmingView.h; sourceTree = ""; }; + 1BFDB151180B30DB00B677C2 /* _MailTableHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailTableHeaderView.h; sourceTree = ""; }; + 1BFDB152180B30DB00B677C2 /* _MailToolbarSpace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailToolbarSpace.h; sourceTree = ""; }; + 1BFDB153180B30DB00B677C2 /* _MenuItemThatDoesNotRetainRepresentedObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MenuItemThatDoesNotRetainRepresentedObject.h; sourceTree = ""; }; + 1BFDB154180B30DB00B677C2 /* _MessageContentTableRowView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MessageContentTableRowView.h; sourceTree = ""; }; + 1BFDB155180B30DB00B677C2 /* _MessageHeaderAccessibilityView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MessageHeaderAccessibilityView.h; sourceTree = ""; }; + 1BFDB156180B30DB00B677C2 /* _MessageThreadingData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MessageThreadingData.h; sourceTree = ""; }; + 1BFDB157180B30DB00B677C2 /* _MessageViewerBox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MessageViewerBox.h; sourceTree = ""; }; + 1BFDB158180B30DB00B677C2 /* _MessageViewerLazyPopUpButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MessageViewerLazyPopUpButtonCell.h; sourceTree = ""; }; + 1BFDB159180B30DB00B677C2 /* _MessageViewingPaneConversationsObserver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MessageViewingPaneConversationsObserver.h; sourceTree = ""; }; + 1BFDB15A180B30DB00B677C2 /* _MouseTracker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MouseTracker.h; sourceTree = ""; }; + 1BFDB15B180B30DB00B677C2 /* _MTMAccountMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMAccountMailbox.h; sourceTree = ""; }; + 1BFDB15C180B30DB00B677C2 /* _MTMBackupMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMBackupMailbox.h; sourceTree = ""; }; + 1BFDB15D180B30DB00B677C2 /* _MTMDisabledSubMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMDisabledSubMetaMailbox.h; sourceTree = ""; }; + 1BFDB15E180B30DB00B677C2 /* _MTMDraftsMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMDraftsMailbox.h; sourceTree = ""; }; + 1BFDB15F180B30DB00B677C2 /* _MTMHeaderCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMHeaderCell.h; sourceTree = ""; }; + 1BFDB160180B30DB00B677C2 /* _MTMInboxMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMInboxMailbox.h; sourceTree = ""; }; + 1BFDB161180B30DB00B677C2 /* _MTMJunkMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMJunkMailbox.h; sourceTree = ""; }; + 1BFDB162180B30DB00B677C2 /* _MTMMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMMetaMailbox.h; sourceTree = ""; }; + 1BFDB163180B30DB00B677C2 /* _MTMNotesMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMNotesMailbox.h; sourceTree = ""; }; + 1BFDB164180B30DB00B677C2 /* _MTMRootMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMRootMailbox.h; sourceTree = ""; }; + 1BFDB165180B30DB00B677C2 /* _MTMRSSMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMRSSMailbox.h; sourceTree = ""; }; + 1BFDB166180B30DB00B677C2 /* _MTMRSSSubMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMRSSSubMailbox.h; sourceTree = ""; }; + 1BFDB167180B30DB00B677C2 /* _MTMSectionMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMSectionMailbox.h; sourceTree = ""; }; + 1BFDB168180B30DB00B677C2 /* _MTMSentMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMSentMailbox.h; sourceTree = ""; }; + 1BFDB169180B30DB00B677C2 /* _MTMSmartMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMSmartMailbox.h; sourceTree = ""; }; + 1BFDB16A180B30DB00B677C2 /* _MTMStoredMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMStoredMetaMailbox.h; sourceTree = ""; }; + 1BFDB16B180B30DB00B677C2 /* _MTMStoredSubMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMStoredSubMetaMailbox.h; sourceTree = ""; }; + 1BFDB16C180B30DB00B677C2 /* _MTMSubMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMSubMetaMailbox.h; sourceTree = ""; }; + 1BFDB16D180B30DB00B677C2 /* _MTMTrashMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMTrashMailbox.h; sourceTree = ""; }; + 1BFDB16E180B30DB00B677C2 /* _MV_BezierPathLayoutManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MV_BezierPathLayoutManager.h; sourceTree = ""; }; + 1BFDB16F180B30DB00B677C2 /* _PDFAttachmentView_InertScrollView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _PDFAttachmentView_InertScrollView.h; sourceTree = ""; }; + 1BFDB170180B30DB00B677C2 /* _QuickLookButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _QuickLookButtonCell.h; sourceTree = ""; }; + 1BFDB171180B30DB00B677C2 /* _RecentsSearchOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _RecentsSearchOperation.h; sourceTree = ""; }; + 1BFDB172180B30DB00B677C2 /* _ResizingTextAttachmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ResizingTextAttachmentCell.h; sourceTree = ""; }; + 1BFDB173180B30DB00B677C2 /* _RoundedRectTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _RoundedRectTextFieldCell.h; sourceTree = ""; }; + 1BFDB174180B30DB00B677C2 /* _RSSConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _RSSConnection.h; sourceTree = ""; }; + 1BFDB175180B30DB00B677C2 /* _SaveAttachmentsButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SaveAttachmentsButtonCell.h; sourceTree = ""; }; + 1BFDB176180B30DB00B677C2 /* _SenderImageCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SenderImageCell.h; sourceTree = ""; }; + 1BFDB177180B30DB00B677C2 /* _SheetContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SheetContext.h; sourceTree = ""; }; + 1BFDB178180B30DB00B677C2 /* _ShowLinkView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ShowLinkView.h; sourceTree = ""; }; + 1BFDB179180B30DB00B677C2 /* _SidebarButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SidebarButtonCell.h; sourceTree = ""; }; + 1BFDB17A180B30DB00B677C2 /* _SlidingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SlidingView.h; sourceTree = ""; }; + 1BFDB17B180B30DB00B677C2 /* _SortBarButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SortBarButtonCell.h; sourceTree = ""; }; + 1BFDB17C180B30DB00B677C2 /* _StationeryThumbnailCreator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _StationeryThumbnailCreator.h; sourceTree = ""; }; + 1BFDB17D180B30DB00B677C2 /* _TextButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _TextButtonCell.h; sourceTree = ""; }; + 1BFDB17E180B30DB00B677C2 /* _ThreadAnimationOffscreenWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ThreadAnimationOffscreenWindow.h; sourceTree = ""; }; + 1BFDB17F180B30DB00B677C2 /* _ThreadDisclosureTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ThreadDisclosureTextFieldCell.h; sourceTree = ""; }; + 1BFDB180180B30DB00B677C2 /* _TransferOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _TransferOperation.h; sourceTree = ""; }; + 1BFDB181180B30DB00B677C2 /* _VisibleStateObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _VisibleStateObject.h; sourceTree = ""; }; + 1BFDB182180B30DB00B677C2 /* ABSearchOperationDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABSearchOperationDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB183180B30DB00B677C2 /* Account-MailUIExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Account-MailUIExtras.h"; sourceTree = ""; }; + 1BFDB184180B30DB00B677C2 /* AccountAutoconfiguratorDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AccountAutoconfiguratorDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB185180B30DB00B677C2 /* AccountCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountCell.h; sourceTree = ""; }; + 1BFDB186180B30DB00B677C2 /* AccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountDetails.h; sourceTree = ""; }; + 1BFDB187180B30DB00B677C2 /* AccountInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountInfo.h; sourceTree = ""; }; + 1BFDB188180B30DB00B677C2 /* AccountInfoTabOwner-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AccountInfoTabOwner-Protocol.h"; sourceTree = ""; }; + 1BFDB189180B30DB00B677C2 /* AccountPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountPreferences.h; sourceTree = ""; }; + 1BFDB18A180B30DB00B677C2 /* AccountSetupAssistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountSetupAssistant.h; sourceTree = ""; }; + 1BFDB18B180B30DB00B677C2 /* AccountSetupValidatorDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AccountSetupValidatorDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB18C180B30DB00B677C2 /* AccountStatusDataSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountStatusDataSource.h; sourceTree = ""; }; + 1BFDB18D180B30DB00B677C2 /* AccountStatusDataSourceDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AccountStatusDataSourceDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB18E180B30DB00B677C2 /* AccountSummary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountSummary.h; sourceTree = ""; }; + 1BFDB18F180B30DB00B677C2 /* ActivityAggregateView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityAggregateView.h; sourceTree = ""; }; + 1BFDB190180B30DB00B677C2 /* ActivityProgressPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityProgressPanel.h; sourceTree = ""; }; + 1BFDB191180B30DB00B677C2 /* ActivityViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewController.h; sourceTree = ""; }; + 1BFDB192180B30DB00B677C2 /* ActivityViewEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewEntry.h; sourceTree = ""; }; + 1BFDB193180B30DB00B677C2 /* ActivityViewer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewer.h; sourceTree = ""; }; + 1BFDB194180B30DB00B677C2 /* ActivityViewerMailSound.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewerMailSound.h; sourceTree = ""; }; + 1BFDB195180B30DB00B677C2 /* AddProgressMonitor-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AddProgressMonitor-Protocol.h"; sourceTree = ""; }; + 1BFDB196180B30DB00B677C2 /* AddressAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddressAttachment.h; sourceTree = ""; }; + 1BFDB197180B30DB00B677C2 /* AddressAttachmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddressAttachmentCell.h; sourceTree = ""; }; + 1BFDB198180B30DB00B677C2 /* AddressCommentCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddressCommentCommand.h; sourceTree = ""; }; + 1BFDB199180B30DB00B677C2 /* AddressHistoryController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddressHistoryController.h; sourceTree = ""; }; + 1BFDB19A180B30DB00B677C2 /* AddressLayoutManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddressLayoutManager.h; sourceTree = ""; }; + 1BFDB19B180B30DB00B677C2 /* AddressPicker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddressPicker.h; sourceTree = ""; }; + 1BFDB19C180B30DB00B677C2 /* AddressTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddressTextField.h; sourceTree = ""; }; + 1BFDB19D180B30DB00B677C2 /* AddressTextFieldDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AddressTextFieldDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB19E180B30DB00B677C2 /* AddressTextViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AddressTextViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB19F180B30DB00B677C2 /* ApplescriptEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ApplescriptEmailImporter.h; sourceTree = ""; }; + 1BFDB1A0180B30DB00B677C2 /* Assistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Assistant.h; sourceTree = ""; }; + 1BFDB1A1180B30DB00B677C2 /* AssistantDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AssistantDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB1A2180B30DB00B677C2 /* AssistantManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AssistantManager.h; sourceTree = ""; }; + 1BFDB1A3180B30DB00B677C2 /* AtomicAddressTextView-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AtomicAddressTextView-Protocol.h"; sourceTree = ""; }; + 1BFDB1A4180B30DB00B677C2 /* AttachmentDragSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AttachmentDragSession.h; sourceTree = ""; }; + 1BFDB1A5180B30DB00B677C2 /* AttachmentLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AttachmentLoader.h; sourceTree = ""; }; + 1BFDB1A6180B30DB00B677C2 /* AttachmentManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AttachmentManager.h; sourceTree = ""; }; + 1BFDB1A7180B30DB00B677C2 /* AuthSchemeBindingProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthSchemeBindingProxy.h; sourceTree = ""; }; + 1BFDB1A8180B30DB00B677C2 /* AuthSchemeValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthSchemeValueTransformer.h; sourceTree = ""; }; + 1BFDB1A9180B30DB00B677C2 /* AutoLogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AutoLogger.h; sourceTree = ""; }; + 1BFDB1AA180B30DB00B677C2 /* AutosizingScrollView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AutosizingScrollView.h; sourceTree = ""; }; + 1BFDB1AB180B30DB00B677C2 /* AutosizingTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AutosizingTextField.h; sourceTree = ""; }; + 1BFDB1AC180B30DB00B677C2 /* BannerContainer-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "BannerContainer-Protocol.h"; sourceTree = ""; }; + 1BFDB1AD180B30DB00B677C2 /* BannerController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BannerController.h; sourceTree = ""; }; + 1BFDB1AE180B30DB00B677C2 /* BindingsEnabledMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BindingsEnabledMenu.h; sourceTree = ""; }; + 1BFDB1AF180B30DB00B677C2 /* BorderlessToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BorderlessToolbarItem.h; sourceTree = ""; }; + 1BFDB1B0180B30DB00B677C2 /* BusyStatusErrorWindowDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BusyStatusErrorWindowDelegate.h; sourceTree = ""; }; + 1BFDB1B1180B30DB00B677C2 /* ButtonIconTextCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ButtonIconTextCell.h; sourceTree = ""; }; + 1BFDB1B2180B30DB00B677C2 /* CalendarBannerIconCreator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CalendarBannerIconCreator.h; sourceTree = ""; }; + 1BFDB1B3180B30DB00B677C2 /* CalendarEventBannerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CalendarEventBannerView.h; sourceTree = ""; }; + 1BFDB1B4180B30DB00B677C2 /* CDStructures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDStructures.h; sourceTree = ""; }; + 1BFDB1B5180B30DB00B677C2 /* CheckMailAutoTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CheckMailAutoTest.h; sourceTree = ""; }; + 1BFDB1B6180B30DB00B677C2 /* ClippedItemsIndicator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ClippedItemsIndicator.h; sourceTree = ""; }; + 1BFDB1B7180B30DB00B677C2 /* ClippedItemsIndicatorDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ClippedItemsIndicatorDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB1B8180B30DB00B677C2 /* ColorBackgroundView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ColorBackgroundView.h; sourceTree = ""; }; + 1BFDB1B9180B30DB00B677C2 /* CompletionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CompletionController.h; sourceTree = ""; }; + 1BFDB1BA180B30DB00B677C2 /* ComposeBackEnd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeBackEnd.h; sourceTree = ""; }; + 1BFDB1BB180B30DB00B677C2 /* ComposeBackEnd_Scripting.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeBackEnd_Scripting.h; sourceTree = ""; }; + 1BFDB1BC180B30DB00B677C2 /* ComposeHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeHeaderView.h; sourceTree = ""; }; + 1BFDB1BD180B30DB00B677C2 /* ComposeSpellChecker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeSpellChecker.h; sourceTree = ""; }; + 1BFDB1BE180B30DB00B677C2 /* ComposingPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposingPreferences.h; sourceTree = ""; }; + 1BFDB1BF180B30DB00B677C2 /* ConnectionDoctor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConnectionDoctor.h; sourceTree = ""; }; + 1BFDB1C0180B30DB00B677C2 /* ContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContainerView.h; sourceTree = ""; }; + 1BFDB1C1180B30DB00B677C2 /* CopyMessagesAutoTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CopyMessagesAutoTest.h; sourceTree = ""; }; + 1BFDB1C2180B30DB00B677C2 /* CriteriaUIHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CriteriaUIHelper.h; sourceTree = ""; }; + 1BFDB1C3180B30DB00B677C2 /* CriterionView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CriterionView.h; sourceTree = ""; }; + 1BFDB1C4180B30DB00B677C2 /* DateCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DateCell.h; sourceTree = ""; }; + 1BFDB1C5180B30DB00B677C2 /* DateTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DateTextField.h; sourceTree = ""; }; + 1BFDB1C6180B30DB00B677C2 /* DDDetectorManagerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DDDetectorManagerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB1C7180B30DB00B677C2 /* DefaultApplicationPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DefaultApplicationPopUpButton.h; sourceTree = ""; }; + 1BFDB1C8180B30DB00B677C2 /* DefaultWebAppPopUpController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DefaultWebAppPopUpController.h; sourceTree = ""; }; + 1BFDB1C9180B30DB00B677C2 /* DeleteMessagesAutoTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeleteMessagesAutoTest.h; sourceTree = ""; }; + 1BFDB1CA180B30DB00B677C2 /* DeletingTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeletingTableView.h; sourceTree = ""; }; + 1BFDB1CB180B30DB00B677C2 /* DeliveryAccount-MailUIExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DeliveryAccount-MailUIExtras.h"; sourceTree = ""; }; + 1BFDB1CC180B30DB00B677C2 /* DeliveryAccountArrayController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeliveryAccountArrayController.h; sourceTree = ""; }; + 1BFDB1CD180B30DB00B677C2 /* DeliveryFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeliveryFailure.h; sourceTree = ""; }; + 1BFDB1CE180B30DB00B677C2 /* DeliveryQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeliveryQueue.h; sourceTree = ""; }; + 1BFDB1CF180B30DB00B677C2 /* DockCountController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DockCountController.h; sourceTree = ""; }; + 1BFDB1D0180B30DB00B677C2 /* DocumentContentState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DocumentContentState.h; sourceTree = ""; }; + 1BFDB1D1180B30DB00B677C2 /* DocumentEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DocumentEditor.h; sourceTree = ""; }; + 1BFDB1D2180B30DB00B677C2 /* DocumentEditorManaging-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DocumentEditorManaging-Protocol.h"; sourceTree = ""; }; + 1BFDB1D3180B30DB00B677C2 /* DOMCharacterData-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMCharacterData-MailExtras.h"; sourceTree = ""; }; + 1BFDB1D4180B30DB00B677C2 /* DOMCSSStylePropertyAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DOMCSSStylePropertyAnimation.h; sourceTree = ""; }; + 1BFDB1D5180B30DB00B677C2 /* DOMCSSValue-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMCSSValue-MailExtras.h"; sourceTree = ""; }; + 1BFDB1D6180B30DB00B677C2 /* DOMDocument-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMDocument-MailExtras.h"; sourceTree = ""; }; + 1BFDB1D7180B30DB00B677C2 /* DOMDocument-RedundantTextAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMDocument-RedundantTextAdditions.h"; sourceTree = ""; }; + 1BFDB1D8180B30DB00B677C2 /* DOMDocumentFragment-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMDocumentFragment-MailExtras.h"; sourceTree = ""; }; + 1BFDB1D9180B30DB00B677C2 /* DOMElement-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMElement-MailExtras.h"; sourceTree = ""; }; + 1BFDB1DA180B30DB00B677C2 /* DOMElement-MailHTMLAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMElement-MailHTMLAttachments.h"; sourceTree = ""; }; + 1BFDB1DB180B30DB00B677C2 /* DOMEventListener-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMEventListener-Protocol.h"; sourceTree = ""; }; + 1BFDB1DC180B30DB00B677C2 /* DOMHTMLDocument-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLDocument-MailExtras.h"; sourceTree = ""; }; + 1BFDB1DD180B30DB00B677C2 /* DOMHTMLDocument-ToDoExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLDocument-ToDoExtras.h"; sourceTree = ""; }; + 1BFDB1DE180B30DB00B677C2 /* DOMHTMLElement-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLElement-MailExtras.h"; sourceTree = ""; }; + 1BFDB1DF180B30DB00B677C2 /* DOMHTMLElement-MailQuoteLevel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLElement-MailQuoteLevel.h"; sourceTree = ""; }; + 1BFDB1E0180B30DB00B677C2 /* DOMHTMLImageElement-MailHTMLAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLImageElement-MailHTMLAttachments.h"; sourceTree = ""; }; + 1BFDB1E1180B30DB00B677C2 /* DOMHTMLObjectElement-AttachmentLocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLObjectElement-AttachmentLocator.h"; sourceTree = ""; }; + 1BFDB1E2180B30DB00B677C2 /* DOMNode-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMNode-MailExtras.h"; sourceTree = ""; }; + 1BFDB1E3180B30DB00B677C2 /* DOMNode-MailHTMLAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMNode-MailHTMLAttachments.h"; sourceTree = ""; }; + 1BFDB1E4180B30DB00B677C2 /* DOMNode-RedundantTextAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMNode-RedundantTextAdditions.h"; sourceTree = ""; }; + 1BFDB1E5180B30DB00B677C2 /* DOMNode-ToDoExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMNode-ToDoExtras.h"; sourceTree = ""; }; + 1BFDB1E6180B30DB00B677C2 /* DOMRange-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMRange-MailExtras.h"; sourceTree = ""; }; + 1BFDB1E7180B30DB00B677C2 /* DottedBlockquoteAbbreviator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DottedBlockquoteAbbreviator.h; sourceTree = ""; }; + 1BFDB1E8180B30DB00B677C2 /* DraggingTextView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DraggingTextView.h; sourceTree = ""; }; + 1BFDB1E9180B30DB00B677C2 /* DraggingTextViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DraggingTextViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB1EA180B30DB00B677C2 /* DynamicErrorWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DynamicErrorWindowController.h; sourceTree = ""; }; + 1BFDB1EB180B30DB00B677C2 /* DynamicErrorWindowDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DynamicErrorWindowDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB1EC180B30DB00B677C2 /* EditableWebMessageDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditableWebMessageDocument.h; sourceTree = ""; }; + 1BFDB1ED180B30DB00B677C2 /* EditingMessageWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditingMessageWebView.h; sourceTree = ""; }; + 1BFDB1EE180B30DB00B677C2 /* EditingMessageWebViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "EditingMessageWebViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB1EF180B30DB00B677C2 /* EditingWebMessageController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditingWebMessageController.h; sourceTree = ""; }; + 1BFDB1F0180B30DB00B677C2 /* EmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EmailImporter.h; sourceTree = ""; }; + 1BFDB1F1180B30DB00B677C2 /* EmailView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EmailView.h; sourceTree = ""; }; + 1BFDB1F2180B30DB00B677C2 /* EmailViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EmailViewController.h; sourceTree = ""; }; + 1BFDB1F3180B30DB00B677C2 /* EmbeddedNoteDocumentEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EmbeddedNoteDocumentEditor.h; sourceTree = ""; }; + 1BFDB1F4180B30DB00B677C2 /* EntourageEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EntourageEmailImporter.h; sourceTree = ""; }; + 1BFDB1F5180B30DB00B677C2 /* EudoraEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EudoraEmailImporter.h; sourceTree = ""; }; + 1BFDB1F6180B30DB00B677C2 /* EWSAccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSAccountDetails.h; sourceTree = ""; }; + 1BFDB1F7180B30DB00B677C2 /* EWSAccountSpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSAccountSpecialMailboxes.h; sourceTree = ""; }; + 1BFDB1F8180B30DB00B677C2 /* EWSQuota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSQuota.h; sourceTree = ""; }; + 1BFDB1F9180B30DB00B677C2 /* ExchangeAccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExchangeAccountDetails.h; sourceTree = ""; }; + 1BFDB1FA180B30DB00B677C2 /* ExpandingSplitView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExpandingSplitView.h; sourceTree = ""; }; + 1BFDB1FB180B30DB00B677C2 /* FauxUIElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FauxUIElement.h; sourceTree = ""; }; + 1BFDB1FC180B30DB00B677C2 /* FavoriteButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoriteButton.h; sourceTree = ""; }; + 1BFDB1FD180B30DB00B677C2 /* FavoriteMenuItemCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoriteMenuItemCell.h; sourceTree = ""; }; + 1BFDB1FE180B30DB00B677C2 /* FavoriteMenuScrollHoverView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoriteMenuScrollHoverView.h; sourceTree = ""; }; + 1BFDB1FF180B30DB00B677C2 /* FavoritesBarView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesBarView.h; sourceTree = ""; }; + 1BFDB200180B30DB00B677C2 /* FavoritesMenuController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesMenuController.h; sourceTree = ""; }; + 1BFDB201180B30DB00B677C2 /* FavoritesMenuDelegateProtocol-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "FavoritesMenuDelegateProtocol-Protocol.h"; sourceTree = ""; }; + 1BFDB202180B30DB00B677C2 /* FavoritesMenuOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesMenuOutlineView.h; sourceTree = ""; }; + 1BFDB203180B30DB00B677C2 /* FeedbackCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FeedbackCollector.h; sourceTree = ""; }; + 1BFDB204180B30DB00B677C2 /* FilesystemEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FilesystemEmailImporter.h; sourceTree = ""; }; + 1BFDB205180B30DB00B677C2 /* FindPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FindPanel.h; sourceTree = ""; }; + 1BFDB206180B30DB00B677C2 /* FlagButtonImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlagButtonImageView.h; sourceTree = ""; }; + 1BFDB207180B30DB00B677C2 /* FlaggedStatusToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlaggedStatusToolbarItem.h; sourceTree = ""; }; + 1BFDB208180B30DB00B677C2 /* FlaggedStatusToolbarItemDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "FlaggedStatusToolbarItemDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB209180B30DB00B677C2 /* FlaggedStatusView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlaggedStatusView.h; sourceTree = ""; }; + 1BFDB20A180B30DB00B677C2 /* FlagsMenuItemView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlagsMenuItemView.h; sourceTree = ""; }; + 1BFDB20B180B30DB00B677C2 /* FlatPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlatPopUpButton.h; sourceTree = ""; }; + 1BFDB20C180B30DB00B677C2 /* FlatPopUpButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlatPopUpButtonCell.h; sourceTree = ""; }; + 1BFDB20D180B30DB00B677C2 /* FlatTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlatTableView.h; sourceTree = ""; }; + 1BFDB20E180B30DB00B677C2 /* FlatTableViewDataCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlatTableViewDataCell.h; sourceTree = ""; }; + 1BFDB20F180B30DB00B677C2 /* FlippedView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlippedView.h; sourceTree = ""; }; + 1BFDB210180B30DB00B677C2 /* FontPreferenceContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FontPreferenceContainerView.h; sourceTree = ""; }; + 1BFDB211180B30DB00B677C2 /* FontsAndColorsPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FontsAndColorsPreferences.h; sourceTree = ""; }; + 1BFDB212180B30DB00B677C2 /* FullScreenModalCapableWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FullScreenModalCapableWindow.h; sourceTree = ""; }; + 1BFDB213180B30DB00B677C2 /* FullScreenWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FullScreenWindowController.h; sourceTree = ""; }; + 1BFDB214180B30DB00B677C2 /* GeneralPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GeneralPreferences.h; sourceTree = ""; }; + 1BFDB215180B30DB00B677C2 /* GenericAttachmentFetcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GenericAttachmentFetcher.h; sourceTree = ""; }; + 1BFDB216180B30DB00B677C2 /* HeaderAttachmentsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderAttachmentsController.h; sourceTree = ""; }; + 1BFDB217180B30DB00B677C2 /* HeadersEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeadersEditor.h; sourceTree = ""; }; + 1BFDB218180B30DB00B677C2 /* HyperlinkEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HyperlinkEditor.h; sourceTree = ""; }; + 1BFDB219180B30DB00B677C2 /* ImagePopUpButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImagePopUpButtonCell.h; sourceTree = ""; }; + 1BFDB21A180B30DB00B677C2 /* ImageResizer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImageResizer.h; sourceTree = ""; }; + 1BFDB21B180B30DB00B677C2 /* IMAPAccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPAccountDetails.h; sourceTree = ""; }; + 1BFDB21C180B30DB00B677C2 /* IMAPAccountSpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPAccountSpecialMailboxes.h; sourceTree = ""; }; + 1BFDB21D180B30DB00B677C2 /* IMAPMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPMailboxes.h; sourceTree = ""; }; + 1BFDB21E180B30DB00B677C2 /* IMAPQuota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPQuota.h; sourceTree = ""; }; + 1BFDB21F180B30DB00B677C2 /* ImportAssistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImportAssistant.h; sourceTree = ""; }; + 1BFDB220180B30DB00B677C2 /* Importer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Importer.h; sourceTree = ""; }; + 1BFDB221180B30DB00B677C2 /* ImportItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImportItem.h; sourceTree = ""; }; + 1BFDB222180B30DB00B677C2 /* InvitationAttachmentOpener.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InvitationAttachmentOpener.h; sourceTree = ""; }; + 1BFDB223180B30DB00B677C2 /* IOErrorWindowDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IOErrorWindowDelegate.h; sourceTree = ""; }; + 1BFDB224180B30DB00B677C2 /* JunkPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JunkPreferences.h; sourceTree = ""; }; + 1BFDB225180B30DB00B677C2 /* LabelledTextAttachmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LabelledTextAttachmentCell.h; sourceTree = ""; }; + 1BFDB226180B30DB00B677C2 /* LazyMenuSegmentedCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LazyMenuSegmentedCell.h; sourceTree = ""; }; + 1BFDB227180B30DB00B677C2 /* LazySubmenuMenuItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LazySubmenuMenuItem.h; sourceTree = ""; }; + 1BFDB228180B30DB00B677C2 /* LDAPServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDAPServer.h; sourceTree = ""; }; + 1BFDB229180B30DB00B677C2 /* LibraryImportAssistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryImportAssistant.h; sourceTree = ""; }; + 1BFDB22A180B30DB00B677C2 /* LibraryUpgradeAssistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryUpgradeAssistant.h; sourceTree = ""; }; + 1BFDB22B180B30DB00B677C2 /* LibraryUpgraderDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "LibraryUpgraderDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB22C180B30DB00B677C2 /* ListImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ListImageView.h; sourceTree = ""; }; + 1BFDB22D180B30DB00B677C2 /* LoadingOverlay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LoadingOverlay.h; sourceTree = ""; }; + 1BFDB22E180B30DB00B677C2 /* MailApp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailApp.h; sourceTree = ""; }; + 1BFDB22F180B30DB00B677C2 /* MailAutoTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailAutoTest.h; sourceTree = ""; }; + 1BFDB230180B30DB00B677C2 /* MailAutoTestRunner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailAutoTestRunner.h; sourceTree = ""; }; + 1BFDB231180B30DB00B677C2 /* MailBarContainerButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailBarContainerButton.h; sourceTree = ""; }; + 1BFDB232180B30DB00B677C2 /* MailBarContainerButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailBarContainerButtonCell.h; sourceTree = ""; }; + 1BFDB233180B30DB00B677C2 /* MailBarContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailBarContainerView.h; sourceTree = ""; }; + 1BFDB234180B30DB00B677C2 /* MailboxesChooser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesChooser.h; sourceTree = ""; }; + 1BFDB235180B30DB00B677C2 /* MailboxesController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesController.h; sourceTree = ""; }; + 1BFDB236180B30DB00B677C2 /* MailboxesOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesOutlineView.h; sourceTree = ""; }; + 1BFDB237180B30DB00B677C2 /* MailboxesOutlineViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesOutlineViewController.h; sourceTree = ""; }; + 1BFDB238180B30DB00B677C2 /* MailboxesOutlineViewControllerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxesOutlineViewControllerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB239180B30DB00B677C2 /* MailboxesOutlineViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxesOutlineViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB23A180B30DB00B677C2 /* MailboxesOutlineViewStateStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesOutlineViewStateStorage.h; sourceTree = ""; }; + 1BFDB23B180B30DB00B677C2 /* MailboxesScrollView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesScrollView.h; sourceTree = ""; }; + 1BFDB23C180B30DB00B677C2 /* MailboxListCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxListCell.h; sourceTree = ""; }; + 1BFDB23D180B30DB00B677C2 /* MailboxListCellDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxListCellDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB23E180B30DB00B677C2 /* MailboxPaneAccessoryView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxPaneAccessoryView.h; sourceTree = ""; }; + 1BFDB23F180B30DC00B677C2 /* MailboxPaneBottomShadowView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxPaneBottomShadowView.h; sourceTree = ""; }; + 1BFDB240180B30DC00B677C2 /* MailboxPaneBottomView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxPaneBottomView.h; sourceTree = ""; }; + 1BFDB241180B30DC00B677C2 /* MailboxUid-MessageListAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxUid-MessageListAdditions.h"; sourceTree = ""; }; + 1BFDB242180B30DC00B677C2 /* MailCopyCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailCopyCommand.h; sourceTree = ""; }; + 1BFDB243180B30DC00B677C2 /* MailDeleteCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailDeleteCommand.h; sourceTree = ""; }; + 1BFDB244180B30DC00B677C2 /* MailDocumentEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailDocumentEditor.h; sourceTree = ""; }; + 1BFDB245180B30DC00B677C2 /* MailDocumentEditor_Scripting.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailDocumentEditor_Scripting.h; sourceTree = ""; }; + 1BFDB246180B30DC00B677C2 /* MailEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailEmailImporter.h; sourceTree = ""; }; + 1BFDB247180B30DC00B677C2 /* MailFullScreenWindowDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailFullScreenWindowDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB248180B30DC00B677C2 /* MailInspectorBar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailInspectorBar.h; sourceTree = ""; }; + 1BFDB249180B30DC00B677C2 /* MailInspectorBarItemController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailInspectorBarItemController.h; sourceTree = ""; }; + 1BFDB24A180B30DC00B677C2 /* MailMediaBrowser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailMediaBrowser.h; sourceTree = ""; }; + 1BFDB24B180B30DC00B677C2 /* MailMoveCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailMoveCommand.h; sourceTree = ""; }; + 1BFDB24C180B30DC00B677C2 /* MailNotificationCenter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailNotificationCenter.h; sourceTree = ""; }; + 1BFDB24D180B30DC00B677C2 /* MailPopoverWell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailPopoverWell.h; sourceTree = ""; }; + 1BFDB24E180B30DC00B677C2 /* MailPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailPreferences.h; sourceTree = ""; }; + 1BFDB24F180B30DC00B677C2 /* MailScroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailScroller.h; sourceTree = ""; }; + 1BFDB250180B30DC00B677C2 /* MailSearchScopeView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailSearchScopeView.h; sourceTree = ""; }; + 1BFDB251180B30DC00B677C2 /* MailSorterPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailSorterPreferences.h; sourceTree = ""; }; + 1BFDB252180B30DC00B677C2 /* MailSplitView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailSplitView.h; sourceTree = ""; }; + 1BFDB253180B30DC00B677C2 /* MailTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailTableView.h; sourceTree = ""; }; + 1BFDB254180B30DC00B677C2 /* MailTableViewDelegateDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailTableViewDelegateDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB255180B30DC00B677C2 /* MailTextAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailTextAttachment.h; sourceTree = ""; }; + 1BFDB256180B30DC00B677C2 /* MailTimeMachineController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailTimeMachineController.h; sourceTree = ""; }; + 1BFDB257180B30DC00B677C2 /* MailToCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailToCommand.h; sourceTree = ""; }; + 1BFDB258180B30DC00B677C2 /* MailToolbar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailToolbar.h; sourceTree = ""; }; + 1BFDB259180B30DC00B677C2 /* MailToolbarBaselineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailToolbarBaselineView.h; sourceTree = ""; }; + 1BFDB25A180B30DC00B677C2 /* MailToolbarSpaceItemWithPin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailToolbarSpaceItemWithPin.h; sourceTree = ""; }; + 1BFDB25B180B30DC00B677C2 /* MailVerticalSplitView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailVerticalSplitView.h; sourceTree = ""; }; + 1BFDB25C180B30DC00B677C2 /* MailVerticalSplitViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailVerticalSplitViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB25D180B30DC00B677C2 /* MailWebViewEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailWebViewEditor.h; sourceTree = ""; }; + 1BFDB25E180B30DC00B677C2 /* MailWindowShadowLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailWindowShadowLayer.h; sourceTree = ""; }; + 1BFDB25F180B30DC00B677C2 /* MboxEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MboxEmailImporter.h; sourceTree = ""; }; + 1BFDB260180B30DC00B677C2 /* MemorySelfTestAutoTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MemorySelfTestAutoTest.h; sourceTree = ""; }; + 1BFDB261180B30DC00B677C2 /* MenuPassthroughView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MenuPassthroughView.h; sourceTree = ""; }; + 1BFDB262180B30DC00B677C2 /* Message-Chat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Message-Chat.h"; sourceTree = ""; }; + 1BFDB263180B30DC00B677C2 /* Message-MailViewerAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Message-MailViewerAdditions.h"; sourceTree = ""; }; + 1BFDB264180B30DC00B677C2 /* MessageBodyScrollView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageBodyScrollView.h; sourceTree = ""; }; + 1BFDB265180B30DC00B677C2 /* MessageContentController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageContentController.h; sourceTree = ""; }; + 1BFDB266180B30DC00B677C2 /* MessageContentDisplay-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageContentDisplay-Protocol.h"; sourceTree = ""; }; + 1BFDB267180B30DC00B677C2 /* MessageContentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageContentView.h; sourceTree = ""; }; + 1BFDB268180B30DC00B677C2 /* MessageDeletionTransfer-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageDeletionTransfer-Protocol.h"; sourceTree = ""; }; + 1BFDB269180B30DC00B677C2 /* MessageDragHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageDragHelper.h; sourceTree = ""; }; + 1BFDB26A180B30DC00B677C2 /* MessageEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageEditor.h; sourceTree = ""; }; + 1BFDB26B180B30DC00B677C2 /* MessageHeaderDisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageHeaderDisplay.h; sourceTree = ""; }; + 1BFDB26C180B30DC00B677C2 /* MessageHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageHeaderView.h; sourceTree = ""; }; + 1BFDB26D180B30DC00B677C2 /* MessageListCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListCell.h; sourceTree = ""; }; + 1BFDB26E180B30DC00B677C2 /* MessageListColumnManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListColumnManager.h; sourceTree = ""; }; + 1BFDB26F180B30DC00B677C2 /* MessageListContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListContainerView.h; sourceTree = ""; }; + 1BFDB270180B30DC00B677C2 /* MessageListHeaderCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListHeaderCell.h; sourceTree = ""; }; + 1BFDB271180B30DC00B677C2 /* MessageMall-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageMall-Protocol.h"; sourceTree = ""; }; + 1BFDB272180B30DC00B677C2 /* MessageMegaMall.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageMegaMall.h; sourceTree = ""; }; + 1BFDB273180B30DC00B677C2 /* MessageMiniMall.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageMiniMall.h; sourceTree = ""; }; + 1BFDB274180B30DC00B677C2 /* MessagePrinter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessagePrinter.h; sourceTree = ""; }; + 1BFDB275180B30DC00B677C2 /* MessageSaver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageSaver.h; sourceTree = ""; }; + 1BFDB276180B30DC00B677C2 /* MessageSortContext-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageSortContext-Protocol.h"; sourceTree = ""; }; + 1BFDB277180B30DC00B677C2 /* MessagesTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessagesTableView.h; sourceTree = ""; }; + 1BFDB278180B30DC00B677C2 /* MessageTextContainer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageTextContainer.h; sourceTree = ""; }; + 1BFDB279180B30DC00B677C2 /* MessageTextView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageTextView.h; sourceTree = ""; }; + 1BFDB27A180B30DC00B677C2 /* MessageTransfer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageTransfer.h; sourceTree = ""; }; + 1BFDB27B180B30DC00B677C2 /* MessageTransferDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageTransferDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB27C180B30DC00B677C2 /* MessageViewer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewer.h; sourceTree = ""; }; + 1BFDB27D180B30DC00B677C2 /* MessageViewerLazyPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewerLazyPopUpButton.h; sourceTree = ""; }; + 1BFDB27E180B30DC00B677C2 /* MessageViewerSearchField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewerSearchField.h; sourceTree = ""; }; + 1BFDB27F180B30DC00B677C2 /* MessageViewerSearchFieldFocusDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageViewerSearchFieldFocusDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB280180B30DC00B677C2 /* MessageViewingPane.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewingPane.h; sourceTree = ""; }; + 1BFDB281180B30DC00B677C2 /* MessageViewingPaneController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewingPaneController.h; sourceTree = ""; }; + 1BFDB282180B30DC00B677C2 /* MessageViewingState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewingState.h; sourceTree = ""; }; + 1BFDB283180B30DC00B677C2 /* MessageViewPerfTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewPerfTest.h; sourceTree = ""; }; + 1BFDB284180B30DC00B677C2 /* MessageWebHTMLView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageWebHTMLView.h; sourceTree = ""; }; + 1BFDB285180B30DC00B677C2 /* MessageWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageWebView.h; sourceTree = ""; }; + 1BFDB286180B30DC00B677C2 /* MessageWindowViewPerfTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageWindowViewPerfTest.h; sourceTree = ""; }; + 1BFDB287180B30DC00B677C2 /* MFAosImapAccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAosImapAccountDetails.h; sourceTree = ""; }; + 1BFDB288180B30DC00B677C2 /* MFMessageSortingValueDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFMessageSortingValueDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB289180B30DC00B677C2 /* MFUIMailbox-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFUIMailbox-Protocol.h"; sourceTree = ""; }; + 1BFDB28A180B30DC00B677C2 /* MFUserAgent-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFUserAgent-Protocol.h"; sourceTree = ""; }; + 1BFDB28B180B30DC00B677C2 /* ModalDimmingWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ModalDimmingWindow.h; sourceTree = ""; }; + 1BFDB28C180B30DC00B677C2 /* MouseTrackingWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MouseTrackingWindow.h; sourceTree = ""; }; + 1BFDB28D180B30DC00B677C2 /* MTMBufferedController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMBufferedController.h; sourceTree = ""; }; + 1BFDB28E180B30DC00B677C2 /* MTMBytesFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMBytesFormatter.h; sourceTree = ""; }; + 1BFDB28F180B30DC00B677C2 /* MTMDiskMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMDiskMessage.h; sourceTree = ""; }; + 1BFDB290180B30DC00B677C2 /* MTMFakeMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMFakeMailbox.h; sourceTree = ""; }; + 1BFDB291180B30DC00B677C2 /* MTMFakeMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMFakeMessage.h; sourceTree = ""; }; + 1BFDB292180B30DC00B677C2 /* MTMFlagsCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMFlagsCell.h; sourceTree = ""; }; + 1BFDB293180B30DC00B677C2 /* MTMFullWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMFullWindowController.h; sourceTree = ""; }; + 1BFDB294180B30DC00B677C2 /* MTMIndexedMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMIndexedMessage.h; sourceTree = ""; }; + 1BFDB295180B30DC00B677C2 /* MTMLoadingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMLoadingView.h; sourceTree = ""; }; + 1BFDB296180B30DC00B677C2 /* MTMMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMailbox.h; sourceTree = ""; }; + 1BFDB297180B30DC00B677C2 /* MTMMailboxChangedPredicate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMailboxChangedPredicate.h; sourceTree = ""; }; + 1BFDB298180B30DC00B677C2 /* MTMMailboxControllerProtocol-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MTMMailboxControllerProtocol-Protocol.h"; sourceTree = ""; }; + 1BFDB299180B30DC00B677C2 /* MTMMailboxFetcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMailboxFetcher.h; sourceTree = ""; }; + 1BFDB29A180B30DC00B677C2 /* MTMMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMessage.h; sourceTree = ""; }; + 1BFDB29B180B30DC00B677C2 /* MTMMessageChangedPredicate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMessageChangedPredicate.h; sourceTree = ""; }; + 1BFDB29C180B30DC00B677C2 /* MTMMessageColumnController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMessageColumnController.h; sourceTree = ""; }; + 1BFDB29D180B30DC00B677C2 /* MTMNoteCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMNoteCell.h; sourceTree = ""; }; + 1BFDB29E180B30DC00B677C2 /* MTMNumberCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMNumberCell.h; sourceTree = ""; }; + 1BFDB29F180B30DC00B677C2 /* MTMOutlineCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMOutlineCell.h; sourceTree = ""; }; + 1BFDB2A0180B30DC00B677C2 /* MTMOutlineTopLevelCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMOutlineTopLevelCell.h; sourceTree = ""; }; + 1BFDB2A1180B30DC00B677C2 /* MTMOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMOutlineView.h; sourceTree = ""; }; + 1BFDB2A2180B30DC00B677C2 /* MTMReadCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMReadCell.h; sourceTree = ""; }; + 1BFDB2A3180B30DC00B677C2 /* MTMScroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMScroller.h; sourceTree = ""; }; + 1BFDB2A4180B30DC00B677C2 /* MTMSpecialMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMSpecialMailbox.h; sourceTree = ""; }; + 1BFDB2A5180B30DC00B677C2 /* MTMTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMTableView.h; sourceTree = ""; }; + 1BFDB2A6180B30DC00B677C2 /* MTMWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMWindow.h; sourceTree = ""; }; + 1BFDB2A7180B30DC00B677C2 /* MTMWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMWindowController.h; sourceTree = ""; }; + 1BFDB2A8180B30DC00B677C2 /* MultiImageCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MultiImageCell.h; sourceTree = ""; }; + 1BFDB2A9180B30DC00B677C2 /* MultiSelectionPlaceholderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MultiSelectionPlaceholderView.h; sourceTree = ""; }; + 1BFDB2AA180B30DC00B677C2 /* MVComposeAccessoryViewOwner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MVComposeAccessoryViewOwner.h; sourceTree = ""; }; + 1BFDB2AB180B30DC00B677C2 /* MVLinkButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MVLinkButton.h; sourceTree = ""; }; + 1BFDB2AC180B30DC00B677C2 /* MVMailboxSelectionOwner-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MVMailboxSelectionOwner-Protocol.h"; sourceTree = ""; }; + 1BFDB2AD180B30DC00B677C2 /* MVMailBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MVMailBundle.h; sourceTree = ""; }; + 1BFDB2AE180B30DC00B677C2 /* MVMessageDisplayNotifications-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MVMessageDisplayNotifications-Protocol.h"; sourceTree = ""; }; + 1BFDB2AF180B30DC00B677C2 /* MVSelectionOwner-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MVSelectionOwner-Protocol.h"; sourceTree = ""; }; + 1BFDB2B0180B30DC00B677C2 /* MVTerminationHandler-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MVTerminationHandler-Protocol.h"; sourceTree = ""; }; + 1BFDB2B1180B30DC00B677C2 /* NetscapeEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NetscapeEmailImporter.h; sourceTree = ""; }; + 1BFDB2B2180B30DC00B677C2 /* NewMessageAttachmentAutoTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NewMessageAttachmentAutoTest.h; sourceTree = ""; }; + 1BFDB2B3180B30DC00B677C2 /* NewMessageAutoTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NewMessageAutoTest.h; sourceTree = ""; }; + 1BFDB2B4180B30DC00B677C2 /* NoteComposeBackEnd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoteComposeBackEnd.h; sourceTree = ""; }; + 1BFDB2B5180B30DC00B677C2 /* NoteDisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoteDisplay.h; sourceTree = ""; }; + 1BFDB2B6180B30DC00B677C2 /* NoteDocumentEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoteDocumentEditor.h; sourceTree = ""; }; + 1BFDB2B7180B30DC00B677C2 /* NoteScrollBarsView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoteScrollBarsView.h; sourceTree = ""; }; + 1BFDB2B8180B30DC00B677C2 /* NoteScroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoteScroller.h; sourceTree = ""; }; + 1BFDB2B9180B30DC00B677C2 /* NoteView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoteView.h; sourceTree = ""; }; + 1BFDB2BA180B30DC00B677C2 /* NoteWebViewEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoteWebViewEditor.h; sourceTree = ""; }; + 1BFDB2BB180B30DC00B677C2 /* NoteWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoteWindow.h; sourceTree = ""; }; + 1BFDB2BC180B30DC00B677C2 /* NoteWindowContentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoteWindowContentView.h; sourceTree = ""; }; + 1BFDB2BD180B30DC00B677C2 /* NSAlert-MFErrorSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAlert-MFErrorSupport.h"; sourceTree = ""; }; + 1BFDB2BE180B30DC00B677C2 /* NSAnimationDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAnimationDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2BF180B30DC00B677C2 /* NSApplicationDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSApplicationDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2C0180B30DC00B677C2 /* NSArray-AtomicAddress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-AtomicAddress.h"; sourceTree = ""; }; + 1BFDB2C1180B30DC00B677C2 /* NSAttributedString-AtomicAddress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-AtomicAddress.h"; sourceTree = ""; }; + 1BFDB2C2180B30DC00B677C2 /* NSAttributedString-MailAttributedStringToHTML.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MailAttributedStringToHTML.h"; sourceTree = ""; }; + 1BFDB2C3180B30DC00B677C2 /* NSAttributedString-MailTextAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MailTextAttachments.h"; sourceTree = ""; }; + 1BFDB2C4180B30DC00B677C2 /* NSAttributedString-ViewingStateAttachmentCaching.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-ViewingStateAttachmentCaching.h"; sourceTree = ""; }; + 1BFDB2C5180B30DC00B677C2 /* NSBezierPath-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSBezierPath-MailAdditions.h"; sourceTree = ""; }; + 1BFDB2C6180B30DC00B677C2 /* NSClipView-AutosizingScrollViewAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSClipView-AutosizingScrollViewAdditions.h"; sourceTree = ""; }; + 1BFDB2C7180B30DC00B677C2 /* NSClipView-ToReplaceViewWithOurOwn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSClipView-ToReplaceViewWithOurOwn.h"; sourceTree = ""; }; + 1BFDB2C8180B30DC00B677C2 /* NSControl-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSControl-MailAdditions.h"; sourceTree = ""; }; + 1BFDB2C9180B30DC00B677C2 /* NSControlTextEditingDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSControlTextEditingDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2CA180B30DC00B677C2 /* NSCopying-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCopying-Protocol.h"; sourceTree = ""; }; + 1BFDB2CB180B30DC00B677C2 /* NSDatePickerCellDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDatePickerCellDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2CC180B30DC00B677C2 /* NSEvent-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSEvent-MailAdditions.h"; sourceTree = ""; }; + 1BFDB2CD180B30DC00B677C2 /* NSEvent-MailViewerEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSEvent-MailViewerEvent.h"; sourceTree = ""; }; + 1BFDB2CE180B30DC00B677C2 /* NSFileManagerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileManagerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2CF180B30DC00B677C2 /* NSFont-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFont-MailAdditions.h"; sourceTree = ""; }; + 1BFDB2D0180B30DC00B677C2 /* NSFontManager-ToReplaceWithOurOwn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFontManager-ToReplaceWithOurOwn.h"; sourceTree = ""; }; + 1BFDB2D1180B30DC00B677C2 /* NSInspectorBarClient-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInspectorBarClient-Protocol.h"; sourceTree = ""; }; + 1BFDB2D2180B30DC00B677C2 /* NSInspectorBarDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInspectorBarDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2D3180B30DC00B677C2 /* NSInspectorBarItemController-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInspectorBarItemController-Protocol.h"; sourceTree = ""; }; + 1BFDB2D4180B30DC00B677C2 /* NSLayoutManagerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSLayoutManagerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2D5180B30DC00B677C2 /* NSMenuDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMenuDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2D6180B30DC00B677C2 /* NSMutableArray-Shuffle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableArray-Shuffle.h"; sourceTree = ""; }; + 1BFDB2D7180B30DC00B677C2 /* NSMutableAttributedString-AdjustFontSize.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableAttributedString-AdjustFontSize.h"; sourceTree = ""; }; + 1BFDB2D8180B30DC00B677C2 /* NSMutableAttributedString-MailTextAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableAttributedString-MailTextAttachments.h"; sourceTree = ""; }; + 1BFDB2D9180B30DC00B677C2 /* NSNib-MailSharedNibLoading.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNib-MailSharedNibLoading.h"; sourceTree = ""; }; + 1BFDB2DA180B30DC00B677C2 /* NSNotification-MailNotificationAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNotification-MailNotificationAdditions.h"; sourceTree = ""; }; + 1BFDB2DB180B30DC00B677C2 /* NSNotificationCenter-ToReplaceCenterWithOurOwn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNotificationCenter-ToReplaceCenterWithOurOwn.h"; sourceTree = ""; }; + 1BFDB2DC180B30DC00B677C2 /* NSObject-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-Protocol.h"; sourceTree = ""; }; + 1BFDB2DD180B30DC00B677C2 /* NSOpenSavePanelDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOpenSavePanelDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2DE180B30DD00B677C2 /* NSOutlineView-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOutlineView-MailAdditions.h"; sourceTree = ""; }; + 1BFDB2DF180B30DD00B677C2 /* NSOutlineViewDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOutlineViewDataSource-Protocol.h"; sourceTree = ""; }; + 1BFDB2E0180B30DD00B677C2 /* NSOutlineViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOutlineViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2E1180B30DD00B677C2 /* NSPopUpButton-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPopUpButton-MailAdditions.h"; sourceTree = ""; }; + 1BFDB2E2180B30DD00B677C2 /* NSPreferences-ActiveModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPreferences-ActiveModule.h"; sourceTree = ""; }; + 1BFDB2E3180B30DD00B677C2 /* NSPreferencesModule-ActiveModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPreferencesModule-ActiveModule.h"; sourceTree = ""; }; + 1BFDB2E4180B30DD00B677C2 /* NSPrintPanelAccessorizing-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPrintPanelAccessorizing-Protocol.h"; sourceTree = ""; }; + 1BFDB2E5180B30DD00B677C2 /* NSSpeechSynthesizerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSpeechSynthesizerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2E6180B30DD00B677C2 /* NSSpellChecker-AllocationOverride.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSpellChecker-AllocationOverride.h"; sourceTree = ""; }; + 1BFDB2E7180B30DD00B677C2 /* NSSplitViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSplitViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2E8180B30DD00B677C2 /* NSString-AtomicAddress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-AtomicAddress.h"; sourceTree = ""; }; + 1BFDB2E9180B30DD00B677C2 /* NSString-FindPanelSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-FindPanelSupport.h"; sourceTree = ""; }; + 1BFDB2EA180B30DD00B677C2 /* NSString-HTMLConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-HTMLConversion.h"; sourceTree = ""; }; + 1BFDB2EB180B30DD00B677C2 /* NSString-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MailAdditions.h"; sourceTree = ""; }; + 1BFDB2EC180B30DD00B677C2 /* NSString-ToDoAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-ToDoAdditions.h"; sourceTree = ""; }; + 1BFDB2ED180B30DD00B677C2 /* NSTableViewDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTableViewDataSource-Protocol.h"; sourceTree = ""; }; + 1BFDB2EE180B30DD00B677C2 /* NSTableViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTableViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2EF180B30DD00B677C2 /* NSTabViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTabViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2F0180B30DD00B677C2 /* NSTextAttachmentCell-ForNeatAttachmentFeatures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextAttachmentCell-ForNeatAttachmentFeatures.h"; sourceTree = ""; }; + 1BFDB2F1180B30DD00B677C2 /* NSTextDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2F2180B30DD00B677C2 /* NSTextFieldCell-ShouldntTheAppKitBeDoingThis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFieldCell-ShouldntTheAppKitBeDoingThis.h"; sourceTree = ""; }; + 1BFDB2F3180B30DD00B677C2 /* NSTextFieldDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFieldDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2F4180B30DD00B677C2 /* NSTextInput-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextInput-Protocol.h"; sourceTree = ""; }; + 1BFDB2F5180B30DD00B677C2 /* NSTextInputClient-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextInputClient-Protocol.h"; sourceTree = ""; }; + 1BFDB2F6180B30DD00B677C2 /* NSTextStorage-AttachmentAttrFixCategory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextStorage-AttachmentAttrFixCategory.h"; sourceTree = ""; }; + 1BFDB2F7180B30DD00B677C2 /* NSTextView-AtomicAddress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextView-AtomicAddress.h"; sourceTree = ""; }; + 1BFDB2F8180B30DD00B677C2 /* NSTextView-FindPanelSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextView-FindPanelSupport.h"; sourceTree = ""; }; + 1BFDB2F9180B30DD00B677C2 /* NSTextViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2FA180B30DD00B677C2 /* NSToolbar-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSToolbar-MailAdditions.h"; sourceTree = ""; }; + 1BFDB2FB180B30DD00B677C2 /* NSToolbarDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSToolbarDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2FC180B30DD00B677C2 /* NSURLConnectionDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURLConnectionDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB2FD180B30DD00B677C2 /* NSUserDefaults-FontAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserDefaults-FontAdditions.h"; sourceTree = ""; }; + 1BFDB2FE180B30DD00B677C2 /* NSUserInterfaceValidations-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserInterfaceValidations-Protocol.h"; sourceTree = ""; }; + 1BFDB2FF180B30DD00B677C2 /* NSView-AttachmentDragSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-AttachmentDragSession.h"; sourceTree = ""; }; + 1BFDB300180B30DD00B677C2 /* NSView-FavoriteButtonAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-FavoriteButtonAnimation.h"; sourceTree = ""; }; + 1BFDB301180B30DD00B677C2 /* NSView-LocatingFrameViews.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-LocatingFrameViews.h"; sourceTree = ""; }; + 1BFDB302180B30DD00B677C2 /* NSView-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MailAdditions.h"; sourceTree = ""; }; + 1BFDB303180B30DD00B677C2 /* NSView-MailClipViewAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MailClipViewAdditions.h"; sourceTree = ""; }; + 1BFDB304180B30DD00B677C2 /* NSView-MailQuickLookAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MailQuickLookAdditions.h"; sourceTree = ""; }; + 1BFDB305180B30DD00B677C2 /* NSView-MailSplitViewAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MailSplitViewAdditions.h"; sourceTree = ""; }; + 1BFDB306180B30DD00B677C2 /* NSView-MailToolbarBaselineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MailToolbarBaselineView.h"; sourceTree = ""; }; + 1BFDB307180B30DD00B677C2 /* NSView-ResizingAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-ResizingAnimation.h"; sourceTree = ""; }; + 1BFDB308180B30DD00B677C2 /* NSView-RichTableCellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-RichTableCellView.h"; sourceTree = ""; }; + 1BFDB309180B30DD00B677C2 /* NSView-SlidingExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-SlidingExtras.h"; sourceTree = ""; }; + 1BFDB30A180B30DD00B677C2 /* NSView-TilingSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-TilingSupport.h"; sourceTree = ""; }; + 1BFDB30B180B30DD00B677C2 /* NSWindow-BetterDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSWindow-BetterDescription.h"; sourceTree = ""; }; + 1BFDB30C180B30DD00B677C2 /* NSWindow-MailWindowAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSWindow-MailWindowAdditions.h"; sourceTree = ""; }; + 1BFDB30D180B30DD00B677C2 /* NSWindowDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSWindowDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB30E180B30DD00B677C2 /* OofPanelController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OofPanelController.h; sourceTree = ""; }; + 1BFDB30F180B30DD00B677C2 /* OptionalView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OptionalView.h; sourceTree = ""; }; + 1BFDB310180B30DD00B677C2 /* OutlineViewProgressIndicatorsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OutlineViewProgressIndicatorsController.h; sourceTree = ""; }; + 1BFDB311180B30DD00B677C2 /* PaddingLinkTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PaddingLinkTextField.h; sourceTree = ""; }; + 1BFDB312180B30DD00B677C2 /* PaddingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PaddingView.h; sourceTree = ""; }; + 1BFDB313180B30DD00B677C2 /* PasswordPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PasswordPanel.h; sourceTree = ""; }; + 1BFDB314180B30DD00B677C2 /* PDFAttachmentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PDFAttachmentView.h; sourceTree = ""; }; + 1BFDB315180B30DD00B677C2 /* PersonCardDisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PersonCardDisplay.h; sourceTree = ""; }; + 1BFDB316180B30DD00B677C2 /* PhotoExporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PhotoExporter.h; sourceTree = ""; }; + 1BFDB317180B30DD00B677C2 /* POPAccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POPAccountDetails.h; sourceTree = ""; }; + 1BFDB318180B30DD00B677C2 /* POPAccountSpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POPAccountSpecialMailboxes.h; sourceTree = ""; }; + 1BFDB319180B30DD00B677C2 /* POPQuota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POPQuota.h; sourceTree = ""; }; + 1BFDB31A180B30DD00B677C2 /* PresenceTracker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PresenceTracker.h; sourceTree = ""; }; + 1BFDB31B180B30DD00B677C2 /* PrintingAccessoryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingAccessoryViewController.h; sourceTree = ""; }; + 1BFDB31C180B30DD00B677C2 /* ProgressIndicatorCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProgressIndicatorCell.h; sourceTree = ""; }; + 1BFDB31D180B30DD00B677C2 /* PullQuoteAbbreviator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PullQuoteAbbreviator.h; sourceTree = ""; }; + 1BFDB31E180B30DD00B677C2 /* QLPreviewPanelDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewPanelDataSource-Protocol.h"; sourceTree = ""; }; + 1BFDB31F180B30DD00B677C2 /* QLPreviewPanelDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewPanelDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB320180B30DD00B677C2 /* QLSeamlessOpenerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLSeamlessOpenerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB321180B30DD00B677C2 /* QuickTimeAttachmentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuickTimeAttachmentView.h; sourceTree = ""; }; + 1BFDB322180B30DD00B677C2 /* Quota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Quota.h; sourceTree = ""; }; + 1BFDB323180B30DD00B677C2 /* QuotaBar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuotaBar.h; sourceTree = ""; }; + 1BFDB324180B30DD00B677C2 /* RecentsSearchOperationDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "RecentsSearchOperationDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB325180B30DD00B677C2 /* RedundantContentAbbreviator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RedundantContentAbbreviator.h; sourceTree = ""; }; + 1BFDB326180B30DD00B677C2 /* RedundantContentCluster.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RedundantContentCluster.h; sourceTree = ""; }; + 1BFDB327180B30DD00B677C2 /* RemoteStoreAccountSpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteStoreAccountSpecialMailboxes.h; sourceTree = ""; }; + 1BFDB328180B30DD00B677C2 /* RemoteStoreQuota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteStoreQuota.h; sourceTree = ""; }; + 1BFDB329180B30DD00B677C2 /* ReplyAutoTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ReplyAutoTest.h; sourceTree = ""; }; + 1BFDB32A180B30DD00B677C2 /* RichMessageListSortView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RichMessageListSortView.h; sourceTree = ""; }; + 1BFDB32B180B30DD00B677C2 /* RichTableCellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RichTableCellView.h; sourceTree = ""; }; + 1BFDB32C180B30DD00B677C2 /* RichTableRowView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RichTableRowView.h; sourceTree = ""; }; + 1BFDB32D180B30DD00B677C2 /* RolloverActionButtonsView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RolloverActionButtonsView.h; sourceTree = ""; }; + 1BFDB32E180B30DD00B677C2 /* RolloverButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RolloverButtonCell.h; sourceTree = ""; }; + 1BFDB32F180B30DD00B677C2 /* RoundedCornersView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RoundedCornersView.h; sourceTree = ""; }; + 1BFDB330180B30DD00B677C2 /* RoundedRectTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RoundedRectTextField.h; sourceTree = ""; }; + 1BFDB331180B30DD00B677C2 /* RSSAddFeedController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RSSAddFeedController.h; sourceTree = ""; }; + 1BFDB332180B30DD00B677C2 /* RSSArticleDisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RSSArticleDisplay.h; sourceTree = ""; }; + 1BFDB333180B30DD00B677C2 /* RSSAuthenticationPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RSSAuthenticationPanel.h; sourceTree = ""; }; + 1BFDB334180B30DD00B677C2 /* RSSFeedSubscriber.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RSSFeedSubscriber.h; sourceTree = ""; }; + 1BFDB335180B30DD00B677C2 /* RSSNonBlockingPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RSSNonBlockingPanel.h; sourceTree = ""; }; + 1BFDB336180B30DD00B677C2 /* RSSPanelAuthenticationHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RSSPanelAuthenticationHandler.h; sourceTree = ""; }; + 1BFDB337180B30DD00B677C2 /* RSSPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RSSPreferences.h; sourceTree = ""; }; + 1BFDB338180B30DD00B677C2 /* ScriptableMessageTextStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScriptableMessageTextStorage.h; sourceTree = ""; }; + 1BFDB339180B30DD00B677C2 /* SearchScopeDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SearchScopeDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB33A180B30DD00B677C2 /* SegmentedToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SegmentedToolbarItem.h; sourceTree = ""; }; + 1BFDB33B180B30DD00B677C2 /* SegmentedToolbarItemSegmentedCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SegmentedToolbarItemSegmentedCell.h; sourceTree = ""; }; + 1BFDB33C180B30DD00B677C2 /* SegmentedToolbarItemSegmentItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SegmentedToolbarItemSegmentItem.h; sourceTree = ""; }; + 1BFDB33D180B30DD00B677C2 /* SelfAnimatingProgressIndicator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SelfAnimatingProgressIndicator.h; sourceTree = ""; }; + 1BFDB33E180B30DD00B677C2 /* SenderImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SenderImageView.h; sourceTree = ""; }; + 1BFDB33F180B30DD00B677C2 /* SenderPhotoView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SenderPhotoView.h; sourceTree = ""; }; + 1BFDB340180B30DD00B677C2 /* Signature.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Signature.h; sourceTree = ""; }; + 1BFDB341180B30DD00B677C2 /* SignatureBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SignatureBundle.h; sourceTree = ""; }; + 1BFDB342180B30DD00B677C2 /* SignaturePreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SignaturePreferences.h; sourceTree = ""; }; + 1BFDB343180B30DD00B677C2 /* SignedTextAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SignedTextAttachment.h; sourceTree = ""; }; + 1BFDB344180B30DD00B677C2 /* SimpleLinkAbbreviator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleLinkAbbreviator.h; sourceTree = ""; }; + 1BFDB345180B30DD00B677C2 /* SimpleLinkWithDottedBlockquoteBarAbbreviator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleLinkWithDottedBlockquoteBarAbbreviator.h; sourceTree = ""; }; + 1BFDB346180B30DD00B677C2 /* SingleMessageViewer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SingleMessageViewer.h; sourceTree = ""; }; + 1BFDB347180B30DD00B677C2 /* SlidingAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SlidingAnimation.h; sourceTree = ""; }; + 1BFDB348180B30DD00B677C2 /* SlidingAnimationDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SlidingAnimationDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB349180B30DD00B677C2 /* SlidingViewsBar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SlidingViewsBar.h; sourceTree = ""; }; + 1BFDB34A180B30DD00B677C2 /* SmartMailboxEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SmartMailboxEditor.h; sourceTree = ""; }; + 1BFDB34B180B30DD00B677C2 /* SMTPSettings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SMTPSettings.h; sourceTree = ""; }; + 1BFDB34C180B30DD00B677C2 /* SortBarButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SortBarButton.h; sourceTree = ""; }; + 1BFDB34D180B30DD00B677C2 /* SoundPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SoundPopUpButton.h; sourceTree = ""; }; + 1BFDB34E180B30DD00B677C2 /* SpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpecialMailboxes.h; sourceTree = ""; }; + 1BFDB34F180B30DD00B677C2 /* SplitterAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SplitterAnimation.h; sourceTree = ""; }; + 1BFDB350180B30DD00B677C2 /* SpotlightBar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpotlightBar.h; sourceTree = ""; }; + 1BFDB351180B30DD00B677C2 /* StarFieldController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StarFieldController.h; sourceTree = ""; }; + 1BFDB352180B30DD00B677C2 /* StartupManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StartupManager.h; sourceTree = ""; }; + 1BFDB353180B30DD00B677C2 /* Stationery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Stationery.h; sourceTree = ""; }; + 1BFDB354180B30DD00B677C2 /* StationeryCompositeImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryCompositeImage.h; sourceTree = ""; }; + 1BFDB355180B30DE00B677C2 /* StationeryCompositeImageMask.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryCompositeImageMask.h; sourceTree = ""; }; + 1BFDB356180B30DE00B677C2 /* StationeryController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryController.h; sourceTree = ""; }; + 1BFDB357180B30DE00B677C2 /* StationeryDynamicElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryDynamicElement.h; sourceTree = ""; }; + 1BFDB358180B30DE00B677C2 /* StationeryLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryLoader.h; sourceTree = ""; }; + 1BFDB359180B30DE00B677C2 /* StationerySelector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationerySelector.h; sourceTree = ""; }; + 1BFDB35A180B30DE00B677C2 /* StatusCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StatusCell.h; sourceTree = ""; }; + 1BFDB35B180B30DE00B677C2 /* SubjectFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SubjectFormatter.h; sourceTree = ""; }; + 1BFDB35C180B30DE00B677C2 /* SyncableApp-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SyncableApp-Protocol.h"; sourceTree = ""; }; + 1BFDB35D180B30DE00B677C2 /* SyncableDataInterestedParty-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SyncableDataInterestedParty-Protocol.h"; sourceTree = ""; }; + 1BFDB35E180B30DE00B677C2 /* SyncableDataOwner-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SyncableDataOwner-Protocol.h"; sourceTree = ""; }; + 1BFDB35F180B30DE00B677C2 /* TableHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableHeaderView.h; sourceTree = ""; }; + 1BFDB360180B30DE00B677C2 /* TableViewManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableViewManager.h; sourceTree = ""; }; + 1BFDB361180B30DE00B677C2 /* TemporaryAttachmentOpener.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TemporaryAttachmentOpener.h; sourceTree = ""; }; + 1BFDB362180B30DE00B677C2 /* TemporaryItemManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TemporaryItemManager.h; sourceTree = ""; }; + 1BFDB363180B30DE00B677C2 /* TextButtonToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextButtonToolbarItem.h; sourceTree = ""; }; + 1BFDB364180B30DE00B677C2 /* TextEncodingMenuDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextEncodingMenuDelegate.h; sourceTree = ""; }; + 1BFDB365180B30DE00B677C2 /* TextMessageDisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextMessageDisplay.h; sourceTree = ""; }; + 1BFDB366180B30DE00B677C2 /* ThreadDisclosureTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThreadDisclosureTextField.h; sourceTree = ""; }; + 1BFDB367180B30DE00B677C2 /* ThumbnailButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThumbnailButtonCell.h; sourceTree = ""; }; + 1BFDB368180B30DE00B677C2 /* ThumbnailMatrix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThumbnailMatrix.h; sourceTree = ""; }; + 1BFDB369180B30DE00B677C2 /* ThunderbirdEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThunderbirdEmailImporter.h; sourceTree = ""; }; + 1BFDB36A180B30DE00B677C2 /* TilingWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TilingWebView.h; sourceTree = ""; }; + 1BFDB36B180B30DE00B677C2 /* TransparentImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TransparentImageView.h; sourceTree = ""; }; + 1BFDB36C180B30DE00B677C2 /* TypeAheadWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TypeAheadWindow.h; sourceTree = ""; }; + 1BFDB36D180B30DE00B677C2 /* UncommentedAddressCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UncommentedAddressCommand.h; sourceTree = ""; }; + 1BFDB36E180B30DE00B677C2 /* UnfoldAnimationController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UnfoldAnimationController.h; sourceTree = ""; }; + 1BFDB36F180B30DE00B677C2 /* VerticallyCenteredTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VerticallyCenteredTextFieldCell.h; sourceTree = ""; }; + 1BFDB370180B30DE00B677C2 /* ViewerPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewerPreferences.h; sourceTree = ""; }; + 1BFDB371180B30DE00B677C2 /* ViewFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewFactory.h; sourceTree = ""; }; + 1BFDB372180B30DE00B677C2 /* ViewTextAttachmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewTextAttachmentCell.h; sourceTree = ""; }; + 1BFDB373180B30DE00B677C2 /* WebComposeMessageContents.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebComposeMessageContents.h; sourceTree = ""; }; + 1BFDB374180B30DE00B677C2 /* WebFrame-ScrollingAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebFrame-ScrollingAdditions.h"; sourceTree = ""; }; + 1BFDB375180B30DE00B677C2 /* WebFrame-SizingExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebFrame-SizingExtras.h"; sourceTree = ""; }; + 1BFDB376180B30DE00B677C2 /* WebHTMLView-FindPanelStuff.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebHTMLView-FindPanelStuff.h"; sourceTree = ""; }; + 1BFDB377180B30DE00B677C2 /* WebHTMLView-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebHTMLView-MailAdditions.h"; sourceTree = ""; }; + 1BFDB378180B30DE00B677C2 /* WebHTMLView-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebHTMLView-MailExtras.h"; sourceTree = ""; }; + 1BFDB379180B30DE00B677C2 /* WebHTMLView-ToReplaceViewWithOurOwn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebHTMLView-ToReplaceViewWithOurOwn.h"; sourceTree = ""; }; + 1BFDB37A180B30DE00B677C2 /* WebMessageController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebMessageController.h; sourceTree = ""; }; + 1BFDB37B180B30DE00B677C2 /* WebMessageDisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebMessageDisplay.h; sourceTree = ""; }; + 1BFDB37C180B30DE00B677C2 /* WebMessageDocument-Attachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebMessageDocument-Attachments.h"; sourceTree = ""; }; + 1BFDB37D180B30DE00B677C2 /* WebPreferences-MessageDefaultsSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebPreferences-MessageDefaultsSupport.h"; sourceTree = ""; }; + 1BFDB37E180B30DE00B677C2 /* WebView-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebView-MailExtras.h"; sourceTree = ""; }; + 1BFDB37F180B30DE00B677C2 /* WebViewEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebViewEditor.h; sourceTree = ""; }; + 1BFDB380180B30DE00B677C2 /* WebViewLoadOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebViewLoadOperation.h; sourceTree = ""; }; + 1BFDB381180B30DE00B677C2 /* WindowTransformAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WindowTransformAnimation.h; sourceTree = ""; }; + 1BFDB383180B30DE00B677C2 /* __MFCallStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = __MFCallStack.h; sourceTree = ""; }; + 1BFDB384180B30DE00B677C2 /* _ActivityAggregateArrayController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ActivityAggregateArrayController.h; sourceTree = ""; }; + 1BFDB385180B30DE00B677C2 /* _ActivityMonitorMultiTarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ActivityMonitorMultiTarget.h; sourceTree = ""; }; + 1BFDB386180B30DE00B677C2 /* _AppleScriptHeaderRecord.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AppleScriptHeaderRecord.h; sourceTree = ""; }; + 1BFDB387180B30DE00B677C2 /* _AppleTokenSASLClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AppleTokenSASLClient.h; sourceTree = ""; }; + 1BFDB388180B30DE00B677C2 /* _ConversationsMessageCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ConversationsMessageCollector.h; sourceTree = ""; }; + 1BFDB389180B30DE00B677C2 /* _DataCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _DataCollector.h; sourceTree = ""; }; + 1BFDB38A180B30DE00B677C2 /* _ExternalSASLClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ExternalSASLClient.h; sourceTree = ""; }; + 1BFDB38B180B30DE00B677C2 /* _FormatFlowedWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _FormatFlowedWriter.h; sourceTree = ""; }; + 1BFDB38C180B30DE00B677C2 /* _GoogleAccountSetupEnabler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _GoogleAccountSetupEnabler.h; sourceTree = ""; }; + 1BFDB38D180B30DE00B677C2 /* _IMAPClientSimulatedSelectOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _IMAPClientSimulatedSelectOperation.h; sourceTree = ""; }; + 1BFDB38E180B30DE00B677C2 /* _IMAPFetchUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _IMAPFetchUnit.h; sourceTree = ""; }; + 1BFDB38F180B30DE00B677C2 /* _IMAPMailboxDeletionQueueEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _IMAPMailboxDeletionQueueEntry.h; sourceTree = ""; }; + 1BFDB390180B30DE00B677C2 /* _ISPLocalAccountSettingsManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ISPLocalAccountSettingsManager.h; sourceTree = ""; }; + 1BFDB391180B30DE00B677C2 /* _ISPOnlineAccountSettingsManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ISPOnlineAccountSettingsManager.h; sourceTree = ""; }; + 1BFDB392180B30DE00B677C2 /* _LibraryStoreMessageConsumer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _LibraryStoreMessageConsumer.h; sourceTree = ""; }; + 1BFDB393180B30DE00B677C2 /* _LibraryThreadRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _LibraryThreadRequest.h; sourceTree = ""; }; + 1BFDB394180B30DE00B677C2 /* _LibSasl2SASLClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _LibSasl2SASLClient.h; sourceTree = ""; }; + 1BFDB395180B30DE00B677C2 /* _MailboxUidChildrenEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailboxUidChildrenEnumerator.h; sourceTree = ""; }; + 1BFDB396180B30DE00B677C2 /* _MailboxUidEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailboxUidEnumerator.h; sourceTree = ""; }; + 1BFDB397180B30DE00B677C2 /* _MatadorResultCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MatadorResultCollector.h; sourceTree = ""; }; + 1BFDB398180B30DE00B677C2 /* _MessageCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MessageCollector.h; sourceTree = ""; }; + 1BFDB399180B30DE00B677C2 /* _MFAddressManagerCachedImageValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFAddressManagerCachedImageValue.h; sourceTree = ""; }; + 1BFDB39A180B30DE00B677C2 /* _MFConversationCalculationContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFConversationCalculationContext.h; sourceTree = ""; }; + 1BFDB39B180B30DE00B677C2 /* _MFFlagCheckInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFFlagCheckInfo.h; sourceTree = ""; }; + 1BFDB39C180B30DE00B677C2 /* _MFInvocationOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFInvocationOperation.h; sourceTree = ""; }; + 1BFDB39D180B30DE00B677C2 /* _MFMessageSortingValueColor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueColor.h; sourceTree = ""; }; + 1BFDB39E180B30DE00B677C2 /* _MFMessageSortingValueDateLastViewed.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueDateLastViewed.h; sourceTree = ""; }; + 1BFDB39F180B30DE00B677C2 /* _MFMessageSortingValueDateReceived.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueDateReceived.h; sourceTree = ""; }; + 1BFDB3A0180B30DE00B677C2 /* _MFMessageSortingValueDateSent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueDateSent.h; sourceTree = ""; }; + 1BFDB3A1180B30DE00B677C2 /* _MFMessageSortingValueLibraryID.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueLibraryID.h; sourceTree = ""; }; + 1BFDB3A2180B30DE00B677C2 /* _MFMessageSortingValueMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueMailbox.h; sourceTree = ""; }; + 1BFDB3A3180B30DE00B677C2 /* _MFMessageSortingValueMessageFlags.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueMessageFlags.h; sourceTree = ""; }; + 1BFDB3A4180B30DE00B677C2 /* _MFMessageSortingValueMessageSize.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueMessageSize.h; sourceTree = ""; }; + 1BFDB3A5180B30DE00B677C2 /* _MFMessageSortingValueNumberOfAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueNumberOfAttachments.h; sourceTree = ""; }; + 1BFDB3A6180B30DE00B677C2 /* _MFMessageSortingValueSender.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueSender.h; sourceTree = ""; }; + 1BFDB3A7180B30DE00B677C2 /* _MFMessageSortingValueSenderOnline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueSenderOnline.h; sourceTree = ""; }; + 1BFDB3A8180B30DE00B677C2 /* _MFMessageSortingValueSubject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueSubject.h; sourceTree = ""; }; + 1BFDB3A9180B30DE00B677C2 /* _MFMessageSortingValueTo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueTo.h; sourceTree = ""; }; + 1BFDB3AA180B30DE00B677C2 /* _MFMessageSortingValueUid.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFMessageSortingValueUid.h; sourceTree = ""; }; + 1BFDB3AB180B30DE00B677C2 /* _MFRedundantTextIdentifierParseContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFRedundantTextIdentifierParseContext.h; sourceTree = ""; }; + 1BFDB3AC180B30DE00B677C2 /* _MFRedundantTextIdentifierSolutionContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFRedundantTextIdentifierSolutionContext.h; sourceTree = ""; }; + 1BFDB3AD180B30DE00B677C2 /* _MFRedundantTextIdentifierSolutionGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFRedundantTextIdentifierSolutionGenerator.h; sourceTree = ""; }; + 1BFDB3AE180B30DE00B677C2 /* _MFZipStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFZipStream.h; sourceTree = ""; }; + 1BFDB3AF180B30DE00B677C2 /* _MFZombie_.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MFZombie_.h; sourceTree = ""; }; + 1BFDB3B0180B30DE00B677C2 /* _MimeEnrichedReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MimeEnrichedReader.h; sourceTree = ""; }; + 1BFDB3B1180B30DE00B677C2 /* _MimeEnrichedWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MimeEnrichedWriter.h; sourceTree = ""; }; + 1BFDB3B2180B30DE00B677C2 /* _MimePartEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MimePartEnumerator.h; sourceTree = ""; }; + 1BFDB3B3180B30DE00B677C2 /* _NonContentSmartMailboxUnreadCountManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _NonContentSmartMailboxUnreadCountManager.h; sourceTree = ""; }; + 1BFDB3B4180B30DE00B677C2 /* _NSDataMessageStoreMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _NSDataMessageStoreMessage.h; sourceTree = ""; }; + 1BFDB3B5180B30DE00B677C2 /* _NSSocket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _NSSocket.h; sourceTree = ""; }; + 1BFDB3B6180B30DE00B677C2 /* _OutgoingMessageBody.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _OutgoingMessageBody.h; sourceTree = ""; }; + 1BFDB3B7180B30DE00B677C2 /* _ProgressHandlerMonitorContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ProgressHandlerMonitorContext.h; sourceTree = ""; }; + 1BFDB3B8180B30DE00B677C2 /* _RootlessMailboxUid.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _RootlessMailboxUid.h; sourceTree = ""; }; + 1BFDB3B9180B30DE00B677C2 /* _SeenMessagesStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SeenMessagesStore.h; sourceTree = ""; }; + 1BFDB3BA180B30DE00B677C2 /* _SetFlags.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SetFlags.h; sourceTree = ""; }; + 1BFDB3BB180B30DE00B677C2 /* _SmartMailboxesEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SmartMailboxesEnumerator.h; sourceTree = ""; }; + 1BFDB3BC180B30DE00B677C2 /* _WriteSyncStateOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WriteSyncStateOperation.h; sourceTree = ""; }; + 1BFDB3BD180B30DE00B677C2 /* ABAddressBook-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABAddressBook-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB3BE180B30DE00B677C2 /* ABGroup-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABGroup-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB3BF180B30DE00B677C2 /* ABImageClient-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABImageClient-Protocol.h"; sourceTree = ""; }; + 1BFDB3C0180B30DE00B677C2 /* ABLDAP_ResultElement-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABLDAP_ResultElement-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB3C1180B30DE00B677C2 /* ABMailRecent-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABMailRecent-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB3C2180B30DE00B677C2 /* ABPerson-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABPerson-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB3C3180B30DE00B677C2 /* ABRecord-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABRecord-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB3C4180B30DE00B677C2 /* Account.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Account.h; sourceTree = ""; }; + 1BFDB3C5180B30DE00B677C2 /* AccountAutoconfigurator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountAutoconfigurator.h; sourceTree = ""; }; + 1BFDB3C6180B30DE00B677C2 /* AccountSetupEnabler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountSetupEnabler.h; sourceTree = ""; }; + 1BFDB3C7180B30DE00B677C2 /* AccountSetupValidator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountSetupValidator.h; sourceTree = ""; }; + 1BFDB3C8180B30DE00B677C2 /* AccountSetupValidatorAttempt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountSetupValidatorAttempt.h; sourceTree = ""; }; + 1BFDB3C9180B30DE00B677C2 /* AccountStatus.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountStatus.h; sourceTree = ""; }; + 1BFDB3CA180B30DE00B677C2 /* ActivityAggregate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityAggregate.h; sourceTree = ""; }; + 1BFDB3CB180B30DE00B677C2 /* ActivityAggregator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityAggregator.h; sourceTree = ""; }; + 1BFDB3CC180B30DE00B677C2 /* ActivityMonitor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityMonitor.h; sourceTree = ""; }; + 1BFDB3CD180B30DE00B677C2 /* APOPAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = APOPAuthScheme.h; sourceTree = ""; }; + 1BFDB3CE180B30DE00B677C2 /* AppleTokenAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppleTokenAuthScheme.h; sourceTree = ""; }; + 1BFDB3CF180B30DE00B677C2 /* ArchiveFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ArchiveFileWrapper.h; sourceTree = ""; }; + 1BFDB3D0180B30DE00B677C2 /* AuthorTransporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthorTransporter.h; sourceTree = ""; }; + 1BFDB3D1180B30DE00B677C2 /* AuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthScheme.h; sourceTree = ""; }; + 1BFDB3D2180B30DE00B677C2 /* BackupManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BackupManager.h; sourceTree = ""; }; + 1BFDB3D3180B30DE00B677C2 /* BerkeleyMbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BerkeleyMbox.h; sourceTree = ""; }; + 1BFDB3D4180B30DE00B677C2 /* BookmarksManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BookmarksManager.h; sourceTree = ""; }; + 1BFDB3D5180B30DE00B677C2 /* ByteSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ByteSet.h; sourceTree = ""; }; + 1BFDB3D6180B30DE00B677C2 /* CachingABRecord.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CachingABRecord.h; sourceTree = ""; }; + 1BFDB3D7180B30DE00B677C2 /* CDStructures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDStructures.h; sourceTree = ""; }; + 1BFDB3D8180B30DE00B677C2 /* ChangeMerger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChangeMerger.h; sourceTree = ""; }; + 1BFDB3D9180B30DE00B677C2 /* Connection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Connection.h; sourceTree = ""; }; + 1BFDB3DA180B30DE00B677C2 /* ConnectionEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConnectionEnumerator.h; sourceTree = ""; }; + 1BFDB3DB180B30DE00B677C2 /* CRAM_MD5AuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CRAM_MD5AuthScheme.h; sourceTree = ""; }; + 1BFDB3DC180B30DE00B677C2 /* Criterion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Criterion.h; sourceTree = ""; }; + 1BFDB3DD180B30DE00B677C2 /* DatabaseRecoverer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DatabaseRecoverer.h; sourceTree = ""; }; + 1BFDB3DE180B30DE00B677C2 /* DataScanner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DataScanner.h; sourceTree = ""; }; + 1BFDB3DF180B30DE00B677C2 /* Defaults.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Defaults.h; sourceTree = ""; }; + 1BFDB3E0180B30DE00B677C2 /* DeliveryAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeliveryAccount.h; sourceTree = ""; }; + 1BFDB3E1180B30DE00B677C2 /* DOMDocument-JunkAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMDocument-JunkAdditions.h"; sourceTree = ""; }; + 1BFDB3E2180B30DE00B677C2 /* EnclosureTransporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EnclosureTransporter.h; sourceTree = ""; }; + 1BFDB3E3180B30DE00B677C2 /* EntryTransporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EntryTransporter.h; sourceTree = ""; }; + 1BFDB3E4180B30DE00B677C2 /* EWSAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSAccount.h; sourceTree = ""; }; + 1BFDB3E5180B30DE00B677C2 /* EWSAutodiscoverBindingDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "EWSAutodiscoverBindingDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB3E6180B30DE00B677C2 /* EWSAutodiscovery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSAutodiscovery.h; sourceTree = ""; }; + 1BFDB3E7180B30DE00B677C2 /* EWSConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSConnection.h; sourceTree = ""; }; + 1BFDB3E8180B30DE00B677C2 /* EWSCopyItemsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSCopyItemsRequestOperation.h; sourceTree = ""; }; + 1BFDB3E9180B30DE00B677C2 /* EWSCopyItemsResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSCopyItemsResponseOperation.h; sourceTree = ""; }; + 1BFDB3EA180B30DE00B677C2 /* EWSCreateEventReplyRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSCreateEventReplyRequestOperation.h; sourceTree = ""; }; + 1BFDB3EB180B30DE00B677C2 /* EWSCreateEventReplyResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSCreateEventReplyResponseOperation.h; sourceTree = ""; }; + 1BFDB3EC180B30DE00B677C2 /* EWSCreateFolderRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSCreateFolderRequestOperation.h; sourceTree = ""; }; + 1BFDB3ED180B30DE00B677C2 /* EWSCreateFolderResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSCreateFolderResponseOperation.h; sourceTree = ""; }; + 1BFDB3EE180B30DE00B677C2 /* EWSCreateItemRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSCreateItemRequestOperation.h; sourceTree = ""; }; + 1BFDB3EF180B30DE00B677C2 /* EWSCreateItemResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSCreateItemResponseOperation.h; sourceTree = ""; }; + 1BFDB3F0180B30DE00B677C2 /* EWSCreateMessageRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSCreateMessageRequestOperation.h; sourceTree = ""; }; + 1BFDB3F1180B30DE00B677C2 /* EWSDeleteFolderRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSDeleteFolderRequestOperation.h; sourceTree = ""; }; + 1BFDB3F2180B30DE00B677C2 /* EWSDeleteItemsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSDeleteItemsRequestOperation.h; sourceTree = ""; }; + 1BFDB3F3180B30DE00B677C2 /* EWSDelivery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSDelivery.h; sourceTree = ""; }; + 1BFDB3F4180B30DE00B677C2 /* EWSDeliveryAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSDeliveryAccount.h; sourceTree = ""; }; + 1BFDB3F5180B30DE00B677C2 /* EWSErrorHandler-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "EWSErrorHandler-Protocol.h"; sourceTree = ""; }; + 1BFDB3F6180B30DE00B677C2 /* EWSExchangeServiceBindingDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "EWSExchangeServiceBindingDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB3F7180B30DE00B677C2 /* EWSFindItemsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSFindItemsRequestOperation.h; sourceTree = ""; }; + 1BFDB3F8180B30DE00B677C2 /* EWSFindItemsResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSFindItemsResponseOperation.h; sourceTree = ""; }; + 1BFDB3F9180B30DE00B677C2 /* EWSGateway.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSGateway.h; sourceTree = ""; }; + 1BFDB3FA180B30DE00B677C2 /* EWSGetFolderRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSGetFolderRequestOperation.h; sourceTree = ""; }; + 1BFDB3FB180B30DE00B677C2 /* EWSGetFolderResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSGetFolderResponseOperation.h; sourceTree = ""; }; + 1BFDB3FC180B30DE00B677C2 /* EWSGetItemDataRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSGetItemDataRequestOperation.h; sourceTree = ""; }; + 1BFDB3FD180B30DE00B677C2 /* EWSGetItemDataResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSGetItemDataResponseOperation.h; sourceTree = ""; }; + 1BFDB3FE180B30DE00B677C2 /* EWSGetItemsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSGetItemsRequestOperation.h; sourceTree = ""; }; + 1BFDB3FF180B30DE00B677C2 /* EWSGetItemsResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSGetItemsResponseOperation.h; sourceTree = ""; }; + 1BFDB400180B30DE00B677C2 /* EWSGetUserOofSettingsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSGetUserOofSettingsRequestOperation.h; sourceTree = ""; }; + 1BFDB401180B30DE00B677C2 /* EWSGetUserOofSettingsResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSGetUserOofSettingsResponseOperation.h; sourceTree = ""; }; + 1BFDB402180B30DE00B677C2 /* EWSMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSMessage.h; sourceTree = ""; }; + 1BFDB403180B30DE00B677C2 /* EWSMoveFolderRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSMoveFolderRequestOperation.h; sourceTree = ""; }; + 1BFDB404180B30DE00B677C2 /* EWSOfflineGateway.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSOfflineGateway.h; sourceTree = ""; }; + 1BFDB405180B30DE00B677C2 /* EWSPathToExtendedFieldType-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "EWSPathToExtendedFieldType-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB406180B30DE00B677C2 /* EWSRenameFolderRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSRenameFolderRequestOperation.h; sourceTree = ""; }; + 1BFDB407180B30DE00B677C2 /* EWSRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSRequestOperation.h; sourceTree = ""; }; + 1BFDB408180B30DE00B677C2 /* EWSResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSResponseOperation.h; sourceTree = ""; }; + 1BFDB409180B30DE00B677C2 /* EWSSetUserOofSettingsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSSetUserOofSettingsRequestOperation.h; sourceTree = ""; }; + 1BFDB40A180B30DE00B677C2 /* EWSSetUserOofSettingsResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSSetUserOofSettingsResponseOperation.h; sourceTree = ""; }; + 1BFDB40B180B30DE00B677C2 /* EWSSizeEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSSizeEngine.h; sourceTree = ""; }; + 1BFDB40C180B30DE00B677C2 /* EWSStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSStore.h; sourceTree = ""; }; + 1BFDB40D180B30DE00B677C2 /* EWSSuppressReadReceiptsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSSuppressReadReceiptsRequestOperation.h; sourceTree = ""; }; + 1BFDB40E180B30DE00B677C2 /* EWSSyncFolderHierarchyRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSSyncFolderHierarchyRequestOperation.h; sourceTree = ""; }; + 1BFDB40F180B30DE00B677C2 /* EWSSyncFolderHierarchyResponseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSSyncFolderHierarchyResponseOperation.h; sourceTree = ""; }; + 1BFDB410180B30DE00B677C2 /* EWSSyncFolderItemsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSSyncFolderItemsRequestOperation.h; sourceTree = ""; }; + 1BFDB411180B30DE00B677C2 /* EWSSyncFolderItemsResponseMessageOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSSyncFolderItemsResponseMessageOperation.h; sourceTree = ""; }; + 1BFDB412180B30DE00B677C2 /* EWSUpdateItemRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSUpdateItemRequestOperation.h; sourceTree = ""; }; + 1BFDB413180B30DE00B677C2 /* EWSUpdateItemSetFlagsRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSUpdateItemSetFlagsRequestOperation.h; sourceTree = ""; }; + 1BFDB414180B30DE00B677C2 /* ExchangeAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExchangeAccount.h; sourceTree = ""; }; + 1BFDB415180B30DE00B677C2 /* ExchangeConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExchangeConnection.h; sourceTree = ""; }; + 1BFDB416180B30DE00B677C2 /* ExternalAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExternalAuthScheme.h; sourceTree = ""; }; + 1BFDB417180B30DE00B677C2 /* FeedTransporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FeedTransporter.h; sourceTree = ""; }; + 1BFDB418180B30DE00B677C2 /* GSSAPIAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GSSAPIAuthScheme.h; sourceTree = ""; }; + 1BFDB419180B30DE00B677C2 /* ImageJunkMetadata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImageJunkMetadata.h; sourceTree = ""; }; + 1BFDB41A180B30DE00B677C2 /* IMAPAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPAccount.h; sourceTree = ""; }; + 1BFDB41B180B30DE00B677C2 /* IMAPAggregateClientOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPAggregateClientOperation.h; sourceTree = ""; }; + 1BFDB41C180B30DE00B677C2 /* IMAPAggregateFetchUIDOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPAggregateFetchUIDOperation.h; sourceTree = ""; }; + 1BFDB41D180B30DE00B677C2 /* IMAPAggregateGetQuotaRootOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPAggregateGetQuotaRootOperation.h; sourceTree = ""; }; + 1BFDB41E180B30DE00B677C2 /* IMAPAggregateStatusOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPAggregateStatusOperation.h; sourceTree = ""; }; + 1BFDB41F180B30DE00B677C2 /* IMAPAttachmentsDownload.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPAttachmentsDownload.h; sourceTree = ""; }; + 1BFDB420180B30DE00B677C2 /* IMAPClientAppendOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientAppendOperation.h; sourceTree = ""; }; + 1BFDB421180B30DE00B677C2 /* IMAPClientAuthenticateOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientAuthenticateOperation.h; sourceTree = ""; }; + 1BFDB422180B30DE00B677C2 /* IMAPClientCapabilityOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientCapabilityOperation.h; sourceTree = ""; }; + 1BFDB423180B30DE00B677C2 /* IMAPClientCheckOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientCheckOperation.h; sourceTree = ""; }; + 1BFDB424180B30DE00B677C2 /* IMAPClientCloseOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientCloseOperation.h; sourceTree = ""; }; + 1BFDB425180B30DE00B677C2 /* IMAPClientCreateOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientCreateOperation.h; sourceTree = ""; }; + 1BFDB426180B30DE00B677C2 /* IMAPClientData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientData.h; sourceTree = ""; }; + 1BFDB427180B30DE00B677C2 /* IMAPClientDeleteOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientDeleteOperation.h; sourceTree = ""; }; + 1BFDB428180B30DE00B677C2 /* IMAPClientDoneOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientDoneOperation.h; sourceTree = ""; }; + 1BFDB429180B30DE00B677C2 /* IMAPClientExamineOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientExamineOperation.h; sourceTree = ""; }; + 1BFDB42A180B30DE00B677C2 /* IMAPClientExpungeOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientExpungeOperation.h; sourceTree = ""; }; + 1BFDB42B180B30DE00B677C2 /* IMAPClientFetchBodyDataItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientFetchBodyDataItem.h; sourceTree = ""; }; + 1BFDB42C180B30DE00B677C2 /* IMAPClientFetchDataItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientFetchDataItem.h; sourceTree = ""; }; + 1BFDB42D180B30DE00B677C2 /* IMAPClientFetchOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientFetchOperation.h; sourceTree = ""; }; + 1BFDB42E180B30DE00B677C2 /* IMAPClientFetchUIDOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientFetchUIDOperation.h; sourceTree = ""; }; + 1BFDB42F180B30DE00B677C2 /* IMAPClientGetQuotaOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientGetQuotaOperation.h; sourceTree = ""; }; + 1BFDB430180B30DE00B677C2 /* IMAPClientGetQuotaRootOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientGetQuotaRootOperation.h; sourceTree = ""; }; + 1BFDB431180B30DE00B677C2 /* IMAPClientIdleOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientIdleOperation.h; sourceTree = ""; }; + 1BFDB432180B30DE00B677C2 /* IMAPClientIDOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientIDOperation.h; sourceTree = ""; }; + 1BFDB433180B30DE00B677C2 /* IMAPClientListOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientListOperation.h; sourceTree = ""; }; + 1BFDB434180B30DE00B677C2 /* IMAPClientLoginOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientLoginOperation.h; sourceTree = ""; }; + 1BFDB435180B30DE00B677C2 /* IMAPClientLogoutOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientLogoutOperation.h; sourceTree = ""; }; + 1BFDB436180B30DE00B677C2 /* IMAPClientLSubOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientLSubOperation.h; sourceTree = ""; }; + 1BFDB437180B30DE00B677C2 /* IMAPClientMailboxOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientMailboxOperation.h; sourceTree = ""; }; + 1BFDB438180B30DE00B677C2 /* IMAPClientNamespaceOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientNamespaceOperation.h; sourceTree = ""; }; + 1BFDB439180B30DE00B677C2 /* IMAPClientNoopOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientNoopOperation.h; sourceTree = ""; }; + 1BFDB43A180B30DE00B677C2 /* IMAPClientOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientOperation.h; sourceTree = ""; }; + 1BFDB43B180B30DE00B677C2 /* IMAPClientOperationQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientOperationQueue.h; sourceTree = ""; }; + 1BFDB43C180B30DE00B677C2 /* IMAPClientRenameOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientRenameOperation.h; sourceTree = ""; }; + 1BFDB43D180B30DE00B677C2 /* IMAPClientSelectOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientSelectOperation.h; sourceTree = ""; }; + 1BFDB43E180B30DE00B677C2 /* IMAPClientStartTLSOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientStartTLSOperation.h; sourceTree = ""; }; + 1BFDB43F180B30DE00B677C2 /* IMAPClientStatusOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientStatusOperation.h; sourceTree = ""; }; + 1BFDB440180B30DE00B677C2 /* IMAPClientSubscribeOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientSubscribeOperation.h; sourceTree = ""; }; + 1BFDB441180B30DE00B677C2 /* IMAPClientSuspendOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientSuspendOperation.h; sourceTree = ""; }; + 1BFDB442180B30DE00B677C2 /* IMAPClientUIDCopyOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientUIDCopyOperation.h; sourceTree = ""; }; + 1BFDB443180B30DE00B677C2 /* IMAPClientUIDExpungeOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientUIDExpungeOperation.h; sourceTree = ""; }; + 1BFDB444180B30DE00B677C2 /* IMAPClientUIDOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientUIDOperation.h; sourceTree = ""; }; + 1BFDB445180B30DE00B677C2 /* IMAPClientUIDSearchOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientUIDSearchOperation.h; sourceTree = ""; }; + 1BFDB446180B30DE00B677C2 /* IMAPClientUIDStoreOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientUIDStoreOperation.h; sourceTree = ""; }; + 1BFDB447180B30DE00B677C2 /* IMAPClientUnselectOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientUnselectOperation.h; sourceTree = ""; }; + 1BFDB448180B30DE00B677C2 /* IMAPClientUnsubscribeOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPClientUnsubscribeOperation.h; sourceTree = ""; }; + 1BFDB449180B30DE00B677C2 /* IMAPCommandPipeline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPCommandPipeline.h; sourceTree = ""; }; + 1BFDB44A180B30DE00B677C2 /* IMAPCompoundDownload.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPCompoundDownload.h; sourceTree = ""; }; + 1BFDB44B180B30DE00B677C2 /* IMAPConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPConnection.h; sourceTree = ""; }; + 1BFDB44C180B30DE00B677C2 /* IMAPConnectionPool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPConnectionPool.h; sourceTree = ""; }; + 1BFDB44D180B30DE00B677C2 /* IMAPDownload.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPDownload.h; sourceTree = ""; }; + 1BFDB44E180B30DE00B677C2 /* IMAPDownloadCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPDownloadCache.h; sourceTree = ""; }; + 1BFDB44F180B30DE00B677C2 /* IMAPFetchResult.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPFetchResult.h; sourceTree = ""; }; + 1BFDB450180B30DE00B677C2 /* IMAPGateway.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPGateway.h; sourceTree = ""; }; + 1BFDB451180B30DE00B677C2 /* IMAPMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPMailbox.h; sourceTree = ""; }; + 1BFDB452180B30DE00B677C2 /* IMAPMailboxDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IMAPMailboxDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB453180B30DF00B677C2 /* IMAPMailboxSyncEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPMailboxSyncEngine.h; sourceTree = ""; }; + 1BFDB454180B30DF00B677C2 /* IMAPMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPMessage.h; sourceTree = ""; }; + 1BFDB455180B30DF00B677C2 /* IMAPMessageDownload.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPMessageDownload.h; sourceTree = ""; }; + 1BFDB456180B30DF00B677C2 /* IMAPMessageWithCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPMessageWithCache.h; sourceTree = ""; }; + 1BFDB457180B30DF00B677C2 /* IMAPObject-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IMAPObject-Protocol.h"; sourceTree = ""; }; + 1BFDB458180B30DF00B677C2 /* IMAPOfflineCopyOnStupidServerOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPOfflineCopyOnStupidServerOperation.h; sourceTree = ""; }; + 1BFDB459180B30DF00B677C2 /* IMAPOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPOperation.h; sourceTree = ""; }; + 1BFDB45A180B30DF00B677C2 /* IMAPOperationCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPOperationCache.h; sourceTree = ""; }; + 1BFDB45B180B30DF00B677C2 /* IMAPQuotaRoot.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPQuotaRoot.h; sourceTree = ""; }; + 1BFDB45C180B30DF00B677C2 /* IMAPResponse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPResponse.h; sourceTree = ""; }; + 1BFDB45D180B30DF00B677C2 /* IMAPResponseHandler-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IMAPResponseHandler-Protocol.h"; sourceTree = ""; }; + 1BFDB45E180B30DF00B677C2 /* IMAPSimpleDownload.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPSimpleDownload.h; sourceTree = ""; }; + 1BFDB45F180B30DF00B677C2 /* IMAPSingleClientOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPSingleClientOperation.h; sourceTree = ""; }; + 1BFDB460180B30DF00B677C2 /* IMAPSizeEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPSizeEngine.h; sourceTree = ""; }; + 1BFDB461180B30DF00B677C2 /* InvocationQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InvocationQueue.h; sourceTree = ""; }; + 1BFDB462180B30DF00B677C2 /* ISPAccountSettingsManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ISPAccountSettingsManager.h; sourceTree = ""; }; + 1BFDB463180B30DF00B677C2 /* JunkMailFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JunkMailFilter.h; sourceTree = ""; }; + 1BFDB464180B30DF00B677C2 /* JunkRecorder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JunkRecorder.h; sourceTree = ""; }; + 1BFDB465180B30DF00B677C2 /* Library.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Library.h; sourceTree = ""; }; + 1BFDB466180B30DF00B677C2 /* LibraryCalendarEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryCalendarEvent.h; sourceTree = ""; }; + 1BFDB467180B30DF00B677C2 /* LibraryIMAPMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryIMAPMessage.h; sourceTree = ""; }; + 1BFDB468180B30DF00B677C2 /* LibraryIMAPStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryIMAPStore.h; sourceTree = ""; }; + 1BFDB469180B30DF00B677C2 /* LibraryInterface-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "LibraryInterface-Protocol.h"; sourceTree = ""; }; + 1BFDB46A180B30DF00B677C2 /* LibraryMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryMessage.h; sourceTree = ""; }; + 1BFDB46B180B30DF00B677C2 /* LibraryObject-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "LibraryObject-Protocol.h"; sourceTree = ""; }; + 1BFDB46C180B30DF00B677C2 /* LibraryQueries.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryQueries.h; sourceTree = ""; }; + 1BFDB46D180B30DF00B677C2 /* LibraryStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryStore.h; sourceTree = ""; }; + 1BFDB46E180B30DF00B677C2 /* LibraryThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryThread.h; sourceTree = ""; }; + 1BFDB46F180B30DF00B677C2 /* LibraryUpgrader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryUpgrader.h; sourceTree = ""; }; + 1BFDB470180B30DF00B677C2 /* LocalAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LocalAccount.h; sourceTree = ""; }; + 1BFDB471180B30DF00B677C2 /* LocationManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LocationManager.h; sourceTree = ""; }; + 1BFDB472180B30DF00B677C2 /* MailAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailAccount.h; sourceTree = ""; }; + 1BFDB473180B30DF00B677C2 /* MailboxUid.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxUid.h; sourceTree = ""; }; + 1BFDB474180B30DF00B677C2 /* MailboxUidWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxUidWrapper.h; sourceTree = ""; }; + 1BFDB475180B30DF00B677C2 /* MailDelivery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailDelivery.h; sourceTree = ""; }; + 1BFDB476180B30DF00B677C2 /* MailFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailFileWrapper.h; sourceTree = ""; }; + 1BFDB477180B30DF00B677C2 /* MainThreadInvocationOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainThreadInvocationOperation.h; sourceTree = ""; }; + 1BFDB478180B30DF00B677C2 /* Matador.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Matador.h; sourceTree = ""; }; + 1BFDB479180B30DF00B677C2 /* Message.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Message.h; sourceTree = ""; }; + 1BFDB47A180B30DF00B677C2 /* MessageAddressee.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageAddressee.h; sourceTree = ""; }; + 1BFDB47B180B30DF00B677C2 /* MessageAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageAttachment.h; sourceTree = ""; }; + 1BFDB47C180B30DF00B677C2 /* MessageAttachmentViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageAttachmentViewController.h; sourceTree = ""; }; + 1BFDB47D180B30DF00B677C2 /* MessageBody.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageBody.h; sourceTree = ""; }; + 1BFDB47E180B30DF00B677C2 /* MessageConsumer-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageConsumer-Protocol.h"; sourceTree = ""; }; + 1BFDB47F180B30DF00B677C2 /* MessageCriterion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageCriterion.h; sourceTree = ""; }; + 1BFDB480180B30DF00B677C2 /* MessageDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageDetails.h; sourceTree = ""; }; + 1BFDB481180B30DF00B677C2 /* MessageFlags.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageFlags.h; sourceTree = ""; }; + 1BFDB482180B30DF00B677C2 /* MessageHeaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageHeaders.h; sourceTree = ""; }; + 1BFDB483180B30DF00B677C2 /* MessageHTMLConverter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageHTMLConverter.h; sourceTree = ""; }; + 1BFDB484180B30DF00B677C2 /* MessageInvocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageInvocation.h; sourceTree = ""; }; + 1BFDB485180B30DF00B677C2 /* MessageRouter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageRouter.h; sourceTree = ""; }; + 1BFDB486180B30DF00B677C2 /* MessageRouterUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageRouterUtilities.h; sourceTree = ""; }; + 1BFDB487180B30DF00B677C2 /* MessageRule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageRule.h; sourceTree = ""; }; + 1BFDB488180B30DF00B677C2 /* MessageRuleCriterion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageRuleCriterion.h; sourceTree = ""; }; + 1BFDB489180B30DF00B677C2 /* MessageSortingInformation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageSortingInformation.h; sourceTree = ""; }; + 1BFDB48A180B30DF00B677C2 /* MessageStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageStore.h; sourceTree = ""; }; + 1BFDB48B180B30DF00B677C2 /* MessageStringRenderContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageStringRenderContext.h; sourceTree = ""; }; + 1BFDB48C180B30DF00B677C2 /* MessageStringUniquer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageStringUniquer.h; sourceTree = ""; }; + 1BFDB48D180B30DF00B677C2 /* MessageThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageThread.h; sourceTree = ""; }; + 1BFDB48E180B30DF00B677C2 /* MessageTracer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageTracer.h; sourceTree = ""; }; + 1BFDB48F180B30DF00B677C2 /* MessageURLProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageURLProtocol.h; sourceTree = ""; }; + 1BFDB490180B30DF00B677C2 /* MessageWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageWriter.h; sourceTree = ""; }; + 1BFDB491180B30DF00B677C2 /* MFAccountStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAccountStorage.h; sourceTree = ""; }; + 1BFDB492180B30DF00B677C2 /* MFAddressManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAddressManager.h; sourceTree = ""; }; + 1BFDB493180B30DF00B677C2 /* MFAosImapAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAosImapAccount.h; sourceTree = ""; }; + 1BFDB494180B30DF00B677C2 /* MFAosSmtpAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAosSmtpAccount.h; sourceTree = ""; }; + 1BFDB495180B30DF00B677C2 /* MFAssertionHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFAssertionHandler.h; sourceTree = ""; }; + 1BFDB496180B30DF00B677C2 /* MFCachedMailboxInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFCachedMailboxInfo.h; sourceTree = ""; }; + 1BFDB497180B30DF00B677C2 /* MFChanging-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFChanging-Protocol.h"; sourceTree = ""; }; + 1BFDB498180B30DF00B677C2 /* MFCrossProcessLock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFCrossProcessLock.h; sourceTree = ""; }; + 1BFDB499180B30DF00B677C2 /* MFError.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFError.h; sourceTree = ""; }; + 1BFDB49A180B30DF00B677C2 /* MFHTMLParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFHTMLParser.h; sourceTree = ""; }; + 1BFDB49B180B30DF00B677C2 /* MFInstantOff.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFInstantOff.h; sourceTree = ""; }; + 1BFDB49C180B30DF00B677C2 /* MFKeychainManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFKeychainManager.h; sourceTree = ""; }; + 1BFDB49D180B30DF00B677C2 /* MFLibraryIDWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFLibraryIDWrapper.h; sourceTree = ""; }; + 1BFDB49E180B30DF00B677C2 /* MFMailMigrator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMailMigrator.h; sourceTree = ""; }; + 1BFDB49F180B30DF00B677C2 /* MFMessageContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageContext.h; sourceTree = ""; }; + 1BFDB4A0180B30DF00B677C2 /* MFMessageCounts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageCounts.h; sourceTree = ""; }; + 1BFDB4A1180B30DF00B677C2 /* MFMessageFramework.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageFramework.h; sourceTree = ""; }; + 1BFDB4A2180B30DF00B677C2 /* MFMessageSortingInterface-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFMessageSortingInterface-Protocol.h"; sourceTree = ""; }; + 1BFDB4A3180B30DF00B677C2 /* MFMessageSortingValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMessageSortingValue.h; sourceTree = ""; }; + 1BFDB4A4180B30DF00B677C2 /* MFMimeDecodeContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFMimeDecodeContext.h; sourceTree = ""; }; + 1BFDB4A5180B30DF00B677C2 /* MFQuoteParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFQuoteParser.h; sourceTree = ""; }; + 1BFDB4A6180B30DF00B677C2 /* MFRedundantTextIdentifier.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFRedundantTextIdentifier.h; sourceTree = ""; }; + 1BFDB4A7180B30DF00B677C2 /* MFResultTaskOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFResultTaskOperation.h; sourceTree = ""; }; + 1BFDB4A8180B30DF00B677C2 /* MFTaskOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFTaskOperation.h; sourceTree = ""; }; + 1BFDB4A9180B30DF00B677C2 /* MFUIMailbox-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFUIMailbox-Protocol.h"; sourceTree = ""; }; + 1BFDB4AA180B30DF00B677C2 /* MFUUID.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFUUID.h; sourceTree = ""; }; + 1BFDB4AB180B30DF00B677C2 /* MFZombies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MFZombies.h; sourceTree = ""; }; + 1BFDB4AC180B30DF00B677C2 /* MimeBody.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MimeBody.h; sourceTree = ""; }; + 1BFDB4AD180B30DF00B677C2 /* MimeCharset.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MimeCharset.h; sourceTree = ""; }; + 1BFDB4AE180B30DF00B677C2 /* MimePart.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MimePart.h; sourceTree = ""; }; + 1BFDB4AF180B30DF00B677C2 /* MimeTextAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MimeTextAttachment.h; sourceTree = ""; }; + 1BFDB4B0180B30DF00B677C2 /* MonitoredInvocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MonitoredInvocation.h; sourceTree = ""; }; + 1BFDB4B1180B30DF00B677C2 /* MonitoredOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MonitoredOperation.h; sourceTree = ""; }; + 1BFDB4B2180B30DF00B677C2 /* MutableByteSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MutableByteSet.h; sourceTree = ""; }; + 1BFDB4B3180B30DF00B677C2 /* MutableMessageHeaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MutableMessageHeaders.h; sourceTree = ""; }; + 1BFDB4B4180B30DF00B677C2 /* NetworkController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NetworkController.h; sourceTree = ""; }; + 1BFDB4B5180B30DF00B677C2 /* NetworkLocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NetworkLocation.h; sourceTree = ""; }; + 1BFDB4B6180B30DF00B677C2 /* NeXTMbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NeXTMbox.h; sourceTree = ""; }; + 1BFDB4B7180B30DF00B677C2 /* NSAlertDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAlertDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB4B8180B30DF00B677C2 /* NSAppleEventDescriptor-MessageRuleAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAppleEventDescriptor-MessageRuleAdditions.h"; sourceTree = ""; }; + 1BFDB4B9180B30DF00B677C2 /* NSAppleScript-MessageRuleAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAppleScript-MessageRuleAdditions.h"; sourceTree = ""; }; + 1BFDB4BA180B30DF00B677C2 /* NSApplication-MFAssert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSApplication-MFAssert.h"; sourceTree = ""; }; + 1BFDB4BB180B30DF00B677C2 /* NSArray-AppleScriptConveniences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-AppleScriptConveniences.h"; sourceTree = ""; }; + 1BFDB4BC180B30DF00B677C2 /* NSArray-DateComparisonForRecents.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-DateComparisonForRecents.h"; sourceTree = ""; }; + 1BFDB4BD180B30DF00B677C2 /* NSArray-DeepCopying.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-DeepCopying.h"; sourceTree = ""; }; + 1BFDB4BE180B30DF00B677C2 /* NSArray-DerivedArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-DerivedArray.h"; sourceTree = ""; }; + 1BFDB4BF180B30DF00B677C2 /* NSArray-EmailAddressArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-EmailAddressArray.h"; sourceTree = ""; }; + 1BFDB4C0180B30DF00B677C2 /* NSArray-MessagesFromMixedStoresConvenience.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-MessagesFromMixedStoresConvenience.h"; sourceTree = ""; }; + 1BFDB4C1180B30DF00B677C2 /* NSArray-removeSelf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-removeSelf.h"; sourceTree = ""; }; + 1BFDB4C2180B30DF00B677C2 /* NSAttributedString-find_attribute.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-find_attribute.h"; sourceTree = ""; }; + 1BFDB4C3180B30DF00B677C2 /* NSAttributedString-FontAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-FontAdditions.h"; sourceTree = ""; }; + 1BFDB4C4180B30DF00B677C2 /* NSAttributedString-FormatFlowedSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-FormatFlowedSupport.h"; sourceTree = ""; }; + 1BFDB4C5180B30DF00B677C2 /* NSAttributedString-MessageFrameworkAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MessageFrameworkAdditions.h"; sourceTree = ""; }; + 1BFDB4C6180B30DF00B677C2 /* NSAttributedString-MessagePasteboardSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MessagePasteboardSupport.h"; sourceTree = ""; }; + 1BFDB4C7180B30DF00B677C2 /* NSAttributedString-MimeEnrichedWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MimeEnrichedWriter.h"; sourceTree = ""; }; + 1BFDB4C8180B30DF00B677C2 /* NSBundle-MessageFrameworkAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSBundle-MessageFrameworkAdditions.h"; sourceTree = ""; }; + 1BFDB4C9180B30DF00B677C2 /* NSCacheDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCacheDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB4CA180B30DF00B677C2 /* NSCharacterSet-NSCharacterSetUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCharacterSet-NSCharacterSetUtils.h"; sourceTree = ""; }; + 1BFDB4CB180B30DF00B677C2 /* NSCoder-MFMessageFlags.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCoder-MFMessageFlags.h"; sourceTree = ""; }; + 1BFDB4CC180B30DF00B677C2 /* NSCoding-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCoding-Protocol.h"; sourceTree = ""; }; + 1BFDB4CD180B30DF00B677C2 /* NSColor-NSColorUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSColor-NSColorUtilities.h"; sourceTree = ""; }; + 1BFDB4CE180B30DF00B677C2 /* NSConditionLock-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSConditionLock-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB4CF180B30DF00B677C2 /* NSCopying-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCopying-Protocol.h"; sourceTree = ""; }; + 1BFDB4D0180B30DF00B677C2 /* NSData-HFSDataConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData-HFSDataConversion.h"; sourceTree = ""; }; + 1BFDB4D1180B30DF00B677C2 /* NSData-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB4D2180B30DF00B677C2 /* NSData-MimeDataEncoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData-MimeDataEncoding.h"; sourceTree = ""; }; + 1BFDB4D3180B30DF00B677C2 /* NSData-UuEnDecode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData-UuEnDecode.h"; sourceTree = ""; }; + 1BFDB4D4180B30DF00B677C2 /* NSDataMessageStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSDataMessageStore.h; sourceTree = ""; }; + 1BFDB4D5180B30DF00B677C2 /* NSDate-Goodies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDate-Goodies.h"; sourceTree = ""; }; + 1BFDB4D6180B30DF00B677C2 /* NSDate-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDate-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB4D7180B30DF00B677C2 /* NSDate-toc_extension.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDate-toc_extension.h"; sourceTree = ""; }; + 1BFDB4D8180B30DF00B677C2 /* NSDateFormatter-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDateFormatter-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB4D9180B30DF00B677C2 /* NSDictionary-Goodies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDictionary-Goodies.h"; sourceTree = ""; }; + 1BFDB4DA180B30DF00B677C2 /* NSDictionary-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDictionary-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB4DB180B30DF00B677C2 /* NSDictionary-NSBundleExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDictionary-NSBundleExtras.h"; sourceTree = ""; }; + 1BFDB4DC180B30DF00B677C2 /* NSError-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSError-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB4DD180B30DF00B677C2 /* NSError-POP3ConnectionExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSError-POP3ConnectionExtensions.h"; sourceTree = ""; }; + 1BFDB4DE180B30DF00B677C2 /* NSEvent-NSEventAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSEvent-NSEventAdditions.h"; sourceTree = ""; }; + 1BFDB4DF180B30DF00B677C2 /* NSFileHandle-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileHandle-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB4E0180B30DF00B677C2 /* NSFileManager-NSFileManagerAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileManager-NSFileManagerAdditions.h"; sourceTree = ""; }; + 1BFDB4E1180B30DF00B677C2 /* NSFileManagerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileManagerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB4E2180B30DF00B677C2 /* NSFileWrapper-ArchivedData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-ArchivedData.h"; sourceTree = ""; }; + 1BFDB4E3180B30DF00B677C2 /* NSFileWrapper-HFSDataConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-HFSDataConversion.h"; sourceTree = ""; }; + 1BFDB4E4180B30DF00B677C2 /* NSFileWrapper-HFSExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-HFSExtensions.h"; sourceTree = ""; }; + 1BFDB4E5180B30DF00B677C2 /* NSFileWrapper-iCalInvitationSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-iCalInvitationSupport.h"; sourceTree = ""; }; + 1BFDB4E6180B30DF00B677C2 /* NSFileWrapper-PersistenceWithoutLosingMetadata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-PersistenceWithoutLosingMetadata.h"; sourceTree = ""; }; + 1BFDB4E7180B30DF00B677C2 /* NSFileWrapper-UniquePaths.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-UniquePaths.h"; sourceTree = ""; }; + 1BFDB4E8180B30DF00B677C2 /* NSHashTable-MFLibraryIDWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSHashTable-MFLibraryIDWrapper.h"; sourceTree = ""; }; + 1BFDB4E9180B30DF00B677C2 /* NSImage-ASBetterImageLookup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSImage-ASBetterImageLookup.h"; sourceTree = ""; }; + 1BFDB4EA180B30DF00B677C2 /* NSInvocation-MailExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInvocation-MailExtensions.h"; sourceTree = ""; }; + 1BFDB4EB180B30DF00B677C2 /* NSKeyedUnarchiver-Goodies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSKeyedUnarchiver-Goodies.h"; sourceTree = ""; }; + 1BFDB4EC180B30DF00B677C2 /* NSKeyedUnarchiverDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSKeyedUnarchiverDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB4ED180B30DF00B677C2 /* NSLock-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSLock-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB4EE180B30DF00B677C2 /* NSLocking-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSLocking-Protocol.h"; sourceTree = ""; }; + 1BFDB4EF180B30DF00B677C2 /* NSMachPortDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMachPortDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB4F0180B30DF00B677C2 /* NSMapTable-MFLibraryIDWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMapTable-MFLibraryIDWrapper.h"; sourceTree = ""; }; + 1BFDB4F1180B30DF00B677C2 /* NSMutableArray-Convenience.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableArray-Convenience.h"; sourceTree = ""; }; + 1BFDB4F2180B30DF00B677C2 /* NSMutableArray-SortedArrayExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableArray-SortedArrayExtensions.h"; sourceTree = ""; }; + 1BFDB4F3180B30DF00B677C2 /* NSMutableAttributedString-MessageFrameworkAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableAttributedString-MessageFrameworkAdditions.h"; sourceTree = ""; }; + 1BFDB4F4180B30DF00B677C2 /* NSMutableCopying-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableCopying-Protocol.h"; sourceTree = ""; }; + 1BFDB4F5180B30DF00B677C2 /* NSMutableData-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableData-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB4F6180B30DF00B677C2 /* NSMutableData-MimeDataEncoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableData-MimeDataEncoding.h"; sourceTree = ""; }; + 1BFDB4F7180B30DF00B677C2 /* NSMutableData-RFC2231Support.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableData-RFC2231Support.h"; sourceTree = ""; }; + 1BFDB4F8180B30DF00B677C2 /* NSMutableDictionary-Goodies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableDictionary-Goodies.h"; sourceTree = ""; }; + 1BFDB4F9180B30DF00B677C2 /* NSMutableDictionary-RFC2231Support.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableDictionary-RFC2231Support.h"; sourceTree = ""; }; + 1BFDB4FA180B30DF00B677C2 /* NSMutableSet-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableSet-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB4FB180B30DF00B677C2 /* NSNotificationCenter-MainThreadPosting.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNotificationCenter-MainThreadPosting.h"; sourceTree = ""; }; + 1BFDB4FC180B30DF00B677C2 /* NSNumber-Goodies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber-Goodies.h"; sourceTree = ""; }; + 1BFDB4FD180B30DF00B677C2 /* NSObject-_mf_LibraryMessageEquality.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-_mf_LibraryMessageEquality.h"; sourceTree = ""; }; + 1BFDB4FE180B30DF00B677C2 /* NSObject-MainThreadMessaging.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-MainThreadMessaging.h"; sourceTree = ""; }; + 1BFDB4FF180B30DF00B677C2 /* NSObject-MFZombies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-MFZombies.h"; sourceTree = ""; }; + 1BFDB500180B30DF00B677C2 /* NSObject-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-Protocol.h"; sourceTree = ""; }; + 1BFDB501180B30DF00B677C2 /* NSObject-StackTraceAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-StackTraceAdditions.h"; sourceTree = ""; }; + 1BFDB502180B30DF00B677C2 /* NSObject-ThreadingAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-ThreadingAdditions.h"; sourceTree = ""; }; + 1BFDB503180B30E000B677C2 /* NSOperationQueue-MFTaskOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOperationQueue-MFTaskOperation.h"; sourceTree = ""; }; + 1BFDB504180B30E000B677C2 /* NSPersistentStoreCoordinator-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPersistentStoreCoordinator-MailAdditions.h"; sourceTree = ""; }; + 1BFDB505180B30E000B677C2 /* NSPortDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPortDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB506180B30E000B677C2 /* NSPortMessage-Goodies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPortMessage-Goodies.h"; sourceTree = ""; }; + 1BFDB507180B30E000B677C2 /* NSRunLoop-InternalMessageExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSRunLoop-InternalMessageExtensions.h"; sourceTree = ""; }; + 1BFDB508180B30E000B677C2 /* NSRunLoop-MessageExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSRunLoop-MessageExtensions.h"; sourceTree = ""; }; + 1BFDB509180B30E000B677C2 /* NSScanner-NSScannerUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSScanner-NSScannerUtils.h"; sourceTree = ""; }; + 1BFDB50A180B30E000B677C2 /* NSSet-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSet-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB50B180B30E000B677C2 /* NSSound-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSound-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB50C180B30E000B677C2 /* NSString-EmailAddressString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-EmailAddressString.h"; sourceTree = ""; }; + 1BFDB50D180B30E000B677C2 /* NSString-FormatFlowedSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-FormatFlowedSupport.h"; sourceTree = ""; }; + 1BFDB50E180B30E000B677C2 /* NSString-iCalInvitationSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-iCalInvitationSupport.h"; sourceTree = ""; }; + 1BFDB50F180B30E000B677C2 /* NSString-IMAPNameEncoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-IMAPNameEncoding.h"; sourceTree = ""; }; + 1BFDB510180B30E000B677C2 /* NSString-LibraryID.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-LibraryID.h"; sourceTree = ""; }; + 1BFDB511180B30E000B677C2 /* NSString-MimeCharsetSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MimeCharsetSupport.h"; sourceTree = ""; }; + 1BFDB512180B30E000B677C2 /* NSString-MimeEnrichedReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MimeEnrichedReader.h"; sourceTree = ""; }; + 1BFDB513180B30E000B677C2 /* NSString-NSStringUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-NSStringUtils.h"; sourceTree = ""; }; + 1BFDB514180B30E000B677C2 /* NSString-PathUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-PathUtils.h"; sourceTree = ""; }; + 1BFDB515180B30E000B677C2 /* NSString-RFC2047Support.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-RFC2047Support.h"; sourceTree = ""; }; + 1BFDB516180B30E000B677C2 /* NSString-StationeryUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-StationeryUtilities.h"; sourceTree = ""; }; + 1BFDB517180B30E000B677C2 /* NSTextAttachment-iCalInvitationSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextAttachment-iCalInvitationSupport.h"; sourceTree = ""; }; + 1BFDB518180B30E000B677C2 /* NSTextAttachment-MimeSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextAttachment-MimeSupport.h"; sourceTree = ""; }; + 1BFDB519180B30E000B677C2 /* NSURL-Goodies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURL-Goodies.h"; sourceTree = ""; }; + 1BFDB51A180B30E000B677C2 /* NSURLConnectionDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURLConnectionDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB51B180B30E000B677C2 /* NSURLDownloadDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURLDownloadDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB51C180B30E000B677C2 /* NSUserDefaults-MessageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserDefaults-MessageAdditions.h"; sourceTree = ""; }; + 1BFDB51D180B30E000B677C2 /* NSXMLParserDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSXMLParserDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB51E180B30E000B677C2 /* NTLMAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NTLMAuthScheme.h; sourceTree = ""; }; + 1BFDB51F180B30E000B677C2 /* OutgoingMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OutgoingMessage.h; sourceTree = ""; }; + 1BFDB520180B30E000B677C2 /* ParentalControlAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParentalControlAccount.h; sourceTree = ""; }; + 1BFDB521180B30E000B677C2 /* ParentalControlManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParentalControlManager.h; sourceTree = ""; }; + 1BFDB522180B30E000B677C2 /* ParentalControlSettings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParentalControlSettings.h; sourceTree = ""; }; + 1BFDB523180B30E000B677C2 /* ParentalControlStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParentalControlStore.h; sourceTree = ""; }; + 1BFDB524180B30E000B677C2 /* ParsedMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParsedMessage.h; sourceTree = ""; }; + 1BFDB525180B30E000B677C2 /* PerformanceLogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PerformanceLogger.h; sourceTree = ""; }; + 1BFDB526180B30E000B677C2 /* PerformanceLoggerTuple.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PerformanceLoggerTuple.h; sourceTree = ""; }; + 1BFDB527180B30E000B677C2 /* PlaceholderArchiveFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlaceholderArchiveFileWrapper.h; sourceTree = ""; }; + 1BFDB528180B30E000B677C2 /* PlaceholderFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlaceholderFileWrapper.h; sourceTree = ""; }; + 1BFDB529180B30E000B677C2 /* PlainAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlainAuthScheme.h; sourceTree = ""; }; + 1BFDB52A180B30E000B677C2 /* POP3Connection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POP3Connection.h; sourceTree = ""; }; + 1BFDB52B180B30E000B677C2 /* POP3ConnectionDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "POP3ConnectionDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB52C180B30E000B677C2 /* POP3FetchStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POP3FetchStore.h; sourceTree = ""; }; + 1BFDB52D180B30E000B677C2 /* POPAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POPAccount.h; sourceTree = ""; }; + 1BFDB52E180B30E000B677C2 /* POPMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POPMessage.h; sourceTree = ""; }; + 1BFDB52F180B30E000B677C2 /* POPSizeEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POPSizeEngine.h; sourceTree = ""; }; + 1BFDB530180B30E000B677C2 /* PreparedStatement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PreparedStatement.h; sourceTree = ""; }; + 1BFDB531180B30E000B677C2 /* QuotaUsage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuotaUsage.h; sourceTree = ""; }; + 1BFDB532180B30E000B677C2 /* RecoveredMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RecoveredMessage.h; sourceTree = ""; }; + 1BFDB533180B30E000B677C2 /* RecoveredStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RecoveredStore.h; sourceTree = ""; }; + 1BFDB534180B30E000B677C2 /* RegularExpression.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RegularExpression.h; sourceTree = ""; }; + 1BFDB535180B30E000B677C2 /* RemoteMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteMessage.h; sourceTree = ""; }; + 1BFDB536180B30E000B677C2 /* RemotePlaceholderFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemotePlaceholderFileWrapper.h; sourceTree = ""; }; + 1BFDB537180B30E000B677C2 /* RemoteStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteStore.h; sourceTree = ""; }; + 1BFDB538180B30E000B677C2 /* RemoteStoreAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteStoreAccount.h; sourceTree = ""; }; + 1BFDB539180B30E000B677C2 /* RemoteStoreSizeEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteStoreSizeEngine.h; sourceTree = ""; }; + 1BFDB53A180B30E000B677C2 /* RouterStore-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "RouterStore-Protocol.h"; sourceTree = ""; }; + 1BFDB53B180B30E000B677C2 /* RSSAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RSSAccount.h; sourceTree = ""; }; + 1BFDB53C180B30E000B677C2 /* RSSArticleDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RSSArticleDocument.h; sourceTree = ""; }; + 1BFDB53D180B30E000B677C2 /* RSSInterchange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RSSInterchange.h; sourceTree = ""; }; + 1BFDB53E180B30E000B677C2 /* RSSLibraryStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RSSLibraryStore.h; sourceTree = ""; }; + 1BFDB53F180B30E000B677C2 /* SafariBookmarksLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SafariBookmarksLoader.h; sourceTree = ""; }; + 1BFDB540180B30E000B677C2 /* SafeBoolCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SafeBoolCache.h; sourceTree = ""; }; + 1BFDB541180B30E000B677C2 /* SafeObserver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SafeObserver.h; sourceTree = ""; }; + 1BFDB542180B30E000B677C2 /* SafeValueCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SafeValueCache.h; sourceTree = ""; }; + 1BFDB543180B30E000B677C2 /* SASLClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SASLClient.h; sourceTree = ""; }; + 1BFDB544180B30E000B677C2 /* SeenMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SeenMessage.h; sourceTree = ""; }; + 1BFDB545180B30E000B677C2 /* SeenMessagesManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SeenMessagesManager.h; sourceTree = ""; }; + 1BFDB546180B30E000B677C2 /* SizeEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SizeEngine.h; sourceTree = ""; }; + 1BFDB547180B30E000B677C2 /* SmartMailboxUnreadCountManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SmartMailboxUnreadCountManager.h; sourceTree = ""; }; + 1BFDB548180B30E000B677C2 /* SMTPAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SMTPAccount.h; sourceTree = ""; }; + 1BFDB549180B30E000B677C2 /* SMTPConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SMTPConnection.h; sourceTree = ""; }; + 1BFDB54A180B30E000B677C2 /* SMTPDelivery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SMTPDelivery.h; sourceTree = ""; }; + 1BFDB54B180B30E000B677C2 /* SnippetManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SnippetManager.h; sourceTree = ""; }; + 1BFDB54C180B30E000B677C2 /* SpecialMailboxUid.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpecialMailboxUid.h; sourceTree = ""; }; + 1BFDB54D180B30E000B677C2 /* SqliteHandle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SqliteHandle.h; sourceTree = ""; }; + 1BFDB54E180B30E000B677C2 /* Subdata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Subdata.h; sourceTree = ""; }; + 1BFDB54F180B30E000B677C2 /* SyncableApp-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SyncableApp-Protocol.h"; sourceTree = ""; }; + 1BFDB550180B30E000B677C2 /* SyncableDataOwner-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SyncableDataOwner-Protocol.h"; sourceTree = ""; }; + 1BFDB551180B30E000B677C2 /* TableOfContents.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableOfContents.h; sourceTree = ""; }; + 1BFDB552180B30E000B677C2 /* TextAttachmentWrappingMessageAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextAttachmentWrappingMessageAttachment.h; sourceTree = ""; }; + 1BFDB553180B30E000B677C2 /* ThrowingInvocationOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThrowingInvocationOperation.h; sourceTree = ""; }; + 1BFDB554180B30E000B677C2 /* TOCMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TOCMessage.h; sourceTree = ""; }; + 1BFDB555180B30E000B677C2 /* TransientBookmark.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TransientBookmark.h; sourceTree = ""; }; + 1BFDB556180B30E000B677C2 /* TransientBookmarkFolder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TransientBookmarkFolder.h; sourceTree = ""; }; + 1BFDB557180B30E000B677C2 /* TransientBookmarkItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TransientBookmarkItem.h; sourceTree = ""; }; + 1BFDB558180B30E000B677C2 /* URLifier.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = URLifier.h; sourceTree = ""; }; + 1BFDB559180B30E000B677C2 /* URLMatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = URLMatch.h; sourceTree = ""; }; + 1BFDB55A180B30E000B677C2 /* UsageCounter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UsageCounter.h; sourceTree = ""; }; + 1BFDB55B180B30E000B677C2 /* WebArchive-Conversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebArchive-Conversion.h"; sourceTree = ""; }; + 1BFDB55C180B30E000B677C2 /* WebMessageDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebMessageDocument.h; sourceTree = ""; }; + 1BFDB55D180B30E000B677C2 /* WorkerThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WorkerThread.h; sourceTree = ""; }; + 1BFDB563180B30E000B677C2 /* CDStructures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDStructures.h; sourceTree = ""; }; + 1BFDB564180B30E000B677C2 /* EAEmailAddressGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EAEmailAddressGenerator.h; sourceTree = ""; }; + 1BFDB565180B30E000B677C2 /* EAEmailAddressLists.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EAEmailAddressLists.h; sourceTree = ""; }; + 1BFDB566180B30E000B677C2 /* EAEmailAddressParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EAEmailAddressParser.h; sourceTree = ""; }; + 1BFDB567180B30E000B677C2 /* EANameParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EANameParser.h; sourceTree = ""; }; + 1BFDB568180B30E000B677C2 /* EmailAddressingFramework.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EmailAddressingFramework.h; sourceTree = ""; }; + 1BFDB56A180B30E000B677C2 /* _FormatFlowedWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _FormatFlowedWriter.h; sourceTree = ""; }; + 1BFDB56B180B30E000B677C2 /* _MCActivityAggregateArrayController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCActivityAggregateArrayController.h; sourceTree = ""; }; + 1BFDB56C180B30E000B677C2 /* _MCActivityMonitorMultiTarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCActivityMonitorMultiTarget.h; sourceTree = ""; }; + 1BFDB56D180B30E000B677C2 /* _MCAppleTokenSaslClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCAppleTokenSaslClient.h; sourceTree = ""; }; + 1BFDB56E180B30E000B677C2 /* _MCCompositeImageRep.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCCompositeImageRep.h; sourceTree = ""; }; + 1BFDB56F180B30E000B677C2 /* _MCConnectionAttempt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCConnectionAttempt.h; sourceTree = ""; }; + 1BFDB570180B30E000B677C2 /* _MCExternalSaslClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCExternalSaslClient.h; sourceTree = ""; }; + 1BFDB571180B30E000B677C2 /* _MCInvocationOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCInvocationOperation.h; sourceTree = ""; }; + 1BFDB572180B30E000B677C2 /* _MCISPLocalAccountSettingsManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCISPLocalAccountSettingsManager.h; sourceTree = ""; }; + 1BFDB573180B30E000B677C2 /* _MCISPOnlineAccountSettingsManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCISPOnlineAccountSettingsManager.h; sourceTree = ""; }; + 1BFDB574180B30E000B677C2 /* _MCLibSasl2SaslClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCLibSasl2SaslClient.h; sourceTree = ""; }; + 1BFDB575180B30E000B677C2 /* _MCLogClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCLogClient.h; sourceTree = ""; }; + 1BFDB576180B30E000B677C2 /* _MCMemoryMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMemoryMessage.h; sourceTree = ""; }; + 1BFDB577180B30E000B677C2 /* _MCMimeEnrichedReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMimeEnrichedReader.h; sourceTree = ""; }; + 1BFDB578180B30E000B677C2 /* _MCMimeEnrichedReaderCommandStackEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMimeEnrichedReaderCommandStackEntry.h; sourceTree = ""; }; + 1BFDB579180B30E000B677C2 /* _MCMimeEnrichedWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMimeEnrichedWriter.h; sourceTree = ""; }; + 1BFDB57A180B30E000B677C2 /* _MCMimeHeaderScanContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMimeHeaderScanContext.h; sourceTree = ""; }; + 1BFDB57B180B30E000B677C2 /* _MCMimePartEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCMimePartEnumerator.h; sourceTree = ""; }; + 1BFDB57C180B30E000B677C2 /* _MCOutgoingMessageBody.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCOutgoingMessageBody.h; sourceTree = ""; }; + 1BFDB57D180B30E000B677C2 /* _MCPlainClientTokenSaslClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCPlainClientTokenSaslClient.h; sourceTree = ""; }; + 1BFDB57E180B30E000B677C2 /* _MCWebAuthenticationRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MCWebAuthenticationRequest.h; sourceTree = ""; }; + 1BFDB57F180B30E000B677C2 /* ABAddressBook-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABAddressBook-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB580180B30E000B677C2 /* ABAddressBook-MailCoreAdditionsInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABAddressBook-MailCoreAdditionsInternal.h"; sourceTree = ""; }; + 1BFDB581180B30E000B677C2 /* ABGroup-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABGroup-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB582180B30E000B677C2 /* ABMailRecent-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABMailRecent-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB583180B30E000B677C2 /* ABPerson-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABPerson-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB584180B30E000B677C2 /* ABRecord-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ABRecord-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB585180B30E000B677C2 /* CDStructures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDStructures.h; sourceTree = ""; }; + 1BFDB586180B30E000B677C2 /* EWSAutodiscoverBindingDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "EWSAutodiscoverBindingDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB587180B30E000B677C2 /* IADataPluginDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IADataPluginDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB588180B30E000B677C2 /* MailCoreFramework.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailCoreFramework.h; sourceTree = ""; }; + 1BFDB589180B30E000B677C2 /* MCAccountAutoconfigurator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAccountAutoconfigurator.h; sourceTree = ""; }; + 1BFDB58A180B30E000B677C2 /* MCAccountSetupValidator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAccountSetupValidator.h; sourceTree = ""; }; + 1BFDB58B180B30E000B677C2 /* MCAccountSetupValidatorDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCAccountSetupValidatorDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB58C180B30E000B677C2 /* MCActivityAggregate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCActivityAggregate.h; sourceTree = ""; }; + 1BFDB58D180B30E000B677C2 /* MCActivityAggregator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCActivityAggregator.h; sourceTree = ""; }; + 1BFDB58E180B30E000B677C2 /* MCActivityMonitor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCActivityMonitor.h; sourceTree = ""; }; + 1BFDB58F180B30E000B677C2 /* MCActivityTarget-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCActivityTarget-Protocol.h"; sourceTree = ""; }; + 1BFDB590180B30E000B677C2 /* MCAddressManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAddressManager.h; sourceTree = ""; }; + 1BFDB591180B30E000B677C2 /* MCApopAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCApopAuthScheme.h; sourceTree = ""; }; + 1BFDB592180B30E000B677C2 /* MCAppleTokenAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAppleTokenAuthScheme.h; sourceTree = ""; }; + 1BFDB593180B30E000B677C2 /* MCArchiveFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCArchiveFileWrapper.h; sourceTree = ""; }; + 1BFDB594180B30E000B677C2 /* MCAssertionHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAssertionHandler.h; sourceTree = ""; }; + 1BFDB595180B30E000B677C2 /* MCAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAttachment.h; sourceTree = ""; }; + 1BFDB596180B30E000B677C2 /* MCAttachmentWrappingTextAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAttachmentWrappingTextAttachment.h; sourceTree = ""; }; + 1BFDB597180B30E000B677C2 /* MCAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCAuthScheme.h; sourceTree = ""; }; + 1BFDB598180B30E000B677C2 /* MCByteSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCByteSet.h; sourceTree = ""; }; + 1BFDB599180B30E000B677C2 /* MCCIDURLProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCCIDURLProtocol.h; sourceTree = ""; }; + 1BFDB59A180B30E000B677C2 /* MCConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCConnection.h; sourceTree = ""; }; + 1BFDB59B180B30E000B677C2 /* MCCramMD5AuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCCramMD5AuthScheme.h; sourceTree = ""; }; + 1BFDB59C180B30E000B677C2 /* MCDataScanner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCDataScanner.h; sourceTree = ""; }; + 1BFDB59D180B30E000B677C2 /* MCDateFormatterFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCDateFormatterFactory.h; sourceTree = ""; }; + 1BFDB59E180B30E000B677C2 /* MCError.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCError.h; sourceTree = ""; }; + 1BFDB59F180B30E000B677C2 /* MCEWSAutodiscovery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCEWSAutodiscovery.h; sourceTree = ""; }; + 1BFDB5A0180B30E000B677C2 /* MCExternalAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCExternalAuthScheme.h; sourceTree = ""; }; + 1BFDB5A1180B30E000B677C2 /* MCFileTypeInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCFileTypeInfo.h; sourceTree = ""; }; + 1BFDB5A2180B30E000B677C2 /* MCGssapiAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCGssapiAuthScheme.h; sourceTree = ""; }; + 1BFDB5A3180B30E000B677C2 /* MCIASetupViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCIASetupViewController.h; sourceTree = ""; }; + 1BFDB5A4180B30E000B677C2 /* MCImageJunkMetadata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCImageJunkMetadata.h; sourceTree = ""; }; + 1BFDB5A5180B30E000B677C2 /* MCInvocationQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCInvocationQueue.h; sourceTree = ""; }; + 1BFDB5A6180B30E000B677C2 /* MCISPAccountSettingsManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCISPAccountSettingsManager.h; sourceTree = ""; }; + 1BFDB5A7180B30E000B677C2 /* MCJunkRecorder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCJunkRecorder.h; sourceTree = ""; }; + 1BFDB5A8180B30E000B677C2 /* MCKeychainManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCKeychainManager.h; sourceTree = ""; }; + 1BFDB5A9180B30E000B677C2 /* MCLargeAttachmentFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCLargeAttachmentFileWrapper.h; sourceTree = ""; }; + 1BFDB5AA180B30E000B677C2 /* MCMainThreadInvocationOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMainThreadInvocationOperation.h; sourceTree = ""; }; + 1BFDB5AB180B30E000B677C2 /* MCMemoryDataSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMemoryDataSource.h; sourceTree = ""; }; + 1BFDB5AC180B30E000B677C2 /* MCMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMessage.h; sourceTree = ""; }; + 1BFDB5AD180B30E000B677C2 /* MCMessageBody.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMessageBody.h; sourceTree = ""; }; + 1BFDB5AE180B30E000B677C2 /* MCMessageDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessageDataSource-Protocol.h"; sourceTree = ""; }; + 1BFDB5AF180B30E000B677C2 /* MCMessageGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMessageGenerator.h; sourceTree = ""; }; + 1BFDB5B0180B30E000B677C2 /* MCMessageHeaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMessageHeaders.h; sourceTree = ""; }; + 1BFDB5B1180B30E000B677C2 /* MCMessageSortingInterface-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessageSortingInterface-Protocol.h"; sourceTree = ""; }; + 1BFDB5B2180B30E000B677C2 /* MCMessageTracer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMessageTracer.h; sourceTree = ""; }; + 1BFDB5B3180B30E000B677C2 /* MCMessageURLProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMessageURLProtocol.h; sourceTree = ""; }; + 1BFDB5B4180B30E000B677C2 /* MCMimeBody.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimeBody.h; sourceTree = ""; }; + 1BFDB5B5180B30E000B677C2 /* MCMimeCharset.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimeCharset.h; sourceTree = ""; }; + 1BFDB5B6180B30E000B677C2 /* MCMimeDecodeContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimeDecodeContext.h; sourceTree = ""; }; + 1BFDB5B7180B30E000B677C2 /* MCMimePart.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimePart.h; sourceTree = ""; }; + 1BFDB5B8180B30E000B677C2 /* MCMimeTextAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMimeTextAttachment.h; sourceTree = ""; }; + 1BFDB5B9180B30E100B677C2 /* MCMonitoredInvocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMonitoredInvocation.h; sourceTree = ""; }; + 1BFDB5BA180B30E100B677C2 /* MCMonitoredOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMonitoredOperation.h; sourceTree = ""; }; + 1BFDB5BB180B30E100B677C2 /* MCMutableByteSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMutableByteSet.h; sourceTree = ""; }; + 1BFDB5BC180B30E100B677C2 /* MCMutableMessageHeaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCMutableMessageHeaders.h; sourceTree = ""; }; + 1BFDB5BD180B30E100B677C2 /* MCNetworkController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCNetworkController.h; sourceTree = ""; }; + 1BFDB5BE180B30E100B677C2 /* MCNtlmAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCNtlmAuthScheme.h; sourceTree = ""; }; + 1BFDB5BF180B30E100B677C2 /* MCOutgoingMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCOutgoingMessage.h; sourceTree = ""; }; + 1BFDB5C0180B30E100B677C2 /* MCParsedMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCParsedMessage.h; sourceTree = ""; }; + 1BFDB5C1180B30E100B677C2 /* MCPersistentIDFetching-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCPersistentIDFetching-Protocol.h"; sourceTree = ""; }; + 1BFDB5C2180B30E100B677C2 /* MCPlaceholderArchiveFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCPlaceholderArchiveFileWrapper.h; sourceTree = ""; }; + 1BFDB5C3180B30E100B677C2 /* MCPlaceholderFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCPlaceholderFileWrapper.h; sourceTree = ""; }; + 1BFDB5C4180B30E100B677C2 /* MCPlainAuthScheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCPlainAuthScheme.h; sourceTree = ""; }; + 1BFDB5C5180B30E100B677C2 /* MCPortNumberFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCPortNumberFormatter.h; sourceTree = ""; }; + 1BFDB5C6180B30E100B677C2 /* MCPriorityInvocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCPriorityInvocation.h; sourceTree = ""; }; + 1BFDB5C7180B30E100B677C2 /* MCQuotaUsage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCQuotaUsage.h; sourceTree = ""; }; + 1BFDB5C8180B30E100B677C2 /* MCRemoteMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCRemoteMessage.h; sourceTree = ""; }; + 1BFDB5C9180B30E100B677C2 /* MCRemotePlaceholderFileWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCRemotePlaceholderFileWrapper.h; sourceTree = ""; }; + 1BFDB5CA180B30E100B677C2 /* MCResultTaskOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCResultTaskOperation.h; sourceTree = ""; }; + 1BFDB5CB180B30E100B677C2 /* MCSafeBoolCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSafeBoolCache.h; sourceTree = ""; }; + 1BFDB5CC180B30E100B677C2 /* MCSafeValueCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSafeValueCache.h; sourceTree = ""; }; + 1BFDB5CD180B30E100B677C2 /* MCSaslClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSaslClient.h; sourceTree = ""; }; + 1BFDB5CE180B30E100B677C2 /* MCSAXHTMLParsing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSAXHTMLParsing.h; sourceTree = ""; }; + 1BFDB5CF180B30E100B677C2 /* MCSharedPreferencesController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSharedPreferencesController.h; sourceTree = ""; }; + 1BFDB5D0180B30E100B677C2 /* MCSocket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSocket.h; sourceTree = ""; }; + 1BFDB5D1180B30E100B677C2 /* MCSSLCertificateTrustPanelManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSSLCertificateTrustPanelManager.h; sourceTree = ""; }; + 1BFDB5D2180B30E100B677C2 /* MCStringRenderContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCStringRenderContext.h; sourceTree = ""; }; + 1BFDB5D3180B30E100B677C2 /* MCSubdata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCSubdata.h; sourceTree = ""; }; + 1BFDB5D4180B30E100B677C2 /* MCTaskOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCTaskOperation.h; sourceTree = ""; }; + 1BFDB5D5180B30E100B677C2 /* MCThrowingInvocationOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCThrowingInvocationOperation.h; sourceTree = ""; }; + 1BFDB5D6180B30E100B677C2 /* MCURLifier.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCURLifier.h; sourceTree = ""; }; + 1BFDB5D7180B30E100B677C2 /* MCURLMatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCURLMatch.h; sourceTree = ""; }; + 1BFDB5D8180B30E100B677C2 /* MCWebAuthenticationManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCWebAuthenticationManager.h; sourceTree = ""; }; + 1BFDB5D9180B30E100B677C2 /* MCWorkerThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCWorkerThread.h; sourceTree = ""; }; + 1BFDB5DA180B30E100B677C2 /* NSAlertDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAlertDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB5DB180B30E100B677C2 /* NSApplication-MCAssert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSApplication-MCAssert.h"; sourceTree = ""; }; + 1BFDB5DC180B30E100B677C2 /* NSArray-DateComparisonForRecents.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-DateComparisonForRecents.h"; sourceTree = ""; }; + 1BFDB5DD180B30E100B677C2 /* NSArray-DeepCopying.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-DeepCopying.h"; sourceTree = ""; }; + 1BFDB5DE180B30E100B677C2 /* NSArray-DerivedArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-DerivedArray.h"; sourceTree = ""; }; + 1BFDB5DF180B30E100B677C2 /* NSArray-MessagesFromMixedStoresConvenience.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-MessagesFromMixedStoresConvenience.h"; sourceTree = ""; }; + 1BFDB5E0180B30E100B677C2 /* NSArray-removeSelf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray-removeSelf.h"; sourceTree = ""; }; + 1BFDB5E1180B30E100B677C2 /* NSAttributedString-FontAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-FontAdditions.h"; sourceTree = ""; }; + 1BFDB5E2180B30E100B677C2 /* NSAttributedString-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5E3180B30E100B677C2 /* NSAttributedString-MCFormatFlowedSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MCFormatFlowedSupport.h"; sourceTree = ""; }; + 1BFDB5E4180B30E100B677C2 /* NSAttributedString-MCMimeEnrichedWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MCMimeEnrichedWriter.h"; sourceTree = ""; }; + 1BFDB5E5180B30E100B677C2 /* NSAttributedString-MessagePasteboardSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MessagePasteboardSupport.h"; sourceTree = ""; }; + 1BFDB5E6180B30E100B677C2 /* NSCharacterSet-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCharacterSet-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5E7180B30E100B677C2 /* NSColor-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSColor-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5E8180B30E100B677C2 /* NSConditionLock-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSConditionLock-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5E9180B30E100B677C2 /* NSCopying-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCopying-Protocol.h"; sourceTree = ""; }; + 1BFDB5EA180B30E100B677C2 /* NSData-HFSDataConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData-HFSDataConversion.h"; sourceTree = ""; }; + 1BFDB5EB180B30E100B677C2 /* NSData-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5EC180B30E100B677C2 /* NSData-MCMimeDataEncoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData-MCMimeDataEncoding.h"; sourceTree = ""; }; + 1BFDB5ED180B30E100B677C2 /* NSData-MCUUEnDecode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData-MCUUEnDecode.h"; sourceTree = ""; }; + 1BFDB5EE180B30E100B677C2 /* NSDate-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDate-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5EF180B30E100B677C2 /* NSError-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSError-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5F0180B30E100B677C2 /* NSFileHandle-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileHandle-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5F1180B30E100B677C2 /* NSFileManager-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileManager-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5F2180B30E100B677C2 /* NSFileWrapper-ArchivedData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-ArchivedData.h"; sourceTree = ""; }; + 1BFDB5F3180B30E100B677C2 /* NSFileWrapper-HFSDataConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-HFSDataConversion.h"; sourceTree = ""; }; + 1BFDB5F4180B30E100B677C2 /* NSFileWrapper-iCalInvitationSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-iCalInvitationSupport.h"; sourceTree = ""; }; + 1BFDB5F5180B30E100B677C2 /* NSFileWrapper-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5F6180B30E100B677C2 /* NSFileWrapper-PersistenceWithoutLosingMetadata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileWrapper-PersistenceWithoutLosingMetadata.h"; sourceTree = ""; }; + 1BFDB5F7180B30E100B677C2 /* NSImage-CompositeImageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSImage-CompositeImageAdditions.h"; sourceTree = ""; }; + 1BFDB5F8180B30E100B677C2 /* NSImage-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSImage-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5F9180B30E100B677C2 /* NSInvocation-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInvocation-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5FA180B30E100B677C2 /* NSLock-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSLock-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5FB180B30E100B677C2 /* NSMachPortDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMachPortDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB5FC180B30E100B677C2 /* NSMutableArray-Convenience.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableArray-Convenience.h"; sourceTree = ""; }; + 1BFDB5FD180B30E100B677C2 /* NSMutableArray-SortedArrayExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableArray-SortedArrayExtensions.h"; sourceTree = ""; }; + 1BFDB5FE180B30E100B677C2 /* NSMutableAttributedString-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableAttributedString-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB5FF180B30E100B677C2 /* NSMutableCopying-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableCopying-Protocol.h"; sourceTree = ""; }; + 1BFDB600180B30E100B677C2 /* NSMutableData-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableData-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB601180B30E100B677C2 /* NSMutableData-MCMimeDataEncoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableData-MCMimeDataEncoding.h"; sourceTree = ""; }; + 1BFDB602180B30E100B677C2 /* NSMutableData-RFC2231Support.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableData-RFC2231Support.h"; sourceTree = ""; }; + 1BFDB603180B30E100B677C2 /* NSMutableDictionary-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableDictionary-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB604180B30E100B677C2 /* NSMutableDictionary-RFC2231Support.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableDictionary-RFC2231Support.h"; sourceTree = ""; }; + 1BFDB605180B30E100B677C2 /* NSMutableSet-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableSet-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB606180B30E100B677C2 /* NSNumber-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB607180B30E100B677C2 /* NSObject-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-Protocol.h"; sourceTree = ""; }; + 1BFDB608180B30E100B677C2 /* NSOperationQueue-MCTaskOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOperationQueue-MCTaskOperation.h"; sourceTree = ""; }; + 1BFDB609180B30E100B677C2 /* NSPortDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPortDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB60A180B30E100B677C2 /* NSRunLoop-InternalMailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSRunLoop-InternalMailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB60B180B30E100B677C2 /* NSRunLoop-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSRunLoop-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB60C180B30E100B677C2 /* NSScanner-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSScanner-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB60D180B30E100B677C2 /* NSSet-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSet-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB60E180B30E100B677C2 /* NSStreamDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSStreamDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB60F180B30E100B677C2 /* NSString-MailCoreAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MailCoreAdditions.h"; sourceTree = ""; }; + 1BFDB610180B30E100B677C2 /* NSString-MCFormatFlowedSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MCFormatFlowedSupport.h"; sourceTree = ""; }; + 1BFDB611180B30E100B677C2 /* NSString-MCMimeCharsetSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MCMimeCharsetSupport.h"; sourceTree = ""; }; + 1BFDB612180B30E100B677C2 /* NSString-MCMimeEnrichedReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MCMimeEnrichedReader.h"; sourceTree = ""; }; + 1BFDB613180B30E100B677C2 /* NSString-RFC2047Support.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-RFC2047Support.h"; sourceTree = ""; }; + 1BFDB614180B30E100B677C2 /* NSString-StationeryUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-StationeryUtilities.h"; sourceTree = ""; }; + 1BFDB615180B30E100B677C2 /* NSTextAttachment-MCMimeSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextAttachment-MCMimeSupport.h"; sourceTree = ""; }; + 1BFDB616180B30E100B677C2 /* NSURLDownloadDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURLDownloadDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB617180B30E100B677C2 /* NSXMLParserDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSXMLParserDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB619180B30E100B677C2 /* _AccountDisplayCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AccountDisplayCell.h; sourceTree = ""; }; + 1BFDB61A180B30E100B677C2 /* _AllSignaturesAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AllSignaturesAccount.h; sourceTree = ""; }; + 1BFDB61B180B30E100B677C2 /* _AttachmentQueueEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _AttachmentQueueEntry.h; sourceTree = ""; }; + 1BFDB61C180B30E100B677C2 /* _BorderlessButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _BorderlessButton.h; sourceTree = ""; }; + 1BFDB61D180B30E100B677C2 /* _CellFindStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _CellFindStore.h; sourceTree = ""; }; + 1BFDB61E180B30E100B677C2 /* _ComposeAttachmentEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ComposeAttachmentEnumerator.h; sourceTree = ""; }; + 1BFDB61F180B30E100B677C2 /* _ConversationFindMatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ConversationFindMatch.h; sourceTree = ""; }; + 1BFDB620180B30E100B677C2 /* _DeleteMailboxTransfer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _DeleteMailboxTransfer.h; sourceTree = ""; }; + 1BFDB621180B30E100B677C2 /* _EmptyFavoritesMessageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _EmptyFavoritesMessageView.h; sourceTree = ""; }; + 1BFDB622180B30E100B677C2 /* _ExportJob.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ExportJob.h; sourceTree = ""; }; + 1BFDB623180B30E100B677C2 /* _FavoriteButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _FavoriteButtonCell.h; sourceTree = ""; }; + 1BFDB624180B30E100B677C2 /* _FilteredListInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _FilteredListInfo.h; sourceTree = ""; }; + 1BFDB625180B30E100B677C2 /* _IMAPMailboxEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _IMAPMailboxEntry.h; sourceTree = ""; }; + 1BFDB626180B30E100B677C2 /* _MailboxPlaceholder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailboxPlaceholder.h; sourceTree = ""; }; + 1BFDB627180B30E100B677C2 /* _MailInspectorBarSeparatorView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailInspectorBarSeparatorView.h; sourceTree = ""; }; + 1BFDB628180B30E100B677C2 /* _MailNSFontManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailNSFontManager.h; sourceTree = ""; }; + 1BFDB629180B30E100B677C2 /* _MailTableHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailTableHeaderView.h; sourceTree = ""; }; + 1BFDB62A180B30E100B677C2 /* _MailToolbarSpace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MailToolbarSpace.h; sourceTree = ""; }; + 1BFDB62B180B30E100B677C2 /* _MessageThreadingData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MessageThreadingData.h; sourceTree = ""; }; + 1BFDB62C180B30E100B677C2 /* _MessageViewerLazyPopUpButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MessageViewerLazyPopUpButtonCell.h; sourceTree = ""; }; + 1BFDB62D180B30E100B677C2 /* _MouseTracker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MouseTracker.h; sourceTree = ""; }; + 1BFDB62E180B30E100B677C2 /* _MTMAccountMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMAccountMailbox.h; sourceTree = ""; }; + 1BFDB62F180B30E100B677C2 /* _MTMArchiveMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMArchiveMailbox.h; sourceTree = ""; }; + 1BFDB630180B30E100B677C2 /* _MTMBackupMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMBackupMailbox.h; sourceTree = ""; }; + 1BFDB631180B30E100B677C2 /* _MTMDisabledSubMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMDisabledSubMetaMailbox.h; sourceTree = ""; }; + 1BFDB632180B30E100B677C2 /* _MTMDraftsMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMDraftsMailbox.h; sourceTree = ""; }; + 1BFDB633180B30E100B677C2 /* _MTMHeaderCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMHeaderCell.h; sourceTree = ""; }; + 1BFDB634180B30E100B677C2 /* _MTMInboxMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMInboxMailbox.h; sourceTree = ""; }; + 1BFDB635180B30E100B677C2 /* _MTMJunkMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMJunkMailbox.h; sourceTree = ""; }; + 1BFDB636180B30E100B677C2 /* _MTMMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMMetaMailbox.h; sourceTree = ""; }; + 1BFDB637180B30E100B677C2 /* _MTMRootMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMRootMailbox.h; sourceTree = ""; }; + 1BFDB638180B30E100B677C2 /* _MTMSectionMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMSectionMailbox.h; sourceTree = ""; }; + 1BFDB639180B30E100B677C2 /* _MTMSentMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMSentMailbox.h; sourceTree = ""; }; + 1BFDB63A180B30E100B677C2 /* _MTMSmartMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMSmartMailbox.h; sourceTree = ""; }; + 1BFDB63B180B30E100B677C2 /* _MTMStoredMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMStoredMetaMailbox.h; sourceTree = ""; }; + 1BFDB63C180B30E100B677C2 /* _MTMStoredSubMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMStoredSubMetaMailbox.h; sourceTree = ""; }; + 1BFDB63D180B30E100B677C2 /* _MTMSubMetaMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMSubMetaMailbox.h; sourceTree = ""; }; + 1BFDB63E180B30E100B677C2 /* _MTMTrashMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MTMTrashMailbox.h; sourceTree = ""; }; + 1BFDB63F180B30E100B677C2 /* _MVAlertInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MVAlertInfo.h; sourceTree = ""; }; + 1BFDB640180B30E100B677C2 /* _RoundedRectTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _RoundedRectTextFieldCell.h; sourceTree = ""; }; + 1BFDB641180B30E100B677C2 /* _SidebarButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SidebarButton.h; sourceTree = ""; }; + 1BFDB642180B30E100B677C2 /* _SidebarButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SidebarButtonCell.h; sourceTree = ""; }; + 1BFDB643180B30E100B677C2 /* _SlidingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SlidingView.h; sourceTree = ""; }; + 1BFDB644180B30E100B677C2 /* _SortBarButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SortBarButton.h; sourceTree = ""; }; + 1BFDB645180B30E100B677C2 /* _SortBarButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _SortBarButtonCell.h; sourceTree = ""; }; + 1BFDB646180B30E100B677C2 /* _StationeryThumbnailCreator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _StationeryThumbnailCreator.h; sourceTree = ""; }; + 1BFDB647180B30E100B677C2 /* _TextButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _TextButtonCell.h; sourceTree = ""; }; + 1BFDB648180B30E100B677C2 /* _ThreadDisclosureTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _ThreadDisclosureTextFieldCell.h; sourceTree = ""; }; + 1BFDB649180B30E100B677C2 /* _TransferOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _TransferOperation.h; sourceTree = ""; }; + 1BFDB64A180B30E100B677C2 /* _VisibleStateObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _VisibleStateObject.h; sourceTree = ""; }; + 1BFDB64B180B30E100B677C2 /* AccountCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountCell.h; sourceTree = ""; }; + 1BFDB64C180B30E100B677C2 /* AccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountDetails.h; sourceTree = ""; }; + 1BFDB64D180B30E100B677C2 /* AccountInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountInfo.h; sourceTree = ""; }; + 1BFDB64E180B30E100B677C2 /* AccountInfoTabOwner-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AccountInfoTabOwner-Protocol.h"; sourceTree = ""; }; + 1BFDB64F180B30E100B677C2 /* AccountPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountPreferences.h; sourceTree = ""; }; + 1BFDB650180B30E100B677C2 /* AccountSetupManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountSetupManager.h; sourceTree = ""; }; + 1BFDB651180B30E100B677C2 /* AccountStatusDataSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountStatusDataSource.h; sourceTree = ""; }; + 1BFDB652180B30E100B677C2 /* AccountStatusDataSourceDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AccountStatusDataSourceDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB653180B30E100B677C2 /* AccountSummary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccountSummary.h; sourceTree = ""; }; + 1BFDB654180B30E100B677C2 /* ActivityAggregateView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityAggregateView.h; sourceTree = ""; }; + 1BFDB655180B30E100B677C2 /* ActivityProgressPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityProgressPanel.h; sourceTree = ""; }; + 1BFDB656180B30E100B677C2 /* ActivityViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewController.h; sourceTree = ""; }; + 1BFDB657180B30E100B677C2 /* ActivityViewEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewEntry.h; sourceTree = ""; }; + 1BFDB658180B30E100B677C2 /* ActivityViewer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewer.h; sourceTree = ""; }; + 1BFDB659180B30E100B677C2 /* ActivityViewerMailSound.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivityViewerMailSound.h; sourceTree = ""; }; + 1BFDB65A180B30E100B677C2 /* AddressHistoryController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddressHistoryController.h; sourceTree = ""; }; + 1BFDB65B180B30E100B677C2 /* AddressPicker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddressPicker.h; sourceTree = ""; }; + 1BFDB65C180B30E100B677C2 /* AppleScriptPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppleScriptPopUpButton.h; sourceTree = ""; }; + 1BFDB65D180B30E100B677C2 /* Assistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Assistant.h; sourceTree = ""; }; + 1BFDB65E180B30E100B677C2 /* AssistantDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AssistantDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB65F180B30E100B677C2 /* AssistantManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AssistantManager.h; sourceTree = ""; }; + 1BFDB660180B30E100B677C2 /* AttachmentDragSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AttachmentDragSession.h; sourceTree = ""; }; + 1BFDB661180B30E100B677C2 /* AttachmentLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AttachmentLoader.h; sourceTree = ""; }; + 1BFDB662180B30E100B677C2 /* AttachmentManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AttachmentManager.h; sourceTree = ""; }; + 1BFDB663180B30E100B677C2 /* AuthSchemeBindingProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthSchemeBindingProxy.h; sourceTree = ""; }; + 1BFDB664180B30E100B677C2 /* AuthSchemeValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthSchemeValueTransformer.h; sourceTree = ""; }; + 1BFDB665180B30E100B677C2 /* BannerBackgroundView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BannerBackgroundView.h; sourceTree = ""; }; + 1BFDB666180B30E100B677C2 /* BannerContainerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BannerContainerViewController.h; sourceTree = ""; }; + 1BFDB667180B30E100B677C2 /* BannerImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BannerImageView.h; sourceTree = ""; }; + 1BFDB668180B30E100B677C2 /* BannerTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BannerTextFieldCell.h; sourceTree = ""; }; + 1BFDB669180B30E100B677C2 /* BannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BannerViewController.h; sourceTree = ""; }; + 1BFDB66A180B30E100B677C2 /* BindingsEnabledMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BindingsEnabledMenu.h; sourceTree = ""; }; + 1BFDB66B180B30E100B677C2 /* BlockedWebPluginView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BlockedWebPluginView.h; sourceTree = ""; }; + 1BFDB66C180B30E100B677C2 /* BorderlessToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BorderlessToolbarItem.h; sourceTree = ""; }; + 1BFDB66D180B30E100B677C2 /* BusyStatusErrorWindowDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BusyStatusErrorWindowDelegate.h; sourceTree = ""; }; + 1BFDB66E180B30E100B677C2 /* ButtonIconTextCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ButtonIconTextCell.h; sourceTree = ""; }; + 1BFDB66F180B30E100B677C2 /* CALayer-MailCALayerAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "CALayer-MailCALayerAdditions.h"; sourceTree = ""; }; + 1BFDB670180B30E100B677C2 /* CalendarBannerIconCreator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CalendarBannerIconCreator.h; sourceTree = ""; }; + 1BFDB671180B30E100B677C2 /* CalendarBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CalendarBannerViewController.h; sourceTree = ""; }; + 1BFDB672180B30E100B677C2 /* CDStructures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDStructures.h; sourceTree = ""; }; + 1BFDB673180B30E100B677C2 /* CertificateBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CertificateBannerViewController.h; sourceTree = ""; }; + 1BFDB674180B30E100B677C2 /* ChildBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChildBannerViewController.h; sourceTree = ""; }; + 1BFDB675180B30E100B677C2 /* ClippedItemsIndicator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ClippedItemsIndicator.h; sourceTree = ""; }; + 1BFDB676180B30E100B677C2 /* ClippedItemsIndicatorDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ClippedItemsIndicatorDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB677180B30E100B677C2 /* ColorBackgroundView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ColorBackgroundView.h; sourceTree = ""; }; + 1BFDB678180B30E100B677C2 /* ComposeBackEnd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeBackEnd.h; sourceTree = ""; }; + 1BFDB679180B30E100B677C2 /* ComposeBackEnd_Scripting.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeBackEnd_Scripting.h; sourceTree = ""; }; + 1BFDB67A180B30E100B677C2 /* ComposeHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeHeaderView.h; sourceTree = ""; }; + 1BFDB67B180B30E100B677C2 /* ComposeSpellChecker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeSpellChecker.h; sourceTree = ""; }; + 1BFDB67C180B30E100B677C2 /* ComposeStatusView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeStatusView.h; sourceTree = ""; }; + 1BFDB67D180B30E100B677C2 /* ComposeView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeView.h; sourceTree = ""; }; + 1BFDB67E180B30E100B677C2 /* ComposeViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeViewController.h; sourceTree = ""; }; + 1BFDB67F180B30E100B677C2 /* ComposeViewControllerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ComposeViewControllerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB680180B30E100B677C2 /* ComposeWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeWindow.h; sourceTree = ""; }; + 1BFDB681180B30E100B677C2 /* ComposeWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposeWindowController.h; sourceTree = ""; }; + 1BFDB682180B30E100B677C2 /* ComposingPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComposingPreferences.h; sourceTree = ""; }; + 1BFDB683180B30E100B677C2 /* ConnectionDoctor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConnectionDoctor.h; sourceTree = ""; }; + 1BFDB684180B30E100B677C2 /* ContentSplitViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContentSplitViewController.h; sourceTree = ""; }; + 1BFDB685180B30E100B677C2 /* Conversation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Conversation.h; sourceTree = ""; }; + 1BFDB686180B30E100B677C2 /* ConversationCellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationCellView.h; sourceTree = ""; }; + 1BFDB687180B30E100B677C2 /* ConversationHeightStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationHeightStorage.h; sourceTree = ""; }; + 1BFDB688180B30E100B677C2 /* ConversationMember.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationMember.h; sourceTree = ""; }; + 1BFDB689180B30E100B677C2 /* ConversationMemberArrayController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationMemberArrayController.h; sourceTree = ""; }; + 1BFDB68A180B30E100B677C2 /* ConversationsObserver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationsObserver.h; sourceTree = ""; }; + 1BFDB68B180B30E100B677C2 /* ConversationView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationView.h; sourceTree = ""; }; + 1BFDB68C180B30E100B677C2 /* ConversationViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationViewController.h; sourceTree = ""; }; + 1BFDB68D180B30E100B677C2 /* ConversationViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ConversationViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB68E180B30E100B677C2 /* ConversationViewFindController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConversationViewFindController.h; sourceTree = ""; }; + 1BFDB68F180B30E100B677C2 /* CriteriaUIHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CriteriaUIHelper.h; sourceTree = ""; }; + 1BFDB690180B30E100B677C2 /* CriterionView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CriterionView.h; sourceTree = ""; }; + 1BFDB691180B30E100B677C2 /* DateCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DateCell.h; sourceTree = ""; }; + 1BFDB692180B30E100B677C2 /* DefaultApplicationPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DefaultApplicationPopUpButton.h; sourceTree = ""; }; + 1BFDB693180B30E100B677C2 /* DeletingTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeletingTableView.h; sourceTree = ""; }; + 1BFDB694180B30E100B677C2 /* DeliveryFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeliveryFailure.h; sourceTree = ""; }; + 1BFDB695180B30E100B677C2 /* DeliveryQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeliveryQueue.h; sourceTree = ""; }; + 1BFDB696180B30E100B677C2 /* DockCountController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DockCountController.h; sourceTree = ""; }; + 1BFDB697180B30E100B677C2 /* DocumentEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DocumentEditor.h; sourceTree = ""; }; + 1BFDB698180B30E100B677C2 /* DocumentEditor_Scripting.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DocumentEditor_Scripting.h; sourceTree = ""; }; + 1BFDB699180B30E100B677C2 /* DOMCharacterData-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMCharacterData-MailExtras.h"; sourceTree = ""; }; + 1BFDB69A180B30E100B677C2 /* DOMCSSValue-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMCSSValue-MailExtras.h"; sourceTree = ""; }; + 1BFDB69B180B30E100B677C2 /* DOMDocument-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMDocument-MailExtras.h"; sourceTree = ""; }; + 1BFDB69C180B30E100B677C2 /* DOMDocumentFragment-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMDocumentFragment-MailExtras.h"; sourceTree = ""; }; + 1BFDB69D180B30E100B677C2 /* DOMElement-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMElement-MailExtras.h"; sourceTree = ""; }; + 1BFDB69E180B30E100B677C2 /* DOMElement-MailHTMLAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMElement-MailHTMLAttachments.h"; sourceTree = ""; }; + 1BFDB69F180B30E100B677C2 /* DOMEventListener-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMEventListener-Protocol.h"; sourceTree = ""; }; + 1BFDB6A0180B30E100B677C2 /* DOMHTMLDocument-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLDocument-MailExtras.h"; sourceTree = ""; }; + 1BFDB6A1180B30E100B677C2 /* DOMHTMLElement-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLElement-MailExtras.h"; sourceTree = ""; }; + 1BFDB6A2180B30E100B677C2 /* DOMHTMLElement-MailQuoteLevel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLElement-MailQuoteLevel.h"; sourceTree = ""; }; + 1BFDB6A3180B30E100B677C2 /* DOMHTMLImageElement-MailHTMLAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLImageElement-MailHTMLAttachments.h"; sourceTree = ""; }; + 1BFDB6A4180B30E100B677C2 /* DOMHTMLObjectElement-AttachmentLocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMHTMLObjectElement-AttachmentLocator.h"; sourceTree = ""; }; + 1BFDB6A5180B30E100B677C2 /* DOMNode-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMNode-MailExtras.h"; sourceTree = ""; }; + 1BFDB6A6180B30E100B677C2 /* DOMNode-MailHTMLAttachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMNode-MailHTMLAttachments.h"; sourceTree = ""; }; + 1BFDB6A7180B30E100B677C2 /* DOMRange-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMRange-MailExtras.h"; sourceTree = ""; }; + 1BFDB6A8180B30E100B677C2 /* DynamicErrorWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DynamicErrorWindowController.h; sourceTree = ""; }; + 1BFDB6A9180B30E100B677C2 /* DynamicErrorWindowDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DynamicErrorWindowDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB6AA180B30E100B677C2 /* EditableWebMessageDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditableWebMessageDocument.h; sourceTree = ""; }; + 1BFDB6AB180B30E100B677C2 /* EditingMessageWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditingMessageWebView.h; sourceTree = ""; }; + 1BFDB6AC180B30E100B677C2 /* EditingMessageWebViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "EditingMessageWebViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB6AD180B30E100B677C2 /* EditingWebMessageController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditingWebMessageController.h; sourceTree = ""; }; + 1BFDB6AE180B30E100B677C2 /* EmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EmailImporter.h; sourceTree = ""; }; + 1BFDB6AF180B30E100B677C2 /* EudoraEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EudoraEmailImporter.h; sourceTree = ""; }; + 1BFDB6B0180B30E100B677C2 /* EWSAccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSAccountDetails.h; sourceTree = ""; }; + 1BFDB6B1180B30E100B677C2 /* EWSAccountSpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSAccountSpecialMailboxes.h; sourceTree = ""; }; + 1BFDB6B2180B30E100B677C2 /* EWSQuota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EWSQuota.h; sourceTree = ""; }; + 1BFDB6B3180B30E100B677C2 /* ExtractAddressCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExtractAddressCommand.h; sourceTree = ""; }; + 1BFDB6B4180B30E100B677C2 /* ExtractNameCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExtractNameCommand.h; sourceTree = ""; }; + 1BFDB6B5180B30E100B677C2 /* FauxUIElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FauxUIElement.h; sourceTree = ""; }; + 1BFDB6B6180B30E100B677C2 /* FavoriteButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoriteButton.h; sourceTree = ""; }; + 1BFDB6B7180B30E100B677C2 /* FavoriteButtonMailboxProperties.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoriteButtonMailboxProperties.h; sourceTree = ""; }; + 1BFDB6B8180B30E100B677C2 /* FavoriteMenuScrollHoverView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoriteMenuScrollHoverView.h; sourceTree = ""; }; + 1BFDB6B9180B30E100B677C2 /* FavoritesBarView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesBarView.h; sourceTree = ""; }; + 1BFDB6BA180B30E100B677C2 /* FavoritesMenuController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesMenuController.h; sourceTree = ""; }; + 1BFDB6BB180B30E100B677C2 /* FavoritesMenuDelegateProtocol-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "FavoritesMenuDelegateProtocol-Protocol.h"; sourceTree = ""; }; + 1BFDB6BC180B30E100B677C2 /* FavoritesMenuItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesMenuItem.h; sourceTree = ""; }; + 1BFDB6BD180B30E100B677C2 /* FavoritesMenuItemRowView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesMenuItemRowView.h; sourceTree = ""; }; + 1BFDB6BE180B30E100B677C2 /* FavoritesMenuOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FavoritesMenuOutlineView.h; sourceTree = ""; }; + 1BFDB6BF180B30E100B677C2 /* FeedbackCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FeedbackCollector.h; sourceTree = ""; }; + 1BFDB6C0180B30E100B677C2 /* FilesystemEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FilesystemEmailImporter.h; sourceTree = ""; }; + 1BFDB6C1180B30E100B677C2 /* FindBarContainer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FindBarContainer.h; sourceTree = ""; }; + 1BFDB6C2180B30E100B677C2 /* FlagButtonImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlagButtonImageView.h; sourceTree = ""; }; + 1BFDB6C3180B30E100B677C2 /* FlaggedStatusToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlaggedStatusToolbarItem.h; sourceTree = ""; }; + 1BFDB6C4180B30E100B677C2 /* FlaggedStatusToolbarItemDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "FlaggedStatusToolbarItemDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB6C5180B30E100B677C2 /* FlaggedStatusView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlaggedStatusView.h; sourceTree = ""; }; + 1BFDB6C6180B30E100B677C2 /* FlagsMenuItemView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlagsMenuItemView.h; sourceTree = ""; }; + 1BFDB6C7180B30E100B677C2 /* FlatTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlatTableView.h; sourceTree = ""; }; + 1BFDB6C8180B30E100B677C2 /* FlatTableViewDataCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlatTableViewDataCell.h; sourceTree = ""; }; + 1BFDB6C9180B30E100B677C2 /* FlippedView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlippedView.h; sourceTree = ""; }; + 1BFDB6CA180B30E100B677C2 /* FontPreferenceContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FontPreferenceContainerView.h; sourceTree = ""; }; + 1BFDB6CB180B30E100B677C2 /* FontsAndColorsPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FontsAndColorsPreferences.h; sourceTree = ""; }; + 1BFDB6CC180B30E100B677C2 /* FullScreenModalCapableWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FullScreenModalCapableWindow.h; sourceTree = ""; }; + 1BFDB6CD180B30E100B677C2 /* FullScreenWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FullScreenWindowController.h; sourceTree = ""; }; + 1BFDB6CE180B30E100B677C2 /* GeneralPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GeneralPreferences.h; sourceTree = ""; }; + 1BFDB6CF180B30E100B677C2 /* GenericAttachmentFetcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GenericAttachmentFetcher.h; sourceTree = ""; }; + 1BFDB6D0180B30E100B677C2 /* GlassButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GlassButton.h; sourceTree = ""; }; + 1BFDB6D1180B30E100B677C2 /* GlassButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GlassButtonCell.h; sourceTree = ""; }; + 1BFDB6D2180B30E100B677C2 /* HeaderButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderButton.h; sourceTree = ""; }; + 1BFDB6D3180B30E100B677C2 /* HeaderButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderButtonCell.h; sourceTree = ""; }; + 1BFDB6D4180B30E100B677C2 /* HeaderLayoutManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderLayoutManager.h; sourceTree = ""; }; + 1BFDB6D5180B30E100B677C2 /* HeaderLayoutManagerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "HeaderLayoutManagerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB6D6180B30E100B677C2 /* HeadersEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeadersEditor.h; sourceTree = ""; }; + 1BFDB6D7180B30E100B677C2 /* HeaderTextContainer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderTextContainer.h; sourceTree = ""; }; + 1BFDB6D8180B30E100B677C2 /* HeaderTextView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderTextView.h; sourceTree = ""; }; + 1BFDB6D9180B30E100B677C2 /* HeaderTruncationAttachmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderTruncationAttachmentCell.h; sourceTree = ""; }; + 1BFDB6DA180B30E100B677C2 /* HeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderView.h; sourceTree = ""; }; + 1BFDB6DB180B30E100B677C2 /* HeaderViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HeaderViewController.h; sourceTree = ""; }; + 1BFDB6DC180B30E100B677C2 /* HyperlinkEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HyperlinkEditor.h; sourceTree = ""; }; + 1BFDB6DD180B30E100B677C2 /* ImageResizer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImageResizer.h; sourceTree = ""; }; + 1BFDB6DE180B30E100B677C2 /* ImageResizerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ImageResizerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB6DF180B30E100B677C2 /* IMAPAccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPAccountDetails.h; sourceTree = ""; }; + 1BFDB6E0180B30E100B677C2 /* IMAPAccountSpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPAccountSpecialMailboxes.h; sourceTree = ""; }; + 1BFDB6E1180B30E100B677C2 /* IMAPMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPMailboxes.h; sourceTree = ""; }; + 1BFDB6E2180B30E100B677C2 /* IMAPQuota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IMAPQuota.h; sourceTree = ""; }; + 1BFDB6E3180B30E100B677C2 /* IMAPUserAgent-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "IMAPUserAgent-Protocol.h"; sourceTree = ""; }; + 1BFDB6E4180B30E100B677C2 /* ImportAssistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImportAssistant.h; sourceTree = ""; }; + 1BFDB6E5180B30E100B677C2 /* Importer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Importer.h; sourceTree = ""; }; + 1BFDB6E6180B30E100B677C2 /* ImportItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImportItem.h; sourceTree = ""; }; + 1BFDB6E7180B30E100B677C2 /* InvitationAttachmentOpener.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InvitationAttachmentOpener.h; sourceTree = ""; }; + 1BFDB6E8180B30E100B677C2 /* IOErrorWindowDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IOErrorWindowDelegate.h; sourceTree = ""; }; + 1BFDB6E9180B30E100B677C2 /* JunkMailBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JunkMailBannerViewController.h; sourceTree = ""; }; + 1BFDB6EA180B30E100B677C2 /* JunkPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JunkPreferences.h; sourceTree = ""; }; + 1BFDB6EB180B30E100B677C2 /* LazyMenuSegmentedCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LazyMenuSegmentedCell.h; sourceTree = ""; }; + 1BFDB6EC180B30E100B677C2 /* LazySubmenuMenuItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LazySubmenuMenuItem.h; sourceTree = ""; }; + 1BFDB6ED180B30E100B677C2 /* LDAPServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDAPServer.h; sourceTree = ""; }; + 1BFDB6EE180B30E100B677C2 /* LibraryImportAssistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryImportAssistant.h; sourceTree = ""; }; + 1BFDB6EF180B30E100B677C2 /* LibraryUpgradeAssistant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LibraryUpgradeAssistant.h; sourceTree = ""; }; + 1BFDB6F0180B30E100B677C2 /* LoadImagesBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LoadImagesBannerViewController.h; sourceTree = ""; }; + 1BFDB6F1180B30E100B677C2 /* LoadingOverlay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LoadingOverlay.h; sourceTree = ""; }; + 1BFDB6F2180B30E100B677C2 /* MailAddressDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailAddressDelegate.h; sourceTree = ""; }; + 1BFDB6F3180B30E100B677C2 /* MailAnimatingButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailAnimatingButton.h; sourceTree = ""; }; + 1BFDB6F4180B30E100B677C2 /* MailApp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailApp.h; sourceTree = ""; }; + 1BFDB6F5180B30E100B677C2 /* MailBarContainerButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailBarContainerButton.h; sourceTree = ""; }; + 1BFDB6F6180B30E100B677C2 /* MailBarContainerButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailBarContainerButtonCell.h; sourceTree = ""; }; + 1BFDB6F7180B30E100B677C2 /* MailBarContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailBarContainerView.h; sourceTree = ""; }; + 1BFDB6F8180B30E100B677C2 /* MailboxBadgeCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxBadgeCell.h; sourceTree = ""; }; + 1BFDB6F9180B30E100B677C2 /* MailboxBadgeView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxBadgeView.h; sourceTree = ""; }; + 1BFDB6FA180B30E100B677C2 /* MailboxesChooser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesChooser.h; sourceTree = ""; }; + 1BFDB6FB180B30E100B677C2 /* MailboxesController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesController.h; sourceTree = ""; }; + 1BFDB6FC180B30E100B677C2 /* MailboxesOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesOutlineView.h; sourceTree = ""; }; + 1BFDB6FD180B30E100B677C2 /* MailboxesOutlineViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesOutlineViewController.h; sourceTree = ""; }; + 1BFDB6FE180B30E100B677C2 /* MailboxesOutlineViewControllerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxesOutlineViewControllerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB6FF180B30E200B677C2 /* MailboxesOutlineViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxesOutlineViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB700180B30E200B677C2 /* MailboxesOutlineViewStateStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesOutlineViewStateStorage.h; sourceTree = ""; }; + 1BFDB701180B30E200B677C2 /* MailboxesScrollView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesScrollView.h; sourceTree = ""; }; + 1BFDB702180B30E200B677C2 /* MailboxesSplitViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxesSplitViewController.h; sourceTree = ""; }; + 1BFDB703180B30E200B677C2 /* MailboxIndicatorCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxIndicatorCell.h; sourceTree = ""; }; + 1BFDB704180B30E200B677C2 /* MailboxIndicatorView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxIndicatorView.h; sourceTree = ""; }; + 1BFDB705180B30E200B677C2 /* MailboxOutlineItemController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxOutlineItemController.h; sourceTree = ""; }; + 1BFDB706180B30E200B677C2 /* MailboxOutlineItemControllerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxOutlineItemControllerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB707180B30E200B677C2 /* MailboxOutlineItemView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxOutlineItemView.h; sourceTree = ""; }; + 1BFDB708180B30E200B677C2 /* MailboxOutlineItemViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxOutlineItemViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB709180B30E200B677C2 /* MailboxOutlineRowView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxOutlineRowView.h; sourceTree = ""; }; + 1BFDB70A180B30E200B677C2 /* MailboxPaneBottomShadowView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxPaneBottomShadowView.h; sourceTree = ""; }; + 1BFDB70B180B30E200B677C2 /* MailboxTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailboxTextField.h; sourceTree = ""; }; + 1BFDB70C180B30E200B677C2 /* MailboxTextFieldDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailboxTextFieldDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB70D180B30E200B677C2 /* MailCopyCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailCopyCommand.h; sourceTree = ""; }; + 1BFDB70E180B30E200B677C2 /* MailDeleteCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailDeleteCommand.h; sourceTree = ""; }; + 1BFDB70F180B30E200B677C2 /* MailEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailEmailImporter.h; sourceTree = ""; }; + 1BFDB710180B30E200B677C2 /* MailFullScreenWindowDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailFullScreenWindowDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB711180B30E200B677C2 /* MailInspectorBar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailInspectorBar.h; sourceTree = ""; }; + 1BFDB712180B30E200B677C2 /* MailInspectorBarItemController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailInspectorBarItemController.h; sourceTree = ""; }; + 1BFDB713180B30E200B677C2 /* MailMoveCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailMoveCommand.h; sourceTree = ""; }; + 1BFDB714180B30E200B677C2 /* MailPopoverWell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailPopoverWell.h; sourceTree = ""; }; + 1BFDB715180B30E200B677C2 /* MailPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailPreferences.h; sourceTree = ""; }; + 1BFDB716180B30E200B677C2 /* MailScroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailScroller.h; sourceTree = ""; }; + 1BFDB717180B30E200B677C2 /* MailSearchCriteriaHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailSearchCriteriaHelper.h; sourceTree = ""; }; + 1BFDB718180B30E200B677C2 /* MailSearchScopeView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailSearchScopeView.h; sourceTree = ""; }; + 1BFDB719180B30E200B677C2 /* MailSplitView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailSplitView.h; sourceTree = ""; }; + 1BFDB71A180B30E200B677C2 /* MailStackViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailStackViewController.h; sourceTree = ""; }; + 1BFDB71B180B30E200B677C2 /* MailStackViewDragController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailStackViewDragController.h; sourceTree = ""; }; + 1BFDB71C180B30E200B677C2 /* MailTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailTableView.h; sourceTree = ""; }; + 1BFDB71D180B30E200B677C2 /* MailTableViewDelegateDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MailTableViewDelegateDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB71E180B30E200B677C2 /* MailTimeMachineController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailTimeMachineController.h; sourceTree = ""; }; + 1BFDB71F180B30E200B677C2 /* MailToCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailToCommand.h; sourceTree = ""; }; + 1BFDB720180B30E200B677C2 /* MailToolbar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailToolbar.h; sourceTree = ""; }; + 1BFDB721180B30E200B677C2 /* MailToolbarBaselineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailToolbarBaselineView.h; sourceTree = ""; }; + 1BFDB722180B30E200B677C2 /* MailToolbarSpaceItemWithPin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailToolbarSpaceItemWithPin.h; sourceTree = ""; }; + 1BFDB723180B30E200B677C2 /* MailUsageStatistics.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailUsageStatistics.h; sourceTree = ""; }; + 1BFDB724180B30E200B677C2 /* MailWebAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailWebAttachment.h; sourceTree = ""; }; + 1BFDB725180B30E200B677C2 /* MailWebViewEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailWebViewEditor.h; sourceTree = ""; }; + 1BFDB726180B30E200B677C2 /* MailWindowShadowLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailWindowShadowLayer.h; sourceTree = ""; }; + 1BFDB727180B30E200B677C2 /* MboxEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MboxEmailImporter.h; sourceTree = ""; }; + 1BFDB728180B30E200B677C2 /* MCActivityTarget-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCActivityTarget-Protocol.h"; sourceTree = ""; }; + 1BFDB729180B30E200B677C2 /* MCConnectionLogging-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCConnectionLogging-Protocol.h"; sourceTree = ""; }; + 1BFDB72A180B30E200B677C2 /* MCMessage-MailViewerAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessage-MailViewerAdditions.h"; sourceTree = ""; }; + 1BFDB72B180B30E200B677C2 /* MCMessageDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCMessageDataSource-Protocol.h"; sourceTree = ""; }; + 1BFDB72C180B30E200B677C2 /* MCUserAgent-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCUserAgent-Protocol.h"; sourceTree = ""; }; + 1BFDB72D180B30E200B677C2 /* MessageBodyScroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageBodyScroller.h; sourceTree = ""; }; + 1BFDB72E180B30E200B677C2 /* MessageDeletionTransfer-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageDeletionTransfer-Protocol.h"; sourceTree = ""; }; + 1BFDB72F180B30E200B677C2 /* MessageDraft.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageDraft.h; sourceTree = ""; }; + 1BFDB730180B30E200B677C2 /* MessageDragHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageDragHelper.h; sourceTree = ""; }; + 1BFDB731180B30E200B677C2 /* MessageEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageEditor.h; sourceTree = ""; }; + 1BFDB732180B30E200B677C2 /* MessageListCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListCell.h; sourceTree = ""; }; + 1BFDB733180B30E200B677C2 /* MessageListColumnManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListColumnManager.h; sourceTree = ""; }; + 1BFDB734180B30E200B677C2 /* MessageListContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListContainerView.h; sourceTree = ""; }; + 1BFDB735180B30E200B677C2 /* MessageListHeaderCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageListHeaderCell.h; sourceTree = ""; }; + 1BFDB736180B30E200B677C2 /* MessageMall-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageMall-Protocol.h"; sourceTree = ""; }; + 1BFDB737180B30E200B677C2 /* MessageMegaMall.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageMegaMall.h; sourceTree = ""; }; + 1BFDB738180B30E200B677C2 /* MessageMiniMall.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageMiniMall.h; sourceTree = ""; }; + 1BFDB739180B30E200B677C2 /* MessageSaver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageSaver.h; sourceTree = ""; }; + 1BFDB73A180B30E200B677C2 /* MessageSegmentedCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageSegmentedCell.h; sourceTree = ""; }; + 1BFDB73B180B30E200B677C2 /* MessageSegmentedControl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageSegmentedControl.h; sourceTree = ""; }; + 1BFDB73C180B30E200B677C2 /* MessageSelection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageSelection.h; sourceTree = ""; }; + 1BFDB73D180B30E200B677C2 /* MessageTextView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageTextView.h; sourceTree = ""; }; + 1BFDB73E180B30E200B677C2 /* MessageTransfer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageTransfer.h; sourceTree = ""; }; + 1BFDB73F180B30E200B677C2 /* MessageTransferDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageTransferDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB740180B30E200B677C2 /* MessageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageView.h; sourceTree = ""; }; + 1BFDB741180B30E200B677C2 /* MessageViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewController.h; sourceTree = ""; }; + 1BFDB742180B30E200B677C2 /* MessageViewer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewer.h; sourceTree = ""; }; + 1BFDB743180B30E200B677C2 /* MessageViewerLazyPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewerLazyPopUpButton.h; sourceTree = ""; }; + 1BFDB744180B30E200B677C2 /* MessageViewerSearchField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageViewerSearchField.h; sourceTree = ""; }; + 1BFDB745180B30E200B677C2 /* MessageViewerSearchFieldFocusDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageViewerSearchFieldFocusDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB746180B30E200B677C2 /* MessageWebDocumentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageWebDocumentView.h; sourceTree = ""; }; + 1BFDB747180B30E200B677C2 /* MessageWebDocumentViewGroupManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageWebDocumentViewGroupManager.h; sourceTree = ""; }; + 1BFDB748180B30E200B677C2 /* MessageWebHTMLView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageWebHTMLView.h; sourceTree = ""; }; + 1BFDB749180B30E200B677C2 /* MessageWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MessageWebView.h; sourceTree = ""; }; + 1BFDB74A180B30E200B677C2 /* MFAccount-MailUIExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFAccount-MailUIExtras.h"; sourceTree = ""; }; + 1BFDB74B180B30E200B677C2 /* MFAddProgressMonitor-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFAddProgressMonitor-Protocol.h"; sourceTree = ""; }; + 1BFDB74C180B30E200B677C2 /* MFDeliveryAccount-MailUIExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFDeliveryAccount-MailUIExtras.h"; sourceTree = ""; }; + 1BFDB74D180B30E200B677C2 /* MFEWSAccount-MailUIExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFEWSAccount-MailUIExtras.h"; sourceTree = ""; }; + 1BFDB74E180B30E200B677C2 /* MFLibraryUpgraderDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFLibraryUpgraderDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB74F180B30E200B677C2 /* MFMailbox-MessageListAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFMailbox-MessageListAdditions.h"; sourceTree = ""; }; + 1BFDB750180B30E200B677C2 /* MFMessageSortContext-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFMessageSortContext-Protocol.h"; sourceTree = ""; }; + 1BFDB751180B30E200B677C2 /* MFMessageSortingValueDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFMessageSortingValueDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB752180B30E200B677C2 /* MFUIMailbox-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFUIMailbox-Protocol.h"; sourceTree = ""; }; + 1BFDB753180B30E200B677C2 /* MFUserAgent-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFUserAgent-Protocol.h"; sourceTree = ""; }; + 1BFDB754180B30E200B677C2 /* MFWebMessageDocument-Attachments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MFWebMessageDocument-Attachments.h"; sourceTree = ""; }; + 1BFDB755180B30E200B677C2 /* ModalDimmingWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ModalDimmingWindow.h; sourceTree = ""; }; + 1BFDB756180B30E200B677C2 /* MouseTrackingWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MouseTrackingWindow.h; sourceTree = ""; }; + 1BFDB757180B30E200B677C2 /* MTMBufferedController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMBufferedController.h; sourceTree = ""; }; + 1BFDB758180B30E200B677C2 /* MTMBytesFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMBytesFormatter.h; sourceTree = ""; }; + 1BFDB759180B30E200B677C2 /* MTMDiskMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMDiskMessage.h; sourceTree = ""; }; + 1BFDB75A180B30E200B677C2 /* MTMFakeMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMFakeMailbox.h; sourceTree = ""; }; + 1BFDB75B180B30E200B677C2 /* MTMFakeMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMFakeMessage.h; sourceTree = ""; }; + 1BFDB75C180B30E200B677C2 /* MTMFlagsCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMFlagsCell.h; sourceTree = ""; }; + 1BFDB75D180B30E200B677C2 /* MTMFullWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMFullWindowController.h; sourceTree = ""; }; + 1BFDB75E180B30E200B677C2 /* MTMIndexedMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMIndexedMessage.h; sourceTree = ""; }; + 1BFDB75F180B30E200B677C2 /* MTMLoadingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMLoadingView.h; sourceTree = ""; }; + 1BFDB760180B30E200B677C2 /* MTMMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMailbox.h; sourceTree = ""; }; + 1BFDB761180B30E200B677C2 /* MTMMailboxChangedPredicate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMailboxChangedPredicate.h; sourceTree = ""; }; + 1BFDB762180B30E200B677C2 /* MTMMailboxControllerProtocol-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MTMMailboxControllerProtocol-Protocol.h"; sourceTree = ""; }; + 1BFDB763180B30E200B677C2 /* MTMMailboxFetcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMailboxFetcher.h; sourceTree = ""; }; + 1BFDB764180B30E200B677C2 /* MTMMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMessage.h; sourceTree = ""; }; + 1BFDB765180B30E200B677C2 /* MTMMessageChangedPredicate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMessageChangedPredicate.h; sourceTree = ""; }; + 1BFDB766180B30E200B677C2 /* MTMMessageColumnController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMMessageColumnController.h; sourceTree = ""; }; + 1BFDB767180B30E200B677C2 /* MTMNumberCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMNumberCell.h; sourceTree = ""; }; + 1BFDB768180B30E200B677C2 /* MTMOutlineCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMOutlineCell.h; sourceTree = ""; }; + 1BFDB769180B30E200B677C2 /* MTMOutlineTopLevelCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMOutlineTopLevelCell.h; sourceTree = ""; }; + 1BFDB76A180B30E200B677C2 /* MTMOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMOutlineView.h; sourceTree = ""; }; + 1BFDB76B180B30E200B677C2 /* MTMReadCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMReadCell.h; sourceTree = ""; }; + 1BFDB76C180B30E200B677C2 /* MTMScroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMScroller.h; sourceTree = ""; }; + 1BFDB76D180B30E200B677C2 /* MTMSpecialMailbox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMSpecialMailbox.h; sourceTree = ""; }; + 1BFDB76E180B30E200B677C2 /* MTMTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMTableView.h; sourceTree = ""; }; + 1BFDB76F180B30E200B677C2 /* MTMWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMWindow.h; sourceTree = ""; }; + 1BFDB770180B30E200B677C2 /* MTMWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MTMWindowController.h; sourceTree = ""; }; + 1BFDB771180B30E200B677C2 /* MUITokenAddressDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MUITokenAddressDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB772180B30E200B677C2 /* MultiImageCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MultiImageCell.h; sourceTree = ""; }; + 1BFDB773180B30E200B677C2 /* MVComposeAccessoryViewOwner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MVComposeAccessoryViewOwner.h; sourceTree = ""; }; + 1BFDB774180B30E200B677C2 /* MVLinkButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MVLinkButton.h; sourceTree = ""; }; + 1BFDB775180B30E200B677C2 /* MVMailboxSelectionOwner-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MVMailboxSelectionOwner-Protocol.h"; sourceTree = ""; }; + 1BFDB776180B30E200B677C2 /* MVMailBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MVMailBundle.h; sourceTree = ""; }; + 1BFDB777180B30E200B677C2 /* MVSelectionOwner-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MVSelectionOwner-Protocol.h"; sourceTree = ""; }; + 1BFDB778180B30E200B677C2 /* MVTerminationHandler-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MVTerminationHandler-Protocol.h"; sourceTree = ""; }; + 1BFDB779180B30E200B677C2 /* NetscapeEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NetscapeEmailImporter.h; sourceTree = ""; }; + 1BFDB77A180B30E200B677C2 /* NewDeliveryFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NewDeliveryFailure.h; sourceTree = ""; }; + 1BFDB77B180B30E200B677C2 /* NoSelectionPlaceholderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoSelectionPlaceholderView.h; sourceTree = ""; }; + 1BFDB77C180B30E200B677C2 /* NSAlert-MFErrorSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAlert-MFErrorSupport.h"; sourceTree = ""; }; + 1BFDB77D180B30E200B677C2 /* NSAnimationDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAnimationDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB77E180B30E200B677C2 /* NSApplicationDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSApplicationDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB77F180B30E200B677C2 /* NSAttributedString-MailAttributedStringToHTML.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSAttributedString-MailAttributedStringToHTML.h"; sourceTree = ""; }; + 1BFDB780180B30E200B677C2 /* NSCoding-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCoding-Protocol.h"; sourceTree = ""; }; + 1BFDB781180B30E200B677C2 /* NSControl-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSControl-MailAdditions.h"; sourceTree = ""; }; + 1BFDB782180B30E200B677C2 /* NSControlTextEditingDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSControlTextEditingDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB783180B30E200B677C2 /* NSCopying-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCopying-Protocol.h"; sourceTree = ""; }; + 1BFDB784180B30E200B677C2 /* NSDatePickerCellDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDatePickerCellDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB785180B30E200B677C2 /* NSEvent-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSEvent-MailAdditions.h"; sourceTree = ""; }; + 1BFDB786180B30E200B677C2 /* NSEvent-MailViewerEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSEvent-MailViewerEvent.h"; sourceTree = ""; }; + 1BFDB787180B30E200B677C2 /* NSFileManagerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileManagerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB788180B30E200B677C2 /* NSFont-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFont-MailAdditions.h"; sourceTree = ""; }; + 1BFDB789180B30E200B677C2 /* NSFontManager-ToReplaceWithOurOwn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFontManager-ToReplaceWithOurOwn.h"; sourceTree = ""; }; + 1BFDB78A180B30E200B677C2 /* NSInspectorBarClient-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInspectorBarClient-Protocol.h"; sourceTree = ""; }; + 1BFDB78B180B30E200B677C2 /* NSInspectorBarDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInspectorBarDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB78C180B30E200B677C2 /* NSInspectorBarItemController-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSInspectorBarItemController-Protocol.h"; sourceTree = ""; }; + 1BFDB78D180B30E200B677C2 /* NSLayoutManagerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSLayoutManagerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB78E180B30E200B677C2 /* NSMediaLibraryBrowserController-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMediaLibraryBrowserController-MailAdditions.h"; sourceTree = ""; }; + 1BFDB78F180B30E200B677C2 /* NSMenuDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMenuDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB790180B30E200B677C2 /* NSNib-MailSharedNibLoading.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNib-MailSharedNibLoading.h"; sourceTree = ""; }; + 1BFDB791180B30E200B677C2 /* NSObject-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-Protocol.h"; sourceTree = ""; }; + 1BFDB792180B30E200B677C2 /* NSOpenSavePanelDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOpenSavePanelDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB793180B30E200B677C2 /* NSOutlineView-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOutlineView-MailAdditions.h"; sourceTree = ""; }; + 1BFDB794180B30E200B677C2 /* NSOutlineViewDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOutlineViewDataSource-Protocol.h"; sourceTree = ""; }; + 1BFDB795180B30E200B677C2 /* NSOutlineViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSOutlineViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB796180B30E200B677C2 /* NSPopUpButton-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPopUpButton-MailAdditions.h"; sourceTree = ""; }; + 1BFDB797180B30E200B677C2 /* NSPreferences-ActiveModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPreferences-ActiveModule.h"; sourceTree = ""; }; + 1BFDB798180B30E200B677C2 /* NSPreferencesModule-ActiveModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPreferencesModule-ActiveModule.h"; sourceTree = ""; }; + 1BFDB799180B30E200B677C2 /* NSScrollViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSScrollViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB79A180B30E200B677C2 /* NSSharingServiceDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSharingServiceDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB79B180B30E200B677C2 /* NSSharingServicePickerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSharingServicePickerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB79C180B30E200B677C2 /* NSSpeechSynthesizerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSpeechSynthesizerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB79D180B30E200B677C2 /* NSSpellChecker-AllocationOverride.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSpellChecker-AllocationOverride.h"; sourceTree = ""; }; + 1BFDB79E180B30E200B677C2 /* NSSplitViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSplitViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB79F180B30E200B677C2 /* NSString-HTMLConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-HTMLConversion.h"; sourceTree = ""; }; + 1BFDB7A0180B30E200B677C2 /* NSString-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString-MailAdditions.h"; sourceTree = ""; }; + 1BFDB7A1180B30E200B677C2 /* NSTableViewDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTableViewDataSource-Protocol.h"; sourceTree = ""; }; + 1BFDB7A2180B30E300B677C2 /* NSTableViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTableViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7A3180B30E300B677C2 /* NSTabViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTabViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7A4180B30E300B677C2 /* NSTextDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7A5180B30E300B677C2 /* NSTextFieldDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFieldDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7A6180B30E300B677C2 /* NSTextFinderAsynchronousDocumentFindMatch-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFinderAsynchronousDocumentFindMatch-Protocol.h"; sourceTree = ""; }; + 1BFDB7A7180B30E300B677C2 /* NSTextFinderBarContainer-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFinderBarContainer-Protocol.h"; sourceTree = ""; }; + 1BFDB7A8180B30E300B677C2 /* NSTextFinderClient-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFinderClient-Protocol.h"; sourceTree = ""; }; + 1BFDB7A9180B30E300B677C2 /* NSTextInput-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextInput-Protocol.h"; sourceTree = ""; }; + 1BFDB7AA180B30E300B677C2 /* NSTextInputClient-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextInputClient-Protocol.h"; sourceTree = ""; }; + 1BFDB7AB180B30E300B677C2 /* NSTextStorageDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextStorageDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7AC180B30E300B677C2 /* NSTextViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7AD180B30E300B677C2 /* NSTokenAttachmentDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTokenAttachmentDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7AE180B30E300B677C2 /* NSToolbar-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSToolbar-MailAdditions.h"; sourceTree = ""; }; + 1BFDB7AF180B30E300B677C2 /* NSToolbarDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSToolbarDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7B0180B30E300B677C2 /* NSUserDefaults-FontAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserDefaults-FontAdditions.h"; sourceTree = ""; }; + 1BFDB7B1180B30E300B677C2 /* NSUserInterfaceValidations-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserInterfaceValidations-Protocol.h"; sourceTree = ""; }; + 1BFDB7B2180B30E300B677C2 /* NSUserNotificationCenterDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserNotificationCenterDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7B3180B30E300B677C2 /* NSView-AttachmentDragSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-AttachmentDragSession.h"; sourceTree = ""; }; + 1BFDB7B4180B30E300B677C2 /* NSView-FavoriteButtonAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-FavoriteButtonAnimation.h"; sourceTree = ""; }; + 1BFDB7B5180B30E300B677C2 /* NSView-LocatingFrameViews.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-LocatingFrameViews.h"; sourceTree = ""; }; + 1BFDB7B6180B30E300B677C2 /* NSView-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MailAdditions.h"; sourceTree = ""; }; + 1BFDB7B7180B30E300B677C2 /* NSView-MailQuickLookAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MailQuickLookAdditions.h"; sourceTree = ""; }; + 1BFDB7B8180B30E300B677C2 /* NSView-MailToolbarBaselineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MailToolbarBaselineView.h"; sourceTree = ""; }; + 1BFDB7B9180B30E300B677C2 /* NSView-ResizingAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-ResizingAnimation.h"; sourceTree = ""; }; + 1BFDB7BA180B30E300B677C2 /* NSView-SlidingExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-SlidingExtras.h"; sourceTree = ""; }; + 1BFDB7BB180B30E300B677C2 /* NSWindow-BetterDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSWindow-BetterDescription.h"; sourceTree = ""; }; + 1BFDB7BC180B30E300B677C2 /* NSWindow-MailWindowAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSWindow-MailWindowAdditions.h"; sourceTree = ""; }; + 1BFDB7BD180B30E300B677C2 /* NSWindowDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSWindowDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7BE180B30E300B677C2 /* OofPanelController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OofPanelController.h; sourceTree = ""; }; + 1BFDB7BF180B30E300B677C2 /* OptionalView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OptionalView.h; sourceTree = ""; }; + 1BFDB7C0180B30E300B677C2 /* OutlineViewProgressIndicatorsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OutlineViewProgressIndicatorsController.h; sourceTree = ""; }; + 1BFDB7C1180B30E300B677C2 /* ParentBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParentBannerViewController.h; sourceTree = ""; }; + 1BFDB7C2180B30E300B677C2 /* PassbookBannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PassbookBannerViewController.h; sourceTree = ""; }; + 1BFDB7C3180B30E300B677C2 /* PasswordManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PasswordManager.h; sourceTree = ""; }; + 1BFDB7C4180B30E300B677C2 /* PhotoExporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PhotoExporter.h; sourceTree = ""; }; + 1BFDB7C5180B30E300B677C2 /* POPAccountDetails.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POPAccountDetails.h; sourceTree = ""; }; + 1BFDB7C6180B30E300B677C2 /* POPAccountSpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POPAccountSpecialMailboxes.h; sourceTree = ""; }; + 1BFDB7C7180B30E300B677C2 /* POPQuota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = POPQuota.h; sourceTree = ""; }; + 1BFDB7C8180B30E300B677C2 /* PowerManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PowerManager.h; sourceTree = ""; }; + 1BFDB7C9180B30E300B677C2 /* PrintingHTMLGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingHTMLGenerator.h; sourceTree = ""; }; + 1BFDB7CA180B30E300B677C2 /* PrintingHTMLPrinter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingHTMLPrinter.h; sourceTree = ""; }; + 1BFDB7CB180B30E300B677C2 /* PrintingManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingManager.h; sourceTree = ""; }; + 1BFDB7CC180B30E300B677C2 /* PrintingManagerForExportAsPDF.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingManagerForExportAsPDF.h; sourceTree = ""; }; + 1BFDB7CD180B30E300B677C2 /* PrintingManagerForPrinting.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingManagerForPrinting.h; sourceTree = ""; }; + 1BFDB7CE180B30E300B677C2 /* PrintingProgressPanelWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrintingProgressPanelWindowController.h; sourceTree = ""; }; + 1BFDB7CF180B30E300B677C2 /* ProgressIndicatorCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProgressIndicatorCell.h; sourceTree = ""; }; + 1BFDB7D0180B30E300B677C2 /* QLPreviewPanelDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewPanelDataSource-Protocol.h"; sourceTree = ""; }; + 1BFDB7D1180B30E300B677C2 /* QLPreviewPanelDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewPanelDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7D2180B30E300B677C2 /* QLSeamlessOpenerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLSeamlessOpenerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7D3180B30E300B677C2 /* QuickTimeAttachmentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuickTimeAttachmentView.h; sourceTree = ""; }; + 1BFDB7D4180B30E300B677C2 /* Quota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Quota.h; sourceTree = ""; }; + 1BFDB7D5180B30E300B677C2 /* QuotaBar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuotaBar.h; sourceTree = ""; }; + 1BFDB7D6180B30E300B677C2 /* RedundantContentIdentificationManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RedundantContentIdentificationManager.h; sourceTree = ""; }; + 1BFDB7D7180B30E300B677C2 /* RemoteStoreAccountSpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteStoreAccountSpecialMailboxes.h; sourceTree = ""; }; + 1BFDB7D8180B30E300B677C2 /* RemoteStoreQuota.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteStoreQuota.h; sourceTree = ""; }; + 1BFDB7D9180B30E300B677C2 /* RichMessageListSortView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RichMessageListSortView.h; sourceTree = ""; }; + 1BFDB7DA180B30E300B677C2 /* RichMessageListSortViewProtocol-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "RichMessageListSortViewProtocol-Protocol.h"; sourceTree = ""; }; + 1BFDB7DB180B30E300B677C2 /* RichTableCellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RichTableCellView.h; sourceTree = ""; }; + 1BFDB7DC180B30E300B677C2 /* RichTableRowView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RichTableRowView.h; sourceTree = ""; }; + 1BFDB7DD180B30E300B677C2 /* RolloverButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RolloverButtonCell.h; sourceTree = ""; }; + 1BFDB7DE180B30E300B677C2 /* RoundedCornersView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RoundedCornersView.h; sourceTree = ""; }; + 1BFDB7DF180B30E300B677C2 /* RoundedRectTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RoundedRectTextField.h; sourceTree = ""; }; + 1BFDB7E0180B30E300B677C2 /* RulesPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RulesPreferences.h; sourceTree = ""; }; + 1BFDB7E1180B30E300B677C2 /* ScriptableMessageTextStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScriptableMessageTextStorage.h; sourceTree = ""; }; + 1BFDB7E2180B30E300B677C2 /* SearchScopeDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SearchScopeDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7E3180B30E300B677C2 /* SegmentedToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SegmentedToolbarItem.h; sourceTree = ""; }; + 1BFDB7E4180B30E300B677C2 /* SegmentedToolbarItemSegmentedCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SegmentedToolbarItemSegmentedCell.h; sourceTree = ""; }; + 1BFDB7E5180B30E300B677C2 /* SegmentedToolbarItemSegmentItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SegmentedToolbarItemSegmentItem.h; sourceTree = ""; }; + 1BFDB7E6180B30E300B677C2 /* SelfAnimatingProgressIndicator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SelfAnimatingProgressIndicator.h; sourceTree = ""; }; + 1BFDB7E7180B30E300B677C2 /* SenderPhotoView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SenderPhotoView.h; sourceTree = ""; }; + 1BFDB7E8180B30E300B677C2 /* SGTSearchFieldQueryScopeDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SGTSearchFieldQueryScopeDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7E9180B30E300B677C2 /* Signature.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Signature.h; sourceTree = ""; }; + 1BFDB7EA180B30E300B677C2 /* SignatureBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SignatureBundle.h; sourceTree = ""; }; + 1BFDB7EB180B30E300B677C2 /* SignaturePreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SignaturePreferences.h; sourceTree = ""; }; + 1BFDB7EC180B30E300B677C2 /* SingleMessageViewer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SingleMessageViewer.h; sourceTree = ""; }; + 1BFDB7ED180B30E300B677C2 /* SlidingAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SlidingAnimation.h; sourceTree = ""; }; + 1BFDB7EE180B30E300B677C2 /* SlidingAnimationDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SlidingAnimationDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7EF180B30E300B677C2 /* SlidingViewsBar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SlidingViewsBar.h; sourceTree = ""; }; + 1BFDB7F0180B30E300B677C2 /* SmartMailboxEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SmartMailboxEditor.h; sourceTree = ""; }; + 1BFDB7F1180B30E300B677C2 /* SMTPSettings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SMTPSettings.h; sourceTree = ""; }; + 1BFDB7F2180B30E300B677C2 /* SortByMenuDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SortByMenuDelegate.h; sourceTree = ""; }; + 1BFDB7F3180B30E300B677C2 /* SoundPopUpButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SoundPopUpButton.h; sourceTree = ""; }; + 1BFDB7F4180B30E300B677C2 /* SoundPopUpButtonDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SoundPopUpButtonDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7F5180B30E300B677C2 /* SourceListBackgroundView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SourceListBackgroundView.h; sourceTree = ""; }; + 1BFDB7F6180B30E300B677C2 /* SpecialMailboxes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpecialMailboxes.h; sourceTree = ""; }; + 1BFDB7F7180B30E300B677C2 /* StackContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StackContainerView.h; sourceTree = ""; }; + 1BFDB7F8180B30E300B677C2 /* StackController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StackController.h; sourceTree = ""; }; + 1BFDB7F9180B30E300B677C2 /* StackDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "StackDataSource-Protocol.h"; sourceTree = ""; }; + 1BFDB7FA180B30E300B677C2 /* StackDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "StackDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7FB180B30E300B677C2 /* StackElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StackElement.h; sourceTree = ""; }; + 1BFDB7FC180B30E300B677C2 /* StackElementDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "StackElementDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7FD180B30E300B677C2 /* StackRevealGroup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StackRevealGroup.h; sourceTree = ""; }; + 1BFDB7FE180B30E300B677C2 /* StackRevealGroupDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "StackRevealGroupDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB7FF180B30E300B677C2 /* StarFieldController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StarFieldController.h; sourceTree = ""; }; + 1BFDB800180B30E300B677C2 /* StartupManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StartupManager.h; sourceTree = ""; }; + 1BFDB801180B30E300B677C2 /* Stationery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Stationery.h; sourceTree = ""; }; + 1BFDB802180B30E300B677C2 /* StationeryCompositeImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryCompositeImage.h; sourceTree = ""; }; + 1BFDB803180B30E300B677C2 /* StationeryCompositeImageMask.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryCompositeImageMask.h; sourceTree = ""; }; + 1BFDB804180B30E300B677C2 /* StationeryController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryController.h; sourceTree = ""; }; + 1BFDB805180B30E300B677C2 /* StationeryDynamicElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryDynamicElement.h; sourceTree = ""; }; + 1BFDB806180B30E300B677C2 /* StationeryLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationeryLoader.h; sourceTree = ""; }; + 1BFDB807180B30E300B677C2 /* StationerySelector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StationerySelector.h; sourceTree = ""; }; + 1BFDB808180B30E300B677C2 /* StatusCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StatusCell.h; sourceTree = ""; }; + 1BFDB809180B30E300B677C2 /* SubjectFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SubjectFormatter.h; sourceTree = ""; }; + 1BFDB80A180B30E300B677C2 /* TableHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableHeaderView.h; sourceTree = ""; }; + 1BFDB80B180B30E300B677C2 /* TableViewManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableViewManager.h; sourceTree = ""; }; + 1BFDB80C180B30E300B677C2 /* TemporaryAttachmentOpener.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TemporaryAttachmentOpener.h; sourceTree = ""; }; + 1BFDB80D180B30E300B677C2 /* TemporaryItemManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TemporaryItemManager.h; sourceTree = ""; }; + 1BFDB80E180B30E300B677C2 /* TextButtonToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextButtonToolbarItem.h; sourceTree = ""; }; + 1BFDB80F180B30E300B677C2 /* TextMessageDisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextMessageDisplay.h; sourceTree = ""; }; + 1BFDB810180B30E300B677C2 /* ThreadDisclosureTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThreadDisclosureTextField.h; sourceTree = ""; }; + 1BFDB811180B30E300B677C2 /* ThumbnailButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThumbnailButtonCell.h; sourceTree = ""; }; + 1BFDB812180B30E300B677C2 /* ThumbnailMatrix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThumbnailMatrix.h; sourceTree = ""; }; + 1BFDB813180B30E300B677C2 /* ThunderbirdEmailImporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThunderbirdEmailImporter.h; sourceTree = ""; }; + 1BFDB814180B30E300B677C2 /* TilingWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TilingWebView.h; sourceTree = ""; }; + 1BFDB815180B30E300B677C2 /* TransparentImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TransparentImageView.h; sourceTree = ""; }; + 1BFDB816180B30E300B677C2 /* TypeAheadWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TypeAheadWindow.h; sourceTree = ""; }; + 1BFDB817180B30E300B677C2 /* UnfoldAnimationController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UnfoldAnimationController.h; sourceTree = ""; }; + 1BFDB818180B30E300B677C2 /* UserNotificationCenterController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserNotificationCenterController.h; sourceTree = ""; }; + 1BFDB819180B30E400B677C2 /* UserScriptGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserScriptGenerator.h; sourceTree = ""; }; + 1BFDB81A180B30E400B677C2 /* UserStyleSheetGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserStyleSheetGenerator.h; sourceTree = ""; }; + 1BFDB81B180B30E400B677C2 /* VerticallyCenteredTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VerticallyCenteredTextFieldCell.h; sourceTree = ""; }; + 1BFDB81C180B30E400B677C2 /* ViewerPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewerPreferences.h; sourceTree = ""; }; + 1BFDB81D180B30E400B677C2 /* ViewingPaneView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewingPaneView.h; sourceTree = ""; }; + 1BFDB81E180B30E400B677C2 /* ViewingPaneViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewingPaneViewController.h; sourceTree = ""; }; + 1BFDB81F180B30E400B677C2 /* ViewTextAttachmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewTextAttachmentCell.h; sourceTree = ""; }; + 1BFDB820180B30E400B677C2 /* WebComposeMessageContents.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebComposeMessageContents.h; sourceTree = ""; }; + 1BFDB821180B30E400B677C2 /* WebDocumentGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebDocumentGenerator.h; sourceTree = ""; }; + 1BFDB822180B30E400B677C2 /* WebFrame-SizingExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebFrame-SizingExtras.h"; sourceTree = ""; }; + 1BFDB823180B30E400B677C2 /* WebHTMLView-MailAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebHTMLView-MailAdditions.h"; sourceTree = ""; }; + 1BFDB824180B30E400B677C2 /* WebHTMLView-ToReplaceViewWithOurOwn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebHTMLView-ToReplaceViewWithOurOwn.h"; sourceTree = ""; }; + 1BFDB825180B30E400B677C2 /* WebMessageController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebMessageController.h; sourceTree = ""; }; + 1BFDB826180B30E400B677C2 /* WebPreferences-MessageDefaultsSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebPreferences-MessageDefaultsSupport.h"; sourceTree = ""; }; + 1BFDB827180B30E400B677C2 /* WebView-MailExtras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebView-MailExtras.h"; sourceTree = ""; }; + 1BFDB828180B30E400B677C2 /* WebViewEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebViewEditor.h; sourceTree = ""; }; + 1BFDB829180B30E400B677C2 /* WebViewLoadOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebViewLoadOperation.h; sourceTree = ""; }; + 1BFDB82A180B30E400B677C2 /* WindowTransformAnimation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WindowTransformAnimation.h; sourceTree = ""; }; + 1BFDB82C180B30E400B677C2 /* _MUIAddContactsButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MUIAddContactsButton.h; sourceTree = ""; }; + 1BFDB82D180B30E400B677C2 /* _MUIJSNotificationCenterObserverRegistration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MUIJSNotificationCenterObserverRegistration.h; sourceTree = ""; }; + 1BFDB82E180B30E400B677C2 /* _MUISnapshotView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MUISnapshotView.h; sourceTree = ""; }; + 1BFDB82F180B30E400B677C2 /* _MUIWebAttachmentIconPrintingDataProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MUIWebAttachmentIconPrintingDataProvider.h; sourceTree = ""; }; + 1BFDB830180B30E400B677C2 /* _MUIWebFindMatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _MUIWebFindMatch.h; sourceTree = ""; }; + 1BFDB831180B30E400B677C2 /* CDStructures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDStructures.h; sourceTree = ""; }; + 1BFDB832180B30E400B677C2 /* CNAutocompleteFetchDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "CNAutocompleteFetchDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB833180B30E400B677C2 /* CNContactPickerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "CNContactPickerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB834180B30E400B677C2 /* MCCIDURLProtocolDataProvider-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MCCIDURLProtocolDataProvider-Protocol.h"; sourceTree = ""; }; + 1BFDB835180B30E400B677C2 /* MUIAddressField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIAddressField.h; sourceTree = ""; }; + 1BFDB836180B30E400B677C2 /* MUIAddressFieldScrollDocumentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIAddressFieldScrollDocumentView.h; sourceTree = ""; }; + 1BFDB837180B30E400B677C2 /* MUIAddressTokenAttachmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIAddressTokenAttachmentCell.h; sourceTree = ""; }; + 1BFDB838180B30E400B677C2 /* MUIBundleResourceURLProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIBundleResourceURLProtocol.h; sourceTree = ""; }; + 1BFDB839180B30E400B677C2 /* MUIContextMenuController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIContextMenuController.h; sourceTree = ""; }; + 1BFDB83A180B30E400B677C2 /* MUIFramework.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIFramework.h; sourceTree = ""; }; + 1BFDB83B180B30E400B677C2 /* MUIJSNotification.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIJSNotification.h; sourceTree = ""; }; + 1BFDB83C180B30E400B677C2 /* MUIJSNotificationCenter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIJSNotificationCenter.h; sourceTree = ""; }; + 1BFDB83D180B30E400B677C2 /* MUIMIMEDocumentGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIMIMEDocumentGenerator.h; sourceTree = ""; }; + 1BFDB83E180B30E400B677C2 /* MUITokenAddress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUITokenAddress.h; sourceTree = ""; }; + 1BFDB83F180B30E400B677C2 /* MUITokenAddressField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUITokenAddressField.h; sourceTree = ""; }; + 1BFDB840180B30E400B677C2 /* MUITokenAddressFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUITokenAddressFieldCell.h; sourceTree = ""; }; + 1BFDB841180B30E400B677C2 /* MUITokenAddressTextStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUITokenAddressTextStorage.h; sourceTree = ""; }; + 1BFDB842180B30E400B677C2 /* MUITokenAddressTextView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUITokenAddressTextView.h; sourceTree = ""; }; + 1BFDB843180B30E400B677C2 /* MUIWebAttachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWebAttachment.h; sourceTree = ""; }; + 1BFDB844180B30E400B677C2 /* MUIWebAttachmentController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWebAttachmentController.h; sourceTree = ""; }; + 1BFDB845180B30E400B677C2 /* MUIWebDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWebDocument.h; sourceTree = ""; }; + 1BFDB846180B30E400B677C2 /* MUIWebDocumentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWebDocumentView.h; sourceTree = ""; }; + 1BFDB847180B30E400B677C2 /* MUIWebDocumentViewGroup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWebDocumentViewGroup.h; sourceTree = ""; }; + 1BFDB848180B30E400B677C2 /* MUIWebFindController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWebFindController.h; sourceTree = ""; }; + 1BFDB849180B30E400B677C2 /* MUIWKView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWKView.h; sourceTree = ""; }; + 1BFDB84A180B30E400B677C2 /* MUIWKViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MUIWKViewController.h; sourceTree = ""; }; + 1BFDB84B180B30E400B677C2 /* NSCoding-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCoding-Protocol.h"; sourceTree = ""; }; + 1BFDB84C180B30E400B677C2 /* NSControlTextEditingDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSControlTextEditingDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB84D180B30E400B677C2 /* NSCopying-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSCopying-Protocol.h"; sourceTree = ""; }; + 1BFDB84E180B30E400B677C2 /* NSDraggingDestination-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDraggingDestination-Protocol.h"; sourceTree = ""; }; + 1BFDB84F180B30E400B677C2 /* NSDraggingSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDraggingSource-Protocol.h"; sourceTree = ""; }; + 1BFDB850180B30E400B677C2 /* NSObject-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject-Protocol.h"; sourceTree = ""; }; + 1BFDB851180B30E400B677C2 /* NSPasteboardWriting-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPasteboardWriting-Protocol.h"; sourceTree = ""; }; + 1BFDB852180B30E400B677C2 /* NSSharingServiceDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSharingServiceDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB853180B30E400B677C2 /* NSSharingServicePickerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSharingServicePickerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB854180B30E400B677C2 /* NSTableViewDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTableViewDataSource-Protocol.h"; sourceTree = ""; }; + 1BFDB855180B30E400B677C2 /* NSTableViewDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTableViewDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB856180B30E400B677C2 /* NSTextFieldDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFieldDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB857180B30E400B677C2 /* NSTextFinderAsynchronousDocumentFindMatch-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFinderAsynchronousDocumentFindMatch-Protocol.h"; sourceTree = ""; }; + 1BFDB858180B30E400B677C2 /* NSTextFinderClient-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextFinderClient-Protocol.h"; sourceTree = ""; }; + 1BFDB859180B30E400B677C2 /* NSTokenFieldDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTokenFieldDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB85A180B30E400B677C2 /* NSUserInterfaceValidations-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserInterfaceValidations-Protocol.h"; sourceTree = ""; }; + 1BFDB85B180B30E400B677C2 /* NSView-MUIAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSView-MUIAdditions.h"; sourceTree = ""; }; + 1BFDB85C180B30E400B677C2 /* NSWindowDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSWindowDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB85D180B30E400B677C2 /* QLPreviewItem-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewItem-Protocol.h"; sourceTree = ""; }; + 1BFDB85E180B30E400B677C2 /* QLPreviewPanelDataSource-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewPanelDataSource-Protocol.h"; sourceTree = ""; }; + 1BFDB85F180B30E400B677C2 /* QLPreviewPanelDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewPanelDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB860180B30E400B677C2 /* QLSeamlessCloserDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLSeamlessCloserDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB861180B30E400B677C2 /* QLSeamlessOpenerDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLSeamlessOpenerDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB862180B30E400B677C2 /* WKBrowsingContextLoadDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WKBrowsingContextLoadDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB863180B30E400B677C2 /* WKConnectionDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WKConnectionDelegate-Protocol.h"; sourceTree = ""; }; + 1BFDB864180B30E400B677C2 /* WKProcessGroupDelegate-Protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WKProcessGroupDelegate-Protocol.h"; sourceTree = ""; }; + 300DD0D41853ADF90057B05F /* How to get the source code */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = "How to get the source code"; path = "../../GPGTools_Core/resources/How to get the source code"; sourceTree = ""; }; + 300F29B9175F460E00C435D2 /* GMComposeKeyEventHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GMComposeKeyEventHandler.h; sourceTree = ""; }; + 300F29BA175F460E00C435D2 /* GMComposeKeyEventHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GMComposeKeyEventHandler.m; sourceTree = ""; }; + 301380D217567D26005948EE /* CertLargeStd.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CertLargeStd.png; sourceTree = ""; }; + 301380D317567D26005948EE /* CertLargeStd@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "CertLargeStd@2x.png"; sourceTree = ""; }; + 301380DB17569814005948EE /* CertLargeNotTrusted@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "CertLargeNotTrusted@2x.png"; sourceTree = ""; }; + 301380DD17569819005948EE /* CertLargeNotTrusted.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CertLargeNotTrusted.png; sourceTree = ""; }; + 301380E117578133005948EE /* GPGMail.iconset */ = {isa = PBXFileReference; lastKnownFileType = folder.iconset; path = GPGMail.iconset; sourceTree = ""; }; + 302FF157175CAE6400DB03EB /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = zh_CN; path = zh_CN.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF158175CAE6500DB03EB /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = tr.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF159175CAE6900DB03EB /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF15A175CAE6C00DB03EB /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF15B175CAE6C00DB03EB /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF15C175CAE6D00DB03EB /* pt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pt; path = pt.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF15D175CAE6E00DB03EB /* pt_PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pt_PT; path = pt_PT.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF15E175CAE7000DB03EB /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF160175CAE7200DB03EB /* nb */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nb; path = nb.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF161175CAE7400DB03EB /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF162175CAE7400DB03EB /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF163175CAE7600DB03EB /* gl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = gl; path = gl.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF164175CAE7700DB03EB /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF166175CAE7900DB03EB /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF167175CAE7A00DB03EB /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF168175CAE7B00DB03EB /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 302FF169175CAE9D00DB03EB /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF16A175CAE9E00DB03EB /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF16C175CAEA000DB03EB /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF16D175CAEA100DB03EB /* gl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = gl; path = gl.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF16E175CAEA100DB03EB /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF16F175CAEA300DB03EB /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF170175CAEA400DB03EB /* nb */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nb; path = nb.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF172175CAEA600DB03EB /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF173175CAEA600DB03EB /* pt_PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pt_PT; path = pt_PT.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF174175CAEA700DB03EB /* pt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pt; path = pt.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF175175CAEA900DB03EB /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF176175CAEAA00DB03EB /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF177175CAEAB00DB03EB /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF178175CAEAB00DB03EB /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = tr.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF179175CAEAC00DB03EB /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = zh_CN; path = zh_CN.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 302FF17A175CAEB200DB03EB /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = zh_CN; path = zh_CN.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF17B175CAEB300DB03EB /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = tr.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF17C175CAEB500DB03EB /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF17D175CAEB500DB03EB /* pt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pt; path = pt.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF17E175CAEB700DB03EB /* pt_PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pt_PT; path = pt_PT.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF180175CAEB900DB03EB /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF181175CAEBC00DB03EB /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF182175CAEBD00DB03EB /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF183175CAEBE00DB03EB /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF185175CAEBF00DB03EB /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF186175CAEC000DB03EB /* gl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = gl; path = gl.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF187175CAEC100DB03EB /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF188175CAEC200DB03EB /* nb */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nb; path = nb.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF189175CAEC400DB03EB /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF18A175CAEC500DB03EB /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/GPGAttachments.strings; sourceTree = ""; }; + 302FF18B175CAEC600DB03EB /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/GPGAttachments.strings; sourceTree = ""; }; + 3044C6E01D33A03400F500B8 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/GPGAttachment.strings; sourceTree = ""; }; + 3044C6E31D33A03400F500B8 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/GPGMail.strings; sourceTree = ""; }; + 3044C6E81D33A03400F500B8 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/SignatureView.strings; sourceTree = ""; }; + 3044C6EC1D33A04700F500B8 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 3044C6ED1D33A04B00F500B8 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 3044C6EE1D33A05000F500B8 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/GPGAttachments.strings; sourceTree = ""; }; + 3057F2EA1507C9C000FA3C0D /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = en.lproj/Special.html; sourceTree = ""; }; + 3066C60617579F5900384E29 /* CertSmallStd_Invalid.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CertSmallStd_Invalid.png; sourceTree = ""; }; + 3066C60717579F5900384E29 /* CertSmallStd_Invalid@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "CertSmallStd_Invalid@2x.png"; sourceTree = ""; }; + 3066C60817579F5900384E29 /* CertSmallStd.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = CertSmallStd.png; sourceTree = ""; }; + 3066C60917579F5900384E29 /* CertSmallStd@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "CertSmallStd@2x.png"; sourceTree = ""; }; + 3066C60E1757A0FC00384E29 /* MenuArrowWhite.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = MenuArrowWhite.png; sourceTree = ""; }; + 3066C60F1757A0FC00384E29 /* MenuArrowWhite@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "MenuArrowWhite@2x.png"; sourceTree = ""; }; + 3066C6151757A54900384E29 /* certificate.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = certificate.png; sourceTree = ""; }; + 3066C6161757A54900384E29 /* certificate@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "certificate@2x.png"; sourceTree = ""; }; + 3066C6201757ACCF00384E29 /* encryption.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = encryption.png; sourceTree = ""; }; + 3066C6211757ACCF00384E29 /* encryption@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "encryption@2x.png"; sourceTree = ""; }; + 30675D1E14F047F000914186 /* GreenDot.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = GreenDot.png; sourceTree = ""; }; + 30675D1F14F047F000914186 /* RedDot.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = RedDot.png; sourceTree = ""; }; + 30675D2014F047F000914186 /* YellowDot.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = YellowDot.png; sourceTree = ""; }; + 306E8A35178B0BCB004C5B89 /* OptionalView+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "OptionalView+GPGMail.h"; sourceTree = ""; }; + 306E8A36178B0BCB004C5B89 /* OptionalView+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "OptionalView+GPGMail.m"; sourceTree = ""; }; + 307E1C6612B17CFF0012F3DF /* GPGMailBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GPGMailBundle.h; sourceTree = ""; }; + 3082A8991D2BA85E00AB864A /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/GPGAttachment.strings; sourceTree = ""; }; + 3082A89B1D2BA85E00AB864A /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/GPGMail.strings; sourceTree = ""; }; + 3082A89E1D2BA85E00AB864A /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/SignatureView.strings; sourceTree = ""; }; + 3082A8A21D2BA86700AB864A /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/GPGAttachments.strings; sourceTree = ""; }; + 3082A8A31D2BA86700AB864A /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 3082A8A41D2BA86700AB864A /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 3082A8A51D2BA87A00AB864A /* oc */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = oc; path = oc.lproj/GPGAttachment.strings; sourceTree = ""; }; + 3082A8A71D2BA87A00AB864A /* oc */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = oc; path = oc.lproj/GPGMail.strings; sourceTree = ""; }; + 3082A8AA1D2BA87A00AB864A /* oc */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = oc; path = oc.lproj/SignatureView.strings; sourceTree = ""; }; + 3082A8AB1D2BA88100AB864A /* oc */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = oc; path = oc.lproj/GPGAttachments.strings; sourceTree = ""; }; + 3082A8AC1D2BA88100AB864A /* oc */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = oc; path = oc.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 3082A8AD1D2BA88100AB864A /* oc */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = oc; path = oc.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 3082A8AE1D2BA89300AB864A /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/GPGAttachment.strings; sourceTree = ""; }; + 3082A8B01D2BA89300AB864A /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/GPGMail.strings; sourceTree = ""; }; + 3082A8B31D2BA89300AB864A /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/SignatureView.strings; sourceTree = ""; }; + 3082A8B41D2BA89A00AB864A /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/GPGAttachments.strings; sourceTree = ""; }; + 3082A8B51D2BA89A00AB864A /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 3082A8B61D2BA89A00AB864A /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 308DE1ED14FFFB920090F6F7 /* VERSIONING */ = {isa = PBXFileReference; lastKnownFileType = text; path = VERSIONING; sourceTree = ""; }; + 30913B4312B19B3500327FDF /* en */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = en; path = en.lproj/Credits.rtf; sourceTree = ""; }; + 309BB22D1D339BF10020D480 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/GPGSignatureView.xib; sourceTree = ""; }; + 309BB22E1D339BF10020D480 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/GPGMailPreferences.xib; sourceTree = ""; }; + 309BB22F1D339BF20020D480 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/GPGAttachments.xib; sourceTree = ""; }; + 309DF974175CACFD0062ADE3 /* zh_CN */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = zh_CN; path = zh_CN.lproj/GPGAttachment.strings; sourceTree = ""; }; + 309DF976175CACFD0062ADE3 /* zh_CN */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = zh_CN; path = zh_CN.lproj/GPGMail.strings; sourceTree = ""; }; + 309DF979175CACFD0062ADE3 /* zh_CN */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = zh_CN; path = zh_CN.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC0F175CAC900023E231 /* es */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC11175CAC900023E231 /* es */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC14175CAC900023E231 /* es */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC20175CAC9C0023E231 /* fi */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC22175CAC9C0023E231 /* fi */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC25175CAC9C0023E231 /* fi */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC26175CACA50023E231 /* fr */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC28175CACA50023E231 /* fr */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC2A175CACA50023E231 /* fr */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC2B175CACAE0023E231 /* gl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = gl; path = gl.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC2D175CACAE0023E231 /* gl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = gl; path = gl.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC30175CACAE0023E231 /* gl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = gl; path = gl.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC31175CACB30023E231 /* id */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC33175CACB30023E231 /* id */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC36175CACB30023E231 /* id */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC37175CACB90023E231 /* it */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC39175CACB90023E231 /* it */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC3C175CACB90023E231 /* it */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC3D175CACBE0023E231 /* nb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = nb; path = nb.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC3F175CACBE0023E231 /* nb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = nb; path = nb.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC42175CACBE0023E231 /* nb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = nb; path = nb.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC49175CACC90023E231 /* pl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC4B175CACC90023E231 /* pl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC4E175CACC90023E231 /* pl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC4F175CACD10023E231 /* pt_PT */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = pt_PT; path = pt_PT.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC51175CACD10023E231 /* pt_PT */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = pt_PT; path = pt_PT.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC54175CACD10023E231 /* pt_PT */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = pt_PT; path = pt_PT.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC55175CACD50023E231 /* pt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = pt; path = pt.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC57175CACD50023E231 /* pt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = pt; path = pt.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC5A175CACD50023E231 /* pt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = pt; path = pt.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC5B175CACDA0023E231 /* ru */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC5D175CACDA0023E231 /* ru */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC60175CACDA0023E231 /* ru */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC61175CACDF0023E231 /* sk */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC63175CACDF0023E231 /* sk */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC66175CACDF0023E231 /* sk */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC67175CACE50023E231 /* sv */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC69175CACE50023E231 /* sv */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC6C175CACE50023E231 /* sv */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/SignatureView.strings; sourceTree = ""; }; + 30A5EC6D175CACE90023E231 /* tr */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = tr; path = tr.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A5EC6F175CACE90023E231 /* tr */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = tr; path = tr.lproj/GPGMail.strings; sourceTree = ""; }; + 30A5EC72175CACE90023E231 /* tr */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = tr; path = tr.lproj/SignatureView.strings; sourceTree = ""; }; + 30A7AE991756709F00746C29 /* InvalidBadge@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "InvalidBadge@2x.png"; sourceTree = ""; }; + 30A7AEA0175670A500746C29 /* ValidBadge@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ValidBadge@2x.png"; sourceTree = ""; }; + 30A7AEA21756727200746C29 /* YellowDot@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "YellowDot@2x.png"; sourceTree = ""; }; + 30A7AEA41756728400746C29 /* GreenDot@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "GreenDot@2x.png"; sourceTree = ""; }; + 30A7AEA61756728A00746C29 /* RedDot@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "RedDot@2x.png"; sourceTree = ""; }; + 30A8AC411E447B26007E67B0 /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A8AC421E447B26007E67B0 /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/GPGMail.strings; sourceTree = ""; }; + 30A8AC431E447B26007E67B0 /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/SignatureView.strings; sourceTree = ""; }; + 30A8AC491E447B57007E67B0 /* fa_IR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fa_IR; path = fa_IR.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30A8AC4A1E447B57007E67B0 /* fa_IR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fa_IR; path = fa_IR.lproj/GPGMail.strings; sourceTree = ""; }; + 30A8AC4B1E447B57007E67B0 /* fa_IR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fa_IR; path = fa_IR.lproj/SignatureView.strings; sourceTree = ""; }; + 30A8AC4D1E447B61007E67B0 /* fa_IR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fa_IR; path = fa_IR.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 30A8AC4E1E447B66007E67B0 /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 30A8AC501E447B6A007E67B0 /* fa_IR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fa_IR; path = fa_IR.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 30A8AC511E447B6B007E67B0 /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 30A8AC531E447B6F007E67B0 /* fa_IR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fa_IR; path = fa_IR.lproj/GPGAttachments.strings; sourceTree = ""; }; + 30A8AC541E447B75007E67B0 /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/GPGAttachments.strings; sourceTree = ""; }; + 30C37B6514FFE65400649F0B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = fr; path = fr.lproj/Credits.rtf; sourceTree = ""; }; + 30C37B6714FFE65400649F0B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 30C37C0014FFE67300649F0B /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = sv; path = sv.lproj/Credits.rtf; sourceTree = ""; }; + 30CDD511175CAE4400BEC95C /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/GPGAttachments.strings; sourceTree = ""; }; + 30CDD512175CAE4400BEC95C /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 30CDD513175CAE4400BEC95C /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 30CDD519175CAE4B00BEC95C /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/GPGAttachments.strings; sourceTree = ""; }; + 30CDD51A175CAE4B00BEC95C /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 30CDD51B175CAE4B00BEC95C /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 30D00A1F175CAC5100E209FD /* ca */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30D00A22175CAC5100E209FD /* ca */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/GPGMail.strings; sourceTree = ""; }; + 30D00A27175CAC5100E209FD /* ca */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/SignatureView.strings; sourceTree = ""; }; + 30D00A31175CAC7600E209FD /* cs */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30D00A33175CAC7600E209FD /* cs */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/GPGMail.strings; sourceTree = ""; }; + 30D00A36175CAC7600E209FD /* cs */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/SignatureView.strings; sourceTree = ""; }; + 30D00A37175CAC7C00E209FD /* da */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30D00A39175CAC7C00E209FD /* da */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/GPGMail.strings; sourceTree = ""; }; + 30D00A3C175CAC7C00E209FD /* da */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/SignatureView.strings; sourceTree = ""; }; + 30E2278E1772057A00AD9A48 /* SymmetricEncryptionOff.pdf */ = {isa = PBXFileReference; lastKnownFileType = image.pdf; path = SymmetricEncryptionOff.pdf; sourceTree = ""; }; + 30E2278F1772057A00AD9A48 /* SymmetricEncryptionOn.pdf */ = {isa = PBXFileReference; lastKnownFileType = image.pdf; path = SymmetricEncryptionOn.pdf; sourceTree = ""; }; + 30E4F6B012B3B1350093608D /* InvalidBadge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = InvalidBadge.png; sourceTree = ""; }; + 30E4F6BE12B3B1350093608D /* ValidBadge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ValidBadge.png; sourceTree = ""; }; + 30E75A661731A7F900C9E391 /* Libmacgpg.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Libmacgpg.framework; path = /Library/Frameworks/Libmacgpg.framework; sourceTree = ""; }; + 30FC04E614FFE61100AA19FE /* de */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = de; path = de.lproj/Credits.rtf; sourceTree = ""; }; + 30FC04E714FFE61100AA19FE /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/GPGAttachment.strings; sourceTree = ""; }; + 30FC04E814FFE61100AA19FE /* de */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/GPGMail.strings; sourceTree = ""; }; + 30FC04E914FFE61100AA19FE /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/GPGMailPreferences.strings; sourceTree = ""; }; + 30FC04EB14FFE61100AA19FE /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/GPGSignatureView.strings; sourceTree = ""; }; + 30FC04EE14FFE61100AA19FE /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/SignatureView.strings; sourceTree = ""; }; + 32DBCF630370AF2F00C91783 /* GPGMail_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GPGMail_Prefix.pch; sourceTree = ""; }; + 4523EB9D150515CD00497E39 /* SenTestingKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SenTestingKit.framework; path = Library/Frameworks/SenTestingKit.framework; sourceTree = DEVELOPER_DIR; }; + 4555EA49150922DF00723E1F /* GPGException+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "GPGException+GPGMail.h"; sourceTree = ""; }; + 4555EA4A150922DF00723E1F /* GPGException+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "GPGException+GPGMail.m"; sourceTree = ""; }; + 559A80550838E8300052F47C /* GPGMailPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GPGMailPreferences.h; sourceTree = ""; }; + 559A805D0838E8300052F47C /* MimeBody+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MimeBody+GPGMail.h"; sourceTree = ""; }; + 559A805E0838E8300052F47C /* MimePart+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MimePart+GPGMail.h"; sourceTree = ""; }; + 559A80600838E8300052F47C /* NSString+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+GPGMail.h"; sourceTree = ""; }; + 559A80620838E8890052F47C /* ComposeBackEnd+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ComposeBackEnd+GPGMail.h"; sourceTree = ""; }; + 559A80640838E8890052F47C /* MessageContentController+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MessageContentController+GPGMail.h"; sourceTree = ""; }; + 559A80680838E8890052F47C /* NSPreferences+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPreferences+GPGMail.h"; sourceTree = ""; }; + 559A806E0838E9B10052F47C /* GPGMailBundle.m */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.c.objc; path = GPGMailBundle.m; sourceTree = ""; tabWidth = 4; usesTabs = 0; }; + 559A80710838E9B10052F47C /* GPGMailPreferences.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GPGMailPreferences.m; sourceTree = ""; }; + 559A80780838E9B10052F47C /* MimeBody+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MimeBody+GPGMail.m"; sourceTree = ""; }; + 559A80790838E9B10052F47C /* MimePart+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MimePart+GPGMail.m"; sourceTree = ""; }; + 559A807B0838E9B10052F47C /* NSString+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+GPGMail.m"; sourceTree = ""; }; + 559A808C0838EA1C0052F47C /* MessageContentController+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MessageContentController+GPGMail.m"; sourceTree = ""; }; + 559A80900838EA1C0052F47C /* NSPreferences+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSPreferences+GPGMail.m"; sourceTree = ""; }; + 559A80E60838ED590052F47C /* GPGMailBundle.defaults */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = GPGMailBundle.defaults; sourceTree = ""; }; + 559A812E0838EEFD0052F47C /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = /System/Library/Frameworks/Security.framework; sourceTree = ""; }; + 559A81860838F3C30052F47C /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 8D5B49B6048680CD000E48DA /* GPGMail.mailbundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = GPGMail.mailbundle; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 1B87635C1786020900B24BBC /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 1B87639F17862BD700B24BBC /* AppKit.framework in Frameworks */, + 1B87639B178628FD00B24BBC /* XCTest.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8D5B49B3048680CD000E48DA /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 1B00D9071B544C0300DBDCD7 /* WebKit.framework in Frameworks */, + 30E75A671731A7F900C9E391 /* Libmacgpg.framework in Frameworks */, + 8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */, + 559A81330838EEFD0052F47C /* Security.framework in Frameworks */, + 1BF51A70108FCD1900AC8268 /* ExceptionHandling.framework in Frameworks */, + 1BAFDD701784DAB100E9BA6A /* RegexKit.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 089C166AFE841209C02AAC07 /* GPGMail */ = { + isa = PBXGroup; + children = ( + 1B06268F1746992B00E51308 /* Libmacgpg.xcodeproj */, + 559A7FB30838E4200052F47C /* Documentation */, + 1BFDB138180B30DB00B677C2 /* MailHeaders */, + 559A80310838E6870052F47C /* Headers */, + 559A806B0838E96A0052F47C /* Classes */, + 32C88E010371C26100C91783 /* Other Sources */, + 089C167CFE841241C02AAC07 /* Resources */, + 1B8763621786020A00B24BBC /* Unit Tests */, + 089C1671FE841209C02AAC07 /* Frameworks */, + 19C28FB8FE9D52D311CA2CBB /* Products */, + ); + name = GPGMail; + sourceTree = ""; + }; + 089C1671FE841209C02AAC07 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1B00D9061B544C0300DBDCD7 /* WebKit.framework */, + 1B19E83F13A2AEA4002E59ED /* AppKit.framework */, + 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */, + 1BCD9A4B13A8C6B5003024C7 /* CoreFoundation.framework */, + 4523EB9D150515CD00497E39 /* SenTestingKit.framework */, + 1BF51A6F108FCD1900AC8268 /* ExceptionHandling.framework */, + 1B19E84113A2AEA4002E59ED /* Foundation.framework */, + 30E75A661731A7F900C9E391 /* Libmacgpg.framework */, + 1BAFDD6F1784DAB100E9BA6A /* RegexKit.framework */, + 559A812E0838EEFD0052F47C /* Security.framework */, + 1B87639A178628FD00B24BBC /* XCTest.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + 089C167CFE841241C02AAC07 /* Resources */ = { + isa = PBXGroup; + children = ( + 1B8C01D613E4F25900DB9FA4 /* GPGSignatureView.xib */, + 308B8FA812A6AE5F00C99BD2 /* GPGMailPreferences.xib */, + 1BC477831468A1770061120C /* GPGAttachments.xib */, + 1B194B5911CC55A80092B810 /* GPGMail.strings */, + 1BECA61413E372AC00C622B0 /* SignatureView.strings */, + 1BBB07E11489A64600530876 /* GPGAttachment.strings */, + 559A80DC0838EC770052F47C /* Images */, + 559A80E60838ED590052F47C /* GPGMailBundle.defaults */, + 559A81860838F3C30052F47C /* Info.plist */, + 3057F2E91507C9C000FA3C0D /* Special.html */, + 30913B4512B19B3B00327FDF /* Credits.rtf */, + 1BCEE1E211CC051500488D19 /* LICENSE.txt */, + 1B56ECA816175AA8004A3ABE /* GPGMail-Entitlements.plist */, + 300DD0D41853ADF90057B05F /* How to get the source code */, + ); + path = Resources; + sourceTree = ""; + }; + 19C28FB8FE9D52D311CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D5B49B6048680CD000E48DA /* GPGMail.mailbundle */, + 1B87635F1786020900B24BBC /* Unit Tests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 1B0626A21746998D00E51308 /* Products */ = { + isa = PBXGroup; + children = ( + 1B0626AA1746998D00E51308 /* Libmacgpg.framework */, + 1B73B8D81BB20787007D601B /* UnitTests.xctest */, + 1B0626AE1746998D00E51308 /* org.gpgtools.Libmacgpg.xpc */, + 1B0626B21746998D00E51308 /* LeakFinder.app */, + 1B0626B01746998D00E51308 /* GPGTools.app */, + ); + name = Products; + sourceTree = ""; + }; + 1B51232214093750004D0818 /* NSBezierPathAdditions */ = { + isa = PBXGroup; + children = ( + 1B51232314093795004D0818 /* NSBezierPath_KBAdditions.m */, + 1B51232414093795004D0818 /* NSBezierPath+StrokeExtensions.m */, + ); + name = NSBezierPathAdditions; + sourceTree = ""; + }; + 1B512327140937A7004D0818 /* NSBezierPathAdditions */ = { + isa = PBXGroup; + children = ( + 1B512328140937C1004D0818 /* NSBezierPath_KBAdditions.h */, + 1B512329140937C1004D0818 /* NSBezierPath+StrokeExtensions.h */, + ); + name = NSBezierPathAdditions; + sourceTree = ""; + }; + 1B8763621786020A00B24BBC /* Unit Tests */ = { + isa = PBXGroup; + children = ( + 1B8763971786035300B24BBC /* NSData+GPGMailTest.m */, + 1B22C46317B138890073DF81 /* IntegrationHooks.m */, + 1B876375178602B200B24BBC /* Data */, + 1B8763631786020A00B24BBC /* Supporting Files */, + 1B22C46517B13A250073DF81 /* TestHelpers.h */, + 1B22C46617B13A250073DF81 /* TestHelpers.m */, + ); + path = "Unit Tests"; + sourceTree = ""; + }; + 1B8763631786020A00B24BBC /* Supporting Files */ = { + isa = PBXGroup; + children = ( + 1B22C45C17B138390073DF81 /* cd-bundle.bundle */, + 1B8763641786020A00B24BBC /* Unit Tests-Info.plist */, + 1B8763651786020A00B24BBC /* InfoPlist.strings */, + 1B87636A1786020A00B24BBC /* Unit Tests-Prefix.pch */, + ); + name = "Supporting Files"; + sourceTree = ""; + }; + 1B876375178602B200B24BBC /* Data */ = { + isa = PBXGroup; + children = ( + 1B876376178602B200B24BBC /* PGPInlineDataASCIIGood.txt */, + 1B876377178602B200B24BBC /* PGPInlineDataASCIIquoted.txt */, + 1B876378178602B200B24BBC /* PGPInlineDataUTF8Good.txt */, + 1B876379178602B200B24BBC /* PGPInlineDataUTF8quoted.txt */, + 1B87637A178602B200B24BBC /* PGPInlineSignatureASCIIGood.txt */, + 1B87637B178602B200B24BBC /* PGPInlineSignatureASCIIquoted.txt */, + 1B87637C178602B200B24BBC /* PGPInlineSignatureUTF8Good.txt */, + 1B87637D178602B200B24BBC /* PGPInlineSignatureUTF8quoted.txt */, + 1B87637E178602B200B24BBC /* PGPMessageBlockBad.txt */, + 1B87637F178602B200B24BBC /* PGPMessageBlockGood.txt */, + 1B876380178602B200B24BBC /* PGPMessageBlockGood2.txt */, + 1B876381178602B200B24BBC /* PGPPublicKey.txt */, + 1B876382178602B200B24BBC /* PGPSignatureASCIIGood.txt */, + 1B876383178602B200B24BBC /* PGPSignatureBlockBad.txt */, + 1B876384178602B200B24BBC /* PGPSignatureBlockGood.txt */, + 1B876385178602B200B24BBC /* PGPSignatureUTF8Good.txt */, + ); + path = Data; + sourceTree = ""; + }; + 1B92838D19F9A55600D540DF /* Yosemite_Final */ = { + isa = PBXGroup; + children = ( + 1B92838E19F9A55600D540DF /* EmailAddressing */, + 1B92839519F9A55600D540DF /* MailCore */, + 1B92845319F9A55700D540DF /* MailFW */, + 1B92856019F9A55700D540DF /* MailUI */, + 1B92877619F9A55A00D540DF /* MailUIFW */, + ); + name = Yosemite_Final; + path = Yosemite_10.10.2_14C68M; + sourceTree = ""; + }; + 1B92838E19F9A55600D540DF /* EmailAddressing */ = { + isa = PBXGroup; + children = ( + 1B92838F19F9A55600D540DF /* CDStructures.h */, + 1B92839019F9A55600D540DF /* EAEmailAddressGenerator.h */, + 1B92839119F9A55600D540DF /* EAEmailAddressLists.h */, + 1B92839219F9A55600D540DF /* EAEmailAddressParser.h */, + 1B92839319F9A55600D540DF /* EANameParser.h */, + 1B92839419F9A55600D540DF /* EmailAddressingFramework.h */, + ); + path = EmailAddressing; + sourceTree = ""; + }; + 1B92839519F9A55600D540DF /* MailCore */ = { + isa = PBXGroup; + children = ( + 1B92839619F9A55600D540DF /* _FormatFlowedWriter.h */, + 1B92839719F9A55600D540DF /* _MCActivityAggregateArrayController.h */, + 1B92839819F9A55600D540DF /* _MCActivityMonitorMultiTarget.h */, + 1B92839919F9A55600D540DF /* _MCCompositeImageRep.h */, + 1B92839A19F9A55600D540DF /* _MCConnectionAttempt.h */, + 1B92839B19F9A55600D540DF /* _MCDisplayNameInfoCacheItem.h */, + 1B92839C19F9A55600D540DF /* _MCInsecureAuthenticationRequest.h */, + 1B92839D19F9A55600D540DF /* _MCInvocationOperation.h */, + 1B92839E19F9A55600D540DF /* _MCISPLocalAccountSettingsManager.h */, + 1B92839F19F9A55600D540DF /* _MCISPOnlineAccountSettingsManager.h */, + 1B9283A019F9A55600D540DF /* _MCLogClient.h */, + 1B9283A119F9A55600D540DF /* _MCMemoryMessage.h */, + 1B9283A219F9A55600D540DF /* _MCMimeEnrichedReader.h */, + 1B9283A319F9A55600D540DF /* _MCMimeEnrichedReaderCommandStackEntry.h */, + 1B9283A419F9A55600D540DF /* _MCMimeEnrichedState.h */, + 1B9283A519F9A55600D540DF /* _MCMimeEnrichedWriter.h */, + 1B9283A619F9A55600D540DF /* _MCMimeEnrichedWriterCommandStackEntry.h */, + 1B9283A719F9A55600D540DF /* _MCMimePartEnumerator.h */, + 1B9283A819F9A55600D540DF /* _MCOutgoingMessageBody.h */, + 1B9283A919F9A55600D540DF /* _MCUserAlertRequest.h */, + 1B9283AA19F9A55600D540DF /* _MCWebAuthenticationRequest.h */, + 1B9283AB19F9A55600D540DF /* ABAddressBook-MailCoreAdditions.h */, + 1B9283AC19F9A55600D540DF /* ABAddressBook-MailCoreAdditionsInternal.h */, + 1B9283AD19F9A55600D540DF /* ABGroup-MailCoreAdditions.h */, + 1B9283AE19F9A55600D540DF /* ABMailRecent-MailCoreAdditions.h */, + 1B9283AF19F9A55600D540DF /* ABPerson-MailCoreAdditions.h */, + 1B9283B019F9A55600D540DF /* ABRecord-MailCoreAdditions.h */, + 1B9283B119F9A55600D540DF /* CDStructures.h */, + 1B9283B219F9A55600D540DF /* EWSAutodiscoverBindingDelegate-Protocol.h */, + 1B9283B319F9A55600D540DF /* IADataPluginDelegate-Protocol.h */, + 1B9283B419F9A55600D540DF /* MailCoreFramework.h */, + 1B9283B519F9A55600D540DF /* MCAccount-Protocol.h */, + 1B9283B619F9A55600D540DF /* MCAccountProxy.h */, + 1B9283B719F9A55600D540DF /* MCAccountSetupValidator.h */, + 1B9283B819F9A55600D540DF /* MCAccountSetupValidatorDelegate-Protocol.h */, + 1B9283B919F9A55600D540DF /* MCActivityAggregate.h */, + 1B9283BA19F9A55600D540DF /* MCActivityAggregator.h */, + 1B9283BB19F9A55600D540DF /* MCActivityMonitor.h */, + 1B9283BC19F9A55600D540DF /* MCActivityTarget-Protocol.h */, + 1B9283BD19F9A55600D540DF /* MCAddressManager.h */, + 1B9283BE19F9A55600D540DF /* MCApopAuthScheme.h */, + 1B9283BF19F9A55600D540DF /* MCAppleTokenAuthScheme.h */, + 1B9283C019F9A55600D540DF /* MCArchiveFileWrapper.h */, + 1B9283C119F9A55600D540DF /* MCAttachment.h */, + 1B9283C219F9A55600D540DF /* MCAttachmentWrappingTextAttachment.h */, + 1B9283C319F9A55600D540DF /* MCAuthScheme.h */, + 1B9283C419F9A55600D540DF /* MCByteSet.h */, + 1B9283C519F9A55600D540DF /* MCChanging-Protocol.h */, + 1B9283C619F9A55600D540DF /* MCCIDURLProtocol.h */, + 1B9283C719F9A55600D540DF /* MCConnection.h */, + 1B9283C819F9A55600D540DF /* MCConnectionBasedAccountProxy.h */, + 1B9283C919F9A55600D540DF /* MCConnectionBasedAutodiscoverer.h */, + 1B9283CA19F9A55600D540DF /* MCConnectionLogging-Protocol.h */, + 1B9283CB19F9A55600D540DF /* MCContactsManager.h */, + 1B9283CC19F9A55600D540DF /* MCCramMD5AuthScheme.h */, + 1B9283CD19F9A55600D540DF /* MCDataScanner.h */, + 1B9283CE19F9A55600D540DF /* MCDateFormatterFactory.h */, + 1B9283CF19F9A55600D540DF /* MCDateParser.h */, + 1B9283D019F9A55600D540DF /* MCDisplayNameInfo.h */, + 1B9283D119F9A55600D540DF /* MCDisplayNameManager.h */, + 1B9283D219F9A55600D540DF /* MCError.h */, + 1B9283D319F9A55600D540DF /* MCEWSAutodiscoverer.h */, + 1B9283D419F9A55600D540DF /* MCExternalAuthScheme.h */, + 1B9283D519F9A55600D540DF /* MCFileTypeInfo.h */, + 1B9283D619F9A55600D540DF /* MCGssapiAuthScheme.h */, + 1B9283D719F9A55700D540DF /* MCIASetupViewController.h */, + 1B9283D819F9A55700D540DF /* MCImageJunkMetadata.h */, + 1B9283D919F9A55700D540DF /* MCInvocationQueue.h */, + 1B9283DA19F9A55700D540DF /* MCISPAccountSettingsManager.h */, + 1B9283DB19F9A55700D540DF /* MCJunkRecorder.h */, + 1B9283DC19F9A55700D540DF /* MCKeychainManager.h */, + 1B9283DD19F9A55700D540DF /* MCLargeAttachmentFileWrapper.h */, + 1B9283DE19F9A55700D540DF /* MCMailboxProxy.h */, + 1B9283DF19F9A55700D540DF /* MCMainThreadInvocationOperation.h */, + 1B9283E019F9A55700D540DF /* MCManagedObjectContextManager.h */, + 1B9283E119F9A55700D540DF /* MCManagedObjectProxy.h */, + 1B9283E219F9A55700D540DF /* MCMemoryDataSource.h */, + 1B9283E319F9A55700D540DF /* MCMessage.h */, + 1B9283E419F9A55700D540DF /* MCMessageBody.h */, + 1B9283E519F9A55700D540DF /* MCMessageDataSource-Protocol.h */, + 1B9283E619F9A55700D540DF /* MCMessageGenerator.h */, + 1B9283E719F9A55700D540DF /* MCMessageHeaders.h */, + 1B9283E819F9A55700D540DF /* MCMessageSortingInterface-Protocol.h */, + 1B9283E919F9A55700D540DF /* MCMessageTracer.h */, + 1B9283EA19F9A55700D540DF /* MCMessageURLProtocol.h */, + 1B9283EB19F9A55700D540DF /* MCMimeBody.h */, + 1B9283EC19F9A55700D540DF /* MCMimeCharset.h */, + 1B9283ED19F9A55700D540DF /* MCMimeConverter.h */, + 1B9283EE19F9A55700D540DF /* MCMimeDataEncoding.h */, + 1B9283EF19F9A55700D540DF /* MCMimeDecodeContext.h */, + 1B9283F019F9A55700D540DF /* MCMimeHeaderScanContext.h */, + 1B9283F119F9A55700D540DF /* MCMimePart.h */, + 1B9283F219F9A55700D540DF /* MCMimeTextAttachment.h */, + 1B9283F319F9A55700D540DF /* MCMonitoredInvocation.h */, + 1B9283F419F9A55700D540DF /* MCMonitoredOperation.h */, + 1B9283F519F9A55700D540DF /* MCMutableByteSet.h */, + 1B9283F619F9A55700D540DF /* MCMutableMessageHeaders.h */, + 1B9283F719F9A55700D540DF /* MCNetworkController.h */, + 1B9283F819F9A55700D540DF /* MCNtlmAuthScheme.h */, + 1B9283F919F9A55700D540DF /* MCOutgoingMessage.h */, + 1B9283FA19F9A55700D540DF /* MCParsedMessage.h */, + 1B9283FB19F9A55700D540DF /* MCPersistedAccount-Protocol.h */, + 1B9283FC19F9A55700D540DF /* MCPersistedConnectionBasedAccount-Protocol.h */, + 1B9283FD19F9A55700D540DF /* MCPersistentIDFetching-Protocol.h */, + 1B9283FE19F9A55700D540DF /* MCPlaceholderArchiveFileWrapper.h */, + 1B9283FF19F9A55700D540DF /* MCPlaceholderFileWrapper.h */, + 1B92840019F9A55700D540DF /* MCPlainAuthScheme.h */, + 1B92840119F9A55700D540DF /* MCPortNumberFormatter.h */, + 1B92840219F9A55700D540DF /* MCPriorityInvocation.h */, + 1B92840319F9A55700D540DF /* MCQuotaUsage.h */, + 1B92840419F9A55700D540DF /* MCRemoteMessage.h */, + 1B92840519F9A55700D540DF /* MCRemotePlaceholderFileWrapper.h */, + 1B92840619F9A55700D540DF /* MCResultTaskOperation.h */, + 1B92840719F9A55700D540DF /* MCSaslClient.h */, + 1B92840819F9A55700D540DF /* MCSAXHTMLParsing.h */, + 1B92840919F9A55700D540DF /* MCSharedPreferencesController.h */, + 1B92840A19F9A55700D540DF /* MCSocket.h */, + 1B92840B19F9A55700D540DF /* MCSSLCertificateTrustPanelManager.h */, + 1B92840C19F9A55700D540DF /* MCStringRenderContext.h */, + 1B92840D19F9A55700D540DF /* MCSubdata.h */, + 1B92840E19F9A55700D540DF /* MCSubjectParser.h */, + 1B92840F19F9A55700D540DF /* MCTaskOperation.h */, + 1B92841019F9A55700D540DF /* MCThrowingInvocationOperation.h */, + 1B92841119F9A55700D540DF /* MCURLifier.h */, + 1B92841219F9A55700D540DF /* MCURLMatch.h */, + 1B92841319F9A55700D540DF /* MCUserAlertCoordinator.h */, + 1B92841419F9A55700D540DF /* MCWorkerThread.h */, + 1B92841519F9A55700D540DF /* NSAlertDelegate-Protocol.h */, + 1B92841619F9A55700D540DF /* NSArray-DateComparisonForRecents.h */, + 1B92841719F9A55700D540DF /* NSArray-DeepCopying.h */, + 1B92841819F9A55700D540DF /* NSArray-DerivedArray.h */, + 1B92841919F9A55700D540DF /* NSArray-MessagesFromMixedStoresConvenience.h */, + 1B92841A19F9A55700D540DF /* NSArray-removeSelf.h */, + 1B92841B19F9A55700D540DF /* NSAttributedString-FontAdditions.h */, + 1B92841C19F9A55700D540DF /* NSAttributedString-MailCoreAdditions.h */, + 1B92841D19F9A55700D540DF /* NSAttributedString-MCFormatFlowedSupport.h */, + 1B92841E19F9A55700D540DF /* NSAttributedString-MCMimeEnrichedWriter.h */, + 1B92841F19F9A55700D540DF /* NSAttributedString-MessagePasteboardSupport.h */, + 1B92842019F9A55700D540DF /* NSCharacterSet-MailCoreAdditions.h */, + 1B92842119F9A55700D540DF /* NSColor-MailCoreAdditions.h */, + 1B92842219F9A55700D540DF /* NSCopying-Protocol.h */, + 1B92842319F9A55700D540DF /* NSData-HFSDataConversion.h */, + 1B92842419F9A55700D540DF /* NSData-MailCoreAdditions.h */, + 1B92842519F9A55700D540DF /* NSData-MCMimeDataEncoding.h */, + 1B92842619F9A55700D540DF /* NSData-MCUUEnDecode.h */, + 1B92842719F9A55700D540DF /* NSDate-MailCoreAdditions.h */, + 1B92842819F9A55700D540DF /* NSError-MailCoreAdditions.h */, + 1B92842919F9A55700D540DF /* NSFileHandle-MailCoreAdditions.h */, + 1B92842A19F9A55700D540DF /* NSFileManager-MailCoreAdditions.h */, + 1B92842B19F9A55700D540DF /* NSFileWrapper-ArchivedData.h */, + 1B92842C19F9A55700D540DF /* NSFileWrapper-HFSDataConversion.h */, + 1B92842D19F9A55700D540DF /* NSFileWrapper-iCalInvitationSupport.h */, + 1B92842E19F9A55700D540DF /* NSFileWrapper-MailCoreAdditions.h */, + 1B92842F19F9A55700D540DF /* NSFileWrapper-PersistenceWithoutLosingMetadata.h */, + 1B92843019F9A55700D540DF /* NSImage-CompositeImageAdditions.h */, + 1B92843119F9A55700D540DF /* NSImage-MailCoreAdditions.h */, + 1B92843219F9A55700D540DF /* NSInvocation-MailCoreAdditions.h */, + 1B92843319F9A55700D540DF /* NSMachPortDelegate-Protocol.h */, + 1B92843419F9A55700D540DF /* NSMutableArray-Convenience.h */, + 1B92843519F9A55700D540DF /* NSMutableArray-SortedArrayExtensions.h */, + 1B92843619F9A55700D540DF /* NSMutableAttributedString-MailCoreAdditions.h */, + 1B92843719F9A55700D540DF /* NSMutableCopying-Protocol.h */, + 1B92843819F9A55700D540DF /* NSMutableData-MailCoreAdditions.h */, + 1B92843919F9A55700D540DF /* NSMutableData-MCMimeDataEncoding.h */, + 1B92843A19F9A55700D540DF /* NSMutableData-RFC2231Support.h */, + 1B92843B19F9A55700D540DF /* NSMutableDictionary-MailCoreAdditions.h */, + 1B92843C19F9A55700D540DF /* NSMutableDictionary-RFC2231Support.h */, + 1B92843D19F9A55700D540DF /* NSMutableSet-MailCoreAdditions.h */, + 1B92843E19F9A55700D540DF /* NSNumber-MailCoreAdditions.h */, + 1B92843F19F9A55700D540DF /* NSObject-Protocol.h */, + 1B92844019F9A55700D540DF /* NSOperationQueue-MCTaskOperation.h */, + 1B92844119F9A55700D540DF /* NSPortDelegate-Protocol.h */, + 1B92844219F9A55700D540DF /* NSRunLoop-InternalMailCoreAdditions.h */, + 1B92844319F9A55700D540DF /* NSRunLoop-MailCoreAdditions.h */, + 1B92844419F9A55700D540DF /* NSScanner-MailCoreAdditions.h */, + 1B92844519F9A55700D540DF /* NSSet-MailCoreAdditions.h */, + 1B92844619F9A55700D540DF /* NSStreamDelegate-Protocol.h */, + 1B92844719F9A55700D540DF /* NSString-MailCoreAdditions.h */, + 1B92844819F9A55700D540DF /* NSString-MCFormatFlowedSupport.h */, + 1B92844919F9A55700D540DF /* NSString-MCMimeCharsetSupport.h */, + 1B92844A19F9A55700D540DF /* NSString-MCMimeEnrichedReader.h */, + 1B92844B19F9A55700D540DF /* NSString-RFC2047Support.h */, + 1B92844C19F9A55700D540DF /* NSString-StationeryUtilities.h */, + 1B92844D19F9A55700D540DF /* NSTextAttachment-MCMimeSupport.h */, + 1B92844E19F9A55700D540DF /* NSURLDownloadDelegate-Protocol.h */, + 1B92844F19F9A55700D540DF /* NSURLSessionDelegate-Protocol.h */, + 1B92845019F9A55700D540DF /* NSURLSessionDownloadDelegate-Protocol.h */, + 1B92845119F9A55700D540DF /* NSURLSessionTaskDelegate-Protocol.h */, + 1B92845219F9A55700D540DF /* NSXMLParserDelegate-Protocol.h */, + ); + path = MailCore; + sourceTree = ""; + }; + 1B92845319F9A55700D540DF /* MailFW */ = { + isa = PBXGroup; + children = ( + 1B92845419F9A55700D540DF /* _IMAPOfflineRestoreContext.h */, + 1B92845519F9A55700D540DF /* _MFAppleScriptHeaderRecord.h */, + 1B92845619F9A55700D540DF /* _MFConversationsMessageCollector.h */, + 1B92845719F9A55700D540DF /* _MFDataCollector.h */, + 1B92845819F9A55700D540DF /* _MFIMAPMailboxDeletionQueueEntry.h */, + 1B92845919F9A55700D540DF /* _MFLibraryThreadRequest.h */, + 1B92845A19F9A55700D540DF /* _MFMailboxChildrenEnumerator.h */, + 1B92845B19F9A55700D540DF /* _MFMailboxEnumerator.h */, + 1B92845C19F9A55700D540DF /* _MFMessageCollector.h */, + 1B92845D19F9A55700D540DF /* _MFMessageLoadingContext.h */, + 1B92845E19F9A55700D540DF /* _MFMessageSortingValueColor.h */, + 1B92845F19F9A55700D540DF /* _MFMessageSortingValueDateLastViewed.h */, + 1B92846019F9A55700D540DF /* _MFMessageSortingValueDateReceived.h */, + 1B92846119F9A55700D540DF /* _MFMessageSortingValueDateSent.h */, + 1B92846219F9A55700D540DF /* _MFMessageSortingValueLibraryID.h */, + 1B92846319F9A55700D540DF /* _MFMessageSortingValueMailbox.h */, + 1B92846419F9A55700D540DF /* _MFMessageSortingValueMessageFlags.h */, + 1B92846519F9A55700D540DF /* _MFMessageSortingValueMessageSize.h */, + 1B92846619F9A55700D540DF /* _MFMessageSortingValueNumberOfAttachments.h */, + 1B92846719F9A55700D540DF /* _MFMessageSortingValueSender.h */, + 1B92846819F9A55700D540DF /* _MFMessageSortingValueSubject.h */, + 1B92846919F9A55700D540DF /* _MFMessageSortingValueTo.h */, + 1B92846A19F9A55700D540DF /* _MFNonContentSmartMailboxUnreadCountManager.h */, + 1B92846B19F9A55700D540DF /* _MFProgressHandlerMonitorContext.h */, + 1B92846C19F9A55700D540DF /* _MFRedundantTextIdentifierAttachmentContext.h */, + 1B92846D19F9A55700D540DF /* _MFRedundantTextIdentifierParseContext.h */, + 1B92846E19F9A55700D540DF /* _MFRedundantTextIdentifierSolutionContext.h */, + 1B92846F19F9A55700D540DF /* _MFRedundantTextIdentifierSolutionGenerator.h */, + 1B92847019F9A55700D540DF /* _MFRootlessMailbox.h */, + 1B92847119F9A55700D540DF /* _MFRoutingDictionaryContext.h */, + 1B92847219F9A55700D540DF /* _MFSeenMessagesStore.h */, + 1B92847319F9A55700D540DF /* _MFSetFlags.h */, + 1B92847419F9A55700D540DF /* _MFSmartMailboxesEnumerator.h */, + 1B92847519F9A55700D540DF /* _MFSMTPEnhancedStatusCode.h */, + 1B92847619F9A55700D540DF /* _MFZipStream.h */, + 1B92847719F9A55700D540DF /* CDStructures.h */, + 1B92847819F9A55700D540DF /* DOMDocument-JunkAdditions.h */, + 1B92847919F9A55700D540DF /* EWSExchangeServiceBindingDelegate-Protocol.h */, + 1B92847A19F9A55700D540DF /* EWSPathToExtendedFieldType-MessageAdditions.h */, + 1B92847B19F9A55700D540DF /* IMAPAccount-Protocol.h */, + 1B92847C19F9A55700D540DF /* IMAPMailbox-MCMailboxAdapter.h */, + 1B92847D19F9A55700D540DF /* IMAPMailboxDelegate-Protocol.h */, + 1B92847E19F9A55700D540DF /* IMAPMessage-Protocol.h */, + 1B92847F19F9A55700D540DF /* IMAPMessageDataSource-Protocol.h */, + 1B92848019F9A55700D540DF /* IMAPOfflineCache-Protocol.h */, + 1B92848119F9A55700D540DF /* IMAPPersistedMessage-Protocol.h */, + 1B92848219F9A55700D540DF /* MailFramework.h */, + 1B92848319F9A55700D540DF /* MailMigratorService-Protocol.h */, + 1B92848419F9A55700D540DF /* MCAccount-Protocol.h */, + 1B92848519F9A55700D540DF /* MCAccountSetupValidatorDelegate-Protocol.h */, + 1B92848619F9A55700D540DF /* MCActivityTarget-Protocol.h */, + 1B92848719F9A55700D540DF /* MCAttachment-ScriptingInternal.h */, + 1B92848819F9A55700D540DF /* MCAttachment-ScriptingSupport.h */, + 1B92848919F9A55700D540DF /* MCChanging-Protocol.h */, + 1B92848A19F9A55700D540DF /* MCCIDURLProtocolDataProvider-Protocol.h */, + 1B92848B19F9A55700D540DF /* MCGmailLabel-Protocol.h */, + 1B92848C19F9A55700D540DF /* MCMailAccount-Protocol.h */, + 1B92848D19F9A55700D540DF /* MCMailbox-Protocol.h */, + 1B92848E19F9A55700D540DF /* MCMessage-MCMailAccountAdapter.h */, + 1B92848F19F9A55700D540DF /* MCMessage-MCMailboxAdapter.h */, + 1B92849019F9A55700D540DF /* MCMessage-MFBackupAdditions.h */, + 1B92849119F9A55700D540DF /* MCMessage-ParentalControl.h */, + 1B92849219F9A55700D540DF /* MCMessage-ScriptingSupport.h */, + 1B92849319F9A55700D540DF /* MCMessage-ScriptingSupportInternal.h */, + 1B92849419F9A55700D540DF /* MCMessage-Threads.h */, + 1B92849519F9A55700D540DF /* MCMessageBody-MFAttachmentViewController.h */, + 1B92849619F9A55700D540DF /* MCMessageDataSource-Protocol.h */, + 1B92849719F9A55700D540DF /* MCMessageSortingInterface-Protocol.h */, + 1B92849819F9A55700D540DF /* MCMimePart-SpotlightSupport.h */, + 1B92849919F9A55700D540DF /* MCPersistentIDFetching-Protocol.h */, + 1B92849A19F9A55700D540DF /* MCRemoteStoreAccount-Protocol.h */, + 1B92849B19F9A55700D540DF /* MFAccount.h */, + 1B92849C19F9A55700D540DF /* MFAccountStatus.h */, + 1B92849D19F9A55700D540DF /* MFAccountStorage.h */, + 1B92849E19F9A55700D540DF /* MFAddressManager.h */, + 1B92849F19F9A55700D540DF /* MFAosImapAccount.h */, + 1B9284A019F9A55700D540DF /* MFAosSmtpAccount.h */, + 1B9284A119F9A55700D540DF /* MFAttachmentViewController.h */, + 1B9284A219F9A55700D540DF /* MFBackupManager.h */, + 1B9284A319F9A55700D540DF /* MFBehaviorTracker.h */, + 1B9284A419F9A55700D540DF /* MFBerkeleyMbox.h */, + 1B9284A519F9A55700D540DF /* MFCachedMailboxInfo.h */, + 1B9284A619F9A55700D540DF /* MFConversationCalculationContext.h */, + 1B9284A719F9A55700D540DF /* MFConversationCalculator.h */, + 1B9284A819F9A55700D540DF /* MFCriterion.h */, + 1B9284A919F9A55700D540DF /* MFCrossProcessLock.h */, + 1B9284AA19F9A55700D540DF /* MFDatabaseRecoverer.h */, + 1B9284AB19F9A55700D540DF /* MFDefaults.h */, + 1B9284AC19F9A55700D540DF /* MFDeliveryAccount.h */, + 1B9284AD19F9A55700D540DF /* MFEWSAccount.h */, + 1B9284AE19F9A55700D540DF /* MFEWSConnection.h */, + 1B9284AF19F9A55700D540DF /* MFEWSCopyItemsRequestOperation.h */, + 1B9284B019F9A55700D540DF /* MFEWSCopyItemsResponseOperation.h */, + 1B9284B119F9A55700D540DF /* MFEWSCreateEventReplyRequestOperation.h */, + 1B9284B219F9A55700D540DF /* MFEWSCreateEventReplyResponseOperation.h */, + 1B9284B319F9A55700D540DF /* MFEWSCreateFolderRequestOperation.h */, + 1B9284B419F9A55700D540DF /* MFEWSCreateFolderResponseOperation.h */, + 1B9284B519F9A55700D540DF /* MFEWSCreateItemRequestOperation.h */, + 1B9284B619F9A55700D540DF /* MFEWSCreateItemResponseOperation.h */, + 1B9284B719F9A55700D540DF /* MFEWSCreateMessageRequestOperation.h */, + 1B9284B819F9A55700D540DF /* MFEWSDeleteFolderRequestOperation.h */, + 1B9284B919F9A55700D540DF /* MFEWSDeleteItemsRequestOperation.h */, + 1B9284BA19F9A55700D540DF /* MFEWSDeliverer.h */, + 1B9284BB19F9A55700D540DF /* MFEWSDeliveryAccount.h */, + 1B9284BC19F9A55700D540DF /* MFEWSErrorHandler-Protocol.h */, + 1B9284BD19F9A55700D540DF /* MFEWSFindItemsRequestOperation.h */, + 1B9284BE19F9A55700D540DF /* MFEWSFindItemsResponseOperation.h */, + 1B9284BF19F9A55700D540DF /* MFEWSGateway.h */, + 1B9284C019F9A55700D540DF /* MFEWSGetFolderRequestOperation.h */, + 1B9284C119F9A55700D540DF /* MFEWSGetFolderResponseOperation.h */, + 1B9284C219F9A55700D540DF /* MFEWSGetItemDataRequestOperation.h */, + 1B9284C319F9A55700D540DF /* MFEWSGetItemDataResponseOperation.h */, + 1B9284C419F9A55700D540DF /* MFEWSGetItemsRequestOperation.h */, + 1B9284C519F9A55700D540DF /* MFEWSGetItemsResponseOperation.h */, + 1B9284C619F9A55700D540DF /* MFEWSGetUserOofSettingsRequestOperation.h */, + 1B9284C719F9A55700D540DF /* MFEWSGetUserOofSettingsResponseOperation.h */, + 1B9284C819F9A55700D540DF /* MFEWSLibraryUpdateOperation.h */, + 1B9284C919F9A55700D540DF /* MFEWSMessage.h */, + 1B9284CA19F9A55700D540DF /* MFEWSMoveFolderRequestOperation.h */, + 1B9284CB19F9A55700D540DF /* MFEWSOfflineGateway.h */, + 1B9284CC19F9A55700D540DF /* MFEWSRenameFolderRequestOperation.h */, + 1B9284CD19F9A55700D540DF /* MFEWSRequestOperation.h */, + 1B9284CE19F9A55700D540DF /* MFEWSResponseOperation.h */, + 1B9284CF19F9A55700D540DF /* MFEWSSetUserOofSettingsRequestOperation.h */, + 1B9284D019F9A55700D540DF /* MFEWSSetUserOofSettingsResponseOperation.h */, + 1B9284D119F9A55700D540DF /* MFEWSSizeEngine.h */, + 1B9284D219F9A55700D540DF /* MFEWSStore.h */, + 1B9284D319F9A55700D540DF /* MFEWSSuppressReadReceiptsRequestOperation.h */, + 1B9284D419F9A55700D540DF /* MFEWSSyncFolderHierarchyRequestOperation.h */, + 1B9284D519F9A55700D540DF /* MFEWSSyncFolderHierarchyResponseOperation.h */, + 1B9284D619F9A55700D540DF /* MFEWSSyncFolderItemsRequestOperation.h */, + 1B9284D719F9A55700D540DF /* MFEWSSyncFolderItemsResponseOperation.h */, + 1B9284D819F9A55700D540DF /* MFEWSUpdateItemRequestOperation.h */, + 1B9284D919F9A55700D540DF /* MFExchangeIMAPAccount.h */, + 1B9284DA19F9A55700D540DF /* MFExchangeIMAPConnection.h */, + 1B9284DB19F9A55700D540DF /* MFFilesystemWatcher.h */, + 1B9284DC19F9A55700D540DF /* MFGmailLabelStore.h */, + 1B9284DD19F9A55700D540DF /* MFHTMLConverter.h */, + 1B9284DE19F9A55700D540DF /* MFHTMLParser.h */, + 1B9284DF19F9A55700D540DF /* MFIMAPAccount.h */, + 1B9284E019F9A55700D540DF /* MFIMAPAppendMessageOperation.h */, + 1B9284E119F9A55700D540DF /* MFIMAPCopyMessagesOperation.h */, + 1B9284E219F9A55700D540DF /* MFIMAPCreateOperation.h */, + 1B9284E319F9A55700D540DF /* MFIMAPDeleteOperation.h */, + 1B9284E419F9A55700D540DF /* MFIMAPOfflineCopyOnStupidServerOperation.h */, + 1B9284E519F9A55700D540DF /* MFIMAPOperation.h */, + 1B9284E619F9A55700D540DF /* MFIMAPOperationCache.h */, + 1B9284E719F9A55700D540DF /* MFIMAPSizeEngine.h */, + 1B9284E819F9A55700D540DF /* MFIMAPStoreFlagsOperation.h */, + 1B9284E919F9A55700D540DF /* MFIMAPStoreGmailLabelsOperation.h */, + 1B9284EA19F9A55700D540DF /* MFIMAPStoreOperation.h */, + 1B9284EB19F9A55700D540DF /* MFJunkMail.h */, + 1B9284EC19F9A55700D540DF /* MFJunkMailFilter.h */, + 1B9284ED19F9A55700D540DF /* MFLibrary.h */, + 1B9284EE19F9A55700D540DF /* MFLibraryCalendarEvent.h */, + 1B9284EF19F9A55700D540DF /* MFLibraryIMAPMessage.h */, + 1B9284F019F9A55700D540DF /* MFLibraryIMAPStore.h */, + 1B9284F119F9A55700D540DF /* MFLibraryInterface-Protocol.h */, + 1B9284F219F9A55700D540DF /* MFLibraryMessage.h */, + 1B9284F319F9A55700D540DF /* MFLibraryQueries.h */, + 1B9284F419F9A55700D540DF /* MFLibraryStore.h */, + 1B9284F519F9A55700D540DF /* MFLibraryStoreMessageConsumer.h */, + 1B9284F619F9A55700D540DF /* MFLibraryThread.h */, + 1B9284F719F9A55700D540DF /* MFLibraryUpgrader.h */, + 1B9284F819F9A55700D540DF /* MFLocalAccount.h */, + 1B9284F919F9A55700D540DF /* MFLocationManager.h */, + 1B9284FA19F9A55700D540DF /* MFMailAccount.h */, + 1B9284FB19F9A55700D540DF /* MFMailbox.h */, + 1B9284FC19F9A55700D540DF /* MFMailboxDirectoryScanner.h */, + 1B9284FD19F9A55700D540DF /* MFMailDropPreferencesManager.h */, + 1B9284FE19F9A55700D540DF /* MFMailMigrator.h */, + 1B9284FF19F9A55700D540DF /* MFMessageAddressee.h */, + 1B92850019F9A55700D540DF /* MFMessageConsumer-Protocol.h */, + 1B92850119F9A55700D540DF /* MFMessageContext.h */, + 1B92850219F9A55700D540DF /* MFMessageCounts.h */, + 1B92850319F9A55700D540DF /* MFMessageCriterion.h */, + 1B92850419F9A55700D540DF /* MFMessageDeliverer.h */, + 1B92850519F9A55700D540DF /* MFMessageDelivererDelegate-Protocol.h */, + 1B92850619F9A55700D540DF /* MFMessageReplyGenerator.h */, + 1B92850719F9A55700D540DF /* MFMessageRouter.h */, + 1B92850819F9A55700D540DF /* MFMessageRouterUtilities.h */, + 1B92850919F9A55700D540DF /* MFMessageRule.h */, + 1B92850A19F9A55700D540DF /* MFMessageRuleCriterion.h */, + 1B92850B19F9A55700D540DF /* MFMessageSortingInformation.h */, + 1B92850C19F9A55700D540DF /* MFMessageSortingValue.h */, + 1B92850D19F9A55700D540DF /* MFMessageStore.h */, + 1B92850E19F9A55700D540DF /* MFMessageThread.h */, + 1B92850F19F9A55700D540DF /* MFNetworkLocation.h */, + 1B92851019F9A55700D540DF /* MFNeXTStore.h */, + 1B92851119F9A55700D540DF /* MFParentalControlAccount.h */, + 1B92851219F9A55700D540DF /* MFParentalControlManager.h */, + 1B92851319F9A55700D540DF /* MFParentalControlSettings.h */, + 1B92851419F9A55700D540DF /* MFParentalControlStore.h */, + 1B92851519F9A55700D540DF /* MFPersistenceManager.h */, + 1B92851619F9A55700D540DF /* MFPOPAccount-Protocol.h */, + 1B92851719F9A55700D540DF /* MFPOPAccount.h */, + 1B92851819F9A55700D540DF /* MFPOPConnection.h */, + 1B92851919F9A55700D540DF /* MFPOPConnectionDelegate-Protocol.h */, + 1B92851A19F9A55700D540DF /* MFPOPMessage.h */, + 1B92851B19F9A55700D540DF /* MFPOPSizeEngine.h */, + 1B92851C19F9A55700D540DF /* MFPOPStore.h */, + 1B92851D19F9A55700D540DF /* MFPreparedStatement.h */, + 1B92851E19F9A55700D540DF /* MFQuoteParser.h */, + 1B92851F19F9A55700D540DF /* MFRecoveredMessage.h */, + 1B92852019F9A55700D540DF /* MFRecoveredStore.h */, + 1B92852119F9A55700D540DF /* MFRedundantContentMarkup.h */, + 1B92852219F9A55700D540DF /* MFRedundantTextIdentifier.h */, + 1B92852319F9A55700D540DF /* MFRemoteAppendMessagesContext.h */, + 1B92852419F9A55700D540DF /* MFRemoteAttachmentManager.h */, + 1B92852519F9A55700D540DF /* MFRemoteStore.h */, + 1B92852619F9A55700D540DF /* MFRemoteStoreAccount.h */, + 1B92852719F9A55700D540DF /* MFRemoteStoreSizeEngine.h */, + 1B92852819F9A55700D540DF /* MFRouterStore-Protocol.h */, + 1B92852919F9A55700D540DF /* MFSeenMessage.h */, + 1B92852A19F9A55700D540DF /* MFSeenMessagesManager.h */, + 1B92852B19F9A55700D540DF /* MFSizeEngine.h */, + 1B92852C19F9A55700D540DF /* MFSmartMailboxUnreadCountManager.h */, + 1B92852D19F9A55700D540DF /* MFSMTPAccount.h */, + 1B92852E19F9A55700D540DF /* MFSMTPConnection.h */, + 1B92852F19F9A55700D540DF /* MFSMTPDeliverer.h */, + 1B92853019F9A55700D540DF /* MFSnippetCalculator.h */, + 1B92853119F9A55700D540DF /* MFSnippetCalculatorDelegate-Protocol.h */, + 1B92853219F9A55700D540DF /* MFSnippetManager.h */, + 1B92853319F9A55700D540DF /* MFSpecialMailbox.h */, + 1B92853419F9A55700D540DF /* MFSpotlightManager.h */, + 1B92853519F9A55700D540DF /* MFSpotlightResultCollector.h */, + 1B92853619F9A55700D540DF /* MFSqliteHandle.h */, + 1B92853719F9A55700D540DF /* MFStringUniquer.h */, + 1B92853819F9A55700D540DF /* MFSyncedFile.h */, + 1B92853919F9A55700D540DF /* MFTableOfContents.h */, + 1B92853A19F9A55700D540DF /* MFTOCMessage.h */, + 1B92853B19F9A55700D540DF /* MFUIMailbox-Protocol.h */, + 1B92853C19F9A55700D540DF /* MFUnreadCountQueryObserver.h */, + 1B92853D19F9A55700D540DF /* MFUsageCounter.h */, + 1B92853E19F9A55700D540DF /* MFVIPSendersController.h */, + 1B92853F19F9A55700D540DF /* MFWebMessageDocument.h */, + 1B92854019F9A55700D540DF /* NSAppleEventDescriptor-MessageRuleAdditions.h */, + 1B92854119F9A55700D540DF /* NSAppleScript-MessageRuleAdditions.h */, + 1B92854219F9A55700D540DF /* NSArray-AppleScriptConveniences.h */, + 1B92854319F9A55700D540DF /* NSCacheDelegate-Protocol.h */, + 1B92854419F9A55700D540DF /* NSCoding-Protocol.h */, + 1B92854519F9A55700D540DF /* NSCopying-Protocol.h */, + 1B92854619F9A55700D540DF /* NSDate-toc_extension.h */, + 1B92854719F9A55700D540DF /* NSDictionary-MailAdditions.h */, + 1B92854819F9A55700D540DF /* NSDictionary-MailFoundationAdditions.h */, + 1B92854919F9A55700D540DF /* NSFileManager-MailAdditions.h */, + 1B92854A19F9A55700D540DF /* NSFileManagerDelegate-Protocol.h */, + 1B92854B19F9A55700D540DF /* NSFilePresenter-Protocol.h */, + 1B92854C19F9A55700D540DF /* NSFileWrapper-HFSExtensions.h */, + 1B92854D19F9A55700D540DF /* NSFileWrapper-UniquePaths.h */, + 1B92854E19F9A55700D540DF /* NSKeyedUnarchiver-MailFoundationAdditions.h */, + 1B92854F19F9A55700D540DF /* NSKeyedUnarchiverDelegate-Protocol.h */, + 1B92855019F9A55700D540DF /* NSLocking-Protocol.h */, + 1B92855119F9A55700D540DF /* NSMutableDictionary-MailFoundationAdditions.h */, + 1B92855219F9A55700D540DF /* NSNotificationCenter-MainThreadPosting.h */, + 1B92855319F9A55700D540DF /* NSObject-_mf_LibraryMessageEquality.h */, + 1B92855419F9A55700D540DF /* NSObject-MainThreadMessaging.h */, + 1B92855519F9A55700D540DF /* NSObject-Protocol.h */, + 1B92855619F9A55700D540DF /* NSPersistentStoreCoordinator-MailAdditions.h */, + 1B92855719F9A55700D540DF /* NSPortDelegate-Protocol.h */, + 1B92855819F9A55700D540DF /* NSPortMessage-MailFoundationAdditions.h */, + 1B92855919F9A55700D540DF /* NSSound-MailAdditions.h */, + 1B92855A19F9A55700D540DF /* NSString-MailFrameworkAdditions.h */, + 1B92855B19F9A55700D540DF /* NSString-MailPathUtils.h */, + 1B92855C19F9A55700D540DF /* NSString-MFLibraryID.h */, + 1B92855D19F9A55700D540DF /* NSURL-MailFoundationAdditions.h */, + 1B92855E19F9A55700D540DF /* NSUserDefaults-MailAdditions.h */, + 1B92855F19F9A55700D540DF /* WebArchive-Conversion.h */, + ); + path = MailFW; + sourceTree = ""; + }; + 1B92856019F9A55700D540DF /* MailUI */ = { + isa = PBXGroup; + children = ( + 1B92856119F9A55700D540DF /* _AccountDisplayCell.h */, + 1B92856219F9A55700D540DF /* _AllSignaturesAccount.h */, + 1B92856319F9A55700D540DF /* _AttachmentQueueEntry.h */, + 1B92856419F9A55700D540DF /* _AutomaticallyAdjustingScrollView.h */, + 1B92856519F9A55700D540DF /* _BaselinePopupButton.h */, + 1B92856619F9A55700D540DF /* _BorderlessButton.h */, + 1B92856719F9A55700D540DF /* _CellFindStore.h */, + 1B92856819F9A55700D540DF /* _ComposeAttachmentEnumerator.h */, + 1B92856919F9A55700D540DF /* _ComposeDraftProxy.h */, + 1B92856A19F9A55700D540DF /* _ConversationFindMatch.h */, + 1B92856B19F9A55700D540DF /* _DeleteMailboxTransfer.h */, + 1B92856C19F9A55700D540DF /* _ExportJob.h */, + 1B92856D19F9A55700D540DF /* _FavoriteButtonCell.h */, + 1B92856E19F9A55700D540DF /* _FavoriteMenuScrollHoverView.h */, + 1B92856F19F9A55700D540DF /* _IMAPMailboxEntry.h */, + 1B92857019F9A55700D540DF /* _MailboxPlaceholder.h */, + 1B92857119F9A55700D540DF /* _MailNSFontManager.h */, + 1B92857219F9A55700D540DF /* _MailTableHeaderView.h */, + 1B92857319F9A55700D540DF /* _MailToolbarSpace.h */, + 1B92857419F9A55700D540DF /* _MessageViewerLazyPopUpButtonCell.h */, + 1B92857519F9A55700D540DF /* _MouseTracker.h */, + 1B92857619F9A55700D540DF /* _MTMAccountMailbox.h */, + 1B92857719F9A55700D540DF /* _MTMArchiveMailbox.h */, + 1B92857819F9A55700D540DF /* _MTMBackupMailbox.h */, + 1B92857919F9A55700D540DF /* _MTMDisabledSubMetaMailbox.h */, + 1B92857A19F9A55700D540DF /* _MTMDraftsMailbox.h */, + 1B92857B19F9A55700D540DF /* _MTMHeaderCell.h */, + 1B92857C19F9A55700D540DF /* _MTMInboxMailbox.h */, + 1B92857D19F9A55700D540DF /* _MTMJunkMailbox.h */, + 1B92857E19F9A55700D540DF /* _MTMMetaMailbox.h */, + 1B92857F19F9A55700D540DF /* _MTMRootMailbox.h */, + 1B92858019F9A55700D540DF /* _MTMSectionMailbox.h */, + 1B92858119F9A55700D540DF /* _MTMSentMailbox.h */, + 1B92858219F9A55700D540DF /* _MTMSmartMailbox.h */, + 1B92858319F9A55700D540DF /* _MTMStoredMetaMailbox.h */, + 1B92858419F9A55700D540DF /* _MTMStoredSubMetaMailbox.h */, + 1B92858519F9A55700D540DF /* _MTMSubMetaMailbox.h */, + 1B92858619F9A55700D540DF /* _MTMTrashMailbox.h */, + 1B92858719F9A55700D540DF /* _MVAlertInfo.h */, + 1B92858819F9A55700D540DF /* _RolloverButton.h */, + 1B92858919F9A55700D540DF /* _RolloverPopUpButton.h */, + 1B92858A19F9A55700D540DF /* _RolloverPopUpButtonCell.h */, + 1B92858B19F9A55700D540DF /* _RoundedCornersView.h */, + 1B92858C19F9A55700D540DF /* _SidebarButton.h */, + 1B92858D19F9A55700D540DF /* _SlidingView.h */, + 1B92858E19F9A55700D540DF /* _StackContainerView.h */, + 1B92858F19F9A55700D540DF /* _StationeryThumbnailCreator.h */, + 1B92859019F9A55700D540DF /* _TextButtonCell.h */, + 1B92859119F9A55700D540DF /* _ThreadDisclosureTextFieldCell.h */, + 1B92859219F9A55700D540DF /* _ToCCIndicator.h */, + 1B92859319F9A55700D540DF /* _ToCCIndicatorCell.h */, + 1B92859419F9A55700D540DF /* _TopDividerLine.h */, + 1B92859519F9A55700D540DF /* _TransferOperation.h */, + 1B92859619F9A55700D540DF /* AccountCell.h */, + 1B92859719F9A55700D540DF /* AccountDetails.h */, + 1B92859819F9A55700D540DF /* AccountInfo.h */, + 1B92859919F9A55700D540DF /* AccountInfoTabOwner-Protocol.h */, + 1B92859A19F9A55700D540DF /* AccountManager.h */, + 1B92859B19F9A55700D540DF /* AccountPreferences.h */, + 1B92859C19F9A55700D540DF /* AccountSetupManager.h */, + 1B92859D19F9A55700D540DF /* AccountStatusDataSource.h */, + 1B92859E19F9A55700D540DF /* AccountStatusDataSourceDelegate-Protocol.h */, + 1B92859F19F9A55700D540DF /* AccountSummary.h */, + 1B9285A019F9A55700D540DF /* ActivityAggregateView.h */, + 1B9285A119F9A55700D540DF /* ActivityPaneView.h */, + 1B9285A219F9A55700D540DF /* ActivityViewController.h */, + 1B9285A319F9A55700D540DF /* ActivityViewEntry.h */, + 1B9285A419F9A55700D540DF /* ActivityViewEntryView.h */, + 1B9285A519F9A55700D540DF /* ActivityViewer.h */, + 1B9285A619F9A55700D540DF /* ActivityViewerMailSound.h */, + 1B9285A719F9A55700D540DF /* AddressHistoryController.h */, + 1B9285A819F9A55700D540DF /* AppleScriptPopUpButton.h */, + 1B9285A919F9A55700D540DF /* Assistant.h */, + 1B9285AA19F9A55700D540DF /* AssistantDelegate-Protocol.h */, + 1B9285AB19F9A55700D540DF /* AssistantManager.h */, + 1B9285AC19F9A55700D540DF /* AttachmentDragSession.h */, + 1B9285AD19F9A55700D540DF /* AttachmentLoader.h */, + 1B9285AE19F9A55700D540DF /* AttachmentManager.h */, + 1B9285AF19F9A55700D540DF /* AuthSchemeBindingProxy.h */, + 1B9285B019F9A55700D540DF /* AuthSchemeValueTransformer.h */, + 1B9285B119F9A55700D540DF /* BannerBackgroundView.h */, + 1B9285B219F9A55700D540DF /* BannerContainerViewController.h */, + 1B9285B319F9A55700D540DF /* BannerImageView.h */, + 1B9285B419F9A55700D540DF /* BannerTextFieldCell.h */, + 1B9285B519F9A55700D540DF /* BannerViewController.h */, + 1B9285B619F9A55700D540DF /* BindingsEnabledMenu.h */, + 1B9285B719F9A55700D540DF /* BlockedWebPluginView.h */, + 1B9285B819F9A55700D540DF /* BorderlessToolbarItem.h */, + 1B9285B919F9A55700D540DF /* BusyStatusErrorWindowDelegate.h */, + 1B9285BA19F9A55700D540DF /* ButtonIconTextCell.h */, + 1B9285BB19F9A55700D540DF /* CALayer-MailCALayerAdditions.h */, + 1B9285BC19F9A55700D540DF /* CalendarBannerIconCreator.h */, + 1B9285BD19F9A55700D540DF /* CalendarBannerViewController.h */, + 1B9285BE19F9A55700D540DF /* CDStructures.h */, + 1B9285BF19F9A55700D540DF /* CertificateBannerViewController.h */, + 1B9285C019F9A55700D540DF /* ChildBannerViewController.h */, + 1B9285C119F9A55700D540DF /* ChildDateColorTransformer.h */, + 1B9285C219F9A55700D540DF /* ClippedItemsIndicator.h */, + 1B9285C319F9A55700D540DF /* ClippedItemsIndicatorDelegate-Protocol.h */, + 1B9285C419F9A55700D540DF /* ColorBackgroundView.h */, + 1B9285C519F9A55700D540DF /* ComposeBackEnd.h */, + 1B9285C619F9A55700D540DF /* ComposeBackEnd_Scripting.h */, + 1B9285C719F9A55700D540DF /* ComposeDraft.h */, + 1B9285C819F9A55700D540DF /* ComposeDraftController.h */, + 1B9285C919F9A55700D540DF /* ComposeHeaderRowView.h */, + 1B9285CA19F9A55700D540DF /* ComposePopUpButton.h */, + 1B9285CB19F9A55700D540DF /* ComposeSpellChecker.h */, + 1B9285CC19F9A55700D540DF /* ComposeStatusView.h */, + 1B9285CD19F9A55700D540DF /* ComposeViewController.h */, + 1B9285CE19F9A55700D540DF /* ComposeWindowController.h */, + 1B9285CF19F9A55700D540DF /* ComposingPreferences.h */, + 1B9285D019F9A55700D540DF /* ConnectionDoctor.h */, + 1B9285D119F9A55800D540DF /* ContentSplitViewController.h */, + 1B9285D219F9A55800D540DF /* Conversation.h */, + 1B9285D319F9A55800D540DF /* ConversationMember.h */, + 1B9285D419F9A55800D540DF /* ConversationMemberArrayController.h */, + 1B9285D519F9A55800D540DF /* ConversationPrefetcher.h */, + 1B9285D619F9A55800D540DF /* ConversationsObserver.h */, + 1B9285D719F9A55800D540DF /* ConversationViewController.h */, + 1B9285D819F9A55800D540DF /* ConversationViewFindController.h */, + 1B9285D919F9A55800D540DF /* CriteriaUIHelper.h */, + 1B9285DA19F9A55800D540DF /* CriterionView.h */, + 1B9285DB19F9A55800D540DF /* DateCell.h */, + 1B9285DC19F9A55800D540DF /* DateColorTransformer.h */, + 1B9285DD19F9A55800D540DF /* DefaultApplicationPopUpButton.h */, + 1B9285DE19F9A55800D540DF /* DeletingTableView.h */, + 1B9285DF19F9A55800D540DF /* DeliveryFailure.h */, + 1B9285E019F9A55800D540DF /* DeliveryQueue.h */, + 1B9285E119F9A55800D540DF /* DockCountController.h */, + 1B9285E219F9A55800D540DF /* DocumentEditor.h */, + 1B9285E319F9A55800D540DF /* DocumentEditor_Scripting.h */, + 1B9285E419F9A55800D540DF /* DOMCharacterData-MailExtras.h */, + 1B9285E519F9A55800D540DF /* DOMCSSValue-MailExtras.h */, + 1B9285E619F9A55800D540DF /* DOMDocument-MailExtras.h */, + 1B9285E719F9A55800D540DF /* DOMDocumentFragment-MailExtras.h */, + 1B9285E819F9A55800D540DF /* DOMElement-MailExtras.h */, + 1B9285E919F9A55800D540DF /* DOMElement-MailHTMLAttachments.h */, + 1B9285EA19F9A55800D540DF /* DOMEventListener-Protocol.h */, + 1B9285EB19F9A55800D540DF /* DOMHTMLDocument-MailExtras.h */, + 1B9285EC19F9A55800D540DF /* DOMHTMLElement-MailExtras.h */, + 1B9285ED19F9A55800D540DF /* DOMHTMLElement-MailQuoteLevel.h */, + 1B9285EE19F9A55800D540DF /* DOMHTMLImageElement-MailHTMLAttachments.h */, + 1B9285EF19F9A55800D540DF /* DOMHTMLObjectElement-AttachmentLocator.h */, + 1B9285F019F9A55800D540DF /* DOMNode-MailExtras.h */, + 1B9285F119F9A55800D540DF /* DOMNode-MailHTMLAttachments.h */, + 1B9285F219F9A55800D540DF /* DOMRange-MailExtras.h */, + 1B9285F319F9A55800D540DF /* DynamicErrorWindowController.h */, + 1B9285F419F9A55800D540DF /* DynamicErrorWindowDelegate-Protocol.h */, + 1B9285F519F9A55800D540DF /* EditableWebMessageDocument.h */, + 1B9285F619F9A55800D540DF /* EditingMessageWebView.h */, + 1B9285F719F9A55800D540DF /* EditingMessageWebViewDelegate-Protocol.h */, + 1B9285F819F9A55800D540DF /* EditingWebMessageController.h */, + 1B9285F919F9A55800D540DF /* EmailImporter.h */, + 1B9285FA19F9A55800D540DF /* EncryptImageValueTransormer.h */, + 1B9285FB19F9A55800D540DF /* EncryptToolTipValueTransformer.h */, + 1B9285FC19F9A55800D540DF /* EudoraEmailImporter.h */, + 1B9285FD19F9A55800D540DF /* EWSAccountDetails.h */, + 1B9285FE19F9A55800D540DF /* EWSAccountSpecialMailboxes.h */, + 1B9285FF19F9A55800D540DF /* EWSQuota.h */, + 1B92860019F9A55800D540DF /* ExtractAddressCommand.h */, + 1B92860119F9A55800D540DF /* ExtractNameCommand.h */, + 1B92860219F9A55800D540DF /* FavoriteButton.h */, + 1B92860319F9A55800D540DF /* FavoriteButtonMailboxProperties.h */, + 1B92860419F9A55800D540DF /* FavoriteHoverViewDirectionProtocol-Protocol.h */, + 1B92860519F9A55800D540DF /* FavoritesBarView.h */, + 1B92860619F9A55800D540DF /* FavoritesBarViewController.h */, + 1B92860719F9A55800D540DF /* FavoritesMenuController.h */, + 1B92860819F9A55800D540DF /* FavoritesMenuDelegateProtocol-Protocol.h */, + 1B92860919F9A55800D540DF /* FavoritesMenuItem.h */, + 1B92860A19F9A55800D540DF /* FavoritesMenuItemImageView.h */, + 1B92860B19F9A55800D540DF /* FavoritesMenuOutlineView.h */, + 1B92860C19F9A55800D540DF /* FilesystemEmailImporter.h */, + 1B92860D19F9A55800D540DF /* FindBarContainer.h */, + 1B92860E19F9A55800D540DF /* FlagButtonImageView.h */, + 1B92860F19F9A55800D540DF /* FlaggedStatusToolbarItem.h */, + 1B92861019F9A55800D540DF /* FlaggedStatusToolbarItemDelegate-Protocol.h */, + 1B92861119F9A55800D540DF /* FlaggedStatusView.h */, + 1B92861219F9A55800D540DF /* FlagIconFactory.h */, + 1B92861319F9A55800D540DF /* FlagsMenuItemView.h */, + 1B92861419F9A55800D540DF /* FlatTableView.h */, + 1B92861519F9A55800D540DF /* FlatTableViewDataCell.h */, + 1B92861619F9A55800D540DF /* FontPreferenceContainerView.h */, + 1B92861719F9A55800D540DF /* FontsAndColorsPreferences.h */, + 1B92861819F9A55800D540DF /* FullScreenModalCapableWindow.h */, + 1B92861919F9A55800D540DF /* FullScreenWindowController.h */, + 1B92861A19F9A55800D540DF /* GeneralPreferences.h */, + 1B92861B19F9A55800D540DF /* GenericAttachmentFetcher.h */, + 1B92861C19F9A55800D540DF /* HeaderDividerView.h */, + 1B92861D19F9A55800D540DF /* HeaderLayoutManagerDelegate-Protocol.h */, + 1B92861E19F9A55800D540DF /* HeadersEditor.h */, + 1B92861F19F9A55800D540DF /* HeaderTextContainer.h */, + 1B92862019F9A55800D540DF /* HeaderTextView.h */, + 1B92862119F9A55800D540DF /* HeaderTruncationAttachmentCell.h */, + 1B92862219F9A55800D540DF /* HeaderView.h */, + 1B92862319F9A55800D540DF /* HeaderViewController.h */, + 1B92862419F9A55800D540DF /* HyperlinkButton.h */, + 1B92862519F9A55800D540DF /* HyperlinkEditor.h */, + 1B92862619F9A55800D540DF /* ImageResizer.h */, + 1B92862719F9A55800D540DF /* ImageResizerDelegate-Protocol.h */, + 1B92862819F9A55800D540DF /* IMAPAccountDetails.h */, + 1B92862919F9A55800D540DF /* IMAPAccountSpecialMailboxes.h */, + 1B92862A19F9A55800D540DF /* IMAPMailboxes.h */, + 1B92862B19F9A55800D540DF /* IMAPQuota.h */, + 1B92862C19F9A55800D540DF /* IMAPUserAgent-Protocol.h */, + 1B92862D19F9A55800D540DF /* ImportAssistant.h */, + 1B92862E19F9A55800D540DF /* Importer.h */, + 1B92862F19F9A55800D540DF /* ImportItem.h */, + 1B92863019F9A55800D540DF /* InvitationAttachmentOpener.h */, + 1B92863119F9A55800D540DF /* IOErrorWindowDelegate.h */, + 1B92863219F9A55800D540DF /* JunkMailBannerViewController.h */, + 1B92863319F9A55800D540DF /* JunkPreferences.h */, + 1B92863419F9A55800D540DF /* LazyMenuSegmentedCell.h */, + 1B92863519F9A55800D540DF /* LazySubmenuMenuItem.h */, + 1B92863619F9A55800D540DF /* LDAPServer.h */, + 1B92863719F9A55800D540DF /* LibraryImportAssistant.h */, + 1B92863819F9A55800D540DF /* LibraryUpgradeAssistant.h */, + 1B92863919F9A55800D540DF /* LoadingOverlay.h */, + 1B92863A19F9A55800D540DF /* LoadRemoteContentBannerViewController.h */, + 1B92863B19F9A55800D540DF /* LoweredTextAttachmentCell.h */, + 1B92863C19F9A55800D540DF /* MailAddressDelegate.h */, + 1B92863D19F9A55800D540DF /* MailAnimatingButton.h */, + 1B92863E19F9A55800D540DF /* MailApp.h */, + 1B92863F19F9A55800D540DF /* MailBarContainerButton.h */, + 1B92864019F9A55800D540DF /* MailBarContainerView.h */, + 1B92864119F9A55800D540DF /* MailboxBadgeCell.h */, + 1B92864219F9A55800D540DF /* MailboxBadgeView.h */, + 1B92864319F9A55800D540DF /* MailboxesChooser.h */, + 1B92864419F9A55800D540DF /* MailboxesController.h */, + 1B92864519F9A55800D540DF /* MailboxesOutlineView.h */, + 1B92864619F9A55800D540DF /* MailboxesOutlineViewController.h */, + 1B92864719F9A55800D540DF /* MailboxesOutlineViewControllerDelegate-Protocol.h */, + 1B92864819F9A55800D540DF /* MailboxesOutlineViewDelegate-Protocol.h */, + 1B92864919F9A55800D540DF /* MailboxesOutlineViewStateStorage.h */, + 1B92864A19F9A55800D540DF /* MailboxesSplitViewController.h */, + 1B92864B19F9A55800D540DF /* MailboxOutlineItemController.h */, + 1B92864C19F9A55800D540DF /* MailboxOutlineItemControllerDelegate-Protocol.h */, + 1B92864D19F9A55800D540DF /* MailboxOutlineItemView.h */, + 1B92864E19F9A55800D540DF /* MailboxOutlineItemViewDelegate-Protocol.h */, + 1B92864F19F9A55800D540DF /* MailboxOutlineRowView.h */, + 1B92865019F9A55800D540DF /* MailboxTextField.h */, + 1B92865119F9A55800D540DF /* MailboxTextFieldDelegate-Protocol.h */, + 1B92865219F9A55800D540DF /* MailCopyCommand.h */, + 1B92865319F9A55800D540DF /* MailDeleteCommand.h */, + 1B92865419F9A55800D540DF /* MailEmailImporter.h */, + 1B92865519F9A55800D540DF /* MailFullScreenWindowDelegate-Protocol.h */, + 1B92865619F9A55800D540DF /* MailInspectorBar.h */, + 1B92865719F9A55800D540DF /* MailInspectorBarItemController.h */, + 1B92865819F9A55800D540DF /* MailMoveCommand.h */, + 1B92865919F9A55800D540DF /* MailPopoverWell.h */, + 1B92865A19F9A55800D540DF /* MailPreferences.h */, + 1B92865B19F9A55800D540DF /* MailSearchCriteriaHelper.h */, + 1B92865C19F9A55800D540DF /* MailSplitView.h */, + 1B92865D19F9A55800D540DF /* MailStackViewController.h */, + 1B92865E19F9A55800D540DF /* MailTableView.h */, + 1B92865F19F9A55800D540DF /* MailTableViewDelegate-Protocol.h */, + 1B92866019F9A55800D540DF /* MailTableViewDelegateDelegate-Protocol.h */, + 1B92866119F9A55800D540DF /* MailTimeMachineController.h */, + 1B92866219F9A55800D540DF /* MailToCommand.h */, + 1B92866319F9A55800D540DF /* MailToolbar.h */, + 1B92866419F9A55800D540DF /* MailToolbarBaselineView.h */, + 1B92866519F9A55800D540DF /* MailToolbarSpaceItemWithPin.h */, + 1B92866619F9A55800D540DF /* MailUsageStatistics.h */, + 1B92866719F9A55800D540DF /* MailWebAttachment.h */, + 1B92866819F9A55800D540DF /* MailWebViewEditor.h */, + 1B92866919F9A55800D540DF /* MailWindowShadowLayer.h */, + 1B92866A19F9A55800D540DF /* MboxEmailImporter.h */, + 1B92866B19F9A55800D540DF /* MCActivityTarget-Protocol.h */, + 1B92866C19F9A55800D540DF /* MCConnectionLogging-Protocol.h */, + 1B92866D19F9A55800D540DF /* MCMessage-MailViewerAdditions.h */, + 1B92866E19F9A55800D540DF /* MCMessageDataSource-Protocol.h */, + 1B92866F19F9A55800D540DF /* MCUserAgent-Protocol.h */, + 1B92867019F9A55800D540DF /* MessageBodyScrollView.h */, + 1B92867119F9A55800D540DF /* MessageDeletionTransfer-Protocol.h */, + 1B92867219F9A55800D540DF /* MessageDragHelper.h */, + 1B92867319F9A55800D540DF /* MessageEditor.h */, + 1B92867419F9A55800D540DF /* MessageFilter.h */, + 1B92867519F9A55800D540DF /* MessageFilterDelegate-Protocol.h */, + 1B92867619F9A55800D540DF /* MessageListCell.h */, + 1B92867719F9A55800D540DF /* MessageListColumnManager.h */, + 1B92867819F9A55800D540DF /* MessageListContainerView.h */, + 1B92867919F9A55800D540DF /* MessageListHeaderCell.h */, + 1B92867A19F9A55800D540DF /* MessageListObjectProxy.h */, + 1B92867B19F9A55800D540DF /* MessageMall.h */, + 1B92867C19F9A55800D540DF /* MessageMallShared.h */, + 1B92867D19F9A55800D540DF /* MessageSaver.h */, + 1B92867E19F9A55800D540DF /* MessageSelection.h */, + 1B92867F19F9A55800D540DF /* MessageTextView.h */, + 1B92868019F9A55800D540DF /* MessageTransfer.h */, + 1B92868119F9A55800D540DF /* MessageTransferDelegate-Protocol.h */, + 1B92868219F9A55800D540DF /* MessageView.h */, + 1B92868319F9A55800D540DF /* MessageViewController.h */, + 1B92868419F9A55800D540DF /* MessageViewer.h */, + 1B92868519F9A55800D540DF /* MessageViewerLazyPopUpButton.h */, + 1B92868619F9A55800D540DF /* MessageViewerSearchField.h */, + 1B92868719F9A55800D540DF /* MessageViewerSearchFieldFocusDelegate-Protocol.h */, + 1B92868819F9A55800D540DF /* MessageWebDocumentView.h */, + 1B92868919F9A55800D540DF /* MessageWebDocumentViewGroupManager.h */, + 1B92868A19F9A55800D540DF /* MessageWebHTMLView.h */, + 1B92868B19F9A55800D540DF /* MessageWebView.h */, + 1B92868C19F9A55800D540DF /* MFAccount-MailUIExtras.h */, + 1B92868D19F9A55800D540DF /* MFAddProgressMonitor-Protocol.h */, + 1B92868E19F9A55800D540DF /* MFDeliveryAccount-MailUIExtras.h */, + 1B92868F19F9A55800D540DF /* MFEWSAccount-MailUIExtras.h */, + 1B92869019F9A55800D540DF /* MFLibraryUpgraderDelegate-Protocol.h */, + 1B92869119F9A55800D540DF /* MFMailbox-MessageListAdditions.h */, + 1B92869219F9A55800D540DF /* MFMessageSortContext-Protocol.h */, + 1B92869319F9A55800D540DF /* MFMessageSortingValueDelegate-Protocol.h */, + 1B92869419F9A55800D540DF /* MFUIMailbox-Protocol.h */, + 1B92869519F9A55800D540DF /* MFUserAgent-Protocol.h */, + 1B92869619F9A55800D540DF /* MFWebMessageDocument-Attachments.h */, + 1B92869719F9A55800D540DF /* ModalDimmingWindow.h */, + 1B92869819F9A55800D540DF /* MouseTrackingWindow.h */, + 1B92869919F9A55800D540DF /* MTMBufferedController.h */, + 1B92869A19F9A55800D540DF /* MTMBytesFormatter.h */, + 1B92869B19F9A55800D540DF /* MTMDiskMessage.h */, + 1B92869C19F9A55800D540DF /* MTMFakeMailbox.h */, + 1B92869D19F9A55800D540DF /* MTMFakeMessage.h */, + 1B92869E19F9A55800D540DF /* MTMFlagsCell.h */, + 1B92869F19F9A55800D540DF /* MTMFullWindowController.h */, + 1B9286A019F9A55800D540DF /* MTMIndexedMessage.h */, + 1B9286A119F9A55800D540DF /* MTMLoadingView.h */, + 1B9286A219F9A55800D540DF /* MTMMailbox.h */, + 1B9286A319F9A55800D540DF /* MTMMailboxChangedPredicate.h */, + 1B9286A419F9A55800D540DF /* MTMMailboxControllerProtocol-Protocol.h */, + 1B9286A519F9A55800D540DF /* MTMMailboxFetcher.h */, + 1B9286A619F9A55800D540DF /* MTMMessage.h */, + 1B9286A719F9A55800D540DF /* MTMMessageChangedPredicate.h */, + 1B9286A819F9A55800D540DF /* MTMMessageColumnController.h */, + 1B9286A919F9A55800D540DF /* MTMNumberCell.h */, + 1B9286AA19F9A55800D540DF /* MTMOutlineCell.h */, + 1B9286AB19F9A55800D540DF /* MTMOutlineTopLevelCell.h */, + 1B9286AC19F9A55800D540DF /* MTMOutlineView.h */, + 1B9286AD19F9A55800D540DF /* MTMReadCell.h */, + 1B9286AE19F9A55800D540DF /* MTMScroller.h */, + 1B9286AF19F9A55800D540DF /* MTMSpecialMailbox.h */, + 1B9286B019F9A55800D540DF /* MTMTableView.h */, + 1B9286B119F9A55800D540DF /* MTMWindow.h */, + 1B9286B219F9A55800D540DF /* MTMWindowController.h */, + 1B9286B319F9A55800D540DF /* MUICollectionViewDelegate-Protocol.h */, + 1B9286B419F9A55800D540DF /* MUITokenAddressDelegate-Protocol.h */, + 1B9286B519F9A55800D540DF /* MUIWebDocumentViewDelegate-Protocol.h */, + 1B9286B619F9A55800D540DF /* MultiImageCell.h */, + 1B9286B719F9A55800D540DF /* MVComposeAccessoryViewOwner.h */, + 1B9286B819F9A55800D540DF /* MVLinkButton.h */, + 1B9286B919F9A55800D540DF /* MVMailboxSelectionOwner-Protocol.h */, + 1B9286BA19F9A55800D540DF /* MVMailBundle.h */, + 1B9286BB19F9A55800D540DF /* MVSelectionOwner-Protocol.h */, + 1B9286BC19F9A55800D540DF /* MVTerminationHandler-Protocol.h */, + 1B9286BD19F9A55800D540DF /* NetscapeEmailImporter.h */, + 1B9286BE19F9A55800D540DF /* NoSelectionPlaceholderView.h */, + 1B9286BF19F9A55800D540DF /* NSAccessibilityElement-Protocol.h */, + 1B9286C019F9A55800D540DF /* NSAccessibilityGroup-Protocol.h */, + 1B9286C119F9A55800D540DF /* NSAlert-MFErrorSupport.h */, + 1B9286C219F9A55800D540DF /* NSAnimationDelegate-Protocol.h */, + 1B9286C319F9A55800D540DF /* NSApplicationDelegate-Protocol.h */, + 1B9286C419F9A55800D540DF /* NSAttributedString-MailAttributedStringToHTML.h */, + 1B9286C519F9A55800D540DF /* NSCacheDelegate-Protocol.h */, + 1B9286C619F9A55800D540DF /* NSCoding-Protocol.h */, + 1B9286C719F9A55800D540DF /* NSControl-MailAdditions.h */, + 1B9286C819F9A55800D540DF /* NSControlTextEditingDelegate-Protocol.h */, + 1B9286C919F9A55800D540DF /* NSCopying-Protocol.h */, + 1B9286CA19F9A55800D540DF /* NSDatePickerCellDelegate-Protocol.h */, + 1B9286CB19F9A55800D540DF /* NSDraggingSource-Protocol.h */, + 1B9286CC19F9A55800D540DF /* NSEvent-MailAdditions.h */, + 1B9286CD19F9A55800D540DF /* NSEvent-MailViewerEvent.h */, + 1B9286CE19F9A55800D540DF /* NSFileManagerDelegate-Protocol.h */, + 1B9286CF19F9A55800D540DF /* NSFont-MailAdditions.h */, + 1B9286D019F9A55800D540DF /* NSFontManager-ToReplaceWithOurOwn.h */, + 1B9286D119F9A55800D540DF /* NSInspectorBarClient-Protocol.h */, + 1B9286D219F9A55800D540DF /* NSInspectorBarDelegate-Protocol.h */, + 1B9286D319F9A55800D540DF /* NSInspectorBarItemController-Protocol.h */, + 1B9286D419F9A55800D540DF /* NSLayoutManagerDelegate-Protocol.h */, + 1B9286D519F9A55800D540DF /* NSMediaLibraryBrowserController-MailAdditions.h */, + 1B9286D619F9A55800D540DF /* NSMenuDelegate-Protocol.h */, + 1B9286D719F9A55800D540DF /* NSObject-Protocol.h */, + 1B9286D819F9A55800D540DF /* NSOpenSavePanelDelegate-Protocol.h */, + 1B9286D919F9A55800D540DF /* NSOutlineView-MailAdditions.h */, + 1B9286DA19F9A55800D540DF /* NSOutlineViewDataSource-Protocol.h */, + 1B9286DB19F9A55800D540DF /* NSOutlineViewDelegate-Protocol.h */, + 1B9286DC19F9A55800D540DF /* NSPasteboardItemDataProvider-Protocol.h */, + 1B9286DD19F9A55800D540DF /* NSPopUpButton-MailAdditions.h */, + 1B9286DE19F9A55800D540DF /* NSPreferences-ActiveModule.h */, + 1B9286DF19F9A55900D540DF /* NSPreferencesModule-ActiveModule.h */, + 1B9286E019F9A55900D540DF /* NSScrollViewDelegate-Protocol.h */, + 1B9286E119F9A55900D540DF /* NSSharingServiceDelegate-Protocol.h */, + 1B9286E219F9A55900D540DF /* NSSharingServicePickerDelegate-Protocol.h */, + 1B9286E319F9A55900D540DF /* NSSpeechSynthesizerDelegate-Protocol.h */, + 1B9286E419F9A55900D540DF /* NSSpellChecker-AllocationOverride.h */, + 1B9286E519F9A55900D540DF /* NSSplitViewDelegate-Protocol.h */, + 1B9286E619F9A55900D540DF /* NSStackViewDelegate-Protocol.h */, + 1B9286E719F9A55900D540DF /* NSStreamDelegate-Protocol.h */, + 1B9286E819F9A55900D540DF /* NSString-HTMLConversion.h */, + 1B9286E919F9A55900D540DF /* NSString-MailAdditions.h */, + 1B9286EA19F9A55900D540DF /* NSTableViewDataSource-Protocol.h */, + 1B9286EB19F9A55900D540DF /* NSTableViewDelegate-Protocol.h */, + 1B9286EC19F9A55900D540DF /* NSTabViewDelegate-Protocol.h */, + 1B9286ED19F9A55900D540DF /* NSTextDelegate-Protocol.h */, + 1B9286EE19F9A55900D540DF /* NSTextFieldDelegate-Protocol.h */, + 1B9286EF19F9A55900D540DF /* NSTextFinderAsynchronousDocumentFindMatch-Protocol.h */, + 1B9286F019F9A55900D540DF /* NSTextFinderBarContainer-Protocol.h */, + 1B9286F119F9A55900D540DF /* NSTextFinderClient-Protocol.h */, + 1B9286F219F9A55900D540DF /* NSTextInput-Protocol.h */, + 1B9286F319F9A55900D540DF /* NSTextInputClient-Protocol.h */, + 1B9286F419F9A55900D540DF /* NSTextViewDelegate-Protocol.h */, + 1B9286F519F9A55900D540DF /* NSTokenAttachmentDelegate-Protocol.h */, + 1B9286F619F9A55900D540DF /* NSToolbar-MailAdditions.h */, + 1B9286F719F9A55900D540DF /* NSToolbarDelegate-Protocol.h */, + 1B9286F819F9A55900D540DF /* NSUserActivityDelegate-Protocol.h */, + 1B9286F919F9A55900D540DF /* NSUserDefaults-FontAdditions.h */, + 1B9286FA19F9A55900D540DF /* NSUserInterfaceValidations-Protocol.h */, + 1B9286FB19F9A55900D540DF /* NSUserNotificationCenterDelegate-Protocol.h */, + 1B9286FC19F9A55900D540DF /* NSView-AttachmentDragSession.h */, + 1B9286FD19F9A55900D540DF /* NSView-FavoriteButtonAnimation.h */, + 1B9286FE19F9A55900D540DF /* NSView-LocatingFrameViews.h */, + 1B9286FF19F9A55900D540DF /* NSView-MailAdditions.h */, + 1B92870019F9A55900D540DF /* NSView-MailQuickLookAdditions.h */, + 1B92870119F9A55900D540DF /* NSView-MailToolbarBaselineView.h */, + 1B92870219F9A55900D540DF /* NSView-ResizingAnimation.h */, + 1B92870319F9A55900D540DF /* NSView-SlidingExtras.h */, + 1B92870419F9A55900D540DF /* NSWindow-BetterDescription.h */, + 1B92870519F9A55900D540DF /* NSWindow-MailWindowAdditions.h */, + 1B92870619F9A55900D540DF /* NSWindowDelegate-Protocol.h */, + 1B92870719F9A55900D540DF /* OofPanelController.h */, + 1B92870819F9A55900D540DF /* OutlineViewProgressIndicatorsController.h */, + 1B92870919F9A55900D540DF /* ParentBannerViewController.h */, + 1B92870A19F9A55900D540DF /* PassbookBannerViewController.h */, + 1B92870B19F9A55900D540DF /* PasswordManager.h */, + 1B92870C19F9A55900D540DF /* PhotoExporter.h */, + 1B92870D19F9A55900D540DF /* POPAccountDetails.h */, + 1B92870E19F9A55900D540DF /* POPAccountSpecialMailboxes.h */, + 1B92870F19F9A55900D540DF /* POPQuota.h */, + 1B92871019F9A55900D540DF /* PowerManager.h */, + 1B92871119F9A55900D540DF /* PrintingHTMLGenerator.h */, + 1B92871219F9A55900D540DF /* PrintingHTMLPrinter.h */, + 1B92871319F9A55900D540DF /* PrintingManager.h */, + 1B92871419F9A55900D540DF /* PrintingManagerForExportAsPDF.h */, + 1B92871519F9A55900D540DF /* PrintingManagerForPrinting.h */, + 1B92871619F9A55900D540DF /* PrintingProgressPanelWindowController.h */, + 1B92871719F9A55900D540DF /* ProgressIndicatorCell.h */, + 1B92871819F9A55900D540DF /* QLPreviewPanelDataSource-Protocol.h */, + 1B92871919F9A55900D540DF /* QLPreviewPanelDelegate-Protocol.h */, + 1B92871A19F9A55900D540DF /* QLSeamlessOpenerDelegate-Protocol.h */, + 1B92871B19F9A55900D540DF /* QuickTimeAttachmentView.h */, + 1B92871C19F9A55900D540DF /* Quota.h */, + 1B92871D19F9A55900D540DF /* QuotaBar.h */, + 1B92871E19F9A55900D540DF /* RedundantContentIdentificationManager.h */, + 1B92871F19F9A55900D540DF /* RemoteStoreAccountSpecialMailboxes.h */, + 1B92872019F9A55900D540DF /* RemoteStoreQuota.h */, + 1B92872119F9A55900D540DF /* ReplyButtonCell.h */, + 1B92872219F9A55900D540DF /* RichMessageCellBase.h */, + 1B92872319F9A55900D540DF /* RichMessageCellView.h */, + 1B92872419F9A55900D540DF /* RichMessageChildCellView.h */, + 1B92872519F9A55900D540DF /* RichMessageListSortView.h */, + 1B92872619F9A55900D540DF /* RichMessageListSortViewProtocol-Protocol.h */, + 1B92872719F9A55900D540DF /* RichTableRowView.h */, + 1B92872819F9A55900D540DF /* RolloverButtonCell.h */, + 1B92872919F9A55900D540DF /* RolloverContainerView.h */, + 1B92872A19F9A55900D540DF /* RulesPreferences.h */, + 1B92872B19F9A55900D540DF /* ScriptableMessageTextStorage.h */, + 1B92872C19F9A55900D540DF /* SegmentedToolbarItem.h */, + 1B92872D19F9A55900D540DF /* SegmentedToolbarItemSegmentedCell.h */, + 1B92872E19F9A55900D540DF /* SegmentedToolbarItemSegmentItem.h */, + 1B92872F19F9A55900D540DF /* SelfAnimatingProgressIndicator.h */, + 1B92873019F9A55900D540DF /* SGTSearchFieldQueryScopeDelegate-Protocol.h */, + 1B92873119F9A55900D540DF /* Signature.h */, + 1B92873219F9A55900D540DF /* SignatureBundle.h */, + 1B92873319F9A55900D540DF /* SignaturePreferences.h */, + 1B92873419F9A55900D540DF /* SignImageValueTransformer.h */, + 1B92873519F9A55900D540DF /* SignTooTipValueTransformer.h */, + 1B92873619F9A55900D540DF /* SingleMessageViewer.h */, + 1B92873719F9A55900D540DF /* SlidingAnimation.h */, + 1B92873819F9A55900D540DF /* SlidingAnimationDelegate-Protocol.h */, + 1B92873919F9A55900D540DF /* SlidingViewsBar.h */, + 1B92873A19F9A55900D540DF /* SmartMailboxEditor.h */, + 1B92873B19F9A55900D540DF /* SMTPSettings.h */, + 1B92873C19F9A55900D540DF /* SnippetColorTransformer.h */, + 1B92873D19F9A55900D540DF /* SortByMenuDelegate.h */, + 1B92873E19F9A55900D540DF /* SoundPopUpButton.h */, + 1B92873F19F9A55900D540DF /* SoundPopUpButtonDelegate-Protocol.h */, + 1B92874019F9A55900D540DF /* SpecialMailboxes.h */, + 1B92874119F9A55900D540DF /* StackController.h */, + 1B92874219F9A55900D540DF /* StackDataSource-Protocol.h */, + 1B92874319F9A55900D540DF /* StackDelegate-Protocol.h */, + 1B92874419F9A55900D540DF /* StackElement.h */, + 1B92874519F9A55900D540DF /* StackElementDelegate-Protocol.h */, + 1B92874619F9A55900D540DF /* StackRevealGroup.h */, + 1B92874719F9A55900D540DF /* StackRevealGroupDelegate-Protocol.h */, + 1B92874819F9A55900D540DF /* StarFieldController.h */, + 1B92874919F9A55900D540DF /* StartupManager.h */, + 1B92874A19F9A55900D540DF /* Stationery.h */, + 1B92874B19F9A55900D540DF /* StationeryCompositeImage.h */, + 1B92874C19F9A55900D540DF /* StationeryCompositeImageMask.h */, + 1B92874D19F9A55900D540DF /* StationeryController.h */, + 1B92874E19F9A55900D540DF /* StationeryDynamicElement.h */, + 1B92874F19F9A55900D540DF /* StationeryLoader.h */, + 1B92875019F9A55900D540DF /* StationerySelector.h */, + 1B92875119F9A55900D540DF /* StatusCell.h */, + 1B92875219F9A55900D540DF /* SubjectFormatter.h */, + 1B92875319F9A55900D540DF /* TableHeaderView.h */, + 1B92875419F9A55900D540DF /* TableViewManager.h */, + 1B92875519F9A55900D540DF /* TableViewScrollState.h */, + 1B92875619F9A55900D540DF /* TemporaryAttachmentOpener.h */, + 1B92875719F9A55900D540DF /* TemporaryItemManager.h */, + 1B92875819F9A55900D540DF /* TextButtonToolbarItem.h */, + 1B92875919F9A55900D540DF /* TextMessageDisplay.h */, + 1B92875A19F9A55900D540DF /* ThreadDisclosureTextField.h */, + 1B92875B19F9A55900D540DF /* ThumbnailButtonCell.h */, + 1B92875C19F9A55900D540DF /* ThumbnailMatrix.h */, + 1B92875D19F9A55900D540DF /* ThunderbirdEmailImporter.h */, + 1B92875E19F9A55900D540DF /* TilingWebView.h */, + 1B92875F19F9A55900D540DF /* TransparentImageView.h */, + 1B92876019F9A55900D540DF /* TypeAheadWindow.h */, + 1B92876119F9A55900D540DF /* UnfoldAnimationController.h */, + 1B92876219F9A55900D540DF /* UserActivityHandler.h */, + 1B92876319F9A55900D540DF /* UserNotificationCenterController.h */, + 1B92876419F9A55900D540DF /* UserScriptGenerator.h */, + 1B92876519F9A55900D540DF /* UserStyleSheetGenerator.h */, + 1B92876619F9A55900D540DF /* VerticallyCenteredTextFieldCell.h */, + 1B92876719F9A55900D540DF /* ViewerPreferences.h */, + 1B92876819F9A55900D540DF /* ViewingPaneView.h */, + 1B92876919F9A55900D540DF /* ViewingPaneViewController.h */, + 1B92876A19F9A55900D540DF /* ViewTextAttachmentCell.h */, + 1B92876B19F9A55900D540DF /* WebComposeMessageContents.h */, + 1B92876C19F9A55900D540DF /* WebDocumentGenerator.h */, + 1B92876D19F9A55900D540DF /* WebFrame-SizingExtras.h */, + 1B92876E19F9A55900D540DF /* WebHTMLView-MailAdditions.h */, + 1B92876F19F9A55900D540DF /* WebHTMLView-ToReplaceViewWithOurOwn.h */, + 1B92877019F9A55900D540DF /* WebMessageController.h */, + 1B92877119F9A55A00D540DF /* WebPreferences-MessageDefaultsSupport.h */, + 1B92877219F9A55A00D540DF /* WebView-MailExtras.h */, + 1B92877319F9A55A00D540DF /* WebViewEditor.h */, + 1B92877419F9A55A00D540DF /* WebViewLoadOperation.h */, + 1B92877519F9A55A00D540DF /* WindowTransformAnimation.h */, + ); + path = MailUI; + sourceTree = ""; + }; + 1B92877619F9A55A00D540DF /* MailUIFW */ = { + isa = PBXGroup; + children = ( + 1B92877719F9A55A00D540DF /* _MUIAddContactsButton.h */, + 1B92877819F9A55A00D540DF /* _MUIJavaScriptEvaluationRequest.h */, + 1B92877919F9A55A00D540DF /* _MUISnapshotView.h */, + 1B92877A19F9A55A00D540DF /* _MUIWebAttachmentIconPrintingDataProvider.h */, + 1B92877B19F9A55A00D540DF /* _MUIWebFindMatch.h */, + 1B92877C19F9A55A00D540DF /* CDStructures.h */, + 1B92877D19F9A55A00D540DF /* CNAutocompleteFetchDelegate-Protocol.h */, + 1B92877E19F9A55A00D540DF /* CNContactPickerDelegate-Protocol.h */, + 1B92877F19F9A55A00D540DF /* MCCIDURLProtocolDataProvider-Protocol.h */, + 1B92878019F9A55A00D540DF /* MUIAddressField.h */, + 1B92878119F9A55A00D540DF /* MUIAddressFieldScrollDocumentView.h */, + 1B92878219F9A55A00D540DF /* MUIAddressTokenAttachmentCell.h */, + 1B92878319F9A55A00D540DF /* MUIBundleResourceURLProtocol.h */, + 1B92878419F9A55A00D540DF /* MUICollectionCellView.h */, + 1B92878519F9A55A00D540DF /* MUICollectionHeightStorage.h */, + 1B92878619F9A55A00D540DF /* MUICollectionView.h */, + 1B92878719F9A55A00D540DF /* MUIContextMenuController.h */, + 1B92878819F9A55A00D540DF /* MUIFramework.h */, + 1B92878919F9A55A00D540DF /* MUIJavaScriptController.h */, + 1B92878A19F9A55A00D540DF /* MUILinkEditWindowController.h */, + 1B92878B19F9A55A00D540DF /* MUIMIMEDocumentGenerator.h */, + 1B92878C19F9A55A00D540DF /* MUIRemoteImageCollector.h */, + 1B92878D19F9A55A00D540DF /* MUISegmentedToolbarItem.h */, + 1B92878E19F9A55A00D540DF /* MUISelectionAndClickInformation.h */, + 1B92878F19F9A55A00D540DF /* MUITokenAddress.h */, + 1B92879019F9A55A00D540DF /* MUITokenAddressField.h */, + 1B92879119F9A55A00D540DF /* MUITokenAddressFieldCell.h */, + 1B92879219F9A55A00D540DF /* MUITokenAddressTextStorage.h */, + 1B92879319F9A55A00D540DF /* MUITokenAddressTextView.h */, + 1B92879419F9A55A00D540DF /* MUIWebAttachment.h */, + 1B92879519F9A55A00D540DF /* MUIWebAttachmentController.h */, + 1B92879619F9A55A00D540DF /* MUIWebDocument.h */, + 1B92879719F9A55A00D540DF /* MUIWebDocumentView.h */, + 1B92879819F9A55A00D540DF /* MUIWebDocumentViewGroup.h */, + 1B92879919F9A55A00D540DF /* MUIWebFindController.h */, + 1B92879A19F9A55A00D540DF /* MUIWKView.h */, + 1B92879B19F9A55A00D540DF /* MUIWKViewController.h */, + 1B92879C19F9A55A00D540DF /* NSCoding-Protocol.h */, + 1B92879D19F9A55A00D540DF /* NSControlTextEditingDelegate-Protocol.h */, + 1B92879E19F9A55A00D540DF /* NSCopying-Protocol.h */, + 1B92879F19F9A55A00D540DF /* NSDraggingDestination-Protocol.h */, + 1B9287A019F9A55A00D540DF /* NSDraggingSource-Protocol.h */, + 1B9287A119F9A55A00D540DF /* NSObject-Protocol.h */, + 1B9287A219F9A55A00D540DF /* NSPasteboardWriting-Protocol.h */, + 1B9287A319F9A55A00D540DF /* NSScrollViewDelegate-Protocol.h */, + 1B9287A419F9A55A00D540DF /* NSSharingServiceDelegate-Protocol.h */, + 1B9287A519F9A55A00D540DF /* NSSharingServicePickerDelegate-Protocol.h */, + 1B9287A619F9A55A00D540DF /* NSTableViewDataSource-Protocol.h */, + 1B9287A719F9A55A00D540DF /* NSTableViewDelegate-Protocol.h */, + 1B9287A819F9A55A00D540DF /* NSTextFieldDelegate-Protocol.h */, + 1B9287A919F9A55A00D540DF /* NSTextFinderAsynchronousDocumentFindMatch-Protocol.h */, + 1B9287AA19F9A55A00D540DF /* NSTextFinderClient-Protocol.h */, + 1B9287AB19F9A55A00D540DF /* NSTokenFieldDelegate-Protocol.h */, + 1B9287AC19F9A55A00D540DF /* NSUserInterfaceValidations-Protocol.h */, + 1B9287AD19F9A55A00D540DF /* NSView-MUIAdditions.h */, + 1B9287AE19F9A55A00D540DF /* NSWindowDelegate-Protocol.h */, + 1B9287AF19F9A55A00D540DF /* QLPreviewItem-Protocol.h */, + 1B9287B019F9A55A00D540DF /* QLPreviewPanelDataSource-Protocol.h */, + 1B9287B119F9A55A00D540DF /* QLPreviewPanelDelegate-Protocol.h */, + 1B9287B219F9A55A00D540DF /* QLSeamlessCloserDelegate-Protocol.h */, + 1B9287B319F9A55A00D540DF /* QLSeamlessOpenerDelegate-Protocol.h */, + 1B9287B419F9A55A00D540DF /* WKBrowsingContextLoadDelegate-Protocol.h */, + 1B9287B519F9A55A00D540DF /* WKConnectionDelegate-Protocol.h */, + 1B9287B619F9A55A00D540DF /* WKProcessGroupDelegate-Protocol.h */, + ); + path = MailUIFW; + sourceTree = ""; + }; + 1BAEF63F13E9F44800A59CED /* Common */ = { + isa = PBXGroup; + children = ( + 1B32AFF613AF827B0072079B /* CCLog.m */, + 1B45481914F7D0F0000F1646 /* GMSecurityHistory.m */, + 1B02D70713F1E9D80032CFD1 /* GPGFlaggedString.m */, + 1B7E4DB614EEEAD90069E69C /* JRLPSwizzle.m */, + 1B97AE3715096FA700A4F0F2 /* MMStopwatch.m */, + 1B02D70913F1E9F00032CFD1 /* NSArray+Functional.m */, + 1B8437651404AB9C00968293 /* NSData+GPGMail.m */, + 1B3F2F9113E58D3D006A8333 /* NSObject+LPDynamicIvars.m */, + 1BBEF49B13A9115E0037E53D /* NSSet+Functional.m */, + 559A807B0838E9B10052F47C /* NSString+GPGMail.m */, + ); + name = Common; + sourceTree = ""; + }; + 1BAEF64013E9F45B00A59CED /* UI */ = { + isa = PBXGroup; + children = ( + 1B73B8DC1BB2099F007D601B /* MailToolbar+GPGMail.m */, + 1B73B8D91BB2079C007D601B /* ComposeWindowController+GPGMail.m */, + 1B51232214093750004D0818 /* NSBezierPathAdditions */, + 1BEA7AC41760AB5B0084B2AD /* BannerController+GPGMail.m */, + 1BD06B9A18102CF300EC9902 /* WebDocumentGenerator+GPGMail.m */, + 1B3F2F9D13E59639006A8333 /* ComposeBackEnd+GPGMail.m */, + 1B3F2F8F13E58B70006A8333 /* ComposeHeaderView+GPGMail.m */, + 300F29BA175F460E00C435D2 /* GMComposeKeyEventHandler.m */, + 1B4741CF14F550B800F36C54 /* GMSecurityControl.m */, + 1B2341DD14FEEC8C0007EB64 /* GMSecurityMethodAccessoryView.m */, + 1BC4778C1468AA4F0061120C /* GPGAttachmentController.m */, + 559A80710838E9B10052F47C /* GPGMailPreferences.m */, + 1B8C01D413E4F12D00DB9FA4 /* GPGSignatureView.m */, + 1B3F2F9513E58F1D006A8333 /* GPGTextAttachmentCell.m */, + 1BF69D7E1405C04E008B07F5 /* HeadersEditor+GPGMail.m */, + 1B51231D1409345C004D0818 /* MailDocumentEditor+GPGMail.m */, + 559A808C0838EA1C0052F47C /* MessageContentController+GPGMail.m */, + 1B3F2F9B13E590AB006A8333 /* MessageHeaderDisplay+GPGMail.m */, + 1B3F2F9813E58FD3006A8333 /* NSAttributedString+GPGMail.m */, + 559A80900838EA1C0052F47C /* NSPreferences+GPGMail.m */, + 1B89E21514FC40F00012D4AD /* NSWindow+GPGMail.m */, + 306E8A36178B0BCB004C5B89 /* OptionalView+GPGMail.m */, + ); + name = UI; + sourceTree = ""; + }; + 1BAEF64113E9F46D00A59CED /* Logic */ = { + isa = PBXGroup; + children = ( + 1B03125E18116CB4006D451A /* ConversationMember+GPGMail.m */, + 559A806E0838E9B10052F47C /* GPGMailBundle.m */, + 1BADCE7D176B694C009D3785 /* GMCodeInjector.m */, + 1B22E50B176A101800BBB351 /* GMKeyManager.m */, + 1BADCE75176B6501009D3785 /* GMMessageRulesApplier.m */, + 4555EA4A150922DF00723E1F /* GPGException+GPGMail.m */, + 1B938AC617693F48007A0854 /* Library+GPGMail.m */, + 1BB3DCCD1407F1CA00870DEB /* LibraryStore+GPGMail.m */, + 1BAEF64313E9F57700A59CED /* MailAccount+GPGMail.m */, + 1B9287C819F9E99700D540DF /* MCMessageGenerator+GPGMail.m */, + 1B8289FA13FD62880007E6A2 /* Message+GPGMail.m */, + 1BD7D27E1765E59C00F5A266 /* MessageCriterion+GPGMail.m */, + 559A80780838E9B10052F47C /* MimeBody+GPGMail.m */, + 559A80790838E9B10052F47C /* MimePart+GPGMail.m */, + 1B49855917A6EB79007FE67F /* MessageRouter+GPGMail.m */, + 1BF40C89180CA59A00B4C1CE /* EAEmailAddressParser+GPGMail.m */, + ); + name = Logic; + sourceTree = ""; + }; + 1BDAA67013EB4C9D00F27826 /* Logic */ = { + isa = PBXGroup; + children = ( + 1B03125D18116CB4006D451A /* ConversationMember+GPGMail.h */, + 307E1C6612B17CFF0012F3DF /* GPGMailBundle.h */, + 1BADCE7C176B694C009D3785 /* GMCodeInjector.h */, + 1B22E50A176A101800BBB351 /* GMKeyManager.h */, + 1BADCE74176B6501009D3785 /* GMMessageRulesApplier.h */, + 4555EA49150922DF00723E1F /* GPGException+GPGMail.h */, + 1B938AC517693F48007A0854 /* Library+GPGMail.h */, + 1BB3DCCC1407F1CA00870DEB /* LibraryStore+GPGMail.h */, + 1BAEF64213E9F57700A59CED /* MailAccount+GPGMail.h */, + 1B9287C719F9E99700D540DF /* MCMessageGenerator+GPGMail.h */, + 1B8289F913FD62880007E6A2 /* Message+GPGMail.h */, + 1BD7D27D1765E59C00F5A266 /* MessageCriterion+GPGMail.h */, + 559A805D0838E8300052F47C /* MimeBody+GPGMail.h */, + 559A805E0838E8300052F47C /* MimePart+GPGMail.h */, + 1B49855817A6EB79007FE67F /* MessageRouter+GPGMail.h */, + 1BF40C88180CA59A00B4C1CE /* EAEmailAddressParser+GPGMail.h */, + ); + name = Logic; + sourceTree = ""; + }; + 1BDAA67113EB4CAD00F27826 /* UI */ = { + isa = PBXGroup; + children = ( + 1B73B8DB1BB20994007D601B /* MailToolbar+GPGMail.h */, + 1B73B8D01BB20787007D601B /* ComposeWindowController+GPGMail.h */, + 1B512327140937A7004D0818 /* NSBezierPathAdditions */, + 1BEA7AC31760AB5B0084B2AD /* BannerController+GPGMail.h */, + 1BD06B9918102CF300EC9902 /* WebDocumentGenerator+GPGMail.h */, + 559A80620838E8890052F47C /* ComposeBackEnd+GPGMail.h */, + 1B3F2F8E13E58B70006A8333 /* ComposeHeaderView+GPGMail.h */, + 300F29B9175F460E00C435D2 /* GMComposeKeyEventHandler.h */, + 1B4741CE14F550B700F36C54 /* GMSecurityControl.h */, + 1B2341DC14FEEC8C0007EB64 /* GMSecurityMethodAccessoryView.h */, + 1BC4778B1468AA4E0061120C /* GPGAttachmentController.h */, + 559A80550838E8300052F47C /* GPGMailPreferences.h */, + 1B8C01D313E4F11D00DB9FA4 /* GPGSignatureView.h */, + 1B3F2F9413E58F1C006A8333 /* GPGTextAttachmentCell.h */, + 1BF69D7D1405C04E008B07F5 /* HeadersEditor+GPGMail.h */, + 1B51231C1409345C004D0818 /* MailDocumentEditor+GPGMail.h */, + 559A80640838E8890052F47C /* MessageContentController+GPGMail.h */, + 1B3F2F9A13E590AB006A8333 /* MessageHeaderDisplay+GPGMail.h */, + 1B3F2F9713E58FD2006A8333 /* NSAttributedString+GPGMail.h */, + 559A80680838E8890052F47C /* NSPreferences+GPGMail.h */, + 1B89E21414FC40F00012D4AD /* NSWindow+GPGMail.h */, + 306E8A35178B0BCB004C5B89 /* OptionalView+GPGMail.h */, + ); + name = UI; + sourceTree = ""; + }; + 1BDAA67213EB4CB600F27826 /* Common */ = { + isa = PBXGroup; + children = ( + 1B32AFF513AF827B0072079B /* CCLog.h */, + 1B45481814F7D0F0000F1646 /* GMSecurityHistory.h */, + 1BF69D801405DDCD008B07F5 /* GPGConstants.h */, + 1B02D70B13F1EA1D0032CFD1 /* GPGFlaggedString.h */, + 1B7E4DB514EEEACE0069E69C /* JRLPSwizzle.h */, + 1B97AE3615096FA700A4F0F2 /* MMStopwatch.h */, + 1B02D70C13F1EA290032CFD1 /* NSArray+Functional.h */, + 1B8437641404AB9C00968293 /* NSData+GPGMail.h */, + 1B3F2F9313E58D66006A8333 /* NSObject+LPDynamicIvars.h */, + 1BBEF49A13A9115E0037E53D /* NSSet+Functional.h */, + 559A80600838E8300052F47C /* NSString+GPGMail.h */, + ); + name = Common; + sourceTree = ""; + }; + 1BFDB138180B30DB00B677C2 /* MailHeaders */ = { + isa = PBXGroup; + children = ( + 1B92838D19F9A55600D540DF /* Yosemite_Final */, + 1BFDB139180B30DB00B677C2 /* Lion */, + 1BFDB561180B30E000B677C2 /* Mavericks */, + 1B03125A1811488F006D451A /* NSPreferences.h */, + 1B03125B1811488F006D451A /* NSPreferencesModule-Protocol.h */, + 1B03125C1811488F006D451A /* NSPreferencesModule.h */, + ); + path = MailHeaders; + sourceTree = ""; + }; + 1BFDB139180B30DB00B677C2 /* Lion */ = { + isa = PBXGroup; + children = ( + 1BFDB13A180B30DB00B677C2 /* Mail */, + 1BFDB382180B30DE00B677C2 /* Message */, + ); + path = Lion; + sourceTree = ""; + }; + 1BFDB13A180B30DB00B677C2 /* Mail */ = { + isa = PBXGroup; + children = ( + 1BFDB13B180B30DB00B677C2 /* _AccountDisplayCell.h */, + 1BFDB13C180B30DB00B677C2 /* _AddressRectangleView.h */, + 1BFDB13D180B30DB00B677C2 /* _AllSignaturesAccount.h */, + 1BFDB13E180B30DB00B677C2 /* _AttachmentQueueEntry.h */, + 1BFDB13F180B30DB00B677C2 /* _AutocompletionResultsAccumulator.h */, + 1BFDB140180B30DB00B677C2 /* _AutosizingClipView.h */, + 1BFDB141180B30DB00B677C2 /* _BorderlessButton.h */, + 1BFDB142180B30DB00B677C2 /* _CompletionWindow.h */, + 1BFDB143180B30DB00B677C2 /* _ComposeAttachmentEnumerator.h */, + 1BFDB144180B30DB00B677C2 /* _DataDetectorManagerDelegate.h */, + 1BFDB145180B30DB00B677C2 /* _DateTextFieldCell.h */, + 1BFDB146180B30DB00B677C2 /* _DeleteMailboxTransfer.h */, + 1BFDB147180B30DB00B677C2 /* _DupsLinkView.h */, + 1BFDB148180B30DB00B677C2 /* _EmptyFavoritesMessageView.h */, + 1BFDB149180B30DB00B677C2 /* _FavoriteButtonCell.h */, + 1BFDB14A180B30DB00B677C2 /* _FilteredListInfo.h */, + 1BFDB14B180B30DB00B677C2 /* _IMAPMailboxEntry.h */, + 1BFDB14C180B30DB00B677C2 /* _MailboxUidPlaceholder.h */, + 1BFDB14D180B30DB00B677C2 /* _MailInspectorBarSeparatorView.h */, + 1BFDB14E180B30DB00B677C2 /* _MailNSClipView.h */, + 1BFDB14F180B30DB00B677C2 /* _MailNSFontManager.h */, + 1BFDB150180B30DB00B677C2 /* _MailSplitViewDimmingView.h */, + 1BFDB151180B30DB00B677C2 /* _MailTableHeaderView.h */, + 1BFDB152180B30DB00B677C2 /* _MailToolbarSpace.h */, + 1BFDB153180B30DB00B677C2 /* _MenuItemThatDoesNotRetainRepresentedObject.h */, + 1BFDB154180B30DB00B677C2 /* _MessageContentTableRowView.h */, + 1BFDB155180B30DB00B677C2 /* _MessageHeaderAccessibilityView.h */, + 1BFDB156180B30DB00B677C2 /* _MessageThreadingData.h */, + 1BFDB157180B30DB00B677C2 /* _MessageViewerBox.h */, + 1BFDB158180B30DB00B677C2 /* _MessageViewerLazyPopUpButtonCell.h */, + 1BFDB159180B30DB00B677C2 /* _MessageViewingPaneConversationsObserver.h */, + 1BFDB15A180B30DB00B677C2 /* _MouseTracker.h */, + 1BFDB15B180B30DB00B677C2 /* _MTMAccountMailbox.h */, + 1BFDB15C180B30DB00B677C2 /* _MTMBackupMailbox.h */, + 1BFDB15D180B30DB00B677C2 /* _MTMDisabledSubMetaMailbox.h */, + 1BFDB15E180B30DB00B677C2 /* _MTMDraftsMailbox.h */, + 1BFDB15F180B30DB00B677C2 /* _MTMHeaderCell.h */, + 1BFDB160180B30DB00B677C2 /* _MTMInboxMailbox.h */, + 1BFDB161180B30DB00B677C2 /* _MTMJunkMailbox.h */, + 1BFDB162180B30DB00B677C2 /* _MTMMetaMailbox.h */, + 1BFDB163180B30DB00B677C2 /* _MTMNotesMailbox.h */, + 1BFDB164180B30DB00B677C2 /* _MTMRootMailbox.h */, + 1BFDB165180B30DB00B677C2 /* _MTMRSSMailbox.h */, + 1BFDB166180B30DB00B677C2 /* _MTMRSSSubMailbox.h */, + 1BFDB167180B30DB00B677C2 /* _MTMSectionMailbox.h */, + 1BFDB168180B30DB00B677C2 /* _MTMSentMailbox.h */, + 1BFDB169180B30DB00B677C2 /* _MTMSmartMailbox.h */, + 1BFDB16A180B30DB00B677C2 /* _MTMStoredMetaMailbox.h */, + 1BFDB16B180B30DB00B677C2 /* _MTMStoredSubMetaMailbox.h */, + 1BFDB16C180B30DB00B677C2 /* _MTMSubMetaMailbox.h */, + 1BFDB16D180B30DB00B677C2 /* _MTMTrashMailbox.h */, + 1BFDB16E180B30DB00B677C2 /* _MV_BezierPathLayoutManager.h */, + 1BFDB16F180B30DB00B677C2 /* _PDFAttachmentView_InertScrollView.h */, + 1BFDB170180B30DB00B677C2 /* _QuickLookButtonCell.h */, + 1BFDB171180B30DB00B677C2 /* _RecentsSearchOperation.h */, + 1BFDB172180B30DB00B677C2 /* _ResizingTextAttachmentCell.h */, + 1BFDB173180B30DB00B677C2 /* _RoundedRectTextFieldCell.h */, + 1BFDB174180B30DB00B677C2 /* _RSSConnection.h */, + 1BFDB175180B30DB00B677C2 /* _SaveAttachmentsButtonCell.h */, + 1BFDB176180B30DB00B677C2 /* _SenderImageCell.h */, + 1BFDB177180B30DB00B677C2 /* _SheetContext.h */, + 1BFDB178180B30DB00B677C2 /* _ShowLinkView.h */, + 1BFDB179180B30DB00B677C2 /* _SidebarButtonCell.h */, + 1BFDB17A180B30DB00B677C2 /* _SlidingView.h */, + 1BFDB17B180B30DB00B677C2 /* _SortBarButtonCell.h */, + 1BFDB17C180B30DB00B677C2 /* _StationeryThumbnailCreator.h */, + 1BFDB17D180B30DB00B677C2 /* _TextButtonCell.h */, + 1BFDB17E180B30DB00B677C2 /* _ThreadAnimationOffscreenWindow.h */, + 1BFDB17F180B30DB00B677C2 /* _ThreadDisclosureTextFieldCell.h */, + 1BFDB180180B30DB00B677C2 /* _TransferOperation.h */, + 1BFDB181180B30DB00B677C2 /* _VisibleStateObject.h */, + 1BFDB182180B30DB00B677C2 /* ABSearchOperationDelegate-Protocol.h */, + 1BFDB183180B30DB00B677C2 /* Account-MailUIExtras.h */, + 1BFDB184180B30DB00B677C2 /* AccountAutoconfiguratorDelegate-Protocol.h */, + 1BFDB185180B30DB00B677C2 /* AccountCell.h */, + 1BFDB186180B30DB00B677C2 /* AccountDetails.h */, + 1BFDB187180B30DB00B677C2 /* AccountInfo.h */, + 1BFDB188180B30DB00B677C2 /* AccountInfoTabOwner-Protocol.h */, + 1BFDB189180B30DB00B677C2 /* AccountPreferences.h */, + 1BFDB18A180B30DB00B677C2 /* AccountSetupAssistant.h */, + 1BFDB18B180B30DB00B677C2 /* AccountSetupValidatorDelegate-Protocol.h */, + 1BFDB18C180B30DB00B677C2 /* AccountStatusDataSource.h */, + 1BFDB18D180B30DB00B677C2 /* AccountStatusDataSourceDelegate-Protocol.h */, + 1BFDB18E180B30DB00B677C2 /* AccountSummary.h */, + 1BFDB18F180B30DB00B677C2 /* ActivityAggregateView.h */, + 1BFDB190180B30DB00B677C2 /* ActivityProgressPanel.h */, + 1BFDB191180B30DB00B677C2 /* ActivityViewController.h */, + 1BFDB192180B30DB00B677C2 /* ActivityViewEntry.h */, + 1BFDB193180B30DB00B677C2 /* ActivityViewer.h */, + 1BFDB194180B30DB00B677C2 /* ActivityViewerMailSound.h */, + 1BFDB195180B30DB00B677C2 /* AddProgressMonitor-Protocol.h */, + 1BFDB196180B30DB00B677C2 /* AddressAttachment.h */, + 1BFDB197180B30DB00B677C2 /* AddressAttachmentCell.h */, + 1BFDB198180B30DB00B677C2 /* AddressCommentCommand.h */, + 1BFDB199180B30DB00B677C2 /* AddressHistoryController.h */, + 1BFDB19A180B30DB00B677C2 /* AddressLayoutManager.h */, + 1BFDB19B180B30DB00B677C2 /* AddressPicker.h */, + 1BFDB19C180B30DB00B677C2 /* AddressTextField.h */, + 1BFDB19D180B30DB00B677C2 /* AddressTextFieldDelegate-Protocol.h */, + 1BFDB19E180B30DB00B677C2 /* AddressTextViewDelegate-Protocol.h */, + 1BFDB19F180B30DB00B677C2 /* ApplescriptEmailImporter.h */, + 1BFDB1A0180B30DB00B677C2 /* Assistant.h */, + 1BFDB1A1180B30DB00B677C2 /* AssistantDelegate-Protocol.h */, + 1BFDB1A2180B30DB00B677C2 /* AssistantManager.h */, + 1BFDB1A3180B30DB00B677C2 /* AtomicAddressTextView-Protocol.h */, + 1BFDB1A4180B30DB00B677C2 /* AttachmentDragSession.h */, + 1BFDB1A5180B30DB00B677C2 /* AttachmentLoader.h */, + 1BFDB1A6180B30DB00B677C2 /* AttachmentManager.h */, + 1BFDB1A7180B30DB00B677C2 /* AuthSchemeBindingProxy.h */, + 1BFDB1A8180B30DB00B677C2 /* AuthSchemeValueTransformer.h */, + 1BFDB1A9180B30DB00B677C2 /* AutoLogger.h */, + 1BFDB1AA180B30DB00B677C2 /* AutosizingScrollView.h */, + 1BFDB1AB180B30DB00B677C2 /* AutosizingTextField.h */, + 1BFDB1AC180B30DB00B677C2 /* BannerContainer-Protocol.h */, + 1BFDB1AD180B30DB00B677C2 /* BannerController.h */, + 1BFDB1AE180B30DB00B677C2 /* BindingsEnabledMenu.h */, + 1BFDB1AF180B30DB00B677C2 /* BorderlessToolbarItem.h */, + 1BFDB1B0180B30DB00B677C2 /* BusyStatusErrorWindowDelegate.h */, + 1BFDB1B1180B30DB00B677C2 /* ButtonIconTextCell.h */, + 1BFDB1B2180B30DB00B677C2 /* CalendarBannerIconCreator.h */, + 1BFDB1B3180B30DB00B677C2 /* CalendarEventBannerView.h */, + 1BFDB1B4180B30DB00B677C2 /* CDStructures.h */, + 1BFDB1B5180B30DB00B677C2 /* CheckMailAutoTest.h */, + 1BFDB1B6180B30DB00B677C2 /* ClippedItemsIndicator.h */, + 1BFDB1B7180B30DB00B677C2 /* ClippedItemsIndicatorDelegate-Protocol.h */, + 1BFDB1B8180B30DB00B677C2 /* ColorBackgroundView.h */, + 1BFDB1B9180B30DB00B677C2 /* CompletionController.h */, + 1BFDB1BA180B30DB00B677C2 /* ComposeBackEnd.h */, + 1BFDB1BB180B30DB00B677C2 /* ComposeBackEnd_Scripting.h */, + 1BFDB1BC180B30DB00B677C2 /* ComposeHeaderView.h */, + 1BFDB1BD180B30DB00B677C2 /* ComposeSpellChecker.h */, + 1BFDB1BE180B30DB00B677C2 /* ComposingPreferences.h */, + 1BFDB1BF180B30DB00B677C2 /* ConnectionDoctor.h */, + 1BFDB1C0180B30DB00B677C2 /* ContainerView.h */, + 1BFDB1C1180B30DB00B677C2 /* CopyMessagesAutoTest.h */, + 1BFDB1C2180B30DB00B677C2 /* CriteriaUIHelper.h */, + 1BFDB1C3180B30DB00B677C2 /* CriterionView.h */, + 1BFDB1C4180B30DB00B677C2 /* DateCell.h */, + 1BFDB1C5180B30DB00B677C2 /* DateTextField.h */, + 1BFDB1C6180B30DB00B677C2 /* DDDetectorManagerDelegate-Protocol.h */, + 1BFDB1C7180B30DB00B677C2 /* DefaultApplicationPopUpButton.h */, + 1BFDB1C8180B30DB00B677C2 /* DefaultWebAppPopUpController.h */, + 1BFDB1C9180B30DB00B677C2 /* DeleteMessagesAutoTest.h */, + 1BFDB1CA180B30DB00B677C2 /* DeletingTableView.h */, + 1BFDB1CB180B30DB00B677C2 /* DeliveryAccount-MailUIExtras.h */, + 1BFDB1CC180B30DB00B677C2 /* DeliveryAccountArrayController.h */, + 1BFDB1CD180B30DB00B677C2 /* DeliveryFailure.h */, + 1BFDB1CE180B30DB00B677C2 /* DeliveryQueue.h */, + 1BFDB1CF180B30DB00B677C2 /* DockCountController.h */, + 1BFDB1D0180B30DB00B677C2 /* DocumentContentState.h */, + 1BFDB1D1180B30DB00B677C2 /* DocumentEditor.h */, + 1BFDB1D2180B30DB00B677C2 /* DocumentEditorManaging-Protocol.h */, + 1BFDB1D3180B30DB00B677C2 /* DOMCharacterData-MailExtras.h */, + 1BFDB1D4180B30DB00B677C2 /* DOMCSSStylePropertyAnimation.h */, + 1BFDB1D5180B30DB00B677C2 /* DOMCSSValue-MailExtras.h */, + 1BFDB1D6180B30DB00B677C2 /* DOMDocument-MailExtras.h */, + 1BFDB1D7180B30DB00B677C2 /* DOMDocument-RedundantTextAdditions.h */, + 1BFDB1D8180B30DB00B677C2 /* DOMDocumentFragment-MailExtras.h */, + 1BFDB1D9180B30DB00B677C2 /* DOMElement-MailExtras.h */, + 1BFDB1DA180B30DB00B677C2 /* DOMElement-MailHTMLAttachments.h */, + 1BFDB1DB180B30DB00B677C2 /* DOMEventListener-Protocol.h */, + 1BFDB1DC180B30DB00B677C2 /* DOMHTMLDocument-MailExtras.h */, + 1BFDB1DD180B30DB00B677C2 /* DOMHTMLDocument-ToDoExtras.h */, + 1BFDB1DE180B30DB00B677C2 /* DOMHTMLElement-MailExtras.h */, + 1BFDB1DF180B30DB00B677C2 /* DOMHTMLElement-MailQuoteLevel.h */, + 1BFDB1E0180B30DB00B677C2 /* DOMHTMLImageElement-MailHTMLAttachments.h */, + 1BFDB1E1180B30DB00B677C2 /* DOMHTMLObjectElement-AttachmentLocator.h */, + 1BFDB1E2180B30DB00B677C2 /* DOMNode-MailExtras.h */, + 1BFDB1E3180B30DB00B677C2 /* DOMNode-MailHTMLAttachments.h */, + 1BFDB1E4180B30DB00B677C2 /* DOMNode-RedundantTextAdditions.h */, + 1BFDB1E5180B30DB00B677C2 /* DOMNode-ToDoExtras.h */, + 1BFDB1E6180B30DB00B677C2 /* DOMRange-MailExtras.h */, + 1BFDB1E7180B30DB00B677C2 /* DottedBlockquoteAbbreviator.h */, + 1BFDB1E8180B30DB00B677C2 /* DraggingTextView.h */, + 1BFDB1E9180B30DB00B677C2 /* DraggingTextViewDelegate-Protocol.h */, + 1BFDB1EA180B30DB00B677C2 /* DynamicErrorWindowController.h */, + 1BFDB1EB180B30DB00B677C2 /* DynamicErrorWindowDelegate-Protocol.h */, + 1BFDB1EC180B30DB00B677C2 /* EditableWebMessageDocument.h */, + 1BFDB1ED180B30DB00B677C2 /* EditingMessageWebView.h */, + 1BFDB1EE180B30DB00B677C2 /* EditingMessageWebViewDelegate-Protocol.h */, + 1BFDB1EF180B30DB00B677C2 /* EditingWebMessageController.h */, + 1BFDB1F0180B30DB00B677C2 /* EmailImporter.h */, + 1BFDB1F1180B30DB00B677C2 /* EmailView.h */, + 1BFDB1F2180B30DB00B677C2 /* EmailViewController.h */, + 1BFDB1F3180B30DB00B677C2 /* EmbeddedNoteDocumentEditor.h */, + 1BFDB1F4180B30DB00B677C2 /* EntourageEmailImporter.h */, + 1BFDB1F5180B30DB00B677C2 /* EudoraEmailImporter.h */, + 1BFDB1F6180B30DB00B677C2 /* EWSAccountDetails.h */, + 1BFDB1F7180B30DB00B677C2 /* EWSAccountSpecialMailboxes.h */, + 1BFDB1F8180B30DB00B677C2 /* EWSQuota.h */, + 1BFDB1F9180B30DB00B677C2 /* ExchangeAccountDetails.h */, + 1BFDB1FA180B30DB00B677C2 /* ExpandingSplitView.h */, + 1BFDB1FB180B30DB00B677C2 /* FauxUIElement.h */, + 1BFDB1FC180B30DB00B677C2 /* FavoriteButton.h */, + 1BFDB1FD180B30DB00B677C2 /* FavoriteMenuItemCell.h */, + 1BFDB1FE180B30DB00B677C2 /* FavoriteMenuScrollHoverView.h */, + 1BFDB1FF180B30DB00B677C2 /* FavoritesBarView.h */, + 1BFDB200180B30DB00B677C2 /* FavoritesMenuController.h */, + 1BFDB201180B30DB00B677C2 /* FavoritesMenuDelegateProtocol-Protocol.h */, + 1BFDB202180B30DB00B677C2 /* FavoritesMenuOutlineView.h */, + 1BFDB203180B30DB00B677C2 /* FeedbackCollector.h */, + 1BFDB204180B30DB00B677C2 /* FilesystemEmailImporter.h */, + 1BFDB205180B30DB00B677C2 /* FindPanel.h */, + 1BFDB206180B30DB00B677C2 /* FlagButtonImageView.h */, + 1BFDB207180B30DB00B677C2 /* FlaggedStatusToolbarItem.h */, + 1BFDB208180B30DB00B677C2 /* FlaggedStatusToolbarItemDelegate-Protocol.h */, + 1BFDB209180B30DB00B677C2 /* FlaggedStatusView.h */, + 1BFDB20A180B30DB00B677C2 /* FlagsMenuItemView.h */, + 1BFDB20B180B30DB00B677C2 /* FlatPopUpButton.h */, + 1BFDB20C180B30DB00B677C2 /* FlatPopUpButtonCell.h */, + 1BFDB20D180B30DB00B677C2 /* FlatTableView.h */, + 1BFDB20E180B30DB00B677C2 /* FlatTableViewDataCell.h */, + 1BFDB20F180B30DB00B677C2 /* FlippedView.h */, + 1BFDB210180B30DB00B677C2 /* FontPreferenceContainerView.h */, + 1BFDB211180B30DB00B677C2 /* FontsAndColorsPreferences.h */, + 1BFDB212180B30DB00B677C2 /* FullScreenModalCapableWindow.h */, + 1BFDB213180B30DB00B677C2 /* FullScreenWindowController.h */, + 1BFDB214180B30DB00B677C2 /* GeneralPreferences.h */, + 1BFDB215180B30DB00B677C2 /* GenericAttachmentFetcher.h */, + 1BFDB216180B30DB00B677C2 /* HeaderAttachmentsController.h */, + 1BFDB217180B30DB00B677C2 /* HeadersEditor.h */, + 1BFDB218180B30DB00B677C2 /* HyperlinkEditor.h */, + 1BFDB219180B30DB00B677C2 /* ImagePopUpButtonCell.h */, + 1BFDB21A180B30DB00B677C2 /* ImageResizer.h */, + 1BFDB21B180B30DB00B677C2 /* IMAPAccountDetails.h */, + 1BFDB21C180B30DB00B677C2 /* IMAPAccountSpecialMailboxes.h */, + 1BFDB21D180B30DB00B677C2 /* IMAPMailboxes.h */, + 1BFDB21E180B30DB00B677C2 /* IMAPQuota.h */, + 1BFDB21F180B30DB00B677C2 /* ImportAssistant.h */, + 1BFDB220180B30DB00B677C2 /* Importer.h */, + 1BFDB221180B30DB00B677C2 /* ImportItem.h */, + 1BFDB222180B30DB00B677C2 /* InvitationAttachmentOpener.h */, + 1BFDB223180B30DB00B677C2 /* IOErrorWindowDelegate.h */, + 1BFDB224180B30DB00B677C2 /* JunkPreferences.h */, + 1BFDB225180B30DB00B677C2 /* LabelledTextAttachmentCell.h */, + 1BFDB226180B30DB00B677C2 /* LazyMenuSegmentedCell.h */, + 1BFDB227180B30DB00B677C2 /* LazySubmenuMenuItem.h */, + 1BFDB228180B30DB00B677C2 /* LDAPServer.h */, + 1BFDB229180B30DB00B677C2 /* LibraryImportAssistant.h */, + 1BFDB22A180B30DB00B677C2 /* LibraryUpgradeAssistant.h */, + 1BFDB22B180B30DB00B677C2 /* LibraryUpgraderDelegate-Protocol.h */, + 1BFDB22C180B30DB00B677C2 /* ListImageView.h */, + 1BFDB22D180B30DB00B677C2 /* LoadingOverlay.h */, + 1BFDB22E180B30DB00B677C2 /* MailApp.h */, + 1BFDB22F180B30DB00B677C2 /* MailAutoTest.h */, + 1BFDB230180B30DB00B677C2 /* MailAutoTestRunner.h */, + 1BFDB231180B30DB00B677C2 /* MailBarContainerButton.h */, + 1BFDB232180B30DB00B677C2 /* MailBarContainerButtonCell.h */, + 1BFDB233180B30DB00B677C2 /* MailBarContainerView.h */, + 1BFDB234180B30DB00B677C2 /* MailboxesChooser.h */, + 1BFDB235180B30DB00B677C2 /* MailboxesController.h */, + 1BFDB236180B30DB00B677C2 /* MailboxesOutlineView.h */, + 1BFDB237180B30DB00B677C2 /* MailboxesOutlineViewController.h */, + 1BFDB238180B30DB00B677C2 /* MailboxesOutlineViewControllerDelegate-Protocol.h */, + 1BFDB239180B30DB00B677C2 /* MailboxesOutlineViewDelegate-Protocol.h */, + 1BFDB23A180B30DB00B677C2 /* MailboxesOutlineViewStateStorage.h */, + 1BFDB23B180B30DB00B677C2 /* MailboxesScrollView.h */, + 1BFDB23C180B30DB00B677C2 /* MailboxListCell.h */, + 1BFDB23D180B30DB00B677C2 /* MailboxListCellDelegate-Protocol.h */, + 1BFDB23E180B30DB00B677C2 /* MailboxPaneAccessoryView.h */, + 1BFDB23F180B30DC00B677C2 /* MailboxPaneBottomShadowView.h */, + 1BFDB240180B30DC00B677C2 /* MailboxPaneBottomView.h */, + 1BFDB241180B30DC00B677C2 /* MailboxUid-MessageListAdditions.h */, + 1BFDB242180B30DC00B677C2 /* MailCopyCommand.h */, + 1BFDB243180B30DC00B677C2 /* MailDeleteCommand.h */, + 1BFDB244180B30DC00B677C2 /* MailDocumentEditor.h */, + 1BFDB245180B30DC00B677C2 /* MailDocumentEditor_Scripting.h */, + 1BFDB246180B30DC00B677C2 /* MailEmailImporter.h */, + 1BFDB247180B30DC00B677C2 /* MailFullScreenWindowDelegate-Protocol.h */, + 1BFDB248180B30DC00B677C2 /* MailInspectorBar.h */, + 1BFDB249180B30DC00B677C2 /* MailInspectorBarItemController.h */, + 1BFDB24A180B30DC00B677C2 /* MailMediaBrowser.h */, + 1BFDB24B180B30DC00B677C2 /* MailMoveCommand.h */, + 1BFDB24C180B30DC00B677C2 /* MailNotificationCenter.h */, + 1BFDB24D180B30DC00B677C2 /* MailPopoverWell.h */, + 1BFDB24E180B30DC00B677C2 /* MailPreferences.h */, + 1BFDB24F180B30DC00B677C2 /* MailScroller.h */, + 1BFDB250180B30DC00B677C2 /* MailSearchScopeView.h */, + 1BFDB251180B30DC00B677C2 /* MailSorterPreferences.h */, + 1BFDB252180B30DC00B677C2 /* MailSplitView.h */, + 1BFDB253180B30DC00B677C2 /* MailTableView.h */, + 1BFDB254180B30DC00B677C2 /* MailTableViewDelegateDelegate-Protocol.h */, + 1BFDB255180B30DC00B677C2 /* MailTextAttachment.h */, + 1BFDB256180B30DC00B677C2 /* MailTimeMachineController.h */, + 1BFDB257180B30DC00B677C2 /* MailToCommand.h */, + 1BFDB258180B30DC00B677C2 /* MailToolbar.h */, + 1BFDB259180B30DC00B677C2 /* MailToolbarBaselineView.h */, + 1BFDB25A180B30DC00B677C2 /* MailToolbarSpaceItemWithPin.h */, + 1BFDB25B180B30DC00B677C2 /* MailVerticalSplitView.h */, + 1BFDB25C180B30DC00B677C2 /* MailVerticalSplitViewDelegate-Protocol.h */, + 1BFDB25D180B30DC00B677C2 /* MailWebViewEditor.h */, + 1BFDB25E180B30DC00B677C2 /* MailWindowShadowLayer.h */, + 1BFDB25F180B30DC00B677C2 /* MboxEmailImporter.h */, + 1BFDB260180B30DC00B677C2 /* MemorySelfTestAutoTest.h */, + 1BFDB261180B30DC00B677C2 /* MenuPassthroughView.h */, + 1BFDB262180B30DC00B677C2 /* Message-Chat.h */, + 1BFDB263180B30DC00B677C2 /* Message-MailViewerAdditions.h */, + 1BFDB264180B30DC00B677C2 /* MessageBodyScrollView.h */, + 1BFDB265180B30DC00B677C2 /* MessageContentController.h */, + 1BFDB266180B30DC00B677C2 /* MessageContentDisplay-Protocol.h */, + 1BFDB267180B30DC00B677C2 /* MessageContentView.h */, + 1BFDB268180B30DC00B677C2 /* MessageDeletionTransfer-Protocol.h */, + 1BFDB269180B30DC00B677C2 /* MessageDragHelper.h */, + 1BFDB26A180B30DC00B677C2 /* MessageEditor.h */, + 1BFDB26B180B30DC00B677C2 /* MessageHeaderDisplay.h */, + 1BFDB26C180B30DC00B677C2 /* MessageHeaderView.h */, + 1BFDB26D180B30DC00B677C2 /* MessageListCell.h */, + 1BFDB26E180B30DC00B677C2 /* MessageListColumnManager.h */, + 1BFDB26F180B30DC00B677C2 /* MessageListContainerView.h */, + 1BFDB270180B30DC00B677C2 /* MessageListHeaderCell.h */, + 1BFDB271180B30DC00B677C2 /* MessageMall-Protocol.h */, + 1BFDB272180B30DC00B677C2 /* MessageMegaMall.h */, + 1BFDB273180B30DC00B677C2 /* MessageMiniMall.h */, + 1BFDB274180B30DC00B677C2 /* MessagePrinter.h */, + 1BFDB275180B30DC00B677C2 /* MessageSaver.h */, + 1BFDB276180B30DC00B677C2 /* MessageSortContext-Protocol.h */, + 1BFDB277180B30DC00B677C2 /* MessagesTableView.h */, + 1BFDB278180B30DC00B677C2 /* MessageTextContainer.h */, + 1BFDB279180B30DC00B677C2 /* MessageTextView.h */, + 1BFDB27A180B30DC00B677C2 /* MessageTransfer.h */, + 1BFDB27B180B30DC00B677C2 /* MessageTransferDelegate-Protocol.h */, + 1BFDB27C180B30DC00B677C2 /* MessageViewer.h */, + 1BFDB27D180B30DC00B677C2 /* MessageViewerLazyPopUpButton.h */, + 1BFDB27E180B30DC00B677C2 /* MessageViewerSearchField.h */, + 1BFDB27F180B30DC00B677C2 /* MessageViewerSearchFieldFocusDelegate-Protocol.h */, + 1BFDB280180B30DC00B677C2 /* MessageViewingPane.h */, + 1BFDB281180B30DC00B677C2 /* MessageViewingPaneController.h */, + 1BFDB282180B30DC00B677C2 /* MessageViewingState.h */, + 1BFDB283180B30DC00B677C2 /* MessageViewPerfTest.h */, + 1BFDB284180B30DC00B677C2 /* MessageWebHTMLView.h */, + 1BFDB285180B30DC00B677C2 /* MessageWebView.h */, + 1BFDB286180B30DC00B677C2 /* MessageWindowViewPerfTest.h */, + 1BFDB287180B30DC00B677C2 /* MFAosImapAccountDetails.h */, + 1BFDB288180B30DC00B677C2 /* MFMessageSortingValueDelegate-Protocol.h */, + 1BFDB289180B30DC00B677C2 /* MFUIMailbox-Protocol.h */, + 1BFDB28A180B30DC00B677C2 /* MFUserAgent-Protocol.h */, + 1BFDB28B180B30DC00B677C2 /* ModalDimmingWindow.h */, + 1BFDB28C180B30DC00B677C2 /* MouseTrackingWindow.h */, + 1BFDB28D180B30DC00B677C2 /* MTMBufferedController.h */, + 1BFDB28E180B30DC00B677C2 /* MTMBytesFormatter.h */, + 1BFDB28F180B30DC00B677C2 /* MTMDiskMessage.h */, + 1BFDB290180B30DC00B677C2 /* MTMFakeMailbox.h */, + 1BFDB291180B30DC00B677C2 /* MTMFakeMessage.h */, + 1BFDB292180B30DC00B677C2 /* MTMFlagsCell.h */, + 1BFDB293180B30DC00B677C2 /* MTMFullWindowController.h */, + 1BFDB294180B30DC00B677C2 /* MTMIndexedMessage.h */, + 1BFDB295180B30DC00B677C2 /* MTMLoadingView.h */, + 1BFDB296180B30DC00B677C2 /* MTMMailbox.h */, + 1BFDB297180B30DC00B677C2 /* MTMMailboxChangedPredicate.h */, + 1BFDB298180B30DC00B677C2 /* MTMMailboxControllerProtocol-Protocol.h */, + 1BFDB299180B30DC00B677C2 /* MTMMailboxFetcher.h */, + 1BFDB29A180B30DC00B677C2 /* MTMMessage.h */, + 1BFDB29B180B30DC00B677C2 /* MTMMessageChangedPredicate.h */, + 1BFDB29C180B30DC00B677C2 /* MTMMessageColumnController.h */, + 1BFDB29D180B30DC00B677C2 /* MTMNoteCell.h */, + 1BFDB29E180B30DC00B677C2 /* MTMNumberCell.h */, + 1BFDB29F180B30DC00B677C2 /* MTMOutlineCell.h */, + 1BFDB2A0180B30DC00B677C2 /* MTMOutlineTopLevelCell.h */, + 1BFDB2A1180B30DC00B677C2 /* MTMOutlineView.h */, + 1BFDB2A2180B30DC00B677C2 /* MTMReadCell.h */, + 1BFDB2A3180B30DC00B677C2 /* MTMScroller.h */, + 1BFDB2A4180B30DC00B677C2 /* MTMSpecialMailbox.h */, + 1BFDB2A5180B30DC00B677C2 /* MTMTableView.h */, + 1BFDB2A6180B30DC00B677C2 /* MTMWindow.h */, + 1BFDB2A7180B30DC00B677C2 /* MTMWindowController.h */, + 1BFDB2A8180B30DC00B677C2 /* MultiImageCell.h */, + 1BFDB2A9180B30DC00B677C2 /* MultiSelectionPlaceholderView.h */, + 1BFDB2AA180B30DC00B677C2 /* MVComposeAccessoryViewOwner.h */, + 1BFDB2AB180B30DC00B677C2 /* MVLinkButton.h */, + 1BFDB2AC180B30DC00B677C2 /* MVMailboxSelectionOwner-Protocol.h */, + 1BFDB2AD180B30DC00B677C2 /* MVMailBundle.h */, + 1BFDB2AE180B30DC00B677C2 /* MVMessageDisplayNotifications-Protocol.h */, + 1BFDB2AF180B30DC00B677C2 /* MVSelectionOwner-Protocol.h */, + 1BFDB2B0180B30DC00B677C2 /* MVTerminationHandler-Protocol.h */, + 1BFDB2B1180B30DC00B677C2 /* NetscapeEmailImporter.h */, + 1BFDB2B2180B30DC00B677C2 /* NewMessageAttachmentAutoTest.h */, + 1BFDB2B3180B30DC00B677C2 /* NewMessageAutoTest.h */, + 1BFDB2B4180B30DC00B677C2 /* NoteComposeBackEnd.h */, + 1BFDB2B5180B30DC00B677C2 /* NoteDisplay.h */, + 1BFDB2B6180B30DC00B677C2 /* NoteDocumentEditor.h */, + 1BFDB2B7180B30DC00B677C2 /* NoteScrollBarsView.h */, + 1BFDB2B8180B30DC00B677C2 /* NoteScroller.h */, + 1BFDB2B9180B30DC00B677C2 /* NoteView.h */, + 1BFDB2BA180B30DC00B677C2 /* NoteWebViewEditor.h */, + 1BFDB2BB180B30DC00B677C2 /* NoteWindow.h */, + 1BFDB2BC180B30DC00B677C2 /* NoteWindowContentView.h */, + 1BFDB2BD180B30DC00B677C2 /* NSAlert-MFErrorSupport.h */, + 1BFDB2BE180B30DC00B677C2 /* NSAnimationDelegate-Protocol.h */, + 1BFDB2BF180B30DC00B677C2 /* NSApplicationDelegate-Protocol.h */, + 1BFDB2C0180B30DC00B677C2 /* NSArray-AtomicAddress.h */, + 1BFDB2C1180B30DC00B677C2 /* NSAttributedString-AtomicAddress.h */, + 1BFDB2C2180B30DC00B677C2 /* NSAttributedString-MailAttributedStringToHTML.h */, + 1BFDB2C3180B30DC00B677C2 /* NSAttributedString-MailTextAttachments.h */, + 1BFDB2C4180B30DC00B677C2 /* NSAttributedString-ViewingStateAttachmentCaching.h */, + 1BFDB2C5180B30DC00B677C2 /* NSBezierPath-MailAdditions.h */, + 1BFDB2C6180B30DC00B677C2 /* NSClipView-AutosizingScrollViewAdditions.h */, + 1BFDB2C7180B30DC00B677C2 /* NSClipView-ToReplaceViewWithOurOwn.h */, + 1BFDB2C8180B30DC00B677C2 /* NSControl-MailAdditions.h */, + 1BFDB2C9180B30DC00B677C2 /* NSControlTextEditingDelegate-Protocol.h */, + 1BFDB2CA180B30DC00B677C2 /* NSCopying-Protocol.h */, + 1BFDB2CB180B30DC00B677C2 /* NSDatePickerCellDelegate-Protocol.h */, + 1BFDB2CC180B30DC00B677C2 /* NSEvent-MailAdditions.h */, + 1BFDB2CD180B30DC00B677C2 /* NSEvent-MailViewerEvent.h */, + 1BFDB2CE180B30DC00B677C2 /* NSFileManagerDelegate-Protocol.h */, + 1BFDB2CF180B30DC00B677C2 /* NSFont-MailAdditions.h */, + 1BFDB2D0180B30DC00B677C2 /* NSFontManager-ToReplaceWithOurOwn.h */, + 1BFDB2D1180B30DC00B677C2 /* NSInspectorBarClient-Protocol.h */, + 1BFDB2D2180B30DC00B677C2 /* NSInspectorBarDelegate-Protocol.h */, + 1BFDB2D3180B30DC00B677C2 /* NSInspectorBarItemController-Protocol.h */, + 1BFDB2D4180B30DC00B677C2 /* NSLayoutManagerDelegate-Protocol.h */, + 1BFDB2D5180B30DC00B677C2 /* NSMenuDelegate-Protocol.h */, + 1BFDB2D6180B30DC00B677C2 /* NSMutableArray-Shuffle.h */, + 1BFDB2D7180B30DC00B677C2 /* NSMutableAttributedString-AdjustFontSize.h */, + 1BFDB2D8180B30DC00B677C2 /* NSMutableAttributedString-MailTextAttachments.h */, + 1BFDB2D9180B30DC00B677C2 /* NSNib-MailSharedNibLoading.h */, + 1BFDB2DA180B30DC00B677C2 /* NSNotification-MailNotificationAdditions.h */, + 1BFDB2DB180B30DC00B677C2 /* NSNotificationCenter-ToReplaceCenterWithOurOwn.h */, + 1BFDB2DC180B30DC00B677C2 /* NSObject-Protocol.h */, + 1BFDB2DD180B30DC00B677C2 /* NSOpenSavePanelDelegate-Protocol.h */, + 1BFDB2DE180B30DD00B677C2 /* NSOutlineView-MailAdditions.h */, + 1BFDB2DF180B30DD00B677C2 /* NSOutlineViewDataSource-Protocol.h */, + 1BFDB2E0180B30DD00B677C2 /* NSOutlineViewDelegate-Protocol.h */, + 1BFDB2E1180B30DD00B677C2 /* NSPopUpButton-MailAdditions.h */, + 1BFDB2E2180B30DD00B677C2 /* NSPreferences-ActiveModule.h */, + 1BFDB2E3180B30DD00B677C2 /* NSPreferencesModule-ActiveModule.h */, + 1BFDB2E4180B30DD00B677C2 /* NSPrintPanelAccessorizing-Protocol.h */, + 1BFDB2E5180B30DD00B677C2 /* NSSpeechSynthesizerDelegate-Protocol.h */, + 1BFDB2E6180B30DD00B677C2 /* NSSpellChecker-AllocationOverride.h */, + 1BFDB2E7180B30DD00B677C2 /* NSSplitViewDelegate-Protocol.h */, + 1BFDB2E8180B30DD00B677C2 /* NSString-AtomicAddress.h */, + 1BFDB2E9180B30DD00B677C2 /* NSString-FindPanelSupport.h */, + 1BFDB2EA180B30DD00B677C2 /* NSString-HTMLConversion.h */, + 1BFDB2EB180B30DD00B677C2 /* NSString-MailAdditions.h */, + 1BFDB2EC180B30DD00B677C2 /* NSString-ToDoAdditions.h */, + 1BFDB2ED180B30DD00B677C2 /* NSTableViewDataSource-Protocol.h */, + 1BFDB2EE180B30DD00B677C2 /* NSTableViewDelegate-Protocol.h */, + 1BFDB2EF180B30DD00B677C2 /* NSTabViewDelegate-Protocol.h */, + 1BFDB2F0180B30DD00B677C2 /* NSTextAttachmentCell-ForNeatAttachmentFeatures.h */, + 1BFDB2F1180B30DD00B677C2 /* NSTextDelegate-Protocol.h */, + 1BFDB2F2180B30DD00B677C2 /* NSTextFieldCell-ShouldntTheAppKitBeDoingThis.h */, + 1BFDB2F3180B30DD00B677C2 /* NSTextFieldDelegate-Protocol.h */, + 1BFDB2F4180B30DD00B677C2 /* NSTextInput-Protocol.h */, + 1BFDB2F5180B30DD00B677C2 /* NSTextInputClient-Protocol.h */, + 1BFDB2F6180B30DD00B677C2 /* NSTextStorage-AttachmentAttrFixCategory.h */, + 1BFDB2F7180B30DD00B677C2 /* NSTextView-AtomicAddress.h */, + 1BFDB2F8180B30DD00B677C2 /* NSTextView-FindPanelSupport.h */, + 1BFDB2F9180B30DD00B677C2 /* NSTextViewDelegate-Protocol.h */, + 1BFDB2FA180B30DD00B677C2 /* NSToolbar-MailAdditions.h */, + 1BFDB2FB180B30DD00B677C2 /* NSToolbarDelegate-Protocol.h */, + 1BFDB2FC180B30DD00B677C2 /* NSURLConnectionDelegate-Protocol.h */, + 1BFDB2FD180B30DD00B677C2 /* NSUserDefaults-FontAdditions.h */, + 1BFDB2FE180B30DD00B677C2 /* NSUserInterfaceValidations-Protocol.h */, + 1BFDB2FF180B30DD00B677C2 /* NSView-AttachmentDragSession.h */, + 1BFDB300180B30DD00B677C2 /* NSView-FavoriteButtonAnimation.h */, + 1BFDB301180B30DD00B677C2 /* NSView-LocatingFrameViews.h */, + 1BFDB302180B30DD00B677C2 /* NSView-MailAdditions.h */, + 1BFDB303180B30DD00B677C2 /* NSView-MailClipViewAdditions.h */, + 1BFDB304180B30DD00B677C2 /* NSView-MailQuickLookAdditions.h */, + 1BFDB305180B30DD00B677C2 /* NSView-MailSplitViewAdditions.h */, + 1BFDB306180B30DD00B677C2 /* NSView-MailToolbarBaselineView.h */, + 1BFDB307180B30DD00B677C2 /* NSView-ResizingAnimation.h */, + 1BFDB308180B30DD00B677C2 /* NSView-RichTableCellView.h */, + 1BFDB309180B30DD00B677C2 /* NSView-SlidingExtras.h */, + 1BFDB30A180B30DD00B677C2 /* NSView-TilingSupport.h */, + 1BFDB30B180B30DD00B677C2 /* NSWindow-BetterDescription.h */, + 1BFDB30C180B30DD00B677C2 /* NSWindow-MailWindowAdditions.h */, + 1BFDB30D180B30DD00B677C2 /* NSWindowDelegate-Protocol.h */, + 1BFDB30E180B30DD00B677C2 /* OofPanelController.h */, + 1BFDB30F180B30DD00B677C2 /* OptionalView.h */, + 1BFDB310180B30DD00B677C2 /* OutlineViewProgressIndicatorsController.h */, + 1BFDB311180B30DD00B677C2 /* PaddingLinkTextField.h */, + 1BFDB312180B30DD00B677C2 /* PaddingView.h */, + 1BFDB313180B30DD00B677C2 /* PasswordPanel.h */, + 1BFDB314180B30DD00B677C2 /* PDFAttachmentView.h */, + 1BFDB315180B30DD00B677C2 /* PersonCardDisplay.h */, + 1BFDB316180B30DD00B677C2 /* PhotoExporter.h */, + 1BFDB317180B30DD00B677C2 /* POPAccountDetails.h */, + 1BFDB318180B30DD00B677C2 /* POPAccountSpecialMailboxes.h */, + 1BFDB319180B30DD00B677C2 /* POPQuota.h */, + 1BFDB31A180B30DD00B677C2 /* PresenceTracker.h */, + 1BFDB31B180B30DD00B677C2 /* PrintingAccessoryViewController.h */, + 1BFDB31C180B30DD00B677C2 /* ProgressIndicatorCell.h */, + 1BFDB31D180B30DD00B677C2 /* PullQuoteAbbreviator.h */, + 1BFDB31E180B30DD00B677C2 /* QLPreviewPanelDataSource-Protocol.h */, + 1BFDB31F180B30DD00B677C2 /* QLPreviewPanelDelegate-Protocol.h */, + 1BFDB320180B30DD00B677C2 /* QLSeamlessOpenerDelegate-Protocol.h */, + 1BFDB321180B30DD00B677C2 /* QuickTimeAttachmentView.h */, + 1BFDB322180B30DD00B677C2 /* Quota.h */, + 1BFDB323180B30DD00B677C2 /* QuotaBar.h */, + 1BFDB324180B30DD00B677C2 /* RecentsSearchOperationDelegate-Protocol.h */, + 1BFDB325180B30DD00B677C2 /* RedundantContentAbbreviator.h */, + 1BFDB326180B30DD00B677C2 /* RedundantContentCluster.h */, + 1BFDB327180B30DD00B677C2 /* RemoteStoreAccountSpecialMailboxes.h */, + 1BFDB328180B30DD00B677C2 /* RemoteStoreQuota.h */, + 1BFDB329180B30DD00B677C2 /* ReplyAutoTest.h */, + 1BFDB32A180B30DD00B677C2 /* RichMessageListSortView.h */, + 1BFDB32B180B30DD00B677C2 /* RichTableCellView.h */, + 1BFDB32C180B30DD00B677C2 /* RichTableRowView.h */, + 1BFDB32D180B30DD00B677C2 /* RolloverActionButtonsView.h */, + 1BFDB32E180B30DD00B677C2 /* RolloverButtonCell.h */, + 1BFDB32F180B30DD00B677C2 /* RoundedCornersView.h */, + 1BFDB330180B30DD00B677C2 /* RoundedRectTextField.h */, + 1BFDB331180B30DD00B677C2 /* RSSAddFeedController.h */, + 1BFDB332180B30DD00B677C2 /* RSSArticleDisplay.h */, + 1BFDB333180B30DD00B677C2 /* RSSAuthenticationPanel.h */, + 1BFDB334180B30DD00B677C2 /* RSSFeedSubscriber.h */, + 1BFDB335180B30DD00B677C2 /* RSSNonBlockingPanel.h */, + 1BFDB336180B30DD00B677C2 /* RSSPanelAuthenticationHandler.h */, + 1BFDB337180B30DD00B677C2 /* RSSPreferences.h */, + 1BFDB338180B30DD00B677C2 /* ScriptableMessageTextStorage.h */, + 1BFDB339180B30DD00B677C2 /* SearchScopeDelegate-Protocol.h */, + 1BFDB33A180B30DD00B677C2 /* SegmentedToolbarItem.h */, + 1BFDB33B180B30DD00B677C2 /* SegmentedToolbarItemSegmentedCell.h */, + 1BFDB33C180B30DD00B677C2 /* SegmentedToolbarItemSegmentItem.h */, + 1BFDB33D180B30DD00B677C2 /* SelfAnimatingProgressIndicator.h */, + 1BFDB33E180B30DD00B677C2 /* SenderImageView.h */, + 1BFDB33F180B30DD00B677C2 /* SenderPhotoView.h */, + 1BFDB340180B30DD00B677C2 /* Signature.h */, + 1BFDB341180B30DD00B677C2 /* SignatureBundle.h */, + 1BFDB342180B30DD00B677C2 /* SignaturePreferences.h */, + 1BFDB343180B30DD00B677C2 /* SignedTextAttachment.h */, + 1BFDB344180B30DD00B677C2 /* SimpleLinkAbbreviator.h */, + 1BFDB345180B30DD00B677C2 /* SimpleLinkWithDottedBlockquoteBarAbbreviator.h */, + 1BFDB346180B30DD00B677C2 /* SingleMessageViewer.h */, + 1BFDB347180B30DD00B677C2 /* SlidingAnimation.h */, + 1BFDB348180B30DD00B677C2 /* SlidingAnimationDelegate-Protocol.h */, + 1BFDB349180B30DD00B677C2 /* SlidingViewsBar.h */, + 1BFDB34A180B30DD00B677C2 /* SmartMailboxEditor.h */, + 1BFDB34B180B30DD00B677C2 /* SMTPSettings.h */, + 1BFDB34C180B30DD00B677C2 /* SortBarButton.h */, + 1BFDB34D180B30DD00B677C2 /* SoundPopUpButton.h */, + 1BFDB34E180B30DD00B677C2 /* SpecialMailboxes.h */, + 1BFDB34F180B30DD00B677C2 /* SplitterAnimation.h */, + 1BFDB350180B30DD00B677C2 /* SpotlightBar.h */, + 1BFDB351180B30DD00B677C2 /* StarFieldController.h */, + 1BFDB352180B30DD00B677C2 /* StartupManager.h */, + 1BFDB353180B30DD00B677C2 /* Stationery.h */, + 1BFDB354180B30DD00B677C2 /* StationeryCompositeImage.h */, + 1BFDB355180B30DE00B677C2 /* StationeryCompositeImageMask.h */, + 1BFDB356180B30DE00B677C2 /* StationeryController.h */, + 1BFDB357180B30DE00B677C2 /* StationeryDynamicElement.h */, + 1BFDB358180B30DE00B677C2 /* StationeryLoader.h */, + 1BFDB359180B30DE00B677C2 /* StationerySelector.h */, + 1BFDB35A180B30DE00B677C2 /* StatusCell.h */, + 1BFDB35B180B30DE00B677C2 /* SubjectFormatter.h */, + 1BFDB35C180B30DE00B677C2 /* SyncableApp-Protocol.h */, + 1BFDB35D180B30DE00B677C2 /* SyncableDataInterestedParty-Protocol.h */, + 1BFDB35E180B30DE00B677C2 /* SyncableDataOwner-Protocol.h */, + 1BFDB35F180B30DE00B677C2 /* TableHeaderView.h */, + 1BFDB360180B30DE00B677C2 /* TableViewManager.h */, + 1BFDB361180B30DE00B677C2 /* TemporaryAttachmentOpener.h */, + 1BFDB362180B30DE00B677C2 /* TemporaryItemManager.h */, + 1BFDB363180B30DE00B677C2 /* TextButtonToolbarItem.h */, + 1BFDB364180B30DE00B677C2 /* TextEncodingMenuDelegate.h */, + 1BFDB365180B30DE00B677C2 /* TextMessageDisplay.h */, + 1BFDB366180B30DE00B677C2 /* ThreadDisclosureTextField.h */, + 1BFDB367180B30DE00B677C2 /* ThumbnailButtonCell.h */, + 1BFDB368180B30DE00B677C2 /* ThumbnailMatrix.h */, + 1BFDB369180B30DE00B677C2 /* ThunderbirdEmailImporter.h */, + 1BFDB36A180B30DE00B677C2 /* TilingWebView.h */, + 1BFDB36B180B30DE00B677C2 /* TransparentImageView.h */, + 1BFDB36C180B30DE00B677C2 /* TypeAheadWindow.h */, + 1BFDB36D180B30DE00B677C2 /* UncommentedAddressCommand.h */, + 1BFDB36E180B30DE00B677C2 /* UnfoldAnimationController.h */, + 1BFDB36F180B30DE00B677C2 /* VerticallyCenteredTextFieldCell.h */, + 1BFDB370180B30DE00B677C2 /* ViewerPreferences.h */, + 1BFDB371180B30DE00B677C2 /* ViewFactory.h */, + 1BFDB372180B30DE00B677C2 /* ViewTextAttachmentCell.h */, + 1BFDB373180B30DE00B677C2 /* WebComposeMessageContents.h */, + 1BFDB374180B30DE00B677C2 /* WebFrame-ScrollingAdditions.h */, + 1BFDB375180B30DE00B677C2 /* WebFrame-SizingExtras.h */, + 1BFDB376180B30DE00B677C2 /* WebHTMLView-FindPanelStuff.h */, + 1BFDB377180B30DE00B677C2 /* WebHTMLView-MailAdditions.h */, + 1BFDB378180B30DE00B677C2 /* WebHTMLView-MailExtras.h */, + 1BFDB379180B30DE00B677C2 /* WebHTMLView-ToReplaceViewWithOurOwn.h */, + 1BFDB37A180B30DE00B677C2 /* WebMessageController.h */, + 1BFDB37B180B30DE00B677C2 /* WebMessageDisplay.h */, + 1BFDB37C180B30DE00B677C2 /* WebMessageDocument-Attachments.h */, + 1BFDB37D180B30DE00B677C2 /* WebPreferences-MessageDefaultsSupport.h */, + 1BFDB37E180B30DE00B677C2 /* WebView-MailExtras.h */, + 1BFDB37F180B30DE00B677C2 /* WebViewEditor.h */, + 1BFDB380180B30DE00B677C2 /* WebViewLoadOperation.h */, + 1BFDB381180B30DE00B677C2 /* WindowTransformAnimation.h */, + ); + path = Mail; + sourceTree = ""; + }; + 1BFDB382180B30DE00B677C2 /* Message */ = { + isa = PBXGroup; + children = ( + 1BFDB383180B30DE00B677C2 /* __MFCallStack.h */, + 1BFDB384180B30DE00B677C2 /* _ActivityAggregateArrayController.h */, + 1BFDB385180B30DE00B677C2 /* _ActivityMonitorMultiTarget.h */, + 1BFDB386180B30DE00B677C2 /* _AppleScriptHeaderRecord.h */, + 1BFDB387180B30DE00B677C2 /* _AppleTokenSASLClient.h */, + 1BFDB388180B30DE00B677C2 /* _ConversationsMessageCollector.h */, + 1BFDB389180B30DE00B677C2 /* _DataCollector.h */, + 1BFDB38A180B30DE00B677C2 /* _ExternalSASLClient.h */, + 1BFDB38B180B30DE00B677C2 /* _FormatFlowedWriter.h */, + 1BFDB38C180B30DE00B677C2 /* _GoogleAccountSetupEnabler.h */, + 1BFDB38D180B30DE00B677C2 /* _IMAPClientSimulatedSelectOperation.h */, + 1BFDB38E180B30DE00B677C2 /* _IMAPFetchUnit.h */, + 1BFDB38F180B30DE00B677C2 /* _IMAPMailboxDeletionQueueEntry.h */, + 1BFDB390180B30DE00B677C2 /* _ISPLocalAccountSettingsManager.h */, + 1BFDB391180B30DE00B677C2 /* _ISPOnlineAccountSettingsManager.h */, + 1BFDB392180B30DE00B677C2 /* _LibraryStoreMessageConsumer.h */, + 1BFDB393180B30DE00B677C2 /* _LibraryThreadRequest.h */, + 1BFDB394180B30DE00B677C2 /* _LibSasl2SASLClient.h */, + 1BFDB395180B30DE00B677C2 /* _MailboxUidChildrenEnumerator.h */, + 1BFDB396180B30DE00B677C2 /* _MailboxUidEnumerator.h */, + 1BFDB397180B30DE00B677C2 /* _MatadorResultCollector.h */, + 1BFDB398180B30DE00B677C2 /* _MessageCollector.h */, + 1BFDB399180B30DE00B677C2 /* _MFAddressManagerCachedImageValue.h */, + 1BFDB39A180B30DE00B677C2 /* _MFConversationCalculationContext.h */, + 1BFDB39B180B30DE00B677C2 /* _MFFlagCheckInfo.h */, + 1BFDB39C180B30DE00B677C2 /* _MFInvocationOperation.h */, + 1BFDB39D180B30DE00B677C2 /* _MFMessageSortingValueColor.h */, + 1BFDB39E180B30DE00B677C2 /* _MFMessageSortingValueDateLastViewed.h */, + 1BFDB39F180B30DE00B677C2 /* _MFMessageSortingValueDateReceived.h */, + 1BFDB3A0180B30DE00B677C2 /* _MFMessageSortingValueDateSent.h */, + 1BFDB3A1180B30DE00B677C2 /* _MFMessageSortingValueLibraryID.h */, + 1BFDB3A2180B30DE00B677C2 /* _MFMessageSortingValueMailbox.h */, + 1BFDB3A3180B30DE00B677C2 /* _MFMessageSortingValueMessageFlags.h */, + 1BFDB3A4180B30DE00B677C2 /* _MFMessageSortingValueMessageSize.h */, + 1BFDB3A5180B30DE00B677C2 /* _MFMessageSortingValueNumberOfAttachments.h */, + 1BFDB3A6180B30DE00B677C2 /* _MFMessageSortingValueSender.h */, + 1BFDB3A7180B30DE00B677C2 /* _MFMessageSortingValueSenderOnline.h */, + 1BFDB3A8180B30DE00B677C2 /* _MFMessageSortingValueSubject.h */, + 1BFDB3A9180B30DE00B677C2 /* _MFMessageSortingValueTo.h */, + 1BFDB3AA180B30DE00B677C2 /* _MFMessageSortingValueUid.h */, + 1BFDB3AB180B30DE00B677C2 /* _MFRedundantTextIdentifierParseContext.h */, + 1BFDB3AC180B30DE00B677C2 /* _MFRedundantTextIdentifierSolutionContext.h */, + 1BFDB3AD180B30DE00B677C2 /* _MFRedundantTextIdentifierSolutionGenerator.h */, + 1BFDB3AE180B30DE00B677C2 /* _MFZipStream.h */, + 1BFDB3AF180B30DE00B677C2 /* _MFZombie_.h */, + 1BFDB3B0180B30DE00B677C2 /* _MimeEnrichedReader.h */, + 1BFDB3B1180B30DE00B677C2 /* _MimeEnrichedWriter.h */, + 1BFDB3B2180B30DE00B677C2 /* _MimePartEnumerator.h */, + 1BFDB3B3180B30DE00B677C2 /* _NonContentSmartMailboxUnreadCountManager.h */, + 1BFDB3B4180B30DE00B677C2 /* _NSDataMessageStoreMessage.h */, + 1BFDB3B5180B30DE00B677C2 /* _NSSocket.h */, + 1BFDB3B6180B30DE00B677C2 /* _OutgoingMessageBody.h */, + 1BFDB3B7180B30DE00B677C2 /* _ProgressHandlerMonitorContext.h */, + 1BFDB3B8180B30DE00B677C2 /* _RootlessMailboxUid.h */, + 1BFDB3B9180B30DE00B677C2 /* _SeenMessagesStore.h */, + 1BFDB3BA180B30DE00B677C2 /* _SetFlags.h */, + 1BFDB3BB180B30DE00B677C2 /* _SmartMailboxesEnumerator.h */, + 1BFDB3BC180B30DE00B677C2 /* _WriteSyncStateOperation.h */, + 1BFDB3BD180B30DE00B677C2 /* ABAddressBook-MessageAdditions.h */, + 1BFDB3BE180B30DE00B677C2 /* ABGroup-MessageAdditions.h */, + 1BFDB3BF180B30DE00B677C2 /* ABImageClient-Protocol.h */, + 1BFDB3C0180B30DE00B677C2 /* ABLDAP_ResultElement-MessageAdditions.h */, + 1BFDB3C1180B30DE00B677C2 /* ABMailRecent-MessageAdditions.h */, + 1BFDB3C2180B30DE00B677C2 /* ABPerson-MessageAdditions.h */, + 1BFDB3C3180B30DE00B677C2 /* ABRecord-MessageAdditions.h */, + 1BFDB3C4180B30DE00B677C2 /* Account.h */, + 1BFDB3C5180B30DE00B677C2 /* AccountAutoconfigurator.h */, + 1BFDB3C6180B30DE00B677C2 /* AccountSetupEnabler.h */, + 1BFDB3C7180B30DE00B677C2 /* AccountSetupValidator.h */, + 1BFDB3C8180B30DE00B677C2 /* AccountSetupValidatorAttempt.h */, + 1BFDB3C9180B30DE00B677C2 /* AccountStatus.h */, + 1BFDB3CA180B30DE00B677C2 /* ActivityAggregate.h */, + 1BFDB3CB180B30DE00B677C2 /* ActivityAggregator.h */, + 1BFDB3CC180B30DE00B677C2 /* ActivityMonitor.h */, + 1BFDB3CD180B30DE00B677C2 /* APOPAuthScheme.h */, + 1BFDB3CE180B30DE00B677C2 /* AppleTokenAuthScheme.h */, + 1BFDB3CF180B30DE00B677C2 /* ArchiveFileWrapper.h */, + 1BFDB3D0180B30DE00B677C2 /* AuthorTransporter.h */, + 1BFDB3D1180B30DE00B677C2 /* AuthScheme.h */, + 1BFDB3D2180B30DE00B677C2 /* BackupManager.h */, + 1BFDB3D3180B30DE00B677C2 /* BerkeleyMbox.h */, + 1BFDB3D4180B30DE00B677C2 /* BookmarksManager.h */, + 1BFDB3D5180B30DE00B677C2 /* ByteSet.h */, + 1BFDB3D6180B30DE00B677C2 /* CachingABRecord.h */, + 1BFDB3D7180B30DE00B677C2 /* CDStructures.h */, + 1BFDB3D8180B30DE00B677C2 /* ChangeMerger.h */, + 1BFDB3D9180B30DE00B677C2 /* Connection.h */, + 1BFDB3DA180B30DE00B677C2 /* ConnectionEnumerator.h */, + 1BFDB3DB180B30DE00B677C2 /* CRAM_MD5AuthScheme.h */, + 1BFDB3DC180B30DE00B677C2 /* Criterion.h */, + 1BFDB3DD180B30DE00B677C2 /* DatabaseRecoverer.h */, + 1BFDB3DE180B30DE00B677C2 /* DataScanner.h */, + 1BFDB3DF180B30DE00B677C2 /* Defaults.h */, + 1BFDB3E0180B30DE00B677C2 /* DeliveryAccount.h */, + 1BFDB3E1180B30DE00B677C2 /* DOMDocument-JunkAdditions.h */, + 1BFDB3E2180B30DE00B677C2 /* EnclosureTransporter.h */, + 1BFDB3E3180B30DE00B677C2 /* EntryTransporter.h */, + 1BFDB3E4180B30DE00B677C2 /* EWSAccount.h */, + 1BFDB3E5180B30DE00B677C2 /* EWSAutodiscoverBindingDelegate-Protocol.h */, + 1BFDB3E6180B30DE00B677C2 /* EWSAutodiscovery.h */, + 1BFDB3E7180B30DE00B677C2 /* EWSConnection.h */, + 1BFDB3E8180B30DE00B677C2 /* EWSCopyItemsRequestOperation.h */, + 1BFDB3E9180B30DE00B677C2 /* EWSCopyItemsResponseOperation.h */, + 1BFDB3EA180B30DE00B677C2 /* EWSCreateEventReplyRequestOperation.h */, + 1BFDB3EB180B30DE00B677C2 /* EWSCreateEventReplyResponseOperation.h */, + 1BFDB3EC180B30DE00B677C2 /* EWSCreateFolderRequestOperation.h */, + 1BFDB3ED180B30DE00B677C2 /* EWSCreateFolderResponseOperation.h */, + 1BFDB3EE180B30DE00B677C2 /* EWSCreateItemRequestOperation.h */, + 1BFDB3EF180B30DE00B677C2 /* EWSCreateItemResponseOperation.h */, + 1BFDB3F0180B30DE00B677C2 /* EWSCreateMessageRequestOperation.h */, + 1BFDB3F1180B30DE00B677C2 /* EWSDeleteFolderRequestOperation.h */, + 1BFDB3F2180B30DE00B677C2 /* EWSDeleteItemsRequestOperation.h */, + 1BFDB3F3180B30DE00B677C2 /* EWSDelivery.h */, + 1BFDB3F4180B30DE00B677C2 /* EWSDeliveryAccount.h */, + 1BFDB3F5180B30DE00B677C2 /* EWSErrorHandler-Protocol.h */, + 1BFDB3F6180B30DE00B677C2 /* EWSExchangeServiceBindingDelegate-Protocol.h */, + 1BFDB3F7180B30DE00B677C2 /* EWSFindItemsRequestOperation.h */, + 1BFDB3F8180B30DE00B677C2 /* EWSFindItemsResponseOperation.h */, + 1BFDB3F9180B30DE00B677C2 /* EWSGateway.h */, + 1BFDB3FA180B30DE00B677C2 /* EWSGetFolderRequestOperation.h */, + 1BFDB3FB180B30DE00B677C2 /* EWSGetFolderResponseOperation.h */, + 1BFDB3FC180B30DE00B677C2 /* EWSGetItemDataRequestOperation.h */, + 1BFDB3FD180B30DE00B677C2 /* EWSGetItemDataResponseOperation.h */, + 1BFDB3FE180B30DE00B677C2 /* EWSGetItemsRequestOperation.h */, + 1BFDB3FF180B30DE00B677C2 /* EWSGetItemsResponseOperation.h */, + 1BFDB400180B30DE00B677C2 /* EWSGetUserOofSettingsRequestOperation.h */, + 1BFDB401180B30DE00B677C2 /* EWSGetUserOofSettingsResponseOperation.h */, + 1BFDB402180B30DE00B677C2 /* EWSMessage.h */, + 1BFDB403180B30DE00B677C2 /* EWSMoveFolderRequestOperation.h */, + 1BFDB404180B30DE00B677C2 /* EWSOfflineGateway.h */, + 1BFDB405180B30DE00B677C2 /* EWSPathToExtendedFieldType-MessageAdditions.h */, + 1BFDB406180B30DE00B677C2 /* EWSRenameFolderRequestOperation.h */, + 1BFDB407180B30DE00B677C2 /* EWSRequestOperation.h */, + 1BFDB408180B30DE00B677C2 /* EWSResponseOperation.h */, + 1BFDB409180B30DE00B677C2 /* EWSSetUserOofSettingsRequestOperation.h */, + 1BFDB40A180B30DE00B677C2 /* EWSSetUserOofSettingsResponseOperation.h */, + 1BFDB40B180B30DE00B677C2 /* EWSSizeEngine.h */, + 1BFDB40C180B30DE00B677C2 /* EWSStore.h */, + 1BFDB40D180B30DE00B677C2 /* EWSSuppressReadReceiptsRequestOperation.h */, + 1BFDB40E180B30DE00B677C2 /* EWSSyncFolderHierarchyRequestOperation.h */, + 1BFDB40F180B30DE00B677C2 /* EWSSyncFolderHierarchyResponseOperation.h */, + 1BFDB410180B30DE00B677C2 /* EWSSyncFolderItemsRequestOperation.h */, + 1BFDB411180B30DE00B677C2 /* EWSSyncFolderItemsResponseMessageOperation.h */, + 1BFDB412180B30DE00B677C2 /* EWSUpdateItemRequestOperation.h */, + 1BFDB413180B30DE00B677C2 /* EWSUpdateItemSetFlagsRequestOperation.h */, + 1BFDB414180B30DE00B677C2 /* ExchangeAccount.h */, + 1BFDB415180B30DE00B677C2 /* ExchangeConnection.h */, + 1BFDB416180B30DE00B677C2 /* ExternalAuthScheme.h */, + 1BFDB417180B30DE00B677C2 /* FeedTransporter.h */, + 1BFDB418180B30DE00B677C2 /* GSSAPIAuthScheme.h */, + 1BFDB419180B30DE00B677C2 /* ImageJunkMetadata.h */, + 1BFDB41A180B30DE00B677C2 /* IMAPAccount.h */, + 1BFDB41B180B30DE00B677C2 /* IMAPAggregateClientOperation.h */, + 1BFDB41C180B30DE00B677C2 /* IMAPAggregateFetchUIDOperation.h */, + 1BFDB41D180B30DE00B677C2 /* IMAPAggregateGetQuotaRootOperation.h */, + 1BFDB41E180B30DE00B677C2 /* IMAPAggregateStatusOperation.h */, + 1BFDB41F180B30DE00B677C2 /* IMAPAttachmentsDownload.h */, + 1BFDB420180B30DE00B677C2 /* IMAPClientAppendOperation.h */, + 1BFDB421180B30DE00B677C2 /* IMAPClientAuthenticateOperation.h */, + 1BFDB422180B30DE00B677C2 /* IMAPClientCapabilityOperation.h */, + 1BFDB423180B30DE00B677C2 /* IMAPClientCheckOperation.h */, + 1BFDB424180B30DE00B677C2 /* IMAPClientCloseOperation.h */, + 1BFDB425180B30DE00B677C2 /* IMAPClientCreateOperation.h */, + 1BFDB426180B30DE00B677C2 /* IMAPClientData.h */, + 1BFDB427180B30DE00B677C2 /* IMAPClientDeleteOperation.h */, + 1BFDB428180B30DE00B677C2 /* IMAPClientDoneOperation.h */, + 1BFDB429180B30DE00B677C2 /* IMAPClientExamineOperation.h */, + 1BFDB42A180B30DE00B677C2 /* IMAPClientExpungeOperation.h */, + 1BFDB42B180B30DE00B677C2 /* IMAPClientFetchBodyDataItem.h */, + 1BFDB42C180B30DE00B677C2 /* IMAPClientFetchDataItem.h */, + 1BFDB42D180B30DE00B677C2 /* IMAPClientFetchOperation.h */, + 1BFDB42E180B30DE00B677C2 /* IMAPClientFetchUIDOperation.h */, + 1BFDB42F180B30DE00B677C2 /* IMAPClientGetQuotaOperation.h */, + 1BFDB430180B30DE00B677C2 /* IMAPClientGetQuotaRootOperation.h */, + 1BFDB431180B30DE00B677C2 /* IMAPClientIdleOperation.h */, + 1BFDB432180B30DE00B677C2 /* IMAPClientIDOperation.h */, + 1BFDB433180B30DE00B677C2 /* IMAPClientListOperation.h */, + 1BFDB434180B30DE00B677C2 /* IMAPClientLoginOperation.h */, + 1BFDB435180B30DE00B677C2 /* IMAPClientLogoutOperation.h */, + 1BFDB436180B30DE00B677C2 /* IMAPClientLSubOperation.h */, + 1BFDB437180B30DE00B677C2 /* IMAPClientMailboxOperation.h */, + 1BFDB438180B30DE00B677C2 /* IMAPClientNamespaceOperation.h */, + 1BFDB439180B30DE00B677C2 /* IMAPClientNoopOperation.h */, + 1BFDB43A180B30DE00B677C2 /* IMAPClientOperation.h */, + 1BFDB43B180B30DE00B677C2 /* IMAPClientOperationQueue.h */, + 1BFDB43C180B30DE00B677C2 /* IMAPClientRenameOperation.h */, + 1BFDB43D180B30DE00B677C2 /* IMAPClientSelectOperation.h */, + 1BFDB43E180B30DE00B677C2 /* IMAPClientStartTLSOperation.h */, + 1BFDB43F180B30DE00B677C2 /* IMAPClientStatusOperation.h */, + 1BFDB440180B30DE00B677C2 /* IMAPClientSubscribeOperation.h */, + 1BFDB441180B30DE00B677C2 /* IMAPClientSuspendOperation.h */, + 1BFDB442180B30DE00B677C2 /* IMAPClientUIDCopyOperation.h */, + 1BFDB443180B30DE00B677C2 /* IMAPClientUIDExpungeOperation.h */, + 1BFDB444180B30DE00B677C2 /* IMAPClientUIDOperation.h */, + 1BFDB445180B30DE00B677C2 /* IMAPClientUIDSearchOperation.h */, + 1BFDB446180B30DE00B677C2 /* IMAPClientUIDStoreOperation.h */, + 1BFDB447180B30DE00B677C2 /* IMAPClientUnselectOperation.h */, + 1BFDB448180B30DE00B677C2 /* IMAPClientUnsubscribeOperation.h */, + 1BFDB449180B30DE00B677C2 /* IMAPCommandPipeline.h */, + 1BFDB44A180B30DE00B677C2 /* IMAPCompoundDownload.h */, + 1BFDB44B180B30DE00B677C2 /* IMAPConnection.h */, + 1BFDB44C180B30DE00B677C2 /* IMAPConnectionPool.h */, + 1BFDB44D180B30DE00B677C2 /* IMAPDownload.h */, + 1BFDB44E180B30DE00B677C2 /* IMAPDownloadCache.h */, + 1BFDB44F180B30DE00B677C2 /* IMAPFetchResult.h */, + 1BFDB450180B30DE00B677C2 /* IMAPGateway.h */, + 1BFDB451180B30DE00B677C2 /* IMAPMailbox.h */, + 1BFDB452180B30DE00B677C2 /* IMAPMailboxDelegate-Protocol.h */, + 1BFDB453180B30DF00B677C2 /* IMAPMailboxSyncEngine.h */, + 1BFDB454180B30DF00B677C2 /* IMAPMessage.h */, + 1BFDB455180B30DF00B677C2 /* IMAPMessageDownload.h */, + 1BFDB456180B30DF00B677C2 /* IMAPMessageWithCache.h */, + 1BFDB457180B30DF00B677C2 /* IMAPObject-Protocol.h */, + 1BFDB458180B30DF00B677C2 /* IMAPOfflineCopyOnStupidServerOperation.h */, + 1BFDB459180B30DF00B677C2 /* IMAPOperation.h */, + 1BFDB45A180B30DF00B677C2 /* IMAPOperationCache.h */, + 1BFDB45B180B30DF00B677C2 /* IMAPQuotaRoot.h */, + 1BFDB45C180B30DF00B677C2 /* IMAPResponse.h */, + 1BFDB45D180B30DF00B677C2 /* IMAPResponseHandler-Protocol.h */, + 1BFDB45E180B30DF00B677C2 /* IMAPSimpleDownload.h */, + 1BFDB45F180B30DF00B677C2 /* IMAPSingleClientOperation.h */, + 1BFDB460180B30DF00B677C2 /* IMAPSizeEngine.h */, + 1BFDB461180B30DF00B677C2 /* InvocationQueue.h */, + 1BFDB462180B30DF00B677C2 /* ISPAccountSettingsManager.h */, + 1BFDB463180B30DF00B677C2 /* JunkMailFilter.h */, + 1BFDB464180B30DF00B677C2 /* JunkRecorder.h */, + 1BFDB465180B30DF00B677C2 /* Library.h */, + 1BFDB466180B30DF00B677C2 /* LibraryCalendarEvent.h */, + 1BFDB467180B30DF00B677C2 /* LibraryIMAPMessage.h */, + 1BFDB468180B30DF00B677C2 /* LibraryIMAPStore.h */, + 1BFDB469180B30DF00B677C2 /* LibraryInterface-Protocol.h */, + 1BFDB46A180B30DF00B677C2 /* LibraryMessage.h */, + 1BFDB46B180B30DF00B677C2 /* LibraryObject-Protocol.h */, + 1BFDB46C180B30DF00B677C2 /* LibraryQueries.h */, + 1BFDB46D180B30DF00B677C2 /* LibraryStore.h */, + 1BFDB46E180B30DF00B677C2 /* LibraryThread.h */, + 1BFDB46F180B30DF00B677C2 /* LibraryUpgrader.h */, + 1BFDB470180B30DF00B677C2 /* LocalAccount.h */, + 1BFDB471180B30DF00B677C2 /* LocationManager.h */, + 1BFDB472180B30DF00B677C2 /* MailAccount.h */, + 1BFDB473180B30DF00B677C2 /* MailboxUid.h */, + 1BFDB474180B30DF00B677C2 /* MailboxUidWrapper.h */, + 1BFDB475180B30DF00B677C2 /* MailDelivery.h */, + 1BFDB476180B30DF00B677C2 /* MailFileWrapper.h */, + 1BFDB477180B30DF00B677C2 /* MainThreadInvocationOperation.h */, + 1BFDB478180B30DF00B677C2 /* Matador.h */, + 1BFDB479180B30DF00B677C2 /* Message.h */, + 1BFDB47A180B30DF00B677C2 /* MessageAddressee.h */, + 1BFDB47B180B30DF00B677C2 /* MessageAttachment.h */, + 1BFDB47C180B30DF00B677C2 /* MessageAttachmentViewController.h */, + 1BFDB47D180B30DF00B677C2 /* MessageBody.h */, + 1BFDB47E180B30DF00B677C2 /* MessageConsumer-Protocol.h */, + 1BFDB47F180B30DF00B677C2 /* MessageCriterion.h */, + 1BFDB480180B30DF00B677C2 /* MessageDetails.h */, + 1BFDB481180B30DF00B677C2 /* MessageFlags.h */, + 1BFDB482180B30DF00B677C2 /* MessageHeaders.h */, + 1BFDB483180B30DF00B677C2 /* MessageHTMLConverter.h */, + 1BFDB484180B30DF00B677C2 /* MessageInvocation.h */, + 1BFDB485180B30DF00B677C2 /* MessageRouter.h */, + 1BFDB486180B30DF00B677C2 /* MessageRouterUtilities.h */, + 1BFDB487180B30DF00B677C2 /* MessageRule.h */, + 1BFDB488180B30DF00B677C2 /* MessageRuleCriterion.h */, + 1BFDB489180B30DF00B677C2 /* MessageSortingInformation.h */, + 1BFDB48A180B30DF00B677C2 /* MessageStore.h */, + 1BFDB48B180B30DF00B677C2 /* MessageStringRenderContext.h */, + 1BFDB48C180B30DF00B677C2 /* MessageStringUniquer.h */, + 1BFDB48D180B30DF00B677C2 /* MessageThread.h */, + 1BFDB48E180B30DF00B677C2 /* MessageTracer.h */, + 1BFDB48F180B30DF00B677C2 /* MessageURLProtocol.h */, + 1BFDB490180B30DF00B677C2 /* MessageWriter.h */, + 1BFDB491180B30DF00B677C2 /* MFAccountStorage.h */, + 1BFDB492180B30DF00B677C2 /* MFAddressManager.h */, + 1BFDB493180B30DF00B677C2 /* MFAosImapAccount.h */, + 1BFDB494180B30DF00B677C2 /* MFAosSmtpAccount.h */, + 1BFDB495180B30DF00B677C2 /* MFAssertionHandler.h */, + 1BFDB496180B30DF00B677C2 /* MFCachedMailboxInfo.h */, + 1BFDB497180B30DF00B677C2 /* MFChanging-Protocol.h */, + 1BFDB498180B30DF00B677C2 /* MFCrossProcessLock.h */, + 1BFDB499180B30DF00B677C2 /* MFError.h */, + 1BFDB49A180B30DF00B677C2 /* MFHTMLParser.h */, + 1BFDB49B180B30DF00B677C2 /* MFInstantOff.h */, + 1BFDB49C180B30DF00B677C2 /* MFKeychainManager.h */, + 1BFDB49D180B30DF00B677C2 /* MFLibraryIDWrapper.h */, + 1BFDB49E180B30DF00B677C2 /* MFMailMigrator.h */, + 1BFDB49F180B30DF00B677C2 /* MFMessageContext.h */, + 1BFDB4A0180B30DF00B677C2 /* MFMessageCounts.h */, + 1BFDB4A1180B30DF00B677C2 /* MFMessageFramework.h */, + 1BFDB4A2180B30DF00B677C2 /* MFMessageSortingInterface-Protocol.h */, + 1BFDB4A3180B30DF00B677C2 /* MFMessageSortingValue.h */, + 1BFDB4A4180B30DF00B677C2 /* MFMimeDecodeContext.h */, + 1BFDB4A5180B30DF00B677C2 /* MFQuoteParser.h */, + 1BFDB4A6180B30DF00B677C2 /* MFRedundantTextIdentifier.h */, + 1BFDB4A7180B30DF00B677C2 /* MFResultTaskOperation.h */, + 1BFDB4A8180B30DF00B677C2 /* MFTaskOperation.h */, + 1BFDB4A9180B30DF00B677C2 /* MFUIMailbox-Protocol.h */, + 1BFDB4AA180B30DF00B677C2 /* MFUUID.h */, + 1BFDB4AB180B30DF00B677C2 /* MFZombies.h */, + 1BFDB4AC180B30DF00B677C2 /* MimeBody.h */, + 1BFDB4AD180B30DF00B677C2 /* MimeCharset.h */, + 1BFDB4AE180B30DF00B677C2 /* MimePart.h */, + 1BFDB4AF180B30DF00B677C2 /* MimeTextAttachment.h */, + 1BFDB4B0180B30DF00B677C2 /* MonitoredInvocation.h */, + 1BFDB4B1180B30DF00B677C2 /* MonitoredOperation.h */, + 1BFDB4B2180B30DF00B677C2 /* MutableByteSet.h */, + 1BFDB4B3180B30DF00B677C2 /* MutableMessageHeaders.h */, + 1BFDB4B4180B30DF00B677C2 /* NetworkController.h */, + 1BFDB4B5180B30DF00B677C2 /* NetworkLocation.h */, + 1BFDB4B6180B30DF00B677C2 /* NeXTMbox.h */, + 1BFDB4B7180B30DF00B677C2 /* NSAlertDelegate-Protocol.h */, + 1BFDB4B8180B30DF00B677C2 /* NSAppleEventDescriptor-MessageRuleAdditions.h */, + 1BFDB4B9180B30DF00B677C2 /* NSAppleScript-MessageRuleAdditions.h */, + 1BFDB4BA180B30DF00B677C2 /* NSApplication-MFAssert.h */, + 1BFDB4BB180B30DF00B677C2 /* NSArray-AppleScriptConveniences.h */, + 1BFDB4BC180B30DF00B677C2 /* NSArray-DateComparisonForRecents.h */, + 1BFDB4BD180B30DF00B677C2 /* NSArray-DeepCopying.h */, + 1BFDB4BE180B30DF00B677C2 /* NSArray-DerivedArray.h */, + 1BFDB4BF180B30DF00B677C2 /* NSArray-EmailAddressArray.h */, + 1BFDB4C0180B30DF00B677C2 /* NSArray-MessagesFromMixedStoresConvenience.h */, + 1BFDB4C1180B30DF00B677C2 /* NSArray-removeSelf.h */, + 1BFDB4C2180B30DF00B677C2 /* NSAttributedString-find_attribute.h */, + 1BFDB4C3180B30DF00B677C2 /* NSAttributedString-FontAdditions.h */, + 1BFDB4C4180B30DF00B677C2 /* NSAttributedString-FormatFlowedSupport.h */, + 1BFDB4C5180B30DF00B677C2 /* NSAttributedString-MessageFrameworkAdditions.h */, + 1BFDB4C6180B30DF00B677C2 /* NSAttributedString-MessagePasteboardSupport.h */, + 1BFDB4C7180B30DF00B677C2 /* NSAttributedString-MimeEnrichedWriter.h */, + 1BFDB4C8180B30DF00B677C2 /* NSBundle-MessageFrameworkAdditions.h */, + 1BFDB4C9180B30DF00B677C2 /* NSCacheDelegate-Protocol.h */, + 1BFDB4CA180B30DF00B677C2 /* NSCharacterSet-NSCharacterSetUtils.h */, + 1BFDB4CB180B30DF00B677C2 /* NSCoder-MFMessageFlags.h */, + 1BFDB4CC180B30DF00B677C2 /* NSCoding-Protocol.h */, + 1BFDB4CD180B30DF00B677C2 /* NSColor-NSColorUtilities.h */, + 1BFDB4CE180B30DF00B677C2 /* NSConditionLock-MessageAdditions.h */, + 1BFDB4CF180B30DF00B677C2 /* NSCopying-Protocol.h */, + 1BFDB4D0180B30DF00B677C2 /* NSData-HFSDataConversion.h */, + 1BFDB4D1180B30DF00B677C2 /* NSData-MessageAdditions.h */, + 1BFDB4D2180B30DF00B677C2 /* NSData-MimeDataEncoding.h */, + 1BFDB4D3180B30DF00B677C2 /* NSData-UuEnDecode.h */, + 1BFDB4D4180B30DF00B677C2 /* NSDataMessageStore.h */, + 1BFDB4D5180B30DF00B677C2 /* NSDate-Goodies.h */, + 1BFDB4D6180B30DF00B677C2 /* NSDate-MessageAdditions.h */, + 1BFDB4D7180B30DF00B677C2 /* NSDate-toc_extension.h */, + 1BFDB4D8180B30DF00B677C2 /* NSDateFormatter-MessageAdditions.h */, + 1BFDB4D9180B30DF00B677C2 /* NSDictionary-Goodies.h */, + 1BFDB4DA180B30DF00B677C2 /* NSDictionary-MessageAdditions.h */, + 1BFDB4DB180B30DF00B677C2 /* NSDictionary-NSBundleExtras.h */, + 1BFDB4DC180B30DF00B677C2 /* NSError-MessageAdditions.h */, + 1BFDB4DD180B30DF00B677C2 /* NSError-POP3ConnectionExtensions.h */, + 1BFDB4DE180B30DF00B677C2 /* NSEvent-NSEventAdditions.h */, + 1BFDB4DF180B30DF00B677C2 /* NSFileHandle-MessageAdditions.h */, + 1BFDB4E0180B30DF00B677C2 /* NSFileManager-NSFileManagerAdditions.h */, + 1BFDB4E1180B30DF00B677C2 /* NSFileManagerDelegate-Protocol.h */, + 1BFDB4E2180B30DF00B677C2 /* NSFileWrapper-ArchivedData.h */, + 1BFDB4E3180B30DF00B677C2 /* NSFileWrapper-HFSDataConversion.h */, + 1BFDB4E4180B30DF00B677C2 /* NSFileWrapper-HFSExtensions.h */, + 1BFDB4E5180B30DF00B677C2 /* NSFileWrapper-iCalInvitationSupport.h */, + 1BFDB4E6180B30DF00B677C2 /* NSFileWrapper-PersistenceWithoutLosingMetadata.h */, + 1BFDB4E7180B30DF00B677C2 /* NSFileWrapper-UniquePaths.h */, + 1BFDB4E8180B30DF00B677C2 /* NSHashTable-MFLibraryIDWrapper.h */, + 1BFDB4E9180B30DF00B677C2 /* NSImage-ASBetterImageLookup.h */, + 1BFDB4EA180B30DF00B677C2 /* NSInvocation-MailExtensions.h */, + 1BFDB4EB180B30DF00B677C2 /* NSKeyedUnarchiver-Goodies.h */, + 1BFDB4EC180B30DF00B677C2 /* NSKeyedUnarchiverDelegate-Protocol.h */, + 1BFDB4ED180B30DF00B677C2 /* NSLock-MessageAdditions.h */, + 1BFDB4EE180B30DF00B677C2 /* NSLocking-Protocol.h */, + 1BFDB4EF180B30DF00B677C2 /* NSMachPortDelegate-Protocol.h */, + 1BFDB4F0180B30DF00B677C2 /* NSMapTable-MFLibraryIDWrapper.h */, + 1BFDB4F1180B30DF00B677C2 /* NSMutableArray-Convenience.h */, + 1BFDB4F2180B30DF00B677C2 /* NSMutableArray-SortedArrayExtensions.h */, + 1BFDB4F3180B30DF00B677C2 /* NSMutableAttributedString-MessageFrameworkAdditions.h */, + 1BFDB4F4180B30DF00B677C2 /* NSMutableCopying-Protocol.h */, + 1BFDB4F5180B30DF00B677C2 /* NSMutableData-MessageAdditions.h */, + 1BFDB4F6180B30DF00B677C2 /* NSMutableData-MimeDataEncoding.h */, + 1BFDB4F7180B30DF00B677C2 /* NSMutableData-RFC2231Support.h */, + 1BFDB4F8180B30DF00B677C2 /* NSMutableDictionary-Goodies.h */, + 1BFDB4F9180B30DF00B677C2 /* NSMutableDictionary-RFC2231Support.h */, + 1BFDB4FA180B30DF00B677C2 /* NSMutableSet-MessageAdditions.h */, + 1BFDB4FB180B30DF00B677C2 /* NSNotificationCenter-MainThreadPosting.h */, + 1BFDB4FC180B30DF00B677C2 /* NSNumber-Goodies.h */, + 1BFDB4FD180B30DF00B677C2 /* NSObject-_mf_LibraryMessageEquality.h */, + 1BFDB4FE180B30DF00B677C2 /* NSObject-MainThreadMessaging.h */, + 1BFDB4FF180B30DF00B677C2 /* NSObject-MFZombies.h */, + 1BFDB500180B30DF00B677C2 /* NSObject-Protocol.h */, + 1BFDB501180B30DF00B677C2 /* NSObject-StackTraceAdditions.h */, + 1BFDB502180B30DF00B677C2 /* NSObject-ThreadingAdditions.h */, + 1BFDB503180B30E000B677C2 /* NSOperationQueue-MFTaskOperation.h */, + 1BFDB504180B30E000B677C2 /* NSPersistentStoreCoordinator-MailAdditions.h */, + 1BFDB505180B30E000B677C2 /* NSPortDelegate-Protocol.h */, + 1BFDB506180B30E000B677C2 /* NSPortMessage-Goodies.h */, + 1BFDB507180B30E000B677C2 /* NSRunLoop-InternalMessageExtensions.h */, + 1BFDB508180B30E000B677C2 /* NSRunLoop-MessageExtensions.h */, + 1BFDB509180B30E000B677C2 /* NSScanner-NSScannerUtils.h */, + 1BFDB50A180B30E000B677C2 /* NSSet-MessageAdditions.h */, + 1BFDB50B180B30E000B677C2 /* NSSound-MessageAdditions.h */, + 1BFDB50C180B30E000B677C2 /* NSString-EmailAddressString.h */, + 1BFDB50D180B30E000B677C2 /* NSString-FormatFlowedSupport.h */, + 1BFDB50E180B30E000B677C2 /* NSString-iCalInvitationSupport.h */, + 1BFDB50F180B30E000B677C2 /* NSString-IMAPNameEncoding.h */, + 1BFDB510180B30E000B677C2 /* NSString-LibraryID.h */, + 1BFDB511180B30E000B677C2 /* NSString-MimeCharsetSupport.h */, + 1BFDB512180B30E000B677C2 /* NSString-MimeEnrichedReader.h */, + 1BFDB513180B30E000B677C2 /* NSString-NSStringUtils.h */, + 1BFDB514180B30E000B677C2 /* NSString-PathUtils.h */, + 1BFDB515180B30E000B677C2 /* NSString-RFC2047Support.h */, + 1BFDB516180B30E000B677C2 /* NSString-StationeryUtilities.h */, + 1BFDB517180B30E000B677C2 /* NSTextAttachment-iCalInvitationSupport.h */, + 1BFDB518180B30E000B677C2 /* NSTextAttachment-MimeSupport.h */, + 1BFDB519180B30E000B677C2 /* NSURL-Goodies.h */, + 1BFDB51A180B30E000B677C2 /* NSURLConnectionDelegate-Protocol.h */, + 1BFDB51B180B30E000B677C2 /* NSURLDownloadDelegate-Protocol.h */, + 1BFDB51C180B30E000B677C2 /* NSUserDefaults-MessageAdditions.h */, + 1BFDB51D180B30E000B677C2 /* NSXMLParserDelegate-Protocol.h */, + 1BFDB51E180B30E000B677C2 /* NTLMAuthScheme.h */, + 1BFDB51F180B30E000B677C2 /* OutgoingMessage.h */, + 1BFDB520180B30E000B677C2 /* ParentalControlAccount.h */, + 1BFDB521180B30E000B677C2 /* ParentalControlManager.h */, + 1BFDB522180B30E000B677C2 /* ParentalControlSettings.h */, + 1BFDB523180B30E000B677C2 /* ParentalControlStore.h */, + 1BFDB524180B30E000B677C2 /* ParsedMessage.h */, + 1BFDB525180B30E000B677C2 /* PerformanceLogger.h */, + 1BFDB526180B30E000B677C2 /* PerformanceLoggerTuple.h */, + 1BFDB527180B30E000B677C2 /* PlaceholderArchiveFileWrapper.h */, + 1BFDB528180B30E000B677C2 /* PlaceholderFileWrapper.h */, + 1BFDB529180B30E000B677C2 /* PlainAuthScheme.h */, + 1BFDB52A180B30E000B677C2 /* POP3Connection.h */, + 1BFDB52B180B30E000B677C2 /* POP3ConnectionDelegate-Protocol.h */, + 1BFDB52C180B30E000B677C2 /* POP3FetchStore.h */, + 1BFDB52D180B30E000B677C2 /* POPAccount.h */, + 1BFDB52E180B30E000B677C2 /* POPMessage.h */, + 1BFDB52F180B30E000B677C2 /* POPSizeEngine.h */, + 1BFDB530180B30E000B677C2 /* PreparedStatement.h */, + 1BFDB531180B30E000B677C2 /* QuotaUsage.h */, + 1BFDB532180B30E000B677C2 /* RecoveredMessage.h */, + 1BFDB533180B30E000B677C2 /* RecoveredStore.h */, + 1BFDB534180B30E000B677C2 /* RegularExpression.h */, + 1BFDB535180B30E000B677C2 /* RemoteMessage.h */, + 1BFDB536180B30E000B677C2 /* RemotePlaceholderFileWrapper.h */, + 1BFDB537180B30E000B677C2 /* RemoteStore.h */, + 1BFDB538180B30E000B677C2 /* RemoteStoreAccount.h */, + 1BFDB539180B30E000B677C2 /* RemoteStoreSizeEngine.h */, + 1BFDB53A180B30E000B677C2 /* RouterStore-Protocol.h */, + 1BFDB53B180B30E000B677C2 /* RSSAccount.h */, + 1BFDB53C180B30E000B677C2 /* RSSArticleDocument.h */, + 1BFDB53D180B30E000B677C2 /* RSSInterchange.h */, + 1BFDB53E180B30E000B677C2 /* RSSLibraryStore.h */, + 1BFDB53F180B30E000B677C2 /* SafariBookmarksLoader.h */, + 1BFDB540180B30E000B677C2 /* SafeBoolCache.h */, + 1BFDB541180B30E000B677C2 /* SafeObserver.h */, + 1BFDB542180B30E000B677C2 /* SafeValueCache.h */, + 1BFDB543180B30E000B677C2 /* SASLClient.h */, + 1BFDB544180B30E000B677C2 /* SeenMessage.h */, + 1BFDB545180B30E000B677C2 /* SeenMessagesManager.h */, + 1BFDB546180B30E000B677C2 /* SizeEngine.h */, + 1BFDB547180B30E000B677C2 /* SmartMailboxUnreadCountManager.h */, + 1BFDB548180B30E000B677C2 /* SMTPAccount.h */, + 1BFDB549180B30E000B677C2 /* SMTPConnection.h */, + 1BFDB54A180B30E000B677C2 /* SMTPDelivery.h */, + 1BFDB54B180B30E000B677C2 /* SnippetManager.h */, + 1BFDB54C180B30E000B677C2 /* SpecialMailboxUid.h */, + 1BFDB54D180B30E000B677C2 /* SqliteHandle.h */, + 1BFDB54E180B30E000B677C2 /* Subdata.h */, + 1BFDB54F180B30E000B677C2 /* SyncableApp-Protocol.h */, + 1BFDB550180B30E000B677C2 /* SyncableDataOwner-Protocol.h */, + 1BFDB551180B30E000B677C2 /* TableOfContents.h */, + 1BFDB552180B30E000B677C2 /* TextAttachmentWrappingMessageAttachment.h */, + 1BFDB553180B30E000B677C2 /* ThrowingInvocationOperation.h */, + 1BFDB554180B30E000B677C2 /* TOCMessage.h */, + 1BFDB555180B30E000B677C2 /* TransientBookmark.h */, + 1BFDB556180B30E000B677C2 /* TransientBookmarkFolder.h */, + 1BFDB557180B30E000B677C2 /* TransientBookmarkItem.h */, + 1BFDB558180B30E000B677C2 /* URLifier.h */, + 1BFDB559180B30E000B677C2 /* URLMatch.h */, + 1BFDB55A180B30E000B677C2 /* UsageCounter.h */, + 1BFDB55B180B30E000B677C2 /* WebArchive-Conversion.h */, + 1BFDB55C180B30E000B677C2 /* WebMessageDocument.h */, + 1BFDB55D180B30E000B677C2 /* WorkerThread.h */, + ); + path = Message; + sourceTree = ""; + }; + 1BFDB561180B30E000B677C2 /* Mavericks */ = { + isa = PBXGroup; + children = ( + 1BFDB562180B30E000B677C2 /* EmailAddressing */, + 1BFDB569180B30E000B677C2 /* MailCore */, + 1BFDB618180B30E100B677C2 /* MailUI */, + 1BFDB82B180B30E400B677C2 /* MailUIFW */, + ); + name = Mavericks; + path = Mavericks_10.9.5; + sourceTree = ""; + }; + 1BFDB562180B30E000B677C2 /* EmailAddressing */ = { + isa = PBXGroup; + children = ( + 1BFDB563180B30E000B677C2 /* CDStructures.h */, + 1BFDB564180B30E000B677C2 /* EAEmailAddressGenerator.h */, + 1BFDB565180B30E000B677C2 /* EAEmailAddressLists.h */, + 1BFDB566180B30E000B677C2 /* EAEmailAddressParser.h */, + 1BFDB567180B30E000B677C2 /* EANameParser.h */, + 1BFDB568180B30E000B677C2 /* EmailAddressingFramework.h */, + ); + path = EmailAddressing; + sourceTree = ""; + }; + 1BFDB569180B30E000B677C2 /* MailCore */ = { + isa = PBXGroup; + children = ( + 1BFDB56A180B30E000B677C2 /* _FormatFlowedWriter.h */, + 1BFDB56B180B30E000B677C2 /* _MCActivityAggregateArrayController.h */, + 1BFDB56C180B30E000B677C2 /* _MCActivityMonitorMultiTarget.h */, + 1BFDB56D180B30E000B677C2 /* _MCAppleTokenSaslClient.h */, + 1BFDB56E180B30E000B677C2 /* _MCCompositeImageRep.h */, + 1BFDB56F180B30E000B677C2 /* _MCConnectionAttempt.h */, + 1BFDB570180B30E000B677C2 /* _MCExternalSaslClient.h */, + 1BFDB571180B30E000B677C2 /* _MCInvocationOperation.h */, + 1BFDB572180B30E000B677C2 /* _MCISPLocalAccountSettingsManager.h */, + 1BFDB573180B30E000B677C2 /* _MCISPOnlineAccountSettingsManager.h */, + 1BFDB574180B30E000B677C2 /* _MCLibSasl2SaslClient.h */, + 1BFDB575180B30E000B677C2 /* _MCLogClient.h */, + 1BFDB576180B30E000B677C2 /* _MCMemoryMessage.h */, + 1BFDB577180B30E000B677C2 /* _MCMimeEnrichedReader.h */, + 1BFDB578180B30E000B677C2 /* _MCMimeEnrichedReaderCommandStackEntry.h */, + 1BFDB579180B30E000B677C2 /* _MCMimeEnrichedWriter.h */, + 1BFDB57A180B30E000B677C2 /* _MCMimeHeaderScanContext.h */, + 1BFDB57B180B30E000B677C2 /* _MCMimePartEnumerator.h */, + 1BFDB57C180B30E000B677C2 /* _MCOutgoingMessageBody.h */, + 1BFDB57D180B30E000B677C2 /* _MCPlainClientTokenSaslClient.h */, + 1BFDB57E180B30E000B677C2 /* _MCWebAuthenticationRequest.h */, + 1BFDB57F180B30E000B677C2 /* ABAddressBook-MailCoreAdditions.h */, + 1BFDB580180B30E000B677C2 /* ABAddressBook-MailCoreAdditionsInternal.h */, + 1BFDB581180B30E000B677C2 /* ABGroup-MailCoreAdditions.h */, + 1BFDB582180B30E000B677C2 /* ABMailRecent-MailCoreAdditions.h */, + 1BFDB583180B30E000B677C2 /* ABPerson-MailCoreAdditions.h */, + 1BFDB584180B30E000B677C2 /* ABRecord-MailCoreAdditions.h */, + 1BFDB585180B30E000B677C2 /* CDStructures.h */, + 1BFDB586180B30E000B677C2 /* EWSAutodiscoverBindingDelegate-Protocol.h */, + 1BFDB587180B30E000B677C2 /* IADataPluginDelegate-Protocol.h */, + 1BFDB588180B30E000B677C2 /* MailCoreFramework.h */, + 1BFDB589180B30E000B677C2 /* MCAccountAutoconfigurator.h */, + 1BFDB58A180B30E000B677C2 /* MCAccountSetupValidator.h */, + 1BFDB58B180B30E000B677C2 /* MCAccountSetupValidatorDelegate-Protocol.h */, + 1BFDB58C180B30E000B677C2 /* MCActivityAggregate.h */, + 1BFDB58D180B30E000B677C2 /* MCActivityAggregator.h */, + 1BFDB58E180B30E000B677C2 /* MCActivityMonitor.h */, + 1BFDB58F180B30E000B677C2 /* MCActivityTarget-Protocol.h */, + 1BFDB590180B30E000B677C2 /* MCAddressManager.h */, + 1BFDB591180B30E000B677C2 /* MCApopAuthScheme.h */, + 1BFDB592180B30E000B677C2 /* MCAppleTokenAuthScheme.h */, + 1BFDB593180B30E000B677C2 /* MCArchiveFileWrapper.h */, + 1BFDB594180B30E000B677C2 /* MCAssertionHandler.h */, + 1BFDB595180B30E000B677C2 /* MCAttachment.h */, + 1BFDB596180B30E000B677C2 /* MCAttachmentWrappingTextAttachment.h */, + 1BFDB597180B30E000B677C2 /* MCAuthScheme.h */, + 1BFDB598180B30E000B677C2 /* MCByteSet.h */, + 1BFDB599180B30E000B677C2 /* MCCIDURLProtocol.h */, + 1BFDB59A180B30E000B677C2 /* MCConnection.h */, + 1BFDB59B180B30E000B677C2 /* MCCramMD5AuthScheme.h */, + 1BFDB59C180B30E000B677C2 /* MCDataScanner.h */, + 1BFDB59D180B30E000B677C2 /* MCDateFormatterFactory.h */, + 1BFDB59E180B30E000B677C2 /* MCError.h */, + 1BFDB59F180B30E000B677C2 /* MCEWSAutodiscovery.h */, + 1BFDB5A0180B30E000B677C2 /* MCExternalAuthScheme.h */, + 1BFDB5A1180B30E000B677C2 /* MCFileTypeInfo.h */, + 1BFDB5A2180B30E000B677C2 /* MCGssapiAuthScheme.h */, + 1BFDB5A3180B30E000B677C2 /* MCIASetupViewController.h */, + 1BFDB5A4180B30E000B677C2 /* MCImageJunkMetadata.h */, + 1BFDB5A5180B30E000B677C2 /* MCInvocationQueue.h */, + 1BFDB5A6180B30E000B677C2 /* MCISPAccountSettingsManager.h */, + 1BFDB5A7180B30E000B677C2 /* MCJunkRecorder.h */, + 1BFDB5A8180B30E000B677C2 /* MCKeychainManager.h */, + 1BFDB5A9180B30E000B677C2 /* MCLargeAttachmentFileWrapper.h */, + 1BFDB5AA180B30E000B677C2 /* MCMainThreadInvocationOperation.h */, + 1BFDB5AB180B30E000B677C2 /* MCMemoryDataSource.h */, + 1BFDB5AC180B30E000B677C2 /* MCMessage.h */, + 1BFDB5AD180B30E000B677C2 /* MCMessageBody.h */, + 1BFDB5AE180B30E000B677C2 /* MCMessageDataSource-Protocol.h */, + 1BFDB5AF180B30E000B677C2 /* MCMessageGenerator.h */, + 1BFDB5B0180B30E000B677C2 /* MCMessageHeaders.h */, + 1BFDB5B1180B30E000B677C2 /* MCMessageSortingInterface-Protocol.h */, + 1BFDB5B2180B30E000B677C2 /* MCMessageTracer.h */, + 1BFDB5B3180B30E000B677C2 /* MCMessageURLProtocol.h */, + 1BFDB5B4180B30E000B677C2 /* MCMimeBody.h */, + 1BFDB5B5180B30E000B677C2 /* MCMimeCharset.h */, + 1BFDB5B6180B30E000B677C2 /* MCMimeDecodeContext.h */, + 1BFDB5B7180B30E000B677C2 /* MCMimePart.h */, + 1BFDB5B8180B30E000B677C2 /* MCMimeTextAttachment.h */, + 1BFDB5B9180B30E100B677C2 /* MCMonitoredInvocation.h */, + 1BFDB5BA180B30E100B677C2 /* MCMonitoredOperation.h */, + 1BFDB5BB180B30E100B677C2 /* MCMutableByteSet.h */, + 1BFDB5BC180B30E100B677C2 /* MCMutableMessageHeaders.h */, + 1BFDB5BD180B30E100B677C2 /* MCNetworkController.h */, + 1BFDB5BE180B30E100B677C2 /* MCNtlmAuthScheme.h */, + 1BFDB5BF180B30E100B677C2 /* MCOutgoingMessage.h */, + 1BFDB5C0180B30E100B677C2 /* MCParsedMessage.h */, + 1BFDB5C1180B30E100B677C2 /* MCPersistentIDFetching-Protocol.h */, + 1BFDB5C2180B30E100B677C2 /* MCPlaceholderArchiveFileWrapper.h */, + 1BFDB5C3180B30E100B677C2 /* MCPlaceholderFileWrapper.h */, + 1BFDB5C4180B30E100B677C2 /* MCPlainAuthScheme.h */, + 1BFDB5C5180B30E100B677C2 /* MCPortNumberFormatter.h */, + 1BFDB5C6180B30E100B677C2 /* MCPriorityInvocation.h */, + 1BFDB5C7180B30E100B677C2 /* MCQuotaUsage.h */, + 1BFDB5C8180B30E100B677C2 /* MCRemoteMessage.h */, + 1BFDB5C9180B30E100B677C2 /* MCRemotePlaceholderFileWrapper.h */, + 1BFDB5CA180B30E100B677C2 /* MCResultTaskOperation.h */, + 1BFDB5CB180B30E100B677C2 /* MCSafeBoolCache.h */, + 1BFDB5CC180B30E100B677C2 /* MCSafeValueCache.h */, + 1BFDB5CD180B30E100B677C2 /* MCSaslClient.h */, + 1BFDB5CE180B30E100B677C2 /* MCSAXHTMLParsing.h */, + 1BFDB5CF180B30E100B677C2 /* MCSharedPreferencesController.h */, + 1BFDB5D0180B30E100B677C2 /* MCSocket.h */, + 1BFDB5D1180B30E100B677C2 /* MCSSLCertificateTrustPanelManager.h */, + 1BFDB5D2180B30E100B677C2 /* MCStringRenderContext.h */, + 1BFDB5D3180B30E100B677C2 /* MCSubdata.h */, + 1BFDB5D4180B30E100B677C2 /* MCTaskOperation.h */, + 1BFDB5D5180B30E100B677C2 /* MCThrowingInvocationOperation.h */, + 1BFDB5D6180B30E100B677C2 /* MCURLifier.h */, + 1BFDB5D7180B30E100B677C2 /* MCURLMatch.h */, + 1BFDB5D8180B30E100B677C2 /* MCWebAuthenticationManager.h */, + 1BFDB5D9180B30E100B677C2 /* MCWorkerThread.h */, + 1BFDB5DA180B30E100B677C2 /* NSAlertDelegate-Protocol.h */, + 1BFDB5DB180B30E100B677C2 /* NSApplication-MCAssert.h */, + 1BFDB5DC180B30E100B677C2 /* NSArray-DateComparisonForRecents.h */, + 1BFDB5DD180B30E100B677C2 /* NSArray-DeepCopying.h */, + 1BFDB5DE180B30E100B677C2 /* NSArray-DerivedArray.h */, + 1BFDB5DF180B30E100B677C2 /* NSArray-MessagesFromMixedStoresConvenience.h */, + 1BFDB5E0180B30E100B677C2 /* NSArray-removeSelf.h */, + 1BFDB5E1180B30E100B677C2 /* NSAttributedString-FontAdditions.h */, + 1BFDB5E2180B30E100B677C2 /* NSAttributedString-MailCoreAdditions.h */, + 1BFDB5E3180B30E100B677C2 /* NSAttributedString-MCFormatFlowedSupport.h */, + 1BFDB5E4180B30E100B677C2 /* NSAttributedString-MCMimeEnrichedWriter.h */, + 1BFDB5E5180B30E100B677C2 /* NSAttributedString-MessagePasteboardSupport.h */, + 1BFDB5E6180B30E100B677C2 /* NSCharacterSet-MailCoreAdditions.h */, + 1BFDB5E7180B30E100B677C2 /* NSColor-MailCoreAdditions.h */, + 1BFDB5E8180B30E100B677C2 /* NSConditionLock-MailCoreAdditions.h */, + 1BFDB5E9180B30E100B677C2 /* NSCopying-Protocol.h */, + 1BFDB5EA180B30E100B677C2 /* NSData-HFSDataConversion.h */, + 1BFDB5EB180B30E100B677C2 /* NSData-MailCoreAdditions.h */, + 1BFDB5EC180B30E100B677C2 /* NSData-MCMimeDataEncoding.h */, + 1BFDB5ED180B30E100B677C2 /* NSData-MCUUEnDecode.h */, + 1BFDB5EE180B30E100B677C2 /* NSDate-MailCoreAdditions.h */, + 1BFDB5EF180B30E100B677C2 /* NSError-MailCoreAdditions.h */, + 1BFDB5F0180B30E100B677C2 /* NSFileHandle-MailCoreAdditions.h */, + 1BFDB5F1180B30E100B677C2 /* NSFileManager-MailCoreAdditions.h */, + 1BFDB5F2180B30E100B677C2 /* NSFileWrapper-ArchivedData.h */, + 1BFDB5F3180B30E100B677C2 /* NSFileWrapper-HFSDataConversion.h */, + 1BFDB5F4180B30E100B677C2 /* NSFileWrapper-iCalInvitationSupport.h */, + 1BFDB5F5180B30E100B677C2 /* NSFileWrapper-MailCoreAdditions.h */, + 1BFDB5F6180B30E100B677C2 /* NSFileWrapper-PersistenceWithoutLosingMetadata.h */, + 1BFDB5F7180B30E100B677C2 /* NSImage-CompositeImageAdditions.h */, + 1BFDB5F8180B30E100B677C2 /* NSImage-MailCoreAdditions.h */, + 1BFDB5F9180B30E100B677C2 /* NSInvocation-MailCoreAdditions.h */, + 1BFDB5FA180B30E100B677C2 /* NSLock-MailCoreAdditions.h */, + 1BFDB5FB180B30E100B677C2 /* NSMachPortDelegate-Protocol.h */, + 1BFDB5FC180B30E100B677C2 /* NSMutableArray-Convenience.h */, + 1BFDB5FD180B30E100B677C2 /* NSMutableArray-SortedArrayExtensions.h */, + 1BFDB5FE180B30E100B677C2 /* NSMutableAttributedString-MailCoreAdditions.h */, + 1BFDB5FF180B30E100B677C2 /* NSMutableCopying-Protocol.h */, + 1BFDB600180B30E100B677C2 /* NSMutableData-MailCoreAdditions.h */, + 1BFDB601180B30E100B677C2 /* NSMutableData-MCMimeDataEncoding.h */, + 1BFDB602180B30E100B677C2 /* NSMutableData-RFC2231Support.h */, + 1BFDB603180B30E100B677C2 /* NSMutableDictionary-MailCoreAdditions.h */, + 1BFDB604180B30E100B677C2 /* NSMutableDictionary-RFC2231Support.h */, + 1BFDB605180B30E100B677C2 /* NSMutableSet-MailCoreAdditions.h */, + 1BFDB606180B30E100B677C2 /* NSNumber-MailCoreAdditions.h */, + 1BFDB607180B30E100B677C2 /* NSObject-Protocol.h */, + 1BFDB608180B30E100B677C2 /* NSOperationQueue-MCTaskOperation.h */, + 1BFDB609180B30E100B677C2 /* NSPortDelegate-Protocol.h */, + 1BFDB60A180B30E100B677C2 /* NSRunLoop-InternalMailCoreAdditions.h */, + 1BFDB60B180B30E100B677C2 /* NSRunLoop-MailCoreAdditions.h */, + 1BFDB60C180B30E100B677C2 /* NSScanner-MailCoreAdditions.h */, + 1BFDB60D180B30E100B677C2 /* NSSet-MailCoreAdditions.h */, + 1BFDB60E180B30E100B677C2 /* NSStreamDelegate-Protocol.h */, + 1BFDB60F180B30E100B677C2 /* NSString-MailCoreAdditions.h */, + 1BFDB610180B30E100B677C2 /* NSString-MCFormatFlowedSupport.h */, + 1BFDB611180B30E100B677C2 /* NSString-MCMimeCharsetSupport.h */, + 1BFDB612180B30E100B677C2 /* NSString-MCMimeEnrichedReader.h */, + 1BFDB613180B30E100B677C2 /* NSString-RFC2047Support.h */, + 1BFDB614180B30E100B677C2 /* NSString-StationeryUtilities.h */, + 1BFDB615180B30E100B677C2 /* NSTextAttachment-MCMimeSupport.h */, + 1BFDB616180B30E100B677C2 /* NSURLDownloadDelegate-Protocol.h */, + 1BFDB617180B30E100B677C2 /* NSXMLParserDelegate-Protocol.h */, + ); + path = MailCore; + sourceTree = ""; + }; + 1BFDB618180B30E100B677C2 /* MailUI */ = { + isa = PBXGroup; + children = ( + 1BFDB619180B30E100B677C2 /* _AccountDisplayCell.h */, + 1BFDB61A180B30E100B677C2 /* _AllSignaturesAccount.h */, + 1BFDB61B180B30E100B677C2 /* _AttachmentQueueEntry.h */, + 1BFDB61C180B30E100B677C2 /* _BorderlessButton.h */, + 1BFDB61D180B30E100B677C2 /* _CellFindStore.h */, + 1BFDB61E180B30E100B677C2 /* _ComposeAttachmentEnumerator.h */, + 1BFDB61F180B30E100B677C2 /* _ConversationFindMatch.h */, + 1BFDB620180B30E100B677C2 /* _DeleteMailboxTransfer.h */, + 1BFDB621180B30E100B677C2 /* _EmptyFavoritesMessageView.h */, + 1BFDB622180B30E100B677C2 /* _ExportJob.h */, + 1BFDB623180B30E100B677C2 /* _FavoriteButtonCell.h */, + 1BFDB624180B30E100B677C2 /* _FilteredListInfo.h */, + 1BFDB625180B30E100B677C2 /* _IMAPMailboxEntry.h */, + 1BFDB626180B30E100B677C2 /* _MailboxPlaceholder.h */, + 1BFDB627180B30E100B677C2 /* _MailInspectorBarSeparatorView.h */, + 1BFDB628180B30E100B677C2 /* _MailNSFontManager.h */, + 1BFDB629180B30E100B677C2 /* _MailTableHeaderView.h */, + 1BFDB62A180B30E100B677C2 /* _MailToolbarSpace.h */, + 1BFDB62B180B30E100B677C2 /* _MessageThreadingData.h */, + 1BFDB62C180B30E100B677C2 /* _MessageViewerLazyPopUpButtonCell.h */, + 1BFDB62D180B30E100B677C2 /* _MouseTracker.h */, + 1BFDB62E180B30E100B677C2 /* _MTMAccountMailbox.h */, + 1BFDB62F180B30E100B677C2 /* _MTMArchiveMailbox.h */, + 1BFDB630180B30E100B677C2 /* _MTMBackupMailbox.h */, + 1BFDB631180B30E100B677C2 /* _MTMDisabledSubMetaMailbox.h */, + 1BFDB632180B30E100B677C2 /* _MTMDraftsMailbox.h */, + 1BFDB633180B30E100B677C2 /* _MTMHeaderCell.h */, + 1BFDB634180B30E100B677C2 /* _MTMInboxMailbox.h */, + 1BFDB635180B30E100B677C2 /* _MTMJunkMailbox.h */, + 1BFDB636180B30E100B677C2 /* _MTMMetaMailbox.h */, + 1BFDB637180B30E100B677C2 /* _MTMRootMailbox.h */, + 1BFDB638180B30E100B677C2 /* _MTMSectionMailbox.h */, + 1BFDB639180B30E100B677C2 /* _MTMSentMailbox.h */, + 1BFDB63A180B30E100B677C2 /* _MTMSmartMailbox.h */, + 1BFDB63B180B30E100B677C2 /* _MTMStoredMetaMailbox.h */, + 1BFDB63C180B30E100B677C2 /* _MTMStoredSubMetaMailbox.h */, + 1BFDB63D180B30E100B677C2 /* _MTMSubMetaMailbox.h */, + 1BFDB63E180B30E100B677C2 /* _MTMTrashMailbox.h */, + 1BFDB63F180B30E100B677C2 /* _MVAlertInfo.h */, + 1BFDB640180B30E100B677C2 /* _RoundedRectTextFieldCell.h */, + 1BFDB641180B30E100B677C2 /* _SidebarButton.h */, + 1BFDB642180B30E100B677C2 /* _SidebarButtonCell.h */, + 1BFDB643180B30E100B677C2 /* _SlidingView.h */, + 1BFDB644180B30E100B677C2 /* _SortBarButton.h */, + 1BFDB645180B30E100B677C2 /* _SortBarButtonCell.h */, + 1BFDB646180B30E100B677C2 /* _StationeryThumbnailCreator.h */, + 1BFDB647180B30E100B677C2 /* _TextButtonCell.h */, + 1BFDB648180B30E100B677C2 /* _ThreadDisclosureTextFieldCell.h */, + 1BFDB649180B30E100B677C2 /* _TransferOperation.h */, + 1BFDB64A180B30E100B677C2 /* _VisibleStateObject.h */, + 1BFDB64B180B30E100B677C2 /* AccountCell.h */, + 1BFDB64C180B30E100B677C2 /* AccountDetails.h */, + 1BFDB64D180B30E100B677C2 /* AccountInfo.h */, + 1BFDB64E180B30E100B677C2 /* AccountInfoTabOwner-Protocol.h */, + 1BFDB64F180B30E100B677C2 /* AccountPreferences.h */, + 1BFDB650180B30E100B677C2 /* AccountSetupManager.h */, + 1BFDB651180B30E100B677C2 /* AccountStatusDataSource.h */, + 1BFDB652180B30E100B677C2 /* AccountStatusDataSourceDelegate-Protocol.h */, + 1BFDB653180B30E100B677C2 /* AccountSummary.h */, + 1BFDB654180B30E100B677C2 /* ActivityAggregateView.h */, + 1BFDB655180B30E100B677C2 /* ActivityProgressPanel.h */, + 1BFDB656180B30E100B677C2 /* ActivityViewController.h */, + 1BFDB657180B30E100B677C2 /* ActivityViewEntry.h */, + 1BFDB658180B30E100B677C2 /* ActivityViewer.h */, + 1BFDB659180B30E100B677C2 /* ActivityViewerMailSound.h */, + 1BFDB65A180B30E100B677C2 /* AddressHistoryController.h */, + 1BFDB65B180B30E100B677C2 /* AddressPicker.h */, + 1BFDB65C180B30E100B677C2 /* AppleScriptPopUpButton.h */, + 1BFDB65D180B30E100B677C2 /* Assistant.h */, + 1BFDB65E180B30E100B677C2 /* AssistantDelegate-Protocol.h */, + 1BFDB65F180B30E100B677C2 /* AssistantManager.h */, + 1BFDB660180B30E100B677C2 /* AttachmentDragSession.h */, + 1BFDB661180B30E100B677C2 /* AttachmentLoader.h */, + 1BFDB662180B30E100B677C2 /* AttachmentManager.h */, + 1BFDB663180B30E100B677C2 /* AuthSchemeBindingProxy.h */, + 1BFDB664180B30E100B677C2 /* AuthSchemeValueTransformer.h */, + 1BFDB665180B30E100B677C2 /* BannerBackgroundView.h */, + 1BFDB666180B30E100B677C2 /* BannerContainerViewController.h */, + 1BFDB667180B30E100B677C2 /* BannerImageView.h */, + 1BFDB668180B30E100B677C2 /* BannerTextFieldCell.h */, + 1BFDB669180B30E100B677C2 /* BannerViewController.h */, + 1BFDB66A180B30E100B677C2 /* BindingsEnabledMenu.h */, + 1BFDB66B180B30E100B677C2 /* BlockedWebPluginView.h */, + 1BFDB66C180B30E100B677C2 /* BorderlessToolbarItem.h */, + 1BFDB66D180B30E100B677C2 /* BusyStatusErrorWindowDelegate.h */, + 1BFDB66E180B30E100B677C2 /* ButtonIconTextCell.h */, + 1BFDB66F180B30E100B677C2 /* CALayer-MailCALayerAdditions.h */, + 1BFDB670180B30E100B677C2 /* CalendarBannerIconCreator.h */, + 1BFDB671180B30E100B677C2 /* CalendarBannerViewController.h */, + 1BFDB672180B30E100B677C2 /* CDStructures.h */, + 1BFDB673180B30E100B677C2 /* CertificateBannerViewController.h */, + 1BFDB674180B30E100B677C2 /* ChildBannerViewController.h */, + 1BFDB675180B30E100B677C2 /* ClippedItemsIndicator.h */, + 1BFDB676180B30E100B677C2 /* ClippedItemsIndicatorDelegate-Protocol.h */, + 1BFDB677180B30E100B677C2 /* ColorBackgroundView.h */, + 1BFDB678180B30E100B677C2 /* ComposeBackEnd.h */, + 1BFDB679180B30E100B677C2 /* ComposeBackEnd_Scripting.h */, + 1BFDB67A180B30E100B677C2 /* ComposeHeaderView.h */, + 1BFDB67B180B30E100B677C2 /* ComposeSpellChecker.h */, + 1BFDB67C180B30E100B677C2 /* ComposeStatusView.h */, + 1BFDB67D180B30E100B677C2 /* ComposeView.h */, + 1BFDB67E180B30E100B677C2 /* ComposeViewController.h */, + 1BFDB67F180B30E100B677C2 /* ComposeViewControllerDelegate-Protocol.h */, + 1BFDB680180B30E100B677C2 /* ComposeWindow.h */, + 1BFDB681180B30E100B677C2 /* ComposeWindowController.h */, + 1BFDB682180B30E100B677C2 /* ComposingPreferences.h */, + 1BFDB683180B30E100B677C2 /* ConnectionDoctor.h */, + 1BFDB684180B30E100B677C2 /* ContentSplitViewController.h */, + 1BFDB685180B30E100B677C2 /* Conversation.h */, + 1BFDB686180B30E100B677C2 /* ConversationCellView.h */, + 1BFDB687180B30E100B677C2 /* ConversationHeightStorage.h */, + 1BFDB688180B30E100B677C2 /* ConversationMember.h */, + 1BFDB689180B30E100B677C2 /* ConversationMemberArrayController.h */, + 1BFDB68A180B30E100B677C2 /* ConversationsObserver.h */, + 1BFDB68B180B30E100B677C2 /* ConversationView.h */, + 1BFDB68C180B30E100B677C2 /* ConversationViewController.h */, + 1BFDB68D180B30E100B677C2 /* ConversationViewDelegate-Protocol.h */, + 1BFDB68E180B30E100B677C2 /* ConversationViewFindController.h */, + 1BFDB68F180B30E100B677C2 /* CriteriaUIHelper.h */, + 1BFDB690180B30E100B677C2 /* CriterionView.h */, + 1BFDB691180B30E100B677C2 /* DateCell.h */, + 1BFDB692180B30E100B677C2 /* DefaultApplicationPopUpButton.h */, + 1BFDB693180B30E100B677C2 /* DeletingTableView.h */, + 1BFDB694180B30E100B677C2 /* DeliveryFailure.h */, + 1BFDB695180B30E100B677C2 /* DeliveryQueue.h */, + 1BFDB696180B30E100B677C2 /* DockCountController.h */, + 1BFDB697180B30E100B677C2 /* DocumentEditor.h */, + 1BFDB698180B30E100B677C2 /* DocumentEditor_Scripting.h */, + 1BFDB699180B30E100B677C2 /* DOMCharacterData-MailExtras.h */, + 1BFDB69A180B30E100B677C2 /* DOMCSSValue-MailExtras.h */, + 1BFDB69B180B30E100B677C2 /* DOMDocument-MailExtras.h */, + 1BFDB69C180B30E100B677C2 /* DOMDocumentFragment-MailExtras.h */, + 1BFDB69D180B30E100B677C2 /* DOMElement-MailExtras.h */, + 1BFDB69E180B30E100B677C2 /* DOMElement-MailHTMLAttachments.h */, + 1BFDB69F180B30E100B677C2 /* DOMEventListener-Protocol.h */, + 1BFDB6A0180B30E100B677C2 /* DOMHTMLDocument-MailExtras.h */, + 1BFDB6A1180B30E100B677C2 /* DOMHTMLElement-MailExtras.h */, + 1BFDB6A2180B30E100B677C2 /* DOMHTMLElement-MailQuoteLevel.h */, + 1BFDB6A3180B30E100B677C2 /* DOMHTMLImageElement-MailHTMLAttachments.h */, + 1BFDB6A4180B30E100B677C2 /* DOMHTMLObjectElement-AttachmentLocator.h */, + 1BFDB6A5180B30E100B677C2 /* DOMNode-MailExtras.h */, + 1BFDB6A6180B30E100B677C2 /* DOMNode-MailHTMLAttachments.h */, + 1BFDB6A7180B30E100B677C2 /* DOMRange-MailExtras.h */, + 1BFDB6A8180B30E100B677C2 /* DynamicErrorWindowController.h */, + 1BFDB6A9180B30E100B677C2 /* DynamicErrorWindowDelegate-Protocol.h */, + 1BFDB6AA180B30E100B677C2 /* EditableWebMessageDocument.h */, + 1BFDB6AB180B30E100B677C2 /* EditingMessageWebView.h */, + 1BFDB6AC180B30E100B677C2 /* EditingMessageWebViewDelegate-Protocol.h */, + 1BFDB6AD180B30E100B677C2 /* EditingWebMessageController.h */, + 1BFDB6AE180B30E100B677C2 /* EmailImporter.h */, + 1BFDB6AF180B30E100B677C2 /* EudoraEmailImporter.h */, + 1BFDB6B0180B30E100B677C2 /* EWSAccountDetails.h */, + 1BFDB6B1180B30E100B677C2 /* EWSAccountSpecialMailboxes.h */, + 1BFDB6B2180B30E100B677C2 /* EWSQuota.h */, + 1BFDB6B3180B30E100B677C2 /* ExtractAddressCommand.h */, + 1BFDB6B4180B30E100B677C2 /* ExtractNameCommand.h */, + 1BFDB6B5180B30E100B677C2 /* FauxUIElement.h */, + 1BFDB6B6180B30E100B677C2 /* FavoriteButton.h */, + 1BFDB6B7180B30E100B677C2 /* FavoriteButtonMailboxProperties.h */, + 1BFDB6B8180B30E100B677C2 /* FavoriteMenuScrollHoverView.h */, + 1BFDB6B9180B30E100B677C2 /* FavoritesBarView.h */, + 1BFDB6BA180B30E100B677C2 /* FavoritesMenuController.h */, + 1BFDB6BB180B30E100B677C2 /* FavoritesMenuDelegateProtocol-Protocol.h */, + 1BFDB6BC180B30E100B677C2 /* FavoritesMenuItem.h */, + 1BFDB6BD180B30E100B677C2 /* FavoritesMenuItemRowView.h */, + 1BFDB6BE180B30E100B677C2 /* FavoritesMenuOutlineView.h */, + 1BFDB6BF180B30E100B677C2 /* FeedbackCollector.h */, + 1BFDB6C0180B30E100B677C2 /* FilesystemEmailImporter.h */, + 1BFDB6C1180B30E100B677C2 /* FindBarContainer.h */, + 1BFDB6C2180B30E100B677C2 /* FlagButtonImageView.h */, + 1BFDB6C3180B30E100B677C2 /* FlaggedStatusToolbarItem.h */, + 1BFDB6C4180B30E100B677C2 /* FlaggedStatusToolbarItemDelegate-Protocol.h */, + 1BFDB6C5180B30E100B677C2 /* FlaggedStatusView.h */, + 1BFDB6C6180B30E100B677C2 /* FlagsMenuItemView.h */, + 1BFDB6C7180B30E100B677C2 /* FlatTableView.h */, + 1BFDB6C8180B30E100B677C2 /* FlatTableViewDataCell.h */, + 1BFDB6C9180B30E100B677C2 /* FlippedView.h */, + 1BFDB6CA180B30E100B677C2 /* FontPreferenceContainerView.h */, + 1BFDB6CB180B30E100B677C2 /* FontsAndColorsPreferences.h */, + 1BFDB6CC180B30E100B677C2 /* FullScreenModalCapableWindow.h */, + 1BFDB6CD180B30E100B677C2 /* FullScreenWindowController.h */, + 1BFDB6CE180B30E100B677C2 /* GeneralPreferences.h */, + 1BFDB6CF180B30E100B677C2 /* GenericAttachmentFetcher.h */, + 1BFDB6D0180B30E100B677C2 /* GlassButton.h */, + 1BFDB6D1180B30E100B677C2 /* GlassButtonCell.h */, + 1BFDB6D2180B30E100B677C2 /* HeaderButton.h */, + 1BFDB6D3180B30E100B677C2 /* HeaderButtonCell.h */, + 1BFDB6D4180B30E100B677C2 /* HeaderLayoutManager.h */, + 1BFDB6D5180B30E100B677C2 /* HeaderLayoutManagerDelegate-Protocol.h */, + 1BFDB6D6180B30E100B677C2 /* HeadersEditor.h */, + 1BFDB6D7180B30E100B677C2 /* HeaderTextContainer.h */, + 1BFDB6D8180B30E100B677C2 /* HeaderTextView.h */, + 1BFDB6D9180B30E100B677C2 /* HeaderTruncationAttachmentCell.h */, + 1BFDB6DA180B30E100B677C2 /* HeaderView.h */, + 1BFDB6DB180B30E100B677C2 /* HeaderViewController.h */, + 1BFDB6DC180B30E100B677C2 /* HyperlinkEditor.h */, + 1BFDB6DD180B30E100B677C2 /* ImageResizer.h */, + 1BFDB6DE180B30E100B677C2 /* ImageResizerDelegate-Protocol.h */, + 1BFDB6DF180B30E100B677C2 /* IMAPAccountDetails.h */, + 1BFDB6E0180B30E100B677C2 /* IMAPAccountSpecialMailboxes.h */, + 1BFDB6E1180B30E100B677C2 /* IMAPMailboxes.h */, + 1BFDB6E2180B30E100B677C2 /* IMAPQuota.h */, + 1BFDB6E3180B30E100B677C2 /* IMAPUserAgent-Protocol.h */, + 1BFDB6E4180B30E100B677C2 /* ImportAssistant.h */, + 1BFDB6E5180B30E100B677C2 /* Importer.h */, + 1BFDB6E6180B30E100B677C2 /* ImportItem.h */, + 1BFDB6E7180B30E100B677C2 /* InvitationAttachmentOpener.h */, + 1BFDB6E8180B30E100B677C2 /* IOErrorWindowDelegate.h */, + 1BFDB6E9180B30E100B677C2 /* JunkMailBannerViewController.h */, + 1BFDB6EA180B30E100B677C2 /* JunkPreferences.h */, + 1BFDB6EB180B30E100B677C2 /* LazyMenuSegmentedCell.h */, + 1BFDB6EC180B30E100B677C2 /* LazySubmenuMenuItem.h */, + 1BFDB6ED180B30E100B677C2 /* LDAPServer.h */, + 1BFDB6EE180B30E100B677C2 /* LibraryImportAssistant.h */, + 1BFDB6EF180B30E100B677C2 /* LibraryUpgradeAssistant.h */, + 1BFDB6F0180B30E100B677C2 /* LoadImagesBannerViewController.h */, + 1BFDB6F1180B30E100B677C2 /* LoadingOverlay.h */, + 1BFDB6F2180B30E100B677C2 /* MailAddressDelegate.h */, + 1BFDB6F3180B30E100B677C2 /* MailAnimatingButton.h */, + 1BFDB6F4180B30E100B677C2 /* MailApp.h */, + 1BFDB6F5180B30E100B677C2 /* MailBarContainerButton.h */, + 1BFDB6F6180B30E100B677C2 /* MailBarContainerButtonCell.h */, + 1BFDB6F7180B30E100B677C2 /* MailBarContainerView.h */, + 1BFDB6F8180B30E100B677C2 /* MailboxBadgeCell.h */, + 1BFDB6F9180B30E100B677C2 /* MailboxBadgeView.h */, + 1BFDB6FA180B30E100B677C2 /* MailboxesChooser.h */, + 1BFDB6FB180B30E100B677C2 /* MailboxesController.h */, + 1BFDB6FC180B30E100B677C2 /* MailboxesOutlineView.h */, + 1BFDB6FD180B30E100B677C2 /* MailboxesOutlineViewController.h */, + 1BFDB6FE180B30E100B677C2 /* MailboxesOutlineViewControllerDelegate-Protocol.h */, + 1BFDB6FF180B30E200B677C2 /* MailboxesOutlineViewDelegate-Protocol.h */, + 1BFDB700180B30E200B677C2 /* MailboxesOutlineViewStateStorage.h */, + 1BFDB701180B30E200B677C2 /* MailboxesScrollView.h */, + 1BFDB702180B30E200B677C2 /* MailboxesSplitViewController.h */, + 1BFDB703180B30E200B677C2 /* MailboxIndicatorCell.h */, + 1BFDB704180B30E200B677C2 /* MailboxIndicatorView.h */, + 1BFDB705180B30E200B677C2 /* MailboxOutlineItemController.h */, + 1BFDB706180B30E200B677C2 /* MailboxOutlineItemControllerDelegate-Protocol.h */, + 1BFDB707180B30E200B677C2 /* MailboxOutlineItemView.h */, + 1BFDB708180B30E200B677C2 /* MailboxOutlineItemViewDelegate-Protocol.h */, + 1BFDB709180B30E200B677C2 /* MailboxOutlineRowView.h */, + 1BFDB70A180B30E200B677C2 /* MailboxPaneBottomShadowView.h */, + 1BFDB70B180B30E200B677C2 /* MailboxTextField.h */, + 1BFDB70C180B30E200B677C2 /* MailboxTextFieldDelegate-Protocol.h */, + 1BFDB70D180B30E200B677C2 /* MailCopyCommand.h */, + 1BFDB70E180B30E200B677C2 /* MailDeleteCommand.h */, + 1BFDB70F180B30E200B677C2 /* MailEmailImporter.h */, + 1BFDB710180B30E200B677C2 /* MailFullScreenWindowDelegate-Protocol.h */, + 1BFDB711180B30E200B677C2 /* MailInspectorBar.h */, + 1BFDB712180B30E200B677C2 /* MailInspectorBarItemController.h */, + 1BFDB713180B30E200B677C2 /* MailMoveCommand.h */, + 1BFDB714180B30E200B677C2 /* MailPopoverWell.h */, + 1BFDB715180B30E200B677C2 /* MailPreferences.h */, + 1BFDB716180B30E200B677C2 /* MailScroller.h */, + 1BFDB717180B30E200B677C2 /* MailSearchCriteriaHelper.h */, + 1BFDB718180B30E200B677C2 /* MailSearchScopeView.h */, + 1BFDB719180B30E200B677C2 /* MailSplitView.h */, + 1BFDB71A180B30E200B677C2 /* MailStackViewController.h */, + 1BFDB71B180B30E200B677C2 /* MailStackViewDragController.h */, + 1BFDB71C180B30E200B677C2 /* MailTableView.h */, + 1BFDB71D180B30E200B677C2 /* MailTableViewDelegateDelegate-Protocol.h */, + 1BFDB71E180B30E200B677C2 /* MailTimeMachineController.h */, + 1BFDB71F180B30E200B677C2 /* MailToCommand.h */, + 1BFDB720180B30E200B677C2 /* MailToolbar.h */, + 1BFDB721180B30E200B677C2 /* MailToolbarBaselineView.h */, + 1BFDB722180B30E200B677C2 /* MailToolbarSpaceItemWithPin.h */, + 1BFDB723180B30E200B677C2 /* MailUsageStatistics.h */, + 1BFDB724180B30E200B677C2 /* MailWebAttachment.h */, + 1BFDB725180B30E200B677C2 /* MailWebViewEditor.h */, + 1BFDB726180B30E200B677C2 /* MailWindowShadowLayer.h */, + 1BFDB727180B30E200B677C2 /* MboxEmailImporter.h */, + 1BFDB728180B30E200B677C2 /* MCActivityTarget-Protocol.h */, + 1BFDB729180B30E200B677C2 /* MCConnectionLogging-Protocol.h */, + 1BFDB72A180B30E200B677C2 /* MCMessage-MailViewerAdditions.h */, + 1BFDB72B180B30E200B677C2 /* MCMessageDataSource-Protocol.h */, + 1BFDB72C180B30E200B677C2 /* MCUserAgent-Protocol.h */, + 1BFDB72D180B30E200B677C2 /* MessageBodyScroller.h */, + 1BFDB72E180B30E200B677C2 /* MessageDeletionTransfer-Protocol.h */, + 1BFDB72F180B30E200B677C2 /* MessageDraft.h */, + 1BFDB730180B30E200B677C2 /* MessageDragHelper.h */, + 1BFDB731180B30E200B677C2 /* MessageEditor.h */, + 1BFDB732180B30E200B677C2 /* MessageListCell.h */, + 1BFDB733180B30E200B677C2 /* MessageListColumnManager.h */, + 1BFDB734180B30E200B677C2 /* MessageListContainerView.h */, + 1BFDB735180B30E200B677C2 /* MessageListHeaderCell.h */, + 1BFDB736180B30E200B677C2 /* MessageMall-Protocol.h */, + 1BFDB737180B30E200B677C2 /* MessageMegaMall.h */, + 1BFDB738180B30E200B677C2 /* MessageMiniMall.h */, + 1BFDB739180B30E200B677C2 /* MessageSaver.h */, + 1BFDB73A180B30E200B677C2 /* MessageSegmentedCell.h */, + 1BFDB73B180B30E200B677C2 /* MessageSegmentedControl.h */, + 1BFDB73C180B30E200B677C2 /* MessageSelection.h */, + 1BFDB73D180B30E200B677C2 /* MessageTextView.h */, + 1BFDB73E180B30E200B677C2 /* MessageTransfer.h */, + 1BFDB73F180B30E200B677C2 /* MessageTransferDelegate-Protocol.h */, + 1BFDB740180B30E200B677C2 /* MessageView.h */, + 1BFDB741180B30E200B677C2 /* MessageViewController.h */, + 1BFDB742180B30E200B677C2 /* MessageViewer.h */, + 1BFDB743180B30E200B677C2 /* MessageViewerLazyPopUpButton.h */, + 1BFDB744180B30E200B677C2 /* MessageViewerSearchField.h */, + 1BFDB745180B30E200B677C2 /* MessageViewerSearchFieldFocusDelegate-Protocol.h */, + 1BFDB746180B30E200B677C2 /* MessageWebDocumentView.h */, + 1BFDB747180B30E200B677C2 /* MessageWebDocumentViewGroupManager.h */, + 1BFDB748180B30E200B677C2 /* MessageWebHTMLView.h */, + 1BFDB749180B30E200B677C2 /* MessageWebView.h */, + 1BFDB74A180B30E200B677C2 /* MFAccount-MailUIExtras.h */, + 1BFDB74B180B30E200B677C2 /* MFAddProgressMonitor-Protocol.h */, + 1BFDB74C180B30E200B677C2 /* MFDeliveryAccount-MailUIExtras.h */, + 1BFDB74D180B30E200B677C2 /* MFEWSAccount-MailUIExtras.h */, + 1BFDB74E180B30E200B677C2 /* MFLibraryUpgraderDelegate-Protocol.h */, + 1BFDB74F180B30E200B677C2 /* MFMailbox-MessageListAdditions.h */, + 1BFDB750180B30E200B677C2 /* MFMessageSortContext-Protocol.h */, + 1BFDB751180B30E200B677C2 /* MFMessageSortingValueDelegate-Protocol.h */, + 1BFDB752180B30E200B677C2 /* MFUIMailbox-Protocol.h */, + 1BFDB753180B30E200B677C2 /* MFUserAgent-Protocol.h */, + 1BFDB754180B30E200B677C2 /* MFWebMessageDocument-Attachments.h */, + 1BFDB755180B30E200B677C2 /* ModalDimmingWindow.h */, + 1BFDB756180B30E200B677C2 /* MouseTrackingWindow.h */, + 1BFDB757180B30E200B677C2 /* MTMBufferedController.h */, + 1BFDB758180B30E200B677C2 /* MTMBytesFormatter.h */, + 1BFDB759180B30E200B677C2 /* MTMDiskMessage.h */, + 1BFDB75A180B30E200B677C2 /* MTMFakeMailbox.h */, + 1BFDB75B180B30E200B677C2 /* MTMFakeMessage.h */, + 1BFDB75C180B30E200B677C2 /* MTMFlagsCell.h */, + 1BFDB75D180B30E200B677C2 /* MTMFullWindowController.h */, + 1BFDB75E180B30E200B677C2 /* MTMIndexedMessage.h */, + 1BFDB75F180B30E200B677C2 /* MTMLoadingView.h */, + 1BFDB760180B30E200B677C2 /* MTMMailbox.h */, + 1BFDB761180B30E200B677C2 /* MTMMailboxChangedPredicate.h */, + 1BFDB762180B30E200B677C2 /* MTMMailboxControllerProtocol-Protocol.h */, + 1BFDB763180B30E200B677C2 /* MTMMailboxFetcher.h */, + 1BFDB764180B30E200B677C2 /* MTMMessage.h */, + 1BFDB765180B30E200B677C2 /* MTMMessageChangedPredicate.h */, + 1BFDB766180B30E200B677C2 /* MTMMessageColumnController.h */, + 1BFDB767180B30E200B677C2 /* MTMNumberCell.h */, + 1BFDB768180B30E200B677C2 /* MTMOutlineCell.h */, + 1BFDB769180B30E200B677C2 /* MTMOutlineTopLevelCell.h */, + 1BFDB76A180B30E200B677C2 /* MTMOutlineView.h */, + 1BFDB76B180B30E200B677C2 /* MTMReadCell.h */, + 1BFDB76C180B30E200B677C2 /* MTMScroller.h */, + 1BFDB76D180B30E200B677C2 /* MTMSpecialMailbox.h */, + 1BFDB76E180B30E200B677C2 /* MTMTableView.h */, + 1BFDB76F180B30E200B677C2 /* MTMWindow.h */, + 1BFDB770180B30E200B677C2 /* MTMWindowController.h */, + 1BFDB771180B30E200B677C2 /* MUITokenAddressDelegate-Protocol.h */, + 1BFDB772180B30E200B677C2 /* MultiImageCell.h */, + 1BFDB773180B30E200B677C2 /* MVComposeAccessoryViewOwner.h */, + 1BFDB774180B30E200B677C2 /* MVLinkButton.h */, + 1BFDB775180B30E200B677C2 /* MVMailboxSelectionOwner-Protocol.h */, + 1BFDB776180B30E200B677C2 /* MVMailBundle.h */, + 1BFDB777180B30E200B677C2 /* MVSelectionOwner-Protocol.h */, + 1BFDB778180B30E200B677C2 /* MVTerminationHandler-Protocol.h */, + 1BFDB779180B30E200B677C2 /* NetscapeEmailImporter.h */, + 1BFDB77A180B30E200B677C2 /* NewDeliveryFailure.h */, + 1BFDB77B180B30E200B677C2 /* NoSelectionPlaceholderView.h */, + 1BFDB77C180B30E200B677C2 /* NSAlert-MFErrorSupport.h */, + 1BFDB77D180B30E200B677C2 /* NSAnimationDelegate-Protocol.h */, + 1BFDB77E180B30E200B677C2 /* NSApplicationDelegate-Protocol.h */, + 1BFDB77F180B30E200B677C2 /* NSAttributedString-MailAttributedStringToHTML.h */, + 1BFDB780180B30E200B677C2 /* NSCoding-Protocol.h */, + 1BFDB781180B30E200B677C2 /* NSControl-MailAdditions.h */, + 1BFDB782180B30E200B677C2 /* NSControlTextEditingDelegate-Protocol.h */, + 1BFDB783180B30E200B677C2 /* NSCopying-Protocol.h */, + 1BFDB784180B30E200B677C2 /* NSDatePickerCellDelegate-Protocol.h */, + 1BFDB785180B30E200B677C2 /* NSEvent-MailAdditions.h */, + 1BFDB786180B30E200B677C2 /* NSEvent-MailViewerEvent.h */, + 1BFDB787180B30E200B677C2 /* NSFileManagerDelegate-Protocol.h */, + 1BFDB788180B30E200B677C2 /* NSFont-MailAdditions.h */, + 1BFDB789180B30E200B677C2 /* NSFontManager-ToReplaceWithOurOwn.h */, + 1BFDB78A180B30E200B677C2 /* NSInspectorBarClient-Protocol.h */, + 1BFDB78B180B30E200B677C2 /* NSInspectorBarDelegate-Protocol.h */, + 1BFDB78C180B30E200B677C2 /* NSInspectorBarItemController-Protocol.h */, + 1BFDB78D180B30E200B677C2 /* NSLayoutManagerDelegate-Protocol.h */, + 1BFDB78E180B30E200B677C2 /* NSMediaLibraryBrowserController-MailAdditions.h */, + 1BFDB78F180B30E200B677C2 /* NSMenuDelegate-Protocol.h */, + 1BFDB790180B30E200B677C2 /* NSNib-MailSharedNibLoading.h */, + 1BFDB791180B30E200B677C2 /* NSObject-Protocol.h */, + 1BFDB792180B30E200B677C2 /* NSOpenSavePanelDelegate-Protocol.h */, + 1BFDB793180B30E200B677C2 /* NSOutlineView-MailAdditions.h */, + 1BFDB794180B30E200B677C2 /* NSOutlineViewDataSource-Protocol.h */, + 1BFDB795180B30E200B677C2 /* NSOutlineViewDelegate-Protocol.h */, + 1BFDB796180B30E200B677C2 /* NSPopUpButton-MailAdditions.h */, + 1BFDB797180B30E200B677C2 /* NSPreferences-ActiveModule.h */, + 1BFDB798180B30E200B677C2 /* NSPreferencesModule-ActiveModule.h */, + 1BFDB799180B30E200B677C2 /* NSScrollViewDelegate-Protocol.h */, + 1BFDB79A180B30E200B677C2 /* NSSharingServiceDelegate-Protocol.h */, + 1BFDB79B180B30E200B677C2 /* NSSharingServicePickerDelegate-Protocol.h */, + 1BFDB79C180B30E200B677C2 /* NSSpeechSynthesizerDelegate-Protocol.h */, + 1BFDB79D180B30E200B677C2 /* NSSpellChecker-AllocationOverride.h */, + 1BFDB79E180B30E200B677C2 /* NSSplitViewDelegate-Protocol.h */, + 1BFDB79F180B30E200B677C2 /* NSString-HTMLConversion.h */, + 1BFDB7A0180B30E200B677C2 /* NSString-MailAdditions.h */, + 1BFDB7A1180B30E200B677C2 /* NSTableViewDataSource-Protocol.h */, + 1BFDB7A2180B30E300B677C2 /* NSTableViewDelegate-Protocol.h */, + 1BFDB7A3180B30E300B677C2 /* NSTabViewDelegate-Protocol.h */, + 1BFDB7A4180B30E300B677C2 /* NSTextDelegate-Protocol.h */, + 1BFDB7A5180B30E300B677C2 /* NSTextFieldDelegate-Protocol.h */, + 1BFDB7A6180B30E300B677C2 /* NSTextFinderAsynchronousDocumentFindMatch-Protocol.h */, + 1BFDB7A7180B30E300B677C2 /* NSTextFinderBarContainer-Protocol.h */, + 1BFDB7A8180B30E300B677C2 /* NSTextFinderClient-Protocol.h */, + 1BFDB7A9180B30E300B677C2 /* NSTextInput-Protocol.h */, + 1BFDB7AA180B30E300B677C2 /* NSTextInputClient-Protocol.h */, + 1BFDB7AB180B30E300B677C2 /* NSTextStorageDelegate-Protocol.h */, + 1BFDB7AC180B30E300B677C2 /* NSTextViewDelegate-Protocol.h */, + 1BFDB7AD180B30E300B677C2 /* NSTokenAttachmentDelegate-Protocol.h */, + 1BFDB7AE180B30E300B677C2 /* NSToolbar-MailAdditions.h */, + 1BFDB7AF180B30E300B677C2 /* NSToolbarDelegate-Protocol.h */, + 1BFDB7B0180B30E300B677C2 /* NSUserDefaults-FontAdditions.h */, + 1BFDB7B1180B30E300B677C2 /* NSUserInterfaceValidations-Protocol.h */, + 1BFDB7B2180B30E300B677C2 /* NSUserNotificationCenterDelegate-Protocol.h */, + 1BFDB7B3180B30E300B677C2 /* NSView-AttachmentDragSession.h */, + 1BFDB7B4180B30E300B677C2 /* NSView-FavoriteButtonAnimation.h */, + 1BFDB7B5180B30E300B677C2 /* NSView-LocatingFrameViews.h */, + 1BFDB7B6180B30E300B677C2 /* NSView-MailAdditions.h */, + 1BFDB7B7180B30E300B677C2 /* NSView-MailQuickLookAdditions.h */, + 1BFDB7B8180B30E300B677C2 /* NSView-MailToolbarBaselineView.h */, + 1BFDB7B9180B30E300B677C2 /* NSView-ResizingAnimation.h */, + 1BFDB7BA180B30E300B677C2 /* NSView-SlidingExtras.h */, + 1BFDB7BB180B30E300B677C2 /* NSWindow-BetterDescription.h */, + 1BFDB7BC180B30E300B677C2 /* NSWindow-MailWindowAdditions.h */, + 1BFDB7BD180B30E300B677C2 /* NSWindowDelegate-Protocol.h */, + 1BFDB7BE180B30E300B677C2 /* OofPanelController.h */, + 1BFDB7BF180B30E300B677C2 /* OptionalView.h */, + 1BFDB7C0180B30E300B677C2 /* OutlineViewProgressIndicatorsController.h */, + 1BFDB7C1180B30E300B677C2 /* ParentBannerViewController.h */, + 1BFDB7C2180B30E300B677C2 /* PassbookBannerViewController.h */, + 1BFDB7C3180B30E300B677C2 /* PasswordManager.h */, + 1BFDB7C4180B30E300B677C2 /* PhotoExporter.h */, + 1BFDB7C5180B30E300B677C2 /* POPAccountDetails.h */, + 1BFDB7C6180B30E300B677C2 /* POPAccountSpecialMailboxes.h */, + 1BFDB7C7180B30E300B677C2 /* POPQuota.h */, + 1BFDB7C8180B30E300B677C2 /* PowerManager.h */, + 1BFDB7C9180B30E300B677C2 /* PrintingHTMLGenerator.h */, + 1BFDB7CA180B30E300B677C2 /* PrintingHTMLPrinter.h */, + 1BFDB7CB180B30E300B677C2 /* PrintingManager.h */, + 1BFDB7CC180B30E300B677C2 /* PrintingManagerForExportAsPDF.h */, + 1BFDB7CD180B30E300B677C2 /* PrintingManagerForPrinting.h */, + 1BFDB7CE180B30E300B677C2 /* PrintingProgressPanelWindowController.h */, + 1BFDB7CF180B30E300B677C2 /* ProgressIndicatorCell.h */, + 1BFDB7D0180B30E300B677C2 /* QLPreviewPanelDataSource-Protocol.h */, + 1BFDB7D1180B30E300B677C2 /* QLPreviewPanelDelegate-Protocol.h */, + 1BFDB7D2180B30E300B677C2 /* QLSeamlessOpenerDelegate-Protocol.h */, + 1BFDB7D3180B30E300B677C2 /* QuickTimeAttachmentView.h */, + 1BFDB7D4180B30E300B677C2 /* Quota.h */, + 1BFDB7D5180B30E300B677C2 /* QuotaBar.h */, + 1BFDB7D6180B30E300B677C2 /* RedundantContentIdentificationManager.h */, + 1BFDB7D7180B30E300B677C2 /* RemoteStoreAccountSpecialMailboxes.h */, + 1BFDB7D8180B30E300B677C2 /* RemoteStoreQuota.h */, + 1BFDB7D9180B30E300B677C2 /* RichMessageListSortView.h */, + 1BFDB7DA180B30E300B677C2 /* RichMessageListSortViewProtocol-Protocol.h */, + 1BFDB7DB180B30E300B677C2 /* RichTableCellView.h */, + 1BFDB7DC180B30E300B677C2 /* RichTableRowView.h */, + 1BFDB7DD180B30E300B677C2 /* RolloverButtonCell.h */, + 1BFDB7DE180B30E300B677C2 /* RoundedCornersView.h */, + 1BFDB7DF180B30E300B677C2 /* RoundedRectTextField.h */, + 1BFDB7E0180B30E300B677C2 /* RulesPreferences.h */, + 1BFDB7E1180B30E300B677C2 /* ScriptableMessageTextStorage.h */, + 1BFDB7E2180B30E300B677C2 /* SearchScopeDelegate-Protocol.h */, + 1BFDB7E3180B30E300B677C2 /* SegmentedToolbarItem.h */, + 1BFDB7E4180B30E300B677C2 /* SegmentedToolbarItemSegmentedCell.h */, + 1BFDB7E5180B30E300B677C2 /* SegmentedToolbarItemSegmentItem.h */, + 1BFDB7E6180B30E300B677C2 /* SelfAnimatingProgressIndicator.h */, + 1BFDB7E7180B30E300B677C2 /* SenderPhotoView.h */, + 1BFDB7E8180B30E300B677C2 /* SGTSearchFieldQueryScopeDelegate-Protocol.h */, + 1BFDB7E9180B30E300B677C2 /* Signature.h */, + 1BFDB7EA180B30E300B677C2 /* SignatureBundle.h */, + 1BFDB7EB180B30E300B677C2 /* SignaturePreferences.h */, + 1BFDB7EC180B30E300B677C2 /* SingleMessageViewer.h */, + 1BFDB7ED180B30E300B677C2 /* SlidingAnimation.h */, + 1BFDB7EE180B30E300B677C2 /* SlidingAnimationDelegate-Protocol.h */, + 1BFDB7EF180B30E300B677C2 /* SlidingViewsBar.h */, + 1BFDB7F0180B30E300B677C2 /* SmartMailboxEditor.h */, + 1BFDB7F1180B30E300B677C2 /* SMTPSettings.h */, + 1BFDB7F2180B30E300B677C2 /* SortByMenuDelegate.h */, + 1BFDB7F3180B30E300B677C2 /* SoundPopUpButton.h */, + 1BFDB7F4180B30E300B677C2 /* SoundPopUpButtonDelegate-Protocol.h */, + 1BFDB7F5180B30E300B677C2 /* SourceListBackgroundView.h */, + 1BFDB7F6180B30E300B677C2 /* SpecialMailboxes.h */, + 1BFDB7F7180B30E300B677C2 /* StackContainerView.h */, + 1BFDB7F8180B30E300B677C2 /* StackController.h */, + 1BFDB7F9180B30E300B677C2 /* StackDataSource-Protocol.h */, + 1BFDB7FA180B30E300B677C2 /* StackDelegate-Protocol.h */, + 1BFDB7FB180B30E300B677C2 /* StackElement.h */, + 1BFDB7FC180B30E300B677C2 /* StackElementDelegate-Protocol.h */, + 1BFDB7FD180B30E300B677C2 /* StackRevealGroup.h */, + 1BFDB7FE180B30E300B677C2 /* StackRevealGroupDelegate-Protocol.h */, + 1BFDB7FF180B30E300B677C2 /* StarFieldController.h */, + 1BFDB800180B30E300B677C2 /* StartupManager.h */, + 1BFDB801180B30E300B677C2 /* Stationery.h */, + 1BFDB802180B30E300B677C2 /* StationeryCompositeImage.h */, + 1BFDB803180B30E300B677C2 /* StationeryCompositeImageMask.h */, + 1BFDB804180B30E300B677C2 /* StationeryController.h */, + 1BFDB805180B30E300B677C2 /* StationeryDynamicElement.h */, + 1BFDB806180B30E300B677C2 /* StationeryLoader.h */, + 1BFDB807180B30E300B677C2 /* StationerySelector.h */, + 1BFDB808180B30E300B677C2 /* StatusCell.h */, + 1BFDB809180B30E300B677C2 /* SubjectFormatter.h */, + 1BFDB80A180B30E300B677C2 /* TableHeaderView.h */, + 1BFDB80B180B30E300B677C2 /* TableViewManager.h */, + 1BFDB80C180B30E300B677C2 /* TemporaryAttachmentOpener.h */, + 1BFDB80D180B30E300B677C2 /* TemporaryItemManager.h */, + 1BFDB80E180B30E300B677C2 /* TextButtonToolbarItem.h */, + 1BFDB80F180B30E300B677C2 /* TextMessageDisplay.h */, + 1BFDB810180B30E300B677C2 /* ThreadDisclosureTextField.h */, + 1BFDB811180B30E300B677C2 /* ThumbnailButtonCell.h */, + 1BFDB812180B30E300B677C2 /* ThumbnailMatrix.h */, + 1BFDB813180B30E300B677C2 /* ThunderbirdEmailImporter.h */, + 1BFDB814180B30E300B677C2 /* TilingWebView.h */, + 1BFDB815180B30E300B677C2 /* TransparentImageView.h */, + 1BFDB816180B30E300B677C2 /* TypeAheadWindow.h */, + 1BFDB817180B30E300B677C2 /* UnfoldAnimationController.h */, + 1BFDB818180B30E300B677C2 /* UserNotificationCenterController.h */, + 1BFDB819180B30E400B677C2 /* UserScriptGenerator.h */, + 1BFDB81A180B30E400B677C2 /* UserStyleSheetGenerator.h */, + 1BFDB81B180B30E400B677C2 /* VerticallyCenteredTextFieldCell.h */, + 1BFDB81C180B30E400B677C2 /* ViewerPreferences.h */, + 1BFDB81D180B30E400B677C2 /* ViewingPaneView.h */, + 1BFDB81E180B30E400B677C2 /* ViewingPaneViewController.h */, + 1BFDB81F180B30E400B677C2 /* ViewTextAttachmentCell.h */, + 1BFDB820180B30E400B677C2 /* WebComposeMessageContents.h */, + 1BFDB821180B30E400B677C2 /* WebDocumentGenerator.h */, + 1BFDB822180B30E400B677C2 /* WebFrame-SizingExtras.h */, + 1BFDB823180B30E400B677C2 /* WebHTMLView-MailAdditions.h */, + 1BFDB824180B30E400B677C2 /* WebHTMLView-ToReplaceViewWithOurOwn.h */, + 1BFDB825180B30E400B677C2 /* WebMessageController.h */, + 1BFDB826180B30E400B677C2 /* WebPreferences-MessageDefaultsSupport.h */, + 1BFDB827180B30E400B677C2 /* WebView-MailExtras.h */, + 1BFDB828180B30E400B677C2 /* WebViewEditor.h */, + 1BFDB829180B30E400B677C2 /* WebViewLoadOperation.h */, + 1BFDB82A180B30E400B677C2 /* WindowTransformAnimation.h */, + ); + path = MailUI; + sourceTree = ""; + }; + 1BFDB82B180B30E400B677C2 /* MailUIFW */ = { + isa = PBXGroup; + children = ( + 1BFDB82C180B30E400B677C2 /* _MUIAddContactsButton.h */, + 1BFDB82D180B30E400B677C2 /* _MUIJSNotificationCenterObserverRegistration.h */, + 1BFDB82E180B30E400B677C2 /* _MUISnapshotView.h */, + 1BFDB82F180B30E400B677C2 /* _MUIWebAttachmentIconPrintingDataProvider.h */, + 1BFDB830180B30E400B677C2 /* _MUIWebFindMatch.h */, + 1BFDB831180B30E400B677C2 /* CDStructures.h */, + 1BFDB832180B30E400B677C2 /* CNAutocompleteFetchDelegate-Protocol.h */, + 1BFDB833180B30E400B677C2 /* CNContactPickerDelegate-Protocol.h */, + 1BFDB834180B30E400B677C2 /* MCCIDURLProtocolDataProvider-Protocol.h */, + 1BFDB835180B30E400B677C2 /* MUIAddressField.h */, + 1BFDB836180B30E400B677C2 /* MUIAddressFieldScrollDocumentView.h */, + 1BFDB837180B30E400B677C2 /* MUIAddressTokenAttachmentCell.h */, + 1BFDB838180B30E400B677C2 /* MUIBundleResourceURLProtocol.h */, + 1BFDB839180B30E400B677C2 /* MUIContextMenuController.h */, + 1BFDB83A180B30E400B677C2 /* MUIFramework.h */, + 1BFDB83B180B30E400B677C2 /* MUIJSNotification.h */, + 1BFDB83C180B30E400B677C2 /* MUIJSNotificationCenter.h */, + 1BFDB83D180B30E400B677C2 /* MUIMIMEDocumentGenerator.h */, + 1BFDB83E180B30E400B677C2 /* MUITokenAddress.h */, + 1BFDB83F180B30E400B677C2 /* MUITokenAddressField.h */, + 1BFDB840180B30E400B677C2 /* MUITokenAddressFieldCell.h */, + 1BFDB841180B30E400B677C2 /* MUITokenAddressTextStorage.h */, + 1BFDB842180B30E400B677C2 /* MUITokenAddressTextView.h */, + 1BFDB843180B30E400B677C2 /* MUIWebAttachment.h */, + 1BFDB844180B30E400B677C2 /* MUIWebAttachmentController.h */, + 1BFDB845180B30E400B677C2 /* MUIWebDocument.h */, + 1BFDB846180B30E400B677C2 /* MUIWebDocumentView.h */, + 1BFDB847180B30E400B677C2 /* MUIWebDocumentViewGroup.h */, + 1BFDB848180B30E400B677C2 /* MUIWebFindController.h */, + 1BFDB849180B30E400B677C2 /* MUIWKView.h */, + 1BFDB84A180B30E400B677C2 /* MUIWKViewController.h */, + 1BFDB84B180B30E400B677C2 /* NSCoding-Protocol.h */, + 1BFDB84C180B30E400B677C2 /* NSControlTextEditingDelegate-Protocol.h */, + 1BFDB84D180B30E400B677C2 /* NSCopying-Protocol.h */, + 1BFDB84E180B30E400B677C2 /* NSDraggingDestination-Protocol.h */, + 1BFDB84F180B30E400B677C2 /* NSDraggingSource-Protocol.h */, + 1BFDB850180B30E400B677C2 /* NSObject-Protocol.h */, + 1BFDB851180B30E400B677C2 /* NSPasteboardWriting-Protocol.h */, + 1BFDB852180B30E400B677C2 /* NSSharingServiceDelegate-Protocol.h */, + 1BFDB853180B30E400B677C2 /* NSSharingServicePickerDelegate-Protocol.h */, + 1BFDB854180B30E400B677C2 /* NSTableViewDataSource-Protocol.h */, + 1BFDB855180B30E400B677C2 /* NSTableViewDelegate-Protocol.h */, + 1BFDB856180B30E400B677C2 /* NSTextFieldDelegate-Protocol.h */, + 1BFDB857180B30E400B677C2 /* NSTextFinderAsynchronousDocumentFindMatch-Protocol.h */, + 1BFDB858180B30E400B677C2 /* NSTextFinderClient-Protocol.h */, + 1BFDB859180B30E400B677C2 /* NSTokenFieldDelegate-Protocol.h */, + 1BFDB85A180B30E400B677C2 /* NSUserInterfaceValidations-Protocol.h */, + 1BFDB85B180B30E400B677C2 /* NSView-MUIAdditions.h */, + 1BFDB85C180B30E400B677C2 /* NSWindowDelegate-Protocol.h */, + 1BFDB85D180B30E400B677C2 /* QLPreviewItem-Protocol.h */, + 1BFDB85E180B30E400B677C2 /* QLPreviewPanelDataSource-Protocol.h */, + 1BFDB85F180B30E400B677C2 /* QLPreviewPanelDelegate-Protocol.h */, + 1BFDB860180B30E400B677C2 /* QLSeamlessCloserDelegate-Protocol.h */, + 1BFDB861180B30E400B677C2 /* QLSeamlessOpenerDelegate-Protocol.h */, + 1BFDB862180B30E400B677C2 /* WKBrowsingContextLoadDelegate-Protocol.h */, + 1BFDB863180B30E400B677C2 /* WKConnectionDelegate-Protocol.h */, + 1BFDB864180B30E400B677C2 /* WKProcessGroupDelegate-Protocol.h */, + ); + path = MailUIFW; + sourceTree = ""; + }; + 32C88E010371C26100C91783 /* Other Sources */ = { + isa = PBXGroup; + children = ( + 32DBCF630370AF2F00C91783 /* GPGMail_Prefix.pch */, + ); + name = "Other Sources"; + path = Source; + sourceTree = ""; + }; + 559A7FB30838E4200052F47C /* Documentation */ = { + isa = PBXGroup; + children = ( + 1B64F62013E38E9200C5B4C9 /* GPG related notes */, + 1B637BC313E39FDF00196286 /* GPGMail TODOs */, + 1BDAA67313EB680D00F27826 /* CODING */, + 308DE1ED14FFFB920090F6F7 /* VERSIONING */, + 1B95B4BF1501297B005BE119 /* ADVANCED PREFERENCES */, + ); + name = Documentation; + path = Docs; + sourceTree = ""; + }; + 559A80310838E6870052F47C /* Headers */ = { + isa = PBXGroup; + children = ( + 1BDAA67213EB4CB600F27826 /* Common */, + 1BDAA67013EB4C9D00F27826 /* Logic */, + 1BDAA67113EB4CAD00F27826 /* UI */, + ); + name = Headers; + path = Source; + sourceTree = ""; + }; + 559A806B0838E96A0052F47C /* Classes */ = { + isa = PBXGroup; + children = ( + 1BAEF63F13E9F44800A59CED /* Common */, + 1BAEF64113E9F46D00A59CED /* Logic */, + 1BAEF64013E9F45B00A59CED /* UI */, + ); + name = Classes; + path = Source; + sourceTree = ""; + }; + 559A80DC0838EC770052F47C /* Images */ = { + isa = PBXGroup; + children = ( + 30E2278E1772057A00AD9A48 /* SymmetricEncryptionOff.pdf */, + 30E2278F1772057A00AD9A48 /* SymmetricEncryptionOn.pdf */, + 301380E117578133005948EE /* GPGMail.iconset */, + 3066C6151757A54900384E29 /* certificate.png */, + 3066C6161757A54900384E29 /* certificate@2x.png */, + 301380DD17569819005948EE /* CertLargeNotTrusted.png */, + 301380DB17569814005948EE /* CertLargeNotTrusted@2x.png */, + 301380D217567D26005948EE /* CertLargeStd.png */, + 301380D317567D26005948EE /* CertLargeStd@2x.png */, + 3066C60817579F5900384E29 /* CertSmallStd.png */, + 3066C60917579F5900384E29 /* CertSmallStd@2x.png */, + 3066C60617579F5900384E29 /* CertSmallStd_Invalid.png */, + 3066C60717579F5900384E29 /* CertSmallStd_Invalid@2x.png */, + 3066C6201757ACCF00384E29 /* encryption.png */, + 3066C6211757ACCF00384E29 /* encryption@2x.png */, + 30675D1E14F047F000914186 /* GreenDot.png */, + 30A7AEA41756728400746C29 /* GreenDot@2x.png */, + 30E4F6B012B3B1350093608D /* InvalidBadge.png */, + 30A7AE991756709F00746C29 /* InvalidBadge@2x.png */, + 3066C60E1757A0FC00384E29 /* MenuArrowWhite.png */, + 3066C60F1757A0FC00384E29 /* MenuArrowWhite@2x.png */, + 30675D1F14F047F000914186 /* RedDot.png */, + 30A7AEA61756728A00746C29 /* RedDot@2x.png */, + 30E4F6BE12B3B1350093608D /* ValidBadge.png */, + 30A7AEA0175670A500746C29 /* ValidBadge@2x.png */, + 30675D2014F047F000914186 /* YellowDot.png */, + 30A7AEA21756727200746C29 /* YellowDot@2x.png */, + ); + path = Images; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 1B87635E1786020900B24BBC /* Unit Tests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1B8763741786020A00B24BBC /* Build configuration list for PBXNativeTarget "Unit Tests" */; + buildPhases = ( + 1B87635B1786020900B24BBC /* Sources */, + 1B87635C1786020900B24BBC /* Frameworks */, + 1B87635D1786020900B24BBC /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 1B87636C1786020A00B24BBC /* PBXTargetDependency */, + ); + name = "Unit Tests"; + productName = "Unit Tests"; + productReference = 1B87635F1786020900B24BBC /* Unit Tests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 8D5B49AC048680CD000E48DA /* GPGMail */ = { + isa = PBXNativeTarget; + buildConfigurationList = 55541F4C085AE6B100548474 /* Build configuration list for PBXNativeTarget "GPGMail" */; + buildPhases = ( + 30DA468812B2D5E800E20039 /* Update en.lproj from Base.lproj */, + 8D5B49B1048680CD000E48DA /* Sources */, + 8D5B49AF048680CD000E48DA /* Resources */, + 8D5B49B3048680CD000E48DA /* Frameworks */, + 1B45A52111CC977700ED4663 /* Copy Frameworks */, + 1B9EAAAD14352F0A0063F2F1 /* Fix RegEx loader path */, + 30F151C51500BD4500980642 /* Fill Info.plist */, + 1B49BC7B1A98C21B000440E9 /* Copy "How to get the source code" into Resources */, + 30F151E21500BE8D00980642 /* Install GPGMail */, + 1BC07F3517466697004263BB /* Copy Libmacgpg into the sandbox container */, + ); + buildRules = ( + ); + comments = "Old working:\nheader_search_path ..\nlibrary_style static\nother_linker_flags -force_flat_namespace -undefined suppress \nmacosx deployment target: default\n\n-bundle_loader /Applications/Mail.app/Contents/MacOS/Mail -undefined dynamic_lookup\n"; + dependencies = ( + ); + name = GPGMail; + productInstallPath = "$(HOME)/Library/Bundles"; + productName = GPGMail; + productReference = 8D5B49B6048680CD000E48DA /* GPGMail.mailbundle */; + productType = "com.apple.product-type.bundle"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 089C1669FE841209C02AAC07 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0500; + TargetAttributes = { + 1B87635E1786020900B24BBC = { + TestTargetID = 8D5B49AC048680CD000E48DA; + }; + }; + }; + buildConfigurationList = 55541F56085AE6B100548474 /* Build configuration list for PBXProject "GPGMail" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 1; + knownRegions = ( + en, + fr, + fi, + it, + ko, + es, + da, + sv, + de, + ca, + cs, + gl, + id, + nb, + pl, + pt_PT, + pt, + ru, + sk, + tr, + zh_CN, + oc, + vi, + Base, + nl, + el, + fa_IR, + ); + mainGroup = 089C166AFE841209C02AAC07 /* GPGMail */; + projectDirPath = ""; + projectReferences = ( + { + ProductGroup = 1B0626A21746998D00E51308 /* Products */; + ProjectRef = 1B06268F1746992B00E51308 /* Libmacgpg.xcodeproj */; + }, + ); + projectRoot = ""; + targets = ( + 8D5B49AC048680CD000E48DA /* GPGMail */, + 1B87635E1786020900B24BBC /* Unit Tests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXReferenceProxy section */ + 1B0626AA1746998D00E51308 /* Libmacgpg.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = Libmacgpg.framework; + remoteRef = 1B0626A91746998D00E51308 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 1B0626AE1746998D00E51308 /* org.gpgtools.Libmacgpg.xpc */ = { + isa = PBXReferenceProxy; + fileType = "compiled.mach-o.executable"; + path = org.gpgtools.Libmacgpg.xpc; + remoteRef = 1B0626AD1746998D00E51308 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 1B0626B01746998D00E51308 /* GPGTools.app */ = { + isa = PBXReferenceProxy; + fileType = wrapper.application; + path = GPGTools.app; + remoteRef = 1B0626AF1746998D00E51308 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 1B0626B21746998D00E51308 /* LeakFinder.app */ = { + isa = PBXReferenceProxy; + fileType = wrapper.application; + path = LeakFinder.app; + remoteRef = 1B0626B11746998D00E51308 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 1B73B8D81BB20787007D601B /* UnitTests.xctest */ = { + isa = PBXReferenceProxy; + fileType = wrapper.cfbundle; + path = UnitTests.xctest; + remoteRef = 1B73B8D71BB20787007D601B /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; +/* End PBXReferenceProxy section */ + +/* Begin PBXResourcesBuildPhase section */ + 1B87635D1786020900B24BBC /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1B87639E17862AAA00B24BBC /* GPGMail.mailbundle in Resources */, + 1B876389178602B200B24BBC /* PGPInlineDataUTF8quoted.txt in Resources */, + 1B87638D178602B200B24BBC /* PGPInlineSignatureUTF8quoted.txt in Resources */, + 1B876392178602B200B24BBC /* PGPSignatureASCIIGood.txt in Resources */, + 1B876386178602B200B24BBC /* PGPInlineDataASCIIGood.txt in Resources */, + 1B876395178602B200B24BBC /* PGPSignatureUTF8Good.txt in Resources */, + 1B876394178602B200B24BBC /* PGPSignatureBlockGood.txt in Resources */, + 1B87638B178602B200B24BBC /* PGPInlineSignatureASCIIquoted.txt in Resources */, + 1B876387178602B200B24BBC /* PGPInlineDataASCIIquoted.txt in Resources */, + 1B87638C178602B200B24BBC /* PGPInlineSignatureUTF8Good.txt in Resources */, + 1B87638A178602B200B24BBC /* PGPInlineSignatureASCIIGood.txt in Resources */, + 1B8763671786020A00B24BBC /* InfoPlist.strings in Resources */, + 1B22C45D17B138390073DF81 /* cd-bundle.bundle in Resources */, + 1B876393178602B200B24BBC /* PGPSignatureBlockBad.txt in Resources */, + 1B876390178602B200B24BBC /* PGPMessageBlockGood2.txt in Resources */, + 1B876391178602B200B24BBC /* PGPPublicKey.txt in Resources */, + 1B87638E178602B200B24BBC /* PGPMessageBlockBad.txt in Resources */, + 1B876388178602B200B24BBC /* PGPInlineDataUTF8Good.txt in Resources */, + 1B87638F178602B200B24BBC /* PGPMessageBlockGood.txt in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8D5B49AF048680CD000E48DA /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 3005018114FFE719004EB26B /* GPGMailBundle.defaults in Resources */, + 3005018514FFE719004EB26B /* LICENSE.txt in Resources */, + 3005017E14FFE711004EB26B /* GPGSignatureView.xib in Resources */, + 3005017F14FFE711004EB26B /* GPGMailPreferences.xib in Resources */, + 3005018014FFE711004EB26B /* GPGAttachments.xib in Resources */, + 3005017B14FFE70A004EB26B /* GPGMail.strings in Resources */, + 3005017C14FFE70A004EB26B /* SignatureView.strings in Resources */, + 3005017D14FFE70A004EB26B /* GPGAttachment.strings in Resources */, + 3005018314FFE719004EB26B /* Credits.rtf in Resources */, + 3005016014FFE702004EB26B /* GreenDot.png in Resources */, + 3005016114FFE702004EB26B /* RedDot.png in Resources */, + 3005016214FFE702004EB26B /* YellowDot.png in Resources */, + 3005016E14FFE702004EB26B /* InvalidBadge.png in Resources */, + 3005017914FFE702004EB26B /* ValidBadge.png in Resources */, + 1B95B4C01501297B005BE119 /* ADVANCED PREFERENCES in Resources */, + 3057F2EB1507C9C000FA3C0D /* Special.html in Resources */, + 1B56ECA916175AA8004A3ABE /* GPGMail-Entitlements.plist in Resources */, + 30A7AE9A1756709F00746C29 /* InvalidBadge@2x.png in Resources */, + 30A7AEA1175670A500746C29 /* ValidBadge@2x.png in Resources */, + 30A7AEA31756727300746C29 /* YellowDot@2x.png in Resources */, + 30A7AEA51756728400746C29 /* GreenDot@2x.png in Resources */, + 30A7AEA71756728B00746C29 /* RedDot@2x.png in Resources */, + 30E227911772057A00AD9A48 /* SymmetricEncryptionOn.pdf in Resources */, + 301380D417567D26005948EE /* CertLargeStd.png in Resources */, + 301380D517567D26005948EE /* CertLargeStd@2x.png in Resources */, + 301380DC17569815005948EE /* CertLargeNotTrusted@2x.png in Resources */, + 301380DE17569819005948EE /* CertLargeNotTrusted.png in Resources */, + 301380E217578133005948EE /* GPGMail.iconset in Resources */, + 3066C60A17579F5900384E29 /* CertSmallStd_Invalid.png in Resources */, + 3066C60B17579F5900384E29 /* CertSmallStd_Invalid@2x.png in Resources */, + 3066C60C17579F5900384E29 /* CertSmallStd.png in Resources */, + 30E227901772057A00AD9A48 /* SymmetricEncryptionOff.pdf in Resources */, + 3066C60D17579F5900384E29 /* CertSmallStd@2x.png in Resources */, + 3066C6101757A0FC00384E29 /* MenuArrowWhite.png in Resources */, + 3066C6111757A0FC00384E29 /* MenuArrowWhite@2x.png in Resources */, + 3066C6171757A54900384E29 /* certificate.png in Resources */, + 3066C6181757A54900384E29 /* certificate@2x.png in Resources */, + 3066C6221757ACCF00384E29 /* encryption.png in Resources */, + 3066C6231757ACCF00384E29 /* encryption@2x.png in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 1B49BC7B1A98C21B000440E9 /* Copy "How to get the source code" into Resources */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Copy \"How to get the source code\" into Resources"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "[[ -d \"$DEPLOY_RESOURCES_DIR\" ]] || exit 0\n \n HOWTO_PATH=\"$DEPLOY_RESOURCES_DIR/resources/How to get the source code\"\n cp \"$HOWTO_PATH\" \"$BUILT_PRODUCTS_DIR/$UNLOCALIZED_RESOURCES_FOLDER_PATH/\""; + showEnvVarsInLog = 0; + }; + 1B9EAAAD14352F0A0063F2F1 /* Fix RegEx loader path */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Fix RegEx loader path"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "install_name_tool -change \\\n\"@executable_path/../Frameworks/RegexKit.framework/Versions/A/RegexKit\" \\\n\"@loader_path/../Frameworks/RegexKit.framework/Versions/A/RegexKit\" \\\n\"$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/MacOS/GPGMail\"\n"; + showEnvVarsInLog = 0; + }; + 1BC07F3517466697004263BB /* Copy Libmacgpg into the sandbox container */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Copy Libmacgpg into the sandbox container"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "[[ \"$CONFIGURATION\" == \"Debug\" ]] || exit 0\n\n # Check if a framework is available under ~/Library/Framework\n USER_FRAMEWORKS=\"$HOME/Library/Frameworks\"\n CONTAINER_FRAMEWORKS=\"$HOME/Library/Containers/com.apple.mail/Data/Library/Frameworks\"\n LIBMACGPG=\"Libmacgpg.framework\"\n [[ -d \"$USER_FRAMEWORKS/$LIBMACGPG\" ]] || exit 0\n\n # Create the Container Frameworks dir if it doesn't exist.\n if [ ! -d \"$CONTAINER_FRAMEWORKS\" ]; then\n mkdir -p \"$CONTAINER_FRAMEWORKS\"\n fi\n if [ -d \"$CONTAINER_FRAMEWORKS/$LIBMACGPG\" ]; then\n rm -rf \"$CONTAINER_FRAMEWORKS/$LIBMACGPG\"\n fi\n \n # Copy the framework into the container.\n rsync -rltD \"$USER_FRAMEWORKS/$LIBMACGPG/\" \"$CONTAINER_FRAMEWORKS/$LIBMACGPG/\""; + showEnvVarsInLog = 0; + }; + 30DA468812B2D5E800E20039 /* Update en.lproj from Base.lproj */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Update en.lproj from Base.lproj"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/bash; + shellScript = "[[ -d \"$DEPLOY_RESOURCES_DIR\" ]] || exit 0\n\"$DEPLOY_RESOURCES_DIR/scripts/updateStringsFiles.sh\" || exit 1\n"; + showEnvVarsInLog = 0; + }; + 30F151C51500BD4500980642 /* Fill Info.plist */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Fill Info.plist"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "if [[ -d \"$DEPLOY_RESOURCES_DIR\" ]] ;then\n source \"$DEPLOY_RESOURCES_DIR/config/versioning.sh\"\nelse\n source \"$SRCROOT/Version.config\"\nfi\n[[ -n \"$VERSION\" ]] || { echo \"Missing Version!\"; exit 1; }\n\n\n/usr/libexec/PlistBuddy \\\n -c \"Set CommitHash '${COMMIT_HASH:--}'\" \\\n -c \"Set BuildNumber '${BUILD_NUMBER:-0}'\" \\\n -c \"Set CFBundleVersion '${BUILD_VERSION:-0n}'\" \\\n -c \"Set CFBundleShortVersionString '$VERSION'\" \\\n \"$BUILT_PRODUCTS_DIR/$INFOPLIST_PATH\" || exit 2\n"; + showEnvVarsInLog = 0; + }; + 30F151E21500BE8D00980642 /* Install GPGMail */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Install GPGMail"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "################################################\n# Install the bundle in ~/Library/Mail/bundles #\n################################################\n\n[[ \"0$INSTALL_GPGMAIL\" -eq 1 ]] || exit 0\n\n\nrm -fr \"$HOME/Library/Mail/Bundles/$FULL_PRODUCT_NAME\"\n\n# Copy the Bundle\nmkdir -p ~/Library/Mail/Bundles/\ncp -RH \"$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME\" \"$HOME/Library/Mail/Bundles/\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 1B87635B1786020900B24BBC /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1B8763981786035300B24BBC /* NSData+GPGMailTest.m in Sources */, + 1B22C46717B13A250073DF81 /* TestHelpers.m in Sources */, + 1B22C46417B138890073DF81 /* IntegrationHooks.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8D5B49B1048680CD000E48DA /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1BD06B9B18102CF300EC9902 /* WebDocumentGenerator+GPGMail.m in Sources */, + 1BED92F81079529C00D22B4C /* GPGMailBundle.m in Sources */, + 1BADCE7E176B694C009D3785 /* GMCodeInjector.m in Sources */, + 1BED9357107957E700D22B4C /* GPGMailPreferences.m in Sources */, + 306E8A37178B0BCB004C5B89 /* OptionalView+GPGMail.m in Sources */, + 1BED936B107958C700D22B4C /* NSString+GPGMail.m in Sources */, + 1BED93851079597600D22B4C /* NSPreferences+GPGMail.m in Sources */, + 1B34341A107AC4A200F590EF /* MimeBody+GPGMail.m in Sources */, + 1BADCE76176B6501009D3785 /* GMMessageRulesApplier.m in Sources */, + 1B34341B107AC4A400F590EF /* MimePart+GPGMail.m in Sources */, + 30744AB512B9733800CC3EC5 /* MessageContentController+GPGMail.m in Sources */, + 1B938AC717693F48007A0854 /* Library+GPGMail.m in Sources */, + 1BBEF49C13A9115E0037E53D /* NSSet+Functional.m in Sources */, + 1B32AFF713AF827B0072079B /* CCLog.m in Sources */, + 1B8C01D513E4F12D00DB9FA4 /* GPGSignatureView.m in Sources */, + 1B3F2F9013E58B70006A8333 /* ComposeHeaderView+GPGMail.m in Sources */, + 1B3F2F9213E58D3D006A8333 /* NSObject+LPDynamicIvars.m in Sources */, + 1B3F2F9613E58F1D006A8333 /* GPGTextAttachmentCell.m in Sources */, + 1B3F2F9913E58FD3006A8333 /* NSAttributedString+GPGMail.m in Sources */, + 1B3F2F9C13E590AB006A8333 /* MessageHeaderDisplay+GPGMail.m in Sources */, + 1B3F2F9E13E59639006A8333 /* ComposeBackEnd+GPGMail.m in Sources */, + 1BAEF64413E9F57700A59CED /* MailAccount+GPGMail.m in Sources */, + 1B02D70813F1E9D80032CFD1 /* GPGFlaggedString.m in Sources */, + 1B02D70A13F1E9F00032CFD1 /* NSArray+Functional.m in Sources */, + 1B8289FB13FD62880007E6A2 /* Message+GPGMail.m in Sources */, + 1B8437661404AB9C00968293 /* NSData+GPGMail.m in Sources */, + 1BF69D7F1405C04E008B07F5 /* HeadersEditor+GPGMail.m in Sources */, + 1BB3DCCE1407F1CA00870DEB /* LibraryStore+GPGMail.m in Sources */, + 1B22E50C176A101800BBB351 /* GMKeyManager.m in Sources */, + 1B51231E1409345C004D0818 /* MailDocumentEditor+GPGMail.m in Sources */, + 1BF40C8A180CA59A00B4C1CE /* EAEmailAddressParser+GPGMail.m in Sources */, + 1B51232514093795004D0818 /* NSBezierPath_KBAdditions.m in Sources */, + 1B51232614093795004D0818 /* NSBezierPath+StrokeExtensions.m in Sources */, + 1BC4778D1468AA4F0061120C /* GPGAttachmentController.m in Sources */, + 1B7E4DB714EEEAD90069E69C /* JRLPSwizzle.m in Sources */, + 1B4741D014F550B800F36C54 /* GMSecurityControl.m in Sources */, + 1B73B8DD1BB2099F007D601B /* MailToolbar+GPGMail.m in Sources */, + 1B45481A14F7D0F0000F1646 /* GMSecurityHistory.m in Sources */, + 1B89E21614FC40F00012D4AD /* NSWindow+GPGMail.m in Sources */, + 1B9287C919F9E99700D540DF /* MCMessageGenerator+GPGMail.m in Sources */, + 1B2341DE14FEEC8C0007EB64 /* GMSecurityMethodAccessoryView.m in Sources */, + 1B97AE3815096FA700A4F0F2 /* MMStopwatch.m in Sources */, + 1B03125F18116CB4006D451A /* ConversationMember+GPGMail.m in Sources */, + 4555EA4B150922DF00723E1F /* GPGException+GPGMail.m in Sources */, + 1B49855A17A6EB79007FE67F /* MessageRouter+GPGMail.m in Sources */, + 300F29BB175F460E00C435D2 /* GMComposeKeyEventHandler.m in Sources */, + 1BEA7AC51760AB5B0084B2AD /* BannerController+GPGMail.m in Sources */, + 1B73B8DA1BB2079C007D601B /* ComposeWindowController+GPGMail.m in Sources */, + 1BD7D27F1765E59C00F5A266 /* MessageCriterion+GPGMail.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 1B87636C1786020A00B24BBC /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 8D5B49AC048680CD000E48DA /* GPGMail */; + targetProxy = 1B87636B1786020A00B24BBC /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 1B194B5911CC55A80092B810 /* GPGMail.strings */ = { + isa = PBXVariantGroup; + children = ( + 1B194B5A11CC55A80092B810 /* en */, + 30FC04E814FFE61100AA19FE /* de */, + 30D00A22175CAC5100E209FD /* ca */, + 30D00A33175CAC7600E209FD /* cs */, + 30D00A39175CAC7C00E209FD /* da */, + 30A5EC11175CAC900023E231 /* es */, + 30A5EC22175CAC9C0023E231 /* fi */, + 30A5EC28175CACA50023E231 /* fr */, + 30A5EC2D175CACAE0023E231 /* gl */, + 30A5EC33175CACB30023E231 /* id */, + 30A5EC39175CACB90023E231 /* it */, + 30A5EC3F175CACBE0023E231 /* nb */, + 30A5EC4B175CACC90023E231 /* pl */, + 30A5EC51175CACD10023E231 /* pt_PT */, + 30A5EC57175CACD50023E231 /* pt */, + 30A5EC5D175CACDA0023E231 /* ru */, + 30A5EC63175CACDF0023E231 /* sk */, + 30A5EC69175CACE50023E231 /* sv */, + 30A5EC6F175CACE90023E231 /* tr */, + 309DF976175CACFD0062ADE3 /* zh_CN */, + 3082A89B1D2BA85E00AB864A /* ko */, + 3082A8A71D2BA87A00AB864A /* oc */, + 3082A8B01D2BA89300AB864A /* vi */, + 3044C6E31D33A03400F500B8 /* nl */, + 30A8AC421E447B26007E67B0 /* el */, + 30A8AC4A1E447B57007E67B0 /* fa_IR */, + ); + name = GPGMail.strings; + sourceTree = ""; + }; + 1B8763651786020A00B24BBC /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 1B8763661786020A00B24BBC /* en */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; + 1B8C01D613E4F25900DB9FA4 /* GPGSignatureView.xib */ = { + isa = PBXVariantGroup; + children = ( + 309BB22D1D339BF10020D480 /* Base */, + 30FC04EB14FFE61100AA19FE /* de */, + 30CDD513175CAE4400BEC95C /* ca */, + 30CDD51B175CAE4B00BEC95C /* cs */, + 302FF157175CAE6400DB03EB /* zh_CN */, + 302FF158175CAE6500DB03EB /* tr */, + 302FF159175CAE6900DB03EB /* sv */, + 302FF15A175CAE6C00DB03EB /* sk */, + 302FF15B175CAE6C00DB03EB /* ru */, + 302FF15C175CAE6D00DB03EB /* pt */, + 302FF15D175CAE6E00DB03EB /* pt_PT */, + 302FF15E175CAE7000DB03EB /* pl */, + 302FF160175CAE7200DB03EB /* nb */, + 302FF161175CAE7400DB03EB /* it */, + 302FF162175CAE7400DB03EB /* id */, + 302FF163175CAE7600DB03EB /* gl */, + 302FF164175CAE7700DB03EB /* fi */, + 302FF166175CAE7900DB03EB /* es */, + 302FF167175CAE7A00DB03EB /* da */, + 302FF168175CAE7B00DB03EB /* fr */, + 3082A8A41D2BA86700AB864A /* ko */, + 3082A8AD1D2BA88100AB864A /* oc */, + 3082A8B61D2BA89A00AB864A /* vi */, + 3044C6EC1D33A04700F500B8 /* nl */, + 30A8AC4D1E447B61007E67B0 /* fa_IR */, + 30A8AC4E1E447B66007E67B0 /* el */, + ); + name = GPGSignatureView.xib; + sourceTree = ""; + }; + 1BBB07E11489A64600530876 /* GPGAttachment.strings */ = { + isa = PBXVariantGroup; + children = ( + 1BBB07E21489A64600530876 /* en */, + 30FC04E714FFE61100AA19FE /* de */, + 30D00A1F175CAC5100E209FD /* ca */, + 30D00A31175CAC7600E209FD /* cs */, + 30D00A37175CAC7C00E209FD /* da */, + 30A5EC0F175CAC900023E231 /* es */, + 30A5EC20175CAC9C0023E231 /* fi */, + 30A5EC26175CACA50023E231 /* fr */, + 30A5EC2B175CACAE0023E231 /* gl */, + 30A5EC31175CACB30023E231 /* id */, + 30A5EC37175CACB90023E231 /* it */, + 30A5EC3D175CACBE0023E231 /* nb */, + 30A5EC49175CACC90023E231 /* pl */, + 30A5EC4F175CACD10023E231 /* pt_PT */, + 30A5EC55175CACD50023E231 /* pt */, + 30A5EC5B175CACDA0023E231 /* ru */, + 30A5EC61175CACDF0023E231 /* sk */, + 30A5EC67175CACE50023E231 /* sv */, + 30A5EC6D175CACE90023E231 /* tr */, + 309DF974175CACFD0062ADE3 /* zh_CN */, + 3082A8991D2BA85E00AB864A /* ko */, + 3082A8A51D2BA87A00AB864A /* oc */, + 3082A8AE1D2BA89300AB864A /* vi */, + 3044C6E01D33A03400F500B8 /* nl */, + 30A8AC411E447B26007E67B0 /* el */, + 30A8AC491E447B57007E67B0 /* fa_IR */, + ); + name = GPGAttachment.strings; + sourceTree = ""; + }; + 1BC477831468A1770061120C /* GPGAttachments.xib */ = { + isa = PBXVariantGroup; + children = ( + 309BB22F1D339BF20020D480 /* Base */, + 1BA12C2714FF578B00729B28 /* de */, + 30CDD511175CAE4400BEC95C /* ca */, + 30CDD519175CAE4B00BEC95C /* cs */, + 302FF17A175CAEB200DB03EB /* zh_CN */, + 302FF17B175CAEB300DB03EB /* tr */, + 302FF17C175CAEB500DB03EB /* ru */, + 302FF17D175CAEB500DB03EB /* pt */, + 302FF17E175CAEB700DB03EB /* pt_PT */, + 302FF180175CAEB900DB03EB /* id */, + 302FF181175CAEBC00DB03EB /* fr */, + 302FF182175CAEBD00DB03EB /* da */, + 302FF183175CAEBE00DB03EB /* es */, + 302FF185175CAEBF00DB03EB /* fi */, + 302FF186175CAEC000DB03EB /* gl */, + 302FF187175CAEC100DB03EB /* it */, + 302FF188175CAEC200DB03EB /* nb */, + 302FF189175CAEC400DB03EB /* pl */, + 302FF18A175CAEC500DB03EB /* sk */, + 302FF18B175CAEC600DB03EB /* sv */, + 3082A8A21D2BA86700AB864A /* ko */, + 3082A8AB1D2BA88100AB864A /* oc */, + 3082A8B41D2BA89A00AB864A /* vi */, + 3044C6EE1D33A05000F500B8 /* nl */, + 30A8AC531E447B6F007E67B0 /* fa_IR */, + 30A8AC541E447B75007E67B0 /* el */, + ); + name = GPGAttachments.xib; + path = Resources; + sourceTree = SOURCE_ROOT; + }; + 1BECA61413E372AC00C622B0 /* SignatureView.strings */ = { + isa = PBXVariantGroup; + children = ( + 1BECA61513E372AC00C622B0 /* en */, + 30FC04EE14FFE61100AA19FE /* de */, + 30D00A27175CAC5100E209FD /* ca */, + 30D00A36175CAC7600E209FD /* cs */, + 30D00A3C175CAC7C00E209FD /* da */, + 30A5EC14175CAC900023E231 /* es */, + 30A5EC25175CAC9C0023E231 /* fi */, + 30A5EC2A175CACA50023E231 /* fr */, + 30A5EC30175CACAE0023E231 /* gl */, + 30A5EC36175CACB30023E231 /* id */, + 30A5EC3C175CACB90023E231 /* it */, + 30A5EC42175CACBE0023E231 /* nb */, + 30A5EC4E175CACC90023E231 /* pl */, + 30A5EC54175CACD10023E231 /* pt_PT */, + 30A5EC5A175CACD50023E231 /* pt */, + 30A5EC60175CACDA0023E231 /* ru */, + 30A5EC66175CACDF0023E231 /* sk */, + 30A5EC6C175CACE50023E231 /* sv */, + 30A5EC72175CACE90023E231 /* tr */, + 309DF979175CACFD0062ADE3 /* zh_CN */, + 3082A89E1D2BA85E00AB864A /* ko */, + 3082A8AA1D2BA87A00AB864A /* oc */, + 3082A8B31D2BA89300AB864A /* vi */, + 3044C6E81D33A03400F500B8 /* nl */, + 30A8AC431E447B26007E67B0 /* el */, + 30A8AC4B1E447B57007E67B0 /* fa_IR */, + ); + name = SignatureView.strings; + sourceTree = ""; + }; + 3057F2E91507C9C000FA3C0D /* Special.html */ = { + isa = PBXVariantGroup; + children = ( + 3057F2EA1507C9C000FA3C0D /* en */, + ); + name = Special.html; + sourceTree = ""; + }; + 308B8FA812A6AE5F00C99BD2 /* GPGMailPreferences.xib */ = { + isa = PBXVariantGroup; + children = ( + 309BB22E1D339BF10020D480 /* Base */, + 30FC04E914FFE61100AA19FE /* de */, + 30C37B6714FFE65400649F0B /* fr */, + 30CDD512175CAE4400BEC95C /* ca */, + 30CDD51A175CAE4B00BEC95C /* cs */, + 302FF169175CAE9D00DB03EB /* da */, + 302FF16A175CAE9E00DB03EB /* es */, + 302FF16C175CAEA000DB03EB /* fi */, + 302FF16D175CAEA100DB03EB /* gl */, + 302FF16E175CAEA100DB03EB /* id */, + 302FF16F175CAEA300DB03EB /* it */, + 302FF170175CAEA400DB03EB /* nb */, + 302FF172175CAEA600DB03EB /* pl */, + 302FF173175CAEA600DB03EB /* pt_PT */, + 302FF174175CAEA700DB03EB /* pt */, + 302FF175175CAEA900DB03EB /* ru */, + 302FF176175CAEAA00DB03EB /* sk */, + 302FF177175CAEAB00DB03EB /* sv */, + 302FF178175CAEAB00DB03EB /* tr */, + 302FF179175CAEAC00DB03EB /* zh_CN */, + 3082A8A31D2BA86700AB864A /* ko */, + 3082A8AC1D2BA88100AB864A /* oc */, + 3082A8B51D2BA89A00AB864A /* vi */, + 3044C6ED1D33A04B00F500B8 /* nl */, + 30A8AC501E447B6A007E67B0 /* fa_IR */, + 30A8AC511E447B6B007E67B0 /* el */, + ); + name = GPGMailPreferences.xib; + sourceTree = ""; + }; + 30913B4512B19B3B00327FDF /* Credits.rtf */ = { + isa = PBXVariantGroup; + children = ( + 30913B4312B19B3500327FDF /* en */, + 30FC04E614FFE61100AA19FE /* de */, + 30C37B6514FFE65400649F0B /* fr */, + 30C37C0014FFE67300649F0B /* sv */, + ); + name = Credits.rtf; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 1B87636D1786020A00B24BBC /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + COPY_PHASE_STRIP = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(DEVELOPER_FRAMEWORKS_DIR)", + "$(inherited)", + "$(SRCROOT)/Frameworks", + ); + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_OBJC_EXCEPTIONS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "Unit Tests/Unit Tests-Prefix.pch"; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + HEADER_SEARCH_PATHS = ( + "\"$(SRCROOT)/LionHeaders\"/**", + "\"Unit Tests/cd-bundle.bundle/Contents/Resources\"", + ); + INFOPLIST_FILE = "Unit Tests/Unit Tests-Info.plist"; + MACOSX_DEPLOYMENT_TARGET = 10.8; + PRODUCT_NAME = "$(TARGET_NAME)"; + WRAPPER_EXTENSION = xctest; + }; + name = Debug; + }; + 1B87636E1786020A00B24BBC /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + COPY_PHASE_STRIP = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(DEVELOPER_FRAMEWORKS_DIR)", + "$(inherited)", + "$(SRCROOT)/Frameworks", + ); + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_ENABLE_OBJC_EXCEPTIONS = YES; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "Unit Tests/Unit Tests-Prefix.pch"; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + HEADER_SEARCH_PATHS = ( + "\"$(SRCROOT)/LionHeaders\"/**", + "\"Unit Tests/cd-bundle.bundle/Contents/Resources\"", + ); + INFOPLIST_FILE = "Unit Tests/Unit Tests-Info.plist"; + MACOSX_DEPLOYMENT_TARGET = 10.8; + PRODUCT_NAME = "$(TARGET_NAME)"; + WRAPPER_EXTENSION = xctest; + }; + name = Release; + }; + 55541F4D085AE6B100548474 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = YES; + BUNDLE_LOADER = /Applications/Mail.app/Contents/MacOS/Mail; + CLANG_ENABLE_OBJC_ARC = YES; + CODE_SIGN_ENTITLEMENTS = ""; + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEPLOYMENT_POSTPROCESSING = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_OBJC_GC = unsupported; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = Source/GPGMail_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1"; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + GENERATE_PKGINFO_FILE = YES; + HEADER_SEARCH_PATHS = ( + "MailHeaders/**", + "$(SRCROOT)/Dependencies/Libmacgpg/build/$(CONFIGURATION)/Libmacgpg.framework/Headers", + ); + INFOPLIST_FILE = Resources/Info.plist; + INSTALL_GPGMAIL = 1; + INSTALL_PATH = "$(HOME)/Library/Mail/Bundles"; + LIBRARY_SEARCH_PATHS = "$(LIBRARY_SEARCH_PATHS)"; + MACOSX_DEPLOYMENT_TARGET = 10.7; + OTHER_CFLAGS = ""; + OTHER_LDFLAGS = ( + "-force_flat_namespace", + "-undefined", + suppress, + ); + PRODUCT_NAME = GPGMail; + STRIP_STYLE = "non-global"; + VALID_ARCHS = "x86_64 i386"; + WRAPPER_EXTENSION = mailbundle; + }; + name = Debug; + }; + 55541F4E085AE6B100548474 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = YES; + BUNDLE_LOADER = /Applications/Mail.app/Contents/MacOS/Mail; + CLANG_ENABLE_OBJC_ARC = YES; + CODE_SIGN_ENTITLEMENTS = ""; + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEPLOYMENT_POSTPROCESSING = YES; + GCC_ENABLE_OBJC_GC = unsupported; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; + GCC_OPTIMIZATION_LEVEL = s; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = Source/GPGMail_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS_NOT_USED_IN_PRECOMPS = ""; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GENERATE_PKGINFO_FILE = YES; + HEADER_SEARCH_PATHS = ( + "MailHeaders/**", + "$(SRCROOT)/Dependencies/Libmacgpg/build/$(CONFIGURATION)/Libmacgpg.framework/Headers", + ); + INFOPLIST_FILE = Resources/Info.plist; + INSTALL_PATH = "$(HOME)/Library/Mail/Bundles"; + LIBRARY_SEARCH_PATHS = "$(LIBRARY_SEARCH_PATHS)"; + MACOSX_DEPLOYMENT_TARGET = 10.7; + OTHER_CFLAGS = ""; + OTHER_LDFLAGS = ( + "-force_flat_namespace", + "-undefined", + suppress, + ); + PRODUCT_NAME = GPGMail; + SEPARATE_STRIP = NO; + STRIP_STYLE = "non-global"; + VALID_ARCHS = "x86_64 i386"; + WRAPPER_EXTENSION = mailbundle; + }; + name = Release; + }; + 55541F57085AE6B100548474 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_EXPLICIT_OWNERSHIP_TYPE = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + DEPLOY_RESOURCES_DIR = "$(SRCROOT)/Dependencies/DeployResources"; + FRAMEWORK_SEARCH_PATHS = ( + "\"$(SRCROOT)/Frameworks\"", + "$(SRCROOT)/Dependencies/Libmacgpg/build/$(CONFIGURATION)", + "$(HOME)/Library/Containers/com.apple.mail/Data/Library/Frameworks", + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "\"$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks\"", + ); + GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES; + GCC_TREAT_WARNINGS_AS_ERRORS = NO; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES; + GCC_WARN_ABOUT_MISSING_NEWLINE = YES; + GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_FOUR_CHARACTER_CONSTANTS = YES; + GCC_WARN_INHIBIT_ALL_WARNINGS = NO; + GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = YES; + GCC_WARN_PEDANTIC = NO; + GCC_WARN_PROTOTYPE_CONVERSION = YES; + GCC_WARN_SHADOW = YES; + GCC_WARN_SIGN_COMPARE = YES; + GCC_WARN_STRICT_SELECTOR_MATCH = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNKNOWN_PRAGMAS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_LABEL = YES; + GCC_WARN_UNUSED_PARAMETER = YES; + GCC_WARN_UNUSED_VALUE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + LD_RUNPATH_SEARCH_PATHS = "$(HOME)/Library/Containers/com.apple.mail/Data/Library/Frameworks $(HOME)/Library/Frameworks /Library/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.7; + ONLY_ACTIVE_ARCH = YES; + OTHER_LDFLAGS = ( + "-undefined", + dynamic_lookup, + ); + SDKROOT = macosx; + VALID_ARCHS = x86_64; + WARNING_CFLAGS = "-Warc-repeated-use-of-weak"; + }; + name = Debug; + }; + 55541F58085AE6B100548474 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_EXPLICIT_OWNERSHIP_TYPE = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + DEPLOY_RESOURCES_DIR = "$(SRCROOT)/Dependencies/DeployResources"; + FRAMEWORK_SEARCH_PATHS = ( + "\"$(SRCROOT)/Frameworks\"", + "$(SRCROOT)/Dependencies/Libmacgpg/build/$(CONFIGURATION)", + "$(HOME)/Library/Containers/com.apple.mail/Data/Library/Frameworks", + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "\"$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks\"", + ); + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES; + GCC_TREAT_WARNINGS_AS_ERRORS = NO; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES; + GCC_WARN_ABOUT_MISSING_NEWLINE = YES; + GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_FOUR_CHARACTER_CONSTANTS = YES; + GCC_WARN_INHIBIT_ALL_WARNINGS = NO; + GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = YES; + GCC_WARN_PEDANTIC = NO; + GCC_WARN_PROTOTYPE_CONVERSION = YES; + GCC_WARN_SHADOW = YES; + GCC_WARN_SIGN_COMPARE = YES; + GCC_WARN_STRICT_SELECTOR_MATCH = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNKNOWN_PRAGMAS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_LABEL = YES; + GCC_WARN_UNUSED_PARAMETER = YES; + GCC_WARN_UNUSED_VALUE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + LD_RUNPATH_SEARCH_PATHS = "/Library/Frameworks $(HOME)/Library/Frameworks $(HOME)/Library/Containers/com.apple.mail/Data/Library/Frameworks"; + LLVM_LTO = YES; + MACOSX_DEPLOYMENT_TARGET = 10.7; + OTHER_LDFLAGS = ( + "-undefined", + dynamic_lookup, + ); + SDKROOT = macosx; + VALID_ARCHS = x86_64; + WARNING_CFLAGS = "-Warc-repeated-use-of-weak"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 1B8763741786020A00B24BBC /* Build configuration list for PBXNativeTarget "Unit Tests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1B87636D1786020A00B24BBC /* Debug */, + 1B87636E1786020A00B24BBC /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 55541F4C085AE6B100548474 /* Build configuration list for PBXNativeTarget "GPGMail" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 55541F4D085AE6B100548474 /* Debug */, + 55541F4E085AE6B100548474 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 55541F56085AE6B100548474 /* Build configuration list for PBXProject "GPGMail" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 55541F57085AE6B100548474 /* Debug */, + 55541F58085AE6B100548474 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 089C1669FE841209C02AAC07 /* Project object */; +} diff --git a/GPGMail.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/GPGMail.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 00000000..5c48343f --- /dev/null +++ b/GPGMail.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/GPGMail.xcodeproj/project.xcworkspace/xcuserdata/lukele.xcuserdatad/WorkspaceSettings.xcsettings b/GPGMail.xcodeproj/project.xcworkspace/xcuserdata/lukele.xcuserdatad/WorkspaceSettings.xcsettings new file mode 100644 index 00000000..c9f6a3da --- /dev/null +++ b/GPGMail.xcodeproj/project.xcworkspace/xcuserdata/lukele.xcuserdatad/WorkspaceSettings.xcsettings @@ -0,0 +1,12 @@ + + + + + IDEWorkspaceUserSettings_BuildLocationStyle + 2 + IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges + + IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges + + + diff --git a/GPGMail.xcodeproj/xcshareddata/xcdebugger/Breakpoints.xcbkptlist b/GPGMail.xcodeproj/xcshareddata/xcdebugger/Breakpoints.xcbkptlist new file mode 100644 index 00000000..4567c767 --- /dev/null +++ b/GPGMail.xcodeproj/xcshareddata/xcdebugger/Breakpoints.xcbkptlist @@ -0,0 +1,5 @@ + + + diff --git a/GPGMail.xcodeproj/xcshareddata/xcschemes/GPGMail.xcscheme b/GPGMail.xcodeproj/xcshareddata/xcschemes/GPGMail.xcscheme new file mode 100644 index 00000000..4ed2f0c6 --- /dev/null +++ b/GPGMail.xcodeproj/xcshareddata/xcschemes/GPGMail.xcscheme @@ -0,0 +1,150 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/GPGMail.xcodeproj/xcshareddata/xcschemes/xcschememanagement.plist b/GPGMail.xcodeproj/xcshareddata/xcschemes/xcschememanagement.plist new file mode 100644 index 00000000..1c85ff4c --- /dev/null +++ b/GPGMail.xcodeproj/xcshareddata/xcschemes/xcschememanagement.plist @@ -0,0 +1,57 @@ + + + + + SchemeUserState + + GPG Snip.xcscheme + + orderHint + 4 + + GPGMail.xcscheme + + orderHint + 0 + + Run Mail.xcscheme + + orderHint + 3 + + Run in Mail.xcscheme + + orderHint + 2 + + + SuppressBuildableAutocreation + + 1B19E83A13A2AEA4002E59ED + + primary + + + 1BCD9A4813A8C6B5003024C7 + + primary + + + 1BCD9A5A13A8C761003024C7 + + primary + + + 1BCD9A6E13A8C9A5003024C7 + + primary + + + 8D5B49AC048680CD000E48DA + + primary + + + + + diff --git a/GPGMail/Dependencies/MacGPGME b/GPGMail/Dependencies/MacGPGME deleted file mode 160000 index e9cbfae3..00000000 --- a/GPGMail/Dependencies/MacGPGME +++ /dev/null @@ -1 +0,0 @@ -Subproject commit e9cbfae3b06727e8a556b413b6467a0e32e5e7e1 diff --git a/GPGMail/Documentation/DeveloperInfo.txt b/GPGMail/Documentation/DeveloperInfo.txt deleted file mode 100644 index 50088488..00000000 --- a/GPGMail/Documentation/DeveloperInfo.txt +++ /dev/null @@ -1,433 +0,0 @@ -How to compile GPGMail? -======================= -GPGMail sources come with a copy of the official MacGPGME source code. - -You need first to download and install libgpg-error and libgpgme. Read the -README in MacGPGME folder for instructions. Then you can compile GPGMail project, -which will compile MacGPGME sources too. - - -Release notes for v28: -* Corrected sync problem of public key list when changing viewed attributes -* Now checks presence of PGPmail -* Hash algorithm is set dynamically again -* No longer displays validity for secret keys, because not provided by gpg < 1.9 -* Enabled option to display full signature info immediately -* Was no longer verifying decrypted messages (except MIME, in most cases) -* Key search/download operations are now cancelable -* No longer displays warning icon when verified signature's signer has unknown validity - -Release notes for v29: -* Fingerprint is now always displayed formatted -* Added Spanish localization by Sergio Rodrguez Concha -* Added German localization by Hauke Mller -* Corrected localization errors -* Corrected crasher after downloading PGP keys -* Added French localization by Michel Poulain -* Better display of key validity in menus -* Corrected date localization -* Included binaries no longer have dependencies on external libraries - -Release notes for v30: -* Panther: corrected size of banner for single message viewers -* Removed debug logs -* Added GPGMEProxyServer crash recovery strategy -* Added Italian localization by Filippo Stefanelli -* Corrected GPGMEProxyServer zombies(?) -* Now Installer works also for /Network/Users(?) -* Better error messages at startup when invalid gpg engine -* Corrected "missing key" error message -* Corrected bug with expired keys -* Added partial Korean localization by Sangduk Park - -Release notes for v31: -* Allow coexistence of GPGMail and PGPmail: one warning (no forced quit), then forget conflict. -* No longer leaves orphans GPGMEProxyServer processes on quit or crash -* Corrected error message when gpg misses some algorithm -* Fixed resizing of fingerprint field in signature view -* Key search results sometimes didn't display correct names (problem with accents) -* Key search now displays "revoked" status in results -* Now refreshes keys each time a volume has been (un)mounted -* Added Finnish localization by Seppo Laaksonen -* Added Japanese localization by Kory Talmage -* Applied typographical rules to French localization -* Corrected some resizing errors - -Release notes for v32: -* Corrected installation problem with FileVault -* Corrected installation problem with /Network/Users/ -* Corrected problem with some keys which have ISOLatin1 string encoding for the userIDs, when decrypting/signing -* Now checks system version at installation and runtime -* Not compatible with gpg 1.3.x (key search is OK, but all other ops fail due to the "Comment:" header, even from 1.3 to 1.3 clients!) -* "Signed by (null)" GPGMail#2148+2107 + msg signed with gpg 1.3.3 => was due to bug in gpgme: does not return error for BADARMOR or CRC error - -Release notes for v33: -* Panther: My only complaint is that is tends to leave a 'Done' message in the status bar, which means any further messages Mail would show (e.g. when receiving or sending mail) are hidden. -> check that (GPGMail#2248) -* Added Korean localization by Sangduk Park -* Corrected double line breaks for "German umlaut" signed messages. Problem with CRLF? GPGMail#2123 -* Replying/forwarding a decrypted message no longer quotes encrypted message -* New FAQ: GPGMail preferences is not visible in some cases -* New FAQ: can I exchange PGP messages with Outlook people? -* New FAQ: why are all userIDs greyed out? I can't use them - -Release notes for v34: -* New icons by Michel Poulain (thanks also to Moritz Guth) -* Corrected default key selection restoration -* Corrected Spanish localization -* Corrected scrolling of signature banner title -* Jaguar: no longer fails to load 10.3-compiled version, but catches error and reports it to user -* New (hidden) option, GPGRefreshesKeysOnVolumeMount, to disable automatic refresh of keys when volume is (un)mounted; default value is YES. - -Release notes for v35: -* New (hidden) option, GPGDisablesSMIME, to totally disable S/MIME encryption/signature. Default value is NO. -* No longer considers text/plain attachments as potential PGP parts -* Fixed incompatibility with PGP7/Outlook: for encrypted messages, always uses content-transfer-encoding: 7bit - -Release notes for v36: -* When keychain passphrase was wrong, keychain item was not deleted -* Fixed v35 linking -* Corrected recognition of disabled/revoked secret/public keys -* User could select revoked private key -> signed message was empty -* NEW: if user shows all keys (no filter), then display key status (revoked/disabled/expired) -* NEW: extended key server list, like in GPGPreferences -* NEW: show alert when signer's key is revoked/disabled/... -* Fixed: if you select passphrase encryption then turn it back off, the signing option is unticked (when it should be ticked). -* New feature: after encryption failure due to missing keys, user can now select to send unencrypted -* Fixed: Panther: Account pulldown menu in composer window is randomly greyed. Happens as soon as changing account changes PGP key, from now on. -* 10.3: changed disclosure triangle in signature banner -* Compose window: warning icon is now displayed in popdown menu - -Release notes for v37 (1.0.2): -* Localized -* WWW: added access to old versions -* Added hidden option GPGUsesAlwaysCRLF to always use CRLF as line-ending for PGP-inline encryption/signing; default value is NO. -* Corrected recognition of disabled/revoked public keys in compose panel -* Fixed enabling/disabling of toolbar/menu items when multiple windows are open -* Fixed rare dead-lock at startup - -Release notes for v38: -* Fixed passphrase panel title when asking key for decryption -* Fixed Japanese translation (courtesy of Hiroshi Hakoyama) -* Fixed multiple display of revoked/invalid/expired/disabled in key description -* Fixed invalid display of revoked/invalid/expired/disabled when there was at least a valid subkey -* Fixed compatibility problem with Windows' EudoraGPG, thanks to Georg Wedemeyer -* Fixed Finish translation (courtesy of Asko Kauppi) -* Fixed case where invalid secret key was selected by default for signing, in case multiple secret with the same email address exist -* Added basic support for groups: you need to define groups in gpg.conf, which have the same name (and content!) as AB groups -* Now automatically encrypts reply to encrypted message, except when source message is in a detached viewer; new option GPGEncryptsReplyToEncryptedMessage -* When searching for matching public keys during composition of encrypted message, now displays ALL matching keys, not only the first one -* Added retrieval of people gpg options from their AB entry (set by Robert Goldsmith's ABKeyManager bundle) - not yet tested! -* No longer tries to use invalid secret key when encrypting -* Re-fixed bug with disabled-like sender account popup - -Release notes for v39: -* Now links to GPGME.framework; got rid of GPGMEProxyServer, because gpgme is now LGPL -* Much faster PGP operations, notably key listing -* Fixed bug with gpg group recognition -* Hidden option GPGEncryptsReplyToEncryptedMessage is now set to YES by default -* When a draft is restored, the encryption and signature states are restored too -* Added automatic gpg group synchronisation from AB groups, at startup, when keys are refreshed, or when AB changes -* Fixed problem with attachments having non-ASCII filenames: now these chars are replaced by '_', but that doesn't affect final filename, except maybe on old mail clients. -* Fixed bug with default private key which needed to be selected manually to get actually selected -* First Tiger release (based on 8A351) -* New option: encrypt if you can, but don't warn when missing keys (just disable encryption), except when one recipient explicitly wants encryption -* New feature: full use of options set in address book, with conflict resolution panel on delivery - -Release notes for v40: -* Fixed use of AB rules when replying to a message -* Key download panel now uses small widgets - -Release notes for v41: -* Tiger: fixed empty account/subject/cc bug -* Tiger: fixed GUI glitch in key search result panel -* In key search, revoked/expired keys are no longer selected by default and are also marked in red -* New layout of preferences panel, and tooltips for all items -* New public option: sign replies to signed messages -* New public option: encrypt replies to encrypted messages -* New public option: encrypt when all keys are available -* New option: use rules defined in AddressBook entries -* New public option: separate sign and encrypt operations (signature encapsulation) -* New public option: refresh key list when a volume is (un)mounted -* New public option: disable S/MIME -* In preferences panel, added refresh key list button -* If signer's key is chosen according to account and there is no match, message is not signed - -Release notes for v42 (1.1): -* Review rules engine according to Robert's scheme (fixes most reported issues) -* When selected account has no PGP key, and key is selected according to account, don't sign/encrypt -* Added Tiger-specific toolbar icons -* Now correctly recognizes revoked/disabled keys -* No longer reports wrongly a hash algo choice error instead of the unability to sign -* Only English, French, Finnish and German localizations are complete - -Release notes for v43: -* Changed keyboard shortcuts for sign/encrypt/decrypt/verify, using same as PGP, because our ones didn't work on Tiger anylonger -* Tiger: Fixed compatibility problem with Enigmail encrypted messages that could not get decrypted -* Fixed unlocalized error message NO_VALID_PRIVATE_KEY -* Tiger: added separator line to compose window (thanks to Felix Schaumburg) -* Changed pref text: reply to _PGP_ encrypted/signed -* Warning icon was no longer displayed when missing PGP keys -* Tiger: toolbar icons take less space now -* Tiger: Encryption/signing works again when performed from menu/toolbar buttons, without PGP buttons in composer -* Tiger: it was no longer possible to choose any PGP keys manually -* Spanish localization by Sergio Concha -* Finnish localization fix by Seppo Laaksonen -* Japanese localization by Tomio Arisaka -* Sender's PGP information (sign/encrypt/MIME) stored in AddressBook is no longer evaluated by rules -* When evaluating for reply/forwarded, don't use signed/encrypted information from S/MIME messages - -Release notes for v44 (1.1.1): -* Fixed German, Spanish, Finnish, Japanese localizations -* Added hidden option, GPGAddCustomHeaders -* Tiger: Fixed install on 10.4.1 and later -* Fixed alignment of some items in composer window -* Now links to MacGPGME dynamically, to avoid license problem -* ASCII signed messages: fixed problem with Usenet signatures -* Tiger: fixed auto-decryption/auto-verification of unread messages -* Tiger: fixed refresh problem of compose accessory view when To/CC fields get higher -* Tiger: fixed iPhoto problem -* Added Danish localization by Sebastian Adorjn Dyhr -* Fixed some ASCII signature verification problems -* Fixed UI bug when message is created by AppleScript -* Tiger: Fixed assertion failure when verifying messages -* Tiger: Was sometimes failing to report error - -Release notes for v45: -* Now fills in automatically PGP Key Download search field as soon as a key is missing (except when already performing search/import) -* Fixed passphrase encryption when signature was toggled on -* Fixed zombie on message delivery failure -* Fixed potential bug with NSBeginAlertSheet() message format -* Added Dutch localization by Marc-Siebren Kwadijk -* Now uses MacGPGME 1.1 -* Added hidden option, GPGOpenPGPExecutablePath -* Fixed uncaught exceptions when gpg not configured correctly -* Better error message when error related to specific key -* Better key server-related error messages (not yet localized though) -* Now accepts SHA-256, SHA-384 and SHA-512 hash algorithms -* Fixed compatibility-problem with MailTags -* Fixed crasher on Panther -* Mail no longer freezes when with using untrusted keys for encryption -* Fixed sorting of keys in key chooser dialog -* Fixed bug when "only if message is unread" prefs were followed (when checked) even when automatic decryption/authentication was unchecked -* Tiger: temporarily disabled display of PGP elements in composer window when window is created via AppleScript, to avoid unsolvable bug - you can still change PGP settings via menu Message/PGP. -* Fixed problem where encryption was not settable until signing had been set, in some cases. -* Tiger: built as Universal Binary (but not tested on Intel!) -* Danish, Dutch, Finish, Italian, Japanese, Korean and Spanish GPGMail.strings files need update -* Dutch nibs not fully localized - tooltips -* No longer tries to decrypt text/plain attachments -* Tries to decrypt/verify application/octet-stream attachments -* Now needs gpg 1.4.x - -Release notes for v46 (1.1.2): -* Changed some wordings on German version -* Fixed alignments on new message window -* Fixed (partly) some localizations - -Release notes for v47: -* Some more debug logs -* Fixed problem with GPGOpenPGPExecutablePath -BUG: if there are (older) versions of libgpgme-thread and libgpgerror in /usr/local/lib, they are used instead of the embedded ones, and might crash GPGMail => use static libs (problem with fat libs!) -* Fixed bug when sending signed+encrypted (ASCII) message with untrusted recipient, and GPGMail set to trust no key: an exception was logged, instead of being displayed to user. -* Fixed bug: was still signing when automatic signing but no matching account - -Release notes for v48: -* Fixed bug with manual choice of encryption keys: message might be sent without encryption/signature -* Added Swedish localization by Erik Hedlund - -Release notes for v49: -* First public beta running on Leopard (no Tiger release) -* Fixed bug: draft additional headers were not removed when message was delivered -* Fixed bug with manual choice of keys: choice was lost when displaying again key list -* Fixed bug with AppleScript-generated messages, and redisplayed PGP buttons - -Release notes for v50: -* Fixed dependency on /usr/local/bin/gpg (hash algo exception) -* Fixed positioning of compose accessory view - -Release notes for v51: -* Fixed bug with 'verbose' option in gpg.conf file -* Added new keyserver to list (SKS) -* Fixed toggle triangle state (showing/hiding the extended signature info) -* Fixed case where public key choice was still automatic even after user chose keys manually -* Fixed initial automatic choice of key according to account -* Fixed initial sign/encrypt settings, when they should be set by default -* Fixed grey banner bug displayed under PGP buttons, when message has been created by AppleScript -* Fixed bug with disabled toolbar items on detached viewers -* Fixed UI-compatibility problems with MailTags - -Release notes for v52: -* KeyServers.plist file was missing -* Fixed dead-lock in key search panel -* Fixed bug with non-English locales -* No longer supports Panther (10.3) -* Some menu items were relocated in their menu -* Enhanced key search panel automatic filling by adding sender's email (contained only missing key's fingerprint) -* New license: BSD -* Now on SourceForge.net - -Release notes for v53: -* (r3) Fixed regression bug in v52: does no longer recognize signatures after decryption, for ASCII (separate sig or not), and MIME (non-separate sig); for MIME/separate sig, sig is not seen automatically, but verifiable -* Was not able to search for keys, when only gpg2 was installed. -* Fixed bug when gpg not installed -* Now allows gpg-agent to be restarted -* Automatic verification after decryption should work again - -Release notes for v54: -* More information in case of General Error, when decrypting/verifying -* Updated all localizations - thanks to Guillaume Gandreau -* For ASCII encrypted/signed messages, enforces use of quoted-printable - more robust - Thanks to Greg A. Woods -* FIXED: Reply to a message, whose sender you have the public key, but whose recipients you miss some public keys; message should be encrypted; click on the reply all button; message should not be encrypted (missing keys), but it is! GPGMail doesn't reevaluate the addresses. -* Fixed edition of key presentation in Preferences/Misc (tableView) - -Release notes for v55: -* Corrections of the Swedish translation, courtesy of Mischa Hammarnejd -* CRITICAL: fixed compatibility with 10.5.6 (tested against 9G38); previous GPGMail releases crash under 10.5.6 - -Release notes for v56 (1.2.0): -* Corrections to the Spanish localization, courtesy of Charly -* Added support for (obsolete) Content-Type: application/pgp; format="text"... (e.g. emails from biglumber.com) -* Better recognition and decryption of encrypted parts/attachments (better compatibility with Outlook and others) -* Fixed localizations of dates -* Fixed French version - -Release notes for v57: -* Fixed French translation, courtesy of Franck Zoccolo -* No longer raises uncaught exception when trying to download no key -* Recognizes incorrect MIME encrypted messages generated by FireGPG < 0.7.1 -* Started support for Snow Leopard (10.6) - - -Bugs ----- -2299458 - Korean translation is incomplete -2299507 - Unable to forward decrypted message as decrypted attachment -2299525 - Unable to decrypt attached encrypted message -2299563 - PGP options not restored in drafts - still unable to; posing on ComposeBackEnd?? -2299636 - If encrypted message has associated TODO, then decrypting message masks TODO. Because can no longer make link from TODO to decrypted message? -2299681 - Decrypted message ends with gpgkeys error log -2299727 - when working offline, it may happen that a signature verification fails though signature is valid, in case there are attachments in message (except signature) -2299748 - "reply" mark is not set when you reply to a decrypted message from the singleMessageViewer only. -2299765 - "security header" not visible - - -FIXME (Leopard) No support for Time Machine: when navigating in Time Machine, PGP controls are not available, thus messages can't be decrypted. -FIXME Notice when GPGMail bundle has been installed in ~/Library and /Library -> avoid double-encryption -FIXME When performing keysearch, now that we use email+keyID, filter out keys that don't match keyID - special case when done automatically -FIXME When _receiving_ signed+encrypted message with attachment, GPGMail says it's unsigned -FIXME Multiple encrypted parts -TESTME Automatic decryption/verification - no deadlock? No. -FIXME HTML when no alternate -(FIXME Use key arrows in focussed decrypted message -> gets re-encrypted. Same when resizing window. But no problem when using page up/down buttons, nor space.) -- 10.5.5: seems OK -FIXME Sometimes a decrypted message is displayed in plain text instead of rich text - HOW TO REPRODUCE? -FIXME Crash when no secret key to decrypt, or cancelled password panel? Maybe automatic decryption? - HOW TO REPRODUCE? -FIXME Invalid signatures when contains all usenet sig + attachment? -FIXME Unable to decrypt encrypted attachments automatically - see Oct 23 2007 -FIXME With autoverification ON, when receiving a junk signed message, the junk banner disappears when signature banner is displayed -TODO If HTML encrypted message misses plain text alternative, decode HTML and decrypt it? -BUG Crash or infinite loop with auto-decryption of encrypted PGP inline message with encrypted attachment. -BUG Invalid signature (or verification?) in PGP-MIME messages containing usenet ('-- ') signatures; works in PGP-inline messages -BUG Sometimes OpenPGP-signed messages are generated with 2 empty lines after the 'Content-Type: multipart/alternative', instead of one, and some mail servers remove one of the empty lines, thus invalidating message signature - see Jim Syler, Mar 7 2006 -SOLVED Stack trace logs in console, due to MailTags; these exceptions are normally thrown and caught by GPGMail - - -? PENDING BUG: Was returning a "No data" error WITHOUT decrypting data when decrypting message which was also signed, and key was not available, AND automatic key search WAS enabled. If no automatic search, then decrypts but warns it is missing key. -> correct gpgme first; asked bug-gpgme. -??? Better problem reporting when using RSA key (signing) (GPGMail#2071+2244) -? Panther: disable S/MIME signing and encryption when PGP signing or encryption is enabled. GPGMail#2256 -TODO Use all known keyservers when verifying/searching -? "General Error" when using "by default use OpenPGP-MIME"? GPGMail#2297 - Unable to reproduce; similar to other problem GPGMail#2071?? Main key was missing uid. -BUG installer: sometimes the OS9 Mail is launched instead -> use com.apple.mail as app - -? New FAQ: PGP & S/MIME are incompatible formats -(? New FAQ: on 10.3, sig attachments are not shown) -(New FAQ: GPGMail/gpg 1.2.x stuck when encrypting) -New FAQ: How to remove undesired keys? -New FAQ: Internal error: *** subrange... -> multiple encrypted parts -New FAQ: timeout on keyserver operations + new GPGPreferences option -New FAQ: 'No data' when decrypting signed message without signer's key; fixed with 1.4.x? (use sign+encrypt in one op to verify) -New FAQ: more info about error message when hash algo not RFC3156 compliant + new option to accept it (with warning, once) -New FAQ: a disabled key CAN sign, but not encrypt, unless used with --encrypt-to or --hidden-encrypt-to -New FAQ: can I import/export keys? -New FAQ: can I exchange emails with non-GPGMail clients? -New FAQ: *-steps encryption - HOWTO -New FAQ: messages MUST be cached on client-side, else verifying MIME signature doesn't work -New FAQ: line wrapping param use -New FAQ: Some mail servers break OpenPGP-signed messages by reordering some header contents (Wannadoo or .mac) - see G. Pineau, Mar 8 2006 - -? KNOWN BUG: GPGMail doesn't support signing with RSA keys (old PGP keys). - -? Crash in gpgme:gpgme_op_keylist_start(); GPGMail#2418; seems it's a low memory condition crash -? NEW FEATURE: after encryption failure due to missing keys, user can now select to send unencrypted to missing keys, and encrypted to keys -> multiple messages -? Crash in gpgme:keylist_colon_handler(); GPGMail#2465 - forwarded to Markus Brinkmann -? NEW FEATURE: send owner's key -? NEW FEATURE: combine decrypt & verify menus/buttons, because only one can be active at the same time -? New: use .pkg and modify defaults for all users, in /Library/Preferences/ (see GPGMail#...) -? NEW FEATURE: add possibility to disable GPGMail (reenabled in prefs) -? BUG GPGMail#2112: after decryption, banner shows verification state, not signature/error state!!! Key's not found. -? BUG: invalid sig in discuss-gnustep#4362 -? 8bits chars are now allowed in SMTP -> remove assertions, if any, but only on receiving, because Mail still uses 7bit (except bug) -? NEW: for passphrase timeout in prefs, use special widget -? New: when reading clear-text PGP messages, use "Charset" PGP header when present. When encrypting, create that header. See RFC2440. Default is UTF-8. -? NEW: display keyID in long format -? NEW: when has only expired keys, suggest user to search for new key -? NEW: use text attachments to display more info about keys, e.g. in sig verif view display an icon next to signer to show trust. Do it wherever possible. -? BUG: some messages can't be verified by gpg 1.4, but are OK with gpg 1.2; see R. Goldsmith's messages. Related to new way of doing in gpg 1.4 AND bug (unstripped tailing spaces in messages) in GPGMail; new option in gpg 1.4.1 - -TODO Tolerate non RFC3156 hash algo, but warn user (and allow changing algo) -TODO Refactoring of prefs: regroup by theme, remove some? See Robert's email (encryptAll should be fully replaced by encryptWhenPossible?) -TODO In pref pane, add reference (+link?) to ABKey plug-in -TODO Add "Sign when recipients know PGP" (i.e. when there are PGP public keys for recipients) -TODO In key chooser, add new column 'Additional Info' that shows 'expired', 'revoked', etc. -TODO In key chooser, add new column ownertrust -TODO Review key chooser: make non modal, in panel; user can search for keys (search field like for address panel), display lot of info, D&D(?), and pass selected keys to mainWindow -> can choose for encryption, for export - -v39 -TODO In menu items, mark in red revoked/expired keys -(TODO Encryption progress panel: make it a sheet.) Impossible, because window is no longer displayed -BUG Invalid (created?) signatures when format=flowed in MIME(really??); needs gpg 1.4.1 special option (which one??) to avoid that. -BUG If AB entry says 'encrypt' or 'MIME' but there's no (valid or not) PGP key, ignore option -TODO Use the headers to show signature information? -TODO Show ownertrust info, with warning sign when owner not trusted -TODO Add option to automatically remove inline PGP signatures in replies. -BUG in Cocoa 10.4.2: impossible to type passphrase with composed characters, e.g. acute accent and e; no problem when keyboard provides accented character in one key press -TODO Disable S/MIME on a per-message basis, e.g. when PGP encryption/signing is on -BUG Automatic decryption fails often: still displays encrypted message -TODO Use Smart Crash Report (10.4 only?) -> create SOPE app -BUG Private key is actually unselected when it seems to be selected -> user might be unable to encrypt anything, due to rules -TODO In pref pane, add 'export config' button to gather GPGMail userDefaults -TODO No longer hide unusable keys, but explain why they are unusable, and prevent automatic choice -BUG GPGMail not invoked when message created automatically by rule (because no UI) -> should provide applescript, or intercept the delivery -TODO New toolbar button showing key caching state - clicking it clears cache (valid only for memory cache, not keychain) -TODO Warn when replying/forwarding unencrypted to encrypted message -(TODO Auto-decrypt when passphrase is in cache) -- unable to know that with gpg-agent -TODO New pref to not even show passphrase-disclosure checkbox in passphrase panel -TODO When showing signed message, display image in signer's key (if any) instead of sender's image (if any), with PGP icon/cert/padlock on it -(TODO New mailbundle for PGP timestamping service (http://www.itconsult.co.uk/stamper/stampinf.htm)) No longer active? Very old. -TODO Modify smart addresses tokens to display a PGP icon, when there is a key for the user; add PGP menu items too to the token popup menu - see AddressAttachment -BUG/TODO Signature encapsulation is done only for OpenPGP/MIME, not for inline-PGP - either implement it, or change tooltip in prefs -BUG Still too many gpg operations to retrieve keys: why is cache not used? -BUG Even reloading keys doesn't recognize new private keys? -TODO Automatic rules diagnosis available for user, i.e. display user all evaluated criteria -TODO In keyserver list, display which server is main, and allow user to change main. -TODO After user downloaded new keys, if current message failed to verify, relaunch message verification -TODO Toolbar button to toggle MIME/inline (when possible) -(TODO Can we now use progress info when encrypting? Not yet implemented with gpg 1.4.8/gpgme 1.4) -TODO When BCC is used and BCC keys are not in non-BCC keys, then issue warning; also, change the pref to simply turn off that warning. -BUG Sometimes OpenPGP-signed messages are generated with 2 empty lines after the 'Content-Type: multipart/alternative', instead of one, and some mail servers remove one of the empty lines, thus invalidating message signature - see Jim Syler, Mar 7 2006 - -Following entries should be checked: are these still bugs in v1.2.0? Maybe they are simply duplicates of existing bugs. - GPGMail tells decrypted messages are not signed, even when they are; you need to perform validation manually, using toolbar button or menu. - When arrow keys are used to navigate through messages, decrypted messages appear encrypted again. Same problem when resizing window. - On Leopard, sometimes validation of valid signature fails, when there is an attachment - Toolbar buttons are sometimes duplicated, when you have multiple viewers. - Toolbar buttons are sometimes lost or moved. - Appearance of encrypted mail attachments changes over time. - Returns error "No data" when cannot find missing signature key from key server, instead of telling which key cannot be found - Do not set message viewers splitview to a too small height, else PGP part becomes unreadable. - When decrypting a signed and encrypted message whose signer's key cannot be found, returns a "No data" error without decrypting message, if automatic key retrieval is enabled. - Does not support RSA keys for signing/encrypting (no problem when receiving a message) - Sometimes GPGMail fails to verify messages with format=flowed - Sometimes GPGMail fails to verify messages containing usenet signatures - When working offline, it may happen that a signature verification fails though signature is valid, in case there are attachments in message (except signature) - - -? OT: Charly's extras: detachable mailbox panel - keyboard shortcuts for rule creation - ability to add additional headers (x-...) diff --git a/GPGMail/Documentation/HISTORY b/GPGMail/Documentation/HISTORY deleted file mode 100644 index bf0e1b17..00000000 --- a/GPGMail/Documentation/HISTORY +++ /dev/null @@ -1,129 +0,0 @@ -1.0.2 May 14 2004 - New icons by Michel Poulain (thanks also to Moritz Guth) - Corrected default key selection restoration - Corrected Spanish localization - Corrected scrolling of signature banner title - 10.2: no longer fails to load 10.3-compiled version, but catches error and reports it to user - New (hidden) option, GPGRefreshesKeysOnVolumeMount, to disable automatic refresh of keys when volume is (un)mounted; default value is YES. - New (hidden) option, GPGDisablesSMIME, to totally disable S/MIME encryption/signature. Default value is NO. - No longer considers text/plain attachments as potential PGP parts - Fixed incompatibility with PGP7/Outlook: for encrypted messages, always uses content-transfer-encoding: 7bit - When keychain passphrase was wrong, keychain item was not deleted - Corrected recognition of disabled/revoked secret/public keys - User could select revoked private key -> signed message was empty - NEW: if user shows all keys (no filter), then display key status (revoked/disabled/expired) - NEW: extended key server list, like in GPGPreferences - NEW: show alert when signer's key is revoked/disabled/... - Fixed: if you select passphrase encryption then turn it back off, the signing option is unticked (when it should be ticked). - New feature: after encryption failure due to missing keys, user can now select to send unencrypted - Fixed: Panther: Account pulldown menu in composer window is randomly greyed. Happens as soon as changing account changes PGP key, from now on. - 10.3: changed disclosure triangle in signature banner - Compose window: warning icon is now displayed in popdown menu - Added hidden option GPGUsesAlwaysCRLF to always use CRLF as line-ending for PGP-inline encryption/signing; default value is NO. - Corrected recognition of disabled/revoked public keys in compose panel - Fixed enabling/disabling of toolbar/menu items when multiple windows are open - Fixed rare dead-lock at startup - Last release for 10.2.x -1.0.1 Nov 17 2003 - When PGPmail is installed, you're no longer forced to quit, but you're warned that it's at your own risks. - No longer leaves orphan GPGMEProxyServer processes on quit or crash - Corrected some error messages - Key search results sometimes didn't display correct names (problem with accents) - Key search now displays "revoked" status in results - Now refreshes keys each time a volume has been (un)mounted - Added Finnish localization by Seppo Laaksonen - Added Japanese localization by Kory Talmage - Applied typographical rules to French localization - Corrected some resizing errors - Corrected installation problem with FileVault - Corrected installation problem in /Network/Users/ - Corrected problem with some keys which have ISOLatin1 string encoding for the userIDs, when decrypting/signing - Installer checks now system version - No longer leaves a sticky "Done." message in the status view - Added Korean localization by Sangduk Park - Corrected problem with other mailers that added an empty line between each line when verifying/decrypting a PGP message - Replying/forwarding/redirecting a decrypted message now quotes the decrypted message -1.0 Oct 25 2003 - Completely reviewed code; now uses GPGME (indirectly) - Replaced most of modal dialogs by non-modal ones, la Junk Mail - Added support for KeyChain, thanks to Annard Brouwer - Added support for multiple secret keys - User can now choose private/public keys; automatically, or manually - Added symetric encryption support (encryption without key, only with shared passphrase) - Preferences panel has been completely revamped, with new options - New option: enable/disable trust of keys according to web-of-trust - New option: choose OpenPGP-MIME format; automatically, or manually - User can use BCC recipients too - Decryption of encrypted and signed messages no longer fails when when signature cannot be checked (missing key, etc.) - Corrected AppleScript incompatibility - New option: sign when encrypting - New option: decrypt/authenticate automatically only when message is unread - New option: in passphrase panel, you can display typed passphrase - When encrypting message, if you miss a key, GPGMail will try to find one on your default keyserver. - Added ability to search for keys on keyservers. - New option: line wrapping - New option: always encrypt - After computer sleep, passphrase timeout is now reset - Corrected Installer problem with path containing aliases/links - Corrected problem with format=flowed - Now checks presence of PGPmail - Hash algorithm is set according to your gpg preferences - Dropped support for 10.1 - Added support for 10.3 -0.5.4 Sep 10 2002 - Added Swedish translation from Daniel Aarno - Corrected bugs in passphrase panel behavior - Added Italian translation from Filippo Stefanelli - Removed creation of debug files in /tmp - Added Installer - Translated doc in French - Removed all files used only for old MacOS X Server (Rhapsody) - Corrected Korean translation - Ported to 10.2 - Contextual menu was not added if other GPGMail-based plug-ins were used - Decryption no longer adds an empty line - Corrected compatibility problem between contextual menu and other Mail plug-ins -0.5.3 Jun 23 2002 - Added Spanish translation from Sergio Rodrguez Concha - Added French translation from Michel Poulain - Added Japanese translation from Tomio Arisaka - Added beautiful icons from Michel Poulain - Modified "decrypted" icon, by Jamin Wilson - Added new userDefaults, GPGOpenPGPStyleOnly (default value is NO), - to force always using OpenPGP-style encryption/signing - Added clickable image to go to GPGMail's website - Added keyboard shortcut for escape button in passphrase dialog (corrects bug with Kotoeri input method) - Now checks if all attachments have been downloaded before decrypting - or authenticating - Corrected header decoding bug - Corrected signature bug - Added support for encapsulated signatures (RFC1847) - default mechanism - Added German translation from Hauke Mller - Added Danish translation from Thomas Dyhr - Corrected state of newly added toolbar buttons - Corrected problems due to charsets (no longer forces UTF8) - Added contextual menu for decryption/authentication - Corrected problems with attachments on decryption/authentication: now attachments are downloaded automatically when user asks for decryption or authentication. - Removed support for Rhapsody - Corrected compatibility problems with Sylpheed, Evolution - Corrected compatibility problem with MacOS X 10.1.5 - Added Korean translation from Sangduk Park - Added support for Entourage/Outlook/Eudora encrypted messages - Added basic support for HTML messages - Corrected problem with gpg 1.0.7: you no longer need to sign keys before using them for encryption. With gpg 1.0.6, you still need to: if you don't, encryption is refused. - Corrected problems with MailPriority >= 1.1 - -0.5.2 Nov 22 2001 - Port to MacOS X 10.1.x - Corrected numerous bugs with character sets - Added keyboard shortcuts - (no release for MacOS X Server 1.x) - -0.5.1 Sep 8 2001 - Port to MacOS X 10.0.x - Corrected bugs in the application of RFC 3156. - Corrected lots of other bugs... - Now uses iso-8859-1 as charset for signed parts - -0.5 Feb 7 2001 - Initial public release diff --git a/GPGMail/Documentation/LICENSE.txt b/GPGMail/Documentation/LICENSE.txt deleted file mode 100644 index 8b5e5a44..00000000 --- a/GPGMail/Documentation/LICENSE.txt +++ /dev/null @@ -1,35 +0,0 @@ -Copyright (c) 2000-2009, Stphane Corthsy -All rights reserved. -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of Stphane Corthsy nor the names of GPGMail - contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY -EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - -Note that some parts of the GPGMail distribution are under LGPL license: the MacGPGME framework, the gpg-error and gpgme libraries. The present license does not apply to these parts. - -MacGPGME, copyright 2001-2008 MacGPG Project -gpg-error, copyright 2005-2008 g10 Code GmbH -gpgme, copyright 2001-2008 g10 Code GmbH - - -Stphane Corthsy -stephane at sente ch diff --git a/GPGMail/Documentation/Smart.txt b/GPGMail/Documentation/Smart.txt deleted file mode 100644 index 48003b97..00000000 --- a/GPGMail/Documentation/Smart.txt +++ /dev/null @@ -1,66 +0,0 @@ -Smart PGP -========= - -User can set encryption/signing/OpenPGP default choice in preferences. He can override choices manually in composer window. Recipients can have settings too. -How to react to these settings? - -We reset the manual flag after a new recipient has been added. - -Encryption -Recipients Default Manual - - NO - -> NO - - NO NO -> NO - - NO YES -> YES - - YES - -> YES - - YES NO -> NO - - YES YES -> YES - NO NO - -> NO - NO NO NO -> NO - NO NO YES -> YES, but warn user on delivery - NO YES - -> NO - NO YES NO -> NO - NO YES YES -> YES, but warn user on delivery - YES NO - -> YES - YES NO NO -> NO, but warn user on delivery - YES NO YES -> YES - YES YES - -> YES - YES YES NO -> NO, but warn user on delivery - YES YES YES -> YES - YES+NO NO - -> YES, but warn user on delivery - YES+NO NO NO -> NO, but warn user on delivery - YES+NO NO YES -> YES, but warn user on delivery - YES+NO YES - -> YES, but warn user on delivery - YES+NO YES NO -> NO, but warn user on delivery - YES+NO YES YES -> YES, but warn user on delivery - - -Signature -Recipients Default Manual - NO NO NO -> - NO NO YES -> - NO YES NO -> - NO YES YES -> - YES NO NO -> - YES NO YES -> - YES YES NO -> - YES YES YES -> - YES+NO NO NO -> - YES+NO NO YES -> - YES+NO YES NO -> - YES+NO YES YES -> - -MIME -Recipients Default Manual - NO NO NO -> - NO NO YES -> - NO YES NO -> - NO YES YES -> - YES NO NO -> - YES NO YES -> - YES YES NO -> - YES YES YES -> - YES+NO NO NO -> - YES+NO NO YES -> - YES+NO YES NO -> - YES+NO YES YES -> - diff --git a/GPGMail/Documentation/ToDoList.txt b/GPGMail/Documentation/ToDoList.txt deleted file mode 100644 index 93b591ee..00000000 --- a/GPGMail/Documentation/ToDoList.txt +++ /dev/null @@ -1,187 +0,0 @@ -Todo list, and bugs -=================== - -KNOWN BUGS: -O signed plain: a line beginning with "--" is transformed to "- --" - This is not a bug; this is done by gpg. There is an option ib gpg to avoid this, but it should not be enabled for emails! -X When asked for a passphrase, if user enters a bad one, an alert panel is displayed, complaining about a SIGPIPE signal - The alert panel can be dismissed without any fear; everything worked well though. - Now exception is caught, and we display gpg error -X BCC users are never taken in account for encrypted files; their email address, thus PGP key, is not used for encryption - Now there is an option to use them -X It may happen that Mail.app/MailViewer.app displays PGP signatures using non-ASCII characters, but GPGMail never creates non-ASCII signatures/encrypted messages; this is a display problem. - There was a problem with quoted-printable -X In some circumstances, GPGMail is unable to decrypt MIME messages if your secret keyring contains more than one key. -X Forwarded/Replied mail is encrypted; does not happen if user double-clicked on message. -X Broken pipe exception if gpg cannot find public key; also in some unknown other cases!! - Exception is now caught, and gpg error is displayed. -X Customizing Compose toolbar: button state is not correct -- Passphrase panel: sometimes passphrase has not be forgotten and is redisplayed in panel. How to repeat?! -X On MOX, there's a message from Gordon I cannot verify (plain text) - I didn't get MimePart data correctly; it was no longer quoted-printable => contained 8-bit characters -- CHECK: Toolbar Items restoration: it may happen that order is not restored correctly: check stored indexes! -- CHECK: Toolbar buttons are sometimes duplicated, when you have multiple viewers. -X Create a MIME (multipart/alternative) message from forward/reply AND no rich text; encrypting it resulted in an ill-formed message (is missing subparts headers) - Seems there's a bug in Mail.app; see patch in -[Message(GPGMail) gpgEncryptWithIdentity:passphrase:recipients:signatureType:] -X If a message is signed and encrypted, and public key is not available, then decryption will fail. It should not! -X On MOX, with decrypted messages, user looses ability to click on hyperlinks (mailto, http, ...) - Changed invoked method to reload textView -X On MOX, appearance of encrypted MIME message in mailbox changes after first decryption: before, user sees two attachments (with label), after he sees only one (without label). Maybe a cache problem? -X On MOX, some URLs in message, containing =, are not correctly rendered: tries to decode quoted-printable sequence! - Corrected after I modified -[MimePart gpgBodyPart]... -X Compose window is not redrawn correctly when mail delivery fails - Now we redraw in an async way (delayed) -(- Following mails in GPGMail.mbox are unverifiable/undecryptable: 6 (missing key), 22 (missing key), 37 (Mulberry mail with 2 sigs), 110, 111) -X Some weird behaviors: - decrypts/authenticates previously selected message, but not current one - - first message authentication fails, without any message - These bugs were due to the non-thread-safetiness of GPGHandler... -- It happens that after having decrypted a message, the password panel appears again, during modal sheet; after this message can no longer be displayed in clear -X Annoying logs in console about toolbar items -X DOES NOT WORK AT ALL ON 10.1: it needs a LOT of work... (if ever possible) -X Some OpenPGP signed messages by GPGMailv13 are not verified by v13! (GPGMail#295) -X Some OpenPGP signed messages by mutt/PGPFreeware 5.0i/PGP 6.5.8 are not verified by v13! (GnuPG#191, 199, cf GPGMail#292, SourceForge#99, 100) -X It may happen that resulting encrypted message is empty! Problem with keys? We should check output length. -- In passphrase panel, pressing Return clicks OK, but pressing Escape does nothing except beeping + OK button is not the default one (due to a bug with Japanese font?) -X Installer: BSD package needs to have been installed, else defaults command is not available. - No longer uses defaults; now uses plistutil -X Need GPG.tiff in 32x32 -- Viewer: splitview min size should be updated for our banner(s) -- GPGMail#695 and GPGMail#694: fail - problem with header separator -(- Limitation: Recipient menu list not up-to-date until user quits edited textfield (To, CC, BCC)) -(- CHECK: When trying to sign with a revoked key, a "No Data" error is returned.) should no longer be possible now -X Installer: does not support links/aliases in path -- GPGMail#1567: double-line space -- Composer sign switch should be disabled when no valid signing key -- If a signed and/or encrypted message cannot be delivered immediately and resubmitted to user for delivery, message is signed/encrypted again. Problem: user can modify that signed/encrypted message before re-sending it! -X "I re-set the password cache clearing from 1 minute to 5. If I enter my password and sleep my laptop, when I open it the next time (it can be days later) the password is still cached." (GPGMail#1705) -- GPGMail#1683: problems when using armor - empty lines when decrypting -X ASCII: use displayed text, not raw text, because problems with line returns (format=flowed) -- Due to libgpgme, "comment" header in signature is lost; for a workaround, we can manually add it after signature creation (see Werner mail) -- Bug/limitation: when redirecting PGP-MIME signed/encrypted message, headers are transformed and message is no longer valid. Problem is that user is allowed to modify content, thus break signature/data. -- Returns error "No Data" after verification failure when key cannot be found; bug in gpgme... -- On 10.2, ordering of views is inversed -> all nibs according to 10.2, but on 10.3, bug has been corrected -> invalid order for GPGMail! See field fingerprint of signatureView, vs userIDs popdown -- 1.0.2: when verifying message discuss-gnustep, Jul 1, 2004, Frederik: -Internal error: -[NSFileWrapper setPreferredFilename:] *** preferredFilename cannot be empty. - - -Modifications: -- Add full compliance with RFC 3156 -X Better filtering of gpg error messages using GPGME -X Allows decrypted message forwarding/replying -X Replace state buttons in Compose toolbar with custom view containing 2 checkboxes; label is PGP. -X Automatic decrypt/verify only if message is unread -- Use sheet when asking passphrase (problem with thread!!!) -X Banner should be less high when displaying decrypted/authenticated: only one line (no "Signed by"). -X Add tooltip for icon in banner, when authenticated or decrypted ("Good signature. Message has not been altered.") -- In banner: move validity in upper pane, still as text -(- Signer popup: shows matching userID?) -X Better error message when GPGME has not correct gpg version. - - -New Features: -X Add command-key shortcuts -X Add contextual menu entries for MessageViewer -X Add support for multiple PGP identities -X Allow recipients choice -X Use Keychain Manager -- Customize display of signed/encrypted message (i.e. hide armor, etc) -- Do not display ----- PGP ----- headers (optional) -- Add full safe support for BCC recipients: multiple messages? -- Add support for partial encryption/signature (not the whole message) -- Full multithreading of encryption/decryption -(- Add support for S/MIME) -X Localization in different languages -- Read/write the following headers: - X-PGP-KeyID: shortKeyID - X-Request-PGP: http://url/to/get/publicKey - X-PGP-Key: 2048R/keyID/fingerprint -X Modify MIME version header: add (GPGMail 0.5.1v8), or add X-PGP-Agent: GPGMail 0.5.1v8 -X Allow user to set passphrase timeout -X Display (in toolbar or tableView) if message was authenticated, without modal panel; user can get more information in a drawer. If automatic, icon indicates "signed|correctly signed|bad sig" and the action is "show more sig info"; else icon indicates "signed|not signed" and the action is "verify". We could do like the Junk view which is located between the tableView and the textView -X If pubkey is not available when sending, automatic download via gpg -X Choose signing key according to account (optional) -- Installer: test if gpg exists (or propose download), if keys has been generated (or generate them), set com.apple.mail defaults, use Apple's installer -(- Allow automatic setting of keyserver (in options file, because of gpgme)) -X Read gpg options -> share code between GPGPreferences and GPGME to read options -X Always use Open-PGP style (optional) -X Do not display modal panel for sig authentication, but rather an icon in message; if user clicks it, more info (name, date, etc.) -- There is not enough support in email clients that I've seen for doing stuff like automatically rejecting or tagging messages signed with revoked certificates. -- In Composer, add icon next to headers if mail is signed and/or encrypted (a la Outlook) -- Control automatic signing by account -X Set OpenPGP/Inline format on a per-address basis (save this in AddressBook) - done by Robert Goldsmith's ABKeyManager bundle -X Add support for groups of addresses (use AddressBook) -- Use own defaults domain (see CFPreferences documentation; use suite) -- Add new column in tableView to show signed/authenticated (+sorting; use lock icon in KeychainManager) -- Installer: Allow installation for all users on the same host (seems we need to write our own 'defaults' tool; we need admin rights to modify /Library/Preferences/com.apple.mail.plist) -X For MIME signed messages, add the following header in the signature part (localized): - Content-Description: This is a digitally signed message part -X The attachment PGP.sig could also be renamed signature.sig, localized. -X Could we add the following header for the MIME attachments? - Content-Disposition: attachment; filename="XXX.pgp" -(- Asynchronous loading of keys) Now loaded only when strictly necessary -- Asynchronous decryption/verification/encryption => cancelable -X Check revocation/exp.date/invalid/disabled/can_encrypt in userID/subkey and filter out (opt.) such keys -X Display disabled/unselectable keys for expired/etc... keys. Also display icon in corresponding menuItem) -X Filter out untrusted keys (opt.) -X Use fingerprint for Keychain, and add userIDs as comment -- More info when decrypting message (which keys used for encryption, when encrypted, etc.) => ask gpgme -- Validity images: like a vertical progress bar. Ultimate = full + user head; marginal = half; never = empty; undefined = empty + question mark; unknown = question mark -- Use tempest-resistant font (--for-your-eyes-only) + add filter on top of viewing window -(- On install: auto-install toolbar items) No longer very useful -(- Pageout passphrase?) Wait for gpg-agent... -- Use sheet when asking for passphrase; on encryption, not possible because of encryption progress bar -X On delivery, search for missing keys (encryption) + add new menu items(?) -X When misses a key for encryption, display warning on delivery. -X In menus, display all userIDs, indented -(- Toolbar: never save toolbar config, or rewrite saving to avoid uninstall problem) No longer a problem on 10.2 :-) -- Display utility window as key inspector; reachable from menu items -- Cache signature + verification date (persistent??) -- Allow signature + symmetric encryption (currently disabled) -X Toolbar items: viewer: keep decrypt/verify; composer: use "Make encrypted"/"Make signed", which will toggle to "Make clear"/"Make unsigned", with icons reflecting future state. Keep accessory views. -X When listing keys, display also keyID (opt.) -- Optional: store messages as decrypted. In fact, allow indexing -- Add support for X-Request-PGP: gnupg-dev, W. Koch, 23.12.2002 - (put that info in AddressBook? See also GPGMail#1490) - On another topic: Due to problems with some of the keyservers, it - might not be possible to retrieve or refresh some keys; to work around - this, I suggest the use of a mail header to get the canonical address - of a key. This will most likely point to a web page, but other URL - schemes do also make sense. The proposed format of such a mail header - is: - - X-Request-PGP: - - For example, I use this one - - X-Request-PGP: finger:wk@g10code.com -- Check that "From" matches userID when signed(+encrypted?) -X When replying to encrypted mail, encrypt reply by default -X Reply encrypted/signed if message was encrypted/signed (opt.) -- If you receive a signed or/and encrypted message, does GPG get the key ID and in case of a reply use the same key ID for encrypting the reply? -X Website: give more information about Japanese/Korean/French links -X Website: give more information about localization: tell that GPGMail contains all localizations. -X Website: use direct links for MacGPG/FAQ - don't point to bottom of page -X New option: automatically sign when encrypting -- Allow use of filter rules -(- Display of decrypt/authenticate banner could be optional) -X By default, encrypt message -X Optional: show passphrase -O CHECK that attachments are named in Mail: first part of encrypted is NOT named (version header part). -X Save/restore encrypted/signed status of drafts messages -- Support multiple signatures on ASCII messages -- Support old-style encryption/signature + attachment, when receiving and sending, PLUS support multiple encryption parts (see GPGMail#1823) -X New option: change line wrapping length (userDefault: LineLength) -- Allow user to choose keychain (or default one) -- Display photoID -"still, without the ability to selectively encrypt sections of an e-mail, including nesting an already encrypted portion inside another, it is utterly worthless for several important applications of encrypted messages. I would urge the developer to move that functionality to the top of the list for future enhancements" -- Add AppleScript interface (prefs) -- option that allowed an unknown key to be skipped. By allowing an unknown key to be skipped, those addresses that have keys would be automatically encrypted, while those without keys would be able to go out unimpeded. -> when GPGMail fails to find all keys, it can either search for keys, send unencrypted (NEW) or cancel delivery. -- Once GPGMail supports verifying/decrypting multiple MIME parts in same message, allow signing attachments separatly, i.e. multiple PGP-MIME blocks, one per inline text, one per attachment, with separate signatures. -> we can extract signed attachment, but still have valid signature outside Mail. Plus global signature for message (-> no need to verify embedded parts; allow extraction of them with their signature). - -Misc: -(- Use images from KeychainManager) -? Change encoding use, as GPGHandler always expects UTF8 -? See classes MainThread, MessageViewingState, PasswordPanel -- Use Messageheader when creating headers, to avoid encoding problems -- Encryption + sig: use common panel for password + progress -- Modify attachment contextual menu diff --git a/GPGMail/Documentation/rfc2440.txt b/GPGMail/Documentation/rfc2440.txt deleted file mode 100644 index 82da085d..00000000 --- a/GPGMail/Documentation/rfc2440.txt +++ /dev/null @@ -1,3643 +0,0 @@ - - - - - - -Network Working Group J. Callas -Request for Comments: 2440 Network Associates -Category: Standards Track L. Donnerhacke - IN-Root-CA Individual Network e.V. - H. Finney - Network Associates - R. Thayer - EIS Corporation - November 1998 - - - OpenPGP Message Format - -Status of this Memo - - This document specifies an Internet standards track protocol for the - Internet community, and requests discussion and suggestions for - improvements. Please refer to the current edition of the "Internet - Official Protocol Standards" (STD 1) for the standardization state - and status of this protocol. Distribution of this memo is unlimited. - -Copyright Notice - - Copyright (C) The Internet Society (1998). All Rights Reserved. - -IESG Note - - This document defines many tag values, yet it doesn't describe a - mechanism for adding new tags (for new features). Traditionally the - Internet Assigned Numbers Authority (IANA) handles the allocation of - new values for future expansion and RFCs usually define the procedure - to be used by the IANA. However, there are subtle (and not so - subtle) interactions that may occur in this protocol between new - features and existing features which result in a significant - reduction in over all security. Therefore, this document does not - define an extension procedure. Instead requests to define new tag - values (say for new encryption algorithms for example) should be - forwarded to the IESG Security Area Directors for consideration or - forwarding to the appropriate IETF Working Group for consideration. - -Abstract - - This document is maintained in order to publish all necessary - information needed to develop interoperable applications based on the - OpenPGP format. It is not a step-by-step cookbook for writing an - application. It describes only the format and methods needed to read, - check, generate, and write conforming packets crossing any network. - It does not deal with storage and implementation questions. It does, - - - -Callas, et. al. Standards Track [Page 1] - -RFC 2440 OpenPGP Message Format November 1998 - - - however, discuss implementation issues necessary to avoid security - flaws. - - Open-PGP software uses a combination of strong public-key and - symmetric cryptography to provide security services for electronic - communications and data storage. These services include - confidentiality, key management, authentication, and digital - signatures. This document specifies the message formats used in - OpenPGP. - -Table of Contents - - Status of this Memo 1 - IESG Note 1 - Abstract 1 - Table of Contents 2 - 1. Introduction 4 - 1.1. Terms 5 - 2. General functions 5 - 2.1. Confidentiality via Encryption 5 - 2.2. Authentication via Digital signature 6 - 2.3. Compression 7 - 2.4. Conversion to Radix-64 7 - 2.5. Signature-Only Applications 7 - 3. Data Element Formats 7 - 3.1. Scalar numbers 8 - 3.2. Multi-Precision Integers 8 - 3.3. Key IDs 8 - 3.4. Text 8 - 3.5. Time fields 9 - 3.6. String-to-key (S2K) specifiers 9 - 3.6.1. String-to-key (S2k) specifier types 9 - 3.6.1.1. Simple S2K 9 - 3.6.1.2. Salted S2K 10 - 3.6.1.3. Iterated and Salted S2K 10 - 3.6.2. String-to-key usage 11 - 3.6.2.1. Secret key encryption 11 - 3.6.2.2. Symmetric-key message encryption 11 - 4. Packet Syntax 12 - 4.1. Overview 12 - 4.2. Packet Headers 12 - 4.2.1. Old-Format Packet Lengths 13 - 4.2.2. New-Format Packet Lengths 13 - 4.2.2.1. One-Octet Lengths 14 - 4.2.2.2. Two-Octet Lengths 14 - 4.2.2.3. Five-Octet Lengths 14 - 4.2.2.4. Partial Body Lengths 14 - 4.2.3. Packet Length Examples 14 - - - -Callas, et. al. Standards Track [Page 2] - -RFC 2440 OpenPGP Message Format November 1998 - - - 4.3. Packet Tags 15 - 5. Packet Types 16 - 5.1. Public-Key Encrypted Session Key Packets (Tag 1) 16 - 5.2. Signature Packet (Tag 2) 17 - 5.2.1. Signature Types 17 - 5.2.2. Version 3 Signature Packet Format 19 - 5.2.3. Version 4 Signature Packet Format 21 - 5.2.3.1. Signature Subpacket Specification 22 - 5.2.3.2. Signature Subpacket Types 24 - 5.2.3.3. Signature creation time 25 - 5.2.3.4. Issuer 25 - 5.2.3.5. Key expiration time 25 - 5.2.3.6. Preferred symmetric algorithms 25 - 5.2.3.7. Preferred hash algorithms 25 - 5.2.3.8. Preferred compression algorithms 26 - 5.2.3.9. Signature expiration time 26 - 5.2.3.10.Exportable Certification 26 - 5.2.3.11.Revocable 27 - 5.2.3.12.Trust signature 27 - 5.2.3.13.Regular expression 27 - 5.2.3.14.Revocation key 27 - 5.2.3.15.Notation Data 28 - 5.2.3.16.Key server preferences 28 - 5.2.3.17.Preferred key server 29 - 5.2.3.18.Primary user id 29 - 5.2.3.19.Policy URL 29 - 5.2.3.20.Key Flags 29 - 5.2.3.21.Signer's User ID 30 - 5.2.3.22.Reason for Revocation 30 - 5.2.4. Computing Signatures 31 - 5.2.4.1. Subpacket Hints 32 - 5.3. Symmetric-Key Encrypted Session-Key Packets (Tag 3) 32 - 5.4. One-Pass Signature Packets (Tag 4) 33 - 5.5. Key Material Packet 34 - 5.5.1. Key Packet Variants 34 - 5.5.1.1. Public Key Packet (Tag 6) 34 - 5.5.1.2. Public Subkey Packet (Tag 14) 34 - 5.5.1.3. Secret Key Packet (Tag 5) 35 - 5.5.1.4. Secret Subkey Packet (Tag 7) 35 - 5.5.2. Public Key Packet Formats 35 - 5.5.3. Secret Key Packet Formats 37 - 5.6. Compressed Data Packet (Tag 8) 38 - 5.7. Symmetrically Encrypted Data Packet (Tag 9) 39 - 5.8. Marker Packet (Obsolete Literal Packet) (Tag 10) 39 - 5.9. Literal Data Packet (Tag 11) 40 - 5.10. Trust Packet (Tag 12) 40 - 5.11. User ID Packet (Tag 13) 41 - 6. Radix-64 Conversions 41 - - - -Callas, et. al. Standards Track [Page 3] - -RFC 2440 OpenPGP Message Format November 1998 - - - 6.1. An Implementation of the CRC-24 in "C" 42 - 6.2. Forming ASCII Armor 42 - 6.3. Encoding Binary in Radix-64 44 - 6.4. Decoding Radix-64 46 - 6.5. Examples of Radix-64 46 - 6.6. Example of an ASCII Armored Message 47 - 7. Cleartext signature framework 47 - 7.1. Dash-Escaped Text 47 - 8. Regular Expressions 48 - 9. Constants 49 - 9.1. Public Key Algorithms 49 - 9.2. Symmetric Key Algorithms 49 - 9.3. Compression Algorithms 50 - 9.4. Hash Algorithms 50 - 10. Packet Composition 50 - 10.1. Transferable Public Keys 50 - 10.2. OpenPGP Messages 52 - 10.3. Detached Signatures 52 - 11. Enhanced Key Formats 52 - 11.1. Key Structures 52 - 11.2. Key IDs and Fingerprints 53 - 12. Notes on Algorithms 54 - 12.1. Symmetric Algorithm Preferences 54 - 12.2. Other Algorithm Preferences 55 - 12.2.1. Compression Preferences 56 - 12.2.2. Hash Algorithm Preferences 56 - 12.3. Plaintext 56 - 12.4. RSA 56 - 12.5. Elgamal 57 - 12.6. DSA 58 - 12.7. Reserved Algorithm Numbers 58 - 12.8. OpenPGP CFB mode 58 - 13. Security Considerations 59 - 14. Implementation Nits 60 - 15. Authors and Working Group Chair 62 - 16. References 63 - 17. Full Copyright Statement 65 - -1. Introduction - - This document provides information on the message-exchange packet - formats used by OpenPGP to provide encryption, decryption, signing, - and key management functions. It builds on the foundation provided in - RFC 1991 "PGP Message Exchange Formats." - - - - - - - -Callas, et. al. Standards Track [Page 4] - -RFC 2440 OpenPGP Message Format November 1998 - - -1.1. Terms - - * OpenPGP - This is a definition for security software that uses - PGP 5.x as a basis. - - * PGP - Pretty Good Privacy. PGP is a family of software systems - developed by Philip R. Zimmermann from which OpenPGP is based. - - * PGP 2.6.x - This version of PGP has many variants, hence the term - PGP 2.6.x. It used only RSA, MD5, and IDEA for its cryptographic - transforms. An informational RFC, RFC 1991, was written - describing this version of PGP. - - * PGP 5.x - This version of PGP is formerly known as "PGP 3" in the - community and also in the predecessor of this document, RFC 1991. - It has new formats and corrects a number of problems in the PGP - 2.6.x design. It is referred to here as PGP 5.x because that - software was the first release of the "PGP 3" code base. - - "PGP", "Pretty Good", and "Pretty Good Privacy" are trademarks of - Network Associates, Inc. and are used with permission. - - This document uses the terms "MUST", "SHOULD", and "MAY" as defined - in RFC 2119, along with the negated forms of those terms. - -2. General functions - - OpenPGP provides data integrity services for messages and data files - by using these core technologies: - - - digital signatures - - - encryption - - - compression - - - radix-64 conversion - - In addition, OpenPGP provides key management and certificate - services, but many of these are beyond the scope of this document. - -2.1. Confidentiality via Encryption - - OpenPGP uses two encryption methods to provide confidentiality: - symmetric-key encryption and public key encryption. With public-key - encryption, the object is encrypted using a symmetric encryption - algorithm. Each symmetric key is used only once. A new "session key" - is generated as a random number for each message. Since it is used - - - -Callas, et. al. Standards Track [Page 5] - -RFC 2440 OpenPGP Message Format November 1998 - - - only once, the session key is bound to the message and transmitted - with it. To protect the key, it is encrypted with the receiver's - public key. The sequence is as follows: - - 1. The sender creates a message. - - 2. The sending OpenPGP generates a random number to be used as a - session key for this message only. - - 3. The session key is encrypted using each recipient's public key. - These "encrypted session keys" start the message. - - 4. The sending OpenPGP encrypts the message using the session key, - which forms the remainder of the message. Note that the message - is also usually compressed. - - 5. The receiving OpenPGP decrypts the session key using the - recipient's private key. - - 6. The receiving OpenPGP decrypts the message using the session key. - If the message was compressed, it will be decompressed. - - With symmetric-key encryption, an object may be encrypted with a - symmetric key derived from a passphrase (or other shared secret), or - a two-stage mechanism similar to the public-key method described - above in which a session key is itself encrypted with a symmetric - algorithm keyed from a shared secret. - - Both digital signature and confidentiality services may be applied to - the same message. First, a signature is generated for the message and - attached to the message. Then, the message plus signature is - encrypted using a symmetric session key. Finally, the session key is - encrypted using public-key encryption and prefixed to the encrypted - block. - -2.2. Authentication via Digital signature - - The digital signature uses a hash code or message digest algorithm, - and a public-key signature algorithm. The sequence is as follows: - - 1. The sender creates a message. - - 2. The sending software generates a hash code of the message. - - 3. The sending software generates a signature from the hash code - using the sender's private key. - - 4. The binary signature is attached to the message. - - - -Callas, et. al. Standards Track [Page 6] - -RFC 2440 OpenPGP Message Format November 1998 - - - 5. The receiving software keeps a copy of the message signature. - - 6. The receiving software generates a new hash code for the - received message and verifies it using the message's signature. - If the verification is successful, the message is accepted as - authentic. - -2.3. Compression - - OpenPGP implementations MAY compress the message after applying the - signature but before encryption. - -2.4. Conversion to Radix-64 - - OpenPGP's underlying native representation for encrypted messages, - signature certificates, and keys is a stream of arbitrary octets. - Some systems only permit the use of blocks consisting of seven-bit, - printable text. For transporting OpenPGP's native raw binary octets - through channels that are not safe to raw binary data, a printable - encoding of these binary octets is needed. OpenPGP provides the - service of converting the raw 8-bit binary octet stream to a stream - of printable ASCII characters, called Radix-64 encoding or ASCII - Armor. - - Implementations SHOULD provide Radix-64 conversions. - - Note that many applications, particularly messaging applications, - will want more advanced features as described in the OpenPGP-MIME - document, RFC 2015. An application that implements OpenPGP for - messaging SHOULD implement OpenPGP-MIME. - -2.5. Signature-Only Applications - - OpenPGP is designed for applications that use both encryption and - signatures, but there are a number of problems that are solved by a - signature-only implementation. Although this specification requires - both encryption and signatures, it is reasonable for there to be - subset implementations that are non-comformant only in that they omit - encryption. - -3. Data Element Formats - - This section describes the data elements used by OpenPGP. - - - - - - - - -Callas, et. al. Standards Track [Page 7] - -RFC 2440 OpenPGP Message Format November 1998 - - -3.1. Scalar numbers - - Scalar numbers are unsigned, and are always stored in big-endian - format. Using n[k] to refer to the kth octet being interpreted, the - value of a two-octet scalar is ((n[0] << 8) + n[1]). The value of a - four-octet scalar is ((n[0] << 24) + (n[1] << 16) + (n[2] << 8) + - n[3]). - -3.2. Multi-Precision Integers - - Multi-Precision Integers (also called MPIs) are unsigned integers - used to hold large integers such as the ones used in cryptographic - calculations. - - An MPI consists of two pieces: a two-octet scalar that is the length - of the MPI in bits followed by a string of octets that contain the - actual integer. - - These octets form a big-endian number; a big-endian number can be - made into an MPI by prefixing it with the appropriate length. - - Examples: - - (all numbers are in hexadecimal) - - The string of octets [00 01 01] forms an MPI with the value 1. The - string [00 09 01 FF] forms an MPI with the value of 511. - - Additional rules: - - The size of an MPI is ((MPI.length + 7) / 8) + 2 octets. - - The length field of an MPI describes the length starting from its - most significant non-zero bit. Thus, the MPI [00 02 01] is not formed - correctly. It should be [00 01 01]. - -3.3. Key IDs - - A Key ID is an eight-octet scalar that identifies a key. - Implementations SHOULD NOT assume that Key IDs are unique. The - section, "Enhanced Key Formats" below describes how Key IDs are - formed. - -3.4. Text - - The default character set for text is the UTF-8 [RFC2279] encoding of - Unicode [ISO10646]. - - - - -Callas, et. al. Standards Track [Page 8] - -RFC 2440 OpenPGP Message Format November 1998 - - -3.5. Time fields - - A time field is an unsigned four-octet number containing the number - of seconds elapsed since midnight, 1 January 1970 UTC. - -3.6. String-to-key (S2K) specifiers - - String-to-key (S2K) specifiers are used to convert passphrase strings - into symmetric-key encryption/decryption keys. They are used in two - places, currently: to encrypt the secret part of private keys in the - private keyring, and to convert passphrases to encryption keys for - symmetrically encrypted messages. - -3.6.1. String-to-key (S2k) specifier types - - There are three types of S2K specifiers currently supported, as - follows: - -3.6.1.1. Simple S2K - - This directly hashes the string to produce the key data. See below - for how this hashing is done. - - Octet 0: 0x00 - Octet 1: hash algorithm - - Simple S2K hashes the passphrase to produce the session key. The - manner in which this is done depends on the size of the session key - (which will depend on the cipher used) and the size of the hash - algorithm's output. If the hash size is greater than or equal to the - session key size, the high-order (leftmost) octets of the hash are - used as the key. - - If the hash size is less than the key size, multiple instances of the - hash context are created -- enough to produce the required key data. - These instances are preloaded with 0, 1, 2, ... octets of zeros (that - is to say, the first instance has no preloading, the second gets - preloaded with 1 octet of zero, the third is preloaded with two - octets of zeros, and so forth). - - As the data is hashed, it is given independently to each hash - context. Since the contexts have been initialized differently, they - will each produce different hash output. Once the passphrase is - hashed, the output data from the multiple hashes is concatenated, - first hash leftmost, to produce the key data, with any excess octets - on the right discarded. - - - - - -Callas, et. al. Standards Track [Page 9] - -RFC 2440 OpenPGP Message Format November 1998 - - -3.6.1.2. Salted S2K - - This includes a "salt" value in the S2K specifier -- some arbitrary - data -- that gets hashed along with the passphrase string, to help - prevent dictionary attacks. - - Octet 0: 0x01 - Octet 1: hash algorithm - Octets 2-9: 8-octet salt value - - Salted S2K is exactly like Simple S2K, except that the input to the - hash function(s) consists of the 8 octets of salt from the S2K - specifier, followed by the passphrase. - -3.6.1.3. Iterated and Salted S2K - - This includes both a salt and an octet count. The salt is combined - with the passphrase and the resulting value is hashed repeatedly. - This further increases the amount of work an attacker must do to try - dictionary attacks. - - Octet 0: 0x03 - Octet 1: hash algorithm - Octets 2-9: 8-octet salt value - Octet 10: count, a one-octet, coded value - - The count is coded into a one-octet number using the following - formula: - - #define EXPBIAS 6 - count = ((Int32)16 + (c & 15)) << ((c >> 4) + EXPBIAS); - - The above formula is in C, where "Int32" is a type for a 32-bit - integer, and the variable "c" is the coded count, Octet 10. - - Iterated-Salted S2K hashes the passphrase and salt data multiple - times. The total number of octets to be hashed is specified in the - encoded count in the S2K specifier. Note that the resulting count - value is an octet count of how many octets will be hashed, not an - iteration count. - - Initially, one or more hash contexts are set up as with the other S2K - algorithms, depending on how many octets of key data are needed. - Then the salt, followed by the passphrase data is repeatedly hashed - until the number of octets specified by the octet count has been - hashed. The one exception is that if the octet count is less than - the size of the salt plus passphrase, the full salt plus passphrase - will be hashed even though that is greater than the octet count. - - - -Callas, et. al. Standards Track [Page 10] - -RFC 2440 OpenPGP Message Format November 1998 - - - After the hashing is done the data is unloaded from the hash - context(s) as with the other S2K algorithms. - -3.6.2. String-to-key usage - - Implementations SHOULD use salted or iterated-and-salted S2K - specifiers, as simple S2K specifiers are more vulnerable to - dictionary attacks. - -3.6.2.1. Secret key encryption - - An S2K specifier can be stored in the secret keyring to specify how - to convert the passphrase to a key that unlocks the secret data. - Older versions of PGP just stored a cipher algorithm octet preceding - the secret data or a zero to indicate that the secret data was - unencrypted. The MD5 hash function was always used to convert the - passphrase to a key for the specified cipher algorithm. - - For compatibility, when an S2K specifier is used, the special value - 255 is stored in the position where the hash algorithm octet would - have been in the old data structure. This is then followed - immediately by a one-octet algorithm identifier, and then by the S2K - specifier as encoded above. - - Therefore, preceding the secret data there will be one of these - possibilities: - - 0: secret data is unencrypted (no pass phrase) - 255: followed by algorithm octet and S2K specifier - Cipher alg: use Simple S2K algorithm using MD5 hash - - This last possibility, the cipher algorithm number with an implicit - use of MD5 and IDEA, is provided for backward compatibility; it MAY - be understood, but SHOULD NOT be generated, and is deprecated. - - These are followed by an 8-octet Initial Vector for the decryption of - the secret values, if they are encrypted, and then the secret key - values themselves. - -3.6.2.2. Symmetric-key message encryption - - OpenPGP can create a Symmetric-key Encrypted Session Key (ESK) packet - at the front of a message. This is used to allow S2K specifiers to - be used for the passphrase conversion or to create messages with a - mix of symmetric-key ESKs and public-key ESKs. This allows a message - to be decrypted either with a passphrase or a public key. - - - - - -Callas, et. al. Standards Track [Page 11] - -RFC 2440 OpenPGP Message Format November 1998 - - - PGP 2.X always used IDEA with Simple string-to-key conversion when - encrypting a message with a symmetric algorithm. This is deprecated, - but MAY be used for backward-compatibility. - -4. Packet Syntax - - This section describes the packets used by OpenPGP. - -4.1. Overview - - An OpenPGP message is constructed from a number of records that are - traditionally called packets. A packet is a chunk of data that has a - tag specifying its meaning. An OpenPGP message, keyring, certificate, - and so forth consists of a number of packets. Some of those packets - may contain other OpenPGP packets (for example, a compressed data - packet, when uncompressed, contains OpenPGP packets). - - Each packet consists of a packet header, followed by the packet body. - The packet header is of variable length. - -4.2. Packet Headers - - The first octet of the packet header is called the "Packet Tag." It - determines the format of the header and denotes the packet contents. - The remainder of the packet header is the length of the packet. - - Note that the most significant bit is the left-most bit, called bit - 7. A mask for this bit is 0x80 in hexadecimal. - - +---------------+ - PTag |7 6 5 4 3 2 1 0| - +---------------+ - Bit 7 -- Always one - Bit 6 -- New packet format if set - - PGP 2.6.x only uses old format packets. Thus, software that - interoperates with those versions of PGP must only use old format - packets. If interoperability is not an issue, either format may be - used. Note that old format packets have four bits of content tags, - and new format packets have six; some features cannot be used and - still be backward-compatible. - - Old format packets contain: - - Bits 5-2 -- content tag - Bits 1-0 - length-type - - - - - -Callas, et. al. Standards Track [Page 12] - -RFC 2440 OpenPGP Message Format November 1998 - - - New format packets contain: - - Bits 5-0 -- content tag - -4.2.1. Old-Format Packet Lengths - - The meaning of the length-type in old-format packets is: - - 0 - The packet has a one-octet length. The header is 2 octets long. - - 1 - The packet has a two-octet length. The header is 3 octets long. - - 2 - The packet has a four-octet length. The header is 5 octets long. - - 3 - The packet is of indeterminate length. The header is 1 octet - long, and the implementation must determine how long the packet - is. If the packet is in a file, this means that the packet - extends until the end of the file. In general, an implementation - SHOULD NOT use indeterminate length packets except where the end - of the data will be clear from the context, and even then it is - better to use a definite length, or a new-format header. The - new-format headers described below have a mechanism for precisely - encoding data of indeterminate length. - -4.2.2. New-Format Packet Lengths - - New format packets have four possible ways of encoding length: - - 1. A one-octet Body Length header encodes packet lengths of up to - 191 octets. - - 2. A two-octet Body Length header encodes packet lengths of 192 to - 8383 octets. - - 3. A five-octet Body Length header encodes packet lengths of up to - 4,294,967,295 (0xFFFFFFFF) octets in length. (This actually - encodes a four-octet scalar number.) - - 4. When the length of the packet body is not known in advance by the - issuer, Partial Body Length headers encode a packet of - indeterminate length, effectively making it a stream. - - - - - - - - - - -Callas, et. al. Standards Track [Page 13] - -RFC 2440 OpenPGP Message Format November 1998 - - -4.2.2.1. One-Octet Lengths - - A one-octet Body Length header encodes a length of from 0 to 191 - octets. This type of length header is recognized because the one - octet value is less than 192. The body length is equal to: - - bodyLen = 1st_octet; - -4.2.2.2. Two-Octet Lengths - - A two-octet Body Length header encodes a length of from 192 to 8383 - octets. It is recognized because its first octet is in the range 192 - to 223. The body length is equal to: - - bodyLen = ((1st_octet - 192) << 8) + (2nd_octet) + 192 - -4.2.2.3. Five-Octet Lengths - - A five-octet Body Length header consists of a single octet holding - the value 255, followed by a four-octet scalar. The body length is - equal to: - - bodyLen = (2nd_octet << 24) | (3rd_octet << 16) | - (4th_octet << 8) | 5th_octet - -4.2.2.4. Partial Body Lengths - - A Partial Body Length header is one octet long and encodes the length - of only part of the data packet. This length is a power of 2, from 1 - to 1,073,741,824 (2 to the 30th power). It is recognized by its one - octet value that is greater than or equal to 224, and less than 255. - The partial body length is equal to: - - partialBodyLen = 1 << (1st_octet & 0x1f); - - Each Partial Body Length header is followed by a portion of the - packet body data. The Partial Body Length header specifies this - portion's length. Another length header (of one of the three types -- - one octet, two-octet, or partial) follows that portion. The last - length header in the packet MUST NOT be a partial Body Length header. - Partial Body Length headers may only be used for the non-final parts - of the packet. - -4.2.3. Packet Length Examples - - These examples show ways that new-format packets might encode the - packet lengths. - - - - -Callas, et. al. Standards Track [Page 14] - -RFC 2440 OpenPGP Message Format November 1998 - - - A packet with length 100 may have its length encoded in one octet: - 0x64. This is followed by 100 octets of data. - - A packet with length 1723 may have its length coded in two octets: - 0xC5, 0xFB. This header is followed by the 1723 octets of data. - - A packet with length 100000 may have its length encoded in five - octets: 0xFF, 0x00, 0x01, 0x86, 0xA0. - - It might also be encoded in the following octet stream: 0xEF, first - 32768 octets of data; 0xE1, next two octets of data; 0xE0, next one - octet of data; 0xF0, next 65536 octets of data; 0xC5, 0xDD, last 1693 - octets of data. This is just one possible encoding, and many - variations are possible on the size of the Partial Body Length - headers, as long as a regular Body Length header encodes the last - portion of the data. Note also that the last Body Length header can - be a zero-length header. - - An implementation MAY use Partial Body Lengths for data packets, be - they literal, compressed, or encrypted. The first partial length MUST - be at least 512 octets long. Partial Body Lengths MUST NOT be used - for any other packet types. - - Please note that in all of these explanations, the total length of - the packet is the length of the header(s) plus the length of the - body. - -4.3. Packet Tags - - The packet tag denotes what type of packet the body holds. Note that - old format headers can only have tags less than 16, whereas new - format headers can have tags as great as 63. The defined tags (in - decimal) are: - - 0 -- Reserved - a packet tag must not have this value - 1 -- Public-Key Encrypted Session Key Packet - 2 -- Signature Packet - 3 -- Symmetric-Key Encrypted Session Key Packet - 4 -- One-Pass Signature Packet - 5 -- Secret Key Packet - 6 -- Public Key Packet - 7 -- Secret Subkey Packet - 8 -- Compressed Data Packet - 9 -- Symmetrically Encrypted Data Packet - 10 -- Marker Packet - 11 -- Literal Data Packet - 12 -- Trust Packet - - - - -Callas, et. al. Standards Track [Page 15] - -RFC 2440 OpenPGP Message Format November 1998 - - - 13 -- User ID Packet - 14 -- Public Subkey Packet - 60 to 63 -- Private or Experimental Values - -5. Packet Types - -5.1. Public-Key Encrypted Session Key Packets (Tag 1) - - A Public-Key Encrypted Session Key packet holds the session key used - to encrypt a message. Zero or more Encrypted Session Key packets - (either Public-Key or Symmetric-Key) may precede a Symmetrically - Encrypted Data Packet, which holds an encrypted message. The message - is encrypted with the session key, and the session key is itself - encrypted and stored in the Encrypted Session Key packet(s). The - Symmetrically Encrypted Data Packet is preceded by one Public-Key - Encrypted Session Key packet for each OpenPGP key to which the - message is encrypted. The recipient of the message finds a session - key that is encrypted to their public key, decrypts the session key, - and then uses the session key to decrypt the message. - - The body of this packet consists of: - - - A one-octet number giving the version number of the packet type. - The currently defined value for packet version is 3. An - implementation should accept, but not generate a version of 2, - which is equivalent to V3 in all other respects. - - - An eight-octet number that gives the key ID of the public key - that the session key is encrypted to. - - - A one-octet number giving the public key algorithm used. - - - A string of octets that is the encrypted session key. This string - takes up the remainder of the packet, and its contents are - dependent on the public key algorithm used. - - Algorithm Specific Fields for RSA encryption - - - multiprecision integer (MPI) of RSA encrypted value m**e mod n. - - Algorithm Specific Fields for Elgamal encryption: - - - MPI of Elgamal (Diffie-Hellman) value g**k mod p. - - - MPI of Elgamal (Diffie-Hellman) value m * y**k mod p. - - - - - - -Callas, et. al. Standards Track [Page 16] - -RFC 2440 OpenPGP Message Format November 1998 - - - The value "m" in the above formulas is derived from the session key - as follows. First the session key is prefixed with a one-octet - algorithm identifier that specifies the symmetric encryption - algorithm used to encrypt the following Symmetrically Encrypted Data - Packet. Then a two-octet checksum is appended which is equal to the - sum of the preceding session key octets, not including the algorithm - identifier, modulo 65536. This value is then padded as described in - PKCS-1 block type 02 [RFC2313] to form the "m" value used in the - formulas above. - - Note that when an implementation forms several PKESKs with one - session key, forming a message that can be decrypted by several keys, - the implementation MUST make new PKCS-1 padding for each key. - - An implementation MAY accept or use a Key ID of zero as a "wild card" - or "speculative" Key ID. In this case, the receiving implementation - would try all available private keys, checking for a valid decrypted - session key. This format helps reduce traffic analysis of messages. - -5.2. Signature Packet (Tag 2) - - A signature packet describes a binding between some public key and - some data. The most common signatures are a signature of a file or a - block of text, and a signature that is a certification of a user ID. - - Two versions of signature packets are defined. Version 3 provides - basic signature information, while version 4 provides an expandable - format with subpackets that can specify more information about the - signature. PGP 2.6.x only accepts version 3 signatures. - - Implementations MUST accept V3 signatures. Implementations SHOULD - generate V4 signatures. Implementations MAY generate a V3 signature - that can be verified by PGP 2.6.x. - - Note that if an implementation is creating an encrypted and signed - message that is encrypted to a V3 key, it is reasonable to create a - V3 signature. - -5.2.1. Signature Types - - There are a number of possible meanings for a signature, which are - specified in a signature type octet in any given signature. These - meanings are: - - 0x00: Signature of a binary document. - Typically, this means the signer owns it, created it, or - certifies that it has not been modified. - - - - -Callas, et. al. Standards Track [Page 17] - -RFC 2440 OpenPGP Message Format November 1998 - - - 0x01: Signature of a canonical text document. - Typically, this means the signer owns it, created it, or - certifies that it has not been modified. The signature is - calculated over the text data with its line endings converted - to and trailing blanks removed. - - 0x02: Standalone signature. - This signature is a signature of only its own subpacket - contents. It is calculated identically to a signature over a - zero-length binary document. Note that it doesn't make sense to - have a V3 standalone signature. - - 0x10: Generic certification of a User ID and Public Key packet. - The issuer of this certification does not make any particular - assertion as to how well the certifier has checked that the - owner of the key is in fact the person described by the user - ID. Note that all PGP "key signatures" are this type of - certification. - - 0x11: Persona certification of a User ID and Public Key packet. - The issuer of this certification has not done any verification - of the claim that the owner of this key is the user ID - specified. - - 0x12: Casual certification of a User ID and Public Key packet. - The issuer of this certification has done some casual - verification of the claim of identity. - - 0x13: Positive certification of a User ID and Public Key packet. - The issuer of this certification has done substantial - verification of the claim of identity. - - Please note that the vagueness of these certification claims is - not a flaw, but a feature of the system. Because PGP places - final authority for validity upon the receiver of a - certification, it may be that one authority's casual - certification might be more rigorous than some other - authority's positive certification. These classifications allow - a certification authority to issue fine-grained claims. - - 0x18: Subkey Binding Signature - This signature is a statement by the top-level signing key - indicates that it owns the subkey. This signature is calculated - directly on the subkey itself, not on any User ID or other - packets. - - - - - - -Callas, et. al. Standards Track [Page 18] - -RFC 2440 OpenPGP Message Format November 1998 - - - 0x1F: Signature directly on a key - This signature is calculated directly on a key. It binds the - information in the signature subpackets to the key, and is - appropriate to be used for subpackets that provide information - about the key, such as the revocation key subpacket. It is also - appropriate for statements that non-self certifiers want to - make about the key itself, rather than the binding between a - key and a name. - - 0x20: Key revocation signature - The signature is calculated directly on the key being revoked. - A revoked key is not to be used. Only revocation signatures by - the key being revoked, or by an authorized revocation key, - should be considered valid revocation signatures. - - 0x28: Subkey revocation signature - The signature is calculated directly on the subkey being - revoked. A revoked subkey is not to be used. Only revocation - signatures by the top-level signature key that is bound to this - subkey, or by an authorized revocation key, should be - considered valid revocation signatures. - - 0x30: Certification revocation signature - This signature revokes an earlier user ID certification - signature (signature class 0x10 through 0x13). It should be - issued by the same key that issued the revoked signature or an - authorized revocation key The signature should have a later - creation date than the signature it revokes. - - 0x40: Timestamp signature. - This signature is only meaningful for the timestamp contained - in it. - -5.2.2. Version 3 Signature Packet Format - - The body of a version 3 Signature Packet contains: - - - One-octet version number (3). - - - One-octet length of following hashed material. MUST be 5. - - - One-octet signature type. - - - Four-octet creation time. - - - Eight-octet key ID of signer. - - - One-octet public key algorithm. - - - -Callas, et. al. Standards Track [Page 19] - -RFC 2440 OpenPGP Message Format November 1998 - - - - One-octet hash algorithm. - - - Two-octet field holding left 16 bits of signed hash value. - - - One or more multi-precision integers comprising the signature. - This portion is algorithm specific, as described below. - - The data being signed is hashed, and then the signature type and - creation time from the signature packet are hashed (5 additional - octets). The resulting hash value is used in the signature - algorithm. The high 16 bits (first two octets) of the hash are - included in the signature packet to provide a quick test to reject - some invalid signatures. - - Algorithm Specific Fields for RSA signatures: - - - multiprecision integer (MPI) of RSA signature value m**d. - - Algorithm Specific Fields for DSA signatures: - - - MPI of DSA value r. - - - MPI of DSA value s. - - The signature calculation is based on a hash of the signed data, as - described above. The details of the calculation are different for - DSA signature than for RSA signatures. - - With RSA signatures, the hash value is encoded as described in PKCS-1 - section 10.1.2, "Data encoding", producing an ASN.1 value of type - DigestInfo, and then padded using PKCS-1 block type 01 [RFC2313]. - This requires inserting the hash value as an octet string into an - ASN.1 structure. The object identifier for the type of hash being - used is included in the structure. The hexadecimal representations - for the currently defined hash algorithms are: - - - MD2: 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x02, 0x02 - - - MD5: 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x02, 0x05 - - - RIPEMD-160: 0x2B, 0x24, 0x03, 0x02, 0x01 - - - SHA-1: 0x2B, 0x0E, 0x03, 0x02, 0x1A - - - - - - - - -Callas, et. al. Standards Track [Page 20] - -RFC 2440 OpenPGP Message Format November 1998 - - - The ASN.1 OIDs are: - - - MD2: 1.2.840.113549.2.2 - - - MD5: 1.2.840.113549.2.5 - - - RIPEMD-160: 1.3.36.3.2.1 - - - SHA-1: 1.3.14.3.2.26 - - The full hash prefixes for these are: - - MD2: 0x30, 0x20, 0x30, 0x0C, 0x06, 0x08, 0x2A, 0x86, - 0x48, 0x86, 0xF7, 0x0D, 0x02, 0x02, 0x05, 0x00, - 0x04, 0x10 - - MD5: 0x30, 0x20, 0x30, 0x0C, 0x06, 0x08, 0x2A, 0x86, - 0x48, 0x86, 0xF7, 0x0D, 0x02, 0x05, 0x05, 0x00, - 0x04, 0x10 - - RIPEMD-160: 0x30, 0x21, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x24, - 0x03, 0x02, 0x01, 0x05, 0x00, 0x04, 0x14 - - SHA-1: 0x30, 0x21, 0x30, 0x09, 0x06, 0x05, 0x2b, 0x0E, - 0x03, 0x02, 0x1A, 0x05, 0x00, 0x04, 0x14 - - DSA signatures MUST use hashes with a size of 160 bits, to match q, - the size of the group generated by the DSA key's generator value. - The hash function result is treated as a 160 bit number and used - directly in the DSA signature algorithm. - -5.2.3. Version 4 Signature Packet Format - - The body of a version 4 Signature Packet contains: - - - One-octet version number (4). - - - One-octet signature type. - - - One-octet public key algorithm. - - - One-octet hash algorithm. - - - Two-octet scalar octet count for following hashed subpacket - data. Note that this is the length in octets of all of the hashed - subpackets; a pointer incremented by this number will skip over - the hashed subpackets. - - - - -Callas, et. al. Standards Track [Page 21] - -RFC 2440 OpenPGP Message Format November 1998 - - - - Hashed subpacket data. (zero or more subpackets) - - - Two-octet scalar octet count for following unhashed subpacket - data. Note that this is the length in octets of all of the - unhashed subpackets; a pointer incremented by this number will - skip over the unhashed subpackets. - - - Unhashed subpacket data. (zero or more subpackets) - - - Two-octet field holding left 16 bits of signed hash value. - - - One or more multi-precision integers comprising the signature. - This portion is algorithm specific, as described above. - - The data being signed is hashed, and then the signature data from the - version number through the hashed subpacket data (inclusive) is - hashed. The resulting hash value is what is signed. The left 16 bits - of the hash are included in the signature packet to provide a quick - test to reject some invalid signatures. - - There are two fields consisting of signature subpackets. The first - field is hashed with the rest of the signature data, while the second - is unhashed. The second set of subpackets is not cryptographically - protected by the signature and should include only advisory - information. - - The algorithms for converting the hash function result to a signature - are described in a section below. - -5.2.3.1. Signature Subpacket Specification - - The subpacket fields consist of zero or more signature subpackets. - Each set of subpackets is preceded by a two-octet scalar count of the - length of the set of subpackets. - - Each subpacket consists of a subpacket header and a body. The header - consists of: - - - the subpacket length (1, 2, or 5 octets) - - - the subpacket type (1 octet) - - and is followed by the subpacket specific data. - - The length includes the type octet but not this length. Its format is - similar to the "new" format packet header lengths, but cannot have - partial body lengths. That is: - - - - -Callas, et. al. Standards Track [Page 22] - -RFC 2440 OpenPGP Message Format November 1998 - - - if the 1st octet < 192, then - lengthOfLength = 1 - subpacketLen = 1st_octet - - if the 1st octet >= 192 and < 255, then - lengthOfLength = 2 - subpacketLen = ((1st_octet - 192) << 8) + (2nd_octet) + 192 - - if the 1st octet = 255, then - lengthOfLength = 5 - subpacket length = [four-octet scalar starting at 2nd_octet] - - The value of the subpacket type octet may be: - - 2 = signature creation time - 3 = signature expiration time - 4 = exportable certification - 5 = trust signature - 6 = regular expression - 7 = revocable - 9 = key expiration time - 10 = placeholder for backward compatibility - 11 = preferred symmetric algorithms - 12 = revocation key - 16 = issuer key ID - 20 = notation data - 21 = preferred hash algorithms - 22 = preferred compression algorithms - 23 = key server preferences - 24 = preferred key server - 25 = primary user id - 26 = policy URL - 27 = key flags - 28 = signer's user id - 29 = reason for revocation - 100 to 110 = internal or user-defined - - An implementation SHOULD ignore any subpacket of a type that it does - not recognize. - - Bit 7 of the subpacket type is the "critical" bit. If set, it - denotes that the subpacket is one that is critical for the evaluator - of the signature to recognize. If a subpacket is encountered that is - marked critical but is unknown to the evaluating software, the - evaluator SHOULD consider the signature to be in error. - - - - - - -Callas, et. al. Standards Track [Page 23] - -RFC 2440 OpenPGP Message Format November 1998 - - - An evaluator may "recognize" a subpacket, but not implement it. The - purpose of the critical bit is to allow the signer to tell an - evaluator that it would prefer a new, unknown feature to generate an - error than be ignored. - - Implementations SHOULD implement "preferences". - -5.2.3.2. Signature Subpacket Types - - A number of subpackets are currently defined. Some subpackets apply - to the signature itself and some are attributes of the key. - Subpackets that are found on a self-signature are placed on a user id - certification made by the key itself. Note that a key may have more - than one user id, and thus may have more than one self-signature, and - differing subpackets. - - A self-signature is a binding signature made by the key the signature - refers to. There are three types of self-signatures, the - certification signatures (types 0x10-0x13), the direct-key signature - (type 0x1f), and the subkey binding signature (type 0x18). For - certification self-signatures, each user ID may have a self- - signature, and thus different subpackets in those self-signatures. - For subkey binding signatures, each subkey in fact has a self- - signature. Subpackets that appear in a certification self-signature - apply to the username, and subpackets that appear in the subkey - self-signature apply to the subkey. Lastly, subpackets on the direct - key signature apply to the entire key. - - Implementing software should interpret a self-signature's preference - subpackets as narrowly as possible. For example, suppose a key has - two usernames, Alice and Bob. Suppose that Alice prefers the - symmetric algorithm CAST5, and Bob prefers IDEA or Triple-DES. If the - software locates this key via Alice's name, then the preferred - algorithm is CAST5, if software locates the key via Bob's name, then - the preferred algorithm is IDEA. If the key is located by key id, - then algorithm of the default user id of the key provides the default - symmetric algorithm. - - A subpacket may be found either in the hashed or unhashed subpacket - sections of a signature. If a subpacket is not hashed, then the - information in it cannot be considered definitive because it is not - part of the signature proper. - - - - - - - - - -Callas, et. al. Standards Track [Page 24] - -RFC 2440 OpenPGP Message Format November 1998 - - -5.2.3.3. Signature creation time - - (4 octet time field) - - The time the signature was made. - - MUST be present in the hashed area. - -5.2.3.4. Issuer - - (8 octet key ID) - - The OpenPGP key ID of the key issuing the signature. - -5.2.3.5. Key expiration time - - (4 octet time field) - - The validity period of the key. This is the number of seconds after - the key creation time that the key expires. If this is not present - or has a value of zero, the key never expires. This is found only on - a self-signature. - -5.2.3.6. Preferred symmetric algorithms - - (sequence of one-octet values) - - Symmetric algorithm numbers that indicate which algorithms the key - holder prefers to use. The subpacket body is an ordered list of - octets with the most preferred listed first. It is assumed that only - algorithms listed are supported by the recipient's software. - Algorithm numbers in section 9. This is only found on a self- - signature. - -5.2.3.7. Preferred hash algorithms - - (array of one-octet values) - - Message digest algorithm numbers that indicate which algorithms the - key holder prefers to receive. Like the preferred symmetric - algorithms, the list is ordered. Algorithm numbers are in section 6. - This is only found on a self-signature. - - - - - - - - - -Callas, et. al. Standards Track [Page 25] - -RFC 2440 OpenPGP Message Format November 1998 - - -5.2.3.8. Preferred compression algorithms - - (array of one-octet values) - - Compression algorithm numbers that indicate which algorithms the key - holder prefers to use. Like the preferred symmetric algorithms, the - list is ordered. Algorithm numbers are in section 6. If this - subpacket is not included, ZIP is preferred. A zero denotes that - uncompressed data is preferred; the key holder's software might have - no compression software in that implementation. This is only found on - a self-signature. - -5.2.3.9. Signature expiration time - - (4 octet time field) - - The validity period of the signature. This is the number of seconds - after the signature creation time that the signature expires. If this - is not present or has a value of zero, it never expires. - -5.2.3.10. Exportable Certification - - (1 octet of exportability, 0 for not, 1 for exportable) - - This subpacket denotes whether a certification signature is - "exportable", to be used by other users than the signature's issuer. - The packet body contains a boolean flag indicating whether the - signature is exportable. If this packet is not present, the - certification is exportable; it is equivalent to a flag containing a - 1. - - Non-exportable, or "local", certifications are signatures made by a - user to mark a key as valid within that user's implementation only. - Thus, when an implementation prepares a user's copy of a key for - transport to another user (this is the process of "exporting" the - key), any local certification signatures are deleted from the key. - - The receiver of a transported key "imports" it, and likewise trims - any local certifications. In normal operation, there won't be any, - assuming the import is performed on an exported key. However, there - are instances where this can reasonably happen. For example, if an - implementation allows keys to be imported from a key database in - addition to an exported key, then this situation can arise. - - Some implementations do not represent the interest of a single user - (for example, a key server). Such implementations always trim local - certifications from any key they handle. - - - - -Callas, et. al. Standards Track [Page 26] - -RFC 2440 OpenPGP Message Format November 1998 - - -5.2.3.11. Revocable - - (1 octet of revocability, 0 for not, 1 for revocable) - - Signature's revocability status. Packet body contains a boolean flag - indicating whether the signature is revocable. Signatures that are - not revocable have any later revocation signatures ignored. They - represent a commitment by the signer that he cannot revoke his - signature for the life of his key. If this packet is not present, - the signature is revocable. - -5.2.3.12. Trust signature - - (1 octet "level" (depth), 1 octet of trust amount) - - Signer asserts that the key is not only valid, but also trustworthy, - at the specified level. Level 0 has the same meaning as an ordinary - validity signature. Level 1 means that the signed key is asserted to - be a valid trusted introducer, with the 2nd octet of the body - specifying the degree of trust. Level 2 means that the signed key is - asserted to be trusted to issue level 1 trust signatures, i.e. that - it is a "meta introducer". Generally, a level n trust signature - asserts that a key is trusted to issue level n-1 trust signatures. - The trust amount is in a range from 0-255, interpreted such that - values less than 120 indicate partial trust and values of 120 or - greater indicate complete trust. Implementations SHOULD emit values - of 60 for partial trust and 120 for complete trust. - -5.2.3.13. Regular expression - - (null-terminated regular expression) - - Used in conjunction with trust signature packets (of level > 0) to - limit the scope of trust that is extended. Only signatures by the - target key on user IDs that match the regular expression in the body - of this packet have trust extended by the trust signature subpacket. - The regular expression uses the same syntax as the Henry Spencer's - "almost public domain" regular expression package. A description of - the syntax is found in a section below. - -5.2.3.14. Revocation key - - (1 octet of class, 1 octet of algid, 20 octets of fingerprint) - - Authorizes the specified key to issue revocation signatures for this - key. Class octet must have bit 0x80 set. If the bit 0x40 is set, - then this means that the revocation information is sensitive. Other - bits are for future expansion to other kinds of authorizations. This - - - -Callas, et. al. Standards Track [Page 27] - -RFC 2440 OpenPGP Message Format November 1998 - - - is found on a self-signature. - - If the "sensitive" flag is set, the keyholder feels this subpacket - contains private trust information that describes a real-world - sensitive relationship. If this flag is set, implementations SHOULD - NOT export this signature to other users except in cases where the - data needs to be available: when the signature is being sent to the - designated revoker, or when it is accompanied by a revocation - signature from that revoker. Note that it may be appropriate to - isolate this subpacket within a separate signature so that it is not - combined with other subpackets that need to be exported. - -5.2.3.15. Notation Data - - (4 octets of flags, 2 octets of name length (M), - 2 octets of value length (N), - M octets of name data, - N octets of value data) - - This subpacket describes a "notation" on the signature that the - issuer wishes to make. The notation has a name and a value, each of - which are strings of octets. There may be more than one notation in a - signature. Notations can be used for any extension the issuer of the - signature cares to make. The "flags" field holds four octets of - flags. - - All undefined flags MUST be zero. Defined flags are: - - First octet: 0x80 = human-readable. This note is text, a note - from one person to another, and has no - meaning to software. - Other octets: none. - -5.2.3.16. Key server preferences - - (N octets of flags) - - This is a list of flags that indicate preferences that the key holder - has about how the key is handled on a key server. All undefined flags - MUST be zero. - - First octet: 0x80 = No-modify - the key holder requests that this key only be modified or updated - by the key holder or an administrator of the key server. - - This is found only on a self-signature. - - - - - -Callas, et. al. Standards Track [Page 28] - -RFC 2440 OpenPGP Message Format November 1998 - - -5.2.3.17. Preferred key server - - (String) - - This is a URL of a key server that the key holder prefers be used for - updates. Note that keys with multiple user ids can have a preferred - key server for each user id. Note also that since this is a URL, the - key server can actually be a copy of the key retrieved by ftp, http, - finger, etc. - -5.2.3.18. Primary user id - - (1 octet, boolean) - - This is a flag in a user id's self signature that states whether this - user id is the main user id for this key. It is reasonable for an - implementation to resolve ambiguities in preferences, etc. by - referring to the primary user id. If this flag is absent, its value - is zero. If more than one user id in a key is marked as primary, the - implementation may resolve the ambiguity in any way it sees fit. - -5.2.3.19. Policy URL - - (String) - - This subpacket contains a URL of a document that describes the policy - that the signature was issued under. - -5.2.3.20. Key Flags - - (Octet string) - - This subpacket contains a list of binary flags that hold information - about a key. It is a string of octets, and an implementation MUST NOT - assume a fixed size. This is so it can grow over time. If a list is - shorter than an implementation expects, the unstated flags are - considered to be zero. The defined flags are: - - First octet: - - 0x01 - This key may be used to certify other keys. - - 0x02 - This key may be used to sign data. - - 0x04 - This key may be used to encrypt communications. - - 0x08 - This key may be used to encrypt storage. - - - - -Callas, et. al. Standards Track [Page 29] - -RFC 2440 OpenPGP Message Format November 1998 - - - 0x10 - The private component of this key may have been split by a - secret-sharing mechanism. - - 0x80 - The private component of this key may be in the possession - of more than one person. - - Usage notes: - - The flags in this packet may appear in self-signatures or in - certification signatures. They mean different things depending on who - is making the statement -- for example, a certification signature - that has the "sign data" flag is stating that the certification is - for that use. On the other hand, the "communications encryption" flag - in a self-signature is stating a preference that a given key be used - for communications. Note however, that it is a thorny issue to - determine what is "communications" and what is "storage." This - decision is left wholly up to the implementation; the authors of this - document do not claim any special wisdom on the issue, and realize - that accepted opinion may change. - - The "split key" (0x10) and "group key" (0x80) flags are placed on a - self-signature only; they are meaningless on a certification - signature. They SHOULD be placed only on a direct-key signature (type - 0x1f) or a subkey signature (type 0x18), one that refers to the key - the flag applies to. - -5.2.3.21. Signer's User ID - - This subpacket allows a keyholder to state which user id is - responsible for the signing. Many keyholders use a single key for - different purposes, such as business communications as well as - personal communications. This subpacket allows such a keyholder to - state which of their roles is making a signature. - -5.2.3.22. Reason for Revocation - - (1 octet of revocation code, N octets of reason string) - - This subpacket is used only in key revocation and certification - revocation signatures. It describes the reason why the key or - certificate was revoked. - - The first octet contains a machine-readable code that denotes the - reason for the revocation: - - - - - - - -Callas, et. al. Standards Track [Page 30] - -RFC 2440 OpenPGP Message Format November 1998 - - - 0x00 - No reason specified (key revocations or cert revocations) - 0x01 - Key is superceded (key revocations) - 0x02 - Key material has been compromised (key revocations) - 0x03 - Key is no longer used (key revocations) - 0x20 - User id information is no longer valid (cert revocations) - - Following the revocation code is a string of octets which gives - information about the reason for revocation in human-readable form - (UTF-8). The string may be null, that is, of zero length. The length - of the subpacket is the length of the reason string plus one. - -5.2.4. Computing Signatures - - All signatures are formed by producing a hash over the signature - data, and then using the resulting hash in the signature algorithm. - - The signature data is simple to compute for document signatures - (types 0x00 and 0x01), for which the document itself is the data. - For standalone signatures, this is a null string. - - When a signature is made over a key, the hash data starts with the - octet 0x99, followed by a two-octet length of the key, and then body - of the key packet. (Note that this is an old-style packet header for - a key packet with two-octet length.) A subkey signature (type 0x18) - then hashes the subkey, using the same format as the main key. Key - revocation signatures (types 0x20 and 0x28) hash only the key being - revoked. - - A certification signature (type 0x10 through 0x13) hashes the user id - being bound to the key into the hash context after the above data. A - V3 certification hashes the contents of the name packet, without any - header. A V4 certification hashes the constant 0xb4 (which is an - old-style packet header with the length-of-length set to zero), a - four-octet number giving the length of the username, and then the - username data. - - Once the data body is hashed, then a trailer is hashed. A V3 - signature hashes five octets of the packet body, starting from the - signature type field. This data is the signature type, followed by - the four-octet signature time. A V4 signature hashes the packet body - starting from its first field, the version number, through the end of - the hashed subpacket data. Thus, the fields hashed are the signature - version, the signature type, the public key algorithm, the hash - algorithm, the hashed subpacket length, and the hashed subpacket - body. - - - - - - -Callas, et. al. Standards Track [Page 31] - -RFC 2440 OpenPGP Message Format November 1998 - - - V4 signatures also hash in a final trailer of six octets: the version - of the signature packet, i.e. 0x04; 0xFF; a four-octet, big-endian - number that is the length of the hashed data from the signature - packet (note that this number does not include these final six - octets. - - After all this has been hashed, the resulting hash field is used in - the signature algorithm, and placed at the end of the signature - packet. - -5.2.4.1. Subpacket Hints - - An implementation SHOULD put the two mandatory subpackets, creation - time and issuer, as the first subpackets in the subpacket list, - simply to make it easier for the implementer to find them. - - It is certainly possible for a signature to contain conflicting - information in subpackets. For example, a signature may contain - multiple copies of a preference or multiple expiration times. In most - cases, an implementation SHOULD use the last subpacket in the - signature, but MAY use any conflict resolution scheme that makes more - sense. Please note that we are intentionally leaving conflict - resolution to the implementer; most conflicts are simply syntax - errors, and the wishy-washy language here allows a receiver to be - generous in what they accept, while putting pressure on a creator to - be stingy in what they generate. - - Some apparent conflicts may actually make sense -- for example, - suppose a keyholder has an V3 key and a V4 key that share the same - RSA key material. Either of these keys can verify a signature created - by the other, and it may be reasonable for a signature to contain an - issuer subpacket for each key, as a way of explicitly tying those - keys to the signature. - -5.3. Symmetric-Key Encrypted Session-Key Packets (Tag 3) - - The Symmetric-Key Encrypted Session Key packet holds the symmetric- - key encryption of a session key used to encrypt a message. Zero or - more Encrypted Session Key packets and/or Symmetric-Key Encrypted - Session Key packets may precede a Symmetrically Encrypted Data Packet - that holds an encrypted message. The message is encrypted with a - session key, and the session key is itself encrypted and stored in - the Encrypted Session Key packet or the Symmetric-Key Encrypted - Session Key packet. - - If the Symmetrically Encrypted Data Packet is preceded by one or more - Symmetric-Key Encrypted Session Key packets, each specifies a - passphrase that may be used to decrypt the message. This allows a - - - -Callas, et. al. Standards Track [Page 32] - -RFC 2440 OpenPGP Message Format November 1998 - - - message to be encrypted to a number of public keys, and also to one - or more pass phrases. This packet type is new, and is not generated - by PGP 2.x or PGP 5.0. - - The body of this packet consists of: - - - A one-octet version number. The only currently defined version - is 4. - - - A one-octet number describing the symmetric algorithm used. - - - A string-to-key (S2K) specifier, length as defined above. - - - Optionally, the encrypted session key itself, which is decrypted - with the string-to-key object. - - If the encrypted session key is not present (which can be detected on - the basis of packet length and S2K specifier size), then the S2K - algorithm applied to the passphrase produces the session key for - decrypting the file, using the symmetric cipher algorithm from the - Symmetric-Key Encrypted Session Key packet. - - If the encrypted session key is present, the result of applying the - S2K algorithm to the passphrase is used to decrypt just that - encrypted session key field, using CFB mode with an IV of all zeros. - The decryption result consists of a one-octet algorithm identifier - that specifies the symmetric-key encryption algorithm used to encrypt - the following Symmetrically Encrypted Data Packet, followed by the - session key octets themselves. - - Note: because an all-zero IV is used for this decryption, the S2K - specifier MUST use a salt value, either a Salted S2K or an Iterated- - Salted S2K. The salt value will insure that the decryption key is - not repeated even if the passphrase is reused. - -5.4. One-Pass Signature Packets (Tag 4) - - The One-Pass Signature packet precedes the signed data and contains - enough information to allow the receiver to begin calculating any - hashes needed to verify the signature. It allows the Signature - Packet to be placed at the end of the message, so that the signer can - compute the entire signed message in one pass. - - A One-Pass Signature does not interoperate with PGP 2.6.x or earlier. - - The body of this packet consists of: - - - - - -Callas, et. al. Standards Track [Page 33] - -RFC 2440 OpenPGP Message Format November 1998 - - - - A one-octet version number. The current version is 3. - - - A one-octet signature type. Signature types are described in - section 5.2.1. - - - A one-octet number describing the hash algorithm used. - - - A one-octet number describing the public key algorithm used. - - - An eight-octet number holding the key ID of the signing key. - - - A one-octet number holding a flag showing whether the signature - is nested. A zero value indicates that the next packet is - another One-Pass Signature packet that describes another - signature to be applied to the same message data. - - Note that if a message contains more than one one-pass signature, - then the signature packets bracket the message; that is, the first - signature packet after the message corresponds to the last one-pass - packet and the final signature packet corresponds to the first one- - pass packet. - -5.5. Key Material Packet - - A key material packet contains all the information about a public or - private key. There are four variants of this packet type, and two - major versions. Consequently, this section is complex. - -5.5.1. Key Packet Variants - -5.5.1.1. Public Key Packet (Tag 6) - - A Public Key packet starts a series of packets that forms an OpenPGP - key (sometimes called an OpenPGP certificate). - -5.5.1.2. Public Subkey Packet (Tag 14) - - A Public Subkey packet (tag 14) has exactly the same format as a - Public Key packet, but denotes a subkey. One or more subkeys may be - associated with a top-level key. By convention, the top-level key - provides signature services, and the subkeys provide encryption - services. - - Note: in PGP 2.6.x, tag 14 was intended to indicate a comment packet. - This tag was selected for reuse because no previous version of PGP - ever emitted comment packets but they did properly ignore them. - Public Subkey packets are ignored by PGP 2.6.x and do not cause it to - fail, providing a limited degree of backward compatibility. - - - -Callas, et. al. Standards Track [Page 34] - -RFC 2440 OpenPGP Message Format November 1998 - - -5.5.1.3. Secret Key Packet (Tag 5) - - A Secret Key packet contains all the information that is found in a - Public Key packet, including the public key material, but also - includes the secret key material after all the public key fields. - -5.5.1.4. Secret Subkey Packet (Tag 7) - - A Secret Subkey packet (tag 7) is the subkey analog of the Secret Key - packet, and has exactly the same format. - -5.5.2. Public Key Packet Formats - - There are two versions of key-material packets. Version 3 packets - were first generated by PGP 2.6. Version 2 packets are identical in - format to Version 3 packets, but are generated by PGP 2.5 or before. - V2 packets are deprecated and they MUST NOT be generated. PGP 5.0 - introduced version 4 packets, with new fields and semantics. PGP - 2.6.x will not accept key-material packets with versions greater than - 3. - - OpenPGP implementations SHOULD create keys with version 4 format. An - implementation MAY generate a V3 key to ensure interoperability with - old software; note, however, that V4 keys correct some security - deficiencies in V3 keys. These deficiencies are described below. An - implementation MUST NOT create a V3 key with a public key algorithm - other than RSA. - - A version 3 public key or public subkey packet contains: - - - A one-octet version number (3). - - - A four-octet number denoting the time that the key was created. - - - A two-octet number denoting the time in days that this key is - valid. If this number is zero, then it does not expire. - - - A one-octet number denoting the public key algorithm of this key - - - A series of multi-precision integers comprising the key - material: - - - a multiprecision integer (MPI) of RSA public modulus n; - - - an MPI of RSA public encryption exponent e. - - - - - - -Callas, et. al. Standards Track [Page 35] - -RFC 2440 OpenPGP Message Format November 1998 - - - V3 keys SHOULD only be used for backward compatibility because of - three weaknesses in them. First, it is relatively easy to construct a - V3 key that has the same key ID as any other key because the key ID - is simply the low 64 bits of the public modulus. Secondly, because - the fingerprint of a V3 key hashes the key material, but not its - length, which increases the opportunity for fingerprint collisions. - Third, there are minor weaknesses in the MD5 hash algorithm that make - developers prefer other algorithms. See below for a fuller discussion - of key IDs and fingerprints. - - The version 4 format is similar to the version 3 format except for - the absence of a validity period. This has been moved to the - signature packet. In addition, fingerprints of version 4 keys are - calculated differently from version 3 keys, as described in section - "Enhanced Key Formats." - - A version 4 packet contains: - - - A one-octet version number (4). - - - A four-octet number denoting the time that the key was created. - - - A one-octet number denoting the public key algorithm of this key - - - A series of multi-precision integers comprising the key - material. This algorithm-specific portion is: - - Algorithm Specific Fields for RSA public keys: - - - multiprecision integer (MPI) of RSA public modulus n; - - - MPI of RSA public encryption exponent e. - - Algorithm Specific Fields for DSA public keys: - - - MPI of DSA prime p; - - - MPI of DSA group order q (q is a prime divisor of p-1); - - - MPI of DSA group generator g; - - - MPI of DSA public key value y (= g**x where x is secret). - - Algorithm Specific Fields for Elgamal public keys: - - - MPI of Elgamal prime p; - - - MPI of Elgamal group generator g; - - - -Callas, et. al. Standards Track [Page 36] - -RFC 2440 OpenPGP Message Format November 1998 - - - - MPI of Elgamal public key value y (= g**x where x is - secret). - -5.5.3. Secret Key Packet Formats - - The Secret Key and Secret Subkey packets contain all the data of the - Public Key and Public Subkey packets, with additional algorithm- - specific secret key data appended, in encrypted form. - - The packet contains: - - - A Public Key or Public Subkey packet, as described above - - - One octet indicating string-to-key usage conventions. 0 - indicates that the secret key data is not encrypted. 255 - indicates that a string-to-key specifier is being given. Any - other value is a symmetric-key encryption algorithm specifier. - - - [Optional] If string-to-key usage octet was 255, a one-octet - symmetric encryption algorithm. - - - [Optional] If string-to-key usage octet was 255, a string-to-key - specifier. The length of the string-to-key specifier is implied - by its type, as described above. - - - [Optional] If secret data is encrypted, eight-octet Initial - Vector (IV). - - - Encrypted multi-precision integers comprising the secret key - data. These algorithm-specific fields are as described below. - - - Two-octet checksum of the plaintext of the algorithm-specific - portion (sum of all octets, mod 65536). - - Algorithm Specific Fields for RSA secret keys: - - - multiprecision integer (MPI) of RSA secret exponent d. - - - MPI of RSA secret prime value p. - - - MPI of RSA secret prime value q (p < q). - - - MPI of u, the multiplicative inverse of p, mod q. - - Algorithm Specific Fields for DSA secret keys: - - - MPI of DSA secret exponent x. - - - - -Callas, et. al. Standards Track [Page 37] - -RFC 2440 OpenPGP Message Format November 1998 - - - Algorithm Specific Fields for Elgamal secret keys: - - - MPI of Elgamal secret exponent x. - - Secret MPI values can be encrypted using a passphrase. If a string- - to-key specifier is given, that describes the algorithm for - converting the passphrase to a key, else a simple MD5 hash of the - passphrase is used. Implementations SHOULD use a string-to-key - specifier; the simple hash is for backward compatibility. The cipher - for encrypting the MPIs is specified in the secret key packet. - - Encryption/decryption of the secret data is done in CFB mode using - the key created from the passphrase and the Initial Vector from the - packet. A different mode is used with V3 keys (which are only RSA) - than with other key formats. With V3 keys, the MPI bit count prefix - (i.e., the first two octets) is not encrypted. Only the MPI non- - prefix data is encrypted. Furthermore, the CFB state is - resynchronized at the beginning of each new MPI value, so that the - CFB block boundary is aligned with the start of the MPI data. - - With V4 keys, a simpler method is used. All secret MPI values are - encrypted in CFB mode, including the MPI bitcount prefix. - - The 16-bit checksum that follows the algorithm-specific portion is - the algebraic sum, mod 65536, of the plaintext of all the algorithm- - specific octets (including MPI prefix and data). With V3 keys, the - checksum is stored in the clear. With V4 keys, the checksum is - encrypted like the algorithm-specific data. This value is used to - check that the passphrase was correct. - -5.6. Compressed Data Packet (Tag 8) - - The Compressed Data packet contains compressed data. Typically, this - packet is found as the contents of an encrypted packet, or following - a Signature or One-Pass Signature packet, and contains literal data - packets. - - The body of this packet consists of: - - - One octet that gives the algorithm used to compress the packet. - - - The remainder of the packet is compressed data. - - A Compressed Data Packet's body contains an block that compresses - some set of packets. See section "Packet Composition" for details on - how messages are formed. - - - - - -Callas, et. al. Standards Track [Page 38] - -RFC 2440 OpenPGP Message Format November 1998 - - - ZIP-compressed packets are compressed with raw RFC 1951 DEFLATE - blocks. Note that PGP V2.6 uses 13 bits of compression. If an - implementation uses more bits of compression, PGP V2.6 cannot - decompress it. - - ZLIB-compressed packets are compressed with RFC 1950 ZLIB-style - blocks. - -5.7. Symmetrically Encrypted Data Packet (Tag 9) - - The Symmetrically Encrypted Data packet contains data encrypted with - a symmetric-key algorithm. When it has been decrypted, it will - typically contain other packets (often literal data packets or - compressed data packets). - - The body of this packet consists of: - - - Encrypted data, the output of the selected symmetric-key cipher - operating in PGP's variant of Cipher Feedback (CFB) mode. - - The symmetric cipher used may be specified in an Public-Key or - Symmetric-Key Encrypted Session Key packet that precedes the - Symmetrically Encrypted Data Packet. In that case, the cipher - algorithm octet is prefixed to the session key before it is - encrypted. If no packets of these types precede the encrypted data, - the IDEA algorithm is used with the session key calculated as the MD5 - hash of the passphrase. - - The data is encrypted in CFB mode, with a CFB shift size equal to the - cipher's block size. The Initial Vector (IV) is specified as all - zeros. Instead of using an IV, OpenPGP prefixes a 10-octet string to - the data before it is encrypted. The first eight octets are random, - and the 9th and 10th octets are copies of the 7th and 8th octets, - respectively. After encrypting the first 10 octets, the CFB state is - resynchronized if the cipher block size is 8 octets or less. The - last 8 octets of ciphertext are passed through the cipher and the - block boundary is reset. - - The repetition of 16 bits in the 80 bits of random data prefixed to - the message allows the receiver to immediately check whether the - session key is incorrect. - -5.8. Marker Packet (Obsolete Literal Packet) (Tag 10) - - An experimental version of PGP used this packet as the Literal - packet, but no released version of PGP generated Literal packets with - this tag. With PGP 5.x, this packet has been re-assigned and is - reserved for use as the Marker packet. - - - -Callas, et. al. Standards Track [Page 39] - -RFC 2440 OpenPGP Message Format November 1998 - - - The body of this packet consists of: - - - The three octets 0x50, 0x47, 0x50 (which spell "PGP" in UTF-8). - - Such a packet MUST be ignored when received. It may be placed at the - beginning of a message that uses features not available in PGP 2.6.x - in order to cause that version to report that newer software is - necessary to process the message. - -5.9. Literal Data Packet (Tag 11) - - A Literal Data packet contains the body of a message; data that is - not to be further interpreted. - - The body of this packet consists of: - - - A one-octet field that describes how the data is formatted. - - If it is a 'b' (0x62), then the literal packet contains binary data. - If it is a 't' (0x74), then it contains text data, and thus may need - line ends converted to local form, or other text-mode changes. RFC - 1991 also defined a value of 'l' as a 'local' mode for machine-local - conversions. This use is now deprecated. - - - File name as a string (one-octet length, followed by file name), - if the encrypted data should be saved as a file. - - If the special name "_CONSOLE" is used, the message is considered to - be "for your eyes only". This advises that the message data is - unusually sensitive, and the receiving program should process it more - carefully, perhaps avoiding storing the received data to disk, for - example. - - - A four-octet number that indicates the modification date of the - file, or the creation time of the packet, or a zero that - indicates the present time. - - - The remainder of the packet is literal data. - - Text data is stored with text endings (i.e. network-normal - line endings). These should be converted to native line endings by - the receiving software. - -5.10. Trust Packet (Tag 12) - - The Trust packet is used only within keyrings and is not normally - exported. Trust packets contain data that record the user's - specifications of which key holders are trustworthy introducers, - - - -Callas, et. al. Standards Track [Page 40] - -RFC 2440 OpenPGP Message Format November 1998 - - - along with other information that implementing software uses for - trust information. - - Trust packets SHOULD NOT be emitted to output streams that are - transferred to other users, and they SHOULD be ignored on any input - other than local keyring files. - -5.11. User ID Packet (Tag 13) - - A User ID packet consists of data that is intended to represent the - name and email address of the key holder. By convention, it includes - an RFC 822 mail name, but there are no restrictions on its content. - The packet length in the header specifies the length of the user id. - If it is text, it is encoded in UTF-8. - -6. Radix-64 Conversions - - As stated in the introduction, OpenPGP's underlying native - representation for objects is a stream of arbitrary octets, and some - systems desire these objects to be immune to damage caused by - character set translation, data conversions, etc. - - In principle, any printable encoding scheme that met the requirements - of the unsafe channel would suffice, since it would not change the - underlying binary bit streams of the native OpenPGP data structures. - The OpenPGP standard specifies one such printable encoding scheme to - ensure interoperability. - - OpenPGP's Radix-64 encoding is composed of two parts: a base64 - encoding of the binary data, and a checksum. The base64 encoding is - identical to the MIME base64 content-transfer-encoding [RFC2231, - Section 6.8]. An OpenPGP implementation MAY use ASCII Armor to - protect the raw binary data. - - The checksum is a 24-bit CRC converted to four characters of radix-64 - encoding by the same MIME base64 transformation, preceded by an - equals sign (=). The CRC is computed by using the generator 0x864CFB - and an initialization of 0xB704CE. The accumulation is done on the - data before it is converted to radix-64, rather than on the converted - data. A sample implementation of this algorithm is in the next - section. - - The checksum with its leading equal sign MAY appear on the first line - after the Base64 encoded data. - - Rationale for CRC-24: The size of 24 bits fits evenly into printable - base64. The nonzero initialization can detect more errors than a - zero initialization. - - - -Callas, et. al. Standards Track [Page 41] - -RFC 2440 OpenPGP Message Format November 1998 - - -6.1. An Implementation of the CRC-24 in "C" - - #define CRC24_INIT 0xb704ceL - #define CRC24_POLY 0x1864cfbL - - typedef long crc24; - crc24 crc_octets(unsigned char *octets, size_t len) - { - crc24 crc = CRC24_INIT; - int i; - - while (len--) { - crc ^= (*octets++) << 16; - for (i = 0; i < 8; i++) { - crc <<= 1; - if (crc & 0x1000000) - crc ^= CRC24_POLY; - } - } - return crc & 0xffffffL; - } - -6.2. Forming ASCII Armor - - When OpenPGP encodes data into ASCII Armor, it puts specific headers - around the data, so OpenPGP can reconstruct the data later. OpenPGP - informs the user what kind of data is encoded in the ASCII armor - through the use of the headers. - - Concatenating the following data creates ASCII Armor: - - - An Armor Header Line, appropriate for the type of data - - - Armor Headers - - - A blank (zero-length, or containing only whitespace) line - - - The ASCII-Armored data - - - An Armor Checksum - - - The Armor Tail, which depends on the Armor Header Line. - - An Armor Header Line consists of the appropriate header line text - surrounded by five (5) dashes ('-', 0x2D) on either side of the - header line text. The header line text is chosen based upon the type - of data that is being encoded in Armor, and how it is being encoded. - Header line texts include the following strings: - - - -Callas, et. al. Standards Track [Page 42] - -RFC 2440 OpenPGP Message Format November 1998 - - - BEGIN PGP MESSAGE - Used for signed, encrypted, or compressed files. - - BEGIN PGP PUBLIC KEY BLOCK - Used for armoring public keys - - BEGIN PGP PRIVATE KEY BLOCK - Used for armoring private keys - - BEGIN PGP MESSAGE, PART X/Y - Used for multi-part messages, where the armor is split amongst Y - parts, and this is the Xth part out of Y. - - BEGIN PGP MESSAGE, PART X - Used for multi-part messages, where this is the Xth part of an - unspecified number of parts. Requires the MESSAGE-ID Armor Header - to be used. - - BEGIN PGP SIGNATURE - Used for detached signatures, OpenPGP/MIME signatures, and - natures following clearsigned messages. Note that PGP 2.x s BEGIN - PGP MESSAGE for detached signatures. - - The Armor Headers are pairs of strings that can give the user or the - receiving OpenPGP implementation some information about how to decode - or use the message. The Armor Headers are a part of the armor, not a - part of the message, and hence are not protected by any signatures - applied to the message. - - The format of an Armor Header is that of a key-value pair. A colon - (':' 0x38) and a single space (0x20) separate the key and value. - OpenPGP should consider improperly formatted Armor Headers to be - corruption of the ASCII Armor. Unknown keys should be reported to - the user, but OpenPGP should continue to process the message. - - Currently defined Armor Header Keys are: - - - "Version", that states the OpenPGP Version used to encode the - message. - - - "Comment", a user-defined comment. - - - "MessageID", a 32-character string of printable characters. The - string must be the same for all parts of a multi-part message - that uses the "PART X" Armor Header. MessageID strings should be - - - - - - -Callas, et. al. Standards Track [Page 43] - -RFC 2440 OpenPGP Message Format November 1998 - - - unique enough that the recipient of the mail can associate all - the parts of a message with each other. A good checksum or - cryptographic hash function is sufficient. - - - "Hash", a comma-separated list of hash algorithms used in this - message. This is used only in clear-signed messages. - - - "Charset", a description of the character set that the plaintext - is in. Please note that OpenPGP defines text to be in UTF-8 by - default. An implementation will get best results by translating - into and out of UTF-8. However, there are many instances where - this is easier said than done. Also, there are communities of - users who have no need for UTF-8 because they are all happy with - a character set like ISO Latin-5 or a Japanese character set. In - such instances, an implementation MAY override the UTF-8 default - by using this header key. An implementation MAY implement this - key and any translations it cares to; an implementation MAY - ignore it and assume all text is UTF-8. - - The MessageID SHOULD NOT appear unless it is in a multi-part - message. If it appears at all, it MUST be computed from the - finished (encrypted, signed, etc.) message in a deterministic - fashion, rather than contain a purely random value. This is to - allow the legitimate recipient to determine that the MessageID - cannot serve as a covert means of leaking cryptographic key - information. - - The Armor Tail Line is composed in the same manner as the Armor - Header Line, except the string "BEGIN" is replaced by the string - "END." - -6.3. Encoding Binary in Radix-64 - - The encoding process represents 24-bit groups of input bits as output - strings of 4 encoded characters. Proceeding from left to right, a - 24-bit input group is formed by concatenating three 8-bit input - groups. These 24 bits are then treated as four concatenated 6-bit - groups, each of which is translated into a single digit in the - Radix-64 alphabet. When encoding a bit stream with the Radix-64 - encoding, the bit stream must be presumed to be ordered with the - most-significant-bit first. That is, the first bit in the stream will - be the high-order bit in the first 8-bit octet, and the eighth bit - will be the low-order bit in the first 8-bit octet, and so on. - - - - - - - - -Callas, et. al. Standards Track [Page 44] - -RFC 2440 OpenPGP Message Format November 1998 - - - +--first octet--+-second octet--+--third octet--+ - |7 6 5 4 3 2 1 0|7 6 5 4 3 2 1 0|7 6 5 4 3 2 1 0| - +-----------+---+-------+-------+---+-----------+ - |5 4 3 2 1 0|5 4 3 2 1 0|5 4 3 2 1 0|5 4 3 2 1 0| - +--1.index--+--2.index--+--3.index--+--4.index--+ - - Each 6-bit group is used as an index into an array of 64 printable - characters from the table below. The character referenced by the - index is placed in the output string. - - Value Encoding Value Encoding Value Encoding Value Encoding - 0 A 17 R 34 i 51 z - 1 B 18 S 35 j 52 0 - 2 C 19 T 36 k 53 1 - 3 D 20 U 37 l 54 2 - 4 E 21 V 38 m 55 3 - 5 F 22 W 39 n 56 4 - 6 G 23 X 40 o 57 5 - 7 H 24 Y 41 p 58 6 - 8 I 25 Z 42 q 59 7 - 9 J 26 a 43 r 60 8 - 10 K 27 b 44 s 61 9 - 11 L 28 c 45 t 62 + - 12 M 29 d 46 u 63 / - 13 N 30 e 47 v - 14 O 31 f 48 w (pad) = - 15 P 32 g 49 x - 16 Q 33 h 50 y - - The encoded output stream must be represented in lines of no more - than 76 characters each. - - Special processing is performed if fewer than 24 bits are available - at the end of the data being encoded. There are three possibilities: - - 1. The last data group has 24 bits (3 octets). No special - processing is needed. - - 2. The last data group has 16 bits (2 octets). The first two 6-bit - groups are processed as above. The third (incomplete) data group - has two zero-value bits added to it, and is processed as above. - A pad character (=) is added to the output. - - 3. The last data group has 8 bits (1 octet). The first 6-bit group - is processed as above. The second (incomplete) data group has - four zero-value bits added to it, and is processed as above. Two - pad characters (=) are added to the output. - - - - -Callas, et. al. Standards Track [Page 45] - -RFC 2440 OpenPGP Message Format November 1998 - - -6.4. Decoding Radix-64 - - Any characters outside of the base64 alphabet are ignored in Radix-64 - data. Decoding software must ignore all line breaks or other - characters not found in the table above. - - In Radix-64 data, characters other than those in the table, line - breaks, and other white space probably indicate a transmission error, - about which a warning message or even a message rejection might be - appropriate under some circumstances. - - Because it is used only for padding at the end of the data, the - occurrence of any "=" characters may be taken as evidence that the - end of the data has been reached (without truncation in transit). No - such assurance is possible, however, when the number of octets - transmitted was a multiple of three and no "=" characters are - present. - -6.5. Examples of Radix-64 - - Input data: 0x14fb9c03d97e - Hex: 1 4 f b 9 c | 0 3 d 9 7 e - 8-bit: 00010100 11111011 10011100 | 00000011 11011001 - 11111110 - 6-bit: 000101 001111 101110 011100 | 000000 111101 100111 - 111110 - Decimal: 5 15 46 28 0 61 37 62 - Output: F P u c A 9 l + - - Input data: 0x14fb9c03d9 - Hex: 1 4 f b 9 c | 0 3 d 9 - 8-bit: 00010100 11111011 10011100 | 00000011 11011001 - pad with 00 - 6-bit: 000101 001111 101110 011100 | 000000 111101 100100 - Decimal: 5 15 46 28 0 61 36 - pad with = - Output: F P u c A 9 k = - - Input data: 0x14fb9c03 - Hex: 1 4 f b 9 c | 0 3 - 8-bit: 00010100 11111011 10011100 | 00000011 - pad with 0000 - 6-bit: 000101 001111 101110 011100 | 000000 110000 - Decimal: 5 15 46 28 0 48 - pad with = = - Output: F P u c A w = = - - - - - -Callas, et. al. Standards Track [Page 46] - -RFC 2440 OpenPGP Message Format November 1998 - - -6.6. Example of an ASCII Armored Message - - - -----BEGIN PGP MESSAGE----- - Version: OpenPrivacy 0.99 - - yDgBO22WxBHv7O8X7O/jygAEzol56iUKiXmV+XmpCtmpqQUKiQrFqclFqUDBovzS - vBSFjNSiVHsuAA== - =njUN - -----END PGP MESSAGE----- - - Note that this example is indented by two spaces. - -7. Cleartext signature framework - - It is desirable to sign a textual octet stream without ASCII armoring - the stream itself, so the signed text is still readable without - special software. In order to bind a signature to such a cleartext, - this framework is used. (Note that RFC 2015 defines another way to - clear sign messages for environments that support MIME.) - - The cleartext signed message consists of: - - - The cleartext header '-----BEGIN PGP SIGNED MESSAGE-----' on a - single line, - - - One or more "Hash" Armor Headers, - - - Exactly one empty line not included into the message digest, - - - The dash-escaped cleartext that is included into the message - digest, - - - The ASCII armored signature(s) including the '-----BEGIN PGP - SIGNATURE-----' Armor Header and Armor Tail Lines. - - If the "Hash" armor header is given, the specified message digest - algorithm is used for the signature. If there are no such headers, - MD5 is used, an implementation MAY omit them for V2.x compatibility. - If more than one message digest is used in the signature, the "Hash" - armor header contains a comma-delimited list of used message digests. - - Current message digest names are described below with the algorithm - IDs. - -7.1. Dash-Escaped Text - - The cleartext content of the message must also be dash-escaped. - - - -Callas, et. al. Standards Track [Page 47] - -RFC 2440 OpenPGP Message Format November 1998 - - - Dash escaped cleartext is the ordinary cleartext where every line - starting with a dash '-' (0x2D) is prefixed by the sequence dash '-' - (0x2D) and space ' ' (0x20). This prevents the parser from - recognizing armor headers of the cleartext itself. The message digest - is computed using the cleartext itself, not the dash escaped form. - - As with binary signatures on text documents, a cleartext signature is - calculated on the text using canonical line endings. The - line ending (i.e. the ) before the '-----BEGIN PGP - SIGNATURE-----' line that terminates the signed text is not - considered part of the signed text. - - Also, any trailing whitespace (spaces, and tabs, 0x09) at the end of - any line is ignored when the cleartext signature is calculated. - -8. Regular Expressions - - A regular expression is zero or more branches, separated by '|'. It - matches anything that matches one of the branches. - - A branch is zero or more pieces, concatenated. It matches a match for - the first, followed by a match for the second, etc. - - A piece is an atom possibly followed by '*', '+', or '?'. An atom - followed by '*' matches a sequence of 0 or more matches of the atom. - An atom followed by '+' matches a sequence of 1 or more matches of - the atom. An atom followed by '?' matches a match of the atom, or the - null string. - - An atom is a regular expression in parentheses (matching a match for - the regular expression), a range (see below), '.' (matching any - single character), '^' (matching the null string at the beginning of - the input string), '$' (matching the null string at the end of the - input string), a '\' followed by a single character (matching that - character), or a single character with no other significance - (matching that character). - - A range is a sequence of characters enclosed in '[]'. It normally - matches any single character from the sequence. If the sequence - begins with '^', it matches any single character not from the rest of - the sequence. If two characters in the sequence are separated by '-', - this is shorthand for the full list of ASCII characters between them - (e.g. '[0-9]' matches any decimal digit). To include a literal ']' in - the sequence, make it the first character (following a possible '^'). - To include a literal '-', make it the first or last character. - - - - - - -Callas, et. al. Standards Track [Page 48] - -RFC 2440 OpenPGP Message Format November 1998 - - -9. Constants - - This section describes the constants used in OpenPGP. - - Note that these tables are not exhaustive lists; an implementation - MAY implement an algorithm not on these lists. - - See the section "Notes on Algorithms" below for more discussion of - the algorithms. - -9.1. Public Key Algorithms - - ID Algorithm - -- --------- - 1 - RSA (Encrypt or Sign) - 2 - RSA Encrypt-Only - 3 - RSA Sign-Only - 16 - Elgamal (Encrypt-Only), see [ELGAMAL] - 17 - DSA (Digital Signature Standard) - 18 - Reserved for Elliptic Curve - 19 - Reserved for ECDSA - 20 - Elgamal (Encrypt or Sign) - - - - - - 21 - Reserved for Diffie-Hellman (X9.42, - as defined for IETF-S/MIME) - 100 to 110 - Private/Experimental algorithm. - - Implementations MUST implement DSA for signatures, and Elgamal for - encryption. Implementations SHOULD implement RSA keys. - Implementations MAY implement any other algorithm. - -9.2. Symmetric Key Algorithms - - ID Algorithm - -- --------- - 0 - Plaintext or unencrypted data - 1 - IDEA [IDEA] - 2 - Triple-DES (DES-EDE, as per spec - - 168 bit key derived from 192) - 3 - CAST5 (128 bit key, as per RFC 2144) - 4 - Blowfish (128 bit key, 16 rounds) [BLOWFISH] - 5 - SAFER-SK128 (13 rounds) [SAFER] - 6 - Reserved for DES/SK - 7 - Reserved for AES with 128-bit key - - - -Callas, et. al. Standards Track [Page 49] - -RFC 2440 OpenPGP Message Format November 1998 - - - 8 - Reserved for AES with 192-bit key - 9 - Reserved for AES with 256-bit key - 100 to 110 - Private/Experimental algorithm. - - Implementations MUST implement Triple-DES. Implementations SHOULD - implement IDEA and CAST5.Implementations MAY implement any other - algorithm. - -9.3. Compression Algorithms - - ID Algorithm - -- --------- - 0 - Uncompressed - 1 - ZIP (RFC 1951) - 2 - ZLIB (RFC 1950) - 100 to 110 - Private/Experimental algorithm. - - Implementations MUST implement uncompressed data. Implementations - SHOULD implement ZIP. Implementations MAY implement ZLIB. - -9.4. Hash Algorithms - - ID Algorithm Text Name - -- --------- ---- ---- - 1 - MD5 "MD5" - 2 - SHA-1 "SHA1" - 3 - RIPE-MD/160 "RIPEMD160" - 4 - Reserved for double-width SHA (experimental) - 5 - MD2 "MD2" - 6 - Reserved for TIGER/192 "TIGER192" - 7 - Reserved for HAVAL (5 pass, 160-bit) - "HAVAL-5-160" - 100 to 110 - Private/Experimental algorithm. - - Implementations MUST implement SHA-1. Implementations SHOULD - implement MD5. - -10. Packet Composition - - OpenPGP packets are assembled into sequences in order to create - messages and to transfer keys. Not all possible packet sequences are - meaningful and correct. This describes the rules for how packets - should be placed into sequences. - -10.1. Transferable Public Keys - - OpenPGP users may transfer public keys. The essential elements of a - transferable public key are: - - - -Callas, et. al. Standards Track [Page 50] - -RFC 2440 OpenPGP Message Format November 1998 - - - - One Public Key packet - - - Zero or more revocation signatures - - - One or more User ID packets - - - After each User ID packet, zero or more signature packets - (certifications) - - - Zero or more Subkey packets - - - After each Subkey packet, one signature packet, optionally a - revocation. - - The Public Key packet occurs first. Each of the following User ID - packets provides the identity of the owner of this public key. If - there are multiple User ID packets, this corresponds to multiple - means of identifying the same unique individual user; for example, a - user may have more than one email address, and construct a User ID - for each one. - - Immediately following each User ID packet, there are zero or more - signature packets. Each signature packet is calculated on the - immediately preceding User ID packet and the initial Public Key - packet. The signature serves to certify the corresponding public key - and user ID. In effect, the signer is testifying to his or her - belief that this public key belongs to the user identified by this - user ID. - - After the User ID packets there may be one or more Subkey packets. - In general, subkeys are provided in cases where the top-level public - key is a signature-only key. However, any V4 key may have subkeys, - and the subkeys may be encryption-only keys, signature-only keys, or - general-purpose keys. - - Each Subkey packet must be followed by one Signature packet, which - should be a subkey binding signature issued by the top level key. - - Subkey and Key packets may each be followed by a revocation Signature - packet to indicate that the key is revoked. Revocation signatures - are only accepted if they are issued by the key itself, or by a key - that is authorized to issue revocations via a revocation key - subpacket in a self-signature by the top level key. - - Transferable public key packet sequences may be concatenated to allow - transferring multiple public keys in one operation. - - - - - -Callas, et. al. Standards Track [Page 51] - -RFC 2440 OpenPGP Message Format November 1998 - - -10.2. OpenPGP Messages - - An OpenPGP message is a packet or sequence of packets that - corresponds to the following grammatical rules (comma represents - sequential composition, and vertical bar separates alternatives): - - OpenPGP Message :- Encrypted Message | Signed Message | - Compressed Message | Literal Message. - - Compressed Message :- Compressed Data Packet. - - Literal Message :- Literal Data Packet. - - ESK :- Public Key Encrypted Session Key Packet | - Symmetric-Key Encrypted Session Key Packet. - - ESK Sequence :- ESK | ESK Sequence, ESK. - - Encrypted Message :- Symmetrically Encrypted Data Packet | - ESK Sequence, Symmetrically Encrypted Data Packet. - - One-Pass Signed Message :- One-Pass Signature Packet, - OpenPGP Message, Corresponding Signature Packet. - - Signed Message :- Signature Packet, OpenPGP Message | - One-Pass Signed Message. - - In addition, decrypting a Symmetrically Encrypted Data packet and - - decompressing a Compressed Data packet must yield a valid OpenPGP - Message. - -10.3. Detached Signatures - - Some OpenPGP applications use so-called "detached signatures." For - example, a program bundle may contain a file, and with it a second - file that is a detached signature of the first file. These detached - signatures are simply a signature packet stored separately from the - data that they are a signature of. - -11. Enhanced Key Formats - -11.1. Key Structures - - The format of an OpenPGP V3 key is as follows. Entries in square - brackets are optional and ellipses indicate repetition. - - - - - -Callas, et. al. Standards Track [Page 52] - -RFC 2440 OpenPGP Message Format November 1998 - - - RSA Public Key - [Revocation Self Signature] - User ID [Signature ...] - [User ID [Signature ...] ...] - - Each signature certifies the RSA public key and the preceding user - ID. The RSA public key can have many user IDs and each user ID can - have many signatures. - - The format of an OpenPGP V4 key that uses two public keys is similar - except that the other keys are added to the end as 'subkeys' of the - primary key. - - Primary-Key - [Revocation Self Signature] - [Direct Key Self Signature...] - User ID [Signature ...] - [User ID [Signature ...] ...] - [[Subkey [Binding-Signature-Revocation] - Primary-Key-Binding-Signature] ...] - - A subkey always has a single signature after it that is issued using - the primary key to tie the two keys together. This binding signature - may be in either V3 or V4 format, but V4 is preferred, of course. - - In the above diagram, if the binding signature of a subkey has been - revoked, the revoked binding signature may be removed, leaving only - one signature. - - In a key that has a main key and subkeys, the primary key MUST be a - key capable of signing. The subkeys may be keys of any other type. - There may be other constructions of V4 keys, too. For example, there - may be a single-key RSA key in V4 format, a DSA primary key with an - RSA encryption key, or RSA primary key with an Elgamal subkey, etc. - - It is also possible to have a signature-only subkey. This permits a - primary key that collects certifications (key signatures) but is used - only used for certifying subkeys that are used for encryption and - signatures. - -11.2. Key IDs and Fingerprints - - For a V3 key, the eight-octet key ID consists of the low 64 bits of - the public modulus of the RSA key. - - The fingerprint of a V3 key is formed by hashing the body (but not - the two-octet length) of the MPIs that form the key material (public - modulus n, followed by exponent e) with MD5. - - - -Callas, et. al. Standards Track [Page 53] - -RFC 2440 OpenPGP Message Format November 1998 - - - A V4 fingerprint is the 160-bit SHA-1 hash of the one-octet Packet - Tag, followed by the two-octet packet length, followed by the entire - Public Key packet starting with the version field. The key ID is the - low order 64 bits of the fingerprint. Here are the fields of the - hash material, with the example of a DSA key: - - a.1) 0x99 (1 octet) - - a.2) high order length octet of (b)-(f) (1 octet) - - a.3) low order length octet of (b)-(f) (1 octet) - - b) version number = 4 (1 octet); - - c) time stamp of key creation (4 octets); - - d) algorithm (1 octet): 17 = DSA (example); - - e) Algorithm specific fields. - - Algorithm Specific Fields for DSA keys (example): - - e.1) MPI of DSA prime p; - - e.2) MPI of DSA group order q (q is a prime divisor of p-1); - - e.3) MPI of DSA group generator g; - - e.4) MPI of DSA public key value y (= g**x where x is secret). - - Note that it is possible for there to be collisions of key IDs -- two - different keys with the same key ID. Note that there is a much - smaller, but still non-zero probability that two different keys have - the same fingerprint. - - Also note that if V3 and V4 format keys share the same RSA key - material, they will have different key ids as well as different - fingerprints. - -12. Notes on Algorithms - -12.1. Symmetric Algorithm Preferences - - The symmetric algorithm preference is an ordered list of algorithms - that the keyholder accepts. Since it is found on a self-signature, it - is possible that a keyholder may have different preferences. For - example, Alice may have TripleDES only specified for "alice@work.com" - but CAST5, Blowfish, and TripleDES specified for "alice@home.org". - - - -Callas, et. al. Standards Track [Page 54] - -RFC 2440 OpenPGP Message Format November 1998 - - - Note that it is also possible for preferences to be in a subkey's - binding signature. - - Since TripleDES is the MUST-implement algorithm, if it is not - explicitly in the list, it is tacitly at the end. However, it is good - form to place it there explicitly. Note also that if an - implementation does not implement the preference, then it is - implicitly a TripleDES-only implementation. - - An implementation MUST not use a symmetric algorithm that is not in - the recipient's preference list. When encrypting to more than one - recipient, the implementation finds a suitable algorithm by taking - the intersection of the preferences of the recipients. Note that the - MUST-implement algorithm, TripleDES, ensures that the intersection is - not null. The implementation may use any mechanism to pick an - algorithm in the intersection. - - If an implementation can decrypt a message that a keyholder doesn't - have in their preferences, the implementation SHOULD decrypt the - message anyway, but MUST warn the keyholder than protocol has been - violated. (For example, suppose that Alice, above, has software that - implements all algorithms in this specification. Nonetheless, she - prefers subsets for work or home. If she is sent a message encrypted - with IDEA, which is not in her preferences, the software warns her - that someone sent her an IDEA-encrypted message, but it would ideally - decrypt it anyway.) - - An implementation that is striving for backward compatibility MAY - consider a V3 key with a V3 self-signature to be an implicit - preference for IDEA, and no ability to do TripleDES. This is - technically non-compliant, but an implementation MAY violate the - above rule in this case only and use IDEA to encrypt the message, - provided that the message creator is warned. Ideally, though, the - implementation would follow the rule by actually generating two - messages, because it is possible that the OpenPGP user's - implementation does not have IDEA, and thus could not read the - message. Consequently, an implementation MAY, but SHOULD NOT use IDEA - in an algorithm conflict with a V3 key. - -12.2. Other Algorithm Preferences - - Other algorithm preferences work similarly to the symmetric algorithm - preference, in that they specify which algorithms the keyholder - accepts. There are two interesting cases that other comments need to - be made about, though, the compression preferences and the hash - preferences. - - - - - -Callas, et. al. Standards Track [Page 55] - -RFC 2440 OpenPGP Message Format November 1998 - - -12.2.1. Compression Preferences - - Compression has been an integral part of PGP since its first days. - OpenPGP and all previous versions of PGP have offered compression. - And in this specification, the default is for messages to be - compressed, although an implementation is not required to do so. - Consequently, the compression preference gives a way for a keyholder - to request that messages not be compressed, presumably because they - are using a minimal implementation that does not include compression. - Additionally, this gives a keyholder a way to state that it can - support alternate algorithms. - - Like the algorithm preferences, an implementation MUST NOT use an - algorithm that is not in the preference vector. If the preferences - are not present, then they are assumed to be [ZIP(1), - UNCOMPRESSED(0)]. - -12.2.2. Hash Algorithm Preferences - - Typically, the choice of a hash algorithm is something the signer - does, rather than the verifier, because a signer does not typically - know who is going to be verifying the signature. This preference, - though, allows a protocol based upon digital signatures ease in - negotiation. - - Thus, if Alice is authenticating herself to Bob with a signature, it - makes sense for her to use a hash algorithm that Bob's software uses. - This preference allows Bob to state in his key which algorithms Alice - may use. - -12.3. Plaintext - - Algorithm 0, "plaintext", may only be used to denote secret keys that - are stored in the clear. Implementations must not use plaintext in - Symmetrically Encrypted Data Packets; they must use Literal Data - Packets to encode unencrypted or literal data. - -12.4. RSA - - There are algorithm types for RSA-signature-only, and RSA-encrypt- - only keys. These types are deprecated. The "key flags" subpacket in a - signature is a much better way to express the same idea, and - generalizes it to all algorithms. An implementation SHOULD NOT create - such a key, but MAY interpret it. - - An implementation SHOULD NOT implement RSA keys of size less than 768 - bits. - - - - -Callas, et. al. Standards Track [Page 56] - -RFC 2440 OpenPGP Message Format November 1998 - - - It is permissible for an implementation to support RSA merely for - backward compatibility; for example, such an implementation would - support V3 keys with IDEA symmetric cryptography. Note that this is - an exception to the other MUST-implement rules. An implementation - that supports RSA in V4 keys MUST implement the MUST-implement - features. - -12.5. Elgamal - - If an Elgamal key is to be used for both signing and encryption, - extra care must be taken in creating the key. - - An ElGamal key consists of a generator g, a prime modulus p, a secret - exponent x, and a public value y = g^x mod p. - - The generator and prime must be chosen so that solving the discrete - log problem is intractable. The group g should generate the - multiplicative group mod p-1 or a large subgroup of it, and the order - of g should have at least one large prime factor. A good choice is - to use a "strong" Sophie-Germain prime in choosing p, so that both p - and (p-1)/2 are primes. In fact, this choice is so good that - implementors SHOULD do it, as it avoids a small subgroup attack. - - In addition, a result of Bleichenbacher [BLEICHENBACHER] shows that - if the generator g has only small prime factors, and if g divides the - order of the group it generates, then signatures can be forged. In - particular, choosing g=2 is a bad choice if the group order may be - even. On the other hand, a generator of 2 is a fine choice for an - encryption-only key, as this will make the encryption faster. - - While verifying Elgamal signatures, note that it is important to test - that r and s are less than p. If this test is not done then - signatures can be trivially forged by using large r values of - approximately twice the length of p. This attack is also discussed - in the Bleichenbacher paper. - - Details on safe use of Elgamal signatures may be found in [MENEZES], - which discusses all the weaknesses described above. - - If an implementation allows Elgamal signatures, then it MUST use the - algorithm identifier 20 for an Elgamal public key that can sign. - - An implementation SHOULD NOT implement Elgamal keys of size less than - 768 bits. For long-term security, Elgamal keys should be 1024 bits or - longer. - - - - - - -Callas, et. al. Standards Track [Page 57] - -RFC 2440 OpenPGP Message Format November 1998 - - -12.6. DSA - - An implementation SHOULD NOT implement DSA keys of size less than 768 - bits. Note that present DSA is limited to a maximum of 1024 bit keys, - which are recommended for long-term use. - -12.7. Reserved Algorithm Numbers - - A number of algorithm IDs have been reserved for algorithms that - would be useful to use in an OpenPGP implementation, yet there are - issues that prevent an implementor from actually implementing the - algorithm. These are marked in the Public Algorithms section as - "(reserved for)". - - The reserved public key algorithms, Elliptic Curve (18), ECDSA (19), - and X9.42 (21) do not have the necessary parameters, parameter order, - or semantics defined. - - The reserved symmetric key algorithm, DES/SK (6), does not have - semantics defined. - - The reserved hash algorithms, TIGER192 (6), and HAVAL-5-160 (7), do - not have OIDs. The reserved algorithm number 4, reserved for a - double-width variant of SHA1, is not presently defined. - - We have reserver three algorithm IDs for the US NIST's Advanced - Encryption Standard. This algorithm will work with (at least) 128, - 192, and 256-bit keys. We expect that this algorithm will be selected - from the candidate algorithms in the year 2000. - -12.8. OpenPGP CFB mode - - OpenPGP does symmetric encryption using a variant of Cipher Feedback - Mode (CFB mode). This section describes the procedure it uses in - detail. This mode is what is used for Symmetrically Encrypted Data - Packets; the mechanism used for encrypting secret key material is - similar, but described in those sections above. - - OpenPGP CFB mode uses an initialization vector (IV) of all zeros, and - prefixes the plaintext with ten octets of random data, such that - octets 9 and 10 match octets 7 and 8. It does a CFB "resync" after - encrypting those ten octets. - - Note that for an algorithm that has a larger block size than 64 bits, - the equivalent function will be done with that entire block. For - example, a 16-octet block algorithm would operate on 16 octets, and - then produce two octets of check, and then work on 16-octet blocks. - - - - -Callas, et. al. Standards Track [Page 58] - -RFC 2440 OpenPGP Message Format November 1998 - - - Step by step, here is the procedure: - - 1. The feedback register (FR) is set to the IV, which is all zeros. - - 2. FR is encrypted to produce FRE (FR Encrypted). This is the - encryption of an all-zero value. - - 3. FRE is xored with the first 8 octets of random data prefixed to - the plaintext to produce C1-C8, the first 8 octets of ciphertext. - - 4. FR is loaded with C1-C8. - - 5. FR is encrypted to produce FRE, the encryption of the first 8 - octets of ciphertext. - - 6. The left two octets of FRE get xored with the next two octets of - data that were prefixed to the plaintext. This produces C9-C10, - the next two octets of ciphertext. - - 7. (The resync step) FR is loaded with C3-C10. - - 8. FR is encrypted to produce FRE. - - 9. FRE is xored with the first 8 octets of the given plaintext, now - that we have finished encrypting the 10 octets of prefixed data. - This produces C11-C18, the next 8 octets of ciphertext. - - 10. FR is loaded with C11-C18 - - 11. FR is encrypted to produce FRE. - - 12. FRE is xored with the next 8 octets of plaintext, to produce the - next 8 octets of ciphertext. These are loaded into FR and the - process is repeated until the plaintext is used up. - -13. Security Considerations - - As with any technology involving cryptography, you should check the - current literature to determine if any algorithms used here have been - found to be vulnerable to attack. - - This specification uses Public Key Cryptography technologies. - Possession of the private key portion of a public-private key pair is - assumed to be controlled by the proper party or parties. - - Certain operations in this specification involve the use of random - numbers. An appropriate entropy source should be used to generate - these numbers. See RFC 1750. - - - -Callas, et. al. Standards Track [Page 59] - -RFC 2440 OpenPGP Message Format November 1998 - - - The MD5 hash algorithm has been found to have weaknesses (pseudo- - collisions in the compress function) that make some people deprecate - its use. They consider the SHA-1 algorithm better. - - Many security protocol designers think that it is a bad idea to use a - single key for both privacy (encryption) and integrity (signatures). - In fact, this was one of the motivating forces behind the V4 key - format with separate signature and encryption keys. If you as an - implementor promote dual-use keys, you should at least be aware of - this controversy. - - The DSA algorithm will work with any 160-bit hash, but it is - sensitive to the quality of the hash algorithm, if the hash algorithm - is broken, it can leak the secret key. The Digital Signature Standard - (DSS) specifies that DSA be used with SHA-1. RIPEMD-160 is - considered by many cryptographers to be as strong. An implementation - should take care which hash algorithms are used with DSA, as a weak - hash can not only allow a signature to be forged, but could leak the - secret key. These same considerations about the quality of the hash - algorithm apply to Elgamal signatures. - - If you are building an authentication system, the recipient may - specify a preferred signing algorithm. However, the signer would be - foolish to use a weak algorithm simply because the recipient requests - it. - - Some of the encryption algorithms mentioned in this document have - been analyzed less than others. For example, although CAST5 is - presently considered strong, it has been analyzed less than Triple- - DES. Other algorithms may have other controversies surrounding them. - - Some technologies mentioned here may be subject to government control - in some countries. - -14. Implementation Nits - - This section is a collection of comments to help an implementer, - particularly with an eye to backward compatibility. Previous - implementations of PGP are not OpenPGP-compliant. Often the - differences are small, but small differences are frequently more - vexing than large differences. Thus, this list of potential problems - and gotchas for a developer who is trying to be backward-compatible. - - * PGP 5.x does not accept V4 signatures for anything other than - key material. - - * PGP 5.x does not recognize the "five-octet" lengths in new-format - headers or in signature subpacket lengths. - - - -Callas, et. al. Standards Track [Page 60] - -RFC 2440 OpenPGP Message Format November 1998 - - - * PGP 5.0 rejects an encrypted session key if the keylength differs - from the S2K symmetric algorithm. This is a bug in its validation - function. - - * PGP 5.0 does not handle multiple one-pass signature headers and - trailers. Signing one will compress the one-pass signed literal - and prefix a V3 signature instead of doing a nested one-pass - signature. - - * When exporting a private key, PGP 2.x generates the header "BEGIN - PGP SECRET KEY BLOCK" instead of "BEGIN PGP PRIVATE KEY BLOCK". - All previous versions ignore the implied data type, and look - directly at the packet data type. - - * In a clear-signed signature, PGP 5.0 will figure out the correct - hash algorithm if there is no "Hash:" header, but it will reject - a mismatch between the header and the actual algorithm used. The - "standard" (i.e. Zimmermann/Finney/et al.) version of PGP 2.x - rejects the "Hash:" header and assumes MD5. There are a number of - enhanced variants of PGP 2.6.x that have been modified for SHA-1 - signatures. - - * PGP 5.0 can read an RSA key in V4 format, but can only recognize - it with a V3 keyid, and can properly use only a V3 format RSA - key. - - * Neither PGP 5.x nor PGP 6.0 recognize Elgamal Encrypt and Sign - keys. They only handle Elgamal Encrypt-only keys. - - * There are many ways possible for two keys to have the same key - material, but different fingerprints (and thus key ids). Perhaps - the most interesting is an RSA key that has been "upgraded" to V4 - format, but since a V4 fingerprint is constructed by hashing the - key creation time along with other things, two V4 keys created at - different times, yet with the same key material will have - different fingerprints. - - * If an implementation is using zlib to interoperate with PGP 2.x, - then the "windowBits" parameter should be set to -13. - - - - - - - - - - - - -Callas, et. al. Standards Track [Page 61] - -RFC 2440 OpenPGP Message Format November 1998 - - -15. Authors and Working Group Chair - - The working group can be contacted via the current chair: - - John W. Noerenberg, II - Qualcomm, Inc - 6455 Lusk Blvd - San Diego, CA 92131 USA - - Phone: +1 619-658-3510 - EMail: jwn2@qualcomm.com - - - The principal authors of this memo are: - - Jon Callas - Network Associates, Inc. - 3965 Freedom Circle - Santa Clara, CA 95054, USA - - Phone: +1 408-346-5860 - EMail: jon@pgp.com, jcallas@nai.com - - - Lutz Donnerhacke - IKS GmbH - Wildenbruchstr. 15 - 07745 Jena, Germany - - Phone: +49-3641-675642 - EMail: lutz@iks-jena.de - - - Hal Finney - Network Associates, Inc. - 3965 Freedom Circle - Santa Clara, CA 95054, USA - - EMail: hal@pgp.com - - - Rodney Thayer - EIS Corporation - Clearwater, FL 33767, USA - - EMail: rodney@unitran.com - - - - - -Callas, et. al. Standards Track [Page 62] - -RFC 2440 OpenPGP Message Format November 1998 - - - This memo also draws on much previous work from a number of other - authors who include: Derek Atkins, Charles Breed, Dave Del Torto, - Marc Dyksterhouse, Gail Haspert, Gene Hoffman, Paul Hoffman, Raph - Levien, Colin Plumb, Will Price, William Stallings, Mark Weaver, and - Philip R. Zimmermann. - -16. References - - [BLEICHENBACHER] Bleichenbacher, Daniel, "Generating ElGamal - signatures without knowing the secret key," - Eurocrypt 96. Note that the version in the - proceedings has an error. A revised version is - available at the time of writing from - - - [BLOWFISH] Schneier, B. "Description of a New Variable-Length - Key, 64-Bit Block Cipher (Blowfish)" Fast Software - Encryption, Cambridge Security Workshop Proceedings - (December 1993), Springer-Verlag, 1994, pp191-204 - - - - [DONNERHACKE] Donnerhacke, L., et. al, "PGP263in - an improved - international version of PGP", ftp://ftp.iks- - jena.de/mitarb/lutz/crypt/software/pgp/ - - [ELGAMAL] T. ElGamal, "A Public-Key Cryptosystem and a - Signature Scheme Based on Discrete Logarithms," IEEE - Transactions on Information Theory, v. IT-31, n. 4, - 1985, pp. 469-472. - - [IDEA] Lai, X, "On the design and security of block - ciphers", ETH Series in Information Processing, J.L. - Massey (editor), Vol. 1, Hartung-Gorre Verlag - Knostanz, Technische Hochschule (Zurich), 1992 - - [ISO-10646] ISO/IEC 10646-1:1993. International Standard -- - Information technology -- Universal Multiple-Octet - Coded Character Set (UCS) -- Part 1: Architecture - and Basic Multilingual Plane. UTF-8 is described in - Annex R, adopted but not yet published. UTF-16 is - described in Annex Q, adopted but not yet published. - - [MENEZES] Alfred Menezes, Paul van Oorschot, and Scott - Vanstone, "Handbook of Applied Cryptography," CRC - Press, 1996. - - - - -Callas, et. al. Standards Track [Page 63] - -RFC 2440 OpenPGP Message Format November 1998 - - - [RFC822] Crocker, D., "Standard for the format of ARPA - Internet text messages", STD 11, RFC 822, August - 1982. - - [RFC1423] Balenson, D., "Privacy Enhancement for Internet - Electronic Mail: Part III: Algorithms, Modes, and - Identifiers", RFC 1423, October 1993. - - [RFC1641] Goldsmith, D. and M. Davis, "Using Unicode with - MIME", RFC 1641, July 1994. - - [RFC1750] Eastlake, D., Crocker, S. and J. Schiller, - "Randomness Recommendations for Security", RFC 1750, - December 1994. - - [RFC1951] Deutsch, P., "DEFLATE Compressed Data Format - Specification version 1.3.", RFC 1951, May 1996. - - [RFC1983] Malkin, G., "Internet Users' Glossary", FYI 18, RFC - 1983, August 1996. - - [RFC1991] Atkins, D., Stallings, W. and P. Zimmermann, "PGP - Message Exchange Formats", RFC 1991, August 1996. - - [RFC2015] Elkins, M., "MIME Security with Pretty Good Privacy - (PGP)", RFC 2015, October 1996. - - [RFC2231] Borenstein, N. and N. Freed, "Multipurpose Internet - Mail Extensions (MIME) Part One: Format of Internet - Message Bodies.", RFC 2231, November 1996. - - [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate - Requirement Level", BCP 14, RFC 2119, March 1997. - - [RFC2144] Adams, C., "The CAST-128 Encryption Algorithm", RFC - 2144, May 1997. - - [RFC2279] Yergeau., F., "UTF-8, a transformation format of - Unicode and ISO 10646", RFC 2279, January 1998. - - [RFC2313] Kaliski, B., "PKCS #1: RSA Encryption Standard - version 1.5", RFC 2313, March 1998. - - [SAFER] Massey, J.L. "SAFER K-64: One Year Later", B. - Preneel, editor, Fast Software Encryption, Second - International Workshop (LNCS 1008) pp212-241, - Springer-Verlag 1995 - - - - -Callas, et. al. Standards Track [Page 64] - -RFC 2440 OpenPGP Message Format November 1998 - - -17. Full Copyright Statement - - Copyright (C) The Internet Society (1998). All Rights Reserved. - - This document and translations of it may be copied and furnished to - others, and derivative works that comment on or otherwise explain it - or assist in its implementation may be prepared, copied, published - and distributed, in whole or in part, without restriction of any - kind, provided that the above copyright notice and this paragraph are - included on all such copies and derivative works. However, this - document itself may not be modified in any way, such as by removing - the copyright notice or references to the Internet Society or other - Internet organizations, except as needed for the purpose of - developing Internet standards in which case the procedures for - copyrights defined in the Internet Standards process must be - followed, or as required to translate it into languages other than - English. - - The limited permissions granted above are perpetual and will not be - revoked by the Internet Society or its successors or assigns. - - This document and the information contained herein is provided on an - "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING - TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING - BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION - HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF - MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. - - - - - - - - - - - - - - - - - - - - - - - - -Callas, et. al. Standards Track [Page 65] - diff --git a/GPGMail/Documentation/rfc3156.txt b/GPGMail/Documentation/rfc3156.txt deleted file mode 100644 index 070c27ce..00000000 --- a/GPGMail/Documentation/rfc3156.txt +++ /dev/null @@ -1,843 +0,0 @@ - - - - - - -Network Working Group M. Elkins -Request for Comments: 3156 Network Associates, Inc. -Updates: 2015 D. Del Torto -Category: Standards Track CryptoRights Foundation - R. Levien - University of California at Berkeley - T. Roessler - August 2001 - - - MIME Security with OpenPGP - -Status of this Memo - - This document specifies an Internet standards track protocol for the - Internet community, and requests discussion and suggestions for - improvements. Please refer to the current edition of the "Internet - Official Protocol Standards" (STD 1) for the standardization state - and status of this protocol. Distribution of this memo is unlimited. - -Copyright Notice - - Copyright (C) The Internet Society (2001). All Rights Reserved. - -Abstract - - This document describes how the OpenPGP Message Format can be used to - provide privacy and authentication using the Multipurpose Internet - Mail Extensions (MIME) security content types described in RFC 1847. - -1. Introduction - - Work on integrating PGP (Pretty Good Privacy) with MIME [3] - (including the since withdrawn "application/pgp" content type) prior - to RFC 2015 suffered from a number of problems, the most significant - of which is the inability to recover signed message bodies without - parsing data structures specific to PGP. RFC 2015 makes use of the - elegant solution proposed in RFC 1847, which defines security - multipart formats for MIME. The security multiparts clearly separate - the signed message body from the signature, and have a number of - other desirable properties. This document revises RFC 2015 to adopt - the integration of PGP and MIME to the needs which emerged during the - work on the OpenPGP specification. - - This document defines three content types for implementing security - and privacy with OpenPGP: "application/pgp-encrypted", - "application/pgp-signature" and "application/pgp-keys". - - - - -Elkins, et al. Standards Track [Page 1] - -RFC 3156 MIME Security with OpenPGP August 2001 - - - The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", - "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this - document are to be interpreted as described in RFC 2119. - -2. OpenPGP data formats - - OpenPGP implementations can generate either ASCII armor (described in - [1]) or 8-bit binary output when encrypting data, generating a - digital signature, or extracting public key data. The ASCII armor - output is the REQUIRED method for data transfer. This allows those - users who do not have the means to interpret the formats described in - this document to be able to extract and use the OpenPGP information - in the message. - - When the amount of data to be transmitted requires that it be sent in - many parts, the MIME message/partial mechanism SHOULD be used rather - than the multi-part ASCII armor OpenPGP format. - -3. Content-Transfer-Encoding restrictions - - Multipart/signed and multipart/encrypted are to be treated by agents - as opaque, meaning that the data is not to be altered in any way [2], - [7]. However, many existing mail gateways will detect if the next - hop does not support MIME or 8-bit data and perform conversion to - either Quoted-Printable or Base64. This presents serious problems - for multipart/signed, in particular, where the signature is - invalidated when such an operation occurs. For this reason all data - signed according to this protocol MUST be constrained to 7 bits (8- - bit data MUST be encoded using either Quoted-Printable or Base64). - Note that this also includes the case where a signed object is also - encrypted (see section 6). This restriction will increase the - likelihood that the signature will be valid upon receipt. - - Additionally, implementations MUST make sure that no trailing - whitespace is present after the MIME encoding has been applied. - - Note: In most cases, trailing whitespace can either be removed, or - protected by applying an appropriate content-transfer-encoding. - However, special care must be taken when any header lines - either - in MIME entity headers, or in embedded RFC 822 headers - are - present which only consist of whitespace: Such lines must be - removed entirely, since replacing them by empty lines would turn - them into header delimiters, and change the semantics of the - message. The restrictions on whitespace are necessary in order to - make the hash calculated invariant under the text and binary mode - signature mechanisms provided by OpenPGP [1]. Also, they help to - avoid compatibility problems with PGP implementations which - predate the OpenPGP specification. - - - -Elkins, et al. Standards Track [Page 2] - -RFC 3156 MIME Security with OpenPGP August 2001 - - - Note: If any line begins with the string "From ", it is strongly - suggested that either the Quoted-Printable or Base64 MIME encoding - be applied. If Quoted-Printable is used, at least one of the - characters in the string should be encoded using the hexadecimal - coding rule. This is because many mail transfer and delivery - agents treat "From " (the word "from" followed immediately by a - space character) as the start of a new message and thus insert a - right angle-bracket (>) in front of any line beginning with - "From " to distinguish this case, invalidating the signature. - - Data that is ONLY to be encrypted is allowed to contain 8-bit - characters and trailing whitespace and therefore need not undergo the - conversion to a 7bit format, and the stripping of whitespace. - - Implementor's note: It cannot be stressed enough that applications - using this standard follow MIME's suggestion that you "be - conservative in what you generate, and liberal in what you - accept." In this particular case it means it would be wise for an - implementation to accept messages with any content-transfer- - encoding, but restrict generation to the 7-bit format required by - this memo. This will allow future compatibility in the event the - Internet SMTP framework becomes 8-bit friendly. - -4. OpenPGP encrypted data - - Before OpenPGP encryption, the data is written in MIME canonical - format (body and headers). - - OpenPGP encrypted data is denoted by the "multipart/encrypted" - content type, described in [2], and MUST have a "protocol" parameter - value of "application/pgp-encrypted". Note that the value of the - parameter MUST be enclosed in quotes. - - The multipart/encrypted MIME body MUST consist of exactly two body - parts, the first with content type "application/pgp-encrypted". This - body contains the control information. A message complying with this - standard MUST contain a "Version: 1" field in this body. Since the - OpenPGP packet format contains all other information necessary for - decrypting, no other information is required here. - - The second MIME body part MUST contain the actual encrypted data. It - MUST be labeled with a content type of "application/octet-stream". - - Example message: - - From: Michael Elkins - To: Michael Elkins - Mime-Version: 1.0 - - - -Elkins, et al. Standards Track [Page 3] - -RFC 3156 MIME Security with OpenPGP August 2001 - - - Content-Type: multipart/encrypted; boundary=foo; - protocol="application/pgp-encrypted" - - --foo - Content-Type: application/pgp-encrypted - - Version: 1 - - --foo - Content-Type: application/octet-stream - - -----BEGIN PGP MESSAGE----- - Version: 2.6.2 - - hIwDY32hYGCE8MkBA/wOu7d45aUxF4Q0RKJprD3v5Z9K1YcRJ2fve87lMlDlx4Oj - eW4GDdBfLbJE7VUpp13N19GL8e/AqbyyjHH4aS0YoTk10QQ9nnRvjY8nZL3MPXSZ - g9VGQxFeGqzykzmykU6A26MSMexR4ApeeON6xzZWfo+0yOqAq6lb46wsvldZ96YA - AABH78hyX7YX4uT1tNCWEIIBoqqvCeIMpp7UQ2IzBrXg6GtukS8NxbukLeamqVW3 - 1yt21DYOjuLzcMNe/JNsD9vDVCvOOG3OCi8= - =zzaA - -----END PGP MESSAGE----- - - --foo-- - -5. OpenPGP signed data - - OpenPGP signed messages are denoted by the "multipart/signed" content - type, described in [2], with a "protocol" parameter which MUST have a - value of "application/pgp-signature" (MUST be quoted). - - The "micalg" parameter for the "application/pgp-signature" protocol - MUST contain exactly one hash-symbol of the format "pgp-", where identifies the Message - Integrity Check (MIC) algorithm used to generate the signature. - Hash-symbols are constructed from the text names registered in [1] or - according to the mechanism defined in that document by converting the - text name to lower case and prefixing it with the four characters - "pgp-". - - Currently defined values are "pgp-md5", "pgp-sha1", "pgp-ripemd160", - "pgp-md2", "pgp-tiger192", and "pgp-haval-5-160". - - The multipart/signed body MUST consist of exactly two parts. The - first part contains the signed data in MIME canonical format, - including a set of appropriate content headers describing the data. - - The second body MUST contain the OpenPGP digital signature. It MUST - be labeled with a content type of "application/pgp-signature". - - - -Elkins, et al. Standards Track [Page 4] - -RFC 3156 MIME Security with OpenPGP August 2001 - - - Note: Implementations can either generate "signatures of a - canonical text document" or "signatures of a binary document", as - defined in [1]. The restrictions on the signed material put forth - in section 3 and in this section will make sure that the various - MIC algorithm variants specified in [1] and [5] will all produce - the same result. - - When the OpenPGP digital signature is generated: - - (1) The data to be signed MUST first be converted to its content- - type specific canonical form. For text/plain, this means - conversion to an appropriate character set and conversion of - line endings to the canonical sequence. - - (2) An appropriate Content-Transfer-Encoding is then applied; see - section 3. In particular, line endings in the encoded data - MUST use the canonical sequence where appropriate - (note that the canonical line ending may or may not be present - on the last line of encoded data and MUST NOT be included in - the signature if absent). - - (3) MIME content headers are then added to the body, each ending - with the canonical sequence. - - (4) As described in section 3 of this document, any trailing - whitespace MUST then be removed from the signed material. - - (5) As described in [2], the digital signature MUST be calculated - over both the data to be signed and its set of content headers. - - (6) The signature MUST be generated detached from the signed data - so that the process does not alter the signed data in any way. - - Note: The accepted OpenPGP convention is for signed data to end - with a sequence. Note that the sequence - immediately preceding a MIME boundary delimiter line is considered - to be part of the delimiter in [3], 5.1. Thus, it is not part of - the signed data preceding the delimiter line. An implementation - which elects to adhere to the OpenPGP convention has to make sure - it inserts a pair on the last line of the data to be - signed and transmitted (signed message and transmitted message - MUST be identical). - - Example message: - - From: Michael Elkins - To: Michael Elkins - Mime-Version: 1.0 - - - -Elkins, et al. Standards Track [Page 5] - -RFC 3156 MIME Security with OpenPGP August 2001 - - - Content-Type: multipart/signed; boundary=bar; micalg=pgp-md5; - protocol="application/pgp-signature" - - --bar - & Content-Type: text/plain; charset=iso-8859-1 - & Content-Transfer-Encoding: quoted-printable - & - & =A1Hola! - & - & Did you know that talking to yourself is a sign of senility? - & - & It's generally a good idea to encode lines that begin with - & From=20because some mail transport agents will insert a greater- - & than (>) sign, thus invalidating the signature. - & - & Also, in some cases it might be desirable to encode any =20 - & trailing whitespace that occurs on lines in order to ensure =20 - & that the message signature is not invalidated when passing =20 - & a gateway that modifies such whitespace (like BITNET). =20 - & - & me - - --bar - - Content-Type: application/pgp-signature - - -----BEGIN PGP MESSAGE----- - Version: 2.6.2 - - iQCVAwUBMJrRF2N9oWBghPDJAQE9UQQAtl7LuRVndBjrk4EqYBIb3h5QXIX/LC// - jJV5bNvkZIGPIcEmI5iFd9boEgvpirHtIREEqLQRkYNoBActFBZmh9GC3C041WGq - uMbrbxc+nIs1TIKlA08rVi9ig/2Yh7LFrK5Ein57U/W72vgSxLhe/zhdfolT9Brn - HOxEa44b+EI= - =ndaj - -----END PGP MESSAGE----- - - --bar-- - - The "&"s in the previous example indicate the portion of the data - over which the signature was calculated. - - Upon receipt of a signed message, an application MUST: - - (1) Convert line endings to the canonical sequence before - the signature can be verified. This is necessary since the - local MTA may have converted to a local end of line convention. - - - - - -Elkins, et al. Standards Track [Page 6] - -RFC 3156 MIME Security with OpenPGP August 2001 - - - (2) Pass both the signed data and its associated content headers - along with the OpenPGP signature to the signature verification - service. - -6. Encrypted and Signed Data - - Sometimes it is desirable to both digitally sign and then encrypt a - message to be sent. This protocol allows for two methods of - accomplishing this task. - -6.1. RFC 1847 Encapsulation - - In [2], it is stated that the data is first signed as a - multipart/signature body, and then encrypted to form the final - multipart/encrypted body. This is most useful for standard MIME- - compliant message forwarding. - - Example: - - Content-Type: multipart/encrypted; - protocol="application/pgp-encrypted"; boundary=foo - - --foo - Content-Type: application/pgp-encrypted - - Version: 1 - - --foo - Content-Type: application/octet-stream - - -----BEGIN PGP MESSAGE----- - & Content-Type: multipart/signed; micalg=pgp-md5 - & protocol="application/pgp-signature"; boundary=bar - & - & --bar - & Content-Type: text/plain; charset=us-ascii - & - & This message was first signed, and then encrypted. - & - & --bar - & Content-Type: application/pgp-signature - & - & -----BEGIN PGP MESSAGE----- - & Version: 2.6.2 - & - & iQCVAwUBMJrRF2N9oWBghPDJAQE9UQQAtl7LuRVndBjrk4EqYBIb3h5QXIX/LC// - & jJV5bNvkZIGPIcEmI5iFd9boEgvpirHtIREEqLQRkYNoBActFBZmh9GC3C041WGq - & uMbrbxc+nIs1TIKlA08rVi9ig/2Yh7LFrK5Ein57U/W72vgSxLhe/zhdfolT9Brn - - - -Elkins, et al. Standards Track [Page 7] - -RFC 3156 MIME Security with OpenPGP August 2001 - - - & HOxEa44b+EI= - & =ndaj - & -----END PGP MESSAGE----- - & - & --bar-- - -----END PGP MESSAGE----- - - --foo-- - - (The text preceded by '&' indicates that it is really encrypted, but - presented as text for clarity.) - -6.2. Combined method - - The OpenPGP packet format [1] describes a method for signing and - encrypting data in a single OpenPGP message. This method is allowed - in order to reduce processing overhead and increase compatibility - with non-MIME implementations of OpenPGP. The resulting data is - formatted as a "multipart/encrypted" object as described in Section - 4. - - Messages which are encrypted and signed in this combined fashion are - REQUIRED to follow the same canonicalization rules as - multipart/signed objects. - - It is explicitly allowed for an agent to decrypt a combined message - and rewrite it as a multipart/signed object using the signature data - embedded in the encrypted version. - -7. Distribution of OpenPGP public keys - - Content-Type: application/pgp-keys - Required parameters: none - Optional parameters: none - - A MIME body part of the content type "application/pgp-keys" contains - ASCII-armored transferable Public Key Packets as defined in [1], - section 10.1. - -8. Security Considerations - - Signatures of a canonical text document as defined in [1] ignore - trailing white space in signed material. Implementations which - choose to use signatures of canonical text documents will not be able - to detect the addition of whitespace in transit. - - See [3], [4] for more information on the security considerations - concerning the underlying protocols. - - - -Elkins, et al. Standards Track [Page 8] - -RFC 3156 MIME Security with OpenPGP August 2001 - - -9. IANA Considerations - - This document defines three media types: "application/pgp-encrypted", - "application/pgp-signature" and "application/pgp-keys". The - following sections specify the IANA registrations for these types. - -9.1. Registration of the application/pgp-encrypted media type - - MIME media type name: application - MIME subtype name: pgp-encrypted - Required parameters: none - Optional parameters: none - - Encoding considerations: - - Currently this media type always consists of a single 7bit text - string. - - Security considerations: - - See Section 8 and RFC 2440 Section 13. - - Interoperability considerations: none - - Published specification: - - This document. - - Additional information: - - Magic number(s): none - File extension(s): none - Macintosh File Type Code(s): none - - Person & email address to contact for further information: - - Michael Elkins - Email: me@cs.hmc.edu - - Intended usage: common - - Author/Change controller: - - Michael Elkins - Email: me@cs.hmc.edu - - - - - - -Elkins, et al. Standards Track [Page 9] - -RFC 3156 MIME Security with OpenPGP August 2001 - - -9.2. Registration of the application/pgp-signature media type - - MIME media type name: application - MIME subtype name: pgp-signature - Required parameters: none - Optional parameters: none - - Encoding considerations: - - The content of this media type always consists of 7bit text. - - Security considerations: - - See Section 8 and RFC 2440 Section 13. - - Interoperability considerations: none - - Published specification: - - RFC 2440 and this document. - - Additional information: - - Magic number(s): none - File extension(s): asc, sig - Macintosh File Type Code(s): pgDS - - Person & email address to contact for further information: - - Michael Elkins - Email: me@cs.hmc.edu - - Intended usage: common - - Author/Change controller: - - Michael Elkins - Email: me@cs.hmc.edu - -9.3. Registration of the application/pgp-keys media type - - MIME media type name: application - MIME subtype name: pgp-keys - Required parameters: none - Optional parameters: none - - - - - - -Elkins, et al. Standards Track [Page 10] - -RFC 3156 MIME Security with OpenPGP August 2001 - - - Encoding considerations: - - The content of this media type always consists of 7bit text. - - Security considerations: - - See Section 8 and RFC 2440 Section 13. - - Interoperability considerations: none - - Published specification: - - RFC 2440 and this document. - - Additional information: - - Magic number(s): none - File extension(s): asc - Macintosh File Type Code(s): none - - Person & email address to contact for further information: - - Michael Elkins - Email: me@cs.hmc.edu - - Intended usage: common - - Author/Change controller: - - Michael Elkins - Email: me@cs.hmc.edu - - - - - - - - - - - - - - - - - - - - -Elkins, et al. Standards Track [Page 11] - -RFC 3156 MIME Security with OpenPGP August 2001 - - -10. Notes - - "PGP" and "Pretty Good Privacy" are registered trademarks of Network - Associates, Inc. - -11. Acknowledgements - - This document relies on the work of the IETF's OpenPGP Working - Group's definitions of the OpenPGP Message Format. The OpenPGP - message format is currently described in RFC 2440 [1]. - - Special thanks are due: to Philip Zimmermann for his original and - ongoing work on PGP; to Charles Breed, Jon Callas and Dave Del Torto - for originally proposing the formation of the OpenPGP Working Group; - and to Steve Schoenfeld for helpful feedback during the draft - process. The authors would also like to thank the engineers at - Pretty Good Privacy, Inc (now Network Associates, Inc), including - Colin Plumb, Hal Finney, Jon Callas, Mark Elrod, Mark Weaver and - Lloyd Chambers, for their technical commentary. - - Additional thanks are due to Jeff Schiller and Derek Atkins for their - continuing support of strong cryptography and PGP freeware at MIT; to - Rodney Thayer of Sable Technology; to John Noerenberg, Steve Dorner - and Laurence Lundblade of the Eudora team at QUALCOMM, Inc; to Bodo - Moeller for proposing the approach followed with respect to trailing - whitespace; to John Gilmore, Hugh Daniel and Fred Ringel (at - Rivertown) and Ian Bell (at Turnpike) for their timely critical - commentary; and to the international members of the IETF's OpenPGP - mailing list, including William Geiger, Lutz Donnerhacke and Kazu - Yamamoto. The idea to use multipart/mixed with multipart/signed has - been attributed to James Galvin. Finally, our gratitude is due to - the many members of the "Cypherpunks," "Coderpunks" and "pgp-users" - mailing lists and the many users - of PGP worldwide for helping keep the path to privacy open. - - - - - - - - - - - - - - - - - -Elkins, et al. Standards Track [Page 12] - -RFC 3156 MIME Security with OpenPGP August 2001 - - -12. Addresses of the Authors and OpenPGP Working Group Chair - - The OpenPGP working group can be contacted via the current chair: - - John W. Noerenberg II - Qualcomm, Inc. - 5775 Morehouse Dr. - San Diego, CA 92121 USA - - Phone: +1 619 658 3510 - EMail: jwn2@qualcomm.com - - The principal authors of this document are: - - Dave Del Torto - CryptoRights Foundation - 80 Alviso Street, Mailstop: CRF - San Francisco, CA 94127 USA - - Phone: +1.415.334.5533, vm: #2 - EMail: ddt@cryptorights.org, ddt@openpgp.net - - - Michael Elkins - Network Associates, Inc. - 3415 S. Sepulveda Blvd Suite 700 - Los Angeles, CA 90034 USA - - Phone: +1.310.737.1663 - Fax: +1.310.737.1755 - Email: me@cs.hmc.edu, Michael_Elkins@NAI.com - - - Raph Levien - University of California at Berkeley - 579 Soda Hall - Berkeley, CA 94720 USA - - Phone: +1.510.642.6509 - EMail: raph@acm.org - - - Thomas Roessler - Nordstrasse 99 - D-53111 Bonn, Germany - - Phone: +49-228-638007 - EMail: roessler@does-not-exist.org - - - -Elkins, et al. Standards Track [Page 13] - -RFC 3156 MIME Security with OpenPGP August 2001 - - -References - - [1] Callas, J., Donnerhacke, L., Finney, H. and R. Thayer, "OpenPGP - Message Format", RFC 2440, November 1998. - - [2] Galvin, J., Murphy, G., Crocker, S. and N. Freed, "Security - Multiparts for MIME: Multipart/Signed and Multipart/Encrypted", - RFC 1847, October 1995. - - [3] Freed, N. and N. Borenstein, "Multipurpose Internet Mail - Extensions (MIME) Part Two: Media Types", RFC 2046, November - 1996. - - [4] Galvin, J., Murphy, G., Crocker, S. and N. Freed, "MIME Object - Security Services", RFC 1848, October 1995. - - [5] Atkins, D., Stallings, W. and P. Zimmermann, "PGP Message - Exchange Formats", RFC 1991, August 1996. - - [6] Elkins, M., "MIME Security with Pretty Good Privacy (PGP)", RFC - 2015, October 1996. - - [7] Freed, N., "Gateways and MIME Security Multiparts", RFC 2480, - January 1999. - - - - - - - - - - - - - - - - - - - - - - - - - - - -Elkins, et al. Standards Track [Page 14] - -RFC 3156 MIME Security with OpenPGP August 2001 - - -Full Copyright Statement - - Copyright (C) The Internet Society (2001). All Rights Reserved. - - This document and translations of it may be copied and furnished to - others, and derivative works that comment on or otherwise explain it - or assist in its implementation may be prepared, copied, published - and distributed, in whole or in part, without restriction of any - kind, provided that the above copyright notice and this paragraph are - included on all such copies and derivative works. However, this - document itself may not be modified in any way, such as by removing - the copyright notice or references to the Internet Society or other - Internet organizations, except as needed for the purpose of - developing Internet standards in which case the procedures for - copyrights defined in the Internet Standards process must be - followed, or as required to translate it into languages other than - English. - - The limited permissions granted above are perpetual and will not be - revoked by the Internet Society or its successors or assigns. - - This document and the information contained herein is provided on an - "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING - TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING - BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION - HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF - MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. - -Acknowledgement - - Funding for the RFC Editor function is currently provided by the - Internet Society. - - - - - - - - - - - - - - - - - - - -Elkins, et al. Standards Track [Page 15] - diff --git a/GPGMail/Documentation/rfc4880.txt b/GPGMail/Documentation/rfc4880.txt deleted file mode 100644 index a02674af..00000000 --- a/GPGMail/Documentation/rfc4880.txt +++ /dev/null @@ -1,5043 +0,0 @@ - - - - - - -Network Working Group J. Callas -Request for Comments: 4880 PGP Corporation -Obsoletes: 1991, 2440 L. Donnerhacke -Category: Standards Track IKS GmbH - H. Finney - PGP Corporation - D. Shaw - R. Thayer - November 2007 - - - OpenPGP Message Format - -Status of This Memo - - This document specifies an Internet standards track protocol for the - Internet community, and requests discussion and suggestions for - improvements. Please refer to the current edition of the "Internet - Official Protocol Standards" (STD 1) for the standardization state - and status of this protocol. Distribution of this memo is unlimited. - -Abstract - - This document is maintained in order to publish all necessary - information needed to develop interoperable applications based on the - OpenPGP format. It is not a step-by-step cookbook for writing an - application. It describes only the format and methods needed to - read, check, generate, and write conforming packets crossing any - network. It does not deal with storage and implementation questions. - It does, however, discuss implementation issues necessary to avoid - security flaws. - - OpenPGP software uses a combination of strong public-key and - symmetric cryptography to provide security services for electronic - communications and data storage. These services include - confidentiality, key management, authentication, and digital - signatures. This document specifies the message formats used in - OpenPGP. - - - - - - - - - - - - - -Callas, et al Standards Track [Page 1] - -RFC 4880 OpenPGP Message Format November 2007 - - -Table of Contents - - 1. Introduction ....................................................5 - 1.1. Terms ......................................................5 - 2. General functions ...............................................6 - 2.1. Confidentiality via Encryption .............................6 - 2.2. Authentication via Digital Signature .......................7 - 2.3. Compression ................................................7 - 2.4. Conversion to Radix-64 .....................................8 - 2.5. Signature-Only Applications ................................8 - 3. Data Element Formats ............................................8 - 3.1. Scalar Numbers .............................................8 - 3.2. Multiprecision Integers ....................................9 - 3.3. Key IDs ....................................................9 - 3.4. Text .......................................................9 - 3.5. Time Fields ...............................................10 - 3.6. Keyrings ..................................................10 - 3.7. String-to-Key (S2K) Specifiers ............................10 - 3.7.1. String-to-Key (S2K) Specifier Types ................10 - 3.7.1.1. Simple S2K ................................10 - 3.7.1.2. Salted S2K ................................11 - 3.7.1.3. Iterated and Salted S2K ...................11 - 3.7.2. String-to-Key Usage ................................12 - 3.7.2.1. Secret-Key Encryption .....................12 - 3.7.2.2. Symmetric-Key Message Encryption ..........13 - 4. Packet Syntax ..................................................13 - 4.1. Overview ..................................................13 - 4.2. Packet Headers ............................................13 - 4.2.1. Old Format Packet Lengths ..........................14 - 4.2.2. New Format Packet Lengths ..........................15 - 4.2.2.1. One-Octet Lengths .........................15 - 4.2.2.2. Two-Octet Lengths .........................15 - 4.2.2.3. Five-Octet Lengths ........................15 - 4.2.2.4. Partial Body Lengths ......................16 - 4.2.3. Packet Length Examples .............................16 - 4.3. Packet Tags ...............................................17 - 5. Packet Types ...................................................17 - 5.1. Public-Key Encrypted Session Key Packets (Tag 1) ..........17 - 5.2. Signature Packet (Tag 2) ..................................19 - 5.2.1. Signature Types ....................................19 - 5.2.2. Version 3 Signature Packet Format ..................21 - 5.2.3. Version 4 Signature Packet Format ..................24 - 5.2.3.1. Signature Subpacket Specification .........25 - 5.2.3.2. Signature Subpacket Types .................27 - 5.2.3.3. Notes on Self-Signatures ..................27 - 5.2.3.4. Signature Creation Time ...................28 - 5.2.3.5. Issuer ....................................28 - 5.2.3.6. Key Expiration Time .......................28 - - - -Callas, et al Standards Track [Page 2] - -RFC 4880 OpenPGP Message Format November 2007 - - - 5.2.3.7. Preferred Symmetric Algorithms ............28 - 5.2.3.8. Preferred Hash Algorithms .................29 - 5.2.3.9. Preferred Compression Algorithms ..........29 - 5.2.3.10. Signature Expiration Time ................29 - 5.2.3.11. Exportable Certification .................29 - 5.2.3.12. Revocable ................................30 - 5.2.3.13. Trust Signature ..........................30 - 5.2.3.14. Regular Expression .......................31 - 5.2.3.15. Revocation Key ...........................31 - 5.2.3.16. Notation Data ............................31 - 5.2.3.17. Key Server Preferences ...................32 - 5.2.3.18. Preferred Key Server .....................33 - 5.2.3.19. Primary User ID ..........................33 - 5.2.3.20. Policy URI ...............................33 - 5.2.3.21. Key Flags ................................33 - 5.2.3.22. Signer's User ID .........................34 - 5.2.3.23. Reason for Revocation ....................35 - 5.2.3.24. Features .................................36 - 5.2.3.25. Signature Target .........................36 - 5.2.3.26. Embedded Signature .......................37 - 5.2.4. Computing Signatures ...............................37 - 5.2.4.1. Subpacket Hints ...........................38 - 5.3. Symmetric-Key Encrypted Session Key Packets (Tag 3) .......38 - 5.4. One-Pass Signature Packets (Tag 4) ........................39 - 5.5. Key Material Packet .......................................40 - 5.5.1. Key Packet Variants ................................40 - 5.5.1.1. Public-Key Packet (Tag 6) .................40 - 5.5.1.2. Public-Subkey Packet (Tag 14) .............40 - 5.5.1.3. Secret-Key Packet (Tag 5) .................41 - 5.5.1.4. Secret-Subkey Packet (Tag 7) ..............41 - 5.5.2. Public-Key Packet Formats ..........................41 - 5.5.3. Secret-Key Packet Formats ..........................43 - 5.6. Compressed Data Packet (Tag 8) ............................45 - 5.7. Symmetrically Encrypted Data Packet (Tag 9) ...............45 - 5.8. Marker Packet (Obsolete Literal Packet) (Tag 10) ..........46 - 5.9. Literal Data Packet (Tag 11) ..............................46 - 5.10. Trust Packet (Tag 12) ....................................47 - 5.11. User ID Packet (Tag 13) ..................................48 - 5.12. User Attribute Packet (Tag 17) ...........................48 - 5.12.1. The Image Attribute Subpacket .....................48 - 5.13. Sym. Encrypted Integrity Protected Data Packet (Tag 18) ..49 - 5.14. Modification Detection Code Packet (Tag 19) ..............52 - 6. Radix-64 Conversions ...........................................53 - 6.1. An Implementation of the CRC-24 in "C" ....................54 - 6.2. Forming ASCII Armor .......................................54 - 6.3. Encoding Binary in Radix-64 ...............................57 - 6.4. Decoding Radix-64 .........................................58 - 6.5. Examples of Radix-64 ......................................59 - - - -Callas, et al Standards Track [Page 3] - -RFC 4880 OpenPGP Message Format November 2007 - - - 6.6. Example of an ASCII Armored Message .......................59 - 7. Cleartext Signature Framework ..................................59 - 7.1. Dash-Escaped Text .........................................60 - 8. Regular Expressions ............................................61 - 9. Constants ......................................................61 - 9.1. Public-Key Algorithms .....................................62 - 9.2. Symmetric-Key Algorithms ..................................62 - 9.3. Compression Algorithms ....................................63 - 9.4. Hash Algorithms ...........................................63 - 10. IANA Considerations ...........................................63 - 10.1. New String-to-Key Specifier Types ........................64 - 10.2. New Packets ..............................................64 - 10.2.1. User Attribute Types ..............................64 - 10.2.1.1. Image Format Subpacket Types .............64 - 10.2.2. New Signature Subpackets ..........................64 - 10.2.2.1. Signature Notation Data Subpackets .......65 - 10.2.2.2. Key Server Preference Extensions .........65 - 10.2.2.3. Key Flags Extensions .....................65 - 10.2.2.4. Reason For Revocation Extensions .........65 - 10.2.2.5. Implementation Features ..................66 - 10.2.3. New Packet Versions ...............................66 - 10.3. New Algorithms ...........................................66 - 10.3.1. Public-Key Algorithms .............................66 - 10.3.2. Symmetric-Key Algorithms ..........................67 - 10.3.3. Hash Algorithms ...................................67 - 10.3.4. Compression Algorithms ............................67 - 11. Packet Composition ............................................67 - 11.1. Transferable Public Keys .................................67 - 11.2. Transferable Secret Keys .................................69 - 11.3. OpenPGP Messages .........................................69 - 11.4. Detached Signatures ......................................70 - 12. Enhanced Key Formats ..........................................70 - 12.1. Key Structures ...........................................70 - 12.2. Key IDs and Fingerprints .................................71 - 13. Notes on Algorithms ...........................................72 - 13.1. PKCS#1 Encoding in OpenPGP ...............................72 - 13.1.1. EME-PKCS1-v1_5-ENCODE .............................73 - 13.1.2. EME-PKCS1-v1_5-DECODE .............................73 - 13.1.3. EMSA-PKCS1-v1_5 ...................................74 - 13.2. Symmetric Algorithm Preferences ..........................75 - 13.3. Other Algorithm Preferences ..............................76 - 13.3.1. Compression Preferences ...........................76 - 13.3.2. Hash Algorithm Preferences ........................76 - 13.4. Plaintext ................................................77 - 13.5. RSA ......................................................77 - 13.6. DSA ......................................................77 - 13.7. Elgamal ..................................................78 - 13.8. Reserved Algorithm Numbers ...............................78 - - - -Callas, et al Standards Track [Page 4] - -RFC 4880 OpenPGP Message Format November 2007 - - - 13.9. OpenPGP CFB Mode .........................................78 - 13.10. Private or Experimental Parameters ......................79 - 13.11. Extension of the MDC System .............................80 - 13.12. Meta-Considerations for Expansion .......................80 - 14. Security Considerations .......................................81 - 15. Implementation Nits ...........................................84 - 16. References ....................................................86 - 16.1. Normative References .....................................86 - 16.2. Informative References ...................................88 - -1. Introduction - - This document provides information on the message-exchange packet - formats used by OpenPGP to provide encryption, decryption, signing, - and key management functions. It is a revision of RFC 2440, "OpenPGP - Message Format", which itself replaces RFC 1991, "PGP Message - Exchange Formats" [RFC1991] [RFC2440]. - -1.1. Terms - - * OpenPGP - This is a term for security software that uses PGP 5.x - as a basis, formalized in RFC 2440 and this document. - - * PGP - Pretty Good Privacy. PGP is a family of software systems - developed by Philip R. Zimmermann from which OpenPGP is based. - - * PGP 2.6.x - This version of PGP has many variants, hence the term - PGP 2.6.x. It used only RSA, MD5, and IDEA for its cryptographic - transforms. An informational RFC, RFC 1991, was written - describing this version of PGP. - - * PGP 5.x - This version of PGP is formerly known as "PGP 3" in the - community and also in the predecessor of this document, RFC 1991. - It has new formats and corrects a number of problems in the PGP - 2.6.x design. It is referred to here as PGP 5.x because that - software was the first release of the "PGP 3" code base. - - * GnuPG - GNU Privacy Guard, also called GPG. GnuPG is an OpenPGP - implementation that avoids all encumbered algorithms. - Consequently, early versions of GnuPG did not include RSA public - keys. GnuPG may or may not have (depending on version) support - for IDEA or other encumbered algorithms. - - "PGP", "Pretty Good", and "Pretty Good Privacy" are trademarks of PGP - Corporation and are used with permission. The term "OpenPGP" refers - to the protocol described in this and related documents. - - - - - -Callas, et al Standards Track [Page 5] - -RFC 4880 OpenPGP Message Format November 2007 - - - The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", - "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this - document are to be interpreted as described in [RFC2119]. - - The key words "PRIVATE USE", "HIERARCHICAL ALLOCATION", "FIRST COME - FIRST SERVED", "EXPERT REVIEW", "SPECIFICATION REQUIRED", "IESG - APPROVAL", "IETF CONSENSUS", and "STANDARDS ACTION" that appear in - this document when used to describe namespace allocation are to be - interpreted as described in [RFC2434]. - -2. General functions - - OpenPGP provides data integrity services for messages and data files - by using these core technologies: - - - digital signatures - - - encryption - - - compression - - - Radix-64 conversion - - In addition, OpenPGP provides key management and certificate - services, but many of these are beyond the scope of this document. - -2.1. Confidentiality via Encryption - - OpenPGP combines symmetric-key encryption and public-key encryption - to provide confidentiality. When made confidential, first the object - is encrypted using a symmetric encryption algorithm. Each symmetric - key is used only once, for a single object. A new "session key" is - generated as a random number for each object (sometimes referred to - as a session). Since it is used only once, the session key is bound - to the message and transmitted with it. To protect the key, it is - encrypted with the receiver's public key. The sequence is as - follows: - - 1. The sender creates a message. - - 2. The sending OpenPGP generates a random number to be used as a - session key for this message only. - - 3. The session key is encrypted using each recipient's public key. - These "encrypted session keys" start the message. - - - - - - -Callas, et al Standards Track [Page 6] - -RFC 4880 OpenPGP Message Format November 2007 - - - 4. The sending OpenPGP encrypts the message using the session key, - which forms the remainder of the message. Note that the message - is also usually compressed. - - 5. The receiving OpenPGP decrypts the session key using the - recipient's private key. - - 6. The receiving OpenPGP decrypts the message using the session key. - If the message was compressed, it will be decompressed. - - With symmetric-key encryption, an object may be encrypted with a - symmetric key derived from a passphrase (or other shared secret), or - a two-stage mechanism similar to the public-key method described - above in which a session key is itself encrypted with a symmetric - algorithm keyed from a shared secret. - - Both digital signature and confidentiality services may be applied to - the same message. First, a signature is generated for the message - and attached to the message. Then the message plus signature is - encrypted using a symmetric session key. Finally, the session key is - encrypted using public-key encryption and prefixed to the encrypted - block. - -2.2. Authentication via Digital Signature - - The digital signature uses a hash code or message digest algorithm, - and a public-key signature algorithm. The sequence is as follows: - - 1. The sender creates a message. - - 2. The sending software generates a hash code of the message. - - 3. The sending software generates a signature from the hash code - using the sender's private key. - - 4. The binary signature is attached to the message. - - 5. The receiving software keeps a copy of the message signature. - - 6. The receiving software generates a new hash code for the received - message and verifies it using the message's signature. If the - verification is successful, the message is accepted as authentic. - -2.3. Compression - - OpenPGP implementations SHOULD compress the message after applying - the signature but before encryption. - - - - -Callas, et al Standards Track [Page 7] - -RFC 4880 OpenPGP Message Format November 2007 - - - If an implementation does not implement compression, its authors - should be aware that most OpenPGP messages in the world are - compressed. Thus, it may even be wise for a space-constrained - implementation to implement decompression, but not compression. - - Furthermore, compression has the added side effect that some types of - attacks can be thwarted by the fact that slightly altered, compressed - data rarely uncompresses without severe errors. This is hardly - rigorous, but it is operationally useful. These attacks can be - rigorously prevented by implementing and using Modification Detection - Codes as described in sections following. - -2.4. Conversion to Radix-64 - - OpenPGP's underlying native representation for encrypted messages, - signature certificates, and keys is a stream of arbitrary octets. - Some systems only permit the use of blocks consisting of seven-bit, - printable text. For transporting OpenPGP's native raw binary octets - through channels that are not safe to raw binary data, a printable - encoding of these binary octets is needed. OpenPGP provides the - service of converting the raw 8-bit binary octet stream to a stream - of printable ASCII characters, called Radix-64 encoding or ASCII - Armor. - - Implementations SHOULD provide Radix-64 conversions. - -2.5. Signature-Only Applications - - OpenPGP is designed for applications that use both encryption and - signatures, but there are a number of problems that are solved by a - signature-only implementation. Although this specification requires - both encryption and signatures, it is reasonable for there to be - subset implementations that are non-conformant only in that they omit - encryption. - -3. Data Element Formats - - This section describes the data elements used by OpenPGP. - -3.1. Scalar Numbers - - Scalar numbers are unsigned and are always stored in big-endian - format. Using n[k] to refer to the kth octet being interpreted, the - value of a two-octet scalar is ((n[0] << 8) + n[1]). The value of a - four-octet scalar is ((n[0] << 24) + (n[1] << 16) + (n[2] << 8) + - n[3]). - - - - - -Callas, et al Standards Track [Page 8] - -RFC 4880 OpenPGP Message Format November 2007 - - -3.2. Multiprecision Integers - - Multiprecision integers (also called MPIs) are unsigned integers used - to hold large integers such as the ones used in cryptographic - calculations. - - An MPI consists of two pieces: a two-octet scalar that is the length - of the MPI in bits followed by a string of octets that contain the - actual integer. - - These octets form a big-endian number; a big-endian number can be - made into an MPI by prefixing it with the appropriate length. - - Examples: - - (all numbers are in hexadecimal) - - The string of octets [00 01 01] forms an MPI with the value 1. The - string [00 09 01 FF] forms an MPI with the value of 511. - - Additional rules: - - The size of an MPI is ((MPI.length + 7) / 8) + 2 octets. - - The length field of an MPI describes the length starting from its - most significant non-zero bit. Thus, the MPI [00 02 01] is not - formed correctly. It should be [00 01 01]. - - Unused bits of an MPI MUST be zero. - - Also note that when an MPI is encrypted, the length refers to the - plaintext MPI. It may be ill-formed in its ciphertext. - -3.3. Key IDs - - A Key ID is an eight-octet scalar that identifies a key. - Implementations SHOULD NOT assume that Key IDs are unique. The - section "Enhanced Key Formats" below describes how Key IDs are - formed. - -3.4. Text - - Unless otherwise specified, the character set for text is the UTF-8 - [RFC3629] encoding of Unicode [ISO10646]. - - - - - - - -Callas, et al Standards Track [Page 9] - -RFC 4880 OpenPGP Message Format November 2007 - - -3.5. Time Fields - - A time field is an unsigned four-octet number containing the number - of seconds elapsed since midnight, 1 January 1970 UTC. - -3.6. Keyrings - - A keyring is a collection of one or more keys in a file or database. - Traditionally, a keyring is simply a sequential list of keys, but may - be any suitable database. It is beyond the scope of this standard to - discuss the details of keyrings or other databases. - -3.7. String-to-Key (S2K) Specifiers - - String-to-key (S2K) specifiers are used to convert passphrase strings - into symmetric-key encryption/decryption keys. They are used in two - places, currently: to encrypt the secret part of private keys in the - private keyring, and to convert passphrases to encryption keys for - symmetrically encrypted messages. - -3.7.1. String-to-Key (S2K) Specifier Types - - There are three types of S2K specifiers currently supported, and - some reserved values: - - ID S2K Type - -- -------- - 0 Simple S2K - 1 Salted S2K - 2 Reserved value - 3 Iterated and Salted S2K - 100 to 110 Private/Experimental S2K - - These are described in Sections 3.7.1.1 - 3.7.1.3. - -3.7.1.1. Simple S2K - - This directly hashes the string to produce the key data. See below - for how this hashing is done. - - Octet 0: 0x00 - Octet 1: hash algorithm - - Simple S2K hashes the passphrase to produce the session key. The - manner in which this is done depends on the size of the session key - (which will depend on the cipher used) and the size of the hash - - - - - -Callas, et al Standards Track [Page 10] - -RFC 4880 OpenPGP Message Format November 2007 - - - algorithm's output. If the hash size is greater than the session key - size, the high-order (leftmost) octets of the hash are used as the - key. - - If the hash size is less than the key size, multiple instances of the - hash context are created -- enough to produce the required key data. - These instances are preloaded with 0, 1, 2, ... octets of zeros (that - is to say, the first instance has no preloading, the second gets - preloaded with 1 octet of zero, the third is preloaded with two - octets of zeros, and so forth). - - As the data is hashed, it is given independently to each hash - context. Since the contexts have been initialized differently, they - will each produce different hash output. Once the passphrase is - hashed, the output data from the multiple hashes is concatenated, - first hash leftmost, to produce the key data, with any excess octets - on the right discarded. - -3.7.1.2. Salted S2K - - This includes a "salt" value in the S2K specifier -- some arbitrary - data -- that gets hashed along with the passphrase string, to help - prevent dictionary attacks. - - Octet 0: 0x01 - Octet 1: hash algorithm - Octets 2-9: 8-octet salt value - - Salted S2K is exactly like Simple S2K, except that the input to the - hash function(s) consists of the 8 octets of salt from the S2K - specifier, followed by the passphrase. - -3.7.1.3. Iterated and Salted S2K - - This includes both a salt and an octet count. The salt is combined - with the passphrase and the resulting value is hashed repeatedly. - This further increases the amount of work an attacker must do to try - dictionary attacks. - - Octet 0: 0x03 - Octet 1: hash algorithm - Octets 2-9: 8-octet salt value - Octet 10: count, a one-octet, coded value - - - - - - - - -Callas, et al Standards Track [Page 11] - -RFC 4880 OpenPGP Message Format November 2007 - - - The count is coded into a one-octet number using the following - formula: - - #define EXPBIAS 6 - count = ((Int32)16 + (c & 15)) << ((c >> 4) + EXPBIAS); - - The above formula is in C, where "Int32" is a type for a 32-bit - integer, and the variable "c" is the coded count, Octet 10. - - Iterated-Salted S2K hashes the passphrase and salt data multiple - times. The total number of octets to be hashed is specified in the - encoded count in the S2K specifier. Note that the resulting count - value is an octet count of how many octets will be hashed, not an - iteration count. - - Initially, one or more hash contexts are set up as with the other S2K - algorithms, depending on how many octets of key data are needed. - Then the salt, followed by the passphrase data, is repeatedly hashed - until the number of octets specified by the octet count has been - hashed. The one exception is that if the octet count is less than - the size of the salt plus passphrase, the full salt plus passphrase - will be hashed even though that is greater than the octet count. - After the hashing is done, the data is unloaded from the hash - context(s) as with the other S2K algorithms. - -3.7.2. String-to-Key Usage - - Implementations SHOULD use salted or iterated-and-salted S2K - specifiers, as simple S2K specifiers are more vulnerable to - dictionary attacks. - -3.7.2.1. Secret-Key Encryption - - An S2K specifier can be stored in the secret keyring to specify how - to convert the passphrase to a key that unlocks the secret data. - Older versions of PGP just stored a cipher algorithm octet preceding - the secret data or a zero to indicate that the secret data was - unencrypted. The MD5 hash function was always used to convert the - passphrase to a key for the specified cipher algorithm. - - For compatibility, when an S2K specifier is used, the special value - 254 or 255 is stored in the position where the hash algorithm octet - would have been in the old data structure. This is then followed - immediately by a one-octet algorithm identifier, and then by the S2K - specifier as encoded above. - - - - - - -Callas, et al Standards Track [Page 12] - -RFC 4880 OpenPGP Message Format November 2007 - - - Therefore, preceding the secret data there will be one of these - possibilities: - - 0: secret data is unencrypted (no passphrase) - 255 or 254: followed by algorithm octet and S2K specifier - Cipher alg: use Simple S2K algorithm using MD5 hash - - This last possibility, the cipher algorithm number with an implicit - use of MD5 and IDEA, is provided for backward compatibility; it MAY - be understood, but SHOULD NOT be generated, and is deprecated. - - These are followed by an Initial Vector of the same length as the - block size of the cipher for the decryption of the secret values, if - they are encrypted, and then the secret-key values themselves. - -3.7.2.2. Symmetric-Key Message Encryption - - OpenPGP can create a Symmetric-key Encrypted Session Key (ESK) packet - at the front of a message. This is used to allow S2K specifiers to - be used for the passphrase conversion or to create messages with a - mix of symmetric-key ESKs and public-key ESKs. This allows a message - to be decrypted either with a passphrase or a public-key pair. - - PGP 2.X always used IDEA with Simple string-to-key conversion when - encrypting a message with a symmetric algorithm. This is deprecated, - but MAY be used for backward-compatibility. - -4. Packet Syntax - - This section describes the packets used by OpenPGP. - -4.1. Overview - - An OpenPGP message is constructed from a number of records that are - traditionally called packets. A packet is a chunk of data that has a - tag specifying its meaning. An OpenPGP message, keyring, - certificate, and so forth consists of a number of packets. Some of - those packets may contain other OpenPGP packets (for example, a - compressed data packet, when uncompressed, contains OpenPGP packets). - - Each packet consists of a packet header, followed by the packet body. - The packet header is of variable length. - -4.2. Packet Headers - - The first octet of the packet header is called the "Packet Tag". It - determines the format of the header and denotes the packet contents. - The remainder of the packet header is the length of the packet. - - - -Callas, et al Standards Track [Page 13] - -RFC 4880 OpenPGP Message Format November 2007 - - - Note that the most significant bit is the leftmost bit, called bit 7. - A mask for this bit is 0x80 in hexadecimal. - - +---------------+ - PTag |7 6 5 4 3 2 1 0| - +---------------+ - Bit 7 -- Always one - Bit 6 -- New packet format if set - - PGP 2.6.x only uses old format packets. Thus, software that - interoperates with those versions of PGP must only use old format - packets. If interoperability is not an issue, the new packet format - is RECOMMENDED. Note that old format packets have four bits of - packet tags, and new format packets have six; some features cannot be - used and still be backward-compatible. - - Also note that packets with a tag greater than or equal to 16 MUST - use new format packets. The old format packets can only express tags - less than or equal to 15. - - Old format packets contain: - - Bits 5-2 -- packet tag - Bits 1-0 -- length-type - - New format packets contain: - - Bits 5-0 -- packet tag - -4.2.1. Old Format Packet Lengths - - The meaning of the length-type in old format packets is: - - 0 - The packet has a one-octet length. The header is 2 octets long. - - 1 - The packet has a two-octet length. The header is 3 octets long. - - 2 - The packet has a four-octet length. The header is 5 octets long. - - 3 - The packet is of indeterminate length. The header is 1 octet - long, and the implementation must determine how long the packet - is. If the packet is in a file, this means that the packet - extends until the end of the file. In general, an implementation - SHOULD NOT use indeterminate-length packets except where the end - of the data will be clear from the context, and even then it is - better to use a definite length, or a new format header. The new - format headers described below have a mechanism for precisely - encoding data of indeterminate length. - - - -Callas, et al Standards Track [Page 14] - -RFC 4880 OpenPGP Message Format November 2007 - - -4.2.2. New Format Packet Lengths - - New format packets have four possible ways of encoding length: - - 1. A one-octet Body Length header encodes packet lengths of up to 191 - octets. - - 2. A two-octet Body Length header encodes packet lengths of 192 to - 8383 octets. - - 3. A five-octet Body Length header encodes packet lengths of up to - 4,294,967,295 (0xFFFFFFFF) octets in length. (This actually - encodes a four-octet scalar number.) - - 4. When the length of the packet body is not known in advance by the - issuer, Partial Body Length headers encode a packet of - indeterminate length, effectively making it a stream. - -4.2.2.1. One-Octet Lengths - - A one-octet Body Length header encodes a length of 0 to 191 octets. - This type of length header is recognized because the one octet value - is less than 192. The body length is equal to: - - bodyLen = 1st_octet; - -4.2.2.2. Two-Octet Lengths - - A two-octet Body Length header encodes a length of 192 to 8383 - octets. It is recognized because its first octet is in the range 192 - to 223. The body length is equal to: - - bodyLen = ((1st_octet - 192) << 8) + (2nd_octet) + 192 - -4.2.2.3. Five-Octet Lengths - - A five-octet Body Length header consists of a single octet holding - the value 255, followed by a four-octet scalar. The body length is - equal to: - - bodyLen = (2nd_octet << 24) | (3rd_octet << 16) | - (4th_octet << 8) | 5th_octet - - This basic set of one, two, and five-octet lengths is also used - internally to some packets. - - - - - - -Callas, et al Standards Track [Page 15] - -RFC 4880 OpenPGP Message Format November 2007 - - -4.2.2.4. Partial Body Lengths - - A Partial Body Length header is one octet long and encodes the length - of only part of the data packet. This length is a power of 2, from 1 - to 1,073,741,824 (2 to the 30th power). It is recognized by its one - octet value that is greater than or equal to 224, and less than 255. - The Partial Body Length is equal to: - - partialBodyLen = 1 << (1st_octet & 0x1F); - - Each Partial Body Length header is followed by a portion of the - packet body data. The Partial Body Length header specifies this - portion's length. Another length header (one octet, two-octet, - five-octet, or partial) follows that portion. The last length header - in the packet MUST NOT be a Partial Body Length header. Partial Body - Length headers may only be used for the non-final parts of the - packet. - - Note also that the last Body Length header can be a zero-length - header. - - An implementation MAY use Partial Body Lengths for data packets, be - they literal, compressed, or encrypted. The first partial length - MUST be at least 512 octets long. Partial Body Lengths MUST NOT be - used for any other packet types. - -4.2.3. Packet Length Examples - - These examples show ways that new format packets might encode the - packet lengths. - - A packet with length 100 may have its length encoded in one octet: - 0x64. This is followed by 100 octets of data. - - A packet with length 1723 may have its length encoded in two octets: - 0xC5, 0xFB. This header is followed by the 1723 octets of data. - - A packet with length 100000 may have its length encoded in five - octets: 0xFF, 0x00, 0x01, 0x86, 0xA0. - - It might also be encoded in the following octet stream: 0xEF, first - 32768 octets of data; 0xE1, next two octets of data; 0xE0, next one - octet of data; 0xF0, next 65536 octets of data; 0xC5, 0xDD, last 1693 - octets of data. This is just one possible encoding, and many - variations are possible on the size of the Partial Body Length - headers, as long as a regular Body Length header encodes the last - portion of the data. - - - - -Callas, et al Standards Track [Page 16] - -RFC 4880 OpenPGP Message Format November 2007 - - - Please note that in all of these explanations, the total length of - the packet is the length of the header(s) plus the length of the - body. - -4.3. Packet Tags - - The packet tag denotes what type of packet the body holds. Note that - old format headers can only have tags less than 16, whereas new - format headers can have tags as great as 63. The defined tags (in - decimal) are as follows: - - 0 -- Reserved - a packet tag MUST NOT have this value - 1 -- Public-Key Encrypted Session Key Packet - 2 -- Signature Packet - 3 -- Symmetric-Key Encrypted Session Key Packet - 4 -- One-Pass Signature Packet - 5 -- Secret-Key Packet - 6 -- Public-Key Packet - 7 -- Secret-Subkey Packet - 8 -- Compressed Data Packet - 9 -- Symmetrically Encrypted Data Packet - 10 -- Marker Packet - 11 -- Literal Data Packet - 12 -- Trust Packet - 13 -- User ID Packet - 14 -- Public-Subkey Packet - 17 -- User Attribute Packet - 18 -- Sym. Encrypted and Integrity Protected Data Packet - 19 -- Modification Detection Code Packet - 60 to 63 -- Private or Experimental Values - -5. Packet Types - -5.1. Public-Key Encrypted Session Key Packets (Tag 1) - - A Public-Key Encrypted Session Key packet holds the session key used - to encrypt a message. Zero or more Public-Key Encrypted Session Key - packets and/or Symmetric-Key Encrypted Session Key packets may - precede a Symmetrically Encrypted Data Packet, which holds an - encrypted message. The message is encrypted with the session key, - and the session key is itself encrypted and stored in the Encrypted - Session Key packet(s). The Symmetrically Encrypted Data Packet is - preceded by one Public-Key Encrypted Session Key packet for each - OpenPGP key to which the message is encrypted. The recipient of the - message finds a session key that is encrypted to their public key, - decrypts the session key, and then uses the session key to decrypt - the message. - - - - -Callas, et al Standards Track [Page 17] - -RFC 4880 OpenPGP Message Format November 2007 - - - The body of this packet consists of: - - - A one-octet number giving the version number of the packet type. - The currently defined value for packet version is 3. - - - An eight-octet number that gives the Key ID of the public key to - which the session key is encrypted. If the session key is - encrypted to a subkey, then the Key ID of this subkey is used - here instead of the Key ID of the primary key. - - - A one-octet number giving the public-key algorithm used. - - - A string of octets that is the encrypted session key. This - string takes up the remainder of the packet, and its contents are - dependent on the public-key algorithm used. - - Algorithm Specific Fields for RSA encryption - - - multiprecision integer (MPI) of RSA encrypted value m**e mod n. - - Algorithm Specific Fields for Elgamal encryption: - - - MPI of Elgamal (Diffie-Hellman) value g**k mod p. - - - MPI of Elgamal (Diffie-Hellman) value m * y**k mod p. - - The value "m" in the above formulas is derived from the session key - as follows. First, the session key is prefixed with a one-octet - algorithm identifier that specifies the symmetric encryption - algorithm used to encrypt the following Symmetrically Encrypted Data - Packet. Then a two-octet checksum is appended, which is equal to the - sum of the preceding session key octets, not including the algorithm - identifier, modulo 65536. This value is then encoded as described in - PKCS#1 block encoding EME-PKCS1-v1_5 in Section 7.2.1 of [RFC3447] to - form the "m" value used in the formulas above. See Section 13.1 of - this document for notes on OpenPGP's use of PKCS#1. - - Note that when an implementation forms several PKESKs with one - session key, forming a message that can be decrypted by several keys, - the implementation MUST make a new PKCS#1 encoding for each key. - - An implementation MAY accept or use a Key ID of zero as a "wild card" - or "speculative" Key ID. In this case, the receiving implementation - would try all available private keys, checking for a valid decrypted - session key. This format helps reduce traffic analysis of messages. - - - - - - -Callas, et al Standards Track [Page 18] - -RFC 4880 OpenPGP Message Format November 2007 - - -5.2. Signature Packet (Tag 2) - - A Signature packet describes a binding between some public key and - some data. The most common signatures are a signature of a file or a - block of text, and a signature that is a certification of a User ID. - - Two versions of Signature packets are defined. Version 3 provides - basic signature information, while version 4 provides an expandable - format with subpackets that can specify more information about the - signature. PGP 2.6.x only accepts version 3 signatures. - - Implementations SHOULD accept V3 signatures. Implementations SHOULD - generate V4 signatures. - - Note that if an implementation is creating an encrypted and signed - message that is encrypted to a V3 key, it is reasonable to create a - V3 signature. - -5.2.1. Signature Types - - There are a number of possible meanings for a signature, which are - indicated in a signature type octet in any given signature. Please - note that the vagueness of these meanings is not a flaw, but a - feature of the system. Because OpenPGP places final authority for - validity upon the receiver of a signature, it may be that one - signer's casual act might be more rigorous than some other - authority's positive act. See Section 5.2.4, "Computing Signatures", - for detailed information on how to compute and verify signatures of - each type. - - These meanings are as follows: - - 0x00: Signature of a binary document. - This means the signer owns it, created it, or certifies that it - has not been modified. - - 0x01: Signature of a canonical text document. - This means the signer owns it, created it, or certifies that it - has not been modified. The signature is calculated over the text - data with its line endings converted to . - - 0x02: Standalone signature. - This signature is a signature of only its own subpacket contents. - It is calculated identically to a signature over a zero-length - binary document. Note that it doesn't make sense to have a V3 - standalone signature. - - - - - -Callas, et al Standards Track [Page 19] - -RFC 4880 OpenPGP Message Format November 2007 - - - 0x10: Generic certification of a User ID and Public-Key packet. - The issuer of this certification does not make any particular - assertion as to how well the certifier has checked that the owner - of the key is in fact the person described by the User ID. - - 0x11: Persona certification of a User ID and Public-Key packet. - The issuer of this certification has not done any verification of - the claim that the owner of this key is the User ID specified. - - 0x12: Casual certification of a User ID and Public-Key packet. - The issuer of this certification has done some casual - verification of the claim of identity. - - 0x13: Positive certification of a User ID and Public-Key packet. - The issuer of this certification has done substantial - verification of the claim of identity. - - Most OpenPGP implementations make their "key signatures" as 0x10 - certifications. Some implementations can issue 0x11-0x13 - certifications, but few differentiate between the types. - - 0x18: Subkey Binding Signature - This signature is a statement by the top-level signing key that - indicates that it owns the subkey. This signature is calculated - directly on the primary key and subkey, and not on any User ID or - other packets. A signature that binds a signing subkey MUST have - an Embedded Signature subpacket in this binding signature that - contains a 0x19 signature made by the signing subkey on the - primary key and subkey. - - 0x19: Primary Key Binding Signature - This signature is a statement by a signing subkey, indicating - that it is owned by the primary key and subkey. This signature - is calculated the same way as a 0x18 signature: directly on the - primary key and subkey, and not on any User ID or other packets. - - 0x1F: Signature directly on a key - This signature is calculated directly on a key. It binds the - information in the Signature subpackets to the key, and is - appropriate to be used for subpackets that provide information - about the key, such as the Revocation Key subpacket. It is also - appropriate for statements that non-self certifiers want to make - about the key itself, rather than the binding between a key and a - name. - - - - - - - -Callas, et al Standards Track [Page 20] - -RFC 4880 OpenPGP Message Format November 2007 - - - 0x20: Key revocation signature - The signature is calculated directly on the key being revoked. A - revoked key is not to be used. Only revocation signatures by the - key being revoked, or by an authorized revocation key, should be - considered valid revocation signatures. - - 0x28: Subkey revocation signature - The signature is calculated directly on the subkey being revoked. - A revoked subkey is not to be used. Only revocation signatures - by the top-level signature key that is bound to this subkey, or - by an authorized revocation key, should be considered valid - revocation signatures. - - 0x30: Certification revocation signature - This signature revokes an earlier User ID certification signature - (signature class 0x10 through 0x13) or direct-key signature - (0x1F). It should be issued by the same key that issued the - revoked signature or an authorized revocation key. The signature - is computed over the same data as the certificate that it - revokes, and should have a later creation date than that - certificate. - - 0x40: Timestamp signature. - This signature is only meaningful for the timestamp contained in - it. - - 0x50: Third-Party Confirmation signature. - This signature is a signature over some other OpenPGP Signature - packet(s). It is analogous to a notary seal on the signed data. - A third-party signature SHOULD include Signature Target - subpacket(s) to give easy identification. Note that we really do - mean SHOULD. There are plausible uses for this (such as a blind - party that only sees the signature, not the key or source - document) that cannot include a target subpacket. - -5.2.2. Version 3 Signature Packet Format - - The body of a version 3 Signature Packet contains: - - - One-octet version number (3). - - - One-octet length of following hashed material. MUST be 5. - - - One-octet signature type. - - - Four-octet creation time. - - - Eight-octet Key ID of signer. - - - -Callas, et al Standards Track [Page 21] - -RFC 4880 OpenPGP Message Format November 2007 - - - - One-octet public-key algorithm. - - - One-octet hash algorithm. - - - Two-octet field holding left 16 bits of signed hash value. - - - One or more multiprecision integers comprising the signature. - This portion is algorithm specific, as described below. - - The concatenation of the data to be signed, the signature type, and - creation time from the Signature packet (5 additional octets) is - hashed. The resulting hash value is used in the signature algorithm. - The high 16 bits (first two octets) of the hash are included in the - Signature packet to provide a quick test to reject some invalid - signatures. - - Algorithm-Specific Fields for RSA signatures: - - - multiprecision integer (MPI) of RSA signature value m**d mod n. - - Algorithm-Specific Fields for DSA signatures: - - - MPI of DSA value r. - - - MPI of DSA value s. - - The signature calculation is based on a hash of the signed data, as - described above. The details of the calculation are different for - DSA signatures than for RSA signatures. - - With RSA signatures, the hash value is encoded using PKCS#1 encoding - type EMSA-PKCS1-v1_5 as described in Section 9.2 of RFC 3447. This - requires inserting the hash value as an octet string into an ASN.1 - structure. The object identifier for the type of hash being used is - included in the structure. The hexadecimal representations for the - currently defined hash algorithms are as follows: - - - MD5: 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x02, 0x05 - - - RIPEMD-160: 0x2B, 0x24, 0x03, 0x02, 0x01 - - - SHA-1: 0x2B, 0x0E, 0x03, 0x02, 0x1A - - - SHA224: 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x04 - - - SHA256: 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x01 - - - SHA384: 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x02 - - - -Callas, et al Standards Track [Page 22] - -RFC 4880 OpenPGP Message Format November 2007 - - - - SHA512: 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x03 - - The ASN.1 Object Identifiers (OIDs) are as follows: - - - MD5: 1.2.840.113549.2.5 - - - RIPEMD-160: 1.3.36.3.2.1 - - - SHA-1: 1.3.14.3.2.26 - - - SHA224: 2.16.840.1.101.3.4.2.4 - - - SHA256: 2.16.840.1.101.3.4.2.1 - - - SHA384: 2.16.840.1.101.3.4.2.2 - - - SHA512: 2.16.840.1.101.3.4.2.3 - - The full hash prefixes for these are as follows: - - MD5: 0x30, 0x20, 0x30, 0x0C, 0x06, 0x08, 0x2A, 0x86, - 0x48, 0x86, 0xF7, 0x0D, 0x02, 0x05, 0x05, 0x00, - 0x04, 0x10 - - RIPEMD-160: 0x30, 0x21, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x24, - 0x03, 0x02, 0x01, 0x05, 0x00, 0x04, 0x14 - - SHA-1: 0x30, 0x21, 0x30, 0x09, 0x06, 0x05, 0x2b, 0x0E, - 0x03, 0x02, 0x1A, 0x05, 0x00, 0x04, 0x14 - - SHA224: 0x30, 0x31, 0x30, 0x0d, 0x06, 0x09, 0x60, 0x86, - 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x04, 0x05, - 0x00, 0x04, 0x1C - - SHA256: 0x30, 0x31, 0x30, 0x0d, 0x06, 0x09, 0x60, 0x86, - 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x01, 0x05, - 0x00, 0x04, 0x20 - - SHA384: 0x30, 0x41, 0x30, 0x0d, 0x06, 0x09, 0x60, 0x86, - 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x02, 0x05, - 0x00, 0x04, 0x30 - - SHA512: 0x30, 0x51, 0x30, 0x0d, 0x06, 0x09, 0x60, 0x86, - 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x03, 0x05, - 0x00, 0x04, 0x40 - - DSA signatures MUST use hashes that are equal in size to the number - of bits of q, the group generated by the DSA key's generator value. - - - -Callas, et al Standards Track [Page 23] - -RFC 4880 OpenPGP Message Format November 2007 - - - If the output size of the chosen hash is larger than the number of - bits of q, the hash result is truncated to fit by taking the number - of leftmost bits equal to the number of bits of q. This (possibly - truncated) hash function result is treated as a number and used - directly in the DSA signature algorithm. - -5.2.3. Version 4 Signature Packet Format - - The body of a version 4 Signature packet contains: - - - One-octet version number (4). - - - One-octet signature type. - - - One-octet public-key algorithm. - - - One-octet hash algorithm. - - - Two-octet scalar octet count for following hashed subpacket data. - Note that this is the length in octets of all of the hashed - subpackets; a pointer incremented by this number will skip over - the hashed subpackets. - - - Hashed subpacket data set (zero or more subpackets). - - - Two-octet scalar octet count for the following unhashed subpacket - data. Note that this is the length in octets of all of the - unhashed subpackets; a pointer incremented by this number will - skip over the unhashed subpackets. - - - Unhashed subpacket data set (zero or more subpackets). - - - Two-octet field holding the left 16 bits of the signed hash - value. - - - One or more multiprecision integers comprising the signature. - This portion is algorithm specific, as described above. - - The concatenation of the data being signed and the signature data - from the version number through the hashed subpacket data (inclusive) - is hashed. The resulting hash value is what is signed. The left 16 - bits of the hash are included in the Signature packet to provide a - quick test to reject some invalid signatures. - - There are two fields consisting of Signature subpackets. The first - field is hashed with the rest of the signature data, while the second - is unhashed. The second set of subpackets is not cryptographically - - - - -Callas, et al Standards Track [Page 24] - -RFC 4880 OpenPGP Message Format November 2007 - - - protected by the signature and should include only advisory - information. - - The algorithms for converting the hash function result to a signature - are described in a section below. - -5.2.3.1. Signature Subpacket Specification - - A subpacket data set consists of zero or more Signature subpackets. - In Signature packets, the subpacket data set is preceded by a two- - octet scalar count of the length in octets of all the subpackets. A - pointer incremented by this number will skip over the subpacket data - set. - - Each subpacket consists of a subpacket header and a body. The header - consists of: - - - the subpacket length (1, 2, or 5 octets), - - - the subpacket type (1 octet), - - and is followed by the subpacket-specific data. - - The length includes the type octet but not this length. Its format - is similar to the "new" format packet header lengths, but cannot have - Partial Body Lengths. That is: - - if the 1st octet < 192, then - lengthOfLength = 1 - subpacketLen = 1st_octet - - if the 1st octet >= 192 and < 255, then - lengthOfLength = 2 - subpacketLen = ((1st_octet - 192) << 8) + (2nd_octet) + 192 - - if the 1st octet = 255, then - lengthOfLength = 5 - subpacket length = [four-octet scalar starting at 2nd_octet] - - The value of the subpacket type octet may be: - - 0 = Reserved - 1 = Reserved - 2 = Signature Creation Time - 3 = Signature Expiration Time - 4 = Exportable Certification - 5 = Trust Signature - 6 = Regular Expression - - - -Callas, et al Standards Track [Page 25] - -RFC 4880 OpenPGP Message Format November 2007 - - - 7 = Revocable - 8 = Reserved - 9 = Key Expiration Time - 10 = Placeholder for backward compatibility - 11 = Preferred Symmetric Algorithms - 12 = Revocation Key - 13 = Reserved - 14 = Reserved - 15 = Reserved - 16 = Issuer - 17 = Reserved - 18 = Reserved - 19 = Reserved - 20 = Notation Data - 21 = Preferred Hash Algorithms - 22 = Preferred Compression Algorithms - 23 = Key Server Preferences - 24 = Preferred Key Server - 25 = Primary User ID - 26 = Policy URI - 27 = Key Flags - 28 = Signer's User ID - 29 = Reason for Revocation - 30 = Features - 31 = Signature Target - 32 = Embedded Signature - 100 To 110 = Private or experimental - - An implementation SHOULD ignore any subpacket of a type that it does - not recognize. - - Bit 7 of the subpacket type is the "critical" bit. If set, it - denotes that the subpacket is one that is critical for the evaluator - of the signature to recognize. If a subpacket is encountered that is - marked critical but is unknown to the evaluating software, the - evaluator SHOULD consider the signature to be in error. - - An evaluator may "recognize" a subpacket, but not implement it. The - purpose of the critical bit is to allow the signer to tell an - evaluator that it would prefer a new, unknown feature to generate an - error than be ignored. - - Implementations SHOULD implement the three preferred algorithm - subpackets (11, 21, and 22), as well as the "Reason for Revocation" - subpacket. Note, however, that if an implementation chooses not to - implement some of the preferences, it is required to behave in a - polite manner to respect the wishes of those users who do implement - these preferences. - - - -Callas, et al Standards Track [Page 26] - -RFC 4880 OpenPGP Message Format November 2007 - - -5.2.3.2. Signature Subpacket Types - - A number of subpackets are currently defined. Some subpackets apply - to the signature itself and some are attributes of the key. - Subpackets that are found on a self-signature are placed on a - certification made by the key itself. Note that a key may have more - than one User ID, and thus may have more than one self-signature, and - differing subpackets. - - A subpacket may be found either in the hashed or unhashed subpacket - sections of a signature. If a subpacket is not hashed, then the - information in it cannot be considered definitive because it is not - part of the signature proper. - -5.2.3.3. Notes on Self-Signatures - - A self-signature is a binding signature made by the key to which the - signature refers. There are three types of self-signatures, the - certification signatures (types 0x10-0x13), the direct-key signature - (type 0x1F), and the subkey binding signature (type 0x18). For - certification self-signatures, each User ID may have a self- - signature, and thus different subpackets in those self-signatures. - For subkey binding signatures, each subkey in fact has a self- - signature. Subpackets that appear in a certification self-signature - apply to the user name, and subpackets that appear in the subkey - self-signature apply to the subkey. Lastly, subpackets on the - direct-key signature apply to the entire key. - - Implementing software should interpret a self-signature's preference - subpackets as narrowly as possible. For example, suppose a key has - two user names, Alice and Bob. Suppose that Alice prefers the - symmetric algorithm CAST5, and Bob prefers IDEA or TripleDES. If the - software locates this key via Alice's name, then the preferred - algorithm is CAST5; if software locates the key via Bob's name, then - the preferred algorithm is IDEA. If the key is located by Key ID, - the algorithm of the primary User ID of the key provides the - preferred symmetric algorithm. - - Revoking a self-signature or allowing it to expire has a semantic - meaning that varies with the signature type. Revoking the self- - signature on a User ID effectively retires that user name. The - self-signature is a statement, "My name X is tied to my signing key - K" and is corroborated by other users' certifications. If another - user revokes their certification, they are effectively saying that - they no longer believe that name and that key are tied together. - Similarly, if the users themselves revoke their self-signature, then - the users no longer go by that name, no longer have that email - address, etc. Revoking a binding signature effectively retires that - - - -Callas, et al Standards Track [Page 27] - -RFC 4880 OpenPGP Message Format November 2007 - - - subkey. Revoking a direct-key signature cancels that signature. - Please see the "Reason for Revocation" subpacket (Section 5.2.3.23) - for more relevant detail. - - Since a self-signature contains important information about the key's - use, an implementation SHOULD allow the user to rewrite the self- - signature, and important information in it, such as preferences and - key expiration. - - It is good practice to verify that a self-signature imported into an - implementation doesn't advertise features that the implementation - doesn't support, rewriting the signature as appropriate. - - An implementation that encounters multiple self-signatures on the - same object may resolve the ambiguity in any way it sees fit, but it - is RECOMMENDED that priority be given to the most recent self- - signature. - -5.2.3.4. Signature Creation Time - - (4-octet time field) - - The time the signature was made. - - MUST be present in the hashed area. - -5.2.3.5. Issuer - - (8-octet Key ID) - - The OpenPGP Key ID of the key issuing the signature. - -5.2.3.6. Key Expiration Time - - (4-octet time field) - - The validity period of the key. This is the number of seconds after - the key creation time that the key expires. If this is not present - or has a value of zero, the key never expires. This is found only on - a self-signature. - -5.2.3.7. Preferred Symmetric Algorithms - - (array of one-octet values) - - Symmetric algorithm numbers that indicate which algorithms the key - holder prefers to use. The subpacket body is an ordered list of - octets with the most preferred listed first. It is assumed that only - - - -Callas, et al Standards Track [Page 28] - -RFC 4880 OpenPGP Message Format November 2007 - - - algorithms listed are supported by the recipient's software. - Algorithm numbers are in Section 9. This is only found on a self- - signature. - -5.2.3.8. Preferred Hash Algorithms - - (array of one-octet values) - - Message digest algorithm numbers that indicate which algorithms the - key holder prefers to receive. Like the preferred symmetric - algorithms, the list is ordered. Algorithm numbers are in Section 9. - This is only found on a self-signature. - -5.2.3.9. Preferred Compression Algorithms - - (array of one-octet values) - - Compression algorithm numbers that indicate which algorithms the key - holder prefers to use. Like the preferred symmetric algorithms, the - list is ordered. Algorithm numbers are in Section 9. If this - subpacket is not included, ZIP is preferred. A zero denotes that - uncompressed data is preferred; the key holder's software might have - no compression software in that implementation. This is only found - on a self-signature. - -5.2.3.10. Signature Expiration Time - - (4-octet time field) - - The validity period of the signature. This is the number of seconds - after the signature creation time that the signature expires. If - this is not present or has a value of zero, it never expires. - -5.2.3.11. Exportable Certification - - (1 octet of exportability, 0 for not, 1 for exportable) - - This subpacket denotes whether a certification signature is - "exportable", to be used by other users than the signature's issuer. - The packet body contains a Boolean flag indicating whether the - signature is exportable. If this packet is not present, the - certification is exportable; it is equivalent to a flag containing a - 1. - - Non-exportable, or "local", certifications are signatures made by a - user to mark a key as valid within that user's implementation only. - - - - - -Callas, et al Standards Track [Page 29] - -RFC 4880 OpenPGP Message Format November 2007 - - - Thus, when an implementation prepares a user's copy of a key for - transport to another user (this is the process of "exporting" the - key), any local certification signatures are deleted from the key. - - The receiver of a transported key "imports" it, and likewise trims - any local certifications. In normal operation, there won't be any, - assuming the import is performed on an exported key. However, there - are instances where this can reasonably happen. For example, if an - implementation allows keys to be imported from a key database in - addition to an exported key, then this situation can arise. - - Some implementations do not represent the interest of a single user - (for example, a key server). Such implementations always trim local - certifications from any key they handle. - -5.2.3.12. Revocable - - (1 octet of revocability, 0 for not, 1 for revocable) - - Signature's revocability status. The packet body contains a Boolean - flag indicating whether the signature is revocable. Signatures that - are not revocable have any later revocation signatures ignored. They - represent a commitment by the signer that he cannot revoke his - signature for the life of his key. If this packet is not present, - the signature is revocable. - -5.2.3.13. Trust Signature - - (1 octet "level" (depth), 1 octet of trust amount) - - Signer asserts that the key is not only valid but also trustworthy at - the specified level. Level 0 has the same meaning as an ordinary - validity signature. Level 1 means that the signed key is asserted to - be a valid trusted introducer, with the 2nd octet of the body - specifying the degree of trust. Level 2 means that the signed key is - asserted to be trusted to issue level 1 trust signatures, i.e., that - it is a "meta introducer". Generally, a level n trust signature - asserts that a key is trusted to issue level n-1 trust signatures. - The trust amount is in a range from 0-255, interpreted such that - values less than 120 indicate partial trust and values of 120 or - greater indicate complete trust. Implementations SHOULD emit values - of 60 for partial trust and 120 for complete trust. - - - - - - - - - -Callas, et al Standards Track [Page 30] - -RFC 4880 OpenPGP Message Format November 2007 - - -5.2.3.14. Regular Expression - - (null-terminated regular expression) - - Used in conjunction with trust Signature packets (of level > 0) to - limit the scope of trust that is extended. Only signatures by the - target key on User IDs that match the regular expression in the body - of this packet have trust extended by the trust Signature subpacket. - The regular expression uses the same syntax as the Henry Spencer's - "almost public domain" regular expression [REGEX] package. A - description of the syntax is found in Section 8 below. - -5.2.3.15. Revocation Key - - (1 octet of class, 1 octet of public-key algorithm ID, 20 octets of - fingerprint) - - Authorizes the specified key to issue revocation signatures for this - key. Class octet must have bit 0x80 set. If the bit 0x40 is set, - then this means that the revocation information is sensitive. Other - bits are for future expansion to other kinds of authorizations. This - is found on a self-signature. - - If the "sensitive" flag is set, the keyholder feels this subpacket - contains private trust information that describes a real-world - sensitive relationship. If this flag is set, implementations SHOULD - NOT export this signature to other users except in cases where the - data needs to be available: when the signature is being sent to the - designated revoker, or when it is accompanied by a revocation - signature from that revoker. Note that it may be appropriate to - isolate this subpacket within a separate signature so that it is not - combined with other subpackets that need to be exported. - -5.2.3.16. Notation Data - - (4 octets of flags, 2 octets of name length (M), - 2 octets of value length (N), - M octets of name data, - N octets of value data) - - This subpacket describes a "notation" on the signature that the - issuer wishes to make. The notation has a name and a value, each of - which are strings of octets. There may be more than one notation in - a signature. Notations can be used for any extension the issuer of - the signature cares to make. The "flags" field holds four octets of - flags. - - - - - -Callas, et al Standards Track [Page 31] - -RFC 4880 OpenPGP Message Format November 2007 - - - All undefined flags MUST be zero. Defined flags are as follows: - - First octet: 0x80 = human-readable. This note value is text. - Other octets: none. - - Notation names are arbitrary strings encoded in UTF-8. They reside - in two namespaces: The IETF namespace and the user namespace. - - The IETF namespace is registered with IANA. These names MUST NOT - contain the "@" character (0x40). This is a tag for the user - namespace. - - Names in the user namespace consist of a UTF-8 string tag followed by - "@" followed by a DNS domain name. Note that the tag MUST NOT - contain an "@" character. For example, the "sample" tag used by - Example Corporation could be "sample@example.com". - - Names in a user space are owned and controlled by the owners of that - domain. Obviously, it's bad form to create a new name in a DNS space - that you don't own. - - Since the user namespace is in the form of an email address, - implementers MAY wish to arrange for that address to reach a person - who can be consulted about the use of the named tag. Note that due - to UTF-8 encoding, not all valid user space name tags are valid email - addresses. - - If there is a critical notation, the criticality applies to that - specific notation and not to notations in general. - -5.2.3.17. Key Server Preferences - - (N octets of flags) - - This is a list of one-bit flags that indicate preferences that the - key holder has about how the key is handled on a key server. All - undefined flags MUST be zero. - - First octet: 0x80 = No-modify - the key holder requests that this key only be modified or updated - by the key holder or an administrator of the key server. - - This is found only on a self-signature. - - - - - - - - -Callas, et al Standards Track [Page 32] - -RFC 4880 OpenPGP Message Format November 2007 - - -5.2.3.18. Preferred Key Server - - (String) - - This is a URI of a key server that the key holder prefers be used for - updates. Note that keys with multiple User IDs can have a preferred - key server for each User ID. Note also that since this is a URI, the - key server can actually be a copy of the key retrieved by ftp, http, - finger, etc. - -5.2.3.19. Primary User ID - - (1 octet, Boolean) - - This is a flag in a User ID's self-signature that states whether this - User ID is the main User ID for this key. It is reasonable for an - implementation to resolve ambiguities in preferences, etc. by - referring to the primary User ID. If this flag is absent, its value - is zero. If more than one User ID in a key is marked as primary, the - implementation may resolve the ambiguity in any way it sees fit, but - it is RECOMMENDED that priority be given to the User ID with the most - recent self-signature. - - When appearing on a self-signature on a User ID packet, this - subpacket applies only to User ID packets. When appearing on a - self-signature on a User Attribute packet, this subpacket applies - only to User Attribute packets. That is to say, there are two - different and independent "primaries" -- one for User IDs, and one - for User Attributes. - -5.2.3.20. Policy URI - - (String) - - This subpacket contains a URI of a document that describes the policy - under which the signature was issued. - -5.2.3.21. Key Flags - - (N octets of flags) - - This subpacket contains a list of binary flags that hold information - about a key. It is a string of octets, and an implementation MUST - NOT assume a fixed size. This is so it can grow over time. If a - list is shorter than an implementation expects, the unstated flags - are considered to be zero. The defined flags are as follows: - - - - - -Callas, et al Standards Track [Page 33] - -RFC 4880 OpenPGP Message Format November 2007 - - - First octet: - - 0x01 - This key may be used to certify other keys. - - 0x02 - This key may be used to sign data. - - 0x04 - This key may be used to encrypt communications. - - 0x08 - This key may be used to encrypt storage. - - 0x10 - The private component of this key may have been split - by a secret-sharing mechanism. - - 0x20 - This key may be used for authentication. - - 0x80 - The private component of this key may be in the - possession of more than one person. - - Usage notes: - - The flags in this packet may appear in self-signatures or in - certification signatures. They mean different things depending on - who is making the statement -- for example, a certification signature - that has the "sign data" flag is stating that the certification is - for that use. On the other hand, the "communications encryption" - flag in a self-signature is stating a preference that a given key be - used for communications. Note however, that it is a thorny issue to - determine what is "communications" and what is "storage". This - decision is left wholly up to the implementation; the authors of this - document do not claim any special wisdom on the issue and realize - that accepted opinion may change. - - The "split key" (0x10) and "group key" (0x80) flags are placed on a - self-signature only; they are meaningless on a certification - signature. They SHOULD be placed only on a direct-key signature - (type 0x1F) or a subkey signature (type 0x18), one that refers to the - key the flag applies to. - -5.2.3.22. Signer's User ID - - (String) - - This subpacket allows a keyholder to state which User ID is - responsible for the signing. Many keyholders use a single key for - different purposes, such as business communications as well as - personal communications. This subpacket allows such a keyholder to - state which of their roles is making a signature. - - - - -Callas, et al Standards Track [Page 34] - -RFC 4880 OpenPGP Message Format November 2007 - - - This subpacket is not appropriate to use to refer to a User Attribute - packet. - -5.2.3.23. Reason for Revocation - - (1 octet of revocation code, N octets of reason string) - - This subpacket is used only in key revocation and certification - revocation signatures. It describes the reason why the key or - certificate was revoked. - - The first octet contains a machine-readable code that denotes the - reason for the revocation: - - 0 - No reason specified (key revocations or cert revocations) - 1 - Key is superseded (key revocations) - 2 - Key material has been compromised (key revocations) - 3 - Key is retired and no longer used (key revocations) - 32 - User ID information is no longer valid (cert revocations) - 100-110 - Private Use - - Following the revocation code is a string of octets that gives - information about the Reason for Revocation in human-readable form - (UTF-8). The string may be null, that is, of zero length. The - length of the subpacket is the length of the reason string plus one. - An implementation SHOULD implement this subpacket, include it in all - revocation signatures, and interpret revocations appropriately. - There are important semantic differences between the reasons, and - there are thus important reasons for revoking signatures. - - If a key has been revoked because of a compromise, all signatures - created by that key are suspect. However, if it was merely - superseded or retired, old signatures are still valid. If the - revoked signature is the self-signature for certifying a User ID, a - revocation denotes that that user name is no longer in use. Such a - revocation SHOULD include a 0x20 code. - - Note that any signature may be revoked, including a certification on - some other person's key. There are many good reasons for revoking a - certification signature, such as the case where the keyholder leaves - the employ of a business with an email address. A revoked - certification is no longer a part of validity calculations. - - - - - - - - - -Callas, et al Standards Track [Page 35] - -RFC 4880 OpenPGP Message Format November 2007 - - -5.2.3.24. Features - - (N octets of flags) - - The Features subpacket denotes which advanced OpenPGP features a - user's implementation supports. This is so that as features are - added to OpenPGP that cannot be backwards-compatible, a user can - state that they can use that feature. The flags are single bits that - indicate that a given feature is supported. - - This subpacket is similar to a preferences subpacket, and only - appears in a self-signature. - - An implementation SHOULD NOT use a feature listed when sending to a - user who does not state that they can use it. - - Defined features are as follows: - - First octet: - - 0x01 - Modification Detection (packets 18 and 19) - - If an implementation implements any of the defined features, it - SHOULD implement the Features subpacket, too. - - An implementation may freely infer features from other suitable - implementation-dependent mechanisms. - -5.2.3.25. Signature Target - - (1 octet public-key algorithm, 1 octet hash algorithm, N octets hash) - - This subpacket identifies a specific target signature to which a - signature refers. For revocation signatures, this subpacket - provides explicit designation of which signature is being revoked. - For a third-party or timestamp signature, this designates what - signature is signed. All arguments are an identifier of that target - signature. - - The N octets of hash data MUST be the size of the hash of the - signature. For example, a target signature with a SHA-1 hash MUST - have 20 octets of hash data. - - - - - - - - - -Callas, et al Standards Track [Page 36] - -RFC 4880 OpenPGP Message Format November 2007 - - -5.2.3.26. Embedded Signature - - (1 signature packet body) - - This subpacket contains a complete Signature packet body as - specified in Section 5.2 above. It is useful when one signature - needs to refer to, or be incorporated in, another signature. - -5.2.4. Computing Signatures - - All signatures are formed by producing a hash over the signature - data, and then using the resulting hash in the signature algorithm. - - For binary document signatures (type 0x00), the document data is - hashed directly. For text document signatures (type 0x01), the - document is canonicalized by converting line endings to , - and the resulting data is hashed. - - When a signature is made over a key, the hash data starts with the - octet 0x99, followed by a two-octet length of the key, and then body - of the key packet. (Note that this is an old-style packet header for - a key packet with two-octet length.) A subkey binding signature - (type 0x18) or primary key binding signature (type 0x19) then hashes - the subkey using the same format as the main key (also using 0x99 as - the first octet). Key revocation signatures (types 0x20 and 0x28) - hash only the key being revoked. - - A certification signature (type 0x10 through 0x13) hashes the User - ID being bound to the key into the hash context after the above - data. A V3 certification hashes the contents of the User ID or - attribute packet packet, without any header. A V4 certification - hashes the constant 0xB4 for User ID certifications or the constant - 0xD1 for User Attribute certifications, followed by a four-octet - number giving the length of the User ID or User Attribute data, and - then the User ID or User Attribute data. - - When a signature is made over a Signature packet (type 0x50), the - hash data starts with the octet 0x88, followed by the four-octet - length of the signature, and then the body of the Signature packet. - (Note that this is an old-style packet header for a Signature packet - with the length-of-length set to zero.) The unhashed subpacket data - of the Signature packet being hashed is not included in the hash, and - the unhashed subpacket data length value is set to zero. - - Once the data body is hashed, then a trailer is hashed. A V3 - signature hashes five octets of the packet body, starting from the - signature type field. This data is the signature type, followed by - the four-octet signature time. A V4 signature hashes the packet body - - - -Callas, et al Standards Track [Page 37] - -RFC 4880 OpenPGP Message Format November 2007 - - - starting from its first field, the version number, through the end - of the hashed subpacket data. Thus, the fields hashed are the - signature version, the signature type, the public-key algorithm, the - hash algorithm, the hashed subpacket length, and the hashed - subpacket body. - - V4 signatures also hash in a final trailer of six octets: the - version of the Signature packet, i.e., 0x04; 0xFF; and a four-octet, - big-endian number that is the length of the hashed data from the - Signature packet (note that this number does not include these final - six octets). - - After all this has been hashed in a single hash context, the - resulting hash field is used in the signature algorithm and placed - at the end of the Signature packet. - -5.2.4.1. Subpacket Hints - - It is certainly possible for a signature to contain conflicting - information in subpackets. For example, a signature may contain - multiple copies of a preference or multiple expiration times. In - most cases, an implementation SHOULD use the last subpacket in the - signature, but MAY use any conflict resolution scheme that makes - more sense. Please note that we are intentionally leaving conflict - resolution to the implementer; most conflicts are simply syntax - errors, and the wishy-washy language here allows a receiver to be - generous in what they accept, while putting pressure on a creator to - be stingy in what they generate. - - Some apparent conflicts may actually make sense -- for example, - suppose a keyholder has a V3 key and a V4 key that share the same - RSA key material. Either of these keys can verify a signature - created by the other, and it may be reasonable for a signature to - contain an issuer subpacket for each key, as a way of explicitly - tying those keys to the signature. - -5.3. Symmetric-Key Encrypted Session Key Packets (Tag 3) - - The Symmetric-Key Encrypted Session Key packet holds the - symmetric-key encryption of a session key used to encrypt a message. - Zero or more Public-Key Encrypted Session Key packets and/or - Symmetric-Key Encrypted Session Key packets may precede a - Symmetrically Encrypted Data packet that holds an encrypted message. - The message is encrypted with a session key, and the session key is - itself encrypted and stored in the Encrypted Session Key packet or - the Symmetric-Key Encrypted Session Key packet. - - - - - -Callas, et al Standards Track [Page 38] - -RFC 4880 OpenPGP Message Format November 2007 - - - If the Symmetrically Encrypted Data packet is preceded by one or - more Symmetric-Key Encrypted Session Key packets, each specifies a - passphrase that may be used to decrypt the message. This allows a - message to be encrypted to a number of public keys, and also to one - or more passphrases. This packet type is new and is not generated - by PGP 2.x or PGP 5.0. - - The body of this packet consists of: - - - A one-octet version number. The only currently defined version - is 4. - - - A one-octet number describing the symmetric algorithm used. - - - A string-to-key (S2K) specifier, length as defined above. - - - Optionally, the encrypted session key itself, which is decrypted - with the string-to-key object. - - If the encrypted session key is not present (which can be detected - on the basis of packet length and S2K specifier size), then the S2K - algorithm applied to the passphrase produces the session key for - decrypting the file, using the symmetric cipher algorithm from the - Symmetric-Key Encrypted Session Key packet. - - If the encrypted session key is present, the result of applying the - S2K algorithm to the passphrase is used to decrypt just that - encrypted session key field, using CFB mode with an IV of all zeros. - The decryption result consists of a one-octet algorithm identifier - that specifies the symmetric-key encryption algorithm used to - encrypt the following Symmetrically Encrypted Data packet, followed - by the session key octets themselves. - - Note: because an all-zero IV is used for this decryption, the S2K - specifier MUST use a salt value, either a Salted S2K or an - Iterated-Salted S2K. The salt value will ensure that the decryption - key is not repeated even if the passphrase is reused. - -5.4. One-Pass Signature Packets (Tag 4) - - The One-Pass Signature packet precedes the signed data and contains - enough information to allow the receiver to begin calculating any - hashes needed to verify the signature. It allows the Signature - packet to be placed at the end of the message, so that the signer - can compute the entire signed message in one pass. - - A One-Pass Signature does not interoperate with PGP 2.6.x or - earlier. - - - -Callas, et al Standards Track [Page 39] - -RFC 4880 OpenPGP Message Format November 2007 - - - The body of this packet consists of: - - - A one-octet version number. The current version is 3. - - - A one-octet signature type. Signature types are described in - Section 5.2.1. - - - A one-octet number describing the hash algorithm used. - - - A one-octet number describing the public-key algorithm used. - - - An eight-octet number holding the Key ID of the signing key. - - - A one-octet number holding a flag showing whether the signature - is nested. A zero value indicates that the next packet is - another One-Pass Signature packet that describes another - signature to be applied to the same message data. - - Note that if a message contains more than one one-pass signature, - then the Signature packets bracket the message; that is, the first - Signature packet after the message corresponds to the last one-pass - packet and the final Signature packet corresponds to the first - one-pass packet. - -5.5. Key Material Packet - - A key material packet contains all the information about a public or - private key. There are four variants of this packet type, and two - major versions. Consequently, this section is complex. - -5.5.1. Key Packet Variants - -5.5.1.1. Public-Key Packet (Tag 6) - - A Public-Key packet starts a series of packets that forms an OpenPGP - key (sometimes called an OpenPGP certificate). - -5.5.1.2. Public-Subkey Packet (Tag 14) - - A Public-Subkey packet (tag 14) has exactly the same format as a - Public-Key packet, but denotes a subkey. One or more subkeys may be - associated with a top-level key. By convention, the top-level key - provides signature services, and the subkeys provide encryption - services. - - Note: in PGP 2.6.x, tag 14 was intended to indicate a comment - packet. This tag was selected for reuse because no previous version - of PGP ever emitted comment packets but they did properly ignore - - - -Callas, et al Standards Track [Page 40] - -RFC 4880 OpenPGP Message Format November 2007 - - - them. Public-Subkey packets are ignored by PGP 2.6.x and do not - cause it to fail, providing a limited degree of backward - compatibility. - -5.5.1.3. Secret-Key Packet (Tag 5) - - A Secret-Key packet contains all the information that is found in a - Public-Key packet, including the public-key material, but also - includes the secret-key material after all the public-key fields. - -5.5.1.4. Secret-Subkey Packet (Tag 7) - - A Secret-Subkey packet (tag 7) is the subkey analog of the Secret - Key packet and has exactly the same format. - -5.5.2. Public-Key Packet Formats - - There are two versions of key-material packets. Version 3 packets - were first generated by PGP 2.6. Version 4 keys first appeared in - PGP 5.0 and are the preferred key version for OpenPGP. - - OpenPGP implementations MUST create keys with version 4 format. V3 - keys are deprecated; an implementation MUST NOT generate a V3 key, - but MAY accept it. - - A version 3 public key or public-subkey packet contains: - - - A one-octet version number (3). - - - A four-octet number denoting the time that the key was created. - - - A two-octet number denoting the time in days that this key is - valid. If this number is zero, then it does not expire. - - - A one-octet number denoting the public-key algorithm of this key. - - - A series of multiprecision integers comprising the key material: - - - a multiprecision integer (MPI) of RSA public modulus n; - - - an MPI of RSA public encryption exponent e. - - V3 keys are deprecated. They contain three weaknesses. First, it is - relatively easy to construct a V3 key that has the same Key ID as any - other key because the Key ID is simply the low 64 bits of the public - modulus. Secondly, because the fingerprint of a V3 key hashes the - key material, but not its length, there is an increased opportunity - for fingerprint collisions. Third, there are weaknesses in the MD5 - - - -Callas, et al Standards Track [Page 41] - -RFC 4880 OpenPGP Message Format November 2007 - - - hash algorithm that make developers prefer other algorithms. See - below for a fuller discussion of Key IDs and fingerprints. - - V2 keys are identical to the deprecated V3 keys except for the - version number. An implementation MUST NOT generate them and MAY - accept or reject them as it sees fit. - - The version 4 format is similar to the version 3 format except for - the absence of a validity period. This has been moved to the - Signature packet. In addition, fingerprints of version 4 keys are - calculated differently from version 3 keys, as described in the - section "Enhanced Key Formats". - - A version 4 packet contains: - - - A one-octet version number (4). - - - A four-octet number denoting the time that the key was created. - - - A one-octet number denoting the public-key algorithm of this key. - - - A series of multiprecision integers comprising the key material. - This algorithm-specific portion is: - - Algorithm-Specific Fields for RSA public keys: - - - multiprecision integer (MPI) of RSA public modulus n; - - - MPI of RSA public encryption exponent e. - - Algorithm-Specific Fields for DSA public keys: - - - MPI of DSA prime p; - - - MPI of DSA group order q (q is a prime divisor of p-1); - - - MPI of DSA group generator g; - - - MPI of DSA public-key value y (= g**x mod p where x - is secret). - - Algorithm-Specific Fields for Elgamal public keys: - - - MPI of Elgamal prime p; - - - MPI of Elgamal group generator g; - - - - - -Callas, et al Standards Track [Page 42] - -RFC 4880 OpenPGP Message Format November 2007 - - - - MPI of Elgamal public key value y (= g**x mod p where x - is secret). - -5.5.3. Secret-Key Packet Formats - - The Secret-Key and Secret-Subkey packets contain all the data of the - Public-Key and Public-Subkey packets, with additional algorithm- - specific secret-key data appended, usually in encrypted form. - - The packet contains: - - - A Public-Key or Public-Subkey packet, as described above. - - - One octet indicating string-to-key usage conventions. Zero - indicates that the secret-key data is not encrypted. 255 or 254 - indicates that a string-to-key specifier is being given. Any - other value is a symmetric-key encryption algorithm identifier. - - - [Optional] If string-to-key usage octet was 255 or 254, a one- - octet symmetric encryption algorithm. - - - [Optional] If string-to-key usage octet was 255 or 254, a - string-to-key specifier. The length of the string-to-key - specifier is implied by its type, as described above. - - - [Optional] If secret data is encrypted (string-to-key usage octet - not zero), an Initial Vector (IV) of the same length as the - cipher's block size. - - - Plain or encrypted multiprecision integers comprising the secret - key data. These algorithm-specific fields are as described - below. - - - If the string-to-key usage octet is zero or 255, then a two-octet - checksum of the plaintext of the algorithm-specific portion (sum - of all octets, mod 65536). If the string-to-key usage octet was - 254, then a 20-octet SHA-1 hash of the plaintext of the - algorithm-specific portion. This checksum or hash is encrypted - together with the algorithm-specific fields (if string-to-key - usage octet is not zero). Note that for all other values, a - two-octet checksum is required. - - Algorithm-Specific Fields for RSA secret keys: - - - multiprecision integer (MPI) of RSA secret exponent d. - - - MPI of RSA secret prime value p. - - - - -Callas, et al Standards Track [Page 43] - -RFC 4880 OpenPGP Message Format November 2007 - - - - MPI of RSA secret prime value q (p < q). - - - MPI of u, the multiplicative inverse of p, mod q. - - Algorithm-Specific Fields for DSA secret keys: - - - MPI of DSA secret exponent x. - - Algorithm-Specific Fields for Elgamal secret keys: - - - MPI of Elgamal secret exponent x. - - Secret MPI values can be encrypted using a passphrase. If a string- - to-key specifier is given, that describes the algorithm for - converting the passphrase to a key, else a simple MD5 hash of the - passphrase is used. Implementations MUST use a string-to-key - specifier; the simple hash is for backward compatibility and is - deprecated, though implementations MAY continue to use existing - private keys in the old format. The cipher for encrypting the MPIs - is specified in the Secret-Key packet. - - Encryption/decryption of the secret data is done in CFB mode using - the key created from the passphrase and the Initial Vector from the - packet. A different mode is used with V3 keys (which are only RSA) - than with other key formats. With V3 keys, the MPI bit count prefix - (i.e., the first two octets) is not encrypted. Only the MPI non- - prefix data is encrypted. Furthermore, the CFB state is - resynchronized at the beginning of each new MPI value, so that the - CFB block boundary is aligned with the start of the MPI data. - - With V4 keys, a simpler method is used. All secret MPI values are - encrypted in CFB mode, including the MPI bitcount prefix. - - The two-octet checksum that follows the algorithm-specific portion is - the algebraic sum, mod 65536, of the plaintext of all the algorithm- - specific octets (including MPI prefix and data). With V3 keys, the - checksum is stored in the clear. With V4 keys, the checksum is - encrypted like the algorithm-specific data. This value is used to - check that the passphrase was correct. However, this checksum is - deprecated; an implementation SHOULD NOT use it, but should rather - use the SHA-1 hash denoted with a usage octet of 254. The reason for - this is that there are some attacks that involve undetectably - modifying the secret key. - - - - - - - - -Callas, et al Standards Track [Page 44] - -RFC 4880 OpenPGP Message Format November 2007 - - -5.6. Compressed Data Packet (Tag 8) - - The Compressed Data packet contains compressed data. Typically, this - packet is found as the contents of an encrypted packet, or following - a Signature or One-Pass Signature packet, and contains a literal data - packet. - - The body of this packet consists of: - - - One octet that gives the algorithm used to compress the packet. - - - Compressed data, which makes up the remainder of the packet. - - A Compressed Data Packet's body contains an block that compresses - some set of packets. See section "Packet Composition" for details on - how messages are formed. - - ZIP-compressed packets are compressed with raw RFC 1951 [RFC1951] - DEFLATE blocks. Note that PGP V2.6 uses 13 bits of compression. If - an implementation uses more bits of compression, PGP V2.6 cannot - decompress it. - - ZLIB-compressed packets are compressed with RFC 1950 [RFC1950] ZLIB- - style blocks. - - BZip2-compressed packets are compressed using the BZip2 [BZ2] - algorithm. - -5.7. Symmetrically Encrypted Data Packet (Tag 9) - - The Symmetrically Encrypted Data packet contains data encrypted with - a symmetric-key algorithm. When it has been decrypted, it contains - other packets (usually a literal data packet or compressed data - packet, but in theory other Symmetrically Encrypted Data packets or - sequences of packets that form whole OpenPGP messages). - - The body of this packet consists of: - - - Encrypted data, the output of the selected symmetric-key cipher - operating in OpenPGP's variant of Cipher Feedback (CFB) mode. - - The symmetric cipher used may be specified in a Public-Key or - Symmetric-Key Encrypted Session Key packet that precedes the - Symmetrically Encrypted Data packet. In that case, the cipher - algorithm octet is prefixed to the session key before it is - encrypted. If no packets of these types precede the encrypted data, - the IDEA algorithm is used with the session key calculated as the MD5 - hash of the passphrase, though this use is deprecated. - - - -Callas, et al Standards Track [Page 45] - -RFC 4880 OpenPGP Message Format November 2007 - - - The data is encrypted in CFB mode, with a CFB shift size equal to the - cipher's block size. The Initial Vector (IV) is specified as all - zeros. Instead of using an IV, OpenPGP prefixes a string of length - equal to the block size of the cipher plus two to the data before it - is encrypted. The first block-size octets (for example, 8 octets for - a 64-bit block length) are random, and the following two octets are - copies of the last two octets of the IV. For example, in an 8-octet - block, octet 9 is a repeat of octet 7, and octet 10 is a repeat of - octet 8. In a cipher of length 16, octet 17 is a repeat of octet 15 - and octet 18 is a repeat of octet 16. As a pedantic clarification, - in both these examples, we consider the first octet to be numbered 1. - - After encrypting the first block-size-plus-two octets, the CFB state - is resynchronized. The last block-size octets of ciphertext are - passed through the cipher and the block boundary is reset. - - The repetition of 16 bits in the random data prefixed to the message - allows the receiver to immediately check whether the session key is - incorrect. See the "Security Considerations" section for hints on - the proper use of this "quick check". - -5.8. Marker Packet (Obsolete Literal Packet) (Tag 10) - - An experimental version of PGP used this packet as the Literal - packet, but no released version of PGP generated Literal packets with - this tag. With PGP 5.x, this packet has been reassigned and is - reserved for use as the Marker packet. - - The body of this packet consists of: - - - The three octets 0x50, 0x47, 0x50 (which spell "PGP" in UTF-8). - - Such a packet MUST be ignored when received. It may be placed at the - beginning of a message that uses features not available in PGP 2.6.x - in order to cause that version to report that newer software is - necessary to process the message. - -5.9. Literal Data Packet (Tag 11) - - A Literal Data packet contains the body of a message; data that is - not to be further interpreted. - - The body of this packet consists of: - - - A one-octet field that describes how the data is formatted. - - - - - - -Callas, et al Standards Track [Page 46] - -RFC 4880 OpenPGP Message Format November 2007 - - - If it is a 'b' (0x62), then the Literal packet contains binary data. - If it is a 't' (0x74), then it contains text data, and thus may need - line ends converted to local form, or other text-mode changes. The - tag 'u' (0x75) means the same as 't', but also indicates that - implementation believes that the literal data contains UTF-8 text. - - Early versions of PGP also defined a value of 'l' as a 'local' mode - for machine-local conversions. RFC 1991 [RFC1991] incorrectly stated - this local mode flag as '1' (ASCII numeral one). Both of these local - modes are deprecated. - - - File name as a string (one-octet length, followed by a file - name). This may be a zero-length string. Commonly, if the - source of the encrypted data is a file, this will be the name of - the encrypted file. An implementation MAY consider the file name - in the Literal packet to be a more authoritative name than the - actual file name. - - If the special name "_CONSOLE" is used, the message is considered to - be "for your eyes only". This advises that the message data is - unusually sensitive, and the receiving program should process it more - carefully, perhaps avoiding storing the received data to disk, for - example. - - - A four-octet number that indicates a date associated with the - literal data. Commonly, the date might be the modification date - of a file, or the time the packet was created, or a zero that - indicates no specific time. - - - The remainder of the packet is literal data. - - Text data is stored with text endings (i.e., network- - normal line endings). These should be converted to native line - endings by the receiving software. - -5.10. Trust Packet (Tag 12) - - The Trust packet is used only within keyrings and is not normally - exported. Trust packets contain data that record the user's - specifications of which key holders are trustworthy introducers, - along with other information that implementing software uses for - trust information. The format of Trust packets is defined by a given - implementation. - - Trust packets SHOULD NOT be emitted to output streams that are - transferred to other users, and they SHOULD be ignored on any input - other than local keyring files. - - - - -Callas, et al Standards Track [Page 47] - -RFC 4880 OpenPGP Message Format November 2007 - - -5.11. User ID Packet (Tag 13) - - A User ID packet consists of UTF-8 text that is intended to represent - the name and email address of the key holder. By convention, it - includes an RFC 2822 [RFC2822] mail name-addr, but there are no - restrictions on its content. The packet length in the header - specifies the length of the User ID. - -5.12. User Attribute Packet (Tag 17) - - The User Attribute packet is a variation of the User ID packet. It - is capable of storing more types of data than the User ID packet, - which is limited to text. Like the User ID packet, a User Attribute - packet may be certified by the key owner ("self-signed") or any other - key owner who cares to certify it. Except as noted, a User Attribute - packet may be used anywhere that a User ID packet may be used. - - While User Attribute packets are not a required part of the OpenPGP - standard, implementations SHOULD provide at least enough - compatibility to properly handle a certification signature on the - User Attribute packet. A simple way to do this is by treating the - User Attribute packet as a User ID packet with opaque contents, but - an implementation may use any method desired. - - The User Attribute packet is made up of one or more attribute - subpackets. Each subpacket consists of a subpacket header and a - body. The header consists of: - - - the subpacket length (1, 2, or 5 octets) - - - the subpacket type (1 octet) - - and is followed by the subpacket specific data. - - The only currently defined subpacket type is 1, signifying an image. - An implementation SHOULD ignore any subpacket of a type that it does - not recognize. Subpacket types 100 through 110 are reserved for - private or experimental use. - -5.12.1. The Image Attribute Subpacket - - The Image Attribute subpacket is used to encode an image, presumably - (but not required to be) that of the key owner. - - The Image Attribute subpacket begins with an image header. The first - two octets of the image header contain the length of the image - header. Note that unlike other multi-octet numerical values in this - document, due to a historical accident this value is encoded as a - - - -Callas, et al Standards Track [Page 48] - -RFC 4880 OpenPGP Message Format November 2007 - - - little-endian number. The image header length is followed by a - single octet for the image header version. The only currently - defined version of the image header is 1, which is a 16-octet image - header. The first three octets of a version 1 image header are thus - 0x10, 0x00, 0x01. - - The fourth octet of a version 1 image header designates the encoding - format of the image. The only currently defined encoding format is - the value 1 to indicate JPEG. Image format types 100 through 110 are - reserved for private or experimental use. The rest of the version 1 - image header is made up of 12 reserved octets, all of which MUST be - set to 0. - - The rest of the image subpacket contains the image itself. As the - only currently defined image type is JPEG, the image is encoded in - the JPEG File Interchange Format (JFIF), a standard file format for - JPEG images [JFIF]. - - An implementation MAY try to determine the type of an image by - examination of the image data if it is unable to handle a particular - version of the image header or if a specified encoding format value - is not recognized. - -5.13. Sym. Encrypted Integrity Protected Data Packet (Tag 18) - - The Symmetrically Encrypted Integrity Protected Data packet is a - variant of the Symmetrically Encrypted Data packet. It is a new - feature created for OpenPGP that addresses the problem of detecting a - modification to encrypted data. It is used in combination with a - Modification Detection Code packet. - - There is a corresponding feature in the features Signature subpacket - that denotes that an implementation can properly use this packet - type. An implementation MUST support decrypting these packets and - SHOULD prefer generating them to the older Symmetrically Encrypted - Data packet when possible. Since this data packet protects against - modification attacks, this standard encourages its proliferation. - While blanket adoption of this data packet would create - interoperability problems, rapid adoption is nevertheless important. - An implementation SHOULD specifically denote support for this packet, - but it MAY infer it from other mechanisms. - - For example, an implementation might infer from the use of a cipher - such as Advanced Encryption Standard (AES) or Twofish that a user - supports this feature. It might place in the unhashed portion of - another user's key signature a Features subpacket. It might also - present a user with an opportunity to regenerate their own self- - signature with a Features subpacket. - - - -Callas, et al Standards Track [Page 49] - -RFC 4880 OpenPGP Message Format November 2007 - - - This packet contains data encrypted with a symmetric-key algorithm - and protected against modification by the SHA-1 hash algorithm. When - it has been decrypted, it will typically contain other packets (often - a Literal Data packet or Compressed Data packet). The last decrypted - packet in this packet's payload MUST be a Modification Detection Code - packet. - - The body of this packet consists of: - - - A one-octet version number. The only currently defined value is - 1. - - - Encrypted data, the output of the selected symmetric-key cipher - operating in Cipher Feedback mode with shift amount equal to the - block size of the cipher (CFB-n where n is the block size). - - The symmetric cipher used MUST be specified in a Public-Key or - Symmetric-Key Encrypted Session Key packet that precedes the - Symmetrically Encrypted Data packet. In either case, the cipher - algorithm octet is prefixed to the session key before it is - encrypted. - - The data is encrypted in CFB mode, with a CFB shift size equal to the - cipher's block size. The Initial Vector (IV) is specified as all - zeros. Instead of using an IV, OpenPGP prefixes an octet string to - the data before it is encrypted. The length of the octet string - equals the block size of the cipher in octets, plus two. The first - octets in the group, of length equal to the block size of the cipher, - are random; the last two octets are each copies of their 2nd - preceding octet. For example, with a cipher whose block size is 128 - bits or 16 octets, the prefix data will contain 16 random octets, - then two more octets, which are copies of the 15th and 16th octets, - respectively. Unlike the Symmetrically Encrypted Data Packet, no - special CFB resynchronization is done after encrypting this prefix - data. See "OpenPGP CFB Mode" below for more details. - - The repetition of 16 bits in the random data prefixed to the message - allows the receiver to immediately check whether the session key is - incorrect. - - The plaintext of the data to be encrypted is passed through the SHA-1 - hash function, and the result of the hash is appended to the - plaintext in a Modification Detection Code packet. The input to the - hash function includes the prefix data described above; it includes - all of the plaintext, and then also includes two octets of values - 0xD3, 0x14. These represent the encoding of a Modification Detection - Code packet tag and length field of 20 octets. - - - - -Callas, et al Standards Track [Page 50] - -RFC 4880 OpenPGP Message Format November 2007 - - - The resulting hash value is stored in a Modification Detection Code - (MDC) packet, which MUST use the two octet encoding just given to - represent its tag and length field. The body of the MDC packet is - the 20-octet output of the SHA-1 hash. - - The Modification Detection Code packet is appended to the plaintext - and encrypted along with the plaintext using the same CFB context. - - During decryption, the plaintext data should be hashed with SHA-1, - including the prefix data as well as the packet tag and length field - of the Modification Detection Code packet. The body of the MDC - packet, upon decryption, is compared with the result of the SHA-1 - hash. - - Any failure of the MDC indicates that the message has been modified - and MUST be treated as a security problem. Failures include a - difference in the hash values, but also the absence of an MDC packet, - or an MDC packet in any position other than the end of the plaintext. - Any failure SHOULD be reported to the user. - - Note: future designs of new versions of this packet should consider - rollback attacks since it will be possible for an attacker to change - the version back to 1. - - NON-NORMATIVE EXPLANATION - - The MDC system, as packets 18 and 19 are called, were created to - provide an integrity mechanism that is less strong than a - signature, yet stronger than bare CFB encryption. - - It is a limitation of CFB encryption that damage to the ciphertext - will corrupt the affected cipher blocks and the block following. - Additionally, if data is removed from the end of a CFB-encrypted - block, that removal is undetectable. (Note also that CBC mode has - a similar limitation, but data removed from the front of the block - is undetectable.) - - The obvious way to protect or authenticate an encrypted block is - to digitally sign it. However, many people do not wish to - habitually sign data, for a large number of reasons beyond the - scope of this document. Suffice it to say that many people - consider properties such as deniability to be as valuable as - integrity. - - OpenPGP addresses this desire to have more security than raw - encryption and yet preserve deniability with the MDC system. An - MDC is intentionally not a MAC. Its name was not selected by - accident. It is analogous to a checksum. - - - -Callas, et al Standards Track [Page 51] - -RFC 4880 OpenPGP Message Format November 2007 - - - Despite the fact that it is a relatively modest system, it has - proved itself in the real world. It is an effective defense to - several attacks that have surfaced since it has been created. It - has met its modest goals admirably. - - Consequently, because it is a modest security system, it has - modest requirements on the hash function(s) it employs. It does - not rely on a hash function being collision-free, it relies on a - hash function being one-way. If a forger, Frank, wishes to send - Alice a (digitally) unsigned message that says, "I've always - secretly loved you, signed Bob", it is far easier for him to - construct a new message than it is to modify anything intercepted - from Bob. (Note also that if Bob wishes to communicate secretly - with Alice, but without authentication or identification and with - a threat model that includes forgers, he has a problem that - transcends mere cryptography.) - - Note also that unlike nearly every other OpenPGP subsystem, there - are no parameters in the MDC system. It hard-defines SHA-1 as its - hash function. This is not an accident. It is an intentional - choice to avoid downgrade and cross-grade attacks while making a - simple, fast system. (A downgrade attack would be an attack that - replaced SHA-256 with SHA-1, for example. A cross-grade attack - would replace SHA-1 with another 160-bit hash, such as RIPE- - MD/160, for example.) - - However, given the present state of hash function cryptanalysis - and cryptography, it may be desirable to upgrade the MDC system to - a new hash function. See Section 13.11 in the "IANA - Considerations" for guidance. - -5.14. Modification Detection Code Packet (Tag 19) - - The Modification Detection Code packet contains a SHA-1 hash of - plaintext data, which is used to detect message modification. It is - only used with a Symmetrically Encrypted Integrity Protected Data - packet. The Modification Detection Code packet MUST be the last - packet in the plaintext data that is encrypted in the Symmetrically - Encrypted Integrity Protected Data packet, and MUST appear in no - other place. - - A Modification Detection Code packet MUST have a length of 20 octets. - - - - - - - - - -Callas, et al Standards Track [Page 52] - -RFC 4880 OpenPGP Message Format November 2007 - - - The body of this packet consists of: - - - A 20-octet SHA-1 hash of the preceding plaintext data of the - Symmetrically Encrypted Integrity Protected Data packet, - including prefix data, the tag octet, and length octet of the - Modification Detection Code packet. - - Note that the Modification Detection Code packet MUST always use a - new format encoding of the packet tag, and a one-octet encoding of - the packet length. The reason for this is that the hashing rules for - modification detection include a one-octet tag and one-octet length - in the data hash. While this is a bit restrictive, it reduces - complexity. - -6. Radix-64 Conversions - - As stated in the introduction, OpenPGP's underlying native - representation for objects is a stream of arbitrary octets, and some - systems desire these objects to be immune to damage caused by - character set translation, data conversions, etc. - - In principle, any printable encoding scheme that met the requirements - of the unsafe channel would suffice, since it would not change the - underlying binary bit streams of the native OpenPGP data structures. - The OpenPGP standard specifies one such printable encoding scheme to - ensure interoperability. - - OpenPGP's Radix-64 encoding is composed of two parts: a base64 - encoding of the binary data and a checksum. The base64 encoding is - identical to the MIME base64 content-transfer-encoding [RFC2045]. - - The checksum is a 24-bit Cyclic Redundancy Check (CRC) converted to - four characters of radix-64 encoding by the same MIME base64 - transformation, preceded by an equal sign (=). The CRC is computed - by using the generator 0x864CFB and an initialization of 0xB704CE. - The accumulation is done on the data before it is converted to - radix-64, rather than on the converted data. A sample implementation - of this algorithm is in the next section. - - The checksum with its leading equal sign MAY appear on the first line - after the base64 encoded data. - - Rationale for CRC-24: The size of 24 bits fits evenly into printable - base64. The nonzero initialization can detect more errors than a - zero initialization. - - - - - - -Callas, et al Standards Track [Page 53] - -RFC 4880 OpenPGP Message Format November 2007 - - -6.1. An Implementation of the CRC-24 in "C" - - #define CRC24_INIT 0xB704CEL - #define CRC24_POLY 0x1864CFBL - - typedef long crc24; - crc24 crc_octets(unsigned char *octets, size_t len) - { - crc24 crc = CRC24_INIT; - int i; - while (len--) { - crc ^= (*octets++) << 16; - for (i = 0; i < 8; i++) { - crc <<= 1; - if (crc & 0x1000000) - crc ^= CRC24_POLY; - } - } - return crc & 0xFFFFFFL; - } - -6.2. Forming ASCII Armor - - When OpenPGP encodes data into ASCII Armor, it puts specific headers - around the Radix-64 encoded data, so OpenPGP can reconstruct the data - later. An OpenPGP implementation MAY use ASCII armor to protect raw - binary data. OpenPGP informs the user what kind of data is encoded - in the ASCII armor through the use of the headers. - - Concatenating the following data creates ASCII Armor: - - - An Armor Header Line, appropriate for the type of data - - - Armor Headers - - - A blank (zero-length, or containing only whitespace) line - - - The ASCII-Armored data - - - An Armor Checksum - - - The Armor Tail, which depends on the Armor Header Line - - An Armor Header Line consists of the appropriate header line text - surrounded by five (5) dashes ('-', 0x2D) on either side of the - header line text. The header line text is chosen based upon the type - of data that is being encoded in Armor, and how it is being encoded. - Header line texts include the following strings: - - - -Callas, et al Standards Track [Page 54] - -RFC 4880 OpenPGP Message Format November 2007 - - - BEGIN PGP MESSAGE - Used for signed, encrypted, or compressed files. - - BEGIN PGP PUBLIC KEY BLOCK - Used for armoring public keys. - - BEGIN PGP PRIVATE KEY BLOCK - Used for armoring private keys. - - BEGIN PGP MESSAGE, PART X/Y - Used for multi-part messages, where the armor is split amongst Y - parts, and this is the Xth part out of Y. - - BEGIN PGP MESSAGE, PART X - Used for multi-part messages, where this is the Xth part of an - unspecified number of parts. Requires the MESSAGE-ID Armor - Header to be used. - - BEGIN PGP SIGNATURE - Used for detached signatures, OpenPGP/MIME signatures, and - cleartext signatures. Note that PGP 2.x uses BEGIN PGP MESSAGE - for detached signatures. - - Note that all these Armor Header Lines are to consist of a complete - line. That is to say, there is always a line ending preceding the - starting five dashes, and following the ending five dashes. The - header lines, therefore, MUST start at the beginning of a line, and - MUST NOT have text other than whitespace following them on the same - line. These line endings are considered a part of the Armor Header - Line for the purposes of determining the content they delimit. This - is particularly important when computing a cleartext signature (see - below). - - The Armor Headers are pairs of strings that can give the user or the - receiving OpenPGP implementation some information about how to decode - or use the message. The Armor Headers are a part of the armor, not a - part of the message, and hence are not protected by any signatures - applied to the message. - - The format of an Armor Header is that of a key-value pair. A colon - (':' 0x38) and a single space (0x20) separate the key and value. - OpenPGP should consider improperly formatted Armor Headers to be - corruption of the ASCII Armor. Unknown keys should be reported to - the user, but OpenPGP should continue to process the message. - - Note that some transport methods are sensitive to line length. While - there is a limit of 76 characters for the Radix-64 data (Section - 6.3), there is no limit to the length of Armor Headers. Care should - - - -Callas, et al Standards Track [Page 55] - -RFC 4880 OpenPGP Message Format November 2007 - - - be taken that the Armor Headers are short enough to survive - transport. One way to do this is to repeat an Armor Header key - multiple times with different values for each so that no one line is - overly long. - - Currently defined Armor Header Keys are as follows: - - - "Version", which states the OpenPGP implementation and version - used to encode the message. - - - "Comment", a user-defined comment. OpenPGP defines all text to - be in UTF-8. A comment may be any UTF-8 string. However, the - whole point of armoring is to provide seven-bit-clean data. - Consequently, if a comment has characters that are outside the - US-ASCII range of UTF, they may very well not survive transport. - - - "MessageID", a 32-character string of printable characters. The - string must be the same for all parts of a multi-part message - that uses the "PART X" Armor Header. MessageID strings should be - unique enough that the recipient of the mail can associate all - the parts of a message with each other. A good checksum or - cryptographic hash function is sufficient. - - The MessageID SHOULD NOT appear unless it is in a multi-part - message. If it appears at all, it MUST be computed from the - finished (encrypted, signed, etc.) message in a deterministic - fashion, rather than contain a purely random value. This is to - allow the legitimate recipient to determine that the MessageID - cannot serve as a covert means of leaking cryptographic key - information. - - - "Hash", a comma-separated list of hash algorithms used in this - message. This is used only in cleartext signed messages. - - - "Charset", a description of the character set that the plaintext - is in. Please note that OpenPGP defines text to be in UTF-8. An - implementation will get best results by translating into and out - of UTF-8. However, there are many instances where this is easier - said than done. Also, there are communities of users who have no - need for UTF-8 because they are all happy with a character set - like ISO Latin-5 or a Japanese character set. In such instances, - an implementation MAY override the UTF-8 default by using this - header key. An implementation MAY implement this key and any - translations it cares to; an implementation MAY ignore it and - assume all text is UTF-8. - - - - - - -Callas, et al Standards Track [Page 56] - -RFC 4880 OpenPGP Message Format November 2007 - - - The Armor Tail Line is composed in the same manner as the Armor - Header Line, except the string "BEGIN" is replaced by the string - "END". - -6.3. Encoding Binary in Radix-64 - - The encoding process represents 24-bit groups of input bits as output - strings of 4 encoded characters. Proceeding from left to right, a - 24-bit input group is formed by concatenating three 8-bit input - groups. These 24 bits are then treated as four concatenated 6-bit - groups, each of which is translated into a single digit in the - Radix-64 alphabet. When encoding a bit stream with the Radix-64 - encoding, the bit stream must be presumed to be ordered with the most - significant bit first. That is, the first bit in the stream will be - the high-order bit in the first 8-bit octet, and the eighth bit will - be the low-order bit in the first 8-bit octet, and so on. - - +--first octet--+-second octet--+--third octet--+ - |7 6 5 4 3 2 1 0|7 6 5 4 3 2 1 0|7 6 5 4 3 2 1 0| - +-----------+---+-------+-------+---+-----------+ - |5 4 3 2 1 0|5 4 3 2 1 0|5 4 3 2 1 0|5 4 3 2 1 0| - +--1.index--+--2.index--+--3.index--+--4.index--+ - - Each 6-bit group is used as an index into an array of 64 printable - characters from the table below. The character referenced by the - index is placed in the output string. - - Value Encoding Value Encoding Value Encoding Value Encoding - 0 A 17 R 34 i 51 z - 1 B 18 S 35 j 52 0 - 2 C 19 T 36 k 53 1 - 3 D 20 U 37 l 54 2 - 4 E 21 V 38 m 55 3 - 5 F 22 W 39 n 56 4 - 6 G 23 X 40 o 57 5 - 7 H 24 Y 41 p 58 6 - 8 I 25 Z 42 q 59 7 - 9 J 26 a 43 r 60 8 - 10 K 27 b 44 s 61 9 - 11 L 28 c 45 t 62 + - 12 M 29 d 46 u 63 / - 13 N 30 e 47 v - 14 O 31 f 48 w (pad) = - 15 P 32 g 49 x - 16 Q 33 h 50 y - - The encoded output stream must be represented in lines of no more - than 76 characters each. - - - -Callas, et al Standards Track [Page 57] - -RFC 4880 OpenPGP Message Format November 2007 - - - Special processing is performed if fewer than 24 bits are available - at the end of the data being encoded. There are three possibilities: - - 1. The last data group has 24 bits (3 octets). No special processing - is needed. - - 2. The last data group has 16 bits (2 octets). The first two 6-bit - groups are processed as above. The third (incomplete) data group - has two zero-value bits added to it, and is processed as above. A - pad character (=) is added to the output. - - 3. The last data group has 8 bits (1 octet). The first 6-bit group - is processed as above. The second (incomplete) data group has - four zero-value bits added to it, and is processed as above. Two - pad characters (=) are added to the output. - -6.4. Decoding Radix-64 - - In Radix-64 data, characters other than those in the table, line - breaks, and other white space probably indicate a transmission error, - about which a warning message or even a message rejection might be - appropriate under some circumstances. Decoding software must ignore - all white space. - - Because it is used only for padding at the end of the data, the - occurrence of any "=" characters may be taken as evidence that the - end of the data has been reached (without truncation in transit). No - such assurance is possible, however, when the number of octets - transmitted was a multiple of three and no "=" characters are - present. - - - - - - - - - - - - - - - - - - - - - -Callas, et al Standards Track [Page 58] - -RFC 4880 OpenPGP Message Format November 2007 - - -6.5. Examples of Radix-64 - - Input data: 0x14FB9C03D97E - Hex: 1 4 F B 9 C | 0 3 D 9 7 E - 8-bit: 00010100 11111011 10011100 | 00000011 11011001 11111110 - 6-bit: 000101 001111 101110 011100 | 000000 111101 100111 111110 - Decimal: 5 15 46 28 0 61 37 62 - Output: F P u c A 9 l + - Input data: 0x14FB9C03D9 - Hex: 1 4 F B 9 C | 0 3 D 9 - 8-bit: 00010100 11111011 10011100 | 00000011 11011001 - pad with 00 - 6-bit: 000101 001111 101110 011100 | 000000 111101 100100 - Decimal: 5 15 46 28 0 61 36 - pad with = - Output: F P u c A 9 k = - Input data: 0x14FB9C03 - Hex: 1 4 F B 9 C | 0 3 - 8-bit: 00010100 11111011 10011100 | 00000011 - pad with 0000 - 6-bit: 000101 001111 101110 011100 | 000000 110000 - Decimal: 5 15 46 28 0 48 - pad with = = - Output: F P u c A w = = - -6.6. Example of an ASCII Armored Message - - -----BEGIN PGP MESSAGE----- - Version: OpenPrivacy 0.99 - - yDgBO22WxBHv7O8X7O/jygAEzol56iUKiXmV+XmpCtmpqQUKiQrFqclFqUDBovzS - vBSFjNSiVHsuAA== - =njUN - -----END PGP MESSAGE----- - - Note that this example has extra indenting; an actual armored message - would have no leading whitespace. - -7. Cleartext Signature Framework - - It is desirable to be able to sign a textual octet stream without - ASCII armoring the stream itself, so the signed text is still - readable without special software. In order to bind a signature to - such a cleartext, this framework is used. (Note that this framework - is not intended to be reversible. RFC 3156 [RFC3156] defines another - way to sign cleartext messages for environments that support MIME.) - - - - - -Callas, et al Standards Track [Page 59] - -RFC 4880 OpenPGP Message Format November 2007 - - - The cleartext signed message consists of: - - - The cleartext header '-----BEGIN PGP SIGNED MESSAGE-----' on a - single line, - - - One or more "Hash" Armor Headers, - - - Exactly one empty line not included into the message digest, - - - The dash-escaped cleartext that is included into the message - digest, - - - The ASCII armored signature(s) including the '-----BEGIN PGP - SIGNATURE-----' Armor Header and Armor Tail Lines. - - If the "Hash" Armor Header is given, the specified message digest - algorithm(s) are used for the signature. If there are no such - headers, MD5 is used. If MD5 is the only hash used, then an - implementation MAY omit this header for improved V2.x compatibility. - If more than one message digest is used in the signature, the "Hash" - armor header contains a comma-delimited list of used message digests. - - Current message digest names are described below with the algorithm - IDs. - - An implementation SHOULD add a line break after the cleartext, but - MAY omit it if the cleartext ends with a line break. This is for - visual clarity. - -7.1. Dash-Escaped Text - - The cleartext content of the message must also be dash-escaped. - - Dash-escaped cleartext is the ordinary cleartext where every line - starting with a dash '-' (0x2D) is prefixed by the sequence dash '-' - (0x2D) and space ' ' (0x20). This prevents the parser from - recognizing armor headers of the cleartext itself. An implementation - MAY dash-escape any line, SHOULD dash-escape lines commencing "From" - followed by a space, and MUST dash-escape any line commencing in a - dash. The message digest is computed using the cleartext itself, not - the dash-escaped form. - - As with binary signatures on text documents, a cleartext signature is - calculated on the text using canonical line endings. The - line ending (i.e., the ) before the '-----BEGIN PGP - SIGNATURE-----' line that terminates the signed text is not - considered part of the signed text. - - - - -Callas, et al Standards Track [Page 60] - -RFC 4880 OpenPGP Message Format November 2007 - - - When reversing dash-escaping, an implementation MUST strip the string - "- " if it occurs at the beginning of a line, and SHOULD warn on "-" - and any character other than a space at the beginning of a line. - - Also, any trailing whitespace -- spaces (0x20) and tabs (0x09) -- at - the end of any line is removed when the cleartext signature is - generated. - -8. Regular Expressions - - A regular expression is zero or more branches, separated by '|'. It - matches anything that matches one of the branches. - - A branch is zero or more pieces, concatenated. It matches a match - for the first, followed by a match for the second, etc. - - A piece is an atom possibly followed by '*', '+', or '?'. An atom - followed by '*' matches a sequence of 0 or more matches of the atom. - An atom followed by '+' matches a sequence of 1 or more matches of - the atom. An atom followed by '?' matches a match of the atom, or - the null string. - - An atom is a regular expression in parentheses (matching a match for - the regular expression), a range (see below), '.' (matching any - single character), '^' (matching the null string at the beginning of - the input string), '$' (matching the null string at the end of the - input string), a '\' followed by a single character (matching that - character), or a single character with no other significance - (matching that character). - - A range is a sequence of characters enclosed in '[]'. It normally - matches any single character from the sequence. If the sequence - begins with '^', it matches any single character not from the rest of - the sequence. If two characters in the sequence are separated - by '-', this is shorthand for the full list of ASCII characters - between them (e.g., '[0-9]' matches any decimal digit). To include a - literal ']' in the sequence, make it the first character (following a - possible '^'). To include a literal '-', make it the first or last - character. - -9. Constants - - This section describes the constants used in OpenPGP. - - Note that these tables are not exhaustive lists; an implementation - MAY implement an algorithm not on these lists, so long as the - algorithm numbers are chosen from the private or experimental - algorithm range. - - - -Callas, et al Standards Track [Page 61] - -RFC 4880 OpenPGP Message Format November 2007 - - - See the section "Notes on Algorithms" below for more discussion of - the algorithms. - -9.1. Public-Key Algorithms - - ID Algorithm - -- --------- - 1 - RSA (Encrypt or Sign) [HAC] - 2 - RSA Encrypt-Only [HAC] - 3 - RSA Sign-Only [HAC] - 16 - Elgamal (Encrypt-Only) [ELGAMAL] [HAC] - 17 - DSA (Digital Signature Algorithm) [FIPS186] [HAC] - 18 - Reserved for Elliptic Curve - 19 - Reserved for ECDSA - 20 - Reserved (formerly Elgamal Encrypt or Sign) - 21 - Reserved for Diffie-Hellman (X9.42, - as defined for IETF-S/MIME) - 100 to 110 - Private/Experimental algorithm - - Implementations MUST implement DSA for signatures, and Elgamal for - encryption. Implementations SHOULD implement RSA keys (1). RSA - Encrypt-Only (2) and RSA Sign-Only are deprecated and SHOULD NOT be - generated, but may be interpreted. See Section 13.5. See Section - 13.8 for notes on Elliptic Curve (18), ECDSA (19), Elgamal Encrypt or - Sign (20), and X9.42 (21). Implementations MAY implement any other - algorithm. - -9.2. Symmetric-Key Algorithms - - ID Algorithm - -- --------- - 0 - Plaintext or unencrypted data - 1 - IDEA [IDEA] - 2 - TripleDES (DES-EDE, [SCHNEIER] [HAC] - - 168 bit key derived from 192) - 3 - CAST5 (128 bit key, as per [RFC2144]) - 4 - Blowfish (128 bit key, 16 rounds) [BLOWFISH] - 5 - Reserved - 6 - Reserved - 7 - AES with 128-bit key [AES] - 8 - AES with 192-bit key - 9 - AES with 256-bit key - 10 - Twofish with 256-bit key [TWOFISH] - 100 to 110 - Private/Experimental algorithm - - Implementations MUST implement TripleDES. Implementations SHOULD - implement AES-128 and CAST5. Implementations that interoperate with - - - - -Callas, et al Standards Track [Page 62] - -RFC 4880 OpenPGP Message Format November 2007 - - - PGP 2.6 or earlier need to support IDEA, as that is the only - symmetric cipher those versions use. Implementations MAY implement - any other algorithm. - -9.3. Compression Algorithms - - ID Algorithm - -- --------- - 0 - Uncompressed - 1 - ZIP [RFC1951] - 2 - ZLIB [RFC1950] - 3 - BZip2 [BZ2] - 100 to 110 - Private/Experimental algorithm - - Implementations MUST implement uncompressed data. Implementations - SHOULD implement ZIP. Implementations MAY implement any other - algorithm. - -9.4. Hash Algorithms - - ID Algorithm Text Name - -- --------- --------- - 1 - MD5 [HAC] "MD5" - 2 - SHA-1 [FIPS180] "SHA1" - 3 - RIPE-MD/160 [HAC] "RIPEMD160" - 4 - Reserved - 5 - Reserved - 6 - Reserved - 7 - Reserved - 8 - SHA256 [FIPS180] "SHA256" - 9 - SHA384 [FIPS180] "SHA384" - 10 - SHA512 [FIPS180] "SHA512" - 11 - SHA224 [FIPS180] "SHA224" - 100 to 110 - Private/Experimental algorithm - - Implementations MUST implement SHA-1. Implementations MAY implement - other algorithms. MD5 is deprecated. - -10. IANA Considerations - - OpenPGP is highly parameterized, and consequently there are a number - of considerations for allocating parameters for extensions. This - section describes how IANA should look at extensions to the protocol - as described in this document. - - - - - - - -Callas, et al Standards Track [Page 63] - -RFC 4880 OpenPGP Message Format November 2007 - - -10.1. New String-to-Key Specifier Types - - OpenPGP S2K specifiers contain a mechanism for new algorithms to turn - a string into a key. This specification creates a registry of S2K - specifier types. The registry includes the S2K type, the name of the - S2K, and a reference to the defining specification. The initial - values for this registry can be found in Section 3.7.1. Adding a new - S2K specifier MUST be done through the IETF CONSENSUS method, as - described in [RFC2434]. - -10.2. New Packets - - Major new features of OpenPGP are defined through new packet types. - This specification creates a registry of packet types. The registry - includes the packet type, the name of the packet, and a reference to - the defining specification. The initial values for this registry can - be found in Section 4.3. Adding a new packet type MUST be done - through the IETF CONSENSUS method, as described in [RFC2434]. - -10.2.1. User Attribute Types - - The User Attribute packet permits an extensible mechanism for other - types of certificate identification. This specification creates a - registry of User Attribute types. The registry includes the User - Attribute type, the name of the User Attribute, and a reference to - the defining specification. The initial values for this registry can - be found in Section 5.12. Adding a new User Attribute type MUST be - done through the IETF CONSENSUS method, as described in [RFC2434]. - -10.2.1.1. Image Format Subpacket Types - - Within User Attribute packets, there is an extensible mechanism for - other types of image-based user attributes. This specification - creates a registry of Image Attribute subpacket types. The registry - includes the Image Attribute subpacket type, the name of the Image - Attribute subpacket, and a reference to the defining specification. - The initial values for this registry can be found in Section 5.12.1. - Adding a new Image Attribute subpacket type MUST be done through the - IETF CONSENSUS method, as described in [RFC2434]. - -10.2.2. New Signature Subpackets - - OpenPGP signatures contain a mechanism for signed (or unsigned) data - to be added to them for a variety of purposes in the Signature - subpackets as discussed in Section 5.2.3.1. This specification - creates a registry of Signature subpacket types. The registry - includes the Signature subpacket type, the name of the subpacket, and - a reference to the defining specification. The initial values for - - - -Callas, et al Standards Track [Page 64] - -RFC 4880 OpenPGP Message Format November 2007 - - - this registry can be found in Section 5.2.3.1. Adding a new - Signature subpacket MUST be done through the IETF CONSENSUS method, - as described in [RFC2434]. - -10.2.2.1. Signature Notation Data Subpackets - - OpenPGP signatures further contain a mechanism for extensions in - signatures. These are the Notation Data subpackets, which contain a - key/value pair. Notations contain a user space that is completely - unmanaged and an IETF space. - - This specification creates a registry of Signature Notation Data - types. The registry includes the Signature Notation Data type, the - name of the Signature Notation Data, its allowed values, and a - reference to the defining specification. The initial values for this - registry can be found in Section 5.2.3.16. Adding a new Signature - Notation Data subpacket MUST be done through the EXPERT REVIEW - method, as described in [RFC2434]. - -10.2.2.2. Key Server Preference Extensions - - OpenPGP signatures contain a mechanism for preferences to be - specified about key servers. This specification creates a registry - of key server preferences. The registry includes the key server - preference, the name of the preference, and a reference to the - defining specification. The initial values for this registry can be - found in Section 5.2.3.17. Adding a new key server preference MUST - be done through the IETF CONSENSUS method, as described in [RFC2434]. - -10.2.2.3. Key Flags Extensions - - OpenPGP signatures contain a mechanism for flags to be specified - about key usage. This specification creates a registry of key usage - flags. The registry includes the key flags value, the name of the - flag, and a reference to the defining specification. The initial - values for this registry can be found in Section 5.2.3.21. Adding a - new key usage flag MUST be done through the IETF CONSENSUS method, as - described in [RFC2434]. - -10.2.2.4. Reason for Revocation Extensions - - OpenPGP signatures contain a mechanism for flags to be specified - about why a key was revoked. This specification creates a registry - of "Reason for Revocation" flags. The registry includes the "Reason - for Revocation" flags value, the name of the flag, and a reference to - the defining specification. The initial values for this registry can - be found in Section 5.2.3.23. Adding a new feature flag MUST be done - through the IETF CONSENSUS method, as described in [RFC2434]. - - - -Callas, et al Standards Track [Page 65] - -RFC 4880 OpenPGP Message Format November 2007 - - -10.2.2.5. Implementation Features - - OpenPGP signatures contain a mechanism for flags to be specified - stating which optional features an implementation supports. This - specification creates a registry of feature-implementation flags. - The registry includes the feature-implementation flags value, the - name of the flag, and a reference to the defining specification. The - initial values for this registry can be found in Section 5.2.3.24. - Adding a new feature-implementation flag MUST be done through the - IETF CONSENSUS method, as described in [RFC2434]. - - Also see Section 13.12 for more information about when feature flags - are needed. - -10.2.3. New Packet Versions - - The core OpenPGP packets all have version numbers, and can be revised - by introducing a new version of an existing packet. This - specification creates a registry of packet types. The registry - includes the packet type, the number of the version, and a reference - to the defining specification. The initial values for this registry - can be found in Section 5. Adding a new packet version MUST be done - through the IETF CONSENSUS method, as described in [RFC2434]. - -10.3. New Algorithms - - Section 9 lists the core algorithms that OpenPGP uses. Adding in a - new algorithm is usually simple. For example, adding in a new - symmetric cipher usually would not need anything more than allocating - a constant for that cipher. If that cipher had other than a 64-bit - or 128-bit block size, there might need to be additional - documentation describing how OpenPGP-CFB mode would be adjusted. - Similarly, when DSA was expanded from a maximum of 1024-bit public - keys to 3072-bit public keys, the revision of FIPS 186 contained - enough information itself to allow implementation. Changes to this - document were made mainly for emphasis. - -10.3.1. Public-Key Algorithms - - OpenPGP specifies a number of public-key algorithms. This - specification creates a registry of public-key algorithm identifiers. - The registry includes the algorithm name, its key sizes and - parameters, and a reference to the defining specification. The - initial values for this registry can be found in Section 9. Adding a - new public-key algorithm MUST be done through the IETF CONSENSUS - method, as described in [RFC2434]. - - - - - -Callas, et al Standards Track [Page 66] - -RFC 4880 OpenPGP Message Format November 2007 - - -10.3.2. Symmetric-Key Algorithms - - OpenPGP specifies a number of symmetric-key algorithms. This - specification creates a registry of symmetric-key algorithm - identifiers. The registry includes the algorithm name, its key sizes - and block size, and a reference to the defining specification. The - initial values for this registry can be found in Section 9. Adding a - new symmetric-key algorithm MUST be done through the IETF CONSENSUS - method, as described in [RFC2434]. - -10.3.3. Hash Algorithms - - OpenPGP specifies a number of hash algorithms. This specification - creates a registry of hash algorithm identifiers. The registry - includes the algorithm name, a text representation of that name, its - block size, an OID hash prefix, and a reference to the defining - specification. The initial values for this registry can be found in - Section 9 for the algorithm identifiers and text names, and Section - 5.2.2 for the OIDs and expanded signature prefixes. Adding a new - hash algorithm MUST be done through the IETF CONSENSUS method, as - described in [RFC2434]. - -10.3.4. Compression Algorithms - - OpenPGP specifies a number of compression algorithms. This - specification creates a registry of compression algorithm - identifiers. The registry includes the algorithm name and a - reference to the defining specification. The initial values for this - registry can be found in Section 9.3. Adding a new compression key - algorithm MUST be done through the IETF CONSENSUS method, as - described in [RFC2434]. - -11. Packet Composition - - OpenPGP packets are assembled into sequences in order to create - messages and to transfer keys. Not all possible packet sequences are - meaningful and correct. This section describes the rules for how - packets should be placed into sequences. - -11.1. Transferable Public Keys - - OpenPGP users may transfer public keys. The essential elements of a - transferable public key are as follows: - - - One Public-Key packet - - - Zero or more revocation signatures - - - - -Callas, et al Standards Track [Page 67] - -RFC 4880 OpenPGP Message Format November 2007 - - - - One or more User ID packets - - - After each User ID packet, zero or more Signature packets - (certifications) - - - Zero or more User Attribute packets - - - After each User Attribute packet, zero or more Signature packets - (certifications) - - - Zero or more Subkey packets - - - After each Subkey packet, one Signature packet, plus optionally a - revocation - - The Public-Key packet occurs first. Each of the following User ID - packets provides the identity of the owner of this public key. If - there are multiple User ID packets, this corresponds to multiple - means of identifying the same unique individual user; for example, a - user may have more than one email address, and construct a User ID - for each one. - - Immediately following each User ID packet, there are zero or more - Signature packets. Each Signature packet is calculated on the - immediately preceding User ID packet and the initial Public-Key - packet. The signature serves to certify the corresponding public key - and User ID. In effect, the signer is testifying to his or her - belief that this public key belongs to the user identified by this - User ID. - - Within the same section as the User ID packets, there are zero or - more User Attribute packets. Like the User ID packets, a User - Attribute packet is followed by zero or more Signature packets - calculated on the immediately preceding User Attribute packet and the - initial Public-Key packet. - - User Attribute packets and User ID packets may be freely intermixed - in this section, so long as the signatures that follow them are - maintained on the proper User Attribute or User ID packet. - - After the User ID packet or Attribute packet, there may be zero or - more Subkey packets. In general, subkeys are provided in cases where - the top-level public key is a signature-only key. However, any V4 - key may have subkeys, and the subkeys may be encryption-only keys, - signature-only keys, or general-purpose keys. V3 keys MUST NOT have - subkeys. - - - - - -Callas, et al Standards Track [Page 68] - -RFC 4880 OpenPGP Message Format November 2007 - - - Each Subkey packet MUST be followed by one Signature packet, which - should be a subkey binding signature issued by the top-level key. - For subkeys that can issue signatures, the subkey binding signature - MUST contain an Embedded Signature subpacket with a primary key - binding signature (0x19) issued by the subkey on the top-level key. - - Subkey and Key packets may each be followed by a revocation Signature - packet to indicate that the key is revoked. Revocation signatures - are only accepted if they are issued by the key itself, or by a key - that is authorized to issue revocations via a Revocation Key - subpacket in a self-signature by the top-level key. - - Transferable public-key packet sequences may be concatenated to allow - transferring multiple public keys in one operation. - -11.2. Transferable Secret Keys - - OpenPGP users may transfer secret keys. The format of a transferable - secret key is the same as a transferable public key except that - secret-key and secret-subkey packets are used instead of the public - key and public-subkey packets. Implementations SHOULD include self- - signatures on any user IDs and subkeys, as this allows for a complete - public key to be automatically extracted from the transferable secret - key. Implementations MAY choose to omit the self-signatures, - especially if a transferable public key accompanies the transferable - secret key. - -11.3. OpenPGP Messages - - An OpenPGP message is a packet or sequence of packets that - corresponds to the following grammatical rules (comma represents - sequential composition, and vertical bar separates alternatives): - - OpenPGP Message :- Encrypted Message | Signed Message | - Compressed Message | Literal Message. - - Compressed Message :- Compressed Data Packet. - - Literal Message :- Literal Data Packet. - - ESK :- Public-Key Encrypted Session Key Packet | - Symmetric-Key Encrypted Session Key Packet. - - ESK Sequence :- ESK | ESK Sequence, ESK. - - Encrypted Data :- Symmetrically Encrypted Data Packet | - Symmetrically Encrypted Integrity Protected Data Packet - - - - -Callas, et al Standards Track [Page 69] - -RFC 4880 OpenPGP Message Format November 2007 - - - Encrypted Message :- Encrypted Data | ESK Sequence, Encrypted Data. - - One-Pass Signed Message :- One-Pass Signature Packet, - OpenPGP Message, Corresponding Signature Packet. - - Signed Message :- Signature Packet, OpenPGP Message | - One-Pass Signed Message. - - In addition, decrypting a Symmetrically Encrypted Data packet or a - Symmetrically Encrypted Integrity Protected Data packet as well as - decompressing a Compressed Data packet must yield a valid OpenPGP - Message. - -11.4. Detached Signatures - - Some OpenPGP applications use so-called "detached signatures". For - example, a program bundle may contain a file, and with it a second - file that is a detached signature of the first file. These detached - signatures are simply a Signature packet stored separately from the - data for which they are a signature. - -12. Enhanced Key Formats - -12.1. Key Structures - - The format of an OpenPGP V3 key is as follows. Entries in square - brackets are optional and ellipses indicate repetition. - - RSA Public Key - [Revocation Self Signature] - User ID [Signature ...] - [User ID [Signature ...] ...] - - Each signature certifies the RSA public key and the preceding User - ID. The RSA public key can have many User IDs and each User ID can - have many signatures. V3 keys are deprecated. Implementations MUST - NOT generate new V3 keys, but MAY continue to use existing ones. - - The format of an OpenPGP V4 key that uses multiple public keys is - similar except that the other keys are added to the end as "subkeys" - of the primary key. - - - - - - - - - - -Callas, et al Standards Track [Page 70] - -RFC 4880 OpenPGP Message Format November 2007 - - - Primary-Key - [Revocation Self Signature] - [Direct Key Signature...] - User ID [Signature ...] - [User ID [Signature ...] ...] - [User Attribute [Signature ...] ...] - [[Subkey [Binding-Signature-Revocation] - Primary-Key-Binding-Signature] ...] - - A subkey always has a single signature after it that is issued using - the primary key to tie the two keys together. This binding signature - may be in either V3 or V4 format, but SHOULD be V4. Subkeys that can - issue signatures MUST have a V4 binding signature due to the REQUIRED - embedded primary key binding signature. - - In the above diagram, if the binding signature of a subkey has been - revoked, the revoked key may be removed, leaving only one key. - - In a V4 key, the primary key MUST be a key capable of certification. - The subkeys may be keys of any other type. There may be other - constructions of V4 keys, too. For example, there may be a single- - key RSA key in V4 format, a DSA primary key with an RSA encryption - key, or RSA primary key with an Elgamal subkey, etc. - - It is also possible to have a signature-only subkey. This permits a - primary key that collects certifications (key signatures), but is - used only for certifying subkeys that are used for encryption and - signatures. - -12.2. Key IDs and Fingerprints - - For a V3 key, the eight-octet Key ID consists of the low 64 bits of - the public modulus of the RSA key. - - The fingerprint of a V3 key is formed by hashing the body (but not - the two-octet length) of the MPIs that form the key material (public - modulus n, followed by exponent e) with MD5. Note that both V3 keys - and MD5 are deprecated. - - A V4 fingerprint is the 160-bit SHA-1 hash of the octet 0x99, - followed by the two-octet packet length, followed by the entire - Public-Key packet starting with the version field. The Key ID is the - low-order 64 bits of the fingerprint. Here are the fields of the - hash material, with the example of a DSA key: - - a.1) 0x99 (1 octet) - - a.2) high-order length octet of (b)-(e) (1 octet) - - - -Callas, et al Standards Track [Page 71] - -RFC 4880 OpenPGP Message Format November 2007 - - - a.3) low-order length octet of (b)-(e) (1 octet) - - b) version number = 4 (1 octet); - - c) timestamp of key creation (4 octets); - - d) algorithm (1 octet): 17 = DSA (example); - - e) Algorithm-specific fields. - - Algorithm-Specific Fields for DSA keys (example): - - e.1) MPI of DSA prime p; - - e.2) MPI of DSA group order q (q is a prime divisor of p-1); - - e.3) MPI of DSA group generator g; - - e.4) MPI of DSA public-key value y (= g**x mod p where x is secret). - - Note that it is possible for there to be collisions of Key IDs -- two - different keys with the same Key ID. Note that there is a much - smaller, but still non-zero, probability that two different keys have - the same fingerprint. - - Also note that if V3 and V4 format keys share the same RSA key - material, they will have different Key IDs as well as different - fingerprints. - - Finally, the Key ID and fingerprint of a subkey are calculated in the - same way as for a primary key, including the 0x99 as the first octet - (even though this is not a valid packet ID for a public subkey). - -13. Notes on Algorithms - -13.1. PKCS#1 Encoding in OpenPGP - - This standard makes use of the PKCS#1 functions EME-PKCS1-v1_5 and - EMSA-PKCS1-v1_5. However, the calling conventions of these functions - has changed in the past. To avoid potential confusion and - interoperability problems, we are including local copies in this - document, adapted from those in PKCS#1 v2.1 [RFC3447]. RFC 3447 - should be treated as the ultimate authority on PKCS#1 for OpenPGP. - Nonetheless, we believe that there is value in having a self- - contained document that avoids problems in the future with needed - changes in the conventions. - - - - - -Callas, et al Standards Track [Page 72] - -RFC 4880 OpenPGP Message Format November 2007 - - -13.1.1. EME-PKCS1-v1_5-ENCODE - - Input: - - k = the length in octets of the key modulus - - M = message to be encoded, an octet string of length mLen, where - mLen <= k - 11 - - Output: - - EM = encoded message, an octet string of length k - - Error: "message too long" - - 1. Length checking: If mLen > k - 11, output "message too long" and - stop. - - 2. Generate an octet string PS of length k - mLen - 3 consisting of - pseudo-randomly generated nonzero octets. The length of PS will - be at least eight octets. - - 3. Concatenate PS, the message M, and other padding to form an - encoded message EM of length k octets as - - EM = 0x00 || 0x02 || PS || 0x00 || M. - - 4. Output EM. - -13.1.2. EME-PKCS1-v1_5-DECODE - - Input: - - EM = encoded message, an octet string - - Output: - - M = message, an octet string - - Error: "decryption error" - - To decode an EME-PKCS1_v1_5 message, separate the encoded message EM - into an octet string PS consisting of nonzero octets and a message M - as follows - - EM = 0x00 || 0x02 || PS || 0x00 || M. - - - - - -Callas, et al Standards Track [Page 73] - -RFC 4880 OpenPGP Message Format November 2007 - - - If the first octet of EM does not have hexadecimal value 0x00, if the - second octet of EM does not have hexadecimal value 0x02, if there is - no octet with hexadecimal value 0x00 to separate PS from M, or if the - length of PS is less than 8 octets, output "decryption error" and - stop. See also the security note in Section 14 regarding differences - in reporting between a decryption error and a padding error. - -13.1.3. EMSA-PKCS1-v1_5 - - This encoding method is deterministic and only has an encoding - operation. - - Option: - - Hash - a hash function in which hLen denotes the length in octets of - the hash function output - - Input: - - M = message to be encoded - - mL = intended length in octets of the encoded message, at least tLen - + 11, where tLen is the octet length of the DER encoding T of a - certain value computed during the encoding operation - - Output: - - EM = encoded message, an octet string of length emLen - - Errors: "message too long"; "intended encoded message length too - short" - - Steps: - - 1. Apply the hash function to the message M to produce a hash value - H: - - H = Hash(M). - - If the hash function outputs "message too long," output "message - too long" and stop. - - 2. Using the list in Section 5.2.2, produce an ASN.1 DER value for - the hash function used. Let T be the full hash prefix from - Section 5.2.2, and let tLen be the length in octets of T. - - 3. If emLen < tLen + 11, output "intended encoded message length - too short" and stop. - - - -Callas, et al Standards Track [Page 74] - -RFC 4880 OpenPGP Message Format November 2007 - - - 4. Generate an octet string PS consisting of emLen - tLen - 3 - octets with hexadecimal value 0xFF. The length of PS will be at - least 8 octets. - - 5. Concatenate PS, the hash prefix T, and other padding to form the - encoded message EM as - - EM = 0x00 || 0x01 || PS || 0x00 || T. - - 6. Output EM. - -13.2. Symmetric Algorithm Preferences - - The symmetric algorithm preference is an ordered list of algorithms - that the keyholder accepts. Since it is found on a self-signature, - it is possible that a keyholder may have multiple, different - preferences. For example, Alice may have TripleDES only specified - for "alice@work.com" but CAST5, Blowfish, and TripleDES specified for - "alice@home.org". Note that it is also possible for preferences to - be in a subkey's binding signature. - - Since TripleDES is the MUST-implement algorithm, if it is not - explicitly in the list, it is tacitly at the end. However, it is - good form to place it there explicitly. Note also that if an - implementation does not implement the preference, then it is - implicitly a TripleDES-only implementation. - - An implementation MUST NOT use a symmetric algorithm that is not in - the recipient's preference list. When encrypting to more than one - recipient, the implementation finds a suitable algorithm by taking - the intersection of the preferences of the recipients. Note that the - MUST-implement algorithm, TripleDES, ensures that the intersection is - not null. The implementation may use any mechanism to pick an - algorithm in the intersection. - - If an implementation can decrypt a message that a keyholder doesn't - have in their preferences, the implementation SHOULD decrypt the - message anyway, but MUST warn the keyholder that the protocol has - been violated. For example, suppose that Alice, above, has software - that implements all algorithms in this specification. Nonetheless, - she prefers subsets for work or home. If she is sent a message - encrypted with IDEA, which is not in her preferences, the software - warns her that someone sent her an IDEA-encrypted message, but it - would ideally decrypt it anyway. - - - - - - - -Callas, et al Standards Track [Page 75] - -RFC 4880 OpenPGP Message Format November 2007 - - -13.3. Other Algorithm Preferences - - Other algorithm preferences work similarly to the symmetric algorithm - preference, in that they specify which algorithms the keyholder - accepts. There are two interesting cases that other comments need to - be made about, though, the compression preferences and the hash - preferences. - -13.3.1. Compression Preferences - - Compression has been an integral part of PGP since its first days. - OpenPGP and all previous versions of PGP have offered compression. - In this specification, the default is for messages to be compressed, - although an implementation is not required to do so. Consequently, - the compression preference gives a way for a keyholder to request - that messages not be compressed, presumably because they are using a - minimal implementation that does not include compression. - Additionally, this gives a keyholder a way to state that it can - support alternate algorithms. - - Like the algorithm preferences, an implementation MUST NOT use an - algorithm that is not in the preference vector. If the preferences - are not present, then they are assumed to be [ZIP(1), - Uncompressed(0)]. - - Additionally, an implementation MUST implement this preference to the - degree of recognizing when to send an uncompressed message. A robust - implementation would satisfy this requirement by looking at the - recipient's preference and acting accordingly. A minimal - implementation can satisfy this requirement by never generating a - compressed message, since all implementations can handle messages - that have not been compressed. - -13.3.2. Hash Algorithm Preferences - - Typically, the choice of a hash algorithm is something the signer - does, rather than the verifier, because a signer rarely knows who is - going to be verifying the signature. This preference, though, allows - a protocol based upon digital signatures ease in negotiation. - - Thus, if Alice is authenticating herself to Bob with a signature, it - makes sense for her to use a hash algorithm that Bob's software uses. - This preference allows Bob to state in his key which algorithms Alice - may use. - - Since SHA1 is the MUST-implement hash algorithm, if it is not - explicitly in the list, it is tacitly at the end. However, it is - good form to place it there explicitly. - - - -Callas, et al Standards Track [Page 76] - -RFC 4880 OpenPGP Message Format November 2007 - - -13.4. Plaintext - - Algorithm 0, "plaintext", may only be used to denote secret keys that - are stored in the clear. Implementations MUST NOT use plaintext in - Symmetrically Encrypted Data packets; they must use Literal Data - packets to encode unencrypted or literal data. - -13.5. RSA - - There are algorithm types for RSA Sign-Only, and RSA Encrypt-Only - keys. These types are deprecated. The "key flags" subpacket in a - signature is a much better way to express the same idea, and - generalizes it to all algorithms. An implementation SHOULD NOT - create such a key, but MAY interpret it. - - An implementation SHOULD NOT implement RSA keys of size less than - 1024 bits. - -13.6. DSA - - An implementation SHOULD NOT implement DSA keys of size less than - 1024 bits. It MUST NOT implement a DSA key with a q size of less - than 160 bits. DSA keys MUST also be a multiple of 64 bits, and the - q size MUST be a multiple of 8 bits. The Digital Signature Standard - (DSS) [FIPS186] specifies that DSA be used in one of the following - ways: - - * 1024-bit key, 160-bit q, SHA-1, SHA-224, SHA-256, SHA-384, or - SHA-512 hash - - * 2048-bit key, 224-bit q, SHA-224, SHA-256, SHA-384, or SHA-512 - hash - - * 2048-bit key, 256-bit q, SHA-256, SHA-384, or SHA-512 hash - - * 3072-bit key, 256-bit q, SHA-256, SHA-384, or SHA-512 hash - - The above key and q size pairs were chosen to best balance the - strength of the key with the strength of the hash. Implementations - SHOULD use one of the above key and q size pairs when generating DSA - keys. If DSS compliance is desired, one of the specified SHA hashes - must be used as well. [FIPS186] is the ultimate authority on DSS, - and should be consulted for all questions of DSS compliance. - - Note that earlier versions of this standard only allowed a 160-bit q - with no truncation allowed, so earlier implementations may not be - able to handle signatures with a different q size or a truncated - hash. - - - -Callas, et al Standards Track [Page 77] - -RFC 4880 OpenPGP Message Format November 2007 - - -13.7. Elgamal - - An implementation SHOULD NOT implement Elgamal keys of size less than - 1024 bits. - -13.8. Reserved Algorithm Numbers - - A number of algorithm IDs have been reserved for algorithms that - would be useful to use in an OpenPGP implementation, yet there are - issues that prevent an implementer from actually implementing the - algorithm. These are marked in Section 9.1, "Public-Key Algorithms", - as "reserved for". - - The reserved public-key algorithms, Elliptic Curve (18), ECDSA (19), - and X9.42 (21), do not have the necessary parameters, parameter - order, or semantics defined. - - Previous versions of OpenPGP permitted Elgamal [ELGAMAL] signatures - with a public-key identifier of 20. These are no longer permitted. - An implementation MUST NOT generate such keys. An implementation - MUST NOT generate Elgamal signatures. See [BLEICHENBACHER]. - -13.9. OpenPGP CFB Mode - - OpenPGP does symmetric encryption using a variant of Cipher Feedback - mode (CFB mode). This section describes the procedure it uses in - detail. This mode is what is used for Symmetrically Encrypted Data - Packets; the mechanism used for encrypting secret-key material is - similar, and is described in the sections above. - - In the description below, the value BS is the block size in octets of - the cipher. Most ciphers have a block size of 8 octets. The AES and - Twofish have a block size of 16 octets. Also note that the - description below assumes that the IV and CFB arrays start with an - index of 1 (unlike the C language, which assumes arrays start with a - zero index). - - OpenPGP CFB mode uses an initialization vector (IV) of all zeros, and - prefixes the plaintext with BS+2 octets of random data, such that - octets BS+1 and BS+2 match octets BS-1 and BS. It does a CFB - resynchronization after encrypting those BS+2 octets. - - Thus, for an algorithm that has a block size of 8 octets (64 bits), - the IV is 10 octets long and octets 7 and 8 of the IV are the same as - octets 9 and 10. For an algorithm with a block size of 16 octets - (128 bits), the IV is 18 octets long, and octets 17 and 18 replicate - octets 15 and 16. Those extra two octets are an easy check for a - correct key. - - - -Callas, et al Standards Track [Page 78] - -RFC 4880 OpenPGP Message Format November 2007 - - - Step by step, here is the procedure: - - 1. The feedback register (FR) is set to the IV, which is all zeros. - - 2. FR is encrypted to produce FRE (FR Encrypted). This is the - encryption of an all-zero value. - - 3. FRE is xored with the first BS octets of random data prefixed to - the plaintext to produce C[1] through C[BS], the first BS octets - of ciphertext. - - 4. FR is loaded with C[1] through C[BS]. - - 5. FR is encrypted to produce FRE, the encryption of the first BS - octets of ciphertext. - - 6. The left two octets of FRE get xored with the next two octets of - data that were prefixed to the plaintext. This produces C[BS+1] - and C[BS+2], the next two octets of ciphertext. - - 7. (The resynchronization step) FR is loaded with C[3] through - C[BS+2]. - - 8. FR is encrypted to produce FRE. - - 9. FRE is xored with the first BS octets of the given plaintext, now - that we have finished encrypting the BS+2 octets of prefixed - data. This produces C[BS+3] through C[BS+(BS+2)], the next BS - octets of ciphertext. - - 10. FR is loaded with C[BS+3] to C[BS + (BS+2)] (which is C11-C18 for - an 8-octet block). - - 11. FR is encrypted to produce FRE. - - 12. FRE is xored with the next BS octets of plaintext, to produce - the next BS octets of ciphertext. These are loaded into FR, and - the process is repeated until the plaintext is used up. - -13.10. Private or Experimental Parameters - - S2K specifiers, Signature subpacket types, user attribute types, - image format types, and algorithms described in Section 9 all reserve - the range 100 to 110 for private and experimental use. Packet types - reserve the range 60 to 63 for private and experimental use. These - are intentionally managed with the PRIVATE USE method, as described - in [RFC2434]. - - - - -Callas, et al Standards Track [Page 79] - -RFC 4880 OpenPGP Message Format November 2007 - - - However, implementations need to be careful with these and promote - them to full IANA-managed parameters when they grow beyond the - original, limited system. - -13.11. Extension of the MDC System - - As described in the non-normative explanation in Section 5.13, the - MDC system is uniquely unparameterized in OpenPGP. This was an - intentional decision to avoid cross-grade attacks. If the MDC system - is extended to a stronger hash function, care must be taken to avoid - downgrade and cross-grade attacks. - - One simple way to do this is to create new packets for a new MDC. - For example, instead of the MDC system using packets 18 and 19, a new - MDC could use 20 and 21. This has obvious drawbacks (it uses two - packet numbers for each new hash function in a space that is limited - to a maximum of 60). - - Another simple way to extend the MDC system is to create new versions - of packet 18, and reflect this in packet 19. For example, suppose - that V2 of packet 18 implicitly used SHA-256. This would require - packet 19 to have a length of 32 octets. The change in the version - in packet 18 and the size of packet 19 prevent a downgrade attack. - - There are two drawbacks to this latter approach. The first is that - using the version number of a packet to carry algorithm information - is not tidy from a protocol-design standpoint. It is possible that - there might be several versions of the MDC system in common use, but - this untidiness would reflect untidiness in cryptographic consensus - about hash function security. The second is that different versions - of packet 19 would have to have unique sizes. If there were two - versions each with 256-bit hashes, they could not both have 32-octet - packet 19s without admitting the chance of a cross-grade attack. - - Yet another, complex approach to extend the MDC system would be a - hybrid of the two above -- create a new pair of MDC packets that are - fully parameterized, and yet protected from downgrade and cross- - grade. - - Any change to the MDC system MUST be done through the IETF CONSENSUS - method, as described in [RFC2434]. - -13.12. Meta-Considerations for Expansion - - If OpenPGP is extended in a way that is not backwards-compatible, - meaning that old implementations will not gracefully handle their - - - - - -Callas, et al Standards Track [Page 80] - -RFC 4880 OpenPGP Message Format November 2007 - - - absence of a new feature, the extension proposal can be declared in - the key holder's self-signature as part of the Features signature - subpacket. - - We cannot state definitively what extensions will not be upwards- - compatible, but typically new algorithms are upwards-compatible, - whereas new packets are not. - - If an extension proposal does not update the Features system, it - SHOULD include an explanation of why this is unnecessary. If the - proposal contains neither an extension to the Features system nor an - explanation of why such an extension is unnecessary, the proposal - SHOULD be rejected. - -14. Security Considerations - - * As with any technology involving cryptography, you should check the - current literature to determine if any algorithms used here have - been found to be vulnerable to attack. - - * This specification uses Public-Key Cryptography technologies. It - is assumed that the private key portion of a public-private key - pair is controlled and secured by the proper party or parties. - - * Certain operations in this specification involve the use of random - numbers. An appropriate entropy source should be used to generate - these numbers (see [RFC4086]). - - * The MD5 hash algorithm has been found to have weaknesses, with - collisions found in a number of cases. MD5 is deprecated for use - in OpenPGP. Implementations MUST NOT generate new signatures using - MD5 as a hash function. They MAY continue to consider old - signatures that used MD5 as valid. - - * SHA-224 and SHA-384 require the same work as SHA-256 and SHA-512, - respectively. In general, there are few reasons to use them - outside of DSS compatibility. You need a situation where one needs - more security than smaller hashes, but does not want to have the - full 256-bit or 512-bit data length. - - * Many security protocol designers think that it is a bad idea to use - a single key for both privacy (encryption) and integrity - (signatures). In fact, this was one of the motivating forces - behind the V4 key format with separate signature and encryption - keys. If you as an implementer promote dual-use keys, you should - at least be aware of this controversy. - - - - - -Callas, et al Standards Track [Page 81] - -RFC 4880 OpenPGP Message Format November 2007 - - - * The DSA algorithm will work with any hash, but is sensitive to the - quality of the hash algorithm. Verifiers should be aware that even - if the signer used a strong hash, an attacker could have modified - the signature to use a weak one. Only signatures using acceptably - strong hash algorithms should be accepted as valid. - - * As OpenPGP combines many different asymmetric, symmetric, and hash - algorithms, each with different measures of strength, care should - be taken that the weakest element of an OpenPGP message is still - sufficiently strong for the purpose at hand. While consensus about - the strength of a given algorithm may evolve, NIST Special - Publication 800-57 [SP800-57] recommends the following list of - equivalent strengths: - - Asymmetric | Hash | Symmetric - key size | size | key size - ------------+--------+----------- - 1024 160 80 - 2048 224 112 - 3072 256 128 - 7680 384 192 - 15360 512 256 - - * There is a somewhat-related potential security problem in - signatures. If an attacker can find a message that hashes to the - same hash with a different algorithm, a bogus signature structure - can be constructed that evaluates correctly. - - For example, suppose Alice DSA signs message M using hash algorithm - H. Suppose that Mallet finds a message M' that has the same hash - value as M with H'. Mallet can then construct a signature block - that verifies as Alice's signature of M' with H'. However, this - would also constitute a weakness in either H or H' or both. Should - this ever occur, a revision will have to be made to this document - to revise the allowed hash algorithms. - - * If you are building an authentication system, the recipient may - specify a preferred signing algorithm. However, the signer would - be foolish to use a weak algorithm simply because the recipient - requests it. - - * Some of the encryption algorithms mentioned in this document have - been analyzed less than others. For example, although CAST5 is - presently considered strong, it has been analyzed less than - TripleDES. Other algorithms may have other controversies - surrounding them. - - - - - -Callas, et al Standards Track [Page 82] - -RFC 4880 OpenPGP Message Format November 2007 - - - * In late summer 2002, Jallad, Katz, and Schneier published an - interesting attack on the OpenPGP protocol and some of its - implementations [JKS02]. In this attack, the attacker modifies a - message and sends it to a user who then returns the erroneously - decrypted message to the attacker. The attacker is thus using the - user as a random oracle, and can often decrypt the message. - - Compressing data can ameliorate this attack. The incorrectly - decrypted data nearly always decompresses in ways that defeat the - attack. However, this is not a rigorous fix, and leaves open some - small vulnerabilities. For example, if an implementation does not - compress a message before encryption (perhaps because it knows it - was already compressed), then that message is vulnerable. Because - of this happenstance -- that modification attacks can be thwarted - by decompression errors -- an implementation SHOULD treat a - decompression error as a security problem, not merely a data - problem. - - This attack can be defeated by the use of Modification Detection, - provided that the implementation does not let the user naively - return the data to the attacker. An implementation MUST treat an - MDC failure as a security problem, not merely a data problem. - - In either case, the implementation MAY allow the user access to the - erroneous data, but MUST warn the user as to potential security - problems should that data be returned to the sender. - - While this attack is somewhat obscure, requiring a special set of - circumstances to create it, it is nonetheless quite serious as it - permits someone to trick a user to decrypt a message. - Consequently, it is important that: - - 1. Implementers treat MDC errors and decompression failures as - security problems. - - 2. Implementers implement Modification Detection with all due - speed and encourage its spread. - - 3. Users migrate to implementations that support Modification - Detection with all due speed. - - * PKCS#1 has been found to be vulnerable to attacks in which a system - that reports errors in padding differently from errors in - decryption becomes a random oracle that can leak the private key in - mere millions of queries. Implementations must be aware of this - attack and prevent it from happening. The simplest solution is to - report a single error code for all variants of decryption errors so - as not to leak information to an attacker. - - - -Callas, et al Standards Track [Page 83] - -RFC 4880 OpenPGP Message Format November 2007 - - - * Some technologies mentioned here may be subject to government - control in some countries. - - * In winter 2005, Serge Mister and Robert Zuccherato from Entrust - released a paper describing a way that the "quick check" in OpenPGP - CFB mode can be used with a random oracle to decrypt two octets of - every cipher block [MZ05]. They recommend as prevention not using - the quick check at all. - - Many implementers have taken this advice to heart for any data that - is symmetrically encrypted and for which the session key is - public-key encrypted. In this case, the quick check is not needed - as the public-key encryption of the session key should guarantee - that it is the right session key. In other cases, the - implementation should use the quick check with care. - - On the one hand, there is a danger to using it if there is a random - oracle that can leak information to an attacker. In plainer - language, there is a danger to using the quick check if timing - information about the check can be exposed to an attacker, - particularly via an automated service that allows rapidly repeated - queries. - - On the other hand, it is inconvenient to the user to be informed - that they typed in the wrong passphrase only after a petabyte of - data is decrypted. There are many cases in cryptographic - engineering where the implementer must use care and wisdom, and - this is one. - -15. Implementation Nits - - This section is a collection of comments to help an implementer, - particularly with an eye to backward compatibility. Previous - implementations of PGP are not OpenPGP compliant. Often the - differences are small, but small differences are frequently more - vexing than large differences. Thus, this is a non-comprehensive - list of potential problems and gotchas for a developer who is trying - to be backward-compatible. - - * The IDEA algorithm is patented, and yet it is required for PGP - 2.x interoperability. It is also the de-facto preferred - algorithm for a V3 key with a V3 self-signature (or no self- - signature). - - * When exporting a private key, PGP 2.x generates the header "BEGIN - PGP SECRET KEY BLOCK" instead of "BEGIN PGP PRIVATE KEY BLOCK". - All previous versions ignore the implied data type, and look - directly at the packet data type. - - - -Callas, et al Standards Track [Page 84] - -RFC 4880 OpenPGP Message Format November 2007 - - - * PGP 2.0 through 2.5 generated V2 Public-Key packets. These are - identical to the deprecated V3 keys except for the version - number. An implementation MUST NOT generate them and may accept - or reject them as it sees fit. Some older PGP versions generated - V2 PKESK packets (Tag 1) as well. An implementation may accept - or reject V2 PKESK packets as it sees fit, and MUST NOT generate - them. - - * PGP 2.6.x will not accept key-material packets with versions - greater than 3. - - * There are many ways possible for two keys to have the same key - material, but different fingerprints (and thus Key IDs). Perhaps - the most interesting is an RSA key that has been "upgraded" to V4 - format, but since a V4 fingerprint is constructed by hashing the - key creation time along with other things, two V4 keys created at - different times, yet with the same key material will have - different fingerprints. - - * If an implementation is using zlib to interoperate with PGP 2.x, - then the "windowBits" parameter should be set to -13. - - * The 0x19 back signatures were not required for signing subkeys - until relatively recently. Consequently, there may be keys in - the wild that do not have these back signatures. Implementing - software may handle these keys as it sees fit. - - * OpenPGP does not put limits on the size of public keys. However, - larger keys are not necessarily better keys. Larger keys take - more computation time to use, and this can quickly become - impractical. Different OpenPGP implementations may also use - different upper bounds for public key sizes, and so care should - be taken when choosing sizes to maintain interoperability. As of - 2007 most implementations have an upper bound of 4096 bits. - - * ASCII armor is an optional feature of OpenPGP. The OpenPGP - working group strives for a minimal set of mandatory-to-implement - features, and since there could be useful implementations that - only use binary object formats, this is not a "MUST" feature for - an implementation. For example, an implementation that is using - OpenPGP as a mechanism for file signatures may find ASCII armor - unnecessary. OpenPGP permits an implementation to declare what - features it does and does not support, but ASCII armor is not one - of these. Since most implementations allow binary and armored - objects to be used indiscriminately, an implementation that does - not implement ASCII armor may find itself with compatibility - issues with general-purpose implementations. Moreover, - implementations of OpenPGP-MIME [RFC3156] already have a - - - -Callas, et al Standards Track [Page 85] - -RFC 4880 OpenPGP Message Format November 2007 - - - requirement for ASCII armor so those implementations will - necessarily have support. - -16. References - -16.1. Normative References - - [AES] NIST, FIPS PUB 197, "Advanced Encryption Standard - (AES)," November 2001. - http://csrc.nist.gov/publications/fips/fips197/fips- - 197.{ps,pdf} - - [BLOWFISH] Schneier, B. "Description of a New Variable-Length - Key, 64-Bit Block Cipher (Blowfish)" Fast Software - Encryption, Cambridge Security Workshop Proceedings - (December 1993), Springer-Verlag, 1994, pp191-204 - - - [BZ2] J. Seward, jseward@acm.org, "The Bzip2 and libbzip2 - home page" - - [ELGAMAL] T. Elgamal, "A Public-Key Cryptosystem and a - Signature Scheme Based on Discrete Logarithms," IEEE - Transactions on Information Theory, v. IT-31, n. 4, - 1985, pp. 469-472. - - [FIPS180] Secure Hash Signature Standard (SHS) (FIPS PUB 180- - 2). - - - [FIPS186] Digital Signature Standard (DSS) (FIPS PUB 186-2). - FIPS 186-3 describes keys - greater than 1024 bits. The latest draft is at: - - - [HAC] Alfred Menezes, Paul van Oorschot, and Scott - Vanstone, "Handbook of Applied Cryptography," CRC - Press, 1996. - - - [IDEA] Lai, X, "On the design and security of block - ciphers", ETH Series in Information Processing, J.L. - Massey (editor), Vol. 1, Hartung-Gorre Verlag - Knostanz, Technische Hochschule (Zurich), 1992 - - - - -Callas, et al Standards Track [Page 86] - -RFC 4880 OpenPGP Message Format November 2007 - - - [ISO10646] ISO/IEC 10646-1:1993. International Standard -- - Information technology -- Universal Multiple-Octet - Coded Character Set (UCS) -- Part 1: Architecture - and Basic Multilingual Plane. - - [JFIF] JPEG File Interchange Format (Version 1.02). Eric - Hamilton, C-Cube Microsystems, Milpitas, CA, - September 1, 1992. - - [RFC1950] Deutsch, P. and J-L. Gailly, "ZLIB Compressed Data - Format Specification version 3.3", RFC 1950, May - 1996. - - [RFC1951] Deutsch, P., "DEFLATE Compressed Data Format - Specification version 1.3", RFC 1951, May 1996. - - [RFC2045] Freed, N. and N. Borenstein, "Multipurpose Internet - Mail Extensions (MIME) Part One: Format of Internet - Message Bodies", RFC 2045, November 1996 - - [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate - Requirement Levels", BCP 14, RFC 2119, March 1997. - - [RFC2144] Adams, C., "The CAST-128 Encryption Algorithm", RFC - 2144, May 1997. - - [RFC2434] Narten, T. and H. Alvestrand, "Guidelines for - Writing an IANA Considerations Section in RFCs", BCP - 26, RFC 2434, October 1998. - - [RFC2822] Resnick, P., "Internet Message Format", RFC 2822, - April 2001. - - [RFC3156] Elkins, M., Del Torto, D., Levien, R., and T. - Roessler, "MIME Security with OpenPGP", RFC 3156, - August 2001. - - [RFC3447] Jonsson, J. and B. Kaliski, "Public-Key Cryptography - Standards (PKCS) #1: RSA Cryptography Specifications - Version 2.1", RFC 3447, February 2003. - - [RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO - 10646", STD 63, RFC 3629, November 2003. - - [RFC4086] Eastlake, D., 3rd, Schiller, J., and S. Crocker, - "Randomness Requirements for Security", BCP 106, RFC - 4086, June 2005. - - - - -Callas, et al Standards Track [Page 87] - -RFC 4880 OpenPGP Message Format November 2007 - - - [SCHNEIER] Schneier, B., "Applied Cryptography Second Edition: - protocols, algorithms, and source code in C", 1996. - - [TWOFISH] B. Schneier, J. Kelsey, D. Whiting, D. Wagner, C. - Hall, and N. Ferguson, "The Twofish Encryption - Algorithm", John Wiley & Sons, 1999. - -16.2. Informative References - - [BLEICHENBACHER] Bleichenbacher, Daniel, "Generating Elgamal - signatures without knowing the secret key," - Eurocrypt 96. Note that the version in the - proceedings has an error. A revised version is - available at the time of writing from - - - [JKS02] Kahil Jallad, Jonathan Katz, Bruce Schneier - "Implementation of Chosen-Ciphertext Attacks against - PGP and GnuPG" http://www.counterpane.com/pgp- - attack.html - - [MAURER] Ueli Maurer, "Modelling a Public-Key - Infrastructure", Proc. 1996 European Symposium on - Research in Computer Security (ESORICS' 96), Lecture - Notes in Computer Science, Springer-Verlag, vol. - 1146, pp. 325-350, Sep 1996. - - [MZ05] Serge Mister, Robert Zuccherato, "An Attack on CFB - Mode Encryption As Used By OpenPGP," IACR ePrint - Archive: Report 2005/033, 8 Feb 2005 - http://eprint.iacr.org/2005/033 - - [REGEX] Jeffrey Friedl, "Mastering Regular Expressions," - O'Reilly, ISBN 0-596-00289-0. - - [RFC1423] Balenson, D., "Privacy Enhancement for Internet - Electronic Mail: Part III: Algorithms, Modes, and - Identifiers", RFC 1423, February 1993. - - [RFC1991] Atkins, D., Stallings, W., and P. Zimmermann, "PGP - Message Exchange Formats", RFC 1991, August 1996. - - [RFC2440] Callas, J., Donnerhacke, L., Finney, H., and R. - Thayer, "OpenPGP Message Format", RFC 2440, November - 1998. - - - - - -Callas, et al Standards Track [Page 88] - -RFC 4880 OpenPGP Message Format November 2007 - - - [SP800-57] NIST Special Publication 800-57, Recommendation on - Key Management - - - -Acknowledgements - - This memo also draws on much previous work from a number of other - authors, including: Derek Atkins, Charles Breed, Dave Del Torto, Marc - Dyksterhouse, Gail Haspert, Gene Hoffman, Paul Hoffman, Ben Laurie, - Raph Levien, Colin Plumb, Will Price, David Shaw, William Stallings, - Mark Weaver, and Philip R. Zimmermann. - -Authors' Addresses - - The working group can be contacted via the current chair: - - Derek Atkins - IHTFP Consulting, Inc. - 4 Farragut Ave - Somerville, MA 02144 USA - - EMail: derek@ihtfp.com - Tel: +1 617 623 3745 - - The principal authors of this document are as follows: - - Jon Callas - EMail: jon@callas.org - - Lutz Donnerhacke - IKS GmbH - Wildenbruchstr. 15 - 07745 Jena, Germany - EMail: lutz@iks-jena.de - - Hal Finney - EMail: hal@finney.org - - David Shaw - EMail: dshaw@jabberwocky.com - - Rodney Thayer - EMail: rodney@canola-jones.com - - - - - -Callas, et al Standards Track [Page 89] - -RFC 4880 OpenPGP Message Format November 2007 - - -Full Copyright Statement - - Copyright (C) The IETF Trust (2007). - - This document is subject to the rights, licenses and restrictions - contained in BCP 78, and except as set forth therein, the authors - retain all their rights. - - This document and the information contained herein are provided on an - "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS - OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND - THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS - OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF - THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED - WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. - -Intellectual Property - - The IETF takes no position regarding the validity or scope of any - Intellectual Property Rights or other rights that might be claimed to - pertain to the implementation or use of the technology described in - this document or the extent to which any license under such rights - might or might not be available; nor does it represent that it has - made any independent effort to identify any such rights. Information - on the procedures with respect to rights in RFC documents can be - found in BCP 78 and BCP 79. - - Copies of IPR disclosures made to the IETF Secretariat and any - assurances of licenses to be made available, or the result of an - attempt made to obtain a general license or permission for the use of - such proprietary rights by implementers or users of this - specification can be obtained from the IETF on-line IPR repository at - http://www.ietf.org/ipr. - - The IETF invites any interested party to bring to its attention any - copyrights, patents or patent applications, or other proprietary - rights that may cover technology that may be required to implement - this standard. Please address the information to the IETF at - ietf-ipr@ietf.org. - - - - - - - - - - - - -Callas, et al Standards Track [Page 90] - diff --git a/GPGMail/Frameworks/Sparkle.framework/Sparkle b/GPGMail/Frameworks/Sparkle.framework/Sparkle deleted file mode 120000 index b2c52731..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Sparkle +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Sparkle \ No newline at end of file diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcast.h b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcast.h deleted file mode 100644 index 171148a4..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcast.h +++ /dev/null @@ -1,33 +0,0 @@ -// -// SUAppcast.h -// Sparkle -// -// Created by Andy Matuschak on 3/12/06. -// Copyright 2006 Andy Matuschak. All rights reserved. -// - -#ifndef SUAPPCAST_H -#define SUAPPCAST_H - -@class SUAppcastItem; -@interface SUAppcast : NSObject { - NSArray *items; - NSString *userAgentString; - id delegate; - NSMutableData *incrementalData; -} - -- (void)fetchAppcastFromURL:(NSURL *)url; -- (void)setDelegate:delegate; -- (void)setUserAgentString:(NSString *)userAgentString; - -- (NSArray *)items; - -@end - -@interface NSObject (SUAppcastDelegate) -- (void)appcastDidFinishLoading:(SUAppcast *)appcast; -- (void)appcast:(SUAppcast *)appcast failedToLoadWithError:(NSError *)error; -@end - -#endif diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h deleted file mode 100644 index 7f1ca65c..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h +++ /dev/null @@ -1,47 +0,0 @@ -// -// SUAppcastItem.h -// Sparkle -// -// Created by Andy Matuschak on 3/12/06. -// Copyright 2006 Andy Matuschak. All rights reserved. -// - -#ifndef SUAPPCASTITEM_H -#define SUAPPCASTITEM_H - -@interface SUAppcastItem : NSObject { - NSString *title; - NSDate *date; - NSString *itemDescription; - - NSURL *releaseNotesURL; - - NSString *DSASignature; - NSString *minimumSystemVersion; - - NSURL *fileURL; - NSString *versionString; - NSString *displayVersionString; - - NSDictionary *propertiesDictionary; -} - -// Initializes with data from a dictionary provided by the RSS class. -- initWithDictionary:(NSDictionary *)dict; - -- (NSString *)title; -- (NSString *)versionString; -- (NSString *)displayVersionString; -- (NSDate *)date; -- (NSString *)itemDescription; -- (NSURL *)releaseNotesURL; -- (NSURL *)fileURL; -- (NSString *)DSASignature; -- (NSString *)minimumSystemVersion; - -// Returns the dictionary provided in initWithDictionary; this might be useful later for extensions. -- (NSDictionary *)propertiesDictionary; - -@end - -#endif diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/SUUpdater.h b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/SUUpdater.h deleted file mode 100644 index e78c4d35..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/SUUpdater.h +++ /dev/null @@ -1,118 +0,0 @@ -// -// SUUpdater.h -// Sparkle -// -// Created by Andy Matuschak on 1/4/06. -// Copyright 2006 Andy Matuschak. All rights reserved. -// - -#ifndef SUUPDATER_H -#define SUUPDATER_H - -#import - -@class SUUpdateDriver, SUAppcastItem, SUHost, SUAppcast; -@interface SUUpdater : NSObject { - NSTimer *checkTimer; - SUUpdateDriver *driver; - - SUHost *host; - IBOutlet id delegate; -} - -+ (SUUpdater *)sharedUpdater; -+ (SUUpdater *)updaterForBundle:(NSBundle *)bundle; -- (NSBundle *)hostBundle; - -- (void)setDelegate:(id)delegate; -- delegate; - -- (void)setAutomaticallyChecksForUpdates:(BOOL)automaticallyChecks; -- (BOOL)automaticallyChecksForUpdates; - -- (void)setUpdateCheckInterval:(NSTimeInterval)interval; -- (NSTimeInterval)updateCheckInterval; - -- (void)setFeedURL:(NSURL *)feedURL; -- (NSURL *)feedURL; - -- (void)setSendsSystemProfile:(BOOL)sendsSystemProfile; -- (BOOL)sendsSystemProfile; - -- (void)setAutomaticallyDownloadsUpdates:(BOOL)automaticallyDownloadsUpdates; -- (BOOL)automaticallyDownloadsUpdates; - -// This IBAction is meant for a main menu item. Hook up any menu item to this action, -// and Sparkle will check for updates and report back its findings verbosely. -- (IBAction)checkForUpdates:sender; - -// This kicks off an update meant to be programmatically initiated. That is, it will display no UI unless it actually finds an update, -// in which case it proceeds as usual. If the fully automated updating is turned on, however, this will invoke that behavior, and if an -// update is found, it will be downloaded and prepped for installation. -- (void)checkForUpdatesInBackground; - -// Date of last update check. Returns null if no check has been performed. -- (NSDate*)lastUpdateCheckDate; - -// This begins a "probing" check for updates which will not actually offer to update to that version. The delegate methods, though, -// (up to updater:didFindValidUpdate: and updaterDidNotFindUpdate:), are called, so you can use that information in your UI. -- (void)checkForUpdateInformation; - -// Call this to appropriately schedule or cancel the update checking timer according to the preferences for time interval and automatic checks. This call does not change the date of the next check, but only the internal NSTimer. -- (void)resetUpdateCycle; - -- (BOOL)updateInProgress; -@end - -@interface NSObject (SUUpdaterDelegateInformalProtocol) -// This method allows you to add extra parameters to the appcast URL, potentially based on whether or not Sparkle will also be sending along the system profile. This method should return an array of dictionaries with keys: "key", "value", "displayKey", "displayValue", the latter two being specifically for display to the user. -- (NSArray *)feedParametersForUpdater:(SUUpdater *)updater sendingSystemProfile:(BOOL)sendingProfile; - -// Use this to override the default behavior for Sparkle prompting the user about automatic update checks. -- (BOOL)updaterShouldPromptForPermissionToCheckForUpdates:(SUUpdater *)bundle; - -// Implement this if you want to do some special handling with the appcast once it finishes loading. -- (void)updater:(SUUpdater *)updater didFinishLoadingAppcast:(SUAppcast *)appcast; - -// If you're using special logic or extensions in your appcast, implement this to use your own logic for finding -// a valid update, if any, in the given appcast. -- (SUAppcastItem *)bestValidUpdateInAppcast:(SUAppcast *)appcast forUpdater:(SUUpdater *)bundle; - -// Sent when a valid update is found by the update driver. -- (void)updater:(SUUpdater *)updater didFindValidUpdate:(SUAppcastItem *)update; - -// Sent when a valid update is not found. -- (void)updaterDidNotFindUpdate:(SUUpdater *)update; - -// Sent immediately before installing the specified update. -- (void)updater:(SUUpdater *)updater willInstallUpdate:(SUAppcastItem *)update; - -// Return YES to delay the relaunch until you do some processing; invoke the given NSInvocation to continue. -- (BOOL)updater:(SUUpdater *)updater shouldPostponeRelaunchForUpdate:(SUAppcastItem *)update untilInvoking:(NSInvocation *)invocation; - -// Called immediately before relaunching. -- (void)updaterWillRelaunchApplication:(SUUpdater *)updater; - -// This method allows you to provide a custom version comparator. -// If you don't implement this method or return nil, the standard version comparator will be used. -- (id )versionComparatorForUpdater:(SUUpdater *)updater; - -// Returns the path which is used to relaunch the client after the update is installed. By default, the path of the host bundle. -- (NSString *)pathToRelaunchForUpdater:(SUUpdater *)updater; - -@end - -// Define some minimum intervals to avoid DOS-like checking attacks. These are in seconds. -#ifdef DEBUG -#define SU_MIN_CHECK_INTERVAL 60 -#else -#define SU_MIN_CHECK_INTERVAL 60*60 -#endif - -#ifdef DEBUG -#define SU_DEFAULT_CHECK_INTERVAL 60 -#else -#define SU_DEFAULT_CHECK_INTERVAL 60*60*24 -#endif - -#endif diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h deleted file mode 100644 index 3d11ae87..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h +++ /dev/null @@ -1,27 +0,0 @@ -// -// SUVersionComparisonProtocol.h -// Sparkle -// -// Created by Andy Matuschak on 12/21/07. -// Copyright 2007 Andy Matuschak. All rights reserved. -// - -#ifndef SUVERSIONCOMPARISONPROTOCOL_H -#define SUVERSIONCOMPARISONPROTOCOL_H - -/*! - @protocol - @abstract Implement this protocol to provide version comparison facilities for Sparkle. -*/ -@protocol SUVersionComparison - -/*! - @method - @abstract An abstract method to compare two version strings. - @discussion Should return NSOrderedAscending if b > a, NSOrderedDescending if b < a, and NSOrderedSame if they are equivalent. -*/ -- (NSComparisonResult)compareVersion:(NSString *)versionA toVersion:(NSString *)versionB; - -@end - -#endif diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/Sparkle.h b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/Sparkle.h deleted file mode 100644 index 08dd5777..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Headers/Sparkle.h +++ /dev/null @@ -1,21 +0,0 @@ -// -// Sparkle.h -// Sparkle -// -// Created by Andy Matuschak on 3/16/06. (Modified by CDHW on 23/12/07) -// Copyright 2006 Andy Matuschak. All rights reserved. -// - -#ifndef SPARKLE_H -#define SPARKLE_H - -// This list should include the shared headers. It doesn't matter if some of them aren't shared (unless -// there are name-space collisions) so we can list all of them to start with: - -#import - -#import -#import -#import - -#endif diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/Info.plist b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/Info.plist deleted file mode 100644 index c7f277d0..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - Sparkle - CFBundleIdentifier - org.andymatuschak.Sparkle - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - Sparkle - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.5 Beta 6 - CFBundleSignature - ???? - CFBundleVersion - 313 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/License.txt b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/License.txt deleted file mode 100644 index 20466c41..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/License.txt +++ /dev/null @@ -1,7 +0,0 @@ -Copyright (c) 2006 Andy Matuschak - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist deleted file mode 100644 index 92ef9471..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist +++ /dev/null @@ -1,174 +0,0 @@ - - - - - ADP2,1 - Developer Transition Kit - MacBook1,1 - MacBook (Core Duo) - MacBook2,1 - MacBook (Core 2 Duo) - MacBook4,1 - MacBook (Core 2 Duo Feb 2008) - MacBookAir1,1 - MacBook Air (January 2008) - MacBookPro1,1 - MacBook Pro Core Duo (15-inch) - MacBookPro1,2 - MacBook Pro Core Duo (17-inch) - MacBookPro2,1 - MacBook Pro Core 2 Duo (17-inch) - MacBookPro2,2 - MacBook Pro Core 2 Duo (15-inch) - MacBookPro3,1 - MacBook Pro Core 2 Duo (15-inch LED, Core 2 Duo) - MacBookPro3,2 - MacBook Pro Core 2 Duo (17-inch HD, Core 2 Duo) - MacBookPro4,1 - MacBook Pro (Core 2 Duo Feb 2008) - MacPro1,1 - Mac Pro (four-core) - MacPro2,1 - Mac Pro (eight-core) - MacPro3,1 - Mac Pro (January 2008 4- or 8- core "Harpertown") - Macmini1,1 - Mac Mini (Core Solo/Duo) - PowerBook1,1 - PowerBook G3 - PowerBook2,1 - iBook G3 - PowerBook2,2 - iBook G3 (FireWire) - PowerBook2,3 - iBook G3 - PowerBook2,4 - iBook G3 - PowerBook3,1 - PowerBook G3 (FireWire) - PowerBook3,2 - PowerBook G4 - PowerBook3,3 - PowerBook G4 (Gigabit Ethernet) - PowerBook3,4 - PowerBook G4 (DVI) - PowerBook3,5 - PowerBook G4 (1GHz / 867MHz) - PowerBook4,1 - iBook G3 (Dual USB, Late 2001) - PowerBook4,2 - iBook G3 (16MB VRAM) - PowerBook4,3 - iBook G3 Opaque 16MB VRAM, 32MB VRAM, Early 2003) - PowerBook5,1 - PowerBook G4 (17 inch) - PowerBook5,2 - PowerBook G4 (15 inch FW 800) - PowerBook5,3 - PowerBook G4 (17-inch 1.33GHz) - PowerBook5,4 - PowerBook G4 (15 inch 1.5/1.33GHz) - PowerBook5,5 - PowerBook G4 (17-inch 1.5GHz) - PowerBook5,6 - PowerBook G4 (15 inch 1.67GHz/1.5GHz) - PowerBook5,7 - PowerBook G4 (17-inch 1.67GHz) - PowerBook5,8 - PowerBook G4 (Double layer SD, 15 inch) - PowerBook5,9 - PowerBook G4 (Double layer SD, 17 inch) - PowerBook6,1 - PowerBook G4 (12 inch) - PowerBook6,2 - PowerBook G4 (12 inch, DVI) - PowerBook6,3 - iBook G4 - PowerBook6,4 - PowerBook G4 (12 inch 1.33GHz) - PowerBook6,5 - iBook G4 (Early-Late 2004) - PowerBook6,7 - iBook G4 (Mid 2005) - PowerBook6,8 - PowerBook G4 (12 inch 1.5GHz) - PowerMac1,1 - Power Macintosh G3 (Blue & White) - PowerMac1,2 - Power Macintosh G4 (PCI Graphics) - PowerMac10,1 - Mac Mini G4 - PowerMac10,2 - Mac Mini (Late 2005) - PowerMac11,2 - Power Macintosh G5 (Late 2005) - PowerMac12,1 - iMac G5 (iSight) - PowerMac2,1 - iMac G3 (Slot-loading CD-ROM) - PowerMac2,2 - iMac G3 (Summer 2000) - PowerMac3,1 - Power Macintosh G4 (AGP Graphics) - PowerMac3,2 - Power Macintosh G4 (AGP Graphics) - PowerMac3,3 - Power Macintosh G4 (Gigabit Ethernet) - PowerMac3,4 - Power Macintosh G4 (Digital Audio) - PowerMac3,5 - Power Macintosh G4 (Quick Silver) - PowerMac3,6 - Power Macintosh G4 (Mirrored Drive Door) - PowerMac4,1 - iMac G3 (Early/Summer 2001) - PowerMac4,2 - iMac G4 (Flat Panel) - PowerMac4,4 - eMac - PowerMac4,5 - iMac G4 (17-inch Flat Panel) - PowerMac5,1 - Power Macintosh G4 Cube - PowerMac6,1 - iMac G4 (USB 2.0) - PowerMac6,3 - iMac G4 (20-inch Flat Panel) - PowerMac6,4 - eMac (USB 2.0, 2005) - PowerMac7,2 - Power Macintosh G5 - PowerMac7,3 - Power Macintosh G5 - PowerMac8,1 - iMac G5 - PowerMac8,2 - iMac G5 (Ambient Light Sensor) - PowerMac9,1 - Power Macintosh G5 (Late 2005) - RackMac1,1 - Xserve G4 - RackMac1,2 - Xserve G4 (slot-loading, cluster node) - RackMac3,1 - Xserve G5 - Xserve1,1 - Xserve (Intel Xeon) - Xserve2,1 - Xserve (January 2008 quad-core) - iMac1,1 - iMac G3 (Rev A-D) - iMac4,1 - iMac (Core Duo) - iMac4,2 - iMac for Education (17-inch, Core Duo) - iMac5,1 - iMac (Core 2 Duo, 17 or 20 inch, SuperDrive) - iMac5,2 - iMac (Core 2 Duo, 17 inch, Combo Drive) - iMac6,1 - iMac (Core 2 Duo, 24 inch, SuperDrive) - iMac8,1 - iMac (April 2008) - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/SUStatus.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/SUStatus.nib/classes.nib deleted file mode 100644 index 22f13f8b..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/SUStatus.nib/classes.nib +++ /dev/null @@ -1,56 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - CLASS - NSApplication - LANGUAGE - ObjC - SUPERCLASS - NSResponder - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - SUStatusController - LANGUAGE - ObjC - OUTLETS - - actionButton - NSButton - progressBar - NSProgressIndicator - - SUPERCLASS - SUWindowController - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/SUStatus.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/SUStatus.nib/info.nib deleted file mode 100644 index a9ac8673..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/SUStatus.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 670 - IBLastKnownRelativeProjectPath - Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 10A96 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/SUStatus.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/SUStatus.nib/keyedobjects.nib deleted file mode 100644 index 4f1d5981..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/SUStatus.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib/classes.nib deleted file mode 100644 index 4b1ab30e..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,50 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - doNotInstall - id - installLater - id - installNow - id - - CLASS - SUAutomaticUpdateAlert - LANGUAGE - ObjC - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib/info.nib deleted file mode 100644 index 2e04cfa0..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 667 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9D34 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index 6b926302..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib/classes.nib deleted file mode 100644 index 994d4c36..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,67 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - CLASS - NSApplication - LANGUAGE - ObjC - SUPERCLASS - NSResponder - - - ACTIONS - - installUpdate - id - remindMeLater - id - skipThisVersion - id - - CLASS - SUUpdateAlert - LANGUAGE - ObjC - OUTLETS - - delegate - id - description - NSTextField - releaseNotesView - WebView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib/info.nib deleted file mode 100644 index 2e04cfa0..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 667 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9D34 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index b4353d2f..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib/classes.nib deleted file mode 100644 index 5220a221..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib/classes.nib +++ /dev/null @@ -1,59 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - finishPrompt - id - toggleMoreInfo - id - - CLASS - SUUpdatePermissionPrompt - LANGUAGE - ObjC - OUTLETS - - delegate - id - descriptionTextField - NSTextField - moreInfoButton - NSButton - moreInfoView - NSView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib/info.nib deleted file mode 100644 index 2e04cfa0..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 667 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9D34 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib deleted file mode 100644 index b403a3e4..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings deleted file mode 100644 index b31f928f..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/classes.nib deleted file mode 100644 index 4b1ab30e..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,50 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - doNotInstall - id - installLater - id - installNow - id - - CLASS - SUAutomaticUpdateAlert - LANGUAGE - ObjC - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/info.nib deleted file mode 100644 index ab36d310..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 658 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9C7010 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index 7630390c..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/classes.nib deleted file mode 100644 index 994d4c36..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,67 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - CLASS - NSApplication - LANGUAGE - ObjC - SUPERCLASS - NSResponder - - - ACTIONS - - installUpdate - id - remindMeLater - id - skipThisVersion - id - - CLASS - SUUpdateAlert - LANGUAGE - ObjC - OUTLETS - - delegate - id - description - NSTextField - releaseNotesView - WebView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/info.nib deleted file mode 100644 index 2fb8a837..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 670 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 18 - - IBSystem Version - 10A96 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index e7e7497d..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib/classes.nib deleted file mode 100644 index 5220a221..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib/classes.nib +++ /dev/null @@ -1,59 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - finishPrompt - id - toggleMoreInfo - id - - CLASS - SUUpdatePermissionPrompt - LANGUAGE - ObjC - OUTLETS - - delegate - id - descriptionTextField - NSTextField - moreInfoButton - NSButton - moreInfoView - NSView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib/info.nib deleted file mode 100644 index b1cd28ed..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib/info.nib +++ /dev/null @@ -1,21 +0,0 @@ - - - - - IBFramework Version - 670 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - 41 - - IBSystem Version - 10A96 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib deleted file mode 100644 index e8dc5b88..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings deleted file mode 100644 index 16e0787b..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib/classes.nib deleted file mode 100644 index 4b1ab30e..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,50 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - doNotInstall - id - installLater - id - installNow - id - - CLASS - SUAutomaticUpdateAlert - LANGUAGE - ObjC - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib/info.nib deleted file mode 100644 index 2e04cfa0..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 667 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9D34 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index 6b2f938f..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib/classes.nib deleted file mode 100644 index 994d4c36..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,67 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - CLASS - NSApplication - LANGUAGE - ObjC - SUPERCLASS - NSResponder - - - ACTIONS - - installUpdate - id - remindMeLater - id - skipThisVersion - id - - CLASS - SUUpdateAlert - LANGUAGE - ObjC - OUTLETS - - delegate - id - description - NSTextField - releaseNotesView - WebView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib/info.nib deleted file mode 100644 index 2e04cfa0..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 667 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9D34 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index c9b1e7d8..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib/classes.nib deleted file mode 100644 index 5220a221..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib/classes.nib +++ /dev/null @@ -1,59 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - finishPrompt - id - toggleMoreInfo - id - - CLASS - SUUpdatePermissionPrompt - LANGUAGE - ObjC - OUTLETS - - delegate - id - descriptionTextField - NSTextField - moreInfoButton - NSButton - moreInfoView - NSView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib/info.nib deleted file mode 100644 index 3eb7f818..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 667 - IBLastKnownRelativeProjectPath - ../../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9D34 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib deleted file mode 100644 index 8c54c217..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings deleted file mode 100644 index f83ea23c..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib/classes.nib deleted file mode 100644 index 4b1ab30e..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,50 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - doNotInstall - id - installLater - id - installNow - id - - CLASS - SUAutomaticUpdateAlert - LANGUAGE - ObjC - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib/info.nib deleted file mode 100644 index 33a60200..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - IBSystem Version - 9D34 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index 4cd529a5..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib/classes.nib deleted file mode 100644 index 994d4c36..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,67 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - CLASS - NSApplication - LANGUAGE - ObjC - SUPERCLASS - NSResponder - - - ACTIONS - - installUpdate - id - remindMeLater - id - skipThisVersion - id - - CLASS - SUUpdateAlert - LANGUAGE - ObjC - OUTLETS - - delegate - id - description - NSTextField - releaseNotesView - WebView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib/info.nib deleted file mode 100644 index d2586ea2..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - IBSystem Version - 9E17 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index 65dfc95e..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib/classes.nib deleted file mode 100644 index 5220a221..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib/classes.nib +++ /dev/null @@ -1,59 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - finishPrompt - id - toggleMoreInfo - id - - CLASS - SUUpdatePermissionPrompt - LANGUAGE - ObjC - OUTLETS - - delegate - id - descriptionTextField - NSTextField - moreInfoButton - NSButton - moreInfoView - NSView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib/info.nib deleted file mode 100644 index d2586ea2..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - IBSystem Version - 9E17 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib deleted file mode 100644 index 4b7cc905..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings deleted file mode 100644 index ea175ae7..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/fr.lproj b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/fr.lproj deleted file mode 120000 index 88614fe2..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/fr.lproj +++ /dev/null @@ -1 +0,0 @@ -/Users/andym/Development/Build Products/Release/Sparkle.framework/Resources/fr.lproj \ No newline at end of file diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr_CA.lproj b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr_CA.lproj deleted file mode 120000 index 88614fe2..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/fr_CA.lproj +++ /dev/null @@ -1 +0,0 @@ -/Users/andym/Development/Build Products/Release/Sparkle.framework/Resources/fr.lproj \ No newline at end of file diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib/classes.nib deleted file mode 100644 index 4b1ab30e..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,50 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - doNotInstall - id - installLater - id - installNow - id - - CLASS - SUAutomaticUpdateAlert - LANGUAGE - ObjC - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib/info.nib deleted file mode 100644 index 2e04cfa0..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 667 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9D34 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index 15ba8f4c..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib/classes.nib deleted file mode 100644 index 994d4c36..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,67 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - CLASS - NSApplication - LANGUAGE - ObjC - SUPERCLASS - NSResponder - - - ACTIONS - - installUpdate - id - remindMeLater - id - skipThisVersion - id - - CLASS - SUUpdateAlert - LANGUAGE - ObjC - OUTLETS - - delegate - id - description - NSTextField - releaseNotesView - WebView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib/info.nib deleted file mode 100644 index 2e04cfa0..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 667 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9D34 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index 29840645..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib/classes.nib deleted file mode 100644 index 5220a221..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib/classes.nib +++ /dev/null @@ -1,59 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - finishPrompt - id - toggleMoreInfo - id - - CLASS - SUUpdatePermissionPrompt - LANGUAGE - ObjC - OUTLETS - - delegate - id - descriptionTextField - NSTextField - moreInfoButton - NSButton - moreInfoView - NSView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib/info.nib deleted file mode 100644 index c4934850..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 667 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 5 - - IBSystem Version - 9D34 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib deleted file mode 100644 index 55cc2c27..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings deleted file mode 100644 index 5c410d07..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib/classes.nib deleted file mode 100644 index 4b1ab30e..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,50 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - doNotInstall - id - installLater - id - installNow - id - - CLASS - SUAutomaticUpdateAlert - LANGUAGE - ObjC - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib/info.nib deleted file mode 100644 index 3f097908..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9D34 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index aa38f86b..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib/classes.nib deleted file mode 100644 index 994d4c36..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,67 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - CLASS - NSApplication - LANGUAGE - ObjC - SUPERCLASS - NSResponder - - - ACTIONS - - installUpdate - id - remindMeLater - id - skipThisVersion - id - - CLASS - SUUpdateAlert - LANGUAGE - ObjC - OUTLETS - - delegate - id - description - NSTextField - releaseNotesView - WebView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib/info.nib deleted file mode 100644 index d2586ea2..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - IBSystem Version - 9E17 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index c82d3581..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib/classes.nib deleted file mode 100644 index 5220a221..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib/classes.nib +++ /dev/null @@ -1,59 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - finishPrompt - id - toggleMoreInfo - id - - CLASS - SUUpdatePermissionPrompt - LANGUAGE - ObjC - OUTLETS - - delegate - id - descriptionTextField - NSTextField - moreInfoButton - NSButton - moreInfoView - NSView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib/info.nib deleted file mode 100644 index d2586ea2..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - IBSystem Version - 9E17 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib deleted file mode 100644 index ac298ce7..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings deleted file mode 100644 index 67cf535e..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/relaunch b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/relaunch deleted file mode 100755 index e7b96d61..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/relaunch and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib/classes.nib deleted file mode 100644 index 4b1ab30e..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,50 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - doNotInstall - id - installLater - id - installNow - id - - CLASS - SUAutomaticUpdateAlert - LANGUAGE - ObjC - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib/info.nib deleted file mode 100644 index 2b3d4257..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 670 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9E17 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index 1d4655c5..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib/classes.nib deleted file mode 100644 index 994d4c36..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,67 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - CLASS - NSApplication - LANGUAGE - ObjC - SUPERCLASS - NSResponder - - - ACTIONS - - installUpdate - id - remindMeLater - id - skipThisVersion - id - - CLASS - SUUpdateAlert - LANGUAGE - ObjC - OUTLETS - - delegate - id - description - NSTextField - releaseNotesView - WebView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib/info.nib deleted file mode 100644 index 2b3d4257..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 670 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9E17 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index 103b1cf8..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib/classes.nib deleted file mode 100644 index 0f776c89..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib/classes.nib +++ /dev/null @@ -1,59 +0,0 @@ - - - - - IBClasses - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - finishPrompt - id - toggleMoreInfo - id - - CLASS - SUUpdatePermissionPrompt - LANGUAGE - ObjC - OUTLETS - - delegate - id - descriptionTextField - NSTextField - moreInfoButton - NSButton - moreInfoView - NSView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib/info.nib deleted file mode 100644 index 5132e29f..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBFramework Version - 670 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - IBSystem Version - 9E17 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib deleted file mode 100644 index c09d9e70..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings deleted file mode 100644 index f3ff9d86..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib/classes.nib deleted file mode 100644 index 4b1ab30e..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,50 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - doNotInstall - id - installLater - id - installNow - id - - CLASS - SUAutomaticUpdateAlert - LANGUAGE - ObjC - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib/info.nib deleted file mode 100644 index c5a067e8..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 670 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 10A96 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index 53cb91a9..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib/classes.nib deleted file mode 100644 index 018710af..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib/classes.nib +++ /dev/null @@ -1,39 +0,0 @@ -{ - IBClasses = ( - { - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - CLASS = NSApplication; - LANGUAGE = ObjC; - SUPERCLASS = NSResponder; - }, - { - CLASS = NSObject; - LANGUAGE = ObjC; - }, - { - ACTIONS = { - installUpdate = id; - remindMeLater = id; - skipThisVersion = id; - }; - CLASS = SUUpdateAlert; - LANGUAGE = ObjC; - OUTLETS = { - delegate = id; - description = NSTextField; - releaseNotesView = WebView; - }; - SUPERCLASS = SUWindowController; - }, - { - CLASS = SUWindowController; - LANGUAGE = ObjC; - SUPERCLASS = NSWindowController; - } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib/info.nib deleted file mode 100644 index 6b787d4b..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBDocumentLocation - 69 14 356 240 0 0 1280 778 - IBFramework Version - 489.0 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBSystem Version - 9D34 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib/keyedobjects.nib deleted file mode 100644 index 7e6d490e..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib/classes.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib/classes.nib deleted file mode 100644 index 5220a221..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib/classes.nib +++ /dev/null @@ -1,59 +0,0 @@ - - - - - IBClasses - - - CLASS - SUWindowController - LANGUAGE - ObjC - SUPERCLASS - NSWindowController - - - ACTIONS - - finishPrompt - id - toggleMoreInfo - id - - CLASS - SUUpdatePermissionPrompt - LANGUAGE - ObjC - OUTLETS - - delegate - id - descriptionTextField - NSTextField - moreInfoButton - NSButton - moreInfoView - NSView - - SUPERCLASS - SUWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib/info.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib/info.nib deleted file mode 100644 index c5a067e8..00000000 --- a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 670 - IBLastKnownRelativeProjectPath - ../Sparkle.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 10A96 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib deleted file mode 100644 index 64babac1..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings deleted file mode 100644 index b676a4f5..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings and /dev/null differ diff --git a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Sparkle b/GPGMail/Frameworks/Sparkle.framework/Versions/A/Sparkle deleted file mode 100755 index 0db0a8f0..00000000 Binary files a/GPGMail/Frameworks/Sparkle.framework/Versions/A/Sparkle and /dev/null differ diff --git a/GPGMail/GPGMail.xcodeproj/project.pbxproj b/GPGMail/GPGMail.xcodeproj/project.pbxproj deleted file mode 100644 index ec930613..00000000 --- a/GPGMail/GPGMail.xcodeproj/project.pbxproj +++ /dev/null @@ -1,1294 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 42; - objects = { - -/* Begin PBXBuildFile section */ - 1B02F86810676C6700791927 /* GPGHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A7FAC0838E4170052F47C /* GPGHandler.m */; }; - 1B141AA410800EA8007BE344 /* GPGProgressIndicatorController.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A7FAE0838E4170052F47C /* GPGProgressIndicatorController.m */; }; - 1B1949E911CC52880092B810 /* MacGPGME.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B1949E111CC52350092B810 /* MacGPGME.framework */; }; - 1B194B5B11CC55A80092B810 /* GPGMail.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1B194B5911CC55A80092B810 /* GPGMail.strings */; }; - 1B194B6811CC56520092B810 /* GPG.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1B194B6611CC56520092B810 /* GPG.strings */; }; - 1B194B7511CC56980092B810 /* GPGPassphrase.nib in Resources */ = {isa = PBXBuildFile; fileRef = 1B194B7311CC56980092B810 /* GPGPassphrase.nib */; }; - 1B194B8211CC56EE0092B810 /* GPGProgressIndicatorController.nib in Resources */ = {isa = PBXBuildFile; fileRef = 1B194B8011CC56EE0092B810 /* GPGProgressIndicatorController.nib */; }; - 1B194B8F11CC57250092B810 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1B194B8D11CC57250092B810 /* InfoPlist.strings */; }; - 1B194BA611CC57820092B810 /* GPGKeyDownload.nib in Resources */ = {isa = PBXBuildFile; fileRef = 1B194B9A11CC57820092B810 /* GPGKeyDownload.nib */; }; - 1B194BA711CC57820092B810 /* GPGMailCompose.nib in Resources */ = {isa = PBXBuildFile; fileRef = 1B194B9C11CC57820092B810 /* GPGMailCompose.nib */; }; - 1B194BA811CC57820092B810 /* GPGMailComposeTiger.nib in Resources */ = {isa = PBXBuildFile; fileRef = 1B194B9E11CC57820092B810 /* GPGMailComposeTiger.nib */; }; - 1B194BA911CC57820092B810 /* GPGMailPreferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 1B194BA011CC57820092B810 /* GPGMailPreferences.nib */; }; - 1B194BAA11CC57820092B810 /* GPGMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 1B194BA211CC57820092B810 /* GPGMenu.nib */; }; - 1B194BAB11CC57820092B810 /* GPGMessageViewerAccessoryView.nib in Resources */ = {isa = PBXBuildFile; fileRef = 1B194BA411CC57820092B810 /* GPGMessageViewerAccessoryView.nib */; }; - 1B3433F7107AC35300F590EF /* MessageKeychainManager+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A808F0838EA1C0052F47C /* MessageKeychainManager+GPGMail.m */; }; - 1B343416107AC48C00F590EF /* GPGMessageSignature.m in Sources */ = {isa = PBXBuildFile; fileRef = 558C399A0CFAB0DF00998406 /* GPGMessageSignature.m */; }; - 1B343417107AC49200F590EF /* Message+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80750838E9B10052F47C /* Message+GPGMail.m */; }; - 1B343418107AC49400F590EF /* MessageBody+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80760838E9B10052F47C /* MessageBody+GPGMail.m */; }; - 1B343419107AC49F00F590EF /* MessageHeaders+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A808E0838EA1C0052F47C /* MessageHeaders+GPGMail.m */; }; - 1B34341A107AC4A200F590EF /* MimeBody+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80780838E9B10052F47C /* MimeBody+GPGMail.m */; }; - 1B34341B107AC4A400F590EF /* MimePart+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80790838E9B10052F47C /* MimePart+GPGMail.m */; }; - 1B343446107B359400F590EF /* GPGMessageViewerAccessoryViewOwner.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80740838E9B10052F47C /* GPGMessageViewerAccessoryViewOwner.m */; }; - 1B343483107B399400F590EF /* MessageContentController+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80770838E9B10052F47C /* MessageContentController+GPGMail.m */; }; - 1B3434A2107B3AFB00F590EF /* GPGKeyDownload.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A806D0838E9B10052F47C /* GPGKeyDownload.m */; }; - 1B3434BB107B42CC00F590EF /* MessageContentController+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A808C0838EA1C0052F47C /* MessageContentController+GPGMail.m */; }; - 1B45A53411CC97A600ED4663 /* MacGPGME.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 1B1949E111CC52350092B810 /* MacGPGME.framework */; }; - 1B45A53C11CC98AB00ED4663 /* MessageViewer+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 1B45A53B11CC98AB00ED4663 /* MessageViewer+GPGMail.m */; }; - 1B648B5111D1081A00807F9A /* GPGMailTextAttachmentPoser.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80990838EA560052F47C /* GPGMailTextAttachmentPoser.m */; }; - 1B6B7DF411CD1C600055F528 /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B6B7DF311CD1C600055F528 /* Sparkle.framework */; }; - 1B6B7E2C11CD1C810055F528 /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 1B6B7DF311CD1C600055F528 /* Sparkle.framework */; }; - 1B6B7E5211CD24440055F528 /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = 1B6B7E5111CD24440055F528 /* dsa_pub.pem */; }; - 1BAA17EA108E8E7500FBC3E4 /* TableViewManager+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80910838EA1C0052F47C /* TableViewManager+GPGMail.m */; }; - 1BB95C84105EE82A00A4CAE4 /* GPGMail.mailbundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8D5B49B6048680CD000E48DA /* GPGMail.mailbundle */; }; - 1BCEE1E311CC051500488D19 /* LICENSE.txt in Resources */ = {isa = PBXBuildFile; fileRef = 1BCEE1E211CC051500488D19 /* LICENSE.txt */; }; - 1BED92F81079529C00D22B4C /* GPGMailBundle.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A806E0838E9B10052F47C /* GPGMailBundle.m */; }; - 1BED934A1079563500D22B4C /* GPGMEAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80720838E9B10052F47C /* GPGMEAdditions.m */; }; - 1BED9357107957E700D22B4C /* GPGMailPreferences.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80710838E9B10052F47C /* GPGMailPreferences.m */; }; - 1BED93611079583400D22B4C /* GPGPassphraseController.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A7FAD0838E4170052F47C /* GPGPassphraseController.m */; }; - 1BED936A107958C200D22B4C /* GPGMailPatching.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80700838E9B10052F47C /* GPGMailPatching.m */; }; - 1BED936B107958C700D22B4C /* NSString+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A807B0838E9B10052F47C /* NSString+GPGMail.m */; }; - 1BED936C107958C800D22B4C /* NSData+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A807A0838E9B10052F47C /* NSData+GPGMail.m */; }; - 1BED93851079597600D22B4C /* NSPreferences_GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A80900838EA1C0052F47C /* NSPreferences_GPGMail.m */; }; - 1BED946F1079755200D22B4C /* ComposeBack+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A808B0838EA1C0052F47C /* ComposeBack+GPGMail.m */; }; - 1BED94C61079EADE00D22B4C /* MessageEditor+GPGMail.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A808D0838EA1C0052F47C /* MessageEditor+GPGMail.m */; }; - 1BED95871079FE6200D22B4C /* GPGMailComposeAccessoryViewOwner.m in Sources */ = {isa = PBXBuildFile; fileRef = 559A806F0838E9B10052F47C /* GPGMailComposeAccessoryViewOwner.m */; }; - 1BF51A70108FCD1900AC8268 /* ExceptionHandling.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1BF51A6F108FCD1900AC8268 /* ExceptionHandling.framework */; }; - 550692320CD510D300CA0BA2 /* clear-Leopard.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 5506922E0CD510D300CA0BA2 /* clear-Leopard.tiff */; }; - 550692330CD510D300CA0BA2 /* encrypted-Leopard.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 5506922F0CD510D300CA0BA2 /* encrypted-Leopard.tiff */; }; - 550692340CD510D300CA0BA2 /* signed-Leopard.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 550692300CD510D300CA0BA2 /* signed-Leopard.tiff */; }; - 550692350CD510D300CA0BA2 /* unsigned-Leopard.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 550692310CD510D300CA0BA2 /* unsigned-Leopard.tiff */; }; - 559A7F830838E2B30052F47C /* GPG.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A7F820838E2B30052F47C /* GPG.tiff */; }; - 559A80A80838EB270052F47C /* clear.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80A40838EB270052F47C /* clear.tiff */; }; - 559A80A90838EB270052F47C /* encrypted.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80A50838EB270052F47C /* encrypted.tiff */; }; - 559A80AA0838EB270052F47C /* signed.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80A60838EB270052F47C /* signed.tiff */; }; - 559A80AB0838EB270052F47C /* unsigned.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80A70838EB270052F47C /* unsigned.tiff */; }; - 559A80B10838EB450052F47C /* clear-Tiger.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80AD0838EB450052F47C /* clear-Tiger.tiff */; }; - 559A80B20838EB450052F47C /* encrypted-Tiger.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80AE0838EB450052F47C /* encrypted-Tiger.tiff */; }; - 559A80B30838EB450052F47C /* signed-Tiger.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80AF0838EB450052F47C /* signed-Tiger.tiff */; }; - 559A80B40838EB450052F47C /* unsigned-Tiger.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80B00838EB450052F47C /* unsigned-Tiger.tiff */; }; - 559A80BF0838EBA60052F47C /* CheckMark.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80B50838EBA60052F47C /* CheckMark.tiff */; }; - 559A80C00838EBA60052F47C /* EmptyImage.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80B60838EBA60052F47C /* EmptyImage.tiff */; }; - 559A80C10838EBA60052F47C /* InvalidBadge.tif in Resources */ = {isa = PBXBuildFile; fileRef = 559A80B70838EBA60052F47C /* InvalidBadge.tif */; }; - 559A80C20838EBA60052F47C /* questionMark.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80B80838EBA60052F47C /* questionMark.tiff */; }; - 559A80C30838EBA60052F47C /* RefreshNormal.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80B90838EBA60052F47C /* RefreshNormal.tiff */; }; - 559A80C40838EBA60052F47C /* RefreshPressed.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80BA0838EBA60052F47C /* RefreshPressed.tiff */; }; - 559A80C50838EBA60052F47C /* SmallAlert12.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80BB0838EBA60052F47C /* SmallAlert12.tiff */; }; - 559A80C60838EBA60052F47C /* SmallAlert16.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80BC0838EBA60052F47C /* SmallAlert16.tiff */; }; - 559A80C70838EBA60052F47C /* triangle.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80BD0838EBA60052F47C /* triangle.tiff */; }; - 559A80C80838EBA60052F47C /* ValidBadge.tif in Resources */ = {isa = PBXBuildFile; fileRef = 559A80BE0838EBA60052F47C /* ValidBadge.tif */; }; - 559A80DF0838ECB40052F47C /* GPGMail.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80DD0838ECB40052F47C /* GPGMail.tiff */; }; - 559A80E00838ECB40052F47C /* GPGMailPreferences.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80DE0838ECB40052F47C /* GPGMailPreferences.tiff */; }; - 559A80E20838ECEF0052F47C /* GPGMail32.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 559A80E10838ECEF0052F47C /* GPGMail32.tiff */; }; - 559A80E70838ED590052F47C /* GPGMailBundle.defaults in Resources */ = {isa = PBXBuildFile; fileRef = 559A80E60838ED590052F47C /* GPGMailBundle.defaults */; }; - 559A81300838EEFD0052F47C /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 559A812B0838EEFD0052F47C /* AddressBook.framework */; }; - 559A81310838EEFD0052F47C /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 559A812C0838EEFD0052F47C /* Carbon.framework */; }; - 559A81320838EEFD0052F47C /* Message.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 559A812D0838EEFD0052F47C /* Message.framework */; }; - 559A81330838EEFD0052F47C /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 559A812E0838EEFD0052F47C /* Security.framework */; }; - 559A81340838EEFD0052F47C /* System.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 559A812F0838EEFD0052F47C /* System.framework */; }; - 559FD1250BBC428000C8FE50 /* KeyServers.plist in Resources */ = {isa = PBXBuildFile; fileRef = 559A80E80838ED6D0052F47C /* KeyServers.plist */; }; - 8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */; }; - AC48AFAC11CDEE0300393D2C /* MacGPGME.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AC48AFAB11CDEE0300393D2C /* MacGPGME.framework */; }; -/* End PBXBuildFile section */ - -/* Begin PBXBuildRule section */ - 552507E90BAD561900466016 /* PBXBuildRule */ = { - isa = PBXBuildRule; - compilerSpec = com.apple.compilers.proxy.script; - filePatterns = "*.plist"; - fileType = pattern.proxy; - isEditable = 1; - outputFiles = ( - "${DERIVED_FILES_DIR}/${INPUT_FILE_NAME}", - ); - script = "/usr/bin/plutil -lint -- \"${INPUT_FILE_PATH}\" && cp -pR \"${INPUT_FILE_PATH}\" \"${DERIVED_FILES_DIR}/\""; - }; -/* End PBXBuildRule section */ - -/* Begin PBXContainerItemProxy section */ - 1B1949E011CC52350092B810 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 1B1949D711CC52350092B810 /* MacGPGME.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 554B55C0069F0111005E1C92; - remoteInfo = MacGPGME; - }; - 1B1949E211CC52350092B810 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 1B1949D711CC52350092B810 /* MacGPGME.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 554B55EB069F0245005E1C92; - remoteInfo = GPGTester; - }; - 1B1949E411CC52350092B810 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 1B1949D711CC52350092B810 /* MacGPGME.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 551DF42B0B2886420061FE17; - remoteInfo = MacGPGMETesting; - }; - 1B45A51B11CC973700ED4663 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 1B1949D711CC52350092B810 /* MacGPGME.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 1B45A4E311CC967000ED4663; - remoteInfo = "Build and Install"; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 1B45A52111CC977700ED4663 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - 1B6B7E2C11CD1C810055F528 /* Sparkle.framework in CopyFiles */, - 1B45A53411CC97A600ED4663 /* MacGPGME.framework in CopyFiles */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 1BB95C80105EE80C00A4CAE4 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 12; - dstPath = "~/Library/Mail/Bundles/"; - dstSubfolderSpec = 0; - files = ( - 1BB95C84105EE82A00A4CAE4 /* GPGMail.mailbundle in CopyFiles */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 089C1672FE841209C02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; - 089C167FFE841241C02AAC07 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; - 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; - 1B1949D711CC52350092B810 /* MacGPGME.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = MacGPGME.xcodeproj; path = Dependencies/MacGPGME/MacGPGME.xcodeproj; sourceTree = ""; }; - 1B194B5A11CC55A80092B810 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = Resources/English.lproj/GPGMail.strings; sourceTree = ""; }; - 1B194B5C11CC55B40092B810 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Dutch; path = Resources/Dutch.lproj/GPGMail.strings; sourceTree = ""; }; - 1B194B5D11CC55C20092B810 /* Danish */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Danish; path = Resources/Danish.lproj/GPGMail.strings; sourceTree = ""; }; - 1B194B5E11CC55D60092B810 /* Italian */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Italian; path = Resources/Italian.lproj/GPGMail.strings; sourceTree = ""; }; - 1B194B5F11CC55D90092B810 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Spanish; path = Resources/Spanish.lproj/GPGMail.strings; sourceTree = ""; }; - 1B194B6011CC55DC0092B810 /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Swedish; path = Resources/Swedish.lproj/GPGMail.strings; sourceTree = ""; }; - 1B194B6111CC55EA0092B810 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = French; path = Resources/French.lproj/GPGMail.strings; sourceTree = ""; }; - 1B194B6211CC55EC0092B810 /* German */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = German; path = Resources/German.lproj/GPGMail.strings; sourceTree = ""; }; - 1B194B6311CC56130092B810 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = Resources/fi.lproj/GPGMail.strings; sourceTree = ""; }; - 1B194B6411CC56260092B810 /* Japanese */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Japanese; path = Resources/Japanese.lproj/GPGMail.strings; sourceTree = ""; }; - 1B194B6511CC56290092B810 /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = Resources/ko.lproj/GPGMail.strings; sourceTree = ""; }; - 1B194B6711CC56520092B810 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = Resources/GPG.subproj/English.lproj/GPG.strings; sourceTree = ""; }; - 1B194B6911CC56600092B810 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Dutch; path = Resources/GPG.subproj/Dutch.lproj/GPG.strings; sourceTree = ""; }; - 1B194B6A11CC56650092B810 /* Danish */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Danish; path = Resources/GPG.subproj/Danish.lproj/GPG.strings; sourceTree = ""; }; - 1B194B6B11CC56670092B810 /* Italian */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Italian; path = Resources/GPG.subproj/Italian.lproj/GPG.strings; sourceTree = ""; }; - 1B194B6C11CC566A0092B810 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Spanish; path = Resources/GPG.subproj/Spanish.lproj/GPG.strings; sourceTree = ""; }; - 1B194B6D11CC566C0092B810 /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Swedish; path = Resources/GPG.subproj/Swedish.lproj/GPG.strings; sourceTree = ""; }; - 1B194B6E11CC566E0092B810 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = French; path = Resources/GPG.subproj/French.lproj/GPG.strings; sourceTree = ""; }; - 1B194B6F11CC56700092B810 /* German */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = German; path = Resources/GPG.subproj/German.lproj/GPG.strings; sourceTree = ""; }; - 1B194B7011CC56720092B810 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = Resources/GPG.subproj/fi.lproj/GPG.strings; sourceTree = ""; }; - 1B194B7111CC56750092B810 /* Japanese */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Japanese; path = Resources/GPG.subproj/Japanese.lproj/GPG.strings; sourceTree = ""; }; - 1B194B7211CC56770092B810 /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = Resources/GPG.subproj/ko.lproj/GPG.strings; sourceTree = ""; }; - 1B194B7411CC56980092B810 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = Resources/GPG.subproj/English.lproj/GPGPassphrase.nib; sourceTree = ""; }; - 1B194B7611CC56A50092B810 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Dutch; path = Resources/GPG.subproj/Dutch.lproj/GPGPassphrase.nib; sourceTree = ""; }; - 1B194B7711CC56AB0092B810 /* Danish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Danish; path = Resources/GPG.subproj/Danish.lproj/GPGPassphrase.nib; sourceTree = ""; }; - 1B194B7811CC56AE0092B810 /* Italian */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Italian; path = Resources/GPG.subproj/Italian.lproj/GPGPassphrase.nib; sourceTree = ""; }; - 1B194B7911CC56B20092B810 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Spanish; path = Resources/GPG.subproj/Spanish.lproj/GPGPassphrase.nib; sourceTree = ""; }; - 1B194B7A11CC56B50092B810 /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Swedish; path = Resources/GPG.subproj/Swedish.lproj/GPGPassphrase.nib; sourceTree = ""; }; - 1B194B7B11CC56BF0092B810 /* French */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = French; path = Resources/GPG.subproj/French.lproj/GPGPassphrase.nib; sourceTree = ""; }; - 1B194B7C11CC56C10092B810 /* German */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = German; path = Resources/GPG.subproj/German.lproj/GPGPassphrase.nib; sourceTree = ""; }; - 1B194B7D11CC56C30092B810 /* fi */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = fi; path = Resources/GPG.subproj/fi.lproj/GPGPassphrase.nib; sourceTree = ""; }; - 1B194B7E11CC56C60092B810 /* Japanese */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Japanese; path = Resources/GPG.subproj/Japanese.lproj/GPGPassphrase.nib; sourceTree = ""; }; - 1B194B7F11CC56C80092B810 /* ko */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = ko; path = Resources/GPG.subproj/ko.lproj/GPGPassphrase.nib; sourceTree = ""; }; - 1B194B8111CC56EE0092B810 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = Resources/GPG.subproj/English.lproj/GPGProgressIndicatorController.nib; sourceTree = ""; }; - 1B194B8311CC56F40092B810 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Dutch; path = Resources/GPG.subproj/Dutch.lproj/GPGProgressIndicatorController.nib; sourceTree = ""; }; - 1B194B8411CC56F80092B810 /* Danish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Danish; path = Resources/GPG.subproj/Danish.lproj/GPGProgressIndicatorController.nib; sourceTree = ""; }; - 1B194B8511CC56FB0092B810 /* Italian */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Italian; path = Resources/GPG.subproj/Italian.lproj/GPGProgressIndicatorController.nib; sourceTree = ""; }; - 1B194B8611CC56FE0092B810 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Spanish; path = Resources/GPG.subproj/Spanish.lproj/GPGProgressIndicatorController.nib; sourceTree = ""; }; - 1B194B8711CC57010092B810 /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Swedish; path = Resources/GPG.subproj/Swedish.lproj/GPGProgressIndicatorController.nib; sourceTree = ""; }; - 1B194B8811CC57030092B810 /* French */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = French; path = Resources/GPG.subproj/French.lproj/GPGProgressIndicatorController.nib; sourceTree = ""; }; - 1B194B8911CC57040092B810 /* German */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = German; path = Resources/GPG.subproj/German.lproj/GPGProgressIndicatorController.nib; sourceTree = ""; }; - 1B194B8A11CC57060092B810 /* fi */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = fi; path = Resources/GPG.subproj/fi.lproj/GPGProgressIndicatorController.nib; sourceTree = ""; }; - 1B194B8B11CC57080092B810 /* Japanese */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Japanese; path = Resources/GPG.subproj/Japanese.lproj/GPGProgressIndicatorController.nib; sourceTree = ""; }; - 1B194B8C11CC570A0092B810 /* ko */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = ko; path = Resources/GPG.subproj/ko.lproj/GPGProgressIndicatorController.nib; sourceTree = ""; }; - 1B194B8E11CC57250092B810 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = Resources/English.lproj/InfoPlist.strings; sourceTree = ""; }; - 1B194B9011CC572E0092B810 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Dutch; path = Resources/Dutch.lproj/InfoPlist.strings; sourceTree = ""; }; - 1B194B9111CC572F0092B810 /* Danish */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Danish; path = Resources/Danish.lproj/InfoPlist.strings; sourceTree = ""; }; - 1B194B9211CC57320092B810 /* Italian */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Italian; path = Resources/Italian.lproj/InfoPlist.strings; sourceTree = ""; }; - 1B194B9311CC57370092B810 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Spanish; path = Resources/Spanish.lproj/InfoPlist.strings; sourceTree = ""; }; - 1B194B9411CC57390092B810 /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Swedish; path = Resources/Swedish.lproj/InfoPlist.strings; sourceTree = ""; }; - 1B194B9511CC573B0092B810 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = French; path = Resources/French.lproj/InfoPlist.strings; sourceTree = ""; }; - 1B194B9611CC573D0092B810 /* German */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = German; path = Resources/German.lproj/InfoPlist.strings; sourceTree = ""; }; - 1B194B9711CC573E0092B810 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = Resources/fi.lproj/InfoPlist.strings; sourceTree = ""; }; - 1B194B9811CC57400092B810 /* Japanese */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Japanese; path = Resources/Japanese.lproj/InfoPlist.strings; sourceTree = ""; }; - 1B194B9911CC57420092B810 /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = Resources/ko.lproj/InfoPlist.strings; sourceTree = ""; }; - 1B194B9B11CC57820092B810 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = Resources/English.lproj/GPGKeyDownload.nib; sourceTree = ""; }; - 1B194B9D11CC57820092B810 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = Resources/English.lproj/GPGMailCompose.nib; sourceTree = ""; }; - 1B194B9F11CC57820092B810 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = Resources/English.lproj/GPGMailComposeTiger.nib; sourceTree = ""; }; - 1B194BA111CC57820092B810 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = Resources/English.lproj/GPGMailPreferences.nib; sourceTree = ""; }; - 1B194BA311CC57820092B810 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = Resources/English.lproj/GPGMenu.nib; sourceTree = ""; }; - 1B194BA511CC57820092B810 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = Resources/English.lproj/GPGMessageViewerAccessoryView.nib; sourceTree = ""; }; - 1B194BAC11CC57C40092B810 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Dutch; path = Resources/Dutch.lproj/GPGKeyDownload.nib; sourceTree = ""; }; - 1B194BAD11CC57C70092B810 /* Danish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Danish; path = Resources/Danish.lproj/GPGKeyDownload.nib; sourceTree = ""; }; - 1B194BAE11CC57C90092B810 /* Italian */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Italian; path = Resources/Italian.lproj/GPGKeyDownload.nib; sourceTree = ""; }; - 1B194BAF11CC57CD0092B810 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Spanish; path = Resources/Spanish.lproj/GPGKeyDownload.nib; sourceTree = ""; }; - 1B194BB011CC57D00092B810 /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Swedish; path = Resources/Swedish.lproj/GPGKeyDownload.nib; sourceTree = ""; }; - 1B194BB111CC57D20092B810 /* French */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = French; path = Resources/French.lproj/GPGKeyDownload.nib; sourceTree = ""; }; - 1B194BB211CC57D40092B810 /* German */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = German; path = Resources/German.lproj/GPGKeyDownload.nib; sourceTree = ""; }; - 1B194BB311CC57D50092B810 /* fi */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = fi; path = Resources/fi.lproj/GPGKeyDownload.nib; sourceTree = ""; }; - 1B194BB411CC57D70092B810 /* Japanese */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Japanese; path = Resources/Japanese.lproj/GPGKeyDownload.nib; sourceTree = ""; }; - 1B194BB511CC57DA0092B810 /* ko */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = ko; path = Resources/ko.lproj/GPGKeyDownload.nib; sourceTree = ""; }; - 1B194BB611CC57E10092B810 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Dutch; path = Resources/Dutch.lproj/GPGMailCompose.nib; sourceTree = ""; }; - 1B194BB711CC57E30092B810 /* Danish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Danish; path = Resources/Danish.lproj/GPGMailCompose.nib; sourceTree = ""; }; - 1B194BB811CC57E50092B810 /* Italian */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Italian; path = Resources/Italian.lproj/GPGMailCompose.nib; sourceTree = ""; }; - 1B194BB911CC57F00092B810 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Spanish; path = Resources/Spanish.lproj/GPGMailCompose.nib; sourceTree = ""; }; - 1B194BBA11CC57F40092B810 /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Swedish; path = Resources/Swedish.lproj/GPGMailCompose.nib; sourceTree = ""; }; - 1B194BBB11CC57F60092B810 /* French */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = French; path = Resources/French.lproj/GPGMailCompose.nib; sourceTree = ""; }; - 1B194BBC11CC57F70092B810 /* German */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = German; path = Resources/German.lproj/GPGMailCompose.nib; sourceTree = ""; }; - 1B194BBD11CC57F90092B810 /* fi */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = fi; path = Resources/fi.lproj/GPGMailCompose.nib; sourceTree = ""; }; - 1B194BBE11CC57FC0092B810 /* Japanese */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Japanese; path = Resources/Japanese.lproj/GPGMailCompose.nib; sourceTree = ""; }; - 1B194BBF11CC58000092B810 /* ko */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = ko; path = Resources/ko.lproj/GPGMailCompose.nib; sourceTree = ""; }; - 1B194BC011CC58080092B810 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Dutch; path = Resources/Dutch.lproj/GPGMailComposeTiger.nib; sourceTree = ""; }; - 1B194BC111CC580A0092B810 /* Danish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Danish; path = Resources/Danish.lproj/GPGMailComposeTiger.nib; sourceTree = ""; }; - 1B194BC211CC580C0092B810 /* Italian */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Italian; path = Resources/Italian.lproj/GPGMailComposeTiger.nib; sourceTree = ""; }; - 1B194BC311CC580E0092B810 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Spanish; path = Resources/Spanish.lproj/GPGMailComposeTiger.nib; sourceTree = ""; }; - 1B194BC411CC58110092B810 /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Swedish; path = Resources/Swedish.lproj/GPGMailComposeTiger.nib; sourceTree = ""; }; - 1B194BC511CC58140092B810 /* French */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = French; path = Resources/French.lproj/GPGMailComposeTiger.nib; sourceTree = ""; }; - 1B194BC611CC58150092B810 /* German */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = German; path = Resources/German.lproj/GPGMailComposeTiger.nib; sourceTree = ""; }; - 1B194BC711CC58180092B810 /* fi */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = fi; path = Resources/fi.lproj/GPGMailComposeTiger.nib; sourceTree = ""; }; - 1B194BC811CC581A0092B810 /* Japanese */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Japanese; path = Resources/Japanese.lproj/GPGMailComposeTiger.nib; sourceTree = ""; }; - 1B194BC911CC581C0092B810 /* ko */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = ko; path = Resources/ko.lproj/GPGMailComposeTiger.nib; sourceTree = ""; }; - 1B194BCA11CC58220092B810 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Dutch; path = Resources/Dutch.lproj/GPGMailPreferences.nib; sourceTree = ""; }; - 1B194BCB11CC58240092B810 /* Danish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Danish; path = Resources/Danish.lproj/GPGMailPreferences.nib; sourceTree = ""; }; - 1B194BCC11CC58270092B810 /* Italian */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Italian; path = Resources/Italian.lproj/GPGMailPreferences.nib; sourceTree = ""; }; - 1B194BCD11CC582A0092B810 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Spanish; path = Resources/Spanish.lproj/GPGMailPreferences.nib; sourceTree = ""; }; - 1B194BCE11CC582E0092B810 /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Swedish; path = Resources/Swedish.lproj/GPGMailPreferences.nib; sourceTree = ""; }; - 1B194BCF11CC58300092B810 /* French */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = French; path = Resources/French.lproj/GPGMailPreferences.nib; sourceTree = ""; }; - 1B194BD011CC58320092B810 /* German */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = German; path = Resources/German.lproj/GPGMailPreferences.nib; sourceTree = ""; }; - 1B194BD111CC58330092B810 /* fi */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = fi; path = Resources/fi.lproj/GPGMailPreferences.nib; sourceTree = ""; }; - 1B194BD211CC58360092B810 /* Japanese */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Japanese; path = Resources/Japanese.lproj/GPGMailPreferences.nib; sourceTree = ""; }; - 1B194BD311CC58370092B810 /* ko */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = ko; path = Resources/ko.lproj/GPGMailPreferences.nib; sourceTree = ""; }; - 1B194BD411CC58420092B810 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Dutch; path = Resources/Dutch.lproj/GPGMenu.nib; sourceTree = ""; }; - 1B194BD511CC58460092B810 /* Danish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Danish; path = Resources/Danish.lproj/GPGMenu.nib; sourceTree = ""; }; - 1B194BD611CC58490092B810 /* Italian */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Italian; path = Resources/Italian.lproj/GPGMenu.nib; sourceTree = ""; }; - 1B194BD711CC584B0092B810 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Spanish; path = Resources/Spanish.lproj/GPGMenu.nib; sourceTree = ""; }; - 1B194BD811CC584F0092B810 /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Swedish; path = Resources/Swedish.lproj/GPGMenu.nib; sourceTree = ""; }; - 1B194BD911CC58510092B810 /* French */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = French; path = Resources/French.lproj/GPGMenu.nib; sourceTree = ""; }; - 1B194BDA11CC58530092B810 /* German */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = German; path = Resources/German.lproj/GPGMenu.nib; sourceTree = ""; }; - 1B194BDB11CC58540092B810 /* fi */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = fi; path = Resources/fi.lproj/GPGMenu.nib; sourceTree = ""; }; - 1B194BDC11CC58570092B810 /* Japanese */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Japanese; path = Resources/Japanese.lproj/GPGMenu.nib; sourceTree = ""; }; - 1B194BDD11CC58580092B810 /* ko */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = ko; path = Resources/ko.lproj/GPGMenu.nib; sourceTree = ""; }; - 1B194BDE11CC58610092B810 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Dutch; path = Resources/Dutch.lproj/GPGMessageViewerAccessoryView.nib; sourceTree = ""; }; - 1B194BDF11CC58640092B810 /* Danish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Danish; path = Resources/Danish.lproj/GPGMessageViewerAccessoryView.nib; sourceTree = ""; }; - 1B194BE011CC58660092B810 /* Italian */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Italian; path = Resources/Italian.lproj/GPGMessageViewerAccessoryView.nib; sourceTree = ""; }; - 1B194BE111CC58690092B810 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Spanish; path = Resources/Spanish.lproj/GPGMessageViewerAccessoryView.nib; sourceTree = ""; }; - 1B194BE211CC586C0092B810 /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Swedish; path = Resources/Swedish.lproj/GPGMessageViewerAccessoryView.nib; sourceTree = ""; }; - 1B194BE311CC586D0092B810 /* French */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = French; path = Resources/French.lproj/GPGMessageViewerAccessoryView.nib; sourceTree = ""; }; - 1B194BE411CC58700092B810 /* German */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = German; path = Resources/German.lproj/GPGMessageViewerAccessoryView.nib; sourceTree = ""; }; - 1B194BE511CC58710092B810 /* fi */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = fi; path = Resources/fi.lproj/GPGMessageViewerAccessoryView.nib; sourceTree = ""; }; - 1B194BE611CC58740092B810 /* Japanese */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Japanese; path = Resources/Japanese.lproj/GPGMessageViewerAccessoryView.nib; sourceTree = ""; }; - 1B194BE711CC58760092B810 /* ko */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = ko; path = Resources/ko.lproj/GPGMessageViewerAccessoryView.nib; sourceTree = ""; }; - 1B194BEA11CC58BC0092B810 /* OutgoingMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OutgoingMessage.h; path = Source/PrivateHeaders/OutgoingMessage.h; sourceTree = ""; }; - 1B45A53B11CC98AB00ED4663 /* MessageViewer+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "MessageViewer+GPGMail.m"; path = "Source/MessageViewer+GPGMail.m"; sourceTree = ""; }; - 1B6B7DF311CD1C600055F528 /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Sparkle.framework; path = Frameworks/Sparkle.framework; sourceTree = ""; }; - 1B6B7E5111CD24440055F528 /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = dsa_pub.pem; path = Release/dsa_pub.pem; sourceTree = ""; }; - 1B859A6E109331A6009E469A /* MVTerminationHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MVTerminationHandler.h; path = Source/PrivateHeaders/MVTerminationHandler.h; sourceTree = ""; }; - 1BCEE1E211CC051500488D19 /* LICENSE.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = LICENSE.txt; path = Documentation/LICENSE.txt; sourceTree = ""; }; - 1BF51A6F108FCD1900AC8268 /* ExceptionHandling.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ExceptionHandling.framework; path = System/Library/Frameworks/ExceptionHandling.framework; sourceTree = SDKROOT; }; - 32DBCF630370AF2F00C91783 /* GPGMail_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GPGMail_Prefix.pch; sourceTree = ""; }; - 5506922E0CD510D300CA0BA2 /* clear-Leopard.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = "clear-Leopard.tiff"; path = "Resources/clear-Leopard.tiff"; sourceTree = ""; }; - 5506922F0CD510D300CA0BA2 /* encrypted-Leopard.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = "encrypted-Leopard.tiff"; path = "Resources/encrypted-Leopard.tiff"; sourceTree = ""; }; - 550692300CD510D300CA0BA2 /* signed-Leopard.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = "signed-Leopard.tiff"; path = "Resources/signed-Leopard.tiff"; sourceTree = ""; }; - 550692310CD510D300CA0BA2 /* unsigned-Leopard.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = "unsigned-Leopard.tiff"; path = "Resources/unsigned-Leopard.tiff"; sourceTree = ""; }; - 5582E2A40CE61FCE001ADBF3 /* ComposeHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ComposeHeaderView.h; path = Source/PrivateHeaders/ComposeHeaderView.h; sourceTree = ""; }; - 558C390E0CF9720500998406 /* NSObject+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "NSObject+GPGMail.h"; path = "Source/NSObject+GPGMail.h"; sourceTree = ""; }; - 558C39990CFAB0DF00998406 /* GPGMessageSignature.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GPGMessageSignature.h; path = Source/GPGMessageSignature.h; sourceTree = ""; }; - 558C399A0CFAB0DF00998406 /* GPGMessageSignature.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = GPGMessageSignature.m; path = Source/GPGMessageSignature.m; sourceTree = ""; }; - 558D4E270D3A695F0007E29A /* rfc2440.txt */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 4; name = rfc2440.txt; path = Documentation/rfc2440.txt; sourceTree = ""; }; - 558D4E280D3A695F0007E29A /* rfc4880.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = rfc4880.txt; path = Documentation/rfc4880.txt; sourceTree = ""; }; - 558D74410CDCD67800BA33EC /* ColorBackgroundView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ColorBackgroundView.h; path = Source/PrivateHeaders/ColorBackgroundView.h; sourceTree = ""; }; - 558D75310CDD033A00BA33EC /* Subdata.h */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 4; name = Subdata.h; path = Source/PrivateHeaders/Subdata.h; sourceTree = ""; }; - 559A7F820838E2B30052F47C /* GPG.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = GPG.tiff; path = Resources/GPG.subproj/GPG.tiff; sourceTree = ""; }; - 559A7FA90838E4040052F47C /* GPGHandler.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = GPGHandler.h; path = Source/GPG.subproj/GPGHandler.h; sourceTree = ""; }; - 559A7FAA0838E4040052F47C /* GPGPassphraseController.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = GPGPassphraseController.h; path = Source/GPG.subproj/GPGPassphraseController.h; sourceTree = ""; }; - 559A7FAB0838E4040052F47C /* GPGProgressIndicatorController.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = GPGProgressIndicatorController.h; path = Source/GPG.subproj/GPGProgressIndicatorController.h; sourceTree = ""; }; - 559A7FAC0838E4170052F47C /* GPGHandler.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = GPGHandler.m; path = Source/GPG.subproj/GPGHandler.m; sourceTree = ""; }; - 559A7FAD0838E4170052F47C /* GPGPassphraseController.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = GPGPassphraseController.m; path = Source/GPG.subproj/GPGPassphraseController.m; sourceTree = ""; }; - 559A7FAE0838E4170052F47C /* GPGProgressIndicatorController.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = GPGProgressIndicatorController.m; path = Source/GPG.subproj/GPGProgressIndicatorController.m; sourceTree = ""; }; - 559A7FB50838E4590052F47C /* DeveloperInfo.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; name = DeveloperInfo.txt; path = Documentation/DeveloperInfo.txt; sourceTree = ""; }; - 559A7FB60838E4590052F47C /* HISTORY */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; name = HISTORY; path = Documentation/HISTORY; sourceTree = ""; }; - 559A7FB70838E4590052F47C /* rfc3156.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; name = rfc3156.txt; path = Documentation/rfc3156.txt; sourceTree = ""; }; - 559A7FB80838E4590052F47C /* ToDoList.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; name = ToDoList.txt; path = Documentation/ToDoList.txt; sourceTree = ""; }; - 559A80330838E6A80052F47C /* NSPreferences.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = NSPreferences.h; path = Source/PrivateHeaders/NSPreferences.h; sourceTree = ""; }; - 559A80360838E70E0052F47C /* Message.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = Message.h; path = Source/PrivateHeaders/Message.h; sourceTree = ""; }; - 559A80370838E70E0052F47C /* MessageBody.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MessageBody.h; path = Source/PrivateHeaders/MessageBody.h; sourceTree = ""; }; - 559A80380838E70E0052F47C /* MessageHeaders.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MessageHeaders.h; path = Source/PrivateHeaders/MessageHeaders.h; sourceTree = ""; }; - 559A80390838E70E0052F47C /* MessageKeychainManager.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MessageKeychainManager.h; path = Source/PrivateHeaders/MessageKeychainManager.h; sourceTree = ""; }; - 559A803A0838E70E0052F47C /* MessageStore.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MessageStore.h; path = Source/PrivateHeaders/MessageStore.h; sourceTree = ""; }; - 559A803B0838E70E0052F47C /* MessageWriter.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MessageWriter.h; path = Source/PrivateHeaders/MessageWriter.h; sourceTree = ""; }; - 559A803C0838E70E0052F47C /* MimeBody.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MimeBody.h; path = Source/PrivateHeaders/MimeBody.h; sourceTree = ""; }; - 559A803D0838E70E0052F47C /* MimePart.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MimePart.h; path = Source/PrivateHeaders/MimePart.h; sourceTree = ""; }; - 559A803E0838E70E0052F47C /* MimeTextAttachment.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MimeTextAttachment.h; path = Source/PrivateHeaders/MimeTextAttachment.h; sourceTree = ""; }; - 559A803F0838E70E0052F47C /* MutableMessageHeaders.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MutableMessageHeaders.h; path = Source/PrivateHeaders/MutableMessageHeaders.h; sourceTree = ""; }; - 559A80400838E70E0052F47C /* NSData+Message.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "NSData+Message.h"; path = "Source/PrivateHeaders/NSData+Message.h"; sourceTree = ""; }; - 559A80410838E70E0052F47C /* NSDataMessageStore.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = NSDataMessageStore.h; path = Source/PrivateHeaders/NSDataMessageStore.h; sourceTree = ""; }; - 559A80420838E70E0052F47C /* NSString+Message.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "NSString+Message.h"; path = "Source/PrivateHeaders/NSString+Message.h"; sourceTree = ""; }; - 559A80430838E70E0052F47C /* ObjectCache.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ObjectCache.h; path = Source/PrivateHeaders/ObjectCache.h; sourceTree = ""; }; - 559A80440838E70E0052F47C /* SafeObserver.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SafeObserver.h; path = Source/PrivateHeaders/SafeObserver.h; sourceTree = ""; }; - 559A80450838E7420052F47C /* ComposeBackEnd.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ComposeBackEnd.h; path = Source/PrivateHeaders/ComposeBackEnd.h; sourceTree = ""; }; - 559A80460838E7420052F47C /* MailTextAttachment.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MailTextAttachment.h; path = Source/PrivateHeaders/MailTextAttachment.h; sourceTree = ""; }; - 559A80470838E74F0052F47C /* MailToolbarItem.h */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 30; name = MailToolbarItem.h; path = Source/PrivateHeaders/MailToolbarItem.h; sourceTree = ""; }; - 559A80480838E7830052F47C /* MessageContentController.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MessageContentController.h; path = Source/PrivateHeaders/MessageContentController.h; sourceTree = ""; }; - 559A80490838E7830052F47C /* MessageEditor.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MessageEditor.h; path = Source/PrivateHeaders/MessageEditor.h; sourceTree = ""; }; - 559A804A0838E7830052F47C /* MessageHeaderDisplay.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MessageHeaderDisplay.h; path = Source/PrivateHeaders/MessageHeaderDisplay.h; sourceTree = ""; }; - 559A804B0838E7830052F47C /* MessageViewer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MessageViewer.h; path = Source/PrivateHeaders/MessageViewer.h; sourceTree = ""; }; - 559A804C0838E7830052F47C /* MVComposeAccessoryViewOwner.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MVComposeAccessoryViewOwner.h; path = Source/PrivateHeaders/MVComposeAccessoryViewOwner.h; sourceTree = ""; }; - 559A804D0838E7830052F47C /* MVMailBundle.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = MVMailBundle.h; path = Source/PrivateHeaders/MVMailBundle.h; sourceTree = ""; }; - 559A804E0838E7830052F47C /* TableViewManager.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = TableViewManager.h; path = Source/PrivateHeaders/TableViewManager.h; sourceTree = ""; }; - 559A804F0838E7950052F47C /* OptionalView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = OptionalView.h; path = Source/PrivateHeaders/OptionalView.h; sourceTree = ""; }; - 559A80510838E8300052F47C /* GPGKeyDownload.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = GPGKeyDownload.h; path = Source/GPGKeyDownload.h; sourceTree = ""; }; - 559A80520838E8300052F47C /* GPGMailBundle.h */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 30; name = GPGMailBundle.h; path = Source/GPGMailBundle.h; sourceTree = ""; }; - 559A80530838E8300052F47C /* GPGMailComposeAccessoryViewOwner.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = GPGMailComposeAccessoryViewOwner.h; path = Source/GPGMailComposeAccessoryViewOwner.h; sourceTree = ""; }; - 559A80540838E8300052F47C /* GPGMailPatching.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = GPGMailPatching.h; path = Source/GPGMailPatching.h; sourceTree = ""; }; - 559A80550838E8300052F47C /* GPGMailPreferences.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = GPGMailPreferences.h; path = Source/GPGMailPreferences.h; sourceTree = ""; }; - 559A80560838E8300052F47C /* GPGMEAdditions.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = GPGMEAdditions.h; path = Source/GPGMEAdditions.h; sourceTree = ""; }; - 559A80570838E8300052F47C /* GPGMessageEditorPoser.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = GPGMessageEditorPoser.h; path = Source/GPGMessageEditorPoser.h; sourceTree = ""; }; - 559A80580838E8300052F47C /* GPGMessageViewerAccessoryViewOwner.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = GPGMessageViewerAccessoryViewOwner.h; path = Source/GPGMessageViewerAccessoryViewOwner.h; sourceTree = ""; }; - 559A805A0838E8300052F47C /* Message+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "Message+GPGMail.h"; path = "Source/Message+GPGMail.h"; sourceTree = ""; }; - 559A805B0838E8300052F47C /* MessageBody+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "MessageBody+GPGMail.h"; path = "Source/MessageBody+GPGMail.h"; sourceTree = ""; }; - 559A805C0838E8300052F47C /* MessageViewer+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "MessageViewer+GPGMail.h"; path = "Source/MessageViewer+GPGMail.h"; sourceTree = ""; }; - 559A805D0838E8300052F47C /* MimeBody+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "MimeBody+GPGMail.h"; path = "Source/MimeBody+GPGMail.h"; sourceTree = ""; }; - 559A805E0838E8300052F47C /* MimePart+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "MimePart+GPGMail.h"; path = "Source/MimePart+GPGMail.h"; sourceTree = ""; }; - 559A805F0838E8300052F47C /* NSData+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "NSData+GPGMail.h"; path = "Source/NSData+GPGMail.h"; sourceTree = ""; }; - 559A80600838E8300052F47C /* NSString+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "NSString+GPGMail.h"; path = "Source/NSString+GPGMail.h"; sourceTree = ""; }; - 559A80620838E8890052F47C /* ComposeBackEnd+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "ComposeBackEnd+GPGMail.h"; path = "Source/ComposeBackEnd+GPGMail.h"; sourceTree = ""; }; - 559A80630838E8890052F47C /* GPGMailTextAttachmentPoser.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = GPGMailTextAttachmentPoser.h; path = Source/GPGMailTextAttachmentPoser.h; sourceTree = ""; }; - 559A80640838E8890052F47C /* MessageContentController+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "MessageContentController+GPGMail.h"; path = "Source/MessageContentController+GPGMail.h"; sourceTree = ""; }; - 559A80650838E8890052F47C /* MessageEditor+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "MessageEditor+GPGMail.h"; path = "Source/MessageEditor+GPGMail.h"; sourceTree = ""; }; - 559A80660838E8890052F47C /* MessageHeaders+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "MessageHeaders+GPGMail.h"; path = "Source/MessageHeaders+GPGMail.h"; sourceTree = ""; }; - 559A80670838E8890052F47C /* MessageKeychainManager+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "MessageKeychainManager+GPGMail.h"; path = "Source/MessageKeychainManager+GPGMail.h"; sourceTree = ""; }; - 559A80680838E8890052F47C /* NSPreferences_GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = NSPreferences_GPGMail.h; path = Source/NSPreferences_GPGMail.h; sourceTree = ""; }; - 559A80690838E8890052F47C /* TableViewManager+GPGMail.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "TableViewManager+GPGMail.h"; path = "Source/TableViewManager+GPGMail.h"; sourceTree = ""; }; - 559A806D0838E9B10052F47C /* GPGKeyDownload.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = GPGKeyDownload.m; path = Source/GPGKeyDownload.m; sourceTree = ""; }; - 559A806E0838E9B10052F47C /* GPGMailBundle.m */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.objc; name = GPGMailBundle.m; path = Source/GPGMailBundle.m; sourceTree = ""; tabWidth = 4; usesTabs = 0; }; - 559A806F0838E9B10052F47C /* GPGMailComposeAccessoryViewOwner.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = GPGMailComposeAccessoryViewOwner.m; path = Source/GPGMailComposeAccessoryViewOwner.m; sourceTree = ""; }; - 559A80700838E9B10052F47C /* GPGMailPatching.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = GPGMailPatching.m; path = Source/GPGMailPatching.m; sourceTree = ""; }; - 559A80710838E9B10052F47C /* GPGMailPreferences.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = GPGMailPreferences.m; path = Source/GPGMailPreferences.m; sourceTree = ""; }; - 559A80720838E9B10052F47C /* GPGMEAdditions.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = GPGMEAdditions.m; path = Source/GPGMEAdditions.m; sourceTree = ""; }; - 559A80730838E9B10052F47C /* GPGComposeWindowStorePoser.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = GPGComposeWindowStorePoser.m; path = Source/GPGComposeWindowStorePoser.m; sourceTree = ""; }; - 559A80740838E9B10052F47C /* GPGMessageViewerAccessoryViewOwner.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = GPGMessageViewerAccessoryViewOwner.m; path = Source/GPGMessageViewerAccessoryViewOwner.m; sourceTree = ""; }; - 559A80750838E9B10052F47C /* Message+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = "Message+GPGMail.m"; path = "Source/Message+GPGMail.m"; sourceTree = ""; }; - 559A80760838E9B10052F47C /* MessageBody+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = "MessageBody+GPGMail.m"; path = "Source/MessageBody+GPGMail.m"; sourceTree = ""; }; - 559A80770838E9B10052F47C /* MessageContentController+GPGMail.m */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 30; name = "MessageContentController+GPGMail.m"; path = "Source/MessageContentController+GPGMail.m"; sourceTree = ""; }; - 559A80780838E9B10052F47C /* MimeBody+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = "MimeBody+GPGMail.m"; path = "Source/MimeBody+GPGMail.m"; sourceTree = ""; }; - 559A80790838E9B10052F47C /* MimePart+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = "MimePart+GPGMail.m"; path = "Source/MimePart+GPGMail.m"; sourceTree = ""; }; - 559A807A0838E9B10052F47C /* NSData+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = "NSData+GPGMail.m"; path = "Source/NSData+GPGMail.m"; sourceTree = ""; }; - 559A807B0838E9B10052F47C /* NSString+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = "NSString+GPGMail.m"; path = "Source/NSString+GPGMail.m"; sourceTree = ""; }; - 559A808B0838EA1C0052F47C /* ComposeBack+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = "ComposeBack+GPGMail.m"; path = "Source/ComposeBack+GPGMail.m"; sourceTree = ""; }; - 559A808C0838EA1C0052F47C /* MessageContentController+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = "MessageContentController+GPGMail.m"; path = "Source/MessageContentController+GPGMail.m"; sourceTree = ""; }; - 559A808D0838EA1C0052F47C /* MessageEditor+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = "MessageEditor+GPGMail.m"; path = "Source/MessageEditor+GPGMail.m"; sourceTree = ""; }; - 559A808E0838EA1C0052F47C /* MessageHeaders+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = "MessageHeaders+GPGMail.m"; path = "Source/MessageHeaders+GPGMail.m"; sourceTree = ""; }; - 559A808F0838EA1C0052F47C /* MessageKeychainManager+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = "MessageKeychainManager+GPGMail.m"; path = "Source/MessageKeychainManager+GPGMail.m"; sourceTree = ""; }; - 559A80900838EA1C0052F47C /* NSPreferences_GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = NSPreferences_GPGMail.m; path = Source/NSPreferences_GPGMail.m; sourceTree = ""; }; - 559A80910838EA1C0052F47C /* TableViewManager+GPGMail.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = "TableViewManager+GPGMail.m"; path = "Source/TableViewManager+GPGMail.m"; sourceTree = ""; }; - 559A80990838EA560052F47C /* GPGMailTextAttachmentPoser.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = GPGMailTextAttachmentPoser.m; path = Source/GPGMailTextAttachmentPoser.m; sourceTree = ""; }; - 559A80A40838EB270052F47C /* clear.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = clear.tiff; path = Resources/clear.tiff; sourceTree = ""; }; - 559A80A50838EB270052F47C /* encrypted.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = encrypted.tiff; path = Resources/encrypted.tiff; sourceTree = ""; }; - 559A80A60838EB270052F47C /* signed.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = signed.tiff; path = Resources/signed.tiff; sourceTree = ""; }; - 559A80A70838EB270052F47C /* unsigned.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = unsigned.tiff; path = Resources/unsigned.tiff; sourceTree = ""; }; - 559A80AD0838EB450052F47C /* clear-Tiger.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = "clear-Tiger.tiff"; path = "Resources/clear-Tiger.tiff"; sourceTree = ""; }; - 559A80AE0838EB450052F47C /* encrypted-Tiger.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = "encrypted-Tiger.tiff"; path = "Resources/encrypted-Tiger.tiff"; sourceTree = ""; }; - 559A80AF0838EB450052F47C /* signed-Tiger.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = "signed-Tiger.tiff"; path = "Resources/signed-Tiger.tiff"; sourceTree = ""; }; - 559A80B00838EB450052F47C /* unsigned-Tiger.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = "unsigned-Tiger.tiff"; path = "Resources/unsigned-Tiger.tiff"; sourceTree = ""; }; - 559A80B50838EBA60052F47C /* CheckMark.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = CheckMark.tiff; path = Resources/CheckMark.tiff; sourceTree = ""; }; - 559A80B60838EBA60052F47C /* EmptyImage.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = EmptyImage.tiff; path = Resources/EmptyImage.tiff; sourceTree = ""; }; - 559A80B70838EBA60052F47C /* InvalidBadge.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = InvalidBadge.tif; path = Resources/InvalidBadge.tif; sourceTree = ""; }; - 559A80B80838EBA60052F47C /* questionMark.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = questionMark.tiff; path = Resources/questionMark.tiff; sourceTree = ""; }; - 559A80B90838EBA60052F47C /* RefreshNormal.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = RefreshNormal.tiff; path = Resources/RefreshNormal.tiff; sourceTree = ""; }; - 559A80BA0838EBA60052F47C /* RefreshPressed.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = RefreshPressed.tiff; path = Resources/RefreshPressed.tiff; sourceTree = ""; }; - 559A80BB0838EBA60052F47C /* SmallAlert12.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = SmallAlert12.tiff; path = Resources/SmallAlert12.tiff; sourceTree = ""; }; - 559A80BC0838EBA60052F47C /* SmallAlert16.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = SmallAlert16.tiff; path = Resources/SmallAlert16.tiff; sourceTree = ""; }; - 559A80BD0838EBA60052F47C /* triangle.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = triangle.tiff; path = Resources/triangle.tiff; sourceTree = ""; }; - 559A80BE0838EBA60052F47C /* ValidBadge.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = ValidBadge.tif; path = Resources/ValidBadge.tif; sourceTree = ""; }; - 559A80DD0838ECB40052F47C /* GPGMail.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = GPGMail.tiff; path = Resources/GPGMail.tiff; sourceTree = ""; }; - 559A80DE0838ECB40052F47C /* GPGMailPreferences.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = GPGMailPreferences.tiff; path = Resources/GPGMailPreferences.tiff; sourceTree = ""; }; - 559A80E10838ECEF0052F47C /* GPGMail32.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = GPGMail32.tiff; path = Resources/GPGMail32.tiff; sourceTree = ""; }; - 559A80E60838ED590052F47C /* GPGMailBundle.defaults */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; name = GPGMailBundle.defaults; path = Resources/GPGMailBundle.defaults; sourceTree = ""; }; - 559A80E80838ED6D0052F47C /* KeyServers.plist */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.plist; name = KeyServers.plist; path = Plists/KeyServers.plist; sourceTree = ""; }; - 559A812B0838EEFD0052F47C /* AddressBook.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AddressBook.framework; path = /System/Library/Frameworks/AddressBook.framework; sourceTree = ""; }; - 559A812C0838EEFD0052F47C /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = ""; }; - 559A812D0838EEFD0052F47C /* Message.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Message.framework; path = /System/Library/Frameworks/Message.framework; sourceTree = ""; }; - 559A812E0838EEFD0052F47C /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = /System/Library/Frameworks/Security.framework; sourceTree = ""; }; - 559A812F0838EEFD0052F47C /* System.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = System.framework; path = /System/Library/Frameworks/System.framework; sourceTree = ""; }; - 559A81860838F3C30052F47C /* Info-GPGMail.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "Info-GPGMail.plist"; path = "Plists/Info-GPGMail.plist"; sourceTree = ""; }; - 559A819C0838F87E0052F47C /* Installer.applescript */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.applescript; name = Installer.applescript; path = Release/Installer.applescript; sourceTree = ""; }; - 8D5B49B6048680CD000E48DA /* GPGMail.mailbundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = GPGMail.mailbundle; sourceTree = BUILT_PRODUCTS_DIR; }; - AC48AFAB11CDEE0300393D2C /* MacGPGME.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MacGPGME.framework; path = Dependencies/MacGPGME/build/Release/MacGPGME.framework; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 8D5B49B3048680CD000E48DA /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 1B1949E911CC52880092B810 /* MacGPGME.framework in Frameworks */, - 8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */, - 559A81300838EEFD0052F47C /* AddressBook.framework in Frameworks */, - 559A81310838EEFD0052F47C /* Carbon.framework in Frameworks */, - 559A81320838EEFD0052F47C /* Message.framework in Frameworks */, - 559A81330838EEFD0052F47C /* Security.framework in Frameworks */, - 559A81340838EEFD0052F47C /* System.framework in Frameworks */, - 1BF51A70108FCD1900AC8268 /* ExceptionHandling.framework in Frameworks */, - 1B6B7DF411CD1C600055F528 /* Sparkle.framework in Frameworks */, - AC48AFAC11CDEE0300393D2C /* MacGPGME.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 089C166AFE841209C02AAC07 /* GPGMail */ = { - isa = PBXGroup; - children = ( - 1B1949D011CC52090092B810 /* Dependencies */, - 1B19488311CC50AA0092B810 /* Release */, - 1BCEE1E211CC051500488D19 /* LICENSE.txt */, - 08FB77AFFE84173DC02AAC07 /* GPG */, - 559A7FB30838E4200052F47C /* Documentation */, - 559A80310838E6870052F47C /* Headers */, - 559A806B0838E96A0052F47C /* Classes */, - 32C88E010371C26100C91783 /* Other Sources */, - 089C167CFE841241C02AAC07 /* Resources */, - 559A81860838F3C30052F47C /* Info-GPGMail.plist */, - 089C1671FE841209C02AAC07 /* Frameworks and Libraries */, - 19C28FB8FE9D52D311CA2CBB /* Products */, - 1BF51A6F108FCD1900AC8268 /* ExceptionHandling.framework */, - ); - name = GPGMail; - sourceTree = ""; - }; - 089C1671FE841209C02AAC07 /* Frameworks and Libraries */ = { - isa = PBXGroup; - children = ( - 1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */, - 1058C7AEFEA557BF11CA2CBB /* Other Frameworks */, - ); - name = "Frameworks and Libraries"; - sourceTree = ""; - }; - 089C167CFE841241C02AAC07 /* Resources */ = { - isa = PBXGroup; - children = ( - 1B6B7E5111CD24440055F528 /* dsa_pub.pem */, - 1B194B9A11CC57820092B810 /* GPGKeyDownload.nib */, - 1B194B9C11CC57820092B810 /* GPGMailCompose.nib */, - 1B194B9E11CC57820092B810 /* GPGMailComposeTiger.nib */, - 1B194BA011CC57820092B810 /* GPGMailPreferences.nib */, - 1B194BA211CC57820092B810 /* GPGMenu.nib */, - 1B194BA411CC57820092B810 /* GPGMessageViewerAccessoryView.nib */, - 1B194B8D11CC57250092B810 /* InfoPlist.strings */, - 1B194B5911CC55A80092B810 /* GPGMail.strings */, - 1B19481A11CC43450092B810 /* GPG */, - 559A80DC0838EC770052F47C /* Images */, - 559A80E60838ED590052F47C /* GPGMailBundle.defaults */, - 559A80E80838ED6D0052F47C /* KeyServers.plist */, - ); - name = Resources; - sourceTree = ""; - }; - 08FB77AFFE84173DC02AAC07 /* GPG */ = { - isa = PBXGroup; - children = ( - 559A7FA90838E4040052F47C /* GPGHandler.h */, - 559A7FAA0838E4040052F47C /* GPGPassphraseController.h */, - 559A7FAB0838E4040052F47C /* GPGProgressIndicatorController.h */, - 559A7FAC0838E4170052F47C /* GPGHandler.m */, - 559A7FAD0838E4170052F47C /* GPGPassphraseController.m */, - 559A7FAE0838E4170052F47C /* GPGProgressIndicatorController.m */, - ); - name = GPG; - sourceTree = ""; - }; - 1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */ = { - isa = PBXGroup; - children = ( - 1B6B7DF311CD1C600055F528 /* Sparkle.framework */, - 559A812B0838EEFD0052F47C /* AddressBook.framework */, - 559A812C0838EEFD0052F47C /* Carbon.framework */, - 559A812D0838EEFD0052F47C /* Message.framework */, - 559A812E0838EEFD0052F47C /* Security.framework */, - 559A812F0838EEFD0052F47C /* System.framework */, - 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */, - AC48AFAB11CDEE0300393D2C /* MacGPGME.framework */, - ); - name = "Linked Frameworks"; - sourceTree = ""; - }; - 1058C7AEFEA557BF11CA2CBB /* Other Frameworks */ = { - isa = PBXGroup; - children = ( - 089C167FFE841241C02AAC07 /* AppKit.framework */, - 089C1672FE841209C02AAC07 /* Foundation.framework */, - ); - name = "Other Frameworks"; - sourceTree = ""; - }; - 19C28FB8FE9D52D311CA2CBB /* Products */ = { - isa = PBXGroup; - children = ( - 8D5B49B6048680CD000E48DA /* GPGMail.mailbundle */, - ); - name = Products; - sourceTree = ""; - }; - 1B19481A11CC43450092B810 /* GPG */ = { - isa = PBXGroup; - children = ( - 1B194B8011CC56EE0092B810 /* GPGProgressIndicatorController.nib */, - 1B194B7311CC56980092B810 /* GPGPassphrase.nib */, - 1B194B6611CC56520092B810 /* GPG.strings */, - 559A7F820838E2B30052F47C /* GPG.tiff */, - ); - name = GPG; - sourceTree = ""; - }; - 1B19488311CC50AA0092B810 /* Release */ = { - isa = PBXGroup; - children = ( - 559A819C0838F87E0052F47C /* Installer.applescript */, - ); - name = Release; - sourceTree = ""; - }; - 1B1949D011CC52090092B810 /* Dependencies */ = { - isa = PBXGroup; - children = ( - 1B1949D711CC52350092B810 /* MacGPGME.xcodeproj */, - ); - name = Dependencies; - sourceTree = ""; - }; - 1B1949D811CC52350092B810 /* Products */ = { - isa = PBXGroup; - children = ( - 1B1949E111CC52350092B810 /* MacGPGME.framework */, - 1B1949E311CC52350092B810 /* GPGTester.app */, - 1B1949E511CC52350092B810 /* MacGPGMETesting.octest */, - ); - name = Products; - sourceTree = ""; - }; - 32C88E010371C26100C91783 /* Other Sources */ = { - isa = PBXGroup; - children = ( - 32DBCF630370AF2F00C91783 /* GPGMail_Prefix.pch */, - ); - name = "Other Sources"; - sourceTree = ""; - }; - 5506922D0CD5108D00CA0BA2 /* Leopard */ = { - isa = PBXGroup; - children = ( - 5506922E0CD510D300CA0BA2 /* clear-Leopard.tiff */, - 5506922F0CD510D300CA0BA2 /* encrypted-Leopard.tiff */, - 550692300CD510D300CA0BA2 /* signed-Leopard.tiff */, - 550692310CD510D300CA0BA2 /* unsigned-Leopard.tiff */, - ); - name = Leopard; - sourceTree = ""; - }; - 559A7FB30838E4200052F47C /* Documentation */ = { - isa = PBXGroup; - children = ( - 559A7FB50838E4590052F47C /* DeveloperInfo.txt */, - 559A7FB60838E4590052F47C /* HISTORY */, - 558D4E270D3A695F0007E29A /* rfc2440.txt */, - 559A7FB70838E4590052F47C /* rfc3156.txt */, - 558D4E280D3A695F0007E29A /* rfc4880.txt */, - 559A7FB80838E4590052F47C /* ToDoList.txt */, - ); - name = Documentation; - sourceTree = ""; - }; - 559A80310838E6870052F47C /* Headers */ = { - isa = PBXGroup; - children = ( - 559A80330838E6A80052F47C /* NSPreferences.h */, - 559A80340838E6AD0052F47C /* Message */, - 559A80350838E6B50052F47C /* Mail */, - 559A80580838E8300052F47C /* GPGMessageViewerAccessoryViewOwner.h */, - 559A80620838E8890052F47C /* ComposeBackEnd+GPGMail.h */, - 559A80520838E8300052F47C /* GPGMailBundle.h */, - 559A80530838E8300052F47C /* GPGMailComposeAccessoryViewOwner.h */, - 559A80570838E8300052F47C /* GPGMessageEditorPoser.h */, - 559A80540838E8300052F47C /* GPGMailPatching.h */, - 559A80550838E8300052F47C /* GPGMailPreferences.h */, - 559A80510838E8300052F47C /* GPGKeyDownload.h */, - 559A805A0838E8300052F47C /* Message+GPGMail.h */, - 559A805B0838E8300052F47C /* MessageBody+GPGMail.h */, - 559A80650838E8890052F47C /* MessageEditor+GPGMail.h */, - 559A80660838E8890052F47C /* MessageHeaders+GPGMail.h */, - 559A805C0838E8300052F47C /* MessageViewer+GPGMail.h */, - 559A805D0838E8300052F47C /* MimeBody+GPGMail.h */, - 559A805E0838E8300052F47C /* MimePart+GPGMail.h */, - 559A805F0838E8300052F47C /* NSData+GPGMail.h */, - 559A80680838E8890052F47C /* NSPreferences_GPGMail.h */, - 559A80600838E8300052F47C /* NSString+GPGMail.h */, - 559A80690838E8890052F47C /* TableViewManager+GPGMail.h */, - 559A80630838E8890052F47C /* GPGMailTextAttachmentPoser.h */, - 559A80640838E8890052F47C /* MessageContentController+GPGMail.h */, - 559A80670838E8890052F47C /* MessageKeychainManager+GPGMail.h */, - 559A80560838E8300052F47C /* GPGMEAdditions.h */, - 558C390E0CF9720500998406 /* NSObject+GPGMail.h */, - 558C39990CFAB0DF00998406 /* GPGMessageSignature.h */, - ); - name = Headers; - sourceTree = ""; - }; - 559A80340838E6AD0052F47C /* Message */ = { - isa = PBXGroup; - children = ( - 1B194BEA11CC58BC0092B810 /* OutgoingMessage.h */, - 559A80360838E70E0052F47C /* Message.h */, - 559A80370838E70E0052F47C /* MessageBody.h */, - 559A80380838E70E0052F47C /* MessageHeaders.h */, - 559A80390838E70E0052F47C /* MessageKeychainManager.h */, - 559A803A0838E70E0052F47C /* MessageStore.h */, - 559A803B0838E70E0052F47C /* MessageWriter.h */, - 559A803C0838E70E0052F47C /* MimeBody.h */, - 559A803D0838E70E0052F47C /* MimePart.h */, - 559A803E0838E70E0052F47C /* MimeTextAttachment.h */, - 559A803F0838E70E0052F47C /* MutableMessageHeaders.h */, - 559A80400838E70E0052F47C /* NSData+Message.h */, - 559A80410838E70E0052F47C /* NSDataMessageStore.h */, - 559A80420838E70E0052F47C /* NSString+Message.h */, - 559A80430838E70E0052F47C /* ObjectCache.h */, - 559A80440838E70E0052F47C /* SafeObserver.h */, - 558D75310CDD033A00BA33EC /* Subdata.h */, - ); - name = Message; - sourceTree = ""; - }; - 559A80350838E6B50052F47C /* Mail */ = { - isa = PBXGroup; - children = ( - 558D74410CDCD67800BA33EC /* ColorBackgroundView.h */, - 559A80450838E7420052F47C /* ComposeBackEnd.h */, - 559A80460838E7420052F47C /* MailTextAttachment.h */, - 559A80470838E74F0052F47C /* MailToolbarItem.h */, - 559A80480838E7830052F47C /* MessageContentController.h */, - 559A80490838E7830052F47C /* MessageEditor.h */, - 559A804A0838E7830052F47C /* MessageHeaderDisplay.h */, - 559A804B0838E7830052F47C /* MessageViewer.h */, - 559A804C0838E7830052F47C /* MVComposeAccessoryViewOwner.h */, - 559A804D0838E7830052F47C /* MVMailBundle.h */, - 559A804F0838E7950052F47C /* OptionalView.h */, - 559A804E0838E7830052F47C /* TableViewManager.h */, - 5582E2A40CE61FCE001ADBF3 /* ComposeHeaderView.h */, - 1B859A6E109331A6009E469A /* MVTerminationHandler.h */, - ); - name = Mail; - sourceTree = ""; - }; - 559A806B0838E96A0052F47C /* Classes */ = { - isa = PBXGroup; - children = ( - 1B45A53B11CC98AB00ED4663 /* MessageViewer+GPGMail.m */, - 559A80720838E9B10052F47C /* GPGMEAdditions.m */, - 559A806E0838E9B10052F47C /* GPGMailBundle.m */, - 559A806F0838E9B10052F47C /* GPGMailComposeAccessoryViewOwner.m */, - 559A80730838E9B10052F47C /* GPGComposeWindowStorePoser.m */, - 559A80710838E9B10052F47C /* GPGMailPreferences.m */, - 559A80740838E9B10052F47C /* GPGMessageViewerAccessoryViewOwner.m */, - 559A80750838E9B10052F47C /* Message+GPGMail.m */, - 559A80760838E9B10052F47C /* MessageBody+GPGMail.m */, - 559A808D0838EA1C0052F47C /* MessageEditor+GPGMail.m */, - 559A808E0838EA1C0052F47C /* MessageHeaders+GPGMail.m */, - 559A80770838E9B10052F47C /* MessageContentController+GPGMail.m */, - 559A80780838E9B10052F47C /* MimeBody+GPGMail.m */, - 559A80790838E9B10052F47C /* MimePart+GPGMail.m */, - 559A807A0838E9B10052F47C /* NSData+GPGMail.m */, - 559A808B0838EA1C0052F47C /* ComposeBack+GPGMail.m */, - 559A807B0838E9B10052F47C /* NSString+GPGMail.m */, - 559A80910838EA1C0052F47C /* TableViewManager+GPGMail.m */, - 559A80900838EA1C0052F47C /* NSPreferences_GPGMail.m */, - 559A80990838EA560052F47C /* GPGMailTextAttachmentPoser.m */, - 559A806D0838E9B10052F47C /* GPGKeyDownload.m */, - 559A80700838E9B10052F47C /* GPGMailPatching.m */, - 559A808F0838EA1C0052F47C /* MessageKeychainManager+GPGMail.m */, - 559A808C0838EA1C0052F47C /* MessageContentController+GPGMail.m */, - 558C399A0CFAB0DF00998406 /* GPGMessageSignature.m */, - ); - name = Classes; - sourceTree = ""; - }; - 559A80A30838EAFA0052F47C /* Panther */ = { - isa = PBXGroup; - children = ( - 559A80A40838EB270052F47C /* clear.tiff */, - 559A80A50838EB270052F47C /* encrypted.tiff */, - 559A80A60838EB270052F47C /* signed.tiff */, - 559A80A70838EB270052F47C /* unsigned.tiff */, - ); - name = Panther; - sourceTree = ""; - }; - 559A80AC0838EB2D0052F47C /* Tiger */ = { - isa = PBXGroup; - children = ( - 559A80AD0838EB450052F47C /* clear-Tiger.tiff */, - 559A80AE0838EB450052F47C /* encrypted-Tiger.tiff */, - 559A80AF0838EB450052F47C /* signed-Tiger.tiff */, - 559A80B00838EB450052F47C /* unsigned-Tiger.tiff */, - ); - name = Tiger; - sourceTree = ""; - }; - 559A80DC0838EC770052F47C /* Images */ = { - isa = PBXGroup; - children = ( - 559A80A30838EAFA0052F47C /* Panther */, - 559A80AC0838EB2D0052F47C /* Tiger */, - 5506922D0CD5108D00CA0BA2 /* Leopard */, - 559A80B70838EBA60052F47C /* InvalidBadge.tif */, - 559A80BE0838EBA60052F47C /* ValidBadge.tif */, - 559A80B90838EBA60052F47C /* RefreshNormal.tiff */, - 559A80BA0838EBA60052F47C /* RefreshPressed.tiff */, - 559A80BD0838EBA60052F47C /* triangle.tiff */, - 559A80DD0838ECB40052F47C /* GPGMail.tiff */, - 559A80DE0838ECB40052F47C /* GPGMailPreferences.tiff */, - 559A80B50838EBA60052F47C /* CheckMark.tiff */, - 559A80B80838EBA60052F47C /* questionMark.tiff */, - 559A80BB0838EBA60052F47C /* SmallAlert12.tiff */, - 559A80BC0838EBA60052F47C /* SmallAlert16.tiff */, - 559A80B60838EBA60052F47C /* EmptyImage.tiff */, - 559A80E10838ECEF0052F47C /* GPGMail32.tiff */, - ); - name = Images; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 8D5B49AC048680CD000E48DA /* GPGMail */ = { - isa = PBXNativeTarget; - buildConfigurationList = 55541F4C085AE6B100548474 /* Build configuration list for PBXNativeTarget "GPGMail" */; - buildPhases = ( - 8D5B49AF048680CD000E48DA /* Resources */, - 8D5B49B1048680CD000E48DA /* Sources */, - 8D5B49B3048680CD000E48DA /* Frameworks */, - 1BB95C80105EE80C00A4CAE4 /* CopyFiles */, - 1B45A52111CC977700ED4663 /* CopyFiles */, - ); - buildRules = ( - 552507E90BAD561900466016 /* PBXBuildRule */, - ); - comments = "Old working:\nheader_search_path ..\nlibrary_style static\nother_linker_flags -force_flat_namespace -undefined suppress \nmacosx deployment target: default\n\n-weak_framework MacGPGME -bundle_loader /Applications/Mail.app/Contents/MacOS/Mail -undefined dynamic_lookup\n"; - dependencies = ( - 1B45A51C11CC973700ED4663 /* PBXTargetDependency */, - ); - name = GPGMail; - productInstallPath = "$(HOME)/Library/Bundles"; - productName = GPGMail; - productReference = 8D5B49B6048680CD000E48DA /* GPGMail.mailbundle */; - productType = "com.apple.product-type.bundle"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 089C1669FE841209C02AAC07 /* Project object */ = { - isa = PBXProject; - buildConfigurationList = 55541F56085AE6B100548474 /* Build configuration list for PBXProject "GPGMail" */; - compatibilityVersion = "Xcode 2.4"; - hasScannedForEncodings = 1; - knownRegions = ( - English, - Japanese, - French, - German, - fi, - Italian, - ko, - Spanish, - Danish, - Dutch, - Swedish, - ); - mainGroup = 089C166AFE841209C02AAC07 /* GPGMail */; - projectDirPath = ""; - projectReferences = ( - { - ProductGroup = 1B1949D811CC52350092B810 /* Products */; - ProjectRef = 1B1949D711CC52350092B810 /* MacGPGME.xcodeproj */; - }, - ); - projectRoot = ""; - targets = ( - 8D5B49AC048680CD000E48DA /* GPGMail */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXReferenceProxy section */ - 1B1949E111CC52350092B810 /* MacGPGME.framework */ = { - isa = PBXReferenceProxy; - fileType = wrapper.framework; - path = MacGPGME.framework; - remoteRef = 1B1949E011CC52350092B810 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 1B1949E311CC52350092B810 /* GPGTester.app */ = { - isa = PBXReferenceProxy; - fileType = wrapper.application; - path = GPGTester.app; - remoteRef = 1B1949E211CC52350092B810 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 1B1949E511CC52350092B810 /* MacGPGMETesting.octest */ = { - isa = PBXReferenceProxy; - fileType = wrapper.cfbundle; - path = MacGPGMETesting.octest; - remoteRef = 1B1949E411CC52350092B810 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; -/* End PBXReferenceProxy section */ - -/* Begin PBXResourcesBuildPhase section */ - 8D5B49AF048680CD000E48DA /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 559A7F830838E2B30052F47C /* GPG.tiff in Resources */, - 559A80A80838EB270052F47C /* clear.tiff in Resources */, - 559A80A90838EB270052F47C /* encrypted.tiff in Resources */, - 559A80AA0838EB270052F47C /* signed.tiff in Resources */, - 559A80AB0838EB270052F47C /* unsigned.tiff in Resources */, - 559A80B10838EB450052F47C /* clear-Tiger.tiff in Resources */, - 559A80B20838EB450052F47C /* encrypted-Tiger.tiff in Resources */, - 559A80B30838EB450052F47C /* signed-Tiger.tiff in Resources */, - 559A80B40838EB450052F47C /* unsigned-Tiger.tiff in Resources */, - 559A80BF0838EBA60052F47C /* CheckMark.tiff in Resources */, - 559A80C00838EBA60052F47C /* EmptyImage.tiff in Resources */, - 559A80C10838EBA60052F47C /* InvalidBadge.tif in Resources */, - 559A80C20838EBA60052F47C /* questionMark.tiff in Resources */, - 559A80C30838EBA60052F47C /* RefreshNormal.tiff in Resources */, - 559A80C40838EBA60052F47C /* RefreshPressed.tiff in Resources */, - 559A80C50838EBA60052F47C /* SmallAlert12.tiff in Resources */, - 559A80C60838EBA60052F47C /* SmallAlert16.tiff in Resources */, - 559A80C70838EBA60052F47C /* triangle.tiff in Resources */, - 559A80C80838EBA60052F47C /* ValidBadge.tif in Resources */, - 559A80DF0838ECB40052F47C /* GPGMail.tiff in Resources */, - 559A80E00838ECB40052F47C /* GPGMailPreferences.tiff in Resources */, - 559A80E20838ECEF0052F47C /* GPGMail32.tiff in Resources */, - 559A80E70838ED590052F47C /* GPGMailBundle.defaults in Resources */, - 559FD1250BBC428000C8FE50 /* KeyServers.plist in Resources */, - 550692320CD510D300CA0BA2 /* clear-Leopard.tiff in Resources */, - 550692330CD510D300CA0BA2 /* encrypted-Leopard.tiff in Resources */, - 550692340CD510D300CA0BA2 /* signed-Leopard.tiff in Resources */, - 550692350CD510D300CA0BA2 /* unsigned-Leopard.tiff in Resources */, - 1BCEE1E311CC051500488D19 /* LICENSE.txt in Resources */, - 1B194B5B11CC55A80092B810 /* GPGMail.strings in Resources */, - 1B194B6811CC56520092B810 /* GPG.strings in Resources */, - 1B194B7511CC56980092B810 /* GPGPassphrase.nib in Resources */, - 1B194B8211CC56EE0092B810 /* GPGProgressIndicatorController.nib in Resources */, - 1B194B8F11CC57250092B810 /* InfoPlist.strings in Resources */, - 1B194BA611CC57820092B810 /* GPGKeyDownload.nib in Resources */, - 1B194BA711CC57820092B810 /* GPGMailCompose.nib in Resources */, - 1B194BA811CC57820092B810 /* GPGMailComposeTiger.nib in Resources */, - 1B194BA911CC57820092B810 /* GPGMailPreferences.nib in Resources */, - 1B194BAA11CC57820092B810 /* GPGMenu.nib in Resources */, - 1B194BAB11CC57820092B810 /* GPGMessageViewerAccessoryView.nib in Resources */, - 1B6B7E5211CD24440055F528 /* dsa_pub.pem in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 8D5B49B1048680CD000E48DA /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 1B02F86810676C6700791927 /* GPGHandler.m in Sources */, - 1BED92F81079529C00D22B4C /* GPGMailBundle.m in Sources */, - 1BED934A1079563500D22B4C /* GPGMEAdditions.m in Sources */, - 1BED9357107957E700D22B4C /* GPGMailPreferences.m in Sources */, - 1BED93611079583400D22B4C /* GPGPassphraseController.m in Sources */, - 1BED936A107958C200D22B4C /* GPGMailPatching.m in Sources */, - 1BED936B107958C700D22B4C /* NSString+GPGMail.m in Sources */, - 1BED936C107958C800D22B4C /* NSData+GPGMail.m in Sources */, - 1BED93851079597600D22B4C /* NSPreferences_GPGMail.m in Sources */, - 1BED946F1079755200D22B4C /* ComposeBack+GPGMail.m in Sources */, - 1BED94C61079EADE00D22B4C /* MessageEditor+GPGMail.m in Sources */, - 1BED95871079FE6200D22B4C /* GPGMailComposeAccessoryViewOwner.m in Sources */, - 1B3433F7107AC35300F590EF /* MessageKeychainManager+GPGMail.m in Sources */, - 1B343416107AC48C00F590EF /* GPGMessageSignature.m in Sources */, - 1B343417107AC49200F590EF /* Message+GPGMail.m in Sources */, - 1B343418107AC49400F590EF /* MessageBody+GPGMail.m in Sources */, - 1B343419107AC49F00F590EF /* MessageHeaders+GPGMail.m in Sources */, - 1B34341A107AC4A200F590EF /* MimeBody+GPGMail.m in Sources */, - 1B34341B107AC4A400F590EF /* MimePart+GPGMail.m in Sources */, - 1B343446107B359400F590EF /* GPGMessageViewerAccessoryViewOwner.m in Sources */, - 1B343483107B399400F590EF /* MessageContentController+GPGMail.m in Sources */, - 1B3434A2107B3AFB00F590EF /* GPGKeyDownload.m in Sources */, - 1B3434BB107B42CC00F590EF /* MessageContentController+GPGMail.m in Sources */, - 1B141AA410800EA8007BE344 /* GPGProgressIndicatorController.m in Sources */, - 1BAA17EA108E8E7500FBC3E4 /* TableViewManager+GPGMail.m in Sources */, - 1B45A53C11CC98AB00ED4663 /* MessageViewer+GPGMail.m in Sources */, - 1B648B5111D1081A00807F9A /* GPGMailTextAttachmentPoser.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 1B45A51C11CC973700ED4663 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "Build and Install"; - targetProxy = 1B45A51B11CC973700ED4663 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 1B194B5911CC55A80092B810 /* GPGMail.strings */ = { - isa = PBXVariantGroup; - children = ( - 1B194B5A11CC55A80092B810 /* English */, - 1B194B5C11CC55B40092B810 /* Dutch */, - 1B194B5D11CC55C20092B810 /* Danish */, - 1B194B5E11CC55D60092B810 /* Italian */, - 1B194B5F11CC55D90092B810 /* Spanish */, - 1B194B6011CC55DC0092B810 /* Swedish */, - 1B194B6111CC55EA0092B810 /* French */, - 1B194B6211CC55EC0092B810 /* German */, - 1B194B6311CC56130092B810 /* fi */, - 1B194B6411CC56260092B810 /* Japanese */, - 1B194B6511CC56290092B810 /* ko */, - ); - name = GPGMail.strings; - sourceTree = ""; - }; - 1B194B6611CC56520092B810 /* GPG.strings */ = { - isa = PBXVariantGroup; - children = ( - 1B194B6711CC56520092B810 /* English */, - 1B194B6911CC56600092B810 /* Dutch */, - 1B194B6A11CC56650092B810 /* Danish */, - 1B194B6B11CC56670092B810 /* Italian */, - 1B194B6C11CC566A0092B810 /* Spanish */, - 1B194B6D11CC566C0092B810 /* Swedish */, - 1B194B6E11CC566E0092B810 /* French */, - 1B194B6F11CC56700092B810 /* German */, - 1B194B7011CC56720092B810 /* fi */, - 1B194B7111CC56750092B810 /* Japanese */, - 1B194B7211CC56770092B810 /* ko */, - ); - name = GPG.strings; - sourceTree = ""; - }; - 1B194B7311CC56980092B810 /* GPGPassphrase.nib */ = { - isa = PBXVariantGroup; - children = ( - 1B194B7411CC56980092B810 /* English */, - 1B194B7611CC56A50092B810 /* Dutch */, - 1B194B7711CC56AB0092B810 /* Danish */, - 1B194B7811CC56AE0092B810 /* Italian */, - 1B194B7911CC56B20092B810 /* Spanish */, - 1B194B7A11CC56B50092B810 /* Swedish */, - 1B194B7B11CC56BF0092B810 /* French */, - 1B194B7C11CC56C10092B810 /* German */, - 1B194B7D11CC56C30092B810 /* fi */, - 1B194B7E11CC56C60092B810 /* Japanese */, - 1B194B7F11CC56C80092B810 /* ko */, - ); - name = GPGPassphrase.nib; - sourceTree = ""; - }; - 1B194B8011CC56EE0092B810 /* GPGProgressIndicatorController.nib */ = { - isa = PBXVariantGroup; - children = ( - 1B194B8111CC56EE0092B810 /* English */, - 1B194B8311CC56F40092B810 /* Dutch */, - 1B194B8411CC56F80092B810 /* Danish */, - 1B194B8511CC56FB0092B810 /* Italian */, - 1B194B8611CC56FE0092B810 /* Spanish */, - 1B194B8711CC57010092B810 /* Swedish */, - 1B194B8811CC57030092B810 /* French */, - 1B194B8911CC57040092B810 /* German */, - 1B194B8A11CC57060092B810 /* fi */, - 1B194B8B11CC57080092B810 /* Japanese */, - 1B194B8C11CC570A0092B810 /* ko */, - ); - name = GPGProgressIndicatorController.nib; - sourceTree = ""; - }; - 1B194B8D11CC57250092B810 /* InfoPlist.strings */ = { - isa = PBXVariantGroup; - children = ( - 1B194B8E11CC57250092B810 /* English */, - 1B194B9011CC572E0092B810 /* Dutch */, - 1B194B9111CC572F0092B810 /* Danish */, - 1B194B9211CC57320092B810 /* Italian */, - 1B194B9311CC57370092B810 /* Spanish */, - 1B194B9411CC57390092B810 /* Swedish */, - 1B194B9511CC573B0092B810 /* French */, - 1B194B9611CC573D0092B810 /* German */, - 1B194B9711CC573E0092B810 /* fi */, - 1B194B9811CC57400092B810 /* Japanese */, - 1B194B9911CC57420092B810 /* ko */, - ); - name = InfoPlist.strings; - sourceTree = ""; - }; - 1B194B9A11CC57820092B810 /* GPGKeyDownload.nib */ = { - isa = PBXVariantGroup; - children = ( - 1B194B9B11CC57820092B810 /* English */, - 1B194BAC11CC57C40092B810 /* Dutch */, - 1B194BAD11CC57C70092B810 /* Danish */, - 1B194BAE11CC57C90092B810 /* Italian */, - 1B194BAF11CC57CD0092B810 /* Spanish */, - 1B194BB011CC57D00092B810 /* Swedish */, - 1B194BB111CC57D20092B810 /* French */, - 1B194BB211CC57D40092B810 /* German */, - 1B194BB311CC57D50092B810 /* fi */, - 1B194BB411CC57D70092B810 /* Japanese */, - 1B194BB511CC57DA0092B810 /* ko */, - ); - name = GPGKeyDownload.nib; - sourceTree = ""; - }; - 1B194B9C11CC57820092B810 /* GPGMailCompose.nib */ = { - isa = PBXVariantGroup; - children = ( - 1B194B9D11CC57820092B810 /* English */, - 1B194BB611CC57E10092B810 /* Dutch */, - 1B194BB711CC57E30092B810 /* Danish */, - 1B194BB811CC57E50092B810 /* Italian */, - 1B194BB911CC57F00092B810 /* Spanish */, - 1B194BBA11CC57F40092B810 /* Swedish */, - 1B194BBB11CC57F60092B810 /* French */, - 1B194BBC11CC57F70092B810 /* German */, - 1B194BBD11CC57F90092B810 /* fi */, - 1B194BBE11CC57FC0092B810 /* Japanese */, - 1B194BBF11CC58000092B810 /* ko */, - ); - name = GPGMailCompose.nib; - sourceTree = ""; - }; - 1B194B9E11CC57820092B810 /* GPGMailComposeTiger.nib */ = { - isa = PBXVariantGroup; - children = ( - 1B194B9F11CC57820092B810 /* English */, - 1B194BC011CC58080092B810 /* Dutch */, - 1B194BC111CC580A0092B810 /* Danish */, - 1B194BC211CC580C0092B810 /* Italian */, - 1B194BC311CC580E0092B810 /* Spanish */, - 1B194BC411CC58110092B810 /* Swedish */, - 1B194BC511CC58140092B810 /* French */, - 1B194BC611CC58150092B810 /* German */, - 1B194BC711CC58180092B810 /* fi */, - 1B194BC811CC581A0092B810 /* Japanese */, - 1B194BC911CC581C0092B810 /* ko */, - ); - name = GPGMailComposeTiger.nib; - sourceTree = ""; - }; - 1B194BA011CC57820092B810 /* GPGMailPreferences.nib */ = { - isa = PBXVariantGroup; - children = ( - 1B194BA111CC57820092B810 /* English */, - 1B194BCA11CC58220092B810 /* Dutch */, - 1B194BCB11CC58240092B810 /* Danish */, - 1B194BCC11CC58270092B810 /* Italian */, - 1B194BCD11CC582A0092B810 /* Spanish */, - 1B194BCE11CC582E0092B810 /* Swedish */, - 1B194BCF11CC58300092B810 /* French */, - 1B194BD011CC58320092B810 /* German */, - 1B194BD111CC58330092B810 /* fi */, - 1B194BD211CC58360092B810 /* Japanese */, - 1B194BD311CC58370092B810 /* ko */, - ); - name = GPGMailPreferences.nib; - sourceTree = ""; - }; - 1B194BA211CC57820092B810 /* GPGMenu.nib */ = { - isa = PBXVariantGroup; - children = ( - 1B194BA311CC57820092B810 /* English */, - 1B194BD411CC58420092B810 /* Dutch */, - 1B194BD511CC58460092B810 /* Danish */, - 1B194BD611CC58490092B810 /* Italian */, - 1B194BD711CC584B0092B810 /* Spanish */, - 1B194BD811CC584F0092B810 /* Swedish */, - 1B194BD911CC58510092B810 /* French */, - 1B194BDA11CC58530092B810 /* German */, - 1B194BDB11CC58540092B810 /* fi */, - 1B194BDC11CC58570092B810 /* Japanese */, - 1B194BDD11CC58580092B810 /* ko */, - ); - name = GPGMenu.nib; - sourceTree = ""; - }; - 1B194BA411CC57820092B810 /* GPGMessageViewerAccessoryView.nib */ = { - isa = PBXVariantGroup; - children = ( - 1B194BA511CC57820092B810 /* English */, - 1B194BDE11CC58610092B810 /* Dutch */, - 1B194BDF11CC58640092B810 /* Danish */, - 1B194BE011CC58660092B810 /* Italian */, - 1B194BE111CC58690092B810 /* Spanish */, - 1B194BE211CC586C0092B810 /* Swedish */, - 1B194BE311CC586D0092B810 /* French */, - 1B194BE411CC58700092B810 /* German */, - 1B194BE511CC58710092B810 /* fi */, - 1B194BE611CC58740092B810 /* Japanese */, - 1B194BE711CC58760092B810 /* ko */, - ); - name = GPGMessageViewerAccessoryView.nib; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 55541F4D085AE6B100548474 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; - ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; - BUNDLE_LOADER = /Applications/Mail.app/Contents/MacOS/Mail; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 52; - FRAMEWORK_SEARCH_PATHS = ( - "$(BUILT_PRODUCTS_DIR)/../Release", - "$(FRAMEWORK_SEARCH_PATHS_QUOTED_1)", - "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", - ); - FRAMEWORK_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/Frameworks\""; - FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)/Dependencies/MacGPGME/build/Release\""; - GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_FIX_AND_CONTINUE = YES; - GCC_GENERATE_DEBUGGING_SYMBOLS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = GPGMail_Prefix.pch; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - HEADER_SEARCH_PATHS = /usr/local/include; - INFOPLIST_FILE = "Plists/Info-GPGMail.plist"; - INSTALL_PATH = "$(HOME)/Library/Mail/Bundles"; - LIBRARY_SEARCH_PATHS = ( - /usr/local/lib, - "$(LIBRARY_SEARCH_PATHS)", - ); - MACOSX_DEPLOYMENT_TARGET = 10.6; - OTHER_LDFLAGS = ( - "-force_flat_namespace", - "-undefined", - suppress, - ); - PREBINDING = NO; - PRODUCT_NAME = GPGMail; - VALID_ARCHS = "x86_64 i386"; - VERSIONING_SYSTEM = "apple-generic"; - WRAPPER_EXTENSION = mailbundle; - }; - name = Debug; - }; - 55541F4E085AE6B100548474 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = ( - x86_64, - i386, - ); - BUNDLE_LOADER = /Applications/Mail.app/Contents/MacOS/Mail; - COPY_PHASE_STRIP = YES; - CURRENT_PROJECT_VERSION = 52; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - FRAMEWORK_SEARCH_PATHS = ( - "$(BUILT_PRODUCTS_DIR)/../Release", - "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", - "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_2)", - ); - FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)/Frameworks\""; - FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_2 = "\"$(SRCROOT)/Dependencies/MacGPGME/build/Release\""; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = GPGMail_Prefix.pch; - GCC_VERSION = com.apple.compilers.llvm.clang.1_0; - HEADER_SEARCH_PATHS = Dependencies; - INFOPLIST_FILE = "Plists/Info-GPGMail.plist"; - INSTALL_PATH = "$(HOME)/Library/Mail/Bundles"; - LIBRARY_SEARCH_PATHS = "$(LIBRARY_SEARCH_PATHS)"; - MACOSX_DEPLOYMENT_TARGET = 10.6; - OTHER_LDFLAGS = ( - "-force_flat_namespace", - "-undefined", - suppress, - ); - PRODUCT_NAME = GPGMail; - VALID_ARCHS = "x86_64 i386"; - VERSIONING_SYSTEM = "apple-generic"; - WRAPPER_EXTENSION = mailbundle; - }; - name = Release; - }; - 55541F57085AE6B100548474 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; - ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; - DEPLOYMENT_LOCATION = NO; - GCC_VERSION = com.apple.compilers.llvm.clang.1_0; - MACOSX_DEPLOYMENT_TARGET = 10.6; - OTHER_LDFLAGS = ( - "-undefined", - dynamic_lookup, - ); - SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk"; - SYMROOT = build; - VALID_ARCHS = "x86_64 i386"; - }; - name = Debug; - }; - 55541F58085AE6B100548474 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; - ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; - DEPLOYMENT_LOCATION = NO; - GCC_VERSION = com.apple.compilers.llvm.clang.1_0; - HEADER_SEARCH_PATHS = Dependencies/MacGPGME; - MACOSX_DEPLOYMENT_TARGET = 10.6; - OTHER_LDFLAGS = ( - "-undefined", - dynamic_lookup, - ); - SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk"; - SYMROOT = build; - VALID_ARCHS = "x86_64 i386"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 55541F4C085AE6B100548474 /* Build configuration list for PBXNativeTarget "GPGMail" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 55541F4D085AE6B100548474 /* Debug */, - 55541F4E085AE6B100548474 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 55541F56085AE6B100548474 /* Build configuration list for PBXProject "GPGMail" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 55541F57085AE6B100548474 /* Debug */, - 55541F58085AE6B100548474 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 089C1669FE841209C02AAC07 /* Project object */; -} diff --git a/GPGMail/GPGMail_Prefix.pch b/GPGMail/GPGMail_Prefix.pch deleted file mode 100644 index c204cb3d..00000000 --- a/GPGMail/GPGMail_Prefix.pch +++ /dev/null @@ -1,31 +0,0 @@ -#ifdef __OBJC__ -#import -#import -#import -#endif - -extern void instrumentObjcMessageSends(BOOL enabled); -extern int GPGMailLoggingLevel; - -#if defined(MAC_OS_X_VERSION_10_6) - #if MAC_OS_X_VERSION_MIN_REQUIRED == MAC_OS_X_VERSION_10_6 - #ifdef __x86_64__ - #define SNOW_LEOPARD_64 - #endif - #define SNOW_LEOPARD - #elif MAC_OS_X_VERSION_MIN_REQUIRED == MAC_OS_X_VERSION_10_5 - #define LEOPARD - #elif MAC_OS_X_VERSION_MIN_REQUIRED == MAC_OS_X_VERSION_10_4 - #define TIGER - #endif -#elif defined(MAC_OS_X_VERSION_10_5) - #if MAC_OS_X_VERSION_MIN_REQUIRED == MAC_OS_X_VERSION_10_5 - #define LEOPARD - #elif MAC_OS_X_VERSION_MIN_REQUIRED == MAC_OS_X_VERSION_10_4 - #define TIGER - #endif -#elif defined(MAC_OS_X_VERSION_10_4) - #if MAC_OS_X_VERSION_MIN_REQUIRED == MAC_OS_X_VERSION_10_4 - #define TIGER - #endif -#endif diff --git a/GPGMail/Makefile b/GPGMail/Makefile deleted file mode 100644 index 6cb699b6..00000000 --- a/GPGMail/Makefile +++ /dev/null @@ -1,5 +0,0 @@ -all: install - -install: - xcodebuild -project GPGMail.xcodeproj -target GPGMail -configuration Release build - diff --git a/GPGMail/Plists/Info-GPGMail.plist b/GPGMail/Plists/Info-GPGMail.plist deleted file mode 100644 index 8323927d..00000000 --- a/GPGMail/Plists/Info-GPGMail.plist +++ /dev/null @@ -1,51 +0,0 @@ - - - - - SUPublicDSAKeyFile - dsa_pub.pem - SUFeedURL - http://gpgmail.leftandleaving.com/appcast.xml - SUEnableAutomaticChecks - - CFBundleDevelopmentRegion - English - CFBundleDocumentTypes - - CFBundleExecutable - GPGMail - CFBundleGetInfoHTML - <A HREF="http://gpgmail.org/">GPGMail</A> version 1.2.3 (v62), Copyright 2000-2010, St&eacute;phane Corth&eacute;sy. - CFBundleGetInfoString - GPGMail version 1.2.3 (v62), Copyright 2000-2010, Stéphane Corthésy. - CFBundleIconFile - GPGMail - CFBundleIdentifier - ch.sente.gpgmail - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - GPGMail - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.2.3 - CFBundleSignature - ???? - CFBundleVersion - 62 - NSPrincipalClass - GPGMailBundle - SupportedPluginCompatibilityUUIDs - - E71BD599-351A-42C5-9B63-EA5C47F7CE8E - B842F7D0-4D81-4DDF-A672-129CA5B32D57 - 0CB5F2A0-A173-4809-86E3-9317261F1745 - 2F0CF6F9-35BA-4812-9CB2-155C0FDB9B0F - 225E0A48-2CDB-44A6-8D99-A9BB8AF6BA04 - B3F3FC72-315D-4323-BE85-7AB76090224D - 2610F061-32C6-4C6B-B90A-7A3102F9B9C8 - 99BB3782-6C16-4C6F-B910-25ED1C1CB38B - - - diff --git a/GPGMail/Plists/KeyServers.plist b/GPGMail/Plists/KeyServers.plist deleted file mode 100644 index 86646d3d..00000000 --- a/GPGMail/Plists/KeyServers.plist +++ /dev/null @@ -1,20 +0,0 @@ -( - "sks-keyservers.net", - "wwwkeys.pgp.net", - "ldap://keyserver.pgp.com", - "wwwkeys.at.pgp.net", - "wwwkeys.ch.pgp.net", - "wwwkeys.cz.pgp.net", - "wwwkeys.de.pgp.net", - "wwwkeys.dk.pgp.net", - "wwwkeys.es.pgp.net", - "wwwkeys.eu.pgp.net", - "wwwkeys.nl.pgp.net", - "wwwkeys.pl.pgp.net", - "wwwkeys.uk.pgp.net", - "wwwkeys.us.pgp.net", - "keyserver.linux.it", - "pgp.uni-mainz.de", - "minsky.surfnet.nl", - "pgp.mit.edu" -) \ No newline at end of file diff --git a/GPGMail/Release/Installer.applescript b/GPGMail/Release/Installer.applescript deleted file mode 100644 index 0598f753..00000000 --- a/GPGMail/Release/Installer.applescript +++ /dev/null @@ -1,133 +0,0 @@ -(* - * Mail bundle installer - * - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - *) -(* - * Welcome to GPGMail Installer - * - * This application will install GPGMail in the folder - * Library/Mail/Bundles of your home folder, - * and remove existing copies of GPGMail. - *) -(* -WARNING: does not support a space in mounted disk image path! -Due to the inability of AppleScript to find a "FileVaulted" home directory -or even a networked one, we need to use shell to do the work. -*) - -copy my (system attribute "sysv") to system_string - --- 4176 = 0x1050 -if (system_string < 4176) then - display dialog - "GPGMail is only compatible with 10.5 (Leopard)." buttons {"Quit"} with icon caution -else - local emailAddress - local packageName - set emailAddress to "gpgmail@sente.ch" - set packageName to "GPGMail.mailbundle" - try - local destinationFolder - local homeFolder - set homeFolder to (((system attribute "HOME") as string) & "/") - set destinationFolder to homeFolder & "Library/Mail/Bundles/" - tell application "Finder" - local sourceFolder - local aFolder - local myPlist - local myCommand - set sourceFolder to container of (path to me) - - -- First we check wether Mail is still running - if application process "Mail" exists then - tell me - display dialog - "You need to quit Mail first." buttons {"Cancel Install", "Quit Mail"} - default button 2 - with icon caution - end tell - if the button returned of the result is "Cancel Install" then tell me to quit - tell application "Mail" to quit - end if - - -- Then we create the folder hierarchy ~/Library/Mail/Bundles - set myCommand to "mkdir -p '" & destinationFolder & "'" - tell current application to do shell script myCommand - - set BundleCompatibilityVersion to "3" - -- Now we enable bundles for Mail - -- PROBLEM: command 'defaults' is available only if user installed BSD package! - set myPlist to (homeFolder & "Library/Preferences/com.apple.mail.plist") - set myCommand to "'" & POSIX path of ((item "plistutil" of sourceFolder) as string) & "'" & " -write '" & myPlist & "' EnableBundles 1" - tell current application to do shell script myCommand - set myCommand to "'" & POSIX path of ((item "plistutil" of sourceFolder) as string) & "'" & " -write '" & myPlist & "' BundleCompatibilityVersion " & BundleCompatibilityVersion - tell current application to do shell script myCommand - - -- We move the old GPGMail.mailbundle to the trash - set myCommand to "test ! -e '" & destinationFolder & packageName & "' || test ! -e '" & homeFolder & ".Trash" & "' || mv '" & destinationFolder & packageName & "' '" & homeFolder & ".Trash/" & packageName & "-" & (current date) & "'" - tell current application to do shell script myCommand - -- and copy the new one to the right location - set myCommand to "cp -r '" & POSIX path of ((item packageName of sourceFolder) as string) & "' '" & destinationFolder & "'" - tell current application to do shell script myCommand - - -- We also remove bundles in other locations (/Library/Mail/Bundles) - set aFolder to path to "dlib" from local domain - if item "Mail" of aFolder exists then - set aFolder to item "Mail" of aFolder - if item "Bundles" of aFolder exists then - set aFolder to item "Bundles" of aFolder - if item packageName of aFolder exists then - move item packageName of aFolder to the trash - -- delete item packageName of aFolder - end if - end if - end if - - -- If there is an executable named post-install, then we execute it - if (item "post-install" of sourceFolder exists) then - set myCommand to "'" & POSIX path of ((item "post-install" of sourceFolder) as string) & "'" - tell current application to do shell script myCommand - end if - - end tell - display dialog (packageName & " has been successfully installed in " & (destinationFolder as string) & ".") - buttons {"Quit", "Launch Mail"} default button 2 - if not (the button returned of the result is "Quit") then - tell application "Mail" to run - end if - on error errorText number errorNumber - if not (errorNumber is equal to -128) then -- User cancelled - display dialog - "Problem during the install of " & packageName & ": " & errorText & return & return & - "Proceed to manual install and send a bug report to " & emailAddress & - "." buttons {"Compose bug report", "Quit"} default button 2 with icon 2 - if not (the button returned of the result is "Quit") then - tell application "Mail" to mailto "mailto:" & emailAddress - end if - end if - end try -end if diff --git a/GPGMail/Release/Signing Tools/generate_keys.rb b/GPGMail/Release/Signing Tools/generate_keys.rb deleted file mode 100755 index b22439c7..00000000 --- a/GPGMail/Release/Signing Tools/generate_keys.rb +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/ruby -["dsaparam.pem", "dsa_priv.pem", "dsa_pub.pem"].each do |file| - if File.exist? file - puts "There's already a #{file} here! Move it aside or be more careful!" - end -end -`openssl dsaparam 2048 < /dev/urandom > dsaparam.pem` -`openssl gendsa dsaparam.pem -out dsa_priv.pem` -`openssl dsa -in dsa_priv.pem -pubout -out dsa_pub.pem` -`rm dsaparam.pem` -puts "\nGenerated private and public keys: dsa_priv.pem and dsa_pub.pem.\n -BACK UP YOUR PRIVATE KEY AND KEEP IT SAFE!\n -If you lose it, your users will be unable to upgrade!\n" \ No newline at end of file diff --git a/GPGMail/Release/Signing Tools/sign_update.rb b/GPGMail/Release/Signing Tools/sign_update.rb deleted file mode 100755 index 6d03e2ef..00000000 --- a/GPGMail/Release/Signing Tools/sign_update.rb +++ /dev/null @@ -1,7 +0,0 @@ -#!/usr/bin/ruby -if ARGV.length < 2 - puts "Usage: ruby sign_update.rb update_archive private_key" - exit -end - -puts `openssl dgst -sha1 -binary < "#{ARGV[0]}" | openssl dgst -dss1 -sign "#{ARGV[1]}" | openssl enc -base64` \ No newline at end of file diff --git a/GPGMail/Release/appcast.xml b/GPGMail/Release/appcast.xml deleted file mode 100644 index ff20b925..00000000 --- a/GPGMail/Release/appcast.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - GPGMail Changelog - http://gpgmail.leftandleaving.com/appcast.xml - Most recent changes with links to updates. - en - - Version 2.0 (2 bugs fixed; 3 new features) - - http://you.com/app/2.0.html - - Sat, 19 Jan 2010 18:04:11 +0200 - - - - \ No newline at end of file diff --git a/GPGMail/Release/dsa_pub.pem b/GPGMail/Release/dsa_pub.pem deleted file mode 100644 index 1b51830c..00000000 --- a/GPGMail/Release/dsa_pub.pem +++ /dev/null @@ -1,20 +0,0 @@ ------BEGIN PUBLIC KEY----- -MIIDOzCCAi0GByqGSM44BAEwggIgAoIBAQDTOheW+hpVKyrCiHc2Rq2pzOP3sMDh -j9ffFwvCpObbpqYuPrqH0x7faXU9G7HEboMkcxrKAwTZlprsiX0Xprjuxt05jFOv -AIIh3ZHdvi78demnYONjUslWvrIKCgxm04zutI4admfyCzsoSRQSJeN2hnLk4rHe -DhaOfL0cPnM+sp4q4HCkMq2yWsMLJCW0zdqqrQZdGJ93WEbrbrkKXrKYOJRpNtJj -nm42JnH3SLpqhJAnHuWGrnmw71VRCCCGOSxu0TwNvooVZjzfrFmLJku3lbnK/2d/ -uN13uTkPjAaa4TjGC5oWm2BGZOv7FUJabP5HAyw22OSBrojjSAO7axJRAhUA4ezN -Yb02o+NYbsd/Hh1PsXPhYCsCggEACJwKv0BMgW6l/jb34Yc7nvqWhLwYLzUm79RP -slHWDQjkussddfdy1ONeBnvPqFKNlvSFlj3IjBM3coB3XOtoPx9qQy/c17eMGgYt -WnURRcA9zR7Q+lD/tRkBlHG9vLFwtRNdKm/jTScMIWq5YwZW25qJReNLayIx/D23 -Exc/IwFfQBoHqNPpAoEr6d4mMfwfHpxqqocoM1P2a/HYm5112bdEMxUKuLNx0pLG -/Dwy0CkdIpsNPEyzsll+DVCfJINNvZHF/OdbGYdkJg+H5ELBKbm1XGDQOzLTC8s6 -1Rp1JkI/qGEMhQFpmRb0stabc7zLa+T0WUAwrUC6KsYxo0pj7gOCAQYAAoIBAQCJ -P2Z+XoPz+FC/NrXgeMjEfxHK7Zd9HLcMB9nFHL0OUF6Pg243tDgnb4N6TCHHtv/s -w0Q4f66EBu1V2WX3/VICRkQBfUnKXOHGhluc/r0kpm9ew5RP68VQlTZVHDALN6e6 -aOPjDDcIondKt6zSaiU5eHIsfAPgu9vcl1mLC+MYfOW3rmO55tFrVsA4mehExtVZ -1N32sUNeY7PXsMovGybLxCyKpWjSoK19Awh07pjBBv+djK/cTttm3MLYjySvUfmR -1djSzVk5Z76A+Omp8nwawDHREsukgP+VtIyuWRIoCUy8DKDQgi3MO18WcGXIYaFI -zHvy/HM0UiunCXMcl4p/ ------END PUBLIC KEY----- diff --git a/GPGMail/Resources/CheckMark.tiff b/GPGMail/Resources/CheckMark.tiff deleted file mode 100644 index a6826435..00000000 Binary files a/GPGMail/Resources/CheckMark.tiff and /dev/null differ diff --git a/GPGMail/Resources/Danish.lproj/GPGKeyDownload.nib/classes.nib b/GPGMail/Resources/Danish.lproj/GPGKeyDownload.nib/classes.nib deleted file mode 100644 index abce7a58..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGKeyDownload.nib/classes.nib +++ /dev/null @@ -1,75 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - cancel - id - gpgSearchKeys - id - import - id - search - id - - CLASS - GPGKeyDownload - LANGUAGE - ObjC - OUTLETS - - checkBoxMatrix - NSMatrix - context - id - emailCell - NSFormCell - importButton - NSButton - importProgressField - NSTextField - importProgressIndicator - NSProgressIndicator - outlineView - NSOutlineView - searchButton - NSButton - searchProgressField - NSTextField - searchProgressIndicator - NSProgressIndicator - serverComboBox - NSComboBox - subtitleField - NSTextField - tabView - NSTabView - titleField - NSTextField - - SUPERCLASS - NSWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Danish.lproj/GPGKeyDownload.nib/info.nib b/GPGMail/Resources/Danish.lproj/GPGKeyDownload.nib/info.nib deleted file mode 100644 index 6f44b455..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGKeyDownload.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 10 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Danish.lproj/GPGKeyDownload.nib/keyedobjects.nib b/GPGMail/Resources/Danish.lproj/GPGKeyDownload.nib/keyedobjects.nib deleted file mode 100644 index 42cdaf8d..00000000 Binary files a/GPGMail/Resources/Danish.lproj/GPGKeyDownload.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Danish.lproj/GPGMail.strings b/GPGMail/Resources/Danish.lproj/GPGMail.strings deleted file mode 100644 index c2474280..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGMail.strings +++ /dev/null @@ -1,239 +0,0 @@ -{ -/* Passphrase panel titles */ -"MESSAGE_AUTHENTICATION_TITLE" = "Bekræftelse af beskedens ægthed"; -"MESSAGE_DECRYPTION_PASSPHRASE_TITLE" = "Dekryptering af besked"; - -/**/ -"DECRYPTING" = "Dekryptering..."; -"ENCRYPTING" = "Kryptering..."; - -/* submenu title */ -"PGP_MENU" = "PGP"; -/* submenu title */ -"PGP_KEYS_MENU" = "PGP-nøgler"; - -/* submenu items */ -"DECRYPT_MENU" = "Dekrypter"; -"AUTHENTICATE_MENU" = "Bekræft ægthed"; -"ENCRYPT_MENU" = "Krypter ny besked"; -"SIGN_MENU" = "Signer ny besked"; - -/* Description of version prefixed with */ -"VERSION: %@" = "Version: %@"; - -/* PGP preferences panel name */ -"PGP_PREFERENCES" = "PGP"; - -/* Alert title and message */ -"MSG_DECRYPTION_ALERT_TITLE_NOT_SIGNED" = "Dekryptering af besked"; -"DECRYPTED_MSG_NOT_SIGNED" = "Besked er krypteret; men ikke signeret. Dens ægthed kan ikke bekræftes."; -"MSG_ENCRYPTION_ALERT_TITLE" = "PGP-kryptering mislykkedes"; -"MSG_DECRYPTION_ALERT_TITLE" = "PGP-dekryptering mislykkedes"; -"MSG_SIGNING_ALERT_TITLE" = "PGP-signering mislykkedes"; -"UNSUPPORTED_ENCRYPTION_FORMAT" = "GPGMail kan ikke dekryptere beskeder med denne slags kryptering."; -"DATA_NOT_AVAILABLE" = "Indholdet af beskeden er midlertidigt utilgængeligt."; - -/* Informational alert title and message */ -"AUTHENTICATION_TITLE_OK" = "PGP-bekræftelse af ægthed"; - -/**/ -"AUTHENTICATION_TITLE_FAILED" = "PGP-bekræftelse af ægthed mislykkedes"; -"TRY_AGAIN" = "Prøv igen"; -"CANCEL_DELIVERY" = "Afbryd"; -"CANCEL_DECRYPTION" = "Afbryd"; - -/**/ -"AUTHENTICATION_TITLE_UNSIGNED" = "PGP bekræftelse af ægthed"; -"UNSIGNED_PGP_MESSAGE" = "Denne besked er ikke signeret med PGP."; - -/* Toolbar item titles */ -"DECRYPT_ITEM" = "Dekrypter"; -"AUTHENTICATE_ITEM" = "Bekræft ægthed"; -"MAKE_ENCRYPTED_ITEM" = "Krypter"; -"MAKE_CLEAR_ITEM" = "Lav til klar tekst"; -"MAKE_UNSIGNED_ITEM" = "Fjern signering"; -"MAKE_SIGNED_ITEM" = "Signer"; -"ENCRYPTED_ITEM" = "Krypteret"; -"CLEAR_ITEM" = "I klar tekst"; -"SIGNED_ITEM" = "Signeret"; -"UNSIGNED_ITEM" = "Usigneret"; - -/* Toolbar item tooltips */ -"DECRYPT_ITEM_TOOLTIP" = "Dekryptere PGP_krypteret besked"; -"AUTHENTICATE_ITEM_TOOLTIP" = "Bekræft ægthed af PGP-signeret besked"; -"MAKE_CLEAR_ITEM_TOOLTIP" = "Tryk for at sende en besked i klar tekst"; -"MAKE_ENCRYPTED_ITEM_TOOLTIP" = "Tryk for at benytte PGP-kryptering"; -"MAKE_UNSIGNED_ITEM_TOOLTIP" = "Tryk for at sende en besked uden PGP-bekræftelse af ægthed"; -"MAKE_SIGNED_ITEM_TOOLTIP" = "Tryk for at benytte PGP-bekræftelse af ægthed"; -"ENCRYPTED_ITEM_TOOLTIP" = "Besked sendes krypteret; tryk for at sende som klar tekst"; -"CLEAR_ITEM_TOOLTIP" = "Besked sendes som klar tekst; tryk for at kryptere med PGP"; -"SIGNED_ITEM_TOOLTIP" = "Besked sendes med PGP-signering; klik for at sende uden PGGP-bekræftelse af ægthed"; -"UNSIGNED_ITEM_TOOLTIP" = "Besked vil ikke få PGP-signering; klik for at bruge PGP-bekræftelse af ægthed"; - -/* Signature information */ -"Bad policy!" = "Dårlig politik! "; // Followed by a list of policy URLs -"Policy: " = "Politik: "; // Followed by a list of policy URLs -"Signed on %@" = "Signeret d. %@"; // Param is a date, whose format is set by SIGNATURE_CREATION_DATE_FORMAT -"SIGNATURE_CREATION_DATE_FORMAT" = "%c"; // See NSCalendarDate documentation for format -"No signature creation date available" = "Ingen signeringsdato tilgængelig"; -"Key fingerprint: %@" = "Fingeraftryk for nøgle: %@"; -"Key ID: 0x%@" = "Nøgle ID: 0x%@"; -"No key fingerprint/ID available" = "Intet tilgængeligt fingeraftryk/ID til nøgle"; -"Validity: %@" = "Gyldighed: %@"; // Param is the validity status string -"Signature expires on %@" = "Signatur udløber d. %@"; // Param is a date, whose format is set by SIGNATURE_EXPIRATION_DATE_FORMAT -"SIGNATURE_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Key expired on %@" = "Signatur udløb d. on %@"; // Param is a date, whose format is set by KEY_EXPIRATION_DATE_FORMAT -"KEY_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Signed by %@." = "Signeret af %@."; // Param is a userID -"Signature from %@ is bad!" = "Ugyldig signatur fra %@!"; // Param is a userID -"Signature is bad!" = "Dårlig signatur!"; -"Signature status error." = "Fejl i signaturstatus."; -"MISSING KEY %@." = "Manglende nøgle %@."; // Param is a key ID in hexadecimal -"Signature summary 0x%04x - Signature status %u." = "Ukendt fejl: signaturoversigt 0x%04x - signatur-status %u."; // Generic error message; first param is a hex status flag value, second is a decimal status value -"EXCEPTION: %@" = "Intern fejl: %@"; // Generic error message; param is a string (exception reason, maybe not localized) -"AUTHENTICATING" = "Kontrollerere PGP-signatur..."; -"UNTRUSTED RECIPIENTS" = "Ingen tillid til mindst én af nøglerne"; - -/* Title */ -/* Error messages */ -"GPGMAIL_CANNOT_WORK" = "GPGmail kan ikke arbejde, fordi dens hjælpeprogram ikke kan startes. Prøv at genstarte Mail, og hvis problemet fortsat findes, så send en besked til gpgmail@sente.ch"; -"GPGMAIL_CANNOT_WORK_HAS_GPG_%@_VERSION_%@_NEEDS_%@" = "GPGMail kan ikke arbejde. Den fandt GnuPG (%@) version %@; men den har brug for minimum version %@. Afslut Mail, installér en passende version af GnuPG (for eksempel fra MacGPG Project, http://macgpg.sourceforge.net/), genstart derpå Mail."; // First arg is path to gpg, second and third are version strings -"GPGMAIL_CANNOT_WORK_MISSING_GPG_%@_VERSION_%@" = "GPGMail kan ikke arbejde. Den fandt ingen GnuPG (%@) med versionsnummer højere end %@. Afslut Mail, installér en passende version af GnuPG (for eksempel fra MacGPG Project, http://macgpg.sourceforge.net/), genstart derpå Mail."; // First arg is path to gpg, second is version string -"INVALID_GPGMAIL_VERSION" = "Din version af GnuPG kan ikke arbejde sammen med din version af Mail."; /* Title of alert sheet */ -"NEEDS_COMPATIBLE_BUNDLE_VERSION" = "Du er nødt til at nedlaste og installere en version af GPGMail, der passer til din version af styresystem. Gå til http://gpgmail.org/ for at nedlaste den."; - -/* Validity */ -"VALIDITY: " = "gyldighed: "; -"Validity=0" = "ukendt"; -"Validity=1" = "udefineret"; -"Validity=2" = "aldrig"; -"Validity=3" = "marginal"; -"Validity=4" = "fuldstændig"; -"Validity=5" = "ultimativ"; - -/* Generic MacGPGME error messages */ -"GPGErrorCode=1" = "Generel fejl"; -"GPGErrorCode=8" = "Ugyldig signatur"; // Bad = dårlig eller ugyldig? -"GPGErrorCode=9" = "Ingen offentlig nøgle"; -"GPGErrorCode=10" = "Checksumsfejl"; -"GPGErrorCode=11" = "Dårlig kodefrase"; -"GPGErrorCode=15" = "Ugyldig rustning"; // Armor = rustning???? -"GPGErrorCode=17" = "Ingen hemmelig nøgle"; -"GPGErrorCode=31" = "Ugyldig kodefrase"; -"GPGErrorCode=40" = "Fejl ved nøgleserver"; -"GPGErrorCode=53" = "Ubrugelig offentlig nøgle"; -"GPGErrorCode=54" = "Ubrugelig hemmelig nøgle"; -"GPGErrorCode=55" = "Ugyldig værdi"; -"GPGErrorCode=58" = "Ingen data"; -"GPGErrorCode=69" = "Ikke indarbejdet"; -"GPGErrorCode=84" = "Algoritme ikke understøttet"; -"GPGErrorCode=94" = "Nøgle tilbagekaldt"; //revoked = tilbagekaldt? -"GPGErrorCode=99" = "Afbrudt"; -"GPGErrorCode=107" = "Tvetydigt navn"; -"GPGErrorCode=116" = "Uoverensstemmende politik"; //No policy match" -"GPGErrorCode=125" = "Forkert nøglebrug"; -"GPGErrorCode=150" = "Ugyldig maskine"; //engine = maskine??? -"GPGErrorCode=151" = "Ingen tillid til offentlig nøgle"; -"GPGErrorCode=152" = "Dekryptering fejlede"; -"GPGErrorCode=153" = "Nøgle udløbet"; -"GPGErrorCode=154" = "Signatur udløbet"; -"GPGErrorCode=16383" = "EOF"; - -/* Signature attachment filename (suffixed automatically by .sig) */ -"PGP_SIGNATURE_FILENAME" = "PGP"; - -/* Signature attachment content-description */ -"This is a digitally signed message part" = "OPEN/PGP-krypteret besked"; - -/* Version MIME part content description header */ -"CONTENT_DESCRIPTION_HEADER" = "Identifikation af PGP/MIME-version"; - -/* Encrypted attachment filename (suffixed automatically by .asc) */ -"PGP_ENCRYPTED_FILENAME" = "PGP"; - -/* Encrypted attachment content-description */ -"This is an encrypted message part" = "Dette er en krypteret del af beskeden"; - -/* Multiple-part description */ -"MULTIPART_ENCRYPTED_DESCRIPTION" = "Denne besked er krypteret med OpenPGP/MIME (RFC 2440/3156)"; -"MULTIPART_SIGNED_DESCRIPTION" = "Denne besked er signeret med OpenPGP/MIME (RFC 2440/3156)"; - -/* Tooltip for banner icons */ -"SIGNATURE_IS_GOOD" = "Signaturen er i orden; beskeden er ikke blevet ændret"; -"SIGNATURE_IS_NOT_GOOD" = "Signaturen er ikke i orden, beskeden er blevet ændret"; - -/* PGP Key Download panel */ -"PGP_SEARCH_KEYS_MENUITEM" = "PGP-nøglesøgning"; -"SEARCH" = "Søg"; -"CANCEL_SEARCH" = "Afbryd"; -"SEARCHING" = "Søger..."; -"NO_MATCHING_KEYS" = "Ingen matchende nøgle"; -"FOUND_%d_KEYS" = "Fandt %d matchende nøgle(r)"; -"DOWNLOAD" = "Nedlast"; -"DOWNLOADING" = "Nedlaster..."; -"DOWNLOADED" = "Nedlast og importer nøgle(r)"; -"SEARCH_KEYS_ON_SERVER" = "Søg efter PGP-nøgler på nøgleserver"; -"DOWNLOAD_KEYS_FROM_SERVER" = "Nedlast PGP-nøgler fra nøgleserver"; -"SEARCH_ERROR" = "Der opstod en fejl under søgning"; -"DOWNLOAD_ERROR" = "Der opstod en fejl under ledlastning"; -" (%u bits)" = " (%u bits)"; -", created on %@" = ", Dannet d. %@"; -", expires on %@" = ", udløber d. %@"; -", expired on %@" = ", udløb d. %@"; -"REVOKED_KEY - " = "Tilbagekaldt - "; // Prefixes found key description, when necessary; followed by keyID, userID, etc. - -/* Unmatched PGP keys for receipts - sheet */ -"MISSING_KEYS: DOWNLOAD" = "Nogle adresser har ikke nogen PGP-nøgle. Søg eftere nøgler?"; // Title -"UNMATCHED_ADDRESSES: %@" = "Disse e-postadresser har ingen PGP-nøgle:\n%@"; // Message -"SEARCH_MATCHING_KEYS" = "Søg"; // Default button -"SEND_IN_CLEAR" = "Send som klar tekst"; // Other button - -"INVALID_HASH_%@" = "Hash algoritmen '%@' tillades ikke af RFC3156."; -"GPGMAIL_VS_PGPMAIL" = "GPGMail kan ikke fungere, når PGPmail er installeret"; -"GPGMAIL_%@_VS_PGPMAIL_%@" = "Begge pakker tilbuder samme funktionalitet; men med forskellige maskiner, og kun én af dem kan være installeret. Du må fjerne enten '%@' eller '%@'."; -"QUIT" = "Slut"; -"CONTINUE_ANYWAY" = "Forsøg at fortsætte"; - -/* Composer accessory view header, under To:, CC:, Subject: */ -"PGP:" = "PGP:"; - -/* Key description in popups; prefixes key (actually, primary userID), when necessary; followed by keyID, userID, etc.*/ -"REVOKED_KEY:" = "Tilbagekaldt:"; -"EXPIRED_KEY:" = "Udløbet:"; -"DISABLED_KEY:" = "Slået fra:"; // Disabled = slået fra?? -"INVALID_KEY:" = "Ugyldig:"; - -/* UserID description in popups; prefixes userID, when necessary; followed by name, email, etc.*/ -"REVOKED_USER_ID:" = "Tilbagekaldt:"; -"INVALID_USER_ID:" = "Ugyldig:"; - -/* GPGMail exception reasons */ -"NO_VALID_PUBLIC_KEY" = "Der er ikke fundet nogen gyldig offentlig nøgle. Alle nøgler er enten udløbet, afbrudt eller tilbagekaldt."; // No valid public key has been found. They are all either expired, disabled or revoked."; // Could be displayed after encryption -"NO_VALID_PRIVATE_KEY" = "Der er ikke fundet nogen gyldig privat bøgle. Enten var der ikke valgt nogen, ellers var den valgte nøgle tilbagekaldt, slået fra eller udløbet."; // No valid personal key has been found. Either none was selected, or selected key is revoked, disabled or has expired."; // Could be displayed after encryption - -/* Alert when user has no PGP key */ -"NO PGP PRIVATE KEY - TITLE" = "Du har ingen PGP-nøgler. Du kan ikke bruge GPGMail til at kryptere eller signere beskeder."; -"NO PGP PRIVATE KEY - MESSAGE" = "Hvis du vil være i stand til at kryptere eller signere beskeder med GPGMail, skal du have en personlig PGP-nøgle. For at danne en PGP-nøgle, skal du nedlaste og installere MacGPGs GPG Keychain Access fra http://macgpg.sourceforge.net/"; - -/* Conflict resolution panel*/ -"" = "Mig"; -"" = "Ja"; -"" = "Nej"; -"" = "Altid"; -"" = "Aldrig"; -"" = "Accepterer"; - -/* Additional info describing key */ -"DISABLED_KEY_QUALIFIER" = "slået fra"; -"INVALID_KEY_QUALIFIER" = "ugyldig"; -"REVOKED_KEY_QUALIFIER" = "tilbagekaldt"; -"EXPIRED_KEY_QUALIFIER" = "udløbet"; -"CANNOT_ENCRYPT_KEY_QUALIFIER" = "cannot encrypt"; -"CANNOT_SIGN_KEY_QUALIFIER" = "cannot sign"; - -/* Additional info describing userID */ -"INVALID_USER_ID_QUALIFIER" = "ugyldig"; -"REVOKED_USER_ID_QUALIFIER" = "tilbagekaldt"; - -"COPY_MSG_URL_MENUITEM" = "Copy Message URL"; -} diff --git a/GPGMail/Resources/Danish.lproj/GPGMailCompose.nib/classes.nib b/GPGMail/Resources/Danish.lproj/GPGMailCompose.nib/classes.nib deleted file mode 100644 index 0162fc97..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGMailCompose.nib/classes.nib +++ /dev/null @@ -1,139 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - accessoryView - NSView - - SUPERCLASS - NSObject - - - ACTIONS - - gpgToggleSymetricEncryption - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - alertImageView - NSImageView - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - selectedPersonalKey - id - signSwitch - NSButton - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Danish.lproj/GPGMailCompose.nib/info.nib b/GPGMail/Resources/Danish.lproj/GPGMailCompose.nib/info.nib deleted file mode 100644 index 8a42a065..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGMailCompose.nib/info.nib +++ /dev/null @@ -1,22 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 123 - 27 - 199 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Danish.lproj/GPGMailCompose.nib/keyedobjects.nib b/GPGMail/Resources/Danish.lproj/GPGMailCompose.nib/keyedobjects.nib deleted file mode 100644 index 0f3f5684..00000000 Binary files a/GPGMail/Resources/Danish.lproj/GPGMailCompose.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Danish.lproj/GPGMailComposeTiger.nib/classes.nib b/GPGMail/Resources/Danish.lproj/GPGMailComposeTiger.nib/classes.nib deleted file mode 100644 index 079c9142..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGMailComposeTiger.nib/classes.nib +++ /dev/null @@ -1,134 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - OUTLETS - - _optionSwitch - NSButton - _primaryView - NSView - - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - signSwitch - NSButton - switchProtoMatrix - NSMatrix - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Danish.lproj/GPGMailComposeTiger.nib/info.nib b/GPGMail/Resources/Danish.lproj/GPGMailComposeTiger.nib/info.nib deleted file mode 100644 index 34312e23..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGMailComposeTiger.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 38 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Danish.lproj/GPGMailComposeTiger.nib/keyedobjects.nib b/GPGMail/Resources/Danish.lproj/GPGMailComposeTiger.nib/keyedobjects.nib deleted file mode 100644 index 18a5b3b1..00000000 Binary files a/GPGMail/Resources/Danish.lproj/GPGMailComposeTiger.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Danish.lproj/GPGMailPreferences.nib/classes.nib b/GPGMail/Resources/Danish.lproj/GPGMailPreferences.nib/classes.nib deleted file mode 100644 index 73d7680a..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGMailPreferences.nib/classes.nib +++ /dev/null @@ -1,186 +0,0 @@ - - - - - IBClasses - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - ACTIONS - - changeDefaultKey - id - changeLineWrapping - id - changePassphraseStrategy - id - changePassphraseTimeout - id - exportGPGMailConfiguration - id - flushCachedPassphrases - id - refreshKeys - id - toggleAlwaysEncryptMessages - id - toggleAlwaysSignMessages - id - toggleAuthenticateUnreadMessagesAutomatically - id - toggleAuthenticatesMessagesAutomatically - id - toggleAutomaticPersonalKeyChoice - id - toggleBCCRecipientsUse - id - toggleButtonsBehavior - id - toggleDecryptsMessagesAutomatically - id - toggleDecryptsUnreadMessagesAutomatically - id - toggleDisplayAccessoryView - id - toggleEncryptToSelf - id - toggleEncryptWhenPossible - id - toggleEncryptedReplyToEncryptedMessage - id - toggleExtendedInformation - id - toggleFilterKeys - id - toggleKeyRefresh - id - toggleOpenPGPMIME - id - toggleSMIME - id - toggleSeparatePGPOperations - id - toggleShowKeyInformation - id - toggleShowPassphrase - id - toggleShowUserIDs - id - toggleSignWhenEncrypting - id - toggleSignedReplyToSignedMessage - id - toggleSmartRules - id - toggleTrustAllKeys - id - - CLASS - GPGMailPreferences - LANGUAGE - ObjC - OUTLETS - - alwaysEncryptSwitchButton - NSButton - alwaysSignSwitchButton - NSButton - authenticateUnreadMessagesSwitchButton - NSButton - automaticallyAuthenticateMessagesSwitchButton - NSButton - automaticallyDecryptMessagesSwitchButton - NSButton - buttonsShowStateSwitchButton - NSButton - choosesPersonalKeyAccordingToAccountSwitchButton - NSButton - contactTextField - NSTextField - decryptUnreadMessagesSwitchButton - NSButton - disableSMIMESwitchButton - NSButton - displayButtonInComposeWindowSwitchButton - NSButton - encryptReplyToEncryptedMessageSwitchButton - NSButton - encryptToSelfSwitchButton - NSButton - encryptWhenAllKeysAvailableSwitchButton - NSButton - extendedInfoSwitchButton - NSButton - filtersKeysSwitchButton - NSButton - keyIdentifiersPopUpButton - NSPopUpButton - keyIdentifiersTableView - NSTableView - lineWrappingFormCell - NSFormCell - openPGPMIMESwitchButton - NSButton - passphraseStrategyMatrix - NSMatrix - passphraseTimeoutFormCell - NSFormCell - personalKeysPopUpButton - NSPopUpButton - refreshKeysOnVolumeChangeSwitchButton - NSButton - separateSignAndEncryptOperationsSwitchButton - NSButton - showUserIDsSwitchButton - NSButton - showsPassphraseSwitchButton - NSButton - signReplyToSignedMessageSwitchButton - NSButton - signWhenEncryptingSwitchButton - NSButton - trustAllKeysSwitchButton - NSButton - useBCCRecipientsSwitchButton - NSButton - useSmartRulesSwitchButton - NSButton - versionTextField - NSTextField - webSiteTextField - NSTextField - - SUPERCLASS - NSPreferencesModule - - - CLASS - NSPreferencesModule - LANGUAGE - ObjC - OUTLETS - - preferencesView - id - - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Danish.lproj/GPGMailPreferences.nib/info.nib b/GPGMail/Resources/Danish.lproj/GPGMailPreferences.nib/info.nib deleted file mode 100644 index 60c368f6..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGMailPreferences.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 9 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Danish.lproj/GPGMailPreferences.nib/keyedobjects.nib b/GPGMail/Resources/Danish.lproj/GPGMailPreferences.nib/keyedobjects.nib deleted file mode 100644 index da052173..00000000 Binary files a/GPGMail/Resources/Danish.lproj/GPGMailPreferences.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Danish.lproj/GPGMenu.nib/classes.nib b/GPGMail/Resources/Danish.lproj/GPGMenu.nib/classes.nib deleted file mode 100644 index 6ac982ef..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGMenu.nib/classes.nib +++ /dev/null @@ -1,57 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = { - gpgAuthenticate = id; - gpgChoosePersonalKeys = id; - gpgChoosePublicKeys = id; - gpgDecrypt = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - gpgChoosePersonalKey = id; - gpgChoosePublicKey = id; - gpgChoosePublicKeys = id; - gpgReloadPGPKeys = id; - gpgSearchKeys = id; - gpgToggleAutomaticPublicKeysChoice = id; - gpgToggleDisplayAllUserIDs = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleShowKeyInformation = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - mailTo = id; - }; - CLASS = GPGMailBundle; - LANGUAGE = ObjC; - OUTLETS = { - PGPMenu = NSMenu; - PGPViewMenu = NSMenu; - allUserIDsMenuItem = NSMenuItem; - authenticateMenuItem = NSMenuItem; - automaticPublicKeysMenuItem = NSMenuItem; - choosePublicKeysMenuItem = NSMenuItem; - decryptMenuItem = NSMenuItem; - defaultKey = id; - encryptsNewMessageMenuItem = NSMenuItem; - personalKeysMenuItem = NSMenuItem; - proxyServer = id; - signsNewMessageMenuItem = NSMenuItem; - symetricEncryptionMenuItem = NSMenuItem; - usesOnlyOpenPGPStyleMenuItem = NSMenuItem; - }; - SUPERCLASS = MVMailBundle; - }, - {CLASS = MVMailBundle; LANGUAGE = ObjC; SUPERCLASS = NSObject; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/Danish.lproj/GPGMenu.nib/info.nib b/GPGMail/Resources/Danish.lproj/GPGMenu.nib/info.nib deleted file mode 100644 index 0403d4ad..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGMenu.nib/info.nib +++ /dev/null @@ -1,24 +0,0 @@ - - - - - IBDocumentLocation - 84 120 356 278 0 0 1024 746 - IBEditorPositions - - 34 - 256 798 222 230 0 0 1680 1028 - 88 - 676 834 162 194 0 0 1680 1028 - - IBFramework Version - 437.0 - IBOpenObjects - - 34 - 88 - - IBSystem Version - 8B15 - - diff --git a/GPGMail/Resources/Danish.lproj/GPGMenu.nib/objects.nib b/GPGMail/Resources/Danish.lproj/GPGMenu.nib/objects.nib deleted file mode 100644 index a190c41b..00000000 Binary files a/GPGMail/Resources/Danish.lproj/GPGMenu.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/Danish.lproj/GPGMessageViewerAccessoryView.nib/classes.nib b/GPGMail/Resources/Danish.lproj/GPGMessageViewerAccessoryView.nib/classes.nib deleted file mode 100644 index 5c956adf..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGMessageViewerAccessoryView.nib/classes.nib +++ /dev/null @@ -1,112 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - authenticate - id - decrypt - id - gpgAuthenticate - id - gpgDecrypt - id - toggleSignatureExtraView - id - - CLASS - GPGMessageViewerAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - authenticationButton - NSButton - authenticationView - NSView - decryptedIconView - NSImageView - decryptedInfoView - NSView - decryptedMessageTextField - NSTextField - decryptionButton - NSButton - decryptionView - NSView - delegate - id - disclosureButton - NSButton - expirationAlertIconView - NSImageView - generalAlertIconView - NSImageView - policyAlertIconView - NSImageView - signatureBadPolicyAlertTextField - NSTextField - signatureCreationDateTextField - NSTextField - signatureExpirationDateTextField - NSTextField - signatureIconView - NSImageView - signatureKeyFingerprintTextField - NSTextField - signatureLowerView - NSView - signatureMessageTextField - NSTextField - signatureToggleButton - NSButton - signatureUpperView - NSView - signatureValidityTextField - NSTextField - signatureView - NSView - trustAlertIconView - NSImageView - userIDsPopDownButton - NSPopUpButton - - SUPERCLASS - NSObject - - - ACTIONS - - - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Danish.lproj/GPGMessageViewerAccessoryView.nib/info.nib b/GPGMail/Resources/Danish.lproj/GPGMessageViewerAccessoryView.nib/info.nib deleted file mode 100644 index 20a183c3..00000000 --- a/GPGMail/Resources/Danish.lproj/GPGMessageViewerAccessoryView.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - 18 - 11 - 75 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Danish.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib b/GPGMail/Resources/Danish.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib deleted file mode 100644 index dd887a13..00000000 Binary files a/GPGMail/Resources/Danish.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Danish.lproj/InfoPlist.strings b/GPGMail/Resources/Danish.lproj/InfoPlist.strings deleted file mode 100644 index 3b26f89d..00000000 --- a/GPGMail/Resources/Danish.lproj/InfoPlist.strings +++ /dev/null @@ -1,6 +0,0 @@ -/* Localized versions of Info.plist keys */ - -CFBundleShortVersionString = "1.2.3 (v62)"; -CFBundleGetInfoHTML = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -CFBundleGetInfoString = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -NSHumanReadableCopyright = "© Stéphane Corthésy, 2000-2008"; diff --git a/GPGMail/Resources/Dutch.lproj/GPGKeyDownload.nib/classes.nib b/GPGMail/Resources/Dutch.lproj/GPGKeyDownload.nib/classes.nib deleted file mode 100644 index abce7a58..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGKeyDownload.nib/classes.nib +++ /dev/null @@ -1,75 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - cancel - id - gpgSearchKeys - id - import - id - search - id - - CLASS - GPGKeyDownload - LANGUAGE - ObjC - OUTLETS - - checkBoxMatrix - NSMatrix - context - id - emailCell - NSFormCell - importButton - NSButton - importProgressField - NSTextField - importProgressIndicator - NSProgressIndicator - outlineView - NSOutlineView - searchButton - NSButton - searchProgressField - NSTextField - searchProgressIndicator - NSProgressIndicator - serverComboBox - NSComboBox - subtitleField - NSTextField - tabView - NSTabView - titleField - NSTextField - - SUPERCLASS - NSWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Dutch.lproj/GPGKeyDownload.nib/info.nib b/GPGMail/Resources/Dutch.lproj/GPGKeyDownload.nib/info.nib deleted file mode 100644 index 7ec1fc41..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGKeyDownload.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - 42 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Dutch.lproj/GPGKeyDownload.nib/keyedobjects.nib b/GPGMail/Resources/Dutch.lproj/GPGKeyDownload.nib/keyedobjects.nib deleted file mode 100644 index b860f4f1..00000000 Binary files a/GPGMail/Resources/Dutch.lproj/GPGKeyDownload.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Dutch.lproj/GPGMail.strings b/GPGMail/Resources/Dutch.lproj/GPGMail.strings deleted file mode 100644 index cd5f2da4..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGMail.strings +++ /dev/null @@ -1,239 +0,0 @@ -{ -/* Passphrase panel titles */ -"MESSAGE_AUTHENTICATION_TITLE" = "Identiteit afzender controleren"; -"MESSAGE_DECRYPTION_PASSPHRASE_TITLE" = "Bericht decoderen"; - -/**/ -"DECRYPTING" = "Versleutelen..."; -"ENCRYPTING" = "Decoderen..."; - -/* submenu title */ -"PGP_MENU" = "PGP"; -/* submenu title */ -"PGP_KEYS_MENU" = "PGP sleutels"; - -/* submenu items */ -"DECRYPT_MENU" = "Decodeer"; -"AUTHENTICATE_MENU" = "Controleer ondertekening"; -"ENCRYPT_MENU" = "Versleutel nieuw bericht"; -"SIGN_MENU" = "Onderteken nieuw bericht"; - -/* Description of version prefixed with */ -"VERSION: %@" = "Versie: %@"; - -/* PGP preferences panel name */ -"PGP_PREFERENCES" = "PGP"; - -/* Alert title and message */ -"MSG_DECRYPTION_ALERT_TITLE_NOT_SIGNED" = "Bericht decoderen"; -"DECRYPTED_MSG_NOT_SIGNED" = "Dit bericht is versleuteld, maar niet ondertekend. De identiteit van de afzender kan niet worden gecontroleerd."; -"MSG_ENCRYPTION_ALERT_TITLE" = "Versleutelen in PGP is mislukt"; -"MSG_DECRYPTION_ALERT_TITLE" = "Decoderen in PGP is mislukt"; -"MSG_SIGNING_ALERT_TITLE" = "Ondertekenen in PGP is mislukt"; -"UNSUPPORTED_ENCRYPTION_FORMAT" = "GPGMail kan de gebruikte manier van versleutelen in dit bericht niet decoderen."; -"DATA_NOT_AVAILABLE" = "De inhoud van dit bericht is tijdelijk niet beschikbaar."; - -/* Informational alert title and message */ -"AUTHENTICATION_TITLE_OK" = "PGP Identiteitscontrole"; - -/**/ -"AUTHENTICATION_TITLE_FAILED" = "PGP Identiteitscontrole mislukt"; -"TRY_AGAIN" = "Probeer nogmaals"; -"CANCEL_DELIVERY" = "Annuleer"; -"CANCEL_DECRYPTION" = "Annuleer"; - -/**/ -"AUTHENTICATION_TITLE_UNSIGNED" = "PGP Identiteitscontrole"; -"UNSIGNED_PGP_MESSAGE" = "Dit bericht is niet PGP-ondertekend."; - -/* Toolbar item titles */ -"DECRYPT_ITEM" = "Decodeer"; -"AUTHENTICATE_ITEM" = "Controleer identiteit"; -"MAKE_ENCRYPTED_ITEM" = "Maak versleuteld bericht"; -"MAKE_CLEAR_ITEM" = "Maak onversleuteld bericht"; -"MAKE_UNSIGNED_ITEM" = "Maak zonder ondertekening"; -"MAKE_SIGNED_ITEM" = "Maak ondertekend"; -"ENCRYPTED_ITEM" = "Versleuteld"; -"CLEAR_ITEM" = "Niet versleuteld"; -"SIGNED_ITEM" = "Ondertekend"; -"UNSIGNED_ITEM" = "Niet ondertekend"; - -/* Toolbar item tooltips */ -"DECRYPT_ITEM_TOOLTIP" = "Decodeer een PGP-versleuteld bericht"; -"AUTHENTICATE_ITEM_TOOLTIP" = "Controleer de ondertekening van een PGP-ondertekend bericht"; -"MAKE_CLEAR_ITEM_TOOLTIP" = "Selecteer om een onversleuteld bericht te maken"; -"MAKE_ENCRYPTED_ITEM_TOOLTIP" = "Selecteer om een PGP-versleuteld bericht te maken"; -"MAKE_UNSIGNED_ITEM_TOOLTIP" = "Selecteer om een bericht te maken zonder PGP-ondertekening"; -"MAKE_SIGNED_ITEM_TOOLTIP" = "Selecteer om een bericht te maken met PGP-ondertekening"; -"ENCRYPTED_ITEM_TOOLTIP" = "Bericht wordt versleuteld; klik om een onversleuteld bericht te verzenden"; -"CLEAR_ITEM_TOOLTIP" = "Bericht wordt niet versleuteld; klik om het bericht te versleutelen"; -"SIGNED_ITEM_TOOLTIP" = "Dit bericht wordt wel PGP-ondertekend. Klik als u het bericht niet wilt ondertekenen."; -"UNSIGNED_ITEM_TOOLTIP" = "Het bericht wordt niet PGP-ondertekend. Klik als u het bericht wel wilt ondertekenen."; - -/* Signature information */ -"Bad policy!" = "Slechte gewoonte! "; // Followed by a list of policy URLs -"Policy: " = "Gewoontes: "; // Followed by a list of policy URLs -"Signed on %@" = "Ondertekend op %@"; // Param is a date, whose format is set by SIGNATURE_CREATION_DATE_FORMAT -"SIGNATURE_CREATION_DATE_FORMAT" = "%c"; // See NSCalendarDate documentation for format -"No signature creation date available" = "De datum van ondertekening is niet beschikbaar"; -"Key fingerprint: %@" = "Vingerafdruk van de sleutel: %@"; -"Key ID: 0x%@" = "Sleutel ID: 0x%@"; -"No key fingerprint/ID available" = "Geen vingerafdruk/ID van de sleutel beschikbaar"; -"Validity: %@" = "Betrouwbaarheid: %@"; // Param is the validity status string -"Signature expires on %@" = "Ondertekening verloopt op %@"; // Param is a date, whose format is set by SIGNATURE_EXPIRATION_DATE_FORMAT -"SIGNATURE_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Key expired on %@" = "Sleutel is verlopen op %@"; // Param is a date, whose format is set by KEY_EXPIRATION_DATE_FORMAT -"KEY_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Signed by %@." = "Ondertekend door %@."; // Param is a userID -"Signature from %@ is bad!" = "De ondertekening van %@ is fout."; // Param is a userID -"Signature is bad!" = "Foute ondertekening."; -"Signature status error." = "Fout bij de status van de ondertekening."; -"MISSING KEY %@." = "Sleutel %@ ontbreekt."; // Param is a key ID in hexadecimal -"Signature summary 0x%04x - Signature status %u." = "Er is een onbekende fout opgetreden: samenvatting van de ondertekening: 0x%04x - status van de ondertekening: %u."; // Generic error message; first param is a hex status flag value, second is a decimal status value -"EXCEPTION: %@" = "Er is een fout opgetreden: %@"; // Generic error message; param is a string (exception reason, maybe not localized) -"AUTHENTICATING" = "Controleren identiteit..."; -"UNTRUSTED RECIPIENTS" = "Een of meer van de sleutels wordt niet vertrouwd."; - -/* Title */ -/* Error messages */ -"GPGMAIL_CANNOT_WORK" = "GPGMail kan niet werken. Het programma waar het mee samenwerkt kon niet worden opgestart. Stop en herstart Mail. Treedt deze fout dan weer op, zend dan alstublieft een mail naar gpgmail@sente.ch waarin u omschrijft wat er gebeurd. De ontvanger leest geen nederlands, maar wel engels. Kunt u uw mail alleen in het nederlands schrijven, zet u er dan 'this mail is in dutch' boven."; -"GPGMAIL_CANNOT_WORK_HAS_GPG_%@_VERSION_%@_NEEDS_%@" = "GPGMail kan niet werken. Het programma GnuPG (%@) versie %@ is aanwezig, maar versie %@ of nieuwer is nodig voor GPGMail. Stop Mail en installeer een nieuwere versie van GnuPG (bijvoorbeeld van de MacGPG groep, http://macgpg.sourceforge.net/). Daarna kunt u Mail opnieuw starten."; // First arg is path to gpg, second and third are version strings -"GPGMAIL_CANNOT_WORK_MISSING_GPG_%@_VERSION_%@" = "GPGMail kan niet werken. Voor GPGMail is het programma GnuPG (%@), versie %@ of nieuwer nodig. Stop Mail en installeer GnuPG (bijvoorbeeld van de MacGPG groep, http://macgpg.sourceforge.net/). Daarna kunt u Mail opnieuw starten."; // First arg is path to gpg, second is version string -"INVALID_GPGMAIL_VERSION" = "Deze versie van GPGMail werkt niet bij deze versie van Mail."; /* Title of alert sheet */ -"NEEDS_COMPATIBLE_BUNDLE_VERSION" = "U heeft niet de juiste versie van GPGMail voor uw versie van Mail. U kunt de juiste versie van GPGMail downloaden van http://gpgmail.org/. "; - -/* Validity */ -"VALIDITY: " = "betrouwbaarheid: "; -"Validity=0" = "onbekend"; -"Validity=1" = "ongedefiniëerd"; -"Validity=2" = "nooit"; -"Validity=3" = "gedeeltelijk"; -"Validity=4" = "volledig"; -"Validity=5" = "maximaal"; - -/* Generic MacGPGME error messages */ -"GPGErrorCode=1" = "Onbekende fout"; -"GPGErrorCode=8" = "Foute ondertekening"; -"GPGErrorCode=9" = "Er is geen publieke sleutel"; -"GPGErrorCode=10" = "Fout bij het controlegetal"; -"GPGErrorCode=11" = "Fout wachtwoord"; -"GPGErrorCode=15" = "Ongeldige armor"; -"GPGErrorCode=17" = "Er is geen geheime sleutel"; -"GPGErrorCode=31" = "Ongeldig wachtwoord"; -"GPGErrorCode=40" = "Fout bij de sleutel server"; -"GPGErrorCode=53" = "Onbruikbare publieke sleutel"; -"GPGErrorCode=54" = "Onbruikbare geheime sleutel"; -"GPGErrorCode=55" = "Ongeldige waarde"; -"GPGErrorCode=58" = "Geen gegevens"; -"GPGErrorCode=69" = "Niet mogelijk"; -"GPGErrorCode=84" = "Niet ondersteund algorithme"; -"GPGErrorCode=94" = "De sleutel is herroepen"; -"GPGErrorCode=99" = "Geannuleerd"; -"GPGErrorCode=107" = "De naam is eerder gebruikt"; -"GPGErrorCode=116" = "Geen overeenkomstige policy"; -"GPGErrorCode=125" = "Fout sleutel gebruik"; -"GPGErrorCode=150" = "Ongeldige engine"; -"GPGErrorCode=151" = "De publieke sleutel wordt niet vertrouwd"; -"GPGErrorCode=152" = "Ontcijferen is mislukt"; -"GPGErrorCode=153" = "De sleutel is verlopen"; -"GPGErrorCode=154" = "De ondertekening is verlopen"; -"GPGErrorCode=16383" = "EOF"; - -/* Signature attachment filename (suffixed automatically by .sig) */ -"PGP_SIGNATURE_FILENAME" = "PGP"; - -/* Signature attachment content-description */ -"This is a digitally signed message part" = "Dit deel van het bericht is digitaal ondertekend"; - -/* Version MIME part content description header */ -"CONTENT_DESCRIPTION_HEADER" = "PGP/MIME versie"; - -/* Encrypted attachment filename (suffixed automatically by .asc) */ -"PGP_ENCRYPTED_FILENAME" = "PGP"; - -/* Encrypted attachment content-description */ -"This is an encrypted message part" = "Deze bijlage is versleuteld in OpenPGP"; - -/* Multiple-part description */ -"MULTIPART_ENCRYPTED_DESCRIPTION" = "Dit bericht is versleuteld in OpenPGP/MIME (RFC 2440 en 3156)"; -"MULTIPART_SIGNED_DESCRIPTION" = "Dit bericht is ondertekend in OpenPGP/MIME (RFC 2440 en 3156)"; - -/* Tooltip for banner icons */ -"SIGNATURE_IS_GOOD" = "De ondertekening is goed; het bericht is niet veranderd sinds de ondertekening"; -"SIGNATURE_IS_NOT_GOOD" = "De ondertekening is niet goed; het bericht is veranderd na ondertekening"; - -/* PGP Key Download panel */ -"PGP_SEARCH_KEYS_MENUITEM" = "PGP sleutel zoeken"; -"SEARCH" = "Zoek"; -"CANCEL_SEARCH" = "Annuleer"; -"SEARCHING" = "Zoeken..."; -"NO_MATCHING_KEYS" = "Geen sleutel gevonden"; -"FOUND_%d_KEYS" = "%d sleutel(s) gevonden"; -"DOWNLOAD" = "Download"; -"DOWNLOADING" = "Downloaden..."; -"DOWNLOADED" = "sleutel(s) gedownload en geïmporteerd"; -"SEARCH_KEYS_ON_SERVER" = "Zoek PGP sleutels op sleutel server"; -"DOWNLOAD_KEYS_FROM_SERVER" = "Download PGP sleutels van sleutel server"; -"SEARCH_ERROR" = "Tijdens het zoeken trad een fout op"; -"DOWNLOAD_ERROR" = "Tijdens het downloaden trad een fout op"; -" (%u bits)" = " (%u bits)"; -", created on %@" = ", gemaakt op %@"; -", expires on %@" = ", verloopt op %@"; -", expired on %@" = ", verloopt op %@"; -"REVOKED_KEY - " = "Herroepen - "; // Prefixes found key description, when necessary; followed by keyID, userID, etc. - -/* Unmatched PGP keys for receipts - sheet */ -"MISSING_KEYS: DOWNLOAD" = "Voor sommige adressen is geen PGP sleutel bekend. Zoeken naar sleutel?"; // Title -"UNMATCHED_ADDRESSES: %@" = "Bij deze email adressen is geen PGP sleutel bekend:\n%@"; // Message -"SEARCH_MATCHING_KEYS" = "Zoek"; // Default button -"SEND_IN_CLEAR" = "Verstuur onversleuteld"; // Other button - -"INVALID_HASH_%@" = "Het hash algorithme '%@' is niet toegestaan volgens RFC3156."; -"GPGMAIL_VS_PGPMAIL" = "GPGMail kan niet werken als PGPMail geïnstalleerd is"; -"GPGMAIL_%@_VS_PGPMAIL_%@" = "Beide programma's bieden dezelfde functies, met verschillende methodes. Slechts een van beide kan tegelijkertijd geïnstalleerd zijn. U moet of '%@' of '%@' verwijderen."; -"QUIT" = "Stop"; -"CONTINUE_ANYWAY" = "Probeer toch door te gaan"; - -/* Composer accessory view header, under To:, CC:, Subject: */ -"PGP:" = "PGP:"; - -/* Key description in popups; prefixes key (actually, primary userID), when necessary; followed by keyID, userID, etc.*/ -"REVOKED_KEY:" = "Herroepen:"; -"EXPIRED_KEY:" = "Verlopen:"; -"DISABLED_KEY:" = "Buiten werking:"; -"INVALID_KEY:" = "Onbetrouwbaar:"; - -/* UserID description in popups; prefixes userID, when necessary; followed by name, email, etc.*/ -"REVOKED_USER_ID:" = "Herroepen:"; -"INVALID_USER_ID:" = "Onbetrouwbaar:"; - -/* GPGMail exception reasons */ -"NO_VALID_PUBLIC_KEY" = "Geen bruikbare publieke sleutel is beschikbaar. De publieke sleutel(s) zijn verlopen, buiten werking of herroepen."; // Could be displayed after encryption -"NO_VALID_PRIVATE_KEY" = "Geen goede persoonlijke sleutel is beschikbaar. Wellicht heeft u geen persoonlijke sleutel geselecteerd, of de geselecteerde sleutel is verlopen, buiten werking of herroepen."; // Could be displayed after encryption - -/* Alert when user has no PGP key */ -"NO PGP PRIVATE KEY - TITLE" = "U heeft geen eigen PGP sleutel. U kan GPGMail niet gebruiken om berichten te versleutelen of te ondertekenen."; -"NO PGP PRIVATE KEY - MESSAGE" = "Als u berichten wilt kunnen versleutelen of ondertekenen met PGP, heeft u een eigen PGP sleutel nodig. Om een PGP sleutel te maken, kunt u het programma KeyChain Access gebruiken. U kunt dat programma van MacGPG downloaden van http://macgpg.sourceforge.net/"; - -/* Conflict resolution panel*/ -"" = "Mij"; -"" = "Ja"; -"" = "Nee"; -"" = "Altijd"; -"" = "Nooit"; -"" = "Accepteert"; - -/* Additional info describing key */ -"DISABLED_KEY_QUALIFIER" = "buiten werking"; -"INVALID_KEY_QUALIFIER" = "onbetrouwbaar"; -"REVOKED_KEY_QUALIFIER" = "herroepen"; -"EXPIRED_KEY_QUALIFIER" = "verlopen"; -"CANNOT_ENCRYPT_KEY_QUALIFIER" = "kan niet versleutelen"; -"CANNOT_SIGN_KEY_QUALIFIER" = "kan niet ondertekenen"; - -/* Additional info describing userID */ -"INVALID_USER_ID_QUALIFIER" = "onbetrouwbaar"; -"REVOKED_USER_ID_QUALIFIER" = "herroepen"; - -"COPY_MSG_URL_MENUITEM" = "Copy Message URL"; -} diff --git a/GPGMail/Resources/Dutch.lproj/GPGMailCompose.nib/classes.nib b/GPGMail/Resources/Dutch.lproj/GPGMailCompose.nib/classes.nib deleted file mode 100644 index 0162fc97..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGMailCompose.nib/classes.nib +++ /dev/null @@ -1,139 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - accessoryView - NSView - - SUPERCLASS - NSObject - - - ACTIONS - - gpgToggleSymetricEncryption - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - alertImageView - NSImageView - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - selectedPersonalKey - id - signSwitch - NSButton - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Dutch.lproj/GPGMailCompose.nib/info.nib b/GPGMail/Resources/Dutch.lproj/GPGMailCompose.nib/info.nib deleted file mode 100644 index e99f82dc..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGMailCompose.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 27 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Dutch.lproj/GPGMailCompose.nib/keyedobjects.nib b/GPGMail/Resources/Dutch.lproj/GPGMailCompose.nib/keyedobjects.nib deleted file mode 100644 index 41b17818..00000000 Binary files a/GPGMail/Resources/Dutch.lproj/GPGMailCompose.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Dutch.lproj/GPGMailComposeTiger.nib/classes.nib b/GPGMail/Resources/Dutch.lproj/GPGMailComposeTiger.nib/classes.nib deleted file mode 100644 index 079c9142..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGMailComposeTiger.nib/classes.nib +++ /dev/null @@ -1,134 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - OUTLETS - - _optionSwitch - NSButton - _primaryView - NSView - - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - signSwitch - NSButton - switchProtoMatrix - NSMatrix - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Dutch.lproj/GPGMailComposeTiger.nib/info.nib b/GPGMail/Resources/Dutch.lproj/GPGMailComposeTiger.nib/info.nib deleted file mode 100644 index 34312e23..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGMailComposeTiger.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 38 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Dutch.lproj/GPGMailComposeTiger.nib/keyedobjects.nib b/GPGMail/Resources/Dutch.lproj/GPGMailComposeTiger.nib/keyedobjects.nib deleted file mode 100644 index 9527468e..00000000 Binary files a/GPGMail/Resources/Dutch.lproj/GPGMailComposeTiger.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Dutch.lproj/GPGMailPreferences.nib/classes.nib b/GPGMail/Resources/Dutch.lproj/GPGMailPreferences.nib/classes.nib deleted file mode 100644 index b621acc6..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGMailPreferences.nib/classes.nib +++ /dev/null @@ -1,186 +0,0 @@ - - - - - IBClasses - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - changeDefaultKey - id - changeLineWrapping - id - changePassphraseStrategy - id - changePassphraseTimeout - id - exportGPGMailConfiguration - id - flushCachedPassphrases - id - refreshKeys - id - toggleAlwaysEncryptMessages - id - toggleAlwaysSignMessages - id - toggleAuthenticateUnreadMessagesAutomatically - id - toggleAuthenticatesMessagesAutomatically - id - toggleAutomaticPersonalKeyChoice - id - toggleBCCRecipientsUse - id - toggleButtonsBehavior - id - toggleDecryptsMessagesAutomatically - id - toggleDecryptsUnreadMessagesAutomatically - id - toggleDisplayAccessoryView - id - toggleEncryptToSelf - id - toggleEncryptWhenPossible - id - toggleEncryptedReplyToEncryptedMessage - id - toggleExtendedInformation - id - toggleFilterKeys - id - toggleKeyRefresh - id - toggleOpenPGPMIME - id - toggleSMIME - id - toggleSeparatePGPOperations - id - toggleShowKeyInformation - id - toggleShowPassphrase - id - toggleShowUserIDs - id - toggleSignWhenEncrypting - id - toggleSignedReplyToSignedMessage - id - toggleSmartRules - id - toggleTrustAllKeys - id - - CLASS - GPGMailPreferences - LANGUAGE - ObjC - OUTLETS - - alwaysEncryptSwitchButton - NSButton - alwaysSignSwitchButton - NSButton - authenticateUnreadMessagesSwitchButton - NSButton - automaticallyAuthenticateMessagesSwitchButton - NSButton - automaticallyDecryptMessagesSwitchButton - NSButton - buttonsShowStateSwitchButton - NSButton - choosesPersonalKeyAccordingToAccountSwitchButton - NSButton - contactTextField - NSTextField - decryptUnreadMessagesSwitchButton - NSButton - disableSMIMESwitchButton - NSButton - displayButtonInComposeWindowSwitchButton - NSButton - encryptReplyToEncryptedMessageSwitchButton - NSButton - encryptToSelfSwitchButton - NSButton - encryptWhenAllKeysAvailableSwitchButton - NSButton - extendedInfoSwitchButton - NSButton - filtersKeysSwitchButton - NSButton - keyIdentifiersPopUpButton - NSPopUpButton - keyIdentifiersTableView - NSTableView - lineWrappingFormCell - NSFormCell - openPGPMIMESwitchButton - NSButton - passphraseStrategyMatrix - NSMatrix - passphraseTimeoutFormCell - NSFormCell - personalKeysPopUpButton - NSPopUpButton - refreshKeysOnVolumeChangeSwitchButton - NSButton - separateSignAndEncryptOperationsSwitchButton - NSButton - showUserIDsSwitchButton - NSButton - showsPassphraseSwitchButton - NSButton - signReplyToSignedMessageSwitchButton - NSButton - signWhenEncryptingSwitchButton - NSButton - trustAllKeysSwitchButton - NSButton - useBCCRecipientsSwitchButton - NSButton - useSmartRulesSwitchButton - NSButton - versionTextField - NSTextField - webSiteTextField - NSTextField - - SUPERCLASS - NSPreferencesModule - - - CLASS - NSPreferencesModule - LANGUAGE - ObjC - OUTLETS - - preferencesView - id - - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Dutch.lproj/GPGMailPreferences.nib/info.nib b/GPGMail/Resources/Dutch.lproj/GPGMailPreferences.nib/info.nib deleted file mode 100644 index 60c368f6..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGMailPreferences.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 9 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Dutch.lproj/GPGMailPreferences.nib/keyedobjects.nib b/GPGMail/Resources/Dutch.lproj/GPGMailPreferences.nib/keyedobjects.nib deleted file mode 100644 index 03dae97e..00000000 Binary files a/GPGMail/Resources/Dutch.lproj/GPGMailPreferences.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Dutch.lproj/GPGMenu.nib/classes.nib b/GPGMail/Resources/Dutch.lproj/GPGMenu.nib/classes.nib deleted file mode 100644 index 6ac982ef..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGMenu.nib/classes.nib +++ /dev/null @@ -1,57 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = { - gpgAuthenticate = id; - gpgChoosePersonalKeys = id; - gpgChoosePublicKeys = id; - gpgDecrypt = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - gpgChoosePersonalKey = id; - gpgChoosePublicKey = id; - gpgChoosePublicKeys = id; - gpgReloadPGPKeys = id; - gpgSearchKeys = id; - gpgToggleAutomaticPublicKeysChoice = id; - gpgToggleDisplayAllUserIDs = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleShowKeyInformation = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - mailTo = id; - }; - CLASS = GPGMailBundle; - LANGUAGE = ObjC; - OUTLETS = { - PGPMenu = NSMenu; - PGPViewMenu = NSMenu; - allUserIDsMenuItem = NSMenuItem; - authenticateMenuItem = NSMenuItem; - automaticPublicKeysMenuItem = NSMenuItem; - choosePublicKeysMenuItem = NSMenuItem; - decryptMenuItem = NSMenuItem; - defaultKey = id; - encryptsNewMessageMenuItem = NSMenuItem; - personalKeysMenuItem = NSMenuItem; - proxyServer = id; - signsNewMessageMenuItem = NSMenuItem; - symetricEncryptionMenuItem = NSMenuItem; - usesOnlyOpenPGPStyleMenuItem = NSMenuItem; - }; - SUPERCLASS = MVMailBundle; - }, - {CLASS = MVMailBundle; LANGUAGE = ObjC; SUPERCLASS = NSObject; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/Dutch.lproj/GPGMenu.nib/info.nib b/GPGMail/Resources/Dutch.lproj/GPGMenu.nib/info.nib deleted file mode 100644 index 4349a396..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGMenu.nib/info.nib +++ /dev/null @@ -1,24 +0,0 @@ - - - - - IBDocumentLocation - 614 138 356 278 0 0 1680 1028 - IBEditorPositions - - 34 - 226 779 307 230 0 0 1680 1028 - 88 - 701 805 161 194 0 0 1680 1028 - - IBFramework Version - 443.0 - IBOpenObjects - - 88 - 34 - - IBSystem Version - 8G32 - - diff --git a/GPGMail/Resources/Dutch.lproj/GPGMenu.nib/objects.nib b/GPGMail/Resources/Dutch.lproj/GPGMenu.nib/objects.nib deleted file mode 100644 index 33f95230..00000000 Binary files a/GPGMail/Resources/Dutch.lproj/GPGMenu.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/Dutch.lproj/GPGMessageViewerAccessoryView.nib/classes.nib b/GPGMail/Resources/Dutch.lproj/GPGMessageViewerAccessoryView.nib/classes.nib deleted file mode 100644 index 5c956adf..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGMessageViewerAccessoryView.nib/classes.nib +++ /dev/null @@ -1,112 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - authenticate - id - decrypt - id - gpgAuthenticate - id - gpgDecrypt - id - toggleSignatureExtraView - id - - CLASS - GPGMessageViewerAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - authenticationButton - NSButton - authenticationView - NSView - decryptedIconView - NSImageView - decryptedInfoView - NSView - decryptedMessageTextField - NSTextField - decryptionButton - NSButton - decryptionView - NSView - delegate - id - disclosureButton - NSButton - expirationAlertIconView - NSImageView - generalAlertIconView - NSImageView - policyAlertIconView - NSImageView - signatureBadPolicyAlertTextField - NSTextField - signatureCreationDateTextField - NSTextField - signatureExpirationDateTextField - NSTextField - signatureIconView - NSImageView - signatureKeyFingerprintTextField - NSTextField - signatureLowerView - NSView - signatureMessageTextField - NSTextField - signatureToggleButton - NSButton - signatureUpperView - NSView - signatureValidityTextField - NSTextField - signatureView - NSView - trustAlertIconView - NSImageView - userIDsPopDownButton - NSPopUpButton - - SUPERCLASS - NSObject - - - ACTIONS - - - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Dutch.lproj/GPGMessageViewerAccessoryView.nib/info.nib b/GPGMail/Resources/Dutch.lproj/GPGMessageViewerAccessoryView.nib/info.nib deleted file mode 100644 index 6b6a5d73..00000000 --- a/GPGMail/Resources/Dutch.lproj/GPGMessageViewerAccessoryView.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 67 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Dutch.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib b/GPGMail/Resources/Dutch.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib deleted file mode 100644 index 6c1ce647..00000000 Binary files a/GPGMail/Resources/Dutch.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Dutch.lproj/InfoPlist.strings b/GPGMail/Resources/Dutch.lproj/InfoPlist.strings deleted file mode 100644 index a8675057..00000000 --- a/GPGMail/Resources/Dutch.lproj/InfoPlist.strings +++ /dev/null @@ -1,6 +0,0 @@ -/* Localized versions of Info.plist keys */ - -CFBundleShortVersionString = "1.2.3 (v62)"; -CFBundleGetInfoHTML = "GPGMail versie 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -CFBundleGetInfoString = "GPGMail versie 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -NSHumanReadableCopyright = "© Stéphane Corthésy, 2000-2008"; diff --git a/GPGMail/Resources/EmptyImage.tiff b/GPGMail/Resources/EmptyImage.tiff deleted file mode 100644 index 77eb9115..00000000 Binary files a/GPGMail/Resources/EmptyImage.tiff and /dev/null differ diff --git a/GPGMail/Resources/English.lproj/GPGKeyDownload.nib/classes.nib b/GPGMail/Resources/English.lproj/GPGKeyDownload.nib/classes.nib deleted file mode 100644 index abce7a58..00000000 --- a/GPGMail/Resources/English.lproj/GPGKeyDownload.nib/classes.nib +++ /dev/null @@ -1,75 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - cancel - id - gpgSearchKeys - id - import - id - search - id - - CLASS - GPGKeyDownload - LANGUAGE - ObjC - OUTLETS - - checkBoxMatrix - NSMatrix - context - id - emailCell - NSFormCell - importButton - NSButton - importProgressField - NSTextField - importProgressIndicator - NSProgressIndicator - outlineView - NSOutlineView - searchButton - NSButton - searchProgressField - NSTextField - searchProgressIndicator - NSProgressIndicator - serverComboBox - NSComboBox - subtitleField - NSTextField - tabView - NSTabView - titleField - NSTextField - - SUPERCLASS - NSWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/English.lproj/GPGKeyDownload.nib/info.nib b/GPGMail/Resources/English.lproj/GPGKeyDownload.nib/info.nib deleted file mode 100644 index 174b6351..00000000 --- a/GPGMail/Resources/English.lproj/GPGKeyDownload.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - IBSystem Version - 9E17 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/English.lproj/GPGKeyDownload.nib/keyedobjects.nib b/GPGMail/Resources/English.lproj/GPGKeyDownload.nib/keyedobjects.nib deleted file mode 100644 index 9b2dd1bc..00000000 Binary files a/GPGMail/Resources/English.lproj/GPGKeyDownload.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/English.lproj/GPGMail.strings b/GPGMail/Resources/English.lproj/GPGMail.strings deleted file mode 100644 index 101310db..00000000 --- a/GPGMail/Resources/English.lproj/GPGMail.strings +++ /dev/null @@ -1,239 +0,0 @@ -{ -/* Passphrase panel titles */ -"MESSAGE_AUTHENTICATION_TITLE" = "Message Authentication"; -"MESSAGE_DECRYPTION_PASSPHRASE_TITLE" = "Message Decryption"; - -/**/ -"DECRYPTING" = "Decrypting..."; -"ENCRYPTING" = "Encrypting..."; - -/* submenu title */ -"PGP_MENU" = "PGP"; -/* submenu title */ -"PGP_KEYS_MENU" = "PGP Keys"; - -/* submenu items */ -"DECRYPT_MENU" = "Decrypt"; -"AUTHENTICATE_MENU" = "Authenticate"; -"ENCRYPT_MENU" = "Encrypt New Message"; -"SIGN_MENU" = "Sign New Message"; - -/* Description of version prefixed with */ -"VERSION: %@" = "Version: %@"; - -/* PGP preferences panel name */ -"PGP_PREFERENCES" = "PGP"; - -/* Alert title and message */ -"MSG_DECRYPTION_ALERT_TITLE_NOT_SIGNED" = "Message Decryption"; -"DECRYPTED_MSG_NOT_SIGNED" = "Message has been encrypted but not signed. Its authenticity cannot be proved."; -"MSG_ENCRYPTION_ALERT_TITLE" = "PGP Encryption Failed"; -"MSG_DECRYPTION_ALERT_TITLE" = "PGP Decryption Failed"; -"MSG_SIGNING_ALERT_TITLE" = "PGP Signing Failed"; -"UNSUPPORTED_ENCRYPTION_FORMAT" = "GPGMail is unable to decrypt this kind of encrypted message."; -"DATA_NOT_AVAILABLE" = "The message content is temporarily unavailable."; - -/* Informational alert title and message */ -"AUTHENTICATION_TITLE_OK" = "PGP Authentication"; - -/**/ -"AUTHENTICATION_TITLE_FAILED" = "PGP Authentication Failed"; -"TRY_AGAIN" = "Try again"; -"CANCEL_DELIVERY" = "Cancel"; -"CANCEL_DECRYPTION" = "Cancel"; - -/**/ -"AUTHENTICATION_TITLE_UNSIGNED" = "PGP Authentication"; -"UNSIGNED_PGP_MESSAGE" = "This message is not PGP-signed."; - -/* Toolbar item titles */ -"DECRYPT_ITEM" = "Decrypt"; -"AUTHENTICATE_ITEM" = "Authenticate"; -"MAKE_ENCRYPTED_ITEM" = "Make Encrypted"; -"MAKE_CLEAR_ITEM" = "Make Clear"; -"MAKE_UNSIGNED_ITEM" = "Make Unsigned"; -"MAKE_SIGNED_ITEM" = "Make Signed"; -"ENCRYPTED_ITEM" = "Encrypted"; -"CLEAR_ITEM" = "In Clear"; -"SIGNED_ITEM" = "Signed"; -"UNSIGNED_ITEM" = "Unsigned"; - -/* Toolbar item tooltips */ -"DECRYPT_ITEM_TOOLTIP" = "Decrypt PGP-encrypted message"; -"AUTHENTICATE_ITEM_TOOLTIP" = "Authenticate PGP-signed message"; -"MAKE_CLEAR_ITEM_TOOLTIP" = "Click to send a message in clear"; -"MAKE_ENCRYPTED_ITEM_TOOLTIP" = "Click to use PGP encryption"; -"MAKE_UNSIGNED_ITEM_TOOLTIP" = "Click to send a message without PGP authentication"; -"MAKE_SIGNED_ITEM_TOOLTIP" = "Click to use PGP authentication"; -"ENCRYPTED_ITEM_TOOLTIP" = "Message will be encrypted; click to send a message in clear"; -"CLEAR_ITEM_TOOLTIP" = "Message will be in clear; click to use PGP encryption"; -"SIGNED_ITEM_TOOLTIP" = "Message will be PGP-signed; click to send a message without PGP authentication"; -"UNSIGNED_ITEM_TOOLTIP" = "Message will not have a PGP signature; click to use PGP authentication"; - -/* Signature information */ -"Bad policy!" = "Bad policy! "; // Followed by a list of policy URLs -"Policy: " = "Policy: "; // Followed by a list of policy URLs -"Signed on %@" = "Signed on %@"; // Param is a date, whose format is set by SIGNATURE_CREATION_DATE_FORMAT -"SIGNATURE_CREATION_DATE_FORMAT" = "%c"; // See NSCalendarDate documentation for format -"No signature creation date available" = "No signature creation date available"; -"Key fingerprint: %@" = "Key fingerprint: %@"; -"Key ID: 0x%@" = "Key ID: 0x%@"; -"No key fingerprint/ID available" = "No key fingerprint/ID available"; -"Validity: %@" = "Validity: %@"; // Param is the validity status string -"Signature expires on %@" = "Signature expires on %@"; // Param is a date, whose format is set by SIGNATURE_EXPIRATION_DATE_FORMAT -"SIGNATURE_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Key expired on %@" = "Key expired on %@"; // Param is a date, whose format is set by KEY_EXPIRATION_DATE_FORMAT -"KEY_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Signed by %@." = "Signed by %@."; // Param is a userID -"Signature from %@ is bad!" = "Bad signature from %@!"; // Param is a userID -"Signature is bad!" = "Bad signature!"; -"Signature status error." = "Signature status error."; -"MISSING KEY %@." = "Missing key %@."; // Param is a key ID in hexadecimal -"Signature summary 0x%04x - Signature status %u." = "Unknown error: signature summary 0x%04x - signature status %u."; // Generic error message; first param is a hex status flag value, second is a decimal status value -"EXCEPTION: %@" = "Internal error: %@"; // Generic error message; param is a string (exception reason, maybe not localized) -"AUTHENTICATING" = "Verifying PGP signature..."; -"UNTRUSTED RECIPIENTS" = "At least one of the keys is not trusted"; - -/* Title */ -/* Error messages */ -"GPGMAIL_CANNOT_WORK" = "GPGMail cannot work because its companion application could not be started. Try to restart Mail and if error persists, send a message to gpgmail@sente.ch"; -"GPGMAIL_CANNOT_WORK_HAS_GPG_%@_VERSION_%@_NEEDS_%@" = "GPGMail cannot work. It found GnuPG (%@) version %@, but it needs at least version %@. Please quit Mail, install a matching GnuPG version (for example from MacGPG Project, http://macgpg.sourceforge.net/), then restart Mail."; // First arg is path to gpg, second and third are version strings -"GPGMAIL_CANNOT_WORK_MISSING_GPG_%@_VERSION_%@" = "GPGMail cannot work. It didn't find GnuPG (%@) with at least version %@. Please quit Mail, install a matching GnuPG version (for example from MacGPG Project, http://macgpg.sourceforge.net/), then restart Mail."; // First arg is path to gpg, second is version string -"INVALID_GPGMAIL_VERSION" = "Your version of GPGMail is not compatible with your version of Mail."; /* Title of alert sheet */ -"NEEDS_COMPATIBLE_BUNDLE_VERSION" = "You need to download and install the GPGMail version matching your OS version. Go to http://gpgmail.org/ to get it."; - -/* Validity */ -"VALIDITY: " = "validity: "; -"Validity=0" = "unknown"; -"Validity=1" = "undefined"; -"Validity=2" = "never"; -"Validity=3" = "marginal"; -"Validity=4" = "full"; -"Validity=5" = "ultimate"; - -/* Generic MacGPGME error messages */ -"GPGErrorCode=1" = "General error"; -"GPGErrorCode=8" = "Bad signature"; -"GPGErrorCode=9" = "No public key"; -"GPGErrorCode=10" = "Checksum error"; -"GPGErrorCode=11" = "Bad passphrase"; -"GPGErrorCode=15" = "Invalid armor"; -"GPGErrorCode=17" = "No secret key"; -"GPGErrorCode=31" = "Invalid passphrase"; -"GPGErrorCode=40" = "Key server error"; -"GPGErrorCode=53" = "Unusable public key"; -"GPGErrorCode=54" = "Unusable secret key"; -"GPGErrorCode=55" = "Invalid value"; -"GPGErrorCode=58" = "No data"; -"GPGErrorCode=69" = "Not implemented"; -"GPGErrorCode=84" = "Unsupported algorithm"; -"GPGErrorCode=94" = "Key revoked"; -"GPGErrorCode=99" = "Cancelled"; -"GPGErrorCode=107" = "Ambiguous name"; -"GPGErrorCode=116" = "No policy match"; -"GPGErrorCode=125" = "Wrong key usage"; -"GPGErrorCode=150" = "Invalid engine"; -"GPGErrorCode=151" = "Public key not trusted"; -"GPGErrorCode=152" = "Decryption failed"; -"GPGErrorCode=153" = "Key expired"; -"GPGErrorCode=154" = "Signature expired"; -"GPGErrorCode=16383" = "EOF"; - -/* Signature attachment filename (suffixed automatically by .sig) */ -"PGP_SIGNATURE_FILENAME" = "PGP"; - -/* Signature attachment content-description */ -"This is a digitally signed message part" = "This is a digitally signed message part"; - -/* Version MIME part content description header */ -"CONTENT_DESCRIPTION_HEADER" = "PGP/MIME version identification"; - -/* Encrypted attachment filename (suffixed automatically by .asc) */ -"PGP_ENCRYPTED_FILENAME" = "PGP"; - -/* Encrypted attachment content-description */ -"This is an encrypted message part" = "OpenPGP encrypted message"; - -/* Multiple-part description */ -"MULTIPART_ENCRYPTED_DESCRIPTION" = "This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156)"; -"MULTIPART_SIGNED_DESCRIPTION" = "This is an OpenPGP/MIME signed message (RFC 2440 and 3156)"; - -/* Tooltip for banner icons */ -"SIGNATURE_IS_GOOD" = "Signature is OK; message has not been modified"; -"SIGNATURE_IS_NOT_GOOD" = "Signature is not good; message has been modified"; - -/* PGP Key Download panel */ -"PGP_SEARCH_KEYS_MENUITEM" = "PGP Key Search"; -"SEARCH" = "Search"; -"CANCEL_SEARCH" = "Cancel"; -"SEARCHING" = "Searching..."; -"NO_MATCHING_KEYS" = "No matching key"; -"FOUND_%d_KEYS" = "Found %d matching key(s)"; -"DOWNLOAD" = "Download"; -"DOWNLOADING" = "Downloading..."; -"DOWNLOADED" = "Downloaded and imported key(s)"; -"SEARCH_KEYS_ON_SERVER" = "Search PGP keys on key server"; -"DOWNLOAD_KEYS_FROM_SERVER" = "Download PGP keys from key server"; -"SEARCH_ERROR" = "An error occured during search"; -"DOWNLOAD_ERROR" = "An error occured during download"; -" (%u bits)" = " (%u bits)"; -", created on %@" = ", created on %@"; -", expires on %@" = ", expires on %@"; -", expired on %@" = ", expired on %@"; -"REVOKED_KEY - " = "Revoked - "; // Prefixes found key description, when necessary; followed by keyID, userID, etc. - -/* Unmatched PGP keys for receipts - sheet */ -"MISSING_KEYS: DOWNLOAD" = "Some addresses match no PGP key. Search for keys?"; // Title -"UNMATCHED_ADDRESSES: %@" = "The following email addresses have no matching PGP key:\n%@"; // Message -"SEARCH_MATCHING_KEYS" = "Search"; // Default button -"SEND_IN_CLEAR" = "Send in Clear"; // Other button - -"INVALID_HASH_%@" = "The hash algorithm '%@' is not allowed by RFC3156."; -"GPGMAIL_VS_PGPMAIL" = "GPGMail cannot work when PGPmail is installed"; -"GPGMAIL_%@_VS_PGPMAIL_%@" = "Both bundles provide the same functionalities, with different engines, and only one of them can be installed. You need to either remove '%@', or '%@'."; -"QUIT" = "Quit"; -"CONTINUE_ANYWAY" = "Try to continue"; - -/* Composer accessory view header, under To:, CC:, Subject: */ -"PGP:" = "PGP:"; - -/* Key description in popups; prefixes key (actually, primary userID), when necessary; followed by keyID, userID, etc.*/ -"REVOKED_KEY:" = "Revoked:"; -"EXPIRED_KEY:" = "Expired:"; -"DISABLED_KEY:" = "Disabled:"; -"INVALID_KEY:" = "Invalid:"; - -/* UserID description in popups; prefixes userID, when necessary; followed by name, email, etc.*/ -"REVOKED_USER_ID:" = "Revoked:"; -"INVALID_USER_ID:" = "Invalid:"; - -/* GPGMail exception reasons */ -"NO_VALID_PUBLIC_KEY" = "No valid public key has been found. They are all either expired, disabled or revoked."; // Could be displayed after encryption -"NO_VALID_PRIVATE_KEY" = "No valid personal key has been found. Either none was selected, or selected key is revoked, disabled or has expired."; // Could be displayed after encryption - -/* Alert when user has no PGP key */ -"NO PGP PRIVATE KEY - TITLE" = "You don't have any PGP key. You can't use GPGMail to encrypt or sign messages."; -"NO PGP PRIVATE KEY - MESSAGE" = "If you want to be able to encrypt or sign messages with PGP, you need a personal PGP key. To create a PGP key, download and install MacGPG's GPG Keychain Access from http://macgpg.sourceforge.net/"; - -/* Conflict resolution panel*/ -"" = "Me"; -"" = "Yes"; -"" = "No"; -"" = "Always"; -"" = "Never"; -"" = "Accepts"; - -/* Additional info describing key */ -"DISABLED_KEY_QUALIFIER" = "disabled"; -"INVALID_KEY_QUALIFIER" = "invalid"; -"REVOKED_KEY_QUALIFIER" = "revoked"; -"EXPIRED_KEY_QUALIFIER" = "expired"; -"CANNOT_ENCRYPT_KEY_QUALIFIER" = "cannot encrypt"; -"CANNOT_SIGN_KEY_QUALIFIER" = "cannot sign"; - -/* Additional info describing userID */ -"INVALID_USER_ID_QUALIFIER" = "invalid"; -"REVOKED_USER_ID_QUALIFIER" = "revoked"; - -"COPY_MSG_URL_MENUITEM" = "Copy Message URL"; -} diff --git a/GPGMail/Resources/English.lproj/GPGMailCompose.nib/classes.nib b/GPGMail/Resources/English.lproj/GPGMailCompose.nib/classes.nib deleted file mode 100644 index 0162fc97..00000000 --- a/GPGMail/Resources/English.lproj/GPGMailCompose.nib/classes.nib +++ /dev/null @@ -1,139 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - accessoryView - NSView - - SUPERCLASS - NSObject - - - ACTIONS - - gpgToggleSymetricEncryption - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - alertImageView - NSImageView - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - selectedPersonalKey - id - signSwitch - NSButton - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/English.lproj/GPGMailCompose.nib/designable.nib b/GPGMail/Resources/English.lproj/GPGMailCompose.nib/designable.nib deleted file mode 100644 index 0de5274d..00000000 --- a/GPGMail/Resources/English.lproj/GPGMailCompose.nib/designable.nib +++ /dev/null @@ -1,3394 +0,0 @@ - - - - 1050 - 10B504 - 732 - 1038.2 - 437.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 732 - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - - - - - GPGMailComposeAccessoryViewOwner - - - FirstResponder - - - NSApplication - - - - 258 - {98, 1} - - NSView - - NSResponder - - - - 258 - - - - 258 - {{61, 1}, {273, 22}} - - YES - - -2076049856 - 132096 - - LucidaGrande - 11 - 3100 - - - 109199615 - 1 - - - - - - - - 400 - 75 - - - <<Item1>> - - 1048576 - 2147483647 - 1 - - NSImage - NSMenuCheckmark - - - NSImage - NSMenuMixedState - - _popUpItemAction: - - - YES - - - OtherViews - - - - - - <<Item2>> - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - <<Item3>> - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - 3 - YES - YES - 1 - - - - - 257 - {{336, 4}, {75, 18}} - - YES - - 67239424 - 131072 - Encrypted - - - 1211912703 - 2 - - NSImage - NSSwitch - - - NSSwitch - - - - 200 - 25 - - - - - 260 - {{0, 4}, {58, 18}} - - YES - - 67239424 - 131072 - Signed - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 257 - {{411, 1}, {113, 22}} - - YES - - -2076049856 - 132096 - - - 109199615 - 1 - - - - - - - - 400 - 75 - - - YES - Keys - - 1048576 - 2147483647 - - - _popUpItemAction: - - - YES - - - OtherViews - - - - - - Use Passphrase Encryption - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - YES - YES - - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - Automatic Choice - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - Choose... - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - Download... - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - YES - YES - - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - YES - 3 - YES - YES - 1 - - - - {524, 26} - NSView - NSResponder - - - 11 - 2 - {{26, 414}, {466, 240}} - 1886912512 - Choose Public Keys - NSPanel - - View - - {1.79769e+308, 1.79769e+308} - {466, 200} - - - 256 - - - - 293 - {{14, 12}, {438, 32}} - - YES - 1 - 3 - - - -2080244224 - 137887744 - Use Default Keys - - LucidaGrande - 13 - 1044 - - - -1 - -2038284033 - 1 - - Helvetica - 13 - 16 - - - - 200 - 25 - - - 67239424 - 137887744 - Cancel - - - -2038284033 - 1 - - - - 200 - 25 - - - 67239424 - 137887744 - Choose - - - 1 - -2038284033 - 1 - - - - 200 - 25 - - - {146, 32} - {0, -2} - -2080374784 - NSActionCell - - 67239424 - 137887744 - Button - - -1 - -2038284033 - 1 - - - - 200 - 25 - - -1 - -1 - - 6 - System - controlColor - - 3 - MC42NjY2NjY2NjY3AA - - - - - - - 266 - {{17, 203}, {432, 17}} - - YES - - 67239424 - 4194304 - Choose the public keys used for encryption - - - - - 6 - System - controlTextColor - - 3 - MAA - - - - - - - 274 - - - - 2304 - - - - 256 - {1205, 114} - - YES - - - 256 - {1205, 17} - - - - - - 256 - {{410, 0}, {16, 17}} - - - - - isSelected - 32 - 16 - 1000 - - 75628096 - 2048 - - - - 3 - MC4zMzMzMzI5OQA - - - 6 - System - headerTextColor - - - - - 67239424 - 131072 - Check - - - 1211912703 - 2 - - - - - 200 - 25 - - YES - - - - email - 150 - 40 - 1000 - - 75628096 - 2048 - E-mail - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - Text Cell - - - - 3 - MQA - - - - 3 - YES - - - - name - 150 - 40 - 1000 - - 75628096 - 2048 - Full Name - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - Text Cell - - - - - - 3 - YES - - - - comment - 64.975997924804688 - 59.976001739501953 - 1000 - - 75628096 - 2048 - Comment - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - Text Cell - - - - - - 3 - YES - - - - formattedFingerprint - 405.97601318359375 - 59.976001739501953 - 1000 - - 75628096 - 2048 - Fingerprint - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - Text Cell - - - - - - 3 - YES - - - - prefixedShortKeyID - 141.97599792480469 - 59.976001739501953 - 1000 - - 75628096 - 2048 - Key ID - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - 3 - YES - - - - validityDescription - 115.97599792480469 - 47.590000152587891 - 1000 - - 75628096 - 2048 - Validity - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - 3 - YES - - - - algorithmDescription - 119.71299743652344 - 61.275001525878906 - 1000 - - 75628096 - 2048 - Algorithm - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - 3 - YES - - - - 3 - 2 - - - 6 - System - gridColor - - 3 - MC41AA - - - 17 - -700416000 - - - 1 - -1 - 0 - YES - 0 - - - {{1, 17}, {409, 114}} - - - - - 6 - System - controlBackgroundColor - - - 4 - - - - 256 - {{410, 17}, {15, 114}} - - - _doScroller: - 0.4285714328289032 - - - - 256 - {{1, 131}, {409, 15}} - - YES - 1 - - _doScroller: - 0.33941909670829773 - - - - 2304 - - - - {{1, 0}, {409, 17}} - - - - - 4 - - - - {{20, 48}, {426, 147}} - - - 178 - - - - - - QSAAAEEgAABBmAAAQZgAAA - - - - 256 - {{243, 7}, {186, 22}} - - YES - - -2076049856 - 132096 - - - 109199615 - 6 - - - - - - - - 400 - 75 - - - YES - - - 1048576 - 2147483647 - - - _popUpItemAction: - - - YES - - - OtherViews - - - - - - E-mail - - 1048576 - 2147483647 - - - _popUpItemAction: - 1 - - - - - Full Name - - 1048576 - 2147483647 - - - _popUpItemAction: - 2 - - - - - Comment - - 1048576 - 2147483647 - - - _popUpItemAction: - 3 - - - - - Fingerprint - - 1048576 - 2147483647 - - - _popUpItemAction: - 4 - - - - - Key ID - - 1048576 - 2147483647 - - - _popUpItemAction: - 5 - - - - - Validity - - 1048576 - 2147483647 - - - _popUpItemAction: - 6 - - - - - Algorithm - - 1048576 - 2147483647 - - - _popUpItemAction: - 7 - - - - - YES - 2 - YES - YES - 2 - - - - {466, 240} - - - {{0, 0}, {1680, 1028}} - {466, 222} - {1.79769e+308, 1.79769e+308} - GPGPublicKeyList - - - 3 - 2 - {{616, 240}, {481, 342}} - 1886912512 - - Panel - - NSPanel - - View - - {1.79769e+308, 1.79769e+308} - {213, 107} - - - 256 - - - - 266 - {{73, 271}, {391, 51}} - - YES - - 67239424 - 4194304 - There are conflicts between the current PGP options and the options set in the PGP keys used here. You need to manually solve the conflict. - - - - - - - - - 268 - - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - NSFilenamesPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT TIFF v4.0 pasteboard type - - {{20, 274}, {48, 48}} - - YES - - 130560 - 33554432 - - NSImage - GPGMail - - 0 - 2 - 0 - NO - - YES - - - - 274 - - - - 2304 - - - - 256 - {368, 117} - - YES - - - 256 - {368, 17} - - - - - - 256 - {{369, 0}, {16, 17}} - - - - - email - 131 - 20 - 1000 - - 75628096 - 2048 - Who? - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - Text Cell - - - - - - 3 - YES - - - - encrypt - 75 - 20 - 1000 - - 75628096 - 134219776 - Encryption? - - - - - - 338820672 - 134218752 - Text Cell - - - - - - 3 - YES - - - - sign - 75 - 20 - 1000 - - 75628096 - 134219776 - Signature? - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 134218752 - Text Cell - - - - - - 3 - YES - - - - mime - 75 - 20 - 1000 - - 75628096 - 134219776 - MIME? - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 134218752 - Text Cell - - - - - - 3 - YES - - - - 3 - 2 - - - 17 - -700448768 - - - 4 - -1 - 0 - YES - 0 - - - {{1, 17}, {368, 117}} - - - - - 4 - - - - 256 - {{369, 17}, {15, 117}} - - - _doScroller: - 0.61578947305679321 - - - - 256 - {{1, 134}, {368, 15}} - - 1 - - _doScroller: - 0.99728995561599731 - - - - 2304 - - - - {{1, 0}, {368, 17}} - - - - - 4 - - - - {{76, 113}, {385, 150}} - - - 50 - - - - - QSAAAEEgAABBmAAAQZgAAA - - - - 289 - {{303, 12}, {164, 32}} - - YES - 1 - 2 - - - -2080244224 - 134217728 - Cancel - - - -2038284033 - 1 - - - - 200 - 25 - - - 67239424 - 134217728 - Send - - - 1 - -2038284033 - 1 - - - - 200 - 25 - - - {82, 32} - {0, 0} - -2080374784 - NSActionCell - - 67239424 - 134217728 - Send - - -1 - -2038284033 - 1 - - - - 200 - 25 - - -1 - -1 - - - - - - 290 - - - - 256 - - - - 292 - {{12, 12}, {69, 18}} - - YES - - 67239424 - 0 - Encrypt - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 292 - {{148, 12}, {63, 18}} - - YES - - 67239424 - 0 - Sign - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 292 - {{267, 12}, {63, 18}} - - YES - - 67239424 - 0 - MIME - - - 1211912703 - 2 - - - - 200 - 25 - - - - {{2, 2}, {387, 42}} - - - - {{73, 44}, {391, 59}} - - {0, 0} - - 67239424 - 0 - Your choice - - - 6 - System - textBackgroundColor - - - - 3 - MCAwLjgwMDAwMDAxAA - - - - 3 - 0 - 2 - NO - - - {481, 342} - - {{0, 0}, {1680, 1028}} - {213, 129} - {1.79769e+308, 1.79769e+308} - - - - - - - emptyView - - - - 57 - - - - publicKeysPanel - - - - 59 - - - - encryptionSwitch - - - - 60 - - - - personalKeysPopUpButton - - - - 61 - - - - publicKeysPopDownButton - - - - 62 - - - - signSwitch - - - - 64 - - - - choosePersonalKey: - - - - 65 - - - - endModal: - - - - 70 - - - - endModal: - - - - 71 - - - - gpgUseDefaultPublicKeys: - - - - 75 - - - - delegate - - - - 77 - - - - gpgToggleEncryptionForNewMessage: - - - - 78 - - - - gpgToggleSignatureForNewMessage: - - - - 79 - - - - accessoryView - - - - 87 - - - - gpgChoosePublicKeys: - - - - 88 - - - - dataSource - - - - 114 - - - - initialFirstResponder - - - - 117 - - - - nextKeyView - - - - 118 - - - - cornerView - - - - 129 - - - - toggleColumnDisplay: - - - - 132 - - - - toggleColumnDisplay: - - - - 133 - - - - toggleColumnDisplay: - - - - 134 - - - - toggleColumnDisplay: - - - - 135 - - - - toggleColumnDisplay: - - - - 136 - - - - toggleColumnDisplay: - - - - 137 - - - - publicKeysOutlineView - - - - 141 - - - - popDownButton - - - - 142 - - - - delegate - - - - 145 - - - - gpgToggleAutomaticPublicKeysChoice: - - - - 150 - - - - gpgToggleSymetricEncryption: - - - - 155 - - - - fullView - - - - 156 - - - - toggleColumnDisplay: - - - - 158 - - - - gpgDownloadMissingKeys: - - - - 197 - - - - conflictTableView - - - - 217 - - - - conflictSignatureButton - - - - 218 - - - - conflictEncryptionButton - - - - 219 - - - - conflictMIMEButton - - - - 220 - - - - conflictPanel - - - - 221 - - - - endConflictResolution: - - - - 222 - - - - dataSource - - - - 223 - - - - - - 0 - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - -3 - - - Application - - - 25 - - - EmptyView - - - 27 - - - - - - - - - AccessoryView - - - 30 - - - - - - - - 35 - - - - - - - - 36 - - - - - - - - 39 - - - - - - - - 45 - - - - - - Panel - - - 46 - - - - - - - - - - - 52 - - - - - - - - - - - 51 - - - - - 53 - - - - - 54 - - - - - 105 - - - - - - - - 108 - - - - - - - - - - - 109 - - - - - - - - - - - - - - - 106 - - - - - - - - 110 - - - - - - - - 111 - - - - - - - - 113 - - - - - - - - 259 - - - - - 138 - - - - - - - - 139 - - - - - - - - 140 - - - - - - - - 159 - - - - - - - - 122 - - - - - - - - 199 - - - - - - RuleConflict - - - 198 - - - - - - - - - - - - 200 - - - - - - - - 201 - - - - - - - - 206 - - - - - - - - - - - 204 - - - - - - - - - - - 203 - - - - - - - - 205 - - - - - - - - 207 - - - - - - - - 208 - - - - - - - - 214 - - - - - - - - - - 212 - - - - - 215 - - - - - 224 - - - - - - - - - - 269 - - - - - - - - 270 - - - - - 271 - - - - - 272 - - - - - - - - 273 - - - - - 274 - - - - - - - - 275 - - - - - 276 - - - - - 280 - - - - - 281 - - - - - 282 - - - - - 283 - - - - - 284 - - - - - 285 - - - - - 286 - - - - - 287 - - - - - 288 - - - - - 289 - - - - - 290 - - - - - 291 - - - - - 292 - - - - - 32 - - - - - - - - - - 33 - - - - - 31 - - - - - 29 - - - - - 37 - - - - - - - - - - - - - - 196 - - - - - 153 - - - - - 152 - - - - - 149 - - - - - 89 - - - - - 41 - - - - - 40 - - - - - 121 - - - - - - - - - - - - - - - 157 - - - - - 128 - - - - - 127 - - - - - 126 - - - - - 125 - - - - - 124 - - - - - 123 - - - - - 120 - - - - - 293 - - - - - 294 - - - - - 295 - - - - - 296 - - - - - 297 - - - - - 298 - - - - - 209 - - - - - - - - 277 - - - - - 210 - - - - - - - - 278 - - - - - 211 - - - - - - - - 279 - - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Choose which columns to display - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - {213, 107} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - - - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - - - - - - - - - - - - ToolTip - - ToolTip - - Selected key will be used for signature - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Choose whether you want to encrypt the message with PGP or not - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Choose whether you want an electronic PGP signature or not - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Listed keys will be used for encryption - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{84, 813}, {466, 240}} - com.apple.InterfaceBuilder.CocoaPlugin - {{84, 813}, {466, 240}} - - - {466, 200} - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Choose keys according to message recipients - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - - - - - 298 - - - - - FirstResponder - - gpgToggleSymetricEncryption: - id - - - IBUserSource - - - - - GPGMailComposeAccessoryViewOwner - MVComposeAccessoryViewOwner - - id - id - id - id - id - id - id - id - id - id - id - id - id - id - - - NSButton - NSButton - NSPanel - NSButton - NSTableView - NSView - NSButton - NSView - OptionalView - ColorBackgroundView - NSTextField - NSPopUpButton - NSPopUpButton - NSOutlineView - NSPanel - NSPopUpButton - NSButton - - - IBProjectSource - GPGMailComposeAccessoryViewOwner.h - - - - GPGMailComposeAccessoryViewOwner - MVComposeAccessoryViewOwner - - NSImageView - id - - - IBUserSource - - - - - MVComposeAccessoryViewOwner - NSObject - - IBProjectSource - MacOSX/MVComposeAccessoryViewOwner.h - - - - MVComposeAccessoryViewOwner - NSObject - - IBProjectSource - MailHeaders/MVComposeAccessoryViewOwner.h - - - - MVComposeAccessoryViewOwner - NSObject - - accessoryView - NSView - - - IBUserSource - - - - - NSControl - - IBProjectSource - MailHeaders/NSControl-MailAdditions.h - - - - NSObject - - IBProjectSource - GPG.subproj/GPGProgressIndicatorController.h - - - - NSObject - - IBProjectSource - GPGMailPatching.h - - - - NSObject - - IBProjectSource - GPGMessageViewerAccessoryViewOwner.h - - - - NSObject - - IBProjectSource - NSObject+GPGMail.h - - - - NSObject - - IBUserSource - - - - - NSOutlineView - - IBProjectSource - MailHeaders/NSOutlineView-MailAdditions.h - - - - NSPopUpButton - - IBProjectSource - MailHeaders/NSPopUpButton-MailAdditions.h - - - - NSTextFieldCell - - IBProjectSource - MailHeaders/NSTextFieldCell-ShouldntTheAppKitBeDoingThis.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-AttachmentDragSession.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-LocatingFrameViews.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-MailAppKitAdditions.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-MailQuickLookAdditions.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-ResizingAnimation.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-TilingSupport.h - - - - NSWindow - - IBProjectSource - MailHeaders/NSWindow-BetterDescription.h - - - - NSWindow - - IBProjectSource - MailHeaders/NSWindow-KeyViewNotifications.h - - - - - - GPGMailComposeAccessoryViewOwner - MVComposeAccessoryViewOwner - - id - id - id - id - id - id - id - id - id - id - id - - - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - - - IBDocumentRelativeSource - ../../../Library/Mail/Bundles/SexyGPG.mailbundle/Contents/Resources/GPGMail/GPGMailComposeAccessoryViewOwner.py - - - - - - NSActionCell - NSCell - - IBFrameworkSource - AppKit.framework/Headers/NSActionCell.h - - - - NSApplication - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSApplication.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSApplicationScripting.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSColorPanel.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSHelpManager.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSPageLayout.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSUserInterfaceItemSearching.h - - - - NSBox - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSBox.h - - - - NSButton - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSButton.h - - - - NSButtonCell - NSActionCell - - IBFrameworkSource - AppKit.framework/Headers/NSButtonCell.h - - - - NSCell - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSCell.h - - - - NSControl - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSControl.h - - - - NSFormatter - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSFormatter.h - - - - NSImageCell - NSCell - - IBFrameworkSource - AppKit.framework/Headers/NSImageCell.h - - - - NSImageView - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSImageView.h - - - - NSMatrix - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSMatrix.h - - - - NSMenu - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSMenu.h - - - - NSMenuItem - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSMenuItem.h - - - - NSMenuItemCell - NSButtonCell - - IBFrameworkSource - AppKit.framework/Headers/NSMenuItemCell.h - - - - NSObject - - IBFrameworkSource - AddressBook.framework/Headers/ABActions.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSAccessibility.h - - - - NSObject - - - - NSObject - - - - NSObject - - - - NSObject - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSDictionaryController.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSDragging.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSFontManager.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSFontPanel.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSKeyValueBinding.h - - - - NSObject - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSNibLoading.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSOutlineView.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSPasteboard.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSSavePanel.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSTableView.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSToolbarItem.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSView.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSArchiver.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSClassDescription.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSError.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSFileManager.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyValueCoding.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyValueObserving.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyedArchiver.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSObject.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSObjectScripting.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSPortCoder.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSRunLoop.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptClassDescription.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptKeyValueCoding.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptObjectSpecifiers.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptWhoseTests.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSThread.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURL.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURLConnection.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURLDownload.h - - - - NSObject - - IBFrameworkSource - MacGPGME.framework/Headers/GPGContext.h - - - - NSObject - - IBFrameworkSource - MacGPGME.framework/Headers/GPGData.h - - - - NSOutlineView - NSTableView - - - - NSPanel - NSWindow - - IBFrameworkSource - AppKit.framework/Headers/NSPanel.h - - - - NSPopUpButton - NSButton - - IBFrameworkSource - AppKit.framework/Headers/NSPopUpButton.h - - - - NSPopUpButtonCell - NSMenuItemCell - - IBFrameworkSource - AppKit.framework/Headers/NSPopUpButtonCell.h - - - - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSInterfaceStyle.h - - - - NSResponder - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSResponder.h - - - - NSScrollView - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSScrollView.h - - - - NSScroller - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSScroller.h - - - - NSTableColumn - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSTableColumn.h - - - - NSTableHeaderView - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSTableHeaderView.h - - - - NSTableView - NSControl - - - - NSTextField - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSTextField.h - - - - NSTextFieldCell - NSActionCell - - IBFrameworkSource - AppKit.framework/Headers/NSTextFieldCell.h - - - - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSClipView.h - - - - NSView - - - - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSRulerView.h - - - - NSView - NSResponder - - - - NSWindow - - IBFrameworkSource - AppKit.framework/Headers/NSDrawer.h - - - - NSWindow - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSWindow.h - - - - NSWindow - - IBFrameworkSource - AppKit.framework/Headers/NSWindowScripting.h - - - - - 0 - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - YES - ../../GPGMail.xcodeproj - 3 - - diff --git a/GPGMail/Resources/English.lproj/GPGMailCompose.nib/info.nib b/GPGMail/Resources/English.lproj/GPGMailCompose.nib/info.nib deleted file mode 100644 index 245ff40e..00000000 --- a/GPGMail/Resources/English.lproj/GPGMailCompose.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 52 - - IBSystem Version - 9B18 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/English.lproj/GPGMailCompose.nib/keyedobjects.nib b/GPGMail/Resources/English.lproj/GPGMailCompose.nib/keyedobjects.nib deleted file mode 100644 index e8722d2a..00000000 Binary files a/GPGMail/Resources/English.lproj/GPGMailCompose.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/English.lproj/GPGMailComposeTiger.nib/classes.nib b/GPGMail/Resources/English.lproj/GPGMailComposeTiger.nib/classes.nib deleted file mode 100644 index 079c9142..00000000 --- a/GPGMail/Resources/English.lproj/GPGMailComposeTiger.nib/classes.nib +++ /dev/null @@ -1,134 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - OUTLETS - - _optionSwitch - NSButton - _primaryView - NSView - - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - signSwitch - NSButton - switchProtoMatrix - NSMatrix - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/English.lproj/GPGMailComposeTiger.nib/designable.nib b/GPGMail/Resources/English.lproj/GPGMailComposeTiger.nib/designable.nib deleted file mode 100644 index 04c61320..00000000 --- a/GPGMail/Resources/English.lproj/GPGMailComposeTiger.nib/designable.nib +++ /dev/null @@ -1,1050 +0,0 @@ - - - - 1050 - 10B504 - 732 - 1038.2 - 437.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 732 - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - - - - - GPGMailComposeAccessoryViewOwner - - - FirstResponder - - - NSApplication - - - - 266 - - - - 310 - - - - 290 - {{0, -2}, {550, 5}} - - {0, 0} - - 67239424 - 0 - Box - - LucidaGrande - 13 - 1044 - - - 6 - System - textBackgroundColor - - 3 - MQA - - - - 3 - MCAwLjgwMDAwMDAxAA - - - 3 - 2 - 0 - NO - - - - 258 - {{109, 1}, {427, 26}} - - - NSView - - NSResponder - - - - -2147483388 - {{10, 6}, {22, 18}} - - YES - - -2080244224 - 0 - - - - 1215582719 - 2 - - NSSwitch - - - - 200 - 25 - - - - - 260 - {{34, 7}, {74, 17}} - - YES - - 67239424 - 71303168 - GPG: - - - - 6 - System - controlColor - - 3 - MC42NjY2NjY2NjY3AA - - - - 6 - System - controlTextColor - - 3 - MAA - - - - - - {550, 29} - - ColorBackgroundView - - - {550, 29} - - OptionalView - NSView - - - - - - - _primaryView - - - - 9 - - - - _optionSwitch - - - - 10 - - - - optionalView - - - - 11 - - - - optionalViewTitleField - - - - 12 - - - - optionalViewBackgroundView - - - - 39 - - - - - - 0 - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - -3 - - - Application - - - 5 - - - - - - View - - - 38 - - - - - - - - - - - 6 - - - - - - - - 7 - - - - - - - - 8 - - - - - 13 - - - - - 256 - {{2, 2}, {125, 1}} - - - - - - 14 - - - - - 42 - - - - - 43 - - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{63, 1047}, {550, 29}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - - - - - 43 - - - - - ColorBackgroundView - NSView - - IBProjectSource - MacOSX/ColorBackgroundView.h - - - - ColorBackgroundView - NSView - - IBProjectSource - MailHeaders/ColorBackgroundView.h - - - - ColorBackgroundView - NSView - - IBUserSource - - - - - FirstResponder - - IBUserSource - - - - - GPGMailComposeAccessoryViewOwner - NSObject - - id - id - id - id - id - id - id - id - id - id - id - id - id - id - - - NSButton - NSButton - NSPanel - NSButton - NSTableView - NSView - NSButton - NSView - OptionalView - ColorBackgroundView - NSTextField - NSPopUpButton - NSPopUpButton - NSOutlineView - NSPanel - NSPopUpButton - NSButton - - - IBProjectSource - GPGMailComposeAccessoryViewOwner.h - - - - GPGMailComposeAccessoryViewOwner - NSObject - - switchProtoMatrix - NSMatrix - - - IBUserSource - - - - - NSControl - - IBProjectSource - MailHeaders/NSControl-MailAdditions.h - - - - NSObject - - IBProjectSource - GPG.subproj/GPGProgressIndicatorController.h - - - - NSObject - - IBProjectSource - GPGMailPatching.h - - - - NSObject - - IBProjectSource - GPGMessageViewerAccessoryViewOwner.h - - - - NSObject - - IBProjectSource - NSObject+GPGMail.h - - - - NSObject - - IBUserSource - - - - - NSOutlineView - - IBProjectSource - MailHeaders/NSOutlineView-MailAdditions.h - - - - NSPopUpButton - - IBProjectSource - MailHeaders/NSPopUpButton-MailAdditions.h - - - - NSTextFieldCell - - IBProjectSource - MailHeaders/NSTextFieldCell-ShouldntTheAppKitBeDoingThis.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-AttachmentDragSession.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-LocatingFrameViews.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-MailAppKitAdditions.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-MailQuickLookAdditions.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-ResizingAnimation.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-TilingSupport.h - - - - NSWindow - - IBProjectSource - MailHeaders/NSWindow-BetterDescription.h - - - - NSWindow - - IBProjectSource - MailHeaders/NSWindow-KeyViewNotifications.h - - - - OptionalView - NSView - - IBProjectSource - MailHeaders/OptionalView.h - - - - OptionalView - NSView - - IBProjectSource - OptionalView.h - - - - OptionalView - NSView - - NSButton - NSView - - - IBUserSource - - - - - - - NSActionCell - NSCell - - IBFrameworkSource - AppKit.framework/Headers/NSActionCell.h - - - - NSApplication - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSApplication.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSApplicationScripting.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSColorPanel.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSHelpManager.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSPageLayout.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSUserInterfaceItemSearching.h - - - - NSBox - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSBox.h - - - - NSButton - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSButton.h - - - - NSButtonCell - NSActionCell - - IBFrameworkSource - AppKit.framework/Headers/NSButtonCell.h - - - - NSCell - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSCell.h - - - - NSControl - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSControl.h - - - - NSFormatter - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSFormatter.h - - - - NSMatrix - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSMatrix.h - - - - NSMenu - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSMenu.h - - - - NSObject - - IBFrameworkSource - AddressBook.framework/Headers/ABActions.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSAccessibility.h - - - - NSObject - - - - NSObject - - - - NSObject - - - - NSObject - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSDictionaryController.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSDragging.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSFontManager.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSFontPanel.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSKeyValueBinding.h - - - - NSObject - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSNibLoading.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSOutlineView.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSPasteboard.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSSavePanel.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSTableView.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSToolbarItem.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSView.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSArchiver.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSClassDescription.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSError.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSFileManager.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyValueCoding.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyValueObserving.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyedArchiver.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSObject.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSObjectScripting.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSPortCoder.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSRunLoop.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptClassDescription.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptKeyValueCoding.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptObjectSpecifiers.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptWhoseTests.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSThread.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURL.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURLConnection.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURLDownload.h - - - - NSObject - - IBFrameworkSource - MacGPGME.framework/Headers/GPGContext.h - - - - NSObject - - IBFrameworkSource - MacGPGME.framework/Headers/GPGData.h - - - - NSOutlineView - NSTableView - - - - NSPanel - NSWindow - - IBFrameworkSource - AppKit.framework/Headers/NSPanel.h - - - - NSPopUpButton - NSButton - - IBFrameworkSource - AppKit.framework/Headers/NSPopUpButton.h - - - - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSInterfaceStyle.h - - - - NSResponder - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSResponder.h - - - - NSTableView - NSControl - - - - NSTextField - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSTextField.h - - - - NSTextFieldCell - NSActionCell - - IBFrameworkSource - AppKit.framework/Headers/NSTextFieldCell.h - - - - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSClipView.h - - - - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSMenuItem.h - - - - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSRulerView.h - - - - NSView - NSResponder - - - - NSWindow - - IBFrameworkSource - AppKit.framework/Headers/NSDrawer.h - - - - NSWindow - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSWindow.h - - - - NSWindow - - IBFrameworkSource - AppKit.framework/Headers/NSWindowScripting.h - - - - - 0 - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - YES - ../../GPGMail.xcodeproj - 3 - - diff --git a/GPGMail/Resources/English.lproj/GPGMailComposeTiger.nib/info.nib b/GPGMail/Resources/English.lproj/GPGMailComposeTiger.nib/info.nib deleted file mode 100644 index 34312e23..00000000 --- a/GPGMail/Resources/English.lproj/GPGMailComposeTiger.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 38 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/English.lproj/GPGMailComposeTiger.nib/keyedobjects.nib b/GPGMail/Resources/English.lproj/GPGMailComposeTiger.nib/keyedobjects.nib deleted file mode 100644 index f0ece166..00000000 Binary files a/GPGMail/Resources/English.lproj/GPGMailComposeTiger.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/English.lproj/GPGMailPreferences.nib/designable.nib b/GPGMail/Resources/English.lproj/GPGMailPreferences.nib/designable.nib deleted file mode 100644 index 32a4107f..00000000 --- a/GPGMail/Resources/English.lproj/GPGMailPreferences.nib/designable.nib +++ /dev/null @@ -1,6010 +0,0 @@ - - - - 1050 - 10F569 - 788 - 1038.29 - 461.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 788 - - - YES - - - - YES - com.apple.InterfaceBuilder.CocoaPlugin - - - YES - - YES - - - YES - - - - YES - - GPGMailPreferences - - - FirstResponder - - - NSApplication - - - 11 - 2 - {{77, 205}, {648, 487}} - 1886912512 - <<Panel>> - NSPanel - View - {1.79769e+308, 1.79769e+308} - {213, 107} - - - 256 - - YES - - - 274 - - YES - - - 256 - - YES - - - 292 - {{17, 16}, {261, 11}} - - YES - - 69336577 - 4325376 - Version: %@ - - LucidaGrande - 9 - 3614 - - - - 6 - System - controlColor - - 3 - MC42NjY2NjY2NjY3AA - - - - 3 - MC4xNjY3MDAwMQA - - - - - - 292 - {{17, 29}, {261, 17}} - - YES - - 69336577 - 4194304 - Copyright (c) 2000-2008 - Stéphane Corthésy - - - - - 3 - MC4xNjY3MDAwMQA - - - - - - 289 - {{280, 35}, {261, 11}} - - YES - - 69336577 - 71303168 - Contact: %@ - - - - - 3 - MC4xNjY3MDAwMQA - - - - - - 289 - {{280, 16}, {261, 11}} - - YES - - 69336577 - 71434240 - http://www.sente.ch/software/GPGMail/ - - - - - 3 - MC4xNjY3MDAwMQA - - - - - - 274 - {{13, 44}, {532, 353}} - - - YES - - - 1 - - - - 256 - - YES - - - 266 - {{17, 258}, {462, 26}} - - YES - - -2076049856 - 1024 - - LucidaGrande - 13 - 1044 - - - 109199615 - 1 - - - - - - - - 400 - 75 - - - <<Item1>> - - 1048576 - 2147483647 - 1 - - NSImage - NSMenuCheckmark - - - NSImage - NSMenuMixedState - - _popUpItemAction: - - - YES - - - OtherViews - - - YES - - - - <<Item2>> - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - <<Item3>> - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - 3 - YES - YES - 1 - - - - - 266 - {{17, 290}, {478, 17}} - - YES - - 67239424 - 4194304 - Default Personal Key: - - - - - 6 - System - controlTextColor - - 3 - MAA - - - - - - - 266 - {{18, 226}, {476, 18}} - - YES - - 67239424 - 0 - Choose key according to account - - - 1211912703 - 2 - - NSSwitch - - - - 200 - 25 - - - - - 265 - {{355, 93}, {143, 32}} - - YES - - 67239424 - 137887744 - Forget Passphrases - - LucidaGrande - 11 - 3100 - - - -2038284033 - 1 - - Helvetica - 11 - 16 - - - - 200 - 25 - - - - - 268 - {{36, 103}, {116, 22}} - - YES - 1 - 1 - - YES - - 343014976 - -2076179456 - - - - - - 61 - - 67239424 - 0 - Timeout: - - - - - - {116, 22} - {1, 8} - 67633152 - NSActionCell - - 343014976 - 71304192 - - - 61 - - 67239424 - 0 - Field: - - - - -1 - -1 - - - 3 - MQA - - - - - 266 - {{18, 131}, {476, 58}} - - YES - 3 - 1 - - YES - - -2080244224 - 0 - Use Keychain to store passphrases - - - 1211912703 - 0 - - NSRadioButton - - - - - - 200 - 25 - - - 67239424 - 0 - Always ask me for passphrases - - - 2 - 1211912703 - 0 - - 549453824 - {18, 18} - - YES - - YES - - - - TU0AKgAABRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAADwRERGLJycnySsrK/A1NTXw -IyMjyRwcHIsJCQk8AAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFRUVdVBQUOCoqKj/ -29vb//n5+f/6+vr/2tra/6qqqv9UVFTgHx8fdQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUZGRl5 -dXV198PDw//8/Pz////////////////////////////U1NT/fHx89yUlJXkAAAAFAAAAAAAAAAAAAAAA -AAAAAxEREUZqamrmtbW1/+3t7f/+/v7//v7+//7+/v/9/f3//f39//39/f/39/f/xMTE/3d3d+YZGRlG -AAAAAwAAAAAAAAAAAAAACkJCQqGtra3/xsbG/+vr6//y8vL/9fX1//X19f/z8/P/9fX1//Ly8v/u7u7/ -0tLS/6+vr/9KSkqhAAAACgAAAAAAAAAAAAAAF3h4eN2/v7//z8/P/93d3f/q6ur/7+/v/+/v7//w8PD/ -7e3t/+3t7f/i4uL/zs7O/8XFxf98fHzdAAAAFwAAAAAAAAADAAAAJKSkpPjOzs7/2dnZ/+Dg4P/i4uL/ -5eXl/+bm5v/n5+f/5eXl/+Li4v/e3t7/2tra/9DQ0P+srKz4AAAAJAAAAAMAAAADAAAALrCwsPrW1tb/ -3t7e/+Tk5P/p6en/6+vr/+zs7P/p6en/6+vr/+fn5//k5OT/4ODg/9nZ2f+zs7P6AAAALgAAAAMAAAAD -AAAALp2dnezg4OD/5eXl/+rq6v/u7u7/8PDw//Dw8P/x8fH/8PDw/+7u7v/q6ur/5ubm/+Hh4f+ZmZns -AAAALgAAAAMAAAADAAAAJG5ubs/l5eX/6enp/+/v7//y8vL/9vb2//r6+v/5+fn/9/f3//b29v/x8fH/ -6+vr/+Tk5P9ra2vPAAAAJAAAAAMAAAAAAAAAFy4uLpPCwsL67Ozs//Pz8//5+fn//v7+//7+/v/+/v7/ -/v7+//v7+//19fX/8PDw/8LCwvosLCyTAAAAFwAAAAAAAAAAAAAACgAAAENfX1/S5OTk/vn5+f/+/v7/ -///////////////////////////8/Pz/5ubm/l9fX9IAAABDAAAACgAAAAAAAAAAAAAAAwAAABcAAABl -YmJi3NLS0v3////////////////////////////////V1dX9ZGRk3AAAAGUAAAAXAAAAAwAAAAAAAAAA -AAAAAAAAAAUAAAAfAAAAZTMzM8KAgIDwv7+//O3t7f/t7e3/v7+//ICAgPAzMzPCAAAAZQAAAB8AAAAF -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAFwAAAEMAAAB3AAAAnwAAALMAAACzAAAAnwAAAHcAAABD -AAAAFwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAoAAAAXAAAAJAAAAC4AAAAu -AAAAJAAAABcAAAAKAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAwAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQEAAAMAAAABABIAAAEB -AAMAAAABABIAAAECAAMAAAAEAAAFugEDAAMAAAABAAEAAAEGAAMAAAABAAIAAAERAAQAAAABAAAACAES -AAMAAAABAAEAAAEVAAMAAAABAAQAAAEWAAMAAAABABIAAAEXAAQAAAABAAAFEAEcAAMAAAABAAEAAAFS -AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA - - - - - - 3 - MCAwAA - - - - 400 - 75 - - - 67239424 - 0 - Remember passphrases during session - - - 1 - 1211912703 - 0 - - - - 200 - 25 - - - {476, 18} - {4, 2} - 1143472128 - NSActionCell - - 67239424 - 0 - Radio - - 1211912703 - 0 - - - 400 - 75 - - - - - - - - - 266 - {{12, 205}, {488, 5}} - - {0, 0} - - 67239424 - 0 - Box - - - 6 - System - textBackgroundColor - - - - 3 - MCAwLjgwMDAwMDAxAA - - - 3 - 2 - 0 - NO - - - - 268 - {{157, 105}, {147, 17}} - - YES - - 67239424 - 4194304 - seconds - - - - - - - - - 266 - {{18, 65}, {476, 18}} - - YES - - 67239424 - 0 - Show passphrase - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 265 - {{482, 265}, {12, 13}} - - YES - - 67239424 - 134217728 - - - LucidaGrande - 10 - 2843 - - - -935067393 - 2 - - NSImage - RefreshNormal - - - NSImage - RefreshPressed - - - - - - 200 - 25 - - - - {{10, 33}, {512, 307}} - - Keys - - - - - 2 - - - 256 - - YES - - - 266 - {{17, 209}, {477, 18}} - - YES - - 67239424 - 131072 - By default, use my public key also for encryption - - - 1211912703 - 2 - - NSImage - NSSwitch - - - - - 200 - 25 - - - - - 270 - {{17, 289}, {237, 18}} - - YES - - 67239424 - 131072 - By default, sign messages - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{17, 54}, {477, 18}} - - YES - - 67239424 - 131072 - Show PGP items in new message windows - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{17, 98}, {477, 18}} - - YES - - 67239424 - 131072 - By default, include BCC recipients - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{36, 78}, {459, 14}} - - YES - - 67239424 - 4456448 - Warning: all recipients can still find out to whom the mail was sent! - - - - - - - - - 270 - {{17, 158}, {237, 18}} - - YES - - 67239424 - 131072 - Trust all keys - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 266 - {{17, 129}, {477, 18}} - - YES - - 67239424 - 131072 - By default, use OpenPGP/MIME - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 266 - {{17, 269}, {477, 18}} - - YES - - 67239424 - 131072 - By default, sign messages when encrypting them - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 266 - {{17, 34}, {477, 18}} - - YES - - 67239424 - 131072 - Toolbar buttons display the current state - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 267 - {{257, 158}, {237, 18}} - - YES - - 67239424 - 131072 - Filter out keys that cannot be used - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 270 - {{17, 249}, {237, 18}} - - YES - - 67239424 - 131072 - By default, encrypt messages - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{17, 189}, {477, 18}} - - YES - - 67239424 - 131072 - Use rules defined in AddressBook cards - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 267 - {{257, 289}, {237, 18}} - - YES - - 67239424 - 131072 - Sign reply to PGP-signed message - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 267 - {{257, 249}, {240, 18}} - - YES - - 67239424 - 131072 - Encrypt reply to PGP-encrypted message - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 266 - {{17, 5}, {477, 18}} - - YES - - 67239424 - 131072 - Separate sign and encrypt operations - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 266 - {{17, 229}, {477, 18}} - - YES - - 67239424 - 131072 - Encrypt when all keys are available - - - 1211912703 - 2 - - - - 200 - 25 - - - - {{10, 33}, {512, 307}} - - Composing - - - - - - - 256 - - YES - - - 266 - {{18, 289}, {476, 18}} - - YES - - 67239424 - 0 - Authenticate messages automatically - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{37, 267}, {457, 18}} - - YES - - 604110336 - 0 - Only if message is unread - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{18, 245}, {476, 18}} - - YES - - 67239424 - 0 - Decrypt messages automatically - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{37, 223}, {457, 18}} - - YES - - 604110336 - 0 - Only if message is unread - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{18, 201}, {476, 18}} - - YES - - 67239424 - 0 - By default, show detailed signature information - - - 1211912703 - 2 - - - - 200 - 25 - - - - {{10, 33}, {512, 307}} - - Viewing - - - - - - - 256 - - YES - - - 266 - - YES - - - 2304 - - YES - - - 256 - {458, 1} - - YES - - - 256 - {458, 17} - - - - - - 256 - {{-26, 0}, {16, 17}} - - - - YES - - name - 60 - 40 - 1000 - - 75628096 - 2048 - Full Name - - - 3 - MC4zMzMzMzI5OQA - - - 6 - System - headerTextColor - - - - - 338820672 - 1024 - - - - - - - - - email - 61 - 8 - 1000 - - 75628096 - 2048 - <e-mail> - - - - - - 338820672 - 1024 - - - - - - - - - comment - 63 - 40 - 1000 - - 75628096 - 2048 - (comment) - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - - - - fingerprint - 66 - 40 - 1000 - - 75628096 - 2048 - Fingerprint - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - - - - keyID - 39 - 20 - 1000 - - 75628096 - 2048 - Key ID - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - - - - validity - 53.245998382568359 - 53.245998382568359 - 1000 - - 75628096 - 2048 - [validity] - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - - - - algorithm - 46 - 32.384002685546875 - 1000 - - 75628096 - 2048 - Algo - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - - - - 3 - 2 - - - 6 - System - gridColor - - 3 - MC41AA - - - 17 - -1776287744 - - - 4 - -1 - 0 - YES - 0 - - - {{1, 17}, {458, 0}} - - - - - 6 - System - controlBackgroundColor - - - 4 - - - - 256 - {{-100, -100}, {15, 18}} - - YES - - _doScroller: - 0.094736844301223755 - - - - 256 - {{-100, -100}, {394, 15}} - - 1 - - _doScroller: - 0.95399516820907593 - - - - 2304 - - YES - - - {{1, 0}, {458, 17}} - - - - - 4 - - - - {{17, 261}, {460, 18}} - - - 66 - - - - - QSAAAEEgAABBmAAAQZgAAA - - - - 265 - {{477, 261}, {18, 18}} - - YES - - -2076049856 - 132096 - - - 109199615 - 6 - - - - - - - - 400 - 75 - - - YES - - - 1048576 - 2147483647 - - - _popUpItemAction: - - - YES - - - OtherViews - - - YES - - - - Full Name - - 1048576 - 2147483647 - - - _popUpItemAction: - 1 - - - - - E-mail - - 1048576 - 2147483647 - - - _popUpItemAction: - 2 - - - - - Comment - - 1048576 - 2147483647 - - - _popUpItemAction: - 3 - - - - - Fingerprint - - 1048576 - 2147483647 - - - _popUpItemAction: - 4 - - - - - Key ID - - 1048576 - 2147483647 - - - _popUpItemAction: - 5 - - - - - Validity - - 1048576 - 2147483647 - - - _popUpItemAction: - 6 - - - - - Algorithm - - 1048576 - 2147483647 - - - _popUpItemAction: - 7 - - - - - YES - 3 - YES - YES - 2 - - - - - 266 - {{14, 287}, {484, 17}} - - YES - - 67239424 - 4194304 - Information displayed for keys in menus: - - - - - - - - - 266 - {{18, 231}, {476, 18}} - - YES - - 67239424 - 0 - Display all identities on keys - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 268 - {{20, 194}, {197, 22}} - - YES - 1 - 1 - - YES - - 343014976 - -1941961728 - - - - - - 142 - - 67239424 - 67108864 - Line wrapping length: - - - - - {197, 22} - {1, 8} - 67633152 - NSActionCell - - 343014976 - 205521920 - - - 142 - - 67239424 - 67108864 - Field: - - - - -1 - -1 - - - - - - 268 - {{222, 196}, {273, 14}} - - YES - - 67239424 - 4194304 - zero means "no wrapping" - - - - - - - - - 266 - {{18, 161}, {476, 18}} - - YES - - 67239424 - 0 - Refresh key list when (un)mounting a volume - - - 1211912703 - 2 - - - - 200 - 25 - - - - - 266 - {{18, 139}, {476, 18}} - - YES - - 67239424 - 0 - Disable S/MIME - - - 1211912703 - 2 - - - - 200 - 25 - - - - {{10, 33}, {512, 307}} - - Misc - - - - - Item 4 - - - 256 - - YES - - - 268 - {{15, 245}, {225, 18}} - - YES - - -2080244224 - 0 - Automatically check for updates - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{142, 201}, {185, 26}} - - YES - - -2076049856 - 2048 - - - 109199615 - 129 - - - 400 - 75 - - - Hourly - - 1048576 - 2147483647 - 1 - - - _popUpItemAction: - 3600 - - - YES - - OtherViews - - YES - - - - Daily - - 1048576 - 2147483647 - - - _popUpItemAction: - 86400 - - - - - Weekly - - 1048576 - 2147483647 - - - _popUpItemAction: - 604800 - - - - - Monthly - - 2147483647 - - - _popUpItemAction: - 2629800 - - - - - - 1 - YES - YES - 2 - - - - - 268 - {{14, 207}, {47, 17}} - - YES - - 68288064 - 272630784 - Check - - - - - - - - - 268 - {{56, 207}, {78, 17}} - - YES - - 68288064 - 272630784 - for Updates - - - - - - - - - 268 - {{15, 169}, {226, 18}} - - YES - - -2080244224 - 0 - Downlod updates automatically - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{15, 125}, {161, 18}} - - YES - - -2080244224 - 0 - Include system profile - - - 1211912703 - 2 - - - - - 200 - 25 - - - - {{10, 33}, {512, 307}} - - - Update - - - - - - - 0 - YES - YES - - YES - - - - - {558, 403} - - - - {{0, 84}, {558, 403}} - - {0, 0} - - 67239424 - 0 - Box - - LucidaGrande - 12 - 16 - - - - 3 - MCAwLjgwMDAwMDAxAA - - - - 0 - 3 - 0 - NO - - - {648, 487} - - - {{0, 0}, {1680, 1028}} - {213, 129} - {1.79769e+308, 1.79769e+308} - - - - YES - - YES - allowsFloats - attributedStringForNil - attributedStringForNotANumber - attributedStringForZero - decimalSeparator - formatterBehavior - groupingSeparator - minimum - negativeFormat - positiveFormat - usesGroupingSeparator - - - YES - - - - - - NaN - - YES - - - YES - - - - - 0 - - - , - - . - - 1 - 1 - NO - YES - 1 - AQAAAAAAAAAAAAAAAAAAAA - - -0 - 0 - - - - 0 - -0 - - - - - - - - 0 - 0 - YES - NO - 1 - AAAAAAAAAAAAAAAAAAAAAA - - - , - . - NO - YES - YES - - - - YES - - YES - allowsFloats - attributedStringForNil - attributedStringForNotANumber - attributedStringForZero - decimalSeparator - formatterBehavior - groupingSeparator - locale - minimum - negativeFormat - positiveFormat - usesGroupingSeparator - - - YES - - - - - - NaN - - - - 0 - - - . - - , - - - - - 0 - 0 - NO - NO - 1 - AAAAAAAAAAAAAAAAAAAAAA - - -0 - 0 - - - - 0 - -0 - - - - - - - - - . - , - NO - NO - YES - - - YES - - - - - YES - - - preferencesView - - - - 23 - - - - versionTextField - - - - 24 - - - - alwaysSignSwitchButton - - - - 120 - - - - authenticateUnreadMessagesSwitchButton - - - - 121 - - - - automaticallyAuthenticateMessagesSwitchButton - - - - 122 - - - - decryptUnreadMessagesSwitchButton - - - - 124 - - - - displayButtonInComposeWindowSwitchButton - - - - 125 - - - - encryptToSelfSwitchButton - - - - 126 - - - - personalKeysPopUpButton - - - - 127 - - - - flushCachedPassphrases: - - - - 134 - - - - toggleEncryptToSelf: - - - - 135 - - - - toggleAlwaysSignMessages: - - - - 137 - - - - toggleAuthenticatesMessagesAutomatically: - - - - 138 - - - - toggleAuthenticateUnreadMessagesAutomatically: - - - - 139 - - - - toggleDecryptsMessagesAutomatically: - - - - 140 - - - - toggleDecryptsUnreadMessagesAutomatically: - - - - 141 - - - - toggleDisplayAccessoryView: - - - - 142 - - - - initialFirstResponder - - - - 143 - - - - automaticallyDecryptMessagesSwitchButton - - - - 156 - - - - changeDefaultKey: - - - - 157 - - - - choosesPersonalKeyAccordingToAccountSwitchButton - - - - 194 - - - - openPGPMIMESwitchButton - - - - 195 - - - - passphraseStrategyMatrix - - - - 196 - - - - passphraseTimeoutFormCell - - - - 197 - - - - trustAllKeysSwitchButton - - - - 198 - - - - useBCCRecipientsSwitchButton - - - - 199 - - - - changePassphraseStrategy: - - - - 200 - - - - changePassphraseTimeout: - - - - 201 - - - - toggleBCCRecipientsUse: - - - - 203 - - - - toggleTrustAllKeys: - - - - 204 - - - - toggleOpenPGPMIME: - - - - 205 - - - - extendedInfoSwitchButton - - - - 206 - - - - toggleExtendedInformation: - - - - 207 - - - - toggleAutomaticPersonalKeyChoice: - - - - 208 - - - - signWhenEncryptingSwitchButton - - - - 215 - - - - toggleSignWhenEncrypting: - - - - 216 - - - - buttonsShowStateSwitchButton - - - - 243 - - - - toggleButtonsBehavior: - - - - 244 - - - - keyIdentifiersTableView - - - - 245 - - - - showUserIDsSwitchButton - - - - 246 - - - - toggleShowUserIDs: - - - - 247 - - - - dataSource - - - - 248 - - - - delegate - - - - 249 - - - - keyIdentifiersPopUpButton - - - - 251 - - - - toggleShowKeyInformation: - - - - 252 - - - - toggleShowKeyInformation: - - - - 253 - - - - toggleShowKeyInformation: - - - - 254 - - - - toggleShowKeyInformation: - - - - 255 - - - - toggleShowKeyInformation: - - - - 256 - - - - toggleShowKeyInformation: - - - - 257 - - - - filtersKeysSwitchButton - - - - 260 - - - - toggleFilterKeys: - - - - 261 - - - - toggleShowKeyInformation: - - - - 266 - - - - showsPassphraseSwitchButton - - - - 268 - - - - toggleShowPassphrase: - - - - 269 - - - - toggleAlwaysEncryptMessages: - - - - 271 - - - - alwaysEncryptSwitchButton - - - - 272 - - - - lineWrappingFormCell - - - - 278 - - - - changeLineWrapping: - - - - 279 - - - - contactTextField - - - - 307 - - - - disableSMIMESwitchButton - - - - 308 - - - - encryptReplyToEncryptedMessageSwitchButton - - - - 309 - - - - encryptWhenAllKeysAvailableSwitchButton - - - - 310 - - - - refreshKeysOnVolumeChangeSwitchButton - - - - 311 - - - - separateSignAndEncryptOperationsSwitchButton - - - - 312 - - - - signReplyToSignedMessageSwitchButton - - - - 313 - - - - useSmartRulesSwitchButton - - - - 314 - - - - webSiteTextField - - - - 315 - - - - toggleSmartRules: - - - - 333 - - - - toggleSignedReplyToSignedMessage: - - - - 334 - - - - toggleEncryptedReplyToEncryptedMessage: - - - - 335 - - - - toggleEncryptWhenPossible: - - - - 336 - - - - toggleSeparatePGPOperations: - - - - 337 - - - - toggleKeyRefresh: - - - - 338 - - - - toggleSMIME: - - - - 339 - - - - refreshKeys: - - - - 340 - - - - formatter - - - - 419 - - - - formatter - - - - 420 - - - - value: updater.automaticallyChecksForUpdates - - - - - - value: updater.automaticallyChecksForUpdates - value - updater.automaticallyChecksForUpdates - 2 - - - 508 - - - - selectedTag: updater.updateCheckInterval - - - - - - selectedTag: updater.updateCheckInterval - selectedTag - updater.updateCheckInterval - 2 - - - 511 - - - - value: updater.automaticallyDownloadsUpdates - - - - - - value: updater.automaticallyDownloadsUpdates - value - updater.automaticallyDownloadsUpdates - 2 - - - 513 - - - - value: updater.sendsSystemProfile - - - - - - value: updater.sendsSystemProfile - value - updater.sendsSystemProfile - 2 - - - 515 - - - - enabled: updater.automaticallyDownloadsUpdates - - - - - - enabled: updater.automaticallyDownloadsUpdates - enabled - updater.automaticallyDownloadsUpdates - 2 - - - 517 - - - - - YES - - 0 - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - -3 - - - Application - - - 5 - - - YES - - - - Panel - - - 6 - - - YES - - - - - - 9 - - - YES - - - - - - - - - - 209 - - - Number Formatter - - - 277 - - - Number Formatter-1 - - - 12 - - - YES - - - - - - 425 - - - - - 31 - - - YES - - - - - - 426 - - - - - 32 - - - YES - - - - - - 427 - - - - - 90 - - - YES - - - - - - 428 - - - - - 158 - - - YES - - - - - - - - - - 219 - - - YES - - - - - - 180 - - - YES - - - - - - 160 - - - YES - - - - - - 159 - - - YES - - - - - - 162 - - - YES - - - - - - - - - - - - - - - - - - - - - 289 - - - YES - - - - - - 288 - - - YES - - - - - - 287 - - - YES - - - - - - 286 - - - YES - - - - - - 281 - - - YES - - - - - - 270 - - - YES - - - - - - 259 - - - YES - - - - - - 217 - - - YES - - - - - - 214 - - - YES - - - - - - 188 - - - YES - - - - - - 187 - - - YES - - - - - - 186 - - - YES - - - - - - 185 - - - YES - - - - - - 119 - - - YES - - - - - - 116 - - - YES - - - - - - 103 - - - YES - - - - - - 429 - - - - - 430 - - - - - 431 - - - - - 432 - - - - - 433 - - - - - 434 - - - - - 435 - - - - - 436 - - - - - 437 - - - - - 438 - - - - - 439 - - - - - 440 - - - - - 441 - - - - - 442 - - - - - 443 - - - - - 444 - - - - - 161 - - - YES - - - - - - - - - - - - - - - 330 - - - YES - - - - - - 267 - - - YES - - - - - - 184 - - - YES - - - - - - 182 - - - - - 174 - - - YES - - - - - - - - - 170 - - - YES - - - - - - - 169 - - - YES - - - - - - 100 - - - YES - - - - - - 97 - - - YES - - - - - - 94 - - - YES - - - - - - 445 - - - YES - - - - - - 92 - - - YES - - - - - - - - 93 - - - - - 95 - - - - - 96 - - - - - 446 - - - - - 447 - - - - - 448 - - - - - 463 - - - - - 173 - - - - - 464 - - - - - 179 - - - - - 178 - - - - - 177 - - - - - 449 - - - - - 450 - - - - - 451 - - - - - 181 - - - YES - - - - - - - - - - 189 - - - YES - - - - - - 118 - - - YES - - - - - - 117 - - - YES - - - - - - 114 - - - YES - - - - - - 113 - - - YES - - - - - - 452 - - - - - 453 - - - - - 454 - - - - - 455 - - - - - 456 - - - - - 220 - - - YES - - - - - - - - - - - - - 285 - - - YES - - - - - - 284 - - - YES - - - - - - 280 - - - YES - - - - - - 273 - - - YES - - - - - - - 241 - - - YES - - - - - - 238 - - - YES - - - - - - 235 - - - YES - - - - - - 228 - - - YES - - - - - - - - - 475 - - - - - 474 - - - - - 473 - - - - - 225 - - - YES - - - - - - - - - - - - 264 - - - YES - - - - - - 236 - - - YES - - - - - - 234 - - - YES - - - - - - 233 - - - YES - - - - - - 230 - - - YES - - - - - - 227 - - - YES - - - - - - 221 - - - YES - - - - - - 466 - - - - - 467 - - - - - 468 - - - - - 469 - - - - - 470 - - - - - 471 - - - - - 472 - - - - - 457 - - - YES - - - - - - 231 - - - YES - - - - - - - - - - - - - 222 - - - - - 223 - - - - - 224 - - - - - 226 - - - - - 229 - - - - - 232 - - - - - 237 - - - - - 265 - - - - - 458 - - - - - 459 - - - - - 465 - - - - - 276 - - - - - 460 - - - - - 461 - - - - - 462 - - - - - 486 - - - YES - - - - - - 487 - - - YES - - - - - - - - - - - 488 - - - YES - - - - - - 489 - - - - - 490 - - - YES - - - - - - 491 - - - YES - - - - - - 492 - - - YES - - - - - - - - - 493 - - - - - 494 - - - - - 495 - - - - - 496 - - - - - 497 - - - YES - - - - - - 498 - - - - - 499 - - - YES - - - - - - 500 - - - - - 501 - - - YES - - - - - - 502 - - - - - 503 - - - YES - - - - - - 504 - - - - - 505 - - - - - - - YES - - YES - -3.IBPluginDependency - -3.ImportedFromIB2 - 100.IBAttributePlaceholdersKey - 100.IBPluginDependency - 100.ImportedFromIB2 - 103.IBAttributePlaceholdersKey - 103.IBPluginDependency - 103.ImportedFromIB2 - 113.IBAttributePlaceholdersKey - 113.IBPluginDependency - 113.ImportedFromIB2 - 114.IBAttributePlaceholdersKey - 114.IBPluginDependency - 114.ImportedFromIB2 - 116.IBAttributePlaceholdersKey - 116.IBPluginDependency - 116.ImportedFromIB2 - 117.IBAttributePlaceholdersKey - 117.IBPluginDependency - 117.ImportedFromIB2 - 118.IBAttributePlaceholdersKey - 118.IBPluginDependency - 118.ImportedFromIB2 - 119.IBAttributePlaceholdersKey - 119.IBPluginDependency - 119.ImportedFromIB2 - 12.IBPluginDependency - 12.ImportedFromIB2 - 158.IBPluginDependency - 158.ImportedFromIB2 - 159.IBPluginDependency - 159.ImportedFromIB2 - 160.IBPluginDependency - 160.ImportedFromIB2 - 161.IBPluginDependency - 161.ImportedFromIB2 - 162.IBPluginDependency - 162.ImportedFromIB2 - 169.IBAttributePlaceholdersKey - 169.IBPluginDependency - 169.ImportedFromIB2 - 170.IBPluginDependency - 170.ImportedFromIB2 - 173.IBPluginDependency - 173.ImportedFromIB2 - 174.IBPluginDependency - 174.ImportedFromIB2 - 177.IBAttributePlaceholdersKey - 177.IBPluginDependency - 177.ImportedFromIB2 - 178.IBAttributePlaceholdersKey - 178.IBPluginDependency - 178.ImportedFromIB2 - 179.IBAttributePlaceholdersKey - 179.IBPluginDependency - 179.ImportedFromIB2 - 180.IBPluginDependency - 180.ImportedFromIB2 - 181.IBPluginDependency - 181.ImportedFromIB2 - 182.IBPluginDependency - 182.ImportedFromIB2 - 184.IBPluginDependency - 184.ImportedFromIB2 - 185.IBAttributePlaceholdersKey - 185.IBPluginDependency - 185.ImportedFromIB2 - 186.IBPluginDependency - 186.ImportedFromIB2 - 187.IBAttributePlaceholdersKey - 187.IBPluginDependency - 187.ImportedFromIB2 - 188.IBAttributePlaceholdersKey - 188.IBPluginDependency - 188.ImportedFromIB2 - 189.IBAttributePlaceholdersKey - 189.IBPluginDependency - 189.ImportedFromIB2 - 209.IBPluginDependency - 209.ImportedFromIB2 - 214.IBAttributePlaceholdersKey - 214.IBPluginDependency - 214.ImportedFromIB2 - 217.IBAttributePlaceholdersKey - 217.IBPluginDependency - 217.ImportedFromIB2 - 219.IBPluginDependency - 219.ImportedFromIB2 - 220.IBPluginDependency - 220.ImportedFromIB2 - 221.IBPluginDependency - 221.ImportedFromIB2 - 222.IBPluginDependency - 222.ImportedFromIB2 - 223.IBPluginDependency - 223.ImportedFromIB2 - 224.IBPluginDependency - 224.ImportedFromIB2 - 225.IBPluginDependency - 225.ImportedFromIB2 - 226.IBPluginDependency - 226.ImportedFromIB2 - 227.IBPluginDependency - 227.ImportedFromIB2 - 228.IBAttributePlaceholdersKey - 228.IBPluginDependency - 228.ImportedFromIB2 - 229.IBPluginDependency - 229.ImportedFromIB2 - 230.IBPluginDependency - 230.ImportedFromIB2 - 231.IBPluginDependency - 231.ImportedFromIB2 - 232.IBPluginDependency - 232.ImportedFromIB2 - 233.IBPluginDependency - 233.ImportedFromIB2 - 234.IBPluginDependency - 234.ImportedFromIB2 - 235.IBAttributePlaceholdersKey - 235.IBPluginDependency - 235.ImportedFromIB2 - 236.IBPluginDependency - 236.ImportedFromIB2 - 237.IBPluginDependency - 237.ImportedFromIB2 - 238.IBPluginDependency - 238.ImportedFromIB2 - 241.IBAttributePlaceholdersKey - 241.IBPluginDependency - 241.ImportedFromIB2 - 259.IBAttributePlaceholdersKey - 259.IBPluginDependency - 259.ImportedFromIB2 - 264.IBPluginDependency - 264.ImportedFromIB2 - 265.IBPluginDependency - 265.ImportedFromIB2 - 267.IBAttributePlaceholdersKey - 267.IBPluginDependency - 267.ImportedFromIB2 - 270.IBAttributePlaceholdersKey - 270.IBPluginDependency - 270.ImportedFromIB2 - 273.IBPluginDependency - 273.ImportedFromIB2 - 276.IBPluginDependency - 276.ImportedFromIB2 - 277.IBPluginDependency - 277.ImportedFromIB2 - 280.IBPluginDependency - 280.ImportedFromIB2 - 281.IBAttributePlaceholdersKey - 281.IBPluginDependency - 281.ImportedFromIB2 - 284.IBAttributePlaceholdersKey - 284.IBPluginDependency - 284.ImportedFromIB2 - 285.IBAttributePlaceholdersKey - 285.IBPluginDependency - 285.ImportedFromIB2 - 286.IBAttributePlaceholdersKey - 286.IBPluginDependency - 286.ImportedFromIB2 - 287.IBAttributePlaceholdersKey - 287.IBPluginDependency - 287.ImportedFromIB2 - 288.IBAttributePlaceholdersKey - 288.IBPluginDependency - 288.ImportedFromIB2 - 289.IBAttributePlaceholdersKey - 289.IBPluginDependency - 289.ImportedFromIB2 - 31.IBPluginDependency - 31.ImportedFromIB2 - 32.IBAttributePlaceholdersKey - 32.IBPluginDependency - 32.ImportedFromIB2 - 330.IBAttributePlaceholdersKey - 330.IBPluginDependency - 330.ImportedFromIB2 - 425.IBPluginDependency - 426.IBPluginDependency - 427.IBPluginDependency - 428.IBPluginDependency - 429.IBPluginDependency - 430.IBPluginDependency - 431.IBPluginDependency - 432.IBPluginDependency - 433.IBPluginDependency - 434.IBPluginDependency - 435.IBPluginDependency - 436.IBPluginDependency - 437.IBPluginDependency - 438.IBPluginDependency - 439.IBPluginDependency - 440.IBPluginDependency - 441.IBPluginDependency - 442.IBPluginDependency - 443.IBPluginDependency - 444.IBPluginDependency - 445.IBPluginDependency - 446.IBPluginDependency - 447.IBPluginDependency - 448.IBPluginDependency - 449.IBPluginDependency - 450.IBPluginDependency - 451.IBPluginDependency - 452.IBPluginDependency - 453.IBPluginDependency - 454.IBPluginDependency - 455.IBPluginDependency - 456.IBPluginDependency - 457.IBPluginDependency - 458.IBPluginDependency - 459.IBPluginDependency - 460.IBPluginDependency - 461.IBPluginDependency - 462.IBPluginDependency - 463.IBPluginDependency - 464.IBPluginDependency - 465.IBPluginDependency - 466.IBPluginDependency - 466.IBShouldRemoveOnLegacySave - 467.IBPluginDependency - 467.IBShouldRemoveOnLegacySave - 468.IBPluginDependency - 468.IBShouldRemoveOnLegacySave - 469.IBPluginDependency - 469.IBShouldRemoveOnLegacySave - 470.IBPluginDependency - 470.IBShouldRemoveOnLegacySave - 471.IBPluginDependency - 471.IBShouldRemoveOnLegacySave - 472.IBPluginDependency - 472.IBShouldRemoveOnLegacySave - 473.IBPluginDependency - 473.IBShouldRemoveOnLegacySave - 474.IBPluginDependency - 474.IBShouldRemoveOnLegacySave - 475.IBPluginDependency - 475.IBShouldRemoveOnLegacySave - 486.IBPluginDependency - 487.IBPluginDependency - 488.IBPluginDependency - 489.IBPluginDependency - 490.IBPluginDependency - 491.IBPluginDependency - 492.IBEditorWindowLastContentRect - 492.IBPluginDependency - 493.IBPluginDependency - 494.IBPluginDependency - 495.IBPluginDependency - 496.IBPluginDependency - 497.IBPluginDependency - 498.IBPluginDependency - 499.IBPluginDependency - 5.IBEditorWindowLastContentRect - 5.IBPluginDependency - 5.IBWindowTemplateEditedContentRect - 5.ImportedFromIB2 - 5.windowTemplate.hasMinSize - 5.windowTemplate.minSize - 500.IBPluginDependency - 501.IBPluginDependency - 502.IBPluginDependency - 503.IBPluginDependency - 504.IBPluginDependency - 6.IBPluginDependency - 6.ImportedFromIB2 - 9.IBPluginDependency - 9.ImportedFromIB2 - 90.IBPluginDependency - 90.ImportedFromIB2 - 92.IBPluginDependency - 92.ImportedFromIB2 - 93.IBPluginDependency - 93.ImportedFromIB2 - 94.IBPluginDependency - 94.ImportedFromIB2 - 95.IBPluginDependency - 95.ImportedFromIB2 - 96.IBPluginDependency - 96.ImportedFromIB2 - 97.IBPluginDependency - 97.ImportedFromIB2 - - - YES - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Clear passphrases cache - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Use sender's key for encryption, allowing sender to decrypt what she encrypted - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Verify signed messages only when they are read for the first time - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Decrypt messages only when they are read for the first time - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Automatically sign all messages - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Verify signed messages, each time they are viewed - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Decrypt messages each time they are viewed - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Show PGP user interface elements (checkboxes and drop-down menus) in new message windows - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Choose the sender's key according to the sender's account - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Store PGP key passphrases in user's keychain - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Cache passphrases in memory during some time - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Never cache passphrases - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - By default, use keys for BCC recipients, though it reveals who was BCC'd - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Don't care about the trust level set on keys - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Use modern format, using MIME attachments, instead of old inline PGP armored format - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Automatically show signature detail information - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Automatically sign messages when encrypting them - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Toolbar buttons can mean either the current state, or the action to perform - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Reorder information fields by dragging them - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Add or remove a field by choosing it in this popup button - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Display all userIDs associated with the key - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Don't show keys which are revoked/expired/invalid/disabled - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Show passphrases in clear when typing them - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Automatically encrypt all messages - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Make an educated guess on when to sign/encrypt, based on recipients rules stored in AddressBook cards - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Refresh key list each time a volume is mounted or unmounted - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - In Compose window, don't show S/MIME sign/encrypt buttons - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Automatically sign replies to messages that were digitally signed with PGP - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Automatically encrypt replies to messages that were PGP-encrypted - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Sign messages, then encrypt them, instead of doing all in one operation (signature encapsulation) - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Try to encrypt all messages, as long as all keys are available - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Send me your feedback at this address - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Refresh key list - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{146, 888}, {185, 83}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{120, 604}, {648, 487}} - com.apple.InterfaceBuilder.CocoaPlugin - {{120, 604}, {648, 487}} - - - {213, 107} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - - - YES - - - YES - - - - - YES - - - YES - - - - 517 - - - - YES - - FirstResponder - NSObject - - IBUserSource - - - - - GPGMailPreferences - NSPreferencesModule - - YES - - YES - changeDefaultKey: - changeLineWrapping: - changePassphraseStrategy: - changePassphraseTimeout: - exportGPGMailConfiguration: - flushCachedPassphrases: - refreshKeys: - toggleAlwaysEncryptMessages: - toggleAlwaysSignMessages: - toggleAuthenticateUnreadMessagesAutomatically: - toggleAuthenticatesMessagesAutomatically: - toggleAutomaticPersonalKeyChoice: - toggleBCCRecipientsUse: - toggleButtonsBehavior: - toggleDecryptsMessagesAutomatically: - toggleDecryptsUnreadMessagesAutomatically: - toggleDisplayAccessoryView: - toggleEncryptToSelf: - toggleEncryptWhenPossible: - toggleEncryptedReplyToEncryptedMessage: - toggleExtendedInformation: - toggleFilterKeys: - toggleKeyRefresh: - toggleOpenPGPMIME: - toggleSMIME: - toggleSeparatePGPOperations: - toggleShowKeyInformation: - toggleShowPassphrase: - toggleShowUserIDs: - toggleSignWhenEncrypting: - toggleSignedReplyToSignedMessage: - toggleSmartRules: - toggleTrustAllKeys: - - - YES - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - - - - YES - - YES - changeDefaultKey: - changeLineWrapping: - changePassphraseStrategy: - changePassphraseTimeout: - exportGPGMailConfiguration: - flushCachedPassphrases: - refreshKeys: - toggleAlwaysEncryptMessages: - toggleAlwaysSignMessages: - toggleAuthenticateUnreadMessagesAutomatically: - toggleAuthenticatesMessagesAutomatically: - toggleAutomaticPersonalKeyChoice: - toggleBCCRecipientsUse: - toggleButtonsBehavior: - toggleDecryptsMessagesAutomatically: - toggleDecryptsUnreadMessagesAutomatically: - toggleDisplayAccessoryView: - toggleEncryptToSelf: - toggleEncryptWhenPossible: - toggleEncryptedReplyToEncryptedMessage: - toggleExtendedInformation: - toggleFilterKeys: - toggleKeyRefresh: - toggleOpenPGPMIME: - toggleSMIME: - toggleSeparatePGPOperations: - toggleShowKeyInformation: - toggleShowPassphrase: - toggleShowUserIDs: - toggleSignWhenEncrypting: - toggleSignedReplyToSignedMessage: - toggleSmartRules: - toggleTrustAllKeys: - - - YES - - changeDefaultKey: - id - - - changeLineWrapping: - id - - - changePassphraseStrategy: - id - - - changePassphraseTimeout: - id - - - exportGPGMailConfiguration: - id - - - flushCachedPassphrases: - id - - - refreshKeys: - id - - - toggleAlwaysEncryptMessages: - id - - - toggleAlwaysSignMessages: - id - - - toggleAuthenticateUnreadMessagesAutomatically: - id - - - toggleAuthenticatesMessagesAutomatically: - id - - - toggleAutomaticPersonalKeyChoice: - id - - - toggleBCCRecipientsUse: - id - - - toggleButtonsBehavior: - id - - - toggleDecryptsMessagesAutomatically: - id - - - toggleDecryptsUnreadMessagesAutomatically: - id - - - toggleDisplayAccessoryView: - id - - - toggleEncryptToSelf: - id - - - toggleEncryptWhenPossible: - id - - - toggleEncryptedReplyToEncryptedMessage: - id - - - toggleExtendedInformation: - id - - - toggleFilterKeys: - id - - - toggleKeyRefresh: - id - - - toggleOpenPGPMIME: - id - - - toggleSMIME: - id - - - toggleSeparatePGPOperations: - id - - - toggleShowKeyInformation: - id - - - toggleShowPassphrase: - id - - - toggleShowUserIDs: - id - - - toggleSignWhenEncrypting: - id - - - toggleSignedReplyToSignedMessage: - id - - - toggleSmartRules: - id - - - toggleTrustAllKeys: - id - - - - - YES - - YES - alwaysEncryptSwitchButton - alwaysSignSwitchButton - authenticateUnreadMessagesSwitchButton - automaticallyAuthenticateMessagesSwitchButton - automaticallyDecryptMessagesSwitchButton - buttonsShowStateSwitchButton - choosesPersonalKeyAccordingToAccountSwitchButton - contactTextField - decryptUnreadMessagesSwitchButton - disableSMIMESwitchButton - displayButtonInComposeWindowSwitchButton - encryptReplyToEncryptedMessageSwitchButton - encryptToSelfSwitchButton - encryptWhenAllKeysAvailableSwitchButton - extendedInfoSwitchButton - filtersKeysSwitchButton - keyIdentifiersPopUpButton - keyIdentifiersTableView - lineWrappingFormCell - openPGPMIMESwitchButton - passphraseStrategyMatrix - passphraseTimeoutFormCell - personalKeysPopUpButton - refreshKeysOnVolumeChangeSwitchButton - separateSignAndEncryptOperationsSwitchButton - showUserIDsSwitchButton - showsPassphraseSwitchButton - signReplyToSignedMessageSwitchButton - signWhenEncryptingSwitchButton - trustAllKeysSwitchButton - useBCCRecipientsSwitchButton - useSmartRulesSwitchButton - versionTextField - webSiteTextField - - - YES - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSTextField - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSPopUpButton - NSTableView - NSFormCell - NSButton - NSMatrix - NSFormCell - NSPopUpButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSTextField - NSTextField - - - - YES - - YES - alwaysEncryptSwitchButton - alwaysSignSwitchButton - authenticateUnreadMessagesSwitchButton - automaticallyAuthenticateMessagesSwitchButton - automaticallyDecryptMessagesSwitchButton - buttonsShowStateSwitchButton - choosesPersonalKeyAccordingToAccountSwitchButton - contactTextField - decryptUnreadMessagesSwitchButton - disableSMIMESwitchButton - displayButtonInComposeWindowSwitchButton - encryptReplyToEncryptedMessageSwitchButton - encryptToSelfSwitchButton - encryptWhenAllKeysAvailableSwitchButton - extendedInfoSwitchButton - filtersKeysSwitchButton - keyIdentifiersPopUpButton - keyIdentifiersTableView - lineWrappingFormCell - openPGPMIMESwitchButton - passphraseStrategyMatrix - passphraseTimeoutFormCell - personalKeysPopUpButton - refreshKeysOnVolumeChangeSwitchButton - separateSignAndEncryptOperationsSwitchButton - showUserIDsSwitchButton - showsPassphraseSwitchButton - signReplyToSignedMessageSwitchButton - signWhenEncryptingSwitchButton - trustAllKeysSwitchButton - useBCCRecipientsSwitchButton - useSmartRulesSwitchButton - versionTextField - webSiteTextField - - - YES - - alwaysEncryptSwitchButton - NSButton - - - alwaysSignSwitchButton - NSButton - - - authenticateUnreadMessagesSwitchButton - NSButton - - - automaticallyAuthenticateMessagesSwitchButton - NSButton - - - automaticallyDecryptMessagesSwitchButton - NSButton - - - buttonsShowStateSwitchButton - NSButton - - - choosesPersonalKeyAccordingToAccountSwitchButton - NSButton - - - contactTextField - NSTextField - - - decryptUnreadMessagesSwitchButton - NSButton - - - disableSMIMESwitchButton - NSButton - - - displayButtonInComposeWindowSwitchButton - NSButton - - - encryptReplyToEncryptedMessageSwitchButton - NSButton - - - encryptToSelfSwitchButton - NSButton - - - encryptWhenAllKeysAvailableSwitchButton - NSButton - - - extendedInfoSwitchButton - NSButton - - - filtersKeysSwitchButton - NSButton - - - keyIdentifiersPopUpButton - NSPopUpButton - - - keyIdentifiersTableView - NSTableView - - - lineWrappingFormCell - NSFormCell - - - openPGPMIMESwitchButton - NSButton - - - passphraseStrategyMatrix - NSMatrix - - - passphraseTimeoutFormCell - NSFormCell - - - personalKeysPopUpButton - NSPopUpButton - - - refreshKeysOnVolumeChangeSwitchButton - NSButton - - - separateSignAndEncryptOperationsSwitchButton - NSButton - - - showUserIDsSwitchButton - NSButton - - - showsPassphraseSwitchButton - NSButton - - - signReplyToSignedMessageSwitchButton - NSButton - - - signWhenEncryptingSwitchButton - NSButton - - - trustAllKeysSwitchButton - NSButton - - - useBCCRecipientsSwitchButton - NSButton - - - useSmartRulesSwitchButton - NSButton - - - versionTextField - NSTextField - - - webSiteTextField - NSTextField - - - - - IBProjectSource - Source/GPGMailPreferences.h - - - - GPGMailPreferences - NSPreferencesModule - - IBUserSource - - - - - NSObject - - IBProjectSource - Source/GPG.subproj/GPGProgressIndicatorController.h - - - - NSObject - - IBProjectSource - Source/GPGMailPatching.h - - - - NSObject - - IBProjectSource - Source/GPGMessageViewerAccessoryViewOwner.h - - - - NSObject - - IBProjectSource - Source/NSObject+GPGMail.h - - - - NSObject - - IBUserSource - - - - - NSPreferencesModule - NSObject - - IBProjectSource - Source/PrivateHeaders/NSPreferences.h - - - - NSPreferencesModule - NSObject - - preferencesView - id - - - preferencesView - - preferencesView - id - - - - IBUserSource - - - - - - YES - - NSActionCell - NSCell - - IBFrameworkSource - AppKit.framework/Headers/NSActionCell.h - - - - NSApplication - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSApplication.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSApplicationScripting.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSColorPanel.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSHelpManager.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSPageLayout.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSUserInterfaceItemSearching.h - - - - NSBox - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSBox.h - - - - NSButton - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSButton.h - - - - NSButtonCell - NSActionCell - - IBFrameworkSource - AppKit.framework/Headers/NSButtonCell.h - - - - NSCell - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSCell.h - - - - NSControl - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSControl.h - - - - NSController - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSController.h - - - - NSForm - NSMatrix - - IBFrameworkSource - AppKit.framework/Headers/NSForm.h - - - - NSFormCell - NSActionCell - - IBFrameworkSource - AppKit.framework/Headers/NSFormCell.h - - - - NSFormatter - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSFormatter.h - - - - NSMatrix - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSMatrix.h - - - - NSMenu - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSMenu.h - - - - NSMenuItem - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSMenuItem.h - - - - NSMenuItemCell - NSButtonCell - - IBFrameworkSource - AppKit.framework/Headers/NSMenuItemCell.h - - - - NSNumberFormatter - NSFormatter - - IBFrameworkSource - Foundation.framework/Headers/NSNumberFormatter.h - - - - NSObject - - IBFrameworkSource - AddressBook.framework/Headers/ABActions.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSAccessibility.h - - - - NSObject - - - - NSObject - - - - NSObject - - - - NSObject - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSDictionaryController.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSDragging.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSFontManager.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSFontPanel.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSKeyValueBinding.h - - - - NSObject - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSNibLoading.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSOutlineView.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSPasteboard.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSSavePanel.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSTableView.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSToolbarItem.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSView.h - - - - NSObject - - IBFrameworkSource - ExceptionHandling.framework/Headers/NSExceptionHandler.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSArchiver.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSClassDescription.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSError.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSFileManager.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyValueCoding.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyValueObserving.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyedArchiver.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSObject.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSObjectScripting.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSPortCoder.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSRunLoop.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptClassDescription.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptKeyValueCoding.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptObjectSpecifiers.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptWhoseTests.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSThread.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURL.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURLConnection.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURLDownload.h - - - - NSObject - - IBFrameworkSource - Sparkle.framework/Headers/SUAppcast.h - - - - NSObject - - IBFrameworkSource - Sparkle.framework/Headers/SUUpdater.h - - - - NSPanel - NSWindow - - IBFrameworkSource - AppKit.framework/Headers/NSPanel.h - - - - NSPopUpButton - NSButton - - IBFrameworkSource - AppKit.framework/Headers/NSPopUpButton.h - - - - NSPopUpButtonCell - NSMenuItemCell - - IBFrameworkSource - AppKit.framework/Headers/NSPopUpButtonCell.h - - - - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSInterfaceStyle.h - - - - NSResponder - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSResponder.h - - - - NSScrollView - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSScrollView.h - - - - NSScroller - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSScroller.h - - - - NSTabView - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSTabView.h - - - - NSTabViewItem - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSTabViewItem.h - - - - NSTableColumn - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSTableColumn.h - - - - NSTableHeaderView - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSTableHeaderView.h - - - - NSTableView - NSControl - - - - NSTextField - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSTextField.h - - - - NSTextFieldCell - NSActionCell - - IBFrameworkSource - AppKit.framework/Headers/NSTextFieldCell.h - - - - NSUserDefaultsController - NSController - - IBFrameworkSource - AppKit.framework/Headers/NSUserDefaultsController.h - - - - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSClipView.h - - - - NSView - - - - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSRulerView.h - - - - NSView - NSResponder - - - - NSWindow - - IBFrameworkSource - AppKit.framework/Headers/NSDrawer.h - - - - NSWindow - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSWindow.h - - - - NSWindow - - IBFrameworkSource - AppKit.framework/Headers/NSWindowScripting.h - - - - - 0 - IBCocoaFramework - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - - com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 - - - YES - ../../GPGMail.xcodeproj - 3 - - YES - - YES - NSMenuCheckmark - NSMenuMixedState - NSSwitch - RefreshNormal - RefreshPressed - - - YES - {9, 8} - {7, 2} - {15, 15} - {12, 13} - {12, 13} - - - - diff --git a/GPGMail/Resources/English.lproj/GPGMailPreferences.nib/keyedobjects.nib b/GPGMail/Resources/English.lproj/GPGMailPreferences.nib/keyedobjects.nib deleted file mode 100644 index 633442be..00000000 Binary files a/GPGMail/Resources/English.lproj/GPGMailPreferences.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/English.lproj/GPGMenu.nib/classes.nib b/GPGMail/Resources/English.lproj/GPGMenu.nib/classes.nib deleted file mode 100644 index 6ac982ef..00000000 --- a/GPGMail/Resources/English.lproj/GPGMenu.nib/classes.nib +++ /dev/null @@ -1,57 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = { - gpgAuthenticate = id; - gpgChoosePersonalKeys = id; - gpgChoosePublicKeys = id; - gpgDecrypt = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - gpgChoosePersonalKey = id; - gpgChoosePublicKey = id; - gpgChoosePublicKeys = id; - gpgReloadPGPKeys = id; - gpgSearchKeys = id; - gpgToggleAutomaticPublicKeysChoice = id; - gpgToggleDisplayAllUserIDs = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleShowKeyInformation = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - mailTo = id; - }; - CLASS = GPGMailBundle; - LANGUAGE = ObjC; - OUTLETS = { - PGPMenu = NSMenu; - PGPViewMenu = NSMenu; - allUserIDsMenuItem = NSMenuItem; - authenticateMenuItem = NSMenuItem; - automaticPublicKeysMenuItem = NSMenuItem; - choosePublicKeysMenuItem = NSMenuItem; - decryptMenuItem = NSMenuItem; - defaultKey = id; - encryptsNewMessageMenuItem = NSMenuItem; - personalKeysMenuItem = NSMenuItem; - proxyServer = id; - signsNewMessageMenuItem = NSMenuItem; - symetricEncryptionMenuItem = NSMenuItem; - usesOnlyOpenPGPStyleMenuItem = NSMenuItem; - }; - SUPERCLASS = MVMailBundle; - }, - {CLASS = MVMailBundle; LANGUAGE = ObjC; SUPERCLASS = NSObject; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/English.lproj/GPGMenu.nib/info.nib b/GPGMail/Resources/English.lproj/GPGMenu.nib/info.nib deleted file mode 100644 index 52a4ffe6..00000000 --- a/GPGMail/Resources/English.lproj/GPGMenu.nib/info.nib +++ /dev/null @@ -1,24 +0,0 @@ - - - - - IBDocumentLocation - 614 138 356 278 0 0 1680 1028 - IBEditorPositions - - 34 - 259 798 237 230 0 0 1680 1028 - 88 - 660 834 111 194 0 0 1680 1028 - - IBFramework Version - 437.0 - IBOpenObjects - - 34 - 88 - - IBSystem Version - 8A428 - - diff --git a/GPGMail/Resources/English.lproj/GPGMenu.nib/objects.nib b/GPGMail/Resources/English.lproj/GPGMenu.nib/objects.nib deleted file mode 100644 index 68c622c0..00000000 Binary files a/GPGMail/Resources/English.lproj/GPGMenu.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/English.lproj/GPGMessageViewerAccessoryView.nib/classes.nib b/GPGMail/Resources/English.lproj/GPGMessageViewerAccessoryView.nib/classes.nib deleted file mode 100644 index 5c956adf..00000000 --- a/GPGMail/Resources/English.lproj/GPGMessageViewerAccessoryView.nib/classes.nib +++ /dev/null @@ -1,112 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - authenticate - id - decrypt - id - gpgAuthenticate - id - gpgDecrypt - id - toggleSignatureExtraView - id - - CLASS - GPGMessageViewerAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - authenticationButton - NSButton - authenticationView - NSView - decryptedIconView - NSImageView - decryptedInfoView - NSView - decryptedMessageTextField - NSTextField - decryptionButton - NSButton - decryptionView - NSView - delegate - id - disclosureButton - NSButton - expirationAlertIconView - NSImageView - generalAlertIconView - NSImageView - policyAlertIconView - NSImageView - signatureBadPolicyAlertTextField - NSTextField - signatureCreationDateTextField - NSTextField - signatureExpirationDateTextField - NSTextField - signatureIconView - NSImageView - signatureKeyFingerprintTextField - NSTextField - signatureLowerView - NSView - signatureMessageTextField - NSTextField - signatureToggleButton - NSButton - signatureUpperView - NSView - signatureValidityTextField - NSTextField - signatureView - NSView - trustAlertIconView - NSImageView - userIDsPopDownButton - NSPopUpButton - - SUPERCLASS - NSObject - - - ACTIONS - - - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/English.lproj/GPGMessageViewerAccessoryView.nib/designable.nib b/GPGMail/Resources/English.lproj/GPGMessageViewerAccessoryView.nib/designable.nib deleted file mode 100644 index 46e3ff30..00000000 --- a/GPGMail/Resources/English.lproj/GPGMessageViewerAccessoryView.nib/designable.nib +++ /dev/null @@ -1,2085 +0,0 @@ - - - - 1050 - 10B504 - 732 - 1038.2 - 437.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 732 - - - - com.apple.InterfaceBuilder.CocoaPlugin - - - - - GPGMessageViewerAccessoryViewOwner - - - FirstResponder - - - NSApplication - - - - 266 - - - - 292 - - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - NSFilenamesPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT TIFF v4.0 pasteboard type - - {{20, 4}, {32, 32}} - - YES - - 130560 - 33554432 - - NSImage - GPGMail32 - - 0 - 2 - 0 - NO - - YES - - - - 289 - {{404, 2}, {77, 32}} - - YES - - 67239424 - 137887744 - Verify - - LucidaGrande - 13 - 1044 - - - -2038284033 - 1 - - Helvetica - 13 - 16 - - - - - - - - 200 - 25 - - - - - 290 - {{57, 12}, {348, 17}} - - YES - - 68288064 - 4195328 - The message has been signed with PGP. - - - - 6 - System - controlColor - - 3 - MC42NjY2NjY2NjY3AA - - - - 6 - System - controlTextColor - - 3 - MAA - - - - - - {495, 40} - ColorBackgroundView - NSView - - - - 266 - - - - 292 - - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - NSFilenamesPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT TIFF v4.0 pasteboard type - - {{20, 4}, {32, 32}} - - YES - - 130560 - 33554432 - - 0 - 2 - 0 - NO - - YES - - - - 289 - {{392, 2}, {89, 32}} - - YES - - 67239424 - 137887744 - Decrypt - - - -2038284033 - 1 - - - - - - - - 200 - 25 - - - - - 290 - {{57, 12}, {336, 17}} - - YES - - 68288064 - 4195328 - The message has been encrypted with PGP. - - - - - - - - {495, 40} - ColorBackgroundView - NSView - - - - 266 - - - - 266 - - - - 292 - - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - NSFilenamesPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT TIFF v4.0 pasteboard type - - {{20, 4}, {32, 32}} - - YES - - 130560 - 33554432 - - NSImage - signed - - 0 - 0 - 0 - NO - - YES - - - - 290 - {{57, 13}, {376, 14}} - - YES - - 70385217 - 4195328 - <<Signed by NAME (COMMENT) <EMAIL> | Key not found | bad signature | key revoked>> - - LucidaGrande - 11 - 3100 - - - - - - - - - 289 - {{436, -1}, {22, 18}} - - YES - - 67239424 - 134348800 - - - - -926662401 - 2 - - NSImage - triangle - - - - - - - 200 - 25 - - - - - 289 - - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - NSFilenamesPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT TIFF v4.0 pasteboard type - - {{438, 19}, {16, 16}} - - YES - - 130560 - 33554432 - - NSImage - SmallAlert16 - - 0 - 0 - 0 - NO - - YES - - - {{0, 75}, {474, 40}} - - ColorBackgroundView - NSView - - - - 266 - - - - 266 - {{20, 53}, {333, 13}} - - YES - - 70385217 - 4195328 - <<Signed on 22/12/2222, 22:22:22>> - - LucidaGrande - 10 - 2843 - - - - - - - - - 266 - {{0, 72}, {474, 5}} - - {0, 0} - - 67239424 - 0 - Box - - - 6 - System - textBackgroundColor - - 3 - MQA - - - - 3 - MCAwLjgwMDAwMDAxAA - - - 3 - 2 - 0 - NO - - - - 266 - {{20, 31}, {238, 13}} - - YES - - 70385217 - 4195328 - <<Signature expiration date: 22/12/2222>> - - - - - - - - - 265 - {{266, 31}, {188, 13}} - - YES - - 70385217 - 71304192 - <<Bad policy!>> - - LucidaGrande-Bold - 10 - 16 - - - - - - - - - 265 - {{311, 53}, {143, 13}} - - YES - - 70385217 - 71304192 - <<Trust Level: Unknown>> - - - - - - - - - 268 - - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - NSFilenamesPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT TIFF v4.0 pasteboard type - - {{6, 32}, {12, 12}} - - YES - - 130560 - 33554432 - - NSImage - SmallAlert12 - - 0 - 0 - 0 - NO - - YES - - - - 265 - - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - NSFilenamesPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT TIFF v4.0 pasteboard type - - {{456, 32}, {12, 12}} - - YES - - 130560 - 33554432 - - 0 - 0 - 0 - NO - - YES - - - - 265 - - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - NSFilenamesPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT TIFF v4.0 pasteboard type - - {{456, 55}, {12, 12}} - - YES - - 130560 - 33554432 - - 0 - 0 - 0 - NO - - YES - - - - 265 - {{369, 6}, {82, 19}} - - YES - - -2076049856 - 132096 - - - 109199615 - 6 - - - - - - - - 400 - 75 - - - YES - User IDs - - 1048576 - 2147483647 - - NSImage - NSMenuCheckmark - - - NSImage - NSMenuMixedState - - _popUpItemAction: - - - YES - - - OtherViews - - - - - - <<Item2>> - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - <<Item3>> - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - YES - 3 - YES - YES - 2 - - - - - 266 - {{20, 10}, {363, 13}} - - YES - - 70385217 - 4195328 - <<Key Fingerprint: FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF>> - - - - - - - - {474, 75} - - NSView - - - {474, 115} - ColorBackgroundView - NSView - - - - 266 - - - - 292 - - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - NSFilenamesPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT TIFF v4.0 pasteboard type - - {{20, 4}, {32, 32}} - - YES - - 130560 - 33554432 - - NSImage - unsigned - - 0 - 2 - 0 - NO - - YES - - - - 290 - {{57, 12}, {421, 17}} - - YES - - 70385217 - 4195328 - <<message>> - - - - - - - - {495, 40} - ColorBackgroundView - NSView - - - - - - - authenticate: - - - - 32 - - - - decrypt: - - - - 33 - - - - authenticationButton - - - - 34 - - - - authenticationView - - - - 35 - - - - decryptionButton - - - - 36 - - - - decryptionView - - - - 37 - - - - signatureBadPolicyAlertTextField - - - - 38 - - - - signatureCreationDateTextField - - - - 39 - - - - signatureExpirationDateTextField - - - - 40 - - - - signatureMessageTextField - - - - 41 - - - - signatureView - - - - 42 - - - - signatureKeyFingerprintTextField - - - - 68 - - - - signatureIconView - - - - 69 - - - - signatureLowerView - - - - 70 - - - - signatureUpperView - - - - 71 - - - - signatureToggleButton - - - - 72 - - - - signatureValidityTextField - - - - 73 - - - - toggleSignatureExtraView: - - - - 74 - - - - decryptedInfoView - - - - 79 - - - - decryptedMessageTextField - - - - 80 - - - - decryptedIconView - - - - 81 - - - - expirationAlertIconView - - - - 87 - - - - generalAlertIconView - - - - 88 - - - - policyAlertIconView - - - - 89 - - - - trustAlertIconView - - - - 91 - - - - userIDsPopDownButton - - - - 97 - - - - disclosureButton - - - - 101 - - - - - - 0 - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - -3 - - - Application - - - 11 - - - - - - - - authentication - - - 12 - - - - - - - - 13 - - - - - - - - 14 - - - - - - - - 18 - - - - - - - - decryption - - - 15 - - - - - - - - 16 - - - - - - - - 17 - - - - - - - - 22 - - - - - - - signature - - - 66 - - - - - - - - - - - 19 - - - - - - - - 28 - - - - - - - - 44 - - - - - - - - 82 - - - - - - - - 67 - - - - - - - - - - - - - - - - - 24 - - - - - - - - 26 - - - - - - - - 29 - - - - - 30 - - - - - - - - 45 - - - - - - - - 64 - - - - - - - - 84 - - - - - - - - 85 - - - - - - - - 86 - - - - - - - - 92 - - - - - - - - 75 - - - - - - - decrypted - - - 76 - - - - - - - - 78 - - - - - - - - 104 - - - - - 105 - - - - - 106 - - - - - 107 - - - - - 108 - - - - - 109 - - - - - 110 - - - - - 111 - - - - - 112 - - - - - 113 - - - - - 114 - - - - - 115 - - - - - 116 - - - - - 117 - - - - - 118 - - - - - 119 - - - - - 120 - - - - - 121 - - - - - 122 - - - - - - - - 123 - - - - - 124 - - - - - 93 - - - - - - - - - - 96 - - - - - 95 - - - - - 94 - - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Show Details - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - - - - - 124 - - - - - ColorBackgroundView - NSView - - IBProjectSource - MacOSX/ColorBackgroundView.h - - - - ColorBackgroundView - NSView - - IBProjectSource - MailHeaders/ColorBackgroundView.h - - - - ColorBackgroundView - NSView - - IBUserSource - - - - - FirstResponder - - : - id - - - IBUserSource - - - - - GPGMessageViewerAccessoryViewOwner - NSObject - - id - id - id - id - id - - - NSButton - NSView - NSImageView - NSView - NSTextField - NSButton - NSView - id - NSButton - NSImageView - NSImageView - NSImageView - NSTextField - NSTextField - NSTextField - NSImageView - NSTextField - NSView - NSTextField - NSButton - NSView - NSTextField - NSView - NSImageView - NSPopUpButton - - - IBProjectSource - GPGMessageViewerAccessoryViewOwner.h - - - - GPGMessageViewerAccessoryViewOwner - NSObject - - IBUserSource - - - - - NSControl - - IBProjectSource - MailHeaders/NSControl-MailAdditions.h - - - - NSObject - - IBProjectSource - GPG.subproj/GPGProgressIndicatorController.h - - - - NSObject - - IBProjectSource - GPGMailPatching.h - - - - NSObject - - - - NSObject - - IBProjectSource - NSObject+GPGMail.h - - - - NSObject - - IBUserSource - - - - - NSPopUpButton - - IBProjectSource - MailHeaders/NSPopUpButton-MailAdditions.h - - - - NSTextFieldCell - - IBProjectSource - MailHeaders/NSTextFieldCell-ShouldntTheAppKitBeDoingThis.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-AttachmentDragSession.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-LocatingFrameViews.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-MailAppKitAdditions.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-MailQuickLookAdditions.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-ResizingAnimation.h - - - - NSView - - IBProjectSource - MailHeaders/NSView-TilingSupport.h - - - - - - GPGMessageViewerAccessoryViewOwner - NSObject - - id - id - id - id - id - - - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - - - IBDocumentRelativeSource - ../../../Library/Mail/Bundles/SexyGPG.mailbundle/Contents/Resources/GPGMail/GPGMessageViewerAccessoryViewOwner.py - - - - - - NSActionCell - NSCell - - IBFrameworkSource - AppKit.framework/Headers/NSActionCell.h - - - - NSApplication - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSApplication.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSApplicationScripting.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSColorPanel.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSHelpManager.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSPageLayout.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSUserInterfaceItemSearching.h - - - - NSBox - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSBox.h - - - - NSButton - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSButton.h - - - - NSButtonCell - NSActionCell - - IBFrameworkSource - AppKit.framework/Headers/NSButtonCell.h - - - - NSCell - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSCell.h - - - - NSControl - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSControl.h - - - - NSFormatter - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSFormatter.h - - - - NSImageCell - NSCell - - IBFrameworkSource - AppKit.framework/Headers/NSImageCell.h - - - - NSImageView - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSImageView.h - - - - NSMenu - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSMenu.h - - - - NSMenuItem - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSMenuItem.h - - - - NSMenuItemCell - NSButtonCell - - IBFrameworkSource - AppKit.framework/Headers/NSMenuItemCell.h - - - - NSObject - - IBFrameworkSource - AddressBook.framework/Headers/ABActions.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSAccessibility.h - - - - NSObject - - - - NSObject - - - - NSObject - - - - NSObject - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSDictionaryController.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSDragging.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSFontManager.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSFontPanel.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSKeyValueBinding.h - - - - NSObject - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSNibLoading.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSOutlineView.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSPasteboard.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSSavePanel.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSTableView.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSToolbarItem.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSView.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSArchiver.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSClassDescription.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSError.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSFileManager.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyValueCoding.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyValueObserving.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyedArchiver.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSObject.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSObjectScripting.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSPortCoder.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSRunLoop.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptClassDescription.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptKeyValueCoding.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptObjectSpecifiers.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptWhoseTests.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSThread.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURL.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURLConnection.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURLDownload.h - - - - NSObject - - IBFrameworkSource - MacGPGME.framework/Headers/GPGContext.h - - - - NSObject - - IBFrameworkSource - MacGPGME.framework/Headers/GPGData.h - - - - NSPopUpButton - NSButton - - IBFrameworkSource - AppKit.framework/Headers/NSPopUpButton.h - - - - NSPopUpButtonCell - NSMenuItemCell - - IBFrameworkSource - AppKit.framework/Headers/NSPopUpButtonCell.h - - - - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSInterfaceStyle.h - - - - NSResponder - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSResponder.h - - - - NSTextField - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSTextField.h - - - - NSTextFieldCell - NSActionCell - - IBFrameworkSource - AppKit.framework/Headers/NSTextFieldCell.h - - - - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSClipView.h - - - - NSView - - - - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSRulerView.h - - - - NSView - NSResponder - - - - - 0 - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - YES - ../../GPGMail.xcodeproj - 3 - - diff --git a/GPGMail/Resources/English.lproj/GPGMessageViewerAccessoryView.nib/info.nib b/GPGMail/Resources/English.lproj/GPGMessageViewerAccessoryView.nib/info.nib deleted file mode 100644 index b8f7650f..00000000 --- a/GPGMail/Resources/English.lproj/GPGMessageViewerAccessoryView.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/English.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib b/GPGMail/Resources/English.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib deleted file mode 100644 index 2ee57624..00000000 Binary files a/GPGMail/Resources/English.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/English.lproj/InfoPlist.strings b/GPGMail/Resources/English.lproj/InfoPlist.strings deleted file mode 100644 index 3b26f89d..00000000 --- a/GPGMail/Resources/English.lproj/InfoPlist.strings +++ /dev/null @@ -1,6 +0,0 @@ -/* Localized versions of Info.plist keys */ - -CFBundleShortVersionString = "1.2.3 (v62)"; -CFBundleGetInfoHTML = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -CFBundleGetInfoString = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -NSHumanReadableCopyright = "© Stéphane Corthésy, 2000-2008"; diff --git a/GPGMail/Resources/French.lproj/GPGKeyDownload.nib/classes.nib b/GPGMail/Resources/French.lproj/GPGKeyDownload.nib/classes.nib deleted file mode 100644 index e1eab9e3..00000000 --- a/GPGMail/Resources/French.lproj/GPGKeyDownload.nib/classes.nib +++ /dev/null @@ -1,75 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - cancel - id - gpgSearchKeys - id - import - id - search - id - - CLASS - GPGKeyDownload - LANGUAGE - ObjC - OUTLETS - - checkBoxMatrix - NSMatrix - context - id - emailCell - NSFormCell - importButton - NSButton - importProgressField - NSTextField - importProgressIndicator - NSProgressIndicator - outlineView - NSOutlineView - searchButton - NSButton - searchProgressField - NSTextField - searchProgressIndicator - NSProgressIndicator - serverComboBox - NSComboBox - subtitleField - NSTextField - tabView - NSTabView - titleField - NSTextField - - SUPERCLASS - NSWindowController - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/French.lproj/GPGKeyDownload.nib/info.nib b/GPGMail/Resources/French.lproj/GPGKeyDownload.nib/info.nib deleted file mode 100644 index 0f307656..00000000 --- a/GPGMail/Resources/French.lproj/GPGKeyDownload.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBFramework Version - 677 - IBOldestOS - 5 - IBOpenObjects - - 38 - - IBSystem Version - 9G55 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/French.lproj/GPGKeyDownload.nib/keyedobjects.nib b/GPGMail/Resources/French.lproj/GPGKeyDownload.nib/keyedobjects.nib deleted file mode 100644 index d092c272..00000000 Binary files a/GPGMail/Resources/French.lproj/GPGKeyDownload.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/French.lproj/GPGMail.strings b/GPGMail/Resources/French.lproj/GPGMail.strings deleted file mode 100755 index b4928c2a..00000000 --- a/GPGMail/Resources/French.lproj/GPGMail.strings +++ /dev/null @@ -1,239 +0,0 @@ -{ -/* Passphrase panel titles */ -"MESSAGE_AUTHENTICATION_TITLE" = "Authentification du message"; -"MESSAGE_DECRYPTION_PASSPHRASE_TITLE" = "Déchiffrement du message"; - -/**/ -"DECRYPTING" = "Déchiffrement..."; -"ENCRYPTING" = "Chiffrement..."; - -/* submenu title */ -"PGP_MENU" = "PGP"; -/* submenu title */ -"PGP_KEYS_MENU" = "Clefs PGP"; - -/* submenu items */ -"DECRYPT_MENU" = "Déchiffrement"; -"AUTHENTICATE_MENU" = "Vérification"; -"ENCRYPT_MENU" = "Chiffrement du message"; -"SIGN_MENU" = "Signature du message"; - -/* Description of version prefixed with */ -"VERSION: %@" = "Version : %@"; - -/* PGP preferences panel name */ -"PGP_PREFERENCES" = "PGP"; - -/* Alert title and message */ -"MSG_DECRYPTION_ALERT_TITLE_NOT_SIGNED" = "Déchiffrement du message"; -"DECRYPTED_MSG_NOT_SIGNED" = "Le message a été chiffré mais pas signé. Son authenticité n'a pas pu être prouvée."; -"MSG_ENCRYPTION_ALERT_TITLE" = "Le chiffrement par PGP a échoué"; -"MSG_DECRYPTION_ALERT_TITLE" = "Le déchiffrement par PGP a échoué"; -"MSG_SIGNING_ALERT_TITLE" = "La signature par PGP a échoué"; -"UNSUPPORTED_ENCRYPTION_FORMAT" = "GPGMail n'est pas capable de lire ce genre de message."; -"DATA_NOT_AVAILABLE" = "Le contenu du message est temporairement indisponible."; - -/* Informational alert title and message */ -"AUTHENTICATION_TITLE_OK" = "Authentification par PGP"; - -/**/ -"AUTHENTICATION_TITLE_FAILED" = "L'authentification par PGP a échoué"; -"TRY_AGAIN" = "Réessayer"; -"CANCEL_DELIVERY" = "Annuler"; -"CANCEL_DECRYPTION" = "Annuler"; - -/**/ -"AUTHENTICATION_TITLE_UNSIGNED" = "Authentification par PGP"; -"UNSIGNED_PGP_MESSAGE" = "Ce message n'a pas été signé avec PGP."; - -/* Toolbar item titles */ -"DECRYPT_ITEM" = "Déchiffrer"; -"AUTHENTICATE_ITEM" = "Authentifier"; -"MAKE_ENCRYPTED_ITEM" = "Chiffrer"; -"MAKE_CLEAR_ITEM" = "Laisser en clair"; -"MAKE_UNSIGNED_ITEM" = "Ne pas signer"; -"MAKE_SIGNED_ITEM" = "Signer"; -"ENCRYPTED_ITEM" = "Chiffré"; -"CLEAR_ITEM" = "En clair"; -"SIGNED_ITEM" = "Signé"; -"UNSIGNED_ITEM" = "Non signé"; - -/* Toolbar item tooltips */ -"DECRYPT_ITEM_TOOLTIP" = "Déchiffrement de message chiffré avec PGP"; -"AUTHENTICATE_ITEM_TOOLTIP" = "Authentification de message signé avec PGP"; -"MAKE_CLEAR_ITEM_TOOLTIP" = "Cliquez pour envoyer le message en clair"; -"MAKE_ENCRYPTED_ITEM_TOOLTIP" = "Cliquez pour chiffrer avec PGP"; -"MAKE_UNSIGNED_ITEM_TOOLTIP" = "Cliquez pour envoyer le message sans signature PGP"; -"MAKE_SIGNED_ITEM_TOOLTIP" = "Cliquez pour utiliser l'authentification PGP"; -"ENCRYPTED_ITEM_TOOLTIP" = "Le message va être chiffré avec PGP ; cliquez pour envoyer le message en clair"; -"CLEAR_ITEM_TOOLTIP" = "Le message va être en clair ; cliquez pour chiffrer avec PGP"; -"SIGNED_ITEM_TOOLTIP" = "Le message va être signé avec PGP ; cliquez pour envoyer le message sans signature PGP"; -"UNSIGNED_ITEM_TOOLTIP" = "Le message n'a pas de signature PGP ; cliquez pour utiliser l'authentification PGP"; - -/* Signature information */ -"Bad policy! " = "Politique non valide! "; // Followed by a list of policy URLs -"Policy: " = "Politique: "; // Followed by a list of policy URLs -"Signed on %@" = "Signé le %@"; // Param is a date, whose format is set by SIGNATURE_CREATION_DATE_FORMAT -"SIGNATURE_CREATION_DATE_FORMAT" = "%c"; // See NSCalendarDate documentation for format -"No signature creation date available" = "Aucune date de création de signature disponible"; -"Key fingerprint: %@" = "Empreinte : %@"; -"Key ID: 0x%@" = "ID de clef : 0x%@"; -"No key fingerprint/ID available" = "Pas d'empreinte ou d'ID de clef disponible"; -"Validity: %@" = "Validité : %@"; // Param is the validity status string -"Signature expires on %@" = "Signature expirant le %@"; // Param is a date, whose format is set by SIGNATURE_EXPIRATION_DATE_FORMAT -"SIGNATURE_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Key expired on %@" = "La clef a expiré le %@"; // Param is a date, whose format is set by KEY_EXPIRATION_DATE_FORMAT -"KEY_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Signed by %@." = "Signé par %@."; // Param is a userID -"Signature from %@ is bad!" = "Mauvaise signature de %@ !"; // Param us a userID -"Signature is bad!" = "Mauvaise signature!"; -"Signature status error." = "Erreur de status avec la signature."; -"MISSING KEY %@." = "Clef %@ manquante."; // Param is a key ID in hexadecimal -"Signature summary 0x%04x - Signature status %u." = "Erreur inconnue : résumé de signature 0x%04x - status de signature %u."; // Generic error message; first param is a hex status flag value, second is a decimal status value -"EXCEPTION: %@" = "Erreur interne: %@"; // Generic error message; param is a string (exception reason, maybe not localized) -"AUTHENTICATING" = "Vérification de la signature PGP..."; -"UNTRUSTED RECIPIENTS" = "Au moins une des clefs n'est pas de confiance"; - -/* Title */ -/* Error messages */ -"GPGMAIL_CANNOT_WORK" = "GPGMail ne peut pas fonctionner parce que son application conjointe n'a pas pu être démarrée. Essayez de redémarrer Mail et si cette erreur persiste, envoyez un message à gpgmail@sente.ch"; -"GPGMAIL_CANNOT_WORK_HAS_GPG_%@_VERSION_%@_NEEDS_%@" = "GPGMail ne peut pas fonctionner. Il a trouvé GnuPG (%@) version %@, mais il a besoin de la version %@ (ou plus récente). Veuillez quitter Mail, installer une nouvelle version de GnuPG (par exemple depuis le site de MacGPG Project, http://macgpg.sourceforge.net/), puis redémarrer Mail."; // First arg is path to gpg, second and third are version strings -"GPGMAIL_CANNOT_WORK_MISSING_GPG_%@_VERSION_%@" = "GPGMail ne peut pas fonctionner. Il n'a pas trouvé de version de GnuPG (%@) aussi récente que la %@. Veuillez quitter Mail, installer une nouvelle version de GnuPG (par exemple depuis le site de MacGPG Project, http://macgpg.sourceforge.net/), puis redémarrer Mail."; // First arg is path to gpg, second is version string -"INVALID_GPGMAIL_VERSION" = "Votre version de GPGMail n'est pas compatible avec votre version de Mail."; /* Title of alert sheet */ -"NEEDS_COMPATIBLE_BUNDLE_VERSION" = "Vous devez télécharger et installer la version de GPGMail correspondant à votre version du système. Allez-la prendre à l'adresse http://gpgmail.org/French.lproj/"; - -/* Validity */ -"VALIDITY: " = "validité : "; -"Validity=0" = "inconnue"; -"Validity=1" = "indéfinie"; -"Validity=2" = "jamais"; -"Validity=3" = "marginale"; -"Validity=4" = "complète"; -"Validity=5" = "ultime"; - -/* Generic MacGPGME error messages */ -"GPGErrorCode=1" = "Erreur générale"; -"GPGErrorCode=8" = "Mauvaise signature"; -"GPGErrorCode=9" = "Pas de clef publique"; -"GPGErrorCode=10" = "Erreur de somme de contrôle"; -"GPGErrorCode=11" = "Mauvais mot de passe"; -"GPGErrorCode=15" = "Armure ASCII invalide"; -"GPGErrorCode=17" = "Pas de clef secrète"; -"GPGErrorCode=31" = "Mot de passe invalide"; -"GPGErrorCode=40" = "Erreur de serveur de clefs"; -"GPGErrorCode=53" = "Clef publique non utilisable"; -"GPGErrorCode=54" = "Clef secrète non utilisable"; -"GPGErrorCode=55" = "Valeur invalide"; -"GPGErrorCode=58" = "Pas de donnée"; -"GPGErrorCode=69" = "Pas implémenté"; -"GPGErrorCode=84" = "Algorithme non supporté"; -"GPGErrorCode=94" = "Clef révoquée"; -"GPGErrorCode=99" = "Annulé"; -"GPGErrorCode=107" = "Nom ambigu"; -"GPGErrorCode=116" = "Pas de politique correspondante"; -"GPGErrorCode=125" = "Mauvaise utilisation de clef"; -"GPGErrorCode=150" = "Moteur invalide"; -"GPGErrorCode=151" = "Clef publique sans confiance"; -"GPGErrorCode=152" = "Déchiffrement échoué"; -"GPGErrorCode=153" = "Clef expirée"; -"GPGErrorCode=154" = "Signature expirée"; -"GPGErrorCode=16383" = "EOF"; - -/* Signature attachment filename (suffixed automatically by .sig) */ -"PGP_SIGNATURE_FILENAME" = "PGP"; - -/* Signature attachment content-description */ -"This is a digitally signed message part" = "Ceci est une signature électronique PGP"; - -/* Version MIME part content description header */ -"CONTENT_DESCRIPTION_HEADER" = "Identifiant de la version de PGP/MIME"; - -/* Encrypted attachment filename (suffixed automatically by .asc) */ -"PGP_ENCRYPTED_FILENAME" = "FichierPGP"; - -/* Encrypted attachment content-description */ -"This is an encrypted message part" = "Partie du message avec chiffrement PGP"; - -/* Multiple-part description */ -"MULTIPART_ENCRYPTED_DESCRIPTION" = "Ceci est une message chiffré selon OpenPGP/MIME (RFC 2440 et 3156)"; -"MULTIPART_SIGNED_DESCRIPTION" = "Ceci est une message signé électroniquement selon OpenPGP/MIME (RFC 2440 et 3156)"; - -/* Tooltip for banner icons */ -"SIGNATURE_IS_GOOD" = "La signature est bonne ; le message n'a pas été modifié"; -"SIGNATURE_IS_NOT_GOOD" = "La signature est mauvaise ; le message a été modifié"; - -/* PGP Key Download panel */ -"PGP_SEARCH_KEYS_MENUITEM" = "Recherche de clef PGP"; -"SEARCH" = "Recherche"; -"CANCEL_SEARCH" = "Annuler"; -"SEARCHING" = "Recherche..."; -"NO_MATCHING_KEYS" = "Aucune clef correspondante"; -"FOUND_%d_KEYS" = "%d clef(s) correspondante(s)"; -"DOWNLOAD" = "Télécharger"; -"DOWNLOADING" = "Téléchargement..."; -"DOWNLOADED" = "Clef(s) téléchargés(s) et importée(s)"; -"SEARCH_KEYS_ON_SERVER" = "Recherche de clefs PGP sur le serveur de clefs"; -"DOWNLOAD_KEYS_FROM_SERVER" = "Télécharger les clefs PGP depuis le serveur de clefs"; -"SEARCH_ERROR" = "Une erreur est survenue durant la recherche"; -"DOWNLOAD_ERROR" = "Une erreur est survenue durant le téléchargement"; -" (%u bits)" = " (%u bits)"; -", created on %@" = ", créée le %@"; -", expires on %@" = ", expirant le %@"; -", expired on %@" = ", expirée le %@"; -"REVOKED_KEY - " = "Révoquée - "; // Prefixes found key description, when necessary; followed by keyID, userID, etc. - -/* Unmatched PGP keys for receipts - sheet */ -"MISSING_KEYS: DOWNLOAD" = "Des destinataires n'ont pas de clef PGP correspondante. Rechercher les clefs ?"; // Title -"UNMATCHED_ADDRESSES: %@" = "Les adresses email suivantes n'ont pas de clef PGP correspondante:\n%@"; // Message -"SEARCH_MATCHING_KEYS" = "Rechercher"; // Default button -"SEND_IN_CLEAR" = "Envoyer en clair"; // button title; used in dialog after delivery failure due to missing public keys - -"INVALID_HASH_%@" = "L'algorithme de chiffrement '%@' n'est pas autorisé selon RFC3156."; -"GPGMAIL_VS_PGPMAIL" = "GPGMail ne peut pas fonctionner quand PGPmail est installé."; -"GPGMAIL_%@_VS_PGPMAIL_%@" = "Les deux outils fournissent les mêmes fonctionnalités, avec des moteurs différents, et un seul des deux peut être installé. Vous devez retirer soit '%@', soit '%@'."; -"QUIT" = "Quitter"; -"CONTINUE_ANYWAY" = "Continuer"; - -/* Composer accessory view header, under To:, CC:, Subject: */ -"PGP:" = "PGP :"; - -/* Key description in popups; prefixes key (actually, primary userID), when necessary; followed by keyID, userID, etc.*/ -"REVOKED_KEY:" = "Révoquée:"; -"EXPIRED_KEY:" = "Expirée:"; -"DISABLED_KEY:" = "Désactivée:"; -"INVALID_KEY:" = "Invalide:"; - -/* UserID description in popups; prefixes userID, when necessary; followed by name, email, etc.*/ -"REVOKED_USER_ID:" = "Révoqué:"; -"INVALID_USER_ID:" = "Invalide:"; - -/* GPGMail exception reasons */ -"NO_VALID_PUBLIC_KEY" = "Aucune clé publique valide n'a été trouvée. Elles sont toutes soit expirées, désactivées ou révoquées."; // Could be displayed after encryption -"NO_VALID_PRIVATE_KEY" = "Aucune clé personnelle valide n'a été trouvée. Soit il n'y en avait aucune de sélectionnée, ou alors la clé est soit révoquée, désactivée ou a expiré."; // Could be displayed after encryption - -/* Alert when user has no PGP key */ -"NO PGP PRIVATE KEY - TITLE" = "Vous n'avez aucune clé PGP. Vous ne pouvez pas utilisez GPGMail pour chiffrer ou signer un message."; -"NO PGP PRIVATE KEY - MESSAGE" = "Si vous voulez pouvoir chiffrer ou signer un message avec PGP, vous avez besoin d'une clé personnelle PGP. Pour créer une clé PGP, téléchargez et installez GPG Keychain Access depuis le site http://macgpg.sourceforge.net/fr/"; - -/* Conflict resolution panel*/ -"" = "Moi"; -"" = "Oui"; -"" = "Non"; -"" = "Toujours"; -"" = "Jamais"; -"" = "Accepté"; - -/* Additional info describing key */ -"DISABLED_KEY_QUALIFIER" = "désactivée"; -"INVALID_KEY_QUALIFIER" = "invalide"; -"REVOKED_KEY_QUALIFIER" = "révoquée"; -"EXPIRED_KEY_QUALIFIER" = "expirée"; -"CANNOT_ENCRYPT_KEY_QUALIFIER" = "ne peut chiffrer"; -"CANNOT_SIGN_KEY_QUALIFIER" = "ne peut signer"; - -/* Additional info describing userID */ -"INVALID_USER_ID_QUALIFIER" = "invalide"; -"REVOKED_USER_ID_QUALIFIER" = "révoqué"; - -"COPY_MSG_URL_MENUITEM" = "Copier l'URL du message"; -} diff --git a/GPGMail/Resources/French.lproj/GPGMailCompose.nib/classes.nib b/GPGMail/Resources/French.lproj/GPGMailCompose.nib/classes.nib deleted file mode 100644 index 0162fc97..00000000 --- a/GPGMail/Resources/French.lproj/GPGMailCompose.nib/classes.nib +++ /dev/null @@ -1,139 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - accessoryView - NSView - - SUPERCLASS - NSObject - - - ACTIONS - - gpgToggleSymetricEncryption - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - alertImageView - NSImageView - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - selectedPersonalKey - id - signSwitch - NSButton - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/French.lproj/GPGMailCompose.nib/info.nib b/GPGMail/Resources/French.lproj/GPGMailCompose.nib/info.nib deleted file mode 100644 index 602c04f0..00000000 --- a/GPGMail/Resources/French.lproj/GPGMailCompose.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 27 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/French.lproj/GPGMailCompose.nib/keyedobjects.nib b/GPGMail/Resources/French.lproj/GPGMailCompose.nib/keyedobjects.nib deleted file mode 100644 index c76f6d9c..00000000 Binary files a/GPGMail/Resources/French.lproj/GPGMailCompose.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/French.lproj/GPGMailComposeTiger.nib/classes.nib b/GPGMail/Resources/French.lproj/GPGMailComposeTiger.nib/classes.nib deleted file mode 100644 index 079c9142..00000000 --- a/GPGMail/Resources/French.lproj/GPGMailComposeTiger.nib/classes.nib +++ /dev/null @@ -1,134 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - OUTLETS - - _optionSwitch - NSButton - _primaryView - NSView - - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - signSwitch - NSButton - switchProtoMatrix - NSMatrix - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/French.lproj/GPGMailComposeTiger.nib/info.nib b/GPGMail/Resources/French.lproj/GPGMailComposeTiger.nib/info.nib deleted file mode 100644 index 34312e23..00000000 --- a/GPGMail/Resources/French.lproj/GPGMailComposeTiger.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 38 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/French.lproj/GPGMailComposeTiger.nib/keyedobjects.nib b/GPGMail/Resources/French.lproj/GPGMailComposeTiger.nib/keyedobjects.nib deleted file mode 100644 index c4516294..00000000 Binary files a/GPGMail/Resources/French.lproj/GPGMailComposeTiger.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/French.lproj/GPGMailPreferences.nib/classes.nib b/GPGMail/Resources/French.lproj/GPGMailPreferences.nib/classes.nib deleted file mode 100644 index b621acc6..00000000 --- a/GPGMail/Resources/French.lproj/GPGMailPreferences.nib/classes.nib +++ /dev/null @@ -1,186 +0,0 @@ - - - - - IBClasses - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - changeDefaultKey - id - changeLineWrapping - id - changePassphraseStrategy - id - changePassphraseTimeout - id - exportGPGMailConfiguration - id - flushCachedPassphrases - id - refreshKeys - id - toggleAlwaysEncryptMessages - id - toggleAlwaysSignMessages - id - toggleAuthenticateUnreadMessagesAutomatically - id - toggleAuthenticatesMessagesAutomatically - id - toggleAutomaticPersonalKeyChoice - id - toggleBCCRecipientsUse - id - toggleButtonsBehavior - id - toggleDecryptsMessagesAutomatically - id - toggleDecryptsUnreadMessagesAutomatically - id - toggleDisplayAccessoryView - id - toggleEncryptToSelf - id - toggleEncryptWhenPossible - id - toggleEncryptedReplyToEncryptedMessage - id - toggleExtendedInformation - id - toggleFilterKeys - id - toggleKeyRefresh - id - toggleOpenPGPMIME - id - toggleSMIME - id - toggleSeparatePGPOperations - id - toggleShowKeyInformation - id - toggleShowPassphrase - id - toggleShowUserIDs - id - toggleSignWhenEncrypting - id - toggleSignedReplyToSignedMessage - id - toggleSmartRules - id - toggleTrustAllKeys - id - - CLASS - GPGMailPreferences - LANGUAGE - ObjC - OUTLETS - - alwaysEncryptSwitchButton - NSButton - alwaysSignSwitchButton - NSButton - authenticateUnreadMessagesSwitchButton - NSButton - automaticallyAuthenticateMessagesSwitchButton - NSButton - automaticallyDecryptMessagesSwitchButton - NSButton - buttonsShowStateSwitchButton - NSButton - choosesPersonalKeyAccordingToAccountSwitchButton - NSButton - contactTextField - NSTextField - decryptUnreadMessagesSwitchButton - NSButton - disableSMIMESwitchButton - NSButton - displayButtonInComposeWindowSwitchButton - NSButton - encryptReplyToEncryptedMessageSwitchButton - NSButton - encryptToSelfSwitchButton - NSButton - encryptWhenAllKeysAvailableSwitchButton - NSButton - extendedInfoSwitchButton - NSButton - filtersKeysSwitchButton - NSButton - keyIdentifiersPopUpButton - NSPopUpButton - keyIdentifiersTableView - NSTableView - lineWrappingFormCell - NSFormCell - openPGPMIMESwitchButton - NSButton - passphraseStrategyMatrix - NSMatrix - passphraseTimeoutFormCell - NSFormCell - personalKeysPopUpButton - NSPopUpButton - refreshKeysOnVolumeChangeSwitchButton - NSButton - separateSignAndEncryptOperationsSwitchButton - NSButton - showUserIDsSwitchButton - NSButton - showsPassphraseSwitchButton - NSButton - signReplyToSignedMessageSwitchButton - NSButton - signWhenEncryptingSwitchButton - NSButton - trustAllKeysSwitchButton - NSButton - useBCCRecipientsSwitchButton - NSButton - useSmartRulesSwitchButton - NSButton - versionTextField - NSTextField - webSiteTextField - NSTextField - - SUPERCLASS - NSPreferencesModule - - - CLASS - NSPreferencesModule - LANGUAGE - ObjC - OUTLETS - - preferencesView - id - - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/French.lproj/GPGMailPreferences.nib/info.nib b/GPGMail/Resources/French.lproj/GPGMailPreferences.nib/info.nib deleted file mode 100644 index 4ea54307..00000000 --- a/GPGMail/Resources/French.lproj/GPGMailPreferences.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 677 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 6 - - IBSystem Version - 9G55 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/French.lproj/GPGMailPreferences.nib/keyedobjects.nib b/GPGMail/Resources/French.lproj/GPGMailPreferences.nib/keyedobjects.nib deleted file mode 100644 index 42572a4c..00000000 Binary files a/GPGMail/Resources/French.lproj/GPGMailPreferences.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/French.lproj/GPGMenu.nib/classes.nib b/GPGMail/Resources/French.lproj/GPGMenu.nib/classes.nib deleted file mode 100644 index 6ac982ef..00000000 --- a/GPGMail/Resources/French.lproj/GPGMenu.nib/classes.nib +++ /dev/null @@ -1,57 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = { - gpgAuthenticate = id; - gpgChoosePersonalKeys = id; - gpgChoosePublicKeys = id; - gpgDecrypt = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - gpgChoosePersonalKey = id; - gpgChoosePublicKey = id; - gpgChoosePublicKeys = id; - gpgReloadPGPKeys = id; - gpgSearchKeys = id; - gpgToggleAutomaticPublicKeysChoice = id; - gpgToggleDisplayAllUserIDs = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleShowKeyInformation = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - mailTo = id; - }; - CLASS = GPGMailBundle; - LANGUAGE = ObjC; - OUTLETS = { - PGPMenu = NSMenu; - PGPViewMenu = NSMenu; - allUserIDsMenuItem = NSMenuItem; - authenticateMenuItem = NSMenuItem; - automaticPublicKeysMenuItem = NSMenuItem; - choosePublicKeysMenuItem = NSMenuItem; - decryptMenuItem = NSMenuItem; - defaultKey = id; - encryptsNewMessageMenuItem = NSMenuItem; - personalKeysMenuItem = NSMenuItem; - proxyServer = id; - signsNewMessageMenuItem = NSMenuItem; - symetricEncryptionMenuItem = NSMenuItem; - usesOnlyOpenPGPStyleMenuItem = NSMenuItem; - }; - SUPERCLASS = MVMailBundle; - }, - {CLASS = MVMailBundle; LANGUAGE = ObjC; SUPERCLASS = NSObject; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/French.lproj/GPGMenu.nib/info.nib b/GPGMail/Resources/French.lproj/GPGMenu.nib/info.nib deleted file mode 100644 index 140d7671..00000000 --- a/GPGMail/Resources/French.lproj/GPGMenu.nib/info.nib +++ /dev/null @@ -1,24 +0,0 @@ - - - - - IBDocumentLocation - 84 120 356 278 0 0 1024 746 - IBEditorPositions - - 34 - 256 798 222 230 0 0 1680 1028 - 88 - 907 719 267 194 0 0 1680 1028 - - IBFramework Version - 437.0 - IBOpenObjects - - 88 - 34 - - IBSystem Version - 8A428 - - diff --git a/GPGMail/Resources/French.lproj/GPGMenu.nib/objects.nib b/GPGMail/Resources/French.lproj/GPGMenu.nib/objects.nib deleted file mode 100644 index 4ed34530..00000000 Binary files a/GPGMail/Resources/French.lproj/GPGMenu.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/French.lproj/GPGMessageViewerAccessoryView.nib/classes.nib b/GPGMail/Resources/French.lproj/GPGMessageViewerAccessoryView.nib/classes.nib deleted file mode 100644 index 5c956adf..00000000 --- a/GPGMail/Resources/French.lproj/GPGMessageViewerAccessoryView.nib/classes.nib +++ /dev/null @@ -1,112 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - authenticate - id - decrypt - id - gpgAuthenticate - id - gpgDecrypt - id - toggleSignatureExtraView - id - - CLASS - GPGMessageViewerAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - authenticationButton - NSButton - authenticationView - NSView - decryptedIconView - NSImageView - decryptedInfoView - NSView - decryptedMessageTextField - NSTextField - decryptionButton - NSButton - decryptionView - NSView - delegate - id - disclosureButton - NSButton - expirationAlertIconView - NSImageView - generalAlertIconView - NSImageView - policyAlertIconView - NSImageView - signatureBadPolicyAlertTextField - NSTextField - signatureCreationDateTextField - NSTextField - signatureExpirationDateTextField - NSTextField - signatureIconView - NSImageView - signatureKeyFingerprintTextField - NSTextField - signatureLowerView - NSView - signatureMessageTextField - NSTextField - signatureToggleButton - NSButton - signatureUpperView - NSView - signatureValidityTextField - NSTextField - signatureView - NSView - trustAlertIconView - NSImageView - userIDsPopDownButton - NSPopUpButton - - SUPERCLASS - NSObject - - - ACTIONS - - - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/French.lproj/GPGMessageViewerAccessoryView.nib/info.nib b/GPGMail/Resources/French.lproj/GPGMessageViewerAccessoryView.nib/info.nib deleted file mode 100644 index fee36de7..00000000 --- a/GPGMail/Resources/French.lproj/GPGMessageViewerAccessoryView.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 18 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/French.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib b/GPGMail/Resources/French.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib deleted file mode 100644 index 2652a4dc..00000000 Binary files a/GPGMail/Resources/French.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/French.lproj/InfoPlist.strings b/GPGMail/Resources/French.lproj/InfoPlist.strings deleted file mode 100755 index 4013075c..00000000 --- a/GPGMail/Resources/French.lproj/InfoPlist.strings +++ /dev/null @@ -1,6 +0,0 @@ -/* Localized versions of Info.plist keys */ - -CFBundleShortVersionString = "1.2.3 (v62)"; -CFBundleGetInfoHTML = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -CFBundleGetInfoString = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -NSHumanReadableCopyright = "© Stéphane Corthésy, 2000-2008"; diff --git a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPG.strings b/GPGMail/Resources/GPG.subproj/Danish.lproj/GPG.strings deleted file mode 100644 index 22db3415..00000000 --- a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPG.strings +++ /dev/null @@ -1,16 +0,0 @@ -{ -/* Exception reason (not displayed yet) */ -"Error after gpg execution" = "Fejl efter udførsel af gpg"; -"gpg execution manually interrupted" = "Udførsel af gpg afbrudt manuelt"; - -/* Passphrase entry message */ -"Enter passphrase for %@:" = "Indtast koden til %@:"; // Param is the userID of a key -"Enter passphrase for this message:" = "Indtast koden til denne besked:"; // Symmetric encryption/decryption, no key - -/* Keychain support */ -"Can't get default keychain!" = "Standard nøglering kan ikke åbnes!"; -"Password buffer too small for keychain!" = "Kodeords-buffer er for lille til Nøgleringen!"; -"Invalid reference to the keychain item for %s:%@" = "Ugyldig reference til Nøgleringsemnet %s:%@"; // 1st argument is service, 2nd argument is user name -"Unknown problem accessing keychain! Error %d" = "Ukendt problem ved adgang til Nøglering! Fejl %d"; -"Can't store the password for %s:%@: it is too long for the keychain!" = "Koden til %s:%@: kan ikke gemmes. Den er for lang til Nøgleringen!"; // 1st argument is service, 2nd argument is user name -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGPassphrase.nib/classes.nib b/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGPassphrase.nib/classes.nib deleted file mode 100644 index 5b8822aa..00000000 --- a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGPassphrase.nib/classes.nib +++ /dev/null @@ -1,21 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {endModal = id; toggleShowPassphrase = id; }; - CLASS = GPGPassphraseController; - LANGUAGE = ObjC; - OUTLETS = { - clearPassphraseTextField = NSTextField; - messageTextField = NSTextField; - panel = NSPanel; - passphraseCheckBox = NSButton; - passphraseTabView = NSTabView; - passphraseTextField = NSSecureTextField; - titleTextField = NSTextField; - }; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGPassphrase.nib/info.nib b/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGPassphrase.nib/info.nib deleted file mode 100644 index 698bde1c..00000000 --- a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGPassphrase.nib/info.nib +++ /dev/null @@ -1,10 +0,0 @@ - - - - - IBFramework Version - 364.0 - IBSystem Version - 7W98 - - diff --git a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGPassphrase.nib/objects.nib b/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGPassphrase.nib/objects.nib deleted file mode 100644 index 74e249e4..00000000 Binary files a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGPassphrase.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGProgressIndicatorController.nib/classes.nib b/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGProgressIndicatorController.nib/classes.nib deleted file mode 100644 index ae6810ba..00000000 --- a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGProgressIndicatorController.nib/classes.nib +++ /dev/null @@ -1,23 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {cancel = id; }; - CLASS = GPGProgressIndicatorController; - LANGUAGE = ObjC; - OUTLETS = { - backgroundTextField = id; - cancelButton = id; - delegate = id; - enclosingBox = id; - progressIndicator = id; - progressIndicator2 = id; - titleTextField = id; - titleTextField2 = id; - }; - SUPERCLASS = NSObject; - }, - {CLASS = NSObject; LANGUAGE = ObjC; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGProgressIndicatorController.nib/info.nib b/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGProgressIndicatorController.nib/info.nib deleted file mode 100644 index 2890749f..00000000 --- a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGProgressIndicatorController.nib/info.nib +++ /dev/null @@ -1,29 +0,0 @@ - - - - - IBDocumentLocation - 52 92 356 240 0 59 1152 789 - IBFramework Version - 364.0 - IBSystem Version - 7W98 - IBUserGuides - - Modal Panel - - guideLocations - - guidesLocked - NO - - Panel - - guideLocations - - guidesLocked - NO - - - - diff --git a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGProgressIndicatorController.nib/objects.nib b/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGProgressIndicatorController.nib/objects.nib deleted file mode 100644 index 7a896f7b..00000000 Binary files a/GPGMail/Resources/GPG.subproj/Danish.lproj/GPGProgressIndicatorController.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPG.strings b/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPG.strings deleted file mode 100644 index 747731c0..00000000 --- a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPG.strings +++ /dev/null @@ -1,16 +0,0 @@ -{ -/* Exception reason (not displayed yet) */ -"Error after gpg execution" = "Er was een fout bij een gpg opdracht"; -"gpg execution manually interrupted" = "Een gpg opdracht is onderbroken"; - -/* Passphrase entry message */ -"Enter passphrase for %@:" = "Geef het wachtwoord voor %@:"; // Param is the userID of a key -"Enter passphrase for this message:" = "Geef het wachtwoord voor dit bericht:"; // Symmetric encryption/decryption, no key - -/* Keychain support */ -"Can't get default keychain!" = "De standaard sleutelhanger kan niet bereikt worden."; -"Password buffer too small for keychain!" = "De wachtwoord-buffer is te klein voor deze sleutelhanger."; -"Invalid reference to the keychain item for %s:%@" = "Ongeldige verwijzing naar het sleutelhanger onderdeel voor %s:%@"; // 1st argument is service, 2nd argument is user name -"Unknown problem accessing keychain! Error %d" = "Er was een onbekend probleem met de sleutelhanger. Fout %d"; -"Can't store the password for %s:%@: it is too long for the keychain!" = "Het wachtwoord voor %s:%@: kan niet worden opgeslagen. Het is te lang voor de sleutelhanger."; // 1st argument is service, 2nd argument is user name -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGPassphrase.nib/classes.nib b/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGPassphrase.nib/classes.nib deleted file mode 100644 index 5b8822aa..00000000 --- a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGPassphrase.nib/classes.nib +++ /dev/null @@ -1,21 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {endModal = id; toggleShowPassphrase = id; }; - CLASS = GPGPassphraseController; - LANGUAGE = ObjC; - OUTLETS = { - clearPassphraseTextField = NSTextField; - messageTextField = NSTextField; - panel = NSPanel; - passphraseCheckBox = NSButton; - passphraseTabView = NSTabView; - passphraseTextField = NSSecureTextField; - titleTextField = NSTextField; - }; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGPassphrase.nib/info.nib b/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGPassphrase.nib/info.nib deleted file mode 100644 index 29c97ef7..00000000 --- a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGPassphrase.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ - - - - - IBDocumentLocation - 69 14 356 240 0 0 1024 746 - IBFramework Version - 439.0 - IBOpenObjects - - 13 - - IBSystem Version - 8C46 - - diff --git a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGPassphrase.nib/objects.nib b/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGPassphrase.nib/objects.nib deleted file mode 100644 index 43aa49f7..00000000 Binary files a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGPassphrase.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGProgressIndicatorController.nib/classes.nib b/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGProgressIndicatorController.nib/classes.nib deleted file mode 100644 index ae6810ba..00000000 --- a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGProgressIndicatorController.nib/classes.nib +++ /dev/null @@ -1,23 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {cancel = id; }; - CLASS = GPGProgressIndicatorController; - LANGUAGE = ObjC; - OUTLETS = { - backgroundTextField = id; - cancelButton = id; - delegate = id; - enclosingBox = id; - progressIndicator = id; - progressIndicator2 = id; - titleTextField = id; - titleTextField2 = id; - }; - SUPERCLASS = NSObject; - }, - {CLASS = NSObject; LANGUAGE = ObjC; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGProgressIndicatorController.nib/info.nib b/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGProgressIndicatorController.nib/info.nib deleted file mode 100644 index e2a12403..00000000 --- a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGProgressIndicatorController.nib/info.nib +++ /dev/null @@ -1,17 +0,0 @@ - - - - - IBDocumentLocation - 87 47 356 240 0 0 1680 1028 - IBFramework Version - 439.0 - IBOpenObjects - - 31 - 13 - - IBSystem Version - 8C46 - - diff --git a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGProgressIndicatorController.nib/objects.nib b/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGProgressIndicatorController.nib/objects.nib deleted file mode 100644 index e2437f65..00000000 Binary files a/GPGMail/Resources/GPG.subproj/Dutch.lproj/GPGProgressIndicatorController.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/English.lproj/GPG.strings b/GPGMail/Resources/GPG.subproj/English.lproj/GPG.strings deleted file mode 100644 index 0b303a4a..00000000 --- a/GPGMail/Resources/GPG.subproj/English.lproj/GPG.strings +++ /dev/null @@ -1,16 +0,0 @@ -{ -/* Exception reason (not displayed yet) */ -"Error after gpg execution" = "Error after gpg execution"; -"gpg execution manually interrupted" = "gpg execution manually interrupted"; - -/* Passphrase entry message */ -"Enter passphrase for %@:" = "Enter passphrase for %@:"; // Param is the userID of a key -"Enter passphrase for this message:" = "Enter passphrase for this message:"; // Symmetric encryption/decryption, no key - -/* Keychain support */ -"Can't get default keychain!" = "Can't get default keychain!"; -"Password buffer too small for keychain!" = "Password buffer too small for keychain!"; -"Invalid reference to the keychain item for %s:%@" = "Invalid reference to the keychain item for %s:%@"; // 1st argument is service, 2nd argument is user name -"Unknown problem accessing keychain! Error %d" = "Unknown problem accessing keychain! Error %d"; -"Can't store the password for %s:%@: it is too long for the keychain!" = "Can't store the password for %s:%@: it is too long for the keychain!"; // 1st argument is service, 2nd argument is user name -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/English.lproj/GPGPassphrase.nib/classes.nib b/GPGMail/Resources/GPG.subproj/English.lproj/GPGPassphrase.nib/classes.nib deleted file mode 100644 index 5b8822aa..00000000 --- a/GPGMail/Resources/GPG.subproj/English.lproj/GPGPassphrase.nib/classes.nib +++ /dev/null @@ -1,21 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {endModal = id; toggleShowPassphrase = id; }; - CLASS = GPGPassphraseController; - LANGUAGE = ObjC; - OUTLETS = { - clearPassphraseTextField = NSTextField; - messageTextField = NSTextField; - panel = NSPanel; - passphraseCheckBox = NSButton; - passphraseTabView = NSTabView; - passphraseTextField = NSSecureTextField; - titleTextField = NSTextField; - }; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/English.lproj/GPGPassphrase.nib/info.nib b/GPGMail/Resources/GPG.subproj/English.lproj/GPGPassphrase.nib/info.nib deleted file mode 100644 index 85e090e8..00000000 --- a/GPGMail/Resources/GPG.subproj/English.lproj/GPGPassphrase.nib/info.nib +++ /dev/null @@ -1,14 +0,0 @@ - - - - - IBFramework Version - 291.0 - IBOpenObjects - - 13 - - IBSystem Version - 6L29 - - diff --git a/GPGMail/Resources/GPG.subproj/English.lproj/GPGPassphrase.nib/objects.nib b/GPGMail/Resources/GPG.subproj/English.lproj/GPGPassphrase.nib/objects.nib deleted file mode 100644 index 6518095c..00000000 Binary files a/GPGMail/Resources/GPG.subproj/English.lproj/GPGPassphrase.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/English.lproj/GPGProgressIndicatorController.nib/classes.nib b/GPGMail/Resources/GPG.subproj/English.lproj/GPGProgressIndicatorController.nib/classes.nib deleted file mode 100644 index ae6810ba..00000000 --- a/GPGMail/Resources/GPG.subproj/English.lproj/GPGProgressIndicatorController.nib/classes.nib +++ /dev/null @@ -1,23 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {cancel = id; }; - CLASS = GPGProgressIndicatorController; - LANGUAGE = ObjC; - OUTLETS = { - backgroundTextField = id; - cancelButton = id; - delegate = id; - enclosingBox = id; - progressIndicator = id; - progressIndicator2 = id; - titleTextField = id; - titleTextField2 = id; - }; - SUPERCLASS = NSObject; - }, - {CLASS = NSObject; LANGUAGE = ObjC; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/English.lproj/GPGProgressIndicatorController.nib/info.nib b/GPGMail/Resources/GPG.subproj/English.lproj/GPGProgressIndicatorController.nib/info.nib deleted file mode 100644 index 63752707..00000000 --- a/GPGMail/Resources/GPG.subproj/English.lproj/GPGProgressIndicatorController.nib/info.nib +++ /dev/null @@ -1,25 +0,0 @@ - - - - - IBDocumentLocation - 52 92 356 240 0 59 1152 789 - IBUserGuides - - Modal Panel - - guideLocations - - guidesLocked - NO - - Panel - - guideLocations - - guidesLocked - NO - - - - diff --git a/GPGMail/Resources/GPG.subproj/English.lproj/GPGProgressIndicatorController.nib/objects.nib b/GPGMail/Resources/GPG.subproj/English.lproj/GPGProgressIndicatorController.nib/objects.nib deleted file mode 100644 index 42946ef4..00000000 Binary files a/GPGMail/Resources/GPG.subproj/English.lproj/GPGProgressIndicatorController.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/French.lproj/GPG.strings b/GPGMail/Resources/GPG.subproj/French.lproj/GPG.strings deleted file mode 100755 index 8ce5827f..00000000 --- a/GPGMail/Resources/GPG.subproj/French.lproj/GPG.strings +++ /dev/null @@ -1,16 +0,0 @@ -{ -/* Exception reason (not displayed yet) */ -"Error after gpg execution" = "Erreur après l'exécution de gpg"; -"gpg execution manually interrupted" = "Exécution de gpg interrompu manuellement"; - -/* Passphrase entry message */ -"Enter passphrase for %@:" = "Entrez le mot de passe pour %@:"; // Param is the userID of a key -"Enter passphrase for this message:" = "Entrez le mot de passe pour ce message:"; // Symmetric encryption/decryption, no key - -/* Keychain support */ -"Can't get default keychain!" = "Impossible de trouver le trousseau d'accès par défaut!"; -"Password buffer too small for keychain!" = "Erreur interne: pas assez d'espace mémoire réservé pour le mot de passe!"; -"Invalid reference to the keychain item for %s:%@" = "Erreur interne: référence invalide vers l'élément du trousseau %s:%@"; // 1st argument is service, 2nd argument is user name -"Unknown problem accessing keychain! Error %d" = "Problème lors de l'accès au trousseau! Erreur %d"; -"Can't store the password for %s:%@: it is too long for the keychain!" = "Impossible de stocker le mot de passe pour %s:%@: trop long pour le trousseau!"; // 1st argument is service, 2nd argument is user name -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/French.lproj/GPGPassphrase.nib/classes.nib b/GPGMail/Resources/GPG.subproj/French.lproj/GPGPassphrase.nib/classes.nib deleted file mode 100755 index 5b8822aa..00000000 --- a/GPGMail/Resources/GPG.subproj/French.lproj/GPGPassphrase.nib/classes.nib +++ /dev/null @@ -1,21 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {endModal = id; toggleShowPassphrase = id; }; - CLASS = GPGPassphraseController; - LANGUAGE = ObjC; - OUTLETS = { - clearPassphraseTextField = NSTextField; - messageTextField = NSTextField; - panel = NSPanel; - passphraseCheckBox = NSButton; - passphraseTabView = NSTabView; - passphraseTextField = NSSecureTextField; - titleTextField = NSTextField; - }; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/French.lproj/GPGPassphrase.nib/info.nib b/GPGMail/Resources/GPG.subproj/French.lproj/GPGPassphrase.nib/info.nib deleted file mode 100755 index fb7feed9..00000000 --- a/GPGMail/Resources/GPG.subproj/French.lproj/GPGPassphrase.nib/info.nib +++ /dev/null @@ -1,10 +0,0 @@ - - - - - IBFramework Version - 291.0 - IBSystem Version - 6R73 - - diff --git a/GPGMail/Resources/GPG.subproj/French.lproj/GPGPassphrase.nib/objects.nib b/GPGMail/Resources/GPG.subproj/French.lproj/GPGPassphrase.nib/objects.nib deleted file mode 100755 index 98571b2b..00000000 Binary files a/GPGMail/Resources/GPG.subproj/French.lproj/GPGPassphrase.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/French.lproj/GPGProgressIndicatorController.nib/classes.nib b/GPGMail/Resources/GPG.subproj/French.lproj/GPGProgressIndicatorController.nib/classes.nib deleted file mode 100755 index ae6810ba..00000000 --- a/GPGMail/Resources/GPG.subproj/French.lproj/GPGProgressIndicatorController.nib/classes.nib +++ /dev/null @@ -1,23 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {cancel = id; }; - CLASS = GPGProgressIndicatorController; - LANGUAGE = ObjC; - OUTLETS = { - backgroundTextField = id; - cancelButton = id; - delegate = id; - enclosingBox = id; - progressIndicator = id; - progressIndicator2 = id; - titleTextField = id; - titleTextField2 = id; - }; - SUPERCLASS = NSObject; - }, - {CLASS = NSObject; LANGUAGE = ObjC; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/French.lproj/GPGProgressIndicatorController.nib/info.nib b/GPGMail/Resources/GPG.subproj/French.lproj/GPGProgressIndicatorController.nib/info.nib deleted file mode 100755 index daf61650..00000000 --- a/GPGMail/Resources/GPG.subproj/French.lproj/GPGProgressIndicatorController.nib/info.nib +++ /dev/null @@ -1,29 +0,0 @@ - - - - - IBDocumentLocation - 47 30 356 240 0 0 1024 746 - IBFramework Version - 291.0 - IBSystem Version - 6R73 - IBUserGuides - - Modal Panel - - guideLocations - - guidesLocked - NO - - Panel - - guideLocations - - guidesLocked - NO - - - - diff --git a/GPGMail/Resources/GPG.subproj/French.lproj/GPGProgressIndicatorController.nib/objects.nib b/GPGMail/Resources/GPG.subproj/French.lproj/GPGProgressIndicatorController.nib/objects.nib deleted file mode 100755 index 0b5efd43..00000000 Binary files a/GPGMail/Resources/GPG.subproj/French.lproj/GPGProgressIndicatorController.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/GPG.tiff b/GPGMail/Resources/GPG.subproj/GPG.tiff deleted file mode 100644 index 7986c7dd..00000000 Binary files a/GPGMail/Resources/GPG.subproj/GPG.tiff and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/German.lproj/GPG.strings b/GPGMail/Resources/GPG.subproj/German.lproj/GPG.strings deleted file mode 100644 index fff8b7b4..00000000 --- a/GPGMail/Resources/GPG.subproj/German.lproj/GPG.strings +++ /dev/null @@ -1,16 +0,0 @@ -{ -/* Exception reason (not displayed yet) */ -"Error after gpg execution" = "Fehler nach GPG-lauf"; -"gpg execution manually interrupted" = "GPG-lauf manuell unterbrochen"; - -/* Passphrase entry message */ -"Enter passphrase for %@:" = "Kennwort für %@:"; // Param is the userID of a key -"Enter passphrase for this message:" = "Kennwort für diese Nachricht:"; // Symmetric encryption/decryption, no key - -/* Keychain support */ -"Can't get default keychain!" = "Standard Schlüsselbund (Keychain) kann nicht geöffnet werden!"; -"Password buffer too small for keychain!" = "Kennwortgröße ist für Schlüsselbund (Keychain) zu klein!"; -"Invalid reference to the keychain item for %s:%@" = "Ungültiger Verweis auf Schlüsselbundelement %s:%@"; // 1st argument is service, 2nd argument is user name -"Unknown problem accessing keychain! Error %d" = "Unbekannter Fehler beim Zugriff auf Schlüsselbund (Keychain)! Fehler %d"; -"Can't store the password for %s:%@: it is too long for the keychain!" = "Kennwort für %s:%@ kann nicht gespeichert werden: Es ist zu lang für das Schlüsselbund (Keychain)!"; // 1st argument is service, 2nd argument is user name -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/German.lproj/GPGPassphrase.nib/classes.nib b/GPGMail/Resources/GPG.subproj/German.lproj/GPGPassphrase.nib/classes.nib deleted file mode 100644 index 5b8822aa..00000000 --- a/GPGMail/Resources/GPG.subproj/German.lproj/GPGPassphrase.nib/classes.nib +++ /dev/null @@ -1,21 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {endModal = id; toggleShowPassphrase = id; }; - CLASS = GPGPassphraseController; - LANGUAGE = ObjC; - OUTLETS = { - clearPassphraseTextField = NSTextField; - messageTextField = NSTextField; - panel = NSPanel; - passphraseCheckBox = NSButton; - passphraseTabView = NSTabView; - passphraseTextField = NSSecureTextField; - titleTextField = NSTextField; - }; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/German.lproj/GPGPassphrase.nib/info.nib b/GPGMail/Resources/GPG.subproj/German.lproj/GPGPassphrase.nib/info.nib deleted file mode 100644 index 743c00d9..00000000 --- a/GPGMail/Resources/GPG.subproj/German.lproj/GPGPassphrase.nib/info.nib +++ /dev/null @@ -1,12 +0,0 @@ - - - - - IBDocumentLocation - 74 10 356 240 0 0 1280 832 - IBFramework Version - 437.0 - IBSystem Version - 8A428 - - diff --git a/GPGMail/Resources/GPG.subproj/German.lproj/GPGPassphrase.nib/objects.nib b/GPGMail/Resources/GPG.subproj/German.lproj/GPGPassphrase.nib/objects.nib deleted file mode 100644 index bc5ffb1c..00000000 Binary files a/GPGMail/Resources/GPG.subproj/German.lproj/GPGPassphrase.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/German.lproj/GPGProgressIndicatorController.nib/classes.nib b/GPGMail/Resources/GPG.subproj/German.lproj/GPGProgressIndicatorController.nib/classes.nib deleted file mode 100644 index ae6810ba..00000000 --- a/GPGMail/Resources/GPG.subproj/German.lproj/GPGProgressIndicatorController.nib/classes.nib +++ /dev/null @@ -1,23 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {cancel = id; }; - CLASS = GPGProgressIndicatorController; - LANGUAGE = ObjC; - OUTLETS = { - backgroundTextField = id; - cancelButton = id; - delegate = id; - enclosingBox = id; - progressIndicator = id; - progressIndicator2 = id; - titleTextField = id; - titleTextField2 = id; - }; - SUPERCLASS = NSObject; - }, - {CLASS = NSObject; LANGUAGE = ObjC; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/German.lproj/GPGProgressIndicatorController.nib/info.nib b/GPGMail/Resources/GPG.subproj/German.lproj/GPGProgressIndicatorController.nib/info.nib deleted file mode 100644 index 05bd21af..00000000 --- a/GPGMail/Resources/GPG.subproj/German.lproj/GPGProgressIndicatorController.nib/info.nib +++ /dev/null @@ -1,29 +0,0 @@ - - - - - IBDocumentLocation - 120 36 356 240 0 0 1280 832 - IBFramework Version - 437.0 - IBSystem Version - 8A428 - IBUserGuides - - Modal Panel - - guideLocations - - guidesLocked - NO - - Panel - - guideLocations - - guidesLocked - NO - - - - diff --git a/GPGMail/Resources/GPG.subproj/German.lproj/GPGProgressIndicatorController.nib/objects.nib b/GPGMail/Resources/GPG.subproj/German.lproj/GPGProgressIndicatorController.nib/objects.nib deleted file mode 100644 index f4ae4519..00000000 Binary files a/GPGMail/Resources/GPG.subproj/German.lproj/GPGProgressIndicatorController.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPG.strings b/GPGMail/Resources/GPG.subproj/Italian.lproj/GPG.strings deleted file mode 100644 index 0b4f8bd2..00000000 --- a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPG.strings +++ /dev/null @@ -1,16 +0,0 @@ -{ -/* Exception reason (not displayed yet) */ -"Error after gpg execution" = "Errore dopo l'esecuzione di gpg"; -"gpg execution manually interrupted" = "Esecuzione di gpg interrotta manualmente"; - -/* Passphrase entry message */ -"Enter passphrase for %@:" = "Inserisci la frase chiave di %@:"; // Param is the userID of a key -"Enter passphrase for this message:" = "Inserisci la frase chiave per questo messaggio:"; // Symmetric encryption/decryption, no key - -/* Keychain support */ -"Can't get default keychain!" = "Non posso accedere al portachiavi predefinito!"; -"Password buffer too small for keychain!" = "La memoria per la parola chiave è insufficiente per il portachiavi!"; -"Invalid reference to the keychain item for %s:%@" = "Il riferimento all'elemento del portachiavi per %s:%@ non è valido"; // 1st argument is service, 2nd argument is user name -"Unknown problem accessing keychain! Error %d" = "Problema sconosciuto nel tentativo di accedere al portachiavi! Errore %d"; -"Can't store the password for %s:%@: it is too long for the keychain!" = "Non posso memorizzare la password per %s:%@: è troppo lunga per il portachiavi!"; // 1st argument is service, 2nd argument is user name -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGPassphrase.nib/classes.nib b/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGPassphrase.nib/classes.nib deleted file mode 100644 index 5b8822aa..00000000 --- a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGPassphrase.nib/classes.nib +++ /dev/null @@ -1,21 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {endModal = id; toggleShowPassphrase = id; }; - CLASS = GPGPassphraseController; - LANGUAGE = ObjC; - OUTLETS = { - clearPassphraseTextField = NSTextField; - messageTextField = NSTextField; - panel = NSPanel; - passphraseCheckBox = NSButton; - passphraseTabView = NSTabView; - passphraseTextField = NSSecureTextField; - titleTextField = NSTextField; - }; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGPassphrase.nib/info.nib b/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGPassphrase.nib/info.nib deleted file mode 100644 index 5bba01a9..00000000 --- a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGPassphrase.nib/info.nib +++ /dev/null @@ -1,10 +0,0 @@ - - - - - IBFramework Version - 283.0 - IBSystem Version - 6R73 - - diff --git a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGPassphrase.nib/objects.nib b/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGPassphrase.nib/objects.nib deleted file mode 100644 index d98bf9ca..00000000 Binary files a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGPassphrase.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGProgressIndicatorController.nib/classes.nib b/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGProgressIndicatorController.nib/classes.nib deleted file mode 100644 index ae6810ba..00000000 --- a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGProgressIndicatorController.nib/classes.nib +++ /dev/null @@ -1,23 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {cancel = id; }; - CLASS = GPGProgressIndicatorController; - LANGUAGE = ObjC; - OUTLETS = { - backgroundTextField = id; - cancelButton = id; - delegate = id; - enclosingBox = id; - progressIndicator = id; - progressIndicator2 = id; - titleTextField = id; - titleTextField2 = id; - }; - SUPERCLASS = NSObject; - }, - {CLASS = NSObject; LANGUAGE = ObjC; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGProgressIndicatorController.nib/info.nib b/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGProgressIndicatorController.nib/info.nib deleted file mode 100644 index 48f88c2e..00000000 --- a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGProgressIndicatorController.nib/info.nib +++ /dev/null @@ -1,33 +0,0 @@ - - - - - IBDocumentLocation - 42 30 356 240 0 0 1024 746 - IBFramework Version - 291.0 - IBOpenObjects - - 13 - - IBSystem Version - 6R73 - IBUserGuides - - Modal Panel - - guideLocations - - guidesLocked - NO - - Panel - - guideLocations - - guidesLocked - NO - - - - diff --git a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGProgressIndicatorController.nib/objects.nib b/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGProgressIndicatorController.nib/objects.nib deleted file mode 100644 index 8d749536..00000000 Binary files a/GPGMail/Resources/GPG.subproj/Italian.lproj/GPGProgressIndicatorController.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPG.strings b/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPG.strings deleted file mode 100644 index c339315a..00000000 --- a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPG.strings +++ /dev/null @@ -1,16 +0,0 @@ -{ -/* Exception reason (not displayed yet) */ -"Error after gpg execution" = "gpg実行後のエラー"; -"gpg execution manually interrupted" = "gpgの実行は手動で中断されました"; - -/* Passphrase entry message */ -"Enter passphrase for %@:" = "%@ のためにパスフレーズを入力して下さい:"; // Param is the userID of a key -"Enter passphrase for this message:" = "このメッセージのためにパスフレーズを入力して下さい:"; // Symmetric encryption/decryption, no key - -/* Keychain support */ -"Can't get default keychain!" = "初期設定のキーチェーンを得ることができません!"; -"Password buffer too small for keychain!" = "キーチェーンにとっては、パスワードのバッファが小さすぎます!"; -"Invalid reference to the keychain item for %s:%@" = "%s:%@ にとっては、キーチェーン項目への参照は無効です"; // 1st argument is service, 2nd argument is user name -"Unknown problem accessing keychain! Error %d" = "キーチェーンにアクセスすることの未知の問題です! エラー %d"; -"Can't store the password for %s:%@: it is too long for the keychain!" = "%s:%@ のためにパスワードを蓄えることができません: それはキーチェーンにとって長過ぎます!"; // 1st argument is service, 2nd argument is user name -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGPassphrase.nib/classes.nib b/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGPassphrase.nib/classes.nib deleted file mode 100644 index 5b8822aa..00000000 --- a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGPassphrase.nib/classes.nib +++ /dev/null @@ -1,21 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {endModal = id; toggleShowPassphrase = id; }; - CLASS = GPGPassphraseController; - LANGUAGE = ObjC; - OUTLETS = { - clearPassphraseTextField = NSTextField; - messageTextField = NSTextField; - panel = NSPanel; - passphraseCheckBox = NSButton; - passphraseTabView = NSTabView; - passphraseTextField = NSSecureTextField; - titleTextField = NSTextField; - }; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGPassphrase.nib/info.nib b/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGPassphrase.nib/info.nib deleted file mode 100644 index f10eb54c..00000000 --- a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGPassphrase.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ - - - - - IBDocumentLocation - 69 74 356 241 0 0 1280 832 - IBFramework Version - 364.0 - IBOpenObjects - - 13 - - IBSystem Version - 7W98 - - diff --git a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGPassphrase.nib/objects.nib b/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGPassphrase.nib/objects.nib deleted file mode 100644 index ad69a2e6..00000000 Binary files a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGPassphrase.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGProgressIndicatorController.nib/classes.nib b/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGProgressIndicatorController.nib/classes.nib deleted file mode 100644 index ae6810ba..00000000 --- a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGProgressIndicatorController.nib/classes.nib +++ /dev/null @@ -1,23 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {cancel = id; }; - CLASS = GPGProgressIndicatorController; - LANGUAGE = ObjC; - OUTLETS = { - backgroundTextField = id; - cancelButton = id; - delegate = id; - enclosingBox = id; - progressIndicator = id; - progressIndicator2 = id; - titleTextField = id; - titleTextField2 = id; - }; - SUPERCLASS = NSObject; - }, - {CLASS = NSObject; LANGUAGE = ObjC; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGProgressIndicatorController.nib/info.nib b/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGProgressIndicatorController.nib/info.nib deleted file mode 100644 index 2890749f..00000000 --- a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGProgressIndicatorController.nib/info.nib +++ /dev/null @@ -1,29 +0,0 @@ - - - - - IBDocumentLocation - 52 92 356 240 0 59 1152 789 - IBFramework Version - 364.0 - IBSystem Version - 7W98 - IBUserGuides - - Modal Panel - - guideLocations - - guidesLocked - NO - - Panel - - guideLocations - - guidesLocked - NO - - - - diff --git a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGProgressIndicatorController.nib/objects.nib b/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGProgressIndicatorController.nib/objects.nib deleted file mode 100644 index 45eb6f3f..00000000 Binary files a/GPGMail/Resources/GPG.subproj/Japanese.lproj/GPGProgressIndicatorController.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPG.strings b/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPG.strings deleted file mode 100755 index 37a37cf3..00000000 --- a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPG.strings +++ /dev/null @@ -1,16 +0,0 @@ -{ -/* Exception reason (not displayed yet) */ -"Error after gpg execution" = "Error tras la ejecución de de gpg"; -"gpg execution manually interrupted" = "ejecución de gpg interrumpida manualmente"; - -/* Passphrase entry message */ -"Enter passphrase for %@:" = "Introduzca la clave para %@:"; // Param is the userID of a key -"Enter passphrase for this message:" = "Introduzca la clave para este mensaje:"; // Symmetric encryption/decryption, no key - -/* Keychain support */ -"Can't get default keychain!" = "¡No se han podido encontrar las llaves por defecto!"; -"Password buffer too small for keychain!" = "¡El buffer de claves es demasiado pequeño para las llaves!"; -"Invalid reference to the keychain item for %s:%@" = "Rerencia inválida al ítem de llaves para %s:%@"; // 1st argument is service, 2nd argument is user name -"Unknown problem accessing keychain! Error %d" = "¡Problema desconocido al acceder a las llaves! Error %d"; -"Can't store the password for %s:%@: it is too long for the keychain!" = "No se puede almacenar la clave de acceso para %s:%@: ¡es demasiado grande para las llaves!"; // 1st argument is service, 2nd argument is user name -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGPassphrase.nib/classes.nib b/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGPassphrase.nib/classes.nib deleted file mode 100644 index 5b8822aa..00000000 --- a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGPassphrase.nib/classes.nib +++ /dev/null @@ -1,21 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {endModal = id; toggleShowPassphrase = id; }; - CLASS = GPGPassphraseController; - LANGUAGE = ObjC; - OUTLETS = { - clearPassphraseTextField = NSTextField; - messageTextField = NSTextField; - panel = NSPanel; - passphraseCheckBox = NSButton; - passphraseTabView = NSTabView; - passphraseTextField = NSSecureTextField; - titleTextField = NSTextField; - }; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGPassphrase.nib/info.nib b/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGPassphrase.nib/info.nib deleted file mode 100644 index 312f6e96..00000000 --- a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGPassphrase.nib/info.nib +++ /dev/null @@ -1,12 +0,0 @@ - - - - - IBDocumentLocation - 60 92 356 240 0 0 1024 746 - IBFramework Version - 349.0 - IBSystem Version - 7C107 - - diff --git a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGPassphrase.nib/objects.nib b/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGPassphrase.nib/objects.nib deleted file mode 100644 index 335c4199..00000000 Binary files a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGPassphrase.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGProgressIndicatorController.nib/classes.nib b/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGProgressIndicatorController.nib/classes.nib deleted file mode 100755 index ae6810ba..00000000 --- a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGProgressIndicatorController.nib/classes.nib +++ /dev/null @@ -1,23 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {cancel = id; }; - CLASS = GPGProgressIndicatorController; - LANGUAGE = ObjC; - OUTLETS = { - backgroundTextField = id; - cancelButton = id; - delegate = id; - enclosingBox = id; - progressIndicator = id; - progressIndicator2 = id; - titleTextField = id; - titleTextField2 = id; - }; - SUPERCLASS = NSObject; - }, - {CLASS = NSObject; LANGUAGE = ObjC; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGProgressIndicatorController.nib/info.nib b/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGProgressIndicatorController.nib/info.nib deleted file mode 100755 index 7aa37852..00000000 --- a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGProgressIndicatorController.nib/info.nib +++ /dev/null @@ -1,29 +0,0 @@ - - - - - IBDocumentLocation - 44 71 356 240 0 0 1024 746 - IBFramework Version - 286.0 - IBSystem Version - 6R73 - IBUserGuides - - Modal Panel - - guideLocations - - guidesLocked - NO - - Panel - - guideLocations - - guidesLocked - NO - - - - diff --git a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGProgressIndicatorController.nib/objects.nib b/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGProgressIndicatorController.nib/objects.nib deleted file mode 100755 index 1064c60b..00000000 Binary files a/GPGMail/Resources/GPG.subproj/Spanish.lproj/GPGProgressIndicatorController.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPG.strings b/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPG.strings deleted file mode 100644 index a8d51a98..00000000 --- a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPG.strings +++ /dev/null @@ -1,16 +0,0 @@ -{ -/* Exception reason (not displayed yet) */ -"Error after gpg execution" = "Fel efter gpg-körning"; -"gpg execution manually interrupted" = "Exekvering av gpg avbröts manuellt"; - -/* Passphrase entry message */ -"Enter passphrase for %@:" = "Ange lösenord för %@:"; // Param is the userID of a key -"Enter passphrase for this message:" = "Ange lösenord för detta meddelande:"; // Symmetric encryption/decryption, no key - -/* Keychain support */ -"Can't get default keychain!" = "Kan inte hämta standardnyckelring!"; -"Password buffer too small for keychain!" = "Lösenordsbuffert är för liten för nyckelringen!"; -"Invalid reference to the keychain item for %s:%@" = "Ogiltig referens till nyckelringsobjektet för %s:%@"; // 1st argument is service, 2nd argument is user name -"Unknown problem accessing keychain! Error %d" = "Okänt problem vid öppnande av nyckelring! Fel %d"; -"Can't store the password for %s:%@: it is too long for the keychain!" = "Kan inte spara lösenordet för %s:%@: det är för långt för nyckelringen!"; // 1st argument is service, 2nd argument is user name -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGPassphrase.nib/classes.nib b/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGPassphrase.nib/classes.nib deleted file mode 100644 index 3ea1580e..00000000 --- a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGPassphrase.nib/classes.nib +++ /dev/null @@ -1,26 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = {"" = id; }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = {endModal = id; toggleShowPassphrase = id; }; - CLASS = GPGPassphraseController; - LANGUAGE = ObjC; - OUTLETS = { - clearPassphraseTextField = NSTextField; - messageTextField = NSTextField; - panel = NSPanel; - passphraseCheckBox = NSButton; - passphraseTabView = NSTabView; - passphraseTextField = NSSecureTextField; - titleTextField = NSTextField; - }; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGPassphrase.nib/info.nib b/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGPassphrase.nib/info.nib deleted file mode 100644 index d4077b4b..00000000 --- a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGPassphrase.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ - - - - - IBDocumentLocation - 69 14 356 240 0 0 1280 1002 - IBFramework Version - 439.0 - IBOpenObjects - - 13 - - IBSystem Version - 8I127 - - diff --git a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGPassphrase.nib/objects.nib b/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGPassphrase.nib/objects.nib deleted file mode 100644 index e9e010b2..00000000 Binary files a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGPassphrase.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGProgressIndicatorController.nib/classes.nib b/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGProgressIndicatorController.nib/classes.nib deleted file mode 100644 index ae6810ba..00000000 --- a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGProgressIndicatorController.nib/classes.nib +++ /dev/null @@ -1,23 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {cancel = id; }; - CLASS = GPGProgressIndicatorController; - LANGUAGE = ObjC; - OUTLETS = { - backgroundTextField = id; - cancelButton = id; - delegate = id; - enclosingBox = id; - progressIndicator = id; - progressIndicator2 = id; - titleTextField = id; - titleTextField2 = id; - }; - SUPERCLASS = NSObject; - }, - {CLASS = NSObject; LANGUAGE = ObjC; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGProgressIndicatorController.nib/info.nib b/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGProgressIndicatorController.nib/info.nib deleted file mode 100644 index 48097678..00000000 --- a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGProgressIndicatorController.nib/info.nib +++ /dev/null @@ -1,17 +0,0 @@ - - - - - IBDocumentLocation - 60 46 356 240 0 0 1280 1002 - IBFramework Version - 439.0 - IBOpenObjects - - 13 - 31 - - IBSystem Version - 8I127 - - diff --git a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGProgressIndicatorController.nib/objects.nib b/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGProgressIndicatorController.nib/objects.nib deleted file mode 100644 index a5cabaa8..00000000 Binary files a/GPGMail/Resources/GPG.subproj/Swedish.lproj/GPGProgressIndicatorController.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/fi.lproj/GPG.strings b/GPGMail/Resources/GPG.subproj/fi.lproj/GPG.strings deleted file mode 100755 index ca501734..00000000 --- a/GPGMail/Resources/GPG.subproj/fi.lproj/GPG.strings +++ /dev/null @@ -1,16 +0,0 @@ -{ -/* Exception reason (not displayed yet) */ -"Error after gpg execution" = "Virhe gpg:n suorituksessa"; -"gpg execution manually interrupted" = "gpg:n suoritus keskeytetty"; - -/* Passphrase entry message */ -"Enter passphrase for %@:" = "Anna salauslause kohteelle %@:"; // Param is the userID of a key -"Enter passphrase for this message:" = "Anna viestin salauslause:"; // Symmetric encryption/decryption, no key - -/* Keychain support */ -"Can't get default keychain!" = "En löyudä oletusavainnippua!"; -"Password buffer too small for keychain!" = "Salasanapuskuri oli liian pieni avainnipulle!"; -"Invalid reference to the keychain item for %s:%@" = "Virheellinen viittaus avainnipun kohteelle %s:%@"; // 1st argument is service, 2nd argument is user name -"Unknown problem accessing keychain! Error %d" = "Tuntematon virhe avainnnipun käsittelyssä! Virhe %d"; -"Can't store the password for %s:%@: it is too long for the keychain!" = "En voi tallettaa salasanaa %s:%@: se on liian pitkä avainnippuun!"; // 1st argument is service, 2nd argument is user name -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/fi.lproj/GPGPassphrase.nib/classes.nib b/GPGMail/Resources/GPG.subproj/fi.lproj/GPGPassphrase.nib/classes.nib deleted file mode 100644 index 5b8822aa..00000000 --- a/GPGMail/Resources/GPG.subproj/fi.lproj/GPGPassphrase.nib/classes.nib +++ /dev/null @@ -1,21 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {endModal = id; toggleShowPassphrase = id; }; - CLASS = GPGPassphraseController; - LANGUAGE = ObjC; - OUTLETS = { - clearPassphraseTextField = NSTextField; - messageTextField = NSTextField; - panel = NSPanel; - passphraseCheckBox = NSButton; - passphraseTabView = NSTabView; - passphraseTextField = NSSecureTextField; - titleTextField = NSTextField; - }; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/fi.lproj/GPGPassphrase.nib/info.nib b/GPGMail/Resources/GPG.subproj/fi.lproj/GPGPassphrase.nib/info.nib deleted file mode 100644 index 698bde1c..00000000 --- a/GPGMail/Resources/GPG.subproj/fi.lproj/GPGPassphrase.nib/info.nib +++ /dev/null @@ -1,10 +0,0 @@ - - - - - IBFramework Version - 364.0 - IBSystem Version - 7W98 - - diff --git a/GPGMail/Resources/GPG.subproj/fi.lproj/GPGPassphrase.nib/objects.nib b/GPGMail/Resources/GPG.subproj/fi.lproj/GPGPassphrase.nib/objects.nib deleted file mode 100644 index d1311a8d..00000000 Binary files a/GPGMail/Resources/GPG.subproj/fi.lproj/GPGPassphrase.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/fi.lproj/GPGProgressIndicatorController.nib/classes.nib b/GPGMail/Resources/GPG.subproj/fi.lproj/GPGProgressIndicatorController.nib/classes.nib deleted file mode 100644 index ae6810ba..00000000 --- a/GPGMail/Resources/GPG.subproj/fi.lproj/GPGProgressIndicatorController.nib/classes.nib +++ /dev/null @@ -1,23 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {cancel = id; }; - CLASS = GPGProgressIndicatorController; - LANGUAGE = ObjC; - OUTLETS = { - backgroundTextField = id; - cancelButton = id; - delegate = id; - enclosingBox = id; - progressIndicator = id; - progressIndicator2 = id; - titleTextField = id; - titleTextField2 = id; - }; - SUPERCLASS = NSObject; - }, - {CLASS = NSObject; LANGUAGE = ObjC; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/fi.lproj/GPGProgressIndicatorController.nib/info.nib b/GPGMail/Resources/GPG.subproj/fi.lproj/GPGProgressIndicatorController.nib/info.nib deleted file mode 100644 index 2890749f..00000000 --- a/GPGMail/Resources/GPG.subproj/fi.lproj/GPGProgressIndicatorController.nib/info.nib +++ /dev/null @@ -1,29 +0,0 @@ - - - - - IBDocumentLocation - 52 92 356 240 0 59 1152 789 - IBFramework Version - 364.0 - IBSystem Version - 7W98 - IBUserGuides - - Modal Panel - - guideLocations - - guidesLocked - NO - - Panel - - guideLocations - - guidesLocked - NO - - - - diff --git a/GPGMail/Resources/GPG.subproj/fi.lproj/GPGProgressIndicatorController.nib/objects.nib b/GPGMail/Resources/GPG.subproj/fi.lproj/GPGProgressIndicatorController.nib/objects.nib deleted file mode 100644 index 392aacc5..00000000 Binary files a/GPGMail/Resources/GPG.subproj/fi.lproj/GPGProgressIndicatorController.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/ko.lproj/GPG.strings b/GPGMail/Resources/GPG.subproj/ko.lproj/GPG.strings deleted file mode 100644 index 11c91db0..00000000 --- a/GPGMail/Resources/GPG.subproj/ko.lproj/GPG.strings +++ /dev/null @@ -1,16 +0,0 @@ -{ -/* Exception reason (not displayed yet) */ -"Error after gpg execution" = "gpg 실행 후에 에러가 발생했습니다"; -"gpg execution manually interrupted" = "gpg 실행이 수동으로 중지되었습니다"; - -/* Passphrase entry message */ -"Enter passphrase for %@:" = "%@에 대한 암호문을 입력해 주세요:"; // Param is the userID of a key -"Enter passphrase for this message:" = "이 메시지에 대한 암호문을 입력해 주세요:"; // Symmetric encryption/decryption, no key - -/* Keychain support */ -"Can't get default keychain!" = "디폴트 키체인을 찾을 수 없습니다!"; -"Password buffer too small for keychain!" = "암호 버퍼가 너무 작아서 키체인에 넣을 수 없습니다!"; -"Invalid reference to the keychain item for %s:%@" = "%s:%@의 키체인 항목에 대한 참조가 부적절합니다"; // 1st argument is service, 2nd argument is user name -"Unknown problem accessing keychain! Error %d" = "키체인 접근 중 알 수 엇는 문제가 발생했습니다! 에러 %d"; -"Can't store the password for %s:%@: it is too long for the keychain!" = "%s:%@의 암호를 저장 할 수 없습니다. 너무 길어서 키체인에 넣을 수 없습니다!"; // 1st argument is service, 2nd argument is user name -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/ko.lproj/GPGPassphrase.nib/classes.nib b/GPGMail/Resources/GPG.subproj/ko.lproj/GPGPassphrase.nib/classes.nib deleted file mode 100644 index 5b8822aa..00000000 --- a/GPGMail/Resources/GPG.subproj/ko.lproj/GPGPassphrase.nib/classes.nib +++ /dev/null @@ -1,21 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {endModal = id; toggleShowPassphrase = id; }; - CLASS = GPGPassphraseController; - LANGUAGE = ObjC; - OUTLETS = { - clearPassphraseTextField = NSTextField; - messageTextField = NSTextField; - panel = NSPanel; - passphraseCheckBox = NSButton; - passphraseTabView = NSTabView; - passphraseTextField = NSSecureTextField; - titleTextField = NSTextField; - }; - SUPERCLASS = NSObject; - } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/ko.lproj/GPGPassphrase.nib/info.nib b/GPGMail/Resources/GPG.subproj/ko.lproj/GPGPassphrase.nib/info.nib deleted file mode 100644 index 77101c1e..00000000 --- a/GPGMail/Resources/GPG.subproj/ko.lproj/GPGPassphrase.nib/info.nib +++ /dev/null @@ -1,16 +0,0 @@ - - - - - IBDocumentLocation - 69 54 356 240 0 0 1024 746 - IBFramework Version - 349.0 - IBOpenObjects - - 13 - - IBSystem Version - 7C107 - - diff --git a/GPGMail/Resources/GPG.subproj/ko.lproj/GPGPassphrase.nib/objects.nib b/GPGMail/Resources/GPG.subproj/ko.lproj/GPGPassphrase.nib/objects.nib deleted file mode 100644 index 13a23962..00000000 Binary files a/GPGMail/Resources/GPG.subproj/ko.lproj/GPGPassphrase.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPG.subproj/ko.lproj/GPGProgressIndicatorController.nib/classes.nib b/GPGMail/Resources/GPG.subproj/ko.lproj/GPGProgressIndicatorController.nib/classes.nib deleted file mode 100644 index ae6810ba..00000000 --- a/GPGMail/Resources/GPG.subproj/ko.lproj/GPGProgressIndicatorController.nib/classes.nib +++ /dev/null @@ -1,23 +0,0 @@ -{ - IBClasses = ( - {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, - { - ACTIONS = {cancel = id; }; - CLASS = GPGProgressIndicatorController; - LANGUAGE = ObjC; - OUTLETS = { - backgroundTextField = id; - cancelButton = id; - delegate = id; - enclosingBox = id; - progressIndicator = id; - progressIndicator2 = id; - titleTextField = id; - titleTextField2 = id; - }; - SUPERCLASS = NSObject; - }, - {CLASS = NSObject; LANGUAGE = ObjC; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPG.subproj/ko.lproj/GPGProgressIndicatorController.nib/info.nib b/GPGMail/Resources/GPG.subproj/ko.lproj/GPGProgressIndicatorController.nib/info.nib deleted file mode 100644 index d27a8419..00000000 --- a/GPGMail/Resources/GPG.subproj/ko.lproj/GPGProgressIndicatorController.nib/info.nib +++ /dev/null @@ -1,26 +0,0 @@ - - - - - IBDocumentLocation - 44 71 356 240 0 0 1024 746 - IBFramework Version - 349.0 - IBOpenObjects - - 13 - - IBSystem Version - 7C107 - IBUserGuides - - Panel - - guideLocations - - guidesLocked - NO - - - - diff --git a/GPGMail/Resources/GPG.subproj/ko.lproj/GPGProgressIndicatorController.nib/objects.nib b/GPGMail/Resources/GPG.subproj/ko.lproj/GPGProgressIndicatorController.nib/objects.nib deleted file mode 100644 index 20c1b528..00000000 Binary files a/GPGMail/Resources/GPG.subproj/ko.lproj/GPGProgressIndicatorController.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/GPGMail.tiff b/GPGMail/Resources/GPGMail.tiff deleted file mode 100644 index 7986c7dd..00000000 Binary files a/GPGMail/Resources/GPGMail.tiff and /dev/null differ diff --git a/GPGMail/Resources/GPGMail32.tiff b/GPGMail/Resources/GPGMail32.tiff deleted file mode 100644 index 5e469cc5..00000000 Binary files a/GPGMail/Resources/GPGMail32.tiff and /dev/null differ diff --git a/GPGMail/Resources/GPGMailBundle.defaults b/GPGMail/Resources/GPGMailBundle.defaults deleted file mode 100644 index 88c03c4a..00000000 --- a/GPGMail/Resources/GPGMailBundle.defaults +++ /dev/null @@ -1,58 +0,0 @@ -{ - /* - * Do not modify that file. Use the Terminal, and type: - * defaults write com.apple.mail TheDefaultName TheValue - */ - - /* Keys */ - GPGChoosesPersonalKeyAccordingToAccount = NO; - GPGUsesKeychain = NO; - GPGRemembersPassphrasesDuringSession = NO; - GPGPassphraseFlushTimeout = "60.0"; - GPGShowsPassphrase = NO; - - /* Composing */ - GPGAlwaysSignMessage = NO; - GPGSignsReplyToSignedMessage = YES; - GPGSignWhenEncrypting = YES; - GPGAlwaysEncryptMessage = NO; - GPGEncryptsReplyToEncryptedMessage = YES; - GPGEncryptMessageWhenPossible = YES; - GPGEncryptsToSelf = YES; - GPGUsesABEntriesRules = YES; - GPGTrustsAllKeys = YES; - GPGFiltersOutUnusableKeys = YES; - GPGOpenPGPStyleOnly = NO; - GPGUsesBCCRecipients = NO; - GPGDisplaysButtonsInComposeWindow = YES; - GPGButtonsShowState = YES; - GPGUsesEncapsulatedSignature = YES; - - /* Viewing */ - GPGAuthenticatesMessagesAutomatically = YES; - GPGAuthenticatesOnlyUnreadMessagesAutomatically = YES; - GPGDecryptsMessagesAutomatically = YES; - GPGDecryptsOnlyUnreadMessagesAutomatically = YES; - GPGAutomaticallyShowsAllInfo = NO; - - /* Misc */ - GPGDisplayedKeyIdentifiers = (name, email, comment); - GPGDisplaysAllUserIDs = YES; - GPGRefreshesKeysOnVolumeMount = YES; - GPGDisablesSMIME = NO; - - GPGSortingTableColumnTag = 1; - GPGVisibleTableColumnTags = (0, 1, 2, 3); - GPGAscendingSorting = YES; - - /* Hidden */ - GPGMailDebug = 0; - GPGTraceEnabled = NO; - GPGLogStderrEnabled = NO; - GPGIgnoresPGPPresence = NO; - GPGHashAlgorithm = "SHA1"; /* No longer used */ - GPGWarnedAboutMissingPrivateKeys = NO; - GPGAddCustomHeaders = YES; - /* GPGOpenPGPExecutablePath = "/usr/local/bin/gpg"; */ - GPGUsesAlwaysCRLF = NO; -} \ No newline at end of file diff --git a/GPGMail/Resources/GPGMailPreferences.tiff b/GPGMail/Resources/GPGMailPreferences.tiff deleted file mode 100644 index 5e469cc5..00000000 Binary files a/GPGMail/Resources/GPGMailPreferences.tiff and /dev/null differ diff --git a/GPGMail/Resources/German.lproj/GPGKeyDownload.nib/classes.nib b/GPGMail/Resources/German.lproj/GPGKeyDownload.nib/classes.nib deleted file mode 100644 index abce7a58..00000000 --- a/GPGMail/Resources/German.lproj/GPGKeyDownload.nib/classes.nib +++ /dev/null @@ -1,75 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - cancel - id - gpgSearchKeys - id - import - id - search - id - - CLASS - GPGKeyDownload - LANGUAGE - ObjC - OUTLETS - - checkBoxMatrix - NSMatrix - context - id - emailCell - NSFormCell - importButton - NSButton - importProgressField - NSTextField - importProgressIndicator - NSProgressIndicator - outlineView - NSOutlineView - searchButton - NSButton - searchProgressField - NSTextField - searchProgressIndicator - NSProgressIndicator - serverComboBox - NSComboBox - subtitleField - NSTextField - tabView - NSTabView - titleField - NSTextField - - SUPERCLASS - NSWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/German.lproj/GPGKeyDownload.nib/info.nib b/GPGMail/Resources/German.lproj/GPGKeyDownload.nib/info.nib deleted file mode 100644 index 7ec1fc41..00000000 --- a/GPGMail/Resources/German.lproj/GPGKeyDownload.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - 42 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/German.lproj/GPGKeyDownload.nib/keyedobjects.nib b/GPGMail/Resources/German.lproj/GPGKeyDownload.nib/keyedobjects.nib deleted file mode 100644 index cfd4d1cd..00000000 Binary files a/GPGMail/Resources/German.lproj/GPGKeyDownload.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/German.lproj/GPGMail.strings b/GPGMail/Resources/German.lproj/GPGMail.strings deleted file mode 100644 index b2cc5195..00000000 --- a/GPGMail/Resources/German.lproj/GPGMail.strings +++ /dev/null @@ -1,239 +0,0 @@ -{ -/* Passphrase panel titles */ -"MESSAGE_AUTHENTICATION_TITLE" = "Nachrichten Authentifizierung"; -"MESSAGE_DECRYPTION_PASSPHRASE_TITLE" = "E-Mail Entschlüsselung"; - -/**/ -"DECRYPTING" = "Entschlüsseln..."; -"ENCRYPTING" = "Verschlüsseln..."; - -/* submenu title */ -"PGP_MENU" = "PGP"; -/* submenu title */ -"PGP_KEYS_MENU" = "PGP Schlüssel"; - -/* submenu items */ -"DECRYPT_MENU" = "Entschlüsseln"; -"AUTHENTICATE_MENU" = "Authentifizieren"; -"ENCRYPT_MENU" = "Neue E-Mail verschlüsseln"; -"SIGN_MENU" = "Neue E-Mail signieren"; - -/* Description of version prefixed with */ -"VERSION: %@" = "Version: %@"; - -/* PGP preferences panel name */ -"PGP_PREFERENCES" = "PGP"; - -/* Alert title and message */ -"MSG_DECRYPTION_ALERT_TITLE_NOT_SIGNED" = "E-Mail Entschlüsselung"; -"DECRYPTED_MSG_NOT_SIGNED" = "Die E-Mail war verschlüsselt, jedoch nicht PGP-signiert. Ihre Echtheit kann nicht bestätigt werden."; -"MSG_ENCRYPTION_ALERT_TITLE" = "E-Mail konnte nicht verschlüsselt werden"; -"MSG_DECRYPTION_ALERT_TITLE" = "E-Mail konnte nicht entschlüsselt werden"; -"MSG_SIGNING_ALERT_TITLE" = "E-Mail konnte nicht PGP-signiert werden"; -"UNSUPPORTED_ENCRYPTION_FORMAT" = "GPGMail kann diese verschlüsselte E-Mail nicht lesen."; -"DATA_NOT_AVAILABLE" = "Der Inhalt der E-Mail steht vorübergehend nicht zur Verfügung."; - -/* Informational alert title and message */ -"AUTHENTICATION_TITLE_OK" = "PGP Authentifizierung"; - -/**/ -"AUTHENTICATION_TITLE_FAILED" = "Fehlerhafte PGP Authentifizierung"; -"TRY_AGAIN" = "Wiederholen"; -"CANCEL_DELIVERY" = "Abbrechen"; -"CANCEL_DECRYPTION" = "Abbrechen"; - -/**/ -"AUTHENTICATION_TITLE_UNSIGNED" = "PGP Authentifizierung"; -"UNSIGNED_PGP_MESSAGE" = "Diese E-Mail wurde nicht PGP-signiert."; - -/* Toolbar item titles */ -"DECRYPT_ITEM" = "Entschlüsseln"; -"AUTHENTICATE_ITEM" = "Authentifizieren"; -"MAKE_ENCRYPTED_ITEM" = "Wird verschlüsselt"; -"MAKE_CLEAR_ITEM" = "Wird nicht verschlüsselt"; -"MAKE_UNSIGNED_ITEM" = "Wird nicht signiert"; -"MAKE_SIGNED_ITEM" = "Wird signiert"; -"ENCRYPTED_ITEM" = "Verschlüsselt"; -"CLEAR_ITEM" = "Klartext"; -"SIGNED_ITEM" = "Signiert"; -"UNSIGNED_ITEM" = "Unsigniert"; - -/* Toolbar item tooltips */ -"DECRYPT_ITEM_TOOLTIP" = "Entschlüsselt die PGP E-Mail"; -"AUTHENTICATE_ITEM_TOOLTIP" = "Überprüft die PGP Signatur der E-Mail"; -"MAKE_CLEAR_ITEM_TOOLTIP" = "Klicken Sie hier, um nicht zu verschlüsseln"; -"MAKE_ENCRYPTED_ITEM_TOOLTIP" = "Klicken Sie hier, um zu verschlüsseln"; -"MAKE_UNSIGNED_ITEM_TOOLTIP" = "Kicken Sie hier, um nicht zu signieren"; -"MAKE_SIGNED_ITEM_TOOLTIP" = "Klicken Sie hier, um zu signieren"; -"ENCRYPTED_ITEM_TOOLTIP" = "Diese E-Mail wird verschlüsselt; klicken Sie hier, um eine unverschlüsselte E-Mail zu erzeugen"; -"CLEAR_ITEM_TOOLTIP" = "Diese E-Mail wird nicht verschlüsselt; klicken Sie hier, um sie zu verschlüsseln"; -"SIGNED_ITEM_TOOLTIP" = "Diese E-Mail wird signiert; klicken Sie hier, um sie nicht zu signieren"; -"UNSIGNED_ITEM_TOOLTIP" = "Diese E-Mail wird nicht signiert; klicken Sie hier, um sie zu signieren"; - -/* Signature information */ -"Bad policy!" = "Ungültige Politik! "; // Followed by a list of policy URLs -"Policy: " = "Politik: "; // Followed by a list of policy URLs -"Signed on %@" = "Signiert am %@"; // Param is a date, whose format is set by SIGNATURE_CREATION_DATE_FORMAT -"SIGNATURE_CREATION_DATE_FORMAT" = "%c"; // See NSCalendarDate documentation for format -"No signature creation date available" = "Erstellungsdatum der Signatur nicht vorhanden"; -"Key fingerprint: %@" = "Fingerabdruck: %@"; -"Key ID: 0x%@" = "Schlüssel ID: 0x%@"; -"No key fingerprint/ID available" = "Kein Fingerabdruck/ID verfügbar"; -"Validity: %@" = "Gültigkeit: %@"; // Param is the validity status string -"Signature expires on %@" = "Signatur verfällt am %@"; // Param is a date, whose format is set by SIGNATURE_EXPIRATION_DATE_FORMAT -"SIGNATURE_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Key expired on %@" = "Schlüssel verfiel am %@"; // Param is a date, whose format is set by KEY_EXPIRATION_DATE_FORMAT -"KEY_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Signed by %@." = "Signiert von %@."; // Param is a userID -"Signature from %@ is bad!" = "Ungültige Signatur von %@!"; // Param us a userID -"Signature is bad!" = "Ungültige Signatur!"; -"Signature status error." = "Signaturstatus Fehler."; -"MISSING KEY %@." = "Fehlender Schlüssel %@."; // Param is a key ID in hexadecimal -"Signature summary 0x%04x - Signature status %u." = "Unbekannter Fehler: Signaturübersicht 0x%04x - Signaturstatus %u."; // Generic error message; first param is a hex status flag value, second is a decimal status value -"EXCEPTION: %@" = "Interner Fehler: %@"; // Generic error message; param is a string (exception reason, maybe not localized) -"AUTHENTICATING" = "Überprüfe PGP Signatur..."; -"UNTRUSTED RECIPIENTS" = "Mindestens ein Schlüssel ist nicht vertrauenswürdig"; - -/* Title */ -/* Error messages */ -"GPGMAIL_CANNOT_WORK" = "GPGMail kann nicht starten, da ein zugehöriges Programm nicht gestartet werden kann. Versuchen Sie Mail neu zu starten, falls der Fehler wieder auftritt, senden Sie eine Nachricht an gpgmail@sente.ch"; -"GPGMAIL_CANNOT_WORK_HAS_GPG_%@_VERSION_%@_NEEDS_%@" = "GPGMail konnte nicht starten. Es wurde GnuPG (%@) Version %@ gefunden, es wird aber mindestens Version %@ benötigt. Bitte beenden Sie Mail, installieren Sie eine passende GnuPG Version (z.B. MacGPG von http://macgpg.sourceforge.net/) und starten Sie Mail erneut."; // First arg is path to gpg, second and third are version strings -"GPGMAIL_CANNOT_WORK_MISSING_GPG_%@_VERSION_%@" = "GPGMail konnte nicht starten. GnuPG (%@) mit mindesten Version %@, konnte nicht gefunden werden. Bitte beenden Sie Mail, installieren Sie eine passende GnuPG Version (z.B. MacGPG von http://macgpg.sourceforge.net/) und starten Sie Mail erneut."; // First arg is path to gpg, second is version string -"INVALID_GPGMAIL_VERSION" = "Ihre Version von GPGMail ist nicht kompatibel mit Ihrer Version von Mail."; /* Title of alert sheet */ -"NEEDS_COMPATIBLE_BUNDLE_VERSION" = "Für Ihre Betriebssystemversion müssen Sie eine passende GPGMail Version installieren. Gehen Sie zu: http://gpgmail.org/"; - -/* Validity */ -"VALIDITY: " = "Gültigkeit: "; -"Validity=0" = "unbekannt"; -"Validity=1" = "unbestimmt"; -"Validity=2" = "niemals"; -"Validity=3" = "marginal"; -"Validity=4" = "voll"; -"Validity=5" = "ultimativ"; - -/* Generic MacGPGME error messages */ -"GPGErrorCode=1" = "Allgemeiner Fehler"; -"GPGErrorCode=8" = "Ungültige Signatur"; -"GPGErrorCode=9" = "Kein öffentlicher Schlüssel"; -"GPGErrorCode=10" = "Prüfsummenfehler"; -"GPGErrorCode=11" = "Kennwortfehler"; -"GPGErrorCode=15" = "Ungültige ASCII-Hülle"; -"GPGErrorCode=17" = "Kein geheimer Schlüssel"; -"GPGErrorCode=31" = "Ungültiges Kennwort"; -"GPGErrorCode=40" = "Key Server Fehler"; -"GPGErrorCode=53" = "Öffentlich Schlüssel kann nicht benutzt werden"; -"GPGErrorCode=54" = "Geheimer Schlüssel kann nicht benutzt werden"; -"GPGErrorCode=55" = "Ungültiger Wert"; -"GPGErrorCode=58" = "Keine Daten"; -"GPGErrorCode=69" = "Nicht implementiert"; -"GPGErrorCode=84" = "Nicht unterstützter Algorithmus"; -"GPGErrorCode=94" = "Schlüssel widerrufen"; -"GPGErrorCode=99" = "Abgebrochen"; -"GPGErrorCode=107" = "Name nicht eindeutig"; -"GPGErrorCode=116" = "Politik stimmt nicht überein"; -"GPGErrorCode=125" = "Falsche Schlüsselnutzung"; -"GPGErrorCode=150" = "Ungültige Engine"; -"GPGErrorCode=151" = "Öffentlichem Schlüssel wird nicht vertraut"; -"GPGErrorCode=152" = "Entschlüsselung schlug fehl"; -"GPGErrorCode=153" = "Schlüssel veraltet"; -"GPGErrorCode=154" = "Signatur veraltet"; -"GPGErrorCode=16383" = "EOF"; - -/* Signature attachment filename (suffixed automatically by .sig) */ -"PGP_SIGNATURE_FILENAME" = "PGP"; - -/* Signature attachment content-description */ -"This is a digitally signed message part" = "Signierter Teil der Nachricht"; - -/* Version MIME part content description header */ -"CONTENT_DESCRIPTION_HEADER" = "PGP/MIME Versions Identifikation"; - -/* Encrypted attachment filename (suffixed automatically by .asc) */ -"PGP_ENCRYPTED_FILENAME" = "PGP"; - -/* Encrypted attachment content-description */ -"This is an encrypted message part" = "Nachricht verschlüsselt mit OpenPGP"; - -/* Multiple-part description */ -"MULTIPART_ENCRYPTED_DESCRIPTION" = "Diese Nachricht wurde mit OpenPGP/MIME verschlüsselt (RFC 2440 und 3156)"; -"MULTIPART_SIGNED_DESCRIPTION" = "Diese Nachricht wurde mit OpenPGP/MIME signiert (RFC 2440 und 3156)"; - -/* Tooltip for banner icons */ -"SIGNATURE_IS_GOOD" = "Gültige Signatur; Nachricht wurde nicht verändert"; -"SIGNATURE_IS_NOT_GOOD" = "Ungültige Signatur; Nachricht wurde verändert"; - -/* PGP Key Download panel */ -"PGP_SEARCH_KEYS_MENUITEM" = "PGP Schlüsselsuche"; -"SEARCH" = "Suchen"; -"CANCEL_SEARCH" = "Abbrechen"; -"SEARCHING" = "Suche..."; -"NO_MATCHING_KEYS" = "Kein Schlüssel gefunden"; -"FOUND_%d_KEYS" = "%d Schlüssel gefunden"; -"DOWNLOAD" = "Herunterladen"; -"DOWNLOADING" = "Laden..."; -"DOWNLOADED" = "Schlüssel wurde(n) geladen & importiert."; -"SEARCH_KEYS_ON_SERVER" = "PGP Schlüsselsuche auf dem Schlüsselserver"; -"DOWNLOAD_KEYS_FROM_SERVER" = "PGP Schlüssel vom Schlüsselserver laden"; -"SEARCH_ERROR" = "Ein Fehler trat während der Suche auf"; -"DOWNLOAD_ERROR" = "Ein Fehler trat während des Ladens auf"; -" (%u bits)" = " (%u bits)"; -", created on %@" = ", erzeugt am %@"; -", expires on %@" = ", verfällt am %@"; -", expired on %@" = ", verfiel am %@"; -"REVOKED_KEY - " = "Widerrufen - "; // Prefixes found key description, when necessary; followed by keyID, userID, etc. - -/* Unmatched PGP keys for receipts - sheet */ -"MISSING_KEYS: DOWNLOAD" = "Für einige Empfänger sind keine Schlüssel vorhanden. Suche auf Schlüsselserver?"; // Title -"UNMATCHED_ADDRESSES: %@" = "Folgende Empfänger haben keine PGP Schlüssel:\n%@"; // Message -"SEARCH_MATCHING_KEYS" = "Suchen"; // Default button -"SEND_IN_CLEAR" = "Klartext senden"; // button title; used in dialog after delivery failure due to missing public keys - -"INVALID_HASH_%@" = "Der Hash-Algorithmus '%@' ist laut RFC3156 nicht gestattet."; -"GPGMAIL_VS_PGPMAIL" = "GPGMail kann nicht funktionieren falls PGPmail installiert ist"; -"GPGMAIL_%@_VS_PGPMAIL_%@" = "Beide bieten die gleiche Funktionalität, aber auf Basis verschiedener anderer Applikationen. Nur eines von beiden darf installiert sein. Sie müssen entweder '%@' oder '%@' entfernen."; -"QUIT" = "Beenden"; -"CONTINUE_ANYWAY" = "Trotzdem fortfahren"; // Used as button title in modal sheet (PGPmail vs GPGMail) - -/* Composer accessory view header, under To:, CC:, Subject: */ -"PGP:" = "PGP:"; - -/* Key description in popups; prefixes key (actually, primary userID), when necessary; followed by keyID, userID, etc.*/ -"REVOKED_KEY:" = "Widerrufen:"; -"EXPIRED_KEY:" = "Abgelaufen:"; -"DISABLED_KEY:" = "Deaktiviert:"; -"INVALID_KEY:" = "Ungültig:"; - -/* UserID description in popups; prefixes userID, when necessary; followed by name, email, etc.*/ -"REVOKED_USER_ID:" = "Widerrufen:"; -"INVALID_USER_ID:" = "Ungültig:"; - -/* GPGMail exception reasons */ -"NO_VALID_PUBLIC_KEY" = "Es konnte kein gültiger öffentlicher Schlüssel gefunden werden. Diese sind entweder abgelaufen, deaktiviert oder widerrufen"; // Could be displayed after encryption -"NO_VALID_PRIVATE_KEY" = "Es konnte kein gültiger privater Schlüssel gefunden werden. Entweder wurde keiner ausgewählt oder der gewählte Schlüssel ist widerrufen, deaktiviert oder ist abgelaufen"; // Could be displayed after encryption - -/* Alert when user has no PGP key */ -"NO PGP PRIVATE KEY - TITLE" = "Sie besitzen keinen PGP Schlüssel. Sie können GPGMail nicht zum verschlüsseln oder signieren von Nachrichten benutzen. "; -"NO PGP PRIVATE KEY - MESSAGE" = "Falls Sie mit PGP Nachrichten verschlüsseln oder signieren möchten, benötigen Sie einen persönlichen Schlüssel. Um einen PGP Schlüssel zu erzeugen, laden Sie MacGPG's GPG Keychain Access von http://macgpg.sourceforge.net/ herunter."; - -/* Conflict resolution panel*/ -"" = "Ich"; -"" = "Ja"; -"" = "Nein"; -"" = "Immer"; -"" = "Niemals"; -"" = "Annehmen"; - -/* Additional info describing key */ -"DISABLED_KEY_QUALIFIER" = "deaktiviert"; -"INVALID_KEY_QUALIFIER" = "ungültig"; -"REVOKED_KEY_QUALIFIER" = "widerrufen"; -"EXPIRED_KEY_QUALIFIER" = "abgelaufen"; -"CANNOT_ENCRYPT_KEY_QUALIFIER" = "kann nicht verschlüsseln"; -"CANNOT_SIGN_KEY_QUALIFIER" = "kann nicht signieren"; - -/* Additional info describing userID */ -"INVALID_USER_ID_QUALIFIER" = "ungültig"; -"REVOKED_USER_ID_QUALIFIER" = "widerrufen"; - -"COPY_MSG_URL_MENUITEM" = "Copy Message URL"; -} diff --git a/GPGMail/Resources/German.lproj/GPGMailCompose.nib/classes.nib b/GPGMail/Resources/German.lproj/GPGMailCompose.nib/classes.nib deleted file mode 100644 index 0162fc97..00000000 --- a/GPGMail/Resources/German.lproj/GPGMailCompose.nib/classes.nib +++ /dev/null @@ -1,139 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - accessoryView - NSView - - SUPERCLASS - NSObject - - - ACTIONS - - gpgToggleSymetricEncryption - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - alertImageView - NSImageView - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - selectedPersonalKey - id - signSwitch - NSButton - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/German.lproj/GPGMailCompose.nib/info.nib b/GPGMail/Resources/German.lproj/GPGMailCompose.nib/info.nib deleted file mode 100644 index 5a260067..00000000 --- a/GPGMail/Resources/German.lproj/GPGMailCompose.nib/info.nib +++ /dev/null @@ -1,21 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 25 - 27 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/German.lproj/GPGMailCompose.nib/keyedobjects.nib b/GPGMail/Resources/German.lproj/GPGMailCompose.nib/keyedobjects.nib deleted file mode 100644 index c5e797a8..00000000 Binary files a/GPGMail/Resources/German.lproj/GPGMailCompose.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/German.lproj/GPGMailComposeTiger.nib/classes.nib b/GPGMail/Resources/German.lproj/GPGMailComposeTiger.nib/classes.nib deleted file mode 100644 index 079c9142..00000000 --- a/GPGMail/Resources/German.lproj/GPGMailComposeTiger.nib/classes.nib +++ /dev/null @@ -1,134 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - OUTLETS - - _optionSwitch - NSButton - _primaryView - NSView - - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - signSwitch - NSButton - switchProtoMatrix - NSMatrix - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/German.lproj/GPGMailComposeTiger.nib/info.nib b/GPGMail/Resources/German.lproj/GPGMailComposeTiger.nib/info.nib deleted file mode 100644 index 83e73ad2..00000000 --- a/GPGMail/Resources/German.lproj/GPGMailComposeTiger.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 5 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/German.lproj/GPGMailComposeTiger.nib/keyedobjects.nib b/GPGMail/Resources/German.lproj/GPGMailComposeTiger.nib/keyedobjects.nib deleted file mode 100644 index 021c02e5..00000000 Binary files a/GPGMail/Resources/German.lproj/GPGMailComposeTiger.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/German.lproj/GPGMailPreferences.nib/designable.nib b/GPGMail/Resources/German.lproj/GPGMailPreferences.nib/designable.nib deleted file mode 100644 index adbf5f6c..00000000 --- a/GPGMail/Resources/German.lproj/GPGMailPreferences.nib/designable.nib +++ /dev/null @@ -1,6017 +0,0 @@ - - - - 1050 - 10F569 - 788 - 1038.29 - 461.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 788 - - - YES - - - YES - com.apple.InterfaceBuilder.CocoaPlugin - - - YES - - YES - - - YES - - - - YES - - GPGMailPreferences - - - FirstResponder - - - NSApplication - - - 11 - 2 - {{77, 205}, {648, 487}} - 1886912512 - <<Panel>> - NSPanel - View - {1.79769e+308, 1.79769e+308} - {213, 107} - - - 256 - - YES - - - 274 - - YES - - - 256 - - YES - - - 292 - {{17, 16}, {261, 11}} - - - YES - - 69336577 - 4325376 - Version: %@ - - LucidaGrande - 9 - 3614 - - - - - 6 - System - controlColor - - 3 - MC42NjY2NjY2NjY3AA - - - - 3 - MC4xNjY3MDAwMQA - - - - - - 292 - {{17, 29}, {261, 17}} - - - YES - - 69336577 - 4194304 - Copyright (c) 2000-2008 - Stéphane Corthésy - - - - - - 3 - MC4xNjY3MDAwMQA - - - - - - 289 - {{280, 35}, {261, 11}} - - - YES - - 69336577 - 71303168 - Kontakt: %@ - - - - - - 3 - MC4xNjY3MDAwMQA - - - - - - 289 - {{280, 16}, {261, 11}} - - - YES - - 69336577 - 71434240 - aHR0cDovL3d3dy5zZW50ZS5jaC9zb2Z0d2FyZS9HUEdNYWlsLwo - - - - - - 3 - MC4xNjY3MDAwMQA - - - - - - 274 - {{13, 44}, {532, 353}} - - - - YES - - - 1 - - - - 256 - - YES - - - 266 - {{17, 258}, {462, 26}} - - YES - - -2076049856 - 1024 - - LucidaGrande - 13 - 1044 - - - 109199615 - 1 - - - - - - 400 - 75 - - - <<Item1>> - - 1048576 - 2147483647 - 1 - - NSImage - NSMenuCheckmark - - - NSImage - NSMenuMixedState - - _popUpItemAction: - - - YES - - AndereAnsichten - - YES - - - - <<Item2>> - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - <<Item3>> - - 1048576 - 2147483647 - - - _popUpItemAction: - - - - - 3 - YES - YES - 1 - - - - - 266 - {{17, 290}, {478, 17}} - - YES - - 67239424 - 4194304 - Persönlicher Standard Schlüssel: - - - - - - 6 - System - controlTextColor - - 3 - MAA - - - - - - - 266 - {{18, 226}, {476, 18}} - - YES - - 67239424 - 0 - Schlüssel des entsprechenden Emailkontos verwenden - - - 1211912703 - 2 - - NSImage - NSSwitch - - - NSSwitch - - - - 200 - 25 - - - - - 265 - {{355, 93}, {143, 32}} - - YES - - 67239424 - 137887744 - Kennwort verwerfen - - LucidaGrande - 11 - 3100 - - - -2038284033 - 1 - - LucidaGrande - 11 - 16 - - - - 200 - 25 - - - - - 268 - {{36, 103}, {116, 22}} - - YES - 1 - 1 - - YES - - 343014976 - 71304192 - - - - 61 - - 67239424 - 0 - Timeout: - - - - - - {116, 22} - {1, 8} - 67633152 - NSActionCell - - 343014976 - 71304192 - - - - 61 - - 67239424 - 0 - Field: - - - - -1 - -1 - - - 3 - MQA - - - - - 266 - {{18, 131}, {476, 58}} - - YES - 3 - 1 - - YES - - -2080244224 - 0 - Kennwort im Schlüsselbund speichern - - - 1211912703 - 0 - - NSImage - NSRadioButton - - - NSRadioButton - - - - - - 200 - 25 - - - 67239424 - 0 - Immer das Kennwort abfragen - - - 2 - 1211912703 - 0 - - - - 400 - 75 - - - 67239424 - 0 - Kennwort während der Sitzung speichern - - - 1 - 1211912703 - 0 - - - - - 200 - 25 - - - {476, 18} - {4, 2} - 1143472128 - NSActionCell - - 67239424 - 0 - Radio - - 1211912703 - 0 - - - - - 400 - 75 - - - - - - - - - 266 - {{12, 205}, {488, 5}} - - {0, 0} - - 67239424 - 0 - Box - - - 6 - System - textBackgroundColor - - - - 3 - MCAwLjgwMDAwMDAxAA - - - 3 - 2 - 0 - NO - - - - 268 - {{157, 105}, {147, 17}} - - YES - - 67239424 - 4194304 - U2VrdW5kZW4KA - - - - - - - - - - 266 - {{18, 65}, {476, 18}} - - YES - - 67239424 - 0 - Kennwort anzeigen - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 265 - {{482, 265}, {12, 13}} - - YES - - 67239424 - 134217728 - - - LucidaGrande - 10 - 2843 - - - -935067393 - 2 - - NSImage - RefreshNormal - - - NSImage - RefreshPressed - - - - - - 200 - 25 - - - - {{10, 33}, {512, 307}} - - Schlüssel - - - - - 2 - - - 256 - - YES - - - 266 - {{17, 169}, {477, 18}} - - YES - - 67239424 - 131072 - Immer auch mit eigenem Schlüssel verschlüsseln - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 270 - {{17, 289}, {237, 18}} - - YES - - 67239424 - 131072 - Generell alle Nachrichten signieren - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{17, 27}, {477, 18}} - - YES - - 67239424 - 131072 - Symbole beim Verfassen anzeigen - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{17, 71}, {477, 18}} - - YES - - 67239424 - 131072 - Alle BCC Empfänger mit einbeziehen - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{36, 51}, {459, 14}} - - YES - - 67239424 - 4456448 - Warnung: Empfänger können dadurch die Empfängerliste herausfinden! - - - - - - - - - - 270 - {{17, 122}, {237, 18}} - - YES - - 67239424 - 131072 - Allen Schlüsseln vertrauen - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{17, 102}, {477, 18}} - - YES - - 67239424 - 131072 - OpenPGP/MIME benutzen - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{17, 249}, {477, 18}} - - YES - - 67239424 - 131072 - Generell alle Nachrichten beim Verschlüsseln auch signieren - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{257, 25}, {477, 18}} - - YES - - 67239424 - 131072 - Symbole zeigen den aktuellen Status an - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 267 - {{257, 122}, {237, 18}} - - YES - - 67239424 - 131072 - Unbrauchbare Schlüssel herausfiltern - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 270 - {{17, 229}, {237, 18}} - - YES - - 67239424 - 131072 - Generell alle Nachrichten verschlüsseln - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{17, 142}, {477, 18}} - - YES - - 67239424 - 131072 - Empfängerregeln des Adressbuches verwenden - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 267 - {{177, 269}, {320, 18}} - - YES - - 67239424 - 131072 - Antwort auf signierte Nachricht ebenfalls signieren - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 267 - {{177, 209}, {331, 18}} - - YES - - 67239424 - 131072 - Antworten auf verschlüsselte Nachrichten verschlüsseln - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{17, 5}, {477, 18}} - - YES - - 67239424 - 131072 - Getrennte Vorgänge beim Signieren und Verschlüsseln - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{17, 189}, {477, 18}} - - YES - - 67239424 - 131072 - Verschlüsseln sofern alle Schlüssel vorhanden sind - - - 1211912703 - 2 - - - - - 200 - 25 - - - - {{10, 33}, {512, 307}} - - Verfassen - - - - - - - 256 - - YES - - - 266 - {{18, 289}, {476, 18}} - - YES - - 67239424 - 0 - Nachrichten automatisch authentifizieren - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{37, 267}, {457, 18}} - - YES - - 604110336 - 0 - Nur ungelesene - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{18, 245}, {476, 18}} - - YES - - 67239424 - 0 - Nachrichten automatisch entschlüsseln - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{37, 223}, {457, 18}} - - YES - - 604110336 - 0 - Nur ungelesene - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{18, 201}, {476, 18}} - - YES - - 67239424 - 0 - Generell die vollständige Signaturinformationen anzeigen - - - 1211912703 - 2 - - - - - 200 - 25 - - - - {{10, 33}, {512, 307}} - - Ansicht - - - - - - - 256 - - YES - - - 266 - - YES - - - 2304 - - YES - - - 256 - {458, 1} - - YES - - - 256 - {458, 17} - - - - - - 256 - {{-26, 0}, {16, 17}} - - - - YES - - name - 60 - 40 - 1000 - - 75628096 - 2048 - Name - - - 3 - MC4zMzMzMzI5OQA - - - 6 - System - headerTextColor - - - - - 338820672 - 1024 - - - - - - - - - - - - email - 61 - 8 - 1000 - - 75628096 - 2048 - <Email> - - - - - - 338820672 - 1024 - - - - - - - - - - - - comment - 63 - 40 - 1000 - - 75628096 - 2048 - (Kommentar) - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - - - - - - - fingerprint - 66 - 40 - 1000 - - 75628096 - 2048 - Fingerabdruck - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - - - - - - - keyID - 39 - 20 - 1000 - - 75628096 - 2048 - Schlüssel ID - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - - - - - - - validity - 53.245998382568359 - 53.245998382568359 - 1000 - - 75628096 - 2048 - [Gültigkeit] - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - - - - - - - algorithm - 46 - 32.384002685546875 - 1000 - - 75628096 - 2048 - Algo - - - 3 - MC4zMzMzMzI5OQA - - - - - 338820672 - 1024 - - - - - - - - - - - - 3 - 2 - - - 6 - System - gridColor - - 3 - MC41AA - - - 17 - -1776287744 - - - 4 - -1 - 0 - YES - 0 - - - {{1, 17}, {458, 0}} - - - - - 6 - System - controlBackgroundColor - - - 4 - - - - 256 - {{-100, -100}, {15, 18}} - - YES - - _doScroller: - 0.094736844301223755 - - - - 256 - {{-100, -100}, {394, 15}} - - 1 - - _doScroller: - 0.95399516820907593 - - - - 2304 - - YES - - - {{1, 0}, {458, 17}} - - - - - 4 - - - - {{17, 261}, {460, 18}} - - - 66 - - - - - QSAAAEEgAABBmAAAQZgAAA - - - - 265 - {{477, 261}, {18, 18}} - - YES - - -2076049856 - 132096 - - - 109199615 - 6 - - - - - - 400 - 75 - - - YES - - - 1048576 - 2147483647 - - - _popUpItemAction: - - - YES - - AndereAnsichten - - YES - - - - Name - - 1048576 - 2147483647 - - - _popUpItemAction: - 1 - - - - - E-Mail - - 1048576 - 2147483647 - - - _popUpItemAction: - 2 - - - - - Kommentar - - 1048576 - 2147483647 - - - _popUpItemAction: - 3 - - - - - Fingerabdruck - - 1048576 - 2147483647 - - - _popUpItemAction: - 4 - - - - - Schlüssel ID - - 1048576 - 2147483647 - - - _popUpItemAction: - 5 - - - - - Gültigkeit - - 1048576 - 2147483647 - - - _popUpItemAction: - 6 - - - - - Algorithmus - - 1048576 - 2147483647 - - - _popUpItemAction: - 7 - - - - - YES - 3 - YES - YES - 2 - - - - - 266 - {{14, 287}, {484, 17}} - - YES - - 67239424 - 4194304 - U2NobMO8c3NlbGluZm9ybWF0aW9uIGRpZSBpbSBNZW7DvCBhbmdlemVpZ3Qgd2VyZGVuIHNvbGw6Cg - - - - - - - - - - 266 - {{18, 231}, {476, 18}} - - YES - - 67239424 - 0 - Alle Identitäten der Schlüssel anzeigen - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{20, 194}, {197, 22}} - - YES - 1 - 1 - - YES - - 343014976 - 205521920 - - - - 142 - - 67239424 - 67108864 - Zeilenumbruch bei: - - - - - {197, 22} - {1, 8} - 67633152 - NSActionCell - - 343014976 - 205521920 - - - - 142 - - 67239424 - 67108864 - Field: - - - - -1 - -1 - - - - - - 268 - {{222, 196}, {273, 14}} - - YES - - 67239424 - 4194304 - Null bedeutet "kein Zeilenumbruch" - - - - - - - - - - 266 - {{18, 161}, {476, 18}} - - YES - - 67239424 - 0 - Schlüsselliste neu laden wenn ein Laufwerk aktiviert/entfernt wird - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 266 - {{18, 139}, {476, 18}} - - YES - - 67239424 - 0 - S/MIME ausschalten - - - 1211912703 - 2 - - - - - 200 - 25 - - - - {{10, 33}, {512, 307}} - - Sonstiges - - - - - updates - - - 256 - - YES - - - 268 - {{15, 262}, {225, 18}} - - - YES - - -2080244224 - 0 - Nach Updates suchen - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{15, 160}, {174, 18}} - - - YES - - -2080244224 - 0 - System Profil mitsenden - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{15, 198}, {248, 18}} - - - YES - - -2080244224 - 0 - Updates automatisch herunterladen - - - 1211912703 - 2 - - - - - 200 - 25 - - - - - 268 - {{30, 225}, {185, 26}} - - - YES - - -2076049856 - 2048 - - - 109199615 - 129 - - - 400 - 75 - - - Wöchentlich - - 1048576 - 2147483647 - 1 - - - _popUpItemAction: - 604800 - - - YES - - OtherViews - - YES - - - Stündlich - - 1048576 - 2147483647 - - - _popUpItemAction: - 3600 - - - - - Täglich - - 1048576 - 2147483647 - - - _popUpItemAction: - 86400 - - - - - - Monatlich - - 2147483647 - - - _popUpItemAction: - 2629800 - - - - - - 2 - 1 - YES - YES - 2 - - - - - 268 - {{222, 230}, {136, 17}} - - - YES - - 68288064 - 272630784 - auf Updates checken - - - - - - - - {{10, 33}, {512, 307}} - - - - Updates - - - - - - - 0 - YES - YES - - YES - - - - - {558, 403} - - - - - {{0, 84}, {558, 403}} - - - {0, 0} - - 67239424 - 0 - Box - - LucidaGrande - 12 - 16 - - - - 3 - MCAwLjgwMDAwMDAxAA - - - - 0 - 3 - 0 - NO - - - {648, 487} - - - - {{0, 0}, {1280, 778}} - {213, 129} - {1.79769e+308, 1.79769e+308} - - - - YES - - YES - allowsFloats - attributedStringForNil - attributedStringForNotANumber - attributedStringForZero - decimalSeparator - formatterBehavior - groupingSeparator - minimum - negativeFormat - positiveFormat - usesGroupingSeparator - - - YES - - - - - - NaN - - YES - - - YES - - - - - 0 - - - , - - . - - 1 - 1 - NO - YES - 1 - AQAAAAAAAAAAAAAAAAAAAA - - -0 - 0 - - - - 0 - -0 - - - - - - - - 0 - 0 - YES - NO - 1 - AAAAAAAAAAAAAAAAAAAAAA - - - , - . - NO - YES - YES - - - - YES - - YES - allowsFloats - attributedStringForNil - attributedStringForNotANumber - attributedStringForZero - decimalSeparator - formatterBehavior - groupingSeparator - locale - minimum - negativeFormat - positiveFormat - usesGroupingSeparator - - - YES - - - - - - NaN - - - - 0 - - - . - - , - - - - - 0 - 0 - NO - NO - 1 - AAAAAAAAAAAAAAAAAAAAAA - - -0 - 0 - - - - 0 - -0 - - - - - - - - - . - , - NO - NO - YES - - - YES - - - - - YES - - - preferencesView - - - - 23 - - - - versionTextField - - - - 24 - - - - alwaysSignSwitchButton - - - - 120 - - - - authenticateUnreadMessagesSwitchButton - - - - 121 - - - - automaticallyAuthenticateMessagesSwitchButton - - - - 122 - - - - decryptUnreadMessagesSwitchButton - - - - 124 - - - - displayButtonInComposeWindowSwitchButton - - - - 125 - - - - encryptToSelfSwitchButton - - - - 126 - - - - personalKeysPopUpButton - - - - 127 - - - - flushCachedPassphrases: - - - - 134 - - - - toggleEncryptToSelf: - - - - 135 - - - - toggleAlwaysSignMessages: - - - - 137 - - - - toggleAuthenticatesMessagesAutomatically: - - - - 138 - - - - toggleAuthenticateUnreadMessagesAutomatically: - - - - 139 - - - - toggleDecryptsMessagesAutomatically: - - - - 140 - - - - toggleDecryptsUnreadMessagesAutomatically: - - - - 141 - - - - toggleDisplayAccessoryView: - - - - 142 - - - - initialFirstResponder - - - - 143 - - - - automaticallyDecryptMessagesSwitchButton - - - - 156 - - - - changeDefaultKey: - - - - 157 - - - - choosesPersonalKeyAccordingToAccountSwitchButton - - - - 194 - - - - openPGPMIMESwitchButton - - - - 195 - - - - passphraseStrategyMatrix - - - - 196 - - - - passphraseTimeoutFormCell - - - - 197 - - - - trustAllKeysSwitchButton - - - - 198 - - - - useBCCRecipientsSwitchButton - - - - 199 - - - - changePassphraseStrategy: - - - - 200 - - - - changePassphraseTimeout: - - - - 201 - - - - toggleBCCRecipientsUse: - - - - 203 - - - - toggleTrustAllKeys: - - - - 204 - - - - toggleOpenPGPMIME: - - - - 205 - - - - extendedInfoSwitchButton - - - - 206 - - - - toggleExtendedInformation: - - - - 207 - - - - toggleAutomaticPersonalKeyChoice: - - - - 208 - - - - signWhenEncryptingSwitchButton - - - - 215 - - - - toggleSignWhenEncrypting: - - - - 216 - - - - buttonsShowStateSwitchButton - - - - 243 - - - - toggleButtonsBehavior: - - - - 244 - - - - keyIdentifiersTableView - - - - 245 - - - - showUserIDsSwitchButton - - - - 246 - - - - toggleShowUserIDs: - - - - 247 - - - - dataSource - - - - 248 - - - - delegate - - - - 249 - - - - keyIdentifiersPopUpButton - - - - 251 - - - - toggleShowKeyInformation: - - - - 252 - - - - toggleShowKeyInformation: - - - - 253 - - - - toggleShowKeyInformation: - - - - 254 - - - - toggleShowKeyInformation: - - - - 255 - - - - toggleShowKeyInformation: - - - - 256 - - - - toggleShowKeyInformation: - - - - 257 - - - - filtersKeysSwitchButton - - - - 260 - - - - toggleFilterKeys: - - - - 261 - - - - toggleShowKeyInformation: - - - - 266 - - - - showsPassphraseSwitchButton - - - - 268 - - - - toggleShowPassphrase: - - - - 269 - - - - toggleAlwaysEncryptMessages: - - - - 271 - - - - alwaysEncryptSwitchButton - - - - 272 - - - - lineWrappingFormCell - - - - 278 - - - - changeLineWrapping: - - - - 279 - - - - contactTextField - - - - 307 - - - - disableSMIMESwitchButton - - - - 308 - - - - encryptReplyToEncryptedMessageSwitchButton - - - - 309 - - - - encryptWhenAllKeysAvailableSwitchButton - - - - 310 - - - - refreshKeysOnVolumeChangeSwitchButton - - - - 311 - - - - separateSignAndEncryptOperationsSwitchButton - - - - 312 - - - - signReplyToSignedMessageSwitchButton - - - - 313 - - - - useSmartRulesSwitchButton - - - - 314 - - - - webSiteTextField - - - - 315 - - - - toggleSmartRules: - - - - 333 - - - - toggleSignedReplyToSignedMessage: - - - - 334 - - - - toggleEncryptedReplyToEncryptedMessage: - - - - 335 - - - - toggleEncryptWhenPossible: - - - - 336 - - - - toggleSeparatePGPOperations: - - - - 337 - - - - toggleKeyRefresh: - - - - 338 - - - - toggleSMIME: - - - - 339 - - - - refreshKeys: - - - - 340 - - - - formatter - - - - 419 - - - - formatter - - - - 420 - - - - value: updater.automaticallyChecksForUpdates - - - - - - value: updater.automaticallyChecksForUpdates - value - updater.automaticallyChecksForUpdates - 2 - - - 496 - - - - value: updater.sendsSystemProfile - - - - - - value: updater.sendsSystemProfile - value - updater.sendsSystemProfile - 2 - - - 515 - - - - value: updater.automaticallyDownloadsUpdates - - - - - - value: updater.automaticallyDownloadsUpdates - value - updater.automaticallyDownloadsUpdates - 2 - - - 516 - - - - selectedTag: updater.updateCheckInterval - - - - - - selectedTag: updater.updateCheckInterval - selectedTag - updater.updateCheckInterval - 2 - - - 539 - - - - enabled: updater.automaticallyChecksForUpdates - - - - - - enabled: updater.automaticallyChecksForUpdates - enabled - updater.automaticallyChecksForUpdates - 2 - - - 541 - - - - - YES - - 0 - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - -3 - - - Application - - - 5 - - - YES - - - - Panel - - - 6 - - - YES - - - - - - 9 - - - YES - - - - - - - - - - 209 - - - - - 277 - - - - - 12 - - - YES - - - - - - 371 - - - - - 31 - - - YES - - - - - - 372 - - - - - 32 - - - YES - - - - - - 373 - - - - - 90 - - - YES - - - - - - 374 - - - - - 158 - - - YES - - - - - - - - - - 219 - - - YES - - - - - - 180 - - - YES - - - - - - 160 - - - YES - - - - - - 159 - - - YES - - - - - - 162 - - - YES - - - - - - - - - - - - - - - - - - - - - 289 - - - YES - - - - - - 288 - - - YES - - - - - - 287 - - - YES - - - - - - 286 - - - YES - - - - - - 281 - - - YES - - - - - - 270 - - - YES - - - - - - 259 - - - YES - - - - - - 217 - - - YES - - - - - - 214 - - - YES - - - - - - 188 - - - YES - - - - - - 187 - - - YES - - - - - - 186 - - - YES - - - - - - 185 - - - YES - - - - - - 119 - - - YES - - - - - - 116 - - - YES - - - - - - 103 - - - YES - - - - - - 375 - - - - - 376 - - - - - 377 - - - - - 378 - - - - - 379 - - - - - 380 - - - - - 381 - - - - - 382 - - - - - 383 - - - - - 384 - - - - - 385 - - - - - 386 - - - - - 387 - - - - - 388 - - - - - 389 - - - - - 390 - - - - - 161 - - - YES - - - - - - - - - - - - - - - 330 - - - YES - - - - - - 267 - - - YES - - - - - - 184 - - - YES - - - - - - 182 - - - - - 174 - - - YES - - - - - - - - - 170 - - - YES - - - - - - - 169 - - - YES - - - - - - 100 - - - YES - - - - - - 97 - - - YES - - - - - - 94 - - - YES - - - - - - 391 - - - YES - - - - - - 92 - - - YES - - - - - - - - 93 - - - - - 95 - - - - - 96 - - - - - 392 - - - - - 393 - - - - - 394 - - - - - 409 - - - - - 173 - - - - - 410 - - - - - 179 - - - - - 178 - - - - - 177 - - - - - 395 - - - - - 396 - - - - - 397 - - - - - 181 - - - YES - - - - - - - - - - 189 - - - YES - - - - - - 118 - - - YES - - - - - - 117 - - - YES - - - - - - 114 - - - YES - - - - - - 113 - - - YES - - - - - - 398 - - - - - 399 - - - - - 400 - - - - - 401 - - - - - 402 - - - - - 220 - - - YES - - - - - - - - - - - - - 285 - - - YES - - - - - - 284 - - - YES - - - - - - 280 - - - YES - - - - - - 273 - - - YES - - - - - - - 241 - - - YES - - - - - - 238 - - - YES - - - - - - 235 - - - YES - - - - - - 228 - - - YES - - - - - - - - - 423 - - - - - 422 - - - - - 421 - - - - - 225 - - - YES - - - - - - - - - - - - 264 - - - YES - - - - - - 236 - - - YES - - - - - - 234 - - - YES - - - - - - 233 - - - YES - - - - - - 230 - - - YES - - - - - - 227 - - - YES - - - - - - 221 - - - YES - - - - - - 412 - - - - - 413 - - - - - 414 - - - - - 415 - - - - - 416 - - - - - 417 - - - - - 418 - - - - - 403 - - - YES - - - - - - 231 - - - YES - - - - - - - - - - - - - 222 - - - - - 223 - - - - - 224 - - - - - 226 - - - - - 229 - - - - - 232 - - - - - 237 - - - - - 265 - - - - - 404 - - - - - 405 - - - - - 411 - - - - - 276 - - - - - 406 - - - - - 407 - - - - - 408 - - - - - 462 - - - - - 477 - - - YES - - - - - - 478 - - - YES - - - - - - - - - - 479 - - - YES - - - - - - 495 - - - - - 500 - - - YES - - - - - - 501 - - - YES - - - - - - 513 - - - - - 514 - - - - - 518 - - - YES - - - - - - 519 - - - YES - - - - - - 520 - - - - - 521 - - - YES - - - - - - 522 - - - YES - - - - - - - - - 523 - - - - - 524 - - - - - 525 - - - - - 526 - - - - - - - YES - - YES - -3.IBPluginDependency - -3.ImportedFromIB2 - 100.IBAttributePlaceholdersKey - 100.IBPluginDependency - 100.ImportedFromIB2 - 103.IBAttributePlaceholdersKey - 103.IBPluginDependency - 103.ImportedFromIB2 - 113.IBAttributePlaceholdersKey - 113.IBPluginDependency - 113.ImportedFromIB2 - 114.IBAttributePlaceholdersKey - 114.IBPluginDependency - 114.ImportedFromIB2 - 116.IBAttributePlaceholdersKey - 116.IBPluginDependency - 116.ImportedFromIB2 - 117.IBAttributePlaceholdersKey - 117.IBPluginDependency - 117.ImportedFromIB2 - 118.IBAttributePlaceholdersKey - 118.IBPluginDependency - 118.ImportedFromIB2 - 119.IBAttributePlaceholdersKey - 119.IBPluginDependency - 119.ImportedFromIB2 - 12.IBPluginDependency - 12.ImportedFromIB2 - 158.IBPluginDependency - 158.ImportedFromIB2 - 159.IBPluginDependency - 159.ImportedFromIB2 - 160.IBPluginDependency - 160.ImportedFromIB2 - 161.IBPluginDependency - 161.ImportedFromIB2 - 162.IBPluginDependency - 162.ImportedFromIB2 - 169.IBAttributePlaceholdersKey - 169.IBPluginDependency - 169.ImportedFromIB2 - 170.IBPluginDependency - 170.ImportedFromIB2 - 173.IBPluginDependency - 173.ImportedFromIB2 - 174.IBPluginDependency - 174.ImportedFromIB2 - 177.IBAttributePlaceholdersKey - 177.IBPluginDependency - 177.ImportedFromIB2 - 178.IBAttributePlaceholdersKey - 178.IBPluginDependency - 178.ImportedFromIB2 - 179.IBAttributePlaceholdersKey - 179.IBPluginDependency - 179.ImportedFromIB2 - 180.IBPluginDependency - 180.ImportedFromIB2 - 181.IBPluginDependency - 181.ImportedFromIB2 - 182.IBPluginDependency - 182.ImportedFromIB2 - 184.IBPluginDependency - 184.ImportedFromIB2 - 185.IBAttributePlaceholdersKey - 185.IBPluginDependency - 185.ImportedFromIB2 - 186.IBPluginDependency - 186.ImportedFromIB2 - 187.IBAttributePlaceholdersKey - 187.IBPluginDependency - 187.ImportedFromIB2 - 188.IBAttributePlaceholdersKey - 188.IBPluginDependency - 188.ImportedFromIB2 - 189.IBAttributePlaceholdersKey - 189.IBPluginDependency - 189.ImportedFromIB2 - 209.IBPluginDependency - 209.ImportedFromIB2 - 214.IBAttributePlaceholdersKey - 214.IBPluginDependency - 214.ImportedFromIB2 - 217.IBAttributePlaceholdersKey - 217.IBPluginDependency - 217.ImportedFromIB2 - 219.IBPluginDependency - 219.ImportedFromIB2 - 220.IBPluginDependency - 220.ImportedFromIB2 - 221.IBPluginDependency - 221.ImportedFromIB2 - 222.IBPluginDependency - 222.ImportedFromIB2 - 223.IBPluginDependency - 223.ImportedFromIB2 - 224.IBPluginDependency - 224.ImportedFromIB2 - 225.IBPluginDependency - 225.ImportedFromIB2 - 226.IBPluginDependency - 226.ImportedFromIB2 - 227.IBPluginDependency - 227.ImportedFromIB2 - 228.IBAttributePlaceholdersKey - 228.IBPluginDependency - 228.ImportedFromIB2 - 229.IBPluginDependency - 229.ImportedFromIB2 - 230.IBPluginDependency - 230.ImportedFromIB2 - 231.IBPluginDependency - 231.ImportedFromIB2 - 232.IBPluginDependency - 232.ImportedFromIB2 - 233.IBPluginDependency - 233.ImportedFromIB2 - 234.IBPluginDependency - 234.ImportedFromIB2 - 235.IBAttributePlaceholdersKey - 235.IBPluginDependency - 235.ImportedFromIB2 - 236.IBPluginDependency - 236.ImportedFromIB2 - 237.IBPluginDependency - 237.ImportedFromIB2 - 238.IBPluginDependency - 238.ImportedFromIB2 - 241.IBAttributePlaceholdersKey - 241.IBPluginDependency - 241.ImportedFromIB2 - 259.IBAttributePlaceholdersKey - 259.IBPluginDependency - 259.ImportedFromIB2 - 264.IBPluginDependency - 264.ImportedFromIB2 - 265.IBPluginDependency - 265.ImportedFromIB2 - 267.IBAttributePlaceholdersKey - 267.IBPluginDependency - 267.ImportedFromIB2 - 270.IBAttributePlaceholdersKey - 270.IBPluginDependency - 270.ImportedFromIB2 - 273.IBPluginDependency - 273.ImportedFromIB2 - 276.IBPluginDependency - 276.ImportedFromIB2 - 277.IBPluginDependency - 277.ImportedFromIB2 - 280.IBPluginDependency - 280.ImportedFromIB2 - 281.IBAttributePlaceholdersKey - 281.IBPluginDependency - 281.ImportedFromIB2 - 284.IBAttributePlaceholdersKey - 284.IBPluginDependency - 284.ImportedFromIB2 - 285.IBAttributePlaceholdersKey - 285.IBPluginDependency - 285.ImportedFromIB2 - 286.IBAttributePlaceholdersKey - 286.IBPluginDependency - 286.ImportedFromIB2 - 287.IBAttributePlaceholdersKey - 287.IBPluginDependency - 287.ImportedFromIB2 - 288.IBAttributePlaceholdersKey - 288.IBPluginDependency - 288.ImportedFromIB2 - 289.IBAttributePlaceholdersKey - 289.IBPluginDependency - 289.ImportedFromIB2 - 31.IBPluginDependency - 31.ImportedFromIB2 - 32.IBAttributePlaceholdersKey - 32.IBPluginDependency - 32.ImportedFromIB2 - 330.IBAttributePlaceholdersKey - 330.IBPluginDependency - 330.ImportedFromIB2 - 371.IBPluginDependency - 372.IBPluginDependency - 373.IBPluginDependency - 374.IBPluginDependency - 375.IBPluginDependency - 376.IBPluginDependency - 377.IBPluginDependency - 378.IBPluginDependency - 379.IBPluginDependency - 380.IBPluginDependency - 381.IBPluginDependency - 382.IBPluginDependency - 383.IBPluginDependency - 384.IBPluginDependency - 385.IBPluginDependency - 386.IBPluginDependency - 387.IBPluginDependency - 388.IBPluginDependency - 389.IBPluginDependency - 390.IBPluginDependency - 391.IBPluginDependency - 392.IBPluginDependency - 393.IBPluginDependency - 394.IBPluginDependency - 395.IBPluginDependency - 396.IBPluginDependency - 397.IBPluginDependency - 398.IBPluginDependency - 399.IBPluginDependency - 400.IBPluginDependency - 401.IBPluginDependency - 402.IBPluginDependency - 403.IBPluginDependency - 404.IBPluginDependency - 405.IBPluginDependency - 406.IBPluginDependency - 407.IBPluginDependency - 408.IBPluginDependency - 409.IBPluginDependency - 410.IBPluginDependency - 411.IBPluginDependency - 412.IBPluginDependency - 412.IBShouldRemoveOnLegacySave - 413.IBPluginDependency - 413.IBShouldRemoveOnLegacySave - 414.IBPluginDependency - 414.IBShouldRemoveOnLegacySave - 415.IBPluginDependency - 415.IBShouldRemoveOnLegacySave - 416.IBPluginDependency - 416.IBShouldRemoveOnLegacySave - 417.IBPluginDependency - 417.IBShouldRemoveOnLegacySave - 418.IBPluginDependency - 418.IBShouldRemoveOnLegacySave - 421.IBPluginDependency - 421.IBShouldRemoveOnLegacySave - 422.IBPluginDependency - 422.IBShouldRemoveOnLegacySave - 423.IBPluginDependency - 423.IBShouldRemoveOnLegacySave - 462.IBPluginDependency - 477.IBPluginDependency - 478.IBPluginDependency - 479.IBAttributePlaceholdersKey - 479.IBPluginDependency - 495.IBPluginDependency - 5.IBEditorWindowLastContentRect - 5.IBPluginDependency - 5.IBWindowTemplateEditedContentRect - 5.ImportedFromIB2 - 5.windowTemplate.hasMinSize - 5.windowTemplate.minSize - 500.IBPluginDependency - 501.IBPluginDependency - 513.IBPluginDependency - 514.IBPluginDependency - 518.IBPluginDependency - 519.IBPluginDependency - 520.IBPluginDependency - 521.IBPluginDependency - 522.IBEditorWindowLastContentRect - 522.IBPluginDependency - 523.IBPluginDependency - 524.IBPluginDependency - 525.IBPluginDependency - 526.IBPluginDependency - 6.IBPluginDependency - 6.ImportedFromIB2 - 9.IBPluginDependency - 9.ImportedFromIB2 - 90.IBPluginDependency - 90.ImportedFromIB2 - 92.IBPluginDependency - 92.ImportedFromIB2 - 93.IBPluginDependency - 93.ImportedFromIB2 - 94.IBPluginDependency - 94.ImportedFromIB2 - 95.IBPluginDependency - 95.ImportedFromIB2 - 96.IBPluginDependency - 96.ImportedFromIB2 - 97.IBPluginDependency - 97.ImportedFromIB2 - - - YES - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Das Kennwort wird aus dem Speicher gelöscht - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Immer mit eigenem Schlüssel verschlüsseln, damit man seine Nachrichten wieder entschlüsseln kann - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Signierte Nachrichten werden das erste mal wenn sie gelesen werden authentifiziert - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Verschlüsselte Nachrichten werden das erste mal wenn sie gelesen werden entschlüsselt - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Alle neuen Nachrichten werden automatisch signiert - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Signierte Nachrichten werden jedes mal wenn sie gelesen werden erneut authentifiziert - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Verschlüsselte Nachrichten werden jedes mal wenn sie gelesen werden erneut entschlüsselt - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Die PGP Symbole werden beim Erstellen einer neuen Email angezeigt - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Der Absenderschlüssel wird entsprechend dem Emailkonto ausgewählt - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Das Kennwort wird im Schlüsselbund des Benutzers gespeichert - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Das Kennwort wird eine Weile zwischen gespeichert - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Das Kennwort wird nicht zwischen gespeichert - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Es werden auch die Schlüssel der BCC Empfänger verwendet, obwohl sie damit sichtbar werden - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Der Vetrauensgrad der Schlüssel wird ignoriert - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Das modernere MIME Format wird anstatt des veralteten PGP Text Formates bei der Nachrichtenerstellung verwendet - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Automatisch alle Detailinformationen der Signatur anzeigen - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Wenn eine Nachricht verschlüsselt wird, wird sie automatisch auch signiert - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Die Symbole zeigen entweder den aktuellen Status oder die nächste Aktion an - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Durch verschieben können die Felder neu geordnet werden - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Mit diesem Schalter können Sie Spalten hinzufügen oder entfernen - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Zeigt alle Benutzeridentitäten des zugehörigen Schlüssels an - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Widerrufene/Abgelaufene/Ungültige/Ausgeschaltene Schlüssel werden nicht angezeigt - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Das Kennwort wird während der Eingabe angezeigt - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Alle neuen Nachrichten werden automatisch verschlüsselt - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Signierung/Verschlüsselung wird auf Basis der Empfängerregeln im Adressbuch vorgenommen - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Lädt die Schlüsselliste erneut ein, sobald ein Laufwerk aktiviert oder entfernt wird - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Bei einer neuen Email werden die S/MIME Signatur/Verschlüsselungschalter nicht angezeigt - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Alle Antworten auf signierte Nachrichten werden ebenfalls automatisch signiert - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Alle Antworten auf verschlüsselte Nachrichten werden ebenfalls automatisch verschlüsselt - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Nachrichten werden erst signiert und dann verschlüsselt, anstatt dies in einem Vorgang zu tun (Signaturkapselung) - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Nachrichten werden automatisch verschlüsselt, falls die Schlüssel aller Empfänger vorhanden sind - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Senden Sie mir Ihr Feedback an diese Adresse - - - com.apple.InterfaceBuilder.CocoaPlugin - - - ToolTip - - ToolTip - - Schlüsselliste neu laden - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - YES - - - YES - - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{165, 323}, {648, 487}} - com.apple.InterfaceBuilder.CocoaPlugin - {{165, 323}, {648, 487}} - - - {213, 107} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{207, 632}, {185, 83}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - - - YES - - - YES - - - - - YES - - - YES - - - - 541 - - - - YES - - FirstResponder - NSObject - - IBUserSource - - - - - GPGMailPreferences - NSPreferencesModule - - YES - - YES - changeDefaultKey: - changeLineWrapping: - changePassphraseStrategy: - changePassphraseTimeout: - exportGPGMailConfiguration: - flushCachedPassphrases: - refreshKeys: - toggleAlwaysEncryptMessages: - toggleAlwaysSignMessages: - toggleAuthenticateUnreadMessagesAutomatically: - toggleAuthenticatesMessagesAutomatically: - toggleAutomaticPersonalKeyChoice: - toggleBCCRecipientsUse: - toggleButtonsBehavior: - toggleDecryptsMessagesAutomatically: - toggleDecryptsUnreadMessagesAutomatically: - toggleDisplayAccessoryView: - toggleEncryptToSelf: - toggleEncryptWhenPossible: - toggleEncryptedReplyToEncryptedMessage: - toggleExtendedInformation: - toggleFilterKeys: - toggleKeyRefresh: - toggleOpenPGPMIME: - toggleSMIME: - toggleSeparatePGPOperations: - toggleShowKeyInformation: - toggleShowPassphrase: - toggleShowUserIDs: - toggleSignWhenEncrypting: - toggleSignedReplyToSignedMessage: - toggleSmartRules: - toggleTrustAllKeys: - - - YES - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - id - - - - YES - - YES - changeDefaultKey: - changeLineWrapping: - changePassphraseStrategy: - changePassphraseTimeout: - exportGPGMailConfiguration: - flushCachedPassphrases: - refreshKeys: - toggleAlwaysEncryptMessages: - toggleAlwaysSignMessages: - toggleAuthenticateUnreadMessagesAutomatically: - toggleAuthenticatesMessagesAutomatically: - toggleAutomaticPersonalKeyChoice: - toggleBCCRecipientsUse: - toggleButtonsBehavior: - toggleDecryptsMessagesAutomatically: - toggleDecryptsUnreadMessagesAutomatically: - toggleDisplayAccessoryView: - toggleEncryptToSelf: - toggleEncryptWhenPossible: - toggleEncryptedReplyToEncryptedMessage: - toggleExtendedInformation: - toggleFilterKeys: - toggleKeyRefresh: - toggleOpenPGPMIME: - toggleSMIME: - toggleSeparatePGPOperations: - toggleShowKeyInformation: - toggleShowPassphrase: - toggleShowUserIDs: - toggleSignWhenEncrypting: - toggleSignedReplyToSignedMessage: - toggleSmartRules: - toggleTrustAllKeys: - - - YES - - changeDefaultKey: - id - - - changeLineWrapping: - id - - - changePassphraseStrategy: - id - - - changePassphraseTimeout: - id - - - exportGPGMailConfiguration: - id - - - flushCachedPassphrases: - id - - - refreshKeys: - id - - - toggleAlwaysEncryptMessages: - id - - - toggleAlwaysSignMessages: - id - - - toggleAuthenticateUnreadMessagesAutomatically: - id - - - toggleAuthenticatesMessagesAutomatically: - id - - - toggleAutomaticPersonalKeyChoice: - id - - - toggleBCCRecipientsUse: - id - - - toggleButtonsBehavior: - id - - - toggleDecryptsMessagesAutomatically: - id - - - toggleDecryptsUnreadMessagesAutomatically: - id - - - toggleDisplayAccessoryView: - id - - - toggleEncryptToSelf: - id - - - toggleEncryptWhenPossible: - id - - - toggleEncryptedReplyToEncryptedMessage: - id - - - toggleExtendedInformation: - id - - - toggleFilterKeys: - id - - - toggleKeyRefresh: - id - - - toggleOpenPGPMIME: - id - - - toggleSMIME: - id - - - toggleSeparatePGPOperations: - id - - - toggleShowKeyInformation: - id - - - toggleShowPassphrase: - id - - - toggleShowUserIDs: - id - - - toggleSignWhenEncrypting: - id - - - toggleSignedReplyToSignedMessage: - id - - - toggleSmartRules: - id - - - toggleTrustAllKeys: - id - - - - - YES - - YES - alwaysEncryptSwitchButton - alwaysSignSwitchButton - authenticateUnreadMessagesSwitchButton - automaticallyAuthenticateMessagesSwitchButton - automaticallyDecryptMessagesSwitchButton - buttonsShowStateSwitchButton - choosesPersonalKeyAccordingToAccountSwitchButton - contactTextField - decryptUnreadMessagesSwitchButton - disableSMIMESwitchButton - displayButtonInComposeWindowSwitchButton - encryptReplyToEncryptedMessageSwitchButton - encryptToSelfSwitchButton - encryptWhenAllKeysAvailableSwitchButton - extendedInfoSwitchButton - filtersKeysSwitchButton - keyIdentifiersPopUpButton - keyIdentifiersTableView - lineWrappingFormCell - openPGPMIMESwitchButton - passphraseStrategyMatrix - passphraseTimeoutFormCell - personalKeysPopUpButton - refreshKeysOnVolumeChangeSwitchButton - separateSignAndEncryptOperationsSwitchButton - showUserIDsSwitchButton - showsPassphraseSwitchButton - signReplyToSignedMessageSwitchButton - signWhenEncryptingSwitchButton - trustAllKeysSwitchButton - useBCCRecipientsSwitchButton - useSmartRulesSwitchButton - versionTextField - webSiteTextField - - - YES - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSTextField - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSPopUpButton - NSTableView - NSFormCell - NSButton - NSMatrix - NSFormCell - NSPopUpButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSButton - NSTextField - NSTextField - - - - YES - - YES - alwaysEncryptSwitchButton - alwaysSignSwitchButton - authenticateUnreadMessagesSwitchButton - automaticallyAuthenticateMessagesSwitchButton - automaticallyDecryptMessagesSwitchButton - buttonsShowStateSwitchButton - choosesPersonalKeyAccordingToAccountSwitchButton - contactTextField - decryptUnreadMessagesSwitchButton - disableSMIMESwitchButton - displayButtonInComposeWindowSwitchButton - encryptReplyToEncryptedMessageSwitchButton - encryptToSelfSwitchButton - encryptWhenAllKeysAvailableSwitchButton - extendedInfoSwitchButton - filtersKeysSwitchButton - keyIdentifiersPopUpButton - keyIdentifiersTableView - lineWrappingFormCell - openPGPMIMESwitchButton - passphraseStrategyMatrix - passphraseTimeoutFormCell - personalKeysPopUpButton - refreshKeysOnVolumeChangeSwitchButton - separateSignAndEncryptOperationsSwitchButton - showUserIDsSwitchButton - showsPassphraseSwitchButton - signReplyToSignedMessageSwitchButton - signWhenEncryptingSwitchButton - trustAllKeysSwitchButton - useBCCRecipientsSwitchButton - useSmartRulesSwitchButton - versionTextField - webSiteTextField - - - YES - - alwaysEncryptSwitchButton - NSButton - - - alwaysSignSwitchButton - NSButton - - - authenticateUnreadMessagesSwitchButton - NSButton - - - automaticallyAuthenticateMessagesSwitchButton - NSButton - - - automaticallyDecryptMessagesSwitchButton - NSButton - - - buttonsShowStateSwitchButton - NSButton - - - choosesPersonalKeyAccordingToAccountSwitchButton - NSButton - - - contactTextField - NSTextField - - - decryptUnreadMessagesSwitchButton - NSButton - - - disableSMIMESwitchButton - NSButton - - - displayButtonInComposeWindowSwitchButton - NSButton - - - encryptReplyToEncryptedMessageSwitchButton - NSButton - - - encryptToSelfSwitchButton - NSButton - - - encryptWhenAllKeysAvailableSwitchButton - NSButton - - - extendedInfoSwitchButton - NSButton - - - filtersKeysSwitchButton - NSButton - - - keyIdentifiersPopUpButton - NSPopUpButton - - - keyIdentifiersTableView - NSTableView - - - lineWrappingFormCell - NSFormCell - - - openPGPMIMESwitchButton - NSButton - - - passphraseStrategyMatrix - NSMatrix - - - passphraseTimeoutFormCell - NSFormCell - - - personalKeysPopUpButton - NSPopUpButton - - - refreshKeysOnVolumeChangeSwitchButton - NSButton - - - separateSignAndEncryptOperationsSwitchButton - NSButton - - - showUserIDsSwitchButton - NSButton - - - showsPassphraseSwitchButton - NSButton - - - signReplyToSignedMessageSwitchButton - NSButton - - - signWhenEncryptingSwitchButton - NSButton - - - trustAllKeysSwitchButton - NSButton - - - useBCCRecipientsSwitchButton - NSButton - - - useSmartRulesSwitchButton - NSButton - - - versionTextField - NSTextField - - - webSiteTextField - NSTextField - - - - - IBProjectSource - Source/GPGMailPreferences.h - - - - GPGMailPreferences - NSPreferencesModule - - IBUserSource - - - - - NSObject - - IBProjectSource - Source/GPG.subproj/GPGProgressIndicatorController.h - - - - NSObject - - IBProjectSource - Source/GPGMailPatching.h - - - - NSObject - - IBProjectSource - Source/GPGMessageViewerAccessoryViewOwner.h - - - - NSObject - - IBProjectSource - Source/NSObject+GPGMail.h - - - - NSObject - - IBUserSource - - - - - NSPreferencesModule - NSObject - - IBProjectSource - Source/PrivateHeaders/NSPreferences.h - - - - NSPreferencesModule - NSObject - - preferencesView - id - - - preferencesView - - preferencesView - id - - - - IBUserSource - - - - - - YES - - NSObject - - IBDocumentRelativeSource - ../../Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcast.h - - - - NSObject - - IBDocumentRelativeSource - ../../Frameworks/Sparkle.framework/Versions/A/Headers/SUUpdater.h - - - - - YES - - NSActionCell - NSCell - - IBFrameworkSource - AppKit.framework/Headers/NSActionCell.h - - - - NSApplication - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSApplication.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSApplicationScripting.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSColorPanel.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSHelpManager.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSPageLayout.h - - - - NSApplication - - IBFrameworkSource - AppKit.framework/Headers/NSUserInterfaceItemSearching.h - - - - NSBox - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSBox.h - - - - NSButton - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSButton.h - - - - NSButtonCell - NSActionCell - - IBFrameworkSource - AppKit.framework/Headers/NSButtonCell.h - - - - NSCell - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSCell.h - - - - NSControl - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSControl.h - - - - NSController - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSController.h - - - - NSForm - NSMatrix - - IBFrameworkSource - AppKit.framework/Headers/NSForm.h - - - - NSFormCell - NSActionCell - - IBFrameworkSource - AppKit.framework/Headers/NSFormCell.h - - - - NSFormatter - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSFormatter.h - - - - NSMatrix - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSMatrix.h - - - - NSMenu - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSMenu.h - - - - NSMenuItem - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSMenuItem.h - - - - NSMenuItemCell - NSButtonCell - - IBFrameworkSource - AppKit.framework/Headers/NSMenuItemCell.h - - - - NSNumberFormatter - NSFormatter - - IBFrameworkSource - Foundation.framework/Headers/NSNumberFormatter.h - - - - NSObject - - IBFrameworkSource - AddressBook.framework/Headers/ABActions.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSAccessibility.h - - - - NSObject - - - - NSObject - - - - NSObject - - - - NSObject - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSDictionaryController.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSDragging.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSFontManager.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSFontPanel.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSKeyValueBinding.h - - - - NSObject - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSNibLoading.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSOutlineView.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSPasteboard.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSSavePanel.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSTableView.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSToolbarItem.h - - - - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSView.h - - - - NSObject - - IBFrameworkSource - ExceptionHandling.framework/Headers/NSExceptionHandler.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSArchiver.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSClassDescription.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSError.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSFileManager.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyValueCoding.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyValueObserving.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSKeyedArchiver.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSObject.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSObjectScripting.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSPortCoder.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSRunLoop.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptClassDescription.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptKeyValueCoding.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptObjectSpecifiers.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSScriptWhoseTests.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSThread.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURL.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURLConnection.h - - - - NSObject - - IBFrameworkSource - Foundation.framework/Headers/NSURLDownload.h - - - - NSObject - - IBFrameworkSource - Sparkle.framework/Headers/SUAppcast.h - - - - NSObject - - IBFrameworkSource - Sparkle.framework/Headers/SUUpdater.h - - - - NSPanel - NSWindow - - IBFrameworkSource - AppKit.framework/Headers/NSPanel.h - - - - NSPopUpButton - NSButton - - IBFrameworkSource - AppKit.framework/Headers/NSPopUpButton.h - - - - NSPopUpButtonCell - NSMenuItemCell - - IBFrameworkSource - AppKit.framework/Headers/NSPopUpButtonCell.h - - - - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSInterfaceStyle.h - - - - NSResponder - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSResponder.h - - - - NSScrollView - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSScrollView.h - - - - NSScroller - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSScroller.h - - - - NSTabView - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSTabView.h - - - - NSTabViewItem - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSTabViewItem.h - - - - NSTableColumn - NSObject - - IBFrameworkSource - AppKit.framework/Headers/NSTableColumn.h - - - - NSTableHeaderView - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSTableHeaderView.h - - - - NSTableView - NSControl - - - - NSTextField - NSControl - - IBFrameworkSource - AppKit.framework/Headers/NSTextField.h - - - - NSTextFieldCell - NSActionCell - - IBFrameworkSource - AppKit.framework/Headers/NSTextFieldCell.h - - - - NSUserDefaultsController - NSController - - IBFrameworkSource - AppKit.framework/Headers/NSUserDefaultsController.h - - - - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSClipView.h - - - - NSView - - - - NSView - - IBFrameworkSource - AppKit.framework/Headers/NSRulerView.h - - - - NSView - NSResponder - - - - NSWindow - - IBFrameworkSource - AppKit.framework/Headers/NSDrawer.h - - - - NSWindow - NSResponder - - IBFrameworkSource - AppKit.framework/Headers/NSWindow.h - - - - NSWindow - - IBFrameworkSource - AppKit.framework/Headers/NSWindowScripting.h - - - - - 0 - IBCocoaFramework - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - - com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 - - - YES - ../../GPGMail.xcodeproj - 3 - - YES - - YES - NSMenuCheckmark - NSMenuMixedState - NSRadioButton - NSSwitch - RefreshNormal - RefreshPressed - - - YES - {9, 8} - {7, 2} - {16, 15} - {15, 15} - {12, 13} - {12, 13} - - - - diff --git a/GPGMail/Resources/German.lproj/GPGMailPreferences.nib/keyedobjects.nib b/GPGMail/Resources/German.lproj/GPGMailPreferences.nib/keyedobjects.nib deleted file mode 100644 index b15e6be3..00000000 Binary files a/GPGMail/Resources/German.lproj/GPGMailPreferences.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/German.lproj/GPGMenu.nib/classes.nib b/GPGMail/Resources/German.lproj/GPGMenu.nib/classes.nib deleted file mode 100644 index 6ac982ef..00000000 --- a/GPGMail/Resources/German.lproj/GPGMenu.nib/classes.nib +++ /dev/null @@ -1,57 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = { - gpgAuthenticate = id; - gpgChoosePersonalKeys = id; - gpgChoosePublicKeys = id; - gpgDecrypt = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - gpgChoosePersonalKey = id; - gpgChoosePublicKey = id; - gpgChoosePublicKeys = id; - gpgReloadPGPKeys = id; - gpgSearchKeys = id; - gpgToggleAutomaticPublicKeysChoice = id; - gpgToggleDisplayAllUserIDs = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleShowKeyInformation = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - mailTo = id; - }; - CLASS = GPGMailBundle; - LANGUAGE = ObjC; - OUTLETS = { - PGPMenu = NSMenu; - PGPViewMenu = NSMenu; - allUserIDsMenuItem = NSMenuItem; - authenticateMenuItem = NSMenuItem; - automaticPublicKeysMenuItem = NSMenuItem; - choosePublicKeysMenuItem = NSMenuItem; - decryptMenuItem = NSMenuItem; - defaultKey = id; - encryptsNewMessageMenuItem = NSMenuItem; - personalKeysMenuItem = NSMenuItem; - proxyServer = id; - signsNewMessageMenuItem = NSMenuItem; - symetricEncryptionMenuItem = NSMenuItem; - usesOnlyOpenPGPStyleMenuItem = NSMenuItem; - }; - SUPERCLASS = MVMailBundle; - }, - {CLASS = MVMailBundle; LANGUAGE = ObjC; SUPERCLASS = NSObject; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/German.lproj/GPGMenu.nib/info.nib b/GPGMail/Resources/German.lproj/GPGMenu.nib/info.nib deleted file mode 100644 index 4e6e7e23..00000000 --- a/GPGMail/Resources/German.lproj/GPGMenu.nib/info.nib +++ /dev/null @@ -1,24 +0,0 @@ - - - - - IBDocumentLocation - 84 120 356 278 0 0 1024 746 - IBEditorPositions - - 34 - 267 798 290 230 0 0 1680 1028 - 88 - 673 834 152 194 0 0 1680 1028 - - IBFramework Version - 437.0 - IBOpenObjects - - 88 - 34 - - IBSystem Version - 8A428 - - diff --git a/GPGMail/Resources/German.lproj/GPGMenu.nib/objects.nib b/GPGMail/Resources/German.lproj/GPGMenu.nib/objects.nib deleted file mode 100644 index 6ee44e8a..00000000 Binary files a/GPGMail/Resources/German.lproj/GPGMenu.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/German.lproj/GPGMessageViewerAccessoryView.nib/classes.nib b/GPGMail/Resources/German.lproj/GPGMessageViewerAccessoryView.nib/classes.nib deleted file mode 100644 index 5c956adf..00000000 --- a/GPGMail/Resources/German.lproj/GPGMessageViewerAccessoryView.nib/classes.nib +++ /dev/null @@ -1,112 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - authenticate - id - decrypt - id - gpgAuthenticate - id - gpgDecrypt - id - toggleSignatureExtraView - id - - CLASS - GPGMessageViewerAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - authenticationButton - NSButton - authenticationView - NSView - decryptedIconView - NSImageView - decryptedInfoView - NSView - decryptedMessageTextField - NSTextField - decryptionButton - NSButton - decryptionView - NSView - delegate - id - disclosureButton - NSButton - expirationAlertIconView - NSImageView - generalAlertIconView - NSImageView - policyAlertIconView - NSImageView - signatureBadPolicyAlertTextField - NSTextField - signatureCreationDateTextField - NSTextField - signatureExpirationDateTextField - NSTextField - signatureIconView - NSImageView - signatureKeyFingerprintTextField - NSTextField - signatureLowerView - NSView - signatureMessageTextField - NSTextField - signatureToggleButton - NSButton - signatureUpperView - NSView - signatureValidityTextField - NSTextField - signatureView - NSView - trustAlertIconView - NSImageView - userIDsPopDownButton - NSPopUpButton - - SUPERCLASS - NSObject - - - ACTIONS - - - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/German.lproj/GPGMessageViewerAccessoryView.nib/info.nib b/GPGMail/Resources/German.lproj/GPGMessageViewerAccessoryView.nib/info.nib deleted file mode 100644 index 6b6a5d73..00000000 --- a/GPGMail/Resources/German.lproj/GPGMessageViewerAccessoryView.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 67 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/German.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib b/GPGMail/Resources/German.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib deleted file mode 100644 index ffc2c357..00000000 Binary files a/GPGMail/Resources/German.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/German.lproj/InfoPlist.strings b/GPGMail/Resources/German.lproj/InfoPlist.strings deleted file mode 100644 index 3b26f89d..00000000 --- a/GPGMail/Resources/German.lproj/InfoPlist.strings +++ /dev/null @@ -1,6 +0,0 @@ -/* Localized versions of Info.plist keys */ - -CFBundleShortVersionString = "1.2.3 (v62)"; -CFBundleGetInfoHTML = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -CFBundleGetInfoString = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -NSHumanReadableCopyright = "© Stéphane Corthésy, 2000-2008"; diff --git a/GPGMail/Resources/InvalidBadge.tif b/GPGMail/Resources/InvalidBadge.tif deleted file mode 100644 index 8cdeee4a..00000000 Binary files a/GPGMail/Resources/InvalidBadge.tif and /dev/null differ diff --git a/GPGMail/Resources/Italian.lproj/GPGKeyDownload.nib/classes.nib b/GPGMail/Resources/Italian.lproj/GPGKeyDownload.nib/classes.nib deleted file mode 100644 index abce7a58..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGKeyDownload.nib/classes.nib +++ /dev/null @@ -1,75 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - cancel - id - gpgSearchKeys - id - import - id - search - id - - CLASS - GPGKeyDownload - LANGUAGE - ObjC - OUTLETS - - checkBoxMatrix - NSMatrix - context - id - emailCell - NSFormCell - importButton - NSButton - importProgressField - NSTextField - importProgressIndicator - NSProgressIndicator - outlineView - NSOutlineView - searchButton - NSButton - searchProgressField - NSTextField - searchProgressIndicator - NSProgressIndicator - serverComboBox - NSComboBox - subtitleField - NSTextField - tabView - NSTabView - titleField - NSTextField - - SUPERCLASS - NSWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Italian.lproj/GPGKeyDownload.nib/info.nib b/GPGMail/Resources/Italian.lproj/GPGKeyDownload.nib/info.nib deleted file mode 100644 index 7ec1fc41..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGKeyDownload.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - 42 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Italian.lproj/GPGKeyDownload.nib/keyedobjects.nib b/GPGMail/Resources/Italian.lproj/GPGKeyDownload.nib/keyedobjects.nib deleted file mode 100644 index fced91e7..00000000 Binary files a/GPGMail/Resources/Italian.lproj/GPGKeyDownload.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Italian.lproj/GPGMail.strings b/GPGMail/Resources/Italian.lproj/GPGMail.strings deleted file mode 100755 index 5c13a47c..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGMail.strings +++ /dev/null @@ -1,239 +0,0 @@ -{ -/* Passphrase panel titles */ -"MESSAGE_AUTHENTICATION_TITLE" = "Autenticazione del messaggio"; -"MESSAGE_DECRYPTION_PASSPHRASE_TITLE" = "Decifrazione del messaggio"; - -/**/ -"DECRYPTING" = "Sto decifrando..."; -"ENCRYPTING" = "Sto cifrando..."; - -/* submenu title */ -"PGP_MENU" = "PGP"; -/* submenu title */ -"PGP_KEYS_MENU" = "Chiavi PGP"; - -/* submenu items */ -"DECRYPT_MENU" = "Decifra"; -"AUTHENTICATE_MENU" = "Autentica"; -"ENCRYPT_MENU" = "Cifra nuovo messaggio"; -"SIGN_MENU" = "Firma nuovo messaggio"; - -/* Description of version prefixed with */ -"VERSION: %@" = "Versione: %@"; - -/* PGP preferences panel name */ -"PGP_PREFERENCES" = "PGP"; - -/* Alert title and message */ -"MSG_DECRYPTION_ALERT_TITLE_NOT_SIGNED" = "Decifrazione del messaggio"; -"DECRYPTED_MSG_NOT_SIGNED" = "Il messaggio è stato cifrato ma non firmato. La sua autenticità non può essere provata."; -"MSG_ENCRYPTION_ALERT_TITLE" = "Cifratura PGP fallita"; -"MSG_DECRYPTION_ALERT_TITLE" = "Decifratura PGP fallita"; -"MSG_SIGNING_ALERT_TITLE" = "Firma PGP fallita"; -"UNSUPPORTED_ENCRYPTION_FORMAT" = "GPGMail non può decifrare questo tipo di messaggio cifrato."; -"DATA_NOT_AVAILABLE" = "Il contenuto del messaggio non è temporaneamente disponibile."; - -/* Informational alert title and message */ -"AUTHENTICATION_TITLE_OK" = "Autenticazione PGP"; - -/**/ -"AUTHENTICATION_TITLE_FAILED" = "Autenticazione PGP fallita"; -"TRY_AGAIN" = "Prova ancora"; -"CANCEL_DELIVERY" = "Cancella"; -"CANCEL_DECRYPTION" = "Cancella"; - -/**/ -"AUTHENTICATION_TITLE_UNSIGNED" = "Autenticazione PGP"; -"UNSIGNED_PGP_MESSAGE" = "Questo messaggio non è firmato con PGP."; - -/* Toolbar item titles */ -"DECRYPT_ITEM" = "Decifra"; -"AUTHENTICATE_ITEM" = "Autentica"; -"MAKE_ENCRYPTED_ITEM" = "Cifra"; -"MAKE_CLEAR_ITEM" = "Non cifrare"; -"MAKE_UNSIGNED_ITEM" = "Non firmare"; -"MAKE_SIGNED_ITEM" = "Firma"; -"ENCRYPTED_ITEM" = "Cifrato"; -"CLEAR_ITEM" = "In chiaro"; -"SIGNED_ITEM" = "Firmato"; -"UNSIGNED_ITEM" = "Non firmato"; - -/* Toolbar item tooltips */ -"DECRYPT_ITEM_TOOLTIP" = "Decifra il messaggio cifrato con PGP"; -"AUTHENTICATE_ITEM_TOOLTIP" = "Autentica il messaggio firmato con PGP"; -"MAKE_CLEAR_ITEM_TOOLTIP" = "Clicca per inviare un messaggio in chiaro"; -"MAKE_ENCRYPTED_ITEM_TOOLTIP" = "Clicca per usare la cifratura di PGP"; -"MAKE_UNSIGNED_ITEM_TOOLTIP" = "Clicca per inviare un messaggio senza l'autenticazione di PGP"; -"MAKE_SIGNED_ITEM_TOOLTIP" = "Clicca per usare l'autenticazione di PGP"; -"ENCRYPTED_ITEM_TOOLTIP" = "Il messaggio verrà cifrato; clicca per inviare un messaggio in chiaro"; -"CLEAR_ITEM_TOOLTIP" = "Il messaggio sarà in chiaro; clicca per usare la cifratura di PGP"; -"SIGNED_ITEM_TOOLTIP" = "Il messaggio sarà firmato con PGP; clicca per inviare un messaggio senza l'autenticazione di PGP"; -"UNSIGNED_ITEM_TOOLTIP" = "Il messaggio non verrà firmato con PGP; clicca per usare l'autenticazione di PGP"; - -/* Signature information */ -"Bad policy!" = "Procedura sbagliata! "; // Followed by a list of policy URLs -"Policy: " = "Procedura: "; // Followed by a list of policy URLs -"Signed on %@" = "Firmato %@"; // Param is a date, whose format is set by SIGNATURE_CREATION_DATE_FORMAT -"SIGNATURE_CREATION_DATE_FORMAT" = "%c"; // See NSCalendarDate documentation for format -"No signature creation date available" = "Non è disponibile la data di creazione della firma"; -"Key fingerprint: %@" = "Impronta della chiave: %@"; -"Key ID: 0x%@" = "ID della chiave: 0x%@"; -"No key fingerprint/ID available" = "Nessuna impronta/ID della chiave disponibile"; -"Validity: %@" = "Validità: %@"; // Param is the validity status string -"Signature expires on %@" = "La firma scade il %@"; // Param is a date, whose format is set by SIGNATURE_EXPIRATION_DATE_FORMAT -"SIGNATURE_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Key expired on %@" = "La chiave scade il %@"; // Param is a date, whose format is set by KEY_EXPIRATION_DATE_FORMAT -"KEY_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Signed by %@." = "Firmato da %@."; // Param is a userID -"Signature from %@ is bad!" = "La firma di %@ è sbagliata!"; // Param is a userID -"Signature is bad!" = "Firma sbagliata!"; -"Signature status error." = "Errore nella firma."; -"MISSING KEY %@." = "Manca la chiave %@."; // Param is a key ID in hexadecimal -"Signature summary 0x%04x - Signature status %u." = "Errore sconosciuto: firma 0x%04x - stato %u."; // Generic error message; first param is a hex status flag value, second is a decimal status value -"EXCEPTION: %@" = "Errore interno: %@"; // Generic error message; param is a string (exception reason, maybe not localized) -"AUTHENTICATING" = "Sto verificando la firma PGP..."; -"UNTRUSTED RECIPIENTS" = "Almeno una delle chiavi non è fidata"; - -/* Title */ -/* Error messages */ -"GPGMAIL_CANNOT_WORK" = "GPGMail non può funzionare perchè l'applicazione su cui si appoggia non può essere fatta partire. Prova a riavviare Mail, se l'errore persiste manda un messaggio a gpgmail@sente.ch"; -"GPGMAIL_CANNOT_WORK_HAS_GPG_%@_VERSION_%@_NEEDS_%@" = "GPGMail non può funzionare. Ha trovato installato GnuPG (%@) versione %@; per funzionare correttamente ha bisogno almeno della versione %@. Perfavore esci da Mail, installa una versione corretta di GnuPG (per esempio scaricandola dal MacGPG Project, http://macgpg.sourceforge.net/), e poi fai ripartire Mail."; // First arg is path to gpg, second and third are version strings -"GPGMAIL_CANNOT_WORK_MISSING_GPG_%@_VERSION_%@" = "GPGMail non può funzionare. Non ha trovato installato GnuPG (%@) con almeno la versione %@. Perfavore esci da Mail, installa una versione corretta di GnuPG (per esempio scaricandola dal MacGPG Project, http://macgpg.sourceforge.net/), e poi fai ripartire Mail."; // First arg is path to gpg, second is version string -"INVALID_GPGMAIL_VERSION" = "Questa versione di GPGMail non è compatibile con la tua versione di Mail."; /* Title of alert sheet */ -"NEEDS_COMPATIBLE_BUNDLE_VERSION" = "Devi scaricare e installare la versione di GPGMail compatibile con la tua versione del sistema operativo. Vai a http://gpgmail.org/ per scaricarla."; - -/* Validity */ -"VALIDITY: " = "validità: "; -"Validity=0" = "sconosciuta"; -"Validity=1" = "non definita"; -"Validity=2" = "mai"; -"Validity=3" = "parziale"; -"Validity=4" = "piena"; -"Validity=5" = "ultimate"; - -/* Generic MacGPGME error messages */ -"GPGErrorCode=1" = "Errore generale"; -"GPGErrorCode=8" = "Firma sbagliata"; -"GPGErrorCode=9" = "Nessuna chiave pubblica"; -"GPGErrorCode=10" = "Errore di checksum"; -"GPGErrorCode=11" = "Frase chiave sbagliata"; -"GPGErrorCode=15" = "Invalid armor"; -"GPGErrorCode=17" = "Nessuna chiave segreta"; -"GPGErrorCode=31" = "Frase chiave invalida"; -"GPGErrorCode=40" = "Errore del server delle chiavi"; -"GPGErrorCode=53" = "Chiave pubblica non utilizzabile"; -"GPGErrorCode=54" = "Chiave segreta non utilizzabile"; -"GPGErrorCode=55" = "Valore non valido"; -"GPGErrorCode=58" = "Nessuna data"; -"GPGErrorCode=69" = "Non implementato"; -"GPGErrorCode=84" = "Algoritmo non utilizzato"; -"GPGErrorCode=94" = "Chiave revocata"; -"GPGErrorCode=99" = "Cancellato"; -"GPGErrorCode=107" = "Nome ambiguo"; -"GPGErrorCode=116" = "Nessuna corrispondenza nella procedura"; -"GPGErrorCode=125" = "Utilizzo sbagliato della chiave"; -"GPGErrorCode=150" = "Procedura non valida"; -"GPGErrorCode=151" = "Chiave pubblica non fidata"; -"GPGErrorCode=152" = "Decifratura fallita"; -"GPGErrorCode=153" = "Chiave scaduta"; -"GPGErrorCode=154" = "Firma scaduta"; -"GPGErrorCode=16383" = "EOF"; - -/* Signature attachment filename (suffixed automatically by .sig) */ -"PGP_SIGNATURE_FILENAME" = "PGP"; - -/* Signature attachment content-description */ -"This is a digitally signed message part" = "Questa è un messaggio firmato elettronicamente"; - -/* Version MIME part content description header */ -"CONTENT_DESCRIPTION_HEADER" = "PGP/MIME version identification"; - -/* Encrypted attachment filename (suffixed automatically by .asc) */ -"PGP_ENCRYPTED_FILENAME" = "PGP"; - -/* Encrypted attachment content-description */ -"This is an encrypted message part" = "Questo è un messaggio cifrato"; - -/* Multiple-part description */ -"MULTIPART_ENCRYPTED_DESCRIPTION" = "This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156)"; -"MULTIPART_SIGNED_DESCRIPTION" = "This is an OpenPGP/MIME signed message (RFC 2440 and 3156)"; - -/* Tooltip for banner icons */ -"SIGNATURE_IS_GOOD" = "La firma è stata verificata; il messaggio non è stato modificato"; -"SIGNATURE_IS_NOT_GOOD" = "La firma non è valida; il messaggio è stato alterato"; - -/* PGP Key Download panel */ -"PGP_SEARCH_KEYS_MENUITEM" = "Ricerca della chiave PGP"; -"SEARCH" = "Cerca"; -"CANCEL_SEARCH" = "Cancella"; -"SEARCHING" = "Sto cercando..."; -"NO_MATCHING_KEYS" = "Non ho trovato nessuna chiave corrispondente"; -"FOUND_%d_KEYS" = "Ho trovato %d chiave(i)"; -"DOWNLOAD" = "Scarico"; -"DOWNLOADING" = "Sto scaricando..."; -"DOWNLOADED" = "Chiave(i) scaricata(e) e importata(e)"; -"SEARCH_KEYS_ON_SERVER" = "Cerca le chiavi PGP nel server delle chiavi"; -"DOWNLOAD_KEYS_FROM_SERVER" = "Scarica le chiavi PGP dal server delle chiavi"; -"SEARCH_ERROR" = "C'è stato un errore durante la ricerca"; -"DOWNLOAD_ERROR" = "C'è stato un errore durante lo scaricamento"; -" (%u bits)" = " (%u bits)"; -", created on %@" = ", creata il %@"; -", expires on %@" = ", scade il %@"; -", expired on %@" = ", expired on %@"; -"REVOKED_KEY - " = "Revocata - "; // Prefixes found key description, when necessary; followed by keyID, userID, etc. - -/* Unmatched PGP keys for receipts - sheet */ -"MISSING_KEYS: DOWNLOAD" = "Ad alcuni indirizzi non è associata una chiave PGP. Cercare queste chiavi?"; // Title -"UNMATCHED_ADDRESSES: %@" = "Questo indirizzo email non ha una chiave PGP:\n%@"; // Message -"SEARCH_MATCHING_KEYS" = "Cerca"; // Default button -"SEND_IN_CLEAR" = "Invia in chiaro"; // button title; used in dialog after delivery failure due to missing public keys - -"INVALID_HASH_%@" = "L'algoritmo di hash '%@' non è consentito dall'RFC3156."; -"GPGMAIL_VS_PGPMAIL" = "GPGMail non può funzionare quando PGPmail è installato"; -"GPGMAIL_%@_VS_PGPMAIL_%@" = "Entrambi i pacchetti forniscono le stesse funzionalità con modalità di funzionamento differenti. Soltanto uno dei due può essere installato. Devi rimuovere '%@', o '%@'."; -"QUIT" = "Esci"; -"CONTINUE_ANYWAY" = "Prova comunque a continuare"; // Used as button title in modal sheet (PGPmail vs GPGMail) - -/* Composer accessory view header, under To:, CC:, Subject: */ -"PGP:" = "PGP:"; - -/* Key description in popups; prefixes key (actually, primary userID), when necessary; followed by keyID, userID, etc.*/ -"REVOKED_KEY:" = "Revocata:"; -"EXPIRED_KEY:" = "Scaduta:"; -"DISABLED_KEY:" = "Disabilitata:"; -"INVALID_KEY:" = "Invalida:"; - -/* UserID description in popups; prefixes userID, when necessary; followed by name, email, etc.*/ -"REVOKED_USER_ID:" = "Revocata:"; -"INVALID_USER_ID:" = "Invalida:"; - -/* GPGMail exception reasons */ -"NO_VALID_PUBLIC_KEY" = "Non sono state trovate chiavi pubbliche valide. Sono tutte scadute, disabilitate o revocate."; // Could be displayed after encryption -"NO_VALID_PRIVATE_KEY" = "Non sono state trovate chiavi private valide. Questo perchè non ne è stata selezionata nessuna o quella scelta è stata revocata, disabilitata o è scaduta."; // Could be displayed after encryption - -/* Alert when user has no PGP key */ -"NO PGP PRIVATE KEY - TITLE" = "Non hai nessuna chiave PGP. Non puoi usare GPGMail per cifrare o per firmare i messaggi."; -"NO PGP PRIVATE KEY - MESSAGE" = "Se vuoi cifrare o firmare i messaggi con PGP hai bisogno di una chiave PGP personale. Per creare una chiave PGP personale scarica e utilizza il programma GPG Keychain Access di MacGPG che puoi trovare a http://macgpg.sourceforge.net/"; - -/* Conflict resolution panel*/ -"" = "Me"; -"" = "Yes"; -"" = "No"; -"" = "Always"; -"" = "Never"; -"" = "Accepts"; - -/* Additional info describing key */ -"DISABLED_KEY_QUALIFIER" = "disabilitata"; -"INVALID_KEY_QUALIFIER" = "invalida"; -"REVOKED_KEY_QUALIFIER" = "revocata"; -"EXPIRED_KEY_QUALIFIER" = "scaduta"; -"CANNOT_ENCRYPT_KEY_QUALIFIER" = "cannot encrypt"; -"CANNOT_SIGN_KEY_QUALIFIER" = "cannot sign"; - -/* Additional info describing userID */ -"INVALID_USER_ID_QUALIFIER" = "invalida"; -"REVOKED_USER_ID_QUALIFIER" = "revocata"; - -"COPY_MSG_URL_MENUITEM" = "Copy Message URL"; -} diff --git a/GPGMail/Resources/Italian.lproj/GPGMailCompose.nib/classes.nib b/GPGMail/Resources/Italian.lproj/GPGMailCompose.nib/classes.nib deleted file mode 100644 index 0162fc97..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGMailCompose.nib/classes.nib +++ /dev/null @@ -1,139 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - accessoryView - NSView - - SUPERCLASS - NSObject - - - ACTIONS - - gpgToggleSymetricEncryption - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - alertImageView - NSImageView - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - selectedPersonalKey - id - signSwitch - NSButton - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Italian.lproj/GPGMailCompose.nib/info.nib b/GPGMail/Resources/Italian.lproj/GPGMailCompose.nib/info.nib deleted file mode 100644 index 602c04f0..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGMailCompose.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 27 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Italian.lproj/GPGMailCompose.nib/keyedobjects.nib b/GPGMail/Resources/Italian.lproj/GPGMailCompose.nib/keyedobjects.nib deleted file mode 100644 index 88c297e9..00000000 Binary files a/GPGMail/Resources/Italian.lproj/GPGMailCompose.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Italian.lproj/GPGMailComposeTiger.nib/classes.nib b/GPGMail/Resources/Italian.lproj/GPGMailComposeTiger.nib/classes.nib deleted file mode 100644 index 079c9142..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGMailComposeTiger.nib/classes.nib +++ /dev/null @@ -1,134 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - OUTLETS - - _optionSwitch - NSButton - _primaryView - NSView - - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - signSwitch - NSButton - switchProtoMatrix - NSMatrix - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Italian.lproj/GPGMailComposeTiger.nib/info.nib b/GPGMail/Resources/Italian.lproj/GPGMailComposeTiger.nib/info.nib deleted file mode 100644 index 83e73ad2..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGMailComposeTiger.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 5 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Italian.lproj/GPGMailComposeTiger.nib/keyedobjects.nib b/GPGMail/Resources/Italian.lproj/GPGMailComposeTiger.nib/keyedobjects.nib deleted file mode 100644 index f35273f7..00000000 Binary files a/GPGMail/Resources/Italian.lproj/GPGMailComposeTiger.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Italian.lproj/GPGMailPreferences.nib/classes.nib b/GPGMail/Resources/Italian.lproj/GPGMailPreferences.nib/classes.nib deleted file mode 100644 index b621acc6..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGMailPreferences.nib/classes.nib +++ /dev/null @@ -1,186 +0,0 @@ - - - - - IBClasses - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - changeDefaultKey - id - changeLineWrapping - id - changePassphraseStrategy - id - changePassphraseTimeout - id - exportGPGMailConfiguration - id - flushCachedPassphrases - id - refreshKeys - id - toggleAlwaysEncryptMessages - id - toggleAlwaysSignMessages - id - toggleAuthenticateUnreadMessagesAutomatically - id - toggleAuthenticatesMessagesAutomatically - id - toggleAutomaticPersonalKeyChoice - id - toggleBCCRecipientsUse - id - toggleButtonsBehavior - id - toggleDecryptsMessagesAutomatically - id - toggleDecryptsUnreadMessagesAutomatically - id - toggleDisplayAccessoryView - id - toggleEncryptToSelf - id - toggleEncryptWhenPossible - id - toggleEncryptedReplyToEncryptedMessage - id - toggleExtendedInformation - id - toggleFilterKeys - id - toggleKeyRefresh - id - toggleOpenPGPMIME - id - toggleSMIME - id - toggleSeparatePGPOperations - id - toggleShowKeyInformation - id - toggleShowPassphrase - id - toggleShowUserIDs - id - toggleSignWhenEncrypting - id - toggleSignedReplyToSignedMessage - id - toggleSmartRules - id - toggleTrustAllKeys - id - - CLASS - GPGMailPreferences - LANGUAGE - ObjC - OUTLETS - - alwaysEncryptSwitchButton - NSButton - alwaysSignSwitchButton - NSButton - authenticateUnreadMessagesSwitchButton - NSButton - automaticallyAuthenticateMessagesSwitchButton - NSButton - automaticallyDecryptMessagesSwitchButton - NSButton - buttonsShowStateSwitchButton - NSButton - choosesPersonalKeyAccordingToAccountSwitchButton - NSButton - contactTextField - NSTextField - decryptUnreadMessagesSwitchButton - NSButton - disableSMIMESwitchButton - NSButton - displayButtonInComposeWindowSwitchButton - NSButton - encryptReplyToEncryptedMessageSwitchButton - NSButton - encryptToSelfSwitchButton - NSButton - encryptWhenAllKeysAvailableSwitchButton - NSButton - extendedInfoSwitchButton - NSButton - filtersKeysSwitchButton - NSButton - keyIdentifiersPopUpButton - NSPopUpButton - keyIdentifiersTableView - NSTableView - lineWrappingFormCell - NSFormCell - openPGPMIMESwitchButton - NSButton - passphraseStrategyMatrix - NSMatrix - passphraseTimeoutFormCell - NSFormCell - personalKeysPopUpButton - NSPopUpButton - refreshKeysOnVolumeChangeSwitchButton - NSButton - separateSignAndEncryptOperationsSwitchButton - NSButton - showUserIDsSwitchButton - NSButton - showsPassphraseSwitchButton - NSButton - signReplyToSignedMessageSwitchButton - NSButton - signWhenEncryptingSwitchButton - NSButton - trustAllKeysSwitchButton - NSButton - useBCCRecipientsSwitchButton - NSButton - useSmartRulesSwitchButton - NSButton - versionTextField - NSTextField - webSiteTextField - NSTextField - - SUPERCLASS - NSPreferencesModule - - - CLASS - NSPreferencesModule - LANGUAGE - ObjC - OUTLETS - - preferencesView - id - - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Italian.lproj/GPGMailPreferences.nib/info.nib b/GPGMail/Resources/Italian.lproj/GPGMailPreferences.nib/info.nib deleted file mode 100644 index 60c368f6..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGMailPreferences.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 9 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Italian.lproj/GPGMailPreferences.nib/keyedobjects.nib b/GPGMail/Resources/Italian.lproj/GPGMailPreferences.nib/keyedobjects.nib deleted file mode 100644 index e1af6f83..00000000 Binary files a/GPGMail/Resources/Italian.lproj/GPGMailPreferences.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Italian.lproj/GPGMenu.nib/classes.nib b/GPGMail/Resources/Italian.lproj/GPGMenu.nib/classes.nib deleted file mode 100644 index 6ac982ef..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGMenu.nib/classes.nib +++ /dev/null @@ -1,57 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = { - gpgAuthenticate = id; - gpgChoosePersonalKeys = id; - gpgChoosePublicKeys = id; - gpgDecrypt = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - gpgChoosePersonalKey = id; - gpgChoosePublicKey = id; - gpgChoosePublicKeys = id; - gpgReloadPGPKeys = id; - gpgSearchKeys = id; - gpgToggleAutomaticPublicKeysChoice = id; - gpgToggleDisplayAllUserIDs = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleShowKeyInformation = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - mailTo = id; - }; - CLASS = GPGMailBundle; - LANGUAGE = ObjC; - OUTLETS = { - PGPMenu = NSMenu; - PGPViewMenu = NSMenu; - allUserIDsMenuItem = NSMenuItem; - authenticateMenuItem = NSMenuItem; - automaticPublicKeysMenuItem = NSMenuItem; - choosePublicKeysMenuItem = NSMenuItem; - decryptMenuItem = NSMenuItem; - defaultKey = id; - encryptsNewMessageMenuItem = NSMenuItem; - personalKeysMenuItem = NSMenuItem; - proxyServer = id; - signsNewMessageMenuItem = NSMenuItem; - symetricEncryptionMenuItem = NSMenuItem; - usesOnlyOpenPGPStyleMenuItem = NSMenuItem; - }; - SUPERCLASS = MVMailBundle; - }, - {CLASS = MVMailBundle; LANGUAGE = ObjC; SUPERCLASS = NSObject; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/Italian.lproj/GPGMenu.nib/info.nib b/GPGMail/Resources/Italian.lproj/GPGMenu.nib/info.nib deleted file mode 100644 index 0acffd10..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGMenu.nib/info.nib +++ /dev/null @@ -1,24 +0,0 @@ - - - - - IBDocumentLocation - 234 129 356 278 0 0 1680 1028 - IBEditorPositions - - 34 - 259 798 288 230 0 0 1680 1028 - 88 - 660 834 189 194 0 0 1680 1028 - - IBFramework Version - 443.0 - IBOpenObjects - - 88 - 34 - - IBSystem Version - 8G32 - - diff --git a/GPGMail/Resources/Italian.lproj/GPGMenu.nib/objects.nib b/GPGMail/Resources/Italian.lproj/GPGMenu.nib/objects.nib deleted file mode 100644 index cf43ac64..00000000 Binary files a/GPGMail/Resources/Italian.lproj/GPGMenu.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/Italian.lproj/GPGMessageViewerAccessoryView.nib/classes.nib b/GPGMail/Resources/Italian.lproj/GPGMessageViewerAccessoryView.nib/classes.nib deleted file mode 100644 index 5c956adf..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGMessageViewerAccessoryView.nib/classes.nib +++ /dev/null @@ -1,112 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - authenticate - id - decrypt - id - gpgAuthenticate - id - gpgDecrypt - id - toggleSignatureExtraView - id - - CLASS - GPGMessageViewerAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - authenticationButton - NSButton - authenticationView - NSView - decryptedIconView - NSImageView - decryptedInfoView - NSView - decryptedMessageTextField - NSTextField - decryptionButton - NSButton - decryptionView - NSView - delegate - id - disclosureButton - NSButton - expirationAlertIconView - NSImageView - generalAlertIconView - NSImageView - policyAlertIconView - NSImageView - signatureBadPolicyAlertTextField - NSTextField - signatureCreationDateTextField - NSTextField - signatureExpirationDateTextField - NSTextField - signatureIconView - NSImageView - signatureKeyFingerprintTextField - NSTextField - signatureLowerView - NSView - signatureMessageTextField - NSTextField - signatureToggleButton - NSButton - signatureUpperView - NSView - signatureValidityTextField - NSTextField - signatureView - NSView - trustAlertIconView - NSImageView - userIDsPopDownButton - NSPopUpButton - - SUPERCLASS - NSObject - - - ACTIONS - - - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Italian.lproj/GPGMessageViewerAccessoryView.nib/info.nib b/GPGMail/Resources/Italian.lproj/GPGMessageViewerAccessoryView.nib/info.nib deleted file mode 100644 index 6b6a5d73..00000000 --- a/GPGMail/Resources/Italian.lproj/GPGMessageViewerAccessoryView.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 67 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Italian.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib b/GPGMail/Resources/Italian.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib deleted file mode 100644 index 067f1932..00000000 Binary files a/GPGMail/Resources/Italian.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Italian.lproj/InfoPlist.strings b/GPGMail/Resources/Italian.lproj/InfoPlist.strings deleted file mode 100644 index e8fc7555..00000000 --- a/GPGMail/Resources/Italian.lproj/InfoPlist.strings +++ /dev/null @@ -1,6 +0,0 @@ -/* Localized versions of Info.plist keys */ - -CFBundleShortVersionString = "1.2.3 (v62)"; -CFBundleGetInfoHTML = "GPGMail versione 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -CFBundleGetInfoString = "GPGMail versione 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -NSHumanReadableCopyright = "© Stéphane Corthésy, 2000-2008"; diff --git a/GPGMail/Resources/Japanese.lproj/GPGKeyDownload.nib/classes.nib b/GPGMail/Resources/Japanese.lproj/GPGKeyDownload.nib/classes.nib deleted file mode 100644 index abce7a58..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGKeyDownload.nib/classes.nib +++ /dev/null @@ -1,75 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - cancel - id - gpgSearchKeys - id - import - id - search - id - - CLASS - GPGKeyDownload - LANGUAGE - ObjC - OUTLETS - - checkBoxMatrix - NSMatrix - context - id - emailCell - NSFormCell - importButton - NSButton - importProgressField - NSTextField - importProgressIndicator - NSProgressIndicator - outlineView - NSOutlineView - searchButton - NSButton - searchProgressField - NSTextField - searchProgressIndicator - NSProgressIndicator - serverComboBox - NSComboBox - subtitleField - NSTextField - tabView - NSTabView - titleField - NSTextField - - SUPERCLASS - NSWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Japanese.lproj/GPGKeyDownload.nib/info.nib b/GPGMail/Resources/Japanese.lproj/GPGKeyDownload.nib/info.nib deleted file mode 100644 index 7ec1fc41..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGKeyDownload.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - 42 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Japanese.lproj/GPGKeyDownload.nib/keyedobjects.nib b/GPGMail/Resources/Japanese.lproj/GPGKeyDownload.nib/keyedobjects.nib deleted file mode 100644 index 41208dc0..00000000 Binary files a/GPGMail/Resources/Japanese.lproj/GPGKeyDownload.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Japanese.lproj/GPGMail.strings b/GPGMail/Resources/Japanese.lproj/GPGMail.strings deleted file mode 100644 index bd59eade..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGMail.strings +++ /dev/null @@ -1,239 +0,0 @@ -{ -/* Passphrase panel titles */ -"MESSAGE_AUTHENTICATION_TITLE" = "メッセージの認証"; -"MESSAGE_DECRYPTION_PASSPHRASE_TITLE" = "メッセージの解読"; - -/**/ -"DECRYPTING" = "解読中..."; -"ENCRYPTING" = "暗号化中..."; - -/* submenu title */ -"PGP_MENU" = "PGP"; -/* submenu title */ -"PGP_KEYS_MENU" = "PGPの鍵"; - -/* submenu items */ -"DECRYPT_MENU" = "解読する"; -"AUTHENTICATE_MENU" = "認証する"; -"ENCRYPT_MENU" = "新規メッセージを暗号化する"; -"SIGN_MENU" = "新規メッセージに署名する"; - -/* Description of version prefixed with */ -"VERSION: %@" = "バージョン: %@"; - -/* PGP preferences panel name */ -"PGP_PREFERENCES" = "PGP"; - -/* Alert title and message */ -"MSG_DECRYPTION_ALERT_TITLE_NOT_SIGNED" = "メッセージの復号"; -"DECRYPTED_MSG_NOT_SIGNED" = "メッセージは暗号化されていますが署名されていません。よって、その信頼性を証明できません。"; -"MSG_ENCRYPTION_ALERT_TITLE" = "PGP暗号化は失敗しました"; -"MSG_DECRYPTION_ALERT_TITLE" = "PGP解読は失敗しました"; -"MSG_SIGNING_ALERT_TITLE" = "PGP署名は失敗しました"; -"UNSUPPORTED_ENCRYPTION_FORMAT" = "GPGMailは、この種の暗号化されたメッセージを解読できません。"; -"DATA_NOT_AVAILABLE" = "そのメッセージの中身は一時的に利用できません。"; - -/* Informational alert title and message */ -"AUTHENTICATION_TITLE_OK" = "PGP認証"; - -/**/ -"AUTHENTICATION_TITLE_FAILED" = "PGP認証は失敗しました"; -"TRY_AGAIN" = "再試行"; -"CANCEL_DELIVERY" = "キャンセル"; -"CANCEL_DECRYPTION" = "キャンセル"; - -/**/ -"AUTHENTICATION_TITLE_UNSIGNED" = "PGP認証"; -"UNSIGNED_PGP_MESSAGE" = "このメッセージはPGP署名されていません。"; - -/* Toolbar item titles */ -"DECRYPT_ITEM" = "解読"; -"AUTHENTICATE_ITEM" = "認証"; -"MAKE_ENCRYPTED_ITEM" = "暗号化する"; -"MAKE_CLEAR_ITEM" = "平文にする"; -"MAKE_UNSIGNED_ITEM" = "署名しない"; -"MAKE_SIGNED_ITEM" = "署名する"; -"ENCRYPTED_ITEM" = "暗号化有り"; -"CLEAR_ITEM" = "平文"; -"SIGNED_ITEM" = "署名有り"; -"UNSIGNED_ITEM" = "署名無し"; - -/* Toolbar item tooltips */ -"DECRYPT_ITEM_TOOLTIP" = "PGP暗号化されたメッセージを解読する"; -"AUTHENTICATE_ITEM_TOOLTIP" = "PGP署名されたメッセージを認証する"; -"MAKE_CLEAR_ITEM_TOOLTIP" = "平文でメッセージを送信するためにはクリックする"; -"MAKE_ENCRYPTED_ITEM_TOOLTIP" = "PGP暗号を使うためにはクリックする"; -"MAKE_UNSIGNED_ITEM_TOOLTIP" = "PGP認証無しでメッセージを送信するためにはクリックする"; -"MAKE_SIGNED_ITEM_TOOLTIP" = "PGP認証を使うためにはクリックする"; -"ENCRYPTED_ITEM_TOOLTIP" = "メッセージは暗号化されます; 平文でメッセージを送信するためにはクリックする"; -"CLEAR_ITEM_TOOLTIP" = "メッセージは平文になります; PGP暗号を使うためにはクリックする"; -"SIGNED_ITEM_TOOLTIP" = "メッセージはPGP署名されます; PGP認証無しでメッセージを送信するためにはクリックする"; -"UNSIGNED_ITEM_TOOLTIP" = "メッセージはPGP署名されません; PGP認証を使うためにはクリックする"; - -/* Signature information */ -"Bad policy!" = "悪いポリシー! "; // Followed by a list of policy URLs -"Policy: " = "ポリシー: "; // Followed by a list of policy URLs -"Signed on %@" = "%@ に署名されました"; // Param is a date, whose format is set by SIGNATURE_CREATION_DATE_FORMAT -"SIGNATURE_CREATION_DATE_FORMAT" = "%c"; // See NSCalendarDate documentation for format -"No signature creation date available" = "署名の作成日が得られません"; -"Key fingerprint: %@" = "鍵の指紋: %@"; -"Key ID: 0x%@" = "鍵のID: 0x%@"; -"No key fingerprint/ID available" = "鍵の指紋/IDが得られません"; -"Validity: %@" = "有効性: %@"; // Param is the validity status string -"Signature expires on %@" = "署名は %@ に期限が切れます"; // Param is a date, whose format is set by SIGNATURE_EXPIRATION_DATE_FORMAT -"SIGNATURE_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Key expired on %@" = "鍵は %@ に期限が切れました"; // Param is a date, whose format is set by KEY_EXPIRATION_DATE_FORMAT -"KEY_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Signed by %@." = "%@ によって署名されました。"; // Param is a userID -"Signature from %@ is bad!" = "%@ からの不正な署名です!"; // Param is a userID -"Signature is bad!" = "署名は不正です!"; -"Signature status error." = "署名の状態のエラー。"; -"MISSING KEY %@." = "%@ の鍵が欠けています。"; // Param is a key ID in hexadecimal -"Signature summary 0x%04x - Signature status %u." = "未知のエラー: 署名の概要 0x%04x - 署名の状態 %u."; // Generic error message; first param is a hex status flag value, second is a decimal status value -"EXCEPTION: %@" = "内部のエラー: %@"; // Generic error message; param is a string (exception reason, maybe not localized) -"AUTHENTICATING" = "PGP署名を検証中..."; -"UNTRUSTED RECIPIENTS" = "少なくとも鍵の一つは信用されていません"; - -/* Title */ -/* Error messages */ -"GPGMAIL_CANNOT_WORK" = "GPGMailは、対をなすアプリケーションが起動できないために動作できません。Mailの再起動を試みて下さい。それでもエラーが続くようなら、gpgmail@sente.ch 宛に連絡して下さい"; -"GPGMAIL_CANNOT_WORK_HAS_GPG_%@_VERSION_%@_NEEDS_%@" = "GPGMailは動作できません。GnuPG (%@) のバージョン %@ が見つかりましたが、少なくともバージョン %@ が必要です。Mailを終了してから、適合するGnuPGのバージョンをインストールして下さい(例えば MacGPG Project, http://macgpg.sourceforge.net/ から入手します)。それからMailを再起動して下さい。"; // First arg is path to gpg, second and third are version strings -"GPGMAIL_CANNOT_WORK_MISSING_GPG_%@_VERSION_%@" = "GPGMailは動作できません。GnuPG (%@) の少なくともバージョン %@ を見つけられませんでした。Mailを終了してから、適合するGnuPGのバージョンをインストールして下さい(例えば MacGPG Project, http://macgpg.sourceforge.net/ から入手します)。それからMailを再起動して下さい"; // First arg is path to gpg, second is version string -"INVALID_GPGMAIL_VERSION" = "あなたのGPGMailのバージョンは、あなたのMailのバージョンとは互換性がありません。"; /* Title of alert sheet */ -"NEEDS_COMPATIBLE_BUNDLE_VERSION" = "あなたのOSバージョンに適合したGPGMailのバージョンをダウンロードしてインストールする必要があります。入手先は http://gpgmail.org/ です。"; - -/* Validity */ -"VALIDITY: " = "有効性: "; -"Validity=0" = "未知"; -"Validity=1" = "未定義"; -"Validity=2" = "信用しない"; -"Validity=3" = "ある程度信用する"; -"Validity=4" = "完全に信用する"; -"Validity=5" = "絶対的に信用する"; - -/* Generic MacGPGME error messages */ -"GPGErrorCode=1" = "一般的なエラー"; -"GPGErrorCode=8" = "不正な署名"; -"GPGErrorCode=9" = "公開鍵が無い"; -"GPGErrorCode=10" = "チェックサムのエラー"; -"GPGErrorCode=11" = "不正なパスフレーズ"; -"GPGErrorCode=15" = "無効な形式"; -"GPGErrorCode=17" = "秘密鍵が無い"; -"GPGErrorCode=31" = "無効なパスフレーズ"; -"GPGErrorCode=40" = "鍵サーバーのエラー"; -"GPGErrorCode=53" = "使用できない公開鍵"; -"GPGErrorCode=54" = "使用できない秘密鍵"; -"GPGErrorCode=55" = "無効な値"; -"GPGErrorCode=58" = "データが無い"; -"GPGErrorCode=69" = "実装されていない"; -"GPGErrorCode=84" = "支持されていないアルゴリズム"; -"GPGErrorCode=94" = "失効された鍵"; -"GPGErrorCode=99" = "取り消された"; -"GPGErrorCode=107" = "不明瞭な名前"; -"GPGErrorCode=116" = "ポリシーの不適合"; -"GPGErrorCode=125" = "間違った鍵の使用"; -"GPGErrorCode=150" = "無効なエンジン"; -"GPGErrorCode=151" = "公開鍵は信用されていない"; -"GPGErrorCode=152" = "解読は失敗した"; -"GPGErrorCode=153" = "鍵は期限切れ"; -"GPGErrorCode=154" = "署名は期限切れ"; -"GPGErrorCode=16383" = "EOF"; - -/* Signature attachment filename (suffixed automatically by .sig) */ -"PGP_SIGNATURE_FILENAME" = "PGP"; - -/* Signature attachment content-description */ -"This is a digitally signed message part" = "これはデジタル署名されたメッセージの部分です"; - -/* Version MIME part content description header */ -"CONTENT_DESCRIPTION_HEADER" = "PGP/MIMEバージョンであることの証明"; - -/* Encrypted attachment filename (suffixed automatically by .asc) */ -"PGP_ENCRYPTED_FILENAME" = "PGP"; - -/* Encrypted attachment content-description */ -"This is an encrypted message part" = "これは暗号化されたメッセージの部分です"; - -/* Multiple-part description */ -"MULTIPART_ENCRYPTED_DESCRIPTION" = "これはOpenPGP/MIMEで暗号化された文書です (RFC 2440と3156)"; -"MULTIPART_SIGNED_DESCRIPTION" = "これはOpenPGP/MIMEで署名された文書です (RFC 2440と3156)"; - -/* Tooltip for banner icons */ -"SIGNATURE_IS_GOOD" = "正しい署名です; メッセージは変更されていません"; -"SIGNATURE_IS_NOT_GOOD" = "不正な署名です; メッセージは変更されています"; - -/* PGP Key Download panel */ -"PGP_SEARCH_KEYS_MENUITEM" = "PGP鍵の検索"; -"SEARCH" = "検索"; -"CANCEL_SEARCH" = "キャンセル"; -"SEARCHING" = "検索中..."; -"NO_MATCHING_KEYS" = "適合する鍵が有りません"; -"FOUND_%d_KEYS" = "適合する鍵が %d 個見つかりました"; -"DOWNLOAD" = "ダウンロード"; -"DOWNLOADING" = "ダウンロード中..."; -"DOWNLOADED" = "鍵をダウンロードして導入しました"; -"SEARCH_KEYS_ON_SERVER" = "鍵サーバー上でPGP鍵を検索します"; -"DOWNLOAD_KEYS_FROM_SERVER" = "鍵サーバーからPGP鍵をダウンロードします"; -"SEARCH_ERROR" = "検索中にエラーが発生しました"; -"DOWNLOAD_ERROR" = "ダウンロード中にエラーが発生しました"; -" (%u bits)" = " (%u bits)"; -", created on %@" = ", %@ に作成されました"; -", expires on %@" = ", %@ に期限が切れます"; -", expired on %@" = ", %@ に期限が切れました"; -"REVOKED_KEY - " = "失効されました - "; // Prefixes found key description, when necessary; followed by keyID, userID, etc. - -/* Unmatched PGP keys for receipts - sheet */ -"MISSING_KEYS: DOWNLOAD" = "アドレスに適合するPGP鍵が有りません。鍵を探しますか?"; // Title -"UNMATCHED_ADDRESSES: %@" = "次の電子メールアドレスに適合するPGP鍵が有りません:¥n%@"; // Message -"SEARCH_MATCHING_KEYS" = "検索"; // Default button -"SEND_IN_CLEAR" = "平文で送信"; // Other button - -"INVALID_HASH_%@" = "ハッシュ・アルゴリズム '%@' は、RFC3156によって許されていません。"; -"GPGMAIL_VS_PGPMAIL" = "PGPmailがインストールされているときには、GPGMailは動作できません"; -"GPGMAIL_%@_VS_PGPMAIL_%@" = "両方のバンドルが異なるエンジンによって同じ機能を提供しているのなら、それらの一方だけをインストールできます。あなたは '%@' または '%@' のどちらかを取り除く必要が有ります。"; -"QUIT" = "終了"; -"CONTINUE_ANYWAY" = "継続を試みる"; - -/* Composer accessory view header, under To:, CC:, Subject: */ -"PGP:" = "PGP:"; - -/* Key description in popups; prefixes key (actually, primary userID), when necessary; followed by keyID, userID, etc.*/ -"REVOKED_KEY:" = "失効された:"; -"EXPIRED_KEY:" = "期限切れの:"; -"DISABLED_KEY:" = "使用不可の:"; -"INVALID_KEY:" = "無効な:"; - -/* UserID description in popups; prefixes userID, when necessary; followed by name, email, etc.*/ -"REVOKED_USER_ID:" = "失効された:"; -"INVALID_USER_ID:" = "無効な:"; - -/* GPGMail exception reasons */ -"NO_VALID_PUBLIC_KEY" = "有効な公開鍵が見つかっていません。鍵は全て期限切れか使用不可か失効されているかのどれかです。"; // Could be displayed after encryption -"NO_VALID_PRIVATE_KEY" = "有効な秘密鍵が見つかっていません。選択されていないか、または選択された鍵が失効されているか使用不可か期限切れになっているかのどれかです。"; // Could be displayed after encryption - -/* Alert when user has no PGP key */ -"NO PGP PRIVATE KEY - TITLE" = "あなたはPGP鍵を持っていません。よって、メッセージの暗号化や署名のためにGPGMailを使うことができません。"; -"NO PGP PRIVATE KEY - MESSAGE" = "もしPGPを使ったメッセージの暗号化や署名ができるようにしたいのであれば、秘密鍵が必要です。PGP鍵を作成するためには、http://macgpg.sourceforge.net/からMacGPGの GPG Keychain Access をダウンロードしてからインストールして下さい。"; - -/* Conflict resolution panel*/ -"" = "私"; -"" = "イエス"; -"" = "ノー"; -"" = "いつでもする"; -"" = "決してしない"; -"" = "受諾する"; - -/* Additional info describing key */ -"DISABLED_KEY_QUALIFIER" = "使用不可"; -"INVALID_KEY_QUALIFIER" = "無効"; -"REVOKED_KEY_QUALIFIER" = "失効"; -"EXPIRED_KEY_QUALIFIER" = "期限切れ"; -"CANNOT_ENCRYPT_KEY_QUALIFIER" = "暗号化できない"; -"CANNOT_SIGN_KEY_QUALIFIER" = "署名できない"; - -/* Additional info describing userID */ -"INVALID_USER_ID_QUALIFIER" = "無効"; -"REVOKED_USER_ID_QUALIFIER" = "失効"; - -"COPY_MSG_URL_MENUITEM" = "Copy Message URL"; -} diff --git a/GPGMail/Resources/Japanese.lproj/GPGMailCompose.nib/classes.nib b/GPGMail/Resources/Japanese.lproj/GPGMailCompose.nib/classes.nib deleted file mode 100644 index 18990ca3..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGMailCompose.nib/classes.nib +++ /dev/null @@ -1,139 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - accessoryView - NSView - - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - gpgToggleSymetricEncryption - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - alertImageView - NSImageView - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - selectedPersonalKey - id - signSwitch - NSButton - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Japanese.lproj/GPGMailCompose.nib/info.nib b/GPGMail/Resources/Japanese.lproj/GPGMailCompose.nib/info.nib deleted file mode 100644 index 602c04f0..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGMailCompose.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 27 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Japanese.lproj/GPGMailCompose.nib/keyedobjects.nib b/GPGMail/Resources/Japanese.lproj/GPGMailCompose.nib/keyedobjects.nib deleted file mode 100644 index 4e91be8b..00000000 Binary files a/GPGMail/Resources/Japanese.lproj/GPGMailCompose.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Japanese.lproj/GPGMailComposeTiger.nib/classes.nib b/GPGMail/Resources/Japanese.lproj/GPGMailComposeTiger.nib/classes.nib deleted file mode 100644 index 079c9142..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGMailComposeTiger.nib/classes.nib +++ /dev/null @@ -1,134 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - OUTLETS - - _optionSwitch - NSButton - _primaryView - NSView - - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - signSwitch - NSButton - switchProtoMatrix - NSMatrix - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Japanese.lproj/GPGMailComposeTiger.nib/info.nib b/GPGMail/Resources/Japanese.lproj/GPGMailComposeTiger.nib/info.nib deleted file mode 100644 index 34312e23..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGMailComposeTiger.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 38 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Japanese.lproj/GPGMailComposeTiger.nib/keyedobjects.nib b/GPGMail/Resources/Japanese.lproj/GPGMailComposeTiger.nib/keyedobjects.nib deleted file mode 100644 index 454137db..00000000 Binary files a/GPGMail/Resources/Japanese.lproj/GPGMailComposeTiger.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Japanese.lproj/GPGMailPreferences.nib/classes.nib b/GPGMail/Resources/Japanese.lproj/GPGMailPreferences.nib/classes.nib deleted file mode 100644 index b621acc6..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGMailPreferences.nib/classes.nib +++ /dev/null @@ -1,186 +0,0 @@ - - - - - IBClasses - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - changeDefaultKey - id - changeLineWrapping - id - changePassphraseStrategy - id - changePassphraseTimeout - id - exportGPGMailConfiguration - id - flushCachedPassphrases - id - refreshKeys - id - toggleAlwaysEncryptMessages - id - toggleAlwaysSignMessages - id - toggleAuthenticateUnreadMessagesAutomatically - id - toggleAuthenticatesMessagesAutomatically - id - toggleAutomaticPersonalKeyChoice - id - toggleBCCRecipientsUse - id - toggleButtonsBehavior - id - toggleDecryptsMessagesAutomatically - id - toggleDecryptsUnreadMessagesAutomatically - id - toggleDisplayAccessoryView - id - toggleEncryptToSelf - id - toggleEncryptWhenPossible - id - toggleEncryptedReplyToEncryptedMessage - id - toggleExtendedInformation - id - toggleFilterKeys - id - toggleKeyRefresh - id - toggleOpenPGPMIME - id - toggleSMIME - id - toggleSeparatePGPOperations - id - toggleShowKeyInformation - id - toggleShowPassphrase - id - toggleShowUserIDs - id - toggleSignWhenEncrypting - id - toggleSignedReplyToSignedMessage - id - toggleSmartRules - id - toggleTrustAllKeys - id - - CLASS - GPGMailPreferences - LANGUAGE - ObjC - OUTLETS - - alwaysEncryptSwitchButton - NSButton - alwaysSignSwitchButton - NSButton - authenticateUnreadMessagesSwitchButton - NSButton - automaticallyAuthenticateMessagesSwitchButton - NSButton - automaticallyDecryptMessagesSwitchButton - NSButton - buttonsShowStateSwitchButton - NSButton - choosesPersonalKeyAccordingToAccountSwitchButton - NSButton - contactTextField - NSTextField - decryptUnreadMessagesSwitchButton - NSButton - disableSMIMESwitchButton - NSButton - displayButtonInComposeWindowSwitchButton - NSButton - encryptReplyToEncryptedMessageSwitchButton - NSButton - encryptToSelfSwitchButton - NSButton - encryptWhenAllKeysAvailableSwitchButton - NSButton - extendedInfoSwitchButton - NSButton - filtersKeysSwitchButton - NSButton - keyIdentifiersPopUpButton - NSPopUpButton - keyIdentifiersTableView - NSTableView - lineWrappingFormCell - NSFormCell - openPGPMIMESwitchButton - NSButton - passphraseStrategyMatrix - NSMatrix - passphraseTimeoutFormCell - NSFormCell - personalKeysPopUpButton - NSPopUpButton - refreshKeysOnVolumeChangeSwitchButton - NSButton - separateSignAndEncryptOperationsSwitchButton - NSButton - showUserIDsSwitchButton - NSButton - showsPassphraseSwitchButton - NSButton - signReplyToSignedMessageSwitchButton - NSButton - signWhenEncryptingSwitchButton - NSButton - trustAllKeysSwitchButton - NSButton - useBCCRecipientsSwitchButton - NSButton - useSmartRulesSwitchButton - NSButton - versionTextField - NSTextField - webSiteTextField - NSTextField - - SUPERCLASS - NSPreferencesModule - - - CLASS - NSPreferencesModule - LANGUAGE - ObjC - OUTLETS - - preferencesView - id - - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Japanese.lproj/GPGMailPreferences.nib/info.nib b/GPGMail/Resources/Japanese.lproj/GPGMailPreferences.nib/info.nib deleted file mode 100644 index 60c368f6..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGMailPreferences.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 9 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Japanese.lproj/GPGMailPreferences.nib/keyedobjects.nib b/GPGMail/Resources/Japanese.lproj/GPGMailPreferences.nib/keyedobjects.nib deleted file mode 100644 index d08b8c84..00000000 Binary files a/GPGMail/Resources/Japanese.lproj/GPGMailPreferences.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Japanese.lproj/GPGMenu.nib/classes.nib b/GPGMail/Resources/Japanese.lproj/GPGMenu.nib/classes.nib deleted file mode 100644 index 6ac982ef..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGMenu.nib/classes.nib +++ /dev/null @@ -1,57 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = { - gpgAuthenticate = id; - gpgChoosePersonalKeys = id; - gpgChoosePublicKeys = id; - gpgDecrypt = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - gpgChoosePersonalKey = id; - gpgChoosePublicKey = id; - gpgChoosePublicKeys = id; - gpgReloadPGPKeys = id; - gpgSearchKeys = id; - gpgToggleAutomaticPublicKeysChoice = id; - gpgToggleDisplayAllUserIDs = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleShowKeyInformation = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - mailTo = id; - }; - CLASS = GPGMailBundle; - LANGUAGE = ObjC; - OUTLETS = { - PGPMenu = NSMenu; - PGPViewMenu = NSMenu; - allUserIDsMenuItem = NSMenuItem; - authenticateMenuItem = NSMenuItem; - automaticPublicKeysMenuItem = NSMenuItem; - choosePublicKeysMenuItem = NSMenuItem; - decryptMenuItem = NSMenuItem; - defaultKey = id; - encryptsNewMessageMenuItem = NSMenuItem; - personalKeysMenuItem = NSMenuItem; - proxyServer = id; - signsNewMessageMenuItem = NSMenuItem; - symetricEncryptionMenuItem = NSMenuItem; - usesOnlyOpenPGPStyleMenuItem = NSMenuItem; - }; - SUPERCLASS = MVMailBundle; - }, - {CLASS = MVMailBundle; LANGUAGE = ObjC; SUPERCLASS = NSObject; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/Japanese.lproj/GPGMenu.nib/info.nib b/GPGMail/Resources/Japanese.lproj/GPGMenu.nib/info.nib deleted file mode 100644 index 8761742f..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGMenu.nib/info.nib +++ /dev/null @@ -1,23 +0,0 @@ - - - - - IBDocumentLocation - 84 120 356 278 0 0 1024 746 - IBEditorPositions - - 34 - 263 798 272 230 0 0 1680 1028 - 88 - 495 638 140 194 0 0 1280 832 - - IBFramework Version - 437.0 - IBOpenObjects - - 34 - - IBSystem Version - 8A428 - - diff --git a/GPGMail/Resources/Japanese.lproj/GPGMenu.nib/objects.nib b/GPGMail/Resources/Japanese.lproj/GPGMenu.nib/objects.nib deleted file mode 100644 index 4d268828..00000000 Binary files a/GPGMail/Resources/Japanese.lproj/GPGMenu.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/Japanese.lproj/GPGMessageViewerAccessoryView.nib/classes.nib b/GPGMail/Resources/Japanese.lproj/GPGMessageViewerAccessoryView.nib/classes.nib deleted file mode 100644 index 5c956adf..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGMessageViewerAccessoryView.nib/classes.nib +++ /dev/null @@ -1,112 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - authenticate - id - decrypt - id - gpgAuthenticate - id - gpgDecrypt - id - toggleSignatureExtraView - id - - CLASS - GPGMessageViewerAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - authenticationButton - NSButton - authenticationView - NSView - decryptedIconView - NSImageView - decryptedInfoView - NSView - decryptedMessageTextField - NSTextField - decryptionButton - NSButton - decryptionView - NSView - delegate - id - disclosureButton - NSButton - expirationAlertIconView - NSImageView - generalAlertIconView - NSImageView - policyAlertIconView - NSImageView - signatureBadPolicyAlertTextField - NSTextField - signatureCreationDateTextField - NSTextField - signatureExpirationDateTextField - NSTextField - signatureIconView - NSImageView - signatureKeyFingerprintTextField - NSTextField - signatureLowerView - NSView - signatureMessageTextField - NSTextField - signatureToggleButton - NSButton - signatureUpperView - NSView - signatureValidityTextField - NSTextField - signatureView - NSView - trustAlertIconView - NSImageView - userIDsPopDownButton - NSPopUpButton - - SUPERCLASS - NSObject - - - ACTIONS - - - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Japanese.lproj/GPGMessageViewerAccessoryView.nib/info.nib b/GPGMail/Resources/Japanese.lproj/GPGMessageViewerAccessoryView.nib/info.nib deleted file mode 100644 index 041904d3..00000000 --- a/GPGMail/Resources/Japanese.lproj/GPGMessageViewerAccessoryView.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - 75 - 18 - 11 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Japanese.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib b/GPGMail/Resources/Japanese.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib deleted file mode 100644 index c6f624da..00000000 Binary files a/GPGMail/Resources/Japanese.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Japanese.lproj/InfoPlist.strings b/GPGMail/Resources/Japanese.lproj/InfoPlist.strings deleted file mode 100644 index 4819e692..00000000 --- a/GPGMail/Resources/Japanese.lproj/InfoPlist.strings +++ /dev/null @@ -1,6 +0,0 @@ -/* Localized versions of Info.plist keys */ - -CFBundleShortVersionString = "1.2.3 (v62)"; -CFBundleGetInfoHTML = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -CFBundleGetInfoString = "GPGMail バージョン 1.2.3 (v62), 著作権 2000-2008, Stéphane Corthésy."; -NSHumanReadableCopyright = "© Stéphane Corthésy, 2000-2008"; diff --git a/GPGMail/Resources/OHZap.tiff b/GPGMail/Resources/OHZap.tiff deleted file mode 100644 index c10130d2..00000000 Binary files a/GPGMail/Resources/OHZap.tiff and /dev/null differ diff --git a/GPGMail/Resources/RefreshNormal.tiff b/GPGMail/Resources/RefreshNormal.tiff deleted file mode 100644 index 1226bae6..00000000 Binary files a/GPGMail/Resources/RefreshNormal.tiff and /dev/null differ diff --git a/GPGMail/Resources/RefreshPressed.tiff b/GPGMail/Resources/RefreshPressed.tiff deleted file mode 100644 index d5fce489..00000000 Binary files a/GPGMail/Resources/RefreshPressed.tiff and /dev/null differ diff --git a/GPGMail/Resources/SmallAlert12.tiff b/GPGMail/Resources/SmallAlert12.tiff deleted file mode 100644 index b5248f8a..00000000 Binary files a/GPGMail/Resources/SmallAlert12.tiff and /dev/null differ diff --git a/GPGMail/Resources/SmallAlert16.tiff b/GPGMail/Resources/SmallAlert16.tiff deleted file mode 100644 index 24478e33..00000000 Binary files a/GPGMail/Resources/SmallAlert16.tiff and /dev/null differ diff --git a/GPGMail/Resources/Spanish.lproj/GPGKeyDownload.nib/classes.nib b/GPGMail/Resources/Spanish.lproj/GPGKeyDownload.nib/classes.nib deleted file mode 100644 index abce7a58..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGKeyDownload.nib/classes.nib +++ /dev/null @@ -1,75 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - cancel - id - gpgSearchKeys - id - import - id - search - id - - CLASS - GPGKeyDownload - LANGUAGE - ObjC - OUTLETS - - checkBoxMatrix - NSMatrix - context - id - emailCell - NSFormCell - importButton - NSButton - importProgressField - NSTextField - importProgressIndicator - NSProgressIndicator - outlineView - NSOutlineView - searchButton - NSButton - searchProgressField - NSTextField - searchProgressIndicator - NSProgressIndicator - serverComboBox - NSComboBox - subtitleField - NSTextField - tabView - NSTabView - titleField - NSTextField - - SUPERCLASS - NSWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Spanish.lproj/GPGKeyDownload.nib/info.nib b/GPGMail/Resources/Spanish.lproj/GPGKeyDownload.nib/info.nib deleted file mode 100644 index 7ec1fc41..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGKeyDownload.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - 42 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Spanish.lproj/GPGKeyDownload.nib/keyedobjects.nib b/GPGMail/Resources/Spanish.lproj/GPGKeyDownload.nib/keyedobjects.nib deleted file mode 100644 index 8488ae6c..00000000 Binary files a/GPGMail/Resources/Spanish.lproj/GPGKeyDownload.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Spanish.lproj/GPGMail.strings b/GPGMail/Resources/Spanish.lproj/GPGMail.strings deleted file mode 100755 index 712713ef..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGMail.strings +++ /dev/null @@ -1,239 +0,0 @@ -{ -/* Passphrase panel titles */ -"MESSAGE_AUTHENTICATION_TITLE" = "Autenticación de mensajes"; -"MESSAGE_DECRYPTION_PASSPHRASE_TITLE" = "Descifrado de mensajes"; - -/**/ -"DECRYPTING" = "Descifrando..."; -"ENCRYPTING" = "Cifrando..."; - -/* submenu title */ -"PGP_MENU" = "PGP"; -/* submenu title */ -"PGP_KEYS_MENU" = "Claves PGP"; - -/* submenu items */ -"DECRYPT_MENU" = "Descifrar"; -"AUTHENTICATE_MENU" = "Autenticar"; -"ENCRYPT_MENU" = "Cifrar nuevo mensaje"; -"SIGN_MENU" = "Firmar nuevo mensaje"; - -/* Description of version prefixed with */ -"VERSION: %@" = "Versión: %@"; - -/* PGP preferences panel name */ -"PGP_PREFERENCES" = "PGP"; - -/* Alert title and message */ -"MSG_DECRYPTION_ALERT_TITLE_NOT_SIGNED" = "Descifrado de mensajes"; -"DECRYPTED_MSG_NOT_SIGNED" = "El mensaje ha sido cifrado pero no firmado. No se puede comprobar su autenticidad."; -"MSG_ENCRYPTION_ALERT_TITLE" = "Se produjo un fallo en el cifrado con PGP"; -"MSG_DECRYPTION_ALERT_TITLE" = "Se produjo un fallo al descifrar con PGP"; -"MSG_SIGNING_ALERT_TITLE" = "Se produjo un fallo al firmar con PGP"; -"UNSUPPORTED_ENCRYPTION_FORMAT" = "GPGMail no es capaz de descifrar este tipo de mensaje."; -"DATA_NOT_AVAILABLE" = "El contenido del mensaje no está disponible temporalmente."; - -/* Informational alert title and message */ -"AUTHENTICATION_TITLE_OK" = "Autenticación PGP"; - -/**/ -"AUTHENTICATION_TITLE_FAILED" = "Ha fallado la autenticación PGP"; -"TRY_AGAIN" = "Intentar de nuevo"; -"CANCEL_DELIVERY" = "Cancelar"; -"CANCEL_DECRYPTION" = "Cancelar"; - -/**/ -"AUTHENTICATION_TITLE_UNSIGNED" = "Autenticación PGP"; -"UNSIGNED_PGP_MESSAGE" = "Este mensaje no ha sido firmado con PGP."; - -/* Toolbar item titles */ -"DECRYPT_ITEM" = "Descifrar"; -"AUTHENTICATE_ITEM" = "Autenticar"; -"MAKE_ENCRYPTED_ITEM" = "Hacer cifrado"; -"MAKE_CLEAR_ITEM" = "Hacer sin cifrar"; -"MAKE_UNSIGNED_ITEM" = "Hacer sin firmar"; -"MAKE_SIGNED_ITEM" = "Hacer firmado"; -"ENCRYPTED_ITEM" = "Cifrado"; -"CLEAR_ITEM" = "Sin cifrar"; -"SIGNED_ITEM" = "Firmado"; -"UNSIGNED_ITEM" = "Sin firmar"; - -/* Toolbar item tooltips */ -"DECRYPT_ITEM_TOOLTIP" = "Descifrar mensaje cifrado con PGP"; -"AUTHENTICATE_ITEM_TOOLTIP" = "Autenticar mensaje firmado con PGP"; -"MAKE_CLEAR_ITEM_TOOLTIP" = "Hacer clic para enviar un mensaje sin cifrar"; -"MAKE_ENCRYPTED_ITEM_TOOLTIP" = "Hacer clic para usar cifrado PGP"; -"MAKE_UNSIGNED_ITEM_TOOLTIP" = "Hacer clic para enviar un mensaje sin autenticación PGP"; -"MAKE_SIGNED_ITEM_TOOLTIP" = "Hacer clic para usar autenticación PGP"; -"ENCRYPTED_ITEM_TOOLTIP" = "El mensaje será cifrado; hacer clic para enviar un mensaje sin cifrar"; -"CLEAR_ITEM_TOOLTIP" = "El mensaje no será cifrado; hacer clic para usar cifrado PGP"; -"SIGNED_ITEM_TOOLTIP" = "El mensaje será firmado con PGP; hacer clic para enviar un mensaje sin firma PGP"; -"UNSIGNED_ITEM_TOOLTIP" = "El mensaje no tendrá firma PGP; hacer clic para usar una firma PGP"; - -/* Signature information */ -"Bad policy!" = "¡Política defectuosa! "; // Followed by a list of policy URLs -"Policy: " = "Política: "; // Followed by a list of policy URLs -"Signed on %@" = "Firmado el %@"; // Param is a date, whose format is set by SIGNATURE_CREATION_DATE_FORMAT -"SIGNATURE_CREATION_DATE_FORMAT" = "%c"; // See NSCalendarDate documentation for format -"No signature creation date available" = "No hay disponible una fecha de creación de la firma"; -"Key fingerprint: %@" = "Huella de la clave: %@"; -"Key ID: 0x%@" = "ID de clave: 0x%@"; -"No key fingerprint/ID available" = "No se ha encontrado ID o huella de clave"; -"Validity: %@" = "Validez: %@"; // Param is the validity status string -"Signature expires on %@" = "La firma caduca el %@"; // Param is a date, whose format is set by SIGNATURE_EXPIRATION_DATE_FORMAT -"SIGNATURE_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Key expired on %@" = "La clave caducó el %@"; // Param is a date, whose format is set by KEY_EXPIRATION_DATE_FORMAT -"KEY_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Signed by %@." = "Firmado por %@."; // Param is a userID -"Signature from %@ is bad!" = "¡Firma defectuosa de %@!"; // Param us a userID -"Signature is bad!" = "¡Firma defectuosa!"; -"Signature status error." = "Error en el estado de la firma."; -"MISSING KEY %@." = "No se encuentra la clave %@."; // Param is a key ID in hexadecimal -"Signature summary 0x%04x - Signature status %u." = "Error desconocido: resumen de la firma 0x%04x - estado de la firma %u."; // Generic error message; first param is a hex status flag value, second is a decimal status value -"EXCEPTION: %@" = "Error interno: %@"; // Generic error message; param is a string (exception reason, maybe not localized) -"AUTHENTICATING" = "Verificando firma PGP..."; -"UNTRUSTED RECIPIENTS" = "No se confía en al menos una de las claves"; - -/* Title */ -/* Error messages */ -"GPGMAIL_CANNOT_WORK" = "GPGMail no puede funcionar, debido a que su aplicación compañera no pudo reiniciarse. Intente cerrar y volver a abrir Mail y, si el error continúa, envíe un mensaje (en inglés, por favor) a gpgmail@sente.ch"; -"GPGMAIL_CANNOT_WORK_HAS_GPG_%@_VERSION_%@_NEEDS_%@" = "GPGMail no puede funcionar. Se ha encontrado GnuPG (%@) versión %@, pero se necesita al menos la versión %@. Por favor, salga de la aplicación Mail, instale una versión de GnuPG adecuada (por ejemplo, la de MacGPG Project, http://macgpg.sourceforge.net/), y entonces inicie de nuevo Mail."; // First arg is path to gpg, second and third are version strings -"GPGMAIL_CANNOT_WORK_MISSING_GPG_%@_VERSION_%@" = "GPGMail no puede funcionar. No se ha podido encontrar GnuPG (%@) con, al menos, la versión %@. Por favor, salga de la aplicación Mail, instale una versión de GnuPG adecuada (por ejemplo, la de MacGPG Project, http://macgpg.sourceforge.net/), y entonces inicie de nuevo Mail."; // First arg is path to gpg, second is version string -"INVALID_GPGMAIL_VERSION" = "La versión instalada de GPGMail no es compatible con la versión instalada de Mail."; /* Title of alert sheet */ -"NEEDS_COMPATIBLE_BUNDLE_VERSION" = "Es necesario instalar una versión de GPGMail compatible con la versión de sistema operativo. Por favor, vaya a http://gpgmail.org/ para obtenerla."; - -/* Validity */ -"VALIDITY: " = "validez: "; -"Validity=0" = "desconocida"; -"Validity=1" = "sin definir"; -"Validity=2" = "ninguna"; -"Validity=3" = "marginal"; -"Validity=4" = "completa"; -"Validity=5" = "máxima"; - -/* Generic MacGPGME error messages */ -"GPGErrorCode=1" = "Error genérico"; -"GPGErrorCode=8" = "Firma defectuosa"; -"GPGErrorCode=9" = "No hay clave pública"; -"GPGErrorCode=10" = "Error de verificación"; -"GPGErrorCode=11" = "Clave secreta errónea"; -"GPGErrorCode=15" = "Armadura ASCII inválida"; -"GPGErrorCode=17" = "No se encuentra la clave secreta"; -"GPGErrorCode=31" = "Clave no válida"; -"GPGErrorCode=40" = "Error del servidor de claves"; -"GPGErrorCode=53" = "Clave pública no utilizable"; -"GPGErrorCode=54" = "Clave secreta no utilizable"; -"GPGErrorCode=55" = "Valor no válido"; -"GPGErrorCode=58" = "No hay datos"; -"GPGErrorCode=69" = "No implementado"; -"GPGErrorCode=84" = "Algoritmo no soportado"; -"GPGErrorCode=94" = "Clave revocada"; -"GPGErrorCode=99" = "Cancelado"; -"GPGErrorCode=107" = "Nombre ambiguo "; -"GPGErrorCode=116" = "No coinciden las políticas"; -"GPGErrorCode=125" = "Uso erróneo de la clave"; -"GPGErrorCode=150" = "Motor no válido"; -"GPGErrorCode=151" = "No se confía en la clave pública"; -"GPGErrorCode=152" = "Se produjo un fallo al descifrar"; -"GPGErrorCode=153" = "La clave ha caducado"; -"GPGErrorCode=154" = "La firma ha caducado"; -"GPGErrorCode=16383" = "EOF"; - -/* Signature attachment filename (suffixed automatically by .sig) */ -"PGP_SIGNATURE_FILENAME" = "PGP"; - -/* Signature attachment content-description */ -"This is a digitally signed message part" = "Mensaje firmado digitalmente"; - -/* Version MIME part content description header */ -"CONTENT_DESCRIPTION_HEADER" = "Identificación de versión de PGP/MIME"; - -/* Encrypted attachment filename (suffixed automatically by .asc) */ -"PGP_ENCRYPTED_FILENAME" = "PGP"; - -/* Encrypted attachment content-description */ -"This is an encrypted message part" = "Mensaje cifrado con OpenPGP"; - -/* Multiple-part description */ -"MULTIPART_ENCRYPTED_DESCRIPTION" = "Este es un mensaje cifrado con OpenPGP/MIME (RFC 2440 y 3156)"; -"MULTIPART_SIGNED_DESCRIPTION" = "Este es un mensaje firmado con OpenPGP/MIME (RFC 2440 y 3156)"; - -/* Tooltip for banner icons */ -"SIGNATURE_IS_GOOD" = "Firma correcta; el mensaje no ha sido modificado"; -"SIGNATURE_IS_NOT_GOOD" = "Error en la firma; el mensaje ha sido modificado"; - -/* PGP Key Download panel */ -"PGP_SEARCH_KEYS_MENUITEM" = "Buscar claves PGP"; -"SEARCH" = "Buscar"; -"CANCEL_SEARCH" = "Cancelar"; -"SEARCHING" = "Buscando..."; -"NO_MATCHING_KEYS" = "No se ha encontrado una clave adecuada"; -"FOUND_%d_KEYS" = "Se han encontrado %d clave(s) adecuada(s)"; -"DOWNLOAD" = "Descargar"; -"DOWNLOADING" = "Descargando..."; -"DOWNLOADED" = "Claves descargadas e importadas"; -"SEARCH_KEYS_ON_SERVER" = "Buscar claves PGP en servidor de claves"; -"DOWNLOAD_KEYS_FROM_SERVER" = "Descargar claves del servidor de claves"; -"SEARCH_ERROR" = "Se produjo un error en la búsqueda"; -"DOWNLOAD_ERROR" = "Se produjo un error en la descarga"; -" (%u bits)" = " (%u bits)"; -", created on %@" = ", creado el %@"; -", expires on %@" = ", caduca el %@"; -", expired on %@" = ", caducó el %@"; -"REVOKED_KEY - " = "Revocada - "; // Prefixes found key description, when necessary; followed by keyID, userID, etc. - -/* Unmatched PGP keys for receipts - sheet */ -"MISSING_KEYS: DOWNLOAD" = "Algunas direcciones no coinciden con ninguna clave PGP conocida. ¿Desea buscar más claves?"; // Title -"UNMATCHED_ADDRESSES: %@" = "Las siguientes direcciones no coinciden con ninguna clave PGP conocida:\n%@"; // Message -"SEARCH_MATCHING_KEYS" = "Buscar"; // Default button -"SEND_IN_CLEAR" = "Enviar sin cifrar"; // button title; used in dialog after delivery failure due to missing public keys - -"INVALID_HASH_%@" = "El algoritmo de hash '%@' no está permitido según RFC3156."; -"GPGMAIL_VS_PGPMAIL" = "GPGMail no puede funcionar si PGPmail ha diso instalado"; -"GPGMAIL_%@_VS_PGPMAIL_%@" = "Ambos paquetes proveen las mismas funcionalidades, y sólo uno de ellos puede estar instalado. Debe desinstalar, o bien '%@', o '%@'."; -"QUIT" = "Salir"; -"CONTINUE_ANYWAY" = "Intentar continuar"; // Used as button title in modal sheet (PGPmail vs GPGMail) - -/* Composer accessory view header, under To:, CC:, Subject: */ -"PGP:" = "PGP:"; - -/* Key description in popups; prefixes key (actually, primary userID), when necessary; followed by keyID, userID, etc.*/ -"REVOKED_KEY:" = "Revocada:"; -"EXPIRED_KEY:" = "Caducada:"; -"DISABLED_KEY:" = "Desactivada:"; -"INVALID_KEY:" = "Inválida:"; - -/* UserID description in popups; prefixes userID, when necessary; followed by name, email, etc.*/ -"REVOKED_USER_ID:" = "Revocado:"; -"INVALID_USER_ID:" = "Inválido:"; - -/* GPGMail exception reasons */ -"NO_VALID_PUBLIC_KEY" = "No se ha encontrado una clave pública válida. Todas han caducado, han sido desactivadas o revocadas."; // Could be displayed after encryption -"NO_VALID_PRIVATE_KEY" = "No se ha encontrado una clave personal válida. O bien no se ha elegido ninguna, o la clave elegida ha sido revocada, desactivada, o ha caducado."; // Could be displayed after encryption - -/* Alert when user has no PGP key */ -"NO PGP PRIVATE KEY - TITLE" = "No dispone de ninguna clave PGP. No puede utilizar GPGMail para cifrar o firmar mensajes."; -"NO PGP PRIVATE KEY - MESSAGE" = "Si desea poder cifrar o firmar mensajes con PGP, necesita una clave personal PGP. Para crear dicha clave, puede descargar e instalar GPG Keychain Access de MacGPG desde http://macgpg.sourceforge.net/"; - -/* Conflict resolution panel*/ -"" = "Yo"; -"" = "Sí"; -"" = "No"; -"" = "Siempre"; -"" = "Nunca"; -"" = "Aceptar"; - -/* Additional info describing key */ -"DISABLED_KEY_QUALIFIER" = "deshabilitada"; -"INVALID_KEY_QUALIFIER" = "inválida"; -"REVOKED_KEY_QUALIFIER" = "revocada"; -"EXPIRED_KEY_QUALIFIER" = "caducada"; -"CANNOT_ENCRYPT_KEY_QUALIFIER" = "no se puede cifrar"; -"CANNOT_SIGN_KEY_QUALIFIER" = "no se puede firmar"; - -/* Additional info describing userID */ -"INVALID_USER_ID_QUALIFIER" = "inválida"; -"REVOKED_USER_ID_QUALIFIER" = "revocada"; - -"COPY_MSG_URL_MENUITEM" = "Copy Message URL"; -} diff --git a/GPGMail/Resources/Spanish.lproj/GPGMailCompose.nib/classes.nib b/GPGMail/Resources/Spanish.lproj/GPGMailCompose.nib/classes.nib deleted file mode 100644 index 0162fc97..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGMailCompose.nib/classes.nib +++ /dev/null @@ -1,139 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - accessoryView - NSView - - SUPERCLASS - NSObject - - - ACTIONS - - gpgToggleSymetricEncryption - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - alertImageView - NSImageView - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - selectedPersonalKey - id - signSwitch - NSButton - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Spanish.lproj/GPGMailCompose.nib/info.nib b/GPGMail/Resources/Spanish.lproj/GPGMailCompose.nib/info.nib deleted file mode 100644 index 602c04f0..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGMailCompose.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 27 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Spanish.lproj/GPGMailCompose.nib/keyedobjects.nib b/GPGMail/Resources/Spanish.lproj/GPGMailCompose.nib/keyedobjects.nib deleted file mode 100644 index 1d1c2744..00000000 Binary files a/GPGMail/Resources/Spanish.lproj/GPGMailCompose.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Spanish.lproj/GPGMailComposeTiger.nib/classes.nib b/GPGMail/Resources/Spanish.lproj/GPGMailComposeTiger.nib/classes.nib deleted file mode 100644 index 079c9142..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGMailComposeTiger.nib/classes.nib +++ /dev/null @@ -1,134 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - OUTLETS - - _optionSwitch - NSButton - _primaryView - NSView - - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - signSwitch - NSButton - switchProtoMatrix - NSMatrix - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Spanish.lproj/GPGMailComposeTiger.nib/info.nib b/GPGMail/Resources/Spanish.lproj/GPGMailComposeTiger.nib/info.nib deleted file mode 100644 index 34312e23..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGMailComposeTiger.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 38 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Spanish.lproj/GPGMailComposeTiger.nib/keyedobjects.nib b/GPGMail/Resources/Spanish.lproj/GPGMailComposeTiger.nib/keyedobjects.nib deleted file mode 100644 index 49cede1f..00000000 Binary files a/GPGMail/Resources/Spanish.lproj/GPGMailComposeTiger.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Spanish.lproj/GPGMailPreferences.nib/classes.nib b/GPGMail/Resources/Spanish.lproj/GPGMailPreferences.nib/classes.nib deleted file mode 100644 index b621acc6..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGMailPreferences.nib/classes.nib +++ /dev/null @@ -1,186 +0,0 @@ - - - - - IBClasses - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - changeDefaultKey - id - changeLineWrapping - id - changePassphraseStrategy - id - changePassphraseTimeout - id - exportGPGMailConfiguration - id - flushCachedPassphrases - id - refreshKeys - id - toggleAlwaysEncryptMessages - id - toggleAlwaysSignMessages - id - toggleAuthenticateUnreadMessagesAutomatically - id - toggleAuthenticatesMessagesAutomatically - id - toggleAutomaticPersonalKeyChoice - id - toggleBCCRecipientsUse - id - toggleButtonsBehavior - id - toggleDecryptsMessagesAutomatically - id - toggleDecryptsUnreadMessagesAutomatically - id - toggleDisplayAccessoryView - id - toggleEncryptToSelf - id - toggleEncryptWhenPossible - id - toggleEncryptedReplyToEncryptedMessage - id - toggleExtendedInformation - id - toggleFilterKeys - id - toggleKeyRefresh - id - toggleOpenPGPMIME - id - toggleSMIME - id - toggleSeparatePGPOperations - id - toggleShowKeyInformation - id - toggleShowPassphrase - id - toggleShowUserIDs - id - toggleSignWhenEncrypting - id - toggleSignedReplyToSignedMessage - id - toggleSmartRules - id - toggleTrustAllKeys - id - - CLASS - GPGMailPreferences - LANGUAGE - ObjC - OUTLETS - - alwaysEncryptSwitchButton - NSButton - alwaysSignSwitchButton - NSButton - authenticateUnreadMessagesSwitchButton - NSButton - automaticallyAuthenticateMessagesSwitchButton - NSButton - automaticallyDecryptMessagesSwitchButton - NSButton - buttonsShowStateSwitchButton - NSButton - choosesPersonalKeyAccordingToAccountSwitchButton - NSButton - contactTextField - NSTextField - decryptUnreadMessagesSwitchButton - NSButton - disableSMIMESwitchButton - NSButton - displayButtonInComposeWindowSwitchButton - NSButton - encryptReplyToEncryptedMessageSwitchButton - NSButton - encryptToSelfSwitchButton - NSButton - encryptWhenAllKeysAvailableSwitchButton - NSButton - extendedInfoSwitchButton - NSButton - filtersKeysSwitchButton - NSButton - keyIdentifiersPopUpButton - NSPopUpButton - keyIdentifiersTableView - NSTableView - lineWrappingFormCell - NSFormCell - openPGPMIMESwitchButton - NSButton - passphraseStrategyMatrix - NSMatrix - passphraseTimeoutFormCell - NSFormCell - personalKeysPopUpButton - NSPopUpButton - refreshKeysOnVolumeChangeSwitchButton - NSButton - separateSignAndEncryptOperationsSwitchButton - NSButton - showUserIDsSwitchButton - NSButton - showsPassphraseSwitchButton - NSButton - signReplyToSignedMessageSwitchButton - NSButton - signWhenEncryptingSwitchButton - NSButton - trustAllKeysSwitchButton - NSButton - useBCCRecipientsSwitchButton - NSButton - useSmartRulesSwitchButton - NSButton - versionTextField - NSTextField - webSiteTextField - NSTextField - - SUPERCLASS - NSPreferencesModule - - - CLASS - NSPreferencesModule - LANGUAGE - ObjC - OUTLETS - - preferencesView - id - - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Spanish.lproj/GPGMailPreferences.nib/info.nib b/GPGMail/Resources/Spanish.lproj/GPGMailPreferences.nib/info.nib deleted file mode 100644 index 620826c6..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGMailPreferences.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 220 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Spanish.lproj/GPGMailPreferences.nib/keyedobjects.nib b/GPGMail/Resources/Spanish.lproj/GPGMailPreferences.nib/keyedobjects.nib deleted file mode 100644 index 9127c4ee..00000000 Binary files a/GPGMail/Resources/Spanish.lproj/GPGMailPreferences.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Spanish.lproj/GPGMenu.nib/classes.nib b/GPGMail/Resources/Spanish.lproj/GPGMenu.nib/classes.nib deleted file mode 100644 index 6ac982ef..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGMenu.nib/classes.nib +++ /dev/null @@ -1,57 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = { - gpgAuthenticate = id; - gpgChoosePersonalKeys = id; - gpgChoosePublicKeys = id; - gpgDecrypt = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - gpgChoosePersonalKey = id; - gpgChoosePublicKey = id; - gpgChoosePublicKeys = id; - gpgReloadPGPKeys = id; - gpgSearchKeys = id; - gpgToggleAutomaticPublicKeysChoice = id; - gpgToggleDisplayAllUserIDs = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleShowKeyInformation = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - mailTo = id; - }; - CLASS = GPGMailBundle; - LANGUAGE = ObjC; - OUTLETS = { - PGPMenu = NSMenu; - PGPViewMenu = NSMenu; - allUserIDsMenuItem = NSMenuItem; - authenticateMenuItem = NSMenuItem; - automaticPublicKeysMenuItem = NSMenuItem; - choosePublicKeysMenuItem = NSMenuItem; - decryptMenuItem = NSMenuItem; - defaultKey = id; - encryptsNewMessageMenuItem = NSMenuItem; - personalKeysMenuItem = NSMenuItem; - proxyServer = id; - signsNewMessageMenuItem = NSMenuItem; - symetricEncryptionMenuItem = NSMenuItem; - usesOnlyOpenPGPStyleMenuItem = NSMenuItem; - }; - SUPERCLASS = MVMailBundle; - }, - {CLASS = MVMailBundle; LANGUAGE = ObjC; SUPERCLASS = NSObject; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/Spanish.lproj/GPGMenu.nib/info.nib b/GPGMail/Resources/Spanish.lproj/GPGMenu.nib/info.nib deleted file mode 100644 index b3c9256a..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGMenu.nib/info.nib +++ /dev/null @@ -1,24 +0,0 @@ - - - - - IBDocumentLocation - 84 120 356 278 0 0 1024 746 - IBEditorPositions - - 34 - 259 798 240 230 0 0 1680 1028 - 88 - 688 834 196 194 0 0 1680 1028 - - IBFramework Version - 437.0 - IBOpenObjects - - 34 - 88 - - IBSystem Version - 8A428 - - diff --git a/GPGMail/Resources/Spanish.lproj/GPGMenu.nib/objects.nib b/GPGMail/Resources/Spanish.lproj/GPGMenu.nib/objects.nib deleted file mode 100644 index eef5fabc..00000000 Binary files a/GPGMail/Resources/Spanish.lproj/GPGMenu.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/Spanish.lproj/GPGMessageViewerAccessoryView.nib/classes.nib b/GPGMail/Resources/Spanish.lproj/GPGMessageViewerAccessoryView.nib/classes.nib deleted file mode 100644 index 5c956adf..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGMessageViewerAccessoryView.nib/classes.nib +++ /dev/null @@ -1,112 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - authenticate - id - decrypt - id - gpgAuthenticate - id - gpgDecrypt - id - toggleSignatureExtraView - id - - CLASS - GPGMessageViewerAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - authenticationButton - NSButton - authenticationView - NSView - decryptedIconView - NSImageView - decryptedInfoView - NSView - decryptedMessageTextField - NSTextField - decryptionButton - NSButton - decryptionView - NSView - delegate - id - disclosureButton - NSButton - expirationAlertIconView - NSImageView - generalAlertIconView - NSImageView - policyAlertIconView - NSImageView - signatureBadPolicyAlertTextField - NSTextField - signatureCreationDateTextField - NSTextField - signatureExpirationDateTextField - NSTextField - signatureIconView - NSImageView - signatureKeyFingerprintTextField - NSTextField - signatureLowerView - NSView - signatureMessageTextField - NSTextField - signatureToggleButton - NSButton - signatureUpperView - NSView - signatureValidityTextField - NSTextField - signatureView - NSView - trustAlertIconView - NSImageView - userIDsPopDownButton - NSPopUpButton - - SUPERCLASS - NSObject - - - ACTIONS - - - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Spanish.lproj/GPGMessageViewerAccessoryView.nib/info.nib b/GPGMail/Resources/Spanish.lproj/GPGMessageViewerAccessoryView.nib/info.nib deleted file mode 100644 index 6b6a5d73..00000000 --- a/GPGMail/Resources/Spanish.lproj/GPGMessageViewerAccessoryView.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 67 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Spanish.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib b/GPGMail/Resources/Spanish.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib deleted file mode 100644 index 97a7c4d0..00000000 Binary files a/GPGMail/Resources/Spanish.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Spanish.lproj/InfoPlist.strings b/GPGMail/Resources/Spanish.lproj/InfoPlist.strings deleted file mode 100755 index 12fbe158..00000000 --- a/GPGMail/Resources/Spanish.lproj/InfoPlist.strings +++ /dev/null @@ -1,6 +0,0 @@ -/* Localized versions of Info.plist keys */ - -CFBundleShortVersionString = "1.2.3 (v62)"; -CFBundleGetInfoHTML = "GPGMail versión 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -CFBundleGetInfoString = "GPGMail versión 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -NSHumanReadableCopyright = "© Stéphane Corthésy, 2000-2008"; diff --git a/GPGMail/Resources/Swedish.lproj/GPGKeyDownload.nib/classes.nib b/GPGMail/Resources/Swedish.lproj/GPGKeyDownload.nib/classes.nib deleted file mode 100644 index abce7a58..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGKeyDownload.nib/classes.nib +++ /dev/null @@ -1,75 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - cancel - id - gpgSearchKeys - id - import - id - search - id - - CLASS - GPGKeyDownload - LANGUAGE - ObjC - OUTLETS - - checkBoxMatrix - NSMatrix - context - id - emailCell - NSFormCell - importButton - NSButton - importProgressField - NSTextField - importProgressIndicator - NSProgressIndicator - outlineView - NSOutlineView - searchButton - NSButton - searchProgressField - NSTextField - searchProgressIndicator - NSProgressIndicator - serverComboBox - NSComboBox - subtitleField - NSTextField - tabView - NSTabView - titleField - NSTextField - - SUPERCLASS - NSWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Swedish.lproj/GPGKeyDownload.nib/info.nib b/GPGMail/Resources/Swedish.lproj/GPGKeyDownload.nib/info.nib deleted file mode 100644 index 7ec1fc41..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGKeyDownload.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - 42 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Swedish.lproj/GPGKeyDownload.nib/keyedobjects.nib b/GPGMail/Resources/Swedish.lproj/GPGKeyDownload.nib/keyedobjects.nib deleted file mode 100644 index f0dbde5e..00000000 Binary files a/GPGMail/Resources/Swedish.lproj/GPGKeyDownload.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Swedish.lproj/GPGMail.strings b/GPGMail/Resources/Swedish.lproj/GPGMail.strings deleted file mode 100644 index a0c9d715..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGMail.strings +++ /dev/null @@ -1,239 +0,0 @@ -{ -/* Passphrase panel titles */ -"MESSAGE_AUTHENTICATION_TITLE" = "Autentisering av meddelande"; -"MESSAGE_DECRYPTION_PASSPHRASE_TITLE" = "Dekryptering av meddelande"; - -/**/ -"DECRYPTING" = "Dekrypterar..."; -"ENCRYPTING" = "Krypterar..."; - -/* submenu title */ -"PGP_MENU" = "PGP"; -/* submenu title */ -"PGP_KEYS_MENU" = "PGP-Nycklar"; - -/* submenu items */ -"DECRYPT_MENU" = "Dekryptera"; -"AUTHENTICATE_MENU" = "Autentisera"; -"ENCRYPT_MENU" = "Kryptera nytt meddelande"; -"SIGN_MENU" = "Signera nytt meddelande"; - -/* Description of version prefixed with */ -"VERSION: %@" = "Version: %@"; - -/* PGP preferences panel name */ -"PGP_PREFERENCES" = "PGP"; - -/* Alert title and message */ -"MSG_DECRYPTION_ALERT_TITLE_NOT_SIGNED" = "Dekryptering av meddelande"; -"DECRYPTED_MSG_NOT_SIGNED" = "Meddelandet har krypterats men har inte signerats. Dess autenticitet kan inte bevisas."; -"MSG_ENCRYPTION_ALERT_TITLE" = "PGP-kryptering misslyckades"; -"MSG_DECRYPTION_ALERT_TITLE" = "PGP-dekryptering misslyckades"; -"MSG_SIGNING_ALERT_TITLE" = "PGP-signering misslyckades"; -"UNSUPPORTED_ENCRYPTION_FORMAT" = "GPGMail kan inte dekryptera denna typ av krypterade meddelanden."; -"DATA_NOT_AVAILABLE" = "Innehållet i meddelandet är ej tillgängligt för tillfället."; - -/* Informational alert title and message */ -"AUTHENTICATION_TITLE_OK" = "PGP-autentisering"; - -/**/ -"AUTHENTICATION_TITLE_FAILED" = "PGP-autentisering misslyckades"; -"TRY_AGAIN" = "Försök igen"; -"CANCEL_DELIVERY" = "Avbryt"; -"CANCEL_DECRYPTION" = "Avbryt"; - -/**/ -"AUTHENTICATION_TITLE_UNSIGNED" = "PGP-autentisering"; -"UNSIGNED_PGP_MESSAGE" = "Detta meddelande är inte signerat med PGP."; - -/* Toolbar item titles */ -"DECRYPT_ITEM" = "Dekryptera"; -"AUTHENTICATE_ITEM" = "Autentisera"; -"MAKE_ENCRYPTED_ITEM" = "Gör krypterat"; -"MAKE_CLEAR_ITEM" = "Gör i klartext"; -"MAKE_UNSIGNED_ITEM" = "Gör osignerat"; -"MAKE_SIGNED_ITEM" = "Gör signerat"; -"ENCRYPTED_ITEM" = "Krypterat"; -"CLEAR_ITEM" = "I klartext"; -"SIGNED_ITEM" = "Signerat"; -"UNSIGNED_ITEM" = "Osignerat"; - -/* Toolbar item tooltips */ -"DECRYPT_ITEM_TOOLTIP" = "Dekryptera PGP-krypterat meddelande"; -"AUTHENTICATE_ITEM_TOOLTIP" = "Autentisera PGP-signerat meddelande"; -"MAKE_CLEAR_ITEM_TOOLTIP" = "Klicka för att skicka ett meddelande i klartext"; -"MAKE_ENCRYPTED_ITEM_TOOLTIP" = "Klicka för att använda PGP-kryptering"; -"MAKE_UNSIGNED_ITEM_TOOLTIP" = "Klicka för att skicka ett meddelande utan PGP-autentisering"; -"MAKE_SIGNED_ITEM_TOOLTIP" = "Klicka för att använda PGP-autentisering"; -"ENCRYPTED_ITEM_TOOLTIP" = "Meddelandet kommer att krypteras; klicka för att skicka meddelandet i klartext"; -"CLEAR_ITEM_TOOLTIP" = "Meddelande kommer att skickas i klartext; klicka för att använda PGP-kryptering"; -"SIGNED_ITEM_TOOLTIP" = "Meddelandet kommer att signeras med PGP; klicka för att skicka meddelandet utan PGP-autentisering"; -"UNSIGNED_ITEM_TOOLTIP" = "Meddelandet kommer inte att signeras med PGP; klicka för att använda PGP-autentisering"; - -/* Signature information */ -"Bad policy!" = "Dålig policy! "; // Followed by a list of policy URLs -"Policy: " = "Policy: "; // Followed by a list of policy URLs -"Signed on %@" = "Signerat den %@"; // Param is a date, whose format is set by SIGNATURE_CREATION_DATE_FORMAT -"SIGNATURE_CREATION_DATE_FORMAT" = "%c"; // See NSCalendarDate documentation for format -"No signature creation date available" = "Det finns inget datum för signaturens skapande"; -"Key fingerprint: %@" = "Nyckelns fingeravtryck: %@"; -"Key ID: 0x%@" = "Nyckel-ID: 0x%@"; -"No key fingerprint/ID available" = "Inget fingeravtryck/ID finns att tillgå för nyckeln"; -"Validity: %@" = "Validitet: %@"; // Param is the validity status string -"Signature expires on %@" = "Signatur går ut den %@"; // Param is a date, whose format is set by SIGNATURE_EXPIRATION_DATE_FORMAT -"SIGNATURE_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Key expired on %@" = "Nyckel gick ut den %@"; // Param is a date, whose format is set by KEY_EXPIRATION_DATE_FORMAT -"KEY_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Signed by %@." = "Signerat av %@."; // Param is a userID -"Signature from %@ is bad!" = "Dålig signatur från %@!"; // Param is a userID -"Signature is bad!" = "Dålig signatur!"; -"Signature status error." = "Signaturstatus-fel."; -"MISSING KEY %@." = "Saknad nyckel %@."; // Param is a key ID in hexadecimal -"Signature summary 0x%04x - Signature status %u." = "Okänt fel: signatursammanfattning 0x%04x - signaturstatus %u."; // Generic error message; first param is a hex status flag value, second is a decimal status value -"EXCEPTION: %@" = "Internt fel: %@"; // Generic error message; param is a string (exception reason, maybe not localized) -"AUTHENTICATING" = "Verifierar PGP-signatur..."; -"UNTRUSTED RECIPIENTS" = "Åtminstone en av nycklarna är inte betrodd"; - -/* Title */ -/* Error messages */ -"GPGMAIL_CANNOT_WORK" = "GPGMail kan inte fungera eftersom en hjälpapplikation inte kunde startas. Försök starta om Mail. Kvarstår felet, skicka ett meddelande till gpgmail@sente.ch"; -"GPGMAIL_CANNOT_WORK_HAS_GPG_%@_VERSION_%@_NEEDS_%@" = "GPGMail kan inte fungera. GnuPG (%@) version %@ hittades, men GPGMail kräver åtminstone version %@. Avsluta Mail, installera en matchande GnuPG-version (till exempel från MacGPG Project, http://macgpg.sourceforge.net/), återstarta därefter Mail."; // First arg is path to gpg, second and third are version strings -"GPGMAIL_CANNOT_WORK_MISSING_GPG_%@_VERSION_%@" = "GPGMail kan inte fungera. GnuPG (%@) med åtminstone version %@ kunde inte hittas. Avsluta Mail, installera en matchande GnuPG-version (till exempel från MacGPG Project, http://macgpg.sourceforge.net/), återstarta därefter Mail."; // First arg is path to gpg, second is version string -"INVALID_GPGMAIL_VERSION" = "Din version av GPGMail är inte kompatibel med din version av Mail."; /* Title of alert sheet */ -"NEEDS_COMPATIBLE_BUNDLE_VERSION" = "Du måste ladda ned och installera en GPGMail-version som motsvarar din version av Mac OS. Gå till http://gpgmail.org/ för att hämta den."; - -/* Validity */ -"VALIDITY: " = "validitet: "; -"Validity=0" = "okänd"; -"Validity=1" = "odefinierad"; -"Validity=2" = "aldrig"; -"Validity=3" = "marginell"; -"Validity=4" = "full"; -"Validity=5" = "ultimat"; - -/* Generic MacGPGME error messages */ -"GPGErrorCode=1" = "Generellt fel"; -"GPGErrorCode=8" = "Dålig signatur"; -"GPGErrorCode=9" = "Ingen publik nyckel"; -"GPGErrorCode=10" = "Fel checksumma"; -"GPGErrorCode=11" = "Fel på lösenord"; -"GPGErrorCode=15" = "Ogiltigt skydd"; -"GPGErrorCode=17" = "Ingen hemlig nyckel"; -"GPGErrorCode=31" = "Ogiltigt lösenord"; -"GPGErrorCode=40" = "Fel vid anslutning till nyckelserver"; -"GPGErrorCode=53" = "Oanvändbar publik nyckel"; -"GPGErrorCode=54" = "Oanvändbar hemlig nyckel"; -"GPGErrorCode=55" = "Ogiltigt värde"; -"GPGErrorCode=58" = "Ingen data"; -"GPGErrorCode=69" = "Ej implementerat"; -"GPGErrorCode=84" = "Algoritm stöds inte"; -"GPGErrorCode=94" = "Nyckel återkallad"; -"GPGErrorCode=99" = "Avbruten"; -"GPGErrorCode=107" = "Tvetydigt namn"; -"GPGErrorCode=116" = "Ingen matchande policy"; -"GPGErrorCode=125" = "Felaktigt nyckelanvändande"; -"GPGErrorCode=150" = "Ogiltig motor"; -"GPGErrorCode=151" = "Publik nyckel är inte betrodd"; -"GPGErrorCode=152" = "Dekryptering misslyckades"; -"GPGErrorCode=153" = "Nyckeln är utgången"; -"GPGErrorCode=154" = "Signaturen är utgången"; -"GPGErrorCode=16383" = "EOF"; - -/* Signature attachment filename (suffixed automatically by .sig) */ -"PGP_SIGNATURE_FILENAME" = "PGP"; - -/* Signature attachment content-description */ -"This is a digitally signed message part" = "Detta är en digitalt signerad del av meddelandet"; - -/* Version MIME part content description header */ -"CONTENT_DESCRIPTION_HEADER" = "PGP/MIME version identification"; - -/* Encrypted attachment filename (suffixed automatically by .asc) */ -"PGP_ENCRYPTED_FILENAME" = "PGP"; - -/* Encrypted attachment content-description */ -"This is an encrypted message part" = "OpenPGP-krypterat meddelande"; - -/* Multiple-part description */ -"MULTIPART_ENCRYPTED_DESCRIPTION" = "Detta är ett OpenPGP/MIME-krypterat meddelande (RFC 2440 och 3156)"; -"MULTIPART_SIGNED_DESCRIPTION" = "Detta är ett OpenPGP/MIME-signerat meddelande (RFC 2440 och 3156)"; - -/* Tooltip for banner icons */ -"SIGNATURE_IS_GOOD" = "Signaturen är OK; meddelandet har inte förändrats"; -"SIGNATURE_IS_NOT_GOOD" = "Signaturen är dålig; meddelandet har förändrats"; - -/* PGP Key Download panel */ -"PGP_SEARCH_KEYS_MENUITEM" = "PGP-Nyckelsökning"; -"SEARCH" = "Sök"; -"CANCEL_SEARCH" = "Avbryt"; -"SEARCHING" = "Söker..."; -"NO_MATCHING_KEYS" = "Ingen matchande nyckel"; -"FOUND_%d_KEYS" = "Fann %d matchande nyckel/nycklar"; -"DOWNLOAD" = "Ladda ner"; -"DOWNLOADING" = "Laddar ner..."; -"DOWNLOADED" = "Laddade ner och importerade nyckel/nycklar"; -"SEARCH_KEYS_ON_SERVER" = "Sök PGP-nycklar på nyckelserver"; -"DOWNLOAD_KEYS_FROM_SERVER" = "Ladda ner PGP-nycklar från nyckelserver"; -"SEARCH_ERROR" = "Ett fel inträffade under sökningen"; -"DOWNLOAD_ERROR" = "Ett fel inträffade under nedladdningen"; -" (%u bits)" = " (%u bitar)"; -", created on %@" = ", skapad den %@"; -", expires on %@" = ", går ut den %@"; -", expired on %@" = ", gick ut den %@"; -"REVOKED_KEY - " = "Återkallad - "; // Prefixes found key description, when necessary; followed by keyID, userID, etc. - -/* Unmatched PGP keys for receipts - sheet */ -"MISSING_KEYS: DOWNLOAD" = "Somliga adresser matchar ingen PGP-nyckel. Sök efter nycklar?"; // Title -"UNMATCHED_ADDRESSES: %@" = "Följande adresser har ingen matchande PGP-nyckel:\n%@"; // Message -"SEARCH_MATCHING_KEYS" = "Sök"; // Default button -"SEND_IN_CLEAR" = "Skicka i klartext"; // Other button - -"INVALID_HASH_%@" = "Hash-algoritmen '%@' tillåts inte av RFC3156."; -"GPGMAIL_VS_PGPMAIL" = "GPGMail kan inte fungera med PGPmail installerat"; -"GPGMAIL_%@_VS_PGPMAIL_%@" = "Båda paketen ger samma funktionalitet men använder olika motorer, och endast en av dem kan vara installerad. Du måste antingen ta bort '%@', eller '%@'."; -"QUIT" = "Avsluta"; -"CONTINUE_ANYWAY" = "Försök fortsätta"; - -/* Composer accessory view header, under To:, CC:, Subject: */ -"PGP:" = "PGP:"; - -/* Key description in popups; prefixes key (actually, primary userID), when necessary; followed by keyID, userID, etc.*/ -"REVOKED_KEY:" = "Återkallad:"; -"EXPIRED_KEY:" = "Utgången:"; -"DISABLED_KEY:" = "Avstängd:"; -"INVALID_KEY:" = "Ogiltig:"; - -/* UserID description in popups; prefixes userID, when necessary; followed by name, email, etc.*/ -"REVOKED_USER_ID:" = "Återkallad:"; -"INVALID_USER_ID:" = "Ogiltig:"; - -/* GPGMail exception reasons */ -"NO_VALID_PUBLIC_KEY" = "Ingen giltig publik nyckel kan hittas. De har alla antingen gått ut, stängts av eller återkallats."; // Could be displayed after encryption -"NO_VALID_PRIVATE_KEY" = "Ingen giltig privat nyckel kan hittas. Antingen har ingen nyckel valts eller också har vald nyckel gått ut, stängts av eller återkallats."; // Could be displayed after encryption - -/* Alert when user has no PGP key */ -"NO PGP PRIVATE KEY - TITLE" = "Du har ingen PGP-nyckel. Du kan inte använda GPGMail för att kryptera eller signera meddelanden."; -"NO PGP PRIVATE KEY - MESSAGE" = "Om du vill kunna kryptera eller signera meddelanden med PGP, behöver du en personlig PGP-nyckel. För att skapa en PGP-nyckel, ladda ner och installera MacGPGs GPG Keychain Access (GPG Nyckelhanterare) från http://macgpg.sourceforge.net/"; - -/* Conflict resolution panel*/ -"" = "Jag"; -"" = "Ja"; -"" = "Nej"; -"" = "Alltid"; -"" = "Aldrig"; -"" = "Accepterar"; - -/* Additional info describing key */ -"DISABLED_KEY_QUALIFIER" = "avstängd"; -"INVALID_KEY_QUALIFIER" = "ogiltig"; -"REVOKED_KEY_QUALIFIER" = "återkallad"; -"EXPIRED_KEY_QUALIFIER" = "utgången"; -"CANNOT_ENCRYPT_KEY_QUALIFIER" = "kan inte kryptera"; -"CANNOT_SIGN_KEY_QUALIFIER" = "kan inte signera"; - -/* Additional info describing userID */ -"INVALID_USER_ID_QUALIFIER" = "ogiltig"; -"REVOKED_USER_ID_QUALIFIER" = "återkallad"; - -"COPY_MSG_URL_MENUITEM" = "Copy Message URL"; -} diff --git a/GPGMail/Resources/Swedish.lproj/GPGMailCompose.nib/classes.nib b/GPGMail/Resources/Swedish.lproj/GPGMailCompose.nib/classes.nib deleted file mode 100644 index 0162fc97..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGMailCompose.nib/classes.nib +++ /dev/null @@ -1,139 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - accessoryView - NSView - - SUPERCLASS - NSObject - - - ACTIONS - - gpgToggleSymetricEncryption - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - alertImageView - NSImageView - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - selectedPersonalKey - id - signSwitch - NSButton - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Swedish.lproj/GPGMailCompose.nib/info.nib b/GPGMail/Resources/Swedish.lproj/GPGMailCompose.nib/info.nib deleted file mode 100644 index 602c04f0..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGMailCompose.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 27 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Swedish.lproj/GPGMailCompose.nib/keyedobjects.nib b/GPGMail/Resources/Swedish.lproj/GPGMailCompose.nib/keyedobjects.nib deleted file mode 100644 index 9064416f..00000000 Binary files a/GPGMail/Resources/Swedish.lproj/GPGMailCompose.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Swedish.lproj/GPGMailComposeTiger.nib/classes.nib b/GPGMail/Resources/Swedish.lproj/GPGMailComposeTiger.nib/classes.nib deleted file mode 100644 index 079c9142..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGMailComposeTiger.nib/classes.nib +++ /dev/null @@ -1,134 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - OUTLETS - - _optionSwitch - NSButton - _primaryView - NSView - - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - signSwitch - NSButton - switchProtoMatrix - NSMatrix - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Swedish.lproj/GPGMailComposeTiger.nib/info.nib b/GPGMail/Resources/Swedish.lproj/GPGMailComposeTiger.nib/info.nib deleted file mode 100644 index 83e73ad2..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGMailComposeTiger.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 5 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Swedish.lproj/GPGMailComposeTiger.nib/keyedobjects.nib b/GPGMail/Resources/Swedish.lproj/GPGMailComposeTiger.nib/keyedobjects.nib deleted file mode 100644 index 4ae1ab30..00000000 Binary files a/GPGMail/Resources/Swedish.lproj/GPGMailComposeTiger.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Swedish.lproj/GPGMailPreferences.nib/classes.nib b/GPGMail/Resources/Swedish.lproj/GPGMailPreferences.nib/classes.nib deleted file mode 100644 index b621acc6..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGMailPreferences.nib/classes.nib +++ /dev/null @@ -1,186 +0,0 @@ - - - - - IBClasses - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - changeDefaultKey - id - changeLineWrapping - id - changePassphraseStrategy - id - changePassphraseTimeout - id - exportGPGMailConfiguration - id - flushCachedPassphrases - id - refreshKeys - id - toggleAlwaysEncryptMessages - id - toggleAlwaysSignMessages - id - toggleAuthenticateUnreadMessagesAutomatically - id - toggleAuthenticatesMessagesAutomatically - id - toggleAutomaticPersonalKeyChoice - id - toggleBCCRecipientsUse - id - toggleButtonsBehavior - id - toggleDecryptsMessagesAutomatically - id - toggleDecryptsUnreadMessagesAutomatically - id - toggleDisplayAccessoryView - id - toggleEncryptToSelf - id - toggleEncryptWhenPossible - id - toggleEncryptedReplyToEncryptedMessage - id - toggleExtendedInformation - id - toggleFilterKeys - id - toggleKeyRefresh - id - toggleOpenPGPMIME - id - toggleSMIME - id - toggleSeparatePGPOperations - id - toggleShowKeyInformation - id - toggleShowPassphrase - id - toggleShowUserIDs - id - toggleSignWhenEncrypting - id - toggleSignedReplyToSignedMessage - id - toggleSmartRules - id - toggleTrustAllKeys - id - - CLASS - GPGMailPreferences - LANGUAGE - ObjC - OUTLETS - - alwaysEncryptSwitchButton - NSButton - alwaysSignSwitchButton - NSButton - authenticateUnreadMessagesSwitchButton - NSButton - automaticallyAuthenticateMessagesSwitchButton - NSButton - automaticallyDecryptMessagesSwitchButton - NSButton - buttonsShowStateSwitchButton - NSButton - choosesPersonalKeyAccordingToAccountSwitchButton - NSButton - contactTextField - NSTextField - decryptUnreadMessagesSwitchButton - NSButton - disableSMIMESwitchButton - NSButton - displayButtonInComposeWindowSwitchButton - NSButton - encryptReplyToEncryptedMessageSwitchButton - NSButton - encryptToSelfSwitchButton - NSButton - encryptWhenAllKeysAvailableSwitchButton - NSButton - extendedInfoSwitchButton - NSButton - filtersKeysSwitchButton - NSButton - keyIdentifiersPopUpButton - NSPopUpButton - keyIdentifiersTableView - NSTableView - lineWrappingFormCell - NSFormCell - openPGPMIMESwitchButton - NSButton - passphraseStrategyMatrix - NSMatrix - passphraseTimeoutFormCell - NSFormCell - personalKeysPopUpButton - NSPopUpButton - refreshKeysOnVolumeChangeSwitchButton - NSButton - separateSignAndEncryptOperationsSwitchButton - NSButton - showUserIDsSwitchButton - NSButton - showsPassphraseSwitchButton - NSButton - signReplyToSignedMessageSwitchButton - NSButton - signWhenEncryptingSwitchButton - NSButton - trustAllKeysSwitchButton - NSButton - useBCCRecipientsSwitchButton - NSButton - useSmartRulesSwitchButton - NSButton - versionTextField - NSTextField - webSiteTextField - NSTextField - - SUPERCLASS - NSPreferencesModule - - - CLASS - NSPreferencesModule - LANGUAGE - ObjC - OUTLETS - - preferencesView - id - - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Swedish.lproj/GPGMailPreferences.nib/info.nib b/GPGMail/Resources/Swedish.lproj/GPGMailPreferences.nib/info.nib deleted file mode 100644 index abb1d851..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGMailPreferences.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 158 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Swedish.lproj/GPGMailPreferences.nib/keyedobjects.nib b/GPGMail/Resources/Swedish.lproj/GPGMailPreferences.nib/keyedobjects.nib deleted file mode 100644 index bf93be50..00000000 Binary files a/GPGMail/Resources/Swedish.lproj/GPGMailPreferences.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Swedish.lproj/GPGMenu.nib/classes.nib b/GPGMail/Resources/Swedish.lproj/GPGMenu.nib/classes.nib deleted file mode 100644 index 6ac982ef..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGMenu.nib/classes.nib +++ /dev/null @@ -1,57 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = { - gpgAuthenticate = id; - gpgChoosePersonalKeys = id; - gpgChoosePublicKeys = id; - gpgDecrypt = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - gpgChoosePersonalKey = id; - gpgChoosePublicKey = id; - gpgChoosePublicKeys = id; - gpgReloadPGPKeys = id; - gpgSearchKeys = id; - gpgToggleAutomaticPublicKeysChoice = id; - gpgToggleDisplayAllUserIDs = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleShowKeyInformation = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - mailTo = id; - }; - CLASS = GPGMailBundle; - LANGUAGE = ObjC; - OUTLETS = { - PGPMenu = NSMenu; - PGPViewMenu = NSMenu; - allUserIDsMenuItem = NSMenuItem; - authenticateMenuItem = NSMenuItem; - automaticPublicKeysMenuItem = NSMenuItem; - choosePublicKeysMenuItem = NSMenuItem; - decryptMenuItem = NSMenuItem; - defaultKey = id; - encryptsNewMessageMenuItem = NSMenuItem; - personalKeysMenuItem = NSMenuItem; - proxyServer = id; - signsNewMessageMenuItem = NSMenuItem; - symetricEncryptionMenuItem = NSMenuItem; - usesOnlyOpenPGPStyleMenuItem = NSMenuItem; - }; - SUPERCLASS = MVMailBundle; - }, - {CLASS = MVMailBundle; LANGUAGE = ObjC; SUPERCLASS = NSObject; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/Swedish.lproj/GPGMenu.nib/info.nib b/GPGMail/Resources/Swedish.lproj/GPGMenu.nib/info.nib deleted file mode 100644 index 7d5828f4..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGMenu.nib/info.nib +++ /dev/null @@ -1,24 +0,0 @@ - - - - - IBDocumentLocation - 614 138 356 278 0 0 1680 1028 - IBEditorPositions - - 34 - 202 648 280 230 0 0 1280 1002 - 88 - 486 685 159 194 0 0 1280 1002 - - IBFramework Version - 439.0 - IBOpenObjects - - 34 - 88 - - IBSystem Version - 8I127 - - diff --git a/GPGMail/Resources/Swedish.lproj/GPGMenu.nib/objects.nib b/GPGMail/Resources/Swedish.lproj/GPGMenu.nib/objects.nib deleted file mode 100644 index 8024bf8b..00000000 Binary files a/GPGMail/Resources/Swedish.lproj/GPGMenu.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/Swedish.lproj/GPGMessageViewerAccessoryView.nib/classes.nib b/GPGMail/Resources/Swedish.lproj/GPGMessageViewerAccessoryView.nib/classes.nib deleted file mode 100644 index 5c956adf..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGMessageViewerAccessoryView.nib/classes.nib +++ /dev/null @@ -1,112 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - authenticate - id - decrypt - id - gpgAuthenticate - id - gpgDecrypt - id - toggleSignatureExtraView - id - - CLASS - GPGMessageViewerAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - authenticationButton - NSButton - authenticationView - NSView - decryptedIconView - NSImageView - decryptedInfoView - NSView - decryptedMessageTextField - NSTextField - decryptionButton - NSButton - decryptionView - NSView - delegate - id - disclosureButton - NSButton - expirationAlertIconView - NSImageView - generalAlertIconView - NSImageView - policyAlertIconView - NSImageView - signatureBadPolicyAlertTextField - NSTextField - signatureCreationDateTextField - NSTextField - signatureExpirationDateTextField - NSTextField - signatureIconView - NSImageView - signatureKeyFingerprintTextField - NSTextField - signatureLowerView - NSView - signatureMessageTextField - NSTextField - signatureToggleButton - NSButton - signatureUpperView - NSView - signatureValidityTextField - NSTextField - signatureView - NSView - trustAlertIconView - NSImageView - userIDsPopDownButton - NSPopUpButton - - SUPERCLASS - NSObject - - - ACTIONS - - - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/Swedish.lproj/GPGMessageViewerAccessoryView.nib/info.nib b/GPGMail/Resources/Swedish.lproj/GPGMessageViewerAccessoryView.nib/info.nib deleted file mode 100644 index 6b6a5d73..00000000 --- a/GPGMail/Resources/Swedish.lproj/GPGMessageViewerAccessoryView.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 67 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/Swedish.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib b/GPGMail/Resources/Swedish.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib deleted file mode 100644 index 7662796d..00000000 Binary files a/GPGMail/Resources/Swedish.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/Swedish.lproj/InfoPlist.strings b/GPGMail/Resources/Swedish.lproj/InfoPlist.strings deleted file mode 100644 index 3b26f89d..00000000 --- a/GPGMail/Resources/Swedish.lproj/InfoPlist.strings +++ /dev/null @@ -1,6 +0,0 @@ -/* Localized versions of Info.plist keys */ - -CFBundleShortVersionString = "1.2.3 (v62)"; -CFBundleGetInfoHTML = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -CFBundleGetInfoString = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -NSHumanReadableCopyright = "© Stéphane Corthésy, 2000-2008"; diff --git a/GPGMail/Resources/ValidBadge.tif b/GPGMail/Resources/ValidBadge.tif deleted file mode 100644 index 37ca85bf..00000000 Binary files a/GPGMail/Resources/ValidBadge.tif and /dev/null differ diff --git a/GPGMail/Resources/clear-Leopard.tiff b/GPGMail/Resources/clear-Leopard.tiff deleted file mode 100644 index b295dbcf..00000000 Binary files a/GPGMail/Resources/clear-Leopard.tiff and /dev/null differ diff --git a/GPGMail/Resources/clear-Tiger.tiff b/GPGMail/Resources/clear-Tiger.tiff deleted file mode 100644 index b295dbcf..00000000 Binary files a/GPGMail/Resources/clear-Tiger.tiff and /dev/null differ diff --git a/GPGMail/Resources/clear.tiff b/GPGMail/Resources/clear.tiff deleted file mode 100644 index 75da93a5..00000000 Binary files a/GPGMail/Resources/clear.tiff and /dev/null differ diff --git a/GPGMail/Resources/encrypted-Leopard.tiff b/GPGMail/Resources/encrypted-Leopard.tiff deleted file mode 100644 index b46bb2b4..00000000 Binary files a/GPGMail/Resources/encrypted-Leopard.tiff and /dev/null differ diff --git a/GPGMail/Resources/encrypted-Tiger.tiff b/GPGMail/Resources/encrypted-Tiger.tiff deleted file mode 100644 index b46bb2b4..00000000 Binary files a/GPGMail/Resources/encrypted-Tiger.tiff and /dev/null differ diff --git a/GPGMail/Resources/encrypted.tiff b/GPGMail/Resources/encrypted.tiff deleted file mode 100644 index 0b484a4e..00000000 Binary files a/GPGMail/Resources/encrypted.tiff and /dev/null differ diff --git a/GPGMail/Resources/fi.lproj/GPGKeyDownload.nib/classes.nib b/GPGMail/Resources/fi.lproj/GPGKeyDownload.nib/classes.nib deleted file mode 100644 index abce7a58..00000000 --- a/GPGMail/Resources/fi.lproj/GPGKeyDownload.nib/classes.nib +++ /dev/null @@ -1,75 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - cancel - id - gpgSearchKeys - id - import - id - search - id - - CLASS - GPGKeyDownload - LANGUAGE - ObjC - OUTLETS - - checkBoxMatrix - NSMatrix - context - id - emailCell - NSFormCell - importButton - NSButton - importProgressField - NSTextField - importProgressIndicator - NSProgressIndicator - outlineView - NSOutlineView - searchButton - NSButton - searchProgressField - NSTextField - searchProgressIndicator - NSProgressIndicator - serverComboBox - NSComboBox - subtitleField - NSTextField - tabView - NSTabView - titleField - NSTextField - - SUPERCLASS - NSWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/fi.lproj/GPGKeyDownload.nib/info.nib b/GPGMail/Resources/fi.lproj/GPGKeyDownload.nib/info.nib deleted file mode 100644 index 6f44b455..00000000 --- a/GPGMail/Resources/fi.lproj/GPGKeyDownload.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 10 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/fi.lproj/GPGKeyDownload.nib/keyedobjects.nib b/GPGMail/Resources/fi.lproj/GPGKeyDownload.nib/keyedobjects.nib deleted file mode 100644 index 6e08198b..00000000 Binary files a/GPGMail/Resources/fi.lproj/GPGKeyDownload.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/fi.lproj/GPGMail.strings b/GPGMail/Resources/fi.lproj/GPGMail.strings deleted file mode 100755 index 9232be8b..00000000 --- a/GPGMail/Resources/fi.lproj/GPGMail.strings +++ /dev/null @@ -1,239 +0,0 @@ -{ -/* Passphrase panel titles */ -"MESSAGE_AUTHENTICATION_TITLE" = "Viestin allekirjoitus"; -"MESSAGE_DECRYPTION_PASSPHRASE_TITLE" = "Viestin salauksen purku"; - -/**/ -"DECRYPTING" = "Puran salauksen..."; -"ENCRYPTING" = "Salaan..."; - -/* submenu title */ -"PGP_MENU" = "PGP"; -/* submenu title */ -"PGP_KEYS_MENU" = "PGP-avaimet"; - -/* submenu items */ -"DECRYPT_MENU" = "Salauksen purku"; -"AUTHENTICATE_MENU" = "Allekirjoitus"; -"ENCRYPT_MENU" = "Salaa uusi viesti"; -"SIGN_MENU" = "Allekirjoita uusi viesti"; - -/* Description of version prefixed with */ -"VERSION: %@" = "Versio: %@"; - -/* PGP preferences panel name */ -"PGP_PREFERENCES" = "PGP"; - -/* Alert title and message */ -"MSG_DECRYPTION_ALERT_TITLE_NOT_SIGNED" = "Viestin salauksen purku"; -"DECRYPTED_MSG_NOT_SIGNED" = "Viesti on salattu, mutta ei allekirjoitettu. Sen alkuperää ei voida todentaa."; -"MSG_ENCRYPTION_ALERT_TITLE" = "PGP-salaus epäonnnistui"; -"MSG_DECRYPTION_ALERT_TITLE" = "PGP-salauksen purku epäonnnistui"; -"MSG_SIGNING_ALERT_TITLE" = "PGP-allekirjoitus epäonnnistui"; -"UNSUPPORTED_ENCRYPTION_FORMAT" = "GPGMail ei pysty purkamaan tämän tyyppistä salausta."; -"DATA_NOT_AVAILABLE" = "Viestin sisältö ei ole saatavilla.."; - -/* Informational alert title and message */ -"AUTHENTICATION_TITLE_OK" = "PGP-allekirjoitus"; - -/**/ -"AUTHENTICATION_TITLE_FAILED" = "PGP-allekirjoitus epäonnnistui"; -"TRY_AGAIN" = "Yritä uudelleen"; -"CANCEL_DELIVERY" = "Kumoa"; -"CANCEL_DECRYPTION" = "Kumoa"; - -/**/ -"AUTHENTICATION_TITLE_UNSIGNED" = "PGP-allekirjoitus"; -"UNSIGNED_PGP_MESSAGE" = "Tämä viesti ei ole PGP-allekirjoitettu."; - -/* Toolbar item titles */ -"DECRYPT_ITEM" = "Pura salaus"; -"AUTHENTICATE_ITEM" = "Allekirjoita"; -"MAKE_ENCRYPTED_ITEM" = "Salaa"; -"MAKE_CLEAR_ITEM" = "Tee salaamaton"; -"MAKE_UNSIGNED_ITEM" = "Tee allekirjoittamaton"; -"MAKE_SIGNED_ITEM" = "Tee allekirjoitettu"; -"ENCRYPTED_ITEM" = "Salattu"; -"CLEAR_ITEM" = "Salaamaton"; -"SIGNED_ITEM" = "Allekirjoitettu"; -"UNSIGNED_ITEM" = "Allekirjoittamaton"; - -/* Toolbar item tooltips */ -"DECRYPT_ITEM_TOOLTIP" = "Pura viestin PGP-salaus"; -"AUTHENTICATE_ITEM_TOOLTIP" = "Todenna PGP-allekirjoitettu viesti"; -"MAKE_CLEAR_ITEM_TOOLTIP" = "Paina lähettääksesi viesti salaamattomana"; -"MAKE_ENCRYPTED_ITEM_TOOLTIP" = "Paina käyttääksesi PGP-salausta"; -"MAKE_UNSIGNED_ITEM_TOOLTIP" = "Paina lähettääksesi viesti ilman PGP-allekirjoitusta"; -"MAKE_SIGNED_ITEM_TOOLTIP" = "Paina käyttääksesi PGP-allekirjoitusta"; -"ENCRYPTED_ITEM_TOOLTIP" = "Viesti salataan; paina lähettääksesi viesti salaamattomana"; -"CLEAR_ITEM_TOOLTIP" = "Viesti on salaamaton; paina käyttääksesi PGP-salausta"; -"SIGNED_ITEM_TOOLTIP" = "Viesti PGP-allekirjoitetaan; paina lähettääksesi viesti ilman PGP-allekirjoitusta"; -"UNSIGNED_ITEM_TOOLTIP" = "Viestillä ei ole PGP-allekirjoitusta; paina käyttääksesi PGP-allekirjoitusta"; - -/* Signature information */ -"Bad policy!" = "Epäkelpo vakuutus! "; // Followed by a list of policy URLs -"Policy: " = "Vakuutus: "; // Followed by a list of policy URLs -"Signed on %@" = "Allekirjoituspäivä %@"; // Param is a date, whose format is set by SIGNATURE_CREATION_DATE_FORMAT -"SIGNATURE_CREATION_DATE_FORMAT" = "%c"; // See NSCalendarDate documentation for format -"No signature creation date available" = "Allekirjoitusaikaa ei ole saatavilla"; -"Key fingerprint: %@" = "Avaimen sormenjälki: %@"; -"Key ID: 0x%@" = "Avaintunniste: 0x%@"; -"No key fingerprint/ID available" = "Avaimen sormenjälkeä tai tunnistetta ei ole saatavilla"; -"Validity: %@" = "Voimassaolo: %@"; // Param is the validity status string -"Signature expires on %@" = "Allekirjoitus vanhenee %@"; // Param is a date, whose format is set by SIGNATURE_EXPIRATION_DATE_FORMAT -"SIGNATURE_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Key expired on %@" = "Avain vanheni %@"; // Param is a date, whose format is set by KEY_EXPIRATION_DATE_FORMAT -"KEY_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Signed by %@." = "Allekirjoittaja: %@."; // Param is a userID -"Signature from %@ is bad!" = "Epäkelpo allekirjoitus käyttäjältä %@!"; // Param is a userID -"Signature is bad!" = "Epäkelpo allekirjoitus!"; -"Signature status error." = "Allekirjoituksen tilassa virhe."; -"MISSING KEY %@." = "Puuttuva avain %@."; // Param is a key ID in hexadecimal -"Signature summary 0x%04x - Signature status %u." = "Tuntematon virhe: allekirjoituksen tiedot 0x%04x - allekirjoituksen tila %u."; // Generic error message; first param is a hex status flag value, second is a decimal status value -"EXCEPTION: %@" = "Sisäinen vierhe: %@"; // Generic error message; param is a string (exception reason, maybe not localized) -"AUTHENTICATING" = "Tarkistan PGP-allekirjoituksen..."; -"UNTRUSTED RECIPIENTS" = "Ainakin yksi avaimista ei ole luotettu"; - -/* Title */ -/* Error messages */ -"GPGMAIL_CANNOT_WORK" = "GPGMail ei voi toimia, koska sen tarvitsemaa ohjelmaa ei saatu käynnistettyä. Yritä käynnistää Mail uudelleen ja jos virhe toistuu, lähetä viesti osoitteeseen gpgmail@sente.ch"; -"GPGMAIL_CANNOT_WORK_HAS_GPG_%@_VERSION_%@_NEEDS_%@" = "GPGMail ei voi toimia. Se löysi GnuPG (%@) version %@, mutta tarvitaan ainakin versio %@. Lopeta Mail-ohjelma, asenna vaadittava GnuPG versio (esim MacGPG Group:lta, http://macgpg.sourceforge.net/), ja käynnistä tämän jälkeen Mail-ohjelma uudelleen."; // First arg is path to gpg, second and third are version strings -"GPGMAIL_CANNOT_WORK_MISSING_GPG_%@_VERSION_%@" = "GPGMail ei voi toimia. Se ei löytänyt GnuPG (%@). Tarvitaan ainakin versio %@. Lopeta Mail-ohjelma, asenna vaadittava GnuPG versio (esim MacGPG Group:lta, http://macgpg.sourceforge.net/), ja käynnistä tämän jälkeen Mail-ohjelma uudelleen."; // First arg is path to gpg, second is version string -"INVALID_GPGMAIL_VERSION" = "GPGMail-versiosi ei ole yhteensopiva Mail-ohjelman versiosi kanssa.."; /* Title of alert sheet */ -"NEEDS_COMPATIBLE_BUNDLE_VERSION" = "Lataa ja asenna GPGMail-versio, joka vastaa käyttöjärjestelmäversiotasi. Löydät sen osoitteesta http://gpgmail.org/"; - -/* Validity */ -"VALIDITY: " = "varmuus: "; -"Validity=0" = "tuntematon"; -"Validity=1" = "määrittelemätön"; -"Validity=2" = "ei koskaan"; -"Validity=3" = "marginaalinen"; -"Validity=4" = "täysi"; -"Validity=5" = "täydellinen"; - -/* Generic MacGPGME error messages */ -"GPGErrorCode=1" = "Yleinen virhe"; -"GPGErrorCode=8" = "Epäkelpo allekirjoitus"; -"GPGErrorCode=9" = "Puuttuu julkinen avain"; -"GPGErrorCode=10" = "Tarkistussummavirhe"; -"GPGErrorCode=11" = "Epäkelpo salauslause"; -"GPGErrorCode=15" = "Epäkelpo suoja"; -"GPGErrorCode=17" = "Puuttuu salainen avain"; -"GPGErrorCode=31" = "Kelpaamaton salauslause"; -"GPGErrorCode=40" = "Avainpalvelimen virhe"; -"GPGErrorCode=53" = "Ei-käytettävä julkinen avain"; -"GPGErrorCode=54" = "Ei-käytettävä salainen avain"; -"GPGErrorCode=55" = "Kelpaamaton arvo"; -"GPGErrorCode=58" = "Ei dataa"; -"GPGErrorCode=69" = "Toteuttamaton"; -"GPGErrorCode=84" = "Ei-tuettu algoritmi"; -"GPGErrorCode=94" = "Avain mitätöity"; -"GPGErrorCode=99" = "Kumottu"; -"GPGErrorCode=107" = "Monimerkityksinen nimi"; -"GPGErrorCode=116" = "Vakuutus ei täsmää"; -"GPGErrorCode=125" = "Väärä avaimen käyttö"; -"GPGErrorCode=150" = "Epäkelpo moottori"; -"GPGErrorCode=151" = "Julkinen avain ei luotettu"; -"GPGErrorCode=152" = "Salauksen purku epäonnistui"; -"GPGErrorCode=153" = "Avain vanhentunut"; -"GPGErrorCode=154" = "Allekirjoitus vanhentunut"; -"GPGErrorCode=16383" = "EOF"; - -/* Signature attachment filename (suffixed automatically by .sig) */ -"PGP_SIGNATURE_FILENAME" = "PGP"; - -/* Signature attachment content-description */ -"This is a digitally signed message part" = "Tämä on digitaalisesti allekijoitettu viestin osa"; - -/* Version MIME part content description header */ -"CONTENT_DESCRIPTION_HEADER" = "PGP/MIME versiotunnistus"; - -/* Encrypted attachment filename (suffixed automatically by .asc) */ -"PGP_ENCRYPTED_FILENAME" = "PGP"; - -/* Encrypted attachment content-description */ -"This is an encrypted message part" = "OpenPGP-koodattu viesti"; - -/* Multiple-part description */ -"MULTIPART_ENCRYPTED_DESCRIPTION" = "Tämä on OpenPGP/MIME-koodattu viesti (RFC 2440 ja 3156)"; -"MULTIPART_SIGNED_DESCRIPTION" = "Tämä on OpenPGP/MIME-allekirjoitettu viesti (RFC 2440 ja 3156)"; - -/* Tooltip for banner icons */ -"SIGNATURE_IS_GOOD" = "Allekirjoitus on kunnossa; viestiä ei ole muokattu"; -"SIGNATURE_IS_NOT_GOOD" = "Allekirjoitus ei ole kunnossa; viestiä on muokattu"; - -/* PGP Key Download panel */ -"PGP_SEARCH_KEYS_MENUITEM" = "PGP-avaimen etsintä"; -"SEARCH" = "Etsi"; -"CANCEL_SEARCH" = "Kumoa"; -"SEARCHING" = "Etsin..."; -"NO_MATCHING_KEYS" = "Vastaavaa ei löytynyt"; -"FOUND_%d_KEYS" = "Löysin %d vastaavaa avainta"; -"DOWNLOAD" = "Lataa"; -"DOWNLOADING" = "Lataan..."; -"DOWNLOADED" = "Latasin ja otin avaimet käyttöön"; -"SEARCH_KEYS_ON_SERVER" = "Etsi PGP-avaimia avainpalvelimelta"; -"DOWNLOAD_KEYS_FROM_SERVER" = "Lataa PGP-avaimet avainpalvelimelta"; -"SEARCH_ERROR" = "Virhe etsinnässä"; -"DOWNLOAD_ERROR" = "Virhe latauksesa"; -" (%u bits)" = " (%u bittiä)"; -", created on %@" = ", luotu %@"; -", expires on %@" = ", vanhenee %@"; -", expired on %@" = ", expired on %@"; -"REVOKED_KEY - " = "Mitätöity - "; // Prefixes found key description, when necessary; followed by keyID, userID, etc. - -/* Unmatched PGP keys for receipts - sheet */ -"MISSING_KEYS: DOWNLOAD" = "Joillekin sähköpostiosoitteille ei löydy PGP-avainta. Etsi avaimia?"; // Title -"UNMATCHED_ADDRESSES: %@" = "Seuraaville sähköpostiosoitteille ei löydy PGP-avainta:\n%@"; // Message -"SEARCH_MATCHING_KEYS" = "Etsi"; // Default button -"SEND_IN_CLEAR" = "Lähetä selväkielisenä"; // button title; used in dialog after delivery failure due to missing public keys - -"INVALID_HASH_%@" = "Hajaustusalgoritmi '%@' ei ole RFC3156:n mukainen."; -"GPGMAIL_VS_PGPMAIL" = "GPGMail ei voi toimia jos PGPmail ei ole asennettuna"; -"GPGMAIL_%@_VS_PGPMAIL_%@" = "Molemmat laajennukset tekevät samaa asiaa eri toteutuksella, ja vain toinen voi olla asennettuna. Joudut poistamaan joko '%@':n tai '%@':n."; -"QUIT" = "Lopeta"; -"CONTINUE_ANYWAY" = "Yritä jatkaa"; // Used as button title in modal sheet (PGPmail vs GPGMail) - -/* Composer accessory view header, under To:, CC:, Subject: */ -"PGP:" = "PGP:"; - -/* Key description in popups; prefixes key (actually, primary userID), when necessary; followed by keyID, userID, etc.*/ -"REVOKED_KEY:" = "Mitätöity:"; -"EXPIRED_KEY:" = "Vanhentunut:"; -"DISABLED_KEY:" = "Poistettu käytöstä:"; -"INVALID_KEY:" = "Virheellinen:"; - -/* UserID description in popups; prefixes userID, when necessary; followed by name, email, etc.*/ -"REVOKED_USER_ID:" = "Mitätöity:"; -"INVALID_USER_ID:" = "Virheellinen:"; - -/* GPGMail exception reasons */ -"NO_VALID_PUBLIC_KEY" = "Voimassa olevaa julkista avainta ei löytynyt. Kaikki on joko vanhentuneita, käytöstä poistettuja tai mitätöityjä."; // Could be displayed after encryption -"NO_VALID_PRIVATE_KEY" = "Sopivaa henkilökohtaista avainta ei löytynyt. Joko mitään ei ollut valittuna tai valittu avain oli joko vanhentunut, käytöstä poistettu tai mitätöity."; // Could be displayed after encryption - -/* Alert when user has no PGP key */ -"NO PGP PRIVATE KEY - TITLE" = "Sinulla ei ole PGP-avainta. Et voi käyttää GPGMail:ia salaamaan tai allekirjoittamaan viestejä."; -"NO PGP PRIVATE KEY - MESSAGE" = "Jos haluat salata tai allekirjoittaa viestejä käyttäen PGP:tä, tarvitset henkilökohtaisen PGP-avaimen. Luodaksesi avaimen, lataa ja asenna MacGPG:n GPG Keychain Access. Löydät sen osoitteesta http://macgpg.sourceforge.net/"; - -/* Conflict resolution panel*/ -"" = "Minä"; -"" = "Kyllä"; -"" = "Ei"; -"" = "Aina"; -"" = "Ei koskaan"; -"" = "Hyväksyy"; - -/* Additional info describing key */ -"DISABLED_KEY_QUALIFIER" = "poistettu käytöstä"; -"INVALID_KEY_QUALIFIER" = "virheellinen"; -"REVOKED_KEY_QUALIFIER" = "mitätöity"; -"EXPIRED_KEY_QUALIFIER" = "vanhentunut"; -"CANNOT_ENCRYPT_KEY_QUALIFIER" = "cannot encrypt"; -"CANNOT_SIGN_KEY_QUALIFIER" = "cannot sign"; - -/* Additional info describing userID */ -"INVALID_USER_ID_QUALIFIER" = "virheellinen"; -"REVOKED_USER_ID_QUALIFIER" = "mitätöity"; - -"COPY_MSG_URL_MENUITEM" = "Copy Message URL"; -} diff --git a/GPGMail/Resources/fi.lproj/GPGMailCompose.nib/classes.nib b/GPGMail/Resources/fi.lproj/GPGMailCompose.nib/classes.nib deleted file mode 100644 index 0162fc97..00000000 --- a/GPGMail/Resources/fi.lproj/GPGMailCompose.nib/classes.nib +++ /dev/null @@ -1,139 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - accessoryView - NSView - - SUPERCLASS - NSObject - - - ACTIONS - - gpgToggleSymetricEncryption - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - alertImageView - NSImageView - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - selectedPersonalKey - id - signSwitch - NSButton - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/fi.lproj/GPGMailCompose.nib/info.nib b/GPGMail/Resources/fi.lproj/GPGMailCompose.nib/info.nib deleted file mode 100644 index 602c04f0..00000000 --- a/GPGMail/Resources/fi.lproj/GPGMailCompose.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 27 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/fi.lproj/GPGMailCompose.nib/keyedobjects.nib b/GPGMail/Resources/fi.lproj/GPGMailCompose.nib/keyedobjects.nib deleted file mode 100644 index 1a730dac..00000000 Binary files a/GPGMail/Resources/fi.lproj/GPGMailCompose.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/fi.lproj/GPGMailComposeTiger.nib/classes.nib b/GPGMail/Resources/fi.lproj/GPGMailComposeTiger.nib/classes.nib deleted file mode 100644 index 079c9142..00000000 --- a/GPGMail/Resources/fi.lproj/GPGMailComposeTiger.nib/classes.nib +++ /dev/null @@ -1,134 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - OUTLETS - - _optionSwitch - NSButton - _primaryView - NSView - - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - signSwitch - NSButton - switchProtoMatrix - NSMatrix - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/fi.lproj/GPGMailComposeTiger.nib/info.nib b/GPGMail/Resources/fi.lproj/GPGMailComposeTiger.nib/info.nib deleted file mode 100644 index 34312e23..00000000 --- a/GPGMail/Resources/fi.lproj/GPGMailComposeTiger.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 38 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/fi.lproj/GPGMailComposeTiger.nib/keyedobjects.nib b/GPGMail/Resources/fi.lproj/GPGMailComposeTiger.nib/keyedobjects.nib deleted file mode 100644 index 7928fe89..00000000 Binary files a/GPGMail/Resources/fi.lproj/GPGMailComposeTiger.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/fi.lproj/GPGMailPreferences.nib/classes.nib b/GPGMail/Resources/fi.lproj/GPGMailPreferences.nib/classes.nib deleted file mode 100644 index b621acc6..00000000 --- a/GPGMail/Resources/fi.lproj/GPGMailPreferences.nib/classes.nib +++ /dev/null @@ -1,186 +0,0 @@ - - - - - IBClasses - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - changeDefaultKey - id - changeLineWrapping - id - changePassphraseStrategy - id - changePassphraseTimeout - id - exportGPGMailConfiguration - id - flushCachedPassphrases - id - refreshKeys - id - toggleAlwaysEncryptMessages - id - toggleAlwaysSignMessages - id - toggleAuthenticateUnreadMessagesAutomatically - id - toggleAuthenticatesMessagesAutomatically - id - toggleAutomaticPersonalKeyChoice - id - toggleBCCRecipientsUse - id - toggleButtonsBehavior - id - toggleDecryptsMessagesAutomatically - id - toggleDecryptsUnreadMessagesAutomatically - id - toggleDisplayAccessoryView - id - toggleEncryptToSelf - id - toggleEncryptWhenPossible - id - toggleEncryptedReplyToEncryptedMessage - id - toggleExtendedInformation - id - toggleFilterKeys - id - toggleKeyRefresh - id - toggleOpenPGPMIME - id - toggleSMIME - id - toggleSeparatePGPOperations - id - toggleShowKeyInformation - id - toggleShowPassphrase - id - toggleShowUserIDs - id - toggleSignWhenEncrypting - id - toggleSignedReplyToSignedMessage - id - toggleSmartRules - id - toggleTrustAllKeys - id - - CLASS - GPGMailPreferences - LANGUAGE - ObjC - OUTLETS - - alwaysEncryptSwitchButton - NSButton - alwaysSignSwitchButton - NSButton - authenticateUnreadMessagesSwitchButton - NSButton - automaticallyAuthenticateMessagesSwitchButton - NSButton - automaticallyDecryptMessagesSwitchButton - NSButton - buttonsShowStateSwitchButton - NSButton - choosesPersonalKeyAccordingToAccountSwitchButton - NSButton - contactTextField - NSTextField - decryptUnreadMessagesSwitchButton - NSButton - disableSMIMESwitchButton - NSButton - displayButtonInComposeWindowSwitchButton - NSButton - encryptReplyToEncryptedMessageSwitchButton - NSButton - encryptToSelfSwitchButton - NSButton - encryptWhenAllKeysAvailableSwitchButton - NSButton - extendedInfoSwitchButton - NSButton - filtersKeysSwitchButton - NSButton - keyIdentifiersPopUpButton - NSPopUpButton - keyIdentifiersTableView - NSTableView - lineWrappingFormCell - NSFormCell - openPGPMIMESwitchButton - NSButton - passphraseStrategyMatrix - NSMatrix - passphraseTimeoutFormCell - NSFormCell - personalKeysPopUpButton - NSPopUpButton - refreshKeysOnVolumeChangeSwitchButton - NSButton - separateSignAndEncryptOperationsSwitchButton - NSButton - showUserIDsSwitchButton - NSButton - showsPassphraseSwitchButton - NSButton - signReplyToSignedMessageSwitchButton - NSButton - signWhenEncryptingSwitchButton - NSButton - trustAllKeysSwitchButton - NSButton - useBCCRecipientsSwitchButton - NSButton - useSmartRulesSwitchButton - NSButton - versionTextField - NSTextField - webSiteTextField - NSTextField - - SUPERCLASS - NSPreferencesModule - - - CLASS - NSPreferencesModule - LANGUAGE - ObjC - OUTLETS - - preferencesView - id - - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/fi.lproj/GPGMailPreferences.nib/info.nib b/GPGMail/Resources/fi.lproj/GPGMailPreferences.nib/info.nib deleted file mode 100644 index 60c368f6..00000000 --- a/GPGMail/Resources/fi.lproj/GPGMailPreferences.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 9 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/fi.lproj/GPGMailPreferences.nib/keyedobjects.nib b/GPGMail/Resources/fi.lproj/GPGMailPreferences.nib/keyedobjects.nib deleted file mode 100644 index b69ce771..00000000 Binary files a/GPGMail/Resources/fi.lproj/GPGMailPreferences.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/fi.lproj/GPGMenu.nib/classes.nib b/GPGMail/Resources/fi.lproj/GPGMenu.nib/classes.nib deleted file mode 100644 index 6ac982ef..00000000 --- a/GPGMail/Resources/fi.lproj/GPGMenu.nib/classes.nib +++ /dev/null @@ -1,57 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = { - gpgAuthenticate = id; - gpgChoosePersonalKeys = id; - gpgChoosePublicKeys = id; - gpgDecrypt = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - gpgChoosePersonalKey = id; - gpgChoosePublicKey = id; - gpgChoosePublicKeys = id; - gpgReloadPGPKeys = id; - gpgSearchKeys = id; - gpgToggleAutomaticPublicKeysChoice = id; - gpgToggleDisplayAllUserIDs = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleShowKeyInformation = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - mailTo = id; - }; - CLASS = GPGMailBundle; - LANGUAGE = ObjC; - OUTLETS = { - PGPMenu = NSMenu; - PGPViewMenu = NSMenu; - allUserIDsMenuItem = NSMenuItem; - authenticateMenuItem = NSMenuItem; - automaticPublicKeysMenuItem = NSMenuItem; - choosePublicKeysMenuItem = NSMenuItem; - decryptMenuItem = NSMenuItem; - defaultKey = id; - encryptsNewMessageMenuItem = NSMenuItem; - personalKeysMenuItem = NSMenuItem; - proxyServer = id; - signsNewMessageMenuItem = NSMenuItem; - symetricEncryptionMenuItem = NSMenuItem; - usesOnlyOpenPGPStyleMenuItem = NSMenuItem; - }; - SUPERCLASS = MVMailBundle; - }, - {CLASS = MVMailBundle; LANGUAGE = ObjC; SUPERCLASS = NSObject; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/fi.lproj/GPGMenu.nib/info.nib b/GPGMail/Resources/fi.lproj/GPGMenu.nib/info.nib deleted file mode 100644 index 7a6bf4ed..00000000 --- a/GPGMail/Resources/fi.lproj/GPGMenu.nib/info.nib +++ /dev/null @@ -1,23 +0,0 @@ - - - - - IBDocumentLocation - 84 120 356 278 0 0 1024 746 - IBEditorPositions - - 34 - 258 798 236 230 0 0 1680 1028 - 88 - 691 834 204 194 0 0 1680 1028 - - IBFramework Version - 437.0 - IBOpenObjects - - 34 - - IBSystem Version - 8A428 - - diff --git a/GPGMail/Resources/fi.lproj/GPGMenu.nib/objects.nib b/GPGMail/Resources/fi.lproj/GPGMenu.nib/objects.nib deleted file mode 100644 index 6578f350..00000000 Binary files a/GPGMail/Resources/fi.lproj/GPGMenu.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/fi.lproj/GPGMessageViewerAccessoryView.nib/classes.nib b/GPGMail/Resources/fi.lproj/GPGMessageViewerAccessoryView.nib/classes.nib deleted file mode 100644 index 5c956adf..00000000 --- a/GPGMail/Resources/fi.lproj/GPGMessageViewerAccessoryView.nib/classes.nib +++ /dev/null @@ -1,112 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - authenticate - id - decrypt - id - gpgAuthenticate - id - gpgDecrypt - id - toggleSignatureExtraView - id - - CLASS - GPGMessageViewerAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - authenticationButton - NSButton - authenticationView - NSView - decryptedIconView - NSImageView - decryptedInfoView - NSView - decryptedMessageTextField - NSTextField - decryptionButton - NSButton - decryptionView - NSView - delegate - id - disclosureButton - NSButton - expirationAlertIconView - NSImageView - generalAlertIconView - NSImageView - policyAlertIconView - NSImageView - signatureBadPolicyAlertTextField - NSTextField - signatureCreationDateTextField - NSTextField - signatureExpirationDateTextField - NSTextField - signatureIconView - NSImageView - signatureKeyFingerprintTextField - NSTextField - signatureLowerView - NSView - signatureMessageTextField - NSTextField - signatureToggleButton - NSButton - signatureUpperView - NSView - signatureValidityTextField - NSTextField - signatureView - NSView - trustAlertIconView - NSImageView - userIDsPopDownButton - NSPopUpButton - - SUPERCLASS - NSObject - - - ACTIONS - - - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/fi.lproj/GPGMessageViewerAccessoryView.nib/info.nib b/GPGMail/Resources/fi.lproj/GPGMessageViewerAccessoryView.nib/info.nib deleted file mode 100644 index 6b6a5d73..00000000 --- a/GPGMail/Resources/fi.lproj/GPGMessageViewerAccessoryView.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 67 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/fi.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib b/GPGMail/Resources/fi.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib deleted file mode 100644 index 93cacaf1..00000000 Binary files a/GPGMail/Resources/fi.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/fi.lproj/InfoPlist.strings b/GPGMail/Resources/fi.lproj/InfoPlist.strings deleted file mode 100755 index 3b26f89d..00000000 --- a/GPGMail/Resources/fi.lproj/InfoPlist.strings +++ /dev/null @@ -1,6 +0,0 @@ -/* Localized versions of Info.plist keys */ - -CFBundleShortVersionString = "1.2.3 (v62)"; -CFBundleGetInfoHTML = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -CFBundleGetInfoString = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -NSHumanReadableCopyright = "© Stéphane Corthésy, 2000-2008"; diff --git a/GPGMail/Resources/ko.lproj/GPGKeyDownload.nib/classes.nib b/GPGMail/Resources/ko.lproj/GPGKeyDownload.nib/classes.nib deleted file mode 100644 index abce7a58..00000000 --- a/GPGMail/Resources/ko.lproj/GPGKeyDownload.nib/classes.nib +++ /dev/null @@ -1,75 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - cancel - id - gpgSearchKeys - id - import - id - search - id - - CLASS - GPGKeyDownload - LANGUAGE - ObjC - OUTLETS - - checkBoxMatrix - NSMatrix - context - id - emailCell - NSFormCell - importButton - NSButton - importProgressField - NSTextField - importProgressIndicator - NSProgressIndicator - outlineView - NSOutlineView - searchButton - NSButton - searchProgressField - NSTextField - searchProgressIndicator - NSProgressIndicator - serverComboBox - NSComboBox - subtitleField - NSTextField - tabView - NSTabView - titleField - NSTextField - - SUPERCLASS - NSWindowController - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/ko.lproj/GPGKeyDownload.nib/info.nib b/GPGMail/Resources/ko.lproj/GPGKeyDownload.nib/info.nib deleted file mode 100644 index 7ec1fc41..00000000 --- a/GPGMail/Resources/ko.lproj/GPGKeyDownload.nib/info.nib +++ /dev/null @@ -1,18 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - 42 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/ko.lproj/GPGKeyDownload.nib/keyedobjects.nib b/GPGMail/Resources/ko.lproj/GPGKeyDownload.nib/keyedobjects.nib deleted file mode 100644 index 1e5ab611..00000000 Binary files a/GPGMail/Resources/ko.lproj/GPGKeyDownload.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/ko.lproj/GPGMail.strings b/GPGMail/Resources/ko.lproj/GPGMail.strings deleted file mode 100644 index 9fea1a64..00000000 --- a/GPGMail/Resources/ko.lproj/GPGMail.strings +++ /dev/null @@ -1,239 +0,0 @@ -{ -/* Passphrase panel titles */ -"MESSAGE_AUTHENTICATION_TITLE" = "메시지 인증"; -"MESSAGE_DECRYPTION_PASSPHRASE_TITLE" = "메시지 해독"; - -/**/ -"DECRYPTING" = "암호해독 중입니다..."; -"ENCRYPTING" = "암호화 중입니다..."; - -/* submenu title */ -"PGP_MENU" = "PGP"; -/* submenu title */ -"PGP_KEYS_MENU" = "PGP 키"; - -/* submenu items */ -"DECRYPT_MENU" = "암호해독"; -"AUTHENTICATE_MENU" = "인증"; -"ENCRYPT_MENU" = "새 메시지의 암호화"; -"SIGN_MENU" = "새 메시지에 서명"; - -/* Description of version prefixed with */ -"VERSION: %@" = "버전: %@"; - -/* PGP preferences panel name */ -"PGP_PREFERENCES" = "PGP"; - -/* Alert title and message */ -"MSG_DECRYPTION_ALERT_TITLE_NOT_SIGNED" = "메시지 암호해독"; -"DECRYPTED_MSG_NOT_SIGNED" = "메시지가 해독되었으나 서명은 없습니다. 따라서 그 진위 여부를 증명할 수 없습니다."; -"MSG_ENCRYPTION_ALERT_TITLE" = "PGP 암호화가 실패했습니다"; -"MSG_DECRYPTION_ALERT_TITLE" = "PGP 암호해독에 실패했습니다"; -"MSG_SIGNING_ALERT_TITLE" = "PGP 서명에 실패했습니다"; -"UNSUPPORTED_ENCRYPTION_FORMAT" = "GPGMail은 이와 같은 종류의 암호화된 메시지를 해독할 수 없습니다."; -"DATA_NOT_AVAILABLE" = "메시지의 본문을 찾을 수 없습니다."; - -/* Informational alert title and message */ -"AUTHENTICATION_TITLE_OK" = "PGP 인증"; - -/**/ -"AUTHENTICATION_TITLE_FAILED" = "PGP 인증에 실패했습니다"; -"TRY_AGAIN" = "재시도"; -"CANCEL_DELIVERY" = "취소"; -"CANCEL_DECRYPTION" = "취소"; - -/**/ -"AUTHENTICATION_TITLE_UNSIGNED" = "PGP 인증"; -"UNSIGNED_PGP_MESSAGE" = "이 메시지는 PGP 서명이 되어 있지 않습니다."; - -/* Toolbar item titles */ -"DECRYPT_ITEM" = "암호해독"; -"AUTHENTICATE_ITEM" = "인증"; -"MAKE_ENCRYPTED_ITEM" = "암호화"; -"MAKE_CLEAR_ITEM" = "해제"; -"MAKE_UNSIGNED_ITEM" = "서명하지 않음"; -"MAKE_SIGNED_ITEM" = "서명 첨부"; -"ENCRYPTED_ITEM" = "암호화 되었음"; -"CLEAR_ITEM" = "해제"; -"SIGNED_ITEM" = "서명있음"; -"UNSIGNED_ITEM" = "서명없음"; - -/* Toolbar item tooltips */ -"DECRYPT_ITEM_TOOLTIP" = "PGP-암호화 된 메시지를 해독합니다"; -"AUTHENTICATE_ITEM_TOOLTIP" = "PGP-서명된 메시지를 인증합니다"; -"MAKE_CLEAR_ITEM_TOOLTIP" = "암호해제된 메시지를 보내려면 클릭 하세요"; -"MAKE_ENCRYPTED_ITEM_TOOLTIP" = "PGP 암호화를 사용하려면 클릭하세요"; -"MAKE_UNSIGNED_ITEM_TOOLTIP" = "PGP 인증 없이 메시지를 보내려면 클릭 하세요"; -"MAKE_SIGNED_ITEM_TOOLTIP" = "PGP 인증을 사용하려면 클릭 하세요"; -"ENCRYPTED_ITEM_TOOLTIP" = "메시지가 암호화 됩니다; 암호화를 해제 하려면 클릭하세요"; -"CLEAR_ITEM_TOOLTIP" = "메시지를 암호화 하지 않습니다; PGP 암호화를 하려면 클릭하세요"; -"SIGNED_ITEM_TOOLTIP" = "메시지에 PGP 서명을 합니다; PGP 인증 없이 메시지를 보내려면 클릭하세요"; -"UNSIGNED_ITEM_TOOLTIP" = "메시지에 PGP 서명을 하지 않습니다; PGP 인증을 사용하려면 클릭하세요"; - -/* Signature information */ -"Bad policy!" = "잘못된 policy! "; // Followed by a list of policy URLs -"Policy: " = "Policy: "; // Followed by a list of policy URLs -"Signed on %@" = "%@에 서명되었음"; // Param is a date, whose format is set by SIGNATURE_CREATION_DATE_FORMAT -"SIGNATURE_CREATION_DATE_FORMAT" = "%c"; // See NSCalendarDate documentation for format -"No signature creation date available" = "서명 생성 날짜가 없습니다"; -"Key fingerprint: %@" = "키 지문: %@"; -"Key ID: 0x%@" = "키 아이디: 0x%@"; -"No key fingerprint/ID available" = "지문/아이디가 없습니다"; -"Validity: %@" = "신뢰 정도: %@"; // Param is the validity status string -"Signature expires on %@" = "%@에 서명이 무효가 됩니다"; // Param is a date, whose format is set by SIGNATURE_EXPIRATION_DATE_FORMAT -"SIGNATURE_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Key expired on %@" = "%@에 키가 무효가 됩니다"; // Param is a date, whose format is set by KEY_EXPIRATION_DATE_FORMAT -"KEY_EXPIRATION_DATE_FORMAT" = "%x"; // See NSCalendarDate documentation for format -"Signed by %@." = "%@에 의해 서명 되었음"; // Param is a userID -"Signature from %@ is bad!" = "%@의 서명이 잘못 되었습니다!"; // Param is a userID -"Signature is bad!" = "잘못된 서명입니다!"; -"Signature status error." = "서명 상태 에러가 발생했습니다"; -"MISSING KEY %@." = "키 %@를 찾을 수 없습니다."; // Param is a key ID in hexadecimal -"Signature summary 0x%04x - Signature status %u." = "알 수 없는 에러: 서명 요약 0x%04x - 서명 상태 %u."; // Generic error message; first param is a hex status flag value, second is a decimal status value -"EXCEPTION: %@" = "내부 에러: %@"; // Generic error message; param is a string (exception reason, maybe not localized) -"AUTHENTICATING" = "VPGP 서명을 검증하고 있습니다..."; -"UNTRUSTED RECIPIENTS" = "키 중 최소한 하나를 신뢰할 수 없습니다"; - -/* Title */ -/* Error messages */ -"GPGMAIL_CANNOT_WORK" = "보조 어플리케이션이 실행되지 않았기 때문에 GPGMail이 작동할 수 없습니다. Mail을 다시 시작해 보시고, 그래도 에러가 나면, gpgmail@sente.ch로 연락 주세요"; -"GPGMAIL_CANNOT_WORK_HAS_GPG_%@_VERSION_%@_NEEDS_%@" = "GPGMail이 작동할 수 없습니다. GnuPG (%@) 버전 %@을 발견했지만, 최소한 버전 %@ 이상이어야 합니다. 메일을 종료하고, 적절한 버전의 GnuPG(가령, MacGPG의 배포판, http://macgpg.sourceforge.net/)를 설치한 후 메일을 다시 시작하세요."; // First arg is path to gpg, second and third are version strings -"GPGMAIL_CANNOT_WORK_MISSING_GPG_%@_VERSION_%@" = "GPGMail이 작동할 수 없습니다. 최소 요구 버전 %@의 GnuPG (%@)를 찾지 못했습니다. 메일을 종료하고, 적절한 GnuPG 버전(예를 들면 MacGPG 그룹의 배포판, http://macgpg.sourceforge.net/)을 설치하고, 메일을 다시 시작 하세요."; // First arg is path to gpg, second is version string -"INVALID_GPGMAIL_VERSION" = "사용하고 있는 GPGMail 버전은 지금 사용하고 있는 메일의 버전과 호환되지 않습니다."; /* Title of alert sheet */ -"NEEDS_COMPATIBLE_BUNDLE_VERSION" = "현재 사용하고 있는 오에스에 맞는 버전의 GPGMail을 사용해야 합니다. http://gpgmail.org/ 에서 다운로드하여 설치 하세요."; - -/* Validity */ -"VALIDITY: " = "신뢰 정도: "; -"Validity=0" = "알려 지지 않음"; -"Validity=1" = "정의 되지 않음"; -"Validity=2" = "절대 신뢰할 수 없음"; -"Validity=3" = "약간 신뢰함"; -"Validity=4" = "신뢰함"; -"Validity=5" = "절대적으로 신뢰함"; - -/* Generic MacGPGME error messages */ -"GPGErrorCode=1" = "일반 오류"; -"GPGErrorCode=8" = "잘못된 서명"; -"GPGErrorCode=9" = "공개키 없음"; -"GPGErrorCode=10" = "체크섬 에러"; -"GPGErrorCode=11" = "잘못된 암호문"; -"GPGErrorCode=15" = "잘못된 아머"; -"GPGErrorCode=17" = "비밀키 없음"; -"GPGErrorCode=31" = "유효하지 않은 암호문"; -"GPGErrorCode=40" = "키 서버 에러"; -"GPGErrorCode=53" = "사용불가능한 공개키"; -"GPGErrorCode=54" = "사용불가능한 비밀키"; -"GPGErrorCode=55" = "유효하지 않은 값"; -"GPGErrorCode=58" = "데이터 없음"; -"GPGErrorCode=69" = "아직 구현되지 않았음"; -"GPGErrorCode=84" = "지원되지 않는 알고리즘"; -"GPGErrorCode=94" = "인증이 철회된 키"; -"GPGErrorCode=99" = "취소되었음"; -"GPGErrorCode=107" = "이름이 모호함"; -"GPGErrorCode=116" = "해당하는 policy 없음"; -"GPGErrorCode=125" = "잘못된 키 사용법"; -"GPGErrorCode=150" = "유효하지 못한 엔진"; -"GPGErrorCode=151" = "신뢰할 수 없는 공개키"; -"GPGErrorCode=152" = "암호해독 실패"; -"GPGErrorCode=153" = "유효기간이 지난 키"; -"GPGErrorCode=154" = "유효기간이 지난 서명"; -"GPGErrorCode=16383" = "EOF"; - -/* Signature attachment filename (suffixed automatically by .sig) */ -"PGP_SIGNATURE_FILENAME" = "PGP"; - -/* Signature attachment content-description */ -"This is a digitally signed message part" = "여기에는 디지털 서명이 되어 있습니다"; - -/* Version MIME part content description header */ -"CONTENT_DESCRIPTION_HEADER" = "PGP/MIME version identification"; - -/* Encrypted attachment filename (suffixed automatically by .asc) */ -"PGP_ENCRYPTED_FILENAME" = "PGP"; - -/* Encrypted attachment content-description */ -"This is an encrypted message part" = "여기에는 메시지가 암호화 되어 있습니다"; - -/* Multiple-part description */ -"MULTIPART_ENCRYPTED_DESCRIPTION" = "This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156)"; -"MULTIPART_SIGNED_DESCRIPTION" = "This is an OpenPGP/MIME signed message (RFC 2440 and 3156)"; - -/* Tooltip for banner icons */ -"SIGNATURE_IS_GOOD" = "서명이 손상되지 않았습니다; 메시지가 원본 그대로입니다"; -"SIGNATURE_IS_NOT_GOOD" = "서명이 좋지 못합니다; 메세지가 원본과 다릅니다"; - -/* PGP Key Download panel */ -"PGP_SEARCH_KEYS_MENUITEM" = "PGP 키 검색"; -"SEARCH" = "검색"; -"CANCEL_SEARCH" = "취소"; -"SEARCHING" = "검색 중..."; -"NO_MATCHING_KEYS" = "맞는 키 없음"; -"FOUND_%d_KEYS" = "%d 개의 키를 발견했습니다."; -"DOWNLOAD" = "다운로드"; -"DOWNLOADING" = "다운로드 중..."; -"DOWNLOADED" = "다운로드하여 키를 임포트 했습니다"; -"SEARCH_KEYS_ON_SERVER" = "키 서버에서 PGP 키 검색"; -"DOWNLOAD_KEYS_FROM_SERVER" = "키 서버로부터 PGP 키 다운로드 받기"; -"SEARCH_ERROR" = "검색 중 오류가 발생했습니다"; -"DOWNLOAD_ERROR" = "다운로드 중 오류가 발생했습니다"; -" (%u bits)" = " (%u bits)"; -", created on %@" = ", %@에 생성되었음"; -", expires on %@" = ", %@에 만료됨"; -", expired on %@" = ", expired on %@"; -"REVOKED_KEY - " = "철회되었음 - "; // Prefixes found key description, when necessary; followed by keyID, userID, etc. - -/* Unmatched PGP keys for receipts - sheet */ -"MISSING_KEYS: DOWNLOAD" = "일부 주소에 해당하는 PGP 키가 없습니다. 키를 검색할까요?"; // Title -"UNMATCHED_ADDRESSES: %@" = "다음 이메일 주소에 해당하는 PGP 키가 없습니다:\n%@"; // Message -"SEARCH_MATCHING_KEYS" = "검색"; // Default button -"SEND_IN_CLEAR" = "Send in Clear"; // Other button - -"INVALID_HASH_%@" = "해쉬 알고리즘 '%@'는 RFC3156에 허용되지 않습니다"; -"GPGMAIL_VS_PGPMAIL" = "PGPmail이 설치되어 있으면 GPGMail은 작동하지 않습니다"; -"GPGMAIL_%@_VS_PGPMAIL_%@" = "이 두 가지 번들은 다른 엔진을 사용하지만 같은 기능을 수행합니다. 둘 중 하나만이 설치될 수 있습니다. '%@', 또는 '%@'을 제거해야 합니다"; -"QUIT" = "종료"; -"CONTINUE_ANYWAY" = "계속 시도"; // Button title in alert panel - -/* Composer accessory view header, under To:, CC:, Subject: */ -"PGP:" = "PGP:"; - -/* Key description in popups; prefixes key (actually, primary userID), when necessary; followed by keyID, userID, etc.*/ -"REVOKED_KEY:" = "Revoked:"; -"EXPIRED_KEY:" = "Expired:"; -"DISABLED_KEY:" = "Disabled:"; -"INVALID_KEY:" = "Invalid:"; - -/* UserID description in popups; prefixes userID, when necessary; followed by name, email, etc.*/ -"REVOKED_USER_ID:" = "Revoked:"; -"INVALID_USER_ID:" = "Invalid:"; - -/* GPGMail exception reasons */ -"NO_VALID_PUBLIC_KEY" = "No valid public key has been found. They are all either expired, disabled or revoked."; // Could be displayed after encryption -"NO_VALID_PRIVATE_KEY" = "No valid personal key has been found. Either none was selected, or selected key is revoked, disabled or has expired."; // Could be displayed after encryption - -/* Alert when user has no PGP key */ -"NO PGP PRIVATE KEY - TITLE" = "You don't have any PGP key. You can't use GPGMail to encrypt or sign messages."; -"NO PGP PRIVATE KEY - MESSAGE" = "If you want to be able to encrypt or sign messages with PGP, you need a personal PGP key. To create a PGP key, download and install MacGPG's GPG Keychain Access from http://macgpg.sourceforge.net/"; - -/* Conflict resolution panel*/ -"" = "Me"; -"" = "Yes"; -"" = "No"; -"" = "Always"; -"" = "Never"; -"" = "Accepts"; - -/* Additional info describing key */ -"DISABLED_KEY_QUALIFIER" = "disabled"; -"INVALID_KEY_QUALIFIER" = "invalid"; -"REVOKED_KEY_QUALIFIER" = "revoked"; -"EXPIRED_KEY_QUALIFIER" = "expired"; -"CANNOT_ENCRYPT_KEY_QUALIFIER" = "cannot encrypt"; -"CANNOT_SIGN_KEY_QUALIFIER" = "cannot sign"; - -/* Additional info describing userID */ -"INVALID_USER_ID_QUALIFIER" = "invalid"; -"REVOKED_USER_ID_QUALIFIER" = "revoked"; - -"COPY_MSG_URL_MENUITEM" = "Copy Message URL"; -} diff --git a/GPGMail/Resources/ko.lproj/GPGMailCompose.nib/classes.nib b/GPGMail/Resources/ko.lproj/GPGMailCompose.nib/classes.nib deleted file mode 100644 index 0162fc97..00000000 --- a/GPGMail/Resources/ko.lproj/GPGMailCompose.nib/classes.nib +++ /dev/null @@ -1,139 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - accessoryView - NSView - - SUPERCLASS - NSObject - - - ACTIONS - - gpgToggleSymetricEncryption - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - alertImageView - NSImageView - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - selectedPersonalKey - id - signSwitch - NSButton - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/ko.lproj/GPGMailCompose.nib/info.nib b/GPGMail/Resources/ko.lproj/GPGMailCompose.nib/info.nib deleted file mode 100644 index 602c04f0..00000000 --- a/GPGMail/Resources/ko.lproj/GPGMailCompose.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 27 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/ko.lproj/GPGMailCompose.nib/keyedobjects.nib b/GPGMail/Resources/ko.lproj/GPGMailCompose.nib/keyedobjects.nib deleted file mode 100644 index 9e90f853..00000000 Binary files a/GPGMail/Resources/ko.lproj/GPGMailCompose.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/ko.lproj/GPGMailComposeTiger.nib/classes.nib b/GPGMail/Resources/ko.lproj/GPGMailComposeTiger.nib/classes.nib deleted file mode 100644 index 079c9142..00000000 --- a/GPGMail/Resources/ko.lproj/GPGMailComposeTiger.nib/classes.nib +++ /dev/null @@ -1,134 +0,0 @@ - - - - - IBClasses - - - CLASS - OptionalView - LANGUAGE - ObjC - OUTLETS - - _optionSwitch - NSButton - _primaryView - NSView - - SUPERCLASS - NSView - - - CLASS - MVComposeAccessoryViewOwner - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - choosePersonalKey - id - endConflictResolution - id - endModal - id - gpgChoosePersonalKey - id - gpgChoosePublicKey - id - gpgChoosePublicKeys - id - gpgDownloadMissingKeys - id - gpgToggleAutomaticPublicKeysChoice - id - gpgToggleEncryptionForNewMessage - id - gpgToggleSignatureForNewMessage - id - gpgToggleSymetricEncryption - id - gpgToggleUsesOnlyOpenPGPStyle - id - gpgUseDefaultPublicKeys - id - toggleColumnDisplay - id - - CLASS - GPGMailComposeAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - conflictEncryptionButton - NSButton - conflictMIMEButton - NSButton - conflictPanel - NSPanel - conflictSignatureButton - NSButton - conflictTableView - NSTableView - emptyView - NSView - encryptionSwitch - NSButton - fullView - NSView - optionalView - OptionalView - optionalViewBackgroundView - ColorBackgroundView - optionalViewTitleField - NSTextField - personalKeysPopUpButton - NSPopUpButton - popDownButton - NSPopUpButton - publicKeysOutlineView - NSOutlineView - publicKeysPanel - NSPanel - publicKeysPopDownButton - NSPopUpButton - signSwitch - NSButton - switchProtoMatrix - NSMatrix - - SUPERCLASS - MVComposeAccessoryViewOwner - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/ko.lproj/GPGMailComposeTiger.nib/info.nib b/GPGMail/Resources/ko.lproj/GPGMailComposeTiger.nib/info.nib deleted file mode 100644 index 34312e23..00000000 --- a/GPGMail/Resources/ko.lproj/GPGMailComposeTiger.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 672 - IBLastKnownRelativeProjectPath - ../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 38 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/ko.lproj/GPGMailComposeTiger.nib/keyedobjects.nib b/GPGMail/Resources/ko.lproj/GPGMailComposeTiger.nib/keyedobjects.nib deleted file mode 100644 index 5dbf618b..00000000 Binary files a/GPGMail/Resources/ko.lproj/GPGMailComposeTiger.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/ko.lproj/GPGMailPreferences.nib/classes.nib b/GPGMail/Resources/ko.lproj/GPGMailPreferences.nib/classes.nib deleted file mode 100644 index b621acc6..00000000 --- a/GPGMail/Resources/ko.lproj/GPGMailPreferences.nib/classes.nib +++ /dev/null @@ -1,186 +0,0 @@ - - - - - IBClasses - - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - ACTIONS - - changeDefaultKey - id - changeLineWrapping - id - changePassphraseStrategy - id - changePassphraseTimeout - id - exportGPGMailConfiguration - id - flushCachedPassphrases - id - refreshKeys - id - toggleAlwaysEncryptMessages - id - toggleAlwaysSignMessages - id - toggleAuthenticateUnreadMessagesAutomatically - id - toggleAuthenticatesMessagesAutomatically - id - toggleAutomaticPersonalKeyChoice - id - toggleBCCRecipientsUse - id - toggleButtonsBehavior - id - toggleDecryptsMessagesAutomatically - id - toggleDecryptsUnreadMessagesAutomatically - id - toggleDisplayAccessoryView - id - toggleEncryptToSelf - id - toggleEncryptWhenPossible - id - toggleEncryptedReplyToEncryptedMessage - id - toggleExtendedInformation - id - toggleFilterKeys - id - toggleKeyRefresh - id - toggleOpenPGPMIME - id - toggleSMIME - id - toggleSeparatePGPOperations - id - toggleShowKeyInformation - id - toggleShowPassphrase - id - toggleShowUserIDs - id - toggleSignWhenEncrypting - id - toggleSignedReplyToSignedMessage - id - toggleSmartRules - id - toggleTrustAllKeys - id - - CLASS - GPGMailPreferences - LANGUAGE - ObjC - OUTLETS - - alwaysEncryptSwitchButton - NSButton - alwaysSignSwitchButton - NSButton - authenticateUnreadMessagesSwitchButton - NSButton - automaticallyAuthenticateMessagesSwitchButton - NSButton - automaticallyDecryptMessagesSwitchButton - NSButton - buttonsShowStateSwitchButton - NSButton - choosesPersonalKeyAccordingToAccountSwitchButton - NSButton - contactTextField - NSTextField - decryptUnreadMessagesSwitchButton - NSButton - disableSMIMESwitchButton - NSButton - displayButtonInComposeWindowSwitchButton - NSButton - encryptReplyToEncryptedMessageSwitchButton - NSButton - encryptToSelfSwitchButton - NSButton - encryptWhenAllKeysAvailableSwitchButton - NSButton - extendedInfoSwitchButton - NSButton - filtersKeysSwitchButton - NSButton - keyIdentifiersPopUpButton - NSPopUpButton - keyIdentifiersTableView - NSTableView - lineWrappingFormCell - NSFormCell - openPGPMIMESwitchButton - NSButton - passphraseStrategyMatrix - NSMatrix - passphraseTimeoutFormCell - NSFormCell - personalKeysPopUpButton - NSPopUpButton - refreshKeysOnVolumeChangeSwitchButton - NSButton - separateSignAndEncryptOperationsSwitchButton - NSButton - showUserIDsSwitchButton - NSButton - showsPassphraseSwitchButton - NSButton - signReplyToSignedMessageSwitchButton - NSButton - signWhenEncryptingSwitchButton - NSButton - trustAllKeysSwitchButton - NSButton - useBCCRecipientsSwitchButton - NSButton - useSmartRulesSwitchButton - NSButton - versionTextField - NSTextField - webSiteTextField - NSTextField - - SUPERCLASS - NSPreferencesModule - - - CLASS - NSPreferencesModule - LANGUAGE - ObjC - OUTLETS - - preferencesView - id - - SUPERCLASS - NSObject - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/ko.lproj/GPGMailPreferences.nib/info.nib b/GPGMail/Resources/ko.lproj/GPGMailPreferences.nib/info.nib deleted file mode 100644 index 60c368f6..00000000 --- a/GPGMail/Resources/ko.lproj/GPGMailPreferences.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBLastKnownRelativeProjectPath - ../../../GPGMail.xcodeproj - IBOldestOS - 5 - IBOpenObjects - - 9 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/ko.lproj/GPGMailPreferences.nib/keyedobjects.nib b/GPGMail/Resources/ko.lproj/GPGMailPreferences.nib/keyedobjects.nib deleted file mode 100644 index c1356b61..00000000 Binary files a/GPGMail/Resources/ko.lproj/GPGMailPreferences.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/ko.lproj/GPGMenu.nib/classes.nib b/GPGMail/Resources/ko.lproj/GPGMenu.nib/classes.nib deleted file mode 100644 index 6ac982ef..00000000 --- a/GPGMail/Resources/ko.lproj/GPGMenu.nib/classes.nib +++ /dev/null @@ -1,57 +0,0 @@ -{ - IBClasses = ( - { - ACTIONS = { - gpgAuthenticate = id; - gpgChoosePersonalKeys = id; - gpgChoosePublicKeys = id; - gpgDecrypt = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - }; - CLASS = FirstResponder; - LANGUAGE = ObjC; - SUPERCLASS = NSObject; - }, - { - ACTIONS = { - gpgChoosePersonalKey = id; - gpgChoosePublicKey = id; - gpgChoosePublicKeys = id; - gpgReloadPGPKeys = id; - gpgSearchKeys = id; - gpgToggleAutomaticPublicKeysChoice = id; - gpgToggleDisplayAllUserIDs = id; - gpgToggleEncryptionForNewMessage = id; - gpgToggleShowKeyInformation = id; - gpgToggleSignatureForNewMessage = id; - gpgToggleSymetricEncryption = id; - gpgToggleUsesOnlyOpenPGPStyle = id; - mailTo = id; - }; - CLASS = GPGMailBundle; - LANGUAGE = ObjC; - OUTLETS = { - PGPMenu = NSMenu; - PGPViewMenu = NSMenu; - allUserIDsMenuItem = NSMenuItem; - authenticateMenuItem = NSMenuItem; - automaticPublicKeysMenuItem = NSMenuItem; - choosePublicKeysMenuItem = NSMenuItem; - decryptMenuItem = NSMenuItem; - defaultKey = id; - encryptsNewMessageMenuItem = NSMenuItem; - personalKeysMenuItem = NSMenuItem; - proxyServer = id; - signsNewMessageMenuItem = NSMenuItem; - symetricEncryptionMenuItem = NSMenuItem; - usesOnlyOpenPGPStyleMenuItem = NSMenuItem; - }; - SUPERCLASS = MVMailBundle; - }, - {CLASS = MVMailBundle; LANGUAGE = ObjC; SUPERCLASS = NSObject; } - ); - IBVersion = 1; -} \ No newline at end of file diff --git a/GPGMail/Resources/ko.lproj/GPGMenu.nib/info.nib b/GPGMail/Resources/ko.lproj/GPGMenu.nib/info.nib deleted file mode 100644 index 9269d222..00000000 --- a/GPGMail/Resources/ko.lproj/GPGMenu.nib/info.nib +++ /dev/null @@ -1,23 +0,0 @@ - - - - - IBDocumentLocation - 84 120 356 278 0 0 1024 746 - IBEditorPositions - - 34 - 253 798 197 230 0 0 1680 1028 - 88 - 384 552 148 194 0 0 1024 746 - - IBFramework Version - 437.0 - IBOpenObjects - - 34 - - IBSystem Version - 8A428 - - diff --git a/GPGMail/Resources/ko.lproj/GPGMenu.nib/objects.nib b/GPGMail/Resources/ko.lproj/GPGMenu.nib/objects.nib deleted file mode 100644 index 77150e3f..00000000 Binary files a/GPGMail/Resources/ko.lproj/GPGMenu.nib/objects.nib and /dev/null differ diff --git a/GPGMail/Resources/ko.lproj/GPGMessageViewerAccessoryView.nib/classes.nib b/GPGMail/Resources/ko.lproj/GPGMessageViewerAccessoryView.nib/classes.nib deleted file mode 100644 index 5c956adf..00000000 --- a/GPGMail/Resources/ko.lproj/GPGMessageViewerAccessoryView.nib/classes.nib +++ /dev/null @@ -1,112 +0,0 @@ - - - - - IBClasses - - - ACTIONS - - authenticate - id - decrypt - id - gpgAuthenticate - id - gpgDecrypt - id - toggleSignatureExtraView - id - - CLASS - GPGMessageViewerAccessoryViewOwner - LANGUAGE - ObjC - OUTLETS - - authenticationButton - NSButton - authenticationView - NSView - decryptedIconView - NSImageView - decryptedInfoView - NSView - decryptedMessageTextField - NSTextField - decryptionButton - NSButton - decryptionView - NSView - delegate - id - disclosureButton - NSButton - expirationAlertIconView - NSImageView - generalAlertIconView - NSImageView - policyAlertIconView - NSImageView - signatureBadPolicyAlertTextField - NSTextField - signatureCreationDateTextField - NSTextField - signatureExpirationDateTextField - NSTextField - signatureIconView - NSImageView - signatureKeyFingerprintTextField - NSTextField - signatureLowerView - NSView - signatureMessageTextField - NSTextField - signatureToggleButton - NSButton - signatureUpperView - NSView - signatureValidityTextField - NSTextField - signatureView - NSView - trustAlertIconView - NSImageView - userIDsPopDownButton - NSPopUpButton - - SUPERCLASS - NSObject - - - ACTIONS - - - id - - CLASS - FirstResponder - LANGUAGE - ObjC - SUPERCLASS - NSObject - - - CLASS - NSObject - LANGUAGE - ObjC - - - CLASS - ColorBackgroundView - LANGUAGE - ObjC - SUPERCLASS - NSView - - - IBVersion - 1 - - diff --git a/GPGMail/Resources/ko.lproj/GPGMessageViewerAccessoryView.nib/info.nib b/GPGMail/Resources/ko.lproj/GPGMessageViewerAccessoryView.nib/info.nib deleted file mode 100644 index 041904d3..00000000 --- a/GPGMail/Resources/ko.lproj/GPGMessageViewerAccessoryView.nib/info.nib +++ /dev/null @@ -1,20 +0,0 @@ - - - - - IBFramework Version - 629 - IBOldestOS - 5 - IBOpenObjects - - 75 - 18 - 11 - - IBSystem Version - 9F33 - targetFramework - IBCocoaFramework - - diff --git a/GPGMail/Resources/ko.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib b/GPGMail/Resources/ko.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib deleted file mode 100644 index 0faa2f03..00000000 Binary files a/GPGMail/Resources/ko.lproj/GPGMessageViewerAccessoryView.nib/keyedobjects.nib and /dev/null differ diff --git a/GPGMail/Resources/ko.lproj/InfoPlist.strings b/GPGMail/Resources/ko.lproj/InfoPlist.strings deleted file mode 100644 index 176588ff..00000000 --- a/GPGMail/Resources/ko.lproj/InfoPlist.strings +++ /dev/null @@ -1,6 +0,0 @@ -/* Localized versions of Info.plist keys */ - -CFBundleShortVersionString = "1.2.3 (v62)"; -CFBundleGetInfoHTML = "GPGMail version 1.2.3 (v62), Copyright 2000-2008, Stéphane Corthésy."; -CFBundleGetInfoString = "GPGMail 버전 1.2.3 (v62), 저작권 2000-2008, Stéphane Corthésy."; -NSHumanReadableCopyright = "© Stéphane Corthésy, 2000-2008"; diff --git a/GPGMail/Resources/questionMark.tiff b/GPGMail/Resources/questionMark.tiff deleted file mode 100644 index dcca439c..00000000 Binary files a/GPGMail/Resources/questionMark.tiff and /dev/null differ diff --git a/GPGMail/Resources/signed-Leopard.tiff b/GPGMail/Resources/signed-Leopard.tiff deleted file mode 100644 index 25691369..00000000 Binary files a/GPGMail/Resources/signed-Leopard.tiff and /dev/null differ diff --git a/GPGMail/Resources/signed-Tiger.tiff b/GPGMail/Resources/signed-Tiger.tiff deleted file mode 100644 index 25691369..00000000 Binary files a/GPGMail/Resources/signed-Tiger.tiff and /dev/null differ diff --git a/GPGMail/Resources/signed.tiff b/GPGMail/Resources/signed.tiff deleted file mode 100644 index 3e9dc237..00000000 Binary files a/GPGMail/Resources/signed.tiff and /dev/null differ diff --git a/GPGMail/Resources/triangle.tiff b/GPGMail/Resources/triangle.tiff deleted file mode 100644 index c7c96e03..00000000 Binary files a/GPGMail/Resources/triangle.tiff and /dev/null differ diff --git a/GPGMail/Resources/unsigned-Leopard.tiff b/GPGMail/Resources/unsigned-Leopard.tiff deleted file mode 100644 index f5be62e7..00000000 Binary files a/GPGMail/Resources/unsigned-Leopard.tiff and /dev/null differ diff --git a/GPGMail/Resources/unsigned-Tiger.tiff b/GPGMail/Resources/unsigned-Tiger.tiff deleted file mode 100644 index f5be62e7..00000000 Binary files a/GPGMail/Resources/unsigned-Tiger.tiff and /dev/null differ diff --git a/GPGMail/Resources/unsigned.tiff b/GPGMail/Resources/unsigned.tiff deleted file mode 100644 index 96c63c80..00000000 Binary files a/GPGMail/Resources/unsigned.tiff and /dev/null differ diff --git a/GPGMail/Source/ComposeBack+GPGMail.m b/GPGMail/Source/ComposeBack+GPGMail.m deleted file mode 100644 index 626d2fb4..00000000 --- a/GPGMail/Source/ComposeBack+GPGMail.m +++ /dev/null @@ -1,69 +0,0 @@ -/* ComposeBack+GPGMail.m created by dave on Sun 13-Apr-2004 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "ComposeBackEnd+GPGMail.h" -#import "GPGMailBundle.h" -#import "NSString+Message.h" -#import "NSString+GPGMail.h" - -#import - - -#ifdef SNOW_LEOPARD_64 -@implementation GPGMail_ComposeBackEnd -#else -@implementation ComposeBackEnd(GPGMail) -#endif - -- (NSArray *) gpgRecipients -{ - // Used only in GPGMailComposeAccessoryViewOwner => we could easily ask user for the recipients - NSArray *recipients = [[self valueForKey:@"_cleanHeaders"] objectForKey:@"to"]; - - if(recipients != nil) - recipients = [recipients arrayByAddingObjectsFromArray:[[self valueForKey:@"_cleanHeaders"] objectForKey:@"cc"]]; - else - recipients = [[self valueForKey:@"_cleanHeaders"] objectForKey:@"cc"]; - - if([[GPGMailBundle sharedInstance] usesBCCRecipients]){ - if(recipients != nil) - recipients = [recipients arrayByAddingObjectsFromArray:[[self valueForKey:@"_cleanHeaders"] objectForKey:@"bcc"]]; - else - recipients = [[self valueForKey:@"_cleanHeaders"] objectForKey:@"bcc"]; - } - - return [recipients valueForKey:@"gpgNormalizedEmail"]; -} - -- (NSArray *) gpgBCCRecipients -{ - return [[self valueForKey:@"_cleanHeaders"] objectForKey:@"bcc"]; -} - -@end diff --git a/GPGMail/Source/ComposeBackEnd+GPGMail.h b/GPGMail/Source/ComposeBackEnd+GPGMail.h deleted file mode 100644 index caf39522..00000000 --- a/GPGMail/Source/ComposeBackEnd+GPGMail.h +++ /dev/null @@ -1,46 +0,0 @@ -/* ComposeBack+GPGMail.h created by dave on Sun 13-Apr-2004 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - -@class NSArray; - -#ifdef SNOW_LEOPARD_64 -@interface GPGMail_ComposeBackEnd : NSObject -#else -@interface ComposeBackEnd(GPGMail) -#endif - -- (NSArray *) gpgRecipients; -// Returns email addresses of To, CC (but not BCC) - -- (NSArray *) gpgBCCRecipients; -// Returns email addresses of BCC - -@end diff --git a/GPGMail/Source/GPG.subproj/GPGHandler.h b/GPGMail/Source/GPG.subproj/GPGHandler.h deleted file mode 100644 index b0cb8410..00000000 --- a/GPGMail/Source/GPG.subproj/GPGHandler.h +++ /dev/null @@ -1,106 +0,0 @@ -/* GPGHandler.h created by stephane on Fri 30-Jun-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import -#import -#import - - -@class NSArray; -@class NSConditionLock; -@class NSData; -@class NSTask; - - -typedef enum { - GPGNoSignature, - GPGInlineSignature, // Old-style - GPGDetachedSignature, // OpenPGP: sign+encrypt in one operation - GPGEncapsulatedSignature // OpenPGP: sign then encrypt => 2 operations -}GPGMessageSignatureType; - - -extern NSString *GPGHandlerException; - // UserInfo: - // TerminationStatus = task termination status (NSNumber) - // Error = stderr (NSString) - - -@interface GPGHandler : NSObject -{ - NSConditionLock *readLock; - NSData *stderrData; - NSData *stdoutData; - NSData *statusData; - NSTask *currentTask; - BOOL operationCancelled; -} - -// All operations use options: --armor --utf8-strings - -+ (id) handler; -+ (void) clearCache; - -+ (NSData *) convertedStringData:(NSData *)data fromEncoding:(CFStringEncoding)originalEncoding toEncoding:(CFStringEncoding *)newEncoding; -// Always use this method before passing data to a method: -// gpg knows only very few encodings, and will convert data -// to the one it knows. - -- (NSData *) encryptData:(NSData *)data withSignatureType:(GPGMessageSignatureType)signatureType sender:(NSString *)sender passphrase:(NSString *)passphrase recipients:(NSArray *)recipients encoding:(CFStringEncoding)encoding; -// Raises an exception in case of error. - -- (NSData *) decryptData:(NSData *)data passphrase:(NSString *)passphrase signature:(NSString **)signature encoding:(CFStringEncoding)encoding; -// Returns decrypted data. Signature (if any) is returned in *signature. -// Raises an exception in case of error. - -- (NSData *) signData:(NSData *)data sender:(NSString *)sender passphrase:(NSString *)passphrase detachedSignature:(BOOL)detachedSignature encoding:(CFStringEncoding)encoding; -// Returns either signed data, or detached signature. -// Raises an exception in case of error. - -- (NSString *) authenticationSignatureFromData:(NSData *)signedData encoding:(CFStringEncoding)encoding; -// Returns authenticated user-id (Real Name (Comment) ) -// Raises an exception in case of error. - -- (NSString *) authenticationSignatureFromData:(NSData *)signedData signatureFile:(NSString *)signatureFile encoding:(CFStringEncoding)encoding; -// Returns authenticated user-id (Real Name (Comment) ) -// Raises an exception in case of error. - -- (NSArray *) knownHashAlgorithms; -// Raises an exception in case of error. -- (NSString *) defaultHashAlgorithm; -// Raises an exception in case of error. - -// The following two method expect normalized EndOfLines CRLF -+ (NSRange) pgpSignatureBlockRangeInData:(NSData *)data; -+ (NSRange) pgpEncryptionBlockRangeInData:(NSData *)data; -+ (NSRange) pgpPublicKeyBlockRangeInData:(NSData *)data; - -- (void) cancelOperation; - -@end diff --git a/GPGMail/Source/GPG.subproj/GPGHandler.m b/GPGMail/Source/GPG.subproj/GPGHandler.m deleted file mode 100644 index a21a8286..00000000 --- a/GPGMail/Source/GPG.subproj/GPGHandler.m +++ /dev/null @@ -1,826 +0,0 @@ -/* GPGHandler.m created by stephane on Fri 30-Jun-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "GPGHandler.h" - -#import -#import -#import -#import - - -NSString *GPGHandlerException = @"GPGHandlerException"; - - -#define NOTHING_READ 0 -#define READ_STDOUT (1 << 0) -#define READ_STDERR (1 << 1) -#define READ_ALL (READ_STDOUT | READ_STDERR) - - -@interface GPGHandler(Private) -- (NSException *) runGpgTaskWithArguments:(NSArray *)arguments passphrase:(NSString *)passphrase inputData:(NSData *)inputData outputData:(NSData **)outputData errorData:(NSData **)errorData encoding:(CFStringEncoding)encoding; -+ (NSString *) defaultHashAlgorithm; -@end - - -@implementation GPGHandler - -static NSString *_gpgPath = nil; -static NSArray *_knownHashAlgorithms = nil; -static NSString *_defaultHashAlgorithm = nil; -static BOOL _blindlyTrustAllKeysForEncryption = NO; - -+ (void) initialize -{ - // Do not call super - see +initialize documentation - if(_defaultHashAlgorithm == nil){ - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationWillTerminate:) name:NSApplicationWillTerminateNotification object:[NSApplication sharedApplication]]; - (void)[self defaultHashAlgorithm]; // We need this to know ASAP which gpg version we're running - } -} - -+ (id) handler -{ - GPGHandler *newHandler = [[self alloc] init]; - - return [newHandler autorelease]; -} - -+ (void) applicationWillTerminate:(NSNotification *)notification -{ - [[NSNotificationCenter defaultCenter] removeObserver:self name:[notification name] object:[notification object]]; - [self clearCache]; -} - -+ (void) clearCache -{ - [_gpgPath release]; - _gpgPath = nil; - [_knownHashAlgorithms release]; - _knownHashAlgorithms = nil; - [_defaultHashAlgorithm release]; - _defaultHashAlgorithm = nil; -} - -+ (NSData *) convertedStringData:(NSData *)data fromEncoding:(CFStringEncoding)originalEncoding toEncoding:(CFStringEncoding *)newEncoding -{ - NSParameterAssert(newEncoding != NULL); - switch(originalEncoding){ - case kCFStringEncodingISOLatin1: - case kCFStringEncodingISOLatin2: - case kCFStringEncodingKOI8_R: - case kCFStringEncodingISO_2022_JP: // Tomio addition 28.04.05 - case kCFStringEncodingUTF8: - case kCFStringEncodingASCII: // We'll us iso8859-1 for gpg; would cause problem if comment contains non-ASCII chars... - *newEncoding = originalEncoding; - return data; - default:{ - CFStringRef aString = CFStringCreateFromExternalRepresentation(NULL, (CFDataRef)data, originalEncoding); /* May return NULL on conversion error */ - CFDataRef outputData; - - NSAssert(aString != NULL, @"Unable to convert back to string!"); - outputData = CFStringCreateExternalRepresentation(NULL, aString, kCFStringEncodingISOLatin1, 0); /* May return NULL on conversion error */ - if(outputData == NULL){ - outputData = CFStringCreateExternalRepresentation(NULL, aString, kCFStringEncodingISOLatin2, 0); - if(outputData == NULL){ - outputData = CFStringCreateExternalRepresentation(NULL, aString, kCFStringEncodingKOI8_R, 0); - if(outputData == NULL){ - outputData = CFStringCreateExternalRepresentation(NULL, aString, kCFStringEncodingISO_2022_JP, 0); - if(outputData == NULL){ - outputData = CFStringCreateExternalRepresentation(NULL, aString, kCFStringEncodingUTF8, 0); - NSAssert(outputData != NULL, @"Unable to convert string to UTF-8!!!"); - *newEncoding = kCFStringEncodingUTF8; - } - else - *newEncoding = kCFStringEncodingISO_2022_JP; - } - else - *newEncoding = kCFStringEncodingKOI8_R; - } - else - *newEncoding = kCFStringEncodingISOLatin2; - } - else - *newEncoding = kCFStringEncodingISOLatin1; - - CFRelease(aString); - - return [(NSData *)outputData autorelease]; - } - } -} - -static NSString *stringForEncoding(CFStringEncoding encoding) -{ - switch(encoding){ - case kCFStringEncodingISOLatin1: - case kCFStringEncodingASCII: - return @"iso-8859-1"; - case kCFStringEncodingISOLatin2: - return @"iso-8859-2"; - case kCFStringEncodingKOI8_R: - return @"koi8-r"; - case kCFStringEncodingUTF8: - return @"utf-8"; - default: - // Let's use a default encoding instead of raising an exception. - // This gives user a chance to see message, even if some - // chars a not displayed correctly. - NSLog(@"### GPGMail: stringForEncoding(): unknown encoding %@ (%d) => using iso-8859-1", CFStringGetNameOfEncoding(encoding), encoding); - return @"iso-8859-1"; - } -} - -+ (NSArray *) knownHashAlgorithms -{ - if(_knownHashAlgorithms == nil){ - NSException *runException; - NSData *outputData; - -#warning Called more than once! -//NSLog(@"Launching --version"); - runException = [[self handler] runGpgTaskWithArguments:[NSArray arrayWithObject:@"--version"] passphrase:nil inputData:nil outputData:&outputData errorData:NULL encoding:kCFStringEncodingUTF8]; - if(!runException){ - NSString *stdoutString = [[NSString alloc] initWithData:outputData encoding:NSUTF8StringEncoding]; - NSScanner *aScanner = [NSScanner scannerWithString:stdoutString]; - - // gpg (GnuPG) 1.0.6 - // Copyright (C) 1999 Free Software Foundation, Inc. - // This program comes with ABSOLUTELY NO WARRANTY. - // This is free software, and you are welcome to redistribute it - // under certain conditions. See the file COPYING for details. - // - // Home: ~/.gnupg - // Supported algorithms: - // Cipher: 3DES, CAST5, BLOWFISH, TWOFISH - // Pubkey: ELG-E, DSA, ELG - // Hash: MD5, SHA1, RIPEMD160 - - if([stdoutString hasPrefix:@"gpg (GnuPG) 1.0.4"] || [stdoutString hasPrefix:@"gpg (GnuPG) 1.0.5"]) - // We need to know this, because one of the feature we rely on is not present before 1.0.6 - [NSException raise:NSGenericException format:@"GPGMail doesn't support gpg version < 1.0.6."]; - if(![stdoutString hasPrefix:@"gpg (GnuPG) 1.0.6"]) - _blindlyTrustAllKeysForEncryption = YES; // We will use --always-trust for encryption - - if([aScanner scanUpToString:@"Hash: " intoString:NULL] && ![aScanner isAtEnd]){ - NSString *algoString; - - NSAssert1([aScanner scanString:@"Hash: " intoString:NULL], @"### GPGMail: %s: Unable to scan the same string twice?!", __PRETTY_FUNCTION__); - NSAssert1([aScanner scanUpToString:@"\n" intoString:&algoString], @"### GPGMail: %s: No EOL on Hash line?!", __PRETTY_FUNCTION__); - algoString = [algoString lowercaseString]; - _knownHashAlgorithms = [algoString componentsSeparatedByString:@", "]; - } - if(_knownHashAlgorithms == nil || [_knownHashAlgorithms count] == 0){ - NSLog(@"### GPGMail: %s: Unable to retrieve known hash algorithms! Forcing use of SHA1.\n%@", __PRETTY_FUNCTION__, stdoutString); - _knownHashAlgorithms = [NSArray arrayWithObjects:@"SHA1", nil]; - } - [stdoutString release]; - [_knownHashAlgorithms retain]; - } - else - [runException raise]; - } - - return _knownHashAlgorithms; -} - -+ (NSString *) defaultHashAlgorithm -{ - if(_defaultHashAlgorithm == nil){ - NSString *anAlgo = [[NSUserDefaults standardUserDefaults] stringForKey:@"GPGHashAlgorithm"]; - - if(anAlgo == nil || [anAlgo length] == 0) - anAlgo = [[self knownHashAlgorithms] objectAtIndex:0]; - else{ - anAlgo = [anAlgo lowercaseString]; - NSAssert3([[self knownHashAlgorithms] containsObject:anAlgo], @"### GPGMail: %s: Unknown hash algorithm '%@'. Known hash algorithms: %@", __PRETTY_FUNCTION__, anAlgo, [self knownHashAlgorithms]); - } - - _defaultHashAlgorithm = [anAlgo retain]; - } - - return _defaultHashAlgorithm; -} - -+ (NSString *) gpgPath -{ - if(_gpgPath == nil) - _gpgPath = [[[GPGEngine engineForProtocol:GPGOpenPGPProtocol] executablePath] retain]; - return _gpgPath; -} - -- (id) init -{ - if((self = [super init]) != nil){ - readLock = [[NSConditionLock alloc] initWithCondition:NOTHING_READ]; - } - - return self; -} - -- (void) dealloc -{ - [[NSNotificationCenter defaultCenter] removeObserver:self]; - [readLock release]; - [stderrData release]; - [stdoutData release]; - [statusData release]; - [currentTask release]; - - [super dealloc]; -} - -- (NSString *) gpgPath -{ - return [[self class] gpgPath]; -} - -static NSArray *recipientArgumentsFromSenderAndArguments(NSString *sender, NSArray *recipients) -// We add the sender to the recipients list, so user can always decrypt data he has encrypted -// This can be disabled with userDefault GPGEncryptsToSelf set to NO. -{ - int recipientsCount = [recipients count]; - NSMutableArray *recipientArgs = [NSMutableArray arrayWithCapacity:2 * recipientsCount + 2]; - int i; - - for(i = 0; i < recipientsCount; i++){ - NSString *aRecipient = [recipients objectAtIndex:i]; - - if([recipientArgs containsObject:aRecipient]) - // No need to add the same recipient more than once; gpg probably checks this too. - continue; - [recipientArgs addObject:@"--recipient"]; - [recipientArgs addObject:aRecipient]; - } - - if(![recipientArgs containsObject:sender] && [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGEncryptsToSelf"]){ - [recipientArgs addObject:@"--recipient"]; - [recipientArgs addObject:sender]; - } - - return recipientArgs; -} - -- (NSException *) displayableExceptionFromException:(NSException *)exception -{ - if([[exception name] isEqualToString:GPGHandlerException]){ - NSString *errorString = [[exception userInfo] objectForKey:@"Error"]; - NSArray *errorLines = [errorString componentsSeparatedByString:@"\n"]; - int errorLineCount = [errorLines count], i; - NSMutableArray *filteredErrorLines = [NSMutableArray arrayWithCapacity:errorLineCount]; - - for(i = 0; i < errorLineCount; i++){ - NSString *errorLine = [errorLines objectAtIndex:i]; - - // Skip first two lines: - // gpg: can't mmap pool of 16384 bytes: Invalid argument - using malloc - // gpg: Please note that you don't have secure memory on this system - if([errorLine hasPrefix:@"gpg: can't mmap"] || [errorLine hasPrefix:@"gpg: Please note that"]) - continue; - - if([errorLine hasPrefix:@"gpg: "]){ - if([errorLine length] > 5) - [filteredErrorLines addObject:[errorLine substringFromIndex:5]]; - } - else - [filteredErrorLines addObject:errorLine]; - } - errorString = [filteredErrorLines componentsJoinedByString:@"\n"]; - - return [NSException exceptionWithName:GPGHandlerException reason:errorString userInfo:[exception userInfo]]; - } - else - return exception; -} - -- (void) readStderr:(NSNotification *)notification -{ - [readLock lock]; - stderrData = [[[notification userInfo] objectForKey:NSFileHandleNotificationDataItem] retain]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:[notification name] object:[notification object]]; - [readLock unlockWithCondition:[readLock condition] | READ_STDERR]; -} - -- (void) readStdout:(NSNotification *)notification -{ - [readLock lock]; - stdoutData = [[[notification userInfo] objectForKey:NSFileHandleNotificationDataItem] retain]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:[notification name] object:[notification object]]; - [readLock unlockWithCondition:[readLock condition] | READ_STDOUT]; -} - -- (NSException *) runGpgTaskWithArguments:(NSArray *)arguments passphrase:(NSString *)passphrase inputData:(NSData *)inputData outputData:(NSData **)outputData errorData:(NSData **)errorData encoding:(CFStringEncoding)encoding -{ - NSPipe *stdinPipe = [NSPipe pipe]; - NSPipe *stdoutPipe = [NSPipe pipe]; - NSPipe *stderrPipe = [NSPipe pipe]; - NSException *result = nil; - NSArray *defaultArguments; - NSMutableDictionary *environment = [NSMutableDictionary dictionaryWithDictionary:[[NSProcessInfo processInfo] environment]]; // We MUST add current environment!! - NSData *passphraseData; - - operationCancelled = NO; - - if(passphrase != nil){ - passphraseData = (NSData *)CFStringCreateExternalRepresentation(NULL, (CFStringRef)[passphrase stringByAppendingString:@"\n"], encoding, 0); -#warning We should modify message encoding... - NSAssert2(passphraseData != nil, @"### GPGMail: %s: unable to encode passphrase using encoding %@! Please don't use non-ASCII characters for your passphrase, or use UTF-8 in Mail.", __PRETTY_FUNCTION__, stringForEncoding(encoding)); - } - else - passphraseData = nil; - - currentTask = [[NSTask alloc] init]; - [currentTask setLaunchPath:[self gpgPath]]; - - // WARNING: with gpg < 1.0.6, --charset utf-8 is not recognized as a valid option! - defaultArguments = [NSArray arrayWithObjects:@"--no-verbose", @"--batch", @"--no-tty", /*@"--utf8-strings",*/ @"--charset", stringForEncoding(encoding), nil]; - [currentTask setArguments:[defaultArguments arrayByAddingObjectsFromArray:arguments]]; // Should we add --openpgp argument? - [currentTask setStandardInput:stdinPipe]; - [currentTask setStandardOutput:stdoutPipe]; - [currentTask setStandardError:stderrPipe]; - // Let's set env variables used by GNU text localization - // We can parse only English strings... - [environment setObject:@"en_US.UTF-8" forKey:@"LANG"]; - [environment setObject:@"en_US.UTF-8" forKey:@"LANGUAGE"]; - [environment setObject:@"en_US.UTF-8" forKey:@"LC_ALL"]; - [environment setObject:@"en_US.UTF-8" forKey:@"LC_MESSAGE"]; - [currentTask setEnvironment:environment]; - - if([[NSUserDefaults standardUserDefaults] boolForKey:@"GPGTraceEnabled"]) - NSLog(@"----------\n%@ %@", [currentTask launchPath], [[currentTask arguments] componentsJoinedByString:@" "]); - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(readStderr:) name:NSFileHandleReadToEndOfFileCompletionNotification object:[stderrPipe fileHandleForReading]]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(readStdout:) name:NSFileHandleReadToEndOfFileCompletionNotification object:[stdoutPipe fileHandleForReading]]; - - @try{ - NSException *writeException = nil; - - [currentTask launch]; - // We need to read the pipes asynchronously, as we cannot poll more than one pipe: - // If we use non-blocking methods (provided by bbum's category), sometimes the task - // seems to be never-ending! If we use blocking methods, well, we are blocked if - // data size is larger than 4k (pipe buffer size). - // By using asynchronous reading, we need to wait for the end of reading, that's why we - // use a NSConditionLock to make the synchronization. Does anyone have a better idea? - // We NEED to make the following 2 calls before writing data to stdin, else it blocks - // if inputData is large. - // BUG: if user enters wrong passphrase, Mail throws a SIGPIPE signal which - // results in a warning for the user; he can ignore it. - [[stderrPipe fileHandleForReading] readToEndOfFileInBackgroundAndNotify]; - [[stdoutPipe fileHandleForReading] readToEndOfFileInBackgroundAndNotify]; - if(passphraseData != nil){ - // Problem: if we write passphrase + data in one pass, then if passphrase - // is wrong, data cannot be written, because task has terminated, - // and system raises a SIGPIPE exception that we cannot catch. - // To workaround this problem (this will be corrected with MacGPGME), - // we write passphrase, then wait 1 second, and check if stdout and stderr - // pipes have been closed, meaning that there was an error with passphrase. - @try{ - [[stdinPipe fileHandleForWriting] writeData:passphraseData]; // SIGPIPE might be thrown here - }@catch(NSException *localException){ - writeException = localException; - inputData = nil; - } - if(inputData != nil){ - [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:1.0]]; - if([readLock tryLockWhenCondition:READ_ALL]){ - inputData = nil; - [readLock unlock]; - } - } - } - if(inputData != nil){ -#ifdef DEBUG - [inputData writeToFile:[NSTemporaryDirectory() stringByAppendingPathComponent:[@"stdin-" stringByAppendingString:[[NSProcessInfo processInfo] globallyUniqueString]]] atomically:NO]; -#endif - @try{ - if([[NSUserDefaults standardUserDefaults] boolForKey:@"GPGTraceEnabled"]){ - CFStringRef aString = CFStringCreateFromExternalRepresentation(NULL, (CFDataRef)inputData, encoding); - - NSLog(@"IN: %@", aString); - CFRelease(aString); - } - [[stdinPipe fileHandleForWriting] writeData:inputData]; // SIGPIPE might be thrown here - }@catch(NSException *localException){ - writeException = localException; - } - } - [[stdinPipe fileHandleForWriting] closeFile]; // We need to inform task that we do not have any more data for it! - - // It seems we need to run the current runloop for some more time, as notifications - // are not yet all posted... - while([readLock tryLockWhenCondition:READ_ALL] == NO) - [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; - - // Rendez-vous - [readLock unlockWithCondition:NOTHING_READ]; - - [currentTask waitUntilExit]; // Couldn't we put this call before the rendez-vous?! - - if([[NSUserDefaults standardUserDefaults] boolForKey:@"GPGLogStderrEnabled"]){ - CFStringRef aString = CFStringCreateFromExternalRepresentation(NULL, (CFDataRef)stderrData, encoding); - - NSLog(@"%@", aString); - CFRelease(aString); - } - if(!operationCancelled){ -#ifdef DEBUG - [stdoutData writeToFile:[NSTemporaryDirectory() stringByAppendingPathComponent:[@"stdout-" stringByAppendingString:[[NSProcessInfo processInfo] globallyUniqueString]]] atomically:NO]; -#endif - if([[NSUserDefaults standardUserDefaults] boolForKey:@"GPGTraceEnabled"]){ - CFStringRef aString = CFStringCreateFromExternalRepresentation(NULL, (CFDataRef)stdoutData, encoding); - - NSLog(@"=> %@", aString); - CFRelease(aString); - if([[NSUserDefaults standardUserDefaults] boolForKey:@"GPGLogStderrEnabled"]) - NSLog(@"#Termination status: %d", [currentTask terminationStatus]); - else{ - aString = CFStringCreateFromExternalRepresentation(NULL, (CFDataRef)stderrData, encoding); - NSLog(@"#%d: %@", [currentTask terminationStatus], aString); - CFRelease(aString); - } - } - - // It can happen that returned status is 0 (no error), but according to stdout - // we should consider the task has failed. - // e.g. trying to encrypt with a key which is not trusted returns no error - // (if at least another key was trusted), but in our case it should be considered - // as an error! - if([currentTask terminationStatus]){ - NSString *stderrString = (NSString *)CFStringCreateFromExternalRepresentation(NULL, (CFDataRef)stderrData, encoding); - - result = [NSException exceptionWithName:GPGHandlerException reason:NSLocalizedStringFromTableInBundle(@"Error after gpg execution", @"GPG", [NSBundle bundleForClass:[self class]], "") userInfo:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithInt:[currentTask terminationStatus]], @"TerminationStatus", stderrString, @"Error", nil]]; - [stderrString release]; - // BUG: special case: decrypt + authenticate. Message could be decrypted - // successfully, but authentication failed (forged sig, missing pubkey, ...) - // => we should display decrypted message to user, but warn him than - // message could not be authenticated! - // Currently, there is no way with our API to do this! - // This will be solved with MacGPGME. - } - else{ - // Let's check stderr content... - NSString *stderrString = (NSString *)CFStringCreateFromExternalRepresentation(NULL, (CFDataRef)stderrData, encoding); - - if([stderrString rangeOfString:@"no info to calculate a trust probability"].length > 0) - result = [NSException exceptionWithName:GPGHandlerException reason:NSLocalizedStringFromTableInBundle(@"Error after gpg execution", @"GPG", [NSBundle bundleForClass:[self class]], "") userInfo:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithInt:[currentTask terminationStatus]], @"TerminationStatus", stderrString, @"Error", nil]]; - [stderrString release]; - } - } - else{ - [stdoutData release]; - stdoutData = nil; - [stderrData release]; - stderrData = nil; - result = [NSException exceptionWithName:GPGHandlerException reason:NSLocalizedStringFromTableInBundle(@"gpg execution manually interrupted", @"GPG", [NSBundle bundleForClass:[self class]], "") userInfo:nil]; - if([[NSUserDefaults standardUserDefaults] boolForKey:@"GPGTraceEnabled"]) - NSLog(@"## gpg manually interrupted"); - } - if(outputData != NULL) - *outputData = stdoutData; - if(errorData != NULL) - *errorData = stderrData; - }@catch(NSException *localException){ - result = localException; - } - - if(passphraseData != NULL) - CFRelease((CFDataRef)passphraseData); - [currentTask release]; - currentTask = nil; - [stderrData autorelease]; // Do NOT release it, as we passed it as a return parameter - stderrData = nil; - [stdoutData autorelease]; // Do NOT release it, as we passed it as a return parameter - stdoutData = nil; - - if(result && !operationCancelled) - result = [self displayableExceptionFromException:(NSException *)result]; - - return (NSException *)result; -} - -- (NSData *) encryptData:(NSData *)data withSignatureType:(GPGMessageSignatureType)signatureType sender:(NSString *)sender passphrase:(NSString *)passphrase recipients:(NSArray *)recipients encoding:(CFStringEncoding)encoding -{ - // If we want a detached signature, we need to call gpg twice: - // the first time with only encryption, - // and the second time with only detached signature. - // We cannot retrieve both a detached signature and an encrypted data. - NSException *runException; - NSData *outputData = nil; - NSMutableArray *arguments; - - NSParameterAssert(data != NULL); - NSParameterAssert(sender != nil); - NSParameterAssert(recipients != nil); - - arguments = [NSMutableArray arrayWithArray:recipientArgumentsFromSenderAndArguments(sender, recipients)]; - if(signatureType == GPGInlineSignature) - [arguments addObjectsFromArray:[NSArray arrayWithObjects:@"--local-user", sender, @"--passphrase-fd", @"0", @"--sign", nil]]; - [arguments addObjectsFromArray:[NSArray arrayWithObjects:@"--digest-algo", [self defaultHashAlgorithm], @"--textmode", @"--armor", @"--encrypt", nil]]; // According to doc, --encrypt must be added AFTER --recipient -#warning Using --always-trust when encrypting! - // With gpg 1.0.6, if we use a key which has not been signed by ours, - // encryption aborts with an error. - // With gpg 1.0.7, this is no longer the case: encryption is done, but only - // with keys that have been signed by ours! - // In order to avoid (workaround...) the problem of sending mails - // missing (unsigned) receiver keys, we decide to trust all keys blindly, - // by using --always-trust. - if(_blindlyTrustAllKeysForEncryption) - [arguments insertObject:@"--always-trust" atIndex:[arguments count] - 1]; - - if(signatureType == GPGNoSignature) - passphrase = nil; - - runException = [self runGpgTaskWithArguments:arguments passphrase:passphrase inputData:data outputData:&outputData errorData:NULL encoding:encoding]; - - if(runException) - [runException raise]; - - return outputData; -} - -- (NSData *) signData:(NSData *)data sender:(NSString *)sender passphrase:(NSString *)passphrase detachedSignature:(BOOL)detachedSignature encoding:(CFStringEncoding)encoding -{ - NSException *runException; - NSData *outputData = nil; - NSMutableArray *arguments; - - NSParameterAssert(data != NULL); - NSParameterAssert(sender != nil); - NSParameterAssert(passphrase != nil); - - arguments = [NSMutableArray arrayWithObjects:@"--digest-algo", [self defaultHashAlgorithm], @"--textmode", @"--local-user", sender, @"--passphrase-fd", @"0", @"--armor", nil]; - if(detachedSignature) - [arguments addObject:@"--detach-sig"]; - else - [arguments addObject:@"--clearsign"]; - -#ifdef DEBUG - [data writeToFile:@"/tmp/unsigned.data" atomically:NO]; -#endif - - runException = [self runGpgTaskWithArguments:arguments passphrase:passphrase inputData:data outputData:&outputData errorData:NULL encoding:encoding]; - - if(!runException){ -#ifdef DEBUG - [outputData writeToFile:@"/tmp/signed.data" atomically:NO]; -#endif - } - else - [runException raise]; - - return outputData; -} - -static NSString *extractSignaturesFromData(NSData *data, CFStringEncoding encoding) -{ - NSString *stderrString = (NSString *)CFStringCreateFromExternalRepresentation(NULL, (CFDataRef)data, encoding); - NSArray *stderrLines = [stderrString componentsSeparatedByString:@"\n"]; - int count = [stderrLines count], i; - int start, end; - NSMutableString *signature = [NSMutableString string]; - - // gpg: can't mmap pool of 16384 bytes: Invalid argument - using malloc - // gpg: Please note that you don't have secure memory on this system - // gpg: Signature made 07/04/00 19:25:39 CEST using DSA key ID 12345678 - // gpg: Good signature from "Stephane Corthesy (Sen:te) " - // - - // gpg: Please note that you don't have secure memory on this system - // gpg: Signature made 01/04/01 17:04:11 CET using DSA key ID 12345678 - // gpg: Good signature from "Stephane Corthesy " - // gpg: WARNING: This key is not certified with a trusted signature! - // gpg: There is no indication that the signature belongs to the owner. - // gpg: Fingerprint: xxxx xxxx - // - - // warning Might return many signatures - for(i = 0; i < count; i++){ - NSString *aLine = [stderrLines objectAtIndex:i]; - - if([aLine hasPrefix:@"gpg: Good signature"]){ - start = [aLine rangeOfString:@"\""].location + 1; - end = [aLine rangeOfString:@"\"" options:NSBackwardsSearch].location; - if([signature length] > 0) - [signature appendString:@", "]; - [signature appendString:[aLine substringWithRange:NSMakeRange(start, end - start)]]; - } - else if([signature length] > 0){ - // Append remaining lines (without gpg: ) - if([aLine length] > 0){ - [signature appendString:@"\n"]; - if([aLine hasPrefix:@"gpg: "]) - [signature appendString:[aLine substringFromIndex:5]]; - else - [signature appendString:aLine]; - } - } - } - [stderrString release]; - - if([signature length] > 0) - return signature; - else - return nil; -} - -- (NSData *) decryptData:(NSData *)data passphrase:(NSString *)passphrase signature:(NSString **)signature encoding:(CFStringEncoding)encoding -{ - NSException *runException; - NSData *errorData; - NSData *outputData = nil; - NSArray *arguments; - - NSParameterAssert(data != NULL); - NSParameterAssert(passphrase != nil); - - arguments = [NSArray arrayWithObjects:@"--passphrase-fd", @"0", @"--decrypt", nil]; - - runException = [self runGpgTaskWithArguments:arguments passphrase:passphrase inputData:data outputData:&outputData errorData:&errorData encoding:encoding]; - - if(!runException){ - if(signature != NULL) - *signature = extractSignaturesFromData(errorData, encoding); - } - else - [runException raise]; - - return outputData; -} - -- (NSString *) authenticationSignatureFromData:(NSData *)signedData encoding:(CFStringEncoding)encoding -{ - NSException *runException; - NSData *errorData = nil; - NSData *outputData; - NSArray *arguments; - - NSParameterAssert(signedData != nil); - - arguments = [NSArray arrayWithObject:@"--verify"]; - - runException = [self runGpgTaskWithArguments:arguments passphrase:nil inputData:signedData outputData:&outputData errorData:&errorData encoding:encoding]; - - if(runException) - [runException raise]; - - return extractSignaturesFromData(errorData, encoding); -} - -- (NSString *) authenticationSignatureFromData:(NSData *)signedData signatureFile:(NSString *)signatureFile encoding:(CFStringEncoding)encoding -{ - NSException *runException; - NSData *errorData = nil; - NSData *outputData; - NSArray *arguments; - - NSParameterAssert(signedData != nil); - NSParameterAssert(signatureFile != nil); - - arguments = [NSArray arrayWithObjects:@"--verify", signatureFile, @"-", nil]; // gpg 1.0.4 fix: we MUST add the - argument - - runException = [self runGpgTaskWithArguments:arguments passphrase:nil inputData:signedData outputData:&outputData errorData:&errorData encoding:encoding]; - - if(runException) - [runException raise]; - - return extractSignaturesFromData(errorData, encoding); -} - -- (NSArray *) knownHashAlgorithms -{ - return [[self class] knownHashAlgorithms]; -} - -- (NSString *) defaultHashAlgorithm -{ - return [[self class] defaultHashAlgorithm]; -} - -+ (NSRange) _pgpBlockRangeInData:(NSData *)data delimitedBy:(NSString *)startString and:(NSString *)endString - // Should we support multiple pgp blocks, serialized or embedded? - // Currently it returns the first start-of-block with the first end-of-block -{ - NSRange pgpRange = NSMakeRange(NSNotFound, 0); - NSString *string; - NSRange beginRange; - - string = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding]; // Using ASCII will consider each byte as a char, whatever the char is; we don't care about 8bit chars - startString = [startString stringByAppendingString:@"\r\n"]; - - // We'd better look for string in NSData, not in NSString, to avoid byte conversions (? ASCII ?) - if(![string hasPrefix:startString]){ - startString = [@"\r\n" stringByAppendingString:startString]; - beginRange = [string rangeOfString:startString]; - } - else - beginRange = NSMakeRange(0, [startString length]); - if(beginRange.length > 0){ - NSRange endRange; - - endString = [@"\r\n" stringByAppendingString:endString]; - endRange = [string rangeOfString:endString options:0 range:NSMakeRange(NSMaxRange(beginRange), [string length] - NSMaxRange(beginRange))]; - if(endRange.length > 0){ - NSAssert1(endRange.location > beginRange.location, @"### GPGMail: %s: end is before start!", __PRETTY_FUNCTION__); - pgpRange = NSUnionRange(beginRange, endRange); - } - } - - [string release]; - - return pgpRange; -} - -+ (NSRange) _pgpBlockRangeInData:(NSData *)data delimitedBy:(NSString *)startString and:(NSString *)endString encoding:(CFStringEncoding)encoding -// Should we support multiple pgp blocks, serialized or embedded? -// Currently it returns the first start-of-block with the first end-of-block -{ - // FIXME: Does not support UTF16/UTF24/UTF32 - NSRange pgpRange = NSMakeRange(NSNotFound, 0); - NSString *string; - NSRange beginRange; - - string = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding]; // Using ASCII will consider each byte as a char, whatever the char is; we don't care about 8bit chars - startString = [startString stringByAppendingString:@"\r\n"]; - - // We'd better look for string in NSData, not in NSString, to avoid byte conversions (? ASCII ?) - if(![string hasPrefix:startString]){ - startString = [@"\r\n" stringByAppendingString:startString]; - beginRange = [string rangeOfString:startString]; - } - else - beginRange = NSMakeRange(0, [startString length]); - if(beginRange.length > 0){ - NSRange endRange; - - endString = [@"\r\n" stringByAppendingString:endString]; - endRange = [string rangeOfString:endString options:0 range:NSMakeRange(NSMaxRange(beginRange), [string length] - NSMaxRange(beginRange))]; - if(endRange.length > 0){ - NSAssert1(endRange.location > beginRange.location, @"### GPGMail: %s: end is before start!", __PRETTY_FUNCTION__); - pgpRange = NSUnionRange(beginRange, endRange); - } - } - - [string release]; - - return pgpRange; -} - -+ (NSRange) pgpSignatureBlockRangeInData:(NSData *)data -{ - return [self _pgpBlockRangeInData:data delimitedBy:@"-----BEGIN PGP SIGNED MESSAGE-----" and:@"-----END PGP SIGNATURE-----"]; -} - -+ (NSRange) pgpEncryptionBlockRangeInData:(NSData *)data -{ - return [self _pgpBlockRangeInData:data delimitedBy:@"-----BEGIN PGP MESSAGE-----" and:@"-----END PGP MESSAGE-----"]; -} - -+ (NSRange) pgpPublicKeyBlockRangeInData:(NSData *)data -{ - return [self _pgpBlockRangeInData:data delimitedBy:@"-----BEGIN PGP PUBLIC KEY BLOCK-----" and:@"-----END PGP PUBLIC KEY BLOCK-----"]; -} - -+ (NSRange) pgpSignatureBlockRangeInData:(NSData *)data encoding:(CFStringEncoding)encoding -{ - return [self _pgpBlockRangeInData:data delimitedBy:@"-----BEGIN PGP SIGNED MESSAGE-----" and:@"-----END PGP SIGNATURE-----" encoding:encoding]; -} - -+ (NSRange) pgpEncryptionBlockRangeInData:(NSData *)data encoding:(CFStringEncoding)encoding -{ - return [self _pgpBlockRangeInData:data delimitedBy:@"-----BEGIN PGP MESSAGE-----" and:@"-----END PGP MESSAGE-----" encoding:encoding]; -} - -- (void) cancelOperation -{ - operationCancelled = YES; - [currentTask interrupt]; -} - -@end diff --git a/GPGMail/Source/GPG.subproj/GPGPassphraseController.h b/GPGMail/Source/GPG.subproj/GPGPassphraseController.h deleted file mode 100644 index 6bf83704..00000000 --- a/GPGMail/Source/GPG.subproj/GPGPassphraseController.h +++ /dev/null @@ -1,62 +0,0 @@ -/* GPGPassphraseController.h created by stephane on Fri 30-Jun-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - - -@interface GPGPassphraseController : NSObject -{ - IBOutlet NSPanel *panel; - IBOutlet NSTextField *passphraseTextField; - IBOutlet NSTextField *messageTextField; - IBOutlet NSTextField *titleTextField; - IBOutlet NSTextField *clearPassphraseTextField; - IBOutlet NSButton *passphraseCheckBox; - IBOutlet NSTabView *passphraseTabView; - BOOL isInUse; - NSConditionLock *lock; -} - -+ (id) controller; -// Each call can return a different instance - -- (NSString *) passphraseForUser:(id)user title:(NSString *)title window:(NSWindow *)parentWindow; - // If result is nil, entry was cancelled. - // May return cached passphrase; not necessarily asks user for it. - // Automatically resets flush timer - // parentWindow is used only on MacOS X, for sheets -- (IBAction) endModal:(id)sender; -- (IBAction) toggleShowPassphrase:(id)sender; - -+ (void) setCachesPassphrases:(BOOL)flag; -+ (BOOL) cachesPassphrases; -+ (void) flushCachedPassphrases; -+ (void) flushCachedPassphraseForUser:(id)user; - -@end diff --git a/GPGMail/Source/GPG.subproj/GPGPassphraseController.m b/GPGMail/Source/GPG.subproj/GPGPassphraseController.m deleted file mode 100644 index 2f806eaf..00000000 --- a/GPGMail/Source/GPG.subproj/GPGPassphraseController.m +++ /dev/null @@ -1,606 +0,0 @@ -/* GPGPassphraseController.m created by stephane on Fri 30-Jun-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include -#include -#import "GPGPassphraseController.h" -#import -#import - - -#warning NOT thread-safe!!! - -@interface GPGPassphraseController(Private) -+ (void) controllerNoLongerUsed:(GPGPassphraseController *)controller; -- (BOOL) isInUse; -- (void) setIsInUse:(BOOL)flag; -@end - -@interface GPGPassphraseController (KeychainSupport) -- (BOOL) usesKeychain; -- (NSString *) retrievePassphraseForKey:(GPGKey *)key item:(SecKeychainItemRef *)itemPtr; -- (void) storePassphrase:(NSString *)aPhrase forKey:(GPGKey *)key; -- (void) deletePassphraseForKey:(GPGKey *)key; -@end - -@implementation GPGPassphraseController -#warning Modify that class: instances should be direct context delegates -// They would be initialized with parent window (if we can use sheets), -// and eventually key (in case we still can't fetch a key during passphrase delegation) - -static NSMutableSet *_controllerPool = nil; -static NSMutableDictionary *_cachedPassphrases = nil; -static NSTimer *_flushTimer = nil; - -+ (void) initialize -{ - [super initialize]; - if(!_controllerPool){ - _controllerPool = [[NSMutableSet allocWithZone:[self zone]] initWithCapacity:2]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationWillTerminate:) name:NSApplicationWillTerminateNotification object:[NSApplication sharedApplication]]; - } -} - -+ (id) controller -{ - NSEnumerator *anEnum = [_controllerPool objectEnumerator]; - GPGPassphraseController *aController; - - while((aController = [anEnum nextObject]) != nil){ - if(![aController isInUse]){ - [aController setIsInUse:YES]; - return aController; - } - } - - aController = [[GPGPassphraseController alloc] init]; - [_controllerPool addObject:aController]; - [aController release]; - - return aController; -} - -+ (void) applicationWillTerminate:(NSNotification *)notification -{ - [[NSNotificationCenter defaultCenter] removeObserver:self name:[notification name] object:[notification object]]; - [_controllerPool release]; - _controllerPool = nil; - [self flushCachedPassphrases]; - [_cachedPassphrases release]; - _cachedPassphrases = nil; - if(_flushTimer != nil){ - [_flushTimer invalidate]; - [_flushTimer release]; - _flushTimer = nil; - } -} - -- (id) init -{ - if((self = [super init]) != nil){ - isInUse = YES; - lock = [[NSConditionLock alloc] initWithCondition:0]; - [[[NSWorkspace sharedWorkspace] notificationCenter] addObserver:self selector:@selector(workspaceWillSleep:) name:NSWorkspaceWillSleepNotification object:[NSWorkspace sharedWorkspace]]; - } - - return self; -} - -- (void) dealloc -{ - [panel release]; - [lock release]; - [[[NSWorkspace sharedWorkspace] notificationCenter] removeObserver:self name:NSWorkspaceWillSleepNotification object:[NSWorkspace sharedWorkspace]]; - - [super dealloc]; -} - -- (void) workspaceWillSleep:(NSNotification *)notification -{ - [GPGPassphraseController flushCachedPassphrases]; -} - -+ (void) controllerNoLongerUsed:(GPGPassphraseController *)controller -{ - if([_controllerPool count] > 1) - [_controllerPool removeObject:controller]; -} - -- (BOOL) isInUse -{ - return isInUse; -} - -- (void) setIsInUse:(BOOL)flag -{ - isInUse = flag; - if(!isInUse) - [GPGPassphraseController controllerNoLongerUsed:self]; -} - -- (NSString *) passphraseForUser:(id)user title:(NSString *)title window:(NSWindow *)parentWindow -{ - // user is nil for symetric encryption - NSString *passphrase; - GPGKey *aKey = nil; - BOOL usesPGPKey = (user != nil && ![user isKindOfClass:[NSString class]]); - -//#warning The following assertion is no longer true! -// NSParameterAssert(title != nil); - if(title == nil) - title = @""; - - if(usesPGPKey){ - aKey = user; - if([self usesKeychain]) - passphrase = [self retrievePassphraseForKey:aKey item:NULL]; - else - passphrase = [_cachedPassphrases objectForKey:[aKey fingerprint]]; - } - else -#warning Should we cache/store passphrase for symetric encryption? - passphrase = nil; // Symetric encryption; we don't cache passphrases - - // WARNING: if cached passphrase is invalid, user cannot modify it without flushing cache! - if(!passphrase){ - if(!panel){ - NSAssert([NSBundle loadNibNamed:@"GPGPassphrase" owner:self], @"### GPGMail: -[GPGPassphraseController passphraseForUser:title:window:]: Unable to load nib named GPGPassphrase"); - NSAssert(panel != nil, @"### GPGMail: -[GPGPassphraseController passphraseForUser:title:window:]: Could not connect outlet"); - } - - if([[GPGMailBundle sharedInstance] showsPassphrase]){ - [clearPassphraseTextField setStringValue:@""]; - [clearPassphraseTextField setNeedsDisplay:YES]; - [passphraseCheckBox setState:NSOnState]; - [passphraseCheckBox setNeedsDisplay:YES]; - [passphraseTabView selectTabViewItemAtIndex:1]; - } - else{ - [passphraseTextField setStringValue:@""]; - [passphraseTextField setNeedsDisplay:YES]; - [passphraseCheckBox setState:NSOffState]; - [passphraseCheckBox setNeedsDisplay:YES]; - [passphraseTabView selectTabViewItemAtIndex:0]; - } - - if(!usesPGPKey) - [messageTextField setStringValue:NSLocalizedStringFromTableInBundle(@"Enter passphrase for this message:", @"GPG", [NSBundle bundleForClass:[self class]], "Passphrase entry message (no key)")]; - else - [messageTextField setStringValue:[NSString stringWithFormat:NSLocalizedStringFromTableInBundle(@"Enter passphrase for %@:", @"GPG", [NSBundle bundleForClass:[self class]], "Passphrase entry message"), [[GPGMailBundle sharedInstance] menuItemTitleForKey:aKey]]]; - [titleTextField setStringValue:title]; - -#if 0 - // It is not possible to use a sheet if we are already in the main thread! - if(parentWindow != nil){ - int returnCode; - - [lock lock]; -// [parentWindow orderFront:nil]; - [[NSApplication sharedApplication] beginSheet:panel modalForWindow:parentWindow modalDelegate:self didEndSelector:@selector(sheetDidEnd:returnCode:contextInfo:) contextInfo:&returnCode]; - [lock lockWhenCondition:1]; - if(returnCode == NSOKButton){ -// if([[NSApplication sharedApplication] runModalForWindow:panel] == NSOKButton) - if([passphraseCheckBox state]) - passphrase = [[[clearPassphraseTextField stringValue] copy] autorelease]; - else - passphrase = [[[passphraseTextField stringValue] copy] autorelease]; - if(usesPGPKey){ - if([self usesKeychain]) - [self storePassphrase:passphrase forKey:aKey]; - else - if(_cachedPassphrases != nil) - [_cachedPassphrases setObject:passphrase forKey:[aKey fingerprint]]; - } - } -// [parentWindow orderOut:nil]; - [lock unlock]; - } - else{ - } -#else - if([[NSApplication sharedApplication] runModalForWindow:panel] == NSOKButton){ - if([passphraseCheckBox state]) - passphrase = [[[clearPassphraseTextField stringValue] copy] autorelease]; - else - passphrase = [[[passphraseTextField stringValue] copy] autorelease]; - if(usesPGPKey){ - if([self usesKeychain]) - [self storePassphrase:passphrase forKey:aKey]; - else - if(_cachedPassphrases != nil) - [_cachedPassphrases setObject:passphrase forKey:[aKey fingerprint]]; - } - } -#endif - [passphraseTextField setStringValue:@""]; - [clearPassphraseTextField setStringValue:@""]; - } - - if(_flushTimer != nil){ - [_flushTimer invalidate]; - [_flushTimer release]; - _flushTimer = nil; - } - if([GPGPassphraseController cachesPassphrases]){ - // Problem: fire date we pass is actually a time interval, - // computed from computer's awake time, i.e. when computer - // sleeps, that time is not counted. E.g. if you set timeout - // to be 5 min. and your computer sleeps before timeout, - // during 5 hours, then total timeout will be 5 hours and - // some minutes! Not very good for passphrase caching... - // What we do is to check firedate every 10 seconds. - NSDate *flushTime = [NSDate dateWithTimeIntervalSinceNow:[[GPGMailBundle sharedInstance] passphraseFlushTimeout]]; - - _flushTimer = [[NSTimer scheduledTimerWithTimeInterval:10. target:self selector:@selector(flushTimeoutHasArrived) userInfo:flushTime repeats:YES] retain]; - [[NSRunLoop currentRunLoop] addTimer:_flushTimer forMode:NSModalPanelRunLoopMode]; - } - - [self setIsInUse:NO]; - - return passphrase; -} - -- (IBAction) endModal:(id)sender -{ - [panel orderOut:sender]; - [[NSApplication sharedApplication] stopModalWithCode:[sender tag]]; -// [[NSApplication sharedApplication] endSheet:panel returnCode:[sender tag]]; -} - -- (IBAction) toggleShowPassphrase:(id)sender -{ - if([sender state]){ - [clearPassphraseTextField setStringValue:[passphraseTextField stringValue]]; - [passphraseTextField setStringValue:@""]; - [clearPassphraseTextField setNeedsDisplay:YES]; - [passphraseTabView selectTabViewItemAtIndex:1]; - } - else{ - [passphraseTextField setStringValue:[clearPassphraseTextField stringValue]]; - [clearPassphraseTextField setStringValue:@""]; - [passphraseTextField setNeedsDisplay:YES]; - [passphraseTabView selectTabViewItemAtIndex:0]; - } -} - -- (void) sheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo -{ - *((int *)contextInfo) = returnCode; - [sheet orderOut:nil]; - [lock unlockWithCondition:1]; -} - -+ (void) setCachesPassphrases:(BOOL)flag -{ - if(flag){ - if(!_cachedPassphrases) - _cachedPassphrases = [[NSMutableDictionary allocWithZone:[self zone]] initWithCapacity:1]; - } - else{ - [self flushCachedPassphrases]; - [_cachedPassphrases release]; - _cachedPassphrases = nil; - } -} - -+ (BOOL) cachesPassphrases -{ - return _cachedPassphrases != nil; -} - -- (void) flushTimeoutHasArrived -{ - if([(NSDate *)[_flushTimer userInfo] compare:[NSDate date]] <= 0){ - [_flushTimer invalidate]; - [_flushTimer release]; - _flushTimer = nil; - [GPGPassphraseController flushCachedPassphrases]; - } -} - -+ (void) flushCachedPassphrases -{ - if(_cachedPassphrases) - [_cachedPassphrases removeAllObjects]; -} - -/*! - * Called after cached passphrase was invalid. - */ -+ (void) flushCachedPassphraseForUser:(id)user -{ - GPGKey *aKey; - NSString *userID; - - NSParameterAssert(user != nil); - - if([user isKindOfClass:[GPGKey class]]){ - aKey = user; - userID = [aKey fingerprint]; - } - else{ - userID = user; - aKey = nil; - } - - if(_cachedPassphrases) - [_cachedPassphrases removeObjectForKey:userID]; - // Don't forget to flush passphrase - if(aKey != nil && [[GPGMailBundle sharedInstance] usesKeychain]) - [[self controller] deletePassphraseForKey:aKey]; -} - -@end - -@implementation GPGPassphraseController (KeychainSupport) -// I should put that into MacGPGME/GPGAppKit... - -// Constants for Keychain support -#define PASSPHRASE_DATA_LENGTH 1024 -#define GPG_SERVICE_NAME "GPGMail" -// Should be "PGP" or "GnuPG" instead - -- (BOOL) usesKeychain -{ - return [[GPGMailBundle sharedInstance] usesKeychain]; -} - -- (NSString *) retrievePassphraseForKey:(GPGKey *)key item:(SecKeychainItemRef *)itemPtr -// Retrieve the passphrase from the keychain using key's fingerprint and -// the name of this application to find it. -{ - SecKeychainRef keychain = NULL; - NSString *aPassphrase = nil; - - if(SecKeychainCopyDefault(&keychain) != errSecNoDefaultKeychain){ - void *passphraseData; - OSStatus retVal = noErr; - const char *serviceName = GPG_SERVICE_NAME; - const char *accountName = [[key fingerprint] UTF8String]; - UInt32 passphraseDataLen = 0; - -#warning Memory leak with passphraseData? - retVal = SecKeychainFindGenericPassword(NULL, strlen(serviceName), serviceName, strlen(accountName), accountName, &passphraseDataLen, &passphraseData, itemPtr); - switch(retVal){ - case noErr:{ - NSData *pData; - -// pData = [NSData dataWithBytes:passphraseData length:passphraseDataLen]; - pData = [NSData dataWithBytesNoCopy:passphraseData length:passphraseDataLen freeWhenDone:YES]; - // Assume the encoding of the passphrase is done using utf8 (is going to be - // the default for gnupg anyway) -#warning Check encoding - aPassphrase = [[NSString alloc] initWithData:pData encoding:NSUTF8StringEncoding]; - [aPassphrase autorelease]; - break; - } - case errSecItemNotFound: -// if(GPGMailLoggingLevel) -// NSLog(@"[DEBUG] Couldn't find password in keychain for %@@%@", userStr, aHostStr); - break; - case errSecNoDefaultKeychain: - [NSException raise:NSGenericException format:NSLocalizedStringFromTableInBundle(@"Can't get default keychain!", @"GPG", [NSBundle bundleForClass:[self class]], "")]; - break; - case errSecBufferTooSmall: - [NSException raise:NSInvalidArgumentException format:NSLocalizedStringFromTableInBundle(@"Password buffer too small for keychain!", @"GPG", [NSBundle bundleForClass:[self class]], "")]; - break; - default: - // The user most probably clicked "Deny", so return nada - break; - } - } - else - [NSException raise:NSGenericException format:NSLocalizedStringFromTableInBundle(@"Can't get default keychain!", @"GPG", [NSBundle bundleForClass:[self class]], "")]; - - return aPassphrase; -} - -- (void) deletePassphraseForKey:(GPGKey *)key -{ - OSStatus retVal = 0; - SecKeychainRef keychain = NULL; - NSString *passphraseStr = nil; - SecKeychainItemRef keychainItem = NULL; - - // Find the password - if(SecKeychainCopyDefault(&keychain) != errSecNoDefaultKeychain) - passphraseStr = [self retrievePassphraseForKey:key item:&keychainItem]; - - // if it is there and the same, bail - if(passphraseStr){ - if(keychainItem != NULL){ - retVal = SecKeychainItemDelete(keychainItem); - CFRelease(keychainItem); - } - } - - if(keychain != NULL) - CFRelease(keychain); -} - -- (void) storePassphrase:(NSString *)aPhrase forKey:(GPGKey *)key - // Store aPhrase in the keychain for key, using a generic password key. -{ - OSStatus retVal = 0; - const char *serviceName = GPG_SERVICE_NAME; - NSString *accountName = [key fingerprint]; - const char *passphraseData; - SecKeychainRef keychain = NULL; - NSString *passphraseStr = nil; - BOOL canceled = NO; - SecKeychainItemRef keychainItem = NULL; - SecAccessRef accessRef; - SecKeychainAttributeList attrList; - SecKeychainAttribute *attributes; - - if(![aPhrase length] || !key) - return; - - // Find the password - if(SecKeychainCopyDefault(&keychain) != errSecNoDefaultKeychain) - passphraseStr = [self retrievePassphraseForKey:key item:&keychainItem]; - - // if it is there and the same, bail - if(passphraseStr && ([passphraseStr isEqualToString:aPhrase])){ - if(keychainItem != NULL) - CFRelease(keychainItem); - if(keychain != NULL) - CFRelease(keychain); - return; - } - - // if it is there, and not the same we erase the old one - if(([passphraseStr length] > 0) && ![passphraseStr isEqualToString:aPhrase]){ - retVal = SecKeychainItemDelete(keychainItem); - switch(retVal){ - case noErr: -// if(GPGMailLoggingLevel) -// NSLog(@"[DEBUG] Password deleted in keychain for %s:%@", GPG_SERVICE_NAME, userStr); - break; - case errSecNoDefaultKeychain: - if(keychainItem != NULL) - CFRelease(keychainItem); - if(keychain != NULL) - CFRelease(keychain); - [NSException raise:NSGenericException format:NSLocalizedStringFromTableInBundle(@"Can't get default keychain!", @"GPG", [NSBundle bundleForClass:[self class]], "")]; - break; - case errSecInvalidItemRef: - if(keychainItem != NULL) - CFRelease(keychainItem); - if(keychain != NULL) - CFRelease(keychain); - [NSException raise:NSInvalidArgumentException format:NSLocalizedStringFromTableInBundle(@"Invalid reference to the keychain item for %s:%@", @"GPG", [NSBundle bundleForClass:[self class]], "1st argument is service, 2nd argument is user name"), serviceName, accountName]; - break; - case userCanceledErr: - canceled = YES; - break; - default: - if(keychainItem != NULL) - CFRelease(keychainItem); - if(keychain != NULL) - CFRelease(keychain); - [NSException raise:NSGenericException format:NSLocalizedStringFromTableInBundle(@"Unknown problem accessing keychain! Error %d", @"GPG", [NSBundle bundleForClass:[self class]], ""), retVal]; - break; - } - } - // End of kluge - if(keychainItem != NULL){ - CFRelease(keychainItem); - keychainItem = NULL; - } - - // if there is no new passwd, bail... - if([aPhrase length] < 1 || canceled){ - if(keychain != NULL) - CFRelease(keychain); - return; - } - - // Add a new passphrase -#warning Check encoding - passphraseData = [aPhrase UTF8String]; // Use utf8 encoding for passphrase! - -// retVal = SecKeychainAddGenericPassword(keychain, strlen(serviceName), serviceName, strlen(accountName), accountName, strlen(passphraseData), passphraseData, &keychainItem); - retVal = SecAccessCreate((CFStringRef)@"GPGMail", NULL, &accessRef); - if(retVal != noErr){ - if(keychain != NULL) - CFRelease(keychain); - [NSException raise:NSGenericException format:NSLocalizedStringFromTableInBundle(@"Can't get new accessRef!", @"GPG", [NSBundle bundleForClass:[self class]], "")]; - } - attributes = (SecKeychainAttribute *)NSZoneMalloc(NSDefaultMallocZone(), 5 * sizeof(SecKeychainAttribute)); - attrList.count = 5; - attrList.attr = attributes; - attributes[0].tag = kSecDescriptionItemAttr; // Represents the 'kind' field - attributes[0].data = (void *)[@"PGP Key passphrase" UTF8String]; // Localize it? - attributes[0].length = strlen(attributes[0].data); - attributes[1].tag = kSecCommentItemAttr; - { - NSEnumerator *anEnum = [[key userIDs] objectEnumerator]; - GPGUserID *aUID; - NSMutableArray *uids = [NSMutableArray array]; - - while((aUID = [anEnum nextObject]) != nil) - [uids addObject:[aUID userID]]; - attributes[1].data = (void *)[[uids componentsJoinedByString:@"\n"] UTF8String]; - } - attributes[1].length = strlen(attributes[1].data); - attributes[2].tag = kSecLabelItemAttr; // Represents the 'name' field - attributes[2].data = (void *)[[NSString stringWithFormat:@"0x%@ - %@", [key shortKeyID], [key userID]] UTF8String]; - attributes[2].length = strlen(attributes[2].data); - attributes[3].tag = kSecAccountItemAttr; - attributes[3].data = (void *)[[key fingerprint] UTF8String]; - attributes[3].length = strlen(attributes[3].data); - attributes[4].tag = kSecServiceItemAttr; // Represents the 'where' field - attributes[4].data = (void *)GPG_SERVICE_NAME; - attributes[4].length = strlen(attributes[4].data); -// attributes[5].tag = kSecGenericItemAttr; // What is it for? -// attributes[5].data = (void *)[[key userID] UTF8String]; -// attributes[5].length = strlen(attributes[5].data); - - retVal = SecKeychainItemCreateFromContent(kSecGenericPasswordItemClass, &attrList, strlen(passphraseData), passphraseData, keychain, accessRef, &keychainItem); - NSZoneFree(NSDefaultMallocZone(), attributes); - switch(retVal){ - case noErr: -// if(GPGMailLoggingLevel) -// NSLog(@"[DEBUG] Password stored in keychain for %s:%@", GPG_SERVICE_NAME, userStr); - break; - case errSecNoDefaultKeychain: - if(keychainItem != NULL) - CFRelease(keychainItem); - if(keychain != NULL) - CFRelease(keychain); - [NSException raise:NSGenericException format:NSLocalizedStringFromTableInBundle(@"Can't get default keychain!", @"GPG", [NSBundle bundleForClass:[self class]], "")]; - break; - case errSecDuplicateItem: -// if(GPGMailLoggingLevel) -// NSLog(@"[DEBUG] The password you entered is already stored in the keychain for %s:%@", GPG_SERVICE_NAME, userStr); - // [NSException raise: NSInvalidArgumentException format: NSLocalizedString (@"The password you entered is already stored in the keychain for %s:%@", "1st argument is service, 2nd argument is user name"), GPG_SERVICE_NAME, userStr]; - break; - case errSecDataTooLarge: - if(keychainItem != NULL) - CFRelease(keychainItem); - if(keychain != NULL) - CFRelease(keychain); - [NSException raise:NSInvalidArgumentException format:NSLocalizedStringFromTableInBundle(@"Can't store the password for %s:%@: it is too long for the keychain!", @"GPG", [NSBundle bundleForClass:[self class]], "1st argument is service, 2nd argument is user name"), serviceName, accountName]; - break; - case userCanceledErr: - break; - default: - if(keychainItem != NULL) - CFRelease(keychainItem); - if(keychain != NULL) - CFRelease(keychain); - [NSException raise:NSGenericException format:NSLocalizedStringFromTableInBundle(@"Unknown problem accessing keychain! Error %d", @"GPG", [NSBundle bundleForClass:[self class]], ""), retVal]; - break; - } - if(keychain != NULL) - CFRelease(keychain); -} - -@end diff --git a/GPGMail/Source/GPG.subproj/GPGProgressIndicatorController.h b/GPGMail/Source/GPG.subproj/GPGProgressIndicatorController.h deleted file mode 100644 index 3bcdf688..00000000 --- a/GPGMail/Source/GPG.subproj/GPGProgressIndicatorController.h +++ /dev/null @@ -1,67 +0,0 @@ -/* GPGProgressIndicatorController.h created by dave on Mon 01-Jan-2001 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import -#import - - -@class NSBox; -@class NSButton; -@class NSProgressIndicator; -@class NSTextField; -@class NSView; - - -@interface GPGProgressIndicatorController : NSObject -{ - IBOutlet NSProgressIndicator *progressIndicator; - IBOutlet NSProgressIndicator *progressIndicator2; - IBOutlet NSTextField *titleTextField; - IBOutlet NSTextField *titleTextField2; - IBOutlet NSTextField *backgroundTextField; - IBOutlet NSButton *cancelButton; - IBOutlet NSBox *enclosingBox; - id delegate; -} - -+ (GPGProgressIndicatorController *) sharedController; - -- (void) startWithTitle:(NSString *)title delegate:(id)delegate; -// If delegate is nil, cancel is not possible; if delegate is set, it must respond to -progressIndicatorDidCancel: -- (void) startWithTitle:(NSString *)title view:(NSView *)view; -// Adds a subview in the view's superview, positionned at the upper right corner, to display the progress bar -- (void) stop; - -- (IBAction) cancel:(id)sender; - -@end - -@interface NSObject(GPGProgressIndicatorControllerDelegate) -- (void) progressIndicatorDidCancel:(GPGProgressIndicatorController *)controller; -@end diff --git a/GPGMail/Source/GPG.subproj/GPGProgressIndicatorController.m b/GPGMail/Source/GPG.subproj/GPGProgressIndicatorController.m deleted file mode 100644 index 39d16de1..00000000 --- a/GPGMail/Source/GPG.subproj/GPGProgressIndicatorController.m +++ /dev/null @@ -1,126 +0,0 @@ -/* GPGProgressIndicatorController.m created by dave on Mon 01-Jan-2001 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "GPGProgressIndicatorController.h" -#import - - -@interface NSColor(GPGRevealed) -+ (NSColor *) toolTipTextColor; -+ (NSColor *) toolTipColor; -@end - - -@implementation GPGProgressIndicatorController - -static GPGProgressIndicatorController *_sharedController = nil; - -+ (GPGProgressIndicatorController *) sharedController -{ - if(_sharedController == nil) - _sharedController = [[self alloc] init]; - - return _sharedController; -} - -- (id) init -{ - if((self = [super init]) != nil){ - NSAssert([NSBundle loadNibNamed:@"GPGProgressIndicatorController" owner:self] == YES, @"### GPGMail: -[GPGProgressIndicatorController init]: Unable to load nib named 'GPGProgressIndicatorController'"); - [progressIndicator setUsesThreadedAnimation:YES]; - [enclosingBox retain]; - [backgroundTextField setBackgroundColor:[NSColor toolTipColor]]; - [titleTextField2 setTextColor:[NSColor toolTipTextColor]]; - [[enclosingBox window] release]; - } - - return self; -} - -- (void) dealloc -{ - [[progressIndicator window] release]; - [enclosingBox release]; - - [super dealloc]; -} - -- (void) startWithTitle:(NSString *)title delegate:(id)aDelegate -{ - delegate = aDelegate; -// [cancelButton setEnabled:(delegate != nil)]; - // Currently, does not work for gpg tasks - [cancelButton setEnabled:NO]; - [[progressIndicator window] center]; - [titleTextField setStringValue:title]; - [[progressIndicator window] makeKeyAndOrderFront:nil]; - [progressIndicator startAnimation:nil]; -} - -- (void) startWithTitle:(NSString *)title view:(NSView *)view -{ - NSRect newFrameRect = [enclosingBox frame]; - - [titleTextField2 setStringValue:title]; - // Let's resize the box to accomodate to the ideal size of the title - newFrameRect.size.width += [[titleTextField2 cell] cellSize].width - NSWidth([titleTextField2 frame]); - newFrameRect.origin.x = NSMaxX([view frame]) - NSWidth(newFrameRect); - if([[view superview] isFlipped]) - newFrameRect.origin.y = 0.0; - else - newFrameRect.origin.y = NSMaxY([view frame]) - NSHeight(newFrameRect); - [enclosingBox setFrame:newFrameRect]; - - [[view superview] addSubview:enclosingBox]; - - [progressIndicator2 startAnimation:nil]; -} - -- (void) _stop -{ - [progressIndicator stopAnimation:nil]; - [progressIndicator2 stopAnimation:nil]; - [[progressIndicator window] orderOut:nil]; - [enclosingBox removeFromSuperview]; -} - -- (void) stop -{ - [self _stop]; - delegate = nil; -} - -- (IBAction) cancel:(id)sender -{ - [self _stop]; - [delegate progressIndicatorDidCancel:self]; - delegate = nil; -} - -@end diff --git a/GPGMail/Source/GPG.subproj/GPGSignature.h b/GPGMail/Source/GPG.subproj/GPGSignature.h deleted file mode 100644 index 5fbb3207..00000000 --- a/GPGMail/Source/GPG.subproj/GPGSignature.h +++ /dev/null @@ -1,33 +0,0 @@ -/* GPGSignature.h created by dave on Tue 21-Nov-2000 */ - -/* - * Copyright Stephane Corthesy (stephane@sente.ch), 2000 - * (see LICENSE.txt file for license information) - */ - -#import - - -@class NSCalendarDate; - - -@interface GPGSignature : NSObject -{ - NSCalendarDate *date; - NSString *signatureType; - NSString *keyID; - NSString *signatoryName; - NSString *comment; - NSString *signatoryEmail; -} - -+ (id) signatureWithContents:(NSString *)contents; - -- (NSCalendarDate *) date; -- (NSString *) signatureType; -- (NSString *) keyID; -- (NSString *) signatoryName; -- (NSString *) comment; -- (NSString *) signatoryEmail; - -@end diff --git a/GPGMail/Source/GPG.subproj/GPGSignature.m b/GPGMail/Source/GPG.subproj/GPGSignature.m deleted file mode 100644 index b0ced0c8..00000000 --- a/GPGMail/Source/GPG.subproj/GPGSignature.m +++ /dev/null @@ -1,106 +0,0 @@ -/* GPGSignature.m created by dave on Tue 21-Nov-2000 */ - -/* - * Copyright Stephane Corthesy (stephane@sente.ch), 2000 - * (see LICENSE.txt file for license information) - */ - -#import "GPGSignature.h" - -#import - - -@implementation GPGSignature - -+ (id) signatureWithContents:(NSString *)contents -{ - NSScanner *aScanner = [NSScanner scannerWithString:contents]; - GPGSignature *signature = nil; - - // gpg: can't mmap pool of 16384 bytes: Invalid argument - using malloc - // gpg: Please note that you don't have secure memory on this system - // ... - // gpg: Signature made 07/04/00 19:25:39 CEST using DSA key ID 12345678 - // gpg: Good signature from "Stephane Corthesy (Sen:te) " - // - - if([aScanner scanUpToString:@"Signature made " intoString:NULL] && ![aScanner isAtEnd]){ - NSString *aString; - - signature = [[[self alloc] init] autorelease]; - - NSAssert([aScanner scanString:@"Signature made " intoString:NULL], @"Did not scan twice the same string?!"); - NSAssert([aScanner scanUpToString:@" using " intoString:&aString], @"Unable to find end of signature date?!"); - signature->date = [[NSCalendarDate dateWithString:aString calendarFormat:@"%m/%d/%y %H:%M:%S %Z"] retain]; - - NSAssert([aScanner scanString:@" using " intoString:NULL], @"Did not scan twice the same string?!"); - NSAssert([aScanner scanUpToString:@" key ID " intoString:&aString], @"Unable to find end of signature type?!"); - signature->signatureType = [aString retain]; - - NSAssert([aScanner scanString:@" key ID " intoString:NULL], @"Did not scan twice the same string?!"); - NSAssert([aScanner scanUpToString:@"\n" intoString:&aString], @"Unable to find end of signature key ID?!"); - signature->keyID = [aString retain]; - - NSAssert([aScanner scanUpToString:@"Good signature from \"" intoString:NULL], @"Unable to find signatory name?!"); - NSAssert([aScanner scanString:@"Good signature from \"" intoString:NULL], @"Did not scan twice the same string?!"); - NSAssert([aScanner scanUpToString:@" (" intoString:&aString], @"Unable to find end of signatory name?!"); - signature->signatoryName = [aString retain]; - - NSAssert([aScanner scanString:@" (" intoString:NULL], @"Did not scan twice the same string?!"); - NSAssert([aScanner scanUpToString:@")<" intoString:&aString], @"Unable to find end of comment?!"); - signature->comment = [aString retain]; - - NSAssert([aScanner scanString:@")<" intoString:NULL], @"Did not scan twice the same string?!"); - NSAssert([aScanner scanUpToString:@">\"" intoString:&aString], @"Unable to find end of signatory email?!"); - signature->signatoryEmail = [aString retain]; - } - else{ - // We could return an exception - } - - return signature; -} - -- (void) dealloc -{ - [date release]; - [signatureType release]; - [keyID release]; - [signatoryName release]; - [comment release]; - [signatoryEmail release]; - - [super dealloc]; -} - -- (NSCalendarDate *) date -{ - return date; -} - -- (NSString *) signatureType -{ - return signatureType; -} - -- (NSString *) keyID -{ - return keyID; -} - -- (NSString *) signatoryName -{ - return signatoryName; -} - -- (NSString *) comment -{ - return comment; -} - -- (NSString *) signatoryEmail -{ - return signatoryEmail; -} - -@end diff --git a/GPGMail/Source/GPG.subproj/GPGTask.h b/GPGMail/Source/GPG.subproj/GPGTask.h deleted file mode 100644 index cd99cd32..00000000 --- a/GPGMail/Source/GPG.subproj/GPGTask.h +++ /dev/null @@ -1,77 +0,0 @@ -/* GPGTask.h created by dave on Sat 30-Dec-2000 */ - -/* - * Copyright Stephane Corthesy (stephane@sente.ch), 2000-2001 - * (see LICENSE.txt file for license information) - */ - -#import -#import - - -@class NSMutableDictionary; -@class NSPipe; - - -/* - * We need to create our own NSTask's concrete subclass, as processes - * launched by NSTask do not inherit file descriptors from their - * parent process, except stdin, stdout and stderr. - * Do NOT try to use this class for anything else, as the implementation - * is far from complete; currently it just fits my needs :-) - * A big THANK YOU to the GNUstep guys! Their code helped me understand - * how I could implement this class. - */ - -@interface GPGTask : NSTask -{ - NSMutableDictionary *_dictionary; - BOOL _hasExeced; - BOOL _isRunning; - pid_t _pid; - int _terminationStatus; -} - -////+ (id) allocWithZone:(NSZone *)zone; -////+ currentTaskDictionary; -////+ launchedTaskWithDictionary:fp12; -+ (NSTask *) launchedTaskWithLaunchPath:(NSString *)path arguments:(NSArray *)arguments; -////+ launchedTaskWithPath:fp12 arguments:fp16; -- (int) terminationStatus; -- (BOOL) isRunning; -- (void) launch; -- (void) setArguments:(NSArray *)arguments; -- (void) setCurrentDirectoryPath:(NSString *)path; -- (void) setEnvironment:(NSDictionary *)dict; -- (void) setLaunchPath:(NSString *)path; -- (void) interrupt; -- (void) terminate; -- (NSString *) launchPath; -- (NSDictionary *) environment; -- (NSArray *) arguments; -- (NSString *) currentDirectoryPath; -- (void) setStandardInput:(id)input; -- (void) setStandardOutput:(id)output; -- (void) setStandardError:(id)error; -- (id) standardInput; -- (id) standardOutput; -- (id) standardError; -- (id) init; -- (void) dealloc; - -- (void) waitUntilExit; -//- (void)launchWithDictionary:fp12; -//- (void)setTaskDictionary:fp12; -//- taskDictionary; -//- (BOOL)taskExitedNormally; -//- (void)terminateTask; -//- (int)_procid; -//- (unsigned int)processIdentifier; -//- (void)_requestNotification; -//- (void)handleMachMessage:(void *)fp12; - -// gnupg specific! -- (void) setStatusPipe:(NSPipe *)statusPipe; -- (NSPipe *) statusPipe; - -@end diff --git a/GPGMail/Source/GPG.subproj/GPGTask.m b/GPGMail/Source/GPG.subproj/GPGTask.m deleted file mode 100644 index 51963250..00000000 --- a/GPGMail/Source/GPG.subproj/GPGTask.m +++ /dev/null @@ -1,318 +0,0 @@ -/* GPGTask.m created by dave on Sat 30-Dec-2000 */ - -/* - * Copyright Stephane Corthesy (stephane@sente.ch), 2000-2001 - * (see LICENSE.txt file for license information) - */ - -#import "GPGTask.h" -#import -#import -#import - - -@implementation GPGTask - -+ (NSTask *) launchedTaskWithLaunchPath:(NSString *)path arguments:(NSArray *)arguments -{ - GPGTask *aTask = [[self alloc] init]; - - [aTask setLaunchPath:path]; - [aTask setArguments:arguments]; - - return [aTask autorelease]; -} - -- (int) terminationStatus -{ - if(_isRunning || !_hasExeced) - [NSException raise:NSInvalidArgumentException format:@"Task has not been launched or is running."]; - return _terminationStatus; -} - -- (BOOL) isRunning -{ - return _isRunning; -} - -- (void) launch -{ - if(_isRunning || _hasExeced) - [NSException raise:NSGenericException format:@"Task has already been launched or is running."]; - - fflush(stderr); -// fflush(stdout); -// fflush(stdin); - - _pid = fork(); - if(_pid == 0){ - // Child process - int retVal; - NSString *launchPath = [self launchPath]; - NSString *aString; - char **taskArgv; - NSPipe *aPipe; - int i, count; - NSArray *arguments = [self arguments]; - NSDictionary *environment = [self environment]; - - for (i = 0; i < 32; i++) - signal(i, SIG_DFL); - setpgrp(getpid(), getpid()); - - if(!launchPath) - [NSException raise:NSInvalidArgumentException format:@"No launch path set"]; - - aString = [self currentDirectoryPath]; - if(aString != nil) - if(chdir([aString cString]) != 0) - [NSException raise:NSInvalidArgumentException format:@"Invalid current directory path (%d: %s)", errno, strerror(errno)]; - - aPipe = [_dictionary objectForKey:@"standardInput"]; - if(aPipe != nil && [aPipe isKindOfClass:[NSPipe class]]) - if(dup2([[aPipe fileHandleForReading] fileDescriptor], 0) == -1) - [NSException raise:NSInvalidArgumentException format:@"Unable to dup2(%d, 0) (%d: %s)", [[aPipe fileHandleForReading] fileDescriptor], errno, strerror(errno)]; - else{ - [[aPipe fileHandleForWriting] closeFile]; - [[aPipe fileHandleForReading] closeFile]; - } - aPipe = [_dictionary objectForKey:@"standardOutput"]; - if(aPipe != nil && [aPipe isKindOfClass:[NSPipe class]]) - if(dup2([[aPipe fileHandleForWriting] fileDescriptor], 1) == -1) - [NSException raise:NSInvalidArgumentException format:@"Unable to dup2(%d, 1) (%d: %s)", [[aPipe fileHandleForWriting] fileDescriptor], errno, strerror(errno)]; - else{ - [[aPipe fileHandleForWriting] closeFile]; - [[aPipe fileHandleForReading] closeFile]; - } - aPipe = [_dictionary objectForKey:@"statusPipe"]; - if(aPipe != nil && [aPipe isKindOfClass:[NSPipe class]]){ - [[aPipe fileHandleForReading] closeFile]; - } - aPipe = [_dictionary objectForKey:@"standardError"]; - if(aPipe != nil && [aPipe isKindOfClass:[NSPipe class]]) - if(dup2([[aPipe fileHandleForWriting] fileDescriptor], 2) == -1) - [NSException raise:NSInvalidArgumentException format:@"Unable to dup2(%d, 2) (%d: %s)", [[aPipe fileHandleForWriting] fileDescriptor], errno, strerror(errno)]; - else{ - [[aPipe fileHandleForWriting] closeFile]; - [[aPipe fileHandleForReading] closeFile]; - } - - count = [arguments count]; - taskArgv = NSZoneMalloc(NSDefaultMallocZone(), (sizeof *taskArgv) * (count + 1 + 1)); - taskArgv[0] = (char *)[launchPath cString]; - for(i = 0; i < count; i++) - taskArgv[i + 1] = (char *)[[arguments objectAtIndex:i] cString]; - taskArgv[i + 1] = NULL; - - if(environment){ - char **envArray; - - arguments = [environment allKeys]; - count = [arguments count]; - envArray = NSZoneMalloc(NSDefaultMallocZone(), (sizeof *envArray) * (count + 1)); - for(i = 0; i < count; i++){ - NSString *formattedEnv = [NSString stringWithFormat:@"%@=%@", [arguments objectAtIndex:i], [environment objectForKey:[arguments objectAtIndex:i]]]; - - envArray[i] = (char *)[formattedEnv cString]; - } - envArray[i] = NULL; - - retVal = execve([launchPath cString], taskArgv, envArray); - } - else - retVal = execv([launchPath cString], taskArgv); - - // Never reached if exec was unsuccessful - [NSException raise:NSInvalidArgumentException format:@"Unable to exec process (%d: %s)", errno, strerror(errno)]; - } - else if(_pid < 0){ - // Error! - [NSException raise:NSInvalidArgumentException format:@"Unable to fork process (%d: %s)", errno, strerror(errno)]; - } - else{ - // Parent process - NSPipe *aPipe; - - aPipe = [_dictionary objectForKey:@"standardInput"]; - if(aPipe != nil && [aPipe isKindOfClass:[NSPipe class]]){ - [[aPipe fileHandleForReading] closeFile]; - } - aPipe = [_dictionary objectForKey:@"standardOutput"]; - if(aPipe != nil && [aPipe isKindOfClass:[NSPipe class]]){ - [[aPipe fileHandleForWriting] closeFile]; - } - aPipe = [_dictionary objectForKey:@"standardError"]; - if(aPipe != nil && [aPipe isKindOfClass:[NSPipe class]]){ - [[aPipe fileHandleForWriting] closeFile]; - } - aPipe = [_dictionary objectForKey:@"statusPipe"]; - if(aPipe != nil && [aPipe isKindOfClass:[NSPipe class]]){ - [[aPipe fileHandleForWriting] closeFile]; - } - _isRunning = YES; - } -} - -- (void) setArguments:(NSArray *)arguments -{ - if(_isRunning || _hasExeced) - [NSException raise:NSInvalidArgumentException format:@"Task has already been launched or is running."]; - if(arguments != nil) - [_dictionary setObject:arguments forKey:@"arguments"]; - else - [_dictionary removeObjectForKey:@"arguments"]; -} - -- (void) setCurrentDirectoryPath:(NSString *)path -{ - if(_isRunning || _hasExeced) - [NSException raise:NSInvalidArgumentException format:@"Task has already been launched or is running."]; - NSParameterAssert(path != nil); - - [_dictionary setObject:path forKey:@"currentDirectoryPath"]; -} - -- (void) setEnvironment:(NSDictionary *)dict -{ - if(_isRunning || _hasExeced) - [NSException raise:NSInvalidArgumentException format:@"Task has already been launched or is running."]; - NSParameterAssert(dict != nil); - - [_dictionary setObject:dict forKey:@"environment"]; -} - -- (void) setLaunchPath:(NSString *)path -{ - if(_isRunning || _hasExeced) - [NSException raise:NSInvalidArgumentException format:@"Task has already been launched or is running."]; - NSParameterAssert(path != nil); - - [_dictionary setObject:path forKey:@"launchPath"]; -} - -- (void) interrupt -{ - if(!_isRunning) - [NSException raise:NSInvalidArgumentException format:@"Task is not running."]; - if(kill(_pid, SIGINT) != 0) - perror("On interrupt of process"); -} - -- (void) terminate -{ - if(!_isRunning && !_hasExeced) - [NSException raise:NSInvalidArgumentException format:@"Task has not yet been launched."]; - if(kill(_pid, SIGTERM) != 0) - perror("On termination of process"); -} - -- (NSString *) launchPath -{ - return [_dictionary objectForKey:@"launchPath"]; -} - -- (NSDictionary *) environment -{ - return [_dictionary objectForKey:@"environment"]; -} - -- (NSArray *) arguments -{ - return [_dictionary objectForKey:@"arguments"]; -} - -- (NSString *) currentDirectoryPath -{ - return [_dictionary objectForKey:@"currentDirectoryPath"]; -} - -- (void) setStandardInput:(id)input -{ - NSParameterAssert(input != nil); - - [_dictionary setObject:input forKey:@"standardInput"]; -} - -- (void) setStandardOutput:(id)output -{ - NSParameterAssert(output != nil); - - [_dictionary setObject:output forKey:@"standardOutput"]; -} - -- (void) setStandardError:(id)error -{ - NSParameterAssert(error != nil); - - [_dictionary setObject:error forKey:@"standardError"]; -} - -- (void) setStatusPipe:(NSPipe *)statusPipe -{ - NSParameterAssert(statusPipe != nil); - - [_dictionary setObject:statusPipe forKey:@"statusPipe"]; -} - -- (id) standardInput -{ - return [_dictionary objectForKey:@"standardInput"]; -} - -- (id) standardOutput -{ - return [_dictionary objectForKey:@"standardOutput"]; -} - -- (id) standardError -{ - return [_dictionary objectForKey:@"standardError"]; -} - -- (NSPipe *) statusPipe -{ - return [_dictionary objectForKey:@"statusPipe"]; -} - -- (id) init -{ - if(self = [super init]){ - _dictionary = [[NSMutableDictionary allocWithZone:[self zone]] init]; - } - - return self; -} - -- (void) dealloc -{ - [_dictionary release]; - - [super dealloc]; -} - -- (void) waitUntilExit -{ - if(_isRunning){ - int status = 0; - int retVal = waitpid(_pid, &status, 0); - - if(retVal == _pid){ - if(WIFEXITED(status)) - _terminationStatus = WEXITSTATUS(status); - else if(WIFSIGNALED(status)){ - _terminationStatus = -1; - // x = WTERMSIG(status); - } - else if(WIFSTOPPED(status)){ - _terminationStatus = -1; - // x = WSTOPSIG(status); - } - } - else - perror("On wait for process"); - _isRunning = NO; - _hasExeced = YES; - } -} - -@end diff --git a/GPGMail/Source/GPGComposeWindowStorePoser.h b/GPGMail/Source/GPGComposeWindowStorePoser.h deleted file mode 100644 index baf37bce..00000000 --- a/GPGMail/Source/GPGComposeWindowStorePoser.h +++ /dev/null @@ -1,26 +0,0 @@ -/* GPGComposeWindowStorePoser.h created by dave on Sun 14-Jan-2001 */ - -#import - -#import - - -@interface GPGComposeWindowStorePoser : ComposeWindowStore - -// The following actions are forwarded to the GPGMailComposeAccessoryViewOwner -- (IBAction) gpgToggleEncryptionForNewMessage:(id)sender; -- (IBAction) gpgToggleSignatureForNewMessage:(id)sender; -- (IBAction) gpgChoosePublicKeys:(id)sender; -- (IBAction) gpgChoosePersonalKey:(id)sender; -- (IBAction) gpgChoosePublicKey:(id)sender; - -// Some menu validations are forwarded to GPGMailComposeAccessoryViewOwner -- (BOOL) validateMenuItem:(id )menuItem; - -// The following notification methods are forwarded to the GPGMailComposeAccessoryViewOwner -#ifndef MACOSX -- (void) textDidChange:(NSNotification *)notification; -#endif -- (void) textDidEndEditing:(NSNotification *)notification; - -@end diff --git a/GPGMail/Source/GPGComposeWindowStorePoser.m b/GPGMail/Source/GPGComposeWindowStorePoser.m deleted file mode 100644 index 4e2b0b50..00000000 --- a/GPGMail/Source/GPGComposeWindowStorePoser.m +++ /dev/null @@ -1,87 +0,0 @@ -/* GPGComposeWindowStorePoser.m created by dave on Sun 14-Jan-2001 */ - -#import "GPGComposeWindowStorePoser.h" - - -@interface NSObject(GPGComposeWindowStorePoserRevelation) -- (id) textObject; -@end - - -@implementation GPGComposeWindowStorePoser - -+ (void) load -{ - [GPGComposeWindowStorePoser poseAsClass:[ComposeWindowStore class]]; -} - -- (void) gpgForwardAction:(SEL)actionSelector sender:(id)sender -{ - NSEnumerator *anEnum = [_accessoryViewOwners objectEnumerator]; - id anOwner; - - while(anOwner = [anEnum nextObject]) - if([anOwner respondsToSelector:actionSelector]) - [anOwner performSelector:actionSelector withObject:sender]; -} - -- (IBAction) gpgToggleEncryptionForNewMessage:(id)sender -{ - [self gpgForwardAction:_cmd sender:sender]; -} - -- (IBAction) gpgToggleSignatureForNewMessage:(id)sender -{ - [self gpgForwardAction:_cmd sender:sender]; -} - -- (IBAction) gpgChoosePublicKeys:(id)sender -{ - [self gpgForwardAction:_cmd sender:sender]; -} - -- (IBAction) gpgChoosePersonalKey:(id)sender -{ - [self gpgForwardAction:_cmd sender:sender]; -} - -- (IBAction) gpgChoosePublicKey:(id)sender -{ - [self gpgForwardAction:_cmd sender:sender]; -} - -- (BOOL) validateMenuItem:(id )menuItem -{ - SEL anAction = [menuItem action]; - - if(anAction == @selector(gpgChoosePublicKeys:) || anAction == @selector(gpgChoosePersonalKey:) || anAction == @selector(gpgChoosePublicKey:)){ - NSEnumerator *anEnum = [_accessoryViewOwners objectEnumerator]; - id anOwner; - - while(anOwner = [anEnum nextObject]) - if([anOwner respondsToSelector:anAction]) - return [anOwner validateMenuItem:menuItem]; - } - - return [super validateMenuItem:menuItem]; -} - -#ifndef MACOSX -- (void) textDidChange:(NSNotification *)notification -{ - if([notification object] != [composeView textObject]) - [self gpgForwardAction:_cmd sender:notification]; - - [super textDidChange:notification]; -} -#endif - -- (void) textDidEndEditing:(NSNotification *)notification -{ - if([notification object] != [composeView textObject]) - [self gpgForwardAction:_cmd sender:notification]; - - [super textDidEndEditing:notification]; -} - -@end diff --git a/GPGMail/Source/GPGKeyDownload.h b/GPGMail/Source/GPGKeyDownload.h deleted file mode 100644 index 6d639191..00000000 --- a/GPGMail/Source/GPGKeyDownload.h +++ /dev/null @@ -1,69 +0,0 @@ -/* GPGKeyDownload.h created by dave on Sat 23-Aug-2004 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import -#import "GPGMailBundle.h" - -extern NSString *GPGDidFindKeysNotification; - -@interface GPGKeyDownload : NSWindowController -{ - IBOutlet NSTextField *titleField; - IBOutlet NSTabView *tabView; - IBOutlet NSTextField *subtitleField; - IBOutlet NSOutlineView *outlineView; - IBOutlet NSProgressIndicator *searchProgressIndicator; - IBOutlet NSTextField *searchProgressField; - IBOutlet NSProgressIndicator *importProgressIndicator; - IBOutlet NSTextField *importProgressField; - IBOutlet NSButton *importButton; - IBOutlet NSFormCell *emailCell; - IBOutlet NSComboBox *serverComboBox; - IBOutlet NSButton *searchButton; - NSArray *foundKeys; - NSMutableSet *selectedKeys; - GPGContext *context; - BOOL isSearching; - BOOL isImporting; - BOOL cancelled; - NSArray *serverList; - NSMutableCharacterSet *validEmailAddressCharset; - NSArray *defaultServerList; -} - -+ (id) sharedInstance; - -- (IBAction) gpgSearchKeys:(id)sender; -- (IBAction) search:(id)sender; -- (IBAction) cancel:(id)sender; -- (IBAction) import:(id)sender; - -- (void) searchKeysMatchingPatterns:(NSArray *)patterns; - -@end diff --git a/GPGMail/Source/GPGKeyDownload.m b/GPGMail/Source/GPGKeyDownload.m deleted file mode 100644 index 38d7b34f..00000000 --- a/GPGMail/Source/GPGKeyDownload.m +++ /dev/null @@ -1,531 +0,0 @@ -/* GPGKeyDownload.m created by dave on Sat 23-Aug-2004 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "GPGKeyDownload.h" -#import "GPGMEAdditions.h" - - -NSString *GPGDidFindKeysNotification = @"GPGDidFindKeysNotification"; - - -@implementation GPGKeyDownload - -static GPGKeyDownload *_sharedInstance = nil; - -+ (void) load -{ - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(missingKeysNotification:) name:GPGMissingKeysNotification object:nil]; -} - -+ (id) sharedInstance -{ - if(_sharedInstance == nil){ - _sharedInstance = [[self alloc] initWithWindowNibName:@"GPGKeyDownload"]; - } - - return _sharedInstance; -} - -- (id) initWithWindowNibName:(NSString *)windowNibName -{ - if(self = [super initWithWindowNibName:windowNibName]){ - selectedKeys = [[NSMutableSet alloc] init]; - [self setWindowFrameAutosaveName:@"GPGKeySearch"]; - validEmailAddressCharset = [[NSMutableCharacterSet alphanumericCharacterSet] retain]; - [validEmailAddressCharset addCharactersInString:@"@_-."]; // FIXME: there are much more valid chars - maybe we shouldn't try to validate - defaultServerList = [[NSArray alloc] initWithContentsOfFile:[[NSBundle bundleForClass:[self class]] pathForResource:@"KeyServers" ofType:@"plist"]]; - } - - return self; -} - -- (void) dealloc -{ - [[NSNotificationCenter defaultCenter] removeObserver:self name:GPGAsynchronousOperationDidTerminateNotification object:context]; - [context release]; - [selectedKeys release]; - [foundKeys release]; - [validEmailAddressCharset release]; - [defaultServerList release]; - - [super dealloc]; -} - -- (void) refreshServerList -{ - GPGOptions *options = [[GPGOptions alloc] init]; - NSString *currentServer = [[serverComboBox stringValue] copy]; - unsigned anIndex; - NSMutableArray *aList; - NSEnumerator *anEnum = [defaultServerList objectEnumerator]; - NSString *aServer; - - [serverList release]; - aList = [[options allOptionValuesForName:@"keyserver"] mutableCopy]; - while(aServer = [anEnum nextObject]){ - if(![aList containsObject:aServer]) - [aList addObject:aServer]; - } - serverList = aList; - if([currentServer length] == 0){ - [currentServer release]; - currentServer = [[options activeOptionValuesForName:@"keyserver"] lastObject]; - if(!currentServer) - currentServer = @""; - [currentServer retain]; - } - [serverComboBox reloadData]; - [serverComboBox setStringValue:currentServer]; - anIndex = [serverList indexOfObject:currentServer]; - if(anIndex != NSNotFound) - [serverComboBox selectItemAtIndex:anIndex]; - [currentServer release]; - [options release]; -} - -- (void) windowDidLoad -{ - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - - context = [[GPGContext alloc] init]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(operationDidTerminate:) name:GPGAsynchronousOperationDidTerminateNotification object:context]; - - [searchButton setTitle:NSLocalizedStringFromTableInBundle(@"SEARCH", @"GPGMail", aBundle, "")]; - [searchProgressField setStringValue:@""]; -// [importButton setTitle:NSLocalizedStringFromTableInBundle(@"DOWNLOAD", @"GPGMail", aBundle, "")]; - [titleField setStringValue:NSLocalizedStringFromTableInBundle(@"SEARCH_KEYS_ON_SERVER", @"GPGMail", aBundle, "")]; - [searchProgressIndicator setStyle:NSProgressIndicatorSpinningStyle]; - [searchProgressIndicator setDisplayedWhenStopped:NO]; - [importProgressIndicator setStyle:NSProgressIndicatorSpinningStyle]; - [importProgressIndicator setDisplayedWhenStopped:NO]; - [importProgressField setStringValue:@""]; - [tabView selectLastTabViewItem:nil]; - [self refreshServerList]; - - [super windowDidLoad]; -} - -- (IBAction) gpgSearchKeys:(id)sender -{ - [self refreshServerList]; - [self showWindow:sender]; -} - -- (IBAction) cancel:(id)sender -{ - [titleField setStringValue:NSLocalizedStringFromTableInBundle(@"SEARCH_KEYS_ON_SERVER", @"GPGMail", [NSBundle bundleForClass:[self class]], "")]; - [tabView selectLastTabViewItem:nil]; - if(isSearching || isImporting){ - cancelled = YES; - [emailCell setEnabled:NO]; - [serverComboBox setEnabled:NO]; - [searchButton setEnabled:NO]; - [context interruptAsyncOperation]; - } - else - cancelled = NO; -} - -- (NSDictionary *) options -{ - NSString *selectedServer = [serverComboBox stringValue]; - - if([selectedServer rangeOfCharacterFromSet:[NSCharacterSet alphanumericCharacterSet]].length > 0) - return [NSDictionary dictionaryWithObject:selectedServer forKey:@"keyserver"]; - else - return nil; -} - -- (IBAction) import:(id)sender -{ - NSDictionary *options = [self options]; - - if(!options || ([selectedKeys count] == 0)) - NSBeep(); - else{ - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - -// [titleField setStringValue:NSLocalizedStringFromTableInBundle(@"DOWNLOAD_KEYS_FROM_SERVER", @"GPGMail", aBundle, "")]; -// [importButton setTitle:NSLocalizedStringFromTableInBundle(@"DOWNLOADING", @"GPGMail", aBundle, "")]; - [importProgressField setStringValue:NSLocalizedStringFromTableInBundle(@"DOWNLOADING", @"GPGMail", aBundle, "")]; - [importButton setEnabled:NO]; - [importProgressIndicator startAnimation:nil]; - isImporting = YES; - - [context asyncDownloadKeys:[selectedKeys allObjects] serverOptions:options]; - } -} - -- (void) doSearchKeysMatchingPatterns:(NSArray *)patterns -{ - NSDictionary *options = [self options]; - - if(!options) - NSBeep(); - else{ - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - - [titleField setStringValue:NSLocalizedStringFromTableInBundle(@"SEARCH_KEYS_ON_SERVER", @"GPGMail", aBundle, "")]; - [emailCell setEnabled:NO]; - [serverComboBox setEnabled:NO]; - [searchButton setTitle:NSLocalizedStringFromTableInBundle(@"CANCEL_SEARCH", @"GPGMail", aBundle, "")]; - [searchButton setAction:@selector(cancelSearch:)]; - [searchProgressField setStringValue:NSLocalizedStringFromTableInBundle(@"SEARCHING", @"GPGMail", aBundle, "")]; -// [searchButton setEnabled:NO]; - [searchProgressIndicator startAnimation:nil]; - isSearching = YES; - - [context asyncSearchForKeysMatchingPatterns:patterns serverOptions:options]; - } -} - -- (IBAction) cancelSearch:(id)sender -{ - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - - [emailCell setEnabled:YES]; - [serverComboBox setEnabled:YES]; - [searchButton setTitle:NSLocalizedStringFromTableInBundle(@"SEARCH", @"GPGMail", aBundle, "")]; - [searchButton setAction:@selector(search:)]; - [searchProgressField setStringValue:@""]; - // [searchButton setEnabled:NO]; - [searchProgressIndicator stopAnimation:nil]; - isSearching = NO; - cancelled = YES; - - [context interruptAsyncOperation]; -} - -- (IBAction) search:(id)sender -{ - NSEnumerator *anEnum = [[[emailCell stringValue] componentsSeparatedByString:@","] objectEnumerator]; - NSString *aString; - NSMutableArray *patterns = [NSMutableArray array]; - - while(aString = [anEnum nextObject]){ - // We trim space characters - NSRange startRange = [aString rangeOfCharacterFromSet:validEmailAddressCharset]; - - if(startRange.location != NSNotFound){ - NSRange endRange = [aString rangeOfCharacterFromSet:validEmailAddressCharset options:NSBackwardsSearch]; - - aString = [aString substringWithRange:NSMakeRange(startRange.location, (endRange.location + 1) - startRange.location)]; - [patterns addObject:aString]; - } - } - - if([patterns count] > 0) - [self doSearchKeysMatchingPatterns:patterns]; - else - NSBeep(); -} - -- (void) searchKeysMatchingPatterns:(NSArray *)patterns -{ - [self showWindow:nil]; - if(isSearching || isImporting) - NSBeep(); - else{ - [emailCell setStringValue:[patterns componentsJoinedByString:@", "]]; - [titleField setStringValue:NSLocalizedStringFromTableInBundle(@"SEARCH_KEYS_ON_SERVER", @"GPGMail", [NSBundle bundleForClass:[self class]], "")]; - [tabView selectLastTabViewItem:nil]; - if([patterns count]) - [self doSearchKeysMatchingPatterns:patterns]; - } -} - -- (void) foundKeys:(NSNotification *)notification -{ - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - - [searchProgressIndicator stopAnimation:nil]; - [emailCell setEnabled:YES]; - [serverComboBox setEnabled:YES]; - [searchButton setTitle:NSLocalizedStringFromTableInBundle(@"SEARCH", @"GPGMail", aBundle, "")]; - [searchButton setAction:@selector(search:)]; - [searchProgressField setStringValue:@""]; - - if(!cancelled){ - GPGError anError = [[[notification userInfo] objectForKey:GPGErrorKey] intValue]; - - [self showWindow:nil]; - if(anError != GPGErrorNoError){ - NSString *errorMessage; - - if([mailBundle gpgErrorCodeFromError:anError] == GPGErrorKeyServerError){ - NSString *additionalMessage = [[notification userInfo] objectForKey:GPGAdditionalReasonKey]; - - if(additionalMessage != nil){ - errorMessage = additionalMessage; // FIXME: Not localized - } - else - errorMessage = [mailBundle descriptionForError:anError]; - } - else - errorMessage = [mailBundle descriptionForError:anError]; - - NSBeginAlertSheet(NSLocalizedStringFromTableInBundle(@"SEARCH_ERROR", @"GPGMail", aBundle, ""), nil, nil, nil, [self window], nil, NULL, NULL, NULL, @"%@", errorMessage); - } - else{ - NSDictionary *aDict = [[notification object] operationResults]; - - [foundKeys release]; - foundKeys = nil; - [selectedKeys removeAllObjects]; - if([[aDict objectForKey:@"keys"] lastObject] == nil){ - [searchProgressField setStringValue:NSLocalizedStringFromTableInBundle(@"NO_MATCHING_KEYS", @"GPGMail", aBundle, "")]; - [outlineView reloadData]; - } - else{ - NSEnumerator *anEnum; - GPGRemoteKey *anItem; - - foundKeys = [[aDict objectForKey:@"keys"] retain]; - anEnum = [foundKeys objectEnumerator]; - while(anItem = [anEnum nextObject]){ - // Don't add revoked/disabled/expired/invalid keys - if(![anItem hasKeyExpired] && ![anItem isKeyRevoked]/* && ![anItem isKeyInvalid] && ![anItem isKeyDisabled]*/) - [selectedKeys addObject:anItem]; - } - [outlineView reloadData]; - anEnum = [foundKeys objectEnumerator]; - while(anItem = [anEnum nextObject]) - [outlineView expandItem:anItem]; - [importButton setEnabled:([selectedKeys count] > 0)]; - [importProgressField setStringValue:[NSString stringWithFormat:NSLocalizedStringFromTableInBundle(@"FOUND_%d_KEYS", @"GPGMail", aBundle, ""), [foundKeys count]]]; - [titleField setStringValue:NSLocalizedStringFromTableInBundle(@"DOWNLOAD_KEYS_FROM_SERVER", @"GPGMail", aBundle, "")]; - [tabView selectFirstTabViewItem:nil]; - } - } - } - else{ -// NSLog(@"$$$ Interrupted: %@", [notification userInfo]); - } - - isSearching = NO; - cancelled = NO; -} - -- (void) downloadedKeys:(NSNotification *)notification -{ - // TODO: Show more information (optional) to user (signatures, etc.) in a summary drawer? - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - - [importProgressIndicator stopAnimation:nil]; - [importButton setEnabled:YES]; - [importProgressField setStringValue:@""]; -// [importButton setTitle:NSLocalizedStringFromTableInBundle(@"DOWNLOADING", @"GPGMail", aBundle, "")]; - [titleField setStringValue:NSLocalizedStringFromTableInBundle(@"SEARCH_KEYS_ON_SERVER", @"GPGMail", aBundle, "")]; - isImporting = NO; - - [foundKeys release]; - foundKeys = nil; - [outlineView reloadData]; - - [titleField setStringValue:NSLocalizedStringFromTableInBundle(@"SEARCH_KEYS_ON_SERVER", @"GPGMail", aBundle, "")]; - [tabView selectLastTabViewItem:nil]; - - if(!cancelled){ - GPGError anError = [[[notification userInfo] objectForKey:GPGErrorKey] intValue]; - - if(anError != GPGErrorNoError){ - [self showWindow:nil]; - // FIXME: In MacGPGME, get real error message from stderr - NSBeginAlertSheet(NSLocalizedStringFromTableInBundle(@"DOWNLOAD_ERROR", @"GPGMail", aBundle, ""), nil, nil, nil, [self window], nil, NULL, NULL, NULL, @"%@", [[GPGMailBundle sharedInstance] descriptionForError:anError]); - } - else{ - [searchProgressField setStringValue:NSLocalizedStringFromTableInBundle(@"DOWNLOADED", @"GPGMail", aBundle, "")]; - [[GPGMailBundle sharedInstance] gpgReloadPGPKeys:nil]; - } - } - else{ -// NSLog(@"$$$ Interrupted: %@", [notification userInfo]); - [emailCell setEnabled:YES]; - [serverComboBox setEnabled:YES]; - [searchButton setEnabled:YES]; - } - cancelled = NO; -} - -- (void) operationDidTerminate:(NSNotification *)notification -{ - if(isSearching) - [self foundKeys:notification]; - else - [self downloadedKeys:notification]; -} - -- (int) numberOfItemsInComboBox:(NSComboBox *)aComboBox -{ - return [serverList count]; -} - -- (id) comboBox:(NSComboBox *)aComboBox objectValueForItemAtIndex:(int)index -{ - if(index < 0 || index >= [serverList count]) { - NSLog(@"[DEBUG] [GPGKeyDownload comboBox:objectValueForItemAtIndex:] - This shouldn't happen! NEVER!"); - return nil; - } - return [serverList objectAtIndex:index]; -} - -//- (unsigned int) comboBox:(NSComboBox *)aComboBox indexOfItemWithStringValue:(NSString *)string - -//- (NSString *)comboBox:(NSComboBox *)aComboBox completedString:(NSString *)string; - -- (id) outlineView:(NSOutlineView *)theOutlineView child:(int)index ofItem:(id)item -{ - if(item == nil) - return [foundKeys objectAtIndex:index]; - else - return [[item userIDs] objectAtIndex:index]; -} - -- (BOOL) outlineView:(NSOutlineView *)theOutlineView isItemExpandable:(id)item -{ - return [item canHaveChildren]; -} - -- (int) outlineView:(NSOutlineView *)theOutlineView numberOfChildrenOfItem:(id)item -{ - if(item == nil) - return [foundKeys count]; - else - return [[item userIDs] count]; -} - -- (id) outlineView:(NSOutlineView *)theOutlineView objectValueForTableColumn:(NSTableColumn *)tableColumn byItem:(id)item -{ - // TODO: Use custom cells to display key and info - if([[tableColumn identifier] isEqualToString:@"selection"]) - return [NSNumber numberWithBool:[selectedKeys containsObject:item]]; - else if([item canHaveChildren]){ - NSString *resultString = [NSString stringWithFormat:@"0x%@", [item keyID]]; - NSString *aString = [item algorithmDescription]; - NSCalendarDate *aDate; - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - - if(aString){ - unsigned aLength = [(GPGKey *)item length]; - - resultString = [resultString stringByAppendingFormat:@", %@", aString]; - if(aLength > 0) - resultString = [resultString stringByAppendingFormat:NSLocalizedStringFromTableInBundle(@" (%u bits)", @"GPGMail", aBundle, ""), aLength]; - } - aDate = [item creationDate]; - if(aDate) - resultString = [resultString stringByAppendingFormat:NSLocalizedStringFromTableInBundle(@", created on %@", @"GPGMail", aBundle, ""), [aDate descriptionWithCalendarFormat:NSLocalizedStringFromTableInBundle(@"SIGNATURE_CREATION_DATE_FORMAT", @"GPGMail", aBundle, "") locale:[(GPGMailBundle *)[GPGMailBundle sharedInstance] locale]]]; - aDate = [item expirationDate]; - if(aDate){ - if([item hasKeyExpired]) - resultString = [resultString stringByAppendingFormat:NSLocalizedStringFromTableInBundle(@", expired on %@", @"GPGMail", aBundle, ""), [aDate descriptionWithCalendarFormat:NSLocalizedStringFromTableInBundle(@"SIGNATURE_EXPIRATION_DATE_FORMAT", @"GPGMail", aBundle, "") locale:[(GPGMailBundle *)[GPGMailBundle sharedInstance] locale]]]; - else - resultString = [resultString stringByAppendingFormat:NSLocalizedStringFromTableInBundle(@", expires on %@", @"GPGMail", aBundle, ""), [aDate descriptionWithCalendarFormat:NSLocalizedStringFromTableInBundle(@"SIGNATURE_EXPIRATION_DATE_FORMAT", @"GPGMail", aBundle, "") locale:[(GPGMailBundle *)[GPGMailBundle sharedInstance] locale]]]; - } - if([item isKeyRevoked]) - resultString = [NSLocalizedStringFromTableInBundle(@"REVOKED_KEY - ", @"GPGMail", aBundle, "") stringByAppendingString:resultString]; - - if([item hasKeyExpired] || [item isKeyRevoked]/* || [item isKeyInvalid] || [item isKeyDisabled]*/) - // TODO: Prefix with warning icon - return [[[NSAttributedString alloc] initWithString:resultString attributes:[NSDictionary dictionaryWithObject:[NSColor redColor] forKey:NSForegroundColorAttributeName]] autorelease]; - else - return resultString; - } - else{ - return [item userID]; - } -} - -- (void) outlineView:(NSOutlineView *)theOutlineView setObjectValue:(id)object forTableColumn:(NSTableColumn *)tableColumn byItem:(id)item -{ - if(isImporting){ - } - else{ - if([object intValue]) - [selectedKeys addObject:item]; - else - [selectedKeys removeObject:item]; - } -} - -- (void) outlineView:(NSOutlineView *)outlineView willDisplayOutlineCell:(id)cell forTableColumn:(NSTableColumn *)tableColumn item:(id)item -{ - [cell setEnabled:!isImporting]; -} - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -// Not necessary on 10.3; on Tiger the switch cell is displayed! -- (void)outlineView:(NSOutlineView *)ov willDisplayCell:(id)cell forTableColumn:(NSTableColumn *)tableColumn item:(id)item -{ - if([[tableColumn identifier] isEqualToString:@"selection"]) - [cell setImagePosition:([self outlineView:ov isItemExpandable:item] ? NSImageOnly : NSNoImage)]; -} - -- (NSString *)outlineView:(NSOutlineView *)ov toolTipForCell:(NSCell *)cell rect:(NSRectPointer)rect tableColumn:(NSTableColumn *)tc item:(id)item mouseLocation:(NSPoint)mouseLocation -{ - // Available only since Tiger - if([[tc identifier] isEqualToString:@"description"]) - return [self outlineView:ov objectValueForTableColumn:tc byItem:item]; // TODO: Use multi-line display for readability? - else - return nil; -} -#endif - -- (BOOL) shouldCloseDocument -{ - return !isSearching && !isImporting; -} - -- (void) missingKeysNotification:(NSNotification *)notification -{ - if([GPGMailBundle gpgMailWorks] && !isSearching && !isImporting){ - NSArray *fingerprints = [[notification userInfo] objectForKey:@"fingerprints"]; - NSArray *emails = [[notification userInfo] objectForKey:@"emails"]; - NSArray *patterns = nil; - - if(fingerprints != nil && [fingerprints count] > 0) - patterns = [NSArray arrayWithObject:[@"0x" stringByAppendingString:[fingerprints componentsJoinedByString:@", 0x"]]]; - if(patterns != nil && emails != nil) - patterns = [patterns arrayByAddingObjectsFromArray:emails]; - else if(emails != nil) - patterns = emails; - - [self window]; // Ensures nib has been loaded - if(patterns != nil && [patterns count] > 0) - [emailCell setStringValue:[patterns componentsJoinedByString:@", "]]; - } -} - -+ (void) missingKeysNotification:(NSNotification *)notification -{ - [[self sharedInstance] missingKeysNotification:notification]; -} - -@end diff --git a/GPGMail/Source/GPGMEAdditions.h b/GPGMail/Source/GPGMEAdditions.h deleted file mode 100644 index c5051e9c..00000000 --- a/GPGMail/Source/GPGMEAdditions.h +++ /dev/null @@ -1,39 +0,0 @@ -// -// GPGMEAdditions.h -// GPGMail -// -// Created by Dave Lopper on 1/21/05. -// Copyright 2005 __MyCompanyName__. All rights reserved. -// - -#import - - -@interface GPGKey(GPGMail) -- (BOOL) canHaveChildren; -- (NSNumber *) validityNumber; -- (NSString *) prefixedShortKeyID; -- (NSNumber *) additionalInfoValue; -- (NSString *) additionalInfo; -@end - -@interface GPGRemoteKey(GPGMail) -- (BOOL) canHaveChildren; -- (NSString *) prefixedShortKeyID; -@end - -@interface GPGUserID(GPGMail) -- (BOOL) canHaveChildren; -- (NSNumber *) validityNumber; -- (NSString *) normalizedEmail; -- (NSNumber *) additionalInfoValue; -- (NSString *) additionalInfo; -@end - -@interface GPGRemoteUserID(GPGMail) -- (BOOL) canHaveChildren; -@end - -@interface GPGSignature(GPGMail) -- (NSNumber *) validityNumber; -@end diff --git a/GPGMail/Source/GPGMEAdditions.m b/GPGMail/Source/GPGMEAdditions.m deleted file mode 100644 index d711bf74..00000000 --- a/GPGMail/Source/GPGMEAdditions.m +++ /dev/null @@ -1,159 +0,0 @@ -// -// GPGMEAdditions.m -// GPGMail -// -// Created by Dave Lopper on 1/21/05. -// Copyright 2005 __MyCompanyName__. All rights reserved. -// - -#import "GPGMEAdditions.h" -#import "NSString+GPGMail.h" -#import "GPGMailBundle.h" - - -@implementation GPGKey(GPGMail) - -- (BOOL) canHaveChildren -{ - return YES; -} - -- (NSNumber *) validityNumber -{ - return [NSNumber numberWithInt:[self validity]]; -} - -- (NSString *) prefixedShortKeyID -{ - return [@"0x" stringByAppendingString:[self shortKeyID]]; -} - -- (NSNumber *) additionalInfoValue -{ - // FIXME: Use that for key chooser - int anInt = 0; - - if([self isKeyDisabled]) - anInt += 32; - if([self isKeyInvalid]) - anInt += 16; - if([self isKeyRevoked]) - anInt += 8; - if([self hasKeyExpired]) - anInt += 4; - /* if(![self canEncrypt]) - anInt += 2; - if(![self canSign]) - anInt += 1;*/ - - return [NSNumber numberWithInt:anInt]; -} - -- (NSString *) additionalInfo -{ - // FIXME: Use that for key chooser - NSMutableArray *additionalInfo = [NSMutableArray array]; - NSBundle *aBundle = [NSBundle bundleForClass:[GPGMailBundle class]]; - - if([self isKeyDisabled]) - [additionalInfo addObject:NSLocalizedStringFromTableInBundle(@"DISABLED_KEY_QUALIFIER", @"GPGMail", aBundle, @"")]; - if([self isKeyInvalid]) - [additionalInfo addObject:NSLocalizedStringFromTableInBundle(@"INVALID_KEY_QUALIFIER", @"GPGMail", aBundle, @"")]; - if([self isKeyRevoked]) - [additionalInfo addObject:NSLocalizedStringFromTableInBundle(@"REVOKED_KEY_QUALIFIER", @"GPGMail", aBundle, @"")]; - if([self hasKeyExpired]) - [additionalInfo addObject:NSLocalizedStringFromTableInBundle(@"EXPIRED_KEY_QUALIFIER", @"GPGMail", aBundle, @"")]; -/* if(![self canEncrypt]) - [additionalInfo addObject:NSLocalizedStringFromTableInBundle(@"CANNOT_ENCRYPT_KEY_QUALIFIER", @"GPGMail", aBundle, @"")]; - if(![self canSign]) - [additionalInfo addObject:NSLocalizedStringFromTableInBundle(@"CANNOT_SIGN_KEY_QUALIFIER", @"GPGMail", aBundle, @"")];*/ - - if([additionalInfo count] == 0) - return @""; - - return [NSString stringWithFormat:@"(%@)", [additionalInfo componentsJoinedByString:@", "]]; -} - -@end - -@implementation GPGUserID(GPGMail) - -- (BOOL) canHaveChildren -{ - return NO; -} - -- (NSNumber *) validityNumber -{ - return [NSNumber numberWithInt:[self validity]]; -} - -- (NSString *) normalizedEmail -{ - return [[self email] gpgNormalizedEmail]; -} - -- (NSNumber *) additionalInfoValue -{ - // FIXME: Use that for key chooser - int anInt = 0; - - if([self isInvalid]) - anInt += 2; - if([self hasBeenRevoked]) - anInt += 1; - - return [NSNumber numberWithInt:anInt]; -} - -- (NSString *) additionalInfo -{ - // FIXME: Use that for key chooser - NSMutableArray *additionalInfo = [NSMutableArray array]; - NSBundle *aBundle = [NSBundle bundleForClass:[GPGMailBundle class]]; - - if([self isInvalid]) - [additionalInfo addObject:NSLocalizedStringFromTableInBundle(@"INVALID_USER_ID_QUALIFIER", @"GPGMail", aBundle, @"")]; - if([self hasBeenRevoked]) - [additionalInfo addObject:NSLocalizedStringFromTableInBundle(@"REVOKED_USER_ID_QUALIFIER", @"GPGMail", aBundle, @"")]; - - if([additionalInfo count] == 0) - return @""; - - return [NSString stringWithFormat:@"(%@)", [additionalInfo componentsJoinedByString:@", "]]; -} - -@end - -@implementation GPGRemoteKey(GPGMail) - -- (BOOL) canHaveChildren -{ - return YES; -} - -- (NSString *) prefixedShortKeyID -{ - return [@"0x" stringByAppendingString:[self shortKeyID]]; -} - -@end - -@implementation GPGRemoteUserID(GPGMail) - -- (BOOL) canHaveChildren -{ - return NO; -} - -@end - -@implementation GPGSignature(GPGMail) - -- (NSNumber *) validityNumber -{ - return [NSNumber numberWithInt:[self validity]]; -} - -@end - diff --git a/GPGMail/Source/GPGMail.icns b/GPGMail/Source/GPGMail.icns deleted file mode 100644 index 02a3ead9..00000000 Binary files a/GPGMail/Source/GPGMail.icns and /dev/null differ diff --git a/GPGMail/Source/GPGMailBundle.h b/GPGMail/Source/GPGMailBundle.h deleted file mode 100644 index 9895956e..00000000 --- a/GPGMail/Source/GPGMailBundle.h +++ /dev/null @@ -1,258 +0,0 @@ -/* GPGMailBundle.h created by dave on Thu 29-Jun-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - -#import -#import -#import -#import - - -@class MessageHeaders; -@class NSMenu; -@class NSMutableDictionary; -@class Message; - - -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) -NSString * const GPGKeyringChangedNotification; -NSString * const GPGErrorKey; -NSString * const GPGException; -NSString * const GPGAdditionalReasonKey; -NSString * const GPGContextKey; -NSString * const GPGAsynchronousOperationDidTerminateNotification; -#endif - -// The following strings are used as toolbarItem identifiers and userDefault keys (value is the position index) -extern NSString *GPGAuthenticateMessageToolbarItemIdentifier; -extern NSString *GPGDecryptMessageToolbarItemIdentifier; -extern NSString *GPGSignMessageToolbarItemIdentifier; -extern NSString *GPGEncryptMessageToolbarItemIdentifier; - -extern NSString *GPGKeyListWasInvalidatedNotification; -extern NSString *GPGPreferencesDidChangeNotification; - -extern NSString *GPGMailException; -extern NSString *GPGKeyGroupsChangedNotification; - -extern NSString *GPGMissingKeysNotification; -// Notification object can be anything; posted when misses key on message verification or message encryption -// UserInfo: 'fingerprints' = NSArray of fingerprints as NSStrings, -// 'emails' = NSArray of email addresses as NSStrings - - -#define GPGENCRYPTION_MENU_ITEMS_COUNT (5) - - -typedef enum { - GPGAutomaticMailFormat, - GPGLegacyPGPMailFormat, - GPGOpenPGPMailFormat, - GPGSMIMEMailFormat -} GPGMailFormat; - - -enum { - GPGMailDebug_SaveInputDataMask = 0x0001 -}; - -#ifdef SNOW_LEOPARD_64 -@interface GPGMailBundle : NSObject -#else -@interface GPGMailBundle : MVMailBundle -#endif -{ - IBOutlet NSMenuItem *decryptMenuItem; - IBOutlet NSMenuItem * authenticateMenuItem; - IBOutlet NSMenuItem * encryptsNewMessageMenuItem; - IBOutlet NSMenuItem * signsNewMessageMenuItem; - IBOutlet NSMenuItem * personalKeysMenuItem; - IBOutlet NSMenuItem * choosePublicKeysMenuItem; - IBOutlet NSMenuItem * automaticPublicKeysMenuItem; - IBOutlet NSMenuItem * usesOnlyOpenPGPStyleMenuItem; - IBOutlet NSMenuItem * symetricEncryptionMenuItem; - GPGKey *defaultKey; - NSMutableDictionary *realToolbarDelegates; - NSMutableDictionary *additionalToolbarItemIdentifiersPerToolbarIdentifier; - NSArray *cachedPersonalKeys; - NSArray *cachedPublicKeys; - NSMapTable *cachedUserIDsPerKey; - NSArray *cachedKeyGroups; -#if 0 - IBOutlet NSMenu *PGPMenu; // Do not remove that line! (kludge for IB) - IBOutlet NSMenu *PGPViewMenu; // Do not remove that line! (kludge for IB) -#endif - NSMenuItem *pgpMenuItem; - NSMenuItem *pgpViewMenuItem; - IBOutlet NSMenuItem *allUserIDsMenuItem; - NSDictionary *locale; - GPGEngine *engine; -} - -+ (void) addSnowLeopardCompatibility; -- (void) setAlwaysSignMessages:(BOOL)flag; -- (BOOL) alwaysSignMessages; -- (void) setAlwaysEncryptMessages:(BOOL)flag; -- (BOOL) alwaysEncryptMessages; -- (void) setEncryptMessagesWhenPossible:(BOOL)flag; -- (BOOL) encryptMessagesWhenPossible; -- (void) setDefaultKey:(GPGKey *)key; -- (GPGKey *) defaultKey; -- (void) setRemembersPassphrasesDuringSession:(BOOL)flag; -- (BOOL) remembersPassphrasesDuringSession; -- (void) setDecryptsMessagesAutomatically:(BOOL)flag; -- (BOOL) decryptsMessagesAutomatically; -- (void) setAuthenticatesMessagesAutomatically:(BOOL)flag; -- (BOOL) authenticatesMessagesAutomatically; -- (void) setDisplaysButtonsInComposeWindow:(BOOL)flag; -- (BOOL) displaysButtonsInComposeWindow; -- (void) setEncryptsToSelf:(BOOL)flag; -- (BOOL) encryptsToSelf; -- (void) setUsesKeychain:(BOOL)flag; -- (BOOL) usesKeychain; -- (void) setDecryptsOnlyUnreadMessagesAutomatically:(BOOL)flag; -- (BOOL) decryptsOnlyUnreadMessagesAutomatically; -- (void) setAuthenticatesOnlyUnreadMessagesAutomatically:(BOOL)flag; -- (BOOL) authenticatesOnlyUnreadMessagesAutomatically; -- (void) setUsesOnlyOpenPGPStyle:(BOOL)flag; -- (BOOL) usesOnlyOpenPGPStyle; -- (void) setUsesEncapsulatedSignature:(BOOL)flag; -- (BOOL) usesEncapsulatedSignature; -- (void) setUsesOnlyOpenPGPStyle:(BOOL)flag; -- (BOOL) usesOnlyOpenPGPStyle; -- (void) setUsesEncapsulatedSignature:(BOOL)flag; -- (BOOL) usesEncapsulatedSignature; -- (void) setUsesBCCRecipients:(BOOL)flag; -- (BOOL) usesBCCRecipients; -- (void) setTrustsAllKeys:(BOOL)flag; -- (BOOL) trustsAllKeys; -- (void) setAutomaticallyShowsAllInfo:(BOOL)flag; -- (BOOL) automaticallyShowsAllInfo; -- (void) setPassphraseFlushTimeout:(NSTimeInterval)timeout; -- (NSTimeInterval) passphraseFlushTimeout; -- (void) setChoosesPersonalKeyAccordingToAccount:(BOOL)flag; -- (BOOL) choosesPersonalKeyAccordingToAccount; -- (void) setButtonsShowState:(BOOL)flag; -- (BOOL) buttonsShowState; -- (void) setSignWhenEncrypting:(BOOL)flag; -- (BOOL) signWhenEncrypting; -- (NSArray *) allDisplayedKeyIdentifiers; -- (void) setDisplayedKeyIdentifiers:(NSArray *)keyIdentifiers; -- (NSArray *) displayedKeyIdentifiers; -- (void) setDisplaysAllUserIDs:(BOOL)flag; -- (BOOL) displaysAllUserIDs; -- (void) setFiltersOutUnusableKeys:(BOOL)flag; -- (BOOL) filtersOutUnusableKeys; -- (void) setShowsPassphrase:(BOOL)flag; -- (BOOL) showsPassphrase; -- (void) setLineWrappingLength:(int)value; -- (int) lineWrappingLength; -- (void) setIgnoresPGPPresence:(BOOL)flag; -- (BOOL) ignoresPGPPresence; -- (void) setRefreshesKeysOnVolumeMount:(BOOL)flag; -- (BOOL) refreshesKeysOnVolumeMount; -- (void) setDisablesSMIME:(BOOL)flag; -- (BOOL) disablesSMIME; -- (void) setWarnedAboutMissingPrivateKeys:(BOOL)flag; -- (BOOL) warnedAboutMissingPrivateKeys; -- (void) setEncryptsReplyToEncryptedMessage:(BOOL)flag; -- (BOOL) encryptsReplyToEncryptedMessage; -- (void) setSignsReplyToSignedMessage:(BOOL)flag; -- (BOOL) signsReplyToSignedMessage; -- (void) setUsesABEntriesRules:(BOOL)flag; -- (BOOL) usesABEntriesRules; -- (void) setAddsCustomHeaders:(BOOL)flag; -- (BOOL) addsCustomHeaders; - -- (NSMenuItem *) decryptMenuItem; -- (NSMenuItem *) authenticateMenuItem; -- (NSMenuItem *) encryptsNewMessageMenuItem; -- (NSMenuItem *) signsNewMessageMenuItem; -- (NSMenuItem *) personalKeysMenuItem; -- (NSMenuItem *) choosePublicKeysMenuItem; -- (NSMenuItem *) automaticPublicKeysMenuItem; -- (NSMenuItem *) symetricEncryptionMenuItem; -- (NSMenuItem *) usesOnlyOpenPGPStyleMenuItem; -- (NSMenuItem *) pgpMenuItem; -- (NSMenuItem *) pgpViewMenuItem; -- (NSMenuItem *) allUserIDsMenuItem; - -- (NSString *) version; -- (NSString *) versionDescription; -+ (BOOL) gpgMailWorks; -- (BOOL) gpgMailWorks; - -- (void) mailTo:(id)sender; - -- (NSArray *) keysForSearchPatterns:(NSArray *)searchPatterns attributeName:(NSString *)attributeKeyPath secretKeys:(BOOL)secretKeys; -- (NSArray *) personalKeys; -- (NSArray *) publicKeys; -- (NSArray *) secondaryUserIDsForKey:(GPGKey *)key; -- (NSArray *) keyGroups; -- (IBAction) gpgReloadPGPKeys:(id)sender; - -- (IBAction) gpgToggleEncryptionForNewMessage:(id)sender; -- (IBAction) gpgToggleSignatureForNewMessage:(id)sender; -- (IBAction) gpgChoosePublicKeys:(id)sender; -- (IBAction) gpgChoosePersonalKey:(id)sender; -- (IBAction) gpgChoosePublicKey:(id)sender; -- (IBAction) gpgToggleAutomaticPublicKeysChoice:(id)sender; -- (IBAction) gpgToggleSymetricEncryption:(id)sender; -- (IBAction) gpgToggleUsesOnlyOpenPGPStyle:(id)sender; -- (IBAction) gpgToggleDisplayAllUserIDs:(id)sender; -- (IBAction) gpgToggleShowKeyInformation:(id)sender; - -- (NSString *) menuItemTitleForKey:(GPGKey *)key; -- (NSString *) menuItemTitleForUserID:(GPGUserID *)userID indent:(unsigned)indent; - -- (void) refreshKeyIdentifiersDisplayInMenu:(NSMenu *)menu; - -- (BOOL) canKeyBeUsedForEncryption:(GPGKey *)key; -- (BOOL) canKeyBeUsedForSigning:(GPGKey *)key; -- (BOOL) canUserIDBeUsed:(GPGUserID *)userID; - -- (NSString *) descriptionForError:(GPGError)error; -- (NSString *) descriptionForException:(NSException *)exception; - -- (NSString *) hashAlgorithmDescription:(GPGHashAlgorithm)algorithm; -- (NSString *) gpgErrorDescription:(GPGError)error; -- (GPGErrorCode) gpgErrorCodeFromError:(GPGError)error; -- (GPGErrorSource) gpgErrorSourceFromError:(GPGError)error; -- (GPGError) gpgMakeErrorWithSource:(GPGErrorSource)source code:(GPGErrorCode)code; - -- (id) locale; - -@end - -@interface GPGMailBundle(AddressGroups) - -- (void) synchronizeKeyGroupsWithAddressBookGroups; - -@end diff --git a/GPGMail/Source/GPGMailBundle.m b/GPGMail/Source/GPGMailBundle.m deleted file mode 100644 index c3746a5f..00000000 --- a/GPGMail/Source/GPGMailBundle.m +++ /dev/null @@ -1,2447 +0,0 @@ -/* GPGMailBundle.m created by dave on Thu 29-Jun-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "GPGMailBundle.h" -#import "MessageContentController+GPGMail.h" -#import "MessageViewer+GPGMail.h" -#import "MessageBody+GPGMail.h" -#import "Message+GPGMail.h" -#import "GPGMailPatching.h" - -#import -#import -#import -#import - -#import "MessageEditor+GPGMail.h" -#import "GPG.subproj/GPGPassphraseController.h" -#import "GPG.subproj/GPGProgressIndicatorController.h" -#import "GPGMailPreferences.h" -#import "TableViewManager+GPGMail.h" -#import "GPGKeyDownload.h" -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) -#import "../MacGPGME/GPGMailAdditions.h" -#endif - -#import -#import -#include - -#include - - -// The following strings are used as toolbarItem identifiers and userDefault keys (value is the position index) -NSString *GPGAuthenticateMessageToolbarItemIdentifier = @"GPGAuthenticateMessageToolbarItem"; -NSString *GPGDecryptMessageToolbarItemIdentifier = @"GPGDecryptMessageToolbarItem"; -NSString *GPGSignMessageToolbarItemIdentifier = @"GPGGPGSignMessageToolbarItemIdentifier"; -NSString *GPGEncryptMessageToolbarItemIdentifier = @"GPGEncryptMessageToolbarItem"; - -NSString *GPGKeyListWasInvalidatedNotification = @"GPGKeyListWasInvalidatedNotification"; -NSString *GPGPreferencesDidChangeNotification = @"GPGPreferencesDidChangeNotification"; - -NSString *GPGMailException = @"GPGMailException"; - -NSString *GPGKeyGroupsChangedNotification = @"GPGKeyGroupsChangedNotification"; - -NSString *GPGMissingKeysNotification = @"GPGMissingKeysNotification"; - -int GPGMailLoggingLevel = 1; - -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) -// Linker will complain about multiple definitions of these symbols, -// but hopefully will use our definitions, -// not the broken ones in the weakly-linked framework. -NSString * const GPGKeyringChangedNotification = @"GPGKeyringChangedNotification"; -NSString * const GPGErrorKey = @"GPGErrorKey"; -NSString * const GPGException = @"GPGException"; -NSString * const GPGAdditionalReasonKey = @"GPGAdditionalReasonKey"; -NSString * const GPGContextKey = @"GPGContextKey"; -NSString * const GPGAsynchronousOperationDidTerminateNotification = @"GPGAsynchronousOperationDidTerminateNotification"; -#endif - -static BOOL gpgMailWorks = YES; - -@interface NSObject(GPGMailBundle) -// Service implemented by Mail.app -- (void) mailTo:(NSPasteboard *)pasteboard userData:(NSString *)userData error:(NSString **)error; -@end - -@interface NSApplication(GPGMailBundle_Revealed) -- (NSArray *) messageEditors; -@end - -@interface GPGEngine(GPGMailBundle_Revealed) -- (NSString *) debugDescription; -@end - -// If we use bodyWasDecoded:forMessage:, other bundles, like SWUrlification, may -// not have the possibility to modify the body (replacing smileys/URLs with icons) -// If we use bodyWillBeDecoded:forMessage:, we have other problems: -// Problems: called when rebuilding mbox, in another thread => exceptions... -// When new mail is sent, also called in another thread. If we do nothing here, mail is NOT encoded too... -// Plus, decrypted will be indexed. - - -@interface GPGMailBundle(Private) -- (void) refreshPersonalKeysMenu; -- (void) refreshPublicKeysMenu; -- (void) flushKeyCache:(BOOL)flag; -@end - -#include -#include -@implementation GPGMailBundle - -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) -+ (void) initializeMacGPGMEUse -{ - // MacGPGME framework is weakly linked, because we wrapped it in bundle, but its path is not in the standard framework lookup paths, - // that's why we needed to weakly linked it. We need to load framework manually. - // ObjC symbols are loaded automatically, but C symbols (globals/functions) are not and cannot be used! - // See http://developer.apple.com/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/WeakLinking.html - NSBundle *myBundle; - NSBundle *frameworkBundle; - - myBundle = [NSBundle bundleForClass:self]; - frameworkBundle = [NSBundle bundleWithPath:[[myBundle bundlePath] stringByAppendingPathComponent:@"Contents/Frameworks/MacGPGME.framework"]]; // FIXME: Linking problem on Panther during execution!!! - NSAssert1([frameworkBundle load], @"### GPGMail: unable to load framework %@", frameworkBundle); -} -#endif - -+ (void)load -{ - GPGMailLoggingLevel = [[NSUserDefaults standardUserDefaults] integerForKey:@"GPGMailDebug"]; - [[NSExceptionHandler defaultExceptionHandler] setExceptionHandlingMask: NSLogOtherExceptionMask | NSLogTopLevelExceptionMask]; -} - -+ (void)addSnowLeopardCompatibility -{ - NSLog(@"Adding Snow Leopard Compatibility"); - - /* Adding methods for ComposeBackEnd. */ - [GPGMailSwizzler addMethodsFromClass:NSClassFromString(@"GPGMail_ComposeBackEnd") toClass:NSClassFromString(@"ComposeBackEnd")]; - - /* Adding methods for HeadersEditor. */ - [GPGMailSwizzler addMethodsFromClass:NSClassFromString(@"GPGMail_HeadersEditor") toClass:NSClassFromString(@"HeadersEditor")]; - /* Adding methods for MailDocumentEditor. */ - [GPGMailSwizzler addMethodsFromClass:NSClassFromString(@"GPGMail_MailDocumentEditor") toClass:NSClassFromString(@"MailDocumentEditor")]; - - /* Add Methods from GPGMail Message Viewer to Message Viewer. */ - [GPGMailSwizzler addMethodsFromClass:NSClassFromString(@"GPGMail_MessageViewer") toClass:NSClassFromString(@"MessageViewer")]; - - /* Add methods of GPGMail Message Content Controller to Message Content Controller. */ - [GPGMailSwizzler addMethodsFromClass:NSClassFromString(@"GPGMail_MessageContentController") toClass:NSClassFromString(@"MessageContentController")]; - - /* Swizzling method for the contextual menu of the table view manager. */ - [GPGMailSwizzler addMethodsFromClass:NSClassFromString(@"GPGMail_TableViewManager") toClass:NSClassFromString(@"TableViewManager")]; - - /* Emulate categories for MailTextAttachment. */ - [GPGMailSwizzler addMethodsFromClass:NSClassFromString(@"GPGMail_MailTextAttachment") toClass:NSClassFromString(@"MailTextAttachment")]; -} - -+ (void) initialize -{ - if(class_getSuperclass([self class]) != NSClassFromString(@"MVMailBundle")) { - [super initialize]; - - Class mvMailBundleClass = NSClassFromString(@"MVMailBundle"); - if(mvMailBundleClass) - class_setSuperclass([self class], mvMailBundleClass); - - [GPGMailBundle addSnowLeopardCompatibility]; - } - NSBundle *myBundle; - - // Do not call super - see +initialize documentation - myBundle = [NSBundle bundleForClass:self]; - -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) - [self initializeMacGPGMEUse]; -#endif - - // We need to load images and name them, because all images are searched by their name; as they are not located in the main bundle, - // +[NSImage imageNamed:] does not find them. -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"encrypted-Leopard"]] setName:@"gpgEncrypted"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"clear-Leopard"]] setName:@"gpgClear"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"signed-Leopard"]] setName:@"gpgSigned"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"unsigned-Leopard"]] setName:@"gpgUnsigned"]; -#elif defined(TIGER) - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"encrypted-Tiger"]] setName:@"gpgEncrypted"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"clear-Tiger"]] setName:@"gpgClear"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"signed-Tiger"]] setName:@"gpgSigned"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"unsigned-Tiger"]] setName:@"gpgUnsigned"]; -#else - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"encrypted"]] setName:@"gpgEncrypted"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"clear"]] setName:@"gpgClear"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"signed"]] setName:@"gpgSigned"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"unsigned"]] setName:@"gpgUnsigned"]; -#endif - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"GPGMail"]] setName:@"GPGMail"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"GPGMailPreferences"]] setName:@"GPGMailPreferences"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"questionMark"]] setName:@"gpgQuestionMark"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"SmallAlert12"]] setName:@"gpgSmallAlert12"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"SmallAlert16"]] setName:@"gpgSmallAlert16"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"EmptyImage"]] setName:@"gpgEmptyImage"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"ValidBadge"]] setName:@"gpgValidBadge"]; - [(NSImage *)[[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:@"InvalidBadge"]] setName:@"gpgInvalidBadge"]; - // Do NOT release images! - - [self registerBundle]; // To force registering composeAccessoryView and preferences - - NSLog(@"Loaded GPGMail %@", [(GPGMailBundle *)[self sharedInstance] version]); - - SUUpdater *updater = [SUUpdater updaterForBundle:[NSBundle bundleWithIdentifier:@"ch.sente.gpgmail"]]; - updater.delegate = [self sharedInstance]; - [updater setAutomaticallyChecksForUpdates:YES]; - [updater resetUpdateCycle]; -#warning Sparkle should automatically start to check, but sometimes doesn't. -} - -- (NSString *)pathToRelaunchForUpdater:(SUUpdater *)updater { - return @"/Applications/Mail.app"; -} - -+ (BOOL) hasPreferencesPanel -{ - return gpgMailWorks; // LEOPARD Invoked on +initialize. Else, invoked from +registerBundle -} - -+ (NSString *) preferencesOwnerClassName -{ - return NSStringFromClass([GPGMailPreferences class]); -} - -+ (NSString *) preferencesPanelName -{ - return NSLocalizedStringFromTableInBundle(@"PGP_PREFERENCES", @"GPGMail", [NSBundle bundleForClass:self], "PGP preferences panel name"); -} - -+ (BOOL) gpgMailWorks -{ - return gpgMailWorks; -} - -- (BOOL) gpgMailWorks -{ - return gpgMailWorks; -} - -- (NSMenuItem *) newMenuItemWithTitle:(NSString *)title action:(SEL)action andKeyEquivalent:(NSString *)keyEquivalent inMenu:(NSMenu *)menu relativeToItemWithSelector:(SEL)selector offset:(int)offset -// Taken from /System/Developer/Examples/EnterpriseObjects/AppKit/ModelerBundle/EOUtil.m -{ - // Simple utility category which adds a new menu item with title, action - // and keyEquivalent to menu (or one of its submenus) under that item with - // selector as its action. Returns the new addition or nil if no such - // item could be found. - - NSMenuItem *menuItem; - NSArray *items = [menu itemArray]; - int iI; - - if(!keyEquivalent) - keyEquivalent = @""; - - for(iI = 0; iI < [items count]; iI++){ - menuItem = [items objectAtIndex:iI]; - - if([menuItem action] == selector) - return ([menu insertItemWithTitle:title action:action keyEquivalent:keyEquivalent atIndex:iI + offset]); - else if([[menuItem target] isKindOfClass:[NSMenu class]]){ - menuItem = [self newMenuItemWithTitle:title action:action andKeyEquivalent:keyEquivalent inMenu:[menuItem target] relativeToItemWithSelector:selector offset:offset]; - if(menuItem) - return menuItem; - } - } - - return nil; -} - -- (void) setPGPMenu:(NSMenu *)pgpMenu -{ - if(gpgMailWorks){ - pgpMenuItem = [self newMenuItemWithTitle:NSLocalizedStringFromTableInBundle(@"PGP_MENU", @"GPGMail", [NSBundle bundleForClass:[self class]], " submenu title") action:NULL andKeyEquivalent:@"" inMenu:[[NSApplication sharedApplication] mainMenu] relativeToItemWithSelector:@selector(addSenderToAddressBook:) offset:1]; - - if(!pgpMenuItem) - NSLog(@"### GPGMail: unable to add submenu "); - else{ - [[pgpMenuItem menu] insertItem:[NSMenuItem separatorItem] atIndex:[[pgpMenuItem menu] indexOfItem:pgpMenuItem]]; - [[pgpMenuItem menu] setSubmenu:pgpMenu forItem:pgpMenuItem]; - [encryptsNewMessageMenuItem setState:NSOffState]; - [signsNewMessageMenuItem setState:([self alwaysSignMessages] ? NSOnState:NSOffState)]; - [pgpMenuItem retain]; - [self refreshPersonalKeysMenu]; - [self refreshPublicKeysMenu]; -#warning CHECK: keys not synced with current editor? - } - } -} - -- (void) refreshKeyIdentifiersDisplayInMenu:(NSMenu *)menu -{ - NSArray *displayedKeyIdentifiers = [self displayedKeyIdentifiers]; - NSEnumerator *anEnum = [[self allDisplayedKeyIdentifiers] objectEnumerator]; - NSString *anIdentifier; - int i = 1; - - while(anIdentifier = [anEnum nextObject]){ - if(![displayedKeyIdentifiers containsObject:anIdentifier]) - [[menu itemWithTag:i] setState:NSOffState]; - else - [[menu itemWithTag:i] setState:NSOnState]; - i++; - } -} - -- (void) setPGPViewMenu:(NSMenu *)pgpViewMenu -{ - if(gpgMailWorks){ - SEL targetSelector; - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - targetSelector = @selector(toggleThreadedMode:); -#else - targetSelector = @selector(showMailboxesPanel:); -#endif - pgpViewMenuItem = [self newMenuItemWithTitle:NSLocalizedStringFromTableInBundle(@"PGP_KEYS_MENU", @"GPGMail", [NSBundle bundleForClass:[self class]], " submenu title") action:NULL andKeyEquivalent:@"" inMenu:[[NSApplication sharedApplication] mainMenu] relativeToItemWithSelector:targetSelector offset:-1]; - - if(!pgpViewMenuItem) - NSLog(@"### GPGMail: unable to add submenu "); - else{ - NSMenu *aMenu = [pgpViewMenuItem menu]; -/* int anIndex = [aMenu indexOfItem:pgpViewMenuItem]; - - [pgpViewMenuItem retain]; - while(--anIndex > 0) - if([[aMenu itemAtIndex:anIndex] isSeparatorItem]) - break; - if(anIndex > 0){ - [aMenu removeItem:pgpViewMenuItem]; - [aMenu insertItem:pgpViewMenuItem atIndex:anIndex]; - }*/ - [aMenu setSubmenu:pgpViewMenu forItem:pgpViewMenuItem]; - - [self refreshKeyIdentifiersDisplayInMenu:pgpViewMenu]; - } - } -} - -#pragma mark Toolbar stuff (+contextual menu) - -- (id) realDelegateForToolbar:(NSToolbar *)toolbar -{ -//#warning This won't work if other controller usurps delegate! -// if([toolbar delegate] != self){ - if(![[toolbar delegate] isKindOfClass:NSClassFromString(@"MVMailBundle")]){ - [realToolbarDelegates removeObjectForKey:[NSValue valueWithNonretainedObject:toolbar]]; - return nil; - } - else - return [[realToolbarDelegates objectForKey:[NSValue valueWithNonretainedObject:toolbar]] nonretainedObjectValue]; -} - -- (void) addAdditionalContextualMenuItemsToMessageViewer:(MessageViewer *)viewer -{ - NSMenu *menu = [[viewer gpgTableManager] gpgContextualMenu]; - NSMenu *pgpMenu = [[self encryptsNewMessageMenuItem] menu]; - NSMenuItem *newMenuItem; - - // We need to take care of not adding items more than once! - // WARNING Hardcoded dependency on menu item order in PGP menu - newMenuItem = [pgpMenu itemAtIndex:0]; - if([menu indexOfItemWithTitle:[newMenuItem title]] == -1){ - newMenuItem = [NSMenuItem separatorItem]; - [menu addItem:newMenuItem]; - newMenuItem = [[pgpMenu itemAtIndex:0] copyWithZone:[menu zone]]; - [newMenuItem setKeyEquivalent:@""]; - [menu addItem:newMenuItem]; - [newMenuItem release]; - newMenuItem = [[pgpMenu itemAtIndex:1] copyWithZone:[menu zone]]; - [newMenuItem setKeyEquivalent:@""]; - [menu addItem:newMenuItem]; - [newMenuItem release]; - } -} - -- (id) usurpToolbarDelegate:(NSToolbar *)toolbar -{ - NSArray *additionalIdentifiers = [additionalToolbarItemIdentifiersPerToolbarIdentifier objectForKey:[toolbar identifier]]; - id realDelegate = [toolbar delegate]; - - if(realDelegate == nil){ - NSLog(@"### GPGMail: toolbar %@ has no delegate!", [toolbar identifier]); - return nil; - } - - if(additionalIdentifiers != nil && [additionalIdentifiers count] > 0){ - if([realDelegate isKindOfClass:NSClassFromString(@"MessageViewer")]) - [self addAdditionalContextualMenuItemsToMessageViewer:realDelegate]; - // In case other bundles usurp delegation too, they probably do it my way ;-) - else if([realDelegate respondsToSelector:@selector(realDelegateForToolbar:)]){ - id usurpedDelegate = [realDelegate realDelegateForToolbar:toolbar]; - if([usurpedDelegate isKindOfClass:NSClassFromString(@"MessageViewer")]) - [self addAdditionalContextualMenuItemsToMessageViewer:usurpedDelegate]; - } - [realToolbarDelegates setObject:[NSValue valueWithNonretainedObject:realDelegate] forKey:[NSValue valueWithNonretainedObject:toolbar]]; - [toolbar setDelegate:self]; - - return realDelegate; - } - else - // No usurpation if no item added... - return nil; -} - -- (NSToolbarItem *) createToolbarItemWithItemIdentifier:(NSString *)itemIdentifier label:(NSString *)label altLabel:(NSString *)altLabel paletteLabel:(NSString *)paletteLabel tooltip:(NSString *)tooltip target:(id)target action:(SEL)action imageNamed:(NSString *)imageName forToolbar:(NSToolbar *)toolbar -{ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - NSBundle *myBundle = [NSBundle bundleForClass:[self class]]; - SegmentedToolbarItem *anItem = [[NSClassFromString(@"SegmentedToolbarItem") alloc] initWithItemIdentifier:itemIdentifier]; - // By default has already one segment - no need to create it - [[[anItem subitems] objectAtIndex:0] setImage:[NSImage imageNamed:imageName]]; - [anItem setLabel:NSLocalizedStringFromTableInBundle(label, @"GPGMail", myBundle, "") forSegment:0]; - [anItem setAlternateLabel:NSLocalizedStringFromTableInBundle(altLabel, @"GPGMail", myBundle, "") forSegment:0]; - [anItem setPaletteLabel:NSLocalizedStringFromTableInBundle(paletteLabel, @"GPGMail", myBundle, "") forSegment:0]; - [anItem setToolTip:NSLocalizedStringFromTableInBundle(tooltip, @"GPGMail", myBundle, "") forSegment:0]; - [anItem setTag:-1 forSegment:0]; - [anItem setTarget:target forSegment:0]; - [anItem setAction:action forSegment:0]; -#elif defined(TIGER) - MailToolbarItemSegment *aSegment = [[MailToolbarItemSegment alloc] initWithImage:[NSImage imageNamed:imageName] - label:NSLocalizedStringFromTableInBundle(label, @"GPGMail", myBundle, "") - paletteLabel:NSLocalizedStringFromTableInBundle(paletteLabel, @"GPGMail", myBundle, "") - altLabel:NSLocalizedStringFromTableInBundle(altLabel, @"GPGMail", myBundle, "") - tooltip:NSLocalizedStringFromTableInBundle(tooltip, @"GPGMail", myBundle, "") - tag:-1 - target:target - action:action]; - MailToolbarItem *anItem = [[MailToolbarItem alloc] initWithItemIdentifier:itemIdentifier segments:[NSArray arrayWithObject:aSegment] bordered:YES toolbar:toolbar]; -#else - NSToolbarItem *anItem = [[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier]; - NSBundle *myBundle = [NSBundle bundleForClass:[self class]]; - - [anItem setLabel:NSLocalizedStringFromTableInBundle(label, @"GPGMail", myBundle, "")]; - [anItem setPaletteLabel:NSLocalizedStringFromTableInBundle(paletteLabel, @"GPGMail", myBundle, "")]; - [anItem setToolTip:NSLocalizedStringFromTableInBundle(tooltip, @"GPGMail", myBundle, "")]; - [anItem setTarget:target]; - [anItem setAction:action]; - [anItem setImage:[NSImage imageNamed:imageName]]; -#endif - - return [anItem autorelease]; -} - -- (BOOL) itemForItemIdentifier:(NSString *)itemIdentifier alreadyInToolbar:(NSToolbar *)toolbar -{ - NSEnumerator *anEnum = [[toolbar items] objectEnumerator]; - NSToolbarItem *anItem; - - while(anItem = [anEnum nextObject]) - if([[anItem itemIdentifier] isEqualToString:itemIdentifier] && ![anItem allowsDuplicatesInToolbar]) - return YES; - return NO; -} - -- (NSToolbarItem *) toolbar:(NSToolbar *)toolbar itemForItemIdentifier:(NSString *)itemIdentifier willBeInsertedIntoToolbar:(BOOL)flag -{ - // IMPORTANT: we need to give, as altLabel, the largest label we can have! - if([itemIdentifier isEqualToString:GPGDecryptMessageToolbarItemIdentifier]) - return [self createToolbarItemWithItemIdentifier:itemIdentifier label:@"DECRYPT_ITEM" altLabel:@"" paletteLabel:@"DECRYPT_ITEM" tooltip:@"DECRYPT_ITEM_TOOLTIP" target:self action:@selector(gpgDecrypt:) imageNamed:@"gpgClear" forToolbar:toolbar]; - else if([itemIdentifier isEqualToString:GPGAuthenticateMessageToolbarItemIdentifier]) - return [self createToolbarItemWithItemIdentifier:itemIdentifier label:@"AUTHENTICATE_ITEM" altLabel:@"" paletteLabel:@"AUTHENTICATE_ITEM" tooltip:@"AUTHENTICATE_ITEM_TOOLTIP" target:self action:@selector(gpgAuthenticate:) imageNamed:@"gpgSigned" forToolbar:toolbar]; - else if([itemIdentifier isEqualToString:GPGEncryptMessageToolbarItemIdentifier]){ - // (We cannot use responder chain mechanism, because MessageEditor class does not cooperate...) - NSToolbarItem *newItem; - - if([self buttonsShowState]) - newItem = [self createToolbarItemWithItemIdentifier:itemIdentifier label:@"ENCRYPTED_ITEM" altLabel:@"CLEAR_ITEM" paletteLabel:@"ENCRYPTED_ITEM" tooltip:@"ENCRYPTED_ITEM_TOOLTIP" target:self action:@selector(gpgToggleEncryptionForNewMessage:) imageNamed:@"gpgEncrypted" forToolbar:toolbar]; // label, tooltip and image will be updated by GPGMailComposeAccessoryViewOwner - else - newItem = [self createToolbarItemWithItemIdentifier:itemIdentifier label:@"MAKE_ENCRYPTED_ITEM" altLabel:@"MAKE_CLEAR_ITEM" paletteLabel:@"MAKE_ENCRYPTED_ITEM" tooltip:@"MAKE_ENCRYPTED_ITEM_TOOLTIP" target:self action:@selector(gpgToggleEncryptionForNewMessage:) imageNamed:@"gpgClear" forToolbar:toolbar]; // label, tooltip and image will be updated by GPGMailComposeAccessoryViewOwner - - return newItem; - } - else if([itemIdentifier isEqualToString:GPGSignMessageToolbarItemIdentifier]){ - // (We cannot use responder chain mechanism, because MessageEditor class does not cooperate...) - NSToolbarItem *newItem; - - if([self buttonsShowState]) - newItem = [self createToolbarItemWithItemIdentifier:itemIdentifier label:@"SIGNED_ITEM" altLabel:@"UNSIGNED_ITEM" paletteLabel:@"SIGNED_ITEM" tooltip:@"SIGNED_ITEM_TOOLTIP" target:self action:@selector(gpgToggleSignatureForNewMessage:) imageNamed:@"gpgSigned" forToolbar:toolbar]; // label, tooltip and image will be updated by GPGMailComposeAccessoryViewOwner - else - newItem = [self createToolbarItemWithItemIdentifier:itemIdentifier label:@"MAKE_SIGNED_ITEM" altLabel:@"MAKE_UNSIGNED_ITEM" paletteLabel:@"MAKE_SIGNED_ITEM" tooltip:@"MAKE_SIGNED_ITEM_TOOLTIP" target:self action:@selector(gpgToggleSignatureForNewMessage:) imageNamed:@"gpgUnsigned" forToolbar:toolbar]; // label, tooltip and image will be updated by GPGMailComposeAccessoryViewOwner - - return newItem; - } - else - return [[self realDelegateForToolbar:toolbar] toolbar:toolbar itemForItemIdentifier:itemIdentifier willBeInsertedIntoToolbar:flag]; -} - -- (NSArray *) toolbarDefaultItemIdentifiers:(NSToolbar *)toolbar -{ - return [[self realDelegateForToolbar:toolbar] toolbarDefaultItemIdentifiers:toolbar]; -} - -- (NSArray *) toolbarAllowedItemIdentifiers:(NSToolbar *)toolbar -{ - NSArray *additionalIdentifiers = [additionalToolbarItemIdentifiersPerToolbarIdentifier objectForKey:[toolbar identifier]]; - - if(additionalIdentifiers != nil){ - NSEnumerator *anEnum = [additionalIdentifiers objectEnumerator]; - NSString *anIdentifier; - NSMutableArray *identifiers = [NSMutableArray arrayWithArray:[[self realDelegateForToolbar:toolbar] toolbarAllowedItemIdentifiers:toolbar]]; - - while(anIdentifier = [anEnum nextObject]) - [identifiers addObject:anIdentifier]; - return identifiers; - } - else - return [[self realDelegateForToolbar:toolbar] toolbarAllowedItemIdentifiers:toolbar]; -} - -- (void) toolbarWillAddItem: (NSNotification *)notification notifyRealDelegate:(BOOL)notifyRealDelegate -{ - NSToolbar *toolbar = [notification object]; - - if(notifyRealDelegate){ - id realDelegate = [self realDelegateForToolbar:toolbar]; - - if([realDelegate respondsToSelector:@selector(toolbarWillAddItem:)]) - [realDelegate performSelector:@selector(toolbarWillAddItem:) withObject:notification]; - } -} - -- (void) anyToolbarWillAddItem: (NSNotification *)notification -{ - NSToolbar *toolbar = [notification object]; - id realDelegate = [self realDelegateForToolbar:toolbar]; - - if(realDelegate == nil){ - realDelegate = [self usurpToolbarDelegate:toolbar]; // Can fire notification! - if(realDelegate != nil) - [self toolbarWillAddItem:notification notifyRealDelegate:NO]; - } -} - -- (void) toolbarWillAddItem: (NSNotification *)notification -{ - // Called automatically by toolbar we are the delegate of - [self toolbarWillAddItem:notification notifyRealDelegate:YES]; -} - -- (void) toolbarDidRemoveItem: (NSNotification *)notification -{ - // Called automatically by toolbar we are the delegate of - // Update userDefaults - NSToolbar *toolbar = [notification object]; - id realDelegate = [self realDelegateForToolbar:toolbar]; - NSString *itemIdentifier = [[[notification userInfo] objectForKey:@"item"] itemIdentifier]; - NSArray *additionalIdentifiers = [additionalToolbarItemIdentifiersPerToolbarIdentifier objectForKey:[toolbar identifier]]; - - // WARNING: check whether it was a duplicate item! - if([additionalIdentifiers containsObject:itemIdentifier]) - [[NSUserDefaults standardUserDefaults] removeObjectForKey:[itemIdentifier stringByAppendingFormat:@".%@", [toolbar identifier]]]; - if([realDelegate respondsToSelector:_cmd]) - [realDelegate performSelector:_cmd withObject:notification]; -} - -- (void) refreshPersonalKeysMenu -{ - GPGKey *aKey; - GPGKey *theDefaultKey = [self defaultKey]; - NSMenu *aSubmenu = [personalKeysMenuItem submenu]; - NSEnumerator *anEnum = [[NSArray arrayWithArray:[aSubmenu itemArray]] objectEnumerator]; - NSMenuItem *anItem; - BOOL displaysAllUserIDs = [self displaysAllUserIDs]; - - while(anItem = [anEnum nextObject]) - [aSubmenu removeItem:anItem]; - - anEnum = [[self personalKeys] objectEnumerator]; - while(aKey = [anEnum nextObject]){ - anItem = [aSubmenu addItemWithTitle:[self menuItemTitleForKey:aKey] action:@selector(gpgChoosePersonalKey:) keyEquivalent:@""]; - [anItem setRepresentedObject:aKey]; - [anItem setTarget:self]; - if(![self canKeyBeUsedForSigning:aKey]) - [anItem setEnabled:NO]; - if(theDefaultKey && [aKey isEqual:theDefaultKey]) - [anItem setState:NSOnState]; - // TODO: We should change the OnState image and use a dot - if(displaysAllUserIDs){ - NSEnumerator *userIDEnum = [[self secondaryUserIDsForKey:aKey] objectEnumerator]; - GPGUserID *aUserID; - - while(aUserID = [userIDEnum nextObject]){ - anItem = [aSubmenu addItemWithTitle:[self menuItemTitleForUserID:aUserID indent:1] action:NULL keyEquivalent:@""]; - [anItem setEnabled:NO]; - } - } - } -} - -- (void) refreshPublicKeysMenu -{ - NSMenu *aSubmenu = [choosePublicKeysMenuItem menu]; - NSEnumerator *anEnum = [[NSArray arrayWithArray:[aSubmenu itemArray]] objectEnumerator]; - NSMenuItem *anItem; - int i; - GPGKey *theDefaultKey = [[self defaultKey] publicKey]; - - for(i = 0; i < GPGENCRYPTION_MENU_ITEMS_COUNT; i++) - [anEnum nextObject]; // Skip some items - - while(anItem = [anEnum nextObject]) - [aSubmenu removeItem:anItem]; -#warning Duplicated code! - anEnum = [[self personalKeys] objectEnumerator]; // This is not an error to use personalKeys... - if([self encryptsToSelf] && theDefaultKey){ - anItem = [aSubmenu addItemWithTitle:[self menuItemTitleForKey:theDefaultKey] action:NULL keyEquivalent:@""]; - if(![self canKeyBeUsedForEncryption:theDefaultKey]) - [anItem setEnabled:NO]; - - if([self displaysAllUserIDs]){ - NSEnumerator *userIDEnum = [[self secondaryUserIDsForKey:theDefaultKey] objectEnumerator]; - GPGUserID *aUserID; - - while(aUserID = [userIDEnum nextObject]){ - anItem = [aSubmenu addItemWithTitle:[self menuItemTitleForUserID:aUserID indent:1] action:NULL keyEquivalent:@""]; - [anItem setEnabled:NO]; - } - } - } -} - -- (void) checkPGPmailPresence -{ - if(![self ignoresPGPPresence]){ - if(NSClassFromString(@"PGPMailBundle") != Nil){ - NSBundle *myBundle = [NSBundle bundleForClass:[self class]]; - NSString *errorTitle = NSLocalizedStringFromTableInBundle(@"GPGMAIL_VS_PGPMAIL", @"GPGMail", myBundle, ""); - NSString *errorMessage = [NSString stringWithFormat:NSLocalizedStringFromTableInBundle(@"GPGMAIL_%@_VS_PGPMAIL_%@", @"GPGMail", myBundle, ""), [myBundle bundlePath], [[NSBundle bundleForClass:NSClassFromString(@"PGPMailBundle")] bundlePath]]; - - if(NSRunCriticalAlertPanel(errorTitle, @"%@", NSLocalizedStringFromTableInBundle(@"QUIT", @"GPGMail", myBundle, ""), NSLocalizedStringFromTableInBundle(@"CONTINUE_ANYWAY", @"GPGMail", myBundle, ""), nil, errorMessage) == NSAlertDefaultReturn) - [[NSApplication sharedApplication] terminate:nil]; - else - [self setIgnoresPGPPresence:YES]; - } - } -} - -- (GPGEngine *) engine -{ - if(engine == nil){ - BOOL logging = (GPGMailLoggingLevel > 0); - - engine = [GPGEngine engineForProtocol:GPGOpenPGPProtocol]; - NSAssert(engine != nil, @"### gpgme has been configured without OpenPGP engine?!"); - [engine retain]; - if(logging) - NSLog(@"[DEBUG] Engine: %@", [engine debugDescription]); - } - - return engine; -} - -- (BOOL) checkGPG -{ - NSString *errorTitle = nil; - GPGError anError = GPGErrorNoError; - NSBundle *myBundle = [NSBundle bundleForClass:[self class]]; - GPGEngine *anEngine = [self engine]; -/* NSArray *availableExecutablePaths = [anEngine availableExecutablePaths]; - NSString *chosenPath = nil; - - if(![anEngine usesCustomExecutablePath]){ - if([availableExecutablePaths count] == 1){ - chosenPath = [availableExecutablePaths lastObject]; - @try{ - [[GPGEngine engineForProtocol:GPGOpenPGPProtocol] setExecutablePath:chosenPath]; - }@catch(NSException *localException){ - chosenPath = nil; - } - } - else{ - // Give choice to user: either from availables, or custom, or cancel - } - }*/ - - - anError = [GPGEngine checkVersionForProtocol:GPGOpenPGPProtocol]; - if(anError != GPGErrorNoError) - errorTitle = [self gpgErrorDescription:anError]; - else{ - // Now that engine executable path is configurable, we need to check it - if([anEngine version] == nil) - anError = GPGErrorInvalidEngine; - } - - if(anError != GPGErrorNoError){ - NSString *errorMessage = nil; - - if(GPGErrorInvalidEngine == [self gpgErrorCodeFromError:anError]){ - NSString *currentVersion; - NSString *requiredVersion; - NSString *executablePath; - - requiredVersion = [anEngine requestedVersion]; - currentVersion = [anEngine version]; - executablePath = [anEngine executablePath]; - - if(currentVersion == nil){ - errorMessage = NSLocalizedStringFromTableInBundle(@"GPGMAIL_CANNOT_WORK_MISSING_GPG_%@_VERSION_%@", @"GPGMail", myBundle, ""); - errorMessage = [NSString stringWithFormat:errorMessage, executablePath, requiredVersion]; - } - else{ - errorMessage = NSLocalizedStringFromTableInBundle(@"GPGMAIL_CANNOT_WORK_HAS_GPG_%@_VERSION_%@_NEEDS_%@", @"GPGMail", myBundle, ""); - errorMessage = [NSString stringWithFormat:errorMessage, executablePath, currentVersion, requiredVersion]; - } - } - else - errorMessage = NSLocalizedStringFromTableInBundle(@"GPGMAIL_CANNOT_WORK", @"GPGMail", myBundle, ""); - (void)NSRunCriticalAlertPanel(errorTitle, @"%@", nil, nil, nil, errorMessage); - - return NO; - } - else - return YES; -} - -- (BOOL) checkSystem -{ - BOOL isCompatibleSystem; - -#warning CHECK - change for leopard! -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - isCompatibleSystem = (NSClassFromString(@"NSGarbageCollector") != Nil); -#elif defined(TIGER) - isCompatibleSystem = ![[MessageViewer class] instancesRespondToSelector:@selector(showStatusMessage:)]; -#else - isCompatibleSystem = (NSClassFromString(@"NSMetadataQuery") == Nil); // OK -#endif - - if(!isCompatibleSystem){ - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - - (void)NSRunCriticalAlertPanel(NSLocalizedStringFromTableInBundle(@"INVALID_GPGMAIL_VERSION", @"GPGMail", aBundle, "Alert panel title"), @"%@", nil, nil, nil, NSLocalizedStringFromTableInBundle(@"NEEDS_COMPATIBLE_BUNDLE_VERSION", @"GPGMail", aBundle, "Alert panel message")); - } - - return isCompatibleSystem; -} - -- (void)finishInitialization -{ - NSMenuItem *aMenuItem; - - // There's a bug in MOX: added menu items are not enabled/disabled correctly - // if they are instantiated programmatically - NSAssert([NSBundle loadNibNamed:@"GPGMenu" owner:self], @"### GPGMail: -[GPGMailBundle init]: Unable to load nib named GPGMenu"); - // If we disable usurpation, we can't set contextual menu?! - NSEnumerator *anEnum = [[NSClassFromString(@"MessageViewer") allMessageViewers] objectEnumerator]; - MessageViewer *aViewer; - - realToolbarDelegates = [[NSMutableDictionary allocWithZone:[self zone]] init]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - additionalToolbarItemIdentifiersPerToolbarIdentifier = [[NSDictionary allocWithZone:[self zone]] initWithObjectsAndKeys:[NSArray arrayWithObjects:GPGDecryptMessageToolbarItemIdentifier, GPGAuthenticateMessageToolbarItemIdentifier, nil], @"MainWindow", [NSArray arrayWithObjects:GPGDecryptMessageToolbarItemIdentifier, GPGAuthenticateMessageToolbarItemIdentifier, nil], @"SingleMessageViewer", [NSArray arrayWithObjects:GPGEncryptMessageToolbarItemIdentifier, GPGSignMessageToolbarItemIdentifier, nil], @"ComposeWindow_NewMessage", [NSArray arrayWithObjects:GPGEncryptMessageToolbarItemIdentifier, GPGSignMessageToolbarItemIdentifier, nil], @"ComposeWindow_ReplyOrForward", nil]; -#elif defined(TIGER) - additionalToolbarItemIdentifiersPerToolbarIdentifier = [[NSDictionary allocWithZone:[self zone]] initWithObjectsAndKeys:[NSArray arrayWithObjects:GPGDecryptMessageToolbarItemIdentifier, GPGAuthenticateMessageToolbarItemIdentifier, nil], @"MessageViewerTiger", [NSArray arrayWithObjects:GPGDecryptMessageToolbarItemIdentifier, GPGAuthenticateMessageToolbarItemIdentifier, nil], @"TornOffViewerTiger", [NSArray arrayWithObjects:GPGEncryptMessageToolbarItemIdentifier, GPGSignMessageToolbarItemIdentifier, nil], @"ComposeNewOrDraftTiger", [NSArray arrayWithObjects:GPGEncryptMessageToolbarItemIdentifier, GPGSignMessageToolbarItemIdentifier, nil], @"ComposeReplyOrForwardTiger", nil]; -#else - additionalToolbarItemIdentifiersPerToolbarIdentifier = [[NSDictionary allocWithZone:[self zone]] initWithObjectsAndKeys:[NSArray arrayWithObjects:GPGDecryptMessageToolbarItemIdentifier, GPGAuthenticateMessageToolbarItemIdentifier, nil], @"MessageViewer", [NSArray arrayWithObjects:GPGDecryptMessageToolbarItemIdentifier, GPGAuthenticateMessageToolbarItemIdentifier, nil], @"TornOffViewer", [NSArray arrayWithObjects:GPGEncryptMessageToolbarItemIdentifier, GPGSignMessageToolbarItemIdentifier, nil], @"ComposeNewOrDraft", [NSArray arrayWithObjects:GPGEncryptMessageToolbarItemIdentifier, GPGSignMessageToolbarItemIdentifier, nil], @"ComposeReplyOrForward", nil]; -#endif - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(anyToolbarWillAddItem:) name:NSToolbarWillAddItemNotification object:nil]; - // LEOPARD - list is always empty. If too early, then it's OK for us. No instance has yet been created, and we will do the work through -anyToolbarWillAddItem: - while(aViewer = [anEnum nextObject]) - [self usurpToolbarDelegate:[aViewer gpgToolbar]]; - - [GPGPassphraseController setCachesPassphrases:[self remembersPassphrasesDuringSession]]; - [[[NSWorkspace sharedWorkspace] notificationCenter] addObserver:self selector:@selector(workspaceDidMount:) name:NSWorkspaceDidMountNotification object:[NSWorkspace sharedWorkspace]]; - [[[NSWorkspace sharedWorkspace] notificationCenter] addObserver:self selector:@selector(workspaceDidUnmount:) name:NSWorkspaceDidUnmountNotification object:[NSWorkspace sharedWorkspace]]; - [allUserIDsMenuItem setState:([self displaysAllUserIDs] ? NSOnState:NSOffState)]; - - aMenuItem = [self newMenuItemWithTitle:NSLocalizedStringFromTableInBundle(@"PGP_SEARCH_KEYS_MENUITEM", @"GPGMail", [NSBundle bundleForClass:[self class]], " menuItem title") action:@selector(gpgSearchKeys:) andKeyEquivalent:@"" inMenu:[[NSApplication sharedApplication] mainMenu] relativeToItemWithSelector:@selector(showAddressHistoryPanel:) offset:1]; - - if(!aMenuItem) - NSLog(@"### GPGMail: unable to add menuItem "); - else{ - [aMenuItem setTarget:self]; - } - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - // Addition which has nothing to do with GPGMail - if([[NSUserDefaults standardUserDefaults] boolForKey:@"GPGEnableMessageURLCopy"]){ - aMenuItem = [self newMenuItemWithTitle:NSLocalizedStringFromTableInBundle(@"COPY_MSG_URL_MENUITEM", @"GPGMail", [NSBundle bundleForClass:[self class]], " menuItem title") action:@selector(gpgCopyMessageURL:) andKeyEquivalent:@"" inMenu:[[NSApplication sharedApplication] mainMenu] relativeToItemWithSelector:@selector(pasteAsQuotation:) offset:0]; - } -#endif - - [self performSelector:@selector(checkPGPmailPresence) withObject:nil afterDelay:0]; - /* if([[NSUserDefaults standardUserDefaults] boolForKey:@"GPGAddServiceReplacement"]){ - aMenuItem = [self newMenuItemWithTitle:NSLocalizedStringFromTableInBundle(@"ENCRYPT_SELECTION...", @"GPGMail", [NSBundle bundleForClass:[self class]], " menuItem title") action:@selector(gpgEncryptSelection:) andKeyEquivalent:@"" inMenu:[[NSApplication sharedApplication] mainMenu] relativeToItemWithSelector:@selector(complete:) offset:1]; - [aMenuItem setTarget:self]; - aMenuItem = [self newMenuItemWithTitle:NSLocalizedStringFromTableInBundle(@"SIGN_SELECTION...", @"GPGMail", [NSBundle bundleForClass:[self class]], " menuItem title") action:@selector(gpgSignSelection:) andKeyEquivalent:@"" inMenu:[[NSApplication sharedApplication] mainMenu] relativeToItemWithSelector:@selector(complete:) offset:1]; - [aMenuItem setTarget:self]; - }*/ - - [self synchronizeKeyGroupsWithAddressBookGroups]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(abDatabaseChangedExternally:) name:kABDatabaseChangedExternallyNotification object:[ABAddressBook sharedAddressBook]]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(abDatabaseChanged:) name:kABDatabaseChangedNotification object:[ABAddressBook sharedAddressBook]]; - - [[NSDistributedNotificationCenter defaultCenter] addObserver:self selector:@selector(keyringChanged:) name:GPGKeyringChangedNotification object:nil]; -} - -- (id) init -{ - if(self = [super init]){ - NSBundle *myBundle = [NSBundle bundleForClass:[self class]]; - NSDictionary *defaultsDictionary = [NSDictionary dictionaryWithContentsOfFile:[myBundle pathForResource:@"GPGMailBundle" ofType:@"defaults"]]; - - if(gpgMailWorks) - gpgMailWorks = [self checkSystem]; - - if(defaultsDictionary) - [[NSUserDefaults standardUserDefaults] registerDefaults:defaultsDictionary]; - - if(gpgMailWorks) - gpgMailWorks = [self checkGPG]; - if(gpgMailWorks) - [self finishInitialization]; - } - - return self; -} - -- (void) messageStoreMessageFlagsChanged:(NSNotification *)notification -{ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] messageStoreMessageFlagsChanged, from %@, with %@", [notification object], [notification userInfo]); -} - -- (void) workspaceDidMount:(NSNotification *)notification -{ - // Some people put their keys on a mountable volume, and sometimes don't mount that volume - // before launching Mail. In case the keyrings are in a newly-mounted volume, we refresh them - if([self refreshesKeysOnVolumeMount]) - [self flushKeyCache:YES]; -} - -- (void) workspaceDidUnmount:(NSNotification *)notification -{ - // Some people put their keys on a mountable volume, and sometimes don't mount that volume - // before launching Mail. In case the keyrings are in a newly-mounted volume, we refresh them - if([self refreshesKeysOnVolumeMount]) - [self flushKeyCache:YES]; -} - -- (void) dealloc -{ - // Never invoked... - [realToolbarDelegates release]; - [additionalToolbarItemIdentifiersPerToolbarIdentifier release]; - [cachedPersonalKeys release]; - [cachedPublicKeys release]; - if(cachedUserIDsPerKey != NULL) - NSFreeMapTable(cachedUserIDsPerKey); - [cachedKeyGroups release]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:nil object:nil]; - [[[NSWorkspace sharedWorkspace] notificationCenter] removeObserver:self name:nil object:nil]; - [locale release]; - - struct objc_super s = { self, [self superclass] }; - objc_msgSendSuper(&s, @selector(dealloc)); -} - -- (NSString *) versionDescription -{ - return [NSString stringWithFormat:NSLocalizedStringFromTableInBundle(@"VERSION: %@", @"GPGMail", [NSBundle bundleForClass:[self class]], "Description of version prefixed with "), [self version]]; -} - -- (NSString *) version -{ - return [[[NSBundle bundleForClass:[self class]] infoDictionary] objectForKey:@"CFBundleShortVersionString"]; -} - -- (NSMenuItem *) decryptMenuItem -{ - return decryptMenuItem; -} - -- (NSMenuItem *) authenticateMenuItem -{ - return authenticateMenuItem; -} - -- (NSMenuItem *) encryptsNewMessageMenuItem -{ - return encryptsNewMessageMenuItem; -} - -- (NSMenuItem *) signsNewMessageMenuItem -{ - return signsNewMessageMenuItem; -} - -- (NSMenuItem *) personalKeysMenuItem -{ - return personalKeysMenuItem; -} - -- (NSMenuItem *) choosePublicKeysMenuItem -{ - return choosePublicKeysMenuItem; -} - -- (NSMenuItem *) automaticPublicKeysMenuItem -{ - return automaticPublicKeysMenuItem; -} - -- (NSMenuItem *) symetricEncryptionMenuItem -{ - return symetricEncryptionMenuItem; -} - -- (NSMenuItem *) usesOnlyOpenPGPStyleMenuItem -{ - return usesOnlyOpenPGPStyleMenuItem; -} - -- (NSMenuItem *) pgpMenuItem -{ - return pgpMenuItem; -} - -- (NSMenuItem *) pgpViewMenuItem -{ - return pgpViewMenuItem; -} - -- (NSMenuItem *) allUserIDsMenuItem -{ - return allUserIDsMenuItem; -} - -+ (BOOL) hasComposeAccessoryViewOwner -{ - return gpgMailWorks; // TIGER + LEOPARD Invoked on +initialize -} - -+ (NSString *) composeAccessoryViewOwnerClassName -{ - // TIGER/LEOPARD Never invoked! - return @"GPGMailComposeAccessoryViewOwner"; -} - -- (void) preferencesDidChange:(SEL)selector -{ - NSString *aString = NSStringFromSelector(selector); - - aString = [[[aString substringWithRange:NSMakeRange(3, 1)] lowercaseString] stringByAppendingString:[aString substringWithRange:NSMakeRange(4, [aString length] - 5)]]; - // aString is the 'getter' derived from the 'setter' selector (setXXX:) - [[NSNotificationCenter defaultCenter] postNotificationName:GPGPreferencesDidChangeNotification object:self userInfo:[NSDictionary dictionaryWithObject:aString forKey:@"key"]]; -} - -- (void) setAlwaysSignMessages:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGAlwaysSignMessage"]; - if(![signsNewMessageMenuItem isEnabled]) - [signsNewMessageMenuItem setState:(flag ? NSOnState:NSOffState)]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) alwaysSignMessages -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGAlwaysSignMessage"]; -} - -- (void) setAlwaysEncryptMessages:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGAlwaysEncryptMessage"]; - // FIXME: Update menu for mixed - if(![encryptsNewMessageMenuItem isEnabled]) - [encryptsNewMessageMenuItem setState:(flag ? NSOnState:NSOffState)]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) alwaysEncryptMessages -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGAlwaysEncryptMessage"]; -} - -- (void) setEncryptMessagesWhenPossible:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGEncryptMessageWhenPossible"]; - // FIXME: Update menu -// if(![encryptsNewMessageMenuItem isEnabled]) -// [encryptsNewMessageMenuItem setState:(flag ? NSOnState:NSOffState)]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) encryptMessagesWhenPossible -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGEncryptMessageWhenPossible"]; -} - -- (void) setDefaultKey:(GPGKey *)key -{ - if(key != nil){ - [[NSUserDefaults standardUserDefaults] setObject:[key fingerprint] forKey:@"GPGDefaultKeyFingerprint"]; - [key retain]; - [defaultKey release]; - defaultKey = key; - } - else{ - [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"GPGDefaultKeyFingerprint"]; - [defaultKey release]; - defaultKey = nil; - } - [self refreshPersonalKeysMenu]; - [self refreshPublicKeysMenu]; - [self preferencesDidChange:_cmd]; -} - -- (GPGKey *) defaultKey -{ - if(defaultKey == nil && gpgMailWorks){ - NSString *aPattern = [[NSUserDefaults standardUserDefaults] stringForKey:@"GPGDefaultKeyFingerprint"]; - BOOL searchedAllKeys = NO; - BOOL fprPattern = YES; - - if(!aPattern || [aPattern length] == 0){ - aPattern = [[NSUserDefaults standardUserDefaults] stringForKey:@"MailUserName"]; // No longer used since 10.4 - fprPattern = NO; - } - if(!aPattern || [aPattern length] == 0) - aPattern = nil; // Return all secret keys - - do{ - NSEnumerator *anEnum = [[self keysForSearchPatterns:(aPattern ? [NSArray arrayWithObject:(fprPattern ? aPattern : [aPattern valueForKey:@"gpgNormalizedEmail"])] : nil) attributeName:(fprPattern ? @"key.fingerprint":@"normalizedEmail") secretKeys:YES] objectEnumerator]; - GPGKey *aKey; - - while(aKey = [anEnum nextObject]){ - [defaultKey release]; - defaultKey = [aKey retain]; - break; - } - if(aPattern == nil) - searchedAllKeys = YES; - else - aPattern = nil; - }while(defaultKey == nil && !searchedAllKeys); - } - - return defaultKey; -} - -- (void) setRemembersPassphrasesDuringSession:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGRemembersPassphrasesDuringSession"]; - [GPGPassphraseController setCachesPassphrases:flag]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) remembersPassphrasesDuringSession -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGRemembersPassphrasesDuringSession"]; -} - -- (void) setDecryptsMessagesAutomatically:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGDecryptsMessagesAutomatically"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) decryptsMessagesAutomatically -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGDecryptsMessagesAutomatically"]; -} - -- (void) setAuthenticatesMessagesAutomatically:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGAuthenticatesMessagesAutomatically"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) authenticatesMessagesAutomatically -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGAuthenticatesMessagesAutomatically"]; -} - -- (void) setDisplaysButtonsInComposeWindow:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGDisplaysButtonsInComposeWindow"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) displaysButtonsInComposeWindow -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGDisplaysButtonsInComposeWindow"]; -} - -- (void) setEncryptsToSelf:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGEncryptsToSelf"]; - [self refreshPublicKeysMenu]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) encryptsToSelf -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGEncryptsToSelf"]; -} - -- (void) setUsesKeychain:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGUsesKeychain"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) usesKeychain -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGUsesKeychain"]; -} - -- (void) setUsesOnlyOpenPGPStyle:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGOpenPGPStyleOnly"]; - if(![usesOnlyOpenPGPStyleMenuItem isEnabled]) - [usesOnlyOpenPGPStyleMenuItem setState:(flag ? NSOnState:NSOffState)]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) usesOnlyOpenPGPStyle -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGOpenPGPStyleOnly"]; -} - -- (void) setDecryptsOnlyUnreadMessagesAutomatically:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGDecryptsOnlyUnreadMessagesAutomatically"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) decryptsOnlyUnreadMessagesAutomatically -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGDecryptsOnlyUnreadMessagesAutomatically"]; -} - -- (void) setAuthenticatesOnlyUnreadMessagesAutomatically:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGAuthenticatesOnlyUnreadMessagesAutomatically"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) authenticatesOnlyUnreadMessagesAutomatically -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGAuthenticatesOnlyUnreadMessagesAutomatically"]; -} - -- (void) setUsesEncapsulatedSignature:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGUsesEncapsulatedSignature"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) usesEncapsulatedSignature -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGUsesEncapsulatedSignature"]; -} - -- (void) setUsesBCCRecipients:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGUsesBCCRecipients"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) usesBCCRecipients -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGUsesBCCRecipients"]; -} - -- (void) setTrustsAllKeys:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGTrustsAllKeys"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) trustsAllKeys -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGTrustsAllKeys"]; -} - -- (void) setAutomaticallyShowsAllInfo:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGAutomaticallyShowsAllInfo"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) automaticallyShowsAllInfo -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGAutomaticallyShowsAllInfo"]; -} - -- (void) setPassphraseFlushTimeout:(NSTimeInterval)timeout -{ - NSParameterAssert(timeout >= 0.0); - [[NSUserDefaults standardUserDefaults] setFloat:timeout forKey:@"GPGPassphraseFlushTimeout"]; - [self preferencesDidChange:_cmd]; -} - -- (NSTimeInterval) passphraseFlushTimeout -{ - return [[NSUserDefaults standardUserDefaults] floatForKey:@"GPGPassphraseFlushTimeout"]; -} - -- (void) setChoosesPersonalKeyAccordingToAccount:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGChoosesPersonalKeyAccordingToAccount"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) choosesPersonalKeyAccordingToAccount -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGChoosesPersonalKeyAccordingToAccount"]; -} - -- (void) setButtonsShowState:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGButtonsShowState"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) buttonsShowState -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGButtonsShowState"]; -} - -- (void) setSignWhenEncrypting:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGSignWhenEncrypting"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) signWhenEncrypting -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGSignWhenEncrypting"]; -} - -- (NSArray *) allDisplayedKeyIdentifiers -{ - static NSArray *allDisplayedKeyIdentifiers = nil; - - if(!allDisplayedKeyIdentifiers) - // TODO: After adding longKeyID, update GPGPreferences.nib - allDisplayedKeyIdentifiers = [[NSArray arrayWithObjects:@"name", @"email", @"comment", @"fingerprint", @"keyID", /*@"longKeyID",*/ @"validity", @"algorithm", nil] retain]; - - return allDisplayedKeyIdentifiers; -} - -- (void) setDisplayedKeyIdentifiers:(NSArray *)keyIdentifiers -{ - NSEnumerator *anEnum = [keyIdentifiers objectEnumerator]; - NSString *anIdentifier; - - while(anIdentifier = [anEnum nextObject]){ - NSAssert1([[self allDisplayedKeyIdentifiers] containsObject:anIdentifier], @"### GPGMail: -[GPGMailBundle setDisplayedKeyIdentifiers:]: invalid identifier '%@'", anIdentifier); - } - [[NSUserDefaults standardUserDefaults] setObject:keyIdentifiers forKey:@"GPGDisplayedKeyIdentifiers"]; - [self refreshPublicKeysMenu]; - [self refreshPersonalKeysMenu]; - [self refreshKeyIdentifiersDisplayInMenu:[[self pgpViewMenuItem] submenu]]; - [self preferencesDidChange:_cmd]; -} - -- (NSArray *) displayedKeyIdentifiers -{ - return [[NSUserDefaults standardUserDefaults] arrayForKey:@"GPGDisplayedKeyIdentifiers"]; -} - -- (void) setDisplaysAllUserIDs:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGDisplaysAllUserIDs"]; - [self refreshPublicKeysMenu]; - [self refreshPersonalKeysMenu]; - [allUserIDsMenuItem setState:([self displaysAllUserIDs] ? NSOnState:NSOffState)]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) displaysAllUserIDs -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGDisplaysAllUserIDs"]; -} - -- (void) setFiltersOutUnusableKeys:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGFiltersOutUnusableKeys"]; - [self flushKeyCache:YES]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) filtersOutUnusableKeys -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGFiltersOutUnusableKeys"]; -} - -- (void) setShowsPassphrase:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGShowsPassphrase"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) showsPassphrase -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGShowsPassphrase"]; -} - -- (void) setLineWrappingLength:(int)value -{ - [[NSUserDefaults standardUserDefaults] setInteger:value forKey:@"LineLength"]; - [self preferencesDidChange:_cmd]; -} - -- (int) lineWrappingLength -{ - return [[NSUserDefaults standardUserDefaults] integerForKey:@"LineLength"]; -} - -- (void) setIgnoresPGPPresence:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGIgnoresPGPPresence"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) ignoresPGPPresence -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGIgnoresPGPPresence"]; -} - -- (void) setRefreshesKeysOnVolumeMount:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGRefreshesKeysOnVolumeMount"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) refreshesKeysOnVolumeMount -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGRefreshesKeysOnVolumeMount"]; -} - -- (void) setDisablesSMIME:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGDisablesSMIME"]; - [self preferencesDidChange:_cmd]; -} - -- (BOOL) disablesSMIME -{ - return gpgMailWorks && [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGDisablesSMIME"]; -} - -- (void) setWarnedAboutMissingPrivateKeys:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGWarnedAboutMissingPrivateKeys"]; -} - -- (BOOL) warnedAboutMissingPrivateKeys -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGWarnedAboutMissingPrivateKeys"]; -} - -- (void) setEncryptsReplyToEncryptedMessage:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGEncryptsReplyToEncryptedMessage"]; -} - -- (BOOL) encryptsReplyToEncryptedMessage -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGEncryptsReplyToEncryptedMessage"]; -} - -- (void) setSignsReplyToSignedMessage:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGSignsReplyToSignedMessage"]; -} - -- (BOOL) signsReplyToSignedMessage -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGSignsReplyToSignedMessage"]; -} - -- (void) setUsesABEntriesRules:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGUsesABEntriesRules"]; -} - -- (BOOL) usesABEntriesRules -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGUsesABEntriesRules"]; -} - -- (void) setAddsCustomHeaders:(BOOL)flag -{ - [[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"GPGAddCustomHeaders"]; -} - -- (BOOL) addsCustomHeaders -{ - return [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGAddCustomHeaders"]; -} - -- (void) mailTo:(id)sender -{ - NSString *error = nil; - NSPasteboard *aPasteboard = [NSPasteboard pasteboardWithUniqueName]; - NSArray *pbTypes = [NSArray arrayWithObject:NSStringPboardType]; - id serviceProvider = [NSApplication sharedApplication]; - - (void)[aPasteboard declareTypes:pbTypes owner:nil]; - (void)[aPasteboard addTypes:pbTypes owner:nil]; - (void)[aPasteboard setString:@"gpgmail@sente.ch" forType:NSStringPboardType]; - - // Invoke service - if([serviceProvider respondsToSelector:@selector(mailTo:userData:error:)]) - [serviceProvider mailTo:aPasteboard userData:nil error:&error]; - if(error) - NSBeep(); -} - -- (void) gpgForwardAction:(SEL)action from:(id)sender -{ - // Still used as of v37 for encrypt/sign toolbar buttons - id messageEditor = [[NSApplication sharedApplication] targetForAction:action]; - - if(messageEditor && [messageEditor respondsToSelector:action]) - [messageEditor performSelector:action withObject:sender]; -} - -- (IBAction) gpgToggleEncryptionForNewMessage:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleSignatureForNewMessage:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgChoosePublicKeys:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgChoosePersonalKey:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgChoosePublicKey:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleAutomaticPublicKeysChoice:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleSymetricEncryption:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleUsesOnlyOpenPGPStyle:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleShowKeyInformation:(id)sender -{ - NSString *anIdentifier = [[self allDisplayedKeyIdentifiers] objectAtIndex:([sender tag] - 1)]; - NSMutableArray *anArray = [NSMutableArray arrayWithArray:[self displayedKeyIdentifiers]]; - int oldState = [sender state]; - - if(oldState == NSOnState) - [anArray removeObject:anIdentifier]; - else - [anArray addObject:anIdentifier]; - [self setDisplayedKeyIdentifiers:anArray]; -} - -- (IBAction) gpgToggleDisplayAllUserIDs:(id)sender -{ - [self setDisplaysAllUserIDs:([sender state] != NSOnState)]; // Toggle... -} - -- (id) messageViewerOrEditorForToolbarItem:(NSToolbarItem *)item -{ - NSEnumerator *anEnum = [[NSClassFromString(@"MessageViewer") allMessageViewers] objectEnumerator]; - MessageViewer *aViewer; - MessageViewer *anEditor; - - while(aViewer = [anEnum nextObject]){ - NSToolbar *aToolbar = [aViewer gpgToolbar]; - - if([[aToolbar items] containsObject:item]) - return aViewer; - - if([item isKindOfClass:[NSClassFromString(@"SegmentedToolbarItemSegmentItem") class]] && [[aToolbar items] containsObject:[(SegmentedToolbarItemSegmentItem *)item parent]]) - return aViewer; - } - // These "messageEditors" are not real message editors, but detached viewers (no mailbox)... -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - anEnum = [[NSClassFromString(@"MailDocumentEditor") documentEditors] objectEnumerator]; -#else - anEnum = [(NSArray *)[NSApp messageEditors] objectEnumerator]; -#endif - while(anEditor = [anEnum nextObject]){ - NSToolbar *aToolbar = [anEditor gpgToolbar]; - - if([[aToolbar items] containsObject:item]) - return anEditor; - if([item isKindOfClass:[NSClassFromString(@"SegmentedToolbarItemSegmentItem") class]] && [[aToolbar items] containsObject:[(id)item parent]]) - return anEditor; - } - - anEnum = [[NSClassFromString(@"MessageViewer") allSingleMessageViewers] objectEnumerator]; - while(aViewer = [anEnum nextObject]){ - NSToolbar *aToolbar = [aViewer gpgToolbar]; - - if([[aToolbar items] containsObject:item]) - return aViewer; - - if([item isKindOfClass:[NSClassFromString(@"SegmentedToolbarItemSegmentItem") class]] && [[aToolbar items] containsObject:[(SegmentedToolbarItemSegmentItem *)item parent]]) - return aViewer; - } - - return nil; // May happen, while new compose window is being set up. -} - -- (Message *) targetMessageForToolbarItem:(NSToolbarItem *)item -{ - if(item == nil){ - // item is nil when validating menu items => menu items apply to - // first responder (or use responder chain) - MessageViewer *messageViewer = [[NSApplication sharedApplication] targetForAction:@selector(gpgTextViewer:)]; - MessageContentController *viewer = [messageViewer gpgTextViewer:nil]; - - return [viewer gpgMessage]; - } - else{ - NSEnumerator *anEnum = [[NSClassFromString(@"MessageViewer") allMessageViewers] objectEnumerator]; - MessageViewer *aViewer; - MessageViewer *anEditor; - - while(aViewer = [anEnum nextObject]){ - NSToolbar *aToolbar = [aViewer gpgToolbar]; - - if([[aToolbar items] containsObject:item]) - return [[aViewer gpgTextViewer:nil] gpgMessage]; - } - - // These "messageEditors" are not real message editors, but detached viewers (no mailbox)... -#if defined(LEOPARD) || defined(SNOW_LEOPARD) - anEnum = [[NSClassFromString(@"MailDocumentEditor") documentEditors] objectEnumerator]; -#else - anEnum = [(NSArray *)[NSApp messageEditors] objectEnumerator]; -#endif - while(anEditor = [anEnum nextObject]){ - NSToolbar *aToolbar = [anEditor gpgToolbar]; - - if([[aToolbar items] containsObject:item]) - return [[anEditor gpgTextViewer:nil] gpgMessage]; - } - - anEnum = [[NSClassFromString(@"MessageViewer") allSingleMessageViewers] objectEnumerator]; - while(aViewer = [anEnum nextObject]){ - NSToolbar *aToolbar = [aViewer gpgToolbar]; - - if([[aToolbar items] containsObject:item]) - return [[aViewer gpgTextViewer:nil] gpgMessage]; - } - } - - return nil; -} - -- (BOOL) _validateAction:(SEL)anAction toolbarItem:(NSToolbarItem *)item menuItem:(NSMenuItem *)menuItem -{ - if(anAction == @selector(gpgToggleEncryptionForNewMessage:) || anAction == @selector(gpgToggleSignatureForNewMessage:) || anAction == @selector(gpgChoosePersonalKey:) || anAction == @selector(gpgChoosePublicKeys:) || anAction == @selector(gpgChoosePublicKey:) || anAction == @selector(gpgToggleAutomaticPublicKeysChoice:) || anAction == @selector(gpgToggleSymetricEncryption:) || anAction == @selector(gpgToggleUsesOnlyOpenPGPStyle:)){ - if(menuItem){ - id messageEditor = [[NSApplication sharedApplication] targetForAction:anAction]; - - if(messageEditor != nil) - return ([messageEditor respondsToSelector:@selector(gpgIsRealEditor)] && [messageEditor gpgIsRealEditor] && [messageEditor gpgValidateMenuItem:menuItem]); - else - return NO; - } - else{ - id messageEditor = [self messageViewerOrEditorForToolbarItem:item]; - - if(messageEditor != nil){ - return ([messageEditor respondsToSelector:@selector(gpgIsRealEditor)] && [messageEditor gpgIsRealEditor] && [messageEditor gpgValidateToolbarItem:item]); - } - else - return NO; - } - } - else if(anAction == @selector(gpgDecrypt:) || anAction == @selector(gpgAuthenticate:)){ - if(menuItem){ - MessageViewer *messageViewer = [[NSApplication sharedApplication] targetForAction:@selector(gpgTextViewer:)]; - MessageContentController *viewer = [messageViewer gpgTextViewer:nil]; - - return [viewer validateMenuItem:menuItem]; - } - else{ - MessageViewer *messageViewer = [self messageViewerOrEditorForToolbarItem:item]; - MessageContentController *viewer = [messageViewer gpgTextViewer:nil]; - - return [viewer gpgValidateAction:anAction]; - } - } - else if(anAction == @selector(gpgReloadPGPKeys:)) - return YES; - else if(anAction == @selector(gpgToggleDisplayAllUserIDs:)) - return YES; - else if(anAction == @selector(gpgToggleShowKeyInformation:)) - return YES; - else if(anAction == @selector(gpgSearchKeys:)) - return YES; -/* else if(anAction == @selector(gpgEncryptSelection:) || anAction == @selector(gpgSignSelection:)){ - static id previousDelegate = nil; - static id previousResponder = nil; - - if(previousDelegate != [[NSApp mainWindow] delegate]){ - previousDelegate = [[NSApp mainWindow] delegate]; - NSLog(@"[[NSApp mainWindow] delegate] = %@", [[NSApp mainWindow] delegate]); - } - if(previousResponder != [[NSApp mainWindow] firstResponder]){ - previousResponder = [[NSApp mainWindow] firstResponder]; - NSLog(@"[[NSApp mainWindow] firstResponder] = %@", [[NSApp mainWindow] firstResponder]); - } - if([[[NSApp mainWindow] delegate] isKindOfClass:[MessageEditor class]] && [[[NSApp mainWindow] firstResponder] isKindOfClass:[MessageTextView class]]){ - if([[[NSApp mainWindow] firstResponder] selectedAttachments] == nil && [[[NSApp mainWindow] firstResponder] selectedRange].length > 0) - return YES; - } - }*/ - - return NO; -} - -- (BOOL) validateMenuItem:(NSMenuItem *)theItem -{ - // (Not called for toolbarItems when displayed as menuItems; validateToolbarItem: is called) - return [self _validateAction:[theItem action] toolbarItem:nil menuItem:theItem]; -} - -- (BOOL) validateToolbarItem:(NSToolbarItem *)theItem -{ - // WARNING: this method is called repeatedly by Mail.app - // In fact it is called so often that sometimes it can lock down Mail.app. - // That's why we cache validation results - return [self _validateAction:[theItem action] toolbarItem:theItem menuItem:nil]; -} - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -- (BOOL)validateToolbarItem:(id)fp8 forSegment:(int)fp12 -{ - return [self _validateAction:[fp8 actionForSegment:fp12] toolbarItem:fp8 menuItem:nil]; -} -#endif - -- (IBAction) gpgDecrypt:(id)sender -{ - MessageViewer *messageViewer = [[NSApplication sharedApplication] targetForAction:@selector(gpgTextViewer:)]; - MessageContentController *viewer = [messageViewer gpgTextViewer:nil]; - - [viewer gpgDecrypt:sender]; -} - -- (IBAction) gpgAuthenticate:(id)sender -{ - MessageViewer *messageViewer = [[NSApplication sharedApplication] targetForAction:@selector(gpgTextViewer:)]; - MessageContentController *viewer = [messageViewer gpgTextViewer:nil]; - - [viewer gpgAuthenticate:sender]; -} - -- (void) progressIndicatorDidCancel:(GPGProgressIndicatorController *)controller -{ -// [[GPGHandler defaultHandler] cancelOperation]; -} - -- (IBAction) gpgReloadPGPKeys:(id)sender -{ - [self flushKeyCache:YES]; - if(gpgMailWorks) - [self synchronizeKeyGroupsWithAddressBookGroups]; -} - -- (IBAction) gpgSearchKeys:(id)sender -{ - [[GPGKeyDownload sharedInstance] gpgSearchKeys:sender]; -} - -- (void) flushKeyCache:(BOOL)refresh -{ - [cachedPersonalKeys release]; - cachedPersonalKeys = nil; - [cachedPublicKeys release]; - cachedPublicKeys = nil; - [cachedKeyGroups release]; - cachedKeyGroups = nil; - [defaultKey release]; - defaultKey = nil; - if(cachedUserIDsPerKey != NULL){ - NSFreeMapTable(cachedUserIDsPerKey); - cachedUserIDsPerKey = NULL; - } - if(refresh){ - [[NSNotificationCenter defaultCenter] postNotificationName:GPGKeyListWasInvalidatedNotification object:self]; - [self refreshPersonalKeysMenu]; // Was disabled - [self refreshPublicKeysMenu]; // Was disabled - } -#warning CHECK: keys not synced with current editor! -} - -- (void) warnUserForMissingPrivateKeys:(id)sender -{ - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - NSString *aTitle = NSLocalizedStringFromTableInBundle(@"NO PGP PRIVATE KEY - TITLE", @"GPGMail", aBundle, ""); - NSString *aMessage = NSLocalizedStringFromTableInBundle(@"NO PGP PRIVATE KEY - MESSAGE", @"GPGMail", aBundle, ""); - - (void)NSRunAlertPanel(aTitle, @"%@", nil, nil, nil, aMessage); - [self setWarnedAboutMissingPrivateKeys:YES]; -} - -- (NSArray *) keysForSearchPatterns:(NSArray *)searchPatterns attributeName:(NSString *)attributeKeyPath secretKeys:(BOOL)secretKeys -{ - // We need to perform search in-memory, because asking gpgme/gpg to do it launches - // a task each time, starving the system resources! - NSMutableArray *keys = [NSMutableArray array]; - NSArray *allKeys = (secretKeys ? [self personalKeys] : [self publicKeys]); - - if(!searchPatterns) - [keys addObjectsFromArray:allKeys]; - else{ - NSEnumerator *keyEnum = [allKeys objectEnumerator]; - GPGKey *eachKey; - - while((eachKey = [keyEnum nextObject])){ - NSEnumerator *uidEnum = [[eachKey userIDs] objectEnumerator]; - GPGUserID *eachUserID; - BOOL found = NO; - - while((eachUserID = [uidEnum nextObject])){ - if([searchPatterns containsObject:[eachUserID valueForKeyPath:attributeKeyPath]]){ // FIXME: Zombie(?) of searchPatterns crash in -isEqual: - found = YES; - break; - } - } - - if(found) - [keys addObject:eachKey]; - } - } - - return keys; -} - -- (NSArray *) personalKeys -{ - if(!cachedPersonalKeys && gpgMailWorks){ - GPGContext *aContext = [[GPGContext alloc] init]; - NSEnumerator *anEnum; - NSMutableArray *anArray = [[NSMutableArray alloc] init]; - GPGKey *aKey; - BOOL filterKeys = [self filtersOutUnusableKeys]; - - @try{ - anEnum = [aContext keyEnumeratorForSearchPattern:@"" secretKeysOnly:YES]; - - while(aKey = [anEnum nextObject]){ - // BUG in gpg <= 1.2.x: secret keys have no capabilities when listed in batch! - // That's why we refresh key. - aKey = [aContext refreshKey:aKey]; - if(!filterKeys || [self canKeyBeUsedForSigning:aKey]) - [anArray addObject:aKey]; - } - }@catch(NSException *localException){ - [aContext release]; - [anArray release]; - [localException raise]; - } - cachedPersonalKeys = anArray; - [aContext release]; - if([cachedPersonalKeys count] == 0 && ![self warnedAboutMissingPrivateKeys]) - [self performSelector:@selector(warnUserForMissingPrivateKeys:) withObject:nil afterDelay:0]; - } - - return cachedPersonalKeys; -} - -- (NSArray *) keyGroups -{ - if(!cachedKeyGroups && gpgMailWorks){ - GPGContext *aContext = [[GPGContext alloc] init]; - - cachedKeyGroups = [[aContext keyGroups] retain]; - [aContext release]; - } - - return cachedKeyGroups; -} - -- (NSArray *) publicKeys -{ - if(!cachedPublicKeys && gpgMailWorks){ - GPGContext *aContext = [[GPGContext alloc] init]; - NSEnumerator *anEnum; - NSMutableArray *anArray = [[NSMutableArray alloc] init]; - GPGKey *aKey; - BOOL filterKeys = [self filtersOutUnusableKeys]; - - @try{ - anEnum = [aContext keyEnumeratorForSearchPattern:@"" secretKeysOnly:NO]; - - while(aKey = [anEnum nextObject]){ - if(!filterKeys || [self canKeyBeUsedForEncryption:aKey]) - [anArray addObject:aKey]; - } - }@catch(NSException *localException){ - [aContext release]; - [anArray release]; - [localException raise]; - } - cachedPublicKeys = anArray; - [aContext release]; - } - - return cachedPublicKeys; -} - -- (NSArray *) secondaryUserIDsForKey:(GPGKey *)key -{ - // BUG: if primary userID is not valid, - // it will not be filtered out! - NSArray *result; - - if(cachedUserIDsPerKey == NULL){ - // We NEED to retain userIDs, else there are zombies, due to DO - cachedUserIDsPerKey = NSCreateMapTableWithZone(NSObjectMapKeyCallBacks, NSObjectMapValueCallBacks, 50, [self zone]); - } - result = NSMapGet(cachedUserIDsPerKey, key); - if(result == nil){ - int aCount; - - result = [key userIDs]; - aCount = [result count]; - if(aCount > 1){ - NSEnumerator *anEnum = [result objectEnumerator]; - NSMutableArray *anArray = [NSMutableArray array]; - GPGUserID *aUserID; - BOOL filterKeys = [self filtersOutUnusableKeys]; - - (void)[anEnum nextObject]; // Skip primary userID - while(aUserID = [anEnum nextObject]){ - if(!filterKeys || [self canUserIDBeUsed:aUserID]) - [anArray addObject:aUserID]; - } - result = anArray; - } - else - result = [NSArray array]; - NSMapInsert(cachedUserIDsPerKey, key, result); - } - - return result; -} - -- (NSString *) context:(GPGContext *)context passphraseForKey:(GPGKey *)key again:(BOOL)again -{ - NSString *passphrase; - - if(again && key != nil) - [GPGPassphraseController flushCachedPassphraseForUser:key]; - - // (Find current window) No longer necessary - will be replaced by agent - passphrase = [[GPGPassphraseController controller] passphraseForUser:key title:NSLocalizedStringFromTableInBundle(@"MESSAGE_DECRYPTION_PASSPHRASE_TITLE", @"GPGMail", [NSBundle bundleForClass:[self class]], "") window:/*[[self composeAccessoryView] window]*/nil]; - - return passphrase; -} - -- (GPGKey *) publicKeyForSecretKey:(GPGKey *)secretKey -{ - // Do not invoke -[GPGKey publicKey], because it will perform a gpg op - // Get key from cached public keys - NSEnumerator *keyEnum = [[self publicKeys] objectEnumerator]; - NSString *aFingerprint = [secretKey fingerprint]; - GPGKey *aPublicKey; - - while(aPublicKey = [keyEnum nextObject]){ - if([[aPublicKey fingerprint] isEqualToString:aFingerprint]) - break; - } - - return aPublicKey; -} - -#warning On 10.3, create new method to return attributed string -> can be red/italic/... when expired/disabled/revoked, or have (composed) image prefix -- (NSString *) menuItemTitleForKey:(GPGKey *)key -{ - NSEnumerator *anEnum; - NSString *anIdentifier; - NSMutableArray *components = [NSMutableArray array]; - NSBundle *myBundle = [NSBundle bundleForClass:[self class]]; - GPGUserID *primaryUserID; - GPGSubkey *aSubkey; - BOOL isKeyRevoked, hasKeyExpired, isKeyDisabled, isKeyInvalid; - BOOL hasNonRevokedSubkey = NO, hasNonExpiredSubkey = NO, hasNonDisabledSubkey = NO, hasNonInvalidSubkey = NO; - -#warning FIXME: Secret keys are never marked as revoked! Check expired/disabled/invalid - key = [self publicKeyForSecretKey:key]; - - primaryUserID = ([[key userIDs] count] > 0 ? [[key userIDs] objectAtIndex:0]:nil); - isKeyRevoked = [key isKeyRevoked]; // Secret keys are never marked as revoked! - hasKeyExpired = [key hasKeyExpired]; - isKeyDisabled = [key isKeyDisabled]; - isKeyInvalid = [key isKeyInvalid]; - - // A key can have no "problem" whereas the subkey it needs has such "problems"!!! -#warning We really need to filter keys according to SUBKEYS! - // Currently we filter only according to key -> we display disabled keys, - // whereas we shouldn't even show them - anEnum = [[key subkeys] objectEnumerator]; - while(aSubkey = [anEnum nextObject]){ - if(![aSubkey isKeyRevoked]) - hasNonRevokedSubkey = YES; - if(![aSubkey hasKeyExpired]) - hasNonExpiredSubkey = YES; - if(![aSubkey isKeyDisabled]) - hasNonDisabledSubkey = YES; - if(![aSubkey isKeyInvalid]) - hasNonInvalidSubkey = YES; -#if 0 - isKeyRevoked = isKeyRevoked || [aSubkey isKeyRevoked]; - hasKeyExpired = hasKeyExpired || [aSubkey hasKeyExpired]; - isKeyDisabled = isKeyDisabled || [aSubkey isKeyDisabled]; - isKeyInvalid = isKeyInvalid || [aSubkey isKeyInvalid]; -#endif - } - - if(primaryUserID != nil){ - if([primaryUserID hasBeenRevoked]) - [components addObject:NSLocalizedStringFromTableInBundle(@"REVOKED_USER_ID:", @"GPGMail", myBundle, "")]; - if([primaryUserID isInvalid]) - [components addObject:NSLocalizedStringFromTableInBundle(@"INVALID_USER_ID:", @"GPGMail", myBundle, "")]; - } - - if(isKeyRevoked && !hasNonRevokedSubkey) - [components addObject:NSLocalizedStringFromTableInBundle(@"REVOKED_KEY:", @"GPGMail", myBundle, "")]; - if(hasKeyExpired && !hasNonExpiredSubkey) - [components addObject:NSLocalizedStringFromTableInBundle(@"EXPIRED_KEY:", @"GPGMail", myBundle, "")]; - if(isKeyDisabled && !hasNonDisabledSubkey) - [components addObject:NSLocalizedStringFromTableInBundle(@"DISABLED_KEY:", @"GPGMail", myBundle, "")]; - if(isKeyInvalid && !hasNonInvalidSubkey) - [components addObject:NSLocalizedStringFromTableInBundle(@"INVALID_KEY:", @"GPGMail", myBundle, "")]; - - anEnum = [[self displayedKeyIdentifiers] objectEnumerator]; - while(anIdentifier = [anEnum nextObject]){ - id aValue; - NSString *aComponent; - - if([anIdentifier isEqualToString:@"validity"]) - anIdentifier = @"validityNumber"; - else if([anIdentifier isEqualToString:@"keyID"]) - anIdentifier = @"shortKeyID"; - else if([anIdentifier isEqualToString:@"longKeyID"]) - anIdentifier = @"keyID"; - else if([anIdentifier isEqualToString:@"algorithm"]) - anIdentifier = @"algorithmDescription"; - else if([anIdentifier isEqualToString:@"fingerprint"]) - anIdentifier = @"formattedFingerprint"; - aValue = [key performSelector:NSSelectorFromString(anIdentifier)]; - if(aValue == nil || ([aValue isKindOfClass:[NSString class]] && [(NSString *)aValue length] == 0)) - continue; - - if([anIdentifier isEqualToString:@"email"]) - aComponent = [NSString stringWithFormat:@"<%@>", aValue]; - else if([anIdentifier isEqualToString:@"comment"]) - aComponent = [NSString stringWithFormat:@"(%@)", aValue]; - else if([anIdentifier isEqualToString:@"validityNumber"]){ - // Validity has no meaning yet for secret keys, always unknown, so we never display it - if(![key isSecret]){ - NSString *aDesc = [NSString stringWithFormat:@"Validity=%@", aValue]; - - aDesc = NSLocalizedStringFromTableInBundle(aDesc, @"GPGMail", myBundle, ""); - aComponent = [NSString stringWithFormat:@"[%@%@]", NSLocalizedStringFromTableInBundle(@"VALIDITY: ", @"GPGMail", myBundle, ""), aDesc]; - } - else - continue; - } - else if([anIdentifier isEqualToString:@"shortKeyID"]) - aComponent = [NSString stringWithFormat:@"0x%@", aValue]; - else if([anIdentifier isEqualToString:@"keyID"]) - aComponent = [NSString stringWithFormat:@"0x%@", aValue]; - else - aComponent = aValue; - [components addObject:aComponent]; - } - - return [components componentsJoinedByString:@" "]; -} - -- (NSString *) menuItemTitleForUserID:(GPGUserID *)userID indent:(unsigned)indent -{ - NSEnumerator *anEnum = [[self displayedKeyIdentifiers] objectEnumerator]; - NSString *anIdentifier; - NSMutableArray *titleElements = [NSMutableArray array]; - NSBundle *myBundle = [NSBundle bundleForClass:[self class]]; - -#warning FIXME: Secret keys are never marked as revoked! Check expired/disabled/invalid - if([userID hasBeenRevoked]) - [titleElements addObject:NSLocalizedStringFromTableInBundle(@"REVOKED_USER_ID:", @"GPGMail", myBundle, "")]; - if([userID isInvalid]) - [titleElements addObject:NSLocalizedStringFromTableInBundle(@"INVALID_USER_ID:", @"GPGMail", myBundle, "")]; - - while(anIdentifier = [anEnum nextObject]){ - id aValue; - - if([anIdentifier isEqualToString:@"fingerprint"] || [anIdentifier isEqualToString:@"keyID"] || [anIdentifier isEqualToString:@"algorithm"] || [anIdentifier isEqualToString:@"longKeyID"]) - continue; - if([anIdentifier isEqualToString:@"validity"]) - anIdentifier = @"validityNumber"; - - aValue = [userID performSelector:NSSelectorFromString(anIdentifier)]; - - if(aValue == nil || ([aValue isKindOfClass:[NSString class]] && [(NSString *)aValue length] == 0)) - continue; - - if([anIdentifier isEqualToString:@"email"]) - [titleElements addObject:[NSString stringWithFormat:@"<%@>", aValue]]; - else if([anIdentifier isEqualToString:@"comment"]) - [titleElements addObject:[NSString stringWithFormat:@"(%@)", aValue]]; - else if([anIdentifier isEqualToString:@"validityNumber"]){ - // Validity has no meaning yet for secret keys, always unknown, so we never display it - if(![[userID key] isSecret]){ - NSString *aDesc = [NSString stringWithFormat:@"Validity=%@", aValue]; - - aDesc = NSLocalizedStringFromTableInBundle(aDesc, @"GPGMail", myBundle, ""); - [titleElements addObject:[NSString stringWithFormat:@"[%@%@]", NSLocalizedStringFromTableInBundle(@"VALIDITY: ", @"GPGMail", myBundle, ""), aDesc]]; // Would be nice to have an image for that - } - } - else - [titleElements addObject:aValue]; - } - - return [[@"" stringByPaddingToLength:(indent * 4) withString:@" " startingAtIndex:0] stringByAppendingString:[titleElements componentsJoinedByString:@" "]]; -} - -- (BOOL) canKeyBeUsedForEncryption:(GPGKey *)key -{ - // A subkey can be expired, without the key being, thus making key useless because it has - // no other subkey... - // We don't care about ownerTrust, validity - NSEnumerator *anEnum = [[key subkeys] objectEnumerator]; - GPGSubkey *aSubkey; - - while(aSubkey = [anEnum nextObject]){ - if([aSubkey canEncrypt] && ![aSubkey hasKeyExpired] && ![aSubkey isKeyRevoked] && ![aSubkey isKeyInvalid] && ![aSubkey isKeyDisabled]) - return YES; - } - return NO; -} - -- (BOOL) canKeyBeUsedForSigning:(GPGKey *)key -{ - // A subkey can be expired, without the key being, thus making key useless because it has - // no other subkey... - // We don't care about ownerTrust, validity, subkeys - NSEnumerator *anEnum; - GPGSubkey *aSubkey; - -#warning FIXME: Secret keys are never marked as revoked! Check expired/disabled/invalid - key = [self publicKeyForSecretKey:key]; - - // If primary key itself can sign, that's OK (unlike what gpgme documentation says!) - if([key canSign] && ![key hasKeyExpired] && ![key isKeyRevoked] && ![key isKeyInvalid] && ![key isKeyDisabled]) - return YES; - - anEnum = [[key subkeys] objectEnumerator]; - while(aSubkey = [anEnum nextObject]){ - if([aSubkey canSign] && ![aSubkey hasKeyExpired] && ![aSubkey isKeyRevoked] && ![aSubkey isKeyInvalid] && ![aSubkey isKeyDisabled]) - return YES; - } - return NO; -} - -- (BOOL) canUserIDBeUsed:(GPGUserID *)userID -{ - // We suppose that key is OK - // We don't care about validity -#warning FIXME: Secret keys are never marked as revoked! Check expired/disabled/invalid - return (![userID hasBeenRevoked] && ![userID isInvalid]); -} - -- (NSString *) descriptionForError:(GPGError)error -{ - unsigned errorCode = [self gpgErrorCodeFromError:error]; - NSString *aKey = [NSString stringWithFormat:@"GPGErrorCode=%u", errorCode]; - NSString *localizedString = NSLocalizedStringFromTableInBundle(aKey, @"GPGMail", [NSBundle bundleForClass:[self class]], ""); - - if([localizedString isEqualToString:aKey]) - localizedString = [NSString stringWithFormat:@"%@ (%u)", [self gpgErrorDescription:errorCode], errorCode]; - - return localizedString; -} - -- (NSString *) descriptionForException:(NSException *)exception -{ - if([[exception name] isEqualToString:GPGException]){ - // Workaround for bug in gpgme: in case we encrypt to a key which is not trusted, we get a General Error instead of a Invalid Key error - GPGError anError = [[[exception userInfo] objectForKey:GPGErrorKey] unsignedIntValue]; - NSDictionary *keyErrors = [[[[exception userInfo] objectForKey:GPGContextKey] operationResults] objectForKey:@"keyErrors"]; - NSString *aDescription; - - if([self gpgErrorCodeFromError:anError] == GPGErrorGeneralError && [keyErrors count] > 0) - aDescription = [self descriptionForError:[self gpgMakeErrorWithSource:[self gpgErrorSourceFromError:anError] code:GPGErrorUnusablePublicKey]]; - else - aDescription = [self descriptionForError:[[[exception userInfo] objectForKey:GPGErrorKey] unsignedIntValue]]; - - if(keyErrors != nil){ - NSEnumerator *keyEnum = [keyErrors keyEnumerator]; - id aKey; // GPGKey or GPGRemoteKey - NSMutableArray *errors = [[NSMutableArray alloc] initWithCapacity:[keyErrors count]]; - - while(aKey = [keyEnum nextObject]){ - GPGError anError = [[keyErrors objectForKey:aKey] unsignedIntValue]; - - if(anError != GPGErrorNoError){ - NSString *aKeyDescription = [aKey isKindOfClass:[GPGRemoteKey class]] ? [@"0x" stringByAppendingString:[aKey keyID]] : [self menuItemTitleForKey:aKey]; - - [errors addObject:[NSString stringWithFormat:@"%@ - %@", aKeyDescription, [self descriptionForError:anError]]]; - } - } - if([errors count] > 0) - aDescription = [errors componentsJoinedByString:@". "]; - [errors release]; - } - - return aDescription; - } - else if([[exception name] isEqualToString:GPGMailException]){ - return NSLocalizedStringFromTableInBundle([exception reason], @"GPGMail", [NSBundle bundleForClass:[self class]], ""); - } - else{ - NSString *aString = [exception reason]; - - if([aString hasPrefix:@"[NOTE: this exception originated in the server.]"]) - aString = [aString substringFromIndex:49]; // String is not localized, no problem - return [NSString stringWithFormat:NSLocalizedStringFromTableInBundle(@"EXCEPTION: %@", @"GPGMail", [NSBundle bundleForClass:[self class]], ""), aString]; - } -} - -- (NSString *) hashAlgorithmDescription:(GPGHashAlgorithm)algorithm -{ - // We can't use results coming from MacGPGME: they are not the same as defined in RFC3156 - switch(algorithm){ - case GPG_MD5HashAlgorithm: - return @"md5"; - case GPG_SHA_1HashAlgorithm: - return @"sha1"; - case GPG_RIPE_MD160HashAlgorithm: - return @"ripemd160"; - case GPG_MD2HashAlgorithm: - return @"md2"; - case GPG_TIGER192HashAlgorithm: - return @"tiger192"; - case GPG_HAVALHashAlgorithm: - return @"haval-5-160"; - case GPG_SHA256HashAlgorithm: - return @"sha256"; - case GPG_SHA384HashAlgorithm: - return @"sha384"; - case GPG_SHA512HashAlgorithm: - return @"sha512"; - default:{ -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) - NSString *hashAlgorithmDescription = [GPGKey gpgHashAlgorithmDescription:algorithm]; -#else - NSString *hashAlgorithmDescription = GPGHashAlgorithmDescription(algorithm); -#endif - - if(hashAlgorithmDescription == nil) - hashAlgorithmDescription = [NSString stringWithFormat:@"%d", algorithm]; - - [NSException raise:NSGenericException format:NSLocalizedStringFromTableInBundle(@"INVALID_HASH_%@", @"GPGMail", [NSBundle bundleForClass:[self class]], ""), hashAlgorithmDescription]; - return nil; // Never reached - } - } -} - -- (id) locale -{ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) -// return [NSLocale autoupdatingCurrentLocale]; // FIXME: does not work as expected - return [[NSUserDefaults standardUserDefaults] dictionaryRepresentation]; -#else - // Maybe I don't understand APIs, but descriptions of dates never use the user's language! - // I need to explicitely pass the locale. - if(locale == nil){ - NSMutableDictionary *aDict = [[NSMutableDictionary alloc] init]; - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - NSArray *keys = [NSArray arrayWithObjects:NSWeekDayNameArray, NSShortWeekDayNameArray, NSMonthNameArray, NSShortMonthNameArray, NSTimeFormatString, NSDateFormatString, NSTimeDateFormatString, NSShortTimeDateFormatString, NSCurrencySymbol, NSDecimalSeparator, NSThousandsSeparator, NSDecimalDigits, NSAMPMDesignation, NSHourNameDesignations, NSYearMonthWeekDesignations, NSEarlierTimeDesignations, NSLaterTimeDesignations, NSThisDayDesignations, NSNextDayDesignations, NSNextNextDayDesignations, NSPriorDayDesignations, NSDateTimeOrdering, NSInternationalCurrencyString, NSShortDateFormatString, NSPositiveCurrencyFormatString, NSNegativeCurrencyFormatString, nil]; // All keys are defined in NSUserDefaults.h - NSEnumerator *keyEnum = [keys objectEnumerator]; - NSString *aKey; - - while(aKey = [keyEnum nextObject]){ - id aValue = [defaults objectForKey:aKey]; - - if(aValue != nil) - [aDict setObject:aValue forKey:aKey]; - } - - locale = aDict; - } - - return locale; -#endif -} - -/* -- (void) encryptSelectionSheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo -{ - MessageTextView *aTextView = contextInfo; - NSString *originalString = [[aTextView string] substringWithRange:[aTextView selectedRange]]; -} - -- (IBAction) gpgSignSelection:(id)sender -{ -} - -- (IBAction) gpgEncryptSelection:(id)sender -{ - MessageTextView *aTextView = [[NSApp mainWindow] firstResponder]; - NSWindow *aWindow; - - // Load nib containing list of pubkeys + encoding choice - [NSApp beginSheet:aWindow modalForWindow:[NSApp mainWindow] modalDelegate:self didEndSelector:@selector(encryptSelectionSheetDidEnd:returnCode:contextInfo:) contextInfo:aTextView]; -} -*/ -- (NSString *) gpgErrorDescription:(GPGError)error -{ -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) - return [NSException gpgErrorDescription:error]; -#else - return GPGErrorDescription(error); -#endif -} - -- (GPGErrorCode) gpgErrorCodeFromError:(GPGError)error -{ -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) - return [NSException gpgErrorCodeFromError:error]; -#else - return GPGErrorCodeFromError(error); -#endif -} - -- (GPGErrorSource) gpgErrorSourceFromError:(GPGError)error -{ -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) - return [NSException gpgErrorSourceFromError:error]; -#else - return GPGErrorSourceFromError(error); -#endif -} - -- (GPGError) gpgMakeErrorWithSource:(GPGErrorSource)source code:(GPGErrorCode)code -{ -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) - return [NSException gpgMakeErrorWithSource:source code:code]; -#else - return GPGMakeError(source, code); -#endif -} - -@end - -#import - -@interface ABGroup(GPGMail) -- (NSArray *) gpgFlattenedMembers; -@end - - -@implementation ABGroup(GPGMail) - -- (NSArray *) gpgFlattenedMembers -{ - NSArray *gpgFlattenedMembers = [self members]; - NSEnumerator *anEnum = [[self subgroups] objectEnumerator]; - ABGroup *aGroup; - - while((aGroup = [anEnum nextObject])){ - gpgFlattenedMembers = [gpgFlattenedMembers arrayByAddingObjectsFromArray:[aGroup gpgFlattenedMembers]]; - } - - return gpgFlattenedMembers; -} - -@end - -@implementation GPGMailBundle(AddressGroups) - -- (void) synchronizeKeyGroupsWithAddressBookGroups -{ - // FIXME: Do that in secondary thread - // We try to create/update gpg groups according to AB groups - // We don't modify gpg groups not referenced in AB groups - // We create/modify only gpg groups which have keys for all members - NSEnumerator *abGroupEnum = [[[ABAddressBook sharedAddressBook] groups] objectEnumerator]; - ABGroup *aGroup; - GPGContext *aContext = [[GPGContext alloc] init]; - NSArray *gpgGroups; - GPGKeyGroup *aKeyGroup; - BOOL groupsChanged = NO; - - @try{ - gpgGroups = [aContext keyGroups]; - while((aGroup = [abGroupEnum nextObject])){ - NSEnumerator *memberEnum = [[aGroup gpgFlattenedMembers] objectEnumerator]; - ABPerson *aMember; - BOOL someMemberHasNoEmail = NO; - BOOL someMemberHasNoKey = NO; - NSMutableArray *futureGroupKeys = [NSMutableArray array]; - GPGKeyGroup *existingKeyGroup = nil; - NSEnumerator *keyGroupEnum = [gpgGroups objectEnumerator]; - NSString *aGroupName = [aGroup valueForProperty:kABGroupNameProperty]; - - while((aKeyGroup = [keyGroupEnum nextObject])){ - if([[aKeyGroup name] isEqualToString:aGroupName]){ - existingKeyGroup = aKeyGroup; - break; - } - } - - while((aMember = [memberEnum nextObject])){ - ABMultiValue *emailsValue = [aMember valueForProperty:kABEmailProperty]; - unsigned aCount = [emailsValue count]; - - if(aCount > 0){ - NSMutableArray *emails = [NSMutableArray arrayWithCapacity:aCount]; - unsigned i; - NSArray *gpgKeys; - - for(i = 0; i < aCount; i++) - [emails addObject:[emailsValue valueAtIndex:i]]; - gpgKeys = [self keysForSearchPatterns:[emails valueForKey:@"gpgNormalizedEmail"] attributeName:@"normalizedEmail" secretKeys:NO]; - switch([gpgKeys count]){ - case 0: - someMemberHasNoKey = YES; - break; - case 1: - [futureGroupKeys addObject:[gpgKeys lastObject]]; - break; - default:{ - // If existing gpg group already has user's key, use it, else ask which key(s) to choose - BOOL existingGroupHasKeyForMember = NO; - - if(existingKeyGroup){ - NSEnumerator *keyEnumerator = [gpgKeys objectEnumerator]; - GPGKey *aKey; - - while((aKey = [keyEnumerator nextObject])){ - if([[existingKeyGroup keys] containsObject:aKey]){ - existingGroupHasKeyForMember = YES; - [futureGroupKeys addObject:aKey]; - } - } - } - - if(!existingGroupHasKeyForMember){ - // if(delegate) - // gpgKeys = [delegate chooseKeys:gpgKeys forMember:aMember inGroup:aGroup]; - if([gpgKeys count] == 0) - someMemberHasNoKey = YES; - else - [futureGroupKeys addObjectsFromArray:gpgKeys]; - } - } - } - if(someMemberHasNoKey) - break; - } - else{ - someMemberHasNoEmail = YES; - break; - } - } - - if(!someMemberHasNoEmail && !someMemberHasNoKey){ - if(GPGMailLoggingLevel){ - if(existingKeyGroup) - NSLog(@"[DEBUG] Will update group %@ having keys\n%@\nwith keys\n%@", aGroupName, [[existingKeyGroup keys] valueForKey:@"keyID"], [futureGroupKeys valueForKey:@"keyID"]); - else - NSLog(@"[DEBUG] Will create group %@ with keys\n%@", aGroupName, [futureGroupKeys valueForKey:@"keyID"]); - } - @try{ - (void)[GPGKeyGroup createKeyGroupNamed:aGroupName withKeys:futureGroupKeys]; - groupsChanged = YES; - }@catch(NSException *localException){ - // FIXME: Report to user that group name is invalid? - // Let's ignore the error - } - } - } - }@catch(NSException *localException){ - // FIXME: Report to user that group name is invalid? - // Let's ignore the error - [aContext release]; - [localException raise]; - } - [aContext release]; - - if(groupsChanged) - // FIXME: Post in main thread - [[NSNotificationCenter defaultCenter] postNotificationName:GPGKeyGroupsChangedNotification object:nil]; -} - -- (void) abDatabaseChangedExternally:(NSNotification *)notification -{ - // FIXME: Update only what's needed - [self synchronizeKeyGroupsWithAddressBookGroups]; -} - -- (void) abDatabaseChanged:(NSNotification *)notification -{ - // FIXME: Update only what's needed - [self synchronizeKeyGroupsWithAddressBookGroups]; -} - -- (void) keyringChanged:(NSNotification *)notification -{ - [self gpgReloadPGPKeys:nil]; -} - -@end diff --git a/GPGMail/Source/GPGMailComposeAccessoryViewOwner.h b/GPGMail/Source/GPGMailComposeAccessoryViewOwner.h deleted file mode 100644 index 195d3177..00000000 --- a/GPGMail/Source/GPGMailComposeAccessoryViewOwner.h +++ /dev/null @@ -1,130 +0,0 @@ -/* GPGMailComposeAccessoryViewOwner.h created by dave on Thu 29-Jun-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import -#import "GPG.subproj/GPGHandler.h" -#import -#import - - -@class OptionalView; -@class ColorBackgroundView; - -#ifdef SNOW_LEOPARD_64 -@interface GPGMailComposeAccessoryViewOwner : NSObject -#else -@interface GPGMailComposeAccessoryViewOwner : MVComposeAccessoryViewOwner -#endif -{ - BOOL encryptsMessage; - BOOL signsMessage; - IBOutlet NSButton *encryptionSwitch; - IBOutlet NSButton *signSwitch; - IBOutlet NSView *emptyView; - IBOutlet NSView *fullView; - IBOutlet NSPopUpButton *personalKeysPopUpButton; - IBOutlet NSPopUpButton *publicKeysPopDownButton; - IBOutlet NSPanel *publicKeysPanel; - IBOutlet NSOutlineView *publicKeysOutlineView; - NSMutableArray *selectedPublicKeys; - NSMutableSet *missingPublicKeyEmails; - GPGKey *selectedPersonalKey; - GPGKey *selectedPersonalPublicKey; - BOOL useCustomPublicKeys; - BOOL cachedUseCustomPublicKeys; - NSTableColumn *sortingTableColumn; - BOOL ascendingOrder; - IBOutlet NSPopUpButton *popDownButton; - NSMutableArray *allTableColumns; - NSArray *allPublicKeys; - int cachedPublicKeyCount; - BOOL publicKeysAreSorted; - NSImage *ascendingOrderImage; - NSImage *descendingOrderImage; - BOOL publicKeysOutlineViewHasBeenInitialized; - BOOL usesSymetricEncryption; - BOOL usesOnlyOpenPGPStyle; - BOOL explicitlySetEncryption; - BOOL explicitlySetSignature; - BOOL explicitlySetOpenPGPStyle; - BOOL somePeopleWantSigning; - BOOL somePeopleDontWantSigning; - BOOL somePeopleWantEncryption; - BOOL somePeopleDontWantEncryption; - BOOL somePeopleWantMIME; - BOOL somePeopleDontWantMIME; - BOOL signatureTurnedOnBecauseEncrypted; - NSMutableSet *cachedRecipients; - NSDictionary *replyOptions; - BOOL needsWarning; - - BOOL verifyRulesConflicts; - IBOutlet NSPanel *conflictPanel; - IBOutlet NSTableView *conflictTableView; - IBOutlet NSButton *conflictEncryptionButton; - IBOutlet NSButton *conflictSignatureButton; - IBOutlet NSButton *conflictMIMEButton; - NSMutableDictionary *pgpOptionsPerEmail; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - IBOutlet OptionalView *optionalView; - IBOutlet NSTextField *optionalViewTitleField; - IBOutlet ColorBackgroundView *optionalViewBackgroundView; -#endif - BOOL displaysButtonsInComposeWindow; - BOOL windowWillClose; - BOOL setupUI; - NSArray *currentStates; -} - -- (IBAction) gpgToggleEncryptionForNewMessage:(id)sender; -- (IBAction) gpgToggleSignatureForNewMessage:(id)sender; -- (IBAction) choosePersonalKey:(id)sender; -- (IBAction) gpgChoosePublicKeys:(id)sender; -- (IBAction) gpgChoosePublicKey:(id)sender; -- (IBAction) gpgDownloadMissingKeys:(id)sender; -- (IBAction) gpgChoosePersonalKey:(id)sender; -- (IBAction) gpgUseDefaultPublicKeys:(id)sender; -- (IBAction) gpgToggleAutomaticPublicKeysChoice:(id)sender; -- (IBAction) gpgToggleSymetricEncryption:(id)sender; -- (IBAction) gpgToggleUsesOnlyOpenPGPStyle:(id)sender; -- (IBAction) endModal:(id)sender; -- (IBAction) toggleColumnDisplay:(id)sender; - -- (BOOL) validateToolbarItem:(NSToolbarItem *)theItem; - -- (void) gpgSetOptions:(NSDictionary *)options; - -- (IBAction) endConflictResolution:(id)sender; - -- (BOOL) displaysButtonsInComposeWindow; -- (void) setDisplaysButtonsInComposeWindow:(BOOL)value; - -- (void) evaluateRules; - -@end diff --git a/GPGMail/Source/GPGMailComposeAccessoryViewOwner.m b/GPGMail/Source/GPGMailComposeAccessoryViewOwner.m deleted file mode 100644 index 945c8663..00000000 --- a/GPGMail/Source/GPGMailComposeAccessoryViewOwner.m +++ /dev/null @@ -1,2560 +0,0 @@ -/* GPGMailComposeAccessoryViewOwner.m created by dave on Thu 29-Jun-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "GPGMailComposeAccessoryViewOwner.h" -#import "GPGMailBundle.h" -#import "GPGKeyDownload.h" -#import "Message+GPGMail.h" -#import "MessageBody+GPGMail.h" -#import "MessageEditor+GPGMail.h" -#import "ComposeBackEnd+GPGMail.h" -#import "GPGMEAdditions.h" -#import "NSString+GPGMail.h" -#import "GPGMailPatching.h" - -#import "GPG.subproj/GPGPassphraseController.h" -#import "GPG.subproj/GPGProgressIndicatorController.h" - -#import -#import -#import -#import -#import -#import -#import - - -// Encoded/decoded Body: perhaps we should use notif MessageBodyWasEncodedNotification -// On messageWillBeDelivered:, let's be observer of MessageBodyWasEncodedNotification and call -[MessageBody setEncodedBody:] when -// receiving notification, instead of modifying decodedBody? No, it wouldn't work: we couldn't stop message to be delivered -// if user cannot provide a password, for example. - -// IMPORTANT: we cannot use key userIDs without retaining them, due to NSProxy: -// we need to retain every distant object, we cannot rely on this object's distant retain count, -// that's why we use a cache for userIDs. - -@interface GPGMailComposeAccessoryViewOwner(Private) -- (void) doSetEncryptsMessage:(BOOL)flag; -- (void) doSetSignsMessage:(BOOL)flag; -- (void) refreshPublicKeysMenu:(NSMenu *)aSubmenu fromIndex:(int)index andFillIn:(BOOL)flag; -- (void) refreshPersonalKeysMenuAccordingToSelf:(BOOL)flag; -- (void) changeFromHeader:(id)sender; -- (void) senderAccountDidChange; -- (void) findMatchingPublicKeys; -//- (void) findMatchingPublicKeysIfNecessary; -- (BOOL) hasValidSigningKeys; -- (void) reloadPersonalKeys; -- (void) refreshPublicKeysMenu; -- (void) refreshPublicKeysPopDownButton:(NSNotification *)notification; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) -- (MailDocumentEditor *) messageEditor; -#else -- (MessageEditor *) messageEditor; -#endif -- (void) toggleEncryptionForNewMessage; -- (void) searchKnownPersonsOptions; -- (void) setUsesOnlyOpenPGPStyle:(BOOL)flag; -- (NSArray *) allPublicKeys; -- (NSString *) senderEmail; -@end - -@interface NSView(InFactTilingView) -- (void)setTitle:fp12 forView:fp16; -@end - - -@implementation GPGMailComposeAccessoryViewOwner - -+ (void) initialize { - [super initialize]; - - if(class_getSuperclass([self class]) != NSClassFromString(@"MVComposeAccessoryViewOwner")) { - Class parentClass = NSClassFromString(@"MVComposeAccessoryViewOwner"); - if(parentClass) - class_setSuperclass([self class], parentClass); - } -} - -+ (NSString *) composeAccessoryViewNibName -{ - return @"GPGMailCompose"; // Invoked by -[MVComposeAccessoryViewOwner setupUIForMessage:] -} - -- (BOOL) displaysButtonsInComposeWindow -{ - return [[GPGMailBundle sharedInstance] gpgMailWorks] && displaysButtonsInComposeWindow; -} - -- (void) setDisplaysButtonsInComposeWindow:(BOOL)value -{ - if(displaysButtonsInComposeWindow != value) - displaysButtonsInComposeWindow = value; -} - -- (void) updateMenusAccordingToSelf:(BOOL)accordingToSelf -{ - // Invoked when Compose window becomes/resigns main - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - - if(accordingToSelf){ - [[mailBundle signsNewMessageMenuItem] setState:(signsMessage ? NSOnState:NSOffState)]; - [[mailBundle encryptsNewMessageMenuItem] setState:(encryptsMessage ? NSOnState:NSOffState)]; - [[mailBundle automaticPublicKeysMenuItem] setState:(!useCustomPublicKeys ? NSOnState:NSOffState)]; - [self refreshPublicKeysMenu:[[mailBundle choosePublicKeysMenuItem] menu] fromIndex:GPGENCRYPTION_MENU_ITEMS_COUNT andFillIn:(encryptsMessage && !usesSymetricEncryption)]; - [self refreshPersonalKeysMenuAccordingToSelf:YES]; - [[mailBundle symetricEncryptionMenuItem] setState:usesSymetricEncryption]; - } - else{ - [[mailBundle signsNewMessageMenuItem] setState:([mailBundle alwaysSignMessages] ? NSOnState:NSOffState)]; - [[mailBundle encryptsNewMessageMenuItem] setState:([mailBundle alwaysEncryptMessages] ? NSOnState:NSOffState)]; - [[mailBundle automaticPublicKeysMenuItem] setState:NSOnState]; - [self refreshPublicKeysMenu:[[mailBundle choosePublicKeysMenuItem] menu] fromIndex:GPGENCRYPTION_MENU_ITEMS_COUNT andFillIn:NO]; - [self refreshPersonalKeysMenuAccordingToSelf:NO]; - [[mailBundle symetricEncryptionMenuItem] setState:NSOffState]; - } -} - -- (void) dealloc -{ - [publicKeysOutlineView setDataSource:nil]; - [publicKeysOutlineView setDelegate:nil]; - [publicKeysPanel setDelegate:nil]; - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -// [[NSNotificationCenter defaultCenter] removeObserver:self name:NSViewFrameDidChangeNotification object:nil]; -#endif - [[NSNotificationCenter defaultCenter] removeObserver:self name:NSControlTextDidEndEditingNotification object:nil]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:NSPopUpButtonWillPopUpNotification object:publicKeysPopDownButton]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:NSWindowDidResignMainNotification object:nil]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:NSWindowDidBecomeMainNotification object:nil]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:NSToolbarWillAddItemNotification object:nil]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:GPGKeyListWasInvalidatedNotification object:nil]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:GPGPreferencesDidChangeNotification object:nil]; - [publicKeysPanel release]; - [selectedPublicKeys release]; - [selectedPersonalKey release]; - [selectedPersonalPublicKey release]; - [missingPublicKeyEmails release]; -#warning Check memory leaks - [emptyView release]; - [fullView release]; - [allTableColumns release]; - [allPublicKeys release]; - [ascendingOrderImage release]; - [descendingOrderImage release]; - [pgpOptionsPerEmail release]; - [replyOptions release]; - [[NSRunLoop currentRunLoop] cancelPerformSelectorsWithTarget:self]; - - // Runtime super call - CORRECT ! - struct objc_super s = { self, [self superclass] }; - objc_msgSendSuper(&s, @selector(dealloc)); -} - -- (GPGKey *) selectedPersonalPublicKey -{ - if(!selectedPersonalPublicKey){ - // Do not invoke -[GPGKey publicKey], because it will perform a gpg op - // Get key from cached public keys - NSEnumerator *keyEnum = [[self allPublicKeys] objectEnumerator]; - NSString *aFingerprint = [selectedPersonalKey fingerprint]; - - while(selectedPersonalPublicKey = [keyEnum nextObject]){ - if([[selectedPersonalPublicKey fingerprint] isEqualToString:aFingerprint]){ - [selectedPersonalPublicKey retain]; - break; - } - } - } - - return selectedPersonalPublicKey; -} - -- (void) windowDidResignMain:(NSNotification *)notification -{ - // Note that we cannot compare windows, because we registered ourself - // as observer of all windows, and when the compose panel is closed, - // the composeWindow is released, but not us, and we might - // receive other notifications after our composeAccessoryView - // has been freed! That's why we retain our composeAccessoryView - - if([[self composeAccessoryView] isDescendantOf:[[notification object] contentView]]) - [self updateMenusAccordingToSelf:NO]; -} - -- (void) windowDidBecomeMain:(NSNotification *)notification -{ - if([[self composeAccessoryView] isDescendantOf:[[notification object] contentView]]) - [self updateMenusAccordingToSelf:YES]; -} - -- (void) windowWillClose:(NSNotification *)notification -{ - windowWillClose = YES; - [NSRunLoop cancelPreviousPerformRequestsWithTarget:self selector:@selector(evaluateRules) object:nil]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:[notification name] object:[notification object]]; -} - -static NSComparisonResult compareKeysAccordingToSelection(id key, id otherKey, void *context) -{ - BOOL ascendingOrder = [[(NSDictionary *)context objectForKey:@"ascending"] boolValue]; - NSArray *selectedKeys = [(NSDictionary *)context objectForKey:@"selectedPublicKeys"]; - BOOL leftValue = [selectedKeys containsObject:key]; - BOOL rightValue = [selectedKeys containsObject:otherKey]; - NSComparisonResult result = (leftValue == rightValue ? NSOrderedSame:(leftValue ? NSOrderedDescending : NSOrderedAscending)); - - if(!ascendingOrder && result != NSOrderedSame) - result = (result == NSOrderedAscending ? NSOrderedDescending : NSOrderedAscending); - - return result; -} - -static NSComparisonResult compareKeysWithSelector(id key, id otherKey, void *context) -{ - BOOL ascendingOrder = [[(NSDictionary *)context objectForKey:@"ascending"] boolValue]; - SEL selector = NSSelectorFromString([(NSDictionary *)context objectForKey:@"selector"]); - id leftValue = [key performSelector:selector]; - id rightValue = [otherKey performSelector:selector]; - NSComparisonResult result; - - if([leftValue isKindOfClass:[NSString class]]) - result = [(NSString *)leftValue caseInsensitiveCompare:rightValue]; - else - result = [(NSNumber *)leftValue compare:rightValue]; // Cast is not correct; we put it just to avoid a gcc warning - - if(!ascendingOrder && result != NSOrderedSame) - result = (result == NSOrderedAscending ? NSOrderedDescending : NSOrderedAscending); - - return result; -} - -- (void) invalidateAllPublicKeys -{ - [allPublicKeys release]; - allPublicKeys = nil; - publicKeysAreSorted = NO; - cachedPublicKeyCount = -1; -} - -- (NSArray *) allPublicKeys -{ - // Loading and sorting could be done asynchronously, - // in another thread => not slow. - // We could also filter out unusable keys (disabled, - // expired, cannot encrypt, be it userID or subkey); - // this should be optional. - // We could also filter out keys without a full trust level (opt.). - // Instead of removing them, we could mark them with an icon - // in the menus. - if(allPublicKeys == nil) - allPublicKeys = [[[GPGMailBundle sharedInstance] publicKeys] retain]; - - return allPublicKeys; -} - -- (int) cachedPublicKeyCount -{ - if(cachedPublicKeyCount < 0) - cachedPublicKeyCount = [[self allPublicKeys] count]; - - return cachedPublicKeyCount; -} - -- (NSArray *) sortedPublicKeys -{ - if(!publicKeysAreSorted){ - NSArray *sortedPublicKeys; - - if([[sortingTableColumn identifier] isEqualToString:@"isSelected"]) - sortedPublicKeys = [[[self allPublicKeys] sortedArrayUsingFunction:compareKeysAccordingToSelection context:[NSDictionary dictionaryWithObjectsAndKeys:selectedPublicKeys, @"selectedPublicKeys", [NSNumber numberWithBool:ascendingOrder], @"ascending", nil]] retain]; - else if([[sortingTableColumn identifier] isEqualToString:@"validityDescription"]) - sortedPublicKeys = [[[self allPublicKeys] sortedArrayUsingFunction:compareKeysWithSelector context:[NSDictionary dictionaryWithObjectsAndKeys:@"validityNumber", @"selector", [NSNumber numberWithBool:ascendingOrder], @"ascending", nil]] retain]; - else if([[sortingTableColumn identifier] isEqualToString:@"additionalInfo"]) - sortedPublicKeys = [[[self allPublicKeys] sortedArrayUsingFunction:compareKeysWithSelector context:[NSDictionary dictionaryWithObjectsAndKeys:@"additionalInfoValue", @"selector", [NSNumber numberWithBool:ascendingOrder], @"ascending", nil]] retain]; - else - sortedPublicKeys = [[[self allPublicKeys] sortedArrayUsingFunction:compareKeysWithSelector context:[NSDictionary dictionaryWithObjectsAndKeys:[sortingTableColumn identifier], @"selector", [NSNumber numberWithBool:ascendingOrder], @"ascending", nil]] retain]; - - [allPublicKeys release]; - allPublicKeys = sortedPublicKeys; - publicKeysAreSorted = YES; - } - - return allPublicKeys; -} - -- (void) updateWarningImage -{ -#if 0 -#warning FIXME: Should not modify any encrypt/sign/MIME setting, but only update UI - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - - if(encryptsMessage || [mailBundle encryptMessagesWhenPossible]){ - BOOL hasAtLeastOneInvalidKey = NO; - - if(!usesSymetricEncryption){ - NSEnumerator *anEnum = [selectedPublicKeys objectEnumerator]; - GPGKey *aKey; - - while(aKey = [anEnum nextObject]){ - if(![mailBundle canKeyBeUsedForEncryption:aKey]){ - hasAtLeastOneInvalidKey = YES; - break; - } - } - } - - if(hasAtLeastOneInvalidKey || (!usesSymetricEncryption && !useCustomPublicKeys && [missingPublicKeyEmails count] != 0)){ - if([mailBundle encryptMessagesWhenPossible]){ - if(explicitlySetEncryption){ - if(encryptsMessage) - needsWarning = YES; - } - else if(encryptsMessage){ - if([mailBundle alwaysEncryptMessages]) - needsWarning = YES; - else - // Turn off encryption - { - [self toggleEncryptionForNewMessage]; - } - } - } - else - needsWarning = YES; - } - else{ - // Turn on encryption - if(!encryptsMessage && !explicitlySetEncryption && [[self recipients] count] > 0){ -#warning FIXME: Checking [[self recipients] count] > 0 is not enough, because if we add then remove recipients, encryption is not set back to off - if(!somePeopleDontWantEncryption){ - [self toggleEncryptionForNewMessage]; - } - } - } - } -#endif - - if(needsWarning) - [[[publicKeysPopDownButton itemArray] objectAtIndex:0] setImage:[NSImage imageNamed:@"gpgSmallAlert16"]]; - else - [[[publicKeysPopDownButton itemArray] objectAtIndex:0] setImage:nil]; -} - -- (void) refreshPublicKeysMenu -{ -#if 0 - [self findMatchingPublicKeys]; -#endif - [self refreshPublicKeysMenu:[[[GPGMailBundle sharedInstance] choosePublicKeysMenuItem] menu] fromIndex:GPGENCRYPTION_MENU_ITEMS_COUNT andFillIn:encryptsMessage && !usesSymetricEncryption]; -} - -- (NSArray *) recipients -{ - return [[[self messageEditor] backEnd] gpgRecipients]; -} - -- (void) findMatchingPublicKeys -{ -#warning FIXME: It seems that group name addresses are enclosed in "", i.e. if group name is dummy@x.y, then recipient will be "dummy@x.y", litterally - // Find keys according to recipients - // If it misses a key, it will prepend the email with a question mark - // in the menus, and item will be disabled. Not done in that method. - // Updates internal lists AND imageView - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - NSArray *recipients = [self recipients]; // Normalized - - [selectedPublicKeys removeAllObjects]; - [missingPublicKeyEmails removeAllObjects]; - - if([recipients count] > 0){ - NSString *aRecipient; - NSEnumerator *anEnum; - GPGKey *aKey; - BOOL filterKeys = [mailBundle filtersOutUnusableKeys]; - NSMutableArray *fetchedKeys = [[NSMutableArray alloc] init]; - NSArray *keyGroups = [mailBundle keyGroups]; - - anEnum = [[mailBundle keysForSearchPatterns:recipients attributeName:@"normalizedEmail" secretKeys:NO] objectEnumerator]; - while(aKey = [anEnum nextObject]){ - if(!filterKeys || [mailBundle canKeyBeUsedForEncryption:aKey]) - [fetchedKeys addObject:aKey]; - } - - // Now find whether we miss key; matching needs to be done manually - anEnum = [recipients objectEnumerator]; - while(aRecipient = [anEnum nextObject]){ - NSEnumerator *keyEnum = [fetchedKeys objectEnumerator]; - BOOL found = NO; - NSString *normalizedRecipient = aRecipient; - - // If there a multiple keys with the same - // emails, we want to list them all! - while(/*!found &&*/ (aKey = [keyEnum nextObject])){ - NSEnumerator *userIDEnum = [[aKey userIDs] objectEnumerator]; - GPGUserID *aUserID; - - while(aUserID = [userIDEnum nextObject]){ - // FIXME: If multiple keys with matching email address, take the first one which is valid - if([[aUserID normalizedEmail] isEqualToString:normalizedRecipient] && (!filterKeys || [mailBundle canUserIDBeUsed:aUserID])){ - if(![selectedPublicKeys containsObject:aKey]) - [selectedPublicKeys addObject:aKey]; - found = YES; - break; - } - } - } - - // WARNING Support for groups: we use gpg groups, but as we're in Mail, we suppose - // the group name is a valid email address, expanded to the same persons as with the keys! - - // If there is a group with the same email address as a key, we don't search for that group. - // That should be very unlikely. - if(!found){ - GPGKeyGroup *aKeyGroup; - NSEnumerator *groupEnum = [keyGroups objectEnumerator]; - - while(!found && (aKeyGroup = [groupEnum nextObject])){ - // We compare case-insensitively now - if([[[aKeyGroup name] lowercaseString] isEqualToString:aRecipient]){ - keyEnum = [[aKeyGroup keys] objectEnumerator]; - - while((aKey = [keyEnum nextObject])){ - if(!filterKeys || [mailBundle canKeyBeUsedForEncryption:aKey]){ - if(![selectedPublicKeys containsObject:aKey]) - [selectedPublicKeys addObject:aKey]; - } - } - found = YES; // Even when no key patched criteria - // TODO: It would be nice to display groups in some way in the UI (menus) - } - } - - if(!found) - [missingPublicKeyEmails addObject:aRecipient]; - } - } - [fetchedKeys release]; - - if([mailBundle encryptsToSelf] && selectedPersonalKey){ - GPGKey *aKey = [self selectedPersonalPublicKey]; - - if(aKey && (!filterKeys || [mailBundle canKeyBeUsedForEncryption:aKey])){ - // We have to test that, because it might happen that there's no - // public counterpart to the secret key. - if(![selectedPublicKeys containsObject:aKey]){ - [selectedPublicKeys addObject:aKey]; - } - } - else{ - NSString *aRecipient; - - // WARNING A disabled key can sign but not encrypt - // We always need to verify that even user's key can be used - if([mailBundle choosesPersonalKeyAccordingToAccount]){ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - MailDocumentEditor *editor = [self messageEditor]; -#else - MessageEditor *editor = [self messageEditor]; -#endif - - aRecipient = [[[editor gpgFromPopup] selectedItem] title]; - } - else{ - aRecipient = [selectedPersonalKey email]; - } - - [missingPublicKeyEmails addObject:[aRecipient gpgNormalizedEmail]]; - } - } - } - if([missingPublicKeyEmails count] > 0) - [[NSNotificationCenter defaultCenter] postNotificationName:GPGMissingKeysNotification object:nil userInfo:[NSDictionary dictionaryWithObject:[missingPublicKeyEmails allObjects] forKey:@"emails"]]; -#if 0 - [self updateWarningImage]; // Warning only when encrypting and missing keys -#endif -} -/* -- (void) findMatchingPublicKeysIfNecessary -{ - if(encryptsMessage && !usesSymetricEncryption && !useCustomPublicKeys) - [self findMatchingPublicKeys]; -} -*/ -- (void) reloadPersonalKeys -{ - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - NSEnumerator *keyEnum = [[mailBundle personalKeys] objectEnumerator]; - GPGKey *aKey; - GPGKey *defaultKey = [[[personalKeysPopUpButton selectedItem] representedObject] retain]; - BOOL displaysAllUserIDs = [mailBundle displaysAllUserIDs]; - BOOL hasAtLeastOneKey = NO; - - if(!defaultKey) - defaultKey = [[mailBundle defaultKey] retain]; - [personalKeysPopUpButton removeAllItems]; - while(aKey = [keyEnum nextObject]){ - NSMenuItem *anItem; - - [personalKeysPopUpButton addItemWithTitle:[mailBundle menuItemTitleForKey:aKey]]; - hasAtLeastOneKey = YES; - anItem = [personalKeysPopUpButton lastItem]; - [anItem setRepresentedObject:aKey]; - if(![mailBundle canKeyBeUsedForSigning:aKey]) - [anItem setEnabled:NO]; - - if(defaultKey && [aKey isEqual:defaultKey]) - [personalKeysPopUpButton selectItem:anItem]; - - if(displaysAllUserIDs){ - NSEnumerator *userIDEnum = [[mailBundle secondaryUserIDsForKey:aKey] objectEnumerator]; - GPGUserID *aUserID; - - while(aUserID = [userIDEnum nextObject]){ - [personalKeysPopUpButton addItemWithTitle:[mailBundle menuItemTitleForUserID:aUserID indent:1]]; - anItem = [personalKeysPopUpButton lastItem]; - [anItem setEnabled:NO]; - } - } - } - [self refreshPersonalKeysMenuAccordingToSelf:YES]; - [defaultKey release]; - [personalKeysPopUpButton setEnabled:hasAtLeastOneKey]; -} - -- (void) fillInPublicKeysMenu:(NSMenu *)menu -{ - if([selectedPublicKeys count] > 0){ - NSEnumerator *anEnum = [selectedPublicKeys objectEnumerator]; - GPGKey *aKey; - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - BOOL displaysAllUserIDs = [mailBundle displaysAllUserIDs]; - - while(aKey = [anEnum nextObject]){ - id anItem = [menu addItemWithTitle:[mailBundle menuItemTitleForKey:aKey] action:@selector(gpgChoosePublicKey:) keyEquivalent:@""]; - - [anItem setTarget:[GPGMailBundle sharedInstance]]; - [anItem setImage:nil]; - if(![mailBundle canKeyBeUsedForEncryption:aKey]){ - [anItem setEnabled:NO]; - [anItem setAction:NULL]; - [anItem setTarget:nil]; - } - - if(displaysAllUserIDs){ - NSEnumerator *userIDEnum = [[mailBundle secondaryUserIDsForKey:aKey] objectEnumerator]; - GPGUserID *aUserID; - - while(aUserID = [userIDEnum nextObject]){ - anItem = [menu addItemWithTitle:[mailBundle menuItemTitleForUserID:aUserID indent:1] action:NULL keyEquivalent:@""]; - [anItem setEnabled:NO]; - } - } - } - } - if(!useCustomPublicKeys && [missingPublicKeyEmails count] > 0){ - NSEnumerator *anEnum = [missingPublicKeyEmails objectEnumerator]; - NSString *anEmail; - - while(anEmail = [anEnum nextObject]){ - id anItem = [menu addItemWithTitle:[anEmail lowercaseString] action:NULL keyEquivalent:@""]; - - [anItem setImage:[NSImage imageNamed:@"gpgQuestionMark"]]; - [anItem setEnabled:NO]; - [anItem setTarget:[GPGMailBundle sharedInstance]]; // Necessary, to control automaticValidation behavior - } - } -} - -- (void) refreshPersonalKeysMenuAccordingToSelf:(BOOL)flag -{ - // Selected personal key could also be sync'ed with - // selected account. Optional. - // Sign switch, as well as popup, should be disabled - // when no (valid) signing key exists. - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - NSEnumerator *anEnum = [[[[mailBundle personalKeysMenuItem] submenu] itemArray] objectEnumerator]; - NSMenuItem *anItem; - GPGKey *selectedKey = (flag ? selectedPersonalKey:[mailBundle defaultKey]); - - while(anItem = [anEnum nextObject]){ - GPGKey *aKey = [anItem representedObject]; - - [anItem setState:((selectedKey && [aKey isEqual:selectedKey]) ? NSOnState:NSOffState)]; - [anItem setEnabled:[mailBundle canKeyBeUsedForSigning:aKey]]; - } -} - -- (void) refreshAutomaticChoiceInfo -{ - [[[[publicKeysPopDownButton menu] itemArray] objectAtIndex:3] setState:!useCustomPublicKeys]; - [[[GPGMailBundle sharedInstance] automaticPublicKeysMenuItem] setState:!useCustomPublicKeys]; -} - -- (void) refreshSymetricEncryption -{ - [[[[publicKeysPopDownButton menu] itemArray] objectAtIndex:1] setState:usesSymetricEncryption]; - [[[[publicKeysPopDownButton menu] itemArray] objectAtIndex:3] setEnabled:!usesSymetricEncryption]; - [[[[publicKeysPopDownButton menu] itemArray] objectAtIndex:4] setEnabled:!usesSymetricEncryption]; - [[[[publicKeysPopDownButton menu] itemArray] objectAtIndex:5] setEnabled:!usesSymetricEncryption]; - [[[GPGMailBundle sharedInstance] symetricEncryptionMenuItem] setState:usesSymetricEncryption]; -} - -- (void) refreshPublicKeysMenu:(NSMenu *)aSubmenu fromIndex:(int)index andFillIn:(BOOL)flag -{ -#warning Duplicated code! - NSEnumerator *anEnum = [[NSArray arrayWithArray:[aSubmenu itemArray]] objectEnumerator]; - NSMenuItem *anItem; - int i; - - for(i = 0; i < index; i++) - [anEnum nextObject]; - while(anItem = [anEnum nextObject]) - [aSubmenu removeItem:anItem]; - - if(flag){ - if(!usesSymetricEncryption) - [self fillInPublicKeysMenu:aSubmenu]; - } - else{ - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - GPGKey *defaultKey = [mailBundle defaultKey]; - - if([mailBundle encryptsToSelf] && defaultKey){ - [aSubmenu addItemWithTitle:[mailBundle menuItemTitleForKey:defaultKey] action:NULL keyEquivalent:@""]; - if(![mailBundle canKeyBeUsedForEncryption:defaultKey]) - [[[aSubmenu itemArray] lastObject] setEnabled:NO]; - - if([mailBundle displaysAllUserIDs]){ - NSEnumerator *userIDEnum = [[mailBundle secondaryUserIDsForKey:defaultKey] objectEnumerator]; - GPGUserID *aUserID; - - while(aUserID = [userIDEnum nextObject]){ - anItem = [aSubmenu addItemWithTitle:[mailBundle menuItemTitleForUserID:aUserID indent:1] action:NULL keyEquivalent:@""]; - [anItem setEnabled:NO]; - } - } - } - } -} - -- (void) refreshPublicKeysPopDownButton:(NSNotification *)notification -{ - [self refreshPublicKeysMenu:[publicKeysPopDownButton menu] fromIndex:/*GPGENCRYPTION_MENU_ITEMS_COUNT*/7 andFillIn:YES]; - [self refreshAutomaticChoiceInfo]; -} - -- (void) setupTableColumns -{ - NSArray *visibleTableColumnTags, *tableColumnWidths; - NSEnumerator *anEnum; - int i; - int tableColumnCount; - NSMutableArray *columnIdentifiers; - NSTableColumn *aColumn; - NSNumber *aNumber; - - ascendingOrderImage = [[NSImage imageNamed:@"NSAscendingSortIndicator"] retain]; - descendingOrderImage = [[NSImage imageNamed:@"NSDescendingSortIndicator"] retain]; - allTableColumns = [[NSArray alloc] initWithArray:[publicKeysOutlineView tableColumns]]; - tableColumnCount = [allTableColumns count]; - columnIdentifiers = [NSMutableArray arrayWithCapacity:tableColumnCount]; - - anEnum = [allTableColumns objectEnumerator]; - while(aColumn = [anEnum nextObject]) - [columnIdentifiers addObject:[aColumn identifier]]; - - sortingTableColumn = [[allTableColumns objectAtIndex:[[NSUserDefaults standardUserDefaults] integerForKey:@"GPGSortingTableColumnTag"]] retain]; - ascendingOrder = [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGAscendingSorting"]; - - // Let's restore column widths - tableColumnWidths = [[NSUserDefaults standardUserDefaults] arrayForKey:@"GPGTableColumnWidths"]; - anEnum = [tableColumnWidths objectEnumerator]; - if([tableColumnWidths count] != tableColumnCount) - // Seems we lost the widths! Let's use the default ones - [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"GPGTableColumnWidths"]; - else{ - i = 0; - // Table column order is always the same - while(aNumber = [anEnum nextObject]) - [[allTableColumns objectAtIndex:i++] setWidth:[aNumber floatValue]]; - } - - // Let's reorder visible columns - visibleTableColumnTags = [[NSUserDefaults standardUserDefaults] arrayForKey:@"GPGVisibleTableColumnTags"]; - anEnum = [visibleTableColumnTags objectEnumerator]; - i = 0; - while(aNumber = [anEnum nextObject]){ - NSTableColumn *aColumn = [allTableColumns objectAtIndex:[aNumber intValue]]; - int currentColumn = [[publicKeysOutlineView tableColumns] indexOfObject:aColumn]; - - if(currentColumn != i) - [publicKeysOutlineView moveColumn:currentColumn toColumn:i]; - if(aColumn == sortingTableColumn){ - [publicKeysOutlineView setIndicatorImage:(ascendingOrder ? ascendingOrderImage:descendingOrderImage) inTableColumn:aColumn]; - [publicKeysOutlineView setHighlightedTableColumn:aColumn]; - } - else - [publicKeysOutlineView setIndicatorImage:nil inTableColumn:aColumn]; - [[popDownButton itemAtIndex:[popDownButton indexOfItemWithTag:[aNumber intValue]]] setState:NSOnState]; - i++; - } - - // And remove the invisible ones - for(i = 1; i < tableColumnCount; i++){ - NSString *aString = [NSString stringWithFormat:@"%d", i]; - - if(![visibleTableColumnTags containsObject:aString]){ - aColumn = [allTableColumns objectAtIndex:i]; - [publicKeysOutlineView removeTableColumn:aColumn]; - } - } - - publicKeysOutlineViewHasBeenInitialized = YES; -} - -- (id) init -{ - if(self = [super init]){ - cachedPublicKeyCount = -1; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyListWasInvalidated:) name:GPGKeyListWasInvalidatedNotification object:[GPGMailBundle sharedInstance]]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(preferencesDidChange:) name:GPGPreferencesDidChangeNotification object:[GPGMailBundle sharedInstance]]; - verifyRulesConflicts = YES; - pgpOptionsPerEmail = [[NSMutableDictionary alloc] init]; - displaysButtonsInComposeWindow = [[GPGMailBundle sharedInstance] displaysButtonsInComposeWindow]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - NSAssert([NSBundle loadNibNamed:@"GPGMailComposeTiger" owner:self], @"### Unable to load GPGMailComposeTiger nib"); -#endif - } - - return self; -} - -- (void) finishUISetupWithStates:(NSArray *)savedStates -{ - // Called only once, after composeAccessoryView has been placed onto Compose window - NSView *view = [self composeAccessoryView]; - NSWindow *window = [view window]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - MailDocumentEditor *messageEditor; -#else - MessageEditor *messageEditor; -#endif - - NSAssert(window != nil, @"### GPGMail: expects view to be in final window!"); - // Let's force GPGMailComposeAccessoryViewOwner be the last - // accessory view owner of the list, to be sure that nobody else - // will modify the message after us. - messageEditor = [self messageEditor]; - if([[messageEditor gpgAccessoryViewOwners] lastObject] != self){ - NSMutableArray *owners = [NSMutableArray arrayWithArray:[messageEditor gpgAccessoryViewOwners]]; - - [self retain]; - [owners removeObject:self]; - [owners addObject:self]; - [self release]; - [messageEditor gpgSetAccessoryViewOwners:owners]; - } - - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(windowDidResignMain:) name:NSWindowDidResignMainNotification object:window]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(windowDidBecomeMain:) name:NSWindowDidBecomeMainNotification object:window]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(windowWillClose:) name:NSWindowWillCloseNotification object:window]; -#ifdef TIGER - NSRect containerRect = [[view superview] frame]; - float addedHeight = NSHeight([optionalView frame]); - -#warning FIXME: should be done in MessageEditor - [[view superview] setFrame:NSMakeRect(containerRect.origin.x, containerRect.origin.y - addedHeight, containerRect.size.width, containerRect.size.height + addedHeight)]; - [optionalView setFrame:NSMakeRect(0, 0, containerRect.size.width, addedHeight)]; - [[view superview] addSubview:optionalView]; - NSView *editorView = [[[[view superview] superview] subviews] objectAtIndex:2]; - [editorView setFrameSize:NSMakeSize(NSWidth([editorView frame]), NSHeight([editorView frame]) - addedHeight)]; -// [accessoryView autorelease]; -// accessoryView = [optionalView retain]; -#elif !defined(SNOW_LEOPARD) && !defined(LEOPARD) - if(view != emptyView) - [[view superview] setTitle:NSLocalizedStringFromTableInBundle(@"PGP:", @"GPGMail", [NSBundle bundleForClass:[self class]], "Title of PGP accessory view") forView:view]; -#endif - // It is not possible to set an iconView at the left of our accessoryView - // because the superview, a TilingView, forces alignement of its subviews. - // We'd need to place our iconView over the TilingView, but in this case we should - // take care of moving it when the textfields grow up! - NSAssert([window toolbar] != nil, @"### GPGMail: expected window to have a toolbar"); - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(toolbarWillAddItem:) name:NSToolbarWillAddItemNotification object:[window toolbar]]; - - if(![window isKeyWindow]) - [self updateMenusAccordingToSelf:NO]; - - // TODO: Save/restore more states, like keys - if([savedStates containsObject:@"signed"]){ - explicitlySetSignature = YES; - signsMessage = YES; -// [self doSetSignsMessage:YES]; - } - else if([savedStates containsObject:@"!signed"]){ - explicitlySetSignature = YES; - signsMessage = NO; - } - else if([savedStates containsObject:@"encrypted"]){ - explicitlySetEncryption = YES; - encryptsMessage = YES; - } - else if([savedStates containsObject:@"!encrypted"]){ - explicitlySetEncryption = YES; - encryptsMessage = NO; - } - else if([savedStates containsObject:@"mime"]){ - explicitlySetOpenPGPStyle = YES; - usesOnlyOpenPGPStyle = YES; - } - else if([savedStates containsObject:@"!mime"]){ - explicitlySetOpenPGPStyle = YES; - usesOnlyOpenPGPStyle = NO; - } -// [self doSetSignsMessage:[[GPGMailBundle sharedInstance] alwaysSignMessages]]; -#if 0 - if([savedStates containsObject:@"encrypted"]) - [self doSetEncryptsMessage:NO]; // FIXME: Will sign too, if defaults ask to sign when encrypting, thus bypassing previous "signed" setting - else - [self doSetEncryptsMessage:![[GPGMailBundle sharedInstance] alwaysEncryptMessages]]; - [self toggleEncryptionForNewMessage]; -#endif - - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textDidEndEditing:) name:NSControlTextDidEndEditingNotification object:nil]; - [self senderAccountDidChange]; - -#if 0 - [self searchKnownPersonsOptions]; - [self refreshPublicKeysMenu]; -#endif - [self evaluateRules]; -} - -- (void) toolbarWillAddItem:(NSNotification *)notif -{ - if([notif object] == [[[self composeAccessoryView] window] toolbar]){ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - SegmentedToolbarItem *anItem = [[notif userInfo] objectForKey:@"item"]; -#elif defined(TIGER) - MailToolbarItem *anItem = [[notif userInfo] objectForKey:@"item"]; -#else - NSToolbarItem *anItem = [[notif userInfo] objectForKey:@"item"]; -#endif - - if([[anItem itemIdentifier] isEqualToString:GPGEncryptMessageToolbarItemIdentifier] || [[anItem itemIdentifier] isEqualToString:GPGSignMessageToolbarItemIdentifier]){ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - [anItem setTarget:self forSegment:0]; -#else - [anItem setTarget:self]; -#endif - [self performSelector:@selector(updateToolbarAndMenuItems) withObject:nil afterDelay:0.0]; // If we don't delay call, then call -[NSToolbar items] will recursively send the toolbarWillAddItem: notification! - } - } -} - -- (void) updateToolbarAndMenuItems -{ -#if 0 -#warning FIXME: Should not modify any encrypt/sign/MIME setting??? - [self doSetEncryptsMessage:[[GPGMailBundle sharedInstance] alwaysEncryptMessages]]; - [self doSetSignsMessage:[[GPGMailBundle sharedInstance] alwaysSignMessages]]; -#else - [self doSetEncryptsMessage:encryptsMessage]; - [self doSetSignsMessage:signsMessage]; -#endif -} - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -- (void) refreshAccessoryView:(NSNotification *)notif -{ - // Sometimes, when To/CC fields are adapted to new height, our view is not refreshed (why?), that's - // why we force refresh each time our superview changes its frame. Seems to work, though too many refreshes are done. - [[self composeAccessoryView] setNeedsDisplay:YES]; -} -#endif - -#ifdef SNOW_LEOPARD_64 -- (void)awakeFromNib { - if(!setupUI) { - if(GPGMailLoggingLevel) - NSLog(@"Not yet ready to setup UI"); - return; - } - - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - - verifyRulesConflicts = YES; - selectedPublicKeys = [[NSMutableArray allocWithZone:[self zone]] init]; - missingPublicKeyEmails = [[NSMutableSet allocWithZone:[self zone]] init]; - selectedPersonalKey = [[mailBundle defaultKey] retain]; - [selectedPersonalPublicKey release]; - selectedPersonalPublicKey = nil; - - [self setupTableColumns]; - [[publicKeysPopDownButton menu] setAutoenablesItems:NO]; - - struct objc_super s = { self, [self superclass] }; - // Call the super implementation to access the super class's accessoryView. - [objc_msgSendSuper(&s, @selector(composeAccessoryView)) setFrame:[[optionalView primaryView] frame]]; - [[[optionalView primaryView] superview] replaceSubview:[optionalView primaryView] with:objc_msgSendSuper(&s, @selector(composeAccessoryView))]; - [optionalViewBackgroundView setBackgroundColor:[NSColor windowBackgroundColor]]; - [optionalViewTitleField setStringValue:NSLocalizedStringFromTableInBundle(@"PGP:", @"GPGMail", [NSBundle bundleForClass:[self class]], "Title of PGP accessory view")]; - [[optionalView optionSwitch] setState:[self displaysButtonsInComposeWindow] ? NSOnState:NSOffState]; - // After this point, the original accessoryView is replaced with the views of our - // Nib file, hence every further call to composeAccessoryView will use our own implementation - // of composeAccessoryView, which will return the one of the views from our NIB. - - [personalKeysPopUpButton setAutoenablesItems:NO]; // Needed! - - [self reloadPersonalKeys]; - [self refreshPersonalKeysMenuAccordingToSelf:YES]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refreshPublicKeysPopDownButton:) name:NSPopUpButtonWillPopUpNotification object:publicKeysPopDownButton]; - // We need to delay the following call, after our composeAccessoryView has been moved to the Compose window - [self performSelector:@selector(finishUISetupWithStates:) withObject:currentStates afterDelay:0.0]; -} -#endif - -- (void) setupUIForMessage:(Message *)message -{ - // At that time, composeAccessoryView, which is going to be loaded, is not/cannot be in message view window - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - NSArray *states = [[[message headers] firstHeaderForKey:@"X-Gpgmail-State"] componentsSeparatedByString:@","]; - // FIXME: Leopard: at that time, headers lost their custom entries - - setupUI = YES; - currentStates = states; - - // Runtime super call - CORRECT ! - struct objc_super s = { self, [self superclass] }; - objc_msgSendSuper(&s, @selector(setupUIForMessage:), message); - -#ifndef SNOW_LEOPARD_64 - verifyRulesConflicts = YES; - selectedPublicKeys = [[NSMutableArray allocWithZone:[self zone]] init]; - missingPublicKeyEmails = [[NSMutableSet allocWithZone:[self zone]] init]; - selectedPersonalKey = [[mailBundle defaultKey] retain]; - [selectedPersonalPublicKey release]; - selectedPersonalPublicKey = nil; -// usesOnlyOpenPGPStyle = [mailBundle usesOnlyOpenPGPStyle]; - - [self setupTableColumns]; -// [self updateWarningImage]; - [[publicKeysPopDownButton menu] setAutoenablesItems:NO]; - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - [[self composeAccessoryView] setFrame:[[optionalView primaryView] frame]]; - [[[optionalView primaryView] superview] replaceSubview:[optionalView primaryView] with:[self composeAccessoryView]]; - [optionalViewBackgroundView setBackgroundColor:[NSColor windowBackgroundColor]]; -/* { - ColorBackgroundView *aView = [[ColorBackgroundView alloc] initWithFrame:[optionalView bounds]]; - - [aView setBackgroundColor:[NSColor windowBackgroundColor]]; - [[[self composeAccessoryView] superview] addSubview:aView positioned:NSWindowBelow relativeTo:nil]; // Let's make sure our whole view is opaque; probably not needed once we're using a real optional view; if we don't do that, there are some display problems (cache?) when superview is resized - [aView release]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refreshAccessoryView:) name:NSViewFrameDidChangeNotification object:[[optionalView primaryView] superview]]; // Needed too - }*/ - [optionalViewTitleField setStringValue:NSLocalizedStringFromTableInBundle(@"PGP:", @"GPGMail", [NSBundle bundleForClass:[self class]], "Title of PGP accessory view")]; - [[optionalView optionSwitch] setState:[self displaysButtonsInComposeWindow] ? NSOnState:NSOffState]; -// accessoryView = [optionalView retain]; - if(![self displaysButtonsInComposeWindow]){ - accessoryView = [emptyView retain]; - } - else - accessoryView = [optionalView retain]; -#else -#warning Check memory leak - if(![self displaysButtonsInComposeWindow]){ - accessoryView = [emptyView retain]; - } - else - [accessoryView retain]; -#endif - [personalKeysPopUpButton setAutoenablesItems:NO]; // Needed! - - [self reloadPersonalKeys]; - [self refreshPersonalKeysMenuAccordingToSelf:YES]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refreshPublicKeysPopDownButton:) name:NSPopUpButtonWillPopUpNotification object:publicKeysPopDownButton]; - // We need to delay the following call, after our composeAccessoryView has been moved to the Compose window - [self performSelector:@selector(finishUISetupWithStates:) withObject:states afterDelay:0.0]; -#endif -} - -- (void) doSetEncryptsMessage:(BOOL)flag -{ - NSEnumerator *anEnum = [[[[[self composeAccessoryView] window] toolbar] items] objectEnumerator]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - SegmentedToolbarItem *anItem; -#elif defined(TIGER) - MailToolbarItem *anItem; -#else - NSToolbarItem *anItem; -#endif - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - BOOL buttonsShowState = [[GPGMailBundle sharedInstance] buttonsShowState]; - - encryptsMessage = flag; - if(!flag){ - usesSymetricEncryption = NO; - [self refreshSymetricEncryption]; -#if 0 - if(signatureTurnedOnBecauseEncrypted){ - signatureTurnedOnBecauseEncrypted = NO; - if(signsMessage && !explicitlySetSignature && !somePeopleWantSigning) - [self doSetSignsMessage:NO]; - } -#endif - } - - while(anItem = [anEnum nextObject]) - if([[anItem itemIdentifier] isEqualToString:GPGEncryptMessageToolbarItemIdentifier]){ - if(buttonsShowState){ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - [anItem setLabel:NSLocalizedStringFromTableInBundle(encryptsMessage ? @"ENCRYPTED_ITEM":@"CLEAR_ITEM", @"GPGMail", aBundle, "") forSegment:0]; - [anItem setPaletteLabel:NSLocalizedStringFromTableInBundle(@"ENCRYPTED_ITEM", @"GPGMail", aBundle, "") forSegment:0]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - [[[anItem subitems] objectAtIndex:0] setImage:[NSImage imageNamed:(encryptsMessage ? @"gpgEncrypted":@"gpgClear")]]; -#else - [anItem setImage:[NSImage imageNamed:(encryptsMessage ? @"gpgEncrypted":@"gpgClear")] forSegment:0]; -#endif - [anItem setToolTip:NSLocalizedStringFromTableInBundle(encryptsMessage ? @"ENCRYPTED_ITEM_TOOLTIP":@"CLEAR_ITEM_TOOLTIP", @"GPGMail", aBundle, "") forSegment:0]; -#else - [anItem setLabel:NSLocalizedStringFromTableInBundle(encryptsMessage ? @"ENCRYPTED_ITEM":@"CLEAR_ITEM", @"GPGMail", aBundle, "")]; - [anItem setPaletteLabel:NSLocalizedStringFromTableInBundle(@"ENCRYPTED_ITEM", @"GPGMail", aBundle, "")]; - [anItem setImage:[NSImage imageNamed:(encryptsMessage ? @"gpgEncrypted":@"gpgClear")]]; - [anItem setToolTip:NSLocalizedStringFromTableInBundle(encryptsMessage ? @"ENCRYPTED_ITEM_TOOLTIP":@"CLEAR_ITEM_TOOLTIP", @"GPGMail", aBundle, "")]; -#endif - } - else{ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - [anItem setLabel:NSLocalizedStringFromTableInBundle(encryptsMessage ? @"MAKE_CLEAR_ITEM":@"MAKE_ENCRYPTED_ITEM", @"GPGMail", aBundle, "") forSegment:0]; - [anItem setPaletteLabel:NSLocalizedStringFromTableInBundle(@"MAKE_ENCRYPTED_ITEM", @"GPGMail", aBundle, "") forSegment:0]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - [[[anItem subitems] objectAtIndex:0] setImage:[NSImage imageNamed:(encryptsMessage ? @"gpgClear":@"gpgEncrypted")]]; -#else - [anItem setImage:[NSImage imageNamed:(encryptsMessage ? @"gpgClear":@"gpgEncrypted")] forSegment:0]; -#endif - [anItem setToolTip:NSLocalizedStringFromTableInBundle(encryptsMessage ? @"MAKE_CLEAR_ITEM_TOOLTIP":@"MAKE_ENCRYPTED_ITEM_TOOLTIP", @"GPGMail", aBundle, "") forSegment:0]; -#else - [anItem setLabel:NSLocalizedStringFromTableInBundle(encryptsMessage ? @"MAKE_CLEAR_ITEM":@"MAKE_ENCRYPTED_ITEM", @"GPGMail", aBundle, "")]; - [anItem setPaletteLabel:NSLocalizedStringFromTableInBundle(@"MAKE_ENCRYPTED_ITEM", @"GPGMail", aBundle, "")]; - [anItem setImage:[NSImage imageNamed:(encryptsMessage ? @"gpgClear":@"gpgEncrypted")]]; - [anItem setToolTip:NSLocalizedStringFromTableInBundle(encryptsMessage ? @"MAKE_CLEAR_ITEM_TOOLTIP":@"MAKE_ENCRYPTED_ITEM_TOOLTIP", @"GPGMail", aBundle, "")]; -#endif - } - } - - [[[GPGMailBundle sharedInstance] encryptsNewMessageMenuItem] setState:(encryptsMessage ? NSOnState:NSOffState)]; - [publicKeysPopDownButton setEnabled:encryptsMessage]; - [encryptionSwitch setState:(encryptsMessage ? NSOnState:NSOffState)]; -// [self updateWarningImage]; // No longer necessary -} - -#ifdef SNOW_LEOPARD_64 -- (NSView *)composeAccessoryView { - return [self displaysButtonsInComposeWindow] ? [optionalView retain] : [emptyView retain]; -} -#endif - -- (void) doSetSignsMessage:(BOOL)flag -{ - NSEnumerator *anEnum = [[[[[self composeAccessoryView] window] toolbar] items] objectEnumerator]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - SegmentedToolbarItem *anItem; -#elif defined(TIGER) - MailToolbarItem *anItem; -#else - NSToolbarItem *anItem; -#endif - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - BOOL buttonsShowState = [[GPGMailBundle sharedInstance] buttonsShowState]; - - signsMessage = flag; - - while(anItem = [anEnum nextObject]) - if([[anItem itemIdentifier] isEqualToString:GPGSignMessageToolbarItemIdentifier]){ - if(buttonsShowState){ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - [anItem setLabel:NSLocalizedStringFromTableInBundle(signsMessage ? @"SIGNED_ITEM":@"UNSIGNED_ITEM", @"GPGMail", aBundle, "") forSegment:0]; - [anItem setPaletteLabel:NSLocalizedStringFromTableInBundle(@"SIGNED_ITEM", @"GPGMail", aBundle, "") forSegment:0]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - [[[anItem subitems] objectAtIndex:0] setImage:[NSImage imageNamed:(signsMessage ? @"gpgSigned":@"gpgUnsigned")]]; -#else - [anItem setImage:[NSImage imageNamed:(signsMessage ? @"gpgSigned":@"gpgUnsigned")] forSegment:0]; -#endif - [anItem setToolTip:NSLocalizedStringFromTableInBundle(signsMessage ? @"SIGNED_ITEM_TOOLTIP":@"UNSIGNED_ITEM_TOOLTIP", @"GPGMail", aBundle, "") forSegment:0]; -#else - [anItem setLabel:NSLocalizedStringFromTableInBundle(signsMessage ? @"SIGNED_ITEM":@"UNSIGNED_ITEM", @"GPGMail", aBundle, "")]; - [anItem setPaletteLabel:NSLocalizedStringFromTableInBundle(@"SIGNED_ITEM", @"GPGMail", aBundle, "")]; - [anItem setImage:[NSImage imageNamed:(signsMessage ? @"gpgSigned":@"gpgUnsigned")]]; - [anItem setToolTip:NSLocalizedStringFromTableInBundle(signsMessage ? @"SIGNED_ITEM_TOOLTIP":@"UNSIGNED_ITEM_TOOLTIP", @"GPGMail", aBundle, "")]; -#endif - } - else{ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - [anItem setLabel:NSLocalizedStringFromTableInBundle(signsMessage ? @"MAKE_UNSIGNED_ITEM":@"MAKE_SIGNED_ITEM", @"GPGMail", aBundle, "") forSegment:0]; - [anItem setPaletteLabel:NSLocalizedStringFromTableInBundle(@"MAKE_SIGNED_ITEM", @"GPGMail", aBundle, "") forSegment:0]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - [[[anItem subitems] objectAtIndex:0] setImage:[NSImage imageNamed:(signsMessage ? @"gpgUnsigned":@"gpgSigned")]]; -#else - [anItem setImage:[NSImage imageNamed:(signsMessage ? @"gpgUnsigned":@"gpgSigned")] forSegment:0]; -#endif - [anItem setToolTip:NSLocalizedStringFromTableInBundle(signsMessage ? @"MAKE_UNSIGNED_ITEM_TOOLTIP":@"MAKE_SIGNED_ITEM_TOOLTIP", @"GPGMail", aBundle, "") forSegment:0]; -#else - [anItem setLabel:NSLocalizedStringFromTableInBundle(signsMessage ? @"MAKE_UNSIGNED_ITEM":@"MAKE_SIGNED_ITEM", @"GPGMail", aBundle, "")]; - [anItem setPaletteLabel:NSLocalizedStringFromTableInBundle(@"MAKE_SIGNED_ITEM", @"GPGMail", aBundle, "")]; - [anItem setImage:[NSImage imageNamed:(signsMessage ? @"gpgUnsigned":@"gpgSigned")]]; - [anItem setToolTip:NSLocalizedStringFromTableInBundle(signsMessage ? @"MAKE_UNSIGNED_ITEM_TOOLTIP":@"MAKE_SIGNED_ITEM_TOOLTIP", @"GPGMail", aBundle, "")]; -#endif - } - } - - [[[GPGMailBundle sharedInstance] signsNewMessageMenuItem] setState:(signsMessage ? NSOnState : NSOffState)]; - [personalKeysPopUpButton setEnabled:signsMessage]; - [signSwitch setState:(signsMessage ? NSOnState : NSOffState)]; -} -/* -- (void) toggleEncryptionForNewMessage -{ - // NO LONGER USED - NSLog(@"%s", __PRETTY_FUNCTION__); - [self doSetEncryptsMessage:!encryptsMessage]; - [self findMatchingPublicKeys]; // FIXME: Do not look for keys when user toggled encryption off? - [self refreshAutomaticChoiceInfo]; - [self refreshPublicKeysMenu]; - if(encryptsMessage && !signsMessage && [[GPGMailBundle sharedInstance] signWhenEncrypting]){ - signatureTurnedOnBecauseEncrypted = YES; - [self doSetSignsMessage:YES]; - } -} -*/ -- (IBAction) gpgToggleEncryptionForNewMessage:(id)sender -{ - // Forwarded by GPGMailBundle when sent by menuItem, or sent by checkbox, or toolbarItem - explicitlySetEncryption = YES; -#if 0 - [self toggleEncryptionForNewMessage]; -#else - encryptsMessage = !encryptsMessage; - [self evaluateRules]; -#endif -} -/* -- (void) toggleSignatureForNewMessage -{ - [self doSetSignsMessage:!signsMessage]; -} -*/ -- (IBAction) gpgToggleSignatureForNewMessage:(id)sender -{ - // Forwarded by GPGMailBundle when sent by menuItem, or sent by checkbox, or toolbarItem - explicitlySetSignature = YES; -#if 0 - [self toggleSignatureForNewMessage]; -#else - signsMessage = !signsMessage; - [self evaluateRules]; -#endif -} - -- (void) gpgSetOptions:(NSDictionary *)options -{ - // Forwarded by GPGMessageEditorPoser via MessageEditor, on reply to a PGP message - // FIXME: not implemented for Leopard! -#if 0 -#warning FIXME: Should not modify any encrypt/sign/MIME setting??? - NSNumber *aNumber; - -// NSLog(@"$$$ Flags derived from replied message: %@", options); - aNumber = [options objectForKey:@"signed"]; - if(aNumber){ - [self doSetSignsMessage:[aNumber boolValue]]; - } - - aNumber = [options objectForKey:@"encrypted"]; - if(aNumber){ - [self doSetEncryptsMessage:[aNumber boolValue]]; // Will sign too, if defaults ask to sign when encrypting - } - - aNumber = [options objectForKey:@"MIME"]; - if(aNumber){ - [self setUsesOnlyOpenPGPStyle:[aNumber boolValue]]; - } -#else - [replyOptions release]; - replyOptions = [options retain]; - [self evaluateRules]; -#endif -} - -- (void) retryDelivery -{ - id target = [self messageEditor]; - SEL selector = NSSelectorFromString(@"send:"); - - if(target && [target respondsToSelector:selector]) - [target performSelector:selector withObject:nil]; -} - -- (void) sheetDidDismiss:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo -{ - if(selectedPersonalKey) - [GPGPassphraseController flushCachedPassphraseForUser:selectedPersonalKey]; - if(returnCode == NSAlertDefaultReturn){ - [self retryDelivery]; - } -} - -- (void) displayException:(NSException *)exception -{ - NSString *aTitle; - - if(encryptsMessage) - aTitle = NSLocalizedStringFromTableInBundle(@"MSG_ENCRYPTION_ALERT_TITLE", @"GPGMail", [NSBundle bundleForClass:[self class]], ""); - else - aTitle = NSLocalizedStringFromTableInBundle(@"MSG_SIGNING_ALERT_TITLE", @"GPGMail", [NSBundle bundleForClass:[self class]], ""); - if([[exception reason] rangeOfString:@" failed: bad passphrase"].length > 0) /* sign+encrypt or signing */ - NSBeginAlertSheet(aTitle, NSLocalizedStringFromTableInBundle(@"TRY_AGAIN", @"GPGMail", [NSBundle bundleForClass:[self class]], ""), NSLocalizedStringFromTableInBundle(@"CANCEL_DELIVERY", @"GPGMail", [NSBundle bundleForClass:[self class]], ""), nil, [[self composeAccessoryView] window], self, NULL, @selector(sheetDidDismiss:returnCode:contextInfo:), NULL, @"%@", [exception reason]); - else - NSBeginAlertSheet(aTitle, nil, nil, nil, [[self composeAccessoryView] window], nil, NULL, NULL, NULL, @"%@", [[GPGMailBundle sharedInstance] descriptionForException:exception]); -} - -- (void) unmatchedAddressesSheetDidDismiss:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo -{ - NSArray *addresses = (NSArray *)contextInfo; - - if(returnCode == NSAlertDefaultReturn) - [[GPGKeyDownload sharedInstance] searchKeysMatchingPatterns:addresses]; - else if(returnCode == NSAlertOtherReturn){ - [self gpgToggleEncryptionForNewMessage:nil]; - [self retryDelivery]; - } - [addresses release]; -} - -- (void) missingKeysAlert:(NSArray *)addresses -{ - NSString *aTitle = NSLocalizedStringFromTableInBundle(@"MISSING_KEYS: DOWNLOAD", @"GPGMail", [NSBundle bundleForClass:[self class]], ""); - NSString *cancelTitle = NSLocalizedStringFromTableInBundle(@"CANCEL_DELIVERY", @"GPGMail", [NSBundle bundleForClass:[self class]], ""); - NSString *okTitle = NSLocalizedStringFromTableInBundle(@"SEARCH_MATCHING_KEYS", @"GPGMail", [NSBundle bundleForClass:[self class]], ""); - NSString *inClearTitle = NSLocalizedStringFromTableInBundle(@"SEND_IN_CLEAR", @"GPGMail", [NSBundle bundleForClass:[self class]], ""); - NSString *aMessage = NSLocalizedStringFromTableInBundle(@"UNMATCHED_ADDRESSES: %@", @"GPGMail", [NSBundle bundleForClass:[self class]], ""); - - NSBeginAlertSheet(aTitle, okTitle, cancelTitle, inClearTitle, [[self composeAccessoryView] window], self, NULL, @selector(unmatchedAddressesSheetDidDismiss:returnCode:contextInfo:), [addresses retain], aMessage, [addresses componentsJoinedByString:@"\n"]); -} - -- (BOOL) messageWillBeSaved:(OutgoingMessage *)message -{ - // Invoked when message is saved in drafts; we have the opportunity to add our own headers - // that we can get back when draft is converted back to message for delivery. - // This way we can save the encryption/signature flags (as well as OpenPGP/MIME, - // and chosen keys, maybe later). - // WARNING Also called when message is delivered! - if(![[[self messageEditor] backEnd] isDeliveringMessage]){ - NSMutableArray *states = [NSMutableArray array]; - - if(explicitlySetEncryption) - [states addObject:(encryptsMessage ? @"encrypted" : @"!encrypted")]; - if(explicitlySetSignature) - [states addObject:(signsMessage ? @"signed" : @"!signed")]; - if(explicitlySetOpenPGPStyle) - [states addObject:(usesOnlyOpenPGPStyle ? @"mime" : @"!mime")]; - if([states count] > 0) - [(MutableMessageHeaders *)[message headers] setHeader:[states componentsJoinedByString:@","] forKey:@"X-Gpgmail-State"]; - else - [(MutableMessageHeaders *)[message headers] removeHeaderForKey:@"X-Gpgmail-State"]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - MutableMessageHeaders *newHeaders = [message headers]; - NSData *bodyData = [[message bodyData] copy]; - newHeaders = [[MutableMessageHeaders alloc] initWithHeaderData:[newHeaders encodedHeadersIncludingFromSpace:NO] encoding:[newHeaders preferredEncoding]]; // Needed, to ensure _data ivar is updated - [message setMutableHeaders:newHeaders]; - - // We need to recreate the whole raw data, headers + body. - NSMutableData *newRawData = [NSMutableData dataWithData:[newHeaders headerData]]; - [newRawData appendData:bodyData]; - [message setRawData:newRawData offsetOfBody:[(NSData *)[newHeaders headerData] length]]; - [newHeaders release]; - [bodyData release]; -#endif - } - - // Runtime super call - CORRECT ! - struct objc_super s = { self, [self superclass] }; - return (BOOL)objc_msgSendSuper(&s, @selector(messageWillBeSaved:), message); -} - -- (BOOL) messageHasAlreadyBeenEncryptedOrSigned:(Message *)message -{ - // We use that in order to avoid re-encrypting/signing a message - // after delivery failed. -//#ifdef TIGER -//#warning FIXME: This will not work when we do not add custom headers! -#if 0 - // Even on Tiger we have the same problem: our header customization has been lost - if([[message headers] hasHeaderForKey:GPGMailHeaderKey] /*|| ([[message headers] hasHeaderForKey:@"content-type"] && [[message headers] headersForKey:@"content-type"])*/) /* array of data */ - return YES; - else - return NO; -#else -#warning TODO: this does not work, because Mail removes all our custom headers! - // Hence, a PGP-MIME message is now invalid! We should maybe cache message before encryption/signing, - // and restore it after delivery failure in case of re-sending. We need to be notified when we - // can clear our cache (or is it in the dealloc?) - - // See MessageEditor? - // - (void)backEndDidAppendMessageToOutbox:(id)fp8 result:(int)fp12; - // - (void)backEnd:(id)fp8 didCancelMessageDeliveryForError:(id)fp12; - -/* if([[message headers] hasHeaderForKey:GPGMailHeaderKey]) - return YES; - else*/ - return NO; -#endif -} - -- (BOOL) hasRulesConflicts -{ - // Warn user in following cases: user can choose to go on or cancel. We'll need an additional flag showing that user acknowledged - // In alert, display info per user: - // user1 always encrypt, never sign, accepts/always MIME - // user2 never encrypt - // Maybe in a tableview with checkboxes, not textual - show only always/never - BOOL logging = (GPGMailLoggingLevel > 0); - - if(somePeopleDontWantEncryption && somePeopleWantEncryption){ - if(logging) - NSLog(@"WARNING: some people want encryption, some refuse"); - return YES; - } - else if(somePeopleDontWantEncryption && !somePeopleWantEncryption && encryptsMessage){ - if(logging) - NSLog(@"WARNING: some people refuse encryption, but you want it"); - return YES; - } - else if(!somePeopleDontWantEncryption && somePeopleWantEncryption && !encryptsMessage){ - if(logging) - NSLog(@"WARNING: some people want encryption, but you don't want it"); - return YES; - } - else if(somePeopleDontWantMIME && somePeopleWantMIME){ - if(logging) - NSLog(@"WARNING: some people want MIME, some refuse"); - return YES; - } - else if(somePeopleDontWantSigning && somePeopleWantSigning){ - if(logging) - NSLog(@"WARNING: some people want signature, some refuse"); - return YES; - } - else{ - // If user explicitly disables signing/encryption but a recipient wants some, - // warn user on delivery that options are not respected; let him accept encryption/MIME settings, - // or change them. But do NOT recompute these options after user manually set them! - // We could also display some icons next to user entry in the public keys popdown to show these options? - if(explicitlySetEncryption){ - if(encryptsMessage && somePeopleDontWantEncryption){ - return YES; - } - else if(!encryptsMessage && somePeopleWantEncryption){ - return YES; - } - } - - if(explicitlySetSignature){ - if(signsMessage && somePeopleDontWantSigning){ - return YES; - } - else if(!signsMessage && somePeopleWantSigning){ - return YES; - } - } - - if(explicitlySetOpenPGPStyle){ - if(usesOnlyOpenPGPStyle && somePeopleDontWantMIME){ - return YES; - } - } - } - - return NO; -} - -- (BOOL) messageWillBeDelivered:(OutgoingMessage *)message -{ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s", __PRETTY_FUNCTION__); - // Runtime super call - CORRECT ! - struct objc_super s = { self, [self superclass] }; - BOOL result = (BOOL)objc_msgSendSuper(&s, @selector(messageWillBeDelivered:), message); - - // Remove draft headers -#warning CHECKME LEOPARD - [(MutableMessageHeaders *)[message headers] removeHeaderForKey:@"X-Gpgmail-State"]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - MutableMessageHeaders *newHeaders = [message headers]; - NSData *bodyData = [[message bodyData] copy]; - newHeaders = [[MutableMessageHeaders alloc] initWithHeaderData:[newHeaders encodedHeadersIncludingFromSpace:NO] encoding:[newHeaders preferredEncoding]]; // Needed, to ensure _data ivar is updated - [message setMutableHeaders:newHeaders]; - - // We need to recreate the whole raw data, headers + body. - NSMutableData *newRawData = [NSMutableData dataWithData:[newHeaders headerData]]; - [newRawData appendData:bodyData]; - [message setRawData:newRawData offsetOfBody:[(NSData *)[newHeaders headerData] length]]; - [newHeaders release]; - [bodyData release]; -#endif - -#if 0 - // Look for keys - [self findMatchingPublicKeys]; - // Look for custom PGP rules in recipients list - [self searchKnownPersonsOptions]; -#else - [self evaluateRules]; -#endif - - // Now, verify rules conflicts - if(verifyRulesConflicts){ - if([self hasRulesConflicts]){ - [self performSelector:@selector(resolveRulesConflicts:) withObject:nil afterDelay:0]; - - return NO; - } - } -// [self findMatchingPublicKeys]; // Again?? - - if(result && ((encryptsMessage || signsMessage) && ![self messageHasAlreadyBeenEncryptedOrSigned:message])){ - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - GPGMailFormat mailFormat; - NSMutableArray *recipients = nil; - BOOL trustsAllKeys = [mailBundle trustsAllKeys]; - -#warning S/MIME & PGP - // Disable S/MIME if still possible, or at least warn user. - // Maybe we should allow double-signature (opt.), as it seems to work, - // but not double-encryption! (except if we can have separate MIME parts) - if(usesOnlyOpenPGPStyle) - mailFormat = GPGOpenPGPMailFormat; - else - // TODO: Support forcing inline - mailFormat = GPGAutomaticMailFormat; - - // First, prepare arguments (recipients, etc.) - if(encryptsMessage){ - // Messages are indexed after having been encrypted or signed, i.e. after sending - if(!usesSymetricEncryption){ - GPGKey *aKey; - NSEnumerator *anEnum; - - recipients = [NSMutableArray array]; - if(!useCustomPublicKeys){ - if([missingPublicKeyEmails count]){ - // Method is invoked in the main thread - // => Impossible to block it by asking something to the user - // We display missing keys, and tell user to assign them manually - // before trying to send message again - [self performSelector:@selector(missingKeysAlert:) withObject:[missingPublicKeyEmails allObjects] afterDelay:0.0]; - - return NO; - } - } - anEnum = [selectedPublicKeys objectEnumerator]; - while(aKey = [anEnum nextObject]){ - if([mailBundle canKeyBeUsedForEncryption:aKey]) - [recipients addObject:aKey]; - } - if([recipients count] == 0){ - // Can happen, in some error situation (proxy died), that we have no selectedPublicKeys! - NSException *anException = [[NSException alloc] initWithName:GPGMailException reason:@"NO_VALID_PUBLIC_KEY" userInfo:nil]; - - [self performSelector:@selector(displayException:) withObject:anException afterDelay:0.0]; - [anException release]; - - return NO; - } - } - - if(signsMessage && ![mailBundle canKeyBeUsedForSigning:selectedPersonalKey]){ - // Can happen, in some error situation (proxy died), that we have no selectedPersonalKey! - NSException *anException = [[NSException alloc] initWithName:GPGMailException reason:@"NO_VALID_PRIVATE_KEY" userInfo:nil]; - - [self performSelector:@selector(displayException:) withObject:anException afterDelay:0.0]; - [anException release]; - - return NO; - } - } - else{ - if(![mailBundle canKeyBeUsedForSigning:selectedPersonalKey]){ - // Can happen, in some error situation (proxy died), that we have no selectedPersonalKey! - NSException *anException = [[NSException alloc] initWithName:GPGMailException reason:@"NO_VALID_PRIVATE_KEY" userInfo:nil]; - - [self performSelector:@selector(displayException:) withObject:anException afterDelay:0.0]; - [anException release]; - - return NO; - } - } - - // Finally, prepare PGP message for delivery - if(encryptsMessage){ - GPGProgressIndicatorController *aController = [GPGProgressIndicatorController sharedController]; - -#warning TODO: Use a sheet (-> no longer shared instance) - [aController startWithTitle:NSLocalizedStringFromTableInBundle(@"ENCRYPTING", @"GPGMail", aBundle, "") delegate:self]; - - @try{ - [message gpgEncryptForRecipients:recipients trustAllKeys:trustsAllKeys signWithKey:(signsMessage ? selectedPersonalKey:nil) passphraseDelegate:self format:mailFormat]; - }@catch(NSException *localException){ - result = NO; - if(![[localException name] isEqualToString:GPGException] || [mailBundle gpgErrorCodeFromError:[[[localException userInfo] objectForKey:GPGErrorKey] intValue]] != /*GPGErrorNoData*/GPGErrorCancelled) - [self performSelector:@selector(displayException:) withObject:localException afterDelay:0.0]; - // Else, user cancelled passphrase entry; do nothing special, return. - } - [aController stop]; - } - else{ - @try{ - [message gpgSignWithKey:selectedPersonalKey passphraseDelegate:self format:mailFormat]; - }@catch(NSException *localException){ - result = NO; - if(![[localException name] isEqualToString:GPGException] || [mailBundle gpgErrorCodeFromError:[[[localException userInfo] objectForKey:GPGErrorKey] unsignedIntValue]] != /*GPGErrorNoData*/GPGErrorCancelled) - [self performSelector:@selector(displayException:) withObject:localException afterDelay:0.0]; - // Else, user cancelled passphrase entry; do nothing special, return. - } - } - - // There is a problem with Compose window: it is not redisplayed correctly - if(!result){ -//#warning VERIFY Is it still the case in 10.3? - [[[self composeAccessoryView] window] makeKeyAndOrderFront:nil]; - // Even this call is not enough: the window shadow/border is not redisplayed - // This is probably due to the alert panel raised by -[GPGHandler displayException:] - } - } - - verifyRulesConflicts = YES; - - return result; -} - -- (void) progressIndicatorDidCancel:(GPGProgressIndicatorController *)controller -{ - // Currently it is not possible to cancel a running operation -// [[GPGHandler defaultHandler] cancelOperation]; -} - -- (IBAction) toggleColumnDisplay:(id)sender -{ - if([sender state] != NSOnState){ - int anIndex = [sender tag]; - NSTableColumn *aColumn = [allTableColumns objectAtIndex:anIndex]; - NSArray *defaultColumnWidths = [[NSUserDefaults standardUserDefaults] arrayForKey:@"GPGTableColumnWidths"]; - - if(defaultColumnWidths != nil) - [aColumn setWidth:[[defaultColumnWidths objectAtIndex:anIndex] floatValue]]; - [publicKeysOutlineView addTableColumn:aColumn]; - [sender setState:NSOnState]; - } - else{ - int anIndex = [sender tag]; - NSTableColumn *aColumn = [allTableColumns objectAtIndex:anIndex]; - - [publicKeysOutlineView removeTableColumn:aColumn]; - [sender setState:NSOffState]; - } -} - -- (IBAction) choosePersonalKey:(id)sender -{ - // Sent by personalKeysPopUpButton - [selectedPersonalKey release]; - [selectedPersonalPublicKey release]; - selectedPersonalPublicKey = nil; - selectedPersonalKey = [[[sender selectedItem] representedObject] retain]; - [self refreshPersonalKeysMenuAccordingToSelf:YES]; -#if 0 - [self refreshPublicKeysMenu]; -#else - [self evaluateRules]; // Necessary? -#endif -} - -- (IBAction) gpgChoosePublicKey:(id)sender -{ - // Do nothing; this is a dummy method, used to enable/disable - // main menu's public keys list items... - // It might be used to display an utility window containing - // extended info on selected key. -} - -- (void) keyChoiceSheetDidDismiss:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo -{ - NSSet *originalPublicKeys = (NSSet *)contextInfo; - - if(returnCode == NSAlertDefaultReturn){ - // User clicked on 'Choose' button, thus automatic choice must be disabled - useCustomPublicKeys = YES; - } - else{ - // User cancelled panel - [selectedPublicKeys setArray:[originalPublicKeys allObjects]]; - useCustomPublicKeys = cachedUseCustomPublicKeys; - } - [originalPublicKeys release]; - if(returnCode == NSAlertDefaultReturn || returnCode == NSAlertAlternateReturn){ - [self evaluateRules]; - } -} - -- (IBAction) gpgChoosePublicKeys:(id)sender -{ - // Sent by popup menu item, or forwarded by ComposeWindowStore - NSSet *originalPublicKeys; - - if(!useCustomPublicKeys) // Do not recompute list when was manually set - [self findMatchingPublicKeys]; - [publicKeysOutlineView reloadData]; - originalPublicKeys = [[NSSet alloc] initWithArray:selectedPublicKeys]; - cachedUseCustomPublicKeys = useCustomPublicKeys; - [[NSApplication sharedApplication] beginSheet:publicKeysPanel modalForWindow:[[self composeAccessoryView] window] modalDelegate:self didEndSelector:@selector(keyChoiceSheetDidDismiss:returnCode:contextInfo:) contextInfo:originalPublicKeys]; -} - -- (IBAction) gpgUseDefaultPublicKeys:(id)sender -{ - useCustomPublicKeys = NO; -#if 0 - [self findMatchingPublicKeys]; -#else - [self evaluateRules]; -#endif - [publicKeysOutlineView reloadData]; -} - -- (IBAction) gpgChoosePersonalKey:(id)sender -{ - // Forwarded by GPGComposeWindowStorePoser - NSEnumerator *anEnum = [[personalKeysPopUpButton itemArray] objectEnumerator]; - NSMenuItem *anItem; - BOOL found = NO; - -#warning FIXME: Should not modify any encrypt/sign/MIME setting??? - [selectedPersonalKey release]; - [selectedPersonalPublicKey release]; - selectedPersonalPublicKey = nil; - selectedPersonalKey = [[sender representedObject] retain]; - while(anItem = [anEnum nextObject]){ - if([[anItem representedObject] isEqual:selectedPersonalKey]){ - found = YES; - [personalKeysPopUpButton selectItem:anItem]; - break; - } - } - NSAssert(found, @"### Unable to find corresponding personal key in popup!"); - [self refreshPersonalKeysMenuAccordingToSelf:YES]; - [self refreshPublicKeysMenu]; -} - -- (IBAction) gpgToggleAutomaticPublicKeysChoice:(id)sender -{ - useCustomPublicKeys = ([sender state] == NSOnState); -#if 0 - [self findMatchingPublicKeys]; - [self refreshAutomaticChoiceInfo]; - [self refreshPublicKeysMenu]; - [self updateWarningImage]; -#else - [self evaluateRules]; -#endif -} - -- (IBAction) gpgToggleSymetricEncryption:(id)sender -{ - usesSymetricEncryption = ([sender state] != NSOnState); - [self refreshSymetricEncryption]; -#if 0 - [self doSetSignsMessage:(usesSymetricEncryption ? NO:signsMessage)]; - if(!usesSymetricEncryption && encryptsMessage && !signsMessage && [[GPGMailBundle sharedInstance] signWhenEncrypting]){ - signatureTurnedOnBecauseEncrypted = YES; - [self doSetSignsMessage:YES]; - } - [signSwitch setEnabled:!usesSymetricEncryption]; - [self refreshPublicKeysMenu]; - [self updateWarningImage]; -#else - [signSwitch setEnabled:!usesSymetricEncryption]; - [self evaluateRules]; -#endif -} - -- (void) setUsesOnlyOpenPGPStyle:(BOOL)flag -{ - usesOnlyOpenPGPStyle = flag; -} - -- (IBAction) gpgToggleUsesOnlyOpenPGPStyle:(id)sender -{ - explicitlySetOpenPGPStyle = YES; - [self setUsesOnlyOpenPGPStyle:([sender state] != NSOnState)]; - [self evaluateRules]; -} - -- (IBAction) endModal:(id)sender -{ - NSEnumerator *anEnum = [[publicKeysOutlineView tableColumns] objectEnumerator]; - NSTableColumn *aColumn; - NSMutableArray *visibleColumnTags = [NSMutableArray array]; - - [[NSUserDefaults standardUserDefaults] setInteger:[allTableColumns indexOfObject:sortingTableColumn] forKey:@"GPGSortingTableColumnTag"]; - [[NSUserDefaults standardUserDefaults] setBool:ascendingOrder forKey:@"GPGAscendingSorting"]; - while(aColumn = [anEnum nextObject]) - [visibleColumnTags addObject:[NSString stringWithFormat:@"%u", [allTableColumns indexOfObject:aColumn]]]; - [[NSUserDefaults standardUserDefaults] setObject:visibleColumnTags forKey:@"GPGVisibleTableColumnTags"]; - - [publicKeysPanel orderOut:sender]; - [[NSApplication sharedApplication] endSheet:publicKeysPanel returnCode:[[sender selectedCell] tag]]; -} - -- (void)outlineView:(NSOutlineView *)outlineView didClickTableColumn:(NSTableColumn *)tableColumn -{ - if(tableColumn != sortingTableColumn){ - [outlineView setIndicatorImage:nil inTableColumn:sortingTableColumn]; - [sortingTableColumn release]; - sortingTableColumn = [tableColumn retain]; - } - else - ascendingOrder = !ascendingOrder; - [outlineView setHighlightedTableColumn:tableColumn]; - [outlineView setIndicatorImage:(ascendingOrder ? ascendingOrderImage:descendingOrderImage) inTableColumn:tableColumn]; - - [self invalidateAllPublicKeys]; - [outlineView reloadData]; -} - -- (void) outlineViewColumnDidResize:(NSNotification *)aNotification -{ - NSEnumerator *anEnum = [allTableColumns objectEnumerator]; - NSTableColumn *aColumn; - NSMutableArray *widths = [NSMutableArray array]; - - while(aColumn = [anEnum nextObject]) - [widths addObject:[NSNumber numberWithFloat:[aColumn width]]]; - [[NSUserDefaults standardUserDefaults] setObject:widths forKey:@"GPGTableColumnWidths"]; -} - -- (id) outlineView:(NSOutlineView *)outlineView child:(int)index ofItem:(id)item -{ - if(item == nil) - return [[self sortedPublicKeys] objectAtIndex:index]; - else - return [[[GPGMailBundle sharedInstance] secondaryUserIDsForKey:item] objectAtIndex:index]; -} - -- (BOOL) outlineView:(NSOutlineView *)outlineView isItemExpandable:(id)item -{ - if(![item respondsToSelector:@selector(userIDs)]) - return NO; - else - return [[[GPGMailBundle sharedInstance] secondaryUserIDsForKey:item] lastObject] != nil; -} - -- (int) outlineView:(NSOutlineView *)outlineView numberOfChildrenOfItem:(id)item -{ - if(!publicKeysOutlineViewHasBeenInitialized) - return 0; - if(item == nil) - return [self cachedPublicKeyCount]; - else{ - if(![item respondsToSelector:@selector(userIDs)]) - return 0; - else - return [[[GPGMailBundle sharedInstance] secondaryUserIDsForKey:item] count]; - } -} - -- (id) outlineView:(NSOutlineView *)outlineView objectValueForTableColumn:(NSTableColumn *)tableColumn byItem:(id)item -{ - if(![item respondsToSelector:@selector(userIDs)]){ - if([[tableColumn identifier] isEqualToString:@"isSelected"]) - return nil; - else{ - // FIXME: Use red color for expired/revoked/etc. - if([[tableColumn identifier] isEqualToString:@"validityDescription"]){ - NSNumber *aValue = [NSNumber numberWithInt:[item validity]]; - NSString *aDesc = [NSString stringWithFormat:@"Validity=%@", aValue]; - - return NSLocalizedStringFromTableInBundle(aDesc, @"GPGMail", [NSBundle bundleForClass:[self class]], ""); - } - else{ - SEL aSelector = NSSelectorFromString([tableColumn identifier]); - - if([item respondsToSelector:aSelector]) - return [item performSelector:aSelector]; - else - return @""; - } - } - } - else{ - if([[tableColumn identifier] isEqualToString:@"isSelected"]) - return [NSNumber numberWithBool:[selectedPublicKeys containsObject:item]]; - else{ - // FIXME: Use red color for expired/revoked/etc. - if([[tableColumn identifier] isEqualToString:@"validityDescription"]){ - NSNumber *aValue = [NSNumber numberWithInt:[item validity]]; - NSString *aDesc = [NSString stringWithFormat:@"Validity=%@", aValue]; - - return NSLocalizedStringFromTableInBundle(aDesc, @"GPGMail", [NSBundle bundleForClass:[self class]], ""); - } - else - return [item performSelector:NSSelectorFromString([tableColumn identifier])]; - } - } -} - -- (void) outlineView:(NSOutlineView *)outlineView setObjectValue:(id)object forTableColumn:(NSTableColumn *)tableColumn byItem:(id)item -{ - if([[tableColumn identifier] isEqualToString:@"isSelected"] && !![item respondsToSelector:@selector(userIDs)]){ - if([object intValue]){ - if(![selectedPublicKeys containsObject:item]) - [selectedPublicKeys addObject:item]; - } - else - [selectedPublicKeys removeObject:item]; - useCustomPublicKeys = YES; - } -} - -- (BOOL) outlineView:(NSOutlineView *)outlineView shouldEditTableColumn:(NSTableColumn *)tableColumn item:(id)item -{ - return !![item respondsToSelector:@selector(userIDs)] && [[tableColumn identifier] isEqualToString:@"isSelected"]; -} - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -// Not necessary on 10.3; on Tiger the switch cell is displayed! -- (void)outlineView:(NSOutlineView *)ov willDisplayCell:(id)cell forTableColumn:(NSTableColumn *)tableColumn item:(id)item -{ - if([[tableColumn identifier] isEqualToString:@"isSelected"]){ - [cell setImagePosition:([item respondsToSelector:@selector(userIDs)] ? NSImageOnly : NSNoImage)]; - } -} -/* -- (NSString *)outlineView:(NSOutlineView *)ov toolTipForCell:(NSCell *)cell rect:(NSRectPointer)rect tableColumn:(NSTableColumn *)tc item:(id)item mouseLocation:(NSPoint)mouseLocation -{ - // Available only since Tiger - if([[tc identifier] isEqualToString:@"description"]) - return [self outlineView:ov objectValueForTableColumn:tc byItem:item]; // TODO: Use multi-line display for readability? - else - return nil; -}*/ -#endif - -- (BOOL) validateToolbarItem:(NSToolbarItem *)theItem -{ - // Forwarded by GPGComposeWindowStorePoser or MessageEditor -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - SEL anAction = ([theItem isKindOfClass:NSClassFromString(@"SegmentedToolbarItem")] ? [(SegmentedToolbarItem *)theItem actionForSegment:0] : [theItem action]); -#elif defined(TIGER) - SEL anAction = [(MailToolbarItem *)theItem actionForSegment:0]; -#else - SEL anAction = [theItem action]; -#endif - - if(anAction == @selector(gpgToggleEncryptionForNewMessage:)) - return YES; - else if(anAction == @selector(gpgToggleSignatureForNewMessage:)) - return !usesSymetricEncryption; - else - return NO; -} - -- (BOOL) validateMenuItem:(NSMenuItem *)menuItem -{ - // Forwarded by GPGComposeWindowStorePoser or MessageEditor - SEL anAction = [menuItem action]; - - if(anAction == @selector(gpgChoosePublicKeys:) || anAction == @selector(gpgChoosePublicKey:) || anAction == @selector(gpgToggleAutomaticPublicKeysChoice:)){ - // If reached too often, we could use a BOOL indicating - // WHEN we need to refresh menu (pubkey list changed, - // window did resign, auto changed) - [self refreshAutomaticChoiceInfo]; - // Note that we may not modify menuItem's menu (list of items), - // because list of items is being enumerated at that time! - // => No (easy) way to do lazy loading of menu items?! - - // Items for non-matching keys are already disabled - return !usesSymetricEncryption && encryptsMessage; - } - else if(anAction == @selector(gpgChoosePersonalKey:)){ - // Let's update selected key - [menuItem setState:([[menuItem representedObject] isEqual:selectedPersonalKey] ? NSOnState:NSOffState)]; - - return (usesSymetricEncryption ? NO:signsMessage); - } - else if(anAction == @selector(toggleColumnDisplay:)) - return YES; - else if(anAction == @selector(gpgToggleEncryptionForNewMessage:)) - return YES; - else if(anAction == @selector(gpgToggleSignatureForNewMessage:)) - return !usesSymetricEncryption; - else if(anAction == @selector(gpgToggleUsesOnlyOpenPGPStyle:)){ - [menuItem setState:(usesOnlyOpenPGPStyle ? NSOnState:NSOffState)]; - - return encryptsMessage || signsMessage; - } - else if(anAction == @selector(gpgToggleSymetricEncryption:)){ - [menuItem setState:(usesSymetricEncryption ? NSOnState:NSOffState)]; - - return encryptsMessage; - } -// else if(anAction == @selector(changeFromHeader:)) -// return [[self messageEditor] validateMenuItem:menuItem]; - else if(anAction == @selector(gpgDownloadMissingKeys:)) - return !usesSymetricEncryption && encryptsMessage; - else - return NO; -} - -- (void) searchKnownPersonsOptions -{ - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - NSString *senderEmail = [self senderEmail]; - - // Reset everything - somePeopleWantEncryption = NO; - somePeopleDontWantEncryption = NO; - somePeopleWantSigning = NO; - somePeopleDontWantSigning = NO; - somePeopleWantMIME = NO; - somePeopleDontWantMIME = NO; - [pgpOptionsPerEmail removeAllObjects]; - - if(![mailBundle usesABEntriesRules]) - return; - - // Look in AB for records matching user names AND having PGP-specific options, - // set by Robert Goldsmith's ABKeyManager bundle - - if([ABPerson typeOfProperty:@"GPGOptions"] == kABDictionaryProperty){ - NSArray *recipients = [self recipients]; - NSEnumerator *anEnum = [recipients objectEnumerator]; - NSString *anEmail; - NSMutableDictionary *optionDict = [[NSMutableDictionary alloc] initWithCapacity:3]; - - // FIXME: We don't support groups! - - // First, compare against cachedRecipients (case-insensitive email) - while((anEmail = [anEnum nextObject])){ // Email addresses are already normalized - // FIXME: We don't evaluate sender's email address. Maybe optional. - if([anEmail isEqualToString:senderEmail]) - continue; - - ABSearchElement *anElement = [ABPerson searchElementForProperty:kABEmailProperty label:nil key:nil value:anEmail comparison:kABEqualCaseInsensitive]; - NSArray *matchingPersons = [[ABAddressBook sharedAddressBook] recordsMatchingSearchElement:anElement]; - NSEnumerator *personEnum = [matchingPersons objectEnumerator]; - ABPerson *aPerson; - - while((aPerson = [personEnum nextObject])){ - NSDictionary *aDict = [aPerson valueForProperty:@"GPGOptions"]; - NSNumber *aBoolNumber; - - [optionDict removeAllObjects]; - aBoolNumber = [aDict objectForKey:@"GPGMailSign"]; - if(aBoolNumber){ - somePeopleWantSigning = somePeopleWantSigning || [aBoolNumber boolValue]; - somePeopleDontWantSigning = somePeopleDontWantSigning || ![aBoolNumber boolValue]; - [optionDict setObject:aBoolNumber forKey:@"sign"]; - } - - aBoolNumber = [aDict objectForKey:@"GPGMailEncrypt"]; - if(aBoolNumber){ - NSArray *someKeys = [mailBundle keysForSearchPatterns:[NSArray arrayWithObject:anEmail] attributeName:@"normalizedEmail" secretKeys:NO]; // Returns only valid (for encryption) keys - - // If there is no (valid or not) PGP key for user, ignore option! - if([someKeys count] > 0){ - somePeopleWantEncryption = somePeopleWantEncryption || [aBoolNumber boolValue]; - somePeopleDontWantEncryption = somePeopleDontWantEncryption || ![aBoolNumber boolValue]; - [optionDict setObject:aBoolNumber forKey:@"encrypt"]; - } - } - - aBoolNumber = [aDict objectForKey:@"GPGMailUseMime"]; - if(aBoolNumber){ -#if 0 - NSArray *someKeys = [mailBundle keysForSearchPatterns:[NSArray arrayWithObject:anEmail] attributeName:@"normalizedEmail" secretKeys:NO]; // Returns only valid (for encryption) keys - - // If there is no (valid or not) PGP key for user, ignore option! - // PROBLEM We shouldn't care about keys, when only signing, but at that - // time we can't know whether message will be encrypted or not. - if([someKeys count] > 0){ - somePeopleWantMIME = somePeopleWantMIME || [aBoolNumber boolValue]; - somePeopleDontWantMIME = somePeopleDontWantMIME || ![aBoolNumber boolValue]; - [optionDict setObject:aBoolNumber forKey:@"mime"]; - } -#else - somePeopleWantMIME = somePeopleWantMIME || [aBoolNumber boolValue]; - somePeopleDontWantMIME = somePeopleDontWantMIME || ![aBoolNumber boolValue]; - [optionDict setObject:aBoolNumber forKey:@"mime"]; -#endif - } - - if([optionDict count]){ - NSDictionary *aDict = [optionDict copy]; - - [pgpOptionsPerEmail setObject:aDict forKey:anEmail]; // FIXME: We don't support having multiple AB records for the same email address - [aDict release]; - } - } - } - [optionDict release]; - } - // Else, user hasn't used that bundle -} - -- (void) textDidEndEditing:(NSNotification *)notification -{ - // It is not possible to use NSTextDidChangeNotification or - // NSControlTextDidChangeNotification because receiver list - // is not updated before textDidEndEditing. - // Side-effect: menu and popdown menu are not updated before - // user moves insertion point out of the To: or CC: (or BCC:) - // textfields. - if([[notification object] window] != [[self composeAccessoryView] window]) - return; - -#if 0 - [NSRunLoop cancelPreviousPerformRequestsWithTarget:self selector:@selector(searchKnownPersonsOptions) object:nil]; - [self performSelector:@selector(searchKnownPersonsOptions) withObject:nil afterDelay:0.0]; - - if((!encryptsMessage && ![[GPGMailBundle sharedInstance] encryptMessagesWhenPossible]) || usesSymetricEncryption) - return; - -/* if(!useCustomPublicKeys){ - [NSRunLoop cancelPreviousPerformRequestsWithTarget:self selector:@selector(findMatchingPublicKeysIfNecessary) object:nil]; - if(!useCustomPublicKeys && encryptsMessage) - [self performSelector:@selector(findMatchingPublicKeysIfNecessary) withObject:nil afterDelay:0.0]; // Delay is necessary, because we need all objects to be notified first! - }*/ - [NSRunLoop cancelPreviousPerformRequestsWithTarget:self selector:@selector(refreshPublicKeysMenu) object:nil]; - [self performSelector:@selector(refreshPublicKeysMenu) withObject:nil afterDelay:0.0]; -#else - [NSRunLoop cancelPreviousPerformRequestsWithTarget:self selector:@selector(evaluateRules) object:nil]; - if(!windowWillClose) - [self performSelector:@selector(evaluateRules) withObject:nil afterDelay:0.0]; -#endif -} - -- (NSString *) context:(GPGContext *)context passphraseForKey:(GPGKey *)key again:(BOOL)again -{ - NSString *passphrase; - - if(again && key != nil) - [GPGPassphraseController flushCachedPassphraseForUser:key]; - - passphrase = [[GPGPassphraseController controller] passphraseForUser:key title:NSLocalizedStringFromTableInBundle(@"MESSAGE_AUTHENTICATION_TITLE", @"GPGMail", [NSBundle bundleForClass:[self class]], "") window:[[self composeAccessoryView] window]]; - - return passphrase; -} - -- (NSString *) senderEmail -{ - return [[[[[self messageEditor] gpgFromPopup] selectedItem] title] gpgNormalizedEmail]; -} - -- (GPGKey *) evaluatedPersonalKey -{ - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - GPGKey *evaluatedPersonalKey = nil; - - if([mailBundle choosesPersonalKeyAccordingToAccount]){ - NSEnumerator *anEnum = [[personalKeysPopUpButton itemArray] objectEnumerator]; - NSMenuItem *anItem; - NSString *fromAddress = [self senderEmail]; - BOOL found = NO; - BOOL filterKeys = [mailBundle filtersOutUnusableKeys]; - - while(!found && (anItem = [anEnum nextObject])){ - // We NEED to check that key is usable too: verifying only userID is not enough. - // Keys not valid for signature have disabled menu items. - // See -reloadPersonalKeys - if([anItem isEnabled]){ - NSEnumerator *uidEnum = [[[anItem representedObject] userIDs] objectEnumerator]; - GPGUserID *aUserID; - - while(!found && (aUserID = [uidEnum nextObject])){ - if(!filterKeys || [mailBundle canUserIDBeUsed:aUserID]){ - if([[aUserID normalizedEmail] isEqualToString:fromAddress]){ - evaluatedPersonalKey = [anItem representedObject]; - found = YES; - } - } - } - } - } - } - else - evaluatedPersonalKey = selectedPersonalKey; - - return evaluatedPersonalKey; -} - -- (void) senderAccountDidChange -{ - GPGKey *evaluatedPersonalKey = [self evaluatedPersonalKey]; - - if(evaluatedPersonalKey){ - NSEnumerator *anEnum = [[personalKeysPopUpButton itemArray] objectEnumerator]; - NSMenuItem *anItem; - BOOL found = NO; - - while(!found && (anItem = [anEnum nextObject])){ - if([anItem representedObject] == evaluatedPersonalKey){ - [personalKeysPopUpButton selectItem:anItem]; - [self choosePersonalKey:personalKeysPopUpButton]; - found = YES; - } - } - } - -#if 0 - if(!found){ - // If there is no matching key for the account, do not sign message - // unless user explicitly asked to sign -#warning FIXME: Should not modify any encrypt/sign/MIME setting - if(!explicitlySetSignature && signsMessage){ - [self doSetSignsMessage:GPGNoSignature]; - explicitlySetSignature = YES; // We do that to avoid our rules to compute signature and override that one - } - } - } -#endif -} - -- (void) changeFromHeader:(id)sender -{ - // Action is forwarded by MessageEditor/HeadersEditor when user changes account - // BUG: if personalKeysPopUpButton is disabled and user changes account, - // account popup is displayed as disabled, though it is enabled! - // The simple _presence_ of our personalKeysPopUpButton is enough to cause the problem: - // disabling everything in code doesn't solve issue - [self senderAccountDidChange]; - [self evaluateRules]; - // FIX: restores enabled appearance to popup - seems it doesn't work in all cases - [self performSelector:@selector(delayedFixPopUp) withObject:nil afterDelay:0]; -} - -- (void) delayedFixPopUp -{ - // FIX: restores enabled appearance to popup - [[[[self messageEditor] gpgFromPopup] selectedItem] setEnabled:YES]; -} - -- (void) keyListWasInvalidated:(NSNotification *)notification -{ - [self invalidateAllPublicKeys]; - [self reloadPersonalKeys]; - if(selectedPersonalKey == nil){ - [self senderAccountDidChange]; // Updates according to account, if option selected - if(selectedPersonalKey == nil){ -#warning FIXME: Ensure that key may be used - selectedPersonalKey = [[[GPGMailBundle sharedInstance] defaultKey] retain]; - [selectedPersonalPublicKey release]; - selectedPersonalPublicKey = nil; - } - } -// [self refreshPublicKeysMenu]; - [self evaluateRules]; - if([[publicKeysOutlineView window] isVisible]) - [publicKeysOutlineView reloadData]; -} - -- (void) preferencesDidChange:(NSNotification *)notification -{ - // Do not change current choices (selected personal key, sign/encrypt) - [self reloadPersonalKeys]; // We reload them, because maybe user changed the way to display them -// [self refreshPublicKeysMenu]; // We reload them, because maybe user changed the way to display them - [self evaluateRules]; -} - - -- (BOOL) hasValidSigningKeys -{ - return [personalKeysPopUpButton lastItem] != nil; -} - -- (IBAction) gpgDownloadMissingKeys:(id)sender -{ - [[GPGKeyDownload sharedInstance] searchKeysMatchingPatterns:[missingPublicKeyEmails allObjects]]; -} - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) -- (MailDocumentEditor *) messageEditor -#else -- (MessageEditor *) messageEditor -#endif -{ - return [[[self composeAccessoryView] window] delegate]; -} - -- (IBAction) endConflictResolution:(id)sender -{ - int returnCode = [[sender selectedCell] tag]; - - if(returnCode == NSOKButton){ - if([conflictEncryptionButton state] == NSMixedState || [conflictSignatureButton state] == NSMixedState || [conflictMIMEButton state] == NSMixedState){ - NSBeep(); - return; - } - } - - [[sender window] orderOut:sender]; - [[NSApplication sharedApplication] endSheet:[sender window] returnCode:returnCode]; -} - -- (void) conflictSheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo -{ - if(returnCode == NSOKButton){ - verifyRulesConflicts = NO; - explicitlySetEncryption = YES; - explicitlySetSignature = YES; - explicitlySetOpenPGPStyle = YES; - [self performSelector:@selector(retryDelivery) withObject:nil afterDelay:0]; - } - else - verifyRulesConflicts = YES; -} - -- (void) resolveRulesConflicts:(id)dummy -{ - [conflictTableView reloadData]; - if(!somePeopleDontWantEncryption && encryptsMessage) - [conflictEncryptionButton setState:NSOnState]; - else if(!somePeopleWantEncryption && !encryptsMessage) - [conflictEncryptionButton setState:NSOffState]; - else - [conflictEncryptionButton setState:NSMixedState]; - if(!somePeopleDontWantSigning && signsMessage) - [conflictSignatureButton setState:NSOnState]; - else if(!somePeopleWantSigning && !signsMessage) - [conflictSignatureButton setState:NSOffState]; - else - [conflictSignatureButton setState:NSMixedState]; - if(!somePeopleDontWantMIME && usesOnlyOpenPGPStyle) - [conflictMIMEButton setState:NSOnState]; - else if(!somePeopleWantMIME && !usesOnlyOpenPGPStyle) - [conflictMIMEButton setState:NSOffState]; - else - [conflictMIMEButton setState:NSMixedState]; - - [NSApp beginSheet:conflictPanel modalForWindow:[[self composeAccessoryView] window] modalDelegate:self didEndSelector:@selector(conflictSheetDidEnd:returnCode:contextInfo:) contextInfo:NULL]; -} - -- (int) numberOfRowsInTableView:(NSTableView *)aTableView -{ - return [[self recipients] count] + 1; // WARNING Can be invoked before in UI -> no recipients -} - -- (id) tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex -{ - // FIXME: No support for symmetric encryption! - // First row is user's choice - // Then recipients' - NSString *anIdentifier = [aTableColumn identifier]; - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - - if(rowIndex == 0){ - if([anIdentifier isEqualToString:@"email"]) - return NSLocalizedStringFromTableInBundle(@"", @"GPGMail", aBundle, @""); - if([anIdentifier isEqualToString:@"encrypt"]){ - if(explicitlySetEncryption) - return NSLocalizedStringFromTableInBundle((encryptsMessage ? @"":@""), @"GPGMail", aBundle, @""); - else - return nil; - } - if([anIdentifier isEqualToString:@"sign"]){ - if(explicitlySetSignature) - return NSLocalizedStringFromTableInBundle((signsMessage ? @"":@""), @"GPGMail", aBundle, @""); - else - return nil; - } - if([anIdentifier isEqualToString:@"mime"]){ - if(explicitlySetOpenPGPStyle) - return NSLocalizedStringFromTableInBundle((usesOnlyOpenPGPStyle ? @"":@""), @"GPGMail", aBundle, @""); - else - return nil; - } - return nil; - } - else{ -// GPGKey *aKey = [selectedPublicKeys objectAtIndex:(rowIndex - 1)]; -// NSEnumerator *uidEnum = [[aKey userIDs] objectEnumerator]; - NSString *anEmail = [[self recipients] objectAtIndex:rowIndex - 1]; - NSDictionary *options = [pgpOptionsPerEmail objectForKey:anEmail]; - id aValue; - - if([anIdentifier isEqualToString:@"email"]) - return anEmail; - else if([anIdentifier isEqualToString:@"encrypt"]){ - aValue = [options objectForKey:@"encrypt"]; - - // FIXME: If there is no (valid or not) PGP key for user, ignore option! - if(aValue) - return NSLocalizedStringFromTableInBundle(([aValue boolValue] ? @"":@""), @"GPGMail", aBundle, @""); - else - return nil; - } - else if([anIdentifier isEqualToString:@"sign"]){ - aValue = [options objectForKey:@"sign"]; - - if(aValue) - return NSLocalizedStringFromTableInBundle(([aValue boolValue] ? @"":@""), @"GPGMail", aBundle, @""); - else - return nil; - } - else if([anIdentifier isEqualToString:@"mime"]){ - aValue = [options objectForKey:@"mime"]; - - // FIXME: If there is no (valid or not) PGP key for user, ignore option! - if(aValue) - return NSLocalizedStringFromTableInBundle(([aValue boolValue] ? @"":@""), @"GPGMail", aBundle, @""); - else - return nil; - } - return nil; - } -} - -- (void) evaluateRules -{ - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - BOOL willEncrypt = NO; - BOOL willSign = NO; - BOOL willUseMIME = NO; - BOOL warnOnMissingKeys = NO; - BOOL logging = (GPGMailLoggingLevel > 0); - - if(logging) - NSLog(@"[DEBUG] evaluateRules:"); - needsWarning = NO; - signatureTurnedOnBecauseEncrypted = NO; - [self searchKnownPersonsOptions]; // This sets the somePeople* and pgpOptionsPerEmail ivars - - if(explicitlySetEncryption){ - willEncrypt = encryptsMessage; // Respect user's choice - if(logging) - NSLog(@"explicitlySetEncryption: willEncrypt = %@", (willEncrypt ? @"YES":@"NO")); - if(willEncrypt && !usesSymetricEncryption && !useCustomPublicKeys){ - [self findMatchingPublicKeys]; - warnOnMissingKeys = YES; - if(logging) - NSLog(@"willEncrypt && !usesSymetricEncryption && !useCustomPublicKeys: warnOnMissingKeys = %@", (warnOnMissingKeys ? @"YES":@"NO")); - } - } - else{ - willEncrypt = [mailBundle alwaysEncryptMessages]; - if(logging) - NSLog(@"!explicitlySetEncryption: willEncrypt = alwaysEncryptMessages = %@", (willEncrypt ? @"YES":@"NO")); - - if(replyOptions){ - NSNumber *aNumber = [replyOptions objectForKey:@"encrypted"]; - - if(aNumber && [aNumber boolValue] && [mailBundle encryptsReplyToEncryptedMessage]){ - willEncrypt = YES; - if(logging) - NSLog(@"replyOptions - was encrypted && encryptsReplyToEncryptedMessage: willEncrypt = %@", (willEncrypt ? @"YES":@"NO")); - } - } - - if(!usesSymetricEncryption && !useCustomPublicKeys) - [self findMatchingPublicKeys]; - - if(willEncrypt){ - // If not all people have valid key, willEncrypt = NO - if(!useCustomPublicKeys){ - if([missingPublicKeyEmails count] != 0){ - if([mailBundle encryptMessagesWhenPossible]) - willEncrypt = NO; - else if(!usesSymetricEncryption) - warnOnMissingKeys = YES; - if(logging){ - NSLog(@"willEncrypt - !useCustomPublicKeys && missingPublicKeyEmails.count > 0 && encryptMessagesWhenPossible: willEncrypt = %@", (willEncrypt ? @"YES":@"NO")); - NSLog(@"willEncrypt - !useCustomPublicKeys && missingPublicKeyEmails.count > 0 && (!encryptMessagesWhenPossible && !usesSymetricEncryption): warnOnMissingKeys = %@", (warnOnMissingKeys ? @"YES":@"NO")); - } - } - } - } - else if([mailBundle encryptMessagesWhenPossible]){ - // Apply encryption only when at least one recipient - if((useCustomPublicKeys || [missingPublicKeyEmails count] == 0) && [[self recipients] count] > 0){ - willEncrypt = YES; - if(!usesSymetricEncryption) - warnOnMissingKeys = YES; - if(logging){ - NSLog(@"!willEncrypt && encryptMessagesWhenPossible - !useCustomPublicKeys && missingPublicKeyEmails.count == 0 && recipients.count > 0: willEncrypt = %@", (willEncrypt ? @"YES":@"NO")); - NSLog(@"!willEncrypt && encryptMessagesWhenPossible - !useCustomPublicKeys && missingPublicKeyEmails.count == 0 && recipients.count > 0 && !usesSymetricEncryption: warnOnMissingKeys = %@", (warnOnMissingKeys ? @"YES":@"NO")); - } - } - } - - if(somePeopleWantEncryption){ - willEncrypt = YES; - if(!usesSymetricEncryption && !useCustomPublicKeys) - warnOnMissingKeys = YES; - if(logging){ - NSLog(@"somePeopleWantEncryption: willEncrypt = %@", (willEncrypt ? @"YES":@"NO")); - NSLog(@"somePeopleWantEncryption && !usesSymetricEncryption && !useCustomPublicKeys: warnOnMissingKeys = %@", (warnOnMissingKeys ? @"YES":@"NO")); - } - } - if(somePeopleDontWantEncryption){ - willEncrypt = NO; - warnOnMissingKeys = NO; - if(logging){ - NSLog(@"somePeopleDontWantEncryption: willEncrypt = %@", (willEncrypt ? @"YES":@"NO")); - NSLog(@"somePeopleDontWantEncryption: warnOnMissingKeys = %@", (warnOnMissingKeys ? @"YES":@"NO")); - } - } - } - - if(warnOnMissingKeys){ - if([missingPublicKeyEmails count] != 0){ - needsWarning = YES; - if(logging){ - NSLog(@"warnOnMissingKeys && missingPublicKeyEmails.count > 0: needsWarning = %@", (needsWarning ? @"YES":@"NO")); - } - } - } - - // Currently we disable signing when using symmetrical encryption - // FIXME: Should we allow signature? - if(usesSymetricEncryption){ - willSign = NO; - if(logging){ - NSLog(@"usesSymetricEncryption: willSign = %@", (willSign ? @"YES":@"NO")); - } - } - else if(explicitlySetSignature){ - willSign = signsMessage; // Respect user's choice - if(logging){ - NSLog(@"explicitlySetSignature: willSign = signsMessage = %@", (willSign ? @"YES":@"NO")); - } - } - else{ - if(willEncrypt && [mailBundle signWhenEncrypting]){ - willSign = YES; - signatureTurnedOnBecauseEncrypted = YES; // FIXME: No longer used - if(logging){ - NSLog(@"willEncrypt && signWhenEncrypting: willSign = %@", (willSign ? @"YES":@"NO")); - } - } - willSign = willSign || [mailBundle alwaysSignMessages]; - if(logging){ - NSLog(@"willSign || alwaysSignMessages: willSign = %@", (willSign ? @"YES":@"NO")); - } - - if(replyOptions){ - NSNumber *aNumber = [replyOptions objectForKey:@"signed"]; - - if(aNumber && [aNumber boolValue] && [mailBundle signsReplyToSignedMessage]){ - willSign = YES; - if(logging){ - NSLog(@"replyOptions: signed && signsReplyToSignedMessage: willSign = %@", (willSign ? @"YES":@"NO")); - } - } - } - - if(somePeopleWantSigning){ - willSign = YES; - if(logging){ - NSLog(@"somePeopleWantSigning: willSign = %@", (willSign ? @"YES":@"NO")); - } - } - if(somePeopleDontWantSigning){ - willSign = NO; - if(logging){ - NSLog(@"somePeopleDontWantSigning: willSign = %@", (willSign ? @"YES":@"NO")); - } - } - - // If there is no matching key for the account, do not sign message - if([mailBundle choosesPersonalKeyAccordingToAccount]){ - GPGKey *evaluatedPersonalKey = [self evaluatedPersonalKey]; - - if(evaluatedPersonalKey == nil){ - willSign = NO; - if(logging) - NSLog(@"choosesPersonalKeyAccordingToAccount && evaluatedPersonalKey == nil: willSign = %@", (willSign ? @"YES":@"NO")); - if(!explicitlySetEncryption){ - willEncrypt = NO; - if(logging) - NSLog(@"choosesPersonalKeyAccordingToAccount && evaluatedPersonalKey == nil && !explicitlySetEncryption: willEncrypt = %@", (willEncrypt ? @"YES":@"NO")); - } - } - } - } - - if(explicitlySetOpenPGPStyle){ - willUseMIME = usesOnlyOpenPGPStyle; // Respect user's choice - if(logging){ - NSLog(@"explicitlySetOpenPGPStyle: willUseMIME = usesOnlyOpenPGPStyle = %@", (willUseMIME ? @"YES":@"NO")); - } - } - else{ - willUseMIME = [mailBundle usesOnlyOpenPGPStyle]; - if(logging){ - NSLog(@"!explicitlySetOpenPGPStyle: willUseMIME = usesOnlyOpenPGPStyle = %@", (willUseMIME ? @"YES":@"NO")); - } - - if(replyOptions){ - // TODO: We don't use that information for the moment - } - - if(somePeopleWantMIME){ - willUseMIME = YES; - if(logging){ - NSLog(@"somePeopleWantMIME: willUseMIME = %@", (willUseMIME ? @"YES":@"NO")); - } - } - if(somePeopleDontWantMIME){ - willUseMIME = NO; - if(logging){ - NSLog(@"somePeopleDontWantMIME: willUseMIME = %@", (willUseMIME ? @"YES":@"NO")); - } - } - } - - if(logging){ - NSLog(@"RESULTS: willEncrypt = %@, willSign = %@, willUseMIME = %@", (willEncrypt ? @"YES":@"NO"), (willSign ? @"YES":@"NO"), (willUseMIME ? @"YES":@"NO")); - } - [self doSetEncryptsMessage:willEncrypt]; - [self doSetSignsMessage:willSign]; - [self setUsesOnlyOpenPGPStyle:willUseMIME]; - [self refreshAutomaticChoiceInfo]; - [self refreshPublicKeysMenu]; - [self updateWarningImage]; // Warning only when encrypting and missing keys -} - -@end diff --git a/GPGMail/Source/GPGMailPatching.h b/GPGMail/Source/GPGMailPatching.h deleted file mode 100644 index 32ff3f8e..00000000 --- a/GPGMail/Source/GPGMailPatching.h +++ /dev/null @@ -1,59 +0,0 @@ -// -// GPGMailPatching.h -// GPGMail -// -// Created by Dave Lopper on Sat Sep 20 2004. -// - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import -#import - - -IMP GPGMail_ReplaceImpOfClassSelectorOfClassWithImpOfClassSelectorOfClass(SEL aSelector, Class aClass, SEL newSelector, Class newClass); -IMP GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(SEL aSelector, Class aClass, SEL newSelector, Class newClass); - -@interface NSObject(GPGMailPatching) -- (void) gpgSetClass:(Class)class; -@end - -static NSMutableDictionary *originalMethodsMap; -static IMP *originalMethods = NULL; -static int originalMethodsIndex = 0; -static int methodsAllocatedCount = 0; - -@interface GPGMailSwizzler : NSObject - -+ (IMP)originalMethodForName:(NSString *)aName; -+ (void)swizzleMethod:(SEL)aSelector fromClass:(Class)aClass withMethod:(SEL)bSelector ofClass:(Class)bClass; -+ (void)addMethod:(SEL)aSelector fromClass:(Class)aClass toClass:(Class)bClass; -+ (void)addMethodsFromClass:(Class)aClass toClass:(Class)bClass; -+ (void)extendClass:(Class)aClass withClass:(Class)bClass; -+ (void)swizzleClassMethod:(SEL)aSelector fromClass:(Class)aClass withMethod:(SEL)bSelector ofClass:(Class)bClass; -@end diff --git a/GPGMail/Source/GPGMailPatching.m b/GPGMail/Source/GPGMailPatching.m deleted file mode 100644 index 26dea9bc..00000000 --- a/GPGMail/Source/GPGMailPatching.m +++ /dev/null @@ -1,293 +0,0 @@ -// -// GPGMailPatching.m -// GPGMail -// -// Created by Dave Lopper on Sat Sep 20 2004. -// - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "GPGMailPatching.h" - - -IMP GPGMail_ReplaceImpOfClassSelectorOfClassWithImpOfClassSelectorOfClass(SEL aSelector, Class aClass, SEL newSelector, Class newClass) -{ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - Method aMethod, newMethod; - IMP anIMP, newIMP; - - aMethod = class_getClassMethod(aClass, aSelector); - if(aMethod == NULL) - return NULL; - anIMP = method_getImplementation(aMethod); - - newMethod = class_getClassMethod(newClass, newSelector); - if(newMethod == NULL) - return NULL; - newIMP = method_getImplementation(newMethod); - - method_setImplementation(aMethod, newIMP); - NSCAssert(method_getImplementation(aMethod) == newIMP, @"Replacement failed!"); - - return anIMP; -#else - Method aMethod, newMethod; - IMP anIMP, newIMP; - - aMethod = class_getClassMethod(aClass, aSelector); - if(aMethod == NULL) - return NULL; - anIMP = aMethod->method_imp; - - newMethod = class_getClassMethod(newClass, newSelector); - if(newMethod == NULL) - return NULL; - newIMP = newMethod->method_imp; - - aMethod->method_imp = newIMP; - return anIMP; -#endif -} - -IMP GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(SEL aSelector, Class aClass, SEL newSelector, Class newClass) -{ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - Method aMethod, newMethod; - IMP anIMP, newIMP; - - aMethod = class_getInstanceMethod(aClass, aSelector); - if(aMethod == NULL) - return NULL; - anIMP = method_getImplementation(aMethod); - - newMethod = class_getInstanceMethod(newClass, newSelector); - if(newMethod == NULL) - return NULL; - newIMP = method_getImplementation(newMethod); - - method_setImplementation(aMethod, newIMP); - NSCAssert(method_getImplementation(aMethod) == newIMP, @"Replacement failed!"); - - return anIMP; -#else - Method aMethod, newMethod; - IMP anIMP, newIMP; - - aMethod = class_getInstanceMethod(aClass, aSelector); - if(aMethod == NULL) - return NULL; - anIMP = aMethod->method_imp; - - newMethod = class_getInstanceMethod(newClass, newSelector); - if(newMethod == NULL) - return NULL; - newIMP = newMethod->method_imp; - - aMethod->method_imp = newIMP; - return anIMP; -#endif -} - -#define NUM_OF_METHODS 2 - -@implementation GPGMailSwizzler - -+ (NSMutableDictionary *)originalMethodsMap { - if(originalMethodsMap == NULL) { - originalMethodsMap = [NSMutableDictionary dictionaryWithCapacity:20]; - } - return [originalMethodsMap retain]; -} - -+ (IMP)originalMethodForName:(NSString *)aName { - int idx = [(NSNumber *)[[self originalMethodsMap] objectForKey:aName] intValue]; - - return (IMP)originalMethods[idx]; -} - -+ (void)addMethod:(SEL)aSelector fromClass:(Class)aClass toClass:(Class)bClass { - IMP anIMP; - Method aMethod; - - aMethod = class_getInstanceMethod(aClass, aSelector); - if(aMethod == NULL) - return; - anIMP = method_getImplementation(aMethod); - - if(GPGMailLoggingLevel) - NSLog(@"Adding %@ from %@ to %@", NSStringFromSelector(aSelector), NSStringFromClass(aClass), NSStringFromClass(bClass)); - - class_addMethod(bClass, aSelector, anIMP, method_getTypeEncoding(aMethod)); -} - -+ (void)swizzleMethod:(SEL)aSelector fromClass:(Class)aClass withMethod:(SEL)bSelector ofClass:(Class)bClass { - Method origMethod, newMethod; - IMP origIMP, newIMP; - - origMethod = class_getInstanceMethod(aClass, aSelector); - if(origMethod == NULL) - return; - origIMP = method_getImplementation(origMethod); - - newMethod = class_getInstanceMethod(bClass, bSelector); - if(newMethod == NULL) - return; - newIMP = method_getImplementation(newMethod); - - if(GPGMailLoggingLevel) - NSLog(@"Replace %@ from %@ with %@ from %@", NSStringFromSelector(aSelector), - NSStringFromClass(aClass), - NSStringFromSelector(bSelector), - NSStringFromClass(bClass)); - - method_setImplementation(origMethod, newIMP); - if(methodsAllocatedCount == 0) { - originalMethods = (IMP *)realloc(originalMethods, (methodsAllocatedCount + NUM_OF_METHODS) * sizeof(IMP)); - methodsAllocatedCount = methodsAllocatedCount + NUM_OF_METHODS; - if(originalMethods == NULL) { - NSLog(@"Failed to allocate!!!"); - } - } - if(originalMethodsIndex + 1 > methodsAllocatedCount) { - methodsAllocatedCount += methodsAllocatedCount + NUM_OF_METHODS; - originalMethods = (IMP *)realloc(originalMethods, methodsAllocatedCount * sizeof(IMP)); - } - NSString *aKey = [NSString stringWithFormat:@"%@.%@", NSStringFromClass(aClass), NSStringFromSelector(aSelector)]; - [[self originalMethodsMap] setObject:[NSNumber numberWithInt:originalMethodsIndex] forKey:aKey]; - originalMethods[originalMethodsIndex++] = origIMP; - - NSCAssert(method_getImplementation(origMethod) == newIMP, @"Replacement failed!"); -} - -+ (void)swizzleClassMethod:(SEL)aSelector fromClass:(Class)aClass withMethod:(SEL)bSelector ofClass:(Class)bClass { - Method origMethod, newMethod; - IMP origIMP, newIMP; - - origMethod = class_getClassMethod(aClass, aSelector); - if(origMethod == NULL) - return; - origIMP = method_getImplementation(origMethod); - - newMethod = class_getClassMethod(bClass, bSelector); - if(newMethod == NULL) - return; - newIMP = method_getImplementation(newMethod); - - if(GPGMailLoggingLevel) - NSLog(@"Replace %@ from %@ with %@ from %@", NSStringFromSelector(aSelector), - NSStringFromClass(aClass), - NSStringFromSelector(bSelector), - NSStringFromClass(bClass)); - - method_setImplementation(origMethod, newIMP); - if(methodsAllocatedCount == 0) { - originalMethods = (IMP *)realloc(originalMethods, (methodsAllocatedCount + NUM_OF_METHODS) * sizeof(IMP)); - methodsAllocatedCount = methodsAllocatedCount + NUM_OF_METHODS; - if(originalMethods == NULL) { - NSLog(@"Failed to allocate!!!"); - } - } - if(originalMethodsIndex + 1 > methodsAllocatedCount) { - methodsAllocatedCount += methodsAllocatedCount + NUM_OF_METHODS; - originalMethods = (IMP *)realloc(originalMethods, methodsAllocatedCount * sizeof(IMP)); - } - NSString *aKey = [NSString stringWithFormat:@"%@.%@", NSStringFromClass(aClass), NSStringFromSelector(aSelector)]; - [[self originalMethodsMap] setObject:[NSNumber numberWithInt:originalMethodsIndex] forKey:aKey]; - originalMethods[originalMethodsIndex++] = origIMP; - - NSCAssert(method_getImplementation(origMethod) == newIMP, @"Replacement failed!"); -} - - -+ (void)addMethodsFromClass:(Class)aClass toClass:(Class)bClass { - unsigned int methodCount; - unsigned int i; - if(GPGMailLoggingLevel) - NSLog(@"Original method: %@", NSStringFromClass(aClass)); - if(aClass == NULL) { - if(GPGMailLoggingLevel) - NSLog(@"Class can't be null!"); - return; - } - Method * classMethods = class_copyMethodList(aClass, &methodCount); - - if(GPGMailLoggingLevel) - NSLog(@"Found %d methods", methodCount); - for(i = 0; i < methodCount; i++) { - SEL selector = method_getName((Method)classMethods[i]); - if(GPGMailLoggingLevel) - NSLog(@"Adding method %@ to %@", NSStringFromSelector(selector), NSStringFromClass(bClass)); - [GPGMailSwizzler addMethod:selector fromClass:aClass toClass:bClass]; - } - free(classMethods); -} - -+ (void)addIVarsFromClass:(Class)aClass toClass:(Class)bClass { - unsigned int iVarCount; - unsigned int i; - if(aClass == NULL || bClass == NULL) { - NSLog(@"Class can't be null!"); - return; - } - Ivar * classIVars = class_copyIvarList(aClass, &iVarCount); - - NSLog(@"Found %d ivars", iVarCount); - for(i = 0; i < iVarCount; i++) { - Ivar current = classIVars[i]; - NSLog(@"Adding iVar %s", ivar_getName(current)); - NSUInteger sizep = 0, alignp = 0; - NSGetSizeAndAlignment(ivar_getTypeEncoding(current), &sizep, &alignp); - class_addIvar(bClass, ivar_getName(current), sizep, alignp, ivar_getTypeEncoding(current)); - } - - free(classIVars); - - NSLog(@"Added methods!"); - -} - -+ (void)extendClass:(Class)aClass withClass:(Class)bClass { - if(GPGMailLoggingLevel) - NSLog(@"Extend class %@ with members and methods of class %@", NSStringFromClass(aClass), NSStringFromClass(bClass)); - - [self addMethodsFromClass:bClass toClass:aClass]; - [self addIVarsFromClass:bClass toClass:aClass]; -} - -@end - - -@implementation NSObject(GPGMailPatching) - -- (void) gpgSetClass:(Class)class -{ - isa = class; -} - -@end - diff --git a/GPGMail/Source/GPGMailPreferences.h b/GPGMail/Source/GPGMailPreferences.h deleted file mode 100644 index 36e8804d..00000000 --- a/GPGMail/Source/GPGMailPreferences.h +++ /dev/null @@ -1,118 +0,0 @@ -/* GPGMailPreferences.h created by dave on Thu 29-Jun-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - -#import - - -@interface GPGMailPreferences : NSPreferencesModule -{ - IBOutlet NSPopUpButton *personalKeysPopUpButton; - IBOutlet NSButton *choosesPersonalKeyAccordingToAccountSwitchButton; - IBOutlet NSMatrix *passphraseStrategyMatrix; - IBOutlet NSFormCell *passphraseTimeoutFormCell; - IBOutlet NSButton *showsPassphraseSwitchButton; - - IBOutlet NSButton *useSmartRulesSwitchButton; - IBOutlet NSButton *alwaysSignSwitchButton; - IBOutlet NSButton *signReplyToSignedMessageSwitchButton; - IBOutlet NSButton *signWhenEncryptingSwitchButton; - IBOutlet NSButton *alwaysEncryptSwitchButton; - IBOutlet NSButton *encryptReplyToEncryptedMessageSwitchButton; - IBOutlet NSButton *encryptWhenAllKeysAvailableSwitchButton; - IBOutlet NSButton *encryptToSelfSwitchButton; - IBOutlet NSButton *trustAllKeysSwitchButton; - IBOutlet NSButton *filtersKeysSwitchButton; - IBOutlet NSButton *openPGPMIMESwitchButton; - IBOutlet NSButton *useBCCRecipientsSwitchButton; - IBOutlet NSButton *buttonsShowStateSwitchButton; - IBOutlet NSButton *displayButtonInComposeWindowSwitchButton; - IBOutlet NSButton *separateSignAndEncryptOperationsSwitchButton; - - IBOutlet NSButton *automaticallyAuthenticateMessagesSwitchButton; - IBOutlet NSButton *authenticateUnreadMessagesSwitchButton; - IBOutlet NSButton *decryptUnreadMessagesSwitchButton; - IBOutlet NSButton *automaticallyDecryptMessagesSwitchButton; - IBOutlet NSButton *extendedInfoSwitchButton; - - NSMutableDictionary *tableColumnPerIdentifier; - IBOutlet NSTableView *keyIdentifiersTableView; - IBOutlet NSButton *showUserIDsSwitchButton; - IBOutlet NSPopUpButton *keyIdentifiersPopUpButton; - IBOutlet NSFormCell *lineWrappingFormCell; - IBOutlet NSButton *refreshKeysOnVolumeChangeSwitchButton; - IBOutlet NSButton *disableSMIMESwitchButton; - - IBOutlet NSTextField *versionTextField; - IBOutlet NSTextField *contactTextField; - IBOutlet NSTextField *webSiteTextField; - - BOOL initializingPrefs; -} - -- (IBAction) changeDefaultKey:(id)sender; -- (IBAction) toggleAutomaticPersonalKeyChoice:(id)sender; -- (IBAction) changePassphraseStrategy:(id)sender; -- (IBAction) changePassphraseTimeout:(id)sender; -- (IBAction) flushCachedPassphrases:(id)sender; -- (IBAction) toggleShowPassphrase:(id)sender; -- (IBAction) refreshKeys:(id)sender; - -- (IBAction) toggleDisplayAccessoryView:(id)sender; -- (IBAction) toggleEncryptToSelf:(id)sender; -- (IBAction) toggleAlwaysSignMessages:(id)sender; -- (IBAction) toggleAlwaysEncryptMessages:(id)sender; -- (IBAction) toggleBCCRecipientsUse:(id)sender; -- (IBAction) toggleTrustAllKeys:(id)sender; -- (IBAction) toggleOpenPGPMIME:(id)sender; -- (IBAction) toggleSignWhenEncrypting:(id)sender; -- (IBAction) toggleButtonsBehavior:(id)sender; -- (IBAction) toggleFilterKeys:(id)sender; -- (IBAction) toggleSmartRules:(id)sender; -- (IBAction) toggleSignedReplyToSignedMessage:(id)sender; -- (IBAction) toggleEncryptedReplyToEncryptedMessage:(id)sender; -- (IBAction) toggleEncryptWhenPossible:(id)sender; -- (IBAction) toggleSeparatePGPOperations:(id)sender; - -- (IBAction) toggleAuthenticatesMessagesAutomatically:(id)sender; -- (IBAction) toggleAuthenticateUnreadMessagesAutomatically:(id)sender; -- (IBAction) toggleDecryptsMessagesAutomatically:(id)sender; -- (IBAction) toggleDecryptsUnreadMessagesAutomatically:(id)sender; -- (IBAction) toggleExtendedInformation:(id)sender; - -- (IBAction) toggleShowUserIDs:(id)sender; -- (IBAction) toggleShowKeyInformation:(id)sender; -- (IBAction) changeLineWrapping:(id)sender; -- (IBAction) toggleKeyRefresh:(id)sender; -- (IBAction) toggleSMIME:(id)sender; - -- (IBAction) exportGPGMailConfiguration:(id)sender; - -@end diff --git a/GPGMail/Source/GPGMailPreferences.m b/GPGMail/Source/GPGMailPreferences.m deleted file mode 100644 index 95c8bf7d..00000000 --- a/GPGMail/Source/GPGMailPreferences.m +++ /dev/null @@ -1,452 +0,0 @@ -/* GPGMailPreferences.m created by dave on Thu 29-Jun-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import -#import "GPGMailPreferences.h" -#import "GPGMailBundle.h" - -#import "GPG.subproj/GPGPassphraseController.h" - -@implementation GPGMailPreferences - -- (SUUpdater *)updater { - return [SUUpdater updaterForBundle:[NSBundle bundleWithIdentifier:@"ch.sente.gpgmail"]]; -} - - -- (void) refreshKeyIdentifiersDisplay -{ - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - NSEnumerator *anEnum; // = [[mailBundle allDisplayedKeyIdentifiers] objectEnumerator]; - NSString *anIdentifier; - NSEnumerator *tableColumnEnum = [[NSArray arrayWithArray:[keyIdentifiersTableView tableColumns]] objectEnumerator]; - NSTableColumn *aColumn; - - while(aColumn = [tableColumnEnum nextObject]) - [keyIdentifiersTableView removeTableColumn:aColumn]; - - anEnum = [[mailBundle displayedKeyIdentifiers] objectEnumerator]; - while(anIdentifier = [anEnum nextObject]) - [keyIdentifiersTableView addTableColumn:[tableColumnPerIdentifier objectForKey:anIdentifier]]; - [keyIdentifiersTableView sizeToFit]; // No effect... - [mailBundle refreshKeyIdentifiersDisplayInMenu:[keyIdentifiersPopUpButton menu]]; -} - -- (void) refreshPersonalKeys -{ - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - NSEnumerator *keyEnum = [[mailBundle personalKeys] objectEnumerator]; - GPGKey *aKey; - NSString *defaultKeyFingerprint = [[mailBundle defaultKey] fingerprint]; - BOOL displaysAllUserIDs = [mailBundle displaysAllUserIDs]; - - [personalKeysPopUpButton removeAllItems]; - while(aKey = [keyEnum nextObject]){ - NSMenuItem *anItem; - - [personalKeysPopUpButton addItemWithTitle:[mailBundle menuItemTitleForKey:aKey]]; - anItem = [personalKeysPopUpButton lastItem]; - [anItem setRepresentedObject:aKey]; - if(defaultKeyFingerprint && [[aKey fingerprint] isEqualToString:defaultKeyFingerprint]) - [personalKeysPopUpButton selectItem:anItem]; - if(displaysAllUserIDs){ - NSEnumerator *userIDEnum = [[mailBundle secondaryUserIDsForKey:aKey] objectEnumerator]; - GPGUserID *aUserID; - - while(aUserID = [userIDEnum nextObject]){ - [personalKeysPopUpButton addItemWithTitle:[mailBundle menuItemTitleForUserID:aUserID indent:1]]; - [[personalKeysPopUpButton lastItem] setEnabled:NO]; - } - } - } -} - -- (NSImage *) imageForPreferenceNamed:(NSString *)aName -{ - return [NSImage imageNamed:@"GPGMailPreferences"]; -} - -- (IBAction) toggleAlwaysSignMessages:(id)sender -{ - [[GPGMailBundle sharedInstance] setAlwaysSignMessages:([sender state] == NSOnState)]; -} - -- (IBAction) toggleAlwaysEncryptMessages:(id)sender -{ - [[GPGMailBundle sharedInstance] setAlwaysEncryptMessages:([sender state] == NSOnState)]; -} - -- (IBAction) toggleBCCRecipientsUse:(id)sender -{ - [[GPGMailBundle sharedInstance] setUsesBCCRecipients:([sender state] == NSOnState)]; -} - -- (IBAction) toggleTrustAllKeys:(id)sender -{ - [[GPGMailBundle sharedInstance] setTrustsAllKeys:([sender state] == NSOnState)]; -} - -- (IBAction) toggleOpenPGPMIME:(id)sender -{ - [[GPGMailBundle sharedInstance] setUsesOnlyOpenPGPStyle:([sender state] == NSOnState)]; -} - -- (IBAction) toggleAuthenticatesMessagesAutomatically:(id)sender -{ - BOOL flag = ([sender state] == NSOnState); - - [[GPGMailBundle sharedInstance] setAuthenticatesMessagesAutomatically:flag]; - [authenticateUnreadMessagesSwitchButton setEnabled:flag]; -} - -- (IBAction) toggleExtendedInformation:(id)sender -{ - [[GPGMailBundle sharedInstance] setAutomaticallyShowsAllInfo:([sender state] == NSOnState)]; -} - -- (IBAction) toggleDecryptsMessagesAutomatically:(id)sender -{ - BOOL flag = ([sender state] == NSOnState); - - [[GPGMailBundle sharedInstance] setDecryptsMessagesAutomatically:flag]; - [decryptUnreadMessagesSwitchButton setEnabled:flag]; -} - -- (IBAction) changeDefaultKey:(id)sender -{ - [[GPGMailBundle sharedInstance] setDefaultKey:[[personalKeysPopUpButton selectedItem] representedObject]]; -} - -- (IBAction) toggleAutomaticPersonalKeyChoice:(id)sender -{ - [[GPGMailBundle sharedInstance] setChoosesPersonalKeyAccordingToAccount:([sender state] == NSOnState)]; -} - -- (IBAction) changePassphraseStrategy:(id)sender -{ - switch([sender selectedRow]){ - case 0: - [[GPGMailBundle sharedInstance] setUsesKeychain:YES]; - [[GPGMailBundle sharedInstance] setRemembersPassphrasesDuringSession:NO]; - [passphraseTimeoutFormCell setEnabled:NO]; - break; - case 1: - [[GPGMailBundle sharedInstance] setUsesKeychain:NO]; - [[GPGMailBundle sharedInstance] setRemembersPassphrasesDuringSession:NO]; - [passphraseTimeoutFormCell setEnabled:NO]; - break; - case 2: - [[GPGMailBundle sharedInstance] setUsesKeychain:NO]; - [[GPGMailBundle sharedInstance] setRemembersPassphrasesDuringSession:YES]; - [passphraseTimeoutFormCell setEnabled:YES]; - } -} - -- (IBAction) changePassphraseTimeout:(id)sender -{ - [[GPGMailBundle sharedInstance] setPassphraseFlushTimeout:[passphraseTimeoutFormCell floatValue]]; -} - -- (IBAction) toggleEncryptToSelf:(id)sender -{ - [[GPGMailBundle sharedInstance] setEncryptsToSelf:([sender state] == NSOnState)]; -} - -- (IBAction) toggleDecryptsUnreadMessagesAutomatically:(id)sender -{ - [[GPGMailBundle sharedInstance] setDecryptsOnlyUnreadMessagesAutomatically:([sender state] == NSOnState)]; -} - -- (IBAction) toggleAuthenticateUnreadMessagesAutomatically:(id)sender -{ - [[GPGMailBundle sharedInstance] setAuthenticatesOnlyUnreadMessagesAutomatically:([sender state] == NSOnState)]; -} - -- (IBAction) toggleDisplayAccessoryView:(id)sender -{ - [[GPGMailBundle sharedInstance] setDisplaysButtonsInComposeWindow:([sender state] == NSOnState)]; -} - -- (IBAction) toggleButtonsBehavior:(id)sender -{ - [[GPGMailBundle sharedInstance] setButtonsShowState:([sender state] == NSOnState)]; -} - -- (IBAction) toggleSignWhenEncrypting:(id)sender -{ - [[GPGMailBundle sharedInstance] setSignWhenEncrypting:([sender state] == NSOnState)]; -} - -- (IBAction) toggleShowUserIDs:(id)sender -{ - [[GPGMailBundle sharedInstance] setDisplaysAllUserIDs:([sender state] == NSOnState)]; -} - -- (IBAction) toggleShowKeyInformation:(id)sender -{ - [[GPGMailBundle sharedInstance] gpgToggleShowKeyInformation:sender]; -} - -- (IBAction) toggleFilterKeys:(id)sender -{ - [[GPGMailBundle sharedInstance] setFiltersOutUnusableKeys:([sender state] == NSOnState)]; -} - -- (IBAction) toggleShowPassphrase:(id)sender -{ - [[GPGMailBundle sharedInstance] setShowsPassphrase:([sender state] == NSOnState)]; -} - -- (IBAction) changeLineWrapping:(id)sender -{ - [[GPGMailBundle sharedInstance] setLineWrappingLength:[lineWrappingFormCell intValue]]; -} - -- (IBAction) toggleSmartRules:(id)sender -{ - [[GPGMailBundle sharedInstance] setUsesABEntriesRules:([sender state] == NSOnState)]; -} - -- (IBAction) toggleSignedReplyToSignedMessage:(id)sender -{ - [[GPGMailBundle sharedInstance] setSignsReplyToSignedMessage:([sender state] == NSOnState)]; -} - -- (IBAction) toggleEncryptedReplyToEncryptedMessage:(id)sender -{ - [[GPGMailBundle sharedInstance] setEncryptsReplyToEncryptedMessage:([sender state] == NSOnState)]; -} - -- (IBAction) toggleEncryptWhenPossible:(id)sender -{ - [[GPGMailBundle sharedInstance] setEncryptMessagesWhenPossible:([sender state] == NSOnState)]; -} - -- (IBAction) toggleSeparatePGPOperations:(id)sender -{ - [[GPGMailBundle sharedInstance] setUsesEncapsulatedSignature:([sender state] == NSOnState)]; -} - -- (IBAction) toggleKeyRefresh:(id)sender -{ - [[GPGMailBundle sharedInstance] setRefreshesKeysOnVolumeMount:([sender state] == NSOnState)]; -} - -- (IBAction) toggleSMIME:(id)sender -{ - [[GPGMailBundle sharedInstance] setDisablesSMIME:([sender state] == NSOnState)]; -} - -- (int) numberOfRowsInTableView:(NSTableView *)tableView -{ - return 0; -} - -- (id) tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row -{ - return nil; -} - -- (void) tableViewColumnDidMove:(NSNotification *)notification -{ - if(!initializingPrefs){ - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - NSMutableArray *anArray = [NSMutableArray arrayWithArray:[mailBundle displayedKeyIdentifiers]]; - int anIndex = [[[notification userInfo] objectForKey:@"NSOldColumn"] intValue]; - id anObject = [[anArray objectAtIndex:anIndex] retain]; - - [anArray removeObjectAtIndex:anIndex]; - anIndex = [[[notification userInfo] objectForKey:@"NSNewColumn"] intValue]; - [anArray insertObject:anObject atIndex:anIndex]; - [anObject release]; - [mailBundle setDisplayedKeyIdentifiers:anArray]; - [self refreshKeyIdentifiersDisplay]; - [self refreshPersonalKeys]; - } -} - -- (id) init -{ - if(self = [super init]){ - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyListWasInvalidated:) name:GPGKeyListWasInvalidatedNotification object:[GPGMailBundle sharedInstance]]; - } - - return self; -} - -- (void) dealloc -{ - [tableColumnPerIdentifier release]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:GPGPreferencesDidChangeNotification object:nil]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:GPGKeyListWasInvalidatedNotification object:nil]; - - [super dealloc]; -} - -- (void) keyListWasInvalidated:(NSNotification *)notification -{ - [self refreshPersonalKeys]; -} - -- (void) awakeFromNib -{ - NSEnumerator *anEnum = [[keyIdentifiersTableView tableColumns] objectEnumerator]; - NSTableColumn *aColumn; - NSAttributedString *anAttributedString; - NSMutableParagraphStyle *pStyle = [[NSMutableParagraphStyle alloc] init]; - - [pStyle setAlignment:NSRightTextAlignment]; - [versionTextField setStringValue:[[GPGMailBundle sharedInstance] versionDescription]]; - anAttributedString = [[NSAttributedString alloc] initWithString:[NSString stringWithFormat:[contactTextField stringValue], @"gpgmail@sente.ch"] attributes:[NSDictionary dictionaryWithObjectsAndKeys:[NSURL URLWithString:@"mailto:gpgmail@sente.ch"], NSLinkAttributeName, pStyle, NSParagraphStyleAttributeName, nil]]; - [contactTextField setAttributedStringValue:anAttributedString]; // FIXME: No effect on Panther! - [anAttributedString release]; - anAttributedString = [[NSAttributedString alloc] initWithString:[webSiteTextField stringValue] attributes:[NSDictionary dictionaryWithObjectsAndKeys:[NSURL URLWithString:[webSiteTextField stringValue]], NSLinkAttributeName, pStyle, NSParagraphStyleAttributeName, nil]]; - [webSiteTextField setAttributedStringValue:anAttributedString]; // FIXME: No effect on Panther! - [anAttributedString release]; - [pStyle release]; - tableColumnPerIdentifier = [[NSMutableDictionary alloc] init]; - [personalKeysPopUpButton setAutoenablesItems:NO]; - - while(aColumn = [anEnum nextObject]) - [tableColumnPerIdentifier setObject:aColumn forKey:[aColumn identifier]]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - [keyIdentifiersTableView setColumnAutoresizingStyle:NSTableViewUniformColumnAutoresizingStyle]; -#else - [keyIdentifiersTableView setAutoresizesAllColumnsToFit:YES]; -#endif -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - // Since 10.5, we can no longer reorder column when tableView data height is null. - // As a workaround, we add 1 pixel. - // FIXME: replace that tableView by NSTokenField - NSRect aFrame = [[keyIdentifiersTableView enclosingScrollView] frame]; - - aFrame.origin.y -= 1; - aFrame.size.height += 1; - [[keyIdentifiersTableView enclosingScrollView] setFrame:aFrame]; -#endif - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(preferencesDidChange:) name:GPGPreferencesDidChangeNotification object:[GPGMailBundle sharedInstance]]; -} - -- (void) initializeFromDefaults -{ - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - BOOL flag; - - initializingPrefs = YES; - [super initializeFromDefaults]; - [choosesPersonalKeyAccordingToAccountSwitchButton setState:([mailBundle choosesPersonalKeyAccordingToAccount] ? NSOnState:NSOffState)]; - flag = [mailBundle usesKeychain]; - if([mailBundle remembersPassphrasesDuringSession]){ - [passphraseTimeoutFormCell setEnabled:YES]; - [passphraseStrategyMatrix selectCellAtRow:2 column:0]; - } - else{ - [passphraseTimeoutFormCell setEnabled:NO]; - [passphraseStrategyMatrix selectCellAtRow:(flag ? 0:1) column:0]; - } - [passphraseTimeoutFormCell setFloatValue:[mailBundle passphraseFlushTimeout]]; - [alwaysSignSwitchButton setState:([mailBundle alwaysSignMessages] ? NSOnState:NSOffState)]; - [alwaysEncryptSwitchButton setState:([mailBundle alwaysEncryptMessages] ? NSOnState:NSOffState)]; - [useBCCRecipientsSwitchButton setState:([mailBundle usesBCCRecipients] ? NSOnState:NSOffState)]; - [trustAllKeysSwitchButton setState:([mailBundle trustsAllKeys] ? NSOnState:NSOffState)]; - [openPGPMIMESwitchButton setState:([mailBundle usesOnlyOpenPGPStyle] ? NSOnState:NSOffState)]; - flag = [mailBundle authenticatesMessagesAutomatically]; - [automaticallyAuthenticateMessagesSwitchButton setState:(flag ? NSOnState:NSOffState)]; - [authenticateUnreadMessagesSwitchButton setEnabled:flag]; - [authenticateUnreadMessagesSwitchButton setState:([mailBundle authenticatesOnlyUnreadMessagesAutomatically] ? NSOnState:NSOffState)]; - [self refreshPersonalKeys]; - flag = [mailBundle decryptsMessagesAutomatically]; - [automaticallyDecryptMessagesSwitchButton setState:(flag ? NSOnState:NSOffState)]; - [decryptUnreadMessagesSwitchButton setEnabled:flag]; - [decryptUnreadMessagesSwitchButton setState:([mailBundle decryptsOnlyUnreadMessagesAutomatically] ? NSOnState:NSOffState)]; - [encryptToSelfSwitchButton setState:([mailBundle encryptsToSelf] ? NSOnState:NSOffState)]; - [displayButtonInComposeWindowSwitchButton setState:([mailBundle displaysButtonsInComposeWindow] ? NSOnState:NSOffState)]; - [extendedInfoSwitchButton setState:([mailBundle automaticallyShowsAllInfo] ? NSOnState:NSOffState)]; - [buttonsShowStateSwitchButton setState:([mailBundle buttonsShowState] ? NSOnState:NSOffState)]; - [signWhenEncryptingSwitchButton setState:([mailBundle signWhenEncrypting] ? NSOnState:NSOffState)]; - [showUserIDsSwitchButton setState:([mailBundle displaysAllUserIDs] ? NSOnState:NSOffState)]; - [filtersKeysSwitchButton setState:([mailBundle filtersOutUnusableKeys] ? NSOnState:NSOffState)]; - [showsPassphraseSwitchButton setState:([mailBundle showsPassphrase] ? NSOnState:NSOffState)]; - [self refreshKeyIdentifiersDisplay]; - [lineWrappingFormCell setIntValue:[mailBundle lineWrappingLength]]; - [useSmartRulesSwitchButton setState:([mailBundle usesABEntriesRules] ? NSOnState:NSOffState)]; - [signReplyToSignedMessageSwitchButton setState:([mailBundle signsReplyToSignedMessage] ? NSOnState:NSOffState)]; - [encryptReplyToEncryptedMessageSwitchButton setState:([mailBundle encryptsReplyToEncryptedMessage] ? NSOnState:NSOffState)]; - [encryptWhenAllKeysAvailableSwitchButton setState:([mailBundle encryptMessagesWhenPossible] ? NSOnState:NSOffState)]; - [separateSignAndEncryptOperationsSwitchButton setState:([mailBundle usesEncapsulatedSignature] ? NSOnState:NSOffState)]; - [refreshKeysOnVolumeChangeSwitchButton setState:([mailBundle refreshesKeysOnVolumeMount] ? NSOnState:NSOffState)]; - [disableSMIMESwitchButton setState:([mailBundle disablesSMIME] ? NSOnState:NSOffState)]; - - initializingPrefs = NO; -} - -- (IBAction) flushCachedPassphrases:(id)sender -{ - [GPGPassphraseController flushCachedPassphrases]; -} - -- (void) preferencesDidChange:(NSNotification *)notification -{ - NSString *aKey = [[notification userInfo] objectForKey:@"key"]; - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - - if([aKey isEqualToString:@"displaysAllUserIDs"]){ - [showUserIDsSwitchButton setState:([mailBundle displaysAllUserIDs] ? NSOnState:NSOffState)]; - [self refreshPersonalKeys]; - } - else if([aKey isEqualToString:@"displayedKeyIdentifiers"]){ - [self refreshKeyIdentifiersDisplay]; - [self refreshPersonalKeys]; - } - else if([aKey isEqualToString:@"filtersOutUnusableKeys"]){ - [self refreshPersonalKeys]; - } -} - -- (IBAction) refreshKeys:(id)sender -{ - [[GPGMailBundle sharedInstance] gpgReloadPGPKeys:sender]; - [sender setState:NSOffState]; -} - -- (IBAction) exportGPGMailConfiguration:(id)sender -{ - NSDictionary *aDict = [[NSUserDefaults standardUserDefaults] dictionaryRepresentation]; - NSEnumerator *keyEnum = [aDict keyEnumerator]; - NSString *aKey; - NSMutableDictionary *exportedDict = [NSMutableDictionary dictionaryWithCapacity:20]; - - while(aKey = [keyEnum nextObject]){ - if([aKey hasPrefix:@"GPG"]) - [exportedDict setObject:[aDict objectForKey:aKey] forKey:aKey]; - } - NSLog(@"GPGMail %@ configuration:\n%@", [(GPGMailBundle *)[GPGMailBundle sharedInstance] version], exportedDict); -} - -@end diff --git a/GPGMail/Source/GPGMailTextAttachmentPoser.h b/GPGMail/Source/GPGMailTextAttachmentPoser.h deleted file mode 100644 index 04f32272..00000000 --- a/GPGMail/Source/GPGMailTextAttachmentPoser.h +++ /dev/null @@ -1,43 +0,0 @@ -// -// GPGMailTextAttachmentPoser.m -// GPGMail -// -// Created by Stephane Corthesy on Sat May 31 2004. -// - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - - -#ifdef SNOW_LEOPARD_64 -@interface GPGMail_MailTextAttachment : NSObject -#else -@interface MailTextAttachment(GPGMail) -#endif -@end diff --git a/GPGMail/Source/GPGMailTextAttachmentPoser.m b/GPGMail/Source/GPGMailTextAttachmentPoser.m deleted file mode 100644 index fb95cd1f..00000000 --- a/GPGMail/Source/GPGMailTextAttachmentPoser.m +++ /dev/null @@ -1,40 +0,0 @@ -// -// GPGMailTextAttachmentPoser.m -// GPGMail -// -// Created by Dave Lopper on Sat May 31 2004. -// Copyright (c) 2004 __MyCompanyName__. All rights reserved. -// - -#import "GPGMailTextAttachmentPoser.h" -#import "GPGMailPatching.h" -#import - -// Currently useless, because Content-Description header is not parsed: -// -contentDescription always returns nil - -#ifdef SNOW_LEOPARD_64 -@implementation GPGMail_MailTextAttachment -#else -@implementation MailTextAttachment(GPGMail) -#endif - -static IMP MailTextAttachment_toolTip = NULL; - -+ (void) load -{ - MailTextAttachment_toolTip = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(toolTip), NSClassFromString(@"MailTextAttachment"), @selector(gpgToolTip), [self class]); -} - -- gpgToolTip -{ - NSString *toolTip = ((id (*)(id, SEL))MailTextAttachment_toolTip)(self, _cmd); - NSString *contentDescription = [[self mimePart] contentDescription]; - - if(contentDescription != nil && [contentDescription length] > 0){ - toolTip = [contentDescription stringByAppendingFormat:@"\n\n%@", toolTip]; - } - return toolTip; -} - -@end diff --git a/GPGMail/Source/GPGMessageEditorPoser.h b/GPGMail/Source/GPGMessageEditorPoser.h deleted file mode 100644 index b9ca7183..00000000 --- a/GPGMail/Source/GPGMessageEditorPoser.h +++ /dev/null @@ -1,30 +0,0 @@ -/* GPGMessageEditorPoser.h created by dave on Sun 13-Apr-2004 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - - diff --git a/GPGMail/Source/GPGMessageSignature.h b/GPGMail/Source/GPGMessageSignature.h deleted file mode 100644 index 150c6d60..00000000 --- a/GPGMail/Source/GPGMessageSignature.h +++ /dev/null @@ -1,26 +0,0 @@ -// -// GPGMessageSignature.h -// GPGMail -// -// Created by Dave Lopper on 11/26/07. -// Copyright 2007 __MyCompanyName__. All rights reserved. -// - -#import - - -@class GPGSignature; - - -@interface GPGMessageSignature : NSObject { - GPGSignature *signature; - NSRange signedRange; -} - -- (id)initWithSignature:(GPGSignature *)signature range:(NSRange)range; - -- (GPGSignature *)signature; -- (NSRange)signedRange; -- (BOOL)coversWholeMessage; - -@end diff --git a/GPGMail/Source/GPGMessageSignature.m b/GPGMail/Source/GPGMessageSignature.m deleted file mode 100644 index 83c846d5..00000000 --- a/GPGMail/Source/GPGMessageSignature.m +++ /dev/null @@ -1,46 +0,0 @@ -// -// GPGMessageSignature.m -// GPGMail -// -// Created by Dave Lopper on 11/26/07. -// Copyright 2007 __MyCompanyName__. All rights reserved. -// - -#import "GPGMessageSignature.h" - - -@implementation GPGMessageSignature - -- (id)initWithSignature:(GPGSignature *)aSignature range:(NSRange)aRange -{ - if(self = [super init]){ - signature = [aSignature retain]; - signedRange = aRange; - } - - return self; -} - -- (void) dealloc -{ - [signature release]; - - [super dealloc]; -} - -- (GPGSignature *)signature -{ - return signature; -} - -- (NSRange)signedRange -{ - return signedRange; -} - -- (BOOL)coversWholeMessage -{ - return YES; // TODO: -} - -@end diff --git a/GPGMail/Source/GPGMessageViewerAccessoryViewOwner.h b/GPGMail/Source/GPGMessageViewerAccessoryViewOwner.h deleted file mode 100644 index daf67f42..00000000 --- a/GPGMail/Source/GPGMessageViewerAccessoryViewOwner.h +++ /dev/null @@ -1,122 +0,0 @@ -// -// GPGMessageViewerAccessoryViewOwner.h -// GPGMail -// -// Created by Stphane Corthsy on Mon Sep 16 2002. -// - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import -#import - - -@class Message; - - -enum { - gpgAuthenticationBanner, - gpgDecryptionBanner, - gpgSignatureInfoBanner, - gpgDecryptedInfoBanner, - gpgDecryptedSignatureInfoBanner -}; - - -@interface GPGMessageViewerAccessoryViewOwner : NSObject -{ - id delegate; - int bannerType; - GPGKey * signatureKey; - - IBOutlet NSView *authenticationView; - IBOutlet NSButton *authenticationButton; - - IBOutlet NSView *signatureView; - IBOutlet NSView *signatureUpperView; - IBOutlet NSImageView *signatureIconView; - IBOutlet NSTextField *signatureMessageTextField; - IBOutlet NSButton *signatureToggleButton; - IBOutlet NSView *signatureLowerView; - IBOutlet NSTextField *signatureCreationDateTextField; - IBOutlet NSTextField *signatureValidityTextField; - IBOutlet NSTextField *signatureExpirationDateTextField; - IBOutlet NSTextField *signatureBadPolicyAlertTextField; - IBOutlet NSTextField *signatureKeyFingerprintTextField; - BOOL isSignatureExtraViewVisible; - IBOutlet NSImageView *generalAlertIconView; - IBOutlet NSImageView *expirationAlertIconView; - IBOutlet NSImageView *policyAlertIconView; - IBOutlet NSImageView *trustAlertIconView; - IBOutlet NSPopUpButton *userIDsPopDownButton; - - IBOutlet NSView *decryptionView; - IBOutlet NSButton *decryptionButton; - - IBOutlet NSView *decryptedInfoView; - IBOutlet NSTextField *decryptedMessageTextField; - IBOutlet NSImageView *decryptedIconView; - - IBOutlet NSButton *disclosureButton; - - BOOL isMessagePGPSigned; - BOOL isMessagePGPEncrypted; -} - -- (id) initWithDelegate:(id)delegate; - -- (NSView *) view; - -- (IBAction) authenticate:(id)sender; -- (IBAction) decrypt:(id)sender; -- (IBAction) toggleSignatureExtraView:(id)sender; - -- (void) setBannerType:(int)bannerType; -- (int) bannerType; -- (NSString *)bannerTypeDescription; - -- (BOOL) gpgValidateAction:(SEL)anAction; - -- (IBAction) gpgAuthenticate:(id)sender; -- (IBAction) gpgDecrypt:(id)sender; - -- (BOOL) isMessagePGPEncrypted; -- (BOOL) isMessagePGPSigned; -- (void) messageChanged:(Message *)message; -- (void)printStackTrace:(NSException *)e; - -@end - -@interface NSObject(GPGMessageViewerAccessoryViewOwnerDelegate) -- (void) gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner replaceViewWithView:(NSView *)view; -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) -- (void) gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner showStatusMessage:(NSString *)messageString; -#endif -- (void) gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner displayMessage:(Message *)message isSigned:(BOOL)isSigned; -- (Message *) gpgMessageForAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner; -@end diff --git a/GPGMail/Source/GPGMessageViewerAccessoryViewOwner.m b/GPGMail/Source/GPGMessageViewerAccessoryViewOwner.m deleted file mode 100644 index 697f80b8..00000000 --- a/GPGMail/Source/GPGMessageViewerAccessoryViewOwner.m +++ /dev/null @@ -1,618 +0,0 @@ -// -// GPGMessageViewerAccessoryViewOwner.m -// GPGMail -// -// Created by Stphane Corthsy on Mon Sep 16 2002. -// - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "GPGMessageViewerAccessoryViewOwner.h" -#import "GPGMailBundle.h" -#import "GPGMessageSignature.h" -#import -#import -#import -#import - - -@interface NSView(ColorBackgroundView) -- (void) setTag:(int)tag; -@end - -@implementation GPGMessageViewerAccessoryViewOwner - -- (id) initWithDelegate:(id)theDelegate -{ - if(self = [self init]){ - delegate = theDelegate; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(preferencesDidChange:) name:GPGPreferencesDidChangeNotification object:[GPGMailBundle sharedInstance]]; - } - - return self; -} - -- (NSView *) view -{ - if(authenticationView == nil){ - NSAssert([NSBundle loadNibNamed:@"GPGMessageViewerAccessoryView" owner:self], @"### GPGMail: -[GPGMessageViewerAccessoryViewOwner view]: Unable to load nib named GPGMessageViewerAccessoryView"); - [signatureUpperView retain]; -#warning Verify that we no longer need this -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) - // Very hackish, but we have no other way to retrieve the MessageViewer... - BOOL isSingleMessageViewer = ([[[delegate documentView] window] delegate] != nil); -// BOOL isSingleMessageViewer = [[[[delegate documentView] window] delegate] isKindOfClass:[NSClassFromString(@"SingleMessageViewer") class]]; - - if(!isSingleMessageViewer){ - NSRect aRect = [authenticationView frame]; - - aRect.size.height -= 4; - [authenticationView setFrame:aRect]; - [authenticationView setTag:0]; - aRect = [signatureView frame]; - aRect.size.height -= 4; - [signatureView setFrame:aRect]; - [signatureView setTag:1]; - aRect = [signatureUpperView frame]; - aRect.size.height -= 4; - [signatureUpperView setFrame:aRect]; - [signatureUpperView setTag:2]; - aRect = [decryptionView frame]; - aRect.size.height -= 4; - [decryptionView setFrame:aRect]; - [decryptionView setTag:3]; - aRect = [decryptedInfoView frame]; - aRect.size.height -= 4; - [decryptedInfoView setFrame:aRect]; - [decryptedInfoView setTag:4]; - } -#endif - [[disclosureButton cell] setControlSize:NSRegularControlSize]; - [[disclosureButton cell] setBezelStyle:NSDisclosureBezelStyle]; - [[disclosureButton cell] setImage:nil]; - [[disclosureButton cell] setImagePosition:NSNoImage]; - [[disclosureButton cell] setShowsStateBy:NSChangeGrayCellMask | NSChangeBackgroundCellMask]; - } - - switch([self bannerType]){ - case gpgAuthenticationBanner: - return authenticationView; - case gpgDecryptionBanner: - return decryptionView; - case gpgSignatureInfoBanner: - case gpgDecryptedSignatureInfoBanner: - if(isSignatureExtraViewVisible) - return signatureView; - else - return signatureUpperView; - case gpgDecryptedInfoBanner: - return decryptedInfoView; - } - - return nil; -} - -- (NSString *)bannerTypeDescription -{ - switch([self bannerType]){ - case gpgAuthenticationBanner: - return @"Authentication"; - case gpgDecryptionBanner: - return @"Decryption"; - case gpgSignatureInfoBanner: - return @"SignatureInfo"; - case gpgDecryptedInfoBanner: - return @"DecryptedInfo"; - case gpgDecryptedSignatureInfoBanner: - return @"DecryptedSignatureInfo"; - default: - return nil; - } -} - -- (void) setBannerType:(int)theBannerType -{ - bannerType = theBannerType; - if((GPGMailLoggingLevel > 0)) - NSLog(@"[DEBUG] %s => %@", __PRETTY_FUNCTION__, [self bannerTypeDescription]); -} - -- (int) bannerType -{ - return bannerType; -} - -- (void) dealloc -{ - [authenticationView release]; - [signatureView release]; - [decryptionView release]; - [signatureUpperView release]; - [decryptedInfoView release]; - [signatureKey release]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:GPGPreferencesDidChangeNotification object:nil]; - - [super dealloc]; -} - -- (IBAction) toggleSignatureExtraView:(id)sender -{ - if(!isSignatureExtraViewVisible){ - [delegate gpgAccessoryViewOwner:self replaceViewWithView:signatureView]; - [signatureUpperView setFrameOrigin:NSMakePoint(0.0, NSHeight([signatureLowerView frame]))]; - [signatureView addSubview:signatureUpperView]; - [disclosureButton setState:NSOnState]; - } - else{ - [delegate gpgAccessoryViewOwner:self replaceViewWithView:signatureUpperView]; - [disclosureButton setState:NSOffState]; - } - isSignatureExtraViewVisible = !isSignatureExtraViewVisible; - [self setBannerType:gpgSignatureInfoBanner]; -} - -- (void) fillInUserIDListForKey:(GPGKey *)key -{ - unsigned aCount = [[userIDsPopDownButton itemArray] count]; - - while(aCount-- > 1) - [userIDsPopDownButton removeItemAtIndex:1]; - if(key){ - NSEnumerator *anEnum = [[key userIDs] objectEnumerator]; - GPGUserID *aUserID; - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - - while(aUserID = [anEnum nextObject]) - [userIDsPopDownButton addItemWithTitle:[mailBundle menuItemTitleForUserID:aUserID indent:0]]; - } -} - -- (void) loadSignatureInfoViewWithSignature:(GPGSignature *)authenticationSignature -{ - NSCalendarDate *aDate; - NSString *aString; - NSBundle *aBundle = [NSBundle bundleForClass:[self class]]; - NSString *iconName; - BOOL hasExtraInfo = YES; - NSString *iconToolTip = @""; - NSArray *policyURLs = [authenticationSignature policyURLs]; - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - BOOL alertForExpiration = NO; - BOOL alertForPolicy = NO; - BOOL alertForTrust = NO; - BOOL otherAlert = NO; - - [signatureKey release]; - signatureKey = nil; - aString = [authenticationSignature fingerprint]; - if(aString){ - GPGContext *aContext = [[GPGContext alloc] init]; - - @try{ - signatureKey = [[aContext keyFromFingerprint:aString secretKey:NO] retain]; - }@catch(NSException *localException){ - [aContext release]; - [localException raise]; - } - [aContext release]; - } - - if([authenticationSignature summary] & GPGSignatureSummaryBadPolicyMask){ - aString = NSLocalizedStringFromTableInBundle(@"Bad policy!", @"GPGMail", aBundle, ""); - if([policyURLs count]) - aString = [aString stringByAppendingString:[policyURLs componentsJoinedByString:@", "]]; - alertForPolicy = YES; - } - else{ - if([policyURLs count]){ - aString = [NSLocalizedStringFromTableInBundle(@"Policy: ", @"GPGMail", aBundle, "") stringByAppendingString:[policyURLs componentsJoinedByString:@", "]]; - otherAlert = YES; - } - else - aString = @""; - } -#warning Use setAttributedStringValue: instead, for policy URLs -> clickable - [signatureBadPolicyAlertTextField setStringValue:aString]; -#warning TODO: add support for notations - - aDate = [authenticationSignature creationDate]; - if(aDate) - [signatureCreationDateTextField setStringValue:[NSString stringWithFormat:NSLocalizedStringFromTableInBundle(@"Signed on %@", @"GPGMail", aBundle, ""), [aDate descriptionWithCalendarFormat:NSLocalizedStringFromTableInBundle(@"SIGNATURE_CREATION_DATE_FORMAT", @"GPGMail", aBundle, "") locale:[mailBundle locale]]]]; - else - [signatureCreationDateTextField setStringValue:NSLocalizedStringFromTableInBundle(@"No signature creation date available", @"GPGMail", aBundle, "")]; // Italicize it? - - [self fillInUserIDListForKey:signatureKey]; - if(signatureKey) - aString = [signatureKey fingerprint]; - else - aString = [authenticationSignature fingerprint]; - if([aString length] >= 32){ - aString = [GPGKey formattedFingerprint:aString]; - aString = [NSString stringWithFormat:NSLocalizedStringFromTableInBundle(@"Key fingerprint: %@", @"GPGMail", aBundle, ""), aString]; - } - else{ - if(aString){ - // It's in fact a key ID! - aString = [NSString stringWithFormat:NSLocalizedStringFromTableInBundle(@"Key ID: 0x%@", @"GPGMail", aBundle, ""), aString]; - } - else - aString = NSLocalizedStringFromTableInBundle(@"No key fingerprint/ID available", @"GPGMail", aBundle, ""); // Italicize it? - } - [signatureKeyFingerprintTextField setStringValue:aString]; - - aString = [NSString stringWithFormat:@"Validity=%d", [authenticationSignature validity]]; - [signatureValidityTextField setStringValue:[NSString stringWithFormat:NSLocalizedStringFromTableInBundle(@"Validity: %@", @"GPGMail", aBundle, ""), NSLocalizedStringFromTableInBundle(aString, @"GPGMail", aBundle, "")]]; - - aDate = [authenticationSignature expirationDate]; - if(aDate){ - [signatureExpirationDateTextField setStringValue:[NSString stringWithFormat:NSLocalizedStringFromTableInBundle(@"Signature expires on %@", @"GPGMail", aBundle, ""), [aDate descriptionWithCalendarFormat:NSLocalizedStringFromTableInBundle(@"SIGNATURE_EXPIRATION_DATE_FORMAT", @"GPGMail", aBundle, "") locale:[mailBundle locale]]]]; - } - else{ - [signatureExpirationDateTextField setStringValue:@""]; - } - // No warning if signature expired after its use; I guess test is useless for mails -// if([authenticationSignature summary] & GPGSignatureSummarySignatureExpiredMask) -// alertForExpiration = YES; - - if([authenticationSignature validity] < GPGValidityFull){ - if(![mailBundle trustsAllKeys] || [authenticationSignature validity] != GPGValidityUnknown) - alertForTrust = YES; - } - - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Status: %@, Summary: 0x%04x, Signer: %@, Signature Date: %@, Expiration Date: %@, Validity: %@, Validity Error: %@, Notations: %@, Policy URLs: %@", GPGErrorDescription([authenticationSignature status]), [authenticationSignature summary], (signatureKey ? [signatureKey userID]:[authenticationSignature fingerprint]), [authenticationSignature creationDate], [authenticationSignature expirationDate], [authenticationSignature validityDescription], GPGErrorDescription([authenticationSignature validityError]), [authenticationSignature notations], [authenticationSignature policyURLs]); - - switch([mailBundle gpgErrorCodeFromError:[authenticationSignature status]]){ - case GPGErrorKeyExpired: - aDate = [signatureKey expirationDate]; - // Let's consider it an error only if expired key was used for signature - if([aDate compare:[authenticationSignature creationDate]] <= 0){ - [signatureExpirationDateTextField setStringValue:[NSString stringWithFormat:NSLocalizedStringFromTableInBundle(@"Key expired on %@", @"GPGMail", aBundle, ""), [aDate descriptionWithCalendarFormat:NSLocalizedStringFromTableInBundle(@"KEY_EXPIRATION_DATE_FORMAT", @"GPGMail", aBundle, "") locale:[mailBundle locale]]]]; - alertForExpiration = YES; - } - // No break here; go on - case GPGErrorNoError: - case GPGErrorSignatureExpired: - // It's not an error to have an expired signature in a mail, is it? - // It is an error only if key was expired when making signature - // TODO: display userID matching sender email? - // TODO: how to display all userIDs? popup? - aString = [NSMutableString stringWithFormat:NSLocalizedStringFromTableInBundle(@"Signed by %@.", @"GPGMail", aBundle, ""), [signatureKey userID]]; - iconName = @"gpgSigned"; - iconToolTip = @"SIGNATURE_IS_GOOD"; - break; - case GPGErrorBadSignature: - if(signatureKey != nil) - aString = [NSMutableString stringWithFormat:NSLocalizedStringFromTableInBundle(@"Signature from %@ is bad!", @"GPGMail", aBundle, ""), [signatureKey userID]]; - else - aString = [NSMutableString stringWithFormat:NSLocalizedStringFromTableInBundle(@"Signature is bad!", @"GPGMail", aBundle, "")]; - iconName = @"gpgUnsigned"; - iconToolTip = @"SIGNATURE_IS_NOT_GOOD"; - break; - case GPGErrorNoPublicKey:{ - NSArray *fingerprints = [NSArray arrayWithObject:[authenticationSignature fingerprint]]; - NSArray *emails = [NSArray arrayWithObject:[[[delegate gpgMessageForAccessoryViewOwner:self] sender] uncommentedAddress]]; - - aString = [NSMutableString stringWithFormat:NSLocalizedStringFromTableInBundle(@"MISSING KEY %@.", @"GPGMail", aBundle, ""), [authenticationSignature formattedFingerprint]]; - [[NSNotificationCenter defaultCenter] postNotificationName:GPGMissingKeysNotification object:nil userInfo:[NSDictionary dictionaryWithObjectsAndKeys:fingerprints, @"fingerprints", emails, @"emails", nil]]; // For some key servers, passing the fingerprint does not work, so let's pass the sender's email too - iconName = @"gpgUnsigned"; - iconToolTip = nil; - break; - } - case GPGErrorGeneralError: - aString = [NSMutableString stringWithFormat:@"%@: %@", [mailBundle descriptionForError:[authenticationSignature status]], [mailBundle descriptionForError:GPGMakeErrorFromSystemError()]]; - iconName = @"gpgUnsigned"; - iconToolTip = nil; - break; - default: - aString = [NSMutableString stringWithString:[mailBundle descriptionForError:[authenticationSignature status]]]; - NSLog(@"$$$ GPGMail: Summary 0x%04x, status code %u, validity error %d '%@', errno %u '%@'", [authenticationSignature summary], [mailBundle gpgErrorCodeFromError:[authenticationSignature status]], GPGErrorCodeFromError([authenticationSignature validityError]), GPGErrorDescription([authenticationSignature validityError]), GPGErrorCodeFromError(GPGMakeErrorFromSystemError()), GPGErrorDescription(GPGMakeErrorFromSystemError())); - iconName = @"gpgUnsigned"; - iconToolTip = nil; - } - [signatureMessageTextField setStringValue:aString]; - [signatureIconView setImage:[NSImage imageNamed:iconName]]; - [signatureIconView setToolTip:(iconToolTip != nil ? NSLocalizedStringFromTableInBundle(iconToolTip, @"GPGMail", aBundle, ""):nil)]; - [signatureToggleButton setEnabled:hasExtraInfo]; - - if(alertForTrust || alertForExpiration || alertForPolicy || otherAlert) - iconName = @"gpgSmallAlert16"; - else - iconName = @"gpgEmptyImage"; - [generalAlertIconView setImage:[NSImage imageNamed:iconName]]; - if(alertForExpiration) - iconName = @"gpgSmallAlert12"; - else - iconName = @"gpgEmptyImage"; - [expirationAlertIconView setImage:[NSImage imageNamed:iconName]]; - if(alertForTrust) - iconName = @"gpgSmallAlert12"; - else - iconName = @"gpgEmptyImage"; - [trustAlertIconView setImage:[NSImage imageNamed:iconName]]; - if(alertForPolicy) - iconName = @"gpgSmallAlert12"; - else - iconName = @"gpgEmptyImage"; - [policyAlertIconView setImage:[NSImage imageNamed:iconName]]; - - [signatureToggleButton setState:NSOffState]; // Always closed first -#warning TODO: no information if key has been revoked! -} - -- (IBAction) gpgAuthenticate:(id)sender -{ - [authenticationButton performClick:sender]; -} - -- (IBAction) gpgDecrypt:(id)sender -{ - [decryptionButton performClick:sender]; -} - -- (IBAction) authenticate:(id)sender -{ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s", __PRETTY_FUNCTION__); - // TODO: Should be done async, in another thread -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) - [delegate gpgAccessoryViewOwner:self showStatusMessage:NSLocalizedStringFromTableInBundle(@"AUTHENTICATING", @"GPGMail", [NSBundle bundleForClass:[self class]], "")]; -#endif - - @try{ - GPGSignature *authenticationSignature; -// BOOL hasValidSignature; - - authenticationSignature = [[delegate gpgMessageForAccessoryViewOwner:self] gpgAuthenticationSignature]; // Can raise an exception - if(authenticationSignature == nil && [self bannerType] == gpgDecryptedInfoBanner){ - } - else{ - [self loadSignatureInfoViewWithSignature:authenticationSignature]; - [delegate gpgAccessoryViewOwner:self replaceViewWithView:signatureUpperView]; - [self setBannerType:gpgSignatureInfoBanner]; - isSignatureExtraViewVisible = NO; - if([[GPGMailBundle sharedInstance] automaticallyShowsAllInfo]) - [self toggleSignatureExtraView:nil]; -/* hasValidSignature = (authenticationSignature != nil && [authenticationSignature validityError] == GPGErrorNoError); - if(hasValidSignature) - [message setMessageFlags:[message messageFlags] | 0x00800000]; - else - [message setMessageFlags:[message messageFlags] & 0xFF7FFFFF];*/ - //[[message messageFlags] setObject:??? forKey:@"GPGAuthenticated"]; - } - }@catch(NSException *localException){ - NSBeginAlertSheet(NSLocalizedStringFromTableInBundle(@"AUTHENTICATION_TITLE_FAILED", @"GPGMail", [NSBundle bundleForClass:[self class]], ""), nil, nil, nil, [[self view] window], nil, NULL, NULL, NULL, @"%@", [[GPGMailBundle sharedInstance] descriptionForException:localException]); - //[[message messageFlags] setObject:@"NO" forKey:@"GPGAuthenticated"]; - } - -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) - [delegate gpgAccessoryViewOwner:self showStatusMessage:NSLocalizedStringFromTableInBundle(@"Done.", @"Message", [NSBundle bundleForClass:[Message class]], "")]; -#endif -} - -- (IBAction) decrypt:(id)sender -{ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s", __PRETTY_FUNCTION__); - // TODO: Should be done async, in another thread - NSMutableArray *sigs = [NSMutableArray array]; - NSException *decryptionException = nil, *authenticationException = nil; - BOOL decrypted = NO; - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) - [delegate gpgAccessoryViewOwner:self showStatusMessage:NSLocalizedStringFromTableInBundle(@"DECRYPTING", @"GPGMail", [NSBundle bundleForClass:[self class]], "")]; -#endif - - @try{ -// Message *decryptedMessage = [[delegate gpgMessageForAccessoryViewOwner:self] gpgDecryptedMessageWithPassphraseDelegate:mailBundle signature:(id *)&signature]; - Message *decryptedMessage = [delegate gpgMessageForAccessoryViewOwner:self]; - [decryptedMessage gpgDecryptMessageWithPassphraseDelegate:mailBundle messageSignatures:sigs]; - - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Got decrypted message; signatures = %@", sigs); - NSAssert(decryptedMessage != nil, @"Why is it nil? Which circumstances??"); // Would return nil in case method was called for a message which is not an encrypted one => programmation error - // Let's support messages which have been signed then encrypted - if([sigs count] == 0 && [decryptedMessage gpgHasSignature]){ // FIXME: The decryptedMessage we get here is still the original encrypted one -> headers are the encrypted ones, and cannot be the decrypted ones! -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) - [delegate gpgAccessoryViewOwner:self showStatusMessage:NSLocalizedStringFromTableInBundle(@"AUTHENTICATING", @"GPGMail", [NSBundle bundleForClass:[self class]], "")]; -#endif - - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Extracting signatures"); - @try{ - GPGSignature *aSignature = [decryptedMessage gpgEmbeddedAuthenticationSignature]; // Can raise an exception - - if(aSignature != nil) - [sigs addObject:aSignature]; - }@catch(NSException *localException){ - // Error during verification - authenticationException = localException; - NSLog(@"[DEBUG] authenticationException: %@", [[authenticationException userInfo] objectForKey:NSStackTraceKey]); - [self printStackTrace:authenticationException]; - - } - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Done"); - } - else if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Not signed"); - - if([sigs count] > 0){ - [self loadSignatureInfoViewWithSignature:[sigs objectAtIndex:0]]; // TODO: display all signatures - [delegate gpgAccessoryViewOwner:self replaceViewWithView:signatureUpperView]; - [self setBannerType:gpgDecryptedSignatureInfoBanner]; - } - isSignatureExtraViewVisible = NO; - [delegate gpgAccessoryViewOwner:self displayMessage:decryptedMessage isSigned:([sigs count] > 0)]; - }@catch(NSException *localException){ - decryptionException = localException; - // Error during decryption - } - -#if !defined(SNOW_LEOPARD) && !defined(LEOPARD) && !defined(TIGER) - [delegate gpgAccessoryViewOwner:self showStatusMessage:NSLocalizedStringFromTableInBundle(@"Done.", @"Message", [NSBundle bundleForClass:[Message class]], "")]; -#endif - - if(decryptionException == nil){ - decrypted = YES; - if([sigs count] == 0){ -#warning OR signature is not a signature... Test signature summary state - if(authenticationException == nil) - // Warn user that message was not authenticated - [decryptedMessageTextField setStringValue:NSLocalizedStringFromTableInBundle(@"DECRYPTED_MSG_NOT_SIGNED", @"GPGMail", [NSBundle bundleForClass:[self class]], "")]; - else - [decryptedMessageTextField setStringValue:[mailBundle descriptionForException:authenticationException]]; - [decryptedIconView setImage:[NSImage imageNamed:@"gpgUnsigned"]]; - [delegate gpgAccessoryViewOwner:self replaceViewWithView:decryptedInfoView]; - [self setBannerType:gpgDecryptedInfoBanner]; - } - } - else{ // Should we use a sheet instead? - // Log the stack trace of the exception to console.app for debugging. - NSLog(@"[DEBUG] decryptionException: %@", [[decryptionException userInfo] objectForKey:NSStackTraceKey]); - [self printStackTrace:decryptionException]; - if(![[decryptionException name] isEqualToString:GPGException] || [mailBundle gpgErrorCodeFromError:[[[decryptionException userInfo] objectForKey:GPGErrorKey] unsignedIntValue]] != GPGErrorCancelled){ - // "User canceled" => do not modify view - [decryptedMessageTextField setStringValue:[mailBundle descriptionForException:decryptionException]]; - [decryptedIconView setImage:[NSImage imageNamed:@"gpgEncrypted"]]; - [delegate gpgAccessoryViewOwner:self replaceViewWithView:decryptedInfoView]; - [self setBannerType:gpgDecryptedInfoBanner]; - } - } -} - -- (void)printStackTrace:(NSException *)e -{ - NSString *stack = [[e userInfo] objectForKey:NSStackTraceKey]; - if (stack) { - NSTask *ls = [[NSTask alloc] init]; - NSString *pid = [[NSNumber numberWithInt:[[NSProcessInfo processInfo] processIdentifier]] stringValue]; - NSMutableArray *args = [NSMutableArray arrayWithCapacity:20]; - - [args addObject:@"-p"]; - [args addObject:pid]; - [args addObjectsFromArray:[stack componentsSeparatedByString:@" "]]; - // Note: function addresses are separated by double spaces, not a single space. - - [ls setLaunchPath:@"/usr/bin/atos"]; - [ls setArguments:args]; - [ls launch]; - [ls release]; - - } else { - NSLog(@"No stack trace available."); - } -} - - -- (void) messageChanged:(Message *)message -{ -// NSLog(@"messageChanged:0x%08x", message); - if(message != nil){ - isMessagePGPEncrypted = [message gpgIsEncrypted]; - isMessagePGPSigned = [message gpgHasSignature]; - } - else{ - isMessagePGPEncrypted = NO; - isMessagePGPSigned = NO; - } -} - -- (BOOL) isMessagePGPEncrypted -{ - return isMessagePGPEncrypted; -} - -- (BOOL) isMessagePGPSigned -{ - return isMessagePGPSigned; -} - -- (BOOL) validateMenuItem:(NSMenuItem *)menuItem -{ - SEL anAction = [menuItem action]; - - if(anAction == @selector(gpgDecrypt:)){ - // Check that there is a selected message in mainWindow, and that message - // is currently encrypted - Message *aMessage = [delegate gpgMessageForAccessoryViewOwner:self]; - - if(aMessage != nil){ - return [self isMessagePGPEncrypted]; - } - else - return NO; - } - else if(anAction == @selector(gpgAuthenticate:)){ - // Check that there is a selected message in mainWindow, and that message - // is currently signed - Message *aMessage = [delegate gpgMessageForAccessoryViewOwner:self]; - - if(aMessage != nil){ - /* - NSMutableDictionary *aCacheDict = [menuItem representedObject]; - Message *lastDisplayedMessage = [[aCacheDict objectForKey:@"Message"] nonretainedObjectValue]; - NSNumber *aNumber = [aCacheDict objectForKey:@"hasSignature"]; - - if(!aNumber || lastDisplayedMessage != aMessage){ - if(!aCacheDict) - aCacheDict = [NSMutableDictionary dictionary]; - [aCacheDict setObject:[NSValue valueWithNonretainedObject:aMessage] forKey:@"Message"]; - aNumber = [NSNumber numberWithBool:[aMessage gpgHasSignature]]; - [aCacheDict setObject:aNumber forKey:@"hasSignature"]; - [menuItem setRepresentedObject:aCacheDict]; - } - return [aNumber boolValue];*/ - return [self isMessagePGPSigned]; - } - else - return NO; - } - - return NO; -} - -- (BOOL) gpgValidateAction:(SEL)anAction -{ - if(anAction == @selector(gpgDecrypt:)) -// return [self validateMenuItem:[[GPGMailBundle sharedInstance] decryptMenuItem]]; - return [self isMessagePGPEncrypted]; - else if(anAction == @selector(gpgAuthenticate:)) -// return [self validateMenuItem:[[GPGMailBundle sharedInstance] authenticateMenuItem]]; - return [self isMessagePGPSigned]; - else - return NO; -} - -- (void) preferencesDidChange:(NSNotification *)notification -{ - [self fillInUserIDListForKey:signatureKey]; -} - -@end diff --git a/GPGMail/Source/GPGTextDocumentViewerPoser.h b/GPGMail/Source/GPGTextDocumentViewerPoser.h deleted file mode 100644 index 9d2eb5d4..00000000 --- a/GPGMail/Source/GPGTextDocumentViewerPoser.h +++ /dev/null @@ -1,31 +0,0 @@ -// -// GPGTextDocumentViewerPoser.h -// GPGMail -// -// Created by Stphane Corthsy on Mon Sep 16 2002. -// - -/* - * Copyright Stephane Corthesy (stephane@sente.ch), 2000-2003 - * (see LICENSE.txt file for license information) - */ - -#import - - -@interface GPGTextDocumentViewerPoser : TextDocumentViewer -{ - -} - -- (void) gpgShowPGPSignatureBanner; -- (void) gpgShowPGPEncryptedBanner; -- (void) gpgHideBanner; - -- (BOOL) gpgValidateAction:(SEL)anAction; - -// Actions connected to menus -- (IBAction) gpgDecrypt:(id)sender; -- (IBAction) gpgAuthenticate:(id)sender; - -@end diff --git a/GPGMail/Source/GPGTextDocumentViewerPoser.m b/GPGMail/Source/GPGTextDocumentViewerPoser.m deleted file mode 100644 index f1a958fd..00000000 --- a/GPGMail/Source/GPGTextDocumentViewerPoser.m +++ /dev/null @@ -1,554 +0,0 @@ -// -// GPGTextDocumentViewerPoser.m -// GPGMail -// -// Created by Stphane Corthsy on Mon Sep 16 2002. -// - -/* - * Copyright Stephane Corthesy (stephane@sente.ch), 2000-2003 - * (see LICENSE.txt file for license information) - */ - -#import "GPGTextDocumentViewerPoser.h" -#import "GPGMessageViewerAccessoryViewOwner.h" -#import "GPGMailBundle.h" -#import -#import -#import - - -@interface NSObject(GPGTextDocumentViewerPoser) -- (void) gpgSetClass:(Class)class; -@end - -@implementation NSObject(GPGTextDocumentViewerPoser) - -- (void) gpgSetClass:(Class)class -{ - isa = class; -} - -@end - -@interface GPGTextDocumentViewerPoser(Private) -- (BOOL) _gpgBannerIsShown; -- (GPGMessageViewerAccessoryViewOwner *) _gpgMessageViewerAccessoryViewOwner; -@end - -@implementation GPGTextDocumentViewerPoser - -static NSMapTable *_extraIVars = NULL; -static NSLock *_extraIVarsLock = nil; - -+ (void) load -{ - NSEnumerator *anEnum = [[MessageViewer allMessageViewers] objectEnumerator]; - MessageViewer *aViewer; - - _extraIVars = NSCreateMapTableWithZone(NSObjectMapKeyCallBacks, NSObjectMapValueCallBacks, 3, [self zone]); - _extraIVarsLock = [[NSLock alloc] init]; - [GPGTextDocumentViewerPoser poseAsClass:[TextDocumentViewer class]]; - while(aViewer = [anEnum nextObject]) - [[aViewer gpgTextViewer:nil] gpgSetClass:[GPGTextDocumentViewerPoser class]]; -} - -- (NSMutableDictionary *) gpgExtraIVars -{ - NSMutableDictionary *aDict; - NSValue *aValue = [NSValue valueWithNonretainedObject:self]; - // We cannot use self as key, because in -dealloc this method is called when invoking super's - // and thus puts self back in mapTable; by using the NSValue and changing the dealloc, - // it corrects the problem. - - [_extraIVarsLock lock]; - aDict = NSMapGet(_extraIVars, aValue); - if(aDict == nil){ - aDict = [NSMutableDictionary dictionary]; - NSMapInsert(_extraIVars, aValue, aDict); - } - [_extraIVarsLock unlock]; - - return aDict; -} - -- (BOOL) gpgMessageWasInFactSigned -{ - return [[[self gpgExtraIVars] objectForKey:@"messageWasInFactSigned"] boolValue]; -} - -- (void) gpgSetMessageWasInFactSigned:(BOOL)flag -{ - [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"messageWasInFactSigned"]; -} - -- (BOOL) gpgMessageHasBeenDecrypted -{ - return [[[self gpgExtraIVars] objectForKey:@"messageHasBeenDecrypted"] boolValue]; -} - -- (void) gpgSetMessageHasBeenDecrypted:(BOOL)flag -{ - [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"messageHasBeenDecrypted"]; -} - -- (BOOL) gpgMessageReadStatusHasChanged -{ - return [[[self gpgExtraIVars] objectForKey:@"messageReadStatusHasChanged"] boolValue]; -} - -- (void) gpgSetMessageReadStatusHasChanged:(BOOL)flag -{ - [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"messageReadStatusHasChanged"]; -} - -/* -- (void)_displayHTMLDocument:fp12 -{ - NSLog(@"WILL _displayHTMLDocument:%@", fp12); - [super _displayHTMLDocument:fp12]; - NSLog(@"DID _displayHTMLDocument:"); -} - -- (void)displayAttributedString:fp12 -{ - NSLog(@"WILL displayAttributedString:%@", fp12); - [super displayAttributedString:fp12]; - NSLog(@"DID displayAttributedString:"); -} -*/ - -- (void) gpgMessageStoreMessageFlagsChanged:(NSNotification *)notification -{ - if([[[[notification userInfo] objectForKey:@"flags"] objectForKey:@"MessageIsRead"] isEqualToString:@"YES"]){ - NSEnumerator *anEnum = [[[notification userInfo] objectForKey:@"messages"] objectEnumerator]; - Message *aMessage; - Message *myMessage = [self message]; - - while(aMessage = [anEnum nextObject]){ - if(aMessage == myMessage){ - [self gpgSetMessageReadStatusHasChanged:YES]; - break; - } - } - } -} - -- (void) _updateDisplay -{ - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - Message *aMessage = [self message]; - BOOL shouldAuthenticate = NO; - BOOL shouldDecrypt = NO; - BOOL compareFlags = ([aMessage messageStore] != nil && ([mailBundle decryptsOnlyUnreadMessagesAutomatically] || [mailBundle authenticatesOnlyUnreadMessagesAutomatically])); - BOOL readStatusChanged = NO; -// NSView *originalCertifBanner = [certificateView retain]; - - if(compareFlags){ - [self gpgSetMessageReadStatusHasChanged:NO]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(gpgMessageStoreMessageFlagsChanged:) name:@"MessageStoreMessageFlagsChanged" object:[aMessage messageStore]]; - } - -//[super _updateDisplay]; - if(aMessage == nil){ - if([self _gpgBannerIsShown]){ - [self gpgHideBanner]; -// [originalCertifBanner release]; originalCertifBanner = nil; - } - } - else if([aMessage gpgIsEncrypted]){ - [self gpgShowPGPEncryptedBanner]; - if([mailBundle decryptsMessagesAutomatically]) - shouldDecrypt = YES; - } - else if([aMessage gpgHasSignature]){ - if([mailBundle authenticatesMessagesAutomatically]){ - [self gpgShowPGPSignatureBanner]; - shouldAuthenticate = YES; - } - else - [self gpgShowPGPSignatureBanner]; - } - else if([self gpgMessageWasInFactSigned]){ - [self gpgShowPGPSignatureBanner]; - [self gpgSetMessageWasInFactSigned:NO]; - [self gpgSetMessageHasBeenDecrypted:NO]; - } - else if([self gpgMessageHasBeenDecrypted]){ - [self gpgShowPGPEncryptedBanner]; - [self gpgSetMessageHasBeenDecrypted:NO]; - if([mailBundle authenticatesMessagesAutomatically]) - shouldAuthenticate = YES; - } - else if([self _gpgBannerIsShown]){ - [self gpgHideBanner]; -// [originalCertifBanner release]; originalCertifBanner = nil; - } - - [super _updateDisplay]; - - if(compareFlags){ - readStatusChanged = [self gpgMessageReadStatusHasChanged]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:@"MessageStoreMessageFlagsChanged" object:[aMessage messageStore]]; - } - - if(shouldAuthenticate && (![mailBundle authenticatesOnlyUnreadMessagesAutomatically] || readStatusChanged)){ - [self performSelector:@selector(gpgAuthenticate:) withObject:nil afterDelay:0.]; - } - else if(shouldDecrypt && (![mailBundle decryptsOnlyUnreadMessagesAutomatically] || readStatusChanged)){ - [self performSelector:@selector(gpgDecrypt:) withObject:nil afterDelay:0.]; - } -// if(originalCertifBanner){ -// certificateView = originalCertifBanner; -//// [self setCertificateView:originalCertifBanner]; // Has side-effects: resets other attributes -// [originalCertifBanner release]; -// } -} - -- (void) dealloc -{ - [super dealloc]; // Will call -gpgExtraIVars! - [_extraIVarsLock lock]; - NSMapRemove(_extraIVars, [NSValue valueWithNonretainedObject:self]); - [_extraIVarsLock unlock]; -} - -- (void) gpgForwardAction:(SEL)action from:(id)sender -{ - id target = [self _gpgMessageViewerAccessoryViewOwner]; - - if(target && [target respondsToSelector:action]) - [target performSelector:action withObject:sender]; -} - -- (IBAction) gpgDecrypt:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgAuthenticate:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (BOOL) gpgValidateAction:(SEL)anAction -{ - if(anAction == @selector(gpgDecrypt:) || anAction == @selector(gpgAuthenticate:)){ - id target = [self _gpgMessageViewerAccessoryViewOwner]; - - if(target && [target respondsToSelector:anAction]) - return [target gpgValidateAction:anAction]; - } - - return NO; -} - -- (BOOL) validateMenuItem:(id )menuItem -{ - SEL anAction = [menuItem action]; - - if(anAction == @selector(gpgDecrypt:) || anAction == @selector(gpgAuthenticate:)){ - return [self gpgValidateAction:anAction]; - } - - return [super validateMenuItem:menuItem]; -} -/* -- (void)viewSource:fp12 -{ - NSLog(@"WILL viewSource:%@", fp12); - [super viewSource:fp12]; - NSLog(@"DID viewSource:"); -} - -- (void)reloadCurrentMessage -{ - NSLog(@"WILL reloadCurrentMessage"); - [super reloadCurrentMessage]; - NSLog(@"DID reloadCurrentMessage"); -} -*/ -#ifdef PANTHER -- (void)setMessage:fp8 headerOrder:fp12 -{ - [self gpgSetMessageWasInFactSigned:NO]; - [self gpgSetMessageHasBeenDecrypted:NO]; - [super setMessage:fp8 headerOrder:fp12]; -} - -- (void)_setMessage:fp8 headerOrder:fp12 -{ - [self gpgSetMessageWasInFactSigned:NO]; - [self gpgSetMessageHasBeenDecrypted:NO]; - [super _setMessage:fp8 headerOrder:fp12]; -} -#else -- (void)setMessage:fp12 -{ -// NSLog(@"WILL setMessage:%@", fp12); - [self gpgSetMessageWasInFactSigned:NO]; - [self gpgSetMessageHasBeenDecrypted:NO]; - [super setMessage:fp12]; -// NSLog(@"DID setMessage:"); -} -/* -- (void)_setMessage:fp12 -{ -// NSLog(@"WILL _setMessage:%@", fp12); - [super _setMessage:fp12]; -// NSLog(@"DID _setMessage:"); -} -*/ -#endif -- (void) _gpgAddAccessoryView:(NSView *)accessoryView -{ - NSRect aRect; - NSRect originalRect; - float aHeight; -#ifdef PANTHER -#if 0 - // Works only for MIME signed, because Mail thinks it's (S/MIME) signed - certificateView = accessoryView; -#else - NSView *resizedView = [[contentContainerView subviews] objectAtIndex:0]; - NSView *currentBannerView = nil; - - if([[contentContainerView subviews] count] > 1) - currentBannerView = [[contentContainerView subviews] objectAtIndex:1]; - originalRect = aRect = [resizedView frame]; - aHeight = NSHeight([accessoryView frame]); - aRect.origin.y = NSMaxY(aRect) - aHeight; - if(currentBannerView){ - aRect.origin.y += NSHeight([currentBannerView frame]); - [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) - aHeight)]; - [currentBannerView setNeedsDisplay:YES]; - } - originalRect.size.height -= aHeight; - aRect.size.height = aHeight; - [accessoryView setFrame:aRect]; - [[resizedView superview] addSubview:accessoryView]; - [resizedView setFrame:originalRect]; -#endif -#else - NSView *resizedView = _currentView;//[[self textView] enclosingScrollView];//(NSView *)messageScroll; - NSView *currentBannerView = junkMailView; - - originalRect = aRect = [resizedView frame]; - aHeight = NSHeight([accessoryView frame]); - aRect.origin.y = NSMaxY(aRect) - aHeight; - if([currentBannerView window] != nil){ - aRect.origin.y += NSHeight([currentBannerView frame]); - [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) - aHeight)]; - [currentBannerView setNeedsDisplay:YES]; - } - originalRect.size.height -= aHeight; - aRect.size.height = aHeight; - [accessoryView setFrame:aRect]; - [[resizedView superview] addSubview:accessoryView]; - [resizedView setFrame:originalRect]; -#endif -} - -- (void) _gpgRemoveAccessoryView:(NSView *)accessoryView redisplay:(BOOL)flag -{ - NSRect originalRect; -#ifdef PANTHER -#if 0 - // Works only for MIME signed, because Mail thinks it's (S/MIME) signed -#else - NSView *resizedView = [[contentContainerView subviews] objectAtIndex:0]; - NSView *currentBannerView = nil; - - NSAssert([accessoryView ancestorSharedWithView:resizedView] != nil, @"Trying to remove unattached view!"); - if([[contentContainerView subviews] count] > 2){ - currentBannerView = [[contentContainerView subviews] objectAtIndex:2]; - if(currentBannerView == accessoryView) - currentBannerView = [[contentContainerView subviews] objectAtIndex:1]; - } - originalRect = [resizedView frame]; - originalRect.size.height += NSHeight([accessoryView frame]); - if(flag) - [accessoryView removeFromSuperview]; - else - [accessoryView removeFromSuperviewWithoutNeedingDisplay]; - if(currentBannerView){ - [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) + NSHeight([accessoryView frame]))]; - [currentBannerView setNeedsDisplay:YES]; - } - [resizedView setFrame:originalRect]; -#endif -#else - NSView *resizedView = _currentView;//[[self textView] enclosingScrollView];//(NSView *)messageScroll; - NSView *currentBannerView = junkMailView; - - NSAssert([accessoryView ancestorSharedWithView:resizedView] != nil, @"Trying to remove unattached view!"); - originalRect = [resizedView frame]; - originalRect.size.height += NSHeight([accessoryView frame]); - if(flag) - [accessoryView removeFromSuperview]; - else - [accessoryView removeFromSuperviewWithoutNeedingDisplay]; - if([currentBannerView window] != nil){ - [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) + NSHeight([accessoryView frame]))]; - [currentBannerView setNeedsDisplay:YES]; - } - [resizedView setFrame:originalRect]; -#endif -} -/* -- (GPGMessageViewerAccessoryViewOwner *) _gpgExistingMessageViewerAccessoryViewOwner -{ - if(_accessoryViewOwnerPerViewer != NULL) - return NSMapGet(_accessoryViewOwnerPerViewer, self); - else - return nil; -} -*/ -- (GPGMessageViewerAccessoryViewOwner *) _gpgMessageViewerAccessoryViewOwner -{ - // WARNING: this limits us to 1 accessoryView per viewer - GPGMessageViewerAccessoryViewOwner *accessoryViewOwner = [[self gpgExtraIVars] objectForKey:@"messageViewerAccessoryViewOwner"]; - - if(accessoryViewOwner == nil){ - accessoryViewOwner = [[GPGMessageViewerAccessoryViewOwner alloc] initWithDelegate:self]; - [[self gpgExtraIVars] setObject:accessoryViewOwner forKey:@"messageViewerAccessoryViewOwner"]; - [accessoryViewOwner release]; - } - - return accessoryViewOwner; -} - -- (BOOL) _gpgBannerIsShown -{ - return [[[self _gpgMessageViewerAccessoryViewOwner] view] superview] != nil; -} - -- (void) _gpgShowBannerWithType:(int)bannerType -{ - GPGMessageViewerAccessoryViewOwner *anOwner = nil; - - if(![self _gpgBannerIsShown]){ - anOwner = [self _gpgMessageViewerAccessoryViewOwner]; - [anOwner setBannerType:bannerType]; - [self _gpgAddAccessoryView:[anOwner view]]; - } - else{ - anOwner = [self _gpgMessageViewerAccessoryViewOwner]; - if([anOwner bannerType] != bannerType){ - [self _gpgRemoveAccessoryView:[anOwner view] redisplay:NO]; - [anOwner setBannerType:bannerType]; - [self _gpgAddAccessoryView:[anOwner view]]; - } - } -// [anOwner setMessage:[self message]]; -} - -- (void) gpgShowPGPSignatureBanner -{ - // gpgMessageWasInFactSigned: special case where message has been encrypted and signed in one operation - [self _gpgShowBannerWithType:([self gpgMessageWasInFactSigned] ? gpgDecryptedSignatureInfoBanner:gpgAuthenticationBanner)]; -} - -- (void) gpgShowPGPEncryptedBanner -{ - // gpgMessageHasBeenDecrypted: special case where message has been encrypted - [self _gpgShowBannerWithType:([self gpgMessageHasBeenDecrypted] ? gpgDecryptedInfoBanner:gpgDecryptionBanner)]; -} - -- (void) gpgHideBanner -{ - if([self _gpgBannerIsShown]){ - GPGMessageViewerAccessoryViewOwner *anOwner = [self _gpgMessageViewerAccessoryViewOwner]; - - [self _gpgRemoveAccessoryView:[anOwner view] redisplay:YES]; -// [anOwner setMessage:nil]; - } -} - -- (void) gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner replaceViewWithView:(NSView *)view -{ - NSAssert([self _gpgBannerIsShown], @"### GPGMail: banner should already be visible"); - [self _gpgRemoveAccessoryView:[owner view] redisplay:NO]; - [self _gpgAddAccessoryView:view]; -} - -- (void) gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner showStatusMessage:(NSString *)message -{ - if([[[[self textView] window] delegate] respondsToSelector:@selector(showStatusMessage:)]) - // Delegate can be a MessageViewer, or a MessageEditor (for standalone viewers!) - [[[[self textView] window] delegate] showStatusMessage:message]; -} - -- (void) gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner displayMessage:(Message *)message isSigned:(BOOL)isSigned -{ -#ifdef PANTHER -#if 1 - // Works, but headers are not up-to-date - //[inViewer clearCache]; -/////////////////////// [self setMessage:message headerOrder:[[self viewingState] headerOrder]]; // If this line was commented out, no header would appear at all! -// [inViewer _setMessage:decodedMessage headerOrder:[[inViewer viewingState] headerOrder]]; -// [inViewer _fetchContentsForMessage:decodedMessage fromStore:[decodedMessage messageStore] withViewingState:[inViewer viewingState]]; -// [inViewer viewerPreferencesChanged:nil]; -// [inViewer _updateDisplay]; - - MessageViewingState *viewingState = [NSClassFromString(@"MessageHeaderDisplay") copyViewingState:[self viewingState/*ForMessage:[self message]*/]]; - [viewingState setHeaderAttributedString:[[message headers] attributedStringShowingHeaderDetailLevel:[self headerDetailLevel]]]; -NSLog(@"HeaderAttributedString = %@", [viewingState headerAttributedString]); -if(/*[message numberOfAttachments]*/[[[message messageBody] attachments] count] == 0) // numberOfAttachments not up-to-date! Wrapper's - [viewingState setAttachmentsDescription:nil]; -else - [viewingState setAttachmentsDescription:[NSClassFromString(@"MessageHeaderDisplay") formattedAttachmentsSizeForMessage:message]]; -NSLog(@"AttachmentsDescription = %@", [viewingState attachmentsDescription]); - [viewingState setValue:[message messageBody] forKey:@"mimeBody"]; - [self cacheViewingState:viewingState forMessage:message]; - [self setMessage:message headerOrder:[viewingState headerOrder]]; -#else -// id viewingState = [NSClassFromString(@"MessageHeaderDisplay") copyViewingState:[inViewer viewingState]]; -// id viewingState = [[inViewer viewingState] retain]; - -// [inViewer->headerDisplay displayAttributedString:[MessageHeaderDisplay copyHeadersForMessage:decodedMessage viewingState:viewingState]]; -// [inViewer setMessage:decodedMessage headerOrder:[viewingState headerOrder]]; -// inViewer->_message = [decodedMessage retain]; -// inViewer->textDisplay->messageBody = [decodedMessage messageBody]; -// inViewer->textDisplay->needsSetUp = YES; - [inViewer->headerDisplay setUp]; -// [inViewer->headerDisplay display:[[decodedMessage headers] attributedStringShowingHeaderDetailLevel:[inViewer headerDetailLevel]]]; - [inViewer->headerDisplay displayAttributedString:[[decodedMessage headers] attributedStringShowingHeaderDetailLevel:[inViewer headerDetailLevel]]]; -// [inViewer->textDisplay displayAttributedString:[decodedMessage attributedString]]; -// [MessageHeaderDisplay setUpEncryptionAndSignatureImageForMessage:decodedMessage viewingState:viewingState]; -// [viewingState release]; -// inViewer->_viewingState = viewingState; -// [inViewer setMostRecentHeaderOrder:[viewingState headerOrder]]; -// [viewingState release]; -#endif -#else - [self setMessage:message]; -#endif -#ifndef PANTHER - [self gpgSetMessageWasInFactSigned:isSigned]; - [self gpgSetMessageHasBeenDecrypted:YES]; -#endif - // Now update messageView content - // If we want to add a fade-out effect, we'll need to wait to the fade-out effect - // being done before we call [viewer _loadMessageIntoTextView]. - // Fade-out effect is launched by [viewer fadeToEmpty] - [self reloadCurrentMessage]; -#ifdef PANTHER - [self gpgSetMessageWasInFactSigned:isSigned]; - [self gpgSetMessageHasBeenDecrypted:YES]; -#endif - /* if([[message messageBody] isHTML]){ - _messageWasInFactSigned = isSigned; - _messageHasBeenDecrypted = YES; - [self showFirstAlternative:nil]; - } DOES NOTHING... */ - // Will post MessageWillBeDisplayed notification; we need to call this method anyway, - // to be sure that URLs are parsed by textView and clickable -} - -- (Message *) gpgMessageForAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner -{ - return [self message]; -} - -@end diff --git a/GPGMail/Source/Message+GPGMail.h b/GPGMail/Source/Message+GPGMail.h deleted file mode 100644 index c87fa1b8..00000000 --- a/GPGMail/Source/Message+GPGMail.h +++ /dev/null @@ -1,83 +0,0 @@ -/* Message+GPGMail.h created by stephane on Fri 30-Jun-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - -#import "GPG.subproj/GPGHandler.h" -#import "GPGMailBundle.h" - - -@class NSArray; - - -@interface Message(GPGMail) - -//- (NSArray *) gpgRecipients; -// Returns email addresses of To, CC (but not BCC) - -- (BOOL) gpgIsEncrypted; -- (void) gpgEncryptForRecipients:(NSArray *)recipients trustAllKeys:(BOOL)trustsAllKeys signWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate format:(GPGMailFormat)mailFormat; -// Doesn't encrypt empty messages -// Signs only if key is not nil; passphraseDelegate is necessary only if key is not nil. -// Can raise an exception -//- (Message *) gpgDecryptedMessageWithPassphraseDelegate:(id)passphraseDelegate signature:(GPGSignature **)signature; -- (void) gpgDecryptMessageWithPassphraseDelegate:(id)passphraseDelegate messageSignatures:(NSMutableArray *)messageSignatures; -// Can raise an exception -// Returns a new Message - -- (BOOL) gpgHasSignature; -- (void) gpgSignWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate format:(GPGMailFormat)mailFormat; -// Doesn't sign empty messages -// Can raise an exception -- (GPGSignature *) gpgAuthenticationSignature; -// Can raise an exception -- (GPGSignature *) gpgEmbeddedAuthenticationSignature; -// Can raise an exception -// Must be used for OpenPGP embedded signatures, to avoid some checks - -- (BOOL) gpgIsPGPMIMEMessage; - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -- (GPGSignature *) gpgSignature; -- (void) setGpgIsDecrypting:(BOOL)flag; -- (BOOL) gpgIsDecrypting; -- (void) gpgSetMayClearCachedDecryptedMessageBody:(BOOL)flag; -- (BOOL) gpgMayClearCachedDecryptedMessageBody; -- (NSException *) gpgException; -- (void) setGpgException:(NSException *)exception; -- (NSArray *) gpgMessageSignatures; -- (void) setGpgMessageSignatures:(NSArray *)messageSignatures; -#endif - -- (NSString *) gpgDescription; - -- (NSData *)gpgCurrentFullBodyPartDataAndHeaderDataIfReadilyAvailable:(NSData **)headerDataPtr; -- (void)gpgUpdateCurrentFullBodyPartData:(NSData *)newData; - -@end diff --git a/GPGMail/Source/Message+GPGMail.m b/GPGMail/Source/Message+GPGMail.m deleted file mode 100644 index 2b568765..00000000 --- a/GPGMail/Source/Message+GPGMail.m +++ /dev/null @@ -1,407 +0,0 @@ -/* Message+GPGMail.m created by stephane on Fri 30-Jun-2000 */ - -/* - * Copyright (c) 2000-2008, Stéphane Corthésy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stéphane Corthésy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STÉPHANE CORTHÉSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STÉPHANE CORTHÉSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "Message+GPGMail.h" - -#import "MessageBody+GPGMail.h" -#import "MessageHeaders+GPGMail.h" -#import "GPGMailPatching.h" -#import "NSObject+GPGMail.h" -#import "GPGMessageSignature.h" -#import "MimePart+GPGMail.h" - -#import -#import -#import -#import -#import -#import -#import - -#import - - -@implementation Message(GPGMail) - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -GPG_DECLARE_EXTRA_IVARS(Message) -#endif - -- (BOOL) gpgIsEncrypted -{ -#if 0 - return [[self messageBody] gpgIsEncrypted]; -#else -#warning TEST!!! - // On Panther 7B49, sometimes deadlocks because tries to fetch body twice(?) - // Using -messageBodyIfAvailable seems to solve problem. - // What about decrypting non-cached messages?? - return [[self messageBodyIfAvailable] gpgIsEncrypted]; -#endif -} - -- (void) gpgEncryptForRecipients:(NSArray *)recipients trustAllKeys:(BOOL)trustsAllKeys signWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate format:(GPGMailFormat)mailFormat -{ - // Let's not try to encrypt empty messages. - // Note that signature (if any) has already been appended at this stage. - if([(NSData *)[[self messageBody] rawData] length] > 0){ - NSAutoreleasePool *localAP; - NSMutableData *someData; - Message *dummyMessage; - MutableMessageHeaders *newHeaders = nil; - - NSAssert([[self messageBody] respondsToSelector:@selector(mutableData)], @"### GPGMail: -[Message(GPGMail) gpgEncryptForRecipients:signWithKey:passphraseDelegate:]: Oops, we can no longer use -[MessageBody mutableData]?!"); - - localAP = [[NSAutoreleasePool alloc] init]; - someData = [NSMutableData dataWithData:[[self headers] gpgEncodedHeadersExcludingFromSpace]]; - [someData appendData:[[self messageBody] rawData]]; - // [self messageBody] is an instance of a private class _OutgoingMessageBody. - // We need to work with a MimeBody to be able to sign it correctly, - // that's why we create a new Message from our headers' and body's data. - dummyMessage = [Message messageWithRFC822Data:someData]; - // WARNING: dummyMessage's headers now contain MIME headers, and body contains NO headers! - - @try{ - GPGMailFormat usedFormat = mailFormat; - NSData *encryptedData = [(MessageBody *)[dummyMessage messageBody] gpgEncryptForRecipients:recipients trustAllKeys:trustsAllKeys signWithKey:key passphraseDelegate:passphraseDelegate format:&usedFormat headers:&newHeaders]; // Can raise an exception - - if(usedFormat == GPGOpenPGPMailFormat){ - // FIXME: If we want to localize that description string, we need to encode it with qp or whatever, AND change headers; content-transfer-encoding is currently set to 7bit - NSData *descriptionData = [NSLocalizedStringFromTableInBundle(/*@"MULTIPART_ENCRYPTED_DESCRIPTION"*/@"This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156)", @"GPGMail", [NSBundle bundleForClass:[GPGMailBundle class]], "") dataUsingEncoding:NSASCIIStringEncoding]; - - [someData setData:descriptionData]; - [someData appendData:[@"\r\n" dataUsingEncoding:NSASCIIStringEncoding]]; - [someData appendData:encryptedData]; - } - else - [someData setData:encryptedData]; - }@catch(NSException *localException){ - [localException retain]; - [localAP release]; - [[localException autorelease] raise]; - } -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - [self performSelector:@selector(setMutableHeaders:) withObject:newHeaders]; // OutgoingMessage - [[self messageBody] setRawData:someData]; // No effect on Message data - // We need to recreate the whole raw data, headers + body. - NSMutableData *newRawData = [NSMutableData dataWithData:[newHeaders headerData]]; - [newRawData appendData:someData]; - [[self valueForKey:@"rawData"] setData:newRawData]; // And that works! -#else - [self performSelector:@selector(setMutableHeaders:) withObject:newHeaders]; // OutgoingMessage - [[[self messageBody] performSelector:@selector(mutableData)] setData:someData]; -#endif - [localAP release]; - // Encrypted sent messages are stored in encrypted form. - } - // If message body is empty, we don't encrypt anything, but we accept mail delivery -} - -/*! - * Decrypted body will be set (or not) on output. - * @param messageSignatures On input, must be an empty array. On output, can contain GPGMessageSignature instances. - * @throws GPGException - */ -- (void) gpgDecryptMessageWithPassphraseDelegate:(id)passphraseDelegate messageSignatures:(NSMutableArray *)messageSignatures -{ - NSException *anException; - - NSAssert(![self gpgIsDecrypting], @"May not already be decrypting"); - - @try{ - [self setGpgIsDecrypting:YES]; - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Decrypting..."); -#ifndef SNOW_LEOPARD - [[[self messageBody] topLevelPart] contentsForTextSystem]; // Will force re-evaluation of the decode* methods. Will not raise an exception, because -contentsForTextSystem will catch it! -#else - [[[self messageBody] topLevelPart] gpgBetterDecode]; // Evaluate the decode method matching [part type]. -#endif - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Finished Decrypting"); - [messageSignatures addObjectsFromArray:[self gpgMessageSignatures]]; - } - @catch(NSException *localException){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Failed Decrypting"); - @throw localException; - } - @finally{ - [self setGpgIsDecrypting:NO]; - } - - anException = [self gpgException]; - if(anException != nil) - [anException raise]; -} - -- (void) gpgSignWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate format:(GPGMailFormat)mailFormat -{ - // Let's not try to sign empty messages. Note that signature (if any) has already been appended at this stage. - if([(NSData *)[[self messageBody] rawData] length] > 0){ - NSAutoreleasePool *localAP; - NSMutableData *someData; - Message *dummyMessage; - MutableMessageHeaders *newHeaders = nil; - - NSAssert([[self messageBody] respondsToSelector:@selector(mutableData)], @"### GPGMail: -[Message(GPGMail) gpgSignWithKey:passphraseDelegate:]: Oops, we can no longer use -[MessageBody mutableData]?!"); - - localAP = [[NSAutoreleasePool alloc] init]; - someData = [NSMutableData dataWithData:[[self headers] gpgEncodedHeadersExcludingFromSpace]]; - [someData appendData:[[self messageBody] rawData]]; - // [self messageBody] is an instance of a private class _OutgoingMessageBody. - // We need to work with a MimeBody to be able to sign it correctly, - // that's why we create a new Message from our headers' and body's data. - dummyMessage = [Message messageWithRFC822Data:someData]; - - @try{ - GPGMailFormat usedFormat = mailFormat; - NSData *signedData = [(MessageBody *)[dummyMessage messageBody] gpgSignWithKey:key passphraseDelegate:passphraseDelegate format:&usedFormat headers:&newHeaders]; // Can raise an exception - - if(usedFormat == GPGOpenPGPMailFormat){ - // FIXME: If we want to localize that description string, we need to encode it with qp or whatever, AND change headers; content-transfer-encoding is currently set to 7bit - NSData *descriptionData = [NSLocalizedStringFromTableInBundle(/*@"MULTIPART_SIGNED_DESCRIPTION"*/@"This is an OpenPGP/MIME signed message (RFC 2440 and 3156)", @"GPGMail", [NSBundle bundleForClass:[GPGMailBundle class]], "") dataUsingEncoding:NSASCIIStringEncoding]; - - [someData setData:descriptionData]; -// [someData appendData:[@"\r\n" dataUsingEncoding:NSASCIIStringEncoding]]; - [someData appendData:signedData]; - } - else - [someData setData:signedData]; - }@catch(NSException *localException){ - [localException retain]; - [localAP release]; - [[localException autorelease] raise]; - } -#if 1 -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - [self performSelector:@selector(setMutableHeaders:) withObject:newHeaders]; // OutgoingMessage - [[self messageBody] setRawData:someData]; // No effect on Message data - // We need to recreate the whole raw data, headers + body. - NSMutableData *newRawData = [NSMutableData dataWithData:[newHeaders headerData]]; - [newRawData appendData:someData]; - [[self valueForKey:@"rawData"] setData:newRawData]; // And that works! -#else - [self performSelector:@selector(setMutableHeaders:) withObject:newHeaders]; // OutgoingMessage - [[[self messageBody] performSelector:@selector(mutableData)] setData:someData]; -#endif -#else - // Q: what did I try here??? -// [[self messageBody] flushEncodedBodyCache]; // Flush old data before modifying message => will recreate headers (warning: do not do it before!!) - [[[self messageBody] performSelector:@selector(mutableData)] setData:someData]; - [self setHeaders:[dummyMessage headers]]; - [[self headers] setMessage:self]; // Needed! - (void)[[self messageBody] rawData]; // NEEDED! - [self setHeaders:[dummyMessage headers]]; - [[self headers] setMessage:self]; // Needed! -#endif - [localAP release]; - } - // If message body is empty, we don't sign anything, but we accept mail delivery -} - -- (BOOL) gpgHasSignature -{ - return [[self messageBody] gpgHasSignature]; -} - -/*! - * @throws GPGException - */ -- (GPGSignature *) gpgAuthenticationSignature -{ - GPGSignature *aSignature = [[self messageBody] gpgAuthenticationSignature]; // Can raise an exception - - // No immediate effect, but OK after mailbox has been closed and reopened? - //#warning TEST update of messageStore - [[self messageStore] setNumberOfAttachments:[[[self messageBody] attachments] count] isSigned:(aSignature != nil && [aSignature validityError] == GPGErrorNoError) isEncrypted:NO forMessage:self]; - // TESTME: -// [[self messageStore] messageFlagsDidChange:self flags:]; -// [[self messageStore] setFlag:state:forMessage:self]; - - return aSignature; -} - -/*! DEPRECATED */ -- (GPGSignature *) gpgEmbeddedAuthenticationSignature -{ - return [[self messageBody] gpgEmbeddedAuthenticationSignature]; // Can raise an exception -} - -/*! DEPRECATED */ -- (BOOL) gpgIsPGPMIMEMessage -{ - return [[self messageBody] gpgIsPGPMIMEMessage]; -} - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -+ (void) load -{ - [self gpgInitExtraIvars]; -} - -- (NSArray *) gpgMessageSignatures -{ - return GPG_GET_EXTRA_IVAR(@"messageSignatures"); -} - -- (void) setGpgMessageSignatures:(NSArray *)messageSignatures -{ - GPG_SET_EXTRA_IVAR(messageSignatures, @"messageSignatures"); -} - -/*! - * @result Signature covering whole message, or nil when no signature, or signature(s) covering only part of the message - */ -- (GPGSignature *) gpgSignature -{ - NSEnumerator *msgSigEnum = [[self gpgMessageSignatures] objectEnumerator]; - GPGMessageSignature *eachMsgSig; - - while(eachMsgSig = [msgSigEnum nextObject]) - if([eachMsgSig coversWholeMessage]) - return [eachMsgSig signature]; - return nil; -} - -- (NSException *) gpgException -{ - NSException *cachedException; - - cachedException = GPG_GET_EXTRA_IVAR(@"exception"); - - return cachedException; -} - -- (void) setGpgException:(NSException *)exception -{ - GPG_SET_EXTRA_IVAR(exception, @"exception"); -} - -#warning FIXME: LEOPARD -/* -- (id)pgpDecryptedMessageBody -{ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - // See -[MimePart(PGPMail) _pgpDecodePGP] for an explanation - const PGPMailDecodeOptions *ioOptionsPtr = [self pgpDecodeOptions]; - MessageBody *messageBody = ((ioOptionsPtr != NULL && ioOptionsPtr->mDecryptedMessageBody != nil) ? ioOptionsPtr->mDecryptedMessageBody : [[(MimeBody *)[self messageBody] topLevelPart] decryptedMessageBodyIsEncrypted:NULL isSigned:NULL]); -#else - MessageBody *messageBody = [[(MimeBody *)[self messageBody] topLevelPart] decryptedMessageBody]; -#endif - - return messageBody; -} -*/ - -- (void) setGpgIsDecrypting:(BOOL)flag -{ - if(!flag){ - [[(MimeBody *)[self messageBody] topLevelPart] resetGpgCache]; - GPG_SET_EXTRA_IVAR(nil, @"fullBodyData"); - GPG_SET_EXTRA_IVAR(nil, @"headerData"); - } - GPG_SET_EXTRA_IVAR([NSNumber numberWithBool:flag], @"isDecrypting"); -} - -- (BOOL) gpgIsDecrypting -{ - return [GPG_GET_EXTRA_IVAR(@"isDecrypting") boolValue]; -} - -- (void) gpgSetMayClearCachedDecryptedMessageBody:(BOOL)flag -{ - GPG_SET_EXTRA_IVAR([NSNumber numberWithBool:!flag], @"lockCache"); -} - -- (BOOL) gpgMayClearCachedDecryptedMessageBody -{ - return ![GPG_GET_EXTRA_IVAR(@"lockCache") boolValue]; -} - -#endif - -- (NSString *) gpgDescription -{ - // See http://www.livejournal.com/users/jwz/505711.html - return [[self description] stringByAppendingFormat:@" _messageFlags = 0x%0x (priority:%d%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@)", - _messageFlags, - ((_messageFlags & 0x007F0000) >> 16), - ((_messageFlags & 0x00000001) ? @", read":@""), - ((_messageFlags & 0x00000002) ? @", deleted":@""), - ((_messageFlags & 0x00000004) ? @", answered":@""), - ((_messageFlags & 0x00000008) ? @", encrypted":@""), - ((_messageFlags & 0x00000010) ? @", flagged":@""), - ((_messageFlags & 0x00000020) ? @", recent":@""), - ((_messageFlags & 0x00000040) ? @", draft":@""), - ((_messageFlags & 0x00000080) ? @", initial":@""), /* no longer used */ - ((_messageFlags & 0x00000100) ? @", forwarded":@""), - ((_messageFlags & 0x00000200) ? @", redirected":@""), - ((_messageFlags & 0x00800000) ? @", signed":@""), - ((_messageFlags & 0x01000000) ? @", is junk":@""), - ((_messageFlags & 0x02000000) ? @", is not junk":@""), - ((_messageFlags & 0x20000000) ? @", junk mail level recorded":@""), - ((_messageFlags & 0x0000FC00) ? [NSString stringWithFormat:@", # attachments: %d", ((_messageFlags & 0x0000FC00) >> 10)]:@""), - ((_messageFlags & 0x1C000000) ? [NSString stringWithFormat:@", font size delta: %d", ((_messageFlags & 0x1C000000) >> 26)]:@""), - ((_messageFlags & 0x40000000) ? @", highlight text in toc":@""), - ((_messageFlags & 0x80000000) ? @", u31":@"") - ]; -} - -/* - * When decrypting multiple encrypted parts, we need to have an up-to-date - * fullBodyData. - */ -- (NSData *)gpgCurrentFullBodyPartDataAndHeaderDataIfReadilyAvailable:(NSData **)headerDataPtr -{ - NSData *cachedData = GPG_GET_EXTRA_IVAR(@"fullBodyData"); - - if(cachedData == nil){ - cachedData = [[self messageStore] fullBodyDataForMessage:self andHeaderDataIfReadilyAvailable:headerDataPtr]; - GPG_SET_EXTRA_IVAR(cachedData, @"fullBodyData"); - GPG_SET_EXTRA_IVAR(*headerDataPtr, @"headerData"); - } - else - *headerDataPtr = GPG_GET_EXTRA_IVAR(@"headerData"); - - return cachedData; -} - -- (void)gpgUpdateCurrentFullBodyPartData:(NSData *)newData -{ - GPG_SET_EXTRA_IVAR(newData, @"fullBodyData"); -} - -@end - -/* - when decrypting a message, create a NSDataMessageStore initialized with decrypted data(?); - messageStore will be dealloc'd when the decrypted/encrypted(?) will be dealloc'd - - */ diff --git a/GPGMail/Source/MessageBody+GPGMail.h b/GPGMail/Source/MessageBody+GPGMail.h deleted file mode 100644 index f1c0395a..00000000 --- a/GPGMail/Source/MessageBody+GPGMail.h +++ /dev/null @@ -1,79 +0,0 @@ -/* MessageBody+GPGMail.h created by dave on Thu 02-Nov-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - -#import "GPGMailBundle.h" -#import "GPG.subproj/GPGHandler.h" - - -@class MessageHeaders; -@class MutableMessageHeaders; - - -/* - This class is no longer a concrete class on MacOS X 10.1; it is now totally abstract (no instance created). - Messages have all MimeBody bodies, sometimes with type/subtype = nil/nil. -*/ - - -extern NSString *GPGMailHeaderKey; - - -@interface MessageBody(GPGMail) - -- (NSData *) gpgEncryptForRecipients:(NSArray *)recipients trustAllKeys:(BOOL)trustsAllKeys signWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate format:(GPGMailFormat *)mailFormatPtr headers:(MutableMessageHeaders **)headersPtr; -// Signs only if key is not nil; passphraseDelegate is necessary only if key is not nil. -// Can raise an exception - -- (NSData *) gpgSignWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate format:(GPGMailFormat *)mailFormatPtr headers:(MutableMessageHeaders **)headersPtr; -// Can raise an exception - -- (BOOL) gpgIsEncrypted; - -- (MessageBody *) gpgDecryptedBodyWithPassphraseDelegate:(id)passphraseDelegate signatures:(NSArray **)signaturesPtr headers:(MessageHeaders **)decryptedMessageHeaders; -// Can raises an exception; test first with -gpgIsEncrypted - -- (BOOL) gpgHasSignature; - -- (GPGSignature *) gpgAuthenticationSignature; -// Raises an exception if message does not contain a signature; test first with -gpgHasSignature -// Returns nil if no authenticated signature has been found -- (GPGSignature *) gpgEmbeddedAuthenticationSignature; -// Can raise an exception -// Must be used for OpenPGP embedded signatures, to avoid some checks -// In MessageBody, same implementation as -gpgAuthenticationSignature -- (GPGSignature *) gpgAuthenticationSignatureFromData:(NSData *)data; -// Used by -[MimeBody(GPGMail) gpgAuthenticationSignature] - -- (BOOL) gpgIsPGPMIMEMessage; - -- (NSData *)gpgRawData; - -@end diff --git a/GPGMail/Source/MessageBody+GPGMail.m b/GPGMail/Source/MessageBody+GPGMail.m deleted file mode 100644 index cfa267da..00000000 --- a/GPGMail/Source/MessageBody+GPGMail.m +++ /dev/null @@ -1,293 +0,0 @@ -/* MessageBody+GPGMail.m created by dave on Thu 02-Nov-2000 */ - -/* - * Copyright (c) 2000-2008, Stéphane Corthésy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stéphane Corthésy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STÉPHANE CORTHÉSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STÉPHANE CORTHÉSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "MessageBody+GPGMail.h" -#import "NSData+GPGMail.h" -#import "NSString+GPGMail.h" -#import "GPGMailBundle.h" - -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import - -#import - - -/* - * Read messages always have MimeBodies, even if they are plain text messages. - * New messages have a _OutgoingMessageBody - * There is no instance of MessageBody, ever(?). - */ - -NSString *GPGMailHeaderKey = @"X-PGP-Agent"; - -@implementation MessageBody(GPGMail) - -- (void) gpgSetEncodedBody:(NSData *)data -{ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - // Hopefully not necessary to play with cache -#else - if([[self message] messageStore]) - [((MessageStore *)[[self message] messageStore])->_bodyDataCache setObject:data forKey:[self message]]; - else{ - NSLog(@"### GPGMail: Unable to modify encodedBody"); - } -#endif -} - -- (NSData *) gpgEncryptForRecipients:(NSArray *)recipients trustAllKeys:(BOOL)trustsAllKeys signWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate format:(GPGMailFormat *)mailFormatPtr headers:(MutableMessageHeaders **)headersPtr -{ - // For text/plain messages, we encrypt/sign displayed text, not encoded (raw) text, - // and THEN we apply quoted-printable/base64, for example. Thus encrypted/signed data - // can be 8bit data. - // This way users can sign/verify displayed text (that's how most plug-ins work, I guess) - NSData *modifiedData = nil, *dataToModify = [self gpgRawData]; - BOOL usesQuotedPrintable = NO, usedQuotedPrintable = NO; - BOOL usesBase64 = NO, usedBase64 = NO; - CFStringEncoding newEncoding, originalEncoding; - MutableMessageHeaders *newHeaders; - GPGContext *aContext; - GPGData *inputData; - // IMPORTANT: for encrypted messages, we no longer keep the original - // content-transfer-encoding, because PGP7 plug-in uses encoded data when decrypting, - // and fails to, when content-transfer-encoding is not 7bit! - BOOL keepsOriginalContentTransferEncoding = (recipients == nil); - BOOL useCRLF = [[NSUserDefaults standardUserDefaults] boolForKey:@"GPGUsesAlwaysCRLF"]; - - NSAssert1([dataToModify length] > 0, @"### %s: No data to encrypt/sign!", __PRETTY_FUNCTION__); - - // If message contains non-ASCII chars, it (normally) should have been quoted-printable'd - // or base64'd. - // Thus we need to decode it, encrypt/sign it, and requote it. - usedQuotedPrintable = [[(MessageHeaders *)[[self message] headers] firstHeaderForKey:@"content-transfer-encoding"] isEqualToString:@"quoted-printable"]; - if(usedQuotedPrintable) - dataToModify = [dataToModify decodeQuotedPrintableForText:YES]; - else{ - usedBase64 = [[(MessageHeaders *)[[self message] headers] firstHeaderForKey:@"content-transfer-encoding"] isEqualToString:@"base64"]; - if(usedBase64) - dataToModify = [dataToModify decodeBase64]; - } - -// if(key != nil) - if(useCRLF) - dataToModify = [dataToModify gpgStandardizedEOLsToCRLF]; - else - dataToModify = [dataToModify gpgStandardizedEOLsToLF]; // Let's standardize end-of-lines; we use LF end-of-line, because other mailers interpret CRLF as end-of-line + empty line (CR) - - newEncoding = originalEncoding = [[(MimeBody *)self topLevelPart] textEncoding]; - - dataToModify = [GPGHandler convertedStringData:dataToModify fromEncoding:originalEncoding toEncoding:&newEncoding]; - if(key != nil && recipients == nil){ - NSString *formatParam = [[(MimeBody *)self topLevelPart] bodyParameterForKey:@"format"]; - - if([formatParam isEqualToString:@"flowed"]){ - // With format=flowed, a space at the end of a line means "line goes on next line", except when line is "-- ". - // Mail does its job correctly by removing all other trailing spaces, but after a message has been signed, - // the exception line '-- ' has been transformed into '- -- ', and the exception is no longer an exception! - // In consequence, MUA will display the line following the '- -- ' line on the same line (flowed), what is wrong. - // To avoid that we replace the '-- ' lines by '--', and they will be transformed by gpg into '- --', what is correct. - // We can't, AFAIK, keep the trailing space in the usenet sig separator without breaking something; this can only be done - // with OpenPGP/MIME which can escape the trailing space using quoted-printable, for example. - dataToModify = [dataToModify gpgFormatFlowedFixedWithCRLF:useCRLF useQP:NO]; - } - } - - aContext = [[GPGContext alloc] init]; - [aContext setPassphraseDelegate:passphraseDelegate]; - [aContext setUsesArmor:YES]; - [aContext setUsesTextMode:YES]; - if(key != nil) - [aContext addSignerKey:key]; - inputData = [[GPGData alloc] initWithData:dataToModify]; - if(GPGMailLoggingLevel & GPGMailDebug_SaveInputDataMask){ - NSString *filename = [NSTemporaryDirectory() stringByAppendingPathComponent:[[[NSProcessInfo processInfo] globallyUniqueString] stringByAppendingPathExtension:@"txt"]]; - - if([dataToModify writeToFile:filename atomically:NO]) - NSLog(@"[DEBUG] Data to encrypt/sign in %@", filename); - else - NSLog(@"[DEBUG] FAILED to write data to encrypt/sign in %@", filename); - } - - @try{ - GPGData *outputData; - -#warning Use newEncoding! - if(recipients != nil){ - if(key != nil) -#warning Use also encapsulated signature! - outputData = [aContext encryptedSignedData:inputData withKeys:recipients trustAllKeys:trustsAllKeys /*encoding:newEncoding*/]; - else{ - outputData = [aContext encryptedData:inputData withKeys:recipients trustAllKeys:trustsAllKeys /*encoding:newEncoding*/]; - } - } - else{ - if(key != nil) - outputData = [aContext signedData:inputData signatureMode:GPGSignatureModeClear /*encoding:newEncoding*/]; - else{ - // Symetric encryption - outputData = [aContext encryptedData:inputData /*encoding:newEncoding*/]; - } - } - modifiedData = [[[outputData data] retain] autorelease]; // Because context will be freed -// [NSException raise:GPGException format:@"%@", NSLocalizedStringFromTableInBundle(@"UNTRUSTED RECIPIENTS", @"GPGMail", [NSBundle bundleForClass:[GPGMailBundle class]], "")]; - }@catch(NSException *localException){ - [inputData release]; - [aContext release]; - [localException raise]; - } - [inputData release]; - [aContext release]; - - // We must convert to quoted-printable/base64 AFTER having - // encrypted the message (that's what do other MUAs). -#warning If PGP block contains non-ASCII chars, we MUST keep original content-transfer-encoding! -#warning How could we know that we should use base64 now? (based on PGP sig comments...) - if(keepsOriginalContentTransferEncoding && usedBase64){ - modifiedData = [modifiedData encodeBase64]; - usesBase64 = YES; - } -#warning TESTME: now we always force using quoted-printable - else /*if([modifiedData gpgContainsNonASCIICharacter] || (keepsOriginalContentTransferEncoding && usedQuotedPrintable))*/{ - // If body contains non-ASCII character, we need to use quoted-printable - // characters, as non-ASCII characters could be modified by some MTA - // and invalidate the signature. - modifiedData = [modifiedData encodeQuotedPrintableForText:YES]; - usesQuotedPrintable = YES; -// NSLog(@"$$$ FORCING QUOTED-PRINTABLE $$$"); - } - - [self gpgSetEncodedBody:modifiedData]; // Replace current encrypted data; this modification IS persistent (i.e. saved in mailbox) - // Let's also modify the headers to create a basic MIME - // message with quoted-printable/base64 (if needed) and appropriate character set. - newHeaders = [[[self message] headers] mutableCopy]; - -/* if(!keepsOriginalContentTransferEncoding) - [newHeaders setHeader:@"7bit" forKey:@"content-transfer-encoding"]; - else*/ if(usesQuotedPrintable && !usedQuotedPrintable) - [newHeaders setHeader:@"quoted-printable" forKey:@"content-transfer-encoding"]; - else if(usesBase64 && !usedBase64) - [newHeaders setHeader:@"base64" forKey:@"content-transfer-encoding"]; - if(newEncoding != originalEncoding){ - // Let's replace only the charset -#warning TODO: for encrypted messages, pass charset in PGP block (instead?) - NSMutableString *newContentType = [NSMutableString stringWithString:[newHeaders firstHeaderForKey:@"content-type"]]; - NSString *charset = [[(MimeBody *)self topLevelPart] bodyParameterForKey:@"charset"]; - NSRange charsetRange = [newContentType rangeOfString:charset]; - - NSAssert2(charsetRange.location != NSNotFound, @"### -[MessageBody(GPGMail) gpgEncryptForRecipients:signWithKey:passphraseDelegate:]: unable to find charset '%@' in '%@'", charset, newContentType); - [newContentType replaceCharactersInRange:charsetRange withString:(NSString *)CFStringConvertEncodingToIANACharSetName(newEncoding)]; - [newHeaders setHeader:newContentType forKey:@"content-type"]; - } - if([[GPGMailBundle sharedInstance] addsCustomHeaders]) - [newHeaders setHeader:[@"GPGMail " stringByAppendingString:[(GPGMailBundle *)[GPGMailBundle sharedInstance] version]] forKey:GPGMailHeaderKey]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - newHeaders = [[MutableMessageHeaders alloc] initWithHeaderData:[[newHeaders autorelease] encodedHeadersIncludingFromSpace:NO] encoding:[newHeaders preferredEncoding]]; // Needed, to ensure _data ivar is updated -#endif - if(headersPtr != NULL) - *headersPtr = newHeaders; - [newHeaders autorelease]; - - return modifiedData; -} - -- (NSData *) gpgSignWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate format:(GPGMailFormat *)mailFormatPtr headers:(MutableMessageHeaders **)headersPtr -{ - return [self gpgEncryptForRecipients:nil trustAllKeys:YES signWithKey:key passphraseDelegate:passphraseDelegate format:mailFormatPtr headers:headersPtr]; -} - -- (BOOL) gpgIsEncrypted -{ - // This method is not used, because all messageBodies are MimeBody instances - [NSException raise:NSGenericException format:@"### GPGMail: %s: unexpected case!", __PRETTY_FUNCTION__]; - return NO; -} - -- (MessageBody *) gpgDecryptedBodyWithPassphraseDelegate:(id)passphraseDelegate signatures:(NSArray **)signaturesPtr headers:(MessageHeaders **)decryptedMessageHeaders -{ - // This method is not used, because all messageBodies are MimeBody instances - [NSException raise:NSGenericException format:@"### GPGMail: %s: unexpected case!", __PRETTY_FUNCTION__]; - return nil; -} - -- (NSRange) _gpgSignedRange -{ - // This method is not used, because all messageBodies are MimeBody instances - [NSException raise:NSGenericException format:@"### GPGMail: %s: unexpected case!", __PRETTY_FUNCTION__]; - return NSMakeRange(NSNotFound, 0); -} - -- (BOOL) gpgHasSignature -{ - // This method is not used, because all messageBodies are MimeBody instances - [NSException raise:NSGenericException format:@"### GPGMail: %s: unexpected case!", __PRETTY_FUNCTION__]; - return NO; -} - -- (GPGSignature *) gpgAuthenticationSignatureFromData:(NSData *)data -{ - // This method is not used, because all messageBodies are MimeBody instances - [NSException raise:NSGenericException format:@"### GPGMail: %s: unexpected case!", __PRETTY_FUNCTION__]; - return nil; -} - -- (GPGSignature *) gpgAuthenticationSignature -{ - // This method is not used, because all messageBodies are MimeBody instances - [NSException raise:NSGenericException format:@"### GPGMail: %s: unexpected case!", __PRETTY_FUNCTION__]; - return nil; -} - -- (GPGSignature *) gpgEmbeddedAuthenticationSignature -{ - return [self gpgAuthenticationSignature]; -} - -- (BOOL) gpgIsPGPMIMEMessage -{ - return NO; -} - -- (NSData *)gpgRawData -{ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - return [[[self message] messageStore] bodyDataForMessage:[self message]]; // Always returns new instance -#else - return [self rawData]; -#endif -} - -@end diff --git a/GPGMail/Source/MessageContentController+GPGMail.h b/GPGMail/Source/MessageContentController+GPGMail.h deleted file mode 100644 index 5c67dc9a..00000000 --- a/GPGMail/Source/MessageContentController+GPGMail.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - - -@class GPGMessageViewerAccessoryViewOwner; - -#ifdef SNOW_LEOPARD_64 -@interface GPGMail_MessageContentController : NSObject -#else -@interface MessageContentController(GPGMail) -#endif - -- (Message *) gpgMessage; - -- (void) gpgShowPGPSignatureBanner; -- (void) gpgShowPGPEncryptedBanner; -- (void) gpgHideBanner; - -- (BOOL) gpgValidateAction:(SEL)anAction; - - // Actions connected to menus -- (IBAction) gpgDecrypt:(id)sender; -- (IBAction) gpgAuthenticate:(id)sender; - -- (void) gpgForwardAction:(SEL)action from:(id)sender; - -- (GPGMessageViewerAccessoryViewOwner *) gpgMessageViewerAccessoryViewOwner; - -@end diff --git a/GPGMail/Source/MessageContentController+GPGMail.m b/GPGMail/Source/MessageContentController+GPGMail.m deleted file mode 100644 index d6b76333..00000000 --- a/GPGMail/Source/MessageContentController+GPGMail.m +++ /dev/null @@ -1,790 +0,0 @@ -/* - * Copyright (c) 2000-2008, Stéphane Corthésy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stéphane Corthésy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STÉPHANE CORTHÉSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STÉPHANE CORTHÉSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "MessageContentController+GPGMail.h" -#import "GPGMessageViewerAccessoryViewOwner.h" -#import "GPGMailBundle.h" -#import "GPGMailPatching.h" -#import "NSObject+GPGMail.h" -#import -#import -#import -#import -#import "GPGMailPatching.h" -#import -#import -#import - - -NSString *MessageContentControllerName = @"MessageContentController"; - -#ifdef SNOW_LEOPARD_64 -@implementation GPGMail_MessageContentController : NSObject -#else - -@interface MessageContentController(GPGMailPrivate) -- (BOOL) _gpgBannerIsShown; -@end - -@implementation MessageContentController(GPGMail) -#endif - -GPG_DECLARE_EXTRA_IVARS(MessageContentControllerName) - -// Posing no longer works correctly on 10.3, that's why we only overload single methods -static IMP MessageContentController__updateDisplay = NULL; -static IMP MessageContentController_validateMenuItem = NULL; -static IMP MessageContentController_setMessage_headerOrder = NULL; -static IMP MessageContentController__setMessage_headerOrder = NULL; -static IMP MessageContentController_fadeToEmpty = NULL; - - -+ (void) load -{ - [self gpgInitExtraIvars]; - MessageContentController__updateDisplay = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(_updateDisplay), NSClassFromString(@"MessageContentController"), @selector(gpg_updateDisplay), [self class]); - MessageContentController_validateMenuItem = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(validateMenuItem:), NSClassFromString(@"MessageContentController"), @selector(gpgValidateMenuItem:), [self class]); - MessageContentController_setMessage_headerOrder = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(setMessage:headerOrder:), NSClassFromString(@"MessageContentController"), @selector(gpgSetMessage:headerOrder:), [self class]); - MessageContentController__setMessage_headerOrder = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(_setMessage:headerOrder:), NSClassFromString(@"MessageContentController"), @selector(gpg_setMessage:headerOrder:), [self class]); - MessageContentController_fadeToEmpty = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(fadeToEmpty), NSClassFromString(@"MessageContentController"), @selector(gpgFadeToEmpty), [self class]); -} - -- (BOOL) gpgMessageWasInFactSigned -{ - NSNumber *aBoolValue = GPG_GET_EXTRA_IVAR(@"messageWasInFactSigned"); - - return (aBoolValue != nil ? [aBoolValue boolValue]:NO); -} - -- (void) gpgSetMessageWasInFactSigned:(BOOL)flag -{ - GPG_SET_EXTRA_IVAR([NSNumber numberWithBool:flag], @"messageWasInFactSigned"); -} - -- (BOOL) gpgMessageHasBeenDecrypted -{ - NSNumber *aBoolValue = GPG_GET_EXTRA_IVAR(@"messageHasBeenDecrypted"); - - return (aBoolValue != nil ? [aBoolValue boolValue]:NO); -} - -- (void) gpgSetMessageHasBeenDecrypted:(BOOL)flag -{ - GPG_SET_EXTRA_IVAR([NSNumber numberWithBool:flag], @"messageHasBeenDecrypted"); - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s %@", __PRETTY_FUNCTION__, flag ? @"YES":@"NO"); -} - -- (BOOL) gpgMessageReadStatusHasChanged -{ - NSNumber *aBoolValue = GPG_GET_EXTRA_IVAR(@"messageReadStatusHasChanged"); - - return (aBoolValue != nil ? [aBoolValue boolValue]:NO); -} - -- (void) gpgSetMessageReadStatusHasChanged:(BOOL)flag -{ - GPG_SET_EXTRA_IVAR([NSNumber numberWithBool:flag], @"messageReadStatusHasChanged"); - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s %@", __PRETTY_FUNCTION__, flag ? @"YES":@"NO"); -} - -- (BOOL) gpgDoNotResetFlags -{ - NSNumber *aBoolValue = GPG_GET_EXTRA_IVAR(@"doNotResetFlags"); - - return (aBoolValue != nil ? [aBoolValue boolValue]:NO); -} - -- (void) gpgSetDoNotResetFlags:(BOOL)flag -{ - GPG_SET_EXTRA_IVAR([NSNumber numberWithBool:flag], @"doNotResetFlags"); - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s %@", __PRETTY_FUNCTION__, flag ? @"YES":@"NO"); -} - -#warning FIXME: That method is invoked in another thread! -> Observe notif all along object life -- (void) gpgMessageStoreMessageFlagsChanged:(NSNotification *)notification -{ - if([[[[notification userInfo] objectForKey:@"flags"] objectForKey:@"MessageIsRead"] isEqualToString:@"YES"]){ - NSEnumerator *anEnum = [[[notification userInfo] objectForKey:@"messages"] objectEnumerator]; - Message *aMessage; - Message *myMessage = [self message]; - - while(aMessage = [anEnum nextObject]){ - if(aMessage == myMessage){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s", __PRETTY_FUNCTION__); - [self gpgSetMessageReadStatusHasChanged:YES]; - break; - } - } - } -} - -- (void) gpgFadeToEmpty -{ - if([GPGMailBundle gpgMailWorks]){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s", __PRETTY_FUNCTION__); - if(YES/* && ![self gpgDoNotResetFlags]*/) - [self gpgHideBanner]; - } - ((void (*)(id, SEL))MessageContentController_fadeToEmpty)(self, _cmd); -} - -- (void) gpg_updateDisplay // FIXME: LEOPARD Delayed invocation (from other thread) after decryption -> hides again! -{ - if(![GPGMailBundle gpgMailWorks]){ - ((void (*)(id, SEL))MessageContentController__updateDisplay)(self, _cmd); // will change message flags, if necessary - return; - } - - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s", __PRETTY_FUNCTION__); - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - Message *aMessage = [self message]; - BOOL shouldAuthenticate = NO; - BOOL shouldDecrypt = NO; - BOOL compareFlags = ([aMessage messageStore] != nil && (([mailBundle decryptsMessagesAutomatically] && [mailBundle decryptsOnlyUnreadMessagesAutomatically]) || ([mailBundle authenticatesMessagesAutomatically] && [mailBundle authenticatesOnlyUnreadMessagesAutomatically]))); - BOOL readStatusChanged = NO; - // NSView *originalCertifBanner = [certificateView retain]; - - [[self gpgMessageViewerAccessoryViewOwner] messageChanged:aMessage]; - if(compareFlags){ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - [self gpgSetMessageReadStatusHasChanged:([aMessage messageFlags] & 0x00000001) == 0]; // We check once if message is marked as unread; we will set it as read ourselves, as sometimes Mail does it only asynchronously - // Since Tiger, MessageStoreMessageFlagsChanged poster is no longer message's messageStore; and flag change is sometimes done async -#else - [self gpgSetMessageReadStatusHasChanged:NO]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(gpgMessageStoreMessageFlagsChanged:) name:@"MessageStoreMessageFlagsChanged" object:[aMessage messageStore]]; -#endif - } - - //[super _updateDisplay]; -#if 0 - if(aMessage == nil){ - [self gpgHideBanner]; - } - else if([aMessage gpgIsEncrypted]){ // Do not get cached status from accessoryViewOwner, because it is not yet up-to-date! - [self gpgShowPGPEncryptedBanner]; - if([mailBundle decryptsMessagesAutomatically]) - shouldDecrypt = YES; - } - else if([self gpgMessageWasInFactSigned]){ - [self gpgShowPGPSignatureBanner]; - if(/*![self gpgDoNotResetFlags]*/YES){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] MessageWasInFactSigned"); - [self gpgSetMessageWasInFactSigned:NO]; - [self gpgSetMessageHasBeenDecrypted:NO]; - } - } - else if([self gpgMessageHasBeenDecrypted]){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] MessageHasBeenDecrypted"); - [self gpgShowPGPEncryptedBanner]; - [self gpgSetMessageHasBeenDecrypted:NO]; - if([mailBundle authenticatesMessagesAutomatically]) - shouldAuthenticate = YES; - } - else{ - [self gpgHideBanner]; - } -#else - if(aMessage == nil){ - [self gpgHideBanner]; - } - else if([self gpgMessageWasInFactSigned]){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] MessageWasInFactSigned"); - [self gpgShowPGPSignatureBanner]; - } - else if([self gpgMessageHasBeenDecrypted]){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] MessageHasBeenDecrypted"); - [self gpgShowPGPEncryptedBanner]; -/* [self gpgSetMessageHasBeenDecrypted:NO]; - if([mailBundle authenticatesMessagesAutomatically]) - shouldAuthenticate = YES;*/ - } - else if([aMessage gpgIsEncrypted]){ // Do not get cached status from accessoryViewOwner, because it is not yet up-to-date! - [self gpgShowPGPEncryptedBanner]; - if([mailBundle decryptsMessagesAutomatically]) - shouldDecrypt = YES; - } - else if([aMessage gpgHasSignature]){ // Do not get cached status from accessoryViewOwner, because it is not yet up-to-date! - [self gpgShowPGPSignatureBanner]; - if([mailBundle authenticatesMessagesAutomatically]) - shouldAuthenticate = YES; - } - else{ - [self gpgHideBanner]; - } -#endif - - ((void (*)(id, SEL))MessageContentController__updateDisplay)(self, _cmd); // will change message flags, if necessary - - if(compareFlags){ - readStatusChanged = [self gpgMessageReadStatusHasChanged]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - // Ensure 'read' flag has been set... - if(!([aMessage messageFlags] & 0x00000001)){ -#warning CHECK Is this here that we cause problems with the read status?? -#ifdef SNOW_LEOPARD - [aMessage setMessageFlags:[aMessage messageFlags] mask:0x00000001]; -#else - [aMessage setMessageFlags:[aMessage messageFlags] | 0x00000001]; -#endif - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Changed messageFlags"); - } -#else - [[NSNotificationCenter defaultCenter] removeObserver:self name:@"MessageStoreMessageFlagsChanged" object:[aMessage messageStore]]; -#endif - } - - [NSRunLoop cancelPreviousPerformRequestsWithTarget:self selector:@selector(gpgAuthenticate:) object:nil]; - [NSRunLoop cancelPreviousPerformRequestsWithTarget:self selector:@selector(gpgDecrypt:) object:nil]; - if(shouldAuthenticate && (![mailBundle authenticatesOnlyUnreadMessagesAutomatically] || readStatusChanged)){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Delaying verification"); - [self performSelector:@selector(gpgAuthenticate:) withObject:nil afterDelay:0.]; - } - else if(shouldDecrypt && (![mailBundle decryptsOnlyUnreadMessagesAutomatically] || readStatusChanged)){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Delaying decryption"); - [self performSelector:@selector(gpgDecrypt:) withObject:nil afterDelay:0.]; - } - // if(originalCertifBanner){ - // certificateView = originalCertifBanner; - //// [self setCertificateView:originalCertifBanner]; // Has side-effects: resets other attributes - // [originalCertifBanner release]; - // } -} - -- (void) gpgForwardAction:(SEL)action from:(id)sender -{ - id target = [self gpgMessageViewerAccessoryViewOwner]; - - if(target && [target respondsToSelector:action]) - [target performSelector:action withObject:sender]; -} - -- (IBAction) gpgDecrypt:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgAuthenticate:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (BOOL) gpgValidateAction:(SEL)anAction -{ - if(anAction == @selector(gpgDecrypt:) || anAction == @selector(gpgAuthenticate:)){ - id target = [self gpgMessageViewerAccessoryViewOwner]; - - if(target && [target respondsToSelector:anAction]) - return [target gpgValidateAction:anAction]; - } - - return NO; -} - -- (BOOL) gpgValidateMenuItem:(NSMenuItem *)menuItem -{ - SEL anAction = [menuItem action]; - - if(anAction == @selector(gpgDecrypt:) || anAction == @selector(gpgAuthenticate:)){ - return [self gpgValidateAction:anAction]; - } - - return ((BOOL (*)(id, SEL, id))MessageContentController_validateMenuItem)(self, _cmd, menuItem); -} -/* - - (void)viewSource:fp12 - { - NSLog(@"WILL viewSource:%@", fp12); - [super viewSource:fp12]; - NSLog(@"DID viewSource:"); - } - - - (void)reloadCurrentMessage - { - NSLog(@"WILL reloadCurrentMessage"); - [super reloadCurrentMessage]; - NSLog(@"DID reloadCurrentMessage"); - } - */ - -- (void)gpgSetMessage:fp8 headerOrder:fp12 -{ - if([GPGMailBundle gpgMailWorks]){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s %@", __PRETTY_FUNCTION__, fp8); - // if(/*![self gpgDoNotResetFlags]*/YES){ - if(fp8 == nil || fp8 != [self message]){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Message changed"); - [self gpgSetMessageWasInFactSigned:NO]; - [self gpgSetMessageHasBeenDecrypted:NO]; - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Reset WasInFactSigned and HasBeenDecrypted"); - } - } - ((void (*)(id, SEL, id, id))MessageContentController_setMessage_headerOrder)(self, _cmd, fp8, fp12); -} - -- (void)gpg_setMessage:fp8 headerOrder:fp12 -{ - if([GPGMailBundle gpgMailWorks]){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s %@", __PRETTY_FUNCTION__, fp8); - // if(/*![self gpgDoNotResetFlags]*/YES){ - if(fp8 == nil || fp8 != [self message]){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Message changed(2)"); - if([self message] != nil) -#ifdef SNOW_LEOPARD - [[(MimeBody *)[[self message] messageBody] topLevelPart] clearCachedDecryptedMessageBody]; // FIXME: problem is that it's not the right part! -#else - [[(MimeBody *)[[self message] messageBody] topLevelPart] clearCachedDescryptedMessageBody]; // FIXME: problem is that it's not the right part! -#endif - [self gpgSetMessageWasInFactSigned:NO]; - [self gpgSetMessageHasBeenDecrypted:NO]; - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Reset WasInFactSigned and HasBeenDecrypted"); - } - if(fp8 == nil) - [[self gpgMessageViewerAccessoryViewOwner] messageChanged:nil]; - } - ((void (*)(id, SEL, id, id))MessageContentController__setMessage_headerOrder)(self, _cmd, fp8, fp12); -} - -// Do not use _gpgAddAccessoryView:, for backwards-compatibility with MailTags -- (void) _gpg2AddAccessoryView:(NSView *)accessoryView -{ - NSRect aRect; - NSRect originalRect; - float aHeight; -#if 0 - // Works only for MIME signed, because Mail thinks it's (S/MIME) signed - certificateView = accessoryView; -#else - NSView *resizedView = [[[self valueForKey:@"contentContainerView"] subviews] objectAtIndex:0]; - NSArray *additionalViews = nil; - int additionalViewsCount = [[[self valueForKey:@"contentContainerView"] subviews] count] - 1; - - if((GPGMailLoggingLevel > 0)) - NSLog(@"[DEBUG] %s", __PRETTY_FUNCTION__); -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - // First subview is the NSScrollView or EditingMessageWebView (for notes) - NSAssert1([resizedView isKindOfClass:[NSScrollView class]] || [resizedView isKindOfClass:NSClassFromString(@"EditingMessageWebView")], @"### GPGMail: views are not ordered the expected way! First view is %@", resizedView); -#else - // First subview is the NSScrollView - NSAssert1([resizedView isKindOfClass:[NSScrollView class]], @"### GPGMail: views are not ordered the expected way! First view is %@", resizedView); -#endif - if(additionalViewsCount > 0) - additionalViews = [[[self valueForKey:@"contentContainerView"] subviews] subarrayWithRange:NSMakeRange(1, additionalViewsCount)]; - originalRect = aRect = [resizedView frame]; - aHeight = NSHeight([accessoryView frame]); - // Let's place our view on top (needed, because Junk banner always wants to be just above scrollView!) - aRect.origin.y = NSHeight([[self valueForKey:@"contentContainerView"] bounds]) + [[self valueForKey:@"contentContainerView"] bounds].origin.y - aHeight; - if(additionalViewsCount > 0){ - NSEnumerator *anEnum = [additionalViews objectEnumerator]; - NSView *currentBannerView = nil; - float resizedViewTop = NSMaxY([resizedView frame]); - - while(currentBannerView = [anEnum nextObject]){ - // Subview is moved down, when placed above scrollView (#0) - if(NSMinY([currentBannerView frame]) >= resizedViewTop){ - [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) - aHeight)]; - [currentBannerView setNeedsDisplay:YES]; - } - // Subview is resized down when its top is above scrollview's top (for MailTags) - else if(NSMaxY([currentBannerView frame]) >= (resizedViewTop - aHeight)){ - [currentBannerView setFrameSize:NSMakeSize(NSWidth([currentBannerView frame]), NSHeight([currentBannerView frame]) - aHeight)]; - [currentBannerView setNeedsDisplay:YES]; - } - } - } - originalRect.size.height -= aHeight; - aRect.size.height = aHeight; - [accessoryView setFrame:aRect]; - [[resizedView superview] addSubview:accessoryView]; - [resizedView setFrame:originalRect]; -#endif -} - -// Do not use _gpgRemoveAccessoryView:redisplay:, for backwards-compatibility with MailTags -- (void) _gpg2RemoveAccessoryView:(NSView *)accessoryView redisplay:(BOOL)flag -{ - NSRect originalRect; - NSView *resizedView = [[[self valueForKey:@"contentContainerView"] subviews] objectAtIndex:0]; - int additionalViewsCount = [[[self valueForKey:@"contentContainerView"] subviews] count] - 1; - - if((GPGMailLoggingLevel > 0)) - NSLog(@"[DEBUG] %s", __PRETTY_FUNCTION__); - NSAssert([accessoryView ancestorSharedWithView:resizedView] != nil, @"Trying to remove unattached view!"); -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - // First subview is the NSScrollView or EditingMessageWebView - NSAssert1([resizedView isKindOfClass:[NSScrollView class]] || [resizedView isKindOfClass:NSClassFromString(@"EditingMessageWebView")], @"### GPGMail: views are not ordered the expected way! First view is %@", resizedView); -#else - NSAssert1([resizedView isKindOfClass:[NSScrollView class]], @"### GPGMail: views are not ordered the expected way! First view is %@", resizedView); -#endif - originalRect = [resizedView frame]; - originalRect.size.height += NSHeight([accessoryView frame]); - if(flag) - [accessoryView removeFromSuperview]; - else - [accessoryView removeFromSuperviewWithoutNeedingDisplay]; - additionalViewsCount--; - if(additionalViewsCount > 0){ - // First subview is the NSScrollView - NSArray *additionalViews = [[[self valueForKey:@"contentContainerView"] subviews] subarrayWithRange:NSMakeRange(1, additionalViewsCount)]; - NSEnumerator *anEnum = [additionalViews objectEnumerator]; - NSView *currentBannerView = nil; - float resizedViewTop = NSMaxY([resizedView frame]); - float resizedViewBottom = NSMinY([resizedView frame]); - - while(currentBannerView = [anEnum nextObject]){ - // Subview is moved up, when already above scrollView (#0) - if(NSMinY([currentBannerView frame]) >= resizedViewTop){ - [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) + NSHeight([accessoryView frame]))]; - [currentBannerView setNeedsDisplay:YES]; - } - // Subview is resized up, when its top is in middle of scrollView (for MailTags) - else if(NSMaxY([currentBannerView frame]) >= resizedViewBottom){ - [currentBannerView setFrameSize:NSMakeSize(NSWidth([currentBannerView frame]), NSHeight([currentBannerView frame]) + NSHeight([accessoryView frame]))]; - [currentBannerView setNeedsDisplay:YES]; - } - } - } - [resizedView setFrame:originalRect]; -} -/* - - (GPGMessageViewerAccessoryViewOwner *) _gpgExistingMessageViewerAccessoryViewOwner - { - if(_accessoryViewOwnerPerViewer != NULL) - return NSMapGet(_accessoryViewOwnerPerViewer, self); - else - return nil; - } - */ -- (GPGMessageViewerAccessoryViewOwner *) gpgMessageViewerAccessoryViewOwner -{ - // WARNING: this limits us to 1 accessoryView per viewer - GPGMessageViewerAccessoryViewOwner *accessoryViewOwner = GPG_GET_EXTRA_IVAR(@"messageViewerAccessoryViewOwner"); - - if(accessoryViewOwner == nil){ - accessoryViewOwner = [[GPGMessageViewerAccessoryViewOwner alloc] initWithDelegate:self]; - GPG_SET_EXTRA_IVAR(accessoryViewOwner, @"messageViewerAccessoryViewOwner"); - [accessoryViewOwner release]; - } - - return accessoryViewOwner; -} - -- (BOOL) _gpgBannerIsShown -{ - return [[[self gpgMessageViewerAccessoryViewOwner] view] superview] != nil; -} - -- (void) _gpgShowBannerWithType:(int)bannerType -{ - GPGMessageViewerAccessoryViewOwner *anOwner = nil; - - if(![self _gpgBannerIsShown]){ - anOwner = [self gpgMessageViewerAccessoryViewOwner]; - [anOwner setBannerType:bannerType]; - [self _gpg2AddAccessoryView:[anOwner view]]; - } - else{ - anOwner = [self gpgMessageViewerAccessoryViewOwner]; - if([anOwner bannerType] != bannerType){ - [self _gpg2RemoveAccessoryView:[anOwner view] redisplay:NO]; - [anOwner setBannerType:bannerType]; - [self _gpg2AddAccessoryView:[anOwner view]]; - } - } - // [anOwner setMessage:[self message]]; - if((GPGMailLoggingLevel > 0)) - NSLog(@"[DEBUG] %s => %@", __PRETTY_FUNCTION__, [anOwner bannerTypeDescription]); -} - -- (void) gpgShowPGPSignatureBanner -{ - // gpgMessageWasInFactSigned: special case where message has been encrypted and signed in one operation - [self _gpgShowBannerWithType:([self gpgMessageWasInFactSigned] ? gpgDecryptedSignatureInfoBanner:gpgAuthenticationBanner)]; -} - -- (void) gpgShowPGPEncryptedBanner -{ - // gpgMessageHasBeenDecrypted: special case where message has been encrypted - [self _gpgShowBannerWithType:([self gpgMessageHasBeenDecrypted] ? gpgDecryptedInfoBanner:gpgDecryptionBanner)]; -} - -- (void) gpgHideBanner -{ - if([self _gpgBannerIsShown]){ - GPGMessageViewerAccessoryViewOwner *anOwner = [self gpgMessageViewerAccessoryViewOwner]; - - [self _gpg2RemoveAccessoryView:[anOwner view] redisplay:YES]; - // [anOwner setMessage:nil]; - } -} - -- (void) gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner replaceViewWithView:(NSView *)view -{ -#if 1 - if(![self _gpgBannerIsShown]) - NSLog(@"### GPGMail: banner should already be visible"); - else -#else - NSAssert([self _gpgBannerIsShown], @"### GPGMail: banner should already be visible"); -#endif - [self _gpg2RemoveAccessoryView:[owner view] redisplay:NO]; - [self _gpg2AddAccessoryView:view]; -} - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -#else -- (void) gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner showStatusMessage:(NSString *)message -{ - if([[[[self textView] window] delegate] respondsToSelector:@selector(showStatusMessage:)]){ - // Delegate can be a MessageViewer, or a MessageEditor (for standalone viewers!) - [[[[self textView] window] delegate] showStatusMessage:message]; - if([message length] > 0) - [[[[self textView] window] delegate] performSelector:@selector(showStatusMessage:) withObject:@"" afterDelay:0.3]; // There is a risk we wipe out something else, but if we don't do that call, the "Done." stays on screen. - } -} -#endif - -- (void) gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner displayMessage:(Message *)message isSigned:(BOOL)isSigned -{ - MessageViewingState *viewingState = [self viewingState]; - - if(viewingState == nil) - return; - - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s", __PRETTY_FUNCTION__); -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - // WARNING: we must ask to the very part that we set the decrypted message body! - see -[MimePart _gpgDecodePGP] -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - MessageBody *messageBody = [[(MimeBody *)[message messageBody] topLevelPart] decryptedMessageBodyIsEncrypted:NULL isSigned:NULL]; -#else - MessageBody *messageBody = [[(MimeBody *)[message messageBody] topLevelPart] decryptedMessageBody]; -#endif - Message *decryptedMessage = message; - - viewingState = [NSClassFromString(@"MessageHeaderDisplay") copyViewingState:viewingState]; - [message gpgSetMayClearCachedDecryptedMessageBody:NO]; - if(!messageBody) - messageBody = [message messageBody]; - else{ - decryptedMessage = [messageBody message]; - } - // MutableMessageHeaders *customHeaders = [[message headers] mutableCopy]; // Not done by S/MIME - - // [customHeaders]; // we need to add headers in decrypted mart - // [viewingState setHeaderAttributedString:[[message headers] attributedStringShowingHeaderDetailLevel:[self headerDetailLevel]]]; // FIXME: Empty, because no headers... -> copy and update headers when decrypting - // [customHeaders release]; - // [viewingState setHeaderAttributedString:[(MessageHeaders *)[decryptedMessage headers] attributedStringShowingHeaderDetailLevel:[self headerDetailLevel]]]; // FIXME: Empty, because no headers... -> copy and update headers when decrypting - if([[(MessageBody *)messageBody attachments] count] == 0) // numberOfAttachments not up-to-date! Wrapper's - [viewingState setAttachmentsDescription:nil]; - else - [viewingState setAttachmentsDescription:[NSClassFromString(@"MessageHeaderDisplay") formattedAttachmentsSizeForMessage:/*decryptedMessage*/message]]; - // NSLog(@"$$$ AttachmentsDescription = %@", [viewingState attachmentsDescription]); - [viewingState setValue:messageBody forKey:@"mimeBody"]; - [self cacheViewingState:viewingState forMessage:message/*decryptedMessage*/]; // decryptedMessage? - [self setMessage:/*message*/decryptedMessage headerOrder:[viewingState headerOrder]]; // WARNING: will clear decrypted body cache! - [viewingState setHeaderAttributedString:[[message headers] attributedStringShowingHeaderDetailLevel:[self headerDetailLevel]]]; // FIXME: Empty, because no headers... -> copy and update headers when decrypting; this very call is useless!!! - [message gpgSetMayClearCachedDecryptedMessageBody:YES]; -#else -#if 1 - // Works, but headers are not up-to-date - //[inViewer clearCache]; - /////////////////////// [self setMessage:message headerOrder:[[self viewingState] headerOrder]]; // If this line was commented out, no header would appear at all! - // [inViewer _setMessage:decodedMessage headerOrder:[[inViewer viewingState] headerOrder]]; - // [inViewer _fetchContentsForMessage:decodedMessage fromStore:[decodedMessage messageStore] withViewingState:[inViewer viewingState]]; - // [inViewer viewerPreferencesChanged:nil]; - // [inViewer _updateDisplay]; - - viewingState = [NSClassFromString(@"MessageHeaderDisplay") copyViewingState:viewingState]; - [viewingState setHeaderAttributedString:[(MessageHeaders *)[message headers] attributedStringShowingHeaderDetailLevel:[self headerDetailLevel]]]; - // NSLog(@"$$$ HeaderAttributedString = %@", [viewingState headerAttributedString]); - if(/*[message numberOfAttachments]*/[[(MessageBody *)[message messageBody] attachments] count] == 0) // numberOfAttachments not up-to-date! Wrapper's - [viewingState setAttachmentsDescription:nil]; - else - [viewingState setAttachmentsDescription:[NSClassFromString(@"MessageHeaderDisplay") formattedAttachmentsSizeForMessage:message]]; - // NSLog(@"$$$ AttachmentsDescription = %@", [viewingState attachmentsDescription]); - [viewingState setValue:[message messageBody] forKey:@"mimeBody"]; - // viewingState->preferredAlternative = -1; // Does nothing - // ((MessageViewingState *)[self viewingState])->preferredAlternative = -1; // Does nothing - ///////////// viewingState->preferredEncoding = ((MessageViewingState *)[self viewingState])->preferredEncoding; // Because it was not copied - [self cacheViewingState:viewingState forMessage:message]; - [self setMessage:message headerOrder:[viewingState headerOrder]]; -#else - // id viewingState = [MessageHeaderDisplay copyViewingState:[inViewer viewingState]]; - // id viewingState = [[inViewer viewingState] retain]; - - // [inViewer->headerDisplay displayAttributedString:[MessageHeaderDisplay copyHeadersForMessage:decodedMessage viewingState:viewingState]]; - // [inViewer setMessage:decodedMessage headerOrder:[viewingState headerOrder]]; - // inViewer->_message = [decodedMessage retain]; - // inViewer->textDisplay->messageBody = [decodedMessage messageBody]; - // inViewer->textDisplay->needsSetUp = YES; - [inViewer->headerDisplay setUp]; - // [inViewer->headerDisplay display:[[decodedMessage headers] attributedStringShowingHeaderDetailLevel:[inViewer headerDetailLevel]]]; - [inViewer->headerDisplay displayAttributedString:[[decodedMessage headers] attributedStringShowingHeaderDetailLevel:[inViewer headerDetailLevel]]]; - // [inViewer->textDisplay displayAttributedString:[decodedMessage attributedString]]; - // [MessageHeaderDisplay setUpEncryptionAndSignatureImageForMessage:decodedMessage viewingState:viewingState]; - // [viewingState release]; - // inViewer->_viewingState = viewingState; - // [inViewer setMostRecentHeaderOrder:[viewingState headerOrder]]; - // [viewingState release]; -#endif -#endif - - // Now update messageView content - // If we want to add a fade-out effect, we'll need to wait to the fade-out effect - // being done before we call [viewer _loadMessageIntoTextView]. - // Fade-out effect is launched by [viewer fadeToEmpty] - // if([[message messageBody] isKindOfClass:[MimeBody class]]) - // [(MimeBody *)[message messageBody] setPreferredAlternative:0]; - // [self showFirstAlternative:nil]; - // FIXME: on LEOPARD, always YES, even when not the case, e.g. for encrypted MIME message! -#if 0 - if([[message messageBody] isHTML]){ - NSLog(@"HTML message -> do not reset flags"); - [self gpgSetDoNotResetFlags:YES]; - } -#endif -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - // reloadDocument does quite nothing - // [self _updateDisplay]; - // [self clearCache]; - [self reloadCurrentMessage]; // Needed, to get flag change notif via _updateDisplay - // ((void (*)(id, SEL))MessageContentController__updateDisplay)(self, _cmd); - // [self setMessage:decryptedMessage headerOrder:[[self viewingState] headerOrder]]; // will display decrypted one, but without headers! -#else - [self reloadCurrentMessage]; -#endif - - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Callback from accessoryViewOwner"); - [self gpgSetMessageWasInFactSigned:isSigned]; - [self gpgSetMessageHasBeenDecrypted:YES]; - // FIXME: on LEOPARD, always YES, even when not the case, e.g. for encrypted MIME message! -#if 0 - if([[message messageBody] isHTML]){ -#warning TESTME Was not working, but now, is it? - // We cannot use delay = 0! - // New bug: banner is no longer visible... - [self performSelector:@selector(gpg_showFirstAlternative:) withObject:nil afterDelay:0.1]; - } -#endif - - /* if([[message messageBody] isHTML]){ - _messageWasInFactSigned = isSigned; - _messageHasBeenDecrypted = YES; - [self showFirstAlternative:nil]; - } DOES NOTHING... */ - // Will post MessageWillBeDisplayed notification; we need to call this method anyway, - // to be sure that URLs are parsed by textView and clickable -} - -- (void) gpg_showFirstAlternative:(id)sender -{ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] First alternative -> do not reset flags"); - [self gpgSetDoNotResetFlags:YES]; - [self showFirstAlternative:sender]; // Performs -_updateDisplay invocation, delayed! - // [self performSelector:@selector(gpg_resetFlags:) withObject:nil afterDelay:0.1]; -} - -- (void) gpg_resetFlags:(id)sender -{ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %s", __PRETTY_FUNCTION__); - [self gpgSetDoNotResetFlags:NO]; - [self gpgSetMessageWasInFactSigned:NO]; - [self gpgSetMessageHasBeenDecrypted:NO]; -} - -- (Message *) gpgMessageForAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner -{ - return [self message]; -} - -- (Message *) gpgMessage -{ - // On MacOS X, [self message] sometimes returns zombies! - return [self valueForKey:@"_message"]; -} - -/*#if 0 -// Patch in MailTags by Scott Morrison --(void) _showBannerView:(id)view{ - old__showBannerView_IMP(self,_cmd,view); - - float contentViewWidth =NSWidth([contentContainerView frame]); - int viewCount = [[contentContainerView subviews] count] ; - int viewIndex = 0; - NSView *sideBarView = nil; - for (viewIndex = 1; viewIndex - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - - -#import - -#import - - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - -#ifdef SNOW_LEOPARD_64 -@interface GPGMail_MailDocumentEditor : NSObject -#else -@interface MailDocumentEditor(GPGMail) -#endif -- (IBAction) gpgToggleEncryptionForNewMessage:(id)sender; -- (IBAction) gpgToggleSignatureForNewMessage:(id)sender; -- (IBAction) gpgChoosePublicKeys:(id)sender; -- (IBAction) gpgChoosePersonalKey:(id)sender; -- (IBAction) gpgChoosePublicKey:(id)sender; -- (IBAction) gpgToggleAutomaticPublicKeysChoice:(id)sender; -- (IBAction) gpgToggleSymetricEncryption:(id)sender; -- (IBAction) gpgToggleUsesOnlyOpenPGPStyle:(id)sender; -- (NSArray *) gpgAccessoryViewOwners; -- (void) gpgSetAccessoryViewOwners:(NSArray *)newOwners; -- (BOOL) gpgIsRealEditor; -- (NSToolbar *) gpgToolbar; -- (BOOL) gpgValidateMenuItem:(NSMenuItem *)theItem; -- (BOOL) gpgValidateToolbarItem:(NSToolbarItem *)theItem; -- (NSPopUpButton *) gpgFromPopup; -@end - -#else - -@interface MessageEditor(GPGMail) - -- (IBAction) gpgToggleEncryptionForNewMessage:(id)sender; -- (IBAction) gpgToggleSignatureForNewMessage:(id)sender; -- (IBAction) gpgChoosePublicKeys:(id)sender; -- (IBAction) gpgChoosePersonalKey:(id)sender; -- (IBAction) gpgChoosePublicKey:(id)sender; -- (IBAction) gpgToggleAutomaticPublicKeysChoice:(id)sender; -- (IBAction) gpgToggleSymetricEncryption:(id)sender; -- (IBAction) gpgToggleUsesOnlyOpenPGPStyle:(id)sender; -- (NSArray *) gpgAccessoryViewOwners; -- (void) gpgSetAccessoryViewOwners:(NSArray *)newOwners; -- (BOOL) gpgIsRealEditor; -- (NSToolbar *) gpgToolbar; -- (BOOL) gpgValidateMenuItem:(NSMenuItem *)theItem; -- (BOOL) gpgValidateToolbarItem:(NSToolbarItem *)theItem; -- (NSPopUpButton *) gpgFromPopup; - -@end - -#endif diff --git a/GPGMail/Source/MessageEditor+GPGMail.m b/GPGMail/Source/MessageEditor+GPGMail.m deleted file mode 100644 index 660ab8ee..00000000 --- a/GPGMail/Source/MessageEditor+GPGMail.m +++ /dev/null @@ -1,859 +0,0 @@ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "MessageEditor+GPGMail.h" -#import "GPGMailBundle.h" -#import "GPGMailPatching.h" -#import "GPGMailComposeAccessoryViewOwner.h" -#import -#import -#import -#import -#import - -#ifdef TIGER -#warning Copy LEOPARD code -#endif -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - -#ifdef SNOW_LEOPARD_64 -@interface GPGMail_HeadersEditor : NSObject -#else -@interface HeadersEditor(GPGMail) -#endif -- (NSMutableArray *)gpgAccessoryViewOwners; -- (NSPopUpButton *) gpgFromPopup; -@end - -//asm(".weak_reference _OBJC_CLASS_$_HeadersEditor"); -//asm(".weak_reference _OBJC_CLASS_$_MailDocumentEditor"); - -#ifdef SNOW_LEOPARD_64 -@implementation GPGMail_HeadersEditor -#else -@implementation HeadersEditor(GPGMail) -#endif -static IMP HeadersEditor_changeFromHeader = NULL; - -+ (void) load -{ - HeadersEditor_changeFromHeader = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(changeFromHeader:), NSClassFromString(@"HeadersEditor"), @selector(gpgChangeFromHeader:), [self class]); -} - -#warning FIXME: LEOPARD Misses _gpgInitializeOptionsFromMessages - -- (NSMutableArray *)gpgAccessoryViewOwners -{ - if([self valueForKey:@"accessoryViewOwners"] == nil || ![[self valueForKey:@"accessoryViewOwners"] isKindOfClass:[NSMutableArray class]]) - [self setValue:[[NSMutableArray alloc] init] forKey:@"accessoryViewOwners"]; - return [self valueForKey:@"accessoryViewOwners"]; -} - -- (NSPopUpButton *) gpgFromPopup -{ - return [self valueForKey:@"fromPopup"]; -} - -- (void) gpgForwardAction:(SEL)action from:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - NSEnumerator *anEnum = [[self gpgAccessoryViewOwners] objectEnumerator]; - id anOwner; - - while(anOwner = [anEnum nextObject]) - if([anOwner respondsToSelector:action]) - [anOwner performSelector:action withObject:sender]; -} - -- (void) gpgChangeFromHeader:(id)sender -{ - ((void (*)(id, SEL, id))HeadersEditor_changeFromHeader)(self, _cmd, sender); - if([GPGMailBundle gpgMailWorks]) - [self gpgForwardAction:_cmd from:sender]; // _cmd = changeFromHeader: !!! -} - -@end - -#ifdef SNOW_LEOPARD_64 -@implementation GPGMail_MailDocumentEditor -#else -@implementation MailDocumentEditor(GPGMail) -#endif - -static IMP MailDocumentEditor_backEndDidLoadInitialContent = NULL; -static IMP MailDocumentEditor_backEnd_shouldDeliverMessage = NULL; -//static IMP MailDocumentEditor_backEnd_shouldSaveMessage = NULL; -static IMP MailDocumentEditor_showOrHideStationery = NULL; -static IMP MailDocumentEditor_animationDidEnd = NULL; -//static IMP MailDocumentEditor_backEnd_willCreateMessageWithHeaders = NULL; // Invoked only when saving message as draft -static IMP MailDocumentEditor_changeReplyMode = NULL; - -+ (void)load -{ - MailDocumentEditor_backEndDidLoadInitialContent = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(backEndDidLoadInitialContent:), NSClassFromString(@"MailDocumentEditor"), @selector(gpgBackEndDidLoadInitialContent:), [self class]); - MailDocumentEditor_backEnd_shouldDeliverMessage = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(backEnd:shouldDeliverMessage:), NSClassFromString(@"MailDocumentEditor"), @selector(gpgBackEnd:shouldDeliverMessage:), [self class]); - MailDocumentEditor_showOrHideStationery = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(showOrHideStationery:), NSClassFromString(@"MailDocumentEditor"), @selector(gpgShowOrHideStationery:), [self class]); - MailDocumentEditor_animationDidEnd = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(animationDidEnd:), NSClassFromString(@"MailDocumentEditor"), @selector(gpgAnimationDidEnd:), [self class]); - MailDocumentEditor_changeReplyMode = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(changeReplyMode:), NSClassFromString(@"MailDocumentEditor"), @selector(gpgChangeReplyMode:), [self class]); -} - -- (GPGMailComposeAccessoryViewOwner *)gpgMyComposeAccessoryViewOwner -{ - NSEnumerator *theEnum = [[self gpgAccessoryViewOwners] objectEnumerator]; - MVComposeAccessoryViewOwner *anOwner; - - while(anOwner = [theEnum nextObject]){ - if([anOwner isKindOfClass:[NSClassFromString(@"GPGMailComposeAccessoryViewOwner") class]]) - return (GPGMailComposeAccessoryViewOwner *)anOwner; - - } - - return nil; -} - -- (void)gpgShowOrHideStationery:(id)fp8 -{ - if([GPGMailBundle gpgMailWorks]){ - if(![self stationeryPaneIsVisible]){ - NSView *accessoryView = [[self gpgMyComposeAccessoryViewOwner] composeAccessoryView]; - - if(![accessoryView isHidden]){ - NSRect aRect = [[self valueForKey:@"composeWebView"] frame]; - - aRect.size.height += NSHeight([accessoryView frame]); - [[self valueForKey:@"composeWebView"] setFrame:aRect]; - [accessoryView setHidden:YES]; - } - } - } - - ((void (*)(id, SEL, id))MailDocumentEditor_showOrHideStationery)(self, _cmd, fp8); -} - -- (void)gpgAnimationDidEnd:(id)fp8 -{ - ((void (*)(id, SEL, id))MailDocumentEditor_animationDidEnd)(self, _cmd, fp8); - - if([GPGMailBundle gpgMailWorks]){ - if(![self stationeryPaneIsVisible]){ - NSView *accessoryView = [[self gpgMyComposeAccessoryViewOwner] composeAccessoryView]; - - if([accessoryView isHidden]){ - NSRect aRect = [[self valueForKey:@"composeWebView"] frame]; - - [accessoryView setHidden:NO]; - aRect.size.height -= NSHeight([accessoryView frame]); - [[self valueForKey:@"composeWebView"] setFrame:aRect]; - } - } - } -} - -- (void) gpgAddAccessoryViewOwner:(MVComposeAccessoryViewOwner *)owner -{ - [[(HeadersEditor *)[self headersEditor] gpgAccessoryViewOwners] addObject:owner]; -} - -- (void)gpgInsertComposeAccessoryViewOfOwner:(MVComposeAccessoryViewOwner *)owner -{ - NSView *accessoryView = [owner composeAccessoryView]; - NSView *containerView = [[self valueForKey:@"composeWebView"] superview]; - NSRect aRect = [accessoryView frame]; - float aHeight = NSHeight(aRect); - - // Place accessory view just above composeWebView - aRect.size.width = NSWidth([containerView bounds]); - aRect.origin.x = 0; - aRect.origin.y = NSMaxY([containerView bounds]) - aHeight; - [accessoryView setFrame:aRect]; - [accessoryView setAutoresizingMask:NSViewWidthSizable | NSViewMinYMargin]; - [containerView addSubview:accessoryView]; - aRect = [[self valueForKey:@"composeWebView"] frame]; - aRect.size.height -= aHeight; - [[self valueForKey:@"composeWebView"] setFrame:aRect]; -} - -- (void)gpgBackEndDidLoadInitialContent:(id)fp8 -{ - // WARNING That method can be invoked more than once, when message is created by AppleScript (bug?). - ((void (*)(id, SEL, id))MailDocumentEditor_backEndDidLoadInitialContent)(self, _cmd, fp8); - - if([GPGMailBundle gpgMailWorks]){ - NSEnumerator *anEnum = [[(HeadersEditor *)[self headersEditor] gpgAccessoryViewOwners] objectEnumerator]; - MVComposeAccessoryViewOwner *eachOwner; - BOOL createNewAccessoryViewOwner = YES; - - while(eachOwner = [anEnum nextObject]){ - if([eachOwner isKindOfClass:NSClassFromString(@"GPGMailComposeAccessoryViewOwner")]){ - createNewAccessoryViewOwner = NO; - break; - } - } - if(createNewAccessoryViewOwner){ - MVComposeAccessoryViewOwner *myComposeAccessoryViewOwner = [NSClassFromString(@"GPGMailComposeAccessoryViewOwner") composeAccessoryViewOwner]; - - [self gpgAddAccessoryViewOwner:myComposeAccessoryViewOwner]; - [myComposeAccessoryViewOwner setupUIForMessage:[fp8 message]]; // Toolbar already finished - [self gpgInsertComposeAccessoryViewOfOwner:myComposeAccessoryViewOwner]; // Must be called after setUIForMessage:, which loads the nib - } - } -} - -- (BOOL)gpgBackEnd:fp12 shouldDeliverMessage:fp16 -{ - if([GPGMailBundle gpgMailWorks]){ - MVComposeAccessoryViewOwner *anOwner = [self gpgMyComposeAccessoryViewOwner]; - - if(anOwner != nil && ![anOwner messageWillBeDelivered:fp16]){ - NSBeep(); - return NO; - } - } - - return ((BOOL (*)(id, SEL, id, id))MailDocumentEditor_backEnd_shouldDeliverMessage)(self, _cmd, fp12, fp16); -} - -/* -- (IBAction)gpgToggleEncryptionForNewMessage:(id)sender -{ - NSEnumerator *theEnum = [[self gpgAccessoryViewOwners] objectEnumerator]; - id anOwner; - - while(anOwner = [theEnum nextObject]) - if([anOwner respondsToSelector:_cmd]) - [anOwner performSelector:_cmd withObject:sender]; -} - -- (IBAction)gpgToggleSignatureForNewMessage:(id)sender -{ - NSEnumerator *theEnum = [[self gpgAccessoryViewOwners] objectEnumerator]; - id anOwner; - - while(anOwner = [theEnum nextObject]) - if([anOwner respondsToSelector:_cmd]) - [anOwner performSelector:_cmd withObject:sender]; -} -*/ - -- (void)gpgChangeReplyMode:(id)fp8 -{ - // Invoked when user clicks the reply/reply to all button in a compose window - // Let's force reevaluation of PGP rules by accessoryView owner - ((void (*)(id, SEL, id))MailDocumentEditor_changeReplyMode)(self, _cmd, fp8); - - NSEnumerator *anEnum = [[self gpgAccessoryViewOwners] objectEnumerator]; - id anOwner; - - while(anOwner = [anEnum nextObject]) - if([anOwner respondsToSelector:@selector(evaluateRules)]) - [anOwner evaluateRules]; -} - -- (NSArray *)gpgAccessoryViewOwners -{ - return [[self headersEditor] gpgAccessoryViewOwners]; -} - -- (NSPopUpButton *) gpgFromPopup -{ - return [[self headersEditor] gpgFromPopup]; -} - -- (void)gpgSetAccessoryViewOwners:(NSArray *)newOwners -{ - [[(HeadersEditor *)[self headersEditor] gpgAccessoryViewOwners] setArray:newOwners]; -} - -- (BOOL)gpgIsRealEditor -{ - return ([self valueForKey:@"_backEnd"] != nil); -} - -- (NSToolbar *)gpgToolbar -{ - return [self valueForKey:@"_toolbar"]; -} - -- (BOOL) gpgValidateToolbarItem:(NSToolbarItem *)theItem -{ - // Forwarded by GPGMailBundle - NSEnumerator *anEnum = [[self gpgAccessoryViewOwners] objectEnumerator]; - id anOwner; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - // That works because we use only single segment items... - SEL action = ([theItem isKindOfClass:NSClassFromString(@"SegmentedToolbarItem")] ? [(SegmentedToolbarItem *)theItem actionForSegment:0] : [theItem action]); -#else - SEL action = [theItem action]; -#endif - - while(anOwner = [anEnum nextObject]) - if([anOwner respondsToSelector:action]) - return [anOwner validateToolbarItem:theItem]; - return NO; -} - -- (BOOL) gpgValidateMenuItem:(NSMenuItem *)theItem -{ - // Forwarded by GPGMailBundle - NSEnumerator *anEnum = [[self gpgAccessoryViewOwners] objectEnumerator]; - id anOwner; - SEL action = [theItem action]; - - while(anOwner = [anEnum nextObject]) - if([anOwner respondsToSelector:action]) - return [anOwner validateMenuItem:theItem]; - return NO; -} - -- (void) gpgForwardAction:(SEL)action from:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - NSEnumerator *anEnum = [[self gpgAccessoryViewOwners] objectEnumerator]; - id anOwner; - - while(anOwner = [anEnum nextObject]) - if([anOwner respondsToSelector:action]) - [anOwner performSelector:action withObject:sender]; -} - -- (IBAction) gpgToggleEncryptionForNewMessage:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleSignatureForNewMessage:(id)sender; -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgChoosePublicKeys:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgChoosePersonalKey:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgChoosePublicKey:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleAutomaticPublicKeysChoice:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleSymetricEncryption:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleUsesOnlyOpenPGPStyle:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -@end - -#else - -@implementation MessageEditor(GPGMail) - -static IMP MessageEditor_changeFromHeader = NULL; -static IMP MessageEditor_backEnd_didCompleteLoadForEditorSettings = NULL; -static IMP MessageEditor_backEnd_shouldDeliverMessage = NULL; -//static IMP MessageEditor_backEnd_shouldSaveMessage = NULL; -#ifdef TIGER -static IMP MessageEditor_composeHeaderViewWillBeginCustomization = NULL; -static IMP MessageEditor_composeHeaderViewDidEndCustomization = NULL; -static IMP MessageEditor_initWithType_settings = NULL; -#else -static IMP MessageEditor_initWithType_message_showAllHeaders = NULL; -#endif - -+ (void) load -{ - MessageEditor_changeFromHeader = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(changeFromHeader:), [MessageEditor class], @selector(gpg_changeFromHeader:), [MessageEditor class]); - MessageEditor_backEnd_didCompleteLoadForEditorSettings = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(backEnd:didCompleteLoadForEditorSettings:), [MessageEditor class], @selector(gpgBackEnd:didCompleteLoadForEditorSettings:), [MessageEditor class]); - MessageEditor_backEnd_shouldDeliverMessage = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(backEnd:shouldDeliverMessage:), [MessageEditor class], @selector(gpgBackEnd:shouldDeliverMessage:), [MessageEditor class]); -// MessageEditor_backEnd_shouldSaveMessage = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(backEnd:shouldSaveMessage:), [MessageEditor class], @selector(gpgBackEnd:shouldSaveMessage:), [MessageEditor class]); -#ifdef TIGER - MessageEditor_composeHeaderViewWillBeginCustomization = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(composeHeaderViewWillBeginCustomization:), [MessageEditor class], @selector(gpgComposeHeaderViewWillBeginCustomization:), [MessageEditor class]); - MessageEditor_composeHeaderViewDidEndCustomization = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(composeHeaderViewDidEndCustomization:), [MessageEditor class], @selector(gpgComposeHeaderViewDidEndCustomization:), [MessageEditor class]); - MessageEditor_initWithType_settings = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(initWithType:settings:), [MessageEditor class], @selector(gpgInitWithType:settings:), [MessageEditor class]); -#else - MessageEditor_initWithType_message_showAllHeaders = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(initWithType:message:showAllHeaders:), [MessageEditor class], @selector(gpgInitWithType:message:showAllHeaders:), [MessageEditor class]); -#endif -} - -#ifdef TIGER -- (void) gpgAddAccessoryViewOwner:(MVComposeAccessoryViewOwner *)owner -{ - if(!accessoryViewOwners) - accessoryViewOwners = [[NSMutableArray alloc] init]; - [accessoryViewOwners addObject:owner]; -} -#endif - -- (BOOL)gpgBackEnd:fp12 shouldDeliverMessage:fp16 -{ - if([GPGMailBundle gpgMailWorks]){ - NSEnumerator *anEnum = [[self gpgAccessoryViewOwners] objectEnumerator]; - MVComposeAccessoryViewOwner *anOwner; - - while(anOwner = [anEnum nextObject]){ - // We pass the -messageWillBeDelivered: method only to our own - // own accessory view controller, because if there are more than - // one poser (like MailPriority), then the method would be invoked - // by each poser! - if([anOwner isKindOfClass:[GPGMailComposeAccessoryViewOwner class]]){ - if([anOwner messageWillBeDelivered:fp16]) - break; - else{ - NSBeep(); - return NO; - } - } - } - } - - return ((BOOL (*)(id, SEL, id, id))MessageEditor_backEnd_shouldDeliverMessage)(self, _cmd, fp12, fp16); -} - -#if 0 -// No longer needed, because MessageEditor does it that way -- (char)gpgBackEnd:fp12 shouldSaveMessage:fp16 -{ - NSEnumerator *anEnum = [[self gpgAccessoryViewOwners] objectEnumerator]; - MVComposeAccessoryViewOwner *anOwner; - -#warning Is it not sent anyway?? - while(anOwner = [anEnum nextObject]){ - // We pass the -messageWillBeSaved: method only to our own - // own accessory view controller, because if there are more than - // one poser (like MailPriority), then the method would be invoked - // by each poser! - if([anOwner isKindOfClass:[GPGMailComposeAccessoryViewOwner class]]){ - if([anOwner messageWillBeSaved:fp16]) - break; - else{ - NSBeep(); - return NO; - } - } - } - - return ((char (*)(id, SEL, id, id))MessageEditor_backEnd_shouldSaveMessage)(self, _cmd, fp12, fp16); -} -#endif - -- (void)gpgBackEnd:(id)fp8 didCompleteLoadForEditorSettings:(id)fp12 -{ - if(![GPGMail gpgMailWorks]){ - ((void (*)(id, SEL, id, id))MessageEditor_backEnd_didCompleteLoadForEditorSettings)(self, _cmd, fp8, fp12); - return; - } - -#warning FIXME -#ifdef TIGER - NSView *editorView = [self mainContentView]; - BOOL editorWasCreatedByAppleScript = [editorView isKindOfClass:NSClassFromString(@"MessageTextView")]; -#endif - - // WARNING When a message is composed via an AppleScript, that method is invoked multiple times!!! - if(accessoryViewOwners != nil){ - NSEnumerator *existingOwnersEnum = [accessoryViewOwners objectEnumerator]; - id anOwner; - - while(anOwner = [existingOwnersEnum nextObject]){ - if([anOwner isKindOfClass:[GPGMailComposeAccessoryViewOwner class]]){ - ((void (*)(id, SEL, id, id))MessageEditor_backEnd_didCompleteLoadForEditorSettings)(self, _cmd, fp8, fp12); - return; - } - } - } - - GPGMailComposeAccessoryViewOwner *myComposeAccessoryViewOwner; - NSRect aRect; - // NSView *parentView; - // NSSize aSize; - - // WARNING OptionalViews are already hidden - // FIXME: Try to do that earlier, and support multiple accessoryView owners (one per bundle) - myComposeAccessoryViewOwner = [GPGMailComposeAccessoryViewOwner composeAccessoryViewOwner]; - [self gpgAddAccessoryViewOwner:myComposeAccessoryViewOwner]; -#ifdef TIGER -#warning FIXME: Temporary workaround - disabled accessoryView when composer window generated by AppleScript - if(editorWasCreatedByAppleScript) - [myComposeAccessoryViewOwner setDisplaysButtonsInComposeWindow:NO]; -#endif - [myComposeAccessoryViewOwner setupUIForMessage:[fp8 message]]; // too late: toolbar already finished -#if 1 -#if 0 - // Not so easy to participate to the animation: see ComposeHeaderView class - NSRect containerRect = [(NSView *)_composeHeaderView frame]; - float addedHeight = NSHeight([[myComposeAccessoryViewOwner composeAccessoryView] frame]); - - NSLog(@"%s - headerView: %@, mainContentView: %@, accView: %@", __PRETTY_FUNCTION__, NSStringFromRect([(NSView *)_composeHeaderView frame]), NSStringFromRect([[self mainContentView] frame]), NSStringFromRect([[myComposeAccessoryViewOwner composeAccessoryView] frame])); - [(NSView *)_composeHeaderView setFrame:NSMakeRect(NSMinX(containerRect), NSMinY(containerRect) - addedHeight, NSWidth(containerRect), NSHeight(containerRect) + addedHeight)]; - // WARNING OptionalView is flipped! - [[myComposeAccessoryViewOwner composeAccessoryView] setFrame:NSMakeRect(0, NSHeight(containerRect), NSWidth(containerRect), addedHeight)]; - // [[myComposeAccessoryViewOwner composeAccessoryView] setFrame:NSMakeRect(0, 0, NSWidth(containerRect), addedHeight)]; - [(NSView *)_composeHeaderView addSubview:[myComposeAccessoryViewOwner composeAccessoryView]]; - [editorView setFrameSize:NSMakeSize(NSWidth([editorView frame]), NSHeight([editorView frame]) - addedHeight)]; - // [[myComposeAccessoryViewOwner composeAccessoryView] setAutoresizingMask:NSViewWidthSizable | NSViewMinYMargin]; - NSLog(@"==> headerView: %@, mainContentView: %@, accView: %@", NSStringFromRect([(NSView *)_composeHeaderView frame]), NSStringFromRect([[self mainContentView] frame]), NSStringFromRect([[myComposeAccessoryViewOwner composeAccessoryView] frame])); -#else - float addedHeight = NSHeight([[myComposeAccessoryViewOwner composeAccessoryView] frame]); - - // 2 cases: message created manually, or message created by Applescript (e.g. from iPhoto) - if(![editorView isKindOfClass:NSClassFromString(@"MessageTextView")]){ - // 1) manually: editorView = EditingMessageWebView, superview = NSView - aRect = [editorView frame]; - [[myComposeAccessoryViewOwner composeAccessoryView] setFrame:NSMakeRect(NSMinX(aRect), NSMaxY(aRect) - addedHeight, NSWidth(aRect), addedHeight)]; - [[editorView superview] addSubview:[myComposeAccessoryViewOwner composeAccessoryView]]; - [editorView setFrameSize:NSMakeSize(NSWidth([editorView frame]), NSHeight([editorView frame]) - addedHeight)]; - } - else{ - // 2) by Applescript: editorView = MessageTextView, superview = NSClipView - NSScrollView *aMovedView = [editorView enclosingScrollView]; - - aRect = [aMovedView frame]; - [[myComposeAccessoryViewOwner composeAccessoryView] setFrame:NSMakeRect(NSMinX(aRect), NSMaxY(aRect) - addedHeight, NSWidth(aRect), addedHeight)]; - [[aMovedView superview] addSubview:[myComposeAccessoryViewOwner composeAccessoryView]]; - [aMovedView setFrameSize:NSMakeSize(NSWidth([aMovedView frame]), NSHeight([aMovedView frame]) - addedHeight)]; - // FIXME: Our horizontal separator line should be moved to the top in that case - } - [[myComposeAccessoryViewOwner composeAccessoryView] setAutoresizingMask:NSViewWidthSizable | NSViewMinYMargin]; -#endif -#else - aRect = [[myComposeAccessoryViewOwner composeAccessoryView] frame]; - parentView = [[self window] contentView]; - aRect.size.width = NSWidth([parentView bounds]); - aRect.origin.x = 0; - aRect.origin.y = NSMinY([[[parentView subviews] objectAtIndex:0] frame]) - aRect.size.height; - aSize = [[[parentView subviews] objectAtIndex:1] frame].size; - aSize.height -= aRect.size.height; - [[[parentView subviews] objectAtIndex:1] setFrameSize:aSize]; - [[myComposeAccessoryViewOwner composeAccessoryView] setFrame:aRect]; - [parentView addSubview:[myComposeAccessoryViewOwner composeAccessoryView]]; -#endif - ((void (*)(id, SEL, id, id))MessageEditor_backEnd_didCompleteLoadForEditorSettings)(self, _cmd, fp8, fp12); -} - -- (void) gpgForwardAction:(SEL)action from:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - NSEnumerator *anEnum = [accessoryViewOwners objectEnumerator]; - id anOwner; - - while(anOwner = [anEnum nextObject]) - if([anOwner respondsToSelector:action]) - [anOwner performSelector:action withObject:sender]; -} - -- (IBAction) gpgToggleEncryptionForNewMessage:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleSignatureForNewMessage:(id)sender; -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgChoosePublicKeys:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgChoosePersonalKey:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgChoosePublicKey:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleAutomaticPublicKeysChoice:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleSymetricEncryption:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgToggleUsesOnlyOpenPGPStyle:(id)sender -{ - // Forwarded by GPGMailBundle, from menuItem action - [self gpgForwardAction:_cmd from:sender]; -} - -- (NSArray *) gpgAccessoryViewOwners -{ - return accessoryViewOwners; -} - -- (void) gpgSetAccessoryViewOwners:(NSArray *)newOwners -{ - newOwners = [[NSMutableArray alloc] initWithArray:newOwners]; - [accessoryViewOwners release]; - accessoryViewOwners = (NSMutableArray *)newOwners; -} - -- (BOOL) gpgIsRealEditor -{ -#ifdef TIGER - return (_backEnd != nil); -#else - return (backEnd != nil); -#endif -} - -- (NSToolbar *) gpgToolbar -{ - return _toolbar; -} - -- (BOOL) gpgValidateToolbarItem:(NSToolbarItem *)theItem -{ - // Forwarded by GPGMailBundle - NSEnumerator *anEnum = [accessoryViewOwners objectEnumerator]; - id anOwner; -#ifdef TIGER - // That works because we use only single segment items... - SEL action = ([theItem isKindOfClass:[MailToolbarItem class]] ? [(MailToolbarItem *)theItem actionForSegment:0] : [theItem action]); -#else - SEL action = [theItem action]; -#endif - - while(anOwner = [anEnum nextObject]) - if([anOwner respondsToSelector:action]) - return [anOwner validateToolbarItem:theItem]; - return NO; -} - -- (BOOL) gpgValidateMenuItem:(NSMenuItem *)theItem -{ - // Forwarded by GPGMailBundle - NSEnumerator *anEnum = [accessoryViewOwners objectEnumerator]; - id anOwner; - SEL action = [theItem action]; - - while(anOwner = [anEnum nextObject]) - if([anOwner respondsToSelector:action]) - return [anOwner validateMenuItem:theItem]; - return NO; -} - -- (NSPopUpButton *) gpgFromPopup -{ - return fromPopup; -} - -- (void) gpg_changeFromHeader:(id)sender -{ - ((void (*)(id, SEL, id))MessageEditor_changeFromHeader)(self, _cmd, sender); - if([GPGMail gpgMailWorks]) - [self gpgForwardAction:_cmd from:sender]; // _cmd = changeFromHeader: !!! -} - -- (void) gpgSetOptions:(NSDictionary *)options -{ - [self gpgForwardAction:_cmd from:options]; -} - -/* - + createEditorWithType:(int)fp12 originalMessage:fp16 forwardedText:fp20 showAllHeaders:(char)fp24 - { - // Is not invoked when user double-clicked message, then replied to it - // Only invoked when direct reply/forward/redirect - NSLog(@"$$$ [MessageEditor createEditorWithType:%d originalMessage:%@ forwardedText:%@ showAllHeaders:%@]", fp12, fp16, fp20, (fp24 ? @"YES":@"NO")); - return [super createEditorWithType:fp12 originalMessage:fp16 forwardedText:fp20 showAllHeaders:fp24]; - } - */ - -- (void) _gpgInitializeOptionsFromMessages:(NSArray *)messages -{ - if([messages count]){ -#if 0 - BOOL signedReplyToSignedMessage = [[GPGMailBundle sharedInstance] signsReplyToSignedMessage]; - BOOL encryptedReplyToEncryptedMessage = [[GPGMailBundle sharedInstance] encryptsReplyToEncryptedMessage]; - NSEnumerator *anEnum = [messages objectEnumerator]; - Message *aMessage; - BOOL messageWasEncrypted = NO; - BOOL messageWasSigned = NO; - BOOL messageUsedPGPMIME = NO; - NSMutableDictionary *options = [NSMutableDictionary dictionaryWithCapacity:3]; - - while((aMessage = [anEnum nextObject])){ - messageWasEncrypted = messageWasEncrypted || ([aMessage gpgIsEncrypted] || ([aMessage messageFlags] & 0x08)); - messageWasSigned = messageWasSigned || ([aMessage gpgHasSignature] || ([aMessage messageFlags] & 0x800000)); - messageUsedPGPMIME = messageUsedPGPMIME || (messageWasEncrypted || messageWasSigned) && [aMessage gpgIsPGPMIMEMessage]; - // NSLog(@"$$$ messageFlags = %08X", [aMessage messageFlags]); - } - - if(messageWasEncrypted && encryptedReplyToEncryptedMessage) - [options setObject:[NSNumber numberWithBool:YES] forKey:@"encrypted"]; - if(messageWasSigned && signedReplyToSignedMessage) - [options setObject:[NSNumber numberWithBool:YES] forKey:@"signed"]; - if(messageWasSigned || messageWasEncrypted) - [options setObject:[NSNumber numberWithBool:messageUsedPGPMIME] forKey:@"MIME"]; -#warning TODO: Retrieve signer key and pass it for encryption (or hint) - - if([options count]) - [self performSelector:@selector(gpgSetOptions:) withObject:options afterDelay:0]; -#else - NSEnumerator *anEnum = [messages objectEnumerator]; - Message *aMessage; - BOOL messageWasEncrypted = NO; - BOOL messageWasSigned = NO; - BOOL messageUsedPGPMIME = NO; - NSMutableDictionary *options = [NSMutableDictionary dictionaryWithCapacity:3]; - BOOL logging = (GPGMailLoggingLevel > 0); - - while((aMessage = [anEnum nextObject])){ - // We no longer check messageFlags, because we're not interested by S/MIME info - messageWasEncrypted = messageWasEncrypted || ([aMessage gpgIsEncrypted] /*|| ([aMessage messageFlags] & 0x08)*/); - messageWasSigned = messageWasSigned || ([aMessage gpgHasSignature] /*|| ([aMessage messageFlags] & 0x800000)*/); - messageUsedPGPMIME = messageUsedPGPMIME || (messageWasEncrypted || messageWasSigned) && [aMessage gpgIsPGPMIMEMessage]; - if(logging) - NSLog(@"[DEBUG] %@", [aMessage gpgDescription]); - } - - [options setObject:[NSNumber numberWithBool:messageWasEncrypted] forKey:@"encrypted"]; - [options setObject:[NSNumber numberWithBool:messageWasSigned] forKey:@"signed"]; - [options setObject:[NSNumber numberWithBool:messageUsedPGPMIME] forKey:@"MIME"]; -#warning TODO: Retrieve signer key and pass it for encryption (or hint) - if(logging) - NSLog(@"[DEBUG] Options for reply: %@", options); - - if([options count]) - [self performSelector:@selector(gpgSetOptions:) withObject:options afterDelay:0]; -#endif - } -} - -#ifdef TIGER -- (id)gpgInitWithType:(int)fp8 settings:(id)fp12 -{ - // Settings is a dict with array of messages ('Messages') - if(((id (*)(id, SEL, int, id))MessageEditor_initWithType_settings)(self, _cmd, fp12, fp16) && [GPGMailBundle gpgMailWorks]){ - [self _gpgInitializeOptionsFromMessages:[fp12 objectForKey:@"Messages"]]; - } - - return self; -} - -#else -- gpgInitWithType:(int)fp8 message:(Message *)message showAllHeaders:(char)fp16 -{ - if(self = ((id (*)(id, SEL, int, id, char))MessageEditor_initWithType_message_showAllHeaders)(self, _cmd, fp8, message, fp16) && [GPGMailBundle gpgMailWorks]){ -#warning Does not work for detached viewers, because passed message is the decrypted one, not the original one - // I should keep a ref from decrypted to original (and backwards?) - // Or use same technique as in Tiger... - [self _gpgInitializeOptionsFromMessages:[NSArray arrayWithObjects:message, nil]]; - } - - return self; -} -#endif - -#ifdef TIGER - -- (void)gpgComposeHeaderViewWillBeginCustomization:(id)fp8 -{ - if([GPGMailBundle gpgMailWorks]){ - // NSLog(@"%s - headerView: %@, mainContentView: %@", __PRETTY_FUNCTION__, NSStringFromRect([(NSView *)_composeHeaderView frame]), NSStringFromRect([[self mainContentView] frame])); - NSEnumerator *anEnum = [accessoryViewOwners objectEnumerator]; - MVComposeAccessoryViewOwner *eachOwner; - - while((eachOwner = [anEnum nextObject])){ - if([eachOwner isKindOfClass:[GPGMailComposeAccessoryViewOwner class]] && [[eachOwner composeAccessoryView] window] != nil){ - [[eachOwner composeAccessoryView] setHidden:YES]; - // NSLog(@"accView: %@", NSStringFromRect([[eachOwner composeAccessoryView] frame])); - } - } - } - ((void (*)(id, SEL, id))MessageEditor_composeHeaderViewWillBeginCustomization)(self, _cmd, fp8); - // NSLog(@"==> headerView: %@, mainContentView: %@", NSStringFromRect([(NSView *)_composeHeaderView frame]), NSStringFromRect([[self mainContentView] frame])); -} - -- (void)gpgComposeHeaderViewDidEndCustomization:(id)fp8 -{ - // NSLog(@"%s - headerView: %@, mainContentView: %@", __PRETTY_FUNCTION__, NSStringFromRect([(NSView *)_composeHeaderView frame]), NSStringFromRect([[self mainContentView] frame])); - ((void (*)(id, SEL, id))MessageEditor_composeHeaderViewDidEndCustomization)(self, _cmd, fp8); - - if([GPGMailBundle gpgMailWorks]){ - NSEnumerator *anEnum = [accessoryViewOwners objectEnumerator]; - MVComposeAccessoryViewOwner *eachOwner; - - while((eachOwner = [anEnum nextObject])){ - if([eachOwner isKindOfClass:[GPGMailComposeAccessoryViewOwner class]] && [[eachOwner composeAccessoryView] window] != nil){ - NSView *editorView = [self mainContentView]; - float aHeight = NSHeight([[eachOwner composeAccessoryView] frame]); - - if(NSMaxY([editorView frame]) != NSMinY([[eachOwner composeAccessoryView] frame])){ - [editorView setFrameSize:NSMakeSize(NSWidth([editorView frame]), NSHeight([editorView frame]) - aHeight)]; - NSRect aRect = [editorView frame]; - [[eachOwner composeAccessoryView] setFrame:NSMakeRect(0, NSMaxY(aRect), NSWidth(aRect), aHeight)]; - } - [[eachOwner composeAccessoryView] setHidden:NO]; - // NSLog(@"accView: %@", NSStringFromRect([[eachOwner composeAccessoryView] frame])); - } - } - } - // NSLog(@"==> headerView: %@, mainContentView: %@", NSStringFromRect([(NSView *)_composeHeaderView frame]), NSStringFromRect([[self mainContentView] frame])); -} -#endif - -@end - -#endif diff --git a/GPGMail/Source/MessageHeaders+GPGMail.h b/GPGMail/Source/MessageHeaders+GPGMail.h deleted file mode 100644 index c9001aa7..00000000 --- a/GPGMail/Source/MessageHeaders+GPGMail.h +++ /dev/null @@ -1,44 +0,0 @@ -// -// MessageHeaders+GPGMail.h -// GPGMail -// -// Created by dave on Mon Nov 27 2000. - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - - -@class NSArray; - - -@interface MessageHeaders(GPGMail) - -- (id) gpgEncodedHeadersExcludingFromSpace; - -@end diff --git a/GPGMail/Source/MessageHeaders+GPGMail.m b/GPGMail/Source/MessageHeaders+GPGMail.m deleted file mode 100644 index cbbdb4ef..00000000 --- a/GPGMail/Source/MessageHeaders+GPGMail.m +++ /dev/null @@ -1,49 +0,0 @@ -// -// MessageHeaders+GPGMail -// GPGMail -// -// Created by dave on Mon Nov 27 2000. - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - - -#import "MessageHeaders+GPGMail.h" - -#import - -#import - - -@implementation MessageHeaders(GPGMail) - -- (id) gpgEncodedHeadersExcludingFromSpace -{ - return [self encodedHeadersIncludingFromSpace:NO]; -} - -@end diff --git a/GPGMail/Source/MessageKeychainManager+GPGMail.h b/GPGMail/Source/MessageKeychainManager+GPGMail.h deleted file mode 100644 index dd197c3c..00000000 --- a/GPGMail/Source/MessageKeychainManager+GPGMail.h +++ /dev/null @@ -1,36 +0,0 @@ -/* MessageKeychainManager+GPGMail.h created by stephane on Wed 18-Feb-2004 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - - -#import - - -@interface MessageKeychainManager(GPGMail) - -@end diff --git a/GPGMail/Source/MessageKeychainManager+GPGMail.m b/GPGMail/Source/MessageKeychainManager+GPGMail.m deleted file mode 100644 index 1fdd0882..00000000 --- a/GPGMail/Source/MessageKeychainManager+GPGMail.m +++ /dev/null @@ -1,62 +0,0 @@ -/* MessageKeychainManager+GPGMail.m created by stephane on Wed 18-Feb-2004 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - - -#import "MessageKeychainManager+GPGMail.h" -#import "GPGMailBundle.h" -#import "GPGMailPatching.h" - -static IMP MessageKeychainManager_canSignMessagesFromAddress = NULL; -static IMP MessageKeychainManager_canEncryptMessagesToAddress = NULL; - -@implementation MessageKeychainManager(GPGMail) - -+ (void) load -{ - MessageKeychainManager_canSignMessagesFromAddress = GPGMail_ReplaceImpOfClassSelectorOfClassWithImpOfClassSelectorOfClass(@selector(canSignMessagesFromAddress:), self, @selector(gpgCanSignMessagesFromAddress:), self); - MessageKeychainManager_canEncryptMessagesToAddress = GPGMail_ReplaceImpOfClassSelectorOfClassWithImpOfClassSelectorOfClass(@selector(canEncryptMessagesToAddress:), self, @selector(gpgCanEncryptMessagesToAddress:), self); -} - -+ (char) gpgCanSignMessagesFromAddress:(id)fp8 -{ - if([[GPGMailBundle sharedInstance] disablesSMIME]) - return NO; - else - return ((char (*)(id, SEL, id))MessageKeychainManager_canSignMessagesFromAddress)(self, _cmd, fp8); -} - -+ (char) gpgCanEncryptMessagesToAddress:(id)fp8 -{ - if([[GPGMailBundle sharedInstance] disablesSMIME]) - return NO; - else - return ((char (*)(id, SEL, id))MessageKeychainManager_canEncryptMessagesToAddress)(self, _cmd, fp8); -} - -@end diff --git a/GPGMail/Source/MessageViewer+GPGMail.h b/GPGMail/Source/MessageViewer+GPGMail.h deleted file mode 100644 index 32cd8619..00000000 --- a/GPGMail/Source/MessageViewer+GPGMail.h +++ /dev/null @@ -1,46 +0,0 @@ -/* MessageViewer+GPGMail.h created by stephane on Tue 04-Jul-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import -#import - -@class MessageContentController; - -#ifdef SNOW_LEOPARD_64 -@interface GPGMail_MessageViewer : NSObject -#else - -@interface MessageViewer(GPGMail) -#endif - -- (MessageContentController *) gpgTextViewer:(id)dummy; -- (NSToolbar *) gpgToolbar; -- (TableViewManager *) gpgTableManager; - -@end diff --git a/GPGMail/Source/MessageViewer+GPGMail.m b/GPGMail/Source/MessageViewer+GPGMail.m deleted file mode 100644 index 9e7d88af..00000000 --- a/GPGMail/Source/MessageViewer+GPGMail.m +++ /dev/null @@ -1,160 +0,0 @@ -/* MessageViewer+GPGMail.m created by stephane on Tue 04-Jul-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import -#import "MessageViewer+GPGMail.h" -#import "GPGMailPatching.h" -#import "Message+GPGMail.h" - - -@interface NSTextView(GPGMail) -// In fact it is implemented in MessageTextView subclass -- (void) originalSelectAll:(id)sender; -@end - -#ifdef SNOW_LEOPARD_64 -@implementation GPGMail_MessageViewer -#else -@implementation MessageViewer(GPGMail) -#endif - -- (MessageContentController *) gpgTextViewer:(id)dummy -{ - return [self valueForKey:@"_contentController"]; -} - -- (NSToolbar *) gpgToolbar -{ - return [self valueForKey:@"_toolbar"]; -} - -- (TableViewManager *) gpgTableManager -{ - return [self valueForKey:@"_tableManager"]; -} - -// Mike's hack: when replying/forwarding encrypted message, select all content before replying -// And it works! -static IMP MessageViewer__replyMessageWithType = NULL; -static IMP MessageViewer_forwardMessage = NULL; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) -static IMP MessageViewer_validateMenuItem = NULL; -#endif - -+ (void) load -{ - MessageViewer__replyMessageWithType = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(_replyMessageWithType:), self, @selector(gpg_replyMessageWithType:), self); - MessageViewer_forwardMessage = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(forwardMessage:), self, @selector(gpgForwardMessage:), self); -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - MessageViewer_validateMenuItem = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(validateMenuItem:), self, @selector(gpgValidateMenuItem:), self); -#endif -} - -- (void)gpg_replyMessageWithType:(int)fp8 -{ - if(![GPGMailBundle gpgMailWorks]){ - ((void (*)(id, SEL, int))MessageViewer__replyMessageWithType)(self, _cmd, fp8); - return; - } - - // When message is encrypted and user has not selected anything, - // then we temporarily select all body content -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -#warning CHECK - BOOL changedSelection = ([self currentDisplayedMessage] != nil && [[self currentDisplayedMessage] gpgIsEncrypted] && [[self gpgTextViewer:nil] selectedText] == nil); -#else - BOOL changedSelection = ([self currentDisplayedMessage] != nil && [[self currentDisplayedMessage] gpgIsEncrypted] && [[self gpgTextViewer:nil] currentSelection] == nil); -#endif - - if(changedSelection){ - [[[self gpgTextViewer:nil] textView] originalSelectAll:nil]; // If we use -selectAll:, headers are also selected, and we don't want it, else, on deselection, headers are still selected! - } - ((void (*)(id, SEL, int))MessageViewer__replyMessageWithType)(self, _cmd, fp8); - if(changedSelection){ - [[[self gpgTextViewer:nil] textView] selectText:nil]; - } -} - -- (void)gpgForwardMessage:fp12 -{ - if(![GPGMailBundle gpgMailWorks]){ - ((void (*)(id, SEL, id))MessageViewer_forwardMessage)(self, _cmd, fp12); - return; - } - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -#warning CHECK - BOOL changedSelection = ([self currentDisplayedMessage] != nil && [[self currentDisplayedMessage] gpgIsEncrypted] && [[self gpgTextViewer:nil] selectedText] == nil); -#else - BOOL changedSelection = ([self currentDisplayedMessage] != nil && [[self currentDisplayedMessage] gpgIsEncrypted] && [[self gpgTextViewer:nil] currentSelection] == nil); -#endif - - if(changedSelection){ - [[[self gpgTextViewer:nil] textView] originalSelectAll:nil]; - } - ((void (*)(id, SEL, id))MessageViewer_forwardMessage)(self, _cmd, fp12); - if(changedSelection){ - [[[self gpgTextViewer:nil] textView] selectText:nil]; - } -} - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) -- (IBAction)gpgCopyMessageURL:(id)sender -{ - Message *message = [self currentDisplayedMessage]; - - if(message != nil){ - NSPasteboard *pb = [NSPasteboard generalPasteboard]; - NSArray *types = [NSArray arrayWithObjects:@"public.url", NSStringPboardType, @"public.url-name", nil]; - NSString *urlString = [message URL]; - NSString *subject = [message subject]; - const char *urlBytes = [urlString UTF8String]; - const char *titleBytes = [subject UTF8String]; - - [pb declareTypes:types owner:nil]; - [pb addTypes:types owner:nil]; - [pb setString:urlString forType:NSStringPboardType]; // Needed, because we want simple text editors to get the URL, not the subject - [pb setData:[NSData dataWithBytes:urlBytes length:strlen(urlBytes)] forType:@"public.url"]; // Includes NSURLPBoardType - [pb setData:[NSData dataWithBytes:titleBytes length:strlen(titleBytes)] forType:@"public.url-name"]; - } - else - NSBeep(); -} - -- (BOOL)gpgValidateMenuItem:(id)fp8 -{ - if([fp8 action] == @selector(gpgCopyMessageURL:)){ - return [self currentDisplayedMessage] != nil; - } - else - return ((BOOL (*)(id, SEL, id))MessageViewer_validateMenuItem)(self, _cmd, fp8); -} -#endif - -@end diff --git a/GPGMail/Source/MimeBody+GPGMail.h b/GPGMail/Source/MimeBody+GPGMail.h deleted file mode 100644 index ea4ba9aa..00000000 --- a/GPGMail/Source/MimeBody+GPGMail.h +++ /dev/null @@ -1,58 +0,0 @@ -/* MimeBody+GPGMail.h created by stephane on Thu 06-Jul-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - -#import "GPGMailBundle.h" - - -@class MutableMessageHeaders; - - -@interface MimeBody(GPGMail) - -- (BOOL) gpgIsEncrypted; - -- (NSData *) gpgEncryptForRecipients:(NSArray *)recipients trustAllKeys:(BOOL)trustsAllKeys signWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate format:(GPGMailFormat *)mailFormatPtr headers:(MutableMessageHeaders **)headersPtr; -// Signs only if key is not nil; passphraseDelegate is necessary only if key is not nil. -// Can raise an exception - -- (BOOL) gpgHasSignature; -- (GPGSignature *) gpgAuthenticationSignature; -// Can raise an exception -- (GPGSignature *) gpgEmbeddedAuthenticationSignature; -// Can raise an exception -// Must be used for OpenPGP embedded signatures, to avoid some checks - -- (NSData *) gpgSignWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate format:(GPGMailFormat *)mailFormatPtr headers:(MutableMessageHeaders **)headersPtr; -// Can raise an exception - -- (BOOL) gpgIsPGPMIMEMessage; - -@end diff --git a/GPGMail/Source/MimeBody+GPGMail.m b/GPGMail/Source/MimeBody+GPGMail.m deleted file mode 100644 index 79facac5..00000000 --- a/GPGMail/Source/MimeBody+GPGMail.m +++ /dev/null @@ -1,747 +0,0 @@ -/* MimeBody+GPGMail.m created by stephane on Thu 06-Jul-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "MimeBody+GPGMail.h" -#import "MimePart+GPGMail.h" -#import "MessageBody+GPGMail.h" -#import "MessageHeaders+GPGMail.h" -#import "NSData+GPGMail.h" -#import "NSString+GPGMail.h" -#import "GPGMailBundle.h" -#import "GPGMailPatching.h" - -#import -#import -#import -#import -//#import -#import -#import -#import - -#import - - -@interface MimeBody(GPGMailPrivate) -- (NSData *) gpgOpenPGPSignWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate encapsulated:(BOOL)encapsulated headers:(MutableMessageHeaders **)headersPtr; -@end - -@implementation MimeBody(GPGMail) - -- (BOOL) gpgIsEncrypted -{ - // In this case we assume that we don't need to decode quoted-printable/base64 - // Most of the time, raw data has been flushed and can be retrieved - // only this way. If we don't do this, body data is nil! - // It may happen that rawData is nil, in case message body is on server (not cached) - // and server is unreachable. If body is readable, it will never (?) return nil. -#warning COMMENTED OUT next two lines -// if([self rawData] == nil) -// return NO; -// NSParameterAssert([self rawData] != nil); - (void)[self mimeType]; - - return [[self topLevelPart] gpgIsEncrypted]; -} - -- (MessageBody *) gpgDecryptedBodyWithPassphraseDelegate:(id)passphraseDelegate signature:(NSArray **)signaturesPtr headers:(MessageHeaders **)decryptedMessageHeaders -{ - NSData *decryptedData; - - decryptedData = [[self topLevelPart] gpgDecryptedDataWithPassphraseDelegate:passphraseDelegate signatures:signaturesPtr]; // Can raise an exception - if(decryptedData){ - MutableMessageHeaders *headers = [[[self message] headers] mutableCopy]; - NSData *headerData; - NSRange headerBodySeparationRange; - - // When decrypting data which is an encapsulated signature, - // it may happen that line-endings are CRLF, what causes problems to Mail - // Let's be sure that line-endings are Unix. - // This is needed for Sylpheed's encapsulated signatures. - decryptedData = [NSMutableData dataWithData:decryptedData]; - [(NSMutableData *)decryptedData convertNetworkLineEndingsToUnix]; - headerBodySeparationRange = [decryptedData gpgHeaderBodySeparationRange]; - - // WARNING: it may happen that decrypted contains NO MIME headers!!! (plain text encryption, not OpenPGP) - // In this case, the first char is 0x0a (or maybe 0x0d ?) - // => do NOT try to get headers... - -#warning Should we not remove MIME headers first? - NSAssert(headerBodySeparationRange.location != NSNotFound, @"Unexpected case..."); - if(headerBodySeparationRange.location != 0){ - // These new headers are only MIME ones - NSString *aKey; - NSEnumerator *orderEnum; - - headerData = [decryptedData subdataWithRange:NSMakeRange(0, headerBodySeparationRange.location)];// or NSMaxRange(headerBodySeparationRange)? -if(0){ -#warning This patch does not help... - NSMutableData *myData = [NSMutableData dataWithData:headerData]; - int i = 0, myCount = [myData length]; - BOOL beginsLine = YES, myModification = NO; - char *myBytes = [myData mutableBytes]; - - for(i = 0; i < myCount; i++){ - if(myBytes[i] == ' ' && beginsLine){ - myBytes[i] = '\t'; - myModification = YES; - } - beginsLine = (myBytes[i] == '\n'); - } - if(myModification){ - [myData convertNetworkLineEndingsToUnix]; - headerData = myData; - } -} - MessageHeaders *tempHeaders; - - tempHeaders = [[MessageHeaders alloc] initWithHeaderData:headerData encoding:kCFStringEncodingUTF8]; // Core Foundation encoding! - orderEnum = [[headers _decodeHeaderKeysFromData:headerData] objectEnumerator]; - while(aKey = [orderEnum nextObject]) -#if defined(SNOW_LEOPARD) || defined(LEOPARD) -#warning FIXME: LEOPARD - which method?? - [headers setHeader:[tempHeaders firstHeaderForKey:aKey] forKey:aKey]; -#else - [headers setHeader:[tempHeaders _headerValueForKey:aKey] forKey:aKey]; -#endif - [tempHeaders release]; - } - else{ - // plain/text (non OpenPGP style) messages - headerData = [NSData dataWithData:[[[self message] messageStore] headerDataForMessage:[self message]]]; - } - // Tomio used to include headerBodySeparation in decrypted data, whereas I don't - // Including it means that we also add a supplementary separating line - // between displayed headers and body. - decryptedData = [decryptedData subdataWithRange:NSMakeRange(NSMaxRange(headerBodySeparationRange), [decryptedData length] - NSMaxRange(headerBodySeparationRange))]; // We NEED to remove headers from body data... - - *decryptedMessageHeaders = [headers autorelease]; - // Headers are now OK - - { - MimeBody *decryptedBody = [[MimeBody alloc] init]; - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -#warning FIXME: No longer needed - done differently? - // [((MessageStore *)[[self message] messageStore])->_caches.objectCaches._bodyDataCache setObject:decryptedData forKey:[NSValue valueWithNonretainedObject:decryptedBody]]; - // [((MessageStore *)[[self message] messageStore])->_caches.objectCaches._headerCache setObject:headerData forKey:[NSValue valueWithNonretainedObject:decryptedBody]]; - return [NSDictionary dictionaryWithObjectsAndKeys:headerData, @"headerData", decryptedData, @"decryptedData", [decryptedBody autorelease], @"decryptedBody", nil]; -#else - [((MessageStore *)[[self message] messageStore])->_bodyDataCache setObject:decryptedData forKey:decryptedBody]; - [((MessageStore *)[[self message] messageStore])->_headerCache setObject:headerData forKey:decryptedBody]; - return [decryptedBody autorelease]; -#endif - } - } - return nil; -} - -- (NSData *) gpgOpenPGPEncryptForRecipients:(NSArray *)recipients trustAllKeys:(BOOL)trustsAllKeys signWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate headers:(MutableMessageHeaders **)headersPtr -{ - // (Message may be signed or not; if signed, signature is embedded in encrypted file) - // Copy headers content-transfer-encoding and content-type to the beginning of the body (+ empty line) - // Set headers Content-Type = multipart/encrypted; boundary=foo; protocol="application/pgp-encrypted" - // and content-transfer-encoding = ??? - // Encode modified body - // Modify body this way: - - // --foo - // Content-Type: application/pgp-encrypted - // - // Version: 1 - // - // --foo - // Content-Type: application/octet-stream - // - // - // - // --foo-- - - // Perhaps we will need to register ourself as handler for these new MIME types. - // Other headers: content-id, content-description, content-disposition - - // First, we need to retrieve the MIME-specific headers; they need to be embedded in the encrypted data. - NSMutableData *dataToEncrypt = [NSMutableData data]; - NSData *encryptedData = nil; - MutableMessageHeaders *newHeaders = [[[self message] headers] mutableCopy]; - MutableMessageHeaders *headersToEncrypt = [[MutableMessageHeaders alloc] init]; - NSString *newBoundary = [MimeBody createMimeBoundary]; - BOOL usesQuotedPrintable = NO; - GPGContext *aContext; - GPGData *inputData; - NSData *rawData = [self gpgRawData]; - - [headersToEncrypt setHeader:[newHeaders firstHeaderForKey:@"content-type"] forKey:@"content-type"]; - [headersToEncrypt setHeader:[newHeaders firstHeaderForKey:@"content-transfer-encoding"] forKey:@"content-transfer-encoding"]; - - NSAssert2([rawData length] > 0, @"-[%@ %@]: No data to encrypt!", NSStringFromClass([self class]), NSStringFromSelector(_cmd)); - - // We don't support 8bit data from Mail; this is OK currently. - // Would we support it, we should check all MIME parts for their charset - // (if content-transfer-encoding is 8bit), and find the common one, - // then convert parts to this encoding, OR use quoted-printable or base64. - // Much too complicated, and not necessary currently. - // Note that RFC3156 accepts encrypting 8bit data, if data is not signed. -// NSAssert(![rawData gpgContainsNonASCIICharacter], @"We support only 7bit content-transfer-encoding"); - - if(key != nil){ - if(![[GPGMailBundle sharedInstance] usesEncapsulatedSignature]){ - [dataToEncrypt appendData:[headersToEncrypt gpgEncodedHeadersExcludingFromSpace]]; // Already contains ending spacer - [dataToEncrypt appendData:rawData]; - // Fix for attachments which contain non-ASCII chars: despite this has been reported to Apple, - // they don't consider it a bug; let's replace non-ASCII chars (normally only in headers) by '_' - [dataToEncrypt gpgASCIIfy]; -// [dataToEncrypt gpgNormalizeDataForSigning]; - } - else{ - // RFC 1847 Encapsulation - NSData *tempData = [self gpgOpenPGPSignWithKey:key passphraseDelegate:passphraseDelegate encapsulated:YES headers:headersPtr]; - - key = nil; - [dataToEncrypt appendData:tempData]; - } - } - else{ - [dataToEncrypt appendData:[headersToEncrypt gpgEncodedHeadersExcludingFromSpace]]; // Already contains ending spacer - [dataToEncrypt appendData:rawData]; - } - - aContext = [[GPGContext alloc] init]; - [aContext setPassphraseDelegate:passphraseDelegate]; - [aContext setUsesArmor:YES]; - [aContext setUsesTextMode:YES]; - if(key != nil){ - [aContext addSignerKey:key]; - } - inputData = [[GPGData alloc] initWithData:dataToEncrypt]; - if(GPGMailLoggingLevel & GPGMailDebug_SaveInputDataMask){ - NSString *filename = [NSTemporaryDirectory() stringByAppendingPathComponent:[[[NSProcessInfo processInfo] globallyUniqueString] stringByAppendingPathExtension:@"txt"]]; - - if([dataToEncrypt writeToFile:filename atomically:NO]) - NSLog(@"[DEBUG] Data to encrypt/sign in %@", filename); - else - NSLog(@"[DEBUG] FAILED to write data to encrypt/sign in %@", filename); - } - @try{ - GPGData *outputData; - -#warning Set encoding! - if(key != nil) - outputData = [aContext encryptedSignedData:inputData withKeys:recipients trustAllKeys:trustsAllKeys /* encoding:kCFStringEncodingISOLatin1*/]; // Can raise an exception - else{ - if(recipients == nil){ - // Symetric encryption - outputData = [aContext encryptedData:inputData/* encoding:kCFStringEncodingISOLatin1*/]; // Can raise an exception - } - else - outputData = [aContext encryptedData:inputData withKeys:recipients trustAllKeys:trustsAllKeys/* encoding:kCFStringEncodingISOLatin1*/]; // Can raise an exception - } - - // Can also happen when a key has been revoked, is invalid, has expired -// [NSException raise:NSGenericException format:@"Unable to find public keys for some addresses, or keys need to be (locally) signed"]; - encryptedData = [[[outputData data] retain] autorelease]; // Because context will be freed - }@catch(NSException *localException){ - [inputData release]; - [aContext release]; - [newHeaders release]; - [headersToEncrypt release]; - [localException raise]; - } - [inputData release]; - [aContext release]; - [headersToEncrypt release]; - - // We check whether encryptedData contains only ASCII; might not be the case - // if user added a comment to the armor with other chars... (this is bad practice) - // In that case, we always use UTF-8 (We could/should test whether data is valid UTF8). - if([encryptedData gpgContainsNonASCIICharacter]){ - encryptedData = [encryptedData encodeQuotedPrintableForText:YES]; - usesQuotedPrintable = YES; - } - - [newHeaders removeHeaderForKey:@"content-type"]; - [newHeaders removeHeaderForKey:@"content-transfer-encoding"]; - [newHeaders setHeader:@"7bit" forKey:@"content-transfer-encoding"]; - [newHeaders setHeader:[NSString stringWithFormat:@"multipart/encrypted; protocol=\"application/pgp-encrypted\";\n\tboundary=\"%@\"", newBoundary] forKey:@"content-type"]; - if([[GPGMailBundle sharedInstance] addsCustomHeaders]) - [newHeaders setHeader:[@"GPGMail " stringByAppendingString:[(GPGMailBundle *)[GPGMailBundle sharedInstance] version]] forKey:GPGMailHeaderKey]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - newHeaders = [[MutableMessageHeaders alloc] initWithHeaderData:[[newHeaders autorelease] encodedHeadersIncludingFromSpace:NO] encoding:[newHeaders preferredEncoding]]; // Needed, to ensure _data ivar is updated -#endif - if(headersPtr != NULL) - *headersPtr = newHeaders; - [newHeaders autorelease]; - - dataToEncrypt = [NSMutableData data]; -#if 0 - [dataToEncrypt appendData:[@"\n--" dataUsingEncoding:NSASCIIStringEncoding]]; -#else -#warning According to Tomio, we should not have a LF as first char - [dataToEncrypt appendData:[@"--" dataUsingEncoding:NSASCIIStringEncoding]]; -#endif - [dataToEncrypt appendData:[newBoundary dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[@"\n" dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[@"content-type: application/pgp-encrypted\n" dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[@"content-transfer-encoding: 7bit\n" dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[@"content-description: " dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[NSLocalizedStringFromTableInBundle(@"CONTENT_DESCRIPTION_HEADER", @"GPGMail", [NSBundle bundleForClass:[GPGMailBundle class]], "") encodedHeaderData]]; - [dataToEncrypt appendData:[@"\n\n"dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[@"Version: 1\n\n--" dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[newBoundary dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[@"\n" dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[@"content-type: application/octet-stream; name=\"" dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[NSLocalizedStringFromTableInBundle(@"PGP_ENCRYPTED_FILENAME", @"GPGMail", [NSBundle bundleForClass:[GPGMailBundle class]], "") encodedHeaderData]]; - [dataToEncrypt appendData:[@".asc\"" dataUsingEncoding:NSASCIIStringEncoding]]; - if(!usesQuotedPrintable){ - [dataToEncrypt appendData:[@"\n" dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[@"content-transfer-encoding: 7bit\n" dataUsingEncoding:NSASCIIStringEncoding]]; - } - else{ - [dataToEncrypt appendData:[[@"; charset=" stringByAppendingString:(NSString *)CFStringConvertEncodingToIANACharSetName(kCFStringEncodingUTF8)] dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[@"content-transfer-encoding: quoted-printable\n" dataUsingEncoding:NSASCIIStringEncoding]]; - } - [dataToEncrypt appendData:[@"content-description: " dataUsingEncoding:NSASCIIStringEncoding]]; -#warning Take care of line length - [dataToEncrypt appendData:[NSLocalizedStringFromTableInBundle(@"This is an encrypted message part", @"GPGMail", [NSBundle bundleForClass:[GPGMailBundle class]], "") encodedHeaderData]]; - // Now we do it like Enigmail: we put content inline (but still provide a file name) - [dataToEncrypt appendData:[@"\ncontent-disposition: inline; filename=\"" dataUsingEncoding:NSASCIIStringEncoding]]; -#warning Take care of line length - [dataToEncrypt appendData:[NSLocalizedStringFromTableInBundle(@"PGP_ENCRYPTED_FILENAME", @"GPGMail", [NSBundle bundleForClass:[GPGMailBundle class]], "") encodedHeaderData]]; - [dataToEncrypt appendData:[@".asc\"\n\n" dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:encryptedData]; - [dataToEncrypt appendData:[@"\n--" dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[newBoundary dataUsingEncoding:NSASCIIStringEncoding]]; - [dataToEncrypt appendData:[@"--\n" dataUsingEncoding:NSASCIIStringEncoding]]; - - return [[dataToEncrypt retain] autorelease]; -} - -- (NSData *) gpgEncryptForRecipients:(NSArray *)recipients trustAllKeys:(BOOL)trustsAllKeys signWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate format:(GPGMailFormat *)mailFormatPtr headers:(MutableMessageHeaders **)headersPtr -{ - NSParameterAssert(mailFormatPtr != NULL); - switch(*mailFormatPtr){ - case GPGLegacyPGPMailFormat: - case GPGAutomaticMailFormat: - // Bug: if message contains only an attachment of type text/plain, - // even if message is actually multipart, [self mimeType] still returns "text"! - // => check top-level part: - if([[(MimePart *)[self topLevelPart] type] isEqualToString:@"text"] && [[(MimePart *)[self topLevelPart] subtype] isEqualToString:@"plain"]){ - // Plain text (inline) old style - *mailFormatPtr = GPGLegacyPGPMailFormat; - return [super gpgEncryptForRecipients:recipients trustAllKeys:trustsAllKeys signWithKey:key passphraseDelegate:passphraseDelegate format:mailFormatPtr headers:headersPtr]; - } - else - *mailFormatPtr = GPGOpenPGPMailFormat; - // No break, on purpose! - case GPGOpenPGPMailFormat: - // OpenPGP style - return [self gpgOpenPGPEncryptForRecipients:recipients trustAllKeys:trustsAllKeys signWithKey:key passphraseDelegate:passphraseDelegate headers:headersPtr]; - default: - NSAssert1(*mailFormatPtr == GPGLegacyPGPMailFormat || *mailFormatPtr == GPGAutomaticMailFormat || *mailFormatPtr == GPGOpenPGPMailFormat, @"Invalid mail format (%d)!", *mailFormatPtr); - return nil; // Never reached - } -} - -- (BOOL) gpgHasSignature -{ - // In this case we assume that we don't need to decode quoted-printable/base64 - // Most of the time, raw data has been flushed and can be retrieved - // only this way. If we don't do this, body data is nil! - // It may happen that rawData is nil, in case message body is on server (not cached) - // and server is unreachable. If body is readable, it will never (?) return nil. -#warning COMMENTED OUT next two lines -// if([self rawData] == nil) -// return NO; -// NSParameterAssert([self rawData] != nil); - (void)[self mimeType]; // Still needed? - - return [[self topLevelPart] gpgHasSignature]; -} - -- (BOOL) gpgAllAttachmentsAreAvailable -{ - return [[self topLevelPart] gpgAllAttachmentsAreAvailable]; -} - -- (GPGSignature *) gpgEmbeddedAuthenticationSignature -{ - return [[self topLevelPart] gpgAuthenticationSignature]; // Can raise an exception -} - -- (GPGSignature *) gpgAuthenticationSignature -{ - return [[self topLevelPart] gpgAuthenticationSignature]; // Can raise an exception -} - -- (NSData *)gpgRawDataWithEnforcedQuotedPrintable -{ - // TODO: recreate message body and parts; for each text/plain part, - // enforce quoted-printable; create new message from these parts, - // and get the message body's raw data -// BOOL modifiedBody = NO; -// NSEnumerator *partEnum = [self allPartsEnumerator]; -// MimePart *eachPart; -// -// while(eachPart = [partEnum nextObject]){ -// if([[[eachPart type] lowercaseString] isEqualToString:@"text"] && [[[eachPart subtype] lowercaseString] isEqualToString:@"plain"] && [[[eachPart contentTransferEncoding] lowercaseString] isEqualToString:@"7bit"]){ -// modifiedBody = YES; -// [eachPart setContentTransferEncoding:@"quoted-printable"]; -// } -// } -// if(modifiedBody) -// NSLog(@"===>\n%@", [[[NSString alloc] initWithData:[self gpgRawData] encoding:NSASCIIStringEncoding] autorelease]); // TODO: will still return old data; how to change that? Clear cache? MessageWriter is used in a separate thread... - - return [self gpgRawData]; -} - -- (NSData *) gpgOpenPGPSignWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate encapsulated:(BOOL)encapsulated headers:(MutableMessageHeaders **)headersPtr -{ - // Copy headers content-transfer-encoding and content-type to the beginning of the body (+ empty line?) - // Set headers Content-Type = multipart/signed; boundary=bar; micalg=pgp-md5; protocol="application/pgp-signature" - // and content-transfer-encoding = ??? - // Encode modified body - // Modify body this way: - - // --bar - // original encoded body, prepended with headers (used for sig too)> - // - // --bar - // Content-Type: application/pgp-signature - // - // - // - // --foo-- - - NSMutableData *dataToSign = [NSMutableData data], *signedData; - NSData *signatureData = nil; - MutableMessageHeaders *newHeaders = [[[self message] headers] mutableCopy]; - MutableMessageHeaders *headersToSign = [[MutableMessageHeaders alloc] init]; - NSString *newBoundary = [MimeBody createMimeBoundary]; - GPGHandler *aHandler; - BOOL signatureDataIsOnlyASCII; - GPGContext *aContext; - GPGData *inputData; -// NSData *data; - GPGSignature *newSignature; - NSData *rawData = /*[self gpgRawData]*/[self gpgRawDataWithEnforcedQuotedPrintable]; - - [headersToSign setHeader:[newHeaders firstHeaderForKey:@"content-type"] forKey:@"content-type"]; - [headersToSign setHeader:[newHeaders firstHeaderForKey:@"content-transfer-encoding"] forKey:@"content-transfer-encoding"]; - - NSAssert2([rawData length] > 0, @"-[%@ %@]: No data to sign!", NSStringFromClass([self class]), NSStringFromSelector(_cmd)); - - // 'From ' escaping is done by Mail, no need to check. - // We also don't need to check for trailing spaces, Mail cares for it. FIXME: NOT TRUE!!! - [dataToSign appendData:[headersToSign gpgEncodedHeadersExcludingFromSpace]]; // Already contains ending spacer - [dataToSign appendData:rawData]; - [dataToSign gpgNormalizeDataForSigning]; - // "all data signed according to this protocol MUST be constrained to 7 bits" - // Normally, Mail already takes care of it, by using quoted-printable or base64 if necessary - if([dataToSign gpgContainsNonASCIICharacter]){ - // Fix for attachments which contain non-ASCII chars: despite this has been reported to Apple, - // they don't consider it a bug; let's replace non-ASCII chars (normally only in headers) by '_' - [dataToSign gpgASCIIfy]; - } - NSAssert(![dataToSign gpgContainsNonASCIICharacter], @"Signed part can only contain 7bit bytes"); - - aContext = [[GPGContext alloc] init]; - [aContext setPassphraseDelegate:passphraseDelegate]; - [aContext setUsesArmor:YES]; - [aContext setUsesTextMode:YES]; - [aContext addSignerKey:key]; -#warning FIXME: For each text/plain format=flowed MIME part, fix the usenet sig space by quoting it -// if([[eachPart bodyParameterForKey:@"format"] isEqualToString:@"flowed"]) -// dataToSign = [dataToSign gpgFormatFlowedFixedWithCRLF:useCRLF useQP:NO]; - // We can iterate through all parts, and ask them for their format=flowed, and getting their data - // out of [self rawData] using their -range - inputData = [[GPGData alloc] initWithData:dataToSign]; - if(GPGMailLoggingLevel & GPGMailDebug_SaveInputDataMask){ - NSString *filename = [NSTemporaryDirectory() stringByAppendingPathComponent:[[[NSProcessInfo processInfo] globallyUniqueString] stringByAppendingPathExtension:@"txt"]]; - - if([dataToSign writeToFile:filename atomically:NO]) - NSLog(@"[DEBUG] Data to sign in %@", filename); - else - NSLog(@"[DEBUG] FAILED to write data to sign in %@", filename); - } - @try{ -#warning Use kCFStringEncodingISOLatin1 encoding! - GPGData *outputData = [aContext signedData:inputData signatureMode:GPGSignatureModeDetach /*encoding:kCFStringEncodingISOLatin1*/]; // Can raise an exception - // We can safely use kCFStringEncodingISOLatin1, because dataToSign is only on 7 bits - - signatureData = [outputData data]; - }@catch(NSException *localException){ - [inputData release]; - [aContext release]; - [newHeaders release]; - [headersToSign release]; - [localException raise]; - } - [inputData release]; - - newSignature = [[[aContext operationResults] objectForKey:@"newSignatures"] lastObject]; - if(newSignature == nil){ - NSLog(@"### GPGMail: unable to create signature!"); - [aContext release]; - [newHeaders release]; - [headersToSign release]; -#warning FIXME: Use specific error message - [NSException raise:GPGMailException format:@"NO_VALID_PRIVATE_KEY"]; - } - - aHandler = [GPGHandler handler]; - if(!encapsulated){ - NSString *hashAlgorithm = [[GPGMailBundle sharedInstance] hashAlgorithmDescription:[newSignature hashAlgorithm]]; // FIXME: Should we check strict conformance to OpenPGP in hash choice? - - [newHeaders removeHeaderForKey:@"content-type"]; - [newHeaders removeHeaderForKey:@"content-transfer-encoding"]; - [newHeaders setHeader:[NSString stringWithFormat:@"multipart/signed; protocol=\"application/pgp-signature\";\n\tmicalg=%@; boundary=\"%@\"", [@"pgp-" stringByAppendingString:hashAlgorithm], newBoundary] forKey:@"content-type"]; - [newHeaders setHeader:@"7bit" forKey:@"content-transfer-encoding"]; - if([[GPGMailBundle sharedInstance] addsCustomHeaders]) - [newHeaders setHeader:[@"GPGMail " stringByAppendingString:[(GPGMailBundle *)[GPGMailBundle sharedInstance] version]] forKey:GPGMailHeaderKey]; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - newHeaders = [[MutableMessageHeaders alloc] initWithHeaderData:[[newHeaders autorelease] encodedHeadersIncludingFromSpace:NO] encoding:[newHeaders preferredEncoding]]; // Needed, to ensure _data ivar is updated -#endif - if(headersPtr != NULL) - *headersPtr = newHeaders; - } - [newHeaders autorelease]; - - signedData = [NSMutableData data]; - if(!encapsulated) -#if 1 -#warning RESTORED THIS, BECAUSE WAS MISSING SPACER - [signedData appendData:[@"\n--" dataUsingEncoding:NSASCIIStringEncoding]]; -#else -#warning According to Tomio, we should not have LF as first char - [signedData appendData:[@"--" dataUsingEncoding:NSASCIIStringEncoding]]; -#endif - else{ - NSString *hashAlgorithm = [[GPGMailBundle sharedInstance] hashAlgorithmDescription:[newSignature hashAlgorithm]]; // FIXME: Should we check strict conformance to OpenPGP in hash choice? - - [signedData appendData:[[NSString stringWithFormat:@"Content-type: multipart/signed; protocol=\"application/pgp-signature\";\n\tmicalg=%@; boundary=\"%@\"\n", [@"pgp-" stringByAppendingString:hashAlgorithm], newBoundary] dataUsingEncoding:NSASCIIStringEncoding]]; - [signedData appendData:[@"Content-transfer-encoding: 7bit\n" dataUsingEncoding:NSASCIIStringEncoding]]; - if([[GPGMailBundle sharedInstance] addsCustomHeaders]) - [signedData appendData:[[NSString stringWithFormat:@"%@: GPGMail %@\n", GPGMailHeaderKey, [(GPGMailBundle *)[GPGMailBundle sharedInstance] version]] dataUsingEncoding:NSASCIIStringEncoding]]; - - [signedData appendData:[@"\n--" dataUsingEncoding:NSASCIIStringEncoding]]; - } - [signedData appendData:[newBoundary dataUsingEncoding:NSASCIIStringEncoding]]; - [signedData appendData:[@"\n" dataUsingEncoding:NSASCIIStringEncoding]]; -#if 0 - [signedData appendData:[headersToSign gpgEncodedHeadersExcludingFromSpace]]; // Already contains ending spacer - [signedData appendData:[self rawData]]; -#else -#warning CHECK THIS - { - NSMutableData *convertedData = [NSMutableData dataWithData:dataToSign]; - - [convertedData convertNetworkLineEndingsToUnix]; - [signedData appendData:convertedData]; - } -#endif - [signedData appendData:[[NSString stringWithFormat:@"\n--%@\n", newBoundary] dataUsingEncoding:NSASCIIStringEncoding]]; - [headersToSign release]; - - // Signature part - // We check whether signatureData contains only ASCII; might not be the case - // if user added a comment to the armor with other chars... (this is bad practice) - // In that case, we always use UTF-8 (We could/should test whether data is valid UTF8). - signatureDataIsOnlyASCII = ![signatureData gpgContainsNonASCIICharacter]; - [signedData appendData:[@"content-type: application/pgp-signature; x-mac-type=70674453;\n\tname=" dataUsingEncoding:NSASCIIStringEncoding]]; -#warning CHECK whether we need to enclose filename in double-quotes -#warning Take care of line length - [signedData appendData:[NSLocalizedStringFromTableInBundle(@"PGP_SIGNATURE_FILENAME", @"GPGMail", [NSBundle bundleForClass:[GPGMailBundle class]], "") encodedHeaderData]]; - [signedData appendData:[@".sig" dataUsingEncoding:NSASCIIStringEncoding]]; - if(!signatureDataIsOnlyASCII) - [signedData appendData:[[@"; charset=" stringByAppendingString:(NSString *)CFStringConvertEncodingToIANACharSetName(kCFStringEncodingUTF8)] dataUsingEncoding:NSASCIIStringEncoding]]; - [signedData appendData:[@"\ncontent-description: " dataUsingEncoding:NSASCIIStringEncoding]]; -#warning Take care of line length - [signedData appendData:[NSLocalizedStringFromTableInBundle(@"This is a digitally signed message part", @"GPGMail", [NSBundle bundleForClass:[GPGMailBundle class]], "") encodedHeaderData]]; - [signedData appendData:[@"\ncontent-disposition: inline; filename=" dataUsingEncoding:NSASCIIStringEncoding]]; -#warning CHECK whether we need to enclose filename in double-quotes -#warning Take care of line length - [signedData appendData:[NSLocalizedStringFromTableInBundle(@"PGP_SIGNATURE_FILENAME", @"GPGMail", [NSBundle bundleForClass:[GPGMailBundle class]], "") encodedHeaderData]]; - [signedData appendData:[@".sig\n" dataUsingEncoding:NSASCIIStringEncoding]]; - // Force the use of quoted-printable. It should be more robust (Idea by Roberto Aguilar!) - if(!signatureDataIsOnlyASCII){ - signatureData = [signatureData encodeQuotedPrintableForText:YES]; - // What about base64 instead? - [signedData appendData:[@"content-transfer-encoding: quoted-printable\n\n" dataUsingEncoding:NSASCIIStringEncoding]]; - } - else - [signedData appendData:[@"content-transfer-encoding: 7bit\n\n" dataUsingEncoding:NSASCIIStringEncoding]]; - [signedData appendData:signatureData]; - [signedData appendData:[[NSString stringWithFormat:@"\n--%@--\n", newBoundary] dataUsingEncoding:NSASCIIStringEncoding]]; - [aContext release]; - - return [[signedData retain] autorelease]; -} - -- (NSData *) gpgSignWithKey:(GPGKey *)key passphraseDelegate:(id)passphraseDelegate format:(GPGMailFormat *)mailFormatPtr headers:(MutableMessageHeaders **)headersPtr -{ - NSParameterAssert(mailFormatPtr != NULL); - switch(*mailFormatPtr){ - case GPGLegacyPGPMailFormat: - case GPGAutomaticMailFormat: - if([[self mimeType] isEqualToString:@"text"] && [[self mimeSubtype] isEqualToString:@"plain"]){ - *mailFormatPtr = GPGLegacyPGPMailFormat; - return [super gpgSignWithKey:key passphraseDelegate:passphraseDelegate format:mailFormatPtr headers:headersPtr]; - } - else - *mailFormatPtr = GPGOpenPGPMailFormat; - // No break, on purpose! - case GPGOpenPGPMailFormat: - return [self gpgOpenPGPSignWithKey:key passphraseDelegate:passphraseDelegate encapsulated:NO headers:headersPtr]; - default: - NSAssert1(*mailFormatPtr == GPGLegacyPGPMailFormat || *mailFormatPtr == GPGAutomaticMailFormat || *mailFormatPtr == GPGOpenPGPMailFormat, @"Invalid mail format (%d)!", *mailFormatPtr); - return nil; // Never reached - } -} - -- (BOOL) gpgIsPGPMIMEMessage -{ - return [[self topLevelPart] gpgIsOpenPGPEncryptedContainerPart] || [[self topLevelPart] gpgIsOpenPGPSignedContainerPart]; -} - -@end - -#if 0 - -@interface NSDataMessageStore : MessageStore -{ - NSData *_data; // 88 = 0x58 -} - -- (id)initWithData:(id)fp8; -- (void)dealloc; -- (id)storePath; -- (id)headerDataForMessage:(id)fp8; -- (id)bodyDataForMessage:(id)fp8; -- (id)_setOrGetBody:(id)fp8 forMessage:(id)fp12; - -@end - -#import "GPGMailPatching.h" -#import "MimePart.h" - -@implementation MimePart(XXX) - -static IMP MimePart_decodeText = NULL; -static IMP MimePart_decryptedMessageBody = NULL; -/* -+ (void) load -{ - MimePart_decodeText = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(decodeText), [MimePart class], @selector(gpgDecodeText), [MimePart class]); - MimePart_decryptedMessageBody = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(decryptedMessageBody), [MimePart class], @selector(gpgDecryptedMessageBody), [MimePart class]); -} -*/ -- (void) xxxdecrypt -{ - if([self decryptedMessageBody] == nil){ - if([self gpgIsEncrypted]){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %p decryption...", self); - GPGSignature *aSignature = nil; - NSArray *signatures = nil; - MimeBody *decryptedBody; - MessageHeaders *decryptedMessageHeaders; - MessageStore *messageStore = [(Message *)[[self mimeBody] message] messageStore]; - - decryptedBody = [[self mimeBody] gpgDecryptedBodyWithPassphraseDelegate:[GPGMailBundle sharedInstance] signatures:&signatures headers:&decryptedMessageHeaders]; - if(signatures != nil && [signatures count] > 0) - aSignature = [signatures objectAtIndex:0]; - NSMutableData *headerData = [decryptedMessageHeaders encodedHeadersIncludingFromSpace:NO]; - NSMutableData *theData = [NSMutableData dataWithData:headerData]; - id dataMessageStore = messageStore; // should be NSMessageDataStore - - [theData appendData:[messageStore->_bodyDataCache objectForKey:decryptedBody]]; - Message *decryptedMessage = [Message messageWithRFC822Data:theData]; - [decryptedBody setMessage:decryptedMessage]; - [messageStore _setHeaderDataInCache:headerData forMessage:decryptedMessage]; - [messageStore->_headerCache removeObjectForKey:decryptedBody]; - [decryptedMessage setMessageFlags:[[[self mimeBody] message] messageFlags]]; - [messageStore->_bodyCache setObject:decryptedBody forKey:decryptedMessage]; - [messageStore->_bodyDataCache setObject:[messageStore->_bodyDataCache objectForKey:decryptedBody] forKey:decryptedMessage]; - [messageStore->_bodyDataCache removeObjectForKey:decryptedBody]; - [decryptedMessage setMessageStore:dataMessageStore]; - [[decryptedMessage messageStore] setNumberOfAttachments:[[decryptedBody attachments] count] isSigned:(aSignature != nil && [aSignature validityError] == GPGErrorNoError) isEncrypted:YES forMessage:decryptedMessage]; - MimePart *newPart = [[MimePart alloc] init]; - [(MimeBody *)decryptedBody setTopLevelPart:newPart]; - [newPart setMimeBody:decryptedBody]; - [newPart release]; - NSAssert1([[(MimeBody *)decryptedBody topLevelPart] parseMimeBody], @"### GPGMail: %s: cannot parse body!", __PRETTY_FUNCTION__); - - [self _setDecryptedMessageBody:decryptedBody]; - [[[[self mimeBody] message] messageStore] setNumberOfAttachments:0 isSigned:(aSignature != nil) isEncrypted:YES forMessage:[[self mimeBody] message]]; - NSLog(@"[self decryptedMessageBody] = %@", [self decryptedMessageBody]); -#warning Maybe will work when we use real NSDataMessageStore? - } - } -} - -- (id) gpgDecodeText -{ - id result; - - [self xxxdecrypt]; - result = MimePart_decodeText(self, _cmd); - - return result; -} - -- (id) gpgDecryptedMessageBody -{ - if(GPGMailLoggingLevel) - NSLog(@"%p decryptedMessageBody", self); - id result = MimePart_decryptedMessageBody(self, _cmd); - if(GPGMailLoggingLevel) - NSLog(@"=> %@", result); - return result; -} - -@end - -#endif - -// FIXME: Never invoked -//@implementation MessageWriter(GPGMail) -// -//static IMP MessageWriter_appendDataForMimePart_toData_withPartData = NULL; -// -//+ (void)load -//{ -// MessageWriter_appendDataForMimePart_toData_withPartData = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(appendDataForMimePart:toData:withPartData:), [MessageWriter class], @selector(gpgAppendDataForMimePart:toData:withPartData:), [MessageWriter class]); -//} -// -//- (void)gpgAppendDataForMimePart:(id)fp8 toData:(id)fp12 withPartData:(id)fp16 -//{ -// ((void (*)(id, SEL, id, id, id))MessageWriter_appendDataForMimePart_toData_withPartData)(self, _cmd, fp8, fp12, fp16); -//} -// -//@end diff --git a/GPGMail/Source/MimePart+GPGMail.h b/GPGMail/Source/MimePart+GPGMail.h deleted file mode 100644 index 3d33d3c4..00000000 --- a/GPGMail/Source/MimePart+GPGMail.h +++ /dev/null @@ -1,64 +0,0 @@ -/* MimePart+GPGMail.h created by stephane on Mon 10-Jul-2000 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - -#import - - -@interface MimePart(GPGMail) - -- (BOOL) gpgIsEncrypted; -// Checks MIME headers/parameters; does not (currently) look in sub-parts - -- (NSData *) gpgDecryptedDataWithPassphraseDelegate:(id)passphraseDelegate signatures:(NSArray **)signaturesPtr; -// Decrypts self; does not (currently) look in sub-parts -// Returns nil if nothing to decrypt -// Can raise an exception - -- (BOOL) gpgHasSignature; -// Returns YES if recognizes signature block in self; does not (currently) look in sub-parts - -- (GPGSignature *) gpgAuthenticationSignature; -// Returns the signature retrieved from self; does not (currently) look in sub-parts -// Can raise an exception - -- (BOOL) gpgAllAttachmentsAreAvailable; -// Checks that part and subparts have downloaded all attachments. Needed for authentication. - -- (BOOL) gpgSaveBodyToFile:fp12; - -- (BOOL) gpgIsOpenPGPEncryptedContainerPart; -- (BOOL) gpgIsOpenPGPSignedContainerPart; - -- (void)resetGpgCache; -- (id) gpgBetterDecode; - -@end - diff --git a/GPGMail/Source/MimePart+GPGMail.m b/GPGMail/Source/MimePart+GPGMail.m deleted file mode 100644 index 53fd64c4..00000000 --- a/GPGMail/Source/MimePart+GPGMail.m +++ /dev/null @@ -1,1978 +0,0 @@ -/* MimePart+GPGMail.m created by stephane on Mon 10-Jul-2000 */ - -/* - * Copyright (c) 2000-2008, Stéphane Corthésy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stéphane Corthésy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STÉPHANE CORTHÉSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STÉPHANE CORTHÉSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "MimePart+GPGMail.h" -#import "NSData+GPGMail.h" -#import "NSString+GPGMail.h" -#import "GPGMailBundle.h" -#import "GPGMailPatching.h" -#import "Message+GPGMail.h" -#import "NSObject+GPGMail.h" - -#import "GPG.subproj/GPGHandler.h" - -#import -#import -#import -#import -#import -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) -#import -#endif - -#import -#import - -#define DECRYPT_PGP_ATTACHMENTS 1 - -@implementation MimePart(GPGMail) - -GPG_DECLARE_EXTRA_IVARS(MimePart) - -- (NSData *) gpgFullBodyPartData -{ -#warning FIXME: Does not work when (IMAP) account is offline! - // fullBodyDataForMessage: and dataForMimePart: return nil!!! - // -headerDataForMessage: works even offline - // -bodyDataForMessage: works even offline, but doesn't include attachment data! - NSData *bodyPartData; - - // We cannot use [[[[self mimeBody] message] messageStore] dataForMimePart:self] - // because returned data doesn't have part's headers, and we need them to authenticate - // a part. - - if([[self mimeBody] topLevelPart] == self){ - bodyPartData = [[(Message *)[[self mimeBody] message] messageStore] fullBodyDataForMessage:[[self mimeBody] message]]; -// bodyPartData = [[[[self mimeBody] message] messageStore] bodyDataForMessage:[[self mimeBody] message]]; // (no headers, but begins with line separator) -// if([[[self contentTransferEncoding] lowercaseString] isEqualToString:@"quoted-printable"]) -// bodyPartData = [bodyPartData decodeQuotedPrintableForText:YES]; - } - else{ - // Subpart of multipart -#if 0 - NSString *boundary = [NSString stringWithFormat:@"\r\n--%@\r\n", [[self parentPart] bodyParameterForKey:@"boundary"]]; -#else -#warning Check patch - // Patched by Tomio (January 20,2002) - NSString *boundary = [NSString stringWithFormat:@"--%@\r\n", [[self parentPart] bodyParameterForKey:@"boundary"]]; -#endif - char bytes[2] = {0, 0}; - -#warning BUG if not on second level! -#warning BUG? We need to check if ends with CRLF -// bodyPartData = [[[self mimeBody] rawData] gpgStandardizedEOLsToCRLF]; - bodyPartData = [[[(Message *)[[self mimeBody] message] messageStore] fullBodyDataForMessage:[[self mimeBody] message]] gpgStandardizedEOLsToCRLF]; // Forces download of attachments - if(bodyPartData == nil) - return nil; -#warning Does not return data for attachments! - [bodyPartData getBytes:bytes length:2]; - if(bytes[0] != '\r' && bytes[1] != '\n'){ - // There are cases where raw data begins directly with the boundary - // Thanks to Tomio Arisaka - NSMutableData *newData; - - bytes[0] = '\r'; - bytes[1] = '\n'; - newData = [NSMutableData dataWithBytes:bytes length:2]; - - [newData appendData:bodyPartData]; - bodyPartData = newData; - } -#warning Not sure that created boundary can be written with ASCII... - // NEW bug? It seems that sometimes(...) we get a range exception here! -#if 0 - bodyPartData = [[bodyPartData componentsSeparatedByData:[boundary dataUsingEncoding:NSASCIIStringEncoding]] objectAtIndex:[[[self parentPart] subparts] indexOfObject:self] + 1]; // +1, because first element is empty -#else - { - int anIndex = [[[self parentPart] subparts] indexOfObject:self]; - NSArray *components = [bodyPartData componentsSeparatedByData:[boundary dataUsingEncoding:NSASCIIStringEncoding]]; - - anIndex = MIN(anIndex, [[[self parentPart] subparts] count] - 1); // FIXME: Why this code? Useless!? -// anIndex = MIN(anIndex, [components count] - 1); - bodyPartData = [components objectAtIndex:anIndex + 1]; // +1, because first element is empty - } -#endif - // Patched by Tomio (January 20,2002) -#warning Check patch - { // removes CRLF from the end of data - NSRange range = {0, [bodyPartData length] - 2}; - bodyPartData = [bodyPartData subdataWithRange:range]; - } - } - - return bodyPartData; -} - -/*! - * DEPRECATED - now we can use -bodyData - */ -- (NSData *) gpgBodyPartData -{ -#if 0 - NSData *bodyPartData = [[[[self mimeBody] message] messageStore] dataForMimePart:self]; - - if([[[self contentTransferEncoding] lowercaseString] isEqualToString:@"quoted-printable"]) - bodyPartData = [bodyPartData decodeQuotedPrintableForText:YES]; - - return bodyPartData; -#else -#warning Compare my solution against Tomio - NSData *bodyPartData; - - if([[self mimeBody] topLevelPart] == self){ - bodyPartData = [[(Message *)[[self mimeBody] message] messageStore] fullBodyDataForMessage:[[self mimeBody] message]]; // (no headers, but begins with line separator) -// bodyPartData = [[[[self mimeBody] message] messageStore] bodyDataForMessage:[[self mimeBody] message]]; // (no headers, but begins with line separator) - if([[[self contentTransferEncoding] lowercaseString] isEqualToString:@"quoted-printable"]) - bodyPartData = [bodyPartData decodeQuotedPrintableForText:YES]; - else if([[[self contentTransferEncoding] lowercaseString] isEqualToString:@"base64"]) - bodyPartData = [bodyPartData decodeBase64]; - } - else{ - // Subpart of multipart -#if 0 // patched by Tomio (November 29, 2001)(January 20,2002) - NSString *boundary = [NSString stringWithFormat:@"\r\n--%@\r\n", [[self parentPart] bodyParameterForKey:@"boundary"]]; - - bodyPartData = [[[[[self mimeBody] rawData] gpgStandardizedEOLsToCRLF] componentsSeparatedByData:[boundary dataUsingEncoding:NSASCIIStringEncoding]] objectAtIndex:[[[self parentPart] subparts] indexOfObject:self] + 1]; // +1, because first element is empty -#else - NSString *boundary = [NSString stringWithFormat:@"--%@\r\n", [[self parentPart] bodyParameterForKey:@"boundary"]]; - - bodyPartData = [[[[[self mimeBody] rawData] gpgStandardizedEOLsToCRLF] componentsSeparatedByData:[boundary dataUsingEncoding:NSASCIIStringEncoding]] objectAtIndex:[[[self parentPart] subparts] indexOfObject:self] + 1]; - { // removes CRLF from the end of data - NSRange range = {0, [bodyPartData length] - 2}; - bodyPartData = [bodyPartData subdataWithRange:range]; - } -// [bodyPartData writeToFile:@"/tmp/BodyPartData.txt" atomically:YES]; // debug -// NSRunAlertPanel(@"Debug", @"%@", nil, nil, nil, @"BodyPartData"); // debug -#endif - if([[[self contentTransferEncoding] lowercaseString] isEqualToString:@"quoted-printable"]) - bodyPartData = [bodyPartData decodeQuotedPrintableForText:YES]; - else if([[[self contentTransferEncoding] lowercaseString] isEqualToString:@"base64"]) - bodyPartData = [bodyPartData decodeBase64]; - } - - return bodyPartData; -#endif -} - -- (NSData *) gpgBodyPartData2 -{ - if([[self subparts] count] == 0){ - NSData *bodyPartData = [[(Message *)[[self mimeBody] message] messageStore] dataForMimePart:self]; - - if([[[self contentTransferEncoding] lowercaseString] isEqualToString:@"quoted-printable"]) - bodyPartData = [bodyPartData decodeQuotedPrintableForText:YES]; - else if([[[self contentTransferEncoding] lowercaseString] isEqualToString:@"base64"]) - bodyPartData = [bodyPartData decodeBase64]; - - return bodyPartData; - } - else{ - /* - if([[self mimeBody] topLevelPart] == self){ - bodyPartData = [[[[self mimeBody] message] messageStore] fullBodyDataForMessage:[[self mimeBody] message]]; // (no headers, but begins with line separator); forces download of all subparts if necessary - if([[[self contentTransferEncoding] lowercaseString] isEqualToString:@"quoted-printable"]) - bodyPartData = [bodyPartData decodeQuotedPrintableForText:YES]; - } - else{ - // Subpart of multipart - NSString *boundary = [NSString stringWithFormat:@"\r\n--%@\r\n", [[self parentPart] bodyParameterForKey:@"boundary"]]; - - bodyPartData = [[[[self mimeBody] message] messageStore] fullBodyDataForMessage:[[self mimeBody] message]]; // (no headers, but begins with line separator); forces download of all subparts if necessary - }*/ - return nil; - } -} - -- (BOOL) gpgIsOpenPGPEncryptedContainerPart -// Does not look recursively in sub-parts -{ - if([[[self type] lowercaseString] isEqualToString:@"multipart"] && [[[self subtype] lowercaseString] isEqualToString:@"encrypted"]) -#warning Workaround! - // Sometimes, we can't get the bodyParameterForKey:@"protocol", - // despite there is one! Let's ignore it... - if([self bodyParameterForKey:@"protocol"] == nil || [[[self bodyParameterForKey:@"protocol"] lowercaseString] isEqualToString:@"application/pgp-encrypted"]) - // The multipart/encrypted MUST consist of exactly two parts - if([[self subparts] count] == 2){ - BOOL recognizesVersion = NO; - MimePart *versionPart = [self subpartAtIndex:0]; - MimePart *dataPart = [self subpartAtIndex:1]; - - // The first MIME body part must have a content type of "application/pgp-encrypted". This body contains the control information. - if([[[versionPart type] lowercaseString] isEqualToString:@"application"] && [[[versionPart subtype] lowercaseString] isEqualToString:@"pgp-encrypted"] && [[[dataPart type] lowercaseString] isEqualToString:@"application"] && ([[[dataPart subtype] lowercaseString] isEqualToString:@"octet-stream"] || [[[dataPart subtype] lowercaseString] isEqualToString:@"pgp-signature"])){ - // Quirk mode: FireGPG < 0.7.1 declared 'application/pgp-signature' instead of 'application/octet-stream' - NSData *bodyData = [versionPart bodyData]; // (it doesn't matter if data has been decoded; normally there was nothing to decode) - - if(bodyData){ - // bodyData might be nil if mimePart has not yet been downloaded - // from server. We assume that part is PGP encrypted though. - //#warning Do we use the right encoding? - NSString *string = [[NSString alloc] initWithData:bodyData encoding:NSASCIIStringEncoding]; // [versionPart textEncoding] ? - NSString *lowercaseString = [string lowercaseString]; - -//NSLog(@"-[MimePart gpgIsOpenPGPEncryptedContainerPart]: [versionPart textEncoding] = %d = %@", [versionPart textEncoding], [NSString localizedNameOfStringEncoding:[versionPart textEncoding]]); - // A message complying with this standard MUST contain a "Version: 1" field in this body. - // NOTE: to insure compatibility with Mulberry, we need to check against "Version : 1" too - // Note also that "Version: 1" is not necessarily ended by a CR! (Ximian Evolution) - // EudoraGPG (Windows) adds one more newline after the "version" line; fix provided by Georg Wedemeyer - // FIXME: Wouldn't support versions 10 and later, or versions 1.x - if([lowercaseString rangeOfString:@"version: 1"].location != NSNotFound || [lowercaseString rangeOfString:@"version : 1"].location != NSNotFound) - recognizesVersion = YES; - [string release]; - } - } - - if(recognizesVersion) - return YES; - } - - return NO; -} - -- (BOOL) _gpgLooksLikeBinaryPGPAttachment -{ - BOOL looksLikePGP = NO; - NSString *aType = [[self type] lowercaseString]; - NSString *aSubtype = [[self subtype] lowercaseString]; - - if([aType isEqualToString:@"application"] && [aSubtype isEqualToString:@"octet-stream"]){ - NSData *bodyData = [self bodyData]; // We use only the body (no headers), and decoded! - - if(bodyData != nil){ - // This is an octet stream. Is it a PGP-encrypted file? - // Let's do a pre-test: like magic(5), we check some bytes of the data. If it looks like PGP data, - // then we will try decryption. - unsigned length = [bodyData length]; - unsigned char *bytes = (unsigned char *)[bodyData bytes]; - - if(length > 1){ - if(bytes[0] == 0x0085 && bytes[1] == 0x02) - looksLikePGP = YES; - else if(bytes[0] == 0x00a6 && bytes[1] == 0x00) - looksLikePGP = YES; - else if(bytes[0] == 0x0085 && bytes[1] == 0x01) // According to http://lists.gnupg.org/pipermail/gnupg-devel/1999-September/016052.html - looksLikePGP = YES; - } - - if(!looksLikePGP){ - // If filename ends with .gpg, .pgp or .asc, we suppose it's a PGP file - NSString *pathExtension = [[[self attachmentFilename] pathExtension] lowercaseString]; - - if(pathExtension != nil && ([pathExtension isEqualToString:@"gpg"] || [pathExtension isEqualToString:@"pgp"] || [pathExtension isEqualToString:@"asc"])) - looksLikePGP = YES; - } - } - } - - return looksLikePGP; -} - -- (BOOL) _gpgIsNonOpenPGPEncryptedPart -{ - // We accept only text/plain or application/octet-stream - // As with plain text messages, contains simple PGP encrypted block - NSData *bodyData; - NSString *aType = [[self type] lowercaseString]; - NSString *aSubtype = [[self subtype] lowercaseString]; - BOOL isPlainText = ([aType isEqualToString:@"text"] && [aSubtype isEqualToString:@"plain"]); - - // We don't support text/html - // It's rather difficult, even if it's not impossible: - // We should search for armor in HTMLDocument - // If there is a text/plain alternative, then user can see decrypted message - if(!isPlainText){ - BOOL isApplicationPGP = ([aType isEqualToString:@"application"] && [aSubtype isEqualToString:@"pgp"]); - - if(isApplicationPGP && [[[self bodyParameterForKey:@"format"] lowercaseString] isEqualToString:@"text"]){ - // Content-Type: application/pgp; format=text; x-action=encryptsign - // Content-Type: application/pgp; format=text; x-action=sign - // Content-Type: application/pgp; format=text - // Content-Type: application/pgp; format=text; x-action=encrypt - // Here we don't case about the x-action. - return YES; - } - else{ -#if DECRYPT_PGP_ATTACHMENTS - - if([self _gpgLooksLikeBinaryPGPAttachment]) // TODO: there are problems to fix with message body: message should cache decrypted message body, it's not part's task - return YES; - else -#endif - return NO; - } - } - - // If message contains a plain text PGP attachment, don't consider the part to be encrypted; - // user will have to do it manually. - if([self isAttachment]) - return NO; - - bodyData = [self bodyData]; // We use only the body (no headers), and decoded! - if(bodyData != nil) - return [GPGHandler pgpEncryptionBlockRangeInData:[bodyData gpgStandardizedEOLsToCRLF]].location != NSNotFound; - else - return NO; -} - -- (BOOL) gpgIsEncrypted -// Checks MIME headers/parameters (OpenPGP) and content, also in sub-parts -// Maybe we should NOT check deeply in sub-parts, as long as -// we cannot show block boundaries in viewer. -{ - int i; - NSArray *parts; - - // Special case for attached messages: if a message is embedded in the main message, don't look at - // that message content. User will see the embedded message as a separate message. - if([[[self type] lowercaseString] isEqualToString:@"message"] && [[[self subtype] lowercaseString] isEqualToString:@"rfc822"]) - return NO; - - if([self gpgIsOpenPGPEncryptedContainerPart]) - return YES; - - parts = [self subparts]; - i = [parts count]; - if(i > 0){ - for(i = i - 1; i >= 0; i--) - if([[parts objectAtIndex:i] gpgIsEncrypted]) - return YES; - } - // If we don't put the "else", it means that MIME message could have an armored - // PGP body extending over many parts! - else if([self _gpgIsNonOpenPGPEncryptedPart]) - return YES; - - return NO; -} - -- (NSData *) _gpgDecryptedPGPMIMEDataWithPassphraseDelegate:(id)passphraseDelegate signatures:(NSArray **)signaturesPtr -{ - // Only for OpenPGP/MIME - // It doesn't matter if decrypted data contains headers too. - NSData *bodyPartData = [self /*gpgBodyPartData2*/bodyData]; - - if(bodyPartData != nil){ - GPGContext *aContext = [[GPGContext alloc] init]; - GPGData *inputData = [[GPGData alloc] initWithData:bodyPartData]; - - if(GPGMailLoggingLevel & GPGMailDebug_SaveInputDataMask){ - NSString *filename = [NSTemporaryDirectory() stringByAppendingPathComponent:[[[NSProcessInfo processInfo] globallyUniqueString] stringByAppendingPathExtension:@"asc"]]; - - if([bodyPartData writeToFile:filename atomically:NO]) - NSLog(@"[DEBUG] Data to decrypt in %@", filename); - else - NSLog(@"[DEBUG] FAILED to write data to decrypt in %@", filename); - } - - [aContext setPassphraseDelegate:passphraseDelegate]; - [aContext setUsesArmor:YES]; - [aContext setUsesTextMode:YES]; - @try{ - GPGData *outputData = [aContext decryptedData:inputData signatures:signaturesPtr /*encoding:[self textEncoding]*/]; // Can raise an exception - NSData *decryptedData; - - decryptedData = [[[outputData data] retain] autorelease]; // Because context will be released - if(signaturesPtr != NULL) - [[*signaturesPtr retain] autorelease]; // Because context will be released - [aContext release]; - [inputData release]; - return decryptedData; - }@catch(NSException *localException){ - [inputData release]; - [aContext release]; - [localException raise]; - return nil; - } - } - else{ - // Happens if part has not been downloaded - [NSException raise:NSGenericException format:NSLocalizedStringFromTableInBundle(@"DATA_NOT_AVAILABLE", @"GPGMail", [NSBundle bundleForClass:[GPGHandler class]], "")]; - return nil; - } -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - return nil; // Never reached, but mutes gcc warning -#endif -} - -- (NSData *) _gpgDecryptedInlineDataWithPassphraseDelegate:(id)passphraseDelegate signatures:(NSArray **)signaturesPtr -{ - NSData *data = [self bodyData]; // At this stage, bodyData returns decoded data (if raw data was quoted-printable/base64) - NSRange pgpRange; - NSData *pgpData; - volatile NSData *decryptedData = nil; - GPGContext *aContext = [[GPGContext alloc] init]; - GPGData *inputData; - BOOL isText; - - // TODO: add support for multiple ASCII armors in same part - [aContext setPassphraseDelegate:passphraseDelegate]; -#if DECRYPT_PGP_ATTACHMENTS - if([self _gpgLooksLikeBinaryPGPAttachment]){ - pgpRange = NSMakeRange(0, [data length]); - pgpData = data; - [aContext setUsesArmor:NO]; - [aContext setUsesTextMode:NO]; - isText = NO; - } - else -#endif - { - data = [data gpgStandardizedEOLsToCRLF]; - pgpRange = [GPGHandler pgpEncryptionBlockRangeInData:data]; - NSAssert(pgpRange.location != NSNotFound, @"Not encrypted!"); - pgpData = [data subdataWithRange:pgpRange]; - [aContext setUsesArmor:YES]; - [aContext setUsesTextMode:YES]; - isText = YES; - } - - inputData = [[GPGData alloc] initWithData:pgpData]; - if(GPGMailLoggingLevel & GPGMailDebug_SaveInputDataMask){ - NSString *filename = [NSTemporaryDirectory() stringByAppendingPathComponent:[[[NSProcessInfo processInfo] globallyUniqueString] stringByAppendingPathExtension:(isText ? @"asc":@"gpg")]]; - - if([pgpData writeToFile:filename atomically:NO]) - NSLog(@"[DEBUG] Data to decrypt in %@", filename); - else - NSLog(@"[DEBUG] FAILED to write data to decrypt in %@", filename); - } - -#warning CHECK: Do we support decrypted-then-verified messages? - @try{ - GPGData *outputData = [aContext decryptedData:inputData signatures:signaturesPtr /*encoding:[self textEncoding]*/]; // Can raise an exception - - decryptedData = [[[outputData data] retain] autorelease]; // Because context will be released - - if(signaturesPtr != NULL) - [[*signaturesPtr retain] autorelease]; // Because context will be released - }@catch(NSException *localException){ - [inputData release]; - [aContext release]; - [localException raise]; - } - [aContext release]; - [inputData release]; - - NSMutableData *newEncodedBody = [NSMutableData dataWithCapacity:[data length]]; // Not the exact size, but approximately correct... - - if(isText){ - [newEncodedBody appendData:[data subdataWithRange:NSMakeRange(0, pgpRange.location)]]; - [newEncodedBody appendData:(NSData *)decryptedData]; - [newEncodedBody convertNetworkLineEndingsToUnix]; - [newEncodedBody appendData:[data subdataWithRange:NSMakeRange(NSMaxRange(pgpRange), [data length] - NSMaxRange(pgpRange))]]; - } - else - [newEncodedBody setData:(NSData *)decryptedData]; - - // Don't forget to reencode data according to content-transfer-encoding! - if([[[self contentTransferEncoding] lowercaseString] isEqualToString:@"quoted-printable"]) - [newEncodedBody setData:[newEncodedBody encodeQuotedPrintableForText:YES]]; - else if([[[self contentTransferEncoding] lowercaseString] isEqualToString:@"base64"]) - [newEncodedBody setData:[newEncodedBody encodeBase64]]; -/* { - // HACK: Just to tell that there is no header part... - // We need to do this, because of the way we handle data later. - NSMutableData *prefixData = [[NSMutableData alloc] initWithData:[@"\n" dataUsingEncoding:NSASCIIStringEncoding]]; - - [prefixData appendData:newEncodedBody]; - [newEncodedBody setData:prefixData]; - [prefixData release]; - }*/ - - return newEncodedBody; -} - -- (void) _gpgDecryptInlineDataWithPassphraseDelegate:(id)passphraseDelegate signatures:(NSArray **)signaturesPtr intoData:(NSMutableData *)decryptedData fromData:(NSData *)fullBodyData -{ - NSData *partDecryptedData = [self _gpgDecryptedInlineDataWithPassphraseDelegate:passphraseDelegate signatures:signaturesPtr]; - - if(partDecryptedData != nil){ - NSRange partRange = [self range]; - - [decryptedData setData:[fullBodyData subdataWithRange:NSMakeRange(0, partRange.location)]]; - [decryptedData appendData:partDecryptedData]; - [decryptedData appendData:[fullBodyData subdataWithRange:NSMakeRange(NSMaxRange(partRange), [fullBodyData length] - (NSMaxRange(partRange)))]]; - } -} - -/*! - * Invoked for part even when not directly encrypted/signed. In this case, must forward message to subparts. - */ -- (NSData *) gpgDecryptedDataWithPassphraseDelegate:(id)passphraseDelegate signatures:(NSArray **)signaturesPtr -// We would give back the signatures (or nil) of the latest part! -// Returning nil means that we could not decrypt data -{ - NSArray *parts = [self subparts]; - int partCount = [parts count]; - - if([self gpgIsOpenPGPEncryptedContainerPart]){ - // The second MIME body part MUST contain the actual encrypted data. It must be labeled with a content type of "application/octet-stream". - MimePart *aPart = [parts objectAtIndex:1]; - NSData *decryptedData = [aPart _gpgDecryptedPGPMIMEDataWithPassphraseDelegate:passphraseDelegate signatures:signaturesPtr]; // Can raise an exception - -#warning Do we really need to convert CRLF to LF as Tomio does? -// Signature authentication should do it by itself - - // TODO: support recursive decryption - embedded encrypted parts. Decrypted part could contain encrypted sub-parts too. -// MimePart *decryptedPart = [MimePart bodyPartWithData:decryptedData]; -// -// if([decryptedPart gpgIsEncrypted]) -// return [decryptedPart gpgDecryptedDataForReceiver:receiver passphrase:passphrase signatures:signaturesPtr]; -// else - return decryptedData; - } - else if(partCount > 0){ - int anIndex; - NSMutableData *decryptedData = nil; - NSData *fullBodyData = nil; - - for(anIndex = 0; anIndex < partCount; anIndex++){ - MimePart *aPart = [parts objectAtIndex:anIndex]; - - if([aPart _gpgIsNonOpenPGPEncryptedPart]){ - if(!fullBodyData){ - fullBodyData = [[(Message *)[[self mimeBody] message] messageStore] fullBodyDataForMessage:[[self mimeBody] message]]; - decryptedData = [NSMutableData dataWithData:fullBodyData]; - } - [aPart _gpgDecryptInlineDataWithPassphraseDelegate:passphraseDelegate signatures:signaturesPtr intoData:decryptedData fromData:fullBodyData]; -#if 0 - NSData *partDecryptedData = [aPart _gpgDecryptedInlineDataWithPassphraseDelegate:passphraseDelegate signatures:signaturesPtr]; - - if(partDecryptedData != nil){ - NSRange partRange = [aPart range]; - - [decryptedData setData:[fullBodyData subdataWithRange:NSMakeRange(0, partRange.location)]]; - [decryptedData appendData:partDecryptedData]; - [decryptedData appendData:[fullBodyData subdataWithRange:NSMakeRange(NSMaxRange(partRange), [fullBodyData length] - (NSMaxRange(partRange)))]]; - } -#endif - } -#warning No support yet for deeper levels... - } - - if(!decryptedData){ -#warning NOT HANDLED (embedded encrypted parts) - // NSBeep(); - NSLog(@"### GPGMail: unable (yet) to decrypt embedded MIME parts"); - /* for(i = i - 1; i >= 0; i--){ - [[parts objectAtIndex:i] gpgDecryptedDataForReceiver:receiver passphrase:passphrase signatures:signaturesPtr]; - }*/ - // We need to recreate sub-parts... - [NSException raise:NSInternalInconsistencyException format:NSLocalizedStringFromTableInBundle(@"UNSUPPORTED_ENCRYPTION_FORMAT", @"GPGMail", [NSBundle bundleForClass:[GPGHandler class]], "")]; - -// return nil; // Let's return original data as we cannot decrypt it - } - else{ -/* // HACK: Just to tell that there is no header part... - // We need to do this, because of the way we handle data later. - NSMutableData *prefixData = [[NSMutableData alloc] initWithData:[@"\n" dataUsingEncoding:NSASCIIStringEncoding]]; - - [prefixData appendData:decryptedData]; - [decryptedData setData:prefixData]; - [prefixData release];*/ - } - - return decryptedData; - } - else if([self _gpgIsNonOpenPGPEncryptedPart]) - return [self _gpgDecryptedInlineDataWithPassphraseDelegate:passphraseDelegate signatures:signaturesPtr]; - else - return nil; // Let's return original data as we cannot decrypt it -} - -- (BOOL) gpgIsOpenPGPSignedContainerPart -// Checks MIME headers/parameters, in this part only -{ - MimePart *aPart; - NSArray *parts; - NSString *hashAlgorithmName; - - // OpenPGP signed messages are denoted by the "multipart/signed" content - // type, described in [2], with a "protocol" parameter which MUST have a - // value of "application/pgp-signature" (MUST be quoted). - if(![[[self type] lowercaseString] isEqualToString:@"multipart"] && ![[[self subtype] lowercaseString] isEqualToString:@"signed"]) - return NO; // We don't go further in subparts in this method - -#warning Workaround! - // Sometimes, we can't get the bodyParameterForKey:@"protocol", - // despite there is one! Let's ignore it... - if([self bodyParameterForKey:@"protocol"] && ![[[self bodyParameterForKey:@"protocol"] lowercaseString] isEqualToString:@"application/pgp-signature"]) - return NO; - // The "micalg" parameter for the "application/pgp-signature" protocol - // MUST contain exactly one hash-symbol of the format "pgp-", where identifies the Message - // Integrity Check (MIC) algorithm used to generate the signature. - hashAlgorithmName = [[self bodyParameterForKey:@"micalg"] lowercaseString]; - // To insure compatibility with Sylpheed, we don't consider it an error - // if micalg is missing (anyway, we don't need to pass it to gpg). -#warning Workaround! - // Sometimes, we can't get the bodyParameterForKey:@"micalg", - // despite there is one! Let's ignore it... -#if 0 - if(hashAlgorithmName){ - if(![hashAlgorithmName hasPrefix:@"pgp-"]) - return NO; - else - hashAlgorithmName = [hashAlgorithmName substringFromIndex:4]; - if(![[[GPGHandler handler] knownHashAlgorithms] containsObject:hashAlgorithmName]) - return NO; - } -#endif - - parts = [self subparts]; - // The multipart/signed body MUST consist of exactly two parts. - if([parts count] != 2) - return NO; - - // The second body MUST contain the OpenPGP digital signature. It - // MUST be labeled with a content type of "application/pgp-signature". - aPart = [parts objectAtIndex:1]; - if([[[aPart type] lowercaseString] isEqualToString:@"application"] && [[[aPart subtype] lowercaseString] isEqualToString:@"pgp-signature"]) - return YES; - else - return NO; -} - -- (BOOL) _gpgIsNonOpenPGPSignedPart -{ - // As with plain text messages, contains simple PGP signed block - NSData *bodyData; - - // We don't support text/html - // It's rather difficult, even if it's not impossible: - // We should search for armor in HTMLDocument - // If there is a text/plain alternative, then user can see decrypted message - if(([self type] && ![[[self type] lowercaseString] isEqualToString:@"text"]) || ([self subtype] && ![[[self subtype] lowercaseString] isEqualToString:@"plain"])) -#warning Test new recognition - if(([self type] && ![[[self type] lowercaseString] isEqualToString:@"application"]) || ([self subtype] && ![[[self subtype] lowercaseString] isEqualToString:@"pgp"])) - return NO; - - // If message contains a plain text PGP attachment, don't consider the part to be a PGP part; - // user will have to do it manually. - if([self isAttachment]) - return NO; - - // In non-OpenPGP case, we assume that mailer signed displayed data, - // i.e. non quoted-printable/base64 data - bodyData = [[self bodyData] gpgStandardizedEOLsToCRLF]; // WARNING: in this case can contain 8bit characters -#warning Assertion not respected if body not loaded? -#warning ADDED TEST -#if 0 - NSParameterAssert(bodyData != nil); - - return [GPGHandler pgpSignatureBlockRangeInData:bodyData].location != NSNotFound; -#else - if(bodyData != nil) - return [GPGHandler pgpSignatureBlockRangeInData:bodyData].location != NSNotFound; - else - return NO; -#endif -} - -- (BOOL) gpgHasSignature -// Checks MIME headers/parameters (OpenPGP) and content, also in sub-parts -// Maybe we should NOT check deeply in sub-parts, as long as -// we cannot show block boundaries in viewer. -{ - int i; - NSArray *parts; - - // Special case for attached messages: if a message is embedded in the main message, don't look at - // that message content. User will see the embedded message as a separate message. - if([[[self type] lowercaseString] isEqualToString:@"message"] && [[[self subtype] lowercaseString] isEqualToString:@"rfc822"]) - return NO; - - if([self gpgIsOpenPGPSignedContainerPart]) - return YES; - - parts = [self subparts]; - i = [parts count]; - if(i > 0){ - for(i = i - 1; i >= 0; i--) - if([[parts objectAtIndex:i] gpgHasSignature]) - return YES; - } - // If we don't put the "else", it means that signature could extend on more that one part?!? - else if([self _gpgIsNonOpenPGPSignedPart]) - return YES; - - return NO; -} - -- (BOOL) gpgIsOpenPGPKeyPart -{ - return ([[[self type] lowercaseString] isEqualToString:@"application"] && [[[self subtype] lowercaseString] isEqualToString:@"pgp-keys"]); -} - -- (BOOL) _gpgIsNonOpenPGPKeyPart -{ - // As with plain text messages, contains simple PGP signed block - NSData *bodyData; - - // We don't support text/html - // It's rather difficult, even if it's not impossible: - // We should search for armor in HTMLDocument - // If there is a text/plain alternative, then user can see decrypted message - if(([self type] && ![[[self type] lowercaseString] isEqualToString:@"text"]) || ([self subtype] && ![[[self subtype] lowercaseString] isEqualToString:@"plain"])) -#warning Test new recognition - if(([self type] && ![[[self type] lowercaseString] isEqualToString:@"application"]) || ([self subtype] && ![[[self subtype] lowercaseString] isEqualToString:@"pgp"])) - return NO; - -#if 0 - // If message contains a plain text PGP attachment, don't consider the part to be a PGP part; - // user will have to do it manually. - if([self isAttachment]) - return NO; -#endif - - // In non-OpenPGP case, we assume that mailer signed displayed data, - // i.e. non quoted-printable/base64 data - bodyData = [[self bodyData] gpgStandardizedEOLsToCRLF]; // WARNING: in this case can contain 8bit characters -#warning Assertion not respected if body not loaded? -#warning ADDED TEST -#if 0 - NSParameterAssert(bodyData != nil); - - return [GPGHandler pgpPublicKeyBlockRangeInData:bodyData].location != NSNotFound; -#else - if(bodyData != nil) - return [GPGHandler pgpPublicKeyBlockRangeInData:bodyData].location != NSNotFound; - else - return NO; -#endif -} - -- (BOOL) gpgContainsKeyBlock -{ - int i; - NSArray *parts; - - if([self gpgIsOpenPGPKeyPart]) - return YES; - - parts = [self subparts]; - i = [parts count]; - if(i > 0){ - for(i = i - 1; i >= 0; i--) - if([[parts objectAtIndex:i] gpgContainsKeyBlock]) - return YES; - } - // If we don't put the "else", it means that signature could extend on more that one part?!? - else if([self _gpgIsNonOpenPGPKeyPart]) - return YES; - - return NO; -} - -- (BOOL) gpgAllAttachmentsAreAvailable -{ - NSArray *subparts = [self subparts]; - int subpartsCount = [subparts count]; - - if(subpartsCount == 0) - // Using [[[[self mimeBody] message] messageStore] dataForMimePart:self] - // always returns nil for .sig attachments! Because they are attachments, - // not displayed inline?? - return [[(Message *)[[self mimeBody] message] messageStore] hasCachedDataForMimePart:self]; - else{ - // A multipart part never has anything in the cache - for(--subpartsCount; subpartsCount >= 0; subpartsCount--) - if(![[subparts objectAtIndex:subpartsCount] gpgAllAttachmentsAreAvailable]) - return NO; - return YES; - } -} - -- (GPGSignature *) gpgAuthenticationSignature -{ - NSArray *parts = [self subparts]; - int i = [parts count]; - - if([self gpgIsOpenPGPSignedContainerPart]){ - MimePart *aPart; - NSData *signedData; - NSString *signatureFile = nil; - GPGContext *aContext = [[GPGContext alloc] init]; - GPGData *inputData, *signatureInputData; - NSString *aTempFile; - - // We can not use _attachDir and -fileWrapperForBody, because we flushed data => _attachDir is nil - // We can anyway create a temporary file, for example in /tmp, - // which will contain the signature. - aTempFile = [NSTemporaryDirectory() stringByAppendingPathComponent:[[NSProcessInfo processInfo] globallyUniqueString]]; - signatureFile = [aTempFile stringByAppendingPathExtension:@"sig"]; -#if 1 - aPart = [parts objectAtIndex:1]; - NSAssert1([aPart gpgSaveBodyToFile:signatureFile], @"Unable to save temporary file %@", signatureFile); - - signedData = [NSMutableData dataWithContentsOfFile:signatureFile]; - [(NSMutableData *)signedData gpgNormalizeDataForVerifying]; - NSAssert1([signedData writeToFile:signatureFile atomically:YES], @"Unable to save (again) temporary file %@", signatureFile); - aPart = [parts objectAtIndex:0]; - signedData = [[aPart gpgFullBodyPartData] gpgNormalizedDataForVerifying]; -#warning We should ensure that it is not decoded if it was quoted-printable/base64?? -#else -#warning Test patch from Tomio - { -#warning BUG! Does not take data for attachments!!! - NSData *bodyData; - NSString *aString, *boundary; - NSStringEncoding originalEncoding; - NSRange range; - unsigned int point; - - aPart = [parts objectAtIndex:0]; // text part - aString = [aPart bodyParameterForKey:@"charset"]; - // considers whether "Content-Transfer-Encoding" is "quoted-printable" or "base64" - originalEncoding = NSISOLatin1StringEncoding; - if(![[[aPart contentTransferEncoding] lowercaseString] isEqualToString:@"quoted-printable"]){ - if(aString != nil) - originalEncoding = [NSString gpgEncodingForMIMECharset:aString]; - bodyData = [[aPart /*gpgBodyPartData*/bodyData] gpgNormalizedDataForVerifying]; - }else if(![[[aPart contentTransferEncoding] lowercaseString] isEqualToString:@"base64"]){ - if(aString != nil) - originalEncoding = [NSString gpgEncodingForMIMECharset:aString]; - bodyData = [[aPart /*gpgBodyPartData*/bodyData] gpgNormalizedDataForVerifying]; - }else{ -#warning Unknown method!!! -// bodyData = [[aPart gpgBodyPartDataWithoutDecodeQuotePrintable] gpgNormalizedDataForVerifying]; - bodyData = [[aPart /*gpgBodyPartData*/bodyData] gpgNormalizedDataForVerifying]; - } - aString = [[NSString alloc] initWithData:bodyData encoding:originalEncoding]; - boundary = [NSString stringWithFormat:@"--%@\r\n", [[aPart parentPart] bodyParameterForKey:@"boundary"]]; - range = [aString rangeOfString:boundary]; - point = range.location + range.length; - if(point > [aString length]) - point = 0; - bodyData = [[aString substringFromIndex:point] dataUsingEncoding:originalEncoding]; // removes a line-separator - [aString release]; - aPart = [parts objectAtIndex:1]; // signed part - signedData = [[aPart bodyData] gpgStandardizedEOLsToCRLF]; -// Stephane: no, encoding can be different; why does it need to go to string, back to data?? -// aString = [[NSString alloc] initWithData:signedData encoding:originalEncoding]; -// signedData = [aString dataUsingEncoding:originalEncoding]; - NSAssert1([signedData writeToFile:signatureFile atomically:YES], @"Unable to save temporary file %@", signatureFile); - [aString release]; - signedData = bodyData; - } -#endif - inputData = [[GPGData alloc] initWithData:signedData]; - if(GPGMailLoggingLevel & GPGMailDebug_SaveInputDataMask){ - NSString *signedDataFile = [aTempFile stringByAppendingPathExtension:@"asc"]; - - if([signedData writeToFile:signedDataFile atomically:NO]) - NSLog(@"[DEBUG] Data to verify in %@", signedDataFile); - else - NSLog(@"[DEBUG] FAILED to write data to verify in %@", signedDataFile); - } - - signatureInputData = [[GPGData alloc] initWithContentsOfFile:signatureFile]; - [aContext setUsesArmor:YES]; - [aContext setUsesTextMode:YES]; - @try{ - GPGSignature *aSignature; - - (void)[aContext verifySignatureData:signatureInputData againstData:inputData /*encoding:[self textEncoding]*/]; // Can raise an exception - - if(!(GPGMailLoggingLevel & GPGMailDebug_SaveInputDataMask)) - (void)[[NSFileManager defaultManager] removeFileAtPath:signatureFile handler:nil]; - aSignature = [[[[aContext signatures] lastObject] retain] autorelease]; // Because context will be released -#warning Workaround for gpgme 0.4.x bug: does not return an error when CRC or BADARMOR error! - if(aSignature == nil) - [[NSException exceptionWithName:GPGException reason:[[GPGMailBundle sharedInstance] gpgErrorDescription:GPGErrorChecksumError] userInfo:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithUnsignedInt:GPGErrorChecksumError], GPGErrorKey, nil]] raise]; - [aContext release]; - [inputData release]; - [signatureInputData release]; - return aSignature; - }@catch(NSException *localException){ - if(!(GPGMailLoggingLevel & GPGMailDebug_SaveInputDataMask)) - (void)[[NSFileManager defaultManager] removeFileAtPath:signatureFile handler:nil]; - - [inputData release]; - [signatureInputData release]; - if([[localException name] isEqualToString:GPGException]){ - NSArray *signatures = [[[aContext signatures] retain] autorelease]; // Because context will be released - - [aContext release]; - if([signatures count]) - // In this case, signature will contain the exception in its status - return [signatures lastObject]; - } - else - [aContext release]; - [localException raise]; - return nil; - } - } - else if(i > 0){ - // Not handled correctly... We should retrieve a dict with sigs per part. - // Currently we stop on the first retrieved sig (from the end!) - for(i = i - 1; i >= 0; i--){ - GPGSignature *aSignature = [[parts objectAtIndex:i] gpgAuthenticationSignature]; // Can raise an exception - - if(aSignature != nil) - return aSignature; - } - return nil; - } - // Is the "else" really necessary?! - // If we don't put the "else", it means that signature could extend on more that one part?!? - else if([self _gpgIsNonOpenPGPSignedPart]){ - // In non-OpenPGP case, we assume that mailer signed displayed data, - // i.e. non quoted-printable/base64 data - NSData *data = [self bodyData]; // At this stage, bodyData returns decoded data (if raw data was quoted-printable/base64) - NSRange pgpRange; - NSData *pgpData; - GPGHandler *aHandler; - GPGContext *aContext = [[GPGContext alloc] init]; - GPGData *inputData; - -#warning WARNING By converting EOL to CRLF, we break signature! I thought EOLs were not used... - data = [data gpgStandardizedEOLsToCRLF]; // WARNING: in this case can contain 8bit characters - - pgpRange = [GPGHandler pgpSignatureBlockRangeInData:data]; // Expects CRLF EOLs - NSAssert(pgpRange.location != NSNotFound, @"Not signed!"); - - pgpData = [data subdataWithRange:pgpRange]; - pgpData = [pgpData gpgStandardizedEOLsToLF]; // Back to LF?? - aHandler = [GPGHandler handler]; - - // There was a bug in previous GPGMailv11; some signed messages would have - // an invalid signature now... - // First we try the right way, and if it doesn't work, we try the old way. - // Problem happens with messages containing non-ASCII characters. - inputData = [[GPGData alloc] initWithData:pgpData]; - if(GPGMailLoggingLevel & GPGMailDebug_SaveInputDataMask){ - NSString *filename = [NSTemporaryDirectory() stringByAppendingPathComponent:[[[NSProcessInfo processInfo] globallyUniqueString] stringByAppendingPathExtension:@"asc"]]; - - if([pgpData writeToFile:filename atomically:NO]) - NSLog(@"[DEBUG] Data to verify in %@", filename); - else - NSLog(@"[DEBUG] FAILED to write data to verify in %@", filename); - } - - [aContext setUsesArmor:YES]; - [aContext setUsesTextMode:YES]; -#if 0 - @try{ - // The following call should be enough... - (void)[aContext verifySignedData:inputData /*encoding:[self textEncoding]*/]; // Can raise an exception - [inputData release]; - inputData = nil; - - return [[[aContext autorelease] signatures] lastObject]; - }@catch(NSException *localException){ - NSException *originalException = localException; - volatile NSArray *originalSignatures = [[[aContext signatures] retain] autorelease]; // Because context will be released - - data = [[self bodyData] gpgStandardizedEOLsToCRLF]; - pgpRange = [GPGHandler pgpSignatureBlockRangeInData:data]; - NSAssert(pgpRange.location != NSNotFound, @"Not signed!"); - pgpData = [data subdataWithRange:pgpRange]; - @try{ - NSArray *verificationSignatures; - - [inputData release]; - inputData = [[GPGData alloc] initWithData:pgpData]; - verificationSignatures = [aContext verifySignedData:inputData /*encoding:[self textEncoding]*/]; // Can raise an exception - [[verificationSignatures retain] autorelease]; // Because context will be released - [aContext release]; - [inputData release]; - - return [verificationSignatures lastObject]; - }@catch(NSException *localException){ - [inputData release]; - [aContext release]; - if([[originalException name] isEqualToString:GPGException]){ - if([(NSArray *)originalSignatures count]) - // In this case, signature will contain the exception in its status - return [(NSArray *)originalSignatures lastObject]; - } - [(NSException *)originalException raise]; - return nil; // Never reached - } - } -#else -#warning Test old signatures?! (<= v11) - @try{ - NSArray *verificationSignatures; - GPGSignature *aSignature; - - verificationSignatures = [aContext verifySignedData:inputData /*encoding:[self textEncoding]*/]; // Can raise an exception - - aSignature = [verificationSignatures lastObject]; - -#warning Workaround for gpgme 0.4.x bug: does not return an error when CRC or BADARMOR error! - if(aSignature == nil) - [[NSException exceptionWithName:GPGException reason:[[GPGMailBundle sharedInstance] gpgErrorDescription:GPGErrorInvalidArmor] userInfo:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithUnsignedInt:GPGErrorInvalidArmor], GPGErrorKey, nil]] raise]; - - if([[GPGMailBundle sharedInstance] gpgErrorCodeFromError:[aSignature status]] == GPGErrorBadSignature && [[self bodyParameterForKey:@"format"] isEqualToString:@"flowed"]){ - // When format=flowed, we need to decode string in some special way: - // http://www.ietf.org/rfc/rfc2646.txt?number=2646 - // To avoid doing it, let's ask Mail to do it for ourself. - // We don't even search for PGP armor boundaries, it seems - // gpg does it very well. - // WARNING Do this only when format=flowed! -#warning BUG Using attributedString or -convertFromFlowedText: removes all quote prefixes (>) !!! -#if 0 - pgpData = [[[self attributedString] string] dataUsingEncoding:[self textEncoding]]; -#else - pgpData = [self bodyData]; - pgpData = [pgpData gpgStandardizedEOLsToCRLF]; // WARNING Might break sig - pgpData = [pgpData gpgDecodeFlowedWithEncoding:[self textEncoding]]; -#endif - pgpRange = NSMakeRange(0, [pgpData length]); - - if(pgpRange.location != NSNotFound){ - [inputData release]; - inputData = [[GPGData alloc] initWithData:pgpData]; - if(GPGMailLoggingLevel & GPGMailDebug_SaveInputDataMask){ - NSString *filename = [NSTemporaryDirectory() stringByAppendingPathComponent:[[[NSProcessInfo processInfo] globallyUniqueString] stringByAppendingPathExtension:@"asc"]]; - - if([pgpData writeToFile:filename atomically:NO]) - NSLog(@"[DEBUG] Data to verify in %@", filename); - else - NSLog(@"[DEBUG] FAILED to write data to verify in %@", filename); - } - - verificationSignatures = [aContext verifySignedData:inputData /*encoding:[self textEncoding]*/]; // Can raise an exception - [inputData release]; - inputData = nil; - - aSignature = [[[verificationSignatures lastObject] retain] autorelease]; // Because context will be released - [aContext release]; - aContext = nil; - -#warning Workaround for gpgme 0.4.x bug: does not return an error when CRC or BADARMOR error! - if(aSignature == nil) - [[NSException exceptionWithName:GPGException reason:[[GPGMailBundle sharedInstance] gpgErrorDescription:GPGErrorInvalidArmor] userInfo:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithUnsignedInt:GPGErrorInvalidArmor], GPGErrorKey, nil]] raise]; - } - else{ - [inputData release]; - inputData = nil; - [aContext release]; - aContext = nil; - } - } - else{ - [inputData release]; - inputData = nil; - [aContext release]; - aContext = nil; - } - - return aSignature; - }@catch(NSException *localException){ - [inputData release]; - [aContext release]; - [localException raise]; - return nil; // Never reached - } -#endif - } - else - return nil; -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - return nil; // Never reached, but mutes gcc warning -#endif -} - -/* - // There is no easy way to force Mail to put some other - // MIME contents inline: MessageBody asks MIMEPart's attributedString, - // which invokes isAttachment, and eventually filewrapper and - // contentsForTextSystem. - // It seems that isAttachment always returns YES for application type. - // We'd need to poseAs MimePart to rewrite isAttachment for our special cases. - // We'll do it later ;-) - -- decodeApplicationPgp -{ - // Invoked automatically by -[MimePart contentsForTextSystem] - // for content-type:application/pgp - id result = [self decodeTextPlain]; - - return result; -} - -- decodeApplicationPgp_signature -{ - // Invoked automatically by -[MimePart contentsForTextSystem] - // for content-type:application/pgp-signature - - return [self decodeTextPlain]; -} -*/ -- (BOOL) gpgSaveBodyToFile:fp12 -{ - // If body was quoted-printable/base64, calling [self bodyData] will return decoded data - return [[self bodyData] writeToFile:fp12 atomically:NO]; -} - -#if defined(SNOW_LEOPARD) || defined(LEOPARD) || defined(TIGER) - -// The decode* methods return a NSAttributedString; they are invoked automatically by -[MimePart(DecodingSupport) contentsForTextSystem] - -static IMP MimePart_decodeTextPlain = NULL; -static IMP MimePart_decodeTextHtml = NULL; -static IMP MimePart_decodeApplicationOctet_stream = NULL; -static IMP MimePart_decodeMultipartSigned = NULL; -static IMP MimePart_decodeMultipartEncrypted = NULL; -static IMP MimePart_decodeApplicationPgp = NULL; -static IMP MimePart_clearCachedDescryptedMessageBody = NULL; -static IMP MimePart_copySignerLabels = NULL; -static IMP MimePart_isSigned = NULL; -static IMP MimePart_isEncrypted = NULL; - -+ (void) gpgAddMethodForSelector:(SEL)selector implementationSelector:(SEL)implementationSelector implementation:(IMP *)implementationPtr -{ - // We don't add that method using a category, - // to allow 'peaceful' coexistence between PGPmail and GPGMail ;-) - // PGPmail will do the same. - Method existingMethod = class_getInstanceMethod([self class], selector); - - if(existingMethod == NULL){ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - Method replacementMethod = class_getInstanceMethod([self class], implementationSelector); - - if(!class_addMethod([self class], selector, method_getImplementation(replacementMethod), method_getTypeEncoding(replacementMethod))) - NSLog(@"### ERROR: unable to add -[MimePart %@]", NSStringFromSelector(selector)); -#else - struct objc_method_list aMethodList; - struct objc_method aNewMethod; - Method replacementMethod = class_getInstanceMethod([self class], implementationSelector); - - aNewMethod.method_name = selector; - aNewMethod.method_types = replacementMethod->method_types; - aNewMethod.method_imp = replacementMethod->method_imp; - - aMethodList.obsolete = NULL; - aMethodList.method_count = 1; - aMethodList.method_list[0] = aNewMethod; - - class_addMethods([self class], &aMethodList); - if(class_getInstanceMethod([self class], selector) == NULL) - NSLog(@"### ERROR: unable to add -[MimePart %@]", NSStringFromSelector(selector)); -#endif - } - else{ - *implementationPtr = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(decodeMultipartEncrypted), [MimePart class], implementationSelector, [MimePart class]); - if(*implementationPtr == NULL) - NSLog(@"### ERROR: unable to add our version of -[MimePart %@]", NSStringFromSelector(selector)); - } -} - -+ (void) load -{ - [self gpgInitExtraIvars]; - MimePart_decodeTextPlain = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(decodeTextPlain), [MimePart class], @selector(gpgDecodeTextPlain), [MimePart class]); - MimePart_decodeTextHtml = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(decodeTextHtml), [MimePart class], @selector(gpgDecodeTextHtml), [MimePart class]); - MimePart_decodeApplicationOctet_stream = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(decodeApplicationOctet_stream), [MimePart class], @selector(gpgDecodeApplicationOctet_stream), [MimePart class]); - MimePart_decodeMultipartSigned = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(decodeMultipartSigned), [MimePart class], @selector(gpgDecodeMultipartSigned), [MimePart class]); -#ifdef SNOW_LEOPARD - MimePart_clearCachedDescryptedMessageBody = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(clearCachedDecryptedMessageBody), [MimePart class], @selector(gpgClearCachedDescryptedMessageBody), [MimePart class]); -#else - MimePart_clearCachedDescryptedMessageBody = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(clearCachedDescryptedMessageBody), [MimePart class], @selector(gpgClearCachedDescryptedMessageBody), [MimePart class]); -#endif - [self gpgAddMethodForSelector:@selector(decodeMultipartEncrypted) implementationSelector:@selector(gpgDecodeMultipartEncrypted) implementation:&MimePart_decodeMultipartEncrypted]; - [self gpgAddMethodForSelector:@selector(decodeApplicationPgp) implementationSelector:@selector(gpgDecodeApplicationPgp) implementation:&MimePart_decodeApplicationPgp]; - - // Do not overload -[MimePart usesKnownSignatureProtocol], else Mail will display its banner even for PGP messages. - MimePart_copySignerLabels = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(copySignerLabels), [MimePart class], @selector(gpgCopySignerLabels), [MimePart class]); - // -[MimePart copyMessageSigners], invoked by -[MimePart copySignerlabels], returns a (retained) array of MessageSigner or nil. - // -[MimePart signedData] returns a Subdata - MimePart_isSigned = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(isSigned), [MimePart class], @selector(gpgIsSigned), [MimePart class]); - // -[MimePart verifySignature:] modifies the NSArray ptr to return an array of MessageSigner, or NULL. - MimePart_isEncrypted = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(isEncrypted), [MimePart class], @selector(_gpgIsEncrypted), [MimePart class]); -} - -- (NSArray *)gpgCopySignerLabels -{ - // FIXME: will perform verification - we don't want that; we want to use cached verification info, not perform verification now; if we prevent verification now, we no longer have opportunity to modify those signers labels! - if(![GPGMailBundle gpgMailWorks] /*|| ![[[(MimeBody *)[self mimeBody] message] gpgMessageSignatures] count]*/) - return ((id (*)(id, SEL))MimePart_copySignerLabels)(self, _cmd); // Returns an array of NSString, or nil. Invokes -[MimePart copyMessageSigners]. - else{ - NSArray *pgpSignerLabels = nil; - NSArray *smimeSignerLabels = ((id (*)(id, SEL))MimePart_copySignerLabels)(self, _cmd); // Returns an array of NSString, or nil. Invokes -[MimePart copyMessageSigners]. - NSArray *allSignerLabels; - - if([self gpgHasSignature]){ - GPGSignature *sig = [self gpgAuthenticationSignature]; // FIXME: Does not support multiple signatures - - if([sig status] == GPGErrorNoError){ - NSString *aString = [sig fingerprint]; - GPGKey *signatureKey = nil; - - if(aString){ - GPGContext *aContext = [[GPGContext alloc] init]; - - @try{ - signatureKey = [aContext keyFromFingerprint:aString secretKey:NO]; - }@catch(NSException *localException){ - [aContext release]; - [localException raise]; - } - [aContext release]; - } - if(signatureKey) - aString = [signatureKey name]; // Like Apple does for S/MIME - else if([aString length] >= 32) - aString = [GPGKey formattedFingerprint:aString]; - pgpSignerLabels = [NSArray arrayWithObject:aString]; - } - } - - if(pgpSignerLabels != nil){ - if(smimeSignerLabels != nil){ - allSignerLabels = [[pgpSignerLabels arrayByAddingObjectsFromArray:smimeSignerLabels] retain]; - [smimeSignerLabels release]; - } - else - allSignerLabels = [pgpSignerLabels retain]; - } - else - allSignerLabels = smimeSignerLabels; - - if((GPGMailLoggingLevel > 0)) - NSLog(@"[DEBUG] %s => %@", __PRETTY_FUNCTION__, allSignerLabels); - - return allSignerLabels; - } -} - -- (BOOL)gpgIsSigned -{ - if(![GPGMailBundle gpgMailWorks]) - return ((BOOL (*)(id, SEL))MimePart_isSigned)(self, _cmd); - else{ - BOOL result; - - if([self gpgHasSignature]) - result = YES; - else - result = ((BOOL (*)(id, SEL))MimePart_isSigned)(self, _cmd); - // NSLog(@"%s => %@", __PRETTY_FUNCTION__, result ? @"YES":@"NO"); - - return result; - } -} - -- (BOOL)_gpgIsEncrypted -{ - if(![GPGMailBundle gpgMailWorks]) - return ((BOOL (*)(id, SEL))MimePart_isEncrypted)(self, _cmd); - else{ - BOOL result; - - if([self gpgIsEncrypted]) - result = YES; - else - result = ((BOOL (*)(id, SEL))MimePart_isEncrypted)(self, _cmd); - // NSLog(@"%s => %@", __PRETTY_FUNCTION__, result ? @"YES":@"NO"); - - return result; - } -} - -/*! - * Array of cached decrypted parts, or nil. - */ -- (NSArray *)gpgDecryptedParts -{ - return GPG_GET_EXTRA_IVAR(@"decryptedParts"); -} - -- (void)setGpgDecryptedParts:(NSArray *)parts -{ - GPG_SET_EXTRA_IVAR(parts, @"decryptedParts"); -} -/* -- (GPGSignature *)gpgSignature -{ - return GPG_GET_EXTRA_IVAR(@"signature"); -} - -- (void)setGpgSignature:(GPGSignature *)signature -{ - GPG_SET_EXTRA_IVAR(signature, @"signature"); -}*/ -/* -- (NSException *)gpgException -{ - return GPG_GET_EXTRA_IVAR(@"exception"); -} - -- (void)setGpgException:(NSException *)exception -{ - GPG_SET_EXTRA_IVAR(exception, @"exception"); -} -*/ -/*! - * If we can decrypt the part (or subparts), then we decode it, else we return nil. - * @result Decoded content or nil. - */ -#if 0 -- (id) _gpgDecodePGP_NEW -{ - NSArray *decryptedParts = [self gpgDecryptedParts]; // Try to get from cache - id result = nil; - Message *encryptedMessage = (Message *)[[self mimeBody] message]; - - if(!decryptedParts && [encryptedMessage gpgIsDecrypting]){ - if([self gpgIsEncrypted]){ - if(GPGMailLoggingLevel > 0) - NSLog(@"[DEBUG] Will decrypt PGP part %p", self); - GPGSignature *aSignature = nil; - NSArray *signatures = nil; - BOOL decryptedDataContainsHeaders = [self gpgIsOpenPGPEncryptedContainerPart]; - NSData *decryptedData = [self gpgDecryptedDataWithPassphraseDelegate:[GPGMailBundle sharedInstance] signatures:&signatures]; // Can raise an exception! - - if(signatures != nil && [signatures count] > 0) - aSignature = [signatures objectAtIndex:0]; - if(decryptedData){ - unsigned numberOfAttachments, numberOfTNEFAttachments; - BOOL isSigned, isEncrypted; - NSDataMessageStore *tempMessageStore; - Message *decryptedMessage; - MimePart *decryptedPart; - - MutableMessageHeaders *newHeaders; - NSMutableData *newDecryptedData; - - if([(MimeBody *)[encryptedMessage messageBody] topLevelPart] == self) - newHeaders = [[encryptedMessage headers] mutableCopy]; - else - newHeaders = nil; - - if(decryptedDataContainsHeaders){ - // S/MIME doesn't do that: the decrypted message has quite no header. - // What we want is to get all the headers of the encrypted message, - // plus/minus the ones of the decrypted message, because - // we will display the decrypted message (unlike S/MIME which displays the decryptedBody), - // this way we can can the raw data and headers of the decrypted message, unlike S/MIME. - // FIXME: NO - only when top-level part! - NSAssert(newHeaders != nil, @"### GPGMail does not support OpenPGP MIME when only part(s) of the message are encrypted"); - NSEnumerator *headerKeysToRemoveEnum = [[newHeaders _decodeHeaderKeysFromData:decryptedData] objectEnumerator]; - NSString *aHeaderKey; - - while((aHeaderKey = [headerKeysToRemoveEnum nextObject])) - [newHeaders removeHeaderForKey:aHeaderKey]; - } - -#if DECRYPT_PGP_ATTACHMENTS - if([self _gpgLooksLikeBinaryPGPAttachment]){ - NSString *aFileName = [self attachmentFilename]; - - if(aFileName){ - NSString *ext = [[aFileName pathExtension] lowercaseString]; - - if([ext isEqualToString:@"asc"] || [ext isEqualToString:@"gpg"] || [ext isEqualToString:@"pgp"]){ - NSString *newMIME = @""; - NSFileWrapper *dummyFileWrapper = [[NSFileWrapper alloc] initRegularFileWithContents:decryptedData]; - - // How can get get MIME type from extension?? - aFileName = [aFileName stringByDeletingPathExtension]; - [dummyFileWrapper setPreferredFilename:aFileName]; - newMIME = [dummyFileWrapper mimeType]; - [dummyFileWrapper release]; - // TODO: Modify newHeaders by adding new filename + new content-encoding + new MIME type - /* [newHeaders removeHeaderForKey:@"content-disposition"]; - [newHeaders setHeader:[@"attachment; filename=" stringByAppendingString:aFileName] forKey:@"content-disposition"]; - [newHeaders removeHeaderForKey:@"content-type"]; - [newHeaders setHeader:[NSString stringWithFormat:@"%@; filename=%@", newMIME, aFileName] forKey:@"content-type"];*/ - } - } -#warning Seems completely dans les choux with partially decrypted/decoded attachment! - } -#endif - - newDecryptedData = [[newHeaders _encodedHeadersIncludingFromSpace:NO] mutableCopy]; // Using -headerData still returns removed header! - if(decryptedDataContainsHeaders) - [newDecryptedData setLength:[newDecryptedData length] - 1]; // Remove header separator char - [newDecryptedData appendData:decryptedData]; - // Enigmail uses \r\n as header line separator, whereas GPGMail only uses \n - // If we don't do that transformation, NSDataMessageStore complaints "couldn't find body" - // Is GPGMail wrong with its \n only? - [newDecryptedData convertNetworkLineEndingsToUnix]; - decryptedData = [newDecryptedData autorelease]; - [newHeaders release]; - tempMessageStore = [[NSDataMessageStore alloc] initWithData:decryptedData]; - decryptedMessage = [tempMessageStore message]; - [decryptedMessage setMessageInfoFromMessage:encryptedMessage]; - decryptedMessageBody = [decryptedMessage messageBody]; // OK for Leopard, even for embedded message - if(GPGMailLoggingLevel > 0) - NSLog(@"[DEBUG] Caching decrypted PGP part %p", self); -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - [self _setDecryptedMessageBody:decryptedMessageBody isEncrypted:YES isSigned:(aSignature != nil)]; - // We need to store that decrypted message body, because for embedded messages, - // their messageBody is re-created at every call, and it is impossible to cache (inside Message) - // the decrypted body. We use that cached decrypted body in - // -[MessageContentController(PGPMail) pgpAccessoryViewOwner:displayMessage:isSigned:], - // via -[Message(PGPMail) pgpDecrypedMessageBody] -#warning FIXME: LEOPARD We need to cache the decryptedBody - // theDecodeOptions.mDecryptedMessageBody = [decryptedMessageBody retain]; -#else - [self _setDecryptedMessageBody:decryptedMessageBody]; // FIXME: Will not work for multiple encrypted parts? Too early? -#endif - decryptedPart = [decryptedMessageBody topLevelPart]; // FIXME: WRONG, in case of multiple encrypted parts -#ifdef SNOW_LEOPARD - result = [decryptedPart gpgBetterDecode]; -#else - result = [decryptedPart contentsForTextSystem]; -#endif -#if 0 - [decryptedPart getNumberOfAttachments:&numberOfAttachments isSigned:&isSigned isEncrypted:&isEncrypted]; - [[encryptedMessage messageStore] setNumberOfAttachments:numberOfAttachments isSigned:(theDecodeOptions.mIsSigned) isEncrypted:(theDecodeOptions.mIsEncrypted) forMessage:encryptedMessage]; -#else - [self getNumberOfAttachments:&numberOfAttachments numberOfTNEFAttachments:&numberOfTNEFAttachments isSigned:&isSigned isEncrypted:&isEncrypted]; -#warning FIXME: Set isSigned only when sig is valid - [[encryptedMessage messageStore] setNumberOfAttachments:numberOfAttachments isSigned:(aSignature != nil) isEncrypted:YES forMessage:encryptedMessage]; -#endif - [tempMessageStore release]; - // messageStore is retained by its message, and its message is retained by the encrypted mimePart - // Everything will be released when clearCachedDescryptedMessageBody is invoked - // Now find a way to clear that cached decrypted body! - // Encrypted mime part stores decrypted message body, decrypted message and decrypted message store in its _otherIvars ivar -#warning FIXME: We should store something when encrypted without sig -> no sig value = +/-1? - [encryptedMessage setGpgSignature:aSignature]; - } - } - } - else{ - if(/*decryptedMessageBody*/decryptedPart != nil && GPGMailLoggingLevel > 0) - NSLog(@"[DEBUG] PGP part %p has already been decrypted (cache)", self); -#ifdef SNOW_LEOPARD - result = [/*[decryptedMessageBody topLevelPart]*/decryptedPart gpgBetterDecode]; // WRONG, in case of multiple encrypted parts -#else - result = [/*[decryptedMessageBody topLevelPart]*/decryptedPart contentsForTextSystem]; // WRONG, in case of multiple encrypted parts -#endif - } - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Done: result = %p", result); - - return result; -} -#endif - -- (void)resetGpgCache -{ - [[self subparts] makeObjectsPerformSelector:_cmd]; - GPG_SET_EXTRA_IVAR(nil, @"range"); -} - -- (NSRange)gpgRange -{ - NSValue *rangeValue = GPG_GET_EXTRA_IVAR(@"range"); - - if(rangeValue == nil) - return [self range]; - else - return [rangeValue rangeValue]; -} - -- (void)shiftGpgRangeBy:(NSInteger)shift ifAfterLocation:(NSUInteger)location -{ - NSRange currentRange = [self gpgRange]; - - if(currentRange.location != NSNotFound && currentRange.location > location){ - currentRange.location += shift; - GPG_SET_EXTRA_IVAR([NSValue valueWithRange:currentRange], @"range"); - } - - NSEnumerator *partEnum = [[self subparts] objectEnumerator]; - MimePart *eachSubpart; - - while(eachSubpart = [partEnum nextObject]) - [eachSubpart shiftGpgRangeBy:shift ifAfterLocation:location]; -} - -- (void)setGpgRange:(NSRange)range -{ - NSRange currentRange = [self gpgRange]; - NSInteger delta = (range.location - currentRange.location) + (range.length - currentRange.length); - MimePart *topLevelPart = [[self mimeBody] topLevelPart]; - - [topLevelPart shiftGpgRangeBy:delta ifAfterLocation:currentRange.location]; - GPG_SET_EXTRA_IVAR([NSValue valueWithRange:range], @"range"); -} - -- (id) _gpgDecodePGP -{ -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - MimeBody *decryptedMessageBody = [self decryptedMessageBodyIsEncrypted:NULL isSigned:NULL]; -#else - MimeBody *decryptedMessageBody = [self decryptedMessageBody]; // FIXME: decryptedMessageBody could be partial, in case of PGP7 inline style! -#endif - id result = nil; - Message *encryptedMessage = (Message *)[[self mimeBody] message]; - - if(!decryptedMessageBody && [encryptedMessage gpgIsDecrypting]){ - if([self gpgIsEncrypted]){ - if(GPGMailLoggingLevel > 0) - NSLog(@"[DEBUG] Will decrypt PGP part %p", self); - GPGSignature *aSignature = nil; - NSArray *signatures = nil; - BOOL getsNewPartData = [self gpgIsOpenPGPEncryptedContainerPart]; - NSData *decryptedData = [self gpgDecryptedDataWithPassphraseDelegate:[GPGMailBundle sharedInstance] signatures:&signatures]; // Can raise an exception! - BOOL isTopLevelPart = ([(MimeBody *)[encryptedMessage messageBody] topLevelPart] == self); - - if(signatures != nil && [signatures count] > 0) - aSignature = [signatures objectAtIndex:0]; - if(decryptedData){ - unsigned numberOfAttachments, numberOfTNEFAttachments; - char isSigned, isEncrypted; - NSDataMessageStore *tempMessageStore; - Message *decryptedMessage; - MimePart *decryptedPart; - - MutableMessageHeaders *newHeaders; - NSMutableData *newDecryptedData; - - if(isTopLevelPart) - newHeaders = [[encryptedMessage headers] mutableCopy]; - else{ -#if DECRYPT_PGP_ATTACHMENTS - // Extracting part data from message store does not work: we get ony the body data, without the headers. -// NSData *originalHeaderData = [[encryptedMessage messageStore] dataForMimePart:self]; -// -// originalHeaderData = [originalHeaderData subdataWithRange:[originalHeaderData rangeOfRFC822HeaderData]]; -// newHeaders = [[MutableMessageHeaders alloc] initWithHeaderData:originalHeaderData encoding:NSUTF8StringEncoding]; // FIXME: not sure about encoding -// id headerValue; - - newHeaders = [[MutableMessageHeaders alloc] init]; - // TODO: how can we get part's headers? -// headerValue = [self contentTransferEncoding]; -// if(headerValue != nil) -// [newHeaders setHeader:headerValue forKey:@"content-type"]; -// headerValue = [self contentTransferEncoding]; -// if(headerValue != nil) -// [newHeaders setHeader:headerValue forKey:@"content-transfer-encoding"]; -// headerValue = [self contentTransferEncoding]; -// if(headerValue != nil) -// [newHeaders setHeader:headerValue forKey:@"content-disposition"]; -// headerValue = [self contentDescription]; -// if(headerValue != nil) -// [newHeaders setHeader:headerValue forKey:@"content-description"]; -// headerValue = [self contentTransferEncoding]; -// if(headerValue != nil) -// [newHeaders setHeader:headerValue forKey:@"content-id"]; -// headerValue = [self contentTransferEncoding]; -// if(headerValue != nil) -// [newHeaders setHeader:headerValue forKey:@"content-location"]; -// headerValue = [self contentTransferEncoding]; -// if(headerValue != nil) -// [newHeaders setHeader:headerValue forKey:@"content-languages"]; -#else - newHeaders = nil; -#endif - } - - if(getsNewPartData){ - // S/MIME doesn't do that: the decrypted message has quite no header. - // What we want is to get all the headers of the encrypted message, - // plus/minus the ones of the decrypted message, because - // we will display the decrypted message (unlike S/MIME which displays the decryptedBody), - // this way we can can the raw data and headers of the decrypted message, unlike S/MIME. - // FIXME: NO - only when top-level part! - NSAssert(newHeaders != nil, @"### GPGMail does not support OpenPGP MIME when only part(s) of the message are encrypted"); - NSEnumerator *headerKeysToRemoveEnum = [[newHeaders _decodeHeaderKeysFromData:decryptedData] objectEnumerator]; - NSString *aHeaderKey; - - while((aHeaderKey = [headerKeysToRemoveEnum nextObject])) - [newHeaders removeHeaderForKey:aHeaderKey]; - } - else{ - BOOL isApplicationPGP = ([[[self type] lowercaseString] isEqualToString:@"application"] && [[[self subtype] lowercaseString] isEqualToString:@"pgp"]); - - if(isApplicationPGP && [[[self bodyParameterForKey:@"format"] lowercaseString] isEqualToString:@"text"]){ - // FIXME: if not top-level part, newHeaders is nil! - [newHeaders removeHeaderForKey:@"content-type"]; - [newHeaders setHeader:@"text/plain" forKey:@"content-type"]; - } - } - -#if DECRYPT_PGP_ATTACHMENTS - if([self _gpgLooksLikeBinaryPGPAttachment]){ - NSString *aFileName = [self attachmentFilename]; - - if(aFileName){ - NSString *ext = [[aFileName pathExtension] lowercaseString]; - - if([ext isEqualToString:@"asc"] || [ext isEqualToString:@"gpg"] || [ext isEqualToString:@"pgp"]){ - NSString *newMIME; - - // How can get get MIME type from extension?? - aFileName = [aFileName stringByDeletingPathExtension]; // Removes only last extension (.pgp, .gpg, .asc) - if([decryptedData respondsToSelector:@selector(_web_guessedMIMETypeForExtension:)]) - newMIME = [decryptedData _web_guessedMIMETypeForExtension:[aFileName pathExtension]]; - else - newMIME = @"application/octet-stream"; - // Modify newHeaders by adding new filename + new content-encoding + new MIME type - [newHeaders removeHeaderForKey:@"content-disposition"]; - [newHeaders setHeader:[@"attachment; filename=" stringByAppendingString:aFileName] forKey:@"content-disposition"]; // FIXME: no escaping of filename - [newHeaders removeHeaderForKey:@"content-type"]; - [newHeaders setHeader:[NSString stringWithFormat:@"%@; filename=%@", newMIME, aFileName] forKey:@"content-type"]; // FIXME: no escaping of filename - [newHeaders removeHeaderForKey:@"content-transfer-encoding"]; - [newHeaders setHeader:@"base64" forKey:@"content-transfer-encoding"]; -// decryptedData = [decryptedData encodeBase64]; // FIXME: seems to be already in base64!? - } - } - } -#endif - if(!isTopLevelPart){ - // Replace part's data with part's decrypted data, - // in whole message data, and set decryptedData to that. - NSData *originalHeaderData = nil; - NSData *originalBodyData = [encryptedMessage gpgCurrentFullBodyPartDataAndHeaderDataIfReadilyAvailable:&originalHeaderData]; - NSRange partBodyRange = [self gpgRange]; // FIXME: aRange.location = NSNotFound, sometimes! - -// NSAssert(partBodyRange.location != NSNotFound, @"### GPGMail is not yet able to decode that embedded encrypted part"); - if(partBodyRange.location == NSNotFound){ - NSLog(@"### GPGMail is not yet able to decode that embedded encrypted part"); - [NSException raise:NSInternalInconsistencyException format:@"### GPGMail is not yet able to decode that embedded encrypted part"]; - } - if(![originalHeaderData isKindOfClass:[NSData class]]) - originalHeaderData = [originalHeaderData valueForKey:@"data"]; // It was actually a Subdata - if(![originalBodyData isKindOfClass:[NSData class]]) - originalBodyData = [originalBodyData valueForKey:@"data"]; // It was actually a Subdata - newDecryptedData = [[NSMutableData alloc] initWithData:decryptedData]; - [newDecryptedData convertNetworkLineEndingsToUnix]; - - // Extract header range: search backwards for part boundary, - // which is a line starting with '--' - const char *partBodyDataPtr = [originalBodyData bytes] + partBodyRange.location; - const char *aCharPtr = partBodyDataPtr; - while(*aCharPtr != '-' || *(aCharPtr - 1) != '-' || *(aCharPtr - 2) != '\n') - aCharPtr--; - // Now go until next line, to get header start - while(*aCharPtr != '\n') - aCharPtr++; - aCharPtr++; - // Augment partBodyRange to include headers - int headerPartLength = partBodyDataPtr - aCharPtr; - partBodyRange.location -= headerPartLength; - partBodyRange.length += headerPartLength; - - // If we had no headers, e.g. part is not a PGP attachment, - // then use same headers as before decryption. - if([[newHeaders allHeaderKeys] count] == 0){ - [newHeaders release]; - newHeaders = [[MutableMessageHeaders alloc] initWithHeaderData:[originalBodyData subdataWithRange:NSMakeRange(partBodyRange.location, headerPartLength)] encoding:NSUTF8StringEncoding]; - } - - NSRange decryptedPartBodyRange = NSMakeRange(0, [newDecryptedData length]); - NSData *newHeadersData = [newHeaders _encodedHeadersIncludingFromSpace:NO]; // Contains headers/body separator - [newDecryptedData replaceBytesInRange:NSMakeRange(0, 0) withBytes:[newHeadersData bytes] length:[newHeadersData length]]; - decryptedPartBodyRange.location += [newHeadersData length]; - - [newDecryptedData replaceBytesInRange:NSMakeRange(0, 0) withBytes:[originalHeaderData bytes] length:[originalHeaderData length]]; - [newDecryptedData replaceBytesInRange:NSMakeRange([originalHeaderData length], 0) withBytes:[[originalBodyData subdataToIndex:partBodyRange.location] bytes] length:partBodyRange.location]; - decryptedPartBodyRange.location += partBodyRange.location; - [newDecryptedData appendData:[originalBodyData subdataFromIndex:NSMaxRange(partBodyRange)]]; - decryptedData = [newDecryptedData autorelease]; - [encryptedMessage gpgUpdateCurrentFullBodyPartData:[decryptedData subdataFromIndex:[originalHeaderData length]]]; // Remove headers - only body - [self setGpgRange:decryptedPartBodyRange]; - } - else{ - newDecryptedData = [[newHeaders _encodedHeadersIncludingFromSpace:NO] mutableCopy]; // Using -headerData still returns removed header! - if(getsNewPartData) - [newDecryptedData setLength:[newDecryptedData length] - 1]; // Remove header separator char - [newDecryptedData appendData:decryptedData]; - // Enigmail uses \r\n as header line separator, whereas GPGMail only uses \n - // If we don't do that transformation, NSDataMessageStore complaints "couldn't find body" - // Is GPGMail wrong with its \n only? - [newDecryptedData convertNetworkLineEndingsToUnix]; - decryptedData = [newDecryptedData autorelease]; - [newHeaders release]; - } - tempMessageStore = [[NSDataMessageStore alloc] initWithData:decryptedData]; - decryptedMessage = [tempMessageStore message]; - [decryptedMessage setMessageInfoFromMessage:encryptedMessage]; - decryptedMessageBody = [decryptedMessage messageBody]; // OK for Leopard, even for embedded message - if(decryptedMessageBody == nil && GPGMailLoggingLevel) - NSLog(@"ERROR: decryptedMessageBody should not be nil!"); - if(GPGMailLoggingLevel > 0) - NSLog(@"[DEBUG] Caching decrypted PGP part %p", self); -#if defined(SNOW_LEOPARD) || defined(LEOPARD) - [/*self*/[[self mimeBody] topLevelPart] _setDecryptedMessageBody:decryptedMessageBody isEncrypted:YES isSigned:(aSignature != nil)]; - // We need to store that decrypted message body, because for embedded messages, - // their messageBody is re-created at every call, and it is impossible to cache (inside Message) - // the decrypted body. We use that cached decrypted body in - // -[MessageContentController(PGPMail) pgpAccessoryViewOwner:displayMessage:isSigned:], - // via -[Message(PGPMail) pgpDecrypedMessageBody] -#warning FIXME: LEOPARD We need to cache the decryptedBody -// theDecodeOptions.mDecryptedMessageBody = [decryptedMessageBody retain]; -#else - [/*self*/[[self mimeBody] topLevelPart] _setDecryptedMessageBody:decryptedMessageBody]; // FIXME: Will not work for multiple encrypted parts? Too early? -#endif -// decryptedPart = [decryptedMessageBody topLevelPart]; // FIXME: WRONG, in case of multiple encrypted parts - decryptedPart = [decryptedMessageBody partWithNumber:[self partNumber]]; // FIXME: WRONG, in case of PGP/MIME parts which result in multiple parts -#ifdef SNOW_LEOPARD - result = [decryptedPart gpgBetterDecode]; // Can invoke _gpgDecodePGP -#else - result = [decryptedPart contentsForTextSystem]; // Can invoke _gpgDecodePGP -#endif -#if 0 - [decryptedPart getNumberOfAttachments:&numberOfAttachments isSigned:&isSigned isEncrypted:&isEncrypted]; - [[encryptedMessage messageStore] setNumberOfAttachments:numberOfAttachments isSigned:(theDecodeOptions.mIsSigned) isEncrypted:(theDecodeOptions.mIsEncrypted) forMessage:encryptedMessage]; -#else - - // TESTME! This is only a patch to bug: no automatic verification - if(aSignature == nil){ - aSignature = [decryptedPart gpgAuthenticationSignature]; - if(aSignature) - signatures = [NSArray arrayWithObject:aSignature]; - } - // End of patch - - [self getNumberOfAttachments:&numberOfAttachments numberOfTNEFAttachments:&numberOfTNEFAttachments isSigned:&isSigned isEncrypted:&isEncrypted]; -#warning FIXME: Set isSigned only when sig is valid - [[encryptedMessage messageStore] setNumberOfAttachments:numberOfAttachments isSigned:(aSignature != nil) isEncrypted:YES forMessage:encryptedMessage]; -#endif - [tempMessageStore release]; - // messageStore is retained by its message, and its message is retained by the encrypted mimePart - // Everything will be released when clearCachedDescryptedMessageBody is invoked - // Now find a way to clear that cached decrypted body! - // Encrypted mime part stores decrypted message body, decrypted message and decrypted message store in its _otherIvars ivar -#warning FIXME: We should store something when encrypted without sig -> no sig value = +/-1? - [encryptedMessage setGpgMessageSignatures:signatures]; - } - } - } - else{ - if(decryptedMessageBody != nil && GPGMailLoggingLevel > 0) - NSLog(@"[DEBUG] PGP part %p has already been decrypted (cache)", self); -#ifdef SNOW_LEOPARD - result = [[decryptedMessageBody topLevelPart] gpgBetterDecode]; // WRONG, in case of multiple encrypted parts -#else - result = [[decryptedMessageBody topLevelPart] contentsForTextSystem]; // WRONG, in case of multiple encrypted parts -#endif - } - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Done: result = %p", result); - - return result; -} - -- (id) gpgBetterDecode -{ - if(GPGMailLoggingLevel) - NSLog(@"Top level part: %@", self); - NSString *type = [NSString stringWithString:(NSString *)[self type]]; - NSString *subtype = [NSString stringWithString:(NSString *)[self subtype]]; - NSString *selector = [NSString stringWithFormat:@"decode%@%@", [type capitalizedString], [[subtype stringByReplacingOccurrencesOfString:@"-" withString:@"_"] capitalizedString]]; - - /* Unfortunately calling decode (replacement of contentsForTextSystem) doesn't work anymore. - * calling the appropriate decode method for the top part fixes the problem. - */ - if([self respondsToSelector:NSSelectorFromString(selector)]) { - return [self performSelector:NSSelectorFromString(selector)]; - } - else { - /* Otherwise try it with decode. */ - if(GPGMailLoggingLevel) - NSLog(@"Using decode anyway!"); - return [self decode]; // Will force re-evaluation of the decode* methods. Will not raise an exception, because -contentsForTextSystem will catch it! - } -} - -- gpgDecodeMultipartEncrypted -{ - if(![GPGMailBundle gpgMailWorks]){ - if(MimePart_decodeMultipartEncrypted) - return ((id (*)(id, SEL))MimePart_decodeMultipartEncrypted)(self, _cmd); // TESTME Test when PGPmail is present - else - return [self decodeMultipart]; - } - else{ - id result = nil; - - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %p decodeMultipartEncrypted", self); - @try{ - // [self setGpgException:nil]; - [(Message *)[[self mimeBody] message] setGpgException:nil]; - result = [self _gpgDecodePGP]; // Can raise an exception! - }@catch(NSException *localException){ - // [localException raise]; // Exception will be caught by Mail and a message will be logged in console: '*** Exception Decryption failed was raised while decoding mime message part. Displaying as text/plain.' - // [self setGpgException:localException]; - [(Message *)[[self mimeBody] message] setGpgException:localException]; - } - - if(!result){ - // [encryptedMessage setGpgIsDecrypting:NO]; // Needed, else will try again to decrypt - if(MimePart_decodeMultipartEncrypted) - result = ((id (*)(id, SEL))MimePart_decodeMultipartEncrypted)(self, _cmd); // TESTME Test when PGPmail is present - else - result = [self decodeMultipart]; // Use default behavior (works!) - } - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Done: result = %p", result); - return result; - } -} - -- gpgDecodeMultipartSigned -{ - if(![GPGMailBundle gpgMailWorks]) - return ((id (*)(id, SEL))MimePart_decodeMultipartSigned)(self, _cmd); - else{ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %p decodeMultipartSigned", self); - id result = [self _gpgDecodePGP]; - - if(!result) - result = ((id (*)(id, SEL))MimePart_decodeMultipartSigned)(self, _cmd); - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Done: result = %p", result); - - return result; - } -} - -- gpgDecodeTextPlain -{ - id result = nil; - - if(![GPGMailBundle gpgMailWorks]) - result = ((id (*)(id, SEL))MimePart_decodeTextPlain)(self, _cmd); - else{ -#if 0 - // NSLog(@"$$$ %p gpgDecodeTextPlain", self); - result = [self _gpgDecodePGP]; - if(!result) - result = ((id (*)(id, SEL))MimePart_decodeTextPlain)(self, _cmd); - // NSLog(@"$$$ Done: result = %p", result); - return result; -#else - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %p gpgDecodeTextPlain", self); - @try{ - result = [self _gpgDecodePGP]; // Can raise an exception! - }@catch(NSException *localException){ - [(Message *)[[self mimeBody] message] setGpgException:localException]; - } - - if(!result) - result = ((id (*)(id, SEL))MimePart_decodeTextPlain)(self, _cmd); - - return result; -#endif - } - - return result; -} - -- gpgDecodeTextHtml -{ - if(![GPGMailBundle gpgMailWorks]) - return ((id (*)(id, SEL))MimePart_decodeTextHtml)(self, _cmd); - else{ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %p gpgDecodeTextHtml", self); - id result = [self _gpgDecodePGP]; - - if(!result) - result = ((id (*)(id, SEL))MimePart_decodeTextHtml)(self, _cmd); - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Done: result = %p", result); - return result; - } -} - -- gpgDecodeApplicationOctet_stream -{ - if(![GPGMailBundle gpgMailWorks]) - return ((id (*)(id, SEL))MimePart_decodeApplicationOctet_stream)(self, _cmd); - else{ - BOOL doDecode = ![[self parentPart] gpgIsOpenPGPEncryptedContainerPart]; - id result = nil; - - if(doDecode){ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %p gpgDecodeApplicationOctet_stream", self); - result = [self _gpgDecodePGP]; - } - - if(!result) - result = ((id (*)(id, SEL))MimePart_decodeApplicationOctet_stream)(self, _cmd); - if(doDecode && GPGMailLoggingLevel) - NSLog(@"[DEBUG] Done: result = %p", result); - return result; - } -} - -- gpgDecodeApplicationPgp -{ - if(![GPGMailBundle gpgMailWorks]) - return ((id (*)(id, SEL))MimePart_decodeApplicationOctet_stream)(self, _cmd); - else{ - id result = nil; - - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %p gpgDecodeApplicationPgp", self); - @try{ - result = [self _gpgDecodePGP]; // Can raise an exception! - }@catch(NSException *localException){ - [(Message *)[[self mimeBody] message] setGpgException:localException]; - } - - if(!result){ - if(MimePart_decodeApplicationPgp) - result = ((id (*)(id, SEL))MimePart_decodeApplicationPgp)(self, _cmd); // TESTME: Test when PGPmail is present - else - result = [self decodeApplicationOctet_stream]; - } - - return result; - } -} - -- (void) gpgClearCachedDescryptedMessageBody -{ - // Is invoked automatically when selection changes? Currently called by _setMessage:fp8 headerOrder: (indirectly) - if(![GPGMailBundle gpgMailWorks]) - ((void (*)(id, SEL))MimePart_clearCachedDescryptedMessageBody)(self, _cmd); - else{ - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] %p clearCachedDescryptedMessageBody", self); - Message *aMessage = (Message *)[[self mimeBody] message]; - - if([aMessage gpgMayClearCachedDecryptedMessageBody]){ - [aMessage setGpgMessageSignatures:nil]; - ((void (*)(id, SEL))MimePart_clearCachedDescryptedMessageBody)(self, _cmd); - if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Really did it"); - } - else if(GPGMailLoggingLevel) - NSLog(@"[DEBUG] Not yet"); - } -} - -#endif - -@end diff --git a/GPGMail/Source/NSData+GPGMail.h b/GPGMail/Source/NSData+GPGMail.h deleted file mode 100644 index c00f2ea8..00000000 --- a/GPGMail/Source/NSData+GPGMail.h +++ /dev/null @@ -1,57 +0,0 @@ -/* NSData+GPGMail.h created by dave on Fri 13-Apr-2001 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - - -@interface NSData(GPGMail) - -- (NSData *) gpgStandardizedEOLsToCRLF; - // Converts all LF or CR end-of-lines to CRLF end-of-lines -- (NSData *) gpgStandardizedEOLsToLF; - // Converts all CRLF or CR end-of-lines to LF end-of-lines -- (BOOL) gpgContainsNonASCIICharacter; - // Returns YES if contains 8-bit values > 127 -- (NSData *) gpgNormalizedDataForVerifying; - -- (NSRange) gpgHeaderBodySeparationRange; - -- (NSData *) gpgFormatFlowedFixedWithCRLF:(BOOL)useCRLF useQP:(BOOL)useQP; -- (NSData *) gpgDeleteTrailingSpacesUseCRLF:(BOOL)useCRLF useQP:(BOOL)useQP; -- (NSData *) gpgDecodeFlowedWithEncoding:(CFStringEncoding)encoding; - -@end - -@interface NSMutableData(GPGMail) -- (void) gpgNormalizeDataForSigning; // Normalizes EOLs -- (void) gpgNormalizeDataForVerifying; // Normalizes EOLs -- (BOOL) gpgApplyQuotedPrintableIfNeeded:(BOOL)alreadyUsesQuotedPrintable; // Returns YES if needed to quoted-printable (and alreadyUsesQuotedPrintable was NO) -- (void) gpgASCIIfy; // Replaces all non-ASCII chars by '_' - -@end diff --git a/GPGMail/Source/NSData+GPGMail.m b/GPGMail/Source/NSData+GPGMail.m deleted file mode 100644 index 90189527..00000000 --- a/GPGMail/Source/NSData+GPGMail.m +++ /dev/null @@ -1,526 +0,0 @@ -/* NSData+GPGMail.m created by dave on Fri 13-Apr-2001 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "NSData+GPGMail.h" -#import -#import -#import -#import - - -@implementation NSData(GPGMail) - -- (NSData *) gpgStandardizedEOLsToCRLF -{ - // Converts all LF or CR end-of-lines to CRLF end-of-lines -#define CR '\r' -#define LF '\n' - unsigned length = [self length]; - NSData *result; - - if(length > 0){ - unsigned i = 0, newLength = 0; - BOOL foundCR = NO; - const unsigned char *oldBytes; - unsigned char aByte, *newBytes; - - oldBytes = [self bytes]; - newBytes = NSZoneMalloc(NSDefaultMallocZone(), 2 * length); - - for(; i < length; i++){ - aByte = oldBytes[i]; - if(aByte == LF){ - if(!foundCR){ - newBytes[newLength++] = CR; - newBytes[newLength++] = LF; - } - else{ - newBytes[newLength++] = LF; - foundCR = NO; - } - } - else{ - if(foundCR) - newBytes[newLength++] = LF; - newBytes[newLength++] = aByte; - foundCR = (aByte == CR); - } - } - if(foundCR) - newBytes[newLength++] = LF; // Last byte! - - result = [NSData dataWithBytes:newBytes length:newLength]; - NSZoneFree(NSDefaultMallocZone(), newBytes); - } - else - result = [NSData data]; - - return result; -#undef LF -#undef CR -} - -- (NSData *) gpgStandardizedEOLsToLF -{ - // Converts all CRLF or CR end-of-lines to LF end-of-lines -#define CR '\r' -#define LF '\n' - unsigned length = [self length]; - NSData *result; - - if(length > 0){ - unsigned i = 0, newLength = 0; - BOOL foundCR = NO; - const unsigned char *oldBytes; - unsigned char aByte, *newBytes; - - oldBytes = [self bytes]; - newBytes = NSZoneMalloc(NSDefaultMallocZone(), length); - - for(; i < length; i++){ - aByte = oldBytes[i]; - if(aByte == CR){ - newBytes[newLength++] = LF; - foundCR = YES; - } - else{ - if(foundCR && aByte == LF) - foundCR = NO; - else{ - newBytes[newLength++] = aByte; - foundCR = (aByte == CR); - } - } - } - - result = [NSData dataWithBytes:newBytes length:newLength]; - NSZoneFree(NSDefaultMallocZone(), newBytes); - } - else - result = [NSData data]; - - return result; -#undef LF -#undef CR -} - -- (BOOL) gpgContainsNonASCIICharacter -{ - unsigned i = [self length]; - - if(i > 0){ - const char *bytes = [self bytes]; - - do{ - if(bytes[--i] & 0x80) - return YES; - }while(i != 0); - } - return NO; -} - -- (NSData *) gpgNormalizedDataForVerifying -{ - NSMutableData *result = [NSMutableData dataWithData:self]; - - [result gpgNormalizeDataForVerifying]; - - return result; -} - -- (NSRange) gpgHeaderBodySeparationRange -{ -#define CR '\r' -#define LF '\n' - const unsigned char *bytes = [self bytes]; - const int length = [self length]; - int i; - NSRange result = NSMakeRange(NSNotFound, 0); - - // First let's find start of body (skip headers) - for(i = 0; i < length; i++){ - if(bytes[i] == CR){ - if(i + 1 < length){ - if(bytes[i + 1] == CR){ - result.location = i + 1; - result.length = 1; - break; - } - if(bytes[i + 1] == LF) - if(i + 3 < length) - if(bytes[i + 2] == CR && bytes[i + 3] == LF){ - result.location = i + 2; - result.length = 2; - break; - } - } - if(i == 0){ - result.location = 0; - result.length = 1; - break; - } - } - else if(bytes[i] == LF){ - if(i + 1 < length) - if(bytes[i + 1] == LF){ - result.location = i + 1; - result.length = 1; - break; - } - if(i == 0){ - result.location = 0; - result.length = 1; - break; - } - } - } - - return result; -#undef LF -#undef CR -} - -enum { - lookingForNothing, - lookingForFirstDash, - lookingForSecondDash, - lookingForFirstSpace, - lookingForSecondSpace, - lookingForCR, - lookingForLF -}; - -- (NSData *) gpgFormatFlowedFixedWithCRLF:(BOOL)useCRLF useQP:(BOOL)useQP -{ - // Replace line consisting of DASH DASH SPACE [SPACE] by DASH DASH - // WARNING Sometimes there is only 1 space! - unsigned length = [self length]; - NSData *result; - - if(length > 0){ - unsigned i = 0, newLength = 0; - const unsigned char *oldBytes; - unsigned char aByte, *newBytes; - int state = lookingForFirstDash; - - oldBytes = [self bytes]; - newBytes = NSZoneMalloc(NSDefaultMallocZone(), length); - - for(; i < length; i++){ - aByte = oldBytes[i]; - if(state == lookingForFirstDash && aByte == '-'){ - state = lookingForSecondDash; - newBytes[newLength++] = '-'; - } - else if(state == lookingForSecondDash && aByte == '-'){ - state = lookingForFirstSpace; - newBytes[newLength++] = '-'; - } - else if(state == lookingForFirstSpace && aByte == ' '){ - state = lookingForSecondSpace; - newBytes[newLength++] = ' '; - } - else if(state == lookingForSecondSpace && aByte == ' '){ - if(useCRLF) - state = lookingForCR; - else - state = lookingForLF; - newBytes[newLength++] = ' '; - } - else if(useCRLF && (state == lookingForSecondSpace || state == lookingForCR) && aByte == '\r'){ - state = lookingForLF; - newBytes[newLength++] = '\r'; - } - else if((state == lookingForSecondSpace || state == lookingForLF) && aByte == '\n'){ - if(useCRLF){ - if(state == lookingForSecondSpace) - newLength -= 2; - else - newLength -= 3; - if(useQP){ - newBytes[newLength++] = '='; - newBytes[newLength++] = '2'; - newBytes[newLength++] = '0'; - newBytes[newLength++] = '\r'; - newBytes[newLength++] = '\n'; - } - else{ - newBytes[newLength++] = '\r'; - newBytes[newLength++] = '\n'; - } - } - else{ - // Remove trailing space(s) - if(state == lookingForSecondSpace) - newLength -= 1; - else - newLength -= 2; - // If uses quoted-printable, append space encoded in quoted-printable - if(useQP){ - newBytes[newLength++] = '='; - newBytes[newLength++] = '2'; - newBytes[newLength++] = '0'; - newBytes[newLength++] = '\n'; - } - else{ - newBytes[newLength++] = '\n'; - } - } - state = lookingForFirstDash; - } - else{ - state = (aByte == '\n' ? lookingForFirstDash : lookingForNothing); - newBytes[newLength++] = aByte; - } - } - - result = [NSData dataWithBytes:newBytes length:newLength]; - NSZoneFree(NSDefaultMallocZone(), newBytes); - } - else - result = [NSData data]; - - return result; -} - -- (NSData *) gpgDeleteTrailingSpacesUseCRLF:(BOOL)useCRLF useQP:(BOOL)useQP -{ - // Delete trailing spaces, or replace the last one (on a line) by a quoted one - unsigned length = [self length]; - NSData *result; - - if(length > 0){ - unsigned i = 0, newLength = 0; - const unsigned char *oldBytes; - unsigned char aByte, *newBytes; - BOOL lookingForCR = useCRLF, lookingForLF = !useCRLF; - - oldBytes = [self bytes]; - newBytes = NSZoneMalloc(NSDefaultMallocZone(), length); - - for(; i < length; i++){ - aByte = oldBytes[i]; - if(lookingForCR && aByte == '\r'){ - lookingForCR = NO; - lookingForLF = YES; - newBytes[newLength++] = '\r'; - } - else if(lookingForLF && aByte == '\n'){ - lookingForCR = useCRLF; - lookingForLF = !useCRLF; - if(useCRLF){ - if(!useQP){ - while(newLength > 1 && newBytes[newLength - 2] == ' '){ - newLength--; - } - newBytes[newLength - 1] = '\r'; - newBytes[newLength++] = '\n'; - } - else{ - if(newLength > 1 && newBytes[newLength - 2] == ' '){ - newBytes[newLength - 2] = '='; - newBytes[newLength - 1] = '2'; - newBytes[newLength++] = '0'; - newBytes[newLength++] = '\r'; - newBytes[newLength++] = '\n'; - } - } - } - else{ - if(!useQP){ - while(newLength > 0 && newBytes[newLength - 1] == ' '){ - newLength--; - } - newBytes[newLength++] = '\n'; - } - else{ - if(newLength > 0 && newBytes[newLength - 1] == ' '){ - newBytes[newLength - 1] = '='; - newBytes[newLength++] = '2'; - newBytes[newLength++] = '0'; - newBytes[newLength++] = '\n'; - } - } - } - } - else{ - if(aByte == '\n'){ - lookingForCR = useQP; - lookingForLF = !useQP; - } - newBytes[newLength++] = aByte; - } - } - - result = [NSData dataWithBytes:newBytes length:newLength]; - NSZoneFree(NSDefaultMallocZone(), newBytes); - } - else - result = [NSData data]; - - return result; -} - -- (NSData *) gpgDecodeFlowedWithEncoding:(CFStringEncoding)encoding -{ - // Decode format=flowed data according to - // http://www.ietf.org/rfc/rfc2646.txt?number=2646 - // FIXME: Does not support any UTF16 - NSMutableData *outputData = [self mutableCopy]; - unsigned aLength = [self length]; - unsigned i = 0; - BOOL lastCharWasSP = NO; - BOOL lastCharsWereSPCR = NO; - unsigned anOffset = 0; - const char *bytes = [self bytes]; - - for(; i < aLength; i++){ - char aChar = bytes[i]; - - if(aChar == '\n' && lastCharsWereSPCR){ - [outputData replaceBytesInRange:NSMakeRange(i - anOffset - 1, 2) withBytes:NULL length:0]; // Delete CRLF - lastCharsWereSPCR = NO; - lastCharWasSP = NO; - anOffset += 2; - } - else if(aChar == '\r' && lastCharWasSP){ - lastCharsWereSPCR = YES; - lastCharWasSP = NO; - } - else if(aChar == ' '){ - lastCharsWereSPCR = NO; - lastCharWasSP = YES; - } - else{ - lastCharsWereSPCR = NO; - lastCharWasSP = NO; - } - } - - return [outputData autorelease]; -} - -@end - -@implementation NSMutableData(GPGMail) - -- (void) gpgNormalizeDataForSigning -{ - [self setData:[self gpgStandardizedEOLsToCRLF]]; // All end-of-lines must be made with - // Let's remove/replace trailing whitespace -#warning Remove trailing whitespaces! -} - -- (void) gpgNormalizeDataForVerifying -{ - // Verifying can occur only on 7-bit data (OpenPGP) -// NSAssert(![self gpgContainsNonASCIICharacter], @"### -[NSMutableData(GPGMail) gpgNormalizeDataForVerifying]: Invalid signed content with 8-bit data?!"); - [self setData:[self gpgStandardizedEOLsToCRLF]]; // All end-of-lines must be made with -} - -- (BOOL) gpgApplyQuotedPrintableIfNeeded:(BOOL)alreadyUsesQuotedPrintable -{ -#warning No longer needed? - // self is expected to be "normalized" - // If a line begins with "From " we quote-printable one of the characters, for example the "F" => "=46" - // Signing can occur only on 7-bit data (OpenPGP) - BOOL needsQuotedPrintable = NO; - - if([self gpgContainsNonASCIICharacter]){ - NSParameterAssert(alreadyUsesQuotedPrintable == NO); // How could it be possible?! Would be a bug. - needsQuotedPrintable = YES; -#warning Might need base64 instead - NSLog(@"### GPGMail: signature will be invalid. Cannot sign 8bit data in OpenPGP."); - } - else{ - NSString *aString = [[NSString alloc] initWithData:self encoding:NSASCIIStringEncoding]; - - needsQuotedPrintable = ([aString hasPrefix:@"From "] || [aString rangeOfString:@"\r\nFrom " options:NSLiteralSearch].length > 0); -#warning Might need base64 instead - [aString release]; - } - - if(needsQuotedPrintable){ -#if 0 - NSMutableString *modifiedString; - unsigned stringLength; - NSRange searchRange; - - if(!alreadyUsesQuotedPrintable) - modifiedString = [[NSMutableString alloc] initWithData:[self encodeQuotedPrintableForText:YES] encoding:NSASCIIStringEncoding]; - else - modifiedString = [[NSMutableString alloc] initWithData:self encoding:NSASCIIStringEncoding]; - stringLength = [modifiedString length]; - searchRange = NSMakeRange(0, stringLength); - - if([modifiedString hasPrefix:@"From "]){ - [modifiedString replaceCharactersInRange:NSMakeRange(0, 1) withString:@"=46"]; - stringLength += 2; - searchRange.location = 5; - searchRange.length = stringLength - 5; - } - do{ - NSRange aRange = [modifiedString rangeOfString:@"\r\nFrom " options:NSLiteralSearch range:searchRange]; - - if(aRange.length > 0){ - [modifiedString replaceCharactersInRange:aRange withString:@"\r\n=46rom "]; - stringLength += 2; - searchRange.location = aRange.location + 7; - searchRange.length = stringLength - aRange.location; - } - else - break; - }while(searchRange.length > 0); - [self setData:[modifiedString dataUsingEncoding:NSASCIIStringEncoding]]; - [modifiedString release]; -#else - // BUG in Mail.app: lines beginning with "From " are not all escaped, but I can't do it here, - // because I work only on the top-level part which wraps all subparts - // Mail in 10.1.4 (maybe earlier): bug has been corrected by Apple - NSLog(@"### GPGMail: Authentication might not work."); - needsQuotedPrintable = NO; -#endif - } - - return needsQuotedPrintable && !alreadyUsesQuotedPrintable; -} - -- (void) gpgASCIIfy -{ - // Replaces all non-ASCII chars by '_' - int i; - unsigned char *bytes = [self mutableBytes]; - - for(i = [self length] - 1; i >= 0; i--){ - if(bytes[i] > 127) - bytes[i] = '_'; - } -} - -@end diff --git a/GPGMail/Source/NSObject+GPGMail.h b/GPGMail/Source/NSObject+GPGMail.h deleted file mode 100644 index 8b66e458..00000000 --- a/GPGMail/Source/NSObject+GPGMail.h +++ /dev/null @@ -1,121 +0,0 @@ -/* - * Copyright (c) 2000-2008, Stéphane Corthésy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stéphane Corthésy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STÉPHANE CORTHÉSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STÉPHANE CORTHÉSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - -/* - * Implementation note: - * We cannot use 'self' as key in the extra ivars dictionary, because in -dealloc -gpgExtraIVars might be called when invoking original -dealloc - * and thus puts 'self' back in mapTable; by using the NSValue and changing the dealloc order, - * it corrects the problem. - */ - -/*! - * Declares static variables, proper to given clazz. - * Declares also +gpgInitExtraIvars, which initializes static ivars, and reimplements -dealloc. - * +gpgInitExtraIvars must be called in +load. - * Declares -gpgExtraIVars, which returns a NSMutableDictionary. - * Declares -gpgDealloc, which is invoked automatically on -dealloc, and removes all extra ivars. - * Do not put a semi-colon after GPG_DECLARE_EXTRA_IVARS(). - * - * @param clazz A class name. - */ -#define GPG_DECLARE_EXTRA_IVARS(clazz) \ -static NSMapTable *clazz##_extraIVars = NULL; \ -static NSLock *clazz##_extraIVarsLock = nil; \ -static IMP clazz##_dealloc = NULL; \ -\ -+ (void) gpgInitExtraIvars \ -{ \ - clazz##_extraIVars = NSCreateMapTableWithZone(NSObjectMapKeyCallBacks, NSObjectMapValueCallBacks, 100, [self zone]); \ - clazz##_extraIVarsLock = [[NSLock alloc] init]; \ - clazz##_dealloc = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(dealloc), [clazz class], @selector(gpgDealloc), [clazz class]); \ -} \ -\ -- (NSMutableDictionary *) gpgExtraIVars \ -{\ - NSMutableDictionary *aDict;\ - NSValue *aValue = [NSValue valueWithNonretainedObject:self];\ - \ - [clazz##_extraIVarsLock lock]; \ - aDict = NSMapGet(clazz##_extraIVars, aValue); \ - if(aDict == nil){ \ - aDict = [NSMutableDictionary dictionaryWithCapacity:3]; \ - NSMapInsert(clazz##_extraIVars, aValue, aDict); \ - } \ - [clazz##_extraIVarsLock unlock]; \ - \ - return aDict;\ -}\ -\ -- (void) gpgDealloc \ -{ \ - id originalSelf = self; \ - \ - ((void (*)(id, SEL))clazz##_dealloc)(self, _cmd); \ - [clazz##_extraIVarsLock lock]; \ - NSMapRemove(clazz##_extraIVars, [NSValue valueWithNonretainedObject:originalSelf]); \ - [clazz##_extraIVarsLock unlock]; \ -} - -/*! - * Convenience macro to get extra variable named 'name'. - * - * @param name A string - never nil - * @result An object, or nil. - */ -#define GPG_GET_EXTRA_IVAR(name)\ - [[self gpgExtraIVars] objectForKey:name] - -/*! - * Convenience macro to set extra variable value. - * - * @param value An object, or nil - * @param name A string - never nil - */ -#define GPG_SET_EXTRA_IVAR(value, name)\ - { id __value = (value); id __name = (name); if(__value == nil) [[self gpgExtraIVars] removeObjectForKey:__name]; else [[self gpgExtraIVars] setObject:__value forKey:__name]; } - -@interface NSObject(GPGMailExtraIVars) - -/*! - * Initializes static vars, and reimplements -dealloc. - * +gpgInitExtraIvars must be called in +load. - */ -+ (void) gpgInitExtraIvars; - -/*! - * @result NSMutableDictionary - */ -- (NSMutableDictionary *) gpgExtraIVars; - -/*! - * Invoked automatically on -dealloc; removes all extra ivars. - */ -- (void) gpgDealloc; - -@end diff --git a/GPGMail/Source/NSPreferences_GPGMail.h b/GPGMail/Source/NSPreferences_GPGMail.h deleted file mode 100644 index 7f1df922..00000000 --- a/GPGMail/Source/NSPreferences_GPGMail.h +++ /dev/null @@ -1,35 +0,0 @@ -// -// NSPreferences_GPGMail.h -// GPGMail -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - - -@interface NSPreferences(GPGMail) -@end diff --git a/GPGMail/Source/NSPreferences_GPGMail.m b/GPGMail/Source/NSPreferences_GPGMail.m deleted file mode 100644 index fe99d7e7..00000000 --- a/GPGMail/Source/NSPreferences_GPGMail.m +++ /dev/null @@ -1,59 +0,0 @@ -// -// NSPreferences_GPGMail.m -// GPGMail -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "NSPreferences_GPGMail.h" -#import "GPGMailPreferences.h" -#import "GPGMailBundle.h" -#import "GPGMailPatching.h" - -@implementation NSPreferences(GPGMail) - -static IMP NSPreferences_sharedPreferences = NULL; - -+ (void) load -{ - NSPreferences_sharedPreferences = GPGMail_ReplaceImpOfClassSelectorOfClassWithImpOfClassSelectorOfClass(@selector(sharedPreferences), [NSPreferences class], @selector(gpgSharedPreferences), [NSPreferences class]); -} - -+ gpgSharedPreferences -{ - static BOOL added = NO; - id preferences = ((id (*)(id, SEL))NSPreferences_sharedPreferences)(self, _cmd); - - if(preferences != nil && !added){ - added = YES; - if([GPGMailBundle gpgMailWorks]) - [preferences addPreferenceNamed:NSLocalizedStringFromTableInBundle(@"PGP_PREFERENCES", @"GPGMail", [NSBundle bundleForClass:[GPGMailBundle class]], "PGP preferences panel name") owner:[GPGMailPreferences sharedInstance]]; - } - - return preferences; -} - -@end diff --git a/GPGMail/Source/NSString+GPGMail.h b/GPGMail/Source/NSString+GPGMail.h deleted file mode 100644 index 3ba4dcb8..00000000 --- a/GPGMail/Source/NSString+GPGMail.h +++ /dev/null @@ -1,39 +0,0 @@ -/* NSString+GPGMail.h created by dave on Mon 29-Oct-2001 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - - -@interface NSString(GPGMail) - -+ (NSStringEncoding) gpgEncodingForMIMECharset:(NSString *)charset; -+ (NSString *) gpgMIMECharsetForEncoding:(NSStringEncoding)encoding; -- (NSString *) gpgNormalizedEmail; - -@end diff --git a/GPGMail/Source/NSString+GPGMail.m b/GPGMail/Source/NSString+GPGMail.m deleted file mode 100644 index 5eb0ac9f..00000000 --- a/GPGMail/Source/NSString+GPGMail.m +++ /dev/null @@ -1,65 +0,0 @@ -/* NSString+GPGMail.m created by dave on Mon 29-Oct-2001 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "NSString+GPGMail.h" -#import "GPGMailBundle.h" -#import - -#import - - -@implementation NSString(GPGMail) - -+ (NSStringEncoding) gpgEncodingForMIMECharset:(NSString *)charset -{ -#warning Should no longer be needed... - CFStringEncoding cfEncoding = CFStringConvertIANACharSetNameToEncoding((CFStringRef)charset); - NSStringEncoding nsEncoding; - - NSAssert1(cfEncoding != kCFStringEncodingInvalidId, @"### GPGMail: unknown charset %@", charset); - nsEncoding = CFStringConvertEncodingToNSStringEncoding(cfEncoding); - NSAssert1(cfEncoding != kCFStringEncodingInvalidId, @"### GPGMail: unable to convert CoreFoundation charset %@ to Foundation's", charset); - return nsEncoding; -} - -+ (NSString *) gpgMIMECharsetForEncoding:(NSStringEncoding)encoding -{ -#warning Should no longer be needed... - CFStringEncoding cfEncoding = CFStringConvertNSStringEncodingToEncoding(encoding); - - NSAssert1(cfEncoding != kCFStringEncodingInvalidId, @"### GPGMail: unable to convert Foundation encoding %u to CoreFoundation's", encoding); - return (NSString *)CFStringConvertEncodingToIANACharSetName(cfEncoding); -} - -- (NSString *) gpgNormalizedEmail -{ - return [[self lowercaseString] uncommentedAddress]; -} - -@end diff --git a/GPGMail/Source/PrivateHeaders/ColorBackgroundView.h b/GPGMail/Source/PrivateHeaders/ColorBackgroundView.h deleted file mode 100644 index 3438cf39..00000000 --- a/GPGMail/Source/PrivateHeaders/ColorBackgroundView.h +++ /dev/null @@ -1,98 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -@interface ColorBackgroundView : NSView -{ - long long _tag; - NSColor *_color; - NSImage *_image; - NSArray *_colors; - BOOL _isFlipped; - double _rowHeight; - double _rowOffset; -} - -- (void)dealloc; -- (BOOL)isOpaque; -@property(retain) NSColor *backgroundColor; -@property(retain) NSArray *backgroundColors; -- (void)drawRect:(struct CGRect)arg1; -- (id)colorForRow:(unsigned long long)arg1; -@property(retain) NSImage *backgroundImage; // @synthesize backgroundImage=_image; -@property(setter=setFlipped:) BOOL isFlipped; // @synthesize isFlipped=_isFlipped; -@property double rowOffset; // @synthesize rowOffset=_rowOffset; -@property double rowHeight; // @synthesize rowHeight=_rowHeight; -@property long long tag; // @synthesize tag=_tag; - -@end - -#elif defined(SNOW_LEOPARD) - -@interface ColorBackgroundView : NSView -{ - int _tag; - NSColor *_color; - NSImage *_image; - NSArray *_colors; - BOOL _isFlipped; - float _rowHeight; - float _rowOffset; -} - -- (void)dealloc; -- (BOOL)isOpaque; -- (id)backgroundColor; -- (id)backgroundColors; -- (void)setBackgroundColors:(id)arg1; -- (void)setBackgroundColor:(id)arg1; -- (void)drawRect:(struct CGRect)arg1; -- (id)colorForRow:(unsigned long)arg1; -- (id)backgroundImage; -- (void)setBackgroundImage:(id)arg1; -- (BOOL)isFlipped; -- (void)setFlipped:(BOOL)arg1; -- (float)rowOffset; -- (void)setRowOffset:(float)arg1; -- (float)rowHeight; -- (void)setRowHeight:(float)arg1; -- (long)tag; -- (void)setTag:(long)arg1; - -@end - -#else - -@interface ColorBackgroundView : NSView -{ - int _tag; - NSColor *_color; - NSImage *image; - NSArray *_colors; - BOOL _isFlipped; - float _rowHeight; - float _rowOffset; -} - -- (void)dealloc; -- (int)tag; -- (void)setTag:(int)fp8; -- (BOOL)isFlipped; -- (void)setFlipped:(BOOL)fp8; -- (BOOL)isOpaque; -- (id)backgroundColor; -- (id)backgroundColors; -- (void)setBackgroundColors:(id)fp8; -- (void)setBackgroundColor:(id)fp8; -- (id)backgroundImage; -- (void)setBackgroundImage:(id)fp8; -- (void)drawRect:(struct _NSRect)fp8; -- (id)colorForRow:(unsigned int)fp8; -- (float)rowOffset; -- (void)setRowOffset:(float)fp8; -- (float)rowHeight; -- (void)setRowHeight:(float)fp8; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/ComposeBackEnd.h b/GPGMail/Source/PrivateHeaders/ComposeBackEnd.h deleted file mode 100644 index 3d221277..00000000 --- a/GPGMail/Source/PrivateHeaders/ComposeBackEnd.h +++ /dev/null @@ -1,1185 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -@class StationeryController; -@class ParsedMessage; -@class MFUUID; -@class InvocationQueue; -@class MailboxUid; -@class EditableWebMessageDocument; -@class ParsedMessage; -@class MailAccount; - -@interface ComposeBackEnd : NSObject -{ - id _delegate; - NSPort *_initializationPort; - StationeryController *_stationeryController; - NSArray *_originalMessages; - NSArray *generatedParsedMessages; - long long backgroundResourcesLeft; - DOMNode *stationerySignatureNode; - NSMutableDictionary *_originalMessageHeaders; - NSMutableDictionary *_originalMessageBodies; - ParsedMessage *_originalMessageParsedMessage; - NSURL *_originalMessageBaseURL; - NSMutableDictionary *_cleanHeaders; - NSMutableDictionary *_extraRecipients; - NSMutableDictionary *_directoriesByAttachment; - NSUndoManager *_undoManager; - MFUUID *_documentID; - NSMutableSet *_knownMessageIds; - InvocationQueue *_saveQueue; - BOOL _saveThreadCancelFlag; - NSString *_saveThreadMessageId; - MailboxUid *_saveThreadMailboxUid; - struct { - unsigned int type:4; - unsigned int sendFormat:2; - unsigned int contentIsLink:1; - unsigned int hadChangesBeforeSave:1; - unsigned int hasChanges:1; - unsigned int showAllHeaders:1; - unsigned int includeHeaders:1; - unsigned int isUndeliverable:1; - unsigned int isDeliveringMessage:1; - unsigned int sendWindowsFriendlyAttachments:2; - unsigned int contentsWasEditedByUser:1; - unsigned int delegateRespondsToDidChange:1; - unsigned int delegateRespondsToSenderDidChange:1; - unsigned int delegateRespondsToDidAppendMessage:1; - unsigned int delegateRespondsToDidSaveMessage:1; - unsigned int delegateRespondsToDidBeginLoad:1; - unsigned int delegateRespondsToDidEndLoad:1; - unsigned int delegateRespondsToWillCreateMessageWithHeaders:1; - unsigned int delegateRespondsToShouldSaveMessage:1; - unsigned int delegateRespondsToShouldDeliverMessage:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForEncryptionError:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForError:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForAttachmentError:1; - unsigned int signIfPossible:1; - unsigned int encryptIfPossible:1; - unsigned int knowsCanSign:1; - unsigned int canSign:1; - unsigned int shouldDownloadRemoteAttachments:1; - unsigned int overrideRemoteAttachmentsPreference:1; - unsigned int editorHasInitialized:1; - unsigned int isEditing:1; - unsigned int isSendFormatInitialized:1; - unsigned int isAppleScriptMessage:1; - unsigned int preferredEncoding; - unsigned int encodingHint; - } _flags; - NSString *_contentForAddressBookUpdate; - NSString *_vcardPathForAddressBookUpdate; - BOOL _willCloseEditor; - BOOL _isSettingSenderFromGetter; - EditableWebMessageDocument *_document; - NSMutableDictionary *_contentsByMessage; - ParsedMessage *_initialParsedMessage; - ParsedMessage *_restoredParsedMessage; - NSMutableDictionary *_attachmentMimeBodiesByURL; - NSNumber *_uniqueID; -} - -+ (void)initialize; -+ (id)supportedMailboxUidTypes; -+ (id)keyPathsForValuesAffectingAccount; -- (void)dealloc; -- (id)initCreatingDocumentEditor:(BOOL)arg1; -- (id)init; -- (void)setStateFromBackEnd:(id)arg1; -- (void)setGeneratedParsedMessages:(id)arg1; -- (void)editorHasInitialized:(id)arg1; -- (void)setWillCloseEditor:(BOOL)arg1; -- (id)description; -- (id)delegate; -- (void)setDelegate:(id)arg1; -- (BOOL)hasStationery; -- (id)stationeryController; -- (BOOL)hasChanges; -- (void)setHasChanges:(BOOL)arg1; -- (id)undoManager; -- (void)setUndoManager:(id)arg1; -- (void)setType:(int)arg1; -- (int)type; -- (BOOL)isRedirecting; -- (void)setShouldDownloadRemoteAttachments:(BOOL)arg1; -- (void)setIsUndeliverable:(BOOL)arg1; -- (BOOL)isUndeliverable; -- (BOOL)sendWindowsFriendlyAttachments; -- (void)setSendWindowsFriendlyAttachments:(BOOL)arg1; -- (id)originalMessage; -- (id)originalMessageHeaders; -- (id)originalMessageBody; -- (id)_knownMessageIds; -- (void)setOriginalMessage:(id)arg1; -- (void)setOriginalMessages:(id)arg1; -- (id)attachments; -- (id)directoryForAttachment:(id)arg1; -- (BOOL)preserveAddedArchiveBody; -@property(retain) ParsedMessage *initialParsedMessage; -- (id)restoredParsedMessage; -- (void)setRestoredParsedMessage:(id)arg1; -@property(readonly) EditableWebMessageDocument *document; -- (void)generateParsedMessageFromOriginalMessages; -- (void)configureLoadingOfRemoteAttachments; -- (void)setTypeAndConfigureLoadingOfRemoteAttachments:(int)arg1; -- (void)setupContentsForView:(id)arg1; -@property(readonly) BOOL defaultFormatIsRich; -- (void)_continueToSetupContentsForView:(id)arg1 withParsedMessages:(id)arg2; -- (BOOL)restoredMessageIsRich; -- (id)_parsedMessageForMessage:(id)arg1; -- (id)mimeBodyForAttachmentWithURL:(id)arg1; -- (unsigned int)_encodingHint; -- (id)_makeMessageWithContents:(id)arg1 isDraft:(BOOL)arg2 shouldSign:(BOOL)arg3 shouldEncrypt:(BOOL)arg4 shouldSkipSignature:(BOOL)arg5 shouldBePlainText:(BOOL)arg6; -- (id)draftMessage; -- (id)plainTextMessage; -- (id)message; -@property(retain) MailAccount *account; -- (void)setDeliveryAccount:(id)arg1; -- (id)deliveryAccount; -@property(retain) NSString *sender; -- (id)cleanHeaders; -- (void)setCleanHeaders:(id)arg1; -@property(retain) NSString *subject; -- (id)messageID; -- (void)setShowAllHeaders:(BOOL)arg1; -@property BOOL includeHeaders; -@property int sendFormat; -@property BOOL contentIsLink; -- (BOOL)okToAddSignatureAutomatically; -- (BOOL)okToLetUserAddSignature; -- (id)signatureId; -- (id)signature; -- (void)setSignature:(id)arg1; -- (void)setStationerySignatureNode:(id)arg1; -- (void)getSignatureElement:(id *)arg1 parent:(id *)arg2 nextSibling:(id *)arg3; -- (id)htmlStringForSignature:(id)arg1; -- (void)setMessagePriority:(long long)arg1; -- (long long)displayableMessagePriority; -- (void)addHeaders:(id)arg1; -- (id)addressListForHeader:(id)arg1; -- (void)setAddressList:(id)arg1 forHeader:(id)arg2; -- (void)insertAddress:(id)arg1 forHeader:(id)arg2 atIndex:(unsigned long long)arg3; -- (void)removeAddressForHeader:(id)arg1 atIndex:(unsigned long long)arg2; -- (BOOL)isAddressHeaderKey:(id)arg1; -- (BOOL)deliverMessage; -- (BOOL)isDeliveringMessage; -- (void)_synchronouslyAppendMessageToOutboxWithContents:(id)arg1; -- (void)_backgroundAppendEnded:(id)arg1; -- (void)_backgroundSaveEnded:(id)arg1; -- (void)_backgroundSaveDidChangeMessageId:(id)arg1; -- (id)saveTaskName; -- (BOOL)saveMessage; -- (id)defaultMessageStore; -- (void)removeLastDraft; -- (BOOL)isEditingMessage:(id)arg1; -- (void)setSignIfPossible:(BOOL)arg1; -- (void)setEncryptIfPossible:(BOOL)arg1; -- (id)allRecipients; -- (id)recipientsThatHaveNoKeyForEncryption; -- (unsigned int)preferredEncoding; -- (void)setPreferredEncoding:(unsigned int)arg1; -- (BOOL)canSign; -- (BOOL)canEncryptForAllRecipients; -- (BOOL)isValidSaveDestination:(id)arg1; -- (void)_configureLastDraftInformationFromHeaders:(id)arg1 overwrite:(BOOL)arg2; -- (void)_configureLastDraftInformationFromHeaders:(id)arg1; -- (void)updateDocumentReference:(id)arg1; -- (void)updateSaveDestinationAccount:(id)arg1 mailbox:(id)arg2; -- (void)finishPreparingContentWithEditorSettings:(id)arg1; -- (void)notifyDelegateMonitor:(id)arg1 alreadyDone:(char *)arg2; -- (void)fetchAndCacheMessages; -- (void)generateMessageParsedMessages; -- (BOOL)hasContents; -- (BOOL)containsRichText; -- (id)outgoingMessageUsingWriter:(id)arg1 contents:(id)arg2 headers:(id)arg3 isDraft:(BOOL)arg4 shouldBePlainText:(BOOL)arg5; -- (id)htmlStringFromRange:(id)arg1 htmlDocument:(id)arg2 removeCustomAttributes:(BOOL)arg3 convertObjectsToImages:(BOOL)arg4 convertEditableElements:(BOOL)arg5; -- (id)_createPlainTextRepresentationIncludeAttachments:(BOOL)arg1; -- (void)addBaseURLTagToNode:(id)arg1; -- (void)recursivelyURLifyNode:(id)arg1; -- (void)getContentsForMessage:(id)arg1 body:(id)arg2; -- (id)originalMessageParsedMessage; -- (void)setOriginalMessageParsedMessage:(id)arg1; -- (id)htmlDocumentForSave; -- (id)makeCopyOfContentsForDraft:(BOOL)arg1 shouldBePlainText:(BOOL)arg2; -- (BOOL)attachmentCanBeSentInline:(id)arg1; -- (BOOL)containsAttachments; -- (BOOL)containsAttachmentsThatCouldConfuseWindowsClients; -- (void)_ccOrBccMyselfGivenOriginalMessage:(id)arg1 uniquedRecipientsTable:(id)arg2; -- (void)_setupDefaultRecipientsFirstTime:(BOOL)arg1; -- (id)_allRecipients; -- (void)saveRecipients; -- (id)_fallbackReplyAddress; -- (id)replyAddressForMessage:(id)arg1; -- (id)mailboxUidCreateIfNeeded:(BOOL)arg1; -- (int)convertSaveOrSendResultFromResultCodeT:(int)arg1; -@property(readonly) BOOL isSavingMessage; -- (BOOL)isContentSignificant; -@property BOOL saveThreadCancelFlag; // @synthesize saveThreadCancelFlag=_saveThreadCancelFlag; -- (BOOL)_saveThreadShouldCancel; -- (void)_saveThreadUpdateAccount:(id)arg1 mailbox:(id)arg2; -- (void)_saveThreadSetMessageId:(id)arg1 mailboxUid:(id)arg2 overwrite:(id)arg3; -- (void)_saveThreadRemoveLastSave; -- (void)_saveThreadSaveContents:(id)arg1; -- (void)_markForOverwrite:(id)arg1; -- (BOOL)isExchangeNote; -@property(retain) MailboxUid *saveThreadMailboxUid; // @synthesize saveThreadMailboxUid=_saveThreadMailboxUid; -@property(copy) NSString *saveThreadMessageId; // @synthesize saveThreadMessageId=_saveThreadMessageId; -@property(retain) MFUUID *documentID; // @synthesize documentID=_documentID; -@property(retain) NSURL *originalMessageBaseURL; // @synthesize originalMessageBaseURL=_originalMessageBaseURL; - -@end - -@interface ComposeBackEnd (ScriptingSupport) -+ (id)composeBackEndForUniqueID:(id)arg1; -+ (void)registerComposeBackEnd:(id)arg1; -+ (void)unregisterComposeBackEnd:(id)arg1; -+ (id)_messageEditorForComposeBackEnd:(id)arg1 window:(id *)arg2; -- (id)uniqueID; -- (BOOL)isVisible; -- (void)setIsVisible:(BOOL)arg1; -- (id)appleScriptSender; -- (void)setAppleScriptSender:(id)arg1; -- (id)appleScriptSubject; -- (void)setAppleScriptSubject:(id)arg1; -- (id)content; -- (void)setContent:(id)arg1; -- (id)messageSignature; -- (void)setMessageSignature:(id)arg1; -- (void)_addRecipientsForKey:(id)arg1 toArray:(id)arg2; -- (id)recipients; -- (id)toRecipients; -- (id)ccRecipients; -- (id)bccRecipients; -- (void)insertRecipient:(id)arg1 atIndex:(unsigned long long)arg2 inHeaderWithKey:(id)arg3; -- (void)insertInToRecipients:(id)arg1 atIndex:(unsigned long long)arg2; -- (void)insertInToRecipients:(id)arg1; -- (void)insertInCcRecipients:(id)arg1 atIndex:(unsigned long long)arg2; -- (void)insertInCcRecipients:(id)arg1; -- (void)insertInBccRecipients:(id)arg1 atIndex:(unsigned long long)arg2; -- (void)insertInBccRecipients:(id)arg1; -- (void)removeFromToRecipientsAtIndex:(unsigned long long)arg1; -- (void)removeFromCcRecipientsAtIndex:(unsigned long long)arg1; -- (void)removeFromBccRecipientsAtIndex:(unsigned long long)arg1; -- (void)replaceFormattedAddress:(id)arg1 withAddress:(id)arg2 forKey:(id)arg3; -- (id)handleSaveMessageCommand:(id)arg1; -- (id)handleSendMessageCommand:(id)arg1; -- (id)handleCloseScriptCommand:(id)arg1; -- (id)objectSpecifier; -- (void)setHtmlContent:(id)arg1; -- (void)setVcardPath:(id)arg1; -@end - -@interface ComposeBackEnd (ScriptingSupportInternal) -+ (id)composeBackEndsByUniqueID; -- (void)createUniqueID; -@end - -@interface ComposeBackEnd_Scripting : ComposeBackEnd -{ - NSTextStorage *_textStorage; -} - -- (void)dealloc; -- (void)setTextStorage:(id)arg1; -- (id)textStorage; -- (id)content; -- (void)setContent:(id)arg1; -- (void)_pushTextStorage; -- (void)_convertTextStorage; -- (void)_coalescedConvertTextStorage; - -@end - -#elif defined(SNOW_LEOPARD) - -@class StationeryController; -@class DOMNode; -@class ParsedMessage; -@class MFUUID; -@class InvocationQueue; -@class MailboxUid; -@class EditableWebMessageDocument; - -@interface ComposeBackEnd : NSObject -{ - id _delegate; - NSPort *_initializationPort; - StationeryController *_stationeryController; - NSArray *_originalMessages; - NSArray *generatedParsedMessages; - int backgroundResourcesLeft; - DOMNode *stationerySignatureNode; - NSMutableDictionary *_originalMessageHeaders; - NSMutableDictionary *_originalMessageBodies; - ParsedMessage *_originalMessageParsedMessage; - NSURL *_originalMessageBaseURL; - NSMutableDictionary *_cleanHeaders; - NSMutableDictionary *_extraRecipients; - NSMutableDictionary *_directoriesByAttachment; - NSUndoManager *_undoManager; - MFUUID *_documentID; - NSMutableSet *_knownMessageIds; - InvocationQueue *_saveQueue; - BOOL _saveThreadCancelFlag; - NSString *_saveThreadMessageId; - MailboxUid *_saveThreadMailboxUid; - struct { - unsigned int type:4; - unsigned int sendFormat:2; - unsigned int contentIsLink:1; - unsigned int hadChangesBeforeSave:1; - unsigned int hasChanges:1; - unsigned int showAllHeaders:1; - unsigned int includeHeaders:1; - unsigned int isUndeliverable:1; - unsigned int isDeliveringMessage:1; - unsigned int sendWindowsFriendlyAttachments:2; - unsigned int contentsWasEditedByUser:1; - unsigned int delegateRespondsToDidChange:1; - unsigned int delegateRespondsToSenderDidChange:1; - unsigned int delegateRespondsToDidAppendMessage:1; - unsigned int delegateRespondsToDidSaveMessage:1; - unsigned int delegateRespondsToDidBeginLoad:1; - unsigned int delegateRespondsToDidEndLoad:1; - unsigned int delegateRespondsToWillCreateMessageWithHeaders:1; - unsigned int delegateRespondsToShouldSaveMessage:1; - unsigned int delegateRespondsToShouldDeliverMessage:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForEncryptionError:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForError:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForAttachmentError:1; - unsigned int signIfPossible:1; - unsigned int encryptIfPossible:1; - unsigned int knowsCanSign:1; - unsigned int canSign:1; - unsigned int shouldDownloadRemoteAttachments:1; - unsigned int overrideRemoteAttachmentsPreference:1; - unsigned int editorHasInitialized:1; - unsigned int isEditing:1; - unsigned int isSendFormatInitialized:1; - unsigned int isAppleScriptMessage:1; - unsigned int preferredEncoding; - unsigned int encodingHint; - } _flags; - NSString *_contentForAddressBookUpdate; - NSString *_vcardPathForAddressBookUpdate; - BOOL _willCloseEditor; - BOOL _isSettingSenderFromGetter; - EditableWebMessageDocument *_document; - NSMutableDictionary *_contentsByMessage; - ParsedMessage *_initialParsedMessage; - ParsedMessage *_restoredParsedMessage; - NSMutableDictionary *_attachmentMimeBodiesByURL; - NSNumber *_uniqueID; -} - -+ (void)initialize; -+ (id)supportedMailboxUidTypes; -+ (id)keyPathsForValuesAffectingAccount; -- (void)dealloc; -- (id)initCreatingDocumentEditor:(BOOL)arg1; -- (id)init; -- (void)setStateFromBackEnd:(id)arg1; -- (void)setGeneratedParsedMessages:(id)arg1; -- (void)editorHasInitialized:(id)arg1; -- (void)setWillCloseEditor:(BOOL)arg1; -- (id)description; -- (id)delegate; -- (void)setDelegate:(id)arg1; -- (BOOL)hasStationery; -- (id)stationeryController; -- (BOOL)hasChanges; -- (void)setHasChanges:(BOOL)arg1; -- (id)undoManager; -- (void)setUndoManager:(id)arg1; -- (void)setType:(int)arg1; -- (int)type; -- (BOOL)isRedirecting; -- (void)setShouldDownloadRemoteAttachments:(BOOL)arg1; -- (void)setIsUndeliverable:(BOOL)arg1; -- (BOOL)isUndeliverable; -- (BOOL)sendWindowsFriendlyAttachments; -- (void)setSendWindowsFriendlyAttachments:(BOOL)arg1; -- (id)originalMessage; -- (id)originalMessageHeaders; -- (id)originalMessageBody; -- (id)_knownMessageIds; -- (void)setOriginalMessage:(id)arg1; -- (void)setOriginalMessages:(id)arg1; -- (id)attachments; -- (id)directoryForAttachment:(id)arg1; -- (BOOL)preserveAddedArchiveBody; -- (id)initialParsedMessage; -- (void)setInitialParsedMessage:(id)arg1; -- (id)restoredParsedMessage; -- (void)setRestoredParsedMessage:(id)arg1; -- (id)document; -- (void)generateParsedMessageFromOriginalMessages; -- (void)configureLoadingOfRemoteAttachments; -- (void)setTypeAndConfigureLoadingOfRemoteAttachments:(int)arg1; -- (void)setupContentsForView:(id)arg1; -- (BOOL)defaultFormatIsRich; -- (void)_continueToSetupContentsForView:(id)arg1 withParsedMessages:(id)arg2; -- (BOOL)restoredMessageIsRich; -- (id)_parsedMessageForMessage:(id)arg1; -- (id)mimeBodyForAttachmentWithURL:(id)arg1; -- (unsigned long)_encodingHint; -- (id)_makeMessageWithContents:(id)arg1 isDraft:(BOOL)arg2 shouldSign:(BOOL)arg3 shouldEncrypt:(BOOL)arg4 shouldSkipSignature:(BOOL)arg5 shouldBePlainText:(BOOL)arg6; -- (id)draftMessage; -- (id)plainTextMessage; -- (id)message; -- (id)account; -- (void)setAccount:(id)arg1; -- (void)setDeliveryAccount:(id)arg1; -- (id)deliveryAccount; -- (id)sender; -- (id)cleanHeaders; -- (void)setCleanHeaders:(id)arg1; -- (void)setSender:(id)arg1; -- (id)subject; -- (void)setSubject:(id)arg1; -- (id)messageID; -- (void)setShowAllHeaders:(BOOL)arg1; -- (BOOL)includeHeaders; -- (void)setIncludeHeaders:(BOOL)arg1; -- (void)setSendFormat:(int)arg1; -- (int)sendFormat; -- (void)setContentIsLink:(BOOL)arg1; -- (BOOL)contentIsLink; -- (BOOL)okToAddSignatureAutomatically; -- (BOOL)okToLetUserAddSignature; -- (id)signatureId; -- (id)signature; -- (void)setSignature:(id)arg1; -- (void)setStationerySignatureNode:(id)arg1; -- (void)getSignatureElement:(id *)arg1 parent:(id *)arg2 nextSibling:(id *)arg3; -- (id)htmlStringForSignature:(id)arg1; -- (void)setMessagePriority:(long)arg1; -- (long)displayableMessagePriority; -- (void)addHeaders:(id)arg1; -- (id)addressListForHeader:(id)arg1; -- (void)setAddressList:(id)arg1 forHeader:(id)arg2; -- (void)insertAddress:(id)arg1 forHeader:(id)arg2 atIndex:(unsigned long)arg3; -- (void)removeAddressForHeader:(id)arg1 atIndex:(unsigned long)arg2; -- (BOOL)isAddressHeaderKey:(id)arg1; -- (BOOL)deliverMessage; -- (BOOL)isDeliveringMessage; -- (void)_synchronouslyAppendMessageToOutboxWithContents:(id)arg1; -- (void)_backgroundAppendEnded:(id)arg1; -- (void)_backgroundSaveEnded:(id)arg1; -- (void)_backgroundSaveDidChangeMessageId:(id)arg1; -- (id)saveTaskName; -- (BOOL)saveMessage; -- (id)defaultMessageStore; -- (void)removeLastDraft; -- (BOOL)isEditingMessage:(id)arg1; -- (void)setSignIfPossible:(BOOL)arg1; -- (void)setEncryptIfPossible:(BOOL)arg1; -- (id)allRecipients; -- (id)recipientsThatHaveNoKeyForEncryption; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)arg1; -- (BOOL)canSign; -- (BOOL)canEncryptForAllRecipients; -- (BOOL)isValidSaveDestination:(id)arg1; -- (void)_configureLastDraftInformationFromHeaders:(id)arg1 overwrite:(BOOL)arg2; -- (void)_configureLastDraftInformationFromHeaders:(id)arg1; -- (void)updateDocumentReference:(id)arg1; -- (void)updateSaveDestinationAccount:(id)arg1 mailbox:(id)arg2; -- (void)finishPreparingContentWithEditorSettings:(id)arg1; -- (void)notifyDelegateMonitor:(id)arg1 alreadyDone:(char *)arg2; -- (void)fetchAndCacheMessages; -- (void)generateMessageParsedMessages; -- (BOOL)hasContents; -- (BOOL)containsRichText; -- (id)outgoingMessageUsingWriter:(id)arg1 contents:(id)arg2 headers:(id)arg3 isDraft:(BOOL)arg4 shouldBePlainText:(BOOL)arg5; -- (id)htmlStringFromRange:(id)arg1 htmlDocument:(id)arg2 removeCustomAttributes:(BOOL)arg3 convertObjectsToImages:(BOOL)arg4 convertEditableElements:(BOOL)arg5; -- (id)_createPlainTextRepresentationIncludeAttachments:(BOOL)arg1; -- (void)addBaseURLTagToNode:(id)arg1; -- (void)recursivelyURLifyNode:(id)arg1; -- (void)getContentsForMessage:(id)arg1 body:(id)arg2; -- (id)originalMessageParsedMessage; -- (void)setOriginalMessageParsedMessage:(id)arg1; -- (id)htmlDocumentForSave; -- (id)makeCopyOfContentsForDraft:(BOOL)arg1 shouldBePlainText:(BOOL)arg2; -- (BOOL)attachmentCanBeSentInline:(id)arg1; -- (BOOL)containsAttachments; -- (BOOL)containsAttachmentsThatCouldConfuseWindowsClients; -- (void)_ccOrBccMyselfGivenOriginalMessage:(id)arg1 uniquedRecipientsTable:(id)arg2; -- (void)_setupDefaultRecipientsFirstTime:(BOOL)arg1; -- (id)_allRecipients; -- (void)saveRecipients; -- (id)_fallbackReplyAddress; -- (id)replyAddressForMessage:(id)arg1; -- (id)mailboxUidCreateIfNeeded:(BOOL)arg1; -- (int)convertSaveOrSendResultFromResultCodeT:(int)arg1; -- (BOOL)isSavingMessage; -- (BOOL)isContentSignificant; -- (BOOL)saveThreadCancelFlag; -- (void)setSaveThreadCancelFlag:(BOOL)arg1; -- (BOOL)_saveThreadShouldCancel; -- (void)_saveThreadUpdateAccount:(id)arg1 mailbox:(id)arg2; -- (void)_saveThreadSetMessageId:(id)arg1 mailboxUid:(id)arg2 overwrite:(id)arg3; -- (void)_saveThreadRemoveLastSave; -- (void)_saveThreadSaveContents:(id)arg1; -- (void)_markForOverwrite:(id)arg1; -- (BOOL)isExchangeNote; -- (id)saveThreadMailboxUid; -- (void)setSaveThreadMailboxUid:(id)arg1; -- (id)saveThreadMessageId; -- (void)setSaveThreadMessageId:(id)arg1; -- (id)documentID; -- (void)setDocumentID:(id)arg1; -- (id)originalMessageBaseURL; -- (void)setOriginalMessageBaseURL:(id)arg1; - -@end - -@interface ComposeBackEnd_Scripting : ComposeBackEnd -{ - NSTextStorage *_textStorage; -} - -- (void)dealloc; -- (void)setTextStorage:(id)arg1; -- (id)textStorage; -- (id)content; -- (void)setContent:(id)arg1; -- (void)_pushTextStorage; -- (void)_convertTextStorage; -- (void)_coalescedConvertTextStorage; - -@end - -@interface ComposeBackEnd (ScriptingSupport) -+ (id)composeBackEndForUniqueID:(id)arg1; -+ (void)registerComposeBackEnd:(id)arg1; -+ (void)unregisterComposeBackEnd:(id)arg1; -+ (id)_messageEditorForComposeBackEnd:(id)arg1 window:(id *)arg2; -- (id)uniqueID; -- (BOOL)isVisible; -- (void)setIsVisible:(BOOL)arg1; -- (id)appleScriptSender; -- (void)setAppleScriptSender:(id)arg1; -- (id)appleScriptSubject; -- (void)setAppleScriptSubject:(id)arg1; -- (id)content; -- (void)setContent:(id)arg1; -- (id)messageSignature; -- (void)setMessageSignature:(id)arg1; -- (void)_addRecipientsForKey:(id)arg1 toArray:(id)arg2; -- (id)recipients; -- (id)toRecipients; -- (id)ccRecipients; -- (id)bccRecipients; -- (void)insertRecipient:(id)arg1 atIndex:(unsigned long)arg2 inHeaderWithKey:(id)arg3; -- (void)insertInToRecipients:(id)arg1 atIndex:(unsigned long)arg2; -- (void)insertInToRecipients:(id)arg1; -- (void)insertInCcRecipients:(id)arg1 atIndex:(unsigned long)arg2; -- (void)insertInCcRecipients:(id)arg1; -- (void)insertInBccRecipients:(id)arg1 atIndex:(unsigned long)arg2; -- (void)insertInBccRecipients:(id)arg1; -- (void)removeFromToRecipientsAtIndex:(unsigned long)arg1; -- (void)removeFromCcRecipientsAtIndex:(unsigned long)arg1; -- (void)removeFromBccRecipientsAtIndex:(unsigned long)arg1; -- (void)replaceFormattedAddress:(id)arg1 withAddress:(id)arg2 forKey:(id)arg3; -- (id)handleSaveMessageCommand:(id)arg1; -- (id)handleSendMessageCommand:(id)arg1; -- (id)handleCloseScriptCommand:(id)arg1; -- (id)objectSpecifier; -- (void)setHtmlContent:(id)arg1; -- (void)setVcardPath:(id)arg1; -@end - -@interface ComposeBackEnd (ScriptingSupportInternal) -+ (id)composeBackEndsByUniqueID; -- (void)createUniqueID; -@end - -#elif defined(LEOPARD) - -@class StationeryController; -@class DOMNode; -@class MFUUID; -@class InvocationQueue; -@class MailboxUid; -@class EditableWebMessageDocument; -@class WebArchive; -@class MessageTextStorage; - -@interface ComposeBackEnd : NSObject -{ - id _delegate; - StationeryController *stationeryController; - NSArray *_originalMessages; - NSArray *generatedWebArchives; - int backgroundResourcesLeft; - DOMNode *stationerySignatureNode; - NSMutableDictionary *_originalMessageHeaders; - NSMutableDictionary *_originalMessageBodies; - WebArchive *_originalMessageWebArchive; - NSString *_originalMessageBaseURL; - NSMutableDictionary *_cleanHeaders; - NSMutableDictionary *_extraRecipients; - NSMutableDictionary *_directoriesByAttachment; - NSUndoManager *_undoManager; - MFUUID *_documentID; - NSMutableSet *_knownMessageIds; - InvocationQueue *_saveQueue; - BOOL _saveThreadCancelFlag; - NSString *_saveThreadMessageId; - MailboxUid *_saveThreadMailboxUid; - struct { - unsigned int type:4; - unsigned int sendFormat:2; - unsigned int contentIsLink:1; - unsigned int hadChangesBeforeSave:1; - unsigned int hasChanges:1; - unsigned int showAllHeaders:1; - unsigned int includeHeaders:1; - unsigned int isUndeliverable:1; - unsigned int isDeliveringMessage:1; - unsigned int sendWindowsFriendlyAttachments:2; - unsigned int contentsWasEditedByUser:1; - unsigned int delegateRespondsToDidChange:1; - unsigned int delegateRespondsToSenderDidChange:1; - unsigned int delegateRespondsToDidAppendMessage:1; - unsigned int delegateRespondsToDidSaveMessage:1; - unsigned int delegateRespondsToDidBeginLoad:1; - unsigned int delegateRespondsToDidEndLoad:1; - unsigned int delegateRespondsToWillCreateMessageWithHeaders:1; - unsigned int delegateRespondsToShouldSaveMessage:1; - unsigned int delegateRespondsToShouldDeliverMessage:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForEncryptionError:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForError:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForAttachmentError:1; - unsigned int signIfPossible:1; - unsigned int encryptIfPossible:1; - unsigned int knowsCanSign:1; - unsigned int canSign:1; - unsigned int shouldDownloadRemoteAttachments:1; - unsigned int overrideRemoteAttachmentsPreference:1; - unsigned int editorHasInitialized:1; - unsigned int isEditing:1; - unsigned int isSendFormatInitialized:1; - unsigned int preferredEncoding; - unsigned int encodingHint; - } _flags; - NSString *_contentForAddressBookUpdate; - NSString *_vcardPathForAddressBookUpdate; - BOOL _willCloseEditor; - EditableWebMessageDocument *_document; - NSMutableDictionary *_contentsByMessage; - NSMutableDictionary *_documentsByMessage; - WebArchive *_initialWebArchive; - WebArchive *_restoredWebArchive; - NSMutableDictionary *_attachmentMimeBodiesByURL; -} - -+ (id)supportedMailboxUidTypes; -- (void)dealloc; -- (id)init; -- (void)setStateFromBackEnd:(id)fp8; -- (void)setGeneratedWebArchives:(id)fp8; -- (void)editorHasInitialized:(id)fp8; -- (void)setWillCloseEditor:(BOOL)fp8; -- (id)description; -- (id)delegate; -- (void)setDelegate:(id)fp8; -- (BOOL)hasStationery; -- (id)stationeryController; -- (BOOL)hasChanges; -- (void)setHasChanges:(BOOL)fp8; -- (id)undoManager; -- (void)setUndoManager:(id)fp8; -- (void)setType:(int)fp8; -- (int)type; -- (void)setShouldDownloadRemoteAttachments:(BOOL)fp8; -- (void)setIsUndeliverable:(BOOL)fp8; -- (BOOL)isUndeliverable; -- (BOOL)sendWindowsFriendlyAttachments; -- (void)setSendWindowsFriendlyAttachments:(BOOL)fp8; -- (id)originalMessage; -- (id)originalMessageHeaders; -- (id)originalMessageBody; -- (id)_knownMessageIds; -- (void)setOriginalMessage:(id)fp8; -- (void)setOriginalMessages:(id)fp8; -- (id)attachments; -- (id)directoryForAttachment:(id)fp8; -- (BOOL)preserveAddedArchiveBody; -- (id)initialWebArchive; -- (void)setInitialWebArchive:(id)fp8; -- (id)restoredWebArchive; -- (void)setRestoredWebArchive:(id)fp8; -- (id)document; -- (void)generateWebArchiveFromOriginalMessages; -- (void)configureLoadingOfRemoteAttachments; -- (void)setupContentsForView:(id)fp8; -- (BOOL)defaultFormatIsRich; -- (void)_continueToSetupContentsForView:(id)fp8 withArchives:(id)fp12; -- (id)mimeBodyForAttachmentWithURL:(id)fp8; -- (unsigned long)_encodingHint; -- (id)_makeMessageWithContents:(id)fp8 isDraft:(BOOL)fp12 shouldSign:(BOOL)fp16 shouldEncrypt:(BOOL)fp20 shouldSkipSignature:(BOOL)fp24; -- (id)draftMessage; -- (id)message; -- (id)account; -- (void)setAccount:(id)fp8; -- (void)setDeliveryAccount:(id)fp8; -- (id)deliveryAccount; -- (id)sender; -- (id)cleanHeaders; -- (void)setCleanHeaders:(id)fp8; -- (void)setSender:(id)fp8; -- (id)subject; -- (void)setSubject:(id)fp8; -- (id)messageID; -- (void)setShowAllHeaders:(BOOL)fp8; -- (BOOL)includeHeaders; -- (void)setIncludeHeaders:(BOOL)fp8; -- (void)setSendFormat:(int)fp8; -- (int)sendFormat; -- (void)setContentIsLink:(BOOL)fp8; -- (BOOL)contentIsLink; -- (BOOL)okToAddSignatureAutomatically; -- (BOOL)okToLetUserAddSignature; -- (id)signatureId; -- (id)signature; -- (void)setSignature:(id)fp8; -- (void)setStationerySignatureNode:(id)fp8; -- (void)getSignatureElement:(id *)fp8 parent:(id *)fp12 nextSibling:(id *)fp16; -- (id)webArchiveForSignature:(id)fp8; -- (void)setMessagePriority:(int)fp8; -- (int)displayableMessagePriority; -- (void)addHeaders:(id)fp8; -- (id)addressListForHeader:(id)fp8; -- (void)setAddressList:(id)fp8 forHeader:(id)fp12; -- (void)insertAddress:(id)fp8 forHeader:(id)fp12 atIndex:(unsigned int)fp16; -- (void)removeAddressForHeader:(id)fp8 atIndex:(unsigned int)fp12; -- (BOOL)isAddressHeaderKey:(id)fp8; -- (BOOL)deliverMessage; -- (BOOL)isDeliveringMessage; -- (void)_synchronouslyAppendMessageToOutboxWithContents:(id)fp8; -- (void)_backgroundAppendEnded:(id)fp8; -- (void)_backgroundSaveEnded:(id)fp8; -- (void)_backgroundSaveDidChangeMessageId:(id)fp8; -- (id)saveTaskName; -- (BOOL)saveMessage; -- (id)defaultMessageStore; -- (void)removeLastDraft; -- (BOOL)isEditingMessage:(id)fp8; -- (void)setSignIfPossible:(BOOL)fp8; -- (void)setEncryptIfPossible:(BOOL)fp8; -- (id)allRecipients; -- (id)recipientsThatHaveNoKeyForEncryption; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)fp8; -- (BOOL)canSign; -- (BOOL)canEncryptForAllRecipients; -- (BOOL)isValidSaveDestination:(id)fp8; -- (void)_configureLastDraftInformationFromHeaders:(id)fp8 overwrite:(BOOL)fp12; -- (void)_configureLastDraftInformationFromHeaders:(id)fp8; -- (void)updateDocumentReference:(id)fp8; -- (void)updateSaveDestinationAccount:(id)fp8 mailbox:(id)fp12; -- (void)finishPreparingContentWithEditorSettings:(id)fp8; -- (void)notifyDelegateMonitor:(id)fp8 alreadyDone:(char *)fp12; -- (void)fetchAndCacheMessages; -- (void)generateMessageWebArchives; -- (BOOL)hasContents; -- (BOOL)containsRichText; -- (id)outgoingMessageUsingWriter:(id)fp8 contents:(id)fp12 headers:(id)fp16 isDraft:(BOOL)fp20; -- (id)htmlStringFromRange:(id)fp8 htmlDocument:(id)fp12 removeCustomAttributes:(BOOL)fp16 convertObjectsToImages:(BOOL)fp20 convertEditableElements:(BOOL)fp24; -- (id)_createPlainTextRepresentationIncludeAttachments:(BOOL)fp8; -- (id)plainTextRepresentationOfContents:(id)fp8; -- (void)addBaseURLTagToNode:(id)fp8; -- (void)recursivelyURLifyNode:(id)fp8; -- (void)getContentsForMessage:(id)fp8 body:(id)fp12; -- (id)originalMessageWebArchive; -- (void)setOriginalMessageWebArchive:(id)fp8; -- (id)htmlDocumentForSave; -- (id)makeCopyOfContentsForDraft:(BOOL)fp8; -- (BOOL)attachmentCanBeSentInline:(id)fp8; -- (BOOL)containsAttachments; -- (BOOL)containsAttachmentsThatCouldConfuseWindowsClients; -- (void)_ccOrBccMyselfGivenOriginalMessage:(id)fp8 uniquedRecipientsTable:(id)fp12; -- (void)_setupDefaultRecipientsFirstTime:(BOOL)fp8; -- (id)_allRecipients; -- (void)saveRecipients; -- (id)_fallbackReplyAddress; -- (id)replyAddressForMessage:(id)fp8; -- (id)mailboxUidCreateIfNeeded:(BOOL)fp8; -- (int)convertSaveOrSendResultFromResultCodeT:(int)fp8; -- (BOOL)isSavingMessage; -- (BOOL)isContentSignificant; -- (BOOL)saveThreadCancelFlag; -- (void)setSaveThreadCancelFlag:(BOOL)fp8; -- (BOOL)_saveThreadShouldCancel; -- (void)_saveThreadUpdateAccount:(id)fp8 mailbox:(id)fp12; -- (void)_saveThreadSetMessageId:(id)fp8 mailboxUid:(id)fp12 overwrite:(id)fp16; -- (void)_saveThreadRemoveLastSave; -- (void)_saveThreadSaveContents:(id)fp8; -- (id)saveThreadMailboxUid; -- (void)setSaveThreadMailboxUid:(id)fp8; -- (id)saveThreadMessageId; -- (void)setSaveThreadMessageId:(id)fp8; -- (id)documentID; -- (void)setDocumentID:(id)fp8; -- (id)originalMessageBaseURL; -- (void)setOriginalMessageBaseURL:(id)fp8; - -@end - -@interface ComposeBackEnd_Scripting : ComposeBackEnd -{ - MessageTextStorage *_textStorage; -} - -- (id)init; -- (void)dealloc; -- (void)setTextStorage:(id)fp8; -- (id)textStorage; -- (id)content; -- (void)setContent:(id)fp8; -- (void)_pushTextStorage; -- (void)_convertTextStorage; -- (void)_coalescedConvertTextStorage; - -@end - -@interface ComposeBackEnd (ScriptingSupport) -+ (id)_messageEditorForComposeBackEnd:(id)fp8 window:(id *)fp12; -- (BOOL)isVisible; -- (void)setIsVisible:(BOOL)fp8; -- (id)appleScriptSender; -- (void)setAppleScriptSender:(id)fp8; -- (id)appleScriptSubject; -- (void)setAppleScriptSubject:(id)fp8; -- (id)content; -- (void)setContent:(id)fp8; -- (id)messageSignature; -- (void)setMessageSignature:(id)fp8; -- (void)_addRecipientsForKey:(id)fp8 toArray:(id)fp12; -- (id)recipients; -- (id)toRecipients; -- (id)ccRecipients; -- (id)bccRecipients; -- (void)insertRecipient:(id)fp8 atIndex:(unsigned int)fp12 inHeaderWithKey:(id)fp16; -- (void)insertInToRecipients:(id)fp8 atIndex:(unsigned int)fp12; -- (void)insertInToRecipients:(id)fp8; -- (void)insertInCcRecipients:(id)fp8 atIndex:(unsigned int)fp12; -- (void)insertInCcRecipients:(id)fp8; -- (void)insertInBccRecipients:(id)fp8 atIndex:(unsigned int)fp12; -- (void)insertInBccRecipients:(id)fp8; -- (void)removeFromToRecipientsAtIndex:(unsigned int)fp8; -- (void)removeFromCcRecipientsAtIndex:(unsigned int)fp8; -- (void)removeFromBccRecipientsAtIndex:(unsigned int)fp8; -- (void)replaceFormattedAddress:(id)fp8 withAddress:(id)fp12 forKey:(id)fp16; -- (id)handleSaveMessageCommand:(id)fp8; -- (id)handleSendMessageCommand:(id)fp8; -- (id)handleCloseScriptCommand:(id)fp8; -- (id)uniqueID; -- (id)objectSpecifier; -- (void)setHtmlContent:(id)fp8; -- (void)setVcardPath:(id)fp8; -@end - -#elif defined(TIGER) - -@class Message; -@class ActivityMonitor; -@class MailboxUid; -@class WebArchive; - - -@interface ComposeBackEnd : NSObject -{ - id _delegate; - NSArray *_originalMessages; - NSMutableDictionary *_originalMessageHeaders; - NSMutableDictionary *_originalMessageBodies; - NSArray *_originalMessageStores; - WebArchive *_originalMessageWebArchive; - NSMutableDictionary *_cleanHeaders; - NSMutableDictionary *_extraRecipients; - NSMutableDictionary *_directoriesByAttachment; - NSUndoManager *_undoManager; - ActivityMonitor *_backgroundSaveActivity; - MailboxUid *_lastDraftsMailboxUid; - NSString *_lastMessageId; - NSData *_lastMessageIdDigest; - struct { - unsigned int type:4; - unsigned int sendFormat:2; - unsigned int contentIsLink:1; - unsigned int hadChangesBeforeSave:1; - unsigned int hasChanges:1; - unsigned int showAllHeaders:1; - unsigned int isUndeliverable:1; - unsigned int isDeliveringMessage:1; - unsigned int isSavingMessage:1; - unsigned int sendWindowsFriendlyAttachments:2; - unsigned int contentsWasEditedByUser:1; - unsigned int delegateRespondsToDidChange:1; - unsigned int delegateRespondsToDidAppendMessage:1; - unsigned int delegateRespondsToDidSaveMessage:1; - unsigned int delegateRespondsToDidBeginLoad:1; - unsigned int delegateRespondsToDidEndLoad:1; - unsigned int delegateRespondsToShouldSaveMessage:1; - unsigned int delegateRespondsToShouldDeliverMessage:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForEncryptionError:1; - unsigned int delegateRespondsToDidCancelMessageDeliveryForError:1; - unsigned int signIfPossible:1; - unsigned int encryptIfPossible:1; - unsigned int knowsCanSign:1; - unsigned int canSign:1; - unsigned int preferredEncoding; - } _flags; - NSString *_contentForAddressBookUpdate; - NSString *_vcardPathForAddressBookUpdate; - BOOL didAbortReply; -} - -- (void)dealloc; -- (id)init; -- (void)setDidAbortReply:(BOOL)fp8; -- (id)delegate; -- (void)setDelegate:(id)fp8; -- (BOOL)hasChanges; -- (void)setHasChanges:(BOOL)fp8; -- (id)undoManager; -- (void)setUndoManager:(id)fp8; -- (void)setType:(int)fp8; -- (int)type; -- (void)setIsUndeliverable:(BOOL)fp8; -- (BOOL)isUndeliverable; -- (BOOL)sendWindowsFriendlyAttachments; -- (void)setSendWindowsFriendlyAttachments:(BOOL)fp8; -- (id)originalMessage; -- (id)originalMessageHeaders; -- (id)originalMessageBody; -- (void)setOriginalMessage:(id)fp8; -- (void)setOriginalMessages:(id)fp8; -- (id)directoryForAttachment:(id)fp8; -- (id)message; -- (id)account; -- (id)deliveryAccount; -- (id)sender; -- (void)setSender:(id)fp8; -- (id)subject; -- (void)setSubject:(id)fp8; -- (id)messageID; -- (void)setShowAllHeaders:(BOOL)fp8; -- (void)setSendFormat:(int)fp8; -- (int)sendFormat; -- (void)setContentIsLink:(BOOL)fp8; -- (BOOL)contentIsLink; -- (BOOL)okToAddSignature; -- (id)signatureId; -- (id)signature; -- (void)setSignature:(id)fp8; -- (void)setMessagePriority:(int)fp8; -- (int)displayableMessagePriority; -- (void)addHeaders:(id)fp8; -- (id)addressListForHeader:(id)fp8; -- (void)setAddressList:(id)fp8 forHeader:(id)fp12; -- (void)insertAddress:(id)fp8 forHeader:(id)fp12 atIndex:(unsigned int)fp16; -- (void)removeAddressForHeader:(id)fp8 atIndex:(unsigned int)fp12; -- (BOOL)isAddressHeaderKey:(id)fp8; -- (BOOL)deliverMessage; -- (BOOL)isDeliveringMessage; -- (void)_synchronouslyAppendMessageToOutboxWithContents:(id)fp8; -- (void)_backgroundAppendEnded:(id)fp8; -- (void)_backgroundSaveEnded:(id)fp8; -- (BOOL)saveMessage; -- (BOOL)isSavingMessage; -- (void)removeLastDraft; -- (BOOL)isEditingMessage:(id)fp8; -- (void)setSignIfPossible:(BOOL)fp8; -- (void)setEncryptIfPossible:(BOOL)fp8; -- (id)allRecipients; -- (id)recipientsThatHaveNoKeyForEncryption; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)fp8; -- (BOOL)canSign; -- (BOOL)canEncryptForAllRecipients; -- (void)_configureLastDraftInformationFromHeaders:(id)fp8; -- (void)_finishedLoadingEditorSettings:(id)fp8; -- (void)_synchronouslyLoadForEditorSettings:(id)fp8; -- (void)loadWithEditorSettings:(id)fp8; -- (BOOL)hasContents; -- (BOOL)containsRichText; -- (id)outgoingMessageUsingWriter:(id)fp8 contents:(id)fp12 headers:(id)fp16 isDraft:(BOOL)fp20; -- (void)loadContentsForMessage:(id)fp8 body:(id)fp12; -- (id)makeCopyOfContentsForDraft:(BOOL)fp8; - -@end - -@interface ComposeBackEnd (Internal) -- (void)_setupDefaultRecipientsFirstTime:(BOOL)fp8; -- (void)_synchronouslySaveMessageWithContents:(id)fp8; -- (id)_allRecipients; -- (void)saveRecipients; -- (id)replyAddressForMessage:(id)fp8; -@end - -#else - -@class Message; -@class ActivityMonitor; -@class MailboxUid; - -@interface ComposeBackEnd:NSObject -{ - id _delegate; // 4 = 0x4 - Message *_originalMessage; // 8 = 0x8 - NSMutableDictionary *_cleanHeaders; // 12 = 0xc - NSMutableDictionary *_extraRecipients; // 16 = 0x10 - NSAttributedString *_messageContents; // 20 = 0x14 - NSMutableDictionary *_directoriesByAttachment; // 24 = 0x18 - NSString *_encodingType; // 28 = 0x1c - NSUndoManager *_undoManager; // 32 = 0x20 - ActivityMonitor *_backgroundSaveActivity; // 36 = 0x24 - MailboxUid *_lastDraftsMailboxUid; // 40 = 0x28 - NSString *_lastMessageId; // 44 = 0x2c - struct { - int type:4; - int hadChangesBeforeSave:1; - int hasChanges:1; - int showAllHeaders:1; - int isUndeliverable:1; - int isDeliveringMessage:1; - int isSavingMessage:1; - int sendWindowsFriendlyAttachments:2; - int contentsWasEditedByUser:1; - int delegateRespondsToDidChange:1; - int delegateRespondsToDidAppendMessage:1; - int delegateRespondsToDidSaveMessage:1; - int delegateRespondsToShouldSaveMessage:1; - int delegateRespondsToShouldDeliverMessage:1; - int delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients:1; - int delegateRespondsToDidCancelMessageDeliveryForEncryptionError:1; - int delegateRespondsToDidCancelMessageDeliveryForError:1; - int signIfPossible:1; - int encryptIfPossible:1; - unsigned int preferredEncoding; - } _flags; // 48 = 0x30 - NSString *_contentForAddressBookUpdate; // 56 = 0x38 - NSString *_vcardPathForAddressBookUpdate; // 60 = 0x3c -} - -- (void)dealloc; -- init; -- delegate; -- (void)setDelegate:fp8; -- (char)hasChanges; -- (void)setHasChanges:(char)fp8; -- undoManager; -- (void)setUndoManager:fp8; -- (void)setType:(int)fp8; -- (int)type; -- (void)setIsUndeliverable:(char)fp8; -- (char)isUndeliverable; -- (char)sendWindowsFriendlyAttachments; -- (void)setSendWindowsFriendlyAttachments:(char)fp8; -- (void)_configureLastDraftInformationFromHeaders:fp8; -- originalMessage; -- (void)setOriginalMessage:fp8; -- directoryForAttachment:fp8; -- message; -- account; -- deliveryAccount; -- sender; -- (void)setSender:fp8; -- subject; -- (void)setSubject:fp8; -- messageID; -- (void)setShowAllHeaders:(char)fp8; -- (void)setEncodingType:fp8; -- encodingType; -- defaultTextAttributes; -- messageContents; -- messageContentsForInitialText:fp8; -- (void)setMessageContents:fp8; -- _findSignatureInAttributedString:fp8; -- signatureName; -- signature; -- (void)setSignature:fp8; -- (void)addHeaders:fp8; -- addressListForHeader:fp8; -- (void)setAddressList:fp8 forHeader:fp12; -- (void)insertAddress:fp8 forHeader:fp12 atIndex:(unsigned int)fp16; -- (void)removeAddressForHeader:fp8 atIndex:(unsigned int)fp12; -- (char)isAddressHeaderKey:fp8; -- (char)deliverMessage; -- (char)isDeliveringMessage; -- (void)_synchronouslyAppendMessageToOutbox:fp8; -- (void)_backgroundAppendEnded:fp8; -- (void)_backgroundSaveEnded:fp8; -- (char)saveMessage; -- (char)isSavingMessage; -- (void)removeLastDraft; -- lastMessageID; -- (void)setSignIfPossible:(char)fp8; -- (void)setEncryptIfPossible:(char)fp8; -- allRecipients; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)fp8; -- (char)canSign; -- (char)canEncryptForAllRecipients; - -@end - -@interface ComposeBackEnd(Internal) -- (void)_textStorageChanged:fp8; -- (void)_setupDefaultRecipientsFromOriginalMessage:fp8; -- (void)_saveMessageSynchronously:fp8; -- _allRecipients; -- _recipientsThatHaveNoKeyForEncryption; -- (void)saveRecipients; -- replyAddressForMessage:fp8; -@end - -@interface ComposeBackEnd(ScriptingSupport) -+ _messageEditorForComposeBackEnd:fp8 window:(id *)fp12; -- (char)isVisible; -- (void)setIsVisible:(char)fp8; -- appleScriptSender; -- (void)setAppleScriptSender:fp8; -- appleScriptSubject; -- (void)setAppleScriptSubject:fp8; -- content; -- (void)setContent:fp8; -- messageSignature; -- (void)setMessageSignature:fp8; -- (void)_addRecipientsForKey:fp8 toArray:fp12; -- recipients; -- toRecipients; -- ccRecipients; -- bccRecipients; -- (void)insertRecipient:fp8 atIndex:(unsigned int)fp12 inHeaderWithKey:fp16; -- (void)insertInToRecipients:fp8 atIndex:(unsigned int)fp12; -- (void)insertInToRecipients:fp8; -- (void)insertInCcRecipients:fp8 atIndex:(unsigned int)fp12; -- (void)insertInCcRecipients:fp8; -- (void)insertInBccRecipients:fp8 atIndex:(unsigned int)fp12; -- (void)insertInBccRecipients:fp8; -- (void)removeFromToRecipientsAtIndex:(unsigned int)fp8; -- (void)removeFromCcRecipientsAtIndex:(unsigned int)fp8; -- (void)removeFromBccRecipientsAtIndex:(unsigned int)fp8; -- (void)replaceFormattedAddress:fp8 withAddress:fp12 forKey:fp16; -- handleSaveMessageCommand:fp8; -- handleSendMessageCommand:fp8; -- uniqueID; -- objectSpecifier; -- (void)setHtmlContent:fp8; -- (void)setVcardPath:fp8; -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/ComposeHeaderView.h b/GPGMail/Source/PrivateHeaders/ComposeHeaderView.h deleted file mode 100644 index 72de642c..00000000 --- a/GPGMail/Source/PrivateHeaders/ComposeHeaderView.h +++ /dev/null @@ -1,428 +0,0 @@ -#ifdef SNOW_LEOPARD_64 - -#import - -@interface ComposeHeaderView : NSView -{ - id _delegate; - NSPopUpButton *_disclosureButton; - NSMenu *_actionMenu; - OptionalView *_toOptionalView; - OptionalView *_ccOptionalView; - OptionalView *_subjectOptionalView; - OptionalView *_bccOptionalView; - OptionalView *_replyToOptionalView; - OptionalView *_accountOptionalView; - OptionalView *_signatureOptionalView; - OptionalView *_priorityOptionalView; - OptionalView *_securityOptionalView; - OptionalView *_deliveryOptionalView; - NSView *_messageContentView; - NSPopUpButton *_signaturePopUp; - NSPopUpButton *_accountPopUp; - NSPopUpButton *_deliveryPopUp; - NSButton *_cancelButton; - NSButton *_okButton; - NSImage *borderImage; - unsigned int _showCcView:1; - unsigned int _showBccView:1; - unsigned int _showReplyToView:1; - unsigned int _showAccountView:1; - unsigned int _showSignatureView:1; - unsigned int _showPriorityView:1; - unsigned int _showSecurityView:1; - unsigned int _showDeliveryView:1; - BOOL _tempShowDeliveryView; - unsigned int _accountFieldEnabled:1; - unsigned int _deliveryFieldEnabled:1; - unsigned int _signatureFieldEnabled:1; - unsigned int _securityFieldEnabled:1; - unsigned int _resizingViews:1; - unsigned int _customizing:1; - unsigned int _changesCancelled:1; - NSViewAnimation *_animation; - double _nextShownFrameOrigin; - double _nextHiddenFrameOrigin; - double _heightDelta; - id _lastFirstResponder; - double _signaturePopUpMaxWidth; - double _accountPopUpMaxWidth; - OptionalView *_togglingOptionalView; - BOOL _customizationShouldStick; -} - -- (void)awakeFromNib; -- (void)dealloc; -- (id)delegate; -- (void)setDelegate:(id)arg1; -- (id)messageContentView; -- (void)setMessageContentView:(id)arg1; -- (BOOL)isFlipped; -- (BOOL)isOpaque; -- (void)viewWillMoveToWindow:(id)arg1; -- (BOOL)isCustomizing; -- (void)_restoreFirstResponder; -- (void)_noteCurrentFirstResponder; -- (void)_popDisclosureButtonToFront; -- (void)_readVisibleStateFromOptionCheckboxes; -- (void)beginListeningForChildFrameChangeNotifications; -- (void)_setupMenuItemWithAction:(SEL)arg1 withState:(BOOL)arg2; -- (void)_setupActionMenuItemState; -- (double)_positionView:(id)arg1 yOffset:(double)arg2; -- (BOOL)_shouldShowSecurityViewWhenNotCustomizing; -- (BOOL)_shouldShowSecurityViewWhenCustomizing; -- (BOOL)_shouldShowSecurityView; -- (BOOL)_shouldShowAccountViewWhenNotCustomizing; -- (BOOL)_shouldShowAccountViewWhenCustomizing; -- (BOOL)_shouldShowAccountView; -- (BOOL)_shouldShowSignatureViewWhenNotCustomizing; -- (BOOL)_shouldShowSignatureViewWhenCustomizing; -- (BOOL)_shouldShowSignatureView; -- (BOOL)_shouldShowDeliveryViewWhenNotCustomizing; -- (void)_deliveryViewAppearanceConditionsDidChange:(id)arg1; -- (void)_recomputeShowDeliveryView; -- (BOOL)_shouldShowDeliveryViewWhenCustomizing; -- (BOOL)_shouldShowDeliveryView; -- (BOOL)_shouldShowPriorityViewWhenNotCustomizing; -- (BOOL)_shouldShowPriorityViewWhenCustomizing; -- (BOOL)_shouldShowPriorityView; -- (struct CGRect)_calculatePriorityFrame:(struct CGRect)arg1; -- (void)_calculateAccountFrame:(struct CGRect *)arg1 deliveryFrame:(struct CGRect *)arg2 signatureFrame:(struct CGRect *)arg3; -- (void)subviewFrameDidChange:(id)arg1; -- (BOOL)isDisplayingBottomControls; -- (BOOL)isDisplayingFatBottomControls; -- (void)fixupTabRing; -- (void)tile; -- (void)_addView:(id)arg1 toList:(id)arg2 isVisible:(BOOL)arg3 adjustYOrigin:(BOOL)arg4; -- (void)_recordUserCustomization; -- (void)_customizeHeaders:(BOOL)arg1 duration:(double)arg2; -- (void)resizeWithOldSuperviewSize:(struct CGSize)arg1; -- (void)_enableActionMenu:(BOOL)arg1; -- (void)sanityCheckHiddenessOfViewsInAnimationList:(id)arg1; -- (void)animationDidEnd:(id)arg1; -- (void)drawRect:(struct CGRect)arg1; -- (void)_finishCustomizingSavingChanges:(BOOL)arg1; -- (void)done:(id)arg1; -- (void)_toggleCcOrBccOrReplyToField:(id)arg1; -- (void)toggleCcFieldVisibility:(id)arg1; -- (void)toggleBccFieldVisibility:(id)arg1; -- (void)toggleReplyToFieldVisibility:(id)arg1; -- (void)temporarilyToggleCcFieldVisibility; -- (void)temporarilyToggleBccFieldVisibility; -- (void)temporarilyToggleReplyToFieldVisibility; -- (void)_toggleAccountOrDeliveryOrSignatureOrPriorityOrSecurityField:(id)arg1; -- (void)togglePriorityFieldVisibility:(id)arg1; -- (void)temporarilyTogglePriorityFieldVisibility; -- (void)configureHeaders:(id)arg1; -- (void)configureAccountPopUpSize; -- (void)configureSignaturePopUpSize; -- (void)setCcFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; -- (void)setCcFieldVisible:(BOOL)arg1; -- (void)setBccFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; -- (void)setBccFieldVisible:(BOOL)arg1; -- (void)setReplyToFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; -- (void)setReplyToFieldVisible:(BOOL)arg1; -- (void)setAccountFieldVisible:(BOOL)arg1; -- (void)setSignatureFieldVisible:(BOOL)arg1; -- (void)setDeliveryFieldVisible:(BOOL)arg1; -- (void)setPriorityFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; -- (void)setPriorityFieldVisible:(BOOL)arg1; -- (void)setSecurityFieldVisible:(BOOL)arg1; -- (BOOL)securityFieldVisible; -- (BOOL)showCcHeader; -- (BOOL)showBccHeader; -- (BOOL)showReplyToHeader; -- (void)setAccountFieldEnabled:(BOOL)arg1; -- (void)setSignatureFieldEnabled:(BOOL)arg1; -- (void)setDeliveryFieldEnabled:(BOOL)arg1; -- (void)setSecurityFieldEnabled:(BOOL)arg1; - -@end - -#elif defined(SNOW_LEOPARD) - -@class OptionalView; - -@interface ComposeHeaderView : NSView -{ - id _delegate; - NSPopUpButton *_disclosureButton; - NSMenu *_actionMenu; - OptionalView *_toOptionalView; - OptionalView *_ccOptionalView; - OptionalView *_subjectOptionalView; - OptionalView *_bccOptionalView; - OptionalView *_replyToOptionalView; - OptionalView *_accountOptionalView; - OptionalView *_signatureOptionalView; - OptionalView *_priorityOptionalView; - OptionalView *_securityOptionalView; - OptionalView *_deliveryOptionalView; - NSView *_messageContentView; - NSPopUpButton *_signaturePopUp; - NSPopUpButton *_accountPopUp; - NSPopUpButton *_deliveryPopUp; - NSButton *_cancelButton; - NSButton *_okButton; - NSImage *borderImage; - unsigned int _showCcView:1; - unsigned int _showBccView:1; - unsigned int _showReplyToView:1; - unsigned int _showAccountView:1; - unsigned int _showSignatureView:1; - unsigned int _showPriorityView:1; - unsigned int _showSecurityView:1; - unsigned int _showDeliveryView:1; - BOOL _tempShowDeliveryView; - unsigned int _accountFieldEnabled:1; - unsigned int _deliveryFieldEnabled:1; - unsigned int _signatureFieldEnabled:1; - unsigned int _securityFieldEnabled:1; - unsigned int _resizingViews:1; - unsigned int _customizing:1; - unsigned int _changesCancelled:1; - NSViewAnimation *_animation; - float _nextShownFrameOrigin; - float _nextHiddenFrameOrigin; - float _heightDelta; - id _lastFirstResponder; - float _signaturePopUpMaxWidth; - float _accountPopUpMaxWidth; - OptionalView *_togglingOptionalView; - BOOL _customizationShouldStick; -} - -- (void)awakeFromNib; -- (void)dealloc; -- (id)delegate; -- (void)setDelegate:(id)arg1; -- (id)messageContentView; -- (void)setMessageContentView:(id)arg1; -- (BOOL)isFlipped; -- (BOOL)isOpaque; -- (void)viewWillMoveToWindow:(id)arg1; -- (BOOL)isCustomizing; -- (void)_restoreFirstResponder; -- (void)_noteCurrentFirstResponder; -- (void)_popDisclosureButtonToFront; -- (void)_readVisibleStateFromOptionCheckboxes; -- (void)beginListeningForChildFrameChangeNotifications; -- (void)_setupMenuItemWithAction:(SEL)arg1 withState:(BOOL)arg2; -- (void)_setupActionMenuItemState; -- (float)_positionView:(id)arg1 yOffset:(float)arg2; -- (BOOL)_shouldShowSecurityViewWhenNotCustomizing; -- (BOOL)_shouldShowSecurityViewWhenCustomizing; -- (BOOL)_shouldShowSecurityView; -- (BOOL)_shouldShowAccountViewWhenNotCustomizing; -- (BOOL)_shouldShowAccountViewWhenCustomizing; -- (BOOL)_shouldShowAccountView; -- (BOOL)_shouldShowSignatureViewWhenNotCustomizing; -- (BOOL)_shouldShowSignatureViewWhenCustomizing; -- (BOOL)_shouldShowSignatureView; -- (BOOL)_shouldShowDeliveryViewWhenNotCustomizing; -- (void)_deliveryViewAppearanceConditionsDidChange:(id)arg1; -- (void)_recomputeShowDeliveryView; -- (BOOL)_shouldShowDeliveryViewWhenCustomizing; -- (BOOL)_shouldShowDeliveryView; -- (BOOL)_shouldShowPriorityViewWhenNotCustomizing; -- (BOOL)_shouldShowPriorityViewWhenCustomizing; -- (BOOL)_shouldShowPriorityView; -- (struct CGRect)_calculatePriorityFrame:(struct CGRect)arg1; -- (void)_calculateAccountFrame:(struct CGRect *)arg1 deliveryFrame:(struct CGRect *)arg2 signatureFrame:(struct CGRect *)arg3; -- (void)subviewFrameDidChange:(id)arg1; -- (BOOL)isDisplayingBottomControls; -- (BOOL)isDisplayingFatBottomControls; -- (void)fixupTabRing; -- (void)tile; -- (void)_addView:(id)arg1 toList:(id)arg2 isVisible:(BOOL)arg3 adjustYOrigin:(BOOL)arg4; -- (void)_recordUserCustomization; -- (void)_customizeHeaders:(BOOL)arg1 duration:(double)arg2; -- (void)resizeWithOldSuperviewSize:(struct CGSize)arg1; -- (void)_enableActionMenu:(BOOL)arg1; -- (void)sanityCheckHiddenessOfViewsInAnimationList:(id)arg1; -- (void)animationDidEnd:(id)arg1; -- (void)drawRect:(struct CGRect)arg1; -- (void)_finishCustomizingSavingChanges:(BOOL)arg1; -- (void)done:(id)arg1; -- (void)_toggleCcOrBccOrReplyToField:(id)arg1; -- (void)toggleCcFieldVisibility:(id)arg1; -- (void)toggleBccFieldVisibility:(id)arg1; -- (void)toggleReplyToFieldVisibility:(id)arg1; -- (void)temporarilyToggleCcFieldVisibility; -- (void)temporarilyToggleBccFieldVisibility; -- (void)temporarilyToggleReplyToFieldVisibility; -- (void)_toggleAccountOrDeliveryOrSignatureOrPriorityOrSecurityField:(id)arg1; -- (void)togglePriorityFieldVisibility:(id)arg1; -- (void)temporarilyTogglePriorityFieldVisibility; -- (void)configureHeaders:(id)arg1; -- (void)configureAccountPopUpSize; -- (void)configureSignaturePopUpSize; -- (void)setCcFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; -- (void)setCcFieldVisible:(BOOL)arg1; -- (void)setBccFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; -- (void)setBccFieldVisible:(BOOL)arg1; -- (void)setReplyToFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; -- (void)setReplyToFieldVisible:(BOOL)arg1; -- (void)setAccountFieldVisible:(BOOL)arg1; -- (void)setSignatureFieldVisible:(BOOL)arg1; -- (void)setDeliveryFieldVisible:(BOOL)arg1; -- (void)setPriorityFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; -- (void)setPriorityFieldVisible:(BOOL)arg1; -- (void)setSecurityFieldVisible:(BOOL)arg1; -- (BOOL)securityFieldVisible; -- (BOOL)showCcHeader; -- (BOOL)showBccHeader; -- (BOOL)showReplyToHeader; -- (void)setAccountFieldEnabled:(BOOL)arg1; -- (void)setSignatureFieldEnabled:(BOOL)arg1; -- (void)setDeliveryFieldEnabled:(BOOL)arg1; -- (void)setSecurityFieldEnabled:(BOOL)arg1; - -@end - -#elif defined(LEOPARD) - -#import - -@class OptionalView; - -@interface ComposeHeaderView : NSView -{ - id _delegate; - NSPopUpButton *_disclosureButton; - NSMenu *_actionMenu; - OptionalView *_toOptionalView; - OptionalView *_ccOptionalView; - OptionalView *_subjectOptionalView; - OptionalView *_bccOptionalView; - OptionalView *_replyToOptionalView; - OptionalView *_accountOptionalView; - OptionalView *_signatureOptionalView; - OptionalView *_priorityOptionalView; - OptionalView *_securityOptionalView; - OptionalView *_deliveryOptionalView; - NSView *_messageContentView; - NSPopUpButton *_signaturePopUp; - NSPopUpButton *_accountPopUp; - NSPopUpButton *_deliveryPopUp; - NSButton *_cancelButton; - NSButton *_okButton; - NSImage *borderImage; - unsigned int _showCcView:1; - unsigned int _showBccView:1; - unsigned int _showReplyToView:1; - unsigned int _showAccountView:1; - unsigned int _showSignatureView:1; - unsigned int _showPriorityView:1; - unsigned int _showSecurityView:1; - unsigned int _showDeliveryView:1; - BOOL _tempShowDeliveryView; - unsigned int _accountFieldEnabled:1; - unsigned int _deliveryFieldEnabled:1; - unsigned int _signatureFieldEnabled:1; - unsigned int _securityFieldEnabled:1; - unsigned int _resizingViews:1; - unsigned int _customizing:1; - unsigned int _changesCancelled:1; - NSViewAnimation *_animation; - float _nextShownFrameOrigin; - float _nextHiddenFrameOrigin; - float _heightDelta; - id _lastFirstResponder; - float _signaturePopUpMaxWidth; - float _accountPopUpMaxWidth; - OptionalView *_togglingOptionalView; - BOOL _customizationShouldStick; -} - -- (id)delegate; -- (void)setDelegate:(id)fp8; -- (id)messageContentView; -- (void)setMessageContentView:(id)fp8; -- (BOOL)isFlipped; -- (BOOL)isOpaque; -- (void)viewWillMoveToWindow:(id)fp8; -- (BOOL)isCustomizing; -- (void)dealloc; -- (void)_restoreFirstResponder; -- (void)_noteCurrentFirstResponder; -- (void)_popDisclosureButtonToFront; -- (void)_readVisibleStateFromOptionCheckboxes; -- (void)beginListeningForChildFrameChangeNotifications; -- (void)_setupMenuItemWithAction:(SEL)fp8 withState:(BOOL)fp12; -- (void)_setupActionMenuItemState; -- (void)awakeFromNib; -- (float)_positionView:(id)fp8 yOffset:(float)fp12; -- (BOOL)_shouldShowSecurityViewWhenNotCustomizing; -- (BOOL)_shouldShowSecurityViewWhenCustomizing; -- (BOOL)_shouldShowSecurityView; -- (BOOL)_shouldShowAccountViewWhenNotCustomizing; -- (BOOL)_shouldShowAccountViewWhenCustomizing; -- (BOOL)_shouldShowAccountView; -- (BOOL)_shouldShowSignatureViewWhenNotCustomizing; -- (BOOL)_shouldShowSignatureViewWhenCustomizing; -- (BOOL)_shouldShowSignatureView; -- (BOOL)_shouldShowDeliveryViewWhenNotCustomizing; -- (void)_deliveryViewAppearanceConditionsDidChange:(id)fp8; -- (void)_recomputeShowDeliveryView; -- (BOOL)_shouldShowDeliveryViewWhenCustomizing; -- (BOOL)_shouldShowDeliveryView; -- (BOOL)_shouldShowPriorityViewWhenNotCustomizing; -- (BOOL)_shouldShowPriorityViewWhenCustomizing; -- (BOOL)_shouldShowPriorityView; -- (struct _NSRect)_calculatePriorityFrame:(struct _NSRect)fp8; -- (void)_calculateAccountFrame:(struct _NSRect *)fp8 deliveryFrame:(struct _NSRect *)fp12 signatureFrame:(struct _NSRect *)fp16; -- (void)subviewFrameDidChange:(id)fp8; -- (BOOL)isDisplayingBottomControls; -- (BOOL)isDisplayingFatBottomControls; -- (void)fixupTabRing; -- (void)tile; -- (void)_addView:(id)fp8 toList:(id)fp12 isVisible:(BOOL)fp16 adjustYOrigin:(BOOL)fp20; -- (void)_recordUserCustomization; -- (void)_customizeHeaders:(BOOL)fp8 duration:(float)fp12; -- (void)resizeWithOldSuperviewSize:(struct _NSSize)fp8; -- (void)_enableActionMenu:(BOOL)fp8; -- (void)sanityCheckHiddenessOfViewsInAnimationList:(id)fp8; -- (void)animationDidEnd:(id)fp8; -- (void)drawRect:(struct _NSRect)fp8; -- (void)_finishCustomizingSavingChanges:(BOOL)fp8; -- (void)done:(id)fp8; -- (void)_toggleCcOrBccOrReplyToField:(id)fp8; -- (void)toggleCcFieldVisibility:(id)fp8; -- (void)toggleBccFieldVisibility:(id)fp8; -- (void)toggleReplyToFieldVisibility:(id)fp8; -- (void)temporarilyToggleCcFieldVisibility; -- (void)temporarilyToggleBccFieldVisibility; -- (void)temporarilyToggleReplyToFieldVisibility; -- (void)_toggleAccountOrDeliveryOrSignatureOrPriorityOrSecurityField:(id)fp8; -- (void)togglePriorityFieldVisibility:(id)fp8; -- (void)temporarilyTogglePriorityFieldVisibility; -- (void)configureHeaders:(id)fp8; -- (void)configureAccountPopUpSize; -- (void)configureSignaturePopUpSize; -- (void)setCcFieldVisible:(BOOL)fp8 andSetDefault:(BOOL)fp12; -- (void)setCcFieldVisible:(BOOL)fp8; -- (void)setBccFieldVisible:(BOOL)fp8 andSetDefault:(BOOL)fp12; -- (void)setBccFieldVisible:(BOOL)fp8; -- (void)setReplyToFieldVisible:(BOOL)fp8 andSetDefault:(BOOL)fp12; -- (void)setReplyToFieldVisible:(BOOL)fp8; -- (void)setAccountFieldVisible:(BOOL)fp8; -- (void)setSignatureFieldVisible:(BOOL)fp8; -- (void)setDeliveryFieldVisible:(BOOL)fp8; -- (void)setPriorityFieldVisible:(BOOL)fp8 andSetDefault:(BOOL)fp12; -- (void)setPriorityFieldVisible:(BOOL)fp8; -- (void)setSecurityFieldVisible:(BOOL)fp8; -- (BOOL)securityFieldVisible; -- (BOOL)showCcHeader; -- (BOOL)showBccHeader; -- (BOOL)showReplyToHeader; -- (void)setAccountFieldEnabled:(BOOL)fp8; -- (void)setSignatureFieldEnabled:(BOOL)fp8; -- (void)setDeliveryFieldEnabled:(BOOL)fp8; -- (void)setSecurityFieldEnabled:(BOOL)fp8; - -@end - -#else -#error Missing definition of ComposeHeaderView -#endif diff --git a/GPGMail/Source/PrivateHeaders/MVComposeAccessoryViewOwner.h b/GPGMail/Source/PrivateHeaders/MVComposeAccessoryViewOwner.h deleted file mode 100644 index 495a16dd..00000000 --- a/GPGMail/Source/PrivateHeaders/MVComposeAccessoryViewOwner.h +++ /dev/null @@ -1,90 +0,0 @@ -/* MVComposeAccessoryViewOwner.h created by dave on Thu 29-Jun-2000 */ - -#import - -#ifdef SNOW_LEOPARD_64 - -@interface MVComposeAccessoryViewOwner : NSObject -{ - NSView *accessoryView; -} - -+ (id)composeAccessoryViewOwner; -+ (id)composeAccessoryViewNibName; -- (void)setupUIForMessage:(id)arg1; -- (id)composeAccessoryView; -- (BOOL)messageWillBeDelivered:(id)arg1; -- (BOOL)messageWillBeSaved:(id)arg1; - -@end - -#elif defined(SNOW_LEOPARD) - -@interface MVComposeAccessoryViewOwner : NSObject -{ - NSView *accessoryView; -} - -+ (id)composeAccessoryViewOwner; -+ (id)composeAccessoryViewNibName; -- (void)setupUIForMessage:(id)arg1; -- (id)composeAccessoryView; -- (BOOL)messageWillBeDelivered:(id)arg1; -- (BOOL)messageWillBeSaved:(id)arg1; - -@end - -#elif defined(LEOPARD) - -@interface MVComposeAccessoryViewOwner : NSObject -{ - NSView *accessoryView; -} - -+ (id)composeAccessoryViewOwner; -+ (id)composeAccessoryViewNibName; -- (id)init; -- (void)setupUIForMessage:(id)fp8; -- (id)composeAccessoryView; -- (BOOL)messageWillBeDelivered:(id)fp8; -- (BOOL)messageWillBeSaved:(id)fp8; - -@end - -#elif defined(TIGER) - -@class Message; - -@interface MVComposeAccessoryViewOwner : NSObject -{ - NSView *accessoryView; -} - -+ (id)composeAccessoryViewOwner; -+ (id)composeAccessoryViewNibName; -- (id)init; -- (void)setupUIForMessage:(id)fp8; -- (id)composeAccessoryView; -- (BOOL)messageWillBeDelivered:(id)fp8; -- (BOOL)messageWillBeSaved:(id)fp8; - -@end - -#else - -@interface MVComposeAccessoryViewOwner:NSObject -{ - NSView *accessoryView; // 4 = 0x4 -} - -+ composeAccessoryViewOwner; // Creates a new instance at each invocation -+ composeAccessoryViewNibName; -- init; -- (void)setupUIForMessage:fp8; -- composeAccessoryView; -- (BOOL)messageWillBeDelivered:fp8; // No longer invoked; see GPGComposeBackEndPoser -- (BOOL)messageWillBeSaved:fp8; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MVMailBundle.h b/GPGMail/Source/PrivateHeaders/MVMailBundle.h deleted file mode 100644 index d33b9d24..00000000 --- a/GPGMail/Source/PrivateHeaders/MVMailBundle.h +++ /dev/null @@ -1,116 +0,0 @@ -/* MVMailBundle.h created by dave on Wed 08-Sep-1999 */ - -#import - -#ifdef SNOW_LEOPARD_64 - -@interface MVMailBundle : NSObject -{ -} - -+ (id)allBundles; -+ (id)composeAccessoryViewOwners; -+ (void)registerBundle; -+ (id)sharedInstance; -+ (BOOL)hasPreferencesPanel; -+ (id)preferencesOwnerClassName; -+ (id)preferencesPanelName; -+ (BOOL)hasComposeAccessoryViewOwner; -+ (id)composeAccessoryViewOwnerClassName; -- (void)dealloc; -- (void)_registerBundleForNotifications; - -@end - -#elif defined(SNOW_LEOPARD) - -@interface MVMailBundle : NSObject -{ -} - -+ (id)allBundles; -+ (id)composeAccessoryViewOwners; -+ (void)registerBundle; -+ (id)sharedInstance; -+ (BOOL)hasPreferencesPanel; -+ (id)preferencesOwnerClassName; -+ (id)preferencesPanelName; -+ (BOOL)hasComposeAccessoryViewOwner; -+ (id)composeAccessoryViewOwnerClassName; -- (void)dealloc; -- (void)_registerBundleForNotifications; - -@end - -#elif defined(LEOPARD) - -@interface MVMailBundle : NSObject -{ -} - -+ (id)allBundles; -+ (id)composeAccessoryViewOwners; -+ (void)registerBundle; -+ (id)sharedInstance; -+ (BOOL)hasPreferencesPanel; -+ (id)preferencesOwnerClassName; -+ (id)preferencesPanelName; -+ (BOOL)hasComposeAccessoryViewOwner; -+ (id)composeAccessoryViewOwnerClassName; -- (void)dealloc; -- (void)_registerBundleForNotifications; - -@end - -#elif defined(TIGER) - -@interface MVMailBundle : NSObject -{ -} - -+ (id)allBundles; -+ (id)composeAccessoryViewOwners; -+ (void)registerBundle; -+ (id)sharedInstance; -+ (BOOL)hasPreferencesPanel; -+ (id)preferencesOwnerClassName; -+ (id)preferencesPanelName; -+ (BOOL)hasComposeAccessoryViewOwner; -+ (id)composeAccessoryViewOwnerClassName; -- (void)dealloc; -- (void)_registerBundleForNotifications; - -@end - -#else - -@interface MVMailBundle:NSObject -{ -} - -+ allBundles; -+ composeAccessoryViewOwners; -+ (void)registerBundle; // Must be called to force registering preferences -+ sharedInstance; -+ (BOOL)hasPreferencesPanel; -+ preferencesOwnerClassName; -+ preferencesPanelName; -+ (BOOL)hasComposeAccessoryViewOwner; -+ composeAccessoryViewOwnerClassName; -- (void)dealloc; -- (void)_registerBundleForNotifications; - -@end - -#endif - -// The following methods are called if implemented: -//- (MessageBody *) bodyWillBeEncoded:(MessageBody *)body forMessage:(Message *)message; -//- (MessageBody *) bodyWasEncoded:(MessageBody *)body forMessage:(Message *)message; -//- (NSData *) bodyWillBeDecoded:(NSData *)bodyData forMessage:(Message *)message; -//- (MessageBody *) bodyWasDecoded:(MessageBody *)body forMessage:(Message *)message; // Comes before messageWillBeDisplayedInView: and bodyData is not nil! -//- (MessageBody *) bodyWillBeForwarded:(MessageBody *)body forMessage:(Message *)message; -//- (void) messageWillBeDisplayedInView:(NSNotification *)notification; -// with MessageKey = displayed message in userInfo -// and MessageViewKey = view used for display - diff --git a/GPGMail/Source/PrivateHeaders/MVTerminationHandler.h b/GPGMail/Source/PrivateHeaders/MVTerminationHandler.h deleted file mode 100644 index 1ed4ab2f..00000000 --- a/GPGMail/Source/PrivateHeaders/MVTerminationHandler.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifdef SNOW_LEOPARD - -#import - - -@protocol MVTerminationHandler -- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MailTextAttachment.h b/GPGMail/Source/PrivateHeaders/MailTextAttachment.h deleted file mode 100644 index 99389505..00000000 --- a/GPGMail/Source/PrivateHeaders/MailTextAttachment.h +++ /dev/null @@ -1,182 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD - -@interface MailTextAttachment : MimeTextAttachment -{ - unsigned int _isPossibleToDisplayAttachmentInline:1; - unsigned int _isPossibleToDisplayAttachmentAsView:1; - unsigned int _isDisplayingAttachmentInline:1; - unsigned int _shouldDisplayInlineByDefault:1; - unsigned int _isImageBeingResized:1; - NSFileWrapper *_originalFileWrapper; - NSImage *_originalImage; - struct CGSize _originalImageSize; - struct CGSize _maxImageSize; - struct CGSize _lastMaxImageSize; -} - -+ (void)initialize; -+ (id)replacementAttachmentForAttachment:(id)arg1; -- (id)initWithMimePart:(id)arg1 andFileWrapper:(id)arg2 iconOnly:(BOOL)arg3; -- (id)initWithMimePart:(id)arg1 andFileWrapper:(id)arg2; -- (void)dealloc; -- (BOOL)shouldDisplayInlineByDefault; -- (void)setShouldDisplayInlineByDefault:(BOOL)arg1; -- (void)setIsPossibleToDisplayAttachmentInline:(BOOL)arg1; -- (BOOL)isPossibleToDisplayAttachmentInline; -- (BOOL)isDisplayingAttachmentInline; -- (void)setIsDisplayingAttachmentInline:(BOOL)arg1; -- (BOOL)hasData; -- (void)updateFromPath:(id)arg1 contentID:(id)arg2; -- (id)attachmentCell; -- (id)_getInlineImage; -- (void)_configureLabelForCell:(id)arg1; -- (id)toolTip; -- (void)setIsPartOfStationery:(BOOL)arg1; -- (BOOL)isPartOfStationery; -- (BOOL)isPDF; -- (BOOL)isScalable; -- (BOOL)isFullSize; -- (id)_originalImage; -- (void)_setupOriginalImageIfNeeded; -- (struct CGSize)_originalImageSize; -- (id)originalFileWrapper; -- (struct CGSize)maxImageSize; -- (struct CGSize)originalImageSize; -- (void)resizingStarted:(struct CGSize)arg1; -- (void)resizingFinished:(id)arg1 imageSize:(struct CGSize)arg2 fileExtension:(id)arg3 fileType:(unsigned long)arg4 maxImageSize:(struct CGSize)arg5; - -@end - -@interface MailTextAttachment (CustomAttachmentViewManagement) -+ (void)registerViewingClass:(Class)arg1 forMimeTypes:(id)arg2; -@end - -#elif defined(LEOPARD) - -@interface MailTextAttachment : MimeTextAttachment -{ - unsigned int _isPossibleToDisplayAttachmentInline:1; - unsigned int _isPossibleToDisplayAttachmentAsView:1; - unsigned int _isDisplayingAttachmentInline:1; - unsigned int _shouldDisplayInlineByDefault:1; - unsigned int _isImageBeingResized:1; - NSFileWrapper *_originalFileWrapper; - NSImage *_originalImage; - struct _NSSize _originalImageSize; - struct _NSSize _maxImageSize; - struct _NSSize _lastMaxImageSize; - BOOL _isInitializing; -} - -+ (void)initialize; -+ (id)replacementAttachmentForAttachment:(id)fp8; -- (id)initWithFileWrapper:(id)fp8; -- (void)dealloc; -- (id)initWithMimePart:(id)fp8 andFileWrapper:(id)fp12; -- (id)initWithMimePart:(id)fp8 andFileWrapper:(id)fp12 iconOnly:(BOOL)fp16; -- (BOOL)shouldDisplayInlineByDefault; -- (void)setShouldDisplayInlineByDefault:(BOOL)fp8; -- (void)setIsPossibleToDisplayAttachmentInline:(BOOL)fp8; -- (BOOL)isPossibleToDisplayAttachmentInline; -- (BOOL)isDisplayingAttachmentInline; -- (void)setIsDisplayingAttachmentInline:(BOOL)fp8; -- (void)downloadFinished; -- (BOOL)hasData; -- (void)updateFromPath:(id)fp8 contentID:(id)fp12; -- (id)attachmentCell; -- (id)_getInlineImage; -- (void)_configureLabelForCell:(id)fp8; -- (id)toolTip; -- (void)setIsPartOfStationery:(BOOL)fp8; -- (BOOL)isPartOfStationery; -- (BOOL)isPDF; -- (BOOL)isScalable; -- (BOOL)isFullSize; -- (id)_originalImage; -- (void)_setupOriginalImageIfNeeded; -- (struct _NSSize)_originalImageSize; -- (id)originalFileWrapper; -- (struct _NSSize)maxImageSize; -- (struct _NSSize)originalImageSize; -- (void)resizingStarted:(struct _NSSize)fp8; -- (void)resizingFinished:(id)fp8 imageSize:(struct _NSSize)fp12 fileExtension:(id)fp20 fileType:(unsigned long)fp24 maxImageSize:(struct _NSSize)fp28; - -@end - -@interface MailTextAttachment (CustomAttachmentViewManagement) -+ (void)registerViewingClass:(Class)fp8 forMimeTypes:(id)fp12; -@end - -#elif defined(TIGER) - -@interface MailTextAttachment : MimeTextAttachment -{ - unsigned int _isPossibleToDisplayAttachmentInline:1; - unsigned int _isPossibleToDisplayAttachmentAsView:1; - unsigned int _isDisplayingAttachmentInline:1; - unsigned int _isImageBeingResized:1; - NSFileWrapper *_originalFileWrapper; - NSImage *_originalImage; - struct _NSSize _originalImageSize; - struct _NSSize _maxImageSize; - struct _NSSize _lastMaxImageSize; -} - -+ (void)initialize; -- (id)initWithFileWrapper:(id)fp8; -- (void)dealloc; -- (id)initWithMimePart:(id)fp8 andFileWrapper:(id)fp12; -- (void)setIsPossibleToDisplayAttachmentInline:(BOOL)fp8; -- (BOOL)isPossibleToDisplayAttachmentInline; -- (BOOL)isDisplayingAttachmentInline; -- (void)setIsDisplayingAttachmentInline:(BOOL)fp8; -- (id)attachmentCell; -- (id)_getInlineImage; -- (void)_configureLabelForCell:(id)fp8; -- (id)toolTip; -- (BOOL)isScalable; -- (BOOL)isFullSize; -- (id)_originalImage; -- (struct _NSSize)_originalImageSize; -- (id)originalFileWrapper; -- (struct _NSSize)maxImageSize; -- (struct _NSSize)originalImageSize; -- (void)resizingStarted:(struct _NSSize)fp8; -- (void)resizingFinished:(id)fp8 imageSize:(struct _NSSize)fp12 fileExtension:(id)fp20 fileType:(unsigned long)fp24 maxImageSize:(struct _NSSize)fp28; - -@end - -@interface MailTextAttachment (CustomAttachmentViewManagement) -+ (void)registerViewingClass:(Class)fp8 forMimeTypes:(id)fp12; -@end - -#else - -@interface MailTextAttachment:MimeTextAttachment -{ - int _isPossibleToDisplayAttachmentInline:1; // 20 = 0x14 - int _isPossibleToDisplayAttachmentAsView:1; // 20 = 0x14 - int _isDisplayingAttachmentInline:1; // 20 = 0x14 -} - -+ (void)initialize; -- initWithFileWrapper:fp8; -- initWithMimePart:fp8 andFileWrapper:fp12; -- (void)setIsPossibleToDisplayAttachmentInline:(char)fp8; -- (char)isPossibleToDisplayAttachmentInline; -- (char)isDisplayingAttachmentInline; -- (void)setIsDisplayingAttachmentInline:(char)fp8; -- attachmentCell; -- _getInlineImage; -- (void)_configureLabelForCell:fp8; -- toolTip; - -@end - -@interface MailTextAttachment(CustomAttachmentViewManagement) -+ (void)registerViewingClass:(Class)fp8 forMimeTypes:fp12; -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MailToolbarItem.h b/GPGMail/Source/PrivateHeaders/MailToolbarItem.h deleted file mode 100644 index c88babbe..00000000 --- a/GPGMail/Source/PrivateHeaders/MailToolbarItem.h +++ /dev/null @@ -1,265 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -@interface SegmentedToolbarItem : NSToolbarItemGroup -{ -} - -- (id)initWithItemIdentifier:(id)arg1; -- (id)copyWithZone:(struct _NSZone *)arg1; -- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; -- (void)validate; -- (id)control; -- (void)controlAction:(id)arg1; -@property long long segmentCount; // @dynamic segmentCount; -- (id)methodSignatureForSelector:(SEL)arg1; -- (void)forwardInvocation:(id)arg1; -- (id)labelForSegment:(long long)arg1; -- (void)setLabel:(id)arg1 forSegment:(long long)arg2; -- (void)setAlternateLabel:(id)arg1 forSegment:(long long)arg2; -- (id)paletteLabelForSegment:(long long)arg1; -- (void)setPaletteLabel:(id)arg1 forSegment:(long long)arg2; -- (SEL)actionForSegment:(long long)arg1; -- (void)setAction:(SEL)arg1 forSegment:(long long)arg2; -- (id)targetForSegment:(long long)arg1; -- (void)setTarget:(id)arg1 forSegment:(long long)arg2; -- (void)setTag:(long long)arg1 forSegment:(long long)arg2; -- (void)setToolTip:(id)arg1 forSegment:(long long)arg2; -- (void)setMenu:(id)arg1 forSegment:(long long)arg2; - -@end - -@interface SegmentedToolbarItemSegmentItem : NSToolbarItem -{ - SegmentedToolbarItem *parent; - long long segmentNumber; -} - -- (id)menuFormRepresentation; -- (void)setToolTip:(id)arg1; -- (void)_setToolTip:(id)arg1; -- (void)setTag:(long long)arg1; -- (void)_setTag:(long long)arg1; -- (void)setImage:(id)arg1; -- (void)setMenu:(id)arg1; -@property long long segmentNumber; // @synthesize segmentNumber; -@property SegmentedToolbarItem *parent; // @synthesize parent; - -@end - -@interface SegmentedToolbarItemSegmentedCell : NSSegmentedCell -{ -} - -- (double)_menuDelayTimeForSegment:(long long)arg1; - -@end - -#elif defined(SNOW_LEOPARD) - -@interface SegmentedToolbarItem : NSToolbarItemGroup -{ -} - -- (id)initWithItemIdentifier:(id)arg1; -- (id)copyWithZone:(struct _NSZone *)arg1; -- (void)configureForDisplayMode:(unsigned long)arg1 andSizeMode:(unsigned long)arg2; -- (void)validate; -- (id)control; -- (void)controlAction:(id)arg1; -- (void)setSegmentCount:(long)arg1; -- (id)methodSignatureForSelector:(SEL)arg1; -- (void)forwardInvocation:(id)arg1; -- (id)labelForSegment:(long)arg1; -- (void)setLabel:(id)arg1 forSegment:(long)arg2; -- (void)setAlternateLabel:(id)arg1 forSegment:(long)arg2; -- (id)paletteLabelForSegment:(long)arg1; -- (void)setPaletteLabel:(id)arg1 forSegment:(long)arg2; -- (SEL)actionForSegment:(long)arg1; -- (void)setAction:(SEL)arg1 forSegment:(long)arg2; -- (id)targetForSegment:(long)arg1; -- (void)setTarget:(id)arg1 forSegment:(long)arg2; -- (void)setTag:(long)arg1 forSegment:(long)arg2; -- (void)setToolTip:(id)arg1 forSegment:(long)arg2; -- (void)setMenu:(id)arg1 forSegment:(long)arg2; - -@end - -@interface SegmentedToolbarItemSegmentItem : NSToolbarItem -{ - SegmentedToolbarItem *parent; - int segmentNumber; -} - -- (id)menuFormRepresentation; -- (void)setToolTip:(id)arg1; -- (void)_setToolTip:(id)arg1; -- (void)setTag:(long)arg1; -- (void)_setTag:(long)arg1; -- (void)setImage:(id)arg1; -- (void)setMenu:(id)arg1; -- (long)segmentNumber; -- (void)setSegmentNumber:(long)arg1; -- (id)parent; -- (void)setParent:(id)arg1; - -@end - -@interface SegmentedToolbarItemSegmentedCell : NSSegmentedCell -{ -} - -- (double)_menuDelayTimeForSegment:(long)arg1; - -@end - -#elif defined(LEOPARD) - -@interface SegmentedToolbarItem : NSToolbarItemGroup -{ -} - -- (id)initWithItemIdentifier:(id)fp8; -- (id)copyWithZone:(struct _NSZone *)fp8; -- (void)configureForDisplayMode:(unsigned int)fp8 andSizeMode:(unsigned int)fp12; -- (void)validate; -- (id)control; -- (void)controlAction:(id)fp8; -- (void)setSegmentCount:(int)fp8; -- (id)methodSignatureForSelector:(SEL)fp8; -- (void)forwardInvocation:(id)fp8; -- (id)labelForSegment:(int)fp8; -- (void)setLabel:(id)fp8 forSegment:(int)fp12; -- (void)setAlternateLabel:(id)fp8 forSegment:(int)fp12; -- (id)paletteLabelForSegment:(int)fp8; -- (void)setPaletteLabel:(id)fp8 forSegment:(int)fp12; -- (SEL)actionForSegment:(int)fp8; -- (void)setAction:(SEL)fp8 forSegment:(int)fp12; -- (id)targetForSegment:(int)fp8; -- (void)setTarget:(id)fp8 forSegment:(int)fp12; -- (void)setTag:(int)fp8 forSegment:(int)fp12; -- (void)setToolTip:(id)fp8 forSegment:(int)fp12; -- (void)setMenu:(id)fp8 forSegment:(int)fp12; - -@end - -@interface SegmentedToolbarItemSegmentItem : NSToolbarItem -{ - SegmentedToolbarItem *parent; - int segmentNumber; -} - -- (id)menuFormRepresentation; -- (void)setToolTip:(id)fp8; -- (void)_setToolTip:(id)fp8; -- (void)setTag:(int)fp8; -- (void)_setTag:(int)fp8; -- (void)setImage:(id)fp8; -- (int)segmentNumber; -- (void)setSegmentNumber:(int)fp8; -- (id)parent; -- (void)setParent:(id)fp8; - -@end - -#elif defined(TIGER) - -@interface MailToolbarItem : NSToolbarItem -{ - NSArray *_segments; - unsigned int _extraSegmentWidth; - unsigned int _extraHorizontalPadding; - unsigned int _borderless:1; -} - -- (id)initWithItemIdentifier:(id)fp8; -- (id)initWithItemIdentifier:(id)fp8 segments:(id)fp12 bordered:(BOOL)fp16 toolbar:(id)fp20; -- (void)dealloc; -- (id)segments; -- (unsigned int)segmentCount; -- (id)segmentAtIndex:(int)fp8; -- (id)itemView; -- (void)setLabel:(id)fp8 forSegment:(int)fp12; -- (id)labelForSegment:(int)fp8; -- (void)setPaletteLabel:(id)fp8 forSegment:(int)fp12; -- (id)paletteLabelForSegment:(int)fp8; -- (void)setToolTip:(id)fp8 forSegment:(int)fp12; -- (id)toolTipForSegment:(int)fp8; -- (void)setTag:(int)fp8 forSegment:(int)fp12; -- (int)tagForSegment:(int)fp8; -- (void)setTarget:(id)fp8 forSegment:(int)fp12; -- (id)targetForSegment:(int)fp8; -- (void)setAction:(SEL)fp8 forSegment:(int)fp12; -- (SEL)actionForSegment:(int)fp8; -- (void)setEnabled:(BOOL)fp8 forSegment:(int)fp12; -- (BOOL)isEnabledForSegment:(int)fp8; -- (void)setImage:(id)fp8 forSegment:(int)fp12; -- (id)imageForSegment:(int)fp8; -- (void)setInactiveImage:(id)fp8 forSegment:(int)fp12; -- (id)inactiveImageForSegment:(int)fp8; -- (void)setPressedImage:(id)fp8 forSegment:(int)fp12; -- (id)pressedImageForSegment:(int)fp8; -- (BOOL)bordered; -- (void)setExtraSegmentWidth:(unsigned int)fp8; -- (unsigned int)extraSegmentWidth; -- (void)setExtraHorizontalPadding:(unsigned int)fp8; -- (unsigned int)extraHorizontalPadding; -- (void)performActionForSegment:(int)fp8; -- (void)_validateSegment:(int)fp8 forToolbarItem:(id)fp12; -- (void)setEnabled:(BOOL)fp8; -- (void)configureForDisplayMode:(int)fp8 andSizeMode:(int)fp12; -- (id)menuFormRepresentation; -- (void)_validateAsCustomItem:(id)fp8; -- (id)_copyOfCustomView; -- (id)copyWithZone:(struct _NSZone *)fp8; -- (BOOL)usesMenuFormRepresentationInDisplayMode:(int)fp8; -- (BOOL)wantsToDrawIconIntoLabelAreaInDisplayMode:(int)fp8; -- (BOOL)wantsToDrawIconInDisplayMode:(int)fp8; -- (BOOL)wantsToDrawLabelInDisplayMode:(int)fp8; -- (BOOL)wantsToDrawLabelInPalette; - -@end - -@interface MailToolbarItemSegment : NSObject -{ - NSImage *_image; - NSImage *_inactiveImage; - NSImage *_pressedImage; - NSString *_label; - NSString *_paletteLabel; - NSString *_altLabel; - NSString *_toolTip; - int _tag; - id _target; - SEL _action; -} - -- (id)initWithImage:(id)fp8 label:(id)fp12 paletteLabel:(id)fp16 altLabel:(id)fp20 tooltip:(id)fp24 tag:(int)fp28 target:(id)fp32 action:(SEL)fp36; -- (id)copyWithZone:(struct _NSZone *)fp8; -- (void)dealloc; -- (id)image; -- (void)setImage:(id)fp8; -- (void)setInactiveImage:(id)fp8; -- (id)inactiveImage; -- (void)setPressedImage:(id)fp8; -- (id)pressedImage; -- (id)label; -- (BOOL)setLabel:(id)fp8; -- (BOOL)hasCustomPaletteLabel; -- (id)paletteLabel; -- (id)altLabel; -- (void)setPaletteLabel:(id)fp8; -- (id)toolTip; -- (void)setToolTip:(id)fp8; -- (int)tag; -- (void)setTag:(int)fp8; -- (id)target; -- (void)setTarget:(id)fp8; -- (SEL)action; -- (void)setAction:(SEL)fp8; -- (id)menuFormRepresentation; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/Message.h b/GPGMail/Source/PrivateHeaders/Message.h deleted file mode 100644 index 5181d24b..00000000 --- a/GPGMail/Source/PrivateHeaders/Message.h +++ /dev/null @@ -1,1139 +0,0 @@ -/* Message.h created by dave on Mon 20-Sep-1999 */ -// File: /System/Library/Frameworks/Message.framework/Versions/B/Message - -/* - -messageBody, -messageBodyIfAvailable always return a new instance on each invocation! - */ - -#import - -#ifdef SNOW_LEOPARD_64 - -typedef struct { - unsigned int colorHasBeenEvaluated:1; - unsigned int colorWasSetManually:1; - unsigned int redColor:8; - unsigned int greenColor:8; - unsigned int blueColor:8; - unsigned int loadingBody:1; - unsigned int firstUnused:2; - unsigned int isMarkedForOverwrite:1; - unsigned int unused:2; -} CDStruct_accefccd; - -@class MessageStore; -@class MFUUID; - -@interface Message : NSObject -{ - long long _mf_retainCount; - double _dateSentInterval; - double _dateReceivedInterval; - double _dateLastViewedInterval; - MessageStore *_store; - NSString *_senderAddressComment; - NSString *_subject; - NSString *_to; - NSString *_sender; - NSString *_author; - NSData *_messageIDHeaderDigest; - NSData *_inReplyToHeaderDigest; - MFUUID *_documentID; - unsigned int _messageFlags; - CDStruct_accefccd _flags; - unsigned int _preferredEncoding; - BOOL _type; - unsigned char _subjectPrefixLength; -} - -+ (void)initialize; -+ (id)verboseVersion; -+ (id)frameworkVersion; -+ (void)setUserAgent:(id)arg1; -+ (id)userAgent; -+ (id)messageWithRFC822Data:(id)arg1; -+ (id)forwardedMessagePrefixWithSpacer:(BOOL)arg1; -+ (id)replyPrefixWithSpacer:(BOOL)arg1; -+ (id)descriptionForType:(BOOL)arg1 plural:(BOOL)arg2; -+ (id)messageTypeKeyForMessageType:(BOOL)arg1; -+ (BOOL)_messageTypeForMessageTypeKey:(id)arg1; -+ (id)unreadMessagesFromMessages:(id)arg1; -+ (BOOL)allMessages:(id)arg1 areSameType:(BOOL)arg2; -+ (BOOL)colorIsSetInMoreFlags:(CDStruct_accefccd)arg1; -+ (unsigned int)validatePriority:(unsigned int)arg1; -+ (unsigned long long)displayablePriorityForPriority:(unsigned int)arg1; -+ (BOOL)isMessageURL:(id)arg1; -+ (id)messageWithURL:(id)arg1; -+ (id)messagesWithURL:(id)arg1; -+ (id)messageWithPersistentID:(id)arg1; -+ (id)availableMatadorAttributeNames; -- (id)init; -- (id)copyWithZone:(struct _NSZone *)arg1; -- (id)retain; -- (void)release; -- (unsigned long long)retainCount; -- (id)messageStore; -- (void)setMessageStore:(id)arg1; -- (BOOL)messageStoreShouldBeSet; -- (id)mailbox; -- (id)headers; -- (id)headersIfAvailable; -- (BOOL)isKnownToBeNote; -- (BOOL)type; -- (void)setType:(BOOL)arg1; -- (BOOL)isEditable; -- (BOOL)isAnnotatable; -- (BOOL)isMessageMeeting; -- (id)documentID; -- (void)setDocumentID:(id)arg1; -- (unsigned int)messageFlags; -- (void)setMessageFlags:(unsigned int)arg1 mask:(unsigned int)arg2; -- (id)attachmentNamesIfAvailable; -- (id)messageBody; -- (id)messageBodyIfAvailable; -- (id)messageBodyUpdatingFlags:(BOOL)arg1; -- (id)messageBodyForIndexingAttachments; -- (id)messageBodyIfAvailableUpdatingFlags:(BOOL)arg1; -- (id)messageDataIncludingFromSpace:(BOOL)arg1; -- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; -- (BOOL)colorHasBeenEvaluated; -- (id)color; -- (int)colorIntValue; -- (BOOL)isMarkedForOverwrite; -- (void)setMarkedForOverwrite:(BOOL)arg1; -- (void)setColor:(id)arg1; -- (void)setColorHasBeenEvaluated:(BOOL)arg1; -- (void)setColor:(id)arg1 hasBeenEvaluated:(BOOL)arg2 flags:(unsigned int)arg3 mask:(unsigned int)arg4; -- (void)dealloc; -- (void)finalize; -- (unsigned long long)messageSize; -- (id)attributedString; -- (id)preferredEmailAddressToReplyWith; -- (id)messageID; -- (id)messageIDHeaderDigest; -- (void)unlockedSetMessageIDHeaderDigest:(id)arg1; -- (void)setMessageIDHeaderDigest:(id)arg1; -- (id)_messageIDHeaderDigestIvar; -- (id)inReplyToHeaderDigest; -- (void)unlockedSetInReplyToHeaderDigest:(id)arg1; -- (void)setInReplyToHeaderDigest:(id)arg1; -- (id)_inReplyToHeaderDigestIvar; -- (long long)compareByNumberWithMessage:(id)arg1; -- (BOOL)isMessageContentsLocallyAvailable; -- (id)stringValueRenderMode:(int)arg1 updateBodyFlags:(BOOL)arg2 junkRecorder:(id)arg3; -- (id)stringForIndexing; -- (id)stringForIndexingUpdatingBodyFlags:(BOOL)arg1; -- (id)stringForJunk; -- (id)stringForJunk:(id)arg1; -- (BOOL)hasCalculatedNumberOfAttachments; -- (unsigned long long)numberOfAttachments; -- (int)junkMailLevel; -- (void)setPriorityFromHeaders:(id)arg1; -- (int)priority; -- (unsigned int)preferredEncoding; -- (void)setPreferredEncoding:(unsigned int)arg1; -- (id)rawSourceFromHeaders:(id)arg1 body:(id)arg2; -- (BOOL)_doesDateAppearToBeSane:(id)arg1; -- (id)_createDateFromReceivedHeadersInHeaders:(id)arg1; -- (id)_createDateFromHeader:(id)arg1 inHeaders:(id)arg2; -- (id)_createDateFromDateHeaderInHeaders:(id)arg1; -- (id)_createDateFromCreatedDateHeaderInHeaders:(id)arg1; -- (void)_setDateReceivedFromHeaders:(id)arg1; -- (void)_setDateSentFromHeaders:(id)arg1; -- (void)loadCachedHeaderValuesFromHeaders:(id)arg1 type:(BOOL)arg2; -- (id)subjectAndPrefixLength:(unsigned long long *)arg1; -- (id)subjectNotIncludingReAndFwdPrefix; -- (id)subjectAddition; -- (id)subject; -- (void)setSubject:(id)arg1; -- (id)dateReceived; -- (id)dateSent; -- (void)setDateReceivedTimeIntervalSince1970:(double)arg1; -- (double)dateReceivedAsTimeIntervalSince1970; -- (double)dateSentAsTimeIntervalSince1970; -- (void)setDateSentTimeIntervalSince1970:(double)arg1; -- (id)dateLastViewed; -- (double)dateLastViewedAsTimeIntervalSince1970; -- (id)sender; -- (void)setSender:(id)arg1; -- (id)senderAddressComment; -- (id)to; -- (void)setTo:(id)arg1; -- (id)author; -- (void)setAuthor:(id)arg1; -- (void)setMessageInfo:(id)arg1 to:(id)arg2 sender:(id)arg3 type:(BOOL)arg4 dateReceivedTimeIntervalSince1970:(double)arg5 dateSentTimeIntervalSince1970:(double)arg6 messageIDHeaderDigest:(id)arg7 inReplyToHeaderDigest:(id)arg8; -- (void)setMessageInfo:(id)arg1 to:(id)arg2 sender:(id)arg3 type:(BOOL)arg4 dateReceivedTimeIntervalSince1970:(double)arg5 dateSentTimeIntervalSince1970:(double)arg6 messageIDHeaderDigest:(id)arg7 inReplyToHeaderDigest:(id)arg8 dateLastViewedTimeIntervalSince1970:(double)arg9; -- (void)setMessageInfoFromMessage:(id)arg1; -- (id)references; -@property(retain) Message *note; -@property(retain) NSArray *todos; -- (void)invalidateTodos; -- (id)remoteID; -- (unsigned int)uid; -- (CDStruct_accefccd)moreMessageFlags; -- (id)path; -- (id)account; -- (void)markAsViewed; -- (id)remoteMailboxURL; -- (id)originalMailboxURL; -- (id)_URLFetchIfNotAvailable:(BOOL)arg1; -- (id)URL; -- (id)URLIfAvailable; -- (id)persistentID; -- (id)bodyData; -- (id)headerData; -- (id)dataForMimePart:(id)arg1; -- (BOOL)hasCachedDataForMimePart:(id)arg1; -- (id)matadorAttributes; -- (void)_calculateAttachmentInfoFromBody:(id)arg1; -- (void)forceSetAttachmentInfoFromBody:(id)arg1; -- (void)setAttachmentInfoFromBody:(id)arg1; -- (void)setAttachmentInfoFromBody:(id)arg1 forced:(BOOL)arg2; -- (BOOL)calculateAttachmentInfoFromBody:(id)arg1 numberOfAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4; -- (BOOL)calculateAttachmentInfoFromBody:(id)arg1 numberOfAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4 force:(BOOL)arg5; -- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3; -@property BOOL messageTypeInternal; // @synthesize messageTypeInternal=_type; - -@end - -@interface Message (BackupAdditions) -- (id)backupID; -@end - -@interface Message (LibraryAdditions) -- (id)metadataDictionary; -@end - -@interface Message (ParentalControl) -- (BOOL)isParentResponseMessage:(char *)arg1 isRejected:(char *)arg2 requestedAddresses:(id)arg3 requestIsForSenders:(char *)arg4; -- (BOOL)isChildRequestMessage:(id)arg1 requestIsForSenders:(char *)arg2 childAddress:(id *)arg3 permissionRequestState:(int *)arg4; -- (BOOL)isChildRequestMessage; -@end - -@interface Message (ScriptingSupport) -- (id)objectSpecifier; -- (void)_setAppleScriptFlag:(id)arg1 state:(BOOL)arg2; -- (BOOL)isRead; -- (void)setIsRead:(BOOL)arg1; -- (BOOL)wasRepliedTo; -- (void)setWasRepliedTo:(BOOL)arg1; -- (BOOL)wasForwarded; -- (void)setWasForwarded:(BOOL)arg1; -- (BOOL)wasRedirected; -- (void)setWasRedirected:(BOOL)arg1; -- (BOOL)isJunk; -- (void)setIsJunk:(BOOL)arg1; -- (BOOL)isDeleted; -- (void)setIsDeleted:(BOOL)arg1; -- (BOOL)isFlagged; -- (void)setIsFlagged:(BOOL)arg1; -- (id)replyTo; -- (id)scriptedMessageSize; -- (id)content; -- (void)_addRecipientsForKey:(id)arg1 toArray:(id)arg2; -- (id)recipients; -- (id)toRecipients; -- (id)ccRecipients; -- (id)bccRecipients; -- (id)container; -- (void)_performBackgroundSetContainer:(id)arg1 command:(id)arg2; -- (void)setContainer:(id)arg1; -- (id)messageIDHeader; -- (id)rawSource; -- (id)allHeaders; -- (int)actionColorMessage; -- (void)setBackgroundColor:(int)arg1; -- (int)backgroundColor; -- (id)appleScriptHeaders; -- (id)appleScriptAttachments; -- (id)valueInAppleScriptAttachmentsWithUniqueID:(id)arg1; -@end - -@interface Message (StringRendering) -- (void)renderHeaders:(id)arg1; -- (void)renderBody:(id)arg1; -- (void)renderString:(id)arg1; -@end - -@interface Message (Threads) -@property(readonly) BOOL isThread; -@property(readonly) BOOL containsOnlyNotes; -@property(readonly) BOOL shouldUseSubjectForThreading; -@end - -#elif defined(SNOW_LEOPARD) - -@class MessageStore; -@class MFUUID; - -typedef struct { - unsigned int colorHasBeenEvaluated:1; - unsigned int colorWasSetManually:1; - unsigned int redColor:8; - unsigned int greenColor:8; - unsigned int blueColor:8; - unsigned int loadingBody:1; - unsigned int firstUnused:2; - unsigned int isMarkedForOverwrite:1; - unsigned int unused:2; -} CDStruct_accefccd; - -@interface Message : NSObject -{ - int _mf_retainCount; - double _dateSentInterval; - double _dateReceivedInterval; - double _dateLastViewedInterval; - MessageStore *_store; - NSString *_senderAddressComment; - NSString *_subject; - NSString *_to; - NSString *_sender; - NSString *_author; - NSData *_messageIDHeaderDigest; - NSData *_inReplyToHeaderDigest; - MFUUID *_documentID; - unsigned int _messageFlags; - CDStruct_accefccd _flags; - unsigned int _preferredEncoding; - BOOL _type; - unsigned char _subjectPrefixLength; -} - -+ (void)initialize; -+ (id)verboseVersion; -+ (id)frameworkVersion; -+ (void)setUserAgent:(id)arg1; -+ (id)userAgent; -+ (id)messageWithRFC822Data:(id)arg1; -+ (id)forwardedMessagePrefixWithSpacer:(BOOL)arg1; -+ (id)replyPrefixWithSpacer:(BOOL)arg1; -+ (id)descriptionForType:(BOOL)arg1 plural:(BOOL)arg2; -+ (id)messageTypeKeyForMessageType:(BOOL)arg1; -+ (BOOL)_messageTypeForMessageTypeKey:(id)arg1; -+ (id)unreadMessagesFromMessages:(id)arg1; -+ (BOOL)allMessages:(id)arg1 areSameType:(BOOL)arg2; -+ (BOOL)colorIsSetInMoreFlags:(CDStruct_accefccd)arg1; -+ (unsigned long)validatePriority:(unsigned long)arg1; -+ (unsigned int)displayablePriorityForPriority:(unsigned long)arg1; -+ (BOOL)isMessageURL:(id)arg1; -+ (id)messageWithURL:(id)arg1; -+ (id)messagesWithURL:(id)arg1; -+ (id)messageWithPersistentID:(id)arg1; -+ (id)availableMatadorAttributeNames; -- (id)init; -- (id)copyWithZone:(struct _NSZone *)arg1; -- (id)retain; -- (void)release; -- (unsigned int)retainCount; -- (id)messageStore; -- (void)setMessageStore:(id)arg1; -- (BOOL)messageStoreShouldBeSet; -- (id)mailbox; -- (id)headers; -- (id)headersIfAvailable; -- (BOOL)isKnownToBeNote; -- (BOOL)type; -- (void)setType:(BOOL)arg1; -- (BOOL)isEditable; -- (BOOL)isAnnotatable; -- (BOOL)isMessageMeeting; -- (id)documentID; -- (void)setDocumentID:(id)arg1; -- (unsigned long)messageFlags; -- (void)setMessageFlags:(unsigned long)arg1 mask:(unsigned long)arg2; -- (id)attachmentNamesIfAvailable; -- (id)messageBody; -- (id)messageBodyIfAvailable; -- (id)messageBodyUpdatingFlags:(BOOL)arg1; -- (id)messageBodyForIndexingAttachments; -- (id)messageBodyIfAvailableUpdatingFlags:(BOOL)arg1; -- (id)messageDataIncludingFromSpace:(BOOL)arg1; -- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; -- (BOOL)colorHasBeenEvaluated; -- (id)color; -- (int)colorIntValue; -- (BOOL)isMarkedForOverwrite; -- (void)setMarkedForOverwrite:(BOOL)arg1; -- (void)setColor:(id)arg1; -- (void)setColorHasBeenEvaluated:(BOOL)arg1; -- (void)setColor:(id)arg1 hasBeenEvaluated:(BOOL)arg2 flags:(unsigned long)arg3 mask:(unsigned long)arg4; -- (void)dealloc; -- (void)finalize; -- (unsigned int)messageSize; -- (id)attributedString; -- (id)preferredEmailAddressToReplyWith; -- (id)messageID; -- (id)messageIDHeaderDigest; -- (void)unlockedSetMessageIDHeaderDigest:(id)arg1; -- (void)setMessageIDHeaderDigest:(id)arg1; -- (id)_messageIDHeaderDigestIvar; -- (id)inReplyToHeaderDigest; -- (void)unlockedSetInReplyToHeaderDigest:(id)arg1; -- (void)setInReplyToHeaderDigest:(id)arg1; -- (id)_inReplyToHeaderDigestIvar; -- (int)compareByNumberWithMessage:(id)arg1; -- (BOOL)isMessageContentsLocallyAvailable; -- (id)stringValueRenderMode:(int)arg1 updateBodyFlags:(BOOL)arg2 junkRecorder:(id)arg3; -- (id)stringForIndexing; -- (id)stringForIndexingUpdatingBodyFlags:(BOOL)arg1; -- (id)stringForJunk; -- (id)stringForJunk:(id)arg1; -- (BOOL)hasCalculatedNumberOfAttachments; -- (unsigned int)numberOfAttachments; -- (int)junkMailLevel; -- (void)setPriorityFromHeaders:(id)arg1; -- (int)priority; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)arg1; -- (id)rawSourceFromHeaders:(id)arg1 body:(id)arg2; -- (BOOL)_doesDateAppearToBeSane:(id)arg1; -- (id)_createDateFromReceivedHeadersInHeaders:(id)arg1; -- (id)_createDateFromHeader:(id)arg1 inHeaders:(id)arg2; -- (id)_createDateFromDateHeaderInHeaders:(id)arg1; -- (id)_createDateFromCreatedDateHeaderInHeaders:(id)arg1; -- (void)_setDateReceivedFromHeaders:(id)arg1; -- (void)_setDateSentFromHeaders:(id)arg1; -- (void)loadCachedHeaderValuesFromHeaders:(id)arg1 type:(BOOL)arg2; -- (id)subjectAndPrefixLength:(unsigned int *)arg1; -- (id)subjectNotIncludingReAndFwdPrefix; -- (id)subjectAddition; -- (id)subject; -- (void)setSubject:(id)arg1; -- (id)dateReceived; -- (id)dateSent; -- (void)setDateReceivedTimeIntervalSince1970:(double)arg1; -- (double)dateReceivedAsTimeIntervalSince1970; -- (double)dateSentAsTimeIntervalSince1970; -- (void)setDateSentTimeIntervalSince1970:(double)arg1; -- (id)dateLastViewed; -- (double)dateLastViewedAsTimeIntervalSince1970; -- (id)sender; -- (void)setSender:(id)arg1; -- (id)senderAddressComment; -- (id)to; -- (void)setTo:(id)arg1; -- (id)author; -- (void)setAuthor:(id)arg1; -- (void)setMessageInfo:(id)arg1 to:(id)arg2 sender:(id)arg3 type:(BOOL)arg4 dateReceivedTimeIntervalSince1970:(double)arg5 dateSentTimeIntervalSince1970:(double)arg6 messageIDHeaderDigest:(id)arg7 inReplyToHeaderDigest:(id)arg8; -- (void)setMessageInfo:(id)arg1 to:(id)arg2 sender:(id)arg3 type:(BOOL)arg4 dateReceivedTimeIntervalSince1970:(double)arg5 dateSentTimeIntervalSince1970:(double)arg6 messageIDHeaderDigest:(id)arg7 inReplyToHeaderDigest:(id)arg8 dateLastViewedTimeIntervalSince1970:(double)arg9; -- (void)setMessageInfoFromMessage:(id)arg1; -- (id)references; -- (id)note; -- (void)setNote:(id)arg1; -- (id)todos; -- (void)setTodos:(id)arg1; -- (void)invalidateTodos; -- (id)remoteID; -- (unsigned long)uid; -- (CDStruct_accefccd)moreMessageFlags; -- (id)path; -- (id)account; -- (void)markAsViewed; -- (id)remoteMailboxURL; -- (id)originalMailboxURL; -- (id)_URLFetchIfNotAvailable:(BOOL)arg1; -- (id)URL; -- (id)URLIfAvailable; -- (id)persistentID; -- (id)bodyData; -- (id)headerData; -- (id)dataForMimePart:(id)arg1; -- (BOOL)hasCachedDataForMimePart:(id)arg1; -- (id)matadorAttributes; -- (void)_calculateAttachmentInfoFromBody:(id)arg1; -- (void)forceSetAttachmentInfoFromBody:(id)arg1; -- (void)setAttachmentInfoFromBody:(id)arg1; -- (void)setAttachmentInfoFromBody:(id)arg1 forced:(BOOL)arg2; -- (BOOL)calculateAttachmentInfoFromBody:(id)arg1 numberOfAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4; -- (BOOL)calculateAttachmentInfoFromBody:(id)arg1 numberOfAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4 force:(BOOL)arg5; -- (void)setNumberOfAttachments:(unsigned long)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3; -- (BOOL)messageTypeInternal; -- (void)setMessageTypeInternal:(BOOL)arg1; - -@end - -@interface Message (BackupAdditions) -- (id)backupID; -@end - -@interface Message (LibraryAdditions) -- (id)metadataDictionary; -@end - -@interface Message (ScriptingSupport) -- (id)objectSpecifier; -- (void)_setAppleScriptFlag:(id)arg1 state:(BOOL)arg2; -- (BOOL)isRead; -- (void)setIsRead:(BOOL)arg1; -- (BOOL)wasRepliedTo; -- (void)setWasRepliedTo:(BOOL)arg1; -- (BOOL)wasForwarded; -- (void)setWasForwarded:(BOOL)arg1; -- (BOOL)wasRedirected; -- (void)setWasRedirected:(BOOL)arg1; -- (BOOL)isJunk; -- (void)setIsJunk:(BOOL)arg1; -- (BOOL)isDeleted; -- (void)setIsDeleted:(BOOL)arg1; -- (BOOL)isFlagged; -- (void)setIsFlagged:(BOOL)arg1; -- (id)replyTo; -- (id)scriptedMessageSize; -- (id)content; -- (void)_addRecipientsForKey:(id)arg1 toArray:(id)arg2; -- (id)recipients; -- (id)toRecipients; -- (id)ccRecipients; -- (id)bccRecipients; -- (id)container; -- (void)_performBackgroundSetContainer:(id)arg1 command:(id)arg2; -- (void)setContainer:(id)arg1; -- (id)messageIDHeader; -- (id)rawSource; -- (id)allHeaders; -- (int)actionColorMessage; -- (void)setBackgroundColor:(int)arg1; -- (int)backgroundColor; -- (id)appleScriptHeaders; -- (id)appleScriptAttachments; -- (id)valueInAppleScriptAttachmentsWithUniqueID:(id)arg1; -@end - -@interface Message (StringRendering) -- (void)renderHeaders:(id)arg1; -- (void)renderBody:(id)arg1; -- (void)renderString:(id)arg1; -@end - -@interface Message (Threads) -- (BOOL)isThread; -- (BOOL)containsOnlyNotes; -- (BOOL)shouldUseSubjectForThreading; -@end - -@interface Message (ParentalControl) -- (BOOL)isParentResponseMessage:(char *)arg1 isRejected:(char *)arg2 requestedAddresses:(id)arg3 requestIsForSenders:(char *)arg4; -- (BOOL)isChildRequestMessage:(id)arg1 requestIsForSenders:(char *)arg2 childAddress:(id *)arg3 permissionRequestState:(int *)arg4; -- (BOOL)isChildRequestMessage; -@end - -@interface Message (Chat) -+ (id)chatURLForEmails:(id)arg1; -@end - -@interface Message (MailViewerAdditions) -- (void)handleOpenAppleEvent:(id)arg1; -- (id)handleReplyToMessage:(id)arg1; -- (id)handleForwardMessage:(id)arg1; -- (id)handleRedirectMessage:(id)arg1; -- (void)handleBounceMessage:(id)arg1; -@end - -#elif defined(LEOPARD) - -@class MessageStore; -@class MFUUID; - -typedef struct { - unsigned int colorHasBeenEvaluated:1; - unsigned int colorWasSetManually:1; - unsigned int redColor:8; - unsigned int greenColor:8; - unsigned int blueColor:8; - unsigned int loadingBody:1; - unsigned int firstUnused:2; - unsigned int isMarkedForOverwrite:1; - unsigned int unused:2; -} CDAnonymousStruct5; - -@interface Message : NSObject -{ - MessageStore *_store; - unsigned int _messageFlags; - CDAnonymousStruct5 _flags; - unsigned int _preferredEncoding; - NSString *_senderAddressComment; - unsigned int _dateSentInterval; - unsigned int _dateReceivedInterval; - unsigned int _dateLastViewedInterval; - NSString *_subject; - unsigned char _subjectPrefixLength; - NSString *_to; - NSString *_sender; - NSString *_author; - NSData *_messageIDHeaderDigest; - NSData *_inReplyToHeaderDigest; - int _type; - MFUUID *_documentID; -} - -+ (void)initialize; -+ (id)verboseVersion; -+ (id)frameworkVersion; -+ (void)setUserAgent:(id)fp8; -+ (id)userAgent; -+ (id)messageWithRFC822Data:(id)fp8; -+ (id)forwardedMessagePrefixWithSpacer:(BOOL)fp8; -+ (id)replyPrefixWithSpacer:(BOOL)fp8; -+ (id)descriptionForType:(int)fp8 plural:(BOOL)fp12; -+ (id)messageTypeKeyForMessageType:(int)fp8; -+ (int)_messageTypeForMessageTypeKey:(id)fp8; -+ (id)unreadMessagesFromMessages:(id)fp8; -+ (BOOL)allMessages:(id)fp8 areSameType:(int)fp12; -+ (unsigned int)validatePriority:(int)fp8; -+ (unsigned int)displayablePriorityForPriority:(int)fp8; -+ (BOOL)isMessageURL:(id)fp8; -+ (id)messageWithURL:(id)fp8; -+ (id)messageWithPersistentID:(id)fp8; -- (id)init; -- (id)copyWithZone:(struct _NSZone *)fp8; -- (id)messageStore; -- (void)setMessageStore:(id)fp8; -- (BOOL)messageStoreShouldBeSet; -- (id)mailbox; -- (id)headers; -- (id)headersIfAvailable; -- (int)type; -- (void)setType:(int)fp8; -- (BOOL)isEditable; -- (BOOL)isAnnotatable; -- (BOOL)isMetadataMessage; -- (id)documentID; -- (void)setDocumentID:(id)fp8; -- (unsigned long)messageFlags; -- (void)setMessageFlags:(unsigned long)fp8; -- (id)messageBody; -- (id)messageBodyIfAvailable; -- (id)messageBodyUpdatingFlags:(BOOL)fp8; -- (id)messageBodyForIndexingAttachments; -- (id)messageBodyIfAvailableUpdatingFlags:(BOOL)fp8; -- (id)messageDataIncludingFromSpace:(BOOL)fp8; -- (id)messageDataIncludingFromSpace:(BOOL)fp8 newDocumentID:(id)fp12; -- (BOOL)colorHasBeenEvaluated; -- (id)color; -- (BOOL)isMarkedForOverwrite; -- (void)setMarkedForOverwrite:(BOOL)fp8; -- (void)setColor:(id)fp8; -- (void)setColorHasBeenEvaluated:(BOOL)fp8; -- (void)setColor:(id)fp8 hasBeenEvaluated:(BOOL)fp12 flags:(unsigned long)fp16; -- (void)dealloc; -- (void)finalize; -- (unsigned int)messageSize; -- (id)attributedString; -- (id)preferredEmailAddressToReplyWith; -- (id)messageID; -- (id)messageIDHeaderDigest; -- (void)unlockedSetMessageIDHeaderDigest:(id)fp8; -- (void)setMessageIDHeaderDigest:(id)fp8; -- (id)_messageIDHeaderDigestIvar; -- (BOOL)needsMessageIDHeader; -- (id)inReplyToHeaderDigest; -- (void)unlockedSetInReplyToHeaderDigest:(id)fp8; -- (void)setInReplyToHeaderDigest:(id)fp8; -- (id)_inReplyToHeaderDigestIvar; -- (int)compareByNumberWithMessage:(id)fp8; -- (BOOL)isMessageContentsLocallyAvailable; -- (id)stringValueRenderMode:(int)fp8 updateBodyFlags:(BOOL)fp12 junkRecorder:(id)fp16; -- (id)stringForIndexing; -- (id)stringForIndexingUpdatingBodyFlags:(BOOL)fp8; -- (id)stringForJunk; -- (id)stringForJunk:(id)fp8; -- (BOOL)hasCalculatedNumberOfAttachments; -- (unsigned int)numberOfAttachments; -- (int)junkMailLevel; -- (void)setPriorityFromHeaders:(id)fp8; -- (int)priority; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)fp8; -- (id)rawSourceFromHeaders:(id)fp8 body:(id)fp12; -- (BOOL)_doesDateAppearToBeSane:(id)fp8; -- (id)_createDateFromReceivedHeadersInHeaders:(id)fp8; -- (id)_createDateFromHeader:(id)fp8 inHeaders:(id)fp12; -- (id)_createDateFromDateHeaderInHeaders:(id)fp8; -- (id)_createDateFromCreatedDateHeaderInHeaders:(id)fp8; -- (void)_setDateReceivedFromHeaders:(id)fp8; -- (void)_setDateSentFromHeaders:(id)fp8; -- (void)loadCachedHeaderValuesFromHeaders:(id)fp8 type:(int)fp12; -- (id)subjectAndPrefixLength:(unsigned int *)fp8; -- (id)subjectNotIncludingReAndFwdPrefix; -- (id)subjectAddition; -- (id)subject; -- (void)setSubject:(id)fp8; -- (id)dateReceived; -- (id)dateSent; -- (void)setDateReceivedTimeIntervalSince1970:(double)fp8; -- (double)dateReceivedAsTimeIntervalSince1970; -- (BOOL)needsDateReceived; -- (double)dateSentAsTimeIntervalSince1970; -- (void)setDateSentTimeIntervalSince1970:(double)fp8; -- (id)dateLastViewed; -- (double)dateLastViewedAsTimeIntervalSince1970; -- (id)sender; -- (void)setSender:(id)fp8; -- (id)senderAddressComment; -- (id)to; -- (void)setTo:(id)fp8; -- (id)author; -- (void)setAuthor:(id)fp8; -- (void)setMessageInfo:(id)fp8 to:(id)fp12 sender:(id)fp16 type:(int)fp20 dateReceivedTimeIntervalSince1970:(double)fp24 dateSentTimeIntervalSince1970:(double)fp32 messageIDHeaderDigest:(id)fp40 inReplyToHeaderDigest:(id)fp44; -- (void)setMessageInfo:(id)fp8 to:(id)fp12 sender:(id)fp16 type:(int)fp20 dateReceivedTimeIntervalSince1970:(double)fp24 dateSentTimeIntervalSince1970:(double)fp32 messageIDHeaderDigest:(id)fp40 inReplyToHeaderDigest:(id)fp44 dateLastViewedTimeIntervalSince1970:(double)fp48; -- (void)setMessageInfoFromMessage:(id)fp8; -- (id)references; -- (id)note; -- (void)setNote:(id)fp8; -- (id)todos; -- (void)setTodos:(id)fp8; -- (id)remoteID; -- (unsigned long)uid; -- (CDAnonymousStruct5)moreMessageFlags; -- (id)path; -- (id)account; -- (void)markAsViewed; -- (id)remoteMailboxURL; -- (id)originalMailboxURL; -- (id)URL; -- (id)persistentID; -- (id)bodyData; -- (id)headerData; -- (id)dataForMimePart:(id)fp8; -- (BOOL)hasCachedDataForMimePart:(id)fp8; -- (id)matadorAttributes; -- (void)_calculateAttachmentInfoFromBody:(id)fp8; -- (void)forceSetAttachmentInfoFromBody:(id)fp8; -- (void)setAttachmentInfoFromBody:(id)fp8; -- (void)setAttachmentInfoFromBody:(id)fp8 forced:(BOOL)fp12; -- (BOOL)calculateAttachmentInfoFromBody:(id)fp8 numberOfAttachments:(unsigned int *)fp12 isSigned:(char *)fp16 isEncrypted:(char *)fp20; -- (BOOL)calculateAttachmentInfoFromBody:(id)fp8 numberOfAttachments:(unsigned int *)fp12 isSigned:(char *)fp16 isEncrypted:(char *)fp20 force:(BOOL)fp24; -- (void)setNumberOfAttachments:(unsigned int)fp8 isSigned:(BOOL)fp12 isEncrypted:(BOOL)fp16; -- (double)dateCreatedAsTimeIntervalSince1970; -- (double)dateModifiedAsTimeIntervalSince1970; - -@end - -@interface Message (Threads) -- (BOOL)isThread; -- (BOOL)containsOnlyNotes; -- (BOOL)shouldUseSubjectForThreading; -@end - -@interface Message (ScriptingSupport) -- (id)objectSpecifier; -- (void)_setAppleScriptFlag:(id)fp8 state:(BOOL)fp12; -- (BOOL)isRead; -- (void)setIsRead:(BOOL)fp8; -- (BOOL)wasRepliedTo; -- (void)setWasRepliedTo:(BOOL)fp8; -- (BOOL)wasForwarded; -- (void)setWasForwarded:(BOOL)fp8; -- (BOOL)wasRedirected; -- (void)setWasRedirected:(BOOL)fp8; -- (BOOL)isJunk; -- (void)setIsJunk:(BOOL)fp8; -- (BOOL)isDeleted; -- (void)setIsDeleted:(BOOL)fp8; -- (BOOL)isFlagged; -- (void)setIsFlagged:(BOOL)fp8; -- (id)replyTo; -- (id)scriptedMessageSize; -- (id)content; -- (void)_addRecipientsForKey:(id)fp8 toArray:(id)fp12; -- (id)recipients; -- (id)toRecipients; -- (id)ccRecipients; -- (id)bccRecipients; -- (id)container; -- (void)setContainer:(id)fp8; -- (id)messageIDHeader; -- (id)rawSource; -- (id)allHeaders; -- (int)actionColorMessage; -- (void)setBackgroundColor:(int)fp8; -- (int)backgroundColor; -- (id)appleScriptHeaders; -- (id)appleScriptAttachments; -- (id)valueInAppleScriptAttachmentsWithUniqueID:(id)fp8; -@end - -@interface Message (LibraryAdditions) -- (id)metadataDictionary; -- (id)metadataPlist; -@end - -@interface Message (ParentalControl) -- (BOOL)isParentResponseMessage:(char *)fp8 isRejected:(char *)fp12 requestedAddresses:(id)fp16 requestIsForSenders:(char *)fp20; -- (BOOL)isChildRequestMessage:(id)fp8 requestIsForSenders:(char *)fp12 childAddress:(id *)fp16 permissionRequestState:(int *)fp20; -- (BOOL)isChildRequestMessage; -@end - -@interface Message (BackupAdditions) -- (id)backupID; -@end - -@interface Message (StringRendering) -- (void)renderHeaders:(id)fp8; -- (void)renderBody:(id)fp8; -- (void)renderString:(id)fp8; -@end - -@interface Message (MailViewerAdditions) -- (void)handleOpenAppleEvent:(id)fp8; -- (id)handleReplyToMessage:(id)fp8; -- (id)handleForwardMessage:(id)fp8; -- (id)handleRedirectMessage:(id)fp8; -- (void)handleBounceMessage:(id)fp8; -@end - -@interface Message (Chat) -+ (id)chatURLForEmails:(id)fp8; -@end - -#elif defined(TIGER) - -@class MessageHeaders; -@class MessageStore; - -typedef struct { - unsigned int colorHasBeenEvaluated:1; - unsigned int colorWasSetManually:1; - unsigned int redColor:8; - unsigned int greenColor:8; - unsigned int blueColor:8; - unsigned int loadingBody:1; - unsigned int unused:5; -} CDAnonymousStruct3; - -@interface Message : NSObject -{ - MessageStore *_store; - unsigned int _messageFlags; - CDAnonymousStruct3 _flags; - unsigned int _preferredEncoding; - NSString *_senderAddressComment; - unsigned int _dateSentInterval; - unsigned int _dateReceivedInterval; - unsigned int _dateLastViewedInterval; - NSString *_subject; - unsigned char _subjectPrefixLength; - NSString *_to; - NSString *_sender; - NSData *_messageIDHeaderDigest; - NSData *_inReplyToHeaderDigest; -} - -+ (void)initialize; -+ (id)verboseVersion; -+ (id)frameworkVersion; -+ (void)setUserAgent:(id)fp8; -+ (id)userAgent; -+ (id)messageWithRFC822Data:(id)fp8; -+ (id)forwardedMessagePrefixWithSpacer:(BOOL)fp8; -+ (id)replyPrefixWithSpacer:(BOOL)fp8; -+ (unsigned int)validatePriority:(int)fp8; -+ (unsigned int)displayablePriorityForPriority:(int)fp8; -+ (id)messageWithPersistentID:(id)fp8; -- (id)init; -- (id)copyWithZone:(struct _NSZone *)fp8; -- (id)messageStore; -- (void)setMessageStore:(id)fp8; -- (id)mailbox; -- (id)headers; -- (id)headersIfAvailable; -- (unsigned long)messageFlags; -- (void)setMessageFlags:(unsigned long)fp8; -- (id)messageBody; -- (id)messageBodyIfAvailable; -- (id)messageBodyUpdatingFlags:(BOOL)fp8; -- (id)messageBodyIfAvailableUpdatingFlags:(BOOL)fp8; -- (id)messageDataIncludingFromSpace:(BOOL)fp8; -- (BOOL)colorHasBeenEvaluated; -- (id)color; -- (void)setColor:(id)fp8; -- (void)setColorHasBeenEvaluated:(BOOL)fp8; -- (void)setColor:(id)fp8 hasBeenEvaluated:(BOOL)fp12 flags:(unsigned long)fp16; -- (void)dealloc; -- (void)finalize; -- (unsigned int)messageSize; -- (id)attributedString; -- (id)preferredEmailAddressToReplyWith; -- (id)messageID; -- (id)messageIDHeaderDigest; -- (void)unlockedSetMessageIDHeaderDigest:(id)fp8; -- (void)setMessageIDHeaderDigest:(id)fp8; -- (id)_messageIDHeaderDigestIvar; -- (BOOL)needsMessageIDHeader; -- (id)inReplyToHeaderDigest; -- (void)unlockedSetInReplyToHeaderDigest:(id)fp8; -- (void)setInReplyToHeaderDigest:(id)fp8; -- (id)_inReplyToHeaderDigestIvar; -- (int)compareByNumberWithMessage:(id)fp8; -- (BOOL)isMessageContentsLocallyAvailable; -- (id)headersForIndexingIncludingFullNamesAndDomains:(BOOL)fp8; -- (id)headersForIndexing; -- (id)headersForJunk; -- (id)stringForIndexingGettingHeadersIfAvailable:(id *)fp8 forJunk:(BOOL)fp12 updateBodyFlags:(BOOL)fp16; -- (id)stringForIndexingGettingHeadersIfAvailable:(id *)fp8 forJunk:(BOOL)fp12; -- (id)stringForIndexingGettingHeadersIfAvailable:(id *)fp8; -- (id)stringForIndexing; -- (id)stringForIndexingUpdatingBodyFlags:(BOOL)fp8; -- (id)stringForJunk; -- (unsigned int)numberOfAttachments; -- (int)junkMailLevel; -- (void)setPriorityFromHeaders:(id)fp8; -- (int)priority; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)fp8; -- (id)rawSourceFromHeaders:(id)fp8 body:(id)fp12; -- (BOOL)_doesDateAppearToBeSane:(id)fp8; -- (id)_dateFromReceivedHeadersInHeaders:(id)fp8; -- (id)_dateFromDateHeaderInHeaders:(id)fp8; -- (void)_setDateReceivedFromHeaders:(id)fp8; -- (void)_setDateSentFromHeaders:(id)fp8; -- (void)loadCachedHeaderValuesFromHeaders:(id)fp8; -- (id)subjectAndPrefixLength:(unsigned int *)fp8; -- (id)subjectNotIncludingReAndFwdPrefix; -- (id)subject; -- (void)setSubject:(id)fp8; -- (id)dateReceived; -- (id)dateSent; -- (void)setDateReceivedTimeIntervalSince1970:(double)fp8; -- (double)dateReceivedAsTimeIntervalSince1970; -- (BOOL)needsDateReceived; -- (double)dateSentAsTimeIntervalSince1970; -- (void)setDateSentTimeIntervalSince1970:(double)fp8; -- (id)dateLastViewed; -- (double)dateLastViewedAsTimeIntervalSince1970; -- (id)sender; -- (void)setSender:(id)fp8; -- (id)senderAddressComment; -- (id)to; -- (void)setTo:(id)fp8; -- (void)setMessageInfo:(id)fp8 to:(id)fp12 sender:(id)fp16 dateReceivedTimeIntervalSince1970:(double)fp20 dateSentTimeIntervalSince1970:(double)fp28 messageIDHeaderDigest:(id)fp36 inReplyToHeaderDigest:(id)fp40; -- (void)setMessageInfo:(id)fp8 to:(id)fp12 sender:(id)fp16 dateReceivedTimeIntervalSince1970:(double)fp20 dateSentTimeIntervalSince1970:(double)fp28 messageIDHeaderDigest:(id)fp36 inReplyToHeaderDigest:(id)fp40 dateLastViewedTimeIntervalSince1970:(double)fp44; -- (void)setMessageInfoFromMessage:(id)fp8; -- (id)references; -- (id)remoteID; -- (unsigned long)uid; -- (CDAnonymousStruct3)moreMessageFlags; -- (id)path; -- (id)account; -- (void)markAsViewed; -- (id)persistentID; -- (id)bodyData; -- (id)headerData; -- (id)dataForMimePart:(id)fp8; -- (id)matadorAttributes; - -@end - -@interface Message (Threads) -- (BOOL)isThread; -@end - -@interface Message (ScriptingSupport) -- (id)objectSpecifier; -- (void)_setAppleScriptFlag:(id)fp8 state:(BOOL)fp12; -- (BOOL)isRead; -- (void)setIsRead:(BOOL)fp8; -- (BOOL)wasRepliedTo; -- (void)setWasRepliedTo:(BOOL)fp8; -- (BOOL)wasForwarded; -- (void)setWasForwarded:(BOOL)fp8; -- (BOOL)wasRedirected; -- (void)setWasRedirected:(BOOL)fp8; -- (BOOL)isJunk; -- (void)setIsJunk:(BOOL)fp8; -- (BOOL)isDeleted; -- (void)setIsDeleted:(BOOL)fp8; -- (BOOL)isFlagged; -- (void)setIsFlagged:(BOOL)fp8; -- (id)replyTo; -- (id)scriptedMessageSize; -- (id)content; -- (void)_addRecipientsForKey:(id)fp8 toArray:(id)fp12; -- (id)recipients; -- (id)toRecipients; -- (id)ccRecipients; -- (id)bccRecipients; -- (id)container; -- (void)setContainer:(id)fp8; -- (id)messageIDHeader; -- (id)rawSource; -- (id)allHeaders; -- (int)actionColorMessage; -- (void)setBackgroundColor:(int)fp8; -- (id)appleScriptHeaders; -@end - -@interface Message (LibraryAdditions) -- (id)metadataDictionary; -- (id)metadataPlist; -- (BOOL)writeToDiskWithLibraryID:(unsigned int)fp8 bodyData:(id)fp12; -@end - -@interface Message (ParentalControl) -- (BOOL)isParentResponseMessage:(char *)fp8 isRejected:(char *)fp12 requestedAddresses:(id)fp16 requestIsForSenders:(char *)fp20; -- (BOOL)isChildRequestMessage:(id)fp8 requestIsForSenders:(char *)fp12 permissionRequestState:(int *)fp16; -- (BOOL)isChildRequestMessage; -@end - -#else - -@class MessageHeaders; -@class MessageStore; - -@interface Message:NSObject -{ - MessageStore *_store; // 4 = 0x4 - unsigned int _messageFlags; // 8 = 0x8 - struct { - int colorHasBeenEvaluated:1; - int colorWasSetManually:1; - int redColor:8; - int greenColor:8; - int blueColor:8; - int loadingBody:1; - int unused:5; - } _flags; // 12 = 0xc - unsigned int _preferredEncoding; // 16 = 0x10 - NSString *_senderAddressComment; // 20 = 0x14 - unsigned int _dateSentInterval; // 24 = 0x18 - unsigned int _dateReceivedInterval; // 28 = 0x1c - NSString *_subject; // 32 = 0x20 - unsigned char _subjectPrefixLength; // 36 = 0x24 - NSString *_to; // 40 = 0x28 - NSString *_sender; // 44 = 0x2c - NSData *_messageIDHeaderDigest; // 48 = 0x30 - NSData *_inReplyToHeaderDigest; // 52 = 0x34 -} - -+ (void)initialize; -+ verboseVersion; -+ frameworkVersion; -+ (void)setUserAgent:fp8; -+ userAgent; -+ messageWithRFC822Data:fp8; -+ _filenameFromSubject:fp8 inDirectory:fp12 ofType:fp16; -+ makeUniqueAttachmentNamed:fp8 inDirectory:fp12; -+ makeUniqueAttachmentNamed:fp8 withExtension:fp12 inDirectory:fp16; -- init; -- copyWithZone:(struct _NSZone *)fp8; -- messageStore; -- (void)setMessageStore:fp8; -- headers; -- (unsigned long)messageFlags; -- (void)setMessageFlags:(unsigned long)fp8; -- messageBody; -- messageBodyIfAvailable; -- messageDataIncludingFromSpace:(char)fp8; -- (char)colorHasBeenEvaluated; -- color; -- (void)setColor:fp8; -- (void)setColorHasBeenEvaluated:(char)fp8; -- (void)dealloc; -- (unsigned int)messageSize; -- attributedString; -- preferredEmailAddressToReplyWith; -- messageID; -- messageIDHeaderDigest; -- (void)unlockedSetMessageIDHeaderDigest:fp8; -- (void)setMessageIDHeaderDigest:fp8; -- _messageIDHeaderDigestIvar; -- (char)needsMessageIDHeader; -- inReplyToHeaderDigest; -- (void)unlockedSetInReplyToHeaderDigest:fp8; -- (void)setInReplyToHeaderDigest:fp8; -- _inReplyToHeaderDigestIvar; -- (int)compareByNumberWithMessage:fp8; -- (char)isMessageContentsLocallyAvailable; -- headersForIndexingIncludingFullNames:(char)fp8; -- headersForIndexing; -- headersForJunk; -- stringForIndexingGettingHeadersIfAvailable:(id *)fp8 forJunk:(char)fp12; -- stringForIndexingGettingHeadersIfAvailable:(id *)fp8; -- stringForIndexing; -- stringForJunk; -- (unsigned int)numberOfAttachments; -- (int)junkMailLevel; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)fp8; -- rawSourceFromHeaders:fp8 body:fp12; -- (char)_doesDateAppearToBeSane:fp8; -- _dateFromReceivedHeadersInHeaders:fp8; -- _dateFromDateHeaderInHeaders:fp8; -- (void)_setDateReceivedFromHeaders:fp8; -- (void)_setDateSentFromHeaders:fp8; -- (void)loadCachedHeaderValuesFromHeaders:fp8; -- subjectAndPrefixLength:(unsigned int *)fp8; -- subjectNotIncludingReAndFwdPrefix; -- subject; -- (void)setSubject:fp8; -- dateReceived; -- dateSent; -- (void)setDateReceivedTimeIntervalSince1970:(double)fp8; -- (double)dateReceivedAsTimeIntervalSince1970; -- (char)needsDateReceived; -- (double)dateSentAsTimeIntervalSince1970; -- (void)setDateSentTimeIntervalSince1970:(double)fp8; -- sender; -- (void)setSender:fp8; -- senderAddressComment; -- to; -- (void)setTo:fp8; -- (void)setMessageInfo:fp8 to:fp12 sender:fp16 dateReceivedTimeIntervalSince1970:(double)fp20 dateSentTimeIntervalSince1970:(double)fp28 messageIDHeaderDigest:fp36 inReplyToHeaderDigest:fp40; -- (void)setMessageInfoFromMessage:fp8; - -@end - -@interface Message(Threads) -- (char)isThread; -@end - -@interface Message(ScriptingSupport) -- objectSpecifier; -- (void)_setAppleScriptFlag:fp8 state:(char)fp12; -- (char)isRead; -- (void)setIsRead:(char)fp8; -- (char)wasRepliedTo; -- (void)setWasRepliedTo:(char)fp8; -- (char)wasForwarded; -- (void)setWasForwarded:(char)fp8; -- (char)wasRedirected; -- (void)setWasRedirected:(char)fp8; -- (char)isJunk; -- (void)setIsJunk:(char)fp8; -- (char)isDeleted; -- (void)setIsDeleted:(char)fp8; -- (char)isFlagged; -- (void)setIsFlagged:(char)fp8; -- replyTo; -- scriptedMessageSize; -- content; -- (void)_addRecipientsForKey:fp8 toArray:fp12; -- recipients; -- toRecipients; -- ccRecipients; -- bccRecipients; -- container; -- (void)setContainer:fp8; -- messageIDHeader; -- rawSource; -- allHeaders; -- (int)actionColorMessage; -- (void)setBackgroundColor:(int)fp8; -- appleScriptHeaders; -@end - -@interface Message(MailViewerAdditions) -- (void)handleOpenAppleEvent:fp8; -- handleReplyToMessage:fp8; -- handleForwardMessage:fp8; -- handleRedirectMessage:fp8; -- (void)handleBounceMessage:fp8; -@end - -@interface Message(Chat) -+ chatURLForEmails:fp8; -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MessageBody.h b/GPGMail/Source/PrivateHeaders/MessageBody.h deleted file mode 100644 index bdb2f2b4..00000000 --- a/GPGMail/Source/PrivateHeaders/MessageBody.h +++ /dev/null @@ -1,239 +0,0 @@ -/* MessageBody.h created by dave on Sun 09-Jan-2000 */ - -#import - -//extern NSString *MessageBodyWillBeDecodedNotification; -//extern NSString *MessageBodyWasDecodedNotification; -//extern NSString *MessageBodyWillBeEncodedNotification; -//extern NSString *MessageBodyWasEncodedNotification; - - -/* - This class is totally abstract (no instance created). - Messages have all MimeBody bodies, sometimes with type/subtype = nil/nil. - Newly created messages use a private direct subclass of MessageBody, _OutgoingMessageBody. - */ - -#ifdef SNOW_LEOPARD_64 - -@class Message; - -@interface MessageBody : NSObject -{ - BOOL _hideCalendarMimePart; - Message *_message; - long long _messageID; -} - -- (id)init; -@property Message *message; -- (id)attributedString; -- (BOOL)isHTML; -- (BOOL)isRich; -@property(readonly) BOOL isSignedByMe; -- (void)calculateNumberOfAttachmentsIfNeeded; -- (void)calculateNumberOfAttachmentsDecodeIfNeeded; -- (unsigned int)numberOfAttachmentsSigned:(char *)arg1 encrypted:(char *)arg2 numberOfTNEFAttachments:(unsigned int *)arg3; -- (id)attachments; -- (id)attachmentViewControllers; -- (id)attachmentFilenames; -- (id)textHtmlPart; -- (id)webArchive; -- (void)dealloc; -@property BOOL hideCalendarMimePart; // @synthesize hideCalendarMimePart=_hideCalendarMimePart; -@property Message *actualMessage; // @synthesize actualMessage=_message; -@property long long messageID; // @synthesize messageID=_messageID; - -@end - -@interface MessageBody (StringRendering) -- (void)renderString:(id)arg1; -@end - -@interface _OutgoingMessageBody : MessageBody -{ - NSMutableData *rawData; -} - -- (void)setMessage:(id)arg1; -- (void)clearMessageWithoutReleasing; -- (void)dealloc; -- (id)rawData; -- (void)setRawData:(id)arg1; -- (id)mutableData; - -@end - -#elif defined(SNOW_LEOPARD) - -@class Message; - -@interface MessageBody : NSObject -{ - BOOL _hideCalendarMimePart; - Message *_message; - long long _messageID; -} - -- (id)init; -- (void)setMessage:(id)arg1; -- (id)message; -- (id)attributedString; -- (BOOL)isHTML; -- (BOOL)isRich; -- (BOOL)isSignedByMe; -- (void)calculateNumberOfAttachmentsIfNeeded; -- (void)calculateNumberOfAttachmentsDecodeIfNeeded; -- (unsigned long)numberOfAttachmentsSigned:(char *)arg1 encrypted:(char *)arg2; -- (id)attachments; -- (id)attachmentViewControllers; -- (id)attachmentFilenames; -- (id)textHtmlPart; -- (id)webArchive; -- (void)dealloc; -- (BOOL)hideCalendarMimePart; -- (void)setHideCalendarMimePart:(BOOL)arg1; -- (id)actualMessage; -- (void)setActualMessage:(id)arg1; -- (long long)messageID; -- (void)setMessageID:(long long)arg1; - -@end - -@interface MessageBody (StringRendering) -- (void)renderString:(id)arg1; -@end - -@interface _OutgoingMessageBody : MessageBody -{ - NSMutableData *rawData; -} - -- (void)setMessage:(id)arg1; -- (void)clearMessageWithoutReleasing; -- (void)dealloc; -- (id)rawData; -- (void)setRawData:(id)arg1; -- (id)mutableData; - -@end - -#elif defined(LEOPARD) - -@class Message; - -@interface MessageBody : NSObject -{ - Message *_message; - unsigned int _messageID; - BOOL _isMessageIDValid; -} - -- (id)init; -- (void)setMessage:(id)fp8; -- (id)message; -- (id)attributedString; -- (BOOL)isHTML; -- (BOOL)isRich; -- (BOOL)isSignedByMe; -- (void)calculateNumberOfAttachmentsIfNeeded; -- (void)calculateNumberOfAttachmentsDecodeIfNeeded; -- (unsigned int)numberOfAttachmentsSigned:(char *)fp8 encrypted:(char *)fp12; -- (id)attachments; -- (id)attachmentFilenames; -- (id)textHtmlPart; -- (id)webArchive; -- (void)dealloc; -- (BOOL)isMessageIDValid; -- (void)setIsMessageIDValid:(BOOL)fp8; -- (id)actualMessage; -- (void)setActualMessage:(id)fp8; -- (unsigned int)messageID; -- (void)setMessageID:(unsigned int)fp8; - -@end - -@interface MessageBody (StringRendering) -- (void)renderString:(id)fp8; -@end - -@interface _OutgoingMessageBody : MessageBody -{ - NSMutableData *rawData; -} - -- (void)setMessage:(id)fp8; -- (void)clearMessageWithoutReleasing; -- (void)dealloc; -- (id)rawData; -- (void)setRawData:(id)fp8; -- (id)mutableData; - -@end - -#elif defined(TIGER) - -@class Message; - -@interface MessageBody : NSObject -{ - Message *_message; -} - -- (id)rawData; -- (id)attributedString; -- (BOOL)isHTML; -- (BOOL)isRich; -- (id)stringValueForJunkEvaluation:(BOOL)fp8; -- (void)setMessage:(id)fp8; -- (id)message; -- (void)calculateNumberOfAttachmentsIfNeeded; -- (void)calculateNumberOfAttachmentsDecodeIfNeeded; -- (id)attachments; -- (id)textHtmlPart; -- (id)webArchive; -- (void)dealloc; - -@end - -@interface _OutgoingMessageBody : MessageBody -{ - NSMutableData *rawData; -} - -- (void)dealloc; -- (void)finalize; -- (id)mutableData; -- (id)rawData; - -@end - -#else - -@class Message; - -@interface MessageBody:NSObject -{ - Message *_message; // 4 = 0x4 - NSString *_attachPath; // 8 = 0x8 -} - -+ defaultAttachmentDirectory; -+ (void)setDefaultAttachmentDirectory:fp8; -- rawData; -- attributedString; -- (char)isHTML; -- (char)isRich; -- (void)dealloc; -- stringForIndexing; -- (void)setMessage:fp8; -- message; -- (void)setAttachmentDirectory:fp8; -- attachmentDirectory; -- (void)calculateNumberOfAttachmentsIfNeeded; -- attachments; -- textHtmlPart; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MessageContentController.h b/GPGMail/Source/PrivateHeaders/MessageContentController.h deleted file mode 100644 index c4c7e2ef..00000000 --- a/GPGMail/Source/PrivateHeaders/MessageContentController.h +++ /dev/null @@ -1,1455 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -@protocol DocumentEditorManaging -- (void)registerDocumentEditor:(id)arg1; -- (void)unregisterDocumentEditor:(id)arg1; -@end - -@protocol MessageContentDisplay -+ (id)copyDocumentForMessage:(id)arg1 viewingState:(id)arg2; -- (id)contentView; -- (id)textView; -- (void)display:(id)arg1 inContainerView:(id)arg2 replacingView:(id)arg3 invokeWhenDisplayChanged:(id)arg4; -- (void)prepareToRemoveView; -- (void)highlightSearchText:(id)arg1; -- (id)selectedText; -- (id)selectedTextRepresentation; -- (void)setSelectedTextRepresentation:(id)arg1; -- (id)selectionParsedMessage; -- (id)attachmentsInSelection; -- (id)parsedMessage; -- (void)adjustFontSizeBy:(long long)arg1 viewingState:(id)arg2; -- (id)findTarget; -- (void)detectDataInMessage:(id)arg1 usingContext:(id)arg2; -- (void)cancelDataDetection; - -@optional -- (BOOL)isOkayToDownloadAttachment:(id)arg1; -@property id delegate; -@end - -@class Message; -@class ActivityMonitor; -@class MimeBody; -@class MFError; - -@interface MessageViewingState : NSObject -{ - NSAttributedString *_headerAttributedString; - NSDictionary *_addressAttachments; - NSDictionary *_plainAddresses; - NSSet *_expandedAddressKeys; - NSAttributedString *_attachmentsDescription; - NSArray *_headerOrder; - NSArray *_attachments; - Message *_message; - ActivityMonitor *_monitor; - MimeBody *mimeBody; - id document; - MFError *error; - long long headerIndent; - long long headerFontAdjustmentDebt; - int preferredAlternative; - BOOL accountWasOffline; - BOOL dontCache; - BOOL showAllHeaders; - BOOL showDefaultHeaders; - BOOL isPrinting; - BOOL viewSource; - BOOL showControlChars; - BOOL showAttachments; - BOOL downloadRemoteURLs; - BOOL triedToDownloadRemoteURLs; - BOOL messageIsFromMicrosoft; - BOOL isChildRequestForSenders; - int displayType; - unsigned int preferredEncoding; - NSString *sender; - NSString *senderName; - NSString *childAddress; - NSArray *requestedAddressesFromChild; - id displayer; - id editor; -} - -+ (void)initialize; -- (void)release; -- (void)dealloc; -- (id)init; -@property(retain) id editor; -- (void)editorClosed:(id)arg1; -@property(retain, nonatomic) MimeBody *mimeBody; // @synthesize mimeBody; -@property(readonly) NSArray *attachments; -@property(retain) NSAttributedString *headerAttributedString; -@property(retain) NSDictionary *plainAddresses; -@property(retain) NSDictionary *addressAttachments; -@property(retain) NSSet *expandedAddressKeys; -@property(retain) NSAttributedString *attachmentsDescription; -@property(retain) NSArray *headerOrder; -@property(readonly) int headerDetailLevel; -- (id)description; -@property(retain) ActivityMonitor *monitor; // @synthesize monitor=_monitor; -@property(retain) Message *message; // @synthesize message=_message; -@property(retain, nonatomic) id displayer; // @synthesize displayer; -@property(retain, nonatomic) NSArray *requestedAddressesFromChild; // @synthesize requestedAddressesFromChild; -@property(copy, nonatomic) NSString *childAddress; // @synthesize childAddress; -@property(copy, nonatomic) NSString *senderName; // @synthesize senderName; -@property(copy, nonatomic) NSString *sender; // @synthesize sender; -@property(nonatomic) unsigned int preferredEncoding; // @synthesize preferredEncoding; -@property(nonatomic) int displayType; // @synthesize displayType; -@property(nonatomic) BOOL isChildRequestForSenders; // @synthesize isChildRequestForSenders; -@property(nonatomic) BOOL messageIsFromMicrosoft; // @synthesize messageIsFromMicrosoft; -@property(nonatomic) BOOL triedToDownloadRemoteURLs; // @synthesize triedToDownloadRemoteURLs; -@property(nonatomic) BOOL downloadRemoteURLs; // @synthesize downloadRemoteURLs; -@property(nonatomic) BOOL showAttachments; // @synthesize showAttachments; -@property(nonatomic) BOOL showControlChars; // @synthesize showControlChars; -@property(nonatomic) BOOL viewSource; // @synthesize viewSource; -@property(nonatomic) BOOL isPrinting; // @synthesize isPrinting; -@property(nonatomic) BOOL showDefaultHeaders; // @synthesize showDefaultHeaders; -@property(nonatomic) BOOL showAllHeaders; // @synthesize showAllHeaders; -@property(nonatomic) BOOL dontCache; // @synthesize dontCache; -@property(nonatomic) BOOL accountWasOffline; // @synthesize accountWasOffline; -@property(nonatomic) int preferredAlternative; // @synthesize preferredAlternative; -@property(nonatomic) long long headerFontAdjustmentDebt; // @synthesize headerFontAdjustmentDebt; -@property(nonatomic) long long headerIndent; // @synthesize headerIndent; -@property(retain, nonatomic) MFError *error; // @synthesize error; -@property(retain, nonatomic) id document; // @synthesize document; - -@end - -@class TextMessageDisplay; -@class MessageHeaderDisplay; -@class HeaderAttachmentsView; -@class InvocationQueue; -@class ColorBackgroundView; -@class EmbeddedNoteDocumentEditor; -@class MessageBody; - -@interface MessageContentController : NSResponder -{ - Message *_message; - ActivityMonitor *_documentMonitor; - ActivityMonitor *_urlificationMonitor; - id _currentDisplay; - id _threadDisplay; - TextMessageDisplay *textDisplay; - MessageHeaderDisplay *headerDisplay; - NSView *contentContainerView; - NSView *junkMailView; - NSTextField *junkMailMessageField; - NSButton *junkMailLoadHTMLButton; - NSView *calendarBannerView; - NSTextField *calendarEventTitle; - NSTextField *calendarEventTime; - NSButton *calendarOpeniCalButton; - NSView *loadImagesView; - NSView *certificateView; - NSImageView *certificateImage; - NSTextField *certificateMessageField; - NSButton *certificateHelpButton; - NSView *childBannerView; - NSTextField *childBannerMessageField; - NSImageView *childBannerImage; - NSButton *childBannerButton; - NSButton *childBannerHelpButton; - NSView *parentBannerView; - NSTextField *parentBannerMessageField; - NSImageView *parentBannerImage; - NSButton *parentBannerButton; - HeaderAttachmentsView *attachmentsView; - NSCache *_documentCache; - InvocationQueue *invocationQueue; - double _foregroundLoadStartTime; - double _backgroundLoadStartTime; - double _backgroundLoadEndTime; - NSString *_messageIDToRestoreInitialStateFor; - struct CGRect _initialVisibleRect; - struct _NSRange _initialSelectedRange; - NSArray *mostRecentHeaderOrder; - NSTimer *_fadeTimer; - ColorBackgroundView *_currentBanner; - BOOL _hideBannerBorder; - NSTextField *_widthResizableTextFieldInCurrentBanner; - NSView *_rightNeighborOfWidthResizableTextFieldInCurrentBanner; - BOOL isForPrinting; - BOOL showDefaultHeadersStickily; - MessageViewingState *stickyViewingState; - MessageViewingState *_viewingState; - NSMutableDictionary *_editorCache; - EmbeddedNoteDocumentEditor *_currentEditor; - double _accumulatedMagnification; - BOOL _canZoomIn; - BOOL _canZoomOut; -} - -+ (void)setClass:(Class)arg1 forDisplayType:(id)arg2; -+ (id)keyPathsForValuesAffectingShouldHideMeetingRequestButtons; -+ (id)keyPathsForValuesAffectingShouldHideMeetingCancellationOKButton; -- (id)init; -- (id)documentEditors; -- (void)registerDocumentEditor:(id)arg1; -- (void)unregisterDocumentEditor:(id)arg1; -- (void)setIsForPrinting:(BOOL)arg1; -- (id)_documentCache; -- (void)setContentContainerView:(id)arg1; -- (void)setCalendarBannerView:(id)arg1; -- (void)setLoadImagesView:(id)arg1; -- (void)setJunkMailView:(id)arg1; -- (void)setCertificateView:(id)arg1; -- (void)setChildBannerView:(id)arg1; -- (void)setParentBannerView:(id)arg1; -- (void)readDefaultsFromDictionary:(id)arg1; -- (void)writeDefaultsToDictionary:(id)arg1; -@property(retain) NSMutableDictionary *editorCache; // @synthesize editorCache=_editorCache; -- (void)release; -- (void)dealloc; -- (void)_stopBackgroundMessageLoading:(BOOL)arg1 URLification:(BOOL)arg2 dataDetection:(BOOL)arg3; -- (void)stopAllActivity; -- (id)documentView; -- (id)bannerView; -- (id)currentDisplay; -- (void)_updateIfDisplayingMessage:(id)arg1; -@property(retain) MessageViewingState *viewingState; -- (void)_fetchDataForMessageAndUpdateDisplay:(id)arg1; -- (void)_messageMayHaveBecomeAvailable; -- (id)_messageTilingView; -- (void)fadeToEmpty; -- (void)_pushDocumentToCache; -- (void)_doUrlificationAndDataDetectionForViewingState:(id)arg1; -- (void)_backgroundLoadFinished:(id)arg1; -- (void)setMessage:(id)arg1 headerOrder:(id)arg2; -- (void)_setMessage:(id)arg1 headerOrder:(id)arg2; -- (void)fetchEditorForMessage:(id)arg1 viewingState:(id)arg2; -- (void)editorDidLoad:(id)arg1; -- (void)editorFailedLoad:(id)arg1; -- (id)existingEditor:(Class)arg1 forDocument:(id)arg2; -- (void)_fetchContentsForMessage:(id)arg1 fromStore:(id)arg2 withViewingState:(id)arg3; -- (BOOL)canAddNoteToMessage; -- (BOOL)canAddToDoToMessage; -- (void)webMessageController:(id)arg1 willDisplayMenuItems:(id)arg2; -- (void)addAssociatedToDo:(id)arg1; -- (void)_startBackgroundLoad:(id)arg1; -- (void)_setInvocationQueue:(id)arg1; -- (void)setMostRecentHeaderOrder:(id)arg1; -- (void)reloadCurrentMessage; -- (void)viewerPreferencesChanged:(id)arg1; -- (void)_removeCurrentBanner; -- (void)_bannerResized:(id)arg1; -- (void)_contentViewResized:(id)arg1; -- (void)_showBannerView:(id)arg1; -- (void)_showLoadImagesBanner; -- (void)_showCertificateBanner; -@property(readonly) BOOL shouldHideMeetingRequestButtons; // @dynamic shouldHideMeetingRequestButtons; -@property(readonly) BOOL shouldHideMeetingCancellationOKButton; // @dynamic shouldHideMeetingCancellationOKButton; -- (void)_showCalendarBanner; -- (id)_eventForCurrentMessage; -- (id)_titleForEvent:(id)arg1; -- (id)_dateStringForEvent:(id)arg1; -- (void)_showJunkBanner; -- (BOOL)_showBannerIfMessageIsOutgoingMessageWaitingForParentApproval; -- (BOOL)_showBannerIfMessageIsPermissionRequestFromChild; -- (void)_updateBanner; -- (void)setShowRevealMessageLink:(BOOL)arg1; -- (BOOL)showRevealMessageLink; -- (void)_addRecentAddress:(id)arg1; -- (void)markAsNotJunkMailClicked:(id)arg1; -- (void)_setJunkLevelToNotJunk; -- (void)approveChildRequest:(id)arg1; -- (void)rejectChildRequest:(id)arg1; -- (void)sendMeetingResponse:(id)arg1; -- (void)openIniCal:(id)arg1; -- (void)sendMessage:(id)arg1; -- (void)_messageFlagsDidChange:(id)arg1; -- (void)_messagesDidUpdate:(id)arg1; -- (void)closeEditors; -- (id)editorForNote:(id)arg1 message:(id)arg2; -- (id)editorForNote:(id)arg1 message:(id)arg2 isPaperless:(BOOL)arg3 willLoad:(char *)arg4; -- (void)_updateEditorDisplay; -- (id)_dataDetectorsContextForMessage:(id)arg1; -- (void)_updateDisplay; -- (void)editorClosed:(id)arg1; -@property(retain) EmbeddedNoteDocumentEditor *currentEditor; // @synthesize currentEditor=_currentEditor; -- (void)_setCurrentDisplay:(id)arg1; -- (void)_displayChanged; -- (void)highlightSearchText:(id)arg1; -- (id)attachmentsView; -- (id)textView; -- (id)selectedText; -- (id)selectionParsedMessage; -- (id)attachmentsInSelection; -- (id)parsedMessage; -- (void)clearCache; -- (void)clearCacheForMessage:(id)arg1; -- (void)removeCacheObjectForKey:(id)arg1; -- (void)setCacheObject:(id)arg1 forKey:(id)arg2; -- (id)cacheObjectForKey:(id)arg1; -- (id)viewingStateForMessage:(id)arg1; -- (void)cacheViewingState:(id)arg1 forMessage:(id)arg2; -- (void)initPrintInfo; -- (int)headerDetailLevel; -- (BOOL)showingAllHeaders; -- (void)setShowAllHeaders:(BOOL)arg1; -- (BOOL)remoteAttachmentsAreDownloaded; -- (void)makeStickyInfoFromViewingState:(id)arg1; -- (void)makeStickyShowDefaultHeaders; -- (void)keyDown:(id)arg1; -- (void)resetGestureState; -- (void)beginGestureWithEvent:(id)arg1; -- (void)endGestureWithEvent:(id)arg1; -- (void)magnifyWithEvent:(id)arg1; -- (BOOL)pageDown; -- (BOOL)pageUp; -- (BOOL)currentlyViewingSource; -- (BOOL)validateUserInterfaceItem:(id)arg1; -- (id)findTarget; -- (BOOL)validateToolbarItem:(id)arg1; -- (BOOL)validateMenuItem:(id)arg1; -- (void)showAllHeaders:(id)arg1; -- (void)showFilteredHeaders:(id)arg1; -- (void)viewSource:(id)arg1; -- (void)toggleShowControlCharacters:(id)arg1; -- (void)showFirstAlternative:(id)arg1; -- (void)showPreviousAlternative:(id)arg1; -- (void)showNextAlternative:(id)arg1; -- (void)_messageWouldHaveLoadedRemoteURL:(id)arg1; -- (void)downloadRemoteContent:(id)arg1; -- (void)showCertificate:(id)arg1; -- (void)certificateTrustSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (void)showBestAlternative:(id)arg1; -- (void)changeTextEncoding:(id)arg1; -- (void)makeFontBigger:(id)arg1; -- (void)makeFontSmaller:(id)arg1; -- (void)jumpToSelection:(id)arg1; -- (void)takeFindStringFromSelection:(id)arg1; -- (void)saveAttachments:(id)arg1; -- (void)saveAttachmentsWithoutPrompting:(id)arg1; -@property(retain, nonatomic) Message *message; // @synthesize message=_message; -@property(retain) ActivityMonitor *urlificationMonitor; // @synthesize urlificationMonitor=_urlificationMonitor; -@property(retain) ActivityMonitor *documentMonitor; // @synthesize documentMonitor=_documentMonitor; - -@end - -#elif defined(SNOW_LEOPARD) - -@class Message; -@class ActivityMonitor; -@class MimeBody; -@class MFError; -@class TextMessageDisplay; -@class MessageHeaderDisplay; -@class HeaderAttachmentsView; -@class NSCache; -@class InvocationQueue; -@class ColorBackgroundView; -@class EmbeddedNoteDocumentEditor; - -@protocol DocumentEditorManaging -- (void)registerDocumentEditor:(id)arg1; -- (void)unregisterDocumentEditor:(id)arg1; -@end - -@protocol MessageContentDisplay -+ (id)copyDocumentForMessage:(id)arg1 viewingState:(id)arg2; -- (id)contentView; -- (id)textView; -- (void)display:(id)arg1 inContainerView:(id)arg2 replacingView:(id)arg3 invokeWhenDisplayChanged:(id)arg4; -- (void)prepareToRemoveView; -- (void)highlightSearchText:(id)arg1; -- (id)selectedText; -- (id)selectedTextRepresentation; -- (void)setSelectedTextRepresentation:(id)arg1; -- (id)selectionParsedMessage; -- (id)attachmentsInSelection; -- (id)parsedMessage; -- (void)adjustFontSizeBy:(long)arg1 viewingState:(id)arg2; -- (id)findTarget; -- (void)detectDataInMessage:(id)arg1 usingContext:(id)arg2; -- (void)cancelDataDetection; -@end - -@interface MessageViewingState : NSObject -{ - NSAttributedString *_headerAttributedString; - NSDictionary *_addressAttachments; - NSDictionary *_plainAddresses; - NSSet *_expandedAddressKeys; - NSAttributedString *_attachmentsDescription; - NSArray *_headerOrder; - NSArray *_attachments; - Message *_message; - ActivityMonitor *_monitor; - MimeBody *mimeBody; - id document; - MFError *error; - int headerIndent; - int headerFontAdjustmentDebt; - int preferredAlternative; - BOOL accountWasOffline; - BOOL dontCache; - BOOL showAllHeaders; - BOOL showDefaultHeaders; - BOOL isPrinting; - BOOL viewSource; - BOOL showControlChars; - BOOL showAttachments; - BOOL downloadRemoteURLs; - BOOL triedToDownloadRemoteURLs; - BOOL messageIsFromMicrosoft; - BOOL isChildRequestForSenders; - int displayType; - unsigned int preferredEncoding; - NSString *sender; - NSString *senderName; - NSString *childAddress; - NSArray *requestedAddressesFromChild; - id displayer; - id editor; -} - -+ (void)initialize; -- (void)release; -- (void)dealloc; -- (id)init; -- (id)editor; -- (void)setEditor:(id)arg1; -- (void)editorClosed:(id)arg1; -- (id)mimeBody; -- (id)attachments; -- (id)headerAttributedString; -- (void)setHeaderAttributedString:(id)arg1; -- (id)plainAddresses; -- (void)setPlainAddresses:(id)arg1; -- (id)addressAttachments; -- (void)setAddressAttachments:(id)arg1; -- (id)expandedAddressKeys; -- (void)setExpandedAddressKeys:(id)arg1; -- (id)attachmentsDescription; -- (void)setAttachmentsDescription:(id)arg1; -- (id)headerOrder; -- (void)setHeaderOrder:(id)arg1; -- (int)headerDetailLevel; -- (id)description; -- (id)monitor; -- (void)setMonitor:(id)arg1; -- (id)message; -- (void)setMessage:(id)arg1; -- (id)displayer; -- (void)setDisplayer:(id)arg1; -- (id)requestedAddressesFromChild; -- (void)setRequestedAddressesFromChild:(id)arg1; -- (id)childAddress; -- (void)setChildAddress:(id)arg1; -- (id)senderName; -- (void)setSenderName:(id)arg1; -- (id)sender; -- (void)setSender:(id)arg1; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)arg1; -- (int)displayType; -- (void)setDisplayType:(int)arg1; -- (BOOL)isChildRequestForSenders; -- (void)setIsChildRequestForSenders:(BOOL)arg1; -- (BOOL)messageIsFromMicrosoft; -- (void)setMessageIsFromMicrosoft:(BOOL)arg1; -- (BOOL)triedToDownloadRemoteURLs; -- (void)setTriedToDownloadRemoteURLs:(BOOL)arg1; -- (BOOL)downloadRemoteURLs; -- (void)setDownloadRemoteURLs:(BOOL)arg1; -- (BOOL)showAttachments; -- (void)setShowAttachments:(BOOL)arg1; -- (BOOL)showControlChars; -- (void)setShowControlChars:(BOOL)arg1; -- (BOOL)viewSource; -- (void)setViewSource:(BOOL)arg1; -- (BOOL)isPrinting; -- (void)setIsPrinting:(BOOL)arg1; -- (BOOL)showDefaultHeaders; -- (void)setShowDefaultHeaders:(BOOL)arg1; -- (BOOL)showAllHeaders; -- (void)setShowAllHeaders:(BOOL)arg1; -- (BOOL)dontCache; -- (void)setDontCache:(BOOL)arg1; -- (BOOL)accountWasOffline; -- (void)setAccountWasOffline:(BOOL)arg1; -- (int)preferredAlternative; -- (void)setPreferredAlternative:(int)arg1; -- (long)headerFontAdjustmentDebt; -- (void)setHeaderFontAdjustmentDebt:(long)arg1; -- (long)headerIndent; -- (void)setHeaderIndent:(long)arg1; -- (id)error; -- (void)setError:(id)arg1; -- (id)document; -- (void)setDocument:(id)arg1; -- (void)setMimeBody:(id)arg1; - -@end - -@interface MessageContentController : NSResponder -{ - Message *_message; - ActivityMonitor *_documentMonitor; - ActivityMonitor *_urlificationMonitor; - id _currentDisplay; - id _threadDisplay; - TextMessageDisplay *textDisplay; - MessageHeaderDisplay *headerDisplay; - NSView *contentContainerView; - NSView *junkMailView; - NSTextField *junkMailMessageField; - NSButton *junkMailLoadHTMLButton; - NSView *calendarBannerView; - NSTextField *calendarEventTitle; - NSTextField *calendarEventTime; - NSButton *calendarOpeniCalButton; - NSView *loadImagesView; - NSView *certificateView; - NSImageView *certificateImage; - NSTextField *certificateMessageField; - NSButton *certificateHelpButton; - NSView *childBannerView; - NSTextField *childBannerMessageField; - NSImageView *childBannerImage; - NSButton *childBannerButton; - NSButton *childBannerHelpButton; - NSView *parentBannerView; - NSTextField *parentBannerMessageField; - NSImageView *parentBannerImage; - NSButton *parentBannerButton; - HeaderAttachmentsView *attachmentsView; - NSCache *_documentCache; - InvocationQueue *invocationQueue; - double _foregroundLoadStartTime; - double _backgroundLoadStartTime; - double _backgroundLoadEndTime; - NSString *_messageIDToRestoreInitialStateFor; - struct CGRect _initialVisibleRect; - struct _NSRange _initialSelectedRange; - NSArray *mostRecentHeaderOrder; - NSTimer *_fadeTimer; - ColorBackgroundView *_currentBanner; - BOOL _hideBannerBorder; - NSTextField *_widthResizableTextFieldInCurrentBanner; - NSView *_rightNeighborOfWidthResizableTextFieldInCurrentBanner; - BOOL isForPrinting; - BOOL showDefaultHeadersStickily; - MessageViewingState *stickyViewingState; - MessageViewingState *_viewingState; - NSMutableDictionary *_editorCache; - EmbeddedNoteDocumentEditor *_currentEditor; - float _accumulatedMagnification; - BOOL _canZoomIn; - BOOL _canZoomOut; -} - -+ (void)setClass:(Class)arg1 forDisplayType:(id)arg2; -+ (id)keyPathsForValuesAffectingShouldHideMeetingRequestButtons; -+ (id)keyPathsForValuesAffectingShouldHideMeetingCancellationOKButton; -- (id)init; -- (id)documentEditors; -- (void)registerDocumentEditor:(id)arg1; -- (void)unregisterDocumentEditor:(id)arg1; -- (void)setIsForPrinting:(BOOL)arg1; -- (id)_documentCache; -- (void)setContentContainerView:(id)arg1; -- (void)setCalendarBannerView:(id)arg1; -- (void)setLoadImagesView:(id)arg1; -- (void)setJunkMailView:(id)arg1; -- (void)setCertificateView:(id)arg1; -- (void)setChildBannerView:(id)arg1; -- (void)setParentBannerView:(id)arg1; -- (void)readDefaultsFromDictionary:(id)arg1; -- (void)writeDefaultsToDictionary:(id)arg1; -- (void)setEditorCache:(id)arg1; -- (void)release; -- (void)dealloc; -- (void)_stopBackgroundMessageLoading:(BOOL)arg1 URLification:(BOOL)arg2 dataDetection:(BOOL)arg3; -- (void)stopAllActivity; -- (id)documentView; -- (id)bannerView; -- (id)currentDisplay; -- (void)_updateIfDisplayingMessage:(id)arg1; -- (id)viewingState; -- (void)setViewingState:(id)arg1; -- (void)_fetchDataForMessageAndUpdateDisplay:(id)arg1; -- (void)_messageMayHaveBecomeAvailable; -- (id)_messageTilingView; -- (void)fadeToEmpty; -- (void)_pushDocumentToCache; -- (void)_doUrlificationAndDataDetectionForViewingState:(id)arg1; -- (void)_backgroundLoadFinished:(id)arg1; -- (void)setMessage:(id)arg1 headerOrder:(id)arg2; -- (void)_setMessage:(id)arg1 headerOrder:(id)arg2; -- (void)fetchEditorForMessage:(id)arg1 viewingState:(id)arg2; -- (void)editorDidLoad:(id)arg1; -- (void)editorFailedLoad:(id)arg1; -- (id)existingEditor:(Class)arg1 forDocument:(id)arg2; -- (void)_fetchContentsForMessage:(id)arg1 fromStore:(id)arg2 withViewingState:(id)arg3; -- (BOOL)canAddNoteToMessage; -- (BOOL)canAddToDoToMessage; -- (void)webMessageController:(id)arg1 willDisplayMenuItems:(id)arg2; -- (void)addAssociatedToDo:(id)arg1; -- (void)_startBackgroundLoad:(id)arg1; -- (void)_setInvocationQueue:(id)arg1; -- (void)setMostRecentHeaderOrder:(id)arg1; -- (void)reloadCurrentMessage; -- (void)viewerPreferencesChanged:(id)arg1; -- (void)_removeCurrentBanner; -- (void)_bannerResized:(id)arg1; -- (void)_contentViewResized:(id)arg1; -- (void)_showBannerView:(id)arg1; -- (void)_showLoadImagesBanner; -- (void)_showCertificateBanner; -- (BOOL)shouldHideMeetingRequestButtons; -- (BOOL)shouldHideMeetingCancellationOKButton; -- (void)_showCalendarBanner; -- (id)_eventForCurrentMessage; -- (id)_titleForEvent:(id)arg1; -- (id)_dateStringForEvent:(id)arg1; -- (void)_showJunkBanner; -- (BOOL)_showBannerIfMessageIsOutgoingMessageWaitingForParentApproval; -- (BOOL)_showBannerIfMessageIsPermissionRequestFromChild; -- (void)_updateBanner; -- (void)setShowRevealMessageLink:(BOOL)arg1; -- (BOOL)showRevealMessageLink; -- (void)_addRecentAddress:(id)arg1; -- (void)markAsNotJunkMailClicked:(id)arg1; -- (void)_setJunkLevelToNotJunk; -- (void)approveChildRequest:(id)arg1; -- (void)rejectChildRequest:(id)arg1; -- (void)sendMeetingResponse:(id)arg1; -- (void)openIniCal:(id)arg1; -- (void)sendMessage:(id)arg1; -- (void)_messageFlagsDidChange:(id)arg1; -- (void)_messagesDidUpdate:(id)arg1; -- (void)closeEditors; -- (id)editorForNote:(id)arg1 message:(id)arg2; -- (id)editorForNote:(id)arg1 message:(id)arg2 isPaperless:(BOOL)arg3 willLoad:(char *)arg4; -- (void)_updateEditorDisplay; -- (id)_dataDetectorsContextForMessage:(id)arg1; -- (void)_updateDisplay; -- (void)editorClosed:(id)arg1; -- (void)setCurrentEditor:(id)arg1; -- (void)_setCurrentDisplay:(id)arg1; -- (void)_displayChanged; -- (void)highlightSearchText:(id)arg1; -- (id)attachmentsView; -- (id)textView; -- (id)selectedText; -- (id)selectionParsedMessage; -- (id)attachmentsInSelection; -- (id)parsedMessage; -- (void)clearCache; -- (void)clearCacheForMessage:(id)arg1; -- (void)removeCacheObjectForKey:(id)arg1; -- (void)setCacheObject:(id)arg1 forKey:(id)arg2; -- (id)cacheObjectForKey:(id)arg1; -- (id)viewingStateForMessage:(id)arg1; -- (void)cacheViewingState:(id)arg1 forMessage:(id)arg2; -- (void)initPrintInfo; -- (int)headerDetailLevel; -- (BOOL)showingAllHeaders; -- (void)setShowAllHeaders:(BOOL)arg1; -- (BOOL)remoteAttachmentsAreDownloaded; -- (void)makeStickyInfoFromViewingState:(id)arg1; -- (void)makeStickyShowDefaultHeaders; -- (void)keyDown:(id)arg1; -- (void)resetGestureState; -- (void)beginGestureWithEvent:(id)arg1; -- (void)endGestureWithEvent:(id)arg1; -- (void)magnifyWithEvent:(id)arg1; -- (BOOL)pageDown; -- (BOOL)pageUp; -- (BOOL)currentlyViewingSource; -- (BOOL)validateUserInterfaceItem:(id)arg1; -- (id)findTarget; -- (BOOL)validateToolbarItem:(id)arg1; -- (BOOL)validateMenuItem:(id)arg1; -- (void)showAllHeaders:(id)arg1; -- (void)showFilteredHeaders:(id)arg1; -- (void)viewSource:(id)arg1; -- (void)toggleShowControlCharacters:(id)arg1; -- (void)showFirstAlternative:(id)arg1; -- (void)showPreviousAlternative:(id)arg1; -- (void)showNextAlternative:(id)arg1; -- (void)_messageWouldHaveLoadedRemoteURL:(id)arg1; -- (void)downloadRemoteContent:(id)arg1; -- (void)showCertificate:(id)arg1; -- (void)certificateTrustSheetDidEnd:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (void)showBestAlternative:(id)arg1; -- (void)changeTextEncoding:(id)arg1; -- (void)makeFontBigger:(id)arg1; -- (void)makeFontSmaller:(id)arg1; -- (void)jumpToSelection:(id)arg1; -- (void)takeFindStringFromSelection:(id)arg1; -- (void)saveAttachments:(id)arg1; -- (void)saveAttachmentsWithoutPrompting:(id)arg1; -- (id)message; -- (void)setMessage:(id)arg1; -- (id)urlificationMonitor; -- (void)setUrlificationMonitor:(id)arg1; -- (id)documentMonitor; -- (void)setDocumentMonitor:(id)arg1; -- (id)currentEditor; -- (id)editorCache; - -@end - - -#elif defined(LEOPARD) - -//extern NSString *MessageWillBeDisplayedInView; -//extern NSString *MessageWillNoLongerBeDisplayedInView; -// Object is MessageContentController -// UserInfo: -// MessageKey = Message -// MessageViewKey = MessageTextView - -@class Message; -@class ActivityMonitor; -@class MimeBody; -@class MFError; -@class TextMessageDisplay; -@class MessageHeaderDisplay; -@class AttachmentsView; -@class ObjectCache; -@class InvocationQueue; -@class MessageViewingState; -@class EmbeddedNoteDocumentEditor; - -@protocol DocumentEditorManaging -- (void)registerDocumentEditor:(id)fp8; -- (void)unregisterDocumentEditor:(id)fp8; -@end - -@protocol MessageContentDisplay -+ (id)copyDocumentForMessage:(id)fp8 viewingState:(id)fp12; -- (id)contentView; -- (id)textView; -- (void)display:(id)fp8 inContainerView:(id)fp12 replacingView:(id)fp16 invokeWhenDisplayChanged:(id)fp20; -- (void)prepareToRemoveView; -- (void)highlightSearchText:(id)fp8; -- (id)selectedText; -- (id)selectedTextRepresentation; -- (void)setSelectedTextRepresentation:(id)fp8; -- (id)selectedWebArchive; -- (id)attachmentsInSelection; -- (id)webArchiveBaseURL:(id *)fp8; -- (void)adjustFontSizeBy:(int)fp8 viewingState:(id)fp12; -- (id)findTarget; -- (struct __CFDictionary *)stringsForURLification; -- (void)updateURLMatches:(id)fp8 viewingState:(id)fp12; -- (void)detectDataInMessage:(id)fp8 usingContext:(id)fp12; -- (id)delegate; -- (void)setDelegate:(id)fp8; -@end - -@interface MessageViewingState : NSObject -{ - NSAttributedString *_headerAttributedString; - NSDictionary *_addressAttachments; - NSDictionary *_plainAddresses; - NSSet *_expandedAddressKeys; - NSAttributedString *_attachmentsDescription; - NSArray *_headerOrder; - NSArray *_attachments; - Message *_message; - ActivityMonitor *_monitor; - MimeBody *mimeBody; - id document; - MFError *error; - int headerIndent; - int headerFontAdjustmentDebt; - unsigned int preferredAlternative:23; - unsigned int accountWasOffline:1; - unsigned int dontCache:1; - unsigned int showAllHeaders:1; - unsigned int showDefaultHeaders:1; - unsigned int isPrinting:1; - unsigned int viewSource:1; - unsigned int showControlChars:1; - unsigned int showAttachments:1; - unsigned int downloadRemoteURLs:1; - unsigned int triedToDownloadRemoteURLs:1; - unsigned int messageIsFromMicrosoft:1; - unsigned int isChildRequestForSenders:1; - int displayType; - unsigned int preferredEncoding; - NSString *sender; - NSString *senderName; - int priority; - NSString *childAddress; - NSArray *requestedAddressesFromChild; - id displayer; - id editor; -} - -+ (void)initialize; -- (void)release; -- (void)dealloc; -- (id)init; -- (id)editor; -- (void)setEditor:(id)fp8; -- (void)editorClosed:(id)fp8; -- (id)mimeBody; -- (id)attachments; -- (id)headerAttributedString; -- (void)setHeaderAttributedString:(id)fp8; -- (id)plainAddresses; -- (void)setPlainAddresses:(id)fp8; -- (id)addressAttachments; -- (void)setAddressAttachments:(id)fp8; -- (id)expandedAddressKeys; -- (void)setExpandedAddressKeys:(id)fp8; -- (id)attachmentsDescription; -- (void)setAttachmentsDescription:(id)fp8; -- (id)headerOrder; -- (void)setHeaderOrder:(id)fp8; -- (int)headerDetailLevel; -- (id)description; -- (id)monitor; -- (void)setMonitor:(id)fp8; -- (id)message; -- (void)setMessage:(id)fp8; - -@end - -@interface MessageContentController : NSResponder -{ - Message *_message; - ActivityMonitor *_documentMonitor; - ActivityMonitor *_urlificationMonitor; - id _currentDisplay; - id _threadDisplay; - TextMessageDisplay *textDisplay; - MessageHeaderDisplay *headerDisplay; - NSView *contentContainerView; - NSView *junkMailView; - NSTextField *junkMailMessageField; - NSButton *junkMailLoadHTMLButton; - NSView *loadImagesView; - NSBox *bannerBorderBox; - NSView *certificateView; - NSImageView *certificateImage; - NSTextField *certificateMessageField; - NSButton *certificateHelpButton; - NSView *childBannerView; - NSTextField *childBannerMessageField; - NSImageView *childBannerImage; - NSButton *childBannerButton; - NSButton *childBannerHelpButton; - NSView *parentBannerView; - NSTextField *parentBannerMessageField; - NSImageView *parentBannerImage; - NSButton *parentBannerButton; - AttachmentsView *attachmentsView; - ObjectCache *_documentCache; - InvocationQueue *invocationQueue; - double _foregroundLoadStartTime; - double _backgroundLoadStartTime; - double _backgroundLoadEndTime; - NSString *_messageIDToRestoreInitialStateFor; - struct _NSRect _initialVisibleRect; - struct _NSRange _initialSelectedRange; - NSArray *mostRecentHeaderOrder; - NSTimer *_fadeTimer; - NSView *_currentBanner; - BOOL _hideBannerBorder; - NSTextField *_widthResizableTextFieldInCurrentBanner; - NSView *_rightNeighborOfWidthResizableTextFieldInCurrentBanner; - BOOL isForPrinting; - BOOL showDefaultHeadersStickily; - MessageViewingState *stickyViewingState; - MessageViewingState *_viewingState; - NSMutableDictionary *_editorCache; - EmbeddedNoteDocumentEditor *_currentEditor; - NSDictionary *_URLificationStrings; - NSLock *_URLificationLock; - float _accumulatedMagnification; - BOOL _canZoomIn; - BOOL _canZoomOut; -} - -+ (void)setClass:(Class)fp8 forDisplayType:(id)fp12; -- (id)init; -- (id)documentEditors; -- (void)registerDocumentEditor:(id)fp8; -- (void)unregisterDocumentEditor:(id)fp8; -- (void)setIsForPrinting:(BOOL)fp8; -- (void)setContentContainerView:(id)fp8; -- (void)setLoadImagesView:(id)fp8; -- (void)setJunkMailView:(id)fp8; -- (void)setCertificateView:(id)fp8; -- (void)setChildBannerView:(id)fp8; -- (void)setParentBannerView:(id)fp8; -- (void)readDefaultsFromDictionary:(id)fp8; -- (void)writeDefaultsToDictionary:(id)fp8; -- (void)setEditorCache:(id)fp8; -- (void)release; -- (void)dealloc; -- (void)_stopBackgroundMessageLoading:(BOOL)fp8 URLification:(BOOL)fp12 dataDetection:(BOOL)fp16; -- (void)stopAllActivity; -- (id)documentView; -- (id)currentDisplay; -- (void)_updateIfDisplayingMessage:(id)fp8; -- (id)viewingState; -- (void)setViewingState:(id)fp8; -- (void)_fetchDataForMessageAndUpdateDisplay:(id)fp8; -- (void)_messageMayHaveBecomeAvailable; -- (id)_messageTilingView; -- (void)fadeToEmpty; -- (void)_pushDocumentToCache; -- (void)_startBackgroundURLification:(id)fp8; -- (void)_backgroundLoadFinished:(id)fp8; -- (void)_backgroundUrlificationFinished:(id)fp8 urlMatches:(id)fp12; -- (void)setMessage:(id)fp8 headerOrder:(id)fp12; -- (void)_setMessage:(id)fp8 headerOrder:(id)fp12; -- (void)fetchEditorForMessage:(id)fp8 viewingState:(id)fp12; -- (void)editorDidLoad:(id)fp8; -- (void)editorFailedLoad:(id)fp8; -- (id)existingEditor:(Class)fp8 forDocument:(id)fp12; -- (void)_fetchContentsForMessage:(id)fp8 fromStore:(id)fp12 withViewingState:(id)fp16; -- (BOOL)canAddNoteToMessage; -- (BOOL)canAddToDoToMessage; -- (void)webMessageController:(id)fp8 willDisplayMenuItems:(id)fp12; -- (void)addAssociatedToDo:(id)fp8; -- (void)_urlifyWithViewingState:(id)fp8; -- (void)_startBackgroundLoad:(id)fp8; -- (void)_setInvocationQueue:(id)fp8; -- (id)message; -- (void)setMostRecentHeaderOrder:(id)fp8; -- (void)reloadCurrentMessage; -- (void)viewerPreferencesChanged:(id)fp8; -- (void)_removeCurrentBanner; -- (void)_bannerResized:(id)fp8; -- (void)_contentViewResized:(id)fp8; -- (void)_showBannerView:(id)fp8; -- (void)_showLoadImagesBanner; -- (void)_showCertificateBanner; -- (void)_showJunkBanner; -- (BOOL)_showBannerIfMessageIsOutgoingMessageWaitingForParentApproval; -- (BOOL)_showBannerIfMessageIsPermissionRequestFromChild; -- (void)_updateBanner; -- (void)setShowBannerBorder:(BOOL)fp8; -- (void)setShowRevealMessageLink:(BOOL)fp8; -- (BOOL)showRevealMessageLink; -- (void)_addRecentAddress:(id)fp8; -- (void)markAsNotJunkMailClicked:(id)fp8; -- (void)_setJunkLevelToNotJunk; -- (void)approveChildRequest:(id)fp8; -- (void)rejectChildRequest:(id)fp8; -- (void)sendMessage:(id)fp8; -- (void)_messageFlagsDidChange:(id)fp8; -- (void)closeEditors; -- (id)editorForNote:(id)fp8 message:(id)fp12; -- (id)editorForNote:(id)fp8 message:(id)fp12 isPaperless:(BOOL)fp16 willLoad:(char *)fp20; -- (void)_updateEditorDisplay; -- (id)_dataDetectorsContextForMessage:(id)fp8; -- (void)_updateDisplay; -- (void)editorClosed:(id)fp8; -- (void)setCurrentEditor:(id)fp8; -- (void)_setCurrentDisplay:(id)fp8; -- (void)_displayChanged; -- (void)highlightSearchText:(id)fp8; -- (id)attachmentsView; -- (id)textView; -- (id)selectedText; -- (id)selectedWebArchive; -- (id)attachmentsInSelection; -- (id)webArchiveBaseURL:(id *)fp8; -- (void)clearCache; -- (void)clearCacheForMessage:(id)fp8; -- (void)removeCacheObjectForKey:(id)fp8; -- (void)setCacheObject:(id)fp8 forKey:(id)fp12; -- (id)cacheObjectForKey:(id)fp8; -- (id)viewingStateForMessage:(id)fp8; -- (void)cacheViewingState:(id)fp8 forMessage:(id)fp12; -- (void)initPrintInfo; -- (int)headerDetailLevel; -- (BOOL)showingAllHeaders; -- (void)setShowAllHeaders:(BOOL)fp8; -- (BOOL)remoteAttachmentsAreDownloaded; -- (void)makeStickyInfoFromViewingState:(id)fp8; -- (void)makeStickyShowDefaultHeaders; -- (void)keyDown:(id)fp8; -- (void)resetGestureState; -- (void)beginGestureWithEvent:(id)fp8; -- (void)endGestureWithEvent:(id)fp8; -- (void)magnifyWithEvent:(id)fp8; -- (BOOL)pageDown; -- (BOOL)pageUp; -- (BOOL)currentlyViewingSource; -- (BOOL)_validateAction:(SEL)fp8 tag:(int)fp12; -- (id)findTarget; -- (BOOL)validateToolbarItem:(id)fp8; -- (BOOL)validateMenuItem:(id)fp8; -- (void)showAllHeaders:(id)fp8; -- (void)showFilteredHeaders:(id)fp8; -- (void)viewSource:(id)fp8; -- (void)toggleShowControlCharacters:(id)fp8; -- (void)toggleAttachmentsArea:(id)fp8; -- (void)showFirstAlternative:(id)fp8; -- (void)showPreviousAlternative:(id)fp8; -- (void)showNextAlternative:(id)fp8; -- (void)_messageWouldHaveLoadedRemoteURL:(id)fp8; -- (void)downloadRemoteContent:(id)fp8; -- (void)showCertificate:(id)fp8; -- (void)certificateTrustSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)showBestAlternative:(id)fp8; -- (void)changeTextEncoding:(id)fp8; -- (void)makeFontBigger:(id)fp8; -- (void)makeFontSmaller:(id)fp8; -- (void)jumpToSelection:(id)fp8; -- (void)takeFindStringFromSelection:(id)fp8; -- (void)saveAttachments:(id)fp8; -- (void)saveAttachmentsWithoutPrompting:(id)fp8; -- (id)urlificationMonitor; -- (void)setUrlificationMonitor:(id)fp8; -- (id)documentMonitor; -- (void)setDocumentMonitor:(id)fp8; -- (id)currentEditor; -- (id)editorCache; - -@end - -#elif defined(TIGER) - -@class Message; -@class MessageTextView; -@class MessageTextContainer; -@class HTMLView; - -extern NSString *MessageWillBeDisplayedInView; -extern NSString *MessageWillNoLongerBeDisplayedInView; -// Object is MessageContentController -// UserInfo: -// MessageKey = Message -// MessageViewKey = MessageTextView - -@class ActivityMonitor; -@class ObjectCache; -@class InvocationQueue; -@class MFError; -@class MimeBody; -@class TextMessageDisplay; -@class MessageHeaderDisplay; -@class AttachmentsView; - -@interface MessageViewingState : NSObject -{ - NSAttributedString *_headerAttributedString; - NSDictionary *_addressAttachments; - NSDictionary *_plainAddresses; - NSSet *_expandedAddressKeys; - NSAttributedString *_attachmentsDescription; - NSArray *_headerOrder; - MimeBody *mimeBody; - id document; - MFError *error; - int headerIndent; - int headerFontAdjustmentDebt; - unsigned int preferredAlternative:23; - unsigned int accountWasOffline:1; - unsigned int dontCache:1; - unsigned int showAllHeaders:1; - unsigned int showDefaultHeaders:1; - unsigned int isPrinting:1; - unsigned int viewSource:1; - unsigned int showControlChars:1; - unsigned int showAttachments:1; - unsigned int downloadRemoteURLs:1; - unsigned int triedToDownloadRemoteURLs:1; - unsigned int urlificationDone:1; - unsigned int messageIsFromEntourage:1; - unsigned int preferredEncoding; - ActivityMonitor *monitor; - NSString *sender; - NSString *senderName; - int priority; - id displayer; -} - -+ (void)initialize; -- (void)dealloc; -- (id)init; -- (id)mimeBody; -- (id)headerAttributedString; -- (void)setHeaderAttributedString:(id)fp8; -- (id)plainAddresses; -- (void)setPlainAddresses:(id)fp8; -- (id)addressAttachments; -- (void)setAddressAttachments:(id)fp8; -- (id)expandedAddressKeys; -- (void)setExpandedAddressKeys:(id)fp8; -- (id)attachmentsDescription; -- (void)setAttachmentsDescription:(id)fp8; -- (id)headerOrder; -- (void)setHeaderOrder:(id)fp8; -- (int)headerDetailLevel; - -@end - -@interface MessageContentController : NSResponder -{ - Message *_message; - MessageViewingState *_viewingState; - ActivityMonitor *_documentMonitor; - id _currentDisplay; - id _threadDisplay; - TextMessageDisplay *textDisplay; - MessageHeaderDisplay *headerDisplay; - NSView *contentContainerView; - NSView *junkMailView; - NSTextField *junkMailMessageField; - NSButton *junkMailLoadHTMLButton; - NSView *loadImagesView; - NSButton *loadImagesButton; - NSBox *bannerBorderBox; - NSView *certificateView; - NSButton *certificateButton; - NSImageView *certificateImage; - NSTextField *certificateMessageField; - NSView *childBannerView; - NSTextField *childBannerMessageField; - NSImageView *childBannerImage; - NSButton *childBannerButton; - NSButton *childBannerHelpButton; - NSView *parentBannerView; - NSTextField *parentBannerMessageField; - NSImageView *parentBannerImage; - NSButton *parentBannerButton; - NSView *parentApprovedOrRejectedBannerView; - NSTextField *parentApprovedOrRejectedBannerMessageField; - NSImageView *parentApprovedOrRejectedBannerImage; - AttachmentsView *attachmentsView; - ObjectCache *_documentCache; - InvocationQueue *invocationQueue; - double _foregroundLoadStartTime; - double _backgroundLoadStartTime; - double _backgroundLoadEndTime; - NSString *_messageIDToRestoreInitialStateFor; - struct _NSRect _initialVisibleRect; - struct _NSRange _initialSelectedRange; - NSArray *mostRecentHeaderOrder; - NSTimer *_fadeTimer; - NSView *_currentBanner; - BOOL _hideBannerBorder; - NSTextField *_widthResizableTextFieldInCurrentBanner; - NSView *_rightNeighborOfWidthResizableTextFieldInCurrentBanner; - BOOL isForPrinting; - BOOL showDefaultHeadersStickily; - MessageViewingState *stickyViewingState; -} - -+ (void)setClass:(Class)fp8 forDisplayType:(id)fp12; -- (id)init; -- (void)setIsForPrinting:(BOOL)fp8; -- (void)setContentContainerView:(id)fp8; -- (void)setLoadImagesView:(id)fp8; -- (void)setJunkMailView:(id)fp8; -- (void)setCertificateView:(id)fp8; -- (void)setChildBannerView:(id)fp8; -- (void)setParentBannerView:(id)fp8; -- (void)setParentApprovedOrRejectedBannerView:(id)fp8; -- (void)readDefaultsFromDictionary:(id)fp8; -- (void)writeDefaultsToDictionary:(id)fp8; -- (void)dealloc; -- (void)stopAllActivity; -- (id)documentView; -- (id)currentDisplay; -- (void)_updateIfDisplayingMessage:(id)fp8; -- (void)_fetchDataForMessageAndUpdateDisplay:(id)fp8; -- (void)_messageMayHaveBecomeAvailable; -- (id)_messageTilingView; -- (void)fadeToEmpty; -- (void)_pushDocumentToCache; -- (void)_backgroundLoadFinished:(id)fp8; -- (void)_backgroundUrlificationFinished:(id)fp8 urlMatches:(id)fp12; -- (void)setMessage:(id)fp8 headerOrder:(id)fp12; -- (void)_setMessage:(id)fp8 headerOrder:(id)fp12; -- (void)_fetchContentsForMessage:(id)fp8 fromStore:(id)fp12 withViewingState:(id)fp16; -- (void)_startBackgroundLoad:(id)fp8; -- (id)message; -- (void)setMostRecentHeaderOrder:(id)fp8; -- (void)reloadCurrentMessage; -- (void)viewerPreferencesChanged:(id)fp8; -- (void)showJunkMailHelp:(id)fp8; -- (void)_removeCurrentBanner; -- (void)_bannerResized:(id)fp8; -- (void)_showBannerView:(id)fp8; -- (void)_showLoadImagesBanner; -- (void)_showCertificateBanner; -- (id)_fixBezelStyleOfHelpButtonInBannerView:(id)fp8; -- (void)_showJunkBanner; -- (BOOL)_showBannerIfMessageIsOutgoingMessageWaitingForParentApproval; -- (BOOL)_showBannerIfMessageIsPermissionRequestFromChild; -- (void)_updateBanner; -- (void)setShowBannerBorder:(BOOL)fp8; -- (void)setShowRevealMessageLink:(BOOL)fp8; -- (BOOL)showRevealMessageLink; -- (void)_addRecentAddress:(id)fp8; -- (void)markAsNotJunkMailClicked:(id)fp8; -- (void)_setJunkLevelToNotJunk; -- (void)approveChildRequest:(id)fp8; -- (void)rejectChildRequest:(id)fp8; -- (void)sendMessage:(id)fp8; -- (void)_messageFlagsDidChange:(id)fp8; -- (void)_updateDisplay; -- (void)_setCurrentDisplay:(id)fp8; -- (void)highlightSearchText:(id)fp8; -- (id)attachmentsView; -- (id)textView; -- (id)selectedText; -- (id)selectedWebArchive; -- (id)attachmentsInSelection; -- (id)webArchive; -- (void)clearCache; -- (id)viewingState; -- (id)viewingStateForMessage:(id)fp8; -- (void)cacheViewingState:(id)fp8 forMessage:(id)fp12; -- (void)displayString:(id)fp8; -- (void)initPrintInfo; -- (int)headerDetailLevel; -- (BOOL)showingAllHeaders; -- (void)setShowAllHeaders:(BOOL)fp8; -- (void)makeStickyInfoFromViewingState:(id)fp8; -- (void)makeStickyShowDefaultHeaders; -- (void)keyDown:(id)fp8; -- (BOOL)pageDown; -- (BOOL)pageUp; -- (BOOL)currentlyViewingSource; -- (BOOL)_validateAction:(SEL)fp8 tag:(int)fp12; -- (id)findTarget; -- (BOOL)validateToolbarItem:(id)fp8 forSegment:(int)fp12; -- (BOOL)validateMenuItem:(id)fp8; -- (void)showAllHeaders:(id)fp8; -- (void)showFilteredHeaders:(id)fp8; -- (void)viewSource:(id)fp8; -- (void)toggleShowControlCharacters:(id)fp8; -- (void)toggleAttachmentsArea:(id)fp8; -- (void)showFirstAlternative:(id)fp8; -- (void)showPreviousAlternative:(id)fp8; -- (void)showNextAlternative:(id)fp8; -- (void)_messageWouldHaveLoadedRemoteURL:(id)fp8; -- (void)downloadRemoteContent:(id)fp8; -- (void)showCertificate:(id)fp8; -- (void)showBestAlternative:(id)fp8; -- (void)changeTextEncoding:(id)fp8; -- (void)makeFontBigger:(id)fp8; -- (void)makeFontSmaller:(id)fp8; -- (void)jumpToSelection:(id)fp8; -- (void)takeFindStringFromSelection:(id)fp8; -- (void)saveAttachments:(id)fp8; - -@end - -#else - -@class Message; -@class MessageViewingState; -@class ActivityMonitor; -@class TextMessageDisplay; -@class MessageHeaderDisplay; -@class AttachmentsView; -@class ObjectCache; -@class InvocationQueue; -@class MimeBody; -@class MFError; - - -@protocol MessageContentDisplay -- (void)updateURLMatches:fp8 viewingState:fp12; -- findTarget; -- (void)adjustFontSizeBy:(int)fp8 viewingState:fp12; -- selectedText; -- (void)highlightSearchText:fp8; -- (void)prepareToRemoveView; -- (void)display:fp8 inContainerView:fp12 replacingView:fp16; -- textView; -- contentView; -@end - -extern NSString *MessageWillBeDisplayedInView; -// Object is MessageContentController -// UserInfo: -// MessageKey = Message -// MessageViewKey = MessageTextView -extern NSString *MessageWillNoLongerBeDisplayedInView; -// Object is MessageContentController -// UserInfo: -// MessageKey = Message -// MessageViewKey = MessageTextView - -@interface MessageViewingState:NSObject -{ - @public - NSAttributedString *_headerAttributedString; // 4 = 0x4 - NSDictionary *_addressAttachments; // 8 = 0x8 - NSDictionary *_plainAddresses; // 12 = 0xc - NSSet *_expandedAddressKeys; // 16 = 0x10 - NSAttributedString *_attachmentsDescription; // 20 = 0x14 - NSArray *_headerOrder; // 24 = 0x18 - MimeBody *mimeBody; // 28 = 0x1c - id document; // 32 = 0x20 - MFError *error; // 36 = 0x24 - int headerIndent; // 40 = 0x28 - int preferredAlternative:23; // 44 = 0x2c - int accountWasOffline:1; // 46 = 0x2e - int dontCache:1; // 47 = 0x2f - int showAllHeaders:1; // 47 = 0x2f - int showDefaultHeaders:1; // 47 = 0x2f - int isPrinting:1; // 47 = 0x2f - int viewSource:1; // 47 = 0x2f - int showControlChars:1; // 47 = 0x2f - int showAttachments:1; // 47 = 0x2f - int downloadRemoteURLs:1; // 47 = 0x2f - int triedToDownloadRemoteURLs:1; // 48 = 0x30 - int urlificationDone:1; // 48 = 0x30 - unsigned int preferredEncoding; // 52 = 0x34 - ActivityMonitor *monitor; // 56 = 0x38 - NSString *sender; // 60 = 0x3c - id displayer; // 64 = 0x40 -} - -+ (void)initialize; -- (void)dealloc; -- init; -- mimeBody; -- headerAttributedString; -- (void)setHeaderAttributedString:fp8; -- plainAddresses; -- (void)setPlainAddresses:fp8; -- addressAttachments; -- (void)setAddressAttachments:fp8; -- expandedAddressKeys; -- (void)setExpandedAddressKeys:fp8; -- attachmentsDescription; -- (void)setAttachmentsDescription:fp8; -- headerOrder; -- (void)setHeaderOrder:fp8; - -@end - -@interface MessageContentController:NSResponder -{ - Message *_message; // 8 = 0x8 - MessageViewingState *_viewingState; // 12 = 0xc - ActivityMonitor *_documentMonitor; // 16 = 0x10 - id _currentDisplay; // 20 = 0x14 - id _threadDisplay; // 24 = 0x18 - TextMessageDisplay *textDisplay; // 28 = 0x1c - MessageHeaderDisplay *headerDisplay; // 32 = 0x20 - NSView *contentContainerView; // 36 = 0x24 - NSView *junkMailView; // 40 = 0x28 - NSTextField *junkMailMessageField; // 44 = 0x2c - NSButton *junkMailLoadHTMLButton; // 48 = 0x30 - NSView *loadImagesView; // 52 = 0x34 - NSButton *loadImagesButton; // 56 = 0x38 - NSBox *bannerBorderBox; // 60 = 0x3c - NSView *certificateView; // 64 = 0x40 - NSButton *certificateButton; // 68 = 0x44 - NSImageView *certificateImage; // 72 = 0x48 - NSTextField *certificateMessageField; // 76 = 0x4c - AttachmentsView *attachmentsView; // 80 = 0x50 - ObjectCache *_documentCache; // 84 = 0x54 - InvocationQueue *invocationQueue; // 88 = 0x58 - double _foregroundLoadStartTime; // 92 = 0x5c - double _backgroundLoadStartTime; // 100 = 0x64 - double _backgroundLoadEndTime; // 108 = 0x6c - NSString *_messageIDToRestoreInitialStateFor; // 116 = 0x74 - struct _NSRect_initialVisibleRect; // 120 = 0x78 - struct _NSRange _initialSelectedRange; // 136 = 0x88 - NSArray *mostRecentHeaderOrder; // 144 = 0x90 - NSTimer *_fadeTimer; // 148 = 0x94 - NSView *_currentBanner; // 152 = 0x98 - char _hideBannerBorder; // 156 = 0x9c - char isForPrinting; // 157 = 0x9d - char showAllHeadersStickily; // 158 = 0x9e - char showDefaultHeadersStickily; // 159 = 0x9f -} - -+ (void)setClass:(Class)fp8 forDisplayType:fp12; -- init; -- (void)setIsForPrinting:(char)fp8; -- (void)setContentContainerView:fp8; -- (void)setLoadImagesView:fp8; -- (void)setJunkMailView:fp8; -- (void)setCertificateView:fp8; -- (void)readDefaultsFromDictionary:fp8; -- (void)writeDefaultsToDictionary:fp8; -- (void)dealloc; -- (void)stopAllActivity; -- documentView; -- currentDisplay; -- (void)_messageMayHaveBecomeAvailable; -- (void)fadeToEmpty; -- (void)_pushDocumentToCache; -- (void)_backgroundLoadFinished:fp8; -- (void)_backgroundUrlificationFinished:fp8 urlMatches:fp12; -- (void)setMessage:fp8 headerOrder:fp12; -- (void)_setMessage:fp8 headerOrder:fp12; -- (void)_fetchContentsForMessage:fp8 fromStore:fp12 withViewingState:fp16; -- (void)_startBackgroundLoad:fp8; -- message; -- (void)setMostRecentHeaderOrder:fp8; -- (void)reloadCurrentMessage; -- (void)viewerPreferencesChanged:fp8; -- (void)showJunkMailHelp:fp8; -- (void)_removeCurrentBanner; -- (void)_showBannerView:fp8; -- (void)_showLoadImagesBanner; -- (void)_showCertificateBanner; -- (void)_showJunkBanner; -- (void)_updateBanner; -- (void)setShowBannerBorder:(char)fp8; -- (void)_addRecentAddress:fp8; -- (void)markAsNotJunkMailClicked:fp8; -- (void)_messageFlagsDidChange:fp8; -- (void)_updateDisplay; -- (void)_setCurrentDisplay:fp8; -- (void)highlightSearchText:fp8; -- attachmentsView; -- textView; -- currentSelection; -- (void)clearCache; -- viewingState; -- viewingStateForMessage:fp8; -- (void)cacheViewingState:fp8 forMessage:fp12; -- (void)displayString:fp8; -- (void)initPrintInfo; -- (int)headerDetailLevel; -- (char)showingAllHeaders; -- (void)setShowAllHeaders:(char)fp8; -- (void)makeStickyShowAllHeaders; -- (void)makeStickyShowDefaultHeaders; -- (void)keyDown:fp8; -- (char)pageDown; -- (char)pageUp; -- (char)currentlyViewingSource; -- (char)_validateAction:(SEL)fp8 tag:(int)fp12; -- findTarget; -- (char)validateToolbarItem:fp8; -- (BOOL)validateMenuItem:fp8; -- (void)showAllHeaders:fp8; -- (void)showFilteredHeaders:fp8; -- (void)viewSource:fp8; -- (void)toggleShowControlCharacters:fp8; -- (void)toggleAttachmentsArea:fp8; -- (void)showFirstAlternative:fp8; -- (void)showPreviousAlternative:fp8; -- (void)showNextAlternative:fp8; -- (void)_messageWouldHaveLoadedRemoteURL:fp8; -- (void)downloadRemoteContent:fp8; -- (void)showCertificate:fp8; -- (void)showBestAlternative:fp8; -- (void)changeTextEncoding:fp8; -- (void)makeFontBigger:fp8; -- (void)makeFontSmaller:fp8; -- (void)jumpToSelection:fp8; -- (void)takeFindStringFromSelection:fp8; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MessageEditor.h b/GPGMail/Source/PrivateHeaders/MessageEditor.h deleted file mode 100644 index 7217321b..00000000 --- a/GPGMail/Source/PrivateHeaders/MessageEditor.h +++ /dev/null @@ -1,2127 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -#import "MVTerminationHandler.h" - -@interface MessageEditor : NSObject -{ -} - -+ (void)initialize; -+ (id)sharedMessageEditor; -- (id)init; -- (id)retain; -- (unsigned long long)retainCount; -- (void)release; -- (id)autorelease; -- (id)objectSpecifier; -- (void)setBackEnd:(id)arg1; - -@end - -@class WebViewEditor; -@class HeadersEditor; -@class EditingMessageWebView; -@class ComposeBackEnd; -@class EditingWebMessageController; -@class LoadingOverlay; -@class MFUUID; -@class Message; - -@interface DocumentEditor : NSObject -{ - WebViewEditor *webViewEditor; - HeadersEditor *headersEditor; - NSWindow *_window; - EditingMessageWebView *composeWebView; - ComposeBackEnd *_backEnd; - NSToolbar *_toolbar; - NSMutableDictionary *_toolbarItems; - EditingWebMessageController *webMessageController; - LoadingOverlay *loadingOverlay; - NSDictionary *settings; - struct { - unsigned int userSavedMessage:1; - unsigned int userWantsToCloseWindow:1; - unsigned int userKnowsSaveFailed:1; - unsigned int registeredForNotifications:1; - unsigned int alwaysSave:1; - unsigned int userCanApplyStationery:1; - unsigned int autoShowEditor:1; - unsigned int isLoaded:1; - unsigned int isAutoSaving:1; - } _flags; - int _messageType; - struct CGPoint _originalCascadePoint; - NSMutableDictionary *_bodiesByAttachmentURL; - NSOperationQueue *operationQueue; - NSOperation *finishLoadingEditorOperation; - id _loadDelegate; -} - -+ (void)initialize; -+ (id)autoSaveTimer; -+ (void)setAutosaveTimer:(id)arg1; -+ (id)_documentEditors; -+ (id)documentEditors; -+ (id)typedDocumentEditors; -+ (void)registerDocumentEditor:(id)arg1; -+ (void)unregisterDocumentEditor:(id)arg1; -+ (BOOL)documentType; -+ (id)documentWebPreferencesIdentifierForRichText:(BOOL)arg1; -+ (id)existingEditorForMessage:(id)arg1 editorClass:(Class)arg2; -+ (id)editorsForDocumentID:(id)arg1 editorClass:(Class)arg2; -+ (id)existingEditorForMessage:(id)arg1; -+ (void)saveDefaults; -+ (void)restoreFromDefaults; -+ (void)showEditorWithSavedState:(id)arg1; -+ (void)setNeedsAutosave; -+ (void)autoSaveTimerFired; -@property(readonly) MFUUID *documentID; -- (BOOL)isEditingDocumentID:(id)arg1; -- (id)description; -- (id)initWithType:(int)arg1 settings:(id)arg2 backEnd:(id)arg3; -- (id)init; -@property(readonly) BOOL isLoaded; -- (void)setLoaded:(BOOL)arg1; -@property(readonly) BOOL isAutoSaving; -- (BOOL)load; -- (id)loadInterfaceOperation; -- (id)showInterfaceOperation; -- (id)prepareContentOperation; -- (id)loadInitialDocumentOperation; -- (void)loadInitialDocument; -- (id)finishLoadingEditorOperation; -@property(readonly) BOOL isFinishedLoading; -- (void)performOperationAfterLoad:(id)arg1; -- (void)finishLoadingEditor; -- (Class)backEndClass; -- (void)release; -- (void)dealloc; -- (BOOL)loadEditorNib; -- (id)operationQueue; -- (void)setOperationQueue:(id)arg1; -- (int)editorSharedNib; -- (void)show; -- (void)setHeaders:(id)arg1; -@property(retain) ComposeBackEnd *backEnd; -- (id)webViewEditor; -- (id)headersEditor; -- (id)webMessageDocument; -- (id)toolbar; -- (id)window; -@property BOOL autoShowEditor; -@property BOOL userCanApplyStationery; -@property(readonly) BOOL stationeryPaneIsVisible; -@property BOOL wantsToClose; -- (void)readDefaultsFromDictionary:(id)arg1; -- (void)writeDefaultsToDictionary:(id)arg1; -- (void)saveState; -- (void)_appendDefaultsToArray:(id)arg1; -- (id)_frameSaveName; -- (void)prepareContent; -- (void)backEndDidLoadInitialContent:(id)arg1; -- (id)parsedMessageFromSettings:(id)arg1; -- (void)continueLoadingInitialContent; -- (void)postDocumentEditorDidFinishSetup; -- (void)_registerForNotificationsIfNeeded; -- (void)_setupSpellingAndGrammarChecking; -- (id)windowWillReturnFieldEditor:(id)arg1 toObject:(id)arg2; -- (void)backEnd:(id)arg1 didBeginBackgroundLoadActivity:(id)arg2; -- (void)loadingOverlayDidEnd:(id)arg1 returnCode:(long long)arg2; -- (BOOL)autoSave; -@property(readonly) BOOL canSave; -@property(readonly) BOOL shouldSave; -- (void)saveMessageDueToUserAction:(BOOL)arg1; -- (void)backEnd:(id)arg1 willCreateMessageWithHeaders:(id)arg2; -- (BOOL)backEnd:(id)arg1 shouldSaveMessage:(id)arg2; -- (void)setUserSavedMessage:(BOOL)arg1; -@property(readonly) BOOL hasChanges; -- (void)reportSaveFailure:(id)arg1; -@property(readonly) Message *associatedMessage; -- (void)backEnd:(id)arg1 didUpdateMessage:(id)arg2; -- (void)backEndDidSaveMessage:(id)arg1 result:(int)arg2; -- (void)failedToSaveDraftSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (void)backEndDidChange:(id)arg1; -- (void)webViewDidChange:(id)arg1; -- (void)updateWindowContent; -- (void)updateUIAfterAppleScriptModification:(id)arg1; -- (void)composePrefsChanged; -- (id)mailAttachmentsAdded:(id)arg1; -- (void)openPanelSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (id)mimeBodyForAttachmentWithURL:(id)arg1; -- (BOOL)validateUserInterfaceItem:(id)arg1; -- (BOOL)validateMenuItem:(id)arg1; -- (void)makeRichText:(id)arg1; -- (void)makePlainText:(id)arg1; -- (void)toggleRich:(id)arg1; -- (void)insertNumberedList:(id)arg1; -- (void)insertBulletedList:(id)arg1; -- (void)convertToNumberedList:(id)arg1; -- (void)convertToBulletedList:(id)arg1; -- (void)increaseListNestingLevel:(id)arg1; -- (void)decreaseListNestingLevel:(id)arg1; -- (void)saveDocument:(id)arg1; -- (void)saveChangedDocument:(id)arg1; -- (void)saveMessageToDrafts:(id)arg1; -- (void)performClose:(id)arg1; -- (void)messageSizeDidChange:(id)arg1; -- (void)insertFile:(id)arg1; -- (void)removeAttachments:(id)arg1; -- (void)createToDo:(id)arg1; -- (void)changeTextEncoding:(id)arg1; -- (void)showPrintPanel:(id)arg1; -- (void)searchIndex:(id)arg1; -- (void)changeSpellCheckingBehavior:(id)arg1; -- (void)toggleCheckGrammarWithSpelling:(id)arg1; -- (void)showAddressPanel:(id)arg1; -- (void)windowDidResize:(id)arg1; -- (void)windowDidMove:(id)arg1; -- (id)shouldSaveTitle; -- (id)shouldSaveDescription; -- (id)shouldSaveHelptag; -- (void)beginDocumentMove; -- (void)endDocumentMove; -- (BOOL)windowShouldClose:(id)arg1; -- (void)forceClose; -- (void)closeConfirmSheetDidEnd:(id)arg1 returnCode:(long long)arg2 forSave:(void *)arg3; -- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; -@property id loadDelegate; // @synthesize loadDelegate=_loadDelegate; -@property(retain) NSDictionary *settings; // @synthesize settings; - -@end - -@interface DocumentEditor (DocumentEditorToolbar) -- (BOOL)validateToolbarItem:(id)arg1; -- (void)setupToolbar; -- (id)toolbarIdentifier; -- (void)_synchronizeChangeReplyItem:(id)arg1 messageType:(int)arg2; -- (void)toggleReplyType:(int)arg1; -- (void)updateSendButtonStateInToolbar; -- (void)toolbarWillAddItem:(id)arg1; -- (void)configureSegmentedItem:(id)arg1 withDictionary:(id)arg2 forSegment:(long long)arg3; -- (id)previousIdentifierForUpgradingToolbar:(id)arg1; -- (id)toolbar:(id)arg1 upgradedItemIdentifiers:(id)arg2; -- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; -- (id)toolbarDefaultItemIdentifiers:(id)arg1; -- (id)toolbarAllowedItemIdentifiers:(id)arg1; -- (id)menuForListsItem; -@end - -@class AccountStatusDataSourceDelegate; -@class MailDocumentEditor; -@class CompletionController; -@class ComposeHeaderView; -@class AccountStatusDataSource; -@class AddressTextField; -@class DraggingTextView; -@class DeliveryFailure; -@class StationerySelector; - -@interface HeadersEditor : NSObject -{ - MailDocumentEditor *documentEditor; - CompletionController *completionController; - ComposeHeaderView *composeHeaderView; - NSPopUpButton *fromPopup; - NSPopUpButton *signaturePopup; - NSPopUpButton *priorityPopup; - NSButton *signButton; - NSButton *encryptButton; - AccountStatusDataSource *_deliveryASDS; - NSPopUpButton *deliveryPopUp; - AddressTextField *toField; - AddressTextField *ccField; - NSTextField *subjectField; - AddressTextField *bccField; - AddressTextField *replyToField; - DraggingTextView *addressFieldEditor; - NSMutableArray *accessoryViewOwners; - BOOL chatShouldBeEnabled; - BOOL _hasChanges; -} - -+ (id)keyPathsForValuesAffectingDeliveryAccount; -- (void)awakeFromNib; -- (void)setUpFieldsAndButtons; -- (void)finishSetUp; -- (void)setAGoodFirstResponder; -- (void)configureButtonsAndPopUps; -- (void)initializePriorityPopUp; -- (void)composePrefsChanged; -- (void)mailAccountsDidChange; -- (void)accountInfoDidChange:(id)arg1; -- (void)windowDidBecomeKey:(id)arg1; -- (void)windowDidResignKey:(id)arg1; -- (void)updatePriorityPopUpMakeActive:(BOOL)arg1; -- (void)updateSecurityControls; -- (void)updateSignButtonImages; -- (void)updateSignButtonTooltip; -- (void)updateEncryptButtonImages; -- (void)updateEncryptButtonTooltip; -- (void)updateFromAndSignatureControls; -- (void)updateSignatureControlOverridingExistingSignature:(BOOL)arg1; -- (void)updateDeliveryAccountControl; -- (void)configureDeliveryPopupButton; -- (double)deliveryPopUpSizeToFitWidth; -- (void)updateCcOrBccMyselfFieldWithSender:(id)arg1 oldSender:(id)arg2; -- (void)updatePresenceButtonState; -- (void)presenceChanged:(id)arg1; -- (void)presencePreferenceChanged:(id)arg1; -- (void)updatePresenceButtonStateForAddresses:(id)arg1; -- (void)webViewDidLoadStationery:(id)arg1; -- (void)setupAddressField:(id)arg1; -- (void)_setupField:(id)arg1 withAddressesForKey:(id)arg2 visibleSelector:(SEL)arg3; -- (void)_configureTextField:(id)arg1 isAddressField:(BOOL)arg2; -- (id)fieldForHeader:(id)arg1; -- (id)headerKeyForView:(id)arg1; -- (void)enableCompletion:(BOOL)arg1 forTextField:(id)arg2; -- (void)loadHeadersFromBackEnd; -- (void)textFieldBeganOrEndedEditing:(id)arg1; -- (void)recipientsDidChange:(id)arg1; -- (void)subjectChanged; -- (void)addressFieldChanged; -- (BOOL)headerFieldIsNonEmpty:(id)arg1; -- (id)windowWillReturnFieldEditor:(id)arg1 toObject:(id)arg2; -- (void)setHeaders:(id)arg1; -- (void)appendAddresses:(id)arg1 toHeader:(id)arg2; -- (void)setInlineSpellCheckingEnabled:(BOOL)arg1; -- (void)setCheckGrammarWithSpelling:(BOOL)arg1; -- (void)turnOffEncryption; -- (void)changeSignatureFrom:(id)arg1 to:(id)arg2; -- (BOOL)messageIsToBeSigned; -- (BOOL)messageIsToBeEncrypted; -- (BOOL)messageHasRecipients; -- (BOOL)canSignFromAnyAccount; -- (BOOL)chatShouldBeEnabled; -- (BOOL)isOkayToSaveMessage:(id)arg1; -- (void)editServerList:(id)arg1 selectedAccount:(id)arg2; -- (void)toggleAccountLock:(id)arg1; -- (void)setSelectedAccount:(id)arg1; -- (id)deliveryAccount; -- (void)setDynamicDeliveryAccountForAccount:(id)arg1; -- (void)setDeliveryAccount:(id)arg1; -- (id)mailAccount; -- (void)accountStatusDidChange:(id)arg1; -- (void)changeHeaderField:(id)arg1; -- (void)changeFromHeader:(id)arg1; -- (void)setMessagePriority:(id)arg1; -- (void)securityControlChanged:(id)arg1; -- (void)_recipientsWithoutKeysSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (void)chatWithRecipients:(id)arg1; -- (void)editSignatures:(id)arg1; -- (void)changeSignature:(id)arg1; -- (void)composeHeaderViewWillBeginCustomization:(id)arg1; -- (void)composeHeaderViewDidEndCustomization:(id)arg1; -- (BOOL)headerCustomizationIsInProgress; -- (void)addCcHeader:(id)arg1; -- (void)addBccHeader:(id)arg1; -- (void)addReplyToHeader:(id)arg1; -- (void)_clearFieldIfHidden:(id)arg1; -- (void)prepareToCloseWindow; -- (void)dealloc; -- (BOOL)validateUserInterfaceItem:(id)arg1; -- (BOOL)validateMenuItem:(id)arg1; -- (BOOL)validateToolbarItem:(id)arg1; -- (id)createSenderMarkupStringIncludeBrackets:(BOOL)arg1; -@property BOOL hasChanges; // @synthesize hasChanges=_hasChanges; - -@end - -@class ColorBackgroundView; - -@interface MailDocumentEditor : DocumentEditor -{ - DeliveryFailure *deliveryFailure; - ColorBackgroundView *stationeryPane; - StationerySelector *stationerySelector; - NSTextField *stationeryNameTextField; - NSButton *stationeryNameSaveButton; - ColorBackgroundView *borderView; - NSScroller *fakeScroller; - NSViewAnimation *stationeryPaneAnimator; - NSView *imageStatusView; - NSTextField *imageFileSizeLabel; - NSTextField *imageFileSizeTextField; - NSPopUpButton *imageSizePopup; - NSProgressIndicator *imageResizingProgressWheel; - NSTextField *imageResizingProgressField; - NSMutableArray *_imageResizers; - unsigned long long _textLengthForLastEstimatedMessageSize; - unsigned long long _encryptionOverhead; - BOOL sendWhenFinishLoading; - BOOL hasIncludedAttachmentsFromOriginal; - NSMutableArray *_unapprovedRecipients; - NSMutableArray *userActionQueue; -} - -+ (BOOL)documentType; -+ (id)documentEditors; -+ (id)createEditorWithType:(int)arg1 settings:(id)arg2; -+ (void)restoreDraftMessage:(id)arg1 withSavedState:(id)arg2; -+ (void)emailAddressesApproved:(id)arg1; -+ (void)emailsRejected:(id)arg1; -+ (void)_emailAddresses:(id)arg1 approvedOrRejected:(BOOL)arg2; -+ (void)_setMessageStatus:(id)arg1 onMessageID:(id)arg2; -+ (void)handleFailedDeliveryOfMessage:(id)arg1 store:(id)arg2 error:(id)arg3; -+ (id)keyPathsForValuesAffectingDeliveryAccount; -- (id)init; -- (id)initWithBackEnd:(id)arg1; -- (id)initWithType:(int)arg1 settings:(id)arg2; -- (id)initWithType:(int)arg1 settings:(id)arg2 backEnd:(id)arg3; -- (BOOL)load; -- (void)finishLoadingEditor; -- (void)dealloc; -- (void)show; -- (int)messageType; -- (void)changeReplyMode:(id)arg1; -- (void)replyMessage:(id)arg1; -- (void)replyAllMessage:(id)arg1; -- (void)loadInitialDocument; -- (void)backEndDidLoadInitialContent:(id)arg1; -- (void)attachmentFinishedDownloading:(id)arg1; -- (id)document; -- (id)webView; -- (id)parsedMessageFromSettings:(id)arg1; -- (void)continueLoadingInitialContent; -- (double)animationDuration; -- (void)showOrHideStationery:(id)arg1; -- (void)animationDidEnd:(id)arg1; -- (BOOL)stationeryPaneIsVisible; -- (id)currentStationery; -- (void)loadStationery:(id)arg1; -- (void)saveAsStationery:(id)arg1; -- (void)continueSaveAsStationery:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (void)controlTextDidChange:(id)arg1; -- (void)cancelSaveAsStationery:(id)arg1; -- (void)saveSaveAsStationery:(id)arg1; -- (void)saveAsStationeryErrorSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; -- (BOOL)canSave; -- (void)saveMessageToDrafts:(id)arg1; -- (void)backEnd:(id)arg1 willCreateMessageWithHeaders:(id)arg2; -- (BOOL)backEnd:(id)arg1 shouldSaveMessage:(id)arg2; -- (void)backEndDidChange:(id)arg1; -- (void)backEndSenderDidChange:(id)arg1; -- (void)removeAttachments:(id)arg1; -- (void)insertOriginalAttachments:(id)arg1; -- (BOOL)_restoreOriginalAttachments; -- (void)alwaysSendWindowsFriendlyAttachments:(id)arg1; -- (void)sendWindowsFriendlyAttachments:(id)arg1; -- (void)_setSendWindowsFriendlyAttachments:(BOOL)arg1; -- (void)alwaysAttachFilesAtEnd:(id)arg1; -- (void)attachFilesAtEnd:(id)arg1; -- (void)insertFile:(id)arg1; -- (void)openPanelSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (BOOL)validateUserInterfaceItem:(id)arg1; -- (BOOL)validateMenuItem:(id)arg1; -- (BOOL)_sendButtonShouldBeEnabled; -- (void)_setUnapprovedRecipients:(id)arg1; -- (void)askApprovalSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (void)send:(id)arg1; -- (void)sendMessageAfterChecking:(id)arg1; -- (void)backEndDidCancelMessageDeliveryForAttachmentError:(id)arg1; -- (void)attachmentErrorSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (void)cancelSendingStationery:(id)arg1; -- (void)continueSendingStationery:(id)arg1; -- (void)emptyMessageSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (void)malformedAddressSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (void)noRecipientsSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (void)backEndDidAppendMessageToOutbox:(id)arg1 result:(int)arg2; -- (void)failedToAppendToOutboxSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (BOOL)backEnd:(id)arg1 shouldDeliverMessage:(id)arg2; -- (void)_setMessageStatusOnOriginalMessage; -- (void)backEnd:(id)arg1 didCancelMessageDeliveryForError:(id)arg2; -- (void)reportDeliveryFailure:(id)arg1; -- (void)forceClose; -- (void)backEnd:(id)arg1 didCancelMessageDeliveryForMissingCertificatesForRecipients:(id)arg2; -- (id)missingCertificatesMessageForRecipients:(id)arg1 uponDelivery:(BOOL)arg2; -- (void)backEnd:(id)arg1 didCancelMessageDeliveryForEncryptionError:(id)arg2; -- (void)shouldDeliverMessageAlertWithoutEncryptionSheetDidDismiss:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (id)deliveryAccount; -- (void)setDeliveryAccount:(id)arg1; -- (void)changeSignature:(id)arg1; -- (void)imageSizePopupChanged:(id)arg1; -- (void)messageSizeDidChange:(id)arg1; -- (void)encryptionStatusDidChange; -- (void)updateAttachmentStatus; -- (unsigned char)_isAttachmentScalable:(id)arg1; -- (unsigned char)_attachmentsContainScalableImage:(id)arg1 scalables:(id)arg2; -- (void)_updateImageSizePopup; -- (BOOL)_imageStatusHidden; -- (void)_showImageStatusView; -- (void)_hideImageStatusView; -- (struct CGSize)_imageSizeForTag:(long long)arg1; -- (struct CGSize)_selectedImageSize; -- (id)_maxImageSizeAsString; -- (void)_processNextImageResizer; -- (void)_ImageResizeDidFinish:(id)arg1; -- (BOOL)_isResizingImages; -- (id)_resizerForAttachment:(id)arg1; -- (BOOL)_resizeAttachment:(id)arg1; -- (BOOL)_resizeImageAttachments:(id)arg1; -- (unsigned long long)textLengthEstimate; -- (unsigned long long)_signatureOverhead; -- (unsigned long long)_encryptionOverhead; -- (unsigned long long)_estimateMessageSize; -- (void)_saveImageSizeToDefaults; -- (void)_setImageSizePopupToSize:(id)arg1; -- (id)attachmentStatusNeighbourView; -- (void)_mailAttachmentsDeleted; -- (void)mailAttachmentsDeleted:(id)arg1; -- (id)mailAttachmentsAdded:(id)arg1; -- (BOOL)windowShouldClose:(id)arg1; -- (void)appendMessages:(id)arg1; -- (void)appendMessageArray:(id)arg1; -- (void)_appendMessages:(id)arg1 withParsedMessages:(id)arg2; -- (void)_generateParsedMessagesToAppendForMessages:(id)arg1; -- (void)makeRichText:(id)arg1; -- (void)makePlainText:(id)arg1; -- (void)makeFontBigger:(id)arg1; -- (void)makeFontSmaller:(id)arg1; -- (void)addCcHeader:(id)arg1; -- (void)addBccHeader:(id)arg1; -- (void)addReplyToHeader:(id)arg1; -- (void)setMessagePriority:(id)arg1; - -@end - -#elif defined(SNOW_LEOPARD) - -#import "MVTerminationHandler.h" - -@class WebViewEditor; -@class HeadersEditor; -@class EditingMessageWebView; -@class ComposeBackEnd; -@class EditingWebMessageController; -@class LoadingOverlay; -@class DeliveryFailure; -@class ColorBackgroundView; -@class StationerySelector; -@class HeadersEditor; -@class CompletionController; -@class ComposeHeaderView; -@class AccountStatusDataSource; -@class AddressTextField; -@class DraggingTextView; - -@interface MessageEditor : NSObject -{ -} - -+ (void)initialize; -+ (id)sharedMessageEditor; -- (id)init; -- (id)retain; -- (unsigned long)retainCount; -- (void)release; -- (id)autorelease; -- (id)objectSpecifier; -- (void)setBackEnd:(id)arg1; - -@end - -@interface DocumentEditor : NSObject -{ - WebViewEditor *webViewEditor; - HeadersEditor *headersEditor; - NSWindow *_window; - EditingMessageWebView *composeWebView; - ComposeBackEnd *_backEnd; - NSToolbar *_toolbar; - NSMutableDictionary *_toolbarItems; - EditingWebMessageController *webMessageController; - LoadingOverlay *loadingOverlay; - NSDictionary *settings; - struct { - unsigned int userSavedMessage:1; - unsigned int userWantsToCloseWindow:1; - unsigned int userKnowsSaveFailed:1; - unsigned int registeredForNotifications:1; - unsigned int alwaysSave:1; - unsigned int userCanApplyStationery:1; - unsigned int autoShowEditor:1; - unsigned int isLoaded:1; - unsigned int isAutoSaving:1; - } _flags; - int _messageType; - struct CGPoint _originalCascadePoint; - NSMutableDictionary *_bodiesByAttachmentURL; - NSOperationQueue *operationQueue; - NSOperation *finishLoadingEditorOperation; - id _loadDelegate; -} - -+ (void)initialize; -+ (id)autoSaveTimer; -+ (void)setAutosaveTimer:(id)arg1; -+ (id)_documentEditors; -+ (id)documentEditors; -+ (id)typedDocumentEditors; -+ (void)registerDocumentEditor:(id)arg1; -+ (void)unregisterDocumentEditor:(id)arg1; -+ (BOOL)documentType; -+ (id)documentWebPreferencesIdentifierForRichText:(BOOL)arg1; -+ (id)existingEditorForMessage:(id)arg1 editorClass:(Class)arg2; -+ (id)editorsForDocumentID:(id)arg1 editorClass:(Class)arg2; -+ (id)existingEditorForMessage:(id)arg1; -+ (void)saveDefaults; -+ (void)restoreFromDefaults; -+ (void)showEditorWithSavedState:(id)arg1; -+ (void)setNeedsAutosave; -+ (void)autoSaveTimerFired; -- (id)documentID; -- (BOOL)isEditingDocumentID:(id)arg1; -- (id)description; -- (id)initWithType:(int)arg1 settings:(id)arg2 backEnd:(id)arg3; -- (id)init; -- (BOOL)isLoaded; -- (void)setLoaded:(BOOL)arg1; -- (BOOL)isAutoSaving; -- (BOOL)load; -- (id)loadInterfaceOperation; -- (id)showInterfaceOperation; -- (id)prepareContentOperation; -- (id)loadInitialDocumentOperation; -- (void)loadInitialDocument; -- (id)finishLoadingEditorOperation; -- (BOOL)isFinishedLoading; -- (void)performOperationAfterLoad:(id)arg1; -- (void)finishLoadingEditor; -- (Class)backEndClass; -- (void)release; -- (void)dealloc; -- (BOOL)loadEditorNib; -- (id)operationQueue; -- (void)setOperationQueue:(id)arg1; -- (int)editorSharedNib; -- (void)show; -- (void)setHeaders:(id)arg1; -- (id)backEnd; -- (void)setBackEnd:(id)arg1; -- (id)webViewEditor; -- (id)headersEditor; -- (id)webMessageDocument; -- (id)toolbar; -- (id)window; -- (BOOL)autoShowEditor; -- (void)setAutoShowEditor:(BOOL)arg1; -- (BOOL)userCanApplyStationery; -- (void)setUserCanApplyStationery:(BOOL)arg1; -- (BOOL)stationeryPaneIsVisible; -- (BOOL)wantsToClose; -- (void)setWantsToClose:(BOOL)arg1; -- (void)readDefaultsFromDictionary:(id)arg1; -- (void)writeDefaultsToDictionary:(id)arg1; -- (void)saveState; -- (void)_appendDefaultsToArray:(id)arg1; -- (id)_frameSaveName; -- (void)prepareContent; -- (void)backEndDidLoadInitialContent:(id)arg1; -- (id)parsedMessageFromSettings:(id)arg1; -- (void)continueLoadingInitialContent; -- (void)postDocumentEditorDidFinishSetup; -- (void)_registerForNotificationsIfNeeded; -- (void)_setupSpellingAndGrammarChecking; -- (id)windowWillReturnFieldEditor:(id)arg1 toObject:(id)arg2; -- (void)backEnd:(id)arg1 didBeginBackgroundLoadActivity:(id)arg2; -- (void)loadingOverlayDidEnd:(id)arg1 returnCode:(long)arg2; -- (BOOL)autoSave; -- (BOOL)canSave; -- (BOOL)shouldSave; -- (void)saveMessageDueToUserAction:(BOOL)arg1; -- (void)backEnd:(id)arg1 willCreateMessageWithHeaders:(id)arg2; -- (BOOL)backEnd:(id)arg1 shouldSaveMessage:(id)arg2; -- (void)setUserSavedMessage:(BOOL)arg1; -- (BOOL)hasChanges; -- (void)reportSaveFailure:(id)arg1; -- (id)associatedMessage; -- (void)backEnd:(id)arg1 didUpdateMessage:(id)arg2; -- (void)backEndDidSaveMessage:(id)arg1 result:(int)arg2; -- (void)failedToSaveDraftSheetClosed:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (void)backEndDidChange:(id)arg1; -- (void)webViewDidChange:(id)arg1; -- (void)updateWindowContent; -- (void)updateUIAfterAppleScriptModification:(id)arg1; -- (void)composePrefsChanged; -- (id)mailAttachmentsAdded:(id)arg1; -- (void)openPanelSheetDidEnd:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (id)mimeBodyForAttachmentWithURL:(id)arg1; -- (BOOL)validateUserInterfaceItem:(id)arg1; -- (BOOL)validateMenuItem:(id)arg1; -- (void)makeRichText:(id)arg1; -- (void)makePlainText:(id)arg1; -- (void)toggleRich:(id)arg1; -- (void)insertNumberedList:(id)arg1; -- (void)insertBulletedList:(id)arg1; -- (void)convertToNumberedList:(id)arg1; -- (void)convertToBulletedList:(id)arg1; -- (void)increaseListNestingLevel:(id)arg1; -- (void)decreaseListNestingLevel:(id)arg1; -- (void)saveDocument:(id)arg1; -- (void)saveChangedDocument:(id)arg1; -- (void)saveMessageToDrafts:(id)arg1; -- (void)performClose:(id)arg1; -- (void)messageSizeDidChange:(id)arg1; -- (void)insertFile:(id)arg1; -- (void)removeAttachments:(id)arg1; -- (void)createToDo:(id)arg1; -- (void)changeTextEncoding:(id)arg1; -- (void)showPrintPanel:(id)arg1; -- (void)searchIndex:(id)arg1; -- (void)changeSpellCheckingBehavior:(id)arg1; -- (void)toggleCheckGrammarWithSpelling:(id)arg1; -- (void)showAddressPanel:(id)arg1; -- (void)windowDidResize:(id)arg1; -- (void)windowDidMove:(id)arg1; -- (id)shouldSaveTitle; -- (id)shouldSaveDescription; -- (id)shouldSaveHelptag; -- (void)beginDocumentMove; -- (void)endDocumentMove; -- (BOOL)windowShouldClose:(id)arg1; -- (void)forceClose; -- (void)closeConfirmSheetDidEnd:(id)arg1 returnCode:(long)arg2 forSave:(void *)arg3; -- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; -- (id)loadDelegate; -- (void)setLoadDelegate:(id)arg1; -- (id)settings; -- (void)setSettings:(id)arg1; - -@end - -@interface DocumentEditor (DocumentEditorToolbar) -- (BOOL)validateToolbarItem:(id)arg1; -- (void)setupToolbar; -- (id)toolbarIdentifier; -- (void)_synchronizeChangeReplyItem:(id)arg1 messageType:(int)arg2; -- (void)toggleReplyType:(int)arg1; -- (void)updateSendButtonStateInToolbar; -- (void)toolbarWillAddItem:(id)arg1; -- (void)configureSegmentedItem:(id)arg1 withDictionary:(id)arg2 forSegment:(long)arg3; -- (id)previousIdentifierForUpgradingToolbar:(id)arg1; -- (id)toolbar:(id)arg1 upgradedItemIdentifiers:(id)arg2; -- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; -- (id)toolbarDefaultItemIdentifiers:(id)arg1; -- (id)toolbarAllowedItemIdentifiers:(id)arg1; -- (id)menuForListsItem; -@end - -@interface MailDocumentEditor : DocumentEditor -{ - DeliveryFailure *deliveryFailure; - ColorBackgroundView *stationeryPane; - StationerySelector *stationerySelector; - NSTextField *stationeryNameTextField; - NSButton *stationeryNameSaveButton; - ColorBackgroundView *borderView; - NSScroller *fakeScroller; - NSViewAnimation *stationeryPaneAnimator; - NSView *imageStatusView; - NSTextField *imageFileSizeLabel; - NSTextField *imageFileSizeTextField; - NSPopUpButton *imageSizePopup; - NSProgressIndicator *imageResizingProgressWheel; - NSTextField *imageResizingProgressField; - NSMutableArray *_imageResizers; - unsigned int _textLengthForLastEstimatedMessageSize; - unsigned int _encryptionOverhead; - BOOL sendWhenFinishLoading; - BOOL hasIncludedAttachmentsFromOriginal; - NSMutableArray *_unapprovedRecipients; - NSMutableArray *userActionQueue; -} - -+ (BOOL)documentType; -+ (id)documentEditors; -+ (id)createEditorWithType:(int)arg1 settings:(id)arg2; -+ (void)restoreDraftMessage:(id)arg1 withSavedState:(id)arg2; -+ (void)emailAddressesApproved:(id)arg1; -+ (void)emailsRejected:(id)arg1; -+ (void)_emailAddresses:(id)arg1 approvedOrRejected:(BOOL)arg2; -+ (void)_setMessageStatus:(id)arg1 onMessageID:(id)arg2; -+ (void)handleFailedDeliveryOfMessage:(id)arg1 store:(id)arg2 error:(id)arg3; -+ (id)keyPathsForValuesAffectingDeliveryAccount; -- (id)init; -- (id)initWithBackEnd:(id)arg1; -- (id)initWithType:(int)arg1 settings:(id)arg2; -- (id)initWithType:(int)arg1 settings:(id)arg2 backEnd:(id)arg3; -- (BOOL)load; -- (void)finishLoadingEditor; -- (void)dealloc; -- (void)show; -- (int)messageType; -- (void)changeReplyMode:(id)arg1; -- (void)replyMessage:(id)arg1; -- (void)replyAllMessage:(id)arg1; -- (void)loadInitialDocument; -- (void)backEndDidLoadInitialContent:(id)arg1; -- (void)attachmentFinishedDownloading:(id)arg1; -- (id)document; -- (id)webView; -- (id)parsedMessageFromSettings:(id)arg1; -- (void)continueLoadingInitialContent; -- (double)animationDuration; -- (void)showOrHideStationery:(id)arg1; -- (void)animationDidEnd:(id)arg1; -- (BOOL)stationeryPaneIsVisible; -- (id)currentStationery; -- (void)loadStationery:(id)arg1; -- (void)saveAsStationery:(id)arg1; -- (void)continueSaveAsStationery:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (void)controlTextDidChange:(id)arg1; -- (void)cancelSaveAsStationery:(id)arg1; -- (void)saveSaveAsStationery:(id)arg1; -- (void)saveAsStationeryErrorSheetDidEnd:(id)arg1 returnCode:(long)arg2 contextInfo:(id)arg3; -- (BOOL)canSave; -- (void)saveMessageToDrafts:(id)arg1; -- (void)backEnd:(id)arg1 willCreateMessageWithHeaders:(id)arg2; -- (BOOL)backEnd:(id)arg1 shouldSaveMessage:(id)arg2; -- (void)backEndDidChange:(id)arg1; -- (void)backEndSenderDidChange:(id)arg1; -- (void)removeAttachments:(id)arg1; -- (void)insertOriginalAttachments:(id)arg1; -- (BOOL)_restoreOriginalAttachments; -- (void)alwaysSendWindowsFriendlyAttachments:(id)arg1; -- (void)sendWindowsFriendlyAttachments:(id)arg1; -- (void)_setSendWindowsFriendlyAttachments:(BOOL)arg1; -- (void)alwaysAttachFilesAtEnd:(id)arg1; -- (void)attachFilesAtEnd:(id)arg1; -- (void)insertFile:(id)arg1; -- (void)openPanelSheetDidEnd:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (BOOL)validateUserInterfaceItem:(id)arg1; -- (BOOL)validateMenuItem:(id)arg1; -- (BOOL)_sendButtonShouldBeEnabled; -- (void)_setUnapprovedRecipients:(id)arg1; -- (void)askApprovalSheetClosed:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (void)send:(id)arg1; -- (void)sendMessageAfterChecking:(id)arg1; -- (void)backEndDidCancelMessageDeliveryForAttachmentError:(id)arg1; -- (void)attachmentErrorSheetDidEnd:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (void)cancelSendingStationery:(id)arg1; -- (void)continueSendingStationery:(id)arg1; -- (void)emptyMessageSheetClosed:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (void)malformedAddressSheetClosed:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (void)noRecipientsSheetClosed:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (void)backEndDidAppendMessageToOutbox:(id)arg1 result:(int)arg2; -- (void)failedToAppendToOutboxSheetClosed:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (BOOL)backEnd:(id)arg1 shouldDeliverMessage:(id)arg2; -- (void)_setMessageStatusOnOriginalMessage; -- (void)backEnd:(id)arg1 didCancelMessageDeliveryForError:(id)arg2; -- (void)reportDeliveryFailure:(id)arg1; -- (void)forceClose; -- (void)backEnd:(id)arg1 didCancelMessageDeliveryForMissingCertificatesForRecipients:(id)arg2; -- (id)missingCertificatesMessageForRecipients:(id)arg1 uponDelivery:(BOOL)arg2; -- (void)backEnd:(id)arg1 didCancelMessageDeliveryForEncryptionError:(id)arg2; -- (void)shouldDeliverMessageAlertWithoutEncryptionSheetDidDismiss:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (id)deliveryAccount; -- (void)setDeliveryAccount:(id)arg1; -- (void)changeSignature:(id)arg1; -- (void)imageSizePopupChanged:(id)arg1; -- (void)messageSizeDidChange:(id)arg1; -- (void)encryptionStatusDidChange; -- (void)updateAttachmentStatus; -- (unsigned char)_isAttachmentScalable:(id)arg1; -- (unsigned char)_attachmentsContainScalableImage:(id)arg1 scalables:(id)arg2; -- (void)_updateImageSizePopup; -- (BOOL)_imageStatusHidden; -- (void)_showImageStatusView; -- (void)_hideImageStatusView; -- (struct CGSize)_imageSizeForTag:(long)arg1; -- (struct CGSize)_selectedImageSize; -- (id)_maxImageSizeAsString; -- (void)_processNextImageResizer; -- (void)_ImageResizeDidFinish:(id)arg1; -- (BOOL)_isResizingImages; -- (id)_resizerForAttachment:(id)arg1; -- (BOOL)_resizeAttachment:(id)arg1; -- (BOOL)_resizeImageAttachments:(id)arg1; -- (unsigned long)textLengthEstimate; -- (unsigned long)_signatureOverhead; -- (unsigned long)_encryptionOverhead; -- (unsigned long long)_estimateMessageSize; -- (void)_saveImageSizeToDefaults; -- (void)_setImageSizePopupToSize:(id)arg1; -- (id)attachmentStatusNeighbourView; -- (void)_mailAttachmentsDeleted; -- (void)mailAttachmentsDeleted:(id)arg1; -- (id)mailAttachmentsAdded:(id)arg1; -- (BOOL)windowShouldClose:(id)arg1; -- (void)appendMessages:(id)arg1; -- (void)appendMessageArray:(id)arg1; -- (void)_appendMessages:(id)arg1 withParsedMessages:(id)arg2; -- (void)_generateParsedMessagesToAppendForMessages:(id)arg1; -- (void)makeRichText:(id)arg1; -- (void)makePlainText:(id)arg1; -- (void)makeFontBigger:(id)arg1; -- (void)makeFontSmaller:(id)arg1; -- (void)addCcHeader:(id)arg1; -- (void)addBccHeader:(id)arg1; -- (void)addReplyToHeader:(id)arg1; -- (void)setMessagePriority:(id)arg1; - -@end - -@interface HeadersEditor : NSObject /**/ -{ - MailDocumentEditor *documentEditor; - CompletionController *completionController; - ComposeHeaderView *composeHeaderView; - NSPopUpButton *fromPopup; - NSPopUpButton *signaturePopup; - NSPopUpButton *priorityPopup; - NSButton *signButton; - NSButton *encryptButton; - AccountStatusDataSource *_deliveryASDS; - NSPopUpButton *deliveryPopUp; - AddressTextField *toField; - AddressTextField *ccField; - NSTextField *subjectField; - AddressTextField *bccField; - AddressTextField *replyToField; - DraggingTextView *addressFieldEditor; - NSMutableArray *accessoryViewOwners; - BOOL chatShouldBeEnabled; - BOOL _hasChanges; -} - -+ (id)keyPathsForValuesAffectingDeliveryAccount; -- (void)awakeFromNib; -- (void)setUpFieldsAndButtons; -- (void)finishSetUp; -- (void)setAGoodFirstResponder; -- (void)configureButtonsAndPopUps; -- (void)initializePriorityPopUp; -- (void)composePrefsChanged; -- (void)mailAccountsDidChange; -- (void)accountInfoDidChange:(id)arg1; -- (void)windowDidBecomeKey:(id)arg1; -- (void)windowDidResignKey:(id)arg1; -- (void)updatePriorityPopUpMakeActive:(BOOL)arg1; -- (void)updateSecurityControls; -- (void)updateSignButtonImages; -- (void)updateSignButtonTooltip; -- (void)updateEncryptButtonImages; -- (void)updateEncryptButtonTooltip; -- (void)updateFromAndSignatureControls; -- (void)updateSignatureControlOverridingExistingSignature:(BOOL)arg1; -- (void)updateDeliveryAccountControl; -- (void)configureDeliveryPopupButton; -- (float)deliveryPopUpSizeToFitWidth; -- (void)updateCcOrBccMyselfFieldWithSender:(id)arg1 oldSender:(id)arg2; -- (void)updatePresenceButtonState; -- (void)presenceChanged:(id)arg1; -- (void)presencePreferenceChanged:(id)arg1; -- (void)updatePresenceButtonStateForAddresses:(id)arg1; -- (void)webViewDidLoadStationery:(id)arg1; -- (void)setupAddressField:(id)arg1; -- (void)_setupField:(id)arg1 withAddressesForKey:(id)arg2 visibleSelector:(SEL)arg3; -- (void)_configureTextField:(id)arg1 isAddressField:(BOOL)arg2; -- (id)fieldForHeader:(id)arg1; -- (id)headerKeyForView:(id)arg1; -- (void)enableCompletion:(BOOL)arg1 forTextField:(id)arg2; -- (void)loadHeadersFromBackEnd; -- (void)textFieldBeganOrEndedEditing:(id)arg1; -- (void)recipientsDidChange:(id)arg1; -- (void)subjectChanged; -- (void)addressFieldChanged; -- (BOOL)headerFieldIsNonEmpty:(id)arg1; -- (id)windowWillReturnFieldEditor:(id)arg1 toObject:(id)arg2; -- (void)setHeaders:(id)arg1; -- (void)appendAddresses:(id)arg1 toHeader:(id)arg2; -- (void)setInlineSpellCheckingEnabled:(BOOL)arg1; -- (void)setCheckGrammarWithSpelling:(BOOL)arg1; -- (void)turnOffEncryption; -- (void)changeSignatureFrom:(id)arg1 to:(id)arg2; -- (BOOL)messageIsToBeSigned; -- (BOOL)messageIsToBeEncrypted; -- (BOOL)messageHasRecipients; -- (BOOL)canSignFromAnyAccount; -- (BOOL)chatShouldBeEnabled; -- (BOOL)isOkayToSaveMessage:(id)arg1; -- (void)editServerList:(id)arg1 selectedAccount:(id)arg2; -- (void)toggleAccountLock:(id)arg1; -- (void)setSelectedAccount:(id)arg1; -- (id)deliveryAccount; -- (void)setDynamicDeliveryAccountForAccount:(id)arg1; -- (void)setDeliveryAccount:(id)arg1; -- (id)mailAccount; -- (void)accountStatusDidChange:(id)arg1; -- (void)changeHeaderField:(id)arg1; -- (void)changeFromHeader:(id)arg1; -- (void)setMessagePriority:(id)arg1; -- (void)securityControlChanged:(id)arg1; -- (void)_recipientsWithoutKeysSheetClosed:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (void)chatWithRecipients:(id)arg1; -- (void)editSignatures:(id)arg1; -- (void)changeSignature:(id)arg1; -- (void)composeHeaderViewWillBeginCustomization:(id)arg1; -- (void)composeHeaderViewDidEndCustomization:(id)arg1; -- (BOOL)headerCustomizationIsInProgress; -- (void)addCcHeader:(id)arg1; -- (void)addBccHeader:(id)arg1; -- (void)addReplyToHeader:(id)arg1; -- (void)_clearFieldIfHidden:(id)arg1; -- (void)prepareToCloseWindow; -- (void)dealloc; -- (BOOL)validateUserInterfaceItem:(id)arg1; -- (BOOL)validateMenuItem:(id)arg1; -- (BOOL)validateToolbarItem:(id)arg1; -- (id)createSenderMarkupStringIncludeBrackets:(BOOL)arg1; -- (BOOL)hasChanges; -- (void)setHasChanges:(BOOL)arg1; - -@end - -#elif defined(LEOPARD) - -@class WebViewEditor; -@class HeadersEditor; -@class EditingMessageWebView; -@class ComposeBackEnd; -@class EditingWebMessageController; -@class LoadingOverlay; -@class MailDocumentEditor; -@class OldCompletionController; -@class ComposeHeaderView; -@class AccountStatusDataSource; -@class AddressTextField; -@class DraggingTextView; -@class DeliveryFailure; -@class ColorBackgroundView; -@class StationerySelector; -@class StationeryAnimator; -@class Stationery; -@class AccountStatusDataSource; -@class AccountStatusDataSource; -@class AccountStatusDataSource; - -@interface MessageEditor : NSObject -{ -} - -+ (id)sharedMessageEditor; -- (id)init; -- (id)retain; -- (unsigned int)retainCount; -- (void)release; -- (id)autorelease; -- (id)objectSpecifier; -- (void)setBackEnd:(id)fp8; - -@end - -@interface DocumentEditor : NSObject -{ - WebViewEditor *webViewEditor; - HeadersEditor *headersEditor; - NSWindow *_window; - EditingMessageWebView *composeWebView; - ComposeBackEnd *_backEnd; - NSToolbar *_toolbar; - NSMutableDictionary *_toolbarItems; - EditingWebMessageController *webMessageController; - LoadingOverlay *loadingOverlay; - NSDictionary *settings; - struct { - unsigned int userSavedMessage:1; - unsigned int userWantsToCloseWindow:1; - unsigned int userKnowsSaveFailed:1; - unsigned int registeredForNotifications:1; - unsigned int alwaysSave:1; - unsigned int userCanApplyStationery:1; - unsigned int autoShowEditor:1; - unsigned int isLoaded:1; - unsigned int isAutoSaving:1; - } _flags; - int _messageType; - struct _NSPoint _originalCascadePoint; - NSMutableDictionary *_bodiesByAttachmentURL; - NSOperationQueue *operationQueue; - NSOperation *loadInterfaceOperation; - NSOperation *showInterfaceOperation; - NSOperation *prepareContentOperation; - NSOperation *loadInitialDocumentOperation; - NSOperation *finishLoadingEditorOperation; - id _loadDelegate; - double _lastSaveTime; -} - -+ (void)initialize; -+ (id)autoSaveTimer; -+ (void)setAutosaveTimer:(id)fp8; -+ (id)_documentEditors; -+ (id)documentEditors; -+ (id)typedDocumentEditors; -+ (void)registerDocumentEditor:(id)fp8; -+ (void)unregisterDocumentEditor:(id)fp8; -+ (int)documentType; -+ (id)documentWebPreferences; -+ (id)existingEditorForMessage:(id)fp8 editorClass:(Class)fp12; -+ (id)editorsForDocumentID:(id)fp8 editorClass:(Class)fp12; -+ (id)existingEditorForMessage:(id)fp8; -+ (void)saveDefaults; -+ (void)restoreFromDefaults; -+ (void)showEditorWithSavedState:(id)fp8; -+ (void)setNeedsAutosave; -+ (void)autoSaveTimerFired; -- (id)documentID; -- (BOOL)isEditingDocumentID:(id)fp8; -- (id)description; -- (id)initWithType:(int)fp8 settings:(id)fp12 backEnd:(id)fp16; -- (BOOL)isLoaded; -- (void)setLoaded:(BOOL)fp8; -- (BOOL)isAutoSaving; -- (BOOL)load; -- (id)loadInterfaceOperation; -- (id)showInterfaceOperation; -- (id)prepareContentOperation; -- (id)loadInitialDocumentOperation; -- (void)loadInitialDocument; -- (id)finishLoadingEditorOperation; -- (BOOL)isFinishedLoading; -- (void)markFinishedLoading; -- (void)performOperationAfterLoad:(id)fp8; -- (void)finishLoadingEditor; -- (void)setShowInterfaceOperation:(id)fp8; -- (void)setLoadInterfaceOperation:(id)fp8; -- (void)setPrepareContentOperation:(id)fp8; -- (void)setLoadInitialDocumentOperation:(id)fp8; -- (void)setFinishLoadingEditorOperation:(id)fp8; -- (Class)backEndClass; -- (void)release; -- (void)dealloc; -- (BOOL)loadEditorNib; -- (id)operationQueue; -- (void)setOperationQueue:(id)fp8; -- (int)editorSharedNib; -- (void)show; -- (void)setHeaders:(id)fp8; -- (id)backEnd; -- (void)setBackEnd:(id)fp8; -- (id)webViewEditor; -- (id)headersEditor; -- (id)webMessageDocument; -- (id)toolbar; -- (id)window; -- (BOOL)autoShowEditor; -- (void)setAutoShowEditor:(BOOL)fp8; -- (BOOL)userCanApplyStationery; -- (void)setUserCanApplyStationery:(BOOL)fp8; -- (BOOL)wantsToClose; -- (void)setWantsToClose:(BOOL)fp8; -- (void)readDefaultsFromDictionary:(id)fp8; -- (void)writeDefaultsToDictionary:(id)fp8; -- (void)saveState; -- (void)_appendDefaultsToArray:(id)fp8; -- (id)_frameSaveName; -- (void)prepareContent; -- (void)backEndDidLoadInitialContent:(id)fp8; -- (id)webArchiveFromSettings:(id)fp8; -- (void)continueLoadingInitialContent; -- (void)postDocumentEditorDidFinishSetup; -- (void)_registerForNotificationsIfNeeded; -- (void)_setupSpellingAndGrammarChecking; -- (id)windowWillReturnFieldEditor:(id)fp8 toObject:(id)fp12; -- (void)backEnd:(id)fp8 didBeginBackgroundLoadActivity:(id)fp12; -- (void)loadingOverlayDidEnd:(id)fp8 returnCode:(int)fp12; -- (BOOL)autoSave; -- (BOOL)canSave; -- (BOOL)shouldSave; -- (void)saveMessageDueToUserAction:(BOOL)fp8; -- (void)backEnd:(id)fp8 willCreateMessageWithHeaders:(id)fp12; -- (BOOL)backEnd:(id)fp8 shouldSaveMessage:(id)fp12; -- (void)setUserSavedMessage:(BOOL)fp8; -- (BOOL)hasChanges; -- (void)reportSaveFailure:(id)fp8; -- (id)associatedMessage; -- (void)backEnd:(id)fp8 didUpdateMessage:(id)fp12; -- (void)backEndDidSaveMessage:(id)fp8 result:(int)fp12; -- (void)failedToSaveDraftSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)backEndDidChange:(id)fp8; -- (void)webViewDidChange:(id)fp8; -- (void)updateWindowContent; -- (void)updateUIAfterAppleScriptModification:(id)fp8; -- (void)composePrefsChanged; -- (void)mailAttachmentsAdded:(id)fp8; -- (void)openPanelSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (id)mimeBodyForAttachmentWithURL:(id)fp8; -- (BOOL)validateAction:(SEL)fp8 tag:(int)fp12; -- (BOOL)validateMenuItem:(id)fp8; -- (void)makeRichText:(id)fp8; -- (void)makePlainText:(id)fp8; -- (void)toggleRich:(id)fp8; -- (void)insertNumberedList:(id)fp8; -- (void)insertBulletedList:(id)fp8; -- (void)convertToNumberedList:(id)fp8; -- (void)convertToBulletedList:(id)fp8; -- (void)increaseListNestingLevel:(id)fp8; -- (void)decreaseListNestingLevel:(id)fp8; -- (void)saveDocument:(id)fp8; -- (void)saveChangedDocument:(id)fp8; -- (void)saveMessageToDrafts:(id)fp8; -- (void)performClose:(id)fp8; -- (void)messageSizeDidChange:(id)fp8; -- (void)insertFile:(id)fp8; -- (void)removeAttachments:(id)fp8; -- (void)createToDo:(id)fp8; -- (void)changeTextEncoding:(id)fp8; -- (void)showPrintPanel:(id)fp8; -- (void)searchIndex:(id)fp8; -- (void)changeSpellCheckingBehavior:(id)fp8; -- (void)toggleCheckGrammarWithSpelling:(id)fp8; -- (void)showAddressPanel:(id)fp8; -- (void)windowDidResize:(id)fp8; -- (void)windowDidMove:(id)fp8; -- (id)shouldSaveTitle; -- (id)shouldSaveDescription; -- (id)shouldSaveHelptag; -- (void)beginDocumentMove; -- (void)endDocumentMove; -- (void)documentsWillBeginTransfer:(id)fp8; -- (void)documentsDidEndTransfer:(id)fp8; -- (BOOL)windowShouldClose:(id)fp8; -- (void)forceClose; -- (void)closeConfirmSheetDidEnd:(id)fp8 returnCode:(int)fp12 forSave:(void *)fp16; -- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8; -- (double)lastSaveTime; -- (void)setLastSaveTime:(double)fp8; -- (id)loadDelegate; -- (void)setLoadDelegate:(id)fp8; -- (id)settings; -- (void)setSettings:(id)fp8; - -@end - -@interface DocumentEditor (DocumentEditorToolbar) -- (BOOL)validateToolbarItem:(id)fp8; -- (void)setupToolbar; -- (id)toolbarIdentifier; -- (void)_synchronizeChangeReplyItem:(id)fp8 messageType:(int)fp12; -- (void)toggleReplyType:(int)fp8; -- (void)updateSendButtonStateInToolbar; -- (void)toolbarWillAddItem:(id)fp8; -- (void)configureSegmentedItem:(id)fp8 withDictionary:(id)fp12 forSegment:(int)fp16; -- (id)previousIdentifierForUpgradingToolbar:(id)fp8; -- (id)toolbar:(id)fp8 upgradedItemIdentifiers:(id)fp12; -- (id)toolbar:(id)fp8 itemForItemIdentifier:(id)fp12 willBeInsertedIntoToolbar:(BOOL)fp16; -- (id)toolbarDefaultItemIdentifiers:(id)fp8; -- (id)toolbarAllowedItemIdentifiers:(id)fp8; -- (id)menuForListsItem; -@end - -@interface HeadersEditor : NSObject /**/ -{ - MailDocumentEditor *documentEditor; - OldCompletionController *completionController; - ComposeHeaderView *composeHeaderView; - NSPopUpButton *fromPopup; - NSPopUpButton *signaturePopup; - NSPopUpButton *priorityPopup; - NSButton *signButton; - NSButton *encryptButton; - AccountStatusDataSource *_deliveryASDS; - NSPopUpButton *deliveryPopUp; - AddressTextField *toField; - AddressTextField *ccField; - NSTextField *subjectField; - AddressTextField *bccField; - AddressTextField *replyToField; - DraggingTextView *addressFieldEditor; - NSMutableArray *accessoryViewOwners; - BOOL chatShouldBeEnabled; - BOOL _hasChanges; -} - -- (void)setUpFieldsAndButtons; -- (void)finishSetUp; -- (void)setAGoodFirstResponder; -- (void)configureButtonsAndPopUps; -- (void)initializePriorityPopUp; -- (void)composePrefsChanged; -- (void)mailAccountsDidChange; -- (void)accountInfoDidChange:(id)fp8; -- (void)windowDidBecomeKey:(id)fp8; -- (void)windowDidResignKey:(id)fp8; -- (void)updatePriorityPopUpMakeActive:(BOOL)fp8; -- (void)updateSecurityControls; -- (void)updateSignButtonImages; -- (void)updateSignButtonTooltip; -- (void)updateEncryptButtonImages; -- (void)updateEncryptButtonTooltip; -- (void)updateFromAndSignatureControls; -- (void)updateSignatureControlOverridingExistingSignature:(BOOL)fp8; -- (void)updateDeliveryAccountControl; -- (void)configureDeliveryPopupButton; -- (float)deliveryPopUpSizeToFitWidth; -- (void)updateCcOrBccMyselfFieldWithSender:(id)fp8 oldSender:(id)fp12; -- (void)updatePresenceButtonState; -- (void)presenceChanged:(id)fp8; -- (void)presencePreferenceChanged:(id)fp8; -- (void)updatePresenceButtonStateForAddresses:(id)fp8; -- (void)webViewDidLoadStationery:(id)fp8; -- (void)setupAddressField:(id)fp8; -- (void)_setupField:(id)fp8 withAddressesForKey:(id)fp12 visibleSelector:(SEL)fp16; -- (void)_configureTextField:(id)fp8 isAddressField:(BOOL)fp12; -- (id)fieldForHeader:(id)fp8; -- (id)headerKeyForView:(id)fp8; -- (void)enableCompletion:(BOOL)fp8 forTextField:(id)fp12; -- (void)loadHeadersFromBackEnd; -- (void)textFieldBeganOrEndedEditing:(id)fp8; -- (void)recipientsDidChange:(id)fp8; -- (void)subjectChanged; -- (void)addressFieldChanged; -- (BOOL)headerFieldIsNonEmpty:(id)fp8; -- (id)windowWillReturnFieldEditor:(id)fp8 toObject:(id)fp12; -- (void)setHeaders:(id)fp8; -- (void)appendAddresses:(id)fp8 toHeader:(id)fp12; -- (void)setInlineSpellCheckingEnabled:(BOOL)fp8; -- (void)setCheckGrammarWithSpelling:(BOOL)fp8; -- (void)turnOffEncryption; -- (void)changeSignatureFrom:(id)fp8 to:(id)fp12; -- (BOOL)messageIsToBeSigned; -- (BOOL)messageIsToBeEncrypted; -- (BOOL)messageHasRecipients; -- (BOOL)canSignFromAnyAccount; -- (BOOL)chatShouldBeEnabled; -- (BOOL)isOkayToSaveMessage:(id)fp8; -- (void)editServerList:(id)fp8 selectedAccount:(id)fp12; -- (void)toggleAccountLock:(id)fp8; -- (void)setSelectedAccount:(id)fp8; -- (void)setDeliveryAccount:(id)fp8; -- (id)deliveryAccount; -- (id)mailAccount; -- (void)accountStatusDidChange:(id)fp8; -- (void)changeHeaderField:(id)fp8; -- (void)changeFromHeader:(id)fp8; -- (void)setMessagePriority:(id)fp8; -- (void)securityControlChanged:(id)fp8; -- (void)_recipientsWithoutKeysSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)chatWithRecipients:(id)fp8; -- (void)editSignatures:(id)fp8; -- (void)changeSignature:(id)fp8; -- (void)composeHeaderViewWillBeginCustomization:(id)fp8; -- (void)composeHeaderViewDidEndCustomization:(id)fp8; -- (BOOL)headerCustomizationIsInProgress; -- (void)addCcHeader:(id)fp8; -- (void)addBccHeader:(id)fp8; -- (void)addReplyToHeader:(id)fp8; -- (void)_clearFieldIfHidden:(id)fp8; -- (void)prepareToCloseWindow; -- (void)dealloc; -- (BOOL)validateAction:(SEL)fp8 tag:(int)fp12; -- (BOOL)validateMenuItem:(id)fp8; -- (BOOL)validateToolbarItem:(id)fp8; -- (id)senderMarkupStringIncludeBrackets:(BOOL)fp8; -- (BOOL)hasChanges; -- (void)setHasChanges:(BOOL)fp8; - -@end - -@interface MailDocumentEditor : DocumentEditor -{ - DeliveryFailure *deliveryFailure; - ColorBackgroundView *stationeryPane; - StationerySelector *stationerySelector; - NSTextField *stationeryNameTextField; - NSButton *stationeryNameSaveButton; - ColorBackgroundView *borderView; - NSScroller *fakeScroller; - NSViewAnimation *stationeryPaneAnimator; - StationeryAnimator *stationeryTransitionAnimator; - BOOL shouldAnimateTransitions; - NSView *imageStatusView; - NSTextField *imageFileSizeLabel; - NSTextField *imageFileSizeTextField; - NSPopUpButton *imageSizePopup; - NSProgressIndicator *imageResizingProgressWheel; - NSTextField *imageResizingProgressField; - NSMutableArray *_imageResizers; - unsigned int _textLengthForLastEstimatedMessageSize; - unsigned int _signatureOverhead; - unsigned int _encryptionOverhead; - BOOL sendWhenFinishLoading; - BOOL showAllHeaders; - BOOL hasIncludedAttachmentsFromOriginal; - NSMutableArray *_unapprovedRecipients; - NSMutableArray *userActionQueue; - Stationery *_stationeryWaitingToBeLoaded; -} - -+ (int)documentType; -+ (id)documentEditors; -+ (id)createEditorWithType:(int)fp8 settings:(id)fp12; -+ (void)restoreDraftMessage:(id)fp8 withSavedState:(id)fp12; -+ (void)emailAddressesApproved:(id)fp8; -+ (void)emailsRejected:(id)fp8; -+ (void)_emailAddresses:(id)fp8 approvedOrRejected:(BOOL)fp12; -+ (void)handleFailedDeliveryOfMessage:(id)fp8 store:(id)fp12 error:(id)fp16; -- (id)init; -- (id)initWithBackEnd:(id)fp8; -- (id)initWithType:(int)fp8 settings:(id)fp12; -- (id)initWithType:(int)fp8 settings:(id)fp12 backEnd:(id)fp16; -- (BOOL)load; -- (void)finishLoadingEditor; -- (void)dealloc; -- (void)show; -- (int)messageType; -- (void)changeReplyMode:(id)fp8; -- (void)replyMessage:(id)fp8; -- (void)replyAllMessage:(id)fp8; -- (void)loadInitialDocument; -- (void)backEndDidLoadInitialContent:(id)fp8; -- (void)attachmentFinishedDownloading:(id)fp8; -- (id)document; -- (id)webView; -- (id)webArchiveFromSettings:(id)fp8; -- (void)continueLoadingInitialContent; -- (float)animationDuration; -- (void)showOrHideStationery:(id)fp8; -- (void)animationDidEnd:(id)fp8; -- (BOOL)stationeryPaneIsVisible; -- (id)currentStationery; -- (void)setStationeryWaitingToBeLoaded:(id)fp8; -- (void)loadStationery:(id)fp8; -- (void)stationeryAnimatorDidFinishAnimating; -- (void)loadStationery:(id)fp8 animate:(BOOL)fp12; -- (void)saveAsStationery:(id)fp8; -- (void)continueSaveAsStationery:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)controlTextDidChange:(id)fp8; -- (void)cancelSaveAsStationery:(id)fp8; -- (void)saveSaveAsStationery:(id)fp8; -- (void)saveAsStationeryErrorSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16; -- (void)queueUserAction:(id)fp8; -- (void)handleQueuedUserActions; -- (BOOL)canSave; -- (void)saveMessageToDrafts:(id)fp8; -- (void)backEnd:(id)fp8 willCreateMessageWithHeaders:(id)fp12; -- (BOOL)backEnd:(id)fp8 shouldSaveMessage:(id)fp12; -- (void)backEndDidChange:(id)fp8; -- (void)backEndSenderDidChange:(id)fp8; -- (void)removeAttachments:(id)fp8; -- (void)createToDo:(id)fp8; -- (void)insertOriginalAttachments:(id)fp8; -- (BOOL)_restoreOriginalAttachments; -- (void)alwaysSendWindowsFriendlyAttachments:(id)fp8; -- (void)sendWindowsFriendlyAttachments:(id)fp8; -- (void)_setSendWindowsFriendlyAttachments:(BOOL)fp8; -- (void)alwaysAttachFilesAtEnd:(id)fp8; -- (void)attachFilesAtEnd:(id)fp8; -- (void)insertFile:(id)fp8; -- (void)openPanelSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (BOOL)validateAction:(SEL)fp8 tag:(int)fp12; -- (BOOL)validateMenuItem:(id)fp8; -- (BOOL)_sendButtonShouldBeEnabled; -- (void)_setUnapprovedRecipients:(id)fp8; -- (void)askApprovalSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)send:(id)fp8; -- (void)sendMessageAfterChecking:(id)fp8; -- (void)backEndDidCancelMessageDeliveryForAttachmentError:(id)fp8; -- (void)attachmentErrorSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)cancelSendingStationery:(id)fp8; -- (void)continueSendingStationery:(id)fp8; -- (void)emptyMessageSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)malformedAddressSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)noRecipientsSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)backEndDidAppendMessageToOutbox:(id)fp8 result:(int)fp12; -- (void)failedToAppendToOutboxSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (BOOL)backEnd:(id)fp8 shouldDeliverMessage:(id)fp12; -- (void)_setMessageStatusOnOriginalMessage; -- (void)backEnd:(id)fp8 didCancelMessageDeliveryForError:(id)fp12; -- (void)reportDeliveryFailure:(id)fp8; -- (void)backEnd:(id)fp8 didCancelMessageDeliveryForMissingCertificatesForRecipients:(id)fp12; -- (id)missingCertificatesMessageForRecipients:(id)fp8 uponDelivery:(BOOL)fp12; -- (void)backEnd:(id)fp8 didCancelMessageDeliveryForEncryptionError:(id)fp12; -- (void)shouldDeliverMessageAlertWithoutEncryptionSheetDidDismiss:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)setDeliveryAccount:(id)fp8; -- (id)deliveryAccount; -- (void)changeSignature:(id)fp8; -- (void)imageSizePopupChanged:(id)fp8; -- (void)messageSizeDidChange:(id)fp8; -- (void)encryptionStatusDidChange; -- (void)updateAttachmentStatus; -- (unsigned char)_isAttachmentScalable:(id)fp8; -- (unsigned char)_attachmentsContainScalableImage:(id)fp8 scalables:(id)fp12; -- (void)_updateImageSizePopup; -- (BOOL)_imageStatusHidden; -- (void)_showImageStatusView; -- (void)_hideImageStatusView; -- (struct _NSSize)_imageSizeForTag:(int)fp8; -- (struct _NSSize)_selectedImageSize; -- (id)_maxImageSizeAsString; -- (void)_processNextImageResizer; -- (void)_ImageResizeDidFinish:(id)fp8; -- (BOOL)_isResizingImages; -- (id)_resizerForAttatchment:(id)fp8; -- (BOOL)_resizeAttachment:(id)fp8; -- (BOOL)_resizeImageAttachments:(id)fp8; -- (unsigned long long)textLengthEstimate; -- (unsigned int)_signatureOverhead; -- (unsigned int)_encryptionOverhead; -- (unsigned long long)_estimateMessageSize; -- (void)_saveImageSizeToDefaults; -- (void)_setImageSizePopupToSize:(id)fp8; -- (id)attachmentStatusNeighbourView; -- (void)_mailAttachmentsDeleted; -- (void)mailAttachmentsDeleted:(id)fp8; -- (void)mailAttachmentsAdded:(id)fp8; -- (BOOL)windowShouldClose:(id)fp8; -- (void)appendMessages:(id)fp8; -- (void)appendMessageArray:(id)fp8; -- (void)_appendMessages:(id)fp8 withWebArchives:(id)fp12; -- (void)_generateWebArchivesToAppendForMessages:(id)fp8; -- (void)makeRichText:(id)fp8; -- (void)makePlainText:(id)fp8; -- (void)makeFontBigger:(id)fp8; -- (void)makeFontSmaller:(id)fp8; -- (void)addCcHeader:(id)fp8; -- (void)addBccHeader:(id)fp8; -- (void)addReplyToHeader:(id)fp8; -- (void)setMessagePriority:(id)fp8; - -@end - -#if 0 -@interface WebViewEditor : NSObject -{ - EditingMessageWebView *webView; - DocumentEditor *documentEditor; - ComposeBackEnd *backEnd; - HyperlinkEditor *hyperlinkEditor; - EditingWebMessageController *messageController; - WebFrame *frameAllowedToLoadContent; - NSArray *attachmentsForContextualMenu; - BOOL finalSpellCheckingIsInProgress; - NSMutableSet *largeFilesAddedWhileEditing; - BOOL containsRichText; - BOOL containsRichTextFlagIsValid; - BOOL needToCheckRichnessInRange; - NSDictionary *infoForRichnessTest; -} - -- (id)init; -- (void)dealloc; -- (void)earlySetUp; -- (void)setUp; -- (void)close; -- (id)webView; -- (BOOL)useDesignMode; -- (id)documentEditor; -- (void)setBackEnd:(id)fp8; -- (id)document; -- (void)setMessageController:(id)fp8; -- (void)setFrameAllowedToLoadContent:(id)fp8; -- (void)webView:(id)fp8 decidePolicyForNavigationAction:(id)fp12 request:(id)fp16 frame:(id)fp20 decisionListener:(id)fp24; -- (id)webView:(id)fp8 resource:(id)fp12 willSendRequest:(id)fp16 redirectResponse:(id)fp20 fromDataSource:(id)fp24; -- (void)setInlineSpellCheckingEnabled:(BOOL)fp8; -- (void)setCheckGrammarWithSpelling:(BOOL)fp8; -- (BOOL)startFinalSpellCheck; -- (void)endFinalSpellCheck; -- (void)finalSpellCheckCompleted:(id)fp8; -- (void)setFinalSpellCheckingIsInProgress:(BOOL)fp8; -- (BOOL)finalSpellCheckingIsInProgress; -- (void)updateIgnoredWordsForHeader:(id)fp8; -- (BOOL)validateUserInterfaceItem:(id)fp8; -- (BOOL)validateAction:(SEL)fp8 tag:(int)fp12; -- (void)_editLink; -- (void)editLink; -- (void)continueEditLink:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16; -- (void)removeSelectedLink; -- (void)insertList:(id)fp8; -- (BOOL)allowQuoting; -- (void)increaseIndentation; -- (void)decreaseIndentation; -- (void)changeIndentationIfAllowed:(int)fp8; -- (void)continueChangeIndentation:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16; -- (BOOL)selectionIsInList; -- (BOOL)selectionIsInListType:(id)fp8; -- (BOOL)selectionIsInEmptyListItem; -- (void)insertNumberedList:(id)fp8; -- (void)insertBulletedList:(id)fp8; -- (void)_insertListWithNumbers:(BOOL)fp8 undoTitle:(id)fp12; -- (void)insertListWithNumbers:(BOOL)fp8 undoTitle:(id)fp12; -- (void)continueInsertListWithNumbers:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16; -- (void)convertToNumberedList:(id)fp8; -- (void)convertToBulletedList:(id)fp8; -- (void)convertListFromType:(id)fp8 toType:(id)fp12 undoTitle:(id)fp16; -- (void)increaseListNestingLevel:(id)fp8; -- (void)decreaseListNestingLevel:(id)fp8; -- (void)_setFloat:(id)fp8 ofNode:(id)fp12 inView:(id)fp16 undoTitle:(id)fp20; -- (void)setFloat:(id)fp8 ofNode:(id)fp12 inView:(id)fp16 undoTitle:(id)fp20; -- (void)continueSetFloat:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16; -- (BOOL)webView:(id)fp8 shouldShowDeleteInterfaceForElement:(id)fp12; -- (BOOL)webView:(id)fp8 canInsertFromPasteboard:(id)fp12 forDrag:(BOOL)fp16; -- (BOOL)allowsRichText; -- (void)removeAllFormattingFromWebView; -- (void)setAllowsRichText:(BOOL)fp8; -- (BOOL)containsRichText; -- (void)setContainsRichText:(BOOL)fp8; -- (void)invalidateRichTextCache; -- (void)changeSendFormatInBackEndAndView:(int)fp8; -- (void)checkRichnessForEditedRange:(id)fp8; -- (BOOL)webView:(id)fp8 shouldDeleteDOMRange:(id)fp12; -- (void)webViewDidInsertRichText:(id)fp8; -- (BOOL)webView:(id)fp8 shouldApplyStyle:(id)fp12 toElementsInDOMRange:(id)fp16; -- (void)continueShouldApplyStyle:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16; -- (id)alertForConvertingToRichText; -- (void)beginConvertToRichTextAlert:(id)fp8 context:(id)fp12; -- (void)convertToRichAlertDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16; -- (BOOL)isSelectionEditable; -- (void)appendFragment:(id)fp8 toDocument:(id)fp12 asQuote:(BOOL)fp16; -- (void)appendWebArchive:(id)fp8 toDocument:(id)fp12 asQuote:(BOOL)fp16; -- (void)appendAttributedString:(id)fp8 toDocument:(id)fp12 asQuote:(BOOL)fp16; -- (BOOL)webView:(id)fp8 shouldInsertText:(id)fp12 replacingDOMRange:(id)fp16 givenAction:(int)fp20; -- (BOOL)webView:(id)fp8 shouldInsertNode:(id)fp12 replacingDOMRange:(id)fp16 givenAction:(int)fp20; -- (void)webViewDidChange:(id)fp8; -- (BOOL)webView:(id)fp8 doCommandBySelector:(SEL)fp12; -- (id)validRangeFromSelection:(id)fp8; -- (id)webView:(id)fp8 shouldReplaceSelectionWithWebArchive:(id)fp12 givenAction:(int)fp16; -- (BOOL)webView:(id)fp8 shouldInsertAttachments:(id)fp12 context:(id)fp16; -- (void)webView:(id)fp8 didAddMailAttachment:(id)fp12; -- (void)webView:(id)fp8 willRemoveMailAttachment:(id)fp12; -- (BOOL)removeAttachmentsLeavingPlaceholder:(BOOL)fp8; -- (void)replaceRiskyAttachmentsWithLinks; -- (id)selectedAttachments; -- (id)attachmentForEvent:(id)fp8; -- (id)selectedAttachmentNode; -- (id)directoryForAttachment:(id)fp8; -- (void)removeAttachments:(id)fp8; -- (void)viewAttachments:(id)fp8 inLine:(BOOL)fp12; -- (void)redisplayChangedAttachment:(id)fp8; -- (void)addFileWrappersForPaths:(id)fp8; -- (void)insertAttributedStringOfAttachments:(id)fp8 allAttachmentsAreOkay:(BOOL)fp12; -- (BOOL)isOkayToInsertAttachment:(id)fp8; -- (void)pasteAsMarkup; -- (void)saveDocument:(id)fp8; -- (void)saveChangedDocument:(id)fp8; -- (id)largeFilesAddedWhileEditing; -- (void)largeFileAdded:(id)fp8; -- (void)webViewWillStartLiveResize:(id)fp8; -- (void)webViewDidEndLiveResize:(id)fp8; -- (id)infoForRichnessTest; -- (void)setInfoForRichnessTest:(id)fp8; - -@end - -@interface MailWebViewEditor : WebViewEditor -{ - BOOL needToFinishMakingPlainAfterRemovingStationery; - NSArray *backgroundTilingElements; - NSArray *backgroundTilingDivs; - NSArray *backgroundTilingFixedSizes; - NSMutableArray *uneditedEditableElements; - NSMutableArray *editedEditableElements; - DOMNode *editableElementWithMouseDown; - BOOL shouldAttachFilesAtEnd; -} - -- (id)insertablePasteboardTypes; -- (void)prepareToGoAway; -- (void)dealloc; -- (void)setUp; -- (void)setBackEnd:(id)fp8; -- (BOOL)allowQuoting; -- (void)setAllowsRichText:(BOOL)fp8; -- (id)alertForConvertingToRichText; -- (BOOL)webView:(id)fp8 shouldInsertAttachments:(id)fp12 context:(id)fp16; -- (BOOL)isOkayToLoadStationery; -- (void)continueCannotInsertStationery:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16; -- (BOOL)shouldAttachFilesAtEnd; -- (void)_insertAttributedStringOfAttachments:(id)fp8 allAttachmentsAreOkay:(BOOL)fp12; -- (void)continueShouldInsertAttachments:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16; -- (BOOL)isOkayToInsertAttachment:(id)fp8; -- (void)insertAttributedStringOfAttachments:(id)fp8 allAttachmentsAreOkay:(BOOL)fp12; -- (void)continueInsertAttributedStringOfAttachments:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16; -- (BOOL)webView:(id)fp8 canInsertFromPasteboard:(id)fp12 forDrag:(BOOL)fp16; -- (void)prepareToRemoveStationery; -- (void)webViewDidLoadStationery:(id)fp8; -- (void)stationeryDidFinishLoadingResources:(id)fp8; -- (void)handleEvent:(id)fp8; -- (void)doOrUndoEditingInSignatureWithInfo:(id)fp8; -- (id)editedEditableElements; -- (void)mouseDownDidHappen:(id)fp8 inWebView:(id)fp12; -- (void)mouseUpDidHappen:(id)fp8 inWebView:(id)fp12; -- (void)webViewDidChange:(id)fp8; -- (id)replaceOldSignatureWithNewSignature:(id)fp8; -- (void)webViewDidChangeSelection:(id)fp8; -- (BOOL)webView:(id)fp8 doCommandBySelector:(SEL)fp12; -- (BOOL)insertNewline:(id)fp8; -- (void)webView:(id)fp8 didWriteSelectionToPasteboard:(id)fp12; -- (void)changeDocumentBackgroundColorWithContext:(id)fp8; -- (void)continueChangeDocumentBackgroundColor:(id)fp8 returnCode:(int)fp12 contextInfo:(id)fp16; -- (id)backgroundTilingFixedSizes; -- (void)setBackgroundTilingFixedSizes:(id)fp8; -- (id)backgroundTilingDivs; -- (void)setBackgroundTilingDivs:(id)fp8; -- (id)backgroundTilingElements; -- (void)setBackgroundTilingElements:(id)fp8; -- (void)setShouldAttachFilesAtEnd:(BOOL)fp8; - -@end - -#endif - -#elif defined(TIGER) - -@class TilingView; -@class AddressTextField; -@class MessageTextView; -@class CompletionController; -@class ComposeBackEnd; -@class Favorites; -@class MailDelivery; -@class OldCompletionController; -@class ComposeHeaderView; -@class DraggingTextView; -@class ActivityProgressPanel; - -@interface MessageEditor : NSObject -{ - NSPopUpButton *fromPopup; - NSPopUpButton *signaturePopup; - NSPopUpButton *priorityPopup; - AddressTextField *_toField; - AddressTextField *_ccField; - NSTextField *_subjectField; - AddressTextField *_bccField; - AddressTextField *_replyToField; - ComposeHeaderView *_composeHeaderView; - OldCompletionController *completionController; - NSButton *signButton; - NSButton *encryptButton; - NSWindow *_window; - ComposeBackEnd *_backEnd; - NSMutableArray *accessoryViewOwners; - struct { - unsigned int showAllHeaders:1; - unsigned int hasRichText:1; - unsigned int userSavedMessage:1; - unsigned int userWantsToCloseWindow:1; - unsigned int hasIncludedAttachmentsFromOriginal:1; - unsigned int userKnowsSaveFailed:1; - unsigned int chatShouldBeEnabled:1; - unsigned int finalSpellCheckingInProgress:1; - unsigned int canSignFromAnyAccount:1; - unsigned int knowsCanSignFromAnyAccount:1; - unsigned int registeredForNotifications:1; - } _flags; - NSToolbar *_toolbar; - NSMutableDictionary *_toolbarItems; - int _messageType; - DraggingTextView *addressFieldEditor; - NSPanel *_deliveryFallbackPanel; - id _deliveryErrorLabel; - id _deliveryFallbackErrorLabel; - id _deliveryFallbackPopupButton; - struct _NSPoint _originalCascadePoint; - ActivityProgressPanel *_progressAlert; - NSView *imageStatusView; - NSTextField *imageFileSizeLabel; - NSTextField *imageFileSizeTextField; - NSPopUpButton *imageSizePopup; - NSProgressIndicator *imageResizingProgressWheel; - NSTextField *imageResizingProgressField; - NSMutableArray *_imageResizers; - unsigned int _textLengthForLastEstimatedMessageSize; - unsigned int _signatureOverhead; - unsigned int _encryptionOverhead; - NSMutableArray *_unapprovedRecipients; -} - -+ (id)allocWithZone:(struct _NSZone *)fp8; -+ (id)createEditorWithType:(int)fp8 settings:(id)fp12; -+ (id)existingEditorViewingMessage:(id)fp8; -+ (void)handleFailedDeliveryOfMessage:(id)fp8 store:(id)fp12 error:(id)fp16; -+ (void)restoreDraftMessage:(id)fp8 withSavedState:(id)fp12; -+ (void)saveDefaults; -+ (void)restoreFromDefaults; -+ (void)setNeedsAutosave; -+ (void)autosaveTimerFired; -+ (void)showEditorWithSavedState:(id)fp8; -+ (void)_emailAddresses:(id)fp8 approvedOrRejected:(BOOL)fp12; -+ (void)emailAddressesApproved:(id)fp8; -+ (void)emailsRejected:(id)fp8; -- (void)_setSendWindowsFriendlyAttachments:(BOOL)fp8; -- (void)show; -- (void)readDefaultsFromDictionary:(id)fp8; -- (void)_appendDefaultsToArray:(id)fp8; -- (void)writeDefaultsToDictionary:(id)fp8; -- (void)setHeaders:(id)fp8; -- (id)window; -- (void)appendAddresses:(id)fp8 toHeader:(id)fp12; -- (void)addBccHeader:(id)fp8; -- (void)addReplyToHeader:(id)fp8; -- (void)saveMessageToDrafts:(id)fp8; -- (void)makeRichText:(id)fp8; -- (void)makePlainText:(id)fp8; -- (void)changeTextEncoding:(id)fp8; -- (void)showPrintPanel:(id)fp8; -- (void)searchIndex:(id)fp8; -- (BOOL)validateAction:(SEL)fp8 tag:(int)fp12; -- (BOOL)validateMenuItem:(id)fp8; -- (void)_reallySend; -- (void)_sendMessageCheckRecipients:(BOOL)fp8 checkSpelling:(BOOL)fp12; -- (void)_send:(id)fp8; -- (void)noRecipientsSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)send:(id)fp8; -- (void)emptyMessageSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)malformedAddressSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)changeReplyMode:(id)fp8; -- (void)alwaysSendWindowsFriendlyAttachments:(id)fp8; -- (void)sendWindowsFriendlyAttachments:(id)fp8; -- (void)insertFile:(id)fp8; -- (void)showAddressPanel:(id)fp8; -- (void)appendMessagesWithGatekeeperApproval:(id)fp8; -- (void)appendMessages:(id)fp8; -- (void)chatWithRecipients:(id)fp8; -- (void)changeHeaderField:(id)fp8; -- (void)recipientsDidChange:(id)fp8; -- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8; -- (id)windowWillReturnFieldEditor:(id)fp8 toObject:(id)fp12; -- (BOOL)windowShouldClose:(id)fp8; -- (void)windowDidResize:(id)fp8; -- (void)windowDidMove:(id)fp8; -- (void)windowDidBecomeKey:(id)fp8; -- (void)windowDidResignKey:(id)fp8; -- (void)changeFromHeader:(id)fp8; -- (void)undoSignatureChange:(id)fp8; -- (void)changeSignature:(id)fp8; -- (void)editSignatures:(id)fp8; -- (void)changeSpellCheckingBehavior:(id)fp8; -- (void)setMessagePriority:(id)fp8; -- (id)directoryForAttachment:(id)fp8; -- (void)textView:(id)fp8 doubleClickedOnCell:(id)fp12 inRect:(struct _NSRect)fp16 atIndex:(unsigned int)fp32; -- (void)textView:(id)fp8 clickedOnCell:(id)fp12 inRect:(struct _NSRect)fp16 atIndex:(unsigned int)fp32; -- (void)textView:(id)fp8 draggedCell:(id)fp12 inRect:(struct _NSRect)fp16 event:(id)fp32 atIndex:(unsigned int)fp36; -- (BOOL)cachedGatekeeperApprovalStatusForAttachment:(id)fp8; -- (void)cacheGatekeeperApprovalStatus:(BOOL)fp8 forAttachment:(id)fp12; -- (BOOL)textView:(id)fp8 shouldReadSelectionFromPasteboard:(id)fp12 type:(id)fp16 result:(char *)fp20; -- (unsigned int)_signatureOverhead; -- (unsigned int)_encryptionOverhead; -- (unsigned long long)_estimateMessageSize; -- (void)_updateAttachmentStatus; -- (unsigned char)_isAttachmentScalable:(id)fp8; -- (unsigned char)_attachmentsContainScalableImage:(id)fp8 scalables:(id)fp12; -- (void)_updateImageSizePopup; -- (void)mailAttachmentsAdded:(id)fp8; -- (void)_mailAttachmentsDeleted; -- (void)mailAttachmentsDeleted:(id)fp8; -- (void)enableCompletion:(BOOL)fp8 forTextField:(id)fp12; -- (id)backEnd; -- (void)setBackEnd:(id)fp8; -- (void)updateUIAfterAppleScriptModification:(id)fp8; -- (void)deliveryFallbackPanelSendLater:(id)fp8; -- (void)deliveryFallbackPanelEditMessage:(id)fp8; -- (void)deliveryFallbackPanelTryOtherAccount:(id)fp8; -- (void)presenceChanged:(id)fp8; -- (id)_frameSaveName; -- (void)_configureTextField:(id)fp8 isAddressField:(BOOL)fp12; -- (void)_setupAddressField:(id)fp8; -- (void)dealloc; -- (id)init; -- (void)subjectChanged; -- (void)addressFieldChanged; -- (BOOL)_sendButtonShouldBeEnabled; -- (void)_setupInlineSpellChecking; -- (void)composePrefsChanged; -- (id)initWithType:(int)fp8 settings:(id)fp12; -- (void)backEnd:(id)fp8 didBeginBackgroundLoadActivity:(id)fp12; -- (void)_registerForNotificationsIfNeeded; -- (void)backEnd:(id)fp8 didCompleteLoadForEditorSettings:(id)fp12; -- (void)backEnd:(id)fp8 didCompleteMessageContentLoadForEditorSettings:(id)fp12; -- (void)_progressAlertDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (BOOL)_prepareMessageToBeSaved:(id)fp8; -- (BOOL)_shouldSaveDraft; -- (void)saveMessage; -- (void)_clearFieldIfHidden:(id)fp8; -- (void)composeHeaderViewWillBeginCustomization:(id)fp8; -- (void)composeHeaderViewDidEndCustomization:(id)fp8; -- (void)mailAccountsDidChange; -- (void)updateFromAndSignatureControls; -- (void)updateSignatureControlOverridingExistingSignature:(BOOL)fp8; -- (void)updateSignButtonImages; -- (void)updateSignButtonTooltip; -- (void)updateEncryptButtonImages; -- (void)updateEncryptButtonTooltip; -- (BOOL)canSignFromAnyAccount; -- (void)updateSecurityControls; -- (void)updateIgnoredWords; -- (void)updateCcOrBccMyselfFieldWithSender:(id)fp8 oldSender:(id)fp12; -- (void)_setupField:(id)fp8 withAddressesForKey:(id)fp12 visibleSelector:(SEL)fp16; -- (void)updateHeaderFields; -- (void)configureButtonsAndPopUps; -- (void)backEndDidChange:(id)fp8; -- (void)_setMessageStatusOnOriginalMessage; -- (void)backEndDidAppendMessageToOutbox:(id)fp8 result:(int)fp12; -- (BOOL)backEnd:(id)fp8 shouldDeliverMessage:(id)fp12; -- (BOOL)backEnd:(id)fp8 shouldSaveMessage:(id)fp12; -- (void)_setUserSavedMessage:(BOOL)fp8; -- (void)backEndDidSaveMessage:(id)fp8 result:(int)fp12; -- (id)_missingCertificatesMessageForRecipients:(id)fp8 uponDelivery:(BOOL)fp12; -- (void)backEnd:(id)fp8 didCancelMessageDeliveryForMissingCertificatesForRecipients:(id)fp12; -- (void)backEnd:(id)fp8 didCancelMessageDeliveryForError:(id)fp12; -- (void)shouldDeliverMessageAlertWithoutEncryptionSheetDidDismiss:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)backEnd:(id)fp8 didCancelMessageDeliveryForEncryptionError:(id)fp12; -- (void)reportDeliveryFailure:(id)fp8; -- (void)chooseAlternateDeliveryAccountSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)deliveryFailureSheetDidClose:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)textFieldBeganOrEndedEditing:(id)fp8; -- (void)openPanelSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)saveState; -- (void)forceWindowClose; -- (void)closeConfirmSheetDidEnd:(id)fp8 returnCode:(int)fp12 forSave:(void *)fp16; -- (void)replyMessage:(id)fp8; -- (void)replyAllMessage:(id)fp8; -- (void)presencePreferenceChanged:(id)fp8; -- (void)updatePresenceButtonState; -- (void)updatePresenceButtonStateForAddresses:(id)fp8; -- (void)_recipientsWithoutKeysSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)securityControlChanged:(id)fp8; -- (BOOL)_imageStatusHidden; -- (void)_showImageStatusView; -- (void)_hideImageStatusView; -- (struct _NSSize)_imageSizeForTag:(int)fp8; -- (struct _NSSize)_selectedImageSize; -- (id)_maxImageSizeAsString; -- (void)_processNextImageResizer; -- (void)_ImageResizeDidFinish:(id)fp8; -- (BOOL)_isResizingImages; -- (id)_resizerForAttatchment:(id)fp8; -- (BOOL)_resizeAttachment:(id)fp8; -- (BOOL)_resizeImageAttachments:(id)fp8; -- (void)imageSizePopupChanged:(id)fp8; -- (void)_setUnapprovedRecipients:(id)fp8; -- (void)askApprovalSheetClosed:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)_finalSpellCheckCompleted:(id)fp8; -- (BOOL)loadEditorNib; -- (void)appendAttributedString:(id)fp8; -- (void)updateMainContentView; -- (Class)backEndClass; -- (id)mainContentView; -- (id)attachmentStatusNeighbourView; -- (id)attachments; -- (void)insertOriginalAttachments:(id)fp8; -- (void)removeAttachments:(id)fp8; -- (void)toggleRich:(id)fp8; -- (void)pasteAsQuotation:(id)fp8; -- (void)updateContentsToShowSignature:(id)fp8; -- (unsigned long long)textLengthEstimate; -- (BOOL)isRichText; -- (void)setRichText:(BOOL)fp8; -- (void)appendMessageArray:(id)fp8; -- (void)addFileWrappersForPaths:(id)fp8; -- (void)redisplayChangedAttachment:(id)fp8; -- (void)updateRichTextFlag; - -@end - -@interface MessageEditor (MessageEditorToolbar) -- (BOOL)validateToolbarItem:(id)fp8 forSegment:(int)fp12; -- (void)_setupToolBarOnWindow:(id)fp8 messageType:(int)fp12; -- (void)_synchronizeChangeReplyItem:(id)fp8 messageType:(int)fp12; -- (void)toggleReplytype:(int)fp8; -- (void)_updateSendButtonStateInToolbar; -- (void)toolbarWillAddItem:(id)fp8; -- (id)toolbar:(id)fp8 itemForItemIdentifier:(id)fp12 willBeInsertedIntoToolbar:(BOOL)fp16; -- (id)toolbarDefaultItemIdentifiers:(id)fp8; -- (id)toolbarAllowedItemIdentifiers:(id)fp8; -@end - -@interface MessageEditor (ScriptingAdditions) -- (id)objectSpecifier; -@end - -#else - -@class TilingView; -@class AddressTextField; -@class MessageTextView; -@class CompletionController; -@class ComposeBackEnd; -@class Favorites; -@class MailDelivery; -@class OldCompletionController; - -@interface MessageEditor:NSObject -{ - TilingView *headerContainer; // 4 = 0x4 - AddressTextField *fieldPrototype; // 8 = 0x8 - NSView *fromAndSignatureContainer; // 12 = 0xc - NSPopUpButton *fromPopup; // 16 = 0x10 - NSTextField *fromLabel; // 20 = 0x14 - NSPopUpButton *signaturePopup; // 24 = 0x18 - NSTextField *signatureLabel; // 28 = 0x1c - MessageTextView *composeText; // 32 = 0x20 - OldCompletionController *completionController; // 36 = 0x24 - NSButton *signButton; // 40 = 0x28 - NSButton *encryptButton; // 44 = 0x2c - NSView *composeContentView; // 48 = 0x30 - ComposeBackEnd *backEnd; // 52 = 0x34 - NSMutableArray *accessoryViewOwners; // 56 = 0x38 - struct { - int showAllHeaders:1; - int showRichSendButton:1; - int userSavedMessage:1; - int userWantsToCloseWindow:1; - int hasIncludedAttachmentsFromOriginal:1; - int userKnowsSaveFailed:1; - int chatShouldBeEnabled:1; - } _flags; // 60 = 0x3c - NSToolbar *_toolbar; // 64 = 0x40 - NSMutableDictionary *_toolbarItems; // 68 = 0x44 - int _messageType; // 72 = 0x48 - NSPanel *_deliveryFallbackPanel; // 76 = 0x4c - id _deliveryFallbackErrorLabel; // 80 = 0x50 - id _deliveryFallbackPopupButton; // 84 = 0x54 - NSWindow *becomeRichSheetWindow; // 88 = 0x58 - float oldFromAndSignatureContainerWidth; // 92 = 0x5c -} - -+ createEditorWithType:(int)fp8 originalMessage:fp12 forwardedText:fp16 showAllHeaders:(char)fp20; -+ existingEditorViewingMessage:fp8; -+ (void)handleFailedDeliveryOfMessage:fp8 store:fp12 error:fp16; -+ (void)restoreDraftMessage:fp8 withSavedState:fp12; -+ (void)saveDefaults; -+ (void)restoreFromDefaults; -+ (void)setIsInlineSpellCheckingEnabled:(char)fp8; -+ (void)setNeedsAutosave; -+ (void)autosaveTimerFired; -+ sharedContextMenu; -+ (void)showEditorWithSavedState:fp8; -- (void)show; -- (void)readDefaultsFromDictionary:fp8; -- (void)writeDefaultsToArray:fp8; -- (void)setHeaders:fp8; -- (void)appendAttributedString:fp8; -- window; -- (void)appendAddresses:fp8 toHeader:fp12; -- (void)addBccHeader:fp8; -- (void)addReplyToHeader:fp8; -- (void)saveMessageToDrafts:fp8; -- (void)insertOriginalAttachments:fp8; -- (void)removeAttachments:fp8; -- (void)_toggleRichSheetDidEnd:fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)toggleRich:fp8; -- (void)makeRichText:fp8; -- (void)makePlainText:fp8; -- (void)changeTextEncoding:fp8; -- (void)showPrintPanel:fp8; -- (void)pasteAsQuotation:fp8; -- (void)searchIndex:fp8; -- (char)_validateAction:(SEL)fp8 tag:(int)fp12; -- (BOOL)validateMenuItem:fp8; -- (void)_send:fp8; -- (void)noRecipientsSheetClosed:fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)send:fp8; -- (void)emptyMessageSheetClosed:fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)malformedAddressSheetClosed:fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)changeReplyMode:fp8; -- (void)alwaysSendWindowsFriendlyAttachments:fp8; -- (void)sendWindowsFriendlyAttachments:fp8; -- (void)insertFile:fp8; -- (void)showAddressPanel:fp8; -- (void)appendMessages:fp8; -- (void)chatWithRecipients:fp8; -- (void)changeHeaderField:fp8; -- (void)recipientsDidChange:fp8; -- (void)nowWouldBeAGoodTimeToTerminate:fp8; -- windowWillReturnFieldEditor:fp8 toObject:fp12; -- (char)textView:fp8 doCommandBySelector:(SEL)fp12; -- (void)stayPlainOrBecomeRich:fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (char)windowShouldClose:fp8; -- (void)windowDidResize:fp8; -- (void)windowDidMove:fp8; -- (void)changeFromHeader:fp8; -- (void)undoSignatureChange:fp8; -- (void)changeSignature:fp8; -- directoryForAttachment:fp8; -- (void)textView:fp8 doubleClickedOnCell:fp12 inRect:(struct _NSRect)fp16 atIndex:(unsigned int)fp32; -- (void)textView:fp8 clickedOnCell:fp12 inRect:(struct _NSRect)fp16 atIndex:(unsigned int)fp32; -- (void)textView:fp8 draggedCell:fp12 inRect:(struct _NSRect)fp16 event:fp32 atIndex:(unsigned int)fp36; -- (char)textView:fp8 shouldReadSelectionFromPasteboard:fp12 type:fp16 result:(char *)fp20; -- attachmentContextMenu; -- (void)enableCompletion:(char)fp8 forTextField:fp12; -- backEnd; -- (void)setBackEnd:fp8; -- (void)updateUIAfterAppleScriptModification:fp8; -- (void)deliveryFallbackPanelSendLater:fp8; -- (void)deliveryFallbackPanelEditMessage:fp8; -- (void)deliveryFallbackPanelTryOtherAccount:fp8; -- (void)presenceChanged:fp8; -- _frameSaveName; -- (void)awakeFromNib; -- (void)dealloc; -- init; -- (void)subjectChanged; -- (void)addressFieldChanged; -- (char)_sendButtonShouldBeEnabled; -- (void)_setupTextViewInlineSpellChecking; -- (void)composePrefsChanged:fp8; -- (void)_configureComposeWindowForType:(int)fp8 message:fp12; -- initWithType:(int)fp8 message:fp12 showAllHeaders:(char)fp16; -- (char)_prepareMessageToBeSaved:fp8; -- (char)_shouldSaveDraft; -- (void)saveMessage; -- (void)fromAndSignatureContainerFrameChanged:fp8; -- (void)updateFromAndSignatureControls; -- (void)updateFromAndSignatureViewLayout; -- (void)updateSignButtonImages; -- (void)updateEncryptButtonImages; -- (void)updateSecurityControls:(char)fp8; -- (void)updateHeaderFields; -- (void)configureInitialText:fp8; -- (char)isRichText; -- (void)setRichText:(char)fp8; -- (void)backEndDidChange:fp8; -- (void)reloadContentsFromMessage:fp8; -- (void)messageWillNeedRecoloring:fp8; -- (void)_setMessageStatusOnOriginalMessage; -- (void)backEndDidAppendMessageToOutbox:fp8 result:(int)fp12; -- (BOOL)backEnd:fp8 shouldDeliverMessage:fp12; -- (char)backEnd:fp8 shouldSaveMessage:fp12; -- (void)_setUserSavedMessage:(char)fp8; -- (void)backEndDidSaveMessage:fp8 result:(int)fp12; -- _nameForRecipient:fp8; -- (void)backEnd:fp8 didCancelMessageDeliveryForMissingCertificatesForRecipients:fp12; -- (void)backEnd:fp8 didCancelMessageDeliveryForError:fp12; -- (void)shouldDeliverMessageAlertWithoutEncryptionSheetDidDismiss:fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)backEnd:fp8 didCancelMessageDeliveryForEncryptionError:fp12; -- (void)reportDeliveryFailure:fp8; -- (void)chooseAlternateDeliveryAccountSheetClosed:fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)deliveryFailureSheetDidClose:fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)completionControllerDidSelectAddress:fp8; -- (void)textFieldBeganOrEndedEditing:fp8; -- (void)appendMessageArray:fp8; -- (void)addFileWrappersForPaths:fp8; -- (void)openPanelSheetDidEnd:fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)saveState; -- (void)forceWindowClose; -- (void)closeConfirmSheetDidEnd:fp8 returnCode:(int)fp12 forSave:(void *)fp16; -- (void)replyMessage:fp8; -- (void)replyAllMessage:fp8; -- (void)presencePreferenceChanged:fp8; -- (void)updatePresenceButtonState; -- (void)updatePresenceButtonStateForAddresses:fp8; -- (void)securityControlChanged:fp8; - -@end - -@interface MessageEditor(MessageEditorToolbar) -- (BOOL)validateToolbarItem:fp8; -- (void)_setupToolBarOnWindow:fp8 messageType:(int)fp12; -- (void)_synchronizeChangeReplyItem:fp8 messageType:(int)fp12; -- (void)toggleReplytype:(int)fp8; -- (void)_updateSendButtonStateInToolbar; -- (void)_updateSendButtonInToolbarWithImage:fp8; -- (void)toolbarWillAddItem:fp8; -- toolbar:fp8 itemForItemIdentifier:fp12 willBeInsertedIntoToolbar:(BOOL)fp16; -- toolbarDefaultItemIdentifiers:fp8; -- toolbarAllowedItemIdentifiers:fp8; -@end - -@interface MessageEditor(ScriptingAdditions) -- objectSpecifier; -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MessageHeaderDisplay.h b/GPGMail/Source/PrivateHeaders/MessageHeaderDisplay.h deleted file mode 100644 index 8d10e2b9..00000000 --- a/GPGMail/Source/PrivateHeaders/MessageHeaderDisplay.h +++ /dev/null @@ -1,320 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -@class MessageHeaderView; -@class MessageTextContainer; - -@interface MessageHeaderDisplay : NSObject -{ - MessageHeaderView *headerView; - MessageContentController *contentController; - MessageTextContainer *specialContainer; - NSImageView *senderImageView; - NSString *unloadedSender; - double oldHeaderViewWidth; - BOOL isCalculatingAddressLines; - BOOL isForPrinting; - BOOL isViewingSource; - MessageViewingState *_viewingState; -} - -+ (id)copyHeadersForMessage:(id)arg1 viewingState:(id)arg2; -+ (id)_copyRSSHeadersForMessage:(id)arg1 viewingState:(id)arg2; -+ (void)_addAddressesToString:(id)arg1 addressStrings:(id)arg2 plainAddresses:(id)arg3 addressAttachments:(id)arg4 key:(id)arg5 viewingState:(id)arg6 tabPosition:(long long)arg7 range:(struct _NSRange *)arg8; -+ (void)_setSendersFromAddressAttachments:(id)arg1; -+ (void)_stripTrailingReturns:(id)arg1; -+ (void)setUpAttachmentsDescriptionForMessage:(id)arg1 viewingState:(id)arg2; -+ (id)formattedAttachmentsSizeForAttachments:(id)arg1; -+ (id)formattedAttachmentsSizeForMessage:(id)arg1; -+ (unsigned long long)numberOfAddressesThatFitOnTwoLinesAttachments:(id)arg1 strings:(id)arg2 inTextContainer:(id)arg3 withIndent:(long long)arg4 andVerticalLocation:(long long)arg5 forPrinting:(BOOL)arg6; -+ (id)linkForMoreAddressesCount:(unsigned long long)arg1 headerKey:(id)arg2 font:(id)arg3; -+ (id)copyViewingState:(id)arg1; -+ (void)setUpEncryptionAndSignatureImageForMessage:(id)arg1 viewingState:(id)arg2; -+ (id)orderedKeys:(id)arg1 withTableViewOrder:(id)arg2; -+ (id)regularParagraphStyleForTabPosition:(long long)arg1; -+ (id)regularParagraphStyleForTabPosition:(long long)arg1 paragraphSpacing:(long long)arg2; -+ (id)addressParagraphStyleForTabPosition:(long long)arg1 withLineBreakMode:(unsigned long long)arg2 forPrinting:(BOOL)arg3; -+ (void)setTabsWithPosition:(long long)arg1 inAttributedString:(id)arg2 withKeys:(id)arg3 addressKeys:(id)arg4 addressAttachments:(id)arg5 forPrinting:(BOOL)arg6; -+ (id)attributedStringOfLength:(long long)arg1 usingAttachments:(id)arg2 startingAtIndex:(long long)arg3 strings:(id)arg4 newAttachments:(id *)arg5 forPrinting:(BOOL)arg6; -+ (void)rangeOfAddresses:(struct _NSRange *)arg1 rangeOfLink:(struct _NSRange *)arg2 forKey:(id)arg3 inAttributedString:(id)arg4; -- (void)dealloc; -@property(retain) MessageViewingState *viewingState; -- (void)awakeFromNib; -- (void)setUp; -- (id)unloadedSender; -- (void)setUnloadedSender:(id)arg1; -- (void)display:(id)arg1; -- (void)prepareToRemoveView; -- (void)displayAttributedString:(id)arg1; -- (void)headerViewFrameChanged:(id)arg1; -- (void)recalculateAddressLinesShouldDisplay:(BOOL)arg1; -- (void)updateSubjectURLMatches:(id)arg1; -- (void)showAllAddressesForKey:(id)arg1; -- (BOOL)textView:(id)arg1 clickedOnLink:(id)arg2 atIndex:(unsigned long long)arg3; -- (void)adjustFontSizeBy:(long long)arg1 viewingState:(id)arg2; -- (id)selectedText; -- (void)_addressBookChanged:(id)arg1; -- (void)_addressPhotoLoaded:(id)arg1; -- (id)textView; -- (void)textView:(id)arg1 clickedOnCell:(id)arg2 event:(id)arg3 inRect:(struct CGRect)arg4 atIndex:(unsigned long long)arg5; -- (void)layoutManager:(id)arg1 didCompleteLayoutForTextContainer:(id)arg2 atEnd:(BOOL)arg3; -- (void)setIsForPrinting:(BOOL)arg1; - -@end - -#elif defined(SNOW_LEOPARD) - -@class MessageHeaderView; -@class MessageContentController; -@class MessageTextContainer; -@class MessageViewingState; - -@interface MessageHeaderDisplay : NSObject -{ - MessageHeaderView *headerView; - MessageContentController *contentController; - MessageTextContainer *specialContainer; - NSImageView *senderImageView; - NSString *unloadedSender; - float oldHeaderViewWidth; - BOOL isCalculatingAddressLines; - BOOL isForPrinting; - BOOL isViewingSource; - MessageViewingState *_viewingState; -} - -+ (id)copyHeadersForMessage:(id)arg1 viewingState:(id)arg2; -+ (id)_copyRSSHeadersForMessage:(id)arg1 viewingState:(id)arg2; -+ (void)_addAddressesToString:(id)arg1 addressStrings:(id)arg2 plainAddresses:(id)arg3 addressAttachments:(id)arg4 key:(id)arg5 viewingState:(id)arg6 tabPosition:(long)arg7 range:(struct _NSRange *)arg8; -+ (void)_setSendersFromAddressAttachments:(id)arg1; -+ (void)_stripTrailingReturns:(id)arg1; -+ (void)setUpAttachmentsDescriptionForMessage:(id)arg1 viewingState:(id)arg2; -+ (id)formattedAttachmentsSizeForAttachments:(id)arg1; -+ (id)formattedAttachmentsSizeForMessage:(id)arg1; -+ (unsigned long)numberOfAddressesThatFitOnTwoLinesAttachments:(id)arg1 strings:(id)arg2 inTextContainer:(id)arg3 withIndent:(long)arg4 andVerticalLocation:(long)arg5 forPrinting:(BOOL)arg6; -+ (id)linkForMoreAddressesCount:(unsigned long)arg1 headerKey:(id)arg2 font:(id)arg3; -+ (id)copyViewingState:(id)arg1; -+ (void)setUpEncryptionAndSignatureImageForMessage:(id)arg1 viewingState:(id)arg2; -+ (id)orderedKeys:(id)arg1 withTableViewOrder:(id)arg2; -+ (id)regularParagraphStyleForTabPosition:(long)arg1; -+ (id)regularParagraphStyleForTabPosition:(long)arg1 paragraphSpacing:(long)arg2; -+ (id)addressParagraphStyleForTabPosition:(long)arg1 withLineBreakMode:(unsigned long)arg2 forPrinting:(BOOL)arg3; -+ (void)setTabsWithPosition:(long)arg1 inAttributedString:(id)arg2 withKeys:(id)arg3 addressKeys:(id)arg4 addressAttachments:(id)arg5 forPrinting:(BOOL)arg6; -+ (id)attributedStringOfLength:(long)arg1 usingAttachments:(id)arg2 startingAtIndex:(long)arg3 strings:(id)arg4 newAttachments:(id *)arg5 forPrinting:(BOOL)arg6; -+ (void)rangeOfAddresses:(struct _NSRange *)arg1 rangeOfLink:(struct _NSRange *)arg2 forKey:(id)arg3 inAttributedString:(id)arg4; -- (void)dealloc; -- (id)viewingState; -- (void)setViewingState:(id)arg1; -- (void)awakeFromNib; -- (void)setUp; -- (id)unloadedSender; -- (void)setUnloadedSender:(id)arg1; -- (void)display:(id)arg1; -- (void)prepareToRemoveView; -- (void)displayAttributedString:(id)arg1; -- (void)headerViewFrameChanged:(id)arg1; -- (void)recalculateAddressLinesShouldDisplay:(BOOL)arg1; -- (void)updateSubjectURLMatches:(id)arg1; -- (void)showAllAddressesForKey:(id)arg1; -- (BOOL)textView:(id)arg1 clickedOnLink:(id)arg2 atIndex:(unsigned long)arg3; -- (void)adjustFontSizeBy:(long)arg1 viewingState:(id)arg2; -- (id)selectedText; -- (void)_addressBookChanged:(id)arg1; -- (void)_addressPhotoLoaded:(id)arg1; -- (id)textView; -- (void)textView:(id)arg1 clickedOnCell:(id)arg2 event:(id)arg3 inRect:(struct CGRect)arg4 atIndex:(unsigned long)arg5; -- (void)layoutManager:(id)arg1 didCompleteLayoutForTextContainer:(id)arg2 atEnd:(BOOL)arg3; -- (void)setIsForPrinting:(BOOL)arg1; - -@end - -#elif defined(LEOPARD) - -@class MessageHeaderView; -@class MessageContentController; -@class MessageTextContainer; -@class MessageViewingState; - -@interface MessageHeaderDisplay : NSObject -{ - MessageHeaderView *headerView; - MessageContentController *contentController; - MessageTextContainer *specialContainer; - NSImageView *senderImageView; - NSString *unloadedSender; - float oldHeaderViewWidth; - BOOL isCalculatingAddressLines; - BOOL isForPrinting; - BOOL isViewingSource; - MessageViewingState *_viewingState; -} - -+ (id)copyHeadersForMessage:(id)fp8 viewingState:(id)fp12; -+ (id)_copyRSSHeadersForMessage:(id)fp8 viewingState:(id)fp12; -+ (void)_addAddressesToString:(id)fp8 addressStrings:(id)fp12 plainAddresses:(id)fp16 addressAttachments:(id)fp20 key:(id)fp24 viewingState:(id)fp28 tabPosition:(int)fp32 range:(struct _NSRange *)fp36; -+ (void)_setSendersFromAddressAttachments:(id)fp8; -+ (void)_stripTrailingReturns:(id)fp8; -+ (void)setUpAttachmentsDescriptionForMessage:(id)fp8 viewingState:(id)fp12; -+ (id)formattedAttachmentsSizeForAttachments:(id)fp8; -+ (id)formattedAttachmentsSizeForMessage:(id)fp8; -+ (int)numberOfAddressesThatFitOnTwoLinesAttachments:(id)fp8 strings:(id)fp12 inTextContainer:(id)fp16 withIndent:(int)fp20 andVerticalLocation:(int)fp24 forPrinting:(BOOL)fp28; -+ (id)linkForMoreAddressesCount:(int)fp8 headerKey:(id)fp12 font:(id)fp16; -+ (id)copyViewingState:(id)fp8; -+ (void)setUpEncryptionAndSignatureImageForMessage:(id)fp8 viewingState:(id)fp12; -+ (id)orderedKeys:(id)fp8 withTableViewOrder:(id)fp12; -+ (id)regularParagraphStyleForTabPosition:(int)fp8; -+ (id)regularParagraphStyleForTabPosition:(int)fp8 paragraphSpacing:(int)fp12; -+ (id)addressParagraphStyleForTabPosition:(int)fp8 withLineBreakMode:(unsigned int)fp12 forPrinting:(BOOL)fp16; -+ (void)setTabsWithPosition:(int)fp8 inAttributedString:(id)fp12 withKeys:(id)fp16 addressKeys:(id)fp20 addressAttachments:(id)fp24 forPrinting:(BOOL)fp28; -+ (id)attributedStringOfLength:(int)fp8 usingAttachments:(id)fp12 startingAtIndex:(int)fp16 strings:(id)fp20 newAttachments:(id *)fp24 forPrinting:(BOOL)fp28; -+ (void)rangeOfAddresses:(struct _NSRange *)fp8 rangeOfLink:(struct _NSRange *)fp12 forKey:(id)fp16 inAttributedString:(id)fp20; -- (void)dealloc; -- (id)viewingState; -- (void)setViewingState:(id)fp8; -- (void)awakeFromNib; -- (void)setUp; -- (id)unloadedSender; -- (void)setUnloadedSender:(id)fp8; -- (void)display:(id)fp8; -- (void)prepareToRemoveView; -- (void)displayAttributedString:(id)fp8; -- (void)headerViewFrameChanged:(id)fp8; -- (void)recalculateAddressLinesShouldDisplay:(BOOL)fp8; -- (void)updateSubjectURLMatches:(id)fp8; -- (void)showAllAddressesForKey:(id)fp8; -- (BOOL)textView:(id)fp8 clickedOnLink:(id)fp12 atIndex:(unsigned int)fp16; -- (void)adjustFontSizeBy:(int)fp8 viewingState:(id)fp12; -- (id)selectedText; -- (void)_addressBookChanged:(id)fp8; -- (void)_addressPhotoLoaded:(id)fp8; -- (id)textView; -- (void)textView:(id)fp8 clickedOnCell:(id)fp12 event:(id)fp16 inRect:(struct _NSRect)fp20 atIndex:(unsigned int)fp36; -- (void)layoutManager:(id)fp8 didCompleteLayoutForTextContainer:(id)fp12 atEnd:(BOOL)fp16; -- (void)setIsForPrinting:(BOOL)fp8; - -@end - -#elif defined(TIGER) - -@class MessageHeaderView; -@class MessageContentController; -@class MessageTextContainer; - -@interface MessageHeaderDisplay : NSObject -{ - MessageHeaderView *headerView; - MessageContentController *contentController; - MessageTextContainer *specialContainer; - NSImageView *senderImageView; - NSString *unloadedSender; - float oldHeaderViewWidth; - BOOL isCalculatingAddressLines; - BOOL isForPrinting; - BOOL isViewingSource; -} - -+ (id)copyHeadersForMessage:(id)fp8 viewingState:(id)fp12; -+ (void)setUpAttachmentsDescriptionForMessage:(id)fp8 viewingState:(id)fp12; -+ (id)formattedAttachmentsSizeForAttachments:(id)fp8; -+ (id)formattedAttachmentsSizeForMessage:(id)fp8; -+ (int)numberOfAddressesThatFitOnTwoLinesAttachments:(id)fp8 strings:(id)fp12 inTextContainer:(id)fp16 withIndent:(int)fp20 andVerticalLocation:(int)fp24 forPrinting:(BOOL)fp28; -+ (id)linkForMoreAddressesCount:(int)fp8 headerKey:(id)fp12 font:(id)fp16; -+ (id)copyViewingState:(id)fp8; -+ (void)setUpEncryptionAndSignatureImageForMessage:(id)fp8 viewingState:(id)fp12; -+ (id)orderedKeys:(id)fp8 withTableViewOrder:(id)fp12; -+ (id)regularParagraphStyleForTabPosition:(int)fp8; -+ (id)regularParagraphStyleForTabPosition:(int)fp8 paragraphSpacing:(int)fp12; -+ (id)addressParagraphStyleForTabPosition:(int)fp8 withLineBreakMode:(int)fp12 forPrinting:(BOOL)fp16; -+ (void)setTabsWithPosition:(int)fp8 inAttributedString:(id)fp12 withKeys:(id)fp16 addressKeys:(id)fp20 addressAttachments:(id)fp24 forPrinting:(BOOL)fp28; -+ (id)attributedStringOfLength:(int)fp8 usingAttachments:(id)fp12 startingAtIndex:(int)fp16 strings:(id)fp20 newAttachments:(id *)fp24 forPrinting:(BOOL)fp28; -+ (void)rangeOfAddresses:(struct _NSRange *)fp8 rangeOfLink:(struct _NSRange *)fp12 forKey:(id)fp16 inAttributedString:(id)fp20; -- (void)dealloc; -- (void)awakeFromNib; -- (void)setUp; -- (void)display:(id)fp8; -- (void)prepareToRemoveView; -- (void)displayAttributedString:(id)fp8; -- (void)headerViewFrameChanged:(id)fp8; -- (void)recalculateAddressLinesShouldDisplay:(BOOL)fp8; -- (void)showAllAddressesForKey:(id)fp8; -- (id)textView:(id)fp8 willWriteSelectionToPasteboard:(id)fp12 type:(id)fp16; -- (BOOL)textView:(id)fp8 clickedOnLink:(id)fp12 atIndex:(unsigned int)fp16; -- (void)adjustFontSizeBy:(int)fp8 viewingState:(id)fp12; -- (id)selectedText; -- (id)textView:(id)fp8 dragImageForSelectionWithEvent:(id)fp12 origin:(struct _NSPoint *)fp16; -- (id)dragImageForSelection; -- (void)textViewDidSelectAll:(id)fp8; -- (void)selectAll; -- (void)textView:(id)fp8 setSelectedRange:(struct _NSRange)fp12 affinity:(int)fp20 stillSelecting:(BOOL)fp24; -- (void)messageTextIsChangingSelectionToRange:(struct _NSRange)fp8; -- (void)_addressPhotoLoaded:(id)fp8; -- (id)textView; -- (void)textView:(id)fp8 clickedOnCell:(id)fp12 event:(id)fp16 inRect:(struct _NSRect)fp20 atIndex:(unsigned int)fp36; -- (void)textView:(id)fp8 draggedCell:(id)fp12 inRect:(struct _NSRect)fp16 event:(id)fp32 atIndex:(unsigned int)fp36; -- (void)layoutManager:(id)fp8 didCompleteLayoutForTextContainer:(id)fp12 atEnd:(BOOL)fp16; -- (void)setIsForPrinting:(BOOL)fp8; - -@end - -#else - -@class MessageHeaderView; -@class MessageContentController; -@class MessageTextContainer; - -@interface MessageHeaderDisplay:NSObject -{ - MessageHeaderView *headerView; // 4 = 0x4 - MessageContentController *contentController; // 8 = 0x8 - MessageTextContainer *specialContainer; // 12 = 0xc - NSImageView *senderImageView; // 16 = 0x10 - NSString *unloadedSender; // 20 = 0x14 - float oldHeaderViewWidth; // 24 = 0x18 - char isCalculatingAddressLines; // 28 = 0x1c - char isForPrinting; // 29 = 0x1d - char isViewingSource; // 30 = 0x1e -} - -+ copyHeadersForMessage:fp8 viewingState:fp12; -+ (void)setUpAttachmentsDescriptionForMessage:fp8 viewingState:fp12; -+ formattedAttachmentsSizeForAttachments:fp8; -+ formattedAttachmentsSizeForMessage:fp8; -+ (int)numberOfAddressesThatFitOnTwoLinesAttachments:fp8 strings:fp12 inTextContainer:fp16 withIndent:(int)fp20 andVerticalLocation:(int)fp24 forPrinting:(char)fp28; -+ linkForMoreAddressesCount:(int)fp8 headerKey:fp12; -+ copyViewingState:fp8; -+ (void)setUpEncryptionAndSignatureImageForMessage:fp8 viewingState:fp12; -+ orderedKeys:fp8 withTableViewOrder:fp12; -+ regularParagraphStyleForTabPosition:(int)fp8; -+ addressParagraphStyleForTabPosition:(int)fp8 withLineBreakMode:(int)fp12 forPrinting:(char)fp16; -+ (void)setTabsWithPosition:(int)fp8 inAttributedString:fp12 withKeys:fp16 addressKeys:fp20 addressAttachments:fp24 forPrinting:(char)fp28; -+ attributedStringOfLength:(int)fp8 usingAttachments:fp12 startingAtIndex:(int)fp16 strings:fp20 newAttachments:(id *)fp24 forPrinting:(char)fp28; -+ (void)rangeOfAddresses:(struct _NSRange *)fp8 rangeOfLink:(struct _NSRange *)fp12 forKey:fp16 inAttributedString:fp20; -- (void)dealloc; -- (void)awakeFromNib; -- (void)setUp; -- (void)display:fp8; -- (void)prepareToRemoveView; -- (void)displayAttributedString:fp8; -- (void)headerViewFrameChanged:fp8; -- (void)recalculateAddressLinesShouldDisplay:(char)fp8; -- (void)showAllAddressesForKey:fp8; -- textView:fp8 willWriteSelectionToPasteboard:fp12 type:fp16; -- (char)textView:fp8 clickedOnLink:fp12 atIndex:(unsigned int)fp16; -- selectedText; -- textView:fp8 dragImageForSelectionWithEvent:fp12 origin:(struct _NSPoint *)fp16; -- dragImageForSelection; -- (void)textViewDidSelectAll:fp8; -- (void)selectAll; -- (void)textView:fp8 setSelectedRange:(struct _NSRange)fp12 affinity:(int)fp20 stillSelecting:(char)fp24; -- (void)messageTextIsChangingSelectionToRange:(struct _NSRange)fp8; -- (void)_addressPhotoLoaded:fp8; -- textView; -- (void)textView:fp8 clickedOnCell:fp12 event:fp16 inRect:(struct _NSRect)fp20 atIndex:(unsigned int)fp36; -- (void)textView:fp8 draggedCell:fp12 inRect:(struct _NSRect)fp16 event:fp32 atIndex:(unsigned int)fp36; -- (void)layoutManager:fp8 didCompleteLayoutForTextContainer:fp12 atEnd:(char)fp16; -- (void)setIsForPrinting:(char)fp8; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MessageHeaders.h b/GPGMail/Source/PrivateHeaders/MessageHeaders.h deleted file mode 100644 index b5be19e7..00000000 --- a/GPGMail/Source/PrivateHeaders/MessageHeaders.h +++ /dev/null @@ -1,247 +0,0 @@ -/* MessageHeaders.h created by dave on Sat 25-Sep-1999 */ - -#import - -#ifdef SNOW_LEOPARD_64 - -@interface MessageHeaders : NSObject -{ - NSData *_data; - unsigned int _preferredEncoding; -} - -+ (void)initialize; -+ (BOOL)isStructuredHeaderKey:(id)arg1; -+ (BOOL)_isImageHeaderKey:(id)arg1; -+ (const char *)cstringForKey:(id)arg1; -+ (id)localizedHeaders; -+ (id)localizedHeadersFromEnglishHeaders:(id)arg1; -+ (id)englishHeadersFromLocalizedHeaders:(id)arg1; -- (id)initWithHeaderData:(id)arg1 encoding:(unsigned int)arg2; -- (id)copyWithZone:(struct _NSZone *)arg1; -- (void)dealloc; -- (void)finalize; -- (id)mutableCopy; -- (id)headerData; -- (unsigned int)preferredEncoding; -- (void)setPreferredEncoding:(unsigned int)arg1; -- (id)htmlHeaderKey:(id)arg1 useBold:(BOOL)arg2 useGray:(BOOL)arg3; -- (id)htmlValueWithKey:(id)arg1 value:(id)arg2 useBold:(BOOL)arg3; -- (id)htmlStringShowingHeaderDetailLevel:(int)arg1; -- (id)htmlStringShowingHeaderDetailLevel:(int)arg1 useBold:(BOOL)arg2 useGray:(BOOL)arg3; -- (id)attributedStringShowingHeaderDetailLevel:(int)arg1; -- (id)attributedStringShowingHeaderDetailLevel:(int)arg1 useHeadIndents:(BOOL)arg2 useBold:(BOOL)arg3 includeBCC:(BOOL)arg4; -- (id)headersDictionaryWithHeaderDetailLevel:(int)arg1; -- (id)headersDictionaryWithHeaderDetailLevel:(int)arg1 forMessageType:(BOOL)arg2; -- (id)allHeaderKeys; -- (void)_setCapitalizedKey:(id)arg1 forKey:(id)arg2; -- (id)_capitalizedKeyForKey:(id)arg1; -- (id)_createHeaderValueForKey:(id)arg1 offset:(unsigned long long *)arg2; -- (id)_createHeaderValueForKey:(id)arg1; -- (BOOL)hasHeaderForKey:(id)arg1; -- (id)headersForKey:(id)arg1; -- (id)firstHeaderForKey:(id)arg1; -- (id)_decodeHeaderKeysFromData:(id)arg1; -- (id)isoLatin1CharsetHint; -- (id)mailVersion; -- (BOOL)messageIsFromMicrosoft; -- (void)_appendAddressList:(id)arg1 toData:(id)arg2; -- (id)encodedHeaders; -- (id)encodedHeadersIncludingFromSpace:(BOOL)arg1; -- (void)appendHeaderData:(id)arg1 andRecipients:(id)arg2 recipientsByHeaderKey:(id)arg3 expandPrivate:(BOOL)arg4 includeComment:(BOOL)arg5; -- (void)appendHeaderData:(id)arg1 andRecipients:(id)arg2 recipientsByHeaderKey:(id)arg3; -- (id)allRecipientsExpandPrivate:(BOOL)arg1 includeComment:(BOOL)arg2; -- (id)_encodedHeadersIncludingFromSpace:(BOOL)arg1; - -@end - -#elif defined(SNOW_LEOPARD) - -@interface MessageHeaders : NSObject -{ - NSData *_data; - unsigned int _preferredEncoding; -} - -+ (void)initialize; -+ (BOOL)isStructuredHeaderKey:(id)arg1; -+ (BOOL)_isImageHeaderKey:(id)arg1; -+ (const char *)cstringForKey:(id)arg1; -+ (id)localizedHeaders; -+ (id)localizedHeadersFromEnglishHeaders:(id)arg1; -+ (id)englishHeadersFromLocalizedHeaders:(id)arg1; -- (id)initWithHeaderData:(id)arg1 encoding:(unsigned long)arg2; -- (id)copyWithZone:(struct _NSZone *)arg1; -- (void)dealloc; -- (void)finalize; -- (id)mutableCopy; -- (id)headerData; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)arg1; -- (id)htmlHeaderKey:(id)arg1 useBold:(BOOL)arg2 useGray:(BOOL)arg3; -- (id)htmlValueWithKey:(id)arg1 value:(id)arg2 useBold:(BOOL)arg3; -- (id)htmlStringShowingHeaderDetailLevel:(int)arg1; -- (id)htmlStringShowingHeaderDetailLevel:(int)arg1 useBold:(BOOL)arg2 useGray:(BOOL)arg3; -- (id)attributedStringShowingHeaderDetailLevel:(int)arg1; -- (id)attributedStringShowingHeaderDetailLevel:(int)arg1 useHeadIndents:(BOOL)arg2 useBold:(BOOL)arg3 includeBCC:(BOOL)arg4; -- (id)headersDictionaryWithHeaderDetailLevel:(int)arg1; -- (id)headersDictionaryWithHeaderDetailLevel:(int)arg1 forMessageType:(BOOL)arg2; -- (id)allHeaderKeys; -- (void)_setCapitalizedKey:(id)arg1 forKey:(id)arg2; -- (id)_capitalizedKeyForKey:(id)arg1; -- (id)_createHeaderValueForKey:(id)arg1 offset:(unsigned int *)arg2; -- (id)_createHeaderValueForKey:(id)arg1; -- (BOOL)hasHeaderForKey:(id)arg1; -- (id)headersForKey:(id)arg1; -- (id)firstHeaderForKey:(id)arg1; -- (id)_decodeHeaderKeysFromData:(id)arg1; -- (id)isoLatin1CharsetHint; -- (id)mailVersion; -- (BOOL)messageIsFromMicrosoft; -- (void)_appendAddressList:(id)arg1 toData:(id)arg2; -- (id)encodedHeaders; -- (id)encodedHeadersIncludingFromSpace:(BOOL)arg1; -- (void)appendHeaderData:(id)arg1 andRecipients:(id)arg2 recipientsByHeaderKey:(id)arg3 expandPrivate:(BOOL)arg4 includeComment:(BOOL)arg5; -- (void)appendHeaderData:(id)arg1 andRecipients:(id)arg2 recipientsByHeaderKey:(id)arg3; -- (id)allRecipientsExpandPrivate:(BOOL)arg1 includeComment:(BOOL)arg2; -- (id)_encodedHeadersIncludingFromSpace:(BOOL)arg1; - -@end - -#elif defined(LEOPARD) - -@interface MessageHeaders : NSObject -{ - NSData *_data; - unsigned int _preferredEncoding; -} - -+ (BOOL)isStructuredHeaderKey:(id)fp8; -+ (BOOL)_isImageHeaderKey:(id)fp8; -+ (const char *)cstringForKey:(id)fp8; -+ (id)localizedHeaders; -+ (id)localizedHeadersFromEnglishHeaders:(id)fp8; -+ (id)englishHeadersFromLocalizedHeaders:(id)fp8; -- (id)initWithHeaderData:(id)fp8 encoding:(unsigned long)fp12; -- (id)copyWithZone:(struct _NSZone *)fp8; -- (void)dealloc; -- (void)finalize; -- (id)mutableCopy; -- (id)headerData; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)fp8; -- (id)htmlHeaderKey:(id)fp8 useBold:(BOOL)fp12; -- (id)htmlValueWithKey:(id)fp8 value:(id)fp12 useBold:(BOOL)fp16; -- (id)htmlStringShowingHeaderDetailLevel:(int)fp8; -- (id)htmlStringShowingHeaderDetailLevel:(int)fp8 useBold:(BOOL)fp12; -- (id)attributedStringShowingHeaderDetailLevel:(int)fp8; -- (id)attributedStringShowingHeaderDetailLevel:(int)fp8 useHeadIndents:(BOOL)fp12 useBold:(BOOL)fp16 includeBCC:(BOOL)fp20; -- (id)headersDictionaryWithHeaderDetailLevel:(int)fp8; -- (id)headersDictionaryWithHeaderDetailLevel:(int)fp8 forMessageType:(int)fp12; -- (id)allHeaderKeys; -- (void)_setCapitalizedKey:(id)fp8 forKey:(id)fp12; -- (id)_capitalizedKeyForKey:(id)fp8; -- (id)_createHeaderValueForKey:(id)fp8 offset:(unsigned int *)fp12; -- (id)_createHeaderValueForKey:(id)fp8; -- (BOOL)hasHeaderForKey:(id)fp8; -- (id)headersForKey:(id)fp8; -- (id)firstHeaderForKey:(id)fp8; -- (id)_decodeHeaderKeysFromData:(id)fp8; -- (id)isoLatin1CharsetHint; -- (id)mailVersion; -- (BOOL)messageIsFromMicrosoft; -- (void)_appendAddressList:(id)fp8 toData:(id)fp12; -- (id)encodedHeaders; -- (id)encodedHeadersIncludingFromSpace:(BOOL)fp8; -- (void)_appendHeaderData:(id)fp8 andRecipients:(id)fp12 expandPrivate:(BOOL)fp16 includeComment:(BOOL)fp20; -- (void)appendHeaderData:(id)fp8 andRecipients:(id)fp12; -- (id)allRecipientsExpandPrivate:(BOOL)fp8 includeComment:(BOOL)fp12; -- (id)_encodedHeadersIncludingFromSpace:(BOOL)fp8; - -@end - -#elif defined(TIGER) - -@class Message; - -@interface MessageHeaders : NSObject -{ - NSData *_data; - unsigned int _preferredEncoding; -} - -+ (id)localizedHeaders; -+ (id)localizedHeadersFromEnglishHeaders:(id)fp8; -+ (id)englishHeadersFromLocalizedHeaders:(id)fp8; -- (id)initWithHeaderData:(id)fp8 encoding:(unsigned long)fp12; -- (id)copyWithZone:(struct _NSZone *)fp8; -- (void)dealloc; -- (void)finalize; -- (id)mutableCopy; -- (id)headerData; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)fp8; -- (BOOL)_isStructuredHeaderKey:(id)fp8; -- (id)attributedStringShowingHeaderDetailLevel:(int)fp8; -- (id)headersDictionaryWithHeaderDetailLevel:(int)fp8; -- (id)allHeaderKeys; -- (void)_setCapitalizedKey:(id)fp8 forKey:(id)fp12; -- (id)_capitalizedKeyForKey:(id)fp8; -- (id)_headerValueForKey:(id)fp8 offset:(unsigned int *)fp12; -- (id)_headerValueForKey:(id)fp8; -- (BOOL)hasHeaderForKey:(id)fp8; -- (id)headersForKey:(id)fp8; -- (id)firstHeaderForKey:(id)fp8; -- (id)_decodeHeaderKeysFromData:(id)fp8; -- (id)isoLatin1CharsetHint; -- (id)mailVersion; -- (BOOL)messageIsFromEntourage; -- (void)_appendAddressList:(id)fp8 toData:(id)fp12; -- (id)encodedHeaders; -- (id)encodedHeadersIncludingFromSpace:(BOOL)fp8; -- (void)_appendHeaderData:(id)fp8 andRecipients:(id)fp12 expandPrivate:(BOOL)fp16 includeComment:(BOOL)fp20; -- (void)appendHeaderData:(id)fp8 andRecipients:(id)fp12; -- (id)allRecipientsExpandPrivate:(BOOL)fp8 includeComment:(BOOL)fp12; -- (id)_encodedHeadersIncludingFromSpace:(BOOL)fp8; - -@end - -#else - -@interface MessageHeaders:NSObject -{ - NSData *_data; // 4 = 0x4 - unsigned int _preferredEncoding; // 8 = 0x8 -} - -+ localizedHeaders; -+ localizedHeadersFromEnglishHeaders:fp8; -+ englishHeadersFromLocalizedHeaders:fp8; -- initWithHeaderData:fp8 encoding:(unsigned long)fp12; -- copyWithZone:(struct _NSZone *)fp8; -- (void)dealloc; -- mutableCopy; -- headerData; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)fp8; -- (char)_isStructuredHeaderKey:fp8; -- attributedStringShowingHeaderDetailLevel:(int)fp8; -- headersDictionaryWithHeaderDetailLevel:(int)fp8; -- allHeaderKeys; -- (void)_setCapitalizedKey:fp8 forKey:fp12; -- _capitalizedKeyForKey:fp8; -- _headerValueForKey:fp8; -- (char)hasHeaderForKey:fp8; -- headersForKey:fp8; -- firstHeaderForKey:fp8; -- _decodeHeaderKeysFromData:fp8; -- isoLatin1CharsetHint; -- (void)_appendAddressList:fp8 toData:fp12; -- encodedHeaders; -- encodedHeadersIncludingFromSpace:(char)fp8; -- (void)appendHeaderData:fp8 andRecipients:fp12; -- _encodedHeadersIncludingFromSpace:(char)fp8; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MessageKeychainManager.h b/GPGMail/Source/PrivateHeaders/MessageKeychainManager.h deleted file mode 100644 index e988030d..00000000 --- a/GPGMail/Source/PrivateHeaders/MessageKeychainManager.h +++ /dev/null @@ -1,155 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -@interface MessageKeychainManager : NSObject -{ -} - -+ (void)initialize; -+ (unsigned int)_protocolForAccountType:(id)arg1; -+ (int)_setPassword:(id)arg1 forKeychainItem:(struct OpaqueSecKeychainItemRef *)arg2; -+ (id)_passwordForHost:(id)arg1 username:(id)arg2 port:(unsigned short)arg3 protocol:(unsigned int)arg4 itemRef:(struct OpaqueSecKeychainItemRef **)arg5; -+ (id)passwordForHost:(id)arg1 username:(id)arg2 port:(unsigned short)arg3 protocol:(id)arg4; -+ (void)setPassword:(id)arg1 forHost:(id)arg2 username:(id)arg3 port:(unsigned short)arg4 protocol:(id)arg5; -+ (void)removePasswordForHost:(id)arg1 username:(id)arg2 port:(unsigned short)arg3 protocol:(id)arg4; -+ (id)_passwordForGenericAccount:(id)arg1 service:(id)arg2 itemRef:(struct OpaqueSecKeychainItemRef **)arg3; -+ (id)passwordForServiceName:(id)arg1 accountName:(id)arg2; -+ (void)setPassword:(id)arg1 forServiceName:(id)arg2 accountName:(id)arg3; -+ (void)removePasswordForServiceName:(id)arg1 accountName:(id)arg2; -+ (void)setSessionTrustedCertificates:(id)arg1 forHost:(id)arg2; -+ (id)sessionTrustedCertificatesForHost:(id)arg1; -+ (struct OpaqueSecCertificateRef *)copyTrustedSigningCertificateForAddress:(id)arg1; -+ (struct OpaqueSecCertificateRef *)copyEncryptionCertificateForAddress:(id)arg1; -+ (BOOL)canSignMessagesFromAddress:(id)arg1; -+ (BOOL)canEncryptMessagesToAddress:(id)arg1; -+ (BOOL)canEncryptMessagesToAddresses:(id)arg1 sender:(id)arg2; -+ (struct OpaqueSecPolicyRef *)copySSLPolicyForHost:(id)arg1 isClientCertificate:(BOOL)arg2; -+ (struct OpaqueSecPolicyRef *)copySMIMEPolicyForAddress:(id)arg1 usage:(unsigned short)arg2; - -@end - -#elif defined(SNOW_LEOPARD) - -@interface MessageKeychainManager : NSObject -{ -} - -+ (void)initialize; -+ (unsigned long)_protocolForAccountType:(id)arg1; -+ (long)_setPassword:(id)arg1 forKeychainItem:(struct OpaqueSecKeychainItemRef *)arg2; -+ (id)_passwordForHost:(id)arg1 username:(id)arg2 port:(unsigned short)arg3 protocol:(unsigned long)arg4 itemRef:(struct OpaqueSecKeychainItemRef **)arg5; -+ (id)passwordForHost:(id)arg1 username:(id)arg2 port:(unsigned short)arg3 protocol:(id)arg4; -+ (void)setPassword:(id)arg1 forHost:(id)arg2 username:(id)arg3 port:(unsigned short)arg4 protocol:(id)arg5; -+ (void)removePasswordForHost:(id)arg1 username:(id)arg2 port:(unsigned short)arg3 protocol:(id)arg4; -+ (id)_passwordForGenericAccount:(id)arg1 service:(id)arg2 itemRef:(struct OpaqueSecKeychainItemRef **)arg3; -+ (id)passwordForServiceName:(id)arg1 accountName:(id)arg2; -+ (void)setPassword:(id)arg1 forServiceName:(id)arg2 accountName:(id)arg3; -+ (void)removePasswordForServiceName:(id)arg1 accountName:(id)arg2; -+ (void)setSessionTrustedCertificates:(id)arg1 forHost:(id)arg2; -+ (id)sessionTrustedCertificatesForHost:(id)arg1; -+ (struct OpaqueSecCertificateRef *)copyTrustedSigningCertificateForAddress:(id)arg1; -+ (struct OpaqueSecCertificateRef *)copyEncryptionCertificateForAddress:(id)arg1; -+ (BOOL)canSignMessagesFromAddress:(id)arg1; -+ (BOOL)canEncryptMessagesToAddress:(id)arg1; -+ (BOOL)canEncryptMessagesToAddresses:(id)arg1 sender:(id)arg2; -+ (struct OpaqueSecPolicyRef *)copySSLPolicyForHost:(id)arg1 isClientCertificate:(BOOL)arg2; -+ (struct OpaqueSecPolicyRef *)copySMIMEPolicyForAddress:(id)arg1 usage:(unsigned short)arg2; - -@end - - -#elif defined(LEOPARD) - -@interface MessageKeychainManager : NSObject -{ -} - -+ (void)initialize; -+ (unsigned long)_protocolForAccountType:(id)fp8; -+ (long)_setPassword:(id)fp8 forKeychainItem:(struct OpaqueSecKeychainItemRef *)fp12; -+ (id)_passwordForHost:(id)fp8 username:(id)fp12 port:(int)fp16 protocol:(unsigned long)fp20 itemRef:(struct OpaqueSecKeychainItemRef **)fp24; -+ (id)passwordForHost:(id)fp8 username:(id)fp12 port:(int)fp16 protocol:(id)fp20; -+ (void)setPassword:(id)fp8 forHost:(id)fp12 username:(id)fp16 port:(int)fp20 protocol:(id)fp24; -+ (void)removePasswordForHost:(id)fp8 username:(id)fp12 port:(int)fp16 protocol:(id)fp20; -+ (id)_passwordForGenericAccount:(id)fp8 service:(id)fp12 itemRef:(struct OpaqueSecKeychainItemRef **)fp16; -+ (id)passwordForServiceName:(id)fp8 accountName:(id)fp12; -+ (void)setPassword:(id)fp8 forServiceName:(id)fp12 accountName:(id)fp16; -+ (void)removePasswordForServiceName:(id)fp8 accountName:(id)fp12; -+ (void)setSessionTrustedCertificates:(id)fp8 forHost:(id)fp12; -+ (id)sessionTrustedCertificatesForHost:(id)fp8; -+ (struct OpaqueSecCertificateRef *)copyTrustedSigningCertificateForAddress:(id)fp8; -+ (struct OpaqueSecCertificateRef *)copyTrustedEncryptionCertificateForAddress:(id)fp8; -+ (BOOL)canSignMessagesFromAddress:(id)fp8; -+ (BOOL)canEncryptMessagesToAddress:(id)fp8; -+ (BOOL)canEncryptMessagesToAddresses:(id)fp8 sender:(id)fp12; -+ (struct OpaqueSecPolicyRef *)copySSLPolicyForHost:(id)fp8 isClientCertificate:(BOOL)fp12; -+ (struct OpaqueSecPolicyRef *)copySMIMEPolicyForAddress:(id)fp8 usage:(unsigned short)fp12; - -@end - -#elif defined(TIGER) - -@interface MessageKeychainManager : NSObject -{ -} - -+ (void)initialize; -+ (unsigned long)_protocolForAccountType:(id)fp8; -+ (long)_setPassword:(id)fp8 forKeychainItem:(struct OpaqueSecKeychainItemRef *)fp12; -+ (id)_passwordForHost:(id)fp8 username:(id)fp12 port:(int)fp16 protocol:(unsigned long)fp20 itemRef:(struct OpaqueSecKeychainItemRef **)fp24; -+ (id)passwordForHost:(id)fp8 username:(id)fp12 port:(int)fp16 protocol:(id)fp20; -+ (void)setPassword:(id)fp8 forHost:(id)fp12 username:(id)fp16 port:(int)fp20 protocol:(id)fp24; -+ (void)removePasswordForHost:(id)fp8 username:(id)fp12 port:(int)fp16 protocol:(id)fp20; -+ (id)_passwordForGenericAccount:(id)fp8 service:(id)fp12 itemRef:(struct OpaqueSecKeychainItemRef **)fp16; -+ (id)passwordForServiceName:(id)fp8 accountName:(id)fp12; -+ (void)setPassword:(id)fp8 forServiceName:(id)fp12 accountName:(id)fp16; -+ (void)removePasswordForServiceName:(id)fp8 accountName:(id)fp12; -+ (int)systemTrustForCertificate:(struct OpaqueSecCertificateRef *)fp8 trust:(struct OpaqueSecTrustRef *)fp12 address:(id)fp16 policy:(int)fp20 usage:(int)fp24; -+ (int)userTrustForCertificate:(struct OpaqueSecCertificateRef *)fp8 address:(id)fp12 policy:(int)fp16 usage:(int)fp20; -+ (int)trustForCertificate:(struct OpaqueSecCertificateRef *)fp8 address:(id)fp12 policy:(int)fp16 usage:(int)fp20; -+ (int)trustForTrust:(struct OpaqueSecTrustRef *)fp8 certificate:(struct OpaqueSecCertificateRef *)fp12 policy:(int)fp16; -+ (struct OpaqueSecCertificateRef *)copyTrustedCertificateForAddress:(id)fp8 policy:(int)fp12 usage:(int)fp16; -+ (struct OpaqueSecCertificateRef *)copyTrustedSigningCertificateForAddress:(id)fp8; -+ (BOOL)canSignMessagesFromAddress:(id)fp8; -+ (struct OpaqueSecCertificateRef *)copyTrustedEncryptionCertificateForAddress:(id)fp8; -+ (BOOL)canEncryptMessagesToAddress:(id)fp8; -+ (struct OpaqueSecPolicyRef *)copyPolicy:(int)fp8 address:(id)fp12 usage:(int)fp16; -+ (int)userTrustForCertificate:(const struct OpaqueSecCertificateRef *)fp8 policy:(int)fp12; -+ (void)setUserTrust:(int)fp8 forCertificate:(const struct OpaqueSecCertificateRef *)fp12 policy:(int)fp16; - -@end - -#else - -@interface MessageKeychainManager:NSObject -{ -} - -+ (void)initialize; -+ (unsigned long)_protocolForAccountType:fp8; -+ (long)_setPassword:fp8 forKeychainItem:(struct OpaqueSecKeychainItemRef *)fp12; -+ _passwordForHost:fp8 username:fp12 port:(int)fp16 protocol:(unsigned long)fp20 itemRef:(struct OpaqueSecKeychainItemRef **)fp24; -+ passwordForHost:fp8 username:fp12 port:(int)fp16 protocol:fp20; -+ (void)setPassword:fp8 forHost:fp12 username:fp16 port:(int)fp20 protocol:fp24; -+ (void)removePasswordForHost:fp8 username:fp12 port:(int)fp16 protocol:fp20; -+ _passwordForGenericAccount:fp8 service:fp12 itemRef:(struct OpaqueSecKeychainItemRef **)fp16; -+ passwordForServiceName:fp8 accountName:fp12; -+ (void)setPassword:fp8 forServiceName:fp12 accountName:fp16; -+ (void)removePasswordForServiceName:fp8 accountName:fp12; -+ (int)systemTrustForCertificate:(struct OpaqueSecCertificateRef *)fp8 trust:(struct OpaqueSecTrustRef *)fp12 address:fp16 policy:(int)fp20 usage:(int)fp24; -+ (int)userTrustForCertificate:(struct OpaqueSecCertificateRef *)fp8 address:fp12 policy:(int)fp16 usage:(int)fp20; -+ (int)trustForCertificate:(struct OpaqueSecCertificateRef *)fp8 address:fp12 policy:(int)fp16 usage:(int)fp20; -+ (int)trustForTrust:(struct OpaqueSecTrustRef *)fp8 certificate:(struct OpaqueSecCertificateRef *)fp12 policy:(int)fp16; -+ (struct OpaqueSecCertificateRef *)copyTrustedCertificateForAddress:fp8 policy:(int)fp12 usage:(int)fp16; -+ (struct OpaqueSecCertificateRef *)copyTrustedSigningCertificateForAddress:fp8; -+ (char)canSignMessagesFromAddress:fp8; -+ (struct OpaqueSecCertificateRef *)copyTrustedEncryptionCertificateForAddress:fp8; -+ (char)canEncryptMessagesToAddress:fp8; -+ (struct OpaqueSecPolicyRef *)copyPolicy:(int)fp8 address:fp12 usage:(int)fp16; -+ (int)userTrustForCertificate:(const struct OpaqueSecCertificateRef *)fp8 policy:(int)fp12; -+ (void)setUserTrust:(int)fp8 forCertificate:(const struct OpaqueSecCertificateRef *)fp12 policy:(int)fp16; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MessageStore.h b/GPGMail/Source/PrivateHeaders/MessageStore.h deleted file mode 100644 index 1532115b..00000000 --- a/GPGMail/Source/PrivateHeaders/MessageStore.h +++ /dev/null @@ -1,1144 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -#import - -@class MailboxUid; -@class MailAccount; -@class ObjectCache; -@class ActivityMonitor; - -@interface MessageStore : SafeObserver -{ - BOOL _isReadOnly; - BOOL _hasUnsavedChangesToMessageData; - BOOL _haveOpenLockFile; - BOOL _forceInvalidation; - BOOL _isWritingChangesToDisk; - BOOL _isTryingToClose; - BOOL _compactOnClose; - MailboxUid *_mailboxUid; - MailAccount *_account; - NSMutableArray *_allMessages; - id _messageCountsAndSizesLock; - struct { - unsigned long long unreadCount; - unsigned long long unseenCount; - unsigned long long deletedCount; - unsigned long long totalSize; - unsigned long long deletedSize; - } _messageCountsAndSizes; - id _cacheLock; - NSCache *_headerDataCache; - NSCache *_headerCache; - NSCache *_bodyDataCache; - NSCache *_bodyCache; - NSMutableSet *_uniqueStrings; - int _storeState; - NSTimer *_timer; - ActivityMonitor *_openMonitor; - NSMutableDictionary *_fetchLockMap; -} - -+ (void)initialize; -+ (id)_storeCacheMapTable; -+ (unsigned long long)numberOfCurrentlyOpenStores; -+ (id)descriptionOfOpenStores; -+ (id)_storeCreationMarker; -+ (id)_copyRawAvailableStoreForUid:(id)arg1 wantsCreate:(BOOL)arg2 shouldCreate:(char *)arg3; -+ (id)currentlyAvailableStoreForUid:(id)arg1; -+ (id)currentlyAvailableStoresForAccount:(id)arg1; -+ (void)registerAvailableStore:(id)arg1 forUid:(id)arg2; -+ (void)removeStoreFromCache:(id)arg1; -+ (BOOL)createEmptyStoreIfNeededForPath:(id)arg1 notIndexable:(BOOL)arg2; -+ (BOOL)createEmptyStoreForPath:(id)arg1; -+ (BOOL)storeAtPathIsWritable:(id)arg1; -+ (BOOL)cheapStoreAtPathIsEmpty:(id)arg1; -+ (id)succesfulMessagesFromMessages:(id)arg1 unsuccessfulOnes:(id)arg2; -+ (int)copyMessages:(id)arg1 toMailboxUid:(id)arg2 shouldDelete:(BOOL)arg3; -- (void)queueSaveChangesInvocation; -- (id)willDealloc; -- (id)init; -- (id)initWithMailboxUid:(id)arg1 readOnly:(BOOL)arg2; -- (void)_messageStoreCommonInit; -- (id)copyWithZone:(struct _NSZone *)arg1; -- (void)dealloc; -- (void)finalize; -- (void)openAsynchronously; -- (void)openAsynchronouslyWithOptions:(unsigned int)arg1; -- (void)openSynchronously; -- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; -- (void)updateMetadataAsynchronously; -- (void)updateMetadata; -- (void)cleanupAsynchronously; -- (void)cleanupSynchronously; -- (void)willOpen; -- (void)didOpenWithMessages:(id)arg1; -- (void)cancelOpen; -- (void)writeUpdatedMessageDataToDisk; -- (void)invalidateSavingChanges:(BOOL)arg1; -- (id)account; -- (id)mailboxUid; -- (id)allMailboxUidRepresentations; -- (BOOL)isOpened; -- (id)displayName; -- (const char *)displayNameForLogging; -- (id)description; -- (BOOL)isTrash; -- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; -- (void)structureDidChange; -- (void)messagesWereAdded:(id)arg1; -- (void)messagesWereCompacted:(id)arg1; -- (void)messagesWereUpdated:(id)arg1; -- (void)updateUserInfoToLatestValues; -- (unsigned long long)totalMessageSize; -- (void)deletedCount:(unsigned long long *)arg1 andSize:(unsigned long long *)arg2; -- (unsigned long long)totalCount; -- (unsigned long long)_totalNonDeletedCount; -- (unsigned long long)unreadCount; -- (unsigned long long)unseenCount; -- (unsigned long long)indexOfMessage:(id)arg1; -- (id)copyOfAllMessages; -- (id)mutableCopyOfAllMessages; -- (id)copyOfAllMessagesWithOptions:(unsigned int)arg1; -- (void)addMessagesToAllMessages:(id)arg1; -- (id)_defaultRouterDestination; -- (id)routeMessages:(id)arg1; -- (id)finishRoutingMessages:(id)arg1 routed:(id)arg2; -- (id)routeMessages:(id)arg1 isUserAction:(BOOL)arg2; -- (BOOL)canRebuild; -- (void)rebuildTableOfContentsAsynchronously; -- (BOOL)canCompact; -- (void)doCompact; -- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; -- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; -- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; -- (void)undeleteMessages:(id)arg1; -- (void)deleteLastMessageWithHeaders:(id)arg1 compactWhenDone:(BOOL)arg2; -- (BOOL)allowsAppend; -- (BOOL)allowsOverwrite; -- (BOOL)allowsDeleteInPlace; -- (int)undoAppendOfMessageIDs:(id)arg1; -- (void)finishCopyOfMessages:(id)arg1 fromStore:(id)arg2 originalsWereDeleted:(BOOL)arg3; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6 error:(id *)arg7; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 forMove:(BOOL)arg5; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2; -- (id)messageWithValue:(id)arg1 forHeader:(id)arg2 options:(unsigned long long)arg3; -- (id)messageForMessageID:(id)arg1; -- (unsigned long long)_numberOfMessagesToCache; -- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)headerDataForMessage:(id)arg1; -- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)bodyDataForMessage:(id)arg1; -- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; -- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; -- (id)fullBodyDataForMessage:(id)arg1; -- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; -- (id)headersForMessage:(id)arg1; -- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)dataForMimePart:(id)arg1; -- (BOOL)hasCachedDataForMimePart:(id)arg1; -- (id)uniquedString:(id)arg1; -- (id)colorForMessage:(id)arg1; -- (id)setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; -- (id)setFlagsFromDictionary:(id)arg1 forToDos:(id)arg2; -- (void)setFlag:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; -- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; -- (void)messageColorsNeedToBeReevaluated; -- (void)startSynchronization; -- (id)_getSerialNumberString; -- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; -- (void)updateNumberOfAttachmentsForMessages:(id)arg1; -- (void)updateNumberOfAttachmentsAndColorsForMessages:(id)arg1; -- (void)updateMessageColorsSynchronouslyForMessages:(id)arg1; -- (void)updateMessageColorsAsynchronouslyForMessages:(id)arg1; -- (void)setJunkMailLevel:(int)arg1 forMessages:(id)arg2; -- (void)setJunkMailLevel:(int)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3; -- (void)setJunkMailLevel:(int)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; -- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; -- (id)status; -- (void)fetchSynchronously; -- (void)fetchSynchronouslyForKnownChanges; -- (BOOL)setPreferredEncoding:(unsigned int)arg1 forMessage:(id)arg2; -- (void)suggestSortOrder:(id)arg1 ascending:(BOOL)arg2; -- (id)sortOrder; -- (BOOL)isSortedAscending; -- (void)todosDidChangeForMessages:(id)arg1 oldToDosByMessage:(id)arg2 newToDosByMessage:(id)arg3; -- (int)setToDo:(id)arg1 forMessage:(id)arg2 oldToDo:(id)arg3; -- (void)invalidateMessage:(id)arg1; -- (void)invalidateMessages:(id)arg1; -- (id)_aquireFetchLockForMessage:(id)arg1; -- (void)_releaseFetchLock:(id)arg1 forMessage:(id)arg2; -@property BOOL forceInvalidation; // @synthesize forceInvalidation=_forceInvalidation; -@property BOOL hasUnsavedChangesToMessageData; // @synthesize hasUnsavedChangesToMessageData=_hasUnsavedChangesToMessageData; -@property(retain) ActivityMonitor *openMonitor; // @synthesize openMonitor=_openMonitor; -@property BOOL isReadOnly; // @synthesize isReadOnly=_isReadOnly; - -@end - -@interface MessageStore (MessageFrameworkOnly) -+ (void)_autosaveMessageStore:(void *)arg1; -- (void)_cancelAutosave; -- (void)_setNeedsAutosave; -- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; -- (id)_fetchBodyForMessage:(id)arg1 updateFlags:(BOOL)arg2; -- (BOOL)_shouldCallCompactWhenClosing; -- (BOOL)_isReadyToBeInvalidated; -- (void)_saveChanges; -- (BOOL)setStoreState:(int)arg1 fromState:(int)arg2; -- (int)storeState; -- (void)_invalidate; -- (void)_invalidateInBackground; -- (void)_countUnreadAndDeletedInMessages:(id)arg1; -- (id)_lockFilePath; -- (BOOL)_acquireLockFile; -- (void)_removeLockFile; -- (void)_flushAllCaches; -- (void)_flushAllMessageData; -- (void)_rebuildTableOfContentsSynchronously; -- (void)updateBodyFlagsForMessage:(id)arg1 body:(id)arg2; -- (id)_setOrGetBody:(id)arg1 forMessage:(id)arg2 updateFlags:(BOOL)arg3; -- (void)_invalidateObjectCachesForKey:(id)arg1; -- (id)_setOrGetValue:(id)arg1 forKey:(id)arg2 inCache:(id *)arg3; -- (id)_cachedBodyForMessage:(id)arg1 valueIfNotPresent:(id)arg2; -- (id)_cachedHeadersForMessage:(id)arg1 valueIfNotPresent:(id)arg2; -- (id)_cachedBodyDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; -- (id)_cachedHeaderDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; -- (void)updateMessageColorsSynchronouslyForMessages:(id)arg1 postingNotification:(BOOL)arg2; -- (void)updateMessages:(id)arg1 updateColor:(BOOL)arg2 updateNumberOfAttachments:(BOOL)arg3; -- (void)_setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; -- (void)_invalidateColorForAllMessages; -- (void)_setFlagsForMessages:(id)arg1 mask:(unsigned int)arg2; -- (void)_setFlagsAndColorForMessages:(id)arg1; -- (void)messagesWereAdded:(id)arg1 forIncrementalLoading:(BOOL)arg2; -- (BOOL)_updateFlagForMessage:(id)arg1 key:(id)arg2 value:(BOOL)arg3; - -// Remaining properties -@property BOOL forceInvalidation; -@property BOOL hasUnsavedChangesToMessageData; -@property BOOL isReadOnly; -@end - -@interface MessageStore (ParentalControl) -- (void)setPermissionRequestState:(int)arg1 forMessage:(id)arg2; -@end - -@interface MessageStore (RSSAdditions) -+ (void)deleteUnflaggedEntriesCreatedBeforeDate:(id)arg1; -- (void)updateEntries:(id)arg1 fromFeed:(id)arg2; -- (void)changeFlagsForEntries:(id)arg1 fromFeed:(id)arg2; -- (void)updateStatusFromFeed:(id)arg1 error:(id)arg2 errorMessage:(id)arg3; -@end - -@interface MessageStore (ScriptingSupport) -- (id)objectSpecifier; -- (id)objectSpecifierForMessage:(id)arg1; -@end - - - -#elif defined(SNOW_LEOPARD) - -#import - -@class MailboxUid; -@class MailAccount; -@class NSCache; -@class ActivityMonitor; - -@interface MessageStore : SafeObserver -{ - BOOL _isReadOnly; - BOOL _hasUnsavedChangesToMessageData; - BOOL _haveOpenLockFile; - BOOL _forceInvalidation; - BOOL _isWritingChangesToDisk; - BOOL _isTryingToClose; - BOOL _compactOnClose; - MailboxUid *_mailboxUid; - MailAccount *_account; - NSMutableArray *_allMessages; - id _messageCountsAndSizesLock; - struct { - unsigned int unreadCount; - unsigned int unseenCount; - unsigned int deletedCount; - unsigned int totalSize; - unsigned int deletedSize; - } _messageCountsAndSizes; - id _cacheLock; - NSCache *_headerDataCache; - NSCache *_headerCache; - NSCache *_bodyDataCache; - NSCache *_bodyCache; - NSMutableSet *_uniqueStrings; - int _storeState; - NSTimer *_timer; - ActivityMonitor *_openMonitor; - NSMutableDictionary *_fetchLockMap; -} - -+ (void)initialize; -+ (id)_storeCacheMapTable; -+ (unsigned int)numberOfCurrentlyOpenStores; -+ (id)descriptionOfOpenStores; -+ (id)_storeCreationMarker; -+ (id)_copyRawAvailableStoreForUid:(id)arg1 wantsCreate:(BOOL)arg2 shouldCreate:(char *)arg3; -+ (id)currentlyAvailableStoreForUid:(id)arg1; -+ (id)currentlyAvailableStoresForAccount:(id)arg1; -+ (void)registerAvailableStore:(id)arg1 forUid:(id)arg2; -+ (void)removeStoreFromCache:(id)arg1; -+ (BOOL)createEmptyStoreIfNeededForPath:(id)arg1 notIndexable:(BOOL)arg2; -+ (BOOL)createEmptyStoreForPath:(id)arg1; -+ (BOOL)storeAtPathIsWritable:(id)arg1; -+ (BOOL)cheapStoreAtPathIsEmpty:(id)arg1; -+ (id)succesfulMessagesFromMessages:(id)arg1 unsuccessfulOnes:(id)arg2; -+ (int)copyMessages:(id)arg1 toMailboxUid:(id)arg2 shouldDelete:(BOOL)arg3; -- (void)queueSaveChangesInvocation; -- (id)willDealloc; -- (id)init; -- (id)initWithMailboxUid:(id)arg1 readOnly:(BOOL)arg2; -- (void)_messageStoreCommonInit; -- (id)copyWithZone:(struct _NSZone *)arg1; -- (void)dealloc; -- (void)finalize; -- (void)openAsynchronously; -- (void)openAsynchronouslyWithOptions:(unsigned int)arg1; -- (void)openSynchronously; -- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; -- (void)updateMetadataAsynchronously; -- (void)updateMetadata; -- (void)cleanupAsynchronously; -- (void)cleanupSynchronously; -- (void)willOpen; -- (void)didOpenWithMessages:(id)arg1; -- (void)cancelOpen; -- (void)writeUpdatedMessageDataToDisk; -- (void)invalidateSavingChanges:(BOOL)arg1; -- (id)account; -- (id)mailboxUid; -- (id)allMailboxUidRepresentations; -- (BOOL)isOpened; -- (id)displayName; -- (const char *)displayNameForLogging; -- (id)description; -- (BOOL)isTrash; -- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; -- (void)structureDidChange; -- (void)messagesWereAdded:(id)arg1; -- (void)messagesWereCompacted:(id)arg1; -- (void)messagesWereUpdated:(id)arg1; -- (void)updateUserInfoToLatestValues; -- (unsigned int)totalMessageSize; -- (void)deletedCount:(unsigned int *)arg1 andSize:(unsigned int *)arg2; -- (unsigned int)totalCount; -- (unsigned int)_totalNonDeletedCount; -- (unsigned int)unreadCount; -- (unsigned int)unseenCount; -- (unsigned int)indexOfMessage:(id)arg1; -- (id)copyOfAllMessages; -- (id)mutableCopyOfAllMessages; -- (id)copyOfAllMessagesWithOptions:(unsigned int)arg1; -- (void)addMessagesToAllMessages:(id)arg1; -- (id)_defaultRouterDestination; -- (id)routeMessages:(id)arg1; -- (id)finishRoutingMessages:(id)arg1 routed:(id)arg2; -- (id)routeMessages:(id)arg1 isUserAction:(BOOL)arg2; -- (BOOL)canRebuild; -- (void)rebuildTableOfContentsAsynchronously; -- (BOOL)canCompact; -- (void)doCompact; -- (void)deleteMessagesOlderThanNumberOfDays:(int)arg1 compact:(BOOL)arg2; -- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; -- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; -- (void)undeleteMessages:(id)arg1; -- (void)deleteLastMessageWithHeaders:(id)arg1 compactWhenDone:(BOOL)arg2; -- (BOOL)allowsAppend; -- (BOOL)allowsOverwrite; -- (BOOL)allowsDeleteInPlace; -- (int)undoAppendOfMessageIDs:(id)arg1; -- (void)finishCopyOfMessages:(id)arg1 fromStore:(id)arg2 originalsWereDeleted:(BOOL)arg3; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6 error:(id *)arg7; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 forMove:(BOOL)arg5; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3; -- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2; -- (id)messageWithValue:(id)arg1 forHeader:(id)arg2 options:(unsigned int)arg3; -- (id)messageForMessageID:(id)arg1; -- (unsigned int)_numberOfMessagesToCache; -- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)headerDataForMessage:(id)arg1; -- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)bodyDataForMessage:(id)arg1; -- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; -- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; -- (id)fullBodyDataForMessage:(id)arg1; -- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; -- (id)headersForMessage:(id)arg1; -- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)dataForMimePart:(id)arg1; -- (BOOL)hasCachedDataForMimePart:(id)arg1; -- (id)uniquedString:(id)arg1; -- (id)colorForMessage:(id)arg1; -- (id)setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; -- (id)setFlagsFromDictionary:(id)arg1 forToDos:(id)arg2; -- (void)setFlag:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; -- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; -- (void)messageColorsNeedToBeReevaluated; -- (void)startSynchronization; -- (id)_getSerialNumberString; -- (void)setNumberOfAttachments:(unsigned long)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; -- (void)updateNumberOfAttachmentsForMessages:(id)arg1; -- (void)updateNumberOfAttachmentsAndColorsForMessages:(id)arg1; -- (void)updateMessageColorsSynchronouslyForMessages:(id)arg1; -- (void)updateMessageColorsAsynchronouslyForMessages:(id)arg1; -- (void)setJunkMailLevel:(int)arg1 forMessages:(id)arg2; -- (void)setJunkMailLevel:(int)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3; -- (void)setJunkMailLevel:(int)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; -- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; -- (id)status; -- (void)fetchSynchronously; -- (void)fetchSynchronouslyForKnownChanges; -- (BOOL)setPreferredEncoding:(unsigned long)arg1 forMessage:(id)arg2; -- (void)suggestSortOrder:(id)arg1 ascending:(BOOL)arg2; -- (id)sortOrder; -- (BOOL)isSortedAscending; -- (void)todosDidChangeForMessages:(id)arg1 oldToDosByMessage:(id)arg2 newToDosByMessage:(id)arg3; -- (int)setToDo:(id)arg1 forMessage:(id)arg2 oldToDo:(id)arg3; -- (void)invalidateMessage:(id)arg1; -- (void)invalidateMessages:(id)arg1; -- (id)_aquireFetchLockForMessage:(id)arg1; -- (void)_releaseFetchLock:(id)arg1 forMessage:(id)arg2; -- (BOOL)forceInvalidation; -- (void)setForceInvalidation:(BOOL)arg1; -- (BOOL)hasUnsavedChangesToMessageData; -- (void)setHasUnsavedChangesToMessageData:(BOOL)arg1; -- (id)openMonitor; -- (void)setOpenMonitor:(id)arg1; -- (BOOL)isReadOnly; -- (void)setIsReadOnly:(BOOL)arg1; - -@end - -@interface MessageStore (MessageFrameworkOnly) -+ (void)_autosaveMessageStore:(void *)arg1; -- (void)_cancelAutosave; -- (void)_setNeedsAutosave; -- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; -- (id)_fetchBodyForMessage:(id)arg1 updateFlags:(BOOL)arg2; -- (BOOL)_shouldCallCompactWhenClosing; -- (BOOL)_isReadyToBeInvalidated; -- (void)_saveChanges; -- (BOOL)setStoreState:(int)arg1 fromState:(int)arg2; -- (int)storeState; -- (void)_invalidate; -- (void)_invalidateInBackground; -- (void)_countUnreadAndDeletedInMessages:(id)arg1; -- (id)_lockFilePath; -- (BOOL)_acquireLockFile; -- (void)_removeLockFile; -- (void)_flushAllCaches; -- (void)_flushAllMessageData; -- (void)_rebuildTableOfContentsSynchronously; -- (void)updateBodyFlagsForMessage:(id)arg1 body:(id)arg2; -- (id)_setOrGetBody:(id)arg1 forMessage:(id)arg2 updateFlags:(BOOL)arg3; -- (void)_invalidateObjectCachesForKey:(id)arg1; -- (id)_setOrGetValue:(id)arg1 forKey:(id)arg2 inCache:(id *)arg3; -- (id)_cachedBodyForMessage:(id)arg1 valueIfNotPresent:(id)arg2; -- (id)_cachedHeadersForMessage:(id)arg1 valueIfNotPresent:(id)arg2; -- (id)_cachedBodyDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; -- (id)_cachedHeaderDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; -- (void)updateMessageColorsSynchronouslyForMessages:(id)arg1 postingNotification:(BOOL)arg2; -- (void)updateMessages:(id)arg1 updateColor:(BOOL)arg2 updateNumberOfAttachments:(BOOL)arg3; -- (void)_setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; -- (void)_invalidateColorForAllMessages; -- (void)_setFlagsForMessages:(id)arg1 mask:(unsigned long)arg2; -- (void)_setFlagsAndColorForMessages:(id)arg1; -- (void)messagesWereAdded:(id)arg1 forIncrementalLoading:(BOOL)arg2; -- (BOOL)_updateFlagForMessage:(id)arg1 key:(id)arg2 value:(BOOL)arg3; -@end - -@interface MessageStore (ScriptingSupport) -- (id)objectSpecifier; -- (id)objectSpecifierForMessage:(id)arg1; -@end - -@interface MessageStore (ParentalControl) -- (void)setPermissionRequestState:(int)arg1 forMessage:(id)arg2; -@end - -@interface MessageStore (RSSAdditions) -+ (void)deleteUnflaggedEntriesCreatedBeforeDate:(id)arg1; -- (void)updateEntries:(id)arg1 fromFeed:(id)arg2; -- (void)changeFlagsForEntries:(id)arg1 fromFeed:(id)arg2; -- (void)updateStatusFromFeed:(id)arg1 error:(id)arg2 errorMessage:(id)arg3; -@end - -#elif defined(LEOPARD) - -#import - -@class MailboxUid; -@class MailAccount; -@class ObjectCache; -@class ActivityMonitor; - -@interface MessageStore : SafeObserver -{ - struct { - unsigned int isReadOnly:1; - unsigned int hasUnsavedChangesToMessageData:1; - unsigned int haveOpenLockFile:1; - unsigned int rebuildingTOC:1; - unsigned int compacting:1; - unsigned int cancelInvalidation:1; - unsigned int forceInvalidation:1; - unsigned int isWritingChangesToDisk:1; - unsigned int isTryingToClose:1; - unsigned int compactOnClose:1; - unsigned int isOpenedByUser:1; - unsigned int reserved:21; - } _flags; - MailboxUid *_mailboxUid; - MailAccount *_account; - NSMutableArray *_allMessages; - unsigned int _allMessagesSize; - unsigned int _deletedMessagesSize; - unsigned int _deletedMessageCount; - unsigned int _unreadMessageCount; - int _state; - union { - struct { - ObjectCache *_headerDataCache; - ObjectCache *_headerCache; - ObjectCache *_bodyDataCache; - ObjectCache *_bodyCache; - } objectCaches; - struct { - struct __CFDictionary *_headerDataCache; - struct __CFDictionary *_headerCache; - struct __CFDictionary *_bodyDataCache; - struct __CFDictionary *_bodyCache; - } intKeyCaches; - } _caches; - NSTimer *_timer; - NSMutableSet *_uniqueStrings; - double timeOfLastAutosaveOperation; - ActivityMonitor *_openMonitor; -} - -+ (void)initialize; -+ (id)_storeCacheMapTable; -+ (unsigned int)numberOfCurrentlyOpenStores; -+ (id)descriptionOfOpenStores; -+ (id)currentlyAvailableStoreForUid:(id)fp8; -+ (id)currentlyAvailableStoresForAccount:(id)fp8; -+ (id)registerAvailableStore:(id)fp8; -+ (void)removeStoreFromCache:(id)fp8; -+ (BOOL)createEmptyStoreIfNeededForPath:(id)fp8 notIndexable:(BOOL)fp12; -+ (BOOL)createEmptyStoreForPath:(id)fp8; -+ (BOOL)storeAtPathIsWritable:(id)fp8; -+ (BOOL)cheapStoreAtPathIsEmpty:(id)fp8; -+ (id)succesfulMessagesFromMessages:(id)fp8 unsuccessfulOnes:(id)fp12; -+ (int)copyMessages:(id)fp8 toMailboxUid:(id)fp12 shouldDelete:(BOOL)fp16; -- (void)queueSaveChangesInvocation; -- (id)willDealloc; -- (id)initWithMailboxUid:(id)fp8 readOnly:(BOOL)fp12; -- (id)copyWithZone:(struct _NSZone *)fp8; -- (void)dealloc; -- (void)finalize; -- (void)openAsynchronouslyUpdatingMetadata:(BOOL)fp8; -- (void)openAsynchronously; -- (void)openAsynchronouslyWithOptions:(unsigned int)fp8; -- (void)openSynchronously; -- (void)openSynchronouslyWithoutUserInteraction; -- (void)openSynchronouslyUpdatingMetadata:(BOOL)fp8; -- (void)updateMetadataAsynchronously; -- (void)updateMetadata; -- (void)cleanupAsynchronously; -- (void)cleanupSynchronously; -- (void)didOpen; -- (void)cancelOpen; -- (void)_setOpenMonitor:(id)fp8; -- (void)writeUpdatedMessageDataToDisk; -- (void)invalidateSavingChanges:(BOOL)fp8; -- (id)account; -- (id)mailboxUid; -- (id)allMailboxUidRepresentations; -- (BOOL)isOpened; -- (id)storePathRelativeToAccount; -- (id)displayName; -- (const char *)displayNameForLogging; -- (BOOL)isReadOnly; -- (id)description; -- (BOOL)isTrash; -- (BOOL)isDrafts; -- (void)messageFlagsDidChange:(id)fp8 flags:(id)fp12; -- (void)structureDidChange; -- (void)messagesWereAdded:(id)fp8; -- (void)messagesWereCompacted:(id)fp8; -- (void)messagesWereUpdated:(id)fp8; -- (void)updateUserInfoToLatestValues; -- (unsigned int)totalMessageSize; -- (void)deletedCount:(unsigned int *)fp8 andSize:(unsigned int *)fp12; -- (unsigned int)totalCount; -- (unsigned int)unreadCount; -- (unsigned int)indexOfMessage:(id)fp8; -- (id)copyOfAllMessages; -- (id)mutableCopyOfAllMessages; -- (id)copyOfAllMessagesWithOptions:(unsigned int)fp8; -- (void)addMessagesToAllMessages:(id)fp8; -- (void)addMessageToAllMessages:(id)fp8; -- (void)insertMessageToAllMessages:(id)fp8 atIndex:(unsigned int)fp12; -- (id)_defaultRouterDestination; -- (id)routeMessages:(id)fp8; -- (id)finishRoutingMessages:(id)fp8 routed:(id)fp12; -- (id)routeMessages:(id)fp8 isUserAction:(BOOL)fp12; -- (BOOL)canRebuild; -- (void)rebuildTableOfContentsAsynchronously; -- (BOOL)canCompact; -- (void)doCompact; -- (void)deleteMessagesOlderThanNumberOfDays:(int)fp8 compact:(BOOL)fp12; -- (void)deleteMessages:(id)fp8 moveToTrash:(BOOL)fp12; -- (void)undeleteMessages:(id)fp8; -- (void)deleteLastMessageWithHeaders:(id)fp8 compactWhenDone:(BOOL)fp12; -- (BOOL)allowsAppend; -- (BOOL)allowsOverwrite; -- (BOOL)isALocalStore; -- (int)undoAppendOfMessageIDs:(id)fp8; -- (void)finishCopyOfMessages:(id)fp8 fromStore:(id)fp12 originalsWereDeleted:(BOOL)fp16; -- (int)appendMessages:(id)fp8 unsuccessfulOnes:(id)fp12 newMessageIDs:(id)fp16 newMessages:(id)fp20 newDocumentIDsByOld:(id)fp24 flagsToSet:(id)fp28 forMove:(BOOL)fp32 error:(id *)fp36; -- (int)appendMessages:(id)fp8 unsuccessfulOnes:(id)fp12 newMessageIDs:(id)fp16 newMessages:(id)fp20 flagsToSet:(id)fp24 forMove:(BOOL)fp28 error:(id *)fp32; -- (int)appendMessages:(id)fp8 unsuccessfulOnes:(id)fp12 newMessageIDs:(id)fp16 newMessages:(id)fp20 flagsToSet:(id)fp24 forMove:(BOOL)fp28; -- (int)appendMessages:(id)fp8 unsuccessfulOnes:(id)fp12 newMessageIDs:(id)fp16 newMessages:(id)fp20 flagsToSet:(id)fp24; -- (int)appendMessages:(id)fp8 unsuccessfulOnes:(id)fp12 newMessageIDs:(id)fp16 newMessages:(id)fp20 forMove:(BOOL)fp24; -- (int)appendMessages:(id)fp8 unsuccessfulOnes:(id)fp12 newMessageIDs:(id)fp16 newMessages:(id)fp20; -- (int)appendMessages:(id)fp8 unsuccessfulOnes:(id)fp12 newMessageIDs:(id)fp16; -- (int)appendMessages:(id)fp8 unsuccessfulOnes:(id)fp12; -- (id)messageWithValue:(id)fp8 forHeader:(id)fp12 options:(unsigned int)fp16; -- (id)messageForMessageID:(id)fp8; -- (id)headerDataForMessage:(id)fp8; -- (id)bodyDataForMessage:(id)fp8; -- (id)fullBodyDataForMessage:(id)fp8 andHeaderDataIfReadilyAvailable:(id *)fp12; -- (id)fullBodyDataForMessage:(id)fp8; -- (id)bodyForMessage:(id)fp8 fetchIfNotAvailable:(BOOL)fp12; -- (id)bodyForMessage:(id)fp8 fetchIfNotAvailable:(BOOL)fp12 updateFlags:(BOOL)fp16; -- (id)headersForMessage:(id)fp8; -- (id)headersForMessage:(id)fp8 fetchIfNotAvailable:(BOOL)fp12; -- (id)dataForMimePart:(id)fp8; -- (BOOL)hasCachedDataForMimePart:(id)fp8; -- (id)uniquedString:(id)fp8; -- (id)colorForMessage:(id)fp8; -- (id)setFlagsFromDictionary:(id)fp8 forMessages:(id)fp12; -- (id)setFlagsFromDictionary:(id)fp8 forToDos:(id)fp12; -- (id)setFlagsFromDictionary:(id)fp8 forMessage:(id)fp12; -- (id)setFlagsFromDictionary:(id)fp8 forToDo:(id)fp12; -- (void)setFlag:(id)fp8 state:(BOOL)fp12 forMessages:(id)fp16; -- (BOOL)hasUnsavedChangesToMessageData; -- (void)setColor:(id)fp8 highlightTextOnly:(BOOL)fp12 forMessages:(id)fp16; -- (void)messageColorsNeedToBeReevaluated; -- (void)startSynchronization; -- (id)_getSerialNumberString; -- (void)setNumberOfAttachments:(unsigned int)fp8 isSigned:(BOOL)fp12 isEncrypted:(BOOL)fp16 forMessage:(id)fp20; -- (void)updateNumberOfAttachmentsForMessages:(id)fp8; -- (void)updateMessageColorsSynchronouslyForMessages:(id)fp8; -- (void)updateMessageColorsAsynchronouslyForMessages:(id)fp8; -- (void)setJunkMailLevel:(int)fp8 forMessages:(id)fp12; -- (void)setJunkMailLevel:(int)fp8 forMessages:(id)fp12 trainJunkMailDatabase:(BOOL)fp16; -- (void)setJunkMailLevel:(int)fp8 forMessages:(id)fp12 trainJunkMailDatabase:(BOOL)fp16 userRecorded:(BOOL)fp20; -- (id)status; -- (void)fetchSynchronously; -- (BOOL)setPreferredEncoding:(unsigned long)fp8 forMessage:(id)fp12; -- (void)suggestSortOrder:(id)fp8 ascending:(BOOL)fp12; -- (id)sortOrder; -- (BOOL)isSortedAscending; -- (void)todosDidChangeForMessages:(id)fp8 oldToDosByMessage:(id)fp12 newToDosByMessage:(id)fp16; -- (int)setToDo:(id)fp8 forMessage:(id)fp12 oldToDo:(id)fp16; -- (void)invalidateMessage:(id)fp8; -- (void)invalidateMessages:(id)fp8; - -@end - -@interface MessageStore (MessageFrameworkOnly) -+ (void)_autosaveMessageStore:(void *)fp8; -- (void)_cancelAutosave; -- (void)_setNeedsAutosave; -- (id)_fetchHeaderDataForMessage:(id)fp8; -- (id)_fetchBodyDataForMessage:(id)fp8 andHeaderDataIfReadilyAvailable:(id *)fp12; -- (id)_fetchBodyForMessage:(id)fp8 updateFlags:(BOOL)fp12; -- (id)_fetchBodyForMessage:(id)fp8; -- (BOOL)_shouldCallCompactWhenClosing; -- (void)_compactMessageAtIndex:(unsigned int)fp8; -- (BOOL)_isReadyToBeInvalidated; -- (void)_saveChanges; -- (void)_setState:(int)fp8; -- (void)_invalidate; -- (void)_invalidateInBackground; -- (void)_countUnreadAndDeleted; -- (void)_cleanUpStaleAttachments; -- (id)_lockFilePath; -- (BOOL)_acquireLockFile:(id)fp8; -- (void)_removeLockFile:(id)fp8; -- (void)_flushAllCaches; -- (void)_flushAllMessageData; -- (void)_rebuildTableOfContentsSynchronously; -- (void)updateBodyFlagsForMessage:(id)fp8 body:(id)fp12; -- (id)_setOrGetBody:(id)fp8 forMessage:(id)fp12 updateFlags:(BOOL)fp16; -- (id)_setOrGetBody:(id)fp8 forMessage:(id)fp12; -- (id)_cachedBodyForMessage:(id)fp8 valueIfNotPresent:(id)fp12; -- (id)_cachedHeadersForMessage:(id)fp8 valueIfNotPresent:(id)fp12; -- (id)_cachedBodyDataForMessage:(id)fp8 valueIfNotPresent:(id)fp12; -- (id)_cachedHeaderDataForMessage:(id)fp8 valueIfNotPresent:(id)fp12; -- (void)updateMessageColorsSynchronouslyForMessages:(id)fp8 postingNotification:(BOOL)fp12; -- (void)updateMessages:(id)fp8 updateColor:(BOOL)fp12 updateNumberOfAttachments:(BOOL)fp16; -- (void)_setBackgroundColorForMessages:(id)fp8 textColorForMessages:(id)fp12; -- (void)_invalidateColorForMessages:(id)fp8; -- (void)_setFlagsForMessages:(id)fp8 mask:(unsigned long)fp12; -- (void)_setFlagsAndColorForMessages:(id)fp8; -- (void)messagesWereAdded:(id)fp8 forIncrementalLoading:(BOOL)fp12; -- (BOOL)_updateFlagForMessage:(id)fp8 key:(id)fp12 value:(BOOL)fp16; -@end - -@interface MessageStore (ScriptingSupport) -- (id)objectSpecifier; -- (id)objectSpecifierForMessage:(id)fp8; -@end - -@interface MessageStore (ParentalControl) -- (void)setPermissionRequestState:(int)fp8 forMessage:(id)fp12; -@end - -@interface MessageStore (RSSAdditions) -+ (void)deleteUnflaggedEntriesCreatedBeforeDate:(id)fp8; -- (void)updateEntries:(id)fp8 fromFeed:(id)fp12; -- (void)changeFlagsForEntries:(id)fp8 fromFeed:(id)fp12; -- (void)updateStatusFromFeed:(id)fp8 error:(id)fp12 errorMessage:(id)fp16; -@end - -#elif defined(TIGER) - -#import - -@class MailboxUid; -@class MailAccount; -@class MboxIndex; -@class ObjectCache; -@class ActivityMonitor; - -@interface MessageStore : SafeObserver -{ - struct { - unsigned int isReadOnly:1; - unsigned int hasUnsavedChangesToMessageData:1; - unsigned int haveOpenLockFile:1; - unsigned int rebuildingTOC:1; - unsigned int compacting:1; - unsigned int cancelInvalidation:1; - unsigned int forceInvalidation:1; - unsigned int isWritingChangesToDisk:1; - unsigned int isTryingToClose:1; - unsigned int compactOnClose:1; - unsigned int reserved:22; - } _flags; - MailboxUid *_mailboxUid; - MailAccount *_account; - NSMutableArray *_allMessages; - unsigned int _allMessagesSize; - unsigned int _deletedMessagesSize; - unsigned int _deletedMessageCount; - unsigned int _unreadMessageCount; - int _state; - union { - struct { - ObjectCache *_headerDataCache; - ObjectCache *_headerCache; - ObjectCache *_bodyDataCache; - ObjectCache *_bodyCache; - } objectCaches; - struct { - struct __CFDictionary *_headerDataCache; - struct __CFDictionary *_headerCache; - struct __CFDictionary *_bodyDataCache; - struct __CFDictionary *_bodyCache; - } intKeyCaches; - } _caches; - NSTimer *_timer; - NSMutableSet *_uniqueStrings; - double timeOfLastAutosaveOperation; - ActivityMonitor *_openMonitor; -} - -+ (void)initialize; -+ (struct _NSMapTable *)_storeCacheMapTable; -+ (unsigned int)numberOfCurrentlyOpenStores; -+ (id)descriptionOfOpenStores; -+ (id)currentlyAvailableStoreForUid:(id)fp8; -+ (id)currentlyAvailableStoresForAccount:(id)fp8; -+ (id)registerAvailableStore:(id)fp8; -+ (void)removeStoreFromCache:(id)fp8; -+ (BOOL)createEmptyStoreIfNeededForPath:(id)fp8 notIndexable:(BOOL)fp12; -+ (BOOL)createEmptyStoreForPath:(id)fp8; -+ (BOOL)storeAtPathIsWritable:(id)fp8; -+ (BOOL)cheapStoreAtPathIsEmpty:(id)fp8; -+ (int)copyMessages:(id)fp8 toMailboxUid:(id)fp12 shouldDelete:(BOOL)fp16; -- (void)queueSaveChangesInvocation; -- (id)willBeReleased; -- (id)initWithMailboxUid:(id)fp8 readOnly:(BOOL)fp12; -- (id)copyWithZone:(struct _NSZone *)fp8; -- (void)dealloc; -- (void)finalize; -- (void)openAsynchronouslyUpdatingMetadata:(BOOL)fp8; -- (void)openAsynchronously; -- (void)openAsynchronouslyWithOptions:(unsigned int)fp8; -- (void)openSynchronously; -- (void)openSynchronouslyUpdatingMetadata:(BOOL)fp8; -- (void)updateMetadataAsynchronously; -- (void)updateMetadata; -- (void)didOpen; -- (void)cancelOpen; -- (void)writeUpdatedMessageDataToDisk; -- (void)invalidateSavingChanges:(BOOL)fp8; -- (id)account; -- (id)mailboxUid; -- (BOOL)isOpened; -- (id)storePathRelativeToAccount; -- (id)displayName; -- (const char *)displayNameForLogging; -- (BOOL)isReadOnly; -- (id)description; -- (BOOL)isTrash; -- (BOOL)isDrafts; -- (void)messageFlagsDidChange:(id)fp8 flags:(id)fp12; -- (void)structureDidChange; -- (void)messagesWereAdded:(id)fp8; -- (void)messagesWereCompacted:(id)fp8; -- (void)updateUserInfoToLatestValues; -- (unsigned int)totalMessageSize; -- (void)deletedCount:(unsigned int *)fp8 andSize:(unsigned int *)fp12; -- (unsigned int)totalCount; -- (unsigned int)unreadCount; -- (unsigned int)indexOfMessage:(id)fp8; -- (id)copyOfAllMessages; -- (id)mutableCopyOfAllMessages; -- (id)copyOfAllMessagesWithOptions:(unsigned int)fp8; -- (void)addMessagesToAllMessages:(id)fp8; -- (void)addMessageToAllMessages:(id)fp8; -- (void)insertMessageToAllMessages:(id)fp8 atIndex:(unsigned int)fp12; -- (id)_defaultRouterDestination; -- (id)routeMessages:(id)fp8; -- (id)finishRoutingMessages:(id)fp8 routed:(id)fp12; -- (id)routeMessages:(id)fp8 isUserAction:(BOOL)fp12; -- (BOOL)canRebuild; -- (void)rebuildTableOfContentsAsynchronously; -- (BOOL)canCompact; -- (void)doCompact; -- (void)deleteMessagesOlderThanNumberOfDays:(int)fp8 compact:(BOOL)fp12; -- (void)deleteMessages:(id)fp8 moveToTrash:(BOOL)fp12; -- (void)undeleteMessages:(id)fp8; -- (void)deleteLastMessageWithHeader:(id)fp8 forHeaderKey:(id)fp12 compactWhenDone:(BOOL)fp16; -- (BOOL)allowsAppend; -- (int)undoAppendOfMessageIDs:(id)fp8; -- (int)appendMessages:(id)fp8 unsuccessfulOnes:(id)fp12 newMessageIDs:(id)fp16 newMessages:(id)fp20; -- (int)appendMessages:(id)fp8 unsuccessfulOnes:(id)fp12 newMessageIDs:(id)fp16; -- (int)appendMessages:(id)fp8 unsuccessfulOnes:(id)fp12; -- (id)messageWithValue:(id)fp8 forHeader:(id)fp12 options:(unsigned int)fp16; -- (id)messageForMessageID:(id)fp8; -- (id)headerDataForMessage:(id)fp8; -- (id)bodyDataForMessage:(id)fp8; -- (id)fullBodyDataForMessage:(id)fp8 andHeaderDataIfReadilyAvailable:(id *)fp12; -- (id)fullBodyDataForMessage:(id)fp8; -- (id)bodyForMessage:(id)fp8 fetchIfNotAvailable:(BOOL)fp12; -- (id)bodyForMessage:(id)fp8 fetchIfNotAvailable:(BOOL)fp12 updateFlags:(BOOL)fp16; -- (id)headersForMessage:(id)fp8; -- (id)headersForMessage:(id)fp8 fetchIfNotAvailable:(BOOL)fp12; -- (id)dataForMimePart:(id)fp8; -- (BOOL)hasCachedDataForMimePart:(id)fp8; -- (id)uniquedString:(id)fp8; -- (id)colorForMessage:(id)fp8; -- (BOOL)_shouldChangeComponentMessageFlags; -- (BOOL)_shouldChangeComponentMessageFlagsForMessage:(id)fp8; -- (id)setFlagsFromDictionary:(id)fp8 forMessages:(id)fp12; -- (id)setFlagsFromDictionary:(id)fp8 forMessage:(id)fp12; -- (void)setFlag:(id)fp8 state:(BOOL)fp12 forMessages:(id)fp16; -- (BOOL)hasUnsavedChangesToMessageData; -- (void)setColor:(id)fp8 highlightTextOnly:(BOOL)fp12 forMessages:(id)fp16; -- (void)messageColorsNeedToBeReevaluated; -- (void)startSynchronization; -- (id)_getSerialNumberString; -- (void)setNumberOfAttachments:(unsigned int)fp8 isSigned:(BOOL)fp12 isEncrypted:(BOOL)fp16 forMessage:(id)fp20; -- (void)updateNumberOfAttachmentsForMessages:(id)fp8; -- (void)updateMessageColorsSynchronouslyForMessages:(id)fp8; -- (void)updateMessageColorsAsynchronouslyForMessages:(id)fp8; -- (void)setJunkMailLevel:(int)fp8 forMessages:(id)fp12; -- (void)setJunkMailLevel:(int)fp8 forMessages:(id)fp12 trainJunkMailDatabase:(BOOL)fp16; -- (id)status; -- (void)fetchSynchronously; -- (BOOL)setPreferredEncoding:(unsigned long)fp8 forMessage:(id)fp12; -- (void)suggestSortOrder:(id)fp8 ascending:(BOOL)fp12; -- (id)sortOrder; -- (BOOL)isSortedAscending; - -@end - -@interface MessageStore (MessageFrameworkOnly) -+ (void)_autosaveMessageStore:(void *)fp8; -- (void)_cancelAutosave; -- (void)_setNeedsAutosave; -- (id)_fetchHeaderDataForMessage:(id)fp8; -- (id)_fetchBodyDataForMessage:(id)fp8 andHeaderDataIfReadilyAvailable:(id *)fp12; -- (id)_fetchBodyForMessage:(id)fp8 updateFlags:(BOOL)fp12; -- (id)_fetchBodyForMessage:(id)fp8; -- (BOOL)_shouldCallCompactWhenClosing; -- (void)_compactMessageAtIndex:(unsigned int)fp8; -- (BOOL)_isReadyToBeInvalidated; -- (void)_saveChanges; -- (void)_invalidate; -- (void)_invalidateInBackground; -- (void)_countUnreadAndDeleted; -- (void)_cleanUpStaleAttachments; -- (id)_lockFilePath; -- (BOOL)_acquireLockFile:(id)fp8; -- (void)_removeLockFile:(id)fp8; -- (void)_flushAllCaches; -- (void)_flushAllMessageData; -- (void)_rebuildTableOfContentsSynchronously; -- (void)updateBodyFlagsForMessage:(id)fp8 body:(id)fp12; -- (id)_setOrGetBody:(id)fp8 forMessage:(id)fp12 updateFlags:(BOOL)fp16; -- (id)_setOrGetBody:(id)fp8 forMessage:(id)fp12; -- (id)_cachedBodyForMessage:(id)fp8 valueIfNotPresent:(id)fp12; -- (id)_cachedHeadersForMessage:(id)fp8 valueIfNotPresent:(id)fp12; -- (id)_cachedBodyDataForMessage:(id)fp8 valueIfNotPresent:(id)fp12; -- (id)_cachedHeaderDataForMessage:(id)fp8 valueIfNotPresent:(id)fp12; -- (void)updateMessageColorsSynchronouslyForMessages:(id)fp8 postingNotification:(BOOL)fp12; -- (void)updateMessages:(id)fp8 updateColor:(BOOL)fp12 updateNumberOfAttachments:(BOOL)fp16; -- (void)_setBackgroundColorForMessages:(id)fp8 textColorForMessages:(id)fp12; -- (void)_invalidateColorForMessages:(id)fp8; -- (void)_setFlagsForMessages:(id)fp8 mask:(unsigned long)fp12; -- (void)_setFlagsAndColorForMessages:(id)fp8; -- (void)messagesWereAdded:(id)fp8 forIncrementalLoading:(BOOL)fp12; -@end - -@interface MessageStore (ScriptingSupport) -- (id)objectSpecifier; -- (id)objectSpecifierForMessage:(id)fp8; -@end - -@interface MessageStore (ParentalControl) -- (void)setPermissionRequestState:(int)fp8 forMessage:(id)fp12; -@end - -#else - -@class MailboxUid; -@class MailAccount; -@class MboxIndex; -@class ObjectCache; - -@interface MessageStore:NSObject -{ - @public - struct { - int isReadOnly:1; - int hasUnsavedChangesToMessageData:1; - int hasUnsavedChangesToIndex:1; - int indexIsValid:1; - int haveOpenLockFile:1; - int rebuildingTOC:1; - int compacting:1; - int cancelInvalidation:1; - int forceInvalidation:1; - int isWritingChangesToDisk:1; - int isTryingToClose:1; - int reserved:21; - } _flags; // 4 = 0x4 - MailboxUid *_mailboxUid; // 8 = 0x8 - MailAccount *_account; // 12 = 0xc - MboxIndex *_index; // 16 = 0x10 - NSMutableArray *_allMessages; // 20 = 0x14 - NSMutableArray *_messagesToBeAddedToIndex; // 24 = 0x18 - NSMutableArray *_messagesToBeRemovedFromIndex; // 28 = 0x1c - unsigned int _allMessagesSize; // 32 = 0x20 - unsigned int _deletedMessagesSize; // 36 = 0x24 - unsigned int _deletedMessageCount; // 40 = 0x28 - unsigned int _unreadMessageCount; // 44 = 0x2c - id _updateIndexMonitor; // 48 = 0x30 - int _state; // 52 = 0x34 - ObjectCache *_headerDataCache; // 56 = 0x38 - ObjectCache *_headerCache; // 60 = 0x3c - ObjectCache *_bodyDataCache; // 64 = 0x40 - ObjectCache *_bodyCache; // 68 = 0x44 - NSTimer *_timer; // 72 = 0x48 - NSMutableSet *_uniqueStrings; // 76 = 0x4c - double timeOfLastAutosaveOperation; // 80 = 0x50 -} - -+ (void)initialize; -+ (unsigned int)numberOfCurrentlyOpenStores; -+ descriptionOfOpenStores; -+ currentlyAvailableStoreForUid:fp8; -+ currentlyAvailableStoresForAccount:fp8; -+ registerAvailableStore:fp8; -+ (void)removeStoreFromCache:fp8; -+ (char)createEmptyStoreIfNeededForPath:fp8; -+ (char)createEmptyStoreForPath:fp8; -+ (char)storeAtPathIsWritable:fp8; -+ (char)cheapStoreAtPathIsEmpty:fp8; -+ (int)copyMessages:fp8 toMailboxUid:fp12 shouldDelete:(char)fp16; -- (void)release; -- initWithMailboxUid:fp8 readOnly:(char)fp12; -- copyWithZone:(struct _NSZone *)fp8; -- (void)dealloc; -- (void)openAsynchronouslyUpdatingIndex:(char)fp8 andOtherMetadata:(char)fp12; -- (void)openAsynchronously; -- (void)openSynchronously; -- (void)openSynchronouslyUpdatingIndex:(char)fp8 andOtherMetadata:(char)fp12; -- (void)updateMetadataAsynchronously; -- (void)updateMetadata; -- (void)didOpen; -- (void)writeUpdatedMessageDataToDisk; -- (void)invalidateSavingChanges:(char)fp8; -- account; -- mailboxUid; -- (char)isOpened; -- storePathRelativeToAccount; -- displayName; -- (const STR)displayNameForLogging; -- (char)isReadOnly; -- description; -- (char)isTrash; -- (char)isDrafts; -- (void)messageFlagsDidChange:fp8 flags:fp12; -- (void)structureDidChange; -- (void)messagesWereAdded:fp8; -- (void)messagesWereCompacted:fp8; -- (void)updateUserInfoToLatestValues; -- (unsigned int)totalMessageSize; -- (void)deletedCount:(unsigned int *)fp8 andSize:(unsigned int *)fp12; -- (unsigned int)totalCount; -- (unsigned int)unreadCount; -- (unsigned int)indexOfMessage:fp8; -- copyOfAllMessages; -- mutableCopyOfAllMessages; -- (void)addMessagesToAllMessages:fp8; -- (void)addMessageToAllMessages:fp8; -- _defaultRouterDestination; -- routeMessages:fp8; -- finishRoutingMessages:fp8 routed:fp12; -- (char)canRebuild; -- (void)rebuildTableOfContentsAsynchronously; -- (char)canCompact; -- (void)doCompact; -- (void)deleteMessagesOlderThanNumberOfDays:(int)fp8 compact:(char)fp12; -- (void)deleteMessages:fp8 moveToTrash:(char)fp12; -- (void)undeleteMessages:fp8; -- (void)deleteLastMessageWithHeader:fp8 forHeaderKey:fp12 compactWhenDone:(char)fp16; -- (char)allowsAppend; -- (int)undoAppendOfMessageIDs:fp8; -- (int)appendMessages:fp8 unsuccessfulOnes:fp12 newMessageIDs:fp16; -- (int)appendMessages:fp8 unsuccessfulOnes:fp12; -- messageWithValue:fp8 forHeader:fp12 options:(unsigned int)fp16; -- messageForMessageID:fp8; -- (void)_setHeaderDataInCache:fp8 forMessage:fp12; -- headerDataForMessage:fp8; -- bodyDataForMessage:fp8; -- fullBodyDataForMessage:fp8; -- bodyForMessage:fp8 fetchIfNotAvailable:(char)fp12; -- headersForMessage:fp8; -- dataForMimePart:fp8; -- (char)hasCachedDataForMimePart:fp8; -- uniquedString:fp8; -- colorForMessage:fp8; -- (char)_shouldChangeComponentMessageFlags; -- setFlagsFromDictionary:fp8 forMessages:fp12; -- setFlagsFromDictionary:fp8 forMessage:fp12; -- (void)setFlag:fp8 state:(char)fp12 forMessages:fp16; -- (void)setColor:fp8 highlightTextOnly:(char)fp12 forMessages:fp16; -- (void)messageColorsNeedToBeReevaluated; -- (void)startSynchronization; -- performBruteForceSearchWithString:fp8 options:(int)fp12; -- (STR)createSerialNumberStringFrom:(STR)fp8 colorCode:(unsigned short)fp12; -- _getSerialNumberString; -- (void)setNumberOfAttachments:(unsigned int)fp8 isSigned:(char)fp12 isEncrypted:(char)fp16 forMessage:fp20; -- (void)updateNumberOfAttachmentsForMessages:fp8; -- (void)updateMessageColorsSynchronouslyForMessages:fp8; -- (void)updateMessageColorsAsynchronouslyForMessages:fp8; -- (void)setJunkMailLevel:(int)fp8 forMessages:fp12; -- (void)setJunkMailLevel:(int)fp8 forMessages:fp12 trainJunkMailDatabase:(char)fp16; -- status; -- (void)fetchSynchronously; -- (char)setPreferredEncoding:(unsigned long)fp8 forMessage:fp12; -- (void)suggestSortOrder:fp8 ascending:(char)fp12; -- sortOrder; -- (char)isSortedAscending; - -@end - -@interface MessageStore(MessageFrameworkOnly) -+ (void)_autosaveMessageStore:(void *)fp8; -- (void)_cancelAutosave; -- (void)_setNeedsAutosave; -- _fetchHeaderDataForMessage:fp8; -- _fetchBodyDataForMessage:fp8 andHeaderDataIfReadilyAvailable:(id *)fp12; -- _fetchBodyForMessage:fp8; -- (char)_shouldCallCompactWhenClosing; -- (void)_compactMessageAtIndex:(unsigned int)fp8; -- (char)_isReadyToBeInvalidated; -- (void)_saveChanges; -- (void)_invalidate; -- (void)_invalidateInBackground; -- (void)_countUnreadAndDeleted; -- (void)_cleanUpStaleAttachments; -- _lockFilePath; -- (char)_acquireLockFile:fp8; -- (void)_removeLockFile:fp8; -- (void)_flushAllMessageData; -- (void)_rebuildTableOfContentsSynchronously; -- _setOrGetBody:fp8 forMessage:fp12; -- (void)updateMessageColorsSynchronouslyForMessages:fp8 postingNotification:(char)fp12; -@end - -@interface MessageStore(Indexing) -- (char)allowsIndexing; -- (char)isIndexed; -- (char)indexIsValid; -- (void)updateIndex; -- _index; -- (void)openIndexWithWriteAccess:(char)fp8; -- (void)checkForValidIndex; -- (void)closeIndex; -- (void)_fullUpdateIndexAsynchronously; -- (void)_setNeedsToUpdateIndex; -- (void)_addMessagesToIndex:fp8; -- (void)_removeMessagesFromIndex:fp8; -- (void)stopUpdatingIndex; -- (void)handleUpdatingFinished; -- (void)_prepareIndexForUpdate; -- (void)_updateIndex; -- (void)_fullUpdateOfIndex; -- (void)_writeUpdatedIndexToDisk; -- indexedSearchFor:fp8 ranks:(id *)fp12 errorString:(id *)fp16; -- cheapIndexedSearchFor:fp8 ranks:(id *)fp12 errorString:(id *)fp16; -- (void)invalidateIndex; -- (void)_invalidateIndex; -- (char)_isUpdatingIndex; -@end - -@interface MessageStore(ScriptingSupport) -- objectSpecifier; -- objectSpecifierForMessage:fp8; -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MessageViewer.h b/GPGMail/Source/PrivateHeaders/MessageViewer.h deleted file mode 100644 index 98284706..00000000 --- a/GPGMail/Source/PrivateHeaders/MessageViewer.h +++ /dev/null @@ -1,2108 +0,0 @@ -/* MessageViewer.h created by stephane on Tue 04-Jul-2000 */ - -#import - -#ifdef SNOW_LEOPARD_64 - -#import "MVTerminationHandler.h" - -@protocol MVMailboxSelectionOwner -- (id)selectedMailboxes; -- (id)selectedMailbox; -- (id)sortedSectionItemsForTimeMachine; -- (BOOL)isSelectedMailboxSpecial; -- (void)selectPathsToMailboxes:(id)arg1; -- (BOOL)mailboxIsExpanded:(id)arg1; -- (BOOL)sectionIsExpanded:(id)arg1; -- (void)revealMailbox:(id)arg1; -- (id)mailboxSelectionWindow; - -@optional -- (id)expandedItems; -@end - -@protocol MessageTransferDelegate -- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; -- (id)undoManagerForMessageTransfer:(id)arg1; -- (void)hideMessagesForMessageTransfer:(id)arg1; -- (void)unhideMessagesForMessageTransfer:(id)arg1; -- (void)messageTransferDidTransferMessages:(id)arg1; -- (void)messageTransferDidUndoTransferOfMessages:(id)arg1; -@end - -@protocol MailboxesOutlineViewControllerDelegate -- (void)selectAllMessages; -- (void)focusMessages; -- (long long)viewerNumber; - -@optional -- (void)mailboxSelectionChanged:(id)arg1; -@end - -@class MessageMall; -@class TableViewManager; -@class MailboxesOutlineViewController; -@class ExpandingSplitView; -@class MailVerticalSplitView; -@class ActivityViewController; -@class ToDoListController; -@class ToDoMall; -@class ToDoListView; -@class MessageViewerLazyPopUpButton; -@class VerticalSplitViewHandle; -@class MailboxPaneBottomView; -@class SplitterAnimation; -@class SearchSliceView; -@class SafeBoolCache; -@class MailToolbar; -@class MessageViewerSearchField; - -@protocol MessageViewerSearchFieldFocusDelegate -- (void)searchFieldDidEndSearching:(id)arg1; -@end - -@interface MessageViewer : NSResponder -{ - MessageMall *_messageMall; - TableViewManager *_tableManager; - MessageContentController *_contentController; - MailboxesOutlineViewController *_outlineViewController; - NSWindow *_window; - ExpandingSplitView *_splitView; - NSScrollView *_messageListScrollView; - MailVerticalSplitView *_verticalSplitView; - ColorBackgroundView *_viewerContainer; - ColorBackgroundView *_mailboxesView; - ActivityViewController *_activityViewController; - NSToolbarItem *_searchViewItem; - NSString *_lastSearchPhrase; - NSString *_searchPhrase; - int _currentSearchArea; - int _currentSearchField; - int _currentSearchTarget; - long long _selectedTag; - BOOL _userChangedSliceView; - NSMenu *_tableHeaderMenu; - ToDoListController *_toDoController; - ToDoMall *_toDoMall; - NSScrollView *_toDoScrollView; - ToDoListView *_toDoListView; - NSMenu *_toDoColumnsMenu; - NSMenu *_toDoSortByMenu; - NSMenu *_messageColumnsMenu; - NSMenu *_messageSortByMenu; - NSMenuItem *_columnsMenuItem; - NSMenuItem *_sortByMenuItem; - BOOL _toDoListViewIsShowing; - BOOL _previewPaneWasVisibleWhenToDoListWasShown; - NSArray *_toDoMailboxes; - MessageViewerLazyPopUpButton *newMailboxButton; - NSButton *activityToggleButton; - MessageViewerLazyPopUpButton *actionButton; - VerticalSplitViewHandle *verticalSplitViewHandle; - MailboxPaneBottomView *mailboxPaneBottomView; - BOOL _shouldPreventTableViewResize; - BOOL _shouldMakeTableViewSelectionVisible; - BOOL _shouldMakeMessageSelectionVisible; - BOOL _showingDefaultSearchString; - BOOL _updatingSearchField; - BOOL _allowShowingDeletedMessages; - BOOL _suppressWindowTitleUpdates; - BOOL _didSetupUI; - BOOL _isObservingFirstResponder; - double _restoreMailboxPaneToWidthAfterDragOperation; - double _lastSplitViewPosition; - double _lastMailboxSplitPosition; - double _lastDragXPosition; - NSArray *_mailboxesToDisplayWhenVisible; - NSString *_stringToSearchWhenVisible; - BOOL _shouldCascadeWhenShowing; - MailToolbar *_toolbar; - NSMutableDictionary *_toolbarItems; - MessageViewerSearchField *_searchField; - NSDictionary *_savedDefaults; - NSMutableArray *_noteDocumentEditorsForPlainTextTransfer; - NSArray *_messagesToDeleteAfterPlainTextTransferHasCompleted; - BOOL _pendingPlainTextTransfers; - unsigned long long _numberOfPendingPlainTextTransfers; - unsigned long long _viewerNumber; - NSMutableArray *_transferOperations; - NSDictionary *_plainTextTransferParameters; - double _splitViewPositionBeforeSearch; - SplitterAnimation *_animation; - SearchSliceView *_searchSliceView; - SafeBoolCache *_atLeastOneSelectedMessageIsInOutboxCache; - SafeBoolCache *_atLeastOneSelectedMessageIsInDraftsCache; - SafeBoolCache *_canCreateToDoCache; - NSNumber *_uniqueID; -} - -+ (void)initialize; -+ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; -+ (id)allMessageViewers; -+ (id)allSingleMessageViewers; -+ (id)existingViewerForStore:(id)arg1; -+ (id)existingViewerForMailboxUid:(id)arg1; -+ (id)_mailboxUidForTag:(unsigned long long)arg1; -+ (id)newViewerForMailboxWithTag:(unsigned long long)arg1; -+ (id)existingViewerShowingMessage:(id)arg1; -+ (void)registerNewViewer:(id)arg1; -+ (void)deregisterViewer:(id)arg1; -+ (void)showAllViewers; -+ (id)mailboxUidsBeingViewed; -+ (id)frontmostMessageViewer; -+ (void)searchForString:(id)arg1; -+ (unsigned long long)firstAvailableViewerNumber; -+ (id)_mailboxUidsForPaths:(id)arg1; -+ (unsigned long long)deleteOperationForEvent:(id)arg1 isKeyPressed:(BOOL)arg2; -+ (void)saveAllViewersToDefaultsWithDelay; -+ (void)saveAllViewersToDefaultsWithNotification:(id)arg1; -+ (void)saveAllViewersToDefaults; -+ (void)saveAllViewersToDefaultsOmittingViewer:(id)arg1; -+ (BOOL)restoreAllViewersFromDefaults; -+ (void)willRestoreAllViewersFromDefaults; -+ (void)didRestoreAllViewersFromDefaults; -+ (BOOL)isRestoringViewersFromDefaults; -+ (id)messageViewersByUniqueID; -- (unsigned long long)viewerNumber; -- (void)revealMessage:(id)arg1; -- (void)revealCurrentMessage; -- (void)_displayFollowup:(id)arg1; -- (void)_cantFindFollowupToMessage:(id)arg1; -- (void)showFollowupsToMessage:(id)arg1; -- (id)_mailboxUidsFromDefaults:(id)arg1; -- (id)initWithSavedDefaults:(id)arg1; -- (void)intializeLazyPopUpButtons; -- (id)init; -- (id)plainInit; -- (id)initWithMailboxUids:(id)arg1; -- (void)dealloc; -- (void)release; -- (void)_registerForApplicationNotifications; -- (void)_unregisterForApplicationNotifications; -- (void)_registerForStoreNotifications; -- (void)_unregisterForStoreNotifications; -- (void)storeBeingInvalidated:(id)arg1; -- (id)_store; -- (void)_setStore:(id)arg1; -- (BOOL)_selectedMailboxesAreOutgoing:(char *)arg1; -- (BOOL)_isViewingMailboxUid:(id)arg1; -- (BOOL)_isShowingMessage:(id)arg1; -- (id)window; -- (void)show; -- (void)showAndMakeKey:(BOOL)arg1; -- (void)_setupUIAndOrderFront:(BOOL)arg1 andMakeKey:(BOOL)arg2; -- (id)tableHeaderViewGetDefaultMenu:(id)arg1; -- (id)_toDoController; -- (void)_setUpWindowContents; -- (void)_setupMailboxOutlineView; -- (void)_setupNextKeyViewLoop; -- (void)_setUpMenus; -- (void)takeOverAsSelectionOwner; -- (void)resignAsSelectionOwner; -- (void)windowDidBecomeMain:(id)arg1; -- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; -- (BOOL)windowShouldClose:(id)arg1; -- (void)windowWillMiniaturize:(id)arg1; -- (void)openMailboxesPaneToWidth:(double)arg1 byAnimating:(BOOL)arg2; -- (double)mailboxesPaneWidth; -- (BOOL)mailboxesPaneIsOpen; -- (BOOL)mailboxesPaneIsOpenWideEnoughToUse; -- (void)_enableSplitViewAutosaving; -- (void)_disableSplitViewAutosaving; -- (void)splitViewDidResizeSubviews:(id)arg1; -- (void)splitViewWillResizeSubviews:(id)arg1; -- (struct CGRect)splitView:(id)arg1 additionalEffectiveRectOfDividerAtIndex:(long long)arg2; -- (BOOL)splitView:(id)arg1 shouldCollapseSubview:(id)arg2 forDoubleClickOnDividerAtIndex:(long long)arg3; -- (void)toggleMailboxesPane:(id)arg1; -- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; -- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; -- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; -- (double)maxMailboxesViewWidthAllowed; -- (double)idealMailboxesViewWidth; -- (double)splitView:(id)arg1 constrainMaxCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; -- (void)updateMailboxButtonVisibility; -- (double)splitView:(id)arg1 constrainSplitPosition:(double)arg2 ofSubviewAt:(long long)arg3; -- (id)selectedMailboxes; -- (id)selectedMailbox:(BOOL)arg1; -- (id)selectedMailbox; -- (BOOL)isSelectedMailboxSpecial; -- (void)selectPathsToMailboxes:(id)arg1; -- (BOOL)mailboxIsExpanded:(id)arg1; -- (BOOL)sectionIsExpanded:(id)arg1; -- (id)expandedItems; -- (id)sortedSectionItemsForTimeMachine; -- (void)revealMailbox:(id)arg1; -- (id)mailboxSelectionWindow; -- (void)setSelectedMailboxes:(id)arg1; -- (id)selectedMessages; -- (void)setSelectedMessages:(id)arg1; -- (id)currentDisplayedMessage; -- (void)outlineViewDoubleClick:(id)arg1; -- (void)selectMailbox:(id)arg1; -- (void)_openBrowserForMessages:(id)arg1; -- (void)keyDown:(id)arg1; -- (void)keyUp:(id)arg1; -- (void)swipeWithEvent:(id)arg1; -- (void)_mailboxWasRenamed:(id)arg1; -- (void)mailboxSelectionChanged:(id)arg1; -- (void)_mallDidOpen; -- (void)_mallStructureDidChange; -- (void)_accountsDidChange:(id)arg1; -- (void)_mailboxesDidChange:(id)arg1; -- (void)_selectNextMessage:(id)arg1; -- (void)smartMailboxCriteriaChanged:(id)arg1; -- (void)_setMailboxUids:(id)arg1; -- (BOOL)_selectionContainsMessagesWithDeletedStatusEqualTo:(BOOL)arg1; -- (BOOL)_selectionContainsMessagesWithReadStatusEqualTo:(BOOL)arg1; -- (BOOL)_selectionContainsMessagesWithFlaggedStatusEqualTo:(BOOL)arg1; -- (BOOL)_selectionContainsMessagesWithJunkMailLevelEqualTo:(int)arg1; -- (BOOL)_selectionContainsMessagesWithAttachments; -- (BOOL)atLeastOneSelectedMessageIsInOutbox:(id)arg1; -- (BOOL)_updatedAtLeastOneSelectedMessageIsInOutbox:(id)arg1; -- (BOOL)atLeastOneSelectedMessageIsInDrafts:(id)arg1; -- (BOOL)_updatedAtLeastOneSelectedMessageIsInDrafts:(id)arg1; -- (BOOL)shouldDeleteMessagesGivenCurrentState; -- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; -- (BOOL)canCreateToDo; -- (BOOL)_updatedCanCreateToDo:(id)arg1; -- (BOOL)validateUserInterfaceItemForToDoList:(id)arg1; -- (BOOL)validateUserInterfaceItem:(id)arg1; -- (BOOL)validateMenuItem:(id)arg1; -- (void)_removeAccessibilityLinks; -- (void)messageWasDisplayedInTextView:(id)arg1; -- (void)messageNoLongerDisplayedInTextView:(id)arg1; -- (void)messageThreadSummaryWasDisplayedInTextView:(id)arg1; -- (void)checkNewMail:(id)arg1; -- (void)replyMessage:(id)arg1; -- (void)replyAllMessage:(id)arg1; -- (void)replyToSender:(id)arg1; -- (void)replyToOriginalSender:(id)arg1; -- (void)showComposeWindow:(id)arg1; -- (BOOL)_showEditorForNote:(id)arg1; -- (void)showNoteEditor:(id)arg1; -- (void)showAddressPanel:(id)arg1; -- (void)undeleteMessages:(id)arg1; -- (void)deleteMessages:(id)arg1; -- (void)deleteMessagesAllowingMoveToTrash:(BOOL)arg1; -- (void)openMessages:(id)arg1; -- (void)_openMessages:(id)arg1 withModifiers:(unsigned long long)arg2; -- (void)selectAllMessages; -- (void)focusMessages; -- (void)focusMailboxes; -- (void)focusMessage; -- (void)replyViaIM:(id)arg1; -- (void)showAccountInfo:(id)arg1; -- (id)tableManager; -- (id)mailboxesOutlineViewController; -- (id)contentController; -- (void)jumpToSelection:(id)arg1; -- (id)editorWithType:(int)arg1; -- (void)redirectMessage:(id)arg1; -- (void)forwardMessage:(id)arg1; -- (void)forwardAsAttachment:(id)arg1; -- (void)showToDoReferencedMessageInNewWindow:(id)arg1; -- (void)showToDoInList:(id)arg1; -- (id)currentSingleSelectedToDoMailbox; -- (id)displaySelectedMessageInSeparateWindow:(id)arg1; -- (id)_displaySelectedMessageInSeparateWindow:(id)arg1 withModifiers:(unsigned long long)arg2; -- (void)_openMessageInWebBrowser:(id)arg1; -- (void)renameMailbox:(id)arg1; -- (void)moveMessagesToMailbox:(id)arg1; -- (void)copyMessagesToMailbox:(id)arg1; -- (id)_selectedMessagesWhoseFlag:(unsigned int)arg1 isEqualToState:(BOOL)arg2; -- (void)_changeFlag:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3 undoActionName:(id)arg4; -- (void)markAsRead:(id)arg1; -- (void)markAsUnread:(id)arg1; -- (void)markAsReadFromToolbar:(id)arg1; -- (void)markAsUnreadFromToolbar:(id)arg1; -- (void)markAsUnflagged:(id)arg1; -- (void)markAsFlagged:(id)arg1; -- (void)markAsFlaggedFromToolbar:(id)arg1; -- (void)markAsUnflaggedFromToolbar:(id)arg1; -- (void)changeColor:(id)arg1; -- (void)rebuildTableOfContents:(id)arg1; -- (void)_putMessageDataOntoPasteboard:(id)arg1 attributedString:(id)arg2 shouldDelete:(id)arg3 pasteboardType:(id)arg4; -- (void)_copyMessagesToPasteboard:(id)arg1 deleteWhenCopied:(BOOL)arg2 pasteboardType:(id)arg3 alternateType:(id)arg4; -- (void)_progressAlertDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (void)_showActivityProgressPanelForCopy:(id)arg1; -- (BOOL)_doCopy:(id)arg1 deleteWhenCopied:(BOOL)arg2; -- (void)copy:(id)arg1; -- (void)cut:(id)arg1; -- (int)pasteMessages:(id)arg1 todosByMessage:(id)arg2 unsuccessfulMessages:(id)arg3 flagsToSet:(id)arg4 destinationAccount:(id)arg5 destinationStore:(id)arg6; -- (void)addToDosFromDictionary:(id)arg1 forMessages:(id)arg2 newDocumentIDsByOld:(id)arg3 destinationAccount:(id)arg4; -- (void)_pasteData:(id)arg1 pasteboardType:(id)arg2 alternateData:(id)arg3 alternateType:(id)arg4 destination:(id)arg5; -- (void)paste:(id)arg1; -- (void)startSpeaking:(id)arg1; -- (void)stopSpeaking:(id)arg1; -- (void)speechSynthesizer:(id)arg1 didFinishSpeaking:(BOOL)arg2; -- (void)showPrintPanel:(id)arg1; -- (BOOL)send:(id)arg1 forDraft:(BOOL)arg2 actualMessage:(id)arg3; -- (BOOL)send:(id)arg1 forDraft:(BOOL)arg2; -- (BOOL)send:(id)arg1; -- (void)batchSendSheetDidEnd:(id)arg1 returnCode:(long long)arg2 context:(void *)arg3; -- (void)saveAs:(id)arg1; -- (void)saveAllAttachments:(id)arg1; -- (void)quickLookSelectedAttachments:(id)arg1; -- (BOOL)acceptsPreviewPanelControl:(id)arg1; -- (void)beginPreviewPanelControl:(id)arg1; -- (void)endPreviewPanelControl:(id)arg1; -- (id)_criterionForMailbox:(id)arg1; -- (id)mailboxSearchCriterionForScope:(int)arg1 containsSentMailbox:(char *)arg2 containsTrashMailbox:(char *)arg3 shouldExcludeJunk:(char *)arg4; -- (void)searchIndex:(id)arg1; -- (BOOL)_isShowingSearchResults; -- (unsigned long long)_searchResultCount; -- (BOOL)_canSaveSearchWithTarget:(int)arg1; -- (BOOL)_canSearchSelectedMailboxes; -- (void)_showSearchSliceView; -- (void)_hideSearchSliceViewByAnimating:(BOOL)arg1; -- (void)_searchForString:(id)arg1; -@property(copy, nonatomic) NSString *searchPhrase; -- (void)_updateSearchStatus; -- (void)_clearSearchByAnimating:(BOOL)arg1; -- (void)clearSearch:(id)arg1; -- (void)setupSearchParametersForTag:(long long)arg1; -- (int)searchField; -- (int)searchTarget; -- (int)searchArea; -- (void)_handleAttachmentsRemovedFromMessages:(id)arg1 newMessages:(id)arg2; -- (void)_removeAttachmentsFromMessages:(id)arg1 fromStores:(id)arg2; -- (void)removeAttachments:(id)arg1; -- (void)scrollBodyToShowToDo:(id)arg1; -- (id)todoTextFromDisplaySelection; -- (BOOL)createToDoWithViewAsKey:(id)arg1; -- (void)_selectAndRevealToDoMailboxForAccount:(id)arg1; -- (id)firstCreateToDoResponder; -- (void)createToDo:(id)arg1; -- (void)sortByTagOfSender:(id)arg1; -- (void)focus:(id)arg1; -- (void)unfocus:(id)arg1; -- (void)openAllThreads:(id)arg1; -- (void)closeAllThreads:(id)arg1; -- (void)toggleThreadedMode:(id)arg1; -- (void)selectThread:(id)arg1; -- (void)selectPreviousInThread:(id)arg1; -- (void)selectNextInThread:(id)arg1; -- (void)showDeletions:(id)arg1; -- (void)hideDeletions:(id)arg1; -- (void)showCompletedToDos:(id)arg1; -- (void)hideCompletedToDos:(id)arg1; -- (void)toggleContentsColumn:(id)arg1; -- (void)toggleMessageNumbersColumn:(id)arg1; -- (void)toggleMessageFlagsColumn:(id)arg1; -- (void)toggleFromColumn:(id)arg1; -- (void)togglePresenceColumn:(id)arg1; -- (void)toggleToColumn:(id)arg1; -- (void)toggleDateSentColumn:(id)arg1; -- (void)toggleDateReceivedColumn:(id)arg1; -- (void)toggleLocationColumn:(id)arg1; -- (void)toggleAuthorColumn:(id)arg1; -- (void)toggleSizeColumn:(id)arg1; -- (void)writeDefaultsToArray:(id)arg1; -- (id)dictionaryRepresentation; -- (void)_findSomeDefaultsIfNecessary; -- (void)_setupFromDefaults; -- (id)_viewerDefaultsKeyFormats; -- (void)_teardownDefaults; -- (void)_copyDefaultsFromViewerNumber:(unsigned long long)arg1 toViewerNumber:(unsigned long long)arg2; -- (id)_countStringForType:(BOOL)arg1 isDrafts:(BOOL)arg2 omitUnread:(BOOL)arg3 totalCount:(unsigned long long *)arg4; -- (void)_messageUpdated:(id)arg1; -- (void)_documentsTransferred:(id)arg1; -- (void)_updateWindowTitle; -- (void)_reallyUpdateWindowTitle; -- (void)_updateMallUids:(id)arg1; -- (id)_currentMessageManager; -- (void)_setSplitViewPercentage:(double)arg1 animate:(BOOL)arg2; -- (void)animationDidEnd:(id)arg1; -- (void)messageWasSelected:(id)arg1 fromMessageBrowserController:(id)arg2; -- (void)scrollCurrentlySelectedMessageToTop; -- (void)selectedMessagesDidChange; -- (void)messageWasDoubleClicked:(id)arg1; -- (void)messageBrowserView:(id)arg1 willStartDragWithEvent:(id)arg2; -- (void)draggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; -- (void)messageBrowserViewDidEndDragging:(id)arg1; -- (BOOL)transferSelectedMessagesToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; -- (void)_transferSelectedMessagesToExchangeMailboxAlertDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; -- (void)noteDocumentEditorHasInitialized:(id)arg1; -- (void)_transferPlainTextCopiesOfMessagesWithParameters:(id)arg1; -- (id)_alertForConvertingToPlainTextNote; -- (id)_alertForConvertingToPlainTextNoteWithTodo; -- (BOOL)deleteMessages:(id)arg1 allowMoveToTrash:(BOOL)arg2 allowUndo:(BOOL)arg3; -- (void)_reallyAnimateProgressInidicator; -- (void)_updateSearchStatusWithDelay; -- (void)threadDidExpand; -- (void)threadDidCollapse; -- (void)clearUndoRedoStacksUnconditionally:(BOOL)arg1; -- (void)searchWillStart; -- (void)searchDidFinish; -- (void)searchDidUpdate; -- (id)selectedMailboxUids; -- (void)performSearch:(id)arg1; -- (void)saveSearch:(id)arg1; -- (void)reapplySortingRules:(id)arg1; -- (void)_returnToSenderSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (void)_deleteMessagesAfterBounce:(id)arg1; -- (void)_bounceMessages:(id)arg1; -- (void)returnToSender:(id)arg1; -- (void)addSenderToAddressBook:(id)arg1; -- (void)markAsJunkMail:(id)arg1; -- (void)markMessagesAsJunkMail:(id)arg1 stores:(id)arg2; -- (void)_deleteJunkedMessages:(id)arg1 inStores:(id)arg2 moveToTrash:(BOOL)arg3; -- (void)synchronouslyMarkAsJunkMail:(id)arg1 inStores:(id)arg2 delete:(BOOL)arg3; -- (void)undoMarkMessagesAsJunkMail:(id)arg1 stores:(id)arg2; -- (void)markAsNotJunkMail:(id)arg1; -- (void)markMessagesAsNotJunkMail:(id)arg1 stores:(id)arg2; -- (void)synchronouslyMarkAsNotJunkMail:(id)arg1 inStores:(id)arg2; -- (BOOL)_transferMessages:(id)arg1 toMailbox:(id)arg2 deleteOriginals:(BOOL)arg3 allowUndo:(BOOL)arg4 isDeleteOperation:(BOOL)arg5; -- (void)_reportError:(id)arg1; -- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; -- (void)hideMessagesForMessageTransfer:(id)arg1; -- (void)unhideMessagesForMessageTransfer:(id)arg1; -- (void)messageTransferDidTransferMessages:(id)arg1; -- (void)messageTransferDidUndoTransferOfMessages:(id)arg1; -- (id)undoManagerForMessageTransfer:(id)arg1; -- (void)_updateSearchItemLabel; -- (void)createUniqueID; - -@end - -@interface MessageViewer (AppleScript) -+ (id)messageViewerForUniqueID:(id)arg1; -- (id)uniqueID; -- (id)objectSpecifier; -- (id)allMessages; -- (id)focusedMessages; -- (void)setFocusedMessages:(id)arg1; -- (int)appleScriptSortColumn; -- (void)setAppleScriptSortColumn:(int)arg1; -- (BOOL)isSortedAscending; -- (void)setIsSortedAscending:(BOOL)arg1; -- (BOOL)previewPaneVisible; -- (void)setPreviewPaneVisible:(BOOL)arg1; -- (id)visibleColumns; -- (void)setVisibleColumns:(id)arg1; -- (id)inbox; -- (id)outbox; -- (id)draftsMailbox; -- (id)sentMailbox; -- (id)trashMailbox; -- (id)junkMailbox; -- (void)setScriptingProperties:(id)arg1; -@end - -@interface MessageViewer (MessageViewerToolbar) -- (void)setupToolbar; -- (BOOL)validateToolbarItem:(id)arg1; -- (id)previousIdentifierForUpgradingToolbar:(id)arg1; -- (id)toolbar:(id)arg1 upgradedItemIdentifiers:(id)arg2; -- (void)configureSegmentedItem:(id)arg1 withDictionary:(id)arg2 forSegment:(long long)arg3; -- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; -- (id)toolbarDefaultItemIdentifiers:(id)arg1; -- (id)toolbarAllowedItemIdentifiers:(id)arg1; -- (void)_updateToolbar; -- (void)toolbarWillAddItem:(id)arg1; -- (void)toolbarDidRemoveItem:(id)arg1; -- (void)toolbarDidReorderItem:(id)arg1; -- (void)ensureSearchFieldVisibilityInToolbar; -- (void)searchFieldDidEndSearching:(id)arg1; -@end - -@interface MessageViewer (TimeMachine) -- (id)toolbarConfigurationDict; -- (double)mailboxesPaneWidth; -- (double)previewSplitPercentage; -@end - -#elif defined(SNOW_LEOPARD) - -#import "MVTerminationHandler.h" - -@class MessageMall; -@class TableViewManager; -@class MessageContentController; -@class MailboxesOutlineViewController; -@class ExpandingSplitView; -@class MailVerticalSplitView; -@class ColorBackgroundView; -@class ActivityViewController; -@class ToDoListController; -@class ToDoMall; -@class ToDoListView; -@class MessageViewerLazyPopUpButton; -@class VerticalSplitViewHandle; -@class MailboxPaneBottomView; -@class MailToolbar; -@class MessageViewerSearchField; -@class SplitterAnimation; -@class SearchSliceView; -@class SafeBoolCache; - -@protocol MailboxesOutlineViewControllerDelegate -- (void)selectAllMessages; -- (void)focusMessages; -- (long)viewerNumber; -@end - -@protocol MessageTransferDelegate -- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; -- (id)undoManagerForMessageTransfer:(id)arg1; -- (void)hideMessagesForMessageTransfer:(id)arg1; -- (void)unhideMessagesForMessageTransfer:(id)arg1; -- (void)messageTransferDidTransferMessages:(id)arg1; -- (void)messageTransferDidUndoTransferOfMessages:(id)arg1; -@end - -@protocol MVMailboxSelectionOwner -- (id)selectedMailboxes; -- (id)selectedMailbox; -- (id)sortedSectionItemsForTimeMachine; -- (BOOL)isSelectedMailboxSpecial; -- (void)selectPathsToMailboxes:(id)arg1; -- (BOOL)mailboxIsExpanded:(id)arg1; -- (BOOL)sectionIsExpanded:(id)arg1; -- (void)revealMailbox:(id)arg1; -- (id)mailboxSelectionWindow; -@end - -@interface MessageViewer : NSResponder -{ - MessageMall *_messageMall; - TableViewManager *_tableManager; - MessageContentController *_contentController; - MailboxesOutlineViewController *_outlineViewController; - NSWindow *_window; - ExpandingSplitView *_splitView; - NSScrollView *_messageListScrollView; - MailVerticalSplitView *_verticalSplitView; - ColorBackgroundView *_viewerContainer; - ColorBackgroundView *_mailboxesView; - ActivityViewController *_activityViewController; - NSToolbarItem *_searchViewItem; - NSString *_lastSearchPhrase; - NSString *_searchPhrase; - int _currentSearchArea; - int _currentSearchField; - int _currentSearchTarget; - int _selectedTag; - BOOL _userChangedSliceView; - NSMenu *_tableHeaderMenu; - ToDoListController *_toDoController; - ToDoMall *_toDoMall; - NSScrollView *_toDoScrollView; - ToDoListView *_toDoListView; - NSMenu *_toDoColumnsMenu; - NSMenu *_toDoSortByMenu; - NSMenu *_messageColumnsMenu; - NSMenu *_messageSortByMenu; - NSMenuItem *_columnsMenuItem; - NSMenuItem *_sortByMenuItem; - BOOL _toDoListViewIsShowing; - BOOL _previewPaneWasVisibleWhenToDoListWasShown; - NSArray *_toDoMailboxes; - MessageViewerLazyPopUpButton *newMailboxButton; - NSButton *activityToggleButton; - MessageViewerLazyPopUpButton *actionButton; - VerticalSplitViewHandle *verticalSplitViewHandle; - MailboxPaneBottomView *mailboxPaneBottomView; - BOOL _shouldPreventTableViewResize; - BOOL _shouldMakeTableViewSelectionVisible; - BOOL _shouldMakeMessageSelectionVisible; - BOOL _showingDefaultSearchString; - BOOL _updatingSearchField; - BOOL _allowShowingDeletedMessages; - BOOL _suppressWindowTitleUpdates; - BOOL _didSetupUI; - BOOL _isObservingFirstResponder; - float _restoreMailboxPaneToWidthAfterDragOperation; - float _lastSplitViewPosition; - float _lastMailboxSplitPosition; - float _lastDragXPosition; - NSArray *_mailboxesToDisplayWhenVisible; - NSString *_stringToSearchWhenVisible; - BOOL _shouldCascadeWhenShowing; - MailToolbar *_toolbar; - NSMutableDictionary *_toolbarItems; - MessageViewerSearchField *_searchField; - NSDictionary *_savedDefaults; - NSMutableArray *_noteDocumentEditorsForPlainTextTransfer; - NSArray *_messagesToDeleteAfterPlainTextTransferHasCompleted; - BOOL _pendingPlainTextTransfers; - unsigned int _numberOfPendingPlainTextTransfers; - unsigned int _viewerNumber; - NSMutableArray *_transferOperations; - NSDictionary *_plainTextTransferParameters; - float _splitViewPositionBeforeSearch; - SplitterAnimation *_animation; - SearchSliceView *_searchSliceView; - SafeBoolCache *_atLeastOneSelectedMessageIsInOutboxCache; - SafeBoolCache *_atLeastOneSelectedMessageIsInDraftsCache; - SafeBoolCache *_canCreateToDoCache; - NSNumber *_uniqueID; -} - -+ (void)initialize; -+ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; -+ (id)allMessageViewers; -+ (id)allSingleMessageViewers; -+ (id)existingViewerForStore:(id)arg1; -+ (id)existingViewerForMailboxUid:(id)arg1; -+ (id)_mailboxUidForTag:(unsigned long)arg1; -+ (id)newViewerForMailboxWithTag:(unsigned long)arg1; -+ (id)existingViewerShowingMessage:(id)arg1; -+ (void)registerNewViewer:(id)arg1; -+ (void)deregisterViewer:(id)arg1; -+ (void)showAllViewers; -+ (id)mailboxUidsBeingViewed; -+ (id)frontmostMessageViewer; -+ (void)searchForString:(id)arg1; -+ (unsigned long)firstAvailableViewerNumber; -+ (id)_mailboxUidsForPaths:(id)arg1; -+ (unsigned long)deleteOperationForEvent:(id)arg1 isKeyPressed:(BOOL)arg2; -+ (void)saveAllViewersToDefaultsWithDelay; -+ (void)saveAllViewersToDefaultsWithNotification:(id)arg1; -+ (void)saveAllViewersToDefaults; -+ (void)saveAllViewersToDefaultsOmittingViewer:(id)arg1; -+ (BOOL)restoreAllViewersFromDefaults; -+ (void)willRestoreAllViewersFromDefaults; -+ (void)didRestoreAllViewersFromDefaults; -+ (BOOL)isRestoringViewersFromDefaults; -+ (id)messageViewersByUniqueID; -- (unsigned long)viewerNumber; -- (void)revealMessage:(id)arg1; -- (void)revealCurrentMessage; -- (void)_displayFollowup:(id)arg1; -- (void)_cantFindFollowupToMessage:(id)arg1; -- (void)showFollowupsToMessage:(id)arg1; -- (id)_mailboxUidsFromDefaults:(id)arg1; -- (id)initWithSavedDefaults:(id)arg1; -- (void)intializeLazyPopUpButtons; -- (id)init; -- (id)plainInit; -- (id)initWithMailboxUids:(id)arg1; -- (void)dealloc; -- (void)release; -- (void)_registerForApplicationNotifications; -- (void)_unregisterForApplicationNotifications; -- (void)_registerForStoreNotifications; -- (void)_unregisterForStoreNotifications; -- (void)storeBeingInvalidated:(id)arg1; -- (id)_store; -- (void)_setStore:(id)arg1; -- (BOOL)_selectedMailboxesAreOutgoing:(char *)arg1; -- (BOOL)_isViewingMailboxUid:(id)arg1; -- (BOOL)_isShowingMessage:(id)arg1; -- (id)window; -- (void)show; -- (void)showAndMakeKey:(BOOL)arg1; -- (void)_setupUIAndOrderFront:(BOOL)arg1 andMakeKey:(BOOL)arg2; -- (id)tableHeaderViewGetDefaultMenu:(id)arg1; -- (id)_toDoController; -- (void)_setUpWindowContents; -- (void)_setupMailboxOutlineView; -- (void)_setupNextKeyViewLoop; -- (void)_setUpMenus; -- (void)takeOverAsSelectionOwner; -- (void)resignAsSelectionOwner; -- (void)windowDidBecomeMain:(id)arg1; -- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; -- (BOOL)windowShouldClose:(id)arg1; -- (void)windowWillMiniaturize:(id)arg1; -- (void)openMailboxesPaneToWidth:(float)arg1 byAnimating:(BOOL)arg2; -- (float)mailboxesPaneWidth; -- (BOOL)mailboxesPaneIsOpen; -- (BOOL)mailboxesPaneIsOpenWideEnoughToUse; -- (void)_enableSplitViewAutosaving; -- (void)_disableSplitViewAutosaving; -- (void)splitViewDidResizeSubviews:(id)arg1; -- (void)splitViewWillResizeSubviews:(id)arg1; -- (struct CGRect)splitView:(id)arg1 additionalEffectiveRectOfDividerAtIndex:(long)arg2; -- (BOOL)splitView:(id)arg1 shouldCollapseSubview:(id)arg2 forDoubleClickOnDividerAtIndex:(long)arg3; -- (void)toggleMailboxesPane:(id)arg1; -- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; -- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; -- (float)splitView:(id)arg1 constrainMinCoordinate:(float)arg2 ofSubviewAt:(long)arg3; -- (float)maxMailboxesViewWidthAllowed; -- (float)idealMailboxesViewWidth; -- (float)splitView:(id)arg1 constrainMaxCoordinate:(float)arg2 ofSubviewAt:(long)arg3; -- (void)updateMailboxButtonVisibility; -- (float)splitView:(id)arg1 constrainSplitPosition:(float)arg2 ofSubviewAt:(long)arg3; -- (id)selectedMailboxes; -- (id)selectedMailbox:(BOOL)arg1; -- (id)selectedMailbox; -- (BOOL)isSelectedMailboxSpecial; -- (void)selectPathsToMailboxes:(id)arg1; -- (BOOL)mailboxIsExpanded:(id)arg1; -- (BOOL)sectionIsExpanded:(id)arg1; -- (id)expandedItems; -- (id)sortedSectionItemsForTimeMachine; -- (void)revealMailbox:(id)arg1; -- (id)mailboxSelectionWindow; -- (void)setSelectedMailboxes:(id)arg1; -- (id)selectedMessages; -- (void)setSelectedMessages:(id)arg1; -- (id)currentDisplayedMessage; -- (void)outlineViewDoubleClick:(id)arg1; -- (void)selectMailbox:(id)arg1; -- (void)_openBrowserForMessages:(id)arg1; -- (void)keyDown:(id)arg1; -- (void)keyUp:(id)arg1; -- (void)swipeWithEvent:(id)arg1; -- (void)_mailboxWasRenamed:(id)arg1; -- (void)mailboxSelectionChanged:(id)arg1; -- (void)_mallDidOpen; -- (void)_mallStructureDidChange; -- (void)_accountsDidChange:(id)arg1; -- (void)_mailboxesDidChange:(id)arg1; -- (void)_selectNextMessage:(id)arg1; -- (void)smartMailboxCriteriaChanged:(id)arg1; -- (void)_setMailboxUids:(id)arg1; -- (BOOL)_selectionContainsMessagesWithDeletedStatusEqualTo:(BOOL)arg1; -- (BOOL)_selectionContainsMessagesWithReadStatusEqualTo:(BOOL)arg1; -- (BOOL)_selectionContainsMessagesWithFlaggedStatusEqualTo:(BOOL)arg1; -- (BOOL)_selectionContainsMessagesWithJunkMailLevelEqualTo:(int)arg1; -- (BOOL)_selectionContainsMessagesWithAttachments; -- (BOOL)atLeastOneSelectedMessageIsInOutbox:(id)arg1; -- (BOOL)_updatedAtLeastOneSelectedMessageIsInOutbox:(id)arg1; -- (BOOL)atLeastOneSelectedMessageIsInDrafts:(id)arg1; -- (BOOL)_updatedAtLeastOneSelectedMessageIsInDrafts:(id)arg1; -- (BOOL)shouldDeleteMessagesGivenCurrentState; -- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; -- (BOOL)canCreateToDo; -- (BOOL)_updatedCanCreateToDo:(id)arg1; -- (BOOL)validateUserInterfaceItemForToDoList:(id)arg1; -- (BOOL)validateUserInterfaceItem:(id)arg1; -- (BOOL)validateMenuItem:(id)arg1; -- (void)_removeAccessibilityLinks; -- (void)messageWasDisplayedInTextView:(id)arg1; -- (void)messageNoLongerDisplayedInTextView:(id)arg1; -- (void)messageThreadSummaryWasDisplayedInTextView:(id)arg1; -- (void)checkNewMail:(id)arg1; -- (void)replyMessage:(id)arg1; -- (void)replyAllMessage:(id)arg1; -- (void)replyToSender:(id)arg1; -- (void)replyToOriginalSender:(id)arg1; -- (void)showComposeWindow:(id)arg1; -- (BOOL)_showEditorForNote:(id)arg1; -- (void)showNoteEditor:(id)arg1; -- (void)showAddressPanel:(id)arg1; -- (void)undeleteMessages:(id)arg1; -- (void)deleteMessages:(id)arg1; -- (void)deleteMessagesAllowingMoveToTrash:(BOOL)arg1; -- (void)openMessages:(id)arg1; -- (void)_openMessages:(id)arg1 withModifiers:(unsigned long)arg2; -- (void)selectAllMessages; -- (void)focusMessages; -- (void)focusMailboxes; -- (void)focusMessage; -- (void)replyViaIM:(id)arg1; -- (void)showAccountInfo:(id)arg1; -- (id)tableManager; -- (id)mailboxesOutlineViewController; -- (id)contentController; -- (void)jumpToSelection:(id)arg1; -- (id)editorWithType:(int)arg1; -- (void)redirectMessage:(id)arg1; -- (void)forwardMessage:(id)arg1; -- (void)forwardAsAttachment:(id)arg1; -- (void)showToDoReferencedMessageInNewWindow:(id)arg1; -- (void)showToDoInList:(id)arg1; -- (id)currentSingleSelectedToDoMailbox; -- (id)displaySelectedMessageInSeparateWindow:(id)arg1; -- (id)_displaySelectedMessageInSeparateWindow:(id)arg1 withModifiers:(unsigned long)arg2; -- (void)_openMessageInWebBrowser:(id)arg1; -- (void)renameMailbox:(id)arg1; -- (void)moveMessagesToMailbox:(id)arg1; -- (void)copyMessagesToMailbox:(id)arg1; -- (id)_selectedMessagesWhoseFlag:(unsigned long)arg1 isEqualToState:(BOOL)arg2; -- (void)_changeFlag:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3 undoActionName:(id)arg4; -- (void)markAsRead:(id)arg1; -- (void)markAsUnread:(id)arg1; -- (void)markAsReadFromToolbar:(id)arg1; -- (void)markAsUnreadFromToolbar:(id)arg1; -- (void)markAsUnflagged:(id)arg1; -- (void)markAsFlagged:(id)arg1; -- (void)markAsFlaggedFromToolbar:(id)arg1; -- (void)markAsUnflaggedFromToolbar:(id)arg1; -- (void)changeColor:(id)arg1; -- (void)rebuildTableOfContents:(id)arg1; -- (void)_putMessageDataOntoPasteboard:(id)arg1 attributedString:(id)arg2 shouldDelete:(id)arg3 pasteboardType:(id)arg4; -- (void)_copyMessagesToPasteboard:(id)arg1 deleteWhenCopied:(BOOL)arg2 pasteboardType:(id)arg3 alternateType:(id)arg4; -- (void)_progressAlertDidEnd:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (void)_showActivityProgressPanelForCopy:(id)arg1; -- (BOOL)_doCopy:(id)arg1 deleteWhenCopied:(BOOL)arg2; -- (void)copy:(id)arg1; -- (void)cut:(id)arg1; -- (int)pasteMessages:(id)arg1 todosByMessage:(id)arg2 unsuccessfulMessages:(id)arg3 flagsToSet:(id)arg4 destinationAccount:(id)arg5 destinationStore:(id)arg6; -- (void)addToDosFromDictionary:(id)arg1 forMessages:(id)arg2 newDocumentIDsByOld:(id)arg3 destinationAccount:(id)arg4; -- (void)_pasteData:(id)arg1 pasteboardType:(id)arg2 alternateData:(id)arg3 alternateType:(id)arg4 destination:(id)arg5; -- (void)paste:(id)arg1; -- (void)startSpeaking:(id)arg1; -- (void)stopSpeaking:(id)arg1; -- (void)speechSynthesizer:(id)arg1 didFinishSpeaking:(BOOL)arg2; -- (void)showPrintPanel:(id)arg1; -- (BOOL)send:(id)arg1 forDraft:(BOOL)arg2 actualMessage:(id)arg3; -- (BOOL)send:(id)arg1 forDraft:(BOOL)arg2; -- (BOOL)send:(id)arg1; -- (void)batchSendSheetDidEnd:(id)arg1 returnCode:(long)arg2 context:(void *)arg3; -- (void)saveAs:(id)arg1; -- (void)saveAllAttachments:(id)arg1; -- (void)quickLookSelectedAttachments:(id)arg1; -- (BOOL)acceptsPreviewPanelControl:(id)arg1; -- (void)beginPreviewPanelControl:(id)arg1; -- (void)endPreviewPanelControl:(id)arg1; -- (id)_criterionForMailbox:(id)arg1; -- (id)mailboxSearchCriterionForScope:(int)arg1 containsSentMailbox:(char *)arg2 containsTrashMailbox:(char *)arg3 shouldExcludeJunk:(char *)arg4; -- (void)searchIndex:(id)arg1; -- (BOOL)_isShowingSearchResults; -- (unsigned long)_searchResultCount; -- (BOOL)_canSaveSearchWithTarget:(int)arg1; -- (BOOL)_canSearchSelectedMailboxes; -- (void)_showSearchSliceView; -- (void)_hideSearchSliceViewByAnimating:(BOOL)arg1; -- (void)_searchForString:(id)arg1; -- (id)searchPhrase; -- (void)setSearchPhrase:(id)arg1; -- (void)_updateSearchStatus; -- (void)_clearSearchByAnimating:(BOOL)arg1; -- (void)clearSearch:(id)arg1; -- (void)setupSearchParametersForTag:(long)arg1; -- (int)searchField; -- (int)searchTarget; -- (int)searchArea; -- (void)_handleAttachmentsRemovedFromMessages:(id)arg1 newMessages:(id)arg2; -- (void)_removeAttachmentsFromMessages:(id)arg1 fromStores:(id)arg2; -- (void)removeAttachments:(id)arg1; -- (void)scrollBodyToShowToDo:(id)arg1; -- (id)todoTextFromDisplaySelection; -- (BOOL)createToDoWithViewAsKey:(id)arg1; -- (void)_selectAndRevealToDoMailboxForAccount:(id)arg1; -- (id)firstCreateToDoResponder; -- (void)createToDo:(id)arg1; -- (void)sortByTagOfSender:(id)arg1; -- (void)focus:(id)arg1; -- (void)unfocus:(id)arg1; -- (void)openAllThreads:(id)arg1; -- (void)closeAllThreads:(id)arg1; -- (void)toggleThreadedMode:(id)arg1; -- (void)selectThread:(id)arg1; -- (void)selectPreviousInThread:(id)arg1; -- (void)selectNextInThread:(id)arg1; -- (void)showDeletions:(id)arg1; -- (void)hideDeletions:(id)arg1; -- (void)showCompletedToDos:(id)arg1; -- (void)hideCompletedToDos:(id)arg1; -- (void)toggleContentsColumn:(id)arg1; -- (void)toggleMessageNumbersColumn:(id)arg1; -- (void)toggleMessageFlagsColumn:(id)arg1; -- (void)toggleFromColumn:(id)arg1; -- (void)togglePresenceColumn:(id)arg1; -- (void)toggleToColumn:(id)arg1; -- (void)toggleDateSentColumn:(id)arg1; -- (void)toggleDateReceivedColumn:(id)arg1; -- (void)toggleLocationColumn:(id)arg1; -- (void)toggleAuthorColumn:(id)arg1; -- (void)toggleSizeColumn:(id)arg1; -- (void)writeDefaultsToArray:(id)arg1; -- (id)dictionaryRepresentation; -- (void)_findSomeDefaultsIfNecessary; -- (void)_setupFromDefaults; -- (id)_viewerDefaultsKeyFormats; -- (void)_teardownDefaults; -- (void)_copyDefaultsFromViewerNumber:(unsigned long)arg1 toViewerNumber:(unsigned long)arg2; -- (id)_countStringForType:(BOOL)arg1 isDrafts:(BOOL)arg2 omitUnread:(BOOL)arg3 totalCount:(unsigned int *)arg4; -- (void)_messageUpdated:(id)arg1; -- (void)_documentsTransferred:(id)arg1; -- (void)_updateWindowTitle; -- (void)_reallyUpdateWindowTitle; -- (void)_updateMallUids:(id)arg1; -- (id)_currentMessageManager; -- (void)_setSplitViewPercentage:(float)arg1 animate:(BOOL)arg2; -- (void)animationDidEnd:(id)arg1; -- (void)messageWasSelected:(id)arg1 fromMessageBrowserController:(id)arg2; -- (void)scrollCurrentlySelectedMessageToTop; -- (void)selectedMessagesDidChange; -- (void)messageWasDoubleClicked:(id)arg1; -- (void)messageBrowserView:(id)arg1 willStartDragWithEvent:(id)arg2; -- (void)draggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; -- (void)messageBrowserViewDidEndDragging:(id)arg1; -- (BOOL)transferSelectedMessagesToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; -- (void)_transferSelectedMessagesToExchangeMailboxAlertDidEnd:(id)arg1 returnCode:(long)arg2 contextInfo:(id)arg3; -- (void)noteDocumentEditorHasInitialized:(id)arg1; -- (void)_transferPlainTextCopiesOfMessagesWithParameters:(id)arg1; -- (id)_alertForConvertingToPlainTextNote; -- (id)_alertForConvertingToPlainTextNoteWithTodo; -- (BOOL)deleteMessages:(id)arg1 allowMoveToTrash:(BOOL)arg2 allowUndo:(BOOL)arg3; -- (void)_reallyAnimateProgressInidicator; -- (void)_updateSearchStatusWithDelay; -- (void)threadDidExpand; -- (void)threadDidCollapse; -- (void)clearUndoRedoStacksUnconditionally:(BOOL)arg1; -- (void)searchWillStart; -- (void)searchDidFinish; -- (void)searchDidUpdate; -- (id)selectedMailboxUids; -- (void)performSearch:(id)arg1; -- (void)saveSearch:(id)arg1; -- (void)reapplySortingRules:(id)arg1; -- (void)_returnToSenderSheetDidEnd:(id)arg1 returnCode:(long)arg2 contextInfo:(void *)arg3; -- (void)_deleteMessagesAfterBounce:(id)arg1; -- (void)_bounceMessages:(id)arg1; -- (void)returnToSender:(id)arg1; -- (void)addSenderToAddressBook:(id)arg1; -- (void)markAsJunkMail:(id)arg1; -- (void)markMessagesAsJunkMail:(id)arg1 stores:(id)arg2; -- (void)_deleteJunkedMessages:(id)arg1 inStores:(id)arg2 moveToTrash:(BOOL)arg3; -- (void)synchronouslyMarkAsJunkMail:(id)arg1 inStores:(id)arg2 delete:(BOOL)arg3; -- (void)undoMarkMessagesAsJunkMail:(id)arg1 stores:(id)arg2; -- (void)markAsNotJunkMail:(id)arg1; -- (void)markMessagesAsNotJunkMail:(id)arg1 stores:(id)arg2; -- (void)synchronouslyMarkAsNotJunkMail:(id)arg1 inStores:(id)arg2; -- (BOOL)_transferMessages:(id)arg1 toMailbox:(id)arg2 deleteOriginals:(BOOL)arg3 allowUndo:(BOOL)arg4 isDeleteOperation:(BOOL)arg5; -- (void)_reportError:(id)arg1; -- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; -- (void)hideMessagesForMessageTransfer:(id)arg1; -- (void)unhideMessagesForMessageTransfer:(id)arg1; -- (void)messageTransferDidTransferMessages:(id)arg1; -- (void)messageTransferDidUndoTransferOfMessages:(id)arg1; -- (id)undoManagerForMessageTransfer:(id)arg1; -- (void)_updateSearchItemLabel; -- (void)createUniqueID; - -@end - -@interface MessageViewer (TimeMachine) -- (id)toolbarConfigurationDict; -- (float)mailboxesPaneWidth; -- (float)previewSplitPercentage; -@end - -@interface MessageViewer (AppleScript) -+ (id)messageViewerForUniqueID:(id)arg1; -- (id)uniqueID; -- (id)objectSpecifier; -- (id)allMessages; -- (id)focusedMessages; -- (void)setFocusedMessages:(id)arg1; -- (int)appleScriptSortColumn; -- (void)setAppleScriptSortColumn:(int)arg1; -- (BOOL)isSortedAscending; -- (void)setIsSortedAscending:(BOOL)arg1; -- (BOOL)previewPaneVisible; -- (void)setPreviewPaneVisible:(BOOL)arg1; -- (id)visibleColumns; -- (void)setVisibleColumns:(id)arg1; -- (id)inbox; -- (id)outbox; -- (id)draftsMailbox; -- (id)sentMailbox; -- (id)trashMailbox; -- (id)junkMailbox; -- (void)setScriptingProperties:(id)arg1; -@end - -@protocol MessageViewerSearchFieldFocusDelegate -- (void)searchFieldDidEndSearching:(id)arg1; -@end - -@interface MessageViewer (MessageViewerToolbar) -- (void)setupToolbar; -- (BOOL)validateToolbarItem:(id)arg1; -- (id)previousIdentifierForUpgradingToolbar:(id)arg1; -- (id)toolbar:(id)arg1 upgradedItemIdentifiers:(id)arg2; -- (void)configureSegmentedItem:(id)arg1 withDictionary:(id)arg2 forSegment:(long)arg3; -- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; -- (id)toolbarDefaultItemIdentifiers:(id)arg1; -- (id)toolbarAllowedItemIdentifiers:(id)arg1; -- (void)_updateToolbar; -- (void)toolbarWillAddItem:(id)arg1; -- (void)toolbarDidRemoveItem:(id)arg1; -- (void)toolbarDidReorderItem:(id)arg1; -- (void)ensureSearchFieldVisibilityInToolbar; -- (void)searchFieldDidEndSearching:(id)arg1; -@end - - -#elif defined(LEOPARD) - -@class MessageMall; -@class TableViewManager; -@class MessageContentController; -@class MailboxesOutlineViewController; -@class ExpandingSplitView; -@class MailVerticalSplitView; -@class ColorBackgroundView; -@class ActivityViewController; -@class SearchTextField; -@class ToDoListController; -@class ToDoMall; -@class ToDoListView; -@class MessageViewerLazyPopUpButton; -@class VerticalSplitViewHandle; -@class MailboxPaneBottomView; -@class SplitterAnimation; -@class SearchSliceView; -@class ActivityViewController; -@class ToDoListController; -@class ToDoListView; -@class ToDoMall; - -@protocol MVMailboxSelectionOwner -- (id)selectedMailboxes; -- (id)selectedMailbox; -- (id)sortedSectionItemsForTimeMachine; -- (BOOL)isSelectedMailboxSpecial; -- (void)selectPathsToMailboxes:(id)fp8; -- (BOOL)mailboxIsExpanded:(id)fp8; -- (BOOL)sectionIsExpanded:(id)fp8; -- (void)revealMailbox:(id)fp8; -- (id)mailboxSelectionWindow; -@end - -@protocol MailboxesOutlineViewControllerDelegate -- (void)selectAllMessages; -- (void)focusMessages; -@end - -@interface MessageViewer : NSResponder -{ - MessageMall *_messageMall; - TableViewManager *_tableManager; - MessageContentController *_contentController; - MailboxesOutlineViewController *_outlineViewController; - NSWindow *_window; - ExpandingSplitView *_splitView; - NSScrollView *_messageListScrollView; - MailVerticalSplitView *_verticalSplitView; - ColorBackgroundView *_viewerContainer; - ColorBackgroundView *_mailboxesView; - ActivityViewController *_activityViewController; - SearchTextField *_searchField; - NSView *_searchFieldView; - NSToolbarItem *_searchViewItem; - NSString *_lastSearchPhrase; - int _currentSearchArea; - int _currentSearchField; - int _currentSearchTarget; - int _selectedTag; - BOOL _userChangedSliceView; - NSMenu *_tableHeaderMenu; - ToDoListController *_toDoController; - ToDoMall *_toDoMall; - NSScrollView *_toDoScrollView; - ToDoListView *_toDoListView; - NSMenu *_toDoColumnsMenu; - NSMenu *_toDoSortByMenu; - NSMenu *_messageColumnsMenu; - NSMenu *_messageSortByMenu; - NSMenuItem *_columnsMenuItem; - NSMenuItem *_sortByMenuItem; - BOOL _toDoListViewIsShowing; - BOOL _previewPaneWasVisibleWhenToDoListWasShown; - NSArray *_toDoMailboxes; - MessageViewerLazyPopUpButton *newMailboxButton; - MessageViewerLazyPopUpButton *actionButton; - VerticalSplitViewHandle *verticalSplitViewHandle; - MailboxPaneBottomView *mailboxPaneBottomView; - BOOL _shouldPreventTableViewResize; - BOOL _shouldMakeTableViewSelectionVisible; - BOOL _shouldMakeMessageSelectionVisible; - BOOL _showingDefaultSearchString; - BOOL _updatingSearchField; - BOOL _allowShowingDeletedMessages; - BOOL _suppressWindowTitleUpdates; - BOOL _didSetupUI; - float _restoreMailboxPaneToWidthAfterDragOperation; - float _lastSplitViewPosition; - float _lastMailboxSplitPosition; - float _lastDragXPosition; - NSArray *_mailboxesToDisplayWhenVisible; - NSToolbar *_toolbar; - NSMutableDictionary *_toolbarItems; - NSDictionary *_savedDefaults; - NSMutableArray *_transferOperations; - NSMutableDictionary *_viewerContents; - float _splitViewPositionBeforeSearch; - SplitterAnimation *_animation; - SearchSliceView *_searchSliceView; - BOOL _updatingToolbar; - float _mailboxesViewWidthAtLastToolbarUpdate; -} - -+ (void)initialize; -+ (id)allMessageViewers; -+ (id)allSingleMessageViewers; -+ (id)existingViewerForStore:(id)fp8; -+ (id)existingViewerForMailboxUid:(id)fp8; -+ (id)existingViewerForMessage:(id)fp8; -+ (id)_mailboxUidForTag:(unsigned int)fp8; -+ (id)newViewerForMailboxWithTag:(unsigned int)fp8; -+ (id)existingViewerShowingMessage:(id)fp8; -+ (void)registerNewViewer:(id)fp8; -+ (void)deregisterViewer:(id)fp8; -+ (void)showAllViewers; -+ (id)mailboxUidsBeingViewed; -+ (id)frontmostMessageViewer; -+ (void)searchForString:(id)fp8; -+ (id)_mailboxUidsForPaths:(id)fp8; -+ (void)saveDefaultsWithDelay; -+ (void)saveDefaults; -+ (void)restoreFromDefaults; -- (void)revealMessage:(id)fp8; -- (void)revealCurrentMessage; -- (void)_displayFollowup:(id)fp8; -- (void)_cantFindFollowupToMessage:(id)fp8; -- (void)showFollowupsToMessage:(id)fp8; -- (id)_mailboxUidsFromDefaults:(id)fp8; -- (id)initWithSavedDefaults:(id)fp8; -- (void)intializeLazyPopUpButtons; -- (id)init; -- (id)plainInit; -- (id)initWithMailboxUids:(id)fp8; -- (void)dealloc; -- (void)_registerForApplicationNotifications; -- (void)_unregisterForApplicationNotifications; -- (void)_registerForStoreNotifications; -- (void)_unregisterForStoreNotifications; -- (void)storeBeingInvalidated:(id)fp8; -- (void)_setStore:(id)fp8; -- (BOOL)_isViewingMailboxUid:(id)fp8; -- (BOOL)_isViewingMessage:(id)fp8; -- (BOOL)_isShowingMessage:(id)fp8; -- (id)window; -- (void)show; -- (void)showAndMakeKey:(BOOL)fp8; -- (void)_setupUIAndOrderFront:(BOOL)fp8 andMakeKey:(BOOL)fp12; -- (id)tableHeaderViewGetDefaultMenu:(id)fp8; -- (id)_toDoController; -- (void)_setUpWindowContents; -- (void)_setupMailboxOutlineView; -- (void)_setupNextKeyViewLoop; -- (void)_setUpMenus; -- (void)takeOverAsSelectionOwner; -- (void)resignAsSelectionOwner; -- (void)windowDidBecomeMain:(id)fp8; -- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8; -- (BOOL)windowShouldClose:(id)fp8; -- (void)windowWillMiniaturize:(id)fp8; -- (void)openMailboxesPaneToWidth:(float)fp8 byAnimating:(BOOL)fp12; -- (BOOL)mailboxesPaneIsOpen; -- (BOOL)mailboxesPaneIsOpenWideEnoughToUse; -- (void)splitViewDidResizeSubviews:(id)fp8; -- (void)splitViewWillResizeSubviews:(id)fp8; -- (void)dividerDidEndDragSession:(id)fp8; -- (void)splitViewDoubleClickedOnDivider:(id)fp8; -- (void)toggleMailboxesPane:(id)fp8; -- (void)splitView:(id)fp8 resizeSubviewsWithOldSize:(struct _NSSize)fp12; -- (BOOL)splitView:(id)fp8 canCollapseSubview:(id)fp12; -- (float)splitView:(id)fp8 constrainMinCoordinate:(float)fp12 ofSubviewAt:(int)fp16; -- (float)splitView:(id)fp8 constrainMaxCoordinate:(float)fp12 ofSubviewAt:(int)fp16; -- (float)maxMailboxesViewWidthAllowed; -- (float)idealMailboxesViewWidth; -- (void)updateMailboxButtonVisibilityForWidth:(float)fp8; -- (float)splitView:(id)fp8 constrainSplitPosition:(float)fp12 ofSubviewAt:(int)fp16; -- (id)selectedMailboxes; -- (id)selectedMailbox:(BOOL)fp8; -- (id)selectedMailbox; -- (BOOL)isSelectedMailboxSpecial; -- (void)selectPathsToMailboxes:(id)fp8; -- (BOOL)mailboxIsExpanded:(id)fp8; -- (BOOL)sectionIsExpanded:(id)fp8; -- (id)expandedItems; -- (id)sortedSectionItemsForTimeMachine; -- (void)revealMailbox:(id)fp8; -- (id)mailboxSelectionWindow; -- (void)setSelectedMailboxes:(id)fp8; -- (id)selectedMessages; -- (void)setSelectedMessages:(id)fp8; -- (id)currentDisplayedMessage; -- (void)outlineViewDoubleClick:(id)fp8; -- (void)selectMailbox:(id)fp8; -- (void)_openBrowserForMessages:(id)fp8; -- (void)keyDown:(id)fp8; -- (void)keyUp:(id)fp8; -- (void)swipeWithEvent:(id)fp8; -- (void)_mailboxWasRenamed:(id)fp8; -- (void)mailboxSelectionChanged:(id)fp8; -- (void)_mallDidOpen; -- (void)_mallStructureDidChange; -- (void)_accountsDidChange:(id)fp8; -- (void)smartMailboxCriteriaChanged:(id)fp8; -- (void)_setMailboxUids:(id)fp8; -- (BOOL)_selectionContainsMessagesWithDeletedStatusEqualTo:(BOOL)fp8; -- (BOOL)_selectionContainsMessagesWithReadStatusEqualTo:(BOOL)fp8; -- (BOOL)_selectionContainsMessagesWithFlaggedStatusEqualTo:(BOOL)fp8; -- (BOOL)_selectionContainsMessagesWithJunkMailLevelEqualTo:(int)fp8; -- (BOOL)_selectionContainsMessagesWithAttachments; -- (BOOL)atLeastOneSelectedMessageIsInOutbox:(id)fp8; -- (BOOL)atLeastOneSelectedMessageIsInDrafts:(id)fp8; -- (BOOL)_validateActionForToDoList:(SEL)fp8 tag:(int)fp12; -- (BOOL)_validateAction:(SEL)fp8 tag:(int)fp12; -- (BOOL)validateMenuItem:(id)fp8; -- (void)messageWasDisplayedInTextView:(id)fp8; -- (void)messageThreadSummaryWasDisplayedInTextView:(id)fp8; -- (void)checkNewMail:(id)fp8; -- (void)replyMessage:(id)fp8; -- (void)replyAllMessage:(id)fp8; -- (void)replyToSender:(id)fp8; -- (void)replyToOriginalSender:(id)fp8; -- (void)showComposeWindow:(id)fp8; -- (BOOL)_showEditorForNote:(id)fp8; -- (void)showNoteEditor:(id)fp8; -- (void)showAddressPanel:(id)fp8; -- (void)toggleAttachmentsArea:(id)fp8; -- (void)undeleteMessages:(id)fp8; -- (void)deleteMessages:(id)fp8; -- (void)deleteMessagesAllowingMoveToTrash:(BOOL)fp8; -- (void)openMessages:(id)fp8; -- (void)selectAllMessages; -- (void)focusMessages; -- (void)focusMailboxes; -- (void)focusMessage; -- (void)replyViaIM:(id)fp8; -- (void)showAccountInfo:(id)fp8; -- (id)tableManager; -- (id)mailboxesOutlineViewController; -- (void)jumpToSelection:(id)fp8; -- (id)editorWithType:(int)fp8; -- (void)redirectMessage:(id)fp8; -- (void)forwardMessage:(id)fp8; -- (void)forwardAsAttachment:(id)fp8; -- (void)showToDoReferencedMessageInNewWindow:(id)fp8; -- (void)showToDoInList:(id)fp8; -- (id)currentSingleSelectedToDoMailbox; -- (void)displaySelectedMessageInSeparateWindow:(id)fp8; -- (void)renameMailbox:(id)fp8; -- (void)moveMessagesToMailbox:(id)fp8; -- (void)copyMessagesToMailbox:(id)fp8; -- (id)_selectedMessagesWhoseFlag:(unsigned long)fp8 isEqualToState:(BOOL)fp12; -- (void)_changeFlag:(id)fp8 state:(BOOL)fp12 forMessages:(id)fp16 undoActionName:(id)fp20; -- (void)markAsRead:(id)fp8; -- (void)markAsUnread:(id)fp8; -- (void)markAsReadFromToolbar:(id)fp8; -- (void)markAsUnreadFromToolbar:(id)fp8; -- (void)markAsUnflagged:(id)fp8; -- (void)markAsFlagged:(id)fp8; -- (void)markAsFlaggedFromToolbar:(id)fp8; -- (void)markAsUnflaggedFromToolbar:(id)fp8; -- (void)changeColor:(id)fp8; -- (void)rebuildTableOfContents:(id)fp8; -- (void)_putMessageDataOntoPasteboard:(id)fp8 attributedString:(id)fp12 shouldDelete:(id)fp16 pasteboardType:(id)fp20; -- (void)_copyMessagesToPasteboard:(id)fp8 deleteWhenCopied:(BOOL)fp12 pasteboardType:(id)fp16 alternateType:(id)fp20; -- (void)_progressAlertDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)_showActivityProgressPanelForCopy:(id)fp8; -- (BOOL)_doCopy:(id)fp8 deleteWhenCopied:(BOOL)fp12; -- (void)copy:(id)fp8; -- (void)cut:(id)fp8; -- (int)pasteMessages:(id)fp8 todosByMessage:(id)fp12 unsuccessfulMessages:(id)fp16 flagsToSet:(id)fp20 destinationAccount:(id)fp24 destinationStore:(id)fp28; -- (void)addToDosFromDictionary:(id)fp8 forMessages:(id)fp12 newDocumentIDsByOld:(id)fp16 destinationAccount:(id)fp20; -- (void)_pasteData:(id)fp8 pasteboardType:(id)fp12 alternateData:(id)fp16 alternateType:(id)fp20 destination:(id)fp24; -- (void)paste:(id)fp8; -- (void)startSpeaking:(id)fp8; -- (void)stopSpeaking:(id)fp8; -- (void)speechSynthesizer:(id)fp8 didFinishSpeaking:(BOOL)fp12; -- (void)showPrintPanel:(id)fp8; -- (BOOL)send:(id)fp8 forDraft:(BOOL)fp12 actualMessage:(id)fp16; -- (BOOL)send:(id)fp8 forDraft:(BOOL)fp12; -- (BOOL)send:(id)fp8; -- (void)saveAs:(id)fp8; -- (void)saveAllAttachments:(id)fp8; -- (void)quickLookSelectedAttachments:(id)fp8; -- (id)defaultSearchString; -- (void)showDefaultSearchString; -- (id)_criterionForMailbox:(id)fp8; -- (id)mailboxSearchCriterionForScope:(int)fp8 containsSentMailbox:(char *)fp12 containsTrashMailbox:(char *)fp16 shouldExcludeJunk:(char *)fp20; -- (void)searchIndex:(id)fp8; -- (BOOL)_isShowingSearchResults; -- (unsigned int)_searchResultCount; -- (BOOL)_canSaveSearchWithTarget:(int)fp8; -- (BOOL)_canSearchSelectedMailboxes; -- (void)_showSearchSliceView; -- (void)_hideSearchSliceViewByAnimating:(BOOL)fp8; -- (void)_searchForString:(id)fp8; -- (void)_updateSearchStatus; -- (void)_clearSearchByAnimating:(BOOL)fp8; -- (void)clearSearch:(id)fp8; -- (void)setupSearchParametersForTag:(int)fp8; -- (int)searchField; -- (int)searchTarget; -- (int)searchArea; -- (void)controlTextDidEndEditing:(id)fp8; -- (void)controlTextDidChange:(id)fp8; -- (void)_removeAttachmentsFromMessages:(id)fp8 fromStores:(id)fp12; -- (void)removeAttachments:(id)fp8; -- (void)scrollBodyToShowToDo:(id)fp8; -- (id)todoTextFromDisplaySelection; -- (BOOL)createToDoWithViewAsKey:(id)fp8; -- (void)_selectAndRevealToDoMailboxForAccount:(id)fp8; -- (id)firstCreateToDoResponder; -- (void)createToDo:(id)fp8; -- (void)sortByTagOfSender:(id)fp8; -- (void)focus:(id)fp8; -- (void)unfocus:(id)fp8; -- (void)openAllThreads:(id)fp8; -- (void)closeAllThreads:(id)fp8; -- (void)toggleThreadedMode:(id)fp8; -- (void)selectThread:(id)fp8; -- (void)selectPreviousInThread:(id)fp8; -- (void)selectNextInThread:(id)fp8; -- (void)showDeletions:(id)fp8; -- (void)hideDeletions:(id)fp8; -- (void)toggleContentsColumn:(id)fp8; -- (void)toggleMessageNumbersColumn:(id)fp8; -- (void)toggleMessageFlagsColumn:(id)fp8; -- (void)toggleFromColumn:(id)fp8; -- (void)togglePresenceColumn:(id)fp8; -- (void)toggleToColumn:(id)fp8; -- (void)toggleDateSentColumn:(id)fp8; -- (void)toggleDateReceivedColumn:(id)fp8; -- (void)toggleLocationColumn:(id)fp8; -- (void)toggleAuthorColumn:(id)fp8; -- (void)toggleSizeColumn:(id)fp8; -- (void)writeDefaultsToArray:(id)fp8; -- (id)_saveDefaults; -- (void)_loadDefaults; -- (void)_setupFromDefaults; -- (id)_countStringForType:(int)fp8 isDrafts:(BOOL)fp12 omitUnread:(BOOL)fp16 totalCount:(unsigned int *)fp20; -- (void)_messageUpdated:(id)fp8; -- (void)_documentsTransferred:(id)fp8; -- (void)_updateWindowTitle; -- (void)_reallyUpdateWindowTitle; -- (void)_updateMallUids:(id)fp8; -- (id)_currentMessageManager; -- (void)_setSplitViewPercentage:(float)fp8 animate:(BOOL)fp12; -- (void)animationDidEnd:(id)fp8; -- (void)messageWasSelected:(id)fp8 fromMessageBrowserController:(id)fp12; -- (void)scrollCurrentlySelectedMessageToTop; -- (void)messageWasDoubleClicked:(id)fp8; -- (void)messageBrowserView:(id)fp8 willStartDragWithEvent:(id)fp12; -- (void)draggedImage:(id)fp8 movedTo:(struct _NSPoint)fp12; -- (void)messageBrowserViewDidEndDragging:(id)fp8; -- (BOOL)transferSelectedMessagesToMailbox:(id)fp8 deleteOriginals:(BOOL)fp12; -- (BOOL)deleteMessages:(id)fp8 allowMoveToTrash:(BOOL)fp12 allowUndo:(BOOL)fp16; -- (void)_reallyAnimateProgressInidicator; -- (void)_updateSearchStatusWithDelay; -- (void)threadDidExpand; -- (void)threadDidCollapse; -- (void)clearUndoRedoStacks; -- (void)searchWillStart; -- (void)searchDidFinish; -- (void)searchDidUpdate; -- (id)selectedMailboxUids; -- (void)performSearch:(id)fp8; -- (void)saveSearch:(id)fp8; -- (void)reapplySortingRules:(id)fp8; -- (void)_returnToSenderSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)_bounceMessages:(id)fp8; -- (void)returnToSender:(id)fp8; -- (void)addSenderToAddressBook:(id)fp8; -- (void)markAsJunkMail:(id)fp8; -- (void)markMessagesAsJunkMail:(id)fp8 stores:(id)fp12; -- (void)_deleteJunkedMessages:(id)fp8 inStores:(id)fp12 moveToTrash:(BOOL)fp16; -- (void)synchronouslyMarkAsJunkMail:(id)fp8 inStores:(id)fp12 delete:(BOOL)fp16; -- (void)undoMarkMessagesAsJunkMail:(id)fp8 stores:(id)fp12; -- (void)markAsNotJunkMail:(id)fp8; -- (void)markMessagesAsNotJunkMail:(id)fp8 stores:(id)fp12; -- (void)synchronouslyMarkAsNotJunkMail:(id)fp8 inStores:(id)fp12; -- (BOOL)_transferMessages:(id)fp8 toMailbox:(id)fp12 deleteOriginals:(BOOL)fp16 allowUndo:(BOOL)fp20 isDeleteOperation:(BOOL)fp24; -- (void)_reportError:(id)fp8; -- (void)transfer:(id)fp8 didCompleteWithError:(id)fp12; -- (void)hideMessagesForMessageTransfer:(id)fp8; -- (void)unhideMessagesForMessageTransfer:(id)fp8; -- (void)selectMessagesForUndo:(id)fp8; -- (id)undoManagerForMessageTransfer:(id)fp8; -- (void)_updateSearchItemLabel; - -@end - -@interface MessageViewer (AppleScript) -- (id)uniqueID; -- (id)objectSpecifier; -- (id)allMessages; -- (id)focusedMessages; -- (void)setFocusedMessages:(id)fp8; -- (int)appleScriptSortColumn; -- (void)setAppleScriptSortColumn:(int)fp8; -- (BOOL)isSortedAscending; -- (void)setIsSortedAscending:(BOOL)fp8; -- (BOOL)previewPaneVisible; -- (void)setPreviewPaneVisible:(BOOL)fp8; -- (id)visibleColumns; -- (void)setVisibleColumns:(id)fp8; -- (id)inbox; -- (id)outbox; -- (id)draftsMailbox; -- (id)sentMailbox; -- (id)trashMailbox; -- (id)junkMailbox; -- (void)setScriptingProperties:(id)fp8; -@end - -@interface MessageViewer (MessageViewerToolbar) -- (void)setupToolbar; -- (BOOL)validateToolbarItem:(id)fp8; -- (id)previousIdentifierForUpgradingToolbar:(id)fp8; -- (id)toolbar:(id)fp8 upgradedItemIdentifiers:(id)fp12; -- (void)configureSegmentedItem:(id)fp8 withDictionary:(id)fp12 forSegment:(int)fp16; -- (id)toolbar:(id)fp8 itemForItemIdentifier:(id)fp12 willBeInsertedIntoToolbar:(BOOL)fp16; -- (void)setupSearchView:(BOOL)fp8; -- (void)_handleCancelSearchButton:(id)fp8; -- (id)toolbarDefaultItemIdentifiers:(id)fp8; -- (id)toolbarAllowedItemIdentifiers:(id)fp8; -- (void)_reallyUpdateToolbar; -- (void)_updateToolbarForResizing:(BOOL)fp8; -- (void)toolbarDidRemoveItem:(id)fp8; -- (void)toolbarWillAddItem:(id)fp8; -- (void)toolbarDidMoveItem:(id)fp8; -- (void)toolbarDidReplaceAllItems:(id)fp8; -- (void)_mailboxesViewFrameChanged; -- (void)_mailboxesViewDidEndLiveResize; -@end - -@interface MessageViewer (TimeMachine) -- (id)toolbarConfigurationDict; -- (float)mailboxesPaneWidth; -- (float)previewSplitPercentage; -@end - -#elif defined(TIGER) - -@class MessageStore; -@class TableViewManager; -@class ASExtendedOutlineView; -@class MailboxesOutlineViewOwner; -@class StoreViewingAttributes; -@class SearchTextField; -@class MailboxUid; -@class MessageMall; -@class ExpandingSplitView; -@class AsyncArrows; -@class ColorBackgroundView; -@class MessageContentController; -@class MailVerticalSplitView; -@class VerticalSplitViewHandle; -@class SplitterAnimation; -@class MailboxPaneBottomView; -@class SearchSliceView; - -@protocol MVMailboxSelectionOwner -- (id)selectedMailboxes; -- (id)selectedMailbox; -- (void)selectPathsToMailboxes:(id)fp8; -- (BOOL)mailboxIsExpanded:(id)fp8; -- (void)revealMailbox:(id)fp8; -- (id)mailboxSelectionWindow; -@end - -@interface MessageViewer : NSResponder -{ - MessageMall *_messageMall; - TableViewManager *_tableManager; - MessageContentController *_contentController; - NSWindow *_window; - ExpandingSplitView *_splitView; - MailVerticalSplitView *_verticalSplitView; - ColorBackgroundView *_viewerContainer; - ColorBackgroundView *_mailboxesView; - ASExtendedOutlineView *_outlineView; - SearchTextField *_searchField; - NSView *_searchFieldView; - NSToolbarItem *_searchViewItem; - NSString *_lastSearchPhrase; - int _currentSearchType; - int _currentSearchTarget; - int _selectedTag; - NSMenu *_tableHeaderMenu; - MailboxesOutlineViewOwner *_outlineViewOwner; - NSButton *newMailboxButton; - NSPopUpButton *actionButton; - VerticalSplitViewHandle *verticalSplitViewHandle; - MailboxPaneBottomView *mailboxPaneBottomView; - BOOL _shouldPreventTableViewResize; - BOOL _shouldMakeTableViewSelectionVisible; - BOOL _shouldPreventFirstViewResize; - BOOL _shouldMakeMessageSelectionVisible; - BOOL _showingDefaultSearchString; - BOOL _updatingSearchField; - BOOL _allowShowingDeletedMessages; - BOOL _suppressWindowTitleUpdates; - float _restoreMailboxPaneToWidthAfterDragOperation; - float _lastSplitViewPosition; - float _lastMailboxSplitPosition; - float _lastDragXPosition; - NSArray *_mailboxesToDisplayWhenVisible; - NSToolbar *_toolbar; - NSMutableDictionary *_toolbarItems; - NSDictionary *_savedDefaults; - NSMutableArray *_transferOperations; - NSMutableDictionary *_viewerContents; - float _splitViewPositionBeforeSearch; - SplitterAnimation *_animation; - SearchSliceView *_searchSliceView; - BOOL _updatingToolbar; - float _mailboxesViewWidthAtLastToolbarUpdate; -} - -+ (id)allMessageViewers; -+ (id)allSingleMessageViewers; -+ (id)existingViewerForStore:(id)fp8; -+ (id)existingViewerForMailboxUid:(id)fp8; -+ (id)existingViewerForMessage:(id)fp8; -+ (id)newViewerForMailboxWithTag:(unsigned int)fp8; -+ (id)existingViewerShowingMessage:(id)fp8; -+ (void)registerNewViewer:(id)fp8; -+ (void)deregisterViewer:(id)fp8; -+ (void)showAllViewers; -+ (id)mailboxUidsBeingViewed; -+ (id)frontmostMessageViewer; -+ (void)searchForString:(id)fp8; -+ (id)_mailboxUidsForPaths:(id)fp8; -+ (void)saveDefaultsWithDelay; -+ (void)saveDefaults; -+ (void)restoreFromDefaults; -- (void)revealMessage:(id)fp8; -- (void)revealCurrentMessage; -- (void)_displayFollowup:(id)fp8; -- (void)_cantFindFollowupToMessage:(id)fp8; -- (void)showFollowupsToMessage:(id)fp8; -- (id)_mailboxUidsFromDefaults:(id)fp8; -- (id)initWithSavedDefaults:(id)fp8; -- (id)init; -- (id)plainInit; -- (id)initWithMailboxUids:(id)fp8; -- (void)dealloc; -- (void)_registerForApplicationNotifications; -- (void)_unregisterForApplicationNotifications; -- (void)_registerForStoreNotifications; -- (void)_unregisterForStoreNotifications; -- (void)storeBeingInvalidated:(id)fp8; -- (void)preferencesChanged:(id)fp8; -- (void)_setStore:(id)fp8; -- (BOOL)_isViewingMailboxUid:(id)fp8; -- (BOOL)_isViewingMessage:(id)fp8; -- (BOOL)_isShowingMessage:(id)fp8; -- (id)window; -- (void)show; -- (void)showAndMakeKey:(BOOL)fp8; -- (void)awakeFromNib; -- (void)_setupUI; -- (void)_setUpWindowContents; -- (void)_setupMailboxOutlineView; -- (void)_setupNextKeyViewLoop; -- (void)takeOverAsSelectionOwner; -- (void)resignAsSelectionOwner; -- (void)windowDidBecomeMain:(id)fp8; -- (void)nowWouldBeAGoodTimeToTerminate:(id)fp8; -- (BOOL)windowShouldClose:(id)fp8; -- (void)windowWillMiniaturize:(id)fp8; -- (struct _NSSize)windowWillResize:(id)fp8 toSize:(struct _NSSize)fp12; -- (void)openMailboxesPaneToWidth:(float)fp8; -- (BOOL)mailboxesPaneIsOpen; -- (BOOL)mailboxesPaneIsOpenWideEnoughToUse; -- (void)splitViewDidResizeSubviews:(id)fp8; -- (void)splitViewWillResizeSubviews:(id)fp8; -- (void)splitViewDoubleClickedOnDivider:(id)fp8; -- (void)toggleMailboxesPane:(id)fp8; -- (void)splitView:(id)fp8 resizeSubviewsWithOldSize:(struct _NSSize)fp12; -- (BOOL)splitView:(id)fp8 canCollapseSubview:(id)fp12; -- (float)splitView:(id)fp8 constrainMinCoordinate:(float)fp12 ofSubviewAt:(int)fp16; -- (float)splitView:(id)fp8 constrainMaxCoordinate:(float)fp12 ofSubviewAt:(int)fp16; -- (float)maxMailboxesViewWidthAllowed; -- (float)idealMailboxesViewWidth; -- (void)updateMailboxButtonVisibilityForWidth:(float)fp8; -- (float)splitView:(id)fp8 constrainSplitPosition:(float)fp12 ofSubviewAt:(int)fp16; -- (id)selectedMailboxes; -- (id)selectedMailbox; -- (void)selectPathsToMailboxes:(id)fp8; -- (BOOL)mailboxIsExpanded:(id)fp8; -- (void)revealMailbox:(id)fp8; -- (id)mailboxSelectionWindow; -- (void)setSelectedMailboxes:(id)fp8; -- (id)selectedMessages; -- (void)setSelectedMessages:(id)fp8; -- (id)currentDisplayedMessage; -- (void)outlineViewDoubleClick:(id)fp8; -- (void)selectMailbox:(id)fp8; -- (void)keyDown:(id)fp8; -- (void)keyUp:(id)fp8; -- (void)_mailboxWasRenamed:(id)fp8; -- (void)mailboxSelectionChanged:(id)fp8; -- (void)_mallDidOpen; -- (void)_mallStructureDidChange; -- (void)smartMailboxCriteriaChanged:(id)fp8; -- (void)_setMailboxUids:(id)fp8; -- (BOOL)_selectionContainsMessagesWithDeletedStatusEqualTo:(BOOL)fp8; -- (BOOL)_selectionContainsMessagesWithReadStatusEqualTo:(BOOL)fp8; -- (BOOL)_selectionContainsMessagesWithFlaggedStatusEqualTo:(BOOL)fp8; -- (BOOL)_selectionContainsMessagesWithJunkMailLevelEqualTo:(int)fp8; -- (BOOL)_selectionContainsMessagesWithAttachments; -- (BOOL)atLeastOneSelectedMessageIsInOutbox:(id)fp8; -- (BOOL)_validateAction:(SEL)fp8 tag:(int)fp12; -- (BOOL)validateMenuItem:(id)fp8; -- (void)messageWasDisplayedInTextView:(id)fp8; -- (void)messageThreadSummaryWasDisplayedInTextView:(id)fp8; -- (void)checkNewMail:(id)fp8; -- (void)replyMessage:(id)fp8; -- (void)replyAllMessage:(id)fp8; -- (void)replyToSender:(id)fp8; -- (void)replyToOriginalSender:(id)fp8; -- (void)showComposeWindow:(id)fp8; -- (void)showAddressPanel:(id)fp8; -- (void)toggleAttachmentsArea:(id)fp8; -- (void)undeleteMessages:(id)fp8; -- (void)deleteMessages:(id)fp8; -- (void)deleteMessagesAllowingMoveToTrash:(BOOL)fp8; -- (void)selectAllMessages; -- (void)setFirstResponder; -- (void)replyViaIM:(id)fp8; -- (void)showAccountInfo:(id)fp8; -- (id)tableManager; -- (id)mailboxesOutlineViewOwner; -- (void)jumpToSelection:(id)fp8; -- (void)editorWithGatekeeperApproval:(id)fp8; -- (id)editorWithType:(int)fp8; -- (void)redirectMessage:(id)fp8; -- (void)forwardMessage:(id)fp8; -- (void)displaySelectedMessageInSeparateWindow:(id)fp8; -- (void)renameMailbox:(id)fp8; -- (void)moveMessagesToMailbox:(id)fp8; -- (void)copyMessagesToMailbox:(id)fp8; -- (id)_selectedMessagesWhoseFlag:(unsigned long)fp8 isEqualToState:(BOOL)fp12; -- (void)_changeFlag:(id)fp8 state:(BOOL)fp12 forMessages:(id)fp16 undoActionName:(id)fp20; -- (void)markAsRead:(id)fp8; -- (void)markAsUnread:(id)fp8; -- (void)markAsReadFromToolbar:(id)fp8; -- (void)markAsUnreadFromToolbar:(id)fp8; -- (void)markAsUnflagged:(id)fp8; -- (void)markAsFlagged:(id)fp8; -- (void)markAsFlaggedFromToolbar:(id)fp8; -- (void)markAsUnflaggedFromToolbar:(id)fp8; -- (void)changeColor:(id)fp8; -- (void)rebuildTableOfContents:(id)fp8; -- (void)_putMessageDataOntoPasteboard:(id)fp8 attributedString:(id)fp12 shouldDelete:(id)fp16 pasteboardType:(id)fp20; -- (void)_copyMessagesToPasteboard:(id)fp8 deleteWhenCopied:(BOOL)fp12 pasteboardType:(id)fp16; -- (void)_progressAlertDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (BOOL)_doCopy:(id)fp8 deleteWhenCopied:(BOOL)fp12; -- (void)copy:(id)fp8; -- (void)cut:(id)fp8; -- (void)_pasteData:(id)fp8 pasteboardType:(id)fp12 destination:(id)fp16; -- (void)paste:(id)fp8; -- (void)startSpeaking:(id)fp8; -- (void)stopSpeaking:(id)fp8; -- (void)speechSynthesizer:(id)fp8 didFinishSpeaking:(BOOL)fp12; -- (void)showPrintPanel:(id)fp8; -- (BOOL)send:(id)fp8 forDraft:(BOOL)fp12; -- (BOOL)send:(id)fp8; -- (void)saveAs:(id)fp8; -- (void)saveAllAttachments:(id)fp8; -- (id)defaultSearchString; -- (void)showDefaultSearchString; -- (id)_criterionForMailbox:(id)fp8; -- (id)mailboxSearchCriterionForScope:(int)fp8; -- (void)searchIndex:(id)fp8; -- (BOOL)_isShowingSearchResults; -- (unsigned int)_searchResultCount; -- (BOOL)_canSaveSearchWithTarget:(int)fp8; -- (BOOL)_canSearchSelectedMailboxes; -- (BOOL)_canContentSearchSelectedMailboxes; -- (void)_showSearchSliceView; -- (void)_hideSearchSliceView; -- (void)_searchForString:(id)fp8; -- (void)_updateSearchStatus; -- (void)_clearSearch; -- (void)clearSearch:(id)fp8; -- (void)setupSearchParametersForTag:(int)fp8; -- (int)searchType; -- (int)searchTarget; -- (void)controlTextDidEndEditing:(id)fp8; -- (void)controlTextDidChange:(id)fp8; -- (void)_removeAttachmentsFromMessages:(id)fp8 fromStores:(id)fp12; -- (void)removeAttachments:(id)fp8; -- (void)sortByTagOfSender:(id)fp8; -- (void)focus:(id)fp8; -- (void)unfocus:(id)fp8; -- (void)openAllThreads:(id)fp8; -- (void)closeAllThreads:(id)fp8; -- (void)toggleThreadedMode:(id)fp8; -- (void)selectThread:(id)fp8; -- (void)selectPreviousInThread:(id)fp8; -- (void)selectNextInThread:(id)fp8; -- (void)showDeletions:(id)fp8; -- (void)hideDeletions:(id)fp8; -- (void)toggleContentsColumn:(id)fp8; -- (void)toggleMessageNumbersColumn:(id)fp8; -- (void)toggleMessageFlagsColumn:(id)fp8; -- (void)toggleFromColumn:(id)fp8; -- (void)togglePresenceColumn:(id)fp8; -- (void)toggleToColumn:(id)fp8; -- (void)toggleDateSentColumn:(id)fp8; -- (void)toggleDateReceivedColumn:(id)fp8; -- (void)toggleLocationColumn:(id)fp8; -- (void)toggleSizeColumn:(id)fp8; -- (void)writeDefaultsToArray:(id)fp8; -- (id)_saveDefaults; -- (void)_loadDefaults; -- (void)_setupFromDefaults; -- (id)_numberOfMessagesStringIsDrafts:(BOOL)fp8 omitUnread:(BOOL)fp12; -- (void)_updateWindowTitle; -- (void)_updateMessageMallUids:(id)fp8; -- (id)_currentMessageManager; -- (void)_setSplitViewPercentage:(float)fp8 animate:(BOOL)fp12; -- (void)animationDidEnd:(id)fp8; -- (void)messageWasSelected:(id)fp8 fromMessageBrowserController:(id)fp12; -- (void)scrollCurrentlySelectedMessageToTop; -- (void)messageWasDoubleClicked:(id)fp8; -- (void)messageBrowserView:(id)fp8 willStartDragWithEvent:(id)fp12; -- (void)draggedImage:(id)fp8 movedTo:(struct _NSPoint)fp12; -- (void)messageBrowserViewDidEndDragging:(id)fp8; -- (BOOL)transferSelectedMessagesToMailbox:(id)fp8 deleteOriginals:(BOOL)fp12; -- (void)_reallyAnimateProgressInidicator; -- (void)_updateSearchStatusWithDelay; -- (void)threadDidExpand; -- (void)threadDidCollapse; -- (void)searchWillStart; -- (void)searchDidFinish; -- (void)searchDidUpdate; -- (id)selectedMailboxUids; -- (void)performSearch:(id)fp8; -- (void)saveSearch:(id)fp8; -- (void)reapplySortingRules:(id)fp8; -- (void)_returnToSenderSheetDidEnd:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)returnToSender:(id)fp8; -- (void)addSenderToAddressBook:(id)fp8; -- (void)markAsJunkMail:(id)fp8; -- (void)markMessagesAsJunkMail:(id)fp8 stores:(id)fp12; -- (void)_deleteJunkedMessages:(id)fp8 inStores:(id)fp12 moveToTrash:(BOOL)fp16; -- (void)synchronouslyMarkAsJunkMail:(id)fp8 inStores:(id)fp12 delete:(BOOL)fp16; -- (void)undoMarkMessagesAsJunkMail:(id)fp8 stores:(id)fp12; -- (void)markAsNotJunkMail:(id)fp8; -- (void)markMessagesAsNotJunkMail:(id)fp8 stores:(id)fp12; -- (void)synchronouslyMarkAsNotJunkMail:(id)fp8 inStores:(id)fp12; -- (BOOL)_transferSelectedMessagesToMailbox:(id)fp8 deleteOriginals:(BOOL)fp12; -- (void)_reportError:(id)fp8; -- (void)transfer:(id)fp8 didCompleteWithError:(id)fp12; -- (id)undoManagerForMessageTransfer:(id)fp8; -- (void)_updateSearchItemLabel; - -@end - -@interface MessageViewer (AppleScript) -- (id)uniqueID; -- (id)objectSpecifier; -- (id)allMessages; -- (id)focusedMessages; -- (void)setFocusedMessages:(id)fp8; -- (int)appleScriptSortColumn; -- (void)setAppleScriptSortColumn:(int)fp8; -- (BOOL)isSortedAscending; -- (void)setIsSortedAscending:(BOOL)fp8; -- (BOOL)previewPaneVisible; -- (void)setPreviewPaneVisible:(BOOL)fp8; -- (id)visibleColumns; -- (void)setVisibleColumns:(id)fp8; -- (id)inbox; -- (id)outbox; -- (id)draftsMailbox; -- (id)sentMailbox; -- (id)trashMailbox; -- (id)junkMailbox; -- (void)setScriptingProperties:(id)fp8; -@end - -@interface MessageViewer (MessageViewerToolbar) -- (void)_setupToolBar; -- (BOOL)validateToolbarItem:(id)fp8 forSegment:(int)fp12; -- (id)toolbar:(id)fp8 itemForItemIdentifier:(id)fp12 willBeInsertedIntoToolbar:(BOOL)fp16; -- (void)setupSearchView:(BOOL)fp8; -- (void)_handleCancelSearchButton:(id)fp8; -- (id)toolbarDefaultItemIdentifiers:(id)fp8; -- (id)toolbarAllowedItemIdentifiers:(id)fp8; -- (void)_reallyUpdateToolbar:(BOOL)fp8; -- (void)_updateToolbarForResizing:(BOOL)fp8; -- (void)toolbarDidRemoveItem:(id)fp8; -- (void)toolbarWillAddItem:(id)fp8; -- (void)toolbarDidMoveItem:(id)fp8; -- (void)toolbarDidReplaceAllItems:(id)fp8; -- (void)_mailboxesViewFrameChanged; -- (void)_mailboxesViewDidEndLiveResize; -@end - -#else - -@class MessageStore; -@class TableViewManager; -@class ASExtendedOutlineView; -@class MailboxesOutlineViewOwner; -@class StoreViewingAttributes; -@class SearchTextField; -@class MailboxUid; -@class MessageMall; -@class ExpandingSplitView; -@class AsyncArrows; -@class ColorBackgroundView; -@class MessageContentController; - -@interface MessageViewer:NSResponder -{ - MessageMall *_messageMall; // 8 = 0x8 - TableViewManager *_tableManager; // 12 = 0xc - MessageContentController *_contentController; // 16 = 0x10 - NSWindow *_window; // 20 = 0x14 - ExpandingSplitView *_splitView; // 24 = 0x18 - NSTextField *_statusField; // 28 = 0x1c - AsyncArrows *_progressIndicator; // 32 = 0x20 - NSBox *_messageViewerBox; // 36 = 0x24 - ColorBackgroundView *_mailboxesView; // 40 = 0x28 - ASExtendedOutlineView *_outlineView; // 44 = 0x2c - SearchTextField *_searchField; // 48 = 0x30 - NSView *_searchFieldView; // 52 = 0x34 - NSToolbarItem *_searchViewItem; // 56 = 0x38 - NSMenu *_searchMenu; // 60 = 0x3c - NSString *_lastSearchPhrase; // 64 = 0x40 - int _currentSearchType; // 68 = 0x44 - int _currentSearchTarget; // 72 = 0x48 - int _selectedTag; // 76 = 0x4c - NSMenu *_tableHeaderMenu; // 80 = 0x50 - NSMenuItem *_selectedMailboxesItem; // 84 = 0x54 - MailboxesOutlineViewOwner *_outlineViewOwner; // 88 = 0x58 - NSDrawer *_mailboxesDrawer; // 92 = 0x5c - NSButton *newMailboxButton; // 96 = 0x60 - NSPopUpButton *actionButton; // 100 = 0x64 - NSString *_sizeStatusString; // 104 = 0x68 - NSString *_uiStatusMessage; // 108 = 0x6c - char _shouldCloseMailboxListingAfterDragOperation; // 112 = 0x70 - char _shouldPreventTableViewResize; // 113 = 0x71 - char _shouldMakeTableViewSelectionVisible; // 114 = 0x72 - char _showingDefaultSearchString; // 115 = 0x73 - char _updatingSearchField; // 116 = 0x74 - char _allowShowingDeletedMessages; // 117 = 0x75 - char _disableMailboxesButton; // 118 = 0x76 - float _lastSplitViewPosition; // 120 = 0x78 - float _lastDragXPosition; // 124 = 0x7c - NSArray *_mailboxesToDisplayWhenVisible; // 128 = 0x80 - NSToolbar *_toolbar; // 132 = 0x84 - NSMutableDictionary *_toolbarItems; // 136 = 0x88 - NSDictionary *_savedDefaults; // 140 = 0x8c - NSMutableArray *_transferOperations; // 144 = 0x90 -} - -+ allMessageViewers; -+ allSingleMessageViewers; -+ existingViewerForStore:fp8; -+ existingViewerForMailboxUid:fp8; -+ existingViewerForMessage:fp8; -+ (void)registerNewViewer:fp8; -+ (void)deregisterViewer:fp8; -+ (void)showAllViewers; -+ (void)updateStatusLineForAllViewers; -+ (void)saveDefaults; -+ (void)restoreFromDefaults; -- (void)showFollowupsToMessage:fp8; -- (void)_findFollowupsToMessage:fp8 inStore:fp12; -- (void)_displayFollowup:fp8 inStore:fp12; -- (void)_cantFindFollowupToMessage:fp8 inStore:fp12; -- _mailboxUidsFromDefaults:fp8; -- initWithSavedDefaults:fp8; -- init; -- plainInit; -- initWithMailboxUids:fp8; -- (void)dealloc; -- (void)_registerForApplicationNotifications; -- (void)_unregisterForApplicationNotifications; -- (void)_registerForStoreNotifications; -- (void)_unregisterForStoreNotifications; -- (void)storeBeingInvalidated:fp8; -- (void)preferencesChanged:fp8; -- (char)mailboxListingIsShowing; -- (void)setMailboxListingIsShowing:(char)fp8; -- (void)drawerDidOpen:fp8; -- (void)_setStore:fp8; -- (char)_isViewingMailboxUid:fp8; -- _accountBeingViewed; -- (char)_isViewingMessage:fp8; -- window; -- (void)show; -- (void)showAndMakeKey:(char)fp8; -- (void)_setupUI; -- (void)_loadDrawerAndMessages; -- (void)_setupMailboxOutlineView; -- (void)_setupMailboxesDrawer; -- (void)_setupNextKeyViewLoop; -- (void)takeOverAsSelectionOwner; -- (void)resignAsSelectionOwner; -- (void)windowDidBecomeMain:fp8; -- (void)nowWouldBeAGoodTimeToTerminate:fp8; -- (char)windowShouldClose:fp8; -- (void)windowWillMiniaturize:fp8; -- (struct _NSSize)windowWillResize:fp8 toSize:(struct _NSSize)fp12; -- (void)splitViewDidResizeSubviews:fp8; -- (void)splitViewWillResizeSubviews:fp8; -- (void)splitViewDoubleClickedOnDivider:fp8; -- (void)splitView:fp8 resizeSubviewsWithOldSize:(struct _NSSize)fp12; -- (char)splitView:fp8 canCollapseSubview:fp12; -- (float)splitView:fp8 constrainMinCoordinate:(float)fp12 ofSubviewAt:(int)fp16; -- (float)splitView:fp8 constrainMaxCoordinate:(float)fp12 ofSubviewAt:(int)fp16; -- selectedMailboxes; -- (void)setSelectedMailboxes:fp8; -- selectedMessages; -- (void)setSelectedMessages:fp8; -- currentDisplayedMessage; -- (void)outlineViewDoubleClick:fp8; -- (void)selectMailbox:fp8; -- (void)keyDown:fp8; -- (void)keyUp:fp8; -- (void)_mailboxWasRenamed:fp8; -- (void)mailboxSelectionChanged:fp8; -- (void)_mallDidOpen; -- (void)_mallStructureDidChange; -- (void)_setMailboxUids:fp8; -- (char)_selectionContainsMessagesWithDeletedStatusEqualTo:(char)fp8; -- (char)_selectionContainsMessagesWithReadStatusEqualTo:(char)fp8; -- (char)_selectionContainsMessagesWithFlaggedStatusEqualTo:(char)fp8; -- (char)_selectionContainsMessagesWithJunkMailLevelEqualTo:(int)fp8; -- (char)_selectionContainsMessagesWithAttachments; -- (char)_validateAction:(SEL)fp8 tag:(int)fp12; -- (char)validateMenuItem:fp8; -- (void)messageWasDisplayedInTextView:fp8; -- (void)checkNewMail:fp8; -- (void)replyMessage:fp8; -- (void)replyAllMessage:fp8; -- (void)replyToSender:fp8; -- (void)replyToOriginalSender:fp8; -- (void)showComposeWindow:fp8; -- (void)showAddressPanel:fp8; -- (void)toggleAttachmentsArea:fp8; -- (void)undeleteMessages:fp8; -- (void)deleteMessages:fp8; -- (void)deleteMessagesAllowingMoveToTrash:(char)fp8; -- (void)replyViaIM:fp8; -- tableManager; -- (void)jumpToSelection:fp8; -- (void)redirectMessage:fp8; -- (void)forwardMessage:fp8; -- (void)_replyMessageWithType:(int)fp8; -- (void)displaySelectedMessageInSeparateWindow:fp8; -- (void)renameMailbox:fp8; -- (void)moveMessagesToMailbox:fp8; -- (void)copyMessagesToMailbox:fp8; -- (void)_changeFlag:fp8 state:(char)fp12 forMessages:fp16 undoActionName:fp20; -- (void)markAsRead:fp8; -- (void)markAsUnread:fp8; -- (void)markAsUnflagged:fp8; -- (void)markAsFlagged:fp8; -- (void)changeColor:fp8; -- (void)rebuildTableOfContents:fp8; -- (void)copy:fp8; -- (void)cut:fp8; -- (void)paste:fp8; -- (void)showPrintPanel:fp8; -- (char)send:fp8; -- (void)saveAs:fp8; -- (void)saveAllAttachments:fp8; -- (void)updateMenuCheckmarkForTag:(int)fp8; -- defaultSearchString; -- (void)showDefaultSearchString; -- (void)searchPopupChanged:fp8; -- (void)searchIndex:fp8; -- (void)clearSearch:fp8; -- (void)setupSearchParametersForTag:(int)fp8; -- (int)searchType; -- (int)searchTarget; -- (void)performSearch:fp8; -- (void)controlTextDidEndEditing:fp8; -- (void)controlTextDidChange:fp8; -- (void)_removeAttachmentsFromMessages:fp8 fromStores:fp12; -- (void)removeAttachments:fp8; -- (void)sortByTagOfSender:fp8; -- (void)focus:fp8; -- (void)unfocus:fp8; -- (void)openAllThreads:fp8; -- (void)closeAllThreads:fp8; -- (void)toggleThreadedMode:fp8; -- (void)selectThread:fp8; -- (void)selectPreviousInThread:fp8; -- (void)selectNextInThread:fp8; -- (void)showDeletions:fp8; -- (void)hideDeletions:fp8; -- (void)toggleContentsColumn:fp8; -- (void)toggleMessageNumbersColumn:fp8; -- (void)toggleMessageFlagsColumn:fp8; -- (void)toggleFromColumn:fp8; -- (void)togglePresenceColumn:fp8; -- (void)toggleToColumn:fp8; -- (void)toggleDateSentColumn:fp8; -- (void)toggleDateReceivedColumn:fp8; -- (void)toggleLocationColumn:fp8; -- (void)toggleSizeColumn:fp8; -- (void)_showMailboxesPanel; -- (void)showMailboxesPanel:fp8; -- (void)writeDefaultsToArray:fp8; -- _saveDefaults; -- (void)_setupFromDefaults; -- _sizeStatus; -- (void)showStatusMessage:fp8; -- (void)_updateStatusLine; -- (void)_updateStatusLineAndWindowTitle; -- (void)_updateMessageMallUids:fp8; -- (void)showStatusLine:fp8; -- (void)hideStatusLine:fp8; -- (void)messageWasSelected:fp8; -- (void)tableView:fp8 willStartDragWithEvent:fp12; -- (void)draggedImage:fp8 movedTo:(struct _NSPoint)fp12; -- (void)draggingUpdatedAtLocation:(struct _NSPoint)fp8; -- (void)tableViewDidEndDragging:fp8; -- (void)reapplySortingRules:fp8; -- (void)_returnToSenderSheetDidEnd:fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (void)returnToSender:fp8; -- (void)addSenderToAddressBook:fp8; -- (void)showMainThreadIsBusy:fp8; -- (void)showMainThreadIsNotBusy:fp8; -- (void)_performJunkMailActionOnMessages:fp8; -- (void)markAsJunkMail:fp8; -- (void)markMessagesAsJunkMail:fp8 stores:fp12; -- (void)synchronouslyMarkAsJunkMail:fp8 inStores:fp12 delete:(char)fp16; -- (void)undoMarkMessagesAsJunkMail:fp8 stores:fp12; -- (void)markAsNotJunkMail:fp8; -- (void)markMessagesAsNotJunkMail:fp8 stores:fp12; -- (void)synchronouslyMarkAsNotJunkMail:fp8 inStores:fp12; -- (char)transferSelectedMessagesToMailbox:fp8 deleteOriginals:(char)fp12; -- (void)_reportError:fp8; -- (void)transfer:fp8 didCompleteWithError:fp12; -- undoManagerForMessageTransfer:fp8; -- (void)_updateSearchItemLabel; - -@end - -@interface MessageViewer(AppleScript) -- uniqueID; -- objectSpecifier; -- allMessages; -- focusedMessages; -- (void)setFocusedMessages:fp8; -- (int)appleScriptSortColumn; -- (void)setAppleScriptSortColumn:(int)fp8; -- (char)isSortedAscending; -- (void)setIsSortedAscending:(char)fp8; -- (char)previewPaneVisible; -- (void)setPreviewPaneVisible:(char)fp8; -- visibleColumns; -- (void)setVisibleColumns:fp8; -- inbox; -- outbox; -- draftsMailbox; -- sentMailbox; -- trashMailbox; -- junkMailbox; -- (void)setScriptingProperties:fp8; -@end - -@interface MessageViewer(MessageViewerToolbar) -- (void)_setupToolBar; -- (char)validateToolbarItem:fp8; -- toolbar:fp8 itemForItemIdentifier:fp12 willBeInsertedIntoToolbar:(BOOL)fp16; -- (void)setupSearchView:(char)fp8; -- toolbarDefaultItemIdentifiers:fp8; -- toolbarAllowedItemIdentifiers:fp8; -- (void)toolbarDidRemoveItem:fp8; -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MessageWriter.h b/GPGMail/Source/PrivateHeaders/MessageWriter.h deleted file mode 100644 index 5a0ba225..00000000 --- a/GPGMail/Source/PrivateHeaders/MessageWriter.h +++ /dev/null @@ -1,258 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -@interface MessageWriter : NSObject -{ - unsigned int _createsMimeAlternatives:1; - unsigned int _createsRichText:1; - unsigned int _createsPlainTextOnly:1; - unsigned int _allows8BitMimeParts:1; - unsigned int _allowsBinaryMimeParts:1; - unsigned int _allowsAppleDoubleAttachments:1; - unsigned int _signsOutput:1; - unsigned int _encryptsOutput:1; - unsigned int _shouldConvertCompositeImages:1; - BOOL _shouldMarkNonresizableAttachmentData; - unsigned int _preferredEncoding; - unsigned int _encodingHint; -} - -+ (id)domainHintForResentIDFromHeaders:(id)arg1 hasResentFromHeaders:(char *)arg2; -- (id)init; -- (id)createDataForAttributedString:(id)arg1; -- (void)appendDataForMimePart:(id)arg1 toData:(id)arg2 withPartData:(id)arg3; -- (id)createBounceMessageForMessage:(id)arg1; -- (id)createMessageByRemovingAttachmentsFromMessage:(id)arg1; -- (id)createMessageWithAttributedString:(id)arg1 headers:(id)arg2; -- (id)createMessageWithHtmlString:(id)arg1 plainTextAlternative:(id)arg2 otherHtmlStringsAndAttachments:(id)arg3 headers:(id)arg4; -- (id)createMessageWithHtmlString:(id)arg1 attachments:(id)arg2 headers:(id)arg3; -- (id)createMessageWithBodyData:(id)arg1 headers:(id)arg2; -- (BOOL)createsMimeAlternatives; -- (void)setCreatesMimeAlternatives:(BOOL)arg1; -- (BOOL)createsPlainTextOnly; -- (void)setCreatesPlainTextOnly:(BOOL)arg1; -- (BOOL)createsRichText; -- (void)setCreatesRichText:(BOOL)arg1; -- (BOOL)allows8BitMimeParts; -- (void)setAllows8BitMimeParts:(BOOL)arg1; -- (BOOL)allowsBinaryMimeParts; -- (void)setAllowsBinaryMimeParts:(BOOL)arg1; -- (BOOL)allowsAppleDoubleAttachments; -- (void)setAllowsAppleDoubleAttachments:(BOOL)arg1; -- (unsigned int)preferredEncoding; -- (void)setPreferredEncoding:(unsigned int)arg1; -- (unsigned int)encodingHint; -- (void)setEncodingHint:(unsigned int)arg1; -- (unsigned int)_preferredEncodingUsingHintIfNecessary; -- (BOOL)signsOutput; -- (void)setSignsOutput:(BOOL)arg1; -- (BOOL)encryptsOutput; -- (void)setEncryptsOutput:(BOOL)arg1; -- (void)setShouldConvertCompositeImages:(BOOL)arg1; -- (void)setShouldMarkNonresizableAttachmentData:(BOOL)arg1; - -@end - -#elif defined(SNOW_LEOPARD) - -@interface MessageWriter : NSObject -{ - unsigned int _createsMimeAlternatives:1; - unsigned int _createsRichText:1; - unsigned int _createsPlainTextOnly:1; - unsigned int _allows8BitMimeParts:1; - unsigned int _allowsBinaryMimeParts:1; - unsigned int _allowsAppleDoubleAttachments:1; - unsigned int _signsOutput:1; - unsigned int _encryptsOutput:1; - unsigned int _shouldConvertCompositeImages:1; - BOOL _shouldMarkNonresizableAttachmentData; - unsigned int _preferredEncoding; - unsigned int _encodingHint; -} - -+ (id)domainHintForResentIDFromHeaders:(id)arg1 hasResentFromHeaders:(char *)arg2; -- (id)init; -- (id)createDataForAttributedString:(id)arg1; -- (void)appendDataForMimePart:(id)arg1 toData:(id)arg2 withPartData:(id)arg3; -- (id)createBounceMessageForMessage:(id)arg1; -- (id)createMessageByRemovingAttachmentsFromMessage:(id)arg1; -- (id)createMessageWithAttributedString:(id)arg1 headers:(id)arg2; -- (id)createMessageWithHtmlString:(id)arg1 plainTextAlternative:(id)arg2 otherHtmlStringsAndAttachments:(id)arg3 headers:(id)arg4; -- (id)createMessageWithHtmlString:(id)arg1 attachments:(id)arg2 headers:(id)arg3; -- (id)createMessageWithBodyData:(id)arg1 headers:(id)arg2; -- (BOOL)createsMimeAlternatives; -- (void)setCreatesMimeAlternatives:(BOOL)arg1; -- (BOOL)createsPlainTextOnly; -- (void)setCreatesPlainTextOnly:(BOOL)arg1; -- (BOOL)createsRichText; -- (void)setCreatesRichText:(BOOL)arg1; -- (BOOL)allows8BitMimeParts; -- (void)setAllows8BitMimeParts:(BOOL)arg1; -- (BOOL)allowsBinaryMimeParts; -- (void)setAllowsBinaryMimeParts:(BOOL)arg1; -- (BOOL)allowsAppleDoubleAttachments; -- (void)setAllowsAppleDoubleAttachments:(BOOL)arg1; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)arg1; -- (unsigned long)encodingHint; -- (void)setEncodingHint:(unsigned long)arg1; -- (unsigned long)_preferredEncodingUsingHintIfNecessary; -- (BOOL)signsOutput; -- (void)setSignsOutput:(BOOL)arg1; -- (BOOL)encryptsOutput; -- (void)setEncryptsOutput:(BOOL)arg1; -- (void)setShouldConvertCompositeImages:(BOOL)arg1; -- (void)setShouldMarkNonresizableAttachmentData:(BOOL)arg1; - -@end - -#elif defined(LEOPARD) - -@interface MessageWriter : NSObject -{ - unsigned int _createsMimeAlternatives:1; - unsigned int _createsRichText:1; - unsigned int _createsPlainTextOnly:1; - unsigned int _allows8BitMimeParts:1; - unsigned int _allowsBinaryMimeParts:1; - unsigned int _allowsAppleDoubleAttachments:1; - unsigned int _signsOutput:1; - unsigned int _encryptsOutput:1; - unsigned int _writeImageSize:1; - unsigned int _shouldConvertCompositeImages:1; - BOOL _shouldMarkNonresizableAttachmentData; - unsigned int _preferredEncoding; - unsigned int _encodingHint; -} - -- (id)init; -- (id)createDataForAttributedString:(id)fp8; -- (void)appendDataForMimePart:(id)fp8 toData:(id)fp12 withPartData:(id)fp16; -- (id)createBounceMessageForMessage:(id)fp8; -- (id)createMessageByRemovingAttachmentsFromMessage:(id)fp8; -- (id)createMessageWithAttributedString:(id)fp8 headers:(id)fp12; -- (id)createMessageWithHtmlString:(id)fp8 plainTextAlternative:(id)fp12 otherHtmlStringsAndAttachments:(id)fp16 headers:(id)fp20; -- (id)createMessageWithHtmlString:(id)fp8 attachments:(id)fp12 headers:(id)fp16; -- (id)createMessageWithBodyData:(id)fp8 headers:(id)fp12; -- (BOOL)createsMimeAlternatives; -- (void)setCreatesMimeAlternatives:(BOOL)fp8; -- (BOOL)createsPlainTextOnly; -- (void)setCreatesPlainTextOnly:(BOOL)fp8; -- (BOOL)createsRichText; -- (void)setCreatesRichText:(BOOL)fp8; -- (BOOL)allows8BitMimeParts; -- (void)setAllows8BitMimeParts:(BOOL)fp8; -- (BOOL)allowsBinaryMimeParts; -- (void)setAllowsBinaryMimeParts:(BOOL)fp8; -- (BOOL)allowsAppleDoubleAttachments; -- (void)setAllowsAppleDoubleAttachments:(BOOL)fp8; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)fp8; -- (unsigned long)encodingHint; -- (void)setEncodingHint:(unsigned long)fp8; -- (unsigned long)_preferredEncodingUsingHintIfNecessary; -- (BOOL)signsOutput; -- (void)setSignsOutput:(BOOL)fp8; -- (BOOL)encryptsOutput; -- (void)setEncryptsOutput:(BOOL)fp8; -- (BOOL)writeImageSize; -- (void)setWriteImageSize:(BOOL)fp8; -- (void)setShouldConvertCompositeImages:(BOOL)fp8; -- (void)setShouldMarkNonresizableAttachmentData:(BOOL)fp8; - -@end - -#elif defined(TIGER) - -@interface MessageWriter : NSObject -{ - unsigned int _createsMimeAlternatives:1; - unsigned int _createsRichText:1; - unsigned int _createsPlainTextOnly:1; - unsigned int _allows8BitMimeParts:1; - unsigned int _allowsBinaryMimeParts:1; - unsigned int _allowsAppleDoubleAttachments:1; - unsigned int _signsOutput:1; - unsigned int _encryptsOutput:1; - unsigned int _writeImageSize:1; - unsigned int _preferredEncoding; -} - -- (id)init; -- (id)createDataForAttributedString:(id)fp8; -- (void)appendDataForMimePart:(id)fp8 toData:(id)fp12 withPartData:(id)fp16; -- (id)createBounceMessageForMessage:(id)fp8; -- (id)createMessageByRemovingAttachmentsFromMessage:(id)fp8; -- (id)createMessageWithAttributedString:(id)fp8 headers:(id)fp12; -- (id)createMessageWithHtmlString:(id)fp8 plainTextAlternative:(id)fp12 otherHtmlStringsAndAttachments:(id)fp16 headers:(id)fp20; -- (id)createMessageWithHtmlString:(id)fp8 attachments:(id)fp12 headers:(id)fp16; -- (id)createMessageWithBodyData:(id)fp8 headers:(id)fp12; -- (BOOL)createsMimeAlternatives; -- (void)setCreatesMimeAlternatives:(BOOL)fp8; -- (BOOL)createsPlainTextOnly; -- (void)setCreatesPlainTextOnly:(BOOL)fp8; -- (BOOL)createsRichText; -- (void)setCreatesRichText:(BOOL)fp8; -- (BOOL)allows8BitMimeParts; -- (void)setAllows8BitMimeParts:(BOOL)fp8; -- (BOOL)allowsBinaryMimeParts; -- (void)setAllowsBinaryMimeParts:(BOOL)fp8; -- (BOOL)allowsAppleDoubleAttachments; -- (void)setAllowsAppleDoubleAttachments:(BOOL)fp8; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)fp8; -- (BOOL)signsOutput; -- (void)setSignsOutput:(BOOL)fp8; -- (BOOL)encryptsOutput; -- (void)setEncryptsOutput:(BOOL)fp8; -- (BOOL)writeImageSize; -- (void)setWriteImageSize:(BOOL)fp8; - -@end - -#else - -@interface MessageWriter:NSObject -{ - int _createsMimeAlternatives:1; // 4 = 0x4 - int _createsRichText:1; // 4 = 0x4 - int _createsPlainTextOnly:1; // 4 = 0x4 - int _allows8BitMimeParts:1; // 4 = 0x4 - int _allowsBinaryMimeParts:1; // 4 = 0x4 - int _allowsAppleDoubleAttachments:1; // 4 = 0x4 - int _signsOutput:1; // 4 = 0x4 - int _encryptsOutput:1; // 4 = 0x4 - unsigned int _preferredEncoding; // 8 = 0x8 -} - -- init; -- createDataForAttributedString:fp8; -- (void)appendDataForMimePart:fp8 toData:fp12 withPartData:fp16; -- createBounceMessageForMessage:fp8; -- createMessageByRemovingAttachmentsFromMessage:fp8; -- createMessageWithAttributedString:fp8 headers:fp12; -- createMessageWithHtmlString:fp8 attachments:fp12 headers:fp16; -- (char)createsMimeAlternatives; -- (void)setCreatesMimeAlternatives:(char)fp8; -- (char)createsPlainTextOnly; -- (void)setCreatesPlainTextOnly:(char)fp8; -- (char)createsRichText; -- (void)setCreatesRichText:(char)fp8; -- (char)allows8BitMimeParts; -- (void)setAllows8BitMimeParts:(char)fp8; -- (char)allowsBinaryMimeParts; -- (void)setAllowsBinaryMimeParts:(char)fp8; -- (char)allowsAppleDoubleAttachments; -- (void)setAllowsAppleDoubleAttachments:(char)fp8; -- (unsigned long)preferredEncoding; -- (void)setPreferredEncoding:(unsigned long)fp8; -- (char)signsOutput; -- (void)setSignsOutput:(char)fp8; -- (char)encryptsOutput; -- (void)setEncryptsOutput:(char)fp8; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MimeBody.h b/GPGMail/Source/PrivateHeaders/MimeBody.h deleted file mode 100644 index 987a9e30..00000000 --- a/GPGMail/Source/PrivateHeaders/MimeBody.h +++ /dev/null @@ -1,266 +0,0 @@ -/* MimeBody.h created by stephane on Wed 05-Jul-2000 */ - -#import - -#ifdef SNOW_LEOPARD_64 - -@class MimePart; - -@interface MimeBody : MessageBody -{ - MimePart *_topLevelPart; - unsigned int _preferredTextEncoding; - NSData *_bodyData; - unsigned int _preferredAlternative:16; - unsigned int _numAlternatives:16; -} - -+ (void)initialize; -+ (id)versionString; -+ (id)createMimeBoundary; -- (id)attributedString; -- (id)init; -- (void)dealloc; -- (id)topLevelPart; -- (void)setTopLevelPart:(id)arg1; -- (id)allPartsEnumerator; -- (id)attachmentPartsEnumerator; -- (unsigned int)preferredTextEncoding; -- (void)setPreferredTextEncoding:(unsigned int)arg1; -- (BOOL)isSignedByMe; -- (id)mimeType; -- (id)mimeSubtype; -- (id)partWithNumber:(id)arg1; -- (void)calculateNumberOfAttachmentsIfNeeded; -- (BOOL)_isPossiblySignedOrEncrypted; -- (void)decodeIfNecessary; -- (BOOL)hasAttachments; -- (unsigned int)numberOfAttachmentsSigned:(char *)arg1 encrypted:(char *)arg2 numberOfTNEFAttachments:(unsigned int *)arg3; -- (id)attachments; -- (id)attachmentViewControllers; -- (id)attachmentFilenames; -- (BOOL)isHTML; -- (BOOL)isRich; -- (BOOL)isMultipartRelated; -- (BOOL)isTextPlain; -- (int)numberOfAlternatives; -- (void)setPreferredAlternative:(int)arg1; -- (int)preferredAlternative; -- (id)preferredAlternativePart; -- (id)preferredBodyPart; -- (id)textHtmlPart; -- (id)webArchive; -- (id)parsedMessage; -- (id)dataForMimePart:(id)arg1; -- (id)bodyData; -- (void)setBodyData:(id)arg1; -- (void)flushCachedData; - -@end - -@interface MimeBody (StringRendering) -- (void)renderStringForJunk:(id)arg1; -- (void)renderString:(id)arg1; -@end - -#elif defined(SNOW_LEOPARD) - -@class MimePart; - -@interface MimeBody : MessageBody -{ - MimePart *_topLevelPart; - unsigned int _preferredTextEncoding; - NSData *_bodyData; - unsigned int _preferredAlternative:16; - unsigned int _numAlternatives:16; -} - -+ (void)initialize; -+ (id)versionString; -+ (id)createMimeBoundary; -- (id)attributedString; -- (id)init; -- (void)dealloc; -- (id)topLevelPart; -- (void)setTopLevelPart:(id)arg1; -- (id)allPartsEnumerator; -- (id)attachmentPartsEnumerator; -- (unsigned long)preferredTextEncoding; -- (void)setPreferredTextEncoding:(unsigned long)arg1; -- (BOOL)isSignedByMe; -- (id)mimeType; -- (id)mimeSubtype; -- (id)partWithNumber:(id)arg1; -- (void)calculateNumberOfAttachmentsIfNeeded; -- (BOOL)_isPossiblySignedOrEncrypted; -- (void)decodeIfNecessary; -- (BOOL)hasAttachments; -- (unsigned long)numberOfAttachmentsSigned:(char *)arg1 encrypted:(char *)arg2; -- (id)attachments; -- (id)attachmentViewControllers; -- (id)attachmentFilenames; -- (BOOL)isHTML; -- (BOOL)isRich; -- (BOOL)isMultipartRelated; -- (BOOL)isTextPlain; -- (int)numberOfAlternatives; -- (void)setPreferredAlternative:(int)arg1; -- (int)preferredAlternative; -- (id)preferredAlternativePart; -- (id)preferredBodyPart; -- (id)textHtmlPart; -- (id)webArchive; -- (id)parsedMessage; -- (id)dataForMimePart:(id)arg1; -- (id)bodyData; -- (void)setBodyData:(id)arg1; -- (void)flushCachedData; - -@end - -@interface MimeBody (StringRendering) -- (void)renderStringForJunk:(id)arg1; -- (void)renderString:(id)arg1; -@end - -#elif defined(LEOPARD) - -@class MimePart; - -@interface MimeBody : MessageBody -{ - MimePart *_topLevelPart; - unsigned int _preferredTextEncoding; - NSData *_bodyData; - unsigned int _preferredAlternative:16; - unsigned int _numAlternatives:16; -} - -+ (void)initialize; -+ (id)versionString; -+ (id)createMimeBoundary; -- (id)attributedString; -- (id)init; -- (void)dealloc; -- (id)topLevelPart; -- (void)setTopLevelPart:(id)fp8; -- (id)allPartsEnumerator; -- (id)attachmentPartsEnumerator; -- (unsigned long)preferredTextEncoding; -- (void)setPreferredTextEncoding:(unsigned long)fp8; -- (BOOL)isSignedByMe; -- (id)mimeType; -- (id)mimeSubtype; -- (id)partWithNumber:(id)fp8; -- (void)calculateNumberOfAttachmentsIfNeeded; -- (BOOL)_isPossiblySignedOrEncrypted; -- (void)decodeIfNecessary; -- (unsigned int)numberOfAttachmentsSigned:(char *)fp8 encrypted:(char *)fp12; -- (id)attachments; -- (id)attachmentFilenames; -- (BOOL)isHTML; -- (BOOL)isRich; -- (BOOL)isMultipartRelated; -- (BOOL)isTextPlain; -- (int)numberOfAlternatives; -- (void)setPreferredAlternative:(int)fp8; -- (int)preferredAlternative; -- (id)preferredAlternativePart; -- (id)preferredBodyPart; -- (id)textHtmlPart; -- (id)webArchive; -- (id)dataForMimePart:(id)fp8; -- (id)bodyData; -- (void)setBodyData:(id)fp8; -- (void)flushCachedData; - -@end - -@interface MimeBody (StringRendering) -- (void)renderStringForJunk:(id)fp8; -- (void)renderString:(id)fp8; -@end - -#elif defined(TIGER) - -@class MimePart; - -@interface MimeBody : MessageBody -{ - MimePart *_topLevelPart; - unsigned int _preferredTextEncoding; - unsigned int _preferredAlternative:16; - unsigned int _numAlternatives:16; -} - -+ (void)initialize; -+ (id)versionString; -+ (id)createMimeBoundary; -- (id)init; -- (void)dealloc; -- (id)topLevelPart; -- (void)setTopLevelPart:(id)fp8; -- (unsigned long)preferredTextEncoding; -- (void)setPreferredTextEncoding:(unsigned long)fp8; -- (id)mimeType; -- (id)mimeSubtype; -- (id)partWithNumber:(id)fp8; -- (void)calculateNumberOfAttachmentsIfNeeded; -- (id)attachments; -- (BOOL)_isPossiblySignedOrEncrypted; -- (void)calculateNumberOfAttachmentsDecodeIfNeeded; -- (BOOL)isHTML; -- (BOOL)isRich; -- (id)attributedString; -- (id)stringValueForJunkEvaluation:(BOOL)fp8; -- (int)numberOfAlternatives; -- (void)setPreferredAlternative:(int)fp8; -- (int)preferredAlternative; -- (id)preferredBodyPart; -- (id)textHtmlPart; -- (id)webArchive; - -@end - -#else - -@class MimePart; - -@interface MimeBody:MessageBody -{ - MimePart *_topLevelPart; // 12 = 0xc - unsigned int _preferredTextEncoding; // 16 = 0x10 - int _shouldDeleteAttachmentOnDealloc:1; // 20 = 0x14 - int _preferredAlternative:15; // 20 = 0x14 - int _numAlternatives:16; // 22 = 0x16 -} - -+ (void)initialize; -+ versionString; -+ createMimeBoundary; -- init; -- (void)dealloc; -- (char)makeUniqueTemporaryAttachmentInDirectory:fp8; -- topLevelPart; -- (void)setTopLevelPart:fp8; -- (unsigned long)preferredTextEncoding; -- (void)setPreferredTextEncoding:(unsigned long)fp8; -- mimeType; -- mimeSubtype; -- (void)calculateNumberOfAttachmentsIfNeeded; -- attachments; -- (char)isHTML; -- (char)isRich; -- attachmentDirectory; -- attributedString; -- stringForIndexing; -- (int)numberOfAlternatives; -- (void)setPreferredAlternative:(int)fp8; -- (int)preferredAlternative; -- preferredBodyPart; -- textHtmlPart; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MimePart.h b/GPGMail/Source/PrivateHeaders/MimePart.h deleted file mode 100644 index 27f1ed2f..00000000 --- a/GPGMail/Source/PrivateHeaders/MimePart.h +++ /dev/null @@ -1,799 +0,0 @@ -/* MimePart.h created by stephane on Thu 06-Jul-2000 */ - -#import - -/* - * -bodyData: "This method must be called off the main thread", according to the (caught) assertion failure - */ - -#ifdef SNOW_LEOPARD_64 - -@class MessageBody; -@class Message; -@class MessageStore; - -@interface MimePart : NSObject -{ - int _typeCode; - int _subtypeCode; - NSString *_type; - NSString *_subtype; - NSMutableDictionary *_bodyParameters; - NSString *_contentTransferEncoding; - id _encryptSignLock; - BOOL _isMimeEncrypted; - BOOL _isMimeSigned; - MessageBody *_decryptedMessageBody; - Message *_decryptedMessage; - MessageStore *_decryptedMessageStore; - NSMutableDictionary *_otherIvars; - struct _NSRange _range; - id _parentOrBody; - MimePart *_nextPart; -} - -- (void)dealloc; -- (void)finalize; -- (id)init; -- (int)typeCode; -- (id)type; -- (void)setType:(id)arg1; -- (int)subtypeCode; -- (id)subtype; -- (void)setSubtype:(id)arg1; -- (BOOL)isType:(id)arg1 subtype:(id)arg2; -- (BOOL)isTypeCode:(int)arg1 subtypeCode:(int)arg2; -- (id)bodyParameterForKey:(id)arg1; -- (void)setBodyParameter:(id)arg1 forKey:(id)arg2; -- (id)bodyParameterKeys; -- (id)disposition; -- (void)setDisposition:(id)arg1; -- (id)dispositionParameterForKey:(id)arg1; -- (void)setDispositionParameter:(id)arg1 forKey:(id)arg2; -- (id)dispositionParameterKeys; -- (id)contentDescription; -- (void)setContentDescription:(id)arg1; -- (id)contentID; -- (void)setContentID:(id)arg1; -@property(readonly) NSString *contentIDURLString; -- (id)contentLocation; -- (void)setContentLocation:(id)arg1; -- (id)languages; -- (void)setLanguages:(id)arg1; -- (id)parentPart; -- (id)firstChildPart; -- (id)nextSiblingPart; -- (id)subparts; -- (id)subpartAtIndex:(long long)arg1; -- (void)setSubparts:(id)arg1; -- (void)addSubpart:(id)arg1; -- (struct _NSRange)range; -- (void)setRange:(struct _NSRange)arg1; -- (id)bodyData; -- (id)bodyConvertedFromFlowedText; -- (id)mimeBody; -- (void)setMimeBody:(id)arg1; -- (id)description; -- (id)attachmentFilenameWithHiddenExtension:(char *)arg1; -- (id)attachmentFilename; -@property(readonly) BOOL isSigned; -@property(readonly) BOOL isEncrypted; -- (BOOL)hasCachedDataInStore; -- (unsigned int)numberOfAttachments; -- (void)getNumberOfAttachments:(unsigned int *)arg1 numberOfTNEFAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4; -- (id)attachments; -- (id)attachmentFilenames; -- (unsigned int)textEncoding; -- (unsigned long long)approximateRawSize; -- (unsigned long long)approximateDecodedSize; -- (BOOL)isReadableText; -@property(readonly) BOOL isImage; -- (BOOL)isCalendar; -- (BOOL)isToDo; -- (BOOL)isStationeryImage; -- (void)markAsStationeryImage; -- (id)_partThatIsAttachment; -- (BOOL)isMessageExternalBodyWithURL; -- (BOOL)shouldConsiderInlineOverridingExchangeServer; -- (BOOL)isAttachment; -- (BOOL)isRich; -- (BOOL)isHTML; -- (BOOL)usesKnownSignatureProtocol; -- (id)_createAttachment; -- (id)_createFileWrapper; -- (id)_getMessageAttachment:(unsigned long long)arg1; -- (id)attributedString; -- (id)fileWrapper; -- (id)_remoteFileWrapper; -- (void)download:(id)arg1 didReceiveResponse:(id)arg2; -- (void)download:(id)arg1 didReceiveDataOfLength:(unsigned long long)arg2; -- (void)download:(id)arg1 didFailWithError:(id)arg2; -- (void)downloadDidFinish:(id)arg1; -- (void)configureFileWrapper:(id)arg1; -- (id)startPart; -- (long long)numberOfAlternatives; -- (id)alternativeAtIndex:(long long)arg1; -- (id)signedData; -- (id)textPart; -- (id)textHtmlPart; -- (void)htmlString:(id *)arg1 createWebResource:(id *)arg2 forFileWrapper:(id)arg3 partNumber:(id)arg4; -- (id)htmlStringForMimePart:(id)arg1 attachment:(id)arg2; -- (id)decodedContent; -- (id)_archiveForData:(id)arg1 URL:(id)arg2 MIMEType:(id)arg3 textEncodingName:(id)arg4 frameName:(id)arg5 subresources:(id)arg6 subframeArchives:(id)arg7; -- (id)_archiveForData:(id)arg1 URL:(id)arg2 MIMEType:(id)arg3 textEncodingName:(id)arg4 frameName:(id)arg5; -- (id)_archiveForString:(id)arg1 URL:(id)arg2 needsPlainTextBodyClass:(BOOL)arg3; -- (id)_archiveForFileWrapper:(id)arg1 URL:(id)arg2; -- (id)_createArchiveWithConvertedPlainTextBodyClassFromArchive:(id)arg1; -- (id)parsedMessage; -- (id)webArchive; -- (id)decryptedMessageBodyIsEncrypted:(char *)arg1 isSigned:(char *)arg2; -- (id)todoPart; -- (void)clearCachedDecryptedMessageBody; -- (void)_setDecryptedMessageBody:(id)arg1 isEncrypted:(BOOL)arg2 isSigned:(BOOL)arg3; -@property(retain, nonatomic) MessageStore *decryptedMessageStore; // @synthesize decryptedMessageStore=_decryptedMessageStore; -@property(retain, nonatomic) Message *decryptedMessage; // @synthesize decryptedMessage=_decryptedMessage; -@property(retain, nonatomic) MessageBody *decryptedMessageBody; // @synthesize decryptedMessageBody=_decryptedMessageBody; -@property(nonatomic) BOOL isMimeSigned; // @synthesize isMimeSigned=_isMimeSigned; -@property(nonatomic) BOOL isMimeEncrypted; // @synthesize isMimeEncrypted=_isMimeEncrypted; -@property(copy) NSString *contentTransferEncoding; // @synthesize contentTransferEncoding=_contentTransferEncoding; - -@end - -@interface MimePart (DecodingSupport) -- (id)_fullMimeTypeEvenInsideAppleDouble; -- (id)decode; -- (id)decodeTextPlain; -- (id)decodeText; -- (id)decodeTextRichtext; -- (id)decodeTextRtf; -- (id)decodeTextEnriched; -- (id)decodeTextHtml; -- (id)decodeTextCalendar; -- (id)decodeMultipart; -- (id)decodeMultipartAlternative; -- (id)decodeMultipartRelated; -- (id)decodeMultipartFolder; -- (id)decodeApplicationApple_msg_composite_image; -- (id)decodeApplicationOctet_stream; -- (id)decodeApplicationZip; -- (id)decodeApplicationSmil; -- (id)decodeMessageDelivery_status; -- (id)decodeMessageRfc822; -- (id)decodeMessagePartial; -- (id)decodeMessageExternal_body; -- (id)decodeApplicationMac_binhex40; -- (id)decodeApplicationApplefile; -- (id)decodeMultipartAppledouble; -@end - -@interface MimePart (IMAPSupport) -- (BOOL)parseIMAPPropertyList:(id)arg1; -- (id)partNumber; -@end - -@interface MimePart (MatadorSupport) -- (BOOL)writeAttachmentToSpotlightCacheIfNeededUnder:(id)arg1; -@end - -@interface MimePart (MessageSupport) -- (BOOL)parseMimeBody; -@end - -@interface MimePart (SMIMEExtensions) -- (void)verifySignature:(id *)arg1; -- (id)decodeMultipartSigned; -- (id)_decodeApplicationPkcs7_mime:(id *)arg1; -- (id)decodeApplicationPkcs7_mime; -- (id)copyMessageSigners; -- (id)copySigningCertificates; -- (id)copySignerLabels; -- (id)createSignedPartWithData:(id)arg1 sender:(id)arg2 signatureData:(id *)arg3; -- (id)createEncryptedPartWithData:(id)arg1 recipients:(id)arg2 encryptedData:(id *)arg3; -@end - -@interface MimePart (StringRendering) -- (void)renderString:(id)arg1; -@end - -#elif defined(SNOW_LEOPARD) - -@class MessageBody; -@class Message; -@class MessageStore; - -@interface MimePart : NSObject -{ - int _typeCode; - int _subtypeCode; - NSString *_type; - NSString *_subtype; - NSMutableDictionary *_bodyParameters; - NSString *_contentTransferEncoding; - id _encryptSignLock; - BOOL _isMimeEncrypted; - BOOL _isMimeSigned; - MessageBody *_decryptedMessageBody; - Message *_decryptedMessage; - MessageStore *_decryptedMessageStore; - NSMutableDictionary *_otherIvars; - struct _NSRange _range; - id _parentOrBody; - MimePart *_nextPart; -} - -- (void)dealloc; -- (void)finalize; -- (id)init; -- (int)typeCode; -- (id)type; -- (void)setType:(id)arg1; -- (int)subtypeCode; -- (id)subtype; -- (void)setSubtype:(id)arg1; -- (BOOL)isType:(id)arg1 subtype:(id)arg2; -- (BOOL)isTypeCode:(int)arg1 subtypeCode:(int)arg2; -- (id)bodyParameterForKey:(id)arg1; -- (void)setBodyParameter:(id)arg1 forKey:(id)arg2; -- (id)bodyParameterKeys; -- (id)disposition; -- (void)setDisposition:(id)arg1; -- (id)dispositionParameterForKey:(id)arg1; -- (void)setDispositionParameter:(id)arg1 forKey:(id)arg2; -- (id)dispositionParameterKeys; -- (id)contentDescription; -- (void)setContentDescription:(id)arg1; -- (id)contentID; -- (void)setContentID:(id)arg1; -- (id)contentIDURLString; -- (id)contentLocation; -- (void)setContentLocation:(id)arg1; -- (id)languages; -- (void)setLanguages:(id)arg1; -- (id)parentPart; -- (id)firstChildPart; -- (id)nextSiblingPart; -- (id)subparts; -- (id)subpartAtIndex:(int)arg1; -- (void)setSubparts:(id)arg1; -- (void)addSubpart:(id)arg1; -- (struct _NSRange)range; -- (void)setRange:(struct _NSRange)arg1; -- (id)bodyData; -- (id)bodyConvertedFromFlowedText; -- (id)mimeBody; -- (void)setMimeBody:(id)arg1; -- (id)description; -- (id)attachmentFilenameWithHiddenExtension:(char *)arg1; -- (id)attachmentFilename; -- (BOOL)isSigned; -- (BOOL)isEncrypted; -- (BOOL)hasCachedDataInStore; -- (unsigned long)numberOfAttachments; -- (void)getNumberOfAttachments:(unsigned int *)arg1 isSigned:(char *)arg2 isEncrypted:(char *)arg3; -- (id)attachments; -- (id)attachmentFilenames; -- (unsigned long)textEncoding; -- (unsigned int)approximateRawSize; -- (unsigned int)approximateDecodedSize; -- (BOOL)isReadableText; -- (BOOL)isImage; -- (BOOL)isCalendar; -- (BOOL)isToDo; -- (BOOL)isStationeryImage; -- (void)markAsStationeryImage; -- (id)_partThatIsAttachment; -- (BOOL)isMessageExternalBodyWithURL; -- (BOOL)shouldConsiderInlineOverridingExchangeServer; -- (BOOL)isAttachment; -- (BOOL)isRich; -- (BOOL)isHTML; -- (BOOL)usesKnownSignatureProtocol; -- (id)_createAttachment; -- (id)_createFileWrapper; -- (id)_getMessageAttachment:(unsigned int)arg1; -- (id)attributedString; -- (id)fileWrapper; -- (id)_remoteFileWrapper; -- (void)download:(id)arg1 didReceiveResponse:(id)arg2; -- (void)download:(id)arg1 didReceiveDataOfLength:(unsigned int)arg2; -- (void)download:(id)arg1 didFailWithError:(id)arg2; -- (void)downloadDidFinish:(id)arg1; -- (void)configureFileWrapper:(id)arg1; -- (id)startPart; -- (int)numberOfAlternatives; -- (id)alternativeAtIndex:(int)arg1; -- (id)signedData; -- (id)textPart; -- (id)textHtmlPart; -- (void)htmlString:(id *)arg1 createWebResource:(id *)arg2 forFileWrapper:(id)arg3 partNumber:(id)arg4; -- (id)htmlStringForMimePart:(id)arg1 attachment:(id)arg2; -- (id)decodedContent; -- (id)_archiveForData:(id)arg1 URL:(id)arg2 MIMEType:(id)arg3 textEncodingName:(id)arg4 frameName:(id)arg5 subresources:(id)arg6 subframeArchives:(id)arg7; -- (id)_archiveForData:(id)arg1 URL:(id)arg2 MIMEType:(id)arg3 textEncodingName:(id)arg4 frameName:(id)arg5; -- (id)_archiveForString:(id)arg1 URL:(id)arg2 needsPlainTextBodyClass:(BOOL)arg3; -- (id)_archiveForFileWrapper:(id)arg1 URL:(id)arg2; -- (id)_createArchiveWithConvertedPlainTextBodyClassFromArchive:(id)arg1; -- (id)parsedMessage; -- (id)webArchive; -- (id)decryptedMessageBodyIsEncrypted:(char *)arg1 isSigned:(char *)arg2; -- (id)todoPart; -- (void)clearCachedDecryptedMessageBody; -- (void)_setDecryptedMessageBody:(id)arg1 isEncrypted:(BOOL)arg2 isSigned:(BOOL)arg3; -- (id)decryptedMessageStore; -- (void)setDecryptedMessageStore:(id)arg1; -- (id)decryptedMessage; -- (void)setDecryptedMessage:(id)arg1; -- (id)decryptedMessageBody; -- (void)setDecryptedMessageBody:(id)arg1; -- (BOOL)isMimeSigned; -- (void)setIsMimeSigned:(BOOL)arg1; -- (BOOL)isMimeEncrypted; -- (void)setIsMimeEncrypted:(BOOL)arg1; -- (id)contentTransferEncoding; -- (void)setContentTransferEncoding:(id)arg1; - -@end - -@interface MimePart (MatadorSupport) -- (BOOL)writeAttachmentToSpotlightCacheIfNeededUnder:(id)arg1; -@end - -@interface MimePart (StringRendering) -- (void)renderString:(id)arg1; -@end - -@interface MimePart (DecodingSupport) -- (id)_fullMimeTypeEvenInsideAppleDouble; -- (id)decode; -- (id)decodeTextPlain; -- (id)decodeText; -- (id)decodeTextRichtext; -- (id)decodeTextRtf; -- (id)decodeTextEnriched; -- (id)decodeTextHtml; -- (id)decodeTextCalendar; -- (id)decodeMultipart; -- (id)decodeMultipartAlternative; -- (id)decodeMultipartRelated; -- (id)decodeMultipartFolder; -- (id)decodeApplicationApple_msg_composite_image; -- (id)decodeApplicationOctet_stream; -- (id)decodeApplicationZip; -- (id)decodeApplicationSmil; -- (id)decodeMessageDelivery_status; -- (id)decodeMessageRfc822; -- (id)decodeMessagePartial; -- (id)decodeMessageExternal_body; -- (id)decodeApplicationMac_binhex40; -- (id)decodeApplicationApplefile; -- (id)decodeMultipartAppledouble; -@end - -@interface MimePart (IMAPSupport) -- (BOOL)parseIMAPPropertyList:(id)arg1; -- (id)partNumber; -@end - -@interface MimePart (MessageSupport) -- (BOOL)parseMimeBody; -@end - -@interface MimePart (SMIMEExtensions) -- (void)verifySignature:(id *)arg1; -- (id)decodeMultipartSigned; -- (id)_decodeApplicationPkcs7_mime:(id *)arg1; -- (id)decodeApplicationPkcs7_mime; -- (id)copyMessageSigners; -- (id)copySigningCertificates; -- (id)copySignerLabels; -- (id)createSignedPartWithData:(id)arg1 sender:(id)arg2 signatureData:(id *)arg3; -- (id)createEncryptedPartWithData:(id)arg1 recipients:(id)arg2 encryptedData:(id *)arg3; -@end - -#elif defined(LEOPARD) - -@interface MimePart : NSObject -{ - NSString *_type; - NSString *_subtype; - NSMutableDictionary *_bodyParameters; - NSString *_contentTransferEncoding; - NSMutableDictionary *_otherIvars; - struct _NSRange _range; - id _parentOrBody; - MimePart *_nextPart; -} - -+ (void)initialize; -- (void)dealloc; -- (void)finalize; -- (id)init; -- (id)type; -- (void)setType:(id)fp8; -- (id)subtype; -- (void)setSubtype:(id)fp8; -- (id)bodyParameterForKey:(id)fp8; -- (void)setBodyParameter:(id)fp8 forKey:(id)fp12; -- (id)bodyParameterKeys; -- (id)contentTransferEncoding; -- (void)setContentTransferEncoding:(id)fp8; -- (id)disposition; -- (void)setDisposition:(id)fp8; -- (id)dispositionParameterForKey:(id)fp8; -- (void)setDispositionParameter:(id)fp8 forKey:(id)fp12; -- (id)dispositionParameterKeys; -- (id)contentDescription; -- (void)setContentDescription:(id)fp8; -- (id)contentID; -- (void)setContentID:(id)fp8; -- (id)contentIDURLString; -- (id)contentLocation; -- (void)setContentLocation:(id)fp8; -- (id)languages; -- (void)setLanguages:(id)fp8; -- (id)parentPart; -- (id)firstChildPart; -- (id)nextSiblingPart; -- (id)subparts; -- (id)subpartAtIndex:(int)fp8; -- (void)setSubparts:(id)fp8; -- (void)addSubpart:(id)fp8; -- (struct _NSRange)range; -- (void)setRange:(struct _NSRange)fp8; -- (id)bodyData; -- (id)bodyConvertedFromFlowedText; -- (id)mimeBody; -- (void)setMimeBody:(id)fp8; -- (id)description; -- (id)attachmentFilenameWithHiddenExtension:(char *)fp8; -- (id)attachmentFilename; -- (BOOL)isSigned; -- (BOOL)isEncrypted; -- (BOOL)hasCachedDataInStore; -- (unsigned int)numberOfAttachments; -- (void)getNumberOfAttachments:(unsigned int *)fp8 isSigned:(char *)fp12 isEncrypted:(char *)fp16; -- (id)attachments; -- (id)attachmentFilenames; -- (unsigned long)textEncoding; -- (unsigned int)approximateRawSize; -- (BOOL)isReadableText; -- (BOOL)isImage; -- (BOOL)isCalendar; -- (BOOL)isToDo; -- (BOOL)isStationeryImage; -- (void)markAsStationeryImage; -- (id)_partThatIsAttachment; -- (BOOL)isMessageExternalBodyWithURL; -- (BOOL)isAttachment; -- (BOOL)isRich; -- (BOOL)isHTML; -- (BOOL)usesKnownSignatureProtocol; -- (id)_createAttachment; -- (id)_createFileWrapper; -- (id)attributedString; -- (id)fileWrapper; -- (id)_remoteFileWrapper; -- (void)download:(id)fp8 didReceiveResponse:(id)fp12; -- (void)download:(id)fp8 didReceiveDataOfLength:(unsigned int)fp12; -- (void)download:(id)fp8 didFailWithError:(id)fp12; -- (void)downloadDidFinish:(id)fp8; -- (id)safeFileWrapper; -- (void)configureFileWrapper:(id)fp8; -- (id)startPart; -- (int)numberOfAlternatives; -- (id)alternativeAtIndex:(int)fp8; -- (id)signedData; -- (id)textPart; -- (id)textHtmlPart; -- (void)htmlString:(id *)fp8 createWebResource:(id *)fp12 forFileWrapper:(id)fp16 partNumber:(id)fp20; -- (id)decodedContent; -- (id)_archiveForData:(id)fp8 URL:(id)fp12 MIMEType:(id)fp16 textEncodingName:(id)fp20 frameName:(id)fp24 subresources:(id)fp28 subframeArchives:(id)fp32; -- (id)_archiveForData:(id)fp8 URL:(id)fp12 MIMEType:(id)fp16 textEncodingName:(id)fp20 frameName:(id)fp24; -- (id)_archiveForString:(id)fp8 URL:(id)fp12 needsPlainTextBodyClass:(BOOL)fp16; -- (id)_archiveForFileWrapper:(id)fp8 URL:(id)fp12; -- (id)_createArchiveWithConvertedPlainTextBodyClassFromArchive:(id)fp8; -- (id)webArchive; -- (id)decryptedMessageBodyIsEncrypted:(char *)fp8 isSigned:(char *)fp12; -- (id)todoPart; -- (void)clearCachedDescryptedMessageBody; -- (void)_setDecryptedMessageBody:(id)fp8 isEncrypted:(BOOL)fp12 isSigned:(BOOL)fp16; - -@end - -@interface MimePart (DecodingSupport) -- (id)_fullMimeTypeEvenInsideAppleDouble; -- (id)contentsForTextSystem; -- (id)decodeTextPlain; -- (id)decodeText; -- (id)decodeTextRichtext; -- (id)decodeTextEnriched; -- (id)decodeTextHtml; -- (id)decodeTextCalendar; -- (id)decodeMultipart; -- (id)decodeMultipartAlternative; -- (id)decodeMultipartRelated; -- (id)decodeMultipartFolder; -- (id)decodeApplicationApple_msg_composite_image; -- (id)decodeApplicationOctet_stream; -- (id)decodeApplicationZip; -- (id)decodeMessageDelivery_status; -- (id)decodeMessageRfc822; -- (id)decodeMessagePartial; -- (id)decodeMessageExternal_body; -- (id)decodeApplicationMac_binhex40; -- (id)decodeApplicationApplefile; -- (id)decodeMultipartAppledouble; -@end - -@interface MimePart (IMAPSupport) -- (BOOL)parseIMAPPropertyList:(id)fp8; -- (id)partNumber; -@end - -@interface MimePart (MessageSupport) -- (BOOL)parseMimeBody; -@end - -@interface MimePart (SMIMEExtensions) -- (void)verifySignature:(id *)fp8; -- (id)decodeMultipartSigned; -- (id)_decodeApplicationPkcs7_mime:(id *)fp8; -- (id)decodeApplicationPkcs7_mime; -- (id)copyMessageSigners; -- (id)copySigningCertificates; -- (id)copySignerLabels; -- (id)createSignedPartWithData:(id)fp8 sender:(id)fp12 signatureData:(id *)fp16; -- (id)createEncryptedPartWithData:(id)fp8 recipients:(id)fp12 encryptedData:(id *)fp16; -@end - -@interface MimePart (MatadorSupport) -- (BOOL)writeAttachmentToSpotlightCacheIfNeededUnder:(id)fp8; -@end - -@interface MimePart (StringRendering) -- (void)renderString:(id)fp8; -@end - -#elif defined(TIGER) - -@class NSMutableArray; -@class NSMutableData; -@class NSMutableDictionary; -@class MessageHeaders; - -@interface MimePart : NSObject -{ - NSString *_type; - NSString *_subtype; - NSMutableDictionary *_bodyParameters; - NSString *_contentTransferEncoding; - NSMutableDictionary *_otherIvars; - struct _NSRange _range; - id _parentOrBody; - MimePart *_nextPart; -} - -+ (void)initialize; -- (void)dealloc; -- (void)finalize; -- (id)init; -- (id)type; -- (void)setType:(id)fp8; -- (id)subtype; -- (void)setSubtype:(id)fp8; -- (id)bodyParameterForKey:(id)fp8; -- (void)setBodyParameter:(id)fp8 forKey:(id)fp12; -- (id)bodyParameterKeys; -- (id)contentTransferEncoding; -- (void)setContentTransferEncoding:(id)fp8; -- (id)disposition; -- (void)setDisposition:(id)fp8; -- (id)dispositionParameterForKey:(id)fp8; -- (void)setDispositionParameter:(id)fp8 forKey:(id)fp12; -- (id)dispositionParameterKeys; -- (id)contentDescription; -- (void)setContentDescription:(id)fp8; -- (id)contentID; -- (void)setContentID:(id)fp8; -- (id)contentLocation; -- (void)setContentLocation:(id)fp8; -- (id)languages; -- (void)setLanguages:(id)fp8; -- (id)parentPart; -- (id)firstChildPart; -- (id)nextSiblingPart; -- (id)subparts; -- (id)subpartAtIndex:(int)fp8; -- (void)setSubparts:(id)fp8; -- (void)addSubpart:(id)fp8; -- (struct _NSRange)range; -- (void)setRange:(struct _NSRange)fp8; -- (id)bodyData; -- (id)mimeBody; -- (void)setMimeBody:(id)fp8; -- (id)description; -- (id)attachmentFilename; -- (BOOL)hasCachedDataInStore; -- (unsigned int)numberOfAttachments; -- (void)getNumberOfAttachments:(unsigned int *)fp8 isSigned:(char *)fp12 isEncrypted:(char *)fp16; -- (id)attachments; -- (unsigned long)textEncoding; -- (unsigned int)approximateRawSize; -- (BOOL)isReadableText; -- (BOOL)isAttachment; -- (BOOL)isRich; -- (BOOL)isHTML; -- (BOOL)usesKnownSignatureProtocol; -- (id)attributedString; -- (id)fileWrapper; -- (void)configureFileWrapper:(id)fp8; -- (id)stringValueForJunkEvaluation:(BOOL)fp8; -- (id)startPart; -- (int)numberOfAlternatives; -- (id)alternativeAtIndex:(int)fp8; -- (id)signedData; -- (id)textHtmlPart; -- (id)webArchive; -- (id)decryptedMessageBody; -- (void)clearCachedDescryptedMessageBody; -- (void)_setDecryptedMessageBody:(id)fp8; - -@end - -@interface MimePart (DecodingSupport) -- (id)_fullMimeTypeEvenInsideAppleDouble; -- (id)contentsForTextSystem; -- (id)decodeTextPlain; -- (id)decodeText; -- (id)decodeTextRichtext; -- (id)decodeTextEnriched; -- (id)decodeTextHtml; -- (id)decodeTextCalendar; -- (id)decodeMultipart; -- (id)decodeMultipartAlternative; -- (id)decodeMultipartFolder; -- (id)decodeApplicationOctet_stream; -- (id)decodeApplicationZip; -- (id)decodeMessageDelivery_status; -- (id)decodeMessageRfc822; -- (id)decodeMessagePartial; -- (id)decodeMessageExternal_body; -- (id)decodeApplicationMac_binhex40; -- (id)decodeApplicationApplefile; -- (id)decodeMultipartAppledouble; -@end - -@interface MimePart (IMAPSupport) -- (BOOL)parseIMAPPropertyList:(id)fp8; -- (id)partNumber; -@end - -@interface MimePart (MessageSupport) -- (void)_fixSubparts; -- (BOOL)parseMimeBody; -@end - -@interface MimePart (SMIMEExtensions) -- (id)decodeMultipartSigned; -- (id)decodeApplicationPkcs7_mime; -- (id)createSignedPartWithData:(id)fp8 sender:(id)fp12 signatureData:(id *)fp16; -- (id)createEncryptedPartWithData:(id)fp8 recipients:(id)fp12 encryptedData:(id *)fp16; -@end - -#else - -@interface MimePart:NSObject -{ - NSString *_type; // 4 = 0x4 - NSString *_subtype; // 8 = 0x8 - NSMutableDictionary *_bodyParameters; // 12 = 0xc - NSString *_contentTransferEncoding; // 16 = 0x10 - NSMutableDictionary *_otherIvars; // 20 = 0x14 - struct _NSRange _range; // 24 = 0x18 - id _parentOrBody; // 32 = 0x20 - MimePart *_nextPart; // 36 = 0x24 -} - -+ (void)initialize; -- (void)dealloc; -- init; -- type; -- (void)setType:fp8; -- subtype; -- (void)setSubtype:fp8; -- bodyParameterForKey:fp8; -- (void)setBodyParameter:fp8 forKey:fp12; -- bodyParameterKeys; -- contentTransferEncoding; -- (void)setContentTransferEncoding:fp8; -- disposition; -- (void)setDisposition:fp8; -- dispositionParameterForKey:fp8; -- (void)setDispositionParameter:fp8 forKey:fp12; -- dispositionParameterKeys; -- contentDescription; -- (void)setContentDescription:fp8; -- contentID; -- (void)setContentID:fp8; -- contentLocation; -- (void)setContentLocation:fp8; -- languages; -- (void)setLanguages:fp8; -- parentPart; -- firstChildPart; -- nextSiblingPart; -- subparts; -- subpartAtIndex:(int)fp8; -- (void)setSubparts:fp8; -- (void)addSubpart:fp8; -- (struct _NSRange)range; -- (void)setRange:(struct _NSRange)fp8; -- bodyData; -- mimeBody; -- (void)setMimeBody:fp8; -- description; -- attachmentFilename; -- (char)hasCachedDataInStore; -- (unsigned int)numberOfAttachments; -- (void)getNumberOfAttachments:(unsigned int *)fp8 isSigned:(char *)fp12 isEncrypted:(char *)fp16; -- attachments; -- (unsigned long)textEncoding; -- (unsigned int)approximateRawSize; -- (char)isReadableText; -- (char)isAttachment; -- (char)isRich; -- (char)isHTML; -- (char)usesKnownSignatureProtocol; -- attributedString; -- fileWrapper; -- (void)configureFileWrapper:fp8; -- stringForIndexing; -- startPart; -- (int)numberOfAlternatives; -- alternativeAtIndex:(int)fp8; -- signedData; -- textHtmlPart; -- decryptedMessageBody; -- (void)_setDecryptedMessageBody:fp8; - -@end - -@interface MimePart(DecodingSupport) -- _fullMimeTypeEvenInsideAppleDouble; -- contentsForTextSystem; -- decodeTextPlain; -- decodeText; -- decodeTextRichtext; -- decodeTextEnriched; -- decodeTextHtml; -- decodeMultipart; -- decodeMultipartAlternative; -- decodeMultipartFolder; -- decodeApplicationOctet_stream; -- decodeApplicationZip; -- decodeMessageDelivery_status; -- decodeMessageRfc822; -- decodeMessagePartial; -- decodeMessageExternal_body; -- decodeApplicationMac_binhex40; -- decodeApplicationApplefile; -- decodeMultipartAppledouble; -@end - -@interface MimePart(IMAPSupport) -- (char)parseIMAPPropertyList:fp8; -- partNumber; -@end - -@interface MimePart(MessageSupport) -- (char)parseMimeBody; -@end - -@interface MimePart(SMIMEExtensions) -- decodeMultipartSigned; -- decodeApplicationPkcs7_mime; -- createSignedPartWithData:fp8 sender:fp12 signatureData:(id *)fp16; -- createEncryptedPartWithData:fp8 recipients:fp12 encryptedData:(id *)fp16; -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MimeTextAttachment.h b/GPGMail/Source/PrivateHeaders/MimeTextAttachment.h deleted file mode 100644 index bf2be11b..00000000 --- a/GPGMail/Source/PrivateHeaders/MimeTextAttachment.h +++ /dev/null @@ -1,152 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -@class MimePart; - -@interface MimeTextAttachment : NSTextAttachment -{ - MimePart *_mimePart; -} - -+ (id)attachmentWithInternalAppleAttachmentData:(id)arg1 mimeBody:(id)arg2; -- (void)dealloc; -- (id)initWithMimePart:(id)arg1 andFileWrapper:(id)arg2; -- (id)initWithFileWrapper:(id)arg1; -- (id)initWithMimePart:(id)arg1; -- (void)_forceDownloadOfFileWrapperInBackground:(id)arg1; -- (void)forceDownloadOfFileWrapperInBackground; -- (id)fileWrapperForcingDownload; -- (id)fileWrapperForcingDownloadEvenIfExternalBody:(BOOL)arg1; -- (id)mimePart; -- (void)setMimePart:(id)arg1; -- (unsigned long long)approximateSize; -- (BOOL)isPlaceholder; -- (BOOL)hasBeenDownloaded; -- (BOOL)shouldDownloadAttachmentOnDisplay; - -@end - -#elif defined(SNOW_LEOPARD) - -@class MimePart; - -@interface MimeTextAttachment : NSTextAttachment -{ - MimePart *_mimePart; -} - -+ (id)attachmentWithInternalAppleAttachmentData:(id)arg1 mimeBody:(id)arg2; -- (void)dealloc; -- (id)initWithMimePart:(id)arg1 andFileWrapper:(id)arg2; -- (id)initWithFileWrapper:(id)arg1; -- (id)initWithMimePart:(id)arg1; -- (void)_forceDownloadOfFileWrapperInBackground:(id)arg1; -- (void)forceDownloadOfFileWrapperInBackground; -- (id)fileWrapperForcingDownload; -- (id)fileWrapperForcingDownloadEvenIfExternalBody:(BOOL)arg1; -- (id)mimePart; -- (void)setMimePart:(id)arg1; -- (unsigned int)approximateSize; -- (BOOL)isPlaceholder; -- (BOOL)hasBeenDownloaded; -- (BOOL)shouldDownloadAttachmentOnDisplay; - -@end - -#elif defined(LEOPARD) - -@class MimePart; -@class MimeBody; - -@interface MimeTextAttachment : NSTextAttachment -{ - MimeBody *_mimeBody; - MimePart *_mimePart; -} - -+ (id)attachmentWithInternalAppleAttachmentData:(id)fp8 mimeBody:(id)fp12; -- (void)dealloc; -- (void)finalize; -- (id)initWithMimePart:(id)fp8; -- (id)initWithMimePart:(id)fp8 andFileWrapper:(id)fp12; -- (void)_forceDownloadOfFileWrapperInBackground:(id)fp8; -- (void)forceDownloadOfFileWrapperInBackground; -- (id)fileWrapperForcingDownload; -- (id)fileWrapperForcingDownloadEvenIfExternalBody:(BOOL)fp8; -- (id)mimePart; -- (void)setMimePart:(id)fp8; -- (unsigned int)approximateSize; -- (BOOL)isPlaceholder; -- (BOOL)hasBeenDownloaded; -- (BOOL)shouldDownloadAttachmentOnDisplay; - -@end - -@interface MimeTextAttachment (IndexingSupport) -- (id)stringForIndexing; -@end - -@interface MimeTextAttachment (ScriptingSupport) -- (id)appleScriptNameOfAttachment; -- (id)appleScriptMIMEType; -- (void)_loadFileWrapperForCommand:(id)fp8; -- (void)_finishSaveAttachmentCommand:(id)fp8; -- (id)handleSaveAttachmentCommand:(id)fp8; -- (id)appleScriptApproximateSize; -- (id)uniqueID; -- (id)objectSpecifier; -@end - -#elif defined(TIGER) - -@class MimePart; - -@interface MimeTextAttachment : NSTextAttachment -{ - MimePart *_mimePart; -} - -+ (id)attachmentWithInternalAppleAttachmentData:(id)fp8 mimeBody:(id)fp12; -- (void)dealloc; -- (void)finalize; -- (id)initWithMimePart:(id)fp8; -- (id)initWithMimePart:(id)fp8 andFileWrapper:(id)fp12; -- (id)mimePart; -- (void)setMimePart:(id)fp8; -- (unsigned int)approximateSize; -- (BOOL)isPlaceholder; -- (BOOL)hasBeenDownloaded; -- (BOOL)shouldDownloadAttachmentOnDisplay; - -@end - -@interface MimeTextAttachment (IndexingSupport) -- (id)stringForIndexing; -@end - -#else - -@class MimePart; - -@interface MimeTextAttachment:NSTextAttachment -{ - MimePart *_mimePart; // 16 = 0x10 -} - -- (void)dealloc; -- initWithMimePart:fp8; -- mimePart; -- (void)setMimePart:fp8; -- (unsigned int)approximateSize; -- (char)isPlaceholder; -- (char)hasBeenDownloaded; -- (char)shouldDownloadAttachmentOnDisplay; - -@end - -@interface MimeTextAttachment(IndexingSupport) -- stringForIndexing; -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/MutableMessageHeaders.h b/GPGMail/Source/PrivateHeaders/MutableMessageHeaders.h deleted file mode 100644 index d57e9ebb..00000000 --- a/GPGMail/Source/PrivateHeaders/MutableMessageHeaders.h +++ /dev/null @@ -1,134 +0,0 @@ - -#import - -#ifdef SNOW_LEOPARD_64 - -@interface MutableMessageHeaders : MessageHeaders -{ - NSMutableDictionary *_headersAdded; - NSMutableArray *_headersRemoved; -} - -- (id)mutableCopy; -- (void)dealloc; -- (void)finalize; -- (id)allHeaderKeys; -- (BOOL)hasHeaderForKey:(id)arg1; -- (id)_createHeaderValueForKey:(id)arg1; -- (id)firstHeaderForKey:(id)arg1; -- (void)removeHeaderForKey:(id)arg1; -- (void)setHeader:(id)arg1 forKey:(id)arg2; -- (void)appendFromSpaceIfMissing; -- (void)_appendHeaderKey:(id)arg1 value:(id)arg2 toData:(id)arg3; -- (void)_appendAddedHeaderKey:(id)arg1 value:(id)arg2 toData:(id)arg3; -- (id)_encodedHeadersIncludingFromSpace:(BOOL)arg1; -- (void)setAddressList:(id)arg1 forKey:(id)arg2; -- (id)description; - -@end - -#elif defined(SNOW_LEOPARD) - -@interface MutableMessageHeaders : MessageHeaders -{ - NSMutableDictionary *_headersAdded; - NSMutableArray *_headersRemoved; -} - -- (id)mutableCopy; -- (void)dealloc; -- (void)finalize; -- (id)allHeaderKeys; -- (BOOL)hasHeaderForKey:(id)arg1; -- (id)_createHeaderValueForKey:(id)arg1; -- (id)firstHeaderForKey:(id)arg1; -- (void)removeHeaderForKey:(id)arg1; -- (void)setHeader:(id)arg1 forKey:(id)arg2; -- (void)appendFromSpaceIfMissing; -- (void)_appendHeaderKey:(id)arg1 value:(id)arg2 toData:(id)arg3; -- (void)_appendAddedHeaderKey:(id)arg1 value:(id)arg2 toData:(id)arg3; -- (id)_encodedHeadersIncludingFromSpace:(BOOL)arg1; -- (void)setAddressList:(id)arg1 forKey:(id)arg2; -- (id)description; - -@end - -#elif defined(LEOPARD) - -@interface MutableMessageHeaders : MessageHeaders -{ - NSMutableDictionary *_headersAdded; - NSMutableArray *_headersRemoved; -} - -- (id)mutableCopy; -- (void)dealloc; -- (void)finalize; -- (id)allHeaderKeys; -- (BOOL)hasHeaderForKey:(id)fp8; -- (id)_createHeaderValueForKey:(id)fp8; -- (id)firstHeaderForKey:(id)fp8; -- (void)removeHeaderForKey:(id)fp8; -- (void)setHeader:(id)fp8 forKey:(id)fp12; -- (void)appendFromSpaceIfMissing; -- (void)_appendHeaderKey:(id)fp8 value:(id)fp12 toData:(id)fp16; -- (void)_appendAddedHeaderKey:(id)fp8 value:(id)fp12 toData:(id)fp16; -- (id)_encodedHeadersIncludingFromSpace:(BOOL)fp8; -- (void)setAddressList:(id)fp8 forKey:(id)fp12; -- (id)description; - -@end - -#elif defined(TIGER) - -@class NSMutableDictionary; -@class NSMutableArray; -@class NSData; - -@interface MutableMessageHeaders : MessageHeaders -{ - NSMutableDictionary *_headersAdded; - NSMutableArray *_headersRemoved; -} - -- (id)mutableCopy; -- (void)dealloc; -- (void)finalize; -- (id)allHeaderKeys; -- (BOOL)hasHeaderForKey:(id)fp8; -- (id)_headerValueForKey:(id)fp8; -- (id)firstHeaderForKey:(id)fp8; -- (void)removeHeaderForKey:(id)fp8; -- (void)setHeader:(id)fp8 forKey:(id)fp12; -- (void)appendFromSpaceIfMissing; -- (void)_appendHeaderKey:(id)fp8 value:(id)fp12 toData:(id)fp16; -- (void)_appendAddedHeaderKey:(id)fp8 value:(id)fp12 toData:(id)fp16; -- (id)_encodedHeadersIncludingFromSpace:(BOOL)fp8; -- (void)setAddressList:(id)fp8 forKey:(id)fp12; - -@end - -#else - -@interface MutableMessageHeaders:MessageHeaders -{ - NSMutableDictionary *_headersAdded; // 12 = 0xc - NSMutableArray *_headersRemoved; // 16 = 0x10 -} - -- mutableCopy; -- (void)dealloc; -- allHeaderKeys; -- (char)hasHeaderForKey:fp8; -- _headerValueForKey:fp8; -- (void)removeHeaderForKey:fp8; -- (void)setHeader:fp8 forKey:fp12; -- (void)appendFromSpaceIfMissing; -- (void)_appendHeaderKey:fp8 value:fp12 toData:fp16; -- (void)_appendAddedHeaderKey:fp8 value:fp12 toData:fp16; -- _encodedHeadersIncludingFromSpace:(char)fp8; -- (void)setAddressList:fp8 forKey:fp12; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/NSData+Message.h b/GPGMail/Source/PrivateHeaders/NSData+Message.h deleted file mode 100644 index f29a43d6..00000000 --- a/GPGMail/Source/PrivateHeaders/NSData+Message.h +++ /dev/null @@ -1,389 +0,0 @@ -/* NSData+Message.h created by dave on Tue 21-Nov-2000 */ - -#import - -#ifdef SNOW_LEOPARD_64 - -@interface NSMutableData (MimeDataEncoding) -- (void)appendQuotedPrintableDataForHeaderBytes:(const char *)arg1 length:(unsigned long long)arg2; -@end - -@interface NSMutableData (NSDataUtils) -- (void)appendCString:(const char *)arg1; -- (void)appendByte:(BOOL)arg1; -- (void)convertNetworkLineEndingsToUnix; -@end - -@interface NSMutableData (RFC2231Support) -- (void)appendRFC2231CompliantValue:(id)arg1 forKey:(id)arg2 withEncodingHint:(unsigned int)arg3; -@end - -@interface NSData (HFSDataConversion) -- (id)wrapperForAppleFileDataWithFileEncodingHint:(unsigned int)arg1; -- (id)wrapperForBinHex40DataWithFileEncodingHint:(unsigned int)arg1; -@end - -@interface NSData (MimeDataEncoding) -+ (unsigned long long)quotedPrintableLengthOfHeaderBytes:(const char *)arg1 length:(unsigned long long)arg2; -- (id)decodeQuotedPrintableForText:(BOOL)arg1; -- (id)encodeQuotedPrintableForText:(BOOL)arg1; -- (id)encodeQuotedPrintableForText:(BOOL)arg1 allowCancel:(BOOL)arg2; -- (id)decodeBase64; -- (BOOL)isValidBase64Data; -- (id)encodeBase64WithoutLineBreaks; -- (id)encodeBase64; -- (id)encodeBase64AllowCancel:(BOOL)arg1; -- (id)decodeModifiedBase64; -- (id)encodeModifiedBase64; -- (id)encodeBase64HeaderData; -@end - -@interface NSData (NSDataUtils) -- (id)unquotedFromSpaceDataWithRange:(struct _NSRange)arg1; -- (id)quotedFromSpaceDataForMessage; -- (struct _NSRange)rangeOfRFC822HeaderData; -- (id)subdataToIndex:(unsigned long long)arg1; -- (id)subdataFromIndex:(unsigned long long)arg1; -- (struct _NSRange)rangeOfData:(id)arg1; -- (struct _NSRange)rangeOfData:(id)arg1 options:(unsigned long long)arg2; -- (struct _NSRange)rangeOfData:(id)arg1 options:(unsigned long long)arg2 range:(struct _NSRange)arg3; -- (struct _NSRange)rangeOfByteFromSet:(id)arg1; -- (struct _NSRange)rangeOfByteFromSet:(id)arg1 options:(unsigned long long)arg2; -- (struct _NSRange)rangeOfByteFromSet:(id)arg1 options:(unsigned long long)arg2 range:(struct _NSRange)arg3; -- (struct _NSRange)rangeOfCString:(const char *)arg1; -- (struct _NSRange)rangeOfCString:(const char *)arg1 options:(unsigned long long)arg2; -- (struct _NSRange)rangeOfCString:(const char *)arg1 options:(unsigned long long)arg2 range:(struct _NSRange)arg3; -- (id)componentsSeparatedByData:(id)arg1; -- (id)dataByConvertingUnixNewlinesToNetwork; -- (id)MD5Digest; -@end - -@interface NSData (ToDoPasteboardUnarchiving) -- (id)todosFromPasteboardData; -@end - -@interface NSData (UuEnDecode) -- (id)uudecodedDataIntoFile:(id *)arg1 mode:(unsigned int *)arg2; -- (id)uuencodedDataWithFile:(id)arg1 mode:(unsigned int)arg2; -@end - -#elif defined(LEOPARD) - -@interface NSMutableData (MimeDataEncoding) -- (void)appendQuotedPrintableDataForHeaderBytes:(const char *)fp8 length:(unsigned int)fp12; -@end - -@interface NSMutableData (RFC2231Support) -- (void)appendRFC2231CompliantValue:(id)fp8 forKey:(id)fp12 withEncodingHint:(unsigned long)fp16; -@end - -@interface NSMutableData (NSDataUtils) -- (void)appendCString:(const char *)fp8; -- (void)appendByte:(BOOL)fp8; -- (void)convertNetworkLineEndingsToUnix; -@end - -@interface NSData (MimeDataEncoding) -+ (unsigned int)quotedPrintableLengthOfHeaderBytes:(const char *)fp8 length:(unsigned int)fp12; -- (id)decodeQuotedPrintableForText:(BOOL)fp8; -- (id)encodeQuotedPrintableForText:(BOOL)fp8; -- (id)encodeQuotedPrintableForText:(BOOL)fp8 allowCancel:(BOOL)fp12; -- (id)decodeBase64; -- (BOOL)isValidBase64Data; -- (id)encodeBase64WithoutLineBreaks; -- (id)encodeBase64; -- (id)encodeBase64AllowCancel:(BOOL)fp8; -- (id)decodeModifiedBase64; -- (id)encodeModifiedBase64; -- (id)encodeBase64HeaderData; -@end - -@interface NSData (HFSDataConversion) -- (id)wrapperForAppleFileDataWithFileEncodingHint:(unsigned long)fp8; -- (id)wrapperForBinHex40DataWithFileEncodingHint:(unsigned long)fp8; -@end - -@interface NSData (NSDataUtils) -- (id)unquotedFromSpaceDataWithRange:(struct _NSRange)fp8; -- (id)quotedFromSpaceDataForMessage; -- (struct _NSRange)rangeOfRFC822HeaderData; -- (id)subdataToIndex:(unsigned int)fp8; -- (id)subdataFromIndex:(unsigned int)fp8; -- (struct _NSRange)rangeOfData:(id)fp8; -- (struct _NSRange)rangeOfData:(id)fp8 options:(unsigned int)fp12; -- (struct _NSRange)rangeOfData:(id)fp8 options:(unsigned int)fp12 range:(struct _NSRange)fp16; -- (struct _NSRange)rangeOfByteFromSet:(id)fp8; -- (struct _NSRange)rangeOfByteFromSet:(id)fp8 options:(unsigned int)fp12; -- (struct _NSRange)rangeOfByteFromSet:(id)fp8 options:(unsigned int)fp12 range:(struct _NSRange)fp16; -- (struct _NSRange)rangeOfCString:(const char *)fp8; -- (struct _NSRange)rangeOfCString:(const char *)fp8 options:(unsigned int)fp12; -- (struct _NSRange)rangeOfCString:(const char *)fp8 options:(unsigned int)fp12 range:(struct _NSRange)fp16; -- (id)componentsSeparatedByData:(id)fp8; -- (id)dataByConvertingUnixNewlinesToNetwork; -- (id)MD5Digest; -@end - -@interface NSData (UuEnDeCode) -- (id)uudecodedDataIntoFile:(id *)fp8 mode:(unsigned int *)fp12; -- (id)uuencodedDataWithFile:(id)fp8 mode:(unsigned int)fp12; -@end - -@interface NSData (ToDoPasteboardUnarchiving) -- (id)todosFromPasteboardData; -@end - -@interface NSData (ActuallyFromFoundation) -- (id)_web_guessedMIMETypeForExtension:(id)fp8; -@end - -#elif defined(SNOW_LEOPARD) - -@interface NSMutableData (MimeDataEncoding) -- (void)appendQuotedPrintableDataForHeaderBytes:(const char *)arg1 length:(unsigned int)arg2; -@end - -@interface NSMutableData (RFC2231Support) -- (void)appendRFC2231CompliantValue:(id)arg1 forKey:(id)arg2 withEncodingHint:(unsigned long)arg3; -@end - -@interface NSMutableData (NSDataUtils) -- (void)appendCString:(const char *)arg1; -- (void)appendByte:(BOOL)arg1; -- (void)convertNetworkLineEndingsToUnix; -@end - -@interface NSData (HFSDataConversion) -- (id)wrapperForAppleFileDataWithFileEncodingHint:(unsigned long)arg1; -- (id)wrapperForBinHex40DataWithFileEncodingHint:(unsigned long)arg1; -@end - -@interface NSData (MimeDataEncoding) -+ (unsigned int)quotedPrintableLengthOfHeaderBytes:(const char *)arg1 length:(unsigned int)arg2; -- (id)decodeQuotedPrintableForText:(BOOL)arg1; -- (id)encodeQuotedPrintableForText:(BOOL)arg1; -- (id)encodeQuotedPrintableForText:(BOOL)arg1 allowCancel:(BOOL)arg2; -- (id)decodeBase64; -- (BOOL)isValidBase64Data; -- (id)encodeBase64WithoutLineBreaks; -- (id)encodeBase64; -- (id)encodeBase64AllowCancel:(BOOL)arg1; -- (id)decodeModifiedBase64; -- (id)encodeModifiedBase64; -- (id)encodeBase64HeaderData; -@end - -@interface NSData (NSDataUtils) -- (id)unquotedFromSpaceDataWithRange:(struct _NSRange)arg1; -- (id)quotedFromSpaceDataForMessage; -- (struct _NSRange)rangeOfRFC822HeaderData; -- (id)subdataToIndex:(unsigned int)arg1; -- (id)subdataFromIndex:(unsigned int)arg1; -- (struct _NSRange)rangeOfData:(id)arg1; -- (struct _NSRange)rangeOfData:(id)arg1 options:(unsigned int)arg2; -- (struct _NSRange)rangeOfData:(id)arg1 options:(unsigned int)arg2 range:(struct _NSRange)arg3; -- (struct _NSRange)rangeOfByteFromSet:(id)arg1; -- (struct _NSRange)rangeOfByteFromSet:(id)arg1 options:(unsigned int)arg2; -- (struct _NSRange)rangeOfByteFromSet:(id)arg1 options:(unsigned int)arg2 range:(struct _NSRange)arg3; -- (struct _NSRange)rangeOfCString:(const char *)arg1; -- (struct _NSRange)rangeOfCString:(const char *)arg1 options:(unsigned int)arg2; -- (struct _NSRange)rangeOfCString:(const char *)arg1 options:(unsigned int)arg2 range:(struct _NSRange)arg3; -- (id)componentsSeparatedByData:(id)arg1; -- (id)dataByConvertingUnixNewlinesToNetwork; -- (id)MD5Digest; -@end - -@interface NSData (ToDoPasteboardUnarchiving) -- (id)todosFromPasteboardData; -@end - -@interface NSData (UuEnDecode) -- (id)uudecodedDataIntoFile:(id *)arg1 mode:(unsigned int *)arg2; -- (id)uuencodedDataWithFile:(id)arg1 mode:(unsigned int)arg2; -@end - -#elif defined(LEOPARD) - -@interface NSMutableData (MimeDataEncoding) -- (void)appendQuotedPrintableDataForHeaderBytes:(const char *)fp8 length:(unsigned int)fp12; -@end - -@interface NSMutableData (RFC2231Support) -- (void)appendRFC2231CompliantValue:(id)fp8 forKey:(id)fp12 withEncodingHint:(unsigned long)fp16; -@end - -@interface NSMutableData (NSDataUtils) -- (void)appendCString:(const char *)fp8; -- (void)appendByte:(BOOL)fp8; -- (void)convertNetworkLineEndingsToUnix; -@end - -@interface NSData (MimeDataEncoding) -+ (unsigned int)quotedPrintableLengthOfHeaderBytes:(const char *)fp8 length:(unsigned int)fp12; -- (id)decodeQuotedPrintableForText:(BOOL)fp8; -- (id)encodeQuotedPrintableForText:(BOOL)fp8; -- (id)encodeQuotedPrintableForText:(BOOL)fp8 allowCancel:(BOOL)fp12; -- (id)decodeBase64; -- (BOOL)isValidBase64Data; -- (id)encodeBase64WithoutLineBreaks; -- (id)encodeBase64; -- (id)encodeBase64AllowCancel:(BOOL)fp8; -- (id)decodeModifiedBase64; -- (id)encodeModifiedBase64; -- (id)encodeBase64HeaderData; -@end - -@interface NSData (HFSDataConversion) -- (id)wrapperForAppleFileDataWithFileEncodingHint:(unsigned long)fp8; -- (id)wrapperForBinHex40DataWithFileEncodingHint:(unsigned long)fp8; -@end - -@interface NSData (NSDataUtils) -- (id)unquotedFromSpaceDataWithRange:(struct _NSRange)fp8; -- (id)quotedFromSpaceDataForMessage; -- (struct _NSRange)rangeOfRFC822HeaderData; -- (id)subdataToIndex:(unsigned int)fp8; -- (id)subdataFromIndex:(unsigned int)fp8; -- (struct _NSRange)rangeOfData:(id)fp8; -- (struct _NSRange)rangeOfData:(id)fp8 options:(unsigned int)fp12; -- (struct _NSRange)rangeOfData:(id)fp8 options:(unsigned int)fp12 range:(struct _NSRange)fp16; -- (struct _NSRange)rangeOfByteFromSet:(id)fp8; -- (struct _NSRange)rangeOfByteFromSet:(id)fp8 options:(unsigned int)fp12; -- (struct _NSRange)rangeOfByteFromSet:(id)fp8 options:(unsigned int)fp12 range:(struct _NSRange)fp16; -- (struct _NSRange)rangeOfCString:(const char *)fp8; -- (struct _NSRange)rangeOfCString:(const char *)fp8 options:(unsigned int)fp12; -- (struct _NSRange)rangeOfCString:(const char *)fp8 options:(unsigned int)fp12 range:(struct _NSRange)fp16; -- (id)componentsSeparatedByData:(id)fp8; -- (id)dataByConvertingUnixNewlinesToNetwork; -- (id)MD5Digest; -@end - -@interface NSData (UuEnDeCode) -- (id)uudecodedDataIntoFile:(id *)fp8 mode:(unsigned int *)fp12; -- (id)uuencodedDataWithFile:(id)fp8 mode:(unsigned int)fp12; -@end - -@interface NSData (ToDoPasteboardUnarchiving) -- (id)todosFromPasteboardData; -@end - -#elif defined(TIGER) - -@interface NSMutableData (MimeDataEncoding) -- (void)appendQuotedPrintableDataForHeaderBytes:(const char *)fp8 length:(unsigned int)fp12; -@end - -@interface NSMutableData (RFC2231Support) -- (void)appendRFC2231CompliantValue:(id)fp8 forKey:(id)fp12; -@end - -@interface NSMutableData (NSDataUtils) -- (void)appendCString:(const char *)fp8; -- (void)appendByte:(BOOL)fp8; -- (void)convertNetworkLineEndingsToUnix; -@end - -@interface NSData (MimeDataEncoding) -+ (unsigned int)quotedPrintableLengthOfHeaderBytes:(const char *)fp8 length:(unsigned int)fp12; -- (id)decodeQuotedPrintableForText:(BOOL)fp8; -- (id)encodeQuotedPrintableForText:(BOOL)fp8; -- (id)encodeQuotedPrintableForText:(BOOL)fp8 allowCancel:(BOOL)fp12; -- (id)decodeBase64; -- (BOOL)isValidBase64Data; -- (id)encodeBase64WithoutLineBreaks; -- (id)encodeBase64; -- (id)encodeBase64AllowCancel:(BOOL)fp8; -- (id)decodeModifiedBase64; -- (id)encodeModifiedBase64; -- (id)encodeBase64HeaderData; -@end - -@interface NSData (HFSDataConversion) -- (id)wrapperForAppleFileDataWithFileEncodingHint:(unsigned long)fp8; -- (id)wrapperForBinHex40DataWithFileEncodingHint:(unsigned long)fp8; -@end - -@interface NSData (NSDataUtils) -- (id)unquotedFromSpaceDataWithRange:(struct _NSRange)fp8; -- (id)quotedFromSpaceDataForMessage; -- (struct _NSRange)rangeOfRFC822HeaderData; -- (id)subdataToIndex:(unsigned int)fp8; -- (id)subdataFromIndex:(unsigned int)fp8; -- (struct _NSRange)rangeOfData:(id)fp8; -- (struct _NSRange)rangeOfData:(id)fp8 options:(unsigned int)fp12; -- (struct _NSRange)rangeOfData:(id)fp8 options:(unsigned int)fp12 range:(struct _NSRange)fp16; -- (struct _NSRange)rangeOfByteFromSet:(id)fp8; -- (struct _NSRange)rangeOfByteFromSet:(id)fp8 options:(unsigned int)fp12; -- (struct _NSRange)rangeOfByteFromSet:(id)fp8 options:(unsigned int)fp12 range:(struct _NSRange)fp16; -- (struct _NSRange)rangeOfCString:(const char *)fp8; -- (struct _NSRange)rangeOfCString:(const char *)fp8 options:(unsigned int)fp12; -- (struct _NSRange)rangeOfCString:(const char *)fp8 options:(unsigned int)fp12 range:(struct _NSRange)fp16; -- (id)componentsSeparatedByData:(id)fp8; -- (id)dataByConvertingUnixNewlinesToNetwork; -- (id)MD5Digest; -@end - -@interface NSData (UuEnDeCode) -- (id)uudecodedDataIntoFile:(id *)fp8 mode:(unsigned int *)fp12; -- (id)uuencodedDataWithFile:(id)fp8 mode:(unsigned int)fp12; -@end - -#else - -@interface NSMutableData(MimeDataEncoding) -- (void)appendQuotedPrintableDataForHeaderBytes:(const STR)fp8 length:(unsigned int)fp12; -@end - -@interface NSData(MimeDataEncoding) -+ (unsigned int)quotedPrintableLengthOfHeaderBytes:(const STR)fp8 length:(unsigned int)fp12; -- decodeQuotedPrintableForText:(char)fp8; -- encodeQuotedPrintableForText:(char)fp8; -- decodeBase64; -- (char)isValidBase64Data; -- encodeBase64WithoutLineBreaks; -- encodeBase64; -- decodeModifiedBase64; -- encodeModifiedBase64; -- encodeBase64HeaderData; -@end - -@interface NSMutableData(RFC2231Support) -- (void)appendRFC2231CompliantValue:fp8 forKey:fp12; -@end - -@interface NSMutableData(NSDataUtils) -- (void)appendCString:(const STR)fp8; -- (void)appendByte:(char)fp8; -- (void)convertNetworkLineEndingsToUnix; -@end - -@interface NSData(NSDataUtils) -- unquotedFromSpaceDataWithRange:(struct _NSRange)fp8; -- quotedFromSpaceDataForMessage; -- (struct _NSRange)rangeOfRFC822HeaderData; -- subdataToIndex:(unsigned int)fp8; -- subdataFromIndex:(unsigned int)fp8; -- (struct _NSRange)rangeOfData:fp8; -- (struct _NSRange)rangeOfData:fp8 options:(unsigned int)fp12; -- (struct _NSRange)rangeOfData:fp8 options:(unsigned int)fp12 range:(struct _NSRange)fp16; -- (struct _NSRange)rangeOfByteFromSet:fp8; -- (struct _NSRange)rangeOfByteFromSet:fp8 options:(unsigned int)fp12; -- (struct _NSRange)rangeOfByteFromSet:fp8 options:(unsigned int)fp12 range:(struct _NSRange)fp16; -- (struct _NSRange)rangeOfCString:(const STR)fp8; -- (struct _NSRange)rangeOfCString:(const STR)fp8 options:(unsigned int)fp12; -- (struct _NSRange)rangeOfCString:(const STR)fp8 options:(unsigned int)fp12 range:(struct _NSRange)fp16; -- componentsSeparatedByData:fp8; -- dataByConvertingUnixNewlinesToNetwork; -- MD5Digest; -@end - -@interface NSData(HFSDataConversion) -- wrapperForAppleFileDataWithFileEncodingHint:(unsigned long)fp8; -- wrapperForBinHex40DataWithFileEncodingHint:(unsigned long)fp8; -@end - -@interface NSData(UuEnDeCode) -- uudecodedDataIntoFile:(id *)fp8 mode:(unsigned int *)fp12; -- uuencodedDataWithFile:fp8 mode:(unsigned int)fp12; -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/NSDataMessageStore.h b/GPGMail/Source/PrivateHeaders/NSDataMessageStore.h deleted file mode 100644 index d050bfe9..00000000 --- a/GPGMail/Source/PrivateHeaders/NSDataMessageStore.h +++ /dev/null @@ -1,91 +0,0 @@ -#ifdef SNOW_LEOPARD_64 - -#import - -@interface NSDataMessageStore : MessageStore -{ - NSData *_data; -} - -- (id)initWithData:(id)arg1; -- (id)init; -- (id)initWithMailboxUid:(id)arg1 readOnly:(BOOL)arg2; -- (id)willDealloc; -- (void)dealloc; -- (id)storePath; -- (void)writeUpdatedMessageDataToDisk; -- (id)message; -- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)_cachedBodyForMessage:(id)arg1 valueIfNotPresent:(id)arg2; -- (id)_cachedHeadersForMessage:(id)arg1 valueIfNotPresent:(id)arg2; - -@end - -#elif defined(SNOW_LEOPARD) - -@interface NSDataMessageStore : MessageStore -{ - NSData *_data; -} - -- (id)initWithData:(id)arg1; -- (id)init; -- (id)initWithMailboxUid:(id)arg1 readOnly:(BOOL)arg2; -- (id)willDealloc; -- (void)dealloc; -- (id)storePath; -- (void)writeUpdatedMessageDataToDisk; -- (id)message; -- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; -- (id)_cachedBodyForMessage:(id)arg1 valueIfNotPresent:(id)arg2; -- (id)_cachedHeadersForMessage:(id)arg1 valueIfNotPresent:(id)arg2; - -@end - -#elif defined(LEOPARD) - -#import - -@interface NSDataMessageStore : MessageStore -{ - NSData *_data; -} - -- (id)initWithData:(id)fp8; -- (void)dealloc; -- (void)finalize; -- (id)storePath; -- (void)writeUpdatedMessageDataToDisk; -- (id)message; -- (id)headerDataForMessage:(id)fp8; -- (id)bodyDataForMessage:(id)fp8; -- (id)_cachedBodyForMessage:(id)fp8 valueIfNotPresent:(id)fp12; -- (id)_cachedHeadersForMessage:(id)fp8 valueIfNotPresent:(id)fp12; - -@end - -#elif defined(TIGER) - -#import - -@interface NSDataMessageStore : MessageStore -{ - NSData *_data; -} - -- (id)initWithData:(id)fp8; -- (void)dealloc; -- (void)finalize; -- (id)storePath; -- (void)writeUpdatedMessageDataToDisk; -- (id)message; -- (id)headerDataForMessage:(id)fp8; -- (id)bodyDataForMessage:(id)fp8; -- (id)_cachedBodyForMessage:(id)fp8 valueIfNotPresent:(id)fp12; -- (id)_cachedHeadersForMessage:(id)fp8 valueIfNotPresent:(id)fp12; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/NSPreferences.h b/GPGMail/Source/PrivateHeaders/NSPreferences.h deleted file mode 100644 index 190e11d9..00000000 --- a/GPGMail/Source/PrivateHeaders/NSPreferences.h +++ /dev/null @@ -1,412 +0,0 @@ -/* NSPreferences.h created by dave on Tue 14-Sep-1999 */ - -#import - -// Taken from /System/Library/Frameworks/AppKit.framework/AppKit - -/* - * Preferences are read from mainBundle's PreferencePanels.plist file: - * Keys are - * ContentSize (string representation of a NSSize), - * UsesButtons (string with 0 or 1) - * PreferencePanels (array of dictionaries): - * Class (string) - * Identifier (string) - */ - -#ifdef SNOW_LEOPARD_64 - -@protocol NSPreferencesModule -- (id)viewForPreferenceNamed:(id)arg1; -- (id)imageForPreferenceNamed:(id)arg1; -- (BOOL)hasChangesPending; -- (void)saveChanges; -- (void)willBeDisplayed; -- (void)initializeFromDefaults; -- (void)didChange; -- (void)moduleWillBeRemoved; -- (void)moduleWasInstalled; -- (BOOL)moduleCanBeRemoved; -- (BOOL)preferencesWindowShouldClose; -@end - -@interface NSPreferences : NSObject -{ - NSWindow *_preferencesPanel; - NSBox *_preferenceBox; - NSMatrix *_moduleMatrix; - NSButtonCell *_okButton; - NSButtonCell *_cancelButton; - NSButtonCell *_applyButton; - NSMutableArray *_preferenceTitles; - NSMutableArray *_preferenceModules; - NSMutableDictionary *_masterPreferenceViews; - NSMutableDictionary *_currentSessionPreferenceViews; - NSBox *_originalContentView; - BOOL _isModal; - double _constrainedWidth; - id _currentModule; - void *_reserved; -} - -+ (id)sharedPreferences; -+ (void)setDefaultPreferencesClass:(Class)arg1; -+ (Class)defaultPreferencesClass; -- (id)init; -- (void)dealloc; -- (void)addPreferenceNamed:(id)arg1 owner:(id)arg2; -- (void)_setupToolbar; -- (void)_setupUI; -- (struct CGSize)preferencesContentSize; -- (void)showPreferencesPanel; -- (void)showPreferencesPanelForOwner:(id)arg1; -- (long long)showModalPreferencesPanelForOwner:(id)arg1; -- (long long)showModalPreferencesPanel; -- (void)ok:(id)arg1; -- (void)cancel:(id)arg1; -- (void)apply:(id)arg1; -- (void)_selectModuleOwner:(id)arg1; -- (id)windowTitle; -- (void)confirmCloseSheetIsDone:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; -- (BOOL)windowShouldClose:(id)arg1; -- (void)windowDidResize:(id)arg1; -- (struct CGSize)windowWillResize:(id)arg1 toSize:(struct CGSize)arg2; -- (BOOL)usesButtons; -- (id)_itemIdentifierForModule:(id)arg1; -- (void)toolbarItemClicked:(id)arg1; -- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; -- (id)toolbarDefaultItemIdentifiers:(id)arg1; -- (id)toolbarAllowedItemIdentifiers:(id)arg1; -- (id)toolbarSelectableItemIdentifiers:(id)arg1; - -@end - -@interface NSPreferencesModule : NSObject -{ - NSBox *_preferencesView; - struct CGSize _minSize; - BOOL _hasChanges; - void *_reserved; -} - -+ (id)sharedInstance; -- (void)dealloc; -- (void)finalize; -- (id)init; -- (id)preferencesNibName; -- (void)setPreferencesView:(id)arg1; -- (id)viewForPreferenceNamed:(id)arg1; -- (id)imageForPreferenceNamed:(id)arg1; -- (id)titleForIdentifier:(id)arg1; -- (BOOL)hasChangesPending; -- (void)saveChanges; -- (void)willBeDisplayed; -- (void)initializeFromDefaults; -- (void)didChange; -- (struct CGSize)minSize; -- (void)setMinSize:(struct CGSize)arg1; -- (void)moduleWillBeRemoved; -- (void)moduleWasInstalled; -- (BOOL)moduleCanBeRemoved; -- (BOOL)preferencesWindowShouldClose; -- (BOOL)isResizable; - -@end - -#elif defined(SNOW_LEOPARD) - -@protocol NSPreferencesModule -- (id)viewForPreferenceNamed:(id)arg1; -- (id)imageForPreferenceNamed:(id)arg1; -- (BOOL)hasChangesPending; -- (void)saveChanges; -- (void)willBeDisplayed; -- (void)initializeFromDefaults; -- (void)didChange; -- (void)moduleWillBeRemoved; -- (void)moduleWasInstalled; -- (BOOL)moduleCanBeRemoved; -- (BOOL)preferencesWindowShouldClose; -@end - -@interface NSPreferences : NSObject -{ - NSWindow *_preferencesPanel; - NSBox *_preferenceBox; - NSMatrix *_moduleMatrix; - NSButtonCell *_okButton; - NSButtonCell *_cancelButton; - NSButtonCell *_applyButton; - NSMutableArray *_preferenceTitles; - NSMutableArray *_preferenceModules; - NSMutableDictionary *_masterPreferenceViews; - NSMutableDictionary *_currentSessionPreferenceViews; - NSBox *_originalContentView; - BOOL _isModal; - float _constrainedWidth; - id _currentModule; - void *_reserved; -} - -+ (id)sharedPreferences; -+ (void)setDefaultPreferencesClass:(Class)arg1; -+ (Class)defaultPreferencesClass; -- (id)init; -- (void)dealloc; -- (void)addPreferenceNamed:(id)arg1 owner:(id)arg2; -- (void)_setupToolbar; -- (void)_setupUI; -- (struct _NSSize)preferencesContentSize; -- (void)showPreferencesPanel; -- (void)showPreferencesPanelForOwner:(id)arg1; -- (int)showModalPreferencesPanelForOwner:(id)arg1; -- (int)showModalPreferencesPanel; -- (void)ok:(id)arg1; -- (void)cancel:(id)arg1; -- (void)apply:(id)arg1; -- (void)_selectModuleOwner:(id)arg1; -- (id)windowTitle; -- (void)confirmCloseSheetIsDone:(id)arg1 returnCode:(int)arg2 contextInfo:(void *)arg3; -- (BOOL)windowShouldClose:(id)arg1; -- (void)windowDidResize:(id)arg1; -- (struct _NSSize)windowWillResize:(id)arg1 toSize:(struct _NSSize)arg2; -- (BOOL)usesButtons; -- (id)_itemIdentifierForModule:(id)arg1; -- (void)toolbarItemClicked:(id)arg1; -- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; -- (id)toolbarDefaultItemIdentifiers:(id)arg1; -- (id)toolbarAllowedItemIdentifiers:(id)arg1; -- (id)toolbarSelectableItemIdentifiers:(id)arg1; - -@end - -@interface NSPreferencesModule : NSObject -{ - NSBox *_preferencesView; - struct _NSSize _minSize; - BOOL _hasChanges; - void *_reserved; -} - -+ (id)sharedInstance; -- (void)dealloc; -- (void)finalize; -- (id)init; -- (id)preferencesNibName; -- (void)setPreferencesView:(id)arg1; -- (id)viewForPreferenceNamed:(id)arg1; -- (id)imageForPreferenceNamed:(id)arg1; -- (id)titleForIdentifier:(id)arg1; -- (BOOL)hasChangesPending; -- (void)saveChanges; -- (void)willBeDisplayed; -- (void)initializeFromDefaults; -- (void)didChange; -- (struct _NSSize)minSize; -- (void)setMinSize:(struct _NSSize)arg1; -- (void)moduleWillBeRemoved; -- (void)moduleWasInstalled; -- (BOOL)moduleCanBeRemoved; -- (BOOL)preferencesWindowShouldClose; -- (BOOL)isResizable; - -@end - -#elif defined(LEOPARD) || defined(TIGER) - -@protocol NSPreferencesModule -- (id)viewForPreferenceNamed:(id)fp8; -- (id)imageForPreferenceNamed:(id)fp8; -- (BOOL)hasChangesPending; -- (void)saveChanges; -- (void)willBeDisplayed; -- (void)initializeFromDefaults; -- (void)didChange; -- (void)moduleWillBeRemoved; -- (void)moduleWasInstalled; -- (BOOL)moduleCanBeRemoved; -- (BOOL)preferencesWindowShouldClose; -@end - -@interface NSPreferences : NSObject -{ - NSWindow *_preferencesPanel; - NSBox *_preferenceBox; - NSMatrix *_moduleMatrix; - NSButtonCell *_okButton; - NSButtonCell *_cancelButton; - NSButtonCell *_applyButton; - NSMutableArray *_preferenceTitles; - NSMutableArray *_preferenceModules; - NSMutableDictionary *_masterPreferenceViews; - NSMutableDictionary *_currentSessionPreferenceViews; - NSBox *_originalContentView; - BOOL _isModal; - float _constrainedWidth; - id _currentModule; - void *_reserved; -} - -+ (id)sharedPreferences; -+ (void)setDefaultPreferencesClass:(Class)fp8; -+ (Class)defaultPreferencesClass; -- (id)init; -- (void)dealloc; -- (void)addPreferenceNamed:(id)fp8 owner:(id)fp12; -- (void)_setupToolbar; -- (void)_setupUI; -- (struct _NSSize)preferencesContentSize; -- (void)showPreferencesPanel; -- (void)showPreferencesPanelForOwner:(id)fp8; -- (int)showModalPreferencesPanelForOwner:(id)fp8; -- (int)showModalPreferencesPanel; -- (void)ok:(id)fp8; -- (void)cancel:(id)fp8; -- (void)apply:(id)fp8; -- (void)_selectModuleOwner:(id)fp8; -- (id)windowTitle; -- (void)confirmCloseSheetIsDone:(id)fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (BOOL)windowShouldClose:(id)fp8; -- (void)windowDidResize:(id)fp8; -- (struct _NSSize)windowWillResize:(id)fp8 toSize:(struct _NSSize)fp12; -- (BOOL)usesButtons; -- (id)_itemIdentifierForModule:(id)fp8; -- (void)toolbarItemClicked:(id)fp8; -- (id)toolbar:(id)fp8 itemForItemIdentifier:(id)fp12 willBeInsertedIntoToolbar:(BOOL)fp16; -- (id)toolbarDefaultItemIdentifiers:(id)fp8; -- (id)toolbarAllowedItemIdentifiers:(id)fp8; -- (id)toolbarSelectableItemIdentifiers:(id)fp8; - -@end - -@interface NSPreferencesModule : NSObject -{ - NSBox *_preferencesView; - struct _NSSize _minSize; - BOOL _hasChanges; - void *_reserved; -} - -+ (id)sharedInstance; -- (void)dealloc; -- (void)finalize; -- (id)init; -- (id)preferencesNibName; -- (void)setPreferencesView:(id)fp8; -- (id)viewForPreferenceNamed:(id)fp8; -- (id)imageForPreferenceNamed:(id)fp8; -- (id)titleForIdentifier:(id)fp8; -- (BOOL)hasChangesPending; -- (void)saveChanges; -- (void)willBeDisplayed; -- (void)initializeFromDefaults; -- (void)didChange; -- (struct _NSSize)minSize; -- (void)setMinSize:(struct _NSSize)fp8; -- (void)moduleWillBeRemoved; -- (void)moduleWasInstalled; -- (BOOL)moduleCanBeRemoved; -- (BOOL)preferencesWindowShouldClose; -- (BOOL)isResizable; - -@end - -#else - -@protocol NSPreferencesModule -- (char)preferencesWindowShouldClose; -- (char)moduleCanBeRemoved; -- (void)moduleWasInstalled; -- (void)moduleWillBeRemoved; -- (void)didChange; -- (void)initializeFromDefaults; -- (void)willBeDisplayed; -- (void)saveChanges; -- (char)hasChangesPending; -- imageForPreferenceNamed:fp8; -- viewForPreferenceNamed:fp8; -@end - -@interface NSPreferences:NSObject -{ - NSWindow *_preferencesPanel; // 4 = 0x4 - NSBox *_preferenceBox; // 8 = 0x8 - NSMatrix *_moduleMatrix; // 12 = 0xc - NSButtonCell *_okButton; // 16 = 0x10 - NSButtonCell *_cancelButton; // 20 = 0x14 - NSButtonCell *_applyButton; // 24 = 0x18 - NSMutableArray *_preferenceTitles; // 28 = 0x1c - NSMutableArray *_preferenceModules; // 32 = 0x20 - NSMutableDictionary *_masterPreferenceViews; // 36 = 0x24 - NSMutableDictionary *_currentSessionPreferenceViews; // 40 = 0x28 - NSBox *_originalContentView; // 44 = 0x2c - char _isModal; // 48 = 0x30 - float _constrainedWidth; // 52 = 0x34 - id _currentModule; // 56 = 0x38 - void *_reserved; // 60 = 0x3c -} - -+ sharedPreferences; -+ (void)setDefaultPreferencesClass:(Class)fp8; -+ (Class)defaultPreferencesClass; -- init; -- (void)dealloc; -- (void)addPreferenceNamed:fp8 owner:fp12; -- (void)_setupToolbar; -- (void)_setupUI; -- (struct _NSSize)preferencesContentSize; -- (void)showPreferencesPanel; -- (void)showPreferencesPanelForOwner:fp8; -- (int)showModalPreferencesPanelForOwner:fp8; -- (int)showModalPreferencesPanel; -- (void)ok:fp8; -- (void)cancel:fp8; -- (void)apply:fp8; -- (void)_selectModuleOwner:fp8; -- windowTitle; -- (void)confirmCloseSheetIsDone:fp8 returnCode:(int)fp12 contextInfo:(void *)fp16; -- (char)windowShouldClose:fp8; -- (void)windowDidResize:fp8; -- (struct _NSSize)windowWillResize:fp8 toSize:(struct _NSSize)fp12; -- (char)usesButtons; -- _itemIdentifierForModule:fp8; -- (void)toolbarItemClicked:fp8; -- toolbar:fp8 itemForItemIdentifier:fp12 willBeInsertedIntoToolbar:(BOOL)fp16; -- toolbarDefaultItemIdentifiers:fp8; -- toolbarAllowedItemIdentifiers:fp8; -- toolbarSelectableItemIdentifiers:fp8; - -@end - -@interface NSPreferencesModule:NSObject -{ - NSBox *_preferencesView; // 4 = 0x4 - struct _NSSize _minSize; // 8 = 0x8 - char _hasChanges; // 16 = 0x10 - void *_reserved; // 20 = 0x14 -} - -+ sharedInstance; -- (void)dealloc; -- init; -- preferencesNibName; -- (void)setPreferencesView:fp8; -- viewForPreferenceNamed:fp8; -- imageForPreferenceNamed:fp8; -- titleForIdentifier:fp8; -- (char)hasChangesPending; -- (void)saveChanges; -- (void)willBeDisplayed; -- (void)initializeFromDefaults; -- (void)didChange; -- (struct _NSSize)minSize; -- (void)setMinSize:(struct _NSSize)fp8; -- (void)moduleWillBeRemoved; -- (void)moduleWasInstalled; -- (char)moduleCanBeRemoved; -- (char)preferencesWindowShouldClose; -- (char)isResizable; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/NSString+Message.h b/GPGMail/Source/PrivateHeaders/NSString+Message.h deleted file mode 100644 index e32ffae4..00000000 --- a/GPGMail/Source/PrivateHeaders/NSString+Message.h +++ /dev/null @@ -1,590 +0,0 @@ -/* NSString+Message.h created by dave on Sun 09-Jan-2000 */ - -#import - -#ifdef SNOW_LEOPARD_64 - -@interface NSString (EmailAddressString) -+ (id)nameExtensions; -+ (id)nameExtensionsThatDoNotNeedCommas; -+ (id)partialSurnames; -+ (id)formattedAddressWithName:(id)arg1 email:(id)arg2 useQuotes:(BOOL)arg3; -- (id)uncommentedAddress; -- (id)uncommentedAddressRespectingGroups; -- (BOOL)isEmptyGroup; -- (id)addressComment; -- (void)firstName:(id *)arg1 middleName:(id *)arg2 lastName:(id *)arg3 extension:(id *)arg4; -- (BOOL)appearsToBeAnInitial; -- (id)addressList; -- (id)trimCommasSpacesQuotes; -- (id)componentsSeparatedByCommaRespectingQuotesAndParens; -- (id)componentsSeparatedByCharactersRespectingQuotesAndParens:(id)arg1; -- (id)searchStringComponents; -- (BOOL)isLegalEmailAddress; -- (id)addressDomain; -@end - -@interface NSString (FormatFlowedSupport) -- (id)convertFromFlowedText:(unsigned long long)arg1; -@end - -@interface NSString (IMAPNameEncoding) -- (id)encodedIMAPMailboxName; -- (id)decodedIMAPMailboxName; -@end - -@interface NSString (LibraryID) -+ (id)stringWithLibraryID:(long long)arg1; -- (id)initWithLibraryID:(long long)arg1; -@end - -@interface NSString (MimeCharsetSupport) -- (id)bestMimeCharset; -- (id)_bestMimeCharset:(id)arg1; -- (id)bestMimeCharsetUsingHint:(unsigned int)arg1; -@end - -@interface NSString (MimeEnrichedReader) -+ (id)htmlStringFromMimeRichTextString:(id)arg1; -+ (id)htmlStringFromMimeEnrichedString:(id)arg1; -+ (id)stringFromMimeEnrichedString:(id)arg1; -@end - -@interface NSString (MimeHeaderEncoding) -- (id)encodedHeaderData; -- (id)encodedHeaderDataWithEncodingHint:(unsigned int)arg1; -- (id)encodedHeaderDataWithEncodingHint:(unsigned int)arg1 encodingUsed:(unsigned int *)arg2; -- (id)decodeMimeHeaderValue; -- (id)decodeMimeHeaderValueWithCharsetHint:(id)arg1; -@end - -@interface NSString (NSStringUtils) -+ (id)messageIDStringWithDomainHint:(id)arg1; -+ (id)messageIDStringFromCidUrl:(id)arg1; -+ (id)stringWithData:(id)arg1 encoding:(unsigned long long)arg2; -+ (id)stringWithAttachmentCharacter; -+ (id)createUniqueIdString; -- (unsigned int)hexIntValue; -- (unsigned long long)hexLongLongValue; -- (id)smartCapitalizedString; -- (id)stringByReplacingString:(id)arg1 withString:(id)arg2; -- (id)stringByRemovingCharactersInSet:(id)arg1; -- (id)stringByApplyingBodyClassName:(id)arg1; -- (id)createStringByApplyingBodyClassName:(id)arg1; -- (id)stringByChangingBodyTagToDiv; -- (id)stringByRemovingLineEndingsForHTML; -- (id)stringByReplacingNonBreakingSpacesWithString:(id)arg1; -- (id)specialSlash; -- (id)stringByReplacingSlashesWithSpecialSlashes; -- (id)stringByReplacingSpecialSlashesWithSlashes; -- (id)stringByReplacingSpecialSlashesWith:(id)arg1; -- (BOOL)containsOnlyWhitespace; -- (BOOL)containsOnlyBreakingWhitespace; -- (id)stringByLocalizingReOrFwdPrefix; -- (unsigned long long)effectivePrefixLength; -- (id)fileSystemString; -- (id)stringWithNormalizedUnicodeCompositionForMail; -- (id)stringSuitableForHTML; -- (id)stringWithNoExtraSpaces; -- (long long)compareAsInts:(id)arg1; -- (id)MD5Digest; -- (id)messageIDSubstring; -- (id)encodedMessageID; -- (id)encodedMessageIDString; -- (id)createStringByEndTruncatingForWidth:(double)arg1 usingFont:(id)arg2; -- (id)uniqueFilenameWithRespectToFilenames:(id)arg1; -- (long long)caseInsensitiveCompareExcludingXDash:(id)arg1; -- (id)componentsSeparatedByPattern:(id)arg1; -- (id)spotlightQueryStringWithQualifier:(int)arg1; -- (BOOL)isValidUniqueIdString; -- (id)feedURLString; -- (id)firstLine; -- (id)secondToLastPathComponent; -- (BOOL)hasPrefixIgnoreCaseAndDiacritics:(id)arg1; -- (BOOL)isEqualToStringIgnoreCaseAndDiacritics:(id)arg1; -- (BOOL)isEqualToStringIgnoringCase:(id)arg1; -- (id)validURL; -- (BOOL)isEqualExceptForFinalSlash:(id)arg1; -@end - -@interface NSString (PathUtils) -+ (id)pathWithDirectory:(id)arg1 filename:(id)arg2 extension:(id)arg3; -- (id)uniquePathWithMaximumLength:(unsigned long long)arg1; -- (BOOL)deletePath; -- (BOOL)isSubdirectoryOfPath:(id)arg1; -- (id)stringByReallyAbbreviatingWithTildeInPath; -- (id)betterStringByResolvingSymlinksInPath; -@end - -@interface NSString (StationeryUtilities) -- (id)urlStringByIncrementingCompositeVersionNumber; -- (id)urlStringByInsertingCompositeVersionNumber; -@end - -@interface NSString (iCalInvitationSupport) -- (BOOL)isICalInvitation; -@end - -#elif defined(SNOW_LEOPARD) - -@interface NSString (EmailAddressString) -+ (id)nameExtensions; -+ (id)nameExtensionsThatDoNotNeedCommas; -+ (id)partialSurnames; -+ (id)formattedAddressWithName:(id)arg1 email:(id)arg2 useQuotes:(BOOL)arg3; -- (id)uncommentedAddress; -- (id)uncommentedAddressRespectingGroups; -- (BOOL)isEmptyGroup; -- (id)addressComment; -- (void)firstName:(id *)arg1 middleName:(id *)arg2 lastName:(id *)arg3 extension:(id *)arg4; -- (BOOL)appearsToBeAnInitial; -- (id)addressList; -- (id)trimCommasSpacesQuotes; -- (id)componentsSeparatedByCommaRespectingQuotesAndParens; -- (id)componentsSeparatedByCharactersRespectingQuotesAndParens:(id)arg1; -- (id)searchStringComponents; -- (BOOL)isLegalEmailAddress; -- (id)addressDomain; -@end - -@interface NSString (FormatFlowedSupport) -- (id)convertFromFlowedText:(unsigned int)arg1; -@end - -@interface NSString (iCalInvitationSupport) -- (BOOL)isICalInvitation; -@end - -@interface NSString (IMAPNameEncoding) -- (id)encodedIMAPMailboxName; -- (id)decodedIMAPMailboxName; -@end - -@interface NSString (LibraryID) -+ (id)stringWithLibraryID:(long long)arg1; -- (id)initWithLibraryID:(long long)arg1; -@end - -@interface NSString (MimeCharsetSupport) -- (id)bestMimeCharset; -- (id)_bestMimeCharset:(id)arg1; -- (id)bestMimeCharsetUsingHint:(unsigned long)arg1; -@end - -@interface NSString (MimeEnrichedReader) -+ (id)htmlStringFromMimeRichTextString:(id)arg1; -+ (id)htmlStringFromMimeEnrichedString:(id)arg1; -+ (id)stringFromMimeEnrichedString:(id)arg1; -@end - -@interface NSString (MimeHeaderEncoding) -- (id)encodedHeaderData; -- (id)encodedHeaderDataWithEncodingHint:(unsigned long)arg1; -- (id)encodedHeaderDataWithEncodingHint:(unsigned long)arg1 encodingUsed:(unsigned int *)arg2; -- (id)decodeMimeHeaderValue; -- (id)decodeMimeHeaderValueWithCharsetHint:(id)arg1; -@end - -@interface NSString (StationeryUtilities) -- (id)urlStringByIncrementingCompositeVersionNumber; -- (id)urlStringByInsertingCompositeVersionNumber; -@end - -@interface NSString (NSStringUtils) -+ (id)messageIDStringWithDomainHint:(id)arg1; -+ (id)messageIDStringFromCidUrl:(id)arg1; -+ (id)stringWithData:(id)arg1 encoding:(unsigned int)arg2; -+ (id)stringWithAttachmentCharacter; -+ (id)createUniqueIdString; -- (unsigned int)hexIntValue; -- (unsigned long long)hexLongLongValue; -- (id)smartCapitalizedString; -- (id)stringByReplacingString:(id)arg1 withString:(id)arg2; -- (id)stringByRemovingCharactersInSet:(id)arg1; -- (id)stringByApplyingBodyClassName:(id)arg1; -- (id)createStringByApplyingBodyClassName:(id)arg1; -- (id)stringByChangingBodyTagToDiv; -- (id)stringByRemovingLineEndingsForHTML; -- (id)stringByReplacingNonBreakingSpacesWithString:(id)arg1; -- (id)specialSlash; -- (id)stringByReplacingSlashesWithSpecialSlashes; -- (id)stringByReplacingSpecialSlashesWithSlashes; -- (id)stringByReplacingSpecialSlashesWith:(id)arg1; -- (BOOL)containsOnlyWhitespace; -- (BOOL)containsOnlyBreakingWhitespace; -- (id)stringByLocalizingReOrFwdPrefix; -- (unsigned int)effectivePrefixLength; -- (id)fileSystemString; -- (id)stringWithNormalizedUnicodeCompositionForMail; -- (id)stringSuitableForHTML; -- (id)stringWithNoExtraSpaces; -- (int)compareAsInts:(id)arg1; -- (id)MD5Digest; -- (id)messageIDSubstring; -- (id)encodedMessageID; -- (id)encodedMessageIDString; -- (id)createStringByEndTruncatingForWidth:(float)arg1 usingFont:(id)arg2; -- (id)uniqueFilenameWithRespectToFilenames:(id)arg1; -- (int)caseInsensitiveCompareExcludingXDash:(id)arg1; -- (id)componentsSeparatedByPattern:(id)arg1; -- (id)spotlightQueryStringWithQualifier:(int)arg1; -- (BOOL)isValidUniqueIdString; -- (id)feedURLString; -- (id)firstLine; -- (id)secondToLastPathComponent; -- (BOOL)hasPrefixIgnoreCaseAndDiacritics:(id)arg1; -- (BOOL)isEqualToStringIgnoreCaseAndDiacritics:(id)arg1; -- (BOOL)isEqualToStringIgnoringCase:(id)arg1; -- (id)validURL; -- (BOOL)isEqualExceptForFinalSlash:(id)arg1; -@end - -@interface NSString (PathUtils) -+ (id)pathWithDirectory:(id)arg1 filename:(id)arg2 extension:(id)arg3; -- (id)uniquePathWithMaximumLength:(unsigned int)arg1; -- (BOOL)deletePath; -- (BOOL)isSubdirectoryOfPath:(id)arg1; -- (id)stringByReallyAbbreviatingWithTildeInPath; -- (id)betterStringByResolvingSymlinksInPath; -@end - -@interface NSString (AtomicAddress) -- (id)atomicAddress; -- (id)atomicAddressStringForRepresentedRecord:(id)arg1 type:(int)arg2; -- (id)atomicAddressStringForRepresentedRecord:(id)arg1 type:(int)arg2 showComma:(BOOL)arg3; -- (id)atomicAddressArrayForRepresentedRecord:(id)arg1 type:(int)arg2; -- (id)atomicAddressWithRepresentedRecord:(id)arg1 type:(int)arg2; -- (id)atomicAddressWithRepresentedRecord:(id)arg1 type:(int)arg2 showComma:(BOOL)arg3; -@end - -@interface NSString (FindPanelSupport) -- (struct _NSRange)findString:(id)arg1 selectedRange:(struct _NSRange)arg2 options:(unsigned long)arg3 wrap:(BOOL)arg4; -@end - -@interface NSString (MailAdditions) -- (void)_drawInRect:(struct CGRect)arg1 font:(id)arg2 color:(id)arg3 truncate:(BOOL)arg4; -- (void)drawEtchedInRect:(struct CGRect)arg1 withTopColor:(id)arg2 bottomColor:(id)arg3 shadowBelow:(BOOL)arg4 font:(id)arg5 centered:(BOOL)arg6 flipped:(BOOL)arg7 truncate:(BOOL)arg8; -- (BOOL)doesMatchLocalizedDateName:(id)arg1; -- (BOOL)matchesLocalizedDateIntervalFrom:(id *)arg1 to:(id *)arg2; -@end - -@interface NSString (HTMLConversion) -- (id)markupString; -- (id)webArchiveForRange:(struct _NSRange)arg1; -- (id)webArchiveForRange:(struct _NSRange)arg1 signatureID:(id *)arg2; -@end - -@interface NSString (ToDoAdditions) -+ (id)nodeIDForTodoID:(id)arg1 nodeClass:(id)arg2; -- (id)todoIDFromNodeID:(id)arg1; -@end - -#elif defined(LEOPARD) - -@interface NSString (IMAPNameEncoding) -- (id)encodedIMAPMailboxName; -- (id)decodedIMAPMailboxName; -@end - -@interface NSString (MimeEnrichedReader) -+ (id)htmlStringFromMimeRichTextString:(id)fp8; -+ (id)htmlStringFromMimeEnrichedString:(id)fp8; -+ (id)stringFromMimeEnrichedString:(id)fp8; -@end - -@interface NSString (MimeHeaderEncoding) -- (id)encodedHeaderData; -- (id)encodedHeaderDataWithEncodingHint:(unsigned long)fp8; -- (id)decodeMimeHeaderValue; -- (id)decodeMimeHeaderValueWithCharsetHint:(id)fp8; -@end - -@interface NSString (FormatFlowedSupport) -- (id)convertFromFlowedText:(unsigned int)fp8; -@end - -@interface NSString (EmailAddressString) -+ (id)nameExtensions; -+ (id)nameExtensionsThatDoNotNeedCommas; -+ (id)partialSurnames; -+ (id)formattedAddressWithName:(id)fp8 email:(id)fp12 useQuotes:(BOOL)fp16; -- (id)uncommentedAddress; -- (id)uncommentedAddressRespectingGroups; -- (BOOL)isEmptyGroup; -- (id)addressComment; -- (void)firstName:(id *)fp8 middleName:(id *)fp12 lastName:(id *)fp16 extension:(id *)fp20; -- (BOOL)appearsToBeAnInitial; -- (id)addressList; -- (id)trimCommasSpacesQuotes; -- (id)componentsSeparatedByCommaRespectingQuotesAndParens; -- (id)componentsSeparatedByCharactersRespectingQuotesAndParens:(id)fp8; -- (id)searchStringComponents; -- (BOOL)isLegalEmailAddress; -- (id)addressDomain; -@end - -@interface NSString (StationeryUtilities) -- (id)urlStringByIncrementingCompositeVersionNumber; -- (id)urlStringByInsertingCompositeVersionNumber; -@end - -@interface NSString (NSStringUtils) -+ (id)messageIDStringWithDomainHint:(id)fp8; -+ (id)messageIDStringFromCidUrl:(id)fp8; -+ (id)stringWithData:(id)fp8 encoding:(unsigned int)fp12; -+ (id)stringRepresentationForBytes:(long long)fp8; -+ (id)stringWithAttachmentCharacter; -+ (id)createUniqueIdString; -- (unsigned int)hexIntValue; -- (id)smartCapitalizedString; -- (id)stringByReplacingString:(id)fp8 withString:(id)fp12; -- (id)stringByRemovingCharactersInSet:(id)fp8; -- (id)stringByApplyingBodyClassName:(id)fp8; -- (id)createStringByApplyingBodyClassName:(id)fp8; -- (id)stringByChangingBodyTagToDiv; -- (id)stringByRemovingLineEndingsForHTML; -- (id)stringByReplacingNonBreakingSpacesWithString:(id)fp8; -- (BOOL)containsOnlyWhitespace; -- (BOOL)containsOnlyBreakingWhitespace; -- (id)stringByLocalizingReOrFwdPrefix; -- (unsigned int)subjectPrefixLength; -- (id)fileSystemString; -- (id)stringSuitableForHTML; -- (id)stringWithNoExtraSpaces; -- (int)compareAsInts:(id)fp8; -- (id)MD5Digest; -- (id)messageIDSubstring; -- (id)encodedMessageID; -- (id)encodedMessageIDString; -- (id)createStringByEndTruncatingForWidth:(float)fp8 usingFont:(id)fp12; -- (id)uniqueFilenameWithRespectToFilenames:(id)fp8; -- (int)caseInsensitiveCompareExcludingXDash:(id)fp8; -- (id)componentsSeparatedByPattern:(id)fp8; -- (id)spotlightQueryString; -- (BOOL)isValidUniqueIdString; -- (id)feedURLString; -- (id)firstLine; -- (id)secondToLastPathComponent; -- (const char *)functioningLossyCString; -- (BOOL)hasPrefixIgnoreCaseAndDiacritics:(id)fp8; -- (BOOL)isEqualToStringIgnoreCaseAndDiacritics:(id)fp8; -@end - -@interface NSString (PathUtils) -+ (id)pathWithDirectory:(id)fp8 filename:(id)fp12 extension:(id)fp16; -- (id)uniquePathWithMaximumLength:(int)fp8; -- (BOOL)deletePath; -- (BOOL)makeDirectoryWithMode:(int)fp8; -- (BOOL)makePathWritable:(int *)fp8; -- (BOOL)makePathReadOnly:(int *)fp8; -- (BOOL)makePathReadOnly:(int *)fp8 recursively:(BOOL)fp12; -- (void)setPosixFilePermissions:(int)fp8; -- (BOOL)isSubdirectoryOfPath:(id)fp8; -- (id)stringByReallyAbbreviatingWithTildeInPath; -- (id)betterStringByResolvingSymlinksInPath; -@end - -@interface NSString (MimeCharsetSupport) -- (id)bestMimeCharset; -- (id)_bestMimeCharset:(id)fp8; -- (id)bestMimeCharsetUsingHint:(unsigned long)fp8; -@end - -@interface NSString (iCalInvitationSupport) -- (BOOL)isICalInvitation; -@end - -#elif defined(TIGER) - -@interface NSString (IMAPNameEncoding) -- (id)encodedIMAPMailboxName; -- (id)decodedIMAPMailboxName; -@end - -@interface NSString (MimeEnrichedReader) -+ (id)stringFromMimeEnrichedString:(id)fp8; -@end - -@interface NSString (MimeHeaderEncoding) -- (id)encodedHeaderData; -- (id)encodedHeaderDataWithEncodingHint:(unsigned long)fp8; -- (id)decodeMimeHeaderValue; -- (id)decodeMimeHeaderValueWithCharsetHint:(id)fp8; -@end - -@interface NSString (FormatFlowedSupport) -- (id)convertFromFlowedText:(unsigned int)fp8; -@end - -@interface NSString (NSEmailAddressString) -+ (id)nameExtensions; -+ (id)nameExtensionsThatDoNotNeedCommas; -+ (id)partialSurnames; -+ (id)formattedAddressWithName:(id)fp8 email:(id)fp12 useQuotes:(BOOL)fp16; -- (id)uncommentedAddress; -- (id)uncommentedAddressRespectingGroups; -- (id)addressComment; -- (void)firstName:(id *)fp8 middleName:(id *)fp12 lastName:(id *)fp16 extension:(id *)fp20; -- (BOOL)appearsToBeAnInitial; -- (id)addressList; -- (id)trimCommasSpacesQuotes; -- (id)componentsSeparatedByCommaRespectingQuotesAndParens; -- (id)searchStringComponents; -- (BOOL)isLegalEmailAddress; -- (id)addressDomain; -@end - -@interface NSString (NSStringUtils) -+ (id)messageIDStringWithDomainHint:(id)fp8; -+ (id)stringWithData:(id)fp8 encoding:(unsigned int)fp12; -+ (id)stringRepresentationForBytes:(long long)fp8; -+ (id)stringWithAttachmentCharacter; -- (BOOL)boolValue; -- (id)smartCapitalizedString; -- (id)stringByReplacingString:(id)fp8 withString:(id)fp12; -- (id)stringByRemovingCharactersInSet:(id)fp8; -- (id)stringByRemovingLineEndingsForHTML; -- (BOOL)containsOnlyWhitespace; -- (BOOL)containsOnlyBreakingWhitespace; -- (id)stringByLocalizingReOrFwdPrefix; -- (unsigned int)subjectPrefixLength; -- (id)fileSystemString; -- (id)stringWithNoExtraSpaces; -- (int)compareAsInts:(id)fp8; -- (id)MD5Digest; -- (id)messageIDSubstring; -- (id)encodedMessageID; -- (id)createStringByEndTruncatingForWidth:(float)fp8 usingFont:(id)fp12; -- (id)uniqueFilenameWithRespectToFilenames:(id)fp8; -- (int)caseInsensitiveCompareExcludingXDash:(id)fp8; -- (id)componentsSeparatedByPattern:(id)fp8; -@end - -@interface NSString (PathUtils) -+ (id)pathWithDirectory:(id)fp8 filename:(id)fp12 extension:(id)fp16; -- (id)uniquePathWithMaximumLength:(int)fp8; -- (BOOL)deletePath; -- (BOOL)makeDirectoryWithMode:(int)fp8; -- (BOOL)makePathWritable:(int *)fp8; -- (BOOL)makePathReadOnly:(int *)fp8; -- (BOOL)makePathReadOnly:(int *)fp8 recursively:(BOOL)fp12; -- (void)setPosixFilePermissions:(int)fp8; -- (BOOL)isSubdirectoryOfPath:(id)fp8; -- (id)stringByReallyAbbreviatingWithTildeInPath; -- (id)betterStringByResolvingSymlinksInPath; -@end - -@interface NSString (MimeCharsetSupport) -- (id)bestMimeCharset; -@end - -@interface NSString (LibraryMessageIDSupport) -- (id)encodedMessageIDString; -@end - -@interface NSString (iCalInvitationSupport) -- (BOOL)isICalInvitation; -@end - -#else - -@interface NSString(IMAPNameEncoding) -- encodedIMAPMailboxName; -- decodedIMAPMailboxName; -@end - -@interface NSString(shell_escape) -- _fixStringForShell; -@end - -@interface NSString(MimeEnrichedReader) -+ stringFromMimeEnrichedString:fp8; -@end - -@interface NSString(MimeHeaderEncoding) -- encodedHeaderData; -- decodeMimeHeaderValue; -- decodeMimeHeaderValueWithCharsetHint:fp8; -@end - -@interface NSString(FormatFlowedSupport) -- convertFromFlowedText:(unsigned int)fp8; -@end - -@interface NSString(NSEmailAddressString) -+ nameExtensions; -+ nameExtensionsThatDoNotNeedCommas; -+ partialSurnames; -+ formattedAddressWithName:fp8 email:fp12 useQuotes:(char)fp16; -- uncommentedAddress; -- uncommentedAddressRespectingGroups; -- addressComment; -- (void)firstName:(id *)fp8 middleName:(id *)fp12 lastName:(id *)fp16 extension:(id *)fp20; -- (char)appearsToBeAnInitial; -- fullName; -- addressList; -- trimCommasSpacesQuotes; -- componentsSeparatedByCommaRespectingQuotesAndParens; -- searchStringComponents; -- (char)isLegalEmailAddress; -- addressDomain; -@end - -@interface NSString(next_reference) -- _nextReferenceName; -@end - -@interface NSString(NSStringUtils) -+ stringWithData:fp8 encoding:(unsigned int)fp12; -+ stringRepresentationForBytes:(long long)fp8; -+ stringWithAttachmentCharacter; -- (BOOL)boolValue; -- smartCapitalizedString; -- stringByReplacingString:fp8 withString:fp12; -- stringByLocalizingReOrFwdPrefix; -- (unsigned int)subjectPrefixLength; -- fileSystemString; -- stringWithNoExtraSpaces; -- (int)compareAsInts:fp8; -- MD5Digest; -- messageIDSubstring; -- createStringByEndTruncatingForWidth:(float)fp8 usingFont:fp12; -- uniqueFilenameWithRespectToFilenames:fp8; -- (int)caseInsensitiveCompareExcludingXDash:fp8; -@end - -@interface NSString(PathUtils) -+ pathWithDirectory:fp8 filename:fp12 extension:fp16; -- uniquePathWithMaximumLength:(int)fp8; -- (char)deletePath; -- (char)makeDirectoryWithMode:(int)fp8; -- (char)makePathWritable:(int *)fp8; -- (char)makePathReadOnly:(int *)fp8; -- (void)setPosixFilePermissions:(int)fp8; -- (char)isSubdirectoryOfPath:fp8; -- stringByReallyAbbreviatingWithTildeInPath; -- betterStringByResolvingSymlinksInPath; -@end - -@interface NSString(MimeCharsetSupport) -- bestMimeCharset; -@end - -@interface NSString(AtomicAddress) -- atomicAddress; -- atomicAddressStringForRepresentedRecord:fp8 type:(int)fp12; -- atomicAddressStringForRepresentedRecord:fp8 type:(int)fp12 showComma:(char)fp16; -- atomicAddressArrayForRepresentedRecord:fp8 type:(int)fp12; -- atomicAddressWithRepresentedRecord:fp8 type:(int)fp12; -- atomicAddressWithRepresentedRecord:fp8 type:(int)fp12 showComma:(char)fp16; -@end - -@interface NSString(FindPanelSupport) -- (struct _NSRange)findString:fp8 selectedRange:(struct _NSRange)fp12 options:(unsigned int)fp20 wrap:(char)fp24; -@end - -@interface NSMutableString(convenience) -- (void)replaceString:fp8 withString:fp12; -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/ObjectCache.h b/GPGMail/Source/PrivateHeaders/ObjectCache.h deleted file mode 100644 index f287aa94..00000000 --- a/GPGMail/Source/PrivateHeaders/ObjectCache.h +++ /dev/null @@ -1,77 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -// Replaced by NSCache - -#elif defined(SNOW_LEOPARD) - -// Replaced by NSCache - -#elif defined(LEOPARD) - -@interface ObjectCache : NSObject -{ - unsigned int _arrayCapacity; - struct __CFArray *_keysAndValues; - BOOL _useIsEqual; -} - -- (id)initWithCapacity:(unsigned int)fp8; -- (void)dealloc; -- (void)finalize; -- (void)setCapacity:(unsigned int)fp8; -- (void)setUsesIsEqualForComparison:(BOOL)fp8; -- (void)setObject:(id)fp8 forKey:(id)fp12; -- (id)objectForKey:(id)fp8; -- (void)removeObjectForKey:(id)fp8; -- (void)removeAllObjects; -- (BOOL)isObjectInCache:(id)fp8; -- (id)description; - -@end - -#elif defined(TIGER) - -@interface ObjectCache : NSObject -{ - unsigned int _arrayCapacity; - struct __CFArray *_keysAndValues; - BOOL _useIsEqual; -} - -- (id)initWithCapacity:(unsigned int)fp8; -- (void)dealloc; -- (void)finalize; -- (void)setCapacity:(unsigned int)fp8; -- (void)setUsesIsEqualForComparison:(BOOL)fp8; -- (void)setObject:(id)fp8 forKey:(id)fp12; -- (id)objectForKey:(id)fp8; -- (void)removeObjectForKey:(id)fp8; -- (void)removeAllObjects; -- (BOOL)isObjectInCache:(id)fp8; - -@end - -#else - -@interface ObjectCache:NSObject -{ - unsigned int _arrayCapacity; // 4 = 0x4 - struct __CFArray *_keysAndValues; // 8 = 0x8 - char _useIsEqual; // 12 = 0xc -} - -- initWithCapacity:(unsigned int)fp8; -- (void)dealloc; -- (void)setCapacity:(unsigned int)fp8; -- (void)setUsesIsEqualForComparison:(char)fp8; -- (void)setObject:fp8 forKey:fp12; -- objectForKey:fp8; -- (void)removeObjectForKey:fp8; -- (void)removeAllObjects; -- (char)isObjectInCache:fp8; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/OptionalView.h b/GPGMail/Source/PrivateHeaders/OptionalView.h deleted file mode 100644 index 42f25153..00000000 --- a/GPGMail/Source/PrivateHeaders/OptionalView.h +++ /dev/null @@ -1,113 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -@interface OptionalView : NSView -{ - NSButton *_optionSwitch; - NSView *_primaryView; - struct CGRect _originalFrame; - BOOL _isResizing; -} - -- (id)initWithFrame:(struct CGRect)arg1; -- (void)dealloc; -- (void)awakeFromNib; -- (void)didAddSubview:(id)arg1; -- (void)willRemoveSubview:(id)arg1; -- (void)subviewFrameDidChange:(id)arg1; -- (id)primaryView; -- (BOOL)isFlipped; -- (BOOL)isOpaque; -- (void)drawRect:(struct CGRect)arg1; -- (id)optionSwitch; -- (void)sizeToFit; -- (double)minXIncludingOptionSwitch:(BOOL)arg1; -- (double)minXOffsetIncludingOptionSwitch:(BOOL)arg1; - -@end - -#elif defined(SNOW_LEOPARD) - -@interface OptionalView : NSView -{ - NSButton *_optionSwitch; - NSView *_primaryView; - struct CGRect _originalFrame; - BOOL _isResizing; -} - -- (id)initWithFrame:(struct CGRect)arg1; -- (void)dealloc; -- (void)awakeFromNib; -- (void)didAddSubview:(id)arg1; -- (void)willRemoveSubview:(id)arg1; -- (void)subviewFrameDidChange:(id)arg1; -- (id)primaryView; -- (BOOL)isFlipped; -- (BOOL)isOpaque; -- (void)drawRect:(struct CGRect)arg1; -- (id)optionSwitch; -- (void)sizeToFit; -- (float)minXIncludingOptionSwitch:(BOOL)arg1; -- (float)minXOffsetIncludingOptionSwitch:(BOOL)arg1; - -@end - -#elif defined(LEOPARD) - -@interface OptionalView : NSView -{ - NSButton *_optionSwitch; - NSView *_primaryView; - struct _NSRect _originalFrame; - BOOL _isResizing; - BOOL _isCustomizing; -} - -- (id)initWithFrame:(struct _NSRect)fp8; -- (void)dealloc; -- (void)awakeFromNib; -- (void)didAddSubview:(id)fp8; -- (void)willRemoveSubview:(id)fp8; -- (void)subviewFrameDidChange:(id)fp8; -- (id)primaryView; -- (BOOL)isFlipped; -- (BOOL)isOpaque; -- (void)drawRect:(struct _NSRect)fp8; -- (id)optionSwitch; -- (void)sizeToFit; -- (float)minXIncludingOptionSwitch:(BOOL)fp8; -- (float)minXOffsetIncludingOptionSwitch:(BOOL)fp8; - -@end - -#elif defined(TIGER) - -@interface OptionalView : NSView -{ - NSButton *_optionSwitch; - NSView *_primaryView; - struct _NSRect _originalFrame; - BOOL _isResizing; - BOOL _isCustomizing; -} - -- (id)initWithFrame:(struct _NSRect)fp8; -- (void)dealloc; -- (void)awakeFromNib; -- (void)didAddSubview:(id)fp8; -- (void)willRemoveSubview:(id)fp8; -- (void)subviewFrameDidChange:(id)fp8; -- (id)primaryView; -- (BOOL)isFlipped; -- (BOOL)isOpaque; -- (void)drawRect:(struct _NSRect)fp8; -- (id)optionSwitch; -- (void)sizeToFit; -- (float)minXIncludingOptionSwitch:(BOOL)fp8; -- (float)minXOffsetIncludingOptionSwitch:(BOOL)fp8; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/OutgoingMessage.h b/GPGMail/Source/PrivateHeaders/OutgoingMessage.h deleted file mode 100644 index 37cc72c5..00000000 --- a/GPGMail/Source/PrivateHeaders/OutgoingMessage.h +++ /dev/null @@ -1,106 +0,0 @@ -#ifdef SNOW_LEOPARD_64 - -#import - -@interface OutgoingMessage : Message -{ - NSData *rawData; - NSString *remoteID; - NSString *existingRemoteID; - unsigned long long bodyOffset; - unsigned long long localAttachmentsSize; - MessageBody *messageBody; - MutableMessageHeaders *messageHeaders; -} - -- (void)dealloc; -- (id)bodyData; -- (id)messageStore; -- (id)messageBodyIfAvailable; -- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; -- (id)messageDataIncludingFromSpace:(BOOL)arg1; -- (id)mutableHeaders; -- (void)setMutableHeaders:(id)arg1; -- (id)headers; -- (id)headersIfAvailable; -- (unsigned long long)messageSize; -- (void)setRawData:(id)arg1 offsetOfBody:(unsigned long long)arg2; -- (void)setLocalAttachmentsSize:(unsigned long long)arg1; -- (void)setRemoteID:(id)arg1; -- (id)remoteID; -@property(retain, nonatomic) NSString *existingRemoteID; // @synthesize existingRemoteID; -@property(retain, nonatomic) MessageBody *messageBody; // @synthesize messageBody; - -@end - -#elif defined(SNOW_LEOPARD) - -#import - -@interface OutgoingMessage : Message -{ - NSData *rawData; - NSString *remoteID; - NSString *existingRemoteID; - unsigned int bodyOffset; - unsigned int localAttachmentsSize; - MessageBody *messageBody; - MutableMessageHeaders *messageHeaders; -} - -- (void)dealloc; -- (id)bodyData; -- (id)messageStore; -- (id)messageBodyIfAvailable; -- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; -- (id)messageDataIncludingFromSpace:(BOOL)arg1; -- (id)mutableHeaders; -- (void)setMutableHeaders:(id)arg1; -- (id)headers; -- (id)headersIfAvailable; -- (unsigned int)messageSize; -- (void)setRawData:(id)arg1 offsetOfBody:(unsigned int)arg2; -- (void)setLocalAttachmentsSize:(unsigned int)arg1; -- (void)setRemoteID:(id)arg1; -- (id)remoteID; -- (id)existingRemoteID; -- (void)setExistingRemoteID:(id)arg1; -- (id)messageBody; -- (void)setMessageBody:(id)arg1; - -@end - -#elif defined(LEOPARD) - -#import - -@interface OutgoingMessage : Message -{ - NSData *rawData; - NSString *remoteID; - unsigned int bodyOffset; - unsigned int localAttachmentsSize; - MessageBody *messageBody; - MutableMessageHeaders *messageHeaders; -} - -- (void)dealloc; -- (id)bodyData; -- (id)messageStore; -- (id)messageBody; -- (id)messageBodyIfAvailable; -- (id)messageDataIncludingFromSpace:(BOOL)fp8 newDocumentID:(id)fp12; -- (id)messageDataIncludingFromSpace:(BOOL)fp8; -- (id)mutableHeaders; -- (void)setMutableHeaders:(id)fp8; -- (id)headers; -- (id)headersIfAvailable; -- (unsigned int)messageSize; -- (void)setRawData:(id)fp8 offsetOfBody:(unsigned int)fp12; -- (void)setLocalAttachmentsSize:(unsigned int)fp8; -- (void)setRemoteID:(id)fp8; -- (id)remoteID; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/SafeObserver.h b/GPGMail/Source/PrivateHeaders/SafeObserver.h deleted file mode 100644 index 9997f910..00000000 --- a/GPGMail/Source/PrivateHeaders/SafeObserver.h +++ /dev/null @@ -1,82 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -@interface SafeObserver : NSObject -{ - unsigned long long _retainCount; - BOOL _inDealloc; -} - -+ (void)initialize; -+ (void)lockSafeObservers; -+ (void)unlockSafeObservers; -- (id)init; -- (id)copyWithZone:(struct _NSZone *)arg1; -- (id)retain; -- (id)willDealloc; -- (void)release; -- (unsigned long long)retainCount; - -@end - -#elif defined(SNOW_LEOPARD) - -@interface SafeObserver : NSObject -{ - unsigned int _retainCount; - BOOL _inDealloc; -} - -+ (void)initialize; -+ (void)lockSafeObservers; -+ (void)unlockSafeObservers; -- (id)init; -- (id)copyWithZone:(struct _NSZone *)arg1; -- (id)retain; -- (id)willDealloc; -- (void)release; -- (unsigned int)retainCount; - -@end - -#elif defined(LEOPARD) - -@interface SafeObserver : NSObject -{ - unsigned int _retainCount; - BOOL _inDealloc; -} - -+ (void)initialize; -+ (void)lockSafeObservers; -+ (void)unlockSafeObservers; -- (id)init; -- (id)copyWithZone:(struct _NSZone *)fp8; -- (id)retain; -- (id)willDealloc; -- (void)release; -- (unsigned int)retainCount; - -@end - -#elif defined(TIGER) - -@interface SafeObserver : NSObject -{ - unsigned int _retainCount; -} - -+ (void)initialize; -+ (id)allocWithZone:(struct _NSZone *)fp8; -+ (void)lockSafeObservers; -+ (void)unlockSafeObservers; -- (id)copyWithZone:(struct _NSZone *)fp8; -- (id)retain; -- (id)willBeReleased; -- (void)release; -- (unsigned int)retainCount; - -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/Subdata.h b/GPGMail/Source/PrivateHeaders/Subdata.h deleted file mode 100644 index afdca36e..00000000 --- a/GPGMail/Source/PrivateHeaders/Subdata.h +++ /dev/null @@ -1,37 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD - -@interface Subdata : NSData -{ - struct _NSRange subrange; - NSData *parentData; -} - -- (unsigned int)length; -- (const void *)bytes; -- (id)copyWithZone:(struct _NSZone *)arg1; -- (id)initWithParent:(id)arg1 range:(struct _NSRange)arg2; -- (void)dealloc; - -@end - -#elif defined(LEOPARD) - -@interface Subdata : NSData -{ - struct _NSRange subrange; - NSData *parentData; -} - -- (unsigned int)length; -- (const void *)bytes; -- (id)copyWithZone:(struct _NSZone *)fp8; -- (id)initWithParent:(id)fp8 range:(struct _NSRange)fp12; -- (void)dealloc; - -@end - -#else -#error Misses Subdata definition -#endif diff --git a/GPGMail/Source/PrivateHeaders/TableViewManager.h b/GPGMail/Source/PrivateHeaders/TableViewManager.h deleted file mode 100644 index 1f07ad9e..00000000 --- a/GPGMail/Source/PrivateHeaders/TableViewManager.h +++ /dev/null @@ -1,1672 +0,0 @@ -#import - -#ifdef SNOW_LEOPARD_64 - -@protocol MVSelectionOwner -- (id)selection; -- (void)selectMessages:(id)arg1; -- (id)currentDisplayedMessage; -- (id)messageStore; -- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; -@end - -@protocol MessageBrowserController -- (id)messageBrowserView; -- (BOOL)isSelectionVisible; -- (void)showSelectionAndCenter:(BOOL)arg1; -- (void)updateTextViewerToSelection; -- (id)messagesToTransfer; -- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; -- (id)messageToSelectIfEntireSelectionRemoved; -- (void)selectNextMessage:(BOOL)arg1; -- (void)selectPreviousMessage:(BOOL)arg1; -- (void)selectNextMessageMovingDownward:(BOOL)arg1; -- (void)selectNextMessageMovingUpward:(BOOL)arg1; -- (BOOL)includeDeleted; -- (void)setIncludeDeleted:(BOOL)arg1; -- (BOOL)shouldDeleteGivenCurrentState; -- (void)deleteSelectionAllowingMoveToTrash:(BOOL)arg1; -- (void)deleteMessages:(id)arg1 allowMoveToTrash:(BOOL)arg2 allowUndo:(BOOL)arg3; -- (void)undeleteMessagesAllowingUndo:(BOOL)arg1; -- (void)undeleteMessages:(id)arg1 allowUndo:(BOOL)arg2; -- (void)selectMessagesForMessageTransfer:(id)arg1; -- (void)selectMessagesForMessageTransferUndo:(id)arg1; -@end - -@class ASExtendedTableView; -@class MessageMall; -@class Message; -@class VisibleStateObject; -@class MessageThread; -@class BytesFormatter; - -@interface TableViewManager : NSObject -{ - ASExtendedTableView *_tableView; - MessageMall *_messageMall; - id _delegate; - NSArray *_tableColumns; - NSFont *_font; - NSFont *_boldFont; - NSFont *_noteFont; - NSMutableArray *_selection; - NSArray *_selectionExcludingThreads; - BOOL _suspendChangesToScrollingAndSelection; - Message *_currentDisplayedMessage; - NSMapTable *_storeStateTable; - NSMutableArray *_draggedMessages; - NSMutableAttributedString *_truncatedString; - NSMutableDictionary *_truncatedStringAttributes; - NSMutableDictionary *_truncatedParagraphStyle; - NSString *_availableStatusImageName; - long long leftmostTextColumn; - struct { - unsigned int includeDeleted:1; - unsigned int isFocused:1; - unsigned int sortColumnOrderAscending:1; - unsigned int isShowingSearchResults:1; - unsigned int sortColumnOrder:8; - unsigned int hasScrolledSinceMailboxChange:1; - unsigned int userChangedSelectionSinceMailboxChange:1; - unsigned int threadOpeningIsInProgress:1; - unsigned int threadClosingIsInProgress:1; - unsigned int doubleClickThreadOpeningIsInProgress:1; - unsigned int animatingThreadOpening:1; - unsigned int animatingThreadClosing:1; - unsigned int animateInSlowMotion:1; - unsigned int dontUpdateTrackingRects:1; - unsigned int dontReadWriteStoreSpecificDefaultsToMailbox:1; - unsigned int useBoldFontForUnreadMessages:1; - unsigned int clearingSearch:1; - unsigned int changingSelection:1; - unsigned int selectionShouldNotChange:1; - unsigned int searchSortColumnOrder:8; - unsigned int searchSortColumnOrderAscending:1; - } _flags; - NSDictionary *_messageIDsToSelectWhenOpened; - NSArray *_threadIDsToOpenWhenOpened; - long long colorHighlightLeftEdge; - long long colorHighlightWidth; - long long _windowWidthBeforeSearch; - VisibleStateObject *_visibleStateBeforeSearch; - NSMutableSet *_messagesInSelectedThread; - MessageThread *threadBeingClosed; - MessageThread *threadBeingOpened; - struct __CFDictionary *_rowDrawingCache; - NSMutableSet *_mouseTrackers; - struct CGPoint _lastMouseDownInUnreadColumnPoint; - long long _lastMouseDownInUnreadColumnEventNumber; - struct CGPoint _currentMouseLocationInWindow; - double _amountToScrollDownAfterClosingThread; - long long _numberOfSelectedRowsBeforeTogglingThread; - long long _selectedRowBeforeTogglingThread; - BytesFormatter *_bytesFormatter; - NSString *_pasteboardURLString; - BOOL _isDragging; -} - -+ (void)initialize; -- (void)awakeFromNib; -- (id)tableViewGetDefaultMenu:(id)arg1; -- (id)_bytesFormatter; -- (void)_setBytesFormatter:(id)arg1; -- (void)tableViewScrolled:(id)arg1; -- (void)_setupColumnHeaderIcon:(id)arg1 inColumnWithIdentifier:(id)arg2 accessibilityTitle:(id)arg3 alignment:(unsigned long long)arg4; -- (void)_setupTableColumnWidths; -- (void)_configureColumnForEndTruncation:(id)arg1; -- (void)_configureColumnForImageCell:(id)arg1 alignment:(unsigned long long)arg2; -- (void)_configureColumnForRolloverCell:(id)arg1 alignment:(unsigned long long)arg2 action:(SEL)arg3; -- (void)showFollowupsToMessage:(id)arg1; -- (void)showFollowupsToMessageAtRow:(long long)arg1; -- (void)_setupColumnsForTableView; -- (void)dealloc; -- (void)windowWillClose:(id)arg1; -- (id)delegate; -- (void)setDelegate:(id)arg1; -- (void)setMessageMall:(id)arg1; -- (void)messageMarkedForOverwrite:(id)arg1; -- (void)messagesUpdated:(id)arg1; -- (void)setupColumnManagerFromDictionary:(id)arg1; -- (void)readDefaultsFromDictionary:(id)arg1; -- (void)writeDefaultsToDictionary:(id)arg1; -- (void)setDontReadWriteStoreSpecificDefaultsToMailbox:(BOOL)arg1; -- (void)writeStoreSpecificDefaultsToMailboxUid:(id)arg1; -- (void)readStoreSpecificDefaultsFromMailboxUid:(id)arg1; -- (void)readStoreSpecificDefaultsFromDictionary:(id)arg1; -- (BOOL)canSelectNextMessage; -- (BOOL)canSelectPreviousMessage; -- (void)rulePreferencesChanged:(id)arg1; -- (void)viewerPreferencesChanged:(id)arg1; -- (BOOL)threadHasSelectedMessages:(id)arg1; -- (void)presencePreferenceChanged:(id)arg1; -- (void)threadColorPreferenceChanged:(id)arg1; -- (void)presenceImageChanged:(id)arg1; -- (void)presenceChanged:(id)arg1; -- (void)_updateTableHeaderToMatchCurrentSort; -- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; -- (id)_columnWithIdentifierTag:(long long)arg1; -- (id)_unreadColumn; -- (BOOL)isColumnVisible:(int)arg1; -- (void)updateDefaultsForMailboxes; -- (void)setColumn:(int)arg1 toVisible:(BOOL)arg2; -- (void)_setColumn:(int)arg1 toVisible:(BOOL)arg2; -- (BOOL)tableView:(id)arg1 shouldReorderColumn:(long long)arg2 toColumn:(long long)arg3; -- (long long)tableViewNumberOfColumnsToPinToLefthandSide:(id)arg1; -- (void)selectAllMessagesAndMakeFirstResponder; -- (void)makeMessageListFirstResponder; -- (void)updateTableViewRowHeight; -@property(retain) NSFont *font; // @synthesize font=_font; -@property(retain) NSFont *noteFont; // @synthesize noteFont=_noteFont; -- (BOOL)isInThreadedMode; -- (void)toggleThreadedMode; -- (void)threadedModeDidChange:(id)arg1; -- (void)_invalidateSelectionExcludingThreads; -- (BOOL)openThreadAtIndex:(long long)arg1 andSelectMessage:(id)arg2 animate:(BOOL)arg3; -- (BOOL)closeThreadAtIndex:(long long)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; -- (void)openAllThreads; -- (void)closeAllThreads; -- (void)toggleThread:(id)arg1; -- (void)toggleThread:(id)arg1 ignoreModifierKeys:(BOOL)arg2; -- (long long)_indexOfMessageNearest:(long long)arg1 numberOfRows:(long long)arg2 threaded:(BOOL)arg3 downward:(BOOL)arg4; -- (BOOL)canSelectPreviousThreadedMessage; -- (BOOL)canSelectNextThreadedMessage; -- (BOOL)canSelectParentOfMessage; -- (BOOL)canSelectFirstReplyToMessage; -- (BOOL)canSelectNextReplyToParent; -- (BOOL)selectionIsExactlyOneOpenThread; -- (void)selectNextMessageMovingDownward:(BOOL)arg1; -- (void)selectNextMessageMovingUpward:(BOOL)arg1; -- (BOOL)stepIntoSelectedThread; -- (BOOL)stepOutOfSelectedThread; -- (BOOL)openSelectedThread; -- (void)selectNextMessage:(BOOL)arg1; -- (void)selectPreviousMessage:(BOOL)arg1; -- (void)selectParentOfMessage; -- (void)selectFirstReplyToMessage; -- (void)selectPeer:(BOOL)arg1; -- (void)selectNextReplyToParent; -- (void)selectPreviousReplyToParent; -- (void)showSelectionAndCenter:(BOOL)arg1; -- (BOOL)isSelectionVisible; -- (void)scrollRowToVisible:(long long)arg1 position:(int)arg2; -- (long long)tableView:(id)arg1 shouldScrollRowToVisible:(long long)arg2; -- (BOOL)_isMessageInSelectedThread:(id)arg1; -- (void)_setNeedsDisplayForMessagesInSet:(id)arg1 highlightOnly:(BOOL)arg2; -- (void)_setNeedsDisplayThreadColumnForMessagesInSet:(id)arg1; -- (void)_updateSelectedThreadList; -- (id)selectedThread; -- (void)_reallyUpdateTextViewerToSelection; -- (void)updateTextViewerToSelection; -- (void)selectionIsChanging:(id)arg1; -- (void)_selectOrDeselectMembersOfThread:(id)arg1 atIndex:(long long)arg2 select:(BOOL)arg3; -- (void)selectionChanged:(id)arg1; -- (void)datesNeedRedisplay; -- (long long)numberOfRowsInTableView:(id)arg1; -- (id)_attributesForTruncatedParagraphStyle; -- (id)_messageSelectionColor; -- (id)_colorForMessage:(id)arg1 inRow:(long long)arg2 withCell:(id)arg3; -- (id)_truncatedAttributedStringForString:(id)arg1 message:(id)arg2 row:(long long)arg3 shouldIndent:(BOOL)arg4; -- (id)_attributedUpdatedStringForRSSMessage:(id)arg1 row:(long long)arg2; -- (id)tableView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 row:(long long)arg3; -- (BOOL)tableView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; -- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; -- (void)_updateColorHighlightEdges; -- (void)tableView:(id)arg1 didDragTableColumn:(id)arg2; -- (void)tableViewFrameChangedDuringLiveResize:(id)arg1; -- (void)tableViewWillStartLiveResize:(id)arg1; -- (void)tableViewDidEndLiveResize:(id)arg1; -- (void)tableViewColumnDidMove:(id)arg1; -- (void)tableViewColumnDidResize:(id)arg1; -- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; -- (int)tableView:(id)arg1 highlightStyleForRow:(long long)arg2 inRect:(struct CGRect *)arg3 color:(id *)arg4; -- (void)doubleClickedMessage:(id)arg1; -- (void)deleteKeyPressed; -- (void)deleteSelectionAllowingMoveToTrash:(BOOL)arg1; -- (id)selectionIncludingThreads:(BOOL)arg1; -- (id)selection; -- (void)_selectMessages:(id)arg1 scrollIfNeeded:(BOOL)arg2; -- (void)selectMessages:(id)arg1; -- (id)currentDisplayedMessage; -- (void)setCurrentDisplayedMessage:(id)arg1; -- (id)messageStore; -- (id)orderOfFromSubjectDateColumns; -- (id)tableView; -- (BOOL)tableView:(id)arg1 doCommandBySelector:(SEL)arg2; -- (id)_undoActionNameForMessageCount:(unsigned long long)arg1; -- (void)_adjustScrollPositionForTransferedMessages:(id)arg1 isUndo:(BOOL)arg2; -- (void)selectMessagesForMessageTransfer:(id)arg1; -- (void)selectMessagesForMessageTransferUndo:(id)arg1; -- (void)_undeleteMessages:(id)arg1 allowUndo:(BOOL)arg2 unreadMessages:(id)arg3; -- (void)undeleteMessages:(id)arg1 allowUndo:(BOOL)arg2; -- (void)_redeleteMessages:(id)arg1 messagesToSelect:(id)arg2; -- (void)deleteMessages:(id)arg1 allowMoveToTrash:(BOOL)arg2 allowUndo:(BOOL)arg3; -- (void)undeleteMessagesAllowingUndo:(BOOL)arg1; -- (BOOL)shouldDeleteGivenCurrentState; -- (void)tableViewDraggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; -- (id)messagesToTransfer; -- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; -- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; -- (void)tableViewDragWillEnd:(id)arg1 operation:(unsigned long long)arg2; -- (void)tableView:(id)arg1 willMouseDown:(id)arg2; -- (void)tableView:(id)arg1 didMouseDown:(id)arg2; -- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; -- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; -- (void)pasteboardChangedOwner:(id)arg1; -- (id)tableView:(id)arg1 namesOfPromisedFilesDroppedAtDestination:(id)arg2 forDraggedRowsWithIndexes:(id)arg3; -- (id)_dragImageForRow:(long long)arg1 event:(id)arg2 dragImageOffset:(struct CGPoint *)arg3; -- (id)tableView:(id)arg1 dragImageForRowsWithIndexes:(id)arg2 event:(id)arg3 dragImageOffset:(struct CGPoint *)arg4; -- (void)tableView:(id)arg1 willDrawRowsInRange:(struct _NSRange)arg2; -- (void)tableView:(id)arg1 didDrawRowsInRange:(struct _NSRange)arg2; -- (struct CGRect)frameOfClickedCell; -- (struct CGPoint)mouseLocationInWindow; -- (void)callWillDisplayCellForClickedCell; -- (void)setButtonCellNeedsDisplay; -- (void)tableView:(id)arg1 gotEvent:(id)arg2; -- (BOOL)shouldTrackMouse:(id)arg1; -- (id)tableView:(id)arg1 rangesForBackgroundShadingInRange:(struct _NSRange)arg2 shadingColors:(id *)arg3 leftColumnColors:(id *)arg4; -- (id)messageMall; -- (long long)_indexOfFirstNonDeletedNonSelectedMessage:(long long)arg1 withinRowRange:(struct _NSRange)arg2 goUp:(BOOL)arg3; -- (BOOL)_goUpInsteadOfDown; -- (id)messageBrowserView; -- (id)messageToSelectIfEntireSelectionRemoved; -- (BOOL)includeDeleted; -- (void)setIncludeDeleted:(BOOL)arg1; -@property(retain) NSFont *boldFont; // @synthesize boldFont=_boldFont; -@property(retain) NSString *pasteboardURLString; // @synthesize pasteboardURLString=_pasteboardURLString; -@property(copy) NSArray *draggedMessages; // @synthesize draggedMessages=_draggedMessages; - -@end - -@interface TableViewManager (AppleScript) -+ (id)_getDarkerThreadBackgroundColorForThread:(id)arg1; -+ (id)_getThreadBackgroundColorForThread:(id)arg1; -- (int)_columnForAppleScriptColumn:(int)arg1; -- (int)appleScriptSortColumn; -- (void)setAppleScriptSortColumn:(int)arg1; -- (id)appleScriptVisibleColumns; -- (void)setAppleScriptVisibleColumns:(id)arg1; -@end - -@interface TableViewManager (FilteredList_Management) -- (void)mallStructureWillChange:(id)arg1; -- (void)setMailboxUids:(id)arg1 isSettingUpUI:(BOOL)arg2; -- (void)storeStructureChanged:(id)arg1; -- (void)messagesCompacted:(id)arg1; -- (void)messageFlagsChanged:(id)arg1; -- (void)_scrollToHappyPlace; -- (void)_recordVisibleState:(id)arg1 deletedAreGoingAway:(BOOL)arg2 considerPinToEnd:(BOOL)arg3; -- (BOOL)_restoreVisibleState:(id)arg1 forceSelToVisible:(BOOL)arg2; -- (void)dumpVisibleState; -- (long long)indexOfTopmostVisibleMessageMustBeSelected:(BOOL)arg1 okayIfDeleted:(BOOL)arg2; -- (long long)indexOfLastReadMessage; -- (id)persistentVisibleStateCreateIfNecessary:(BOOL)arg1; -- (void)_saveScrollAndSelection:(BOOL)arg1; -- (void)saveScrollAndSelection; -- (BOOL)restoreScrollAndSelection; -- (void)_setScrollAndSelectionForThreadOpenedOrClosed:(id)arg1 flag:(BOOL)arg2 clickedRow:(long long)arg3 rowToSelectInOpeningThread:(long long)arg4; -- (id)selectedMessageIDs; -- (id)openThreadIDs; -- (void)setSelectedMessageIDs:(id)arg1 openThreadIDs:(id)arg2; -- (void)clearSearch; -- (BOOL)isShowingSearchResults; -- (BOOL)rankColumnIsVisible; -- (void)searchForString:(id)arg1 in:(int)arg2 withOptions:(int)arg3; -- (BOOL)isFocused; -- (void)setFocusedMessages:(id)arg1; -- (BOOL)isSortedByRank; -- (BOOL)isSortedByDateReceived; -- (BOOL)isSortedChronologically; -- (int)sortColumn; -- (int)searchSortColumn; -- (void)setSortColumn:(int)arg1 ascending:(BOOL)arg2; -- (BOOL)isSortedAscending; -- (void)setIsSortedAscending:(BOOL)arg1; -- (BOOL)isSearchSortedAscending; -- (long long)state; -- (id)filteredMessages; -- (void)clearTrackingRects; -- (void)updateTrackingRects; -- (long long)_indexOfMemberToSelectWhenOpeningThread:(id)arg1; -- (double)_getAnimationDuration:(long long)arg1; -- (id)_createHiliteImage; -- (id)_createBackgroundImage; -- (id)_createSnapshotOfRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4; -- (id)_createSnapshotOfRow:(long long)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4; -- (BOOL)_isRowVisible:(long long)arg1; -- (struct CGSize)_calculateTruncationAmountUsingRowHeight:(double)arg1 collapseOrExpandAmount:(double)arg2 invisibleThreadAmountAbove:(double)arg3 invisibleThreadAmountBelow:(double)arg4; -- (void)_animateThreadCollapsing:(long long)arg1 threadRow:(long long)arg2 clickedRow:(long long)arg3; -- (double)_animateThreadOpening:(id)arg1 threadMessageCount:(long long)arg2 threadRow:(long long)arg3 rowToBeSelected:(long long)arg4; -- (void)searchFinished:(id)arg1; -- (void)tableView:(id)arg1 willMoveToWindow:(id)arg2; -- (void)tableViewDidMoveToWindow:(id)arg1; -- (BOOL)selectMessageWithIDIfExists:(id)arg1; -@end - -#elif defined(SNOW_LEOPARD) - -@class ASExtendedTableView; -@class MessageMall; -@class Message; -@class VisibleStateObject; -@class MessageThread; -@class BytesFormatter; - -@protocol MVSelectionOwner -- (id)selection; -- (void)selectMessages:(id)arg1; -- (id)currentDisplayedMessage; -- (id)messageStore; -- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; -@end - -@protocol MessageBrowserController -- (id)messageBrowserView; -- (BOOL)isSelectionVisible; -- (void)showSelectionAndCenter:(BOOL)arg1; -- (void)updateTextViewerToSelection; -- (id)messagesToTransfer; -- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; -- (id)messageToSelectIfEntireSelectionRemoved; -- (void)selectNextMessage:(BOOL)arg1; -- (void)selectPreviousMessage:(BOOL)arg1; -- (void)selectNextMessageMovingDownward:(BOOL)arg1; -- (void)selectNextMessageMovingUpward:(BOOL)arg1; -- (BOOL)includeDeleted; -- (void)setIncludeDeleted:(BOOL)arg1; -- (BOOL)shouldDeleteGivenCurrentState; -- (void)deleteSelectionAllowingMoveToTrash:(BOOL)arg1; -- (void)deleteMessages:(id)arg1 allowMoveToTrash:(BOOL)arg2 allowUndo:(BOOL)arg3; -- (void)undeleteMessagesAllowingUndo:(BOOL)arg1; -- (void)undeleteMessages:(id)arg1 allowUndo:(BOOL)arg2; -- (void)selectMessagesForMessageTransfer:(id)arg1; -- (void)selectMessagesForMessageTransferUndo:(id)arg1; -@end - -@interface TableViewManager : NSObject -{ - ASExtendedTableView *_tableView; - MessageMall *_messageMall; - id _delegate; - NSArray *_tableColumns; - NSFont *_font; - NSFont *_boldFont; - NSFont *_noteFont; - NSMutableArray *_selection; - NSArray *_selectionExcludingThreads; - BOOL _suspendChangesToScrollingAndSelection; - Message *_currentDisplayedMessage; - NSMapTable *_storeStateTable; - NSMutableArray *_draggedMessages; - NSMutableAttributedString *_truncatedString; - NSMutableDictionary *_truncatedStringAttributes; - NSMutableDictionary *_truncatedParagraphStyle; - NSString *_availableStatusImageName; - int leftmostTextColumn; - struct { - unsigned int includeDeleted:1; - unsigned int isFocused:1; - unsigned int sortColumnOrderAscending:1; - unsigned int isShowingSearchResults:1; - unsigned int sortColumnOrder:8; - unsigned int hasScrolledSinceMailboxChange:1; - unsigned int userChangedSelectionSinceMailboxChange:1; - unsigned int threadOpeningIsInProgress:1; - unsigned int threadClosingIsInProgress:1; - unsigned int doubleClickThreadOpeningIsInProgress:1; - unsigned int animatingThreadOpening:1; - unsigned int animatingThreadClosing:1; - unsigned int animateInSlowMotion:1; - unsigned int dontUpdateTrackingRects:1; - unsigned int dontReadWriteStoreSpecificDefaultsToMailbox:1; - unsigned int useBoldFontForUnreadMessages:1; - unsigned int clearingSearch:1; - unsigned int changingSelection:1; - unsigned int selectionShouldNotChange:1; - unsigned int searchSortColumnOrder:8; - unsigned int searchSortColumnOrderAscending:1; - } _flags; - NSDictionary *_messageIDsToSelectWhenOpened; - NSArray *_threadIDsToOpenWhenOpened; - int colorHighlightLeftEdge; - int colorHighlightWidth; - int _windowWidthBeforeSearch; - VisibleStateObject *_visibleStateBeforeSearch; - NSMutableSet *_messagesInSelectedThread; - MessageThread *threadBeingClosed; - MessageThread *threadBeingOpened; - struct __CFDictionary *_rowDrawingCache; - NSMutableSet *_mouseTrackers; - struct CGPoint _lastMouseDownInUnreadColumnPoint; - int _lastMouseDownInUnreadColumnEventNumber; - struct CGPoint _currentMouseLocationInWindow; - float _amountToScrollDownAfterClosingThread; - int _numberOfSelectedRowsBeforeTogglingThread; - int _selectedRowBeforeTogglingThread; - BytesFormatter *_bytesFormatter; - NSString *_pasteboardURLString; - BOOL _isDragging; -} - -+ (void)initialize; -- (void)awakeFromNib; -- (id)tableViewGetDefaultMenu:(id)arg1; -- (id)_bytesFormatter; -- (void)_setBytesFormatter:(id)arg1; -- (void)tableViewScrolled:(id)arg1; -- (void)_setupColumnHeaderIcon:(id)arg1 inColumnWithIdentifier:(id)arg2 accessibilityTitle:(id)arg3 alignment:(unsigned long)arg4; -- (void)_setupTableColumnWidths; -- (void)_configureColumnForEndTruncation:(id)arg1; -- (void)_configureColumnForImageCell:(id)arg1 alignment:(unsigned long)arg2; -- (void)_configureColumnForRolloverCell:(id)arg1 alignment:(unsigned long)arg2 action:(SEL)arg3; -- (void)showFollowupsToMessage:(id)arg1; -- (void)showFollowupsToMessageAtRow:(long)arg1; -- (void)_setupColumnsForTableView; -- (void)dealloc; -- (void)windowWillClose:(id)arg1; -- (id)delegate; -- (void)setDelegate:(id)arg1; -- (void)setMessageMall:(id)arg1; -- (void)messageMarkedForOverwrite:(id)arg1; -- (void)messagesUpdated:(id)arg1; -- (void)setupColumnManagerFromDictionary:(id)arg1; -- (void)readDefaultsFromDictionary:(id)arg1; -- (void)writeDefaultsToDictionary:(id)arg1; -- (void)setDontReadWriteStoreSpecificDefaultsToMailbox:(BOOL)arg1; -- (void)writeStoreSpecificDefaultsToMailboxUid:(id)arg1; -- (void)readStoreSpecificDefaultsFromMailboxUid:(id)arg1; -- (void)readStoreSpecificDefaultsFromDictionary:(id)arg1; -- (BOOL)canSelectNextMessage; -- (BOOL)canSelectPreviousMessage; -- (void)rulePreferencesChanged:(id)arg1; -- (void)viewerPreferencesChanged:(id)arg1; -- (BOOL)threadHasSelectedMessages:(id)arg1; -- (void)presencePreferenceChanged:(id)arg1; -- (void)threadColorPreferenceChanged:(id)arg1; -- (void)presenceImageChanged:(id)arg1; -- (void)presenceChanged:(id)arg1; -- (void)_updateTableHeaderToMatchCurrentSort; -- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; -- (id)_columnWithIdentifierTag:(long)arg1; -- (id)_unreadColumn; -- (BOOL)isColumnVisible:(int)arg1; -- (void)updateDefaultsForMailboxes; -- (void)setColumn:(int)arg1 toVisible:(BOOL)arg2; -- (void)_setColumn:(int)arg1 toVisible:(BOOL)arg2; -- (BOOL)tableView:(id)arg1 shouldReorderColumn:(long)arg2 toColumn:(long)arg3; -- (long)tableViewNumberOfColumnsToPinToLefthandSide:(id)arg1; -- (void)selectAllMessagesAndMakeFirstResponder; -- (void)makeMessageListFirstResponder; -- (void)updateTableViewRowHeight; -- (void)setFont:(id)arg1; -- (void)setNoteFont:(id)arg1; -- (BOOL)isInThreadedMode; -- (void)toggleThreadedMode; -- (void)threadedModeDidChange:(id)arg1; -- (void)_invalidateSelectionExcludingThreads; -- (BOOL)openThreadAtIndex:(long)arg1 andSelectMessage:(id)arg2 animate:(BOOL)arg3; -- (BOOL)closeThreadAtIndex:(long)arg1 focusRow:(long)arg2 animate:(BOOL)arg3; -- (void)openAllThreads; -- (void)closeAllThreads; -- (void)toggleThread:(id)arg1; -- (void)toggleThread:(id)arg1 ignoreModifierKeys:(BOOL)arg2; -- (long)_indexOfMessageNearest:(long)arg1 numberOfRows:(long)arg2 threaded:(BOOL)arg3 downward:(BOOL)arg4; -- (BOOL)canSelectPreviousThreadedMessage; -- (BOOL)canSelectNextThreadedMessage; -- (BOOL)canSelectParentOfMessage; -- (BOOL)canSelectFirstReplyToMessage; -- (BOOL)canSelectNextReplyToParent; -- (BOOL)selectionIsExactlyOneOpenThread; -- (void)selectNextMessageMovingDownward:(BOOL)arg1; -- (void)selectNextMessageMovingUpward:(BOOL)arg1; -- (BOOL)stepIntoSelectedThread; -- (BOOL)stepOutOfSelectedThread; -- (BOOL)openSelectedThread; -- (void)selectNextMessage:(BOOL)arg1; -- (void)selectPreviousMessage:(BOOL)arg1; -- (void)selectParentOfMessage; -- (void)selectFirstReplyToMessage; -- (void)selectPeer:(BOOL)arg1; -- (void)selectNextReplyToParent; -- (void)selectPreviousReplyToParent; -- (void)showSelectionAndCenter:(BOOL)arg1; -- (BOOL)isSelectionVisible; -- (void)scrollRowToVisible:(long)arg1 position:(int)arg2; -- (long)tableView:(id)arg1 shouldScrollRowToVisible:(long)arg2; -- (BOOL)_isMessageInSelectedThread:(id)arg1; -- (void)_setNeedsDisplayForMessagesInSet:(id)arg1 highlightOnly:(BOOL)arg2; -- (void)_setNeedsDisplayThreadColumnForMessagesInSet:(id)arg1; -- (void)_updateSelectedThreadList; -- (id)selectedThread; -- (void)_reallyUpdateTextViewerToSelection; -- (void)updateTextViewerToSelection; -- (void)selectionIsChanging:(id)arg1; -- (void)_selectOrDeselectMembersOfThread:(id)arg1 atIndex:(long)arg2 select:(BOOL)arg3; -- (void)selectionChanged:(id)arg1; -- (void)datesNeedRedisplay; -- (long)numberOfRowsInTableView:(id)arg1; -- (id)_attributesForTruncatedParagraphStyle; -- (id)_messageSelectionColor; -- (id)_colorForMessage:(id)arg1 inRow:(long)arg2 withCell:(id)arg3; -- (id)_truncatedAttributedStringForString:(id)arg1 message:(id)arg2 row:(long)arg3 shouldIndent:(BOOL)arg4; -- (id)_attributedUpdatedStringForRSSMessage:(id)arg1 row:(long)arg2; -- (id)tableView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 row:(long)arg3; -- (BOOL)tableView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; -- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long)arg3; -- (void)_updateColorHighlightEdges; -- (void)tableView:(id)arg1 didDragTableColumn:(id)arg2; -- (void)tableViewFrameChangedDuringLiveResize:(id)arg1; -- (void)tableViewWillStartLiveResize:(id)arg1; -- (void)tableViewDidEndLiveResize:(id)arg1; -- (void)tableViewColumnDidMove:(id)arg1; -- (void)tableViewColumnDidResize:(id)arg1; -- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long)arg4; -- (int)tableView:(id)arg1 highlightStyleForRow:(long)arg2 inRect:(struct CGRect *)arg3 color:(id *)arg4; -- (void)doubleClickedMessage:(id)arg1; -- (void)deleteKeyPressed; -- (void)deleteSelectionAllowingMoveToTrash:(BOOL)arg1; -- (id)selectionIncludingThreads:(BOOL)arg1; -- (id)selection; -- (void)_selectMessages:(id)arg1 scrollIfNeeded:(BOOL)arg2; -- (void)selectMessages:(id)arg1; -- (id)currentDisplayedMessage; -- (void)setCurrentDisplayedMessage:(id)arg1; -- (id)messageStore; -- (id)orderOfFromSubjectDateColumns; -- (id)tableView; -- (BOOL)tableView:(id)arg1 doCommandBySelector:(SEL)arg2; -- (id)_undoActionNameForMessageCount:(unsigned long)arg1; -- (void)_adjustScrollPositionForTransferedMessages:(id)arg1 isUndo:(BOOL)arg2; -- (void)selectMessagesForMessageTransfer:(id)arg1; -- (void)selectMessagesForMessageTransferUndo:(id)arg1; -- (void)_undeleteMessages:(id)arg1 allowUndo:(BOOL)arg2 unreadMessages:(id)arg3; -- (void)undeleteMessages:(id)arg1 allowUndo:(BOOL)arg2; -- (void)_redeleteMessages:(id)arg1 messagesToSelect:(id)arg2; -- (void)deleteMessages:(id)arg1 allowMoveToTrash:(BOOL)arg2 allowUndo:(BOOL)arg3; -- (void)undeleteMessagesAllowingUndo:(BOOL)arg1; -- (BOOL)shouldDeleteGivenCurrentState; -- (void)tableViewDraggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; -- (id)messagesToTransfer; -- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; -- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; -- (void)tableViewDragWillEnd:(id)arg1 operation:(unsigned long)arg2; -- (void)tableView:(id)arg1 willMouseDown:(id)arg2; -- (void)tableView:(id)arg1 didMouseDown:(id)arg2; -- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; -- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; -- (void)pasteboardChangedOwner:(id)arg1; -- (id)tableView:(id)arg1 namesOfPromisedFilesDroppedAtDestination:(id)arg2 forDraggedRowsWithIndexes:(id)arg3; -- (id)_dragImageForRow:(long)arg1 event:(id)arg2 dragImageOffset:(struct CGPoint *)arg3; -- (id)tableView:(id)arg1 dragImageForRowsWithIndexes:(id)arg2 event:(id)arg3 dragImageOffset:(struct CGPoint *)arg4; -- (void)tableView:(id)arg1 willDrawRowsInRange:(struct _NSRange)arg2; -- (void)tableView:(id)arg1 didDrawRowsInRange:(struct _NSRange)arg2; -- (struct CGRect)frameOfClickedCell; -- (struct CGPoint)mouseLocationInWindow; -- (void)callWillDisplayCellForClickedCell; -- (void)setButtonCellNeedsDisplay; -- (void)tableView:(id)arg1 gotEvent:(id)arg2; -- (BOOL)shouldTrackMouse:(id)arg1; -- (id)tableView:(id)arg1 rangesForBackgroundShadingInRange:(struct _NSRange)arg2 shadingColors:(id *)arg3 leftColumnColors:(id *)arg4; -- (id)messageMall; -- (long)_indexOfFirstNonDeletedNonSelectedMessage:(long)arg1 withinRowRange:(struct _NSRange)arg2 goUp:(BOOL)arg3; -- (BOOL)_goUpInsteadOfDown; -- (id)messageBrowserView; -- (id)messageToSelectIfEntireSelectionRemoved; -- (BOOL)includeDeleted; -- (void)setIncludeDeleted:(BOOL)arg1; -- (id)noteFont; -- (id)boldFont; -- (void)setBoldFont:(id)arg1; -- (id)font; -- (id)pasteboardURLString; -- (void)setPasteboardURLString:(id)arg1; -- (id)draggedMessages; -- (void)setDraggedMessages:(id)arg1; - -@end - -@interface TableViewManager (AppleScript) -+ (id)_getDarkerThreadBackgroundColorForThread:(id)arg1; -+ (id)_getThreadBackgroundColorForThread:(id)arg1; -- (int)_columnForAppleScriptColumn:(int)arg1; -- (int)appleScriptSortColumn; -- (void)setAppleScriptSortColumn:(int)arg1; -- (id)appleScriptVisibleColumns; -- (void)setAppleScriptVisibleColumns:(id)arg1; -@end - -@interface TableViewManager (FilteredList_Management) -- (void)mallStructureWillChange:(id)arg1; -- (void)setMailboxUids:(id)arg1 isSettingUpUI:(BOOL)arg2; -- (void)storeStructureChanged:(id)arg1; -- (void)messagesCompacted:(id)arg1; -- (void)messageFlagsChanged:(id)arg1; -- (void)_scrollToHappyPlace; -- (void)_recordVisibleState:(id)arg1 deletedAreGoingAway:(BOOL)arg2 considerPinToEnd:(BOOL)arg3; -- (BOOL)_restoreVisibleState:(id)arg1 forceSelToVisible:(BOOL)arg2; -- (void)dumpVisibleState; -- (long)indexOfTopmostVisibleMessageMustBeSelected:(BOOL)arg1 okayIfDeleted:(BOOL)arg2; -- (long)indexOfLastReadMessage; -- (id)persistentVisibleStateCreateIfNecessary:(BOOL)arg1; -- (void)_saveScrollAndSelection:(BOOL)arg1; -- (void)saveScrollAndSelection; -- (BOOL)restoreScrollAndSelection; -- (void)_setScrollAndSelectionForThreadOpenedOrClosed:(id)arg1 flag:(BOOL)arg2 clickedRow:(long)arg3 rowToSelectInOpeningThread:(long)arg4; -- (id)selectedMessageIDs; -- (id)openThreadIDs; -- (void)setSelectedMessageIDs:(id)arg1 openThreadIDs:(id)arg2; -- (void)clearSearch; -- (BOOL)isShowingSearchResults; -- (BOOL)rankColumnIsVisible; -- (void)searchForString:(id)arg1 in:(int)arg2 withOptions:(int)arg3; -- (BOOL)isFocused; -- (void)setFocusedMessages:(id)arg1; -- (BOOL)isSortedByRank; -- (BOOL)isSortedByDateReceived; -- (BOOL)isSortedChronologically; -- (int)sortColumn; -- (int)searchSortColumn; -- (void)setSortColumn:(int)arg1 ascending:(BOOL)arg2; -- (BOOL)isSortedAscending; -- (void)setIsSortedAscending:(BOOL)arg1; -- (BOOL)isSearchSortedAscending; -- (long)state; -- (id)filteredMessages; -- (void)clearTrackingRects; -- (void)updateTrackingRects; -- (long)_indexOfMemberToSelectWhenOpeningThread:(id)arg1; -- (double)_getAnimationDuration:(long)arg1; -- (id)_createHiliteImage; -- (id)_createBackgroundImage; -- (id)_createSnapshotOfRect:(struct CGRect)arg1 styleMask:(unsigned long)arg2 backing:(unsigned long)arg3 defer:(BOOL)arg4; -- (id)_createSnapshotOfRow:(long)arg1 styleMask:(unsigned long)arg2 backing:(unsigned long)arg3 defer:(BOOL)arg4; -- (BOOL)_isRowVisible:(long)arg1; -- (struct CGSize)_calculateTruncationAmountUsingRowHeight:(float)arg1 collapseOrExpandAmount:(float)arg2 invisibleThreadAmountAbove:(float)arg3 invisibleThreadAmountBelow:(float)arg4; -- (void)_animateThreadCollapsing:(long)arg1 threadRow:(long)arg2 clickedRow:(long)arg3; -- (float)_animateThreadOpening:(id)arg1 threadMessageCount:(long)arg2 threadRow:(long)arg3 rowToBeSelected:(long)arg4; -- (void)searchFinished:(id)arg1; -- (void)tableView:(id)arg1 willMoveToWindow:(id)arg2; -- (void)tableViewDidMoveToWindow:(id)arg1; -- (BOOL)selectMessageWithIDIfExists:(id)arg1; -@end - - -#elif defined(LEOPARD) - -@class ASExtendedTableView; -@class MessageMall; -@class Message; -@class VisibleStateObject; -@class MessageThread; -@class BytesFormatter; - -@protocol MVSelectionOwner -- (id)selection; -- (void)selectMessages:(id)fp8; -- (id)currentDisplayedMessage; -- (id)messageStore; -- (BOOL)transferSelectionToMailbox:(id)fp8 deleteOriginals:(BOOL)fp12; -@end - -@protocol MessageBrowserController -- (id)messageBrowserView; -- (BOOL)isSelectionVisible; -- (void)showSelectionAndCenter:(BOOL)fp8; -- (void)updateTextViewerToSelection; -- (id)messagesToTransfer; -- (void)willTransferMessages:(id)fp8 toMailbox:(id)fp12 deleteOriginals:(BOOL)fp16; -- (void)transfer:(id)fp8 didCompleteWithError:(id)fp12; -- (id)messageToSelectIfEntireSelectionRemoved; -- (void)selectNextMessage:(BOOL)fp8; -- (void)selectPreviousMessage:(BOOL)fp8; -- (void)selectNextMessageMovingDownward:(BOOL)fp8; -- (void)selectNextMessageMovingUpward:(BOOL)fp8; -- (BOOL)includeDeleted; -- (void)setIncludeDeleted:(BOOL)fp8; -- (BOOL)shouldDeleteGivenCurrentState; -- (void)deleteSelectionAllowingMoveToTrash:(BOOL)fp8; -- (void)deleteMessages:(id)fp8 allowMoveToTrash:(BOOL)fp12 allowUndo:(BOOL)fp16; -- (void)undeleteMessagesAllowingUndo:(BOOL)fp8; -- (void)undeleteMessages:(id)fp8 allowUndo:(BOOL)fp12; -@end - -@interface TableViewManager : NSObject -{ - ASExtendedTableView *_tableView; - MessageMall *_messageMall; - id _delegate; - NSArray *_tableColumns; - NSFont *_font; - NSFont *_boldFont; - NSFont *_noteFont; - NSMutableArray *_selection; - NSArray *_selectionExcludingThreads; - BOOL _suspendChangesToScrollingAndSelection; - Message *_currentDisplayedMessage; - NSMapTable *_storeStateTable; - NSMutableArray *_draggedMessages; - NSMutableAttributedString *_truncatedString; - NSMutableDictionary *_truncatedStringAttributes; - NSMutableDictionary *_truncatedParagraphStyle; - NSString *_availableStatusImageName; - int leftmostTextColumn; - struct { - unsigned int includeDeleted:1; - unsigned int isFocused:1; - unsigned int sortColumnOrderAscending:1; - unsigned int isShowingSearchResults:1; - unsigned int sortColumnOrder:8; - unsigned int hasScrolledSinceMailboxChange:1; - unsigned int userChangedSelectionSinceMailboxChange:1; - unsigned int threadOpeningIsInProgress:1; - unsigned int threadClosingIsInProgress:1; - unsigned int doubleClickThreadOpeningIsInProgress:1; - unsigned int animatingThreadOpening:1; - unsigned int animatingThreadClosing:1; - unsigned int animateInSlowMotion:1; - unsigned int dontUpdateTrackingRects:1; - unsigned int dontReadWriteStoreSpecificDefaultsToMailbox:1; - unsigned int useBoldFontForUnreadMessages:1; - unsigned int clearingSearch:1; - unsigned int changingSelection:1; - unsigned int selectionShouldNotChange:1; - unsigned int searchSortColumnOrder:8; - unsigned int searchSortColumnOrderAscending:1; - } _flags; - NSDictionary *_messageIDsToSelectWhenOpened; - NSArray *_threadIDsToOpenWhenOpened; - int colorHighlightLeftEdge; - int colorHighlightWidth; - int _windowWidthBeforeSearch; - VisibleStateObject *_visibleStateBeforeSearch; - NSMutableSet *_messagesInSelectedThread; - MessageThread *threadBeingClosed; - MessageThread *threadBeingOpened; - struct __CFDictionary *_rowDrawingCache; - NSMutableSet *_mouseTrackers; - struct _NSPoint _lastMouseDownInUnreadColumnPoint; - int _lastMouseDownInUnreadColumnEventNumber; - struct _NSPoint _currentMouseLocationInWindow; - float _amountToScrollDownAfterClosingThread; - int _numberOfSelectedRowsBeforeTogglingThread; - int _selectedRowBeforeTogglingThread; - BOOL _unreadColumnResizableAfterResizingColumnsToFit; - BytesFormatter *_bytesFormatter; - BOOL _isDragging; -} - -+ (void)initialize; -- (void)awakeFromNib; -- (id)tableViewGetDefaultMenu:(id)fp8; -- (id)_bytesFormatter; -- (void)_setBytesFormatter:(id)fp8; -- (void)tableViewScrolled:(id)fp8; -- (void)_setupColumnHeaderIcon:(id)fp8 inColumnWithIdentifier:(id)fp12 accessibilityTitle:(id)fp16 alignment:(unsigned int)fp20; -- (void)_setupTableColumnWidths; -- (void)_configureColumnForEndTruncation:(id)fp8; -- (void)_configureColumnForImageCell:(id)fp8 alignment:(unsigned int)fp12; -- (void)_configureColumnForRolloverCell:(id)fp8 alignment:(unsigned int)fp12 action:(SEL)fp16; -- (void)showFollowupsToMessage:(id)fp8; -- (void)showFollowupsToMessageAtRow:(int)fp8; -- (void)_setupColumnsForTableView; -- (void)dealloc; -- (void)windowWillClose:(id)fp8; -- (id)delegate; -- (void)setDelegate:(id)fp8; -- (void)setMessageMall:(id)fp8; -- (void)messagesUpdated:(id)fp8; -- (void)readDefaultsFromDictionary:(id)fp8; -- (void)writeDefaultsToDictionary:(id)fp8; -- (void)setDontReadWriteStoreSpecificDefaultsToMailbox:(BOOL)fp8; -- (void)writeStoreSpecificDefaultsToMailboxUid:(id)fp8; -- (void)readStoreSpecificDefaultsFromMailboxUid:(id)fp8; -- (void)readStoreSpecificDefaultsFromDictionary:(id)fp8; -- (BOOL)canSelectNextMessage; -- (BOOL)canSelectPreviousMessage; -- (void)rulePreferencesChanged:(id)fp8; -- (void)viewerPreferencesChanged:(id)fp8; -- (BOOL)threadHasSelectedMessages:(id)fp8; -- (void)presencePreferenceChanged:(id)fp8; -- (void)threadColorPreferenceChanged:(id)fp8; -- (void)presenceImageChanged:(id)fp8; -- (void)presenceChanged:(id)fp8; -- (void)_updateTableHeaderToMatchCurrentSort; -- (void)tableView:(id)fp8 didClickTableColumn:(id)fp12; -- (id)_columnWithIdentifierTag:(int)fp8; -- (id)_unreadColumn; -- (BOOL)isColumnVisible:(int)fp8; -- (void)setColumn:(int)fp8 toVisible:(BOOL)fp12; -- (void)_setColumn:(int)fp8 toVisible:(BOOL)fp12; -- (int)tableViewNumberOfColumnsToPinToLefthandSide:(id)fp8; -- (void)selectAllMessagesAndMakeFirstResponder; -- (void)makeMessageListFirstResponder; -- (void)updateTableViewRowHeight; -- (void)setFont:(id)fp8; -- (void)setNoteFont:(id)fp8; -- (BOOL)isInThreadedMode; -- (void)toggleThreadedMode; -- (void)threadedModeDidChange:(id)fp8; -- (void)_invalidateSelectionExcludingThreads; -- (BOOL)openThreadAtIndex:(int)fp8 andSelectMessage:(id)fp12 animate:(BOOL)fp16; -- (BOOL)closeThreadAtIndex:(int)fp8 focusRow:(int)fp12 animate:(BOOL)fp16; -- (void)openAllThreads; -- (void)closeAllThreads; -- (void)toggleThread:(id)fp8; -- (void)toggleThread:(id)fp8 ignoreModifierKeys:(BOOL)fp12; -- (int)_indexOfMessageNearest:(int)fp8 numberOfRows:(int)fp12 threaded:(BOOL)fp16 downward:(BOOL)fp20; -- (BOOL)canSelectPreviousThreadedMessage; -- (BOOL)canSelectNextThreadedMessage; -- (BOOL)canSelectParentOfMessage; -- (BOOL)canSelectFirstReplyToMessage; -- (BOOL)canSelectNextReplyToParent; -- (BOOL)selectionIsExactlyOneOpenThread; -- (void)selectNextMessageMovingDownward:(BOOL)fp8; -- (void)selectNextMessageMovingUpward:(BOOL)fp8; -- (BOOL)stepIntoSelectedThread; -- (BOOL)stepOutOfSelectedThread; -- (BOOL)openSelectedThread; -- (void)selectNextMessage:(BOOL)fp8; -- (void)selectPreviousMessage:(BOOL)fp8; -- (void)selectParentOfMessage; -- (void)selectFirstReplyToMessage; -- (void)selectPeer:(BOOL)fp8; -- (void)selectNextReplyToParent; -- (void)selectPreviousReplyToParent; -- (void)showSelectionAndCenter:(BOOL)fp8; -- (BOOL)isSelectionVisible; -- (void)scrollRowToVisible:(int)fp8 position:(int)fp12; -- (int)tableView:(id)fp8 shouldScrollRowToVisible:(int)fp12; -- (BOOL)_isMessageInSelectedThread:(id)fp8; -- (void)_setNeedsDisplayForMessagesInSet:(id)fp8 highlightOnly:(BOOL)fp12; -- (void)_setNeedsDisplayThreadColumnForMessagesInSet:(id)fp8; -- (void)_updateSelectedThreadList; -- (id)selectedThread; -- (void)_reallyUpdateTextViewerToSelection; -- (void)updateTextViewerToSelection; -- (BOOL)tableView:(id)fp8 shouldSelectRow:(int)fp12 byExtendingSelection:(BOOL)fp16; -- (void)selectionIsChanging:(id)fp8; -- (void)_selectOrDeselectMembersOfThread:(id)fp8 atIndex:(int)fp12 select:(BOOL)fp16; -- (void)selectionChanged:(id)fp8; -- (void)datesNeedRedisplay; -- (int)numberOfRowsInTableView:(id)fp8; -- (id)_attributesForTruncatedParagraphStyle; -- (id)_colorForMessage:(id)fp8 inRow:(int)fp12; -- (id)_truncatedAttributedStringForString:(id)fp8 message:(id)fp12 row:(int)fp16 shouldIndent:(BOOL)fp20; -- (id)_attributedUpdatedStringForRSSMessage:(id)fp8 row:(int)fp12; -- (id)tableView:(id)fp8 typeSelectStringForTableColumn:(id)fp12 row:(int)fp16; -- (BOOL)tableView:(id)fp8 shouldTypeSelectForEvent:(id)fp12 withCurrentSearchString:(id)fp16; -- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16; -- (void)_updateColorHighlightEdges; -- (void)tableView:(id)fp8 didDragTableColumn:(id)fp12; -- (void)tableViewDidEndLiveResize:(id)fp8; -- (void)tableViewColumnDidMove:(id)fp8; -- (void)tableViewColumnDidResize:(id)fp8; -- (void)tableView:(id)fp8 willDisplayCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20; -- (id)tableViewHighlightColor:(id)fp8; -- (int)tableView:(id)fp8 highlightStyleForRow:(int)fp12 inRect:(struct _NSRect *)fp16 color:(id *)fp20; -- (void)doubleClickedMessage:(id)fp8; -- (void)deleteKeyPressed; -- (void)deleteSelectionAllowingMoveToTrash:(BOOL)fp8; -- (id)selectionIncludingThreads:(BOOL)fp8; -- (id)selection; -- (void)_selectMessages:(id)fp8 scrollIfNeeded:(BOOL)fp12; -- (void)selectMessages:(id)fp8; -- (id)currentDisplayedMessage; -- (void)setCurrentDisplayedMessage:(id)fp8; -- (id)messageStore; -- (id)orderOfFromSubjectDateColumns; -- (id)tableView; -- (BOOL)tableView:(id)fp8 doCommandBySelector:(SEL)fp12; -- (id)_undoActionNameForMessageCount:(unsigned int)fp8; -- (void)selectMessagesForUndo:(id)fp8; -- (void)_undeleteMessages:(id)fp8 allowUndo:(BOOL)fp12 unreadMessages:(id)fp16; -- (void)undeleteMessages:(id)fp8 allowUndo:(BOOL)fp12; -- (void)_redeleteMessages:(id)fp8 messagesToSelect:(id)fp12; -- (void)deleteMessages:(id)fp8 allowMoveToTrash:(BOOL)fp12 allowUndo:(BOOL)fp16; -- (void)undeleteMessagesAllowingUndo:(BOOL)fp8; -- (BOOL)shouldDeleteGivenCurrentState; -- (void)tableViewDraggedImage:(id)fp8 movedTo:(struct _NSPoint)fp12; -- (unsigned int)tableView:(id)fp8 draggingSourceOperationMaskForLocal:(BOOL)fp12; -- (id)messagesToTransfer; -- (void)willTransferMessages:(id)fp8 toMailbox:(id)fp12 deleteOriginals:(BOOL)fp16; -- (void)transfer:(id)fp8 didCompleteWithError:(id)fp12; -- (BOOL)transferSelectionToMailbox:(id)fp8 deleteOriginals:(BOOL)fp12; -- (void)tableViewDragWillEnd:(id)fp8 operation:(unsigned int)fp12; -- (BOOL)tableView:(id)fp8 writeRowsWithIndexes:(id)fp12 toPasteboard:(id)fp16; -- (void)pasteboard:(id)fp8 provideDataForType:(id)fp12; -- (id)tableView:(id)fp8 namesOfPromisedFilesDroppedAtDestination:(id)fp12 forDraggedRowsWithIndexes:(id)fp16; -- (id)_dragImageForRow:(int)fp8 event:(id)fp12 dragImageOffset:(struct _NSPoint *)fp16; -- (id)tableView:(id)fp8 dragImageForRowsWithIndexes:(id)fp12 event:(id)fp16 dragImageOffset:(struct _NSPoint *)fp20; -- (void)tableView:(id)fp8 willDrawRowsInRange:(struct _NSRange)fp12; -- (void)tableView:(id)fp8 didDrawRowsInRange:(struct _NSRange)fp12; -- (struct _NSRect)frameOfClickedCell; -- (struct _NSPoint)mouseLocationInWindow; -- (void)callWillDisplayCellForClickedCell; -- (void)setButtonCellNeedsDisplay; -- (void)tableView:(id)fp8 gotEvent:(id)fp12; -- (BOOL)shouldTrackMouse:(id)fp8; -- (id)tableView:(id)fp8 rangesForBackgroundShadingInRange:(struct _NSRange)fp12 shadingColors:(id *)fp20 leftColumnColors:(id *)fp24; -- (id)messageMall; -- (int)_indexOfFirstNonDeletedNonSelectedMessage:(int)fp8 withinRowRange:(struct _NSRange)fp12 goUp:(BOOL)fp20; -- (id)messageBrowserView; -- (id)messageToSelectIfEntireSelectionRemoved; -- (BOOL)includeDeleted; -- (void)setIncludeDeleted:(BOOL)fp8; -- (id)noteFont; -- (id)boldFont; -- (void)setBoldFont:(id)fp8; -- (id)font; -- (id)draggedMessages; -- (void)setDraggedMessages:(id)fp8; - -@end - -@interface TableViewManager (AppleScript) -+ (id)_getDarkerThreadBackgroundColorForThread:(id)fp8; -+ (id)_getThreadBackgroundColorForThread:(id)fp8; -- (int)_columnForAppleScriptColumn:(int)fp8; -- (int)appleScriptSortColumn; -- (void)setAppleScriptSortColumn:(int)fp8; -- (id)appleScriptVisibleColumns; -- (void)setAppleScriptVisibleColumns:(id)fp8; -@end - -@interface TableViewManager (FilteredList_Management) -- (void)mallStructureWillChange:(id)fp8; -- (void)setMailboxUids:(id)fp8 isSettingUpUI:(BOOL)fp12; -- (void)storeStructureChanged:(id)fp8; -- (void)messagesCompacted:(id)fp8; -- (void)messageFlagsChanged:(id)fp8; -- (void)_scrollToHappyPlace; -- (void)_recordVisibleState:(struct visible_state *)fp8 deletedAreGoingAway:(BOOL)fp12 considerPinToEnd:(BOOL)fp16; -- (BOOL)_restoreVisibleState:(struct visible_state *)fp8 forceSelToVisible:(BOOL)fp12; -- (void)dumpVisibleState; -- (int)indexOfTopmostVisibleMessageMustBeSelected:(BOOL)fp8 okayIfDeleted:(BOOL)fp12; -- (int)indexOfLastReadMessage; -- (id)persistentVisibleStateCreateIfNecessary:(BOOL)fp8; -- (void)_saveScrollAndSelection:(BOOL)fp8; -- (void)saveScrollAndSelection; -- (BOOL)restoreScrollAndSelection; -- (void)_setScrollAndSelectionForThreadOpenedOrClosed:(id)fp8 flag:(BOOL)fp12 clickedRow:(int)fp16 rowToSelectInOpeningThread:(int)fp20; -- (id)selectedMessageIDs; -- (id)openThreadIDs; -- (void)setSelectedMessageIDs:(id)fp8 openThreadIDs:(id)fp12; -- (void)clearSearch; -- (BOOL)isShowingSearchResults; -- (BOOL)rankColumnIsVisible; -- (void)searchForString:(id)fp8 in:(int)fp12 withOptions:(int)fp16; -- (BOOL)isFocused; -- (void)setFocusedMessages:(id)fp8; -- (BOOL)isSortedByRank; -- (BOOL)isSortedByDateReceived; -- (BOOL)isSortedChronologically; -- (int)sortColumn; -- (int)searchSortColumn; -- (void)setSortColumn:(int)fp8 ascending:(BOOL)fp12; -- (BOOL)isSortedAscending; -- (void)setIsSortedAscending:(BOOL)fp8; -- (BOOL)isSearchSortedAscending; -- (int)state; -- (id)filteredMessages; -- (void)clearTrackingRects; -- (void)updateTrackingRects; -- (int)_indexOfMemberToSelectWhenOpeningThread:(id)fp8; -- (double)_getAnimationDuration:(int)fp8; -- (id)_createHiliteImage; -- (id)_createBackgroundImage; -- (id)_createSnapshotOfRect:(struct _NSRect)fp8 styleMask:(unsigned int)fp24 backing:(unsigned int)fp28 defer:(BOOL)fp32; -- (id)_createSnapshotOfRow:(int)fp8 styleMask:(unsigned int)fp12 backing:(unsigned int)fp16 defer:(BOOL)fp20; -- (BOOL)_isRowVisible:(int)fp8; -- (struct _NSSize)_calculateTruncationAmountUsingRowHeight:(float)fp8 collapseOrExpandAmount:(float)fp12 invisibleThreadAmountAbove:(float)fp16 invisibleThreadAmountBelow:(float)fp20; -- (void)_animateThreadCollapsing:(int)fp8 threadRow:(int)fp12 clickedRow:(int)fp16; -- (float)_animateThreadOpening:(id)fp8 threadMessageCount:(int)fp12 threadRow:(int)fp16 rowToBeSelected:(int)fp20; -- (void)searchFinished:(id)fp8; -- (void)tableView:(id)fp8 willMoveToWindow:(id)fp12; -- (void)tableViewDidMoveToWindow:(id)fp8; -- (BOOL)selectMessageWithIDIfExists:(id)fp8; -@end - -#elif defined(TIGER) - -@class ASExtendedTableView; -@class MessageStore; -@class Message; -@class MessageMall; -@class MessageThread; -@class VisibleStateObject; - -@protocol MVSelectionOwner -- (id)selection; -- (void)selectMessages:(id)fp8; -- (id)currentDisplayedMessage; -- (id)messageStore; -- (BOOL)transferSelectionToMailbox:(id)fp8 deleteOriginals:(BOOL)fp12; -@end - -@protocol MessageBrowserController -- (id)messageBrowserView; -- (BOOL)isSelectionVisible; -- (void)showSelectionAndCenter:(BOOL)fp8; -- (void)updateTextViewerToSelection; -- (id)messagesToTransfer; -- (void)willTransferMessages:(id)fp8 toMailbox:(id)fp12 deleteOriginals:(BOOL)fp16; -- (void)transfer:(id)fp8 didCompleteWithError:(id)fp12; -- (id)messageToSelectIfEntireSelectionRemoved; -- (void)selectNextMessage:(BOOL)fp8; -- (void)selectPreviousMessage:(BOOL)fp8; -- (void)selectNextMessageMovingDownward:(BOOL)fp8; -- (void)selectNextMessageMovingUpward:(BOOL)fp8; -- (BOOL)includeDeleted; -- (void)setIncludeDeleted:(BOOL)fp8; -- (BOOL)shouldDeleteGivenCurrentState; -- (void)deleteSelectionAllowingMoveToTrash:(BOOL)fp8; -- (void)deleteMessages:(id)fp8 allowMoveToTrash:(BOOL)fp12 allowUndo:(BOOL)fp16; -- (void)undeleteMessagesAllowingUndo:(BOOL)fp8; -- (void)undeleteMessages:(id)fp8 allowUndo:(BOOL)fp12; -@end - -@interface TableViewManager : NSObject -{ - ASExtendedTableView *_tableView; - MessageMall *_messageMall; - id _delegate; - NSArray *_tableColumns; - NSFont *_font; - NSFont *_boldFont; - NSMutableArray *_selection; - NSArray *_selectionExcludingThreads; - BOOL _suspendChangesToScrollingAndSelection; - Message *_currentDisplayedMessage; - struct _NSMapTable *_storeStateTable; - NSMutableArray *_draggedMessages; - NSMutableAttributedString *_truncatedString; - NSMutableDictionary *_truncatedParagraphStyle; - NSString *_availableStatusImageName; - int leftmostTextColumn; - struct { - unsigned int includeDeleted:1; - unsigned int isFocused:1; - unsigned int wasSortedAscendingBeforeRankSort:1; - unsigned int isShowingSearchResults:1; - unsigned int sortColumnBeforeRankSort:8; - unsigned int showAccountInLocationColumn:1; - unsigned int showSenderColumnAlways:1; - unsigned int hideSenderColumnAlways:1; - unsigned int showReceiverColumnAlways:1; - unsigned int hideReceiverColumnAlways:1; - unsigned int showDateReceivedColumnAlways:1; - unsigned int hideDateReceivedColumnAlways:1; - unsigned int showDateSentColumnAlways:1; - unsigned int hideDateSentColumnAlways:1; - unsigned int showDateLastViewedColumnAlways:1; - unsigned int hideDateLastViewedColumnAlways:1; - unsigned int showLocationColumn:1; - unsigned int hasScrolledSinceMailboxChange:1; - unsigned int userChangedSelectionSinceMailboxChange:1; - unsigned int threadOpeningIsInProgress:1; - unsigned int threadClosingIsInProgress:1; - unsigned int doubleClickThreadOpeningIsInProgress:1; - unsigned int animatingThreadOpening:1; - unsigned int animatingThreadClosing:1; - unsigned int animateInSlowMotion:1; - unsigned int dontUpdateTrackingRects:1; - unsigned int dontReadWriteStoreSpecificDefaultsToMailbox:1; - unsigned int useBoldFontForUnreadMessages:1; - unsigned int clearingSearch:1; - unsigned int changingSelection:1; - unsigned int selectionShouldNotChange:1; - } _flags; - NSDictionary *_messageIDsToSelectWhenOpened; - NSArray *_threadIDsToOpenWhenOpened; - int colorHighlightLeftEdge; - int colorHighlightWidth; - int locationColumnPosition; - int locationColumnWidth; - int senderColumnPosition; - int senderColumnWidth; - int receiverColumnPosition; - int receiverColumnWidth; - int dateReceivedColumnPosition; - int dateReceivedColumnWidth; - int dateSentColumnPosition; - int dateSentColumnWidth; - int dateLastViewedColumnPosition; - int dateLastViewedColumnWidth; - int threadedUnreadColumnWidth; - NSMutableDictionary *_columnWidthsBeforeSearch; - int _windowWidthBeforeSearch; - VisibleStateObject *_visibleStateBeforeSearch; - NSMutableSet *_messagesInSelectedThread; - MessageThread *threadBeingClosed; - MessageThread *threadBeingOpened; - struct __CFDictionary *_rowDrawingCache; - NSMutableSet *_mouseTrackers; - struct _NSPoint _lastMouseDownInUnreadColumnPoint; - int _lastMouseDownInUnreadColumnEventNumber; - struct _NSPoint _currentMouseLocationInWindow; - float _amountToScrollDownAfterClosingThread; - int _numberOfSelectedRowsBeforeTogglingThread; - int _selectedRowBeforeTogglingThread; - BOOL _unreadColumnResizableAfterResizingColumnsToFit; -} - -+ (void)initialize; -- (void)awakeFromNib; -- (void)tableViewScrolled:(id)fp8; -- (void)_setupColumnHeaderIcon:(id)fp8 inColumnWithIdentifier:(id)fp12 accessibilityTitle:(id)fp16 alignment:(int)fp20; -- (int)_calcUnreadColumnWidthForUnreadCountString:(id)fp8; -- (void)_setupUnreadColumnMinWidth; -- (void)_setupUnreadColumnWidth; -- (void)_setupTableColumnWidths; -- (void)_configureColumnForEndTruncation:(id)fp8; -- (void)_configureColumnForDateCell:(id)fp8; -- (void)_configureColumnForImageCell:(id)fp8 alignment:(int)fp12; -- (void)_configureColumnForRolloverCell:(id)fp8 alignment:(int)fp12 action:(SEL)fp16; -- (void)showFollowupsToMessage:(id)fp8; -- (void)showFollowupsToMessageAtRow:(int)fp8; -- (void)_setupColumnsForTableView; -- (void)dealloc; -- (void)windowWillClose:(id)fp8; -- (id)delegate; -- (void)setDelegate:(id)fp8; -- (void)setMessageMall:(id)fp8; -- (void)readDefaultsFromDictionary:(id)fp8; -- (void)readColumnLayoutFromDictionary:(id)fp8; -- (void)writeDefaultsToDictionary:(id)fp8; -- (void)writeColumnLayoutToDictionary:(id)fp8; -- (void)setDontReadWriteStoreSpecificDefaultsToMailbox:(BOOL)fp8; -- (void)writeStoreSpecificDefaultsToMailboxUid:(id)fp8; -- (void)readStoreSpecificDefaultsFromMailboxUid:(id)fp8; -- (void)readStoreSpecificDefaultsFromDictionary:(id)fp8; -- (BOOL)canSelectNextMessage; -- (BOOL)canSelectPreviousMessage; -- (void)rulePreferencesChanged:(id)fp8; -- (void)viewerPreferencesChanged:(id)fp8; -- (BOOL)threadHasSelectedMessages:(id)fp8; -- (void)presencePreferenceChanged:(id)fp8; -- (void)threadColorPreferenceChanged:(id)fp8; -- (void)presenceImageChanged:(id)fp8; -- (void)presenceChanged:(id)fp8; -- (void)_updateTableHeaderToMatchCurrentSort; -- (void)tableView:(id)fp8 didClickTableColumn:(id)fp12; -- (id)_columnWithIdentifierTag:(int)fp8; -- (id)_unreadColumn; -- (BOOL)isColumnVisible:(int)fp8; -- (void)setColumn:(int)fp8 toVisible:(BOOL)fp12; -- (void)_setColumn:(int)fp8 toVisible:(BOOL)fp12; -- (BOOL)displaysMessageSizes; -- (void)setDisplaysReceiver:(BOOL)fp8 displaysDateSent:(BOOL)fp12 displaysDateLastViewed:(BOOL)fp16; -- (int)tableViewNumberOfColumnsToPinToLefthandSide:(id)fp8; -- (void)selectAllMessagesAndMakeFirstResponder; -- (void)makeMessageListFirstResponder; -- (void)setFont:(id)fp8; -- (id)font; -- (id)boldFont; -- (BOOL)isInThreadedMode; -- (void)toggleThreadedMode; -- (void)threadedModeDidChange:(id)fp8; -- (void)_invalidateSelectionExcludingThreads; -- (void)openThreadAtIndex:(int)fp8 andSelectMessage:(id)fp12 animate:(BOOL)fp16; -- (void)closeThreadAtIndex:(int)fp8 focusRow:(int)fp12 animate:(BOOL)fp16; -- (void)openAllThreads; -- (void)closeAllThreads; -- (void)toggleThread:(id)fp8; -- (void)toggleThread:(id)fp8 ignoreModifierKeys:(BOOL)fp12; -- (int)_indexOfMessageNearest:(int)fp8 numberOfRows:(int)fp12 threaded:(BOOL)fp16 downward:(BOOL)fp20; -- (BOOL)canSelectPreviousThreadedMessage; -- (BOOL)canSelectNextThreadedMessage; -- (BOOL)canSelectParentOfMessage; -- (BOOL)canSelectFirstReplyToMessage; -- (BOOL)canSelectNextReplyToParent; -- (BOOL)selectionIsExactlyOneOpenThread; -- (void)selectNextMessageMovingDownward:(BOOL)fp8; -- (void)selectNextMessageMovingUpward:(BOOL)fp8; -- (void)stepIntoSelectedThread; -- (void)stepOutOfSelectedThread; -- (BOOL)openSelectedThread; -- (void)selectNextMessage:(BOOL)fp8; -- (void)selectPreviousMessage:(BOOL)fp8; -- (void)selectParentOfMessage; -- (void)selectFirstReplyToMessage; -- (void)selectPeer:(BOOL)fp8; -- (void)selectNextReplyToParent; -- (void)selectPreviousReplyToParent; -- (void)showSelectionAndCenter:(BOOL)fp8; -- (BOOL)isSelectionVisible; -- (void)scrollRowToVisible:(int)fp8 position:(int)fp12; -- (int)tableView:(id)fp8 shouldScrollRowToVisible:(int)fp12; -- (BOOL)_isMessageInSelectedThread:(id)fp8; -- (void)_setNeedsDisplayForMessagesInSet:(id)fp8; -- (void)_setNeedsDisplayThreadColumnForMessagesInSet:(id)fp8; -- (void)_updateSelectedThreadList; -- (id)selectedThread; -- (void)_reallyUpdateTextViewerToSelection; -- (void)updateTextViewerToSelection; -- (BOOL)tableView:(id)fp8 shouldSelectRow:(int)fp12 byExtendingSelection:(BOOL)fp16; -- (void)selectionIsChanging:(id)fp8; -- (void)_selectOrDeselectMembersOfThread:(id)fp8 atIndex:(int)fp12 select:(BOOL)fp16; -- (void)selectionChanged:(id)fp8; -- (void)datesNeedRedisplay; -- (int)numberOfRowsInTableView:(id)fp8; -- (id)_attributesForTruncatedParagraphStyle; -- (id)_colorForMessage:(id)fp8 inRow:(int)fp12; -- (id)_truncatedAttributedStringForString:(id)fp8 message:(id)fp12 row:(int)fp16 shouldIndent:(BOOL)fp20; -- (id)tableView:(id)fp8 sampleObjectValueForTableColumn:(id)fp12 row:(int)fp16; -- (id)tableView:(id)fp8 objectValueForTableColumn:(id)fp12 row:(int)fp16; -- (void)_updateColorHighlightEdges; -- (void)tableView:(id)fp8 didDragTableColumn:(id)fp12; -- (void)tableViewColumnDidMove:(id)fp8; -- (void)tableViewColumnDidResize:(id)fp8; -- (void)tableView:(id)fp8 willDisplaySampleCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20; -- (void)tableView:(id)fp8 willDisplayCell:(id)fp12 forTableColumn:(id)fp16 row:(int)fp20; -- (id)tableViewHighlightColor:(id)fp8; -- (int)tableView:(id)fp8 highlightStyleForRow:(int)fp12 inRect:(struct _NSRect *)fp16 color:(id *)fp20; -- (void)doubleClickedMessage:(id)fp8; -- (void)deleteKeyPressed; -- (void)deleteSelectionAllowingMoveToTrash:(BOOL)fp8; -- (id)selectionIncludingThreads:(BOOL)fp8; -- (id)selection; -- (void)_selectMessages:(id)fp8 scrollIfNeeded:(BOOL)fp12; -- (void)selectMessages:(id)fp8; -- (id)currentDisplayedMessage; -- (id)messageStore; -- (id)orderOfFromSubjectDateColumns; -- (id)tableView; -- (BOOL)tableView:(id)fp8 doCommandBySelector:(SEL)fp12; -- (id)_undoActionNameForMessages:(id)fp8; -- (void)_undeleteMessages:(id)fp8 allowUndo:(BOOL)fp12 unreadMessages:(id)fp16; -- (id)_unreadMessagesFromMessages:(id)fp8; -- (void)undeleteMessages:(id)fp8 allowUndo:(BOOL)fp12; -- (void)_redeleteMessages:(id)fp8 messagesToSelect:(id)fp12; -- (void)deleteMessages:(id)fp8 allowMoveToTrash:(BOOL)fp12 allowUndo:(BOOL)fp16; -- (void)undeleteMessagesAllowingUndo:(BOOL)fp8; -- (BOOL)shouldDeleteGivenCurrentState; -- (void)tableViewDraggedImage:(id)fp8 movedTo:(struct _NSPoint)fp12; -- (unsigned int)tableView:(id)fp8 draggingSourceOperationMaskForLocal:(BOOL)fp12; -- (id)messagesToTransfer; -- (void)willTransferMessages:(id)fp8 toMailbox:(id)fp12 deleteOriginals:(BOOL)fp16; -- (void)transfer:(id)fp8 didCompleteWithError:(id)fp12; -- (BOOL)transferSelectionToMailbox:(id)fp8 deleteOriginals:(BOOL)fp12; -- (void)tableViewDragWillEnd:(id)fp8 operation:(unsigned int)fp12; -- (BOOL)tableView:(id)fp8 writeRows:(id)fp12 toPasteboard:(id)fp16; -- (id)_dragImageForRow:(int)fp8 event:(id)fp12 dragImageOffset:(struct _NSPoint *)fp16; -- (id)tableView:(id)fp8 dragImageForRowsWithIndexes:(id)fp12 event:(id)fp16 dragImageOffset:(struct _NSPoint *)fp20; -- (void)tableView:(id)fp8 willDrawRowsInRange:(struct _NSRange)fp12; -- (void)tableView:(id)fp8 didDrawRowsInRange:(struct _NSRange)fp12; -- (struct _NSRect)frameOfClickedCell; -- (struct _NSPoint)mouseLocationInWindow; -- (void)callWillDisplayCellForClickedCell; -- (void)setButtonCellNeedsDisplay; -- (void)tableView:(id)fp8 gotEvent:(id)fp12; -- (BOOL)shouldTrackMouse:(id)fp8; -- (id)tableView:(id)fp8 rangesForBackgroundShadingInRange:(struct _NSRange)fp12 shadingColors:(id *)fp20 leftColumnColors:(id *)fp24; -- (id)messageMall; -- (int)_indexOfFirstNonDeletedNonSelectedMessage:(int)fp8 withinRowRange:(struct _NSRange)fp12 goUp:(BOOL)fp20; -- (id)messageBrowserView; -- (id)messageToSelectIfEntireSelectionRemoved; -- (BOOL)includeDeleted; -- (void)setIncludeDeleted:(BOOL)fp8; - -@end - -@interface TableViewManager (AppleScript) -+ (id)_getDarkerThreadBackgroundColorForThread:(id)fp8; -+ (id)_getThreadBackgroundColorForThread:(id)fp8; -- (int)_columnForAppleScriptColumn:(int)fp8; -- (int)appleScriptSortColumn; -- (void)setAppleScriptSortColumn:(int)fp8; -- (id)appleScriptVisibleColumns; -- (void)setAppleScriptVisibleColumns:(id)fp8; -@end - -@interface TableViewManager (FilteredList_Management) -- (void)mallStructureWillChange:(id)fp8; -- (void)setMailboxUids:(id)fp8; -- (BOOL)_allMailboxes:(id)fp8 areOfTypes:(int *)fp12 typeCount:(unsigned int)fp16; -- (BOOL)allMailboxesAreOutgoing:(id)fp8; -- (BOOL)allMailboxes:(id)fp8 areOfType:(int)fp12; -- (BOOL)_criterionIsLastViewedDate:(id)fp8; -- (BOOL)mailboxIsViewingHistorySmartMailbox:(id)fp8; -- (BOOL)allMailboxesAreViewingHistorySmartMailboxes:(id)fp8; -- (void)storeStructureChanged:(id)fp8; -- (void)messagesCompacted:(id)fp8; -- (void)messageFlagsChanged:(id)fp8; -- (void)_scrollToHappyPlace; -- (void)_recordVisibleState:(struct visible_state *)fp8 deletedAreGoingAway:(BOOL)fp12 considerPinToEnd:(BOOL)fp16; -- (BOOL)_restoreVisibleState:(struct visible_state *)fp8 forceSelToVisible:(BOOL)fp12; -- (void)dumpVisibleState; -- (int)indexOfTopmostVisibleMessageMustBeSelected:(BOOL)fp8 okayIfDeleted:(BOOL)fp12; -- (int)indexOfLastReadMessage; -- (id)persistentVisibleStateCreateIfNecessary:(BOOL)fp8; -- (void)_saveScrollAndSelection:(BOOL)fp8; -- (void)saveScrollAndSelection; -- (BOOL)restoreScrollAndSelection; -- (void)_setScrollAndSelectionForThreadOpenedOrClosed:(id)fp8 flag:(BOOL)fp12 clickedRow:(int)fp16 rowToSelectInOpeningThread:(int)fp20; -- (id)selectedMessageIDs; -- (id)openThreadIDs; -- (void)setSelectedMessageIDs:(id)fp8 openThreadIDs:(id)fp12; -- (void)addRanks; -- (void)removeRanks; -- (void)clearSearch; -- (BOOL)isShowingSearchResults; -- (void)searchForString:(id)fp8 in:(int)fp12 withOptions:(int)fp16; -- (BOOL)isFocused; -- (void)setFocusedMessages:(id)fp8; -- (BOOL)isSortedByRank; -- (BOOL)isSortedByDateReceived; -- (BOOL)isSortedChronologically; -- (int)sortColumn; -- (void)setSortColumn:(int)fp8 ascending:(BOOL)fp12; -- (BOOL)isSortedAscending; -- (void)setIsSortedAscending:(BOOL)fp8; -- (int)state; -- (id)filteredMessages; -- (void)restoreLocationColumnIfAppropriate; -- (void)clearTrackingRects; -- (void)updateTrackingRects; -- (int)_indexOfMemberToSelectWhenOpeningThread:(id)fp8; -- (double)_getAnimationDuration:(int)fp8; -- (id)_createHiliteImage; -- (id)_createBackgroundImage; -- (id)_createSnapshotOfRect:(struct _NSRect)fp8 styleMask:(unsigned int)fp24 backing:(int)fp28 defer:(BOOL)fp32; -- (id)_createSnapshotOfRow:(int)fp8 styleMask:(unsigned int)fp12 backing:(int)fp16 defer:(BOOL)fp20; -- (BOOL)_isRowVisible:(int)fp8; -- (struct _NSSize)_calculateTruncationAmountUsingRowHeight:(float)fp8 collapseOrExpandAmount:(float)fp12 invisibleThreadAmountAbove:(float)fp16 invisibleThreadAmountBelow:(float)fp20; -- (void)_animateThreadCollapsing:(int)fp8 threadRow:(int)fp12 clickedRow:(int)fp16; -- (float)_animateThreadOpening:(id)fp8 threadMessageCount:(int)fp12 threadRow:(int)fp16 rowToBeSelected:(int)fp20; -- (void)searchFinished:(id)fp8; -- (void)tableView:(id)fp8 willMoveToWindow:(id)fp12; -- (void)tableViewDidMoveToWindow:(id)fp8; -- (BOOL)selectMessageWithIDIfExists:(id)fp8; -@end - -#else - -@class ASExtendedTableView; -@class MessageStore; -@class Message; -@class MessageMall; -@class MessageThread; - -@protocol MVSelectionOwner -- (char)transferSelectionToMailbox:fp8 deleteOriginals:(char)fp12; -- messageStore; -- currentDisplayedMessage; -- (void)selectMessages:fp8; -- selection; -@end - -@interface TableViewManager:NSObject -{ - ASExtendedTableView *_tableView; // 4 = 0x4 - MessageMall *_messageMall; // 8 = 0x8 - id _delegate; // 12 = 0xc - NSArray *_tableColumns; // 16 = 0x10 - NSFont *_font; // 20 = 0x14 - NSMutableArray *_selection; // 24 = 0x18 - char _suspendChangesToScrollingAndSelection; // 28 = 0x1c - Message *_currentDisplayedMessage; // 32 = 0x20 - struct _NSMapTable *_storeStateTable; // 36 = 0x24 - NSMutableArray *_draggedMessages; // 40 = 0x28 - NSMutableAttributedString *_truncatedString; // 44 = 0x2c - NSMutableDictionary *_truncatedParagraphStyle; // 48 = 0x30 - int leftmostTextColumn; // 52 = 0x34 - struct { - int includeDeleted:1; - int isFocused:1; - int wasSortedAscendingBeforeRankSort:1; - int isShowingSearchResults:1; - int sortColumnBeforeRankSort:8; - int showAccountInLocationColumn:1; - int showSenderColumnAlways:1; - int hideSenderColumnAlways:1; - int showReceiverColumnAlways:1; - int hideReceiverColumnAlways:1; - int showLocationColumn:1; - int hasScrolledSinceMailboxChange:1; - int userChangedSelectionSinceMailboxChange:1; - int threadOpeningIsInProgress:1; - int threadClosingIsInProgress:1; - int doubleClickThreadOpeningIsInProgress:1; - int animatingThreadOpening:1; - int animatingThreadClosing:1; - unsigned int animateInSlowMotion; - unsigned int dontUpdateTrackingRects; - } _flags; // 56 = 0x38 - NSDictionary *_messageIDsToSelectWhenOpened; // 68 = 0x44 - NSArray *_threadIDsToOpenWhenOpened; // 72 = 0x48 - int colorHighlightLeftEdge; // 76 = 0x4c - int colorHighlightWidth; // 80 = 0x50 - int locationColumnPosition; // 84 = 0x54 - int locationColumnWidth; // 88 = 0x58 - int senderColumnPosition; // 92 = 0x5c - int senderColumnWidth; // 96 = 0x60 - int receiverColumnPosition; // 100 = 0x64 - int receiverColumnWidth; // 104 = 0x68 - int threadedUnreadColumnWidth; // 108 = 0x6c - NSMutableDictionary *_columnWidthsBeforeSearch; // 112 = 0x70 - int _windowWidthBeforeSearch; // 116 = 0x74 - NSMutableSet *_messagesInSelectedThread; // 120 = 0x78 - MessageThread *threadBeingClosed; // 124 = 0x7c - MessageThread *threadBeingOpened; // 128 = 0x80 - struct __CFDictionary *_rowDrawingCache; // 132 = 0x84 - NSMutableSet *_mouseTrackers; // 136 = 0x88 - struct _NSPoint _lastMouseDownInUnreadColumnPoint; // 140 = 0x8c - int _lastMouseDownInUnreadColumnEventNumber; // 148 = 0x94 - struct _NSPoint _currentMouseLocationInWindow; // 152 = 0x98 - float _amountToScrollDownAfterClosingThread; // 160 = 0xa0 - int _numberOfSelectedRowsBeforeTogglingThread; // 164 = 0xa4 - int _selectedRowBeforeTogglingThread; // 168 = 0xa8 - char _unreadColumnResizableAfterResizingColumnsToFit; // 172 = 0xac -} - -+ (void)initialize; -- (void)awakeFromNib; -- (void)tableViewScrolled:fp8; -- (void)_setupColumnHeaderIcon:fp8 inColumnWithIdentifier:fp12 alignment:(int)fp16; -- (int)_calcUnreadColumnWidthForUnreadCountString:fp8; -- (void)_setupUnreadColumnMinWidth; -- (void)_setupUnreadColumnWidth; -- (void)_setupTableColumnWidths; -- (void)_configureColumnForEndTruncation:fp8; -- (void)_configureColumnForDateCell:fp8; -- (void)_configureColumnForImageCell:fp8 alignment:(int)fp12; -- (void)_configureColumnForRolloverCell:fp8 alignment:(int)fp12 action:(SEL)fp16; -- (void)showFollowupsToMessage:fp8; -- (void)_setupColumnsForTableView; -- (void)dealloc; -- (void)windowWillClose:fp8; -- delegate; -- (void)setMessageMall:fp8; -- (void)readDefaultsFromDictionary:fp8; -- (void)writeDefaultsToDictionary:fp8; -- (void)writeStoreSpecificDefaultsToMailboxUid:fp8; -- (void)readStoreSpecificDefaultsFromMailboxUid:fp8; -- (void)readStoreSpecificDefaultsFromDictionary:fp8; -- (char)canSelectNextMessage; -- (char)canSelectPreviousMessage; -- (void)rulePreferencesChanged:fp8; -- (void)viewerPreferencesChanged:fp8; -- (char)threadHasSelectedMessages:fp8; -- (void)presencePreferenceChanged:fp8; -- (void)presenceChanged:fp8; -- (void)_updateTableHeaderToMatchCurrentSort; -- (void)tableView:fp8 didClickTableColumn:fp12; -- _columnWithIdentifierTag:(int)fp8; -- _unreadColumn; -- (char)isColumnVisible:(int)fp8; -- (void)setColumn:(int)fp8 toVisible:(char)fp12; -- (void)_setColumn:(int)fp8 toVisible:(char)fp12; -- (char)displaysMessageSizes; -- (void)setDisplaysReceiver:(char)fp8; -- (int)tableViewNumberOfColumnsToPinToLefthandSide:fp8; -- (void)tableViewWillResizeColumnsToFit:fp8; -- (void)tableViewDidResizeColumnsToFit:fp8; -- (void)setFont:fp8; -- font; -- (char)isInThreadedMode; -- (void)toggleThreadedMode; -- (void)threadedModeDidChange:fp8; -- (void)openThreadAtIndex:(int)fp8 andSelectMessage:fp12 animate:(char)fp16; -- (void)closeThreadAtIndex:(int)fp8 focusRow:(int)fp12 animate:(char)fp16; -- (void)openAllThreads; -- (void)closeAllThreads; -- (void)toggleThread:fp8; -- (int)_indexOfMessageNearest:(int)fp8 numberOfRows:(int)fp12 threaded:(char)fp16 downward:(char)fp20; -- (char)canSelectPreviousThreadedMessage; -- (char)canSelectNextThreadedMessage; -- (char)canSelectParentOfMessage; -- (char)canSelectFirstReplyToMessage; -- (char)canSelectNextReplyToParent; -- (char)selectionIsExactlyOneOpenThread; -- (void)selectNextMessageMovingDownward:(char)fp8; -- (void)selectNextMessageMovingUpward:(char)fp8; -- (void)stepIntoSelectedThread; -- (void)stepOutOfSelectedThread; -- (void)selectNextMessage:(char)fp8; -- (void)selectPreviousMessage:(char)fp8; -- (void)selectParentOfMessage; -- (void)selectFirstReplyToMessage; -- (void)selectPeer:(char)fp8; -- (void)selectNextReplyToParent; -- (void)selectPreviousReplyToParent; -- (void)showSelectionAndCenter:(char)fp8; -- (char)isSelectionVisible; -- (void)scrollRowToVisible:(int)fp8 position:(int)fp12; -- (int)tableView:fp8 shouldScrollRowToVisible:(int)fp12; -- (char)_isMessageInSelectedThread:fp8; -- (void)_setNeedsDisplayForMessagesInSet:fp8; -- (void)_setNeedsDisplayThreadColumnForMessagesInSet:fp8; -- (void)_updateSelectedThreadList; -- selectedThread; -- (void)_reallyUpdateTextViewerToSelection; -- (void)updateTextViewerToSelection; -- (char)tableView:fp8 shouldSelectRow:(int)fp12 byExtendingSelection:(char)fp16; -- (void)selectionIsChanging:fp8; -- (void)selectionChanged:fp8; -- (void)datesNeedRedisplay; -- (void)antialiasingSettingsChanged:fp8; -- (int)numberOfRowsInTableView:fp8; -- _attributesForTruncatedParagraphStyle; -- _colorForMessage:fp8 inRow:(int)fp12; -- _truncatedAttributedStringForString:fp8 message:fp12 row:(int)fp16 shouldIndent:(char)fp20; -- tableView:fp8 objectValueForTableColumn:fp12 row:(int)fp16; -- (void)_updateColorHighlightEdges; -- (void)tableView:fp8 didDragTableColumn:fp12; -- (void)tableViewColumnDidMove:fp8; -- (void)tableViewColumnDidResize:fp8; -- (void)tableView:fp8 willDisplayCell:fp12 forTableColumn:fp16 row:(int)fp20; -- tableViewHighlightColor:fp8; -- (int)tableView:fp8 highlightStyleForRow:(int)fp12 inRect:(struct _NSRect *)fp16 color:(id *)fp20; -- (void)doubleClickedMessage:fp8; -- (void)deleteKeyPressed; -- (void)deleteSelectionAllowingMoveToTrash:(char)fp8; -- selectionIncludingThreads:(char)fp8; -- selection; -- (void)_selectMessages:fp8 scrollIfNeeded:(char)fp12; -- (void)selectMessages:fp8; -- currentDisplayedMessage; -- messageStore; -- orderOfFromSubjectDateColumns; -- tableView; -- (char)tableView:fp8 doCommandBySelector:(SEL)fp12; -- _undoActionNameForMessages:fp8; -- (void)undeleteMessages:fp8 allowUndo:(char)fp12; -- (void)_redeleteMessages:fp8 messagesToSelect:fp12; -- (void)deleteMessages:fp8 allowMoveToTrash:(char)fp12 allowUndo:(char)fp16; -- (void)deleteMessages:fp8 allowMoveToTrash:(char)fp12; -- (void)undeleteMessagesAllowingUndo:(char)fp8; -- (void)undeleteMessages; -- (void)undeleteMessages:fp8; -- (char)shouldDeleteGivenCurrentState; -- (unsigned int)tableView:fp8 draggingSourceOperationMaskForLocal:(char)fp12; -- messagesToTransfer; -- (char)transferSelectionToMailbox:fp8 deleteOriginals:(char)fp12; -- (void)tableViewDragWillEnd:fp8 operation:(unsigned int)fp12; -- (char)tableView:fp8 writeRows:fp12 toPasteboard:fp16; -- _dragImageForRow:(int)fp8 event:fp12 dragImageOffset:(struct _NSPoint *)fp16; -- _badgeImageFromItemCount:(int)fp8; -- tableView:fp8 dragImageForRows:fp12 event:fp16 dragImageOffset:(struct _NSPoint *)fp20; -- tableViewRowIdForRow:(int)fp8; -- (void)tableView:fp8 willDrawRowsInRange:(struct _NSRange)fp12; -- (void)tableView:fp8 didDrawRowsInRange:(struct _NSRange)fp12; -- (struct _NSRect)frameOfClickedCell; -- (struct _NSPoint)mouseLocationInWindow; -- (void)callWillDisplayCellForClickedCell; -- (void)setButtonCellNeedsDisplay; -- (void)tableView:fp8 gotEvent:fp12; -- (char)shouldTrackMouse:fp8; -- (char)tableView:fp8 shouldBeginDragFromMouseDown:fp12; -- tableView:fp8 rangesForBackgroundShadingInRange:(struct _NSRange)fp12 shadingColors:(id *)fp20 leftColumnColors:(id *)fp24; -- messageMall; - -@end - -@interface TableViewManager(AppleScript) -+ _getDarkerThreadBackgroundColorForThread:fp8; -+ _getThreadBackgroundColorForThread:fp8; -- (int)_columnForAppleScriptColumn:(int)fp8; -- (int)appleScriptSortColumn; -- (void)setAppleScriptSortColumn:(int)fp8; -- appleScriptVisibleColumns; -- (void)setAppleScriptVisibleColumns:fp8; -@end - -@interface TableViewManager(FilteredList_Management) -- (void)mallStructureWillChange:fp8; -- (void)setMailboxUids:fp8; -- (char)allMailboxesAreOutgoing:fp8; -- (void)storeStructureChanged:fp8; -- (void)messagesCompacted:fp8; -- (void)messageFlagsChanged:fp8; -- (void)_scrollToHappyPlace; -- (void)_recordVisibleState:(struct visible_state *)fp8 deletedAreGoingAway:(char)fp12 considerPinToEnd:(char)fp16; -- (char)_restoreVisibleState:(struct visible_state *)fp8 forceSelToVisible:(char)fp12; -- (void)dumpVisibleState; -- _messageToSelectIfEntireSelectionRemoved; -- (int)indexOfTopmostVisibleMessageMustBeSelected:(char)fp8 okayIfDeleted:(char)fp12; -- (int)indexOfLastReadMessage; -- (int)indexOfFirstNonDeletedNonSelectedMessage:(int)fp8 withinRowRange:(struct _NSRange)fp12 goUp:(char)fp20; -- persistentVisibleStateCreateIfNecessary:(char)fp8; -- (void)saveScrollAndSelection; -- (char)restoreScrollAndSelection; -- (void)_setScrollAndSelectionForThreadOpenedOrClosed:fp8 flag:(char)fp12 clickedRow:(int)fp16 rowToSelectInOpeningThread:(int)fp20; -- selectedMessageIDs; -- openThreadIDs; -- (void)setSelectedMessageIDs:fp8 openThreadIDs:fp12; -- (void)addRanks; -- (void)removeRanks; -- (void)clearSearch; -- (char)isShowingSearchResults; -- (void)searchForString:fp8 in:(int)fp12 withOptions:(int)fp16; -- (char)isFocused; -- (void)setFocusedMessages:fp8; -- (char)includeDeleted; -- (void)setIncludeDeleted:(char)fp8; -- (char)isSortedByRank; -- (char)isSortedByDateReceived; -- (char)isSortedChronologically; -- (int)sortColumn; -- (void)setSortColumn:(int)fp8 ascending:(char)fp12; -- (char)isSortedAscending; -- (void)setIsSortedAscending:(char)fp8; -- (int)state; -- filteredMessages; -- (void)restoreLocationColumnIfAppropriate; -- (void)clearTrackingRects; -- (void)updateTrackingRects; -- (void)mouseTrackerDidUpdate:fp8; -- (int)_indexOfMemberToSelectWhenOpeningThread:fp8; -- (double)_getAnimationDuration:(int)fp8; -- _createHiliteImage; -- _createBackgroundImage; -- _createSnapshotOfRect:(struct _NSRect)fp8 styleMask:(unsigned int)fp24 backing:(int)fp28 defer:(char)fp32; -- _createSnapshotOfRow:(int)fp8 styleMask:(unsigned int)fp12 backing:(int)fp16 defer:(char)fp20; -- (void)_clearImageCacheForMessage:fp8; -- (void)_clearImageCacheForRow:(int)fp8; -- (char)_isRowVisible:(int)fp8; -- (struct _NSSize)_calculateTruncationAmountUsingRowHeight:(float)fp8 collapseOrExpandAmount:(float)fp12 invisibleThreadAmountAbove:(float)fp16 invisibleThreadAmountBelow:(float)fp20; -- (void)_animateThreadCollapsing:(int)fp8 threadRow:(int)fp12 clickedRow:(int)fp16; -- (float)_animateThreadOpening:fp8 threadMessageCount:(int)fp12 threadRow:(int)fp16 rowToBeSelected:(int)fp20; -@end - -#endif diff --git a/GPGMail/Source/PrivateHeaders/TextDocumentViewer.h b/GPGMail/Source/PrivateHeaders/TextDocumentViewer.h deleted file mode 100644 index cdfad82e..00000000 --- a/GPGMail/Source/PrivateHeaders/TextDocumentViewer.h +++ /dev/null @@ -1,135 +0,0 @@ -/* TextDocumentViewer.h created by stephane on Tue 04-Jul-2000 */ - -#import -#import -#import - - -@class NSImageView; -@class NSScrollView; -@class NSTextView; -@class Message; -@class MessageTextView; -@class MessageTextContainer; -@class HTMLView; -@class NSTimer; - - -extern NSString *MessageWillBeDisplayedInView; -// Object is TextDocumentViewer -// UserInfo: -// MessageKey = Message -// MessageViewKey = MessageTextView -extern NSString *MessageWillNoLongerBeDisplayedInView; -// Object is TextDocumentViewer -// UserInfo: -// MessageKey = Message -// MessageViewKey = MessageTextView - - -@class MessageViewingState; -@class ActivityMonitor; -@class ObjectCache; -@class InvocationQueue; - -@interface TextDocumentViewer:NSResponder -{ - Message *_message; - MessageViewingState *_viewingState; - ActivityMonitor *_documentMonitor; - NSScrollView *messageScroll; - MessageTextView *textView; - MessageTextContainer *specialContainer; - NSImageView *imageView; - NSView *contentContainerView; - NSView *junkMailView; - HTMLView *_htmlView; - NSView *_currentView; - NSTimer *_fadeTimer; - ObjectCache *_documentCache; - struct __CFSet *observedHTMLDocuments; - InvocationQueue *invocationQueue; - NSString *_messageIDToRestoreInitialStateFor; - struct _NSRect _initialVisibleRect; - struct _NSRange _initialSelectedRange; - int _fadeStepCounter:30; - int _attachmentsMayBeLoading:1; - int _textViewHasBeenInitialized:1; -} - -- (void)awakeFromNib; -- attachmentContextMenu; -- (void)readDefaultsFromDictionary:fp12; -- (void)writeDefaultsToDictionary:fp12; -- (void)_setupUI; -- (void)dealloc; -- (void)stopAllActivity; -- (void)_messageMayHaveBecomeAvailable; -- (void)_cancelBackgroundAttachmentLoadingIfNeeded; -- (void)_switchToNSTextView; -- (void)_switchToHTMLView; -- (void)fadeToEmpty; -- (void)fadeOneNotch:fp12; -- (void)_stopFadingTimer; -- (void)_pushDocumentToCache; -- (void)_backgroundLoadFinished:fp12; -- (void)setMessage:fp12; -- (void)_setMessage:fp12; -- (void)_fetchContentsForMessage:fp12 fromStore:fp16 withViewingAttributes:fp20; -- (void)_startBackgroundLoad:fp12; -- message; -- (void)_removeCurrentMessageFromCache; -- (void)reloadCurrentMessage; -- (void)viewerPreferencesChanged:fp12; -- (void)showJunkMailHelp:fp12; -- (void)_addHelpButton; -- (void)_showJunkMailBanner; -- (void)_hideJunkMailBanner; -- (void)_updateJunkMailBannerForLevel:(int)fp12; -- (void)markAsNotJunkMailClicked:fp12; -- (void)_messageFlagsDidChange:fp12; -- (void)_updateDisplay; -- (void)highlightSearchText:fp12; -- textView; -- currentSelection; -- (void)clearCache; -- (void)_updateSendersImageToMatchSender:fp12; -- (void)_displayHTMLDocument:fp12; -- (void)displayAttributedString:fp12; -- (void)_addressPhotoLoaded:fp12; -- (void)_unregisterForHTMLDocumentNotifications; -- (void)htmlDocumentDidChange:fp12; -- (void)initPrintInfo; -- (int)headerDetailLevel; -- (char)showingAllHeaders; -- (void)setShowAllHeaders:(char)fp12; -- (void)keyDown:fp12; -- (char)pageDown; -- (char)pageUp; -- attachmentDirectory; -- (void)textView:fp12 clickedOnCell:fp16 inRect:(struct _NSRect)fp20 atIndex:(unsigned int)fp32; -- (void)textView:fp12 doubleClickedOnCell:fp16 inRect:(struct _NSRect)fp20 atIndex:(unsigned int)fp32; -- (void)textView:fp12 draggedCell:fp16 inRect:(struct _NSRect)fp20 event:fp32 atIndex:(unsigned int)fp36; -- (char)_handleClickOnURL:fp12; -- (char)textView:fp12 clickedOnLink:fp16 atIndex:(unsigned int)fp20; -- (void)targetHtmlView:fp12 followLink:fp16; -- (char)htmlView:fp12 clickedOnLink:fp16; -- (char)currentlyViewingSource; -- (char)_validateAction:(SEL)fp12 tag:(int)fp16; -- (char)validateToolbarItem:fp12; -- (char)validateMenuItem:fp12; -- (void)showAllHeaders:fp12; -- (void)showFilteredHeaders:fp12; -- (void)viewSource:fp12; -- (void)toggleShowControlCharacters:fp12; -- (void)showFirstAlternative:fp12; -- (void)showPreviousAlternative:fp12; -- (void)showNextAlternative:fp12; -- (void)showBestAlternative:fp12; -- (void)changeTextEncoding:fp12; -- (void)_makeFontBigger:fp12; -- (void)_makeFontSmaller:fp12; -- (void)makeFontBigger:fp12; -- (void)makeFontSmaller:fp12; - -@end diff --git a/GPGMail/Source/TableViewManager+GPGMail.h b/GPGMail/Source/TableViewManager+GPGMail.h deleted file mode 100644 index 4b909e7d..00000000 --- a/GPGMail/Source/TableViewManager+GPGMail.h +++ /dev/null @@ -1,44 +0,0 @@ -/* TableViewManager+GPGMail.h created by dave on Tue May 28 2002 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "TableViewManager.h" - - -@class NSMenu; - - -#ifdef SNOW_LEOPARD_64 -@interface GPGMail_TableViewManager : NSObject -#else -@interface TableViewManager(GPGMail) -#endif - -- (NSMenu *) gpgContextualMenu; - -@end diff --git a/GPGMail/Source/TableViewManager+GPGMail.m b/GPGMail/Source/TableViewManager+GPGMail.m deleted file mode 100644 index 125a213f..00000000 --- a/GPGMail/Source/TableViewManager+GPGMail.m +++ /dev/null @@ -1,45 +0,0 @@ -/* TableViewManager+GPGMail.m created by dave on Tue May 28 2002 */ - -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import "TableViewManager+GPGMail.h" -#import - - -#ifdef SNOW_LEOPARD_64 -@implementation GPGMail_TableViewManager -#else -@implementation TableViewManager(GPGMail) -#endif - -- (NSMenu *) gpgContextualMenu -{ - return [((NSTableView *)[self valueForKey:@"_tableView"]) menu]; -} - -@end diff --git a/GPGMail/Source/TextDocumentViewer+GPGMail.h b/GPGMail/Source/TextDocumentViewer+GPGMail.h deleted file mode 100644 index e8c13995..00000000 --- a/GPGMail/Source/TextDocumentViewer+GPGMail.h +++ /dev/null @@ -1,32 +0,0 @@ -/* TextDocumentViewer+GPGMail.h created by stephane on Tue 04-Jul-2000 */ - -/* - * Copyright Stephane Corthesy (stephane@sente.ch), 2000-2005 - * (see LICENSE.txt file for license information) - */ - -#import - - -@class GPGMessageViewerAccessoryViewOwner; - - -@interface TextDocumentViewer(GPGMail) - -- (Message *) gpgMessage; - -- (void) gpgShowPGPSignatureBanner; -- (void) gpgShowPGPEncryptedBanner; -- (void) gpgHideBanner; - -- (BOOL) gpgValidateAction:(SEL)anAction; - -// Actions connected to menus -- (IBAction) gpgDecrypt:(id)sender; -- (IBAction) gpgAuthenticate:(id)sender; - -- (void) gpgForwardAction:(SEL)action from:(id)sender; - -- (GPGMessageViewerAccessoryViewOwner *) gpgMessageViewerAccessoryViewOwner; - -@end diff --git a/GPGMail/Source/TextDocumentViewer+GPGMail.m b/GPGMail/Source/TextDocumentViewer+GPGMail.m deleted file mode 100644 index a3e59b08..00000000 --- a/GPGMail/Source/TextDocumentViewer+GPGMail.m +++ /dev/null @@ -1,487 +0,0 @@ -/* TextDocumentViewer+GPGMail.m created by stephane on Tue 04-Jul-2000 */ - -/* - * Copyright Stephane Corthesy (stephane@sente.ch), 2000-2005 - * (see LICENSE.txt file for license information) - */ - -#import "TextDocumentViewer+GPGMail.h" -#import "GPGMessageViewerAccessoryViewOwner.h" -#import "GPGMailBundle.h" -#import -#import -#import -#import "GPGMailPatching.h" -#import -#import -#import -#import - - -@interface TextDocumentViewer(GPGMailPrivate) -- (BOOL) _gpgBannerIsShown; -@end - - -@implementation TextDocumentViewer(GPGMail) - -static NSMapTable *_extraIVars = NULL; -static NSLock *_extraIVarsLock = nil; - -// Posing no longer works correctly on 10.3, that's why we only overload single methods -static IMP _updateDisplay_IMP = NULL; -static IMP dealloc_IMP = NULL; -static IMP validateMenuItem_IMP = NULL; -static IMP setMessage_IMP = NULL; - -+ (void) load -{ - _extraIVars = NSCreateMapTableWithZone(NSObjectMapKeyCallBacks, NSObjectMapValueCallBacks, 3, [self zone]); - _extraIVarsLock = [[NSLock alloc] init]; - _updateDisplay_IMP = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(_updateDisplay), [self class], @selector(gpg__updateDisplay), [self class]); - dealloc_IMP = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(dealloc), [self class], @selector(gpg_dealloc), [self class]); - validateMenuItem_IMP = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(validateMenuItem:), [self class], @selector(gpg_validateMenuItem:), [self class]); - setMessage_IMP = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(setMessage:), [self class], @selector(gpg_setMessage:), [self class]); -} - -- (NSMutableDictionary *) gpgExtraIVars -{ - NSMutableDictionary *aDict; - NSValue *aValue = [NSValue valueWithNonretainedObject:self]; - // We cannot use self as key, because in -dealloc this method is called when invoking super's - // and thus puts self back in mapTable; by using the NSValue and changing the dealloc, - // it corrects the problem. - - [_extraIVarsLock lock]; - aDict = NSMapGet(_extraIVars, aValue); - if(aDict == nil){ - aDict = [NSMutableDictionary dictionary]; - NSMapInsert(_extraIVars, aValue, aDict); - } - [_extraIVarsLock unlock]; - - return aDict; -} - -- (BOOL) gpgMessageWasInFactSigned -{ - NSNumber *aBoolValue = [[self gpgExtraIVars] objectForKey:@"messageWasInFactSigned"]; - - return (aBoolValue != nil ? [aBoolValue boolValue]:NO); -} - -- (void) gpgSetMessageWasInFactSigned:(BOOL)flag -{ - [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"messageWasInFactSigned"]; -} - -- (BOOL) gpgMessageHasBeenDecrypted -{ - NSNumber *aBoolValue = [[self gpgExtraIVars] objectForKey:@"messageHasBeenDecrypted"]; - - return (aBoolValue != nil ? [aBoolValue boolValue]:NO); -} - -- (void) gpgSetMessageHasBeenDecrypted:(BOOL)flag -{ - [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"messageHasBeenDecrypted"]; -} - -- (BOOL) gpgMessageReadStatusHasChanged -{ - NSNumber *aBoolValue = [[self gpgExtraIVars] objectForKey:@"messageReadStatusHasChanged"]; - - return (aBoolValue != nil ? [aBoolValue boolValue]:NO); -} - -- (void) gpgSetMessageReadStatusHasChanged:(BOOL)flag -{ - [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"messageReadStatusHasChanged"]; -} - -- (BOOL) gpgDoNotResetFlags -{ - NSNumber *aBoolValue = [[self gpgExtraIVars] objectForKey:@"doNotResetFlags"]; - - return (aBoolValue != nil ? [aBoolValue boolValue]:NO); -} - -- (void) gpgSetDoNotResetFlags:(BOOL)flag -{ - [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"doNotResetFlags"]; -} - -/* - - (void)_displayHTMLDocument:fp12 - { - NSLog(@"WILL _displayHTMLDocument:%@", fp12); - [super _displayHTMLDocument:fp12]; - NSLog(@"DID _displayHTMLDocument:"); - } - - - (void)displayAttributedString:fp12 - { - NSLog(@"WILL displayAttributedString:%@", fp12); - [super displayAttributedString:fp12]; - NSLog(@"DID displayAttributedString:"); - } - */ - -- (void) gpgMessageStoreMessageFlagsChanged:(NSNotification *)notification -{ - if([[[[notification userInfo] objectForKey:@"flags"] objectForKey:@"MessageIsRead"] isEqualToString:@"YES"]){ - NSEnumerator *anEnum = [[[notification userInfo] objectForKey:@"messages"] objectEnumerator]; - Message *aMessage; - Message *myMessage = [self message]; - - while(aMessage = [anEnum nextObject]){ - if(aMessage == myMessage){ - [self gpgSetMessageReadStatusHasChanged:YES]; - break; - } - } - } -} - -- (void) gpg__updateDisplay -{ - GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; - Message *aMessage = [self message]; - BOOL shouldAuthenticate = NO; - BOOL shouldDecrypt = NO; - BOOL compareFlags = ([aMessage messageStore] != nil && ([mailBundle decryptsOnlyUnreadMessagesAutomatically] || [mailBundle authenticatesOnlyUnreadMessagesAutomatically])); - BOOL readStatusChanged = NO; - // NSView *originalCertifBanner = [certificateView retain]; - - [[self gpgMessageViewerAccessoryViewOwner] messageChanged:aMessage]; - if(compareFlags){ - [self gpgSetMessageReadStatusHasChanged:NO]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(gpgMessageStoreMessageFlagsChanged:) name:@"MessageStoreMessageFlagsChanged" object:[aMessage messageStore]]; - } - - //[super _updateDisplay]; - if(aMessage == nil){ - if([self _gpgBannerIsShown]){ - [self gpgHideBanner]; - // [originalCertifBanner release]; originalCertifBanner = nil; - } - } - else if([aMessage gpgIsEncrypted]){ // Do not get cached status from accessoryViewOwner, because it is not yet up-to-date! - [self gpgShowPGPEncryptedBanner]; - if([mailBundle decryptsMessagesAutomatically]) - shouldDecrypt = YES; - } - else if([aMessage gpgHasSignature]){ // Do not get cached status from accessoryViewOwner, because it is not yet up-to-date! - if([mailBundle authenticatesMessagesAutomatically]){ - [self gpgShowPGPSignatureBanner]; - shouldAuthenticate = YES; - } - else - [self gpgShowPGPSignatureBanner]; - } - else if([self gpgMessageWasInFactSigned]){ - [self gpgShowPGPSignatureBanner]; - if(/*![self gpgDoNotResetFlags]*/YES){ - [self gpgSetMessageWasInFactSigned:NO]; - [self gpgSetMessageHasBeenDecrypted:NO]; - } - } - else if([self gpgMessageHasBeenDecrypted]){ - [self gpgShowPGPEncryptedBanner]; - [self gpgSetMessageHasBeenDecrypted:NO]; - if([mailBundle authenticatesMessagesAutomatically]) - shouldAuthenticate = YES; - } - else if([self _gpgBannerIsShown]){ - [self gpgHideBanner]; - // [originalCertifBanner release]; originalCertifBanner = nil; - } - - _updateDisplay_IMP(self, _cmd); // Call original implementation - - if(compareFlags){ - readStatusChanged = [self gpgMessageReadStatusHasChanged]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:@"MessageStoreMessageFlagsChanged" object:[aMessage messageStore]]; - } - - if(shouldAuthenticate && (![mailBundle authenticatesOnlyUnreadMessagesAutomatically] || readStatusChanged)){ - [self performSelector:@selector(gpgAuthenticate:) withObject:nil afterDelay:0.]; - } - else if(shouldDecrypt && (![mailBundle decryptsOnlyUnreadMessagesAutomatically] || readStatusChanged)){ - [self performSelector:@selector(gpgDecrypt:) withObject:nil afterDelay:0.]; - } - // if(originalCertifBanner){ - // certificateView = originalCertifBanner; - //// [self setCertificateView:originalCertifBanner]; // Has side-effects: resets other attributes - // [originalCertifBanner release]; - // } -} - -- (void) gpg_dealloc -{ - id originalSelf = self; - - dealloc_IMP(self, _cmd); // Call original implementation; warning: will call -gpgExtraIVars! - [_extraIVarsLock lock]; - NSMapRemove(_extraIVars, [NSValue valueWithNonretainedObject:originalSelf]); - [_extraIVarsLock unlock]; -} - -- (void) gpgForwardAction:(SEL)action from:(id)sender -{ - id target = [self gpgMessageViewerAccessoryViewOwner]; - - if(target && [target respondsToSelector:action]) - [target performSelector:action withObject:sender]; -} - -- (IBAction) gpgDecrypt:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (IBAction) gpgAuthenticate:(id)sender -{ - [self gpgForwardAction:_cmd from:sender]; -} - -- (BOOL) gpgValidateAction:(SEL)anAction -{ - if(anAction == @selector(gpgDecrypt:) || anAction == @selector(gpgAuthenticate:)){ - id target = [self gpgMessageViewerAccessoryViewOwner]; - - if(target && [target respondsToSelector:anAction]) - return [target gpgValidateAction:anAction]; - } - - return NO; -} - -- (BOOL) gpg_validateMenuItem:(id )menuItem -{ - SEL anAction = [menuItem action]; - - if(anAction == @selector(gpgDecrypt:) || anAction == @selector(gpgAuthenticate:)){ - return [self gpgValidateAction:anAction]; - } - - return !!validateMenuItem_IMP(self, _cmd, menuItem); // Call original implementation -} -/* - - (void)viewSource:fp12 - { - NSLog(@"WILL viewSource:%@", fp12); - [super viewSource:fp12]; - NSLog(@"DID viewSource:"); - } - - - (void)reloadCurrentMessage - { - NSLog(@"WILL reloadCurrentMessage"); - [super reloadCurrentMessage]; - NSLog(@"DID reloadCurrentMessage"); - } - */ -- (void)gpg_setMessage:fp12 -{ - // NSLog(@"WILL setMessage:%@", fp12); - [self gpgSetMessageWasInFactSigned:NO]; - [self gpgSetMessageHasBeenDecrypted:NO]; - if(fp12 == nil) - [[self gpgMessageViewerAccessoryViewOwner] messageChanged:nil]; - setMessage_IMP(self, _cmd, fp12); // Call original implementation -} -/* - - (void)_setMessage:fp12 - { - // NSLog(@"WILL _setMessage:%@", fp12); - [super _setMessage:fp12]; - // NSLog(@"DID _setMessage:"); - } - */ - -- (void) _gpgAddAccessoryView:(NSView *)accessoryView -{ - NSRect aRect; - NSRect originalRect; - float aHeight; - NSView *resizedView = _currentView;//[[self textView] enclosingScrollView];//(NSView *)messageScroll; - NSView *currentBannerView = junkMailView; - - originalRect = aRect = [resizedView frame]; - aHeight = NSHeight([accessoryView frame]); - aRect.origin.y = NSMaxY(aRect) - aHeight; - if([currentBannerView window] != nil){ - aRect.origin.y += NSHeight([currentBannerView frame]); - [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) - aHeight)]; - [currentBannerView setNeedsDisplay:YES]; - } - originalRect.size.height -= aHeight; - aRect.size.height = aHeight; - [accessoryView setFrame:aRect]; - [[resizedView superview] addSubview:accessoryView]; - [resizedView setFrame:originalRect]; -} - -- (void) _gpgRemoveAccessoryView:(NSView *)accessoryView redisplay:(BOOL)flag -{ - NSRect originalRect; - NSView *resizedView = _currentView;//[[self textView] enclosingScrollView];//(NSView *)messageScroll; - NSView *currentBannerView = junkMailView; - - NSAssert([accessoryView ancestorSharedWithView:resizedView] != nil, @"Trying to remove unattached view!"); - originalRect = [resizedView frame]; - originalRect.size.height += NSHeight([accessoryView frame]); - if(flag) - [accessoryView removeFromSuperview]; - else - [accessoryView removeFromSuperviewWithoutNeedingDisplay]; - if([currentBannerView window] != nil){ - [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) + NSHeight([accessoryView frame]))]; - [currentBannerView setNeedsDisplay:YES]; - } - [resizedView setFrame:originalRect]; -} -/* - - (GPGMessageViewerAccessoryViewOwner *) _gpgExistingMessageViewerAccessoryViewOwner - { - if(_accessoryViewOwnerPerViewer != NULL) - return NSMapGet(_accessoryViewOwnerPerViewer, self); - else - return nil; - } - */ -- (GPGMessageViewerAccessoryViewOwner *) gpgMessageViewerAccessoryViewOwner -{ - // WARNING: this limits us to 1 accessoryView per viewer - GPGMessageViewerAccessoryViewOwner *accessoryViewOwner = [[self gpgExtraIVars] objectForKey:@"messageViewerAccessoryViewOwner"]; - - if(accessoryViewOwner == nil){ - accessoryViewOwner = [[GPGMessageViewerAccessoryViewOwner alloc] initWithDelegate:self]; - [[self gpgExtraIVars] setObject:accessoryViewOwner forKey:@"messageViewerAccessoryViewOwner"]; - [accessoryViewOwner release]; - } - - return accessoryViewOwner; -} - -- (BOOL) _gpgBannerIsShown -{ - return [[[self gpgMessageViewerAccessoryViewOwner] view] superview] != nil; -} - -- (void) _gpgShowBannerWithType:(int)bannerType -{ - GPGMessageViewerAccessoryViewOwner *anOwner = nil; - - if(![self _gpgBannerIsShown]){ - anOwner = [self gpgMessageViewerAccessoryViewOwner]; - [anOwner setBannerType:bannerType]; - [self _gpgAddAccessoryView:[anOwner view]]; - } - else{ - anOwner = [self gpgMessageViewerAccessoryViewOwner]; - if([anOwner bannerType] != bannerType){ - [self _gpgRemoveAccessoryView:[anOwner view] redisplay:NO]; - [anOwner setBannerType:bannerType]; - [self _gpgAddAccessoryView:[anOwner view]]; - } - } - // [anOwner setMessage:[self message]]; -} - -- (void) gpgShowPGPSignatureBanner -{ - // gpgMessageWasInFactSigned: special case where message has been encrypted and signed in one operation - [self _gpgShowBannerWithType:([self gpgMessageWasInFactSigned] ? gpgDecryptedSignatureInfoBanner:gpgAuthenticationBanner)]; -} - -- (void) gpgShowPGPEncryptedBanner -{ - // gpgMessageHasBeenDecrypted: special case where message has been encrypted - [self _gpgShowBannerWithType:([self gpgMessageHasBeenDecrypted] ? gpgDecryptedInfoBanner:gpgDecryptionBanner)]; -} - -- (void) gpgHideBanner -{ - if([self _gpgBannerIsShown]){ - GPGMessageViewerAccessoryViewOwner *anOwner = [self gpgMessageViewerAccessoryViewOwner]; - - [self _gpgRemoveAccessoryView:[anOwner view] redisplay:YES]; - // [anOwner setMessage:nil]; - } -} - -- (void) gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner replaceViewWithView:(NSView *)view -{ -#if 1 - if(![self _gpgBannerIsShown]) - NSLog(@"### GPGMail: banner should already be visible"); - else -#else - NSAssert([self _gpgBannerIsShown], @"### GPGMail: banner should already be visible"); -#endif - [self _gpgRemoveAccessoryView:[owner view] redisplay:NO]; - [self _gpgAddAccessoryView:view]; -} - -- (void) gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner showStatusMessage:(NSString *)message -{ - if([[[[self textView] window] delegate] respondsToSelector:@selector(showStatusMessage:)]){ - // Delegate can be a MessageViewer, or a MessageEditor (for standalone viewers!) - [[[[self textView] window] delegate] showStatusMessage:message]; -#warning CHECK that it is not needed on 10.2 - } -} - -- (void) gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner displayMessage:(Message *)message isSigned:(BOOL)isSigned -{ - [self setMessage:message]; - [self gpgSetMessageWasInFactSigned:isSigned]; - [self gpgSetMessageHasBeenDecrypted:YES]; - // Now update messageView content - // If we want to add a fade-out effect, we'll need to wait to the fade-out effect - // being done before we call [viewer _loadMessageIntoTextView]. - // Fade-out effect is launched by [viewer fadeToEmpty] -// if([[message messageBody] isKindOfClass:[MimeBody class]]) -// [(MimeBody *)[message messageBody] setPreferredAlternative:0]; -// [self showFirstAlternative:nil]; - if([[message messageBody] isHTML]) - [self gpgSetDoNotResetFlags:YES]; - [self reloadCurrentMessage]; - /* if([[message messageBody] isHTML]){ - _messageWasInFactSigned = isSigned; - _messageHasBeenDecrypted = YES; - [self showFirstAlternative:nil]; - } DOES NOTHING... */ - // Will post MessageWillBeDisplayed notification; we need to call this method anyway, - // to be sure that URLs are parsed by textView and clickable -} - -- (void) gpg_showFirstAlternative:(id)sender -{ - [self gpgSetDoNotResetFlags:YES]; - [self showFirstAlternative:sender]; // Performs -_updateDisplay invocation, delayed! -// [self performSelector:@selector(gpg_resetFlags:) withObject:nil afterDelay:0.1]; -} - -- (void) gpg_resetFlags:(id)sender -{ - [self gpgSetDoNotResetFlags:NO]; - [self gpgSetMessageWasInFactSigned:NO]; - [self gpgSetMessageHasBeenDecrypted:NO]; -} - -- (Message *) gpgMessageForAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner -{ - return [self message]; -} - -- (Message *) gpgMessage -{ - // On MacOS X, [self message] sometimes returns zombies! -#warning Is it still true on 10.1? - return _message; -} - -@end diff --git a/GPGMail/Source/plistutil.m b/GPGMail/Source/plistutil.m deleted file mode 100644 index d33eae68..00000000 --- a/GPGMail/Source/plistutil.m +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Copyright (c) 2000-2008, Stphane Corthsy - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail - * contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#import - -static void usage(const char *progname){ - fprintf(stderr, "%s: property-list file utility\n" - " -read plist key\n" - " -write plist key value\n" - " -delete plist key\n" - , progname); -} - -int main(int argc, char **argv){ - NSAutoreleasePool *localAP = [[NSAutoreleasePool alloc] init]; - NSArray *arguments = [[NSProcessInfo processInfo] arguments]; - BOOL displayUsage = NO; - int terminationStatus = 0; - NSString *operation; - - switch([arguments count]){ - case 4: - operation = [arguments objectAtIndex:1]; - if([operation isEqualToString:@"-read"]){ - NSDictionary *plist = [NSDictionary dictionaryWithContentsOfFile:[arguments objectAtIndex:2]]; - - if(plist == nil) - terminationStatus = 1; - else{ - id value = [plist objectForKey:[arguments objectAtIndex:3]]; - - if(value == nil) - terminationStatus = 1; - else - [(NSFileHandle *)[NSFileHandle fileHandleWithStandardOutput] writeData:[[value description] dataUsingEncoding:NSUTF8StringEncoding]]; - } - } - else if([operation isEqualToString:@"-delete"]){ - NSString *filename = [arguments objectAtIndex:2]; - NSMutableDictionary *plist = [NSMutableDictionary dictionaryWithContentsOfFile:filename]; - - if(plist == nil) - terminationStatus = 1; - else{ - // Deleting a value for a key that doesn't exist is not considered as an error - [plist removeObjectForKey:[arguments objectAtIndex:3]]; - terminationStatus = ![plist writeToFile:filename atomically:YES]; - } - } - else{ - displayUsage = YES; - terminationStatus = 1; - } - break; - case 5: - operation = [arguments objectAtIndex:1]; - if([operation isEqualToString:@"-write"]){ - NSString *filename = [arguments objectAtIndex:2]; - NSMutableDictionary *plist = [NSMutableDictionary dictionaryWithContentsOfFile:filename]; - - if(plist == nil){ - // Writing a key-value pair in a file that doesn't exist is not considered as an error - // File will be created - plist = [NSMutableDictionary dictionary]; - } - // Value is written as a plist if possible, else as a string - @try{ - id aPlist = [[arguments objectAtIndex:4] propertyList]; - - [plist setObject:aPlist forKey:[arguments objectAtIndex:3]]; - }@catch(NSException *localException){ - [plist setObject:[arguments objectAtIndex:4] forKey:[arguments objectAtIndex:3]]; - } - terminationStatus = ![plist writeToFile:filename atomically:YES]; - } - else{ - displayUsage = YES; - terminationStatus = 1; - } - break; - default: - displayUsage = YES; - terminationStatus = 1; - } - - if(displayUsage) - usage([[arguments objectAtIndex:0] cString]); - - [localAP release]; - exit(terminationStatus); - return terminationStatus; -} diff --git a/GPGMail/Utilities/build-gpgme.sh b/GPGMail/Utilities/build-gpgme.sh deleted file mode 100755 index 85e70106..00000000 --- a/GPGMail/Utilities/build-gpgme.sh +++ /dev/null @@ -1,85 +0,0 @@ -#!/bin/bash - -export PREFIX="`pwd`/library-build" -export SOURCES="`pwd`/sources" - -echo "SOURCES $SOURCES" -echo "PREFIX $PREFIX" - -mkdir -p $SOURCES - -pushd $SOURCES; - -if [ ! -f "gettext-0.18.1.1.tar.gz" ]; then - -curl -O http://ftp.gnu.org/gnu/gettext/gettext-0.18.1.1.tar.gz -tar xzf gettext-0.18.1.1.tar.gz - -fi - -# Build gettext. - -pushd gettext-0.18.1.1 - -CFLAGS="-isysroot /Developer/SDKs/MacOSX10.6.sdk -arch x86_64 -arch i386" \ - ./configure --prefix=$PREFIX --disable-shared --disable-dependency-tracking \ - --disable-java --disable-native-java --disable-csharp \ - --with-included-gettext --with-included-glib \ - --with-included-libcroco --with-included-libxml --disable-libasprintf - -make install - -popd - -# Build libgpg-error - -if [ ! -f "libgpg-error-1.8.tar.bz2" ]; then - -curl -O ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-1.8.tar.bz2 -tar xjf libgpg-error-1.8.tar.bz2 - -fi - -pushd libgpg-error-1.8 - -CFLAGS="-isysroot /Developer/SDKs/MacOSX10.6.sdk -arch x86_64 -arch i386" LDFLAGS="-framework CoreFoundation" ./configure --prefix=$PREFIX --disable-shared --disable-dependency-tracking --with-libintl-prefix=$PREFIX - -make install - -popd - -# Build libassuan - -if [ ! -f "libassuan-2.0.0.tar.bz2" ]; then - -curl -O ftp://ftp.gnupg.org/gcrypt/libassuan/libassuan-2.0.0.tar.bz2 -tar xjf libassuan-2.0.0.tar.bz2 - -fi - -pushd libassuan-2.0.0 - -CFLAGS="-isysroot /Developer/SDKs/MacOSX10.6.sdk -arch x86_64 -arch i386" ./configure --prefix=$PREFIX --disable-shared --disable-dependency-tracking --with-gpg-error-prefix=$PREFIX - -make install - -popd - -# Build gpgpme - -if [ ! -f "gpgme-1.3.0.tar.bz2" ]; then - -curl -O ftp://ftp.gnupg.org/gcrypt/gpgme/gpgme-1.3.0.tar.bz2 -tar xjf gpgme-1.3.0.tar.bz2 - -fi - -pushd gpgme-1.3.0 - -echo "./configure --prefix=$PREFIX --enable-static --disable-shared --disable-dependency-tracking --with-gpg-error-prefix=$PREFIX --with-gpg=$PREFIX/bin/gpg --with-libassuan-prefix=$PREFIX --without-pth --disable-glibtest" -CFLAGS="-isysroot /Developer/SDKs/MacOSX10.6.sdk -arch x86_64 -arch i386" ./configure --prefix=$PREFIX --enable-static --disable-shared --disable-dependency-tracking --with-gpg-error-prefix=$PREFIX --with-gpg=$PREFIX/bin/gpg --with-libassuan-prefix=$PREFIX --without-pth --disable-glibtest - -make install - -popd - diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 00000000..1e9fc9d6 --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,36 @@ +Copyright (c) 2000-2011, GPGMail project +All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * No name of the GPGMail contributors may be used to endorse or promote + products derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team AND ITS CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ANY CONTRIBUTOR BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Note that some parts of the GPGMail distribution are under LGPL license: the +MacGPGME framework, the gpg-error and gpgme libraries. The present license does +not apply to these parts. + +MacGPGME, copyright 2001-2008 MacGPG Project +gpg-error, copyright 2005-2008 g10 Code GmbH +gpgme, copyright 2001-2008 g10 Code GmbH + +Many thanks to the original author Stéphane Corthsy . + +For further information have a look at http://www.gpgtools.org. \ No newline at end of file diff --git a/MailHeaders/Lion/Mail/ABSearchOperationDelegate-Protocol.h b/MailHeaders/Lion/Mail/ABSearchOperationDelegate-Protocol.h new file mode 100644 index 00000000..3606ada2 --- /dev/null +++ b/MailHeaders/Lion/Mail/ABSearchOperationDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol ABSearchOperationDelegate +- (id)addressBook; +- (void)searchOperation:(id)arg1 foundRecords:(id)arg2; +- (void)searchOperationDidFinish:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/Account-MailUIExtras.h b/MailHeaders/Lion/Mail/Account-MailUIExtras.h new file mode 100644 index 00000000..7f12d859 --- /dev/null +++ b/MailHeaders/Lion/Mail/Account-MailUIExtras.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "Account.h" + +@interface Account (MailUIExtras) ++ (BOOL)_existsAccountOfClass:(Class)arg1; ++ (BOOL)exchangeAccountExists; ++ (id)mailAccountWithName:(id)arg1; ++ (id)mailAccountOfClass:(Class)arg1 withHostname:(id)arg2 username:(id)arg3; +- (void)_addAuthScheme:(id)arg1 toPopUp:(id)arg2; +- (void)configureAuthenticationPopUp:(id)arg1; +- (void)configureAuthenticationPopUp:(id)arg1 withAuthSchemes:(id)arg2; +- (id)authSchemeBindingProxies; +@end + diff --git a/MailHeaders/Lion/Mail/AccountAutoconfiguratorDelegate-Protocol.h b/MailHeaders/Lion/Mail/AccountAutoconfiguratorDelegate-Protocol.h new file mode 100644 index 00000000..1fdc9d23 --- /dev/null +++ b/MailHeaders/Lion/Mail/AccountAutoconfiguratorDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol AccountAutoconfiguratorDelegate +- (void)autoconfigurator:(id)arg1 didChangeState:(long long)arg2; +- (void)autoconfiguratorDidFail:(id)arg1; +- (void)autoconfiguratorDidFinish:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/AccountCell.h b/MailHeaders/Lion/Mail/AccountCell.h new file mode 100644 index 00000000..4e1e38a8 --- /dev/null +++ b/MailHeaders/Lion/Mail/AccountCell.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSActionCell.h" + +@class MailAccount, NSImage, NSString; + +@interface AccountCell : NSActionCell +{ + NSString *_subtitle; + MailAccount *_account; + NSImage *_icon; +} + +- (id)initTextCell:(id)arg1; +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)setAccount:(id)arg1; +- (void)setSubtitle:(id)arg1; +- (id)subtitle; +- (id)title; +@property(retain, nonatomic) NSImage *icon; // @synthesize icon=_icon; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/AccountDetails.h b/MailHeaders/Lion/Mail/AccountDetails.h new file mode 100644 index 00000000..3f06d045 --- /dev/null +++ b/MailHeaders/Lion/Mail/AccountDetails.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class AuthScheme, MailAccount, NSButton, NSPopUpButton, NSTextField, NSView, SpecialMailboxes; + +@interface AccountDetails : NSObject +{ + NSView *_detailView; + NSButton *_enableAccountCheckbox; + NSTextField *_portNumberField; + NSButton *_autoFetch; + NSButton *_sslSwitch; + NSPopUpButton *_authenticationPopup; + NSTextField *_domainLabel; + NSTextField *_domainField; + SpecialMailboxes *_specialMailboxes; + MailAccount *_account; + AuthScheme *_authScheme; +} + ++ (id)accountDetailsForAccountClass:(Class)arg1; ++ (id)accountDetailsNibName; +- (id)init; +- (void)dealloc; +- (Class)accountClass; +- (void)setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (void)_updateDomainUI; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (id)detailView; +- (void)setupAccountFromValuesInSpecialMailboxesUI:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (id)setupSpecialMailboxesUIFromValuesInAccount:(id)arg1; +- (void)didDisplayTabViewItem:(id)arg1; +- (BOOL)userWantsAccountActive; +- (id)portFieldForSSLCheckBox:(id)arg1; +- (void)sslChanged:(id)arg1; +- (void)authenticationChanged:(id)arg1; +- (void)_specialMailboxesDidChange:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/AccountInfo.h b/MailHeaders/Lion/Mail/AccountInfo.h new file mode 100644 index 00000000..dc562964 --- /dev/null +++ b/MailHeaders/Lion/Mail/AccountInfo.h @@ -0,0 +1,51 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class AccountSummary, IMAPMailboxes, MailAccount, NSMutableSet, NSPopUpButton, NSTabView, NSTabViewItem, NSView, NSWindow, OofPanelController, Quota, SpecialMailboxes; + +@interface AccountInfo : NSObject +{ + NSWindow *_window; + NSView *_topView; + NSTabView *_tabView; + NSPopUpButton *_accountPopup; + NSTabViewItem *_mailboxListTab; + NSTabViewItem *_outOfOfficeTab; + AccountSummary *_summary; + SpecialMailboxes *_specialMailboxes; + NSView *_specialMailboxesView; + Quota *_quota; + OofPanelController *_oofController; + IMAPMailboxes *_mailboxes; + MailAccount *_account; + NSMutableSet *_tabViewItemsThatHaveBeenSetup; + struct CGRect _oldFrame; + struct CGRect _newFrame; +} + ++ (void)showForAccount:(id)arg1 withTab:(id)arg2; +- (id)initWithMailAccount:(id)arg1; +- (id)init; +- (void)dealloc; +- (void)_configureAccountPopupSelectingAccount:(id)arg1; +- (id)_selectedAccount; +- (void)_setAccount:(id)arg1 setupSelectedTab:(BOOL)arg2; +- (id)_getOwnerFromIdentifier:(id)arg1; +- (void)_setupTabViewItem:(id)arg1 oldTabViewItem:(id)arg2; +- (void)_commitSpecialMailboxesChanges; +- (void)_accountsDidChange:(id)arg1; +- (void)_specialMailboxesDidChange:(id)arg1; +- (void)_showWithTab:(id)arg1; +- (void)accountPopupChanged:(id)arg1; +- (void)_handleOofError:(id)arg1; +- (void)tabView:(id)arg1 willSelectTabViewItem:(id)arg2; +- (void)tabView:(id)arg1 didSelectTabViewItem:(id)arg2; +- (void)windowWillClose:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/AccountInfoTabOwner-Protocol.h b/MailHeaders/Lion/Mail/AccountInfoTabOwner-Protocol.h new file mode 100644 index 00000000..7b9bb750 --- /dev/null +++ b/MailHeaders/Lion/Mail/AccountInfoTabOwner-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol AccountInfoTabOwner +- (void)accountInfoWillHideView:(id)arg1; +- (void)accountInfoWillShowView:(id)arg1; +- (id)view; +@end + diff --git a/MailHeaders/Lion/Mail/AccountPreferences.h b/MailHeaders/Lion/Mail/AccountPreferences.h new file mode 100644 index 00000000..d5c3587b --- /dev/null +++ b/MailHeaders/Lion/Mail/AccountPreferences.h @@ -0,0 +1,135 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "AccountStatusDataSourceDelegate-Protocol.h" +#import "MVTerminationHandler-Protocol.h" +#import "NSTabViewDelegate-Protocol.h" +#import "NSTableViewDataSource-Protocol.h" +#import "NSTableViewDelegate-Protocol.h" +#import "SyncableDataInterestedParty-Protocol.h" + +@class AccountDetails, AccountStatusDataSource, MailAccount, NSButton, NSIndexSet, NSMutableArray, NSMutableDictionary, NSPopUpButton, NSString, NSTabView, NSTableView, NSTextField, NSTextView, NSView; + +@interface AccountPreferences : NSPreferencesModule +{ + NSMutableArray *_accounts; + AccountDetails *_accountDetails; + NSTabView *_detailTabView; + NSTableView *_accountsTable; + NSButton *_createAccountButton; + NSButton *_removeAccountButton; + NSButton *_helpButton; + NSPopUpButton *_accountTypePopup; + NSTextField *_accountTypeString; + NSTextField *_accountName; + NSTextField *_fullNameField; + NSTextField *_emailAddressField; + NSTextField *_username; + NSTextField *_hostnameLabel; + NSTextField *_hostname; + NSTextField *_externalHostnameLabel; + NSTextField *_externalHostname; + NSTextField *_password; + AccountStatusDataSource *_deliveryASDS; + NSTextField *_deliveryAccountLabel; + NSPopUpButton *_smtpAccountPopup; + NSButton *_lockDeliveryAccountButton; + NSView *_outlookWebAccessView; + NSTextField *_outlookWebAccessServerName; + NSButton *_editAliasesButton; + NSView *_tlsCertificatesView; + NSPopUpButton *_tlsCertificatesPopup; + MailAccount *_accountBeingEdited; + MailAccount *_accountBeingValidated; + BOOL _accountBeingEditedWasEnabledWhenEditingStarted; + BOOL _creatingNewAccount; + BOOL _passwordFieldHasBeenTouched; + long long _indexOfNewAccount; + struct { + unsigned int userWantsToQuit:1; + unsigned int userWantsToClosePrefsPanel:1; + unsigned int userWantsToChangeSelection:1; + unsigned int userWantsToCreateNewAccount:1; + unsigned int userWantsToOpenNewAccountAssistant:1; + } _flags; + NSIndexSet *_selectedRows; + NSString *_selectedToolbarIdentifier; + BOOL _ignoreTableViewSelectionCallbacks; + BOOL _registeredForNotifications; + BOOL _lastPopupSelectionWasAOS; + NSMutableDictionary *_userEnteredInfo; + NSTextView *_accountSupportURLField; +} + ++ (void)_addAccountType:(id)arg1 class:(Class)arg2; ++ (void)initialize; ++ (void)focusAccount:(id)arg1; ++ (void)editServerList:(id)arg1 selectedAccount:(id)arg2; ++ (void)configureAccountTypePopUp:(id)arg1; ++ (void)selectAccoutType:(Class)arg1 inTypePopup:(id)arg2; ++ (Class)accountClassOfSelectedItemInAccountTypePopup:(id)arg1; ++ (id)ispAccountInfoOfSelectedItemInAccountTypePopup:(id)arg1; +- (id)titleForIdentifier:(id)arg1; +- (id)windowTitle; +- (void)dealloc; +- (void)awakeFromNib; +- (void)_accountsDidChange:(id)arg1; +- (id)init; +- (void)initializeFromDefaults; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)moduleWasInstalled; +- (BOOL)moduleCanBeRemoved; +- (BOOL)preferencesWindowShouldClose; +- (void)_saveAccountInfo; +- (void)toggleAccountEnabled:(id)arg1; +- (void)toggleIncludeWhenCheckingForNewMail:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)createNewAccount:(id)arg1; +- (void)_removeAccountBeingCreated; +- (void)editAccount:(id)arg1; +- (void)editMailAccount:(id)arg1; +- (void)_removeAccountSheetDidEnd:(id)arg1 returnCode:(long long)arg2 account:(id)arg3; +- (void)removeAccount:(id)arg1; +- (BOOL)_isAccountInformationDirty; +- (void)_handleRequestToSwitchAwayFromSelectedAccountWithResponse:(BOOL)arg1; +- (void)_saveAccountSheetDidEnd:(id)arg1 returnCode:(long long)arg2 context:(void *)arg3; +- (BOOL)_allowSwitchingAwayFromSelectedAccount; +- (void)_setUIElementsEnabled:(BOOL)arg1; +- (void)_clearAccountUI; +- (void)_reloadDeliveryAccountPopup:(id)arg1; +- (void)_setupUIForAccountBeingEdited; +- (BOOL)_configureTLSCertificatesPopUp; +- (void)_runAccountDetailPanelForAccount:(id)arg1; +- (void)_saveAccountBeingEdited; +- (void)tabView:(id)arg1 didSelectTabViewItem:(id)arg2; +- (void)_setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (void)_updateAccountTypePopup; +- (BOOL)_newSettingsAreValid; +- (void)_accountTypePopupWillPopup:(id)arg1; +- (void)accountTypeChanged:(id)arg1; +- (void)editAliases:(id)arg1; +- (void)editServerList:(id)arg1 selectedAccount:(id)arg2; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)_accountAtRow:(long long)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (BOOL)tableView:(id)arg1 writeRows:(id)arg2 toPasteboard:(id)arg3; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (BOOL)_validateDrop:(id)arg1 proposedRow:(long long)arg2 dropOperation:(unsigned long long)arg3; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)controlTextDidChange:(id)arg1; +- (BOOL)dataWillBeSynced; +- (void)dataWasSynced; +- (id)_nameForNewAccount; +- (Class)_classForNewAccount; + +@end + diff --git a/MailHeaders/Lion/Mail/AccountSetupAssistant.h b/MailHeaders/Lion/Mail/AccountSetupAssistant.h new file mode 100644 index 00000000..0fac9596 --- /dev/null +++ b/MailHeaders/Lion/Mail/AccountSetupAssistant.h @@ -0,0 +1,249 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "Assistant.h" + +#import "AccountAutoconfiguratorDelegate-Protocol.h" +#import "AccountSetupValidatorDelegate-Protocol.h" + +@class AccountAutoconfigurator, AccountSetupValidator, AccountSummary, AuthScheme, DeliveryAccount, IACrossAppSetupViewController, MailAccount, NSArray, NSAttributedString, NSDictionary, NSMutableArray, NSNumber, NSPopUpButton, NSString, NSTabView, NSTextField, NSURL, NSView; + +@interface AccountSetupAssistant : Assistant +{ + NSView *_topView; + NSTabView *_tabView; + NSView *_summaryContainerView; + NSPopUpButton *_incomingTypePopUp; + NSPopUpButton *_incomingAuthPopUp; + NSPopUpButton *_outgoingAuthPopUp; + NSView *_firstKeyViewForBasicInformation; + NSView *_firstKeyViewForBasicWithUser; + NSView *_firstKeyViewForIncomingServer; + NSView *_firstKeyViewForIncomingSecurity; + NSView *_firstKeyViewForOutgoingServer; + NSView *_firstKeyViewForOutgoingSecurity; + NSView *_lastKeyViewForBasicInformation; + NSView *_lastKeyViewForBasicWithUser; + NSView *_lastKeyViewForIncomingServer; + NSView *_lastKeyViewForIncomingSecurity; + NSView *_lastKeyViewForOutgoingServer; + NSView *_lastKeyViewForOutgoingSecurity; + NSView *_firstResponderForBasicInformation; + NSView *_firstResponderForBasicWithUser; + NSView *_firstResponderForIncomingServer; + BOOL _canUseAutomaticSetup; + BOOL _shouldUseAutomaticSetup; + BOOL _canUseSimplifiedSetup; + BOOL _addressIsForEWSAccount; + BOOL _canGoBack; + NSString *_nextButtonTitle; + long long _selectedTab; + NSMutableArray *_previousTabs; + NSDictionary *_receivingAccountInfo; + NSDictionary *_deliveryAccountLookup; + NSArray *_deliveryAccountKeys; + MailAccount *_receivingAccount; + DeliveryAccount *_deliveryAccount; + AccountSummary *_summary; + IACrossAppSetupViewController *_crossAppSetupViewController; + AccountSetupValidator *_validator; + int _receivingValidationStatus; + int _deliveryValidationStatus; + AccountAutoconfigurator *_autoconfigurator; + int _autoconfigurationStatus; + BOOL _autoconfigureWithOptionKeyDown; + BOOL _forceManualSetupWithOptionKeyDown; + BOOL _forceManualSetup; + NSString *_windowTitle; + NSString *_firstPaneTitle; + NSString *_firstPaneDescription; + NSView *_automaticSetupContainerView; + NSArray *_automaticSetupViews; + NSView *_autoconfigurationSummarySetupContainerView; + NSView *_addAccountsInOtherAppsView; + NSView *_addAccountsInOtherAppsCheckboxesContainerView; + BOOL _addAccountToiCal; + BOOL _addAccountToAddressBook; + BOOL _canAddAccountToiCal; + BOOL _canAddAccountToAddressBook; + NSString *_addAccountToiCalToolTip; + NSString *_addAccountToAddressBookToolTip; + NSView *_addEWSAccountCheckBoxSection; + NSTextField *_incomingOutlookServerField; + NSString *_name; + NSString *_emailAddress; + NSString *_password; + BOOL _isEmailAddressValid; + long long _incomingAccountClassIndex; + NSString *_incomingAccountTypeString; + NSString *_incomingDescription; + NSString *_incomingMailServer; + NSString *_incomingUserName; + NSString *_incomingOutlookServer; + NSNumber *_incomingPortNumber; + BOOL _isIncomingMailServerValid; + BOOL _isIncomingUserNameValid; + BOOL _isIncomingOutlookServerValid; + BOOL _hideIncomingOutlookServer; + BOOL _hideExchangeAccountType; + BOOL _hideMobileMeAccountType; + BOOL _hideCastleAccountType; + BOOL _mobileMeSupported; + BOOL _castleSupported; + BOOL _incomingAuthUseSSL; + AuthScheme *_incomingAuthScheme; + NSString *_incomingAuthDomainName; + NSURL *_incomingInternalURL; + NSURL *_incomingExternalURL; + NSString *_outgoingDescription; + NSString *_outgoingMailServer; + BOOL _outgoingUseOnly; + BOOL _outgoingUseAuthentication; + NSString *_outgoingUserName; + NSString *_outgoingPassword; + NSNumber *_outgoingPortNumber; + BOOL _isOutgoingMailServerValid; + BOOL _outgoingAuthUseSSL; + AuthScheme *_outgoingAuthScheme; + NSString *_outgoingAuthDomainName; + NSAttributedString *_statusMessage; + BOOL _showStatusAlert; + BOOL _takeAccountOnline; +} + ++ (id)keyPathsForValuesAffectingHideAOSAccountsSeparator; ++ (id)keyPathsForValuesAffectingActionInProgress; ++ (id)keyPathsForValuesAffectingCanGoForward; +- (id)initWithAssistentManager:(id)arg1 isForStartup:(BOOL)arg2; +- (id)initWithAssistentManager:(id)arg1; +- (void)dealloc; +@property(readonly) BOOL hideAOSAccountsSeparator; +- (id)_usernameForEmailAddress:(id)arg1 ispAccount:(id)arg2; +- (void)_syncBindings; +- (long long)indexFromClass:(Class)arg1; +- (void)_setupLegacyStuff; +- (void)_animateEWSCheckBoxes; +- (id)_statusMessageAttributes; +- (id)_statusMessageWithString:(id)arg1; +- (void)_clearPropertyValues; +- (void)_loadDefaultPropertyValues; +- (void)_loadPropertiesFromReceivingInfo:(id)arg1; +- (void)_loadPropertiesFromDeliveryInfo:(id)arg1 reset:(BOOL)arg2; +- (void)_updateAccountsFromPropertiesAtTab:(long long)arg1; +- (BOOL)_shouldSkip:(long long)arg1; +- (void)start; +- (void)stop; +- (void)goForward; +- (void)goBackward; +- (BOOL)shouldStop; +- (void)_pushTab:(long long)arg1; +- (long long)_popTab; +- (void)setupKeyViewLoop; +- (BOOL)_validateTab:(long long)arg1; +- (void)_registerObservers; +- (void)_unregisterObservers; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (BOOL)validateOutgoingMailServer:(id *)arg1 error:(id *)arg2; +- (BOOL)actionInProgress; +- (BOOL)canGoForward; +- (void)_modifierFlagsChanged:(id)arg1; +- (void)_updateTab:(long long)arg1; +- (void)_updateNextButtonTitle; +- (void)_updateHelpTag; +- (id)_domainFromEmailAddress; +- (void)_updateAutomaticSetupFromEmailAddress; +- (void)_updateAutomaticSetupViews; +- (void)_updateAutomaticSetupKeyViewLoop; +- (void)_updateDeliveryAccountLookupFromInfos:(id)arg1; +- (BOOL)_canUseAutomaticSetupForDomain:(id)arg1; +- (id)_automaticSetupViewsForDomain:(id)arg1; +- (void)_autoconfigureAccounts; +- (void)_clearAutoconfigurator; +- (void)autoconfigurator:(id)arg1 didChangeState:(long long)arg2; +- (void)autoconfiguratorDidFail:(id)arg1; +- (void)autoconfiguratorDidFinish:(id)arg1; +- (void)insecurePasswordSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_validateReceivingAccount; +- (void)_clearValidator; +- (void)_extractSecuritySettingsFromValidator:(id)arg1; +- (void)validator:(id)arg1 didChangeState:(long long)arg2; +- (void)validatorDidFail:(id)arg1; +- (void)validatorDidFinish:(id)arg1; +- (void)_addNewAccount; +- (id)_uniqueDisplayNameForDisplayName:(id)arg1; +- (void)controller:(id)arg1 didSave:(BOOL)arg2 contextInfo:(void *)arg3; +@property BOOL takeAccountOnline; // @synthesize takeAccountOnline=_takeAccountOnline; +@property BOOL showStatusAlert; // @synthesize showStatusAlert=_showStatusAlert; +@property(retain) NSAttributedString *statusMessage; // @synthesize statusMessage=_statusMessage; +@property(retain) NSString *outgoingAuthDomainName; // @synthesize outgoingAuthDomainName=_outgoingAuthDomainName; +@property(retain) AuthScheme *outgoingAuthScheme; // @synthesize outgoingAuthScheme=_outgoingAuthScheme; +@property BOOL outgoingAuthUseSSL; // @synthesize outgoingAuthUseSSL=_outgoingAuthUseSSL; +@property BOOL isOutgoingMailServerValid; // @synthesize isOutgoingMailServerValid=_isOutgoingMailServerValid; +@property(retain) NSNumber *outgoingPortNumber; // @synthesize outgoingPortNumber=_outgoingPortNumber; +@property(retain) NSString *outgoingPassword; // @synthesize outgoingPassword=_outgoingPassword; +@property(retain) NSString *outgoingUserName; // @synthesize outgoingUserName=_outgoingUserName; +@property BOOL outgoingUseAuthentication; // @synthesize outgoingUseAuthentication=_outgoingUseAuthentication; +@property BOOL outgoingUseOnly; // @synthesize outgoingUseOnly=_outgoingUseOnly; +@property(retain) NSString *outgoingMailServer; // @synthesize outgoingMailServer=_outgoingMailServer; +@property(retain) NSString *outgoingDescription; // @synthesize outgoingDescription=_outgoingDescription; +@property(retain) NSURL *incomingExternalURL; // @synthesize incomingExternalURL=_incomingExternalURL; +@property(retain) NSURL *incomingInternalURL; // @synthesize incomingInternalURL=_incomingInternalURL; +@property(retain) NSString *incomingAuthDomainName; // @synthesize incomingAuthDomainName=_incomingAuthDomainName; +@property(retain) AuthScheme *incomingAuthScheme; // @synthesize incomingAuthScheme=_incomingAuthScheme; +@property BOOL incomingAuthUseSSL; // @synthesize incomingAuthUseSSL=_incomingAuthUseSSL; +@property BOOL hideCastleAccountType; // @synthesize hideCastleAccountType=_hideCastleAccountType; +@property BOOL hideMobileMeAccountType; // @synthesize hideMobileMeAccountType=_hideMobileMeAccountType; +@property BOOL hideExchangeAccountType; // @synthesize hideExchangeAccountType=_hideExchangeAccountType; +@property BOOL hideIncomingOutlookServer; // @synthesize hideIncomingOutlookServer=_hideIncomingOutlookServer; +@property BOOL isIncomingOutlookServerValid; // @synthesize isIncomingOutlookServerValid=_isIncomingOutlookServerValid; +@property BOOL isIncomingUserNameValid; // @synthesize isIncomingUserNameValid=_isIncomingUserNameValid; +@property BOOL isIncomingMailServerValid; // @synthesize isIncomingMailServerValid=_isIncomingMailServerValid; +@property(retain) NSNumber *incomingPortNumber; // @synthesize incomingPortNumber=_incomingPortNumber; +@property(retain) NSString *incomingOutlookServer; // @synthesize incomingOutlookServer=_incomingOutlookServer; +@property(retain) NSString *incomingUserName; // @synthesize incomingUserName=_incomingUserName; +@property(retain) NSString *incomingMailServer; // @synthesize incomingMailServer=_incomingMailServer; +@property(retain) NSString *incomingDescription; // @synthesize incomingDescription=_incomingDescription; +@property(retain) NSString *incomingAccountTypeString; // @synthesize incomingAccountTypeString=_incomingAccountTypeString; +@property long long incomingAccountClassIndex; // @synthesize incomingAccountClassIndex=_incomingAccountClassIndex; +@property BOOL isEmailAddressValid; // @synthesize isEmailAddressValid=_isEmailAddressValid; +@property(retain) NSString *password; // @synthesize password=_password; +@property(retain) NSString *emailAddress; // @synthesize emailAddress=_emailAddress; +@property(retain) NSString *name; // @synthesize name=_name; +@property(retain) NSString *firstPaneDescription; // @synthesize firstPaneDescription=_firstPaneDescription; +@property(retain) NSString *firstPaneTitle; // @synthesize firstPaneTitle=_firstPaneTitle; +@property(retain) NSString *windowTitle; // @synthesize windowTitle=_windowTitle; +@property int deliveryValidationStatus; // @synthesize deliveryValidationStatus=_deliveryValidationStatus; +@property int receivingValidationStatus; // @synthesize receivingValidationStatus=_receivingValidationStatus; +@property(retain) AccountSetupValidator *validator; // @synthesize validator=_validator; +@property BOOL forceManualSetup; // @synthesize forceManualSetup=_forceManualSetup; +@property BOOL forceManualSetupWithOptionKeyDown; // @synthesize forceManualSetupWithOptionKeyDown=_forceManualSetupWithOptionKeyDown; +@property BOOL autoconfigureWithOptionKeyDown; // @synthesize autoconfigureWithOptionKeyDown=_autoconfigureWithOptionKeyDown; +@property int autoconfigurationStatus; // @synthesize autoconfigurationStatus=_autoconfigurationStatus; +@property(retain) AccountAutoconfigurator *autoconfigurator; // @synthesize autoconfigurator=_autoconfigurator; +@property(retain, nonatomic) IACrossAppSetupViewController *crossAppSetupViewController; // @synthesize crossAppSetupViewController=_crossAppSetupViewController; +@property(retain) AccountSummary *summary; // @synthesize summary=_summary; +@property(retain) DeliveryAccount *deliveryAccount; // @synthesize deliveryAccount=_deliveryAccount; +@property(retain) MailAccount *receivingAccount; // @synthesize receivingAccount=_receivingAccount; +@property(retain) NSArray *deliveryAccountKeys; // @synthesize deliveryAccountKeys=_deliveryAccountKeys; +@property(retain) NSDictionary *deliveryAccountLookup; // @synthesize deliveryAccountLookup=_deliveryAccountLookup; +@property(retain) NSDictionary *receivingAccountInfo; // @synthesize receivingAccountInfo=_receivingAccountInfo; +@property(retain) NSMutableArray *previousTabs; // @synthesize previousTabs=_previousTabs; +@property long long selectedTab; // @synthesize selectedTab=_selectedTab; +@property(retain) NSString *nextButtonTitle; // @synthesize nextButtonTitle=_nextButtonTitle; +@property BOOL canGoBack; // @synthesize canGoBack=_canGoBack; +@property(retain) NSString *addAccountToAddressBookToolTip; // @synthesize addAccountToAddressBookToolTip=_addAccountToAddressBookToolTip; +@property(retain) NSString *addAccountToiCalToolTip; // @synthesize addAccountToiCalToolTip=_addAccountToiCalToolTip; +@property BOOL canAddAccountToAddressBook; // @synthesize canAddAccountToAddressBook=_canAddAccountToAddressBook; +@property BOOL canAddAccountToiCal; // @synthesize canAddAccountToiCal=_canAddAccountToiCal; +@property BOOL addAccountToAddressBook; // @synthesize addAccountToAddressBook=_addAccountToAddressBook; +@property BOOL addAccountToiCal; // @synthesize addAccountToiCal=_addAccountToiCal; +@property BOOL addressIsForEWSAccount; // @synthesize addressIsForEWSAccount=_addressIsForEWSAccount; +@property BOOL canUseSimplifiedSetup; // @synthesize canUseSimplifiedSetup=_canUseSimplifiedSetup; +@property BOOL shouldUseAutomaticSetup; // @synthesize shouldUseAutomaticSetup=_shouldUseAutomaticSetup; +@property BOOL canUseAutomaticSetup; // @synthesize canUseAutomaticSetup=_canUseAutomaticSetup; + +@end + diff --git a/MailHeaders/Lion/Mail/AccountSetupValidatorDelegate-Protocol.h b/MailHeaders/Lion/Mail/AccountSetupValidatorDelegate-Protocol.h new file mode 100644 index 00000000..0d6ff038 --- /dev/null +++ b/MailHeaders/Lion/Mail/AccountSetupValidatorDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol AccountSetupValidatorDelegate + +@optional +- (void)validator:(id)arg1 didChangeState:(long long)arg2; +- (void)validatorDidFail:(id)arg1; +- (void)validatorDidFinish:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/AccountStatusDataSource.h b/MailHeaders/Lion/Mail/AccountStatusDataSource.h new file mode 100644 index 00000000..c40aed17 --- /dev/null +++ b/MailHeaders/Lion/Mail/AccountStatusDataSource.h @@ -0,0 +1,92 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "SafeObserver.h" + +#import "NSTableViewDataSource-Protocol.h" +#import "NSTableViewDelegate-Protocol.h" + +@class Account, AccountStatus, NSArray, NSMutableDictionary, NSPopUpButton, NSTableView, NSTextView; + +@interface AccountStatusDataSource : SafeObserver +{ + NSPopUpButton *_popUp; + NSTableView *_table; + NSTextView *_ispInfoField; + NSMutableDictionary *_progressIndicators; + id _delegate; + AccountStatus *_statusProvider; + NSArray *_accounts; + Account *_selectedAccount; + Account *_dynamicAccount; + unsigned long long _accountFlags; + BOOL _disabled; + BOOL _allowNone; + BOOL _allowEditServerList; + BOOL _omitStatus; + BOOL _selectedAccountIsLocked; + BOOL _delegateWantsTableDataSourceInvocations; + BOOL _allowAccountLocking; + BOOL _beConservative; + BOOL _usesOfflineStatusString; +} + ++ (id)keyPathsForValuesAffectingTotalNumberOfAccounts; +- (id)initWithDelegate:(id)arg1 forAccounts:(unsigned long long)arg2; +- (id)init; +- (void)dealloc; +@property(retain) AccountStatus *statusProvider; // @dynamic statusProvider; +@property(copy) NSArray *accounts; // @dynamic accounts; +@property(retain) Account *dynamicAccount; // @dynamic dynamicAccount; +@property(retain) Account *selectedAccount; // @dynamic selectedAccount; +- (void)selectAnyAccount; +@property(readonly) unsigned long long totalNumberOfAccounts; +- (void)setDelegate:(id)arg1; +- (void)_resetObservedAccounts; +- (id)_displayStringWithOfflineStatusForAccount:(id)arg1; +- (void)refresh; +- (void)enable; +- (void)disable; +- (void)configurePopUpButton:(id)arg1; +- (double)popUpSizeToFitWidth:(id)arg1; +- (long long)numberOfItemsInMenu:(id)arg1; +- (unsigned long long)menuItemIndexOfAccount:(id)arg1; +- (BOOL)menu:(id)arg1 updateItem:(id)arg2 atIndex:(long long)arg3 shouldCancel:(BOOL)arg4; +- (void)_configureMenuItem:(id)arg1 forAccount:(id)arg2; +- (void)_popUpButtonWillPopUp:(id)arg1; +- (void)_synchronizePopUpWithSelectedAccount; +- (void)_selectAccount:(id)arg1; +- (void)editServerList:(id)arg1; +- (void)toggleAccountLock:(id)arg1; +- (void)configureTable:(id)arg1 ispInfoField:(id)arg2 handleDoubleClick:(BOOL)arg3 useOfflineStatusString:(BOOL)arg4; +- (void)tableViewWillBecomeVisible:(id)arg1; +- (void)tableViewWillHide:(id)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (unsigned long long)tableRowIndexOfAccount:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tableViewSelectionDidChange:(id)arg1; +- (id)_accountForTableRow:(long long)arg1; +- (void)_removeAllIndicators:(id)arg1; +- (void)_tableViewDoubleClickAction:(id)arg1; +- (void)_willRefreshStatusForAllAccounts:(id)arg1; +- (void)_didUpdateAccountStatus:(id)arg1; +- (void)_accountInfoDidChange:(id)arg1; +- (void)_reloadAccounts; +- (void)_addUI:(id)arg1; +- (void)_removeUI:(id)arg1; +- (void)_updateUI; +- (void)_updateUIWithAccountState:(id)arg1; +@property BOOL beConservative; // @synthesize beConservative=_beConservative; +@property BOOL allowAccountLocking; // @synthesize allowAccountLocking=_allowAccountLocking; +@property BOOL delegateWantsTableDataSourceInvocations; // @synthesize delegateWantsTableDataSourceInvocations=_delegateWantsTableDataSourceInvocations; +@property BOOL selectedAccountIsLocked; // @synthesize selectedAccountIsLocked=_selectedAccountIsLocked; +@property BOOL omitStatus; // @synthesize omitStatus=_omitStatus; +@property BOOL allowEditServerList; // @synthesize allowEditServerList=_allowEditServerList; +@property BOOL allowNone; // @synthesize allowNone=_allowNone; + +@end + diff --git a/MailHeaders/Lion/Mail/AccountStatusDataSourceDelegate-Protocol.h b/MailHeaders/Lion/Mail/AccountStatusDataSourceDelegate-Protocol.h new file mode 100644 index 00000000..0002233f --- /dev/null +++ b/MailHeaders/Lion/Mail/AccountStatusDataSourceDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol AccountStatusDataSourceDelegate + +@optional +- (void)setSelectedAccount:(id)arg1; +- (void)addServer:(id)arg1; +- (void)toggleAccountLock:(id)arg1; +- (void)editServerList:(id)arg1 selectedAccount:(id)arg2; +- (void)showConnectionDoctor:(id)arg1; +- (void)configureMenuItem:(id)arg1 forAccount:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/AccountSummary.h b/MailHeaders/Lion/Mail/AccountSummary.h new file mode 100644 index 00000000..1b0dae0c --- /dev/null +++ b/MailHeaders/Lion/Mail/AccountSummary.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSTextField, NSView; + +@interface AccountSummary : NSObject +{ + NSView *_view; + NSTextField *_accountDescription; + NSTextField *_fullname; + NSTextField *_emailAddress; + NSTextField *_userName; + NSTextField *_incomingServer; + NSTextField *_incomingServerSSLMode; + NSTextField *_outgoingServer; + NSTextField *_outgoingServerSSLMode; + NSTextField *_outlookServer; + NSTextField *_outlookServerLabel; +} + +- (id)init; +- (void)dealloc; +- (void)setupUIWithAccount:(id)arg1 deliveryAccount:(id)arg2; +- (void)setupUIWithAccount:(id)arg1; +- (id)view; + +@end + diff --git a/MailHeaders/Lion/Mail/ActivityAggregateView.h b/MailHeaders/Lion/Mail/ActivityAggregateView.h new file mode 100644 index 00000000..e16c3008 --- /dev/null +++ b/MailHeaders/Lion/Mail/ActivityAggregateView.h @@ -0,0 +1,52 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ColorBackgroundView.h" + +#import "NSAnimationDelegate-Protocol.h" + +@class ActivityAggregate, NSButton, NSProgressIndicator, NSTextField, NSViewAnimation; + +@interface ActivityAggregateView : ColorBackgroundView +{ + NSTextField *_nameTextField; + NSTextField *_rateTextField; + NSTextField *_statusTextField; + NSButton *_stopButton; + NSProgressIndicator *_progressIndicator; + double _nameTextFieldSpace; + double _rateTextFieldSpace; + double _statusTextFieldSpace; + double _progressIndicatorSpace; + id _fadeAnimationsLock; + NSViewAnimation *_fadeInAnimation; + NSViewAnimation *_fadeOutAnimation; + ActivityAggregate *_activityAggregate; + BOOL _frameIsChanging; + BOOL _targetHiddenState; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (void)removeAnimations; +- (id)_fadeInAnimation; +- (id)_fadeOutAnimation; +- (id)activityAggregate; +- (void)setActivityAggregate:(id)arg1; +- (void)setHidden:(BOOL)arg1; +- (void)setHidden:(BOOL)arg1 withFade:(BOOL)arg2 duration:(double)arg3 resetAggregate:(BOOL)arg4 updateCurrentHiddenState:(BOOL)arg5; +- (void)awakeFromNib; +- (void)_prepareForSlumber; +- (void)_awakeFromSlumber; +- (void)_updateNameTextField; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_hideShowRate; +- (void)_frameDidChange:(id)arg1; +- (void)animationDidEnd:(id)arg1; +@property(nonatomic) BOOL targetHiddenState; // @synthesize targetHiddenState=_targetHiddenState; + +@end + diff --git a/MailHeaders/Lion/Mail/ActivityProgressPanel.h b/MailHeaders/Lion/Mail/ActivityProgressPanel.h new file mode 100644 index 00000000..7f38f987 --- /dev/null +++ b/MailHeaders/Lion/Mail/ActivityProgressPanel.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ActivityMonitor, NSPanel, NSProgressIndicator, NSTextField, NSTimer; + +@interface ActivityProgressPanel : NSObject +{ + NSPanel *_progressPanel; + NSProgressIndicator *_progressBar; + NSTextField *_statusMessage; + ActivityMonitor *_monitor; + NSTimer *_timer; +} + +- (id)init; +- (void)_invalidateTimer; +- (void)dealloc; +- (id)activityMonitor; +- (void)setActivityMonitor:(id)arg1; +- (id)statusMessage; +- (void)setStatusMessage:(id)arg1; +- (id)panel; +- (void)_updateProgressBar; +- (void)_activityStarted:(id)arg1; +- (void)_activityEnded:(id)arg1; +- (void)cancel:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/ActivityViewController.h b/MailHeaders/Lion/Mail/ActivityViewController.h new file mode 100644 index 00000000..6b91a3dc --- /dev/null +++ b/MailHeaders/Lion/Mail/ActivityViewController.h @@ -0,0 +1,71 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSAnimationDelegate-Protocol.h" +#import "NSSplitViewDelegate-Protocol.h" + +@class ColorBackgroundView, ExpandingSplitView, MailVerticalSplitView, MailboxPaneAccessoryView, MailboxPaneBottomShadowView, NSButton, NSMutableArray, NSMutableSet, NSTextField, SplitterAnimation; + +@interface ActivityViewController : NSObject +{ + NSTextField *_titleTextField; + ExpandingSplitView *_splitView; + MailboxPaneAccessoryView *_contentView; + ColorBackgroundView *_mailActivityView; + NSButton *_mailActivityViewToggleButton; + MailboxPaneBottomShadowView *_bottomShadowView; + MailVerticalSplitView *_verticalSplitView; + NSMutableArray *_views; + NSMutableArray *_viewQueue; + NSMutableSet *_viewsPendingHide; + NSMutableArray *_animations; + SplitterAnimation *_splitterAnimation; + double _activityViewHeight; + double _mailActivityViewHeight; + BOOL _isVisible; + BOOL _isHidePostponingDisabled; + BOOL _isViewQueueAnimating; +} + +- (id)init; +- (void)dealloc; +- (void)_unregisterObservedKeyPaths; +@property(retain, nonatomic) MailVerticalSplitView *verticalSplitView; +- (void)_setSplitterAnimation:(id)arg1; +@property(nonatomic, setter=setVisible:) BOOL isVisible; +- (void)setVisible:(BOOL)arg1 animate:(BOOL)arg2; +- (void)setViewFrameSize:(id)arg1; +- (struct CGPoint)_originOfRow:(unsigned long long)arg1; +- (void)setViewFrameOrigin:(id)arg1; +- (void)awakeFromNib; +- (void)_addActivityAggregateViewForAggregate:(id)arg1 withKeyPathToObserve:(id)arg2; +- (void)configureActivityAggegateViews; +- (void)configureTitleTextField; +- (void)_finishAwake; +- (void)toggleDisplay:(id)arg1; +- (void)_updateViewsInQueue; +- (void)addViewToQueue:(id)arg1; +- (BOOL)removeViewFromQueue:(id)arg1; +- (void)addAnimation:(id)arg1; +- (void)removeAnimation:(id)arg1; +- (void)_showView:(id)arg1; +- (void)_hideView:(id)arg1; +- (void)_repositionViewsInQueueWithViewAnimations:(id)arg1; +- (void)_popView:(id)arg1; +- (void)_hideViews:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)animationDidEnd:(id)arg1; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (void)_setSplitViewPercentage:(double)arg1 animate:(BOOL)arg2; +- (void)splitViewDidResizeSubviews:(id)arg1; +@property BOOL isHidePostponingDisabled; // @synthesize isHidePostponingDisabled=_isHidePostponingDisabled; +@property BOOL isViewQueueAnimating; // @synthesize isViewQueueAnimating=_isViewQueueAnimating; + +@end + diff --git a/MailHeaders/Lion/Mail/ActivityViewEntry.h b/MailHeaders/Lion/Mail/ActivityViewEntry.h new file mode 100644 index 00000000..995c25c6 --- /dev/null +++ b/MailHeaders/Lion/Mail/ActivityViewEntry.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ActivityMonitor, ActivityViewer, NSButton, NSProgressIndicator, NSTextField, NSView; + +@interface ActivityViewEntry : NSObject +{ + NSView *_box; + NSProgressIndicator *_progressBar; + NSTextField *_statusField; + NSButton *_stopButton; + NSTextField *_taskNameField; + ActivityMonitor *_activity; + int _lastChangeCount; + ActivityViewer *_viewer; +} + +- (id)initForViewer:(id)arg1; +- (void)dealloc; +- (void)awakeFromNib; +- (void)setMonitoredActivity:(id)arg1; +- (id)monitoredActivity; +- (void)update; +- (void)_handleActivityEnded; +- (void)stop:(id)arg1; +- (BOOL)inUse; +- (void)setupUI; +- (id)view; + +@end + diff --git a/MailHeaders/Lion/Mail/ActivityViewer.h b/MailHeaders/Lion/Mail/ActivityViewer.h new file mode 100644 index 00000000..c8d0eece --- /dev/null +++ b/MailHeaders/Lion/Mail/ActivityViewer.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MVTerminationHandler-Protocol.h" + +@class FlippedView, NSMutableArray, NSPanel, NSScrollView, NSTimer; + +@interface ActivityViewer : NSObject +{ + FlippedView *_docView; + NSScrollView *_scrollView; + NSPanel *_window; + NSMutableArray *_entries; + long long _numActiveEntries; + NSTimer *_updateTimer; + BOOL _userIsBeingPromptedForTermination; +} + +- (id)init; +- (void)dealloc; +- (void)initializeFromDefaults; +- (void)awakeFromNib; +- (void)_handleNewActivity:(id)arg1; +- (void)_updateAllEntries; +- (void)_addViewToViewerWindow:(id)arg1; +- (void)_appendEntry:(id)arg1; +- (void)removeEntry:(id)arg1; +- (void)_tileViews; +- (BOOL)hasBackgroundActivity; +- (long long)countOfBackgroundActivities; +- (void)_confirmQuitSheetDidEnd:(id)arg1 returnValue:(long long)arg2 contextInfo:(void *)arg3; +- (BOOL)needsToPromptUserBeforeTermination:(id)arg1; +- (void)_promptUserForTermination; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (BOOL)isActivityViewerVisible; +- (void)toggleActivityViewerVisible; +- (id)statusMessageForTarget:(id)arg1; +- (BOOL)windowShouldClose:(id)arg1; +- (struct CGRect)windowWillUseStandardFrame:(id)arg1 defaultFrame:(struct CGRect)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/ActivityViewerMailSound.h b/MailHeaders/Lion/Mail/ActivityViewerMailSound.h new file mode 100644 index 00000000..d451a4dc --- /dev/null +++ b/MailHeaders/Lion/Mail/ActivityViewerMailSound.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface ActivityViewerMailSound : NSObject +{ + BOOL _fetchWasRequested; + BOOL _waitingForServerResponse; + BOOL _shouldPlayNoMailSound; + long long _backgroundFetchesInProgress; +} + +- (id)init; +- (void)dealloc; +- (void)beginFetch:(BOOL)arg1; +- (void)_monitoredActivityStarted:(id)arg1; +- (void)_monitoredActivityEnded:(id)arg1; +- (BOOL)_isActivityInteresting:(id)arg1 isStarting:(BOOL)arg2; +- (void)_mailFetchComplete; + +@end + diff --git a/MailHeaders/Lion/Mail/AddProgressMonitor-Protocol.h b/MailHeaders/Lion/Mail/AddProgressMonitor-Protocol.h new file mode 100644 index 00000000..208848ad --- /dev/null +++ b/MailHeaders/Lion/Mail/AddProgressMonitor-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol AddProgressMonitor +- (void)setFractionDone:(double)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/AddressAttachment.h b/MailHeaders/Lion/Mail/AddressAttachment.h new file mode 100644 index 00000000..9618af64 --- /dev/null +++ b/MailHeaders/Lion/Mail/AddressAttachment.h @@ -0,0 +1,84 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@class CachingABRecord, NSColor, NSFont, NSString, NSTextAttachment; + +@interface AddressAttachment : NSTextAttachment +{ + NSString *_address; + NSString *_name; + int _type; + CachingABRecord *_addressBookRecord; + BOOL _isInitializing; + BOOL _suppressNotifications; + BOOL _isSenderAddress; + BOOL _isOriginalSenderAddress; + BOOL _knownToHaveNoRecord; + BOOL _shouldDisplayFullAddress; + BOOL _shouldUseBoldFont; + NSFont *_preferredFont; + NSColor *_fontColor; +} + ++ (void)initialize; ++ (void)getRecordsForAddresses:(id)arg1; ++ (void)_getRecordsForAddressesSynchronously:(id)arg1; ++ (id)attributesForType:(int)arg1; ++ (void)resetAttributes; ++ (BOOL)addressIsExternal:(id)arg1; ++ (id)colorForExternalDomain; ++ (int)addressDisplayMode; ++ (void)setAddressDisplayMode:(int)arg1; +- (id)initWithAddress:(id)arg1 record:(id)arg2 type:(int)arg3 showComma:(BOOL)arg4; +- (id)initWithFileWrapper:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +@property(nonatomic) double fontSize; +- (void)adjustFontSizeBy:(long long)arg1; +@property(retain) NSColor *fontColor; +- (id)drawingAttributes; +- (BOOL)isInitializing; +- (id)address; +- (void)setAddress:(id)arg1; +- (id)_pasteboardString; +- (id)nonemptyAddress; +- (id)name; +- (void)_setName:(id)arg1; +- (id)formattedAddress; +- (id)quotedFormattedAddress; +- (id)nameOrAddressForDisplay; +- (void)writeToPasteboard:(id)arg1; +- (id)vCardString; +- (id)vCardRepresentation; +- (id)dictionaryRepresentation; +- (BOOL)hasToolTip; +- (id)toolTip; +- (int)type; +- (void)_addressDisplayModeChanged:(id)arg1; +- (id)addressBookRecord; +- (void)setAddressBookRecord:(id)arg1; +- (void)removeAddressBookRecord; +- (BOOL)knownToHaveNoRecord; +- (void)setKnownToHaveNoRecord:(BOOL)arg1; +- (BOOL)_isInAddressBook; +- (BOOL)isSenderAddress; +- (void)setIsSenderAddress; +- (BOOL)isOriginalSenderAddress; +- (void)setIsOriginalSenderAddress; +- (void)domainForMatchingDidChange; +- (BOOL)isSelected; +- (void)setIsSelected:(BOOL)arg1; +- (void)setRightSideHasSelectedText:(BOOL)arg1; +- (void)setRightSideHasSelectedAtom:(BOOL)arg1; +- (void)setLeftSideHasSelection:(BOOL)arg1; +- (void)setShouldUseBoldFont:(id)arg1; +- (id)attachmentCell; +- (void)_onlinePresenceChanged:(id)arg1; +- (void)_antialiasingSettingsChanged:(id)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Mail/AddressAttachmentCell.h b/MailHeaders/Lion/Mail/AddressAttachmentCell.h new file mode 100644 index 00000000..78361d58 --- /dev/null +++ b/MailHeaders/Lion/Mail/AddressAttachmentCell.h @@ -0,0 +1,127 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextAttachmentCell.h" + +@class AddressAttachment, NSMenu, NSMutableDictionary, NSUndoManager, NSView; + +@interface AddressAttachmentCell : NSTextAttachmentCell +{ + AddressAttachment *_addressAttachment; + struct CGRect _drawingRect; + struct CGRect _hotSpot; + struct CGRect _onlineHotSpot; + NSMenu *_menu; + unsigned long long _characterIndex; + struct CGSize _cellSize; + BOOL _isSpotlighted; + BOOL _shouldTestForSpotlighting; + BOOL _shouldShowComma; + NSMutableDictionary *_textAttributesRegular; + NSMutableDictionary *_textAttributesWhiteText; + NSMutableDictionary *_textAttributesTruncatedRegular; + NSMutableDictionary *_textAttributesTruncatedWhiteText; + NSView *_containingView; + NSUndoManager *_undoManager; + double _maximumPosition; + unsigned int _isSelected:1; + unsigned int _leftSideHasSelection:1; + unsigned int _rightSideHasSelectedText:1; + unsigned int _rightSideHasSelectedAtom:1; + unsigned int _overrideRightSideSelection:1; + unsigned int _overrideLeftSideSelection:1; + unsigned int _hideLeftSideMargin:1; + unsigned int _subtractLeftSideMarginFromRightSide:1; + unsigned int _menuIsVisible:1; +} + ++ (void)initialize; ++ (void)_initOnlineIndicator; ++ (long long)sizeForCellOfType:(int)arg1 withAddress:(id)arg2; ++ (long long)sizeForCellOfType:(int)arg1 withAddress:(id)arg2 fontSize:(double)arg3; ++ (double)heightForAtomType:(int)arg1; ++ (BOOL)_isOnLineAddress:(id)arg1; ++ (void)_changePresenceImage; +- (id)initImageCell:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)addressAttachment; +- (void)setAttachment:(id)arg1; +- (void)dealloc; +@property double maximumPosition; +- (unsigned long long)characterIndex; +- (struct CGRect)drawingRect; +- (struct CGRect)visibleRect; +- (struct CGRect)_atomBoundsRectForCellFrame:(struct CGRect)arg1; +- (struct CGRect)atomBoundsRect; +- (id)dragImage; +- (id)_textAttributesWhiteText; +- (id)_textAttributesTruncatedWhiteText; +- (id)_textAttributesRegular; +- (id)_textAttributesTruncatedRegular; +- (id)view:(id)arg1 stringForToolTip:(long long)arg2 point:(struct CGPoint)arg3 userData:(void *)arg4; +- (void)resetCursorAndToolTipRect:(struct CGRect)arg1 inView:(id)arg2; +- (id)menu; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)_isOnLine; +- (void)openChat:(id)arg1; +- (void)openNewMessage:(id)arg1; +- (void)addToAddressBook:(id)arg1; +- (void)_removeRecordFromAddressBook:(id)arg1 forRecent:(id)arg2; +- (void)openInAddressBook:(id)arg1; +- (void)openPersonCard:(id)arg1; +- (void)_createSmartMailbox:(id)arg1; +- (void)removeFromAddressHistory:(id)arg1; +- (void)changeAddress:(id)arg1; +- (void)copyAddressToClipboard:(id)arg1; +- (void)_searchInSpotlight:(id)arg1; +- (BOOL)isSelected; +- (void)setIsSelected:(BOOL)arg1; +- (BOOL)rightSideHasSelectedText; +- (void)setRightSideHasSelectedText:(BOOL)arg1; +- (void)setRightSideHasSelectedAtom:(BOOL)arg1; +- (BOOL)leftSideHasSelection; +- (void)setLeftSideHasSelection:(BOOL)arg1; +- (void)setOverrideRightSideSelection:(BOOL)arg1; +- (void)setOverrideLeftSideSelection:(BOOL)arg1; +- (BOOL)isSpotlighted; +- (void)testSpotlighting; +- (void)setShouldShowComma:(BOOL)arg1; +- (BOOL)_shouldDrawCommaRightNow; +- (void)selectedAddressChanged; +- (void)_presenceImageChanged:(id)arg1; +- (void)fontChanged; +- (void)fontColorChanged; +- (void)sizeChanged; +- (void)addressBookRecordChanged; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2 characterIndex:(unsigned long long)arg3; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2 characterIndex:(unsigned long long)arg3 layoutManager:(id)arg4; +- (void)_drawAtomPartsWithRect:(struct CGRect)arg1 cellFrame:(struct CGRect)arg2; +- (void)_drawAtomWithRect:(struct CGRect)arg1 cellFrame:(struct CGRect)arg2 inView:(id)arg3; +- (struct CGPoint)_textDrawPointInRect:(struct CGRect)arg1 ofViewOrImage:(id)arg2; +- (struct CGSize)cellSize; +- (struct CGSize)_sizeOfString:(id)arg1; +- (struct CGRect)cellFrameForTextContainer:(id)arg1 proposedLineFragment:(struct CGRect)arg2 glyphPosition:(struct CGPoint)arg3 characterIndex:(unsigned long long)arg4; +- (struct CGPoint)cellBaselineOffset; +- (BOOL)trackMouse:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3 atCharacterIndex:(unsigned long long)arg4 untilMouseUp:(BOOL)arg5; +- (BOOL)wantsToTrackMouse; +- (BOOL)wantsToTrackMouseForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3 atCharacterIndex:(unsigned long long)arg4; +- (BOOL)shouldBeSpotlightedInView:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)_delayedMouseEntered:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)_otherAtomBecameSpotlighted:(id)arg1; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityActionNames; +- (id)accessibilityActionDescription:(id)arg1; +- (void)accessibilityPerformAction:(id)arg1; +- (void)_showMenu; +@property(retain, nonatomic) NSUndoManager *undoManager; // @synthesize undoManager=_undoManager; + +@end + diff --git a/MailHeaders/Lion/Mail/AddressCommentCommand.h b/MailHeaders/Lion/Mail/AddressCommentCommand.h new file mode 100644 index 00000000..b8325a04 --- /dev/null +++ b/MailHeaders/Lion/Mail/AddressCommentCommand.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSScriptCommand.h" + +@interface AddressCommentCommand : NSScriptCommand +{ +} + +- (id)_getAddressCommentForObject:(id)arg1; +- (id)executeCommand; +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Lion/Mail/AddressHistoryController.h b/MailHeaders/Lion/Mail/AddressHistoryController.h new file mode 100644 index 00000000..32afc9d9 --- /dev/null +++ b/MailHeaders/Lion/Mail/AddressHistoryController.h @@ -0,0 +1,53 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSTableViewDataSource-Protocol.h" +#import "NSTableViewDelegate-Protocol.h" + +@class NSButton, NSImage, NSMutableArray, NSSearchField, NSString, NSTableView, NSWindow; + +@interface AddressHistoryController : NSObject +{ + NSTableView *_historyTableView; + NSButton *_addToAddressBookButton; + NSWindow *_window; + NSSearchField *_searchField; + NSMutableArray *_historyRecords; + NSString *_sortColumn; + BOOL _sortIsAscending; + NSImage *_addressBookPersonImage; +} + ++ (void)initialize; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (id)init; +- (void)dealloc; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)showAddressHistory; +- (void)addToAddressBook:(id)arg1; +- (void)deleteFromHistory:(id)arg1; +- (void)searchIndex:(id)arg1; +- (void)search:(id)arg1; +- (void)_cancelSearch:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)openAddressBook:(id)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)_sortHistory; +- (void)_showColumnSortIndicator; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; + +@end + diff --git a/MailHeaders/Lion/Mail/AddressLayoutManager.h b/MailHeaders/Lion/Mail/AddressLayoutManager.h new file mode 100644 index 00000000..8e2f4e67 --- /dev/null +++ b/MailHeaders/Lion/Mail/AddressLayoutManager.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSLayoutManager.h" + +@interface AddressLayoutManager : NSLayoutManager +{ + BOOL _isDrawingBackground; +} + +- (void)drawBackgroundForGlyphRange:(struct _NSRange)arg1 atPoint:(struct CGPoint)arg2; +- (struct CGRect *)rectArrayForCharacterRange:(struct _NSRange)arg1 withinSelectedCharacterRange:(struct _NSRange)arg2 inTextContainer:(id)arg3 rectCount:(unsigned long long *)arg4; + +@end + diff --git a/MailHeaders/Lion/Mail/AddressPicker.h b/MailHeaders/Lion/Mail/AddressPicker.h new file mode 100644 index 00000000..2a9c300c --- /dev/null +++ b/MailHeaders/Lion/Mail/AddressPicker.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSWindowController.h" + +@class ABPeoplePickerView; + +@interface AddressPicker : NSWindowController +{ + ABPeoplePickerView *_pickerView; + BOOL _selectionIsValid; +} + ++ (void)showOrHideAddressPicker; ++ (BOOL)isAddressPickerVisible; ++ (void)saveDefaults; ++ (void)restoreFromDefaults; +- (void)_showOrHideWindow; +- (BOOL)_isWindowVisible; +- (void)_saveDefaults; +- (void)_windowIsClosing; +- (void)dealloc; +- (void)awakeFromNib; +- (id)windowNibName; +- (void)searchIndex:(id)arg1; +- (void)putSelectionInTo:(id)arg1; +- (void)putSelectionInCC:(id)arg1; +- (void)putSelectionInBCC:(id)arg1; +- (void)putSelectionInBestHeader:(id)arg1; +- (void)_putSelectionInHeader:(id)arg1; +- (id)_formattedAddressForRecord:(id)arg1; +- (void)_ensureSelectionIsValid:(id)arg1; +@property(nonatomic) BOOL selectionIsValid; // @synthesize selectionIsValid=_selectionIsValid; + +@end + diff --git a/MailHeaders/Lion/Mail/AddressTextField.h b/MailHeaders/Lion/Mail/AddressTextField.h new file mode 100644 index 00000000..28ae3a21 --- /dev/null +++ b/MailHeaders/Lion/Mail/AddressTextField.h @@ -0,0 +1,99 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "AutosizingTextField.h" + +#import "AddressTextViewDelegate-Protocol.h" +#import "DraggingTextViewDelegate-Protocol.h" + +@class AddressAttachment, NSMutableArray, NSMutableDictionary, _AddressRectangleView; + +@interface AddressTextField : AutosizingTextField +{ + BOOL _addressField; + BOOL _allowsMultipleAddresses; + NSMutableArray *_trackingRectTags; + AddressAttachment *_expandedAtomAttachment; + AddressAttachment *_attachmentBeingDragged; + int _addressAtomType; + NSMutableArray *_stringsWithNoRecords; + NSMutableArray *_stringsAwaitingRecords; + NSMutableDictionary *_recordsForStrings; + NSMutableArray *_addressRects; + struct _NSRange _draggedSourceAtomsRange; + BOOL _isDraggingFromSelf; + BOOL _isHoveringAddressCard; + _AddressRectangleView *_rectangleView; +} + +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)delegate; +- (void)setDelegate:(id)arg1; +- (id)insertInScrollViewWithMaxLines:(unsigned long long)arg1; +- (void)_scrollToEnd:(id)arg1; +- (void)sizeToFit; +- (void)appendAddressList:(id)arg1 operation:(unsigned long long)arg2; +- (unsigned long long)_insertionPositionForMousePoint:(struct CGPoint)arg1; +- (void)_getAddressRectsForAtoms; +- (id)_emailAddressesFromABRecordUIDs:(id)arg1; +- (id)_emailAddressesFromFiles:(id)arg1; +- (BOOL)addressField; +- (void)setAddressField:(BOOL)arg1; +- (BOOL)allowsMultipleAddresses; +- (void)setAllowsMultipleAddresses:(BOOL)arg1; +- (int)addressAtomType; +- (void)setAddressAtomType:(int)arg1; +- (void)setExpandedAtomAttachment:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (void)draggingExited:(id)arg1; +- (BOOL)prepareForDragOperation:(id)arg1; +- (void)concludeDragOperation:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (unsigned long long)textView:(id)arg1 draggingEntered:(id)arg2; +- (unsigned long long)textView:(id)arg1 draggingUpdated:(id)arg2; +- (void)textView:(id)arg1 draggingExited:(id)arg2; +- (BOOL)textView:(id)arg1 shouldReadSelectionFromPasteboard:(id)arg2 type:(id)arg3 result:(char *)arg4; +- (void)textView:(id)arg1 draggedImage:(id)arg2 endedAt:(struct CGPoint)arg3 operation:(unsigned long long)arg4; +- (void)textView:(id)arg1 concludeDragOperation:(id)arg2; +- (void)textView:(id)arg1 clickedOnCell:(id)arg2 event:(id)arg3 inRect:(struct CGRect)arg4 atIndex:(unsigned long long)arg5; +- (void)selectTextBeforePosition:(unsigned long long)arg1; +- (void)selectTextAfterPosition:(unsigned long long)arg1; +- (void)textView:(id)arg1 doubleClickedOnCell:(id)arg2 inRect:(struct CGRect)arg3 atIndex:(unsigned long long)arg4; +- (void)expandGroupAddress:(id)arg1; +- (void)editAddress:(id)arg1; +- (void)removeAddress:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (BOOL)_performOperation:(unsigned long long)arg1 usingPasteboard:(id)arg2 sender:(id)arg3; +- (void)_updateSelectionForDrag; +- (void)draggedImage:(id)arg1 beganAt:(struct CGPoint)arg2; +- (void)draggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; +- (void)draggedImage:(id)arg1 endedAt:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (unsigned long long)draggingSourceOperationMaskForLocal:(BOOL)arg1; +- (void)setAttachmentBeingDragged:(id)arg1; +- (void)undo:(id)arg1; +- (void)redo:(id)arg1; +- (void)setAttributedStringValue:(id)arg1; +- (void)textDidEndEditing:(id)arg1; +- (BOOL)textShouldEndEditing:(id)arg1; +- (void)setFrame:(struct CGRect)arg1; +- (void)setFrameSize:(struct CGSize)arg1; +- (void)rightMouseDown:(id)arg1; +- (void)atomicizeAllAddresses; +- (void)recklesslyAtomicizeAllAddresses; +- (void)domainForMatchingDidChange; +- (void)addressesNeedRedisplay:(id)arg1; +- (void)_addressChanged:(id)arg1; +- (void)resetCursorRects; +- (void)viewDidMoveToWindow; +- (void)_windowDidResignOrBecomeMainOrKey:(id)arg1; +- (BOOL)_showingFocusRingAroundEnclosingScrollView:(id)arg1; +- (void)_drawScrollViewFocusRing:(id)arg1 clipRect:(struct CGRect)arg2 needsFullDisplay:(BOOL)arg3; +- (void)setCell:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/AddressTextFieldDelegate-Protocol.h b/MailHeaders/Lion/Mail/AddressTextFieldDelegate-Protocol.h new file mode 100644 index 00000000..9f5ced10 --- /dev/null +++ b/MailHeaders/Lion/Mail/AddressTextFieldDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextFieldDelegate-Protocol.h" + +@protocol AddressTextFieldDelegate + +@optional +- (id)selectedRecord; +- (id)completedAddress; +- (void)textFieldDidAtomicizeAllAddresses:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/AddressTextViewDelegate-Protocol.h b/MailHeaders/Lion/Mail/AddressTextViewDelegate-Protocol.h new file mode 100644 index 00000000..f4b9c84b --- /dev/null +++ b/MailHeaders/Lion/Mail/AddressTextViewDelegate-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol AddressTextViewDelegate +- (void)textView:(id)arg1 clickedOnCell:(id)arg2 event:(id)arg3 inRect:(struct CGRect)arg4 atIndex:(unsigned long long)arg5; +@end + diff --git a/MailHeaders/Lion/Mail/ApplescriptEmailImporter.h b/MailHeaders/Lion/Mail/ApplescriptEmailImporter.h new file mode 100644 index 00000000..1cf23eba --- /dev/null +++ b/MailHeaders/Lion/Mail/ApplescriptEmailImporter.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "EmailImporter.h" + +@class NSMutableArray; + +@interface ApplescriptEmailImporter : EmailImporter +{ + NSMutableArray *_mailboxArray; +} + ++ (id)explanatoryText; +- (id)prepareForImport; +- (id)statusLine; +- (void)readMailbox:(id)arg1 intoMailbox:(id)arg2; +- (void)importFinished; +- (id)scriptName; +- (id)messageSourceForMessage:(id)arg1; +- (id)processMessageViaApplescript:(long long)arg1 currentMailbox:(id)arg2; +- (id)dataForMessageString:(id)arg1; +- (BOOL)topLevelMailboxes; +- (id)subMailboxes:(id)arg1; +- (void)prepareImportArray; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Lion/Mail/Assistant.h b/MailHeaders/Lion/Mail/Assistant.h new file mode 100644 index 00000000..dbc745a5 --- /dev/null +++ b/MailHeaders/Lion/Mail/Assistant.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSButton, NSView; + +@interface Assistant : NSObject +{ + NSView *_parentView; + NSButton *_backButton; + NSButton *_forwardButton; + NSButton *_cancelButton; + NSButton *_helpButton; + id _delegate; +} + +- (id)initWithAssistentManager:(id)arg1; +- (id)init; +- (void)dealloc; +- (void)setDelegate:(id)arg1; +- (void)start; +- (void)stop; +- (void)goForward; +- (void)goBackward; +- (BOOL)shouldStop; +- (void)weAreDone; +- (id)windowTitle; +- (void)setupKeyViewLoop; + +@end + diff --git a/MailHeaders/Lion/Mail/AssistantDelegate-Protocol.h b/MailHeaders/Lion/Mail/AssistantDelegate-Protocol.h new file mode 100644 index 00000000..9a1d787d --- /dev/null +++ b/MailHeaders/Lion/Mail/AssistantDelegate-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol AssistantDelegate +- (void)assistantDidFinish:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/AssistantManager.h b/MailHeaders/Lion/Mail/AssistantManager.h new file mode 100644 index 00000000..03542da2 --- /dev/null +++ b/MailHeaders/Lion/Mail/AssistantManager.h @@ -0,0 +1,52 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "AssistantDelegate-Protocol.h" + +@class Assistant, NSButton, NSView, NSWindow; + +@interface AssistantManager : NSObject +{ + NSWindow *_window; + NSView *_assistantContainerView; + NSButton *_backButton; + NSButton *_forwardButton; + NSButton *_cancelButton; + NSButton *_helpButton; + int _type; + Assistant *_assistant; +} + ++ (id)openAssistantOfType:(int)arg1 modalForWindow:(id)arg2; ++ (void)openStartupAssistant; ++ (BOOL)isImporting; +- (id)_newAssistantOfType:(int)arg1; +- (id)init; +- (void)_setAssistant:(id)arg1; +- (id)_initWithType:(int)arg1; +- (void)dealloc; +- (id)assistantContainerView; +- (id)backButton; +- (id)forwardButton; +- (id)cancelButton; +- (id)helpButton; +- (void)back:(id)arg1; +- (void)forward:(id)arg1; +- (void)cancel:(id)arg1; +- (void)_start; +- (void)_showInWindow:(id)arg1; +- (void)_windowDidBecomeKey:(id)arg1; +- (void)_sheetWillBegin:(id)arg1; +- (void)_sheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_terminate; +- (void)assistantDidFinish:(id)arg1; +- (void)windowWillClose:(id)arg1; +@property(readonly, nonatomic) Assistant *assistant; // @synthesize assistant=_assistant; + +@end + diff --git a/MailHeaders/Lion/Mail/AtomicAddressTextView-Protocol.h b/MailHeaders/Lion/Mail/AtomicAddressTextView-Protocol.h new file mode 100644 index 00000000..7600ab51 --- /dev/null +++ b/MailHeaders/Lion/Mail/AtomicAddressTextView-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol AtomicAddressTextView +- (struct CGRect)cellFrameForAttachment:(id)arg1 atCharIndex:(long long)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/AttachmentDragSession.h b/MailHeaders/Lion/Mail/AttachmentDragSession.h new file mode 100644 index 00000000..febc103a --- /dev/null +++ b/MailHeaders/Lion/Mail/AttachmentDragSession.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableArray, NSView; + +@interface AttachmentDragSession : NSObject +{ + NSView *_sourceView; + NSMutableArray *_attachments; +} + +- (void)dealloc; +- (id)initWithSourceView:(id)arg1 attachments:(id)arg2; +- (id)sourceView; +- (id)attachments; +- (BOOL)startDragFromPoint:(struct CGPoint)arg1 event:(id)arg2 image:(id)arg3; +- (unsigned long long)draggingSourceOperationMaskForLocal:(BOOL)arg1; +- (void)draggedImage:(id)arg1 beganAt:(struct CGPoint)arg2; +- (void)draggedImage:(id)arg1 endedAt:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (void)draggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; +- (BOOL)ignoreModifierKeysWhileDragging; +- (id)namesOfPromisedFilesDroppedAtDestination:(id)arg1; +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/AttachmentLoader.h b/MailHeaders/Lion/Mail/AttachmentLoader.h new file mode 100644 index 00000000..91a17305 --- /dev/null +++ b/MailHeaders/Lion/Mail/AttachmentLoader.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ActivityMonitor, MessageStore, NSMutableArray; + +@interface AttachmentLoader : NSObject +{ + MessageStore *_store; + ActivityMonitor *_monitor; + NSMutableArray *_entries; +} + ++ (id)loaderForAttachment:(id)arg1 window:(id)arg2 reason:(int)arg3 application:(id)arg4 attachmentDirectory:(id)arg5; ++ (id)loaderForSavingAttachment:(id)arg1 window:(id)arg2 path:(id)arg3; ++ (void)startLoadingInlineAttachments:(id)arg1 window:(id)arg2 delegate:(id)arg3; ++ (void)cancelInlineLoads:(id)arg1 window:(id)arg2; ++ (id)_loaderForStore:(id)arg1; ++ (id)_makeLoaderForStore:(id)arg1; +- (void)dealloc; +- (id)init; +- (void)_cancelInlineLoadsForWindow:(id)arg1; +- (void)_didFetchDataForQueueEntry:(id)arg1; +- (void)_processAttachmentQueue; +- (void)_setMonitor:(id)arg1; +- (void)_monitorQuit; +- (void)_mailboxBecameInvalid; +- (void)_setStore:(id)arg1; +- (void)_startBackgroundThreadIfNeeded; +- (void)_addAttachmentsToFetch:(id)arg1 fromWindow:(id)arg2 delegate:(id)arg3; +- (BOOL)_addOrReprioritizeEntryEqualTo:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/AttachmentManager.h b/MailHeaders/Lion/Mail/AttachmentManager.h new file mode 100644 index 00000000..ceecdab3 --- /dev/null +++ b/MailHeaders/Lion/Mail/AttachmentManager.h @@ -0,0 +1,114 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MVTerminationHandler-Protocol.h" +#import "QLPreviewPanelDataSource-Protocol.h" +#import "QLPreviewPanelDelegate-Protocol.h" +#import "QLSeamlessOpenerDelegate-Protocol.h" + +@class InvocationQueue, NSMutableArray, NSMutableDictionary, NSTimer; + +@interface AttachmentManager : NSObject +{ + NSMutableArray *_openedAttachmentPaths; + NSMutableDictionary *_openedAttachmentMessageIDs; + NSMutableArray *_messageIDPurgeQueue; + NSTimer *_purgeTimer; + long long _purgeBehavior; + NSMutableDictionary *_quickLookAttachments; + InvocationQueue *_deletionHandlerQueue; + BOOL _isDirty; +} + ++ (void)initialize; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; ++ (id)_openedAttachmentListPath; ++ (BOOL)attachmentPurgingIsEnabled; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (long long)attachmentPurgingBehavior; +- (id)init; +- (void)dealloc; +- (void)initializeAttachmentPurging; +- (void)enableAttachmentPurging; +- (void)disableAttachmentPurging; +- (void)setAttachmentPurgingBehavior:(long long)arg1; +- (void)beginLoadingInlineAttachmentsForDisplay:(id)arg1; +- (void)cancelLoadingInlineAttachmentsForDisplay:(id)arg1; +- (void)_confirmDownloadSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (BOOL)dragAttachments:(id)arg1 startPoint:(struct CGPoint)arg2 view:(id)arg3 event:(id)arg4 image:(id)arg5 delegate:(id)arg6; +- (id)pathsForDraggedAttachments:(id)arg1 fromView:(id)arg2; +- (void)_openFromDownloadedNotification:(id)arg1; +- (void)_downloadCompleted:(id)arg1; +- (void)_tellControllerAttachmentIsDownloaded:(id)arg1; +- (BOOL)_addAttachmentForQuickLook:(id)arg1 attachmentDirectory:(id)arg2; +- (void)_addAttachmentToQuickLookPanel:(id)arg1 attachmentDirectory:(id)arg2 window:(id)arg3; +- (struct CGRect)previewPanel:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (id)previewPanel:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (BOOL)previewPanel:(id)arg1 shouldOpenURL:(id)arg2 forPreviewItem:(id)arg3; +- (void)windowWillClose:(id)arg1; +- (void)quickLookAttachments:(id)arg1 window:(id)arg2; +- (void)quickLookAttachmentsFromMessages:(id)arg1 window:(id)arg2; +- (void)downloadAttachments:(id)arg1 window:(id)arg2 delegate:(id)arg3; +- (void)openAttachments:(id)arg1 applicationURL:(struct __CFURL *)arg2 window:(id)arg3 delegate:(id)arg4; +- (void)_openAttachmentsWithDictionary:(id)arg1; +- (void)saveAttachmentsFromMessages:(id)arg1 window:(id)arg2; +- (void)runSavePanelForAttachments:(id)arg1 window:(id)arg2; +- (void)_runSavePanelForContext:(id)arg1; +- (void)saveAttachmentsToDownloadDirectory:(id)arg1 window:(id)arg2; +- (BOOL)openTemporaryAttachments:(id)arg1 applicationBundle:(id)arg2 window:(id)arg3; +- (BOOL)openInvitationAttachments:(id)arg1 openImmediately:(BOOL)arg2; +- (void)chooseApplicationToOpenAttachments:(id)arg1 needsSave:(BOOL)arg2 window:(id)arg3 delegate:(id)arg4; +- (void)_confirmExecutableSheetDidEnd:(id)arg1 alertReturn:(long long)arg2 context:(id)arg3; +- (BOOL)openFileURL:(id)arg1 stayInBackground:(BOOL)arg2 window:(id)arg3; +- (BOOL)openFileAtPath:(id)arg1 withApplication:(id)arg2 stayInBackground:(BOOL)arg3; +- (void)_configureOpenWithMenu:(id)arg1 forAttachments:(id)arg2; +- (id)contextualMenuForAttachments:(id)arg1 clickedAttachment:(id)arg2 forEditing:(BOOL)arg3; +- (void)saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3 window:(id)arg4; +- (void)writeImageAttachmentToPasteboard:(id)arg1; +- (long long)numberOfPreviewItemsInPreviewPanel:(id)arg1; +- (id)previewPanel:(id)arg1 previewItemAtIndex:(long long)arg2; +- (int)_openFullPath:(id)arg1 withAppURL:(struct __CFURL *)arg2 options:(unsigned int)arg3; +- (void)_openPathsForAttachmentsWithDictionary:(id)arg1; +- (void)_immediatelySaveFileWrapper:(id)arg1 path:(id)arg2 window:(id)arg3; +- (void)_saveAttachment:(id)arg1 toPath:(id)arg2 window:(id)arg3; +- (void)_saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3; +- (BOOL)_saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3 error:(id *)arg4; +- (void)_saveAttachmentsFromMessages:(id)arg1 toDirectory:(id)arg2; +- (BOOL)_saveAttachmentsFromMessages:(id)arg1 toDirectory:(id)arg2 error:(id *)arg3; +- (void)_reportCantOpenSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (BOOL)_sameAttachmentAsBefore:(id)arg1 path:(id)arg2; +- (BOOL)_immediatelyOpenAttachment:(id)arg1 path:(id)arg2 window:(id)arg3 application:(struct __CFURL *)arg4 reason:(int)arg5 exists:(BOOL)arg6; +- (struct CGRect)seamlessOpener:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (void)_setupOpenedAttachmentsMessageIDMap; +- (void)_addOrReplaceEntry:(id)arg1 inAttachmentList:(id)arg2; +- (void)_addPurgeEntryForAttachmentAtPath:(id)arg1 modDate:(id)arg2 messageID:(id)arg3 partNumber:(id)arg4; +- (void)_setDirty:(BOOL)arg1; +- (void)_scheduleAttachmentListSave; +- (void)_saveOpenedAttachmentsList; +- (BOOL)_allMessagesWithMessageIDAreDeletedOrTrashed:(id)arg1; +- (void)_synchronouslyPurgeAttachments; +- (void)_finishTerminatingAttachmentPurge; +- (void)_reallyPurgeAttachments; +- (void)_purgeAttachments:(id)arg1; +- (void)_purgeMessageIDs; +- (void)_scheduleMessageIDPurge; +- (void)_schedulePurgeOfMessageIDs:(id)arg1; +- (void)_messageDeleted:(id)arg1; +- (void)_handleMessageDeleted:(id)arg1; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (BOOL)_immediatelyOpenAttachment:(id)arg1 withApplicationURL:(struct __CFURL *)arg2 window:(id)arg3 attachmentDirectory:(id)arg4 reason:(int)arg5; +- (id)_pathForSavedFileWrapper:(id)arg1 directory:(id)arg2 makePathUnique:(BOOL)arg3; +- (void)_noteFileSystemChanged:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/AuthSchemeBindingProxy.h b/MailHeaders/Lion/Mail/AuthSchemeBindingProxy.h new file mode 100644 index 00000000..d5df8366 --- /dev/null +++ b/MailHeaders/Lion/Mail/AuthSchemeBindingProxy.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class AuthScheme; + +@interface AuthSchemeBindingProxy : NSObject +{ + AuthScheme *_authScheme; + BOOL _isSeparator; +} + ++ (id)noneProxy; ++ (id)separatorProxy; +- (id)init; +- (id)initWithAuthScheme:(id)arg1; +- (void)dealloc; +- (id)humanReadableName; +- (id)name; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +@property BOOL isSeparator; // @synthesize isSeparator=_isSeparator; +@property(retain) AuthScheme *authScheme; // @synthesize authScheme=_authScheme; + +@end + diff --git a/MailHeaders/Lion/Mail/AuthSchemeValueTransformer.h b/MailHeaders/Lion/Mail/AuthSchemeValueTransformer.h new file mode 100644 index 00000000..e0c7ac3b --- /dev/null +++ b/MailHeaders/Lion/Mail/AuthSchemeValueTransformer.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSValueTransformer.h" + +@interface AuthSchemeValueTransformer : NSValueTransformer +{ +} + ++ (Class)transformedValueClass; ++ (BOOL)allowsReverseTransformation; +- (id)transformedValue:(id)arg1; +- (id)reverseTransformedValue:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/AutoLogger.h b/MailHeaders/Lion/Mail/AutoLogger.h new file mode 100644 index 00000000..ad434bf8 --- /dev/null +++ b/MailHeaders/Lion/Mail/AutoLogger.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface AutoLogger : NSObject +{ + BOOL _xiLogOutput; + BOOL _consoleOutput; + BOOL _remoteOutput; + BOOL _selfTestOutput; + struct XILogRecord *_xiLog; +} + +- (void)openXILog:(id)arg1; +- (void)closeXILog; +- (void)beginTestCase:(id)arg1 withDescription:(id)arg2; +- (void)endTestCaseWithResult:(int)arg1; +- (void)logWithType:(unsigned long long)arg1 prefix:(id)arg2 message:(id)arg3; +- (void)logPass:(id)arg1; +- (void)logFail:(id)arg1; +- (void)logComment:(id)arg1; +- (void)logWarning:(id)arg1; +- (void)logInfo:(id)arg1; +- (void)logStart:(id)arg1; +- (void)logFinish:(id)arg1; +- (void)logDuration:(id)arg1; +@property BOOL selfTestOutput; // @synthesize selfTestOutput=_selfTestOutput; +@property BOOL remoteOutput; // @synthesize remoteOutput=_remoteOutput; +@property BOOL consoleOutput; // @synthesize consoleOutput=_consoleOutput; +@property BOOL xiLogOutput; // @synthesize xiLogOutput=_xiLogOutput; + +@end + diff --git a/MailHeaders/Lion/Mail/AutosizingScrollView.h b/MailHeaders/Lion/Mail/AutosizingScrollView.h new file mode 100644 index 00000000..98ebf171 --- /dev/null +++ b/MailHeaders/Lion/Mail/AutosizingScrollView.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSScrollView.h" + +@interface AutosizingScrollView : NSScrollView +{ + double _maxHeight; + BOOL _resizingContent; +} + ++ (struct CGSize)frameSizeForContentSize:(struct CGSize)arg1 hasHorizontalScroller:(BOOL)arg2 hasVerticalScroller:(BOOL)arg3 borderType:(unsigned long long)arg4; ++ (struct CGSize)contentSizeForFrameSize:(struct CGSize)arg1 hasHorizontalScroller:(BOOL)arg2 hasVerticalScroller:(BOOL)arg3 borderType:(unsigned long long)arg4; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (void)setHasVerticalScroller:(BOOL)arg1; +- (void)tile; +- (void)docViewFrameChanged; +- (void)setMaxHeight:(double)arg1; +- (double)maxHeight; +- (void)setTag:(long long)arg1; +- (long long)tag; + +@end + diff --git a/MailHeaders/Lion/Mail/AutosizingTextField.h b/MailHeaders/Lion/Mail/AutosizingTextField.h new file mode 100644 index 00000000..300670df --- /dev/null +++ b/MailHeaders/Lion/Mail/AutosizingTextField.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextField.h" + +@interface AutosizingTextField : NSTextField +{ + double _minimumHeight; +} + +- (void)_editorResized; +- (void)_adjustWidth:(double)arg1 ofEditor:(id)arg2; +- (void)_adjustWidthBy:(double)arg1; +- (void)setFrameSize:(struct CGSize)arg1; +- (void)resizeWithOldSuperviewSize:(struct CGSize)arg1; +- (void)sizeToFit; +- (void)_setupTextView:(id)arg1; +- (void)didAddSubview:(id)arg1; +- (void)willRemoveSubview:(id)arg1; +- (double)minimumHeight; +- (void)setMinimumHeight:(double)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/BannerContainer-Protocol.h b/MailHeaders/Lion/Mail/BannerContainer-Protocol.h new file mode 100644 index 00000000..49bf1875 --- /dev/null +++ b/MailHeaders/Lion/Mail/BannerContainer-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol BannerContainer +- (void)showBanner:(id)arg1; +- (void)removeBanner; +@end + diff --git a/MailHeaders/Lion/Mail/BannerController.h b/MailHeaders/Lion/Mail/BannerController.h new file mode 100644 index 00000000..2af6c6d0 --- /dev/null +++ b/MailHeaders/Lion/Mail/BannerController.h @@ -0,0 +1,69 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "BannerContainer-Protocol.h" + +@class MessageViewingState, NSButton, NSImageView, NSTextField, NSView; + +@interface BannerController : NSObject +{ + NSView *_junkMailBannerView; + NSTextField *_junkMailMessageField; + NSButton *_junkMailLoadHTMLButton; + NSView *_calendarBannerView; + NSTextField *_calendarEventTitleTextField; + NSTextField *_calendarEventTimeTextField; + NSButton *_calendarOpeniCalButton; + NSView *_loadImagesBannerView; + NSView *_certificateBannerView; + NSImageView *_certificateImage; + NSTextField *_certificateMessageField; + NSButton *_certificateHelpButton; + NSView *_childBannerView; + NSTextField *_childBannerMessageField; + NSImageView *_childBannerImage; + NSButton *_childBannerButton; + NSButton *_childBannerHelpButton; + NSView *_parentBannerView; + NSTextField *_parentBannerMessageField; + NSImageView *_parentBannerImage; + NSButton *_parentBannerButton; + id _bannerContainerController; + NSView *_bannerContainerView; + int _bannerType; +} + ++ (id)keyPathsForValuesAffectingShouldHideMeetingRequestButtons; ++ (id)keyPathsForValuesAffectingShouldHideMeetingCancellationOKButton; +- (id)initWithType:(int)arg1 bannerContainerView:(id)arg2 bannerContainerController:(id)arg3; +- (void)dealloc; +- (void)tearDown; +- (void)removeCurrentBanner; +- (void)updateBannerForViewingState:(id)arg1; +@property(readonly) MessageViewingState *viewingState; // @dynamic viewingState; +- (void)_showLoadImagesBanner; +- (void)downloadRemoteContent:(id)arg1; +- (void)_showCertificateBanner; +- (void)showCertificate:(id)arg1; +@property(readonly) BOOL shouldHideMeetingRequestButtons; // @dynamic shouldHideMeetingRequestButtons; +@property(readonly) BOOL shouldHideMeetingCancellationOKButton; // @dynamic shouldHideMeetingCancellationOKButton; +- (void)_showCalendarBanner; +- (id)_eventForCurrentMessage; +- (id)_titleForEvent:(id)arg1; +- (id)_dateStringForEvent:(id)arg1; +- (void)sendMeetingResponse:(id)arg1; +- (void)openIniCal:(id)arg1; +- (void)_showJunkBanner; +- (void)markAsNotJunkMailClicked:(id)arg1; +- (void)_setJunkLevelToNotJunk:(id)arg1; +- (BOOL)_showBannerIfMessageIsOutgoingMessageWaitingForParentApproval; +- (BOOL)_showBannerIfMessageIsPermissionRequestFromChild; +- (void)approveChildRequest:(id)arg1; +- (void)rejectChildRequest:(id)arg1; +- (void)sendMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/BindingsEnabledMenu.h b/MailHeaders/Lion/Mail/BindingsEnabledMenu.h new file mode 100644 index 00000000..ca073b91 --- /dev/null +++ b/MailHeaders/Lion/Mail/BindingsEnabledMenu.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMenu.h" + +@interface BindingsEnabledMenu : NSMenu +{ +} + +- (id)addItemWithTitle:(id)arg1 action:(SEL)arg2 keyEquivalent:(id)arg3; +- (id)insertItemWithTitle:(id)arg1 action:(SEL)arg2 keyEquivalent:(id)arg3 atIndex:(long long)arg4; + +@end + diff --git a/MailHeaders/Lion/Mail/BorderlessToolbarItem.h b/MailHeaders/Lion/Mail/BorderlessToolbarItem.h new file mode 100644 index 00000000..a7e40f06 --- /dev/null +++ b/MailHeaders/Lion/Mail/BorderlessToolbarItem.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@class NSImage; + +@interface BorderlessToolbarItem : NSToolbarItem +{ + double _width; +} + +- (id)initWithItemIdentifier:(id)arg1; +- (void)setWidth:(double)arg1; +- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; +- (void)validate; +- (id)control; +- (void)setLabel:(id)arg1; +- (id)image; +- (void)setImage:(id)arg1; +@property(retain) NSImage *inactiveImage; // @dynamic inactiveImage; +@property(retain) NSImage *pressedImage; // @dynamic pressedImage; + +@end + diff --git a/MailHeaders/Lion/Mail/BusyStatusErrorWindowDelegate.h b/MailHeaders/Lion/Mail/BusyStatusErrorWindowDelegate.h new file mode 100644 index 00000000..460227d7 --- /dev/null +++ b/MailHeaders/Lion/Mail/BusyStatusErrorWindowDelegate.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "DynamicErrorWindowDelegate-Protocol.h" + +@class DatabaseRecoverer; + +@interface BusyStatusErrorWindowDelegate : NSObject +{ + DatabaseRecoverer *_recoverer; +} + +- (id)initWithRecoverer:(id)arg1; +- (id)init; +- (void)dealloc; +- (BOOL)displayIndeterminateProgress; +- (id)errorMessageForErrorDiagnosis:(long long)arg1; +- (id)errorDescriptionForErrorDiagnosis:(long long)arg1; +- (id)leftButtonTextForErrorDiagnosis:(long long)arg1; +- (id)rightButtonTextForErrorDiagnosis:(long long)arg1; +- (void)leftActionSelectedWithDiagnosis:(long long)arg1; +- (void)rightActionSelectedWithDiagnosis:(long long)arg1; +- (unsigned long long)helpTopicForDiagnosis:(long long)arg1; +- (id)_stringForDatabase; +- (id)_capitalizedStringForDatabase; +@property DatabaseRecoverer *recoverer; // @synthesize recoverer=_recoverer; + +@end + diff --git a/MailHeaders/Lion/Mail/ButtonIconTextCell.h b/MailHeaders/Lion/Mail/ButtonIconTextCell.h new file mode 100644 index 00000000..a0f72845 --- /dev/null +++ b/MailHeaders/Lion/Mail/ButtonIconTextCell.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@class NSImage; + +@interface ButtonIconTextCell : NSButtonCell +{ + NSImage *_icon; + BOOL _cellEnabled; + struct CGRect _cellRect; +} + +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)setIcon:(id)arg1; +- (id)icon; +- (struct CGSize)iconSizeForFrame:(struct CGRect)arg1; +- (void)setCellEnabled:(BOOL)arg1; +- (BOOL)cellEnabled; +- (struct CGRect)drawTitle:(id)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/CDStructures.h b/MailHeaders/Lion/Mail/CDStructures.h new file mode 100644 index 00000000..6228c013 --- /dev/null +++ b/MailHeaders/Lion/Mail/CDStructures.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#pragma mark Named Structures + +struct MailAlertInfo { + id _field1; + id _field2; + id _field3; + id _field4; + long long _field5; +}; + +struct MailPasswordInfo { + id _field1; + id _field2; + char *_field3; + id _field4; +}; + +struct QuotaSimpleSortDescriptor { + void *comparator; + char ascending; +}; + +struct menuItemInfo { + long long _field1; + long long _field2; +}; + diff --git a/MailHeaders/Lion/Mail/CalendarBannerIconCreator.h b/MailHeaders/Lion/Mail/CalendarBannerIconCreator.h new file mode 100644 index 00000000..9182497a --- /dev/null +++ b/MailHeaders/Lion/Mail/CalendarBannerIconCreator.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface CalendarBannerIconCreator : NSObject +{ +} + ++ (id)appleFontWithName:(id)arg1 size:(double)arg2; ++ (id)dateStringAttributes; ++ (id)monthStringAttributes; ++ (void)drawBackgroundTileInRect:(struct CGRect)arg1 pathToBackground:(id)arg2 date:(id)arg3; ++ (id)newCalendarBannerIconForDate:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/CalendarEventBannerView.h b/MailHeaders/Lion/Mail/CalendarEventBannerView.h new file mode 100644 index 00000000..4964fb9d --- /dev/null +++ b/MailHeaders/Lion/Mail/CalendarEventBannerView.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ColorBackgroundView.h" + +@class NSView; + +@interface CalendarEventBannerView : ColorBackgroundView +{ + NSView *_titleField; + NSView *_dateField; + NSView *_maybeButton; + NSView *_okButton; +} + +- (void)setFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/CheckMailAutoTest.h b/MailHeaders/Lion/Mail/CheckMailAutoTest.h new file mode 100644 index 00000000..238c3f26 --- /dev/null +++ b/MailHeaders/Lion/Mail/CheckMailAutoTest.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailAutoTest.h" + +@interface CheckMailAutoTest : MailAutoTest +{ +} + +- (id)init; +- (void)setUp; +- (void)performTest; +- (void)tearDown; + +@end + diff --git a/MailHeaders/Lion/Mail/ClippedItemsIndicator.h b/MailHeaders/Lion/Mail/ClippedItemsIndicator.h new file mode 100644 index 00000000..3a6eabf6 --- /dev/null +++ b/MailHeaders/Lion/Mail/ClippedItemsIndicator.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSButton.h" + +@class NSMenu; + +@interface ClippedItemsIndicator : NSButton +{ + id _delegate; + NSMenu *_menu; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (id)init; +- (void)dealloc; +- (id)delegate; +- (void)setDelegate:(id)arg1; +- (void)_keyStatusDidChange:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)_popUpMenu; +- (void)drawRect:(struct CGRect)arg1; +- (void)menuDidClose:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/ClippedItemsIndicatorDelegate-Protocol.h b/MailHeaders/Lion/Mail/ClippedItemsIndicatorDelegate-Protocol.h new file mode 100644 index 00000000..364f0b26 --- /dev/null +++ b/MailHeaders/Lion/Mail/ClippedItemsIndicatorDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSObject-Protocol.h" + +@protocol ClippedItemsIndicatorDelegate +- (id)menuItemsForClippedItemsIndicator:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/ColorBackgroundView.h b/MailHeaders/Lion/Mail/ColorBackgroundView.h new file mode 100644 index 00000000..d423d872 --- /dev/null +++ b/MailHeaders/Lion/Mail/ColorBackgroundView.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@class NSArray, NSColor, NSGradient, NSImage; + +@interface ColorBackgroundView : NSView +{ + long long _tag; + NSColor *_color; + NSImage *_image; + NSColor *_imageColor; + NSArray *_colors; + BOOL _isFlipped; + double _rowHeight; + double _rowOffset; + BOOL _shouldTileImage; + NSGradient *_gradient; + double _gradientAngle; + BOOL _transparent; +} + +- (void)dealloc; +- (BOOL)isOpaque; +- (id)hitTest:(struct CGPoint)arg1; +@property(retain, nonatomic) NSColor *backgroundColor; +@property(retain, nonatomic) NSArray *backgroundColors; +@property(retain, nonatomic) NSGradient *gradient; +- (void)updateBackgroundImageColor; +@property(retain, nonatomic) NSImage *backgroundImage; // @synthesize backgroundImage=_image; +@property(nonatomic) BOOL shouldTileImage; // @synthesize shouldTileImage=_shouldTileImage; +- (void)drawRect:(struct CGRect)arg1; +- (id)colorForRow:(unsigned long long)arg1; +@property(nonatomic) BOOL transparent; // @synthesize transparent=_transparent; +@property(retain, nonatomic) NSColor *backgroundImageColor; // @synthesize backgroundImageColor=_imageColor; +@property(nonatomic, setter=setFlipped:) BOOL isFlipped; // @synthesize isFlipped=_isFlipped; +@property(nonatomic) double rowOffset; // @synthesize rowOffset=_rowOffset; +@property(nonatomic) double rowHeight; // @synthesize rowHeight=_rowHeight; +@property(nonatomic) long long tag; // @synthesize tag=_tag; +@property(nonatomic) double gradientAngle; // @synthesize gradientAngle=_gradientAngle; + +@end + diff --git a/MailHeaders/Lion/Mail/CompletionController.h b/MailHeaders/Lion/Mail/CompletionController.h new file mode 100644 index 00000000..5a6c1f2e --- /dev/null +++ b/MailHeaders/Lion/Mail/CompletionController.h @@ -0,0 +1,95 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "AddressTextFieldDelegate-Protocol.h" +#import "NSControlTextEditingDelegate-Protocol.h" +#import "NSTableViewDataSource-Protocol.h" +#import "NSTableViewDelegate-Protocol.h" + +@class ABAddressBook, CachingABRecord, NSArray, NSControl, NSMutableArray, NSOperationQueue, NSProgressIndicator, NSScrollView, NSString, NSTableView, NSWindow, _AutocompletionResultsAccumulator; + +@interface CompletionController : NSObject +{ + NSControl *_editingField; + NSWindow *_editingWindow; + NSString *_currentPartialString; + NSString *_previousString; + NSWindow *_completionWindow; + NSTableView *_completionTableView; + NSScrollView *_completionTableScrollView; + CachingABRecord *_selectedRecord; + NSString *_selectedAddress; + NSString *_completedAddress; + NSMutableArray *_matchingRecords; + NSMutableArray *_matchingAddresses; + NSMutableArray *_remoteMatches; + NSProgressIndicator *_progressIndicator; + BOOL _showListAsSoonAsPossible; + BOOL _remoteSearchesAreComplete; + BOOL _remoteSearchesArePending; + BOOL _localSearchIsComplete; + BOOL _showingPartialRemoteSearchResults; + NSOperationQueue *_autocompletionOperationQueue; + _AutocompletionResultsAccumulator *_autocompletionResultsAccumulator; + ABAddressBook *_autocompletionAddressBook; + NSString *_autocompletionSearchString; + NSArray *_remoteSearchOperations; + BOOL _autocompletionStringIsSingleWordPlusSpace; +} + ++ (void)initialize; ++ (void)_doCompletionWindowPlacement:(id)arg1; +- (id)init; +- (void)_setProgressIndicatorVisible:(BOOL)arg1; +- (void)awakeFromNib; +- (void)_userDidSelectText:(id)arg1; +- (void)_reset:(id)arg1; +- (id)selectedRecord; +- (id)completedAddress; +- (void)_setCompletedAddress:(id)arg1; +- (void)textFieldDidAtomicizeAllAddresses:(id)arg1; +- (void)_purgeAddressBook; +- (void)prepareToCloseWindow; +- (void)_cancelAllCompletions; +- (void)cancelThisCompletion; +- (BOOL)_acceptCurrentCompletion; +- (void)_selectTableViewRow:(id)arg1; +- (void)setEditingField:(id)arg1; +- (id)_completionTableView; +- (id)_stringToComplete:(id)arg1; +- (void)_showSelectedLineInField; +- (void)_showSelectedLine; +- (void)_showCompletionListWindow:(unsigned long long)arg1; +- (void)_orderOutCompletionWindow:(id)arg1; +- (void)_placementViewFrameChanged:(id)arg1; +- (void)_displayFilteredResultsShowList:(BOOL)arg1 showSelectedLine:(BOOL)arg2; +- (void)_processPartialRemoteAutocompletionResults:(id)arg1; +- (void)_allRemoteAutocompletionSearchesHaveFinished:(id)arg1; +- (void)_appendRemoteResultsToMatchingRecords; +- (void)_mergeRemoteMatchesIntoMatchingRecords; +- (void)_completeString:(id)arg1; +- (void)_beginAutocompletionSearchesForString:(id)arg1; +- (void)_beginRemoteSearches; +- (void)_processLocalAutocompletionResults:(id)arg1; +- (BOOL)_addressBookPerson:(id)arg1 nameMatchesSearchWords:(id)arg2; +- (BOOL)_email:(id)arg1 matchesSearchWords:(id)arg2; +- (id)_betterRecordOfRecent:(id)arg1 addressBook:(id)arg2; +- (void)_addressBookSearchCompleted:(id)arg1; +- (void)forceListToPopup; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (BOOL)control:(id)arg1 textShouldEndEditing:(id)arg2; +- (BOOL)control:(id)arg1 textView:(id)arg2 doCommandBySelector:(SEL)arg3; +- (BOOL)control:(id)arg1 textShouldBeginEditing:(id)arg2; +- (void)controlTextDidChange:(id)arg1; +- (BOOL)shouldChangeTextInRange:(struct _NSRange)arg1 replacementString:(id)arg2; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Lion/Mail/ComposeBackEnd.h b/MailHeaders/Lion/Mail/ComposeBackEnd.h new file mode 100644 index 00000000..f854973b --- /dev/null +++ b/MailHeaders/Lion/Mail/ComposeBackEnd.h @@ -0,0 +1,267 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class DOMNode, EditableWebMessageDocument, InvocationQueue, MFUUID, MailAccount, MailboxUid, NSArray, NSMutableDictionary, NSMutableSet, NSNumber, NSPort, NSString, NSURL, NSUndoManager, ParsedMessage, StationeryController; + +@interface ComposeBackEnd : NSObject +{ + id _delegate; + NSPort *_initializationPort; + StationeryController *_stationeryController; + NSArray *_originalMessages; + NSArray *_generatedParsedMessages; + DOMNode *_stationerySignatureNode; + NSMutableDictionary *_originalMessageHeaders; + NSMutableDictionary *_originalMessageBodies; + ParsedMessage *_originalMessageParsedMessage; + NSURL *_originalMessageBaseURL; + NSMutableDictionary *_cleanHeaders; + NSMutableDictionary *_extraRecipients; + NSMutableDictionary *_directoriesByAttachment; + NSUndoManager *_undoManager; + MFUUID *_documentID; + NSMutableSet *_knownMessageIds; + InvocationQueue *_saveQueue; + BOOL _saveThreadCancelFlag; + NSString *_saveThreadMessageId; + MailboxUid *_saveThreadMailboxUid; + struct { + unsigned int type:4; + unsigned int composeMode:2; + unsigned int contentIsLink:1; + unsigned int hadChangesBeforeSave:1; + unsigned int hasChanges:1; + unsigned int showAllHeaders:1; + unsigned int includeHeaders:1; + unsigned int isUndeliverable:1; + unsigned int isDeliveringMessage:1; + unsigned int sendWindowsFriendlyAttachments:2; + unsigned int contentsWasEditedByUser:1; + unsigned int delegateRespondsToDidChange:1; + unsigned int delegateRespondsToSenderDidChange:1; + unsigned int delegateRespondsToDidAppendMessage:1; + unsigned int delegateRespondsToDidSaveMessage:1; + unsigned int delegateRespondsToDidBeginLoad:1; + unsigned int delegateRespondsToDidEndLoad:1; + unsigned int delegateRespondsToWillCreateMessageWithHeaders:1; + unsigned int delegateRespondsToShouldSaveMessage:1; + unsigned int delegateRespondsToShouldDeliverMessage:1; + unsigned int delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients:1; + unsigned int delegateRespondsToDidCancelMessageDeliveryForEncryptionError:1; + unsigned int delegateRespondsToDidCancelMessageDeliveryForError:1; + unsigned int delegateRespondsToDidCancelMessageDeliveryForAttachmentError:1; + unsigned int signIfPossible:1; + unsigned int encryptIfPossible:1; + unsigned int knowsCanSign:1; + unsigned int canSign:1; + unsigned int shouldDownloadRemoteAttachments:1; + unsigned int overrideRemoteAttachmentsPreference:1; + unsigned int editorHasInitialized:1; + unsigned int isEditing:1; + unsigned int isSendFormatInitialized:1; + unsigned int isAppleScriptMessage:1; + unsigned int preferredEncoding; + unsigned int encodingHint; + } _flags; + NSString *_contentForAddressBookUpdate; + NSString *_vcardPathForAddressBookUpdate; + BOOL _willCloseEditor; + BOOL _isSettingSenderFromGetter; + EditableWebMessageDocument *_document; + NSMutableDictionary *_contentsByMessage; + ParsedMessage *_initialParsedMessage; + ParsedMessage *_restoredParsedMessage; + NSMutableDictionary *_attachmentMimeBodiesByURL; + NSNumber *_uniqueID; +} + ++ (void)initialize; ++ (id)supportedMailboxUidTypes; ++ (id)keyPathsForValuesAffectingAccount; ++ (id)composeBackEndForUniqueID:(id)arg1; ++ (void)registerComposeBackEnd:(id)arg1; ++ (void)unregisterComposeBackEnd:(id)arg1; ++ (id)_messageEditorForComposeBackEnd:(id)arg1 window:(id *)arg2; ++ (id)composeBackEndsByUniqueID; +- (void)dealloc; +- (id)initCreatingDocumentEditor:(BOOL)arg1; +- (id)init; +- (void)_createUniqueID; +- (void)setStateFromBackEnd:(id)arg1; +- (void)setGeneratedParsedMessages:(id)arg1; +- (void)_editorHasInitialized:(id)arg1; +- (void)setWillCloseEditor:(BOOL)arg1; +- (id)description; +- (id)delegate; +- (void)setDelegate:(id)arg1; +- (BOOL)hasStationery; +- (id)stationeryController; +- (BOOL)hasChanges; +- (void)setHasChanges:(BOOL)arg1; +- (id)undoManager; +- (void)setUndoManager:(id)arg1; +- (int)type; +- (void)setType:(int)arg1; +- (BOOL)isRedirecting; +- (void)setShouldDownloadRemoteAttachments:(BOOL)arg1; +- (BOOL)isUndeliverable; +- (void)setIsUndeliverable:(BOOL)arg1; +- (BOOL)sendWindowsFriendlyAttachments; +- (void)setSendWindowsFriendlyAttachments:(BOOL)arg1; +- (id)originalMessage; +- (void)setOriginalMessage:(id)arg1; +- (id)originalMessageHeaders; +- (id)originalMessageBody; +- (id)_knownMessageIds; +- (void)setOriginalMessages:(id)arg1; +- (id)attachments; +- (id)directoryForAttachment:(id)arg1; +- (BOOL)preserveAddedArchiveBody; +@property(retain) ParsedMessage *initialParsedMessage; +- (void)setRestoredParsedMessage:(id)arg1; +@property(readonly) EditableWebMessageDocument *document; +- (void)_generateParsedMessageFromOriginalMessages; +- (void)_configureLoadingOfRemoteAttachments; +- (void)setTypeAndConfigureLoadingOfRemoteAttachments:(int)arg1; +- (void)setupContentsForView:(id)arg1; +@property(readonly) BOOL defaultFormatIsRich; +- (void)_continueToSetupContentsForView:(id)arg1 withParsedMessages:(id)arg2; +- (BOOL)restoredMessageIsRich; +- (id)_parsedMessageForMessage:(id)arg1; +- (id)mimeBodyForAttachmentWithURL:(id)arg1; +- (unsigned int)_encodingHint; +- (id)_makeMessageWithContents:(id)arg1 isDraft:(BOOL)arg2 shouldSign:(BOOL)arg3 shouldEncrypt:(BOOL)arg4 shouldSkipSignature:(BOOL)arg5 shouldBePlainText:(BOOL)arg6; +- (id)plainTextMessage; +- (id)message; +@property(retain, nonatomic) MailAccount *account; +- (id)deliveryAccount; +- (void)setDeliveryAccount:(id)arg1; +@property(retain) NSString *sender; +- (id)cleanHeaders; +- (void)_setCleanHeaders:(id)arg1; +@property(retain) NSString *subject; +- (id)messageID; +- (void)setShowAllHeaders:(BOOL)arg1; +@property BOOL includeHeaders; +@property long long composeMode; +@property BOOL contentIsLink; +- (BOOL)okToAddSignatureAutomatically; +- (BOOL)okToLetUserAddSignature; +- (id)signatureId; +- (id)signature; +- (void)setSignature:(id)arg1; +- (void)setStationerySignatureNode:(id)arg1; +- (void)getSignatureElement:(id *)arg1 parent:(id *)arg2 nextSibling:(id *)arg3; +- (id)htmlStringForSignature:(id)arg1; +- (void)setMessagePriority:(long long)arg1; +- (long long)displayableMessagePriority; +- (void)addHeaders:(id)arg1; +- (id)addressListForHeader:(id)arg1; +- (void)setAddressList:(id)arg1 forHeader:(id)arg2; +- (void)insertAddress:(id)arg1 forHeader:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)removeAddressForHeader:(id)arg1 atIndex:(unsigned long long)arg2; +- (BOOL)isAddressHeaderKey:(id)arg1; +- (BOOL)deliverMessage; +- (BOOL)isDeliveringMessage; +- (void)_synchronouslyAppendMessageToOutboxWithContents:(id)arg1; +- (void)_backgroundAppendEnded:(id)arg1; +- (void)backgroundSaveEnded:(id)arg1; +- (void)_backgroundSaveDidChangeMessageId:(id)arg1; +- (id)saveTaskName; +- (BOOL)saveMessage; +- (id)defaultMessageStore; +- (void)removeLastDraft; +- (BOOL)isEditingMessage:(id)arg1; +- (void)setSignIfPossible:(BOOL)arg1; +- (void)setEncryptIfPossible:(BOOL)arg1; +- (id)allRecipients; +- (id)recipientsThatHaveNoKeyForEncryption; +- (unsigned int)preferredEncoding; +- (void)setPreferredEncoding:(unsigned int)arg1; +- (BOOL)canSignFromAddress:(id)arg1; +- (BOOL)canEncryptForRecipients:(id)arg1 sender:(id)arg2; +- (BOOL)_isValidSaveDestination:(id)arg1; +- (void)_configureLastDraftInformationFromHeaders:(id)arg1 overwrite:(BOOL)arg2; +- (void)updateDocumentReference:(id)arg1; +- (void)updateSaveDestinationAccount:(id)arg1 mailbox:(id)arg2; +- (void)finishPreparingContentWithEditorSettings:(id)arg1; +- (void)_notifyDelegateMonitor:(id)arg1 alreadyDone:(char *)arg2; +- (void)fetchAndCacheMessages; +- (void)generateMessageParsedMessages; +- (BOOL)hasContents; +- (BOOL)containsRichText; +- (id)userDefaultMessageFont; +- (id)outgoingMessageUsingWriter:(id)arg1 contents:(id)arg2 headers:(id)arg3 isDraft:(BOOL)arg4 shouldBePlainText:(BOOL)arg5; +- (id)htmlStringFromRange:(id)arg1 htmlDocument:(id)arg2 removeCustomAttributes:(BOOL)arg3 convertObjectsToImages:(BOOL)arg4 convertEditableElements:(BOOL)arg5; +- (id)_createPlainTextRepresentationIncludeAttachments:(BOOL)arg1; +- (void)addBaseURLTagToNode:(id)arg1; +- (void)_recursivelyURLifyNode:(id)arg1; +- (void)getContentsForMessage:(id)arg1 body:(id)arg2; +- (void)setOriginalMessageParsedMessage:(id)arg1; +- (id)htmlDocumentForSave; +- (id)copyOfContentsForDraft:(BOOL)arg1 shouldBePlainText:(BOOL)arg2 isOkayToForceRichText:(BOOL)arg3; +- (BOOL)attachmentCanBeSentInline:(id)arg1; +- (BOOL)containsAttachments; +- (BOOL)containsAttachmentsThatCouldConfuseWindowsClients; +- (void)_ccOrBccMyselfGivenOriginalMessage:(id)arg1 uniquedRecipientsTable:(id)arg2; +- (void)_setupDefaultRecipientsFirstTime:(BOOL)arg1; +- (void)_saveRecipients; +- (id)_fallbackReplyAddress; +- (id)_replyAddressForMessage:(id)arg1; +- (id)mailboxUidCreateIfNeeded:(BOOL)arg1; +- (int)_convertSaveOrSendResultFromResultCodeT:(int)arg1; +@property(readonly) BOOL isSavingMessage; +- (BOOL)isContentSignificant; +@property BOOL saveThreadCancelFlag; // @synthesize saveThreadCancelFlag=_saveThreadCancelFlag; +- (BOOL)_saveThreadShouldCancel; +- (void)_saveThreadUpdateAccount:(id)arg1 mailbox:(id)arg2; +- (void)_saveThreadSetMessageId:(id)arg1 mailboxUid:(id)arg2 overwrite:(id)arg3; +- (void)_saveThreadRemoveLastSave; +- (void)_saveThreadSaveContents:(id)arg1; +- (void)_markForOverwrite:(id)arg1; +- (BOOL)isExchangeNote; +@property(retain) MFUUID *documentID; // @synthesize documentID=_documentID; +@property(retain) NSURL *originalMessageBaseURL; // @synthesize originalMessageBaseURL=_originalMessageBaseURL; +@property(retain) MailboxUid *saveThreadMailboxUid; // @synthesize saveThreadMailboxUid=_saveThreadMailboxUid; +@property(copy) NSString *saveThreadMessageId; // @synthesize saveThreadMessageId=_saveThreadMessageId; +- (id)uniqueID; +- (BOOL)isVisible; +- (void)setIsVisible:(BOOL)arg1; +- (id)appleScriptSender; +- (void)setAppleScriptSender:(id)arg1; +- (id)appleScriptSubject; +- (void)setAppleScriptSubject:(id)arg1; +- (id)content; +- (void)setContent:(id)arg1; +- (id)messageSignature; +- (void)setMessageSignature:(id)arg1; +- (void)_addRecipientsForKey:(id)arg1 toArray:(id)arg2; +- (id)recipients; +- (id)toRecipients; +- (id)ccRecipients; +- (id)bccRecipients; +- (void)insertRecipient:(id)arg1 atIndex:(unsigned long long)arg2 inHeaderWithKey:(id)arg3; +- (void)insertInToRecipients:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInToRecipients:(id)arg1; +- (void)insertInCcRecipients:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInCcRecipients:(id)arg1; +- (void)insertInBccRecipients:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInBccRecipients:(id)arg1; +- (void)removeFromToRecipientsAtIndex:(unsigned long long)arg1; +- (void)removeFromCcRecipientsAtIndex:(unsigned long long)arg1; +- (void)removeFromBccRecipientsAtIndex:(unsigned long long)arg1; +- (void)replaceFormattedAddress:(id)arg1 withAddress:(id)arg2 forKey:(id)arg3; +- (id)handleSaveMessageCommand:(id)arg1; +- (id)handleSendMessageCommand:(id)arg1; +- (id)handleCloseScriptCommand:(id)arg1; +- (id)objectSpecifier; +- (void)setHtmlContent:(id)arg1; +- (void)setVcardPath:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/ComposeBackEnd_Scripting.h b/MailHeaders/Lion/Mail/ComposeBackEnd_Scripting.h new file mode 100644 index 00000000..7c9993fb --- /dev/null +++ b/MailHeaders/Lion/Mail/ComposeBackEnd_Scripting.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ComposeBackEnd.h" + +@class NSTextStorage; + +@interface ComposeBackEnd_Scripting : ComposeBackEnd +{ + NSTextStorage *_textStorage; +} + +- (void)dealloc; +- (void)setTextStorage:(id)arg1; +- (id)textStorage; +- (id)content; +- (void)setContent:(id)arg1; +- (void)_pushTextStorage; +- (void)_convertTextStorage; +- (void)_coalescedConvertTextStorage; + +@end + diff --git a/MailHeaders/Lion/Mail/ComposeHeaderView.h b/MailHeaders/Lion/Mail/ComposeHeaderView.h new file mode 100644 index 00000000..5f6901db --- /dev/null +++ b/MailHeaders/Lion/Mail/ComposeHeaderView.h @@ -0,0 +1,149 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@class NSButton, NSImage, NSMenu, NSPopUpButton, NSViewAnimation, OptionalView; + +@interface ComposeHeaderView : NSView +{ + id _delegate; + NSPopUpButton *_disclosureButton; + NSMenu *_actionMenu; + OptionalView *_toOptionalView; + OptionalView *_ccOptionalView; + OptionalView *_subjectOptionalView; + OptionalView *_bccOptionalView; + OptionalView *_replyToOptionalView; + OptionalView *_accountOptionalView; + OptionalView *_signatureOptionalView; + OptionalView *_priorityOptionalView; + OptionalView *_securityOptionalView; + OptionalView *_deliveryOptionalView; + NSView *_messageContentView; + NSPopUpButton *_signaturePopUp; + NSPopUpButton *_accountPopUp; + NSPopUpButton *_priorityPopUp; + NSPopUpButton *_deliveryPopUp; + NSButton *_cancelButton; + NSButton *_okButton; + NSImage *_borderImage; + unsigned int _showCcView:1; + unsigned int _showBccView:1; + unsigned int _showReplyToView:1; + unsigned int _showAccountView:1; + unsigned int _showSignatureView:1; + unsigned int _showPriorityView:1; + unsigned int _showDeliveryView:1; + BOOL _showSecurityView; + BOOL _tempShowDeliveryView; + unsigned int _accountFieldEnabled:1; + unsigned int _deliveryFieldEnabled:1; + unsigned int _signatureFieldEnabled:1; + unsigned int _securityFieldEnabled:1; + unsigned int _resizingViews:1; + unsigned int _customizing:1; + unsigned int _changesCancelled:1; + NSViewAnimation *_animation; + double _nextShownFrameOrigin; + double _nextHiddenFrameOrigin; + double _heightDelta; + id _lastFirstResponder; + double _signaturePopUpMaxWidth; + double _accountPopUpMaxWidth; + OptionalView *_togglingOptionalView; + BOOL _customizationShouldStick; +} + +- (void)awakeFromNib; +- (void)dealloc; +- (id)delegate; +- (void)setDelegate:(id)arg1; +- (id)messageContentView; +- (void)setMessageContentView:(id)arg1; +- (BOOL)isFlipped; +- (BOOL)isOpaque; +- (void)viewWillMoveToWindow:(id)arg1; +- (BOOL)isCustomizing; +- (void)_restoreFirstResponder; +- (void)_noteCurrentFirstResponder; +- (void)_popDisclosureButtonToFront; +- (void)_readVisibleStateFromOptionCheckboxes; +- (void)beginListeningForChildFrameChangeNotifications; +- (void)_setupMenuItemWithAction:(SEL)arg1 withState:(BOOL)arg2; +- (void)_setupActionMenuItemState; +- (double)_positionView:(id)arg1 yOffset:(double)arg2; +- (void)_setupSecurityViewInBackground; +- (BOOL)_shouldShowSecurityViewWhenNotCustomizing; +- (BOOL)_shouldShowSecurityViewWhenCustomizing; +- (BOOL)_shouldShowSecurityView; +- (BOOL)_shouldShowAccountViewWhenNotCustomizing; +- (BOOL)_shouldShowAccountViewWhenCustomizing; +- (BOOL)_shouldShowAccountView; +- (BOOL)_shouldShowSignatureViewWhenNotCustomizing; +- (BOOL)_shouldShowSignatureViewWhenCustomizing; +- (BOOL)_shouldShowSignatureView; +- (BOOL)_shouldShowDeliveryViewWhenNotCustomizing; +- (void)deliveryViewAppearanceConditionsDidChange:(id)arg1; +- (void)_recomputeShowDeliveryView; +- (BOOL)_shouldShowDeliveryViewWhenCustomizing; +- (BOOL)shouldShowDeliveryView; +- (BOOL)_shouldShowPriorityViewWhenNotCustomizing; +- (BOOL)_shouldShowPriorityViewWhenCustomizing; +- (BOOL)_shouldShowPriorityView; +- (struct CGRect)_calculateSecurityFrame:(struct CGRect)arg1; +- (struct CGRect)_calculatePriorityFrame:(struct CGRect)arg1; +- (void)_calculateAccountFrame:(struct CGRect *)arg1 deliveryFrame:(struct CGRect *)arg2 signatureFrame:(struct CGRect *)arg3; +- (void)_subviewFrameDidChange:(id)arg1; +- (BOOL)_isDisplayingBottomControls; +- (BOOL)_isDisplayingFatBottomControls; +- (void)_fixupTabRing; +- (void)tile; +- (void)_addView:(id)arg1 toList:(id)arg2 isVisible:(BOOL)arg3 adjustYOrigin:(BOOL)arg4; +- (void)_recordUserCustomization; +- (void)_customizeHeaders:(BOOL)arg1 duration:(double)arg2; +- (void)resizeWithOldSuperviewSize:(struct CGSize)arg1; +- (void)_enableActionMenu:(BOOL)arg1; +- (void)_sanityCheckHiddenessOfViewsInAnimationList:(id)arg1; +- (void)animationDidEnd:(id)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (void)_finishCustomizingSavingChanges:(BOOL)arg1; +- (void)done:(id)arg1; +- (void)_toggleCcOrBccOrReplyToField:(id)arg1; +- (void)toggleCcFieldVisibility:(id)arg1; +- (void)toggleBccFieldVisibility:(id)arg1; +- (void)toggleReplyToFieldVisibility:(id)arg1; +- (void)temporarilyToggleCcFieldVisibility; +- (void)temporarilyToggleBccFieldVisibility; +- (void)temporarilyToggleReplyToFieldVisibility; +- (void)_toggleAccountOrDeliveryOrSignatureOrPriorityOrSecurityField:(id)arg1; +- (void)togglePriorityFieldVisibility:(id)arg1; +- (void)temporarilyTogglePriorityFieldVisibility; +- (void)configureHeaders:(id)arg1; +- (void)configureAccountPopUpSize; +- (void)configureSignaturePopUpSize; +- (void)_setCcFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; +- (void)setCcFieldVisible:(BOOL)arg1; +- (void)_setBccFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; +- (void)setBccFieldVisible:(BOOL)arg1; +- (void)_setReplyToFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; +- (void)setReplyToFieldVisible:(BOOL)arg1; +- (void)setAccountFieldVisible:(BOOL)arg1; +- (void)setSignatureFieldVisible:(BOOL)arg1; +- (void)setDeliveryFieldVisible:(BOOL)arg1; +- (void)_setPriorityFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; +- (void)setPriorityFieldVisible:(BOOL)arg1; +- (void)setSecurityFieldVisible:(BOOL)arg1; +- (BOOL)securityFieldVisible; +- (BOOL)showCcHeader; +- (BOOL)showBccHeader; +- (BOOL)showReplyToHeader; +- (void)setAccountFieldEnabled:(BOOL)arg1; +- (void)setSignatureFieldEnabled:(BOOL)arg1; +- (void)setDeliveryFieldEnabled:(BOOL)arg1; +- (void)setSecurityFieldEnabled:(BOOL)arg1; +@property BOOL showSecurityView; // @synthesize showSecurityView=_showSecurityView; + +@end + diff --git a/MailHeaders/Lion/Mail/ComposeSpellChecker.h b/MailHeaders/Lion/Mail/ComposeSpellChecker.h new file mode 100644 index 00000000..a5ed1957 --- /dev/null +++ b/MailHeaders/Lion/Mail/ComposeSpellChecker.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSSpellChecker.h" + +@interface ComposeSpellChecker : NSSpellChecker +{ +} + +- (void)_mail_setObject:(id)arg1 forSpellDocumentTag:(long long)arg2; +- (id)_mail_objectForSpellDocumentTag:(long long)arg1; +- (void)_mail_removeObjectForSpellDocumentTag:(long long)arg1; +- (void)setPostCompletedNotification:(BOOL)arg1 forSpellDocumentWithTag:(long long)arg2; +- (long long)currentSpellDocumentTag; +- (void)_mail_postingTimerFired:(id)arg1; +- (void)_mail_spellPanelDidClose:(id)arg1; +- (void)_mail_willCheckSpellDocumentWithTag:(long long)arg1; +- (void)_mail_didCheckSpellDocumentWithTag:(long long)arg1 hasErrors:(BOOL)arg2; +- (BOOL)_mail_unifiedTextCheckingResultsHaveErrors:(id)arg1; +- (id)checkString:(id)arg1 range:(struct _NSRange)arg2 types:(unsigned long long)arg3 options:(id)arg4 inSpellDocumentWithTag:(long long)arg5 orthography:(id *)arg6 wordCount:(long long *)arg7; +- (long long)requestCheckingOfString:(id)arg1 range:(struct _NSRange)arg2 types:(unsigned long long)arg3 options:(id)arg4 inSpellDocumentWithTag:(long long)arg5 completionHandler:(id)arg6; +- (id)spellingPanel; +- (void)closeSpellDocumentWithTag:(long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/ComposingPreferences.h b/MailHeaders/Lion/Mail/ComposingPreferences.h new file mode 100644 index 00000000..7fc5b4e6 --- /dev/null +++ b/MailHeaders/Lion/Mail/ComposingPreferences.h @@ -0,0 +1,66 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "AccountStatusDataSourceDelegate-Protocol.h" + +@class ABLDAP_ConfigController, AccountStatusDataSource, NSButton, NSMatrix, NSPanel, NSPopUpButton, NSTextField, NSView; + +@interface ComposingPreferences : NSPreferencesModule +{ + NSPopUpButton *_defaultFormatButton; + NSButton *_alwaysCCMyselfSwitch; + NSPopUpButton *_ccOrBccButton; + NSButton *_replyUsingSameFormatSwitch; + NSButton *_expandAliasesSwitch; + NSButton *_useQuoteBarsSwitch; + NSPopUpButton *_spellCheckingPopUpButton; + NSButton *_replyQuotingSwitch; + NSMatrix *_quotingBehaviorMatrix; + NSTextField *_quotingBehaviorLabel; + NSButton *_matchDomainsSwitch; + NSTextField *_matchingDomainField; + NSPopUpButton *_noteAccountButton; + NSPopUpButton *_sendingAccountButton; + NSButton *_useAddressCompletionSwitch; + NSButton *_editServerListButton; + NSPanel *_ldapServerPanel; + NSView *_placeHolderView; + ABLDAP_ConfigController *_serverListController; + BOOL _endEditingSimply; + AccountStatusDataSource *_noteAccountDataSource; +} + +- (void)dealloc; +- (void)awakeFromNib; +- (void)configureMenuItem:(id)arg1 forAccount:(id)arg2; +- (BOOL)isResizable; +- (id)titleForIdentifier:(id)arg1; +- (id)windowTitle; +- (void)_postComposePreferencesChanged; +- (void)_sizeToFitWithinSuperview:(id)arg1; +- (void)initializeFromDefaults; +- (void)replyUsingSameFormatClicked:(id)arg1; +- (void)useQuoteBarsClicked:(id)arg1; +- (void)replyQuotingBehaviorChanged:(id)arg1; +- (void)quotingBehaviorChanged:(id)arg1; +- (void)spellCheckingBehaviorChanged:(id)arg1; +- (void)alwaysCCMyselfClicked:(id)arg1; +- (void)expandAliasesClicked:(id)arg1; +- (void)defaultMessageFormatChanged:(id)arg1; +- (void)_setComposeMode:(long long)arg1; +- (void)useAddressCompletionClicked:(id)arg1; +- (void)_ldapServerListChanged; +- (void)editServerListClicked:(id)arg1; +- (void)matchDomainsClicked:(id)arg1; +- (void)controlTextDidEndEditing:(id)arg1; +- (void)okClicked:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)sendingAccountClicked:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/ConnectionDoctor.h b/MailHeaders/Lion/Mail/ConnectionDoctor.h new file mode 100644 index 00000000..80bf46f0 --- /dev/null +++ b/MailHeaders/Lion/Mail/ConnectionDoctor.h @@ -0,0 +1,53 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "AccountStatusDataSourceDelegate-Protocol.h" + +@class AccountStatusDataSource, NSArray, NSButton, NSDrawer, NSImageView, NSMutableString, NSProgressIndicator, NSTableView, NSTextField, NSTextView; + +@interface ConnectionDoctor : NSObject +{ + NSTableView *_tableView; + NSImageView *_internetStatusIndicator; + NSProgressIndicator *_internetStatusProgressIndicator; + NSTextField *_internetStatusField; + NSButton *_checkStatusButton; + NSButton *_assistMeButton; + NSTextView *_ispInfoField; + NSDrawer *_detailDrawer; + NSButton *_detailButton; + NSTextView *_detailTextView; + AccountStatusDataSource *_deliveryASDS; + NSMutableString *_detailBuffer; + NSArray *_savedLogClasses; +} + ++ (void)initialize; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (void)awakeFromNib; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)dealloc; +- (void)show; +- (void)_willCheckInternetConnection:(id)arg1; +- (void)_didCheckInternetConnection:(id)arg1; +- (void)_willRefreshStatusForAllAccounts:(id)arg1; +- (void)_didRefreshStatusForAllAccounts:(id)arg1; +- (void)checkAccounts:(id)arg1; +- (void)assistMeClicked:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)toggleDetail:(id)arg1; +- (void)_flushLog; +- (void)logBytes:(const char *)arg1 length:(long long)arg2; +- (void)flushLog; + +@end + diff --git a/MailHeaders/Lion/Mail/ContainerView.h b/MailHeaders/Lion/Mail/ContainerView.h new file mode 100644 index 00000000..dd9dd328 --- /dev/null +++ b/MailHeaders/Lion/Mail/ContainerView.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSColor; + +@interface ContainerView : NSView +{ + struct CGSize _shadowOffset; + NSColor *_marginColor; + struct CGColor *_shadowColor; + double _minMarginTop; + double _minMarginBottom; + double _minMarginLeft; + double _minMarginRight; + NSView *_contentView; +} + +- (id)contentView; +- (void)setContentView:(id)arg1; +- (double)minMarginTop; +- (void)setMinMarginTop:(double)arg1; +- (double)minMarginBottom; +- (void)setMinMarginBottom:(double)arg1; +- (double)minMarginLeft; +- (void)setMinMarginLeft:(double)arg1; +- (double)minMarginRight; +- (void)setMinMarginRight:(double)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (void)drawRect:(struct CGRect)arg1; +- (void)updateContentFrame:(struct CGRect)arg1; +- (void)updateContentFrame; +- (void)setFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/CopyMessagesAutoTest.h b/MailHeaders/Lion/Mail/CopyMessagesAutoTest.h new file mode 100644 index 00000000..d3a5b337 --- /dev/null +++ b/MailHeaders/Lion/Mail/CopyMessagesAutoTest.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailAutoTest.h" + +@interface CopyMessagesAutoTest : MailAutoTest +{ +} + +- (id)init; +- (void)setUp; +- (void)performTest; +- (void)tearDown; + +@end + diff --git a/MailHeaders/Lion/Mail/CriteriaUIHelper.h b/MailHeaders/Lion/Mail/CriteriaUIHelper.h new file mode 100644 index 00000000..2059b682 --- /dev/null +++ b/MailHeaders/Lion/Mail/CriteriaUIHelper.h @@ -0,0 +1,71 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSTableViewDataSource-Protocol.h" + +@class CriterionView, NSButton, NSMutableArray, NSPanel, NSPopUpButton, NSScrollView, NSString, NSTableView, NSTextField, NSWindow; + +@interface CriteriaUIHelper : NSObject +{ + NSMutableArray *_criteriaViews; + NSTextField *_nameField; + NSScrollView *_criteriaContainer; + NSPopUpButton *_allCriteriaMustBeMetPopUp; + NSButton *_includeTrashCheckbox; + NSButton *_includeSentCheckbox; + NSTextField *_performActionLabel; + NSScrollView *_actionContainer; + CriterionView *_criterionView; + NSPanel *_headerListPanel; + NSTableView *_headerListTable; + NSButton *_addHeaderButton; + BOOL _isEditingHeader; + BOOL _criteriaWillBeUsedForMailboxes; + BOOL _includeNoJunkCriterion; + id _objectWithCriteria; + NSString *_previousTitle; + NSWindow *_parentWindow; +} + ++ (id)packageUserCriteria:(id)arg1 withNoJunk:(BOOL)arg2 noTrash:(BOOL)arg3 noSent:(BOOL)arg4 allUserCriteriaMustBeSatisfied:(BOOL)arg5; ++ (void)unpackUserCriteria:(id *)arg1 noJunkCriterion:(id *)arg2 noTrashCriterion:(id *)arg3 noSentCriterion:(id *)arg4 allCriteriaMustBeSatisfield:(char *)arg5 fromCriteria:(id)arg6; ++ (id)headerList; +@property BOOL criteriaWillBeUsedForMailboxes; +- (void)dealloc; +- (void)awakeFromNib; +- (id)newCriterion; +- (void)putCriteriaFromUIIntoObject:(id)arg1; +- (void)sentMessagesMailboxCriterionAdded; +- (void)trashMailboxCriterionAdded; +- (void)configureCriteriaForObject:(id)arg1; +- (void)addCriterion:(id)arg1; +- (id)_createNewCriterionViewForSender:(id)arg1; +- (void)removeCriterion:(id)arg1; +- (void)removeView:(id)arg1 fromViews:(id)arg2 inContainer:(id)arg3; +- (void)userHasSelectedSenderInAddressBook:(char *)arg1 senderInAddressHistory:(char *)arg2; +- (void)editHeaderList; +- (void)_configureAllCriterionMenus; +- (void)resetHeaderListForObjectsWithCriteria:(id)arg1; +- (void)_endEditingHeader; +- (void)headerListOkClicked:(id)arg1; +- (void)headerListCancelClicked:(id)arg1; +- (void)_updateHeaderListUI; +- (void)_headerTableBeganEditing:(id)arg1; +- (void)_headerTableEndedEditing:(id)arg1; +- (void)addHeaderClicked:(id)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)_removeInvalidHeaders; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tileViews:(id)arg1 inContainer:(id)arg2 withChangeAtRow:(long long)arg3 removeIsEnabled:(BOOL)arg4; +- (void)connectNextKeyViewChain; +@property NSWindow *parentWindow; // @synthesize parentWindow=_parentWindow; +@property(retain) NSString *previousTitle; // @synthesize previousTitle=_previousTitle; + +@end + diff --git a/MailHeaders/Lion/Mail/CriterionView.h b/MailHeaders/Lion/Mail/CriterionView.h new file mode 100644 index 00000000..94b286ce --- /dev/null +++ b/MailHeaders/Lion/Mail/CriterionView.h @@ -0,0 +1,72 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ColorBackgroundView.h" + +@class CriteriaUIHelper, MailboxUid, NSButton, NSDatePicker, NSMenu, NSNumberFormatter, NSPopUpButton, NSString, NSTextField, NSView; + +@interface CriterionView : ColorBackgroundView +{ + CriteriaUIHelper *_owner; + NSButton *_removeButton; + NSButton *_addButton; + NSView *_headerCriteriaView; + NSView *_simpleCriteriaView; + NSView *_accountOrGroupView; + NSView *_mailboxesView; + NSView *_daysOldDatesView; + NSView *_simpleDatesView; + NSView *_daysAgoDatesView; + NSView *_inThelastDaysDatesView; + NSView *_daysAgoRangeDatesView; + NSView *_beforeAfterDatesView; + NSView *_dateRangeDatesView; + NSView *_messageTypeView; + NSView *_flaggedStatusView; + NSNumberFormatter *_daysFormatter; + NSNumberFormatter *_daysOldFormatter; + NSView *_currentView; + NSPopUpButton *_criterionPopUp; + NSPopUpButton *_qualifierPopUp; + NSTextField *_expressionStringField; + NSTextField *_expressionNumberField; + NSTextField *_expressionOtherNumberField; + NSDatePicker *_dateFieldPicker; + NSDatePicker *_otherDateFieldPicker; + NSPopUpButton *_unitsPopUp; + NSMenu *_criterionMenu; + NSMenu *_dateQualifierMenu; + BOOL _isSmartMailboxCriterion; + NSString *_expressionGuess; + MailboxUid *_mailboxBeingEdited; + int _criterionType; + int _criterionTypeForOtherArea; +} + +- (void)dealloc; +@property int criterionType; +- (void)awakeFromNib; +- (void)setIsSmartMailboxCriterion:(BOOL)arg1 mailbox:(id)arg2; +- (id)_menuUsingInfo:(struct menuItemInfo *)arg1 length:(long long)arg2; +- (void)configureForCriterion:(id)arg1; +- (id)criterion; +- (void)_setEnglishStringsForPopUpMenuHeaderItems:(id)arg1; +- (void)_configureViewForQualifierTag:(long long)arg1 criterion:(id)arg2; +- (void)_insertBestGuessForExpressionField; +- (id)_subcriteriaForRelativeDatesFrom:(long long)arg1 to:(long long)arg2 units:(int)arg3 criterionType:(int)arg4; +- (id)_timeSince1970StringFromDatePicker:(id)arg1 atEndOfDay:(BOOL)arg2; +- (void)putHeaderCriteriaInPopUpMenu; +- (BOOL)_populateQualifierPopup; +- (void)qualifierPopupChanged:(id)arg1; +- (void)_criterionPopupWillPopup:(id)arg1; +- (void)criterionPopupChanged:(id)arg1; +- (void)makeRemoveButtonEnabled:(BOOL)arg1; +- (void)_setExpressionGuess:(id)arg1; +- (void)_mailboxCriterionPopUpChangedSelection:(id)arg1; +- (void)ownerSearchAreaChanged:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/DDDetectorManagerDelegate-Protocol.h b/MailHeaders/Lion/Mail/DDDetectorManagerDelegate-Protocol.h new file mode 100644 index 00000000..91cafede --- /dev/null +++ b/MailHeaders/Lion/Mail/DDDetectorManagerDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol DDDetectorManagerDelegate + +@optional +- (id)scrollViewForWebView:(id)arg1; +- (void)detectorManager:(id)arg1 didScanTextWithIdentifier:(id)arg2 results:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/DOMCSSStylePropertyAnimation.h b/MailHeaders/Lion/Mail/DOMCSSStylePropertyAnimation.h new file mode 100644 index 00000000..14f39c72 --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMCSSStylePropertyAnimation.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAnimation.h" + +@class DOMCSSStyleDeclaration, NSString; + +@interface DOMCSSStylePropertyAnimation : NSAnimation +{ + NSString *_property; + float _startValue; + float _endValue; + DOMCSSStyleDeclaration *_style; +} + +- (id)initWithDuration:(double)arg1 animationCurve:(unsigned long long)arg2 element:(id)arg3 property:(id)arg4; +- (void)dealloc; +@property(readonly) BOOL isIncreasing; +- (void)reset; +- (void)reverse; +- (void)setCurrentProgress:(float)arg1; +@property(retain) DOMCSSStyleDeclaration *style; // @synthesize style=_style; +@property float startValue; // @synthesize startValue=_startValue; +@property float endValue; // @synthesize endValue=_endValue; +@property(retain) NSString *property; // @synthesize property=_property; + +@end + diff --git a/MailHeaders/Lion/Mail/DOMCSSValue-MailExtras.h b/MailHeaders/Lion/Mail/DOMCSSValue-MailExtras.h new file mode 100644 index 00000000..394f75c2 --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMCSSValue-MailExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMCSSValue.h" + +@interface DOMCSSValue (MailExtras) +- (BOOL)matchesFontFamily:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/DOMCharacterData-MailExtras.h b/MailHeaders/Lion/Mail/DOMCharacterData-MailExtras.h new file mode 100644 index 00000000..8045075d --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMCharacterData-MailExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMCharacterData.h" + +@interface DOMCharacterData (MailExtras) +- (id)debugDescription; +@end + diff --git a/MailHeaders/Lion/Mail/DOMDocument-MailExtras.h b/MailHeaders/Lion/Mail/DOMDocument-MailExtras.h new file mode 100644 index 00000000..8e89f7c5 --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMDocument-MailExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMDocument.h" + +@interface DOMDocument (MailExtras) +- (id)createBlockPlaceholder; +@end + diff --git a/MailHeaders/Lion/Mail/DOMDocument-RedundantTextAdditions.h b/MailHeaders/Lion/Mail/DOMDocument-RedundantTextAdditions.h new file mode 100644 index 00000000..3a34eae4 --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMDocument-RedundantTextAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMDocument.h" + +@interface DOMDocument (RedundantTextAdditions) +- (id)mv_createBlankLineElement; +@end + diff --git a/MailHeaders/Lion/Mail/DOMDocumentFragment-MailExtras.h b/MailHeaders/Lion/Mail/DOMDocumentFragment-MailExtras.h new file mode 100644 index 00000000..2cfc7895 --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMDocumentFragment-MailExtras.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMDocumentFragment.h" + +@interface DOMDocumentFragment (MailExtras) +@property(readonly) DOMDocumentFragment *unwrappedFragment; +- (void)insertTextAtBeginning:(id)arg1 atEnd:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/DOMElement-MailExtras.h b/MailHeaders/Lion/Mail/DOMElement-MailExtras.h new file mode 100644 index 00000000..c0813bac --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMElement-MailExtras.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMElement.h" + +@interface DOMElement (MailExtras) +- (BOOL)isBlockLevelElement; +- (BOOL)hasMarginsOfZero; +- (void)scrollToBottom; +@end + diff --git a/MailHeaders/Lion/Mail/DOMElement-MailHTMLAttachments.h b/MailHeaders/Lion/Mail/DOMElement-MailHTMLAttachments.h new file mode 100644 index 00000000..8856ddb7 --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMElement-MailHTMLAttachments.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMElement.h" + +@interface DOMElement (MailHTMLAttachments) +- (BOOL)getNewElement:(id *)arg1 usingAttachments:(id)arg2 excludeRemoteImages:(BOOL)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/DOMEventListener-Protocol.h b/MailHeaders/Lion/Mail/DOMEventListener-Protocol.h new file mode 100644 index 00000000..d7683e1f --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMEventListener-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol DOMEventListener +- (void)handleEvent:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/DOMHTMLDocument-MailExtras.h b/MailHeaders/Lion/Mail/DOMHTMLDocument-MailExtras.h new file mode 100644 index 00000000..eb072604 --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMHTMLDocument-MailExtras.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMHTMLDocument.h" + +@interface DOMHTMLDocument (MailExtras) ++ (id)listElements; +@property(readonly) BOOL containsSelectionMarkers; +- (id)createDocumentFragmentWithMarkupString:(id)arg1; +- (id)createFragmentForStringLosingBR:(id)arg1; +- (id)createMessageQuoteElement; +- (id)createNonemptyDivElementWithPlainStyle; +- (id)createFragmentForWebArchive:(id)arg1; +- (id)createFragmentForWebArchive:(id)arg1 baseURL:(id)arg2; +- (id)createFragmentForWebArchive:(id)arg1 baseURL:(id)arg2 bodyAsDiv:(BOOL)arg3; +- (id)createSpanElementWithTabs:(long long)arg1; +- (id)createFragmentForURL:(id)arg1 text:(id)arg2; +- (id)head; +- (id)generatorMeta; +- (id)backgroundImageURLs; +- (BOOL)convertStationeryBackgroundImageURLs; +- (id)createElement:(id)arg1 class:(id)arg2 id:(id)arg3 editable:(id)arg4; +- (struct __CFDictionary *)stringsAndTextNodes; +@end + diff --git a/MailHeaders/Lion/Mail/DOMHTMLDocument-ToDoExtras.h b/MailHeaders/Lion/Mail/DOMHTMLDocument-ToDoExtras.h new file mode 100644 index 00000000..b6194aef --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMHTMLDocument-ToDoExtras.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMHTMLDocument.h" + +@interface DOMHTMLDocument (ToDoExtras) +- (void)thawFrozenToDoElement:(id)arg1; +- (id)createToDoElement:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/DOMHTMLElement-MailExtras.h b/MailHeaders/Lion/Mail/DOMHTMLElement-MailExtras.h new file mode 100644 index 00000000..128ab65c --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMHTMLElement-MailExtras.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMHTMLElement.h" + +@interface DOMHTMLElement (MailExtras) ++ (BOOL)isRichTextStyleNotCheckingFont:(id)arg1; ++ (BOOL)isRichTextStyleCheckingOnlyFont:(id)arg1; ++ (BOOL)isRichTextStyle:(id)arg1; +- (BOOL)isRichTextElementType; +- (BOOL)isRichTextElementForMessageFont:(id)arg1; +- (void)recursivelyRemoveMailAttributes:(BOOL)arg1 convertObjectsToImages:(BOOL)arg2 convertEditableElements:(BOOL)arg3 removeDefaultColorStyle:(BOOL)arg4; +- (void)restoreEditableElementsEdited:(id *)arg1 unedited:(id *)arg2; +- (void)attachment:(id *)arg1 url:(id *)arg2 fromDocument:(id)arg3; +- (BOOL)hasClassName:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/DOMHTMLElement-MailQuoteLevel.h b/MailHeaders/Lion/Mail/DOMHTMLElement-MailQuoteLevel.h new file mode 100644 index 00000000..9f5f3d1a --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMHTMLElement-MailQuoteLevel.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMHTMLElement.h" + +@interface DOMHTMLElement (MailQuoteLevel) +- (long long)quoteLevelDelta; +@end + diff --git a/MailHeaders/Lion/Mail/DOMHTMLImageElement-MailHTMLAttachments.h b/MailHeaders/Lion/Mail/DOMHTMLImageElement-MailHTMLAttachments.h new file mode 100644 index 00000000..552f4d20 --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMHTMLImageElement-MailHTMLAttachments.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMHTMLImageElement.h" + +@interface DOMHTMLImageElement (MailHTMLAttachments) +- (BOOL)getNewElement:(id *)arg1 usingAttachments:(id)arg2 excludeRemoteImages:(BOOL)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/DOMHTMLObjectElement-AttachmentLocator.h b/MailHeaders/Lion/Mail/DOMHTMLObjectElement-AttachmentLocator.h new file mode 100644 index 00000000..99a0b8fc --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMHTMLObjectElement-AttachmentLocator.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMHTMLObjectElement.h" + +@interface DOMHTMLObjectElement (AttachmentLocator) +- (void)attachment:(id *)arg1 url:(id *)arg2 fromDocument:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/DOMNode-MailExtras.h b/MailHeaders/Lion/Mail/DOMNode-MailExtras.h new file mode 100644 index 00000000..e49be60b --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMNode-MailExtras.h @@ -0,0 +1,88 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMNode.h" + +@class DOMHTMLElement; + +@interface DOMNode (MailExtras) +- (id)XPathRelativeTo:(id)arg1; +- (void)_removeStrayLinefeedsAtEnd; +- (void)_removeStrayLinefeedsAtBeginning; +- (void)removeStrayLinefeeds; +- (BOOL)isTemporaryCursorMarker; +@property(readonly) BOOL _mail_isAttached; +- (id)nextSiblingOrAunt; +@property(readonly) DOMNode *nextNode; +@property(readonly) DOMNode *previousNode; +- (id)_mail_traverseNextNodeStayingWithin:(id)arg1; +- (id)_mail_traverseNextSiblingStayingWithin:(id)arg1; +- (id)_mail_traversePreviousNode; +- (id)stringValue; +- (id)appendBlockPlaceholder; +- (BOOL)isBlockLevelElement; +- (id)blockNodeAncestor; +- (BOOL)isNodeThatAffectsTyping; +@property(readonly) BOOL isBody; +@property(readonly) BOOL isListElement; +- (BOOL)hasNoContents; +- (BOOL)_hasNoSignificantContentsOrWhitespace:(BOOL)arg1 orAttachments:(BOOL)arg2; +- (BOOL)hasNoSignificantContents; +- (BOOL)hasNoSignificantContentsOrWhitespace; +- (BOOL)hasNoSignificantContentsOtherThanAttachments; +- (long long)quoteLevel; +- (long long)quoteLevelDelta; +- (id)containingBlockQuote; +- (id)highestContainingBlockQuote; +- (id)firstDescendantBlockQuote; +- (BOOL)isDescendantOfNode:(id)arg1; +- (id)commonAncestorWithNode:(id)arg1; +- (unsigned int)offsetOfChild:(id)arg1; +- (BOOL)isAtBeginningOfContainerNode:(id)arg1; +- (BOOL)isAtEndOfContainerNode:(id)arg1; +- (id)nestedListElement; +- (id)descendantNamed:(id)arg1; +- (id)firstContainingNodeWithNameInArray:(id)arg1; +- (id)topmostContainingNodeWithNameInArray:(id)arg1; +- (id)containingListItem; +- (id)precedingListItem; +- (long long)outlineNestingLevel; +- (id)topmostEditableAncestor; +- (BOOL)isInEditableRegion; +- (BOOL)containsOnlySelectionMarkers; +@property(readonly) DOMHTMLElement *containingListElement; +- (BOOL)containsRichTextForMessageFont:(id)arg1; +- (BOOL)_isAppleStringAttachmentSpan; +- (void)recursivelyRemoveMailAttributes:(BOOL)arg1 convertObjectsToImages:(BOOL)arg2 convertEditableElements:(BOOL)arg3 removeDefaultColorStyle:(BOOL)arg4; +- (void)restoreEditableElementsEdited:(id *)arg1 unedited:(id *)arg2; +- (void)recursivelyRemoveMailAttributes; +- (void)recursivelyFixParagraphs; +- (void)fixParagraphsAndQuotesFromMicrosoftNodesToRemove:(id)arg1; +- (void)fixParagraphsAndQuotesFromMicrosoft; +- (id)attributedStringWithDocument:(id)arg1; +- (BOOL)convertInternalImagesToObjects; +- (id)stationeryDynamicElementNodes; +- (void)stationeryDynamicElementNodes:(id *)arg1; +- (id)tilingElements; +- (id)tilingDiv; +- (id)editableElements; +- (void)editableElements:(id *)arg1; +- (id)lastEditableElement; +- (id)descendantsWithClassName:(id)arg1; +- (void)descendants:(id *)arg1 withClassName:(id)arg2; +- (id)objectElementChildNodes; +- (void)objectElementChildNodes:(id *)arg1; +- (id)stationeryAttachmentPlaceholderNodes; +- (void)stationeryAttachmentPlaceholderNodes:(id *)arg1; +- (id)findElementWithTag:(id)arg1 andClass:(id)arg2; +- (id)findElementWithTag:(id)arg1 className:(id)arg2 andIdName:(id)arg3; +- (void)addInlineBackgroundImageURLToArray:(id)arg1; +- (BOOL)convertInlineStationeryBackgroundImageURL; +- (void)convertBackgroundImageURLsUsingDictionary:(id)arg1; +- (void)insertAsSiblingBeforeNode:(id)arg1; +- (void)insertAsSiblingAfterNode:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/DOMNode-MailHTMLAttachments.h b/MailHeaders/Lion/Mail/DOMNode-MailHTMLAttachments.h new file mode 100644 index 00000000..6227eb66 --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMNode-MailHTMLAttachments.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMNode.h" + +@interface DOMNode (MailHTMLAttachments) +- (void)convertImagesToObjectsForAttachments:(id)arg1 excludeRemoteImages:(BOOL)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/DOMNode-RedundantTextAdditions.h b/MailHeaders/Lion/Mail/DOMNode-RedundantTextAdditions.h new file mode 100644 index 00000000..7cda3329 --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMNode-RedundantTextAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMNode.h" + +@interface DOMNode (RedundantTextAdditions) +- (BOOL)mv_containsSingleLineOfWhitespace; +- (BOOL)mv_isSignificantContentNode; +- (unsigned long long)mv_numberOfParentBlockquotes; +@end + diff --git a/MailHeaders/Lion/Mail/DOMNode-ToDoExtras.h b/MailHeaders/Lion/Mail/DOMNode-ToDoExtras.h new file mode 100644 index 00000000..8b9827df --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMNode-ToDoExtras.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMNode.h" + +@class NSArray; + +@interface DOMNode (ToDoExtras) +- (id)_elementsWithIDPrefix:(id)arg1 className:(id)arg2; +@property(readonly) NSArray *frozenToDoElements; +@end + diff --git a/MailHeaders/Lion/Mail/DOMRange-MailExtras.h b/MailHeaders/Lion/Mail/DOMRange-MailExtras.h new file mode 100644 index 00000000..04becbb8 --- /dev/null +++ b/MailHeaders/Lion/Mail/DOMRange-MailExtras.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMRange.h" + +@interface DOMRange (MailExtras) +- (id)firstNode; +- (id)lastNode; +- (BOOL)isEquivalentToCollapsedRange; +- (BOOL)includeTemporarySelectionMarkers; +- (void)hoistRange; +- (id)stringValue; +- (id)attributedStringWithDocument:(id)arg1; +- (void)getBlockBoundaryParent:(id *)arg1 nextSibling:(id *)arg2 atStart:(BOOL)arg3; +- (void)fixIfEndpointIsAtBeginningOfLine; +- (void)fixIfStartIsAtEndOfContainerNode; +- (void)balanceContainers; +- (id)rangeOfContainingBlock; +- (BOOL)containsRichTextForMessageFont:(id)arg1; +- (id)attachmentsByURLFromDocument:(id)arg1; +- (void)attachments:(id *)arg1 urls:(id *)arg2 fromDocument:(id)arg3; +- (id)attachmentsFromDocument:(id)arg1; +- (id)stringRepresentation; +- (BOOL)isEqualToRange:(id)arg1; +- (BOOL)containsRange:(id)arg1; +- (void)setWithStringRepresentation:(id)arg1; +- (BOOL)isEditable; +- (BOOL)containsListElements; +- (BOOL)runSelectorOnContents:(SEL)arg1; +- (BOOL)hasNoSignificantContentsOrWhitespace; +- (BOOL)hasNoSignificantContentsOtherThanAttachments; +- (BOOL)hasNoSignificantContents; +@end + diff --git a/MailHeaders/Lion/Mail/DateCell.h b/MailHeaders/Lion/Mail/DateCell.h new file mode 100644 index 00000000..93a561c9 --- /dev/null +++ b/MailHeaders/Lion/Mail/DateCell.h @@ -0,0 +1,53 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface DateCell : NSTextFieldCell +{ + int _dateDetailLevel; + double _lastWidth; + _Bool _lastStringWasRTL; + BOOL _forceTextColor; +} + ++ (void)initialize; ++ (void)resetDateFormats; +- (id)initTextCell:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (void)awakeFromNib; +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)setFont:(id)arg1; +- (void)setTextColor:(id)arg1; +- (void)setAlignment:(unsigned long long)arg1; +- (void)setNeedsDisplay:(BOOL)arg1; +- (BOOL)underlinesText; +- (void)setUnderlinesText:(BOOL)arg1; +- (void)updateLocale; +- (void)setTimeIntervalSince1970:(double)arg1; +- (void)setObjectValue:(id)arg1; +- (double)minimumWidth; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)stringValue; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeValue:(id)arg1 forParameter:(id)arg2; +@property(nonatomic) BOOL forceTextColor; // @synthesize forceTextColor=_forceTextColor; +- (void)_dateCellCommonInit; +- (void)_initDateFormatter; +- (void)setDrawingAttributes:(id)arg1; +- (id)drawingAttributes; +- (void)setLastFont:(id)arg1; +- (id)lastFont; +- (double)_widthOfStringWithTimeFormat:(id)arg1 withDatePrefix:(id)arg2; +- (double)_widthOfLongestDateStringWithLevel:(int)arg1 format:(id)arg2; +- (void)_saveWidthsToDefaults; +- (BOOL)_readWidthsFromDefaults; +- (void)_updateDateColumnDetailLevelWidths; +- (void)_updateDateColumnDetailLevels; + +@end + diff --git a/MailHeaders/Lion/Mail/DateTextField.h b/MailHeaders/Lion/Mail/DateTextField.h new file mode 100644 index 00000000..71fda9c3 --- /dev/null +++ b/MailHeaders/Lion/Mail/DateTextField.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextField.h" + +@interface DateTextField : NSTextField +{ +} + +- (void)_updateWithCustomCell; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; +- (void)mouseDown:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/DefaultApplicationPopUpButton.h b/MailHeaders/Lion/Mail/DefaultApplicationPopUpButton.h new file mode 100644 index 00000000..c1456eb0 --- /dev/null +++ b/MailHeaders/Lion/Mail/DefaultApplicationPopUpButton.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@class NSArray, NSURL; + +@interface DefaultApplicationPopUpButton : NSPopUpButton +{ + NSURL *_appURL; + long long _index; + NSArray *_schemes; +} + +- (void)dealloc; +- (id)_mainScheme; +- (void)_setHandler:(id)arg1 forScheme:(id)arg2; +- (id)_imageForURL:(id)arg1; +- (long long)_addItemToPopup:(id)arg1; +- (void)_populateSchemeHandlerPopupWithURL:(id)arg1; +- (id)_copyDefaultURLForScheme:(id)arg1; +- (void)_selectDefaultMailClientAtIndex:(long long)arg1; +- (void)_selectItemInPopup:(id)arg1; +- (void)_setNewApplication:(id)arg1; +- (void)_selectNewAppSelected:(id)arg1; +- (void)configurePopUpForURLSchemes:(id)arg1 usingExampleURLString:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/DefaultWebAppPopUpController.h b/MailHeaders/Lion/Mail/DefaultWebAppPopUpController.h new file mode 100644 index 00000000..3313a48d --- /dev/null +++ b/MailHeaders/Lion/Mail/DefaultWebAppPopUpController.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSDictionary, NSOpenPanel, NSPopUpButton, NSURL; + +@interface DefaultWebAppPopUpController : NSObject +{ + NSPopUpButton *_defaultWebApp; + NSOpenPanel *_selectAppPanel; + NSDictionary *_webApp; + long long _webIndex; + NSArray *_schemes; + NSArray *_fileExtensions; + unsigned int _OSType; + NSURL *_sampleURL; +} + +- (struct __CFURL *)urlForEntry:(id)arg1; +- (long long)indexOfItemInPopUp:(id)arg1 closestToValue:(id)arg2; +- (void)setAppPopUp:(id)arg1 toValue:(id)arg2; +- (BOOL)populateSchemeHandlerPopupWithURL:(id)arg1 forPopup:(id)arg2; +- (void)populateWebPopUpWithDefault; +- (id)dictionaryForScheme:(id)arg1; +- (void)setHandler:(id)arg1 forScheme:(id)arg2; +- (void)setDefaultLSWeakBindingsForApp:(id)arg1; +- (void)setNewWebApplication; +- (void)webApplicationSelected:(id)arg1; +- (void)populatePopUp; +- (void)showDefaultInPopUp; +- (id)initWithPopUp:(id)arg1 schemes:(id)arg2 fileExtensions:(id)arg3 OSType:(unsigned int)arg4 sampleURL:(id)arg5; +- (void)dealloc; +- (void)menuNeedsUpdate:(id)arg1; +- (BOOL)menuHasKeyEquivalent:(id)arg1 forEvent:(id)arg2 target:(id *)arg3 action:(SEL *)arg4; + +@end + diff --git a/MailHeaders/Lion/Mail/DeleteMessagesAutoTest.h b/MailHeaders/Lion/Mail/DeleteMessagesAutoTest.h new file mode 100644 index 00000000..2c0a2884 --- /dev/null +++ b/MailHeaders/Lion/Mail/DeleteMessagesAutoTest.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailAutoTest.h" + +@class NSWindow; + +@interface DeleteMessagesAutoTest : MailAutoTest +{ + NSWindow *_viewerWindow; +} + +- (void)_emptyAndCompactMailbox:(id)arg1 inAccount:(id)arg2; +- (void)setUp; +- (void)performTest; +- (void)tearDown; + +@end + diff --git a/MailHeaders/Lion/Mail/DeletingTableView.h b/MailHeaders/Lion/Mail/DeletingTableView.h new file mode 100644 index 00000000..c09e241f --- /dev/null +++ b/MailHeaders/Lion/Mail/DeletingTableView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableView.h" + +@interface DeletingTableView : NSTableView +{ +} + +- (void)keyDown:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/DeliveryAccount-MailUIExtras.h b/MailHeaders/Lion/Mail/DeliveryAccount-MailUIExtras.h new file mode 100644 index 00000000..ad3f59b7 --- /dev/null +++ b/MailHeaders/Lion/Mail/DeliveryAccount-MailUIExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DeliveryAccount.h" + +@interface DeliveryAccount (MailUIExtras) +- (id)remoteMailAccountsEmployedByString; +@end + diff --git a/MailHeaders/Lion/Mail/DeliveryAccountArrayController.h b/MailHeaders/Lion/Mail/DeliveryAccountArrayController.h new file mode 100644 index 00000000..1ed7c358 --- /dev/null +++ b/MailHeaders/Lion/Mail/DeliveryAccountArrayController.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSArrayController.h" + +@interface DeliveryAccountArrayController : NSArrayController +{ +} + +- (id)newObject; + +@end + diff --git a/MailHeaders/Lion/Mail/DeliveryFailure.h b/MailHeaders/Lion/Mail/DeliveryFailure.h new file mode 100644 index 00000000..1653b2b0 --- /dev/null +++ b/MailHeaders/Lion/Mail/DeliveryFailure.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "AccountStatusDataSourceDelegate-Protocol.h" + +@class AccountStatusDataSource, MFError, MailDocumentEditor, NSButton, NSPanel, NSTableView, NSTextField, NSView; + +@interface DeliveryFailure : NSObject +{ + NSPanel *_panel; + NSTextField *_errorLabel; + NSTextField *_errorDescriptionLabel; + NSView *_contents; + NSTableView *_table; + NSButton *_tryLaterButton; + NSButton *_tryOtherButton; + AccountStatusDataSource *_deliveryASDS; + MailDocumentEditor *_editor; + MFError *_error; +} + +- (id)initWithDocumentEditor:(id)arg1; +- (id)init; +- (void)awakeFromNib; +- (void)dealloc; +- (void)editorWillClose; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)reportError:(id)arg1; +- (void)runChooseAlternateDeliveryAccountSheet; +- (void)sendLater:(id)arg1; +- (void)editMessage:(id)arg1; +- (void)tryOtherAccount:(id)arg1; +- (void)editServerList:(id)arg1; +- (id)_setDynamicDeliveryAccountForAccount:(id)arg1; +- (void)_selectedAccountDidChangeFrom:(id)arg1 to:(id)arg2; +- (void)_chooseAlternateDeliveryAccountSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_sheetDidClose:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_deliveryAccountsDidChange:(id)arg1; +- (void)_postDeliveryFailureHappened; +- (void)_tile; +- (void)_retile; + +@end + diff --git a/MailHeaders/Lion/Mail/DeliveryQueue.h b/MailHeaders/Lion/Mail/DeliveryQueue.h new file mode 100644 index 00000000..1d4187de --- /dev/null +++ b/MailHeaders/Lion/Mail/DeliveryQueue.h @@ -0,0 +1,58 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "InvocationQueue.h" + +#import "MVTerminationHandler-Protocol.h" + +@class ActivityMonitor, MessageStore, NSMutableDictionary, NSMutableSet; + +@interface DeliveryQueue : InvocationQueue +{ + double _beginDeliveryTime; + ActivityMonitor *_deliveryMonitor; + MessageStore *_outboxStore; + NSMutableDictionary *_errorResponses; + NSMutableDictionary *_alternateDeliveryAccounts; + NSMutableSet *_accountsOnHold; + BOOL _queueIsActive; + BOOL _isBackgroundProcessingEnabled; + BOOL _resetDeliveryQueueWhenDoneWithCurrentMessage; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedDeliveryQueue; +- (id)init; +- (void)dealloc; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)setBackgroundProcessingEnabled:(BOOL)arg1; +- (BOOL)isBackgroundProcessingEnabled; +- (void)_setDeliveryMonitor:(id)arg1; +- (void)_processDeliveryQueueStartingAtIndex:(unsigned long long)arg1; +- (void)_deliverQueuedMessages:(unsigned long long)arg1; +- (BOOL)_isMessageBeingEdited:(id)arg1; +- (int)appendMessageToQueue:(id)arg1 replacingOriginalMessage:(id)arg2; +- (void)resetStateAndReprocessQueue; +- (void)resetStateAndReprocessQueueIfNecessary; +- (void)_resetStateAndReprocessQueueIfNecessary; +@property(retain) MessageStore *outboxStore; +- (BOOL)_openOutboxStoreIfNeeded; +- (void)_outboxDidOpen:(id)arg1; +- (void)_closeOutboxStore; +- (int)_performDeliveryOfMessage:(id)arg1 accountUsed:(id *)arg2; +- (void)cancelDeliveryOfMessage:(id)arg1; +- (void)_networkConfigurationChanged:(id)arg1; +- (void)_deliveryAccountsDidChange:(id)arg1; +- (void)setAlternateDeliveryAccount:(id)arg1 forAccount:(id)arg2; +- (void)unfreezeDeliveryAccount:(id)arg1 reprocessQueue:(BOOL)arg2; +- (id)alternateDeliveryAccountForAccount:(id)arg1; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/DockCountController.h b/MailHeaders/Lion/Mail/DockCountController.h new file mode 100644 index 00000000..679eec1d --- /dev/null +++ b/MailHeaders/Lion/Mail/DockCountController.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MailboxUid; + +@interface DockCountController : NSObject +{ + MailboxUid *_mailBadgeMailbox; + int _mailBadgeScope; +} + ++ (id)sharedInstance; +- (void)dealloc; +- (id)init; +- (void)clearCountAndStopUpdating; +- (void)_setDockBadgeForCount:(id)arg1; +- (void)_mailboxWillBeInvalidated:(id)arg1; +- (void)_setMailBadgeMailbox:(id)arg1; +- (id)mailBadgeMailbox; +- (void)_updateUnreadCount; +- (void)unreadCountChanged:(id)arg1; +- (int)mailBadgeScope; +- (void)setMailBadgeScope:(int)arg1 mailbox:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/DocumentContentState.h b/MailHeaders/Lion/Mail/DocumentContentState.h new file mode 100644 index 00000000..d0b8e174 --- /dev/null +++ b/MailHeaders/Lion/Mail/DocumentContentState.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class DOMDocument, NSMutableArray, NSMutableDictionary; + +@interface DocumentContentState : NSObject +{ + DOMDocument *_document; + NSMutableDictionary *_nodeTags; + NSMutableArray *_debugHighlightingWrappers; +} + ++ (void)setHighlightRedundantContentSetting:(BOOL)arg1; +- (id)initWithDOMDocument:(id)arg1; +- (void)dealloc; +- (unsigned long long)_nodeClassificationForBackendClassString:(id)arg1; +- (void)_removeBackendStakes; +- (void)_setClassification:(unsigned long long)arg1 forNode:(id)arg2; +- (unsigned long long)classificationForNode:(id)arg1; +- (id)_debugColorForNodeClassification:(unsigned long long)arg1; +- (void)_updateDebugHighlighting; +@property(readonly, nonatomic) DOMDocument *document; // @synthesize document=_document; + +@end + diff --git a/MailHeaders/Lion/Mail/DocumentEditor.h b/MailHeaders/Lion/Mail/DocumentEditor.h new file mode 100644 index 00000000..8a731284 --- /dev/null +++ b/MailHeaders/Lion/Mail/DocumentEditor.h @@ -0,0 +1,219 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MVTerminationHandler-Protocol.h" +#import "MailFullScreenWindowDelegate-Protocol.h" + +@class ComposeBackEnd, ComposeHeaderView, EditingMessageWebView, EditingWebMessageController, HeadersEditor, LoadingOverlay, MFUUID, MailInspectorBarItemController, MessageViewer, NSDictionary, NSInspectorBar, NSMutableDictionary, NSOperation, NSOperationQueue, NSToolbar, NSWindow, WebViewEditor; + +@interface DocumentEditor : NSObject +{ + WebViewEditor *_webViewEditor; + HeadersEditor *_headersEditor; + NSWindow *_window; + EditingMessageWebView *_composeWebView; + ComposeHeaderView *_composeHeaderView; + ComposeBackEnd *_backEnd; + NSToolbar *_toolbar; + NSMutableDictionary *_toolbarItems; + NSInspectorBar *_inspectorBar; + MailInspectorBarItemController *_inspectorBarItemController; + EditingWebMessageController *_webMessageController; + LoadingOverlay *_loadingOverlay; + NSDictionary *_settings; + struct { + unsigned int userSavedMessage:1; + unsigned int userWantsToCloseWindow:1; + unsigned int userKnowsSaveFailed:1; + unsigned int registeredForNotifications:1; + unsigned int alwaysSave:1; + unsigned int userCanApplyStationery:1; + unsigned int autoShowEditor:1; + unsigned int isLoaded:1; + unsigned int isAutoSaving:1; + unsigned int shouldSaveAfterLoading:1; + } _flags; + int _messageType; + struct CGPoint _originalCascadePoint; + NSMutableDictionary *_bodiesByAttachmentURL; + NSOperationQueue *_operationQueue; + NSOperation *_finishLoadingEditorOperation; + id _loadDelegate; + MessageViewer *_possibleFullScreenViewerParent; + BOOL _inspectorBarDisplayed; + BOOL _shouldSaveWhenClosing; + int _persistentID; + int _previousPersistentID; +} + ++ (void)initialize; ++ (id)autoSaveTimer; ++ (void)setAutosaveTimer:(id)arg1; ++ (id)_documentEditors; ++ (id)documentEditors; ++ (id)typedDocumentEditors; ++ (void)registerDocumentEditor:(id)arg1; ++ (void)unregisterDocumentEditor:(id)arg1; ++ (BOOL)documentType; ++ (id)documentWebPreferencesIdentifierForRichText:(BOOL)arg1; ++ (id)existingEditorForMessage:(id)arg1 editorClass:(Class)arg2; ++ (id)editorsForDocumentID:(id)arg1 editorClass:(Class)arg2; ++ (id)existingEditorForMessage:(id)arg1; ++ (id)keyPathsForValuesAffectingDocumentID; ++ (void)saveDefaults; ++ (void)restoreFromDefaults; ++ (void)showEditorWithSavedState:(id)arg1; ++ (void)restoreDraftMessage:(id)arg1 withSavedState:(id)arg2; ++ (void)setNeedsAutosave; ++ (void)_autoSaveTimerFired; ++ (void)retirePendingTALRestorations:(id)arg1; ++ (void)restoreWindowWithIdentifier:(id)arg1 state:(id)arg2 completionHandler:(id)arg3; +@property(readonly) MFUUID *documentID; +- (BOOL)isEditingDocumentID:(id)arg1; +- (id)description; +- (id)initWithType:(int)arg1 settings:(id)arg2 backEnd:(id)arg3; +- (id)init; +@property(readonly) BOOL isLoaded; +- (void)setLoaded:(BOOL)arg1; +@property(readonly) BOOL isAutoSaving; +- (BOOL)load; +- (BOOL)shouldRecordTypeAheadEvents; +- (id)loadInterfaceOperation; +- (id)showInterfaceOperation; +- (id)prepareContentOperation; +- (id)loadInitialDocumentOperation; +- (void)loadInitialDocumentIntoWebView:(id)arg1; +- (id)finishLoadingEditorOperation; +@property(readonly) BOOL isFinishedLoading; +- (void)performOperationAfterLoad:(id)arg1; +- (void)finishLoadingEditor; +- (Class)backEndClass; +- (void)release; +- (void)dealloc; +- (BOOL)loadEditorNib; +- (id)operationQueue; +- (void)setOperationQueue:(id)arg1; +- (long long)editorSharedNib; +- (void)show; +- (void)setHeaders:(id)arg1; +- (id)_inspectorBarVisibilityKey; +- (BOOL)shouldDisplayInspectorBar; +- (void)setShouldDisplayInspectorBar:(BOOL)arg1; +- (void)updateInspectorBar; +- (void)toggleComposeFormatInspectorBar:(id)arg1; +- (void)_willToggleComposeFormatInspectorBar; +- (void)_didToggleComposeFormatInspectorBar; +@property(retain) ComposeBackEnd *backEnd; +- (id)webViewEditor; +- (id)headersEditor; +- (id)webMessageDocument; +- (id)toolbar; +- (id)window; +@property BOOL autoShowEditor; +@property BOOL userCanApplyStationery; +@property(readonly) BOOL stationeryPaneIsVisible; +@property BOOL wantsToClose; +- (BOOL)isModal; +- (void)readDefaultsFromDictionary:(id)arg1; +- (void)writeDefaultsToDictionary:(id)arg1; +- (void)saveState; +- (void)_appendDefaultsToArray:(id)arg1; +- (id)_frameSaveName; +- (void)prepareContent; +- (void)backEndDidLoadInitialContent:(id)arg1; +- (id)parsedMessageFromSettings:(id)arg1; +- (void)continueLoadingInitialContent; +- (void)postDocumentEditorDidFinishSetup; +- (void)_registerForNotificationsIfNeeded; +- (void)_setupSpellingAndGrammarChecking; +- (id)windowWillReturnFieldEditor:(id)arg1 toObject:(id)arg2; +- (void)backEnd:(id)arg1 didBeginBackgroundLoadActivity:(id)arg2; +- (void)loadingOverlayDidEnd:(id)arg1 returnCode:(long long)arg2; +- (BOOL)autoSave; +@property(readonly) BOOL canSave; +@property(readonly) BOOL shouldSave; +- (void)_saveMessageDueToUserAction:(BOOL)arg1; +- (void)backEnd:(id)arg1 willCreateMessageWithHeaders:(id)arg2; +- (BOOL)backEnd:(id)arg1 shouldSaveMessage:(id)arg2; +- (void)setUserSavedMessage:(BOOL)arg1; +@property(readonly) BOOL hasChanges; +- (void)reportSaveFailure:(id)arg1; +- (void)backEnd:(id)arg1 didUpdateMessage:(id)arg2; +- (void)backEndDidSaveMessage:(id)arg1 result:(int)arg2; +- (void)_failedToSaveDraftSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)backEndDidChange:(id)arg1; +- (void)webViewDidChange:(id)arg1; +- (void)updateWindowContent; +- (void)updateUIAfterAppleScriptModification:(id)arg1; +- (void)composePrefsChanged; +- (id)mailAttachmentsAdded:(id)arg1; +- (id)mimeBodyForAttachmentWithURL:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)makeRichText:(id)arg1; +- (void)makePlainText:(id)arg1; +- (void)toggleRich:(id)arg1; +- (void)insertNumberedList:(id)arg1; +- (void)insertBulletedList:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)saveDocument:(id)arg1; +- (void)saveChangedDocument:(id)arg1; +- (void)saveMessageToDrafts:(id)arg1; +- (void)performClose:(id)arg1; +- (void)messageSizeDidChange:(id)arg1; +- (void)insertFile:(id)arg1; +- (void)removeAttachments:(id)arg1; +- (void)changeTextEncoding:(id)arg1; +- (void)showPrintPanel:(id)arg1; +- (void)searchIndex:(id)arg1; +- (void)changeSpellCheckingBehavior:(id)arg1; +- (void)toggleCheckGrammarWithSpelling:(id)arg1; +- (void)showAddressPanel:(id)arg1; +- (void)windowDidResize:(id)arg1; +- (void)windowDidMove:(id)arg1; +- (id)shouldSaveTitle; +- (id)shouldSaveDescription; +- (id)shouldSaveHelptag; +- (void)beginDocumentMove; +- (void)endDocumentMove; +- (BOOL)windowShouldClose:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)forceClose; +- (void)closeConfirmSheetDidEnd:(id)arg1 returnCode:(long long)arg2 forSave:(void *)arg3; +- (id)windowForMailFullScreen; +- (BOOL)mailFullScreenWindowShouldClose:(id)arg1; +- (void)restoreFrame; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (int)currentPersistentID; +- (int)previousPersistentID; +- (void)restoreEditorForTAL; +- (void)window:(id)arg1 willEncodeRestorableState:(id)arg2; +@property BOOL shouldSaveWhenClosing; // @synthesize shouldSaveWhenClosing=_shouldSaveWhenClosing; +@property(assign) MessageViewer *possibleFullScreenViewerParent; // @synthesize possibleFullScreenViewerParent=_possibleFullScreenViewerParent; +@property(readonly) EditingWebMessageController *webMessageController; // @synthesize webMessageController=_webMessageController; +@property(retain) NSDictionary *settings; // @synthesize settings=_settings; +@property(assign) id loadDelegate; // @synthesize loadDelegate=_loadDelegate; +- (BOOL)validateToolbarItem:(id)arg1; +- (void)setupToolbar; +- (void)setupFullScreenButtonWidths; +- (id)toolbarIdentifier; +- (void)_synchronizeChangeReplyItem:(id)arg1 messageType:(int)arg2; +- (void)toggleReplyType:(int)arg1; +- (void)updateSendButtonStateInToolbar; +- (void)toolbarWillAddItem:(id)arg1; +- (void)configureSegmentedItem:(id)arg1 withDictionary:(id)arg2 forSegment:(long long)arg3; +- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; +- (id)toolbarDefaultItemIdentifiers:(id)arg1; +- (id)toolbarAllowedItemIdentifiers:(id)arg1; +- (id)menuForListsItem; + +@end + diff --git a/MailHeaders/Lion/Mail/DocumentEditorManaging-Protocol.h b/MailHeaders/Lion/Mail/DocumentEditorManaging-Protocol.h new file mode 100644 index 00000000..5ed547f0 --- /dev/null +++ b/MailHeaders/Lion/Mail/DocumentEditorManaging-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol DocumentEditorManaging +- (void)registerDocumentEditor:(id)arg1; +- (void)unregisterDocumentEditor:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/DottedBlockquoteAbbreviator.h b/MailHeaders/Lion/Mail/DottedBlockquoteAbbreviator.h new file mode 100644 index 00000000..37a29087 --- /dev/null +++ b/MailHeaders/Lion/Mail/DottedBlockquoteAbbreviator.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "RedundantContentAbbreviator.h" + +@class DOMHTMLElement; + +@interface DottedBlockquoteAbbreviator : RedundantContentAbbreviator +{ + DOMHTMLElement *_abbreviatedContentWrapper; + DOMHTMLElement *_topPreviewContent; + DOMHTMLElement *_bottomPreviewContent; + DOMHTMLElement *_seeMoreText; +} + +- (void)dealloc; +- (double)_minimumHeightForCollapsion; +- (id)_lastVisibleElementInWrapper:(id)arg1; +- (id)_constructExpandTextElementContinuingStyleFromElement:(id)arg1; +- (void)_collapseBlankLinesUnderNode:(id)arg1; +- (BOOL)abbreviate; +- (BOOL)expand; +- (void)webViewResized; +- (void)webViewPageScaleChanged; +- (double)verticalFoldPosition; + +@end + diff --git a/MailHeaders/Lion/Mail/DraggingTextView.h b/MailHeaders/Lion/Mail/DraggingTextView.h new file mode 100644 index 00000000..961c7335 --- /dev/null +++ b/MailHeaders/Lion/Mail/DraggingTextView.h @@ -0,0 +1,56 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextView.h" + +#import "AtomicAddressTextView-Protocol.h" + +@interface DraggingTextView : NSTextView +{ +} + ++ (id)addressingFieldEditorForObject:(id)arg1; +- (void)dealloc; +- (id)delegate; +- (void)setDelegate:(id)arg1; +- (void)mouseDown:(id)arg1; +- (id)typingAttributes; +- (void)selectAll:(id)arg1; +- (void)setSelectedRange:(struct _NSRange)arg1; +- (void)setSelectedRange:(struct _NSRange)arg1 affinity:(unsigned long long)arg2 stillSelecting:(BOOL)arg3; +- (void)setSelectedRanges:(id)arg1; +- (void)setSelectedRanges:(id)arg1 affinity:(unsigned long long)arg2 stillSelecting:(BOOL)arg3; +- (struct _NSRange)selectionRangeForProposedRange:(struct _NSRange)arg1 granularity:(unsigned long long)arg2; +- (void)replaceCharactersInRange:(struct _NSRange)arg1 withString:(id)arg2; +- (void)layoutManager:(id)arg1 didCompleteLayoutForTextContainer:(id)arg2 atEnd:(BOOL)arg3; +- (void)delayedLayoutInvalidation:(id)arg1; +- (void)doCommandBySelector:(SEL)arg1; +- (void)delete:(id)arg1; +- (BOOL)prepareForDragOperation:(id)arg1; +- (BOOL)readSelectionFromPasteboard:(id)arg1 type:(id)arg2; +- (id)readablePasteboardTypes; +- (id)writablePasteboardTypes; +- (id)dragImageForSelectionWithEvent:(id)arg1 origin:(struct CGPoint *)arg2; +- (unsigned long long)draggingSourceOperationMaskForLocal:(BOOL)arg1; +- (BOOL)writeSelectionToPasteboard:(id)arg1 type:(id)arg2; +- (id)acceptableDragTypes; +- (BOOL)dragSelectionWithEvent:(id)arg1 offset:(struct CGSize)arg2 slideBack:(BOOL)arg3; +- (void)draggedImage:(id)arg1 endedAt:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (id)searchString; +- (struct _NSRange)selectedSearchRange; +- (void)showSearchResultsRange:(struct _NSRange)arg1; +- (id)menuForEvent:(id)arg1; +- (id)attachmentForPoint:(struct CGPoint)arg1; +- (id)attachmentForEvent:(id)arg1; +- (struct CGRect)cellFrameForAttachment:(id)arg1 atCharIndex:(long long)arg2; +- (void)concludeDragOperation:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (void)draggingExited:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/DraggingTextViewDelegate-Protocol.h b/MailHeaders/Lion/Mail/DraggingTextViewDelegate-Protocol.h new file mode 100644 index 00000000..4d4d8b4d --- /dev/null +++ b/MailHeaders/Lion/Mail/DraggingTextViewDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol DraggingTextViewDelegate + +@optional +- (BOOL)textView:(id)arg1 shouldReadSelectionFromPasteboard:(id)arg2 type:(id)arg3 result:(char *)arg4; +- (unsigned long long)textView:(id)arg1 draggingEntered:(id)arg2; +- (unsigned long long)textView:(id)arg1 draggingUpdated:(id)arg2; +- (void)textView:(id)arg1 draggingExited:(id)arg2; +- (void)textView:(id)arg1 concludeDragOperation:(id)arg2; +- (BOOL)textView:(id)arg1 shouldDragSelectionWithEvent:(id)arg2 offset:(struct CGSize)arg3 slideBack:(BOOL)arg4; +- (void)textView:(id)arg1 draggedImage:(id)arg2 endedAt:(struct CGPoint)arg3 operation:(unsigned long long)arg4; +@end + diff --git a/MailHeaders/Lion/Mail/DynamicErrorWindowController.h b/MailHeaders/Lion/Mail/DynamicErrorWindowController.h new file mode 100644 index 00000000..f451bb0d --- /dev/null +++ b/MailHeaders/Lion/Mail/DynamicErrorWindowController.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSWindowController.h" + +@class NSButton, NSProgressIndicator, NSTextField; + +@interface DynamicErrorWindowController : NSWindowController +{ + NSTextField *_message; + NSTextField *_explanation; + NSButton *_leftButton; + NSProgressIndicator *_progressIndicator; + NSButton *_rightButton; + NSButton *_helpButton; + long long _diagnosisCode; + double _distanceToRightEdge; + double _distanceBetweenButtons; + double _distanceToBottomEdge; + double _distanceFromProgresBarToButtons; + double _progressIndicatorHeight; + id _delegate; +} + +- (id)initWithDelegate:(id)arg1; +- (void)dealloc; +- (void)updateTextFieldHeightForNewContent:(id)arg1; +- (void)updateTextField:(id)arg1 withText:(id)arg2 belowControl:(id)arg3; +- (void)collectBasicWindowMetrics; +- (void)relocateButton:(id)arg1 relativeTo:(double)arg2; +- (void)awakeFromNib; +- (void)setDelegate:(id)arg1; +- (void)updateWindowLayout; +- (void)errorDiagnosedAs:(long long)arg1; +- (void)leftActionSelected:(id)arg1; +- (void)rightActionSelected:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/DynamicErrorWindowDelegate-Protocol.h b/MailHeaders/Lion/Mail/DynamicErrorWindowDelegate-Protocol.h new file mode 100644 index 00000000..2d6cf10d --- /dev/null +++ b/MailHeaders/Lion/Mail/DynamicErrorWindowDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol DynamicErrorWindowDelegate +- (BOOL)displayIndeterminateProgress; +- (id)errorMessageForErrorDiagnosis:(long long)arg1; +- (id)errorDescriptionForErrorDiagnosis:(long long)arg1; +- (id)leftButtonTextForErrorDiagnosis:(long long)arg1; +- (id)rightButtonTextForErrorDiagnosis:(long long)arg1; +- (void)leftActionSelectedWithDiagnosis:(long long)arg1; +- (void)rightActionSelectedWithDiagnosis:(long long)arg1; +- (unsigned long long)helpTopicForDiagnosis:(long long)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/EWSAccountDetails.h b/MailHeaders/Lion/Mail/EWSAccountDetails.h new file mode 100644 index 00000000..c67d7eab --- /dev/null +++ b/MailHeaders/Lion/Mail/EWSAccountDetails.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "AccountDetails.h" + +@class NSButton, NSPopUpButton, NSTextField; + +@interface EWSAccountDetails : AccountDetails +{ + NSPopUpButton *_messageCaching; + NSTextField *_internalServerPath; + NSTextField *_externalServerPath; + NSTextField *_externalPortNumber; + NSButton *_externalUseSSL; + BOOL _warnedAboutCachingAndIndexing; +} + +- (Class)accountClass; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (void)setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (id)portFieldForSSLCheckBox:(id)arg1; +- (void)didDisplayTabViewItem:(id)arg1; +- (void)cachePolicyChanged:(id)arg1; +- (void)_confirmCacheChangeSheetEnded:(id)arg1 alertReturn:(long long)arg2 context:(void *)arg3; + +@end + diff --git a/MailHeaders/Lion/Mail/EWSAccountSpecialMailboxes.h b/MailHeaders/Lion/Mail/EWSAccountSpecialMailboxes.h new file mode 100644 index 00000000..04ae9cf8 --- /dev/null +++ b/MailHeaders/Lion/Mail/EWSAccountSpecialMailboxes.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "RemoteStoreAccountSpecialMailboxes.h" + +@interface EWSAccountSpecialMailboxes : RemoteStoreAccountSpecialMailboxes +{ +} + +- (id)init; + +@end + diff --git a/MailHeaders/Lion/Mail/EWSQuota.h b/MailHeaders/Lion/Mail/EWSQuota.h new file mode 100644 index 00000000..db602f45 --- /dev/null +++ b/MailHeaders/Lion/Mail/EWSQuota.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "RemoteStoreQuota.h" + +@interface EWSQuota : RemoteStoreQuota +{ +} + +- (id)initWithAccount:(id)arg1; +- (Class)engineClass; +- (void)engineDidStart; +- (void)engineDidFinish; +- (void)engineUpdated:(id)arg1; +- (void)_updateUsageField; + +@end + diff --git a/MailHeaders/Lion/Mail/EditableWebMessageDocument.h b/MailHeaders/Lion/Mail/EditableWebMessageDocument.h new file mode 100644 index 00000000..a93fe0e2 --- /dev/null +++ b/MailHeaders/Lion/Mail/EditableWebMessageDocument.h @@ -0,0 +1,56 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebMessageDocument.h" + +@class DOMHTMLDocument, DOMHTMLElement, NSMutableArray, NSMutableDictionary; + +@interface EditableWebMessageDocument : WebMessageDocument +{ + DOMHTMLDocument *_htmlDocument; + DOMHTMLElement *_contentElement; + NSMutableDictionary *_savedUserContent; + NSMutableDictionary *_savedUserAttachments; + NSMutableArray *_orderedUserAttachmentsURLs; + NSMutableArray *_savedUserImages; +} + +- (void)dealloc; +- (id)htmlDocument; +- (void)setHTMLDocument:(id)arg1; +- (id)contentElement; +- (void)setContentElement:(id)arg1; +- (id)contentFragment; +- (id)flattenedContentFragment; +- (void)saveUserContent:(id)arg1; +- (id)savedUserContent; +- (void)forgetSavedContentWithKeys:(id)arg1; +- (void)saveUserAttachments:(id)arg1 withOrdering:(id)arg2; +- (id)savedUserAttachmentsOrdering; +- (id)savedUserAttachmentForURL:(id)arg1; +- (void)removeSavedUserAttachmentWithURL:(id)arg1; +- (id)orderedCompositeImagesAndTheirURLs:(id *)arg1; +- (void)saveUserImagesFromCompositeImages; +- (id)savedUserImagesFromCompositeImages; +- (void)insertSavedUserImagesIntoCompositeImages; +- (void)forgetAllSavedContentAttachmentsAndImages; +- (id)userImageDictionaryFromAttachment:(id)arg1 withURL:(id)arg2; +- (id)attachments; +- (id)backgroundImageAttachments; +- (void)saveAttachmentsWithURLsAsBackgroundAttachments:(id)arg1; +- (id)attachmentsIncludingBackgrounds; +- (void)removeAllAttachments; +- (void)removeAllCompositeImageAttachments; +- (void)removeAllBackgroundAttachments; +- (id)attachmentForURLString:(id)arg1; +- (id)prepareToAddArchive:(id)arg1 attachmentDelegate:(id)arg2; +- (id)prepareToAddArchive:(id)arg1; +- (void)copyBackgroundImageFromURL:(id)arg1 toURL:(id)arg2; +- (id)attachmentElementEnumeratorWithOptions:(int)arg1; +- (id)attachmentElementEnumeratorForRange:(id)arg1 withOptions:(int)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/EditingMessageWebView.h b/MailHeaders/Lion/Mail/EditingMessageWebView.h new file mode 100644 index 00000000..02ba452c --- /dev/null +++ b/MailHeaders/Lion/Mail/EditingMessageWebView.h @@ -0,0 +1,137 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "TilingWebView.h" + +#import "NSInspectorBarClient-Protocol.h" +#import "NSTextInputClient-Protocol.h" + +@class DOMHTMLElement, DOMNode; + +@interface EditingMessageWebView : TilingWebView +{ + DOMHTMLElement *_contentElement; + DOMNode *_cursorPositionNode; + struct { + unsigned int delegateRespondsToCanInsertFromDraggingInfo:1; + unsigned int delegateRespondsToCanInsertFromPasteboard:1; + } _flags; +} + ++ (id)insertablePasteboardTypes; +- (id)initWithFrame:(struct CGRect)arg1 frameName:(id)arg2 groupName:(id)arg3; +- (BOOL)maintainsInactiveSelection; +- (BOOL)isActive; +- (id)mailPreferredPboardTypeFromTypes:(id)arg1 pasteboard:(id)arg2 isForDrag:(BOOL)arg3 preferHTML:(BOOL)arg4; +- (id)editingDelegate; +- (void)setEditingDelegate:(id)arg1; +- (unsigned long long)pastedGraphicCounter; +- (BOOL)replaceSelectionWithPasteboardContentsPasteboard:(id)arg1 pasteboardType:(id)arg2 action:(int)arg3 options:(int)arg4; +- (BOOL)replaceSelectionWithPasteboardContentsDraggingInfo:(id)arg1 pasteboardType:(id)arg2 action:(int)arg3 options:(int)arg4; +- (BOOL)_replaceSelectionWithContentsOfWebpage:(id)arg1; +- (BOOL)_replaceSelectionWithPasteboardContentsDraggingInfo:(id)arg1 pasteboard:(id)arg2 pasteboardType:(id)arg3 action:(int)arg4 options:(int)arg5; +- (BOOL)replaceSelectionUsingContext:(id)arg1; +- (BOOL)replaceSelectionWithFragment:(id)arg1 attachments:(id)arg2 pasteboard:(id)arg3 types:(id)arg4 action:(int)arg5 options:(int)arg6 isPlainText:(BOOL)arg7; +- (BOOL)isContentEditable; +- (id)contentElement; +- (void)setContentElement:(id)arg1; +- (void)dealloc; +- (BOOL)isSelectionInContentElement; +- (BOOL)selectionCouldBeMadeIntoALink; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)deleteNode:(id)arg1; +- (void)deleteRange:(id)arg1; +- (void)replaceNode:(id)arg1 oldNode:(id)arg2; +- (void)insertNode:(id)arg1 parent:(id)arg2 nextSibling:(id)arg3; +- (void)insertNode:(id)arg1 parent:(id)arg2 offset:(int)arg3; +- (void)setValue:(id)arg1 forAttribute:(id)arg2 ofElement:(id)arg3; +- (void)setStyleProperty:(id)arg1 value:(id)arg2 priority:(id)arg3 ofElement:(id)arg4; +- (void)setMainDocumentURI:(id)arg1; +- (BOOL)removeHeadFromDocument:(id)arg1; +- (BOOL)removeFormattingFromTree:(id)arg1 forDocument:(id)arg2 hasDocumentContext:(BOOL)arg3 imageStrippingMode:(int)arg4; +- (BOOL)removeNonBodyChildrenAndAttributesFromMainDocumentElement; +- (BOOL)resetMainDocumentBodyAttributes; +- (void)removeAllFormatting; +- (BOOL)isAutomaticLinkDetectionEnabled; +- (void)insertTemporarySelectionMarkersForRange:(id)arg1; +- (void)restoreSelectionFromTemporaryMarkers; +- (void)restoreSelectionFromTemporaryMarkers:(BOOL)arg1; +- (void)deleteTemporarySelectionMarkersFromDocument:(id)arg1; +- (id)temporaryEndingSelectionMarker; +- (id)temporaryStartingSelectionMarker; +- (id)selectedAnchor; +- (BOOL)isFirstLineOfDocument; +- (id)selectedContainerWithNameInArray:(id)arg1; +- (void)setSelectionStart:(id)arg1 offset:(int)arg2 end:(id)arg3 offset:(int)arg4 affinity:(unsigned long long)arg5; +- (void)saveSelectionForUndo; +- (void)insertNode:(id)arg1 atRange:(id)arg2; +- (id)insertablePasteboardTypes; +- (void)registerForDraggedTypes:(id)arg1; +- (void)saveMessageToDrafts:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (void)draggingExited:(id)arg1; +- (BOOL)prepareForDragOperation:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (void)concludeDragOperation:(id)arg1; +- (BOOL)wantsPeriodicDraggingUpdates; +- (void)dragImage:(id)arg1 at:(struct CGPoint)arg2 offset:(struct CGSize)arg3 event:(id)arg4 pasteboard:(id)arg5 source:(id)arg6 slideBack:(BOOL)arg7; +- (void)undo:(id)arg1; +- (void)redo:(id)arg1; +- (void)paste:(id)arg1; +- (void)pasteAsQuotation:(id)arg1; +- (void)pasteWithCurrentStyle:(id)arg1; +- (void)setCursorPositionNode:(id)arg1; +- (BOOL)becomeFirstResponder; +- (void)editLink:(id)arg1; +- (void)removeLink:(id)arg1; +- (void)addHorizontalRule:(id)arg1; +- (void)increaseIndentation:(id)arg1; +- (void)decreaseIndentation:(id)arg1; +- (void)changeIndentationIfAllowed:(long long)arg1; +- (void)changeIndentation:(long long)arg1; +- (BOOL)removeAllQuotingFromTree:(id)arg1; +- (void)changeQuoteLevel:(id)arg1; +- (void)splitUpBlockQuotesOverlappingStartOfRange:(id)arg1; +- (void)splitUpBlockQuotesOverlappingEndOfRange:(id)arg1; +- (long long)compareRange:(id)arg1 toEndOfNode:(id)arg2; +- (void)removeBlockQuoteFromTree:(id)arg1; +- (void)removeFragmentBlockQuote:(id)arg1; +- (void)makeFontBigger:(id)arg1; +- (void)makeFontSmaller:(id)arg1; +- (void)viewWillStartLiveResize; +- (void)toggleVisibilityOfSublist:(id)arg1 ofItem:(id)arg2; +- (void)changeDocumentBackgroundColorToColor:(id)arg1; +- (void)viewDidEndLiveResize; +- (void)layoutResizingAttachmentViews; +- (void)convertListFromType:(id)arg1 toType:(id)arg2 undoTitle:(id)arg3; +- (void)convertToNumberedList:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)insertListWithNumbers:(BOOL)arg1 undoTitle:(id)arg2; +- (void)increaseListNestingLevel:(id)arg1; +- (BOOL)selectionIsInListType:(id)arg1; +- (BOOL)selectionIsInListTypes:(id)arg1; +- (BOOL)selectionIsInList; +- (BOOL)selectionIsInEmptyListItem; +- (BOOL)validateMenuItem:(id)arg1 fallThrough:(char *)arg2; +- (BOOL)validateUserInterfaceItem:(id)arg1 fallThrough:(char *)arg2; +- (id)inspectorBarItemIdentifiers; +- (id)textInput; +- (void)insertText:(id)arg1 replacementRange:(struct _NSRange)arg2; +- (void)doCommandBySelector:(SEL)arg1; +- (void)setMarkedText:(id)arg1 selectedRange:(struct _NSRange)arg2 replacementRange:(struct _NSRange)arg3; +- (void)unmarkText; +- (struct _NSRange)selectedRange; +- (struct _NSRange)markedRange; +- (BOOL)hasMarkedText; +- (id)attributedSubstringForProposedRange:(struct _NSRange)arg1 actualRange:(struct _NSRange *)arg2; +- (id)validAttributesForMarkedText; +- (struct CGRect)firstRectForCharacterRange:(struct _NSRange)arg1 actualRange:(struct _NSRange *)arg2; +- (unsigned long long)characterIndexForPoint:(struct CGPoint)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/EditingMessageWebViewDelegate-Protocol.h b/MailHeaders/Lion/Mail/EditingMessageWebViewDelegate-Protocol.h new file mode 100644 index 00000000..a5f3f4e8 --- /dev/null +++ b/MailHeaders/Lion/Mail/EditingMessageWebViewDelegate-Protocol.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol EditingMessageWebViewDelegate +- (BOOL)allowQuoting; +- (BOOL)allowsRichText; +- (void)setAllowsRichText:(BOOL)arg1; +- (void)editLink; +- (void)removeSelectedLink; +- (BOOL)selectionIsInList; +- (void)increaseListNestingLevel:(id)arg1; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; + +@optional +- (void)webViewWillStartLiveResize:(id)arg1; +- (void)webViewDidEndLiveResize:(id)arg1; +- (void)webView:(id)arg1 willReplaceSelectionWithFragment:(id *)arg2 pasteboard:(id)arg3 type:(id)arg4 options:(int *)arg5; +- (void)webView:(id)arg1 didAddMailAttachment:(id)arg2; +- (void)webView:(id)arg1 willRemoveMailAttachment:(id)arg2; +- (id)webView:(id)arg1 shouldReplaceSelectionWithWebArchive:(id)arg2 givenAction:(int)arg3; +- (BOOL)webView:(id)arg1 canInsertFromDraggingInfo:(id)arg2; +- (BOOL)webView:(id)arg1 canInsertFromPasteboard:(id)arg2 forDrag:(BOOL)arg3; +- (void)webViewMainDocumentBaseURIDidChange:(id)arg1; +- (BOOL)webViewShouldReplaceSelectionWithContentsOfWebpage:(id)arg1; +- (void)webViewWillInsertContentsOfWebpage:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/EditingWebMessageController.h b/MailHeaders/Lion/Mail/EditingWebMessageController.h new file mode 100644 index 00000000..c21e6205 --- /dev/null +++ b/MailHeaders/Lion/Mail/EditingWebMessageController.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebMessageController.h" + +@interface EditingWebMessageController : WebMessageController +{ +} + +- (void)setMainFrameDocumentView:(id)arg1; +- (BOOL)considerBaseURLsInternal; + +@end + diff --git a/MailHeaders/Lion/Mail/EmailImporter.h b/MailHeaders/Lion/Mail/EmailImporter.h new file mode 100644 index 00000000..865ea5ee --- /dev/null +++ b/MailHeaders/Lion/Mail/EmailImporter.h @@ -0,0 +1,76 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "Importer.h" + +@class NSArray, NSData, NSString; + +@interface EmailImporter : Importer +{ + NSString *_rootFolderPath; + NSArray *_sourceFolderPaths; + NSArray *_sourcePaths; + NSString *_destinationFolderName; + NSString *_attachmentBeingSearchedFor; + NSString *_lastDirectoryFound; + NSString *_temporaryImportFolderPath; + char *_lineDelimiter; + char *_fromSpaceSeparator; + NSData *_newline; + NSData *_greaterThanSign; + NSData *_fromSpace; + BOOL _errorsDuringImport; +} + +- (id)init; +- (void)performImport; +- (void)revealMailbox:(id)arg1; +- (void)importFinished; +- (id)importFinishedText; +- (id)statusLine; +- (void)cleanup; +- (void)readMailbox:(id)arg1 intoMailbox:(id)arg2; +- (void)processUserSelection; +- (void)importMailbox:(id)arg1; +- (id)preProcessSourceData:(id)arg1; +- (char *)lineDelimiter; +- (id)regexForAttachmentName:(id)arg1; +- (id)destinationFolderName; +- (void)setLineDelimiter:(char *)arg1; +- (char *)fromSpaceSeparator; +- (void)setFromSpaceSeparator:(char *)arg1; +- (id)rootFolder; +- (void)setRootFolder:(id)arg1; +- (id)sourceFolders; +- (void)setSourceFolders:(id)arg1; +- (id)sourceList; +- (void)setSourceList:(id)arg1; +- (BOOL)isValidMailbox:(id)arg1; +- (void)setErrorsDuringImport:(BOOL)arg1; +- (BOOL)errorsDuringImport; +- (id)messageWithImporterData:(id)arg1; +- (void)addMessagesToLibrary:(id)arg1 withMailbox:(id)arg2; +- (void)updateSubjectStringForMessageHeaders:(id)arg1; +- (void)convertChar:(BOOL)arg1 toChar:(BOOL)arg2 inBytes:(char *)arg3 length:(long long)arg4; +- (id)validItemsFromPaths:(id)arg1 validitySelector:(SEL)arg2; +- (id)searchForValidItemsInsideDirectory:(id)arg1 validitySelector:(SEL)arg2 limit:(long long)arg3 searchDepth:(long long)arg4; +- (id)searchForValidItemInsideDirectory:(id)arg1 validitySelector:(SEL)arg2 searchDepth:(long long)arg3; +- (id)uniqueDirectoriesForItems:(id)arg1; +- (id)longestCommonPathForItems:(id)arg1; +- (id)regenerateMessageData:(id)arg1 isHTML:(BOOL)arg2 isRich:(BOOL)arg3; +- (id)createAttachmentText:(id)arg1 isHTML:(BOOL)arg2; +- (id)locateAttachments:(id)arg1 inFolder:(id)arg2; +- (BOOL)isAttachmentBeingSearchedFor:(id)arg1; +- (id)copyAttachmentsToMailFolder:(id)arg1; +- (id)_newline; +- (id)_greaterThanSign; +- (id)_fromSpace; +- (id)mailboxNameForImportItem:(id)arg1; +- (id)mailboxForImportItem:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Lion/Mail/EmailView.h b/MailHeaders/Lion/Mail/EmailView.h new file mode 100644 index 00000000..ab59d666 --- /dev/null +++ b/MailHeaders/Lion/Mail/EmailView.h @@ -0,0 +1,86 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +#import "NSAnimationDelegate-Protocol.h" +@class EmailViewController, MessageBodyScrollView, MessageHeaderView, NSImageView, NSTrackingArea, NSViewAnimation, RolloverActionButtonsView; + +@interface EmailView : NSView +{ + MessageHeaderView *_headerView; + NSView *_bodyView; + MessageBodyScrollView *_bodyScrollView; + RolloverActionButtonsView *_rolloverView; + double _minimumHeight; + double _maximumHeight; + double _preferredHeight; + double _spaceBetweenHeaderAndBody; + NSImageView *_unreadImageView; + NSTrackingArea *_trackingArea; + unsigned int _doneInitializing:1; + unsigned int _tilingSubviews:1; + unsigned int _resizingFromSuperview:1; + unsigned int _bodyViewIsLoaded:1; + unsigned int _okayToResize:1; + int _separator; + NSView *_accessibilityLinkedView; + EmailViewController *_controller; + NSViewAnimation *_rolloverAnimation; +} + +- (void)awakeFromNib; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)dealloc; +- (id)headerView; +- (id)bodyView; +- (void)setBodyView:(id)arg1; +- (void)makeBodyBeFirstResponder; +- (id)_bodyViewToLink; +- (void)_setUpAccessibilityLinks; +- (void)removeAccessibilityLinks; +- (void)setUpAccessibilityLinksFromView:(id)arg1; +- (void)setHeaderBodySeparator:(int)arg1; +- (BOOL)isFlipped; +- (void)_subviewFrameChanged:(id)arg1; +- (struct CGSize)_contentSize; +- (void)resizeWithOldSuperviewSize:(struct CGSize)arg1; +- (void)resizeSubviewsWithOldSize:(struct CGSize)arg1; +- (void)setFrameSize:(struct CGSize)arg1; +- (void)_setRolloverFrame; +- (struct CGRect)_rolloverTrackingRect; +- (void)_windowDidBecomeMain:(id)arg1; +- (void)_windowDidResignMain:(id)arg1; +- (void)_setRolloverAnimation:(id)arg1; +- (void)_addRolloverView; +- (void)_removeRolloverView; +- (void)animationDidStop:(id)arg1; +- (void)animationDidEnd:(id)arg1; +- (void)updateTrackingAreas; +- (void)mouseEntered:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)mouseMoved:(id)arg1; +- (void)tile; +- (void)drawRect:(struct CGRect)arg1; +- (void)setBodyViewIsLoaded:(BOOL)arg1; +- (BOOL)knowsPageRange:(struct _NSRange *)arg1; +- (id)_textAttributesForLinkWithName:(id)arg1; +- (void)setSpaceBetweenHeaderAndBody:(double)arg1; +- (void)_textOrWebViewSelectionChanged:(id)arg1; +- (void)setUnread:(BOOL)arg1; +- (id)headerSnapshot; +- (id)bodySnapshotWithSize:(struct CGSize)arg1; +- (struct CGSize)visibleBodySize; +- (BOOL)accessibilityIsIgnored; +- (id)accessibilityAttributeValue:(id)arg1; +- (struct CGRect)rectOfRolloverButtonsInView:(id)arg1; +@property double preferredHeight; // @synthesize preferredHeight=_preferredHeight; +@property double maximumHeight; // @synthesize maximumHeight=_maximumHeight; +@property double minimumHeight; // @synthesize minimumHeight=_minimumHeight; +@property EmailViewController *controller; // @synthesize controller=_controller; + +@end + diff --git a/MailHeaders/Lion/Mail/EmailViewController.h b/MailHeaders/Lion/Mail/EmailViewController.h new file mode 100644 index 00000000..32ab00a9 --- /dev/null +++ b/MailHeaders/Lion/Mail/EmailViewController.h @@ -0,0 +1,99 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MessageContentDisplay-Protocol.h" + +@class EmailView, MessageHeaderDisplay, MessageHeaderView, NSInvocation, NSView, WebMessageDisplay; + +@interface EmailViewController : NSObject +{ + NSView *_currentMessageContentViewSubview; + NSInvocation *_currentMessageContentViewInvocation; + EmailView *_emailView; + MessageHeaderView *_messageHeaderView; + MessageHeaderDisplay *_messageHeaderDisplay; + WebMessageDisplay *_webMessageDisplay; + float _pageSizeMultiplier; + double _minimumHeight; + id _parentController; + BOOL _shouldBecomeFirstResponder; + BOOL _isForPrinting; + BOOL _shouldDisplayShowInMailboxLink; + BOOL _isSelected; + BOOL _isActiveSelection; + BOOL _displayAsSingleMessage; + BOOL _isRSS; +} + +- (id)initForMessageType:(int)arg1; +- (void)dealloc; +- (void)setMessageNumber:(unsigned long long)arg1; +- (unsigned long long)messageNumber; +- (void)setRelatedMessageType:(long long)arg1; +- (void)viewerPreferencesChanged; +@property(nonatomic) BOOL isForPrinting; +- (void)setShowAllHeaders:(BOOL)arg1; +@property BOOL shouldDisplayShowInMailboxLink; +@property BOOL displayAsSingleMessage; +@property BOOL isSelected; +- (void)setIsActiveSelection:(BOOL)arg1; +- (void)setBodyViewIsLoaded:(BOOL)arg1; +- (BOOL)isRSS; +- (BOOL)shouldManageQuotedContent; +- (void)showAllCopiesOfMessage; +- (void)updateSecondaryMessageStatus; +- (void)updateNumberOfDuplicates; +- (void)setMinimumHeight:(double)arg1; +- (void)setSpaceBetweenHeaderAndBody:(double)arg1; +- (id)emailView; +- (id)messageViewer; +- (id)viewingState; +- (id)contentView; +- (id)viewForKeyViewLoop; +- (void)_loadEmailView; +- (BOOL)prepareForMessage:(id)arg1 viewingState:(id)arg2; +- (BOOL)bringYourOwnScrollbars; +- (void)loadMessageBody; +- (void)clearDisplayChangedInvocation; +- (void)display:(id)arg1 inContainerView:(id)arg2 invokeWhenDisplayChanged:(id)arg3 loadBody:(BOOL)arg4; +- (void)makeMessageBeFirstResponder; +- (void)setShouldBecomeFirstResponder:(BOOL)arg1; +- (void)prepareToRemoveView; +- (void)highlightSearchText:(id)arg1; +- (id)selectedText; +- (id)selectedTextRepresentation; +- (void)setSelectedTextRepresentation:(id)arg1; +- (id)selectionParsedMessage; +- (id)attachmentsInSelection; +- (id)parsedMessage; +- (void)adjustFontSizeBy:(long long)arg1 viewingState:(id)arg2; +- (id)findTarget; +- (void)informDataDetectorsThatViewWillDisappear; +- (void)informDataDetectorsThatViewDidAppear; +- (void)detectDataInMessage:(id)arg1 usingContext:(id)arg2; +- (void)cancelDataDetection; +- (void)_messageFlagsChanged:(id)arg1; +- (void)removeAllRedundantClusters; +- (void)headerViewWasClicked; +- (BOOL)isHeaderViewFullyVisible; +- (id)viewWhereMessageIsDisplayed; +- (BOOL)hasBackgroundColorOrImage; +- (void)setHasBackgroundColorOrImage; +- (void)setUpAccessibilityLinksFromView:(id)arg1; +- (void)removeAccessibilityLinks; +- (void)prepareForRedundantTextExpansionAnimationWithTopYPosition:(double)arg1 bottomYPosition:(double)arg2 foldYPosition:(double)arg3 foldIsAtBottom:(BOOL)arg4; +- (void)redisplayHeaders; +- (struct CGRect)rectOfRolloverButtonsInView:(id)arg1; +- (id)messageHeaderDisplay; +- (void)saveAttachments:(id)arg1; +- (void)saveAttachmentsWithoutPrompting:(id)arg1; +@property (assign) id parentController; // @synthesize parentController=_parentController; +@property(retain, nonatomic) NSInvocation *currentMessageContentViewInvocation; // @synthesize currentMessageContentViewInvocation=_currentMessageContentViewInvocation; + +@end + diff --git a/MailHeaders/Lion/Mail/EmbeddedNoteDocumentEditor.h b/MailHeaders/Lion/Mail/EmbeddedNoteDocumentEditor.h new file mode 100644 index 00000000..8b528588 --- /dev/null +++ b/MailHeaders/Lion/Mail/EmbeddedNoteDocumentEditor.h @@ -0,0 +1,48 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NoteDocumentEditor.h" + +@class MessageViewingState, TilingWebView; + +@interface EmbeddedNoteDocumentEditor : NoteDocumentEditor +{ + MessageViewingState *_viewingState; + NoteDocumentEditor *_contentSaverEditor; + id _manager; +} + ++ (BOOL)usesCustomScroller; ++ (void)saveDefaults; ++ (void)restoreDraftMessage:(id)arg1 withSavedState:(id)arg2; ++ (id)createEditorForNote:(id)arg1; +- (void)finishLoadingEditor; +- (void)didLoadNotePaperIntoWebView:(id)arg1; +- (long long)editorSharedNib; +@property(readonly) TilingWebView *embeddedView; +- (id)resource; +- (id)toolbarIdentifier; +@property(nonatomic) id manager; +- (void)webViewDidChange:(id)arg1; +- (void)beginDocumentMove; +- (void)endDocumentMove; +- (void)saveAndClose; +- (void)saveCloseAndRelease; +- (void)windowWillClose:(id)arg1; +- (void)dealloc; +- (id)showInterfaceOperation; +- (void)animateEditorFrame:(struct CGRect)arg1; +- (void)animateOutIfNeeded; +- (BOOL)animateInIfNeeded; +- (void)_performInvocationAfterLoad:(id)arg1; +- (void)appendText:(id)arg1; +- (void)backEndDidSaveMessage:(id)arg1 result:(int)arg2; +- (void)editorDidLoad:(id)arg1; +@property(retain) NoteDocumentEditor *contentSaverEditor; // @synthesize contentSaverEditor=_contentSaverEditor; +@property(retain) MessageViewingState *viewingState; // @synthesize viewingState=_viewingState; + +@end + diff --git a/MailHeaders/Lion/Mail/EntourageEmailImporter.h b/MailHeaders/Lion/Mail/EntourageEmailImporter.h new file mode 100644 index 00000000..c2cc81f8 --- /dev/null +++ b/MailHeaders/Lion/Mail/EntourageEmailImporter.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ApplescriptEmailImporter.h" + +@interface EntourageEmailImporter : ApplescriptEmailImporter +{ +} + ++ (id)name; +- (id)creatorCode; + +@end + diff --git a/MailHeaders/Lion/Mail/EudoraEmailImporter.h b/MailHeaders/Lion/Mail/EudoraEmailImporter.h new file mode 100644 index 00000000..6ae885c7 --- /dev/null +++ b/MailHeaders/Lion/Mail/EudoraEmailImporter.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +@interface EudoraEmailImporter : FilesystemEmailImporter +{ +} + ++ (id)name; ++ (id)explanatoryText; +- (char *)fromString; +- (BOOL)isValidMailbox:(id)arg1; +- (id)preProcessSourceData:(id)arg1; +- (struct _NSRange)_rangeOfDataContainedByTag:(char *)arg1 endTag:(char *)arg2 inData:(id)arg3; +- (void)_stripTag:(char *)arg1 fromData:(id)arg2; +- (id)_attachmentsInEudoraMessage:(id)arg1; +- (BOOL)isAttachmentBeingSearchedFor:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/ExchangeAccountDetails.h b/MailHeaders/Lion/Mail/ExchangeAccountDetails.h new file mode 100644 index 00000000..13d3a555 --- /dev/null +++ b/MailHeaders/Lion/Mail/ExchangeAccountDetails.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "IMAPAccountDetails.h" + +@interface ExchangeAccountDetails : IMAPAccountDetails +{ +} + ++ (id)accountDetailsNibName; +- (Class)accountClass; + +@end + diff --git a/MailHeaders/Lion/Mail/ExpandingSplitView.h b/MailHeaders/Lion/Mail/ExpandingSplitView.h new file mode 100644 index 00000000..aef62b80 --- /dev/null +++ b/MailHeaders/Lion/Mail/ExpandingSplitView.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailSplitView.h" + +@class NSImage, NSString; + +@interface ExpandingSplitView : MailSplitView +{ + long long _dividerToolTipTag; + NSString *_toolTipString; + NSImage *_splitterDimple; + NSImage *_splitterBackground; + double _dividerThickness; + int _dividerType; +} + +- (void)dealloc; +- (void)setVertical:(BOOL)arg1; +- (double)dividerThickness; +- (void)drawDividerInRect:(struct CGRect)arg1; +- (id)accessibilityAttributeValue:(id)arg1; +- (int)dividerType; +- (void)setDividerType:(int)arg1; +- (id)_orientedImageForName:(id)arg1; +- (double)getSplitPercentage; +- (BOOL)_isSubviewAtIndexVisible:(unsigned long long)arg1; +- (BOOL)isSecondViewVisible; +- (BOOL)isFirstViewVisible; +- (void)resizeSubviewsToPercentage:(double)arg1; +- (void)setDividerToolTip:(id)arg1; +- (struct CGRect)_dividerRect; + +@end + diff --git a/MailHeaders/Lion/Mail/FauxUIElement.h b/MailHeaders/Lion/Mail/FauxUIElement.h new file mode 100644 index 00000000..63d2241c --- /dev/null +++ b/MailHeaders/Lion/Mail/FauxUIElement.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString; + +@interface FauxUIElement : NSObject +{ + NSString *_role; + NSString *_identifier; + id _parent; +} + ++ (id)elementWithRole:(id)arg1 parent:(id)arg2 identifier:(id)arg3; +- (id)initWithRole:(id)arg1 parent:(id)arg2 identifier:(id)arg3; +- (void)dealloc; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +- (id)identifier; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (void)accessibilitySetValue:(id)arg1 forAttribute:(id)arg2; +- (id)accessibilityActionNames; +- (id)accessibilityActionDescription:(id)arg1; +- (void)accessibilityPerformAction:(id)arg1; +- (BOOL)accessibilityIsIgnored; +- (id)accessibilityHitTest:(struct CGPoint)arg1; +- (id)accessibilityFocusedUIElement; + +@end + diff --git a/MailHeaders/Lion/Mail/FavoriteButton.h b/MailHeaders/Lion/Mail/FavoriteButton.h new file mode 100644 index 00000000..d5ee77e8 --- /dev/null +++ b/MailHeaders/Lion/Mail/FavoriteButton.h @@ -0,0 +1,75 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailBarContainerButton.h" + +#import "FavoritesMenuDelegateProtocol-Protocol.h" + +@class FavoritesMenuController, MailboxUid, NSTimer; + +@interface FavoriteButton : MailBarContainerButton +{ + MailboxUid *_mailbox; + struct CGPoint _mouseDownForDrag; + FavoritesMenuController *_menuController; + NSTimer *_showMenuTimer; + NSTimer *_flashButtonTimer; + long long _flashCount; + BOOL _menuIsOpen; +} + ++ (id)draggedButton; ++ (void)setDraggedButton:(id)arg1; ++ (unsigned long long)_unreadCountForMailbox:(id)arg1 isForMenu:(BOOL)arg2; ++ (id)titleForMailbox:(id)arg1 shouldUseExtendedName:(BOOL)arg2 isForMenu:(BOOL)arg3; ++ (Class)cellClass; ++ (id)_menuForMailbox:(id)arg1; ++ (id)menuItemForMailbox:(id)arg1; +- (void)registerForDraggedTypes; +- (void)setEnabled:(BOOL)arg1; +- (void)_registerChildrenForUnreadCountChangesForMailbox:(id)arg1; +- (id)initWithMailbox:(id)arg1; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)_mailboxWillBecomeInvalid:(id)arg1; +- (void)_mailboxInfoDidChange:(id)arg1; +- (void)_flagMailboxVisibilityChanged:(id)arg1; +- (void)_fullScreenStateChanged:(id)arg1; +- (id)mailbox; +- (void)_setIndicator:(BOOL)arg1; +- (BOOL)hasIndicator; +- (void)dealloc; +- (id)_draggingImage; +- (BOOL)_canDragHorizontally:(BOOL)arg1 fromMouseDown:(id)arg2; +- (struct CGSize)_currentEventOffsetFromEvent:(id)arg1; +- (void)_performDragFromMouseDown:(id)arg1 withViewFrameOrigin:(struct CGPoint)arg2; +- (void)draggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; +- (BOOL)_shouldDispayMenuForEvent:(id)arg1; +- (void)_presentContextualPopupForEvent:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)mouseUp:(id)arg1; +- (unsigned long long)draggingSourceOperationMaskForLocal:(BOOL)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)draggedImage:(id)arg1 endedAt:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (void)_finishFlash:(id)arg1; +- (void)flash; +- (BOOL)_canDragMessageIntoMailbox:(id)arg1; +- (unsigned long long)_dragOperationForCurrentEvent; +- (unsigned long long)draggingEntered:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (void)draggingExited:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (BOOL)_canAcceptMailboxAtPoint:(struct CGPoint)arg1; +- (id)description; +- (void)_startShowMenuTimer; +- (void)_stopShowMenuTimer; +- (void)_toggleFlashState; +- (void)_showMenuTimerFired; +- (void)showMenu; +- (void)menuDidPresent; +- (void)menuDidClose; + +@end + diff --git a/MailHeaders/Lion/Mail/FavoriteMenuItemCell.h b/MailHeaders/Lion/Mail/FavoriteMenuItemCell.h new file mode 100644 index 00000000..6ef954db --- /dev/null +++ b/MailHeaders/Lion/Mail/FavoriteMenuItemCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailboxListCell.h" + +@interface FavoriteMenuItemCell : MailboxListCell +{ +} + +- (id)highlightColorWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/FavoriteMenuScrollHoverView.h b/MailHeaders/Lion/Mail/FavoriteMenuScrollHoverView.h new file mode 100644 index 00000000..02a10ada --- /dev/null +++ b/MailHeaders/Lion/Mail/FavoriteMenuScrollHoverView.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSImage, NSTrackingArea; + +@interface FavoriteMenuScrollHoverView : NSView +{ + NSTrackingArea *_trackingArea; + unsigned long long _direction; + NSImage *_arrowImage; + id _delegate; +} + +- (id)initWithDirection:(unsigned long long)arg1; +- (void)updateTrackingAreas; +- (void)dealloc; +- (void)drawRect:(struct CGRect)arg1; +- (void)mouseEntered:(id)arg1; +- (void)mouseExited:(id)arg1; +@property id delegate; // @synthesize delegate=_delegate; +@property(readonly) unsigned long long direction; // @synthesize direction=_direction; + +@end + diff --git a/MailHeaders/Lion/Mail/FavoritesBarView.h b/MailHeaders/Lion/Mail/FavoritesBarView.h new file mode 100644 index 00000000..24a656e3 --- /dev/null +++ b/MailHeaders/Lion/Mail/FavoritesBarView.h @@ -0,0 +1,92 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "SlidingViewsBar.h" + +#import "ClippedItemsIndicatorDelegate-Protocol.h" + +@class MailBarContainerView, MailboxUid, MessageViewer, NSMutableArray, NSMutableDictionary, NSSet; + +@interface FavoritesBarView : SlidingViewsBar +{ + MailBarContainerView *_mailBarContainerView; + NSMutableArray *_clippedMenuItems; + NSMutableArray *_mailboxes; + MailboxUid *_selectedMailbox; + NSMutableDictionary *_favoriteButtonsByMailboxes; + NSSet *_duplicateMailboxesSet; + MessageViewer *_messageViewer; + double _firstFavoriteLeftEdge; + double _buttonHeight; + double _lastWidth; + BOOL _preparedForFirstLayout; + BOOL _windowDidClose; + BOOL _shouldCheckForDuplicates; + BOOL _isForSearch; +} + ++ (double)buttonBottomOffset; ++ (id)_favoriteMailboxesFromPreferences; ++ (id)mailboxForFavoritesBarPosition:(unsigned long long)arg1; +- (void)awakeFromNib; +- (void)dealloc; +- (BOOL)performDragOperation:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (void)draggingExited:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)menuItemsForClippedItemsIndicator:(id)arg1; +- (void)finishedSlidingAnimation:(id)arg1; +- (unsigned long long)dropIndexFromDraggingInfo:(id)arg1; +- (unsigned long long)lastNonSlidingViewIndex; +- (double)minButtonX; +- (double)minSlidingViewX; +- (double)maxButtonXWithClipIndicator; +- (double)maxButtonXWithoutClipIndicator; +- (double)paddingBetweenButtons; +- (double)_paddingForSidebar; +- (void)_refreshMailboxes; +- (void)refreshButtons; +- (void)reorderedSlidingView:(id)arg1; +- (unsigned long long)updateDropTarget:(id)arg1; +- (double)widthOfDraggingInfo:(id)arg1; +- (void)windowWillClose; +- (id)_addButtonForMailbox:(id)arg1; +- (void)favoriteButtonClicked:(id)arg1; +- (BOOL)addDroppedMailboxes:(id)arg1 atIndex:(long long)arg2; +- (id)_buttonAtMouseLocation:(struct CGPoint)arg1; +- (void)deleteDraggedMailbox:(id)arg1; +- (void)deleteMailbox:(id)arg1; +- (id)_selectedButton; +- (void)_registerForNotifications; +- (void)_mailboxListingDidChange:(id)arg1; +- (void)_mailboxesChanged:(id)arg1; +- (void)_mailAccountWillBeDeleted:(id)arg1; +- (void)_favoritesBarDidChanged:(id)arg1; +- (void)_mailboxSelectionChanged:(id)arg1; +- (void)_favoritesViewFrameChanged:(id)arg1; +- (void)layOutButtons; +- (void)_refreshButtonsSoon; +- (void)_resetClippedItems; +- (double)_rightEdgeOfFavoritesViewSubviews; +- (BOOL)isMailboxInFavoritesBar:(id)arg1; +- (void)clearButtons; +- (BOOL)_favoritesPreferenceExists; +- (void)saveFavoritesBar; +- (void)_writeFavoriteMailboxesToPreferences; +- (void)_finishedGettingDefaultMailboxes; +- (void)_getDefaultSetOfMailboxes; +- (void)_setFavoriteMailboxAddedDefaultForMailbox:(id)arg1; +- (BOOL)_havePreviouslyAddedMailbox:(id)arg1; +- (void)setFavoritesBarIsForSearch:(BOOL)arg1; +- (id)_mailboxForFavoritesBarPosition:(unsigned long long)arg1; +- (struct CGPoint)centerOfButtonForFavoritesBarPosition:(unsigned long long)arg1; +- (void)flashButtonAtPosition:(unsigned long long)arg1; +@property(retain, nonatomic) NSMutableArray *mailboxes; // @synthesize mailboxes=_mailboxes; +@property(retain, nonatomic) MailboxUid *selectedMailbox; // @synthesize selectedMailbox=_selectedMailbox; + +@end + diff --git a/MailHeaders/Lion/Mail/FavoritesMenuController.h b/MailHeaders/Lion/Mail/FavoritesMenuController.h new file mode 100644 index 00000000..c7d84460 --- /dev/null +++ b/MailHeaders/Lion/Mail/FavoritesMenuController.h @@ -0,0 +1,63 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSOutlineViewDataSource-Protocol.h" +#import "NSOutlineViewDelegate-Protocol.h" + +@class FavoritesMenuOutlineView, MailboxUid, NSScrollView, NSTimer, NSView, NSWindow; + +@interface FavoritesMenuController : NSObject +{ + NSWindow *_window; + NSWindow *_parentWindow; + MailboxUid *_mailbox; + NSScrollView *_scrollView; + FavoritesMenuOutlineView *_outlineView; + id _mouseClickedMonitor; + id _delegate; + BOOL _isOpeningMenu; + NSView *_upScrollHoverView; + NSView *_downScrollHoverView; + BOOL _needsScrollers; + BOOL _isScrolling; + NSTimer *_scrollTimer; +} + ++ (void)closeExitingMenu; +- (id)initWithMailbox:(id)arg1 atWindow:(id)arg2; +- (void)_cleanupMenu; +- (void)dealloc; +- (void)closePopup; +- (void)_applicationShouldClosePopup:(id)arg1; +- (void)_dragEnded:(id)arg1; +- (void)_mouseClickedInApplicationWithEvent:(id)arg1; +- (struct CGSize)_windowSizeForOutlineViewSize:(struct CGSize)arg1; +- (void)_sizeWindowToFitCells; +- (void)_constrainWindowToScreen; +- (void)_insertOutlineViewInScrollView; +- (void)presentPopupAtLocation:(struct CGPoint)arg1; +- (long long)outlineView:(id)arg1 numberOfChildrenOfItem:(id)arg2; +- (id)outlineView:(id)arg1 child:(long long)arg2 ofItem:(id)arg3; +- (BOOL)outlineView:(id)arg1 isItemExpandable:(id)arg2; +- (id)outlineView:(id)arg1 objectValueForTableColumn:(id)arg2 byItem:(id)arg3; +- (id)outlineView:(id)arg1 dataCellForTableColumn:(id)arg2 item:(id)arg3; +- (BOOL)outlineView:(id)arg1 shouldShowOutlineCellForItem:(id)arg2; +- (unsigned long long)_dragOperationForCurrentEvent; +- (unsigned long long)outlineView:(id)arg1 validateDrop:(id)arg2 proposedItem:(id)arg3 proposedChildIndex:(long long)arg4; +- (BOOL)_canDragMessageIntoMailbox:(id)arg1; +- (BOOL)outlineView:(id)arg1 acceptDrop:(id)arg2 item:(id)arg3 childIndex:(long long)arg4; +- (void)_scrollToNextPoint:(id)arg1; +- (void)updateScrollArrows; +- (void)startScrolling:(unsigned long long)arg1; +- (void)stopScrolling; +- (void)stopScrolling:(unsigned long long)arg1; +@property(readonly) BOOL isScrolling; // @synthesize isScrolling=_isScrolling; +@property id delegate; // @synthesize delegate=_delegate; + +@end + diff --git a/MailHeaders/Lion/Mail/FavoritesMenuDelegateProtocol-Protocol.h b/MailHeaders/Lion/Mail/FavoritesMenuDelegateProtocol-Protocol.h new file mode 100644 index 00000000..c3aa2335 --- /dev/null +++ b/MailHeaders/Lion/Mail/FavoritesMenuDelegateProtocol-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol FavoritesMenuDelegateProtocol + +@optional +- (void)menuDidPresent; +- (void)menuDidClose; +@end + diff --git a/MailHeaders/Lion/Mail/FavoritesMenuOutlineView.h b/MailHeaders/Lion/Mail/FavoritesMenuOutlineView.h new file mode 100644 index 00000000..ab34173d --- /dev/null +++ b/MailHeaders/Lion/Mail/FavoritesMenuOutlineView.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSOutlineView.h" + +@class FavoritesMenuController, NSTrackingArea; + +@interface FavoritesMenuOutlineView : NSOutlineView +{ + FavoritesMenuController *_controller; + NSTrackingArea *_trackingArea; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (void)updateTrackingAreas; +- (void)mouseExited:(id)arg1; +- (void)mouseMoved:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)scrollWheel:(id)arg1; +- (void)highlightSelectionInClipRect:(struct CGRect)arg1; +@property FavoritesMenuController *controller; // @synthesize controller=_controller; + +@end + diff --git a/MailHeaders/Lion/Mail/FeedbackCollector.h b/MailHeaders/Lion/Mail/FeedbackCollector.h new file mode 100644 index 00000000..27a1f4e9 --- /dev/null +++ b/MailHeaders/Lion/Mail/FeedbackCollector.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSButton, NSMutableString, NSProgressIndicator, NSTextField, NSView, NSWindow, WebView; + +@interface FeedbackCollector : NSObject +{ + WebView *_metricsWebView; + NSButton *_includeMetricsCheckbox; + NSWindow *_window; + NSProgressIndicator *_spinner; + NSTextField *_collectingTextField; + NSView *_statusContainerView; + NSButton *_continueButton; + NSMutableString *_feedbackHTMLString; + BOOL _sendMetricsImmediately; + BOOL _currentlyLoading; +} + ++ (void)initialize; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (id)init; +- (void)dealloc; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)run; +- (void)_collectMetrics; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)_sendMetricsIfRequested; +- (void)_cleanUpWindow; +- (void)_loadStringIntoWebView; +- (BOOL)windowShouldClose:(id)arg1; +- (void)continue:(id)arg1; +- (void)cancel:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/FilesystemEmailImporter.h b/MailHeaders/Lion/Mail/FilesystemEmailImporter.h new file mode 100644 index 00000000..131dac2e --- /dev/null +++ b/MailHeaders/Lion/Mail/FilesystemEmailImporter.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "EmailImporter.h" + +@interface FilesystemEmailImporter : EmailImporter +{ +} + +- (id)prepareForImport; +- (double)progressValueForMailboxAtPath:(id)arg1; +- (void)processUserSelection; +- (void)readMailbox:(id)arg1 intoMailbox:(id)arg2; +- (id)pathExtensions; +- (char *)fromString; +- (BOOL)isValidMailbox:(id)arg1; +- (void)sniffLineDelimiterFromData:(id)arg1; +- (void)verifyFromSpaceHeaderForScanner:(id)arg1 dataLength:(long long)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/FindPanel.h b/MailHeaders/Lion/Mail/FindPanel.h new file mode 100644 index 00000000..58606531 --- /dev/null +++ b/MailHeaders/Lion/Mail/FindPanel.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSButton, NSMatrix, NSString, NSTextField; + +@interface FindPanel : NSObject +{ + NSButton *_findNextButton; + NSTextField *_findTextField; + NSButton *_ignoreCaseButton; + NSMatrix *_replaceAllScopeMatrix; + NSTextField *_replaceTextField; + NSTextField *_statusField; + NSString *_findString; + BOOL _lastFindWasSuccessful; +} + ++ (id)sharedInstance; +- (id)init; +- (void)_appDidActivate; +- (void)dealloc; +- (id)findString; +- (void)setFindString:(id)arg1; +- (void)setFindString:(id)arg1 writeToPasteboard:(BOOL)arg2; +- (id)findPanel; +- (void)orderFrontFindPanel:(id)arg1; +- (void)findNextAndOrderFindPanelOut:(id)arg1; +- (void)findNext:(id)arg1; +- (void)findPrevious:(id)arg1; +- (void)ignoreCaseButtonClicked:(id)arg1; +- (void)replace:(id)arg1; +- (void)replaceAndFind:(id)arg1; +- (void)replaceAll:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/FlagButtonImageView.h b/MailHeaders/Lion/Mail/FlagButtonImageView.h new file mode 100644 index 00000000..8d00705e --- /dev/null +++ b/MailHeaders/Lion/Mail/FlagButtonImageView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSImageView.h" + +@interface FlagButtonImageView : NSImageView +{ + BOOL _selected; + BOOL _displayMouseOverStyle; +} + +- (void)drawRect:(struct CGRect)arg1; +@property(nonatomic) BOOL displayMouseOverStyle; // @synthesize displayMouseOverStyle=_displayMouseOverStyle; +@property(nonatomic) BOOL selected; // @synthesize selected=_selected; + +@end + diff --git a/MailHeaders/Lion/Mail/FlaggedStatusToolbarItem.h b/MailHeaders/Lion/Mail/FlaggedStatusToolbarItem.h new file mode 100644 index 00000000..ed4c0768 --- /dev/null +++ b/MailHeaders/Lion/Mail/FlaggedStatusToolbarItem.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@interface FlaggedStatusToolbarItem : NSToolbarItem +{ + id _delegate; +} + +- (id)initWithItemIdentifier:(id)arg1; +- (void)dealloc; +- (void)validate; +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; + +@end + diff --git a/MailHeaders/Lion/Mail/FlaggedStatusToolbarItemDelegate-Protocol.h b/MailHeaders/Lion/Mail/FlaggedStatusToolbarItemDelegate-Protocol.h new file mode 100644 index 00000000..70767cfe --- /dev/null +++ b/MailHeaders/Lion/Mail/FlaggedStatusToolbarItemDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol FlaggedStatusToolbarItemDelegate + +@optional +- (BOOL)validateFlaggedStatusToolbarItem:(id)arg1; +- (void)toggleFlaggedStatus:(BOOL)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/FlaggedStatusView.h b/MailHeaders/Lion/Mail/FlaggedStatusView.h new file mode 100644 index 00000000..2de8a222 --- /dev/null +++ b/MailHeaders/Lion/Mail/FlaggedStatusView.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSSegmentedControl.h" + +@class FlaggedStatusToolbarItem, NSMutableDictionary; + +@interface FlaggedStatusView : NSSegmentedControl +{ + FlaggedStatusToolbarItem *_toolbarItem; + NSMutableDictionary *_flagIcons; + BOOL _flagColorToDisplay; +} + ++ (id)menuForFlaggedStatus; ++ (BOOL)defaultFlagColor; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; +- (void)_flaggedStatusViewCommonInit; +- (void)dealloc; +@property(nonatomic) BOOL flagColorToDisplay; +- (void)setupAccessibilityForButton:(BOOL)arg1; +- (void)_segmentedControlClicked:(id)arg1; +@property(nonatomic) FlaggedStatusToolbarItem *toolbarItem; // @synthesize toolbarItem=_toolbarItem; + +@end + diff --git a/MailHeaders/Lion/Mail/FlagsMenuItemView.h b/MailHeaders/Lion/Mail/FlagsMenuItemView.h new file mode 100644 index 00000000..fe14413f --- /dev/null +++ b/MailHeaders/Lion/Mail/FlagsMenuItemView.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class FlagButtonImageView, NSMutableArray, NSMutableDictionary, NSTextField; + +@interface FlagsMenuItemView : NSView +{ + NSTextField *_flagTitleTextField; + NSTextField *_flagNameTextField; + FlagButtonImageView *_clearFlaggedStatusView; + NSMutableDictionary *_flagViews; + NSMutableArray *_trackingAreas; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; +- (void)_flagsMenuItemViewCommonInit; +- (void)awakeFromNib; +- (void)dealloc; +- (id)_viewForFlagColor:(BOOL)arg1; +- (void)_drawSelectedOutlineForView:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)mouseUp:(id)arg1; +- (void)viewDidMoveToWindow; +- (void)setEnabled:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/FlatPopUpButton.h b/MailHeaders/Lion/Mail/FlatPopUpButton.h new file mode 100644 index 00000000..7caf4aef --- /dev/null +++ b/MailHeaders/Lion/Mail/FlatPopUpButton.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@interface FlatPopUpButton : NSPopUpButton +{ +} + +- (double)sizeToFitWidth; + +@end + diff --git a/MailHeaders/Lion/Mail/FlatPopUpButtonCell.h b/MailHeaders/Lion/Mail/FlatPopUpButtonCell.h new file mode 100644 index 00000000..252c9492 --- /dev/null +++ b/MailHeaders/Lion/Mail/FlatPopUpButtonCell.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPopUpButtonCell.h" + +@interface FlatPopUpButtonCell : NSPopUpButtonCell +{ + BOOL _useThinLeftMargin; +} + ++ (void)loadCapGraphics; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (struct CGRect)imageRectForBounds:(struct CGRect)arg1; +- (double)_menuLocationHorizontalOffset; +- (void)_drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +@property BOOL useThinLeftMargin; // @synthesize useThinLeftMargin=_useThinLeftMargin; + +@end + diff --git a/MailHeaders/Lion/Mail/FlatTableView.h b/MailHeaders/Lion/Mail/FlatTableView.h new file mode 100644 index 00000000..773632b4 --- /dev/null +++ b/MailHeaders/Lion/Mail/FlatTableView.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableView.h" + +@class NSImage; + +@interface FlatTableView : NSTableView +{ + NSImage *_selectionHighlightLeftEndCap; + NSImage *_selectionHighlightCenter; + NSImage *_selectionHighlightRightEndCap; + NSImage *_dropDestinationLeftEndCap; + NSImage *_dropDestinationCenter; + NSImage *_dropDestinationRightEndCap; +} + +- (void)awakeFromNib; +- (void)dealloc; +- (void)highlightSelectionInClipRect:(struct CGRect)arg1; +- (void)_drawDropHighlightBackgroundForRow:(long long)arg1; +- (void)_drawDropHighlightOnRow:(long long)arg1; +- (void)highlightRow:(long long)arg1 withLeftEndCap:(id)arg2 center:(id)arg3 rightEndCap:(id)arg4; +- (id)_highlightColorForCell:(id)arg1; +- (void)tile; +- (BOOL)isOpaque; + +@end + diff --git a/MailHeaders/Lion/Mail/FlatTableViewDataCell.h b/MailHeaders/Lion/Mail/FlatTableViewDataCell.h new file mode 100644 index 00000000..c34ead1c --- /dev/null +++ b/MailHeaders/Lion/Mail/FlatTableViewDataCell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface FlatTableViewDataCell : NSTextFieldCell +{ +} + +- (id)initTextCell:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/FlippedView.h b/MailHeaders/Lion/Mail/FlippedView.h new file mode 100644 index 00000000..d46e46e0 --- /dev/null +++ b/MailHeaders/Lion/Mail/FlippedView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface FlippedView : NSView +{ +} + +- (BOOL)isFlipped; +- (BOOL)isOpaque; + +@end + diff --git a/MailHeaders/Lion/Mail/FontPreferenceContainerView.h b/MailHeaders/Lion/Mail/FontPreferenceContainerView.h new file mode 100644 index 00000000..c120eed3 --- /dev/null +++ b/MailHeaders/Lion/Mail/FontPreferenceContainerView.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSButton, NSTextField; + +@interface FontPreferenceContainerView : NSView +{ + NSButton *_selectButton; + NSTextField *_labelTextField; + NSTextField *_sampleTextField; + struct CGRect _myOriginalFrame; + struct CGRect _sampleTextFieldOriginalFrame; + double _buttonOffset; + double _labelOffset; + double _sampleOffset; + SEL _getSEL; + SEL _setSEL; +} + +- (void)awakeFromNib; +- (void)layoutVertically; +- (void)sizeToFit; +@property SEL setSEL; // @synthesize setSEL=_setSEL; +@property SEL getSEL; // @synthesize getSEL=_getSEL; + +@end + diff --git a/MailHeaders/Lion/Mail/FontsAndColorsPreferences.h b/MailHeaders/Lion/Mail/FontsAndColorsPreferences.h new file mode 100644 index 00000000..af5b9ccc --- /dev/null +++ b/MailHeaders/Lion/Mail/FontsAndColorsPreferences.h @@ -0,0 +1,82 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +@class FontPreferenceContainerView, NSArray, NSFont, NSMutableDictionary, NSPopUpButton, NSTextView; + +@interface FontsAndColorsPreferences : NSPreferencesModule +{ + FontPreferenceContainerView *_messageListContainerView; + FontPreferenceContainerView *_messageTextContainerView; + FontPreferenceContainerView *_noteTextContainerView; + FontPreferenceContainerView *_fixedWidthContainerView; + NSArray *_fontPrefContainerViews; + double _containerSuperViewSpacingY; + double _containerContainerSpacingY; + int _changingFontPreference; + NSMutableDictionary *_midYDict; + NSFont *_messageListFont; + NSFont *_messageFont; + NSFont *_noteFont; + NSFont *_fixedWidthFont; + NSPopUpButton *_colorPopupOne; + NSPopUpButton *_colorPopupTwo; + NSPopUpButton *_colorPopupThree; + NSPopUpButton *_lastColorPopupSelected; + NSTextView *_exampleTextView; + NSArray *_colorList; + BOOL _isQuotedTextColored; + BOOL _isPlainTextOfFixedWidth; +} + ++ (id)keyPathsForValuesAffectingMessageListSampleFont; ++ (id)keyPathsForValuesAffectingMessageSampleFont; ++ (id)keyPathsForValuesAffectingNoteSampleFont; ++ (id)keyPathsForValuesAffectingFixedWidthSampleFont; +- (void)awakeFromNib; +- (void)dealloc; +- (void)initializeFromDefaults; +- (void)_growWindowVertically:(double)arg1 animate:(BOOL)arg2; +- (void)_updateAutoresizeFlags:(int)arg1; +- (void)_layoutFromFontPreference:(int)arg1; +- (BOOL)isResizable; +- (id)titleForIdentifier:(id)arg1; +- (id)windowTitle; +- (void)_replaceExampleTextView; +@property(readonly) NSFont *messageListSampleFont; // @dynamic messageListSampleFont; +@property(readonly) NSFont *messageSampleFont; // @dynamic messageSampleFont; +@property(readonly) NSFont *noteSampleFont; // @dynamic noteSampleFont; +@property(readonly) NSFont *fixedWidthSampleFont; // @dynamic fixedWidthSampleFont; +- (id)_sampleFontForFont:(id)arg1; +- (void)_populateFontPrefContainers; +- (void)moduleWillBeRemoved; +- (void)selectFont:(id)arg1; +- (void)toggleColorQuotedText:(id)arg1; +- (void)toggleUseFixedWidthFont:(id)arg1; +- (id)_containerViewForFontPreference:(int)arg1; +- (double)_sizeContainerView:(id)arg1; +- (void)changeFont:(id)arg1; +- (void)_setOtherColor:(id)arg1 forPopup:(id)arg2; +- (void)_setColor:(id)arg1 forPopup:(id)arg2; +- (void)_updateExampleTextView; +- (void)_updateColorList; +- (void)colorQuotesButtonClicked:(id)arg1; +- (void)colorPopupChanged:(id)arg1; +- (void)_colorPicked:(id)arg1; +@property(retain) NSArray *colorList; // @synthesize colorList=_colorList; +@property BOOL isPlainTextOfFixedWidth; // @synthesize isPlainTextOfFixedWidth=_isPlainTextOfFixedWidth; +@property BOOL isQuotedTextColored; // @synthesize isQuotedTextColored=_isQuotedTextColored; +@property(retain) NSFont *fixedWidthFont; // @synthesize fixedWidthFont=_fixedWidthFont; +@property(retain) NSFont *noteFont; // @synthesize noteFont=_noteFont; +@property(retain) NSFont *messageFont; // @synthesize messageFont=_messageFont; +@property(retain) NSFont *messageListFont; // @synthesize messageListFont=_messageListFont; + +// Remaining properties +@property(readonly) NSFont *mailboxListSampleFont; // @dynamic mailboxListSampleFont; + +@end + diff --git a/MailHeaders/Lion/Mail/FullScreenModalCapableWindow.h b/MailHeaders/Lion/Mail/FullScreenModalCapableWindow.h new file mode 100644 index 00000000..5737924d --- /dev/null +++ b/MailHeaders/Lion/Mail/FullScreenModalCapableWindow.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSWindow.h" + +@class NSResponder, WindowTransformAnimation; + +@interface FullScreenModalCapableWindow : NSWindow +{ + WindowTransformAnimation *_windowTransformAnimation; + NSResponder *_nextFirstResponder; + BOOL _disableFrameConstraint; + BOOL _hasTransform; + BOOL _isModal; + BOOL _shouldNotSaveFrame; +} + +- (void)dealloc; +- (BOOL)makeFirstResponder:(id)arg1; +- (struct CGRect)constrainFrameRect:(struct CGRect)arg1 toScreen:(id)arg2; +- (void)orderOut:(id)arg1; +- (void)saveFrameUsingName:(id)arg1; +- (void)orderFront:(id)arg1; +- (void)makeKeyAndOrderFront:(id)arg1; +- (void)makeKeyAndOrderFrontForAnimation; +- (BOOL)canEnterFullScreenMode; +- (BOOL)isMainWindow; +- (void)setTransformForAnimation:(struct CGAffineTransform)arg1 anchorPoint:(struct CGPoint)arg2; +- (void)setIdentityTransform; +@property BOOL shouldNotSaveFrame; // @synthesize shouldNotSaveFrame=_shouldNotSaveFrame; +@property BOOL isModal; // @synthesize isModal=_isModal; +@property(retain) NSResponder *nextFirstResponder; // @synthesize nextFirstResponder=_nextFirstResponder; +@property BOOL disableFrameConstraint; // @synthesize disableFrameConstraint=_disableFrameConstraint; +@property WindowTransformAnimation *windowTransformAnimation; // @synthesize windowTransformAnimation=_windowTransformAnimation; + +@end + diff --git a/MailHeaders/Lion/Mail/FullScreenWindowController.h b/MailHeaders/Lion/Mail/FullScreenWindowController.h new file mode 100644 index 00000000..a62d0c3b --- /dev/null +++ b/MailHeaders/Lion/Mail/FullScreenWindowController.h @@ -0,0 +1,65 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSAnimationDelegate-Protocol.h" + +@class CALayer, MailWindowShadowLayer, MessageViewer, ModalDimmingWindow, NSWindow; + +@interface FullScreenWindowController : NSObject +{ + ModalDimmingWindow *_modalDimmingWindow; + id _modalWindowDelegate; + MessageViewer *_messageViewer; + NSWindow *_coverExitAnimationWindow; + CALayer *_mainWindowAnimationLayer; + CALayer *_modalWindowAnimationLayer; + MailWindowShadowLayer *_mainShadowLayer; + MailWindowShadowLayer *_modalShadowLayer; + struct CGImage *_mainWindowNonFullScreenSnapshot; + struct CGImage *_modalWindowNonFullScreenSnapshot; + BOOL _isPerformingAnimation; +} + ++ (BOOL)preventCreationOfEditorOfClass:(Class)arg1 withType:(unsigned long long)arg2; ++ (BOOL)preventCreationOfViewerOfClass:(Class)arg1; ++ (BOOL)isFrontmostMessageViewerInFullScreen; +- (id)initWithMessageViewer:(id)arg1; +- (void)dealloc; +- (id)_parentWindow; +- (BOOL)_isFullScreen; +- (void)closeModalWindowForcibly:(BOOL)arg1 animate:(BOOL)arg2; +- (void)closeModalWindowForcibly:(BOOL)arg1 animate:(BOOL)arg2 animationType:(long long)arg3; +- (void)presentModalWindowWithDelegate:(id)arg1; +- (void)prepareWindowForFullScreen:(id)arg1; +- (void)_prepareModalWindowForNonFullScreen; +- (BOOL)isModalWindowPresent; +- (struct CGRect)modalWindowRectWithParentWindow:(id)arg1; +- (void)_modalWindowWillClose:(id)arg1; +- (void)_closeModalWindow; +- (void)_cleanUpAfterModalWindowClose; +- (void)_setupDimmingWindow; +- (void)willAttachModalWindowWithDelegate:(id)arg1; +- (void)attachModalWindowWithDelegate:(id)arg1; +- (void)finishedReplyAnimation; +- (id)_operationNameForAnimationType:(long long)arg1; +- (void)_openAnimationFinished; +- (void)_animationDidEndOrStop:(id)arg1; +- (BOOL)animationShouldStart:(id)arg1; +- (void)animationDidStop:(id)arg1; +- (void)animationDidEnd:(id)arg1; +- (void)_closeAnimationFinished; +- (struct CGImage *)_newModalWindowSnapshot; +- (id)prepareExitAnimation; +- (void)_animateMainWindow; +- (void)_animateModalWindow; +- (void)startExitAnimationWithDuration:(double)arg1; +- (void)_exitAnimationFinished; +@property(readonly) BOOL isPerformingAnimation; // @synthesize isPerformingAnimation=_isPerformingAnimation; + +@end + diff --git a/MailHeaders/Lion/Mail/GeneralPreferences.h b/MailHeaders/Lion/Mail/GeneralPreferences.h new file mode 100644 index 00000000..1a3479cd --- /dev/null +++ b/MailHeaders/Lion/Mail/GeneralPreferences.h @@ -0,0 +1,48 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +@class DefaultApplicationPopUpButton, NSButton, NSPopUpButton, SoundPopUpButton; + +@interface GeneralPreferences : NSPreferencesModule +{ + NSPopUpButton *_fetchFrequencyPopup; + SoundPopUpButton *_newMailSoundPopup; + NSButton *_playMailSoundsCheckbox; + NSPopUpButton *_dockBadgePopup; + DefaultApplicationPopUpButton *_defaultMailClientPopUp; + NSButton *_indexDecryptedMessagesButton; + NSButton *_indexTrashButton; + NSButton *_indexJunkButton; + NSPopUpButton *_downloadFolderPopup; + NSPopUpButton *_addInvitationsPopup; + NSPopUpButton *_attachmentDeletionPopup; +} + +- (BOOL)isResizable; +- (void)_updateAddInvitationsPopup; +- (void)_addInvitationsBehaviorChanged:(id)arg1; +- (void)_setupDockCountPopup; +- (void)awakeFromNib; +- (void)dealloc; +- (id)titleForIdentifier:(id)arg1; +- (id)windowTitle; +- (void)initializeFromDefaults; +- (void)fetchFrequencyChanged:(id)arg1; +- (void)indexDecryptedMessagesButtonClicked:(id)arg1; +- (void)indexTrashButtonClicked:(id)arg1; +- (void)indexJunkButtonClicked:(id)arg1; +- (void)newMailSoundDidChange:(id)arg1; +- (id)titleForSoundFile:(id)arg1; +- (void)playSoundsClicked:(id)arg1; +- (void)dockBadgePopupChanged:(id)arg1; +- (void)chooseNewDownloadFolder:(id)arg1; +- (void)addInvitationsPopupChanged:(id)arg1; +- (void)attachmentDeletionPopupChanged:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/GenericAttachmentFetcher.h b/MailHeaders/Lion/Mail/GenericAttachmentFetcher.h new file mode 100644 index 00000000..0cd8ed7e --- /dev/null +++ b/MailHeaders/Lion/Mail/GenericAttachmentFetcher.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSMutableSet; + +@interface GenericAttachmentFetcher : NSObject +{ + NSArray *_attachments; + NSMutableSet *_attachmentsBeingDownloaded; +} + +- (void)dealloc; +- (void)finalize; +- (id)initWithAttachments:(id)arg1; +- (id)init; +- (void)_downloadCompleted:(id)arg1; +- (void)beginBackgroundLoad; +- (void)cancelBackgroundLoad; +- (id)downloadedAttachments; +- (void)_saveAttachments:(id)arg1 itemManager:(id)arg2; +- (void)beginSaveOfAttachments:(id)arg1 toTemporaryFolderWithName:(id)arg2 taskName:(id)arg3; +- (void)didFinishBackgroundLoadOfAttachment:(id)arg1; +- (void)downloadedAllAttachments; +- (void)didSaveAttachments:(id)arg1 paths:(id)arg2; +- (void)didSaveAttachment:(id)arg1 toPath:(id)arg2; +- (double)temporaryFolderTimeout; + +@end + diff --git a/MailHeaders/Lion/Mail/HeaderAttachmentsController.h b/MailHeaders/Lion/Mail/HeaderAttachmentsController.h new file mode 100644 index 00000000..ae6cd200 --- /dev/null +++ b/MailHeaders/Lion/Mail/HeaderAttachmentsController.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MessageHeaderDisplay, MessageHeaderView, NSArray, NSButton, NSControl; + +@interface HeaderAttachmentsController : NSObject +{ + MessageHeaderView *_headerView; + NSArray *_attachments; + NSControl *_saveButton; + NSButton *_quickLookButton; + MessageHeaderDisplay *_parentController; + id _delegate; +} + +- (void)dealloc; +- (void)display:(id)arg1; +- (void)prepareToRemoveView; +- (void)_saveAllAttachmentsWithoutPrompting:(id)arg1; +- (void)_saveAllAttachments:(id)arg1; +- (void)_saveAttachment:(id)arg1; +- (void)_doQuickLook:(id)arg1; +- (void)_addAttachmentsToIPhoto:(id)arg1; +- (BOOL)_canAddAttachmentToIPhoto; +- (void)_configureSaveMenu:(id)arg1; +- (void)_saveButtonWillPopUp:(id)arg1; +- (void)_clearSaveButtonMenu; +- (void)_configureButtons; +- (id)_attributedStringForButtonTitle:(id)arg1; +- (void)_setQuickLookButtonTitle:(id)arg1; +- (struct CGRect)attachmentsButtonsFrame; +- (void)saveAllAttachments:(id)arg1; +@property id delegate; // @synthesize delegate=_delegate; +@property(retain) NSArray *attachments; // @synthesize attachments=_attachments; +@property MessageHeaderView *headerView; // @synthesize headerView=_headerView; + +@end + diff --git a/MailHeaders/Lion/Mail/HeadersEditor.h b/MailHeaders/Lion/Mail/HeadersEditor.h new file mode 100644 index 00000000..3735b77e --- /dev/null +++ b/MailHeaders/Lion/Mail/HeadersEditor.h @@ -0,0 +1,124 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "AccountStatusDataSourceDelegate-Protocol.h" + +@class AccountStatusDataSource, AddressTextField, CompletionController, ComposeHeaderView, DraggingTextView, MailDocumentEditor, NSMutableArray, NSPopUpButton, NSSegmentedControl, NSTextField; + +@interface HeadersEditor : NSObject +{ + MailDocumentEditor *_documentEditor; + CompletionController *_completionController; + ComposeHeaderView *_composeHeaderView; + NSPopUpButton *_fromPopup; + NSPopUpButton *_signaturePopup; + NSPopUpButton *_priorityPopup; + NSSegmentedControl *_signButton; + NSSegmentedControl *_encryptButton; + AccountStatusDataSource *_deliveryASDS; + NSPopUpButton *_deliveryPopUp; + AddressTextField *_toField; + AddressTextField *_ccField; + NSTextField *_subjectField; + AddressTextField *_bccField; + AddressTextField *_replyToField; + DraggingTextView *_addressFieldEditor; + NSMutableArray *_accessoryViewOwners; + BOOL _chatShouldBeEnabled; + BOOL _hasChanges; +} + ++ (id)keyPathsForValuesAffectingDeliveryAccount; +- (void)awakeFromNib; +- (void)setUpFieldsAndButtons; +- (void)finishSetUp; +- (void)setAGoodFirstResponder; +- (void)configureButtonsAndPopUps; +- (void)initializePriorityPopUp; +- (void)composePrefsChanged; +- (void)_mailAccountsDidChange:(id)arg1; +- (void)_accountInfoDidChange:(id)arg1; +- (void)windowDidBecomeKey:(id)arg1; +- (void)windowDidResignKey:(id)arg1; +- (id)windowWillReturnFieldEditor:(id)arg1 toObject:(id)arg2; +- (void)updatePriorityPopUpMakeActive:(BOOL)arg1; +- (void)updateSecurityControls; +- (void)_updateSecurityStateInBackgroundForRecipients:(id)arg1 sender:(id)arg2; +- (void)_toggleSignButtonImages; +- (void)_updateSignButtonTooltip; +- (void)_toggleEncrypButtonImages; +- (void)_updateEncryptButtonTooltip; +- (void)_updateFromAndSignatureControls:(id)arg1; +- (void)updateSignatureControlOverridingExistingSignature:(BOOL)arg1; +- (void)updateDeliveryAccountControl:(id)arg1; +- (void)_configureDeliveryPopupButton; +- (double)deliveryPopUpSizeToFitWidth; +- (void)updateCcOrBccMyselfFieldWithSender:(id)arg1 oldSender:(id)arg2; +- (void)updatePresenceButtonState; +- (void)presenceChanged:(id)arg1; +- (void)presencePreferenceChanged:(id)arg1; +- (void)_updatePresenceButtonStateForAddresses:(id)arg1; +- (void)webViewDidLoadStationery:(id)arg1; +- (void)_setupAddressField:(id)arg1; +- (void)_setupField:(id)arg1 withAddressesForKey:(id)arg2 visibleSelector:(SEL)arg3; +- (void)_configureTextField:(id)arg1 isAddressField:(BOOL)arg2; +- (id)fieldForHeader:(id)arg1; +- (id)_headerKeyForView:(id)arg1; +- (void)enableCompletion:(BOOL)arg1 forTextField:(id)arg2; +- (void)loadHeadersFromBackEnd:(id)arg1; +- (void)_textFieldBeganOrEndedEditing:(id)arg1; +- (void)recipientsDidChange:(id)arg1; +- (void)_subjectChanged; +- (void)_addressFieldChanged; +- (BOOL)_headerFieldIsNonEmpty:(id)arg1; +- (void)setHeaders:(id)arg1; +- (void)appendAddresses:(id)arg1 toHeader:(id)arg2; +- (void)setInlineSpellCheckingEnabled:(BOOL)arg1; +- (void)setCheckGrammarWithSpelling:(BOOL)arg1; +- (void)turnOffEncryption; +- (void)changeSignatureFrom:(id)arg1 to:(id)arg2; +- (BOOL)messageIsToBeSigned; +- (BOOL)messageIsToBeEncrypted; +- (BOOL)messageHasRecipients; +- (BOOL)canSignFromAnyAccount; +- (BOOL)chatShouldBeEnabled; +- (BOOL)isOkayToSaveMessage:(id)arg1; +- (void)editServerList:(id)arg1 selectedAccount:(id)arg2; +- (void)toggleAccountLock:(id)arg1; +- (void)setSelectedAccount:(id)arg1; +- (id)deliveryAccount; +- (void)_setDynamicDeliveryAccountForAccount:(id)arg1; +- (void)setDeliveryAccount:(id)arg1; +- (id)mailAccount; +- (void)accountStatusDidChange:(id)arg1; +- (void)changeHeaderField:(id)arg1; +- (void)changeFromHeader:(id)arg1; +- (void)setMessagePriority:(id)arg1; +- (void)securityControlChanged:(id)arg1; +- (void)_updateEncryptButtonInBackground; +- (void)_recipientsWithoutKeysSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)chatWithRecipients:(id)arg1; +- (void)editSignatures:(id)arg1; +- (void)changeSignature:(id)arg1; +- (void)composeHeaderViewWillBeginCustomization:(id)arg1; +- (void)composeHeaderViewDidEndCustomization:(id)arg1; +- (BOOL)headerCustomizationIsInProgress; +- (void)addCcHeader:(id)arg1; +- (void)addBccHeader:(id)arg1; +- (void)addReplyToHeader:(id)arg1; +- (void)_clearFieldIfHidden:(id)arg1; +- (void)prepareToCloseWindow; +- (void)dealloc; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateToolbarItem:(id)arg1; +- (id)_newSenderMarkupStringIncludeBrackets:(BOOL)arg1; +@property BOOL hasChanges; // @synthesize hasChanges=_hasChanges; + +@end + diff --git a/MailHeaders/Lion/Mail/HyperlinkEditor.h b/MailHeaders/Lion/Mail/HyperlinkEditor.h new file mode 100644 index 00000000..bbf9b81d --- /dev/null +++ b/MailHeaders/Lion/Mail/HyperlinkEditor.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class DOMHTMLAnchorElement, DOMNode, EditingMessageWebView, NSButton, NSString, NSTextField; + +@interface HyperlinkEditor : NSObject +{ + NSTextField *_linkTextField; + NSButton *_okButton; + NSButton *_removeButton; + EditingMessageWebView *_webView; + id _delegate; + DOMHTMLAnchorElement *_selectedAnchor; + DOMNode *_selectionContents; + NSString *_replacementLink; +} + +- (void)dealloc; +- (id)initForWebView:(id)arg1 delegate:(id)arg2; +- (void)editLink; +- (void)removeSelectedLink; +- (void)orderOutPanel:(id)arg1; +- (void)controlTextDidChange:(id)arg1; +- (void)_sheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_setReplacementLink:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/IMAPAccountDetails.h b/MailHeaders/Lion/Mail/IMAPAccountDetails.h new file mode 100644 index 00000000..b0065438 --- /dev/null +++ b/MailHeaders/Lion/Mail/IMAPAccountDetails.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "AccountDetails.h" + +@class NSButton, NSPopUpButton, NSTextField; + +@interface IMAPAccountDetails : AccountDetails +{ + NSButton *_compactWhenClosing; + NSPopUpButton *_messageCaching; + NSTextField *_serverPathPrefix; + BOOL _warnedAboutCachingAndIndexing; + NSButton *_useIDLECommand; +} + +- (void)dealloc; +- (Class)accountClass; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (void)setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)didDisplayTabViewItem:(id)arg1; +- (void)_confirmCacheChangeSheetEnded:(id)arg1 alertReturn:(long long)arg2 context:(void *)arg3; +- (void)cachePolicyChanged:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/IMAPAccountSpecialMailboxes.h b/MailHeaders/Lion/Mail/IMAPAccountSpecialMailboxes.h new file mode 100644 index 00000000..3255c97b --- /dev/null +++ b/MailHeaders/Lion/Mail/IMAPAccountSpecialMailboxes.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "RemoteStoreAccountSpecialMailboxes.h" + +@class NSButton; + +@interface IMAPAccountSpecialMailboxes : RemoteStoreAccountSpecialMailboxes +{ + NSButton *_trashCheckbox; + BOOL _moveDeletedMessagesToTrash; +} + +- (id)init; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (BOOL)setupAccountFromValuesInUI:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +@property(nonatomic) BOOL moveDeletedMessagesToTrash; // @synthesize moveDeletedMessagesToTrash=_moveDeletedMessagesToTrash; + +@end + diff --git a/MailHeaders/Lion/Mail/IMAPMailboxes.h b/MailHeaders/Lion/Mail/IMAPMailboxes.h new file mode 100644 index 00000000..55f6cde5 --- /dev/null +++ b/MailHeaders/Lion/Mail/IMAPMailboxes.h @@ -0,0 +1,75 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "AccountInfoTabOwner-Protocol.h" +#import "NSOutlineViewDataSource-Protocol.h" +#import "NSOutlineViewDelegate-Protocol.h" + +@class ActivityMonitor, IMAPAccount, IMAPGateway, InvocationQueue, NSArray, NSButton, NSImageView, NSOutlineView, NSPredicate, NSProgressIndicator, NSSearchField, NSTextField, NSView; + +@interface IMAPMailboxes : NSObject +{ + NSView *_mailboxesView; + NSSearchField *_searchField; + NSOutlineView *_mailboxesOutline; + NSButton *_subscribeButton; + NSButton *_unsubscribeButton; + NSProgressIndicator *_fetchProgressIndicator; + NSTextField *_fetchStatusField; + NSImageView *_statusImageView; + IMAPAccount *_account; + IMAPGateway *_gateway; + NSPredicate *_predicate; + NSArray *_mailboxes; + NSArray *_filteredMailboxes; + ActivityMonitor *_mailboxListMonitor; + InvocationQueue *_subscribeQueue; +} + +- (id)init; +- (void)dealloc; +- (id)_alertIcon; +- (void)_updateUIForOnlineState:(id)arg1; +- (void)setUIEnabled:(BOOL)arg1; +- (void)_setupNotifications; +- (void)setupUIWithAccount:(id)arg1; +- (void)_mailboxFetchCompleted:(id)arg1 forAccount:(id)arg2; +- (id)_recursivelyCreateMailboxEntriesForList:(id)arg1 subscribedList:(id)arg2 inLocalPath:(id)arg3 remotePath:(id)arg4 forAccount:(id)arg5; +- (void)_fetchMailboxListingForAccount:(id)arg1; +- (id)view; +- (void)_startSubscriptionRequest; +- (void)_reallyStartSubscriptionRequest:(id)arg1; +- (void)_stopSubscriptionRequest:(id)arg1; +- (void)_reallyStopSubscriptionRequest:(id)arg1 refreshList:(id)arg2; +- (void)_handleSubscriptionRequest:(BOOL)arg1 forItem:(id)arg2 refreshSet:(id)arg3 recursive:(BOOL)arg4; +- (void)_handleSubscriptionRequest:(BOOL)arg1; +- (void)subscribeButtonClicked:(id)arg1; +- (void)unsubscribeButtonClicked:(id)arg1; +- (void)filterMailboxList:(id)arg1; +- (void)_clearFilteredMailboxes; +- (void)_clearFilteredMailboxes:(id)arg1; +- (id)predicate; +- (id)_mailboxEntryForPath:(id)arg1; +- (id)_mailboxEntryForMailboxUid:(id)arg1; +- (void)_updateEntryTreeForChangedEntry:(id)arg1 oldValue:(BOOL)arg2; +- (void)_reallySetSubscribedState:(BOOL)arg1 forMailboxPath:(id)arg2 parentUid:(id)arg3 account:(id)arg4 refreshListing:(BOOL)arg5; +- (void)_reallySetSubscribedState:(id)arg1 parentUid:(id)arg2 account:(id)arg3 forMailboxPath:(id)arg4; +- (void)_setSubscribedState:(BOOL)arg1 forMailboxPath:(id)arg2 parentUid:(id)arg3; +- (void)_handleError:(id)arg1 settingSubscribedState:(id)arg2 forMailboxPath:(id)arg3 account:(id)arg4; +- (id)outlineView:(id)arg1 child:(long long)arg2 ofItem:(id)arg3; +- (BOOL)outlineView:(id)arg1 isItemExpandable:(id)arg2; +- (long long)outlineView:(id)arg1 numberOfChildrenOfItem:(id)arg2; +- (id)outlineView:(id)arg1 objectValueForTableColumn:(id)arg2 byItem:(id)arg3; +- (void)outlineView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (BOOL)outlineView:(id)arg1 shouldSelectItem:(id)arg2; +- (void)outlineView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 byItem:(id)arg4; +- (void)accountInfoWillHideView:(id)arg1; +- (void)accountInfoWillShowView:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/IMAPQuota.h b/MailHeaders/Lion/Mail/IMAPQuota.h new file mode 100644 index 00000000..911c2849 --- /dev/null +++ b/MailHeaders/Lion/Mail/IMAPQuota.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "RemoteStoreQuota.h" + +@class NSPopUpButton, NSTextField, NSView, QuotaBar; + +@interface IMAPQuota : RemoteStoreQuota +{ + NSPopUpButton *_quotaPopup; + NSTextField *_quotaPopupLabel; + NSView *_quotaContainerView; + QuotaBar *_quotaBar; + NSTextField *_capacityField; + NSTextField *_statusField; + double _spaceUnderQuotaPopup; +} + +- (id)initWithAccount:(id)arg1; +- (void)awakeFromNib; +- (void)dealloc; +- (Class)engineClass; +- (BOOL)tableShouldIncludeMailbox:(id)arg1; +- (void)quotaPopupChanged:(id)arg1; +- (id)_selectedQuotaName; +- (void)_updateQuotaBarWithSize:(unsigned long long)arg1 maxSize:(unsigned long long)arg2 count:(long long)arg3 maxCount:(long long)arg4; +- (void)_updateStatusField; +- (void)_engineStatusChanged:(id)arg1; +- (void)_updateQuotaPopupWithQuotaNames:(id)arg1; +- (void)engineDidFinish; +- (void)engineUpdated:(id)arg1; +- (void)_updateUIForQuotaName:(id)arg1 updateTable:(BOOL)arg2; +- (id)_stringForSize:(unsigned long long)arg1 andCount:(long long)arg2 isCapacity:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Lion/Mail/IOErrorWindowDelegate.h b/MailHeaders/Lion/Mail/IOErrorWindowDelegate.h new file mode 100644 index 00000000..6848afb2 --- /dev/null +++ b/MailHeaders/Lion/Mail/IOErrorWindowDelegate.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "DynamicErrorWindowDelegate-Protocol.h" + +@interface IOErrorWindowDelegate : NSObject +{ +} + +- (BOOL)displayIndeterminateProgress; +- (id)errorMessageForErrorDiagnosis:(long long)arg1; +- (id)errorDescriptionForErrorDiagnosis:(long long)arg1; +- (id)leftButtonTextForErrorDiagnosis:(long long)arg1; +- (id)rightButtonTextForErrorDiagnosis:(long long)arg1; +- (unsigned long long)helpTopicForDiagnosis:(long long)arg1; +- (void)leftActionSelectedWithDiagnosis:(long long)arg1; +- (void)rightActionSelectedWithDiagnosis:(long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/ImagePopUpButtonCell.h b/MailHeaders/Lion/Mail/ImagePopUpButtonCell.h new file mode 100644 index 00000000..9e30bc11 --- /dev/null +++ b/MailHeaders/Lion/Mail/ImagePopUpButtonCell.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPopUpButtonCell.h" + +@class NSImage; + +@interface ImagePopUpButtonCell : NSPopUpButtonCell +{ + NSImage *_image; + NSImage *_alternateImage; + NSImage *_inactiveImage; +} + +- (void)dealloc; +- (double)_extraWidthForCellHeight:(double)arg1; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)drawBorderAndBackgroundWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)setImage:(id)arg1; +- (id)image; +- (void)setAlternateImage:(id)arg1; +- (id)alternateImage; +- (void)setInactiveImage:(id)arg1; +- (id)inactiveImage; + +@end + diff --git a/MailHeaders/Lion/Mail/ImageResizer.h b/MailHeaders/Lion/Mail/ImageResizer.h new file mode 100644 index 00000000..5a6d81ab --- /dev/null +++ b/MailHeaders/Lion/Mail/ImageResizer.h @@ -0,0 +1,52 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ActivityMonitor, NSData, NSString; + +@interface ImageResizer : NSObject +{ + NSData *_sourceData; + NSString *_sourceFilename; + unsigned int _sourceFileType; + id _representedObject; + struct CGRect _maxBounds; + unsigned long long _maxFileBytes; + struct CGSize _sourceSize; + struct CGSize _destSize; + NSString *_resultUTI; + NSData *_resultData; + ActivityMonitor *_monitor; +} + ++ (void)initialize; ++ (BOOL)isFileResizableImage:(id)arg1; ++ (struct CGSize)scaleSize:(struct CGSize)arg1 toFitSize:(struct CGSize)arg2; ++ (struct CGSize)scaleSize:(struct CGSize)arg1 toContainSize:(struct CGSize)arg2; +- (id)initWithImageData:(id)arg1 sourceFilename:(id)arg2 sourceFileType:(unsigned int)arg3; +- (id)init; +- (void)dealloc; +- (id)representedObject; +- (void)setRepresentedObject:(id)arg1; +- (struct CGSize)maxImageSize; +- (void)setMaxImageSize:(struct CGSize)arg1; +- (unsigned long long)maxFileBytes; +- (void)setMaxFileBytes:(unsigned long long)arg1; +- (id)sourceFilename; +- (void)resizeImage; +- (BOOL)isResizing; +- (void)cancel; +- (id)resultFileExtension; +- (unsigned int)resultFileType; +- (struct CGSize)resultImageSize; +- (void)_didFinishResizingWithResultCode:(int)arg1; +- (void)_resizeImage; +@property(retain, nonatomic) NSString *resultUTI; // @synthesize resultUTI=_resultUTI; +@property(retain, nonatomic) NSData *resultImageData; // @synthesize resultImageData=_resultData; + +@end + diff --git a/MailHeaders/Lion/Mail/ImportAssistant.h b/MailHeaders/Lion/Mail/ImportAssistant.h new file mode 100644 index 00000000..6afaf758 --- /dev/null +++ b/MailHeaders/Lion/Mail/ImportAssistant.h @@ -0,0 +1,76 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "Assistant.h" + +@class EmailImporter, NSArray, NSDictionary, NSMatrix, NSMutableArray, NSProgressIndicator, NSTabView, NSTableView, NSTextField, NSView; + +@interface ImportAssistant : Assistant +{ + NSView *_topView; + NSTabView *_tabView; + NSMatrix *_importClients; + NSTextField *_explanatoryTextInImportClientTab; + NSProgressIndicator *_progressWheelInImportClientTab; + NSTextField *_statusLineInImportClientTab; + NSMatrix *_importTypes; + NSTextField *_explanatoryText; + NSProgressIndicator *_progressWheel; + NSTextField *_statusLine; + NSTableView *_tableView; + NSProgressIndicator *_progressBar; + NSTextField *_textFieldAbove; + NSTextField *_textFieldBelow; + NSTextField *_importFinished; + NSArray *_clients; + NSDictionary *_client; + int _currentTab; + EmailImporter *_importer; + NSMutableArray *_importers; + NSMutableArray *_startingImporters; + double _currentTime; + double _referenceTime; +} + +- (id)initWithAssistentManager:(id)arg1; +- (void)dealloc; +- (id)windowTitle; +- (void)start; +- (BOOL)shouldStop; +- (void)stop; +- (void)goForward; +- (void)goBackward; +- (void)importClientSelected:(id)arg1; +- (void)createNewImporter; +- (void)runImporter; +- (void)presentAlertSheetWithString:(id)arg1; +- (void)moveToTab:(int)arg1; +- (void)importFinished; +- (void)askForMailboxLocation; +- (void)askForMailboxLocationAllowedFileTypes:(id)arg1 allowsMultipleSelection:(BOOL)arg2; +- (void)setStatusLine:(id)arg1; +- (void)clearStatusLine; +- (void)updateTextField:(id)arg1 withValue:(id)arg2; +- (void)setTextFieldAbove:(id)arg1; +- (void)setTextFieldBelow:(id)arg1; +- (void)setExplanatoryText:(id)arg1; +- (void)reloadTableView; +- (void)initializeProgressIndicator; +- (void)_updateProgressIndicatorByValue:(id)arg1; +- (void)_updateProgressIndicatorToValue:(id)arg1; +- (void)_setProgressStartOnItem:(id)arg1; +- (void)updateProgressIndicatorWithFraction:(double)arg1 ofItem:(id)arg2; +- (void)updateProgressIndicatorWithItem:(id)arg1; +- (void)updateProgressIndicatorByValue:(double)arg1; +- (BOOL)shouldUpdateTextFields; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/ImportItem.h b/MailHeaders/Lion/Mail/ImportItem.h new file mode 100644 index 00000000..aec8dbc7 --- /dev/null +++ b/MailHeaders/Lion/Mail/ImportItem.h @@ -0,0 +1,48 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString; + +@interface ImportItem : NSObject +{ + BOOL _isEnabled; + NSString *_displayName; + double _progressValue; + double _progressStart; + NSString *_fullPath; + NSString *_relativePath; + long long _itemCount; + id _identifier; + long long _subfolderCount; + id _importFields; +} + +- (void)dealloc; +- (BOOL)isEnabled; +- (void)setIsEnabled:(BOOL)arg1; +- (id)displayName; +- (void)setDisplayName:(id)arg1; +- (double)progressValue; +- (void)setProgressValue:(double)arg1; +- (double)progressStart; +- (void)setProgressStart:(double)arg1; +- (id)fullPath; +- (void)setFullPath:(id)arg1; +- (id)relativePath; +- (void)setRelativePath:(id)arg1; +- (long long)itemCount; +- (void)setItemCount:(long long)arg1; +- (id)identifier; +- (void)setIdentifier:(id)arg1; +- (long long)subfolderCount; +- (void)setSubfolderCount:(long long)arg1; +- (id)importFields; +- (void)setImportFields:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/Importer.h b/MailHeaders/Lion/Mail/Importer.h new file mode 100644 index 00000000..4b270c32 --- /dev/null +++ b/MailHeaders/Lion/Mail/Importer.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ImportAssistant, NSArray, NSMutableArray, NSString; + +@interface Importer : NSObject +{ + ImportAssistant *_delegate; + NSMutableArray *_importArray; + NSString *_applicationString; + NSArray *_importFields; + BOOL _importCanceled; +} + ++ (id)explanatoryText; ++ (id)name; +- (id)init; +- (id)name; +- (void)setDelegate:(id)arg1; +- (id)delegate; +- (id)importArray; +- (void)clearImportArray; +- (void)addItemToImportArray:(id)arg1; +- (long long)countOfEnabledItems; +- (BOOL)importCanceled; +- (void)setImportCanceled:(BOOL)arg1; +- (id)importFields; +- (void)setImportFields:(id)arg1; +- (void)sortArray:(id)arg1; +- (id)statusLine; +- (id)importFinishedText; +- (id)creatorCode; +- (void)cleanup; +- (id)prepareForImport; +- (void)performImport; +- (void)importFinished; +- (void)_runApplescript:(id)arg1 andReturnArray:(id)arg2; +- (id)runApplescript:(id)arg1; +- (id)arrayFromDescriptor:(id)arg1; +- (BOOL)setApplicationString; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Lion/Mail/InvitationAttachmentOpener.h b/MailHeaders/Lion/Mail/InvitationAttachmentOpener.h new file mode 100644 index 00000000..4969908c --- /dev/null +++ b/MailHeaders/Lion/Mail/InvitationAttachmentOpener.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "TemporaryAttachmentOpener.h" + +@interface InvitationAttachmentOpener : TemporaryAttachmentOpener +{ + BOOL _openImmediately; +} + +- (id)initWithAttachments:(id)arg1 openImmediately:(BOOL)arg2; +- (void)_saveAttachmentsToICalCaches:(id)arg1; +- (void)beginSaveOfAttachments:(id)arg1 toTemporaryFolderWithName:(id)arg2 taskName:(id)arg3; + +@end + diff --git a/MailHeaders/Lion/Mail/JunkPreferences.h b/MailHeaders/Lion/Mail/JunkPreferences.h new file mode 100644 index 00000000..8e2f4d75 --- /dev/null +++ b/MailHeaders/Lion/Mail/JunkPreferences.h @@ -0,0 +1,46 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "SyncableDataInterestedParty-Protocol.h" + +@class NSButton, NSColor, NSMatrix; + +@interface JunkPreferences : NSPreferencesModule +{ + NSButton *_advancedButton; + NSMatrix *_junkMailMode; + NSButton *_junkMailOnOffSwitch; + NSMatrix *_junkMailWhitelist; + long long _junkMailBehavior; +} + ++ (id)keyPathsForValuesAffectingLabelColor; ++ (id)keyPathsForValuesAffectingIsEnabled; ++ (id)keyPathsForValuesAffectingIsAdvancedEnabled; +- (void)moduleWillBeRemoved; +- (void)moduleWasInstalled; +- (BOOL)isResizable; +- (void)_messageRuleChanged:(id)arg1; +- (id)titleForIdentifier:(id)arg1; +- (id)windowTitle; +- (id)imageForPreferenceNamed:(id)arg1; +- (BOOL)dataWillBeSynced; +- (void)dataWasSynced; +@property(readonly) NSColor *labelColor; +- (void)initializeFromDefaults; +- (void)junkMailToggled:(id)arg1; +- (void)whitelistChanged:(id)arg1; +@property long long junkMailBehavior; +@property(readonly) BOOL isEnabled; +@property(readonly) BOOL isAdvancedEnabled; +- (void)changeJunkMailBehavior:(id)arg1; +- (void)resetJunkMailMap:(id)arg1; +- (void)showCustomJunkMailSettings:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/LDAPServer.h b/MailHeaders/Lion/Mail/LDAPServer.h new file mode 100644 index 00000000..e4486b20 --- /dev/null +++ b/MailHeaders/Lion/Mail/LDAPServer.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSNumber, NSString; + +@interface LDAPServer : NSObject +{ + NSString *_searchBase; + NSString *_serverAddress; + NSNumber *_port; + NSString *_entryName; + NSNumber *_enabled; + NSString *_uid; + int _scope; +} + +- (id)initWithDescription:(id)arg1 serverAddress:(id)arg2 searchBase:(id)arg3 enabled:(id)arg4 port:(int)arg5 scope:(int)arg6 uid:(id)arg7; +- (id)init; +- (void)dealloc; +- (id)description; +- (id)objectSpecifier; +- (id)serverAddress; +- (void)setServerAddress:(id)arg1; +- (id)searchBase; +- (void)setSearchBase:(id)arg1; +- (id)entryName; +- (void)setEntryName:(id)arg1; +- (BOOL)oldIsActive; +- (void)setOldIsActive:(BOOL)arg1; +- (BOOL)enabled; +- (void)setEnabled:(BOOL)arg1; +- (id)uid; +- (id)port; +- (void)setPort:(id)arg1; +- (int)scope; +- (void)setScope:(int)arg1; +- (int)scopeForInt:(int)arg1; +- (int)intForScope:(int)arg1; +- (void)_updateLDAPServers; + +@end + diff --git a/MailHeaders/Lion/Mail/LabelledTextAttachmentCell.h b/MailHeaders/Lion/Mail/LabelledTextAttachmentCell.h new file mode 100644 index 00000000..0a35b123 --- /dev/null +++ b/MailHeaders/Lion/Mail/LabelledTextAttachmentCell.h @@ -0,0 +1,72 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextAttachmentCell.h" + +@class NSColor, NSImage, NSMutableAttributedString, NSString, NSView; + +@interface LabelledTextAttachmentCell : NSTextAttachmentCell +{ + NSMutableAttributedString *_attrString; + NSImage *_image; + NSImage *_dimmedImage; + NSColor *_highlightedColor; + NSString *_label; + unsigned int _linkState:2; + unsigned int _isDisplayingLabel:1; + unsigned int _drawWithBorder:1; + double _maxWidth; + NSView *_containingView; + struct CGRect _attachmentDrawingRect; + struct CGSize _fixedSize; + BOOL _sizeIsFixed; +} + +- (id)controlView; +- (void)setControlView:(id)arg1; +- (id)labelFont; +- (id)labelColor; +- (id)initWithTextAttachment:(id)arg1; +- (void)dealloc; +- (id)label; +- (void)setLabel:(id)arg1; +- (id)image; +- (void)setImage:(id)arg1; +- (BOOL)isDisplayingLabel; +- (void)setIsDisplayingLabel:(BOOL)arg1; +- (id)attributedString; +- (void)_makeString; +- (void)_discardDimmedImage; +- (id)_dimmedImage; +- (void)setAttachment:(id)arg1; +- (void)setDrawWithBorder:(BOOL)arg1; +- (void)setMaxWidth:(double)arg1; +- (struct CGSize)cellSize; +- (struct CGPoint)cellBaselineOffset; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2 characterIndex:(unsigned long long)arg3; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (BOOL)wantsToTrackMouse; +- (BOOL)wantsToTrackMouseForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3 atCharacterIndex:(unsigned long long)arg4; +- (BOOL)trackMouse:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3 atCharacterIndex:(unsigned long long)arg4 untilMouseUp:(BOOL)arg5; +- (BOOL)_trackLink:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3 atCharacterIndex:(long long)arg4; +- (void)resetCursorAndToolTipRect:(struct CGRect)arg1 inView:(id)arg2; +- (int)linkState; +- (void)setLinkState:(int)arg1; +- (id)highlightedColor; +- (void)setHighlightedWithColor:(id)arg1; +- (struct CGRect)_rectForImageInRect:(struct CGRect)arg1; +- (struct CGRect)_rectForLinkInRect:(struct CGRect)arg1; +- (struct CGRect)_quickLookRectForFrame:(struct CGRect)arg1; +- (id)_quickLookTransitionImage; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeNames; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityActionNames; +- (void)accessibilityPerformAction:(id)arg1; +- (void)_showMenu; + +@end + diff --git a/MailHeaders/Lion/Mail/LazyMenuSegmentedCell.h b/MailHeaders/Lion/Mail/LazyMenuSegmentedCell.h new file mode 100644 index 00000000..9f58403c --- /dev/null +++ b/MailHeaders/Lion/Mail/LazyMenuSegmentedCell.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSSegmentedCell.h" + +@class NSMutableDictionary; + +@interface LazyMenuSegmentedCell : NSSegmentedCell +{ + id _lazyMenuBlock; + NSMutableDictionary *_loadedMenus; +} + +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (void)setLazyMenuBlock:(id)arg1; +- (id)menuForSegment:(long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/LazySubmenuMenuItem.h b/MailHeaders/Lion/Mail/LazySubmenuMenuItem.h new file mode 100644 index 00000000..d35b7025 --- /dev/null +++ b/MailHeaders/Lion/Mail/LazySubmenuMenuItem.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMenuItem.h" + +@class NSMenu; + +@interface LazySubmenuMenuItem : NSMenuItem +{ + id _lazySubmenuBlock; + NSMenu *_loadedSubmenu; + BOOL _enableLoadedSubmenu; +} + +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (void)setLazySubmenuBlock:(id)arg1; +- (BOOL)hasSubmenu; +- (id)submenu; +- (BOOL)isEnabled; +- (void)setEnabled:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/LibraryImportAssistant.h b/MailHeaders/Lion/Mail/LibraryImportAssistant.h new file mode 100644 index 00000000..642cf7e0 --- /dev/null +++ b/MailHeaders/Lion/Mail/LibraryImportAssistant.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "Assistant.h" + +@class ActivityMonitor, NSButton, NSProgressIndicator, NSTextField, NSTimer, NSView; + +@interface LibraryImportAssistant : Assistant +{ + NSView *_introView; + NSView *_patienceView; + NSView *_doneView; + NSView *_errorView; + NSView *_recoveryIntroView; + NSTextField *_mailboxStatusField; + NSTextField *_messageStatusField; + NSTextField *_timeRemainingField; + NSProgressIndicator *_progressBar; + NSButton *_showNewFeaturesButton; + NSTextField *_newFeaturesTextField; + ActivityMonitor *_activityMonitor; + NSTimer *_updateTimer; + long long _state; + BOOL _importWasSuccessful; + BOOL _accountsAreNewlyCreated; +} + +- (id)initWithAssistentManager:(id)arg1; +- (void)dealloc; +- (void)setAccountsAreNewlyCreated:(BOOL)arg1; +- (void)start; +- (void)stop; +- (void)_permissionErrorSheetDone:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (BOOL)_checkAccountDirectoryPermissions; +- (void)goForward; +- (id)windowTitle; +- (void)updateProgress:(id)arg1; +- (double)runningAverageWithNewValue:(double)arg1; +- (id)formattedTimeForSeconds:(double)arg1; +- (void)synchronouslyDoTheImport; +- (void)showNewFeatures:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/LibraryUpgradeAssistant.h b/MailHeaders/Lion/Mail/LibraryUpgradeAssistant.h new file mode 100644 index 00000000..5d98a90a --- /dev/null +++ b/MailHeaders/Lion/Mail/LibraryUpgradeAssistant.h @@ -0,0 +1,51 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "Assistant.h" + +#import "LibraryUpgraderDelegate-Protocol.h" +#import "NSOpenSavePanelDelegate-Protocol.h" + +@class LibraryUpgrader, NSButton, NSTextField, NSView; + +@interface LibraryUpgradeAssistant : Assistant +{ + NSView *_introView; + NSView *_unresolvedAccountsView; + NSView *_complexMigrationView; + NSView *_patienceView; + NSView *_epilogueView; + NSView *_errorView; + NSButton *_showNewFeaturesButton; + NSButton *_chooseMigrationDestinationButton; + NSTextField *_migrationDestinationTextField; + NSTextField *_errorText; + LibraryUpgrader *_libraryUpgrader; + NSView *_currentView; + int _state; +} + +- (id)libraryUpgrader; +- (void)setLibraryUpgrader:(id)arg1; +- (id)initWithAssistentManager:(id)arg1; +- (void)dealloc; +- (id)windowTitle; +- (int)state; +- (void)setState:(int)arg1; +- (id)currentView; +- (void)setCurrentView:(id)arg1; +- (void)start; +- (void)stop; +- (void)goForward; +- (void)requestUserAttention; +- (void)upgrader:(id)arg1 didRunForObject:(id)arg2; +- (void)upgrader:(id)arg1 didFailRunWithError:(id)arg2 forObject:(id)arg3; +- (void)showNewFeatures:(id)arg1; +- (BOOL)panel:(id)arg1 validateURL:(id)arg2 error:(id *)arg3; +- (void)chooseMigrationDestination:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/LibraryUpgraderDelegate-Protocol.h b/MailHeaders/Lion/Mail/LibraryUpgraderDelegate-Protocol.h new file mode 100644 index 00000000..8219be1e --- /dev/null +++ b/MailHeaders/Lion/Mail/LibraryUpgraderDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSObject-Protocol.h" + +@protocol LibraryUpgraderDelegate +- (void)upgrader:(id)arg1 didRunForObject:(id)arg2; +- (void)upgrader:(id)arg1 didFailRunWithError:(id)arg2 forObject:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/ListImageView.h b/MailHeaders/Lion/Mail/ListImageView.h new file mode 100644 index 00000000..26384db4 --- /dev/null +++ b/MailHeaders/Lion/Mail/ListImageView.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSImageView.h" + +@interface ListImageView : NSImageView +{ +} + +- (void)awakeFromNib; +- (void)registerForDraggedTypes:(id)arg1; +- (id)menuForEvent:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/LoadingOverlay.h b/MailHeaders/Lion/Mail/LoadingOverlay.h new file mode 100644 index 00000000..04dbdebe --- /dev/null +++ b/MailHeaders/Lion/Mail/LoadingOverlay.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ActivityMonitor, NSProgressIndicator, NSString, NSTextField, NSView; + +@interface LoadingOverlay : NSObject +{ + NSView *_overlayView; + NSProgressIndicator *_progressIndicator; + NSTextField *_statusMessageField; + ActivityMonitor *_monitor; + id _modalDelegate; +} + +- (id)initWithModalDelegate:(id)arg1; +- (id)init; +- (void)dealloc; +- (void)displayInSuperview:(id)arg1; +- (void)displayInSuperviewAfterDelay:(id)arg1; +@property(retain, nonatomic) ActivityMonitor *activityMonitor; +@property(retain) NSString *statusMessage; +- (void)_activityEnded:(id)arg1; +@property id modalDelegate; // @synthesize modalDelegate=_modalDelegate; +@property(readonly) NSView *overlayView; // @synthesize overlayView=_overlayView; + +@end + diff --git a/MailHeaders/Lion/Mail/MFAosImapAccountDetails.h b/MailHeaders/Lion/Mail/MFAosImapAccountDetails.h new file mode 100644 index 00000000..23e7e9cf --- /dev/null +++ b/MailHeaders/Lion/Mail/MFAosImapAccountDetails.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "IMAPAccountDetails.h" + +@interface MFAosImapAccountDetails : IMAPAccountDetails +{ +} + ++ (id)accountDetailsNibName; +- (Class)accountClass; + +@end + diff --git a/MailHeaders/Lion/Mail/MFMessageSortingValueDelegate-Protocol.h b/MailHeaders/Lion/Mail/MFMessageSortingValueDelegate-Protocol.h new file mode 100644 index 00000000..d13458e3 --- /dev/null +++ b/MailHeaders/Lion/Mail/MFMessageSortingValueDelegate-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MFMessageSortingValueDelegate +- (unsigned long long)sortingSizeForMessage:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/MFUIMailbox-Protocol.h b/MailHeaders/Lion/Mail/MFUIMailbox-Protocol.h new file mode 100644 index 00000000..5b245d4e --- /dev/null +++ b/MailHeaders/Lion/Mail/MFUIMailbox-Protocol.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MFUIMailbox +- (id)persistentIdentifier; +- (id)displayName; +- (id)extendedDisplayName; +- (BOOL)isContainer; +- (unsigned long long)displayCount; +- (long long)numberOfChildren; +- (BOOL)hasChildren; +- (id)children; +- (BOOL)isStore; +- (BOOL)isSmartMailbox; +- (id)account; +- (id)accountURLString; +- (BOOL)isPlaceholder; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +@property int type; +@end + diff --git a/MailHeaders/Lion/Mail/MFUserAgent-Protocol.h b/MailHeaders/Lion/Mail/MFUserAgent-Protocol.h new file mode 100644 index 00000000..773ca015 --- /dev/null +++ b/MailHeaders/Lion/Mail/MFUserAgent-Protocol.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MFUserAgent +- (id)queryUserForPasswordWithMessage:(id)arg1 title:(id)arg2 remember:(char *)arg3; +- (BOOL)showCertificateTrustPanelForError:(id)arg1 host:(id)arg2; +- (long long)informUserOfError:(id)arg1; +- (BOOL)queryUserWithMessageText:(id)arg1 informativeText:(id)arg2 defaultButton:(id)arg3 alternateButton:(id)arg4; +- (long long)runAlertPanelWithTitle:(id)arg1 defaultTitle:(id)arg2 alternateTitle:(id)arg3 otherTitle:(id)arg4 message:(id)arg5; +- (long long)queryUserForBigMessageAction:(id)arg1; +- (void)storeBeingInvalidated:(id)arg1; +- (BOOL)shouldInvalidateMailbox:(id)arg1; +- (BOOL)isTerminating; +- (void)relaunchAndQuit; +- (void)relaunchAndQuitWithAdditionalArguments:(id)arg1; +- (BOOL)wakingFromSleep; +- (BOOL)isInTimeMachineMode; +- (void)setIsInTimeMachineMode:(BOOL)arg1; +- (BOOL)personWithEmailIsOnline:(id)arg1; +- (BOOL)openTemporaryAttachments:(id)arg1 applicationBundle:(id)arg2; +- (void)informUserOfIOErrorWithStateIn:(long long *)arg1; +- (void)informUserOfBusyDatabaseWithRecoverer:(id)arg1 diagnosis:(long long *)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/MTMBufferedController.h b/MailHeaders/Lion/Mail/MTMBufferedController.h new file mode 100644 index 00000000..879d75ec --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMBufferedController.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MTMMailboxControllerProtocol-Protocol.h" + +@class MTMMailbox, NSDictionary, NSMutableDictionary, NSURL; + +@interface MTMBufferedController : NSObject +{ + NSURL *_mailLibraryURL; + NSDictionary *_tableOfContents; + NSMutableDictionary *_accounts; + NSDictionary *_preferences; + MTMMailbox *_rootMailbox; +} + +- (id)initWithMailLibraryURL:(id)arg1; +- (void)dealloc; +- (void)loadPreferences:(id *)arg1 accounts:(id *)arg2 toc:(id *)arg3 rootMailbox:(id *)arg4 forLibraryURL:(id)arg5; +@property(readonly) NSURL *tocURL; +- (void)mailboxListWillBeUpdated:(id)arg1; +- (void)mailboxListWasUpdated:(id)arg1; +- (BOOL)_loadTableOfContentsIfNeeded; +- (id)messageWithID:(id)arg1; +- (id)accountForAccountID:(id)arg1; +- (id)revisionIDForURL:(id)arg1; +- (void)tearDown; +@property(readonly) NSURL *mailLibraryURL; // @synthesize mailLibraryURL=_mailLibraryURL; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMBytesFormatter.h b/MailHeaders/Lion/Mail/MTMBytesFormatter.h new file mode 100644 index 00000000..ea768185 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMBytesFormatter.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFormatter.h" + +@interface MTMBytesFormatter : NSFormatter +{ +} + +- (id)init; +- (void)dealloc; +- (id)stringForObjectValue:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMDiskMessage.h b/MailHeaders/Lion/Mail/MTMDiskMessage.h new file mode 100644 index 00000000..18c92938 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMDiskMessage.h @@ -0,0 +1,46 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMMessage.h" + +@class NSDate, NSString; + +@interface MTMDiskMessage : MTMMessage +{ + id _identifier; + NSString *_path; + NSString *_subject; + NSDate *_sentDate; + NSDate *_receivedDate; + NSDate *_lastViewedDate; + NSString *_author; + NSString *_to; + unsigned long long _messageSize; + unsigned long long _messageFlags; + unsigned long long _readFlags; + BOOL _hasCachedChange; + BOOL _cachedChange; +} + +- (id)initWithPath:(id)arg1; +- (void)dealloc; +- (id)identifierForURL; +- (id)identifier; +- (id)path; +- (id)URL; +- (id)subject; +- (id)author; +- (id)to; +- (id)sentDate; +- (id)receivedDate; +- (id)lastViewedDate; +- (unsigned long long)messageSize; +- (unsigned long long)messageFlags; +- (unsigned long long)readFlags; +- (BOOL)messageHasChangedFromSnapshot:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMFakeMailbox.h b/MailHeaders/Lion/Mail/MTMFakeMailbox.h new file mode 100644 index 00000000..7793a082 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMFakeMailbox.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMMailbox.h" + +@class NSMutableArray, NSMutableIndexSet; + +@interface MTMFakeMailbox : MTMMailbox +{ + NSMutableArray *_fakeMessages; + NSMutableIndexSet *_fakeSelectionIndexes; +} + +- (id)initWithMessageDescriptions:(id)arg1; +- (void)dealloc; +- (id)messages; +- (id)selectedMessageIndexes; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMFakeMessage.h b/MailHeaders/Lion/Mail/MTMFakeMessage.h new file mode 100644 index 00000000..212a2b56 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMFakeMessage.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMMessage.h" + +@class NSDictionary; + +@interface MTMFakeMessage : MTMMessage +{ + NSDictionary *_messageDescription; +} + +- (id)initWithDescription:(id)arg1; +- (void)dealloc; +- (id)valueForKey:(id)arg1; +- (unsigned long long)messageFlags; +- (unsigned long long)readFlags; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMFlagsCell.h b/MailHeaders/Lion/Mail/MTMFlagsCell.h new file mode 100644 index 00000000..d31df19f --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMFlagsCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface MTMFlagsCell : NSTextFieldCell +{ +} + +- (id)imageForFlags:(unsigned long long)arg1; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMFullWindowController.h b/MailHeaders/Lion/Mail/MTMFullWindowController.h new file mode 100644 index 00000000..03f1af94 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMFullWindowController.h @@ -0,0 +1,131 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMWindowController.h" + +#import "NSOutlineViewDelegate-Protocol.h" +#import "NSSplitViewDelegate-Protocol.h" +#import "NSTableViewDataSource-Protocol.h" + +@class ColorBackgroundView, ExpandingSplitView, MTMFakeMailbox, MTMMessageColumnController, MTMOutlineCell, MTMOutlineView, MTMScroller, MailVerticalSplitView, NSArray, NSArrayController, NSDictionary, NSIndexSet, NSMutableDictionary, NSTabView, NSTableView, NSTextFieldCell, NSTreeController, NSView, QLPreviewView; + +@interface MTMFullWindowController : MTMWindowController +{ + MailVerticalSplitView *_verticalSplitView; + NSView *_mailboxesView; + MTMOutlineView *_outlineView; + NSTabView *_mailboxTabView; + ExpandingSplitView *_splitView; + double _lastSplitViewPosition; + ColorBackgroundView *_globalRestoreView; + NSTableView *_messagesView; + ColorBackgroundView *_messageBackgroundView; + QLPreviewView *_previewView; + NSView *_emptyView; + NSView *_genericView; + NSView *_loadingView; + MTMScroller *_messageScroller; + BOOL _messageScrollerSavedDontNotify; + NSArrayController *_messagesController; + NSTreeController *_mailboxesController; + MTMMessageColumnController *_columnController; + NSArray *_messageColumnOrder; + NSDictionary *_messageColumnSizes; + NSArray *_messageSortDescriptors; + NSTextFieldCell *_textCell; + MTMOutlineCell *_mailboxCell; + NSMutableDictionary *_mailboxesDict; + BOOL _shouldPreventFirstViewResize; + BOOL _messageScrollerSavedDontNotifyOnResize; + BOOL _isActivated; + NSArray *_selectedMailboxIndexPaths; + NSIndexSet *_selectedMessageIndexes; + NSArray *_expectedSelectedMessageIDs; + unsigned long long _isUpdatingSelectionFromBackend; + double _expectedMessageScrollerValue; + double _currentMessageScrollerValue; + NSArray *_expectedVisibleSelectedMessageIDs; + MTMFakeMailbox *_displayedMailbox; +} + ++ (Class)specialMailboxClass; ++ (id)keyPathsForValuesAffectingDisplayState; ++ (id)keyPathsForValuesAffectingPlaceholderString; ++ (id)keyPathsForValuesAffectingMailboxTargeted; +- (void)awakeFromNib; +- (void)setupBindings; +- (void)removeBindings; +- (void)_updatePreviewViewURLIfNecessary; +- (void)activate; +- (void)deactivate; +- (id)selectedMailbox; +@property(readonly) MTMFakeMailbox *displayedMailbox; +- (void)updateMessageListBindingsWithDisplayedMailbox:(id)arg1 scrollerDelta:(double)arg2; +@property(retain) NSIndexSet *selectedMessageIndexesInDisplayedMailbox; +- (void)dealloc; +- (BOOL)setupUIWithDisplayState:(id)arg1; +- (id)displayState; +- (void)setDisplayState:(id)arg1; +- (void)_tryToSelectMessages:(id)arg1 selectedMailbox:(id)arg2; +- (void)_flushExpectedMessageIDsSelection; +- (void)_tryToUpdateSelectedMessageIDs; +- (void)_updateMessageScrollPosition; +- (void)_flushMessageScrollPosition; +- (void)adjustDisplayStateAfterTimeMachineStarted; +- (id)placeholderString; +- (id)_placeholderAttributes; +- (id)_subPlaceholderAttributes; +- (BOOL)mailboxTargeted; +- (id)selectedMailboxPaths; +- (id)selectedMessagePaths; +- (BOOL)shouldRestoreMailboxPaths; +- (id)restoreMessagePaths; +- (void)setShowChangedItemsOnly:(BOOL)arg1; +- (id)urlToMessage; +- (void)_selectionDidChange; +- (void)scrollerWillBeMovedByUser:(id)arg1; +- (void)scrollerWasMovedByUser:(id)arg1; +- (void)mailboxListWillBeUpdated:(id)arg1; +- (void)mailboxListWasUpdated:(id)arg1; +- (void)configureCell:(id)arg1 forItem:(id)arg2; +- (BOOL)isTopLevelItem:(id)arg1; +- (id)_computedMessageColumnOrder; +@property(retain, nonatomic) NSArray *messageColumnOrder; +- (id)_computedMessageColumnSizes; +@property(retain, nonatomic) NSDictionary *messageColumnSizes; +- (id)_computedMessageSortDescriptors; +@property(retain, nonatomic) NSArray *messageSortDescriptors; +- (id)outlineView:(id)arg1 dataCellForTableColumn:(id)arg2 item:(id)arg3; +- (void)outlineView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (BOOL)outlineView:(id)arg1 shouldSelectItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 isGroupItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldCollapseItem:(id)arg2; +- (void)outlineViewItemWillExpand:(id)arg1; +- (void)outlineViewItemDidExpand:(id)arg1; +- (void)outlineViewItemWillCollapse:(id)arg1; +- (void)outlineViewItemDidCollapse:(id)arg1; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (void)tableViewColumnDidMove:(id)arg1; +- (void)tableViewColumnDidResize:(id)arg1; +- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMaxCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (void)setPreviewPaneVisible:(BOOL)arg1; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (BOOL)splitView:(id)arg1 shouldCollapseSubview:(id)arg2 forDoubleClickOnDividerAtIndex:(long long)arg3; +- (double)_maxMailboxesViewWidthAllowed; +- (struct CGSize)windowWillResize:(id)arg1 toSize:(struct CGSize)arg2; +- (void)windowDidResize:(id)arg1; +- (double)fadeDuration; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)willChangeValueForKey:(id)arg1; +- (void)didChangeValueForKey:(id)arg1; +@property(retain) NSIndexSet *selectedMessageIndexes; // @synthesize selectedMessageIndexes=_selectedMessageIndexes; +@property(retain) NSArray *selectedMailboxIndexPaths; // @synthesize selectedMailboxIndexPaths=_selectedMailboxIndexPaths; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMIndexedMessage.h b/MailHeaders/Lion/Mail/MTMIndexedMessage.h new file mode 100644 index 00000000..afe14a63 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMIndexedMessage.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMMessage.h" + +@class NSDictionary, NSMutableDictionary, NSString; + +@interface MTMIndexedMessage : MTMMessage +{ + NSString *_identifier; + NSDictionary *_attributes; + NSString *_realPath; + BOOL _realPathComputed; + BOOL _hasCachedChange; + BOOL _cachedChange; + NSString *_to; + unsigned long long _messageSize; + unsigned long long _messageFlags; + unsigned long long _readFlags; + NSMutableDictionary *_computedAdditionalProperties; +} + +- (id)initWithIdentifier:(id)arg1 attributes:(id)arg2; +- (void)dealloc; +- (id)identifier; +- (id)path; +- (id)URL; +- (id)subject; +- (id)savedDate; +- (id)to; +- (unsigned long long)messageSize; +- (unsigned long long)messageFlags; +- (unsigned long long)readFlags; +- (BOOL)messageHasChangedFromSnapshot:(id)arg1; +- (void)computeAdditionalProperties; +- (void)updateAdditionalPropertiesFromComputedProperties; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMLoadingView.h b/MailHeaders/Lion/Mail/MTMLoadingView.h new file mode 100644 index 00000000..f9aa1e27 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMLoadingView.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSProgressIndicator; + +@interface MTMLoadingView : NSView +{ + NSProgressIndicator *_progressIndicator; +} + +- (void)awakeFromNib; +- (void)viewDidMoveToWindow; +- (void)viewWillMoveToWindow:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMMailbox.h b/MailHeaders/Lion/Mail/MTMMailbox.h new file mode 100644 index 00000000..829ca7f3 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMMailbox.h @@ -0,0 +1,107 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MFUIMailbox-Protocol.h" + +@class NSArray, NSColor, NSDictionary, NSEnumerator, NSFont, NSMutableArray, NSMutableDictionary, NSString, NSURL; + +@interface MTMMailbox : NSObject +{ + NSDictionary *_mailboxDict; + MTMMailbox *_parentMailbox; + NSMutableArray *_subMailboxes; + NSMutableArray *_messages; + id _controller; + BOOL _messagesLoaded; + NSEnumerator *_messageEnumerator; + NSMutableDictionary *_messageColumnAttributes; + BOOL _updatePaused; + NSMutableArray *_pendingMessages; +} + ++ (void)setSectionOrder:(id)arg1; ++ (Class)mailboxClassForMailboxDictionary:(id)arg1; ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; ++ (id)keyPathsForValuesAffectingType; +@property(nonatomic) id controller; +- (id)initWithDictionary:(id)arg1 controller:(id)arg2; +- (void)dealloc; +- (id)indexPathFromMailbox:(id)arg1; +- (id)mailboxWithIndexPath:(id)arg1; +- (id)mailboxPath; +- (id)mailboxWithMailboxPath:(id)arg1; +@property(readonly) id identifier; +- (id)persistentIdentifier; +@property(readonly) id revisionID; +@property(readonly) int backupType; +@property int type; +@property(readonly) BOOL asyncLoading; +@property(readonly) BOOL enabled; +- (id)account; +- (id)accountURLString; +@property(readonly) NSString *path; +@property(readonly) NSURL *timeMachineURL; +@property(readonly) NSArray *paths; +- (id)displayName; +@property(readonly) NSString *displayNameForList; +- (id)extendedDisplayName; +- (id)_oneMesageString; +- (id)_severalMessagesFormatString; +@property(readonly) NSString *displayNameInTitleBar; +@property(readonly) NSString *displayNameInMessageList; +- (BOOL)isContainer; +- (unsigned long long)displayCount; +- (BOOL)isStore; +- (BOOL)isSmartMailbox; +- (BOOL)isPlaceholder; +@property(readonly) MTMMailbox *parentMailbox; +@property(readonly) NSArray *subMailboxes; +- (id)children; +- (id)subMailboxWithIdentifier:(id)arg1; +- (long long)numberOfChildren; +- (BOOL)hasChildren; +- (BOOL)_shouldSortMailboxes; +- (id)_sortedMaiboxDictsForMailboxDicts:(id)arg1; +- (void)_addSubMailboxesFromDictionaries:(id)arg1; +- (void)_addSubMailbox:(id)arg1; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (void)_loadMessages; +@property(readonly) NSArray *messages; +- (id)messageWithIdentifier:(id)arg1; +- (void)reloadMessages; +- (id)_messagesFolderPathFromMailboxFolderPath:(id)arg1; +- (unsigned long long)indexInOutline; +@property(readonly) SEL sortSelector; +- (void)sortSubMailboxes; +- (long long)_compareName:(id)arg1; +- (long long)compareIndexInOutline:(id)arg1; +@property(readonly) NSString *dateTitleString; +@property(readonly) NSString *senderTitleString; +@property(readonly) BOOL showSender; +@property(readonly) BOOL canCollapse; +@property(readonly) NSString *displayMode; +@property(readonly) NSString *restoreMode; +@property(readonly) NSString *messageColumnConfiguration; +- (BOOL)_addAttributesFromInfo:(id)arg1; +@property(readonly) NSDictionary *messageColumnAttributes; +@property(readonly) NSString *defaultMessageColumnAttributesKey; +@property(readonly) NSString *restoreString; +@property(readonly) NSString *subRestoreString; +@property(readonly) NSColor *messageListColor; +@property(readonly) NSFont *messageListFont; +- (id)description; +- (BOOL)needsToLoadMessagesInBackground; +- (void)_updateMessages:(id)arg1; +- (void)loadNextMessagesWithControllingMailbox:(id)arg1 andFetcher:(id)arg2; +- (void)pauseMailboxUpdate; +- (void)resumeMailboxUpdate; +- (void)discardMailbox; +- (unsigned long long)numberOfMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMMailboxChangedPredicate.h b/MailHeaders/Lion/Mail/MTMMailboxChangedPredicate.h new file mode 100644 index 00000000..8387daf9 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMMailboxChangedPredicate.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPredicate.h" + +@interface MTMMailboxChangedPredicate : NSPredicate +{ +} + ++ (id)mailboxChangedPredicate; +- (BOOL)evaluateWithObject:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMMailboxControllerProtocol-Protocol.h b/MailHeaders/Lion/Mail/MTMMailboxControllerProtocol-Protocol.h new file mode 100644 index 00000000..22307ad8 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMMailboxControllerProtocol-Protocol.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@class NSURL; + +@protocol MTMMailboxControllerProtocol +- (void)mailboxListWillBeUpdated:(id)arg1; +- (void)mailboxListWasUpdated:(id)arg1; +- (id)messageWithID:(id)arg1; +- (id)accountForAccountID:(id)arg1; +- (id)revisionIDForURL:(id)arg1; +@property(readonly) NSURL *tocURL; +@property(readonly) NSURL *mailLibraryURL; +@end + diff --git a/MailHeaders/Lion/Mail/MTMMailboxFetcher.h b/MailHeaders/Lion/Mail/MTMMailboxFetcher.h new file mode 100644 index 00000000..3b4e7569 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMMailboxFetcher.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MTMMailbox, NSConditionLock, NSMutableArray; + +@interface MTMMailboxFetcher : NSObject +{ + MTMMailbox *_processingMailbox; + NSMutableArray *_inactiveMailboxes; + NSConditionLock *_lock; + BOOL _threadLaunched; + MTMMailbox *_loadingMailbox; +} + ++ (id)sharedFetcher; +- (id)init; +- (void)dealloc; +- (void)_lock; +- (void)_lockWhenThereIsWorkToDo; +- (void)_unlockAndNotify; +- (void)_workerThread; +- (void)startFetchingMailbox:(id)arg1; +- (void)stopFetchingMailbox:(id)arg1; +- (void)startFetchingInactiveMailbox:(id)arg1; +- (void)stopFetchingInactiveMailbox:(id)arg1; +- (void)_protectedSmartAddMailboxToInactiveMailboxes:(id)arg1; +- (BOOL)shouldContinueFetchingMailbox:(id)arg1; +- (void)waitForActiveMailboxToBeLoadedWithTimeOut:(double)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMMessage.h b/MailHeaders/Lion/Mail/MTMMessage.h new file mode 100644 index 00000000..c8bf2aae --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMMessage.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MTMMailbox, NSDate, NSString, NSURL; + +@interface MTMMessage : NSObject +{ + MTMMailbox *_mailbox; +} + +@property(readonly) id identifierForURL; +@property(readonly) id identifier; +@property(readonly) id revisionID; +@property(readonly) NSString *path; +@property(readonly) NSURL *URL; +@property(readonly) NSString *subject; +@property(readonly) NSString *author; +@property(readonly) NSString *to; +@property(readonly) NSDate *sentDate; +@property(readonly) NSDate *receivedDate; +@property(readonly) NSDate *savedDate; +@property(readonly) NSDate *lastViewedDate; +@property(readonly) unsigned long long messageSize; +@property(readonly) unsigned long long messageFlags; +@property(readonly) unsigned long long readFlags; +- (BOOL)isEqual:(id)arg1; +- (id)description; +- (BOOL)messageHasChangedFromSnapshot:(id)arg1; +- (unsigned long long)numberOfMessageInCurrentController; +@property(readonly) NSString *displayNameInMessageList; +@property MTMMailbox *mailbox; // @synthesize mailbox=_mailbox; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMMessageChangedPredicate.h b/MailHeaders/Lion/Mail/MTMMessageChangedPredicate.h new file mode 100644 index 00000000..f147b3d4 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMMessageChangedPredicate.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPredicate.h" + +@interface MTMMessageChangedPredicate : NSPredicate +{ +} + ++ (id)messageChangedPredicate; +- (BOOL)evaluateWithObject:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMMessageColumnController.h b/MailHeaders/Lion/Mail/MTMMessageColumnController.h new file mode 100644 index 00000000..320627c5 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMMessageColumnController.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArrayController, NSDictionary, NSMutableDictionary, NSString, NSTableView; + +@interface MTMMessageColumnController : NSObject +{ + NSTableView *_messageTableView; + NSArrayController *_messagesController; + NSMutableDictionary *_columnConfigurations; + NSString *_activeConfiguration; + NSDictionary *_activeAttributes; +} + ++ (void)initialize; +- (id)init; +- (void)dealloc; +- (id)_tableColumnWithIdentifier:(id)arg1 columnDict:(id)arg2; +- (void)_removeAllColumns; +- (id)_configDictForConfiguration:(id)arg1; +- (void)_updateActiveConfiguration; +@property(retain) NSString *activeConfiguration; +- (id)_tableColumnForSortName:(id)arg1; +- (void)_updateActiveAttributes; +@property(retain) NSDictionary *activeAttributes; +@property NSArrayController *messagesController; // @synthesize messagesController=_messagesController; +@property NSTableView *messageTableView; // @synthesize messageTableView=_messageTableView; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMNoteCell.h b/MailHeaders/Lion/Mail/MTMNoteCell.h new file mode 100644 index 00000000..004d819f --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMNoteCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMFlagsCell.h" + +@interface MTMNoteCell : MTMFlagsCell +{ +} + +- (id)imageForFlags:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMNumberCell.h b/MailHeaders/Lion/Mail/MTMNumberCell.h new file mode 100644 index 00000000..b429dcc1 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMNumberCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface MTMNumberCell : NSTextFieldCell +{ +} + +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMOutlineCell.h b/MailHeaders/Lion/Mail/MTMOutlineCell.h new file mode 100644 index 00000000..2f5414f2 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMOutlineCell.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSImageTextFieldCell.h" + +@interface MTMOutlineCell : NSImageTextFieldCell +{ + BOOL _enabled; +} + +- (id)initImageCell:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +@property BOOL enabled; // @synthesize enabled=_enabled; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMOutlineTopLevelCell.h b/MailHeaders/Lion/Mail/MTMOutlineTopLevelCell.h new file mode 100644 index 00000000..2ed19025 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMOutlineTopLevelCell.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface MTMOutlineTopLevelCell : NSTextFieldCell +{ +} + +@end + diff --git a/MailHeaders/Lion/Mail/MTMOutlineView.h b/MailHeaders/Lion/Mail/MTMOutlineView.h new file mode 100644 index 00000000..4abbe8ef --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMOutlineView.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSOutlineView.h" + +@class MTMFullWindowController; + +@interface MTMOutlineView : NSOutlineView +{ + MTMFullWindowController *_windowController; +} + +- (struct CGRect)frameOfOutlineCellAtRow:(long long)arg1; +- (void)selectAll:(id)arg1; +- (BOOL)becomeFirstResponder; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMReadCell.h b/MailHeaders/Lion/Mail/MTMReadCell.h new file mode 100644 index 00000000..5910c3bb --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMReadCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMFlagsCell.h" + +@interface MTMReadCell : MTMFlagsCell +{ +} + +- (id)imageForFlags:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMScroller.h b/MailHeaders/Lion/Mail/MTMScroller.h new file mode 100644 index 00000000..ec4199fe --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMScroller.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSScroller.h" + +@interface MTMScroller : NSScroller +{ + BOOL _dontNotify; + id _delegate; + BOOL _isFakeScroller; +} + +- (void)setDoubleValue:(double)arg1; +- (void)_notifyPostScrollPositionChanged; +@property(nonatomic) BOOL isFakeScroller; +- (void)drawKnob; +@property id delegate; // @synthesize delegate=_delegate; +@property BOOL dontNotify; // @synthesize dontNotify=_dontNotify; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMSpecialMailbox.h b/MailHeaders/Lion/Mail/MTMSpecialMailbox.h new file mode 100644 index 00000000..bdde9c26 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMSpecialMailbox.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMMailbox.h" + +@interface MTMSpecialMailbox : MTMMailbox +{ + BOOL _isObserving; +} + ++ (Class)rootMailboxClass; ++ (Class)specialMailboxClassForMailboxType:(int)arg1; +- (id)recoverDisplayName; +- (id)identifier; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMTableView.h b/MailHeaders/Lion/Mail/MTMTableView.h new file mode 100644 index 00000000..97b773c6 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMTableView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableView.h" + +@class NSArrayController; + +@interface MTMTableView : NSTableView +{ + NSArrayController *_messagesController; +} + +@end + diff --git a/MailHeaders/Lion/Mail/MTMWindow.h b/MailHeaders/Lion/Mail/MTMWindow.h new file mode 100644 index 00000000..61eeaa02 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMWindow.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface MTMWindow : NSWindow +{ +} + +- (double)animationResizeTime:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MTMWindowController.h b/MailHeaders/Lion/Mail/MTMWindowController.h new file mode 100644 index 00000000..358acba0 --- /dev/null +++ b/MailHeaders/Lion/Mail/MTMWindowController.h @@ -0,0 +1,84 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSWindowController.h" + +#import "MTMMailboxControllerProtocol-Protocol.h" + +@class MTMMailbox, MailToolbar, NSArray, NSAttributedString, NSDictionary, NSMutableDictionary, NSURL, NSView, StarFieldController; + +@interface MTMWindowController : NSWindowController +{ + MailToolbar *_toolbar; + NSView *_pinView; + StarFieldController *_controller; + NSURL *_mailLibraryURL; + NSURL *_focusURL; + NSDictionary *_toolbarItems; + MTMMailbox *_rootMailbox; + NSMutableDictionary *_accounts; + NSDictionary *_preferences; + NSDictionary *_tableOfContents; + BOOL _updatingToolbar; + BOOL _activated; + BOOL _bindingsAreSet; +} + ++ (Class)specialMailboxClass; ++ (id)mailLibraryURLFromFocusURL:(id)arg1; ++ (id)baseLibraryURLFromMailLibraryURL:(id)arg1; ++ (id)focusURLInCurrentSnapshotForFocusURL:(id)arg1; ++ (BOOL)_loadTableOfContents:(id *)arg1 forLibraryURL:(id)arg2; ++ (void)loadPreferences:(id *)arg1 accounts:(id *)arg2 toc:(id *)arg3 rootMailbox:(id *)arg4 forLibraryURL:(id)arg5; +- (id)initWithFocusURL:(id)arg1 controller:(id)arg2; +- (id)initWithFocusURL:(id)arg1 bufferedController:(id)arg2 controller:(id)arg3; +- (void)setupBindings; +- (void)removeBindings; +- (void)dealloc; +- (id)description; +- (BOOL)setupUIWithDisplayState:(id)arg1; +- (void)activate; +- (void)deactivate; +@property(readonly) StarFieldController *controller; +- (void)_updateTimeMachineTargetIfNecessary; +@property(retain) NSURL *focusURL; +@property(readonly) NSURL *tocURL; +@property(readonly) NSURL *mailLibraryURL; +@property(readonly) NSDictionary *preferences; +@property(readonly) NSArray *mailboxes; +@property(readonly) MTMMailbox *rootMailbox; +- (BOOL)_loadTableOfContentsIfNeeded; +- (id)messageWithID:(id)arg1; +- (void)_setupToolbarWithConfigurationDictionary:(id)arg1; +- (id)accountForAccountID:(id)arg1; +@property(copy) NSDictionary *displayState; +- (void)adjustDisplayStateAfterTimeMachineStarted; +- (id)revisionIDForURL:(id)arg1; +- (void)updateThumbnail; +- (void)updateThumbnailAsGenericWindow; +@property(readonly) NSAttributedString *placeholderString; +- (void)updateThumbnailAndGenericThumbnailIfNecessary; +- (void)mailboxListWillBeUpdated:(id)arg1; +- (void)mailboxListWasUpdated:(id)arg1; +@property(readonly) BOOL mailboxTargeted; +@property(readonly) MTMMailbox *selectedMailbox; +@property(readonly) NSArray *selectedMailboxPaths; +@property(readonly) NSArray *selectedMessagePaths; +@property(readonly) BOOL shouldRestoreMailboxPaths; +@property(readonly) NSArray *restoreMailboxPaths; +@property(readonly) NSArray *restoreMessagePaths; +@property BOOL showChangedItemsOnly; +@property(readonly) double fadeDuration; +- (void)restore:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (long long)compare:(id)arg1; +@property(readonly) BOOL activated; // @synthesize activated=_activated; +- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; +- (id)toolbarDefaultItemIdentifiers:(id)arg1; +- (id)toolbarAllowedItemIdentifiers:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MVComposeAccessoryViewOwner.h b/MailHeaders/Lion/Mail/MVComposeAccessoryViewOwner.h new file mode 100644 index 00000000..ea3ea733 --- /dev/null +++ b/MailHeaders/Lion/Mail/MVComposeAccessoryViewOwner.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSView; + +@interface MVComposeAccessoryViewOwner : NSObject +{ + NSView *_accessoryView; +} + ++ (id)composeAccessoryViewOwner; ++ (id)composeAccessoryViewNibName; +- (void)setupUIForMessage:(id)arg1; +- (id)composeAccessoryView; +- (BOOL)messageWillBeDelivered:(id)arg1; +- (BOOL)messageWillBeSaved:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MVLinkButton.h b/MailHeaders/Lion/Mail/MVLinkButton.h new file mode 100644 index 00000000..ead2b701 --- /dev/null +++ b/MailHeaders/Lion/Mail/MVLinkButton.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface MVLinkButton : NSButton +{ +} + +- (void)resetCursorRects; + +@end + diff --git a/MailHeaders/Lion/Mail/MVMailBundle.h b/MailHeaders/Lion/Mail/MVMailBundle.h new file mode 100644 index 00000000..97cd47b3 --- /dev/null +++ b/MailHeaders/Lion/Mail/MVMailBundle.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MVMessageDisplayNotifications-Protocol.h" + +@interface MVMailBundle : NSObject +{ +} + ++ (id)allBundles; ++ (id)composeAccessoryViewOwners; ++ (void)registerBundle; ++ (id)sharedInstance; ++ (BOOL)hasPreferencesPanel; ++ (id)preferencesOwnerClassName; ++ (id)preferencesPanelName; ++ (BOOL)hasComposeAccessoryViewOwner; ++ (id)composeAccessoryViewOwnerClassName; +- (void)dealloc; +- (void)_registerBundleForNotifications; + +@end + diff --git a/MailHeaders/Lion/Mail/MVMailboxSelectionOwner-Protocol.h b/MailHeaders/Lion/Mail/MVMailboxSelectionOwner-Protocol.h new file mode 100644 index 00000000..231d09da --- /dev/null +++ b/MailHeaders/Lion/Mail/MVMailboxSelectionOwner-Protocol.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MVMailboxSelectionOwner +- (id)selectedMailboxes; +- (id)selectedMailbox; +- (id)sortedSectionItemsForTimeMachine; +- (BOOL)isSelectedMailboxSpecial; +- (void)selectPathsToMailboxes:(id)arg1; +- (BOOL)mailboxIsExpanded:(id)arg1; +- (BOOL)sectionIsExpanded:(id)arg1; +- (void)revealMailbox:(id)arg1; +- (id)mailboxSelectionWindow; + +@optional +- (id)expandedItems; +@end + diff --git a/MailHeaders/Lion/Mail/MVMessageDisplayNotifications-Protocol.h b/MailHeaders/Lion/Mail/MVMessageDisplayNotifications-Protocol.h new file mode 100644 index 00000000..7f08a481 --- /dev/null +++ b/MailHeaders/Lion/Mail/MVMessageDisplayNotifications-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MVMessageDisplayNotifications + +@optional +- (void)messageWillBeDisplayedInView:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/MVSelectionOwner-Protocol.h b/MailHeaders/Lion/Mail/MVSelectionOwner-Protocol.h new file mode 100644 index 00000000..ab2de8ec --- /dev/null +++ b/MailHeaders/Lion/Mail/MVSelectionOwner-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MVSelectionOwner +- (id)selection; +- (id)selectionExpandingThreadsAndHiddenCopies:(BOOL)arg1; +- (void)selectMessages:(id)arg1; +- (id)currentDisplayedMessage; +- (id)messageThatUserIsProbablyReading; +- (id)messageStore; +- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/MVTerminationHandler-Protocol.h b/MailHeaders/Lion/Mail/MVTerminationHandler-Protocol.h new file mode 100644 index 00000000..e74a421e --- /dev/null +++ b/MailHeaders/Lion/Mail/MVTerminationHandler-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MVTerminationHandler +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; + +@optional +- (BOOL)needsToPromptUserBeforeTermination:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/MailApp.h b/MailHeaders/Lion/Mail/MailApp.h new file mode 100644 index 00000000..9656def5 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailApp.h @@ -0,0 +1,486 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "CDStructures.h" +#import "MVSelectionOwner-Protocol.h" +#import "MFUserAgent-Protocol.h" +#import "MVTerminationHandler-Protocol.h" +#import "SyncableApp-Protocol.h" + +@class ActivityViewer, ActivityViewerMailSound, DeliveryQueue, DockCountController, DynamicErrorWindowController, FlagsMenuItemView, MailboxesController, NSMenu, NSMenuItem, NSMutableArray, NSMutableSet, NSString, NSWindow; + +@interface MailApp : NSApplication +{ + id _selectionOwner; + NSMenu *_mailboxesContextMenu; + NSMenu *_addButtonMenu; + NSMenu *_messageViewerContextMenu; + NSMenu *_composeAttachmentContextMenu; + NSMenu *_viewAttachmentContextMenu; + NSMenuItem *_textEncodingMenuItem; + FlagsMenuItemView *_flagsMenuItemView; + MailboxesController *_mailboxesController; + NSString *_noMailSoundPath; + NSString *_fetchErrorSoundPath; + DockCountController *_dockCountController; + NSMutableArray *_stationeryBundlesToInstall; + NSWindow *_errorDiagnosisWindow; + DynamicErrorWindowController *_errorDiagnosisWindowController; + long long *_errorDiagnosisResult; + double _appDidFinishLaunchingTime; + DeliveryQueue *_deliveryQueue; + ActivityViewer *_activityViewer; + ActivityViewerMailSound *_activityViewerMailSound; + id _terminationHandlersLock; + NSMutableArray *_terminationHandlers; + NSMutableArray *_currentTerminationHandlers; + unsigned long long _terminateReply; + BOOL _isTerminating; + BOOL _isExitingFullscreen; + unsigned int _autoLaunchHidden:1; + unsigned int _shouldPlayFetchErrorSound:1; + unsigned int _appHasFinishedLaunching:1; + unsigned int _synchronizingAllAccounts:1; + unsigned int _groupingByThreadDefaultsToOn:1; + unsigned int _updateEmailAliasesOnNextActivation:1; + unsigned int _paused:1; + unsigned int _shouldCleanUpHTTPMailAccounts:1; + unsigned int _automaticTerminationDisabled:1; + NSMutableSet *_accountsCurrentlySynchronizing; + unsigned long long _numberOfAccountsEmptyingTrash; + long long _currentPasswordPanelCount; + id _syncer; + BOOL _accountsAreNew; + BOOL _useAddressAtoms; + BOOL _runningEmptyTrashSheet; + BOOL _childWindowVisible; + BOOL _hasPerformedDelayedInitialization; + NSMutableArray *_appleEventDescriptorQueue; +} + ++ (BOOL)checkMessageFrameworkCompatibility; ++ (void)_testMachPorts; +- (id)init; +- (BOOL)appHasFinishedLaunching; +- (BOOL)isChildWindowVisible; +- (void)setChildWindowVisible:(BOOL)arg1; +- (void)sendEvent:(id)arg1; +- (void)presencePreferenceChanged:(id)arg1; +- (void)_accountInfoDidChange:(id)arg1; +- (void)showViewerWindow:(id)arg1; +- (BOOL)_showViewerWindow:(id)arg1; +- (BOOL)applicationOpenUntitledFile:(id)arg1; +- (void)_systemTimeChanged; +- (void)_midnightPassed; +- (void)_setupMidnightTimer; +- (void)_checkTimerAndFireDate:(id)arg1; +- (void)checkTimersAfterSleeping; +- (void)_updateEmailAliases; +- (void)_updateRSSUnreadCountsAndFetchNewFeeds; +- (void)_tryToPerformDelayedInitialization; +- (void)_performDelayedInitialization; +- (void)_fetchBrandingInfo; +- (void)_tellSyncServicesToRegisterAndSync; +- (void)applicationDidFinishLaunching:(id)arg1; +- (void)_initializeAddressBookSources; +- (BOOL)_needToCreateLibraryUpgradingIfNecessary; +- (BOOL)accountsAreNew; +- (void)_restoreMessagesFromDefaults; +- (void)_setupInitialState; +- (void)_loadBundles; +- (void)_loadBundlesFromPath:(id)arg1 failedBundleInfos:(id)arg2; +- (id)_failureInfoForBundle:(id)arg1 path:(id)arg2; +- (id)_mailboxBeingViewed; +- (BOOL)_isMailboxBeingViewedSpecial; +- (id)_accountBeingViewed; +- (void)runPageLayout:(id)arg1; +- (BOOL)validateToolbarItem:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)_moreThanOneAccountCanGoOffline; +- (void)disconnectAllAccounts:(id)arg1; +- (void)connectAllAccounts:(id)arg1; +- (void)connectThisAccount:(id)arg1; +- (void)disconnectThisAccount:(id)arg1; +- (void)disconnectAllAccountsFromContextMenu:(id)arg1; +- (void)connectAllAccountsFromContextMenu:(id)arg1; +- (void)connectThisAccountFromContextMenu:(id)arg1; +- (void)disconnectThisAccountFromContextMenu:(id)arg1; +- (void)toggleAccountOnlineStatus:(id)arg1; +- (void)_addToAccountsCurrentlySynchronizing:(id)arg1; +- (void)_removeFromAccountsCurrentlySynchronizing:(id)arg1; +- (BOOL)_isAccountCurrentlySynchronizing:(id)arg1; +- (void)_clearAccountsCurrentlySynchronizing; +- (void)performSynchronizationForAccounts:(id)arg1; +- (void)synchronizeAccount:(id)arg1; +- (void)_networkConfigurationChanged:(id)arg1; +- (void)_handleNetworkConfigurationChange; +- (void)_emailAddressesApproved:(id)arg1; +- (void)_emailsRejected:(id)arg1; +- (void)closeAll:(id)arg1; +- (void)showConnectionDoctor:(id)arg1; +- (void)showInfoPanel:(id)arg1; +- (void)showComposeWindow:(id)arg1; +- (void)showNoteEditor:(id)arg1; +- (void)orderFrontStylesPanel:(id)arg1; +- (void)addFontTrait:(id)arg1; +- (void)newViewerWindow:(id)arg1; +- (void)selectMailbox:(id)arg1; +- (void)showMediaBrowser:(id)arg1; +- (void)showAddressPanel:(id)arg1; +- (void)showAddressHistoryPanel:(id)arg1; +- (void)showSearchPanel:(id)arg1; +- (void)findNext:(id)arg1; +- (void)findPrevious:(id)arg1; +- (void)showActivityViewer:(id)arg1; +- (void)showPreferencesPanel:(id)arg1; +- (void)collectFeedback:(id)arg1; +- (void)addAccount:(id)arg1; +- (void)importMailboxes:(id)arg1; +- (void)showReleaseNotes:(id)arg1; +- (void)showAccountInfo:(id)arg1; +- (void)alwaysSendWindowsFriendlyAttachments:(id)arg1; +- (void)sendWindowsFriendlyAttachments:(id)arg1; +- (void)alwaysAttachFilesAtEnd:(id)arg1; +- (void)attachFilesAtEnd:(id)arg1; +- (void)insertOriginalAttachments:(id)arg1; +- (void)_resetMenuItemWithTag:(long long)arg1; +- (id)_mailboxMenu; +- (id)_getMenuItemInMessageMenuWithTag:(long long)arg1; +- (void)_getActiveAccountsThatCanGoOffline:(id)arg1 fetch:(id)arg2 sync:(id)arg3 deleteToTrash:(id)arg4 doesNotDeleteToTrash:(id)arg5; +- (void)_synchronizeAccountListMenuWithTagIfNeeded:(long long)arg1; +- (void)bringUpOnlineOfflineMenu:(id)arg1; +- (void)bringUpSynchronizeAccountMenu:(id)arg1; +- (void)bringUpEmptyTrashMenu:(id)arg1; +- (void)bringUpGetNewMailMenu:(id)arg1; +- (void)_removeExtraSeparatorsInMailboxMenu; +- (void)_removeAllItemsInAccountMenuWithTag:(long long)arg1; +- (void)_setupAccountMenuItems; +- (void)_setupCheckSpellingSubMenu; +- (void)_accountsChanged:(id)arg1; +- (void)_deliveryAccountsChangedExternally:(id)arg1; +- (void)_mailAccountsChangedExternally:(id)arg1; +- (void)_aosAccountMigratedExternally:(id)arg1; +- (void)editAccount:(id)arg1; +- (void)_emptyTrashAndCompact:(id)arg1; +- (void)_confirmEmptyTrashSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_emptyTrashInAccounts:(id)arg1 storeToCompact:(id)arg2; +- (id)_accountsToEmptyTrashIn:(id)arg1; +- (void)emptyTrashInAccount:(id)arg1; +- (void)compactSelectedMailboxes:(id)arg1; +- (void)_evaluateUsersJunkMailNeeds; +- (void)showToolbarItemForJunkMail:(BOOL)arg1; +- (void)eraseJunkMail:(id)arg1; +- (void)_eraseJunkMailSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)toggleThreadedMode:(id)arg1; +- (void)toggleViewRelatedMessages:(id)arg1; +- (BOOL)groupingByThreadDefaultsToOn; +- (void)setGroupingByThreadDefaultsToOn:(BOOL)arg1; +- (BOOL)shouldAutoFetchForMessageType:(BOOL)arg1; +- (void)_setShouldAutoFetch:(BOOL)arg1 forMessageType:(BOOL)arg2; +- (long long)autoFetchFrequencyForMessageType:(BOOL)arg1; +- (void)setAutoFetchFrequency:(long long)arg1 forMessageType:(BOOL)arg2; +- (void)_checkNewMail:(BOOL)arg1; +- (void)_doBackgroundFetch:(BOOL)arg1; +- (void)checkNewMailInAccount:(id)arg1 isAutocheck:(BOOL)arg2; +- (void)checkNewMailInAccount:(id)arg1; +- (void)checkNewMail:(id)arg1; +- (void)_checkNewMailInAccountRepresentedByMailbox:(id)arg1; +- (void)checkNewMailInSelectedAccounts:(id)arg1; +- (void)updateAllFeeds:(id)arg1; +- (void)_autoFetchMail:(id)arg1; +- (void)_backgroundFetchCompleted:(id)arg1; +- (void)resetAutoFetchTimer; +- (void)fetchErrorHasOccurred; +- (void)_mailAccountNeedsChecking:(id)arg1; +- (BOOL)application:(id)arg1 openFile:(id)arg2; +- (BOOL)_handleOpenMessage:(id)arg1; +- (void)handleStationeryBundles; +- (void)application:(id)arg1 openFiles:(id)arg2; +- (void)applicationDidUnhide:(id)arg1; +- (void)updateEmailAliasesOnNextActivation; +- (void)applicationDidBecomeActive:(id)arg1; +- (id)openStoreWithMailboxUid:(id)arg1; +- (id)openStoreWithMailboxUid:(id)arg1 andMakeKey:(BOOL)arg2; +- (id)openMessageEditorWithParsedMessage:(id)arg1 headers:(id)arg2; +- (id)_messageEditorWithSettings:(id)arg1; +- (void)_addressManagerLoaded; +- (id)activityViewer; +- (id)textEncodingMenuItem; +- (void)loadMailboxesContextMenuNib; +- (id)addButtonMenu; +- (id)mailboxesContextMenu; +- (id)messageViewerContextMenu; +- (id)viewAttachmentContextMenu; +- (id)composeAttachmentContextMenu; +- (id)toolbarItemMoveMenu; +- (id)toolbarItemCopyMenu; +- (BOOL)useAddressAtoms; +- (void)willPresentContextualMenu:(id)arg1; +- (void)menuWillOpen:(id)arg1; +- (id)mailboxesController; +- (void)_preferencesChanged:(id)arg1; +- (BOOL)handleMailToURL:(id)arg1; +- (BOOL)handleMessageURL:(id)arg1; +- (BOOL)handleClickOnURL:(id)arg1 visibleText:(id)arg2 message:(id)arg3 window:(id)arg4 dontSwitch:(BOOL)arg5; +- (id)applicationVersion; +- (id)frameworkVersion; +- (void)_mailDocuments:(id)arg1; +- (id)messageEditor; +- (void)makeNoteFromSelection:(id)arg1 userData:(id)arg2 error:(id *)arg3; +- (void)mailSelection:(id)arg1 userData:(id)arg2 error:(id *)arg3; +- (void)mailDocument:(id)arg1 userData:(id)arg2 error:(id *)arg3; +- (void)mailTo:(id)arg1 userData:(id)arg2 error:(id *)arg3; +- (id)deliveryQueue; +- (void)setSelectionFrom:(id)arg1; +- (void)resignSelectionFor:(id)arg1; +- (id)selection; +- (id)selectionExpandingThreadsAndHiddenCopies:(BOOL)arg1; +- (id)selectionOwner; +- (id)preferredAccountBasedOnSelection; +- (id)preferredReplyAddressBasedOnCurrentSelection; +- (BOOL)applicationShouldHandleReopen:(id)arg1 hasVisibleWindows:(BOOL)arg2; +- (id)mailSyncBundle; +- (Class)notesSyncClass; +- (id)syncer; +- (id)syncerForDataType:(long long)arg1; +- (id)interestedPartiesForDataType:(long long)arg1; +- (BOOL)tellInterestedPartiesDataWillBeSyncedForDataType:(long long)arg1; +- (void)tellInterestedPartiesDataWasSyncedForDataType:(long long)arg1; +- (id)ownerForDataType:(long long)arg1; +- (void)client:(id)arg1 mightWantToSyncEntityNames:(id)arg2; +- (void)_timeMachineSendEvent:(id)arg1; +- (void)timeMachineDismiss:(id)arg1; +- (BOOL)_isAnyActiveAccountWillingToGoOnline; +- (void)_updateAutomaticTerminationState; +- (void)_disableAutomaticTermination:(BOOL)arg1 reason:(id)arg2; +- (void)quitNoMatterWhat; +- (void)_terminateNoConfirm; +- (void)_approveQuitIfFinished; +- (void)_cleanupFinished; +- (void)_cleanUpAccount:(id)arg1; +- (void)_cleanOldDatabases:(id)arg1; +- (void)_nowWouldBeAGoodTimeForHandler:(id)arg1 toTerminateFromSelector:(SEL)arg2; +- (id)_currentTerminationHandler; +- (unsigned long long)applicationShouldTerminate:(id)arg1; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)applicationWillTerminate:(id)arg1; +- (void)addTerminationHandler:(id)arg1; +- (void)removeTerminationHandler:(id)arg1; +- (void)handler:(id)arg1 approvedQuit:(BOOL)arg2; +- (void)replyToApplicationShouldTerminate:(BOOL)arg1; +@property BOOL hasPerformedDelayedInitialization; // @synthesize hasPerformedDelayedInitialization=_hasPerformedDelayedInitialization; +@property BOOL isExitingFullscreen; // @synthesize isExitingFullscreen=_isExitingFullscreen; +@property BOOL isCurrentlyTerminating; // @synthesize isCurrentlyTerminating=_isTerminating; +- (void)_insertInAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInAccounts:(id)arg1; +- (void)insertInAosImapAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInAosImapAccounts:(id)arg1; +- (void)insertInImapAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInImapAccounts:(id)arg1; +- (void)insertInPopAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInPopAccounts:(id)arg1; +- (void)removeFromAccountsAtIndex:(unsigned long long)arg1; +- (id)deliveryAccounts; +- (long long)backgroundThreadCount; +- (int)defaultMessageFormat; +- (void)setDefaultMessageFormat:(int)arg1; +- (BOOL)autosaveComposeWindows; +- (void)setAutosaveComposeWindows:(BOOL)arg1; +- (long long)spellCheckingBehavior; +- (void)setSpellCheckingBehavior:(long long)arg1; +- (BOOL)checkGrammarWithSpelling; +- (void)setCheckGrammarWithSpelling:(BOOL)arg1; +- (BOOL)expandGroupAddresses; +- (void)setExpandGroupAddresses:(BOOL)arg1; +- (BOOL)useAddressCompletion; +- (void)setUseAddressCompletion:(BOOL)arg1; +- (id)ldapServerNamed:(id)arg1; +- (id)ldapServers; +- (void)insertInLdapServers:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInLdapServers:(id)arg1; +- (void)removeFromLdapServersAtIndex:(unsigned long long)arg1; +- (BOOL)replyInSameFormat; +- (void)setReplyInSameFormat:(BOOL)arg1; +- (BOOL)alwaysCCMyself; +- (void)setAlwaysCCMyself:(BOOL)arg1; +- (BOOL)alwaysBCCMyself; +- (void)setAlwaysBCCMyself:(BOOL)arg1; +- (BOOL)includeOriginalMessage; +- (void)setIncludeOriginalMessage:(BOOL)arg1; +- (BOOL)includeAllOfOriginalMessage; +- (void)setIncludeAllOfOriginalMessage:(BOOL)arg1; +- (BOOL)shouldCheckIntranetDomains; +- (BOOL)signOutgoingMessages; +- (void)setSignOutgoingMessages:(BOOL)arg1; +- (BOOL)encryptOutgoingMessages; +- (void)setEncryptOutgoingMessages:(BOOL)arg1; +- (BOOL)inlineSpellCheckingEnabled; +- (void)setInlineSpellCheckingEnabled:(BOOL)arg1; +- (id)intranetDomains; +- (void)setShouldCheckIntranetDomains:(BOOL)arg1 withString:(id)arg2; +- (void)fontsAndColorsPreferencesDidChange:(BOOL)arg1; +- (void)fontsAndColorsPreferencesDidChange; +- (void)setMessageFont:(id)arg1 size:(double)arg2; +- (void)setFixedPitchFont:(id)arg1 size:(double)arg2; +- (BOOL)colorQuotedText; +- (void)setColorQuotedText:(BOOL)arg1; +- (id)messageListFont; +- (void)setMessageListFont:(id)arg1; +- (double)messageListFontSize; +- (void)setMessageListFontSize:(double)arg1; +- (id)messageFont; +- (void)setMessageFont:(id)arg1; +- (double)messageFontSize; +- (void)setMessageFontSize:(double)arg1; +- (BOOL)useFixedWidthFont; +- (void)setUseFixedWidthFont:(BOOL)arg1; +- (id)fixedWidthFont; +- (void)setFixedWidthFont:(id)arg1; +- (double)fixedWidthFontSize; +- (void)setFixedWidthFontSize:(double)arg1; +- (void)setQuotingColor:(int)arg1 forLevel:(long long)arg2; +- (int)quotingColorForLevel:(long long)arg1; +- (int)quotingColorValue:(id)arg1; +- (int)levelOneQuotingColor; +- (void)setLevelOneQuotingColor:(int)arg1; +- (int)levelTwoQuotingColor; +- (void)setLevelTwoQuotingColor:(int)arg1; +- (int)levelThreeQuotingColor; +- (void)setLevelThreeQuotingColor:(int)arg1; +- (BOOL)playOtherMailSounds; +- (void)setPlayOtherMailSounds:(BOOL)arg1; +- (id)soundPathForNewMail; +- (void)setSoundPathForNewMail:(id)arg1; +- (id)mailSoundForNewMail; +- (void)setMailSoundForNewMail:(id)arg1; +- (id)downloadFolderPath; +- (void)setDownloadFolderPath:(id)arg1; +- (BOOL)indexDecryptedMessages; +- (void)setIndexDecryptedMessages:(BOOL)arg1; +- (void)_runTestNamed:(id)arg1 iteration:(unsigned long long)arg2; +- (void)application:(id)arg1 runTest:(unsigned long long)arg2 duration:(double)arg3; +- (void)openSelectedFolder:(id)arg1; +- (id)indicesOfObjectsByEvaluatingObjectSpecifier:(id)arg1; +- (id)applescriptSelection; +- (id)accounts; +- (id)_accountsOfClass:(Class)arg1; +- (id)popAccounts; +- (id)imapAccounts; +- (id)aosImapAccounts; +- (void)insertInDeliveryAccounts:(id)arg1 atIndex:(long long)arg2; +- (void)insertInDeliveryAccounts:(id)arg1; +- (void)removeFromDeliveryAccountsAtIndex:(unsigned long long)arg1; +- (id)messageViewers; +- (id)valueInMessageViewersWithUniqueID:(id)arg1; +- (void)insertInMessageViewers:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInMessageViewers:(id)arg1; +- (void)removeFromMessageViewersAtIndex:(unsigned long long)arg1; +- (id)inbox; +- (id)outbox; +- (id)draftsMailbox; +- (id)sentMailbox; +- (id)trashMailbox; +- (id)junkMailbox; +- (id)mailboxes; +- (id)valueInMailboxesWithName:(id)arg1; +- (void)removeFromMailboxesAtIndex:(unsigned long long)arg1; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInMailboxes:(id)arg1; +- (void)replaceInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)messageEditors; +- (void)insertInMessageEditors:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInMessageEditors:(id)arg1; +- (void)removeFromMessageEditorsAtIndex:(unsigned long long)arg1; +- (id)composeMessages; +- (void)insertInComposeMessages:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInComposeMessages:(id)arg1; +- (void)removeFromComposeMessagesAtIndex:(unsigned long long)arg1; +- (id)valueInComposeMessagesWithUniqueID:(id)arg1; +- (id)_objectSpecifierForObject:(id)arg1 inArray:(id)arg2 withKey:(id)arg3; +- (BOOL)shouldAutoFetch; +- (void)setShouldAutoFetch:(BOOL)arg1; +- (long long)autoFetchFrequency; +- (void)setAutoFetchFrequency:(long long)arg1; +- (BOOL)useKeychain; +- (void)setUseKeychain:(BOOL)arg1; +- (BOOL)logAllSocketActivity; +- (void)setLogAllSocketActivity:(BOOL)arg1; +- (id)logActivityOnPorts; +- (void)setLogActivityOnPorts:(id)arg1; +- (id)logActivityOnHosts; +- (void)setLogActivityOnHosts:(id)arg1; +- (id)logMessages; +- (id)handleCheckMailCommand:(id)arg1; +- (id)handleSynchronizeAccountCommand:(id)arg1; +- (id)handleImportMboxCommand:(id)arg1; +- (void)_registerAppleEventQueue; +- (void)_registerAppleEventHandlers; +- (void)_unregisterAppleEventHandlers; +- (void)queueAppleEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleGURLAppleEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleMailWebPageEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleMailWebLinkEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleShowAccountPreferencesEvent:(id)arg1 replyEvent:(id)arg2; +- (void)continueAccountSetupEvent:(id)arg1 replyEvent:(id)arg2; +- (void)openHelpTopic:(id)arg1; +- (void)_turnOnConversationView; +- (void)_upgradeNoteTodoFlagToolbarItems; +- (void)_switchToolbarsToIconOnly; +- (void)_preserveSignatureAboveQuotedTextPreference; +- (void)_adoptNewToolbarDefaultConfigurations; +- (id)_convertSLToLionKey:(id)arg1; +- (void)_upgradeExpandedMailboxesPreference; +- (void)performMailUpgrade; +- (void)_runPasswordPanelInMainThreadWithInfo:(struct MailPasswordInfo *)arg1; +- (id)queryUserForPasswordWithMessage:(id)arg1 title:(id)arg2 remember:(char *)arg3; +- (void)_runAlertPanelInMainThreadWithInfo:(struct MailAlertInfo *)arg1; +- (long long)runAlertPanelWithTitle:(id)arg1 defaultTitle:(id)arg2 alternateTitle:(id)arg3 otherTitle:(id)arg4 message:(id)arg5; +- (long long)informUserOfError:(id)arg1; +- (BOOL)queryUserWithMessageText:(id)arg1 informativeText:(id)arg2 defaultButton:(id)arg3 alternateButton:(id)arg4; +- (BOOL)showCertificateTrustPanelForError:(id)arg1 host:(id)arg2; +- (void)_informUserOfDatabaseError:(id)arg1; +- (void)informUserOfIOErrorWithStateIn:(long long *)arg1; +- (void)informUserOfBusyDatabaseWithRecoverer:(id)arg1 diagnosis:(long long *)arg2; +- (long long)queryUserForBigMessageAction:(id)arg1; +- (void)downloadBigMessage:(id)arg1; +- (void)storeBeingInvalidated:(id)arg1; +- (BOOL)shouldInvalidateMailbox:(id)arg1; +- (id)sharedAttachmentContextMenu; +- (BOOL)isTerminating; +- (void)relaunchAndQuit; +- (void)relaunchAndQuitWithAdditionalArguments:(id)arg1; +- (BOOL)wakingFromSleep; +- (BOOL)personWithEmailIsOnline:(id)arg1; +- (BOOL)openTemporaryAttachments:(id)arg1 applicationBundle:(id)arg2; +- (BOOL)isInTimeMachineMode; +- (void)setIsInTimeMachineMode:(BOOL)arg1; +- (id)rules; +- (void)insertInRules:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInRules:(id)arg1; +- (void)removeFromRulesAtIndex:(unsigned long long)arg1; +- (void)insertInSignatures:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInSignatures:(id)arg1; +- (void)removeFromSignaturesAtIndex:(unsigned long long)arg1; +- (id)signatures; +- (BOOL)chooseSignatureWhenComposing; +- (void)setChooseSignatureWhenComposing:(BOOL)arg1; +- (id)selectedSignature; +- (void)setSelectedSignature:(id)arg1; +- (BOOL)downloadHTMLAttachments; +- (void)setDownloadHTMLAttachments:(BOOL)arg1; +- (int)headerDetail; +- (void)setHeaderDetail:(int)arg1; +- (BOOL)shouldShowPresence; +- (void)setShouldShowPresence:(BOOL)arg1; +- (BOOL)shouldHighlightThreads; +- (void)setShouldHighlightThreads:(BOOL)arg1; +- (BOOL)shouldShowMailboxesAtLeft; +- (void)setShouldShowUnreadMessagesInBold:(BOOL)arg1; +- (BOOL)shouldShowUnreadMessagesInBold; + +@end + diff --git a/MailHeaders/Lion/Mail/MailAutoTest.h b/MailHeaders/Lion/Mail/MailAutoTest.h new file mode 100644 index 00000000..bb172b3b --- /dev/null +++ b/MailHeaders/Lion/Mail/MailAutoTest.h @@ -0,0 +1,50 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class AutoLogger, MailboxUid, MessageViewer, NSRunLoop, NSString, NSTimer; + +@interface MailAutoTest : NSObject +{ + MessageViewer *_messageViewer; + unsigned long long _expectedNumberOfMessages; + NSRunLoop *_waitingRunLoop; + BOOL _shouldStopWaiting; + NSString *_waitingNotificationName; + id _waitingNotificationObject; + NSTimer *_redrawTimer; + MailboxUid *_destinationMailboxUid; + unsigned long long _numberOfMessagesToTransfer; + double _testDuration; + AutoLogger *_logger; +} + +- (id)init; +- (void)dealloc; +- (void)setUp; +- (void)performTest; +- (void)tearDown; +- (void)configureComposeWindowHeaders:(id)arg1 forDocumentEditor:(id)arg2; +- (BOOL)sendMessageForDocumentEditor:(id)arg1 beforeDate:(id)arg2; +- (id)messageWithSubject:(id)arg1 inMailbox:(id)arg2; +- (void)getReadyToWaitForNotificationName:(id)arg1 fromObject:(id)arg2; +- (BOOL)waitForNotificationBeforeDate:(id)arg1; +- (BOOL)waitForMessageViewerToLoadNumberOfMessages:(unsigned long long)arg1 inMailboxes:(id)arg2 beforeDate:(id)arg3; +- (BOOL)waitForWindow:(id)arg1 toStopDrawingForInterval:(double)arg2 beforeDate:(id)arg3; +- (void)getReadyToWaitForTransferOfMessages:(id)arg1 withDestination:(id)arg2; +- (BOOL)waitForMessageTransferBeforeDate:(id)arg1 verify:(BOOL)arg2; +- (void)_setString:(id)arg1 forField:(id)arg2 inHeadersEditor:(id)arg3; +- (void)_notificationReceived:(id)arg1; +- (void)_poke; +- (void)_mallStoreStructureChanged:(id)arg1; +- (void)_windowDidUpdate:(id)arg1; +- (void)_redrawTimerFinished:(id)arg1; +@property(retain) AutoLogger *logger; // @synthesize logger=_logger; +@property double testDuration; // @synthesize testDuration=_testDuration; + +@end + diff --git a/MailHeaders/Lion/Mail/MailAutoTestRunner.h b/MailHeaders/Lion/Mail/MailAutoTestRunner.h new file mode 100644 index 00000000..c8995f2e --- /dev/null +++ b/MailHeaders/Lion/Mail/MailAutoTestRunner.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MailAutoTestRunner : NSObject +{ +} + ++ (void)runAutomatedTests; ++ (void)runTestAsSelfTest:(id)arg1; ++ (BOOL)isRunningAutomatedTests; ++ (void)_setupDefaultAccount; + +@end + diff --git a/MailHeaders/Lion/Mail/MailBarContainerButton.h b/MailHeaders/Lion/Mail/MailBarContainerButton.h new file mode 100644 index 00000000..e0b6783a --- /dev/null +++ b/MailHeaders/Lion/Mail/MailBarContainerButton.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface MailBarContainerButton : NSButton +{ + BOOL _isPerformingSearchScope; +} + ++ (Class)cellClass; ++ (id)mailBarContainerButtonFont; +- (id)initWithFrame:(struct CGRect)arg1; +@property BOOL isPerformingSearchScope; // @synthesize isPerformingSearchScope=_isPerformingSearchScope; + +@end + diff --git a/MailHeaders/Lion/Mail/MailBarContainerButtonCell.h b/MailHeaders/Lion/Mail/MailBarContainerButtonCell.h new file mode 100644 index 00000000..1741471e --- /dev/null +++ b/MailHeaders/Lion/Mail/MailBarContainerButtonCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface MailBarContainerButtonCell : NSButtonCell +{ +} + +- (void)drawBezelWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/MailBarContainerView.h b/MailHeaders/Lion/Mail/MailBarContainerView.h new file mode 100644 index 00000000..0381ee7b --- /dev/null +++ b/MailHeaders/Lion/Mail/MailBarContainerView.h @@ -0,0 +1,70 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +#import "NSAnimationDelegate-Protocol.h" + +@class FavoritesBarView, MailSearchScopeView, MessageViewer, NSButton, NSProgressIndicator, NSViewAnimation; + +@interface MailBarContainerView : NSView +{ + FavoritesBarView *_favoritesBarView; + MessageViewer *_messageViewer; + NSButton *_leftSidebarButton; + NSView *_searchScopeViewSuperview; + MailSearchScopeView *_searchScopeView; + NSViewAnimation *_searchScopeAnimation; + NSButton *_saveButton; + NSProgressIndicator *_progressIndicator; + double _xPositionOfSeparator; + int _searchTarget; + BOOL _isVisible; + BOOL _isSearchScopeViewVisible; + BOOL _barWasHiddenBeforeSearch; +} + ++ (id)colorForLightSeparatorLineIsMain:(BOOL)arg1; ++ (id)colorForLightSeparatorLineShadowIsMain:(BOOL)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)awakeFromNib; +- (void)dealloc; +- (BOOL)isFlipped; +- (void)drawRect:(struct CGRect)arg1; +- (double)_startPositionOfFirstViewAfterSeparator; +- (double)barHeight; +- (id)toggleBarContainerAnimationDictionary; +- (void)_toolbarVisibilityDidChange:(id)arg1; +- (id)_sidebarButtonImage; +- (id)_sidebarButtonText; +- (id)_sidebarButtonTooltip; +- (id)_sidebarButton; +- (void)_mailboxesVisibilityChanged:(id)arg1; +- (void)_setupSearchScopeViewUI; +- (void)setSearchScopeViewVisible:(BOOL)arg1 animate:(BOOL)arg2; +- (void)finishedShowHideAnimation; +- (void)_tearDown; +- (void)_animationDidEndOrStop:(id)arg1; +- (void)animationDidEnd:(id)arg1; +- (void)animationDidStop:(id)arg1; +- (void)clearSearchButtons; +- (void)startProgressAnimation; +- (void)stopProgressAnimation; +- (void)setCanSaveSearch:(BOOL)arg1; +- (void)setCanSearchSelectedMailbox:(BOOL)arg1; +- (BOOL)isShowingSearchResults; +- (void)_performSearch; +- (void)_saveButtonAction:(id)arg1; +- (BOOL)accessibilityIsIgnored; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +@property(readonly, nonatomic) BOOL barWasHiddenBeforeSearch; // @synthesize barWasHiddenBeforeSearch=_barWasHiddenBeforeSearch; +@property int searchTarget; // @synthesize searchTarget=_searchTarget; +@property(nonatomic) BOOL isVisible; // @synthesize isVisible=_isVisible; + +@end + diff --git a/MailHeaders/Lion/Mail/MailCopyCommand.h b/MailHeaders/Lion/Mail/MailCopyCommand.h new file mode 100644 index 00000000..e2102200 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailCopyCommand.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSCloneCommand.h" + +@interface MailCopyCommand : NSCloneCommand +{ +} + +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Lion/Mail/MailDeleteCommand.h b/MailHeaders/Lion/Mail/MailDeleteCommand.h new file mode 100644 index 00000000..1a71078a --- /dev/null +++ b/MailHeaders/Lion/Mail/MailDeleteCommand.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSDeleteCommand.h" + +@interface MailDeleteCommand : NSDeleteCommand +{ +} + +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Lion/Mail/MailDocumentEditor.h b/MailHeaders/Lion/Mail/MailDocumentEditor.h new file mode 100644 index 00000000..5e401301 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailDocumentEditor.h @@ -0,0 +1,211 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DocumentEditor.h" + +#import + +@class CALayer, ColorBackgroundView, DeliveryFailure, MailWindowShadowLayer, MessageViewer, NSButton, NSMutableArray, NSPopUpButton, NSProgressIndicator, NSScroller, NSTextField, NSView, NSViewAnimation, NSWindow, StationerySelector; + +@interface MailDocumentEditor : DocumentEditor +{ + DeliveryFailure *_deliveryFailure; + ColorBackgroundView *_stationeryPane; + StationerySelector *_stationerySelector; + NSTextField *_stationeryNameTextField; + NSButton *_stationeryNameSaveButton; + ColorBackgroundView *_borderView; + NSScroller *_fakeScroller; + NSViewAnimation *_stationeryPaneAnimator; + NSView *_imageStatusView; + NSTextField *_imageFileSizeLabel; + NSTextField *_imageFileSizeTextField; + NSPopUpButton *_imageSizePopup; + NSProgressIndicator *_imageResizingProgressWheel; + NSTextField *_imageResizingProgressField; + NSMutableArray *_imageResizers; + unsigned long long _textLengthForLastEstimatedMessageSize; + unsigned long long _encryptionOverhead; + BOOL _sendWhenFinishLoading; + BOOL _hasIncludedAttachmentsFromOriginal; + NSMutableArray *_unapprovedRecipients; + NSMutableArray *_userActionQueue; + BOOL _shouldDoPopOutAnimation; + 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 _mainWindowRect; + struct CGRect _composeWindowFrame; + struct CGImage *_mainWindowNonKeySnapshot; + MessageViewer *_messageViewerToAttach; + BOOL _sendAnimationIsInProgress; + BOOL _sendAnimationCancelled; + BOOL _shouldCloseWindowWhenAnimationCompletes; +} + ++ (BOOL)documentType; ++ (id)documentEditors; ++ (id)createEditorWithType:(int)arg1 settings:(id)arg2; ++ (void)restoreDraftMessage:(id)arg1 withSavedState:(id)arg2; ++ (void)emailAddressesApproved:(id)arg1; ++ (void)emailsRejected:(id)arg1; ++ (void)_emailAddresses:(id)arg1 approvedOrRejected:(BOOL)arg2; ++ (void)_setMessageStatus:(id)arg1 onMessageID:(id)arg2; ++ (void)_presentFullScreenDeliveryFailureWithError:(id)arg1; ++ (void)handleFailedDeliveryOfMessage:(id)arg1 store:(id)arg2 error:(id)arg3; ++ (id)keyPathsForValuesAffectingDeliveryAccount; +- (id)init; +- (id)initWithBackEnd:(id)arg1; +- (id)initWithType:(int)arg1 settings:(id)arg2; +- (id)initWithType:(int)arg1 settings:(id)arg2 backEnd:(id)arg3; +- (BOOL)load; +- (void)finishLoadingEditor; +- (void)dealloc; +- (void)show; +- (int)messageType; +- (void)changeReplyMode:(id)arg1; +- (void)replyMessage:(id)arg1; +- (void)replyAllMessage:(id)arg1; +- (void)loadInitialDocumentIntoWebView:(id)arg1; +- (void)backEndDidLoadInitialContent:(id)arg1; +- (void)_attachmentFinishedDownloading:(id)arg1; +- (id)document; +- (id)webView; +- (id)parsedMessageFromSettings:(id)arg1; +- (void)continueLoadingInitialContent; +- (void)_synchronizeIncludeAttachmentsToolbarItem:(id)arg1; +- (void)toolbarWillAddItem:(id)arg1; +- (double)_animationDuration; +- (void)showOrHideStationery:(id)arg1; +- (void)animationDidEnd:(id)arg1; +- (BOOL)stationeryPaneIsVisible; +- (id)currentStationery; +- (void)loadStationery:(id)arg1; +- (void)saveAsStationery:(id)arg1; +- (void)_continueSaveAsStationery:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)controlTextDidChange:(id)arg1; +- (void)cancelSaveAsStationery:(id)arg1; +- (void)saveSaveAsStationery:(id)arg1; +- (void)_saveAsStationeryErrorSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (BOOL)canSave; +- (void)saveMessageToDrafts:(id)arg1; +- (void)backEnd:(id)arg1 willCreateMessageWithHeaders:(id)arg2; +- (BOOL)backEnd:(id)arg1 shouldSaveMessage:(id)arg2; +- (void)backEndDidChange:(id)arg1; +- (void)backEndSenderDidChange:(id)arg1; +- (void)removeAttachments:(id)arg1; +- (void)insertOriginalAttachments:(id)arg1; +- (BOOL)_restoreOriginalAttachments; +- (void)alwaysSendWindowsFriendlyAttachments:(id)arg1; +- (void)sendWindowsFriendlyAttachments:(id)arg1; +- (void)_setSendWindowsFriendlyAttachments:(BOOL)arg1; +- (void)alwaysAttachFilesAtEnd:(id)arg1; +- (void)attachFilesAtEnd:(id)arg1; +- (void)insertFile:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)_sendButtonShouldBeEnabled; +- (void)_setUnapprovedRecipients:(id)arg1; +- (void)_askApprovalSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)showImmediately; +- (void)send:(id)arg1; +- (void)sendMessageAfterChecking:(id)arg1; +- (void)backEndDidCancelMessageDeliveryForAttachmentError:(id)arg1; +- (void)_attachmentErrorSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)cancelSendingStationery:(id)arg1; +- (void)continueSendingStationery:(id)arg1; +- (void)_emptyMessageSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_malformedAddressSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_noRecipientsSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)backEndDidAppendMessageToOutbox:(id)arg1 result:(int)arg2; +- (void)_failedToAppendToOutboxSheetClosed:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (BOOL)backEnd:(id)arg1 shouldDeliverMessage:(id)arg2; +- (void)_setMessageStatusOnOriginalMessage; +- (void)backEnd:(id)arg1 didCancelMessageDeliveryForError:(id)arg2; +- (void)reportDeliveryFailure:(id)arg1; +- (void)cancelModal:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)forceClose; +- (void)backEnd:(id)arg1 didCancelMessageDeliveryForMissingCertificatesForRecipients:(id)arg2; +- (id)missingCertificatesMessageForRecipients:(id)arg1 uponDelivery:(BOOL)arg2; +- (void)backEnd:(id)arg1 didCancelMessageDeliveryForEncryptionError:(id)arg2; +- (void)_shouldDeliverMessageAlertWithoutEncryptionSheetDidDismiss:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (id)deliveryAccount; +- (void)setDeliveryAccount:(id)arg1; +- (void)changeSignature:(id)arg1; +- (void)editSignatures:(id)arg1; +- (void)imageSizePopupChanged:(id)arg1; +- (void)messageSizeDidChange:(id)arg1; +- (void)encryptionStatusDidChange; +- (void)updateAttachmentStatus; +- (unsigned char)_isAttachmentScalable:(id)arg1; +- (unsigned char)_attachmentsContainScalableImage:(id)arg1 scalables:(id)arg2; +- (void)_updateImageSizePopup; +- (BOOL)_imageStatusHidden; +- (void)_showImageStatusView; +- (void)_hideImageStatusView; +- (struct CGSize)_imageSizeForTag:(long long)arg1; +- (struct CGSize)_selectedImageSize; +- (id)_maxImageSizeAsString; +- (void)_processNextImageResizer; +- (void)_imageResizeDidFinish:(id)arg1; +- (BOOL)_isResizingImages; +- (id)_resizerForAttachment:(id)arg1; +- (BOOL)_resizeAttachment:(id)arg1; +- (BOOL)_resizeImageAttachments:(id)arg1; +- (unsigned long long)_textLengthEstimate; +- (unsigned long long)_signatureOverhead; +- (unsigned long long)_encryptionOverhead; +- (unsigned long long)_estimateMessageSize; +- (void)_saveImageSizeToDefaults; +- (void)_setImageSizePopupToSize:(id)arg1; +- (id)attachmentStatusNeighborView; +- (void)_mailAttachmentsDeleted; +- (void)mailAttachmentsDeleted:(id)arg1; +- (id)mailAttachmentsAdded:(id)arg1; +- (BOOL)windowShouldClose:(id)arg1; +- (void)appendMessages:(id)arg1; +- (void)appendMessageArray:(id)arg1; +- (void)_appendMessages:(id)arg1 withParsedMessages:(id)arg2; +- (void)_generateParsedMessagesToAppendForMessages:(id)arg1; +- (void)makeRichText:(id)arg1; +- (void)makePlainText:(id)arg1; +- (void)makeFontBigger:(id)arg1; +- (void)makeFontSmaller:(id)arg1; +- (void)addCcHeader:(id)arg1; +- (void)addBccHeader:(id)arg1; +- (void)addReplyToHeader:(id)arg1; +- (void)setMessagePriority:(id)arg1; +- (void)_getMainWindowSnapshot; +- (void)_getSnapshotsForAnimation; +- (BOOL)_canDoPopOutAnimation; +- (void)_setupPopOutAnimation; +- (id)_positionAnimationWithStartPosition:(struct CGPoint)arg1 endPosition:(struct CGPoint)arg2 percentFromStart:(double)arg3; +- (id)_sizeAnimation; +- (id)_messageHeaderAnimation; +- (id)_composeHeaderAnimation; +- (id)_messageBodyAnimation; +- (id)_composeBodyAnimation; +- (id)_mainWindowAnimation; +- (id)_toolbarAnimation; +- (void)_doPopOutAnimationIfPossible; +- (void)_performPopOutAnimation; +- (void)_cleanupAnimation; +- (void)_animationCompleted; +- (void)_performSendAnimation; +- (void)_sendAnimationCompleted; + +@end + diff --git a/MailHeaders/Lion/Mail/MailDocumentEditor_Scripting.h b/MailHeaders/Lion/Mail/MailDocumentEditor_Scripting.h new file mode 100644 index 00000000..04cea7a1 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailDocumentEditor_Scripting.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailDocumentEditor.h" + +@interface MailDocumentEditor_Scripting : MailDocumentEditor +{ +} + +- (Class)backEndClass; + +@end + diff --git a/MailHeaders/Lion/Mail/MailEmailImporter.h b/MailHeaders/Lion/Mail/MailEmailImporter.h new file mode 100644 index 00000000..9a0ffc8f --- /dev/null +++ b/MailHeaders/Lion/Mail/MailEmailImporter.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +#import "AddProgressMonitor-Protocol.h" + +@class ImportItem; + +@interface MailEmailImporter : FilesystemEmailImporter +{ + ImportItem *_currentItem; + unsigned long long _currentItemMessageIndex; + unsigned long long _currentItemMessageCount; + long long _currentBlockSize; +} + ++ (id)name; ++ (id)explanatoryText; +- (void)dealloc; +- (id)pathExtensions; +- (double)progressValueForMailboxAtPath:(id)arg1; +- (id)prepareForImport; +- (BOOL)isValidMailbox:(id)arg1; +- (void)importMailbox:(id)arg1; +- (void)setFractionDone:(double)arg1; +- (id)mailboxNameForImportItem:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MailFullScreenWindowDelegate-Protocol.h b/MailHeaders/Lion/Mail/MailFullScreenWindowDelegate-Protocol.h new file mode 100644 index 00000000..c2fd11bc --- /dev/null +++ b/MailHeaders/Lion/Mail/MailFullScreenWindowDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MailFullScreenWindowDelegate +- (id)windowForMailFullScreen; +- (BOOL)mailFullScreenWindowShouldClose:(id)arg1; +- (void)restoreFrame; +@end + diff --git a/MailHeaders/Lion/Mail/MailInspectorBar.h b/MailHeaders/Lion/Mail/MailInspectorBar.h new file mode 100644 index 00000000..bfa82689 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailInspectorBar.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSInspectorBar.h" + +@class NSView, NSWindow; + +@interface MailInspectorBar : NSInspectorBar +{ + NSWindow *_window; + NSView *_separatorView; +} + ++ (Class)standardItemControllerClass; +- (void)dealloc; +- (id)loadedNib; +- (void)_setWindow:(id)arg1; +- (id)_inspectorBarView; +- (void)_tile; + +@end + diff --git a/MailHeaders/Lion/Mail/MailInspectorBarItemController.h b/MailHeaders/Lion/Mail/MailInspectorBarItemController.h new file mode 100644 index 00000000..39538583 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailInspectorBarItemController.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSInspectorBarDelegate-Protocol.h" +#import "NSInspectorBarItemController-Protocol.h" + +@class NSInspectorBar, NSPopUpButton, NSSegmentedControl; + +@interface MailInspectorBarItemController : NSObject +{ + NSInspectorBar *_inspectorBar; + NSPopUpButton *_fontSizePopUpButton; + NSPopUpButton *_listPopUpButton; + NSPopUpButton *_indentationPopUpButton; + NSSegmentedControl *_textAlignmentSegmentedControl; +} + ++ (id)supportedInspectorItemIdentifiers; ++ (id)loadedNib; ++ (id)keyForItemIdentifier:(id)arg1; +- (void)dealloc; +- (void)loadNib; +- (id)newMenuItemForFontSize:(double)arg1; +- (void)selectedFontDidChange:(id)arg1; +- (void)selectFontSize:(double)arg1; +- (void)removePlaceholderFontSize; +- (void)changeFontSize:(id)arg1; +- (void)changeTextAlignment:(id)arg1; +- (id)inspectorBar:(id)arg1 itemForIdentifier:(id)arg2; +- (id)viewForInspectorBarItem:(id)arg1; +@property(retain) NSSegmentedControl *textAlignmentSegmentedControl; // @synthesize textAlignmentSegmentedControl=_textAlignmentSegmentedControl; +@property(retain) NSPopUpButton *indentationPopUpButton; // @synthesize indentationPopUpButton=_indentationPopUpButton; +@property(retain) NSPopUpButton *listPopUpButton; // @synthesize listPopUpButton=_listPopUpButton; +@property(retain) NSPopUpButton *fontSizePopUpButton; // @synthesize fontSizePopUpButton=_fontSizePopUpButton; +@property NSInspectorBar *inspectorBar; // @synthesize inspectorBar=_inspectorBar; + +@end + diff --git a/MailHeaders/Lion/Mail/MailMediaBrowser.h b/MailHeaders/Lion/Mail/MailMediaBrowser.h new file mode 100644 index 00000000..83cb2b2c --- /dev/null +++ b/MailHeaders/Lion/Mail/MailMediaBrowser.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ILMediaBrowserView, NSPanel; + +@interface MailMediaBrowser : NSObject +{ + ILMediaBrowserView *_browser; + NSPanel *_panel; +} + ++ (id)sharedInstance; +- (void)toggle; +- (void)showPanel; +- (void)hidePanel; + +@end + diff --git a/MailHeaders/Lion/Mail/MailMoveCommand.h b/MailHeaders/Lion/Mail/MailMoveCommand.h new file mode 100644 index 00000000..367a0b5f --- /dev/null +++ b/MailHeaders/Lion/Mail/MailMoveCommand.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMoveCommand.h" + +@interface MailMoveCommand : NSMoveCommand +{ +} + ++ (void)_performBackgroundCommand:(id)arg1 copyMessages:(id)arg2 fromStores:(id)arg3 toMailboxUid:(id)arg4 shouldDelete:(BOOL)arg5; +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Lion/Mail/MailNotificationCenter.h b/MailHeaders/Lion/Mail/MailNotificationCenter.h new file mode 100644 index 00000000..5b47de87 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailNotificationCenter.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@class NSHashTable; + +@interface MailNotificationCenter : NSNotificationCenter +{ + NSHashTable *_nameTable; +} + +- (void)dealloc; +- (void)addObserver:(id)arg1 selector:(SEL)arg2 name:(id)arg3 object:(id)arg4; +- (void)addObserverInMainThread:(id)arg1 selector:(SEL)arg2 name:(id)arg3 object:(id)arg4; +- (void)postNotification:(id)arg1; +- (void)postNotificationName:(id)arg1 object:(id)arg2 userInfo:(id)arg3; +- (void)_postNotificationWithMangledName:(id)arg1 object:(id)arg2 userInfo:(id)arg3; +- (void)removeSafeObserver:(id)arg1; +- (void)removeObserver:(id)arg1 name:(id)arg2 object:(id)arg3; + +@end + diff --git a/MailHeaders/Lion/Mail/MailPopoverWell.h b/MailHeaders/Lion/Mail/MailPopoverWell.h new file mode 100644 index 00000000..1a5acfdf --- /dev/null +++ b/MailHeaders/Lion/Mail/MailPopoverWell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPopoverColorWell.h" + +@interface MailPopoverWell : NSPopoverColorWell +{ +} + ++ (id)_bezelRenderingButton; +- (void)awakeFromNib; +- (struct CGSize)colorSwatchInset; + +@end + diff --git a/MailHeaders/Lion/Mail/MailPreferences.h b/MailHeaders/Lion/Mail/MailPreferences.h new file mode 100644 index 00000000..a25430cb --- /dev/null +++ b/MailHeaders/Lion/Mail/MailPreferences.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferences.h" + +@interface MailPreferences : NSPreferences +{ +} + ++ (void)configureFetchFrequencyPopUp:(id)arg1 forMessageType:(BOOL)arg2; +- (id)windowTitle; +- (void)changeFont:(id)arg1; +- (unsigned long long)validModesForFontPanel:(id)arg1; +- (BOOL)fontManager:(id)arg1 willIncludeFont:(id)arg2; +- (void)windowWillClose:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MailScroller.h b/MailHeaders/Lion/Mail/MailScroller.h new file mode 100644 index 00000000..c14821d3 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailScroller.h @@ -0,0 +1,53 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSScroller.h" + +@class NSImage; + +@interface MailScroller : NSScroller +{ + NSImage *_paddingImage; + NSImage *_hiddenImage; + NSImage *_slotStartImage; + NSImage *_slotMiddleImage; + NSImage *_slotEndImage; + NSImage *_knobStartImage; + NSImage *_knobMiddleImage; + NSImage *_knobEndImage; + double _startPadding; + double _endPadding; + BOOL _isVertical; +} + +- (id)initWithFrame:(struct CGRect)arg1 isVertical:(BOOL)arg2; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (struct CGRect)_rectWithRect:(struct CGRect)arg1 offset:(double)arg2 length:(double)arg3; +- (double)_getLengthFromSize:(struct CGSize)arg1; +- (double)_getLengthFromImage:(id)arg1; +- (struct CGRect)_drawingRectForCustomPart:(int)arg1; +- (struct CGRect)_drawingRectForPart:(unsigned long long)arg1; +- (struct CGRect)rectForPart:(unsigned long long)arg1; +- (BOOL)isUseful; +- (void)drawImage:(id)arg1 asPart:(int)arg2 withDirtyRect:(struct CGRect)arg3; +- (void)drawRect:(struct CGRect)arg1; +- (void)setImagesFlipped:(BOOL)arg1; +- (BOOL)isOpaque; +@property BOOL isVertical; // @synthesize isVertical=_isVertical; +@property double endPadding; // @synthesize endPadding=_endPadding; +@property double startPadding; // @synthesize startPadding=_startPadding; +@property(retain) NSImage *knobEndImage; // @synthesize knobEndImage=_knobEndImage; +@property(retain) NSImage *knobMiddleImage; // @synthesize knobMiddleImage=_knobMiddleImage; +@property(retain) NSImage *knobStartImage; // @synthesize knobStartImage=_knobStartImage; +@property(retain) NSImage *slotEndImage; // @synthesize slotEndImage=_slotEndImage; +@property(retain) NSImage *slotMiddleImage; // @synthesize slotMiddleImage=_slotMiddleImage; +@property(retain) NSImage *slotStartImage; // @synthesize slotStartImage=_slotStartImage; +@property(retain) NSImage *hiddenImage; // @synthesize hiddenImage=_hiddenImage; +@property(retain) NSImage *paddingImage; // @synthesize paddingImage=_paddingImage; + +@end + diff --git a/MailHeaders/Lion/Mail/MailSearchScopeView.h b/MailHeaders/Lion/Mail/MailSearchScopeView.h new file mode 100644 index 00000000..c348306a --- /dev/null +++ b/MailHeaders/Lion/Mail/MailSearchScopeView.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class MailBarContainerButton, MailBarContainerView, NSTextField; + +@interface MailSearchScopeView : NSView +{ + NSTextField *_searchLabel; + MailBarContainerButton *_allButton; + MailBarContainerButton *_extraButton; + MailBarContainerView *_mailBarContainerView; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (BOOL)isFlipped; +- (double)searchScopeViewWidth; +- (void)addExtraButtonTitle:(id)arg1; +- (void)scopeButtonClicked:(id)arg1; +@property(readonly, nonatomic) MailBarContainerButton *extraButton; // @synthesize extraButton=_extraButton; +@property(readonly, nonatomic) MailBarContainerButton *allButton; // @synthesize allButton=_allButton; +@property(nonatomic) MailBarContainerView *mailBarContainerView; // @synthesize mailBarContainerView=_mailBarContainerView; + +@end + diff --git a/MailHeaders/Lion/Mail/MailSorterPreferences.h b/MailHeaders/Lion/Mail/MailSorterPreferences.h new file mode 100644 index 00000000..52dc376b --- /dev/null +++ b/MailHeaders/Lion/Mail/MailSorterPreferences.h @@ -0,0 +1,117 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "SyncableDataInterestedParty-Protocol.h" + +@class AddressTextField, CriteriaUIHelper, DraggingTextView, MailboxesChooser, MessageRule, NSButton, NSMenu, NSMutableArray, NSPanel, NSPopUpButton, NSScrollView, NSTableView, NSTextField, NSTextView, NSView, SoundPopUpButton; + +@interface MailSorterPreferences : NSPreferencesModule +{ + NSTableView *_rulesTable; + NSButton *_editButton; + NSButton *_duplicateButton; + NSButton *_removeButton; + NSPanel *_ruleDetailPanel; + NSTextField *_ruleNameField; + NSButton *_ruleHelpButton; + NSMutableArray *_actionViews; + NSMenu *_actionMenu; + NSScrollView *_actionContainer; + NSView *_soundActionView; + NSView *_colorActionView; + NSView *_transferActionView; + NSView *_copyActionView; + NSView *_autoReplyActionView; + NSView *_autoForwardActionView; + NSView *_autoRedirectActionView; + NSView *_markDeletedActionView; + NSView *_markAsReadActionView; + NSView *_markAsFlaggedActionView; + NSView *_stopEvaluatingRulesActionView; + NSView *_runAppleScriptActionView; + NSView *_notifyUserActionView; + NSPopUpButton *_colorPopup; + NSPopUpButton *_colorStylePopup; + NSPopUpButton *_flagColorPopup; + SoundPopUpButton *_soundPopup; + AddressTextField *_forwardRecipientsField; + AddressTextField *_redirectRecipientsField; + NSPanel *_responseMessageTextPanel; + NSTextView *_responseMessageTextView; + NSTextField *_appleScriptPathField; + CriteriaUIHelper *_criteriaUIHelper; + MailboxesChooser *_destinationChooser; + MailboxesChooser *_copyDestinationChooser; + BOOL _colorPanelShouldBeHidden; + long long _currentlySelectedRow; + MessageRule *_ruleBeingValidated; + MessageRule *_ruleBeingEdited; + DraggingTextView *_addressFieldEditor; + BOOL _isDuplicatingRule; + BOOL _hasPendingChanges; +} + +- (void)dealloc; +- (id)titleForIdentifier:(id)arg1; +- (id)windowTitle; +- (void)awakeFromNib; +- (id)windowWillReturnFieldEditor:(id)arg1 toObject:(id)arg2; +- (id)viewForPreferenceNamed:(id)arg1; +- (id)preferencesNibName; +- (id)imageForPreferenceNamed:(id)arg1; +- (BOOL)dataWillBeSynced; +- (void)dataWasSynced; +- (void)_validateButtonState; +- (void)initializeFromDefaults; +- (void)saveChanges; +- (void)createRule:(id)arg1; +- (void)duplicateRule:(id)arg1; +- (void)editRule:(id)arg1; +- (void)_removeRuleSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)removeRule:(id)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (int)mailTableView:(id)arg1 highlightStyleForRow:(long long)arg2 inRect:(struct CGRect *)arg3 color:(id *)arg4; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (BOOL)mailTableView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (BOOL)_validateDrag:(id)arg1 proposedRow:(long long)arg2 dragOperation:(unsigned long long)arg3; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)_setOtherColor:(id)arg1; +- (void)removeAction:(id)arg1; +- (id)_actionViewForTag:(long long)arg1; +- (void)_addActionForTag:(long long)arg1 atIndex:(long long)arg2; +- (void)_configureColorPopupForColorStyle:(long long)arg1; +- (void)_configureFlagColorPopup; +- (void)_configureActionsForRule:(id)arg1; +- (void)addAction:(id)arg1; +- (void)_validateActionMenuItem:(id)arg1 currentTag:(long long)arg2; +- (void)runRuleDetailPanelForRule:(id)arg1 inWindow:(id)arg2 withHelpButtonTag:(long long)arg3; +- (void)_ruleDetailSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_applyRulesSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)okClicked:(id)arg1; +- (void)cancelClicked:(id)arg1; +- (void)colorChanged:(id)arg1; +- (void)colorPicked:(id)arg1; +- (void)colorStyleChanged:(id)arg1; +- (void)setResponseMessageClicked:(id)arg1; +- (void)responseMessageOKClicked:(id)arg1; +- (void)responseMessageCancelClicked:(id)arg1; +- (void)flagsToApplyChanged:(id)arg1; +- (void)chooseAppleScriptClicked:(id)arg1; +- (void)mailboxSelected:(id)arg1; +- (void)_actionPopupWillPopup:(id)arg1; +- (void)actionPopupChanged:(id)arg1; +- (void)_accountMailboxListingDidChange:(id)arg1; +- (id)titleForSoundFile:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MailSplitView.h b/MailHeaders/Lion/Mail/MailSplitView.h new file mode 100644 index 00000000..fee77ffb --- /dev/null +++ b/MailHeaders/Lion/Mail/MailSplitView.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSSplitView.h" + +@class NSColor, NSImageView, NSString, NSView; + +@interface MailSplitView : NSSplitView +{ + NSString *_oldAutosaveName; + NSColor *_dividerEdgeColor; + NSView *_leftView; + NSImageView *_leftSnapshotView; + NSImageView *_rightSnapshotView; +} + ++ (void)initialize; +- (void)dealloc; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)windowLayoutWillEnterFullScreen:(id)arg1; +- (void)windowLayoutDidEnterFullScreen:(id)arg1; +- (void)windowLayoutWillExitFullScreen:(id)arg1; +- (void)windowLayoutDidExitFullScreen:(id)arg1; +- (void)setAutosaveName:(id)arg1; +@property(copy, nonatomic) NSColor *dividerEdgeColor; +- (void)drawDividerInRect:(struct CGRect)arg1; +- (void)drawColoredEdgeInDividerRect:(struct CGRect)arg1; +- (void)snapshotLeftViewForDividerPosition:(double)arg1; +- (void)removeSnapshotPreventingOverlayScrollersPulse:(BOOL)arg1; +- (void)_preventOverlayScrollersFlashInView:(id)arg1; +- (void)freezeRightViewByDimming:(BOOL)arg1; +- (void)unfreezeRightView; +@property(copy, nonatomic) NSString *oldAutosaveName; // @synthesize oldAutosaveName=_oldAutosaveName; + +@end + diff --git a/MailHeaders/Lion/Mail/MailTableView.h b/MailHeaders/Lion/Mail/MailTableView.h new file mode 100644 index 00000000..a057c718 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailTableView.h @@ -0,0 +1,80 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableView.h" + +@interface MailTableView : NSTableView +{ + struct { + unsigned int delegateProvidesDragImage:1; + unsigned int delegateDoesCommandBySelector:1; + unsigned int delegateDragWillEndOperation:1; + unsigned int delegateDraggedImageMovedTo:1; + unsigned int delegateProvidesBackgroundShadedRegions:1; + unsigned int delegateProvidesHighlightStyle:1; + unsigned int delegateRespondsToWillDrawRowsInRange:1; + unsigned int delegateRespondsToDidDrawRowsInRange:1; + unsigned int delegateApprovesScrolling:1; + unsigned int delegateRespondsToGotEvent:1; + unsigned int delegateRespondsToMouseDown:1; + unsigned int delegateRespondsToWillMoveToWindow:1; + unsigned int delegateRespondsToDidMoveToWindow:1; + unsigned int delegateRespondsToWillStartLiveResize:1; + unsigned int delegateRespondsToDidEndLiveResize:1; + unsigned int delegateRespondsToDidBecomeFirstResponder:1; + unsigned int delegateRespondsToDidResignFirstResponder:1; + unsigned int delegateRespondsToTopLineColor:1; + unsigned int delegateApprovesRemoveColumn:1; + unsigned int delegateApprovesAddColumn:1; + } _extendedTableViewFlags; + long long _mfClickedRow; + BOOL _didLazyLoadMenu; +} + +- (id)_extendedDelegate; +- (id)menuForEvent:(id)arg1; +- (void)_mailTableViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; +- (void)viewWillStartLiveResize; +- (void)viewDidEndLiveResize; +- (void)keyDown:(id)arg1; +- (void)setDelegate:(id)arg1; +- (id)menu; +- (void)drawBackgroundOverhangInRect:(struct CGRect)arg1; +- (void)showTableColumnsFromArray:(id)arg1 allColumns:(id)arg2; +- (void)scrollRowToVisible:(long long)arg1; +- (void)setTableColumn:(id)arg1 toVisible:(BOOL)arg2 atPosition:(long long)arg3; +- (void)moveColumn:(long long)arg1 toColumn:(long long)arg2; +- (void)removeTableColumn:(id)arg1; +- (void)addTableColumn:(id)arg1; +- (id)dragImageForRowsWithIndexes:(id)arg1 tableColumns:(id)arg2 event:(id)arg3 offset:(struct CGPoint *)arg4; +- (void)draggedImage:(id)arg1 endedAt:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (void)draggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; +- (BOOL)shouldUseSecondaryHighlightColor; +- (void)_highlightRect:(struct CGRect)arg1 withColor:(id)arg2 usingStyle:(int)arg3; +- (void)_colorizeRow:(long long)arg1 inRect:(struct CGRect)arg2 clipRect:(struct CGRect)arg3; +- (void)drawBackgroundInClipRect:(struct CGRect)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (void)drawRow:(long long)arg1 clipRect:(struct CGRect)arg2; +- (long long)clickedRow; +- (void)_setMFClickedRow:(long long)arg1; +- (void)mouseDown:(id)arg1; +- (void)mouseUp:(id)arg1; +- (void)_postEventNotification:(id)arg1 fromCell:(id)arg2; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)viewDidMoveToWindow; +- (BOOL)becomeFirstResponder; +- (BOOL)resignFirstResponder; +- (long long)firstSelectedRow; +- (long long)lastSelectedRow; +- (BOOL)isSelectionVisible; +- (void)showSelectionAndCenter:(BOOL)arg1; +- (void)scrollRowToVisible:(long long)arg1 position:(int)arg2; +- (BOOL)isViewBased; + +@end + diff --git a/MailHeaders/Lion/Mail/MailTableViewDelegateDelegate-Protocol.h b/MailHeaders/Lion/Mail/MailTableViewDelegateDelegate-Protocol.h new file mode 100644 index 00000000..ce056446 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailTableViewDelegateDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MailTableViewDelegateDelegate + +@optional +- (id)tableHeaderViewGetDefaultMenu:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/MailTextAttachment.h b/MailHeaders/Lion/Mail/MailTextAttachment.h new file mode 100644 index 00000000..682a2f26 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailTextAttachment.h @@ -0,0 +1,53 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MimeTextAttachment.h" + +@class NSFileWrapper, NSImage; + +@interface MailTextAttachment : MimeTextAttachment +{ + unsigned int _isPossibleToDisplayAttachmentInline:1; + unsigned int _isPossibleToDisplayAttachmentAsView:1; + unsigned int _isDisplayingAttachmentInline:1; + unsigned int _shouldDisplayInlineByDefault:1; + unsigned int _isImageBeingResized:1; + NSFileWrapper *_originalFileWrapper; + NSImage *_originalImage; + struct CGSize _originalImageSize; + struct CGSize _maxImageSize; + struct CGSize _lastMaxImageSize; +} + ++ (void)initialize; ++ (id)replacementAttachmentForAttachment:(id)arg1; +- (id)initWithMimePart:(id)arg1 andFileWrapper:(id)arg2 iconOnly:(BOOL)arg3; +- (id)initWithMimePart:(id)arg1 andFileWrapper:(id)arg2; +- (void)dealloc; +@property BOOL shouldDisplayInlineByDefault; +@property BOOL isPossibleToDisplayAttachmentInline; +@property BOOL isDisplayingAttachmentInline; +- (BOOL)hasData; +- (void)updateFromPath:(id)arg1 contentID:(id)arg2; +- (id)attachmentCell; +- (id)_getInlineImage; +- (void)_configureLabelForCell:(id)arg1; +- (id)toolTip; +@property BOOL isPartOfStationery; +- (BOOL)isPDF; +- (BOOL)isScalable; +- (BOOL)isFullSize; +- (id)_originalImage; +- (void)_setupOriginalImageIfNeeded; +- (struct CGSize)_originalImageSize; +- (id)originalFileWrapper; +- (struct CGSize)maxImageSize; +- (struct CGSize)originalImageSize; +- (void)resizingStarted:(struct CGSize)arg1; +- (void)resizingFinished:(id)arg1 imageSize:(struct CGSize)arg2 fileExtension:(id)arg3 fileType:(unsigned int)arg4 maxImageSize:(struct CGSize)arg5; + +@end + diff --git a/MailHeaders/Lion/Mail/MailTimeMachineController.h b/MailHeaders/Lion/Mail/MailTimeMachineController.h new file mode 100644 index 00000000..ce582415 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailTimeMachineController.h @@ -0,0 +1,51 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MVTerminationHandler-Protocol.h" + +@class MessageViewer, NSTimer; + +@interface MailTimeMachineController : NSObject +{ + MessageViewer *_messageViewer; + BOOL _savingTOC; + struct OpaqueEventHandlerRef *_helperAppEventHandler; + struct ProcessSerialNumber _helperAppPSN; + struct CGRect _orignalMailWindowFrame; + id _tableOfContentsSaveLock; + NSTimer *_tableOfContentsSaveTimer; +} + ++ (id)sharedController; +- (id)init; +- (void)dealloc; +- (void)registerNotificationHandlers; +- (void)_invalidateTableOfContentsAndBackupManager:(id)arg1; +- (void)_invalidateTableOfContents:(id)arg1; +- (void)saveTableOfContents; +- (void)forceSaveTableOfContentsNow; +- (void)_setTableOfContentsIsValid:(BOOL)arg1; +- (void)_setTableOfContentsTimer:(id)arg1; +- (void)registerTimeMachineHandlers; +- (void)unregisterTimeMachineHandlers; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)_approvedQuit; +- (void)_saveTableOfContents; +- (void)_thread_saveTableOfContents:(id)arg1; +- (void)_threadedSaveTableOfContentsEnded:(id)arg1; +- (BOOL)_timingOutSaveTableOfContents; +- (void)_threadedSaveTableOfContentsWithEndedSelector:(SEL)arg1; +- (id)_mailTimeMachineDescriptionForMessage:(id)arg1 withColumns:(id)arg2 andMall:(id)arg3 selected:(BOOL)arg4; +- (BOOL)_launchTimeMachineHelperApp; +- (void)finishedEnteringTM; +- (void)enterTimeMachineMode; +- (void)prepareToExitTimeMachineModeWithDisplayState:(id)arg1; +- (void)exitTimeMachine; + +@end + diff --git a/MailHeaders/Lion/Mail/MailToCommand.h b/MailHeaders/Lion/Mail/MailToCommand.h new file mode 100644 index 00000000..3cbb6421 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailToCommand.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSScriptCommand.h" + +@interface MailToCommand : NSScriptCommand +{ +} + +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Lion/Mail/MailToolbar.h b/MailHeaders/Lion/Mail/MailToolbar.h new file mode 100644 index 00000000..cbf4fa2c --- /dev/null +++ b/MailHeaders/Lion/Mail/MailToolbar.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSToolbar.h" + +@interface MailToolbar : NSToolbar +{ + unsigned long long _previousDisplayMode; + long long _temporaryItemTag; + BOOL _stateIsTemporary; + BOOL _previousVisible; + BOOL _neverShowsBaselineSeparator; + BOOL _frozen; +} + ++ (id)_plistForToolbarWithIdentifier:(id)arg1; ++ (void)upgradeToolbarWithIdentifier:(id)arg1 usingBlock:(id)arg2; ++ (void)upgradeToolbarWithIdentifier:(id)arg1 toDisplayMode:(unsigned long long)arg2; +- (BOOL)_allowsSizeMode:(unsigned long long)arg1; +- (id)_customMetrics; +- (void)setTemporaryDisplayMode:(unsigned long long)arg1 visible:(BOOL)arg2 requiredItemTag:(long long)arg3 identifier:(id)arg4; +- (void)revertTemporaryStateIfAny; +- (void)setDisplayMode:(unsigned long long)arg1; +- (void)setVisible:(BOOL)arg1; +- (void)insertItemWithItemIdentifier:(id)arg1 atIndex:(long long)arg2; +- (void)removeItemAtIndex:(long long)arg1; +- (BOOL)showsBaselineSeparator; +- (void)setShowsBaselineSeparator:(BOOL)arg1; +- (void)setNeverShowsBaselineSeparator:(BOOL)arg1; +- (void)freeze; +- (void)unfreeze; +- (void)validateVisibleItems; + +@end + diff --git a/MailHeaders/Lion/Mail/MailToolbarBaselineView.h b/MailHeaders/Lion/Mail/MailToolbarBaselineView.h new file mode 100644 index 00000000..b63abe96 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailToolbarBaselineView.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface MailToolbarBaselineView : NSView +{ +} + +- (void)dealloc; +- (void)drawRect:(struct CGRect)arg1; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)_mainStatusDidChange:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MailToolbarSpaceItemWithPin.h b/MailHeaders/Lion/Mail/MailToolbarSpaceItemWithPin.h new file mode 100644 index 00000000..a520b9c6 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailToolbarSpaceItemWithPin.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@class NSView; + +@interface MailToolbarSpaceItemWithPin : NSToolbarItem +{ + NSView *_pin; +} + ++ (id)itemIdentifier; +- (id)initWithPin:(id)arg1; +- (id)initWithItemIdentifier:(id)arg1; +- (id)init; +- (void)dealloc; +- (id)menuFormRepresentation; +- (BOOL)isSeparatorItem; +- (BOOL)wantsToDrawIconInDisplayMode:(unsigned long long)arg1; +- (BOOL)wantsToDrawLabelInDisplayMode:(unsigned long long)arg1; +- (BOOL)wantsToDrawIconIntoLabelAreaInDisplayMode:(unsigned long long)arg1; +- (BOOL)_needsRedisplayWhenBeginningToolbarEditing; +- (BOOL)_emptyContents; +- (BOOL)_hasContents; +- (BOOL)allowsDuplicatesInToolbar; +- (void)_updateSizeForDisplayMode:(unsigned long long)arg1; +- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; +- (void)_pinViewFrameChanged; +- (void)updateWidth; + +@end + diff --git a/MailHeaders/Lion/Mail/MailVerticalSplitView.h b/MailHeaders/Lion/Mail/MailVerticalSplitView.h new file mode 100644 index 00000000..d833d798 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailVerticalSplitView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailSplitView.h" + +@interface MailVerticalSplitView : MailSplitView +{ + unsigned long long _animationID; +} + +- (void)setPosition:(double)arg1 ofDividerAtIndex:(long long)arg2 byAnimating:(BOOL)arg3 completionHandler:(id)arg4; + +@end + diff --git a/MailHeaders/Lion/Mail/MailVerticalSplitViewDelegate-Protocol.h b/MailHeaders/Lion/Mail/MailVerticalSplitViewDelegate-Protocol.h new file mode 100644 index 00000000..6d2a28e7 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailVerticalSplitViewDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSSplitViewDelegate-Protocol.h" + +@protocol MailVerticalSplitViewDelegate + +@optional +- (void)mailVerticalSplitView:(id)arg1 willSetPosition:(double)arg2 ofDividerAtIndex:(long long)arg3 byAnimating:(BOOL)arg4; +@end + diff --git a/MailHeaders/Lion/Mail/MailWebViewEditor.h b/MailHeaders/Lion/Mail/MailWebViewEditor.h new file mode 100644 index 00000000..4222b359 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailWebViewEditor.h @@ -0,0 +1,65 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebViewEditor.h" + +#import "DOMEventListener-Protocol.h" + +@class DOMNode, NSArray, NSMutableArray; + +@interface MailWebViewEditor : WebViewEditor +{ + BOOL _needToFinishMakingPlainAfterRemovingStationery; + NSArray *_backgroundTilingElements; + NSArray *_backgroundTilingDivs; + NSArray *_backgroundTilingFixedSizes; + NSMutableArray *_uneditedEditableElements; + NSMutableArray *_editedEditableElements; + DOMNode *_editableElementWithMouseDown; + BOOL _shouldAttachFilesAtEnd; + BOOL _isDeletingAllEncompassingSelection; +} + +@property(readonly) NSArray *insertablePasteboardTypes; +- (void)prepareToGoAway; +- (void)dealloc; +- (void)setUp; +- (void)setBackEnd:(id)arg1; +- (BOOL)allowQuoting; +- (void)setAllowsRichText:(BOOL)arg1; +- (id)alertForConvertingToRichText; +- (BOOL)webView:(id)arg1 shouldInsertAttachments:(id)arg2 context:(id)arg3; +- (BOOL)isOkayToLoadStationery; +- (void)_continueCannotInsertStationery:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +@property(nonatomic) BOOL shouldAttachFilesAtEnd; +- (void)_insertAttributedStringOfAttachments:(id)arg1 allAttachmentsAreOkay:(BOOL)arg2; +- (void)_continueShouldInsertAttachments:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (BOOL)_isOkayToInsertAttachment:(id)arg1; +- (void)insertAttributedStringOfAttachments:(id)arg1 allAttachmentsAreOkay:(BOOL)arg2; +- (void)_continueInsertAttributedStringOfAttachments:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (BOOL)webView:(id)arg1 canInsertFromPasteboard:(id)arg2 forDrag:(BOOL)arg3; +- (void)prepareToRemoveStationery; +- (void)_webViewDidLoadStationery:(id)arg1; +- (void)_stationeryDidFinishLoadingResources:(id)arg1; +- (void)handleEvent:(id)arg1; +- (void)_doOrUndoEditingInSignatureWithInfo:(id)arg1; +- (id)editedEditableElements; +- (void)mouseDownDidHappen:(id)arg1 inWebView:(id)arg2; +- (void)mouseUpDidHappen:(id)arg1 inWebView:(id)arg2; +- (void)webViewDidChange:(id)arg1; +- (id)replaceOldSignatureWithNewSignature:(id)arg1; +- (void)webViewDidChangeSelection:(id)arg1; +- (BOOL)webView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (BOOL)insertNewline:(id)arg1; +- (void)webView:(id)arg1 didWriteSelectionToPasteboard:(id)arg2; +- (void)changeDocumentBackgroundColorWithContext:(id)arg1; +- (void)_continueChangeDocumentBackgroundColor:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +@property(retain) NSArray *backgroundTilingFixedSizes; // @synthesize backgroundTilingFixedSizes=_backgroundTilingFixedSizes; +@property(retain) NSArray *backgroundTilingDivs; // @synthesize backgroundTilingDivs=_backgroundTilingDivs; +@property(retain) NSArray *backgroundTilingElements; // @synthesize backgroundTilingElements=_backgroundTilingElements; + +@end + diff --git a/MailHeaders/Lion/Mail/MailWindowShadowLayer.h b/MailHeaders/Lion/Mail/MailWindowShadowLayer.h new file mode 100644 index 00000000..2386bad1 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailWindowShadowLayer.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "CALayer.h" + +@interface MailWindowShadowLayer : CALayer +{ + CALayer *_topShadow; + CALayer *_bottomShadow; + CALayer *_leftShadow; + CALayer *_rightShadow; + CALayer *_topRightShadow; + CALayer *_topLeftShadow; + CALayer *_bottomRightShadow; + CALayer *_bottomLeftShadow; + unsigned long long _shadowType; + struct CGSize _animationStartSize; + struct CGSize _animationEndSize; +} + +- (id)init; +- (id)initWithStartSize:(struct CGSize)arg1 endSize:(struct CGSize)arg2 shadowType:(unsigned long long)arg3; +- (void)dealloc; +- (void)animateShadowByGrowing:(BOOL)arg1; +- (double)_topMargin; +- (double)_bottomMargin; +- (double)_leftMargin; +- (double)_rightMargin; +- (id)_shadowImageForShadowPart:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MailboxListCell.h b/MailHeaders/Lion/Mail/MailboxListCell.h new file mode 100644 index 00000000..17ee50aa --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxListCell.h @@ -0,0 +1,65 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSImageTextFieldCell.h" + +@interface MailboxListCell : NSImageTextFieldCell +{ + int _rolledOverIndicator; + BOOL _isClickedOn; + BOOL _isPublicOrShared; + BOOL _shouldReverseArrowIndicator; + BOOL _preventInlineTitleEditing; + int _alertState; + int _feedInboxState; + unsigned long long _badgeCount; + BOOL _hasProgressIndicator; + id _item; +} + ++ (void)setShouldShowBadge:(BOOL)arg1; +- (id)badgeTextColor; +- (id)badgeColor; +- (id)embossColor; +- (id)indicatorColorForRollover:(BOOL)arg1; +- (void)controlTintChanged:(id)arg1; +- (id)drawIndicator:(int)arg1 withImage:(id)arg2 circled:(BOOL)arg3 cellFrame:(struct CGRect *)arg4 trackingAreaTarget:(id)arg5; +- (id)badgeTextAttributes; +- (void)drawBadgeCenteredInRect:(struct CGRect)arg1; +- (double)badgeWidth; +@property(readonly) double idealWidth; +- (id)initTextCell:(id)arg1; +- (id)initImageCell:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)retain; +- (void)release; +- (id)autorelease; +- (void)dealloc; +- (void)setTitle:(id)arg1 retainAttributes:(BOOL)arg2; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (double)imageSize; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)getIconFrame:(struct CGRect *)arg1 editableContentFrame:(struct CGRect *)arg2 forCellFrame:(struct CGRect)arg3; +- (void)selectWithFrame:(struct CGRect)arg1 inView:(id)arg2 editor:(id)arg3 delegate:(id)arg4 start:(long long)arg5 length:(long long)arg6; +- (unsigned long long)hitTestForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3; +- (id)menuForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3; +- (id)toolTipForPoint:(struct CGPoint)arg1 rect:(struct CGRect *)arg2 trackingAreas:(id)arg3; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +@property(retain, nonatomic) id item; // @synthesize item=_item; +@property(nonatomic) BOOL hasProgressIndicator; // @synthesize hasProgressIndicator=_hasProgressIndicator; +@property(nonatomic) unsigned long long badgeCount; // @synthesize badgeCount=_badgeCount; +@property(nonatomic) int feedInboxState; // @synthesize feedInboxState=_feedInboxState; +@property(nonatomic) int alertState; // @synthesize alertState=_alertState; +@property(nonatomic) BOOL preventInlineTitleEditing; // @synthesize preventInlineTitleEditing=_preventInlineTitleEditing; +@property(nonatomic) BOOL shouldReverseArrowIndicator; // @synthesize shouldReverseArrowIndicator=_shouldReverseArrowIndicator; +@property(nonatomic) BOOL isPublicOrShared; // @synthesize isPublicOrShared=_isPublicOrShared; +@property(nonatomic) BOOL isClickedOn; // @synthesize isClickedOn=_isClickedOn; +@property(nonatomic) int rolledOverIndicator; // @synthesize rolledOverIndicator=_rolledOverIndicator; + +@end + diff --git a/MailHeaders/Lion/Mail/MailboxListCellDelegate-Protocol.h b/MailHeaders/Lion/Mail/MailboxListCellDelegate-Protocol.h new file mode 100644 index 00000000..e119cc56 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxListCellDelegate-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MailboxListCellDelegate +- (void)cell:(id)arg1 didAddTrackingAreas:(id)arg2; +- (void)cell:(id)arg1 positionProgressIndicatorInRect:(struct CGRect)arg2 withRoundDeterminateColor:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/MailboxPaneAccessoryView.h b/MailHeaders/Lion/Mail/MailboxPaneAccessoryView.h new file mode 100644 index 00000000..cb478852 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxPaneAccessoryView.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface MailboxPaneAccessoryView : NSView +{ + double _defaultHeight; +} + ++ (id)activeGradient; ++ (id)inactiveGradient; +- (BOOL)isFlipped; +- (void)drawRect:(struct CGRect)arg1; +@property(nonatomic) double defaultHeight; // @synthesize defaultHeight=_defaultHeight; + +@end + diff --git a/MailHeaders/Lion/Mail/MailboxPaneBottomShadowView.h b/MailHeaders/Lion/Mail/MailboxPaneBottomShadowView.h new file mode 100644 index 00000000..dd5e0a15 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxPaneBottomShadowView.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSOutlineView; + +@interface MailboxPaneBottomShadowView : NSView +{ + NSOutlineView *_outlineView; + BOOL _forceDisplayShadow; +} + +- (void)dealloc; +@property(nonatomic) BOOL forceDisplayShadow; +- (id)shadowImage; +- (void)drawRect:(struct CGRect)arg1; +- (BOOL)shouldDisplayShadow; +@property(retain) NSOutlineView *outlineView; // @synthesize outlineView=_outlineView; + +@end + diff --git a/MailHeaders/Lion/Mail/MailboxPaneBottomView.h b/MailHeaders/Lion/Mail/MailboxPaneBottomView.h new file mode 100644 index 00000000..5a4fd91f --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxPaneBottomView.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ColorBackgroundView.h" + +@interface MailboxPaneBottomView : ColorBackgroundView +{ +} + +@end + diff --git a/MailHeaders/Lion/Mail/MailboxUid-MessageListAdditions.h b/MailHeaders/Lion/Mail/MailboxUid-MessageListAdditions.h new file mode 100644 index 00000000..3484922e --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxUid-MessageListAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailboxUid.h" + +@interface MailboxUid (MessageListAdditions) +- (BOOL)smartMailboxUsesLastViewedDate; +@end + diff --git a/MailHeaders/Lion/Mail/MailboxesChooser.h b/MailHeaders/Lion/Mail/MailboxesChooser.h new file mode 100644 index 00000000..baccd153 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxesChooser.h @@ -0,0 +1,51 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSMenu, NSMutableSet, NSPopUpButton; + +@interface MailboxesChooser : NSObject +{ + NSMenu *_rootMenu; + NSPopUpButton *_popUpButton; + id _includeMailboxCondition; + id _enableMailboxCondition; + id _selectedItem; + id _target; + SEL _action; + NSArray *_additionalItems; + NSMutableSet *_updatedMenus; + BOOL _useSelection; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +- (id)init; +- (id)initWithSelection:(BOOL)arg1; +- (void)awakeFromNib; +- (void)dealloc; +- (void)_mailboxesChooserCommonInitWithSelection:(BOOL)arg1; +- (void)_setupPopUpButton; +@property(nonatomic) NSMenu *rootMenu; // @synthesize rootMenu=_rootMenu; +@property(nonatomic) NSPopUpButton *popUpButton; // @synthesize popUpButton=_popUpButton; +@property(retain, nonatomic) id selectedItem; // @synthesize selectedItem=_selectedItem; +- (id)_menuItemForItem:(id)arg1 indentationLevel:(long long)arg2; +- (void)_addMenuItemsForItems:(id)arg1 toMenu:(id)arg2 withIndentationLevel:(long long)arg3 initialSeparatorItem:(BOOL)arg4; +- (void)invalidateUpdatedMenus; +- (void)_invalidateUpdatedMenus:(id)arg1; +- (void)_outlineViewStateDidChange:(id)arg1; +- (void)menuNeedsUpdate:(id)arg1; +- (void)refresh; +- (void)_popUpAction:(id)arg1; +- (void)menuDidClose:(id)arg1; +@property(retain, nonatomic) NSArray *additionalItems; // @synthesize additionalItems=_additionalItems; +@property(nonatomic) SEL action; // @synthesize action=_action; +@property(nonatomic) id target; // @synthesize target=_target; +@property(copy, nonatomic) id enableMailboxCondition; // @synthesize enableMailboxCondition=_enableMailboxCondition; +@property(copy, nonatomic) id includeMailboxCondition; // @synthesize includeMailboxCondition=_includeMailboxCondition; + +@end + diff --git a/MailHeaders/Lion/Mail/MailboxesController.h b/MailHeaders/Lion/Mail/MailboxesController.h new file mode 100644 index 00000000..8004447e --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxesController.h @@ -0,0 +1,133 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MVTerminationHandler-Protocol.h" +@class InvocationQueue, MailboxUid, MailboxesChooser, NSArray, NSButton, NSConditionLock, NSMutableDictionary, NSMutableSet, NSPopUpButton, NSTextField, NSView, NSWindow; + +@interface MailboxesController : NSObject +{ + NSWindow *_newMailboxPanel; + NSTextField *_newMailboxField; + NSTextField *_newMailboxMessage; + NSButton *_newMailboxOKButton; + NSPopUpButton *_newMailboxPopUp; + MailboxesChooser *_newMailboxChooser; + NSView *_exportChildrenView; + NSButton *_exportChildrenCheckbox; + id _currentMailboxSelectionOwner; + BOOL _currentTransferIsCopy; + MailboxUid *_selectedParent; + MailboxUid *_currentTransferMailbox; + NSConditionLock *_smartMailboxesNeedSavingLock; + BOOL _isSavingSyncResults; + long long _currentFileVersion; + MailboxesChooser *_menuMailboxesChooser; + NSMutableSet *_rootMailboxMenus; + NSMutableDictionary *_contextualMenus; + InvocationQueue *_smartMailboxUnreadCountUpdateQueue; + InvocationQueue *_normalMailboxUnreadCountUpdateQueue; + NSArray *_originalGlobalSortOrder; +} + ++ (id)iconForMailboxUid:(id)arg1 size:(unsigned long long)arg2 style:(unsigned long long)arg3; ++ (id)_iconForGenericMailboxWithSize:(unsigned long long)arg1 style:(unsigned long long)arg2; ++ (id)_iconForSmartMailboxWithSize:(unsigned long long)arg1 style:(unsigned long long)arg2; ++ (id)_imageNameForNotesWithSize:(unsigned long long)arg1 style:(unsigned long long)arg2; ++ (id)_imageNameForRSSWithSize:(unsigned long long)arg1 style:(unsigned long long)arg2; ++ (id)_imageNameForFlag:(BOOL)arg1 size:(unsigned long long)arg2 style:(unsigned long long)arg3; ++ (id)_filteredMailUserInfoDictionary:(id)arg1; ++ (id)_mergeOldMailUserInfoDictionary:(id)arg1 withSyncChanges:(id)arg2; +- (id)init; +- (void)awakeFromNib; +- (void)dealloc; +- (id)menuForMailboxUid:(id)arg1 isContextMenu:(BOOL)arg2; +- (void)readDefaults; +- (void)saveDefaults; +- (void)setCurrentTransferMailbox:(id)arg1 deletedOriginals:(BOOL)arg2; +- (id)currentTransferMailbox; +- (BOOL)currentTransferDeletesOriginals; +- (id)mailboxSelectionOwner; +- (void)setMailboxSelectionOwnerFrom:(id)arg1; +- (void)resignMailboxSelectionOwnerFor:(id)arg1; +- (id)mailboxSelectionOwnerFromSender:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)_synchronouslyCreateNewMailboxWithName:(id)arg1 parent:(id)arg2; +- (void)_configureNewMailboxPanelForMailbox:(id)arg1; +- (void)newMailbox:(id)arg1; +- (void)_newMailboxSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)showOutOfOfficeSettings:(id)arg1; +- (void)newSmartMailbox:(id)arg1; +- (void)editSmartMailbox:(id)arg1; +- (void)duplicateSmartMailbox:(id)arg1; +- (void)newFolder:(id)arg1; +- (void)newGroup:(id)arg1; +- (void)mailboxPopUpChanged:(id)arg1; +- (void)_synchronouslyDeleteMailboxes:(id)arg1; +- (void)deleteMailbox:(id)arg1; +- (void)_deleteMailboxSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_updateDisplayIndexesInParentMailbox:(id)arg1 byMovingMailboxes:(id)arg2 toIndex:(unsigned long long)arg3; +- (void)_synchronouslySetName:(id)arg1 andParent:(id)arg2 forMailboxes:(id)arg3 insertionIndex:(unsigned long long)arg4; +- (void)renameMailbox:(id)arg1; +- (void)_userEditedMailboxName:(id)arg1; +- (void)_exportMailboxes:(id)arg1 toDirectory:(id)arg2 includeChildren:(id)arg3; +- (void)exportMailbox:(id)arg1; +- (void)setSpecialMailbox:(id)arg1; +- (void)configureRSSFeeds:(id)arg1; +- (void)configureRSSFeedsWithParentMailbox:(id)arg1; +- (void)toggleShowsUnderInbox:(id)arg1; +- (void)_gatherMessagesForFlagChange:(id)arg1; +- (void)markAllAsRead:(id)arg1; +- (void)_changeReadFlag:(BOOL)arg1 forMessages:(id)arg2; +- (void)_asynchronouslyChangeReadFlag:(BOOL)arg1 forMessages:(id)arg2; +- (id)_unreadMessagesInMailbox:(id)arg1; +- (void)controlTextDidChange:(id)arg1; +- (void)okClicked:(id)arg1; +- (void)cancelClicked:(id)arg1; +- (void)bringUpTransferMenu:(id)arg1; +- (void)menuNeedsUpdate:(id)arg1; +- (void)menuWillOpen:(id)arg1; +- (BOOL)menuHasKeyEquivalent:(id)arg1 forEvent:(id)arg2 target:(id *)arg3 action:(SEL *)arg4; +- (BOOL)moveAccount:(id)arg1 toAfterAccount:(id)arg2; +- (BOOL)removeAccount:(id)arg1; +- (BOOL)moveMailboxes:(id)arg1 toParentMailbox:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)_synchronouslyCopyMailboxes:(id)arg1 toParent:(id)arg2 atIndex:(unsigned long long)arg3 originalParent:(id)arg4; +- (BOOL)copyMailboxes:(id)arg1 toParentMailbox:(id)arg2 atIndex:(unsigned long long)arg3; +- (BOOL)moveOrCopy:(id)arg1 smartMailboxes:(id)arg2 toIndex:(unsigned long long)arg3; +- (void)addSmartMailbox:(id)arg1 select:(BOOL)arg2; +- (void)tentativelyAddSmartMailbox:(id)arg1; +- (void)smartMailboxWasEdited:(id)arg1; +- (void)addSmartMailboxFolder:(id)arg1; +- (void)loadSmartMailboxes; +- (id)smartMailboxes; +- (void)subscribeToRSSFeed:(id)arg1 name:(id)arg2; +- (void)validateAndSubscribeToRSSFeed:(id)arg1 parentMailbox:(id)arg2; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (id)smartMailboxesPathForFile:(id)arg1; +- (void)_smartMailboxChanged:(id)arg1; +- (BOOL)_smartMailboxesNeedSaving; +- (void)_setSmartMailboxesNeedSaving:(BOOL)arg1; +- (void)_writeSmartMailboxesToDiskWithDelay; +- (id)_newFilteredMailboxRecordsForSyncServices:(id)arg1; +- (void)_writeSmartMailboxesToDisk; +- (id)unionedSmartMailboxesFromDisk; +- (id)_sortMailboxUids:(id)arg1 withIdentifiers:(id)arg2; +- (id)_sortMailboxesDictionaries:(id)arg1 withIdentifiers:(id)arg2; +- (id)_readSmartMailboxesFromDisk; +- (id)_loadDefaultSmartMailboxes; +- (id)_smartMailboxesDictionaryRepresentations; +- (id)_smartMailboxesFromDictionaryRepresentations:(id)arg1 andMergeOldUserInfoFromMailboxes:(BOOL)arg2; +- (void)_syncSmartMailboxes; +- (BOOL)dataWillBeSyncedVersion:(id *)arg1 data:(id *)arg2 type:(id)arg3; +- (BOOL)dataWasSyncedVersion:(id)arg1 newData:(id)arg2 acceptedChanges:(id)arg3; +- (id)directCompatibilityChangedMailboxes; +- (id)previousSmartMailboxIdentifiersFromDictionary:(id)arg1; +- (id)previousVersionedSmartMailboxIdentifiersFromDictionary:(id)arg1; +- (id)previousMailboxIdentifiersOfType:(id)arg1 fromDictionary:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/MailboxesOutlineView.h b/MailHeaders/Lion/Mail/MailboxesOutlineView.h new file mode 100644 index 00000000..c1120b7d --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxesOutlineView.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSOutlineView.h" + +@interface MailboxesOutlineView : NSOutlineView +{ + BOOL _allowsSelectAll; + BOOL _acceptsFirstResponderOnMouseDown; + BOOL _showsUnnecessaryDisclosureTriangles; + BOOL _draggingIsBeingUpdated; + BOOL _reloading; +} + +- (id)initWithCoder:(id)arg1; +- (id)delegate; +- (void)setDelegate:(id)arg1; +- (struct CGRect)frameOfOutlineCellAtRow:(long long)arg1; +- (void)keyDown:(id)arg1; +- (BOOL)acceptsFirstResponder; +- (BOOL)becomeFirstResponder; +- (BOOL)resignFirstResponder; +- (void)mouseDown:(id)arg1; +- (void)mouseUp:(id)arg1; +- (void)selectAll:(id)arg1; +- (void)editColumn:(long long)arg1 row:(long long)arg2 withEvent:(id)arg3 select:(BOOL)arg4; +- (id)menuForEvent:(id)arg1; +- (BOOL)canFocusCell:(id)arg1 atTableColumn:(id)arg2 row:(long long)arg3; +- (BOOL)shouldFocusCell:(id)arg1 atColumn:(long long)arg2 row:(long long)arg3; +- (BOOL)shouldCollapseAutoExpandedItemsForDeposited:(BOOL)arg1; +- (BOOL)inLiveResize; +- (void)_willReload; +- (void)_triggerReloadNotification; +- (void)_didReload; +- (void)noteNumberOfRowsChanged; +- (void)reloadData; +- (void)reloadItem:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (id)dragImageForRowsWithIndexes:(id)arg1 tableColumns:(id)arg2 event:(id)arg3 offset:(struct CGPoint *)arg4; +@property(nonatomic) BOOL draggingIsBeingUpdated; // @synthesize draggingIsBeingUpdated=_draggingIsBeingUpdated; +@property(nonatomic) BOOL showsUnnecessaryDisclosureTriangles; // @synthesize showsUnnecessaryDisclosureTriangles=_showsUnnecessaryDisclosureTriangles; +@property(nonatomic) BOOL acceptsFirstResponderOnMouseDown; // @synthesize acceptsFirstResponderOnMouseDown=_acceptsFirstResponderOnMouseDown; +@property(nonatomic) BOOL allowsSelectAll; // @synthesize allowsSelectAll=_allowsSelectAll; + +@end + diff --git a/MailHeaders/Lion/Mail/MailboxesOutlineViewController.h b/MailHeaders/Lion/Mail/MailboxesOutlineViewController.h new file mode 100644 index 00000000..02559fa5 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxesOutlineViewController.h @@ -0,0 +1,134 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MVMailboxSelectionOwner-Protocol.h" +#import "MailboxListCellDelegate-Protocol.h" +#import "MailboxesOutlineViewDelegate-Protocol.h" +#import "NSOutlineViewDataSource-Protocol.h" + +@class MailboxListCell, MailboxUid, MailboxesOutlineView, NSMutableDictionary, NSTextFieldCell, OutlineViewProgressIndicatorsController; + +@interface MailboxesOutlineViewController : NSObject +{ + MailboxesOutlineView *_outlineView; + id _delegate; + long long _reloadingCount; + long long _wantsToEditInlineCount; + MailboxUid *_clickedMailbox; + NSTextFieldCell *_textCell; + MailboxListCell *_mailboxCell; + NSMutableDictionary *_trackingAreasByItem; + OutlineViewProgressIndicatorsController *_progressIndicatorsControllers; + id _rolledOverItem; + int _rolledOverIndicator; + BOOL _mouseIsDown; + double _idealOutlineViewWidth; +} + +- (id)init; +- (void)awakeFromNib; +@property id delegate; +- (void)dealloc; +- (void)clearDelegateBecauseWindowIsClosing; +@property(readonly, nonatomic) double minimizedOutlineViewWidth; +@property(readonly, nonatomic) double minimumWidthNeededToUseMailboxes; +@property(readonly, nonatomic) double idealOutlineViewWidth; +- (void)makeMailboxesListFirstResponder; +- (void)editNameOfMailbox:(id)arg1; +- (BOOL)canSelectMailbox:(id)arg1; +@property(readonly) BOOL isReloading; +- (void)_beginReloading; +- (void)_endReloading; +@property(readonly) BOOL wantsToEditInline; +- (void)_beginWantsToEditInline; +- (void)_endWantsToEditInline; +- (double)_adjustWidthForScroller:(double)arg1; +- (id)_firstChildIfCollapsedSpecialMailbox:(id)arg1; +- (unsigned long long)_badgeCountForItem:(id)arg1; +- (int)_alertStateForItem:(id)arg1; +- (void)_clearTrackingAreasForItem:(id)arg1; +- (void)_clearAllTrackingAreas; +- (BOOL)_shouldShowProgressIndicatorForItem:(id)arg1; +- (void)_redisplayRowsForItems:(id)arg1; +- (id)_copyActivityMonitorsForMailbox:(id)arg1 finishedCount:(unsigned long long *)arg2 includingDescendants:(BOOL)arg3; +- (void)_updateProgressIndicatorForMailbox:(id)arg1; +- (void)_configureCell:(id)arg1 forItem:(id)arg2; +- (void)_saveSelectionAndReloadItem:(id)arg1 reloadChildren:(BOOL)arg2; +- (BOOL)_isTopLevelItem:(id)arg1; +- (id)_keyObjectForItem:(id)arg1; +- (id)_itemForKeyObject:(id)arg1; +- (void)cell:(id)arg1 didAddTrackingAreas:(id)arg2; +- (void)cell:(id)arg1 positionProgressIndicatorInRect:(struct CGRect)arg2 withRoundDeterminateColor:(id)arg3; +- (void)mouseEntered:(id)arg1; +- (void)mouseExited:(id)arg1; +- (BOOL)handleMouseDown:(id)arg1; +- (BOOL)handleMouseUp:(id)arg1; +- (void)_subscriptionClickedForItem:(id)arg1; +- (void)_alertClickedForItem:(id)arg1; +- (void)_offlineAlertSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_toggleShowsUnderInboxForItem:(id)arg1; +- (void)_accountAdded:(id)arg1; +- (void)_accountOfflineStatusDidChange:(id)arg1; +- (void)_mailboxListingDidChange:(id)arg1; +- (void)_mailboxPublicStatusDidChange:(id)arg1; +- (void)_sectionListingDidChange:(id)arg1; +- (void)_mailboxesActivityDidChange:(id)arg1; +- (void)_displayCountDidChange:(id)arg1; +- (void)_userInfoDidChange:(id)arg1; +- (void)_viewerPreferencesChanged:(id)arg1; +- (void)_mailboxPendingNameDidChange:(id)arg1; +- (id)selectedMailboxes; +- (id)selectedMailbox; +- (BOOL)isSelectedMailboxSpecial; +- (void)selectPathsToMailboxes:(id)arg1; +- (void)selectPathsToMailboxes:(id)arg1 scrollToVisible:(BOOL)arg2; +- (BOOL)mailboxIsExpanded:(id)arg1; +- (BOOL)sectionIsExpanded:(id)arg1; +- (id)expandedItems; +- (id)sortedSectionItemsForTimeMachine; +- (void)revealMailbox:(id)arg1; +- (void)_revealMailbox:(id)arg1; +- (id)mailboxSelectionWindow; +- (long long)outlineView:(id)arg1 numberOfChildrenOfItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 isItemExpandable:(id)arg2; +- (id)outlineView:(id)arg1 child:(long long)arg2 ofItem:(id)arg3; +- (id)outlineView:(id)arg1 objectValueForTableColumn:(id)arg2 byItem:(id)arg3; +- (void)outlineView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 byItem:(id)arg4; +- (void)_renameFailureSheetEnded:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (id)outlineView:(id)arg1 itemForPersistentObject:(id)arg2; +- (id)outlineView:(id)arg1 persistentObjectForItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 writeItems:(id)arg2 toPasteboard:(id)arg3; +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; +- (BOOL)outlineView:(id)arg1 acceptDrop:(id)arg2 item:(id)arg3 childIndex:(long long)arg4; +- (unsigned long long)outlineView:(id)arg1 validateDrop:(id)arg2 proposedItem:(id)arg3 proposedChildIndex:(long long)arg4; +- (unsigned long long)_outlineView:(id)arg1 validateDrop:(id)arg2 proposedItem:(id)arg3 proposedChildIndex:(long long)arg4 allowStoreCreation:(BOOL)arg5; +- (id)outlineView:(id)arg1 dataCellForTableColumn:(id)arg2 item:(id)arg3; +- (id)outlineView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 item:(id)arg5 mouseLocation:(struct CGPoint)arg6; +- (double)outlineView:(id)arg1 heightOfRowByItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 isGroupItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldExpandItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldCollapseItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldEditTableColumn:(id)arg2 item:(id)arg3; +- (id)outlineView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (void)outlineView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (void)outlineViewItemDidExpand:(id)arg1; +- (void)_scrollOutlineViewRectToVisible:(id)arg1; +- (void)outlineViewItemDidCollapse:(id)arg1; +- (void)outlineViewSelectionDidChange:(id)arg1; +- (void)selectAllInOutlineView:(id)arg1; +- (void)setFirstResponderAfterMouseDownOnOutlineView:(id)arg1; +- (void)outlineView:(id)arg1 willShowContextMenu:(id)arg2; +- (void)_menuDidEndTracking:(id)arg1; +- (BOOL)outlineView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (BOOL)outlineView:(id)arg1 willEditTableColumn:(id)arg2 item:(id)arg3; +- (void)outlineViewDidReload:(id)arg1; +@property(retain) MailboxUid *clickedMailbox; // @synthesize clickedMailbox=_clickedMailbox; +@property(retain) MailboxesOutlineView *outlineView; // @synthesize outlineView=_outlineView; + +@end + diff --git a/MailHeaders/Lion/Mail/MailboxesOutlineViewControllerDelegate-Protocol.h b/MailHeaders/Lion/Mail/MailboxesOutlineViewControllerDelegate-Protocol.h new file mode 100644 index 00000000..2f592464 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxesOutlineViewControllerDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MailboxesOutlineViewControllerDelegate +- (void)selectAllMessages; +- (void)focusMessages; +- (long long)viewerNumber; + +@optional +- (void)mailboxSelectionChanged:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/MailboxesOutlineViewDelegate-Protocol.h b/MailHeaders/Lion/Mail/MailboxesOutlineViewDelegate-Protocol.h new file mode 100644 index 00000000..61f40469 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxesOutlineViewDelegate-Protocol.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSOutlineViewDelegate-Protocol.h" + +@protocol MailboxesOutlineViewDelegate + +@optional +- (BOOL)outlineView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (void)selectAllInOutlineView:(id)arg1; +- (void)setFirstResponderAfterMouseDownOnOutlineView:(id)arg1; +- (BOOL)handleMouseDown:(id)arg1; +- (BOOL)handleMouseUp:(id)arg1; +- (BOOL)outlineView:(id)arg1 willEditTableColumn:(id)arg2 item:(id)arg3; +- (void)outlineView:(id)arg1 willShowContextMenu:(id)arg2; +- (void)outlineViewDidReload:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/MailboxesOutlineViewStateStorage.h b/MailHeaders/Lion/Mail/MailboxesOutlineViewStateStorage.h new file mode 100644 index 00000000..b0119323 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxesOutlineViewStateStorage.h @@ -0,0 +1,104 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSConditionLock, NSMutableDictionary, NSMutableSet, NSSet; + +@interface MailboxesOutlineViewStateStorage : NSObject +{ + NSConditionLock *_shouldShowVariablesLock; + unsigned long long _shouldShowVariablesToUpdate; + unsigned long long _shouldShowVariablesToReset; + BOOL _shouldShowOutbox; + BOOL _shouldShowDrafts; + BOOL _shouldShowTrash; + BOOL _shouldShowJunk; + BOOL _shouldShowNotes; + BOOL _shouldShowFlags; + id _firstUpdateLock; + BOOL _firstUpdate; + id _isListeningForVariablesLock; + BOOL _isListeningForDocumentEditorNotifications; + BOOL _isListeningForMessagesAdded; + BOOL _isListeningForFlagUpdates; + id _sectionItemsLock; + NSArray *_sectionItems; + NSArray *_visibleSectionItems; + NSArray *_visibleMailboxes; + NSArray *_visibleReminders; + id _defaultSectionItemsLock; + NSSet *_observedTaskNames; + id _activityMonitorMailboxMapsLock; + NSMutableDictionary *_mailboxesPerActivityMonitor; + NSMutableDictionary *_activityMonitorsPerMailbox; + NSMutableDictionary *_finishedActivityMonitorCountPerMailbox; + NSConditionLock *_changedMailboxesLock; + NSMutableSet *_changedMailboxes; + NSArray *_draggedMailboxes; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)init; +- (void)dealloc; +- (void)_triggerShouldShowVariablesUpdate; +- (void)_setShouldShowVariablesNeedUpdateWithUpdateMask:(unsigned long long)arg1 resetMask:(unsigned long long)arg2; +- (void)_setNeedsToUpdateShouldShowVariablesWithMask:(unsigned long long)arg1; +- (void)_setNeedsToResetShouldShowVariablesWithMask:(unsigned long long)arg1; +- (void)_updateShouldShowVariables; +- (void)_updateIsListeningForVariables; +- (BOOL)_draftsHasMessageWithNoWindow; +- (id)_sectionItemsFromDefaultSectionItems:(id)arg1; +- (void)_readSectionItemsFromDefaults; +- (void)_writeSectionItems:(id)arg1 toDefaultsWithKey:(id)arg2; +- (void)_writeSectionItemsToDefaults; +- (void)_readVisibleFlagsMailboxesFromDefaults; +- (void)_writeVisibleFlagsMailboxesToDefaults; +- (void)_updateSectionItems; +- (void)moveSectionItem:(id)arg1 beforeItem:(id)arg2; +- (void)_messagesWereAddedToMailboxes:(id)arg1; +- (void)_messageFlagsChanged:(id)arg1; +- (void)_deliveryFailureHappened:(id)arg1; +- (void)_mailAccountsChanged:(id)arg1; +- (void)_viewerPreferencesChanged:(id)arg1; +- (void)_editorClosed:(id)arg1; +- (void)_editorUserSaved:(id)arg1; +- (void)_mailboxListingDidChange:(id)arg1; +- (void)_allViewersDidClose:(id)arg1; +@property BOOL shouldShowOutbox; +@property BOOL shouldShowDrafts; +@property BOOL shouldShowTrash; +@property BOOL shouldShowJunk; +@property BOOL shouldShowNotes; +@property BOOL shouldShowFlags; +@property(readonly) NSArray *sectionItems; +@property(readonly) NSArray *visibleSectionItems; +@property(readonly) NSArray *visibleMailboxes; +@property(readonly) NSArray *visibleReminders; +- (void)_setShouldShowVariable:(char *)arg1 withMask:(unsigned long long)arg2 to:(BOOL)arg3; +- (id)_copyKeyForObject:(id)arg1; +- (void)_monitoredActivityChanged:(id)arg1; +- (id)_copyMailboxesForActivityMonitor:(id)arg1; +- (BOOL)_addActivityMonitor:(id)arg1 toMailbox:(id)arg2; +- (BOOL)_removeActivityMonitor:(id)arg1 fromMailbox:(id)arg2; +- (void)_triggerChangedMailboxesNotification; +- (void)_setNeedsToNotifyChangedMailboxes:(id)arg1; +- (void)_notifyChangedMailboxes; +- (void)_postChangedMailboxesNotification; +- (id)copyActivityMonitorsForMailboxes:(id)arg1 finishedCount:(unsigned long long *)arg2; +- (void)_accountInitializedMailboxList:(id)arg1; +- (BOOL)draftsExist; +- (BOOL)notesExist; +- (BOOL)flagsExist; +@property(retain) NSArray *draggedMailboxes; // @synthesize draggedMailboxes=_draggedMailboxes; + +@end + diff --git a/MailHeaders/Lion/Mail/MailboxesScrollView.h b/MailHeaders/Lion/Mail/MailboxesScrollView.h new file mode 100644 index 00000000..123ac673 --- /dev/null +++ b/MailHeaders/Lion/Mail/MailboxesScrollView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSScrollView.h" + +@interface MailboxesScrollView : NSScrollView +{ +} + +- (BOOL)_accessoryViewMightInterfereWithOverlayScrollers:(id)arg1; +- (void)tile; + +@end + diff --git a/MailHeaders/Lion/Mail/MboxEmailImporter.h b/MailHeaders/Lion/Mail/MboxEmailImporter.h new file mode 100644 index 00000000..be99ae47 --- /dev/null +++ b/MailHeaders/Lion/Mail/MboxEmailImporter.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +@interface MboxEmailImporter : FilesystemEmailImporter +{ +} + ++ (id)name; ++ (id)explanatoryText; +- (id)prepareForImport; +- (char *)fromString; + +@end + diff --git a/MailHeaders/Lion/Mail/MemorySelfTestAutoTest.h b/MailHeaders/Lion/Mail/MemorySelfTestAutoTest.h new file mode 100644 index 00000000..8e989aaa --- /dev/null +++ b/MailHeaders/Lion/Mail/MemorySelfTestAutoTest.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailAutoTest.h" + +@interface MemorySelfTestAutoTest : MailAutoTest +{ +} + +- (id)init; +- (void)setUp; +- (void)performTest; +- (void)tearDown; +- (void)sendMessageWithContent:(id)arg1 subject:(id)arg2 recipient:(id)arg3; +- (void)fetchMailInAccount:(id)arg1; +- (id)createMailboxWithName:(id)arg1 account:(id)arg2; +- (BOOL)moveMessageWithSubject:(id)arg1 fromMailbox:(id)arg2 toMailbox:(id)arg3; +- (BOOL)deleteMailbox:(id)arg1; +- (BOOL)deleteMessageWithSubject:(id)arg1 mailbox:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/MenuPassthroughView.h b/MailHeaders/Lion/Mail/MenuPassthroughView.h new file mode 100644 index 00000000..f5cffb58 --- /dev/null +++ b/MailHeaders/Lion/Mail/MenuPassthroughView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface MenuPassthroughView : NSView +{ +} + +- (id)menuForEvent:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/Message-Chat.h b/MailHeaders/Lion/Mail/Message-Chat.h new file mode 100644 index 00000000..67d21464 --- /dev/null +++ b/MailHeaders/Lion/Mail/Message-Chat.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "Message.h" + +@interface Message (Chat) ++ (id)chatURLForEmails:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/Message-MailViewerAdditions.h b/MailHeaders/Lion/Mail/Message-MailViewerAdditions.h new file mode 100644 index 00000000..bb521127 --- /dev/null +++ b/MailHeaders/Lion/Mail/Message-MailViewerAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "Message.h" + +@interface Message (MailViewerAdditions) +- (void)handleOpenAppleEvent:(id)arg1; +- (id)handleReplyToMessage:(id)arg1; +- (id)handleForwardMessage:(id)arg1; +- (id)handleRedirectMessage:(id)arg1; +- (void)handleBounceMessage:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/MessageBodyScrollView.h b/MailHeaders/Lion/Mail/MessageBodyScrollView.h new file mode 100644 index 00000000..a5dbe67e --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageBodyScrollView.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSScrollView.h" + +@interface MessageBodyScrollView : NSScrollView +{ +} + +- (BOOL)autoforwardsScrollWheelEvents; +- (void)repositionFloatingHorizontalScrollbar; +- (BOOL)isFlipped; +- (void)tile; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageContentController.h b/MailHeaders/Lion/Mail/MessageContentController.h new file mode 100644 index 00000000..5c6d8677 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageContentController.h @@ -0,0 +1,186 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + +#import "MessageContentDisplay-Protocol.h" +#import "DocumentEditorManaging-Protocol.h" + +@class ActivityMonitor, BannerController, EmbeddedNoteDocumentEditor, MFTaskOperation, Message, MessageContentView, MessageViewingPaneController, MessageViewingState, NSArray, NSMutableDictionary, NSSet, NSView; + +@interface MessageContentController : NSResponder +{ + Message *_message; + ActivityMonitor *_documentMonitor; + ActivityMonitor *_urlificationMonitor; + MessageViewingPaneController *_parentController; + NSSet *_allMessagesInConversation; + NSArray *_selectedMailboxes; + Message *_parentMessageUsedForRedundantTextIdentification; + MFTaskOperation *_loadOperation; + id _messageContentDisplay; + MessageContentView *_messageContentView; + double _foregroundLoadStartTime; + double _backgroundLoadStartTime; + double _backgroundLoadEndTime; + double _webViewLoadStartTime; + BOOL _isForPrinting; + BOOL _showDefaultHeadersStickily; + MessageViewingState *_stickyViewingState; + MessageViewingState *_viewingState; + NSMutableDictionary *_editorCache; + EmbeddedNoteDocumentEditor *_currentEditor; + BannerController *_bannerController; + double _preferredHeight; + double _accumulatedMagnification; + double _displayWidth; + BOOL _canZoomIn; + BOOL _canZoomOut; + BOOL _isSelected; + BOOL _isActiveSelection; + BOOL _shouldDisplayShowInMailboxLink; + BOOL _shouldLoadMessageDisplay; + unsigned long long _numberOfDuplicates; + BOOL _finishedLoadingMessageContent; + BOOL _displayAsSingleMessage; + BOOL _hasSetupMessageDisplay; + BOOL _hasSetupMessageBody; + BOOL _isVisible; + unsigned long long _messageNumber; + long long _relatedMessageType; + NSView *_viewForAccessibilityLinks; +} + ++ (id)_loadQueue; +- (id)initWithAllMessagesInConversation:(id)arg1 selectedMailboxes:(id)arg2; +- (id)description; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)documentEditors; +- (void)registerDocumentEditor:(id)arg1; +- (void)unregisterDocumentEditor:(id)arg1; +@property BOOL displayAsSingleMessage; +@property BOOL isSelected; +- (BOOL)isActiveSelection; +- (void)setIsActiveSelection:(BOOL)arg1; +@property BOOL isForPrinting; +@property(retain, nonatomic) NSMutableDictionary *editorCache; +- (void)release; +- (void)_resetContentViewData; +- (void)tearDown; +- (void)contentViewWillBeRemoved; +- (void)contentViewWasAdded; +- (void)dealloc; +- (void)_stopBackgroundMessageLoading:(BOOL)arg1 URLification:(BOOL)arg2 dataDetection:(BOOL)arg3; +- (void)cancelDataDetection; +@property(retain, nonatomic) MessageContentView *messageContentView; +- (BOOL)isSecondaryMessage; +@property unsigned long long numberOfDuplicates; +- (void)stopAllActivity; +- (id)documentView; +- (id)viewForKeyViewLoop; +- (BOOL)shouldManageQuotedContent; +- (void)makeMessageBeFirstResponder; +- (void)_updateIfDisplayingMessage:(id)arg1; +@property(retain) MessageViewingState *viewingState; +- (void)_fetchDataForMessageAndUpdateDisplay:(id)arg1; +- (void)_messageMayHaveBecomeAvailable; +- (void)_doUrlificationAndDataDetectionForViewingState:(id)arg1; +- (void)_backgroundLoadFinished:(id)arg1; +- (void)setMessageToDisplay:(id)arg1; +- (void)substituteMessage:(id)arg1; +- (void)_setMessage:(id)arg1; +- (void)_fetchEditorForMessage:(id)arg1 viewingState:(id)arg2; +- (void)editorDidLoad:(id)arg1; +- (void)editorFailedLoad:(id)arg1; +- (id)_existingEditor:(Class)arg1 forDocument:(id)arg2; +- (id)_messageInConversationWithMessageIDHeaderString:(id)arg1; +- (id)_mostRecentAncestorForRedundantTextComparisonForMessage:(id)arg1; +- (BOOL)_ancestorMessageIsValidForRedundantTextComparison:(id)arg1; +- (id)_messageForFinalizingHtmlContentWithViewingState:(id)arg1; +- (void)_finalizeHtmlContentForDisplayWithViewingState:(id)arg1 originalMessage:(id)arg2; +- (void)setMessageContentIsVisible:(BOOL)arg1; +- (void)_asyncFetchContentsForMessage:(id)arg1 withViewingState:(id)arg2; +- (void)_startBackgroundLoad:(id)arg1; +- (void)reloadCurrentMessageShouldReparseBody:(BOOL)arg1; +- (void)_viewerPreferencesChanged:(id)arg1; +@property BOOL shouldDisplayShowInMailboxLink; +- (void)showAllCopiesOfMessage; +- (long long)messageNumber; +- (void)setMessageNumber:(long long)arg1; +@property(nonatomic) long long relatedMessageType; +- (void)_addRecentAddress:(id)arg1; +- (void)_messageFlagsDidChange:(id)arg1; +- (void)_messagesDidUpdate:(id)arg1; +- (void)closeEditors; +- (id)editorForNote:(id)arg1 willLoad:(char *)arg2; +- (void)_updateEditorDisplay; +- (id)_dataDetectorsContextForMessage:(id)arg1; +@property(readonly) BOOL hasBeenToldToLoadHeadersAndBody; +- (void)loadMessageDisplayIncludeBody:(BOOL)arg1; +- (void)_webViewLoadTimeout; +@property(nonatomic) BOOL hasSetupMessageBody; +- (void)_displayMessageLoadBody:(BOOL)arg1; +- (void)_loadMessageBody; +- (void)_setupMessageContentDisplayLoadBody:(BOOL)arg1; +- (void)_displayChanged; +@property(nonatomic) BOOL finishedLoadingMessageContent; +- (void)prepareForRedundantTextExpansionAnimationWithTopYPosition:(double)arg1 bottomYPosition:(double)arg2 foldYPosition:(double)arg3 foldIsAtBottom:(BOOL)arg4; +- (void)_editorClosed:(id)arg1; +@property(retain, nonatomic) EmbeddedNoteDocumentEditor *currentEditor; +- (void)highlightSearchText:(id)arg1; +- (id)selectedText; +- (id)selectionParsedMessage; +- (id)attachmentsInSelection; +- (id)parsedMessage; +- (long long)headerDetailLevel; +- (BOOL)showingAllHeaders; +- (void)setShowAllHeaders:(BOOL)arg1; +- (void)downloadRemoteContent; +- (BOOL)remoteAttachmentsAreDownloaded; +- (void)makeStickyInfoFromViewingState:(id)arg1; +- (void)keyDown:(id)arg1; +- (void)_resetGestureState; +- (void)beginGestureWithEvent:(id)arg1; +- (void)endGestureWithEvent:(id)arg1; +- (void)magnifyWithEvent:(id)arg1; +- (void)messageContentViewWasClicked; +- (void)setUpAccessibilityLinksFromView:(id)arg1; +- (void)removeAccessibilityLinks; +- (id)findTarget; +- (void)showAllHeaders:(id)arg1; +- (void)showFilteredHeaders:(id)arg1; +- (void)viewSource:(id)arg1; +- (void)showFirstAlternative:(id)arg1; +- (void)showPreviousAlternative:(id)arg1; +- (void)showNextAlternative:(id)arg1; +- (void)_messageWouldHaveLoadedRemoteURL:(id)arg1; +- (void)showBestAlternative:(id)arg1; +- (void)changeTextEncoding:(id)arg1; +- (void)makeFontBigger:(id)arg1; +- (void)makeFontSmaller:(id)arg1; +- (void)jumpToSelection:(id)arg1; +- (void)takeFindStringFromSelection:(id)arg1; +- (id)headerSnapshot; +- (id)bodySnapshotWithSize:(struct CGSize)arg1; +- (struct CGSize)visibleBodySize; +- (BOOL)isHeaderViewFullyVisible; +- (id)viewWhereMessageIsDisplayed; +- (id)viewWhereMessageExists; +- (id)messageViewer; +- (void)saveAttachments:(id)arg1; +- (void)saveAttachmentsWithoutPrompting:(id)arg1; +@property double displayWidth; // @synthesize displayWidth=_displayWidth; +@property double preferredHeight; // @synthesize preferredHeight=_preferredHeight; +@property(retain) Message *parentMessageUsedForRedundantTextIdentification; // @synthesize parentMessageUsedForRedundantTextIdentification=_parentMessageUsedForRedundantTextIdentification; +@property(readonly, retain, nonatomic) NSArray *selectedMailboxes; // @synthesize selectedMailboxes=_selectedMailboxes; +@property(readonly, retain, nonatomic) NSSet *allMessagesInConversation; // @synthesize allMessagesInConversation=_allMessagesInConversation; +@property(assign) MessageViewingPaneController *parentController; // @synthesize parentController=_parentController; +@property(retain, nonatomic) Message *message; // @synthesize message=_message; +@property(retain) ActivityMonitor *urlificationMonitor; // @synthesize urlificationMonitor=_urlificationMonitor; +@property(retain) ActivityMonitor *documentMonitor; // @synthesize documentMonitor=_documentMonitor; +@property(retain) id messageContentDisplay; // @synthesize messageContentDisplay=_messageContentDisplay; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageContentDisplay-Protocol.h b/MailHeaders/Lion/Mail/MessageContentDisplay-Protocol.h new file mode 100644 index 00000000..674e5255 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageContentDisplay-Protocol.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MessageContentDisplay +- (id)contentView; +- (id)viewForKeyViewLoop; +- (BOOL)prepareForMessage:(id)arg1 viewingState:(id)arg2; +- (void)display:(id)arg1 inContainerView:(id)arg2 invokeWhenDisplayChanged:(id)arg3 loadBody:(BOOL)arg4; +- (void)clearDisplayChangedInvocation; +- (void)loadMessageBody; +- (void)prepareToRemoveView; +- (void)highlightSearchText:(id)arg1; +- (id)selectedText; +- (id)selectedTextRepresentation; +- (void)setSelectedTextRepresentation:(id)arg1; +- (id)selectionParsedMessage; +- (id)attachmentsInSelection; +- (id)parsedMessage; +- (void)adjustFontSizeBy:(long long)arg1 viewingState:(id)arg2; +- (id)findTarget; +- (void)detectDataInMessage:(id)arg1 usingContext:(id)arg2; +- (void)cancelDataDetection; +- (void)informDataDetectorsThatViewWillDisappear; +- (void)informDataDetectorsThatViewDidAppear; +- (BOOL)bringYourOwnScrollbars; +- (void)makeMessageBeFirstResponder; +- (void)setShouldBecomeFirstResponder:(BOOL)arg1; + +@optional +- (BOOL)isOkayToDownloadAttachment:(id)arg1; +- (void)setMinimumHeight:(double)arg1; +- (void)setIsActiveSelection:(BOOL)arg1; +- (void)removeAllRedundantClusters; +- (void)setUpAccessibilityLinksFromView:(id)arg1; +- (void)removeAccessibilityLinks; +- (id)messageHeaderDisplay; +@property(nonatomic) BOOL isForPrinting; +@property(assign) id parentController; +@property BOOL isSelected; +@property BOOL displayAsSingleMessage; +@end + diff --git a/MailHeaders/Lion/Mail/MessageContentView.h b/MailHeaders/Lion/Mail/MessageContentView.h new file mode 100644 index 00000000..1f042438 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageContentView.h @@ -0,0 +1,68 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableCellView.h" + +#import "BannerContainer-Protocol.h" + +@class ColorBackgroundView, LoadingOverlay, MessageContentController, NSView; + +@interface MessageContentView : NSTableCellView +{ + MessageContentController *_controller; + NSView *_messageView; + NSView *_bannerView; + NSView *_couponView; + ColorBackgroundView *_gradientOverlayView; + ColorBackgroundView *_progressOverlayView; + LoadingOverlay *_loadingOverlay; + BOOL isTiling; + BOOL _displayAsSingleMessage; + BOOL _isSelected; + BOOL _isActiveSelection; +} + ++ (id)selectedMessageHaloBaseColor; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (void)messageViewPreferredHeightDidChange; +- (void)_tile; +@property BOOL displayAsSingleMessage; +- (void)setIsSelected:(BOOL)arg1; +- (void)setIsActiveSelection:(BOOL)arg1; +- (void)_contentViewHeightChanged; +- (struct CGRect)_contentRect; +- (void)drawRect:(struct CGRect)arg1; +- (BOOL)isOpaque; +- (void)resizeSubviewsWithOldSize:(struct CGSize)arg1; +- (void)willRemoveSubview:(id)arg1; +- (void)addSubview:(id)arg1; +- (void)setFrame:(struct CGRect)arg1; +- (void)_subviewFrameDidChange:(id)arg1; +- (void)displayProgressAfterDelay; +- (void)displayProgress; +- (void)loadingOverlayDidEnd:(id)arg1 returnCode:(long long)arg2; +- (void)removeProgress; +- (void)messageContentViewWasClicked; +- (void)mouseDown:(id)arg1; +- (BOOL)acceptsFirstResponder; +- (BOOL)becomeFirstResponder; +- (BOOL)resignFirstResponder; +- (BOOL)isFlipped; +@property(retain, nonatomic) NSView *messageView; // @synthesize messageView=_messageView; +- (void)setShowsGradientOverlay:(BOOL)arg1; +- (struct CGRect)visibleRect; +- (void)showBanner:(id)arg1; +- (void)removeBanner; +- (void)hideBanner; +- (id)headerView; +- (id)headerSnapshot; +- (id)bodySnapshotWithSize:(struct CGSize)arg1; +- (struct CGSize)visibleBodySize; +@property(nonatomic) MessageContentController *controller; // @synthesize controller=_controller; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageDeletionTransfer-Protocol.h b/MailHeaders/Lion/Mail/MessageDeletionTransfer-Protocol.h new file mode 100644 index 00000000..9f3031b6 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageDeletionTransfer-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MessageDeletionTransfer +- (BOOL)canBeginTransfer; +- (void)beginTransfer; +@end + diff --git a/MailHeaders/Lion/Mail/MessageDragHelper.h b/MailHeaders/Lion/Mail/MessageDragHelper.h new file mode 100644 index 00000000..ef27c7bc --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageDragHelper.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSString; + +@interface MessageDragHelper : NSObject +{ + NSArray *_draggedMessages; + NSString *_pasteboardURLString; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (void)writeMessages:(id)arg1 toPasteboard:(id)arg2 forOwner:(id)arg3; +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; +- (void)pasteboardChangedOwner:(id)arg1; +- (id)namesOfPromisedFilesDroppedAtDestination:(id)arg1; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +@property(retain) NSString *pasteboardURLString; // @synthesize pasteboardURLString=_pasteboardURLString; +@property(copy) NSArray *draggedMessages; // @synthesize draggedMessages=_draggedMessages; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageEditor.h b/MailHeaders/Lion/Mail/MessageEditor.h new file mode 100644 index 00000000..254b31b6 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageEditor.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MessageEditor : NSObject +{ +} + ++ (void)initialize; ++ (id)sharedMessageEditor; +- (id)init; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)objectSpecifier; +- (void)setBackEnd:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageHeaderDisplay.h b/MailHeaders/Lion/Mail/MessageHeaderDisplay.h new file mode 100644 index 00000000..ff5801dc --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageHeaderDisplay.h @@ -0,0 +1,114 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "AddressTextViewDelegate-Protocol.h" + +@class EmailViewController, HeaderAttachmentsController, MessageHeaderView, NSAttributedString, NSString, SenderImageView; + +@interface MessageHeaderDisplay : NSObject +{ + MessageHeaderView *_headerView; + EmailViewController *_parentController; + SenderImageView *_senderImageView; + HeaderAttachmentsController *_headerAttachmentsController; + NSAttributedString *_dateAttributedString; + NSString *_unloadedSender; + double _oldHeaderViewWidth; + struct CGRect _rectOfFromAddress; + BOOL _isCalculatingAddressLines; + BOOL _isForPrinting; + BOOL _isSelected; + BOOL _isActiveSelection; + BOOL _displayAsSingleMessage; + BOOL _viewIsAboutToBeRemoved; + unsigned long long _messageNumber; + long long _relatedMessageType; + BOOL _messageHasBackground; +} + ++ (void)_rangeOfAddresses:(struct _NSRange *)arg1 rangeOfLink:(struct _NSRange *)arg2 forKey:(id)arg3 inAttributedString:(id)arg4; +- (void)_loadRSSImages; +- (void)_loadSMIMEImages; +- (void)_loadSenderPlaceHolderImage; +- (id)_newlineAndTabCharacterSet; +- (id)_attributedStringForSecurityHeader; +- (void)_setAttachmentsDescription; +- (id)_expandedAttributedString; +- (id)_simpleAttributedString; +- (id)_detailsLinkAttributedString; +- (void)_setupHeaderAttributedString; +- (void)_loadRecordsForAddresses; +- (id)_attributedLinkForHideShowDetailsWithString:(id)arg1; +- (BOOL)_prepareToDisplayRSSHeadersForMessage:(id)arg1 viewingState:(id)arg2; +- (void)_addAddressesToString:(id)arg1 addressStrings:(id)arg2 shouldUseBoldFont:(BOOL)arg3 plainAddresses:(id)arg4 addressAttachments:(id)arg5 key:(id)arg6 viewingState:(id)arg7 tabPosition:(long long)arg8 range:(struct _NSRange *)arg9; +- (void)_setSendersFromAddressAttachments:(id)arg1; +- (void)_stripTrailingReturns:(id)arg1; +- (id)attachmentsDescriptionForMessage:(id)arg1 viewingState:(id)arg2; +- (id)_formattedAttachmentsSizeForAttachments:(id)arg1; +- (id)formattedAttachmentsSizeForMessage:(id)arg1; +- (unsigned long long)_numberOfAddressesThatFitOnTwoLinesAttachments:(id)arg1 strings:(id)arg2 inTextContainer:(id)arg3 withIndent:(long long)arg4 andVerticalLocation:(long long)arg5 forPrinting:(BOOL)arg6; +- (id)_linkForMoreAddressesCount:(unsigned long long)arg1 headerKey:(id)arg2 font:(id)arg3; +- (id)_paragraphStyleWithLineHeight:(double)arg1; +- (id)_paragraphStyleWithLineHeight:(double)arg1 indent:(double)arg2; +- (id)_paragraphStyleWithLineHeight:(double)arg1 firstLineHeadIndent:(double)arg2 headIndent:(double)arg3; +- (id)_regularParagraphStyleForTabPosition:(long long)arg1; +- (id)_regularParagraphStyleForTabPosition:(long long)arg1 paragraphSpacing:(long long)arg2; +- (id)_addressParagraphStyleForTabPosition:(long long)arg1 withLineBreakMode:(unsigned long long)arg2 forPrinting:(BOOL)arg3; +- (void)_setTabsWithPosition:(long long)arg1 inAttributedString:(id)arg2 withKeys:(id)arg3 addressKeys:(id)arg4 addressAttachments:(id)arg5 forPrinting:(BOOL)arg6; +- (void)dealloc; +- (id)viewingState; +- (void)_setupHeaderView; +- (void)setHeaderView:(id)arg1; +@property(nonatomic) unsigned long long messageNumber; +@property(nonatomic) long long relatedMessageType; +- (void)_setUpWithViewingState:(id)arg1; +- (id)unloadedSender; +- (void)setUnloadedSender:(id)arg1; +@property BOOL displayAsSingleMessage; +@property BOOL isSelected; +- (void)headerViewWasClicked; +- (void)setIsActiveSelection:(BOOL)arg1; +- (void)setIsForPrinting:(BOOL)arg1; +- (void)_updateTextContainerAndOtherOverlapControls; +- (void)display:(id)arg1; +- (id)_senderAddressAttachment; +- (void)toggleShowHideDetails; +- (void)prepareToRemoveView; +- (void)displayAttributedString:(id)arg1; +- (void)headerViewFrameChanged:(id)arg1; +- (void)_recalculateAddressLinesWithDisplay; +- (void)recalculateAddressLinesShouldDisplay:(BOOL)arg1; +- (void)_urlifySubjectAttributedString:(id)arg1; +- (void)updateSecondaryMessageStatus; +- (void)updateNumberOfDuplicates; +- (void)_updateShowHideLink; +- (id)attachmentsDescription; +- (struct CGRect)attachmentsButtonsFrame; +- (id)messageViewer; +- (id)_attributedStringOfLength:(long long)arg1 usingAttachments:(id)arg2 startingAtIndex:(long long)arg3 strings:(id)arg4 newAttachments:(id *)arg5 forPrinting:(BOOL)arg6; +- (void)showAllAddressesForKey:(id)arg1; +- (BOOL)textView:(id)arg1 clickedOnLink:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)showDuplicates; +- (void)adjustFontSizeBy:(long long)arg1 viewingState:(id)arg2; +- (id)selectedText; +- (void)reloadFlags; +- (void)_addressBookChanged:(id)arg1; +- (void)_addressPhotoLoaded:(id)arg1; +- (id)textView; +- (void)textView:(id)arg1 clickedOnCell:(id)arg2 event:(id)arg3 inRect:(struct CGRect)arg4 atIndex:(unsigned long long)arg5; +- (void)viewerPreferencesChanged; +- (void)layoutManager:(id)arg1 didCompleteLayoutForTextContainer:(id)arg2 atEnd:(BOOL)arg3; +- (BOOL)isHeaderViewFullyVisible; +- (BOOL)shouldDisplayShowInMailboxLink; +- (struct CGRect)rectOfFromAddress; +@property BOOL messageHasBackground; // @synthesize messageHasBackground=_messageHasBackground; +@property(retain) NSAttributedString *dateAttributedString; // @synthesize dateAttributedString=_dateAttributedString; +@property(assign) EmailViewController *parentController; // @synthesize parentController=_parentController; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageHeaderView.h b/MailHeaders/Lion/Mail/MessageHeaderView.h new file mode 100644 index 00000000..2e5097ca --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageHeaderView.h @@ -0,0 +1,128 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextView.h" + +#import "AtomicAddressTextView-Protocol.h" + +@class NSAttributedString, NSBezierPath, NSControl, NSImage, NSMutableArray, SenderImageView; + +@interface MessageHeaderView : NSTextView +{ + struct CGRect _duplicatesLinkRect; + struct CGRect _rectForDrawingDetailsLink; + struct CGRect _rectForDrawingMailboxName; + NSMutableArray *_trackingRectTags; + NSImage *_backgroundImageCap; + NSImage *_tilingBackgroundImage; + NSImage *_relatedMessageImage; + NSAttributedString *_mailboxName; + NSAttributedString *_duplicatesAttributedString; + NSAttributedString *_showHideDetailsAttributedString; + SenderImageView *_senderImageView; + NSBezierPath *_numberBezierPath; + NSControl *_saveButton; + NSControl *_quickLookButton; + long long _relatedMessageType; + long long _messageNumber; + struct CGPoint _mouseDownPoint; + BOOL _shouldShowDetails; + BOOL _isRSSMessage; + BOOL _isSelected; + BOOL _isActiveSelection; + BOOL _displayAsSingleMessage; + BOOL _needsExtraSpaceBelowText; + BOOL _messageHasBackground; + BOOL _isDraggingMessage; + BOOL _isSettingFrameSize; +} + +- (id)_bezierPathForNumber:(unsigned long long)arg1; +- (void)awakeFromNib; +- (void)dealloc; +- (id)delegate; +- (void)setDelegate:(id)arg1; +- (struct CGPoint)textContainerOrigin; +- (void)setFrameOrigin:(struct CGPoint)arg1; +- (void)setFrameSize:(struct CGSize)arg1; +- (BOOL)acceptsPreviewPanelControl:(id)arg1; +- (BOOL)_shouldDragMessageFromPoint:(struct CGPoint)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (double)heightForSeparatorLine; +- (struct CGRect)rectForDrawingMailboxName; +- (struct CGRect)_rectForDrawingMailboxIcon; +- (id)_bezierPathReadyToDrawMessageNumber; +- (struct CGRect)rectForDrawingMessageNumberOrMailboxName; +- (struct CGRect)rectForDrawingAttachmentsDescription:(id)arg1; +- (struct CGRect)rectForDrawingSenderImage; +- (struct CGRect)rectForDrawingDuplicatesLink; +- (struct CGRect)rectForDrawingDetailsLink; +@property(nonatomic) long long relatedMessageType; +@property(nonatomic) long long messageNumber; +- (id)senderImageView; +@property(nonatomic) BOOL shouldShowDetails; +- (void)_securityButtonClicked:(id)arg1; +- (void)mouseUp:(id)arg1; +- (void)mouseDown:(id)arg1; +- (id)enclosingScrollView; +- (void)cursorUpdate:(id)arg1; +- (void)mouseDragged:(id)arg1; +- (void)draggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; +- (id)namesOfPromisedFilesDroppedAtDestination:(id)arg1; +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; +- (void)pasteboardChangedOwner:(id)arg1; +- (unsigned long long)draggingSourceOperationMaskForLocal:(BOOL)arg1; +- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (void)_loadFlagImages; +- (void)trackHeaderAddresses:(id)arg1 replacingPreviousAddresses:(BOOL)arg2; +- (void)_addressAtomsWereUpdated:(id)arg1; +- (void)_addressAttachmentSizeChanged:(id)arg1; +- (void)_addressAppearanceChanged:(id)arg1; +- (void)setSelectedRange:(struct _NSRange)arg1 affinity:(unsigned long long)arg2 stillSelecting:(BOOL)arg3; +- (void)setSelectedRange:(struct _NSRange)arg1; +- (struct _NSRange)selectionRangeForProposedRange:(struct _NSRange)arg1 granularity:(unsigned long long)arg2; +- (id)tilingBackgroundImage; +- (void)setTilingBackgroundImage:(id)arg1; +- (id)backgroundImageCap; +- (void)setBackgroundImageCap:(id)arg1; +- (struct CGRect)cellFrameForAttachment:(id)arg1 atCharIndex:(long long)arg2; +- (void)_removeTrackingRects; +- (void)resetCursorRects; +- (void)mouseMoved:(id)arg1; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)viewDidMoveToWindow; +- (void)invalidateCursorRects; +- (void)didChangeText; +- (id)writablePasteboardTypes; +- (BOOL)writeSelectionToPasteboard:(id)arg1 type:(id)arg2; +- (id)menuForEvent:(id)arg1; +- (id)_attachmentForPoint:(struct CGPoint)arg1; +- (id)_attachmentForEvent:(id)arg1; +- (id)undoManager; +- (void)setDisplayAsSingleMessage:(BOOL)arg1; +- (void)setIsSelected:(BOOL)arg1; +- (void)setIsActiveSelection:(BOOL)arg1; +- (void)keyDown:(id)arg1; +- (void)didBecomeActiveFirstResponder; +- (BOOL)accessibilityIsIgnored; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeValue:(id)arg1 forParameter:(id)arg2; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)senderImageFauxUIElement; +- (id)numberOrMailboxFauxUIElement; +- (id)accessibilityHitTest:(struct CGPoint)arg1; +@property(retain) NSControl *quickLookButton; // @synthesize quickLookButton=_quickLookButton; +@property(retain) NSControl *saveButton; // @synthesize saveButton=_saveButton; +@property BOOL messageHasBackground; // @synthesize messageHasBackground=_messageHasBackground; +@property BOOL needsExtraSpaceBelowText; // @synthesize needsExtraSpaceBelowText=_needsExtraSpaceBelowText; +@property BOOL isRSSMessage; // @synthesize isRSSMessage=_isRSSMessage; +@property(retain) NSAttributedString *showHideDetailsAttributedString; // @synthesize showHideDetailsAttributedString=_showHideDetailsAttributedString; +@property(retain) NSAttributedString *duplicatesAttributedString; // @synthesize duplicatesAttributedString=_duplicatesAttributedString; +@property(retain) NSAttributedString *mailboxName; // @synthesize mailboxName=_mailboxName; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageListCell.h b/MailHeaders/Lion/Mail/MessageListCell.h new file mode 100644 index 00000000..771c4321 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageListCell.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSImageCell.h" + +@class NSString, NSTextFieldCell; + +@interface MessageListCell : NSImageCell +{ + NSTextFieldCell *_textCell; + NSString *_stringValue; + double _maxHeight; + double _maxWidth; + int _contentType; + unsigned long long _contentCount; +} + +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)_textCell; +- (void)setTextColor:(id)arg1; +- (void)setFont:(id)arg1; +- (void)setMaxHeight:(double)arg1; +- (double)maxHeight; +- (void)setMaxWidth:(double)arg1; +- (double)maxWidth; +- (struct CGSize)_imageSizeForCellFrame:(struct CGRect)arg1; +- (struct CGPoint)_drawOriginForSize:(struct CGSize)arg1 inRect:(struct CGRect)arg2; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)setObjectValue:(id)arg1; +- (struct CGRect)imageRectForBounds:(struct CGRect)arg1; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (void)setContentType:(int)arg1; +- (void)setContentCount:(unsigned long long)arg1; +- (id)contentValue; +- (BOOL)isRepresentedAsStaticText; +- (BOOL)isRepresentedAsButton; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityActionNames; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageListColumnManager.h b/MailHeaders/Lion/Mail/MessageListColumnManager.h new file mode 100644 index 00000000..4323c1ea --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageListColumnManager.h @@ -0,0 +1,56 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSDictionary, NSMutableDictionary; + +@interface MessageListColumnManager : NSObject +{ + NSArray *_tableColumns; + NSDictionary *_viewerPreferences; + NSMutableDictionary *_tableColumnPreferences; + BOOL _blockSavingColumnPreferences; + BOOL _columnPreferencesWereSetupFromScratch; +} + ++ (id)sharedManager; ++ (void)setSharedManager:(id)arg1; +- (id)initWithTableColumns:(id)arg1 viewerPreferences:(id)arg2; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)saveColumnPreferencesToDefaults:(id)arg1; +- (void)takeDefaultsForMailboxes:(id)arg1 isThreaded:(BOOL)arg2 isSearching:(BOOL)arg3 searchTarget:(int)arg4 fromCurrentColumnsInTableView:(id)arg5; +- (id)_tableColumnPreferencesForMailboxType:(id)arg1; +- (BOOL)isColumnVisible:(long long)arg1 forMailboxes:(id)arg2; +- (BOOL)isAutomaticInsertionWhileSearchingOkayForColumn:(long long)arg1 forMailboxes:(id)arg2; +- (id)_settingForColumn:(long long)arg1 forKey:(id)arg2 forMailboxes:(id)arg3; +- (long long)widthAndPosition:(long long *)arg1 forColumn:(id)arg2 inTableView:(id)arg3 mailboxes:(id)arg4 isThreaded:(BOOL)arg5 isSearching:(BOOL)arg6; +- (long long)_widthAndPosition:(long long *)arg1 forColumn:(id)arg2 mailboxes:(id)arg3 isThreaded:(BOOL)arg4 isSearching:(BOOL)arg5 locationIsVisible:(BOOL)arg6; +- (id)_convertNormalSettingsFromPreleopardDefaults; +- (void)_replaceColumn:(long long)arg1 byColumn:(long long)arg2 inSettings:(id)arg3; +- (void)_setColumn:(long long)arg1 isVisible:(BOOL)arg2 inSettings:(id)arg3; +- (id)_visibleTableColumnSettingsForMailboxes:(id)arg1 multipleMailboxes:(BOOL)arg2 ofType:(id)arg3 withLastViewedDate:(BOOL)arg4 isThreaded:(BOOL)arg5 isSearching:(BOOL)arg6 searchTarget:(int)arg7 searchField:(int)arg8 tableView:(id)arg9; +- (id)typeOfMailboxes:(id)arg1 multiple:(char *)arg2; +- (id)_widthKeyForMailboxType:(id)arg1 isThreaded:(BOOL)arg2 isSearching:(BOOL)arg3 locationIsVisible:(BOOL)arg4; +- (BOOL)_columnsList:(id)arg1 containsColumn:(long long)arg2; +- (BOOL)_column:(long long)arg1 isAnAutomaticInsertColumnForMailboxType:(id)arg2 mailboxes:(id)arg3 multipleMailboxes:(BOOL)arg4 isSearching:(BOOL)arg5 searchTarget:(int)arg6 searchField:(int)arg7; +- (BOOL)_someMailboxUsesLastViewedDateCriterion:(id)arg1; +- (void)showColumnsInTableView:(id)arg1 allColumns:(id)arg2 forMailboxes:(id)arg3 isThreaded:(BOOL)arg4 threadingHasChanged:(BOOL)arg5; +- (void)showColumnsInTableView:(id)arg1 allColumns:(id)arg2 forSearchTarget:(int)arg3 searchField:(int)arg4 mailboxes:(id)arg5 isThreaded:(BOOL)arg6; +- (void)sizeColumnsToFitInTableView:(id)arg1 forMailboxes:(id)arg2 isThreaded:(BOOL)arg3 threadingDidChange:(BOOL)arg4; +- (void)column:(id)arg1 wasMadeVisible:(BOOL)arg2 inTableView:(id)arg3 forMailboxes:(id)arg4 isSearching:(BOOL)arg5 searchTarget:(int)arg6 searchField:(int)arg7; +- (long long)calcUnreadColumnWidth:(id)arg1 forUnreadCountString:(id)arg2; +- (void)setUpUnreadColumnMinWidth:(id)arg1 isThreaded:(BOOL)arg2; +- (void)_setupUnreadColumnWidthInTableView:(id)arg1 forMailboxes:(id)arg2 isThreaded:(BOOL)arg3; +@property BOOL wereTableColumnPreferencesSetupFromScratch; // @synthesize wereTableColumnPreferencesSetupFromScratch=_columnPreferencesWereSetupFromScratch; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageListContainerView.h b/MailHeaders/Lion/Mail/MessageListContainerView.h new file mode 100644 index 00000000..6900d757 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageListContainerView.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class MessageViewer, NSTableHeaderView, NSTableView, RichMessageListSortView; + +@interface MessageListContainerView : NSView +{ + NSTableView *_messageListTableView; + MessageViewer *_messageViewer; + NSTableHeaderView *_previousHeaderView; + RichMessageListSortView *_sortView; + BOOL _isRichMessageList; +} + +- (void)showSortView:(BOOL)arg1; +@property(nonatomic) BOOL isRichMessageList; +- (void)dealloc; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (BOOL)accessibilityIsIgnored; +@property(retain) RichMessageListSortView *sortView; // @synthesize sortView=_sortView; +@property NSTableView *messageListTableView; // @synthesize messageListTableView=_messageListTableView; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageListHeaderCell.h b/MailHeaders/Lion/Mail/MessageListHeaderCell.h new file mode 100644 index 00000000..c181bc2f --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageListHeaderCell.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableHeaderCell.h" + +@class MessageListCell, NSString; + +@interface MessageListHeaderCell : NSTableHeaderCell +{ + MessageListCell *_realCell; + unsigned long long _imageAlignment; + NSString *_accessibilityTitle; +} + +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)setImageAlignment:(unsigned long long)arg1; +- (void)setAccessibilityTitle:(id)arg1; +- (id)accessibilityTitle; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageMall-Protocol.h b/MailHeaders/Lion/Mail/MessageMall-Protocol.h new file mode 100644 index 00000000..897a688c --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageMall-Protocol.h @@ -0,0 +1,92 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MessageMall +- (void)unregisterForNotifications; +- (long long)filteredMessagesCount; +- (id)filteredMessageAtIndex:(unsigned long long)arg1; +- (id)filteredMessagesAtIndexes:(id)arg1; +- (id)filteredMessages; +- (id)filteredMessagesInRange:(struct _NSRange)arg1; +- (unsigned long long)indexOfFilteredMessage:(id)arg1; +- (unsigned long long)indexOfFilteredDocument:(id)arg1; +- (id)numberForMessage:(id)arg1; +- (id)filteredMessageAtIndex:(unsigned long long)arg1 isChildOfThread:(char *)arg2; +- (unsigned long long)indexOfMessage:(id)arg1; +- (id)filteredThreads; +- (void)clearFilteredMessages; +- (BOOL)isFocused; +- (void)setFocusedMessages:(id)arg1; +- (id)threadForMessageID:(id)arg1; +- (BOOL)messageIsPartOfAThread:(id)arg1; +- (id)messageIDsToShowAllCopiesOf; +- (void)showAllCopiesOfMessage:(id)arg1; +- (void)hideAllCopiesOfMessages:(id)arg1; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (id)originalOfMessage:(id)arg1; +- (BOOL)filteredListIncludesAllMessages; +- (id)smartMailboxMemberMessagesForMessages:(id)arg1; +- (unsigned long long)unreadCount; +- (unsigned long long)totalCount; +- (id)messageForMessageID:(id)arg1; +- (BOOL)isReadOnly; +- (BOOL)isOpened; +- (BOOL)canRebuild; +- (void)rebuildTableOfContentsAsynchronously; +- (BOOL)canCompact; +- (void)doCompact; +- (void)setupRowDrawingInfo:(struct __CFDictionary *)arg1; +- (id)hideMessages:(id)arg1; +- (id)unhideMessages:(id)arg1; +- (BOOL)deletedFlagForMessage:(id)arg1; +- (void)setMailboxUids:(id)arg1; +- (id)allMailboxUids; +- (id)selectedMailboxUids; +- (id)expandedSelectedMailboxUids; +- (id)stores; +- (id)expandedSelectedMailboxUidsAllowingSearch; +- (BOOL)includeDeleted; +- (void)setIncludeDeleted:(BOOL)arg1; +- (void)setSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (id)sortOrder; +- (BOOL)isSortedAscending; +- (void)sortMessages:(id)arg1; +- (BOOL)displayingToColumn; +- (void)setDisplayingToColumn:(BOOL)arg1; +- (BOOL)isInThreadedMode; +- (BOOL)isInThreadedModeExcludingSearch; +- (void)setIsInThreadedMode:(BOOL)arg1; +- (void)toggleThreadedMode; +- (void)prepareToDisplayThread:(id)arg1; +- (BOOL)openThreadAtIndex:(long long)arg1 andSelectMessage:(id)arg2 animate:(BOOL)arg3; +- (id)quietlyOpenThreadAtIndex:(unsigned long long)arg1; +- (BOOL)closeThreadAtIndex:(long long)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; +- (id)quietlyCloseThreadAtIndex:(unsigned long long)arg1; +- (BOOL)openThreadsWithIDs:(id)arg1; +- (void)openAllThreads; +- (void)closeAllThreads; +- (void)reload:(id)arg1; +- (void)routeMessages:(id)arg1; +- (void)addMessagesInSameThreadAsMessage:(id)arg1 toSet:(id)arg2; +- (id)repliesToMessage:(id)arg1; +- (id)parentOfMessage:(id)arg1; +- (id)filteredThreadForMessage:(id)arg1; +- (id)unfilteredThreadForMessage:(id)arg1; +- (id)allRelatedMessagesForMessage:(id)arg1; +- (BOOL)hasNonDuplicateRelatedMessages:(id)arg1; +- (BOOL)supportsSearching; + +@optional +- (void)searchForSuggestions:(id)arg1 in:(int)arg2 withOptions:(int)arg3; +- (void)searchForString:(id)arg1 in:(int)arg2 withOptions:(int)arg3; +- (id)criterionForSuggestion:(id)arg1 forSavedSearch:(BOOL)arg2; +- (unsigned long long)sizeForMessage:(id)arg1; +- (BOOL)isShowingSearchResults; +- (BOOL)isStillSearching; +- (int)currentSearchField; +- (int)currentSearchTarget; +@end + diff --git a/MailHeaders/Lion/Mail/MessageMegaMall.h b/MailHeaders/Lion/Mail/MessageMegaMall.h new file mode 100644 index 00000000..bcb0b5f3 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageMegaMall.h @@ -0,0 +1,130 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MessageMall-Protocol.h" + +@class MessageMiniMall; + +@interface MessageMegaMall : NSObject +{ + MessageMiniMall *_mailboxesMiniMall; + MessageMiniMall *_searchMiniMall; + MessageMiniMall *_currentMiniMall; + MessageMiniMall *_alternateMiniMall; + int _activeSearchField; + int _activeSearchTarget; +} + +- (id)init; +- (void)dealloc; +- (id)description; +- (void)unregisterForNotifications; +- (id)currentMiniMall; +- (id)alternateMiniMall; +- (BOOL)isUsingSearchMiniMall; +- (void)setUsingSearchMiniMall:(BOOL)arg1; +- (void)_updateUseLibraryIDNumbering; +- (void)_handleMiniMallNotification:(id)arg1; +- (long long)filteredMessagesCount; +- (id)filteredMessageAtIndex:(unsigned long long)arg1; +- (id)filteredMessagesAtIndexes:(id)arg1; +- (id)filteredMessages; +- (id)filteredMessagesInRange:(struct _NSRange)arg1; +- (unsigned long long)indexOfFilteredMessage:(id)arg1; +- (unsigned long long)indexOfFilteredDocument:(id)arg1; +- (id)filteredMessageAtIndex:(unsigned long long)arg1 isChildOfThread:(char *)arg2; +- (id)numberForMessage:(id)arg1; +- (unsigned long long)indexOfMessage:(id)arg1; +- (id)filteredThreads; +- (void)clearFilteredMessages; +- (BOOL)filteredListIncludesAllMessages; +- (BOOL)isFocused; +- (void)setFocusedMessages:(id)arg1; +- (BOOL)supportsSearching; +- (void)_searchForCriterion:(id)arg1; +- (void)searchForSuggestions:(id)arg1 in:(int)arg2 withOptions:(int)arg3; +- (void)searchForString:(id)arg1 in:(int)arg2 withOptions:(int)arg3; +- (id)criterionForDateSuggestion:(id)arg1; +- (id)criterionForMailFlagSuggestion:(id)arg1; +- (id)criterionForMailFlaggedStatusSuggestion:(id)arg1; +- (id)criterionForMessageHasAttachment; +- (id)criterionForAttachmentNameContainsString:(id)arg1; +- (id)criterionForAttachmentNameContainsSuggestion:(id)arg1 forSavedSearch:(BOOL)arg2; +- (id)criterionForMailboxSuggestion:(id)arg1 forSavedSearch:(BOOL)arg2; +- (id)criterionForSuggestion:(id)arg1 forSavedSearch:(BOOL)arg2; +- (id)criterionForSuggestions:(id)arg1 scope:(int)arg2; +- (id)criterionForString:(id)arg1 type:(int)arg2 scope:(int)arg3; +- (id)mailboxSearchCriterionForMailboxes:(id)arg1; +- (id)mailboxSearchCriterionForScope:(int)arg1; +- (id)criterionForDateWithin:(id)arg1 and:(id)arg2 withType:(int)arg3; +- (id)compoundCriterionWithCriterion:(id)arg1 andAnyDateMatchingQuery:(id)arg2; +- (id)textSearchCriterionForSearchField:(int)arg1 queryString:(id)arg2 includeDateTextualRepresentations:(BOOL)arg3; +- (unsigned long long)sizeForMessage:(id)arg1; +- (BOOL)isShowingSearchResults; +- (BOOL)isStillSearching; +- (int)currentSearchField; +- (int)currentSearchTarget; +- (id)hideMessages:(id)arg1; +- (id)unhideMessages:(id)arg1; +- (BOOL)deletedFlagForMessage:(id)arg1; +- (void)setMailboxUids:(id)arg1; +- (id)allMailboxUids; +- (id)selectedMailboxUids; +- (id)expandedSelectedMailboxUids; +- (id)expandedSelectedMailboxUidsAllowingSearch; +- (id)stores; +- (BOOL)includeDeleted; +- (void)setIncludeDeleted:(BOOL)arg1; +- (void)setSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (id)sortOrder; +- (BOOL)isSortedAscending; +- (void)sortMessages:(id)arg1; +- (BOOL)isInThreadedMode; +- (BOOL)isInThreadedModeExcludingSearch; +- (void)setIsInThreadedMode:(BOOL)arg1; +- (void)toggleThreadedMode; +- (void)prepareToDisplayThread:(id)arg1; +- (BOOL)openThreadAtIndex:(long long)arg1 andSelectMessage:(id)arg2 animate:(BOOL)arg3; +- (id)quietlyOpenThreadAtIndex:(unsigned long long)arg1; +- (BOOL)closeThreadAtIndex:(long long)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; +- (id)quietlyCloseThreadAtIndex:(unsigned long long)arg1; +- (BOOL)openThreadsWithIDs:(id)arg1; +- (void)openAllThreads; +- (void)closeAllThreads; +- (void)addMessagesInSameThreadAsMessage:(id)arg1 toSet:(id)arg2; +- (id)repliesToMessage:(id)arg1; +- (id)parentOfMessage:(id)arg1; +- (id)filteredThreadForMessage:(id)arg1; +- (id)unfilteredThreadForMessage:(id)arg1; +- (id)threadForMessageID:(id)arg1; +- (BOOL)messageIsPartOfAThread:(id)arg1; +- (void)showAllCopiesOfMessage:(id)arg1; +- (id)messageIDsToShowAllCopiesOf; +- (void)hideAllCopiesOfMessages:(id)arg1; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (id)originalOfMessage:(id)arg1; +- (id)allRelatedMessagesForMessage:(id)arg1; +- (BOOL)hasNonDuplicateRelatedMessages:(id)arg1; +- (id)smartMailboxMemberMessagesForMessages:(id)arg1; +- (unsigned long long)unreadCount; +- (unsigned long long)totalCount; +- (id)messageForMessageID:(id)arg1; +- (BOOL)isReadOnly; +- (BOOL)isOpened; +- (BOOL)canRebuild; +- (void)rebuildTableOfContentsAsynchronously; +- (BOOL)canCompact; +- (void)doCompact; +- (void)setupRowDrawingInfo:(struct __CFDictionary *)arg1; +- (BOOL)displayingToColumn; +- (void)setDisplayingToColumn:(BOOL)arg1; +- (void)reload:(id)arg1; +- (void)routeMessages:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageMiniMall.h b/MailHeaders/Lion/Mail/MessageMiniMall.h new file mode 100644 index 00000000..84acc7e6 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageMiniMall.h @@ -0,0 +1,259 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MFMessageSortingValueDelegate-Protocol.h" +#import "MessageMall-Protocol.h" +#import "MessageSortContext-Protocol.h" + +@class InvocationQueue, NSArray, NSMapTable, NSMutableArray, NSMutableDictionary, NSMutableSet, NSString; + +@interface MessageMiniMall : NSObject +{ + InvocationQueue *_filterTasks; + InvocationQueue *_userTasks; + BOOL _sortedAscending; + BOOL _wantsToBeSortedAscending; + BOOL _includeDeleted; + BOOL _focused; + BOOL _isInThreadedMode; + BOOL _wantsToBeInThreadedMode; + BOOL _displayingToColumn; + BOOL _selectionIncludesSmartMailbox; + BOOL _filteredListIncludesAllMessages; + BOOL _useLibraryIDNumbering; + BOOL _isUsedForSearching; + int _currentFilterSeriesID; + NSMutableArray *_selectedMailboxUids; + NSArray *_expandedSelectedMailboxUids; + NSMutableArray *_allStores; + NSMutableSet *_storesWaitingToLoad; + NSMutableDictionary *_allMessagesByStore; + NSMutableDictionary *_primaryMessagesByConversationByStore; + NSMutableDictionary *_nonDeletedMessagesByStore; + NSMutableDictionary *_sortedMessagesByStore; + NSMutableDictionary *_sortedNonDeletedMessagesByStore; + NSMutableArray *_filteredMessages; + NSMutableArray *_sortedFilteredMessages; + NSMutableSet *_filteredThreads; + NSMutableSet *_hiddenMessages; + NSMutableSet *_undeletedMessages; + NSMutableSet *_focusedMessages; + NSMutableSet *_storesBeingOpened; + NSString *_sortOrder; + NSString *_secondarySortOrder; + NSMutableDictionary *_messageSortValues; + NSMutableDictionary *_messagesByConversationID; + NSMutableDictionary *_oldestMessageForConversationID; + NSMutableDictionary *_relatedMessagesByConversationID; + NSMutableDictionary *_messageThreadingDataByMessage; + NSMapTable *_messagesByID; + NSMutableArray *_mailboxUidsToSetAfterDelay; + NSMutableSet *_messageIDsToShowAllCopiesOf; + NSMutableDictionary *_originalMessageByMessageID; + NSMutableDictionary *_messageCopiesByMessageID; + BOOL _alwaysShowCopies; +} + ++ (void)initialize; ++ (id)sortComparatorForThreadsWithSortOrderAscending:(SEL)arg1; ++ (id)sortComparatorForThreads; +- (id)init; +- (void)unregisterForNotifications; +- (void)dealloc; +- (BOOL)supportsSearching; +- (BOOL)isOpened; +- (void)_updateFilteredListIncludesAllMessages; +- (long long)filteredMessagesCount; +- (id)filteredMessageAtIndex:(unsigned long long)arg1; +- (id)filteredMessagesAtIndexes:(id)arg1; +- (id)filteredMessages; +- (id)filteredMessagesInRange:(struct _NSRange)arg1; +- (id)filteredMessageAtIndex:(unsigned long long)arg1 isChildOfThread:(char *)arg2; +- (void)setupRowDrawingInfo:(struct __CFDictionary *)arg1; +- (void)setSortedFilteredMessages:(id)arg1; +- (unsigned long long)indexOfMessageByLibraryID:(id)arg1; +- (BOOL)selectionIncludesSmartMailbox; +- (void)setUseLibraryIDNumbering:(BOOL)arg1; +- (BOOL)useLibraryIDNumbering; +- (id)_sortedMessagesForStore:(id)arg1; +- (unsigned long long)_indexOfMessage:(id)arg1 inStore:(id)arg2 messages:(id)arg3; +- (unsigned long long)indexOfMessage:(id)arg1; +- (id)numberForMessage:(id)arg1; +- (unsigned long long)indexOfFilteredDocument:(id)arg1; +- (unsigned long long)indexOfFilteredMessage:(id)arg1; +- (id)filteredThreads; +- (void)clearFilteredMessages; +- (void)setFocused:(BOOL)arg1; +- (BOOL)isFocused; +- (void)setFocusedMessages:(id)arg1; +- (void)_setFocusedMessages:(id)arg1; +- (unsigned long long)_focusedMessagesCount; +- (id)smartMailboxMemberMessagesForMessages:(id)arg1; +- (void)setSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (id)sortOrder; +- (id)secondarySortOrder; +- (id)arrayWithPrimarySortOrder:(id)arg1 secondarySortOrder:(id)arg2; +- (id)arrayOfSortOrders; +- (id)sortComparatorWithContext:(SEL)arg1 sortValues:(void *)arg2; +- (id)sortComparatorWithPrimarySortOrder:(SEL)arg1 secondarySortOrder:(id)arg2 sortValues:(id)arg3 context:(id)arg4; +- (void)sortMessages:(id)arg1; +- (BOOL)includeDeleted; +- (void)setIncludeDeleted:(BOOL)arg1; +- (BOOL)isSortedAscending; +- (BOOL)isSortedByDateReceived; +- (void *)sortFunctionForSortOrder:(id)arg1; +- (void *)sortFunction; +- (void *)secondarySortFunction; +- (unsigned long long)sizeForMessage:(id)arg1; +- (unsigned long long)sortingSizeForMessage:(id)arg1; +- (id)expandedMailboxes:(id)arg1; +- (void)_loadDelayedMailboxes; +- (void)_storeFinishedLoading:(id)arg1; +- (void)_threadsSpanMailboxesChanged:(id)arg1; +- (void)setMailboxUids:(id)arg1; +- (void)_setMailboxUids:(id)arg1 isDelayedLoad:(BOOL)arg2; +- (id)_storeForMailbox:(id)arg1 cache:(id)arg2; +- (void)_removeMessagesInStores:(id)arg1 fromMessages:(id)arg2 storeCache:(id)arg3; +- (void)_removeMessagesInStores:(id)arg1 fromCopiesInfoWithStoreCache:(id)arg2; +- (id)_addStore:(id)arg1 shouldReturnRetainedMessages:(BOOL)arg2; +- (void)_filterInMessages:(id)arg1; +- (void)_filterInMessagesSynchronously:(id)arg1; +- (BOOL)_filterOutMessagesSynchronously:(id)arg1; +- (void)_resortWithPrimarySortOrder:(id)arg1 secondarySortOrder:(id)arg2; +- (void)_refilter; +- (void)_invertFilteredList; +- (id)_backgroundInvertFilteredList; +- (unsigned long long)totalCount; +- (unsigned long long)unreadCount; +- (id)hideMessages:(id)arg1; +- (id)unhideMessages:(id)arg1; +- (void)rebuildTableOfContentsAsynchronously; +- (void)structureDidChange; +- (void)structureDidChangeFromOpeningThread:(id)arg1 andSelectMessage:(id)arg2 animate:(BOOL)arg3; +- (void)structureDidChangeByClosingThread:(id)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; +- (void)structureDidChangeWithChangedThreads:(id)arg1; +- (id)threadForMessageID:(id)arg1; +- (void)_addMessages:(id)arg1 toTablesForStore:(id)arg2; +- (void)_addMessagesToByStoreTables:(id)arg1; +- (void)updateFilteredListByAddingMessages:(id)arg1 removingMessages:(id)arg2; +- (void)_removeMessagesFromByStoreTables:(id)arg1; +- (BOOL)canCompact; +- (void)doCompact; +- (id)_storesToRebuild; +- (BOOL)canRebuild; +- (id)mailboxUid; +- (id)allMailboxUids; +- (id)selectedMailboxUids; +- (id)expandedSelectedMailboxUids; +- (id)expandedSelectedMailboxUidsAllowingSearch; +- (BOOL)isReadOnly; +- (id)stores; +- (long long)compareByNumberMessage:(id)arg1 andMessage:(id)arg2 sortedAscending:(BOOL)arg3; +- (BOOL)deletedFlagForMessage:(id)arg1; +- (BOOL)_shouldDisplayMessage:(id)arg1 hidingCopies:(BOOL)arg2; +- (id)_messagesThatShouldBeDisplayed:(id)arg1; +- (BOOL)_isKnownMessage:(id)arg1; +- (id)_knownAndUnknownMessages:(id)arg1 fromMessages:(id)arg2; +- (void)_libraryMessagesFlagsChanged:(id)arg1; +- (void)_componentStoreWillOpen:(id)arg1; +- (void)_componentStoreDidOpen:(id)arg1; +- (void)_componentStoreStructureChanged:(id)arg1; +- (void)reload:(id)arg1; +- (BOOL)_shouldIncludeConversationMemberMessageInMall:(id)arg1 lastSeenMailboxInfo:(id)arg2; +- (void)_libraryMessagesUpdated:(id)arg1; +- (void)_backgroundHandleMessagesUpdated:(id)arg1; +- (void)_componentStoreFinishedLoading:(id)arg1; +- (void)_backgroundHandleStoreFinishedLoading:(id)arg1; +- (void)_componentStoreMessagesWereAdded:(id)arg1; +- (void)_backgroundHandleMessagesAdded:(id)arg1; +- (void)_libraryMessagesCompacted:(id)arg1; +- (void)_libraryConversationsWereChanged:(id)arg1; +- (void)_backgroundHandleLibraryConversationsChanged:(id)arg1; +- (void)_performFilterTask:(id)arg1 seriesID:(int)arg2; +- (void)_addTaskToFilterQueue:(id)arg1; +- (void)_resetFilterQueue; +- (void)_filterTaskCompleted:(id)arg1 seriesID:(int)arg2; +- (void)structureWillChangeFromOpeningThread:(id)arg1; +- (void)structureWillChangeFromClosingThread:(id)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; +- (void)structureWillChange; +- (id)_backgroundResortWithPrimarySortOrder:(id)arg1 secondarySortOrder:(id)arg2; +- (void)_removeMembersOfOpenThreads:(id)arg1; +- (void)_insertMembersOfOpenThreads:(id)arg1 usingComparator:(id)arg2; +- (id)_backgroundRefilterMessages:(id)arg1; +- (id)_backgroundMergeMessages:(id)arg1; +- (id)_backgroundSortNewFilteredMessages:(id)arg1; +- (void)_removeThreadedMessagesIn:(id)arg1 from:(id)arg2; +- (void)_updateCopiesInfoForMessages:(id)arg1; +- (id)_updateOriginalsForMessageIDs:(id)arg1; +- (void)_mergeMessages:(id)arg1 intoMessages:(id)arg2 newThreads:(id *)arg3 changedThreads:(id *)arg4 sortValues:(id)arg5 usingComparator:(id)arg6 concurrent:(void)arg7; +- (BOOL)isInThreadedMode; +- (BOOL)isInThreadedModeExcludingSearch; +- (void)setIsInThreadedMode:(BOOL)arg1; +- (void)toggleThreadedMode; +- (BOOL)needThreadingInfo; +- (BOOL)displayingToColumn; +- (void)setDisplayingToColumn:(BOOL)arg1; +- (BOOL)needTo; +- (unsigned int)loadOptions; +- (id)_backgroundResetThreadInfoAndGroupByThread; +- (id)_backgroundGroupMessagesByThread; +- (id)_backgroundUngroupThreads; +- (void)prepareToDisplayThread:(id)arg1; +- (BOOL)openThreadAtIndex:(long long)arg1 andSelectMessage:(id)arg2 animate:(BOOL)arg3; +- (id)quietlyOpenThreadAtIndex:(unsigned long long)arg1; +- (BOOL)closeThreadAtIndex:(long long)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; +- (id)quietlyCloseThreadAtIndex:(unsigned long long)arg1; +- (BOOL)openThreadsWithIDs:(id)arg1; +- (void)openAllThreads; +- (void)closeAllThreads; +- (void)_setFilteredMessages:(id)arg1 changedMessages:(id)arg2 filteredThreads:(id)arg3 changedThreads:(id)arg4 changedFlags:(id)arg5 messagesFilteredIn:(id)arg6 messagesFilteredOut:(id)arg7 sortValues:(id)arg8 forSeriesID:(int)arg9; +- (void)routeMessages:(id)arg1; +- (void)routeMessages:(id)arg1 fromStores:(id)arg2; +- (void)_unlockedAddMessagesInSameThreadAsMessage:(id)arg1 toSetOrArray:(id)arg2; +- (void)addMessagesInSameThreadAsMessage:(id)arg1 toSet:(id)arg2; +- (id)repliesToMessage:(id)arg1; +- (id)parentOfMessage:(id)arg1; +- (BOOL)messageIsPartOfAThread:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (id)threadForMessage:(id)arg1; +- (id)threadAtIndex:(unsigned long long)arg1; +- (BOOL)_hasFilteredThreadForMessage:(id)arg1; +- (id)filteredThreadForMessage:(id)arg1; +- (id)unfilteredThreadForMessage:(id)arg1; +- (id)messageIDsToShowAllCopiesOf; +- (void)showAllCopiesOfMessage:(id)arg1; +- (void)hideAllCopiesOfMessages:(id)arg1; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (id)originalOfMessage:(id)arg1; +- (id)allRelatedMessagesForMessage:(id)arg1; +- (BOOL)hasNonDuplicateRelatedMessages:(id)arg1; +- (void)_addConversationDataForMessage:(id)arg1 withConversationID:(id)arg2; +- (BOOL)_removeConversationDataForMessage:(id)arg1 withConversationID:(id)arg2; +- (void)_addRelatedMessageDataForMessage:(id)arg1 withConversationID:(id)arg2; +- (BOOL)_removeRelatedMessageDataForMessage:(id)arg1 withConversationID:(id)arg2; +- (void)_cleanUpRelatedMessageDataForConversationIDs:(id)arg1; +- (void)_setupNewParentMessageThreadingData:(id)arg1 parent:(id)arg2 conversationID:(id)arg3; +- (void)_deduceThreadHierarchyForMessages:(id)arg1; +- (void)_clearThreadInfo; +- (void)updateThreadingDictionaryForMessages:(id)arg1; +- (void)_resetThreadInfoFromFilteredMessages; +- (void)_updateThreadInfoForMessages:(id)arg1; +- (id)description; +- (unsigned long long)_insertMessageIfAbsent:(id)arg1 intoMallArray:(id)arg2 sortValues:(id)arg3 usingComparator:(id)arg4 fromFunction:(void)arg5 andLine:(const char *)arg6; +- (unsigned long long)_removeMessage:(id)arg1 fromMallArray:(id)arg2 sortValues:(id)arg3 usingComparator:(id)arg4 fromFunction:(void)arg5 andLine:(const char *)arg6; +- (unsigned long long)_indexOfMessage:(id)arg1 inMallArray:(id)arg2 sortValues:(id)arg3 usingComparator:(id)arg4 fromFunction:(void)arg5 andLine:(const char *)arg6; +- (void)_removeMessage:(id)arg1 fromMallArray:(id)arg2 sortValues:(id)arg3 atIndex:(unsigned long long)arg4 fromFunction:(const char *)arg5 andLine:(int)arg6; +- (id)searchDescriptionForMessage:(id)arg1 sortValue:(id)arg2 andSortOrder:(id)arg3; +- (id)_debugSearchStringForMessage:(id)arg1 sortValues:(id)arg2; +- (void)_logSearchDebugInfo:(id)arg1 sortValues:(id)arg2; +@property(nonatomic) BOOL isUsedForSearching; // @synthesize isUsedForSearching=_isUsedForSearching; +@property BOOL filteredListIncludesAllMessages; // @synthesize filteredListIncludesAllMessages=_filteredListIncludesAllMessages; +@property(retain, nonatomic) NSArray *mailboxUidsToSetAfterDelay; // @synthesize mailboxUidsToSetAfterDelay=_mailboxUidsToSetAfterDelay; + +@end + diff --git a/MailHeaders/Lion/Mail/MessagePrinter.h b/MailHeaders/Lion/Mail/MessagePrinter.h new file mode 100644 index 00000000..ec23bf4c --- /dev/null +++ b/MailHeaders/Lion/Mail/MessagePrinter.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MessageViewingState, NSMutableArray, NSMutableSet, NSPrintInfo, NSPrintOperation, NSString, NSWindow, SingleMessageViewer; + +@interface MessagePrinter : NSObject +{ + SingleMessageViewer *_offscreenViewer; + NSWindow *_onscreenWindow; + MessageViewingState *_modelViewingState; + NSMutableArray *_messages; + NSMutableSet *_messageStores; + unsigned long long _messageIndex; + NSString *_originalFilename; + NSPrintInfo *_printInfo; + NSPrintOperation *_printOperation; + unsigned long long _scalingBehavior; +} + ++ (id)sharedPrintInfo; ++ (unsigned long long)_scalingBehaviorFromDefaults; ++ (void)_setScalingBehaviorInDefaults:(unsigned long long)arg1; +- (id)initWithMessages:(id)arg1 forOnscreenWindow:(id)arg2 modelViewingState:(id)arg3; +- (void)dealloc; +- (void)print; +- (void)_messageForPrintingFinishedLoading:(id)arg1; +- (void)_printOperationDidRun:(id)arg1 success:(BOOL)arg2 contextInfo:(void *)arg3; +- (void)_cleanUp; +- (void)_printInfoDidChange:(id)arg1; +- (id)_messageTitleForMessage:(id)arg1; +@property(nonatomic) unsigned long long scalingBehavior; +- (void)_setMessages:(id)arg1; +- (unsigned int)_displayIDForWindow:(id)arg1; +- (struct CGRect)_windowFrameForBehavior:(unsigned long long)arg1 printInfo:(id)arg2; +@property(retain, nonatomic) SingleMessageViewer *offscreenViewer; // @synthesize offscreenViewer=_offscreenViewer; +@property(retain, nonatomic) NSPrintOperation *printOperation; // @synthesize printOperation=_printOperation; +@property(retain, nonatomic) NSPrintInfo *printInfo; // @synthesize printInfo=_printInfo; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageSaver.h b/MailHeaders/Lion/Mail/MessageSaver.h new file mode 100644 index 00000000..3127f13c --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageSaver.h @@ -0,0 +1,46 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSButton, NSPopUpButton, NSSavePanel, NSSet, NSURL, NSWindow; + +@interface MessageSaver : NSObject +{ + NSArray *_messages; + NSSet *_stores; + NSSavePanel *_savePanel; + NSWindow *_window; + NSURL *_saveDestination; + NSPopUpButton *_formatPopup; + NSButton *_includeAttachmentsSwitch; + unsigned int _haveAttachments:1; + unsigned int _hideExtension:1; + unsigned int _includeAttachments:1; + unsigned int _saveFormat:4; + unsigned int _headerDetailLevel:4; +} + ++ (void)initialize; ++ (void)saveMessages:(id)arg1 headerDetailLevel:(long long)arg2 preferredFormat:(int)arg3 window:(id)arg4; +- (void)dealloc; +- (void)saveMessagesWithoutPrompting:(id)arg1 toFilePath:(id)arg2 headerDetailLevel:(long long)arg3 format:(int)arg4; +- (void)_setMessages:(id)arg1; +- (void)_setHeaderDetailLevel:(long long)arg1; +- (void)_setSaveFormat:(int)arg1; +- (void)_setWindow:(id)arg1; +- (void)_savePanelDidEndWithFileHandlingResult:(long long)arg1; +- (void)_runSavePanelForStationery; +- (void)_runSavePanel; +- (void)_updateSavePanelUI; +- (void)_saveMessages; +- (void)_handleSaveError:(id)arg1; +- (void)changeFormat:(id)arg1; +- (void)changeIncludeAttachments:(id)arg1; +- (id)_separator; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageSortContext-Protocol.h b/MailHeaders/Lion/Mail/MessageSortContext-Protocol.h new file mode 100644 index 00000000..f12fb536 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageSortContext-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MessageSortContext +- (long long)compareByNumberMessage:(id)arg1 andMessage:(id)arg2 sortedAscending:(BOOL)arg3; +- (unsigned long long)sizeForMessage:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/MessageTextContainer.h b/MailHeaders/Lion/Mail/MessageTextContainer.h new file mode 100644 index 00000000..fa96b801 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageTextContainer.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextContainer.h" + +@interface MessageTextContainer : NSTextContainer +{ + struct CGRect _senderImageRect; + struct CGRect _messageNumberMailboxNameRect; + struct CGRect _duplicatesLinkRect; + struct CGRect _attachmentsDescriptionRect; + struct CGRect _detailsLinkRect; +} + +- (id)initWithContainerSize:(struct CGSize)arg1; +- (BOOL)isSimpleRectangularTextContainer; +- (struct CGRect)convertRectFromViewToContainerCoordinates:(struct CGRect)arg1; +@property(nonatomic) struct CGRect messageNumberMailboxNameRect; +@property(nonatomic) struct CGRect duplicatesLinkRect; +@property(nonatomic) struct CGRect senderImageRect; +@property(nonatomic) struct CGRect detailsLinkRect; +- (BOOL)containsPoint:(struct CGPoint)arg1; +- (struct CGRect)lineFragmentRectForProposedRect:(struct CGRect)arg1 sweepDirection:(unsigned long long)arg2 movementDirection:(unsigned long long)arg3 remainingRect:(struct CGRect *)arg4; +@property struct CGRect attachmentsDescriptionRect; // @synthesize attachmentsDescriptionRect=_attachmentsDescriptionRect; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageTextView.h b/MailHeaders/Lion/Mail/MessageTextView.h new file mode 100644 index 00000000..781a32ba --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageTextView.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextView.h" + +@interface MessageTextView : NSTextView +{ +} + +- (BOOL)acceptsFirstResponder; +- (BOOL)validateMenuItem:(id)arg1; +- (id)menuForEvent:(id)arg1; +- (void)toggleShowControlCharacters:(id)arg1; +- (void)showPrintPanel:(id)arg1; +- (void)saveAs:(id)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (BOOL)accessibilityIsIgnored; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageTransfer.h b/MailHeaders/Lion/Mail/MessageTransfer.h new file mode 100644 index 00000000..475e38ac --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageTransfer.h @@ -0,0 +1,53 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MessageDeletionTransfer-Protocol.h" + +@class NSMutableArray; + +@interface MessageTransfer : NSObject +{ + id _delegate; + NSMutableArray *_operations; + BOOL _deleteOriginals; + BOOL _registeredForUndo; + BOOL _allowsUndo; + BOOL _isDeleteOperation; + BOOL _isArchiveOperation; + BOOL _undoInProgress; + BOOL _needToUndoTransfer; +} + ++ (void)initialize; ++ (void)_undo:(id)arg1; ++ (void)_redo:(id)arg1; ++ (BOOL)_shouldProceedWithMailboxDeletions:(id)arg1; ++ (void)queueMailboxDeletions:(id)arg1; +- (void)dealloc; +- (id)initWithMessages:(id)arg1 targetMailboxUid:(id)arg2 isDeleteOperation:(BOOL)arg3 isArchiveOperation:(BOOL)arg4; +- (BOOL)canBeginTransfer; +- (void)beginTransfer; +- (void)_completedTransferWithError:(id)arg1; +- (void)_registerForUndoType:(int)arg1; +- (void)_undo; +- (void)_undoSettingFlagsCompletedWithMessages:(id)arg1; +- (void)_undoSettingFlags:(id)arg1 transferringMessages:(id)arg2; +- (void)_redo; +- (void)_postWillBeginDocumentTransferNotification:(id)arg1; +- (void)_postDidEndDocumentTransferNotification:(id)arg1 result:(int)arg2 destinationAccount:(id)arg3 missedMessages:(id)arg4; +- (void)_synchronouslyPerformTransfer; +- (id)destinationMailboxes; +- (id)sourceStores; +- (BOOL)anySourceStoreAllowsDeleteInPlace; +- (id)_undoActionNameForMessageCount:(unsigned long long)arg1; +@property BOOL allowsUndo; // @synthesize allowsUndo=_allowsUndo; +@property BOOL deleteOriginals; // @synthesize deleteOriginals=_deleteOriginals; +@property id delegate; // @synthesize delegate=_delegate; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageTransferDelegate-Protocol.h b/MailHeaders/Lion/Mail/MessageTransferDelegate-Protocol.h new file mode 100644 index 00000000..147082ce --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageTransferDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MessageTransferDelegate +- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; +- (id)undoManagerForMessageTransfer:(id)arg1; +- (void)hideMessagesForMessageTransfer:(id)arg1; +- (void)unhideMessagesForMessageTransfer:(id)arg1; +- (void)messageTransferDidTransferMessages:(id)arg1; +- (void)messageTransferDidUndoTransferOfMessages:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/MessageViewPerfTest.h b/MailHeaders/Lion/Mail/MessageViewPerfTest.h new file mode 100644 index 00000000..b6046175 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageViewPerfTest.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailAutoTest.h" + +@class NSTableView, NSWindow; + +@interface MessageViewPerfTest : MailAutoTest +{ + NSWindow *_viewerWindow; + NSTableView *_messageList; +} + +- (id)init; +- (void)setUp; +- (void)performTest; +- (void)tearDown; +- (void)performOnMessageAtRow:(long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageViewer.h b/MailHeaders/Lion/Mail/MessageViewer.h new file mode 100644 index 00000000..d65de60b --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageViewer.h @@ -0,0 +1,606 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + +#import "FlaggedStatusToolbarItemDelegate-Protocol.h" +#import "MVMailboxSelectionOwner-Protocol.h" +#import "MVTerminationHandler-Protocol.h" +#import "MailTableViewDelegateDelegate-Protocol.h" +#import "MailVerticalSplitViewDelegate-Protocol.h" +#import "MailboxesOutlineViewControllerDelegate-Protocol.h" +#import "MessageTransferDelegate-Protocol.h" +#import "MessageViewerSearchFieldFocusDelegate-Protocol.h" +#import "SearchScopeDelegate-Protocol.h" +#import "MessageMall-Protocol.h" + +@class ActivityViewController, ColorBackgroundView, ExpandingSplitView, FavoritesBarView, FlaggedStatusToolbarItem, FullScreenWindowController, InvocationQueue, MailBarContainerView, MailToolbar, MailVerticalSplitView, MailboxPaneBottomView, MailboxesOutlineViewController, MessageListContainerView, MessageViewerLazyPopUpButton, MessageViewerSearchField, MessageViewingPaneController, NSAnimation, NSArray, NSButton, NSDictionary, NSMenu, NSMenuItem, NSMutableArray, NSMutableDictionary, NSNumber, NSScrollView, NSSet, NSString, NSTextField, NSTimer, NSToolbarItem, NSView, NSWindow, RichMessageListSortView, SafeBoolCache, SplitterAnimation, TableViewManager; + +@interface MessageViewer : NSResponder +{ + id _messageMall; + InvocationQueue *_userTasks; + TableViewManager *_tableManager; + MessageViewingPaneController *_viewingPaneController; + MailboxesOutlineViewController *_outlineViewController; + NSWindow *_window; + ExpandingSplitView *_splitView; + NSScrollView *_messageListScrollView; + MessageListContainerView *_messageListContainerView; + MailVerticalSplitView *_verticalSplitView; + NSView *_viewerContainer; + ColorBackgroundView *_mailboxesView; + ActivityViewController *_activityViewController; + NSToolbarItem *_searchViewItem; + NSString *_searchQuery; + NSString *_searchPhrase; + int _currentSearchField; + int _currentSearchTarget; + long long _selectedTag; + NSMenu *_tableHeaderMenu; + NSMenu *_sortByTableHeaderMenu; + NSMenu *_messageColumnsMenu; + NSMenu *_messageSortByMenu; + NSMenuItem *_columnsMenuItem; + NSMenuItem *_sortByMenuItem; + NSMenuItem *_dateReceivedMenuItem; + NSMenuItem *_dateSentMenuItem; + NSMenuItem *_dateReceivedTableHeaderMenuItem; + NSMenuItem *_dateSentTableHeaderMenuItem; + FlaggedStatusToolbarItem *_flaggedStatusToolbarItem; + NSToolbarItem *_fullScreenFlagMenuToolbarItem; + MessageViewerLazyPopUpButton *_newMailboxButton; + NSButton *_activityToggleButton; + MessageViewerLazyPopUpButton *_actionButton; + MailboxPaneBottomView *_mailboxPaneBottomView; + struct CGSize _messageListUserSize; + double _mailboxesPaneUserWidth; + BOOL _shouldPreventTableViewResize; + BOOL _shouldMakeTableViewSelectionVisible; + BOOL _shouldMakeMessageSelectionVisible; + BOOL _showingDefaultSearchString; + BOOL _updatingSearchField; + BOOL _allowShowingDeletedMessages; + BOOL _suppressWindowTitleUpdates; + BOOL _didSetupUI; + long long _transferringFromViewingPane; + double _restoreMailboxPaneToWidthAfterDragOperation; + double _lastSplitViewPosition; + double _lastMailboxSplitPosition; + NSArray *_mailboxesToDisplayWhenVisible; + NSString *_stringToSearchWhenVisible; + BOOL _shouldCascadeWhenShowing; + BOOL _mailboxPaneIsFinishingAnimation; + MailToolbar *_toolbar; + NSMutableDictionary *_toolbarItems; + MessageViewerSearchField *_searchField; + NSDictionary *_savedDefaults; + NSMutableArray *_noteDocumentEditorsForPlainTextTransfer; + NSArray *_messagesToDeleteAfterPlainTextTransferHasCompleted; + NSSet *_initiallySelectedMessages; + BOOL _pendingPlainTextTransfers; + unsigned long long _numberOfPendingPlainTextTransfers; + unsigned long long _viewerNumber; + NSMutableArray *_transferOperations; + NSDictionary *_plainTextTransferParameters; + double _splitViewPositionBeforeSearch; + SplitterAnimation *_splitViewAnimation; + RichMessageListSortView *_sortView; + SafeBoolCache *_atLeastOneSelectedMessageIsInOutboxCache; + SafeBoolCache *_atLeastOneSelectedMessageIsInDraftsCache; + NSNumber *_uniqueID; + int _persistentID; + BOOL _changingSplitViewOrientation; + BOOL _initializedSearchDelay; + double _performSearchDelay; + MailBarContainerView *_mailBarContainerView; + FavoritesBarView *_favoritesBarView; + NSAnimation *_barContainerViewAnimation; + NSTimer *_timeMachineRestoreSheetTimer; + NSWindow *_timeMachineRestoreSheet; + NSTextField *_timeMachineRestoreMessagesField; + NSTextField *_timeMachineRestoreMailboxField; + BOOL _timeMachineRestoreIsInProgress; + FullScreenWindowController *_fullScreenWindowController; + NSMutableArray *_noteMessageIDsHistories; + NSMutableDictionary *_noteMessagesCachedIDs; + BOOL _allowMessageListOrViewFreezing; +} + ++ (void)initialize; ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; ++ (id)allMessageViewers; ++ (id)allSingleMessageViewers; ++ (id)existingViewerForStore:(id)arg1; ++ (id)existingViewerForMailboxUid:(id)arg1; ++ (id)mailboxUidForFavoritesBarPosition:(unsigned long long)arg1; ++ (id)viewerForMailboxWithTag:(unsigned long long)arg1; ++ (id)existingViewerShowingMessage:(id)arg1; ++ (void)registerNewViewer:(id)arg1; ++ (void)deregisterViewer:(id)arg1; ++ (void)showAllViewers; ++ (id)mailboxUidsBeingViewed; ++ (id)frontmostMessageViewerWithOptions:(unsigned long long)arg1; ++ (void)searchForString:(id)arg1; ++ (unsigned long long)firstAvailableViewerNumber; ++ (id)_mailboxUidsForPaths:(id)arg1; ++ (void)retirePendingTALRestorations:(id)arg1; ++ (void)restoreWindowWithIdentifier:(id)arg1 state:(id)arg2 completionHandler:(id)arg3; ++ (unsigned long long)deleteOperationForEvent:(id)arg1 isKeyPressed:(BOOL)arg2; ++ (void)saveAllViewersToDefaultsWithDelay; ++ (void)_saveAllViewersToDefaultsWithNotification:(id)arg1; ++ (void)saveAllViewersToDefaults; ++ (void)saveAllViewersToDefaultsOmittingViewer:(id)arg1; ++ (BOOL)restoreAllViewersFromDefaults; ++ (void)willRestoreAllViewersFromDefaults; ++ (void)didRestoreAllViewersFromDefaults; ++ (BOOL)isRestoringViewersFromDefaults; ++ (id)_messageViewersByUniqueID; ++ (id)messageViewerForUniqueID:(id)arg1; ++ (id)toolbarIdentifier; +- (unsigned long long)viewerNumber; +- (void)revealMessage:(id)arg1; +- (void)showCurrentMessageInMailbox; +- (void)_displayFollowup:(id)arg1; +- (void)_cantFindFollowupToMessage:(id)arg1; +- (void)showFollowupsToMessage:(id)arg1; +- (id)_mailboxUidsFromDefaults:(id)arg1; +- (void)awakeFromNib; +- (id)initWithSavedDefaults:(id)arg1; +- (void)intializeLazyPopUpButtons; +- (id)init; +- (id)initPlain; +- (id)initWithMailboxUids:(id)arg1; +- (void)dealloc; +- (void)release; +- (void)_registerForApplicationNotifications; +- (void)_unregisterForApplicationNotifications; +- (void)_registerForStoreNotifications; +- (void)_unregisterForStoreNotifications; +- (void)storeBeingInvalidated:(id)arg1; +- (int)currentPersistentID; +- (int)previousPersistentID; +- (void)restoreViewerForTAL; +- (void)window:(id)arg1 willEncodeRestorableState:(id)arg2; +- (id)_store; +- (void)_setStore:(id)arg1; +- (BOOL)_selectedMailboxesAreOutgoing:(char *)arg1; +- (BOOL)_isViewingMailboxUid:(id)arg1; +- (BOOL)_isShowingMessage:(id)arg1; +- (id)window; +- (void)show; +- (void)showAndMakeKey:(BOOL)arg1; +- (struct CGImage *)newMessageViewerSnapshotForceNonFullScreen:(BOOL)arg1; +- (void)_updateWindowMinimumSize; +- (void)_setupUIAndOrderFront:(BOOL)arg1 andMakeKey:(BOOL)arg2; +- (id)tableHeaderViewGetDefaultMenu:(id)arg1; +- (id)messageListSortMenu; +- (void)_setUpWindowContents; +- (void)_setupMailboxOutlineView; +- (void)setupNextKeyViewLoopWithView:(id)arg1; +- (void)_setupNextKeyViewLoop; +- (void)_setUpMenus; +- (void)takeOverAsSelectionOwner; +- (void)resignAsSelectionOwner; +- (void)_updateMailboxPaneBottomViewColor; +- (void)windowDidBecomeMain:(id)arg1; +- (void)windowDidResignMain:(id)arg1; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (BOOL)windowShouldClose:(id)arg1; +- (void)windowWillMiniaturize:(id)arg1; +- (void)openMailboxesPaneToWidth:(double)arg1 byAnimating:(BOOL)arg2; +- (void)_mailboxPaneAnimationDidFinish; +- (double)mailboxesPaneWidth; +- (BOOL)mailboxesPaneIsOpen; +- (void)setMailboxesPaneIsOpen:(BOOL)arg1; +- (BOOL)_mailboxesPaneIsOpenWideEnoughToUse; +- (void)_viewerLayoutPreferenceChanged:(id)arg1; +- (void)_splitViewDidFinishResizingSubviews; +- (void)_updateDividerTypeForSplitView; +- (void)_enableSplitViewAutosaving; +- (void)_disableSplitViewAutosaving; +- (void)splitViewDidResizeSubviews:(id)arg1; +- (void)splitViewWillResizeSubviews:(id)arg1; +- (struct CGRect)splitView:(id)arg1 additionalEffectiveRectOfDividerAtIndex:(long long)arg2; +- (struct CGRect)splitView:(id)arg1 effectiveRect:(struct CGRect)arg2 forDrawnRect:(struct CGRect)arg3 ofDividerAtIndex:(long long)arg4; +- (BOOL)splitView:(id)arg1 shouldCollapseSubview:(id)arg2 forDoubleClickOnDividerAtIndex:(long long)arg3; +- (void)toggleMailboxesPane:(id)arg1; +- (BOOL)splitView:(id)arg1 shouldAdjustSizeOfSubview:(id)arg2; +- (double)_maximumSidebarWidth; +- (double)_maximumSidebarWidthForVerticalSplitViewWidth:(double)arg1; +- (struct CGSize)_minimumMessageViewerContentsSize; +- (struct CGSize)_minimumMessageListSize; +- (BOOL)_isPreviewPaneVisible; +- (struct CGSize)_minimumPreviewPaneSize; +- (void)mailVerticalSplitView:(id)arg1 willSetPosition:(double)arg2 ofDividerAtIndex:(long long)arg3 byAnimating:(BOOL)arg4; +- (BOOL)_shouldUseLayoutContraintsForWindow:(id)arg1; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)_idealMailboxesViewWidth; +- (double)splitView:(id)arg1 constrainMaxCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (void)updateMailboxButtonVisibility; +- (double)splitView:(id)arg1 constrainSplitPosition:(double)arg2 ofSubviewAt:(long long)arg3; +- (void)prepareForTimeMachineRestore; +- (void)_displayTimeMachineRestoreSheet:(id)arg1; +- (void)_beginTimeMachineRestoreSheetIsForMailbox:(id)arg1; +- (void)_timeMachineRestoreFinished:(id)arg1; +- (void)_setAutorecalculatesContentBorderThickness:(BOOL)arg1; +- (id)selectedMailboxes; +- (id)expandedSelectedMailboxes; +- (id)expandedSelectedMailboxUidsAllowingSearch; +- (id)selectedMailbox:(BOOL)arg1; +- (id)selectedMailbox; +- (BOOL)isSelectedMailboxSpecial; +- (void)selectPathsToMailboxes:(id)arg1; +- (BOOL)mailboxIsExpanded:(id)arg1; +- (BOOL)sectionIsExpanded:(id)arg1; +- (id)expandedItems; +- (id)sortedSectionItemsForTimeMachine; +- (void)revealMailbox:(id)arg1; +- (id)mailboxSelectionWindow; +- (void)setSelectedMailboxes:(id)arg1; +- (void)setSelectedMailboxes:(id)arg1 scrollToVisible:(BOOL)arg2; +- (id)selectedMessages; +- (void)setSelectedMessages:(id)arg1; +- (BOOL)outgoingMailboxSelected; +- (void)_firstResponderIsViewingPane:(char *)arg1 isMessageList:(char *)arg2; +- (id)messagesTargetedByAction:(SEL)arg1; +- (id)messageIDsToShowAllCopiesOf; +- (void)showAllCopiesOfMessage:(id)arg1; +- (void)hideAllCopiesOfMessages:(id)arg1; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (id)currentDisplayedMessage; +- (id)messageThatUserIsProbablyReading; +- (void)outlineViewDoubleClick:(id)arg1; +- (void)_animationCompletedForPosition:(unsigned long long)arg1 withWindow:(id)arg2; +- (void)_animateMessageSelectionToFavoriteButtonAtPosition:(long long)arg1 withCount:(unsigned long long)arg2 image:(id)arg3 fromPosition:(struct CGPoint)arg4; +- (void)_moveMessagesToFavoriteWithMailboxUid:(id)arg1 andPosition:(unsigned long long)arg2; +- (void)selectMailbox:(id)arg1; +- (double)previewSplitPercentage; +- (void)keyDown:(id)arg1; +- (void)keyUp:(id)arg1; +- (void)swipeWithEvent:(id)arg1; +- (void)_mailboxWasRenamed:(id)arg1; +- (void)mailboxSelectionChanged:(id)arg1; +- (BOOL)messageViewerIsFinishedLoadingMessages; +- (void)_mallDidOpen; +- (void)_mallStructureDidChange; +- (void)_accountsDidChange:(id)arg1; +- (void)_mailboxesDidChange:(id)arg1; +- (void)_selectNextMessage:(id)arg1; +- (BOOL)isOnlySelectingSmartMailboxesThatShowRelatedMessages; +- (void)smartMailboxCriteriaChanged:(id)arg1; +- (void)_setMailboxUids:(id)arg1; +- (BOOL)_messages:(id)arg1 containMessagesWithReadStatusEqualTo:(BOOL)arg2; +- (long long)_messages:(id)arg1 stateForFlagColor:(BOOL)arg2; +- (BOOL)_messages:(id)arg1 containMessagesWithFlaggedStatusEqualTo:(BOOL)arg2; +- (BOOL)_messages:(id)arg1 containMessagesWithJunkMailLevelEqualTo:(int)arg2; +- (BOOL)_messagesContainMessagesWithAttachments:(id)arg1; +- (BOOL)atLeastOneSelectedMessageIsInOutbox:(id)arg1; +- (BOOL)_updatedAtLeastOneSelectedMessageIsInOutbox:(id)arg1; +- (BOOL)atLeastOneSelectedMessageIsInDrafts:(id)arg1; +- (BOOL)_updatedAtLeastOneSelectedMessageIsInDrafts:(id)arg1; +- (BOOL)shouldDeleteMessagesGivenCurrentState; +- (id)smartMailboxMemberMessagesForMessages:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)messageWasDisplayedInTextView:(id)arg1; +- (void)_messageNoLongerDisplayedInTextView:(id)arg1; +- (void)_messageThreadSummaryWasDisplayedInTextView:(id)arg1; +- (void)checkNewMail:(id)arg1; +- (void)replyMessage:(id)arg1; +- (void)replyAllMessage:(id)arg1; +- (void)replyToSender:(id)arg1; +- (void)replyToOriginalSender:(id)arg1; +- (void)showComposeWindow:(id)arg1; +- (BOOL)_showEditorForNote:(id)arg1; +- (void)showNoteEditor:(id)arg1; +- (void)showAddressPanel:(id)arg1; +- (void)undeleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 allowingMoveToTrash:(BOOL)arg2; +- (void)archiveMessages:(id)arg1; +- (void)openMessages:(id)arg1; +- (void)_openMessages:(id)arg1 withModifiers:(unsigned long long)arg2; +- (void)selectAllMessages; +- (void)focusMessages; +- (void)focusMailboxes; +- (void)focusMessage; +- (void)replyViaIM:(id)arg1; +- (void)showAccountInfo:(id)arg1; +- (id)tableManager; +- (id)mailboxesOutlineViewController; +- (id)viewingPaneController; +- (id)editorWithType:(int)arg1 forSelectedMessages:(id)arg2; +- (void)redirectMessage:(id)arg1; +- (void)forwardMessage:(id)arg1; +- (void)forwardAsAttachment:(id)arg1; +- (void)forwardWithParentAsAttachment:(id)arg1; +- (void)showToDoReferencedMessageInNewWindow:(id)arg1; +- (id)displaySelectedMessageInSeparateWindow:(id)arg1; +- (id)_documentsToDisplaySelectedMessagesInSeperateWindowWithModifiers:(unsigned long long)arg1; +- (id)_displaySelectedMessageInSeparateWindow:(id)arg1 withModifiers:(unsigned long long)arg2; +- (void)_openMessageInWebBrowser:(id)arg1; +- (void)renameMailbox:(id)arg1; +- (void)_moveOrCopyMessagesToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (void)moveMessagesToMailbox:(id)arg1; +- (void)copyMessagesToMailbox:(id)arg1; +- (id)_selectedMessagesWhoseFlag:(unsigned int)arg1 isEqualToState:(BOOL)arg2 action:(SEL)arg3; +- (void)_changeFlag:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3 undoActionName:(id)arg4; +- (id)appliedFlagColorsForSelectedMessages; +- (void)toggleFlaggedStatusInFullScreen:(id)arg1; +- (void)toggleFlaggedStatus:(BOOL)arg1; +- (void)toggleFlaggedStatus:(BOOL)arg1 forMessageListSelection:(BOOL)arg2; +- (id)_messagesWithoutFlagColor:(BOOL)arg1 fromMessages:(id)arg2; +- (void)_setFlaggedStatus:(id)arg1 withUndoActionName:(id)arg2; +- (id)_flaggedStatusForMessages:(id)arg1; +- (void)clearFlaggedStatus; +- (void)clearFlaggedStatusForMessageListSelection:(BOOL)arg1; +- (void)modifyFlaggedStatus:(id)arg1; +- (void)markMessageAsViewed:(id)arg1; +- (void)markMessagesAsViewed:(id)arg1; +- (void)scrollToMessageAbove:(id)arg1; +- (void)scrollToMessageBelow:(id)arg1; +- (void)markAsRead:(id)arg1; +- (void)markAsUnread:(id)arg1; +- (void)markAsReadFromToolbar:(id)arg1; +- (void)markAsUnreadFromToolbar:(id)arg1; +- (void)toggleFlag:(id)arg1; +- (void)clearFlaggedStatus:(id)arg1; +- (void)changeColor:(id)arg1; +- (void)rebuildTableOfContents:(id)arg1; +- (void)_putMessageDataOntoPasteboard:(id)arg1 attributedString:(id)arg2 shouldDelete:(id)arg3 pasteboardType:(id)arg4; +- (void)_copyMessagesToPasteboard:(id)arg1 deleteWhenCopied:(BOOL)arg2 pasteboardType:(id)arg3 alternateType:(id)arg4; +- (void)_progressAlertDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_showActivityProgressPanelForCopy:(id)arg1; +- (BOOL)_doCopy:(id)arg1 deleteWhenCopied:(BOOL)arg2; +- (void)copy:(id)arg1; +- (void)cut:(id)arg1; +- (int)_pasteMessages:(id)arg1 unsuccessfulMessages:(id)arg2 flagsToSet:(id)arg3 destinationAccount:(id)arg4 destinationStore:(id)arg5; +- (void)_pasteData:(id)arg1 pasteboardType:(id)arg2 alternateData:(id)arg3 alternateType:(id)arg4 destination:(id)arg5; +- (void)paste:(id)arg1; +- (void)startSpeaking:(id)arg1; +- (void)stopSpeaking:(id)arg1; +- (void)speechSynthesizer:(id)arg1 didFinishSpeaking:(BOOL)arg2; +- (void)showPrintPanel:(id)arg1; +- (BOOL)send:(id)arg1 forDraft:(BOOL)arg2 actualMessage:(id)arg3; +- (BOOL)sendMessages:(id)arg1 forDraft:(BOOL)arg2; +- (BOOL)send:(id)arg1; +- (void)_batchSendSheetDidEnd:(id)arg1 returnCode:(long long)arg2 context:(void *)arg3; +- (void)saveAs:(id)arg1; +- (void)saveAllAttachments:(id)arg1; +- (void)quickLookSelectedAttachments:(id)arg1; +- (id)_contentControllerForAction:(SEL)arg1; +- (void)forwardAction:(SEL)arg1 ToContentControllerFromSender:(id)arg2; +- (void)makeFontBigger:(id)arg1; +- (void)makeFontSmaller:(id)arg1; +- (void)viewSource:(id)arg1; +- (void)showAllHeaders:(id)arg1; +- (void)showFilteredHeaders:(id)arg1; +- (void)showFirstAlternative:(id)arg1; +- (void)showPreviousAlternative:(id)arg1; +- (void)showNextAlternative:(id)arg1; +- (void)showBestAlternative:(id)arg1; +- (void)changeTextEncoding:(id)arg1; +- (void)takeFindStringFromSelection:(id)arg1; +- (id)findTarget; +- (void)jumpToSelection:(id)arg1; +- (BOOL)acceptsPreviewPanelControl:(id)arg1; +- (void)beginPreviewPanelControl:(id)arg1; +- (void)endPreviewPanelControl:(id)arg1; +- (id)_criterionForMailbox:(id)arg1; +- (id)mailboxSearchCriterionForScope:(int)arg1 containsSentMailbox:(char *)arg2 containsTrashMailbox:(char *)arg3 shouldExcludeJunk:(char *)arg4; +- (void)searchIndex:(id)arg1; +- (BOOL)_isShowingSearchResults; +- (unsigned long long)_searchResultCount; +- (BOOL)_canSaveSearchWithTarget:(int)arg1; +- (BOOL)_canSearchSelectedMailboxes; +- (void)_showSearchResultsInSearchView; +- (void)_hideSearchResultsInSearchView; +- (void)_searchForString:(id)arg1; +- (void)_searchForSuggestions:(id)arg1; +@property(copy, nonatomic) NSString *searchPhrase; +- (void)_updateSearchStatus; +- (void)_clearSearchByAnimating:(BOOL)arg1; +- (void)clearSearch:(id)arg1; +- (void)_setupSearchParametersForTag:(long long)arg1; +- (int)_searchField; +- (int)searchTarget; +- (BOOL)_anySearchMailboxesAreCached; +- (void)_updateContentSearchEnabledState; +- (void)_updateContentSearchEnabledStateFromSpotlight; +- (void)_setContentSearchEnabled:(BOOL)arg1 disabledExplanation:(id)arg2; +- (void)_handleAttachmentsRemovedFromMessages:(id)arg1 newMessages:(id)arg2; +- (void)_removeAttachmentsFromMessages:(id)arg1 fromStores:(id)arg2; +- (void)removeAttachments:(id)arg1; +- (void)sortByTagOfSender:(id)arg1; +- (void)toggleAscendingSort:(id)arg1; +- (void)focus:(id)arg1; +- (void)unfocus:(id)arg1; +- (void)openAllThreads:(id)arg1; +- (void)closeAllThreads:(id)arg1; +- (void)toggleThreadedMode:(id)arg1; +- (void)toggleViewRelatedMessages:(id)arg1; +- (BOOL)shouldShowThreadControlForMessage:(id)arg1 isSelectedRow:(BOOL)arg2; +- (void)updateViewingPaneBackgroundColor; +- (void)selectThread:(id)arg1; +- (void)selectPreviousInThread:(id)arg1; +- (void)selectNextInThread:(id)arg1; +- (void)showDeletions:(id)arg1; +- (void)hideDeletions:(id)arg1; +- (void)toggleContentsColumn:(id)arg1; +- (void)toggleMessageNumbersColumn:(id)arg1; +- (void)toggleMessageFlagsColumn:(id)arg1; +- (void)toggleFromColumn:(id)arg1; +- (void)togglePresenceColumn:(id)arg1; +- (void)toggleToColumn:(id)arg1; +- (void)toggleDateSentColumn:(id)arg1; +- (void)toggleDateReceivedColumn:(id)arg1; +- (void)toggleLocationColumn:(id)arg1; +- (void)toggleAuthorColumn:(id)arg1; +- (void)toggleSizeColumn:(id)arg1; +- (void)writeDefaultsToArray:(id)arg1; +- (id)dictionaryRepresentation; +- (void)_findSomeDefaultsIfNecessary; +- (void)_setupFromDefaults; +- (id)_viewerDefaultsKeyFormats; +- (void)_teardownDefaults; +- (void)_copyDefaultsFromViewerNumber:(unsigned long long)arg1 toViewerNumber:(unsigned long long)arg2; +- (id)_countStringForType:(BOOL)arg1 isDrafts:(BOOL)arg2 omitUnread:(BOOL)arg3 totalCount:(unsigned long long *)arg4; +- (void)_messageUpdated:(id)arg1; +- (void)documentsTransferred:(id)arg1; +- (void)_updateWindowTitle; +- (void)_reallyUpdateWindowTitle; +- (id)_columnOrDetailMenuItemTitle; +- (void)_updateMallUids:(id)arg1; +- (void)_setSplitViewPercentage:(double)arg1 animate:(BOOL)arg2; +- (void)messagesWereSelected:(id)arg1 fromTableViewManager:(id)arg2; +- (void)selectedMessagesDidChangeInMessageList; +- (void)actionMessageDidChangeInConversationView; +- (id)actionMessageForConversationView; +- (void)messageWasDoubleClicked:(id)arg1; +- (void)messageDragWillStartWithEvent:(id)arg1; +- (void)messageDragMovedTo:(struct CGPoint)arg1; +- (void)messageDragDidEnd; +- (BOOL)transferSelectedMessagesToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (void)beginTransferFromViewingPane; +- (void)endTransferFromViewingPane; +- (void)_transferSelectedMessagesToExchangeMailboxAlertDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (void)_noteDocumentEditorHasInitialized:(id)arg1; +- (void)_transferPlainTextCopiesOfMessagesWithParameters:(id)arg1; +- (id)_alertForConvertingToPlainTextNote; +- (BOOL)deleteMessages:(id)arg1 allowMoveToTrash:(BOOL)arg2 allowUndo:(BOOL)arg3; +- (BOOL)archiveMessages:(id)arg1 allowUndo:(BOOL)arg2; +- (void)filterMessagesToMoveOrDelete:(id)arg1; +@property(copy, nonatomic) NSSet *initiallySelectedMessages; // @synthesize initiallySelectedMessages=_initiallySelectedMessages; +- (void)_reallyAnimateProgressInidicator; +- (void)_updateSearchStatusWithDelay; +- (void)threadDidExpand; +- (void)threadDidCollapse; +- (void)clearUndoRedoStacksUnconditionally:(BOOL)arg1; +- (void)searchWillStart; +- (void)searchDidFinish; +- (void)searchDidUpdate; +- (id)selectedMailboxUids; +- (void)_updateSearchUIForSender:(id)arg1; +- (void)_performCoalescedSearch; +- (void)performSearch:(id)arg1; +- (void)saveSearch:(id)arg1; +- (void)reapplySortingRules:(id)arg1; +- (void)_returnToSenderSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_deleteMessagesAfterBounce:(id)arg1; +- (void)_bounceMessages:(id)arg1; +- (void)returnToSender:(id)arg1; +- (void)addSenderToAddressBook:(id)arg1; +- (void)markAsJunkMail:(id)arg1; +- (void)_markMessagesAsJunkMail:(id)arg1 stores:(id)arg2; +- (void)_deleteJunkedMessages:(id)arg1 inStores:(id)arg2 moveToTrash:(BOOL)arg3; +- (void)_synchronouslyMarkAsJunkMail:(id)arg1 inStores:(id)arg2 delete:(BOOL)arg3; +- (void)_undoMarkMessagesAsJunkMail:(id)arg1 stores:(id)arg2; +- (void)markAsNotJunkMail:(id)arg1; +- (void)_markMessagesAsNotJunkMail:(id)arg1 stores:(id)arg2; +- (void)_synchronouslyMarkAsNotJunkMail:(id)arg1 inStores:(id)arg2; +- (BOOL)transferMessages:(id)arg1 toMailbox:(id)arg2 deleteOriginals:(BOOL)arg3 allowUndo:(BOOL)arg4 isDeleteOperation:(BOOL)arg5 isArchiveOperation:(BOOL)arg6; +- (void)_reportError:(id)arg1; +- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; +- (void)hideMessagesForMessageTransfer:(id)arg1; +- (void)unhideMessagesForMessageTransfer:(id)arg1; +- (void)messageTransferDidTransferMessages:(id)arg1; +- (void)messageTransferDidUndoTransferOfMessages:(id)arg1; +- (id)undoManagerForMessageTransfer:(id)arg1; +- (void)_updateSearchItemLabel; +- (void)_createUniqueID; +- (void)setWithoutAnimationBarContainerVisibility:(BOOL)arg1 forFullScreen:(BOOL)arg2; +- (void)toggleShowBarContainer:(id)arg1; +- (struct CGRect)window:(id)arg1 willPositionSheet:(id)arg2 usingRect:(struct CGRect)arg3; +- (void)animation:(id)arg1 didReachProgressMark:(float)arg2; +- (BOOL)animationShouldStart:(id)arg1; +- (void)_animationDidEndOrStop:(id)arg1; +- (void)animationDidEnd:(id)arg1; +- (void)animationDidStop:(id)arg1; +- (BOOL)isFullScreen; +- (void)presentModalWindowWithDelegate:(id)arg1; +- (void)closeModalWindowForcibly:(BOOL)arg1 animate:(BOOL)arg2; +- (void)closeModalWindowForcibly:(BOOL)arg1 animate:(BOOL)arg2 animationType:(long long)arg3; +- (void)willAttachModalWindowWithDelegate:(id)arg1; +- (void)attachModalWindowWithDelegate:(id)arg1; +@property(readonly) FullScreenWindowController *fullScreenWindowController; // @synthesize fullScreenWindowController=_fullScreenWindowController; +- (void)initFullScreenController; +- (void)_windowWillEnterFullScreen:(id)arg1; +- (void)_windowWillExitFullScreen:(id)arg1; +- (void)_windowDidExitFullScreen:(id)arg1; +- (BOOL)hasModalWindow; +- (BOOL)isModal; +- (BOOL)usesCustomFullScreenAnimation; +- (id)customWindowsToExitFullScreenForWindow:(id)arg1; +- (void)window:(id)arg1 startCustomAnimationToExitFullScreenWithDuration:(double)arg2; +- (id)_IDForNoteMessage:(id)arg1; +- (void)startRecordingHistoryOfNoteMessage:(id)arg1; +- (void)stopRecordingHistoryOfNoteMessage:(id)arg1; +- (BOOL)isNoteMessage:(id)arg1 aNewVersionOfNoteMessage:(id)arg2; +- (BOOL)isNoteMessageMarkedForOverwrite:(id)arg1; +- (void)_noteMessageWillBeUpdated:(id)arg1; +- (void)_alwaysShowDuplicatesDidChange:(id)arg1; +- (void)freezeMessageListAndView; +- (void)unfreezeMessageListAndView; +- (void)unfreezeMessageList; +- (void)unfreezeMessageView; +- (void)freezeAndDimMessageView; +- (void)unfreezeAndUndimMessageView; +@property(readonly) MailVerticalSplitView *verticalSplitView; // @synthesize verticalSplitView=_verticalSplitView; +@property(readonly) ExpandingSplitView *splitView; // @synthesize splitView=_splitView; +@property(readonly) FavoritesBarView *favoritesBarView; // @synthesize favoritesBarView=_favoritesBarView; +@property(readonly) MailBarContainerView *mailBarContainerView; // @synthesize mailBarContainerView=_mailBarContainerView; +- (id)uniqueID; +- (id)objectSpecifier; +- (id)allMessages; +- (id)focusedMessages; +- (void)setFocusedMessages:(id)arg1; +- (unsigned int)appleScriptSortColumn; +- (void)setAppleScriptSortColumn:(unsigned int)arg1; +- (BOOL)isSortedAscending; +- (void)setIsSortedAscending:(BOOL)arg1; +- (BOOL)previewPaneVisible; +- (void)setPreviewPaneVisible:(BOOL)arg1; +- (id)visibleColumns; +- (void)setVisibleColumns:(id)arg1; +- (id)inbox; +- (id)outbox; +- (id)draftsMailbox; +- (id)sentMailbox; +- (id)trashMailbox; +- (id)junkMailbox; +- (void)setScriptingProperties:(id)arg1; +- (void)setupToolbar; +- (void)clearToolbarItemsTarget; +- (id)toolbarConfigurationDict; +- (BOOL)validateToolbarItem:(id)arg1; +- (BOOL)validateFlaggedStatusToolbarItem:(id)arg1; +- (void)configureSegmentedItem:(id)arg1 withDictionary:(id)arg2 forSegment:(long long)arg3; +- (void)_asyncUpdateSuggestionsFlagNames:(id)arg1; +- (void)_updateSuggestionsFlagNames; +- (void)_asyncUpdateSuggestionsMailboxesListAndFlagNames:(id)arg1; +- (void)_updateSuggestionsMailboxesListAndFlagNames; +- (void)setupSuggestionsSearchField; +- (void)setupSuggestionsSearchFieldForSentMailboxIfNecessary; +- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; +- (id)toolbarDefaultItemIdentifiers:(id)arg1; +- (id)toolbarAllowedItemIdentifiers:(id)arg1; +- (void)updateToolbar; +- (void)toolbarWillAddItem:(id)arg1; +- (void)toolbarDidRemoveItem:(id)arg1; +- (void)toolbarDidReorderItem:(id)arg1; +- (void)_ensureItemVisibilityInToolbar:(long long)arg1 identifier:(id)arg2; +- (void)ensureSearchFieldVisibilityInToolbar; +- (void)searchFieldDidEndSearching:(id)arg1; +- (void)finishedSettingFlaggedStatus; +- (void)_synchronizeFullScreenFlagToolbarItem:(id)arg1; +- (void)submenuAction:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageViewerLazyPopUpButton.h b/MailHeaders/Lion/Mail/MessageViewerLazyPopUpButton.h new file mode 100644 index 00000000..dd0bb4b2 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageViewerLazyPopUpButton.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@interface MessageViewerLazyPopUpButton : NSPopUpButton +{ + BOOL _didLazyLoadMenu; + long long _menuToUse; +} + +- (void)awakeFromNib; +- (void)dealloc; +- (void)setMenu:(id)arg1; +- (void)initializeMenu; +@property long long menuToUse; // @synthesize menuToUse=_menuToUse; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageViewerSearchField.h b/MailHeaders/Lion/Mail/MessageViewerSearchField.h new file mode 100644 index 00000000..3e770829 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageViewerSearchField.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "SGTSearchField.h" + +@interface MessageViewerSearchField : SGTSearchField +{ + id _focusDelegate; + BOOL _focused; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (void)_firstResponderDidChange:(id)arg1; +- (void)windowDidResignKey:(id)arg1; +@property(getter=isFocused) BOOL focused; +@property id focusDelegate; // @synthesize focusDelegate=_focusDelegate; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageViewerSearchFieldFocusDelegate-Protocol.h b/MailHeaders/Lion/Mail/MessageViewerSearchFieldFocusDelegate-Protocol.h new file mode 100644 index 00000000..7faedadd --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageViewerSearchFieldFocusDelegate-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MessageViewerSearchFieldFocusDelegate +- (void)searchFieldDidEndSearching:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/MessageViewingPane.h b/MailHeaders/Lion/Mail/MessageViewingPane.h new file mode 100644 index 00000000..641ea7f2 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageViewingPane.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ColorBackgroundView.h" + +#import "BannerContainer-Protocol.h" + +@class MessageViewingPaneController, MultiSelectionPlaceholderView, NSTableView, NSView; + +@interface MessageViewingPane : ColorBackgroundView +{ + MessageViewingPaneController *_controller; + NSTableView *_collectionView; + MultiSelectionPlaceholderView *_selectionPlaceholderView; + NSView *_bannerView; + unsigned long long _innerShadow; + BOOL _isDoingLayout; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (BOOL)isOpaque; +- (BOOL)isFlipped; +@property(nonatomic) unsigned long long innerShadow; +- (void)drawRect:(struct CGRect)arg1; +- (void)resizeSubviewsWithOldSize:(struct CGSize)arg1; +- (void)showBanner:(id)arg1; +- (id)bannerView; +- (void)removeBanner; +- (void)layoutSubviews; +- (void)updateSelectionDisplayWithMessages:(id)arg1; +- (BOOL)isDisplayingSelectionPlaceholderView; +@property(nonatomic) MessageViewingPaneController *controller; // @synthesize controller=_controller; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageViewingPaneController.h b/MailHeaders/Lion/Mail/MessageViewingPaneController.h new file mode 100644 index 00000000..e8859405 --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageViewingPaneController.h @@ -0,0 +1,231 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + +#import "NSTableViewDataSource-Protocol.h" +#import "NSTableViewDelegate-Protocol.h" + +@class CALayer, Message, MessageContentController, MessageViewer, MessageViewingPane, MessageViewingState, MessagesTableView, NSArray, NSDictionary, NSMapTable, NSMutableArray, NSMutableDictionary, NSMutableSet, NSMutableString, NSOperation, NSView, PaddingView, UnfoldAnimationController; + +@interface MessageViewingPaneController : NSResponder +{ + MessageViewingPane *_messageViewingPane; + MessagesTableView *_messageCollectionTableView; + MessageViewer *_messageViewer; + PaddingView *_tableViewPaddingView; + NSView *_snapshotView; + UnfoldAnimationController *_animationController; + NSMutableArray *_displayedContentControllers; + NSArray *_displayedContentControllersDuringUserInteraction; + NSArray *_delayedContentControllersToRemove; + NSMapTable *_contentControllersByMessage; + NSMapTable *_messageNumbersByMessageId; + NSMapTable *_messageIdsByMessageNumber; + NSMutableDictionary *_messagesForContentControllers; + NSMutableDictionary *_relatedMessageTypesByMessage; + NSMutableString *_conversationLoadLoggingString; + double _conversationLoadStartTime; + Message *_initialMessage; + Message *_selectedChildOfInitialMessage; + NSMutableSet *_allMessagesInConversation; + BOOL _shouldShowMessagesRelatedToInitialMessage; + NSMutableSet *_smartMailboxPrimaryMessages; + BOOL _viewingRelatedMessagesDefaultCache; + BOOL _viewingRelatedMessages; + BOOL _viewingRelatedMessagesIsSet; + NSOperation *_currentLoadOperation; + NSMutableSet *_messagesThatShouldNoteHeightChanges; + NSMutableSet *_messagesThatShouldStayUnread; + NSMutableSet *_messageIdsWithAllCopiesDisplayed; + NSDictionary *_messagesByMessageId; + NSMutableSet *_unreadMessagesWithVisibleHeaders; + NSMutableArray *_messagesToAutomaticallyMarkAsViewed; + NSMutableSet *_messagesAutomaticallyMarkedAsViewed; + MessageContentController *_previousSelectedContentController; + MessageContentController *_lastSearchedContentController; + MessageContentController *_lastContentControllerLoaded; + MessageViewingState *_printViewingState; + MessageContentController *_messageContentControllerWaitingToAnimateExpansionOfRedundantText; + double _messageContentControllerHeightBeforeRedundantTextExpansion; + long long _messageNumberOffset; + long long _numberOfMessagesPerformingInitialWebViewLoad; + BOOL _hasScrolledToInitialMessage; + BOOL _isDoingLayout; + BOOL _isSelectingMessages; + BOOL _isForPrinting; + BOOL _didAwake; + BOOL _showingSummaryView; + BOOL _shouldDisplayShowInMailboxLink; + BOOL _displayingSingleMessage; + BOOL _shouldMarkAllMessagesAsRead; + BOOL _conversationIsScrolling; + BOOL _allMessagesHaveBeenLoaded; + BOOL _snapShotRemovalHasBeenRequested; + BOOL _userIsDeletingMessages; + BOOL _doNotPropagateSelectionChange; + BOOL _hasViewingPaneControllerDisplayedMessages; + BOOL _firstMessageHasDisplayed; + BOOL _expandingExistingConversationFromSinglePrimaryMessage; + int _nextControllerDirection; + double _updatePaneStartTime; + unsigned long long _singletonTransitionState; + Message *_singletonTransitionMessage; + NSView *_singletonTransitionView; + CALayer *_singletonTransitionContentContainerLayer; + CALayer *_singletonTransitionPartLayers[6]; + struct CGRect _singletonTransitionPartDestinationFrames[6]; + NSView *_voiceOverJumpDestinationView; +} + ++ (void)_getConversationID:(long long *)arg1 loadOptions:(unsigned int *)arg2 forMessage:(id)arg3; +- (id)init; +- (void)dealloc; +- (void)awakeFromNib; +- (id)_messageAndDuplicatesOf:(id)arg1; +- (id)_commonRunLoopModesForAutomaticMarkAsViewed; +- (void)_automaticallyMarkMessagesAsViewedNow; +- (void)_automaticallyMarkMessageAsViewed:(id)arg1; +- (void)_setVisibleMessagesToUpdateAfterDelay:(id)arg1; +- (BOOL)_shouldAutomaticallyUpdateVisibleMessages; +- (void)_updateVisibleMessagesAfterDelay; +- (void)_markMessageAndDuplicatesAsViewed:(id)arg1; +- (void)_numberOfDisplayedContentControllersChanged; +- (void)_substituteInitialMessage:(id)arg1; +- (void)updateDisplayForInitialMessage:(id)arg1 selectedChild:(id)arg2 relatedMessages:(id)arg3 showRelatedMessages:(BOOL)arg4; +- (void)updateSelectionDisplayWithMessages:(id)arg1; +- (void)clearDisplay; +- (id)nextControllerToSelectFrom:(id)arg1 currentIndex:(unsigned long long)arg2; +- (void)_removeMemberMessagesFromThread:(id)arg1; +@property(readonly) BOOL viewingRelatedMessages; +- (void)toggleViewRelatedMessages; +- (void)_viewSpansMailboxesDefaultChanged; +- (void)addMessagesToSmartMailboxPrimaries:(id)arg1; +- (void)userDeletesMessages; +- (BOOL)hasFocus; +- (void)animationWillStart; +- (void)animationDidFinish; +- (BOOL)_isSelectingSmartMailbox; +- (BOOL)_shouldDisplayMessage:(id)arg1; +- (void)_reload; +- (void)_invalidateMessageNumbers; +- (void)_setMessageNumber:(long long)arg1 forContentController:(id)arg2 withMessageID:(id)arg3; +- (void)_calculateMessageNumbersForceRecalculate:(BOOL)arg1; +- (long long)_relatedMessageTypeForMessage:(id)arg1; +- (void)_willChangeMemberMessagesTo:(id)arg1; +- (void)_didChangeMemberMessages; +- (void)_setMemberMessages:(id)arg1 previousInitialMessage:(id)arg2; +- (void)_resetMemberMessagesTo:(id)arg1 previousInitialMessage:(id)arg2; +- (void)_changeMemberMessagesTo:(id)arg1 previousInitialMessage:(id)arg2; +- (void)_setSmartMailboxSecondaryStatus; +- (void)_scrollToMessageWithController:(id)arg1 animates:(BOOL)arg2; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_removeSnapshotView; +- (BOOL)isDisplayingSingleton; +- (void)_singletonTransitionPrepareFromAnimation; +- (void)_singletonTransitionPrepareToAnimation; +- (BOOL)_singletonTransitionCanStartAnimation; +- (void)_singletonTransitionTryPerformingAnimation; +- (void)_singletonTransitionStartAnimation; +- (void)_singletonTransitionStartFromAnimation; +- (void)_singletonTransitionStartToAnimation; +- (id)_singletonTransitionPartsInfoWithRowFrame:(struct CGRect)arg1 contentFrame:(struct CGRect)arg2 messageViewingPaneBounds:(struct CGRect)arg3; +- (void)_singletonTransitionAnimationDidEnd; +- (void)_tryPerformingRedundantTextExpansionAnimation; +- (void)_performRedundantTextExpansionAnimation; +- (void)_cancelRedundantTextExpansionAnimation; +- (void)prepareMessageContentController:(id)arg1 forRedundantTextExpansionAnimationWithTopYPosition:(double)arg2 bottomYPosition:(double)arg3 foldYPosition:(double)arg4 foldIsAtBottom:(BOOL)arg5; +- (void)snapshotPreviewPaneWithOption:(unsigned long long)arg1; +- (void)_groupMessagesByMessageId:(id)arg1; +- (void)updateBackgroundColor; +- (void)_updateSplitViewDividerColor; +- (BOOL)shouldManageQuotedContent; +- (id)initialMessage; +- (id)actionMessage; +- (id)selectedChildOfInitialMessage; +- (id)contentControllerForActionMessage; +- (id)contentControllerForTableRow:(unsigned long long)arg1; +- (id)contentControllerForMessage:(id)arg1; +- (unsigned long long)tableRowForContentController:(id)arg1; +- (void)_setActionController:(id)arg1; +- (id)_visibleContentControllersWithVisibleHeaders:(BOOL)arg1; +- (id)actionMessageAndHiddenCopies; +- (id)messageThatUserIsProbablyReading; +- (long long)rowOfFirstVisibleMessage; +- (long long)rowOfLastVisibleMessage; +- (void)_removeMinimumHeightForController:(id)arg1; +- (void)_setMinimumHeightForSingletonMessage; +- (void)highlightSearchText:(id)arg1; +- (void)showAllCopiesOfMessage:(id)arg1; +- (void)_delayedTestForScrollingFinished; +- (void)_scrollingFinished; +- (void)conversationDidScroll:(id)arg1; +- (void)_updateVisibleContentControllers; +- (void)_adjustPaddingViewForBottomMessageUsingPreferredHeight:(BOOL)arg1; +- (void)_viewingPaneFrameDidChange:(id)arg1; +- (void)userDidChangeUnreadStatusOfMessages:(id)arg1; +- (void)_libraryMessagesFlagsChanged:(id)arg1; +- (void)_libraryMessagesCompacted:(id)arg1; +- (void)_libraryMessagesUpdated:(id)arg1; +- (void)_conversationMessagesLoaded:(id)arg1 forConversationID:(long long)arg2 previousMessage:(id)arg3; +- (void)setShouldDisplayShowInMailboxLink:(BOOL)arg1; +- (BOOL)shouldShowRelatedMessages; +- (void)selectedMailboxesDidChange:(id)arg1; +- (void)_updateMessagesForNewlySelectedMailboxes; +- (BOOL)pageDown; +- (BOOL)pageUp; +- (BOOL)pageDownStoppingAtNextMessage; +- (BOOL)pageUpStoppingAtPreviousMessage; +- (BOOL)scrollDown; +- (BOOL)scrollUp; +- (BOOL)scrollToMessageBelowSelectedMessage; +- (BOOL)scrollToMessageAboveSelectedMessage; +- (BOOL)scrollToMessageAbove; +- (BOOL)scrollToMessageBelow; +- (void)scrollToBeginningOfDocument:(id)arg1; +- (void)scrollToEndOfDocument:(id)arg1; +- (id)responderView; +- (void)closeEditors; +- (void)stopAllActivity; +- (void)readDefaultsFromDictionary:(id)arg1; +- (void)writeDefaultsToDictionary:(id)arg1; +- (void)_scrollMessageListToSelection; +- (void)_showMoreMessagesLinkWasClicked; +- (void)_loadVisibleMessages; +- (void)_loadMessageForContentController:(id)arg1 delayBody:(BOOL)arg2; +- (BOOL)_loadNextMessageAboveController:(id)arg1; +- (BOOL)_loadNextMessageBelowController:(id)arg1; +- (void)_beginLoadingNextMessage; +- (void)_enqueueLoadNextMessageNotification; +- (void)finishedLoadingMessageContentForController:(id)arg1; +- (id)findTarget; +- (BOOL)findString:(id)arg1 options:(unsigned long long)arg2 wrap:(BOOL)arg3; +- (void)_resetConversationLoadLogging; +- (void)addLoggingDataWithTitle:(id)arg1 startTime:(double)arg2 endTime:(double)arg3 message:(id)arg4; +- (id)tableView:(id)arg1 rowViewForRow:(long long)arg2; +- (id)tableView:(id)arg1 viewForTableColumn:(id)arg2 row:(long long)arg3; +- (double)tableView:(id)arg1 heightOfRow:(long long)arg2; +- (void)_cellViewWantsSelection:(id)arg1; +- (void)_cellViewDidChangeActiveSelection:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)_noteHeightOfRowsWithIndexesChanged:(id)arg1; +- (void)messagesTableViewDidUpdate:(id)arg1; +- (double)topPeekHeightForMessagesTableView:(id)arg1; +- (void)_resizeRowForContentController:(id)arg1; +- (void)_cellViewSizeDidChange:(id)arg1; +- (void)tableView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +@property(retain) NSView *voiceOverJumpDestinationView; // @synthesize voiceOverJumpDestinationView=_voiceOverJumpDestinationView; +@property(copy, nonatomic) NSArray *delayedContentControllersToRemove; // @synthesize delayedContentControllersToRemove=_delayedContentControllersToRemove; +@property(retain, nonatomic) NSOperation *currentLoadOperation; // @synthesize currentLoadOperation=_currentLoadOperation; +@property(retain) MessageViewingState *printViewingState; // @synthesize printViewingState=_printViewingState; +@property BOOL isForPrinting; // @synthesize isForPrinting=_isForPrinting; +@property MessageViewer *messageViewer; // @synthesize messageViewer=_messageViewer; +@property(readonly, retain) MessagesTableView *messageCollectionTableView; // @synthesize messageCollectionTableView=_messageCollectionTableView; +@property(readonly, retain) MessageViewingPane *messageViewingPane; // @synthesize messageViewingPane=_messageViewingPane; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageViewingState.h b/MailHeaders/Lion/Mail/MessageViewingState.h new file mode 100644 index 00000000..3862a28c --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageViewingState.h @@ -0,0 +1,112 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MessageContentDisplay-Protocol.h" + +@class ActivityMonitor, MFError, Message, MimeBody, NSArray, NSAttributedString, NSDictionary, NSIndexSet, NSSet, NSString; + +@interface MessageViewingState : NSObject +{ + NSAttributedString *_simpleHeadersString; + NSAttributedString *_expandedHeadersString; + NSAttributedString *_headerSecurityString; + NSDictionary *_addressAttachments; + NSDictionary *_plainAddresses; + NSSet *_expandedAddressKeys; + NSAttributedString *_attachmentsDescription; + NSArray *_attachments; + Message *_message; + NSString *_finalizedMessageHtml; + ActivityMonitor *_monitor; + MimeBody *_mimeBody; + id _document; + MFError *_error; + long long _headerIndent; + long long _headerFontAdjustmentDebt; + long long _headerFontAdjustment; + long long _preferredAlternative; + BOOL _accountWasOffline; + BOOL _dontCache; + BOOL _showAllHeaders; + BOOL _showDefaultHeaders; + BOOL _isForPrinting; + BOOL _downloadRemoteURLs; + BOOL _triedToDownloadRemoteURLs; + BOOL _messageIsFromMicrosoft; + BOOL _messageIsOldestInConversation; + BOOL _isChildRequestForSenders; + BOOL _isReadyToDisplay; + BOOL _quotedTextIsVisible; + long long _relatedMessageType; + BOOL _isShowingHeaderDetails; + unsigned long long _numberOfDuplicates; + int _displayType; + unsigned int _preferredEncoding; + NSString *_sender; + NSString *_senderName; + NSString *_inReplyToSenderName; + BOOL _matchedEntireInReplyToMessage; + NSString *_childAddress; + NSArray *_requestedAddressesFromChild; + id _displayer; + id _editor; + NSIndexSet *_expandedRedundantContentAbbreviatorIndexes; +} + ++ (void)initialize; +- (void)release; +- (void)dealloc; +- (id)init; +@property(retain) id editor; +- (void)_editorClosed:(id)arg1; +@property(retain, nonatomic) MimeBody *mimeBody; // @synthesize mimeBody=_mimeBody; +@property(readonly) NSArray *attachments; +@property(nonatomic) BOOL isShowingHeaderDetails; +@property(readonly) NSAttributedString *headerAttributedString; +@property(retain) NSDictionary *plainAddresses; +@property(retain) NSDictionary *addressAttachments; +@property(retain) NSSet *expandedAddressKeys; +@property(retain) NSAttributedString *attachmentsDescription; +@property(readonly) long long headerDetailLevel; +- (id)description; +@property(retain) ActivityMonitor *monitor; // @synthesize monitor=_monitor; +@property(retain) Message *message; // @synthesize message=_message; +@property(copy) NSIndexSet *expandedRedundantContentAbbreviatorIndexes; // @synthesize expandedRedundantContentAbbreviatorIndexes=_expandedRedundantContentAbbreviatorIndexes; +@property(retain) NSAttributedString *headerSecurityString; // @synthesize headerSecurityString=_headerSecurityString; +@property(retain) NSAttributedString *expandedHeadersString; // @synthesize expandedHeadersString=_expandedHeadersString; +@property(retain) NSAttributedString *simpleHeadersString; // @synthesize simpleHeadersString=_simpleHeadersString; +@property(retain, nonatomic) NSArray *requestedAddressesFromChild; // @synthesize requestedAddressesFromChild=_requestedAddressesFromChild; +@property(copy, nonatomic) NSString *childAddress; // @synthesize childAddress=_childAddress; +@property(nonatomic) BOOL matchedEntireInReplyToMessage; // @synthesize matchedEntireInReplyToMessage=_matchedEntireInReplyToMessage; +@property(copy, nonatomic) NSString *inReplyToSenderName; // @synthesize inReplyToSenderName=_inReplyToSenderName; +@property(copy, nonatomic) NSString *senderName; // @synthesize senderName=_senderName; +@property(copy, nonatomic) NSString *sender; // @synthesize sender=_sender; +@property(nonatomic) unsigned int preferredEncoding; // @synthesize preferredEncoding=_preferredEncoding; +@property(nonatomic) int displayType; // @synthesize displayType=_displayType; +@property(nonatomic) BOOL isChildRequestForSenders; // @synthesize isChildRequestForSenders=_isChildRequestForSenders; +@property(nonatomic) BOOL messageIsOldestInConversation; // @synthesize messageIsOldestInConversation=_messageIsOldestInConversation; +@property(nonatomic) BOOL messageIsFromMicrosoft; // @synthesize messageIsFromMicrosoft=_messageIsFromMicrosoft; +@property(nonatomic) unsigned long long numberOfDuplicates; // @synthesize numberOfDuplicates=_numberOfDuplicates; +@property(nonatomic) long long relatedMessageType; // @synthesize relatedMessageType=_relatedMessageType; +@property(nonatomic) BOOL quotedTextIsVisible; // @synthesize quotedTextIsVisible=_quotedTextIsVisible; +@property BOOL isReadyToDisplay; // @synthesize isReadyToDisplay=_isReadyToDisplay; +@property(nonatomic) BOOL triedToDownloadRemoteURLs; // @synthesize triedToDownloadRemoteURLs=_triedToDownloadRemoteURLs; +@property(nonatomic) BOOL downloadRemoteURLs; // @synthesize downloadRemoteURLs=_downloadRemoteURLs; +@property(nonatomic) BOOL isForPrinting; // @synthesize isForPrinting=_isForPrinting; +@property(nonatomic) BOOL showDefaultHeaders; // @synthesize showDefaultHeaders=_showDefaultHeaders; +@property(nonatomic) BOOL showAllHeaders; // @synthesize showAllHeaders=_showAllHeaders; +@property(nonatomic) BOOL dontCache; // @synthesize dontCache=_dontCache; +@property(nonatomic) BOOL accountWasOffline; // @synthesize accountWasOffline=_accountWasOffline; +@property(nonatomic) long long preferredAlternative; // @synthesize preferredAlternative=_preferredAlternative; +@property(nonatomic) long long headerFontAdjustment; // @synthesize headerFontAdjustment=_headerFontAdjustment; +@property(nonatomic) long long headerFontAdjustmentDebt; // @synthesize headerFontAdjustmentDebt=_headerFontAdjustmentDebt; +@property(nonatomic) long long headerIndent; // @synthesize headerIndent=_headerIndent; +@property(retain, nonatomic) MFError *error; // @synthesize error=_error; +@property(retain, nonatomic) id document; // @synthesize document=_document; +@property(copy, nonatomic) NSString *finalizedMessageHtml; // @synthesize finalizedMessageHtml=_finalizedMessageHtml; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageWebHTMLView.h b/MailHeaders/Lion/Mail/MessageWebHTMLView.h new file mode 100644 index 00000000..d5b8004c --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageWebHTMLView.h @@ -0,0 +1,69 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebHTMLView.h" + +@class NSArray; + +@interface MessageWebHTMLView : WebHTMLView +{ + NSArray *_attachmentsForContextualMenu; +} + +- (void)dealloc; +- (void)_updateFontPanel; +- (id)selectedAttributedString; +- (id)attachmentsForContextualMenu; +- (void)setAttachmentsForContextualMenu:(id)arg1; +- (void)willShowContextualMenuForAttachment:(id)arg1; +- (id)selectedAttachments; +- (BOOL)selectionIsOneAttachment; +- (BOOL)allSelectedAttachmentsArePhotos; +- (BOOL)moreThanOneAttachmentSelected; +- (id)attachmentForEvent:(id)arg1; +- (void)openAttachment:(id)arg1; +- (void)quickLookAttachment:(id)arg1; +- (void)quickLookSelectedAttachments:(id)arg1; +- (void)saveAttachment:(id)arg1; +- (void)saveAttachmentToDownloadsDirectory:(id)arg1; +- (id)editingDelegate; +- (void)viewAttachmentInline:(id)arg1; +- (void)openAttachmentWithApplication:(id)arg1; +- (void)chooseApplicationToOpenAttachment:(id)arg1; +- (void)importInvitations:(id)arg1; +- (void)exportAttachmentsToIPhoto:(id)arg1; +- (void)insertBulletedList:(id)arg1; +- (void)insertNumberedList:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)insertList:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)writeSelectionWithPasteboardTypes:(id)arg1 toPasteboard:(id)arg2; +- (void)fixWebArchiveAndRTFDDataOnPasteboard:(id)arg1; +- (id)messageViewer; +- (void)didBecomeActiveFirstResponder; +- (void)keyDown:(id)arg1; +- (BOOL)handleMouseDownEventForRedundantToggleLink:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)mouseUp:(id)arg1; +- (void)mouseDragged:(id)arg1; +- (BOOL)acceptsFirstMouse:(id)arg1; +- (BOOL)shouldDelayWindowOrderingForEvent:(id)arg1; +- (id)view:(id)arg1 stringForToolTip:(long long)arg2 point:(struct CGPoint)arg3 userData:(void *)arg4; +- (void)floatLeft:(id)arg1; +- (void)floatRight:(id)arg1; +- (void)floatNone:(id)arg1; +- (BOOL)canFloatSelectedElement; +- (void)setSelectionFloat:(id)arg1 undoTitle:(id)arg2; +- (void)drawRect:(struct CGRect)arg1; +- (BOOL)acceptsPreviewPanelControl:(id)arg1; +- (void)beginPreviewPanelControl:(id)arg1; +- (void)endPreviewPanelControl:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageWebView.h b/MailHeaders/Lion/Mail/MessageWebView.h new file mode 100644 index 00000000..339cb02d --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageWebView.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "TilingWebView.h" + +@interface MessageWebView : TilingWebView +{ +} + +- (void)keyDown:(id)arg1; +- (void)layoutResizingAttachmentViews; +- (void)setPageSizeMultiplier:(float)arg1; +- (void)resizeWithOldSuperviewSize:(struct CGSize)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MessageWindowViewPerfTest.h b/MailHeaders/Lion/Mail/MessageWindowViewPerfTest.h new file mode 100644 index 00000000..713363df --- /dev/null +++ b/MailHeaders/Lion/Mail/MessageWindowViewPerfTest.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MessageViewPerfTest.h" + +@interface MessageWindowViewPerfTest : MessageViewPerfTest +{ +} + +- (void)setUp; +- (void)tearDown; +- (void)performOnMessageAtRow:(long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/MessagesTableView.h b/MailHeaders/Lion/Mail/MessagesTableView.h new file mode 100644 index 00000000..67900e4c --- /dev/null +++ b/MailHeaders/Lion/Mail/MessagesTableView.h @@ -0,0 +1,51 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableView.h" + +@class NSTableRowView, PaddingView; + +@interface MessagesTableView : NSTableView +{ + PaddingView *_paddingView; + NSTableRowView *_rowToPin; + double _pinnedMessageVisiblePosition; + double _verticalScrollDuringUpdate; + long long _rowIndexToSelectAfterUpdate; + long long _messageIndexToPin; + long long _updateCount; + BOOL _preventPinning; + BOOL _userIsChangingSelection; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (void)awakeFromNib; +- (void)_commonInit; +- (void)_setMessageIndexToPin:(long long)arg1; +- (void)_scrollToPinnedMessage; +- (BOOL)_isRowViewVisible:(id)arg1; +- (void)_pinVisibleMessage; +- (void)setRowToPin:(id)arg1; +- (void)noteHeightOfRowsWithIndexesChanged:(id)arg1; +- (void)insertRowsAtIndexes:(id)arg1 withAnimation:(unsigned long long)arg2; +- (void)removeRowsAtIndexes:(id)arg1 withAnimation:(unsigned long long)arg2; +- (void)beginUpdates; +- (void)endUpdates; +- (void)scrollToEndOfDocument:(id)arg1; +- (void)scrollToBeginningOfDocument:(id)arg1; +- (void)keyDown:(id)arg1; +- (void)selectRowIndexes:(id)arg1 byExtendingSelection:(BOOL)arg2 isUserAction:(BOOL)arg3; +- (void)selectRowIndexes:(id)arg1 byExtendingSelection:(BOOL)arg2; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (BOOL)acceptsFirstMouse:(id)arg1; +@property(nonatomic) BOOL userIsChangingSelection; // @synthesize userIsChangingSelection=_userIsChangingSelection; +@property PaddingView *paddingView; // @synthesize paddingView=_paddingView; + +@end + diff --git a/MailHeaders/Lion/Mail/ModalDimmingWindow.h b/MailHeaders/Lion/Mail/ModalDimmingWindow.h new file mode 100644 index 00000000..dff6c7e4 --- /dev/null +++ b/MailHeaders/Lion/Mail/ModalDimmingWindow.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface ModalDimmingWindow : NSWindow +{ +} + +- (id)initWithContentRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4; +- (void)dim; + +@end + diff --git a/MailHeaders/Lion/Mail/MouseTrackingWindow.h b/MailHeaders/Lion/Mail/MouseTrackingWindow.h new file mode 100644 index 00000000..cafeab60 --- /dev/null +++ b/MailHeaders/Lion/Mail/MouseTrackingWindow.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface MouseTrackingWindow : NSWindow +{ + unsigned long long _fullScreenState; + BOOL _forceDrawAsMain; + BOOL _preventBecomingKey; + BOOL _customFullScreenAnimation; +} + +- (id)initWithContentRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4; +- (void)dealloc; +- (BOOL)makeFirstResponder:(id)arg1; +- (void)toggleToolbarShown:(id)arg1; +- (void)displayIfNeeded; +- (void)sendEvent:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)performKeyEquivalent:(id)arg1; +- (BOOL)isMainWindow; +- (BOOL)canBecomeKeyWindow; +@property(readonly) BOOL isFullScreen; +- (BOOL)_isModalWindowPresent; +- (void)_windowWillEnterFullScreen:(id)arg1; +- (void)_windowDidEnterFullScreen:(id)arg1; +- (void)_windowWillExitFullScreen:(id)arg1; +- (void)_windowDidExitFullScreen:(id)arg1; +- (void)_windowDidResize:(id)arg1; +@property(readonly) unsigned long long fullScreenState; // @synthesize fullScreenState=_fullScreenState; +@property BOOL preventBecomingKey; // @synthesize preventBecomingKey=_preventBecomingKey; +@property BOOL forceDrawAsMain; // @synthesize forceDrawAsMain=_forceDrawAsMain; + +@end + diff --git a/MailHeaders/Lion/Mail/MultiImageCell.h b/MailHeaders/Lion/Mail/MultiImageCell.h new file mode 100644 index 00000000..5145ee34 --- /dev/null +++ b/MailHeaders/Lion/Mail/MultiImageCell.h @@ -0,0 +1,60 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSImageCell.h" + +@class NSMutableArray; + +@interface MultiImageCell : NSImageCell +{ + NSMutableArray *_images; + NSMutableArray *_subcells; + id _accessibilityValue; +} + +- (id)init; +- (id)initImageCell:(id)arg1; +- (id)initTextCell:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (void)_multiImageCellCommonInit; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (void)setControlView:(id)arg1; +- (void)setEnabled:(BOOL)arg1; +- (void)setSelectable:(BOOL)arg1; +- (void)setHighlighted:(BOOL)arg1; +- (void)setAlignment:(unsigned long long)arg1; +- (void)setFont:(id)arg1; +- (void)setControlTint:(unsigned long long)arg1; +- (void)setControlSize:(unsigned long long)arg1; +- (void)setBaseWritingDirection:(long long)arg1; +- (void)setLineBreakMode:(unsigned long long)arg1; +- (void)setTruncatesLastVisibleLine:(BOOL)arg1; +- (void)setUsesSingleLineMode:(BOOL)arg1; +- (void)setBackgroundStyle:(long long)arg1; +- (void)setCellAttribute:(unsigned long long)arg1 to:(long long)arg2; +- (void)setUserInterfaceLayoutDirection:(long long)arg1; +- (void)setTitle:(id)arg1; +- (BOOL)isEditable; +- (void)setEditable:(BOOL)arg1; +- (void)setObjectValue:(id)arg1; +- (void)_addSubcellsWithImages:(id)arg1; +- (id)stringValue; +- (long long)compare:(id)arg1; +- (id)_firstImageName; +- (void)calcDrawInfo:(struct CGRect)arg1; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)highlight:(BOOL)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (unsigned long long)hitTestForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3; +- (void)setImageAlignment:(unsigned long long)arg1; +- (void)setImageScaling:(unsigned long long)arg1; +- (id)accessibilityAttributeNames; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityAttributeValue:(id)arg1; +- (void)accessibilitySetValue:(id)arg1 forAttribute:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/MultiSelectionPlaceholderView.h b/MailHeaders/Lion/Mail/MultiSelectionPlaceholderView.h new file mode 100644 index 00000000..a4d41dcf --- /dev/null +++ b/MailHeaders/Lion/Mail/MultiSelectionPlaceholderView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface MultiSelectionPlaceholderView : NSView +{ + unsigned long long _selectionCount; +} + +- (void)drawRect:(struct CGRect)arg1; +- (BOOL)isOpaque; +- (BOOL)isFlipped; +- (void)setSelectionCount:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/NSAlert-MFErrorSupport.h b/MailHeaders/Lion/Mail/NSAlert-MFErrorSupport.h new file mode 100644 index 00000000..5941b4d0 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSAlert-MFErrorSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@interface NSAlert (MFErrorSupport) ++ (id)alertForError:(id)arg1 defaultButton:(id)arg2 alternateButton:(id)arg3 otherButton:(id)arg4; +- (void)setEscapeKeyEquivalentOnButtonWithTitle:(id)arg1; +- (void)setKeyEquivalent:(id)arg1 onButtonWithTitle:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/NSAnimationDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSAnimationDelegate-Protocol.h new file mode 100644 index 00000000..b14719ea --- /dev/null +++ b/MailHeaders/Lion/Mail/NSAnimationDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSAnimationDelegate + +@optional +- (BOOL)animationShouldStart:(id)arg1; +- (void)animationDidStop:(id)arg1; +- (void)animationDidEnd:(id)arg1; +- (float)animation:(id)arg1 valueForProgress:(float)arg2; +- (void)animation:(id)arg1 didReachProgressMark:(float)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/NSApplicationDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSApplicationDelegate-Protocol.h new file mode 100644 index 00000000..ca0e3029 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSApplicationDelegate-Protocol.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSApplicationDelegate + +@optional +- (unsigned long long)applicationShouldTerminate:(id)arg1; +- (BOOL)application:(id)arg1 openFile:(id)arg2; +- (void)application:(id)arg1 openFiles:(id)arg2; +- (BOOL)application:(id)arg1 openTempFile:(id)arg2; +- (BOOL)applicationShouldOpenUntitledFile:(id)arg1; +- (BOOL)applicationOpenUntitledFile:(id)arg1; +- (BOOL)application:(id)arg1 openFileWithoutUI:(id)arg2; +- (BOOL)application:(id)arg1 printFile:(id)arg2; +- (unsigned long long)application:(id)arg1 printFiles:(id)arg2 withSettings:(id)arg3 showPrintPanels:(BOOL)arg4; +- (BOOL)applicationShouldTerminateAfterLastWindowClosed:(id)arg1; +- (BOOL)applicationShouldHandleReopen:(id)arg1 hasVisibleWindows:(BOOL)arg2; +- (id)applicationDockMenu:(id)arg1; +- (id)application:(id)arg1 willPresentError:(id)arg2; +- (void)application:(id)arg1 didRegisterForRemoteNotificationsWithDeviceToken:(id)arg2; +- (void)application:(id)arg1 didFailToRegisterForRemoteNotificationsWithError:(id)arg2; +- (void)application:(id)arg1 didReceiveRemoteNotification:(id)arg2; +- (void)application:(id)arg1 willEncodeRestorableState:(id)arg2; +- (void)application:(id)arg1 didDecodeRestorableState:(id)arg2; +- (void)applicationWillFinishLaunching:(id)arg1; +- (void)applicationDidFinishLaunching:(id)arg1; +- (void)applicationWillHide:(id)arg1; +- (void)applicationDidHide:(id)arg1; +- (void)applicationWillUnhide:(id)arg1; +- (void)applicationDidUnhide:(id)arg1; +- (void)applicationWillBecomeActive:(id)arg1; +- (void)applicationDidBecomeActive:(id)arg1; +- (void)applicationWillResignActive:(id)arg1; +- (void)applicationDidResignActive:(id)arg1; +- (void)applicationWillUpdate:(id)arg1; +- (void)applicationDidUpdate:(id)arg1; +- (void)applicationWillTerminate:(id)arg1; +- (void)applicationDidChangeScreenParameters:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSArray-AtomicAddress.h b/MailHeaders/Lion/Mail/NSArray-AtomicAddress.h new file mode 100644 index 00000000..13806fb1 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSArray-AtomicAddress.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (AtomicAddress) +- (id)atomicAddressesOfType:(int)arg1; +- (id)attributedStringOfAddressesAttachments:(id *)arg1 type:(int)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/NSAttributedString-AtomicAddress.h b/MailHeaders/Lion/Mail/NSAttributedString-AtomicAddress.h new file mode 100644 index 00000000..4d0cb171 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSAttributedString-AtomicAddress.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (AtomicAddress) ++ (id)atomicAddressFromDictionary:(id)arg1; +- (BOOL)containsOnlyAtoms; +- (id)unatomicAddress; +- (id)dictionaryRepresentation; +- (id)atomicAddresses; +- (id)allAddresses; +- (id)addressAttachments; +- (id)unatomicAddresses; +- (id)replaceAttachmentsWithAddressesIncludeName:(BOOL)arg1; +- (BOOL)containsAddressAttachments; +- (id)stringWithAtomsExpanded; +- (id)stringOfAddressesWithAtomsExpandedIncludeName:(BOOL)arg1; +- (id)mutableCopyWithNewAttachments:(id *)arg1; +- (struct _NSRange)convertPlainTextRange:(struct _NSRange)arg1; +- (struct _NSRange)convertToPlainTextRange:(struct _NSRange)arg1; +- (void)testSpotlighting; +- (BOOL)knownToHaveNoRecord; +- (id)addressBookRecord; +- (void)displayCommasExceptAtEnd; +- (void)displayCommasForAllAddresses; +@end + diff --git a/MailHeaders/Lion/Mail/NSAttributedString-MailAttributedStringToHTML.h b/MailHeaders/Lion/Mail/NSAttributedString-MailAttributedStringToHTML.h new file mode 100644 index 00000000..0fc63a9f --- /dev/null +++ b/MailHeaders/Lion/Mail/NSAttributedString-MailAttributedStringToHTML.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MailAttributedStringToHTML) +- (id)webArchiveForRange:(struct _NSRange)arg1 signatureID:(id *)arg2 fixUpNewlines:(BOOL)arg3; +- (id)webArchiveForRange:(struct _NSRange)arg1 signatureID:(id *)arg2; +- (id)webArchiveForRange:(struct _NSRange)arg1 fixUpNewlines:(BOOL)arg2; +- (id)webArchiveForRange:(struct _NSRange)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSAttributedString-MailTextAttachments.h b/MailHeaders/Lion/Mail/NSAttributedString-MailTextAttachments.h new file mode 100644 index 00000000..5e141917 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSAttributedString-MailTextAttachments.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MailTextAttachments) +- (id)attributedStringByRemovingPartialAttachmentsInRange:(struct _NSRange)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSAttributedString-ViewingStateAttachmentCaching.h b/MailHeaders/Lion/Mail/NSAttributedString-ViewingStateAttachmentCaching.h new file mode 100644 index 00000000..efee290e --- /dev/null +++ b/MailHeaders/Lion/Mail/NSAttributedString-ViewingStateAttachmentCaching.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (ViewingStateAttachmentCaching) +- (id)userAttachments; +@end + diff --git a/MailHeaders/Lion/Mail/NSBezierPath-MailAdditions.h b/MailHeaders/Lion/Mail/NSBezierPath-MailAdditions.h new file mode 100644 index 00000000..1d5352e1 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSBezierPath-MailAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSBezierPath.h" + +@interface NSBezierPath (MailAdditions) ++ (id)roundedRectPathInRect:(struct CGRect)arg1 radius:(double)arg2; ++ (id)mv_bezierPathWithAttributedString:(id)arg1; +- (void)fillWithInnerShadow:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSClipView-AutosizingScrollViewAdditions.h b/MailHeaders/Lion/Mail/NSClipView-AutosizingScrollViewAdditions.h new file mode 100644 index 00000000..986dc8ae --- /dev/null +++ b/MailHeaders/Lion/Mail/NSClipView-AutosizingScrollViewAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSClipView.h" + +@interface NSClipView (AutosizingScrollViewAdditions) +- (void)setAutomagicallyResizes:(BOOL)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSClipView-ToReplaceViewWithOurOwn.h b/MailHeaders/Lion/Mail/NSClipView-ToReplaceViewWithOurOwn.h new file mode 100644 index 00000000..e24d68d6 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSClipView-ToReplaceViewWithOurOwn.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSClipView.h" + +@interface NSClipView (ToReplaceViewWithOurOwn) ++ (id)allocWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSControl-MailAdditions.h b/MailHeaders/Lion/Mail/NSControl-MailAdditions.h new file mode 100644 index 00000000..5e3cfd86 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSControl-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSControl.h" + +@interface NSControl (MailAdditions) +- (void)sizeToFitAndAdjustWindowHeight; +@end + diff --git a/MailHeaders/Lion/Mail/NSControlTextEditingDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSControlTextEditingDelegate-Protocol.h new file mode 100644 index 00000000..54a7a5b4 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSControlTextEditingDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSControlTextEditingDelegate + +@optional +- (BOOL)control:(id)arg1 textShouldBeginEditing:(id)arg2; +- (BOOL)control:(id)arg1 textShouldEndEditing:(id)arg2; +- (BOOL)control:(id)arg1 didFailToFormatString:(id)arg2 errorDescription:(id)arg3; +- (void)control:(id)arg1 didFailToValidatePartialString:(id)arg2 errorDescription:(id)arg3; +- (BOOL)control:(id)arg1 isValidObject:(id)arg2; +- (BOOL)control:(id)arg1 textView:(id)arg2 doCommandBySelector:(SEL)arg3; +- (id)control:(id)arg1 textView:(id)arg2 completions:(id)arg3 forPartialWordRange:(struct _NSRange)arg4 indexOfSelectedItem:(long long *)arg5; +@end + diff --git a/MailHeaders/Lion/Mail/NSCopying-Protocol.h b/MailHeaders/Lion/Mail/NSCopying-Protocol.h new file mode 100644 index 00000000..2ffa98f5 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSCopying +- (id)copyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSDatePickerCellDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSDatePickerCellDelegate-Protocol.h new file mode 100644 index 00000000..4696484b --- /dev/null +++ b/MailHeaders/Lion/Mail/NSDatePickerCellDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSDatePickerCellDelegate + +@optional +- (void)datePickerCell:(id)arg1 validateProposedDateValue:(id *)arg2 timeInterval:(double *)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/NSEvent-MailAdditions.h b/MailHeaders/Lion/Mail/NSEvent-MailAdditions.h new file mode 100644 index 00000000..b1ace8e1 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSEvent-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSEvent.h" + +@interface NSEvent (MailAdditions) +- (BOOL)_mv_isMouseEvent; +@end + diff --git a/MailHeaders/Lion/Mail/NSEvent-MailViewerEvent.h b/MailHeaders/Lion/Mail/NSEvent-MailViewerEvent.h new file mode 100644 index 00000000..d724aeae --- /dev/null +++ b/MailHeaders/Lion/Mail/NSEvent-MailViewerEvent.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSEvent.h" + +@interface NSEvent (MailViewerEvent) +- (void)_setModifierFlags:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSFileManagerDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSFileManagerDelegate-Protocol.h new file mode 100644 index 00000000..99d84918 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSFileManagerDelegate-Protocol.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSFileManagerDelegate + +@optional +- (BOOL)fileManager:(id)arg1 shouldCopyItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldCopyItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 copyingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 copyingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldMoveItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldMoveItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 movingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 movingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldLinkItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldLinkItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 linkingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 linkingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtPath:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtURL:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtURL:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/NSFont-MailAdditions.h b/MailHeaders/Lion/Mail/NSFont-MailAdditions.h new file mode 100644 index 00000000..89053bdf --- /dev/null +++ b/MailHeaders/Lion/Mail/NSFont-MailAdditions.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFont.h" + +@interface NSFont (MailAdditions) ++ (id)addressFieldFont; ++ (id)prefsAddressFieldFont; ++ (id)messageFont; ++ (void)setMessageFont:(id)arg1; ++ (id)fixedWidthFont; ++ (void)setFixedWidthFont:(id)arg1; ++ (id)messageListFont; ++ (void)setMessageListFont:(id)arg1; ++ (id)noteFont; ++ (void)setNoteFont:(id)arg1; ++ (id)noteMessageListFont; ++ (id)noteMessageListSecondaryFont; ++ (id)fontWithBaseFont:(id)arg1 overlayFont:(id)arg2; ++ (id)validFontFamilyName:(id)arg1 fixedPitchOnly:(BOOL)arg2; +- (BOOL)isEqualNameAndSize:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSFontManager-ToReplaceWithOurOwn.h b/MailHeaders/Lion/Mail/NSFontManager-ToReplaceWithOurOwn.h new file mode 100644 index 00000000..8293d622 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSFontManager-ToReplaceWithOurOwn.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFontManager.h" + +@interface NSFontManager (ToReplaceWithOurOwn) ++ (id)allocWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSInspectorBarClient-Protocol.h b/MailHeaders/Lion/Mail/NSInspectorBarClient-Protocol.h new file mode 100644 index 00000000..4d7c631f --- /dev/null +++ b/MailHeaders/Lion/Mail/NSInspectorBarClient-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSInspectorBarClient +- (id)inspectorBarItemIdentifiers; +@end + diff --git a/MailHeaders/Lion/Mail/NSInspectorBarDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSInspectorBarDelegate-Protocol.h new file mode 100644 index 00000000..9e735c59 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSInspectorBarDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSInspectorBarDelegate + +@optional +- (id)inspectorBar:(id)arg1 itemForIdentifier:(id)arg2; +- (id)inspectorBar:(id)arg1 shouldLayoutItem:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/NSInspectorBarItemController-Protocol.h b/MailHeaders/Lion/Mail/NSInspectorBarItemController-Protocol.h new file mode 100644 index 00000000..6191fd78 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSInspectorBarItemController-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSInspectorBarItemController +- (id)viewForInspectorBarItem:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSLayoutManagerDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSLayoutManagerDelegate-Protocol.h new file mode 100644 index 00000000..56ff7e92 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSLayoutManagerDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSLayoutManagerDelegate + +@optional +- (void)layoutManagerDidInvalidateLayout:(id)arg1; +- (void)layoutManager:(id)arg1 didCompleteLayoutForTextContainer:(id)arg2 atEnd:(BOOL)arg3; +- (id)layoutManager:(id)arg1 shouldUseTemporaryAttributes:(id)arg2 forDrawingToScreen:(BOOL)arg3 atCharacterIndex:(unsigned long long)arg4 effectiveRange:(struct _NSRange *)arg5; +@end + diff --git a/MailHeaders/Lion/Mail/NSMenuDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSMenuDelegate-Protocol.h new file mode 100644 index 00000000..4a375240 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSMenuDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSMenuDelegate + +@optional +- (void)menuNeedsUpdate:(id)arg1; +- (long long)numberOfItemsInMenu:(id)arg1; +- (BOOL)menu:(id)arg1 updateItem:(id)arg2 atIndex:(long long)arg3 shouldCancel:(BOOL)arg4; +- (BOOL)menuHasKeyEquivalent:(id)arg1 forEvent:(id)arg2 target:(id *)arg3 action:(SEL *)arg4; +- (void)menuWillOpen:(id)arg1; +- (void)menuDidClose:(id)arg1; +- (void)menu:(id)arg1 willHighlightItem:(id)arg2; +- (struct CGRect)confinementRectForMenu:(id)arg1 onScreen:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/NSMutableArray-Shuffle.h b/MailHeaders/Lion/Mail/NSMutableArray-Shuffle.h new file mode 100644 index 00000000..ff4b413d --- /dev/null +++ b/MailHeaders/Lion/Mail/NSMutableArray-Shuffle.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMutableArray.h" + +@interface NSMutableArray (Shuffle) +- (void)shuffle; +- (void)shuffleWithSeed:(unsigned int)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSMutableAttributedString-AdjustFontSize.h b/MailHeaders/Lion/Mail/NSMutableAttributedString-AdjustFontSize.h new file mode 100644 index 00000000..353ec75b --- /dev/null +++ b/MailHeaders/Lion/Mail/NSMutableAttributedString-AdjustFontSize.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMutableAttributedString.h" + +@interface NSMutableAttributedString (AdjustFontSize) +- (void)_mv_adjustFontSizeBy:(double)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSMutableAttributedString-MailTextAttachments.h b/MailHeaders/Lion/Mail/NSMutableAttributedString-MailTextAttachments.h new file mode 100644 index 00000000..2bdc4390 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSMutableAttributedString-MailTextAttachments.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMutableAttributedString.h" + +@interface NSMutableAttributedString (MailTextAttachments) +- (void)convertToMailAttachmentsInRange:(struct _NSRange)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSNib-MailSharedNibLoading.h b/MailHeaders/Lion/Mail/NSNib-MailSharedNibLoading.h new file mode 100644 index 00000000..232914a9 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSNib-MailSharedNibLoading.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSNib.h" + +@interface NSNib (MailSharedNibLoading) ++ (BOOL)loadSharedNib:(long long)arg1 owner:(id)arg2; ++ (BOOL)loadSharedNib:(long long)arg1 owner:(id)arg2 topLevelObjects:(id *)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/NSNotification-MailNotificationAdditions.h b/MailHeaders/Lion/Mail/NSNotification-MailNotificationAdditions.h new file mode 100644 index 00000000..71f57669 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSNotification-MailNotificationAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSNotification.h" + +@interface NSNotification (MailNotificationAdditions) +- (BOOL)isRepostToMainThread; +@end + diff --git a/MailHeaders/Lion/Mail/NSNotificationCenter-ToReplaceCenterWithOurOwn.h b/MailHeaders/Lion/Mail/NSNotificationCenter-ToReplaceCenterWithOurOwn.h new file mode 100644 index 00000000..34d0498a --- /dev/null +++ b/MailHeaders/Lion/Mail/NSNotificationCenter-ToReplaceCenterWithOurOwn.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSNotificationCenter.h" + +@interface NSNotificationCenter (ToReplaceCenterWithOurOwn) ++ (id)allocWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSObject-Protocol.h b/MailHeaders/Lion/Mail/NSObject-Protocol.h new file mode 100644 index 00000000..69f3a363 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSObject-Protocol.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSObject +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +- (Class)superclass; +- (Class)class; +- (id)self; +- (struct _NSZone *)zone; +- (id)performSelector:(SEL)arg1; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2 withObject:(id)arg3; +- (BOOL)isProxy; +- (BOOL)isKindOfClass:(Class)arg1; +- (BOOL)isMemberOfClass:(Class)arg1; +- (BOOL)conformsToProtocol:(id)arg1; +- (BOOL)respondsToSelector:(SEL)arg1; +- (id)retain; +- (oneway void)release; +- (id)autorelease; +- (unsigned long long)retainCount; +- (id)description; +@end + diff --git a/MailHeaders/Lion/Mail/NSOpenSavePanelDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSOpenSavePanelDelegate-Protocol.h new file mode 100644 index 00000000..753b61c9 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSOpenSavePanelDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSOpenSavePanelDelegate + +@optional +- (BOOL)panel:(id)arg1 shouldEnableURL:(id)arg2; +- (BOOL)panel:(id)arg1 validateURL:(id)arg2 error:(id *)arg3; +- (void)panel:(id)arg1 didChangeToDirectoryURL:(id)arg2; +- (id)panel:(id)arg1 userEnteredFilename:(id)arg2 confirmed:(BOOL)arg3; +- (void)panel:(id)arg1 willExpand:(BOOL)arg2; +- (void)panelSelectionDidChange:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSOutlineView-MailAdditions.h b/MailHeaders/Lion/Mail/NSOutlineView-MailAdditions.h new file mode 100644 index 00000000..dea4493e --- /dev/null +++ b/MailHeaders/Lion/Mail/NSOutlineView-MailAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSOutlineView.h" + +@interface NSOutlineView (MailAdditions) +- (BOOL)item:(id)arg1 isDescendantOf:(id)arg2; +- (void)_collectDescendants:(id *)arg1 ofItem:(id)arg2; +- (id)copyOfItemAndDescendance:(id)arg1; +- (id)editedItem; +@end + diff --git a/MailHeaders/Lion/Mail/NSOutlineViewDataSource-Protocol.h b/MailHeaders/Lion/Mail/NSOutlineViewDataSource-Protocol.h new file mode 100644 index 00000000..7dfe0068 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSOutlineViewDataSource-Protocol.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSOutlineViewDataSource + +@optional +- (long long)outlineView:(id)arg1 numberOfChildrenOfItem:(id)arg2; +- (id)outlineView:(id)arg1 child:(long long)arg2 ofItem:(id)arg3; +- (BOOL)outlineView:(id)arg1 isItemExpandable:(id)arg2; +- (id)outlineView:(id)arg1 objectValueForTableColumn:(id)arg2 byItem:(id)arg3; +- (void)outlineView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 byItem:(id)arg4; +- (id)outlineView:(id)arg1 itemForPersistentObject:(id)arg2; +- (id)outlineView:(id)arg1 persistentObjectForItem:(id)arg2; +- (void)outlineView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (id)outlineView:(id)arg1 pasteboardWriterForItem:(id)arg2; +- (void)outlineView:(id)arg1 draggingSession:(id)arg2 willBeginAtPoint:(struct CGPoint)arg3 forItems:(id)arg4; +- (void)outlineView:(id)arg1 draggingSession:(id)arg2 endedAtPoint:(struct CGPoint)arg3 operation:(unsigned long long)arg4; +- (BOOL)outlineView:(id)arg1 writeItems:(id)arg2 toPasteboard:(id)arg3; +- (void)outlineView:(id)arg1 updateDraggingItemsForDrag:(id)arg2; +- (unsigned long long)outlineView:(id)arg1 validateDrop:(id)arg2 proposedItem:(id)arg3 proposedChildIndex:(long long)arg4; +- (BOOL)outlineView:(id)arg1 acceptDrop:(id)arg2 item:(id)arg3 childIndex:(long long)arg4; +- (id)outlineView:(id)arg1 namesOfPromisedFilesDroppedAtDestination:(id)arg2 forDraggedItems:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/NSOutlineViewDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSOutlineViewDelegate-Protocol.h new file mode 100644 index 00000000..30a4880d --- /dev/null +++ b/MailHeaders/Lion/Mail/NSOutlineViewDelegate-Protocol.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate-Protocol.h" + +@protocol NSOutlineViewDelegate + +@optional +- (id)outlineView:(id)arg1 viewForTableColumn:(id)arg2 item:(id)arg3; +- (id)outlineView:(id)arg1 rowViewForItem:(id)arg2; +- (void)outlineView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (void)outlineView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (void)outlineView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (BOOL)outlineView:(id)arg1 shouldEditTableColumn:(id)arg2 item:(id)arg3; +- (BOOL)selectionShouldChangeInOutlineView:(id)arg1; +- (BOOL)outlineView:(id)arg1 shouldSelectItem:(id)arg2; +- (id)outlineView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldSelectTableColumn:(id)arg2; +- (void)outlineView:(id)arg1 mouseDownInHeaderOfTableColumn:(id)arg2; +- (void)outlineView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)outlineView:(id)arg1 didDragTableColumn:(id)arg2; +- (id)outlineView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 item:(id)arg5 mouseLocation:(struct CGPoint)arg6; +- (double)outlineView:(id)arg1 heightOfRowByItem:(id)arg2; +- (id)outlineView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 item:(id)arg3; +- (id)outlineView:(id)arg1 nextTypeSelectMatchFromItem:(id)arg2 toItem:(id)arg3 forString:(id)arg4; +- (BOOL)outlineView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; +- (BOOL)outlineView:(id)arg1 shouldShowCellExpansionForTableColumn:(id)arg2 item:(id)arg3; +- (BOOL)outlineView:(id)arg1 shouldTrackCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (id)outlineView:(id)arg1 dataCellForTableColumn:(id)arg2 item:(id)arg3; +- (BOOL)outlineView:(id)arg1 isGroupItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldExpandItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldCollapseItem:(id)arg2; +- (void)outlineView:(id)arg1 willDisplayOutlineCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (double)outlineView:(id)arg1 sizeToFitWidthOfColumn:(long long)arg2; +- (BOOL)outlineView:(id)arg1 shouldReorderColumn:(long long)arg2 toColumn:(long long)arg3; +- (BOOL)outlineView:(id)arg1 shouldShowOutlineCellForItem:(id)arg2; +- (void)outlineViewSelectionDidChange:(id)arg1; +- (void)outlineViewColumnDidMove:(id)arg1; +- (void)outlineViewColumnDidResize:(id)arg1; +- (void)outlineViewSelectionIsChanging:(id)arg1; +- (void)outlineViewItemWillExpand:(id)arg1; +- (void)outlineViewItemDidExpand:(id)arg1; +- (void)outlineViewItemWillCollapse:(id)arg1; +- (void)outlineViewItemDidCollapse:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSPopUpButton-MailAdditions.h b/MailHeaders/Lion/Mail/NSPopUpButton-MailAdditions.h new file mode 100644 index 00000000..296bbba7 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSPopUpButton-MailAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@interface NSPopUpButton (MailAdditions) +- (void)_selectItemWithTagAndSynchronizeTitle:(long long)arg1; +- (double)sizeToFitWidth; +- (void)reloadData; +@end + diff --git a/MailHeaders/Lion/Mail/NSPreferences-ActiveModule.h b/MailHeaders/Lion/Mail/NSPreferences-ActiveModule.h new file mode 100644 index 00000000..a5d759cf --- /dev/null +++ b/MailHeaders/Lion/Mail/NSPreferences-ActiveModule.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferences.h" + +@interface NSPreferences (ActiveModule) +- (id)activeModule; +- (id)currentModule; +@end + diff --git a/MailHeaders/Lion/Mail/NSPreferencesModule-ActiveModule.h b/MailHeaders/Lion/Mail/NSPreferencesModule-ActiveModule.h new file mode 100644 index 00000000..c507323e --- /dev/null +++ b/MailHeaders/Lion/Mail/NSPreferencesModule-ActiveModule.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +@interface NSPreferencesModule (ActiveModule) ++ (id)activeInstance; +@end + diff --git a/MailHeaders/Lion/Mail/NSPrintPanelAccessorizing-Protocol.h b/MailHeaders/Lion/Mail/NSPrintPanelAccessorizing-Protocol.h new file mode 100644 index 00000000..23b54a8c --- /dev/null +++ b/MailHeaders/Lion/Mail/NSPrintPanelAccessorizing-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSPrintPanelAccessorizing +- (id)localizedSummaryItems; + +@optional +- (id)keyPathsForValuesAffectingPreview; +@end + diff --git a/MailHeaders/Lion/Mail/NSSpeechSynthesizerDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSSpeechSynthesizerDelegate-Protocol.h new file mode 100644 index 00000000..f691b7af --- /dev/null +++ b/MailHeaders/Lion/Mail/NSSpeechSynthesizerDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSSpeechSynthesizerDelegate + +@optional +- (void)speechSynthesizer:(id)arg1 didFinishSpeaking:(BOOL)arg2; +- (void)speechSynthesizer:(id)arg1 willSpeakWord:(struct _NSRange)arg2 ofString:(id)arg3; +- (void)speechSynthesizer:(id)arg1 willSpeakPhoneme:(short)arg2; +- (void)speechSynthesizer:(id)arg1 didEncounterErrorAtIndex:(unsigned long long)arg2 ofString:(id)arg3 message:(id)arg4; +- (void)speechSynthesizer:(id)arg1 didEncounterSyncMessage:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/NSSpellChecker-AllocationOverride.h b/MailHeaders/Lion/Mail/NSSpellChecker-AllocationOverride.h new file mode 100644 index 00000000..7d383c70 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSSpellChecker-AllocationOverride.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSSpellChecker.h" + +@interface NSSpellChecker (AllocationOverride) ++ (id)allocWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSSplitViewDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSSplitViewDelegate-Protocol.h new file mode 100644 index 00000000..087211e6 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSSplitViewDelegate-Protocol.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSSplitViewDelegate + +@optional +- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; +- (BOOL)splitView:(id)arg1 shouldCollapseSubview:(id)arg2 forDoubleClickOnDividerAtIndex:(long long)arg3; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMaxCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainSplitPosition:(double)arg2 ofSubviewAt:(long long)arg3; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (BOOL)splitView:(id)arg1 shouldAdjustSizeOfSubview:(id)arg2; +- (BOOL)splitView:(id)arg1 shouldHideDividerAtIndex:(long long)arg2; +- (struct CGRect)splitView:(id)arg1 effectiveRect:(struct CGRect)arg2 forDrawnRect:(struct CGRect)arg3 ofDividerAtIndex:(long long)arg4; +- (struct CGRect)splitView:(id)arg1 additionalEffectiveRectOfDividerAtIndex:(long long)arg2; +- (void)splitViewWillResizeSubviews:(id)arg1; +- (void)splitViewDidResizeSubviews:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSString-AtomicAddress.h b/MailHeaders/Lion/Mail/NSString-AtomicAddress.h new file mode 100644 index 00000000..329c7e51 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSString-AtomicAddress.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (AtomicAddress) +- (id)atomicAddress; +- (id)atomicAddressStringForRepresentedRecord:(id)arg1 type:(int)arg2; +- (id)atomicAddressStringForRepresentedRecord:(id)arg1 type:(int)arg2 showComma:(BOOL)arg3; +- (id)atomicAddressArrayForRepresentedRecord:(id)arg1 type:(int)arg2; +- (id)atomicAddressWithRepresentedRecord:(id)arg1 type:(int)arg2; +- (id)atomicAddressWithRepresentedRecord:(id)arg1 type:(int)arg2 showComma:(BOOL)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/NSString-FindPanelSupport.h b/MailHeaders/Lion/Mail/NSString-FindPanelSupport.h new file mode 100644 index 00000000..38f86839 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSString-FindPanelSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (FindPanelSupport) +- (struct _NSRange)findString:(id)arg1 selectedRange:(struct _NSRange)arg2 options:(unsigned long long)arg3 wrap:(BOOL)arg4; +@end + diff --git a/MailHeaders/Lion/Mail/NSString-HTMLConversion.h b/MailHeaders/Lion/Mail/NSString-HTMLConversion.h new file mode 100644 index 00000000..2af0f678 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSString-HTMLConversion.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@interface NSString (HTMLConversion) +- (id)markupString; +- (id)webArchiveForRange:(struct _NSRange)arg1; +- (id)webArchiveForRange:(struct _NSRange)arg1 signatureID:(id *)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/NSString-MailAdditions.h b/MailHeaders/Lion/Mail/NSString-MailAdditions.h new file mode 100644 index 00000000..97861c17 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSString-MailAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MailAdditions) +- (void)_drawInRect:(struct CGRect)arg1 font:(id)arg2 color:(id)arg3 truncate:(BOOL)arg4; +- (void)drawEtchedInRect:(struct CGRect)arg1 withTopColor:(id)arg2 bottomColor:(id)arg3 shadowBelow:(BOOL)arg4 font:(id)arg5 centered:(BOOL)arg6 flipped:(BOOL)arg7 truncate:(BOOL)arg8; +- (BOOL)doesMatchLocalizedDateName:(id)arg1; +- (BOOL)matchesLocalizedDateIntervalFrom:(id *)arg1 to:(id *)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/NSString-ToDoAdditions.h b/MailHeaders/Lion/Mail/NSString-ToDoAdditions.h new file mode 100644 index 00000000..b0909ad5 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSString-ToDoAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (ToDoAdditions) ++ (id)nodeIDForTodoID:(id)arg1 nodeClass:(id)arg2; +- (id)todoIDFromNodeID:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSTabViewDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSTabViewDelegate-Protocol.h new file mode 100644 index 00000000..d9b274e1 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTabViewDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSTabViewDelegate + +@optional +- (BOOL)tabView:(id)arg1 shouldSelectTabViewItem:(id)arg2; +- (void)tabView:(id)arg1 willSelectTabViewItem:(id)arg2; +- (void)tabView:(id)arg1 didSelectTabViewItem:(id)arg2; +- (void)tabViewDidChangeNumberOfTabViewItems:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSTableViewDataSource-Protocol.h b/MailHeaders/Lion/Mail/NSTableViewDataSource-Protocol.h new file mode 100644 index 00000000..7bcf8e12 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTableViewDataSource-Protocol.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSTableViewDataSource + +@optional +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (id)tableView:(id)arg1 pasteboardWriterForRow:(long long)arg2; +- (void)tableView:(id)arg1 draggingSession:(id)arg2 willBeginAtPoint:(struct CGPoint)arg3 forRowIndexes:(id)arg4; +- (void)tableView:(id)arg1 draggingSession:(id)arg2 endedAtPoint:(struct CGPoint)arg3 operation:(unsigned long long)arg4; +- (void)tableView:(id)arg1 updateDraggingItemsForDrag:(id)arg2; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (id)tableView:(id)arg1 namesOfPromisedFilesDroppedAtDestination:(id)arg2 forDraggedRowsWithIndexes:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/NSTableViewDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSTableViewDelegate-Protocol.h new file mode 100644 index 00000000..86877fa4 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTableViewDelegate-Protocol.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate-Protocol.h" + +@protocol NSTableViewDelegate + +@optional +- (id)tableView:(id)arg1 viewForTableColumn:(id)arg2 row:(long long)arg3; +- (id)tableView:(id)arg1 rowViewForRow:(long long)arg2; +- (void)tableView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (void)tableView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (BOOL)tableView:(id)arg1 shouldEditTableColumn:(id)arg2 row:(long long)arg3; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (BOOL)tableView:(id)arg1 shouldShowCellExpansionForTableColumn:(id)arg2 row:(long long)arg3; +- (BOOL)tableView:(id)arg1 shouldTrackCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 dataCellForTableColumn:(id)arg2 row:(long long)arg3; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (BOOL)tableView:(id)arg1 shouldSelectRow:(long long)arg2; +- (id)tableView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (BOOL)tableView:(id)arg1 shouldSelectTableColumn:(id)arg2; +- (void)tableView:(id)arg1 mouseDownInHeaderOfTableColumn:(id)arg2; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)tableView:(id)arg1 didDragTableColumn:(id)arg2; +- (double)tableView:(id)arg1 heightOfRow:(long long)arg2; +- (id)tableView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)tableView:(id)arg1 nextTypeSelectMatchFromRow:(long long)arg2 toRow:(long long)arg3 forString:(id)arg4; +- (BOOL)tableView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; +- (BOOL)tableView:(id)arg1 isGroupRow:(long long)arg2; +- (double)tableView:(id)arg1 sizeToFitWidthOfColumn:(long long)arg2; +- (BOOL)tableView:(id)arg1 shouldReorderColumn:(long long)arg2 toColumn:(long long)arg3; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)tableViewColumnDidMove:(id)arg1; +- (void)tableViewColumnDidResize:(id)arg1; +- (void)tableViewSelectionIsChanging:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSTextAttachmentCell-ForNeatAttachmentFeatures.h b/MailHeaders/Lion/Mail/NSTextAttachmentCell-ForNeatAttachmentFeatures.h new file mode 100644 index 00000000..6d417c68 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTextAttachmentCell-ForNeatAttachmentFeatures.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextAttachmentCell.h" + +@interface NSTextAttachmentCell (ForNeatAttachmentFeatures) +- (void)resetCursorAndToolTipRect:(struct CGRect)arg1 inView:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/NSTextDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSTextDelegate-Protocol.h new file mode 100644 index 00000000..58c86203 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTextDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSTextDelegate + +@optional +- (BOOL)textShouldBeginEditing:(id)arg1; +- (BOOL)textShouldEndEditing:(id)arg1; +- (void)textDidBeginEditing:(id)arg1; +- (void)textDidEndEditing:(id)arg1; +- (void)textDidChange:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSTextFieldCell-ShouldntTheAppKitBeDoingThis.h b/MailHeaders/Lion/Mail/NSTextFieldCell-ShouldntTheAppKitBeDoingThis.h new file mode 100644 index 00000000..aee955b1 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTextFieldCell-ShouldntTheAppKitBeDoingThis.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface NSTextFieldCell (ShouldntTheAppKitBeDoingThis) +- (void)selectWithFrame:(struct CGRect)arg1 inView:(id)arg2 editor:(id)arg3 delegate:(id)arg4 start:(long long)arg5 length:(long long)arg6; +@end + diff --git a/MailHeaders/Lion/Mail/NSTextFieldDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSTextFieldDelegate-Protocol.h new file mode 100644 index 00000000..1384c380 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTextFieldDelegate-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate-Protocol.h" + +@protocol NSTextFieldDelegate +@end + diff --git a/MailHeaders/Lion/Mail/NSTextInput-Protocol.h b/MailHeaders/Lion/Mail/NSTextInput-Protocol.h new file mode 100644 index 00000000..de4efa20 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTextInput-Protocol.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSTextInput +- (void)insertText:(id)arg1; +- (void)doCommandBySelector:(SEL)arg1; +- (void)setMarkedText:(id)arg1 selectedRange:(struct _NSRange)arg2; +- (void)unmarkText; +- (BOOL)hasMarkedText; +- (long long)conversationIdentifier; +- (id)attributedSubstringFromRange:(struct _NSRange)arg1; +- (struct _NSRange)markedRange; +- (struct _NSRange)selectedRange; +- (struct CGRect)firstRectForCharacterRange:(struct _NSRange)arg1; +- (unsigned long long)characterIndexForPoint:(struct CGPoint)arg1; +- (id)validAttributesForMarkedText; +@end + diff --git a/MailHeaders/Lion/Mail/NSTextInputClient-Protocol.h b/MailHeaders/Lion/Mail/NSTextInputClient-Protocol.h new file mode 100644 index 00000000..161ea017 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTextInputClient-Protocol.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSTextInputClient +- (void)insertText:(id)arg1 replacementRange:(struct _NSRange)arg2; +- (void)doCommandBySelector:(SEL)arg1; +- (void)setMarkedText:(id)arg1 selectedRange:(struct _NSRange)arg2 replacementRange:(struct _NSRange)arg3; +- (void)unmarkText; +- (struct _NSRange)selectedRange; +- (struct _NSRange)markedRange; +- (BOOL)hasMarkedText; +- (id)attributedSubstringForProposedRange:(struct _NSRange)arg1 actualRange:(struct _NSRange *)arg2; +- (id)validAttributesForMarkedText; +- (struct CGRect)firstRectForCharacterRange:(struct _NSRange)arg1 actualRange:(struct _NSRange *)arg2; +- (unsigned long long)characterIndexForPoint:(struct CGPoint)arg1; + +@optional +- (id)attributedString; +- (double)fractionOfDistanceThroughGlyphForPoint:(struct CGPoint)arg1; +- (double)baselineDeltaForCharacterAtIndex:(unsigned long long)arg1; +- (long long)windowLevel; +- (BOOL)drawsVerticallyForCharacterAtIndex:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSTextStorage-AttachmentAttrFixCategory.h b/MailHeaders/Lion/Mail/NSTextStorage-AttachmentAttrFixCategory.h new file mode 100644 index 00000000..16d20852 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTextStorage-AttachmentAttrFixCategory.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextStorage.h" + +@interface NSTextStorage (AttachmentAttrFixCategory) +- (void)fixAttributesInRange:(struct _NSRange)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSTextView-AtomicAddress.h b/MailHeaders/Lion/Mail/NSTextView-AtomicAddress.h new file mode 100644 index 00000000..1e1eb4af --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTextView-AtomicAddress.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextView.h" + +@interface NSTextView (AtomicAddress) +- (void)fixAtomSelectionForSelectionRange:(struct _NSRange)arg1; +- (void)fixJoiningOfSelectedAtoms; +@end + diff --git a/MailHeaders/Lion/Mail/NSTextView-FindPanelSupport.h b/MailHeaders/Lion/Mail/NSTextView-FindPanelSupport.h new file mode 100644 index 00000000..5fc7bfb4 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTextView-FindPanelSupport.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextView.h" + +@interface NSTextView (FindPanelSupport) +- (void)jumpToSelection:(id)arg1; +- (void)takeFindStringFromSelection:(id)arg1; +- (BOOL)findString:(id)arg1 options:(unsigned long long)arg2 wrap:(BOOL)arg3; +- (BOOL)canReplace; +- (unsigned long long)replaceString:(id)arg1 withString:(id)arg2 options:(unsigned long long)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/NSTextViewDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSTextViewDelegate-Protocol.h new file mode 100644 index 00000000..c80db278 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSTextViewDelegate-Protocol.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSTextViewDelegate + +@optional +- (BOOL)textView:(id)arg1 clickedOnLink:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)textView:(id)arg1 clickedOnCell:(id)arg2 inRect:(struct CGRect)arg3 atIndex:(unsigned long long)arg4; +- (void)textView:(id)arg1 doubleClickedOnCell:(id)arg2 inRect:(struct CGRect)arg3 atIndex:(unsigned long long)arg4; +- (void)textView:(id)arg1 draggedCell:(id)arg2 inRect:(struct CGRect)arg3 event:(id)arg4 atIndex:(unsigned long long)arg5; +- (id)textView:(id)arg1 writablePasteboardTypesForCell:(id)arg2 atIndex:(unsigned long long)arg3; +- (BOOL)textView:(id)arg1 writeCell:(id)arg2 atIndex:(unsigned long long)arg3 toPasteboard:(id)arg4 type:(id)arg5; +- (struct _NSRange)textView:(id)arg1 willChangeSelectionFromCharacterRange:(struct _NSRange)arg2 toCharacterRange:(struct _NSRange)arg3; +- (id)textView:(id)arg1 willChangeSelectionFromCharacterRanges:(id)arg2 toCharacterRanges:(id)arg3; +- (BOOL)textView:(id)arg1 shouldChangeTextInRanges:(id)arg2 replacementStrings:(id)arg3; +- (id)textView:(id)arg1 shouldChangeTypingAttributes:(id)arg2 toAttributes:(id)arg3; +- (void)textViewDidChangeSelection:(id)arg1; +- (void)textViewDidChangeTypingAttributes:(id)arg1; +- (id)textView:(id)arg1 willDisplayToolTip:(id)arg2 forCharacterAtIndex:(unsigned long long)arg3; +- (id)textView:(id)arg1 completions:(id)arg2 forPartialWordRange:(struct _NSRange)arg3 indexOfSelectedItem:(long long *)arg4; +- (BOOL)textView:(id)arg1 shouldChangeTextInRange:(struct _NSRange)arg2 replacementString:(id)arg3; +- (BOOL)textView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (long long)textView:(id)arg1 shouldSetSpellingState:(long long)arg2 range:(struct _NSRange)arg3; +- (id)textView:(id)arg1 menu:(id)arg2 forEvent:(id)arg3 atIndex:(unsigned long long)arg4; +- (id)textView:(id)arg1 willCheckTextInRange:(struct _NSRange)arg2 options:(id)arg3 types:(unsigned long long *)arg4; +- (id)textView:(id)arg1 didCheckTextInRange:(struct _NSRange)arg2 types:(unsigned long long)arg3 options:(id)arg4 results:(id)arg5 orthography:(id)arg6 wordCount:(long long)arg7; +- (id)textView:(id)arg1 URLForContentsOfTextAttachment:(id)arg2 atIndex:(unsigned long long)arg3; +- (BOOL)textView:(id)arg1 clickedOnLink:(id)arg2; +- (void)textView:(id)arg1 clickedOnCell:(id)arg2 inRect:(struct CGRect)arg3; +- (void)textView:(id)arg1 doubleClickedOnCell:(id)arg2 inRect:(struct CGRect)arg3; +- (void)textView:(id)arg1 draggedCell:(id)arg2 inRect:(struct CGRect)arg3 event:(id)arg4; +- (id)undoManagerForTextView:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSToolbar-MailAdditions.h b/MailHeaders/Lion/Mail/NSToolbar-MailAdditions.h new file mode 100644 index 00000000..1857753e --- /dev/null +++ b/MailHeaders/Lion/Mail/NSToolbar-MailAdditions.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSToolbar.h" + +@interface NSToolbar (MailAdditions) ++ (id)toolbarButtonTextFont; ++ (void)configureSegmentedItem:(id)arg1 withDictionary:(id)arg2 forSegment:(long long)arg3; ++ (id)segmentedItemForItemIdentifier:(id)arg1 withDictionary:(id)arg2; ++ (id)borderlessItemForItemIdentifier:(id)arg1 withDictionary:(id)arg2; ++ (id)darkGrayItemForItemIdentifier:(id)arg1 withDictionary:(id)arg2; ++ (id)segmentedOrBorderlessItemForItemIdentifier:(id)arg1 withDictionary:(id)arg2; +- (id)itemWithTag:(long long)arg1; +- (id)configureToolbarItems; +@end + diff --git a/MailHeaders/Lion/Mail/NSToolbarDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSToolbarDelegate-Protocol.h new file mode 100644 index 00000000..5ec2571e --- /dev/null +++ b/MailHeaders/Lion/Mail/NSToolbarDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSToolbarDelegate + +@optional +- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; +- (id)toolbarDefaultItemIdentifiers:(id)arg1; +- (id)toolbarAllowedItemIdentifiers:(id)arg1; +- (id)toolbarSelectableItemIdentifiers:(id)arg1; +- (void)toolbarWillAddItem:(id)arg1; +- (void)toolbarDidRemoveItem:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSURLConnectionDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSURLConnectionDelegate-Protocol.h new file mode 100644 index 00000000..c12b8458 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSURLConnectionDelegate-Protocol.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSURLConnectionDelegate + +@optional +- (id)connection:(id)arg1 willSendRequest:(id)arg2 redirectResponse:(id)arg3; +- (id)connection:(id)arg1 needNewBodyStream:(id)arg2; +- (BOOL)connection:(id)arg1 canAuthenticateAgainstProtectionSpace:(id)arg2; +- (void)connection:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (void)connection:(id)arg1 willSendRequestForAuthenticationChallenge:(id)arg2; +- (void)connection:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (BOOL)connectionShouldUseCredentialStorage:(id)arg1; +- (void)connection:(id)arg1 didReceiveResponse:(id)arg2; +- (void)connection:(id)arg1 didReceiveData:(id)arg2; +- (void)connection:(id)arg1 didSendBodyData:(long long)arg2 totalBytesWritten:(long long)arg3 totalBytesExpectedToWrite:(long long)arg4; +- (void)connectionDidFinishLoading:(id)arg1; +- (void)connection:(id)arg1 didFailWithError:(id)arg2; +- (id)connection:(id)arg1 willCacheResponse:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/NSUserDefaults-FontAdditions.h b/MailHeaders/Lion/Mail/NSUserDefaults-FontAdditions.h new file mode 100644 index 00000000..45637932 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSUserDefaults-FontAdditions.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSUserDefaults.h" + +@class NSDictionary, NSNumber, NSString; + +@interface NSUserDefaults (FontAdditions) +- (id)noteFont; +- (void)setNoteFont:(id)arg1; +- (id)messageListFont; +- (void)setMessageListFont:(id)arg1; +@property(retain) NSString *messageListFontName; +@property double messageListFontSize; +@property(readonly) NSString *defaultNoteFontName; +@property(readonly) NSNumber *defaultNoteFontSize; +@property(readonly) NSDictionary *defaultNoteFontAttributes; +- (id)defaultNoteMessageListFontName; +@end + diff --git a/MailHeaders/Lion/Mail/NSUserInterfaceValidations-Protocol.h b/MailHeaders/Lion/Mail/NSUserInterfaceValidations-Protocol.h new file mode 100644 index 00000000..90240cfb --- /dev/null +++ b/MailHeaders/Lion/Mail/NSUserInterfaceValidations-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSUserInterfaceValidations +- (BOOL)validateUserInterfaceItem:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSView-AttachmentDragSession.h b/MailHeaders/Lion/Mail/NSView-AttachmentDragSession.h new file mode 100644 index 00000000..6a5be717 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSView-AttachmentDragSession.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (AttachmentDragSession) +- (BOOL)isCurrentAttachmentDragSourceView; +@end + diff --git a/MailHeaders/Lion/Mail/NSView-FavoriteButtonAnimation.h b/MailHeaders/Lion/Mail/NSView-FavoriteButtonAnimation.h new file mode 100644 index 00000000..c0862449 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSView-FavoriteButtonAnimation.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (FavoriteButtonAnimation) +- (void)pauseAnimation; +- (void)resumeAnimation; +@end + diff --git a/MailHeaders/Lion/Mail/NSView-LocatingFrameViews.h b/MailHeaders/Lion/Mail/NSView-LocatingFrameViews.h new file mode 100644 index 00000000..af63ce2a --- /dev/null +++ b/MailHeaders/Lion/Mail/NSView-LocatingFrameViews.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (LocatingFrameViews) +- (id)enclosingFrameView; +- (id)enclosingWebView; +- (id)enclosingScrollViewIgnoringWebScrollbars; +@end + diff --git a/MailHeaders/Lion/Mail/NSView-MailAdditions.h b/MailHeaders/Lion/Mail/NSView-MailAdditions.h new file mode 100644 index 00000000..4a0231d7 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSView-MailAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MailAdditions) +- (id)newSnapshotWithRect:(struct CGRect)arg1; +- (id)newFullRenderedSnapshot; +- (id)newRenderedSnapshotWithRect:(struct CGRect)arg1 allowAlpha:(BOOL)arg2; +- (id)newSnapshotIgnoringSubviewsWithRect:(struct CGRect)arg1; +- (struct CGRect)rectInScreenCoords:(struct CGRect)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSView-MailClipViewAdditions.h b/MailHeaders/Lion/Mail/NSView-MailClipViewAdditions.h new file mode 100644 index 00000000..e847cddd --- /dev/null +++ b/MailHeaders/Lion/Mail/NSView-MailClipViewAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MailClipViewAdditions) +- (void)beginProgrammaticScroll; +- (void)endProgrammaticScroll; +- (BOOL)isProgrammaticScroll; +@end + diff --git a/MailHeaders/Lion/Mail/NSView-MailQuickLookAdditions.h b/MailHeaders/Lion/Mail/NSView-MailQuickLookAdditions.h new file mode 100644 index 00000000..0271549a --- /dev/null +++ b/MailHeaders/Lion/Mail/NSView-MailQuickLookAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MailQuickLookAdditions) +- (struct CGRect)quickLookRectForFrame:(struct CGRect)arg1; +- (id)quickLookTransitionImage; +@end + diff --git a/MailHeaders/Lion/Mail/NSView-MailSplitViewAdditions.h b/MailHeaders/Lion/Mail/NSView-MailSplitViewAdditions.h new file mode 100644 index 00000000..b8430dee --- /dev/null +++ b/MailHeaders/Lion/Mail/NSView-MailSplitViewAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MailSplitViewAdditions) +- (void)_mv_hideAllScrollersWithContext:(id)arg1; +- (void)_mv_unhideAllScrollersWithContext:(id)arg1; +- (void)_mv_unhideAllScrollersNow; +- (void)mv_hideAllScrollers; +- (void)mv_unhideAllScrollers; +@end + diff --git a/MailHeaders/Lion/Mail/NSView-MailToolbarBaselineView.h b/MailHeaders/Lion/Mail/NSView-MailToolbarBaselineView.h new file mode 100644 index 00000000..bfea9d69 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSView-MailToolbarBaselineView.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MailToolbarBaselineView) +- (id)toolbarBaselineColorForceMain:(BOOL)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSView-ResizingAnimation.h b/MailHeaders/Lion/Mail/NSView-ResizingAnimation.h new file mode 100644 index 00000000..8db359f6 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSView-ResizingAnimation.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (ResizingAnimation) +- (void)setFrame:(struct CGRect)arg1 animate:(BOOL)arg2; +- (void)setFrame:(struct CGRect)arg1 animate:(BOOL)arg2 repositionOtherSiblings:(BOOL)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/NSView-RichTableCellView.h b/MailHeaders/Lion/Mail/NSView-RichTableCellView.h new file mode 100644 index 00000000..1406854b --- /dev/null +++ b/MailHeaders/Lion/Mail/NSView-RichTableCellView.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (RichTableCellView) +- (id)mv_menuForEvent:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSView-SlidingExtras.h b/MailHeaders/Lion/Mail/NSView-SlidingExtras.h new file mode 100644 index 00000000..4bc01e21 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSView-SlidingExtras.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (SlidingExtras) +- (struct CGRect)slidingFrame; +- (void)setSlidingFrame:(struct CGRect)arg1; +- (void)setFrameWithRedraw:(struct CGRect)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NSView-TilingSupport.h b/MailHeaders/Lion/Mail/NSView-TilingSupport.h new file mode 100644 index 00000000..7aa50f46 --- /dev/null +++ b/MailHeaders/Lion/Mail/NSView-TilingSupport.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (TilingSupport) +- (void)adjustForTilingView:(id)arg1 oldSize:(struct CGSize)arg2 minimumHeight:(double)arg3; +- (double)desiredWidth; +@end + diff --git a/MailHeaders/Lion/Mail/NSWindow-BetterDescription.h b/MailHeaders/Lion/Mail/NSWindow-BetterDescription.h new file mode 100644 index 00000000..def7396c --- /dev/null +++ b/MailHeaders/Lion/Mail/NSWindow-BetterDescription.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface NSWindow (BetterDescription) +- (id)debugDescription; +@end + diff --git a/MailHeaders/Lion/Mail/NSWindow-MailWindowAdditions.h b/MailHeaders/Lion/Mail/NSWindow-MailWindowAdditions.h new file mode 100644 index 00000000..5392764d --- /dev/null +++ b/MailHeaders/Lion/Mail/NSWindow-MailWindowAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface NSWindow (MailWindowAdditions) ++ (void)updateMailPreferredBackingLocationFromDefaults; +- (void)_setMailDeferredBackingLocationFromDefaults; +- (void)setMailPreferredBackingLocationFromDefaults; +@end + diff --git a/MailHeaders/Lion/Mail/NSWindowDelegate-Protocol.h b/MailHeaders/Lion/Mail/NSWindowDelegate-Protocol.h new file mode 100644 index 00000000..cbd1ed6d --- /dev/null +++ b/MailHeaders/Lion/Mail/NSWindowDelegate-Protocol.h @@ -0,0 +1,58 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSWindowDelegate + +@optional +- (BOOL)windowShouldClose:(id)arg1; +- (id)windowWillReturnFieldEditor:(id)arg1 toObject:(id)arg2; +- (struct CGSize)windowWillResize:(id)arg1 toSize:(struct CGSize)arg2; +- (struct CGRect)windowWillUseStandardFrame:(id)arg1 defaultFrame:(struct CGRect)arg2; +- (BOOL)windowShouldZoom:(id)arg1 toFrame:(struct CGRect)arg2; +- (id)windowWillReturnUndoManager:(id)arg1; +- (struct CGRect)window:(id)arg1 willPositionSheet:(id)arg2 usingRect:(struct CGRect)arg3; +- (BOOL)window:(id)arg1 shouldPopUpDocumentPathMenu:(id)arg2; +- (BOOL)window:(id)arg1 shouldDragDocumentWithEvent:(id)arg2 from:(struct CGPoint)arg3 withPasteboard:(id)arg4; +- (struct CGSize)window:(id)arg1 willUseFullScreenContentSize:(struct CGSize)arg2; +- (unsigned long long)window:(id)arg1 willUseFullScreenPresentationOptions:(unsigned long long)arg2; +- (id)customWindowsToEnterFullScreenForWindow:(id)arg1; +- (void)window:(id)arg1 startCustomAnimationToEnterFullScreenWithDuration:(double)arg2; +- (void)windowDidFailToEnterFullScreen:(id)arg1; +- (id)customWindowsToExitFullScreenForWindow:(id)arg1; +- (void)window:(id)arg1 startCustomAnimationToExitFullScreenWithDuration:(double)arg2; +- (void)windowDidFailToExitFullScreen:(id)arg1; +- (struct CGSize)window:(id)arg1 willResizeForVersionBrowserWithMaxPreferredSize:(struct CGSize)arg2 maxAllowedSize:(struct CGSize)arg3; +- (void)window:(id)arg1 willEncodeRestorableState:(id)arg2; +- (void)window:(id)arg1 didDecodeRestorableState:(id)arg2; +- (void)windowDidResize:(id)arg1; +- (void)windowDidExpose:(id)arg1; +- (void)windowWillMove:(id)arg1; +- (void)windowDidMove:(id)arg1; +- (void)windowDidBecomeKey:(id)arg1; +- (void)windowDidResignKey:(id)arg1; +- (void)windowDidBecomeMain:(id)arg1; +- (void)windowDidResignMain:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)windowWillMiniaturize:(id)arg1; +- (void)windowDidMiniaturize:(id)arg1; +- (void)windowDidDeminiaturize:(id)arg1; +- (void)windowDidUpdate:(id)arg1; +- (void)windowDidChangeScreen:(id)arg1; +- (void)windowDidChangeScreenProfile:(id)arg1; +- (void)windowWillBeginSheet:(id)arg1; +- (void)windowDidEndSheet:(id)arg1; +- (void)windowWillStartLiveResize:(id)arg1; +- (void)windowDidEndLiveResize:(id)arg1; +- (void)windowWillEnterFullScreen:(id)arg1; +- (void)windowDidEnterFullScreen:(id)arg1; +- (void)windowWillExitFullScreen:(id)arg1; +- (void)windowDidExitFullScreen:(id)arg1; +- (void)windowWillEnterVersionBrowser:(id)arg1; +- (void)windowDidEnterVersionBrowser:(id)arg1; +- (void)windowWillExitVersionBrowser:(id)arg1; +- (void)windowDidExitVersionBrowser:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/NetscapeEmailImporter.h b/MailHeaders/Lion/Mail/NetscapeEmailImporter.h new file mode 100644 index 00000000..cb22beeb --- /dev/null +++ b/MailHeaders/Lion/Mail/NetscapeEmailImporter.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +@interface NetscapeEmailImporter : FilesystemEmailImporter +{ +} + ++ (id)name; ++ (id)explanatoryText; +- (id)pathExtensions; +- (char *)fromString; + +@end + diff --git a/MailHeaders/Lion/Mail/NewMessageAttachmentAutoTest.h b/MailHeaders/Lion/Mail/NewMessageAttachmentAutoTest.h new file mode 100644 index 00000000..803e4d4f --- /dev/null +++ b/MailHeaders/Lion/Mail/NewMessageAttachmentAutoTest.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NewMessageAutoTest.h" + +@interface NewMessageAttachmentAutoTest : NewMessageAutoTest +{ +} + +- (id)init; +- (void)setUp; +- (void)tearDown; +- (id)messageTitle; +- (void)addContentToWebView:(id)arg1 andEditor:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/NewMessageAutoTest.h b/MailHeaders/Lion/Mail/NewMessageAutoTest.h new file mode 100644 index 00000000..ef56c15f --- /dev/null +++ b/MailHeaders/Lion/Mail/NewMessageAutoTest.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailAutoTest.h" + +@interface NewMessageAutoTest : MailAutoTest +{ +} + +- (id)init; +- (id)messageTitle; +- (void)addContentToWebView:(id)arg1 andEditor:(id)arg2; +- (void)setUp; +- (void)performTest; +- (void)tearDown; + +@end + diff --git a/MailHeaders/Lion/Mail/NoteComposeBackEnd.h b/MailHeaders/Lion/Mail/NoteComposeBackEnd.h new file mode 100644 index 00000000..989a4a85 --- /dev/null +++ b/MailHeaders/Lion/Mail/NoteComposeBackEnd.h @@ -0,0 +1,44 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ComposeBackEnd.h" + +@class MailAccount, NSString; + +@interface NoteComposeBackEnd : ComposeBackEnd +{ + MailAccount *_account; + NSString *_summary; + NSString *_creationDateHeader; + NSString *_backgroundColor; +} + ++ (void)initialize; ++ (id)supportedMailboxUidTypes; +- (void)dealloc; +- (id)description; +- (void)setStateFromBackEnd:(id)arg1; +- (BOOL)isExchangeNote; +- (BOOL)preserveAddedArchiveBody; +- (BOOL)defaultFormatIsRich; +- (id)account; +- (void)setAccount:(id)arg1; +- (id)mailboxUidCreateIfNeeded:(BOOL)arg1; +- (void)setSubject:(id)arg1; +- (id)htmlDocumentForSave; +- (id)htmlStringFromRange:(id)arg1 htmlDocument:(id)arg2 removeCustomAttributes:(BOOL)arg3 convertObjectsToImages:(BOOL)arg4 convertEditableElements:(BOOL)arg5; +- (id)outgoingMessageUsingWriter:(id)arg1 contents:(id)arg2 headers:(id)arg3 isDraft:(BOOL)arg4 shouldBePlainText:(BOOL)arg5; +- (id)saveTaskName; +- (BOOL)restoredMessageIsRich; +- (BOOL)containsRichText; +- (void)finishPreparingContentWithEditorSettings:(id)arg1; +@property(copy, nonatomic) NSString *summary; +- (id)_generatedSubject; +@property(retain, nonatomic) NSString *backgroundColor; // @synthesize backgroundColor=_backgroundColor; +@property(retain) NSString *creationDateHeader; // @synthesize creationDateHeader=_creationDateHeader; + +@end + diff --git a/MailHeaders/Lion/Mail/NoteDisplay.h b/MailHeaders/Lion/Mail/NoteDisplay.h new file mode 100644 index 00000000..36f3bfc8 --- /dev/null +++ b/MailHeaders/Lion/Mail/NoteDisplay.h @@ -0,0 +1,60 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MessageContentDisplay-Protocol.h" + +@class NSView, WebView; + +@interface NoteDisplay : NSObject +{ + WebView *_noteView; + double _minimumHeight; + NSView *_accessibilityLinkedView; +} + +- (BOOL)prepareForMessage:(id)arg1 viewingState:(id)arg2; +- (BOOL)bringYourOwnScrollbars; +- (void)loadMessageBody; +- (void)clearDisplayChangedInvocation; +- (void)display:(id)arg1 inContainerView:(id)arg2 invokeWhenDisplayChanged:(id)arg3 loadBody:(BOOL)arg4; +- (void)makeMessageBeFirstResponder; +- (void)prepareToRemoveView; +- (id)selectedText; +- (void)dealloc; +- (id)subviewToLink; +- (void)_setUpAccessibilityLinks; +- (void)removeAccessibilityLinks; +- (void)setUpAccessibilityLinksFromView:(id)arg1; +- (void)documentResized; +- (id)contentView; +- (id)viewForKeyViewLoop; +- (id)textView; +- (id)selectedTextRepresentation; +- (void)setSelectedTextRepresentation:(id)arg1; +- (id)selectionParsedMessage; +- (id)attachmentsInSelection; +- (id)parsedMessage; +- (void)highlightSearchText:(id)arg1; +- (void)adjustFontSizeBy:(long long)arg1 viewingState:(id)arg2; +- (id)findTarget; +- (void)detectDataInMessage:(id)arg1 usingContext:(id)arg2; +- (void)cancelDataDetection; +- (void)setShouldBecomeFirstResponder:(BOOL)arg1; +- (void)informDataDetectorsThatViewDidAppear; +- (void)informDataDetectorsThatViewWillDisappear; +@property double minimumHeight; // @synthesize minimumHeight=_minimumHeight; +@property(retain) WebView *noteView; // @synthesize noteView=_noteView; + +// Remaining properties +@property BOOL displayAsSingleMessage; +@property(nonatomic) BOOL isForPrinting; +@property BOOL isSelected; +@property id parentController; + +@end + diff --git a/MailHeaders/Lion/Mail/NoteDocumentEditor.h b/MailHeaders/Lion/Mail/NoteDocumentEditor.h new file mode 100644 index 00000000..aca4717d --- /dev/null +++ b/MailHeaders/Lion/Mail/NoteDocumentEditor.h @@ -0,0 +1,99 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DocumentEditor.h" + +@class MailDocumentEditor, NSNotification, NSString; + +@interface NoteDocumentEditor : DocumentEditor +{ + MailDocumentEditor *_mailEditor; + id _webViewPolicyDelegate; + struct { + unsigned int isFirstView:1; + unsigned int isLastView:1; + unsigned int isEditingPaused:1; + unsigned int isClosed:1; + unsigned int preventClose:1; + unsigned int otherEditorHasChanges:1; + unsigned int isReadOnly:1; + unsigned int contentIsPrepared:1; + } _noteFlags; +} + ++ (BOOL)usesCustomScroller; ++ (BOOL)documentType; ++ (id)documentEditors; ++ (id)documentWebPreferencesIdentifierForRichText:(BOOL)arg1; ++ (void)restoreDraftMessage:(id)arg1 withSavedState:(id)arg2; ++ (id)createEditorWithSettings:(id)arg1; ++ (id)createEditorWithEditor:(id)arg1; ++ (id)editorForNote:(id)arg1; ++ (id)editorForNote:(id)arg1 forSingleMessageViewer:(BOOL)arg2; ++ (id)editorWithSettings:(id)arg1; ++ (id)_editorWithSettings:(id)arg1 forSingleMessageViewer:(BOOL)arg2; +- (id)webViewEditor; +@property BOOL otherEditorHasChanges; +@property BOOL isReadOnly; +@property BOOL isFirstView; +@property BOOL isLastView; +@property BOOL isEditingPaused; +@property BOOL isClosed; +@property BOOL preventClose; +@property BOOL contentIsPrepared; +@property(readonly) BOOL isSelectionEditable; +- (void)showPrintPanel:(id)arg1; +- (void)_printOperationDidRun:(id)arg1 success:(BOOL)arg2 contextInfo:(void *)arg3; +- (id)initWithType:(int)arg1 settings:(id)arg2 backEnd:(id)arg3; +- (id)loadInterfaceOperation; +- (void)prepareContent; +- (void)_loadNotePaperIntoWebView:(id)arg1; +- (void)finishLoadingEditor; +- (BOOL)windowShouldClose:(id)arg1; +- (void)didLoadNotePaperIntoWebView:(id)arg1; +- (BOOL)load; +- (BOOL)shouldRecordTypeAheadEvents; +- (BOOL)shouldDisplayInspectorBar; +@property(readonly) NSNotification *documentModifiedNotification; +@property(readonly) NSString *editorID; +- (void)_documentClosed:(id)arg1; +- (void)_documentModified:(id)arg1; +- (void)beginDocumentMove; +- (void)endDocumentMove; +- (id)loadInitialDocumentOperation; +- (void)_setMailEditor:(id)arg1; +- (void)dealloc; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (BOOL)canSave; +- (void)pauseEditing; +- (void)resumeEditing; +- (void)webViewDidChange:(id)arg1; +- (void)_backupWebViewDelegates; +- (void)_restoreWebViewDelegates; +- (id)resource; +- (id)_frameSaveName; +- (id)contentWebFrame; +- (void)composePrefsChanged; +- (void)reportSaveFailure:(id)arg1; +- (void)_mailAccountsDidChange:(id)arg1; +- (id)findTarget; +- (Class)backEndClass; +- (long long)editorSharedNib; +- (id)toolbarIdentifier; +- (void)_documentsWillBeginTransfer:(id)arg1; +- (void)_documentsDidEndTransfer:(id)arg1; +- (void)editorDidLoad:(id)arg1; +- (void)editorFailedLoad:(id)arg1; +- (void)show; +- (void)windowWillClose:(id)arg1; +- (id)mailAttachmentsAdded:(id)arg1; +- (void)backEndDidLoadInitialContent:(id)arg1; +- (void)_updateScrollerStyle; +- (void)send:(id)arg1; +- (BOOL)_sendButtonShouldBeEnabled; + +@end + diff --git a/MailHeaders/Lion/Mail/NoteScrollBarsView.h b/MailHeaders/Lion/Mail/NoteScrollBarsView.h new file mode 100644 index 00000000..c02640b3 --- /dev/null +++ b/MailHeaders/Lion/Mail/NoteScrollBarsView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebDynamicScrollBarsView.h" + +@interface NoteScrollBarsView : WebDynamicScrollBarsView +{ +} + ++ (Class)_verticalScrollerClass; +- (void)setDrawsBackground:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/NoteScroller.h b/MailHeaders/Lion/Mail/NoteScroller.h new file mode 100644 index 00000000..440bf170 --- /dev/null +++ b/MailHeaders/Lion/Mail/NoteScroller.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSScroller.h" + +@interface NoteScroller : NSScroller +{ +} + ++ (void)initialize; ++ (double)scrollerWidth; ++ (double)scrollerWidthForControlSize:(unsigned long long)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)setFrame:(struct CGRect)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (void)drawKnob; +- (struct CGRect)adjustRect:(struct CGRect)arg1 forPart:(unsigned long long)arg2; +- (struct CGRect)rectForPart:(unsigned long long)arg1; +- (unsigned long long)testPart:(struct CGPoint)arg1; +- (struct CGRect)_drawingRectForPart:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/NoteView.h b/MailHeaders/Lion/Mail/NoteView.h new file mode 100644 index 00000000..f14169e3 --- /dev/null +++ b/MailHeaders/Lion/Mail/NoteView.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class WebView; + +@interface NoteView : NSView +{ + WebView *_webView; +} + ++ (double)margin; ++ (BOOL)isNoteURL:(id)arg1; ++ (double)ruleHeight; ++ (id)ruleColor; ++ (id)opaqueRuleColor; ++ (id)redLineColor; ++ (id)stationeryBlueLineGIFData; ++ (void)setStationeryBlueLineGIFData:(id)arg1; ++ (id)stationeryRedLinesGIFData; ++ (void)setStationeryRedLinesGIFData:(id)arg1; ++ (id)stationeryPaddingTop; ++ (void)setStationeryPaddingTop:(id)arg1; ++ (id)blueLineImageWithSize:(struct CGSize)arg1 lineThickness:(double)arg2 lineColor:(id)arg3 imageType:(unsigned long long)arg4; ++ (id)redLinesImageWithSize:(struct CGSize)arg1 lineThickness:(double)arg2; ++ (id)blueLineImageStringForHeight:(id)arg1; ++ (void)updateFontAndRule:(id)arg1; +- (id)webView; +- (void)setWebView:(id)arg1; +- (void)setFrame:(struct CGRect)arg1; +- (BOOL)isFlipped; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Lion/Mail/NoteWebViewEditor.h b/MailHeaders/Lion/Mail/NoteWebViewEditor.h new file mode 100644 index 00000000..5c3fbd48 --- /dev/null +++ b/MailHeaders/Lion/Mail/NoteWebViewEditor.h @@ -0,0 +1,65 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebViewEditor.h" + +#import "NSAnimationDelegate-Protocol.h" + +@class DOMHTMLDocument, DOMRange, NSString, NSUndoManager, WebHTMLView; + +@interface NoteWebViewEditor : WebViewEditor +{ + WebHTMLView *_documentView; + NSUndoManager *_undoManager; + BOOL _isReadOnly; +} + +- (id)messageController; +- (BOOL)useDesignMode; +@property(readonly) BOOL hasContent; +@property(readonly) DOMHTMLDocument *contentDocument; +@property(readonly) DOMRange *userContentRange; +- (void)pauseEditing; +- (void)resumeEditing; +@property NSString *documentColor; +- (void)goReadOnly; +- (BOOL)thawToDos; +- (void)addTitle:(id)arg1; +- (void)addEmptyFooter; +- (void)appendText:(id)arg1; +- (void)clearSelection; +- (void)setInitialSelection; +- (void)setUp; +- (void)close; +- (void)minimizeContentElement; +- (void)maximizeContentElement; +- (BOOL)isEditingPaused; +- (void)_webViewFrameChanged:(id)arg1; +- (void)webViewWillStartLiveResize:(id)arg1; +- (void)webViewDidEndLiveResize:(id)arg1; +- (id)webView:(id)arg1 contextMenuItemsForElement:(id)arg2 defaultMenuItems:(id)arg3; +@property(readonly) WebHTMLView *documentView; +- (void)dealloc; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)_removeStyleFromMicrosoftExchangeContent; +- (id)undoManagerForWebView:(id)arg1; +- (void)removeAllFormattingFromWebView; +- (id)alertForConvertingToRichText; +- (BOOL)adjustFontStyle:(id)arg1 beforeApplyingToElementsInDOMRange:(id)arg2; +- (BOOL)webView:(id)arg1 shouldApplyStyle:(id)arg2 toElementsInDOMRange:(id)arg3; +- (void)continueShouldApplyStyle:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (BOOL)webView:(id)arg1 shouldInsertAttachments:(id)arg2 context:(id)arg3; +- (void)_continueShouldInsertAttachments:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (BOOL)webView:(id)arg1 shouldMoveRangeAfterDelete:(id)arg2 replacingRange:(id)arg3; +- (BOOL)webViewShouldReplaceSelectionWithContentsOfWebpage:(id)arg1; +- (void)moveSelectionToEndOfDocument:(id)arg1; +- (void)moveSelectionToStartOfDocument:(id)arg1; +- (void)growSelection:(id)arg1; +@property BOOL isReadOnly; // @synthesize isReadOnly=_isReadOnly; +@property(retain) NSUndoManager *undoManager; // @synthesize undoManager=_undoManager; + +@end + diff --git a/MailHeaders/Lion/Mail/NoteWindow.h b/MailHeaders/Lion/Mail/NoteWindow.h new file mode 100644 index 00000000..1be93f5d --- /dev/null +++ b/MailHeaders/Lion/Mail/NoteWindow.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "TypeAheadWindow.h" + +@interface NoteWindow : TypeAheadWindow +{ +} + +@property BOOL isFloating; +- (void)setToolbar:(id)arg1; +- (void)makeKeyAndOrderFront:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/NoteWindowContentView.h b/MailHeaders/Lion/Mail/NoteWindowContentView.h new file mode 100644 index 00000000..78feed1b --- /dev/null +++ b/MailHeaders/Lion/Mail/NoteWindowContentView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class WebView; + +@interface NoteWindowContentView : NSView +{ + WebView *_webView; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Lion/Mail/OofPanelController.h b/MailHeaders/Lion/Mail/OofPanelController.h new file mode 100644 index 00000000..3089dd6e --- /dev/null +++ b/MailHeaders/Lion/Mail/OofPanelController.h @@ -0,0 +1,55 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "AccountInfoTabOwner-Protocol.h" +#import "NSDatePickerCellDelegate-Protocol.h" + +@class ColorBackgroundView, EWSAccount, EditingWebMessageController, NSButton, NSDate, NSDatePicker, NSPopUpButton, NSProgressIndicator, NSView, WebView; + +@interface OofPanelController : NSObject +{ + NSView *_view; + NSButton *_oofEnabledCheckbox; + NSButton *_okButton; + NSProgressIndicator *_getOofSettingsIndicator; + NSPopUpButton *_scheduleMenu; + NSDatePicker *_startTimePicker; + NSDatePicker *_endTimePicker; + ColorBackgroundView *_internalWebViewBackground; + ColorBackgroundView *_externalWebViewBackground; + WebView *_internalWebView; + WebView *_externalWebView; + EditingWebMessageController *_internalController; + EditingWebMessageController *_externalController; + EWSAccount *_account; + NSDate *_startTime; + NSDate *_endTime; +} + +- (id)initWithAccount:(id)arg1; +- (id)init; +- (void)awakeFromNib; +- (void)dealloc; +- (void)toggleOofEnabled:(id)arg1; +- (void)scheduleMenuChanged:(id)arg1; +- (void)showOutOfOfficeSettings; +- (void)_handleOutOfOfficeSettings:(id)arg1; +- (void)_setEnabledForInterfaceElements:(BOOL)arg1; +- (void)_updateWebView:(id)arg1 content:(id)arg2; +- (void)accountInfoWillHideView:(id)arg1; +- (void)accountInfoWillShowView:(id)arg1; +- (id)view; +- (void)webView:(id)arg1 didFailLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didFailProvisionalLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)datePickerCell:(id)arg1 validateProposedDateValue:(id *)arg2 timeInterval:(double *)arg3; +@property(retain) NSDate *endTime; // @synthesize endTime=_endTime; +@property(retain) NSDate *startTime; // @synthesize startTime=_startTime; +@property(retain) EWSAccount *account; // @synthesize account=_account; + +@end + diff --git a/MailHeaders/Lion/Mail/OptionalView.h b/MailHeaders/Lion/Mail/OptionalView.h new file mode 100644 index 00000000..da7aebc5 --- /dev/null +++ b/MailHeaders/Lion/Mail/OptionalView.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@class NSButton; + +@interface OptionalView : NSView +{ + NSButton *_optionSwitch; + NSView *_primaryView; + struct CGRect _originalFrame; + BOOL _isResizing; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (void)awakeFromNib; +- (void)didAddSubview:(id)arg1; +- (void)willRemoveSubview:(id)arg1; +- (void)_subviewFrameDidChange:(id)arg1; +- (id)primaryView; +- (BOOL)isFlipped; +- (BOOL)isOpaque; +- (void)drawRect:(struct CGRect)arg1; +- (id)optionSwitch; +- (void)sizeToFit; +- (double)widthIncludingOptionSwitch:(BOOL)arg1; +- (double)widthOffsetIncludingOptionSwitch:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/OutlineViewProgressIndicatorsController.h b/MailHeaders/Lion/Mail/OutlineViewProgressIndicatorsController.h new file mode 100644 index 00000000..b6b98e5f --- /dev/null +++ b/MailHeaders/Lion/Mail/OutlineViewProgressIndicatorsController.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableDictionary, NSMutableSet, NSOutlineView; + +@interface OutlineViewProgressIndicatorsController : NSObject +{ + NSOutlineView *_outlineView; + NSMutableDictionary *_progressIndicators; + NSMutableDictionary *_fractionsDone; + NSMutableDictionary *_origins; + NSMutableDictionary *_roundDeterminateColors; + NSMutableSet *_scheduledUpdates; + NSMutableSet *_scheduledRemovals; + BOOL _updateScheduled; +} + +- (id)init; +- (id)initWithOutlineView:(id)arg1; +- (void)dealloc; +- (void)showIndeterminateProgressIndicatorForItem:(id)arg1; +- (void)showDeterminateProgressIndicatorForItem:(id)arg1 fractionDone:(double)arg2; +- (void)removeProgressIndicatorForItem:(id)arg1; +- (void)removeOrphanProgressIndicators; +- (void)positionProgressIndicatorForItem:(id)arg1 inRect:(struct CGRect)arg2; +- (void)setRoundDeterminateColor:(id)arg1 forProgressIndicatorForItem:(id)arg2; +- (id)_keyForItem:(id)arg1; +- (id)_itemForKey:(id)arg1; +- (id)_progressIndicatorForKey:(id)arg1 createIfNeeded:(BOOL)arg2; +- (void)_setNeedsToUpdateProgressIndicatorForKey:(id)arg1; +- (void)_setNeedsToRemoveProgressIndicatorForKey:(id)arg1; +- (void)_scheduleUpdate; +- (void)_processUpdates; +- (void)_updateProgressIndicatorForKey:(id)arg1; +- (void)_removeProgressIndicatorForKey:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/PDFAttachmentView.h b/MailHeaders/Lion/Mail/PDFAttachmentView.h new file mode 100644 index 00000000..85832d87 --- /dev/null +++ b/MailHeaders/Lion/Mail/PDFAttachmentView.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "PDFView.h" + +@class MessageAttachmentViewController; + +@interface PDFAttachmentView : PDFView +{ + MessageAttachmentViewController *_attachmentViewController; + struct CGSize _documentSize; + BOOL _isSizingToFit; +} + ++ (void)initialize; ++ (id)viewForAttachmentViewController:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1 viewController:(id)arg2; +- (id)initWithFrame:(struct CGRect)arg1; +- (BOOL)doDrawPageContent; +- (BOOL)_isForEditing; +- (BOOL)shouldDisplayInline; +- (struct CGSize)desiredSizeWithMaximumWidth:(double)arg1; +- (id)menuForEvent:(id)arg1; +- (void)dealloc; +- (void)sizeToFit; +- (void)_scaleFactorDidChange:(id)arg1; +- (void)_pageDidChange:(id)arg1; +- (void)setDisplayMode:(long long)arg1; +- (void)documentDidUnlock:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)mouseDragged:(id)arg1; +@property MessageAttachmentViewController *attachmentViewController; // @synthesize attachmentViewController=_attachmentViewController; + +@end + diff --git a/MailHeaders/Lion/Mail/POPAccountDetails.h b/MailHeaders/Lion/Mail/POPAccountDetails.h new file mode 100644 index 00000000..f5f430f5 --- /dev/null +++ b/MailHeaders/Lion/Mail/POPAccountDetails.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "AccountDetails.h" + +@class NSButton, NSPopUpButton, NSTextField; + +@interface POPAccountDetails : AccountDetails +{ + NSButton *_deleteMessagesOnServer; + NSTextField *_bigMessageWarningSize; + NSButton *_removeSeenMessagesButton; + NSPopUpButton *_removeIntervalPopup; +} + +- (id)init; +- (void)dealloc; +- (Class)accountClass; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (int)_popDeletionPolicyFromUI; +- (void)setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)_confirmDeleteSheetDidEnd:(id)arg1 returnValue:(long long)arg2 sender:(id)arg3; +- (void)warnIfDeleteMessages:(id)arg1; +- (void)deleteSeenMessagesNow:(id)arg1; +- (void)_deleteSeenMessagesSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)removeMessagesButtonClicked:(id)arg1; +- (void)_deleteServerMessagesCompleted:(id)arg1; +- (void)_deleteServerMessagesStarted:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/POPAccountSpecialMailboxes.h b/MailHeaders/Lion/Mail/POPAccountSpecialMailboxes.h new file mode 100644 index 00000000..47d5e5aa --- /dev/null +++ b/MailHeaders/Lion/Mail/POPAccountSpecialMailboxes.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "SpecialMailboxes.h" + +@class NSButton; + +@interface POPAccountSpecialMailboxes : SpecialMailboxes +{ + NSButton *_trashCheckbox; + BOOL _moveDeletedMessagesToTrash; +} + +- (id)init; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (BOOL)setupAccountFromValuesInUI:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +@property(nonatomic) BOOL moveDeletedMessagesToTrash; // @synthesize moveDeletedMessagesToTrash=_moveDeletedMessagesToTrash; + +@end + diff --git a/MailHeaders/Lion/Mail/POPQuota.h b/MailHeaders/Lion/Mail/POPQuota.h new file mode 100644 index 00000000..79cb9c4a --- /dev/null +++ b/MailHeaders/Lion/Mail/POPQuota.h @@ -0,0 +1,54 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "Quota.h" + +#import "NSTableViewDataSource-Protocol.h" +#import "NSTableViewDelegate-Protocol.h" + +@class NSButton, NSMutableArray, NSMutableAttributedString, NSMutableDictionary, NSPopUpButton; + +@interface POPQuota : Quota +{ + NSPopUpButton *_showMessagesPopup; + NSButton *_deleteButton; + NSMutableAttributedString *_truncatedString; + NSMutableDictionary *_truncatedParagraphStyle; + struct QuotaSimpleSortDescriptor _simpleSortDescs[5]; + NSMutableArray *_messageIDs; +} + +- (id)initWithAccount:(id)arg1; +- (void)awakeFromNib; +- (void)dealloc; +- (Class)engineClass; +- (void)deleteFromServer:(id)arg1; +- (void)_deleteMessagesSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (BOOL)_shouldShowMessage:(id)arg1 showMessageType:(long long)arg2; +- (id)_filterMessages:(id)arg1 showMessageType:(long long)arg2; +- (void)_updateUsageField; +- (void)showMessagesPopupChanged:(id)arg1; +- (id)_account; +- (void)engineDidStart; +- (void)engineDidFinish; +- (void)engineUpdated:(id)arg1; +- (unsigned long long)numberOfSortDescriptors; +- (const struct QuotaSimpleSortDescriptor *)sortDescriptorAtIndex:(unsigned long long)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)_truncatedAttributedStringForString:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)_syncSortDescriptors; +- (void)_resortMessages; +- (long long)_addMessage:(id)arg1; +- (BOOL)_updateMessage:(id)arg1; +- (void)_deleteServerMessagesStarted:(id)arg1; +- (void)_deleteServerMessagesCompleted:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/PaddingLinkTextField.h b/MailHeaders/Lion/Mail/PaddingLinkTextField.h new file mode 100644 index 00000000..e8515c89 --- /dev/null +++ b/MailHeaders/Lion/Mail/PaddingLinkTextField.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextField.h" + +@class NSAttributedString, NSShadow, NSTrackingArea; + +@interface PaddingLinkTextField : NSTextField +{ + NSShadow *_textShadow; + NSAttributedString *_noUnderlineAttributedString; + NSAttributedString *_underlineAttributedString; + NSTrackingArea *_trackingArea; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (void)updateTrackingAreas; +- (void)drawRect:(struct CGRect)arg1; +- (void)setStringValue:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)mouseUp:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/PaddingView.h b/MailHeaders/Lion/Mail/PaddingView.h new file mode 100644 index 00000000..f66d219c --- /dev/null +++ b/MailHeaders/Lion/Mail/PaddingView.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class PaddingLinkTextField; + +@interface PaddingView : NSView +{ + NSView *_view; + PaddingLinkTextField *_bottomLinkTextField; + PaddingLinkTextField *_topLinkTextField; + double _topPadding; + double _bottomPadding; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (BOOL)isFlipped; +- (void)_layoutView; +@property(nonatomic) double topPadding; +@property(nonatomic) double bottomPadding; +@property(retain, nonatomic) NSView *view; +- (BOOL)accessibilityIsIgnored; +- (void)setFrameSize:(struct CGSize)arg1; +- (void)_adjustSubviews; +- (void)setupBottomLinkWithString:(id)arg1 target:(id)arg2 selector:(SEL)arg3; +- (void)setupTopLinkWithString:(id)arg1 target:(id)arg2 selector:(SEL)arg3; +- (void)removeLinks; +- (BOOL)_shouldAdjustPatternPhase; + +@end + diff --git a/MailHeaders/Lion/Mail/PasswordPanel.h b/MailHeaders/Lion/Mail/PasswordPanel.h new file mode 100644 index 00000000..b77b187b --- /dev/null +++ b/MailHeaders/Lion/Mail/PasswordPanel.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSButton, NSPanel, NSSecureTextField, NSTextField; + +@interface PasswordPanel : NSObject +{ + NSPanel *_passwordPanel; + NSSecureTextField *_passwordField; + NSTextField *_passwordMessage; + NSTextField *_passwordTitle; + NSButton *_rememberPassword; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)passwordPanel; +- (id)init; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)setTitle:(id)arg1; +- (void)setMessage:(id)arg1; +- (id)message; +- (id)promptModallyForPassword; +- (void)setCanRememberPassword:(BOOL)arg1; +- (BOOL)canRememberPassword; +- (void)setRememberPassword:(BOOL)arg1; +- (BOOL)rememberPassword; +- (void)passwordPanelOK:(id)arg1; +- (void)passwordPanelCancel:(id)arg1; +- (BOOL)control:(id)arg1 textView:(id)arg2 doCommandBySelector:(SEL)arg3; + +@end + diff --git a/MailHeaders/Lion/Mail/PersonCardDisplay.h b/MailHeaders/Lion/Mail/PersonCardDisplay.h new file mode 100644 index 00000000..8c3eaec3 --- /dev/null +++ b/MailHeaders/Lion/Mail/PersonCardDisplay.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface PersonCardDisplay : NSObject +{ +} + ++ (void)displayPerson:(id)arg1 attachment:(id)arg2 textView:(id)arg3; + +@end + diff --git a/MailHeaders/Lion/Mail/PhotoExporter.h b/MailHeaders/Lion/Mail/PhotoExporter.h new file mode 100644 index 00000000..50e42b53 --- /dev/null +++ b/MailHeaders/Lion/Mail/PhotoExporter.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "GenericAttachmentFetcher.h" + +@interface PhotoExporter : GenericAttachmentFetcher +{ +} + ++ (BOOL)isPhotoAttachment:(id)arg1; ++ (void)exportPhotoAttachments:(id)arg1; +- (void)_exportAttachments:(id)arg1; +- (void)downloadedAllAttachments; + +@end + diff --git a/MailHeaders/Lion/Mail/PresenceTracker.h b/MailHeaders/Lion/Mail/PresenceTracker.h new file mode 100644 index 00000000..bb9f71e0 --- /dev/null +++ b/MailHeaders/Lion/Mail/PresenceTracker.h @@ -0,0 +1,44 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSImage, NSMutableDictionary; + +@interface PresenceTracker : NSObject +{ + NSMutableDictionary *_emailToPerson; + NSMutableDictionary *_abPersonToStatus; + BOOL _isListening; + NSImage *_availableStatusImage; +} + ++ (void)initialize; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)dealloc; +- (id)availableStatusImage; +- (id)init; +- (id)_statusNumberForABPerson:(id)arg1; +- (void)_cacheInformationForABPerson:(id)arg1; +- (BOOL)personWithEmailIsOnline:(id)arg1; +- (id)addressCardUIDForEmail:(id)arg1; +- (void)_clearCache; +- (void)_clearOnlineStatus; +- (void)_reloadCache; +- (void)_updateStatusForABPerson:(id)arg1 withStatus:(id)arg2; +- (void)startListening; +- (void)stopListening; +- (void)_imPersonStatusChangedNotification:(id)arg1; +- (void)_imStatusImagesChangedAppearanceNotification:(id)arg1; +- (void)_abDatabaseChangedExternallyNotification:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/PrintingAccessoryViewController.h b/MailHeaders/Lion/Mail/PrintingAccessoryViewController.h new file mode 100644 index 00000000..d78002fa --- /dev/null +++ b/MailHeaders/Lion/Mail/PrintingAccessoryViewController.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSViewController.h" + +#import "NSPrintPanelAccessorizing-Protocol.h" + +@class MessagePrinter, NSMatrix; + +@interface PrintingAccessoryViewController : NSViewController +{ + MessagePrinter *_messagePrinter; + NSMatrix *_scalingBehaviorMatrix; +} + +- (id)initWithMessagePrinter:(id)arg1; +- (void)setScalingBehavior:(unsigned long long)arg1; +- (void)updateScalingBehavior:(id)arg1; +- (void)setRepresentedObject:(id)arg1; +- (unsigned long long)scalingBehavior; +- (id)stringForScalingBehavior; +- (id)keyPathsForValuesAffectingPreview; +- (id)localizedSummaryItems; +- (void)_updateViews; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Lion/Mail/ProgressIndicatorCell.h b/MailHeaders/Lion/Mail/ProgressIndicatorCell.h new file mode 100644 index 00000000..d638f105 --- /dev/null +++ b/MailHeaders/Lion/Mail/ProgressIndicatorCell.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSImageCell.h" + +@class NSProgressIndicator; + +@interface ProgressIndicatorCell : NSImageCell +{ + NSProgressIndicator *_progressIndicator; +} + +- (void)setProgressIndicator:(id)arg1; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Lion/Mail/PullQuoteAbbreviator.h b/MailHeaders/Lion/Mail/PullQuoteAbbreviator.h new file mode 100644 index 00000000..f62ff814 --- /dev/null +++ b/MailHeaders/Lion/Mail/PullQuoteAbbreviator.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "RedundantContentAbbreviator.h" + +@class DOMHTMLElement; + +@interface PullQuoteAbbreviator : RedundantContentAbbreviator +{ + DOMHTMLElement *_quoteWrapper; + DOMHTMLElement *_quoteComponentWrapper; + DOMHTMLElement *_quoteContent; + DOMHTMLElement *_openQuote; + DOMHTMLElement *_closeQuote; + DOMHTMLElement *_expandLink; + BOOL _doNotCollapseContent; +} + +- (void)dealloc; +- (double)_minimumHeightForCollapsion; +- (BOOL)_insideElementWithBorderOrBackground; +- (id)_colorStringForQuoteMarks; +- (void)_calibrateQuoteMarksForText:(id)arg1; +- (BOOL)_blockquoteStructureLostDuringQuoteConversion; +- (BOOL)abbreviate; +- (BOOL)expand; +- (void)webViewResized; +- (double)verticalFoldPosition; +@property(nonatomic) BOOL doNotCollapseContent; // @synthesize doNotCollapseContent=_doNotCollapseContent; + +@end + diff --git a/MailHeaders/Lion/Mail/QLPreviewPanelDataSource-Protocol.h b/MailHeaders/Lion/Mail/QLPreviewPanelDataSource-Protocol.h new file mode 100644 index 00000000..d09df090 --- /dev/null +++ b/MailHeaders/Lion/Mail/QLPreviewPanelDataSource-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol QLPreviewPanelDataSource +- (long long)numberOfPreviewItemsInPreviewPanel:(id)arg1; +- (id)previewPanel:(id)arg1 previewItemAtIndex:(long long)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/QLPreviewPanelDelegate-Protocol.h b/MailHeaders/Lion/Mail/QLPreviewPanelDelegate-Protocol.h new file mode 100644 index 00000000..4a074813 --- /dev/null +++ b/MailHeaders/Lion/Mail/QLPreviewPanelDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol QLPreviewPanelDelegate + +@optional +- (BOOL)previewPanel:(id)arg1 handleEvent:(id)arg2; +- (struct CGRect)previewPanel:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (id)previewPanel:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/QLSeamlessOpenerDelegate-Protocol.h b/MailHeaders/Lion/Mail/QLSeamlessOpenerDelegate-Protocol.h new file mode 100644 index 00000000..cad8b837 --- /dev/null +++ b/MailHeaders/Lion/Mail/QLSeamlessOpenerDelegate-Protocol.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol QLSeamlessOpenerDelegate + +@optional +- (id)seamlessOpener:(id)arg1 sourcePreviewViewForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 sourceBubbleForPreviewItem:(id)arg2; +- (struct CGRect)seamlessOpener:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3 windowLevel:(long long *)arg4; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (int)seamlessOpener:(id)arg1 supportForPreviewItem:(id)arg2; +- (id)seamlessOpenerTransientWindow:(id)arg1 level:(long long *)arg2; +- (void)seamlessOpener:(id)arg1 openedItem:(id)arg2 seamlessly:(BOOL)arg3; +- (void)seamlessOpener:(id)arg1 failedToOpenItems:(id)arg2 withError:(id)arg3; +- (id)seamlessOpener:(id)arg1 transientImageAtFrame:(struct CGRect *)arg2 forItem:(id)arg3; +- (id)seamlessOpener:(id)arg1 transientWindowForItem:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/QuickTimeAttachmentView.h b/MailHeaders/Lion/Mail/QuickTimeAttachmentView.h new file mode 100644 index 00000000..94b15a65 --- /dev/null +++ b/MailHeaders/Lion/Mail/QuickTimeAttachmentView.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "QTMovieView.h" + +@class MessageAttachmentViewController; + +@interface QuickTimeAttachmentView : QTMovieView +{ + MessageAttachmentViewController *_attachmentViewController; +} + ++ (void)initialize; ++ (id)viewForAttachmentViewController:(id)arg1; +- (struct CGSize)naturalSize; +- (struct CGSize)desiredSizeWithMaximumWidth:(double)arg1; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)viewWillMoveToSuperview:(id)arg1; +- (id)menuForEvent:(id)arg1; +- (BOOL)shouldDisplayInline; +- (void)mouseDragged:(id)arg1; +- (void)scrollWheel:(id)arg1; +@property MessageAttachmentViewController *attachmentViewController; // @synthesize attachmentViewController=_attachmentViewController; + +@end + diff --git a/MailHeaders/Lion/Mail/Quota.h b/MailHeaders/Lion/Mail/Quota.h new file mode 100644 index 00000000..4bafb7b7 --- /dev/null +++ b/MailHeaders/Lion/Mail/Quota.h @@ -0,0 +1,44 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "AccountInfoTabOwner-Protocol.h" + +@class NSProgressIndicator, NSTableView, NSTextField, NSTimer, NSView, SizeEngine; + +@interface Quota : NSObject +{ + NSView *_view; + NSTableView *_quotaTable; + NSProgressIndicator *_progressIndicator; + NSTextField *_progressField; + NSTextField *_usageField; + SizeEngine *_sizeEngine; + NSTimer *_statusTimer; +} + ++ (id)quotaForMailAccount:(id)arg1; +- (id)initWithAccount:(id)arg1; +- (id)init; +- (void)dealloc; +- (Class)engineClass; +- (void)_accountOfflineStatusDidChange:(id)arg1; +- (id)view; +- (void)engineDidStart; +- (void)engineDidFinish; +- (void)updateProgress:(id)arg1; +- (void)_updateProgress:(id)arg1; +- (void)_stopProgress:(id)arg1; +- (void)engineUpdated:(id)arg1; +- (unsigned long long)numberOfSortDescriptors; +- (const struct QuotaSimpleSortDescriptor *)sortDescriptorAtIndex:(unsigned long long)arg1; +- (void)accountInfoWillHideView:(id)arg1; +- (void)accountInfoWillShowView:(id)arg1; +@property(retain, nonatomic) SizeEngine *sizeEngine; // @synthesize sizeEngine=_sizeEngine; + +@end + diff --git a/MailHeaders/Lion/Mail/QuotaBar.h b/MailHeaders/Lion/Mail/QuotaBar.h new file mode 100644 index 00000000..967c47c6 --- /dev/null +++ b/MailHeaders/Lion/Mail/QuotaBar.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSLevelIndicator; + +@interface QuotaBar : NSView +{ + NSLevelIndicator *_levelIndicator; +} + +- (id)_labelFont; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (void)setQuotaUsed:(unsigned long long)arg1 limit:(unsigned long long)arg2; +- (void)drawRect:(struct CGRect)arg1; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/RSSAddFeedController.h b/MailHeaders/Lion/Mail/RSSAddFeedController.h new file mode 100644 index 00000000..dac2b838 --- /dev/null +++ b/MailHeaders/Lion/Mail/RSSAddFeedController.h @@ -0,0 +1,93 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSAnimationDelegate-Protocol.h" +#import "NSOutlineViewDelegate-Protocol.h" +#import "NSTableViewDelegate-Protocol.h" + +@class BookmarksManager, MailboxUid, MailboxesOutlineView, NSArrayController, NSMatrix, NSString, NSTableView, NSTextField, NSTreeController, NSView, NSViewAnimation, NSWindow, RSSFeedSubscriber; + +@interface RSSAddFeedController : NSObject +{ + NSWindow *_window; + NSMatrix *_viewChoice; + NSView *_searchSection; + NSView *_containerView; + NSView *_safariBookmarksView; + NSTextField *_customURLView; + BookmarksManager *_bookmarksManager; + NSTableView *_feeds; + MailboxesOutlineView *_sidebar; + NSTreeController *_sidebarController; + NSArrayController *_feedController; + BOOL _isSpinning; + BOOL _isShowingCustomField; + BOOL _showInInbox; + BOOL _showAlert; + NSString *_statusMessage; + BOOL _rememberViewChanges; + struct CGSize _safariBookmarksSize; + struct CGSize _customURLSize; + NSViewAnimation *_currentAnimation; + RSSFeedSubscriber *_subscriber; + MailboxUid *_parentMailbox; +} + ++ (void)initialize; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (id)init; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)dealloc; +- (void)_setContainerSubview:(id)arg1; +- (void)_setShowCustomFeedField:(BOOL)arg1 animate:(BOOL)arg2 forFirstTime:(BOOL)arg3; +- (float)animation:(id)arg1 valueForProgress:(float)arg2; +- (void)animationDidEnd:(id)arg1; +- (void)_orderWindowFront; +- (void)_orderWindowOutWithCode:(unsigned long long)arg1; +- (void)_sheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_showAndRememberViewChanges:(BOOL)arg1 customURLString:(id)arg2; +- (void)show; +- (void)showWithParentMailbox:(id)arg1; +- (void)showWithCustomURLString:(id)arg1; +- (void)addClicked:(id)arg1; +- (void)cancelClicked:(id)arg1; +- (void)changeView:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_subscribeToCustomURL; +- (void)controlTextDidChange:(id)arg1; +- (void)_setupBookmarks; +- (void)_activateBookmarks; +- (void)_deactivateBookmarks; +- (void)_updateContextFromNotification:(id)arg1; +- (void)_bookmarksDidChange:(id)arg1; +- (void)_subscribeToSafariBookmarks; +- (id)_bookmarkAtRow:(long long)arg1; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (BOOL)tableView:(id)arg1 shouldSelectRow:(long long)arg2; +- (void)tableViewSingleClick:(id)arg1; +- (void)tableViewDoubleClick:(id)arg1; +- (void)outlineView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +@property(retain) RSSFeedSubscriber *subscriber; +@property(retain) MailboxUid *parentMailbox; // @synthesize parentMailbox=_parentMailbox; +@property struct CGSize customURLSize; // @synthesize customURLSize=_customURLSize; +@property struct CGSize safariBookmarksSize; // @synthesize safariBookmarksSize=_safariBookmarksSize; +@property BOOL rememberViewChanges; // @synthesize rememberViewChanges=_rememberViewChanges; +@property(retain) NSViewAnimation *currentAnimation; // @synthesize currentAnimation=_currentAnimation; +@property(retain) NSString *statusMessage; // @synthesize statusMessage=_statusMessage; +@property BOOL showAlert; // @synthesize showAlert=_showAlert; +@property BOOL showInInbox; // @synthesize showInInbox=_showInInbox; +@property BOOL isShowingCustomField; // @synthesize isShowingCustomField=_isShowingCustomField; +@property BOOL isSpinning; // @synthesize isSpinning=_isSpinning; +@property(retain) BookmarksManager *bookmarksManager; // @synthesize bookmarksManager=_bookmarksManager; + +@end + diff --git a/MailHeaders/Lion/Mail/RSSArticleDisplay.h b/MailHeaders/Lion/Mail/RSSArticleDisplay.h new file mode 100644 index 00000000..e480dd8b --- /dev/null +++ b/MailHeaders/Lion/Mail/RSSArticleDisplay.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebMessageDisplay.h" + +@interface RSSArticleDisplay : WebMessageDisplay +{ +} + +- (Class)documentClass; +- (BOOL)prepareForMessage:(id)arg1 viewingState:(id)arg2; +- (id)webView:(id)arg1 identifierForInitialRequest:(id)arg2 fromDataSource:(id)arg3; +- (void)webView:(id)arg1 resource:(id)arg2 didFinishLoadingFromDataSource:(id)arg3; + +@end + diff --git a/MailHeaders/Lion/Mail/RSSAuthenticationPanel.h b/MailHeaders/Lion/Mail/RSSAuthenticationPanel.h new file mode 100644 index 00000000..37e9c27c --- /dev/null +++ b/MailHeaders/Lion/Mail/RSSAuthenticationPanel.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSImageView, NSSecureTextField, NSTextField, NSURLAuthenticationChallenge, RSSNonBlockingPanel; + +@interface RSSAuthenticationPanel : NSObject +{ + NSTextField *_mainLabel; + RSSNonBlockingPanel *_panel; + NSSecureTextField *_password; + NSTextField *_smallLabel; + NSTextField *_username; + NSImageView *_imageView; + BOOL _nibLoaded; + BOOL _usingSheet; + id _callback; + id _context; + SEL _selector; + NSURLAuthenticationChallenge *_challenge; +} + +- (id)initWithCallback:(id)arg1 selector:(SEL)arg2 context:(id)arg3; +- (id)init; +- (void)dealloc; +- (void)cancel:(id)arg1; +- (void)logIn:(id)arg1; +- (BOOL)loadNib; +- (void)setUpForChallenge:(id)arg1; +- (void)runAsModalDialogWithChallenge:(id)arg1; +- (void)runAsSheetOnWindow:(id)arg1 withChallenge:(id)arg2; +- (void)sheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; + +@end + diff --git a/MailHeaders/Lion/Mail/RSSFeedSubscriber.h b/MailHeaders/Lion/Mail/RSSFeedSubscriber.h new file mode 100644 index 00000000..b7a0f13f --- /dev/null +++ b/MailHeaders/Lion/Mail/RSSFeedSubscriber.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ActivityMonitor, NSString; + +@interface RSSFeedSubscriber : NSObject +{ + int _state; + NSString *_errorString; + ActivityMonitor *_monitor; +} + ++ (BOOL)isFeedURLString:(id)arg1; ++ (id)subscriber; ++ (id)keyPathsForValuesAffectingIsIdle; ++ (id)keyPathsForValuesAffectingIsFetching; ++ (id)keyPathsForValuesAffectingDidFail; ++ (id)keyPathsForValuesAffectingDidSucceed; +- (void)subscribeWithURLString:(id)arg1 title:(id)arg2 addToInbox:(BOOL)arg3 autodiscover:(BOOL)arg4 addToBookmarks:(BOOL)arg5; +- (void)subscribeWithURLStrings:(id)arg1 titles:(id)arg2 addToInbox:(BOOL)arg3 autodiscover:(BOOL)arg4 addToBookmarks:(BOOL)arg5 parent:(id)arg6; +- (void)dealloc; +- (void)cancel; +- (void)_updateState:(id)arg1 status:(id)arg2; +- (void)_workerUpdateState:(int)arg1 status:(id)arg2; +- (void)_workerSubscribeWithURLStrings:(id)arg1 titles:(id)arg2 addToInbox:(BOOL)arg3 autodiscover:(BOOL)arg4 addToBookmarks:(BOOL)arg5 parent:(id)arg6; +@property(readonly) BOOL isIdle; +@property(readonly) BOOL isFetching; +@property(readonly) BOOL didFail; +@property(readonly) BOOL didSucceed; +@property(retain) NSString *errorString; // @synthesize errorString=_errorString; +@property int state; // @synthesize state=_state; + +@end + diff --git a/MailHeaders/Lion/Mail/RSSNonBlockingPanel.h b/MailHeaders/Lion/Mail/RSSNonBlockingPanel.h new file mode 100644 index 00000000..d1edd9c4 --- /dev/null +++ b/MailHeaders/Lion/Mail/RSSNonBlockingPanel.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPanel.h" + +@interface RSSNonBlockingPanel : NSPanel +{ +} + +- (BOOL)_blocksActionWhenModal:(SEL)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/RSSPanelAuthenticationHandler.h b/MailHeaders/Lion/Mail/RSSPanelAuthenticationHandler.h new file mode 100644 index 00000000..7b9ea587 --- /dev/null +++ b/MailHeaders/Lion/Mail/RSSPanelAuthenticationHandler.h @@ -0,0 +1,44 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSURLConnectionDelegate-Protocol.h" + +@class NSMutableArray, RSSAuthenticationPanel; + +@interface RSSPanelAuthenticationHandler : NSObject +{ + RSSAuthenticationPanel *_challengePanel; + NSMutableArray *_challenges; + NSMutableArray *_feeds; +} + ++ (void)initialize; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedHandler; +- (id)init; +- (void)dealloc; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)resolveAuthenticationIssuesForFeedURL:(id)arg1 name:(id)arg2 update:(id)arg3; +- (id)resolveAuthenticationIssuesForFeedURLs:(id)arg1 names:(id)arg2 update:(id)arg3; +- (void)_tryNextChallenge; +- (void)startAuthentication:(id)arg1 forFeedTransporter:(id)arg2; +- (void)cancelAuthentication:(id)arg1; +- (void)_authenticationDoneWithChallenge:(id)arg1 result:(id)arg2 context:(id)arg3; +- (void)connection:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (void)connection:(id)arg1 didReceiveResponse:(id)arg2; +- (void)connection:(id)arg1 didReceiveData:(id)arg2; +- (void)connection:(id)arg1 didFailWithError:(id)arg2; +- (void)connectionDidFinishLoading:(id)arg1; +- (void)_connectionFinished:(id)arg1 cancelled:(BOOL)arg2; +@property(retain) RSSAuthenticationPanel *challengePanel; // @synthesize challengePanel=_challengePanel; + +@end + diff --git a/MailHeaders/Lion/Mail/RSSPreferences.h b/MailHeaders/Lion/Mail/RSSPreferences.h new file mode 100644 index 00000000..9d46d516 --- /dev/null +++ b/MailHeaders/Lion/Mail/RSSPreferences.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +@class DefaultWebAppPopUpController, NSPopUpButton; + +@interface RSSPreferences : NSPreferencesModule +{ + NSPopUpButton *_defaultReaderPopup; + NSPopUpButton *_fetchFrequencyPopup; + NSPopUpButton *_deletionFrequencyPopup; + DefaultWebAppPopUpController *_defaultReaderController; +} + +- (void)dealloc; +- (void)awakeFromNib; +- (void)initializeFromDefaults; +- (void)defaultRSSReaderChanged:(id)arg1; +- (void)fetchFrequencyChanged:(id)arg1; +- (void)deletionIntervalChanged:(id)arg1; +- (BOOL)isResizable; +- (id)titleForIdentifier:(id)arg1; +- (id)windowTitle; + +@end + diff --git a/MailHeaders/Lion/Mail/RecentsSearchOperationDelegate-Protocol.h b/MailHeaders/Lion/Mail/RecentsSearchOperationDelegate-Protocol.h new file mode 100644 index 00000000..e6985bfc --- /dev/null +++ b/MailHeaders/Lion/Mail/RecentsSearchOperationDelegate-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol RecentsSearchOperationDelegate +- (void)recentsSearchOperation:(id)arg1 foundRecords:(id)arg2; +- (void)recentsSearchOperationDidFinish:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/RedundantContentAbbreviator.h b/MailHeaders/Lion/Mail/RedundantContentAbbreviator.h new file mode 100644 index 00000000..be5878fd --- /dev/null +++ b/MailHeaders/Lion/Mail/RedundantContentAbbreviator.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class DOMDocument, DocumentContentState, NSMutableDictionary, NSMutableSet, NSURL, RedundantContentCluster; + +@interface RedundantContentAbbreviator : NSObject +{ + DocumentContentState *_documentState; + RedundantContentCluster *_redundantCluster; + DOMDocument *_document; + NSURL *_toggleURL; + NSMutableSet *_nodesToRemoveUponExpansion; + NSMutableSet *_wrapperDivsToRemoveUponExpansion; + NSMutableDictionary *_savedElementStyles; + unsigned long long _clusterID; + BOOL _isAbbreviated; +} + ++ (id)abbreviatorsForDocument:(id)arg1 viewingState:(id)arg2; +- (id)initWithRedundantCluster:(id)arg1 documentState:(id)arg2 clusterID:(unsigned long long)arg3; +- (void)dealloc; +- (id)_constructAutoremovedContainerHTMLElement:(id)arg1; +- (double)_minimumHeightForCollapsion; +- (BOOL)_passesMinimumSizeThreshold; +- (BOOL)_collapseBlankLinesUnderNode:(id)arg1 leadingAndTrailingLinesOnly:(BOOL)arg2; +- (void)_insertExpansionAffordance:(id)arg1 useDocumentEdgeSelectionAnchor:(BOOL)arg2; +- (BOOL)_clipWrapper:(id)arg1 previewHeight:(double)arg2 isBottom:(BOOL)arg3; +- (BOOL)abbreviate; +- (BOOL)expand; +@property(readonly, getter=isExpanded) BOOL expanded; +- (void)webViewResized; +- (void)webViewPageScaleChanged; +- (double)verticalFoldPosition; +- (BOOL)foldIsAtBottom; +- (BOOL)needsLayoutInformation; +@property(readonly, nonatomic) RedundantContentCluster *redundantCluster; // @synthesize redundantCluster=_redundantCluster; +@property(readonly) NSURL *toggleURL; // @synthesize toggleURL=_toggleURL; + +@end + diff --git a/MailHeaders/Lion/Mail/RedundantContentCluster.h b/MailHeaders/Lion/Mail/RedundantContentCluster.h new file mode 100644 index 00000000..a8915a32 --- /dev/null +++ b/MailHeaders/Lion/Mail/RedundantContentCluster.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class DOMDocument, DocumentContentState, NSMutableArray, NSMutableDictionary; + +@interface RedundantContentCluster : NSObject +{ + DOMDocument *_document; + DocumentContentState *_documentState; + NSMutableArray *_redundantNodes; + NSMutableArray *_wrappersInserted; + NSMutableDictionary *_savedElementStyles; + BOOL _isFirstContent; + BOOL _isLastContent; + BOOL _isHidden; +} + ++ (id)clustersForDocumentState:(id)arg1; +- (id)initWithRedundantNodes:(id)arg1 documentState:(id)arg2 isFirstContent:(BOOL)arg3 isLastContent:(BOOL)arg4; +- (void)dealloc; +- (id)description; +- (id)nodeEnumerator; +- (id)reverseNodeEnumerator; +- (BOOL)heightExceedsThreshold:(double)arg1; +- (id)firstNode; +- (id)lastNode; +- (id)domRange; +- (BOOL)intersectsRange:(id)arg1; +- (BOOL)trimAttributionContentFromTop; +- (void)_saveElementStyle:(id)arg1; +- (void)_restoreElementStyle:(id)arg1; +- (void)hide; +- (void)show; +@property(nonatomic) BOOL isFirstContent; // @synthesize isFirstContent=_isFirstContent; +@property(nonatomic) BOOL isLastContent; // @synthesize isLastContent=_isLastContent; + +@end + diff --git a/MailHeaders/Lion/Mail/RemoteStoreAccountSpecialMailboxes.h b/MailHeaders/Lion/Mail/RemoteStoreAccountSpecialMailboxes.h new file mode 100644 index 00000000..691b0941 --- /dev/null +++ b/MailHeaders/Lion/Mail/RemoteStoreAccountSpecialMailboxes.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "SpecialMailboxes.h" + +@class NSButton; + +@interface RemoteStoreAccountSpecialMailboxes : SpecialMailboxes +{ + NSButton *_keepDraftsOnServer; + NSButton *_keepSentMessagesOnServer; + NSButton *_keepTrashOnServer; + NSButton *_keepJunkOnServer; +} + +- (void)setupUIFromValuesInAccount:(id)arg1; +- (BOOL)setupAccountFromValuesInUI:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/RemoteStoreQuota.h b/MailHeaders/Lion/Mail/RemoteStoreQuota.h new file mode 100644 index 00000000..66f99055 --- /dev/null +++ b/MailHeaders/Lion/Mail/RemoteStoreQuota.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "Quota.h" + +#import "NSTableViewDataSource-Protocol.h" +#import "NSTableViewDelegate-Protocol.h" + +@class NSButton, NSMutableArray; + +@interface RemoteStoreQuota : Quota +{ + NSButton *_showMessagesButton; + NSMutableArray *_mailboxes; + struct QuotaSimpleSortDescriptor _simpleSortDescs[3]; +} + +- (void)awakeFromNib; +- (void)dealloc; +- (void)engineUpdated:(id)arg1; +- (void)showMessages:(id)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)tableShouldIncludeMailbox:(id)arg1; +- (id)_iconForMailboxUid:(id)arg1; +- (unsigned long long)numberOfSortDescriptors; +- (const struct QuotaSimpleSortDescriptor *)sortDescriptorAtIndex:(unsigned long long)arg1; +- (void)syncSortDescriptors; +- (void)resortMailboxes; + +@end + diff --git a/MailHeaders/Lion/Mail/ReplyAutoTest.h b/MailHeaders/Lion/Mail/ReplyAutoTest.h new file mode 100644 index 00000000..d495d500 --- /dev/null +++ b/MailHeaders/Lion/Mail/ReplyAutoTest.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MessageViewPerfTest.h" + +@interface ReplyAutoTest : MessageViewPerfTest +{ +} + +- (id)init; +- (void)setUp; +- (void)tearDown; +- (void)performOnMessageAtRow:(long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/RichMessageListSortView.h b/MailHeaders/Lion/Mail/RichMessageListSortView.h new file mode 100644 index 00000000..369eca41 --- /dev/null +++ b/MailHeaders/Lion/Mail/RichMessageListSortView.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class SortBarButton; + +@interface RichMessageListSortView : NSView +{ + SortBarButton *_sortButton; + struct CGPoint _separatorOrigin; + id _delegate; +} + ++ (id)_sortBarButtonFontForControlSize:(unsigned long long)arg1; +- (unsigned long long)controlSize; +- (void)adjustHeight; +- (void)dealloc; +@property id delegate; // @synthesize delegate=_delegate; +- (void)setShowsSortButton:(BOOL)arg1; +- (void)setSortTitle:(id)arg1; +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/RichTableCellView.h b/MailHeaders/Lion/Mail/RichTableCellView.h new file mode 100644 index 00000000..7d6f6c7f --- /dev/null +++ b/MailHeaders/Lion/Mail/RichTableCellView.h @@ -0,0 +1,122 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableCellView.h" + +@class DateTextField, NSArray, NSButton, NSColor, NSImageView, NSString, NSTextField, NSView, RoundedRectTextField, SenderPhotoView, ThreadDisclosureTextField; + +@interface RichTableCellView : NSTableCellView +{ + NSView *_senderContainerView; + NSTextField *_senderTextField; + NSImageView *_presenceView; + NSImageView *_attachmentsView; + NSImageView *_flaggedView; + NSView *_flaggedStatusContainerView; + NSArray *_allStatusViewArray; + NSButton *_unreadView; + SenderPhotoView *_photoView; + NSTextField *_subjectTextField; + NSTextField *_snippetTextField; + DateTextField *_dateTextField; + NSTextField *_sizeTextField; + RoundedRectTextField *_toCcIndicator; + ThreadDisclosureTextField *_threadDisclosureControl; + BOOL _isChildOfThread; + BOOL _isFirstChildOfThread; + BOOL _isLastChildOfThread; + BOOL _isNote; + BOOL _shouldShowSize; + BOOL _shouldUseDateSent; + BOOL _shouldShowPresence; + BOOL _shouldShowToCc; + BOOL _shouldShowLongDate; + BOOL _shouldShowPhoto; + BOOL _shouldShowFlaggedStatus; + BOOL _shouldShowLocation; + BOOL _shouldShowRecipientInsteadOfSender; + BOOL _shouldShowThreadDisclosureControl; + BOOL _hasNonDuplicateRelatedMessages; + BOOL _isThreadChildSidebarSelectedColor; + BOOL _isThreadCollapsing; + NSString *_fromToAuthorEmail; + unsigned long long _numberOfSnippetLines; + unsigned long long _messageSize; + NSColor *_textColor; + NSString *_snippet; +} + ++ (void)initialize; ++ (void)_resetDateFormats; ++ (double)heightWithNumberOfSnippetLines:(unsigned long long)arg1 style:(unsigned long long)arg2; ++ (id)lineSeparatorColor; +- (void)awakeFromNib; +- (void)dealloc; +- (BOOL)isValidMessageDoubleClick:(id)arg1; +@property(nonatomic) BOOL shouldShowSize; // @synthesize shouldShowSize=_shouldShowSize; +@property(nonatomic) BOOL shouldShowPresence; // @synthesize shouldShowPresence=_shouldShowPresence; +@property(nonatomic) BOOL shouldShowToCc; +@property(nonatomic) BOOL shouldShowPhoto; // @synthesize shouldShowPhoto=_shouldShowPhoto; +@property(nonatomic) BOOL shouldShowLocation; // @synthesize shouldShowLocation=_shouldShowLocation; +@property(nonatomic) BOOL shouldShowThreadDisclosureControl; // @synthesize shouldShowThreadDisclosureControl=_shouldShowThreadDisclosureControl; +@property(nonatomic) unsigned long long numberOfSnippetLines; // @synthesize numberOfSnippetLines=_numberOfSnippetLines; +- (BOOL)isHighlighted; +- (void)setObjectValue:(id)arg1; +- (void)setBackgroundStyle:(long long)arg1; +@property(nonatomic) BOOL isChildOfThread; // @synthesize isChildOfThread=_isChildOfThread; +- (BOOL)isSelected; +- (void)updateSnippet:(id)arg1; +- (void)setFrameSize:(struct CGSize)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (id)menuForEvent:(id)arg1; +- (id)_tableView; +- (id)_unknownSenderImage; +- (id)_noteSenderImage; +- (id)_availableStatusImage; +- (id)_snippetForMessage; +- (void)_updateFlagViews:(BOOL)arg1; +- (void)_updateThreadDisclosure; +- (void)_updateStatusViews; +- (void)_updateSnippetTextField:(id)arg1; +- (void)_updateFlaggedStatusViews; +- (void)_updateSnippetForThread:(id)arg1; +- (void)_updateThreadControl; +- (void)_tearDown; +- (void)_adjustPhotoView; +- (void)_adjustSubviews; +- (void)_photoAvailable:(id)arg1; +- (void)_presenceChanged:(id)arg1; +@property(nonatomic) BOOL isThreadCollapsing; // @synthesize isThreadCollapsing=_isThreadCollapsing; +@property(nonatomic) BOOL isThreadChildSidebarSelectedColor; // @synthesize isThreadChildSidebarSelectedColor=_isThreadChildSidebarSelectedColor; +@property(copy, nonatomic) NSString *snippet; // @synthesize snippet=_snippet; +@property(retain, nonatomic) NSColor *textColor; // @synthesize textColor=_textColor; +@property(nonatomic) unsigned long long messageSize; // @synthesize messageSize=_messageSize; +@property(nonatomic) BOOL hasNonDuplicateRelatedMessages; // @synthesize hasNonDuplicateRelatedMessages=_hasNonDuplicateRelatedMessages; +@property(nonatomic) BOOL shouldShowRecipientInsteadOfSender; // @synthesize shouldShowRecipientInsteadOfSender=_shouldShowRecipientInsteadOfSender; +@property(nonatomic) BOOL shouldShowFlaggedStatus; // @synthesize shouldShowFlaggedStatus=_shouldShowFlaggedStatus; +@property(nonatomic) BOOL shouldShowLongDate; // @synthesize shouldShowLongDate=_shouldShowLongDate; +@property(nonatomic) BOOL shouldUseDateSent; // @synthesize shouldUseDateSent=_shouldUseDateSent; +@property(nonatomic) BOOL isNote; // @synthesize isNote=_isNote; +@property(nonatomic) BOOL isLastChildOfThread; // @synthesize isLastChildOfThread=_isLastChildOfThread; +@property(nonatomic) BOOL isFirstChildOfThread; // @synthesize isFirstChildOfThread=_isFirstChildOfThread; +@property(nonatomic) ThreadDisclosureTextField *threadDisclosureControl; // @synthesize threadDisclosureControl=_threadDisclosureControl; +@property(nonatomic) RoundedRectTextField *toCcIndicator; // @synthesize toCcIndicator=_toCcIndicator; +@property(nonatomic) NSTextField *sizeTextField; // @synthesize sizeTextField=_sizeTextField; +@property(nonatomic) DateTextField *dateTextField; // @synthesize dateTextField=_dateTextField; +@property(nonatomic) NSTextField *snippetTextField; // @synthesize snippetTextField=_snippetTextField; +@property(nonatomic) NSTextField *subjectTextField; // @synthesize subjectTextField=_subjectTextField; +@property(nonatomic) SenderPhotoView *photoView; // @synthesize photoView=_photoView; +@property(nonatomic) NSView *flaggedStatusContainerView; // @synthesize flaggedStatusContainerView=_flaggedStatusContainerView; +@property(nonatomic) NSImageView *flaggedView; // @synthesize flaggedView=_flaggedView; +@property(nonatomic) NSButton *unreadView; // @synthesize unreadView=_unreadView; +@property(nonatomic) NSImageView *presenceView; // @synthesize presenceView=_presenceView; +@property(nonatomic) NSImageView *attachmentsView; // @synthesize attachmentsView=_attachmentsView; +@property(nonatomic) NSTextField *senderTextField; // @synthesize senderTextField=_senderTextField; +@property(nonatomic) NSView *senderContainerView; // @synthesize senderContainerView=_senderContainerView; +@property(retain, nonatomic) NSString *fromToAuthorEmail; // @synthesize fromToAuthorEmail=_fromToAuthorEmail; + +@end + diff --git a/MailHeaders/Lion/Mail/RichTableRowView.h b/MailHeaders/Lion/Mail/RichTableRowView.h new file mode 100644 index 00000000..6bd50040 --- /dev/null +++ b/MailHeaders/Lion/Mail/RichTableRowView.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableRowView.h" + +@class NSColor, NSTableView; + +@interface RichTableRowView : NSTableRowView +{ + NSColor *_highlightColor; + NSTableView *_tableView; +} + +- (void)dealloc; +- (void)drawRect:(struct CGRect)arg1; +@property(retain, nonatomic) NSColor *highlightColor; // @synthesize highlightColor=_highlightColor; +@property(nonatomic) NSTableView *tableView; // @synthesize tableView=_tableView; + +@end + diff --git a/MailHeaders/Lion/Mail/RolloverActionButtonsView.h b/MailHeaders/Lion/Mail/RolloverActionButtonsView.h new file mode 100644 index 00000000..adb0f178 --- /dev/null +++ b/MailHeaders/Lion/Mail/RolloverActionButtonsView.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class EmailView, NSTrackingArea; + +@interface RolloverActionButtonsView : NSView +{ + NSTrackingArea *_trackingArea0; + NSTrackingArea *_trackingArea1; + NSTrackingArea *_trackingArea2; + NSTrackingArea *_trackingArea3; + EmailView *_delegate; + long long _currentActiveSegment; + BOOL _isPressed; +} + +- (id)init; +- (void)dealloc; +- (BOOL)isFlipped; +- (void)resetCursorRects; +- (void)mouseEntered:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)mouseUp:(id)arg1; +- (void)mouseDragged:(id)arg1; +- (struct CGRect)_rectForSegment:(unsigned long long)arg1; +- (long long)_segmentForTrackingArea:(id)arg1; +- (struct CGRect)_rectForDrawingView; +- (double)topOffset; +- (void)drawRect:(struct CGRect)arg1; +@property EmailView *delegate; // @synthesize delegate=_delegate; + +@end + diff --git a/MailHeaders/Lion/Mail/RolloverButtonCell.h b/MailHeaders/Lion/Mail/RolloverButtonCell.h new file mode 100644 index 00000000..ece6eabb --- /dev/null +++ b/MailHeaders/Lion/Mail/RolloverButtonCell.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MessageListCell.h" + +@interface RolloverButtonCell : MessageListCell +{ + id _target; + SEL _action; +} + +- (void)setTarget:(id)arg1; +- (void)setAction:(SEL)arg1; +- (id)target; +- (SEL)action; +- (BOOL)trackMouse:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3 untilMouseUp:(BOOL)arg4; +- (BOOL)_sendActionFrom:(id)arg1; +- (BOOL)_mf_shouldSendAction; +- (unsigned long long)hitTestForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3; +- (id)accessibilityAttributeNames; +- (id)accessibilityActionNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (void)accessibilityPerformAction:(id)arg1; +- (id)accessibilityActionDescription:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/RoundedCornersView.h b/MailHeaders/Lion/Mail/RoundedCornersView.h new file mode 100644 index 00000000..e340cf44 --- /dev/null +++ b/MailHeaders/Lion/Mail/RoundedCornersView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface RoundedCornersView : NSView +{ +} + +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/RoundedRectTextField.h b/MailHeaders/Lion/Mail/RoundedRectTextField.h new file mode 100644 index 00000000..fb7366d3 --- /dev/null +++ b/MailHeaders/Lion/Mail/RoundedRectTextField.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextField.h" + +@interface RoundedRectTextField : NSTextField +{ +} + +- (void)_updateWithCustomCell; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/SMTPSettings.h b/MailHeaders/Lion/Mail/SMTPSettings.h new file mode 100644 index 00000000..45369b2b --- /dev/null +++ b/MailHeaders/Lion/Mail/SMTPSettings.h @@ -0,0 +1,56 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "AccountStatusDataSourceDelegate-Protocol.h" +#import "NSTableViewDataSource-Protocol.h" + +@class AccountStatusDataSource, NSArrayController, NSMutableArray, NSMutableDictionary, NSPanel, NSTableView, NSTextField, SMTPAccount; + +@interface SMTPSettings : NSObject +{ + NSMutableArray *_deliveryAccounts; + NSArrayController *_deliveryAccountsController; + SMTPAccount *_selectedDeliveryAccount; + NSPanel *_panel; + NSTableView *_accountTable; + NSTextField *_portField; + AccountStatusDataSource *_deliveryASDS; + NSMutableArray *_accountsInConflict; + NSMutableDictionary *_cachedAccountEmployment; + NSMutableDictionary *_cachedAccountEmploymentStrings; + BOOL _didRegisterForNotifications; +} + ++ (void)initialize; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedPanel; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)init; +- (void)dealloc; +- (void)awakeFromNib; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)runSheetRelativeToWindow:(id)arg1 selectedAccount:(id)arg2 didEndDelegate:(id)arg3; +- (void)_sheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)dismissPanel:(id)arg1; +- (void)_syncBindings; +- (void)_updatePortNumber; +- (void)_updatePortFieldEnabled; +- (BOOL)_validateAccounts; +- (void)_accountInfoDidChange:(id)arg1; +- (BOOL)_checkForConflicts; +- (void)_removeInvalidAccounts; +- (void)_recacheAccountEmployment; +- (void)_restoreMailAccountDefaultAccounts; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +@property(retain) NSMutableArray *deliveryAccounts; // @synthesize deliveryAccounts=_deliveryAccounts; + +@end + diff --git a/MailHeaders/Lion/Mail/ScriptableMessageTextStorage.h b/MailHeaders/Lion/Mail/ScriptableMessageTextStorage.h new file mode 100644 index 00000000..6ac1ad29 --- /dev/null +++ b/MailHeaders/Lion/Mail/ScriptableMessageTextStorage.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSConcreteTextStorage.h" + +@interface ScriptableMessageTextStorage : NSConcreteTextStorage +{ +} + +- (void)replaceCharactersInRange:(struct _NSRange)arg1 withAttributedString:(id)arg2; +- (void)addAttribute:(id)arg1 value:(id)arg2 range:(struct _NSRange)arg3; +- (void)setAttributes:(id)arg1 range:(struct _NSRange)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/SearchScopeDelegate-Protocol.h b/MailHeaders/Lion/Mail/SearchScopeDelegate-Protocol.h new file mode 100644 index 00000000..fef83006 --- /dev/null +++ b/MailHeaders/Lion/Mail/SearchScopeDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol SearchScopeDelegate +- (id)selectedMailboxUids; +- (void)performSearch:(id)arg1; +- (void)saveSearch:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/SegmentedToolbarItem.h b/MailHeaders/Lion/Mail/SegmentedToolbarItem.h new file mode 100644 index 00000000..13ba4849 --- /dev/null +++ b/MailHeaders/Lion/Mail/SegmentedToolbarItem.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@interface SegmentedToolbarItem : NSToolbarItemGroup +{ + BOOL _disableWidthCalculation; +} + +- (id)initWithItemIdentifier:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; +- (void)validate; +- (id)control; +- (void)_controlAction:(id)arg1; +@property long long segmentCount; // @dynamic segmentCount; +- (id)forwardingTargetForSelector:(SEL)arg1; +- (id)labelForSegment:(long long)arg1; +- (void)setLabel:(id)arg1 forSegment:(long long)arg2; +- (void)setAlternateLabel:(id)arg1 forSegment:(long long)arg2; +- (id)insideLabelForSegment:(long long)arg1; +- (void)setInsideLabel:(id)arg1 forSegment:(long long)arg2; +- (id)paletteLabelForSegment:(long long)arg1; +- (void)setPaletteLabel:(id)arg1 forSegment:(long long)arg2; +- (SEL)actionForSegment:(long long)arg1; +- (void)setAction:(SEL)arg1 forSegment:(long long)arg2; +- (id)targetForSegment:(long long)arg1; +- (void)setTarget:(id)arg1 forSegment:(long long)arg2; +- (void)setTag:(long long)arg1 forSegment:(long long)arg2; +- (void)setToolTip:(id)arg1 forSegment:(long long)arg2; +- (void)setMenu:(id)arg1 forSegment:(long long)arg2; +@property BOOL disableWidthCalculation; // @synthesize disableWidthCalculation=_disableWidthCalculation; + +@end + diff --git a/MailHeaders/Lion/Mail/SegmentedToolbarItemSegmentItem.h b/MailHeaders/Lion/Mail/SegmentedToolbarItemSegmentItem.h new file mode 100644 index 00000000..b99c9f6a --- /dev/null +++ b/MailHeaders/Lion/Mail/SegmentedToolbarItemSegmentItem.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@class SegmentedToolbarItem; + +@interface SegmentedToolbarItemSegmentItem : NSToolbarItem +{ + SegmentedToolbarItem *_parent; + long long _segmentNumber; +} + +- (id)menuFormRepresentation; +- (void)setToolTip:(id)arg1; +- (void)_setToolTip:(id)arg1; +- (void)setTag:(long long)arg1; +- (void)_setTag:(long long)arg1; +- (void)setImage:(id)arg1; +- (void)setMenu:(id)arg1; +@property long long segmentNumber; // @synthesize segmentNumber=_segmentNumber; +@property SegmentedToolbarItem *parent; // @synthesize parent=_parent; + +@end + diff --git a/MailHeaders/Lion/Mail/SegmentedToolbarItemSegmentedCell.h b/MailHeaders/Lion/Mail/SegmentedToolbarItemSegmentedCell.h new file mode 100644 index 00000000..ae91d78f --- /dev/null +++ b/MailHeaders/Lion/Mail/SegmentedToolbarItemSegmentedCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "LazyMenuSegmentedCell.h" + +@interface SegmentedToolbarItemSegmentedCell : LazyMenuSegmentedCell +{ +} + +- (double)_menuDelayTimeForSegment:(long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/SelfAnimatingProgressIndicator.h b/MailHeaders/Lion/Mail/SelfAnimatingProgressIndicator.h new file mode 100644 index 00000000..88b95850 --- /dev/null +++ b/MailHeaders/Lion/Mail/SelfAnimatingProgressIndicator.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSProgressIndicator.h" + +@interface SelfAnimatingProgressIndicator : NSProgressIndicator +{ +} + +- (void)setIndeterminate:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/SenderImageView.h b/MailHeaders/Lion/Mail/SenderImageView.h new file mode 100644 index 00000000..c64b4dfc --- /dev/null +++ b/MailHeaders/Lion/Mail/SenderImageView.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSImageView.h" + +@class NSString; + +@interface SenderImageView : NSImageView +{ + NSString *_sender; +} + +- (void)dealloc; +- (void)mouseUp:(id)arg1; +- (void)adjustPositionWithOldSuperviewSize:(struct CGSize)arg1; +@property(copy) NSString *sender; // @synthesize sender=_sender; + +@end + diff --git a/MailHeaders/Lion/Mail/SenderPhotoView.h b/MailHeaders/Lion/Mail/SenderPhotoView.h new file mode 100644 index 00000000..f5937ca2 --- /dev/null +++ b/MailHeaders/Lion/Mail/SenderPhotoView.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ListImageView.h" + +@interface SenderPhotoView : ListImageView +{ + BOOL _showFrame; +} + +- (BOOL)isOpaque; +- (void)drawRect:(struct CGRect)arg1; +@property(nonatomic) BOOL showFrame; + +@end + diff --git a/MailHeaders/Lion/Mail/Signature.h b/MailHeaders/Lion/Mail/Signature.h new file mode 100644 index 00000000..0f3b5730 --- /dev/null +++ b/MailHeaders/Lion/Mail/Signature.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSData, NSString; + +@interface Signature : NSObject +{ + NSString *_uniqueId; + NSString *_name; + NSData *_webArchiveData; + BOOL _isRich; + BOOL _isSavedAsRich; + BOOL _isDirty; +} + +- (id)initWithName:(id)arg1 uniqueId:(id)arg2; +- (id)initWithName:(id)arg1; +- (id)initWithDictionary:(id)arg1; +- (void)dealloc; +- (BOOL)saveContentToDisk; +- (void)removeContentFromDisk; +- (id)dictionaryRepresentationIncludingWebArchiveData:(BOOL)arg1; +- (id)dictionaryRepresentation; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)uniqueId; +- (id)name; +- (void)setName:(id)arg1; +- (id)webArchiveData; +- (id)webArchive; +- (void)setWebArchive:(id)arg1; +- (void)setIsRich:(BOOL)arg1; +- (BOOL)isRich; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +- (id)signatureName; +- (void)setSignatureName:(id)arg1; +- (id)signatureContents; +- (void)setSignatureContents:(id)arg1; +- (id)objectSpecifier; + +@end + diff --git a/MailHeaders/Lion/Mail/SignatureBundle.h b/MailHeaders/Lion/Mail/SignatureBundle.h new file mode 100644 index 00000000..8e18170d --- /dev/null +++ b/MailHeaders/Lion/Mail/SignatureBundle.h @@ -0,0 +1,69 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MVMailBundle.h" + +#import "SyncableDataOwner-Protocol.h" + +@class NSMutableArray, NSMutableDictionary; + +@interface SignatureBundle : MVMailBundle +{ + NSMutableDictionary *_signatures; + NSMutableArray *_accounts; + BOOL _isDirty; + BOOL _isSavingSyncResults; + NSMutableDictionary *_lastDefaultSignatures; + long long _fileVersionNumber; +} + ++ (void)initialize; ++ (id)allSignaturesAccount; ++ (id)signaturesFolderPath; ++ (id)signaturesPlistPath; +- (id)init; +- (void)dealloc; +- (void)_loadLastDefaultSignatures; +- (id)signatureAccounts; +- (BOOL)updateAccountList; +- (void)_loadFromDictionary:(id)arg1; +- (BOOL)_deleteSignaturesNotPresentInNewSignatures:(id)arg1; +- (id)signatures; +- (id)_fixAccountIdsInPlist:(id)arg1; +- (unsigned long long)numberOfSignatures; +- (id)signaturesForAccount:(id)arg1; +- (id)signatureAtIndex:(long long)arg1 forAccount:(id)arg2; +- (id)signatureAtIndex:(long long)arg1; +- (void)removeSignatureAtIndex:(long long)arg1; +- (void)_removeSignature:(id)arg1; +- (void)removeSignatureAtIndex:(long long)arg1 forAccount:(id)arg2; +- (void)insertSignature:(id)arg1 atIndex:(long long)arg2 forAccount:(id)arg3; +- (void)insertSignature:(id)arg1 atIndex:(long long)arg2; +- (void)addSignature:(id)arg1; +- (void)_signatureNameChanged:(id)arg1; +- (void)syncSignaturesNow; +- (void)saveChangesToDisk; +- (id)_dictionaryRepresentationIncludingSyncInformation:(BOOL)arg1; +- (void)_setDefaultSignatureId:(id)arg1 forAccountId:(id)arg2; +- (void)setDefaultSignature:(id)arg1 forAccount:(id)arg2; +- (id)defaultSignatureForAccount:(id)arg1; +- (int)signatureSelectionMethodForAccount:(id)arg1; +- (void)setSignatureSelectionMethod:(int)arg1 forAccount:(id)arg2; +- (id)activeSignatureWithName:(id)arg1; +- (id)activeSignatureWithId:(id)arg1; +- (BOOL)showComposeAccessoryView:(char *)arg1; +- (BOOL)showComposeAccessoryView; +- (void)setShowsComposeAccessoryView:(BOOL)arg1; +- (void)unsetShowsComposeAccessoryView; +- (BOOL)placeSignatureAboveQuotedText; +- (void)setPlaceSignatureAboveQuotedText:(BOOL)arg1; +- (void)configurePopUpButton:(id)arg1 forAccount:(id)arg2 defaultSignature:(id)arg3 selectionMethod:(int)arg4 showAccount:(BOOL)arg5; +- (void)syncSignatures; +- (BOOL)dataWillBeSyncedVersion:(id *)arg1 data:(id *)arg2 type:(id)arg3; +- (BOOL)dataWasSyncedVersion:(id)arg1 newData:(id)arg2 acceptedChanges:(id)arg3; + +@end + diff --git a/MailHeaders/Lion/Mail/SignaturePreferences.h b/MailHeaders/Lion/Mail/SignaturePreferences.h new file mode 100644 index 00000000..2c19a2ad --- /dev/null +++ b/MailHeaders/Lion/Mail/SignaturePreferences.h @@ -0,0 +1,111 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "EditingMessageWebViewDelegate-Protocol.h" +#import "MVTerminationHandler-Protocol.h" + +@class ColorBackgroundView, EditingMessageWebView, EditingWebMessageController, HyperlinkEditor, MailAccount, NSButton, NSPopUpButton, NSString, NSTableView, NSTextField, WebArchive; + +@interface SignaturePreferences : NSPreferencesModule +{ + NSTableView *_signaturesTable; + NSTableView *_accountsTable; + NSPopUpButton *_selectPopup; + ColorBackgroundView *_webViewBackground; + EditingMessageWebView *_webView; + EditingWebMessageController *_controller; + NSButton *_textRichnessButton; + NSTextField *_textRichnessMessageField; + NSButton *_removeButton; + NSButton *_placeSignatureAboveQuote; + unsigned int _addingNewSignature:1; + unsigned int _appIsTerminating:1; + unsigned int _loadedInitialHTML:1; + MailAccount *_selectedAccount; + MailAccount *_allSignaturesAccount; + NSString *_defaultFontName; + WebArchive *_savedWebArchive; + HyperlinkEditor *_hyperlinkEditor; + BOOL _currentSignatureHasChanges; +} + +- (void)dealloc; +- (id)titleForIdentifier:(id)arg1; +- (id)windowTitle; +- (id)imageForPreferenceNamed:(id)arg1; +- (void)_validateButtonState; +- (void)defaultSignatureChanged:(id)arg1; +- (void)initializeFromDefaults; +- (void)_setSelectedAccount:(id)arg1; +- (void)saveChanges; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)willBeDisplayed; +- (void)moduleWasInstalled; +- (BOOL)moduleCanBeRemoved; +- (void)moduleWillBeRemoved; +- (BOOL)preferencesWindowShouldClose; +- (void)_registerForNotifications; +- (void)_unregisterForNotifications; +- (void)_accountsDidChange:(id)arg1; +- (void)awakeFromNib; +- (void)_determineDefaultFontName; +- (void)_defaultFontMayHaveChanged:(id)arg1; +- (void)createSignature:(id)arg1; +- (id)_defaultSignatureContentForSelectedAccount; +- (BOOL)_endEditingOfSignatureOkayToReload:(BOOL)arg1 needsToReload:(char *)arg2; +- (void)removeSignatureSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)deleteKey:(id)arg1; +- (void)removeSignature:(id)arg1; +- (BOOL)allowsRichText; +- (void)changeSignatureRichness:(id)arg1; +- (BOOL)dataWillBeSynced; +- (void)dataWasSynced; +- (void)webViewDidChangeTypingStyle:(id)arg1; +- (void)webViewDidChange:(id)arg1; +- (void)_updatePopup; +- (BOOL)validateMenuItem:(id)arg1; +- (void)placeSignatureAboveQuotedText:(id)arg1; +- (BOOL)_validateValuesInUI; +- (void)_updateWebView; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (BOOL)webView:(id)arg1 shouldInsertNode:(id)arg2 replacingDOMRange:(id)arg3 givenAction:(int)arg4; +- (id)webView:(id)arg1 shouldReplaceSelectionWithWebArchive:(id)arg2 givenAction:(int)arg3; +- (void)webView:(id)arg1 didAddMailAttachment:(id)arg2; +- (void)webView:(id)arg1 didFailLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didFailProvisionalLoadWithError:(id)arg2 forFrame:(id)arg3; +- (id)_webArchiveForEditedSignature; +- (void)_displaySelectedSignatureDetails; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)truncatingAttributes; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (BOOL)control:(id)arg1 textView:(id)arg2 doCommandBySelector:(SEL)arg3; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMaxCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (BOOL)allowQuoting; +- (void)convertToNumberedList:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)insertNumberedList:(id)arg1; +- (void)insertBulletedList:(id)arg1; +- (BOOL)selectionIsInList; +- (void)editLink; +- (void)removeSelectedLink; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)setAllowsRichText:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/SignedTextAttachment.h b/MailHeaders/Lion/Mail/SignedTextAttachment.h new file mode 100644 index 00000000..1bffdf5f --- /dev/null +++ b/MailHeaders/Lion/Mail/SignedTextAttachment.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@interface SignedTextAttachment : NSTextAttachment +{ +} + +@end + diff --git a/MailHeaders/Lion/Mail/SimpleLinkAbbreviator.h b/MailHeaders/Lion/Mail/SimpleLinkAbbreviator.h new file mode 100644 index 00000000..917ced7a --- /dev/null +++ b/MailHeaders/Lion/Mail/SimpleLinkAbbreviator.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "RedundantContentAbbreviator.h" + +@class DOMElement, NSString; + +@interface SimpleLinkAbbreviator : RedundantContentAbbreviator +{ + DOMElement *_expandLinkElement; + NSString *_senderName; +} + +- (void)dealloc; +- (BOOL)_passesMinimumSizeThreshold; +- (BOOL)abbreviate; +- (BOOL)expand; +- (double)verticalFoldPosition; +- (BOOL)needsLayoutInformation; +@property(retain, nonatomic) NSString *senderName; // @synthesize senderName=_senderName; + +@end + diff --git a/MailHeaders/Lion/Mail/SimpleLinkWithDottedBlockquoteBarAbbreviator.h b/MailHeaders/Lion/Mail/SimpleLinkWithDottedBlockquoteBarAbbreviator.h new file mode 100644 index 00000000..6b4b96b1 --- /dev/null +++ b/MailHeaders/Lion/Mail/SimpleLinkWithDottedBlockquoteBarAbbreviator.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "RedundantContentAbbreviator.h" + +@class DOMHTMLElement; + +@interface SimpleLinkWithDottedBlockquoteBarAbbreviator : RedundantContentAbbreviator +{ + DOMHTMLElement *_expandLinkElement; +} + +- (void)dealloc; +- (BOOL)_passesMinimumSizeThreshold; +- (BOOL)abbreviate; +- (BOOL)expand; +- (double)verticalFoldPosition; +- (BOOL)needsLayoutInformation; + +@end + diff --git a/MailHeaders/Lion/Mail/SingleMessageViewer.h b/MailHeaders/Lion/Mail/SingleMessageViewer.h new file mode 100644 index 00000000..697d5c48 --- /dev/null +++ b/MailHeaders/Lion/Mail/SingleMessageViewer.h @@ -0,0 +1,121 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MessageViewer.h" + +#import "MVSelectionOwner-Protocol.h" +#import "MailFullScreenWindowDelegate-Protocol.h" + +@class MessageContentController, NSArray, NSOperation, NSSet, NSView, SpotlightBar; + +@interface SingleMessageViewer : MessageViewer +{ + NSView *_messageContentView; + SpotlightBar *_spotlightBar; + NSOperation *_proxyIconOperation; + BOOL _nibLoaded; + BOOL _isForPrinting; + NSArray *_selectedMailboxes; + MessageContentController *_contentControllerObserving; + NSSet *_hiddenCopies; + NSSet *_relatedMessages; + BOOL _nextDeleteShouldMoveToTrash; + NSArray *_messagesToDelete; +} + ++ (id)existingSingleMessageViewerForMessage:(id)arg1; ++ (id)viewerForMessage:(id)arg1 hiddenCopies:(id)arg2 relatedMessages:(id)arg3 showRelatedMessages:(BOOL)arg4 showAllHeaders:(BOOL)arg5 viewingState:(id)arg6 expandedSelectedMailboxes:(id)arg7; ++ (id)toolbarIdentifier; ++ (id)toolbarIdentifierForMessageType:(BOOL)arg1 fullScreen:(BOOL)arg2; ++ (void)_createWithMessage:(id)arg1 hiddenCopies:(id)arg2 relatedMessages:(id)arg3 showRelatedMessages:(BOOL)arg4 expandedSelectedMailboxes:(id)arg5 andDefaults:(id)arg6; ++ (id)_messagesFromDictionary:(id)arg1; ++ (void)_createWithSavedDefaults:(id)arg1; ++ (BOOL)restoreAllViewersFromDefaults; ++ (void)saveDefaultsForAllSingleViewersWithDelay; ++ (void)saveDefaultsOmittingViewer:(id)arg1; +- (id)windowForMailFullScreen; +- (BOOL)mailFullScreenWindowShouldClose:(id)arg1; +- (void)restoreFrame; +- (BOOL)windowShouldClose:(id)arg1; +- (BOOL)windowShouldCloseForDelete; +- (void)windowWillClose:(id)arg1; +- (void)_updateWindowProxy:(id)arg1; +- (void)_updateWindowTitle; +- (id)filenameToDrag:(id)arg1; +- (BOOL)window:(id)arg1 shouldDragDocumentWithEvent:(id)arg2 from:(struct CGPoint)arg3 withPasteboard:(id)arg4; +- (unsigned long long)draggingSourceOperationMaskForLocal:(BOOL)arg1; +- (BOOL)window:(id)arg1 shouldPopUpDocumentPathMenu:(id)arg2; +- (void)_openEnclosingMailbox:(id)arg1; +- (void)loadMessageWindowNib; +- (id)initForViewingMessage:(id)arg1 hiddenCopies:(id)arg2 relatedMessages:(id)arg3 showRelatedMessages:(BOOL)arg4 showAllHeaders:(BOOL)arg5 viewingState:(id)arg6 expandedSelectedMailboxes:(id)arg7 isForPrinting:(BOOL)arg8 withDefaults:(id)arg9; +- (id)initPlain; +- (id)initWithMailboxUids:(id)arg1; +- (void)initFullScreenController; +- (void)dealloc; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (id)expandedSelectedMailboxes; +- (id)expandedSelectedMailboxUidsAllowingSearch; +- (id)_store; +- (void)_addMessageIDsFrom:(id)arg1 toDictionary:(id)arg2; +- (id)_messageIDDictionaryRepresentationOf:(id)arg1; +- (void)_adjustNewSingleViewerWindowFrame; +- (void)_setupFromDefaults; +- (void)_setupNextKeyViewLoop; +- (void)showAndMakeKey:(BOOL)arg1; +- (void)_reallySetUpResponder:(id)arg1; +- (void)_setUpResponders:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_restoreViewer; +- (id)dictionaryRepresentation; +- (void)takeOverAsSelectionOwner; +- (void)resignAsSelectionOwner; +- (id)selectedMessages; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)selectMailbox:(id)arg1; +- (void)setupToolbar; +- (void)updateToolbar; +- (BOOL)_isViewingMessage:(id)arg1; +- (BOOL)shouldDeleteMessageGivenCurrentState; +- (BOOL)shouldDeleteMessagesGivenCurrentState; +- (void)_messagesWereRemoved:(id)arg1; +- (void)_messageFlagsDidChange:(id)arg1; +- (void)_messagesCompacted:(id)arg1; +- (void)_noMessagesLeftToDisplay:(id)arg1; +- (void)markMessageAsViewed:(id)arg1; +- (void)deleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 allowingMoveToTrash:(BOOL)arg2; +- (void)fullScreenDeleteAnimationFinished; +- (void)_reallyDeleteMessages:(id)arg1 allowingMoveToTrash:(BOOL)arg2; +- (void)undeleteMessages:(id)arg1; +- (void)undeleteMessagesAllowUndo:(BOOL)arg1; +- (void)archiveMessages:(id)arg1; +- (void)replyMessage:(id)arg1; +- (void)replyAllMessage:(id)arg1; +- (void)replyToSender:(id)arg1; +- (void)replyToOriginalSender:(id)arg1; +- (void)forwardMessage:(id)arg1; +- (void)redirectMessage:(id)arg1; +- (BOOL)send:(id)arg1; +- (void)editorDidLoad:(id)arg1; +- (BOOL)_replaceWithEditorForType:(int)arg1 action:(SEL)arg2; +- (void)keyDown:(id)arg1; +- (id)selection; +- (id)selectionExpandingThreadsAndHiddenCopies:(BOOL)arg1; +- (void)selectMessages:(id)arg1; +- (id)currentDisplayedMessage; +- (id)messageStore; +- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (void)_showSpotlightBarWithSearchString:(id)arg1; +- (void)_hideSpotlightBar; +- (void)setSearchString:(id)arg1; +- (void)setShouldDisplayShowInMailboxLink:(BOOL)arg1; +- (void)revealMessage:(id)arg1; +- (void)_setAutorecalculatesContentBorderThickness:(BOOL)arg1; +@property(retain) NSArray *selectedMailboxes; // @synthesize selectedMailboxes=_selectedMailboxes; +@property(retain, nonatomic) NSOperation *proxyIconOperation; // @synthesize proxyIconOperation=_proxyIconOperation; + +@end + diff --git a/MailHeaders/Lion/Mail/SlidingAnimation.h b/MailHeaders/Lion/Mail/SlidingAnimation.h new file mode 100644 index 00000000..fd2027b8 --- /dev/null +++ b/MailHeaders/Lion/Mail/SlidingAnimation.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableDictionary; + +@interface SlidingAnimation : NSObject +{ + id _delegate; + NSMutableDictionary *_views; + BOOL _isSliding; + BOOL _isPaused; +} + ++ (id)_runLoopModesForAnimation; +- (id)init; +- (void)dealloc; +- (void)_updateViewPosition:(id)arg1 forTime:(double)arg2; +- (void)_updateTimer; +- (void)_showNextFrame; +- (void)setDestinationForView:(id)arg1 to:(struct CGRect)arg2 duration:(double)arg3; +- (void)_sendViewToDestination:(id)arg1; +- (struct CGRect)destinationForView:(id)arg1; +- (void)stopView:(id)arg1; +- (void)stop; +- (void)setDelegate:(id)arg1; +- (BOOL)isSliding; +- (void)pause; +- (void)resume; + +@end + diff --git a/MailHeaders/Lion/Mail/SlidingAnimationDelegate-Protocol.h b/MailHeaders/Lion/Mail/SlidingAnimationDelegate-Protocol.h new file mode 100644 index 00000000..511d10e1 --- /dev/null +++ b/MailHeaders/Lion/Mail/SlidingAnimationDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol SlidingAnimationDelegate + +@optional +- (void)finishedSlidingAnimation:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/SlidingViewsBar.h b/MailHeaders/Lion/Mail/SlidingViewsBar.h new file mode 100644 index 00000000..d35b70d7 --- /dev/null +++ b/MailHeaders/Lion/Mail/SlidingViewsBar.h @@ -0,0 +1,67 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +#import "SlidingAnimationDelegate-Protocol.h" + +@class ClippedItemsIndicator, NSMutableArray, SlidingAnimation; + +@interface SlidingViewsBar : NSView +{ + unsigned long long _dragSourceIndex; + unsigned long long _dropIndex; + double _draggedItemWidth; + NSMutableArray *_buttons; + ClippedItemsIndicator *_rightClipIndicator; + SlidingAnimation *_animation; +} + ++ (double)buttonBottomOffset; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)dealloc; +- (unsigned long long)lastNonSlidingViewIndex; +- (double)maxButtonXWithoutClipIndicator; +- (double)maxButtonXWithClipIndicator; +- (double)maxButtonX; +- (double)minButtonX; +- (double)minSlidingViewX; +- (struct CGRect)_constrainProposedButtonFrame:(struct CGRect)arg1; +- (double)paddingBetweenButtons; +- (void)reorderedSlidingView:(id)arg1; +- (void)draggedSlidingView:(id)arg1; +- (void)refreshButtons; +- (unsigned long long)dropIndexFromDraggingInfo:(id)arg1; +- (unsigned long long)dropIndexFromLocalPoint:(struct CGPoint)arg1; +- (void)slideButtonsIntoPlace; +@property(nonatomic) unsigned long long dropIndex; +- (id)_lastDraggedEventFollowing:(id)arg1; +- (id)_lastDraggedOrUpEventFollowing:(id)arg1; +- (BOOL)reorderSlidingView:(id)arg1 fromMouseDownEvent:(id)arg2; +- (void)pauseAnimation; +- (void)resumeAnimation; +- (double)widthOfDraggingInfo:(id)arg1; +- (double)slidingWidthForView:(id)arg1; +- (unsigned long long)updateDropTarget:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (void)draggingExited:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (void)draggingEnded:(id)arg1; +- (BOOL)isSliding; +- (void)moveSlidingViewToCurrentDropIndex:(id)arg1; +- (id)viewPinnedToOverflowIndicator; +- (void)viewWillBeginDragging:(id)arg1; +- (BOOL)isFlipped; +- (void)_mainStatusDidChange:(id)arg1; +- (void)_ensureButtonIsInViewHierarchy:(id)arg1; +@property double draggedItemWidth; // @synthesize draggedItemWidth=_draggedItemWidth; +@property(retain) SlidingAnimation *animation; // @synthesize animation=_animation; +@property(retain) NSMutableArray *buttons; // @synthesize buttons=_buttons; +@property(retain) ClippedItemsIndicator *rightClipIndicator; // @synthesize rightClipIndicator=_rightClipIndicator; +@property unsigned long long dragSourceIndex; // @synthesize dragSourceIndex=_dragSourceIndex; + +@end + diff --git a/MailHeaders/Lion/Mail/SmartMailboxEditor.h b/MailHeaders/Lion/Mail/SmartMailboxEditor.h new file mode 100644 index 00000000..d167d80a --- /dev/null +++ b/MailHeaders/Lion/Mail/SmartMailboxEditor.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class CriteriaUIHelper, MailboxUid, NSButton, NSTextField, NSTextView, NSView; + +@interface SmartMailboxEditor : NSObject +{ + MailboxUid *_mailboxBeingEdited; + MailboxUid *_mailboxBeingValidated; + CriteriaUIHelper *_criteriaUIHelper; + NSTextField *_nameField; + NSTextField *_groupNameField; + NSTextField *_searchStringField; + NSTextView *_mailboxesTextView; + NSButton *_includeTrashCheckbox; + NSButton *_includeSentCheckbox; + NSView *_criteriaView; + BOOL _editedMailboxIsNew; +} + ++ (BOOL)isEditingInProgress; ++ (BOOL)mailboxIsEditable:(id)arg1; +- (void)dealloc; +- (void)editSmartMailbox:(id)arg1 suggestedName:(id)arg2 isNew:(BOOL)arg3; +- (void)createNewMailboxGroup; +- (void)_sheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)okClicked:(id)arg1; +- (void)cancelClicked:(id)arg1; +- (void)_saveEditedMailbox; + +@end + diff --git a/MailHeaders/Lion/Mail/SortBarButton.h b/MailHeaders/Lion/Mail/SortBarButton.h new file mode 100644 index 00000000..f88fd734 --- /dev/null +++ b/MailHeaders/Lion/Mail/SortBarButton.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSButton.h" + +@class NSMenu; + +@interface SortBarButton : NSButton +{ +} + +- (id)initWithControlSize:(unsigned long long)arg1; +- (void)mouseDown:(id)arg1; +- (void)setShowsSortDirection:(BOOL)arg1; +@property(retain, nonatomic) NSMenu *popUpMenu; +- (void)showPopUpMenu; + +@end + diff --git a/MailHeaders/Lion/Mail/SoundPopUpButton.h b/MailHeaders/Lion/Mail/SoundPopUpButton.h new file mode 100644 index 00000000..d33ab0c7 --- /dev/null +++ b/MailHeaders/Lion/Mail/SoundPopUpButton.h @@ -0,0 +1,77 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +#import "NSTableViewDataSource-Protocol.h" +#import "NSTableViewDelegate-Protocol.h" + +@class NSButton, NSMenu, NSMenuItem, NSMutableArray, NSPanel, NSString, NSTableView; + +@interface SoundPopUpButton : NSPopUpButton +{ + NSButton *_removeSoundButton; + NSTableView *_soundTableView; + NSMutableArray *_userSounds; + NSPanel *_soundPanel; + id _delegate; + NSMenu *_soundMenu; + NSString *_selectedItem; + NSMenuItem *_otherItem; + BOOL _amIAwake; + BOOL _showSoundsFromBundle; + BOOL _showSoundsFromDelegate; + BOOL _showSoundsFromSystemLibrary; + BOOL _showSoundsFromLibrary; + BOOL _showSoundsFromNetworkLibrary; + BOOL _showSoundsFromTildeLibrary; + BOOL _showNone; + BOOL _showAddRemove; +} + +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; +- (void)_commonInit; +- (void)awakeFromNib; +- (void)dealloc; +- (id)menu; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableViewSelectionDidChange:(id)arg1; +- (id)_addItemWithTitle:(id)arg1; +- (void)_appendSoundsFromDirectories:(id)arg1; +- (void)_popupMenuChanged:(id)arg1; +- (void)_configureSoundMenu; +- (void)_playSound; +- (void)_playSoundForItemAtIndex:(long long)arg1; +- (void)_invalidateSoundMenu; +- (id)otherMenuItem; +- (id)soundPath; +- (long long)selectSoundPath:(id)arg1; +- (void)addRemoveMailSound:(id)arg1; +- (void)soundSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)newSoundClicked:(id)arg1; +- (void)removeSoundClicked:(id)arg1; +- (void)doneClicked:(id)arg1; +- (BOOL)showSoundsFromBundle; +- (void)setShowSoundsFromBundle:(BOOL)arg1; +- (BOOL)showSoundsFromDelegate; +- (void)setShowSoundsFromDelegate:(BOOL)arg1; +- (BOOL)showSoundsFromSystemLibrary; +- (void)setShowSoundsFromSystemLibrary:(BOOL)arg1; +- (BOOL)showSoundsFromLibrary; +- (void)setShowSoundsFromLibrary:(BOOL)arg1; +- (BOOL)showSoundsFromNetworkLibrary; +- (void)setShowSoundsFromNetworkLibrary:(BOOL)arg1; +- (BOOL)showSoundsFromTildeLibrary; +- (void)setShowSoundsFromTildeLibrary:(BOOL)arg1; +- (BOOL)showNone; +- (void)setShowNone:(BOOL)arg1; +- (BOOL)showAddRemove; +- (void)setShowAddRemove:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/SpecialMailboxes.h b/MailHeaders/Lion/Mail/SpecialMailboxes.h new file mode 100644 index 00000000..b16daf19 --- /dev/null +++ b/MailHeaders/Lion/Mail/SpecialMailboxes.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSButton, NSPopUpButton, NSView; + +@interface SpecialMailboxes : NSObject +{ + NSView *_view; + NSButton *_notesInInbox; + NSPopUpButton *_sentMessagesAgePopup; + NSPopUpButton *_junkAgePopup; + NSPopUpButton *_trashAgePopup; +} + ++ (id)specialMailboxesForAccountClass:(Class)arg1; +- (void)dealloc; +- (id)view; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (BOOL)setupAccountFromValuesInUI:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (void)postSpecialMailboxesDidChangeNotification:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/SplitterAnimation.h b/MailHeaders/Lion/Mail/SplitterAnimation.h new file mode 100644 index 00000000..97078730 --- /dev/null +++ b/MailHeaders/Lion/Mail/SplitterAnimation.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAnimation.h" + +@class ExpandingSplitView; + +@interface SplitterAnimation : NSAnimation +{ + ExpandingSplitView *_splitView; + double _startPercentage; + double _endPercentage; +} + +- (id)initWithSplitView:(id)arg1 endPercentage:(double)arg2; +- (id)initWithSplitView:(id)arg1 endPercentage:(double)arg2 duration:(double)arg3; +- (id)initWithDuration:(double)arg1 animationCurve:(unsigned long long)arg2; +- (void)dealloc; +- (void)_updatePercentage; +- (void)setCurrentProgress:(float)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/SpotlightBar.h b/MailHeaders/Lion/Mail/SpotlightBar.h new file mode 100644 index 00000000..f821cd9f --- /dev/null +++ b/MailHeaders/Lion/Mail/SpotlightBar.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSButton, NSString, NSTextField; + +@interface SpotlightBar : NSView +{ + NSString *_searchString; + NSTextField *_textField; + NSButton *_searchButton; +} + +- (void)_setupView; +- (id)initWithFrame:(struct CGRect)arg1 searchString:(id)arg2; +- (void)dealloc; +- (void)setSearchString:(id)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (void)_searchButtonAction:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/StarFieldController.h b/MailHeaders/Lion/Mail/StarFieldController.h new file mode 100644 index 00000000..38d88e5e --- /dev/null +++ b/MailHeaders/Lion/Mail/StarFieldController.h @@ -0,0 +1,68 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MTMMailbox, MTMWindowController, NSDictionary, NSMutableArray, NSMutableDictionary, NSTimer; + +@interface StarFieldController : NSObject +{ + NSMutableDictionary *_windowControllers; + NSMutableDictionary *_bufferedControllers; + MTMWindowController *_currentActiveWindowController; + MTMWindowController *_currentTimeWindowController; + struct CGRect _mailFrame; + struct CGRect _initialFrame; + NSDictionary *_mailDisplayState; + NSMutableArray *_thumbnailUpdateQueue; + NSTimer *_updateTimer; + NSDictionary *_sharedDisplayState; + BOOL _showChangedItemsOnly; + BOOL _isInTimeMachine; + BOOL _timeMachineStarted; + BOOL _firstThumbnailUpdateRequest; + BOOL _hasAtLeastSentOneThumbnail; + BOOL _dismissed; + MTMMailbox *_pausedMailbox; +} + ++ (id)keyPathsForValuesAffectingIsInTimeMachine; ++ (id)sharedController; +- (id)init; +- (void)dealloc; +- (id)mainURL; +- (void)showCurrentStateMailDisplayState:(id)arg1; +@property(readonly) MTMWindowController *currentTimeWindowController; +@property(readonly) MTMWindowController *activeWindowController; +- (void)startEnterTransitionOfWindowController:(id)arg1 fromFrame:(struct CGRect)arg2; +- (void)_enterTransitionDidEnd:(id)arg1; +- (void)startExitTransitionOfWindowController:(id)arg1; +- (void)appHasExitedTimeMachineAndFinishedRestoring; +- (id)windowControllerForURL:(id)arg1 forDisplay:(BOOL)arg2 canCreate:(BOOL)arg3; +- (void)removeWindowControllerForURL:(id)arg1; +- (void)setActiveWindowController:(id)arg1; +- (BOOL)startTimeMachine; +- (void)timeMachineWasDismissed; +- (void)_updateAllThumbnails; +- (void)updateAllThumbnails; +- (void)updateThumbnailForURL:(id)arg1 withFrame:(struct CGRect)arg2; +- (void)markSnapshotAsDirty:(id)arg1; +- (void)updateNextThumbnail; +- (void)scheduleUpdateForURL:(id)arg1 withFrame:(struct CGRect)arg2; +- (id)_correctedURLForURL:(id)arg1 proposedQueryString:(id)arg2; +- (id)revisionIDForURL:(id)arg1; +- (id)activateWindowForURL:(id)arg1 changedItemsOnly:(BOOL)arg2 atFrame:(struct CGRect)arg3; +- (id)deactivateWindowForURL:(id)arg1; +- (void)showChangedItemsOnlyToggled:(BOOL)arg1; +- (void)restoreFromURL:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(readonly) BOOL timeMachineStarted; // @synthesize timeMachineStarted=_timeMachineStarted; +@property BOOL showChangedItemsOnly; // @synthesize showChangedItemsOnly=_showChangedItemsOnly; +@property BOOL isInTimeMachine; // @synthesize isInTimeMachine=_isInTimeMachine; +@property(retain) NSDictionary *sharedDisplayState; // @synthesize sharedDisplayState=_sharedDisplayState; + +@end + diff --git a/MailHeaders/Lion/Mail/StartupManager.h b/MailHeaders/Lion/Mail/StartupManager.h new file mode 100644 index 00000000..f25df834 --- /dev/null +++ b/MailHeaders/Lion/Mail/StartupManager.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface StartupManager : NSObject +{ +} + ++ (BOOL)setupAccountsAndSynchronize:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/Stationery.h b/MailHeaders/Lion/Mail/Stationery.h new file mode 100644 index 00000000..7d0429f9 --- /dev/null +++ b/MailHeaders/Lion/Mail/Stationery.h @@ -0,0 +1,78 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSBundle, NSDictionary, NSImage, NSMutableDictionary, NSString; + +@interface Stationery : NSObject +{ + NSDictionary *_descriptionDictionary; + NSDictionary *_localizedDescriptionDictionary; + NSBundle *_bundle; + NSString *_html; + NSMutableDictionary *_imageData; + NSImage *_thumbnailImage; + NSMutableDictionary *_overrideImageDictionary; + NSMutableDictionary *_overrideStyleDictionary; + BOOL _isCustom; + NSArray *_colors; + NSString *_defaultColor; + NSString *_uniqueIDForBaseURL; +} + +- (id)initWithPath:(id)arg1; +- (id)init; +- (void)dealloc; +- (BOOL)isUserSelectable; +- (BOOL)isCustom; +- (void)setIsCustom:(BOOL)arg1; +- (BOOL)isUserCreatedCustomStationery; +- (void)markAsUserCreatedCustomStationery; +- (id)overrideImageDictionary; +- (id)overrideStyleDictionary; +- (id)parsedMessage; +- (id)attachmentsForImages:(id)arg1 typeIsBackground:(BOOL)arg2; +- (id)html; +- (BOOL)hasImages; +- (id)pathToBackgroundTile; +- (id)backgroundTile; +- (struct CGPoint)patternPhaseForView:(id)arg1; +- (id)uniqueIDForBaseURL; +- (void)setUniqueIDForBaseURL:(id)arg1; +- (id)colors; +- (id)defaultColor; +- (double)letterTopMargin; +- (double)letterWidth; +- (id)nextColorAfterColor:(id)arg1; +- (id)imagePathsForColor:(id)arg1; +- (id)backgroundImagePathsForColor:(id)arg1 previousColor:(id)arg2; +- (id)imagesInCompositeImagesForColor:(id)arg1; +- (id)fontsForColor:(id)arg1; +- (void)changeFolderAndDisplayNameTo:(id)arg1; +- (id)stationeryID; +- (id)folderName; +- (id)displayName; +- (id)thumbnailImagePath; +- (id)thumbnailImage; +- (id)setThumbnailImage:(id)arg1; +- (id)headers; +- (void)setMinimumWidth:(double)arg1; +- (void)setStationeryName:(id)arg1; +- (void)setHTML:(id)arg1; +- (id)addImageWithData:(id)arg1 name:(id)arg2; +- (void)setValue:(id)arg1 forHeader:(id)arg2; +- (BOOL)saveToPath:(id)arg1 error:(id *)arg2; +- (void)addValueToDescription:(id)arg1 forKey:(id)arg2; +- (void)addOverrideImageData:(id)arg1 name:(id)arg2; +- (void)addOverrideStyle:(id)arg1 elementId:(id)arg2; +- (id)bundlePath; +- (void)setBundlePath:(id)arg1; +- (BOOL)isEqual:(id)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Mail/StationeryCompositeImage.h b/MailHeaders/Lion/Mail/StationeryCompositeImage.h new file mode 100644 index 00000000..26c86662 --- /dev/null +++ b/MailHeaders/Lion/Mail/StationeryCompositeImage.h @@ -0,0 +1,61 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSData, NSMutableArray, NSString, StationeryCompositeImageView; + +@interface StationeryCompositeImage : NSObject +{ + NSData *_baseImageData; + NSData *_overlayImageData; + NSArray *_masks; + NSMutableArray *_userImages; + StationeryCompositeImageView *_view; + NSString *_contentID; + NSString *_mimeType; + NSString *_preferredFilename; + BOOL _isReadOnly; + long long _index; +} + +- (id)init; +- (id)initWithData:(id)arg1; +- (id)data; +- (void)dealloc; +- (BOOL)isValid; +- (void)setView:(id)arg1; +- (void)setBaseImageData:(id)arg1; +- (id)baseImage; +- (void)setOverlayImageData:(id)arg1; +- (id)overlayImage; +- (void)setMasks:(id)arg1; +- (id)masks; +- (void)addUserImage:(id)arg1; +- (id)userImages; +- (id)userImagesToSave; +- (long long)numberOfDropZones; +- (id)dataForCompositedImage; +- (id)mimeTypeForCompositedImage; +- (id)filenameForCompositedImage; +- (void)setIsReadOnly:(BOOL)arg1; +- (BOOL)isReadOnly; +- (void)setIndex:(long long)arg1; +- (long long)index; +- (unsigned long long)approximateSize; +- (void)setContentID:(id)arg1; +- (id)contentID; +- (void)setMimeType:(id)arg1; +- (id)mimeType; +- (void)setPreferredFilename:(id)arg1; +- (id)preferredFilename; +- (void)setFilename:(id)arg1; +- (id)filename; +- (BOOL)isPlaceholder; +- (id)fileWrapper; + +@end + diff --git a/MailHeaders/Lion/Mail/StationeryCompositeImageMask.h b/MailHeaders/Lion/Mail/StationeryCompositeImageMask.h new file mode 100644 index 00000000..c5f3c949 --- /dev/null +++ b/MailHeaders/Lion/Mail/StationeryCompositeImageMask.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSData, NSImage; + +@interface StationeryCompositeImageMask : NSObject +{ + NSData *_maskImageData; + NSImage *_maskImage; + struct CGSize _dropZoneOffset; + double _dropZoneAngle; + struct CGSize _dropZoneSize; + NSData *_placeholderImageData; + NSImage *_placeholderImage; +} + +- (id)initWithDictionary:(id)arg1; +- (id)dictionary; +- (void)dealloc; +- (BOOL)isValid; +- (void)setMaskImageData:(id)arg1; +- (id)maskImage; +- (void)setPlaceholderImageData:(id)arg1; +- (id)placeholderImage; +- (void)discardPlaceholderImage; +- (void)setDropZoneOffset:(struct CGSize)arg1; +- (struct CGSize)dropZoneOffset; +- (void)setDropZoneAngle:(double)arg1; +- (double)dropZoneAngle; +- (void)setDropZoneSize:(struct CGSize)arg1; +- (struct CGSize)dropZoneSize; +- (struct CGRect)dropZoneBoundingBox; +- (struct CGRect)dropZoneRect; +- (struct CGSize)actualMaskSize; + +@end + diff --git a/MailHeaders/Lion/Mail/StationeryController.h b/MailHeaders/Lion/Mail/StationeryController.h new file mode 100644 index 00000000..d0d1f3aa --- /dev/null +++ b/MailHeaders/Lion/Mail/StationeryController.h @@ -0,0 +1,58 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ComposeBackEnd, EditableWebMessageDocument, NSMutableArray, NSMutableDictionary, NSString, NSTimer, Stationery, WebView; + +@interface StationeryController : NSObject +{ + Stationery *_stationery; + BOOL _isStationeryLoaded; + NSString *_currentColor; + double _letterTopMargin; + double _letterWidth; + id _savedResourceLoadDelegate; + id _savedFrameLoadDelegate; + long long _numberOfResourcesNotYetLoaded; + BOOL _isLoadingStationery; + BOOL _isChangingStationeryColor; + BOOL _isLoadingResources; + BOOL _shouldAnimateTransitions; + WebView *_webView; + ComposeBackEnd *_composeBackEnd; + EditableWebMessageDocument *_messageDocument; + NSMutableDictionary *_fontElementsWithColors; + NSMutableArray *_colorsThatHaveBeenDisplayed; + NSTimer *_flushWindowTimer; +} + +- (void)dealloc; +- (BOOL)isUpdatingWebView; +- (void)setComposeBackEnd:(id)arg1; +- (void)setWebView:(id)arg1; +- (id)stationery; +- (void)setStationery:(id)arg1; +- (BOOL)isStationeryLoaded; +- (void)setStationeryIsLoaded:(BOOL)arg1; +- (id)color; +- (void)setColor:(id)arg1; +- (void)showColorOptions; +- (void)loadStationery:(id)arg1; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)_finishLoadingStationery; +- (void)webView:(id)arg1 didFailLoadWithError:(id)arg2 forFrame:(id)arg3; +- (id)webView:(id)arg1 identifierForInitialRequest:(id)arg2 fromDataSource:(id)arg3; +- (void)webView:(id)arg1 resource:(id)arg2 didFinishLoadingFromDataSource:(id)arg3; +- (void)webView:(id)arg1 didLoadResourceFromMemoryCache:(id)arg2 response:(id)arg3 length:(long long)arg4 fromDataSource:(id)arg5; +- (void)_timerDidFire:(id)arg1; +- (void)_webViewDidFinishLoadingAllResources; +- (void)userClickedOnStationeryBackground:(id)arg1; +- (void)changeStationeryColor:(id)arg1; +- (id)stationeryFromCurrentMessageError:(id *)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/StationeryDynamicElement.h b/MailHeaders/Lion/Mail/StationeryDynamicElement.h new file mode 100644 index 00000000..108504e6 --- /dev/null +++ b/MailHeaders/Lion/Mail/StationeryDynamicElement.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString; + +@interface StationeryDynamicElement : NSObject +{ + unsigned long long _type; + NSString *_dateFormat; +} + ++ (id)dynamicElementFromDOMElement:(id)arg1; +- (id)initWithType:(unsigned long long)arg1; +- (void)dealloc; +- (unsigned long long)type; +- (void)setDateFormat:(id)arg1; +- (id)fragmentToReplaceHTMLObjectBackEnd:(id)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Mail/StationeryLoader.h b/MailHeaders/Lion/Mail/StationeryLoader.h new file mode 100644 index 00000000..6309fa9d --- /dev/null +++ b/MailHeaders/Lion/Mail/StationeryLoader.h @@ -0,0 +1,64 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableArray, NSMutableDictionary; + +@interface StationeryLoader : NSObject +{ + NSMutableDictionary *_categoriesByDisplayName; + NSMutableArray *_orderedCategoryDisplayNames; + NSMutableDictionary *_orderedStationeryByCategoryDisplayName; +} + ++ (id)sharedInstance; ++ (id)pathForCustomCategory; ++ (id)pathForCustomCategoryResources; ++ (void)purgeDeletedCustomStationery; +- (void)dealloc; +- (id)stationeryWithID:(id)arg1; +- (id)stationeryWithPath:(id)arg1; +- (id)pathForStationeryWithID:(id)arg1; +- (id)_dictionaryForStationeryWithPath:(id)arg1 inCategoryWithDisplayName:(id)arg2; +- (id)_dictionaryForStationeryWithPath:(id)arg1 inCategoryWithDisplayName:(id)arg2 position:(long long *)arg3; +- (void)updateStationery; +- (id)orderedCategoryDisplayNamesIncludingFavorites; +- (id)orderedCategoryDictionaries; +- (id)orderedStationeryDictionariesForCategoryWithDisplayName:(id)arg1; +- (id)pathForFavoritesList; +- (void)createAppleUserCompanyBundleIfNecessary; +- (id)bundlePathForCategoryWithFolderName:(id)arg1 company:(id)arg2 type:(long long)arg3; +- (id)pathForStationeryNamed:(id)arg1 inCategoryWithDisplayName:(id)arg2; +- (id)_cachedTOCWithName:(id)arg1; +- (void)_cacheTOC:(id)arg1 withName:(id)arg2; +- (id)_cacheNameForCompany:(id)arg1 categoryDisplayName:(id)arg2 type:(long long)arg3; +- (void)_updateCategories; +- (id)_companyTOCWithName:(id)arg1 type:(long long)arg2 isFromCache:(char *)arg3; +- (void)_combinePartialTOCs:(id)arg1; +- (id)_dictionaryForCustomCategoryForCompany:(BOOL)arg1; +- (id)_validatedCompanyCategoryDictionary:(id)arg1 categoryFolderName:(id)arg2 companyBundle:(id)arg3 type:(long long)arg4; +- (id)validatedStationeryDictionary:(id)arg1 withName:(id)arg2 categoryBundle:(id)arg3 needsThumbnail:(char *)arg4; +- (void)_updateStationeryInCategoryWithDisplayName:(id)arg1; +- (id)_categoryTOCForCategoryFolderName:(id)arg1 company:(id)arg2 type:(long long)arg3 categoryDisplayName:(id)arg4; +- (void)thumbnailCreatorDidCompletelyFinish:(id)arg1; +- (void)thumbnailCreatorDidCreateThumbnailForCustomStationery:(id)arg1; +- (void)thumbnailCreator:(id)arg1 didCreateThumbnail:(id)arg2 forCustomStationeryWithPath:(id)arg3; +- (BOOL)stationery:(id)arg1 isInCategoryWithDisplayName:(id)arg2; +- (BOOL)customStationeryWithNameExists:(id)arg1 index:(long long *)arg2; +- (void)addToFavoritesStationeryWithPath:(id)arg1 inCategoryWithDisplayName:(id)arg2; +- (void)_addToFavoritesInPosition:(long long)arg1 stationeryWithPath:(id)arg2 inCategoryWithDisplayName:(id)arg3; +- (BOOL)_recursivelyCreateDirectory:(id)arg1 error:(id *)arg2; +- (BOOL)saveCustomStationery:(id)arg1 error:(id *)arg2; +- (BOOL)_saveCustomStationery:(id)arg1 byMovingFromPath:(id)arg2 error:(id *)arg3; +- (BOOL)installStationery:(id)arg1; +- (void)deleteStationeryWithDictionary:(id)arg1 fromCategoryWithDisplayName:(id)arg2 undoManager:(id)arg3; +- (void)_reinsertStationeryWithInformation:(id)arg1; +- (void)purgeDeletedCustomStationery:(id)arg1; +- (void)_synchronouslyPurgeDeletedCustomStationery:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/StationerySelector.h b/MailHeaders/Lion/Mail/StationerySelector.h new file mode 100644 index 00000000..bf19b0b8 --- /dev/null +++ b/MailHeaders/Lion/Mail/StationerySelector.h @@ -0,0 +1,67 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSTableViewDataSource-Protocol.h" +#import "NSTableViewDelegate-Protocol.h" + +@class ColorBackgroundView, MailDocumentEditor, NSArray, NSImageView, NSMutableArray, NSMutableDictionary, NSScrollView, NSTableView, NSView, StationeryLoader, ThumbnailMatrix, _EmptyFavoritesMessageView; + +@interface StationerySelector : NSObject +{ + NSTableView *_categoriesTableView; + ThumbnailMatrix *_thumbnailMatrix; + MailDocumentEditor *_documentEditor; + NSView *_selectorPane; + ColorBackgroundView *_horizontalScrollerBackground; + _EmptyFavoritesMessageView *_emptyFavoritesMessageView; + NSScrollView *_thumbnailsScrollView; + NSImageView *_thumbnailLeftSideShadowView; + double _minimumScrollViewContentOriginX; + StationeryLoader *_stationeryLoader; + NSArray *_categoryDictionaries; + NSArray *_stationeryDictionaries; + NSMutableArray *_deletedStationery; + NSMutableDictionary *_scrollPositionByCategory; + BOOL _isFirstShowOfCategoriesForFavorites; + BOOL _isFirstShowOfCategoriesForExistingStationery; + BOOL _hasRegisteredForNewThumbnailImageNotifications; +} + +- (id)init; +- (void)awakeFromNib; +- (void)dealloc; +- (double)stationeryPaneHeight; +- (double)horizontalScrollerWidth; +- (double)scrollerValue; +- (double)scrollerProportion; +- (void)showStationery; +- (void)_refreshStationery; +- (void)_stationeryDidChange:(id)arg1; +- (void)selectCategory:(id)arg1; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (double)tableView:(id)arg1 heightOfRow:(long long)arg2; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)_saveThumbnailScrollPosition; +- (void)_restoreThumbnailScrollPosition; +- (void)_displayStationery:(id)arg1 showDeleteButtons:(BOOL)arg2 beginningAtIndex:(long long)arg3; +- (void)_setStationeryDictionaries:(id)arg1; +- (void)selectStationery:(id)arg1; +- (void)clearStationerySelection; +- (void)deleteStationery:(id)arg1; +- (void)startDragSessionFromIndex:(long long)arg1 withImage:(id)arg2 event:(id)arg3; +- (BOOL)handleDropIntoFavorites; +- (void)_thumbnailImageIsAvailable:(id)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (BOOL)_draggingPasteboardContainsStationery; +- (void)_thumbnailsDidScroll:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/StatusCell.h b/MailHeaders/Lion/Mail/StatusCell.h new file mode 100644 index 00000000..60d424a2 --- /dev/null +++ b/MailHeaders/Lion/Mail/StatusCell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSImageTextFieldCell.h" + +@interface StatusCell : NSImageTextFieldCell +{ + long long _statusType; +} + +- (id)accessibilityAttributeValue:(id)arg1; +@property(nonatomic) long long statusType; // @synthesize statusType=_statusType; + +@end + diff --git a/MailHeaders/Lion/Mail/SubjectFormatter.h b/MailHeaders/Lion/Mail/SubjectFormatter.h new file mode 100644 index 00000000..c3b2fac0 --- /dev/null +++ b/MailHeaders/Lion/Mail/SubjectFormatter.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFormatter.h" + +@interface SubjectFormatter : NSFormatter +{ +} + +- (id)stringForObjectValue:(id)arg1; +- (id)attributedStringForObjectValue:(id)arg1 withDefaultAttributes:(id)arg2; +- (id)editingStringForObjectValue:(id)arg1; +- (BOOL)getObjectValue:(id *)arg1 forString:(id)arg2 errorDescription:(id *)arg3; +- (BOOL)isPartialStringValid:(id)arg1 newEditingString:(id *)arg2 errorDescription:(id *)arg3; + +@end + diff --git a/MailHeaders/Lion/Mail/SyncableApp-Protocol.h b/MailHeaders/Lion/Mail/SyncableApp-Protocol.h new file mode 100644 index 00000000..0ae1a3e4 --- /dev/null +++ b/MailHeaders/Lion/Mail/SyncableApp-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol SyncableApp +- (id)syncerForDataType:(long long)arg1; +- (id)ownerForDataType:(long long)arg1; +- (id)interestedPartiesForDataType:(long long)arg1; +- (BOOL)tellInterestedPartiesDataWillBeSyncedForDataType:(long long)arg1; +- (void)tellInterestedPartiesDataWasSyncedForDataType:(long long)arg1; +- (void)client:(id)arg1 mightWantToSyncEntityNames:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/SyncableDataInterestedParty-Protocol.h b/MailHeaders/Lion/Mail/SyncableDataInterestedParty-Protocol.h new file mode 100644 index 00000000..5f0377fa --- /dev/null +++ b/MailHeaders/Lion/Mail/SyncableDataInterestedParty-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol SyncableDataInterestedParty +- (BOOL)dataWillBeSynced; +- (void)dataWasSynced; +@end + diff --git a/MailHeaders/Lion/Mail/SyncableDataOwner-Protocol.h b/MailHeaders/Lion/Mail/SyncableDataOwner-Protocol.h new file mode 100644 index 00000000..14e4d2c4 --- /dev/null +++ b/MailHeaders/Lion/Mail/SyncableDataOwner-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol SyncableDataOwner +- (BOOL)dataWillBeSyncedVersion:(id *)arg1 data:(id *)arg2 type:(id)arg3; +- (BOOL)dataWasSyncedVersion:(id)arg1 newData:(id)arg2 acceptedChanges:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/TableHeaderView.h b/MailHeaders/Lion/Mail/TableHeaderView.h new file mode 100644 index 00000000..32d2b19f --- /dev/null +++ b/MailHeaders/Lion/Mail/TableHeaderView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableHeaderView.h" + +@interface TableHeaderView : NSTableHeaderView +{ + BOOL _noSeparatorLines; +} + ++ (id)updateHeaderViewForTableView:(id)arg1; +- (BOOL)drawsSeparatorLines; +- (void)setDrawsSeparatorLines:(BOOL)arg1; +- (BOOL)_drawingEndSeparator; + +@end + diff --git a/MailHeaders/Lion/Mail/TableViewManager.h b/MailHeaders/Lion/Mail/TableViewManager.h new file mode 100644 index 00000000..3bab3bc9 --- /dev/null +++ b/MailHeaders/Lion/Mail/TableViewManager.h @@ -0,0 +1,383 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MVSelectionOwner-Protocol.h" +#import "NSTableViewDataSource-Protocol.h" +#import "NSTableViewDelegate-Protocol.h" +#import "MessageMall-Protocol.h" + +@class MailTableView, MessageListContainerView, MessageThread, MessageViewer, NSArray, NSDictionary, NSFont, NSImageView, NSMapTable, NSMutableArray, NSMutableAttributedString, NSMutableDictionary, NSMutableSet, NSOperationQueue, NSString, NSTableColumn, NSTableHeaderView, _VisibleStateObject; + +@interface TableViewManager : NSObject +{ + MailTableView *_tableView; + id _messageMall; + MessageViewer *_delegate; + NSImageView *_topOfMessageListForAnimation; + NSImageView *_bottomOfMessageListForAnimation; + NSArray *_tableColumns; + NSFont *_font; + NSFont *_boldFont; + NSFont *_noteFont; + NSMutableArray *_selection; + NSArray *_expandedSelection; + NSArray *_expandedSelectionForTransfer; + BOOL _suspendChangesToScrollingAndSelection; + NSMapTable *_storeStateTable; + NSMutableArray *_draggedMessages; + NSArray *_filteredMessagesFromMouseDown; + struct _NSRange _filteredMessagesRange; + NSMutableAttributedString *_truncatedString; + NSMutableDictionary *_truncatedStringAttributes; + NSMutableDictionary *_truncatedParagraphStyle; + NSString *_availableStatusImageName; + long long _leftmostTextColumn; + struct { + unsigned int includeDeleted:1; + unsigned int isFocused:1; + unsigned int sortColumnOrderAscending:1; + unsigned int isShowingSearchResults:1; + unsigned int sortColumnOrder:8; + unsigned int hasScrolledSinceMailboxChange:1; + unsigned int userChangedSelectionSinceMailboxChange:1; + unsigned int threadOpeningIsInProgress:1; + unsigned int threadClosingIsInProgress:1; + unsigned int doubleClickThreadOpeningIsInProgress:1; + unsigned int animatingThreadOpening:1; + unsigned int animatingThreadClosing:1; + unsigned int animateInSlowMotion:1; + unsigned int dontUpdateTrackingRects:1; + unsigned int dontReadWriteStoreSpecificDefaultsToMailbox:1; + unsigned int useBoldFontForUnreadMessages:1; + unsigned int clearingSearch:1; + unsigned int selectionShouldNotChange:1; + unsigned int selectingMessagesForTransfer:1; + } _flags; + NSDictionary *_messageIDsToSelectWhenOpened; + NSArray *_threadIDsToOpenWhenOpened; + long long _colorHighlightLeftEdge; + long long _colorHighlightWidth; + long long _windowWidthBeforeSearch; + _VisibleStateObject *_visibleStateBeforeSearch; + NSMutableSet *_messagesInSelectedThread; + MessageThread *_threadBeingClosed; + MessageThread *_threadBeingOpened; + struct __CFDictionary *_rowDrawingCache; + NSMutableSet *_mouseTrackers; + struct CGPoint _lastMouseDownInUnreadColumnPoint; + long long _lastMouseDownInUnreadColumnEventNumber; + struct CGPoint _currentMouseLocationInWindow; + double _amountToScrollDownAfterClosingThread; + long long _numberOfSelectedRowsBeforeTogglingThread; + long long _selectedRowBeforeTogglingThread; + BOOL _keepSelectionWhenTogglingThread; + BOOL _isDragging; + BOOL _isUserChangingSelection; + BOOL _didAwake; + BOOL _isRichMessageList; + BOOL _isShowingToCc; + BOOL _isShowingContactPhotos; + BOOL _isShowingLongDate; + unsigned long long _numberOfSnippetLines; + NSTableColumn *_richTableColumn; + NSTableHeaderView *_tableHeaderView; + BOOL _doNotPropagateSelectionChange; + long long _previouslyViewedMessageRow; + long long _currentViewedMessageRow; + int _nextMessageDirection; + BOOL _tableViewIsFirstResponder; + long long _previousCenterOfVisibleRange; + NSMutableDictionary *_snippetsForMessage; + NSMutableSet *_messagesBeingFetched; + NSOperationQueue *_snippetFetchQueue; + unsigned long long _snippetBatchFetchSize; + MessageListContainerView *_messageListContainerView; + int _searchTarget; + int _searchField; + NSString *_messageIDToReveal; +} + ++ (void)initialize; ++ (id)_getDarkerThreadBackgroundColorForThread:(id)arg1; ++ (id)_getThreadBackgroundColorForThread:(id)arg1; +- (void)awakeFromNib; +- (id)tableViewGetDefaultMenu:(id)arg1; +- (BOOL)respondsToSelector:(SEL)arg1; +- (void)_tableViewScrolled:(id)arg1; +- (void)_setupColumnHeaderIcon:(id)arg1 inColumnWithIdentifier:(id)arg2 accessibilityTitle:(id)arg3 alignment:(unsigned long long)arg4; +- (void)_setupTableColumnWidths; +- (void)_configureColumnForEndTruncation:(id)arg1; +- (void)_configureColumnForImageCell:(id)arg1 alignment:(unsigned long long)arg2; +- (void)_configureColumnForRolloverCell:(id)arg1 alignment:(unsigned long long)arg2 action:(SEL)arg3; +- (void)_configureRichMessageListColumn; +- (void)richUnreadButtonClicked:(id)arg1; +- (void)showFollowupsToMessage:(id)arg1; +- (void)showFollowupsToMessageAtRow:(long long)arg1; +- (void)_setupColumnsForTableView; +- (void)_configureTableViewLayoutWithTableColumnResizingMasks:(id)arg1; +- (void)dealloc; +- (void)windowWillClose:(id)arg1; +- (id)delegate; +- (void)setDelegate:(id)arg1; +- (void)setMessageMall:(id)arg1; +- (void)_messageMarkedForOverwrite:(id)arg1; +- (void)_messagesUpdated:(id)arg1; +- (void)_mallConversationsUpdated:(id)arg1; +- (void)setupColumnManagerFromDictionary:(id)arg1; +- (void)readDefaultsFromDictionary:(id)arg1; +- (void)writeDefaultsToDictionary:(id)arg1; +- (void)setDontReadWriteStoreSpecificDefaultsToMailbox:(BOOL)arg1; +- (void)writeStoreSpecificDefaultsToMailboxUid:(id)arg1; +- (void)readStoreSpecificDefaultsFromMailboxUid:(id)arg1; +- (void)readStoreSpecificDefaultsFromDictionary:(id)arg1; +- (BOOL)canSelectNextMessage; +- (BOOL)canSelectPreviousMessage; +- (void)_viewerPreferencesChanged:(id)arg1; +- (void)_viewerLayoutPreferenceChanged:(id)arg1; +- (void)_toCcPreferenceChanged:(id)arg1; +- (void)_longDatePreferenceChanged:(id)arg1; +- (void)_contactPhotoPreferenceChanged:(id)arg1; +- (void)_snippetLinePreferenceChanged:(id)arg1; +- (void)_presencePreferenceChanged:(id)arg1; +- (void)_threadColorPreferenceChanged:(id)arg1; +- (void)_presenceImageChanged:(id)arg1; +- (void)_presenceChanged:(id)arg1; +- (void)_updateTableHeaderToMatchCurrentSort; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (id)_columnWithIdentifierTag:(long long)arg1; +- (id)_unreadColumn; +- (BOOL)_isColumnVisibleInSettings:(long long)arg1; +- (BOOL)_isAutomaticInsertionWhileSearchingOkayForColumn:(long long)arg1; +- (BOOL)isColumnVisible:(long long)arg1; +- (void)_updateDefaultsForMailboxesWithDelay:(BOOL)arg1; +- (void)setColumn:(long long)arg1 toVisible:(BOOL)arg2; +- (void)_setColumn:(long long)arg1 toVisible:(BOOL)arg2; +- (BOOL)tableView:(id)arg1 shouldReorderColumn:(long long)arg2 toColumn:(long long)arg3; +- (BOOL)mailTableView:(id)arg1 shouldRemoveTableColumn:(id)arg2; +- (BOOL)mailTableView:(id)arg1 shouldAddTableColumn:(id)arg2; +- (long long)tableViewNumberOfColumnsToPinToLefthandSide:(id)arg1; +- (void)selectAllMessagesAndMakeFirstResponder; +- (void)makeMessageListFirstResponder; +- (double)tableViewRowHeightForRichMessageList:(BOOL)arg1; +- (double)tableView:(id)arg1 heightOfRow:(long long)arg2; +- (void)_updateTableViewRowHeight; +@property(retain, nonatomic) NSFont *font; +@property(retain, nonatomic) NSFont *noteFont; +- (BOOL)isInThreadedMode; +- (void)toggleThreadedMode; +- (void)_threadedModeDidChange:(id)arg1; +- (void)invalidateSelectionCache; +- (BOOL)openThreadAtIndex:(long long)arg1 andSelectMessage:(id)arg2 animate:(BOOL)arg3; +- (BOOL)closeThreadAtIndex:(long long)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; +- (void)openAllThreads; +- (void)closeAllThreads; +- (void)_cleanUpAfterFocus; +- (void)toggleThread:(id)arg1; +- (void)toggleThread:(id)arg1 ignoreModifierKeys:(BOOL)arg2; +- (long long)_indexOfMessageNearest:(long long)arg1 numberOfRows:(long long)arg2 threaded:(BOOL)arg3 downward:(BOOL)arg4; +- (BOOL)canSelectPreviousThreadedMessage; +- (BOOL)canSelectNextThreadedMessage; +- (BOOL)canSelectParentOfMessage; +- (BOOL)canSelectFirstReplyToMessage; +- (BOOL)canSelectNextReplyToParent; +- (BOOL)selectionIsExactlyOneOpenThread; +- (long long)_modifierFlagsForKeyboardNavigation; +- (void)selectNextMessageMovingDownward:(int)arg1; +- (void)selectNextMessageMovingUpward:(int)arg1; +- (BOOL)stepIntoSelectedThread; +- (BOOL)stepOutOfSelectedThread; +- (BOOL)openSelectedThread; +- (BOOL)selectOldestUnreadOrNewestMessageInThread; +- (BOOL)nextMessageIsBelow; +- (void)selectNextMessage:(int)arg1; +- (void)selectPreviousMessage:(int)arg1; +- (void)selectParentOfMessage; +- (void)selectFirstReplyToMessage; +- (void)selectPeer:(BOOL)arg1; +- (void)selectNextReplyToParent; +- (void)selectPreviousReplyToParent; +- (void)showSelectionAndCenter:(BOOL)arg1; +- (BOOL)isSelectionVisible; +- (void)scrollRowToVisible:(long long)arg1 position:(int)arg2; +- (long long)mailTableView:(id)arg1 shouldScrollRowToVisible:(long long)arg2; +- (BOOL)_isMessageInSelectedThread:(id)arg1; +- (void)_reloadDisplayOnlyForMessagesInSet:(id)arg1 highlightOnly:(BOOL)arg2; +- (void)_setNeedsDisplayThreadColumnForMessagesInSet:(id)arg1; +- (void)_updateSelectedThreadList; +- (id)selectedThread; +- (void)_reallyUpdateTextViewerToSelection; +- (void)updateTextViewerToSelection; +- (void)updateForSelectedActionMessage:(id)arg1; +- (void)tableViewSelectionIsChanging:(id)arg1; +- (void)_selectOrDeselectMembersOfThread:(id)arg1 atIndex:(long long)arg2 select:(BOOL)arg3; +- (id)tableView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)mailTableViewDidBecomeFirstResponder:(id)arg1; +- (void)mailTableViewDidResignFirstResponder:(id)arg1; +- (void)_datesNeedRedisplay:(id)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)_attributesForTruncatedParagraphStyle; +- (id)_messageSelectionColor; +- (id)_colorForMessage:(id)arg1 inRow:(long long)arg2 withCell:(id)arg3; +- (id)_truncatedAttributedStringForString:(id)arg1 message:(id)arg2 row:(long long)arg3 shouldIndent:(BOOL)arg4; +- (id)_attributedUpdatedStringForRSSMessage:(id)arg1 row:(long long)arg2; +- (id)tableView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 row:(long long)arg3; +- (BOOL)tableView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)updateColorHighlightEdges; +- (void)tableView:(id)arg1 didDragTableColumn:(id)arg2; +- (void)tableViewFrameChangedDuringLiveResize:(id)arg1; +- (void)mailTableViewWillStartLiveResize:(id)arg1; +- (void)mailTableViewDidEndLiveResize:(id)arg1; +- (void)tableViewColumnDidMove:(id)arg1; +- (void)tableViewColumnDidResize:(id)arg1; +- (id)_setupRowViewForRow:(long long)arg1 tableView:(id)arg2 create:(BOOL)arg3; +- (void)tableView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (void)tableView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (id)tableView:(id)arg1 rowViewForRow:(long long)arg2; +- (id)tableView:(id)arg1 viewForTableColumn:(id)arg2 row:(long long)arg3; +- (id)tableView:(id)arg1 dataCellForTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (int)mailTableView:(id)arg1 highlightStyleForRow:(long long)arg2 inRect:(struct CGRect *)arg3 color:(id *)arg4; +- (id)mailTableViewTopLineColor:(id)arg1; +- (void)_doubleClickedMessage:(id)arg1; +- (id)_snippetForMessage:(id)arg1 atRow:(long long)arg2; +- (id)_snippetFetchQueue; +- (void)_adjustFetchRangeForRow:(long long)arg1; +- (void)mallPrefetchedSnippets:(id)arg1; +- (void)_updateSnippetsForMessage:(id)arg1; +- (void)_updateRowsWithNewSnippets:(id)arg1; +- (void)_snippetsUpdated:(id)arg1; +- (void)deleteKeyPressed; +- (void)deleteSelectionAllowingMoveToTrash:(BOOL)arg1; +- (id)selectionExpandingThreadsAndHiddenCopies:(BOOL)arg1; +- (id)selection; +- (void)_selectMessages:(id)arg1 scrollIfNeeded:(BOOL)arg2; +- (void)selectMessages:(id)arg1; +- (id)messageThatUserIsProbablyReading; +- (id)parentThreadForChildMessage:(id)arg1; +- (BOOL)shouldViewRelatedMessagesForMessage:(id)arg1; +- (void)viewRelatedMessagesDidToggleForMessage:(id)arg1; +- (id)currentDisplayedMessage; +- (id)messageStore; +- (id)tableView; +- (BOOL)mailTableView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (id)_undoActionNameForMessageCount:(unsigned long long)arg1; +- (void)_adjustScrollPositionForTransferedMessages:(id)arg1 isUndo:(BOOL)arg2; +- (void)selectMessagesForMessageTransfer:(id)arg1; +- (void)selectMessagesForMessageTransferUndo:(id)arg1; +- (void)_undeleteMessages:(id)arg1 allowUndo:(BOOL)arg2 unreadMessages:(id)arg3; +- (void)undeleteMessages:(id)arg1 allowUndo:(BOOL)arg2; +- (void)_redeleteMessages:(id)arg1 messagesToSelect:(id)arg2; +- (void)deleteMessages:(id)arg1 allowMoveToTrash:(BOOL)arg2 allowUndo:(BOOL)arg3; +- (void)undeleteMessagesAllowingUndo:(BOOL)arg1; +- (BOOL)shouldDeleteMessagesGivenCurrentState:(id)arg1; +- (void)archiveMessages:(id)arg1 allowUndo:(BOOL)arg2; +- (void)mailTableViewDraggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; +- (id)_filterAndExpandMessagesForTransfer:(id)arg1; +- (id)messagesToTransferIsMove:(BOOL)arg1; +- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; +- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (void)mailTableViewDragWillEnd:(id)arg1 operation:(unsigned long long)arg2; +- (void)mailTableView:(id)arg1 willMouseDown:(id)arg2; +- (void)mailTableView:(id)arg1 didMouseDown:(id)arg2; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; +- (void)pasteboardChangedOwner:(id)arg1; +- (id)tableView:(id)arg1 namesOfPromisedFilesDroppedAtDestination:(id)arg2 forDraggedRowsWithIndexes:(id)arg3; +- (id)_dragImageForRow:(long long)arg1 event:(id)arg2 dragImageOffset:(struct CGPoint *)arg3; +- (id)mailTableView:(id)arg1 dragImageForRowsWithIndexes:(id)arg2 event:(id)arg3 dragImageOffset:(struct CGPoint *)arg4; +- (void)mailTableView:(id)arg1 willDrawRowsInRange:(struct _NSRange)arg2; +- (void)mailTableView:(id)arg1 didDrawRowsInRange:(struct _NSRange)arg2; +- (struct CGRect)frameOfClickedCell; +- (struct CGPoint)_mouseLocationInWindow; +- (void)_callWillDisplayCellForClickedCell; +- (void)_setButtonCellNeedsDisplay; +- (void)mailTableView:(id)arg1 gotEvent:(id)arg2; +- (BOOL)shouldTrackMouse:(id)arg1; +- (id)mailTableView:(id)arg1 rangesForBackgroundShadingInRange:(struct _NSRange)arg2 shadingColors:(id *)arg3 leftColumnColors:(id *)arg4; +- (id)messageMall; +- (long long)_indexOfFirstNonDeletedNonSelectedMessage:(long long)arg1 withinRowRange:(struct _NSRange)arg2 goUp:(BOOL)arg3; +- (BOOL)_goUpInsteadOfDown; +- (void)_resetNextMessageTracking; +- (void)_didChooseRowForViewing:(long long)arg1; +- (id)messageToSelectIfEntireSelectionRemoved:(id)arg1; +- (BOOL)includeDeleted; +- (void)setIncludeDeleted:(BOOL)arg1; +- (id)specialImageForMessageCount:(unsigned long long)arg1; +@property(retain, nonatomic) NSString *messageIDToReveal; // @synthesize messageIDToReveal=_messageIDToReveal; +@property(retain, nonatomic) NSArray *filteredMessagesFromMouseDown; // @synthesize filteredMessagesFromMouseDown=_filteredMessagesFromMouseDown; +@property(copy) NSArray *draggedMessages; // @synthesize draggedMessages=_draggedMessages; +@property(nonatomic) BOOL isUserChangingSelection; // @synthesize isUserChangingSelection=_isUserChangingSelection; +@property(readonly, nonatomic) BOOL isRichMessageList; // @synthesize isRichMessageList=_isRichMessageList; +@property(retain) NSFont *boldFont; // @synthesize boldFont=_boldFont; +- (long long)_columnForAppleScriptColumn:(unsigned int)arg1; +- (unsigned int)appleScriptSortColumn; +- (void)setAppleScriptSortColumn:(unsigned int)arg1; +- (id)appleScriptVisibleColumns; +- (void)setAppleScriptVisibleColumns:(id)arg1; +- (BOOL)_useTableViewAnimations; +- (BOOL)_debugThreadAnimation; +- (void)mallStructureWillChange:(id)arg1; +- (void)setMailboxUids:(id)arg1 isSettingUpUI:(BOOL)arg2; +- (void)mallSortChanged:(id)arg1; +- (void)mallStructureChanged:(id)arg1; +- (void)mallFinishedLoading:(id)arg1; +- (void)_updateSearchDelegate; +- (void)messagesCompacted:(id)arg1; +- (void)messageFlagsChanged:(id)arg1; +- (void)_scrollToHappyPlace; +- (void)_recordVisibleState:(id)arg1 deletedAreGoingAway:(BOOL)arg2 considerPinToEnd:(BOOL)arg3; +- (BOOL)_restoreVisibleState:(id)arg1 forceSelToVisible:(BOOL)arg2; +- (void)dumpVisibleState; +- (long long)indexOfTopmostVisibleMessageMustBeSelected:(BOOL)arg1 okayIfDeleted:(BOOL)arg2; +- (long long)indexOfLastReadMessage; +- (id)persistentVisibleStateCreateIfNecessary:(BOOL)arg1; +- (void)_saveScrollAndSelection:(BOOL)arg1; +- (void)saveScrollAndSelection; +- (BOOL)restoreScrollAndSelection; +- (void)_setScrollAndSelectionForThreadOpenedOrClosed:(id)arg1 flag:(BOOL)arg2 clickedRow:(long long)arg3 rowToSelectInOpeningThread:(long long)arg4; +- (id)selectedMessageIDs; +- (id)openThreadIDs; +- (void)setSelectedMessageIDs:(id)arg1 openThreadIDs:(id)arg2; +- (void)clearSearch; +- (BOOL)isShowingSearchResults; +- (void)_searchForString:(id)arg1 orSuggestions:(id)arg2 in:(int)arg3 withOptions:(int)arg4; +- (void)searchForSuggestions:(id)arg1 in:(int)arg2 withOptions:(int)arg3; +- (void)searchForString:(id)arg1 in:(int)arg2 withOptions:(int)arg3; +- (BOOL)isFocused; +- (void)setFocusedMessages:(id)arg1; +- (BOOL)isSortedByDateReceived; +- (BOOL)isSortedChronologically; +- (long long)sortColumn; +- (id)sortByStringForColumn:(long long)arg1; +- (void)setSortColumn:(long long)arg1 ascending:(BOOL)arg2; +- (BOOL)isSortedAscending; +- (void)setIsSortedAscending:(BOOL)arg1; +- (long long)state; +- (id)filteredMessages; +- (void)clearTrackingRects; +- (void)updateTrackingRects; +- (long long)_indexOfMemberToSelectWhenOpeningThread:(id)arg1; +- (double)_getAnimationDuration:(long long)arg1; +- (id)_newHiliteImage; +- (id)_newBackgroundImage; +- (id)_newSnapshotOfRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4; +- (id)_newSnapshotOfRow:(long long)arg1 style:(unsigned long long)arg2 styleMask:(unsigned long long)arg3 backing:(unsigned long long)arg4 defer:(BOOL)arg5; +- (BOOL)_isRowVisible:(long long)arg1; +- (struct CGSize)_calculateTruncationAmountUsingRowHeight:(double)arg1 collapseOrExpandAmount:(double)arg2 invisibleThreadAmountAbove:(double)arg3 invisibleThreadAmountBelow:(double)arg4; +- (void)_animateThreadCollapsing:(long long)arg1 threadRow:(long long)arg2 clickedRow:(long long)arg3; +- (double)_scrollRectToVisibleAdjustment:(struct CGRect)arg1 visibleRect:(struct CGRect)arg2; +- (void)animateThreadOpenOrClose:(id)arg1 flag:(BOOL)arg2 clickedRow:(long long)arg3 rowToSelectInOpeningThread:(long long)arg4; +- (double)_animateThreadOpening:(id)arg1 threadMessageCount:(long long)arg2 threadRow:(long long)arg3 rowToBeSelected:(long long)arg4; +- (void)mailTableView:(id)arg1 willMoveToWindow:(id)arg2; +- (void)mailTableViewDidMoveToWindow:(id)arg1; +- (BOOL)selectMessageWithIDIfExists:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/TemporaryAttachmentOpener.h b/MailHeaders/Lion/Mail/TemporaryAttachmentOpener.h new file mode 100644 index 00000000..ef04e934 --- /dev/null +++ b/MailHeaders/Lion/Mail/TemporaryAttachmentOpener.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "GenericAttachmentFetcher.h" + +@class NSString; + +@interface TemporaryAttachmentOpener : GenericAttachmentFetcher +{ + NSString *_applicationPath; +} + +- (id)initWithAttachments:(id)arg1 applicationPath:(id)arg2; +- (id)initWithAttachments:(id)arg1; +- (void)dealloc; +- (void)downloadedAllAttachments; +- (void)_openAttachmentAtPath:(id)arg1; +- (void)didSaveAttachment:(id)arg1 toPath:(id)arg2; +- (double)temporaryFolderTimeout; + +@end + diff --git a/MailHeaders/Lion/Mail/TemporaryItemManager.h b/MailHeaders/Lion/Mail/TemporaryItemManager.h new file mode 100644 index 00000000..7c8afab6 --- /dev/null +++ b/MailHeaders/Lion/Mail/TemporaryItemManager.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString, NSTimer; + +@interface TemporaryItemManager : NSObject +{ + NSString *_path; + NSTimer *_timer; +} + ++ (void)cleanupAllItems; ++ (id)temporaryItemManagerWithRelativePath:(id)arg1 cleanupInterval:(double)arg2; +- (void)dealloc; +- (id)path; +- (id)expirationDate; +- (void)_setUpTimer:(id)arg1; +- (void)setExpirationDate:(id)arg1; +- (void)cleanUpDirectory; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtURL:(id)arg3; + +@end + diff --git a/MailHeaders/Lion/Mail/TextButtonToolbarItem.h b/MailHeaders/Lion/Mail/TextButtonToolbarItem.h new file mode 100644 index 00000000..ec0d942d --- /dev/null +++ b/MailHeaders/Lion/Mail/TextButtonToolbarItem.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@interface TextButtonToolbarItem : NSToolbarItem +{ +} + +- (id)initWithItemIdentifier:(id)arg1; +- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; +- (void)validate; +- (id)control; +- (void)setLabel:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/TextEncodingMenuDelegate.h b/MailHeaders/Lion/Mail/TextEncodingMenuDelegate.h new file mode 100644 index 00000000..1326dc08 --- /dev/null +++ b/MailHeaders/Lion/Mail/TextEncodingMenuDelegate.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface TextEncodingMenuDelegate : NSObject +{ +} + +- (void)menuNeedsUpdate:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/TextMessageDisplay.h b/MailHeaders/Lion/Mail/TextMessageDisplay.h new file mode 100644 index 00000000..1b2e7f8a --- /dev/null +++ b/MailHeaders/Lion/Mail/TextMessageDisplay.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class Message, MessageTextView, NSAttributedString, NSWindow; + +@interface TextMessageDisplay : NSObject +{ + MessageTextView *_textView; + NSWindow *_singleWindow; + Message *_message; + NSAttributedString *_rawSourceString; + BOOL _showControlCharacters; +} + ++ (void)displayRawSourceForMessage:(id)arg1; ++ (void)_removeDisplayForMessage:(id)arg1; +- (void)awakeFromNib; +- (void)dealloc; +- (void)_beginBackgroundLoad; +- (void)_prepareForMessage:(id)arg1; +- (void)_displayRawSource; +- (id)messageTextView:(id)arg1 willReturnMenu:(id)arg2 forEvent:(id)arg3; +- (BOOL)validateMenuItem:(id)arg1; +- (void)bringToFront; +- (void)windowWillClose:(id)arg1; +- (void)setTitle:(id)arg1; +- (void)showPrintPanel:(id)arg1; +- (void)toggleShowControlCharacters:(id)arg1; +- (void)saveAs:(id)arg1; +@property(retain, nonatomic) Message *message; // @synthesize message=_message; + +@end + diff --git a/MailHeaders/Lion/Mail/ThreadDisclosureTextField.h b/MailHeaders/Lion/Mail/ThreadDisclosureTextField.h new file mode 100644 index 00000000..feafc779 --- /dev/null +++ b/MailHeaders/Lion/Mail/ThreadDisclosureTextField.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextField.h" + +@interface ThreadDisclosureTextField : NSTextField +{ +} + +- (void)_updateWithCustomCell; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; +- (void)mouseDown:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/ThumbnailButtonCell.h b/MailHeaders/Lion/Mail/ThumbnailButtonCell.h new file mode 100644 index 00000000..d1eb164e --- /dev/null +++ b/MailHeaders/Lion/Mail/ThumbnailButtonCell.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@class NSButton; + +@interface ThumbnailButtonCell : NSButtonCell +{ + NSButton *_deleteButton; + long long _trackingRectTag; +} + +- (id)initImageCell:(id)arg1; +- (void)dealloc; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (void)drawImage:(id)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (struct CGRect)drawTitle:(id)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (void)setDeleteButton:(id)arg1; +- (void)setTrackingRectTag:(long long)arg1; +- (long long)trackingRectTag; +- (void)mouseEntered:(id)arg1; +- (void)mouseExited:(id)arg1; +- (unsigned long long)focusRingType; + +@end + diff --git a/MailHeaders/Lion/Mail/ThumbnailMatrix.h b/MailHeaders/Lion/Mail/ThumbnailMatrix.h new file mode 100644 index 00000000..3bd97391 --- /dev/null +++ b/MailHeaders/Lion/Mail/ThumbnailMatrix.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMatrix.h" + +@interface ThumbnailMatrix : NSMatrix +{ + BOOL _shouldShowButtons; +} + +- (void)awakeFromNib; +- (void)highlightCell:(BOOL)arg1 atRow:(long long)arg2 column:(long long)arg3; +- (void)showDeleteButtons:(BOOL)arg1 beginningAtIndex:(long long)arg2; +- (void)_addButtonAtIndex:(long long)arg1; +- (struct CGRect)frameOfThumbnailAtIndex:(long long)arg1; +- (BOOL)_performDragFromMouseDown:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/ThunderbirdEmailImporter.h b/MailHeaders/Lion/Mail/ThunderbirdEmailImporter.h new file mode 100644 index 00000000..30e1f18e --- /dev/null +++ b/MailHeaders/Lion/Mail/ThunderbirdEmailImporter.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +@interface ThunderbirdEmailImporter : FilesystemEmailImporter +{ +} + ++ (id)name; ++ (id)explanatoryText; +- (id)pathExtensions; +- (char *)fromString; + +@end + diff --git a/MailHeaders/Lion/Mail/TilingWebView.h b/MailHeaders/Lion/Mail/TilingWebView.h new file mode 100644 index 00000000..33e5ca07 --- /dev/null +++ b/MailHeaders/Lion/Mail/TilingWebView.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebView.h" + +@interface TilingWebView : WebView +{ + unsigned int _isAdjusting:1; + unsigned int _disableSizeToFit:1; + double _leftMargin; + double _minHeight; +} + +@property BOOL disableSizeToFit; +- (id)initWithFrame:(struct CGRect)arg1 frameName:(id)arg2 groupName:(id)arg3; +- (void)adjustForTilingView:(id)arg1 oldSize:(struct CGSize)arg2 minimumHeight:(double)arg3; +- (void)sizeToFit; +@property double minHeight; // @synthesize minHeight=_minHeight; +@property double leftMargin; // @synthesize leftMargin=_leftMargin; + +@end + diff --git a/MailHeaders/Lion/Mail/TransparentImageView.h b/MailHeaders/Lion/Mail/TransparentImageView.h new file mode 100644 index 00000000..98f3a454 --- /dev/null +++ b/MailHeaders/Lion/Mail/TransparentImageView.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSImageView.h" + +@class NSView; + +@interface TransparentImageView : NSImageView +{ + NSView *_backgroundView; +} + +- (void)drawRect:(struct CGRect)arg1; +- (void)awakeFromNib; +- (id)accessibilityAttributeValue:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/TypeAheadWindow.h b/MailHeaders/Lion/Mail/TypeAheadWindow.h new file mode 100644 index 00000000..f7729447 --- /dev/null +++ b/MailHeaders/Lion/Mail/TypeAheadWindow.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "FullScreenModalCapableWindow.h" + +@interface TypeAheadWindow : FullScreenModalCapableWindow +{ + BOOL _shouldFlushTypeAheadEvents; + BOOL _sendMouseDownNotifications; +} + ++ (BOOL)handleEvent:(id)arg1; +- (id)initWithContentRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4; +- (id)initWithContentRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4 screen:(id)arg5; +- (void)startRecordingTypeAheadEvents; +- (void)flushTypeAheadEventsWhenAppropriate; +- (void)becomeKeyWindow; +- (void)_flushTypeAheadEvents; +- (void)close; +- (void)sendEvent:(id)arg1; +- (void)sendMouseDownNotifications:(BOOL)arg1; +- (BOOL)canEnterFullScreenMode; + +@end + diff --git a/MailHeaders/Lion/Mail/UncommentedAddressCommand.h b/MailHeaders/Lion/Mail/UncommentedAddressCommand.h new file mode 100644 index 00000000..cd028c17 --- /dev/null +++ b/MailHeaders/Lion/Mail/UncommentedAddressCommand.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSScriptCommand.h" + +@interface UncommentedAddressCommand : NSScriptCommand +{ +} + +- (id)_getUncommentedAddressForObject:(id)arg1; +- (id)executeCommand; +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Lion/Mail/UnfoldAnimationController.h b/MailHeaders/Lion/Mail/UnfoldAnimationController.h new file mode 100644 index 00000000..b20883d3 --- /dev/null +++ b/MailHeaders/Lion/Mail/UnfoldAnimationController.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSOpenGLContext, NSOpenGLPixelFormat, NSTimer, NSWindow, QCRenderer; + +@interface UnfoldAnimationController : NSObject +{ + NSWindow *_window; + NSOpenGLContext *_glContext; + NSOpenGLPixelFormat *_glFormat; + QCRenderer *_renderer; + NSTimer *_timer; + struct CGSize _size; + double _foldTop; + double _foldHeight; + double _startTime; + double _duration; + id _completionBlock; +} + +- (void)dealloc; +- (void)prepareAnimationWithStyle:(long long)arg1 backgroundImage:(id)arg2 sourceImage:(id)arg3 foldTop:(double)arg4 contentTop:(double)arg5 contentBottom:(double)arg6 sideMargin:(double)arg7 screenRect:(struct CGRect)arg8 parentWindow:(id)arg9; +- (void)setFoldHeight:(double)arg1; +- (void)startAnimationWithDestinationImage:(id)arg1 completionBlock:(id)arg2; +- (void)stopAnimation; +- (void)_renderTimer:(id)arg1; +@property(readonly, nonatomic) double overflowHeight; + +@end + diff --git a/MailHeaders/Lion/Mail/VerticallyCenteredTextFieldCell.h b/MailHeaders/Lion/Mail/VerticallyCenteredTextFieldCell.h new file mode 100644 index 00000000..cd7facc6 --- /dev/null +++ b/MailHeaders/Lion/Mail/VerticallyCenteredTextFieldCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface VerticallyCenteredTextFieldCell : NSTextFieldCell +{ +} + +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/ViewFactory.h b/MailHeaders/Lion/Mail/ViewFactory.h new file mode 100644 index 00000000..87d4727a --- /dev/null +++ b/MailHeaders/Lion/Mail/ViewFactory.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSView; + +@interface ViewFactory : NSObject +{ + NSView *_view; +} + ++ (id)viewWithNibNamed:(id)arg1; +- (void)dealloc; +- (id)view; + +@end + diff --git a/MailHeaders/Lion/Mail/ViewTextAttachmentCell.h b/MailHeaders/Lion/Mail/ViewTextAttachmentCell.h new file mode 100644 index 00000000..2bac62a5 --- /dev/null +++ b/MailHeaders/Lion/Mail/ViewTextAttachmentCell.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSViewTextAttachmentCell.h" + +@class NSView; + +@interface ViewTextAttachmentCell : NSViewTextAttachmentCell +{ + NSView *_view; + NSView *_containingView; + struct CGSize _viewSize; +} + +- (void)_viewFrameChanged; +- (void)_viewFrameChanged:(id)arg1; +- (id)initWithView:(id)arg1; +- (id)controlView; +- (void)setControlView:(id)arg1; +- (id)view; +- (id)viewWithFrame:(struct CGRect)arg1 forView:(id)arg2 characterIndex:(unsigned long long)arg3 layoutManager:(id)arg4; +- (struct CGSize)cellSize; +- (void)releaseView:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Lion/Mail/ViewerPreferences.h b/MailHeaders/Lion/Mail/ViewerPreferences.h new file mode 100644 index 00000000..816fae49 --- /dev/null +++ b/MailHeaders/Lion/Mail/ViewerPreferences.h @@ -0,0 +1,76 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "NSTableViewDataSource-Protocol.h" + +@class NSButton, NSColorWell, NSMutableArray, NSPanel, NSPopUpButton, NSTableView; + +@interface ViewerPreferences : NSPreferencesModule +{ + NSButton *_highlightThreadCheckbox; + NSColorWell *_threadHighlightColorWell; + NSButton *_loadURLsSwitch; + NSButton *_showPresenceSwitch; + NSButton *_showUnreadMessagesInBoldSwitch; + NSButton *_useSmartAddressesSwitch; + NSPopUpButton *_headerDetailPopup; + NSTableView *_customHeaderTable; + NSButton *_addHeaderButton; + NSButton *_removeHeaderButton; + NSPanel *_customHeaderPanel; + NSMutableArray *_filteredHeaders; + BOOL _isEditingHeader; + NSPopUpButton *_snippetLinesPopup; + NSButton *_classicLayoutButton; + NSButton *_toCcButton; + NSButton *_contactPhotosButton; + NSButton *_viewRelatedMessagesButton; +} + ++ (void)postViewingPreferencesChanged; ++ (void)postPresencePreferenceChanged; ++ (void)postLayoutPreferenceChanged; ++ (void)_postToCcPreferenceChanged; ++ (void)postContactPhotoPreferenceChanged; ++ (void)postSnippetLinesPreferenceChanged; +- (void)awakeFromNib; +- (void)dealloc; +- (BOOL)isResizable; +- (id)titleForIdentifier:(id)arg1; +- (id)windowTitle; +- (void)_initializeHeaderDetailLevelPopup; +- (void)_updateCustomHeaderUI; +- (void)initializeFromDefaults; +- (void)loadURLsClicked:(id)arg1; +- (void)showPresenceClicked:(id)arg1; +- (void)useSmartAddressesClicked:(id)arg1; +- (void)_editCustomHeadersClicked; +- (void)_customHeaderSheetDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (void)_headerTableBeganEditing:(id)arg1; +- (void)_headerTableEndedEditing:(id)arg1; +- (void)_removeInvalidHeaders; +- (void)_endEditingHeader; +- (void)okClicked:(id)arg1; +- (void)cancelClicked:(id)arg1; +- (void)removeHeaderClicked:(id)arg1; +- (void)addHeaderClicked:(id)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)headerDetailLevelChanged:(id)arg1; +- (void)highlightThreadClicked:(id)arg1; +- (void)threadHighlightColorChanged:(id)arg1; +- (void)showUnreadMessagesInBoldChanged:(id)arg1; +- (void)snippetLinesChanged:(id)arg1; +- (void)classicLayoutClicked:(id)arg1; +- (void)toCcClicked:(id)arg1; +- (void)contactPhotosClicked:(id)arg1; +- (void)viewRelatedMessagesClicked:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/WebComposeMessageContents.h b/MailHeaders/Lion/Mail/WebComposeMessageContents.h new file mode 100644 index 00000000..8423605d --- /dev/null +++ b/MailHeaders/Lion/Mail/WebComposeMessageContents.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSAttributedString, NSMutableArray, NSString; + +@interface WebComposeMessageContents : NSObject +{ + long long _composeMode; + NSAttributedString *_plainText; + NSString *_topLevelHtmlString; + NSMutableArray *_attachmentsAndHtmlStrings; + NSMutableArray *_urlsForAttachmentsAndHtmlStrings; +} + +- (void)dealloc; +- (void)addAttachmentOrHtmlString:(id)arg1 withURL:(id)arg2; +- (id)description; +@property(retain, nonatomic) NSMutableArray *urlsForAttachmentsAndHtmlStrings; // @synthesize urlsForAttachmentsAndHtmlStrings=_urlsForAttachmentsAndHtmlStrings; +@property(retain, nonatomic) NSMutableArray *attachmentsAndHtmlStrings; // @synthesize attachmentsAndHtmlStrings=_attachmentsAndHtmlStrings; +@property(retain, nonatomic) NSString *topLevelHtmlString; // @synthesize topLevelHtmlString=_topLevelHtmlString; +@property(retain, nonatomic) NSAttributedString *plainText; // @synthesize plainText=_plainText; +@property(nonatomic) long long composeMode; // @synthesize composeMode=_composeMode; + +@end + diff --git a/MailHeaders/Lion/Mail/WebFrame-ScrollingAdditions.h b/MailHeaders/Lion/Mail/WebFrame-ScrollingAdditions.h new file mode 100644 index 00000000..1981e87c --- /dev/null +++ b/MailHeaders/Lion/Mail/WebFrame-ScrollingAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebFrame.h" + +@interface WebFrame (ScrollingAdditions) +- (id)documentScrollView; +@end + diff --git a/MailHeaders/Lion/Mail/WebFrame-SizingExtras.h b/MailHeaders/Lion/Mail/WebFrame-SizingExtras.h new file mode 100644 index 00000000..791f5dc4 --- /dev/null +++ b/MailHeaders/Lion/Mail/WebFrame-SizingExtras.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebFrame.h" + +@interface WebFrame (SizingExtras) +- (void)_setSize:(struct CGSize)arg1 ofElement:(id)arg2; +- (void)adjustToDocumentView; +- (void)adjustAttachmentView:(id)arg1; +- (void)selectAttachmentView:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/WebHTMLView-FindPanelStuff.h b/MailHeaders/Lion/Mail/WebHTMLView-FindPanelStuff.h new file mode 100644 index 00000000..5dd0e801 --- /dev/null +++ b/MailHeaders/Lion/Mail/WebHTMLView-FindPanelStuff.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebHTMLView.h" + +@interface WebHTMLView (FindPanelStuff) +- (BOOL)canReplace; +- (unsigned long long)replaceString:(id)arg1 withString:(id)arg2 options:(unsigned long long)arg3; +@end + diff --git a/MailHeaders/Lion/Mail/WebHTMLView-MailAdditions.h b/MailHeaders/Lion/Mail/WebHTMLView-MailAdditions.h new file mode 100644 index 00000000..90ca99ce --- /dev/null +++ b/MailHeaders/Lion/Mail/WebHTMLView-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebHTMLView.h" + +@interface WebHTMLView (MailAdditions) +- (void)changeDocumentBackgroundColor:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/WebHTMLView-MailExtras.h b/MailHeaders/Lion/Mail/WebHTMLView-MailExtras.h new file mode 100644 index 00000000..aa569736 --- /dev/null +++ b/MailHeaders/Lion/Mail/WebHTMLView-MailExtras.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebHTMLView.h" + +@interface WebHTMLView (MailExtras) +- (void)takeFindStringFromSelection:(id)arg1; +- (BOOL)findString:(id)arg1 options:(unsigned long long)arg2 wrap:(BOOL)arg3; +- (id)_mail_enclosingEmailView; +@end + diff --git a/MailHeaders/Lion/Mail/WebHTMLView-ToReplaceViewWithOurOwn.h b/MailHeaders/Lion/Mail/WebHTMLView-ToReplaceViewWithOurOwn.h new file mode 100644 index 00000000..bb656ec8 --- /dev/null +++ b/MailHeaders/Lion/Mail/WebHTMLView-ToReplaceViewWithOurOwn.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebHTMLView.h" + +@interface WebHTMLView (ToReplaceViewWithOurOwn) ++ (id)allocWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/WebMessageController.h b/MailHeaders/Lion/Mail/WebMessageController.h new file mode 100644 index 00000000..4de77b7c --- /dev/null +++ b/MailHeaders/Lion/Mail/WebMessageController.h @@ -0,0 +1,62 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MessageWebView, NSString, NSView, WebMessageDocument, WebView; + +@interface WebMessageController : NSObject +{ + WebMessageDocument *_document; + MessageWebView *_webView; + id _parentController; + NSView *_mainFrameDocumentView; + NSString *_sender; + id _delegate; + BOOL _finishedFirstLayout; +} + ++ (void)initialize; +- (id)initWithDocument:(id)arg1; +- (id)init; +- (void)setDocument:(id)arg1; +@property(retain) WebView *webView; +- (void)setSender:(id)arg1; +- (void)documentResized; +- (BOOL)hasFinishedLoading; +- (BOOL)hasFinishedFirstLayout; +- (void)webView:(id)arg1 didFirstLayoutInFrame:(id)arg2; +- (void)stopLoading; +- (void)dealloc; +- (void)adjustFontSizeBy:(float)arg1; +- (void)refreshWithViewingState:(id)arg1; +- (id)mainFrameDocumentView; +- (void)setMainFrameDocumentView:(id)arg1; +- (void)_openLink:(id)arg1; +- (void)_openLinkBehind:(id)arg1; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (id)viewingState; +@property id parentController; // @synthesize parentController=_parentController; +@property(readonly) WebMessageDocument *document; // @synthesize document=_document; +@property id delegate; // @synthesize delegate=_delegate; +- (void)adjustSpellingAndGrammarMenuItems:(id)arg1; +- (BOOL)_isInternalURL:(id)arg1; +- (BOOL)considerBaseURLsInternal; +- (void)webView:(id)arg1 decidePolicyForNavigationAction:(id)arg2 request:(id)arg3 frame:(id)arg4 decisionListener:(id)arg5; +- (void)webView:(id)arg1 decidePolicyForNewWindowAction:(id)arg2 request:(id)arg3 newFrameName:(id)arg4 decisionListener:(id)arg5; +- (id)webView:(id)arg1 identifierForInitialRequest:(id)arg2 fromDataSource:(id)arg3; +- (void)webView:(id)arg1 resource:(id)arg2 didFinishLoadingFromDataSource:(id)arg3; +- (id)webView:(id)arg1 resource:(id)arg2 willSendRequest:(id)arg3 redirectResponse:(id)arg4 fromDataSource:(id)arg5; +- (void)webView:(id)arg1 didStartProvisionalLoadForFrame:(id)arg2; +- (void)webView:(id)arg1 didCommitLoadForFrame:(id)arg2; +- (void)webView:(id)arg1 didFailProvisionalLoadWithError:(id)arg2 forFrame:(id)arg3; +- (unsigned long long)webView:(id)arg1 dragDestinationActionMaskForDraggingInfo:(id)arg2; +- (id)webView:(id)arg1 plugInViewWithArguments:(id)arg2; +- (id)webView:(id)arg1 contextMenuItemsForElement:(id)arg2 defaultMenuItems:(id)arg3; +- (void)download:(id)arg1 decideDestinationWithSuggestedFilename:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/WebMessageDisplay.h b/MailHeaders/Lion/Mail/WebMessageDisplay.h new file mode 100644 index 00000000..40b9e9a6 --- /dev/null +++ b/MailHeaders/Lion/Mail/WebMessageDisplay.h @@ -0,0 +1,79 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebMessageController.h" + +#import "DOMEventListener-Protocol.h" + +@class NSArray, NSInvocation, NSString; + +@interface WebMessageDisplay : WebMessageController +{ + NSInvocation *_displayChangedInvocation; + NSArray *_redundantContentAbbreviators; + NSString *_dataDetectorsUUID; + float _pageSizeMultiplier; + BOOL _didHighlightRedundantText; + BOOL _temporarilyPreventResizing; + BOOL _originalUserSelectedRangeExtendedToTop; + BOOL _originalUserSelectedRangeExtendedToBottom; + BOOL _finishedLoadingFrame; + BOOL _finishedNonEmptyLayout; +} + ++ (void)initialize; ++ (id)dataDetectorManager; ++ (id)webResourcesForAttachments:(id)arg1 urls:(id)arg2; ++ (BOOL)isClusterToggleURL:(id)arg1; +- (id)initWithDocument:(id)arg1; +- (void)dealloc; +- (void)setWebView:(id)arg1; +- (id)contentView; +- (id)textView; +- (id)enclosingEmailView; +- (void)documentResized; +- (void)documentContentsModifiedAfterInitialLoad; +- (Class)documentClass; +- (BOOL)prepareForMessage:(id)arg1 viewingState:(id)arg2; +- (void)refreshWithViewingState:(id)arg1; +- (void)clearDisplayChangedInvocation; +- (void)display:(id)arg1 inContainerView:(id)arg2 invokeWhenDisplayChanged:(id)arg3; +- (void)prepareToRemoveView; +- (BOOL)isOkayToDownloadAttachment:(id)arg1; +- (void)_attachmentFinishedDownloading:(id)arg1; +- (void)highlightSearchText:(id)arg1; +- (void)_prepareDocumentAndSelectedRangeForCopy; +- (void)_restoreDocumentAndSelectedRangeAfterCopy; +- (void)setSelectedTextRepresentation:(id)arg1; +- (id)selectedTextRepresentation; +- (id)selectedText; +- (id)selectionParsedMessage; +- (id)attachmentsInSelection; +- (id)parsedMessage; +- (void)adjustFontSizeBy:(long long)arg1 viewingState:(id)arg2; +- (id)findTarget; +- (void)informDataDetectorsThatViewWillDisappear; +- (void)informDataDetectorsThatViewDidAppear; +- (void)detectDataInMessage:(id)arg1 usingContext:(id)arg2; +- (void)cancelDataDetection; +- (id)messageContentView; +- (void)toggleRedundantTextWithURL:(id)arg1; +- (void)removeAllRedundantClusters; +- (void)setQuotedTextVisible:(BOOL)arg1; +- (BOOL)_removeBlankLinesFromBottom; +- (void)webView:(id)arg1 didWriteSelectionToPasteboard:(id)arg2; +- (void)webView:(id)arg1 didCommitLoadForFrame:(id)arg2; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)webView:(id)arg1 didFirstVisuallyNonEmptyLayoutInFrame:(id)arg2; +- (void)_seeIfFinishedDoingLayout; +- (void)_setDisplayChangedInvocation:(id)arg1; +- (void)webView:(id)arg1 resource:(id)arg2 didReceiveAuthenticationChallenge:(id)arg3 fromDataSource:(id)arg4; +- (void)webView:(id)arg1 willPerformDragSourceAction:(int)arg2 fromPoint:(struct CGPoint)arg3 withPasteboard:(id)arg4; +- (void)webView:(id)arg1 decidePolicyForNavigationAction:(id)arg2 request:(id)arg3 frame:(id)arg4 decisionListener:(id)arg5; +- (void)handleEvent:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/WebMessageDocument-Attachments.h b/MailHeaders/Lion/Mail/WebMessageDocument-Attachments.h new file mode 100644 index 00000000..1bf2e8a4 --- /dev/null +++ b/MailHeaders/Lion/Mail/WebMessageDocument-Attachments.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebMessageDocument.h" + +@interface WebMessageDocument (Attachments) +- (id)mimeBodyForAttachmentWithURL:(id)arg1; +- (void)addAttachmentsFromResource:(id)arg1 attachmentDelegate:(id)arg2; +- (void)addAttachmentsFromArchive:(id)arg1 attachmentDelegate:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Mail/WebPreferences-MessageDefaultsSupport.h b/MailHeaders/Lion/Mail/WebPreferences-MessageDefaultsSupport.h new file mode 100644 index 00000000..4ec9dc53 --- /dev/null +++ b/MailHeaders/Lion/Mail/WebPreferences-MessageDefaultsSupport.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebPreferences.h" + +@interface WebPreferences (MessageDefaultsSupport) ++ (id)plainTextMailWebPreferences; ++ (id)richTextMailWebPreferences; ++ (id)unrenderedMailWebPreferences; ++ (id)standardNoteWebPreferences; ++ (id)plainTextComposeWebPreferences; ++ (id)richTextComposeWebPreferences; +- (void)configureCommonPreferences; +- (void)configureStandardFont:(id)arg1 fixedFont:(id)arg2; +- (void)configureNotePreferences; +- (void)_configureCommonPlainTextPreferences; +- (void)configurePlainTextMessagePreferences; +- (void)_configureCommonRichTextPreferences; +- (void)configureRichTextMessagePreferences; +- (void)configureComposeRichPreferences; +- (void)configureComposePlainTextPreferences; +@end + diff --git a/MailHeaders/Lion/Mail/WebView-MailExtras.h b/MailHeaders/Lion/Mail/WebView-MailExtras.h new file mode 100644 index 00000000..0e105eb3 --- /dev/null +++ b/MailHeaders/Lion/Mail/WebView-MailExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebView.h" + +@interface WebView (MailExtras) +- (void)setAllDelegates:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Mail/WebViewEditor.h b/MailHeaders/Lion/Mail/WebViewEditor.h new file mode 100644 index 00000000..c9138190 --- /dev/null +++ b/MailHeaders/Lion/Mail/WebViewEditor.h @@ -0,0 +1,137 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "EditingMessageWebViewDelegate-Protocol.h" + +@class ComposeBackEnd, DOMHTMLAnchorElement, DocumentEditor, EditableWebMessageDocument, EditingMessageWebView, EditingWebMessageController, HyperlinkEditor, NSArray, NSDictionary, NSMutableSet, WebFrame; + +@interface WebViewEditor : NSObject +{ + EditingMessageWebView *_webView; + DocumentEditor *_documentEditor; + ComposeBackEnd *_backEnd; + HyperlinkEditor *_hyperlinkEditor; + EditingWebMessageController *_messageController; + WebFrame *_frameAllowedToLoadContent; + NSArray *_attachmentsForContextualMenu; + NSMutableSet *_largeFilesAddedWhileEditing; + BOOL _finalSpellCheckingIsInProgress; + BOOL _containsRichText; + BOOL _containsRichTextFlagIsValid; + BOOL _needToCheckRichnessInRange; + NSDictionary *_infoForRichnessTest; + DOMHTMLAnchorElement *_linkWhoseTextIsBeingEdited; +} + +- (id)init; +- (void)awakeFromNib; +- (void)dealloc; +- (void)earlySetUp; +- (void)setUp; +- (void)close; +- (id)webView; +@property(readonly) BOOL useDesignMode; +- (id)documentEditor; +- (void)setBackEnd:(id)arg1; +@property(readonly) EditableWebMessageDocument *document; +- (void)setMessageController:(id)arg1; +- (void)setFrameAllowedToLoadContent:(id)arg1; +- (void)webView:(id)arg1 decidePolicyForNavigationAction:(id)arg2 request:(id)arg3 frame:(id)arg4 decisionListener:(id)arg5; +- (id)webView:(id)arg1 resource:(id)arg2 willSendRequest:(id)arg3 redirectResponse:(id)arg4 fromDataSource:(id)arg5; +- (void)setInlineSpellCheckingEnabled:(BOOL)arg1; +- (void)setCheckGrammarWithSpelling:(BOOL)arg1; +- (BOOL)startFinalSpellCheck; +- (void)endFinalSpellCheck; +- (void)finalSpellCheckCompleted:(id)arg1; +- (void)setFinalSpellCheckingIsInProgress:(BOOL)arg1; +- (BOOL)finalSpellCheckingIsInProgress; +- (void)updateIgnoredWordsForHeader:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)_editLink; +- (void)editLink:(id)arg1; +- (void)editLink; +- (void)_continueEditLink:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (void)removeSelectedLink; +- (void)webViewDidChangeSelection:(id)arg1; +- (void)insertList:(id)arg1; +@property(readonly) BOOL allowQuoting; +- (void)increaseIndentation; +- (void)decreaseIndentation; +- (void)changeIndentationIfAllowed:(long long)arg1; +- (void)_continueChangeIndentation:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (BOOL)selectionIsInList; +- (BOOL)selectionIsInListTypes:(id)arg1; +- (BOOL)_selectionIsInEmptyListItem; +- (void)insertNumberedList:(id)arg1; +- (void)insertBulletedList:(id)arg1; +- (void)insertListWithNumbers:(BOOL)arg1 undoTitle:(id)arg2; +- (void)_continueInsertListWithNumbers:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (void)convertToNumberedList:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)_setFloat:(id)arg1 ofNode:(id)arg2 inView:(id)arg3 undoTitle:(id)arg4; +- (void)setFloat:(id)arg1 ofNode:(id)arg2 inView:(id)arg3 undoTitle:(id)arg4; +- (void)_continueSetFloat:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (BOOL)webView:(id)arg1 shouldShowDeleteInterfaceForElement:(id)arg2; +- (BOOL)webView:(id)arg1 canInsertFromPasteboard:(id)arg2 forDrag:(BOOL)arg3; +@property BOOL allowsRichText; +- (void)removeAllFormattingFromWebView; +@property BOOL containsRichText; +- (void)invalidateRichTextCache; +- (void)changeComposeModeInBackEndAndView:(long long)arg1; +- (void)_checkRichnessForEditedRange:(id)arg1; +- (BOOL)webView:(id)arg1 shouldDeleteDOMRange:(id)arg2; +- (void)webViewDidInsertRichText:(id)arg1; +- (BOOL)webView:(id)arg1 shouldApplyStyle:(id)arg2 toElementsInDOMRange:(id)arg3; +- (void)continueShouldApplyStyle:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +- (id)alertForConvertingToRichText; +- (void)beginConvertToRichTextAlert:(id)arg1 context:(id)arg2; +- (void)convertToRichAlertDidEnd:(id)arg1 returnCode:(long long)arg2 contextInfo:(id)arg3; +@property(readonly) BOOL isSelectionEditable; +- (void)appendFragment:(id)arg1 toDocument:(id)arg2 asQuote:(BOOL)arg3; +- (void)appendParsedMessage:(id)arg1 toDocument:(id)arg2 asQuote:(BOOL)arg3; +- (void)appendAttributedString:(id)arg1 toDocument:(id)arg2 asQuote:(BOOL)arg3; +- (BOOL)webView:(id)arg1 shouldInsertText:(id)arg2 replacingDOMRange:(id)arg3 givenAction:(int)arg4; +- (BOOL)webView:(id)arg1 shouldInsertNode:(id)arg2 replacingDOMRange:(id)arg3 givenAction:(int)arg4; +- (void)webViewDidChange:(id)arg1; +- (BOOL)webView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (id)_validRangeFromSelection:(id)arg1; +- (id)webView:(id)arg1 shouldReplaceSelectionWithWebArchive:(id)arg2 givenAction:(int)arg3; +- (BOOL)webView:(id)arg1 shouldInsertAttachments:(id)arg2 context:(id)arg3; +- (void)webViewMainDocumentBaseURIDidChange:(id)arg1; +- (BOOL)webViewShouldReplaceSelectionWithContentsOfWebpage:(id)arg1; +- (void)webViewWillInsertContentsOfWebpage:(id)arg1; +- (void)webView:(id)arg1 didAddMailAttachment:(id)arg2; +- (void)webView:(id)arg1 willRemoveMailAttachment:(id)arg2; +- (BOOL)removeAttachmentsLeavingPlaceholder:(BOOL)arg1; +- (void)replaceRiskyAttachmentsWithLinks; +- (id)selectedAttachments; +- (id)attachmentForEvent:(id)arg1; +- (id)selectedAttachmentNode; +- (id)directoryForAttachment:(id)arg1; +- (void)removeAttachments:(id)arg1; +- (void)viewAttachments:(id)arg1 inLine:(BOOL)arg2; +- (void)redisplayChangedAttachment:(id)arg1; +- (void)addAttachmentsForFiles:(id)arg1; +- (void)insertAttributedStringOfAttachments:(id)arg1 allAttachmentsAreOkay:(BOOL)arg2; +- (BOOL)_isOkayToInsertAttachment:(id)arg1; +- (void)replaceSelectionWithFragment:(id)arg1; +- (void)pasteAsMarkup; +- (void)saveDocument:(id)arg1; +- (void)saveChangedDocument:(id)arg1; +- (id)largeFilesAddedWhileEditing; +- (void)largeFileAdded:(id)arg1; +- (void)webViewWillStartLiveResize:(id)arg1; +- (void)webViewDidEndLiveResize:(id)arg1; +@property(readonly) ComposeBackEnd *composeBackEnd; // @synthesize composeBackEnd=_backEnd; +@property(retain) NSDictionary *infoForRichnessTest; // @synthesize infoForRichnessTest=_infoForRichnessTest; + +@end + diff --git a/MailHeaders/Lion/Mail/WebViewLoadOperation.h b/MailHeaders/Lion/Mail/WebViewLoadOperation.h new file mode 100644 index 00000000..9e7859d1 --- /dev/null +++ b/MailHeaders/Lion/Mail/WebViewLoadOperation.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSOperation.h" + +@class NSData, NSInvocation, NSURLRequest, WebView; + +@interface WebViewLoadOperation : NSOperation +{ + WebView *_webView; + NSData *_data; + NSURLRequest *_urlRequest; + NSInvocation *_loadInvocation; + NSInvocation *_didLoadInvocation; + BOOL _isExecuting; + BOOL _isFinished; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +- (id)initWithWebView:(id)arg1 data:(id)arg2; +- (id)initWithWebView:(id)arg1 urlRequest:(id)arg2; +- (id)initWithWebView:(id)arg1 loadInvocation:(id)arg2; +- (id)initWithWebView:(id)arg1 loadInvocation:(id)arg2 didLoadInvocation:(id)arg3; +- (void)_webViewLoadOperationCommonInitWithWebView:(id)arg1; +- (id)init; +- (void)dealloc; +- (id)description; +- (BOOL)isConcurrent; +- (BOOL)isExecuting; +- (void)_setIsExecuting:(BOOL)arg1; +- (BOOL)isFinished; +- (void)start; +- (void)main; +- (void)cancel; +- (void)_end; +- (void)_webViewDidLoad:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/WindowTransformAnimation.h b/MailHeaders/Lion/Mail/WindowTransformAnimation.h new file mode 100644 index 00000000..6b278dcb --- /dev/null +++ b/MailHeaders/Lion/Mail/WindowTransformAnimation.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAnimation.h" + +@class FullScreenModalCapableWindow, ModalDimmingWindow; + +@interface WindowTransformAnimation : NSAnimation +{ + FullScreenModalCapableWindow *_window; + ModalDimmingWindow *_dimmingWindow; + long long _animationType; + long long _dimmingFade; + struct CGPoint _anchorPoint; + double _maxScreenPosition; + BOOL _cancelled; +} + ++ (id)windowTransformAnimationWithWindow:(id)arg1 dimmingWindow:(id)arg2 type:(long long)arg3; +- (id)initWithDuration:(double)arg1 animationCurve:(unsigned long long)arg2; +- (id)initWithWindow:(id)arg1 dimmingWindow:(id)arg2 type:(long long)arg3; +- (double)_animationDurationForAnimationType:(long long)arg1; +- (unsigned long long)_animationCurveForAnimationType:(long long)arg1; +- (void)setWindowFlyInTranslationProgress:(double)arg1; +- (void)setWindowMagnificationForProgress:(double)arg1 anchorPoint:(struct CGPoint)arg2; +- (void)startAnimation; +- (void)cancelAnimation; +- (void)setCurrentProgress:(float)arg1; +- (void)dealloc; +@property BOOL cancelled; // @synthesize cancelled=_cancelled; +@property(readonly) long long animationType; // @synthesize animationType=_animationType; + +@end + diff --git a/MailHeaders/Lion/Mail/_AccountDisplayCell.h b/MailHeaders/Lion/Mail/_AccountDisplayCell.h new file mode 100644 index 00000000..dc028a0e --- /dev/null +++ b/MailHeaders/Lion/Mail/_AccountDisplayCell.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@class AccountPreferences, MailAccount, NSImageCell; + +@interface _AccountDisplayCell : NSTextFieldCell +{ + AccountPreferences *_accountPreferences; + NSTextFieldCell *_descriptionTextCell; + NSTextFieldCell *_activeTextCell; + NSImageCell *_imageCell; + MailAccount *_account; +} + +- (id)initWithAccountPreferences:(id)arg1; +- (id)initImageCell:(id)arg1; +- (id)initTextCell:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (void)_accountDisplayCellCommonInitWithAccountPreferences:(id)arg1; +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)setAccountPreferences:(id)arg1; +- (void)setMailAccount:(id)arg1; +- (struct CGRect)expansionFrameWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (BOOL)trackMouse:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3 untilMouseUp:(BOOL)arg4; +- (void)willBeDisplayed; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/_AddressRectangleView.h b/MailHeaders/Lion/Mail/_AddressRectangleView.h new file mode 100644 index 00000000..bdf20c55 --- /dev/null +++ b/MailHeaders/Lion/Mail/_AddressRectangleView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface _AddressRectangleView : NSView +{ +} + +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_AllSignaturesAccount.h b/MailHeaders/Lion/Mail/_AllSignaturesAccount.h new file mode 100644 index 00000000..a3cef58b --- /dev/null +++ b/MailHeaders/Lion/Mail/_AllSignaturesAccount.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface _AllSignaturesAccount : NSObject +{ +} + +- (id)uniqueId; +- (id)displayName; + +@end + diff --git a/MailHeaders/Lion/Mail/_AttachmentQueueEntry.h b/MailHeaders/Lion/Mail/_AttachmentQueueEntry.h new file mode 100644 index 00000000..6b8eb11a --- /dev/null +++ b/MailHeaders/Lion/Mail/_AttachmentQueueEntry.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MessageAttachmentViewController, NSString, NSURL, NSWindow; + +@interface _AttachmentQueueEntry : NSObject +{ + NSWindow *_window; + MessageAttachmentViewController *_attachmentController; + int _reason; + NSString *_attachDir; + union { + NSURL *applicationURL; + NSString *savePath; + } _opSpecific; +} + ++ (id)newWithWindow:(id)arg1 attachmentController:(id)arg2 reason:(int)arg3 opSpecific:(id)arg4 attachmentDirectory:(id)arg5; +@property(retain, nonatomic) MessageAttachmentViewController *attachmentController; // @synthesize attachmentController=_attachmentController; +- (BOOL)isEqual:(id)arg1; +- (void)dealloc; +@property(retain, nonatomic) NSString *attachDir; // @synthesize attachDir=_attachDir; +@property(nonatomic) int reason; // @synthesize reason=_reason; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; + +@end + diff --git a/MailHeaders/Lion/Mail/_AutocompletionResultsAccumulator.h b/MailHeaders/Lion/Mail/_AutocompletionResultsAccumulator.h new file mode 100644 index 00000000..2676e671 --- /dev/null +++ b/MailHeaders/Lion/Mail/_AutocompletionResultsAccumulator.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "ABSearchOperationDelegate-Protocol.h" +#import "RecentsSearchOperationDelegate-Protocol.h" + +@class ABAddressBook, CompletionController, NSMutableArray; + +@interface _AutocompletionResultsAccumulator : NSObject +{ + CompletionController *_completionController; + NSMutableArray *_mailRecents; + NSMutableArray *_regularRecords; + long long _numberOfLocalSearches; + long long _numberOfRemoteSearches; + ABAddressBook *_addressBook; +} + +- (id)init; +- (void)dealloc; +@property CompletionController *completionController; +- (id)copyCompletionController; +- (void)reset; +- (void)expectLocalSearches:(long long)arg1 remoteSearches:(long long)arg2 addressBook:(id)arg3; +- (BOOL)searchOperationIsValid:(id)arg1; +- (id)addressBook; +- (void)searchOperationDidFinish:(id)arg1; +- (void)recentsSearchOperationDidFinish:(id)arg1; +- (void)searchOperation:(id)arg1 foundRecords:(id)arg2; +- (void)recentsSearchOperation:(id)arg1 foundRecords:(id)arg2; +- (void)sendLocalSearchResultsToCompletionController:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_AutosizingClipView.h b/MailHeaders/Lion/Mail/_AutosizingClipView.h new file mode 100644 index 00000000..501d18ab --- /dev/null +++ b/MailHeaders/Lion/Mail/_AutosizingClipView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSClipView.h" + +@interface _AutosizingClipView : NSClipView +{ +} + +- (void)viewFrameChanged:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_BorderlessButton.h b/MailHeaders/Lion/Mail/_BorderlessButton.h new file mode 100644 index 00000000..70f2b7cf --- /dev/null +++ b/MailHeaders/Lion/Mail/_BorderlessButton.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSButton.h" + +@class NSImage; + +@interface _BorderlessButton : NSButton +{ + NSImage *_activeImage; + NSImage *_inactiveImage; +} + +- (BOOL)isOpaque; +- (void)dealloc; +- (void)setEnabled:(BOOL)arg1; +@property(retain) NSImage *inactiveImage; // @synthesize inactiveImage=_inactiveImage; +@property(retain) NSImage *activeImage; // @synthesize activeImage=_activeImage; + +@end + diff --git a/MailHeaders/Lion/Mail/_CompletionWindow.h b/MailHeaders/Lion/Mail/_CompletionWindow.h new file mode 100644 index 00000000..e3b5b0cf --- /dev/null +++ b/MailHeaders/Lion/Mail/_CompletionWindow.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface _CompletionWindow : NSWindow +{ +} + +- (BOOL)wantsScrollWheelEvent:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_ComposeAttachmentEnumerator.h b/MailHeaders/Lion/Mail/_ComposeAttachmentEnumerator.h new file mode 100644 index 00000000..1706b895 --- /dev/null +++ b/MailHeaders/Lion/Mail/_ComposeAttachmentEnumerator.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@class DOMNode, EditableWebMessageDocument; + +@interface _ComposeAttachmentEnumerator : NSEnumerator +{ + DOMNode *_currentNode; + DOMNode *_containerNode; + DOMNode *_endNode; + EditableWebMessageDocument *_document; + unsigned int _acceptDeleted:1; + unsigned int _acceptNonDeleted:1; +} + +- (id)initWithDocument:(id)arg1 options:(int)arg2 range:(id)arg3; +- (void)dealloc; +- (short)acceptNode:(id)arg1; +- (id)nextObject; +@property(retain) EditableWebMessageDocument *document; // @synthesize document=_document; +@property(retain) DOMNode *endNode; // @synthesize endNode=_endNode; +@property(retain) DOMNode *containerNode; // @synthesize containerNode=_containerNode; +@property(retain) DOMNode *currentNode; // @synthesize currentNode=_currentNode; + +@end + diff --git a/MailHeaders/Lion/Mail/_DataDetectorManagerDelegate.h b/MailHeaders/Lion/Mail/_DataDetectorManagerDelegate.h new file mode 100644 index 00000000..dfaae221 --- /dev/null +++ b/MailHeaders/Lion/Mail/_DataDetectorManagerDelegate.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "DDDetectorManagerDelegate-Protocol.h" + +@interface _DataDetectorManagerDelegate : NSObject +{ +} + +- (id)scrollViewForWebView:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_DateTextFieldCell.h b/MailHeaders/Lion/Mail/_DateTextFieldCell.h new file mode 100644 index 00000000..97eb2892 --- /dev/null +++ b/MailHeaders/Lion/Mail/_DateTextFieldCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface _DateTextFieldCell : NSTextFieldCell +{ +} + +- (unsigned long long)hitTestForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3; + +@end + diff --git a/MailHeaders/Lion/Mail/_DeleteMailboxTransfer.h b/MailHeaders/Lion/Mail/_DeleteMailboxTransfer.h new file mode 100644 index 00000000..1fd555dc --- /dev/null +++ b/MailHeaders/Lion/Mail/_DeleteMailboxTransfer.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MessageDeletionTransfer-Protocol.h" + +@class MonitoredInvocation; + +@interface _DeleteMailboxTransfer : NSObject +{ + MonitoredInvocation *_invocation; +} + +- (void)dealloc; +- (BOOL)canBeginTransfer; +- (void)beginTransfer; +@property(retain, nonatomic) MonitoredInvocation *invocation; // @synthesize invocation=_invocation; + +@end + diff --git a/MailHeaders/Lion/Mail/_DupsLinkView.h b/MailHeaders/Lion/Mail/_DupsLinkView.h new file mode 100644 index 00000000..c9f36094 --- /dev/null +++ b/MailHeaders/Lion/Mail/_DupsLinkView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextField.h" + +@class MessageHeaderDisplay; + +@interface _DupsLinkView : NSTextField +{ + MessageHeaderDisplay *_linkHandler; +} + +- (void)resetCursorRects; +@property MessageHeaderDisplay *linkHandler; // @synthesize linkHandler=_linkHandler; + +@end + diff --git a/MailHeaders/Lion/Mail/_EmptyFavoritesMessageView.h b/MailHeaders/Lion/Mail/_EmptyFavoritesMessageView.h new file mode 100644 index 00000000..e896641f --- /dev/null +++ b/MailHeaders/Lion/Mail/_EmptyFavoritesMessageView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface _EmptyFavoritesMessageView : NSView +{ +} + +- (void)drawRect:(struct CGRect)arg1; +- (BOOL)isOpaque; + +@end + diff --git a/MailHeaders/Lion/Mail/_FavoriteButtonCell.h b/MailHeaders/Lion/Mail/_FavoriteButtonCell.h new file mode 100644 index 00000000..17ed3a7a --- /dev/null +++ b/MailHeaders/Lion/Mail/_FavoriteButtonCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MailBarContainerButtonCell.h" + +@interface _FavoriteButtonCell : MailBarContainerButtonCell +{ +} + +- (BOOL)_shouldDrawBezel; + +@end + diff --git a/MailHeaders/Lion/Mail/_FilteredListInfo.h b/MailHeaders/Lion/Mail/_FilteredListInfo.h new file mode 100644 index 00000000..14d08e00 --- /dev/null +++ b/MailHeaders/Lion/Mail/_FilteredListInfo.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSDictionary, NSMutableArray, NSMutableDictionary, NSMutableSet; + +@interface _FilteredListInfo : NSObject +{ + NSMutableArray *_filteredMessages; + NSArray *_changedMessages; + NSMutableSet *_filteredThreads; + NSArray *_changedThreads; + NSDictionary *_changedFlags; + NSArray *_messagesFilteredIn; + NSArray *_messagesFilteredOut; + NSMutableDictionary *_messageSortValues; + NSDictionary *_snippetsForMessages; + int _taskType; +} + ++ (id)infoForType:(int)arg1; +- (void)dealloc; +@property int taskType; // @synthesize taskType=_taskType; +@property(retain) NSDictionary *snippetsForMessages; // @synthesize snippetsForMessages=_snippetsForMessages; +@property(retain) NSMutableDictionary *messageSortValues; // @synthesize messageSortValues=_messageSortValues; +@property(retain) NSArray *messagesFilteredOut; // @synthesize messagesFilteredOut=_messagesFilteredOut; +@property(retain) NSArray *messagesFilteredIn; // @synthesize messagesFilteredIn=_messagesFilteredIn; +@property(retain) NSDictionary *changedFlags; // @synthesize changedFlags=_changedFlags; +@property(retain) NSArray *changedThreads; // @synthesize changedThreads=_changedThreads; +@property(retain) NSMutableSet *filteredThreads; // @synthesize filteredThreads=_filteredThreads; +@property(retain) NSArray *changedMessages; // @synthesize changedMessages=_changedMessages; +@property(retain) NSMutableArray *filteredMessages; // @synthesize filteredMessages=_filteredMessages; + +@end + diff --git a/MailHeaders/Lion/Mail/_IMAPMailboxEntry.h b/MailHeaders/Lion/Mail/_IMAPMailboxEntry.h new file mode 100644 index 00000000..9e74933e --- /dev/null +++ b/MailHeaders/Lion/Mail/_IMAPMailboxEntry.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class IMAPMailboxes, MailboxUid, NSArray, NSString; + +@interface _IMAPMailboxEntry : NSObject +{ + NSString *_name; + NSString *_path; + BOOL _subscribed; + NSArray *_children; + NSArray *_filteredChildren; + MailboxUid *_uid; + BOOL _isNoSelect; + BOOL _hasEnabledDescendants; + _IMAPMailboxEntry *_parent; + IMAPMailboxes *_controller; +} + +- (void)dealloc; +- (long long)compare:(id)arg1; +@property(retain, nonatomic) NSArray *filteredChildren; // @synthesize filteredChildren=_filteredChildren; +- (BOOL)isPathValidForCurrentFilter; +- (BOOL)isValidForCurrentFilter; +@property(nonatomic) IMAPMailboxes *controller; // @synthesize controller=_controller; +@property(retain, nonatomic) _IMAPMailboxEntry *parent; // @synthesize parent=_parent; +@property(nonatomic) BOOL hasEnabledDescendants; // @synthesize hasEnabledDescendants=_hasEnabledDescendants; +@property(nonatomic) BOOL isNoSelect; // @synthesize isNoSelect=_isNoSelect; +@property(retain, nonatomic) MailboxUid *uid; // @synthesize uid=_uid; +@property(retain, nonatomic) NSArray *children; // @synthesize children=_children; +@property(nonatomic) BOOL subscribed; // @synthesize subscribed=_subscribed; +@property(retain, nonatomic) NSString *path; // @synthesize path=_path; +@property(retain, nonatomic) NSString *name; // @synthesize name=_name; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMAccountMailbox.h b/MailHeaders/Lion/Mail/_MTMAccountMailbox.h new file mode 100644 index 00000000..b6e6a1ff --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMAccountMailbox.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMAccountMailbox : MTMSpecialMailbox +{ +} + +- (id)displayName; +- (id)recoverDisplayName; +- (id)restoreString; +- (id)subRestoreString; +- (id)identifier; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMBackupMailbox.h b/MailHeaders/Lion/Mail/_MTMBackupMailbox.h new file mode 100644 index 00000000..5f67678e --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMBackupMailbox.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMBackupMailbox : MTMSpecialMailbox +{ +} + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMDisabledSubMetaMailbox.h b/MailHeaders/Lion/Mail/_MTMDisabledSubMetaMailbox.h new file mode 100644 index 00000000..846dd56c --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMDisabledSubMetaMailbox.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "_MTMSubMetaMailbox.h" + +@interface _MTMDisabledSubMetaMailbox : _MTMSubMetaMailbox +{ +} + +- (BOOL)enabled; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMDraftsMailbox.h b/MailHeaders/Lion/Mail/_MTMDraftsMailbox.h new file mode 100644 index 00000000..33f0f26f --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMDraftsMailbox.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "_MTMStoredMetaMailbox.h" + +@interface _MTMDraftsMailbox : _MTMStoredMetaMailbox +{ +} + +- (id)displayName; +- (id)recoverDisplayName; +- (id)restoreMode; +- (id)messageColumnConfiguration; +- (id)defaultMessageColumnAttributesKey; +- (id)_oneMesageString; +- (id)_severalMessagesString; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMHeaderCell.h b/MailHeaders/Lion/Mail/_MTMHeaderCell.h new file mode 100644 index 00000000..eb31d5b7 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMHeaderCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableHeaderCell.h" + +@interface _MTMHeaderCell : NSTableHeaderCell +{ +} + +- (struct CGRect)drawingRectForBounds:(struct CGRect)arg1; +- (struct CGRect)sortIndicatorRectForBounds:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMInboxMailbox.h b/MailHeaders/Lion/Mail/_MTMInboxMailbox.h new file mode 100644 index 00000000..d90a9b18 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMInboxMailbox.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "_MTMMetaMailbox.h" + +@interface _MTMInboxMailbox : _MTMMetaMailbox +{ +} + +- (id)displayName; +- (id)defaultMessageColumnAttributesKey; +- (id)recoverDisplayName; +- (id)restoreString; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMJunkMailbox.h b/MailHeaders/Lion/Mail/_MTMJunkMailbox.h new file mode 100644 index 00000000..7cec6112 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMJunkMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMJunkMailbox : MTMSpecialMailbox +{ +} + +- (id)displayName; +- (id)defaultMessageColumnAttributesKey; +- (BOOL)enabled; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMMetaMailbox.h b/MailHeaders/Lion/Mail/_MTMMetaMailbox.h new file mode 100644 index 00000000..af85b56d --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMMetaMailbox.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMMetaMailbox : MTMSpecialMailbox +{ +} + +- (void)_updateMessages:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)discardMailbox; +- (void)_loadMessages; +- (BOOL)needsToLoadMessagesInBackground; +- (void)loadNextMessagesWithControllingMailbox:(id)arg1 andFetcher:(id)arg2; +- (id)paths; +- (id)restoreString; +- (id)subRestoreString; +- (BOOL)_shouldSortMailboxes; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMNotesMailbox.h b/MailHeaders/Lion/Mail/_MTMNotesMailbox.h new file mode 100644 index 00000000..45633c96 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMNotesMailbox.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "_MTMStoredMetaMailbox.h" + +@interface _MTMNotesMailbox : _MTMStoredMetaMailbox +{ +} + +- (id)displayName; +- (id)recoverDisplayName; +- (id)restoreMode; +- (id)messageColumnConfiguration; +- (id)defaultMessageColumnAttributesKey; +- (id)_oneMesageString; +- (id)_severalMessagesString; +- (id)messageListFont; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMRSSMailbox.h b/MailHeaders/Lion/Mail/_MTMRSSMailbox.h new file mode 100644 index 00000000..0187cd4d --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMRSSMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMRSSMailbox : MTMSpecialMailbox +{ +} + +- (id)displayName; +- (id)messageColumnConfiguration; +- (BOOL)enabled; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMRSSSubMailbox.h b/MailHeaders/Lion/Mail/_MTMRSSSubMailbox.h new file mode 100644 index 00000000..2c8e7cdf --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMRSSSubMailbox.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMRSSSubMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)enabled; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMRootMailbox.h b/MailHeaders/Lion/Mail/_MTMRootMailbox.h new file mode 100644 index 00000000..770e2b61 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMRootMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMRootMailbox : MTMSpecialMailbox +{ +} + +- (id)messages; +- (id)subMailboxes; +- (BOOL)_shouldSortMailboxes; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMSectionMailbox.h b/MailHeaders/Lion/Mail/_MTMSectionMailbox.h new file mode 100644 index 00000000..6541a015 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMSectionMailbox.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMSectionMailbox : MTMSpecialMailbox +{ +} + +- (id)displayName; +- (BOOL)canCollapse; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMSentMailbox.h b/MailHeaders/Lion/Mail/_MTMSentMailbox.h new file mode 100644 index 00000000..ef0d2555 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMSentMailbox.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "_MTMMetaMailbox.h" + +@interface _MTMSentMailbox : _MTMMetaMailbox +{ +} + +- (id)displayName; +- (id)recoverDisplayName; +- (id)messageColumnConfiguration; +- (id)defaultMessageColumnAttributesKey; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMSmartMailbox.h b/MailHeaders/Lion/Mail/_MTMSmartMailbox.h new file mode 100644 index 00000000..8ab6d258 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMSmartMailbox.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMSmartMailbox : MTMSpecialMailbox +{ +} + +- (id)identifier; +- (id)messageColumnConfiguration; +- (BOOL)enabled; +- (BOOL)isSmartMailbox; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMStoredMetaMailbox.h b/MailHeaders/Lion/Mail/_MTMStoredMetaMailbox.h new file mode 100644 index 00000000..625907e5 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMStoredMetaMailbox.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMStoredMetaMailbox : MTMSpecialMailbox +{ +} + +- (void)_loadMessages; +- (void)_updateMessages:(id)arg1; +- (void)loadNextMessagesWithControllingMailbox:(id)arg1 andFetcher:(id)arg2; +- (id)paths; +- (id)restoreString; +- (BOOL)_shouldSortMailboxes; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMStoredSubMetaMailbox.h b/MailHeaders/Lion/Mail/_MTMStoredSubMetaMailbox.h new file mode 100644 index 00000000..56a04416 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMStoredSubMetaMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "_MTMSubMetaMailbox.h" + +@interface _MTMStoredSubMetaMailbox : _MTMSubMetaMailbox +{ +} + +- (void)_loadMessages; +- (void)_updateMessages:(id)arg1; +- (void)loadNextMessagesWithControllingMailbox:(id)arg1 andFetcher:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMSubMetaMailbox.h b/MailHeaders/Lion/Mail/_MTMSubMetaMailbox.h new file mode 100644 index 00000000..a959a4b1 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMSubMetaMailbox.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMSubMetaMailbox : MTMSpecialMailbox +{ +} + +- (id)displayName; +- (id)recoverDisplayName; +- (id)identifier; +- (id)restoreMode; +- (id)restoreString; +- (id)messageColumnConfiguration; +- (id)defaultMessageColumnAttributesKey; +- (id)displayNameForList; +- (id)displayNameInMessageList; +- (id)_oneMesageString; +- (id)_severalMessagesString; +- (id)messageListColor; +- (id)messageListFont; + +@end + diff --git a/MailHeaders/Lion/Mail/_MTMTrashMailbox.h b/MailHeaders/Lion/Mail/_MTMTrashMailbox.h new file mode 100644 index 00000000..33197a61 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MTMTrashMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "_MTMMetaMailbox.h" + +@interface _MTMTrashMailbox : _MTMMetaMailbox +{ +} + +- (id)displayName; +- (id)recoverDisplayName; +- (id)defaultMessageColumnAttributesKey; + +@end + diff --git a/MailHeaders/Lion/Mail/_MV_BezierPathLayoutManager.h b/MailHeaders/Lion/Mail/_MV_BezierPathLayoutManager.h new file mode 100644 index 00000000..14e443fb --- /dev/null +++ b/MailHeaders/Lion/Mail/_MV_BezierPathLayoutManager.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSLayoutManager.h" + +@class NSBezierPath; + +@interface _MV_BezierPathLayoutManager : NSLayoutManager +{ + NSBezierPath *_bezierPath; +} + +- (id)initWithBezierPath:(id)arg1; +- (void)dealloc; +- (void)showCGGlyphs:(const unsigned short *)arg1 positions:(const struct CGPoint *)arg2 count:(unsigned long long)arg3 font:(id)arg4 matrix:(id)arg5 attributes:(id)arg6 inContext:(id)arg7; + +@end + diff --git a/MailHeaders/Lion/Mail/_MailInspectorBarSeparatorView.h b/MailHeaders/Lion/Mail/_MailInspectorBarSeparatorView.h new file mode 100644 index 00000000..1d72f664 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MailInspectorBarSeparatorView.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface _MailInspectorBarSeparatorView : NSView +{ +} + +- (id)initForContainerView:(id)arg1; +- (BOOL)isOpaque; +- (BOOL)isFlipped; +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_MailNSClipView.h b/MailHeaders/Lion/Mail/_MailNSClipView.h new file mode 100644 index 00000000..b1ff7722 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MailNSClipView.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSClipView.h" + +@interface _MailNSClipView : NSClipView +{ + long long _programmaticScrollCount; + BOOL _preventScrolling; + BOOL _easeOutAnimations; + BOOL _couldAnimateScrolls; +} + +- (id)animationForKey:(id)arg1; +- (void)scrollToPoint:(struct CGPoint)arg1; +- (void)beginProgrammaticScroll; +- (void)endProgrammaticScroll; +- (BOOL)isProgrammaticScroll; +@property(nonatomic) BOOL easeOutAnimations; // @synthesize easeOutAnimations=_easeOutAnimations; +@property(nonatomic) BOOL preventScrolling; // @synthesize preventScrolling=_preventScrolling; + +@end + diff --git a/MailHeaders/Lion/Mail/_MailNSFontManager.h b/MailHeaders/Lion/Mail/_MailNSFontManager.h new file mode 100644 index 00000000..49667694 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MailNSFontManager.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFontManager.h" + +@interface _MailNSFontManager : NSFontManager +{ + double _fontSize; + BOOL _isMultiple; +} + +- (void)postSelectedFontChangeNotification; +- (void)setSelectedFont:(id)arg1 isMultiple:(BOOL)arg2; +- (void)modifyFontSize:(double)arg1; +- (unsigned long long)currentFontAction; +- (id)convertFont:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_MailSplitViewDimmingView.h b/MailHeaders/Lion/Mail/_MailSplitViewDimmingView.h new file mode 100644 index 00000000..3b21df2b --- /dev/null +++ b/MailHeaders/Lion/Mail/_MailSplitViewDimmingView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface _MailSplitViewDimmingView : NSView +{ +} + +- (BOOL)isOpaque; +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_MailTableHeaderView.h b/MailHeaders/Lion/Mail/_MailTableHeaderView.h new file mode 100644 index 00000000..2b9c991a --- /dev/null +++ b/MailHeaders/Lion/Mail/_MailTableHeaderView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableHeaderView.h" + +@interface _MailTableHeaderView : NSTableHeaderView +{ + BOOL _didLazyLoadMenu; +} + +- (id)menu; + +@end + diff --git a/MailHeaders/Lion/Mail/_MailToolbarSpace.h b/MailHeaders/Lion/Mail/_MailToolbarSpace.h new file mode 100644 index 00000000..a9d23778 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MailToolbarSpace.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@class MailToolbarSpaceItemWithPin; + +@interface _MailToolbarSpace : NSView +{ + MailToolbarSpaceItemWithPin *_spaceItem; + BOOL _inPalette; +} + +- (id)initWithSize:(struct CGSize)arg1 forSpaceItem:(id)arg2; +- (void)drawRect:(struct CGRect)arg1; +- (BOOL)inPalette; +- (void)setInPalette:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_MailboxUidPlaceholder.h b/MailHeaders/Lion/Mail/_MailboxUidPlaceholder.h new file mode 100644 index 00000000..25664606 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MailboxUidPlaceholder.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MFUIMailbox-Protocol.h" + +@class NSString; + +@interface _MailboxUidPlaceholder : NSObject +{ + NSString *_persistentIdentifier; + NSString *_displayName; + NSString *_accountURLString; + int _type; + BOOL _isContainer; +} + +- (id)initWithPersistentIdentifier:(id)arg1 name:(id)arg2 accountURLString:(id)arg3 type:(int)arg4 isContainer:(BOOL)arg5; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)account; +- (BOOL)isSmartMailbox; +- (BOOL)isStore; +- (BOOL)hasChildren; +- (long long)numberOfChildren; +- (id)children; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (BOOL)isPlaceholder; +- (void)dealloc; +- (id)description; +- (unsigned long long)displayCount; +- (id)extendedDisplayName; +@property(nonatomic) BOOL isContainer; // @synthesize isContainer=_isContainer; +@property int type; // @synthesize type=_type; +@property(retain, nonatomic) NSString *accountURLString; // @synthesize accountURLString=_accountURLString; +@property(retain, nonatomic) NSString *displayName; // @synthesize displayName=_displayName; +@property(retain, nonatomic) NSString *persistentIdentifier; // @synthesize persistentIdentifier=_persistentIdentifier; + +@end + diff --git a/MailHeaders/Lion/Mail/_MenuItemThatDoesNotRetainRepresentedObject.h b/MailHeaders/Lion/Mail/_MenuItemThatDoesNotRetainRepresentedObject.h new file mode 100644 index 00000000..1944afeb --- /dev/null +++ b/MailHeaders/Lion/Mail/_MenuItemThatDoesNotRetainRepresentedObject.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMenuItem.h" + +@interface _MenuItemThatDoesNotRetainRepresentedObject : NSMenuItem +{ + id _representedObject; +} + +- (id)representedObject; +- (void)setRepresentedObject:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_MessageContentTableRowView.h b/MailHeaders/Lion/Mail/_MessageContentTableRowView.h new file mode 100644 index 00000000..393f980b --- /dev/null +++ b/MailHeaders/Lion/Mail/_MessageContentTableRowView.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTableRowView.h" + +@class MessageContentController; + +@interface _MessageContentTableRowView : NSTableRowView +{ + MessageContentController *_controller; +} + +@property(retain, nonatomic) MessageContentController *controller; // @synthesize controller=_controller; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)viewDidMoveToWindow; +- (void)setEmphasized:(BOOL)arg1; +- (void)dealloc; +- (BOOL)accessibilityIsIgnored; +- (id)accessibilityAttributeValue:(id)arg1; +- (long long)accessibilityReportingStyle; + +@end + diff --git a/MailHeaders/Lion/Mail/_MessageHeaderAccessibilityView.h b/MailHeaders/Lion/Mail/_MessageHeaderAccessibilityView.h new file mode 100644 index 00000000..e815bcbd --- /dev/null +++ b/MailHeaders/Lion/Mail/_MessageHeaderAccessibilityView.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSView.h" + +@interface _MessageHeaderAccessibilityView : NSView +{ +} + +- (id)messageHeaderView; +- (id)detailsLinkFauxUIElement; +- (BOOL)accessibilityIsIgnored; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityHitTest:(struct CGPoint)arg1; +- (BOOL)isFauxUIElementFocusable:(id)arg1; +- (void)fauxUIElement:(id)arg1 setFocus:(id)arg2; +- (struct CGPoint)fauxUIElementPosition:(id)arg1; +- (struct CGSize)fauxUIElementSize:(id)arg1; +- (id)fauxUIElementValue:(id)arg1; +- (id)fauxUIElementTitle:(id)arg1; +- (id)fauxUIElementDescription:(id)arg1; +- (id)fauxUIElementActionNames:(id)arg1; +- (id)fauxUIElementActionDescription:(id)arg1; +- (void)fauxUIElement:(id)arg1 performAction:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/_MessageThreadingData.h b/MailHeaders/Lion/Mail/_MessageThreadingData.h new file mode 100644 index 00000000..11e5fb7a --- /dev/null +++ b/MailHeaders/Lion/Mail/_MessageThreadingData.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class Message, MessageThread, NSMutableSet; + +@interface _MessageThreadingData : NSObject +{ + Message *_parent; + NSMutableSet *_replies; + MessageThread *_thread; +} + +- (id)description; +- (void)dealloc; +@property(retain, nonatomic) MessageThread *thread; // @synthesize thread=_thread; +@property(retain, nonatomic) NSMutableSet *replies; // @synthesize replies=_replies; +@property(retain, nonatomic) Message *parent; // @synthesize parent=_parent; + +@end + diff --git a/MailHeaders/Lion/Mail/_MessageViewerBox.h b/MailHeaders/Lion/Mail/_MessageViewerBox.h new file mode 100644 index 00000000..8b6013ae --- /dev/null +++ b/MailHeaders/Lion/Mail/_MessageViewerBox.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSBox.h" + +@interface _MessageViewerBox : NSBox +{ +} + +- (unsigned long long)draggingUpdated:(id)arg1; +- (void)draggingExited:(id)arg1; +- (BOOL)prepareForDragOperation:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (void)concludeDragOperation:(id)arg1; +- (BOOL)isOpaque; +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_MessageViewerLazyPopUpButtonCell.h b/MailHeaders/Lion/Mail/_MessageViewerLazyPopUpButtonCell.h new file mode 100644 index 00000000..a4c5b1b1 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MessageViewerLazyPopUpButtonCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPopUpButtonCell.h" + +@interface _MessageViewerLazyPopUpButtonCell : NSPopUpButtonCell +{ +} + +- (void)accessibilityPerformAction:(id)arg1; +- (void)_drawIndicatorWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/_MessageViewingPaneConversationsObserver.h b/MailHeaders/Lion/Mail/_MessageViewingPaneConversationsObserver.h new file mode 100644 index 00000000..521603ae --- /dev/null +++ b/MailHeaders/Lion/Mail/_MessageViewingPaneConversationsObserver.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMapTable, NSOperationQueue; + +@interface _MessageViewingPaneConversationsObserver : NSObject +{ + NSOperationQueue *_loadingQueue; + NSMapTable *_controllerToInitialMessage; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (id)init; +- (void)dealloc; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)setInitialMessage:(id)arg1 forController:(id)arg2; +- (void)loadLibraryConversations:(id)arg1 withLoadOptions:(unsigned int)arg2 previousMessage:(id)arg3; +- (void)libraryMessagesUpdated:(id)arg1; +- (void)libraryConversationsWereChanged:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_MouseTracker.h b/MailHeaders/Lion/Mail/_MouseTracker.h new file mode 100644 index 00000000..1b00e822 --- /dev/null +++ b/MailHeaders/Lion/Mail/_MouseTracker.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSView; + +@interface _MouseTracker : NSObject +{ + NSView *_view; + struct CGRect _trackingRect; + long long _trackingRectTag; + BOOL _mouseOver; + id _delegate; +} + +- (id)initWithTrackingRect:(struct CGRect)arg1 inView:(id)arg2; +- (void)dealloc; +- (void)setDelegate:(id)arg1; +- (struct CGRect)trackingRect; +- (id)view; +- (BOOL)mouseOver; +- (void)_updateMouseIsOver; +- (void)mouseEntered:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)mouseMoved:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_PDFAttachmentView_InertScrollView.h b/MailHeaders/Lion/Mail/_PDFAttachmentView_InertScrollView.h new file mode 100644 index 00000000..a400d166 --- /dev/null +++ b/MailHeaders/Lion/Mail/_PDFAttachmentView_InertScrollView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSScrollView.h" + +@interface _PDFAttachmentView_InertScrollView : NSScrollView +{ +} + +- (void)scrollWheel:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_QuickLookButtonCell.h b/MailHeaders/Lion/Mail/_QuickLookButtonCell.h new file mode 100644 index 00000000..25f0db02 --- /dev/null +++ b/MailHeaders/Lion/Mail/_QuickLookButtonCell.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@class NSAttributedString; + +@interface _QuickLookButtonCell : NSButtonCell +{ + NSAttributedString *_quickLookTitle; + NSAttributedString *_slideShowTitle; +} + +- (id)init; +- (void)dealloc; +- (struct CGSize)cellSizeForBounds:(struct CGRect)arg1; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)accessibilityAttributeValue:(id)arg1; +@property(retain) NSAttributedString *slideShowTitle; // @synthesize slideShowTitle=_slideShowTitle; +@property(retain) NSAttributedString *quickLookTitle; // @synthesize quickLookTitle=_quickLookTitle; + +@end + diff --git a/MailHeaders/Lion/Mail/_RSSConnection.h b/MailHeaders/Lion/Mail/_RSSConnection.h new file mode 100644 index 00000000..de451d79 --- /dev/null +++ b/MailHeaders/Lion/Mail/_RSSConnection.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSURLConnection.h" + +@class FeedTransporter; + +@interface _RSSConnection : NSURLConnection +{ + FeedTransporter *_feed; + BOOL _isFinished; + BOOL _isCancelled; +} + +- (id)initWithRequest:(id)arg1 delegate:(id)arg2 startImmediately:(BOOL)arg3; +- (void)dealloc; +@property BOOL isCancelled; // @synthesize isCancelled=_isCancelled; +@property BOOL isFinished; // @synthesize isFinished=_isFinished; +@property(retain) FeedTransporter *feed; // @synthesize feed=_feed; + +@end + diff --git a/MailHeaders/Lion/Mail/_RecentsSearchOperation.h b/MailHeaders/Lion/Mail/_RecentsSearchOperation.h new file mode 100644 index 00000000..c11f99a2 --- /dev/null +++ b/MailHeaders/Lion/Mail/_RecentsSearchOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSOperation.h" + +@class ABAddressBook, NSString; + +@interface _RecentsSearchOperation : NSOperation +{ + NSString *_searchString; + id _delegate; + ABAddressBook *_addressBook; +} + +- (id)initWithSearchString:(id)arg1 delegate:(id)arg2 addressBook:(id)arg3; +- (void)dealloc; +- (void)main; +- (id)addressBook; + +@end + diff --git a/MailHeaders/Lion/Mail/_ResizingTextAttachmentCell.h b/MailHeaders/Lion/Mail/_ResizingTextAttachmentCell.h new file mode 100644 index 00000000..c7960877 --- /dev/null +++ b/MailHeaders/Lion/Mail/_ResizingTextAttachmentCell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextAttachmentCell.h" + +@interface _ResizingTextAttachmentCell : NSTextAttachmentCell +{ + BOOL _stretchImageToFitCellFrame; +} + +- (void)setStretchImageToFitCellFrame:(BOOL)arg1; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Mail/_RoundedRectTextFieldCell.h b/MailHeaders/Lion/Mail/_RoundedRectTextFieldCell.h new file mode 100644 index 00000000..6ede0c75 --- /dev/null +++ b/MailHeaders/Lion/Mail/_RoundedRectTextFieldCell.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface _RoundedRectTextFieldCell : NSTextFieldCell +{ + long long _backgroundState; +} + +- (id)lightBackgroundColor; +- (id)normalBackgroundColor; +- (id)darkBackgroundColor; +- (id)selectionColor; +- (id)grayTextColor; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +@property(nonatomic) long long backgroundState; // @synthesize backgroundState=_backgroundState; + +@end + diff --git a/MailHeaders/Lion/Mail/_SaveAttachmentsButtonCell.h b/MailHeaders/Lion/Mail/_SaveAttachmentsButtonCell.h new file mode 100644 index 00000000..9267e9e8 --- /dev/null +++ b/MailHeaders/Lion/Mail/_SaveAttachmentsButtonCell.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSActionCell.h" + +@class NSMenu, NSTimer; + +@interface _SaveAttachmentsButtonCell : NSActionCell +{ + struct CGSize _labelSize; + NSMenu *_menu; + NSTimer *_menuTimer; + struct CGRect _trackingRect; + BOOL _sendSelectionAction; + BOOL _timerFired; +} + ++ (BOOL)prefersTrackingUntilMouseUp; +- (id)init; +- (void)invalidateMenuTimer; +- (void)dealloc; +- (id)menu; +- (struct CGSize)cellSizeForBounds:(struct CGRect)arg1; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (BOOL)startTrackingAt:(struct CGPoint)arg1 inView:(id)arg2; +- (BOOL)continueTracking:(struct CGPoint)arg1 at:(struct CGPoint)arg2 inView:(id)arg3; +- (void)stopTracking:(struct CGPoint)arg1 at:(struct CGPoint)arg2 inView:(id)arg3 mouseIsUp:(BOOL)arg4; +- (BOOL)_sendActionFrom:(id)arg1; +- (BOOL)trackMouse:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3 untilMouseUp:(BOOL)arg4; +- (void)trackMenu; +- (void)performClick:(id)arg1; +- (void)_displayMenu; +- (void)displayDelayedMenu; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityActionNames; +- (id)accessibilityActionDescription:(id)arg1; +- (void)accessibilityPerformAction:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_SenderImageCell.h b/MailHeaders/Lion/Mail/_SenderImageCell.h new file mode 100644 index 00000000..a780aaff --- /dev/null +++ b/MailHeaders/Lion/Mail/_SenderImageCell.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSImageCell.h" + +@class NSImage; + +@interface _SenderImageCell : NSImageCell +{ + NSImage *_senderPlaceholderImage; +} + +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (BOOL)accessibilityIsIgnored; +- (id)accessibilityHitTest:(struct CGPoint)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_SheetContext.h b/MailHeaders/Lion/Mail/_SheetContext.h new file mode 100644 index 00000000..74ce98c7 --- /dev/null +++ b/MailHeaders/Lion/Mail/_SheetContext.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSWindow; + +@interface _SheetContext : NSObject +{ + NSArray *_attachments; + NSArray *_messages; + id _delegate; + NSWindow *_window; + BOOL _needsSave; +} + +- (void)dealloc; +@property(nonatomic) BOOL needsSave; // @synthesize needsSave=_needsSave; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +@property(retain, nonatomic) id delegate; // @synthesize delegate=_delegate; +@property(retain, nonatomic) NSArray *messages; // @synthesize messages=_messages; +@property(retain, nonatomic) NSArray *attachments; // @synthesize attachments=_attachments; + +@end + diff --git a/MailHeaders/Lion/Mail/_ShowLinkView.h b/MailHeaders/Lion/Mail/_ShowLinkView.h new file mode 100644 index 00000000..8a34f6ea --- /dev/null +++ b/MailHeaders/Lion/Mail/_ShowLinkView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextView.h" + +@interface _ShowLinkView : NSTextView +{ +} + +- (void)mouseDown:(id)arg1; +- (void)resetCursorRects; + +@end + diff --git a/MailHeaders/Lion/Mail/_SidebarButtonCell.h b/MailHeaders/Lion/Mail/_SidebarButtonCell.h new file mode 100644 index 00000000..b0f6f85d --- /dev/null +++ b/MailHeaders/Lion/Mail/_SidebarButtonCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface _SidebarButtonCell : NSButtonCell +{ +} + +- (struct CGSize)cellSize; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_SlidingView.h b/MailHeaders/Lion/Mail/_SlidingView.h new file mode 100644 index 00000000..5331c14a --- /dev/null +++ b/MailHeaders/Lion/Mail/_SlidingView.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface _SlidingView : NSObject +{ + struct CGRect _startFrame; + struct CGRect _endFrame; + double _startTime; + double _duration; +} + +- (id)initWithStartFrame:(struct CGRect)arg1 endFrame:(struct CGRect)arg2 duration:(double)arg3; +- (struct CGRect)endFrame; +- (struct CGRect)frameForTime:(double)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_SortBarButtonCell.h b/MailHeaders/Lion/Mail/_SortBarButtonCell.h new file mode 100644 index 00000000..90c030d8 --- /dev/null +++ b/MailHeaders/Lion/Mail/_SortBarButtonCell.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@class NSMenu, NSPopUpButtonCell; + +@interface _SortBarButtonCell : NSButtonCell +{ + BOOL _showsSortDirection; + NSPopUpButtonCell *_popUpCell; + NSMenu *_popUpMenu; + BOOL _showingPopUpMenu; +} + +- (id)initWithCoder:(id)arg1; +- (id)initTextCell:(id)arg1; +- (id)initImageCell:(id)arg1; +- (void)_SortBarButtonCell_commonInit; +- (void)dealloc; +- (double)insetForHighlightX; +- (double)insetForHighlightY; +- (double)insetForMenuArrowImage; +- (double)textToImageSpace; +- (double)titleVerticalOffset; +- (double)titleHorizontalInset; +- (id)indicatorImage; +- (struct CGSize)cellSize; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (struct CGRect)imageRectForBounds:(struct CGRect)arg1; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)setShowsSortDirection:(BOOL)arg1; +- (struct CGRect)drawTitle:(id)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (void)showPopUpMenuForButton:(id)arg1; +- (void)runPopUpInView:(id)arg1; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityChildrenAttribute; +- (id)accessibilityActionNames; +- (void)accessibilityPerformAction:(id)arg1; +- (void)accessibilityPerformShowMenuAction; +@property(retain, nonatomic) NSMenu *popUpMenu; // @synthesize popUpMenu=_popUpMenu; + +@end + diff --git a/MailHeaders/Lion/Mail/_StationeryThumbnailCreator.h b/MailHeaders/Lion/Mail/_StationeryThumbnailCreator.h new file mode 100644 index 00000000..f8c32de0 --- /dev/null +++ b/MailHeaders/Lion/Mail/_StationeryThumbnailCreator.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class EditableWebMessageDocument, NSArray, NSBitmapImageRep, NSString, NSWindow, Stationery, WebView; + +@interface _StationeryThumbnailCreator : NSObject +{ + id _delegate; + NSArray *_stationeryPaths; + NSString *_categoryDisplayName; + long long _currentStationeryIndex; + Stationery *_currentStationery; + WebView *_webView; + NSWindow *_window; + EditableWebMessageDocument *_webMessageDocument; + NSBitmapImageRep *_snapshot; +} + +- (void)dealloc; +- (void)setDelegate:(id)arg1; +- (void)createThumbnailsForCustomStationeriesWithPaths:(id)arg1; +- (void)createWebView; +- (void)loadParsedMessage:(id)arg1; +- (void)moveOnToTheNextStationery; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)webViewProgressFinished:(id)arg1; +- (void)takeSnapshot; +- (void)scaleSnapshotAndSendToDelegate; + +@end + diff --git a/MailHeaders/Lion/Mail/_TextButtonCell.h b/MailHeaders/Lion/Mail/_TextButtonCell.h new file mode 100644 index 00000000..de4a11d8 --- /dev/null +++ b/MailHeaders/Lion/Mail/_TextButtonCell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface _TextButtonCell : NSButtonCell +{ + long long _buttonType; +} + +- (void)drawBezelWithFrame:(struct CGRect)arg1 inView:(id)arg2; +@property long long buttonType; // @synthesize buttonType=_buttonType; + +@end + diff --git a/MailHeaders/Lion/Mail/_ThreadAnimationOffscreenWindow.h b/MailHeaders/Lion/Mail/_ThreadAnimationOffscreenWindow.h new file mode 100644 index 00000000..4b40b205 --- /dev/null +++ b/MailHeaders/Lion/Mail/_ThreadAnimationOffscreenWindow.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface _ThreadAnimationOffscreenWindow : NSWindow +{ +} + +- (BOOL)canBecomeKeyWindow; + +@end + diff --git a/MailHeaders/Lion/Mail/_ThreadDisclosureTextFieldCell.h b/MailHeaders/Lion/Mail/_ThreadDisclosureTextFieldCell.h new file mode 100644 index 00000000..30c637eb --- /dev/null +++ b/MailHeaders/Lion/Mail/_ThreadDisclosureTextFieldCell.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface _ThreadDisclosureTextFieldCell : NSTextFieldCell +{ + BOOL _threadIsOpen; + BOOL _notReallyThread; +} + ++ (void)initialize; ++ (void)recacheStaticArrowImages; +- (id)darkBorderColor; +- (id)lightBorderColor; +- (id)selectionColor; +- (void)setThreadIsOpen:(BOOL)arg1; +- (void)setNotReallyThread:(BOOL)arg1; +- (struct CGRect)drawingRectForBounds:(struct CGRect)arg1; +- (struct CGSize)cellSize; +- (void)drawThreadControlWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)setBackgroundStyle:(long long)arg1; +- (unsigned long long)hitTestForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3; +- (id)accessibilityAttributeNames; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityRoleAttribute; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityActionNames; +- (id)accessibilityActionDescription:(id)arg1; +- (void)accessibilityPerformAction:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Mail/_TransferOperation.h b/MailHeaders/Lion/Mail/_TransferOperation.h new file mode 100644 index 00000000..9bc6d14a --- /dev/null +++ b/MailHeaders/Lion/Mail/_TransferOperation.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MailboxUid, MessageStore, NSArray, NSMutableArray; + +@interface _TransferOperation : NSObject +{ + MessageStore *_sourceStore; + MailboxUid *_destinationMailboxUid; + NSArray *_unreadSourceMessages; + NSArray *_destinationMessageIDs; + NSMutableArray *_sourceMessages; + NSMutableArray *_documentIDs; + BOOL _editableDocuments; +} + +- (void)dealloc; +- (id)initWithSourceStore:(id)arg1 destinationMailboxUid:(id)arg2 editableDocuments:(BOOL)arg3; +- (id)sourceLibraryStore; +@property(readonly, retain, nonatomic) NSArray *documentIDs; // @synthesize documentIDs=_documentIDs; +@property(retain, nonatomic) NSArray *sourceMessages; +- (void)addSourceMessage:(id)arg1; +- (void)removeSourceMessages:(id)arg1; +@property(readonly, nonatomic) BOOL editableDocuments; // @synthesize editableDocuments=_editableDocuments; +@property(retain) NSArray *destinationMessageIDs; // @synthesize destinationMessageIDs=_destinationMessageIDs; +@property(retain) NSArray *unreadSourceMessages; // @synthesize unreadSourceMessages=_unreadSourceMessages; +@property(readonly, retain, nonatomic) MailboxUid *destinationMailboxUid; // @synthesize destinationMailboxUid=_destinationMailboxUid; +@property(readonly, retain, nonatomic) MessageStore *sourceStore; // @synthesize sourceStore=_sourceStore; + +@end + diff --git a/MailHeaders/Lion/Mail/_VisibleStateObject.h b/MailHeaders/Lion/Mail/_VisibleStateObject.h new file mode 100644 index 00000000..f0ac462b --- /dev/null +++ b/MailHeaders/Lion/Mail/_VisibleStateObject.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSMutableDictionary, NSString; + +@interface _VisibleStateObject : NSObject +{ + BOOL _hadSelection; + BOOL _selectionWasVisible; + BOOL _scrollerWasAtEnd; + BOOL _forceSelToVisible; + NSString *_msgIDToPin; + double _msgUpperLeft; + NSMutableDictionary *_selectedMessageIDs; + NSArray *_openThreadIDs; +} + +- (void)dealloc; +@property(retain, nonatomic) NSArray *openThreadIDs; // @synthesize openThreadIDs=_openThreadIDs; +@property(retain, nonatomic) NSMutableDictionary *selectedMessageIDs; // @synthesize selectedMessageIDs=_selectedMessageIDs; +@property(nonatomic) double msgUpperLeft; // @synthesize msgUpperLeft=_msgUpperLeft; +@property(retain, nonatomic) NSString *msgIDToPin; // @synthesize msgIDToPin=_msgIDToPin; +@property(nonatomic) BOOL forceSelToVisible; // @synthesize forceSelToVisible=_forceSelToVisible; +@property(nonatomic) BOOL scrollerWasAtEnd; // @synthesize scrollerWasAtEnd=_scrollerWasAtEnd; +@property(nonatomic) BOOL selectionWasVisible; // @synthesize selectionWasVisible=_selectionWasVisible; +@property(nonatomic) BOOL hadSelection; // @synthesize hadSelection=_hadSelection; + +@end + diff --git a/MailHeaders/Lion/Message/ABAddressBook-MessageAdditions.h b/MailHeaders/Lion/Message/ABAddressBook-MessageAdditions.h new file mode 100644 index 00000000..a5271b3e --- /dev/null +++ b/MailHeaders/Lion/Message/ABAddressBook-MessageAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ABAddressBook.h" + +@interface ABAddressBook (MessageAdditions) ++ (BOOL)firstNameShouldBeFirst; ++ (BOOL)firstNameShouldBeFirstForRecord:(id)arg1; +- (id)recordsCompletingSearchString:(id)arg1 searchSubscribedContent:(BOOL)arg2; +- (id)recordsCompletingSearchString:(id)arg1; +- (id)bestRecordMatchingFormattedAddress:(id)arg1; +- (id)recordWithEmailAddress:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/ABGroup-MessageAdditions.h b/MailHeaders/Lion/Message/ABGroup-MessageAdditions.h new file mode 100644 index 00000000..825c6bb2 --- /dev/null +++ b/MailHeaders/Lion/Message/ABGroup-MessageAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ABGroup.h" + +@interface ABGroup (MessageAdditions) ++ (id)diacriticInsensitiveSearchElementForProperty:(id)arg1 label:(id)arg2 key:(id)arg3 value:(id)arg4 comparison:(long long)arg5; +- (BOOL)isGroup; +- (id)_fullName; +- (BOOL)hasEmailAddress:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/ABImageClient-Protocol.h b/MailHeaders/Lion/Message/ABImageClient-Protocol.h new file mode 100644 index 00000000..a084a4e7 --- /dev/null +++ b/MailHeaders/Lion/Message/ABImageClient-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol ABImageClient +- (void)consumeImageData:(id)arg1 forTag:(long long)arg2; +@end + diff --git a/MailHeaders/Lion/Message/ABLDAP_ResultElement-MessageAdditions.h b/MailHeaders/Lion/Message/ABLDAP_ResultElement-MessageAdditions.h new file mode 100644 index 00000000..c364af56 --- /dev/null +++ b/MailHeaders/Lion/Message/ABLDAP_ResultElement-MessageAdditions.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ABLDAP_ResultElement.h" + +@interface ABLDAP_ResultElement (MessageAdditions) +- (BOOL)isGroup; +- (int)recordType; +- (id)middleName; +- (id)nickname; +- (id)extension; +- (id)firstAndMiddleNames; +- (id)lastNameAndExtension; +- (id)compoundName; +- (id)_fullName; +- (id)compoundNameAndEmail; +- (BOOL)exactlyMatchesString:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/ABMailRecent-MessageAdditions.h b/MailHeaders/Lion/Message/ABMailRecent-MessageAdditions.h new file mode 100644 index 00000000..92d846a7 --- /dev/null +++ b/MailHeaders/Lion/Message/ABMailRecent-MessageAdditions.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ABMailRecent.h" + +@interface ABMailRecent (MessageAdditions) +- (id)middleName; +- (id)nickname; +- (id)extension; +- (id)mostRecentDate; +- (BOOL)hasRelatedAddressBookRecord; +- (BOOL)isGroup; +- (id)_fullName; +@end + diff --git a/MailHeaders/Lion/Message/ABPerson-MessageAdditions.h b/MailHeaders/Lion/Message/ABPerson-MessageAdditions.h new file mode 100644 index 00000000..8df5b722 --- /dev/null +++ b/MailHeaders/Lion/Message/ABPerson-MessageAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ABPerson.h" + +@interface ABPerson (MessageAdditions) ++ (id)diacriticInsensitiveSearchElementForProperty:(id)arg1 label:(id)arg2 key:(id)arg3 value:(id)arg4 comparison:(long long)arg5; +- (BOOL)hasEmailAddress:(id)arg1; +- (BOOL)isMe; +- (id)compoundNameAndEmailForGroupMembership:(id)arg1; +- (BOOL)isGroup; +@end + diff --git a/MailHeaders/Lion/Message/ABRecord-MessageAdditions.h b/MailHeaders/Lion/Message/ABRecord-MessageAdditions.h new file mode 100644 index 00000000..0d3183f9 --- /dev/null +++ b/MailHeaders/Lion/Message/ABRecord-MessageAdditions.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "ABRecord.h" + +@interface ABRecord (MessageAdditions) +- (id)firstName; +- (id)lastName; +- (id)middleName; +- (id)nickname; +- (id)extension; +- (id)_fullName; +- (long long)fullNameCompare:(id)arg1; +- (id)email; +- (id)allEmailAddresses; +- (id)compoundName; +- (id)compoundNameAndEmail; +- (id)compoundNameAndEmailForEmail:(id)arg1; +- (BOOL)isGroup; +@end + diff --git a/MailHeaders/Lion/Message/APOPAuthScheme.h b/MailHeaders/Lion/Message/APOPAuthScheme.h new file mode 100644 index 00000000..9340cc7d --- /dev/null +++ b/MailHeaders/Lion/Message/APOPAuthScheme.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface APOPAuthScheme : AuthScheme +{ +} + +- (long long)securityLevel; +- (id)name; +- (id)humanReadableName; +- (BOOL)canAuthenticateAccount:(id)arg1 connection:(id)arg2; +- (id)saslClientForAccount:(id)arg1 connection:(id)arg2; +- (unsigned int)applescriptScheme; + +@end + diff --git a/MailHeaders/Lion/Message/Account.h b/MailHeaders/Lion/Message/Account.h new file mode 100644 index 00000000..23fb30ed --- /dev/null +++ b/MailHeaders/Lion/Message/Account.h @@ -0,0 +1,142 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "SyncableDataOwner-Protocol.h" + +@class AuthScheme, NSDictionary, NSImage, NSMutableDictionary, NSString, NSURL; + +@interface Account : NSObject +{ + struct OpaqueSecIdentityRef *_tlsIdentity; + NSString *_brandName; + id _brandIcon; + NSURL *_supportURL; + NSString *_supportURLLabel; + unsigned int _isOffline:1; + unsigned int _willingToGoOnline:1; + unsigned int _autosynchronizingEnabled:1; + unsigned int _promptedToTrustSSLCertificates:1; + unsigned int _isActive:2; + NSMutableDictionary *_info; +} + ++ (void)initialize; ++ (Class)accountClassForTypeString:(id)arg1; ++ (id)typeStringForAccountClass:(Class)arg1; ++ (BOOL)haveAccountsBeenConfigured; ++ (id)v2AccountsPlistName; ++ (id)readAccountsUsingDefaultsKey:(id)arg1 forceReadFromMailPreferences:(BOOL)arg2; ++ (id)readAccountsUsingDefaultsKey:(id)arg1; ++ (BOOL)_syncableChangesForNewAccountDefaults:(id)arg1 oldDefaults:(id)arg2; ++ (void)saveAccounts:(id)arg1 usingDefaultsKey:(id)arg2; ++ (void)saveAccounts:(id)arg1 usingDefaultsKey:(id)arg2 forceWriteToMailPreferences:(BOOL)arg3; ++ (BOOL)_shouldAnnounceChangesFromAccountInfo:(id)arg1 toAccountInfo:(id)arg2; ++ (void)saveAccountInfoToDefaults; ++ (id)accountsVersion; ++ (id)newAccountWithDictionary:(id)arg1; ++ (id)accountTypeString; ++ (id)genericAccountLargeImage; ++ (BOOL)allObjectsInArrayAreOffline:(id)arg1; ++ (id)keyPathsForValuesAffectingOfflineDisplayName; ++ (BOOL)defaultsToSSL; ++ (id)keyPathsForValuesAffectingPreferredAuthScheme; +@property(readonly) NSString *iaServiceType; +- (id)initWithAccountInfo:(id)arg1; +- (id)init; +- (void)dealloc; +@property(copy) NSDictionary *accountInfo; +- (void)_setAccountInfo:(id)arg1; +- (id)info; +- (void)setInfo:(id)arg1; +- (void)_queueAccountInfoDidChange; +@property(readonly) NSMutableDictionary *defaultsDictionary; +- (void)updateFromSyncedDictionary:(id)arg1; +@property(readonly) BOOL isSyncable; +- (void)setAutosynchronizingEnabled:(BOOL)arg1; +@property BOOL isActive; +@property BOOL isInactivatedInsteadOfBeingDeleted; +@property(readonly) BOOL canGoOffline; +@property BOOL isOffline; +@property BOOL isWillingToGoOnline; +@property(retain) NSString *storedDisplayName; +@property(retain) NSString *displayName; +@property(readonly) NSString *offlineDisplayName; +@property(retain) NSString *username; +@property(retain) NSString *hostname; +- (id)_hostnameWithAccountInfoKey:(id)arg1; +- (void)_setHostname:(id)arg1 accountInfoKey:(id)arg2; +@property(copy) NSString *password; +- (id)permanentPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)sessionPassword; +- (void)setSessionPassword:(id)arg1; +- (id)promptUserForPasswordWithMessage:(id)arg1; +- (id)promptUserIfNeededForPasswordWithMessage:(id)arg1; +@property(readonly) NSString *applePersonID; +@property(readonly) NSString *appleAuthenticationToken; +- (struct OpaqueSecIdentityRef *)tlsIdentity; +- (void)setTlsIdentity:(struct OpaqueSecIdentityRef *)arg1; +@property unsigned int portNumber; +- (unsigned int)_portNumberWithAccountInfoKey:(id)arg1 sslAccountInfoKey:(id)arg2; +- (void)_setPortNumber:(unsigned int)arg1 accountInfoKey:(id)arg2 sslAccountInfoKey:(id)arg3; +@property(readonly) unsigned int defaultPortNumber; +@property(readonly) unsigned int defaultSecurePortNumber; +@property(readonly) unsigned int secondaryDefaultPortNumber; +@property(readonly) unsigned int tertiaryDefaultPortNumber; +@property(readonly) NSString *serviceName; +@property(readonly) NSString *secureServiceName; +- (void)releaseAllConnections; +- (void)validateConnections; +@property BOOL usesSSL; +- (BOOL)_usesSSLWithAccountInfoKey:(id)arg1; +- (void)_setUsesSSL:(BOOL)arg1 accountInfoKey:(id)arg2; +@property long long securityLayerType; +@property(retain) NSString *domain; +- (void)accountInfoDidChange; +@property(retain) AuthScheme *preferredAuthScheme; +@property(readonly) NSString *saslProfileName; +@property(readonly) Class connectionClass; +@property(readonly) BOOL requiresAuthentication; +- (id)newConnectedConnection; +- (id)authenticatedConnection; +- (BOOL)_shouldTryDirectSSLConnectionOnPort:(unsigned int)arg1; +- (BOOL)_shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1; +- (BOOL)_connectAndAuthenticate:(id)arg1; +@property(retain) NSString *ISPAccountID; +@property(readonly) NSString *uniqueId; +- (id)nameForMailboxUid:(id)arg1; +- (id)_ispDomain; +@property(readonly) NSURL *supportURL; +@property(readonly) NSString *supportURLLabel; +@property(readonly) NSURL *subscriptionURL; +@property(readonly) NSString *subscriptionURLLabel; +@property(readonly) NSString *accountTypeString; +- (id)brandName; +- (id)iaSettings; +@property(readonly) NSImage *brandIcon; +@property(nonatomic) BOOL promptToTrustSSLCertificates; +- (BOOL)dataWillBeSyncedVersion:(id *)arg1 data:(id *)arg2 type:(id)arg3; +- (BOOL)dataWasSyncedVersion:(id)arg1 newData:(id)arg2 acceptedChanges:(id)arg3; +- (void)updateAccountsFromPlist:(id)arg1 acceptedChanges:(id)arg2; +@property(readonly) BOOL isValid; +- (void)setAccountInfoObject:(id)arg1 forKey:(id)arg2; +- (void)removeAccountInfoObjectForKey:(id)arg1; +- (int)accountType; +- (void)setAccountPassword:(id)arg1; +- (id)accountPassword; +- (void)setServerName:(id)arg1; +- (id)serverName; +- (void)setLoginName:(id)arg1; +- (id)loginName; +- (void)setAccountName:(id)arg1; +- (id)accountName; +- (unsigned int)customAuthentication; +- (void)setCustomAuthentication:(unsigned int)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/AccountAutoconfigurator.h b/MailHeaders/Lion/Message/AccountAutoconfigurator.h new file mode 100644 index 00000000..6fc7cf45 --- /dev/null +++ b/MailHeaders/Lion/Message/AccountAutoconfigurator.h @@ -0,0 +1,51 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ActivityMonitor, NSArray, NSDictionary, NSError, NSString; + +@interface AccountAutoconfigurator : NSObject +{ + id _delegate; + ActivityMonitor *_autoconfigurationActivity; + long long _state; + NSString *_emailAddress; + NSString *_password; + NSString *_userName; + NSString *_domain; + NSDictionary *_receivingAccountInfo; + NSArray *_deliveryAccountInfos; + BOOL _authenticationFailed; + NSError *_authenticationError; + BOOL _shouldDoEWSAutodiscovery; +} + +- (id)init; +- (id)initWithEmailAddress:(id)arg1 userName:(id)arg2 password:(id)arg3 delegate:(id)arg4; +- (void)dealloc; +- (void)execute; +- (void)cancel; +@property(copy, nonatomic) NSString *userName; +- (void)_sendAutoconfiguratorDidChangeState:(id)arg1; +- (void)_sendAutoconfiguratorDidFail; +- (void)_sendAutoconfiguratorDidFinish; +- (void)_setState:(long long)arg1; +- (BOOL)_shouldCancel; +- (void)_autoconfigure; +@property BOOL shouldDoEWSAutodiscovery; // @synthesize shouldDoEWSAutodiscovery=_shouldDoEWSAutodiscovery; +@property(copy) NSError *authenticationError; // @synthesize authenticationError=_authenticationError; +@property(copy) NSArray *deliveryAccountInfos; // @synthesize deliveryAccountInfos=_deliveryAccountInfos; +@property(copy) NSDictionary *receivingAccountInfo; // @synthesize receivingAccountInfo=_receivingAccountInfo; +@property BOOL authenticationFailed; // @synthesize authenticationFailed=_authenticationFailed; +@property(copy, nonatomic) NSString *domain; // @synthesize domain=_domain; +@property(copy, nonatomic) NSString *password; // @synthesize password=_password; +@property(copy, nonatomic) NSString *emailAddress; // @synthesize emailAddress=_emailAddress; +@property(retain) ActivityMonitor *autoconfigurationActivity; // @synthesize autoconfigurationActivity=_autoconfigurationActivity; +@property id delegate; // @synthesize delegate=_delegate; + +@end + diff --git a/MailHeaders/Lion/Message/AccountSetupEnabler.h b/MailHeaders/Lion/Message/AccountSetupEnabler.h new file mode 100644 index 00000000..e967596c --- /dev/null +++ b/MailHeaders/Lion/Message/AccountSetupEnabler.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class Account; + +@interface AccountSetupEnabler : NSObject +{ + Account *_account; +} + ++ (id)enablerForAccount:(id)arg1; ++ (BOOL)_canHandleHostname:(id)arg1; +- (id)_initWithAccount:(id)arg1; +- (id)init; +- (void)dealloc; +- (void)synchronouslyEnable; + +@end + diff --git a/MailHeaders/Lion/Message/AccountSetupValidator.h b/MailHeaders/Lion/Message/AccountSetupValidator.h new file mode 100644 index 00000000..09680e53 --- /dev/null +++ b/MailHeaders/Lion/Message/AccountSetupValidator.h @@ -0,0 +1,50 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class Account, ActivityMonitor, AuthScheme, Connection, NSArray, NSString; + +@interface AccountSetupValidator : NSObject +{ + NSArray *_attempts; + Account *_account; + Connection *_connection; + AuthScheme *_preferredAuthScheme; + ActivityMonitor *_validationActivity; + NSString *_password; + BOOL _usedSSL; + BOOL _shouldContinueWithInsecurePassword; + id _delegate; +} + ++ (id)validatorWithAccount:(id)arg1 accountInfo:(id)arg2 delegate:(id)arg3; +- (id)_initWithAccount:(id)arg1 accountInfo:(id)arg2 delegate:(id)arg3; +- (id)init; +- (void)dealloc; +- (id)description; +- (void)continueWithInsecurePassword; +- (void)cancel; +- (void)_sendValidatorDidChangeState:(id)arg1; +- (void)_sendValidatorDidFail; +- (void)_sendValidatorDidFinish; +- (void)_updateState:(long long)arg1; +- (BOOL)_connectIfNeeded; +- (void)_disconnect; +- (BOOL)_attemptInitialConnection; +- (BOOL)_attemptAuthentication; +- (void)_validate; +@property BOOL usedSSL; // @synthesize usedSSL=_usedSSL; +@property(copy) NSString *password; // @synthesize password=_password; +@property id delegate; // @synthesize delegate=_delegate; +@property(retain) AuthScheme *preferredAuthScheme; // @synthesize preferredAuthScheme=_preferredAuthScheme; +@property(retain) ActivityMonitor *validationActivity; // @synthesize validationActivity=_validationActivity; +@property(retain) Connection *connection; // @synthesize connection=_connection; +@property(retain) Account *account; // @synthesize account=_account; +@property(retain) NSArray *attempts; // @synthesize attempts=_attempts; + +@end + diff --git a/MailHeaders/Lion/Message/AccountSetupValidatorAttempt.h b/MailHeaders/Lion/Message/AccountSetupValidatorAttempt.h new file mode 100644 index 00000000..f85ab07e --- /dev/null +++ b/MailHeaders/Lion/Message/AccountSetupValidatorAttempt.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface AccountSetupValidatorAttempt : NSObject +{ + unsigned int _portNumber; + long long _securityLayerType; + BOOL _usesSSL; +} + ++ (id)attemptsForAccount:(id)arg1 accountInfo:(id)arg2; +- (id)description; +@property long long securityLayerType; // @synthesize securityLayerType=_securityLayerType; +@property BOOL usesSSL; // @synthesize usesSSL=_usesSSL; +@property unsigned int portNumber; // @synthesize portNumber=_portNumber; + +@end + diff --git a/MailHeaders/Lion/Message/AccountStatus.h b/MailHeaders/Lion/Message/AccountStatus.h new file mode 100644 index 00000000..aa3c1679 --- /dev/null +++ b/MailHeaders/Lion/Message/AccountStatus.h @@ -0,0 +1,60 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMapTable, NSMutableArray, NSMutableDictionary, NSMutableSet, NSTimer; + +@interface AccountStatus : NSObject +{ + NSMutableDictionary *_states; + NSMutableDictionary *_stateDetails; + struct __CFNetDiagnostic *_netDiagnostics; + NSMapTable *_clients; + NSMutableSet *_allRegisteredAccounts; + unsigned long long _allRegisteredTypes; + NSMutableArray *_accountRefreshQueue; + NSTimer *_refreshTimer; + BOOL _isRefreshingInternet; +} + ++ (id)sharedStatus; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)invalidate; +- (void)registerAccountTypes:(unsigned long long)arg1 accounts:(id)arg2 forClient:(id)arg3; +- (void)registerAccountTypes:(unsigned long long)arg1 forClient:(id)arg2; +- (void)registerAccounts:(id)arg1 forClient:(id)arg2; +- (void)unregisterClient:(id)arg1; +- (id)registeredAccountsForClient:(id)arg1; +- (id)_registeredAccountsForClient:(id)arg1 onlyWithUnknownStatus:(BOOL)arg2; +- (id)_allRegisteredAccounts; +- (id)_accountsForTypes:(unsigned long long)arg1; +- (long long)internetStatus; +- (void)_setInternetStatus:(long long)arg1; +- (void)diagnoseInternetConnection; +- (long long)accountStatus:(id)arg1; +- (long long)knownAccountStatus:(id)arg1; +- (void)_setStatus:(long long)arg1 forAccount:(id)arg2; +- (id)accountStatusDetails:(id)arg1; +- (void)_setStatusDetails:(id)arg1 forAccount:(id)arg2; +- (void)_timedRefresh:(id)arg1; +- (void)_networkChanged:(id)arg1; +- (void)_accountInfoChanged:(id)arg1; +- (void)refreshAndClearStatus:(BOOL)arg1; +- (void)refreshStatusForClient:(id)arg1 forceRefresh:(BOOL)arg2; +- (void)_refreshAccounts:(id)arg1 andInternet:(BOOL)arg2 clearingStatus:(BOOL)arg3; +- (void)_refreshInternetStatus; +- (void)_refreshAccountStatus:(id)arg1; +- (void)_accountStatusUpdatedWithInfo:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/ActivityAggregate.h b/MailHeaders/Lion/Message/ActivityAggregate.h new file mode 100644 index 00000000..cb4dc81d --- /dev/null +++ b/MailHeaders/Lion/Message/ActivityAggregate.h @@ -0,0 +1,82 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArrayController, NSString; + +@interface ActivityAggregate : NSObject +{ + struct __CFArray *_rateArray; + NSArrayController *_monitorController; + double _rate; + double _progress; + BOOL _canCancel; + unsigned long long _itemsDone; + unsigned long long _itemsTotal; + double _unifiedDone; + unsigned long long _baseItemsDone; + unsigned long long _baseItemsTotal; + double _baseUnifiedDone; + NSString *_bkItemDescription; + NSString *_nameSingular; + NSString *_namePlural; + NSString *_status; + int _activityType; + BOOL _isResetting; + BOOL _isProgressing; + BOOL _bkIsProgressing; + double _startTime; + double _estimatedTimeRemaining; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; ++ (id)keyPathsForValuesAffectingFormattedRate; ++ (id)keyPathsForValuesAffectingIsProgressIndeterminate; +- (id)init; +- (void)dealloc; +@property(readonly) NSArrayController *monitorController; +@property(readonly) NSString *formattedRate; +- (unsigned long long)currentItem; +- (void)setItemsDone:(unsigned long long)arg1; +- (void)setItemsTotal:(unsigned long long)arg1; +- (void)setUnifiedDone:(double)arg1; +@property BOOL bkIsProgressing; // @synthesize bkIsProgressing=_bkIsProgressing; +- (void)setCanCancel:(BOOL)arg1; +- (void)setIsProgressing:(BOOL)arg1; +- (void)setProgress:(double)arg1; +- (void)setRate:(double)arg1; +- (void)setEstimatedTimeRemaining:(double)arg1; +@property(readonly) BOOL isProgressIndeterminate; +- (void)updateStatus; +- (void)reset; +- (void)addActivityMonitor:(id)arg1; +- (void)removeActivityMonitor:(id)arg1; +- (void)updateAggregateIsProgressing; +- (void)updateAggregateValues; +- (void)updateIsProgressing; +- (void)updateUnitBasedValues; +- (void)updateTimeBasedValues; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (id)description; +- (void)recordBytes:(unsigned long long)arg1; +- (void)signalCancel:(id)arg1; +@property int activityType; // @synthesize activityType=_activityType; +@property(readonly) double estimatedTimeRemaining; // @synthesize estimatedTimeRemaining=_estimatedTimeRemaining; +@property(copy) NSString *namePlural; // @synthesize namePlural=_namePlural; +@property(copy) NSString *nameSingular; // @synthesize nameSingular=_nameSingular; +@property(copy) NSString *status; // @synthesize status=_status; +@property(readonly) BOOL canCancel; // @synthesize canCancel=_canCancel; +@property(readonly) unsigned long long itemsTotal; // @synthesize itemsTotal=_itemsTotal; +@property(readonly) unsigned long long itemsDone; // @synthesize itemsDone=_itemsDone; +@property(readonly) double unifiedDone; // @synthesize unifiedDone=_unifiedDone; +@property(readonly) BOOL isProgressing; // @synthesize isProgressing=_isProgressing; +@property(readonly) double rate; // @synthesize rate=_rate; +@property(readonly) double progress; // @synthesize progress=_progress; +@property(copy) NSString *bkItemDescription; // @synthesize bkItemDescription=_bkItemDescription; + +@end + diff --git a/MailHeaders/Lion/Message/ActivityAggregator.h b/MailHeaders/Lion/Message/ActivityAggregator.h new file mode 100644 index 00000000..5dcab70f --- /dev/null +++ b/MailHeaders/Lion/Message/ActivityAggregator.h @@ -0,0 +1,51 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ActivityAggregate, NSTimer; + +@interface ActivityAggregator : NSObject +{ + NSTimer *_timer; + ActivityAggregate *_in; + ActivityAggregate *_out; + ActivityAggregate *_save; + unsigned long long _numTimeBasedValueObservers; + unsigned long long _numberOfInterestingAggregates; + double _timeBasedValueObserversLastNotifiedTime; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)in; +- (id)out; +- (id)save; +- (id)_timer; +- (void)_setTimer:(id)arg1; +- (void)_installTimer; +- (void)_uninstallTimer; +- (void)_updateTimeBasedValues; +- (void)_updateUnitBasedValues; +- (void)_uiTimerFired; +- (void)recordInBytes:(unsigned long long)arg1; +- (void)recordOutBytes:(unsigned long long)arg1; +- (void)recordSaveBytes:(unsigned long long)arg1; +- (void)activityMonitor:(id)arg1 didChangeTypeFrom:(int)arg2; +- (void)registerTimeBasedValueObserver:(id)arg1; +- (void)unregisterTimeBasedValueObserver:(id)arg1; +- (void)activityAggregateDidStart:(id)arg1; +- (void)activityAggregateDidEnd:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/ActivityMonitor.h b/MailHeaders/Lion/Message/ActivityMonitor.h new file mode 100644 index 00000000..2131f936 --- /dev/null +++ b/MailHeaders/Lion/Message/ActivityMonitor.h @@ -0,0 +1,124 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import + +@class MFError, NSInvocation, NSMachPort, NSMutableSet, NSString, SafeValueCache; + +@interface ActivityMonitor : NSObject +{ + NSString *_itemDescription; + NSString *_taskName; + NSString *_statusMessage; + NSString *_descriptionString; + NSMutableSet *_subMonitors; + NSInvocation *_cancelInvocation; + NSMachPort *_cancelPort; + SafeValueCache *_targetDisplayNameCache; + MFError *_error; + id _delegate; + id _target; + double _doneValue; + double _previousDoneness; + double _itemValue; + double _itemMinValue; + double _itemMaxValue; + double _startTime; + double _itemLastNotifiedTime; + double _percentDone; + long long _shouldUnifyDoneness; + long long _currentProgressStage; + long long _numberOfProgressStages; + long long _key; + unsigned long long _itemsDone; + unsigned long long _itemsTotal; + unsigned long long _itemFudgeFactor; + int _changeCount; + int _activityType; + unsigned char _priority; + BOOL _canCancel; + BOOL _shouldCancel; + BOOL _isActive; + BOOL _isProgressing; + BOOL _shouldPromptUserOnTermination; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; ++ (double)determinateProgress; ++ (void)setCurrentMonitor:(id)arg1; ++ (id)currentMonitorIfExists; ++ (id)currentMonitor; +- (id)init; +- (void)dealloc; +- (BOOL)isActive; +- (void)setDelegate:(id)arg1; +- (void)postActivityStarting; +- (void)handlePortMessage:(id)arg1; +- (void)postActivityFinished; +- (void)_didChange; +- (int)changeCount; +- (void)setStatusMessage:(id)arg1; +- (void)setStatusMessage:(id)arg1 percentDone:(double)arg2; +- (id)statusMessage; +- (void)setPercentDone:(double)arg1; +- (double)percentDone; +- (double)unifiedFractionDone; +- (void)beginProgressFor:(long long)arg1; +- (unsigned char)priority; +- (void)setPriority:(unsigned char)arg1; +- (id)activityDescription; +- (id)_updatedTargetDisplayName:(id)arg1; +- (id)taskDescriptionString; +- (id)description; +- (id)taskName; +- (void)setTaskName:(id)arg1; +- (void)setActivityTarget:(id)arg1; +- (id)activityTarget; +- (void)addActivityTarget:(id)arg1; +- (void)removeActivityTarget:(id)arg1; +- (void)setPrimaryTarget:(id)arg1; +- (id)activityTargets; +@property(nonatomic) BOOL canBeCancelled; +@property(nonatomic) BOOL shouldCancel; +- (void)addSubMonitor:(id)arg1; +- (void)removeSubMonitor:(id)arg1; +- (void)cancel; +- (long long)acquireExclusiveAccessKey; +- (void)relinquishExclusiveAccessKey:(long long)arg1; +- (void)setStatusMessage:(id)arg1 percentDone:(double)arg2 withKey:(long long)arg3; +- (void)setStatusMessage:(id)arg1 withKey:(long long)arg2; +- (void)setPercentDone:(double)arg1 withKey:(long long)arg2; +- (void)_setCancelPort:(id)arg1; +- (id)cancelPort; +- (void)updateDoneValue; +@property double doneValue; // @synthesize doneValue=_doneValue; +- (int)activityType; +- (void)setActivityType:(int)arg1; +- (void)setItemFudgeFactor:(unsigned long long)arg1; +@property BOOL isProgressing; // @synthesize isProgressing=_isProgressing; +@property double itemMaxValue; // @synthesize itemMaxValue=_itemMaxValue; +- (void)setItemIndeterminateValue; +- (void)setItem:(id)arg1; +- (void)resetItemValue; +@property double itemValue; // @synthesize itemValue=_itemValue; +@property unsigned long long itemsDone; // @synthesize itemsDone=_itemsDone; +@property unsigned long long itemsTotal; // @synthesize itemsTotal=_itemsTotal; +- (void)incrementItemValue:(double)arg1; +- (void)incrementItemsDone:(unsigned long long)arg1; +- (void)incrementItemsTotal:(unsigned long long)arg1; +- (void)markCompleted:(BOOL)arg1; +- (void)resetActivityType; +- (BOOL)shouldPromptUserOnTermination; +- (void)setShouldPromptUserOnTermination; +@property(retain) MFError *error; // @synthesize error=_error; +@property double itemMinValue; // @synthesize itemMinValue=_itemMinValue; +@property(copy) NSString *itemDescription; // @synthesize itemDescription=_itemDescription; +@property(retain) NSInvocation *cancelInvocation; // @synthesize cancelInvocation=_cancelInvocation; + +@end + diff --git a/MailHeaders/Lion/Message/AppleTokenAuthScheme.h b/MailHeaders/Lion/Message/AppleTokenAuthScheme.h new file mode 100644 index 00000000..c6cf42ff --- /dev/null +++ b/MailHeaders/Lion/Message/AppleTokenAuthScheme.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface AppleTokenAuthScheme : AuthScheme +{ +} + +- (id)name; +- (id)humanReadableName; +- (BOOL)requiresPassword; +- (long long)securityLevel; +- (BOOL)canAuthenticateAccount:(id)arg1 connection:(id)arg2; +- (unsigned int)applescriptScheme; + +@end + diff --git a/MailHeaders/Lion/Message/ArchiveFileWrapper.h b/MailHeaders/Lion/Message/ArchiveFileWrapper.h new file mode 100644 index 00000000..d9c21e57 --- /dev/null +++ b/MailHeaders/Lion/Message/ArchiveFileWrapper.h @@ -0,0 +1,44 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@class NSData, NSString; + +@interface ArchiveFileWrapper : NSFileWrapper +{ + NSData *_archiveData; + int _archiveType; + NSFileWrapper *_realFileWrapper; + NSString *_quarantinePath; +} + +- (void)dealloc; +- (id)initWithData:(id)arg1 archiveType:(int)arg2; +- (id)initRegularFileWithContents:(id)arg1; +- (id)initSymbolicLinkWithDestination:(id)arg1; +- (id)initWithPath:(id)arg1; +- (id)initWithSerializedRepresentation:(id)arg1; +- (BOOL)writeToFile:(id)arg1 atomically:(BOOL)arg2 updateFilenames:(BOOL)arg3; +- (id)expandQuarantined; +- (void)removeQuarantine; +- (unsigned long long)approximateSize; +- (BOOL)isRegularFile; +- (BOOL)isDirectory; +- (BOOL)isSymbolicLink; +- (id)serializedRepresentation; +- (id)addFileWrapper:(id)arg1; +- (void)removeFileWrapper:(id)arg1; +- (id)fileWrappers; +- (id)keyForFileWrapper:(id)arg1; +- (id)addFileWithPath:(id)arg1; +- (id)addRegularFileWithContents:(id)arg1 preferredFilename:(id)arg2; +- (id)addSymbolicLinkWithDestination:(id)arg1 preferredFilename:(id)arg2; +- (id)preferredFilename; +- (void)getCompressedData:(id *)arg1 archiveType:(int *)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/AuthScheme.h b/MailHeaders/Lion/Message/AuthScheme.h new file mode 100644 index 00000000..0c1e52ec --- /dev/null +++ b/MailHeaders/Lion/Message/AuthScheme.h @@ -0,0 +1,44 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface AuthScheme : NSObject +{ +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)_plainAuthScheme; ++ (id)_apopAuthScheme; ++ (id)_cramMd5AuthScheme; ++ (id)_ntlmAuthScheme; ++ (id)_appleTokenAuthScheme; ++ (id)_gssApiAuthScheme; ++ (id)_externalAuthScheme; ++ (id)knownSchemes; ++ (id)schemeWithName:(id)arg1; ++ (id)authSchemesForAccount:(id)arg1 connection:(id)arg2; ++ (id)schemeWithAccountInfo:(id)arg1; ++ (id)schemeWithApplescriptScheme:(unsigned int)arg1; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (BOOL)hasEncryption; +- (long long)securityLevel; +- (BOOL)canAuthenticateAccount:(id)arg1 connection:(id)arg2; +- (id)saslClientForAccount:(id)arg1 connection:(id)arg2; +- (BOOL)requiresPassword; +- (BOOL)requiresDomain; +- (id)name; +- (id)humanReadableName; +- (long long)compareBySecurityLevel:(id)arg1; +- (unsigned int)applescriptScheme; + +@end + diff --git a/MailHeaders/Lion/Message/AuthorTransporter.h b/MailHeaders/Lion/Message/AuthorTransporter.h new file mode 100644 index 00000000..f60b0bcc --- /dev/null +++ b/MailHeaders/Lion/Message/AuthorTransporter.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString; + +@interface AuthorTransporter : NSObject +{ + NSString *_name; + NSString *_email; +} + +- (id)initWithAuthor:(id)arg1; +- (void)dealloc; +@property(copy) NSString *email; // @synthesize email=_email; +@property(copy) NSString *name; // @synthesize name=_name; + +@end + diff --git a/MailHeaders/Lion/Message/BackupManager.h b/MailHeaders/Lion/Message/BackupManager.h new file mode 100644 index 00000000..74b0e268 --- /dev/null +++ b/MailHeaders/Lion/Message/BackupManager.h @@ -0,0 +1,68 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MailboxUid, NSArray, NSDictionary, NSMapTable, NSMutableDictionary, NSString; + +@interface BackupManager : NSObject +{ + MailboxUid *_topLevelRecoveryMailbox; + NSDictionary *_lastSavedTableOfContents; + NSMapTable *_mailboxBackupPaths; + NSMutableDictionary *_mailboxesWithKnownContents; + id _editableMessagesLock; + BOOL _registeredForEditableMessageNotifications; + NSArray *_messagePathsToRestore; + NSString *_mailboxPathToRestore; + NSString *_mailboxNameForRestoring; + id _timeMachineRestoreLock; +} + ++ (id)sharedManager; +- (id)init; +- (void)dealloc; +- (void)invalidateCaches; +- (void)editableMessagesWereAdded:(id)arg1; +- (void)editableMessagesWereDeleted:(id)arg1; +- (void)_setupDefaultTopLevelRecoveryMailbox; +- (void)performPendingRestore; +- (void)timeMachineRestoreFinished:(id)arg1; +- (BOOL)hasPendingRestoreIsMailbox:(char *)arg1; +- (id)mailboxNameToBeRestored; +- (long long)numberOfMessagesToBeRestored; +- (void)prepareToRestoreMessagesAtPaths:(id)arg1 intoMailboxNamed:(id)arg2; +- (id)restoreMessagesAtPaths:(id)arg1 intoMailboxNamed:(id)arg2; +- (id)restoreMessagesAtPaths:(id)arg1 intoMailboxNamed:(id)arg2 reuseMailbox:(BOOL)arg3 createdMailboxNamed:(id *)arg4 postNotification:(BOOL)arg5; +- (void)prepareToRestoreMailboxAtPath:(id)arg1 intoMailboxNamed:(id)arg2; +- (id)restoreMailboxAtPath:(id)arg1 intoMailboxNamed:(id)arg2 postNotification:(BOOL)arg3; +- (BOOL)restoreMailboxAtURL:(id)arg1 intoMailbox:(id)arg2; +- (BOOL)restoreMailboxesAtURL:(id)arg1 intoMailbox:(id)arg2 restoredMessages:(id)arg3; +- (BOOL)restoreMailboxAtPath:(id)arg1 intoArray:(id)arg2; +- (BOOL)_restoreMailboxesAtPath:(id)arg1 intoMailbox:(id)arg2 newMessages:(id)arg3; +- (BOOL)_restoreMailboxAtPath:(id)arg1 backedUpPath:(id *)arg2 intoMailbox:(id)arg3 newMessages:(id)arg4; +- (void)setTopLevelRecoveryMailbox:(id)arg1; +- (id)_topLevelRecoveryMailbox; +- (id)_recoveryMailboxWithSuggestedName:(id)arg1 reuseMailbox:(BOOL)arg2; +- (id)_reducedPathFromFullPath:(id)arg1 supportDirectory:(id)arg2; +- (id)_reducedPathFromFullPath:(id)arg1; +- (BOOL)shouldSaveMessagesForMailbox:(id)arg1; +- (BOOL)_shouldSaveDisplayNameForMailbox:(id)arg1; +- (id)_expandedMailboxes:(id)arg1; +- (id)_dictionaryForSection:(int)arg1; +- (id)_dictionaryForMailbox:(id)arg1 parent:(id)arg2 messagePool:(id)arg3; +- (id)_dictionaryForMessage:(id)arg1 includeRecipients:(BOOL)arg2; +- (int)_sectionForMailbox:(id)arg1; +- (void)_addMailbox:(id)arg1 toSection:(int)arg2 sections:(id)arg3 messagePool:(id)arg4; +- (id)tableOfContents; +- (BOOL)saveTableOfContents:(id)arg1; +- (id)backupPathForMailbox:(id)arg1; +- (id)_backupPathForMailbox:(id)arg1 withParentPath:(id)arg2 pathsCache:(id)arg3; +- (id)backupPathForMailbox:(id)arg1 pathsCache:(id)arg2; +- (id)backupMailboxesEnumerator; + +@end + diff --git a/MailHeaders/Lion/Message/BerkeleyMbox.h b/MailHeaders/Lion/Message/BerkeleyMbox.h new file mode 100644 index 00000000..6c456369 --- /dev/null +++ b/MailHeaders/Lion/Message/BerkeleyMbox.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSData, NSString; + +@interface BerkeleyMbox : MessageStore +{ + NSData *_mboxData; + NSString *_path; +} + ++ (BOOL)storeExistsForPath:(id)arg1; ++ (BOOL)storeAtPathIsWritable:(id)arg1; ++ (BOOL)createEmptyStoreForPath:(id)arg1; +- (id)initWithPath:(id)arg1 create:(BOOL)arg2 readOnly:(BOOL)arg3 account:(id)arg4; +- (id)init; +- (id)initWithMailboxUid:(id)arg1 readOnly:(BOOL)arg2; +- (void)dealloc; +- (void)writeUpdatedMessageDataToDisk; +- (id)path; +- (id)_lockFilePath; +- (id)_mboxData; +- (void)_resetAllMessages; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (void)doCompact; +- (id)_defaultRouterDestination; +- (void)fetchSynchronously; + +@end + diff --git a/MailHeaders/Lion/Message/BookmarksManager.h b/MailHeaders/Lion/Message/BookmarksManager.h new file mode 100644 index 00000000..c12664e3 --- /dev/null +++ b/MailHeaders/Lion/Message/BookmarksManager.h @@ -0,0 +1,51 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSManagedObjectContext; + +@interface BookmarksManager : NSObject +{ + NSManagedObjectContext *_managedObjectContext; +} + ++ (void)initialize; ++ (id)_sharedPersistentStoreCoordinator; ++ (id)_newManagedObjectModel; +- (id)init; +- (void)dealloc; +- (void)_configureTransientFeedContext; +- (void)addAllRSSFeedsIfNecessary; +- (id)subscribedFeeds; +- (unsigned long long)countOfSafariFeeds; +- (unsigned long long)countOfSubscribedFeeds; +- (void)saveTransientFeedChanges; +- (void)discardTransientFeedChanges; +- (BOOL)updateContextWithChanges:(id)arg1; +- (void)clearTransientFeedContext; +- (id)transientFeedContext; +- (void)_setContext:(id)arg1; +- (id)addBookmarkWithId:(id)arg1; +- (id)addFolderWithId:(id)arg1 checkIfExists:(BOOL)arg2; +- (id)bookmarkWithId:(id)arg1; +- (id)folderWithId:(id)arg1; +- (id)addBookmarkWithURL:(id)arg1; +- (id)addSubscribedBookmarkWithURL:(id)arg1 name:(id)arg2; +- (id)bookmarksWithURL:(id)arg1; +- (id)bookmarkURLWithName:(id)arg1; +- (id)_itemsWithValue:(id)arg1 forKey:(id)arg2 entity:(id)arg3; +- (BOOL)setBookmarksWithURL:(id)arg1 isSubscribed:(BOOL)arg2 shouldDisplayUnderInbox:(BOOL)arg3; +- (BOOL)deleteBookmarkWithId:(id)arg1; +- (BOOL)_deleteBookmark:(id)arg1; +- (BOOL)deleteFolderWithId:(id)arg1; +- (BOOL)_deleteFolder:(id)arg1; +- (void)deleteAllBookmarks; +- (void)deleteAllFolders; +- (id)_allItemsForEntity:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/ByteSet.h b/MailHeaders/Lion/Message/ByteSet.h new file mode 100644 index 00000000..d27a1d6d --- /dev/null +++ b/MailHeaders/Lion/Message/ByteSet.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface ByteSet : NSObject +{ + char _mySet[32]; +} + ++ (id)asciiWhitespaceSet; ++ (id)ASCIIByteSet; ++ (id)nonASCIIByteSet; ++ (id)suspiciousCodepage1252ByteSet; +- (BOOL)byteIsMember:(BOOL)arg1; +- (id)invertedSet; +- (id)initWithRange:(struct _NSRange)arg1; +- (id)initWithCString:(const char *)arg1; +- (id)initWithBytes:(const void *)arg1 length:(unsigned long long)arg2; +- (id)_initWithSet:(const char *)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)mutableCopyWithZone:(struct _NSZone *)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/CDStructures.h b/MailHeaders/Lion/Message/CDStructures.h new file mode 100644 index 00000000..9fe71543 --- /dev/null +++ b/MailHeaders/Lion/Message/CDStructures.h @@ -0,0 +1,248 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@class IMAPFetchResult, NSArray, NSColor, NSDictionary, NSIndexSet, NSSet, NSString; + +#pragma mark Named Structures + +//struct EnrichedState { +// unsigned int excerptLevel:8; +// unsigned int alignment:4; +// unsigned int bold:1; +// unsigned int italic:1; +// unsigned int fixed:1; +// unsigned int underline:1; +// unsigned int fontDelta:16; +// NSString *fontFamily; +// NSColor *color; +//}; + +struct __CFArray; + +struct __CFDictionary; + +struct internal_state; + +//struct sasl_callback { +// unsigned long long _field1; +// void *_field2; +// void *_field3; +//}; +// +//struct sasl_secret { +// unsigned long long _field1; +// unsigned char _field2[1]; +//}; + +struct z_stream_s { + char *next_in; + unsigned int avail_in; + unsigned long long total_in; + char *next_out; + unsigned int avail_out; + unsigned long long total_out; + char *msg; + struct internal_state *state; + void *zalloc; + void *zfree; + void *opaque; + int data_type; + unsigned long long adler; + unsigned long long reserved; +}; + +#if 0 +// Names with conflicting types: +typedef struct { + NSString *_field1; + unsigned long long _field2; + id _field3; + struct _CommandStackEntry *_field4; +} _CommandStackEntry_ce26798d; + +#endif + +#pragma mark Typedef'd Structures + +//typedef struct { +// id _field1; +// id _field2; +// char _field3; +// id _field4; +// id _field5; +// id _field6; +// id _field7; +// unsigned long long _field8; +// unsigned int _field9; +// char _field10; +//} CDStruct_9f3328ff; + +//typedef struct { +// id _field1; +// unsigned int :1; +// unsigned int :1; +// unsigned int :1; +// unsigned int :2; +//} CDStruct_3441fd00; + +typedef struct { + unsigned char _field1; + unsigned char _field2; + unsigned char _field3; + unsigned char _field4; + unsigned char _field5; + unsigned char _field6; + unsigned char _field7; + unsigned char _field8; + unsigned char _field9; + unsigned char _field10; + unsigned char _field11; + unsigned char _field12; + unsigned char _field13; + unsigned char _field14; + unsigned char _field15; + unsigned char _field16; +} CDStruct_bd2f613f; + +typedef struct { + unsigned int _field1; + unsigned int _field2; + void *_field3; + void *_field4; +} CDStruct_19b88e92; + +typedef struct { + unsigned long long _field1; + unsigned long long _field2; + char _field3; + char _field4; +} CDStruct_c53ccb4e; + +typedef struct { + unsigned long long first; + unsigned long long last; +} CDStruct_f792af56; + +typedef struct { + char *_field1; + long long _field2; + double _field3; +} CDStruct_21f7855f; + +#ifndef CDSTRUCT_329 +typedef struct { + unsigned int reserved:26; + unsigned int hasCustomEncoding:1; + unsigned int isPartial:1; + unsigned int partsHaveBeenCached:1; + unsigned int hasTemporaryUid:1; + unsigned int isHTML:1; + unsigned int isRich:1; +} CDStruct_3292de3e; +#define CDSTRUCT_329 1 +#endif + +typedef struct { + int version; + int count; + int timeStamp; + float tocHeight; + unsigned int sortOrder; + unsigned int sortedAscending; + int unused1; + int unused2; +} CDStruct_c4d47a41; + +/*typedef struct { + long long count; + unsigned long long size; +} CDStruct_d3e19d9e; +*/ +//typedef struct { +// id _field1; +// id _field2; +// struct __CFDictionary *_field3; +// struct __CFDictionary *_field4; +// unsigned long long _field5; +// unsigned long long _field6; +// long long _field7; +// id _field8; +//} CDStruct_591b809f; + +typedef struct { + unsigned short buffer[64]; + struct __CFString *theString; + unsigned short *directBuffer; + struct { + long long location; + long long length; + } rangeToBuffer; + long long bufferedRangeStart; + long long bufferedRangeEnd; +} CDStruct_7e4886f7; + +//typedef struct { +// int _field1; +// id _field2; +// id _field3; +// union { +// char _field1; +// CDStruct_21f7855f _field2; +// CDStruct_21f7855f _field3; +// struct { +// id _field1; +// } _field4; +// struct { +// struct __CFReadStream *_field1; +// struct __CFWriteStream *_field2; +// } _field5; +// } _field4; +//} CDStruct_1d72fa59; + +#pragma mark Named Unions + +//union _IMAPResponseData { +// struct { +// long long responseCode; +// id responseInfoAndOrUserData; +// } basic; +// NSArray *capabilities; +// unsigned long long number; +// NSSet *flags; +// struct { +// NSString *mailboxName; +// NSDictionary *entries; +// } status; +// NSArray *searchResults; +// struct { +// unsigned long long mailboxAttributes; +// id separatorAndOrMboxName; +// } list; +// struct { +// unsigned long long number; +// char isValid; +// NSArray *items; +// } fetch; +// struct { +// NSString *mailboxName; +// NSArray *quotaRootNames; +// } quotaRoot; +// struct { +// NSString *quotaRootName; +// NSArray *quotas; +// } quota; +// NSDictionary *serverID; +// struct { +// NSIndexSet *uids; +// IMAPFetchResult *flagsFetchResult; +// char change; +// } uidFlags; +// struct { +// NSString *name; +// NSArray *parameters; +// } other; +//}; + diff --git a/MailHeaders/Lion/Message/CRAM_MD5AuthScheme.h b/MailHeaders/Lion/Message/CRAM_MD5AuthScheme.h new file mode 100644 index 00000000..99d92946 --- /dev/null +++ b/MailHeaders/Lion/Message/CRAM_MD5AuthScheme.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface CRAM_MD5AuthScheme : AuthScheme +{ +} + +- (id)name; +- (id)humanReadableName; +- (long long)securityLevel; +- (unsigned int)applescriptScheme; + +@end + diff --git a/MailHeaders/Lion/Message/CachingABRecord.h b/MailHeaders/Lion/Message/CachingABRecord.h new file mode 100644 index 00000000..5b39df34 --- /dev/null +++ b/MailHeaders/Lion/Message/CachingABRecord.h @@ -0,0 +1,59 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ABRecord, NSDictionary, NSMutableArray, PHXSource; + +@interface CachingABRecord : NSObject +{ + ABRecord *_record; + NSDictionary *_recordDictionary; + BOOL _recordIsRemote; + PHXSource *_recordSource; + NSMutableArray *_matchingEmails; + CachingABRecord *_associatedRecord; +} + +- (id)initWithABRecord:(id)arg1; +- (id)initWithABRecord:(id)arg1 fromSource:(id)arg2 isRemote:(BOOL)arg3; +- (void)dealloc; +- (void)finalize; +- (void)refetchRecordFromSharedAddressBook; +- (id)valueForProperty:(id)arg1; +- (BOOL)setValue:(id)arg1 forProperty:(id)arg2; +- (id)firstName; +- (id)lastName; +- (id)middleName; +- (id)nickname; +- (id)extension; +- (id)firstAndMiddleNames; +- (id)lastNameAndExtension; +- (id)_fullName; +- (id)_fullNameShowingNickname:(BOOL)arg1; +- (id)email; +- (id)emailAddresses; +- (BOOL)isGroup; +- (id)compoundName; +- (id)compoundNameAndEmail; +- (id)uniqueId; +- (int)recordType; +- (BOOL)exactlyMatchesString:(id)arg1; +- (id)associatedRecord; +- (BOOL)isRecentRecord; +- (BOOL)hasHandles; +- (BOOL)hasEmailAddress:(id)arg1; +- (BOOL)hasRelatedAddressBookRecord; +- (id)mostRecentDate; +- (id)record; +- (id)matchingEmails; +- (void)addMatchingEmail:(id)arg1; +- (BOOL)isEqual:(id)arg1; +- (id)methodSignatureForSelector:(SEL)arg1; +- (void)forwardInvocation:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/ChangeMerger.h b/MailHeaders/Lion/Message/ChangeMerger.h new file mode 100644 index 00000000..0db60b19 --- /dev/null +++ b/MailHeaders/Lion/Message/ChangeMerger.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableDictionary; + +@interface ChangeMerger : NSObject +{ + NSMutableDictionary *_adds; + NSMutableDictionary *_updates; + NSMutableDictionary *_deletes; +} + +- (void)add:(id)arg1; +- (void)update:(id)arg1; +- (void)delete:(id)arg1; +- (id)addedObjects; +- (id)updatedObjects; +- (id)deletedObjects; +- (void)changesSaved; + +@end + diff --git a/MailHeaders/Lion/Message/Connection.h b/MailHeaders/Lion/Message/Connection.h new file mode 100644 index 00000000..80bf47ba --- /dev/null +++ b/MailHeaders/Lion/Message/Connection.h @@ -0,0 +1,83 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class AuthScheme, NSData, NSString, SASLClient, _NSSocket; + +@interface Connection : NSObject +{ + double _connectTimeout; + double _readWriteTimeout; + _NSSocket *_socket; + char *_buffer; + long long _bufferRemainingBytes; + unsigned long long _bufferStart; + unsigned long long _bufferLength; + NSData *_logData; + Class _accountClass; + NSString *_username; + NSString *_password; + AuthScheme *_authScheme; + SASLClient *_saslClient; + NSString *_hostname; + struct OpaqueSecIdentityRef *_clientIdentity; + long long _securityLayerType; + unsigned int _portNumber; + BOOL _canReauthenticate; +} + ++ (void)initialize; ++ (void)logBytes:(const char *)arg1 length:(unsigned long long)arg2; ++ (void)flushLog; ++ (id)logClasses; ++ (void)setLogClasses:(id)arg1; ++ (BOOL)logAllSocketActivity; ++ (void)setLogAllSocketActivity:(BOOL)arg1; ++ (id)logActivityOnPorts; ++ (void)setLogActivityOnPorts:(id)arg1; ++ (id)logActivityOnHosts; ++ (void)setLogActivityOnHosts:(id)arg1; +- (void)dealloc; +- (void)finalize; +- (void)_resetLogHeader; +- (void)_setupSSLDomainError:(id)arg1 hostname:(id)arg2 socket:(id)arg3; +- (void)_setupConnectionErrorMessageForMonitor:(id)arg1 withHostname:(id)arg2 port:(unsigned int)arg3 usingSSL:(BOOL)arg4; +- (BOOL)connectAndSetSecurityLayerUsingAccount:(id)arg1; +- (BOOL)connectUsingAccount:(id)arg1; +- (BOOL)reconnect; +- (BOOL)_connectUsingAccount:(id)arg1 securityLayerType:(long long)arg2; +- (BOOL)_connectUsingHostname:(id)arg1 onPort:(unsigned int)arg2 securityLayerType:(long long)arg3 clientIdentity:(struct OpaqueSecIdentityRef *)arg4 accountClass:(Class)arg5; +- (void)_clearSuccessfulConnection; +- (void)_setSuccessfulConnectionHostname:(id)arg1 onPort:(unsigned int)arg2 securityLayerType:(long long)arg3 clientIdentity:(struct OpaqueSecIdentityRef *)arg4 accountClass:(Class)arg5; +- (void)_setupConnection; +- (BOOL)_teardownConnectionWithResult:(BOOL)arg1; +- (BOOL)authenticateUsingAccount:(id)arg1; +- (BOOL)_reauthenticate; +- (void)_clearSuccessfulAuthentication; +- (void)_setSuccessfulAuthenticationUsername:(id)arg1 password:(id)arg2 authScheme:(id)arg3 saslClient:(id)arg4; +- (unsigned int)cipherKeyLength; +- (id)capabilities; +- (id)authenticationMechanisms; +- (BOOL)_writeData:(id)arg1 dontLogBytesInRange:(struct _NSRange)arg2 error:(id *)arg3; +- (BOOL)_writeData:(id)arg1 error:(id *)arg2; +- (long long)_readBytesFromSocketIntoBuffer:(char *)arg1 amount:(long long)arg2 requireAllBytes:(BOOL)arg3 error:(id *)arg4; +- (BOOL)_fillBuffer:(id *)arg1; +- (BOOL)_readLineIntoData:(id)arg1 error:(id *)arg2; +- (BOOL)_readBytesIntoData:(id)arg1 desiredLength:(unsigned long long)arg2 error:(id *)arg3; +- (BOOL)_authenticateUsingAccount:(id)arg1 authenticator:(id)arg2; +- (BOOL)_startTLSForHostname:(id)arg1 onPort:(unsigned int)arg2 securityLayerType:(long long)arg3 accountClass:(Class)arg4; +- (long long)_startTLSForSecurityLayerType:(long long)arg1; +- (BOOL)isValid; +- (void)disconnect; +- (void *)_socket; +- (BOOL)_hasBytesAvailable; +@property(copy, nonatomic) NSString *hostname; // @synthesize hostname=_hostname; +@property double readWriteTimeout; // @synthesize readWriteTimeout=_readWriteTimeout; +@property double connectTimeout; // @synthesize connectTimeout=_connectTimeout; + +@end + diff --git a/MailHeaders/Lion/Message/ConnectionEnumerator.h b/MailHeaders/Lion/Message/ConnectionEnumerator.h new file mode 100644 index 00000000..d7bb6ce1 --- /dev/null +++ b/MailHeaders/Lion/Message/ConnectionEnumerator.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@class NSArray, NSDictionary; + +@interface ConnectionEnumerator : NSEnumerator +{ + NSDictionary *_connectionsByMailboxName; + NSArray *_allMailboxNames; + id _lastObjectKey; + unsigned long long _allMailboxNamesCount; + unsigned long long _positionInMailboxNames; + NSEnumerator *_nullEnumerator; +} + +- (void)dealloc; +- (id)initWithConnectionDictionary:(id)arg1; +- (id)init; +- (id)nextObject; +- (id)lastObjectKey; + +@end + diff --git a/MailHeaders/Lion/Message/Criterion.h b/MailHeaders/Lion/Message/Criterion.h new file mode 100644 index 00000000..22d8553f --- /dev/null +++ b/MailHeaders/Lion/Message/Criterion.h @@ -0,0 +1,79 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + +#import "CDStructures.h" + +@class NSArray, NSString; + +@interface Criterion : NSObject +{ + NSString *_uniqueId; + NSString *_name; + NSString *_expression; + NSString *_criterionIdentifier; + int _criterionType; + int _qualifier; + int _dateUnits; + BOOL _dateIsRelative; + NSArray *_criteria; + BOOL _allCriteriaMustBeSatisfied; + unsigned long long _knownLimit; + NSString *_cachedAccountURLForSyncConflictResolution; + int _specialMailboxUidType; +} + ++ (id)criteriaFromDefaultsArray:(id)arg1; ++ (id)criteriaFromDefaultsArray:(id)arg1 removingRecognizedKeys:(BOOL)arg2; ++ (id)defaultsArrayFromCriteria:(id)arg1; ++ (id)compoundCriterionWithCriteria:(id)arg1; ++ (int)criterionTypeForString:(id)arg1; ++ (id)stringForCriterionType:(int)arg1; +- (id)compoundCriterionBySplittingExpression; +- (void)dealloc; +- (id)initWithDictionary:(id)arg1 andRemoveRecognizedKeysIfMutable:(BOOL)arg2; +- (id)init; +- (id)initWithCriterion:(id)arg1 expression:(id)arg2; +- (id)initWithDictionary:(id)arg1; +- (id)dictionaryRepresentation; +@property int criterionType; // @synthesize criterionType=_criterionType; +- (BOOL)hasExpression; +@property(copy) NSString *criterionIdentifier; // @synthesize criterionIdentifier=_criterionIdentifier; +- (void)_setCriterionIdentifier:(id)arg1; +- (id)_qualifierString; +- (BOOL)containsBodyCriterion; +- (int)ruleQualifierForString:(id)arg1; +- (id)stringForRuleQualifier:(int)arg1; +- (id)simplifyOnce; +- (id)simplifiedCriterion; +@property(copy) NSArray *criteria; // @synthesize criteria=_criteria; +- (id)descriptionWithDepth:(unsigned long long)arg1; +- (id)description; +- (BOOL)isValid:(id *)arg1 options:(unsigned int)arg2; +- (long long)version; +@property unsigned long long knownLimit; // @synthesize knownLimit=_knownLimit; +@property int specialMailboxUidType; // @synthesize specialMailboxUidType=_specialMailboxUidType; +@property BOOL allCriteriaMustBeSatisfied; // @synthesize allCriteriaMustBeSatisfied=_allCriteriaMustBeSatisfied; +@property BOOL dateIsRelative; // @synthesize dateIsRelative=_dateIsRelative; +@property int dateUnits; // @synthesize dateUnits=_dateUnits; +@property int qualifier; // @synthesize qualifier=_qualifier; +@property(copy) NSString *expression; // @synthesize expression=_expression; +@property(copy) NSString *name; // @synthesize name=_name; +- (id)criterionForSQLWithExpandedSmartMailboxes:(id)arg1; +- (id)fixOnceWithExpandedSmartMailboxes:(id)arg1; +- (id)criterionByMergingBodyCriteria; +- (BOOL)hasNumberCriterion; +- (id)SQLExpressionWithContext:(CDStruct_c53ccb4e *)arg1 depth:(unsigned long long)arg2 enclosingSmartMailboxes:(id)arg3; +- (BOOL)isExpressibleInTigerSchema; +- (id)criterionExpressionForEqualRelativeDates:(CDStruct_c53ccb4e *)arg1 depth:(unsigned long long)arg2 enclosingSmartMailboxes:(id)arg3; +- (id)criterionValueForNotEqualRelativeDates:(int *)arg1; +- (id)criterionForSQL; +- (id)SQLExpressionWithTables:(unsigned long long *)arg1 baseTable:(unsigned long long)arg2; +- (unsigned long long)bestBaseTable; +- (id)targetSmartMailbox; + +@end + diff --git a/MailHeaders/Lion/Message/DOMDocument-JunkAdditions.h b/MailHeaders/Lion/Message/DOMDocument-JunkAdditions.h new file mode 100644 index 00000000..7bdaf6a9 --- /dev/null +++ b/MailHeaders/Lion/Message/DOMDocument-JunkAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "DOMDocument.h" + +@interface DOMDocument (JunkAdditions) +- (id)junkStringNonWhiteSpaceCount:(long long *)arg1 URLs:(id)arg2 imageURLs:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Message/DataScanner.h b/MailHeaders/Lion/Message/DataScanner.h new file mode 100644 index 00000000..14dba7ad --- /dev/null +++ b/MailHeaders/Lion/Message/DataScanner.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSData; + +@interface DataScanner : NSObject +{ + NSData *_myData; + unsigned long long _myLocation; +} + ++ (id)scannerWithData:(id)arg1; +- (id)initWithData:(id)arg1; +- (void)dealloc; +- (id)data; +- (unsigned long long)scanLocation; +- (void)setScanLocation:(unsigned long long)arg1; +- (BOOL)isAtEnd; +- (BOOL)scanByte:(char *)arg1; +- (BOOL)scanInteger:(long long *)arg1; +- (BOOL)scanData:(id)arg1 intoData:(id *)arg2; +- (BOOL)scanCString:(const char *)arg1 intoData:(id *)arg2; +- (BOOL)_scanBytes:(const void *)arg1 length:(unsigned long long)arg2 intoData:(id *)arg3; +- (BOOL)scanBytesFromSet:(id)arg1 intoData:(id *)arg2; +- (BOOL)scanUpToData:(id)arg1 intoData:(id *)arg2; +- (BOOL)scanUpToCString:(const char *)arg1 intoData:(id *)arg2; +- (BOOL)_scanUpToBytes:(const void *)arg1 length:(unsigned long long)arg2 intoData:(id *)arg3; +- (BOOL)scanUpToBytesFromSet:(id)arg1 intoData:(id *)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/DatabaseRecoverer.h b/MailHeaders/Lion/Message/DatabaseRecoverer.h new file mode 100644 index 00000000..a3af68af --- /dev/null +++ b/MailHeaders/Lion/Message/DatabaseRecoverer.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSCondition, NSString; + +@interface DatabaseRecoverer : NSObject +{ + NSString *_path; + long long _type; + NSCondition *_analysisCondition; + long long _analysisResult; +} + ++ (id)moveDatabaseToUniquePath:(id)arg1; ++ (void)moveDatabaseFromPath:(id)arg1 toPath:(id)arg2; +- (id)initWithPath:(id)arg1 type:(long long)arg2; +- (id)init; +- (void)dealloc; +- (void)_analyzeBusyCondition; +- (void)analyzeBusyCondition; +- (BOOL)fileLocked; +- (BOOL)aRemoteApplicationIsAccessingTheDatabase; +- (BOOL)lockFileFound; +- (void)removeLockFile; +- (void)recover; +- (void)_removeLocks; +- (id)_moveToUniquePath; +- (void)_moveToOriginalPath:(id)arg1; +@property long long analysisResult; // @synthesize analysisResult=_analysisResult; +@property(retain) NSCondition *analysisCondition; // @synthesize analysisCondition=_analysisCondition; +@property long long type; // @synthesize type=_type; +@property(retain) NSString *path; // @synthesize path=_path; + +@end + diff --git a/MailHeaders/Lion/Message/Defaults.h b/MailHeaders/Lion/Message/Defaults.h new file mode 100644 index 00000000..3825c0a2 --- /dev/null +++ b/MailHeaders/Lion/Message/Defaults.h @@ -0,0 +1,73 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface Defaults : NSObject +{ +} + ++ (void)initialize; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; ++ (void)setupLoggingDefaults; ++ (id)logMessages; ++ (id)localeCache; ++ (void)resetLocaleCache; ++ (void)setPreferredWindowBackingLocation:(unsigned long long)arg1; ++ (unsigned long long)preferredWindowBackingLocation; ++ (unsigned long long)deferredPreferredWindowBackingLocation; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (long long)headerDetailLevel; +- (void)setHeaderDetailLevel:(long long)arg1; +- (id)headersToDisplayFromHeaderKeys:(id)arg1 headerDetailLevel:(long long)arg2; +- (id)customDisplayedHeaders; +- (void)setCustomDisplayedHeaders:(id)arg1; +- (long long)composeMode; +- (void)setComposeMode:(long long)arg1; +- (BOOL)_calculateShouldUseV1Layout; +- (void)mf_resetV1Layout; +- (BOOL)mf_v1Layout; +- (id)mailAccountDirectory; +- (id)tildeUnresolvedBaseMailDirectory; +- (id)unresolvedBaseMailDirectory; +- (id)baseMailDirectory; +- (void)_setSupportDirectoryForTesting:(id)arg1; +- (id)supportDirectory; +- (id)mailDataSupportDirectory; +- (id)mailDataDirectory; +- (id)mailDataDirectoryName; +- (id)defaultMailDirectory; +- (id)defaultRSSDirectory; +- (id)_adjustPathForV2:(id)arg1 usingPrefix:(id)arg2; +- (id)adjustAccountPathForV2:(id)arg1; +- (id)archiveMailbox; +- (id)draftsMailbox; +- (id)notesMailbox; +- (id)trashMailboxName; +- (id)todosMailbox; +- (id)quotingColorList; +- (void)setQuotingColorList:(id)arg1; +- (id)colorForQuoteLevel:(long long)arg1; +- (id)userStyleSheetURLIsForCompose:(BOOL)arg1; +- (id)unrenderedUserStyleSheet; +- (id)dictionaryForKey:(id)arg1; +- (id)stringForKey:(id)arg1; +- (void)removeObjectForKey:(id)arg1; +- (void)setObject:(id)arg1 forKey:(id)arg2; +- (id)objectForKey:(id)arg1; +- (void)setBool:(BOOL)arg1 forKey:(id)arg2; +- (BOOL)boolForKey:(id)arg1; +- (long long)integerForKey:(id)arg1; +- (BOOL)synchronize; + +@end + diff --git a/MailHeaders/Lion/Message/DeliveryAccount.h b/MailHeaders/Lion/Message/DeliveryAccount.h new file mode 100644 index 00000000..e2c56ce1 --- /dev/null +++ b/MailHeaders/Lion/Message/DeliveryAccount.h @@ -0,0 +1,55 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface DeliveryAccount : Account +{ +} + ++ (void)initialize; ++ (void)reloadDeliveryAccounts; ++ (id)_deliveryAccountsIncludingUnknownTypes; ++ (id)deliveryAccounts; ++ (id)syncableDeliveryAccounts; ++ (void)setDeliveryAccounts:(id)arg1; ++ (void)addDeliveryAccount:(id)arg1; ++ (void)addDeliveryAccountToMail:(id)arg1; ++ (void)insertObjectInDeliveryAccounts:(id)arg1 atIndex:(unsigned long long)arg2; ++ (void)sortDeliveryAccountsByUniqueID:(id)arg1; ++ (void)removeDeliveryAccount:(id)arg1; ++ (void)registerDynamicAccount:(id)arg1; ++ (void)unregisterDynamicAccount:(id)arg1; ++ (void)clearIsSyncableForHTTPMailAccounts; ++ (void)_postDeliveryAccountsHaveChanged; ++ (void)saveAccountInfoToDefaults; ++ (id)_identifierWithHostname:(id)arg1 username:(id)arg2; ++ (id)accountWithUniqueId:(id)arg1; ++ (id)accountWithIdentifier:(id)arg1; ++ (id)accountFromMailWithIdentifier:(id)arg1; ++ (id)_accountFromCollection:(id)arg1 withIdentifier:(id)arg2; ++ (id)accountWithDomain:(id)arg1; ++ (id)accountWithWhichToSendMessage:(id)arg1; ++ (id)accountForHeaders:(id)arg1 message:(id)arg2; ++ (id)existingAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)existingAccountFromMailWithHostname:(id)arg1 username:(id)arg2; ++ (id)accountWithHostname:(id)arg1 username:(id)arg2; ++ (id)accountWithHostname:(id)arg1 username:(id)arg2 lookForExistingAccounts:(BOOL)arg3 addToDeliveryAccountsIfNeeded:(BOOL)arg4; +- (Class)deliveryClass; +- (BOOL)isDynamic; +- (id)associatedAccount; +- (void)setAssociatedAccount:(id)arg1; +- (id)displayName; +- (id)identifier; +- (void)updateFromSyncedDictionary:(id)arg1; +- (BOOL)shouldUseAuthentication; +- (void)setShouldUseAuthentication:(BOOL)arg1; +- (unsigned long long)maximumMessageBytes; +- (void)setMaximumMessageBytes:(unsigned long long)arg1; +- (id)remoteMailAccountsEmployedBy; + +@end + diff --git a/MailHeaders/Lion/Message/EWSAccount.h b/MailHeaders/Lion/Message/EWSAccount.h new file mode 100644 index 00000000..a369e72b --- /dev/null +++ b/MailHeaders/Lion/Message/EWSAccount.h @@ -0,0 +1,165 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSConnection, EWSDeliveryAccount, EWSGateway, InvocationQueue, MFUUID, NSDictionary, NSMutableDictionary, NSOperationQueue, NSString, NSURL; + +@interface EWSAccount : RemoteStoreAccount +{ + double _lastFullFetchDuration; + double _lastFullFetchTime; + EWSConnection *_connection; + EWSGateway *_gateway; + EWSDeliveryAccount *_ewsDeliveryAccount; + NSMutableDictionary *_folderIdsToMailboxUids; + NSDictionary *_distinguishedFolderIdsAndMailboxUidTypes; + NSString *_syncIssuesEntryID; + InvocationQueue *_networkChangeQueue; + id _connectionLock; + id _folderHierarchySyncLock; + MFUUID *_messageTracerUUID; + NSOperationQueue *_ewsQueue; + long long _externalAudienceType; + BOOL _useExternalURL; +} + ++ (id)accountTypeString; ++ (id)defaultPathNameForAccount; ++ (id)keyPathsForValuesAffecting_URLInternalConnectionScheme; ++ (id)keyPathsForValuesAffecting_URLExternalConnectionScheme; ++ (id)keyPathsForValuesAffectingInternalConnectionURL; ++ (id)keyPathsForValuesAffectingExternalConnectionURL; ++ (id)_iCalAccountForHostname:(id)arg1 username:(id)arg2; ++ (BOOL)iCalAccountExistsForHostname:(id)arg1 username:(id)arg2; ++ (BOOL)iCalAccountExistsWithRootFolderId:(id)arg1; ++ (id)_iCalAccountWithRootFolderId:(id)arg1; ++ (id)_addressBookAccountForHostname:(id)arg1 username:(id)arg2; ++ (BOOL)addressBookAccountExistsForHostname:(id)arg1 username:(id)arg2; ++ (BOOL)addressBookAccountExistsWithRootFolderId:(id)arg1; ++ (id)_addressBookAccountWithRootFolderId:(id)arg1; ++ (id)existingAccountFromMailWithRootFolderId:(id)arg1; ++ (BOOL)setInternalURL:(id)arg1 externalURL:(id)arg2 forAccountWithRootFolderId:(id)arg3; ++ (void)resetAllFolderHierarchySyncStates; +- (id)initWithAccountInfo:(id)arg1; +- (void)dealloc; +- (id)iaServiceType; +- (Class)connectionClass; +- (unsigned int)defaultPortNumber; +- (unsigned int)defaultSecurePortNumber; +- (BOOL)requiresAuthentication; +- (long long)securityLayerType; +- (void)setSecurityLayerType:(long long)arg1; +- (id)domain; +- (void)setDomain:(id)arg1; +- (id)preferredAuthScheme; +- (void)setPreferredAuthScheme:(id)arg1; +- (void)_setAccountInfo:(id)arg1; +- (id)defaultsDictionary; +- (void)setUsesSSL:(BOOL)arg1; +- (void)setPortNumber:(unsigned int)arg1; +- (id)permanentPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)sessionPassword; +- (void)setSessionPassword:(id)arg1; +- (id)_passwordWithPersistence:(unsigned long long)arg1; +- (void)_setPassword:(id)arg1 persistence:(unsigned long long)arg2; +- (BOOL)isSyncable; +- (id)newConnectedConnection; +- (id)authenticatedConnection; +- (BOOL)_connectAndAuthenticate:(id)arg1; +- (void)releaseAllConnections; +- (void)setIsOffline:(BOOL)arg1; +- (id)_URLPersistenceScheme; +- (id)_URLInternalConnectionScheme; +- (id)_URLExternalConnectionScheme; +- (Class)storeClass; +- (BOOL)supportsRichTextNotes; +- (BOOL)defaultShouldShowNotesInInbox; +- (id)mailboxPathExtension; +- (BOOL)shouldMoveDeletedMessagesToTrash; +- (void)setShouldMoveDeletedMessagesToTrash:(BOOL)arg1; +- (id)primaryMailboxUid; +- (BOOL)deleteConvertsStoreToFolder; +- (void)fetchSynchronouslyIsAuto:(id)arg1; +- (void)synchronizeAllMailboxes; +- (BOOL)_shouldSynchronizeMailbox:(id)arg1; +- (void)_synchronizeMailboxesSynchronously; +- (BOOL)_supportsMailboxListInitialization; +- (BOOL)_synchronizeMailboxListWithUserInput:(BOOL)arg1; +- (void)_synchronouslyLoadListingForParent:(id)arg1; +- (BOOL)_setChildren:(id)arg1 forMailboxUid:(id)arg2; +- (id)_defaultSpecialMailboxNameForType:(int)arg1; +- (id)_specialMailboxNameForType:(int)arg1; +- (void)_setSpecialMailboxName:(id)arg1 forType:(int)arg2; +- (BOOL)_readMailboxCache; +- (void)setEmailAddresses:(id)arg1; +- (id)createMailboxWithParent:(id)arg1 name:(id)arg2 displayName:(id)arg3; +- (id)_createMailboxWithParent:(id)arg1 name:(id)arg2 displayName:(id)arg3 type:(int)arg4; +- (BOOL)canMailboxBeRenamed:(id)arg1; +- (BOOL)renameMailbox:(id)arg1 newName:(id)arg2 parent:(id)arg3; +- (BOOL)canMailboxBeDeleted:(id)arg1; +- (BOOL)_deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (BOOL)supportsSlashesInMailboxName; +- (id)validNameForMailbox:(id)arg1 fromDisplayName:(id)arg2 error:(id *)arg3; +- (id)_mailboxNameForFolderName:(id)arg1; +- (id)_folderNameForMailboxName:(id)arg1; +- (id)deliveryAccount; +- (void)setDeliveryAccount:(id)arg1; +- (id)dynamicDeliveryAccount; +- (id)_specialMailboxUidWithType:(int)arg1 create:(BOOL)arg2 isLocal:(BOOL)arg3; +- (BOOL)storeJunkOnServerDefault; +@property(retain) NSString *externalHostname; // @dynamic externalHostname; +@property unsigned int externalPortNumber; // @dynamic externalPortNumber; +@property BOOL externalUsesSSL; // @dynamic externalUsesSSL; +@property(copy) NSString *internalServerPath; // @dynamic internalServerPath; +@property(copy) NSString *externalServerPath; // @dynamic externalServerPath; +- (id)_serverPathWithAccountInfoKey:(id)arg1; +- (void)_setServerPath:(id)arg1 accountInfoKey:(id)arg2; +@property(retain) NSString *folderHierarchySyncState; // @dynamic folderHierarchySyncState; +@property(retain) NSString *rootFolderId; +@property(retain) NSURL *lastUsedAutodiscoverURL; +@property NSURL *internalConnectionURL; // @dynamic internalConnectionURL; +@property NSURL *externalConnectionURL; // @dynamic externalConnectionURL; +- (id)_connectionURL:(BOOL)arg1; +- (void)_setConnectionURL:(id)arg1 isExternal:(BOOL)arg2; +@property(readonly) NSURL *connectionURL; // @dynamic connectionURL; +- (BOOL)_isSameAsCalGroup:(id)arg1; +- (void)getUserOofSettings; +- (void)setUserOofSettingsState:(long long)arg1 internalReply:(id)arg2 externalReply:(id)arg3 startTime:(id)arg4 endTime:(id)arg5; +- (void)_networkConfigurationChanged:(id)arg1; +- (BOOL)_shouldHideMailboxUid:(id)arg1 withType:(int)arg2; +- (void)_handleConnectionError:(id)arg1 isUnsupportedVersionError:(char *)arg2 shouldRedoAutodiscovery:(char *)arg3; +- (BOOL)_redoAutodiscovery; +- (id)remoteTaskQueue; +- (id)mailboxNameForFolderIdString:(id)arg1; +- (void)createMailboxFromEWSFolder:(id)arg1; +- (BOOL)_isSyncIssuesFolder:(id)arg1; +- (void)updateMailboxForEWSFolder:(id)arg1; +- (void)deleteMailboxForEWSFolderIdString:(id)arg1; +- (void)deleteEWSItemsWithIdStrings:(id)arg1 fromFolderWithIdString:(id)arg2; +- (void)undeleteMessagesWithEWSItemIdStrings:(id)arg1 fromFolderWithIdString:(id)arg2; +- (id)deletedEWSIdStringsFromStrings:(id)arg1 inFolderWithIdString:(id)arg2; +- (void)updateEWSOfflineIdsToRealIds:(id)arg1 forFolders:(BOOL)arg2; +- (void)_setupMailboxUid:(id)arg1 forFolderId:(id)arg2; +- (id)_mailboxUidForFolderId:(id)arg1; +- (void)_setMailboxUid:(id)arg1 forFolderId:(id)arg2; +- (void)_saveFolderId:(id)arg1 forMailbox:(id)arg2; +- (void)_clearFolderId:(id)arg1 forMailbox:(id)arg2; +- (id)_loadFolderIdForMailboxUid:(id)arg1; +- (BOOL)_setEWSError:(id)arg1; +@property long long externalAudienceType; // @synthesize externalAudienceType=_externalAudienceType; +@property(retain) NSString *syncIssuesEntryID; // @synthesize syncIssuesEntryID=_syncIssuesEntryID; +@property BOOL useExternalURL; // @synthesize useExternalURL=_useExternalURL; +@property(retain) MFUUID *messageTracerUUID; // @synthesize messageTracerUUID=_messageTracerUUID; +@property double lastFullFetchTime; // @synthesize lastFullFetchTime=_lastFullFetchTime; +@property double lastFullFetchDuration; // @synthesize lastFullFetchDuration=_lastFullFetchDuration; +@property(retain) EWSConnection *connection; // @synthesize connection=_connection; +@property(retain) NSDictionary *distinguishedFolderIdsAndMailboxUidTypes; // @synthesize distinguishedFolderIdsAndMailboxUidTypes=_distinguishedFolderIdsAndMailboxUidTypes; +@property(retain, nonatomic) EWSGateway *gateway; // @synthesize gateway=_gateway; + +@end + diff --git a/MailHeaders/Lion/Message/EWSAutodiscoverBindingDelegate-Protocol.h b/MailHeaders/Lion/Message/EWSAutodiscoverBindingDelegate-Protocol.h new file mode 100644 index 00000000..db354745 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSAutodiscoverBindingDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol EWSAutodiscoverBindingDelegate +- (void)autodiscoverBinding:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; + +@optional +- (void)autodiscoverBinding:(id)arg1 didFinishWithResponse:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didFailWithError:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didReceiveCertificateError:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Message/EWSAutodiscovery.h b/MailHeaders/Lion/Message/EWSAutodiscovery.h new file mode 100644 index 00000000..bf20bde4 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSAutodiscovery.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "EWSAutodiscoverBindingDelegate-Protocol.h" + +@class NSDictionary, NSError, NSString, NSURL; + +@interface EWSAutodiscovery : NSObject +{ + NSString *_emailAddress; + NSString *_password; + NSString *_userName; + NSURL *_preferredAutodiscoverURL; + NSDictionary *_receivingAccountInfo; + long long _status; + NSError *_lastError; +} + ++ (void)initialize; +- (id)init; +- (id)initWithEmailAddress:(id)arg1 userName:(id)arg2 password:(id)arg3 preferredAutodiscoverURL:(id)arg4; +- (void)dealloc; +- (long long)executeSynchronouslyWithMonitor:(id)arg1; +- (void)autodiscoverBinding:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didFinishWithResponse:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didFailWithError:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didReceiveCertificateError:(id)arg2; +@property(copy) NSError *lastError; // @synthesize lastError=_lastError; +@property long long status; // @synthesize status=_status; +@property(copy) NSDictionary *receivingAccountInfo; // @synthesize receivingAccountInfo=_receivingAccountInfo; +@property(copy, nonatomic) NSURL *preferredAutodiscoverURL; // @synthesize preferredAutodiscoverURL=_preferredAutodiscoverURL; +@property(copy) NSString *userName; // @synthesize userName=_userName; +@property(copy, nonatomic) NSString *password; // @synthesize password=_password; +@property(copy, nonatomic) NSString *emailAddress; // @synthesize emailAddress=_emailAddress; + +@end + diff --git a/MailHeaders/Lion/Message/EWSConnection.h b/MailHeaders/Lion/Message/EWSConnection.h new file mode 100644 index 00000000..b94cc5dc --- /dev/null +++ b/MailHeaders/Lion/Message/EWSConnection.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "EWSExchangeServiceBindingDelegate-Protocol.h" + +@class EWSAccount, EWSExchangeServiceBinding; + +@interface EWSConnection : Connection +{ + EWSExchangeServiceBinding *_binding; + EWSAccount *_account; +} + +- (void)dealloc; +- (BOOL)connectUsingAccount:(id)arg1; +- (BOOL)connectAndSetSecurityLayerUsingAccount:(id)arg1; +- (BOOL)authenticateUsingAccount:(id)arg1; +- (id)_connectAndAuthenticateUsingAccount:(id)arg1; +- (id)_fetchRootFolderId:(id *)arg1; +- (void)_setupConnectionErrorMessageForMonitor:(id)arg1 withHostname:(id)arg2 port:(unsigned int)arg3 usingSSL:(BOOL)arg4; +- (BOOL)reconnect; +- (BOOL)isValid; +- (void)disconnect; +- (id)sendMessage:(id)arg1 forRequest:(id)arg2; +- (id)_sendMessage:(id)arg1 error:(id *)arg2; +- (void)disconnectWithError:(id)arg1; +- (void)exchangeServiceBinding:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didReceiveCertificateError:(id)arg2; +@property EWSAccount *account; // @synthesize account=_account; +@property(retain) EWSExchangeServiceBinding *binding; // @synthesize binding=_binding; + +@end + diff --git a/MailHeaders/Lion/Message/EWSCopyItemsRequestOperation.h b/MailHeaders/Lion/Message/EWSCopyItemsRequestOperation.h new file mode 100644 index 00000000..d6d7e766 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSCopyItemsRequestOperation.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "NSCoding-Protocol.h" + +@class NSArray, NSString; + +@interface EWSCopyItemsRequestOperation : EWSRequestOperation +{ + NSString *_sourceEWSFolderIdString; + NSString *_destinationEWSFolderIdString; + NSArray *_EWSItemIds; + NSArray *_offlineCreatedEWSItemIdStrings; +} + ++ (Class)classForResponse; +- (id)initWithEWSItemIds:(id)arg1 sourceIdString:(id)arg2 destinationIdString:(id)arg3 gateway:(id)arg4 errorHandler:(id)arg5; +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (void)_ewsCopyItemsRequestOperationCommonInitWithEWSItemIds:(id)arg1 sourceIdString:(id)arg2 destinationIdString:(id)arg3 gateway:(id)arg4 errorHandler:(id)arg5; +- (id)activityString; +- (id)prepareRequest; +- (void)setupOfflineResponse; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(retain) NSArray *offlineCreatedEWSItemIdStrings; // @synthesize offlineCreatedEWSItemIdStrings=_offlineCreatedEWSItemIdStrings; +@property(retain, nonatomic) NSArray *EWSItemIds; // @synthesize EWSItemIds=_EWSItemIds; +@property(retain, nonatomic) NSString *destinationEWSFolderIdString; // @synthesize destinationEWSFolderIdString=_destinationEWSFolderIdString; +@property(retain, nonatomic) NSString *sourceEWSFolderIdString; // @synthesize sourceEWSFolderIdString=_sourceEWSFolderIdString; + +@end + diff --git a/MailHeaders/Lion/Message/EWSCopyItemsResponseOperation.h b/MailHeaders/Lion/Message/EWSCopyItemsResponseOperation.h new file mode 100644 index 00000000..246904ba --- /dev/null +++ b/MailHeaders/Lion/Message/EWSCopyItemsResponseOperation.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface EWSCopyItemsResponseOperation : EWSResponseOperation +{ + NSArray *_newEWSItemIdStrings; + unsigned long long _expectedResponseCount; +} + +- (void)dealloc; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)executeOperation; +@property(copy) NSArray *newEWSItemIdStrings; // @synthesize newEWSItemIdStrings=_newEWSItemIdStrings; + +@end + diff --git a/MailHeaders/Lion/Message/EWSCreateEventReplyRequestOperation.h b/MailHeaders/Lion/Message/EWSCreateEventReplyRequestOperation.h new file mode 100644 index 00000000..d3f2b0d9 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSCreateEventReplyRequestOperation.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSGetItemsResponseOperation, NSString; + +@interface EWSCreateEventReplyRequestOperation : EWSCreateItemRequestOperation +{ + NSString *_messageMeetingItemIdString; + BOOL _messageResponseType; + EWSGetItemsResponseOperation *_getItemsResponse; +} + ++ (Class)classForResponse; +- (id)initWithItemIdString:(id)arg1 folderIdString:(id)arg2 messageType:(BOOL)arg3 responseType:(BOOL)arg4 disposition:(long long)arg5 gateway:(id)arg6 errorHandler:(id)arg7; +- (void)_ewsCreateEventReplyRequestOperationCommonInitWithItemIdString:(id)arg1 responseType:(BOOL)arg2; +- (id)initWithFolderIdString:(id)arg1 messageType:(BOOL)arg2 disposition:(long long)arg3 gateway:(id)arg4 errorHandler:(id)arg5; +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +- (void)dealloc; +- (id)prepareRequest; +@property(retain, nonatomic) EWSGetItemsResponseOperation *getItemsResponse; // @synthesize getItemsResponse=_getItemsResponse; +@property(nonatomic) BOOL messageResponseType; // @synthesize messageResponseType=_messageResponseType; +@property(retain, nonatomic) NSString *messageMeetingItemIdString; // @synthesize messageMeetingItemIdString=_messageMeetingItemIdString; + +@end + diff --git a/MailHeaders/Lion/Message/EWSCreateEventReplyResponseOperation.h b/MailHeaders/Lion/Message/EWSCreateEventReplyResponseOperation.h new file mode 100644 index 00000000..c7abd2d1 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSCreateEventReplyResponseOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface EWSCreateEventReplyResponseOperation : EWSCreateItemResponseOperation +{ +} + +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)executeOperation; + +@end + diff --git a/MailHeaders/Lion/Message/EWSCreateFolderRequestOperation.h b/MailHeaders/Lion/Message/EWSCreateFolderRequestOperation.h new file mode 100644 index 00000000..4e0e8cb3 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSCreateFolderRequestOperation.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "NSCoding-Protocol.h" + +@class NSString; + +@interface EWSCreateFolderRequestOperation : EWSRequestOperation +{ + NSString *_parentEWSFolderIdString; + NSString *_offlineCreatedEWSFolderIdString; + NSString *_folderName; + int _mailboxType; +} + ++ (Class)classForResponse; +- (id)initWithParentEWSFolderIdString:(id)arg1 name:(id)arg2 mailboxType:(int)arg3 gateway:(id)arg4; +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)_ewsCreateFolderRequestOperationCommonInitWithFolderIdString:(id)arg1 name:(id)arg2 mailboxType:(int)arg3; +- (void)dealloc; +- (id)copyWithUpdatedNameCount:(unsigned long long)arg1; +- (id)activityString; +- (BOOL)isFolderRequest; +- (id)prepareRequest; +- (void)setupOfflineResponse; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(nonatomic) int mailboxType; // @synthesize mailboxType=_mailboxType; +@property(copy, nonatomic) NSString *folderName; // @synthesize folderName=_folderName; +@property(copy) NSString *offlineCreatedEWSFolderIdString; // @synthesize offlineCreatedEWSFolderIdString=_offlineCreatedEWSFolderIdString; +@property(copy, nonatomic) NSString *parentEWSFolderIdString; // @synthesize parentEWSFolderIdString=_parentEWSFolderIdString; + +@end + diff --git a/MailHeaders/Lion/Message/EWSCreateFolderResponseOperation.h b/MailHeaders/Lion/Message/EWSCreateFolderResponseOperation.h new file mode 100644 index 00000000..a3152069 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSCreateFolderResponseOperation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface EWSCreateFolderResponseOperation : EWSResponseOperation +{ + NSString *_createdFolderId; +} + +- (void)dealloc; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)executeOperation; +@property(copy) NSString *createdFolderId; // @synthesize createdFolderId=_createdFolderId; + +@end + diff --git a/MailHeaders/Lion/Message/EWSCreateItemRequestOperation.h b/MailHeaders/Lion/Message/EWSCreateItemRequestOperation.h new file mode 100644 index 00000000..4bde7d2d --- /dev/null +++ b/MailHeaders/Lion/Message/EWSCreateItemRequestOperation.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "NSCoding-Protocol.h" + +@class NSString; + +@interface EWSCreateItemRequestOperation : EWSRequestOperation +{ + NSString *_EWSFolderIdString; + NSString *_offlineCreatedEWSItemIdString; + long long _disposition; + BOOL _messageType; + BOOL _wroteOfflineData; +} + ++ (Class)classForResponse; +- (id)initWithFolderIdString:(id)arg1 messageType:(BOOL)arg2 disposition:(long long)arg3 gateway:(id)arg4 errorHandler:(id)arg5; +- (void)_ewsCreateItemRequestOperationCommonInitWithFolderIdString:(id)arg1 messageType:(BOOL)arg2 disposition:(long long)arg3; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +- (void)dealloc; +- (id)activityString; +- (void)setupOfflineResponse; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(nonatomic) BOOL wroteOfflineData; // @synthesize wroteOfflineData=_wroteOfflineData; +@property(retain) NSString *offlineCreatedEWSItemIdString; // @synthesize offlineCreatedEWSItemIdString=_offlineCreatedEWSItemIdString; +@property(nonatomic) long long disposition; // @synthesize disposition=_disposition; +@property(nonatomic) BOOL messageType; // @synthesize messageType=_messageType; +@property(retain, nonatomic) NSString *EWSFolderIdString; // @synthesize EWSFolderIdString=_EWSFolderIdString; + +@end + diff --git a/MailHeaders/Lion/Message/EWSCreateItemResponseOperation.h b/MailHeaders/Lion/Message/EWSCreateItemResponseOperation.h new file mode 100644 index 00000000..5b36cbae --- /dev/null +++ b/MailHeaders/Lion/Message/EWSCreateItemResponseOperation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface EWSCreateItemResponseOperation : EWSResponseOperation +{ + NSString *_itemId; +} + +- (void)dealloc; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)executeOperation; +@property(copy) NSString *itemId; // @synthesize itemId=_itemId; + +@end + diff --git a/MailHeaders/Lion/Message/EWSCreateMessageRequestOperation.h b/MailHeaders/Lion/Message/EWSCreateMessageRequestOperation.h new file mode 100644 index 00000000..aba741e6 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSCreateMessageRequestOperation.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "NSCoding-Protocol.h" + +@class EWSGetItemsResponseOperation, Message, NSData, NSDictionary, NSString; + +@interface EWSCreateMessageRequestOperation : EWSCreateItemRequestOperation +{ + EWSGetItemsResponseOperation *_getItemsResponse; + Message *_message; + NSData *_data; + NSString *_sender; + NSString *_existingItemIdString; + NSDictionary *_recipientsByHeaderKey; + unsigned int _flags; +} + +- (id)initWithMessage:(id)arg1 data:(id)arg2 folderIdString:(id)arg3 messageType:(BOOL)arg4 flags:(unsigned int)arg5 existingItemIdString:(id)arg6 sender:(id)arg7 recipientsByHeaderKey:(id)arg8 disposition:(long long)arg9 gateway:(id)arg10 errorHandler:(id)arg11; +- (void)_ewsCreateMessageRequestOperationCommonInitWithMessage:(id)arg1 data:(id)arg2 flags:(unsigned int)arg3 existingItemIdString:(id)arg4 sender:(id)arg5 recipientsByHeaderKey:(id)arg6; +- (id)initWithFolderIdString:(id)arg1 messageType:(BOOL)arg2 disposition:(long long)arg3 gateway:(id)arg4 errorHandler:(id)arg5; +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +- (void)dealloc; +- (id)prepareRequest; +@property(retain, nonatomic) EWSGetItemsResponseOperation *getItemsResponse; // @synthesize getItemsResponse=_getItemsResponse; +@property(retain, nonatomic) NSDictionary *recipientsByHeaderKey; // @synthesize recipientsByHeaderKey=_recipientsByHeaderKey; +@property(copy, nonatomic) NSString *existingItemIdString; // @synthesize existingItemIdString=_existingItemIdString; +@property(copy, nonatomic) NSString *sender; // @synthesize sender=_sender; +@property(nonatomic) unsigned int flags; // @synthesize flags=_flags; +@property(retain, nonatomic) NSData *data; // @synthesize data=_data; +@property(retain, nonatomic) Message *message; // @synthesize message=_message; + +@end + diff --git a/MailHeaders/Lion/Message/EWSDeleteFolderRequestOperation.h b/MailHeaders/Lion/Message/EWSDeleteFolderRequestOperation.h new file mode 100644 index 00000000..99da8db1 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSDeleteFolderRequestOperation.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "NSCoding-Protocol.h" + +@class NSString; + +@interface EWSDeleteFolderRequestOperation : EWSRequestOperation +{ + NSString *_folderIdString; +} + ++ (Class)classForResponse; +- (id)initWithEWSFolderIdString:(id)arg1 gateway:(id)arg2; +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (id)activityString; +- (BOOL)isFolderRequest; +- (id)prepareRequest; +- (void)setupOfflineResponse; +@property(retain, nonatomic) NSString *folderIdString; // @synthesize folderIdString=_folderIdString; + +@end + diff --git a/MailHeaders/Lion/Message/EWSDeleteItemsRequestOperation.h b/MailHeaders/Lion/Message/EWSDeleteItemsRequestOperation.h new file mode 100644 index 00000000..b4a0f87d --- /dev/null +++ b/MailHeaders/Lion/Message/EWSDeleteItemsRequestOperation.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "NSCoding-Protocol.h" + +@class NSArray, NSString; + +@interface EWSDeleteItemsRequestOperation : EWSRequestOperation +{ + NSArray *_EWSItemIds; + NSString *_folderIdString; +} + ++ (Class)classForResponse; +- (id)initWithEWSItemIds:(id)arg1 folderIdString:(id)arg2 gateway:(id)arg3; +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (void)_ewsDeleteItemsRequestOperationCommonInitWithEWSItemIds:(id)arg1 folderIdString:(id)arg2; +- (id)activityString; +- (id)prepareRequest; +- (void)setupOfflineResponse; +@property(retain, nonatomic) NSString *folderIdString; // @synthesize folderIdString=_folderIdString; +@property(retain, nonatomic) NSArray *EWSItemIds; // @synthesize EWSItemIds=_EWSItemIds; + +@end + diff --git a/MailHeaders/Lion/Message/EWSDelivery.h b/MailHeaders/Lion/Message/EWSDelivery.h new file mode 100644 index 00000000..018aa981 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSDelivery.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "EWSErrorHandler-Protocol.h" + +@class MFError; + +@interface EWSDelivery : MailDelivery +{ + MFError *_error; +} + +- (void)dealloc; +- (Class)deliveryClass; +- (id)headersForDelivery; +- (int)deliverSynchronously; +- (void)handleEWSError:(id)arg1; +@property(retain) MFError *error; // @synthesize error=_error; + +@end + diff --git a/MailHeaders/Lion/Message/EWSDeliveryAccount.h b/MailHeaders/Lion/Message/EWSDeliveryAccount.h new file mode 100644 index 00000000..02675cae --- /dev/null +++ b/MailHeaders/Lion/Message/EWSDeliveryAccount.h @@ -0,0 +1,101 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSAccount; + +@interface EWSDeliveryAccount : DeliveryAccount +{ + EWSAccount *_ewsAccount; + BOOL _stripsFromHeaderWhenSending; +} + ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; +- (id)initWithAccount:(id)arg1; +- (id)initWithAccountInfo:(id)arg1; +- (void)dealloc; +- (id)storedDisplayName; +- (void)setStoredDisplayName; +- (id)displayName; +- (void)setDisplayName; +- (id)offlineDisplayName; +- (BOOL)isSyncable; +- (BOOL)isInactivatedInsteadOfBeingDeleted; +- (void)setIsInactivatedInsteadOfBeingDeleted:(BOOL)arg1; +- (id)defaultsDictionary; +- (void)updateFromSyncedDictionary:(id)arg1; +- (void)updateAccountsFromPlist:(id)arg1 acceptedChanges:(id)arg2; +- (void)releaseAllConnections; +- (void)setAccountInfoObject:(id)arg1 forKey:(id)arg2; +- (void)removeAccountInfoObjectForKey:(id)arg1; +- (void)_setAccountInfo:(id)arg1; +- (id)info; +- (void)setInfo:(id)arg1; +- (id)username; +- (void)setUsername:(id)arg1; +- (id)password; +- (void)setPassword:(id)arg1; +- (id)permanentPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)sessionPassword; +- (void)setSessionPassword:(id)arg1; +- (id)promptUserForPasswordWithMessage:(id)arg1; +- (id)promptUserIfNeededForPasswordWithMessage:(id)arg1; +- (id)applePersonID; +- (id)appleAuthenticationToken; +- (unsigned int)portNumber; +- (void)setPortNumber:(unsigned int)arg1; +- (BOOL)usesSSL; +- (void)setUsesSSL:(BOOL)arg1; +- (id)hostname; +- (void)setHostname:(id)arg1; +- (long long)securityLayerType; +- (void)setSecurityLayerType:(long long)arg1; +- (id)domain; +- (void)setDomain:(id)arg1; +- (id)preferredAuthScheme; +- (void)setPreferredAuthScheme:(id)arg1; +- (id)ISPAccountID; +- (void)setISPAccountID:(id)arg1; +- (id)uniqueId; +- (id)accountInfo; +- (void)setAccountInfo:(id)arg1; +- (id)serviceName; +- (id)secureServiceName; +- (id)saslProfileName; +- (BOOL)requiresAuthentication; +- (Class)connectionClass; +- (unsigned int)defaultPortNumber; +- (unsigned int)defaultSecurePortNumber; +- (BOOL)_shouldTryDirectSSLConnectionOnPort:(unsigned int)arg1; +- (BOOL)isOffline; +- (void)setIsOffline:(BOOL)arg1; +- (BOOL)isWillingToGoOnline; +- (void)setIsWillingToGoOnline:(BOOL)arg1; +- (BOOL)canGoOffline; +- (BOOL)isValid; +- (id)supportURL; +- (id)supportURLLabel; +- (id)subscriptionURL; +- (id)subscriptionURLLabel; +- (id)accountTypeString; +- (void)validateConnections; +- (id)authenticatedConnection; +- (BOOL)_connectAndAuthenticate:(id)arg1; +- (BOOL)_shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1; +- (id)identifier; +- (Class)deliveryClass; +- (BOOL)isDynamic; +- (id)associatedAccount; +- (void)setAssociatedAccount:(id)arg1; +- (BOOL)shouldUseAuthentication; +- (void)setShouldUseAuthentication:(BOOL)arg1; +- (id)remoteMailAccountsEmployedBy; +@property BOOL stripsFromHeaderWhenSending; // @synthesize stripsFromHeaderWhenSending=_stripsFromHeaderWhenSending; + +@end + diff --git a/MailHeaders/Lion/Message/EWSErrorHandler-Protocol.h b/MailHeaders/Lion/Message/EWSErrorHandler-Protocol.h new file mode 100644 index 00000000..f995aa87 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSErrorHandler-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol EWSErrorHandler +- (void)handleEWSError:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/EWSExchangeServiceBindingDelegate-Protocol.h b/MailHeaders/Lion/Message/EWSExchangeServiceBindingDelegate-Protocol.h new file mode 100644 index 00000000..c78e3353 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSExchangeServiceBindingDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol EWSExchangeServiceBindingDelegate +- (void)exchangeServiceBinding:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; + +@optional +- (void)exchangeServiceBinding:(id)arg1 didFinishWithResponse:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didFailWithError:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didReceiveCertificateError:(id)arg2; +- (BOOL)exchangeServiceBinding:(id)arg1 canAuthenticateAgainstProtectionSpace:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Message/EWSFindItemsRequestOperation.h b/MailHeaders/Lion/Message/EWSFindItemsRequestOperation.h new file mode 100644 index 00000000..66f6523f --- /dev/null +++ b/MailHeaders/Lion/Message/EWSFindItemsRequestOperation.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSSearchExpressionType, NSArray; + +@interface EWSFindItemsRequestOperation : EWSRequestOperation +{ + NSArray *_additionalProperties; + NSArray *_EWSFolderIds; + EWSSearchExpressionType *_searchExpression; +} + ++ (Class)classForResponse; +- (id)initWithSearchExpression:(id)arg1 EWSFolderIdStrings:(id)arg2 additionalProperties:(id)arg3 gateway:(id)arg4; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (id)activityString; +- (id)prepareRequest; +@property(retain, nonatomic) EWSSearchExpressionType *searchExpression; // @synthesize searchExpression=_searchExpression; +@property(retain, nonatomic) NSArray *EWSFolderIdStrings; // @synthesize EWSFolderIdStrings=_EWSFolderIds; +@property(retain, nonatomic) NSArray *additionalProperties; // @synthesize additionalProperties=_additionalProperties; + +@end + diff --git a/MailHeaders/Lion/Message/EWSFindItemsResponseOperation.h b/MailHeaders/Lion/Message/EWSFindItemsResponseOperation.h new file mode 100644 index 00000000..02b0aec6 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSFindItemsResponseOperation.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray, NSDictionary, NSMutableDictionary; + +@interface EWSFindItemsResponseOperation : EWSResponseOperation +{ + NSArray *_EWSFolderIds; + NSMutableDictionary *_rootFoldersByEWSFolderId; +} + +- (void)dealloc; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)executeOperation; +- (id)rootFolderForEWSFolderId:(id)arg1; +@property(retain, nonatomic) NSDictionary *rootFoldersByEWSFolderId; +@property(retain, nonatomic) NSArray *EWSFolderIds; // @synthesize EWSFolderIds=_EWSFolderIds; + +@end + diff --git a/MailHeaders/Lion/Message/EWSGateway.h b/MailHeaders/Lion/Message/EWSGateway.h new file mode 100644 index 00000000..b9712025 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSGateway.h @@ -0,0 +1,97 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSCoding-Protocol.h" + +@class EWSAccount, EWSConnection, NSDictionary, NSMutableArray, NSMutableDictionary, NSOperationQueue; + +@interface EWSGateway : NSObject +{ + EWSAccount *_account; + NSOperationQueue *_requestResponseQueue; + NSMutableArray *_offlineRequests; + NSDictionary *_savedOfflineToRealEWSIdStrings; + NSMutableDictionary *_pendingSyncOperations; + NSMutableDictionary *_headersByItemIdStringForSync; + NSOperationQueue *_syncOperationQueue; + NSOperationQueue *_rulesQueue; +} + ++ (id)newTemporaryItemId; +- (id)initWithAccount:(id)arg1; +- (id)init; +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +- (void)dealloc; +- (void)addRequest:(id)arg1; +- (void)addResponse:(id)arg1; +- (void)addError:(id)arg1 withHandler:(id)arg2; +- (void)sendMessage:(id)arg1 forRequest:(id)arg2; +- (void)takeRequestOffline:(id)arg1 error:(id)arg2; +- (id)fetchDistinguishedFolderIdsWithConnection:(id)arg1; +- (void)saveRequestToOfflineCache:(id)arg1; +- (void)_saveOfflineCache; +- (void)_addCreateRequestToOfflineCache:(id)arg1; +- (void)_addDeleteRequestToOfflineCache:(id)arg1; +- (void)playbackRequestsFromOfflineCacheWithConnection:(id)arg1 error:(id *)arg2; +- (BOOL)writeMessageToOfflineCache:(id)arg1 data:(id)arg2 forItemIdString:(id)arg3; +- (void)retrieveMessageFromOfflineCache:(id *)arg1 data:(id *)arg2 forItemIdString:(id)arg3; +- (void)removeMessageAndDataFromOfflineCacheForEWSItemIdString:(id)arg1; +- (id)_offlineCachePath; +- (id)_offlineCachePathForMessageWithItemIdString:(id)arg1; +- (id)_offlineCachePathForDataWithItemIdString:(id)arg1; +@property(readonly) EWSConnection *connection; +- (id)syncFolderHierarchyWithSyncState:(id)arg1; +- (id)_syncFolderHierarchyWithSyncState:(id)arg1 includesLastItem:(char *)arg2; +- (id)syncFolderItemsFromFolderIdString:(id)arg1 syncState:(id)arg2 forStore:(id)arg3; +- (id)_syncFolderItemsFromTargetFolderIdType:(id)arg1 syncState:(id)arg2 forStore:(id)arg3 includesLastItem:(char *)arg4; +- (void)_handleSyncedMessagesWithoutHeaders:(id)arg1 inFolderIdString:(id)arg2 store:(id)arg3 newSyncState:(id)arg4; +- (void)setEWSIdStringsBlockingSyncCompletion:(id)arg1 syncState:(id)arg2 forFolderIdString:(id)arg3; +- (void)setHeaders:(id)arg1 forItemIdString:(id)arg2; +- (void)routeMessagesAndAddToLibrary:(id)arg1 toStore:(id)arg2; +- (void)updateMessagesLocallyFromSync:(id)arg1 inStore:(id)arg2 withFolderIdString:(id)arg3 newMessageIDs:(id)arg4 newSyncState:(id)arg5; +- (void)_updateMessagesLocallyFromSync:(id)arg1 inStore:(id)arg2 withFolderIdString:(id)arg3 newMessageIDs:(id)arg4 newSyncState:(id)arg5; +- (void)cancelSyncOfFolderItemsFromFolderIdString:(id)arg1; +- (void)removeIdStringsForMessagesThatSynced:(id)arg1 fromFolderWithIdString:(id)arg2; +- (void)_cancelWriteSyncStateOperationForFolderIdString:(id)arg1 withSyncState:(id)arg2; +- (void)_saveData:(id)arg1 forMessage:(id)arg2 isPartial:(BOOL)arg3 updateMetadata:(BOOL)arg4; +- (id)fetchMimeDataForMessage:(id)arg1 errorHandler:(id)arg2; +- (id)_EWSItemTypesWithBodyDataForMessages:(id)arg1 errorHandler:(id)arg2; +- (void)cacheDataForLibraryMessages:(id)arg1 store:(id)arg2 folderIdString:(id)arg3 errorHandler:(id)arg4; +- (void)_cacheDataForLibraryMessages:(id)arg1 store:(id)arg2 folderIdString:(id)arg3 errorHandler:(id)arg4; +- (id)appendMessage:(id)arg1 withData:(id)arg2 toEWSFolderWithIdString:(id)arg3 messageType:(BOOL)arg4 flags:(unsigned int)arg5 sender:(id)arg6 recipientsByHeaderKey:(id)arg7 send:(BOOL)arg8 errorHandler:(id)arg9; +- (void)deleteMessagesWithEWSItemIds:(id)arg1 fromFolderWithEWSIdString:(id)arg2 synchronously:(BOOL)arg3; +- (void)setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2 inFolderWithEWSIdString:(id)arg3 errorHandler:(id)arg4; +- (id)copyMessagesWithEWSItemIds:(id)arg1 fromFolderWithIdString:(id)arg2 toFolderWithIdString:(id)arg3 synchronously:(BOOL)arg4 errorHandler:(id)arg5; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2 inStore:(id)arg3 errorHandler:(id)arg4; +- (void)undeleteMessageForFailedCreateEventResponse:(id)arg1; +- (void)_fetchMeetingRequestMessages:(id)arg1 errorHandler:(id)arg2; +- (void)_fetchMeetingCancellationMessages:(id)arg1 errorHandler:(id)arg2; +- (id)createMailboxWithParentEWSFolderIdString:(id)arg1 name:(id)arg2 mailboxType:(int)arg3 error:(id *)arg4; +- (BOOL)renameMailboxWithEWSFolderIdString:(id)arg1 to:(id)arg2 error:(id *)arg3; +- (BOOL)moveMailboxWithEWSFolderIdString:(id)arg1 to:(id)arg2 error:(id *)arg3; +- (BOOL)deleteMailboxWithEWSFolderIdString:(id)arg1 error:(id *)arg2; +- (id)resolvedIdStringForIdString:(id)arg1; +- (void)addOfflineToRealEWSIdStrings:(id)arg1 forRequest:(id)arg2; +- (CDStruct_d3e19d9e)fetchUsageInfoForEWSFolderIdString:(id)arg1; +- (void)getOofSettings; +- (void)setOofState:(long long)arg1 internalReply:(id)arg2 externalReply:(id)arg3 startTime:(id)arg4 endTime:(id)arg5 externalAudienceType:(long long)arg6; +- (void)_chunkItemsToSend:(id)arg1 applyToBlock:(id)arg2; +- (unsigned long long)_maxRequestsToSend; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_logPendingSyncOperations:(id)arg1; +- (id)fetchCopyOfSyncIssuesEntryID; +@property(retain, nonatomic) NSOperationQueue *rulesQueue; // @synthesize rulesQueue=_rulesQueue; +@property(retain, nonatomic) NSDictionary *savedOfflineToRealEWSIdStrings; // @synthesize savedOfflineToRealEWSIdStrings=_savedOfflineToRealEWSIdStrings; +@property(retain, nonatomic) NSMutableArray *offlineRequests; // @synthesize offlineRequests=_offlineRequests; +@property(retain, nonatomic) NSOperationQueue *syncOperationQueue; // @synthesize syncOperationQueue=_syncOperationQueue; +@property(retain, nonatomic) NSOperationQueue *requestResponseQueue; // @synthesize requestResponseQueue=_requestResponseQueue; +@property(nonatomic) EWSAccount *account; // @synthesize account=_account; + +@end + diff --git a/MailHeaders/Lion/Message/EWSGetFolderRequestOperation.h b/MailHeaders/Lion/Message/EWSGetFolderRequestOperation.h new file mode 100644 index 00000000..af0e1858 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSGetFolderRequestOperation.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface EWSGetFolderRequestOperation : EWSRequestOperation +{ + NSArray *_EWSFolderIds; + BOOL _fetchEntryIDs; +} + ++ (Class)classForResponse; +- (id)initWithEWSFolderIds:(id)arg1 gateway:(id)arg2 errorHandler:(id)arg3 fetchEntryIDs:(BOOL)arg4; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (id)activityString; +- (BOOL)isFolderRequest; +- (id)prepareRequest; +@property(retain, nonatomic) NSArray *EWSFolderIds; // @synthesize EWSFolderIds=_EWSFolderIds; + +@end + diff --git a/MailHeaders/Lion/Message/EWSGetFolderResponseOperation.h b/MailHeaders/Lion/Message/EWSGetFolderResponseOperation.h new file mode 100644 index 00000000..bdc46a8b --- /dev/null +++ b/MailHeaders/Lion/Message/EWSGetFolderResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface EWSGetFolderResponseOperation : EWSResponseOperation +{ + NSArray *_EWSFolderIdsRequested; + NSArray *_EWSFolders; +} + +- (void)dealloc; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)executeOperation; +@property(copy) NSArray *EWSFolderIdsRequested; // @synthesize EWSFolderIdsRequested=_EWSFolderIdsRequested; +@property(copy) NSArray *EWSFolders; // @synthesize EWSFolders=_EWSFolders; + +@end + diff --git a/MailHeaders/Lion/Message/EWSGetItemDataRequestOperation.h b/MailHeaders/Lion/Message/EWSGetItemDataRequestOperation.h new file mode 100644 index 00000000..48300681 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSGetItemDataRequestOperation.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface EWSGetItemDataRequestOperation : EWSRequestOperation +{ + NSArray *_itemIdTypes; +} + ++ (Class)classForResponse; +- (id)initWithItemIdTypes:(id)arg1 dataHandler:(id)arg2 gateway:(void)arg3 errorHandler:(id)arg4; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (id)activityString; +- (id)prepareRequest; +@property(retain, nonatomic) NSArray *itemIdTypes; // @synthesize itemIdTypes=_itemIdTypes; + +@end + diff --git a/MailHeaders/Lion/Message/EWSGetItemDataResponseOperation.h b/MailHeaders/Lion/Message/EWSGetItemDataResponseOperation.h new file mode 100644 index 00000000..6c5c692f --- /dev/null +++ b/MailHeaders/Lion/Message/EWSGetItemDataResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface EWSGetItemDataResponseOperation : EWSResponseOperation +{ + NSArray *_itemIdTypes; + id _dataHandler; +} + +- (void)dealloc; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)executeOperation; +@property(copy, nonatomic) id dataHandler; // @synthesize dataHandler=_dataHandler; +@property(retain, nonatomic) NSArray *itemIdTypes; // @synthesize itemIdTypes=_itemIdTypes; + +@end + diff --git a/MailHeaders/Lion/Message/EWSGetItemsRequestOperation.h b/MailHeaders/Lion/Message/EWSGetItemsRequestOperation.h new file mode 100644 index 00000000..724a2198 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSGetItemsRequestOperation.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface EWSGetItemsRequestOperation : EWSRequestOperation +{ + NSArray *_EWSItemIds; + NSArray *_additionalProperties; +} + ++ (Class)classForResponse; +- (id)initWithEWSItemIds:(id)arg1 additionalProperties:(id)arg2 gateway:(id)arg3 errorHandler:(id)arg4; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (id)activityString; +- (id)prepareRequest; +@property(retain, nonatomic) NSArray *additionalProperties; // @synthesize additionalProperties=_additionalProperties; +@property(retain, nonatomic) NSArray *EWSItemIds; // @synthesize EWSItemIds=_EWSItemIds; + +@end + diff --git a/MailHeaders/Lion/Message/EWSGetItemsResponseOperation.h b/MailHeaders/Lion/Message/EWSGetItemsResponseOperation.h new file mode 100644 index 00000000..b40609d9 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSGetItemsResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray, NSMutableArray; + +@interface EWSGetItemsResponseOperation : EWSResponseOperation +{ + NSArray *_EWSItemIdsRequested; + NSMutableArray *_EWSItems; +} + +- (void)dealloc; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)executeOperation; +@property(retain) NSArray *EWSItemIdsRequested; // @synthesize EWSItemIdsRequested=_EWSItemIdsRequested; +@property(retain) NSMutableArray *EWSItems; // @synthesize EWSItems=_EWSItems; + +@end + diff --git a/MailHeaders/Lion/Message/EWSGetUserOofSettingsRequestOperation.h b/MailHeaders/Lion/Message/EWSGetUserOofSettingsRequestOperation.h new file mode 100644 index 00000000..265283a8 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSGetUserOofSettingsRequestOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSEmailAddress; + +@interface EWSGetUserOofSettingsRequestOperation : EWSRequestOperation +{ + EWSEmailAddress *_emailAddress; +} + ++ (Class)classForResponse; +- (id)initWithEmailAddress:(id)arg1 gateway:(id)arg2 errorHandler:(id)arg3; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (id)prepareRequest; +@property(retain, nonatomic) EWSEmailAddress *emailAddress; // @synthesize emailAddress=_emailAddress; + +@end + diff --git a/MailHeaders/Lion/Message/EWSGetUserOofSettingsResponseOperation.h b/MailHeaders/Lion/Message/EWSGetUserOofSettingsResponseOperation.h new file mode 100644 index 00000000..36bc0115 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSGetUserOofSettingsResponseOperation.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSUserOofSettingsType; + +@interface EWSGetUserOofSettingsResponseOperation : EWSResponseOperation +{ + EWSUserOofSettingsType *_OofSettings; + long long _AllowExternalOof; +} + +- (void)dealloc; +- (void)executeOperation; +@property long long AllowExternalOof; // @synthesize AllowExternalOof=_AllowExternalOof; +@property(retain) EWSUserOofSettingsType *OofSettings; // @synthesize OofSettings=_OofSettings; + +@end + diff --git a/MailHeaders/Lion/Message/EWSMessage.h b/MailHeaders/Lion/Message/EWSMessage.h new file mode 100644 index 00000000..a9bcc6b6 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSMessage.h @@ -0,0 +1,66 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MessageHeaders, NSData, NSString; + +@interface EWSMessage : RemoteMessage +{ + NSString *_itemId; + NSString *_changeKey; + NSData *_bodyData; + NSData *_headerData; + MessageHeaders *_headers; + long long _libraryID; +} + ++ (void)initialize; ++ (BOOL)messageTypeForEWSItemClass:(id)arg1; ++ (id)EWSItemClassForMessageType:(BOOL)arg1; ++ (id)EWSFolderClassForMailboxType:(int)arg1; ++ (id)headersItemShape; ++ (void)parseExtendedFieldsFromEWSMessage:(id)arg1 intoFlags:(unsigned int *)arg2 flagsMask:(unsigned int *)arg3 messageID:(id *)arg4 headers:(id *)arg5; ++ (void)_extendedPropertiesFromEWSItem:(id)arg1 statusFlags:(int *)arg2 messageFlags:(int *)arg3 flagStatus:(int *)arg4 followupIcon:(int *)arg5 toDoFlags:(int *)arg6 replyFlags:(int *)arg7 hasAttachments:(char *)arg8 customFlags:(id)arg9 messageID:(id *)arg10 headers:(id *)arg11; ++ (id)extendedFieldsForEWSNoteType; ++ (id)fieldsToMaintainWhenUpdatingMessageType:(BOOL)arg1; ++ (id)extendedFieldsForEWSMeetingMessageType; ++ (id)extendedFieldsForEWSMeetingRequestMessageType; ++ (id)extendedFieldsForEWSCalendarType; ++ (id)propertiesToGetBeforeUpdatingMessageFlags:(id)arg1 forMessageType:(BOOL)arg2 includesReadReceipts:(char *)arg3; ++ (id)updatesForEWSItem:(id)arg1 applyingFlags:(id)arg2; ++ (id)_newEWSDeleteItemWithPropertyTag:(id)arg1 propertyType:(int)arg2; ++ (id)_newEWSDeleteItemWithDistinguishedPropertySetId:(int)arg1 propertyType:(int)arg2 propertyId:(long long)arg3; ++ (id)_extendedFieldsForFlags:(unsigned int)arg1 importance:(int *)arg2; ++ (id)_newEWSExtendedPropertyWithTag:(id)arg1 intValue:(int)arg2; ++ (id)_newCustomEWSExtendedPropertyWithName:(id)arg1 boolValue:(BOOL)arg2; ++ (id)_newEWSSetItemWithPropertyTag:(id)arg1 intValue:(int)arg2; ++ (id)_newCustomEWSSetItemWithPropertyName:(id)arg1 boolValue:(BOOL)arg2; ++ (id)dataFromMimeContent:(id)arg1; ++ (id)_mimeContentForData:(id)arg1; ++ (id)newEWSItemFromMessage:(id)arg1 data:(id)arg2 flags:(unsigned int)arg3 sender:(id)arg4 recipientsByHeaderKey:(id)arg5 categories:(id)arg6 existingProperties:(id)arg7 useSenderInsteadOfFrom:(BOOL)arg8; ++ (id)EWSItemIdTypesForMessages:(id)arg1; ++ (id)EWSItemIdStringsForItemIdTypes:(id)arg1; ++ (id)EWSItemIdTypesForItemIdStrings:(id)arg1; ++ (id)_newEWSHeaderFieldsForMessageHeaders:(id)arg1 encodingHint:(unsigned int)arg2; ++ (id)_newEWSAddressForAddress:(id)arg1; ++ (id)_newEWSAddressesForAddresses:(id)arg1; +- (id)initWithItemId:(id)arg1 changeKey:(id)arg2; +- (id)init; +- (void)dealloc; +- (id)remoteID; +- (BOOL)isEditable; +- (BOOL)isMessageContentsLocallyAvailable; +- (void)setHeaderAndBodyFromFullData:(id)arg1; +@property(nonatomic) long long libraryID; // @synthesize libraryID=_libraryID; +@property(retain) MessageHeaders *headers; // @synthesize headers=_headers; +@property(retain) NSData *headerData; // @synthesize headerData=_headerData; +@property(retain) NSData *fetchedBodyData; // @synthesize fetchedBodyData=_bodyData; +@property(copy, nonatomic) NSString *changeKey; // @synthesize changeKey=_changeKey; +@property(copy, nonatomic) NSString *itemId; // @synthesize itemId=_itemId; + +@end + diff --git a/MailHeaders/Lion/Message/EWSMoveFolderRequestOperation.h b/MailHeaders/Lion/Message/EWSMoveFolderRequestOperation.h new file mode 100644 index 00000000..6284629e --- /dev/null +++ b/MailHeaders/Lion/Message/EWSMoveFolderRequestOperation.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "NSCoding-Protocol.h" + +@class EWSGetFolderResponseOperation, NSArray, NSString; + +@interface EWSMoveFolderRequestOperation : EWSRequestOperation +{ + NSString *_destinationEWSFolderIdString; + NSArray *_originEWSFolderIdStrings; + EWSGetFolderResponseOperation *_changeKeysResponse; +} + ++ (Class)classForResponse; +- (id)initWithEWSFolderIdString:(id)arg1 originEWSFolderIdStrings:(id)arg2 gateway:(id)arg3; +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (id)activityString; +- (BOOL)isFolderRequest; +- (id)prepareRequest; +- (void)setupOfflineResponse; +@property(retain, nonatomic) NSArray *originEWSFolderIdStrings; // @synthesize originEWSFolderIdStrings=_originEWSFolderIdStrings; +@property(retain, nonatomic) EWSGetFolderResponseOperation *changeKeysResponse; // @synthesize changeKeysResponse=_changeKeysResponse; +@property(copy, nonatomic) NSString *destinationEWSFolderIdString; // @synthesize destinationEWSFolderIdString=_destinationEWSFolderIdString; + +@end + diff --git a/MailHeaders/Lion/Message/EWSOfflineGateway.h b/MailHeaders/Lion/Message/EWSOfflineGateway.h new file mode 100644 index 00000000..9617fb5d --- /dev/null +++ b/MailHeaders/Lion/Message/EWSOfflineGateway.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "NSKeyedUnarchiverDelegate-Protocol.h" + +@class EWSConnection, EWSResponseOperation, NSMutableDictionary; + +@interface EWSOfflineGateway : EWSGateway +{ + EWSConnection *_offlineConnection; + NSMutableDictionary *_offlineToRealEWSIdStrings; + id _offlineToRealEWSIdStringsLock; + EWSResponseOperation *_lastResponseDecoded; +} + +- (id)initWithAccount:(id)arg1 connection:(id)arg2; +- (id)initWithAccount:(id)arg1; +- (void)dealloc; +- (id)connection; +- (void)addRequest:(id)arg1; +- (id)resolvedIdStringForIdString:(id)arg1; +- (void)addOfflineToRealEWSIdStrings:(id)arg1 forRequest:(id)arg2; +- (void)takeRequestOffline:(id)arg1 error:(id)arg2; +- (id)playbackRequests:(id)arg1 offlineToRealEWSIdStrings:(id *)arg2 error:(id *)arg3; +@property(retain, nonatomic) NSMutableDictionary *offlineToRealEWSIdStrings; // @dynamic offlineToRealEWSIdStrings; +- (id)_EWSFolderFromCreateRequestOperation:(id)arg1; +- (id)_deleteRequestRemovingUndeletedItems:(id)arg1; +- (void)_moveMessageFromFailedCreateRequest:(id)arg1 withBackupManager:(id)arg2 toMailboxNamed:(id)arg3 actualName:(id *)arg4; +- (void)_undeleteMessagesFromFailedCopyRequest:(id)arg1; +- (void)_undeleteMessagesFromFailedDeleteRequest:(id)arg1; +- (id)unarchiver:(id)arg1 didDecodeObject:(id)arg2; +@property(retain) EWSResponseOperation *lastResponseDecoded; // @synthesize lastResponseDecoded=_lastResponseDecoded; +@property(retain) EWSConnection *offlineConnection; // @synthesize offlineConnection=_offlineConnection; + +@end + diff --git a/MailHeaders/Lion/Message/EWSPathToExtendedFieldType-MessageAdditions.h b/MailHeaders/Lion/Message/EWSPathToExtendedFieldType-MessageAdditions.h new file mode 100644 index 00000000..8f85e5ef --- /dev/null +++ b/MailHeaders/Lion/Message/EWSPathToExtendedFieldType-MessageAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "EWSPathToExtendedFieldType.h" + +@interface EWSPathToExtendedFieldType (MessageAdditions) ++ (id)_newExtendedFieldTypeForPropertyTag:(id)arg1 propertyType:(int)arg2; ++ (id)newExtendedFieldTypeForPropertyTag:(id)arg1; ++ (id)newExtendedFieldTypeForPropertyId:(long long)arg1; +@end + diff --git a/MailHeaders/Lion/Message/EWSRenameFolderRequestOperation.h b/MailHeaders/Lion/Message/EWSRenameFolderRequestOperation.h new file mode 100644 index 00000000..bbf0f975 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSRenameFolderRequestOperation.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSGetFolderResponseOperation, NSString; + +@interface EWSRenameFolderRequestOperation : EWSRequestOperation +{ + NSString *_folderIdString; + NSString *_folderName; + EWSGetFolderResponseOperation *_changeKeysResponse; +} + ++ (Class)classForResponse; +- (id)initWithEWSFolderIdString:(id)arg1 name:(id)arg2 gateway:(id)arg3; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (id)activityString; +- (BOOL)isFolderRequest; +- (id)prepareRequest; +@property(retain, nonatomic) EWSGetFolderResponseOperation *changeKeysResponse; // @synthesize changeKeysResponse=_changeKeysResponse; +@property(copy, nonatomic) NSString *folderName; // @synthesize folderName=_folderName; +@property(copy, nonatomic) NSString *folderIdString; // @synthesize folderIdString=_folderIdString; + +@end + diff --git a/MailHeaders/Lion/Message/EWSRequestOperation.h b/MailHeaders/Lion/Message/EWSRequestOperation.h new file mode 100644 index 00000000..fae4d431 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSRequestOperation.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSGateway, EWSResponseOperation; + +@interface EWSRequestOperation : MonitoredOperation +{ + EWSResponseOperation *_responseOperation; + EWSGateway *_gateway; + BOOL _isOffline; +} + ++ (Class)classForResponse; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)init; +- (void)dealloc; +- (id)prepareRequest; +- (void)executeOperation; +- (BOOL)isFolderRequest; +- (BOOL)isOffline; +- (void)goOffline; +- (void)setupOfflineResponse; +- (id)description; +@property(retain, nonatomic) EWSGateway *gateway; // @synthesize gateway=_gateway; +@property(retain, nonatomic) EWSResponseOperation *responseOperation; // @synthesize responseOperation=_responseOperation; + +@end + diff --git a/MailHeaders/Lion/Message/EWSResponseOperation.h b/MailHeaders/Lion/Message/EWSResponseOperation.h new file mode 100644 index 00000000..c6d341ec --- /dev/null +++ b/MailHeaders/Lion/Message/EWSResponseOperation.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSBaseMessageResponseType, EWSGateway, MFError; + +@interface EWSResponseOperation : MonitoredOperation +{ + EWSBaseMessageResponseType *_response; + EWSGateway *_gateway; + id _errorHandler; + MFError *_lastError; + BOOL _isOffline; +} + +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)init; +- (void)dealloc; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)executeOperation; +- (void)failWithError:(id)arg1; +- (void)handleResponseMessages; +- (BOOL)handleResponseMessage:(id)arg1; +- (BOOL)handleResponseMessage:(id)arg1 withObject:(id)arg2; +- (id)description; +@property BOOL isOffline; // @synthesize isOffline=_isOffline; +@property(retain) MFError *lastError; // @synthesize lastError=_lastError; +@property(retain, nonatomic) id errorHandler; // @synthesize errorHandler=_errorHandler; +@property(retain, nonatomic) EWSGateway *gateway; // @synthesize gateway=_gateway; +@property(retain) EWSBaseMessageResponseType *response; // @synthesize response=_response; + +@end + diff --git a/MailHeaders/Lion/Message/EWSSetUserOofSettingsRequestOperation.h b/MailHeaders/Lion/Message/EWSSetUserOofSettingsRequestOperation.h new file mode 100644 index 00000000..862d0bcd --- /dev/null +++ b/MailHeaders/Lion/Message/EWSSetUserOofSettingsRequestOperation.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSDuration, EWSEmailAddress, EWSReplyBodyType; + +@interface EWSSetUserOofSettingsRequestOperation : EWSRequestOperation +{ + EWSReplyBodyType *_internalReply; + EWSReplyBodyType *_externalReply; + long long _oofState; + EWSDuration *_duration; + EWSEmailAddress *_emailAddress; + long long _externalAudienceType; +} + ++ (Class)classForResponse; +- (id)initWithEmailAddress:(id)arg1 oofState:(long long)arg2 internalReply:(id)arg3 externalReply:(id)arg4 startTime:(id)arg5 endTime:(id)arg6 externalAudienceType:(long long)arg7 gateway:(id)arg8 errorHandler:(id)arg9; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (id)prepareRequest; +@property(nonatomic) long long externalAudienceType; // @synthesize externalAudienceType=_externalAudienceType; +@property(retain, nonatomic) EWSEmailAddress *emailAddress; // @synthesize emailAddress=_emailAddress; +@property(retain, nonatomic) EWSDuration *duration; // @synthesize duration=_duration; +@property(retain, nonatomic) EWSReplyBodyType *externalReply; // @synthesize externalReply=_externalReply; +@property(retain, nonatomic) EWSReplyBodyType *internalReply; // @synthesize internalReply=_internalReply; +@property(nonatomic) long long oofState; // @synthesize oofState=_oofState; + +@end + diff --git a/MailHeaders/Lion/Message/EWSSetUserOofSettingsResponseOperation.h b/MailHeaders/Lion/Message/EWSSetUserOofSettingsResponseOperation.h new file mode 100644 index 00000000..d5866977 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSSetUserOofSettingsResponseOperation.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface EWSSetUserOofSettingsResponseOperation : EWSResponseOperation +{ +} + +- (void)executeOperation; + +@end + diff --git a/MailHeaders/Lion/Message/EWSSizeEngine.h b/MailHeaders/Lion/Message/EWSSizeEngine.h new file mode 100644 index 00000000..f47fbfe3 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSSizeEngine.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface EWSSizeEngine : RemoteStoreSizeEngine +{ +} + +- (id)initWithAccount:(id)arg1; +- (void)_runWorkerThread; +- (void)_getSizeForMailboxUid:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/EWSStore.h b/MailHeaders/Lion/Message/EWSStore.h new file mode 100644 index 00000000..47f589bb --- /dev/null +++ b/MailHeaders/Lion/Message/EWSStore.h @@ -0,0 +1,55 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "EWSErrorHandler-Protocol.h" + +@class NSLock, NSMutableSet, NSString; + +@interface EWSStore : RemoteStore +{ + NSString *_folderId; + NSString *_syncState; + NSLock *_syncLock; + NSMutableSet *_flagsToSetDuringSync; +} + +- (id)initWithMailboxUid:(id)arg1 readOnly:(BOOL)arg2; +- (void)dealloc; +- (BOOL)canRebuild; +- (BOOL)allowsOverwrite; +- (BOOL)allowsDeleteInPlace; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (void)openSynchronouslyIfWaitingToOpen; +- (void)fetchSynchronously; +- (void)startSynchronization; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (void)messagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (int)undoAppendOfMessageIDs:(id)arg1; +- (void)forceResync; +- (BOOL)_copyMessagesByID:(id)arg1 toStore:(id)arg2 settingFlags:(id)arg3 newMessages:(id)arg4 error:(id *)arg5; +- (int)_appendToServerWithContext:(CDStruct_9f3328ff *)arg1 error:(id *)arg2; +- (void)_deleteMessagesOnServerSynchronouslyWithEWSItemIds:(id)arg1 fromFolderWithEWSIdString:(id)arg2; +- (void)deleteMessageWithEWSItemIdString:(id)arg1; +- (void)undeleteMessagesWithEWSItemIdStrings:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (void)_fetchChangesFromServer; +- (id)_EWSAccount; +- (id)_EWSConnection; +- (id)_gateway; +@property(copy) NSString *syncState; +- (void)_setSyncState:(id)arg1 persistToLibrary:(BOOL)arg2; +- (BOOL)_loadFolderId; +- (void)handleEWSError:(id)arg1; +@property(copy) NSString *folderId; // @synthesize folderId=_folderId; + +@end + diff --git a/MailHeaders/Lion/Message/EWSSuppressReadReceiptsRequestOperation.h b/MailHeaders/Lion/Message/EWSSuppressReadReceiptsRequestOperation.h new file mode 100644 index 00000000..dad262ce --- /dev/null +++ b/MailHeaders/Lion/Message/EWSSuppressReadReceiptsRequestOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSGetItemsResponseOperation; + +@interface EWSSuppressReadReceiptsRequestOperation : EWSRequestOperation +{ + EWSGetItemsResponseOperation *_getItemsResponse; +} + ++ (Class)classForResponse; +- (id)initWithGetItemsResponse:(id)arg1 gateway:(id)arg2; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (id)prepareRequest; +@property(retain, nonatomic) EWSGetItemsResponseOperation *getItemsResponse; // @synthesize getItemsResponse=_getItemsResponse; + +@end + diff --git a/MailHeaders/Lion/Message/EWSSyncFolderHierarchyRequestOperation.h b/MailHeaders/Lion/Message/EWSSyncFolderHierarchyRequestOperation.h new file mode 100644 index 00000000..3ef4cb0f --- /dev/null +++ b/MailHeaders/Lion/Message/EWSSyncFolderHierarchyRequestOperation.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface EWSSyncFolderHierarchyRequestOperation : EWSRequestOperation +{ + NSString *_syncState; +} + ++ (Class)classForResponse; +- (id)initWithSyncState:(id)arg1 createBlock:(id)arg2 updateBlock:(void)arg3 deleteBlock:(id)arg4 gateway:(void)arg5; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (id)activityString; +- (id)prepareRequest; +@property(copy, nonatomic) NSString *syncState; // @synthesize syncState=_syncState; + +@end + diff --git a/MailHeaders/Lion/Message/EWSSyncFolderHierarchyResponseOperation.h b/MailHeaders/Lion/Message/EWSSyncFolderHierarchyResponseOperation.h new file mode 100644 index 00000000..d9d8cfa8 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSSyncFolderHierarchyResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface EWSSyncFolderHierarchyResponseOperation : EWSResponseOperation +{ + id _createBlock; + id _updateBlock; + id _deleteBlock; +} + +- (void)dealloc; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)executeOperation; +@property(copy, nonatomic) id deleteBlock; // @synthesize deleteBlock=_deleteBlock; +@property(copy, nonatomic) id updateBlock; // @synthesize updateBlock=_updateBlock; +@property(copy, nonatomic) id createBlock; // @synthesize createBlock=_createBlock; + +@end + diff --git a/MailHeaders/Lion/Message/EWSSyncFolderItemsRequestOperation.h b/MailHeaders/Lion/Message/EWSSyncFolderItemsRequestOperation.h new file mode 100644 index 00000000..0e917cf3 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSSyncFolderItemsRequestOperation.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSFolderIdType, EWSTargetFolderIdType, NSString; + +@interface EWSSyncFolderItemsRequestOperation : EWSRequestOperation +{ + NSString *_syncState; + EWSTargetFolderIdType *_targetFolder; +} + ++ (id)keyPathsForValuesAffectingTargetFolderId; ++ (id)keyPathsForValuesAffectingTargetFolderName; ++ (Class)classForResponse; +- (id)initWithTargetFolder:(id)arg1 syncState:(id)arg2 gateway:(id)arg3; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (id)activityString; +- (id)prepareRequest; +@property(readonly) EWSFolderIdType *targetFolderId; // @dynamic targetFolderId; +@property(readonly) NSString *targetFolderName; // @dynamic targetFolderName; +@property(retain, nonatomic) EWSTargetFolderIdType *targetFolder; // @synthesize targetFolder=_targetFolder; +@property(copy, nonatomic) NSString *syncState; // @synthesize syncState=_syncState; + +@end + diff --git a/MailHeaders/Lion/Message/EWSSyncFolderItemsResponseMessageOperation.h b/MailHeaders/Lion/Message/EWSSyncFolderItemsResponseMessageOperation.h new file mode 100644 index 00000000..5763d2c1 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSSyncFolderItemsResponseMessageOperation.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class EWSFolderIdType, EWSStore, NSArray, NSMutableArray, NSString; + +@interface EWSSyncFolderItemsResponseMessageOperation : EWSResponseOperation +{ + EWSStore *_store; + EWSFolderIdType *_folderId; + NSString *_startSyncState; + NSString *_endSyncState; + NSMutableArray *_messagesWithoutHeaders; +} + ++ (void)initialize; +- (void)dealloc; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)executeOperation; +- (void)_handleSyncFolderItemsCreateOrUpdate:(id)arg1 forStore:(id)arg2 messagesToUpdate:(id)arg3 libraryIDs:(id)arg4 messagesToCreate:(id)arg5 updatedFlagsByMessage:(id)arg6 messagesThatFinished:(id)arg7; +- (void)_addFlagChanges:(unsigned int)arg1 mask:(unsigned int)arg2 forMessageWithEWSItemId:(id)arg3 toFlagChangesByMessage:(id)arg4; +- (BOOL)_addressList:(id)arg1 isEqualToAddressList:(id)arg2; +@property(readonly) NSArray *messagesWithoutHeaders; // @dynamic messagesWithoutHeaders; +- (void)_addMessageWithoutHeaders:(id)arg1; +@property(retain) NSString *endSyncState; // @synthesize endSyncState=_endSyncState; +@property(retain) NSString *startSyncState; // @synthesize startSyncState=_startSyncState; +@property(retain) EWSFolderIdType *folderId; // @synthesize folderId=_folderId; +@property(retain) EWSStore *store; // @synthesize store=_store; + +@end + diff --git a/MailHeaders/Lion/Message/EWSUpdateItemRequestOperation.h b/MailHeaders/Lion/Message/EWSUpdateItemRequestOperation.h new file mode 100644 index 00000000..43d12ad9 --- /dev/null +++ b/MailHeaders/Lion/Message/EWSUpdateItemRequestOperation.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "NSCoding-Protocol.h" + +@class EWSGetItemsResponseOperation, EWSSuppressReadReceiptsRequestOperation, NSArray, NSDictionary; + +@interface EWSUpdateItemRequestOperation : EWSRequestOperation +{ + NSArray *_EWSItemIds; + NSDictionary *_flags; + EWSGetItemsResponseOperation *_getItemsResponse; + EWSSuppressReadReceiptsRequestOperation *_suppressReadReceiptsRequest; + BOOL _messageType; +} + ++ (Class)classForResponse; +- (id)initWithEWSItemIds:(id)arg1 messageType:(BOOL)arg2 flags:(id)arg3 gateway:(id)arg4 errorHandler:(id)arg5; +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)dealloc; +- (void)_ewsUpdateItemRequestOperationCommonInitWithEWSItemIds:(id)arg1 messageType:(BOOL)arg2 flags:(id)arg3 errorHandler:(id)arg4; +- (void)setupOfflineResponse; +- (id)activityString; +- (id)prepareRequest; +@property(readonly) NSArray *itemsPriorToUpdate; // @dynamic itemsPriorToUpdate; +@property(nonatomic) BOOL messageType; // @synthesize messageType=_messageType; +@property(retain, nonatomic) EWSSuppressReadReceiptsRequestOperation *suppressReadReceiptsRequest; // @synthesize suppressReadReceiptsRequest=_suppressReadReceiptsRequest; +@property(retain, nonatomic) EWSGetItemsResponseOperation *getItemsResponse; // @synthesize getItemsResponse=_getItemsResponse; +@property(copy, nonatomic) NSDictionary *flags; // @synthesize flags=_flags; +@property(copy, nonatomic) NSArray *EWSItemIds; // @synthesize EWSItemIds=_EWSItemIds; + +@end + diff --git a/MailHeaders/Lion/Message/EWSUpdateItemSetFlagsRequestOperation.h b/MailHeaders/Lion/Message/EWSUpdateItemSetFlagsRequestOperation.h new file mode 100644 index 00000000..8f527acb --- /dev/null +++ b/MailHeaders/Lion/Message/EWSUpdateItemSetFlagsRequestOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface EWSUpdateItemSetFlagsRequestOperation : EWSUpdateItemRequestOperation +{ +} + +- (id)initWithEWSItemIds:(id)arg1 messageType:(BOOL)arg2 flags:(id)arg3 gateway:(id)arg4 errorHandler:(id)arg5; +- (id)awakeAfterUsingCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/EnclosureTransporter.h b/MailHeaders/Lion/Message/EnclosureTransporter.h new file mode 100644 index 00000000..46c04882 --- /dev/null +++ b/MailHeaders/Lion/Message/EnclosureTransporter.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString, NSURL; + +@interface EnclosureTransporter : NSObject +{ + NSURL *_URL; + NSString *_MIMEType; + long long _length; +} + +- (id)initWithEnclosure:(id)arg1; +- (void)dealloc; +@property long long length; // @synthesize length=_length; +@property(copy) NSString *MIMEType; // @synthesize MIMEType=_MIMEType; +@property(copy) NSURL *URL; // @synthesize URL=_URL; + +@end + diff --git a/MailHeaders/Lion/Message/EntryTransporter.h b/MailHeaders/Lion/Message/EntryTransporter.h new file mode 100644 index 00000000..0fd1bd63 --- /dev/null +++ b/MailHeaders/Lion/Message/EntryTransporter.h @@ -0,0 +1,50 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSDate, NSString, NSTimeZone, NSURL; + +@interface EntryTransporter : NSObject +{ + NSString *_title; + NSString *_identifier; + NSURL *_alternateURL; + NSURL *_baseURL; + BOOL _isRead; + BOOL _isFlagged; + long long _rank; + NSDate *_datePublished; + NSTimeZone *_timeZonePublished; + NSDate *_dateUpdated; + NSTimeZone *_timeZoneUpdated; + NSArray *_authors; + NSArray *_enclosures; + NSString *_HTMLContent; + NSString *_textContent; +} + ++ (id)transporterArrayWithEntries:(id)arg1; +- (id)initWithEntry:(id)arg1; +- (void)dealloc; +@property(retain) NSArray *enclosures; // @synthesize enclosures=_enclosures; +@property(retain) NSArray *authors; // @synthesize authors=_authors; +@property(copy) NSString *textContent; // @synthesize textContent=_textContent; +@property(copy) NSString *HTMLContent; // @synthesize HTMLContent=_HTMLContent; +@property(copy) NSTimeZone *timeZoneUpdated; // @synthesize timeZoneUpdated=_timeZoneUpdated; +@property(copy) NSDate *dateUpdated; // @synthesize dateUpdated=_dateUpdated; +@property(copy) NSTimeZone *timeZonePublished; // @synthesize timeZonePublished=_timeZonePublished; +@property(copy) NSDate *datePublished; // @synthesize datePublished=_datePublished; +@property long long rank; // @synthesize rank=_rank; +@property BOOL isFlagged; // @synthesize isFlagged=_isFlagged; +@property BOOL isRead; // @synthesize isRead=_isRead; +@property(copy) NSURL *baseURL; // @synthesize baseURL=_baseURL; +@property(copy) NSURL *alternateURL; // @synthesize alternateURL=_alternateURL; +@property(copy) NSString *identifier; // @synthesize identifier=_identifier; +@property(copy) NSString *title; // @synthesize title=_title; + +@end + diff --git a/MailHeaders/Lion/Message/ExchangeAccount.h b/MailHeaders/Lion/Message/ExchangeAccount.h new file mode 100644 index 00000000..0abc615a --- /dev/null +++ b/MailHeaders/Lion/Message/ExchangeAccount.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface ExchangeAccount : IMAPAccount +{ +} + ++ (void)initialize; ++ (id)accountTypeString; ++ (id)defaultPathNameForAccount; ++ (BOOL)usingActiveDirectory; ++ (id)outlookWebAccessServer; ++ (void)setOutlookWebAccessServer:(id)arg1; ++ (id)exchangeServer; ++ (void)setExchangeServer:(id)arg1; ++ (id)activeDirectoryUser; ++ (void)setActiveDirectoryUser:(id)arg1; ++ (id)activeDirectoryPassword; ++ (void)setActiveDirectoryPassword:(id)arg1; ++ (id)activeDirectoryFullName; ++ (id)activeDirectoryEmailAddress; +- (Class)connectionClass; +- (BOOL)storeJunkOnServerDefault; +- (void)updateFromSyncedDictionary:(id)arg1; +- (BOOL)storeDraftsOnServer; +- (BOOL)storeSentMessagesOnServer; +- (BOOL)storeJunkOnServer; +- (id)_defaultSpecialMailboxNameForType:(int)arg1; +- (void)filterMailboxList:(id)arg1 forMailbox:(id)arg2 options:(int)arg3; +- (id)_nonMailboxChildrenOfMailboxWithPath:(id)arg1 iisServer:(id)arg2; +- (void)_filterMailboxList:(id)arg1 forMailboxWithPath:(id)arg2 iisServer:(id)arg3; +- (id)additionalHeaderFields; +- (id)hostname; +- (void)setHostname:(id)arg1; +- (id)username; +- (void)setUsername:(id)arg1; +- (id)permanentPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)defaultsDictionary; +- (BOOL)isSyncable; +- (void)handleOpenMailboxError:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/ExchangeConnection.h b/MailHeaders/Lion/Message/ExchangeConnection.h new file mode 100644 index 00000000..b10d9c3b --- /dev/null +++ b/MailHeaders/Lion/Message/ExchangeConnection.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface ExchangeConnection : IMAPConnection +{ +} + +- (BOOL)_isFetchResponseValid:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/ExternalAuthScheme.h b/MailHeaders/Lion/Message/ExternalAuthScheme.h new file mode 100644 index 00000000..71cd8451 --- /dev/null +++ b/MailHeaders/Lion/Message/ExternalAuthScheme.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface ExternalAuthScheme : AuthScheme +{ +} + +- (id)name; +- (id)humanReadableName; +- (BOOL)requiresPassword; +- (long long)securityLevel; +- (unsigned int)applescriptScheme; + +@end + diff --git a/MailHeaders/Lion/Message/FeedTransporter.h b/MailHeaders/Lion/Message/FeedTransporter.h new file mode 100644 index 00000000..d202728d --- /dev/null +++ b/MailHeaders/Lion/Message/FeedTransporter.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSDate, NSError, NSString, NSTimeZone, NSURL; + +@interface FeedTransporter : NSObject +{ + NSString *_title; + NSString *_identifier; + NSURL *_alternateURL; + NSURL *_URL; + NSString *_login; + NSString *_password; + NSError *_lastError; + NSDate *_dateUpdated; + NSTimeZone *_timeZoneUpdated; +} + ++ (id)transporterWithFeed:(id)arg1; +- (id)initWithFeed:(id)arg1; +- (void)dealloc; +@property(copy) NSTimeZone *timeZoneUpdated; // @synthesize timeZoneUpdated=_timeZoneUpdated; +@property(copy) NSDate *dateUpdated; // @synthesize dateUpdated=_dateUpdated; +@property(copy) NSError *lastError; // @synthesize lastError=_lastError; +@property(copy) NSString *password; // @synthesize password=_password; +@property(copy) NSString *login; // @synthesize login=_login; +@property(copy) NSURL *URL; // @synthesize URL=_URL; +@property(copy) NSURL *alternateURL; // @synthesize alternateURL=_alternateURL; +@property(copy) NSString *identifier; // @synthesize identifier=_identifier; +@property(copy) NSString *title; // @synthesize title=_title; + +@end + diff --git a/MailHeaders/Lion/Message/GSSAPIAuthScheme.h b/MailHeaders/Lion/Message/GSSAPIAuthScheme.h new file mode 100644 index 00000000..791a2241 --- /dev/null +++ b/MailHeaders/Lion/Message/GSSAPIAuthScheme.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface GSSAPIAuthScheme : AuthScheme +{ +} + +- (id)name; +- (id)humanReadableName; +- (BOOL)requiresPassword; +- (BOOL)hasEncryption; +- (long long)securityLevel; +- (unsigned int)applescriptScheme; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPAccount.h b/MailHeaders/Lion/Message/IMAPAccount.h new file mode 100644 index 00000000..f4412de1 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPAccount.h @@ -0,0 +1,178 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class IMAPConnectionPool, IMAPOperationCache, LibraryIMAPStore, NSArray, NSDictionary, NSLock, NSMutableArray, NSMutableDictionary, NSMutableSet, NSOperationQueue, NSString; + +@interface IMAPAccount : RemoteStoreAccount +{ + double _lastUnreadCountsUpdateTime; + double _lastUnreadCountsAndNewMessagesUpdateTime; + double _lastMailboxListFetchTime; + NSArray *_lastKnownCapabilities; + NSMutableArray *_namespacePrefixes; + NSString *_separatorChar; + IMAPConnectionPool *_connectionPool; + NSLock *_connectionPoolLock; + IMAPOperationCache *_offlineCache; + NSString *_serverPathPrefixWithFilesystemSeparator; + NSString *_serverPathPrefixAsFilesystemPath; + NSLock *_fsPrefixLock; + NSLock *_mailboxListingLock; + NSMutableSet *_mailboxURLsToSynchronize; + NSMutableDictionary *_statusFlagCheckInfo; + NSMutableDictionary *_IMAPMailboxes; + NSMutableDictionary *_IMAPQuotaRoots; + LibraryIMAPStore *_inboxStore; + NSOperationQueue *_imapQueue; + unsigned int _readBufferSize; + BOOL _lastConnectionFailed; + BOOL _shouldIncludePrefixInPath; + BOOL _allowsInputForConnectionProblems; + BOOL _isFetchingUnreadCountsForAllMailboxes; + BOOL _isFetchingUnreadCountsAndCheckingNewMessagesForAllMailboxes; + BOOL _recoveringFromConnectionLoss; +} + ++ (void)initialize; ++ (id)accountTypeString; ++ (void)_deleteQueuedMailboxes:(id)arg1; +- (id)initWithAccountInfo:(id)arg1; +- (void)dealloc; +- (void)completeDeferredInitialization; +- (void)_readCustomInfoFromMailboxCache:(id)arg1; +- (void)_writeCustomInfoToMailboxCache:(id)arg1; +- (void)saveCache; +- (void)updateFromSyncedDictionary:(id)arg1; +- (void)doRoutineCleanup; +- (BOOL)isSyncable; +- (Class)storeClass; +- (id)mailboxPathExtension; +- (unsigned int)defaultPortNumber; +- (unsigned int)defaultSecurePortNumber; +- (id)serviceName; +- (id)secureServiceName; +- (id)saslProfileName; +- (BOOL)requiresAuthentication; +- (Class)connectionClass; +- (id)authenticatedConnection; +- (BOOL)compactWhenClosingMailboxes; +- (void)setCompactWhenClosingMailboxes:(BOOL)arg1; +- (BOOL)useIDLEIfAvailable; +- (void)setUseIDLEIfAvailable:(BOOL)arg1; +- (BOOL)_setChildren:(id)arg1 forMailboxUid:(id)arg2; +- (id)primaryMailboxUid; +- (id)iaServiceType; +- (BOOL)handleResponseCodeFromResponse:(id)arg1; +- (void)_handleAlertResponse:(id)arg1; +- (unsigned int)readBufferSize; +- (void)setReadBufferSize:(unsigned int)arg1; +- (void)synchronizeAllMailboxes; +- (BOOL)needToSynchronizeMailboxCaches; +- (void)didSynchronizeMailboxCachesAndFoundChanges:(BOOL)arg1; +- (void)_checkForNewMessagesInStore:(id)arg1; +- (id)_dataForTemporaryUid:(unsigned int)arg1; +- (unsigned long long)minimumPartialDownloadSize; +- (BOOL)allowsPartialDownloads; +- (void)setAllowsPartialDownloads:(BOOL)arg1; +- (void)_clearAllPathBasedCachesAndDelete:(BOOL)arg1; +@property long long gmailCapabilitiesSupport; +@property(copy) NSDictionary *serverID; +- (BOOL)_connectAndAuthenticate:(id)arg1; +- (void)handleOpenMailboxError:(id)arg1; +- (id)gatewayForStore:(id)arg1 options:(int)arg2; +- (id)gatewayForExistingConnectionToMailbox:(id)arg1; +- (void)recoverFromConnectionLoss; +- (void)invalidateMailboxWithName:(id)arg1 expunge:(BOOL)arg2 URLToCompact:(id)arg3; +- (void)_invalidateMailboxWithName:(id)arg1 expunge:(BOOL)arg2 URLToCompact:(id)arg3; +- (id)_gatewayForMailboxUid:(id)arg1 name:(id)arg2 options:(int)arg3; +- (id)_getPotentialGatewayForMailbox:(id)arg1 options:(int)arg2 createdNewConnection:(char *)arg3 needsSelect:(char *)arg4; +- (BOOL)_shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1; +- (BOOL)_recoverFromConnectionlessState; +- (void)_releaseAllConnectionsAndCallSuper:(BOOL)arg1 saveOfflineCache:(BOOL)arg2; +- (void)releaseAllConnections; +- (void)_validateConnections; +- (void)validateConnections; +- (void)filterMailboxList:(id)arg1 forMailbox:(id)arg2 options:(int)arg3; +- (void)_setHadUnreadCountMismatchForURL:(id)arg1; +- (long long)nextFlagCheckAllowedForMailboxUid:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (id)IMAPMailboxForMailboxUid:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)IMAPMailboxForMailboxName:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)_IMAPMailboxForMailboxUid:(id)arg1 name:(id)arg2 createIfNeeded:(BOOL)arg3; +- (id)_addIMAPMailboxForMailboxUid:(id)arg1 name:(id)arg2; +- (void)_renameIMAPMailboxWithMailboxUid:(id)arg1 fromName:(id)arg2 toName:(id)arg3; +- (void)_removeIMAPMailboxWithName:(id)arg1; +- (void)_startObserving:(BOOL)arg1 IMAPMailbox:(id)arg2; +- (id)quotaRootForName:(id)arg1 createIfNeeded:(BOOL)arg2; +- (void)clearQuotaRoots; +- (void)_setIsOffline:(BOOL)arg1; +- (void)setIsOffline:(BOOL)arg1; +- (void)_asynchronouslyFetchUnreadCountsCheckForNewMessages:(BOOL)arg1; +- (void)fetchSynchronouslyIsAuto:(id)arg1; +- (void)_setSeparatorChar:(id)arg1; +- (id)separatorChar; +- (id)lastKnownCapabilities; +- (BOOL)supportsIDLE; +- (id)additionalHeaderFields; +- (BOOL)_synchronizeMailboxListWithUserInput:(BOOL)arg1; +- (void)_synchronizeMailboxListDuringMailCheck; +- (id)_listingForMailboxUid:(id)arg1 listAllChildren:(BOOL)arg2 onlySubscribed:(BOOL)arg3 withUserInput:(BOOL)arg4; +- (id)_namespacePrefixesForPrivate:(BOOL)arg1 public:(BOOL)arg2 shared:(BOOL)arg3; +- (id)_recursivelyFilterMailboxList:(id)arg1 accordingToList:(id)arg2; +- (id)_listingForMailboxUid:(id)arg1 listAllChildren:(BOOL)arg2 withUserInput:(BOOL)arg3; +- (BOOL)_createMailbox:(id)arg1 withGateway:(id)arg2; +- (id)createMailboxWithParent:(id)arg1 name:(id)arg2 displayName:(id)arg3; +- (id)validNameForMailbox:(id)arg1 fromDisplayName:(id)arg2 error:(id *)arg3; +- (BOOL)_askToChangePathPrefixToCreateMailbox:(id)arg1 displayName:(id)arg2 withGateway:(id)arg3; +- (BOOL)_deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (id)_specialMailboxNameForType:(int)arg1; +- (id)_specialMailboxUidWithType:(int)arg1 create:(BOOL)arg2 isLocal:(BOOL)arg3; +- (void)_fetchUnreadCountsForMailboxUid:(id)arg1 recursively:(BOOL)arg2 gateway:(id)arg3 checkForNewMessages:(BOOL)arg4; +- (void)_fetchUnreadCountsForMailboxUid:(id)arg1 recursively:(BOOL)arg2 gateway:(id)arg3; +- (void)_fetchUnreadCountsCheckForNewMessages:(BOOL)arg1; +- (void)_synchronizeAccountWithServerWithUserInput:(id)arg1; +- (id)_copyMailboxUidWithParent:(id)arg1 name:(id)arg2 pathComponent:(id)arg3 attributes:(unsigned long long)arg4 existingMailboxUid:(id)arg5; +- (void)_synchronouslyLoadListingForParent:(id)arg1; +- (void)refreshMailboxListingRootedAtUid:(id)arg1; +- (void)_waitForMailboxListingLoadToComplete; +- (void)_mailboxesWereRemovedFromTree:(id)arg1 withFileSystemPaths:(id)arg2; +- (void)_recursivelyModifySubscriptions:(BOOL)arg1 forMailbox:(id)arg2 children:(id)arg3 withGateway:(id)arg4; +- (BOOL)renameMailbox:(id)arg1 newName:(id)arg2 parent:(id)arg3; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)_pathComponentForUidName:(id)arg1; +- (id)_uidNameForPathComponent:(id)arg1; +- (id)_pathForMailboxName:(id)arg1 toCreateInMailboxUid:(id)arg2; +- (id)_nameForMailboxUid:(id)arg1; +- (id)nameForMailboxUid:(id)arg1; +- (id)_mailboxUidForName:(id)arg1; +- (BOOL)canMailboxBeDeleted:(id)arg1; +- (id)serverPathPrefix; +- (void)_setServerPathPrefix:(id)arg1 permanently:(BOOL)arg2 shouldSync:(BOOL)arg3; +- (void)setServerPathPrefix:(id)arg1 permanently:(BOOL)arg2; +- (id)_fileSystemServerPathPrefix:(BOOL)arg1; +- (void)_setFileSystemServerPathPrefix; +- (void)syncFileSystemWithServerPathPrefix; +- (id)_mailboxPathPrefix:(BOOL)arg1; +- (void)_loadEntriesFromFileSystemPath:(id)arg1 parent:(id)arg2; +- (void)deleteMessagesFromMailboxUid:(id)arg1 olderThanNumberOfDays:(unsigned long long)arg2; +- (id)offlineCacheIfOffline; +- (id)offlineCache; +- (void)_clearOfflineCache; +- (id)mailboxUidForRelativePath:(id)arg1 isFilesystemPath:(BOOL)arg2 create:(BOOL)arg3; +- (id)_URLPersistenceScheme; +- (id)_infoForMatchingURL:(id)arg1; +- (BOOL)storesUnseenCount; +- (id)remoteTaskQueue; +@property(retain) LibraryIMAPStore *inboxStore; // @synthesize inboxStore=_inboxStore; +@property BOOL recoveringFromConnectionLoss; // @synthesize recoveringFromConnectionLoss=_recoveringFromConnectionLoss; +@property(retain) IMAPConnectionPool *connectionPool; // @synthesize connectionPool=_connectionPool; +- (int)messageCaching; +- (void)setMessageCaching:(int)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPAggregateClientOperation.h b/MailHeaders/Lion/Message/IMAPAggregateClientOperation.h new file mode 100644 index 00000000..b7573f89 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPAggregateClientOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableArray; + +@interface IMAPAggregateClientOperation : IMAPClientOperation +{ + NSMutableArray *_operations; +} + +- (id)initWithCommandType:(int)arg1 operations:(id)arg2; +- (void)dealloc; +- (int)composition; +- (void)setGateway:(id)arg1; +- (void)cleanupAfterCompletion; +@property(retain) NSMutableArray *operations; // @synthesize operations=_operations; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPAggregateFetchUIDOperation.h b/MailHeaders/Lion/Message/IMAPAggregateFetchUIDOperation.h new file mode 100644 index 00000000..c0b22585 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPAggregateFetchUIDOperation.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPAggregateFetchUIDOperation : IMAPAggregateClientOperation +{ + unsigned int _expectedSize; +} + +- (id)initWithOperations:(id)arg1 expectedSize:(unsigned int)arg2; +- (id)commandTypeString; +- (void)cleanupAfterCompletion; +@property unsigned int expectedSize; // @synthesize expectedSize=_expectedSize; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPAggregateGetQuotaRootOperation.h b/MailHeaders/Lion/Message/IMAPAggregateGetQuotaRootOperation.h new file mode 100644 index 00000000..8568c7d2 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPAggregateGetQuotaRootOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPAggregateGetQuotaRootOperation : IMAPAggregateClientOperation +{ +} + +- (id)initWithOperations:(id)arg1; +- (id)commandTypeString; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPAggregateStatusOperation.h b/MailHeaders/Lion/Message/IMAPAggregateStatusOperation.h new file mode 100644 index 00000000..4949d9bb --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPAggregateStatusOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPAggregateStatusOperation : IMAPAggregateClientOperation +{ +} + +- (id)initWithOperations:(id)arg1; +- (id)commandTypeString; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPAttachmentsDownload.h b/MailHeaders/Lion/Message/IMAPAttachmentsDownload.h new file mode 100644 index 00000000..7f792b6b --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPAttachmentsDownload.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPAttachmentsDownload : IMAPCompoundDownload +{ + id _message; +} + +- (void)dealloc; +- (id)initWithLibraryMessage:(id)arg1; +- (id)createCopy; +- (void)saveCompletedDownloads; +@property(retain) id message; // @synthesize message=_message; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientAppendOperation.h b/MailHeaders/Lion/Message/IMAPClientAppendOperation.h new file mode 100644 index 00000000..4b6f8eee --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientAppendOperation.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class ActivityMonitor, NSArray, NSData, NSDate, NSDictionary; + +@interface IMAPClientAppendOperation : IMAPClientMailboxOperation +{ + NSDate *_dateReceived; + NSArray *_serverFlags; + NSData *_data; + NSDictionary *_messageInfo; + BOOL _shouldTryCreate; + ActivityMonitor *_progressMonitor; +} + +- (id)initWithMailboxName:(id)arg1 flags:(id)arg2 dateReceived:(id)arg3 data:(id)arg4; +- (void)dealloc; +- (id)commandTypeString; +- (id)detailsString; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +- (BOOL)executeOnConnection:(id)arg1; +@property(retain) ActivityMonitor *progressMonitor; // @synthesize progressMonitor=_progressMonitor; +@property BOOL shouldTryCreate; // @synthesize shouldTryCreate=_shouldTryCreate; +@property(retain) NSDictionary *messageInfo; // @synthesize messageInfo=_messageInfo; +@property(retain) NSData *data; // @synthesize data=_data; +@property(retain) NSArray *serverFlags; // @synthesize serverFlags=_serverFlags; +@property(retain) NSDate *dateReceived; // @synthesize dateReceived=_dateReceived; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientAuthenticateOperation.h b/MailHeaders/Lion/Message/IMAPClientAuthenticateOperation.h new file mode 100644 index 00000000..5bd543e5 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientAuthenticateOperation.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class SASLClient; + +@interface IMAPClientAuthenticateOperation : IMAPSingleClientOperation +{ + SASLClient *_authenticator; + BOOL _includeInitialResponse; +} + +- (id)initWithAuthenticator:(id)arg1; +- (void)dealloc; +- (id)commandTypeString; +- (id)debugCommandString; +- (BOOL)handlesAllUntaggedResponses; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +- (BOOL)executeOnConnection:(id)arg1; +@property BOOL includeInitialResponse; // @synthesize includeInitialResponse=_includeInitialResponse; +@property(retain) SASLClient *authenticator; // @synthesize authenticator=_authenticator; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientCapabilityOperation.h b/MailHeaders/Lion/Message/IMAPClientCapabilityOperation.h new file mode 100644 index 00000000..37bf0327 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientCapabilityOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientCapabilityOperation : IMAPSingleClientOperation +{ +} + +- (id)init; +- (id)commandTypeString; +- (BOOL)executeOnConnection:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientCheckOperation.h b/MailHeaders/Lion/Message/IMAPClientCheckOperation.h new file mode 100644 index 00000000..efd86b7d --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientCheckOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientCheckOperation : IMAPSingleClientOperation +{ +} + +- (id)init; +- (id)commandTypeString; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientCloseOperation.h b/MailHeaders/Lion/Message/IMAPClientCloseOperation.h new file mode 100644 index 00000000..70b8d6be --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientCloseOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientCloseOperation : IMAPClientUnselectOperation +{ +} + +- (id)init; +- (id)commandTypeString; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientCreateOperation.h b/MailHeaders/Lion/Message/IMAPClientCreateOperation.h new file mode 100644 index 00000000..d28c365e --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientCreateOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientCreateOperation : IMAPClientMailboxOperation +{ +} + +- (id)initWithMailboxName:(id)arg1; +- (id)commandTypeString; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientData.h b/MailHeaders/Lion/Message/IMAPClientData.h new file mode 100644 index 00000000..1120bbb3 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientData.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableData, NSMutableString; + +@interface IMAPClientData : NSObject +{ + NSMutableData *_data; + NSMutableString *_commandString; + IMAPClientData *_nextData; + struct _NSRange _dontLogRange; + BOOL _isFrozen; +} + +- (void)dealloc; +- (id)initWithData:(id)arg1; +- (id)init; +- (id)initWithStringWaitingForArguments:(id)arg1; +- (void)addStringArgument:(id)arg1; +- (void)addDataArgument:(id)arg1 literalPlus:(BOOL)arg2; +- (void)freeze; +@property BOOL isFrozen; // @synthesize isFrozen=_isFrozen; +@property struct _NSRange dontLogRange; // @synthesize dontLogRange=_dontLogRange; +@property(retain) IMAPClientData *nextData; // @synthesize nextData=_nextData; +@property(retain) NSMutableString *commandString; // @synthesize commandString=_commandString; +@property(retain) NSMutableData *data; // @synthesize data=_data; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientDeleteOperation.h b/MailHeaders/Lion/Message/IMAPClientDeleteOperation.h new file mode 100644 index 00000000..51987d55 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientDeleteOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientDeleteOperation : IMAPClientMailboxOperation +{ +} + +- (id)initWithMailboxName:(id)arg1; +- (id)commandTypeString; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientDoneOperation.h b/MailHeaders/Lion/Message/IMAPClientDoneOperation.h new file mode 100644 index 00000000..1b12a44a --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientDoneOperation.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSDate; + +@interface IMAPClientDoneOperation : IMAPSingleClientOperation +{ + NSDate *_resetDate; + BOOL _isReallyReady; + BOOL _shouldQueueIdleWhenFinished; + BOOL _didQueueIdle; +} + +- (id)init; +- (void)dealloc; +- (BOOL)shouldQueueIdleWhenFinished; +- (BOOL)setShouldQueueIdleWhenFinished:(BOOL)arg1; +- (BOOL)_shouldQueueIdleNow; +- (id)commandTypeString; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +@property(retain) NSDate *resetDate; +- (void)setSequenceNumber:(unsigned long long)arg1; +- (BOOL)executeOnConnection:(id)arg1; +- (void)cancel; +- (BOOL)isReady; +- (BOOL)updateReadiness; +- (void)setResetDateEarlierThanNow; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientExamineOperation.h b/MailHeaders/Lion/Message/IMAPClientExamineOperation.h new file mode 100644 index 00000000..3170f21b --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientExamineOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientExamineOperation : IMAPClientSelectOperation +{ +} + +- (id)initWithMailboxName:(id)arg1; +- (id)commandTypeString; +- (BOOL)readOnly; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientExpungeOperation.h b/MailHeaders/Lion/Message/IMAPClientExpungeOperation.h new file mode 100644 index 00000000..06f17c87 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientExpungeOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientExpungeOperation : IMAPSingleClientOperation +{ +} + +- (id)init; +- (id)commandTypeString; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientFetchBodyDataItem.h b/MailHeaders/Lion/Message/IMAPClientFetchBodyDataItem.h new file mode 100644 index 00000000..d902911c --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientFetchBodyDataItem.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray, NSString; + +@interface IMAPClientFetchBodyDataItem : IMAPClientFetchDataItem +{ + int _textSectionSpecifier; + NSString *_partSectionSpecifier; + NSArray *_headerFieldNames; + BOOL _peek; + struct _NSRange _dataRange; +} + ++ (id)newSectionSpecifierFromPart:(id)arg1 text:(int)arg2; +- (void)dealloc; +- (id)init; +- (id)initWithPartSectionSpecifier:(id)arg1 textSectionSpecifier:(int)arg2 dataRange:(struct _NSRange)arg3; +- (id)initWithHeaderFieldNames:(id)arg1; +- (id)initWithPartSectionSpecifier:(id)arg1 textSectionSpecifier:(int)arg2 peek:(BOOL)arg3 headerFieldNames:(id)arg4 dataRange:(struct _NSRange)arg5; +- (BOOL)isHeader; +- (void)_finalizeCommandString; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +@property struct _NSRange dataRange; // @synthesize dataRange=_dataRange; +@property BOOL peek; // @synthesize peek=_peek; +@property(retain) NSArray *headerFieldNames; // @synthesize headerFieldNames=_headerFieldNames; +@property(copy) NSString *partSectionSpecifier; // @synthesize partSectionSpecifier=_partSectionSpecifier; +@property int textSectionSpecifier; // @synthesize textSectionSpecifier=_textSectionSpecifier; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientFetchDataItem.h b/MailHeaders/Lion/Message/IMAPClientFetchDataItem.h new file mode 100644 index 00000000..20d10f25 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientFetchDataItem.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString; + +@interface IMAPClientFetchDataItem : NSObject +{ + NSString *_commandString; +} + ++ (id)flagsDataItem; ++ (id)UIDDataItem; ++ (id)bodyStructureDataItem; ++ (id)internalDateDataItem; ++ (id)sizeDataItem; +- (void)dealloc; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +@property(copy) NSString *commandString; // @synthesize commandString=_commandString; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientFetchOperation.h b/MailHeaders/Lion/Message/IMAPClientFetchOperation.h new file mode 100644 index 00000000..1d8e6d22 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientFetchOperation.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableArray; + +@interface IMAPClientFetchOperation : IMAPSingleClientOperation +{ + CDStruct_f792af56 _range; + NSMutableArray *_dataItems; + id _responseHandler; +} + ++ (id)_headersToFetch; ++ (id)_fetchDataItemsForMessageSkeletonsWithHeaders:(id)arg1; +- (id)init; +- (id)initWithRange:(CDStruct_f792af56)arg1; +- (void)dealloc; +- (id)commandTypeString; +- (void)addDataItem:(id)arg1; +- (void)addMessageSkeletonDataItemsWithAdditionalHeaderFields:(id)arg1; +- (void)addMessageUidsAndFlagsDataItemsWithAdditionalHeaderFields:(id)arg1; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +- (BOOL)executeOnConnection:(id)arg1; +- (id)_newMessageSetCommandString; +- (id)_fetchDataItemsForMessageSkeletonsWithAdditionalHeaderFields:(id)arg1; +@property(retain) id responseHandler; // @synthesize responseHandler=_responseHandler; +@property(retain) NSMutableArray *dataItems; // @synthesize dataItems=_dataItems; +@property CDStruct_f792af56 range; // @synthesize range=_range; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientFetchUIDOperation.h b/MailHeaders/Lion/Message/IMAPClientFetchUIDOperation.h new file mode 100644 index 00000000..7d189848 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientFetchUIDOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSIndexSet; + +@interface IMAPClientFetchUIDOperation : IMAPClientFetchOperation +{ + NSIndexSet *_UIDs; +} + +- (id)init; +- (id)initWithUIDs:(id)arg1; +- (void)dealloc; +- (id)commandTypeString; +- (id)_newMessageSetCommandString; +@property(retain) NSIndexSet *UIDs; // @synthesize UIDs=_UIDs; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientGetQuotaOperation.h b/MailHeaders/Lion/Message/IMAPClientGetQuotaOperation.h new file mode 100644 index 00000000..62ce6e17 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientGetQuotaOperation.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface IMAPClientGetQuotaOperation : IMAPSingleClientOperation +{ + NSString *_quotaRoot; +} + +- (id)initWithQuotaRoot:(id)arg1; +- (void)dealloc; +- (id)commandTypeString; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +@property(copy) NSString *quotaRoot; // @synthesize quotaRoot=_quotaRoot; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientGetQuotaRootOperation.h b/MailHeaders/Lion/Message/IMAPClientGetQuotaRootOperation.h new file mode 100644 index 00000000..e11ab329 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientGetQuotaRootOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientGetQuotaRootOperation : IMAPClientMailboxOperation +{ +} + +- (id)initWithMailboxName:(id)arg1; +- (id)commandTypeString; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientIDOperation.h b/MailHeaders/Lion/Message/IMAPClientIDOperation.h new file mode 100644 index 00000000..a351ec69 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientIDOperation.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientIDOperation : IMAPSingleClientOperation +{ +} + +- (id)init; +- (id)commandTypeString; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +- (BOOL)executeOnConnection:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientIdleOperation.h b/MailHeaders/Lion/Message/IMAPClientIdleOperation.h new file mode 100644 index 00000000..97da864b --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientIdleOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientIdleOperation : IMAPSingleClientOperation +{ +} + +- (id)init; +- (id)commandTypeString; +- (BOOL)executeOnConnection:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientLSubOperation.h b/MailHeaders/Lion/Message/IMAPClientLSubOperation.h new file mode 100644 index 00000000..fa03231a --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientLSubOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientLSubOperation : IMAPClientListOperation +{ +} + +- (id)initWithMailboxName:(id)arg1 referenceName:(id)arg2 options:(int)arg3; +- (id)commandTypeString; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientListOperation.h b/MailHeaders/Lion/Message/IMAPClientListOperation.h new file mode 100644 index 00000000..3dc0d981 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientListOperation.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableDictionary, NSString; + +@interface IMAPClientListOperation : IMAPSingleClientOperation +{ + NSString *_mailboxName; + NSString *_referenceName; + int _options; + NSMutableDictionary *_listing; + NSString *_separator; +} + +- (id)initWithMailboxName:(id)arg1 referenceName:(id)arg2 options:(int)arg3; +- (id)initWithMailboxName:(id)arg1 options:(int)arg2; +- (void)dealloc; +- (id)commandTypeString; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +- (BOOL)executeOnConnection:(id)arg1; +@property(copy) NSString *separator; // @synthesize separator=_separator; +@property(retain) NSMutableDictionary *listing; // @synthesize listing=_listing; +@property int options; // @synthesize options=_options; +@property(copy) NSString *referenceName; // @synthesize referenceName=_referenceName; +@property(copy) NSString *mailboxName; // @synthesize mailboxName=_mailboxName; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientLoginOperation.h b/MailHeaders/Lion/Message/IMAPClientLoginOperation.h new file mode 100644 index 00000000..52db7380 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientLoginOperation.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSData, NSString; + +@interface IMAPClientLoginOperation : IMAPSingleClientOperation +{ + NSString *_username; + NSString *_quotedUsername; + NSString *_password; + NSString *_quotedPassword; + NSData *_literalPassword; +} + +- (id)initWithUsername:(id)arg1 password:(id)arg2; +- (void)dealloc; +- (id)commandTypeString; +- (id)debugCommandString; +- (BOOL)handlesAllUntaggedResponses; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +- (BOOL)executeOnConnection:(id)arg1; +@property(retain) NSData *literalPassword; // @synthesize literalPassword=_literalPassword; +@property(copy) NSString *quotedPassword; // @synthesize quotedPassword=_quotedPassword; +@property(copy) NSString *password; // @synthesize password=_password; +@property(copy) NSString *quotedUsername; // @synthesize quotedUsername=_quotedUsername; +@property(copy) NSString *username; // @synthesize username=_username; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientLogoutOperation.h b/MailHeaders/Lion/Message/IMAPClientLogoutOperation.h new file mode 100644 index 00000000..5d6d5de3 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientLogoutOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientLogoutOperation : IMAPSingleClientOperation +{ +} + +- (id)init; +- (id)commandTypeString; +- (BOOL)executeOnConnection:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientMailboxOperation.h b/MailHeaders/Lion/Message/IMAPClientMailboxOperation.h new file mode 100644 index 00000000..ca92af34 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientMailboxOperation.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface IMAPClientMailboxOperation : IMAPSingleClientOperation +{ + NSString *_mailboxName; + NSString *_mailboxArgumentName; +} + +- (id)initWithMailboxName:(id)arg1; +- (id)_initWithCommandType:(int)arg1 mailboxName:(id)arg2; +- (void)dealloc; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +- (id)simpleDescriptionString; +@property(copy) NSString *mailboxArgumentName; // @synthesize mailboxArgumentName=_mailboxArgumentName; +@property(copy) NSString *mailboxName; // @synthesize mailboxName=_mailboxName; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientNamespaceOperation.h b/MailHeaders/Lion/Message/IMAPClientNamespaceOperation.h new file mode 100644 index 00000000..d2f75b83 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientNamespaceOperation.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class IMAPAccount, NSArray, NSString; + +@interface IMAPClientNamespaceOperation : IMAPSingleClientOperation +{ + IMAPAccount *_account; + NSString *_separatorChar; + NSArray *_privateNamespaces; + NSArray *_publicNamespaces; + NSArray *_sharedNamespaces; +} + +- (id)initWithAccount:(id)arg1 separatorChar:(id)arg2; +- (void)dealloc; +- (id)commandTypeString; +- (BOOL)executeOnConnection:(id)arg1; +@property(retain) NSArray *sharedNamespaces; // @synthesize sharedNamespaces=_sharedNamespaces; +@property(retain) NSArray *publicNamespaces; // @synthesize publicNamespaces=_publicNamespaces; +@property(retain) NSArray *privateNamespaces; // @synthesize privateNamespaces=_privateNamespaces; +@property(copy) NSString *separatorChar; // @synthesize separatorChar=_separatorChar; +@property(retain) IMAPAccount *account; // @synthesize account=_account; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientNoopOperation.h b/MailHeaders/Lion/Message/IMAPClientNoopOperation.h new file mode 100644 index 00000000..53e2b7dc --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientNoopOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientNoopOperation : IMAPSingleClientOperation +{ +} + +- (id)init; +- (id)commandTypeString; +- (BOOL)executeOnConnection:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientOperation.h b/MailHeaders/Lion/Message/IMAPClientOperation.h new file mode 100644 index 00000000..c6733367 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientOperation.h @@ -0,0 +1,48 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSOperation.h" + +@class IMAPGateway, NSString; + +@interface IMAPClientOperation : NSOperation +{ + int _commandType; + IMAPGateway *_gateway; + int _completionState; +} + ++ (id)newIMAPQuotedString:(id)arg1; ++ (id)newIMAPStringForMailboxName:(id)arg1; ++ (id)IMAPNeedsLiteralCharacterSet; ++ (id)_IMAPNeedsQuoteCharacterSet; +- (id)init; +- (id)initWithCommandType:(int)arg1; +- (void)dealloc; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(readonly) NSString *commandTypeString; +@property(readonly) BOOL alwaysAllowToComplete; +@property(readonly) int minRequiredConnectionState; +@property(readonly) int maxAllowedConnectionState; +@property(readonly) int composition; +@property(readonly) BOOL isWaitingToStart; +@property(readonly) NSString *activityString; +@property(readonly) NSString *detailsString; +- (void)cleanupAfterCompletion; +- (BOOL)completedSuccessfully; +- (void)increasePriority; +- (void)main; +- (BOOL)executeOnConnection:(id)arg1; +- (void)operationDidFinish; +- (id)simpleDescriptionString; +- (id)shallowDescription; +- (id)description; +@property int completionState; // @synthesize completionState=_completionState; +@property(retain) IMAPGateway *gateway; // @synthesize gateway=_gateway; +@property int commandType; // @synthesize commandType=_commandType; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientOperationQueue.h b/MailHeaders/Lion/Message/IMAPClientOperationQueue.h new file mode 100644 index 00000000..1f8373c7 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientOperationQueue.h @@ -0,0 +1,56 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSOperationQueue.h" + +@class ActivityMonitor, IMAPClientDoneOperation, IMAPClientSelectOperation, IMAPClientSuspendOperation, IMAPGateway, NSRecursiveLock, NSString; + +@interface IMAPClientOperationQueue : NSOperationQueue +{ + IMAPClientDoneOperation *_doneOperation; + IMAPClientSelectOperation *_selectOperation; + IMAPClientSuspendOperation *_suspendOperation; + NSRecursiveLock *_addOperationLock; + IMAPGateway *_gateway; + NSString *_activityName; + ActivityMonitor *_activityMonitor; + NSRecursiveLock *_activityMonitorLock; + struct dispatch_source_s *_activityFinishTimer; + BOOL _activityMonitorIsActive; +} + +- (void)dealloc; +- (id)init; +- (void)activityDidStart:(id)arg1; +- (void)_clearActivityFinishTimer; +- (void)_postDelayedActivityFinished; +- (void)activityDidFinish:(id)arg1; +- (id)selectedMailboxName; +@property(retain) IMAPClientDoneOperation *doneOperation; +@property(retain) IMAPClientSelectOperation *selectOperation; +- (BOOL)addClientOperation:(id)arg1 outUpdatedOperation:(id *)arg2; +- (BOOL)waitUntilOperationIsFinished:(id)arg1; +- (id)newSelectOperationForResumingIfNeeded; +- (void)changeSelectDependenciesTo:(id)arg1; +- (void)updateDoneReadiness; +- (BOOL)refreshDoneWithGateway:(id)arg1 operation:(id)arg2; +- (void)_setupDependeciesOnDone; +- (void)clearDoneWithOperation:(id)arg1; +- (BOOL)isIdle; +- (BOOL)shouldAllowIdleToExecute:(id)arg1; +- (BOOL)setupDependenciesOnSuspendCreatingIfNeeded; +- (void)suspendIfNeededAndClear:(BOOL)arg1; +@property(retain) IMAPClientSuspendOperation *suspendOperation; +- (void)finishIdling; +- (void)refreshIdle; +- (id)description; +@property(readonly, retain) ActivityMonitor *activityMonitor; // @synthesize activityMonitor=_activityMonitor; +@property(retain) NSString *activityName; // @synthesize activityName=_activityName; +@property(retain) IMAPGateway *gateway; // @synthesize gateway=_gateway; +@property(retain, nonatomic) NSRecursiveLock *addOperationLock; // @synthesize addOperationLock=_addOperationLock; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientRenameOperation.h b/MailHeaders/Lion/Message/IMAPClientRenameOperation.h new file mode 100644 index 00000000..82ba0fda --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientRenameOperation.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface IMAPClientRenameOperation : IMAPClientMailboxOperation +{ + NSString *_nameForNewMailbox; + NSString *_nameForNewMailboxArgument; +} + +- (id)initWithMailboxName:(id)arg1 newMailboxName:(id)arg2; +- (void)dealloc; +- (id)commandTypeString; +- (id)detailsString; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +@property(copy) NSString *nameForNewMailboxArgument; // @synthesize nameForNewMailboxArgument=_nameForNewMailboxArgument; +@property(copy) NSString *nameForNewMailbox; // @synthesize nameForNewMailbox=_nameForNewMailbox; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientSelectOperation.h b/MailHeaders/Lion/Message/IMAPClientSelectOperation.h new file mode 100644 index 00000000..3924b7eb --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientSelectOperation.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class IMAPMailbox; + +@interface IMAPClientSelectOperation : IMAPClientMailboxOperation +{ + IMAPMailbox *_imapMailbox; + BOOL _delayed; +} + +- (id)initWithMailboxName:(id)arg1; +- (void)dealloc; +- (id)commandTypeString; +- (BOOL)handlesAllUntaggedResponses; +- (BOOL)executeOnConnection:(id)arg1; +- (BOOL)isReady; +- (BOOL)readOnly; +@property BOOL delayed; // @synthesize delayed=_delayed; +@property(retain) IMAPMailbox *imapMailbox; // @synthesize imapMailbox=_imapMailbox; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientStartTLSOperation.h b/MailHeaders/Lion/Message/IMAPClientStartTLSOperation.h new file mode 100644 index 00000000..2b1c1cb2 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientStartTLSOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientStartTLSOperation : IMAPSingleClientOperation +{ +} + +- (id)init; +- (id)commandTypeString; +- (BOOL)executeOnConnection:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientStatusOperation.h b/MailHeaders/Lion/Message/IMAPClientStatusOperation.h new file mode 100644 index 00000000..e32e8258 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientStatusOperation.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSDictionary, NSString; + +@interface IMAPClientStatusOperation : IMAPClientMailboxOperation +{ + unsigned long long _dataItems; + NSString *_dataItemsString; + NSDictionary *_statusEntries; +} + ++ (id)newStringForDataItems:(unsigned long long)arg1; +- (id)initWithMailboxName:(id)arg1 dataItems:(unsigned long long)arg2; +- (void)dealloc; +- (id)commandTypeString; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +- (BOOL)executeOnConnection:(id)arg1; +@property(retain) NSDictionary *statusEntries; // @synthesize statusEntries=_statusEntries; +@property(copy) NSString *dataItemsString; // @synthesize dataItemsString=_dataItemsString; +@property unsigned long long dataItems; // @synthesize dataItems=_dataItems; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientSubscribeOperation.h b/MailHeaders/Lion/Message/IMAPClientSubscribeOperation.h new file mode 100644 index 00000000..5b03898a --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientSubscribeOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientSubscribeOperation : IMAPClientMailboxOperation +{ +} + +- (id)initWithMailboxName:(id)arg1; +- (id)commandTypeString; +- (BOOL)executeOnConnection:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientSuspendOperation.h b/MailHeaders/Lion/Message/IMAPClientSuspendOperation.h new file mode 100644 index 00000000..c32e0cfe --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientSuspendOperation.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientSuspendOperation : IMAPClientOperation +{ + BOOL _shouldExecuteSynchronously; +} + +- (id)init; +- (id)commandTypeString; +@property BOOL shouldExecuteSynchronously; // @synthesize shouldExecuteSynchronously=_shouldExecuteSynchronously; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientUIDCopyOperation.h b/MailHeaders/Lion/Message/IMAPClientUIDCopyOperation.h new file mode 100644 index 00000000..aca80347 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientUIDCopyOperation.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSDictionary, NSString; + +@interface IMAPClientUIDCopyOperation : IMAPClientUIDOperation +{ + NSString *_destinationMailboxName; + NSString *_destinationMailboxArgumentName; + NSDictionary *_messageInfo; + BOOL _shouldTryCreate; +} + +- (id)initWithMailboxName:(id)arg1 UIDs:(id)arg2 destinationMailboxName:(id)arg3; +- (void)dealloc; +- (id)commandTypeString; +- (id)detailsString; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +- (BOOL)executeOnConnection:(id)arg1; +@property BOOL shouldTryCreate; // @synthesize shouldTryCreate=_shouldTryCreate; +@property(retain) NSDictionary *messageInfo; // @synthesize messageInfo=_messageInfo; +@property(copy) NSString *destinationMailboxArgumentName; // @synthesize destinationMailboxArgumentName=_destinationMailboxArgumentName; +@property(copy) NSString *destinationMailboxName; // @synthesize destinationMailboxName=_destinationMailboxName; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientUIDExpungeOperation.h b/MailHeaders/Lion/Message/IMAPClientUIDExpungeOperation.h new file mode 100644 index 00000000..bc576102 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientUIDExpungeOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientUIDExpungeOperation : IMAPClientUIDOperation +{ +} + +- (id)initWithMailboxName:(id)arg1 UIDs:(id)arg2; +- (id)commandTypeString; +- (BOOL)executeOnConnection:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientUIDOperation.h b/MailHeaders/Lion/Message/IMAPClientUIDOperation.h new file mode 100644 index 00000000..18ab1a17 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientUIDOperation.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSIndexSet; + +@interface IMAPClientUIDOperation : IMAPClientMailboxOperation +{ + NSIndexSet *_UIDs; + CDStruct_f792af56 _range; +} + ++ (id)newMessageSetForRange:(CDStruct_f792af56)arg1; ++ (id)newMessageSetForNumbers:(id)arg1 range:(struct _NSRange)arg2; ++ (id)newMessageSetForIndexSet:(id)arg1; +- (id)initWithMailboxName:(id)arg1 UIDs:(id)arg2; +- (id)_initWithCommandType:(int)arg1 mailboxName:(id)arg2 range:(CDStruct_f792af56)arg3; +- (id)_initWithCommandType:(int)arg1 mailboxName:(id)arg2 UIDs:(id)arg3; +- (id)_initWithCommandType:(int)arg1 mailboxName:(id)arg2 UIDs:(id)arg3 range:(CDStruct_f792af56)arg4; +- (void)dealloc; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +@property CDStruct_f792af56 range; // @synthesize range=_range; +@property(retain) NSIndexSet *UIDs; // @synthesize UIDs=_UIDs; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientUIDSearchOperation.h b/MailHeaders/Lion/Message/IMAPClientUIDSearchOperation.h new file mode 100644 index 00000000..f7c1b0b0 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientUIDSearchOperation.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray, NSMutableIndexSet; + +@interface IMAPClientUIDSearchOperation : IMAPClientUIDOperation +{ + NSArray *_terms; + NSMutableIndexSet *_matchingUIDs; +} + +- (id)initWithMailboxName:(id)arg1 range:(CDStruct_f792af56)arg2 terms:(id)arg3; +- (void)dealloc; +- (id)commandTypeString; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +- (id)_newArgumentForSearchTerm:(id)arg1 isLiteral:(char *)arg2; +- (BOOL)executeOnConnection:(id)arg1; +@property(retain) NSMutableIndexSet *matchingUIDs; // @synthesize matchingUIDs=_matchingUIDs; +@property(retain) NSArray *terms; // @synthesize terms=_terms; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientUIDStoreOperation.h b/MailHeaders/Lion/Message/IMAPClientUIDStoreOperation.h new file mode 100644 index 00000000..61fc53db --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientUIDStoreOperation.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface IMAPClientUIDStoreOperation : IMAPClientUIDOperation +{ + BOOL _addFlags; + NSArray *_serverFlags; +} + +- (id)initWithMailboxName:(id)arg1 UIDs:(id)arg2 add:(BOOL)arg3 flags:(id)arg4; +- (id)initWithMailboxName:(id)arg1 range:(CDStruct_f792af56)arg2 add:(BOOL)arg3 flags:(id)arg4; +- (void)dealloc; +- (id)commandTypeString; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +- (BOOL)executeOnConnection:(id)arg1; +@property(retain) NSArray *serverFlags; // @synthesize serverFlags=_serverFlags; +@property BOOL addFlags; // @synthesize addFlags=_addFlags; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientUnselectOperation.h b/MailHeaders/Lion/Message/IMAPClientUnselectOperation.h new file mode 100644 index 00000000..19e6ae1a --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientUnselectOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientUnselectOperation : IMAPSingleClientOperation +{ +} + +- (id)init; +- (id)commandTypeString; +- (BOOL)executeOnConnection:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPClientUnsubscribeOperation.h b/MailHeaders/Lion/Message/IMAPClientUnsubscribeOperation.h new file mode 100644 index 00000000..51273208 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPClientUnsubscribeOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPClientUnsubscribeOperation : IMAPClientMailboxOperation +{ +} + +- (id)initWithMailboxName:(id)arg1; +- (id)commandTypeString; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPCommandPipeline.h b/MailHeaders/Lion/Message/IMAPCommandPipeline.h new file mode 100644 index 00000000..0161e448 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPCommandPipeline.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableArray; + +@interface IMAPCommandPipeline : NSObject +{ + id _imapCommandPipelineLock; + unsigned int _chunkSize; + unsigned int _expectedSize; + BOOL _isSending; + BOOL _isFull; + NSMutableArray *_fetchUnits; + double _startedSendingTime; +} + +- (void)dealloc; +- (id)init; +- (id)imapCommandPipelineLock; +- (void)addFetchCommandForUid:(unsigned int)arg1 fetchItem:(id)arg2 expectedLength:(unsigned int)arg3; +- (void)_removeFetchUnitMatchingResponse:(id)arg1; +- (id)failureResponsesFromSendingCommandsWithGateway:(id)arg1 responseHandler:(id)arg2 highPriority:(BOOL)arg3; +- (id)_lockedNewOperationsAssigningResponseHandler:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property double startedSendingTime; // @synthesize startedSendingTime=_startedSendingTime; +@property(retain) NSMutableArray *fetchUnits; // @synthesize fetchUnits=_fetchUnits; +@property BOOL isFull; // @synthesize isFull=_isFull; +@property BOOL isSending; // @synthesize isSending=_isSending; +@property unsigned int expectedSize; // @synthesize expectedSize=_expectedSize; +@property unsigned int chunkSize; // @synthesize chunkSize=_chunkSize; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPCompoundDownload.h b/MailHeaders/Lion/Message/IMAPCompoundDownload.h new file mode 100644 index 00000000..5eb774ad --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPCompoundDownload.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableArray; + +@interface IMAPCompoundDownload : IMAPDownload +{ + NSMutableArray *_subdownloads; +} + +- (id)createCopy; +- (void)dealloc; +- (id)subdownloads; +- (void)addSubdownload:(id)arg1; +- (void)removeSubdownload:(id)arg1; +- (void)addCommandsToPipeline:(id)arg1 withCache:(id)arg2; +- (void)processResults; +- (BOOL)isComplete; +- (id)error; +- (unsigned int)bytesFetched; +- (unsigned int)expectedLength; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPConnection.h b/MailHeaders/Lion/Message/IMAPConnection.h new file mode 100644 index 00000000..c01bc443 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPConnection.h @@ -0,0 +1,152 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class IMAPAccount, IMAPGateway, IMAPMailbox, InvocationQueue, NSMutableDictionary, NSMutableSet, NSRecursiveLock, NSString; + +@interface IMAPConnection : Connection +{ + NSRecursiveLock *_imapConnectionLock; + IMAPAccount *_IMAPAccount; + unsigned long long _capabilityFlags; + int _connectionState; + NSMutableSet *_capabilities; + NSString *_separatorChar; + NSString *_selectedMailbox; + IMAPMailbox *_selectedIMAPMailbox; + BOOL _selectedMailboxIsReadOnly; + BOOL _canStartIdle; + unsigned long long _commandNumber; + unsigned int _readBufferSize; + double _expirationTime; + InvocationQueue *_streamEventQueue; + NSMutableDictionary *_unhandledTaggedResponses; + unsigned long long _fetchSizeNextReadingIndex; + double _fetchSizeRollingAverage; + BOOL _fetchSizeFirstTime; + BOOL _fetchSizeFilledHistory; + double _fetchSizeRecentTimes[8]; + IMAPGateway *_gateway; + NSRecursiveLock *_validatingLock; + unsigned long long _lastIdleSequenceNumber; + unsigned long long _lastIdleSessionNumber; + BOOL _executingInternalReconnect; + unsigned long long _numSuccessfulOperationsSinceLastFlush; +} + ++ (void)initialize; ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; ++ (id)keyPathsForValuesAffecting_gateway; ++ (void)_setReadSizeParameters; +- (id)initWithPendingGateway:(BOOL)arg1 account:(id)arg2; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)displayName; +- (BOOL)reconnect; +- (void)_setupConnection; +- (BOOL)_teardownConnectionWithResult:(BOOL)arg1; +- (void)disconnectAndNotify:(BOOL)arg1; +- (void)disconnect; +- (void)quit; +- (BOOL)_tryToStartValidating; +@property BOOL isValidating; +@property(retain) IMAPGateway *gateway; // @synthesize gateway=_gateway; +- (id)_gateway; +- (int)connectionState; +- (int)currentConnectionState; +- (void)_transitionToState:(int)arg1; +- (void)_transitionToState:(int)arg1 selectedMailbox:(id)arg2 readOnly:(BOOL)arg3; +- (void)_setSelectedMailbox:(id)arg1; +- (id)mailboxNameIfSelected:(BOOL)arg1; +@property(retain) IMAPMailbox *selectedIMAPMailbox; +- (BOOL)needsSelectForMailboxName:(id)arg1 gateway:(id)arg2; +- (BOOL)isValid; +- (BOOL)isValidPreferringNetworkCheck:(BOOL)arg1; +- (BOOL)isDisconnected; +- (BOOL)shouldExecuteOperationsImmediately; +- (void)_flushSuccessfulOperationMessageTracerInfoIfNeededOrForceFlush:(BOOL)arg1; +- (void)_logMessageTracerInfoForOperationIfNeededForOperationStateProblemDescription:(id)arg1; +- (BOOL)prepareAndExecuteOperation:(id)arg1 outWrongState:(char *)arg2; +- (BOOL)executeClientOperation:(id)arg1; +- (BOOL)_sendCommand:(id)arg1 response:(id *)arg2; +- (void)_socketDiedError:(id *)arg1; +- (BOOL)_writeData:(id)arg1 dontLogBytesInRange:(struct _NSRange)arg2 error:(id *)arg3; +- (BOOL)_readLineIntoData:(id)arg1 error:(id *)arg2; +- (BOOL)_readBytesIntoData:(id)arg1 desiredLength:(unsigned long long)arg2 error:(id *)arg3; +- (id)_copyNextServerResponse:(id *)arg1; +- (id)_copyNextTaggedOrContinuationResponseForCommand:(id)arg1; +- (id)_copyNextTaggedOrContinuationResponseForCommand:(id)arg1 exists:(unsigned long long *)arg2; +- (id)_errorForResponse:(id)arg1 operation:(id)arg2; +- (id)capabilities; +- (BOOL)supportsCapability:(unsigned long long)arg1; +- (void)updateCanStartIdle:(BOOL)arg1; +- (void)_clearCapabilities; +- (void)_addToCapabilities:(id)arg1; +- (void)_fetchCapabilitiesIfNeeded; +- (BOOL)executeCapability:(id)arg1; +- (void)_sendID; +- (BOOL)executeID:(id)arg1; +- (BOOL)executeNoop:(id)arg1; +- (id)authenticationMechanisms; +- (BOOL)authenticateUsingAccount:(id)arg1; +- (BOOL)_reauthenticate; +- (BOOL)_authenticateUsingAccount:(id)arg1 authenticator:(id)arg2; +- (long long)_authenticateUsingHostname:(id)arg1 username:(id)arg2 password:(id)arg3 authScheme:(id)arg4 authenticator:(id)arg5; +- (BOOL)executeAuthenticate:(id)arg1; +- (BOOL)_startTLSForHostname:(id)arg1 onPort:(unsigned int)arg2 securityLayerType:(long long)arg3 accountClass:(Class)arg4; +- (long long)_startTLSForSecurityLayerType:(long long)arg1; +- (BOOL)executeStartTLS:(id)arg1; +- (id)_getServerAlertErrorFromResponse:(id)arg1 forCommand:(id)arg2; +- (BOOL)_loginWithUsername:(id)arg1 password:(id)arg2; +- (BOOL)executeLogin:(id)arg1; +- (BOOL)executeLogout:(id)arg1; +- (id)separatorChar; +- (void)setSeparatorChar:(id)arg1; +- (BOOL)executeListOrLSub:(id)arg1; +- (BOOL)executeUnselect:(id)arg1; +- (void)handleStreamEvent:(id)arg1; +- (void)_handleBytesAvailable; +- (BOOL)isIdle; +- (BOOL)startIdle; +- (BOOL)executeIdle:(id)arg1; +- (BOOL)executeDone:(id)arg1; +- (BOOL)executeUIDExpunge:(id)arg1; +- (BOOL)executeStatus:(id)arg1; +- (BOOL)executeSubscribeOperation:(id)arg1; +- (BOOL)executeSelectOperation:(id)arg1; +- (BOOL)executeUIDSearch:(id)arg1; +- (BOOL)executeUIDStore:(id)arg1; +- (id)_responseFromSendingOperation:(id)arg1 tryCreate:(char *)arg2; +- (BOOL)executeUIDCopy:(id)arg1; +- (BOOL)executeAppend:(id)arg1; +- (BOOL)executeNamespace:(id)arg1; +- (void)resetTimingHistory; +- (double)updatedRecentAverageWithNewValue:(double)arg1; +- (void)setReadBufferSizeFromElapsedTime:(double)arg1 bytesRead:(unsigned int)arg2; +- (unsigned int)readBufferSize; +- (void)setReadBufferSize:(unsigned int)arg1; +- (BOOL)executeFetch:(id)arg1; +- (id)description; +- (BOOL)_correctMailboxIsSelectedForOperation:(id)arg1; +- (id)_responseFromSendingOperation:(id)arg1; +- (BOOL)_commandShouldBeSentAgainOnError:(int)arg1; +- (BOOL)_isTemporaryError:(id)arg1; +- (void)_setError:(id)arg1 forCommand:(id)arg2; +- (BOOL)_recordUntaggedResponse:(id)arg1 forOperation:(id)arg2; +- (BOOL)_recordUntaggedResponse:(id)arg1 forOperation:(id)arg2 exists:(unsigned long long *)arg3 fromIDLE:(BOOL)arg4; +- (void)_recordResponse:(id)arg1 forOperation:(id)arg2; +- (BOOL)_recordMailboxResponse:(id)arg1 forOperation:(id)arg2; +- (BOOL)_recordMailboxResponse:(id)arg1 forOperation:(id)arg2 exists:(unsigned long long *)arg3 fromIDLE:(BOOL)arg4; +@property BOOL canStartIdle; // @synthesize canStartIdle=_canStartIdle; +@property(retain) NSRecursiveLock *validatingLock; // @synthesize validatingLock=_validatingLock; +@property IMAPAccount *account; // @synthesize account=_IMAPAccount; +- (BOOL)_readDataOfLength:(long long)arg1 intoData:(id)arg2 error:(id *)arg3; +- (BOOL)_isFetchResponseValid:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPConnectionPool.h b/MailHeaders/Lion/Message/IMAPConnectionPool.h new file mode 100644 index 00000000..703b8d3e --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPConnectionPool.h @@ -0,0 +1,70 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSCondition, NSMutableArray, NSMutableDictionary, NSRecursiveLock; + +@interface IMAPConnectionPool : NSObject +{ + NSMutableDictionary *_idleConnectionsByMailbox; + NSMutableDictionary *_activeConnectionsByMailbox; + NSMutableArray *_suspendedGateways; + unsigned long long _maximumConnectionCount; + NSCondition *_availabilityCondition; + NSRecursiveLock *_connectionPoolLock; +} + ++ (void)initialize; +- (void)dealloc; +- (void)_removeAllConnectionsInDictionary:(id)arg1; +- (void)_sealSuspendedGateways; +- (id)init; +- (unsigned long long)connectionCount; +- (void)removeInvalidConnections; +- (void)_removeInvalidConnectionsInDictionary:(id)arg1; +- (void)closeAllConnectionsAndCompact:(BOOL)arg1; +- (id)_closeAllConnectionsAndCompact:(BOOL)arg1 inDictionary:(id)arg2; +- (BOOL)checkInConnection:(id)arg1 forGateway:(id)arg2; +- (void)checkInNewConnection:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_removeDisconnectedConnection:(id)arg1 shouldRecover:(BOOL)arg2; +- (id)checkOutNewGatewayWithConnection:(id)arg1; +- (id)_checkOutNewGatewayWithConnection:(id)arg1 forMailbox:(id)arg2; +- (id)checkOutGatewayForMailbox:(id)arg1; +- (id)checkOutGatewayForExistingConnectionToMailbox:(id)arg1; +- (id)checkOutGatewayForMailbox:(id)arg1 newConnection:(id)arg2 highPriority:(BOOL)arg3 waitIndefinitely:(BOOL)arg4; +- (BOOL)tryToResumeGateway:(id)arg1; +- (void)sealGatewayShutIfNoChanceOfResuming:(id)arg1; +- (BOOL)yieldGateway:(id)arg1; +- (BOOL)suspendGateway:(id)arg1 withOperation:(id)arg2; +- (id)_suspendGatewayOfConnection:(id)arg1 mailbox:(id)arg2 forMailbox:(id)arg3 resumingGateway:(id)arg4; +- (id)_suspendFirstIdleConnectionForMailbox:(id)arg1 resumingGateway:(id)arg2 totalSecondsWaited:(double *)arg3 mightBeSuccessful:(char *)arg4; +- (id)_suspendFirstIdleConnectionInIdleConnections:(id)arg1 forMailbox:(id)arg2 resumingGateway:(id)arg3; +- (id)_anyConnectionFromDictionary:(id)arg1 selectedOnly:(BOOL)arg2 mailbox:(id *)arg3; +- (id)_gatewayToCheckOutConnection:(id)arg1 defaultGateway:(id)arg2 mailboxName:(id)arg3 newGateway:(char *)arg4; +- (BOOL)_validateAndCheckOutGateway:(id)arg1 forMailbox:(id)arg2 allowReconnect:(BOOL)arg3 newGateway:(BOOL)arg4; +- (id)_newGatewayForConnection:(id)arg1 mailboxName:(id)arg2; +- (void)_makeConnectionAvailable:(id)arg1; +- (id)description; +- (void)updateConnectionsShouldUseIdle:(id)arg1; +- (BOOL)_removeConnection:(id)arg1 fromDictionary:(id)arg2; +- (void)_setConnection:(id)arg1 forMailbox:(id)arg2 clear:(BOOL)arg3 inDictionary:(id)arg4; +- (BOOL)_connectionIsContained:(id)arg1 forMailbox:(id)arg2 inDictionary:(id)arg3; +- (id)_suspendedGatewayForMailbox:(id)arg1; +- (id)_suspendedGatewayWithWorkRequireSelected:(BOOL)arg1; +- (void)_suspendGateway:(id)arg1 allowNetworking:(BOOL)arg2; +- (void)_removeSuspendedGateway:(id)arg1; +- (id)_keyForMailboxName:(id)arg1; +- (id)connections; +@property(retain) NSMutableArray *suspendedGateways; // @synthesize suspendedGateways=_suspendedGateways; +@property(retain) NSMutableDictionary *activeConnectionsByMailbox; // @synthesize activeConnectionsByMailbox=_activeConnectionsByMailbox; +@property(retain) NSMutableDictionary *idleConnectionsByMailbox; // @synthesize idleConnectionsByMailbox=_idleConnectionsByMailbox; +@property(retain) NSCondition *availabilityCondition; // @synthesize availabilityCondition=_availabilityCondition; +@property unsigned long long maximumConnectionCount; // @synthesize maximumConnectionCount=_maximumConnectionCount; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPDownload.h b/MailHeaders/Lion/Message/IMAPDownload.h new file mode 100644 index 00000000..604cb996 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPDownload.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableArray; + +@interface IMAPDownload : NSObject +{ + unsigned int _uid; + NSMutableArray *_pendingFetchResults; +} + +- (void)dealloc; +- (id)initWithUid:(unsigned int)arg1; +- (id)init; +- (id)createCopy; +- (unsigned int)uid; +- (unsigned int)expectedLength; +- (BOOL)isComplete; +- (unsigned int)bytesFetched; +- (id)data; +- (id)error; +- (void)setError:(id)arg1; +- (void)handleFetchResult:(id)arg1; +- (void)processResults; +- (void)addCommandsToPipeline:(id)arg1 withCache:(id)arg2; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPDownloadCache.h b/MailHeaders/Lion/Message/IMAPDownloadCache.h new file mode 100644 index 00000000..3b5ad925 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPDownloadCache.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "IMAPResponseHandler-Protocol.h" + +@class NSMutableArray; + +@interface IMAPDownloadCache : NSObject +{ + NSMutableArray *_downloads; +} + +- (void)dealloc; +- (struct _NSRange)_lockedFindRangeOfDownloadsWithUid:(unsigned int)arg1; +- (id)downloadForMessage:(id)arg1; +- (id)_getDownloadForUid:(unsigned int)arg1 partSectionSpecifier:(id)arg2 textSectionSpecifier:(int)arg3 length:(unsigned int)arg4 estimatedLength:(unsigned int)arg5; +- (id)downloadForUid:(unsigned int)arg1 partSectionSpecifier:(id)arg2 textSectionSpecifier:(int)arg3 length:(unsigned int)arg4; +- (id)downloadForUid:(unsigned int)arg1 partSectionSpecifier:(id)arg2 textSectionSpecifier:(int)arg3 expectedLength:(unsigned int)arg4; +- (void)_lockedUpdateDownloadsInRange:(struct _NSRange)arg1 fetchResults:(id)arg2 error:(id)arg3; +- (BOOL)handleResponse:(id)arg1 forOperation:(id)arg2; +- (void)handleFetchResponse:(id)arg1 forUid:(unsigned int)arg2; +- (void)handleFetchResponses:(id)arg1; +- (void)processResultsForUid:(unsigned int)arg1; +- (void)cleanUpDownloadsForUid:(unsigned int)arg1; +- (void)addDownload:(id)arg1 forUid:(unsigned int)arg2; +- (void)_lockedAddDownload:(id)arg1 atIndex:(unsigned long long)arg2 forUid:(unsigned int)arg3; +- (void)addCommandsForDownload:(id)arg1 toPipeline:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPFetchResult.h b/MailHeaders/Lion/Message/IMAPFetchResult.h new file mode 100644 index 00000000..8b73de5f --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPFetchResult.h @@ -0,0 +1,57 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSData, NSString; + +@interface IMAPFetchResult : NSObject +{ + union { + NSArray *envelope; + NSString *internalDate; + unsigned int messageSize; + NSArray *bodyStructure; + struct { + NSString *section; + unsigned int startOffset; + NSData *sectionData; + } bodySectionInfo; + unsigned int uid; + NSArray *flags; + } _typeSpecific; + unsigned long long _itemType; +} + +- (id)initWithType:(unsigned long long)arg1; +- (id)init; +- (void)dealloc; +- (unsigned long long)type; +- (BOOL)needsLineEndingConversion; +- (id)envelope; +- (void)setEnvelope:(id)arg1; +- (id)internalDate; +- (void)setInternalDate:(id)arg1; +- (id)fetchData; +- (void)setFetchData:(id)arg1; +- (unsigned int)messageSize; +- (void)setMessageSize:(unsigned int)arg1; +- (id)bodyStructure; +- (void)setBodyStructure:(id)arg1; +- (unsigned int)startOffset; +- (void)setStartOffset:(unsigned int)arg1; +- (id)section; +- (void)setSection:(id)arg1; +- (unsigned int)uid; +- (void)setUid:(unsigned int)arg1; +- (id)flagsArray; +- (void)setFlagsArray:(id)arg1; +- (unsigned int)encoding; +- (unsigned int)messageFlags; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPGateway.h b/MailHeaders/Lion/Message/IMAPGateway.h new file mode 100644 index 00000000..1d12ee66 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPGateway.h @@ -0,0 +1,115 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class IMAPClientOperationQueue, IMAPConnection, IMAPConnectionPool, NSCondition, NSLock, NSOperationQueue; + +@interface IMAPGateway : NSObject +{ + IMAPConnectionPool *_connectionPool; + IMAPConnection *_connection; + IMAPClientOperationQueue *_operationQueue; + NSOperationQueue *_checkInQueue; + NSCondition *_connectionAvailabilityCondition; + BOOL _primaryClientAllowsYielding; + unsigned long long _clientCount; + NSLock *_clientCountLock; + BOOL _canYield; + BOOL _remainedDeserted; + BOOL _needsSelect; + BOOL _isSealedShut; + BOOL _operationQueueCanCheckInConnection; +} + ++ (void)initialize; ++ (unsigned long long)IMAPIdleRefreshDelay; ++ (void)_addIdleGateway:(id)arg1; ++ (void)_removeIdleGateway:(id)arg1; ++ (void)_checkIdleGateways; +- (id)initWithIMAPConnection:(id)arg1 mailbox:(id)arg2 pool:(id)arg3; +- (id)init; +- (void)dealloc; +@property IMAPConnectionPool *connectionPool; // @synthesize connectionPool=_connectionPool; +@property(retain) IMAPConnection *connection; // @synthesize connection=_connection; +- (void)operationQueueDidIdle; +- (void)checkIn; +- (void)_tryToCheckInConnectionAndTryToIdle:(BOOL)arg1; +- (BOOL)checkOut; +- (BOOL)okToYield; +- (void)yield; +- (void)suspend; +- (void)resumeWithConnection:(id)arg1 reselect:(BOOL)arg2; +- (void)sealShutAndCompact:(BOOL)arg1 allowNetworking:(BOOL)arg2; +- (void)_finishQueueIdlingAndSuspend:(BOOL)arg1; +- (BOOL)isDeserted; +- (void)allowClientOperationThrough:(id)arg1; +- (void)_allowClientOperationThrough:(id)arg1; +- (void)_executeSuspend:(id)arg1; +- (BOOL)addClientOperation:(id)arg1 toQueueAndWaitUntilFinished:(BOOL)arg2; +- (void)waitUntilClientOperationIsFinished:(id)arg1; +- (void)waitUntilAllOperationsAreFinished; +- (id)mailboxName; +- (void)configureForMailboxName:(id)arg1; +- (BOOL)supportsCapability:(unsigned long long)arg1; +- (id)mailboxNameIfSelected:(BOOL)arg1; +- (void)_setError:(id *)arg1 fromOperation:(id)arg2; +- (void)_setErrorFromOperation:(id)arg1 overwriteExistingError:(BOOL)arg2; +- (void)noop; +- (void)fetchAllFlags; +- (void)fetchFlagsForMaxRecentMessages:(unsigned long long)arg1; +- (void)setServerPathPrefixOnAccount:(id)arg1 withSeparatorChar:(id)arg2; +- (id)namespacesWithSeparatorChar:(id)arg1; +- (BOOL)listingForMailbox:(id)arg1 options:(int)arg2 listingInfo:(id)arg3; +- (BOOL)subscribedListingForMailbox:(id)arg1 options:(int)arg2 listingInfo:(id)arg3; +- (void)fetchStatusForMailboxes:(id)arg1 dataItems:(unsigned long long)arg2; +- (id)statusForMailbox:(id)arg1 dataItems:(unsigned long long)arg2; +- (BOOL)examineMailbox:(id)arg1; +- (BOOL)selectMailbox:(id)arg1; +- (BOOL)_addSelectOperationForMailbox:(id)arg1 type:(int)arg2; +- (void)_waitForDelayedSelectOperation:(id)arg1; +- (BOOL)_completeSelectOperation:(id)arg1; +- (BOOL)createMailbox:(id)arg1; +- (BOOL)deleteMailbox:(id)arg1; +- (BOOL)renameMailbox:(id)arg1 toMailbox:(id)arg2; +- (BOOL)subscribeMailbox:(id)arg1; +- (BOOL)unsubscribeMailbox:(id)arg1; +- (void)fetchQuotaRootNamesForMailboxes:(id)arg1; +- (BOOL)getQuotaForRootName:(id)arg1; +- (BOOL)check:(id *)arg1; +- (BOOL)expunge; +- (BOOL)expungeUids:(id)arg1; +- (BOOL)_expungeUids:(id)arg1 mailboxName:(id)arg2; +- (void)close; +- (void)logout; +- (void)closeAndLogout; +- (void)unselect; +- (void)fetchTotalSizeAndMessageCount; +- (BOOL)storeFlags:(id)arg1 state:(BOOL)arg2 forUids:(id)arg3; +- (BOOL)_expunge:(BOOL)arg1 orStoreFlags:(id)arg2 state:(BOOL)arg3 forUids:(id)arg4; +- (BOOL)_storeFlags:(id)arg1 state:(BOOL)arg2 forUids:(id)arg3 mailboxName:(id)arg4; +- (BOOL)deleteMessagesOlderThanNumberOfDays:(long long)arg1 settingFlags:(id)arg2; +- (BOOL)copyUids:(id)arg1 toMailboxNamed:(id)arg2 messageInfo:(id)arg3 error:(id *)arg4; +- (BOOL)appendData:(id)arg1 toMailboxNamed:(id)arg2 flags:(id)arg3 dateReceived:(id)arg4 messageInfo:(id)arg5 error:(id *)arg6; +- (id)searchUidRange:(CDStruct_f792af56)arg1 forTerms:(id)arg2; +- (id)searchUidRange:(CDStruct_f792af56)arg1 forNewMessageIDs:(id)arg2; +- (unsigned int)searchedUidNextForMessageNumber:(unsigned long long)arg1; +- (BOOL)synchronouslyExecuteSelect:(id)arg1; +- (BOOL)synchronouslyExecuteDoneWithSequence:(unsigned long long)arg1 session:(unsigned long long)arg2; +- (void)refreshDone:(BOOL)arg1 withOperation:(id)arg2; +- (BOOL)startIdle; +- (void)refreshIdle; +- (id)description; +@property BOOL primaryClientAllowsYielding; // @synthesize primaryClientAllowsYielding=_primaryClientAllowsYielding; +@property BOOL needsSelect; // @synthesize needsSelect=_needsSelect; +@property BOOL isSealedShut; // @synthesize isSealedShut=_isSealedShut; +@property unsigned long long clientCount; // @synthesize clientCount=_clientCount; +@property BOOL remainedDeserted; // @synthesize remainedDeserted=_remainedDeserted; +@property BOOL canYield; // @synthesize canYield=_canYield; +@property(retain) IMAPClientOperationQueue *operationQueue; // @synthesize operationQueue=_operationQueue; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPMailbox.h b/MailHeaders/Lion/Message/IMAPMailbox.h new file mode 100644 index 00000000..02b19a57 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPMailbox.h @@ -0,0 +1,57 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class IMAPGateway, MailboxUid, NSArray, NSMutableArray, NSString; + +@interface IMAPMailbox : NSObject +{ + id _delegate; + MailboxUid *_mailboxUid; + unsigned long long _permanentFlags; + NSString *_referenceName; + BOOL _readOnly; + BOOL _uidNotSticky; + IMAPGateway *_selectedGateway; + NSArray *_quotaRoots; + unsigned long long _exists; + CDStruct_d3e19d9e _quotaUsage; + unsigned int _uidNext; + unsigned int _uidValidity; + unsigned int _unseenCount; + NSMutableArray *_unprocessedResponses; + BOOL _hasNewResponses; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +- (void)dealloc; +- (id)initWithMailboxName:(id)arg1; +- (id)init; +- (void)setDelegate:(id)arg1; +- (void)clearDelegate:(id)arg1; +@property(retain) IMAPGateway *selectedGateway; // @synthesize selectedGateway=_selectedGateway; +- (void)setExists:(unsigned long long)arg1 fromIDLE:(BOOL)arg2; +@property unsigned long long exists; // @synthesize exists=_exists; +@property unsigned int uidValidity; // @synthesize uidValidity=_uidValidity; +@property BOOL hasNewResponses; // @synthesize hasNewResponses=_hasNewResponses; +- (void)setTotalSize:(unsigned long long)arg1 forQuotaMessageCount:(long long)arg2; +@property unsigned long long permanentFlags; // @synthesize permanentFlags=_permanentFlags; +- (void)addResponse:(id)arg1; +- (id)removeResponse; +- (id)description; +@property(retain) NSMutableArray *unprocessedResponses; // @synthesize unprocessedResponses=_unprocessedResponses; +@property unsigned int unseenCount; // @synthesize unseenCount=_unseenCount; +@property unsigned int uidNext; // @synthesize uidNext=_uidNext; +@property CDStruct_d3e19d9e quotaUsage; // @synthesize quotaUsage=_quotaUsage; +@property(retain) NSArray *quotaRoots; // @synthesize quotaRoots=_quotaRoots; +@property BOOL uidNotSticky; // @synthesize uidNotSticky=_uidNotSticky; +@property BOOL readOnly; // @synthesize readOnly=_readOnly; +@property(copy) NSString *referenceName; // @synthesize referenceName=_referenceName; +@property(retain) MailboxUid *mailboxUid; // @synthesize mailboxUid=_mailboxUid; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPMailboxDelegate-Protocol.h b/MailHeaders/Lion/Message/IMAPMailboxDelegate-Protocol.h new file mode 100644 index 00000000..87415b54 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPMailboxDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol IMAPMailboxDelegate +- (void)updateCountFromMailbox:(id)arg1 fromIDLE:(BOOL)arg2; +- (void)processResponsesFromMailbox:(id)arg1; +- (void)updateUidValidityFromMailbox:(id)arg1; +- (void)updateSelectedGatewayFromMailbox:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/IMAPMailboxSyncEngine.h b/MailHeaders/Lion/Message/IMAPMailboxSyncEngine.h new file mode 100644 index 00000000..2046a27d --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPMailboxSyncEngine.h @@ -0,0 +1,126 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "IMAPResponseHandler-Protocol.h" + +@class IMAPGateway, IMAPMailbox, InvocationQueue, LibraryIMAPStore, NSArray, NSMutableArray, NSMutableIndexSet; + +@interface IMAPMailboxSyncEngine : NSObject +{ + id _syncEngineLock; + IMAPGateway *_gateway; + LibraryIMAPStore *_store; + IMAPMailbox *_IMAPMailbox; + NSMutableArray *_auxiliaryLists; + NSMutableIndexSet *_allNewUids; + NSMutableIndexSet *_UIDsNeedingSkeletons; + unsigned long long _numMessagesOnServer; + unsigned long long _firstMessageNumber; + NSMutableArray *_messageDetails; + unsigned long long _maxSkeletonsToFetch; + NSMutableIndexSet *_expungedUids; + long long _progressType; + unsigned long long _progressTotal; + unsigned long long _checkNewMailCount; + InvocationQueue *_syncEngineQueue; + NSMutableArray *_messagesNeedingAttachmentNames; + NSArray *_messagesBeingRouted; + NSMutableArray *_messagesAddedToLibrary; + NSMutableArray *_uidsAddedToServer; + NSMutableArray *_messagesAddedToServer; + id _compareByUid; + unsigned int _uidNext; + unsigned int _uidValidity; + unsigned int _libraryClientUidNext; + unsigned int _newUidValidity; + BOOL _isReset; + BOOL _needToUpdateExists; + BOOL _newResponsesAvailable; + BOOL _automaticallyStartThread; + BOOL _storeIsInbox; + BOOL _newMailReceivedInInbox; + BOOL _checkedForNewUids; + BOOL _synchronizedOldMessages; + BOOL _connectionSupportsUIDPLUS; + BOOL _messagesNeedAttachmentNames; +} + +- (id)initWithStore:(id)arg1; +- (id)init; +- (void)dealloc; +- (id)description; +- (id)_copyIMAPMailbox; +- (id)_copyLibraryIMAPStore; +- (BOOL)isReset; +- (void)reset; +- (void)_resetClearingGateway:(BOOL)arg1 clearingStore:(BOOL)arg2; +- (void)invalidateStore; +- (void)_setupForNewIMAPMailbox:(id)arg1 andGateway:(id)arg2; +- (void)setGatewayFromIMAPMailbox:(id)arg1; +- (void)updateCountOfMessagesOnServerFromIMAPMailbox:(id)arg1 fromIDLE:(BOOL)arg2; +- (void)_updateCountOfMessagesOnServerIfNecessary; +- (void)setUidValidity:(unsigned int)arg1; +- (void)responsesWereAddedToIMAPMailbox:(id)arg1; +- (void)_handleMessagesWereAddedToLibrary:(id)arg1 withMonitor:(id)arg2; +- (void)messagesWereAddedToLibrary:(id)arg1; +- (id)messagesBeingAdded; +- (void)setAutomaticallyStartsBackgroundThread:(BOOL)arg1; +- (void)runSynchronouslyWithMessages:(id)arg1; +- (void)requestCheckingNewMail; +- (void)_handleNewUIDsAddedToServer:(id)arg1 forMessages:(id)arg2; +- (void)newUIDsWereAddedToServer:(id)arg1 forMessages:(id)arg2; +- (unsigned long long)_getKnownMessageCount; +- (id)_getKnownMessageDetailsForNumber:(unsigned long long)arg1; +- (id)_getKnownMessageDetailsForUid:(unsigned int)arg1; +- (void)_removeMessagesOrDetailsFromLibrary:(id)arg1; +- (void)_startNewThreadIfNeeded; +- (id)_getObjectWithSameUidAsObject:(id)arg1 inArray:(id)arg2 insertIndex:(unsigned long long *)arg3; +@property(readonly) id compareByUid; +- (void)_handleFetchResponse:(id)arg1 withMonitor:(id)arg2 message:(id *)arg3 flagsChanges:(id *)arg4; +- (void)_doUidStoreUpdate:(id)arg1; +- (void)_pushFlags:(id)arg1 forMessageIDs:(id)arg2 toStore:(id)arg3 updateServer:(BOOL)arg4 usingCriterion:(id)arg5 withMonitor:(id)arg6; +- (void)_pushFlags:(id)arg1 toStore:(id)arg2 updateServer:(BOOL)arg3 withMonitor:(id)arg4; +- (void)_updateFlagChanges:(id *)arg1 withDetails:(id)arg2 previousFlags:(unsigned int)arg3 previousEncoding:(unsigned int)arg4; +- (void)_addDetails:(id)arg1 forMessageNumber:(unsigned long long)arg2; +- (void)_processAttachmentNames; +- (void)_setAttachmentNamesForMessage:(id)arg1; +- (void)_addItem:(id)arg1 toAuxiliaryList:(unsigned long long)arg2; +- (void)_removeUidFromAuxiliaryLists:(id)arg1; +- (id)_getAuxiliaryListForType:(unsigned long long)arg1; +- (void)_setAuxiliaryList:(id)arg1 forType:(unsigned long long)arg2; +- (void)_mergeItems:(id)arg1 intoAuxiliaryList:(unsigned long long)arg2; +- (id)_checkOutGateway; +- (BOOL)_setGateway:(id)arg1; +- (void)_notifyBackgroundFetchCompleted; +- (BOOL)_hasPendingChanges; +- (void)_updatePendingChangesWithMonitor:(id)arg1; +- (void)_goWithMessages:(id)arg1; +- (void)_goWithMessagesIfNeeded:(id)arg1; +- (BOOL)_shouldContinueSyncingWithGateway; +- (BOOL)_shouldContinueSyncingWithMonitor:(id)arg1; +- (BOOL)_processResponsesWithMonitor:(id)arg1; +- (BOOL)_getNewMessageSkeletonsWithMonitor:(id)arg1 messagesFromOpen:(id *)arg2; +- (id)_newOperationFromUIDsNeedingSkeletons:(unsigned long long)arg1; +- (BOOL)_handleRoutedUidsWithMonitor:(id)arg1; +- (BOOL)_fetchUidsAndFlagsWithMonitor:(id)arg1; +- (BOOL)_syncWithLibraryWithMonitor:(id)arg1 messagesFromOpen:(id)arg2; +- (BOOL)_cacheMessagesWithMonitor:(id)arg1; +- (BOOL)_cacheAttachmentsWithMonitor:(id)arg1; +- (BOOL)_recoverFromErrorInDownload:(id)arg1 uid:(unsigned int)arg2 cacheList:(id)arg3 atIndex:(unsigned long long)arg4 downloadCache:(id)arg5; +- (BOOL)_handleInvitationMessagesWithMonitor:(id)arg1; +- (unsigned long long)_cachePolicyForAccount:(id)arg1; +- (BOOL)handleResponse:(id)arg1 forOperation:(id)arg2; +- (void)_setupFakeResponseToOperation:(id)arg1 messageNumber:(unsigned long long)arg2; +- (BOOL)_handleFailedFetchResponse:(id)arg1 forOperation:(id)arg2; +@property BOOL connectionSupportsUIDPLUS; // @synthesize connectionSupportsUIDPLUS=_connectionSupportsUIDPLUS; +@property unsigned int uidNext; // @synthesize uidNext=_uidNext; +@property unsigned long long numberOfMessagesOnServer; // @synthesize numberOfMessagesOnServer=_numMessagesOnServer; +@property BOOL messageListIsSynchronized; // @synthesize messageListIsSynchronized=_synchronizedOldMessages; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPMessage.h b/MailHeaders/Lion/Message/IMAPMessage.h new file mode 100644 index 00000000..33d6bb38 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPMessage.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "IMAPObject-Protocol.h" +#import "NSCoding-Protocol.h" + +@interface IMAPMessage : RemoteMessage +{ + unsigned int _uid; +} + ++ (void)initialize; +- (id)initWithFlags:(unsigned int)arg1 size:(unsigned long long)arg2 uid:(unsigned int)arg3; +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +- (id)description; +- (id)messageID; +- (unsigned int)uid; +- (void)setUid:(unsigned int)arg1; +- (BOOL)isMessageContentsLocallyAvailable; +- (void)setPreferredEncoding:(unsigned int)arg1; +- (BOOL)hasTemporaryUid; +- (void)setHasTemporaryUid:(BOOL)arg1; +- (id)mailboxName; +- (id)remoteID; +- (id)remoteMailboxURL; +- (id)originalMailboxURL; +- (id)subject; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPMessageDownload.h b/MailHeaders/Lion/Message/IMAPMessageDownload.h new file mode 100644 index 00000000..6990f185 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPMessageDownload.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MimePart; + +@interface IMAPMessageDownload : IMAPCompoundDownload +{ + id _message; + MimePart *_topLevelPart; + BOOL _allowsPartialDownloads; + BOOL _writesCacheFile; + unsigned int _usingPartialDownloads:1; + unsigned int _startedFetch:1; + unsigned int _fetchingBodyText:1; + unsigned int _doneAddingSubdownloads:1; +} + +- (void)dealloc; +- (id)initWithMessage:(id)arg1; +- (id)createCopy; +@property(retain) id message; +- (id)data; +- (BOOL)isComplete; +- (void)handleFetchResult:(id)arg1; +- (void)processResults; +- (void)_addMimeSubdownloadsToPipeline:(id)arg1 withCache:(id)arg2; +- (void)addCommandsToPipeline:(id)arg1 withCache:(id)arg2; +@property BOOL writesCacheFile; // @synthesize writesCacheFile=_writesCacheFile; +@property BOOL allowsPartialDownloads; // @synthesize allowsPartialDownloads=_allowsPartialDownloads; +@property(retain) MimePart *topLevelPart; // @synthesize topLevelPart=_topLevelPart; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPMessageWithCache.h b/MailHeaders/Lion/Message/IMAPMessageWithCache.h new file mode 100644 index 00000000..80513a2a --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPMessageWithCache.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MessageHeaders, NSData; + +@interface IMAPMessageWithCache : IMAPMessage +{ + NSData *_messageData; + MessageHeaders *_headers; +} + +- (void)dealloc; +- (id)messageData; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (void)setMessageData:(id)arg1; +- (BOOL)isMessageContentsLocallyAvailable; +- (id)headers; +- (void)setHeaders:(id)arg1; +- (id)headerData; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPObject-Protocol.h b/MailHeaders/Lion/Message/IMAPObject-Protocol.h new file mode 100644 index 00000000..bbd02867 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPObject-Protocol.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol IMAPObject +- (unsigned int)uid; +- (void)setUid:(unsigned int)arg1; +- (id)messageID; +- (BOOL)isPartial; +- (void)setIsPartial:(BOOL)arg1; +- (BOOL)partsHaveBeenCached; +- (void)setPartsHaveBeenCached:(BOOL)arg1; +- (BOOL)hasTemporaryUid; +- (void)setHasTemporaryUid:(BOOL)arg1; +- (CDStruct_3292de3e)remoteFlags; +- (unsigned long long)messageSize; +- (id)subject; +- (id)mailboxName; +@end + diff --git a/MailHeaders/Lion/Message/IMAPOfflineCopyOnStupidServerOperation.h b/MailHeaders/Lion/Message/IMAPOfflineCopyOnStupidServerOperation.h new file mode 100644 index 00000000..8b817cb8 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPOfflineCopyOnStupidServerOperation.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface IMAPOfflineCopyOnStupidServerOperation : IMAPOperation +{ + struct __CFArray *_messageIds; + struct __CFArray *_internalDates; +} + +- (void)serializeIntoData:(id)arg1; +- (unsigned char)_magic; +- (void)_deserializeOpSpecificValuesFromData:(id)arg1 cursor:(unsigned long long *)arg2; +- (void)dealloc; +- (void)finalize; +- (BOOL)getMessageId:(id *)arg1 andInternalDate:(id *)arg2 forDestinationUid:(unsigned int)arg3; +- (void)setMessageId:(id)arg1 andInternalDate:(id)arg2 forMessageWithSourceUid:(unsigned int)arg3; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (unsigned long long)approximateSize; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPOperation.h b/MailHeaders/Lion/Message/IMAPOperation.h new file mode 100644 index 00000000..633891ca --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPOperation.h @@ -0,0 +1,72 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSString; + +@interface IMAPOperation : NSObject +{ + unsigned int _type:8; + unsigned int _temporaryUids:1; + NSString *_mailboxName; + union { + struct { + NSArray *trueFlags; + NSArray *falseFlags; + struct __CFArray *uids; + } store; + struct { + unsigned int uid; + NSArray *flags; + int internalDate; + unsigned int size; + } append; + struct { + struct __CFArray *srcUids; + struct __CFArray *dstUids; + NSString *destinationMailbox; + } copy; + } _opSpecific; +} + ++ (id)newOperationWithSerializedData:(id)arg1 cursor:(unsigned long long *)arg2; +- (unsigned char)_magic; +- (void)_deserializeOpSpecificValuesFromData:(id)arg1 cursor:(unsigned long long *)arg2; +- (void)serializeIntoData:(id)arg1; +- (id)initWithMailboxToCreate:(id)arg1; +- (id)initWithMailboxToDelete:(id)arg1; +- (id)initWithFlagsToSet:(id)arg1 flagsToClear:(id)arg2 forUids:(id)arg3 inMailbox:(id)arg4; +- (id)initWithUidsToCopy:(id)arg1 fromMailbox:(id)arg2 toMailbox:(id)arg3 firstNewUid:(unsigned int)arg4; +- (id)initWithAppendedUid:(unsigned int)arg1 approximateSize:(unsigned int)arg2 flags:(id)arg3 internalDate:(id)arg4 mailbox:(id)arg5; +- (void)dealloc; +- (void)finalize; +- (BOOL)isSourceOfTemporaryUid:(unsigned int)arg1; +- (BOOL)actsOnTemporaryUid:(unsigned int)arg1; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (unsigned int)firstTemporaryUid; +- (unsigned int)lastTemporaryUid; +- (BOOL)operationType; +- (id)mailboxName; +- (unsigned long long)approximateSize; +- (BOOL)usesRealUids; +- (void)setUsesRealUids:(BOOL)arg1; +- (id)flagsToSet; +- (id)flagsToClear; +- (id)uids; +- (id)flags; +- (id)internalDate; +- (unsigned int)uid; +- (id)sourceUids; +- (id)destinationUids; +- (id)destinationMailbox; +- (unsigned int)sourceUidForTemporaryUid:(unsigned int)arg1; +- (BOOL)getMessageId:(id *)arg1 andInternalDate:(id *)arg2 forDestinationUid:(unsigned int)arg3; +- (void)setMessageId:(id)arg1 andInternalDate:(id)arg2 forMessageWithSourceUid:(unsigned int)arg3; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPOperationCache.h b/MailHeaders/Lion/Message/IMAPOperationCache.h new file mode 100644 index 00000000..b4e5be1a --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPOperationCache.h @@ -0,0 +1,44 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class IMAPAccount, NSMutableArray; + +@interface IMAPOperationCache : NSObject +{ + IMAPAccount *_account; + NSMutableArray *_ops; + unsigned int _lastUid; + BOOL _opsChanged; +} + +- (id)initWithIMAPAccount:(id)arg1; +- (id)init; +- (void)dealloc; +- (void)createMailbox:(id)arg1; +- (void)deleteMailbox:(id)arg1; +- (void)setFlags:(id)arg1 andClearFlags:(id)arg2 forMessages:(id)arg3; +- (void)setFlags:(id)arg1 andClearFlags:(id)arg2 forUids:(id)arg3 forMailbox:(id)arg4; +- (unsigned int)firstUidForCopyingMessages:(id)arg1 toMailbox:(id)arg2; +- (unsigned int)uidForAppendingMessageData:(id)arg1 withFlags:(id)arg2 andInternalDate:(id)arg3 toMailbox:(id)arg4; +- (void)_expungeMessageWithTemporaryUid:(unsigned int)arg1 orMessageID:(id)arg2 documentID:(id)arg3; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (void)expungeMessageWithMessageID:(id)arg1 documentID:(id)arg2; +- (void)saveChanges; +- (unsigned long long)numberOfPendingChanges; +- (BOOL)hasOperationsForMailbox:(id)arg1; +- (BOOL)_performCreateOperation:(id)arg1 withContext:(CDStruct_591b809f *)arg2; +- (BOOL)_performDeleteOperation:(id)arg1 withContext:(CDStruct_591b809f *)arg2; +- (BOOL)_performStoreOperation:(id)arg1 ignoringUids:(id)arg2 withContext:(CDStruct_591b809f *)arg3; +- (BOOL)_performAppendOperation:(id)arg1 withContext:(CDStruct_591b809f *)arg2 backupManager:(id)arg3 suggestedOfflineRestoreName:(id)arg4 recoveredMailboxName:(id *)arg5 error:(id *)arg6; +- (BOOL)_performCopyOperation:(id)arg1 withContext:(CDStruct_591b809f *)arg2 failedSourceUids:(id)arg3 error:(id *)arg4; +- (void)performDeferredOperationsWithGateway:(id)arg1 outDisplayableError:(id *)arg2; +- (id)_deferredOperations; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPQuotaRoot.h b/MailHeaders/Lion/Message/IMAPQuotaRoot.h new file mode 100644 index 00000000..280fd77f --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPQuotaRoot.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString, QuotaUsage; + +@interface IMAPQuotaRoot : NSObject +{ + NSString *_name; + QuotaUsage *_usage; +} + +- (void)dealloc; +- (id)initWithName:(id)arg1; +- (id)init; +- (void)setUsageFromResponse:(id)arg1; +- (id)description; +@property(retain) QuotaUsage *usage; // @synthesize usage=_usage; +@property(copy) NSString *name; // @synthesize name=_name; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPResponse.h b/MailHeaders/Lion/Message/IMAPResponse.h new file mode 100644 index 00000000..c77bafd6 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPResponse.h @@ -0,0 +1,75 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MFError, NSString; + +@interface IMAPResponse : NSObject +{ + union _IMAPResponseData _data; + NSString *_tag; + MFError *_error; + BOOL _responseType; + BOOL _wasHandled; +} + +- (BOOL)responseType; +- (void)setResponseType:(BOOL)arg1; +- (BOOL)isUntagged; +- (BOOL)isAlertResponse; +- (id)tag; +- (void)setTag:(id)arg1; +- (void)dealloc; +- (void)finalize; +- (long long)responseCode; +- (id)responseInfo; +- (id)userData; +- (id)userString; +- (void)setUserData:(id)arg1 responseCode:(long long)arg2 responseInfo:(id)arg3; +- (id)capabilities; +- (void)setCapabilities:(id)arg1; +- (unsigned long long)number; +- (void)setNumber:(unsigned long long)arg1; +- (id)flags; +- (void)setFlags:(id)arg1; +- (id)mailboxName; +- (id)statusEntries; +- (void)setMailboxName:(id)arg1 statusEntries:(id)arg2; +- (id)searchResults; +- (void)setSearchResults:(id)arg1; +- (unsigned long long)mailboxAttributes; +- (id)separator; +- (void)setMailboxAttributes:(unsigned long long)arg1 separator:(id)arg2 mailboxName:(id)arg3; +- (id)fetchResultWithType:(unsigned long long)arg1; +- (id)fetchResults; +- (void)setFetchResults:(id)arg1; +- (BOOL)isValid; +- (void)setIsValid:(BOOL)arg1; +- (id)quotaRootNames; +- (void)setMailboxName:(id)arg1 quotaRootNames:(id)arg2; +- (id)quotaRootName; +- (id)quotas; +- (void)setQuotaRootName:(id)arg1 quotas:(id)arg2; +- (id)serverID; +- (void)_setServerID:(id)arg1; +- (BOOL)uidFlagsChange; +- (void)setUidFlagsChange:(BOOL)arg1; +- (id)uids; +- (void)setUids:(id)arg1; +- (id)flagsFetchResult; +- (void)setFlagsFetchResult:(id)arg1; +- (id)responseName; +- (id)parameters; +- (void)setResponseName:(id)arg1 parameters:(id)arg2; +- (id)description; +- (id)initWithConnection:(id)arg1 error:(id *)arg2; +- (void)setError:(id)arg1; +- (id)error; +@property BOOL wasHandled; // @synthesize wasHandled=_wasHandled; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPResponseHandler-Protocol.h b/MailHeaders/Lion/Message/IMAPResponseHandler-Protocol.h new file mode 100644 index 00000000..44d16122 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPResponseHandler-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol IMAPResponseHandler +- (BOOL)handleResponse:(id)arg1 forOperation:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Message/IMAPSimpleDownload.h b/MailHeaders/Lion/Message/IMAPSimpleDownload.h new file mode 100644 index 00000000..0ed49606 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPSimpleDownload.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MFError, NSMutableData, NSString; + +@interface IMAPSimpleDownload : IMAPDownload +{ + NSMutableData *_mdata; + MFError *_error; + unsigned int _length:32; + BOOL _knownLength; + BOOL _complete; + unsigned int _bytesFetched; + NSString *_partSectionSpecifier; + int _textSectionSpecifier; +} + +- (id)initWithUid:(unsigned int)arg1 partSectionSpecifier:(id)arg2 textSectionSpecifier:(int)arg3 estimatedLength:(unsigned int)arg4; +- (id)initWithUid:(unsigned int)arg1 partSectionSpecifier:(id)arg2 textSectionSpecifier:(int)arg3 length:(unsigned int)arg4; +- (id)initWithUid:(unsigned int)arg1; +- (id)createCopy; +- (void)dealloc; +- (unsigned int)bytesFetched; +- (unsigned int)expectedLength; +- (void)handleFetchResult:(id)arg1; +- (void)processResults; +- (void)addCommandsToPipeline:(id)arg1 withCache:(id)arg2; +- (BOOL)isComplete; +- (id)data; +- (id)error; +- (void)setError:(id)arg1; +@property int textSectionSpecifier; // @synthesize textSectionSpecifier=_textSectionSpecifier; +@property(retain) NSString *partSectionSpecifier; // @synthesize partSectionSpecifier=_partSectionSpecifier; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPSingleClientOperation.h b/MailHeaders/Lion/Message/IMAPSingleClientOperation.h new file mode 100644 index 00000000..4fad7355 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPSingleClientOperation.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MFError, NSMutableArray, NSString; + +@interface IMAPSingleClientOperation : IMAPClientOperation +{ + NSMutableArray *_untaggedResponses; + MFError *_error; + unsigned long long _sequenceNumber; + unsigned long long _sessionNumber; + BOOL _isComplete; +} + +- (void)dealloc; +- (int)composition; +@property(readonly) BOOL handlesAllUntaggedResponses; +@property unsigned long long sequenceNumber; // @synthesize sequenceNumber=_sequenceNumber; +- (void)cleanupAfterCompletion; +@property(readonly) NSString *debugCommandString; +- (id)newCommandDataForLiteralPlus:(BOOL)arg1; +@property(readonly) NSString *tag; +- (id)newCommandString; +@property BOOL isComplete; // @synthesize isComplete=_isComplete; +@property unsigned long long sessionNumber; // @synthesize sessionNumber=_sessionNumber; +@property(retain) MFError *error; // @synthesize error=_error; +@property(retain) NSMutableArray *untaggedResponses; // @synthesize untaggedResponses=_untaggedResponses; + +@end + diff --git a/MailHeaders/Lion/Message/IMAPSizeEngine.h b/MailHeaders/Lion/Message/IMAPSizeEngine.h new file mode 100644 index 00000000..8908d2c2 --- /dev/null +++ b/MailHeaders/Lion/Message/IMAPSizeEngine.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableDictionary, NSMutableSet; + +@interface IMAPSizeEngine : RemoteStoreSizeEngine +{ + unsigned long long _workerThreadCount; + NSMutableDictionary *_mailboxesByQuotaRoot; + NSMutableSet *_quotasToFetch; + NSMutableSet *_observedIMAPMailboxes; + NSMutableSet *_observedIMAPQuotaRoots; + int _quotaStatus; +} + +- (id)initWithAccount:(id)arg1; +- (void)dealloc; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_addUsageInfoFromMailbox:(id)arg1; +- (void)_addQuotaRootsFromMailbox:(id)arg1; +- (BOOL)_changeUsageInfo:(CDStruct_d3e19d9e *)arg1 forMailboxUid:(id)arg2 refetchQuotas:(BOOL)arg3; +- (void)_changeQuotaRoots:(id)arg1 forMailboxUid:(id)arg2; +- (void)_mailboxBecameInvalid:(id)arg1; +- (void)_getSizeForMailboxUid:(id)arg1; +- (void)_runWorkerThread; +- (BOOL)_shouldStartWorkerThread; +- (int)quotaStatus; +- (id)quotaNames; +- (id)usageForQuotaName:(id)arg1; +- (id)mutableCopyOfMailboxesForQuotaName:(id)arg1; +- (BOOL)mailbox:(id)arg1 usesQuotaName:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/ISPAccountSettingsManager.h b/MailHeaders/Lion/Message/ISPAccountSettingsManager.h new file mode 100644 index 00000000..34054e3d --- /dev/null +++ b/MailHeaders/Lion/Message/ISPAccountSettingsManager.h @@ -0,0 +1,48 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableDictionary; + +@interface ISPAccountSettingsManager : NSObject +{ + NSMutableDictionary *_ispAccountsSettings; + NSMutableDictionary *_ispReceivingAccountsSettingsByDomain; + NSMutableDictionary *_ispDeliveryAccountsSettingsByDomain; + NSMutableDictionary *_ispDeliveryAccountsSettingsByIdentifier; +} + ++ (void)initialize; ++ (id)locallyInstalledSettings; ++ (id)onlineDatabaseSettings; ++ (id)_alwaysPersistedKeys; ++ (BOOL)ispAccountInformationAvailableForDomain:(id)arg1; ++ (id)ispBrandNameForDomain:(id)arg1; ++ (id)ispSupportURLForDomain:(id)arg1; ++ (id)ispSupportURLLabelForDomain:(id)arg1; ++ (id)ispSubscriptionURLForDomain:(id)arg1; ++ (id)ispSubscriptionURLLabelForDomain:(id)arg1; ++ (id)_accountInformationStringForKey:(id)arg1 localizedKey:(id)arg2 domain:(id)arg3; +- (void)dealloc; +- (id)_persistanceFolderName; +- (void)_loadISPAccountsIfNecessary; +- (void)_unloadISPAccounts; +- (void)_loadISPPlistsAtPath:(id)arg1; +- (void)_loadISPPlist:(id)arg1 bundle:(id)arg2 path:(id)arg3; +- (BOOL)_shouldVerifyLoadedISPPlist; +- (id)_persistantAccountSettings:(id)arg1; +- (id)_persistantISPAccountSettings:(id)arg1; +- (BOOL)_persistISPPlist:(id)arg1; +- (void)_getAccoutClass:(Class *)arg1 isReceivingAccount:(char *)arg2 isDeliveryAccount:(char *)arg3 fromAccountSettings:(id)arg4; +- (id)_receivingAccountSettingsForDomain:(id)arg1 fetchIfNecessary:(BOOL)arg2; +- (id)receivingAccountSettingsForDomain:(id)arg1; +- (id)_deliveryAccountsSettingsForDomain:(id)arg1 fetchIfNecessary:(BOOL)arg2; +- (id)deliveryAccountsSettingsForDomain:(id)arg1; +- (void)emptyCache; + +@end + diff --git a/MailHeaders/Lion/Message/ImageJunkMetadata.h b/MailHeaders/Lion/Message/ImageJunkMetadata.h new file mode 100644 index 00000000..c15b31ff --- /dev/null +++ b/MailHeaders/Lion/Message/ImageJunkMetadata.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface ImageJunkMetadata : NSObject +{ + int _type; + struct CGSize _size; + unsigned long long _frameCount; + unsigned long long _pixelCount; + unsigned long long _byteCount; + double _density; + BOOL _isAnimated; +} + ++ (id)stringForImageType:(int)arg1; ++ (id)lsmMarkerForImageSizeCategory:(int)arg1; ++ (id)lsmMarkerForImageDensityCategory:(int)arg1; +- (id)initWithImage:(id)arg1 name:(id)arg2 type:(int)arg3; +- (void)dealloc; +- (void)computeDensity; +@property unsigned long long byteCount; // @synthesize byteCount=_byteCount; +@property unsigned long long pixelCount; // @synthesize pixelCount=_pixelCount; +@property(readonly) int sizeCategory; +@property(readonly) int densityCategory; +- (id)description; +@property unsigned long long frameCount; // @synthesize frameCount=_frameCount; +@property BOOL isAnimated; // @synthesize isAnimated=_isAnimated; +@property double density; // @synthesize density=_density; +@property struct CGSize size; // @synthesize size=_size; +@property int type; // @synthesize type=_type; + +@end + diff --git a/MailHeaders/Lion/Message/InvocationQueue.h b/MailHeaders/Lion/Message/InvocationQueue.h new file mode 100644 index 00000000..6d41bdcd --- /dev/null +++ b/MailHeaders/Lion/Message/InvocationQueue.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSOperationQueue.h" + +@class NSPort; + +@interface InvocationQueue : NSOperationQueue +{ + NSPort *_runLoopCancelPort; +} + ++ (void)cancelAllMonitoredItems; ++ (BOOL)didCancelAllMonitoredItems; +- (id)init; +- (id)initWithMaxConcurrentOperationCount:(long long)arg1; +- (void)dealloc; +- (void)finalize; +- (void)addInvocation:(id)arg1; +- (void)runInvocationOnQueueSynchronously:(id)arg1; +- (id)_newOperationWithInvocation:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; + +@end + diff --git a/MailHeaders/Lion/Message/JunkMailFilter.h b/MailHeaders/Lion/Message/JunkMailFilter.h new file mode 100644 index 00000000..37b63243 --- /dev/null +++ b/MailHeaders/Lion/Message/JunkMailFilter.h @@ -0,0 +1,66 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString, NSURL; + +@interface JunkMailFilter : NSObject +{ + struct __LSMMap *_map; + NSString *_mapFilePath; + NSURL *_mapFileURL; + NSURL *_oldMapFileURL; + double _lsmThreshold; + BOOL _isDirty; + BOOL _isInTraining; + BOOL _useCleanMap; +} + ++ (id)sharedInstance; ++ (id)_junkFilterUsageCounterKeys; ++ (long long)daysUntilTransition; ++ (BOOL)shouldUpdateTrainingDebt; ++ (void)incrementJunkMailTrainingDebtBy:(long long)arg1; ++ (void)incrementJunkMailTrainingCreditBy:(long long)arg1; ++ (void)resetJunkMailTrainingBalance; ++ (void)resetJunkMailUsageCounters; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (struct __LSMMap *)map; +- (void)setMap:(struct __LSMMap *)arg1; +@property(readonly) unsigned long long evaluatedMessageCount; +@property(readonly) unsigned long long evaluatedAsJunkMessageCount; +@property(readonly) unsigned long long manuallyMarkedAsJunkMessageCount; +@property(readonly) unsigned long long manuallyMarkedAsNotJunkMessageCount; +- (void)reset; +- (void)saveTraining; +@property(readonly) long long junkMailTrainingBalance; +@property(readonly) long long junkMailTrainingDebt; +@property(readonly) long long junkMailTrainingCredit; +@property(readonly) BOOL isEnabled; +- (id)state; +@property(readonly) BOOL gatherUsageCounts; +- (id)_usageCounter; +- (int)junkMailLevelForMessage:(id)arg1; +- (int)junkMailLevelForMessage:(id)arg1 junkRecorder:(id)arg2; +- (id)trainOnMessages:(id)arg1 junkMailLevel:(int)arg2; +- (void)userDidReplyToMessage:(id)arg1; +@property(nonatomic) BOOL isDirty; +- (void)_saveTrainingWithDelay; +@property(nonatomic) BOOL isInTraining; // @synthesize isInTraining=_isInTraining; +@property(nonatomic) double lsmThreshold; // @synthesize lsmThreshold=_lsmThreshold; +@property(retain) NSString *mapFilePath; // @synthesize mapFilePath=_mapFilePath; +@property(retain) NSURL *mapFileURL; // @synthesize mapFileURL=_mapFileURL; +@property(retain) NSURL *oldMapFileURL; // @synthesize oldMapFileURL=_oldMapFileURL; +@property(nonatomic) BOOL useCleanMap; // @synthesize useCleanMap=_useCleanMap; + +@end + diff --git a/MailHeaders/Lion/Message/JunkRecorder.h b/MailHeaders/Lion/Message/JunkRecorder.h new file mode 100644 index 00000000..d688d8a4 --- /dev/null +++ b/MailHeaders/Lion/Message/JunkRecorder.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableDictionary; + +@interface JunkRecorder : NSObject +{ + BOOL _isShort; + BOOL _isSigned; + long long _imageCount; + long long _characterCount; + double _imageToTextRatio; + NSMutableDictionary *_imageInfos; + double _lsmScore; +} + +- (id)init; +- (void)dealloc; +- (id)description; +@property double lsmScore; // @synthesize lsmScore=_lsmScore; +@property BOOL isShort; // @synthesize isShort=_isShort; +@property BOOL isSigned; // @synthesize isSigned=_isSigned; +@property(retain) NSMutableDictionary *imageInfos; // @synthesize imageInfos=_imageInfos; +@property double imageToTextRatio; // @synthesize imageToTextRatio=_imageToTextRatio; +@property long long characterCount; // @synthesize characterCount=_characterCount; +@property long long imageCount; // @synthesize imageCount=_imageCount; + +@end + diff --git a/MailHeaders/Lion/Message/Library.h b/MailHeaders/Lion/Message/Library.h new file mode 100644 index 00000000..8f7a1a02 --- /dev/null +++ b/MailHeaders/Lion/Message/Library.h @@ -0,0 +1,262 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "LibraryInterface-Protocol.h" + +@interface Library : NSObject +{ +} + ++ (id)sharedInstance; ++ (void)commitMessage:(id)arg1 immediately:(BOOL)arg2; ++ (id)backingStoreJournalDirectory; ++ (id)backingStoreJournalPath; ++ (BOOL)removeBackingStoreUpdateJournal; ++ (BOOL)updateBackingStoreUpdateJournal; ++ (void)_mergeRestoreMessageLibraryIDsToUpdate:(id)arg1; ++ (void)restoreBackingStoreUpdateJournalIfNeeded; ++ (void)flagsChangedForMessages:(id)arg1; ++ (void)updateJunkMessagesForIndexing; ++ (void)_addMessagesNeedingEmlxUpdate:(id)arg1; ++ (void)_setCommitTimer:(id)arg1; ++ (void)_setUpdateEmlxTimer:(id)arg1; ++ (void)scheduleCommit; ++ (void)unScheduleCommit; ++ (void)scheduleMessageFileUpdate; ++ (void)unScheduleMessageFileUpdate; ++ (void)synchronouslyUpdateMessageFiles; ++ (void)commitSynchronously; ++ (void)commitSynchronouslyPostingMessages:(id)arg1 postFlags:(id)arg2 postingOldFlagsByMessage:(id)arg3; ++ (void)_commitMessagesInBackground; ++ (void)_updateMessageFilesInBackground; ++ (void)waitForCommitsToFinish; ++ (void)setSnippetsForMessages:(id)arg1; ++ (void)commitFlagsForMessage:(id)arg1 oldFlags:(unsigned int)arg2; ++ (void)async_loadMessageCountsForMailboxes; ++ (void)_commitFlagsForMessage:(id)arg1 oldFlags:(id)arg2; ++ (void)setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; ++ (void)setFlagsAndColorForMessages:(id)arg1; ++ (void)updateEncodingForMessage:(id)arg1; ++ (void)updateSize:(id)arg1 forMessage:(id)arg2; ++ (BOOL)initializeDatabase:(struct sqlite3 *)arg1; ++ (id)writeQueue; ++ (void)initialize; ++ (BOOL)setupLibrary; ++ (void)_mailboxWillBeInvalidated:(id)arg1; ++ (void)_mailboxWasRenamed:(id)arg1; ++ (void)_mailAccountsDidChange:(id)arg1; ++ (id)plistDataForMessage:(id)arg1 subject:(id)arg2 sender:(id)arg3 to:(id)arg4 dateSent:(id)arg5 remoteID:(id)arg6 originalMailbox:(id)arg7 flags:(long long)arg8 mergeWithDictionary:(id)arg9; ++ (BOOL)_writeEmlxFile:(id)arg1 forMessage:(id)arg2 withEmlxData:(id)arg3 error:(id *)arg4; ++ (BOOL)_writeEmlxFile:(id)arg1 forMessage:(id)arg2 withBodyData:(id)arg3 plistData:(id)arg4 error:(id *)arg5; ++ (void)touchDirectoryForMailbox:(id)arg1; ++ (void)deleteDataDirectoriesForMailbox:(id)arg1; ++ (void)fixAttachmentCache; ++ (BOOL)isRemoteStoreAccount:(id)arg1; ++ (BOOL)isLocalAccount:(id)arg1; ++ (BOOL)isLibraryMessage:(id)arg1; ++ (BOOL)canUseEmlxFileWhenCopyingMessage:(id)arg1 fromAccount:(id)arg2 toAccount:(id)arg3; ++ (void)cleanupTablesReferencingMessageID:(long long)arg1 inDatabase:(id)arg2; ++ (void)updateConversationsIfNeeded; ++ (void)_updatePrefix:(id)arg1 withNewPrefix:(id)arg2 forMessagesWithSubject:(long long)arg3; ++ (BOOL)updateSubjectPrefixes:(id)arg1 onlyForMessagesMissingConversations:(BOOL)arg2; ++ (void)updateAllRowsMissingConversations:(id)arg1 conversationUserInfo:(id)arg2 conversationsWereReset:(BOOL)arg3 progressDelegate:(id)arg4; ++ (void)updateAllRowsMissingFuzzyAncestor:(id)arg1; ++ (void)_addMessagesInDictionary:(id)arg1 toDictionary:(id)arg2; ++ (void)calculateConversationForMessage:(id)arg1; ++ (void)createNewConversationFromMessage:(id)arg1 automatedConversationType:(unsigned long long)arg2; ++ (void)addMessage:(id)arg1 toConversation:(long long)arg2 automatedConversationType:(unsigned long long)arg3; ++ (void)mergeMessagesInConversations:(id)arg1 withConversation:(id)arg2 automatedConversationType:(unsigned long long)arg3; ++ (id)insertOrUpdateMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 isInitialImport:(BOOL)arg4 oldMessagesByNewMessage:(id)arg5 remoteIDs:(id)arg6 newDocumentIDs:(id)arg7 setFlags:(long long)arg8 clearFlags:(long long)arg9 messageFlagsForMessages:(id)arg10 copyFiles:(BOOL)arg11 progressDelegate:(id)arg12 updateRowIDs:(id)arg13 error:(id *)arg14; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 isInitialImport:(BOOL)arg4 oldMessagesByNewMessage:(id)arg5 remoteIDs:(id)arg6 setFlags:(long long)arg7 clearFlags:(long long)arg8 messageFlagsForMessages:(id)arg9 copyFiles:(BOOL)arg10 error:(id *)arg11; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 isInitialImport:(BOOL)arg4 oldMessagesByNewMessage:(id)arg5 error:(id *)arg6; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 oldMessagesByNewMessage:(id)arg4 error:(id *)arg5; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 progressDelegate:(id)arg3 error:(id *)arg4; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 error:(id *)arg3; ++ (id)duplicateMessages:(id)arg1 newRemoteIDs:(id)arg2 newDocumentIDs:(id)arg3 forMailbox:(id)arg4 setFlags:(long long)arg5 clearFlags:(long long)arg6 messageFlagsForMessages:(id)arg7 createNewCacheFiles:(BOOL)arg8 error:(id *)arg9; ++ (id)duplicateMessages:(id)arg1 newRemoteIDs:(id)arg2 newDocumentIDs:(id)arg3 forMailbox:(id)arg4 setFlags:(long long)arg5 clearFlags:(long long)arg6 createNewCacheFiles:(BOOL)arg7 error:(id *)arg8; ++ (void)setAttachmentNames:(id)arg1 forMessage:(id)arg2; ++ (void)setThreadPriority:(int)arg1; ++ (int)threadPriority; ++ (int)updateSequenceNumber; ++ (int)accessSequenceNumber; ++ (void)invalidateMyEmailAddresses; ++ (id)myAddressIDsString; ++ (void)invalidateActiveMailboxesCaches; ++ (void)disableActiveMailboxFiltering; ++ (void)_getActiveAccountURLs:(id)arg1 andActiveMailboxURLs:(id)arg2; ++ (id)_updatedActiveMailboxes:(id)arg1; ++ (void)_updateActiveMailboxes; ++ (BOOL)_isActiveMailboxID:(long long)arg1; ++ (id)_updatedActiveMailboxesClause:(id)arg1; ++ (void)_updateActiveMailboxesClause; ++ (id)_copyActiveMailboxesClause; ++ (void)_setRecipientTypeForMessages:(id)arg1; ++ (void)sendMessagesMatchingQuery:(const char *)arg1 to:(id)arg2 options:(unsigned int)arg3; ++ (id)messagesMatchingQuery:(const char *)arg1 options:(unsigned int)arg2; ++ (id)messagesWhere:(id)arg1 sortedBy:(id)arg2 options:(unsigned int)arg3; ++ (void)sendMessagesForMailbox:(id)arg1 where:(id)arg2 sortedBy:(id)arg3 ascending:(BOOL)arg4 to:(id)arg5 options:(unsigned int)arg6; ++ (id)messagesForMailbox:(id)arg1 where:(id)arg2 sortedBy:(id)arg3 ascending:(BOOL)arg4 options:(unsigned int)arg5; ++ (id)messagesForMailbox:(id)arg1 olderThanNumberOfDays:(long long)arg2; ++ (id)unreadMessagesForMailbox:(id)arg1; ++ (void)gatherCountsForMailbox:(id)arg1 totalCount:(unsigned long long *)arg2 unreadCount:(unsigned long long *)arg3 deletedCount:(unsigned long long *)arg4 totalSize:(unsigned long long *)arg5; ++ (unsigned long long)unreadCountForMessageType:(BOOL)arg1; ++ (void)setMessageCountsForMailboxes; ++ (id)messageWithRemoteID:(id)arg1 inRemoteMailbox:(id)arg2 options:(unsigned int)arg3; ++ (unsigned int)maximumRemoteIDForMailbox:(id)arg1; ++ (id)getDetailsForMessagesWithRemoteIDStrings:(id)arg1 fromMailbox:(id)arg2; ++ (id)getDetailsForMessagesWithRemoteIDs:(id)arg1 fromMailbox:(id)arg2; ++ (id)getDetailsForMessagesWithQuery:(char *)arg1 contiguous:(BOOL)arg2 firstRemoteID:(unsigned long long)arg3 lastRemoteID:(unsigned long long)arg4 fromMailbox:(id)arg5; ++ (void)setStoresForMessages:(id)arg1; ++ (void)setStoreForMessage:(id)arg1 knownStores:(id)arg2; ++ (void)setStoreForMessage:(id)arg1 fromMailbox:(id)arg2 knownStores:(id)arg3; ++ (id)messageWithMessageID:(id)arg1; ++ (id)messagesWithMessageIDHeader:(id)arg1; ++ (id)messageWithLibraryID:(long long)arg1 options:(unsigned int)arg2; ++ (id)messageWithLibraryID:(long long)arg1; ++ (id)firstReplyToMessage:(id)arg1; ++ (BOOL)messageHasRelatedNonJunkMessages:(id)arg1; ++ (unsigned long long)unsignedCountForQuery:(id)arg1 monitor:(id)arg2; ++ (BOOL)boolForQuery:(id)arg1; ++ (id)referencesForLibraryID:(long long)arg1; ++ (id)copyMailboxURLToRowIDMap; ++ (void)mailboxesDidChange; ++ (id)urlForMailboxID:(long long)arg1; ++ (id)mailboxUidForMessage:(id)arg1; ++ (id)remoteStoreForMessage:(id)arg1; ++ (id)accountForMessage:(id)arg1; ++ (id)mailboxNameForMessage:(id)arg1; ++ (BOOL)_loadSecondaryMetadataForMessage:(id)arg1 fromDB:(struct sqlite3 *)arg2; ++ (BOOL)loadSecondaryMetadataForMessage:(id)arg1; ++ (id)snippetsForMessages:(id)arg1; ++ (void)reloadMessage:(id)arg1; ++ (void)updateFileForMessage:(id)arg1; ++ (BOOL)shouldCancel; ++ (void)removeMessages:(id)arg1; ++ (void)removeMessages:(id)arg1 cleanUpAfter:(BOOL)arg2; ++ (void)compactMailbox:(id)arg1; ++ (BOOL)renameMailboxes:(id)arg1 to:(id)arg2; ++ (void)deleteMailboxes:(id)arg1; ++ (void)deleteMailboxes:(id)arg1 forRebuild:(BOOL)arg2; ++ (id)messagesWithMessageID:(id)arg1 inMailbox:(id)arg2; ++ (id)lastMessageWithMessageID:(id)arg1 inMailbox:(id)arg2; ++ (BOOL)addFeed:(id)arg1 forMailbox:(id)arg2; ++ (void)deleteFeedForMailbox:(id)arg1; ++ (id)feedURLStringForMailbox:(id)arg1; ++ (id)mailboxURLStringForFeed:(id)arg1; ++ (id)unflaggedArticlesCreatedBeforeDate:(id)arg1; ++ (id)articlesByRemoteIDForRemoteIDs:(id)arg1; ++ (id)noteWithDocumentID:(id)arg1; ++ (void)setLastReceivedArticlesDate:(id)arg1; ++ (id)lastReceivedArticlesDate; ++ (void)removeRemoteIDsFromRSSArticlesInMessages:(id)arg1; ++ (BOOL)_EWSFolderExistsForMailbox:(id)arg1 errorString:(id)arg2; ++ (void)_addEWSProperty:(char *)arg1 value:(id)arg2 forMailbox:(id)arg3 errorString:(id)arg4; ++ (id)_EWSProperty:(char *)arg1 forMailbox:(id)arg2 errorString:(id)arg3; ++ (void)setEWSFolderId:(id)arg1 forMailbox:(id)arg2; ++ (id)EWSFolderIdForMailbox:(id)arg1; ++ (id)EWSFolderIdsByURLForMailboxes:(id)arg1; ++ (void)setEWSSyncState:(id)arg1 forMailbox:(id)arg2; ++ (id)EWSSyncStateForMailbox:(id)arg1; ++ (void)updateEWSOfflineIdsToRealIds:(id)arg1; ++ (void)_loadDatabaseUUIDStringIfNeeded:(struct sqlite3 *)arg1; ++ (void)_setDatabaseUUIDString:(id)arg1; ++ (id)_databaseUUIDString; ++ (void)_invalidateDirectoryForMailboxes:(id)arg1; ++ (id)dataDirectoryForMailbox:(id)arg1; ++ (id)v2_intermediateDirectoryForLibraryID:(long long)arg1 forAttachments:(BOOL)arg2; ++ (id)intermediateDirectoryForLibraryID:(long long)arg1 forAttachments:(BOOL)arg2; ++ (id)filenameForLibraryID:(long long)arg1 part:(id)arg2; ++ (id)_filenameForLibraryID:(long long)arg1 type:(int)arg2; ++ (id)attachmentsDirectoryForMessage:(id)arg1; ++ (id)_dataPathForMessage:(id)arg1 withFilename:(id)arg2; ++ (id)dataPathForMessage:(id)arg1; ++ (id)dataPathForMessage:(id)arg1 part:(id)arg2; ++ (id)_dataPathForMessage:(id)arg1 type:(int)arg2; ++ (id)messageWithDataPath:(id)arg1; ++ (id)existingDataPathForMessage:(id)arg1; ++ (void)appendData:(id)arg1 forMessage:(id)arg2 part:(id)arg3; ++ (void)setData:(id)arg1 forMessage:(id)arg2 isPartial:(BOOL)arg3; ++ (void)setData:(id)arg1 forMessage:(id)arg2 isPartial:(BOOL)arg3 hasCompleteText:(BOOL)arg4; ++ (id)bodyDataAtPath:(id)arg1 headerData:(id *)arg2; ++ (id)headerDataForMessage:(id)arg1; ++ (id)bodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; ++ (id)bodyDataForMessage:(id)arg1; ++ (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; ++ (id)fullBodyDataForMessage:(id)arg1; ++ (id)dataForMimePart:(id)arg1; ++ (BOOL)isMessageContentsLocallyAvailable:(id)arg1; ++ (BOOL)isPartialMessageBodyAvailable:(id)arg1; ++ (id)_messageDataAtPath:(id)arg1; ++ (id)fullMessageDataForMessage:(id)arg1; ++ (BOOL)hasCacheFileForMessage:(id)arg1 directoryContents:(id)arg2; ++ (BOOL)hasCacheFileForMessage:(id)arg1 part:(id)arg2 directoryContents:(id)arg3; ++ (void)markMessageAsViewed:(id)arg1 viewedDate:(id)arg2; ++ (id)queryForCriterion:(id)arg1 options:(unsigned long long)arg2 baseTable:(unsigned long long)arg3 isSubquery:(BOOL)arg4; ++ (id)queryForCriterion:(id)arg1 options:(unsigned long long)arg2 baseTable:(unsigned long long)arg3; ++ (id)queryForCriterion:(id)arg1 options:(unsigned long long)arg2; ++ (void)shouldCancelMDQuery:(struct __MDQuery *)arg1; ++ (void)sendMessagesMatchingCriterion:(id)arg1 to:(id)arg2 options:(unsigned int)arg3; ++ (id)messagesMatchingCriterion:(id)arg1 options:(unsigned int)arg2; ++ (id)_queryForCountCriterion:(id)arg1; ++ (unsigned long long)countForCriterion:(id)arg1 monitor:(id)arg2; ++ (unsigned long long)countForCriterion:(id)arg1; ++ (BOOL)boolForCriterion:(id)arg1; ++ (id)criterionExpressionStringForStartLibraryID:(long long)arg1 count:(unsigned long long)arg2; ++ (id)filterContiguousMessages:(id)arg1 forCriterion:(id)arg2 options:(unsigned int)arg3; ++ (BOOL)rebuildMailbox:(id)arg1; ++ (BOOL)importMailbox:(id)arg1; ++ (void)setLibraryIsImporting:(BOOL)arg1; ++ (BOOL)libraryIsImporting; ++ (BOOL)importMessagesFromEnabledAccounts; ++ (void)_upgradeMessageDirectoriesSynchronously; ++ (void)upgradeMessageDirectoriesIfNeeded; ++ (void)takeAccountsOnlineAllAccounts:(BOOL)arg1; ++ (BOOL)fileExists; ++ (void)dispose; ++ (int)_libraryStatusCanWrite:(BOOL)arg1; ++ (int)libraryStatus; ++ (BOOL)libraryStatusIsAvailable; ++ (BOOL)isInitialized; ++ (void)setInitialized; ++ (BOOL)threadIsExecutingInDatabaseBlock; ++ (void)setCurrentMailbox:(id)arg1; ++ (id)currentMailbox; ++ (void)incrementRunningIndexOfCurrentMessage; ++ (unsigned long long)runningIndexOfCurrentMessage; ++ (void)setTotalNumberOfMessages:(unsigned long long)arg1; ++ (unsigned long long)totalNumberOfMessages; ++ (void)cleanOldDatabases; ++ (void)prepareToReImportMessages; ++ (id)calendarEventForMessageID:(long long)arg1; ++ (BOOL)addCalendarEvent:(id)arg1 toMessage:(id)arg2; ++ (BOOL)updateCalendarEvent:(id)arg1 forMessage:(id)arg2; ++ (BOOL)deleteEventForMessage:(id)arg1; ++ (long long)mailboxIDForMailboxUid:(id)arg1 loadIfNotPresent:(BOOL)arg2; ++ (id)mailboxUidForMailboxID:(long long)arg1 forceCreation:(BOOL)arg2; ++ (id)_mailboxUidForMailboxID:(long long)arg1 forceCreation:(BOOL)arg2; ++ (long long)mailboxIDForMailboxUid:(id)arg1; ++ (long long)cachedMailboxIDForMailboxUid:(id)arg1; ++ (id)sqlSanitizeNSString:(id)arg1; ++ (void)executeBlock:(id)arg1 isWriter:(void)arg2 useTransaction:(BOOL)arg3 isPrivileged:(BOOL)arg4; ++ (void)executeWriteBlockInDatabase:(id)arg1; ++ (void)executeReadBlockInDatabase:(id)arg1; ++ (id)_checkOutDBHandleForWriting:(BOOL)arg1 isPrivileged:(BOOL)arg2; ++ (void)_checkInDBHandle:(id)arg1 forWriting:(BOOL)arg2; ++ (void)flushCachedDatabases; ++ (void)_tagDatabaseVersionIfNeeded:(struct sqlite3 *)arg1; ++ (id)newUnsignedForQuery:(id)arg1 db:(struct sqlite3 *)arg2; ++ (void)didCommit:(struct sqlite3 *)arg1; ++ (void)_queueMessagesNotification:(id)arg1 withUserInfo:(id)arg2; ++ (void)queueMessagesAddedNotification:(id)arg1; ++ (void)queueMessagesUpdatedNotification:(id)arg1; ++ (void)queueMessagesChangedNotificationForMessages:(id)arg1 flags:(id)arg2 oldFlagsByMessage:(id)arg3; ++ (void)queueMessagesCompactedNotification:(id)arg1; ++ (void)queueConversationsChangedNotification:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/LibraryCalendarEvent.h b/MailHeaders/Lion/Message/LibraryCalendarEvent.h new file mode 100644 index 00000000..31971dfa --- /dev/null +++ b/MailHeaders/Lion/Message/LibraryCalendarEvent.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSDate, NSString; + +@interface LibraryCalendarEvent : NSObject +{ + NSString *_originalReceivedAccountURLString; + NSString *_associatedCalendarItemIdString; + NSString *_location; + NSString *_uid; + NSDate *_startDate; + NSDate *_endDate; + BOOL _isAllDayEvent; + BOOL _isOutOfDate; + BOOL _hasBeenProcessed; + BOOL _isResponseRequested; + long long _responseStatus; +} + +- (void)dealloc; +@property long long responseStatus; // @synthesize responseStatus=_responseStatus; +@property BOOL isResponseRequested; // @synthesize isResponseRequested=_isResponseRequested; +@property BOOL hasBeenProcessed; // @synthesize hasBeenProcessed=_hasBeenProcessed; +@property BOOL isOutOfDate; // @synthesize isOutOfDate=_isOutOfDate; +@property BOOL isAllDayEvent; // @synthesize isAllDayEvent=_isAllDayEvent; +@property(copy) NSDate *endDate; // @synthesize endDate=_endDate; +@property(copy) NSDate *startDate; // @synthesize startDate=_startDate; +@property(copy) NSString *uid; // @synthesize uid=_uid; +@property(copy) NSString *location; // @synthesize location=_location; +@property(copy) NSString *associatedCalendarItemIdString; // @synthesize associatedCalendarItemIdString=_associatedCalendarItemIdString; +@property(copy) NSString *originalReceivedAccountURLString; // @synthesize originalReceivedAccountURLString=_originalReceivedAccountURLString; + +@end + diff --git a/MailHeaders/Lion/Message/LibraryIMAPMessage.h b/MailHeaders/Lion/Message/LibraryIMAPMessage.h new file mode 100644 index 00000000..2a4dcd86 --- /dev/null +++ b/MailHeaders/Lion/Message/LibraryIMAPMessage.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MessageHeaders; + +@interface LibraryIMAPMessage : LibraryMessage +{ + MessageHeaders *_headers; +} + +- (void)dealloc; +- (id)headers; +- (void)setHeaders:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/LibraryIMAPStore.h b/MailHeaders/Lion/Message/LibraryIMAPStore.h new file mode 100644 index 00000000..afa6553c --- /dev/null +++ b/MailHeaders/Lion/Message/LibraryIMAPStore.h @@ -0,0 +1,151 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "IMAPMailboxDelegate-Protocol.h" + +@class IMAPCommandPipeline, IMAPDownloadCache, IMAPMailbox, IMAPMailboxSyncEngine, InvocationQueue, NSLock, NSMutableArray, NSMutableDictionary, NSOperationQueue, NSString; + +@interface LibraryIMAPStore : RemoteStore +{ + double _lastNewMailCheckAllowedTime; + NSString *_mailboxName; + IMAPMailbox *_IMAPMailbox; + id _cachedDirLock; + NSMutableDictionary *_cachedDirContents; + struct __FSEventStream *_cachedDirstream; + NSOperationQueue *_cachedDirectoryOperationQueue; + IMAPDownloadCache *_downloadCache; + IMAPCommandPipeline *_fetchPipeline; + IMAPMailboxSyncEngine *_syncEngine; + NSLock *_copyLock; + NSMutableArray *_pendingCompacts; + InvocationQueue *_pendingCompactsQueue; + NSMutableDictionary *_recentFlagChangesByMessageID; + NSMutableArray *_recentlyDeletedMessageIDs; + unsigned long long _totalCount; + BOOL _supportsCustomPermanentFlags; + BOOL _readyToDealloc; + BOOL _isOpenedByUser; +} + ++ (id)_newDataFromMimePart:(id)arg1 threshold:(unsigned long long)arg2; +- (id)initWithCriterion:(id)arg1 mailbox:(id)arg2 readOnly:(BOOL)arg3; +- (void)dealloc; +- (void)finalize; +- (id)_IMAPMailbox; +- (id)_copyMailboxSyncEngineCreateIfNecessary:(BOOL)arg1 setupGatewayIfNecessary:(BOOL)arg2; +- (BOOL)_isRebuildingOrSynchronizing; +- (BOOL)_isSynchronized; +- (unsigned long long)_permanentFlags; +- (id)messagesForImporter; +- (void)openAsynchronously; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1 withOptions:(unsigned long long)arg2; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (void)openSynchronouslyWithoutUserInteraction; +- (id)willDealloc; +- (BOOL)setStoreState:(int)arg1 fromState:(int)arg2; +- (void)_invalidate; +- (BOOL)_shouldCallCompactWhenClosing; +- (void)_fetchForCheckingNewMail:(BOOL)arg1; +- (void)checkNewMail; +- (void)fetchSynchronously; +- (void)fetchSynchronouslyForKnownChanges; +- (void)cleanupSynchronously; +- (void)doRoutineCleanup; +- (BOOL)canRebuild; +- (void)removeAllLocalMessages; +- (id)mailboxName; +- (BOOL)canCompact; +- (void)doCompact; +- (void)_processPendingCompacts; +- (void)compactMessages:(id)arg1; +- (void)compactMessagesFromSyncEngine:(id)arg1; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (void)deleteLastMessageWithHeaders:(id)arg1 compactWhenDone:(BOOL)arg2; +- (void)undeleteMessagesWithRemoteIDs:(id)arg1; +- (BOOL)allowsAppend; +- (BOOL)allowsOverwrite; +- (void)_copyFlagsFromMessages:(id)arg1 flagsByMessage:(id)arg2 toMessagesWithUids:(id)arg3 withGateway:(id)arg4 usedFlags:(id)arg5; +- (BOOL)_copyMessagesByID:(id)arg1 toStore:(id)arg2 settingFlags:(id)arg3 newMessages:(id)arg4 error:(id *)arg5; +- (int)_appendToServerWithContext:(CDStruct_9f3328ff *)arg1 error:(id *)arg2; +- (id)_uidSearchForMessageIds:(id)arg1 destinationUidNext:(unsigned int)arg2 withGateway:(id)arg3; +- (int)undoAppendOfMessageIDs:(id)arg1; +- (id)newDictionaryForLocalFlags:(unsigned int)arg1 serverFlags:(unsigned int)arg2 existingDictionary:(id)arg3; +- (void)_synchronouslyStoreFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)recentFlagChangesForMessageID:(id)arg1; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2 updatingServer:(BOOL)arg3; +- (void)_internalSetFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)syncEngineDidSynchronizeMessageList; +- (BOOL)setPreferredEncoding:(unsigned int)arg1 forMessage:(id)arg2; +- (id)_dataForMessage:(id)arg1 readHeadersOnly:(BOOL)arg2; +- (id)_fetchDataForMimePart:(id)arg1 keepInMemory:(BOOL)arg2 writeToDisk:(BOOL)arg3; +- (id)dataForMimePart:(id)arg1; +- (void)_updateCacheInfoForPath:(id)arg1 scanSubDirectories:(BOOL)arg2; +- (id)_getCacheDirectoryContents; +- (BOOL)_hasCachedDataForMimePart:(id)arg1 message:(id)arg2; +- (id)cacheDirectoryContents; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_waitForDataFromDownload:(id)arg1 uid:(unsigned int)arg2 gateway:(id)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)colorForMessage:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (unsigned int)maximumRemoteIDForMailbox:(id)arg1; +- (id)getDetailsForMessagesWithRemoteIDs:(id)arg1 fromMailbox:(id)arg2; +- (BOOL)hasCacheFileForMessage:(id)arg1 part:(id)arg2 directoryContents:(id)arg3; +- (BOOL)hasCacheFileForMessage:(id)arg1 directoryContents:(id)arg2; +- (void)compactMailbox:(id)arg1; +- (id)messagesForMailbox:(id)arg1 where:(id)arg2 sortedBy:(id)arg3 ascending:(BOOL)arg4 options:(unsigned int)arg5; +- (id)duplicateMessages:(id)arg1 newRemoteIDs:(id)arg2 newDocumentIDs:(id)arg3 forMailbox:(id)arg4 setFlags:(long long)arg5 clearFlags:(long long)arg6 messageFlagsForMessages:(id)arg7 createNewCacheFiles:(BOOL)arg8; +- (id)duplicateMessages:(id)arg1 newRemoteIDs:(id)arg2 newDocumentIDs:(id)arg3 forMailbox:(id)arg4 setFlags:(long long)arg5 clearFlags:(long long)arg6 createNewCacheFiles:(BOOL)arg7; +- (id)messageWithRemoteID:(id)arg1 inRemoteMailbox:(id)arg2; +- (void)setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; +- (BOOL)canSetMessageColors; +- (BOOL)messageHasBeenDeleted:(id)arg1; +- (id)_gatewayCreateIfNeeded:(BOOL)arg1 options:(int)arg2; +- (void)startSynchronization; +- (id)_uidIndexSetForMessages:(id)arg1; +- (void)_updateLastNewMailCheckAllowedTime; +- (void)_updateFlagsIfNeededWithGateway:(id)arg1; +- (void)_retrieveNewMessagesForCheckingNewMail:(BOOL)arg1; +- (void)forceResync; +- (id)_preferredOrderForFetchingMessageBodies:(id)arg1; +- (BOOL)hasValidCacheFileForMessage:(id)arg1; +- (BOOL)hasValidCacheFileForUid:(unsigned int)arg1; +- (id)copyOfOldCachedMessagesContentsForUid:(unsigned int)arg1; +- (void)setUid:(unsigned int)arg1 forMessageWithTemporaryUid:(unsigned int)arg2; +- (id)_copyOfAllMessagesSortedByUidWithOptions:(unsigned int)arg1; +- (id)_deletedMessages; +- (void)writeUpdatedMessageDataToDisk; +- (id)sortOrder; +- (BOOL)isSortedAscending; +- (void)propagateMessagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3; +- (void)messagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3; +- (void)_setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; +- (id)fetchPipeline; +- (id)downloadCache; +- (id)messagesBeingRouted; +- (id)_imapAccount; +- (id)_offlineCache; +- (id)offlineCacheIfOffline; +- (void)updateCountFromMailbox:(id)arg1 fromIDLE:(BOOL)arg2; +- (void)processResponsesFromMailbox:(id)arg1; +- (void)updateUidValidityFromMailbox:(id)arg1; +- (void)_updateCountFromMailbox:(id)arg1 fromIDLE:(id)arg2; +- (void)_processResponsesFromMailbox:(id)arg1; +- (void)_updateUidValidityFromMailbox:(id)arg1; +- (void)updateSelectedGatewayFromMailbox:(id)arg1; +@property unsigned long long totalCount; // @synthesize totalCount=_totalCount; +@property BOOL isOpenedByUser; // @synthesize isOpenedByUser=_isOpenedByUser; +- (id)objectSpecifierForMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/LibraryInterface-Protocol.h b/MailHeaders/Lion/Message/LibraryInterface-Protocol.h new file mode 100644 index 00000000..69c3b2df --- /dev/null +++ b/MailHeaders/Lion/Message/LibraryInterface-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol LibraryInterface ++ (long long)mailboxIDForMailboxUid:(id)arg1; ++ (id)urlForMailboxID:(long long)arg1; +@end + diff --git a/MailHeaders/Lion/Message/LibraryMessage.h b/MailHeaders/Lion/Message/LibraryMessage.h new file mode 100644 index 00000000..c90fb4c7 --- /dev/null +++ b/MailHeaders/Lion/Message/LibraryMessage.h @@ -0,0 +1,136 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + + +@class LibraryCalendarEvent, NSString; + +#ifndef CDSTRUCT_329 +typedef struct { + unsigned int reserved:26; + unsigned int hasCustomEncoding:1; + unsigned int isPartial:1; + unsigned int partsHaveBeenCached:1; + unsigned int hasTemporaryUid:1; + unsigned int isHTML:1; + unsigned int isRich:1; +} CDStruct_3292de3e; +#define CDSTRUCT_329 1 +#endif + +#import "LibraryObject-Protocol.h" + +@interface LibraryMessage : Message +{ + long long _libraryID; + long long _conversationID; + long long _mailboxID; + long long _originalMailboxID; + NSString *_remoteID; + unsigned long long _size; + NSString *_messageID; + int _isCachingBodyAndHeaders; + unsigned int _options; + unsigned int _uid; + CDStruct_3292de3e _remoteFlags; + BOOL _isBeingChanged; + BOOL _hasSetCalendarEvent; + BOOL _hasSetReferences; + BOOL _isCompacted; +} + ++ (void)initialize; ++ (id)residentMessages; ++ (id)_addMessageToResidentMessages:(id)arg1; ++ (void)_removeMessageFromResidentMessagesWithLibraryID:(long long)arg1; ++ (id)_residentMessageForLibraryID:(long long)arg1; ++ (id)messageWithLibraryID:(long long)arg1; +- (id)initWithLibraryID:(long long)arg1; +- (id)init; +- (void)release; +- (id)messageID; +- (id)persistentID; +- (long long)libraryID; +- (long long)_mf_LibraryMessageLibraryID; +- (id)documentID; +- (id)originalMailboxURL; +- (BOOL)type; +- (id)references; +- (void)setReferences:(id)arg1; +@property(retain) LibraryCalendarEvent *calendarEvent; // @dynamic calendarEvent; +- (id)subject; +- (id)sender; +- (BOOL)supportsSnippets; +- (id)to; +- (id)messageIDHeaderDigest; +- (id)inReplyToHeaderDigest; +- (unsigned long long)messageSize; +- (void)setMessageSize:(unsigned long long)arg1; +- (id)_unlockedMessageStore; +- (id)messageStore; +- (void)setMessageStore:(id)arg1; +- (id)mailbox; +- (void)_updateUID; +- (void)_setRemoteID:(id)arg1; +- (void)setRemoteID:(id)arg1; +- (id)remoteID; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +- (void)setIMAPFlags:(CDStruct_3292de3e)arg1; +- (CDStruct_3292de3e)remoteFlags; +- (unsigned int)uid; +- (void)setUid:(unsigned int)arg1; +@property unsigned int options; +- (BOOL)loadOptionsSuffice:(unsigned int)arg1; +@property BOOL isPartial; +- (BOOL)isMessageContentsLocallyAvailable; +- (BOOL)isPartialMessageBodyAvailable; +@property BOOL partsHaveBeenCached; +- (void)setPreferredEncoding:(unsigned int)arg1; +@property BOOL hasTemporaryUid; +- (id)mailboxName; +- (void)setMessageFlags:(unsigned int)arg1 mask:(unsigned int)arg2; +- (void)setFlags:(long long)arg1; +- (void)setColorHasBeenEvaluated:(BOOL)arg1; +- (void)setColor:(id)arg1; +- (void)setLibraryColor:(char *)arg1; +- (void)setColor:(id)arg1 hasBeenEvaluated:(BOOL)arg2 flags:(unsigned int)arg3 mask:(unsigned int)arg4; +- (void)commit; +- (void)commitLater; +- (void)beginChanging; +- (BOOL)endChanging:(BOOL)arg1; +- (BOOL)endChanging:(BOOL)arg1 immediately:(BOOL)arg2; +- (void)reload; +- (id)description; +- (void)dealloc; +- (void)finalize; +- (id)path; +- (id)account; +- (id)preferredEmailAddressToReplyWith; +- (void)setRemoteID:(const char *)arg1 documentID:(id)arg2 flags:(long long)arg3 size:(unsigned long long)arg4 mailboxID:(long long)arg5 originalMailboxID:(long long)arg6 color:(char *)arg7 conversationID:(long long)arg8; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (void)_calculateAttachmentInfoFromBody:(id)arg1; +- (void)cacheBodyAndHeader; +- (void)uncacheBodyAndHeader; +- (id)_cachedHeaders; +- (void)_cacheHeadersIfPossible:(id)arg1; +- (id)_cachedHeaderData; +- (void)_cacheHeaderDataIfPossible:(id)arg1; +- (id)_cachedMessageBody; +- (void)_cacheMessageBodyIfPossible:(id)arg1; +- (id)_cachedMessageBodyData; +- (void)_cacheMessageBodyDataIfPossible:(id)arg1; +@property BOOL isCompacted; // @synthesize isCompacted=_isCompacted; +@property unsigned int primitiveOptions; // @synthesize primitiveOptions=_options; +@property BOOL isBeingChanged; // @synthesize isBeingChanged=_isBeingChanged; +@property unsigned long long size; // @synthesize size=_size; +@property long long originalMailboxID; // @synthesize originalMailboxID=_originalMailboxID; +@property long long mailboxID; // @synthesize mailboxID=_mailboxID; +@property long long conversationID; // @synthesize conversationID=_conversationID; + +@end + diff --git a/MailHeaders/Lion/Message/LibraryObject-Protocol.h b/MailHeaders/Lion/Message/LibraryObject-Protocol.h new file mode 100644 index 00000000..19d7dce1 --- /dev/null +++ b/MailHeaders/Lion/Message/LibraryObject-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "IMAPObject-Protocol.h" +#import "MFChanging-Protocol.h" + +@protocol LibraryObject +- (long long)libraryID; +- (id)remoteID; +- (void)setRemoteID:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/LibraryQueries.h b/MailHeaders/Lion/Message/LibraryQueries.h new file mode 100644 index 00000000..5037ef5c --- /dev/null +++ b/MailHeaders/Lion/Message/LibraryQueries.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface LibraryQueries : NSObject +{ +} + ++ (char *)queryForUniquingDataForMessageNumber:(long long)arg1; ++ (char *)queryToFindCopiesOfMessage:(char *)arg1 sentOn:(unsigned long long)arg2 receivedOn:(unsigned long long)arg3 withSize:(unsigned long long)arg4; ++ (id)checkOutStatementToInsertMessage:(id)arg1; ++ (id)checkOutStatementToCompletelyUpdateMessage:(id)arg1; ++ (id)fromClauseForTables:(unsigned long long)arg1 startingFromTableExpression:(id)arg2; ++ (id)checkOutStatementForMailboxURLFromMailboxID:(long long)arg1 usingDB:(id)arg2; ++ (id)checkOutStatementForEventWithMessageID:(long long)arg1 usingDB:(id)arg2; ++ (id)checkOutStatementToInsertEvent:(id)arg1; ++ (int)bindInsertEventStatement:(id)arg1 withEvent:(id)arg2 messageID:(long long)arg3; ++ (id)checkOutStatementToUpdateEvent:(id)arg1; ++ (int)bindUpdateEventStatement:(id)arg1 withEvent:(id)arg2 messageID:(long long)arg3; ++ (char *)queryToDeleteEventByMessageID:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/LibraryStore.h b/MailHeaders/Lion/Message/LibraryStore.h new file mode 100644 index 00000000..d731bb60 --- /dev/null +++ b/MailHeaders/Lion/Message/LibraryStore.h @@ -0,0 +1,109 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MessageCriterion, NSMutableArray, NSMutableSet, NSString; + +@interface LibraryStore : MessageStore +{ + MessageCriterion *_criterion; + NSString *_url; + id _openOptionsLock; + unsigned int _openOptions; + NSMutableSet *_memberMessageIDs; + NSMutableArray *_allMessagesDuringOpening; +} + ++ (void)initialize; ++ (id)_storeCacheMapTable; ++ (unsigned int)defaultLoadOptions; ++ (id)storeWithMailbox:(id)arg1; ++ (id)sharedInstance; ++ (id)filterMessages:(id)arg1 throughSmartMailbox:(id)arg2; ++ (BOOL)createEmptyStoreForPath:(id)arg1; ++ (BOOL)storeAtPathIsWritable:(id)arg1; +- (id)initWithCriterion:(id)arg1 mailbox:(id)arg2 readOnly:(BOOL)arg3; +- (id)init; +- (id)initWithMailboxUid:(id)arg1 readOnly:(BOOL)arg2; +- (id)initWithCriterion:(id)arg1; +- (id)initWithMailbox:(id)arg1; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (long long)mailboxID; +- (void)updateCriterionFromMailbox; +- (void)newMessagesAvailable:(id)arg1 conversationsMembers:(id)arg2 fromLibraryStoreMessageConsumer:(id)arg3; +- (id)notificationMessagesFromOpen; +- (void)libraryFinishedSendingMessagesToLibraryStoreMessageConsumer:(id)arg1; +- (void)openAsynchronouslyWithOptions:(unsigned int)arg1; +- (BOOL)_shouldUpdateColorsAndAttachmentsAfterOpening; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (id)openSynchronouslyUpdatingMetadata:(BOOL)arg1 returnRetainedMessages:(BOOL)arg2; +- (unsigned int)_openOptions; +- (unsigned long long)totalCount; +- (id)copyOfAllMessages; +- (id)copyOfAllMessagesWithOptions:(unsigned int)arg1; +- (void)asynchronousCopyOfAllMessagesWithOptions:(id)arg1; +- (id)mutableCopyOfAllMessages; +- (id)filterMessagesByMembership:(id)arg1; +- (BOOL)supportsSnippets; +- (id)snippetsForMessages:(id)arg1; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setLocalFlagsForMessages:(id)arg1; +- (void)setFlagsAndColorForMessages:(id)arg1; +- (void)_setFlagsAndColorForMessages:(id)arg1; +- (void)_messagesAddedToLibrary:(id)arg1; +- (void)messagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3; +- (void)_messageFlagsChanged:(id)arg1; +- (void)_messagesCompacted:(id)arg1; +- (void)_messagesUpdated:(id)arg1; +- (void)_invalidate; +- (void)dealloc; +- (void)finalize; +- (id)messageForMessageID:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (BOOL)allowsAppend; +- (BOOL)allowsOverwrite; +- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; +- (int)undoAppendOfMessageIDs:(id)arg1; +- (void)finishCopyOfMessages:(id)arg1 fromStore:(id)arg2 originalsWereDeleted:(BOOL)arg3; +- (BOOL)canCompact; +- (BOOL)_shouldCallCompactWhenClosing; +- (void)doCompact; +- (id)duplicateCopiesOfMessages:(id)arg1; +- (id)duplicateCopiesOfMessages:(id)arg1 withDocumentIDs:(id)arg2 excludingMessageIDs:(id)arg3; +- (id)lastMessageWithHeaders:(id)arg1 inMailbox:(id)arg2; +- (void)deleteLastMessageWithHeaders:(id)arg1 compactWhenDone:(BOOL)arg2; +- (id)recentMessageWithValue:(id)arg1 forHeader:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (void)writeUpdatedMessageDataToDisk; +- (void)updateMetadata; +- (void)_setNeedsAutosave; +- (void)_cancelAutosave; +- (id)criterion; +- (void)_flushAllMessageData; +- (void)rebuildTableOfContentsAsynchronously; +- (void)_rebuildTableOfContentsSynchronously; +- (unsigned long long)_numberOfMessagesToCache; +- (void)_invalidateObjectCachesForKey:(id)arg1; +- (id)_setOrGetValue:(id)arg1 forKey:(id)arg2 inCache:(id *)arg3; +- (BOOL)_updateFlagForMessage:(id)arg1 key:(id)arg2 value:(BOOL)arg3; +- (BOOL)setPreferredEncoding:(unsigned int)arg1 forMessage:(id)arg2; +@property(retain) NSString *url; // @synthesize url=_url; +- (id)objectSpecifierForMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/LibraryThread.h b/MailHeaders/Lion/Message/LibraryThread.h new file mode 100644 index 00000000..22382373 --- /dev/null +++ b/MailHeaders/Lion/Message/LibraryThread.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ActivityMonitor, NSMapTable, NSMutableArray; + +@interface LibraryThread : NSObject +{ + NSMutableArray *_requests; + ActivityMonitor *_monitor; + NSMapTable *_storeReqCounts; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)_runThread; +- (void)addMessages:(id)arg1 toStore:(id)arg2; +- (id)messagesBeingAddedToStore:(id)arg1; +- (BOOL)isAddingMessagesToStore:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/LibraryUpgrader.h b/MailHeaders/Lion/Message/LibraryUpgrader.h new file mode 100644 index 00000000..657373fd --- /dev/null +++ b/MailHeaders/Lion/Message/LibraryUpgrader.h @@ -0,0 +1,97 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ActivityAggregate, ActivityMonitor, Library, NSString, SqliteHandle; + +@interface LibraryUpgrader : NSObject +{ + Library *_library; + unsigned long long _majorVersion; + unsigned long long _minorVersion; + ActivityMonitor *_monitor; + ActivityAggregate *_activity; + id _delegate; + struct sqlite3 *_upgraderDB; + SqliteHandle *_handle; + NSString *_migrationDestinationPath; + BOOL _readOnly; +} + ++ (void)initialize; +- (id)initWithLibrary:(id)arg1; +- (id)init; +- (void)dealloc; +- (int)libraryStatus; +- (BOOL)_path:(id)arg1 hasPrefixInArray:(id)arg2; +- (BOOL)_shouldDisplayDisturbingAndVagueWarningAboutMigrationToUser; +- (void)resetEvaluationOfAccountsForMigration; +- (id)unresolvedAccountPaths; +- (BOOL)_allAccountsAreOnSameFSAsLibraryMail; +- (void)_evaluateAccountsForMigration; +- (BOOL)shouldMigrateToV2; +- (BOOL)isComplexMigrationToV2; +- (BOOL)validateMigrationPath:(id)arg1; +- (void)run; +- (void)_dropTriggers; +- (BOOL)_upgradeSchema; +- (void)_createNewDatabaseObjects; +- (void)_vacuum; +- (void)_useWALJournalingIfPossible; +- (void)_upgradeFromTigerToLeopard; +- (void)_populateRecipientPosition; +- (void)_updateCoalescedAddressReferences; +- (void)_upgradeFromLeopardToSnowLeopard; +- (void)_normalizeRSSMailboxEncodings; +- (void)_addIsResponseRequestedToCalendarEventTable:(unsigned long long)arg1; +- (void)_addSupportForConversations:(unsigned long long)arg1; +- (void)_addSnippetsTable:(unsigned long long)arg1; +- (void)_resetConversationColumn:(unsigned long long)arg1; +- (void)_resetSnippetColumn:(unsigned long long)arg1; +- (void)_fixThreadsTableReferences:(unsigned long long)arg1; +- (long long)_prefixFixupTag; +- (void)_fixMessageSubjectPrefixes:(long long)arg1; +- (unsigned long long)_oldEffectivePrefixLength:(id)arg1; +- (unsigned long long)_oldPrefixLengthForSubject:(id)arg1; +- (BOOL)_calculateInternationalSubjectPrefixes:(unsigned long long)arg1; +- (void)_addUnreadCountsToMailboxes:(unsigned long long)arg1; +- (void)_calculateConversationsForExistingMessages:(unsigned long long)arg1; +- (void)_migrateLabelsToFlags:(unsigned long long)arg1; +- (void)_addSupportForFuzzyAncestors:(unsigned long long)arg1; +- (void)_addSupportForAutomatedConversations:(unsigned long long)arg1; +- (void)_upgradeSubjectIndex:(unsigned long long)arg1; +- (void)_removeToDos:(unsigned long long)arg1; +- (void)_migrateTasksToLocalCalendar; +- (void)_removeAssociations:(unsigned long long)arg1; +- (void)_fixupV2ServerPathPrefix; +- (void)_resetPasswords:(unsigned long long)arg1; +- (void)_setAttachmentsStake:(unsigned long long)arg1; +- (id)_activity; +- (void)_setActivity:(id)arg1; +- (void)setProgressItemTotal:(unsigned long long)arg1; +- (void)incrementProgressIndicator; +- (void)resetProgressItemsWithTotal:(unsigned long long)arg1 andStatusMessage:(id)arg2; +- (void)_setHandle:(id)arg1; +- (id)_handle; +- (struct sqlite3 *)_getReaderDB; +- (void)_unlockReaderDB:(struct sqlite3 *)arg1; +- (struct sqlite3 *)_getWriterDB; +- (void)_unlockWriterDB:(struct sqlite3 *)arg1; +- (void)_getVersionInfo; +- (void)_bootstrapVersioningEngine; +- (BOOL)_canRun:(id *)arg1; +- (BOOL)_needsRun; +- (void)_executeSQL:(id)arg1 updateMinorVersion:(unsigned long long)arg2; +- (void)_stampCurrentMinorVersion; +- (long long)_getSQLTableCount:(const char *)arg1 usingDB:(struct sqlite3 *)arg2; +@property(copy) NSString *migrationDestinationPath; // @synthesize migrationDestinationPath=_migrationDestinationPath; +@property(retain, nonatomic) ActivityMonitor *monitor; // @synthesize monitor=_monitor; +@property BOOL readOnly; // @synthesize readOnly=_readOnly; +@property id delegate; // @synthesize delegate=_delegate; + +@end + diff --git a/MailHeaders/Lion/Message/LocalAccount.h b/MailHeaders/Lion/Message/LocalAccount.h new file mode 100644 index 00000000..3552d1ec --- /dev/null +++ b/MailHeaders/Lion/Message/LocalAccount.h @@ -0,0 +1,68 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface LocalAccount : MailAccount +{ +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)localAccount; ++ (id)defaultPathNameForAccount; ++ (id)defaultPathNameForAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)accountTypeString; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)rootMailboxUid; +- (BOOL)isSyncable; +- (id)uniqueId; +- (Class)storeClass; +- (id)mailboxPathExtension; +- (id)primaryMailboxUid; +- (id)displayName; +- (void)setHostname:(id)arg1; +- (void)setUsername:(id)arg1; +- (id)password; +- (void)setPassword:(id)arg1; +- (BOOL)canFetch; +- (BOOL)shouldAutoFetch; +- (BOOL)shouldShowNotesInInbox; +- (BOOL)isOffline; +- (void)setIsOffline:(BOOL)arg1; +- (BOOL)isWillingToGoOnline; +- (void)setIsWillingToGoOnline:(BOOL)arg1; +- (void)_readCustomInfoFromMailboxCache:(id)arg1; +- (long long)emptyTrashFrequency; +- (BOOL)shouldMoveDeletedMessagesToTrash; +- (void)_synchronouslyLoadListingForParent:(id)arg1; +- (id)_copyMailboxUidWithParent:(id)arg1 name:(id)arg2 pathComponent:(id)arg3 attributes:(unsigned long long)arg4 existingMailboxUid:(id)arg5; +- (BOOL)_setChildren:(id)arg1 forMailboxUid:(id)arg2; +- (BOOL)supportsNormalContainerOnlyMailboxes; +- (BOOL)deleteConvertsStoreToFolder; +- (id)pathForMailboxWithParent:(id)arg1 name:(id)arg2; +- (id)createMailboxWithParent:(id)arg1 name:(id)arg2 displayName:(id)arg3; +- (id)createMailboxWithParent:(id)arg1 name:(id)arg2 error:(id *)arg3; +- (BOOL)renameMailbox:(id)arg1 newName:(id)arg2 parent:(id)arg3; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)rootlessMailboxUidForFileSystemPath:(id)arg1; +- (id)_URLPersistenceScheme; +- (id)_infoForMatchingURL:(id)arg1; +- (BOOL)synchronizesDataWithServer; +- (id)_specialMailboxNameForType:(int)arg1; +- (id)todosMailboxUid; +- (BOOL)isEditableByUser; +- (BOOL)canParticipateInRules; +- (BOOL)providesAccountInformation; +- (BOOL)isZeroConfiguration; +- (BOOL)isRemoteAccount; +- (BOOL)hasTrashMailbox; +- (BOOL)supportsAppleScript; + +@end + diff --git a/MailHeaders/Lion/Message/LocationManager.h b/MailHeaders/Lion/Message/LocationManager.h new file mode 100644 index 00000000..ef1b4172 --- /dev/null +++ b/MailHeaders/Lion/Message/LocationManager.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class InvocationQueue, NSMutableArray, NetworkLocation; + +@interface LocationManager : NSObject +{ + NSMutableArray *_locations; + NetworkLocation *_current; + InvocationQueue *_invocationQueue; + BOOL _supressNotifications; +} + ++ (id)sharedManager; ++ (id)currentLocation; +- (id)init; +- (id)initWithUserDefaultsArray:(id)arg1; +- (void)dealloc; +- (void)setCurrentLocation:(id)arg1; +- (id)currentLocation; +- (void)addLocation:(id)arg1; +- (id)locationForDomain:(id)arg1; +- (id)locationForIPAddress:(id)arg1; +- (void)_networkChanged:(id)arg1; +- (void)_determineCurrentLocation; +- (void)_managedLocationChanged:(id)arg1; +- (void)_unarchiveLocations:(id)arg1; +- (id)_archivedLocations; + +@end + diff --git a/MailHeaders/Lion/Message/MFAccountStorage.h b/MailHeaders/Lion/Message/MFAccountStorage.h new file mode 100644 index 00000000..c6bd0666 --- /dev/null +++ b/MailHeaders/Lion/Message/MFAccountStorage.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MFAccountStorage : NSObject +{ + struct _opaque_pthread_rwlock_t { + long long __sig; + char __opaque[192]; + } _rwLock; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)_accountsPlistPath; +- (id)objectForKey:(id)arg1; +- (void)setObject:(id)arg1 forKey:(id)arg2; +- (void)removeObjectForKey:(id)arg1; +- (BOOL)synchronize; +- (id)arrayForKey:(id)arg1; +- (id)stringForKey:(id)arg1; +- (long long)integerForKey:(id)arg1; +- (void)setInteger:(long long)arg1 forKey:(id)arg2; +- (id)v2AccountsPlistName; + +@end + diff --git a/MailHeaders/Lion/Message/MFAddressManager.h b/MailHeaders/Lion/Message/MFAddressManager.h new file mode 100644 index 00000000..d558f30a --- /dev/null +++ b/MailHeaders/Lion/Message/MFAddressManager.h @@ -0,0 +1,68 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "ABImageClient-Protocol.h" + +@class InvocationQueue, NSCache, NSMutableDictionary, NSMutableSet; + +@interface MFAddressManager : NSObject +{ + NSCache *_imageCache; + NSMutableDictionary *_emailsAwaitingImage; + InvocationQueue *_imageLoadingQueue; + NSMutableDictionary *_recordsCache; + NSMutableSet *_addressesWithNoRecords; + BOOL _needToTrimRecordCaches; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)addressManager; ++ (id)myFullName; ++ (id)myEmailAddress; ++ (BOOL)isMyAddress:(id)arg1; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)loadAddressBookAsynchronously; +- (void)_loadAddressBookSynchronously; +- (id)bestRecordMatchingFormattedAddress:(id)arg1; +- (void)_trimRecordCachesAfterDelay; +- (void)_trimRecordCaches; +- (void)_addressBookDidChange:(id)arg1; +- (void)_postPhotoChangedNotification; +- (id)recordForUniqueId:(id)arg1; +- (id)groupsMatchingString:(id)arg1; +- (void)_updateDatesForRecentRecord:(id)arg1; +- (void)_addAddresses:(id)arg1 asRecent:(BOOL)arg2; +- (void)addRecentAddresses:(id)arg1; +- (void)addAddresses:(id)arg1; +- (id)addRecentToAddressBook:(id)arg1; +- (id)addAddressToAddressBook:(id)arg1; +- (void)removeRecordFromAddressBook:(id)arg1 forRecent:(id)arg2; +- (void)removeRecentAddresses:(id)arg1; +- (void)removeRecentRecord:(id)arg1; +- (id)addEmailAddressToCardMatchingFirstAndLastNameFromFormattedAddress:(id)arg1; +- (id)_addressBookRecordForRecentRecord:(id)arg1 orEmail:(id)arg2; +- (id)addressBookPersonForEmail:(id)arg1; +- (id)_addressBookRecordsForFirstName:(id)arg1 lastName:(id)arg2; +- (id)imageForMailAddress:(id)arg1; +- (void)_fetchImageForAddress:(id)arg1; +- (void)consumeImageData:(id)arg1 forTag:(long long)arg2; +- (void)_cacheImage:(id)arg1 forAddress:(id)arg2; +- (id)groups; +- (void)_addEmailsFromGroup:(id)arg1 toDictionary:(id)arg2; +- (id)emailAddressesFromGroup:(id)arg1; +- (id)expandGroups:(id)arg1; +- (id)replaceGroupsWithUndisclosedRecipients:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MFAosImapAccount.h b/MailHeaders/Lion/Message/MFAosImapAccount.h new file mode 100644 index 00000000..8e519b88 --- /dev/null +++ b/MailHeaders/Lion/Message/MFAosImapAccount.h @@ -0,0 +1,72 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MFAosSmtpAccount; + +@interface MFAosImapAccount : IMAPAccount +{ + id _aoskitLock; + struct AOSAccount *_aoskitAccount; + struct AOSTransaction *_mailPropertiesTransaction; + struct AOSTransaction *_primaryAddressesTransaction; + struct AOSTransaction *_aliasesTransaction; + struct AOSTransaction *_editAliasesURLTransaction; + MFAosSmtpAccount *_aosSmtpAccount; +} + ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; ++ (id)newAccountFromMobileMeSystemPreferences; ++ (BOOL)defaultsToSSL; ++ (id)defaultPathNameForAccount; ++ (id)defaultPathNameForAccountWithHostname:(id)arg1 username:(id)arg2; ++ (void)deleteSmtpAccounts; ++ (void)updateAllEmailAliases:(BOOL)arg1; +- (id)initWithAccountInfo:(id)arg1; +- (void)dealloc; +- (void)finalize; +- (void)_setAccountInfo:(id)arg1; +- (void)completeDeferredInitialization; +- (id)hostname; +- (void)setHostname:(id)arg1; +- (void)setUsername:(id)arg1; +- (id)defaultsDictionary; +- (id)permanentPassword; +- (void)setPermanentPassword:(id)arg1; +- (void)setSessionPassword:(id)arg1; +- (id)applePersonID; +- (id)appleAuthenticationToken; +- (BOOL)isSyncable; +- (void)setIsOffline:(BOOL)arg1; +- (id)_URLPersistenceHostname; +- (id)rawEmailAddresses; +- (id)emailAddresses; +- (void)_setEmailAliases:(id)arg1; +- (id)deliveryAccount; +- (void)setDeliveryAccount:(id)arg1; +- (id)_replacementDeliveryAccountForDeliveryAccount:(id)arg1; +- (id)dynamicDeliveryAccount; +- (void)presentOverQuotaAlert; +- (struct AOSAccount *)_aoskitAccount; +- (void)_setAoskitAccount:(struct AOSAccount *)arg1; +- (struct AOSTransaction *)_mailPropertiesTransaction; +- (void)_setMailPropertiesTransaction:(struct AOSTransaction *)arg1; +- (struct AOSTransaction *)_primaryAddressesTransaction; +- (void)_setPrimaryAddressesTransaction:(struct AOSTransaction *)arg1; +- (struct AOSTransaction *)_aliasesTransaction; +- (void)_setAliasesTransaction:(struct AOSTransaction *)arg1; +- (struct AOSTransaction *)_editAliasesURLTransaction; +- (void)_setEditAliasesURLTransaction:(struct AOSTransaction *)arg1; +- (void)_updateAoskitAccountAndUpdateAliases:(BOOL)arg1; +- (void)_updateMailProperties; +- (void)addPrimaryEmailAddresses; +- (void)updateEmailAliases; +- (void)openEditEmailAliasesURL; +- (void)migrateToCastle; + +@end + diff --git a/MailHeaders/Lion/Message/MFAosSmtpAccount.h b/MailHeaders/Lion/Message/MFAosSmtpAccount.h new file mode 100644 index 00000000..314bd818 --- /dev/null +++ b/MailHeaders/Lion/Message/MFAosSmtpAccount.h @@ -0,0 +1,76 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MFAosImapAccount; + +@interface MFAosSmtpAccount : SMTPAccount +{ + MFAosImapAccount *_aosImapAccount; + struct AOSAccount *_aoskitAccount; +} + ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; +- (id)initWithAccount:(id)arg1; +- (id)initWithAccountInfo:(id)arg1; +- (void)dealloc; +- (id)storedDisplayName; +- (void)setStoredDisplayName; +- (id)displayName; +- (void)setDisplayName; +- (id)offlineDisplayName; +- (BOOL)isSyncable; +- (BOOL)isInactivatedInsteadOfBeingDeleted; +- (void)setIsInactivatedInsteadOfBeingDeleted:(BOOL)arg1; +- (id)defaultsDictionary; +- (void)updateFromSyncedDictionary:(id)arg1; +- (void)updateAccountsFromPlist:(id)arg1 acceptedChanges:(id)arg2; +- (void)setAccountInfoObject:(id)arg1 forKey:(id)arg2; +- (void)removeAccountInfoObjectForKey:(id)arg1; +- (void)_setAccountInfo:(id)arg1; +- (id)info; +- (void)setInfo:(id)arg1; +- (BOOL)requiresAuthentication; +- (id)hostname; +- (void)setHostname:(id)arg1; +- (id)username; +- (void)setUsername:(id)arg1; +- (id)password; +- (void)setPassword:(id)arg1; +- (id)permanentPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)sessionPassword; +- (void)setSessionPassword:(id)arg1; +- (id)applePersonID; +- (id)appleAuthenticationToken; +- (BOOL)usesSSL; +- (void)setUsesSSL:(BOOL)arg1; +- (id)domain; +- (void)setDomain:(id)arg1; +- (id)preferredAuthScheme; +- (void)setPreferredAuthScheme:(id)arg1; +- (id)ISPAccountID; +- (void)setISPAccountID:(id)arg1; +- (id)uniqueId; +- (id)supportURL; +- (id)supportURLLabel; +- (id)subscriptionURL; +- (id)subscriptionURLLabel; +- (id)identifier; +- (BOOL)isDynamic; +- (id)associatedAccount; +- (void)setAssociatedAccount:(id)arg1; +- (BOOL)shouldUseAuthentication; +- (void)setShouldUseAuthentication:(BOOL)arg1; +- (id)remoteMailAccountsEmployedBy; +- (BOOL)shouldTryDefaultPorts; +- (void)setShouldTryDefaultPorts:(BOOL)arg1; +- (struct AOSAccount *)aoskitAccount; +- (void)setAoskitAccount:(struct AOSAccount *)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MFAssertionHandler.h b/MailHeaders/Lion/Message/MFAssertionHandler.h new file mode 100644 index 00000000..c856da2e --- /dev/null +++ b/MailHeaders/Lion/Message/MFAssertionHandler.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAssertionHandler.h" + +@interface MFAssertionHandler : NSAssertionHandler +{ +} + ++ (void)installDefaultAssertionHandler; ++ (id)_Message_currentHandler; +- (void)handleFailureInMethod:(SEL)arg1 object:(id)arg2 file:(id)arg3 lineNumber:(long long)arg4 description:(id)arg5; +- (void)handleFailureInFunction:(id)arg1 file:(id)arg2 lineNumber:(long long)arg3 description:(id)arg4; +- (void)_handleFailureWithPreamble:(id)arg1 description:(id)arg2 arguments:(CDStruct_19b88e92 [1])arg3; + +@end + diff --git a/MailHeaders/Lion/Message/MFCachedMailboxInfo.h b/MailHeaders/Lion/Message/MFCachedMailboxInfo.h new file mode 100644 index 00000000..b5392909 --- /dev/null +++ b/MailHeaders/Lion/Message/MFCachedMailboxInfo.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MailboxUid; + +@interface MFCachedMailboxInfo : NSObject +{ + long long _mailboxID; + int _mailboxType; + MailboxUid *_mailbox; +} + +- (id)init; +- (void)dealloc; +- (void)updateWithMessage:(id)arg1; +@property(retain, nonatomic) MailboxUid *mailbox; // @synthesize mailbox=_mailbox; +@property(nonatomic) int mailboxType; // @synthesize mailboxType=_mailboxType; +@property(nonatomic) long long mailboxID; // @synthesize mailboxID=_mailboxID; + +@end + diff --git a/MailHeaders/Lion/Message/MFChanging-Protocol.h b/MailHeaders/Lion/Message/MFChanging-Protocol.h new file mode 100644 index 00000000..5122a67e --- /dev/null +++ b/MailHeaders/Lion/Message/MFChanging-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MFChanging +- (void)beginChanging; +- (BOOL)endChanging:(BOOL)arg1; +- (BOOL)endChanging:(BOOL)arg1 immediately:(BOOL)arg2; +@end + diff --git a/MailHeaders/Lion/Message/MFCrossProcessLock.h b/MailHeaders/Lion/Message/MFCrossProcessLock.h new file mode 100644 index 00000000..9a8c86f2 --- /dev/null +++ b/MailHeaders/Lion/Message/MFCrossProcessLock.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSLocking-Protocol.h" + +@class NSLock, NSMachPort, NSString; + +@interface MFCrossProcessLock : NSObject +{ + NSString *_identifier; + NSMachPort *_port; + NSLock *_lock; + long long _lockCount; +} + ++ (id)defaultMailCrossProcessLock; +- (id)initWithIdentifier:(id)arg1; +- (void)dealloc; +- (void)finalize; +- (void)lock; +- (void)unlock; +- (BOOL)tryLock; +- (BOOL)lockBeforeDate:(id)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/MFError.h b/MailHeaders/Lion/Message/MFError.h new file mode 100644 index 00000000..926f4095 --- /dev/null +++ b/MailHeaders/Lion/Message/MFError.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableDictionary; + +@interface MFError : NSError +{ + NSMutableDictionary *_moreUserInfo; +} + ++ (id)errorWithDomain:(id)arg1 code:(long long)arg2 localizedDescription:(id)arg3; ++ (id)errorWithDomain:(id)arg1 code:(long long)arg2 localizedDescription:(id)arg3 title:(id)arg4 helpTag:(id)arg5 userInfo:(id)arg6; ++ (id)errorWithException:(id)arg1; +- (id)initWithError:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)setUserInfoObject:(id)arg1 forKey:(id)arg2; +- (id)userInfo; +- (id)localizedDescription; +- (id)moreInfo; +- (id)helpAnchor; +- (id)shortDescription; +- (void)setLocalizedDescription:(id)arg1; +- (void)setMoreInfo:(id)arg1; +- (void)setHelpTag:(id)arg1; +- (void)setShortDescription:(id)arg1; +- (void)useGenericDescription:(id)arg1; +- (BOOL)alertShowHelp:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Lion/Message/MFHTMLParser.h b/MailHeaders/Lion/Message/MFHTMLParser.h new file mode 100644 index 00000000..3e27bbda --- /dev/null +++ b/MailHeaders/Lion/Message/MFHTMLParser.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MFHTMLParser : NSObject +{ +} + ++ (id)plainTextFromHTML:(id)arg1 limit:(unsigned long long)arg2; ++ (id)plainTextFromHTML:(id)arg1; ++ (id)plainTextFromHTMLSnippet:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MFInstantOff.h b/MailHeaders/Lion/Message/MFInstantOff.h new file mode 100644 index 00000000..775d4c22 --- /dev/null +++ b/MailHeaders/Lion/Message/MFInstantOff.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MFInstantOff : NSObject +{ +} + ++ (void)initialize; ++ (void)enableSuddenTermination; ++ (void)disableSuddenTermination; + +@end + diff --git a/MailHeaders/Lion/Message/MFKeychainManager.h b/MailHeaders/Lion/Message/MFKeychainManager.h new file mode 100644 index 00000000..c50d0a62 --- /dev/null +++ b/MailHeaders/Lion/Message/MFKeychainManager.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MFKeychainManager : NSObject +{ +} + ++ (void)initialize; ++ (void *)_protocolForAccountType:(id)arg1; ++ (id)passwordForHost:(id)arg1 username:(id)arg2 port:(unsigned short)arg3 accountType:(id)arg4; ++ (void)setPassword:(id)arg1 forHost:(id)arg2 username:(id)arg3 port:(unsigned short)arg4 accountType:(id)arg5; ++ (void)removePasswordForHost:(id)arg1 username:(id)arg2 port:(unsigned short)arg3 accountType:(id)arg4; ++ (id)passwordForServiceName:(id)arg1 accountName:(id)arg2; ++ (void)setPassword:(id)arg1 forServiceName:(id)arg2 accountName:(id)arg3; ++ (void)removePasswordForServiceName:(id)arg1 accountName:(id)arg2; ++ (void)setSessionTrustedCertificates:(id)arg1 forHost:(id)arg2; ++ (id)sessionTrustedCertificatesForHost:(id)arg1; ++ (id)copyTlsClientIdentities; ++ (struct OpaqueSecIdentityRef *)copySigningIdentityForAddress:(id)arg1; ++ (struct OpaqueSecCertificateRef *)copyEncryptionCertificateForAddress:(id)arg1; ++ (BOOL)canSignMessagesFromAddress:(id)arg1; ++ (BOOL)canEncryptMessagesToAddress:(id)arg1; ++ (BOOL)canEncryptMessagesToAddresses:(id)arg1 sender:(id)arg2; ++ (struct OpaqueSecPolicyRef *)copySMIMESigningPolicyForAddress:(id)arg1; ++ (struct OpaqueSecPolicyRef *)copySMIMEEncryptionPolicyForAddress:(id)arg1; ++ (int)_copySMIMEPolicyForAddress:(struct __CFString *)arg1 keyUsage:(void *)arg2 policy:(struct OpaqueSecPolicyRef **)arg3; + +@end + diff --git a/MailHeaders/Lion/Message/MFLibraryIDWrapper.h b/MailHeaders/Lion/Message/MFLibraryIDWrapper.h new file mode 100644 index 00000000..1bf98d4a --- /dev/null +++ b/MailHeaders/Lion/Message/MFLibraryIDWrapper.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MFLibraryIDWrapper : NSObject +{ +} + ++ (void *)createLibraryIDWrapper:(long long)arg1; ++ (void)releaseLibraryIDWrapper:(void *)arg1; ++ (long long)libraryIDFromWrapper:(void *)arg1; ++ (id)createNumberFromWrapper:(void *)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MFMailMigrator.h b/MailHeaders/Lion/Message/MFMailMigrator.h new file mode 100644 index 00000000..11f4159b --- /dev/null +++ b/MailHeaders/Lion/Message/MFMailMigrator.h @@ -0,0 +1,65 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class LibraryUpgrader, NSFileManager, NSMutableDictionary, NSString; + +@interface MFMailMigrator : NSObject +{ + NSFileManager *_fileManager; + NSString *_supportDirectory; + NSString *_destinationSupportDirectory; + NSString *_tempSupportDirectoryV2; + NSString *_supportDirectoryV2; + NSString *_mailDataDirectoryV2; + NSString *_migrationSuccessfulFilepath; + NSString *_v1ItemsToMigrateFilepath; + NSString *_logDirectory; + NSMutableDictionary *_lostItems; + NSString *_lostItemsFilepath; + NSString *_lostAndFoundDirectory; + BOOL _isComplex; + BOOL _isUsingAlternateDestination; + LibraryUpgrader *_progressDelegate; + unsigned long long _progressChunkSize; + unsigned long long _messagesProgressCount; + unsigned long long _v1CleanupCount; + BOOL _isTrackingCleanupProgress; + unsigned long long _emlxCountPreMigration; + unsigned long long _emlxCountPostMigration; + unsigned long long _lostAndFoundEmlxCount; + unsigned long long _messageCountPreMigration; +} + ++ (BOOL)migrateFromV1ToV2Layout:(id)arg1 isComplex:(BOOL)arg2 progressDelegate:(id)arg3; ++ (BOOL)path:(id)arg1 hasPrefixInArray:(id)arg2; +- (id)initWithDestinationPath:(id)arg1 isComplex:(BOOL)arg2 progressDelegate:(id)arg3; +- (void)dealloc; +- (unsigned long long)_numberOfEmlxFilesInLostAndFound; +- (unsigned long long)_numberOfEmlxFiles; +- (unsigned long long)_numberOfMessagesInDB; +- (void)_messageTraceLibraryData; +- (BOOL)_string:(id)arg1 hasPrefixInSet:(id)arg2; +- (BOOL)_string:(id)arg1 hasSuffixInSet:(id)arg2; +- (BOOL)_directoryExistsAtPath:(id)arg1; +- (id)_stringByAppendingV2MailboxSuffix:(id)arg1; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtPath:(id)arg2; +- (id)_lostItemsForBaseDirectory:(id)arg1; +- (id)_mailboxSuffixes; +- (id)_accountPrefixes; +- (void)_migrateMailboxesFromDirectory:(id)arg1 toDirectory:(id)arg2 baseDirectory:(id)arg3 usingUUID:(id)arg4 mailboxCacheDictionary:(id)arg5; +- (BOOL)_shouldIgnoreFilename:(id)arg1; +- (BOOL)_migrateFromV1ToV2Layout; +- (void)_captureDiagnosticsForMigrationOutEmlxCount:(unsigned long long *)arg1 outLostFoundEmlxCount:(unsigned long long *)arg2; +- (void)_saveSubpathsWithAttributesOfDirectoryAtPath:(id)arg1 destinationPath:(id)arg2 symbolicLinks:(id)arg3 mboxCacheFiles:(id)arg4 infoPlistFiles:(id)arg5 outEmlxCount:(unsigned long long *)arg6 outLostFoundEmlxCount:(unsigned long long *)arg7; +- (void)_savePlistFiles:(id)arg1 destinationPath:(id)arg2; +- (BOOL)_copyWithCompressionFromPath:(id)arg1 toPath:(id)arg2; +@property(retain, nonatomic) NSFileManager *fileManager; // @synthesize fileManager=_fileManager; + +@end + diff --git a/MailHeaders/Lion/Message/MFMessageContext.h b/MailHeaders/Lion/Message/MFMessageContext.h new file mode 100644 index 00000000..9c936cd7 --- /dev/null +++ b/MailHeaders/Lion/Message/MFMessageContext.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSOperationQueue; + +@interface MFMessageContext : NSObject +{ + NSOperationQueue *_fsQueue; + NSOperationQueue *_waitingQueue; +} + ++ (id)sharedContext; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setJunkMailLevel:(int)arg1 forMessages:(id)arg2; +- (id)async_cacheHeaderAndBodyForMessage:(id)arg1 monitor:(id)arg2; +- (id)filesystemQueue; + +@end + diff --git a/MailHeaders/Lion/Message/MFMessageCounts.h b/MailHeaders/Lion/Message/MFMessageCounts.h new file mode 100644 index 00000000..020b561c --- /dev/null +++ b/MailHeaders/Lion/Message/MFMessageCounts.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MFMessageCounts : NSObject +{ + unsigned long long _totalCount; + unsigned long long _unreadCount; + unsigned long long _unseenCount; + unsigned long long _deletedCount; +} + +- (id)initWithTotal:(unsigned long long)arg1 unread:(unsigned long long)arg2 unseen:(unsigned long long)arg3 deleted:(unsigned long long)arg4; +- (id)description; +@property(readonly, nonatomic) unsigned long long deletedCount; // @synthesize deletedCount=_deletedCount; +@property(readonly, nonatomic) unsigned long long unseenCount; // @synthesize unseenCount=_unseenCount; +@property(readonly, nonatomic) unsigned long long unreadCount; // @synthesize unreadCount=_unreadCount; +@property(readonly, nonatomic) unsigned long long totalCount; // @synthesize totalCount=_totalCount; + +@end + diff --git a/MailHeaders/Lion/Message/MFMessageFramework.h b/MailHeaders/Lion/Message/MFMessageFramework.h new file mode 100644 index 00000000..51369d25 --- /dev/null +++ b/MailHeaders/Lion/Message/MFMessageFramework.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MFMessageFramework : NSObject +{ +} + ++ (id)bundle; ++ (id)frameworkVersion; ++ (id)verboseVersion; ++ (id)userAgent; ++ (void)setUserAgent:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MFMessageSortingInterface-Protocol.h b/MailHeaders/Lion/Message/MFMessageSortingInterface-Protocol.h new file mode 100644 index 00000000..17d7ba17 --- /dev/null +++ b/MailHeaders/Lion/Message/MFMessageSortingInterface-Protocol.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MFMessageSortingInterface +- (BOOL)senderIsAvailableOnline; +- (int)colorForSort; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (unsigned int)messageFlags; +- (id)senderAddressComment; +- (unsigned long long)messageSize; +- (unsigned long long)numberOfAttachments; +- (id)subject; +- (id)subjectAndPrefixLength:(unsigned long long *)arg1; +- (id)to; +- (double)dateReceivedAsTimeIntervalSince1970; +- (double)dateSentAsTimeIntervalSince1970; +- (id)mailbox; +- (unsigned int)uidForSort; +@end + diff --git a/MailHeaders/Lion/Message/MFMessageSortingValue.h b/MailHeaders/Lion/Message/MFMessageSortingValue.h new file mode 100644 index 00000000..6fb190b1 --- /dev/null +++ b/MailHeaders/Lion/Message/MFMessageSortingValue.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MFMessageSortingInterface-Protocol.h" + +@interface MFMessageSortingValue : NSObject +{ +} + ++ (id)equivalentSortsForSort:(id)arg1; ++ (void)addSortData:(id)arg1 forMessages:(id)arg2 sortOrder:(id)arg3 withDelegate:(id)arg4; ++ (id)copySortDataForMessages:(id)arg1 sortOrders:(id)arg2 withDelegate:(id)arg3; ++ (id)mutableCopyOfSortData:(id)arg1; ++ (void)removeMessage:(id)arg1 fromSortData:(id)arg2; ++ (void)addMessage:(id)arg1 toSortData:(id)arg2 withDelegate:(id)arg3; ++ (void)addMessages:(id)arg1 toSortData:(id)arg2 withDelegate:(id)arg3; ++ (void)removeEverythingExceptMessages:(id)arg1 fromSortData:(id)arg2; +- (BOOL)senderIsAvailableOnline; +- (int)colorForSort; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (unsigned int)messageFlags; +- (id)senderAddressComment; +- (unsigned long long)messageSize; +- (unsigned long long)numberOfAttachments; +- (id)subject; +- (id)subjectAndPrefixLength:(unsigned long long *)arg1; +- (id)to; +- (double)dateReceivedAsTimeIntervalSince1970; +- (double)dateSentAsTimeIntervalSince1970; +- (id)mailbox; +- (unsigned int)uidForSort; +- (long long)libraryID; + +@end + diff --git a/MailHeaders/Lion/Message/MFMimeDecodeContext.h b/MailHeaders/Lion/Message/MFMimeDecodeContext.h new file mode 100644 index 00000000..fc8c6052 --- /dev/null +++ b/MailHeaders/Lion/Message/MFMimeDecodeContext.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MFMimeDecodeContext : NSObject +{ + BOOL _decodeTextPartsOnly; + BOOL _shouldSkipUpdatingMessageFlags; +} + +@property(nonatomic) BOOL shouldSkipUpdatingMessageFlags; // @synthesize shouldSkipUpdatingMessageFlags=_shouldSkipUpdatingMessageFlags; +@property(nonatomic) BOOL decodeTextPartsOnly; // @synthesize decodeTextPartsOnly=_decodeTextPartsOnly; + +@end + diff --git a/MailHeaders/Lion/Message/MFQuoteParser.h b/MailHeaders/Lion/Message/MFQuoteParser.h new file mode 100644 index 00000000..8e4564a2 --- /dev/null +++ b/MailHeaders/Lion/Message/MFQuoteParser.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString; + +@interface MFQuoteParser : NSObject +{ + NSString *_quoteBlockHtmlPrefix; + NSString *_quoteBlockHtmlSuffix; +} + +- (id)initWithHtmlQuoteBlockHtmlPrefix:(id)arg1 quoteBlockHtmlSuffix:(id)arg2; +- (void)dealloc; +- (id)finalHtmlContentWithBlockQuoteChangesIfNeededForHtml:(struct __CFString *)arg1 startIndex:(unsigned long long)arg2 quoteProcessingStyle:(long long)arg3 allowMultipleQuoteBlocks:(BOOL)arg4; +- (id)strippedQuoteBlockWithHtml:(id)arg1; +- (id)escapedQuoteBlockWithHtml:(id)arg1; +- (void)reset; + +@end + diff --git a/MailHeaders/Lion/Message/MFRedundantTextIdentifier.h b/MailHeaders/Lion/Message/MFRedundantTextIdentifier.h new file mode 100644 index 00000000..800d5424 --- /dev/null +++ b/MailHeaders/Lion/Message/MFRedundantTextIdentifier.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSDictionary, NSString; + +@interface MFRedundantTextIdentifier : NSObject +{ + NSString *_htmlOriginal; + NSString *_htmlReply; + NSDictionary *_originalAttachmentsByURL; + NSDictionary *_replyAttachmentsByURL; + BOOL _matchedEntireOriginalContiguously; + BOOL _replyHasRedundantContent; +} + ++ (void)initialize; ++ (id)_htmlMarkerForContentType:(unsigned long long)arg1; +- (id)initWithHtmlOriginal:(id)arg1 originalAttachmentsByURL:(id)arg2 htmlReply:(id)arg3 replyAttachmentsByURL:(id)arg4; +- (void)dealloc; +- (id)replyWithRedundantTextMarkers; +@property(readonly, nonatomic) BOOL replyHasRedundantContent; // @synthesize replyHasRedundantContent=_replyHasRedundantContent; +@property(readonly, nonatomic) BOOL matchedEntireOriginalContiguously; // @synthesize matchedEntireOriginalContiguously=_matchedEntireOriginalContiguously; +@property(readonly, nonatomic) NSDictionary *replyAttachmentsByURL; // @synthesize replyAttachmentsByURL=_replyAttachmentsByURL; +@property(readonly, nonatomic) NSDictionary *originalAttachmentsByURL; // @synthesize originalAttachmentsByURL=_originalAttachmentsByURL; +@property(readonly, nonatomic) NSString *htmlReply; // @synthesize htmlReply=_htmlReply; +@property(readonly, nonatomic) NSString *htmlOriginal; // @synthesize htmlOriginal=_htmlOriginal; + +@end + diff --git a/MailHeaders/Lion/Message/MFResultTaskOperation.h b/MailHeaders/Lion/Message/MFResultTaskOperation.h new file mode 100644 index 00000000..1895ac26 --- /dev/null +++ b/MailHeaders/Lion/Message/MFResultTaskOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface MFResultTaskOperation : MFTaskOperation +{ + id _result; +} + +- (void)dealloc; +@property(retain, nonatomic) id result; // @synthesize result=_result; + +@end + diff --git a/MailHeaders/Lion/Message/MFTaskOperation.h b/MailHeaders/Lion/Message/MFTaskOperation.h new file mode 100644 index 00000000..f73e0d13 --- /dev/null +++ b/MailHeaders/Lion/Message/MFTaskOperation.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSBlockOperation.h" + +@class ActivityMonitor; + +@interface MFTaskOperation : NSBlockOperation +{ + ActivityMonitor *_monitor; + ActivityMonitor *_parentMonitor; +} + ++ (void)setTaskDescription:(const char *)arg1; +- (void)setParentMonitor:(id)arg1 taskName:(id)arg2; +- (id)setTaskName:(id)arg1 priority:(unsigned char)arg2 canCancel:(BOOL)arg3; +- (void)main; +- (void)dealloc; +- (void)cancel; +@property(retain) ActivityMonitor *monitor; // @synthesize monitor=_monitor; +@property(retain) ActivityMonitor *parentMonitor; // @synthesize parentMonitor=_parentMonitor; + +@end + diff --git a/MailHeaders/Lion/Message/MFUIMailbox-Protocol.h b/MailHeaders/Lion/Message/MFUIMailbox-Protocol.h new file mode 100644 index 00000000..5b245d4e --- /dev/null +++ b/MailHeaders/Lion/Message/MFUIMailbox-Protocol.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MFUIMailbox +- (id)persistentIdentifier; +- (id)displayName; +- (id)extendedDisplayName; +- (BOOL)isContainer; +- (unsigned long long)displayCount; +- (long long)numberOfChildren; +- (BOOL)hasChildren; +- (id)children; +- (BOOL)isStore; +- (BOOL)isSmartMailbox; +- (id)account; +- (id)accountURLString; +- (BOOL)isPlaceholder; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +@property int type; +@end + diff --git a/MailHeaders/Lion/Message/MFUUID.h b/MailHeaders/Lion/Message/MFUUID.h new file mode 100644 index 00000000..f56459cf --- /dev/null +++ b/MailHeaders/Lion/Message/MFUUID.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MFUUID : NSObject +{ + struct __CFUUID *_uuidRef; +} + ++ (id)uuid; ++ (id)uuidWithString:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)init; +- (id)initWithString:(id)arg1; +- (id)initWithBytes:(CDStruct_bd2f613f *)arg1; +- (id)initWithUUIDRef:(struct __CFUUID *)arg1; +- (void)dealloc; +- (id)description; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (BOOL)isEqualToString:(id)arg1; +- (struct __CFUUID *)getCFUUID; +- (CDStruct_bd2f613f)bytes; +- (unsigned long long)length; +- (id)dataValue; +- (id)lowercasedStringValue; + +@end + diff --git a/MailHeaders/Lion/Message/MFZombies.h b/MailHeaders/Lion/Message/MFZombies.h new file mode 100644 index 00000000..0f6a32e3 --- /dev/null +++ b/MailHeaders/Lion/Message/MFZombies.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MFZombies : NSObject +{ +} + ++ (void)initialize; ++ (id)__objectZombieLock; ++ (id)__objectZombieMap; ++ (id)__objectRRLock; ++ (id)__objectRRMap; ++ (id)__stackUniquingLock; ++ (id)__stackUniquingSet; ++ (id)__copyArrayOfStringsForPointers:(id)arg1; ++ (BOOL)__writeZombieStacksToDiskForObject:(id)arg1; ++ (BOOL)__writeAllZombieStacksToDisk; + +@end + diff --git a/MailHeaders/Lion/Message/MailAccount.h b/MailHeaders/Lion/Message/MailAccount.h new file mode 100644 index 00000000..fc7fd7b5 --- /dev/null +++ b/MailHeaders/Lion/Message/MailAccount.h @@ -0,0 +1,356 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MFError, MailboxUid, NSString, NSTimer; + +@interface MailAccount : Account +{ + id _mailAccountLock; + id _backgroundActivityFlagsLock; + id _mailboxUidLock; + NSString *_path; + MailboxUid *_rootMailboxUid; + MailboxUid *_inboxMailboxUid; + MailboxUid *_draftsMailboxUid; + MailboxUid *_sentMessagesMailboxUid; + MailboxUid *_trashMailboxUid; + MailboxUid *_junkMailboxUid; + MailboxUid *_notesMailboxUid; + MailboxUid *_notesSmartMailboxUid; + MailboxUid *_todosMailboxUid; + MailboxUid *_outboxMailboxUid; + MFError *_lastConnectionError; + id _cacheChangeLock; + NSTimer *_cacheWriteTimer; + BOOL _cacheHasBeenRead; + BOOL _backgroundFetchInProgress; + BOOL _synchronizationThreadIsRunning; + BOOL _mailboxListInitializationInProgress; + BOOL _needsChecking; +} + ++ (void)initialize; ++ (BOOL)accountsHaveBeenInitialized; ++ (BOOL)haveAccountsBeenConfigured; ++ (void)completeDeferredAccountInitialization; ++ (void)_addAccountToSortedPaths:(id)arg1; ++ (void)_setupSortedPathsForAccounts:(id)arg1; ++ (id)defaultNoteAccount; ++ (id)preferredRemoteNoteAccount; ++ (id)noteAccountForMailboxUid:(id)arg1; ++ (id)noteAccountForNote:(id)arg1; ++ (id)_mailAccountsIncludingUnknownTypes; ++ (id)allMailAccounts; ++ (id)mailAccounts; ++ (id)syncableMailAccounts; ++ (void)reloadMailAccounts; ++ (void)setMailAccounts:(id)arg1; ++ (void)_setMailAccounts:(id)arg1 calledFromSync:(BOOL)arg2 reloadingFromPreferences:(BOOL)arg3; ++ (void)addMailAccountToMail:(id)arg1; ++ (id)removeMailAccountFromPreferencesWithUniqueId:(id)arg1; ++ (void)activateMailAccountInMailWithUniqueId:(id)arg1; ++ (void)deactivateMailAccountInMailWithUniqueId:(id)arg1; ++ (void)_setIsActive:(BOOL)arg1 forAccountFromMailWithUniqueId:(id)arg2; ++ (void)accountsWereSynced; ++ (BOOL)newMailBeenReceived; ++ (void)setNewMailBeenReceived:(BOOL)arg1; ++ (id)syncManagedAccountWithMCXCreateIfAbsent:(BOOL)arg1; ++ (void)_removeAccountFromSortedPaths:(id)arg1; ++ (id)_activeAccountsFromArray:(id)arg1; ++ (id)activeAccounts; ++ (id)remoteAccounts; ++ (void)saveAccountInfoToDefaults; ++ (void)clearIsSyncableForHTTPMailAccounts; ++ (void)migrateUnreadCountInMailboxCache; ++ (id)accountWithUniqueId:(id)arg1; ++ (id)accountFromMailWithUniqueId:(id)arg1; ++ (id)_accountFromArray:(id)arg1 withUniqueId:(id)arg2; ++ (id)existingAccountWithType:(id)arg1 hostname:(id)arg2 username:(id)arg3; ++ (id)existingAccountFromMailWithType:(id)arg1 hostname:(id)arg2 username:(id)arg3; ++ (id)_accountFromArray:(id)arg1 withType:(id)arg2 hostname:(id)arg3 username:(id)arg4; ++ (BOOL)setAccountInfo:(id)arg1 forAccountFromMailMatchingInfo:(id)arg2; ++ (id)_urlFromObject:(id)arg1; ++ (id)allEmailAddressesIncludingFullUserName:(BOOL)arg1; ++ (void)_updateAccountExistsForSigning; ++ (BOOL)accountExistsForSigning; ++ (void)resetAccountExistsForSigning; ++ (id)_accountContainingEmailAddress:(id)arg1 matchingAddress:(id *)arg2 fullUserName:(id *)arg3; ++ (id)accountContainingEmailAddress:(id)arg1; ++ (id)accountForHeaders:(id)arg1 message:(id)arg2; ++ (id)accountUsingHeadersFromMessage:(id)arg1; ++ (id)accountThatMessageIsFrom:(id)arg1; ++ (id)addressesThatReceivedMessage:(id)arg1; ++ (id)accountThatReceivedMessage:(id)arg1 matchingEmailAddress:(id *)arg2 fullUserName:(id *)arg3; ++ (id)outboxMessageStore:(BOOL)arg1; ++ (id)specialMailboxUids; ++ (id)_specialMailboxUidsUsingSelector:(SEL)arg1; ++ (id)inboxMailboxUids; ++ (id)trashMailboxUids; ++ (id)outboxMailboxUids; ++ (id)sentMessagesMailboxUids; ++ (id)draftMailboxUids; ++ (id)junkMailboxUids; ++ (id)noteMailboxUids; ++ (id)allMailboxUids; ++ (id)accountWithPath:(id)arg1; ++ (id)newAccountWithPath:(id)arg1; ++ (id)defaultPathForAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)defaultAccountDirectory; ++ (id)defaultPathNameForAccount; ++ (id)defaultPathNameForAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)defaultDeliveryAccount; ++ (BOOL)isAnyAccountOffline; ++ (BOOL)isAnyAccountOnline; ++ (void)_setOnlineStateOfAllAccountsTo:(BOOL)arg1; ++ (void)disconnectAllAccounts; ++ (void)connectAllAccounts; ++ (id)accountsInitializingMailboxList; ++ (void)_clearAllAccountBackgroundFetchInProgress; ++ (long long)numberOfDaysToKeepLocalTrash; ++ (BOOL)allAccountsDeleteInPlace; ++ (void)synchronouslyEmptyMailboxUidType:(int)arg1 inAccounts:(id)arg2; ++ (void)resetAllSpecialMailboxes; ++ (id)mailboxUidForFileSystemPath:(id)arg1 create:(BOOL)arg2; ++ (void)deleteMailboxUidIfEmpty:(id)arg1; ++ (id)_accountForURL:(id)arg1 includeInactiveAccounts:(BOOL)arg2; ++ (id)_accountForURL:(id)arg1; ++ (id)infoForURL:(id)arg1; ++ (id)URLForInfo:(id)arg1; ++ (id)accountWithURLString:(id)arg1; ++ (id)accountWithURLString:(id)arg1 includeInactiveAccounts:(BOOL)arg2; ++ (id)mailboxUidForURL:(id)arg1 forceCreation:(BOOL)arg2; ++ (id)mailboxUidForURL:(id)arg1; ++ (id)mailboxUidForMailboxID:(unsigned long long)arg1; ++ (BOOL)_mailAccountsAreInitialized; ++ (void)setSyncableMailAccounts:(id)arg1; ++ (void)setAllEmailAddresses:(id)arg1 withFullUserNames:(id)arg2; ++ (BOOL)_mailboxListingNotificationAreEnabled; ++ (void)_disableMailboxListingNotifications; ++ (void)_enableMailboxListingNotifications:(BOOL)arg1; ++ (id)_accountWithPath:(id)arg1; ++ (void)_postMailAccountsHaveChanged; ++ (void)_setOutboxMailboxUid:(id)arg1; ++ (id)_outboxMailboxUid; ++ (id)keyPathsForValuesAffecting_URLPersistenceHostname; +- (BOOL)isValidAccountWithError:(id)arg1 accountBeingEdited:(id)arg2 userCanOverride:(char *)arg3; +- (BOOL)cheapStoreAtPathIsEmpty:(id)arg1; +- (id)todosMailboxUid; +- (id)_todosMailboxUidUnlessUsingLocal; +- (id)initWithAccountInfo:(id)arg1; +- (id)initWithPath:(id)arg1; +- (void)dealloc; +- (void)finalize; +- (void)completeDeferredInitialization; +- (BOOL)isValid; +- (void)_setAccountInfo:(id)arg1; +- (void)_updateSpecialMailboxForType:(int)arg1 fromSyncedDictionary:(id)arg2; +- (void)updateFromSyncedDictionary:(id)arg1; +- (id)path; +- (void)setPath:(id)arg1; +- (id)accountDirectory; +- (id)tildeAbbreviatedPath; +- (id)applescriptFullUserName; +- (void)setApplescriptFullUserName:(id)arg1; +- (id)fullUserName; +- (void)setFullUserName:(id)arg1; +- (id)localizedDeliveryAccountIgnoringLockedDelivery:(BOOL)arg1; +- (id)smtpIdentifier; +- (void)setSMTPIdentifier:(id)arg1; +- (id)deliveryAccount; +- (void)setDeliveryAccount:(id)arg1; +- (id)deliveryAccountFromMail; +- (id)dynamicDeliveryAccount; +- (void)_deliveryAccountWillBeRemoved:(id)arg1; +- (void)_mailboxUserInfoDidChange:(id)arg1; +- (BOOL)deliveryAccountIsLocked; +- (void)setDeliveryAccountIsLocked:(BOOL)arg1; +- (id)firstEmailAddress; +- (id)rawEmailAddresses; +- (id)emailAddresses; +- (id)applescriptEmailAddresses; +- (void)setApplescriptEmailAddresses:(id)arg1; +- (void)setEmailAddresses:(id)arg1; +- (id)emailAliases; +- (BOOL)shouldAutoFetch; +- (void)setShouldAutoFetch:(BOOL)arg1; +@property(readonly) BOOL supportsRichTextNotes; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtURL:(id)arg3; +- (void)_synchronouslyInvalidateAndDelete:(BOOL)arg1; +- (void)deleteAccount; +- (void)_setCacheWriteTimer:(id)arg1; +- (void)saveCacheInBackground; +- (void)saveCache; +- (void)doRoutineCleanup; +- (void)setCacheIsDirty:(BOOL)arg1; +- (void)releaseAllConnections; +- (void)setIsOffline:(BOOL)arg1; +- (void)setIsWillingToGoOnline:(BOOL)arg1; +- (BOOL)canFetch; +- (id)remoteTaskQueue; +- (id)defaultsDictionary; +- (void)nowWouldBeAGoodTimeToStartBackgroundSynchronization; +- (BOOL)canAppendMessages; +- (BOOL)canBeSynchronized; +- (void)synchronizeAllMailboxes; +- (BOOL)_supportsMailboxListInitialization; +- (BOOL)isInitializingMailboxList; +- (void)willInitializeMailboxList; +- (void)didInitializeMailboxList; +- (BOOL)needsChecking; +- (void)setNeedsChecking; +- (void)fetchAsynchronouslyIsAuto:(BOOL)arg1; +- (void)fetchAsynchronously; +- (void)fetchSynchronously; +- (void)fetchSynchronouslyIsAuto:(id)arg1; +- (BOOL)isFetching; +- (void)newMailHasBeenReceived; +- (id)primaryMailboxUid; +- (id)rootMailboxUid; +- (BOOL)rootChildrenCanBePromoted; +- (id)draftsMailboxUidCreateIfNeeded:(BOOL)arg1; +- (id)junkMailboxUidCreateIfNeeded:(BOOL)arg1; +- (id)sentMessagesMailboxUidCreateIfNeeded:(BOOL)arg1; +- (id)trashMailboxUidCreateIfNeeded:(BOOL)arg1; +- (id)archiveMailboxUidCreateIfNeeded:(BOOL)arg1; +- (id)_outboxMailboxUidCreateIfNeeded:(BOOL)arg1; +- (id)notesMailboxUidCreateIfNeeded:(BOOL)arg1; +- (id)notesMailboxUidCreateIfNeeded:(BOOL)arg1 useLocalIfNeeded:(BOOL)arg2; +- (id)allMailboxUids; +- (void)setDraftsMailboxUid:(id)arg1; +- (void)setTrashMailboxUid:(id)arg1; +- (void)setJunkMailboxUid:(id)arg1; +- (void)setSentMessagesMailboxUid:(id)arg1; +- (void)setNotesMailboxUid:(id)arg1; +- (void)setToDosMailboxUid:(id)arg1; +- (void)deleteMessagesFromMailboxUid:(id)arg1 olderThanNumberOfDays:(unsigned long long)arg2; +- (void)_setEmptyFrequency:(long long)arg1 forKey:(id)arg2; +- (long long)_emptyFrequencyForKey:(id)arg1 defaultValue:(long long)arg2; +- (long long)emptySentMessagesFrequency; +- (void)setEmptySentMessagesFrequency:(long long)arg1; +- (long long)emptyJunkFrequency; +- (void)setEmptyJunkFrequency:(long long)arg1; +- (long long)emptyTrashFrequency; +- (void)setEmptyTrashFrequency:(long long)arg1; +- (BOOL)shouldMoveDeletedMessagesToTrash; +- (void)setShouldMoveDeletedMessagesToTrash:(BOOL)arg1; +- (BOOL)canMoveDeletedMessagesToTrash; +- (BOOL)defaultShouldShowNotesInInbox; +@property BOOL shouldShowNotesInInbox; +- (void)emptySpecialMailboxesThatNeedToBeEmptiedAtQuit; +- (id)displayName; +- (id)displayNameForMailboxUid:(id)arg1; +- (BOOL)containsMailboxes; +- (BOOL)_resetSpecialMailboxes; +- (void)resetSpecialMailboxes; +- (id)mailboxPathExtension; +- (BOOL)canCreateNewMailboxes; +- (BOOL)canMoveMailboxes; +- (BOOL)supportsSlashesInMailboxName; +- (id)validNameForMailbox:(id)arg1 fromDisplayName:(id)arg2 error:(id *)arg3; +- (BOOL)canMailboxBeRenamed:(id)arg1; +- (BOOL)canMailboxBeDeleted:(id)arg1; +- (BOOL)supportsNormalContainerOnlyMailboxes; +- (BOOL)deleteConvertsStoreToFolder; +- (id)createMailboxWithParent:(id)arg1 name:(id)arg2; +- (id)createMailboxWithParent:(id)arg1 name:(id)arg2 displayName:(id)arg3; +- (BOOL)renameMailbox:(id)arg1 newName:(id)arg2 parent:(id)arg3; +- (BOOL)deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (void)invalidateChildrenOfMailbox:(id)arg1; +- (void)_resetAllMailboxURLs; +- (void)setUsername:(id)arg1; +- (void)setHostname:(id)arg1; +- (void)setPortNumber:(unsigned int)arg1; +- (void)accountInfoDidChange; +- (void)setConnectionError:(id)arg1; +- (id)connectionError; +- (id)_ispDomain; +- (id)storeForMailboxUid:(id)arg1; +- (id)storeForMailboxUid:(id)arg1 createIfNeeded:(BOOL)arg2; +- (Class)storeClass; +- (id)mailboxUidForRelativePath:(id)arg1 isFilesystemPath:(BOOL)arg2 create:(BOOL)arg3; +- (id)valueInMailboxesWithName:(id)arg1; +- (id)objectSpecifierForMessageStore:(id)arg1; +- (id)objectSpecifierForMailboxUid:(id)arg1; +- (id)objectSpecifier; +- (id)URLString; +- (BOOL)synchronizesDataWithServer; +@property(readonly) BOOL supportsNotes; +- (BOOL)isEditableByUser; +- (BOOL)canParticipateInRules; +- (BOOL)providesAccountInformation; +- (BOOL)isZeroConfiguration; +- (BOOL)isRemoteAccount; +- (BOOL)hasTrashMailbox; +- (BOOL)supportsAppleScript; +- (BOOL)storesUnseenCount; +@property(readonly) long long gmailCapabilitiesSupport; +- (id)backupID; +- (BOOL)_setPath:(id)arg1; +- (void)setIsActive:(BOOL)arg1; +- (void)_postMailAccountsHaveChangedIfNeeded; +- (id)_pathComponentForUidName:(id)arg1; +- (id)_uidNameForPathComponent:(id)arg1; +- (void)_readCustomInfoFromMailboxCache:(id)arg1; +- (void)_writeCustomInfoToMailboxCache:(id)arg1; +- (id)_copyMailboxUidWithParent:(id)arg1 name:(id)arg2 pathComponent:(id)arg3 attributes:(unsigned long long)arg4 existingMailboxUid:(id)arg5; +- (void)_synchronouslyLoadListingForParent:(id)arg1; +- (void)_loadMailboxListingIntoCache:(id)arg1 parent:(id)arg2; +- (void)_mailboxesWereRemovedFromTree:(id)arg1 withFileSystemPaths:(id)arg2; +- (BOOL)_usesMailboxCache; +- (BOOL)_readMailboxCache; +- (void)_synchronizeMailboxListWithFileSystemBeforeImport:(BOOL)arg1; +- (void)_synchronizeMailboxListWithFileSystem; +- (void)_synchronizeMailboxListWithFileSystemBeforeImport; +- (void)_finishSynchronizingMailboxesAfterImport; +- (void)_loadEntriesFromFileSystemPath:(id)arg1 parent:(id)arg2; +- (void)_writeMailboxCache; +- (id)_insertMailbox:(id)arg1 intoParent:(id)arg2 withName:(id)arg3; +- (BOOL)_setChildren:(id)arg1 forMailboxUid:(id)arg2; +- (BOOL)_setChildren:(id)arg1 addedChild:(id)arg2 forMailboxUid:(id)arg3; +- (BOOL)_deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (id)description; +- (void)_fetchSynchronouslyIfNeeded; +- (void)_backgroundFetchCompletedCount:(unsigned long long)arg1; +- (void)_backgroundFetchCompleted; +- (void)_emptySpecialMailboxesIfNeeded; +- (void)_emptySpecialMailboxesIfNeededForQuit:(BOOL)arg1; +- (void)_clearAllPathBasedCachesAndDelete:(BOOL)arg1; +- (id)_defaultSpecialMailboxNameForType:(int)arg1; +- (BOOL)_assignSpecialMailboxToAppropriateIvar:(id)arg1 forType:(int)arg2; +- (void)_setSpecialMailboxName:(id)arg1 forType:(int)arg2; +- (void)_setSpecialMailbox:(id)arg1 forType:(int)arg2; +- (id)_specialMailboxNameForType:(int)arg1; +- (id)_specialMailboxUidWithType:(int)arg1 create:(BOOL)arg2; +- (BOOL)_canEmptyMessagesFromMailboxUid:(id)arg1; +- (BOOL)_shouldLogDeleteActivity; +- (id)_infoForMatchingURL:(id)arg1; +- (id)_URLPersistenceScheme; +- (id)_URLInternalConnectionScheme; +- (id)_URLExternalConnectionScheme; +- (id)_URLPersistenceHostname; +- (id)_URLForInfo:(id)arg1; +- (id)_mailboxPathPrefix:(BOOL)arg1; +- (id)rootMailboxUidEvenIfInactive:(BOOL)arg1; +- (id)allMailboxUidsEvenIfInactive:(BOOL)arg1; +- (id)iaSettings; +- (id)indicesOfObjectsByEvaluatingObjectSpecifier:(id)arg1; +- (id)mailboxes; +- (void)replaceInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInMailboxes:(id)arg1; +- (void)removeFromMailboxesAtIndex:(unsigned long long)arg1; +- (BOOL)emptyTrashOnQuit; +- (void)setEmptyTrashOnQuit:(BOOL)arg1; +- (BOOL)emptySentMessagesOnQuit; +- (void)setEmptySentMessagesOnQuit:(BOOL)arg1; +- (BOOL)emptyJunkOnQuit; +- (void)setEmptyJunkOnQuit:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MailDelivery.h b/MailHeaders/Lion/Message/MailDelivery.h new file mode 100644 index 00000000..4b825514 --- /dev/null +++ b/MailHeaders/Lion/Message/MailDelivery.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class DeliveryAccount, MailAccount, Message, MessageStore; + +@interface MailDelivery : NSObject +{ + id _delegate; + Message *_message; + MessageStore *_messageStore; + MailAccount *_archiveAccount; + DeliveryAccount *_account; + int _status; + BOOL _askForReadReceipt; +} + ++ (id)newWithMessage:(id)arg1; ++ (BOOL)deliverMessage:(id)arg1 askForReadReceipt:(BOOL)arg2; ++ (BOOL)deliverMessage:(id)arg1; ++ (BOOL)returnMessageToSender:(id)arg1; +- (id)initWithMessage:(id)arg1; +- (void)dealloc; +- (id)message; +- (id)delegate; +- (void)setDelegate:(id)arg1; +- (id)archiveAccount; +- (void)setArchiveAccount:(id)arg1; +- (id)account; +- (void)setAccount:(id)arg1; +- (BOOL)askForReadReceipt; +- (void)setAskForReadReceipt:(BOOL)arg1; +- (int)deliveryStatus; +- (id)headersForDelivery; +- (id)_headersForDeliveryFromHeaders:(id)arg1; +- (void)deliverAsynchronously; +- (int)deliverSynchronously; +- (int)deliverMessageHeaderData:(id)arg1 bodyData:(id)arg2 toRecipients:(id)arg3; + +@end + diff --git a/MailHeaders/Lion/Message/MailFileWrapper.h b/MailHeaders/Lion/Message/MailFileWrapper.h new file mode 100644 index 00000000..32003e84 --- /dev/null +++ b/MailHeaders/Lion/Message/MailFileWrapper.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@class NSString; + +@interface MailFileWrapper : NSFileWrapper +{ + unsigned long long _attachmentSize; + NSString *_pathToCopy; +} + ++ (id)newWithPath:(id)arg1 andContentID:(id)arg2 makingLocalCopy:(BOOL)arg3; ++ (id)localAttachmentFilesDirectory; +- (id)initWithDictionaryRepresentation:(id)arg1; +- (void)dealloc; +- (id)archivedDataWithPartNumber:(id)arg1; +- (id)symbolicLinkDestination; +- (id)pathToAttachment; +- (BOOL)isALargeAttachment; +@property(retain) NSString *pathToCopy; // @synthesize pathToCopy=_pathToCopy; +@property unsigned long long approximateSize; // @synthesize approximateSize=_attachmentSize; + +@end + diff --git a/MailHeaders/Lion/Message/MailboxUid.h b/MailHeaders/Lion/Message/MailboxUid.h new file mode 100644 index 00000000..d2e660f7 --- /dev/null +++ b/MailHeaders/Lion/Message/MailboxUid.h @@ -0,0 +1,236 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MFUIMailbox-Protocol.h" + +@class Criterion, MFError, MailAccount, NSArray, NSMutableIndexSet, NSMutableSet, NSString, SafeValueCache; + +@interface MailboxUid : NSObject +{ + NSString *_uniqueId; + NSString *_mailboxName; + NSString *_localizedName; + BOOL _needsToSaveMailboxName; + MailAccount *_account; + unsigned long long _attributes; + NSString *_pathComponent; + NSMutableSet *_reservedPathComponents; + id _countsLock; + unsigned long long _displayCount; + unsigned long long _unseenCount; + unsigned long long _deletedCount; + BOOL _countsWereLoaded; + struct __CFTree *_tree; + NSString *_pendingNameChange; + BOOL _isSmartMailbox; + long long _smartMailboxVersion; + SafeValueCache *_criteriaCache; + BOOL _allCriteriaMustBeSatisfied; + NSString *_realFullPath; + unsigned long long _numberOfVisibleChildren; + NSMutableIndexSet *_visibleChildrenIndexes; + NSArray *_sortedChildren; + BOOL _sortedChildrenAreUpToDate; + BOOL _failedToOpen; + BOOL _storeIsReadOnly; + MFError *_openFailureError; + id _displayIndexLock; + unsigned long long _displayIndex; + BOOL _isManuallySorted; + BOOL _isVisibleFlaggedMailbox; + BOOL _isPublicOrShared; + NSString *_syncId; + id _dontIndexFlagLock; + BOOL _dontIndexFlagWritten; + id _typeAndRepresentedAccountLock; + int _type; + MailAccount *_representedAccount; +} + ++ (void)initialize; ++ (id)smartMailboxUids; ++ (void)setSmartMailboxUids:(id)arg1; ++ (id)smartMailboxPlaceholders; ++ (void)addSmartMailboxPlaceholder:(id)arg1; ++ (void)removeAllSmartMailboxPlaceholders; ++ (id)_smartMailboxWithIdentifier:(id)arg1 inArray:(id)arg2; ++ (id)smartMailboxWithIdentifier:(id)arg1; ++ (id)smartMailboxesEnumeratorIncludingFlagMailboxes:(BOOL)arg1; ++ (BOOL)isSmartMailboxDictionaryCompatible:(id)arg1; ++ (BOOL)allMailboxesAreNoteType:(id)arg1; ++ (BOOL)mailboxTypeAllowsConversations:(int)arg1; ++ (BOOL)mailboxTypeIsAlwaysUnread:(int)arg1; ++ (id)mailboxWithPersistentIdentifier:(id)arg1; ++ (id)mailboxFromPath:(id)arg1; ++ (BOOL)typeIsGeneric:(int)arg1; ++ (id)descriptionForMailboxType:(int)arg1 plural:(BOOL)arg2; ++ (void)setShouldIndexTrash:(BOOL)arg1; ++ (void)reimportJunk; ++ (void)setShouldIndexJunk:(BOOL)arg1; ++ (void)queueUpdateCountsForMailboxes:(id)arg1; +@property BOOL isSmartMailbox; +- (long long)smartMailboxEncodingVersion; +- (BOOL)isSmartMailboxExpressibleInTigerSchema; +- (void)dealloc; +- (id)init; +- (id)initWithAccount:(id)arg1; +- (id)initWithName:(id)arg1 attributes:(unsigned long long)arg2 forAccount:(id)arg3; +- (id)initWithName:(id)arg1 pathComponent:(id)arg2 attributes:(unsigned long long)arg3 forAccount:(id)arg4; +- (id)initWithMailboxUid:(id)arg1; +- (id)initWithDictionaryRepresentation:(id)arg1; +- (id)persistentIdentifier; +- (BOOL)isEqual:(id)arg1; +- (id)dictionaryRepresentation; +- (id)representedMailbox; +- (id)extendedDisplayName; +- (id)displayNameUsingAccountNameIfSpecial:(BOOL)arg1; +- (id)displayNameUsingAccountNameIfSpecial:(BOOL)arg1 usingLocalizedName:(BOOL)arg2; +- (id)displayName; +- (void)setPendingNameChange:(id)arg1; +- (BOOL)canBeRenamed; +@property(readonly, retain) NSString *pathComponent; +- (id)name; +- (void)setName:(id)arg1 pathComponent:(id)arg2; +- (BOOL)isPublicOrShared; +- (void)setIsPublicOrShared:(BOOL)arg1; +- (void)_enqueueUnreadCountChangeNotification; +- (void)notifyForUnreadCount:(unsigned long long)arg1 andOldUnreadCount:(unsigned long long)arg2; +- (BOOL)unseenCountIsKnown; +- (unsigned long long)unseenCount; +@property(readonly) BOOL hasMessages; +- (id)children; +- (BOOL)hasChildren; +- (void)_invalidateVisibleChildrenCaches; +@property unsigned long long displayIndex; +- (BOOL)displayIndexCanBeModified; +@property BOOL isManuallySorted; +@property BOOL isVisibleFlaggedMailbox; +- (unsigned long long)suggestedDisplayIndexForChildMailbox:(id)arg1; +- (void)_updateSortedChildrenIfNeeded; +- (unsigned long long)numberOfVisibleChildren; +- (unsigned long long)numberOfSortedChildren; +- (id)childEnumerator; +- (id)childEnumeratorIncludingHiddenChildren:(BOOL)arg1; +- (id)depthFirstEnumerator; +- (unsigned long long)numberOfChildren; +- (id)childAtIndex:(unsigned long long)arg1; +- (id)visibleChildAtIndex:(unsigned long long)arg1; +- (id)sortedChildAtIndex:(unsigned long long)arg1; +- (unsigned long long)indexOfChild:(id)arg1; +- (id)childWithName:(id)arg1; +- (id)childWithPathComponent:(id)arg1; +- (id)unusedChildPathComponent:(id)arg1; +- (id)mutableCopyOfChildren; +- (id)mutableCopyOfChildrenIncludingHiddenChildren:(BOOL)arg1; +- (void)_deleteChildrenWithURLsIfInvalid:(id)arg1 fullPaths:(id)arg2; +- (BOOL)setChildren:(id)arg1; +- (void)invalidateChildren; +- (void)sortChildren; +- (id)parent; +- (void)setParent:(id)arg1; +- (BOOL)hasAlternateParent; +- (void)flushCriteria; +- (void)_saveMailboxNameIfNeeded; +- (id)deepCopy; +- (void)setRepresentedAccount:(id)arg1; +- (id)representedAccount; +- (id)account; +- (id)accountURLString; +- (id)applescriptAccount; +- (BOOL)isValid; +- (void)invalidate; +- (BOOL)isContainer; +- (BOOL)isStore; +- (BOOL)isSpecialMailboxUid; +- (BOOL)isPlainSmartMailbox; +- (id)_stringByAppendingPathComponentsForAccount:(id)arg1 root:(struct __CFTree *)arg2 prefix:(id)arg3 isFilesystemPath:(BOOL)arg4; +- (id)accountRelativePath; +- (id)accountRelativeFilesystemPath; +- (id)_fullPathNonNil; +- (id)fullPath; +- (id)realFullPath; +- (id)tildeAbbreviatedPath; +- (id)pathRelativeToMailbox:(id)arg1; +- (id)URL; +- (id)_URLStringWithAccount:(id)arg1; +- (id)URLString; +- (long long)compareWithMailboxUid:(id)arg1; +- (long long)indexToInsertChildMailboxUid:(id)arg1; +- (BOOL)isDescendantOfMailbox:(id)arg1; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (BOOL)isStoreConvertibleToFolder; +- (id)description; +@property int type; +- (BOOL)isRSSMailboxOrFolder; +- (BOOL)shouldMaintainMessageTypeUnity; +- (BOOL)preferredMessageType; +- (BOOL)isVisible; +- (BOOL)isIndexable; +- (void)_updateDontIndexFlagFile; +- (id)_loadUserInfo; +- (void)_userInfoDidLoad:(id)arg1; +- (id)userInfoObjectForKey:(id)arg1; +- (BOOL)_parentStoresUserInfo; +- (void)setUserInfoObject:(id)arg1 forKey:(id)arg2; +- (BOOL)userInfoBoolForKey:(id)arg1; +- (void)setUserInfoBool:(BOOL)arg1 forKey:(id)arg2; +- (void)forceSaveUserInfo; +- (void)saveUserInfo; +- (id)userInfoDictionary; +- (void)setUserInfoWithDictionary:(id)arg1; +- (void)_saveMailboxesWithDirtyUserInfo; +- (void)_saveMailboxesWithDirtyUserInfoWithDelay; +- (BOOL)_userInfoIsDirty; +- (void)setUserInfoIsDirty:(BOOL)arg1; +- (id)_ancestralAccount; +- (id)criteria; +- (id)_updatedCriteria:(id)arg1; +@property(readonly) Criterion *criterion; +- (void)setCriteria:(id)arg1; +- (id)_abGroupsUsedInCriteria; +- (BOOL)criteriaAreValid:(id *)arg1; +- (BOOL)allCriteriaMustBeSatisfied; +- (void)setAllCriteriaMustBeSatisfied:(BOOL)arg1; +- (BOOL)_isNormalMailbox; +- (unsigned long long)displayCount; +- (void)setDisplayCount:(unsigned long long)arg1; +@property(readonly) unsigned long long deletedCount; +- (void)setMessageCounts:(id)arg1; +- (id)store; +- (id)storeCreateIfNeeded:(BOOL)arg1; +- (BOOL)isStoreReadOnlyCreateIfNeeded:(BOOL)arg1; +- (BOOL)failedToOpen; +- (id)openFailureError; +- (void)setFailedToOpen:(BOOL)arg1 error:(id)arg2; +- (id)copyWithZone:(id)arg1; +- (BOOL)allowsMoveDeletedMessagesToTrash; +- (BOOL)isPlaceholder; +- (BOOL)isValidDestinationMailbox; +@property(copy) NSString *primitiveMailboxName; // @synthesize primitiveMailboxName=_mailboxName; +@property(copy) NSString *primitivePathComponent; // @synthesize primitivePathComponent=_pathComponent; +@property BOOL storeIsReadOnly; // @synthesize storeIsReadOnly=_storeIsReadOnly; +@property(retain) NSString *syncId; // @synthesize syncId=_syncId; +@property(retain) NSString *uniqueId; // @synthesize uniqueId=_uniqueId; +@property long long smartMailboxVersion; // @synthesize smartMailboxVersion=_smartMailboxVersion; +@property unsigned long long attributes; // @synthesize attributes=_attributes; +- (int)backupType; +- (id)backupID; +- (BOOL)isPointedToByCriterion:(id)arg1 traversedMailboxes:(id)arg2; +- (BOOL)isPointedToBySmartMailbox:(id)arg1 traversedMailboxes:(id)arg2; +- (BOOL)isPointedToBySmartMailbox:(id)arg1; +- (id)objectSpecifier; +- (id)applescriptContainer; +- (id)applescriptChildren; +- (id)messages; +- (void)removeFromMessagesAtIndex:(unsigned long long)arg1; +- (id)mailboxName; +- (void)setMailboxName:(id)arg1; +- (id)valueInMessagesWithUniqueID:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MailboxUidWrapper.h b/MailHeaders/Lion/Message/MailboxUidWrapper.h new file mode 100644 index 00000000..ca9f4478 --- /dev/null +++ b/MailHeaders/Lion/Message/MailboxUidWrapper.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSProxy.h" + +@class MailboxUid; + +@interface MailboxUidWrapper : NSProxy +{ + MailboxUid *_wrappedMailbox; + BOOL _hasAlternateParent; +} + +- (id)initWithMailboxUid:(id)arg1; +- (void)dealloc; +- (void)forwardInvocation:(id)arg1; +- (id)methodSignatureForSelector:(SEL)arg1; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +- (id)tildeAbbreviatedPath; +- (id)representedMailbox; +- (void)_setRepresentedMailbox:(id)arg1; +- (BOOL)hasAlternateParent; +- (void)setHasAlternateParent:(BOOL)arg1; +- (void)_displayCountChanged:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MainThreadInvocationOperation.h b/MailHeaders/Lion/Message/MainThreadInvocationOperation.h new file mode 100644 index 00000000..af123535 --- /dev/null +++ b/MailHeaders/Lion/Message/MainThreadInvocationOperation.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface MainThreadInvocationOperation : ThrowingInvocationOperation +{ + BOOL _isExecuting; + BOOL _isFinished; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +- (void)start; +- (void)main; +- (BOOL)isConcurrent; +- (BOOL)isExecuting; +- (void)_setIsExecuting:(BOOL)arg1; +- (BOOL)isFinished; +- (void)_finish; + +@end + diff --git a/MailHeaders/Lion/Message/Matador.h b/MailHeaders/Lion/Message/Matador.h new file mode 100644 index 00000000..e0b4a805 --- /dev/null +++ b/MailHeaders/Lion/Message/Matador.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class InvocationQueue, NSConditionLock, NSMutableSet; + +@interface Matador : NSObject +{ + NSConditionLock *_attachmentIndexingLock; + NSMutableSet *_messsagesScheduledForAttachmentIndexing; + InvocationQueue *_indexQueue; +} + ++ (void)initialize; ++ (id)sharedInstance; +- (id)init; +- (void)dealloc; +- (void)_setAttributeForFileAtPath:(id)arg1 name:(id)arg2 value:(id)arg3; +- (void)setAttributeForFileAtPath:(id)arg1 name:(id)arg2 value:(id)arg3; +- (BOOL)_shouldIndexAttachmentsForMessage:(id)arg1; +- (void)_synchronouslyIndexAttachmentsForMessage:(id)arg1; +- (void)_synchronouslyIndexAttachmentsForMessages:(id)arg1; +- (void)_scheduleAttachmentIndexingForMessages:(id)arg1; +- (void)_triggerDelayedAttachmentIndexing; +- (void)_triggerNowAttachmentIndexing; +- (void)_indexAttachmentsForScheduledMessages; +- (void)indexAttachmentsForMessages:(id)arg1; +- (void)indexAttachmentsForMessage:(id)arg1; +- (void)immediatelyIndexAttachmentsForMessages:(id)arg1; +- (void)immediatelyIndexAttachmentsForMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/Message.h b/MailHeaders/Lion/Message/Message.h new file mode 100644 index 00000000..54ef4841 --- /dev/null +++ b/MailHeaders/Lion/Message/Message.h @@ -0,0 +1,269 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + +#import "MFMessageSortingInterface-Protocol.h" +#import "CDStructures.h" + +@class MFUUID, MessageStore, NSArray, NSData, NSIndexSet, NSString; + +#ifndef CDSTRUCT_ACCEFCCD +typedef struct { + unsigned int colorHasBeenEvaluated:1; + unsigned int colorWasSetManually:1; + unsigned int redColor:8; + unsigned int greenColor:8; + unsigned int blueColor:8; + unsigned int loadingBody:1; + unsigned int firstUnused:2; + unsigned int isMarkedForOverwrite:1; + unsigned int unused:2; +} CDStruct_accefccd; +#define CDSTRUCT_ACCEFCCD 1 +#endif + +@interface Message : NSObject +{ + double _dateSentInterval; + double _dateReceivedInterval; + double _dateLastViewedInterval; + long long _mf_retainCount; + MessageStore *_store; + NSString *_senderAddressComment; + NSString *_subject; + NSArray *_toRecipients; + NSString *_sender; + NSArray *_authors; + NSData *_messageIDHeaderDigest; + NSData *_inReplyToHeaderDigest; + MFUUID *_documentID; + unsigned int _messageFlags; + CDStruct_accefccd _flags; + unsigned int _preferredEncoding; + BOOL _type; + unsigned char _subjectPrefixLength; + BOOL _recipientType; +} + ++ (void)initialize; ++ (id)messageWithRFC822Data:(id)arg1; ++ (id)messageWithRFC822Data:(id)arg1 sanitizeData:(BOOL)arg2; ++ (id)forwardedMessagePrefixWithSpacer:(BOOL)arg1; ++ (id)replyPrefixWithSpacer:(BOOL)arg1; ++ (id)descriptionForType:(BOOL)arg1 plural:(BOOL)arg2; ++ (id)messageTypeKeyForMessageType:(BOOL)arg1; ++ (BOOL)_messageTypeForMessageTypeKey:(id)arg1; ++ (id)unreadMessagesFromMessages:(id)arg1; ++ (unsigned char)subjectPrefixLengthUnknown; ++ (BOOL)allMessages:(id)arg1 areSameType:(BOOL)arg2; ++ (BOOL)colorIsSetInMoreFlags:(CDStruct_accefccd)arg1; ++ (unsigned int)validatePriority:(unsigned int)arg1; ++ (unsigned long long)displayablePriorityForPriority:(unsigned int)arg1; ++ (BOOL)isMessageURL:(id)arg1; ++ (id)messageWithURL:(id)arg1; ++ (id)messagesWithURL:(id)arg1; ++ (id)messageWithPersistentID:(id)arg1; +- (id)init; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)retain; +- (void)release; +- (unsigned long long)retainCount; +- (id)messageStore; +- (void)setMessageStore:(id)arg1; +- (BOOL)messageStoreShouldBeSet; +- (id)mailbox; +- (void)cacheBodyAndHeader; +- (void)uncacheBodyAndHeader; +- (id)_cachedHeaders; +- (void)_cacheHeadersIfPossible:(id)arg1; +- (id)_cachedHeaderData; +- (void)_cacheHeaderDataIfPossible:(id)arg1; +- (id)_cachedMessageBody; +- (void)_cacheMessageBodyIfPossible:(id)arg1; +- (id)_cachedMessageBodyData; +- (void)_cacheMessageBodyDataIfPossible:(id)arg1; +- (id)headers; +- (id)headersIfAvailable; +- (BOOL)isKnownToBeNote; +- (BOOL)type; +- (void)setType:(BOOL)arg1; +- (BOOL)isEditable; +- (BOOL)isMessageMeeting; +- (id)documentID; +- (void)setDocumentID:(id)arg1; +- (unsigned int)messageFlags; +- (void)setPrimitiveMessageFlags:(unsigned int)arg1 mask:(unsigned int)arg2; +- (void)setMessageFlags:(unsigned int)arg1 mask:(unsigned int)arg2; +- (id)attachmentNamesIfAvailable; +- (id)messageBody; +- (id)messageBodyIfAvailable; +- (id)messageBodyFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)messageBodyUpdatingFlags:(BOOL)arg1; +- (id)messageBodyForIndexingAttachments; +- (id)messageBodyIfAvailableUpdatingFlags:(BOOL)arg1; +- (id)messageDataIncludingFromSpace:(BOOL)arg1; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (BOOL)colorHasBeenEvaluated; +- (id)color; +- (int)colorIntValue; +- (int)colorForSort; +- (BOOL)isMarkedForOverwrite; +- (void)setMarkedForOverwrite:(BOOL)arg1; +- (void)setPrimitiveColor:(id)arg1; +- (void)setColor:(id)arg1; +- (void)setPrimitiveColorHasBeenEvaluated:(BOOL)arg1; +- (void)setColorHasBeenEvaluated:(BOOL)arg1; +- (void)setPrimitiveColor:(id)arg1 hasBeenEvaluated:(BOOL)arg2 flags:(unsigned int)arg3 mask:(unsigned int)arg4; +- (void)setColor:(id)arg1 hasBeenEvaluated:(BOOL)arg2 flags:(unsigned int)arg3 mask:(unsigned int)arg4; +- (void)dealloc; +- (void)finalize; +- (unsigned long long)messageSize; +- (id)attributedString; +- (id)preferredEmailAddressToReplyWith; +- (id)messageID; +- (id)messageIDHeaderDigest; +- (void)unlockedSetMessageIDHeaderDigest:(id)arg1; +- (void)setMessageIDHeaderDigest:(id)arg1; +- (id)_messageIDHeaderDigestIvar; +- (id)inReplyToHeaderDigest; +- (BOOL)isReply; +- (void)unlockedSetInReplyToHeaderDigest:(id)arg1; +- (void)setInReplyToHeaderDigest:(id)arg1; +- (id)_inReplyToHeaderDigestIvar; +- (BOOL)isMessageContentsLocallyAvailable; +- (BOOL)isPartialMessageBodyAvailable; +- (id)stringValueRenderMode:(long long)arg1 updateBodyFlags:(BOOL)arg2 junkRecorder:(id)arg3; +- (id)stringForIndexing; +- (id)stringForIndexingUpdatingBodyFlags:(BOOL)arg1; +- (id)stringForJunk; +- (id)stringForJunk:(id)arg1; +- (BOOL)hasCalculatedNumberOfAttachments; +- (unsigned long long)numberOfAttachments; +- (int)junkMailLevel; +- (void)setPriorityFromHeaders:(id)arg1; +- (int)priority; +- (unsigned int)preferredEncoding; +- (void)setPreferredEncoding:(unsigned int)arg1; +- (id)rawSourceFromHeaders:(id)arg1 body:(id)arg2; +- (BOOL)_doesDateAppearToBeSane:(id)arg1; +- (id)_newDateFromReceivedHeadersInHeaders:(id)arg1; +- (id)_newDateFromHeader:(id)arg1 inHeaders:(id)arg2; +- (id)_newDateFromDateHeaderInHeaders:(id)arg1; +- (id)_newDateFromCreatedDateHeaderInHeaders:(id)arg1; +- (void)_setDateReceivedFromHeaders:(id)arg1; +- (void)_setDateSentFromHeaders:(id)arg1; +- (void)loadCachedHeaderValuesFromHeaders:(id)arg1 type:(BOOL)arg2; +- (id)subjectAndPrefixLength:(unsigned long long *)arg1; +- (id)subjectNotIncludingReAndFwdPrefix; +- (id)subjectAddition; +- (id)subject; +- (void)setSubject:(id)arg1; +- (void)setSubjectPrefixLength:(unsigned char)arg1; +- (BOOL)supportsSnippets; +- (id)dateReceived; +- (id)dateSent; +- (void)setDateReceivedTimeIntervalSince1970:(double)arg1; +- (double)dateReceivedAsTimeIntervalSince1970; +- (double)dateSentAsTimeIntervalSince1970; +- (void)setDateSentTimeIntervalSince1970:(double)arg1; +- (id)dateLastViewed; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (id)sender; +- (void)setSender:(id)arg1; +- (id)senderAddressComment; +- (BOOL)senderIsAvailableOnline; +- (id)to; +- (void)setTo:(id)arg1; +- (id)authors; +- (void)setAuthors:(id)arg1; +- (void)setMessageInfo:(id)arg1 subjectPrefixLength:(unsigned char)arg2 to:(id)arg3 sender:(id)arg4 type:(BOOL)arg5 dateReceivedTimeIntervalSince1970:(double)arg6 dateSentTimeIntervalSince1970:(double)arg7 messageIDHeaderDigest:(id)arg8 inReplyToHeaderDigest:(id)arg9 dateLastViewedTimeIntervalSince1970:(double)arg10; +- (void)setMessageInfoFromMessage:(id)arg1; +- (id)references; +- (id)remoteID; +- (unsigned int)uid; +- (unsigned int)uidForSort; +- (CDStruct_accefccd)moreMessageFlags; +- (id)path; +- (id)account; +- (id)remoteMailboxURL; +- (id)originalMailboxURL; +- (id)_URLFetchIfNotAvailable:(BOOL)arg1; +- (id)URL; +- (id)URLIfAvailable; +- (id)persistentID; +- (id)bodyDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)bodyData; +- (id)headerDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)headerData; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)spotlightAttributes; +- (void)_calculateAttachmentInfoFromBody:(id)arg1; +- (void)forceSetAttachmentInfoFromBody:(id)arg1; +- (void)setAttachmentInfoFromBody:(id)arg1; +- (void)setAttachmentInfoFromBody:(id)arg1 forced:(BOOL)arg2; +- (BOOL)calculateAttachmentInfoFromBody:(id)arg1 numberOfAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4; +- (BOOL)calculateAttachmentInfoFromBody:(id)arg1 numberOfAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4 force:(BOOL)arg5; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3; +@property BOOL recipientType; // @synthesize recipientType=_recipientType; +@property double primitiveDateLastViewedInterval; // @synthesize primitiveDateLastViewedInterval=_dateLastViewedInterval; +@property double primitiveDateReceivedInterval; // @synthesize primitiveDateReceivedInterval=_dateReceivedInterval; +@property double primitiveDateSentInterval; // @synthesize primitiveDateSentInterval=_dateSentInterval; +@property BOOL primitiveMessageType; // @synthesize primitiveMessageType=_type; +- (id)backupID; +- (id)objectSpecifier; +- (void)_setAppleScriptFlag:(id)arg1 state:(BOOL)arg2; +- (BOOL)isRead; +- (void)setIsRead:(BOOL)arg1; +- (BOOL)wasRepliedTo; +- (void)setWasRepliedTo:(BOOL)arg1; +- (BOOL)wasForwarded; +- (void)setWasForwarded:(BOOL)arg1; +- (BOOL)wasRedirected; +- (void)setWasRedirected:(BOOL)arg1; +- (BOOL)isJunk; +- (void)setIsJunk:(BOOL)arg1; +- (BOOL)isDeleted; +- (void)setIsDeleted:(BOOL)arg1; +- (BOOL)isFlagged; +- (void)setIsFlagged:(BOOL)arg1; +- (long long)flaggedStatus; +- (void)setFlaggedStatus:(long long)arg1; +- (id)replyTo; +- (id)scriptedMessageSize; +- (id)content; +- (id)_performBackgroundGetContent; +- (void)_addRecipientsForKey:(id)arg1 toArray:(id)arg2; +- (id)recipients; +- (id)toRecipients; +- (id)ccRecipients; +- (id)bccRecipients; +- (id)container; +- (void)setContainer:(id)arg1; +- (void)_performBackgroundSetContainer:(id)arg1 command:(id)arg2; +- (id)messageIDHeader; +- (id)rawSource; +- (id)allHeaders; +- (int)actionColorMessage; +- (int)backgroundColor; +- (void)setBackgroundColor:(int)arg1; +- (id)appleScriptHeaders; +- (id)appleScriptAttachments; +- (id)valueInAppleScriptAttachmentsWithUniqueID:(id)arg1; +- (void)renderHeaders:(id)arg1; +- (void)renderBody:(id)arg1; +- (void)renderString:(id)arg1; +@property(readonly) BOOL isThread; +@property(readonly) BOOL containsOnlyNotes; +@property(readonly) BOOL shouldUseSubjectForThreading; +@property(readonly) long long conversationID; +@property(readonly) NSIndexSet *appliedFlagColors; +- (BOOL)isParentResponseMessage:(char *)arg1 isRejected:(char *)arg2 requestedAddresses:(id)arg3 requestIsForSenders:(char *)arg4; +- (BOOL)isChildRequestMessage:(id)arg1 requestIsForSenders:(char *)arg2 childAddress:(id *)arg3 permissionRequestState:(int *)arg4; +- (BOOL)isChildRequestMessage; + +@end + diff --git a/MailHeaders/Lion/Message/MessageAddressee.h b/MailHeaders/Lion/Message/MessageAddressee.h new file mode 100644 index 00000000..952b4886 --- /dev/null +++ b/MailHeaders/Lion/Message/MessageAddressee.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString; + +@interface MessageAddressee : NSObject +{ + NSString *_displayName; + NSString *_address; + NSString *_type; + id _message; +} + +- (id)initWithDisplayName:(id)arg1 address:(id)arg2 type:(id)arg3 message:(id)arg4; +- (void)dealloc; +- (BOOL)isEqual:(id)arg1; +- (id)formattedAddress; +- (id)displayName; +- (void)setDisplayName:(id)arg1; +- (id)address; +- (void)setAddress:(id)arg1; +- (id)_keyForType; +- (id)objectSpecifier; +- (void)setMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MessageAttachment.h b/MailHeaders/Lion/Message/MessageAttachment.h new file mode 100644 index 00000000..cc6b6c28 --- /dev/null +++ b/MailHeaders/Lion/Message/MessageAttachment.h @@ -0,0 +1,127 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MimeBody, MimePart, NSArray, NSData, NSDictionary, NSFileWrapper, NSImage, NSNumber, NSString, NSURL; + +@interface MessageAttachment : NSObject +{ + NSData *_currentData; + NSFileWrapper *_fileWrapper; + NSURL *_externalBodyURL; + id _stationeryCompositeImage; + NSData *_originalData; + NSString *_originalFilename; + BOOL _hasResourceForkData; + struct CGSize _imageSizeFromHeaders; + NSImage *_iconImage; + long long _imageByteCountFromHeaders; + NSString *_filename; + NSNumber *_filePermissions; + NSNumber *_fileSize; + NSString *_mimeType; + unsigned int _creator; + unsigned int _type; + NSString *_extension; + BOOL _shouldHideExtension; + unsigned short _finderFlags; + NSArray *_whereFroms; + NSDictionary *_quarantineProperties; + NSString *_contentID; + MimeBody *_mimeBody; + MimePart *_mimePart; + NSString *_messageID; + BOOL _isCalendarInvitation; + NSString *_mailSpecialHandlingType; + NSString *_filenameForSaving; + NSString *_savedPath; + unsigned long long _approximateSize; +} + +- (id)initWithData:(id)arg1; +- (id)initWithMailInternalData:(id)arg1; +- (id)initWithFileWrapper:(id)arg1; +- (id)initWithExternalBodyURL:(id)arg1; +- (id)initWithStationeryCompositeImage:(id)arg1; +- (void)dealloc; +- (id)attachmentWithCurrentData; +@property(retain) NSData *originalData; +@property(retain) NSData *currentData; // @synthesize currentData=_currentData; +- (BOOL)isScalable; +- (void)setDataForResizedImage:(id)arg1; +- (void)revertToOriginalData; +- (BOOL)isFullSize; +- (void)setFileNameForResizedImage:(id)arg1; +@property(retain) MimePart *mimePart; +- (void)_configureWithMimePart; +- (void)takeInfoFromMessageAttachment:(id)arg1 saveOriginalData:(BOOL)arg2; +- (id)dataForFetchLevel:(unsigned long long)arg1; +- (void)download:(id)arg1 didReceiveResponse:(id)arg2; +- (void)download:(id)arg1 didReceiveDataOfLength:(unsigned long long)arg2; +- (void)download:(id)arg1 didFailWithError:(id)arg2; +- (void)downloadDidFinish:(id)arg1; +- (void)setFromHeadersImageSize:(struct CGSize)arg1 byteCount:(long long)arg2; +- (struct CGSize)imageSizeFromHeaders; +- (long long)imageByteCountFromHeaders; +- (BOOL)isDataDownloaded; +- (unsigned long long)approximateSizeOfWrapper; +- (unsigned long long)approximateSize; +- (id)filenameWithoutHiddenExtension; +- (id)iconImage; +- (void)setIconImage:(id)arg1; +- (void)discardIconImage; +- (id)toolTip; +- (BOOL)isVideoOrAudio; +- (BOOL)isStationeryCompositeImage; +- (BOOL)isImage; +- (BOOL)isPDF; +- (void)isImage:(char *)arg1 isPDF:(char *)arg2; +- (void)isImage:(char *)arg1 isPDF:(char *)arg2 bestMimeType:(id *)arg3; +@property BOOL isCalendarInvitation; // @synthesize isCalendarInvitation=_isCalendarInvitation; +- (BOOL)isRemotelyAccessed; +- (id)remoteAccessMimeType; +- (BOOL)isDirectory; +@property BOOL isPartOfStationery; +- (void)takeNewDataFromPath:(id)arg1; +- (BOOL)couldConfuseWindowsClients; +- (id)appleSingleDataWithFilename:(const char *)arg1 length:(unsigned long long)arg2; +- (id)appleDoubleDataWithFilename:(const char *)arg1 length:(unsigned long long)arg2; +- (id)_fileWrapperIncludeData:(BOOL)arg1; +- (id)fileWrapperIncludeData:(BOOL)arg1 fetchLevel:(unsigned long long)arg2; +@property(retain) NSFileWrapper *fileWrapper; +- (id)fileWrapperIfAvailable; +- (void)setFilenameForSaving:(id)arg1; +- (BOOL)createEmptyAttachmentAtPath:(id)arg1; +- (id)createTemporaryFile; +- (id)symbolicLinkDestinationForFileWrapper; +- (id)description; +@property(retain) NSDictionary *quarantineProperties; // @synthesize quarantineProperties=_quarantineProperties; +@property(retain) NSArray *whereFroms; // @synthesize whereFroms=_whereFroms; +@property(retain) NSString *savedPath; // @synthesize savedPath=_savedPath; +@property(readonly) id stationeryCompositeImage; // @synthesize stationeryCompositeImage=_stationeryCompositeImage; +@property(retain) NSString *mailSpecialHandlingType; // @synthesize mailSpecialHandlingType=_mailSpecialHandlingType; +@property(retain) NSString *messageID; // @synthesize messageID=_messageID; +@property(retain) NSString *mimeType; // @synthesize mimeType=_mimeType; +@property(retain) NSNumber *filePermissions; // @synthesize filePermissions=_filePermissions; +@property BOOL shouldHideExtension; // @synthesize shouldHideExtension=_shouldHideExtension; +@property(retain) NSString *extension; // @synthesize extension=_extension; +@property unsigned int creator; // @synthesize creator=_creator; +@property unsigned int type; // @synthesize type=_type; +@property(retain) NSString *contentID; // @synthesize contentID=_contentID; +@property(retain) NSNumber *fileSize; // @synthesize fileSize=_fileSize; +@property(readonly, retain) NSString *originalFilename; // @synthesize originalFilename=_originalFilename; +@property(retain) NSString *filename; // @synthesize filename=_filename; +@property(retain) NSURL *externalBodyURL; // @synthesize externalBodyURL=_externalBodyURL; +- (void)_fetchDataForCommand:(id)arg1; +- (void)_finishSaveAttachmentCommand:(id)arg1; +- (id)handleSaveAttachmentCommand:(id)arg1; +- (id)appleScriptApproximateSize; +- (id)uniqueID; +- (id)objectSpecifier; + +@end + diff --git a/MailHeaders/Lion/Message/MessageAttachmentViewController.h b/MailHeaders/Lion/Message/MessageAttachmentViewController.h new file mode 100644 index 00000000..c6c1d506 --- /dev/null +++ b/MailHeaders/Lion/Message/MessageAttachmentViewController.h @@ -0,0 +1,57 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MessageAttachment, NSArray, NSImage, NSMutableArray; + +@interface MessageAttachmentViewController : NSObject +{ + MessageAttachment *_attachment; + NSMutableArray *_attachmentViews; + BOOL _canBeDisplayedInline; + BOOL _canBeDisplayedInRegisteredViewer; + struct CGSize _originalImageSize; + BOOL _originalImageSizeHasBeenComputed; + NSImage *_inlineImage; + BOOL _isBeingDisplayedInline; + long long _domNodeWidth; + long long _domNodeHeight; + struct CGSize _targetImageSize; + struct CGSize _previousTargetImageSize; + BOOL _isImageBeingResized; +} + ++ (void)initialize; ++ (void)registerViewingClass:(Class)arg1 forMimeTypes:(id)arg2; ++ (Class)_viewProviderClassForMimeType:(id)arg1; +- (id)init; +- (id)initWithMessageAttachment:(id)arg1; +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +@property(readonly) NSArray *attachmentViews; +- (void)addAttachmentView:(id)arg1; +@property BOOL isBeingDisplayedInline; +- (BOOL)canBeDisplayedInline; +- (void)setCanBeDisplayedInline:(BOOL)arg1; +- (BOOL)shouldBeDisplayedInlineByDefault; +- (BOOL)shouldDownloadAttachmentOnDisplay; +- (struct CGSize)originalImageSizeWithOriginalImage:(id)arg1; +@property(readonly) struct CGSize targetImageSize; // @synthesize targetImageSize=_targetImageSize; +- (void)resizingStarted:(struct CGSize)arg1; +- (void)resizingFinished:(id)arg1 imageSize:(struct CGSize)arg2 fileExtension:(id)arg3 fileType:(unsigned int)arg4 maxImageSize:(struct CGSize)arg5; +- (id)inlineImage; +- (id)iconImage; +- (void)_imageDataDidChange:(id)arg1; +- (id)methodSignatureForSelector:(SEL)arg1; +- (void)forwardInvocation:(id)arg1; +- (id)description; +@property long long domNodeHeight; // @synthesize domNodeHeight=_domNodeHeight; +@property long long domNodeWidth; // @synthesize domNodeWidth=_domNodeWidth; +@property(readonly, retain) MessageAttachment *attachment; // @synthesize attachment=_attachment; + +@end + diff --git a/MailHeaders/Lion/Message/MessageBody.h b/MailHeaders/Lion/Message/MessageBody.h new file mode 100644 index 00000000..a9c91c9c --- /dev/null +++ b/MailHeaders/Lion/Message/MessageBody.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class Message; + +@interface MessageBody : NSObject +{ + long long _messageID; + Message *_message; + BOOL _hideCalendarMimePart; +} + +- (id)init; +- (void)dealloc; +- (id)message; +- (void)setMessage:(id)arg1; +- (id)attributedString; +- (BOOL)isHTML; +- (BOOL)isRich; +@property(readonly) BOOL isSignedByMe; +- (void)calculateNumberOfAttachmentsIfNeeded; +- (void)calculateNumberOfAttachmentsDecodeIfNeeded; +- (unsigned int)numberOfAttachmentsSigned:(char *)arg1 encrypted:(char *)arg2 numberOfTNEFAttachments:(unsigned int *)arg3; +- (id)attachmentsWithContext:(id)arg1; +- (id)attachments; +- (id)attachmentViewControllers; +- (id)attachmentFilenames; +- (id)textHtmlPart; +- (id)webArchive; +@property BOOL hideCalendarMimePart; // @synthesize hideCalendarMimePart=_hideCalendarMimePart; +@property long long messageID; // @synthesize messageID=_messageID; +- (void)renderString:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MessageConsumer-Protocol.h b/MailHeaders/Lion/Message/MessageConsumer-Protocol.h new file mode 100644 index 00000000..50d4435c --- /dev/null +++ b/MailHeaders/Lion/Message/MessageConsumer-Protocol.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol MessageConsumer +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByMessageID:(id)arg2; +- (void)finishedSendingMessages; +- (BOOL)shouldCancel; + +@optional +- (void)newMessagesAvailable:(id)arg1 conversationMembers:(id)arg2; +- (id)libraryNotificationObject; +- (id)libraryNotificationMessages; +@end + diff --git a/MailHeaders/Lion/Message/MessageCriterion.h b/MailHeaders/Lion/Message/MessageCriterion.h new file mode 100644 index 00000000..8e90e425 --- /dev/null +++ b/MailHeaders/Lion/Message/MessageCriterion.h @@ -0,0 +1,88 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "Criterion.h" + +@class NSString; + +@interface MessageCriterion : Criterion +{ + int _specialMailboxType; + NSString *_groupUniqueID; +} + ++ (void)initialize; ++ (id)messagesInConversationCriterionWithConversationIDs:(id)arg1; ++ (void)_updateAddressComments:(id)arg1; ++ (int)criterionTypeForString:(id)arg1; ++ (id)stringForCriterionType:(int)arg1; +- (id)initWithDictionary:(id)arg1 andRemoveRecognizedKeysIfMutable:(BOOL)arg2; +- (void)dealloc; +- (BOOL)isEqual:(id)arg1; +- (BOOL)isEquivalent:(id)arg1; +- (id)dictionaryRepresentation; +- (void)setCriterionIdentifier:(id)arg1; +- (id)recursiveGroupUniqueIDs; +- (id)_headersRequiredForEvaluation; +- (void)addHeadersRequiredForRoutingToArray:(id)arg1; +- (BOOL)_evaluateDateCriterion:(id)arg1; +- (BOOL)_evaluateHeaderCriterion:(id)arg1; +- (BOOL)_evaluateBodyCriterion:(id)arg1; +- (BOOL)_evaluateAddressBookCriterion:(id)arg1; +- (BOOL)_doesGroup:(id)arg1 containSender:(id)arg2; +- (BOOL)_evaluateMemberOfGroupCriterion:(id)arg1; +- (BOOL)_evaluateAccountCriterion:(id)arg1; +- (BOOL)_evaluateAddressHistoryCriterion:(id)arg1; +- (BOOL)_evaluateFullNameCriterion:(id)arg1; +- (BOOL)_evaluateIsDigitallySignedCriterion:(id)arg1; +- (BOOL)_evaluateIsEncryptedCriterion:(id)arg1; +- (BOOL)_evaluateMessageTypeCriterion:(id)arg1; +- (BOOL)_evaluatePriorityIsNormalCriterion:(id)arg1; +- (BOOL)_evaluatePriorityIsHighCriterion:(id)arg1; +- (BOOL)_evaluatePriorityIsLowCriterion:(id)arg1; +- (BOOL)_evaluateJunkMailHeaders:(id)arg1; +- (BOOL)_evaluateJunkMailCriterion:(id)arg1; +- (BOOL)_evaluateAttachmentCriterion:(id)arg1; +- (BOOL)_evaluateCompoundCriterion:(id)arg1; +- (BOOL)_evaluateFlagCriterion:(id)arg1; +- (BOOL)_evaluateMailboxCriterion:(id)arg1; +- (BOOL)_evaluateSpecialMailboxCriterion:(id)arg1; +- (BOOL)_evaluateFlaggedStatusCriterion:(id)arg1; +- (BOOL)doesMessageSatisfyRuleEvaluationCriterion:(id)arg1; +- (BOOL)_evaluateMessage:(id)arg1; +- (BOOL)evaluateMessage:(id)arg1; +- (BOOL)hasExpression; +- (BOOL)allowsEmptyExpression; +- (BOOL)hasQualifier; +- (BOOL)isValid:(id *)arg1 options:(unsigned int)arg2; +- (BOOL)containsBodyCriterion; +- (id)emailAddressesForGroupCriterion; +- (id)criterionByExpandingGroup; +- (id)criterionByExpandingSpecialMailboxCriterion; +- (BOOL)_containsCriterion:(int)arg1; +- (BOOL)containsLastViewedDateCriterion; +- (BOOL)containsIncludeConversationsCriterion; +- (BOOL)containsMessageIsNotInATrashMailboxCriterion; +- (BOOL)containsRelativeDateCriteria; +- (BOOL)containsAddressBookCriteria; +@property(copy) NSString *groupUniqueID; // @synthesize groupUniqueID=_groupUniqueID; +@property int specialMailboxType; // @synthesize specialMailboxType=_specialMailboxType; +- (id)fixOnceWithExpandedSmartMailboxes:(id)arg1; +- (id)criterionByMergingBodyCriteria; +- (BOOL)hasNumberCriterion; +- (BOOL)isExpressibleInTigerSchema; +- (id)SQLExpressionWithContext:(CDStruct_c53ccb4e *)arg1 depth:(unsigned long long)arg2 enclosingSmartMailboxes:(id)arg3; +- (int)ruleType; +- (void)setRuleType:(int)arg1; +- (id)ruleHeader; +- (void)setRuleHeader:(id)arg1; +- (int)ruleQualifier; +- (void)setRuleQualifier:(int)arg1; +- (id)ruleExpression; +- (void)setRuleExpression:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MessageDetails.h b/MailHeaders/Lion/Message/MessageDetails.h new file mode 100644 index 00000000..01516d2d --- /dev/null +++ b/MailHeaders/Lion/Message/MessageDetails.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MessageDetails : NSObject +{ + long long _libraryID; + unsigned int _messageFlags; + unsigned int _uid; + unsigned int _encoding; + BOOL _isInvalid; +} + ++ (id)searchDetails:(id)arg1 forUid:(unsigned int)arg2 skippingUid:(unsigned int)arg3; +- (id)init; +- (id)description; +@property(nonatomic) BOOL isInvalid; // @synthesize isInvalid=_isInvalid; +@property(nonatomic) unsigned int encoding; // @synthesize encoding=_encoding; +@property(nonatomic) unsigned int uid; // @synthesize uid=_uid; +@property(nonatomic) unsigned int messageFlags; // @synthesize messageFlags=_messageFlags; +@property(nonatomic) long long libraryID; // @synthesize libraryID=_libraryID; + +@end + diff --git a/MailHeaders/Lion/Message/MessageFlags.h b/MailHeaders/Lion/Message/MessageFlags.h new file mode 100644 index 00000000..b9797c4c --- /dev/null +++ b/MailHeaders/Lion/Message/MessageFlags.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSCoding-Protocol.h" + +@interface MessageFlags : NSObject +{ + unsigned int realFlags; +} + +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +@property(nonatomic) unsigned int realFlags; // @synthesize realFlags; + +@end + diff --git a/MailHeaders/Lion/Message/MessageHTMLConverter.h b/MailHeaders/Lion/Message/MessageHTMLConverter.h new file mode 100644 index 00000000..9b415165 --- /dev/null +++ b/MailHeaders/Lion/Message/MessageHTMLConverter.h @@ -0,0 +1,54 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSPortDelegate-Protocol.h" + +@class NSData, NSPort, WebView; + +@interface MessageHTMLConverter : NSObject +{ + WebView *_webView; + NSPort *_replyPort; + unsigned int _sequenceNumber:31; + NSData *_resultData; + SEL _mainThreadSelector; + BOOL _didHandlePortMessage; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)attributedStringFromWebArchive:(id)arg1; +- (id)junkStringFromHTMLData:(id)arg1 textEncodingName:(id)arg2 context:(id)arg3; +- (id)htmlStringWithInlinedStyleFromHTMLData:(id)arg1 textEncodingName:(id)arg2; +- (void)handlePortMessage:(id)arg1; +- (void)_setMainThreadSelector:(SEL)arg1; +- (void)_stopLoadingWebView; +- (void)_setUpWebView; +- (void)_loadWebViewOnMainThreadFromData:(id)arg1 withTextEncodingName:(id)arg2 orFromWebArchive:(id)arg3; +- (id)_archivedAttributedStringFromLoadedDocument; +- (id)_archivedDataFromLoadedDocument; +- (id)_archivedHTMLStringWithInlinedStyleFromLoadedDocument; +- (void)webView:(id)arg1 didStartProvisionalLoadForFrame:(id)arg2; +- (void)webView:(id)arg1 locationChangeDone:(id)arg2 forDataSource:(id)arg3; +- (void)webView:(id)arg1 didFailProvisionalLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)webView:(id)arg1 didFailLoadWithError:(id)arg2 forFrame:(id)arg3; +- (id)webView:(id)arg1 identifierForInitialRequest:(id)arg2 fromDataSource:(id)arg3; +- (id)webView:(id)arg1 resource:(id)arg2 willSendRequest:(id)arg3 redirectResponse:(id)arg4 fromDataSource:(id)arg5; +- (void)webView:(id)arg1 decidePolicyForNavigationAction:(id)arg2 request:(id)arg3 frame:(id)arg4 decisionListener:(id)arg5; +@property(retain) NSData *resultData; // @synthesize resultData=_resultData; + +@end + diff --git a/MailHeaders/Lion/Message/MessageHeaders.h b/MailHeaders/Lion/Message/MessageHeaders.h new file mode 100644 index 00000000..b9e34ceb --- /dev/null +++ b/MailHeaders/Lion/Message/MessageHeaders.h @@ -0,0 +1,60 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSData; + +@interface MessageHeaders : NSObject +{ + NSData *_data; + id _sender; + unsigned int _preferredEncoding; +} + ++ (void)initialize; ++ (BOOL)isAddressHeaderKey:(id)arg1; ++ (const char *)cstringForKey:(id)arg1; ++ (id)localizedHeaders; ++ (id)localizedHeadersFromEnglishHeaders:(id)arg1; ++ (id)englishHeadersFromLocalizedHeaders:(id)arg1; +- (id)initWithHeaderData:(id)arg1 encoding:(unsigned int)arg2; +- (id)init; +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)mutableCopyWithZone:(struct _NSZone *)arg1; +- (id)htmlStringShowingHeaderDetailLevel:(long long)arg1 useBold:(BOOL)arg2 useGray:(BOOL)arg3; +- (id)_htmlHeaderKey:(id)arg1 useBold:(BOOL)arg2 useGray:(BOOL)arg3; +- (id)_htmlValueWithKey:(id)arg1 value:(id)arg2 useBold:(BOOL)arg3; +- (id)attributedStringShowingHeaderDetailLevel:(long long)arg1; +- (id)headersDictionaryWithHeaderDetailLevel:(long long)arg1 forMessageType:(BOOL)arg2; +- (id)headerData; +- (unsigned int)preferredEncoding; +- (void)setPreferredEncoding:(unsigned int)arg1; +- (id)_sender; +- (void)_resetSender; +- (id)allHeaderKeys; +- (id)_capitalizedKeyForKey:(id)arg1; +- (void)_setCapitalizedKey:(id)arg1 forKey:(id)arg2; +- (BOOL)hasHeaderForKey:(id)arg1; +- (id)headersForKey:(id)arg1; +- (id)_headersForKey:(id)arg1; +- (id)firstHeaderForKey:(id)arg1; +- (id)_newHeaderValueForKey:(id)arg1 offset:(unsigned long long *)arg2; +- (id)addressListForKey:(id)arg1; +- (id)firstAddressForKey:(id)arg1; +- (id)_firstAddressForKey:(id)arg1 sender:(id)arg2; +- (id)_newDecodedAddressFromDataInRange:(struct _NSRange)arg1 sender:(id)arg2 consumedLength:(unsigned long long *)arg3; +- (id)isoLatin1CharsetHint; +- (id)mailVersion; +- (BOOL)messageIsFromMicrosoft; +- (id)encodedHeadersIncludingFromSpace:(BOOL)arg1; +- (void)appendHeaderData:(id)arg1 recipients:(id)arg2; +- (void)appendHeaderData:(id)arg1 recipients:(id)arg2 recipientsByHeaderKey:(id)arg3 expandABGroups:(BOOL)arg4 includeComment:(BOOL)arg5; +- (void)_appendAddressList:(id)arg1 toData:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/MessageInvocation.h b/MailHeaders/Lion/Message/MessageInvocation.h new file mode 100644 index 00000000..191679fc --- /dev/null +++ b/MailHeaders/Lion/Message/MessageInvocation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSInvocation.h" + +@interface MessageInvocation : NSInvocation +{ + unsigned char _priority; +} + ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 priority:(unsigned char)arg3; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object:(id)arg3 priority:(unsigned char)arg4; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 priority:(unsigned char)arg5; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 priority:(unsigned char)arg6; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 object4:(id)arg6 priority:(unsigned char)arg7; +@property unsigned char priority; // @synthesize priority=_priority; + +@end + diff --git a/MailHeaders/Lion/Message/MessageRouter.h b/MailHeaders/Lion/Message/MessageRouter.h new file mode 100644 index 00000000..8609bc6a --- /dev/null +++ b/MailHeaders/Lion/Message/MessageRouter.h @@ -0,0 +1,112 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "SyncableDataOwner-Protocol.h" + +@class MessageStore, NSConditionLock, NSLock, NSMutableArray; + +@interface MessageRouter : NSObject +{ + MessageStore *_store; + NSMutableArray *_queuedMessages; + NSConditionLock *_queuedMessagesFull; + NSConditionLock *_queuedMessagesEmpty; + NSLock *_queuedMessagesRouting; + unsigned long long _bytesInQueue; + unsigned long long _queueSize; + BOOL _routingThreadShouldQuit; + unsigned long long _numMessagesRoutedSoFar; + unsigned long long _numMessagesToBeRouted; + BOOL _isUserAction; +} + ++ (void)initialize; ++ (id)writeRulesTimer; ++ (void)setWriteRulesTimer:(id)arg1; ++ (void)scheduleWriteRules; ++ (void)_unScheduleWriteRules; ++ (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; ++ (void)_updateICalRule:(BOOL)arg1; ++ (void)_setupAddInvitationDefault; ++ (void)_iCalSettingChangedFromICal:(id)arg1; ++ (BOOL)_hasColorRules; ++ (long long)colorChangeCounter; ++ (void)setColorChangeCounter:(long long)arg1; ++ (void)enqueueColorRulesDidChange; ++ (BOOL)_colorRuleExistsAfterRule:(id)arg1; ++ (BOOL)colorsUpdateDynamically; ++ (void)ruleAffectingColorsDidChange:(id)arg1; ++ (void)ruleDidChange:(id)arg1; ++ (void)mailboxWillBeRenamedOrInvalidated; ++ (void)_mailboxBecameInvalid:(id)arg1; ++ (void)_accountWillBeDeleted:(id)arg1; ++ (void)_mailboxWasRenamed:(id)arg1; ++ (id)defaultAppleEmailAddresses; ++ (id)_defaultSortRules; ++ (id)iCalRule; ++ (BOOL)_setICalRule:(id)arg1; ++ (id)_sortRulesFromDictionaryRepresentations:(id)arg1 junkRule:(id *)arg2 iCalRule:(id *)arg3; ++ (id)_sortRuleDictionaryRepresentations; ++ (void)_setupSortRules; ++ (id)_readRulesFromDiskOldStyle; ++ (id)_readRulesFromDisk; ++ (void)_writeRulesToDiskInBackground; ++ (void)_synchronouslyWriteRulesToDisk; ++ (id)rules; ++ (unsigned long long)numberOfRules; ++ (id)ruleAtIndex:(unsigned long long)arg1; ++ (void)removeRuleAtIndex:(unsigned long long)arg1; ++ (void)insertRule:(id)arg1 atIndex:(unsigned long long)arg2; ++ (void)addRule:(id)arg1; ++ (void)removeRule:(id)arg1; ++ (void)tryToReconnectAutoDeactivatedRules; ++ (void)loadDestinationMailboxes; ++ (void)_mailboxListingChanged:(id)arg1; ++ (id)headersRequiredForRouting; ++ (void)headersRequiredForRoutingDidChange; ++ (void)putRulesThatWantsToHandleMessage:(id)arg1 intoArray:(id)arg2 colorRulesOnly:(BOOL)arg3; ++ (id)colorForMessage:(id)arg1 highlightTextUsingColor:(char *)arg2; ++ (long long)junkMailBehavior; ++ (void)setJunkMailBehavior:(long long)arg1; ++ (void)evaluateJunkMailBehaviorFromRules; ++ (void)_ensureJunkRuleBehaviorMatchesPreference; ++ (void)reevaluateJunkMessagesInMailboxes:(id)arg1; ++ (id)_junkMailRuleForBehavior:(long long)arg1 abCriterion:(BOOL)arg2 ahCriterion:(BOOL)arg3 fnCriterion:(BOOL)arg4; ++ (id)junkMailRule; ++ (void)setJunkMailRule:(id)arg1; ++ (id)userJunkMailRule; ++ (id)defaultJunkMailRule; ++ (BOOL)junkMailEvaluationAfterRules; ++ (void)setJunkMailEvaluationAfterRules:(BOOL)arg1; ++ (BOOL)junkMailTrustHeaders; ++ (void)setJunkMailTrustHeaders:(BOOL)arg1; ++ (id)junkMailHeaderFlags; ++ (void)_applyRulesToMailboxUids:(id)arg1; ++ (void)applyRulesAsynchronouslyToMailboxUids:(id)arg1; ++ (BOOL)addInvitationsToICalAutomatically; ++ (BOOL)_addICalRule; ++ (void)setAddInvitationsToICalAutomatically:(BOOL)arg1; ++ (void)addInvitationsToICalFromMessages:(id)arg1; ++ (void)_installNewRulesFromPlist:(id)arg1; ++ (void)saveRulesIfNeeded; +- (BOOL)_routeMessagesIndividually; +- (id)routeMessages:(id)arg1 fromStores:(id)arg2; +- (void)asynchronouslyRouteMessages:(id)arg1; +- (void)_routeQueuedMessages; +- (void)waitForRoutingToFinish; +- (void)setStore:(id)arg1; +- (void)setEstimatedNumberOfMessagesToRoute:(unsigned long long)arg1; +- (void)dealloc; +- (void)finalize; +- (void)setIsUserAction:(BOOL)arg1; +- (BOOL)dataWillBeSyncedVersion:(id *)arg1 data:(id *)arg2 type:(id)arg3; +- (BOOL)dataWasSyncedVersion:(id)arg1 newData:(id)arg2 acceptedChanges:(id)arg3; +- (id)_rulesArrayWithJunkAndICalRules:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MessageRouterUtilities.h b/MailHeaders/Lion/Message/MessageRouterUtilities.h new file mode 100644 index 00000000..64fbf9fe --- /dev/null +++ b/MailHeaders/Lion/Message/MessageRouterUtilities.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MessageRouterUtilities : NSObject +{ +} + ++ (id)sortRulesPath; ++ (id)oldSortRulesPath; ++ (BOOL)shouldSpotlightIndexJunkLevel; ++ (void)resetShouldSpotlightIndexJunkLevel; + +@end + diff --git a/MailHeaders/Lion/Message/MessageRule.h b/MailHeaders/Lion/Message/MessageRule.h new file mode 100644 index 00000000..cd00c04d --- /dev/null +++ b/MailHeaders/Lion/Message/MessageRule.h @@ -0,0 +1,170 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MFChanging-Protocol.h" +@class MailboxUid, NSArray, NSColor, NSDictionary, NSMutableArray, NSNumber, NSString; + +@interface MessageRule : NSObject +{ + NSString *_uniqueId; + NSString *_ruleName; + NSDictionary *_otherInfo; + NSNumber *_isActiveSyncState; + NSMutableArray *_criteria; + MailboxUid *_copyDestinationMailbox; + NSString *_copyDestinationMailboxURL; + MailboxUid *_destinationMailbox; + NSString *_destinationMailboxURL; + NSColor *_color; + NSString *_soundPath; + NSString *_appleScriptPath; + NSArray *_recipients; + NSString *_responseMessage; + int _autoResponseType; + unsigned int _flags; + unsigned short _version; + BOOL _isJunkMailRule; + BOOL _isICalRule; + BOOL _didChange; + BOOL _isChanging; + unsigned int _isActive:1; + unsigned int _ruleWasAutoDeactivated:1; + unsigned int _allCriteriaMustBeSatisfied:1; + unsigned int _shouldTransferMessage:1; + unsigned int _shouldCopyMessage:1; + unsigned int _shouldStopEvaluatingRules:1; + unsigned int _highlightTextUsingColor:1; + unsigned int _shouldNotifyUser:1; + unsigned int _addInvitationAttachmentToICal:1; +} + ++ (void)initialize; ++ (id)appleScriptLock; +- (void)dealloc; +- (void)finalize; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)description; +- (BOOL)isEqual:(id)arg1; +- (BOOL)isEquivalentExceptForTitleAndIDs:(id)arg1; +- (id)uniqueId; +- (void)setUniqueId:(id)arg1; +- (id)init; +- (id)initWithRule:(id)arg1; +- (id)mailboxURLForMailboxUid:(id)arg1; +- (id)mailboxPathForMailboxURL:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)initWithDictionaryRepresentation:(id)arg1; +- (id)dictionaryRepresentation; +- (void)beginChanging; +- (BOOL)endChanging:(BOOL)arg1; +- (BOOL)endChanging:(BOOL)arg1 immediately:(BOOL)arg2; +- (void)_updateDefaultAppleEmailAddressRule; +- (void)_appendMessages:(id)arg1 fromSourceMailbox:(id)arg2 toDestinationMailbox:(id)arg3 destinationStores:(id)arg4 rejectedMessages:(id)arg5 messagesToBeDeleted:(id)arg6; +- (void)performActionsOnMessages:(id)arg1 destinationStores:(id)arg2 rejectedMessages:(id)arg3 messagesToBeDeleted:(id)arg4; +- (id)_performAutoResponseActionOnMessage:(id)arg1 encrypt:(BOOL)arg2 includeOrignalMessageText:(BOOL)arg3; +- (void)_performAutoResponseActionOnMessages:(id)arg1; +- (void)_performAppleScriptActionWithMessages:(id)arg1; +- (void)_performAddInvitationAttachmentToICalActionOnMessages:(id)arg1; +- (void)addHeadersRequiredForRoutingToArray:(id)arg1; +- (BOOL)doesMessageSatisfyCriteria:(id)arg1; +- (BOOL)isValid:(id *)arg1 options:(unsigned int)arg2; +- (void)performPostSyncingValidation; +- (id)ruleName; +- (void)setRuleName:(id)arg1; +- (unsigned short)version; +- (void)setVersion; +- (void)clearVersion; +- (BOOL)isTerminalAction; +@property(nonatomic) BOOL isJunkMailRule; +- (BOOL)hasJunkMailCriterion; +@property(nonatomic) BOOL isActive; +- (BOOL)isActiveSyncState; +- (void)setIsActiveSyncState:(BOOL)arg1; +- (BOOL)allCriteriaMustBeSatisfied; +- (void)setAllCriteriaMustBeSatisfied:(BOOL)arg1; +- (id)criteria; +- (void)setCriteria:(id)arg1; +- (BOOL)shouldTransferMessage; +- (void)setShouldTransferMessage:(BOOL)arg1; +- (BOOL)shouldCopyMessage; +- (void)setShouldCopyMessage:(BOOL)arg1; +- (id)_destinationMailbox:(id)arg1 withURL:(id)arg2 setUsingSelector:(SEL)arg3 createIfNeeded:(BOOL)arg4; +- (void)_setDestinationIvar:(id *)arg1 toDestinationMailbox:(id)arg2 destinationURLIvar:(id *)arg3; +- (id)_destinationMailboxCreateIfNeeded:(BOOL)arg1; +- (id)destinationMailbox; +- (void)setDestinationMailbox:(id)arg1; +- (id)_copyDestinationMailboxCreateIfNeeded:(BOOL)arg1; +- (id)copyDestinationMailbox; +- (void)setCopyDestinationMailbox:(id)arg1; +- (id)_tryToGetMailboxUidForURL:(id)arg1; +- (void)tryToReconnectDestinationIfNeeded; +- (BOOL)invalidateDestinationMailboxesForURLString:(id)arg1; +- (id)appleScriptDestinationMailbox; +- (id)appleScriptCopyDestinationMailbox; +- (void)_evaluateIfNeeded:(id)arg1 andSetUsingSelector:(SEL)arg2; +- (void)setAppleScriptCopyDestinationMailbox:(id)arg1; +- (void)setAppleScriptDestinationMailbox:(id)arg1; +- (unsigned int)flagsToApply; +- (void)setFlagsToApply:(unsigned int)arg1; +- (id)appleScriptPath; +- (void)setAppleScriptPath:(id)arg1; +- (id)color; +- (void)setColor:(id)arg1; +- (BOOL)highlightTextUsingColor; +- (void)setHighlightTextUsingColor:(BOOL)arg1; +- (BOOL)affectsColorEvaluation; +- (int)autoResponseType; +- (void)setAutoResponseType:(int)arg1; +- (id)autoResponseRecipients; +- (void)setAutoResponseRecipients:(id)arg1; +- (id)responseMessage; +- (void)handleDidChange; +- (void)setResponseMessage:(id)arg1; +- (id)soundPath; +- (void)setSoundPath:(id)arg1; +- (BOOL)shouldStopEvaluatingRules; +- (void)setShouldStopEvaluatingRules:(BOOL)arg1; +- (BOOL)shouldNotifyUser; +- (void)setShouldNotifyUser:(BOOL)arg1; +- (BOOL)addInvitationAttachmentToICal; +- (void)setAddInvitationAttachmentToICal:(BOOL)arg1; +@property(nonatomic) BOOL isICalRule; +- (void)updateToNewestVersion; +- (id)objectSpecifier; +- (void)updateIsActive; +- (int)actionColorMessage; +- (void)setActionColorMessage:(int)arg1; +- (int)highlightColorValue:(id)arg1; +- (BOOL)actionDeleteMessage; +- (void)setActionDeleteMessage:(BOOL)arg1; +- (id)actionForwardToAddress; +- (void)setActionForwardToAddress:(id)arg1; +- (id)actionForwardText; +- (void)setActionForwardText:(id)arg1; +- (BOOL)actionMarkAsFlagged; +- (void)setActionMarkAsFlagged:(BOOL)arg1; +- (long long)actionMarkAsFlaggedStatus; +- (void)setActionMarkAsFlaggedStatus:(long long)arg1; +- (BOOL)actionMarkAsRead; +- (void)setActionMarkAsRead:(BOOL)arg1; +- (id)actionPlaySound; +- (void)setActionPlaySound:(id)arg1; +- (id)actionRedirectToAddress; +- (void)setActionRedirectToAddress:(id)arg1; +- (id)actionReplyText; +- (void)setActionReplyText:(id)arg1; +- (id)actionRunApplescript; +- (void)setActionRunApplescript:(id)arg1; +- (id)ruleDescription; +- (void)setRuleDescription:(id)arg1; +- (void)insertInCriteria:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInCriteria:(id)arg1; +- (void)removeFromCriteriaAtIndex:(unsigned long long)arg1; +- (void)setAddress:(id)arg1 forResponseType:(int)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/MessageRuleCriterion.h b/MailHeaders/Lion/Message/MessageRuleCriterion.h new file mode 100644 index 00000000..04438b61 --- /dev/null +++ b/MailHeaders/Lion/Message/MessageRuleCriterion.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MessageRule; + +@interface MessageRuleCriterion : MessageCriterion +{ + MessageRule *_rule; +} + ++ (id)noJunkCriterion; ++ (id)noTrashCriterion; ++ (id)noSentCriterion; ++ (id)conversationsCriterion; +- (void)dealloc; +- (void)setRuleType:(int)arg1; +- (void)setRuleQualifier:(int)arg1; +- (void)setRuleExpression:(id)arg1; +- (void)setMessageRule:(id)arg1; +- (void)setCriterionIdentifier:(id)arg1; +- (id)objectSpecifier; +- (BOOL)performPostSyncingValidation; + +@end + diff --git a/MailHeaders/Lion/Message/MessageSortingInformation.h b/MailHeaders/Lion/Message/MessageSortingInformation.h new file mode 100644 index 00000000..00a143ba --- /dev/null +++ b/MailHeaders/Lion/Message/MessageSortingInformation.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSDictionary; + +@interface MessageSortingInformation : NSObject +{ + BOOL _isSortedAscending; + BOOL _skipAutomaticSecondarySort; + id _sortContext; + NSDictionary *_sortValues; +} + +- (void)dealloc; +@property(copy, nonatomic) NSDictionary *sortValues; // @synthesize sortValues=_sortValues; +@property(retain, nonatomic) id sortContext; // @synthesize sortContext=_sortContext; +@property(nonatomic) BOOL skipAutomaticSecondarySort; // @synthesize skipAutomaticSecondarySort=_skipAutomaticSecondarySort; +@property(nonatomic) BOOL isSortedAscending; // @synthesize isSortedAscending=_isSortedAscending; + +@end + diff --git a/MailHeaders/Lion/Message/MessageStore.h b/MailHeaders/Lion/Message/MessageStore.h new file mode 100644 index 00000000..f0d266a6 --- /dev/null +++ b/MailHeaders/Lion/Message/MessageStore.h @@ -0,0 +1,215 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "SafeObserver.h" + +@class ActivityMonitor, MailAccount, MailboxUid, NSCache, NSMutableArray, NSMutableDictionary, NSMutableSet, NSTimer; + +@interface MessageStore : SafeObserver +{ + BOOL _isReadOnly; + BOOL _hasUnsavedChangesToMessageData; + BOOL _haveOpenLockFile; + BOOL _forceInvalidation; + BOOL _isWritingChangesToDisk; + BOOL _isTryingToClose; + BOOL _compactOnClose; + MailboxUid *_mailboxUid; + MailAccount *_account; + NSMutableArray *_allMessages; + id _cacheLock; + NSCache *_headerDataCache; + NSCache *_headerCache; + NSCache *_bodyDataCache; + NSCache *_bodyCache; + NSMutableSet *_uniqueStrings; + int _storeState; + NSTimer *_timer; + ActivityMonitor *_openMonitor; + NSMutableDictionary *_fetchLockMap; +} + ++ (void)initialize; ++ (id)_storeCacheMapTable; ++ (unsigned long long)numberOfCurrentlyOpenStores; ++ (id)descriptionOfOpenStores; ++ (id)_storeCreationMarker; ++ (id)_copyRawAvailableStoreForUid:(id)arg1 wantsCreate:(BOOL)arg2 shouldCreate:(char *)arg3; ++ (id)currentlyAvailableStoreForUid:(id)arg1; ++ (id)currentlyAvailableStoresForAccount:(id)arg1; ++ (void)registerAvailableStore:(id)arg1 forUid:(id)arg2; ++ (void)removeStoreFromCache:(id)arg1; ++ (BOOL)createEmptyStoreIfNeededForPath:(id)arg1 notIndexable:(BOOL)arg2; ++ (BOOL)createEmptyStoreForPath:(id)arg1; ++ (BOOL)storeAtPathIsWritable:(id)arg1; ++ (BOOL)cheapStoreAtPathIsEmpty:(id)arg1; ++ (id)succesfulMessagesFromMessages:(id)arg1 unsuccessfulOnes:(id)arg2; ++ (int)copyMessages:(id)arg1 toMailboxUid:(id)arg2 shouldDelete:(BOOL)arg3; ++ (void)_autosaveMessageStore:(void *)arg1; ++ (void)deleteUnflaggedEntriesCreatedBeforeDate:(id)arg1; +- (void)queueSaveChangesInvocation; +- (id)willDealloc; +- (id)init; +- (id)initWithMailboxUid:(id)arg1 readOnly:(BOOL)arg2; +- (void)_messageStoreCommonInit; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (void)finalize; +- (void)openAsynchronously; +- (void)openAsynchronouslyWithOptions:(unsigned int)arg1; +- (void)openSynchronously; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (void)updateMetadataAsynchronously; +- (void)updateMetadata; +- (void)cleanupAsynchronously; +- (void)cleanupSynchronously; +- (void)willOpen; +- (void)didOpenWithMessages:(id)arg1; +- (void)cancelOpen; +- (void)writeUpdatedMessageDataToDisk; +- (void)saveChanges; +- (void)invalidateSavingChanges:(BOOL)arg1; +- (id)account; +- (id)mailboxUid; +- (id)allMailboxUidRepresentations; +- (BOOL)isOpened; +- (id)displayName; +- (const char *)displayNameForLogging; +- (id)description; +- (BOOL)isTrash; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (void)structureDidChange; +- (void)messagesWereAdded:(id)arg1; +- (void)messagesWereCompacted:(id)arg1; +- (void)messagesWereUpdated:(id)arg1; +- (unsigned long long)totalCount; +- (id)copyOfAllMessages; +- (id)mutableCopyOfAllMessages; +- (id)copyOfAllMessagesWithOptions:(unsigned int)arg1; +- (void)addMessagesToAllMessages:(id)arg1; +- (id)_defaultRouterDestination; +- (id)routeMessages:(id)arg1; +- (id)finishRoutingMessages:(id)arg1 routed:(id)arg2; +- (id)routeMessages:(id)arg1 isUserAction:(BOOL)arg2; +- (BOOL)canRebuild; +- (void)rebuildTableOfContentsAsynchronously; +- (BOOL)canCompact; +- (void)doCompact; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)undeleteMessages:(id)arg1; +- (void)deleteLastMessageWithHeaders:(id)arg1 compactWhenDone:(BOOL)arg2; +- (BOOL)allowsAppend; +- (BOOL)allowsOverwrite; +- (BOOL)allowsDeleteInPlace; +- (int)undoAppendOfMessageIDs:(id)arg1; +- (void)finishCopyOfMessages:(id)arg1 fromStore:(id)arg2 originalsWereDeleted:(BOOL)arg3; +- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; +- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6 error:(id *)arg7; +- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6; +- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5; +- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 forMove:(BOOL)arg5; +- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4; +- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3; +- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2; +- (id)recentMessageWithValue:(id)arg1 forHeader:(id)arg2; +- (id)messageForMessageID:(id)arg1; +- (unsigned long long)_numberOfMessagesToCache; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headerDataForMessage:(id)arg1 allowPartial:(BOOL)arg2; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)bodyDataForMessage:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (void)updateBodyFlagsForMessage:(id)arg1 body:(id)arg2; +- (id)headersForMessage:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)uniquedString:(id)arg1; +- (id)colorForMessage:(id)arg1; +- (BOOL)supportsSnippets; +- (id)snippetsForMessages:(id)arg1; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)setPrimitiveFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setLocalFlagsForMessages:(id)arg1; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (void)startSynchronization; +- (id)_getSerialNumberString; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (void)updateNumberOfAttachmentsForMessages:(id)arg1; +- (void)updateNumberOfAttachmentsAndColorsForMessages:(id)arg1; +- (void)updateMessageColorsSynchronouslyForMessages:(id)arg1; +- (id)async_setJunkMailLevel:(int)arg1 forMessages:(id)arg2; +- (id)async_setJunkMailLevel:(int)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3; +- (id)async_setJunkMailLevel:(int)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)status; +- (void)fetchSynchronously; +- (void)fetchSynchronouslyForKnownChanges; +- (BOOL)setPreferredEncoding:(unsigned int)arg1 forMessage:(id)arg2; +- (void)suggestSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (id)sortOrder; +- (BOOL)isSortedAscending; +- (void)invalidateMessage:(id)arg1; +- (void)invalidateMessages:(id)arg1; +- (void)_cancelAutosave; +- (void)_setNeedsAutosave; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchBodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchBodyForMessage:(id)arg1 updateFlags:(BOOL)arg2; +- (BOOL)_shouldCallCompactWhenClosing; +- (BOOL)_isReadyToBeInvalidated; +- (BOOL)setStoreState:(int)arg1 fromState:(int)arg2; +- (int)storeState; +- (void)_invalidate; +- (void)_invalidateInBackground; +- (id)_lockFilePath; +- (BOOL)_acquireLockFile; +- (void)_removeLockFile; +- (void)flushAllCaches; +- (void)_flushAllMessageData; +- (void)_rebuildTableOfContentsSynchronously; +- (id)_setOrGetBody:(id)arg1 forMessage:(id)arg2 updateFlags:(BOOL)arg3; +- (void)_invalidateObjectCachesForKey:(id)arg1; +- (id)_setOrGetValue:(id)arg1 forKey:(id)arg2 inCache:(id *)arg3; +- (id)_cachedBodyForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedHeadersForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedBodyDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedHeaderDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (void)updateMessageColorsSynchronouslyForMessages:(id)arg1 postingNotification:(BOOL)arg2; +- (void)updateMessages:(id)arg1 updateColor:(BOOL)arg2 updateNumberOfAttachments:(BOOL)arg3; +- (void)_setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; +- (void)_setFlagsAndColorForMessages:(id)arg1; +- (void)messagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3; +- (BOOL)_updateFlagForMessage:(id)arg1 key:(id)arg2 value:(BOOL)arg3; +- (BOOL)_updateFlagColor:(BOOL)arg1 forMessage:(id)arg2; +@property BOOL forceInvalidation; // @synthesize forceInvalidation=_forceInvalidation; +@property BOOL hasUnsavedChangesToMessageData; // @synthesize hasUnsavedChangesToMessageData=_hasUnsavedChangesToMessageData; +@property(retain) ActivityMonitor *openMonitor; // @synthesize openMonitor=_openMonitor; +@property BOOL isReadOnly; // @synthesize isReadOnly=_isReadOnly; +- (id)objectSpecifier; +- (id)objectSpecifierForMessage:(id)arg1; +- (void)setPermissionRequestState:(int)arg1 forMessage:(id)arg2; +- (void)updateEntries:(id)arg1 fromFeed:(id)arg2; +- (void)changeFlagsForEntries:(id)arg1 fromFeed:(id)arg2; +- (void)updateStatusFromFeed:(id)arg1 error:(id)arg2 errorMessage:(id)arg3; + +@end + diff --git a/MailHeaders/Lion/Message/MessageStringRenderContext.h b/MailHeaders/Lion/Message/MessageStringRenderContext.h new file mode 100644 index 00000000..f9acbe9f --- /dev/null +++ b/MailHeaders/Lion/Message/MessageStringRenderContext.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class JunkRecorder, NSMutableString, NSSet; + +@interface MessageStringRenderContext : NSObject +{ + NSSet *_URLs; + NSSet *_imageURLs; + JunkRecorder *_junkRecorder; + NSMutableString *_buffer; + long long _imageCount; + long long _characterCount; + long long _mode; + BOOL _updateBodyFlags; +} + +- (id)initForMode:(long long)arg1; +- (id)init; +- (void)dealloc; +- (id)renderString; +@property(retain) NSMutableString *buffer; // @synthesize buffer=_buffer; +@property BOOL updateBodyFlags; // @synthesize updateBodyFlags=_updateBodyFlags; +@property long long mode; // @synthesize mode=_mode; +@property(retain) NSSet *imageURLs; // @synthesize imageURLs=_imageURLs; +@property(retain) NSSet *URLs; // @synthesize URLs=_URLs; +@property long long characterCount; // @synthesize characterCount=_characterCount; +@property long long imageCount; // @synthesize imageCount=_imageCount; +@property(retain) JunkRecorder *junkRecorder; // @synthesize junkRecorder=_junkRecorder; + +@end + diff --git a/MailHeaders/Lion/Message/MessageStringUniquer.h b/MailHeaders/Lion/Message/MessageStringUniquer.h new file mode 100644 index 00000000..bddca6dc --- /dev/null +++ b/MailHeaders/Lion/Message/MessageStringUniquer.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMapTable; + +@interface MessageStringUniquer : NSObject +{ + NSMapTable *_stringsTable; +} + +- (id)init; +- (id)copyUniquedStringForIndex:(long long)arg1; +- (void)setUniquedString:(id)arg1 forIndex:(long long)arg2; +- (id)description; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Lion/Message/MessageThread.h b/MailHeaders/Lion/Message/MessageThread.h new file mode 100644 index 00000000..1e9ec5d7 --- /dev/null +++ b/MailHeaders/Lion/Message/MessageThread.h @@ -0,0 +1,106 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableArray, NSMutableDictionary, NSString; + +@interface MessageThread : Message +{ + NSMutableArray *_filteredMessages; + NSString *_formattedUnreadMessageCount; + NSMutableDictionary *_pendingChanges; + Message *_newestMessage; + Message *_oldestMessage; + Message *_realNewestMessage; + Message *_oldestUnreadMessage; + Message *_newestReceivedMessage; + Message *_newestSentMessage; + Message *_messageWithHighestLibraryID; + Message *_messageWithHighestRemoteID; + Message *_messageWithHighestNumberWithinStores; + unsigned int _unreadMessageCount; + unsigned int _flaggedMessageCount; + unsigned int _junkMessageCount; + unsigned int _attachmentCount; + BOOL _updateSubjectEtcUponClosing; + BOOL _isThreadOpen; + BOOL _showDateInSubject; + BOOL _containsOnlyNotes; +} + ++ (id)messagesByExpandingThreads:(id)arg1; ++ (id)_storeForMailbox:(id)arg1 fromStores:(id)arg2 cache:(id)arg3; ++ (id)findNewestMessageInMessages:(id)arg1; ++ (id)findNewestReceivedMessageInMessages:(id)arg1; ++ (id)findNewestSentMessageInMessages:(id)arg1; ++ (id)findOldestUnreadMessageInMessages:(id)arg1; ++ (id)findMessageWithHighestLibraryIDInMessages:(id)arg1; ++ (id)findMessageWithHighestRemoteIDInMessages:(id)arg1; +- (id)initWithMessages:(id)arg1; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)appliedFlagColors; +@property(readonly) long long conversationID; +@property(readonly) unsigned int options; +- (id)filteredMessages; +- (BOOL)containsAnyMessages:(id)arg1; +- (void)addMessages:(id)arg1 usingComparator:(id)arg2 makePending:(void)arg3; +- (void)deleteMessages:(id)arg1 makePending:(BOOL)arg2; +- (BOOL)commitPendingChangesForSeriesID:(id)arg1; +- (void)discardPendingChangesForSeriesID:(id)arg1; +- (BOOL)flagsHaveChanged; +- (void)updateSubjectEtc:(BOOL)arg1; +- (id)formattedUnreadMessageCount; +- (unsigned long long)numberOfFilteredMessages; +- (unsigned long long)numberOfPendingFilteredMessages; +- (id)pendingFilteredMessages; +- (unsigned long long)numberOfUnreadMessages; +- (void)setNewestMessage:(id)arg1; +- (void)setNewestReceivedMessage:(id)arg1; +- (void)setNewestSentMessage:(id)arg1; +- (void)setOldestMessage:(id)arg1; +- (id)to; +- (id)subject; +- (double)dateReceivedAsTimeIntervalSince1970; +- (double)dateSentAsTimeIntervalSince1970; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (id)sender; +- (id)senderAddressComment; +- (id)messageID; +- (id)messageStore; +- (id)messageBody; +- (unsigned long long)messageSize; +- (unsigned long long)numberOfAttachments; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (BOOL)isThread; +- (BOOL)isOpen; +- (void)setIsOpen:(BOOL)arg1; +- (BOOL)willBeDeletedIfMessagesAreDeleted:(id)arg1; +- (void)sortMessagesUsingComparator:(id)arg1 makePending:(void)arg2; +- (void)invertOrderOfMessagesMakePending:(BOOL)arg1; +- (id)oldestMessage; +- (id)newestMessage; +- (id)newestSentMessage; +- (id)oldestUnreadMessage; +- (id)oldestUnreadOrNewestMessage; +- (id)copyOldestUnreadOrNewestMessage; +- (void)_setJunkFlags; +- (id)_unlockedMessageWithHighestLibraryID; +- (id)messageWithHighestLibraryID; +- (id)_unlockedMessageWithHighestRemoteID; +- (id)messageWithHighestRemoteID; +- (unsigned int)uidForSort; +- (id)messageWithHighestNumberWithinStores:(id)arg1; +- (id)mailbox; +- (id)preferredEmailAddressToReplyWith; +@property BOOL containsOnlyNotes; // @synthesize containsOnlyNotes=_containsOnlyNotes; +@property BOOL showDateInSubject; // @synthesize showDateInSubject=_showDateInSubject; +@property BOOL isThreadOpen; // @synthesize isThreadOpen=_isThreadOpen; + +@end + diff --git a/MailHeaders/Lion/Message/MessageTracer.h b/MailHeaders/Lion/Message/MessageTracer.h new file mode 100644 index 00000000..f1fa9204 --- /dev/null +++ b/MailHeaders/Lion/Message/MessageTracer.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MessageTracer : NSObject +{ +} + ++ (void)messageTraceOperationError:(id)arg1 domainPrefix:(id)arg2 domainSuffix:(id)arg3 uuid:(id)arg4 duration:(double)arg5 count:(unsigned long long)arg6 size:(unsigned long long)arg7; ++ (void)messageTraceDomainPrefix:(id)arg1 domainSuffix:(id)arg2 signature:(id)arg3 signature2:(id)arg4 extraStatus:(id)arg5; ++ (void)messageTraceResult:(const char *)arg1 count:(unsigned long long)arg2 domainPrefix:(id)arg3 domainSuffix:(id)arg4 signature:(id)arg5 extraStatus:(id)arg6; ++ (void)messageTraceResult:(const char *)arg1 domain:(id)arg2 uuid:(id)arg3 signature:(id)arg4 extraStatus:(id)arg5; ++ (void)messageTraceResult:(const char *)arg1 domain:(id)arg2 signature:(id)arg3 extraStatus:(id)arg4; ++ (void)messageTraceResult:(const char *)arg1 domain:(id)arg2 signature:(id)arg3; + +@end + diff --git a/MailHeaders/Lion/Message/MessageURLProtocol.h b/MailHeaders/Lion/Message/MessageURLProtocol.h new file mode 100644 index 00000000..edc1a9a1 --- /dev/null +++ b/MailHeaders/Lion/Message/MessageURLProtocol.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSURLProtocol.h" + +@interface MessageURLProtocol : NSURLProtocol +{ +} + ++ (void)initialize; ++ (BOOL)canInitWithRequest:(id)arg1; ++ (id)canonicalRequestForRequest:(id)arg1; ++ (BOOL)requestIsCacheEquivalent:(id)arg1 toRequest:(id)arg2; +- (void)startLoading; +- (void)stopLoading; + +@end + diff --git a/MailHeaders/Lion/Message/MessageWriter.h b/MailHeaders/Lion/Message/MessageWriter.h new file mode 100644 index 00000000..68659337 --- /dev/null +++ b/MailHeaders/Lion/Message/MessageWriter.h @@ -0,0 +1,61 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface MessageWriter : NSObject +{ + unsigned int _preferredEncoding; + unsigned int _encodingHint; + BOOL _shouldMarkNonresizableAttachmentData; + unsigned int _createsMimeAlternatives:1; + unsigned int _createsRichText:1; + unsigned int _createsPlainTextOnly:1; + unsigned int _allows8BitMimeParts:1; + unsigned int _allowsBinaryMimeParts:1; + unsigned int _allowsAppleDoubleAttachments:1; + unsigned int _signsOutput:1; + unsigned int _encryptsOutput:1; + unsigned int _shouldConvertCompositeImages:1; +} + ++ (id)domainHintForResentIDFromHeaders:(id)arg1 hasResentFromHeaders:(char *)arg2; +- (id)init; +- (id)newDataForAttributedString:(id)arg1; +- (void)appendDataForMimePart:(id)arg1 toData:(id)arg2 withPartData:(id)arg3; +- (id)newBounceMessageForMessage:(id)arg1; +- (id)newMessageByRemovingAttachmentsFromMessage:(id)arg1; +- (id)newMessageFromMessage:(id)arg1 reencodedWithCharset:(id)arg2; +- (id)newMessageWithAttributedString:(id)arg1 headers:(id)arg2; +- (id)newMessageWithHtmlString:(id)arg1 plainTextAlternative:(id)arg2 otherHtmlStringsAndAttachments:(id)arg3 headers:(id)arg4; +- (id)newMessageWithHtmlString:(id)arg1 attachments:(id)arg2 headers:(id)arg3; +- (id)newMessageWithBodyData:(id)arg1 headers:(id)arg2; +- (BOOL)createsMimeAlternatives; +- (void)setCreatesMimeAlternatives:(BOOL)arg1; +- (BOOL)createsPlainTextOnly; +- (void)setCreatesPlainTextOnly:(BOOL)arg1; +- (BOOL)createsRichText; +- (void)setCreatesRichText:(BOOL)arg1; +- (BOOL)allows8BitMimeParts; +- (void)setAllows8BitMimeParts:(BOOL)arg1; +- (BOOL)allowsBinaryMimeParts; +- (void)setAllowsBinaryMimeParts:(BOOL)arg1; +- (BOOL)allowsAppleDoubleAttachments; +- (void)setAllowsAppleDoubleAttachments:(BOOL)arg1; +- (unsigned int)preferredEncoding; +- (void)setPreferredEncoding:(unsigned int)arg1; +- (unsigned int)encodingHint; +- (void)setEncodingHint:(unsigned int)arg1; +- (unsigned int)_preferredEncodingUsingHintIfNecessary; +- (BOOL)signsOutput; +- (void)setSignsOutput:(BOOL)arg1; +- (BOOL)encryptsOutput; +- (void)setEncryptsOutput:(BOOL)arg1; +- (void)setShouldConvertCompositeImages:(BOOL)arg1; +- (void)setShouldMarkNonresizableAttachmentData:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MimeBody.h b/MailHeaders/Lion/Message/MimeBody.h new file mode 100644 index 00000000..19f9d474 --- /dev/null +++ b/MailHeaders/Lion/Message/MimeBody.h @@ -0,0 +1,67 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MessageBody.h" + +@class MimePart, NSData; + +@interface MimeBody : MessageBody +{ + MimePart *_topLevelPart; + unsigned int _preferredTextEncoding; + NSData *_bodyData; + long long _preferredAlternative; + long long _numAlternatives; +} + ++ (void)initialize; ++ (id)versionString; ++ (id)newMimeBoundary; +- (id)attributedString; +- (id)init; +- (void)dealloc; +- (id)topLevelPart; +- (void)setTopLevelPart:(id)arg1; +- (id)allPartsEnumerator; +- (id)attachmentPartsEnumerator; +- (unsigned int)preferredTextEncoding; +- (void)setPreferredTextEncoding:(unsigned int)arg1; +- (BOOL)isSignedByMe; +- (id)mimeType; +- (id)mimeSubtype; +- (id)partWithNumber:(id)arg1; +- (void)calculateNumberOfAttachmentsIfNeeded; +- (BOOL)_isPossiblySignedOrEncrypted; +- (void)decodeIfNecessaryWithContext:(id)arg1; +- (void)decodeIfNecessary; +- (BOOL)hasAttachments; +- (unsigned int)numberOfAttachmentsSigned:(char *)arg1 encrypted:(char *)arg2 numberOfTNEFAttachments:(unsigned int *)arg3; +- (id)attachments; +- (id)attachmentsWithContext:(id)arg1; +- (id)attachmentViewControllers; +- (id)attachmentFilenames; +- (BOOL)isHTML; +- (BOOL)isRich; +- (BOOL)isMultipartRelated; +- (BOOL)isTextPlain; +- (long long)numberOfAlternatives; +- (void)setPreferredAlternative:(long long)arg1; +- (long long)preferredAlternative; +- (id)preferredAlternativePart; +- (id)preferredBodyPart; +- (id)textHtmlPart; +- (id)webArchive; +- (id)parsedMessage; +- (id)parsedMessageWithContext:(id)arg1; +- (id)dataForMimePart:(id)arg1; +- (id)bodyData; +- (void)setBodyData:(id)arg1; +- (void)flushCachedData; +- (void)renderStringForJunk:(id)arg1; +- (void)renderString:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/MimeCharset.h b/MailHeaders/Lion/Message/MimeCharset.h new file mode 100644 index 00000000..4d7167ca --- /dev/null +++ b/MailHeaders/Lion/Message/MimeCharset.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString; + +@interface MimeCharset : NSObject +{ + NSString *_primaryLanguage; + NSString *_charsetName; + unsigned int _encoding; + unsigned int _coversLargeUnicodeSubset:1; + unsigned int _useBase64InHeaders:1; + unsigned int _canBeUsedForOutgoingMessages:1; +} + ++ (id)allMimeCharsets; ++ (id)charsetForEncoding:(unsigned int)arg1; ++ (id)preferredMimeCharset; ++ (unsigned int)encodingVariantForEncoding:(unsigned int)arg1 address:(id)arg2; ++ (id)encodingVariantsForRecipients:(id)arg1; +- (id)_initWithEncoding:(unsigned int)arg1 primaryLanguage:(id)arg2; +- (void)dealloc; +- (unsigned int)encoding; +- (id)charsetName; +- (BOOL)canBeUsedForOutgoingMessages; +- (BOOL)coversLargeUnicodeSubset; +- (BOOL)useBase64InHeaders; +- (id)displayName; +- (id)primaryLanguage; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/MimePart.h b/MailHeaders/Lion/Message/MimePart.h new file mode 100644 index 00000000..168aa134 --- /dev/null +++ b/MailHeaders/Lion/Message/MimePart.h @@ -0,0 +1,182 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + +@class MFError, Message, MessageBody, MessageStore, NSArray, NSMutableDictionary, NSString; + +@interface MimePart : NSObject +{ + struct _NSRange _range; + id _parentOrBody; + MimePart *_nextPart; + long long _typeCode; + long long _subtypeCode; + NSString *_type; + NSString *_subtype; + NSMutableDictionary *_bodyParameters; + NSString *_contentTransferEncoding; + NSMutableDictionary *_otherIvars; + id _encryptSignLock; + MessageBody *_decryptedMessageBody; + Message *_decryptedMessage; + MessageStore *_decryptedMessageStore; + NSArray *_messageSigners; + MFError *_smimeError; + BOOL _isMimeEncrypted; + BOOL _isMimeSigned; +} + +- (void)dealloc; +- (void)finalize; +- (id)init; +- (long long)typeCode; +- (id)type; +- (void)setType:(id)arg1; +- (long long)subtypeCode; +- (id)subtype; +- (void)setSubtype:(id)arg1; +- (BOOL)isType:(id)arg1 subtype:(id)arg2; +- (BOOL)isTypeCode:(long long)arg1 subtypeCode:(long long)arg2; +- (id)bodyParameterForKey:(id)arg1; +- (void)setBodyParameter:(id)arg1 forKey:(id)arg2; +- (id)bodyParameterKeys; +- (id)disposition; +- (void)setDisposition:(id)arg1; +- (id)dispositionParameterForKey:(id)arg1; +- (void)setDispositionParameter:(id)arg1 forKey:(id)arg2; +- (id)dispositionParameterKeys; +- (id)contentDescription; +- (void)setContentDescription:(id)arg1; +- (id)contentID; +- (void)setContentID:(id)arg1; +@property(readonly) NSString *contentIDURLString; +- (id)contentLocation; +- (void)setContentLocation:(id)arg1; +- (id)languages; +- (void)setLanguages:(id)arg1; +- (id)parentPart; +- (id)firstChildPart; +- (id)nextSiblingPart; +- (id)subparts; +- (id)subpartAtIndex:(long long)arg1; +- (void)setSubparts:(id)arg1; +- (void)addSubpart:(id)arg1; +- (struct _NSRange)range; +- (void)setRange:(struct _NSRange)arg1; +- (id)bodyData; +- (id)bodyConvertedFromFlowedText; +- (id)mimeBody; +- (void)setMimeBody:(id)arg1; +- (id)description; +- (id)attachmentFilenameWithHiddenExtension:(char *)arg1; +- (id)attachmentFilename; +@property(readonly) BOOL isSigned; +@property(readonly) BOOL isEncrypted; +- (BOOL)hasCachedDataInStore; +- (unsigned int)numberOfAttachments; +- (void)getNumberOfAttachments:(unsigned int *)arg1 numberOfTNEFAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4; +- (id)attachments; +- (id)attachmentFilenames; +- (unsigned int)textEncoding; +- (unsigned long long)approximateRawSize; +- (unsigned long long)approximateDecodedSize; +- (BOOL)isReadableText; +@property(readonly) BOOL isImage; +- (BOOL)isCalendar; +- (BOOL)isStationeryImage; +- (void)markAsStationeryImage; +- (id)_partThatIsAttachment; +- (BOOL)isMessageExternalBodyWithURL; +- (BOOL)shouldConsiderInlineOverridingExchangeServer; +- (BOOL)isAttachment; +- (BOOL)isRich; +- (BOOL)isHTML; +- (BOOL)usesKnownSignatureProtocol; +@property(readonly) BOOL isAutoArchivePart; +- (id)_newAttachment; +- (id)_createFileWrapper; +- (id)_getMessageAttachment:(unsigned long long)arg1 context:(id)arg2; +- (id)_getMessageAttachment:(unsigned long long)arg1; +- (id)attributedString; +- (id)fileWrapper; +- (id)_remoteFileWrapper; +- (void)download:(id)arg1 didReceiveResponse:(id)arg2; +- (void)download:(id)arg1 didReceiveDataOfLength:(unsigned long long)arg2; +- (void)download:(id)arg1 didFailWithError:(id)arg2; +- (void)downloadDidFinish:(id)arg1; +- (void)configureFileWrapper:(id)arg1; +- (id)startPart; +- (long long)numberOfAlternatives; +- (id)alternativeAtIndex:(long long)arg1; +- (id)signedData; +- (id)textPart; +- (id)textHtmlPart; +- (void)htmlString:(id *)arg1 createWebResource:(id *)arg2 forFileWrapper:(id)arg3 partNumber:(id)arg4; +- (id)htmlStringForMimePart:(id)arg1 attachment:(id)arg2; +- (id)decodedContentWithContext:(id)arg1; +- (id)decodedContent; +- (id)_archiveForData:(id)arg1 URL:(id)arg2 MIMEType:(id)arg3 textEncodingName:(id)arg4 frameName:(id)arg5 subresources:(id)arg6 subframeArchives:(id)arg7; +- (id)_archiveForData:(id)arg1 URL:(id)arg2 MIMEType:(id)arg3 textEncodingName:(id)arg4 frameName:(id)arg5; +- (id)_archiveForString:(id)arg1 URL:(id)arg2 needsPlainTextBodyClass:(BOOL)arg3; +- (id)_archiveForFileWrapper:(id)arg1 URL:(id)arg2; +- (id)_createArchiveWithConvertedPlainTextBodyClassFromArchive:(id)arg1; +- (id)parsedMessage; +- (id)parsedMessageWithContext:(id)arg1; +- (id)webArchive; +- (id)decryptedMessageBodyIsEncrypted:(char *)arg1 isSigned:(char *)arg2 error:(id *)arg3; +- (void)clearCachedDecryptedMessageBody; +- (void)setDecryptedMessageBody:(id)arg1 isEncrypted:(BOOL)arg2 isSigned:(BOOL)arg3 error:(id)arg4; +@property(retain, nonatomic) MessageStore *decryptedMessageStore; // @synthesize decryptedMessageStore=_decryptedMessageStore; +@property(retain, nonatomic) Message *decryptedMessage; // @synthesize decryptedMessage=_decryptedMessage; +@property(retain, nonatomic) MessageBody *decryptedMessageBody; // @synthesize decryptedMessageBody=_decryptedMessageBody; +@property(nonatomic) BOOL isMimeSigned; // @synthesize isMimeSigned=_isMimeSigned; +@property(nonatomic) BOOL isMimeEncrypted; // @synthesize isMimeEncrypted=_isMimeEncrypted; +@property(copy) NSString *contentTransferEncoding; // @synthesize contentTransferEncoding=_contentTransferEncoding; +- (BOOL)writeAttachmentToSpotlightCacheIfNeededUnder:(id)arg1; +- (void)renderString:(id)arg1; +- (id)_fullMimeTypeEvenInsideAppleDouble; +- (id)decodeWithContext:(id)arg1; +- (id)decode; +- (id)decodeTextPlainWithContext:(id)arg1; +- (id)decodeTextWithContext:(id)arg1; +- (id)decodeTextRichtextWithContext:(id)arg1; +- (id)decodeTextRtfWithContext:(id)arg1; +- (id)decodeTextEnrichedWithContext:(id)arg1; +- (id)decodeTextHtmlWithContext:(id)arg1; +- (id)decodeTextCalendarWithContext:(id)arg1; +- (id)decodeMultipartWithContext:(id)arg1; +- (id)decodeMultipartAlternativeWithContext:(id)arg1; +- (id)decodeMultipartRelatedWithContext:(id)arg1; +- (id)decodeMultipartFolderWithContext:(id)arg1; +- (id)decodeApplicationApple_msg_composite_imageWithContext:(id)arg1; +- (id)decodeApplicationOctet_streamWithContext:(id)arg1; +- (id)decodeApplicationZipWithContext:(id)arg1; +- (id)decodeApplicationSmilWithContext:(id)arg1; +- (id)decodeMessageDelivery_statusWithContext:(id)arg1; +- (id)decodeMessageRfc822WithContext:(id)arg1; +- (id)decodeMessagePartialWithContext:(id)arg1; +- (id)decodeMessageExternal_bodyWithContext:(id)arg1; +- (id)decodeApplicationMac_binhex40WithContext:(id)arg1; +- (id)decodeApplicationApplefileWithContext:(id)arg1; +- (id)decodeMultipartAppledoubleWithContext:(id)arg1; +- (BOOL)parseIMAPPropertyList:(id)arg1; +- (id)partNumber; +- (BOOL)parseMimeBodyFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (BOOL)parseMimeBody; +- (int)_addDataConvertingLineEndingsFromUnixToNetwork:(id)arg1 toCMSEncoder:(struct _CMSEncoder *)arg2; +- (id)newSignedPartWithData:(id)arg1 sender:(id)arg2 signatureData:(id *)arg3; +- (id)newEncryptedPartWithData:(id)arg1 recipients:(id)arg2 encryptedData:(id *)arg3; +- (struct _CMSDecoder *)_newCMSDecoderWithMimePart:(id)arg1 error:(id *)arg2; +- (id)_verifySignatureWithCMSDecoder:(struct _CMSDecoder *)arg1 againstSender:(id)arg2 signingError:(id *)arg3; +- (id)decodeMultipartSignedWithContext:(id)arg1; +- (id)decodeApplicationPkcs7_mimeWithContext:(id)arg1; +- (BOOL)needsSignatureVerification:(id *)arg1; +- (void)verifySignature; +- (id)copyMessageSigners; +- (id)copySignerLabels; + +@end + diff --git a/MailHeaders/Lion/Message/MimeTextAttachment.h b/MailHeaders/Lion/Message/MimeTextAttachment.h new file mode 100644 index 00000000..20e4d4f0 --- /dev/null +++ b/MailHeaders/Lion/Message/MimeTextAttachment.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@class MimePart; + +@interface MimeTextAttachment : NSTextAttachment +{ + MimePart *_mimePart; +} + ++ (id)attachmentWithInternalAppleAttachmentData:(id)arg1 mimeBody:(id)arg2; +- (void)dealloc; +- (id)initWithMimePart:(id)arg1 andFileWrapper:(id)arg2; +- (id)initWithFileWrapper:(id)arg1; +- (id)initWithMimePart:(id)arg1; +- (void)_forceDownloadOfFileWrapperInBackground:(id)arg1; +- (void)forceDownloadOfFileWrapperInBackground; +- (id)fileWrapperForcingDownload; +- (id)fileWrapperForcingDownloadEvenIfExternalBody:(BOOL)arg1; +- (id)mimePart; +- (void)setMimePart:(id)arg1; +- (unsigned long long)approximateSize; +- (BOOL)isPlaceholder; +- (BOOL)hasBeenDownloaded; +- (BOOL)shouldDownloadAttachmentOnDisplay; + +@end + diff --git a/MailHeaders/Lion/Message/MonitoredInvocation.h b/MailHeaders/Lion/Message/MonitoredInvocation.h new file mode 100644 index 00000000..3ffcc6b0 --- /dev/null +++ b/MailHeaders/Lion/Message/MonitoredInvocation.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSInvocation.h" + +@class ActivityMonitor; + +@interface MonitoredInvocation : NSInvocation +{ + ActivityMonitor *_monitor; +} + ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 taskName:(id)arg3 priority:(unsigned char)arg4 canBeCancelled:(BOOL)arg5; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object:(id)arg3 taskName:(id)arg4 priority:(unsigned char)arg5 canBeCancelled:(BOOL)arg6; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 taskName:(id)arg5 priority:(unsigned char)arg6 canBeCancelled:(BOOL)arg7; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 taskName:(id)arg6 priority:(unsigned char)arg7 canBeCancelled:(BOOL)arg8; +- (void)dealloc; +- (void)finalize; +- (id)monitor; +- (void)setMonitor:(id)arg1; +- (void)setShouldPromptUserOnTermination; +- (void)invoke; +- (unsigned char)priority; + +@end + diff --git a/MailHeaders/Lion/Message/MonitoredOperation.h b/MailHeaders/Lion/Message/MonitoredOperation.h new file mode 100644 index 00000000..2cbd26ec --- /dev/null +++ b/MailHeaders/Lion/Message/MonitoredOperation.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSOperation.h" + +@class ActivityMonitor, NSString; + +@interface MonitoredOperation : NSOperation +{ + ActivityMonitor *_parentMonitor; + ActivityMonitor *_monitor; +} + +- (id)init; +- (void)dealloc; +- (void)main; +@property(readonly) NSString *activityString; +- (void)executeOperation; +@property(retain, nonatomic) ActivityMonitor *monitor; // @synthesize monitor=_monitor; +@property(retain, nonatomic) ActivityMonitor *parentMonitor; // @synthesize parentMonitor=_parentMonitor; + +@end + diff --git a/MailHeaders/Lion/Message/MutableByteSet.h b/MailHeaders/Lion/Message/MutableByteSet.h new file mode 100644 index 00000000..90694a36 --- /dev/null +++ b/MailHeaders/Lion/Message/MutableByteSet.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface MutableByteSet : ByteSet +{ +} + +- (void)addBytesInRange:(struct _NSRange)arg1; +- (void)removeBytesInRange:(struct _NSRange)arg1; +- (void)invert; + +@end + diff --git a/MailHeaders/Lion/Message/MutableMessageHeaders.h b/MailHeaders/Lion/Message/MutableMessageHeaders.h new file mode 100644 index 00000000..43a67cdb --- /dev/null +++ b/MailHeaders/Lion/Message/MutableMessageHeaders.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MessageHeaders.h" + +@class NSMutableArray, NSMutableDictionary; + +@interface MutableMessageHeaders : MessageHeaders +{ + NSMutableDictionary *_headersAdded; + NSMutableArray *_headersRemoved; +} + +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)mutableCopyWithZone:(struct _NSZone *)arg1; +- (id)description; +- (id)allHeaderKeys; +- (BOOL)hasHeaderForKey:(id)arg1; +- (id)_headersForKey:(id)arg1; +- (id)firstHeaderForKey:(id)arg1; +- (id)addressListForKey:(id)arg1; +- (id)_firstAddressForKey:(id)arg1 sender:(id)arg2; +- (id)encodedHeadersIncludingFromSpace:(BOOL)arg1; +- (void)_appendAddedHeaderKey:(id)arg1 value:(id)arg2 toData:(id)arg3; +- (void)_appendHeaderKey:(id)arg1 value:(id)arg2 toData:(id)arg3; +- (void)setHeader:(id)arg1 forKey:(id)arg2; +- (void)setAddressList:(id)arg1 forKey:(id)arg2; +- (void)removeHeaderForKey:(id)arg1; +- (void)addFromSpaceIfMissing; + +@end + diff --git a/MailHeaders/Lion/Message/NSAlertDelegate-Protocol.h b/MailHeaders/Lion/Message/NSAlertDelegate-Protocol.h new file mode 100644 index 00000000..14beeb08 --- /dev/null +++ b/MailHeaders/Lion/Message/NSAlertDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSAlertDelegate + +@optional +- (BOOL)alertShowHelp:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSAppleEventDescriptor-MessageRuleAdditions.h b/MailHeaders/Lion/Message/NSAppleEventDescriptor-MessageRuleAdditions.h new file mode 100644 index 00000000..395ca3cc --- /dev/null +++ b/MailHeaders/Lion/Message/NSAppleEventDescriptor-MessageRuleAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAppleEventDescriptor.h" + +@interface NSAppleEventDescriptor (MessageRuleAdditions) +- (BOOL)isSendToSelfEvent; +@end + diff --git a/MailHeaders/Lion/Message/NSAppleScript-MessageRuleAdditions.h b/MailHeaders/Lion/Message/NSAppleScript-MessageRuleAdditions.h new file mode 100644 index 00000000..06dff8ed --- /dev/null +++ b/MailHeaders/Lion/Message/NSAppleScript-MessageRuleAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAppleScript.h" + +@interface NSAppleScript (MessageRuleAdditions) ++ (id)_newScriptAtPath:(id)arg1 errorInfo:(id *)arg2; ++ (BOOL)executeHandlerWithName:(id)arg1 inScriptAtPath:(id)arg2 withArguments:(id)arg3 error:(id *)arg4; ++ (BOOL)executeHandlerWithEventClass:(unsigned int)arg1 eventID:(unsigned int)arg2 inScriptAtPath:(id)arg3 withArguments:(id)arg4 error:(id *)arg5; ++ (id)appleScriptLock; +- (id)executeHandlerWithName:(id)arg1 andArguments:(id)arg2 error:(id *)arg3; +- (id)executeHandlerWithEventClass:(unsigned int)arg1 eventID:(unsigned int)arg2 andArguments:(id)arg3 error:(id *)arg4; +@end + diff --git a/MailHeaders/Lion/Message/NSApplication-MFAssert.h b/MailHeaders/Lion/Message/NSApplication-MFAssert.h new file mode 100644 index 00000000..4d6d001d --- /dev/null +++ b/MailHeaders/Lion/Message/NSApplication-MFAssert.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSApplication.h" + +@interface NSApplication (MFAssert) ++ (BOOL)isMail; +@end + diff --git a/MailHeaders/Lion/Message/NSArray-AppleScriptConveniences.h b/MailHeaders/Lion/Message/NSArray-AppleScriptConveniences.h new file mode 100644 index 00000000..f55bdfe9 --- /dev/null +++ b/MailHeaders/Lion/Message/NSArray-AppleScriptConveniences.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (AppleScriptConveniences) +- (id)arrayByEvaluatingObjectSpecifiers; +@end + diff --git a/MailHeaders/Lion/Message/NSArray-DateComparisonForRecents.h b/MailHeaders/Lion/Message/NSArray-DateComparisonForRecents.h new file mode 100644 index 00000000..5e9cc84f --- /dev/null +++ b/MailHeaders/Lion/Message/NSArray-DateComparisonForRecents.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (DateComparisonForRecents) +- (unsigned long long)indexOfOldestDate; +- (unsigned long long)indexOfThirdDate; +- (id)thirdDate; +@end + diff --git a/MailHeaders/Lion/Message/NSArray-DeepCopying.h b/MailHeaders/Lion/Message/NSArray-DeepCopying.h new file mode 100644 index 00000000..4f0acb30 --- /dev/null +++ b/MailHeaders/Lion/Message/NSArray-DeepCopying.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (DeepCopying) +- (id)twiceMutableCopy; +@end + diff --git a/MailHeaders/Lion/Message/NSArray-DerivedArray.h b/MailHeaders/Lion/Message/NSArray-DerivedArray.h new file mode 100644 index 00000000..52e6f59c --- /dev/null +++ b/MailHeaders/Lion/Message/NSArray-DerivedArray.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (DerivedArray) +- (id)arrayByAddingAbsentObjectsFromArray:(id)arg1 accordingToEquals:(BOOL)arg2; +- (id)indicesOfStringsWithPrefix:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSArray-EmailAddressArray.h b/MailHeaders/Lion/Message/NSArray-EmailAddressArray.h new file mode 100644 index 00000000..7382f9be --- /dev/null +++ b/MailHeaders/Lion/Message/NSArray-EmailAddressArray.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (EmailAddressArray) +- (id)uncommentedAddressList; +- (id)addressString; +- (id)addressCommentString; +- (id)addressDisplayStringWithMaxNumberOfAddresses:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSArray-MessagesFromMixedStoresConvenience.h b/MailHeaders/Lion/Message/NSArray-MessagesFromMixedStoresConvenience.h new file mode 100644 index 00000000..6a1b79b4 --- /dev/null +++ b/MailHeaders/Lion/Message/NSArray-MessagesFromMixedStoresConvenience.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSArray.h" + +@class NSDictionary; + +@interface NSArray (MessagesFromMixedStoresConvenience) +@property(readonly) NSDictionary *dictionaryWithMessagesSortedByStore; +@property(readonly) NSDictionary *dictionaryWithMessagesSortedByMailbox; +@end + diff --git a/MailHeaders/Lion/Message/NSArray-removeSelf.h b/MailHeaders/Lion/Message/NSArray-removeSelf.h new file mode 100644 index 00000000..68a014e3 --- /dev/null +++ b/MailHeaders/Lion/Message/NSArray-removeSelf.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (removeSelf) +- (id)attributedComponentsJoinedByString:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSAttributedString-FontAdditions.h b/MailHeaders/Lion/Message/NSAttributedString-FontAdditions.h new file mode 100644 index 00000000..a8040588 --- /dev/null +++ b/MailHeaders/Lion/Message/NSAttributedString-FontAdditions.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@interface NSAttributedString (FontAdditions) ++ (void)resetHeaderAttributes; ++ (id)boldHeaderAttributes; ++ (id)boldGrayHeaderAttributes; ++ (id)bigBoldWhiteHeaderAttributes; ++ (id)mediumWhiteHeaderAttributes; ++ (id)blueHeaderAttributes; ++ (id)linkHeaderAttributes; ++ (id)headerAttributes; ++ (id)fixedPitchAttributes; ++ (id)lightGrayHeaderAttributes; ++ (id)selectionBlueHeaderAttributes; ++ (id)messageNumberAttributes; ++ (double)headerFontSize; +@end + diff --git a/MailHeaders/Lion/Message/NSAttributedString-FormatFlowedSupport.h b/MailHeaders/Lion/Message/NSAttributedString-FormatFlowedSupport.h new file mode 100644 index 00000000..a5c5b41f --- /dev/null +++ b/MailHeaders/Lion/Message/NSAttributedString-FormatFlowedSupport.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (FormatFlowedSupport) +- (void)getFormatFlowedString:(id *)arg1 insertedTrailingSpaces:(char *)arg2 encoding:(unsigned int)arg3; +- (void)getQuotedString:(id *)arg1 encoding:(unsigned int)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NSAttributedString-MessageFrameworkAdditions.h b/MailHeaders/Lion/Message/NSAttributedString-MessageFrameworkAdditions.h new file mode 100644 index 00000000..0121c267 --- /dev/null +++ b/MailHeaders/Lion/Message/NSAttributedString-MessageFrameworkAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MessageFrameworkAdditions) +- (id)attachments; +- (id)attachmentsInRange:(struct _NSRange)arg1; +- (id)mimeTextAttachments; +- (struct _NSRange)rangeOfAttachment:(id)arg1; +- (BOOL)containsRichTextInRange:(struct _NSRange)arg1; +- (BOOL)containsRichText; +@end + diff --git a/MailHeaders/Lion/Message/NSAttributedString-MessagePasteboardSupport.h b/MailHeaders/Lion/Message/NSAttributedString-MessagePasteboardSupport.h new file mode 100644 index 00000000..4b288933 --- /dev/null +++ b/MailHeaders/Lion/Message/NSAttributedString-MessagePasteboardSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MessagePasteboardSupport) +- (id)messageDataForRange:(struct _NSRange)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSAttributedString-MimeEnrichedWriter.h b/MailHeaders/Lion/Message/NSAttributedString-MimeEnrichedWriter.h new file mode 100644 index 00000000..7e88e2d3 --- /dev/null +++ b/MailHeaders/Lion/Message/NSAttributedString-MimeEnrichedWriter.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MimeEnrichedWriter) +- (id)enrichedString; +@end + diff --git a/MailHeaders/Lion/Message/NSAttributedString-find_attribute.h b/MailHeaders/Lion/Message/NSAttributedString-find_attribute.h new file mode 100644 index 00000000..55fca59a --- /dev/null +++ b/MailHeaders/Lion/Message/NSAttributedString-find_attribute.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (find_attribute) +- (id)nextAttribute:(id)arg1 fromLocation:(unsigned long long)arg2 effectiveRange:(struct _NSRange *)arg3; +@end + diff --git a/MailHeaders/Lion/Message/NSBundle-MessageFrameworkAdditions.h b/MailHeaders/Lion/Message/NSBundle-MessageFrameworkAdditions.h new file mode 100644 index 00000000..78492042 --- /dev/null +++ b/MailHeaders/Lion/Message/NSBundle-MessageFrameworkAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSBundle.h" + +@interface NSBundle (MessageFrameworkAdditions) ++ (BOOL)localization:(id)arg1 isPreferredOverLocalization:(id)arg2; ++ (id)syncBundle; +- (BOOL)loadNibNamed:(id)arg1 owner:(id)arg2; +- (id)localizedShortVersion; +- (void)createLocalization:(id)arg1; +- (id)localizedStringIfPresentForKey:(id)arg1 value:(id)arg2 table:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Message/NSCacheDelegate-Protocol.h b/MailHeaders/Lion/Message/NSCacheDelegate-Protocol.h new file mode 100644 index 00000000..8d280f32 --- /dev/null +++ b/MailHeaders/Lion/Message/NSCacheDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSCacheDelegate + +@optional +- (void)cache:(id)arg1 willEvictObject:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NSCharacterSet-NSCharacterSetUtils.h b/MailHeaders/Lion/Message/NSCharacterSet-NSCharacterSetUtils.h new file mode 100644 index 00000000..1281223d --- /dev/null +++ b/MailHeaders/Lion/Message/NSCharacterSet-NSCharacterSetUtils.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSCharacterSet.h" + +@interface NSCharacterSet (NSCharacterSetUtils) ++ (id)unsafeDomainNameCharacterSet; ++ (id)unsafeAddressLocalPartCharacterSet; ++ (id)replacementCharacterSet; +@end + diff --git a/MailHeaders/Lion/Message/NSCoder-MFMessageFlags.h b/MailHeaders/Lion/Message/NSCoder-MFMessageFlags.h new file mode 100644 index 00000000..6bf93f51 --- /dev/null +++ b/MailHeaders/Lion/Message/NSCoder-MFMessageFlags.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSCoder.h" + +@interface NSCoder (MFMessageFlags) +- (unsigned int)decodeMessageFlags; +@end + diff --git a/MailHeaders/Lion/Message/NSCoding-Protocol.h b/MailHeaders/Lion/Message/NSCoding-Protocol.h new file mode 100644 index 00000000..aa56ae24 --- /dev/null +++ b/MailHeaders/Lion/Message/NSCoding-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSCoding +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSColor-NSColorUtilities.h b/MailHeaders/Lion/Message/NSColor-NSColorUtilities.h new file mode 100644 index 00000000..299a4763 --- /dev/null +++ b/MailHeaders/Lion/Message/NSColor-NSColorUtilities.h @@ -0,0 +1,46 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSColor.h" + +@interface NSColor (NSColorUtilities) ++ (id)allQuotingColors; ++ (id)defaultQuotingColors; ++ (id)allHighlightColors; ++ (int)highlightColorValueForColor:(id)arg1; ++ (id)colorForHighlightColorValue:(int)arg1; ++ (id)colorPlist; ++ (int)intWithIdentifierColor:(id)arg1; ++ (id)identifierForColor:(id)arg1; ++ (id)colorForIdentifier:(id)arg1; ++ (id)colorForEnrichedValue:(id)arg1; ++ (void)configureColorMenu:(id)arg1; ++ (id)newSwatchForColor:(id)arg1; ++ (id)colorWithIntValue:(int)arg1; ++ (id)colorWithHexString:(id)arg1; ++ (void)setThreadBackgroundColor:(id)arg1; ++ (id)lighterThreadBackgroundColor; ++ (void)clearThreadBackgroundColors; ++ (id)threadBackgroundColor; ++ (id)threadChildBackgroundColor; ++ (id)lighterThreadChildBackgroundColor; ++ (id)threadQuasiSelectedColor; ++ (id)junkMailColor; ++ (id)linkColor; ++ (id)visitedLinkColor; ++ (id)activeLinkColor; ++ (id)splitterColor; ++ (id)subjectAdditionColor; ++ (id)aquaBlueColor; ++ (id)activeAlternateBackgroundColor; ++ (id)inactiveAlternateBackgroundColor; ++ (id)scriptingRGBColorWithDescriptor:(id)arg1; +- (int)intValue; +- (id)hexString; +- (id)scriptingRGBColorDescriptor; +- (id)cssColorString; +@end + diff --git a/MailHeaders/Lion/Message/NSConditionLock-MessageAdditions.h b/MailHeaders/Lion/Message/NSConditionLock-MessageAdditions.h new file mode 100644 index 00000000..69e3bccc --- /dev/null +++ b/MailHeaders/Lion/Message/NSConditionLock-MessageAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSConditionLock.h" + +@interface NSConditionLock (MessageAdditions) +- (BOOL)lockIfCondition:(long long)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSCopying-Protocol.h b/MailHeaders/Lion/Message/NSCopying-Protocol.h new file mode 100644 index 00000000..2ffa98f5 --- /dev/null +++ b/MailHeaders/Lion/Message/NSCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSCopying +- (id)copyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSData-HFSDataConversion.h b/MailHeaders/Lion/Message/NSData-HFSDataConversion.h new file mode 100644 index 00000000..d7c8dd3d --- /dev/null +++ b/MailHeaders/Lion/Message/NSData-HFSDataConversion.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSData.h" + +@interface NSData (HFSDataConversion) +- (id)wrapperForAppleFileDataWithFileEncodingHint:(unsigned int)arg1; +- (id)wrapperForBinHex40DataWithFileEncodingHint:(unsigned int)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSData-MessageAdditions.h b/MailHeaders/Lion/Message/NSData-MessageAdditions.h new file mode 100644 index 00000000..bb14e1d3 --- /dev/null +++ b/MailHeaders/Lion/Message/NSData-MessageAdditions.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@interface NSData (MessageAdditions) +- (id)initWithDataConvertingLineEndingsFromUnixToNetwork:(id)arg1; +- (id)initWithDataConvertingLineEndingsFromNetworkToUnix:(id)arg1; +- (id)dataByConvertingLineEndingsFromUnixToNetwork; +- (id)unquotedFromSpaceDataWithRange:(struct _NSRange)arg1; +- (id)quotedFromSpaceDataForMessage; +- (struct _NSRange)rangeOfRFC822HeaderData; +- (id)subdataToIndex:(unsigned long long)arg1; +- (id)subdataFromIndex:(unsigned long long)arg1; +- (struct _NSRange)rangeOfData:(id)arg1; +- (struct _NSRange)rangeOfData:(id)arg1 options:(unsigned long long)arg2; +- (struct _NSRange)rangeOfData:(id)arg1 options:(unsigned long long)arg2 range:(struct _NSRange)arg3; +- (struct _NSRange)rangeOfByteFromSet:(id)arg1; +- (struct _NSRange)rangeOfByteFromSet:(id)arg1 options:(unsigned long long)arg2; +- (struct _NSRange)rangeOfByteFromSet:(id)arg1 options:(unsigned long long)arg2 range:(struct _NSRange)arg3; +- (struct _NSRange)rangeOfCString:(const char *)arg1; +- (struct _NSRange)rangeOfCString:(const char *)arg1 options:(unsigned long long)arg2; +- (struct _NSRange)rangeOfCString:(const char *)arg1 options:(unsigned long long)arg2 range:(struct _NSRange)arg3; +- (id)componentsSeparatedByData:(id)arg1; +- (id)MD5Digest; +@end + diff --git a/MailHeaders/Lion/Message/NSData-MimeDataEncoding.h b/MailHeaders/Lion/Message/NSData-MimeDataEncoding.h new file mode 100644 index 00000000..d0547563 --- /dev/null +++ b/MailHeaders/Lion/Message/NSData-MimeDataEncoding.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface NSData (MimeDataEncoding) ++ (unsigned long long)quotedPrintableLengthOfHeaderBytes:(const char *)arg1 length:(unsigned long long)arg2; +- (id)decodeQuotedPrintableForText:(BOOL)arg1; +- (id)encodeQuotedPrintableForText:(BOOL)arg1; +- (id)encodeQuotedPrintableForText:(BOOL)arg1 allowCancel:(BOOL)arg2; +- (id)decodeBase64; +- (BOOL)isValidBase64Data; +- (id)encodeBase64WithoutLineBreaks; +- (id)encodeBase64; +- (id)encodeBase64AllowCancel:(BOOL)arg1; +- (id)decodeModifiedBase64; +- (id)encodeModifiedBase64; +- (id)encodeBase64HeaderData; +@end + diff --git a/MailHeaders/Lion/Message/NSData-UuEnDecode.h b/MailHeaders/Lion/Message/NSData-UuEnDecode.h new file mode 100644 index 00000000..c469179a --- /dev/null +++ b/MailHeaders/Lion/Message/NSData-UuEnDecode.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSData.h" + +@interface NSData (UuEnDecode) +- (id)uudecodedDataIntoFile:(id *)arg1 mode:(unsigned int *)arg2; +- (id)uuencodedDataWithFile:(id)arg1 mode:(unsigned int)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NSDataMessageStore.h b/MailHeaders/Lion/Message/NSDataMessageStore.h new file mode 100644 index 00000000..89457741 --- /dev/null +++ b/MailHeaders/Lion/Message/NSDataMessageStore.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "MessageStore.h" + +@class NSData; + +@interface NSDataMessageStore : MessageStore +{ + NSData *_data; +} + +- (id)initWithData:(id)arg1; +- (id)init; +- (id)initWithMailboxUid:(id)arg1 readOnly:(BOOL)arg2; +- (id)willDealloc; +- (void)dealloc; +- (id)storePath; +- (void)writeUpdatedMessageDataToDisk; +- (id)message; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_cachedBodyForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedHeadersForMessage:(id)arg1 valueIfNotPresent:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/NSDate-Goodies.h b/MailHeaders/Lion/Message/NSDate-Goodies.h new file mode 100644 index 00000000..795627c8 --- /dev/null +++ b/MailHeaders/Lion/Message/NSDate-Goodies.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSDate.h" + +@interface NSDate (Goodies) ++ (id)newDateInCommonFormatsWithString:(id)arg1; ++ (id)lenientDateInCommonFormatsWithString:(id)arg1; +- (id)descriptionInBSDMailboxFormat; +- (id)replyPrefixForSender:(id)arg1 withSpacer:(BOOL)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NSDate-MessageAdditions.h b/MailHeaders/Lion/Message/NSDate-MessageAdditions.h new file mode 100644 index 00000000..82b60289 --- /dev/null +++ b/MailHeaders/Lion/Message/NSDate-MessageAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSDate.h" + +@interface NSDate (MessageAdditions) ++ (id)startOfDayWithDaysSinceToday:(long long)arg1; +- (id)headerString; +@end + diff --git a/MailHeaders/Lion/Message/NSDate-toc_extension.h b/MailHeaders/Lion/Message/NSDate-toc_extension.h new file mode 100644 index 00000000..dfb94571 --- /dev/null +++ b/MailHeaders/Lion/Message/NSDate-toc_extension.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSDate.h" + +@interface NSDate (toc_extension) +- (int)tocSillyDateInt; +@end + diff --git a/MailHeaders/Lion/Message/NSDateFormatter-MessageAdditions.h b/MailHeaders/Lion/Message/NSDateFormatter-MessageAdditions.h new file mode 100644 index 00000000..afa5f732 --- /dev/null +++ b/MailHeaders/Lion/Message/NSDateFormatter-MessageAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSDateFormatter.h" + +@interface NSDateFormatter (MessageAdditions) +- (id)initWithRFCHeaderFormat; +@end + diff --git a/MailHeaders/Lion/Message/NSDictionary-Goodies.h b/MailHeaders/Lion/Message/NSDictionary-Goodies.h new file mode 100644 index 00000000..3fd73ee7 --- /dev/null +++ b/MailHeaders/Lion/Message/NSDictionary-Goodies.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSDictionary.h" + +@interface NSDictionary (Goodies) +- (BOOL)boolForKey:(id)arg1; +- (long long)integerForKey:(id)arg1; +- (float)floatForKey:(id)arg1; +- (double)cgfloatForKey:(id)arg1; +- (struct CGSize)sizeForKey:(id)arg1; +- (id)objectForIntegerKey:(long long)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSDictionary-MessageAdditions.h b/MailHeaders/Lion/Message/NSDictionary-MessageAdditions.h new file mode 100644 index 00000000..f07d0eca --- /dev/null +++ b/MailHeaders/Lion/Message/NSDictionary-MessageAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSDictionary.h" + +@interface NSDictionary (MessageAdditions) +- (id)mutableSomewhatDeepCopy; +@end + diff --git a/MailHeaders/Lion/Message/NSDictionary-NSBundleExtras.h b/MailHeaders/Lion/Message/NSDictionary-NSBundleExtras.h new file mode 100644 index 00000000..cb92aa21 --- /dev/null +++ b/MailHeaders/Lion/Message/NSDictionary-NSBundleExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSDictionary.h" + +@interface NSDictionary (NSBundleExtras) +- (id)shortVersionFromInfoDictionary; +@end + diff --git a/MailHeaders/Lion/Message/NSError-MessageAdditions.h b/MailHeaders/Lion/Message/NSError-MessageAdditions.h new file mode 100644 index 00000000..3c3a9317 --- /dev/null +++ b/MailHeaders/Lion/Message/NSError-MessageAdditions.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSError.h" + +@interface NSError (MessageAdditions) +- (BOOL)isUserCancelledError; +- (BOOL)shouldBeReportedToUser; +- (BOOL)isAuthenticationError; +- (BOOL)isSSLCertificateError; +- (id)moreInfo; +- (id)helpAnchor; +- (id)shortDescription; +@end + diff --git a/MailHeaders/Lion/Message/NSError-POP3ConnectionExtensions.h b/MailHeaders/Lion/Message/NSError-POP3ConnectionExtensions.h new file mode 100644 index 00000000..14a74b02 --- /dev/null +++ b/MailHeaders/Lion/Message/NSError-POP3ConnectionExtensions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSError.h" + +@interface NSError (POP3ConnectionExtensions) +- (int)POP3ResponseCode; +@end + diff --git a/MailHeaders/Lion/Message/NSEvent-NSEventAdditions.h b/MailHeaders/Lion/Message/NSEvent-NSEventAdditions.h new file mode 100644 index 00000000..4e461193 --- /dev/null +++ b/MailHeaders/Lion/Message/NSEvent-NSEventAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSEvent.h" + +@interface NSEvent (NSEventAdditions) ++ (BOOL)isShiftKeyDown; ++ (BOOL)isOptionKeyDown; +- (BOOL)isLeftMouseUpDown; +@end + diff --git a/MailHeaders/Lion/Message/NSFileHandle-MessageAdditions.h b/MailHeaders/Lion/Message/NSFileHandle-MessageAdditions.h new file mode 100644 index 00000000..206b812a --- /dev/null +++ b/MailHeaders/Lion/Message/NSFileHandle-MessageAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFileHandle.h" + +@interface NSFileHandle (MessageAdditions) ++ (id)createFileAtPath:(id)arg1 flags:(int)arg2 mode:(unsigned short)arg3; ++ (id)fileHandleForUniqueFile:(id *)arg1 atPath:(id)arg2 mode:(unsigned short)arg3 extension:(id)arg4; ++ (id)fileHandleForUniqueFile:(id *)arg1 atPath:(id)arg2 mode:(unsigned short)arg3; ++ (id)fileHandleForTempFile:(id *)arg1 atPath:(id)arg2 mode:(unsigned short)arg3; +- (BOOL)writeLossyString:(id)arg1; +- (BOOL)writeBytes:(const char *)arg1 length:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NSFileManager-NSFileManagerAdditions.h b/MailHeaders/Lion/Message/NSFileManager-NSFileManagerAdditions.h new file mode 100644 index 00000000..be828245 --- /dev/null +++ b/MailHeaders/Lion/Message/NSFileManager-NSFileManagerAdditions.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFileManager.h" + +@interface NSFileManager (NSFileManagerAdditions) +- (id)createUniqueDirectoryAtPath:(id)arg1 withIntermediateDirectories:(BOOL)arg2 attributes:(id)arg3 error:(id *)arg4; +- (BOOL)canWriteToDirectoryAtPath:(id)arg1; +- (BOOL)canWriteToFileAtPath:(id)arg1; +- (long long)fileSizeAtPath:(id)arg1 traverseLink:(BOOL)arg2; +- (id)fileModificationDateAtPath:(id)arg1 traverseLink:(BOOL)arg2; +- (id)pathsAtDirectory:(id)arg1 beginningWithString:(id)arg2; +- (void)deleteFilesInSortedArray:(id)arg1 matchingPrefix:(id)arg2 fromDirectory:(id)arg3; +- (BOOL)isAlias:(id)arg1; +- (id)destinationOfAliasAtPath:(id)arg1; +- (id)pathByResolvingAliasesInPath:(id)arg1; +- (id)localizedFullPath:(id)arg1; +- (id)pathByUniquingPath:(id)arg1; +- (id)uniquePathInDirectory:(id)arg1 withName:(id)arg2 extension:(id)arg3; +- (id)mf_subpathsOfDirectoryAtPath:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSFileManagerDelegate-Protocol.h b/MailHeaders/Lion/Message/NSFileManagerDelegate-Protocol.h new file mode 100644 index 00000000..99d84918 --- /dev/null +++ b/MailHeaders/Lion/Message/NSFileManagerDelegate-Protocol.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSFileManagerDelegate + +@optional +- (BOOL)fileManager:(id)arg1 shouldCopyItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldCopyItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 copyingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 copyingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldMoveItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldMoveItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 movingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 movingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldLinkItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldLinkItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 linkingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 linkingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtPath:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtURL:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtURL:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Message/NSFileWrapper-ArchivedData.h b/MailHeaders/Lion/Message/NSFileWrapper-ArchivedData.h new file mode 100644 index 00000000..1c6c32df --- /dev/null +++ b/MailHeaders/Lion/Message/NSFileWrapper-ArchivedData.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (ArchivedData) +- (id)archivedDataWithPartNumber:(id)arg1; +- (id)archivedData; +@end + diff --git a/MailHeaders/Lion/Message/NSFileWrapper-HFSDataConversion.h b/MailHeaders/Lion/Message/NSFileWrapper-HFSDataConversion.h new file mode 100644 index 00000000..69fe3101 --- /dev/null +++ b/MailHeaders/Lion/Message/NSFileWrapper-HFSDataConversion.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (HFSDataConversion) +- (id)appleSingleDataWithFilename:(const char *)arg1 length:(unsigned long long)arg2; +- (id)appleDoubleDataWithFilename:(const char *)arg1 length:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NSFileWrapper-HFSExtensions.h b/MailHeaders/Lion/Message/NSFileWrapper-HFSExtensions.h new file mode 100644 index 00000000..0a5a7257 --- /dev/null +++ b/MailHeaders/Lion/Message/NSFileWrapper-HFSExtensions.h @@ -0,0 +1,55 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@class NSArray, NSData, NSDictionary, NSNumber, NSString; + +@interface NSFileWrapper (HFSExtensions) ++ (void)loadMessageExtensions; +@property(retain) NSData *resourceForkData; +@property unsigned int type; +@property unsigned int creator; +@property unsigned short finderFlags; +@property BOOL shouldHideExtension; +@property(retain) NSNumber *filePermissions; +@property(retain) NSString *mimeType; +@property(readonly) NSString *bestMimeType; +@property(retain) NSString *contentID; +@property(retain) NSDictionary *quarantineProperties; +- (void)addGatekeeperQuarantineToPath:(id)arg1; +@property(retain) NSArray *whereFroms; +@property(retain) NSString *messageID; +- (BOOL)couldConfuseWindowsClients; +@property BOOL shouldBeViewedInline; +@property(retain) NSString *mailSpecialHandlingType; +- (BOOL)isImageFile; +- (void)isImageFile:(char *)arg1 isPDF:(char *)arg2; +- (void)_isImageFile:(char *)arg1 isPDF:(char *)arg2 bestMimeType:(id *)arg3; +- (void)setImageSize:(struct CGSize)arg1 imageBytes:(unsigned long long)arg2; +- (struct CGSize)imageSize; +- (unsigned long long)imageBytes; +- (id)preferredFilenameWithoutHiddenExtension; +- (BOOL)isPlaceholder; +- (BOOL)isRemotelyAccessed; +- (id)remoteAccessMimeType; +- (id)tmpFullPath; +- (BOOL)isALargeAttachment; +- (unsigned long long)approximateSize; +- (id)pathToAttachment; +- (id)stringForIndexing; +- (BOOL)createEmptyAttachmentAtPath:(id)arg1; +- (BOOL)_emptyAttachmentExists; +- (id)emptyAttachmentPath; +- (void)removeEmptyAttachment; +@property(retain) NSString *savedPath; +- (BOOL)_Message_writeToFile:(id)arg1 atomically:(BOOL)arg2 updateFilenames:(BOOL)arg3; +- (id)iconCreateIfNecessary:(BOOL)arg1; +- (id)_Message_initWithPath:(id)arg1; +- (void)_Message_setPreferredFilename:(id)arg1; +- (BOOL)_Message_updateFromPath:(id)arg1 checkOnly:(BOOL)arg2 exists:(char *)arg3; +@end + diff --git a/MailHeaders/Lion/Message/NSFileWrapper-PersistenceWithoutLosingMetadata.h b/MailHeaders/Lion/Message/NSFileWrapper-PersistenceWithoutLosingMetadata.h new file mode 100644 index 00000000..bceef1dc --- /dev/null +++ b/MailHeaders/Lion/Message/NSFileWrapper-PersistenceWithoutLosingMetadata.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (PersistenceWithoutLosingMetadata) +- (id)dictionaryRepresentation; +- (id)dictionaryForNoteSyncing; +- (id)initWithDictionaryRepresentation:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSFileWrapper-UniquePaths.h b/MailHeaders/Lion/Message/NSFileWrapper-UniquePaths.h new file mode 100644 index 00000000..0b1a1bbd --- /dev/null +++ b/MailHeaders/Lion/Message/NSFileWrapper-UniquePaths.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (UniquePaths) ++ (id)uniquedPathForFile:(id)arg1 inDirectory:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NSFileWrapper-iCalInvitationSupport.h b/MailHeaders/Lion/Message/NSFileWrapper-iCalInvitationSupport.h new file mode 100644 index 00000000..5f20e705 --- /dev/null +++ b/MailHeaders/Lion/Message/NSFileWrapper-iCalInvitationSupport.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (iCalInvitationSupport) +- (BOOL)isICalInvitation; +- (void)setIsICalInvitation:(BOOL)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSHashTable-MFLibraryIDWrapper.h b/MailHeaders/Lion/Message/NSHashTable-MFLibraryIDWrapper.h new file mode 100644 index 00000000..2f208e5d --- /dev/null +++ b/MailHeaders/Lion/Message/NSHashTable-MFLibraryIDWrapper.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSHashTable.h" + +@interface NSHashTable (MFLibraryIDWrapper) +- (id)initWithLibraryIDs; +- (long long)memberLibraryID:(long long)arg1; +- (long long)anyLibraryID; +- (BOOL)containsLibraryID:(long long)arg1; +- (void)addLibraryID:(long long)arg1; +- (void)removeLibraryID:(long long)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSImage-ASBetterImageLookup.h b/MailHeaders/Lion/Message/NSImage-ASBetterImageLookup.h new file mode 100644 index 00000000..a53e903c --- /dev/null +++ b/MailHeaders/Lion/Message/NSImage-ASBetterImageLookup.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSImage.h" + +@interface NSImage (ASBetterImageLookup) ++ (id)appIconIncludingUserCustomization; ++ (id)appIconWithUnreadBadge:(int)arg1 baseImageName:(id)arg2; ++ (id)newScaledImageFromImage:(id)arg1 desiredSize:(struct CGSize)arg2; ++ (id)imagePasteboardTypesWithPreferenceToPNG; ++ (id)imageDataForType:(id *)arg1 fromPasteboard:(id)arg2; ++ (id)rotateImage:(id)arg1 byDegrees:(double)arg2; +- (id)opaqueImage; +- (id)bitmapImageRep; +- (id)PNGData; +@property(readonly) unsigned long long frameCount; +@property(readonly) BOOL isAnimated; +- (void)drawTransformedInRect:(struct CGRect)arg1 fromRect:(struct CGRect)arg2 operation:(unsigned long long)arg3 fraction:(double)arg4 flip:(BOOL)arg5; +- (double)pixelsWide; +- (double)pixelsHigh; +@end + diff --git a/MailHeaders/Lion/Message/NSInvocation-MailExtensions.h b/MailHeaders/Lion/Message/NSInvocation-MailExtensions.h new file mode 100644 index 00000000..b136fd35 --- /dev/null +++ b/MailHeaders/Lion/Message/NSInvocation-MailExtensions.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSInvocation.h" + +@interface NSInvocation (MailExtensions) ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object:(id)arg3; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 object4:(id)arg6; +- (void)invokeWithObject:(id)arg1; +@property(readonly) unsigned char priority; +@end + diff --git a/MailHeaders/Lion/Message/NSKeyedUnarchiver-Goodies.h b/MailHeaders/Lion/Message/NSKeyedUnarchiver-Goodies.h new file mode 100644 index 00000000..d42be78b --- /dev/null +++ b/MailHeaders/Lion/Message/NSKeyedUnarchiver-Goodies.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSKeyedUnarchiver.h" + +@interface NSKeyedUnarchiver (Goodies) ++ (id)safeUnarchiveObjectWithData:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSKeyedUnarchiverDelegate-Protocol.h b/MailHeaders/Lion/Message/NSKeyedUnarchiverDelegate-Protocol.h new file mode 100644 index 00000000..e613081b --- /dev/null +++ b/MailHeaders/Lion/Message/NSKeyedUnarchiverDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSKeyedUnarchiverDelegate + +@optional +- (Class)unarchiver:(id)arg1 cannotDecodeObjectOfClassName:(id)arg2 originalClasses:(id)arg3; +- (id)unarchiver:(id)arg1 didDecodeObject:(id)arg2; +- (void)unarchiver:(id)arg1 willReplaceObject:(id)arg2 withObject:(id)arg3; +- (void)unarchiverWillFinish:(id)arg1; +- (void)unarchiverDidFinish:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSLock-MessageAdditions.h b/MailHeaders/Lion/Message/NSLock-MessageAdditions.h new file mode 100644 index 00000000..cb5ce09b --- /dev/null +++ b/MailHeaders/Lion/Message/NSLock-MessageAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSLock.h" + +@interface NSLock (MessageAdditions) +- (void)waitForLock; +@end + diff --git a/MailHeaders/Lion/Message/NSLocking-Protocol.h b/MailHeaders/Lion/Message/NSLocking-Protocol.h new file mode 100644 index 00000000..0a805371 --- /dev/null +++ b/MailHeaders/Lion/Message/NSLocking-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSLocking +- (void)lock; +- (void)unlock; +@end + diff --git a/MailHeaders/Lion/Message/NSMachPortDelegate-Protocol.h b/MailHeaders/Lion/Message/NSMachPortDelegate-Protocol.h new file mode 100644 index 00000000..4d72b32e --- /dev/null +++ b/MailHeaders/Lion/Message/NSMachPortDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPortDelegate-Protocol.h" + +@protocol NSMachPortDelegate + +@optional +- (void)handleMachMessage:(void *)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSMapTable-MFLibraryIDWrapper.h b/MailHeaders/Lion/Message/NSMapTable-MFLibraryIDWrapper.h new file mode 100644 index 00000000..cf55b3ad --- /dev/null +++ b/MailHeaders/Lion/Message/NSMapTable-MFLibraryIDWrapper.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMapTable.h" + +@interface NSMapTable (MFLibraryIDWrapper) +- (id)initWithLibraryIDToStrongObjects; +- (id)initWithLibraryIDToWeakObjects; +- (id)initWithStrongObjectsToLibraryID; +- (id)initWithWeakObjectsToLibraryID; +- (id)initWithLibraryIDToLibraryID; +- (id)objectForLibraryID:(long long)arg1; +- (void)setObject:(id)arg1 forLibraryID:(long long)arg2; +- (void)setObjectIfNeeded:(id)arg1 forLibraryID:(long long)arg2; +- (void)removeObjectForLibraryID:(long long)arg1; +- (long long)libraryIDForLibraryID:(long long)arg1; +- (void)setLibraryID:(long long)arg1 forLibraryID:(long long)arg2; +- (void)setLibraryIDIfNeeded:(long long)arg1 forLibraryID:(long long)arg2; +- (void)removeLibraryIDForLibraryID:(long long)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSMutableArray-Convenience.h b/MailHeaders/Lion/Message/NSMutableArray-Convenience.h new file mode 100644 index 00000000..6e8f740d --- /dev/null +++ b/MailHeaders/Lion/Message/NSMutableArray-Convenience.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMutableArray.h" + +@interface NSMutableArray (Convenience) +- (unsigned long long)highestIndexOfObject:(id)arg1 inRange:(struct _NSRange)arg2; +- (BOOL)insertObjectIfAbsent:(id)arg1 usingSortFunction:(void *)arg2 context:(void *)arg3; +- (unsigned long long)mf_insertObjectIfAbsent:(id)arg1 usingComparator:(id)arg2; +- (void)addAbsentObjectsFromArray:(id)arg1; +- (BOOL)addObjectIfAbsent:(id)arg1; +- (BOOL)addObjectIfAbsentAccordingToEquals:(id)arg1; +- (void)addObjectsFromSet:(id)arg1; +- (void)removeObjectsFromSet:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSMutableArray-SortedArrayExtensions.h b/MailHeaders/Lion/Message/NSMutableArray-SortedArrayExtensions.h new file mode 100644 index 00000000..88069d7e --- /dev/null +++ b/MailHeaders/Lion/Message/NSMutableArray-SortedArrayExtensions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMutableArray.h" + +@interface NSMutableArray (SortedArrayExtensions) +- (unsigned long long)insertObject:(id)arg1 usingSortFunction:(void *)arg2 context:(void *)arg3; +- (unsigned long long)indexOfObject:(id)arg1 usingSortFunction:(void *)arg2 context:(void *)arg3; +- (unsigned long long)indexOfSimilarObject:(id)arg1 usingSortFunction:(void *)arg2 context:(void *)arg3; +- (BOOL)mf_containsObject:(id)arg1 usingComparator:(id)arg2; +- (unsigned long long)mf_insertObject:(id)arg1 usingComparator:(id)arg2; +- (unsigned long long)mf_removeObject:(id)arg1 usingComparator:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NSMutableAttributedString-MessageFrameworkAdditions.h b/MailHeaders/Lion/Message/NSMutableAttributedString-MessageFrameworkAdditions.h new file mode 100644 index 00000000..6e0059bb --- /dev/null +++ b/MailHeaders/Lion/Message/NSMutableAttributedString-MessageFrameworkAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMutableAttributedString.h" + +@interface NSMutableAttributedString (MessageFrameworkAdditions) +- (void)_removeAttachmentsAndReplaceWithCustomAttribute:(BOOL)arg1; +- (void)removeAllAttachments; +- (void)removeAllFormattingExceptAttachments; +- (void)removeQuotingDisplayAttributesInRange:(struct _NSRange)arg1; +- (void)fixQuotingDisplayAttributesInRange:(struct _NSRange)arg1; +- (void)changeQuoteLevelInRange:(struct _NSRange)arg1 by:(long long)arg2 undoManager:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Message/NSMutableCopying-Protocol.h b/MailHeaders/Lion/Message/NSMutableCopying-Protocol.h new file mode 100644 index 00000000..09f83293 --- /dev/null +++ b/MailHeaders/Lion/Message/NSMutableCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSMutableCopying +- (id)mutableCopyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSMutableData-MessageAdditions.h b/MailHeaders/Lion/Message/NSMutableData-MessageAdditions.h new file mode 100644 index 00000000..2d139933 --- /dev/null +++ b/MailHeaders/Lion/Message/NSMutableData-MessageAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMutableData.h" + +@interface NSMutableData (MessageAdditions) +- (void)appendCString:(const char *)arg1; +- (void)appendByte:(BOOL)arg1; +- (void)convertNetworkLineEndingsToUnix; +@end + diff --git a/MailHeaders/Lion/Message/NSMutableData-MimeDataEncoding.h b/MailHeaders/Lion/Message/NSMutableData-MimeDataEncoding.h new file mode 100644 index 00000000..524f060f --- /dev/null +++ b/MailHeaders/Lion/Message/NSMutableData-MimeDataEncoding.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMutableData.h" + +@interface NSMutableData (MimeDataEncoding) +- (void)appendQuotedPrintableDataForHeaderBytes:(const char *)arg1 length:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NSMutableData-RFC2231Support.h b/MailHeaders/Lion/Message/NSMutableData-RFC2231Support.h new file mode 100644 index 00000000..5ccc6c75 --- /dev/null +++ b/MailHeaders/Lion/Message/NSMutableData-RFC2231Support.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMutableData.h" + +@interface NSMutableData (RFC2231Support) +- (void)appendRFC2231CompliantValue:(id)arg1 forKey:(id)arg2 withEncodingHint:(unsigned int)arg3; +@end + diff --git a/MailHeaders/Lion/Message/NSMutableDictionary-Goodies.h b/MailHeaders/Lion/Message/NSMutableDictionary-Goodies.h new file mode 100644 index 00000000..139b8ec6 --- /dev/null +++ b/MailHeaders/Lion/Message/NSMutableDictionary-Goodies.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMutableDictionary.h" + +@interface NSMutableDictionary (Goodies) +- (void)setBool:(BOOL)arg1 forKey:(id)arg2; +- (void)setInteger:(long long)arg1 forKey:(id)arg2; +- (void)setFloat:(float)arg1 forKey:(id)arg2; +- (void)setCGFloat:(double)arg1 forKey:(id)arg2; +- (void)setSize:(struct CGSize)arg1 forKey:(id)arg2; +- (void)setObject:(id)arg1 forIntegerKey:(long long)arg2; +- (void)removeObjectForIntegerKey:(long long)arg1; +- (void)addObject:(id)arg1 forKey:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NSMutableDictionary-RFC2231Support.h b/MailHeaders/Lion/Message/NSMutableDictionary-RFC2231Support.h new file mode 100644 index 00000000..51389fe3 --- /dev/null +++ b/MailHeaders/Lion/Message/NSMutableDictionary-RFC2231Support.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMutableDictionary.h" + +@interface NSMutableDictionary (RFC2231Support) +- (void)fixupRFC2231ValuesWithSender:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSMutableSet-MessageAdditions.h b/MailHeaders/Lion/Message/NSMutableSet-MessageAdditions.h new file mode 100644 index 00000000..1c249ad8 --- /dev/null +++ b/MailHeaders/Lion/Message/NSMutableSet-MessageAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSMutableSet.h" + +@interface NSMutableSet (MessageAdditions) +- (id)uniquedObject:(id)arg1; +- (void)removeObjectsInArray:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSNotificationCenter-MainThreadPosting.h b/MailHeaders/Lion/Message/NSNotificationCenter-MainThreadPosting.h new file mode 100644 index 00000000..f1c37a67 --- /dev/null +++ b/MailHeaders/Lion/Message/NSNotificationCenter-MainThreadPosting.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSNotificationCenter.h" + +@interface NSNotificationCenter (MainThreadPosting) +- (void)postNotificationInMainThread:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSNumber-Goodies.h b/MailHeaders/Lion/Message/NSNumber-Goodies.h new file mode 100644 index 00000000..b66b576b --- /dev/null +++ b/MailHeaders/Lion/Message/NSNumber-Goodies.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSNumber.h" + +@interface NSNumber (Goodies) +- (id)localizedStringForMail; +@end + diff --git a/MailHeaders/Lion/Message/NSObject-MFZombies.h b/MailHeaders/Lion/Message/NSObject-MFZombies.h new file mode 100644 index 00000000..a4a7278e --- /dev/null +++ b/MailHeaders/Lion/Message/NSObject-MFZombies.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface NSObject (MFZombies) +- (BOOL)__canBecomeMFZombie; +- (void)__saveRRStacks; +- (void)__gatherRRStack; +- (BOOL)__becomeAnMFZombie; +@end + diff --git a/MailHeaders/Lion/Message/NSObject-MainThreadMessaging.h b/MailHeaders/Lion/Message/NSObject-MainThreadMessaging.h new file mode 100644 index 00000000..d3357880 --- /dev/null +++ b/MailHeaders/Lion/Message/NSObject-MainThreadMessaging.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface NSObject (MainThreadMessaging) +- (void)performSelectorOnMainThread:(SEL)arg1 waitUntilDone:(BOOL)arg2 result:(void *)arg3 args:(void *)arg4; +@end + diff --git a/MailHeaders/Lion/Message/NSObject-Protocol.h b/MailHeaders/Lion/Message/NSObject-Protocol.h new file mode 100644 index 00000000..69f3a363 --- /dev/null +++ b/MailHeaders/Lion/Message/NSObject-Protocol.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSObject +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +- (Class)superclass; +- (Class)class; +- (id)self; +- (struct _NSZone *)zone; +- (id)performSelector:(SEL)arg1; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2 withObject:(id)arg3; +- (BOOL)isProxy; +- (BOOL)isKindOfClass:(Class)arg1; +- (BOOL)isMemberOfClass:(Class)arg1; +- (BOOL)conformsToProtocol:(id)arg1; +- (BOOL)respondsToSelector:(SEL)arg1; +- (id)retain; +- (oneway void)release; +- (id)autorelease; +- (unsigned long long)retainCount; +- (id)description; +@end + diff --git a/MailHeaders/Lion/Message/NSObject-StackTraceAdditions.h b/MailHeaders/Lion/Message/NSObject-StackTraceAdditions.h new file mode 100644 index 00000000..a4ef37ea --- /dev/null +++ b/MailHeaders/Lion/Message/NSObject-StackTraceAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface NSObject (StackTraceAdditions) ++ (void)logStoredStackTracesForObject:(id)arg1; +- (void)storeStackTraceWithMessage:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSObject-ThreadingAdditions.h b/MailHeaders/Lion/Message/NSObject-ThreadingAdditions.h new file mode 100644 index 00000000..ff228036 --- /dev/null +++ b/MailHeaders/Lion/Message/NSObject-ThreadingAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface NSObject (ThreadingAdditions) +- (void)releaseOnMainThread; +@end + diff --git a/MailHeaders/Lion/Message/NSObject-_mf_LibraryMessageEquality.h b/MailHeaders/Lion/Message/NSObject-_mf_LibraryMessageEquality.h new file mode 100644 index 00000000..7d00c597 --- /dev/null +++ b/MailHeaders/Lion/Message/NSObject-_mf_LibraryMessageEquality.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface NSObject (_mf_LibraryMessageEquality) +- (long long)_mf_LibraryMessageLibraryID; +@end + diff --git a/MailHeaders/Lion/Message/NSOperationQueue-MFTaskOperation.h b/MailHeaders/Lion/Message/NSOperationQueue-MFTaskOperation.h new file mode 100644 index 00000000..02a2e2eb --- /dev/null +++ b/MailHeaders/Lion/Message/NSOperationQueue-MFTaskOperation.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSOperationQueue.h" + +@interface NSOperationQueue (MFTaskOperation) +- (void)addTaskOperation:(id)arg1 taskName:(id)arg2 priority:(unsigned char)arg3 canCancel:(BOOL)arg4; +@end + diff --git a/MailHeaders/Lion/Message/NSPersistentStoreCoordinator-MailAdditions.h b/MailHeaders/Lion/Message/NSPersistentStoreCoordinator-MailAdditions.h new file mode 100644 index 00000000..f06d0c34 --- /dev/null +++ b/MailHeaders/Lion/Message/NSPersistentStoreCoordinator-MailAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPersistentStoreCoordinator.h" + +@interface NSPersistentStoreCoordinator (MailAdditions) +- (id)_addSQLPersistentStoreFromPath:(id)arg1 URL:(id)arg2 type:(long long)arg3 recoveringFromError:(id)arg4; +- (id)addSQLPersistentStoreFromPath:(id)arg1 type:(long long)arg2 error:(id *)arg3; +@end + diff --git a/MailHeaders/Lion/Message/NSPortDelegate-Protocol.h b/MailHeaders/Lion/Message/NSPortDelegate-Protocol.h new file mode 100644 index 00000000..341d75cf --- /dev/null +++ b/MailHeaders/Lion/Message/NSPortDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSPortDelegate + +@optional +- (void)handlePortMessage:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSPortMessage-Goodies.h b/MailHeaders/Lion/Message/NSPortMessage-Goodies.h new file mode 100644 index 00000000..d483bb7d --- /dev/null +++ b/MailHeaders/Lion/Message/NSPortMessage-Goodies.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPortMessage.h" + +@interface NSPortMessage (Goodies) +- (void)safeSendNow; +- (void)safeSendBeforeDate:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSRunLoop-InternalMessageExtensions.h b/MailHeaders/Lion/Message/NSRunLoop-InternalMessageExtensions.h new file mode 100644 index 00000000..a8a23d55 --- /dev/null +++ b/MailHeaders/Lion/Message/NSRunLoop-InternalMessageExtensions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSRunLoop.h" + +@interface NSRunLoop (InternalMessageExtensions) ++ (BOOL)_flushQueuedEventsAddingSource:(BOOL)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSRunLoop-MessageExtensions.h b/MailHeaders/Lion/Message/NSRunLoop-MessageExtensions.h new file mode 100644 index 00000000..efd3d90c --- /dev/null +++ b/MailHeaders/Lion/Message/NSRunLoop-MessageExtensions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSRunLoop.h" + +@interface NSRunLoop (MessageExtensions) ++ (void)flushQueuedEvents; +@end + diff --git a/MailHeaders/Lion/Message/NSScanner-NSScannerUtils.h b/MailHeaders/Lion/Message/NSScanner-NSScannerUtils.h new file mode 100644 index 00000000..24f005f7 --- /dev/null +++ b/MailHeaders/Lion/Message/NSScanner-NSScannerUtils.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSScanner.h" + +@interface NSScanner (NSScannerUtils) +- (BOOL)scanStringOfLength:(unsigned long long)arg1 intoString:(id *)arg2; +- (BOOL)betterScanUpToCharactersFromSet:(id)arg1 intoString:(id *)arg2; +- (BOOL)scanEndIntoString:(id *)arg1; +- (id)nextTokenWithPunctuation:(id)arg1; +- (BOOL)scanUpAndOverString:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSSet-MessageAdditions.h b/MailHeaders/Lion/Message/NSSet-MessageAdditions.h new file mode 100644 index 00000000..be38b0df --- /dev/null +++ b/MailHeaders/Lion/Message/NSSet-MessageAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSSet.h" + +@interface NSSet (MessageAdditions) +- (BOOL)containsArray:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSSound-MessageAdditions.h b/MailHeaders/Lion/Message/NSSound-MessageAdditions.h new file mode 100644 index 00000000..ec55f5cd --- /dev/null +++ b/MailHeaders/Lion/Message/NSSound-MessageAdditions.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSSound.h" + +@interface NSSound (MessageAdditions) ++ (void)_playNextSound; ++ (void)_playSound; ++ (void)sound:(id)arg1 didFinishPlaying:(BOOL)arg2; ++ (void)_setupPlayList; ++ (void)_addSoundOrPathToPlayList:(id)arg1 playImmediately:(BOOL)arg2; ++ (void)addSoundToPlayList:(id)arg1 playImmediately:(BOOL)arg2; ++ (void)addSoundPathToPlayList:(id)arg1 playImmediately:(BOOL)arg2; ++ (id)validPathToSound:(id)arg1; ++ (id)systemLibrarySoundsDirs; ++ (id)librarySoundsDirs; ++ (id)networkLibrarySoundsDirs; ++ (id)tildeLibrarySoundsDirs; ++ (id)appendSoundsToPaths:(id)arg1; ++ (id)soundsAtPaths:(id)arg1; +- (void)_playAsMailSound; +@end + diff --git a/MailHeaders/Lion/Message/NSString-EmailAddressString.h b/MailHeaders/Lion/Message/NSString-EmailAddressString.h new file mode 100644 index 00000000..6192aa27 --- /dev/null +++ b/MailHeaders/Lion/Message/NSString-EmailAddressString.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@interface NSString (EmailAddressString) ++ (id)nameExtensions; ++ (id)nameExtensionsThatDoNotNeedCommas; ++ (id)partialSurnames; ++ (id)formattedAddressWithName:(id)arg1 email:(id)arg2 useQuotes:(BOOL)arg3; +- (id)uncommentedAddress; +- (id)uncommentedAddressRespectingGroups; +- (BOOL)isEmptyGroup; +- (id)addressComment; +- (void)firstName:(id *)arg1 middleName:(id *)arg2 lastName:(id *)arg3 extension:(id *)arg4; +- (BOOL)appearsToBeAnInitial; +- (id)addressList; +- (id)trimCommasSpacesQuotes; +- (id)componentsSeparatedByCommaRespectingQuotesAndParens; +- (id)componentsSeparatedByCharactersRespectingQuotesAndParens:(id)arg1; +- (id)searchStringComponents; +- (BOOL)isLegalEmailAddress; +- (id)addressDomain; +@end + diff --git a/MailHeaders/Lion/Message/NSString-FormatFlowedSupport.h b/MailHeaders/Lion/Message/NSString-FormatFlowedSupport.h new file mode 100644 index 00000000..3ba63093 --- /dev/null +++ b/MailHeaders/Lion/Message/NSString-FormatFlowedSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (FormatFlowedSupport) +- (id)convertFromFlowedText:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSString-IMAPNameEncoding.h b/MailHeaders/Lion/Message/NSString-IMAPNameEncoding.h new file mode 100644 index 00000000..67b78d2f --- /dev/null +++ b/MailHeaders/Lion/Message/NSString-IMAPNameEncoding.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (IMAPNameEncoding) +- (id)encodedIMAPMailboxName; +- (id)decodedIMAPMailboxName; +@end + diff --git a/MailHeaders/Lion/Message/NSString-LibraryID.h b/MailHeaders/Lion/Message/NSString-LibraryID.h new file mode 100644 index 00000000..430a51aa --- /dev/null +++ b/MailHeaders/Lion/Message/NSString-LibraryID.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (LibraryID) ++ (id)stringWithLibraryID:(long long)arg1; +- (id)initWithLibraryID:(long long)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSString-MimeCharsetSupport.h b/MailHeaders/Lion/Message/NSString-MimeCharsetSupport.h new file mode 100644 index 00000000..053bae91 --- /dev/null +++ b/MailHeaders/Lion/Message/NSString-MimeCharsetSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MimeCharsetSupport) +- (id)bestMimeCharsetUsingHint:(unsigned int)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSString-MimeEnrichedReader.h b/MailHeaders/Lion/Message/NSString-MimeEnrichedReader.h new file mode 100644 index 00000000..30599536 --- /dev/null +++ b/MailHeaders/Lion/Message/NSString-MimeEnrichedReader.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MimeEnrichedReader) ++ (id)htmlStringFromMimeRichTextString:(id)arg1; ++ (id)htmlStringFromMimeEnrichedString:(id)arg1; ++ (id)stringFromMimeEnrichedString:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSString-NSStringUtils.h b/MailHeaders/Lion/Message/NSString-NSStringUtils.h new file mode 100644 index 00000000..82f4fe21 --- /dev/null +++ b/MailHeaders/Lion/Message/NSString-NSStringUtils.h @@ -0,0 +1,58 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@interface NSString (NSStringUtils) ++ (id)messageIDStringWithDomainHint:(id)arg1; ++ (id)messageIDStringFromCidUrl:(id)arg1; ++ (id)stringWithData:(id)arg1 encoding:(unsigned long long)arg2; ++ (id)stringWithAttachmentCharacter; ++ (id)newUniqueIdString; +- (unsigned int)hexIntValue; +- (unsigned long long)hexLongLongValue; +- (id)smartCapitalizedString; +- (id)stringByReplacingString:(id)arg1 withString:(id)arg2; +- (id)stringByRemovingCharactersInSet:(id)arg1; +- (id)stringByReplacingCharactersInSet:(id)arg1 withCharacter:(unsigned short)arg2; +- (id)stringByApplyingBodyClassName:(id)arg1; +- (id)newStringByApplyingBodyClassName:(id)arg1; +- (id)stringByChangingBodyTagToDiv; +- (id)stringByRemovingLineEndingsForHTML; +- (id)stringByReplacingNonBreakingSpacesWithString:(id)arg1; +- (id)specialSlash; +- (id)stringByReplacingSlashesWithSpecialSlashes; +- (id)stringByReplacingSpecialSlashesWithSlashes; +- (id)stringByReplacingSpecialSlashesWith:(id)arg1; +- (BOOL)containsOnlyWhitespace; +- (BOOL)containsOnlyBreakingWhitespace; +- (id)stringByLocalizingReOrFwdPrefix; +- (unsigned long long)mf_effectivePrefixLengthOnlyRe:(BOOL)arg1; +- (void)mf_effectiveSubject:(id *)arg1 prefix:(id *)arg2; +- (unsigned long long)effectivePrefixLength; +- (BOOL)hasReplyPrefix; +- (id)mf_normalizedString; +- (id)stringSuitableForHTML; +- (id)stringWithNoExtraSpaces; +- (long long)compareAsInts:(id)arg1; +- (id)MD5Digest; +- (id)messageIDSubstring; +- (id)encodedMessageID; +- (id)encodedMessageIDString; +- (id)uniqueFilenameWithRespectToFilenames:(id)arg1; +- (long long)caseInsensitiveCompareExcludingXDash:(id)arg1; +- (id)componentsSeparatedByPattern:(id)arg1; +- (id)spotlightQueryStringWithQualifier:(int)arg1; +- (BOOL)isValidUniqueIdString; +- (id)feedURLString; +- (id)firstLine; +- (id)secondToLastPathComponent; +- (BOOL)hasPrefixIgnoreCaseAndDiacritics:(id)arg1; +- (BOOL)isEqualToStringIgnoreCaseAndDiacritics:(id)arg1; +- (BOOL)isEqualToStringIgnoringCase:(id)arg1; +- (id)validURLString; +- (id)percentEscapedURLString; +- (BOOL)isEqualExceptForFinalSlash:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSString-PathUtils.h b/MailHeaders/Lion/Message/NSString-PathUtils.h new file mode 100644 index 00000000..1f564367 --- /dev/null +++ b/MailHeaders/Lion/Message/NSString-PathUtils.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (PathUtils) ++ (id)pathWithDirectory:(id)arg1 filename:(id)arg2 extension:(id)arg3; ++ (void)resetBetterStringByResolvingSymlinksInPath; +- (id)uniquePathWithMaximumLength:(unsigned long long)arg1; +- (BOOL)deletePath; +- (BOOL)isSubdirectoryOfPath:(id)arg1; +- (id)stringByReallyAbbreviatingWithTildeInPath; +- (id)betterStringByResolvingSymlinksInPath; +@end + diff --git a/MailHeaders/Lion/Message/NSString-RFC2047Support.h b/MailHeaders/Lion/Message/NSString-RFC2047Support.h new file mode 100644 index 00000000..66ef8adc --- /dev/null +++ b/MailHeaders/Lion/Message/NSString-RFC2047Support.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (RFC2047Support) +- (id)encodedHeaderData; +- (id)encodedHeaderDataWithEncodingHint:(unsigned int)arg1; +- (id)encodedHeaderDataWithEncodingHint:(unsigned int)arg1 encodingUsed:(unsigned int *)arg2; +- (id)decodeMimeHeaderValue; +- (id)decodeMimeHeaderValueWithCharsetHint:(id)arg1; +- (id)decodeMimeAddressList; +@end + diff --git a/MailHeaders/Lion/Message/NSString-StationeryUtilities.h b/MailHeaders/Lion/Message/NSString-StationeryUtilities.h new file mode 100644 index 00000000..f23a71c1 --- /dev/null +++ b/MailHeaders/Lion/Message/NSString-StationeryUtilities.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (StationeryUtilities) +- (id)urlStringByIncrementingCompositeVersionNumber; +- (id)urlStringByInsertingCompositeVersionNumber; +@end + diff --git a/MailHeaders/Lion/Message/NSString-iCalInvitationSupport.h b/MailHeaders/Lion/Message/NSString-iCalInvitationSupport.h new file mode 100644 index 00000000..163ea30d --- /dev/null +++ b/MailHeaders/Lion/Message/NSString-iCalInvitationSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (iCalInvitationSupport) +- (BOOL)isICalInvitation; +@end + diff --git a/MailHeaders/Lion/Message/NSTextAttachment-MimeSupport.h b/MailHeaders/Lion/Message/NSTextAttachment-MimeSupport.h new file mode 100644 index 00000000..1c8af231 --- /dev/null +++ b/MailHeaders/Lion/Message/NSTextAttachment-MimeSupport.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextAttachment.h" + +@interface NSTextAttachment (MimeSupport) +- (unsigned long long)approximateSize; +- (id)mimePart; +- (BOOL)hasBeenDownloaded; +- (BOOL)isPlaceholder; +- (BOOL)shouldDownloadAttachmentOnDisplay; +- (id)internalAppleAttachmentData; +@end + diff --git a/MailHeaders/Lion/Message/NSTextAttachment-iCalInvitationSupport.h b/MailHeaders/Lion/Message/NSTextAttachment-iCalInvitationSupport.h new file mode 100644 index 00000000..ab88dac0 --- /dev/null +++ b/MailHeaders/Lion/Message/NSTextAttachment-iCalInvitationSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextAttachment.h" + +@interface NSTextAttachment (iCalInvitationSupport) +- (BOOL)isICalInvitation; +@end + diff --git a/MailHeaders/Lion/Message/NSURL-Goodies.h b/MailHeaders/Lion/Message/NSURL-Goodies.h new file mode 100644 index 00000000..06892a12 --- /dev/null +++ b/MailHeaders/Lion/Message/NSURL-Goodies.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSURL.h" + +@interface NSURL (Goodies) +- (id)completePath; +- (BOOL)isReallyCaseSensitivelyEqual:(id)arg1; +@end + diff --git a/MailHeaders/Lion/Message/NSURLConnectionDelegate-Protocol.h b/MailHeaders/Lion/Message/NSURLConnectionDelegate-Protocol.h new file mode 100644 index 00000000..c12b8458 --- /dev/null +++ b/MailHeaders/Lion/Message/NSURLConnectionDelegate-Protocol.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSURLConnectionDelegate + +@optional +- (id)connection:(id)arg1 willSendRequest:(id)arg2 redirectResponse:(id)arg3; +- (id)connection:(id)arg1 needNewBodyStream:(id)arg2; +- (BOOL)connection:(id)arg1 canAuthenticateAgainstProtectionSpace:(id)arg2; +- (void)connection:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (void)connection:(id)arg1 willSendRequestForAuthenticationChallenge:(id)arg2; +- (void)connection:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (BOOL)connectionShouldUseCredentialStorage:(id)arg1; +- (void)connection:(id)arg1 didReceiveResponse:(id)arg2; +- (void)connection:(id)arg1 didReceiveData:(id)arg2; +- (void)connection:(id)arg1 didSendBodyData:(long long)arg2 totalBytesWritten:(long long)arg3 totalBytesExpectedToWrite:(long long)arg4; +- (void)connectionDidFinishLoading:(id)arg1; +- (void)connection:(id)arg1 didFailWithError:(id)arg2; +- (id)connection:(id)arg1 willCacheResponse:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NSURLDownloadDelegate-Protocol.h b/MailHeaders/Lion/Message/NSURLDownloadDelegate-Protocol.h new file mode 100644 index 00000000..f2092c32 --- /dev/null +++ b/MailHeaders/Lion/Message/NSURLDownloadDelegate-Protocol.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ +#import "NSU + +@protocol NSURLDownloadDelegate + +@optional +- (void)downloadDidBegin:(id)arg1; +- (id)download:(id)arg1 willSendRequest:(id)arg2 redirectResponse:(id)arg3; +- (BOOL)download:(id)arg1 canAuthenticateAgainstProtectionSpace:(id)arg2; +- (void)download:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (void)download:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (BOOL)downloadShouldUseCredentialStorage:(id)arg1; +- (void)download:(id)arg1 didReceiveResponse:(id)arg2; +- (void)download:(id)arg1 willResumeWithResponse:(id)arg2 fromByte:(long long)arg3; +- (void)download:(id)arg1 didReceiveDataOfLength:(unsigned long long)arg2; +- (BOOL)download:(id)arg1 shouldDecodeSourceDataOfMIMEType:(id)arg2; +- (void)download:(id)arg1 decideDestinationWithSuggestedFilename:(id)arg2; +- (void)download:(id)arg1 didCreateDestination:(id)arg2; +- (void)downloadDidFinish:(id)arg1; +- (void)download:(id)arg1 didFailWithError:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NSUserDefaults-MessageAdditions.h b/MailHeaders/Lion/Message/NSUserDefaults-MessageAdditions.h new file mode 100644 index 00000000..e181f816 --- /dev/null +++ b/MailHeaders/Lion/Message/NSUserDefaults-MessageAdditions.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSUserDefaults.h" + +@class MailAccount, NSColor, NSString; + +@interface NSUserDefaults (MessageAdditions) +@property(retain) NSString *downloadDirectoryPath; +@property(readonly) NSString *autoDownloadDirectoryPath; +@property BOOL junkMailTransitionHasBeenShown; +@property long long junkMailDaysTillOfferingTransition; +@property BOOL junkMailTrustHeaders; +@property long long junkMailBehavior; +@property BOOL junkMailEvaluationAfterRules; +@property(readonly) double autoSaveDelay; +@property(readonly) double autoSaveStoreDelay; +@property BOOL autosaveWindows; +@property(retain) MailAccount *defaultNoteAccount; +@property(readonly) BOOL allowArrowKeyMainWindowFocusChange; +@property(readonly) NSColor *notePaperColor; +@property(readonly) NSColor *userNotePaperColor; +@property(readonly) NSColor *defaultNotePaperColor; +- (id)displayNameForFlagColor:(BOOL)arg1; +- (void)setDisplayName:(id)arg1 forFlagColor:(BOOL)arg2; +- (id)_mf_objectForKey:(id)arg1 version:(unsigned long long)arg2; +- (void)_mf_setObject:(id)arg1 forKey:(id)arg2 version:(unsigned long long)arg3; +@end + diff --git a/MailHeaders/Lion/Message/NSXMLParserDelegate-Protocol.h b/MailHeaders/Lion/Message/NSXMLParserDelegate-Protocol.h new file mode 100644 index 00000000..a3ea50b8 --- /dev/null +++ b/MailHeaders/Lion/Message/NSXMLParserDelegate-Protocol.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSXMLParserDelegate + +@optional +- (void)parserDidStartDocument:(id)arg1; +- (void)parserDidEndDocument:(id)arg1; +- (void)parser:(id)arg1 foundNotationDeclarationWithName:(id)arg2 publicID:(id)arg3 systemID:(id)arg4; +- (void)parser:(id)arg1 foundUnparsedEntityDeclarationWithName:(id)arg2 publicID:(id)arg3 systemID:(id)arg4 notationName:(id)arg5; +- (void)parser:(id)arg1 foundAttributeDeclarationWithName:(id)arg2 forElement:(id)arg3 type:(id)arg4 defaultValue:(id)arg5; +- (void)parser:(id)arg1 foundElementDeclarationWithName:(id)arg2 model:(id)arg3; +- (void)parser:(id)arg1 foundInternalEntityDeclarationWithName:(id)arg2 value:(id)arg3; +- (void)parser:(id)arg1 foundExternalEntityDeclarationWithName:(id)arg2 publicID:(id)arg3 systemID:(id)arg4; +- (void)parser:(id)arg1 didStartElement:(id)arg2 namespaceURI:(id)arg3 qualifiedName:(id)arg4 attributes:(id)arg5; +- (void)parser:(id)arg1 didEndElement:(id)arg2 namespaceURI:(id)arg3 qualifiedName:(id)arg4; +- (void)parser:(id)arg1 didStartMappingPrefix:(id)arg2 toURI:(id)arg3; +- (void)parser:(id)arg1 didEndMappingPrefix:(id)arg2; +- (void)parser:(id)arg1 foundCharacters:(id)arg2; +- (void)parser:(id)arg1 foundIgnorableWhitespace:(id)arg2; +- (void)parser:(id)arg1 foundProcessingInstructionWithTarget:(id)arg2 data:(id)arg3; +- (void)parser:(id)arg1 foundComment:(id)arg2; +- (void)parser:(id)arg1 foundCDATA:(id)arg2; +- (id)parser:(id)arg1 resolveExternalEntityName:(id)arg2 systemID:(id)arg3; +- (void)parser:(id)arg1 parseErrorOccurred:(id)arg2; +- (void)parser:(id)arg1 validationErrorOccurred:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Message/NTLMAuthScheme.h b/MailHeaders/Lion/Message/NTLMAuthScheme.h new file mode 100644 index 00000000..4b6feb22 --- /dev/null +++ b/MailHeaders/Lion/Message/NTLMAuthScheme.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface NTLMAuthScheme : AuthScheme +{ +} + +- (BOOL)requiresDomain; +- (id)name; +- (id)humanReadableName; +- (BOOL)hasEncryption; +- (long long)securityLevel; +- (unsigned int)applescriptScheme; + +@end + diff --git a/MailHeaders/Lion/Message/NeXTMbox.h b/MailHeaders/Lion/Message/NeXTMbox.h new file mode 100644 index 00000000..570b2a6a --- /dev/null +++ b/MailHeaders/Lion/Message/NeXTMbox.h @@ -0,0 +1,65 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSData, TableOfContents; + +@interface NeXTMbox : MessageStore +{ + NSData *_mboxData; + TableOfContents *_toc; + BOOL _mboxIsOnSMB; + BOOL _haveUpdatedMetadata; + BOOL _importMode; + BOOL _rebuildingTOC; + NSData *_incomingMboxData; +} + ++ (BOOL)createEmptyStoreForPath:(id)arg1; ++ (BOOL)storeAtPathIsWritable:(id)arg1; ++ (BOOL)cheapStoreAtPathIsEmpty:(id)arg1; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (void)_releaseMboxData; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (id)incomingMessages; +- (id)messagesForImporter; +- (void)updateMetadata; +- (id)_lockFilePath; +- (void)_invalidate; +- (void)writeUpdatedMessageDataToDisk; +- (BOOL)canRebuild; +- (void)_rebuildTableOfContentsSynchronously; +- (void)_flushAllMessageData; +- (BOOL)tableOfContents:(id)arg1 loadedMessages:(id)arg2; +- (void)_resetAllMessages; +- (id)messageForMessageID:(id)arg1; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (BOOL)canCompact; +- (void)_compactMessageAtIndex:(unsigned long long)arg1; +- (void)doCompact; +- (void)_deleteAttachments:(id)arg1; +- (id)_appendMessage:(id)arg1 toFile:(id)arg2; +- (void)_addIDsForAppendedMessages:(id)arg1 toArray:(id)arg2; +- (int)_appendMessages:(id)arg1 successes:(id *)arg2 failures:(id *)arg3 mboxName:(id)arg4 tableOfContents:(id)arg5; +- (BOOL)allowsAppend; +- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6 error:(id *)arg7; +- (int)undoAppendOfMessageIDs:(id)arg1; +- (void)_incorporateMailFromIncoming; +- (int)_writeMessagesToIncomingMail:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3; +- (void)suggestSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (id)sortOrder; +- (BOOL)isSortedAscending; +- (BOOL)_shouldCallCompactWhenClosing; +@property BOOL rebuildingTOC; // @synthesize rebuildingTOC=_rebuildingTOC; + +@end + diff --git a/MailHeaders/Lion/Message/NetworkController.h b/MailHeaders/Lion/Message/NetworkController.h new file mode 100644 index 00000000..9e14beda --- /dev/null +++ b/MailHeaders/Lion/Message/NetworkController.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableSet, NSString, NSTimer; + +@interface NetworkController : NSObject +{ + struct __SCDynamicStore *_store; + NSString *_dnsKey; + NSString *_domainName; + NSTimer *_notificationTimer; + NSMutableSet *_watchedHosts; + BOOL _waitingForDialToFinish; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; ++ (long long)networkStatus; ++ (id)filteredIPAddressesFromHost:(id)arg1; ++ (id)filteredDomainNamesFromHost:(id)arg1; ++ (id)newPrimaryEthernetAddressString; ++ (id)subnetForIPAddress:(id)arg1; ++ (id)baseDomainsForDomains:(id)arg1; ++ (BOOL)hostnameIsFullyQualified:(id)arg1; ++ (BOOL)domain:(id)arg1 isSubdomainOfDomain:(id)arg2; ++ (id)applyIDNAToHostname:(id)arg1 encode:(BOOL)arg2; ++ (id)encodeAddressForIDNA:(id)arg1 encodingHint:(unsigned int)arg2; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)domainName; +- (void)_postNetworkChangeNotification:(id)arg1; +- (BOOL)isHostReachable:(id)arg1; +- (void)_triggerDialForHostname:(id)arg1; +- (void)startWatchingReachabilityOfHost:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/NetworkLocation.h b/MailHeaders/Lion/Message/NetworkLocation.h new file mode 100644 index 00000000..731f6c92 --- /dev/null +++ b/MailHeaders/Lion/Message/NetworkLocation.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableDictionary; + +@interface NetworkLocation : NSObject +{ + NSMutableDictionary *_accountDefaults; + NSMutableDictionary *_domainsBySubnet; +} + +- (id)init; +- (id)initWithDomains:(id)arg1 IPAddresses:(id)arg2; +- (id)initWithArchive:(id)arg1; +- (void)dealloc; +- (id)archive; +- (void)addDomains:(id)arg1 IPAddresses:(id)arg2; +- (id)domains; +- (id)subnets; +- (BOOL)isForIPAddress:(id)arg1; +- (BOOL)isForDomain:(id)arg1; +- (id)deliveryAccountForAccount:(id)arg1; +- (void)setAccount:(id)arg1 deliveryAccount:(id)arg2; +- (id)bestDeliveryAccountForAccount:(id)arg1 ignoreLockedDelivery:(BOOL)arg2; +- (void)_postChanged; +- (BOOL)isEqual:(id)arg1; +- (BOOL)isEqualToLocation:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/OutgoingMessage.h b/MailHeaders/Lion/Message/OutgoingMessage.h new file mode 100644 index 00000000..a3974107 --- /dev/null +++ b/MailHeaders/Lion/Message/OutgoingMessage.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "Message.h" + +@class MutableMessageHeaders, NSData, NSString, _OutgoingMessageBody; + +@interface OutgoingMessage : Message +{ + NSString *_remoteID; + NSString *_existingRemoteID; + NSData *_rawData; + _OutgoingMessageBody *_messageBody; + MutableMessageHeaders *_messageHeaders; + unsigned long long _localAttachmentsSize; +} + +- (id)init; +- (void)dealloc; +- (id)bodyData; +- (id)bodyDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)messageStore; +- (id)messageBody; +- (void)setMessageBody:(id)arg1; +- (id)messageBodyIfAvailable; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (id)messageDataIncludingFromSpace:(BOOL)arg1; +- (id)headers; +- (id)headersIfAvailable; +- (unsigned long long)messageSize; +- (void)setRawData:(id)arg1; +- (void)setLocalAttachmentsSize:(unsigned long long)arg1; +- (void)setRemoteID:(id)arg1; +- (id)remoteID; +@property(retain, nonatomic) NSString *existingRemoteID; // @synthesize existingRemoteID=_existingRemoteID; +@property(retain, nonatomic) MutableMessageHeaders *mutableHeaders; // @synthesize mutableHeaders=_messageHeaders; + +@end + diff --git a/MailHeaders/Lion/Message/POP3Connection.h b/MailHeaders/Lion/Message/POP3Connection.h new file mode 100644 index 00000000..0aad136e --- /dev/null +++ b/MailHeaders/Lion/Message/POP3Connection.h @@ -0,0 +1,80 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray, NSData, NSMutableData; + +@interface POP3Connection : Connection +{ + NSMutableData *_sendBuffer; + struct __CFDictionary *_listResults; + struct __CFDictionary *_serverMessageIdsByNumber; + unsigned long long _numberOfMessagesAvailable; + id _delegate; + id _context; + long long _activityMonitorKey; + unsigned long long _numberOfMessagesToFetch; + unsigned long long _numberOfMessagesFetched; + unsigned long long _totalBytesToFetch; + unsigned long long _totalBytesReceived; + NSData *_apopTimeStamp; + NSArray *_capabilities; + BOOL _capaCommandFailed; + BOOL _connectionShouldPrefetchMessages; + BOOL _currentlyFetchingMessage; +} + +- (id)init; +- (void)dealloc; +- (id)capabilities; +- (id)authenticationMechanisms; +- (BOOL)_teardownConnectionWithResult:(BOOL)arg1; +- (BOOL)authenticateUsingAccount:(id)arg1; +- (BOOL)_authenticateUsingAccount:(id)arg1 authenticator:(id)arg2; +- (long long)_authenticateUsingHostname:(id)arg1 username:(id)arg2 password:(id)arg3 authScheme:(id)arg4 authenticator:(id)arg5; +- (long long)_apopAuthenticateWithUsername:(id)arg1 password:(id)arg2; +- (long long)_authenticateWithUsername:(id)arg1 password:(id)arg2; +- (int)quit; +- (BOOL)supportsUSER; +- (BOOL)supportsAPOP; +- (int)doStat; +- (int)_getListResults; +- (int)getMessageNumbers:(const struct __CFArray **)arg1 andMessageIdsByNumber:(const struct __CFDictionary **)arg2; +- (id)messageIDForMessageNumber:(unsigned long long)arg1; +- (void)setMessageID:(id)arg1 forMessageNumber:(unsigned long long)arg2; +- (id)_newDataForMessage:(unsigned long long)arg1 ofSize:(unsigned long long)arg2 informDelegate:(BOOL)arg3; +- (int)_retr:(unsigned long long)arg1; +- (int)dele:(unsigned long long)arg1; +- (id)newMessageHeaderForMessageNumber:(unsigned long long)arg1; +- (void)getTopOfMessageNumber:(unsigned long long)arg1 intoMutableData:(id)arg2; +- (unsigned long long)sizeOfMessageNumber:(unsigned long long)arg1; +- (BOOL)messagesAvailable; +- (unsigned long long)numberOfMessagesAvailable; +- (int)fetchMessages:(struct __CFArray *)arg1 totalBytes:(unsigned long long)arg2; +- (int)deleteMessagesOnServer:(struct __CFArray *)arg1; +- (void)setDelegate:(id)arg1 context:(id)arg2; +- (BOOL)_startTLSForHostname:(id)arg1 onPort:(unsigned int)arg2 securityLayerType:(long long)arg3 accountClass:(Class)arg4; +- (long long)_startTLSForSecurityLayerType:(long long)arg1; +- (int)_readMultilineResponseWithMaxSize:(unsigned long long)arg1 intoMutableData:(id)arg2 informDelegate:(BOOL)arg3; +- (int)_sendCommand:(const char *)arg1 dontLogIndex:(long long)arg2 withArguments:(id)arg3; +- (id)_copyReplyLineDataWithError:(id *)arg1; +- (id)_copyReplyLineData; +- (void)_parsePOPErrorFromData:(id)arg1 error:(id)arg2; +- (int)_getStatusFromReply; +- (int)_apopWithUsername:(id)arg1 password:(id)arg2; +- (int)_user:(id)arg1; +- (int)_pass:(id)arg1; +@property(nonatomic) long long activityMonitorKey; // @synthesize activityMonitorKey=_activityMonitorKey; +@property(nonatomic) BOOL currentlyFetchingMessage; // @synthesize currentlyFetchingMessage=_currentlyFetchingMessage; +@property(nonatomic) unsigned long long totalBytesReceived; // @synthesize totalBytesReceived=_totalBytesReceived; +@property(nonatomic) unsigned long long totalBytesToFetch; // @synthesize totalBytesToFetch=_totalBytesToFetch; +@property(nonatomic) unsigned long long numberOfMessagesFetched; // @synthesize numberOfMessagesFetched=_numberOfMessagesFetched; +@property(nonatomic) unsigned long long numberOfMessagesToFetch; // @synthesize numberOfMessagesToFetch=_numberOfMessagesToFetch; +@property(retain, nonatomic) id context; // @synthesize context=_context; + +@end + diff --git a/MailHeaders/Lion/Message/POP3ConnectionDelegate-Protocol.h b/MailHeaders/Lion/Message/POP3ConnectionDelegate-Protocol.h new file mode 100644 index 00000000..916612ad --- /dev/null +++ b/MailHeaders/Lion/Message/POP3ConnectionDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol POP3ConnectionDelegate +- (void)connection:(id)arg1 receivedNumberOfBytes:(unsigned long long)arg2; +- (long long)connection:(id)arg1 willRetrieveMessageNumber:(unsigned long long)arg2 header:(id)arg3 size:(unsigned long long)arg4; +- (void)connection:(id)arg1 didRetrieveData:(id)arg2 forMessageNumber:(unsigned long long)arg3; +- (BOOL)connectionShouldPrefetchMessages; +@end + diff --git a/MailHeaders/Lion/Message/POP3FetchStore.h b/MailHeaders/Lion/Message/POP3FetchStore.h new file mode 100644 index 00000000..98668d3f --- /dev/null +++ b/MailHeaders/Lion/Message/POP3FetchStore.h @@ -0,0 +1,63 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "POP3ConnectionDelegate-Protocol.h" +#import "RouterStore-Protocol.h" + +@class NSMutableSet; + +@interface POP3FetchStore : MessageStore +{ + BOOL _lastConnectionFailed; + BOOL _routerCancelled; + NSMutableSet *_skippedMessageIds; + struct __CFArray *_messageNumbersToDelete; +} + +- (id)initWithPOPAccount:(id)arg1; +- (id)init; +- (id)initWithMailboxUid:(id)arg1 readOnly:(BOOL)arg2; +- (void)dealloc; +- (void)deleteMessages:(id)arg1; +- (void)fetchSynchronously; +- (BOOL)_createDirectoryIfNeeded; +- (id)_authenticatedConnection; +- (void)_backgroundFetchFailed:(id)arg1; +- (BOOL)_firstAndLast:(unsigned long long)arg1 onConnection:(id)arg2 alreadySeen:(id)arg3; +- (id)_messageIDForNumber:(unsigned long long)arg1 serverIdsByNumber:(struct __CFDictionary *)arg2 connection:(id)arg3; +- (BOOL)_shouldDeleteSeenMessage:(id)arg1 messageID:(id)arg2 deletionPolicy:(int)arg3 cutoffDate:(id)arg4 url:(id)arg5 inbox:(id)arg6; +- (void)_removeDeletedMessagesWithNumbers:(struct __CFArray *)arg1 fromSeenMessageManager:(id)arg2 connection:(id)arg3; +- (void)_deleteMessagesMarkedForDeletionUsingManager:(id)arg1; +- (int)_closeConnection:(id)arg1; +- (void)_addMessageNumberToDelete:(unsigned long long)arg1; +- (void)_clearMessageNumbersToDelete; +- (struct __CFArray *)_copyMessageNumbersToDelete; +- (id)mailboxUid; +- (BOOL)isOpened; +- (id)displayName; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)messageForMessageID:(id)arg1; +- (void)writeUpdatedMessageDataToDisk; +- (void)_setNeedsAutosave; +- (void)_cancelAutosave; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (BOOL)connectionShouldPrefetchMessages; +- (void)connection:(id)arg1 receivedNumberOfBytes:(unsigned long long)arg2; +- (long long)connection:(id)arg1 willRetrieveMessageNumber:(unsigned long long)arg2 header:(id)arg3 size:(unsigned long long)arg4; +- (void)connection:(id)arg1 didRetrieveData:(id)arg2 forMessageNumber:(unsigned long long)arg3; +- (void)cancel; +- (id)_defaultRouterDestination; +- (void)messagesWillBeRouted:(id)arg1; +- (void)messagesWereRouted:(id)arg1; +@property BOOL routerCancelled; // @synthesize routerCancelled=_routerCancelled; + +@end + diff --git a/MailHeaders/Lion/Message/POPAccount.h b/MailHeaders/Lion/Message/POPAccount.h new file mode 100644 index 00000000..042b0e62 --- /dev/null +++ b/MailHeaders/Lion/Message/POPAccount.h @@ -0,0 +1,80 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class ActivityMonitor, NSLock, POP3FetchStore; + +@interface POPAccount : MailAccount +{ + POP3FetchStore *_fetcher; + ActivityMonitor *_fetchMonitor; + NSLock *_connectionActivityLock; + id _seenMessagesManagerLock; + BOOL _fetcherNeedsReset; + BOOL _deletingMessages; + BOOL _hasDoneBackgroundSynchronization; +} + ++ (id)accountTypeString; +- (id)initWithAccountInfo:(id)arg1; +- (void)dealloc; +- (void)finalize; +- (BOOL)supportsNotes; +- (BOOL)_configureFetcherObject; +- (void)fetchSynchronously; +- (void)resetFetcher; +- (void)releaseAllConnections; +- (id)iaServiceType; +- (BOOL)canGoOffline; +- (void)setIsOffline:(BOOL)arg1; +- (void)_readCustomInfoFromMailboxCache:(id)arg1; +- (void)updateFromSyncedDictionary:(id)arg1; +- (unsigned int)defaultPortNumber; +- (unsigned int)defaultSecurePortNumber; +- (id)serviceName; +- (id)secureServiceName; +- (id)saslProfileName; +- (BOOL)requiresAuthentication; +- (Class)storeClass; +- (Class)connectionClass; +- (BOOL)isSyncable; +- (id)mailboxPathExtension; +- (id)primaryMailboxUid; +- (BOOL)containsMailboxes; +- (BOOL)canCreateNewMailboxes; +- (BOOL)canMailboxBeRenamed:(id)arg1; +- (BOOL)_setPath:(id)arg1; +- (long long)bigMessageWarningSize; +- (void)setBigMessageWarningSize:(long long)arg1; +- (BOOL)didTryUpgradingToAPOP; +- (void)setDidTryUpgradingToAPOP:(BOOL)arg1; +- (void)setMessageDeletionPolicy:(int)arg1; +- (void)setDelayedMessageDeletionInterval:(unsigned long long)arg1; +- (int)messageDeletionPolicy; +- (unsigned long long)delayedMessageDeletionInterval; +- (BOOL)deletingMessages; +- (void)deleteMessagesNow:(id)arg1; +- (void)deleteSeenMessagesNow; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)acquireConnectionActivityLock; +- (void)relinquishConnectionActivityLock; +- (id)archiveMailboxUidCreateIfNeeded:(BOOL)arg1; +- (id)newSeenMessagesManager; +- (void)_addAccountAndSeenMessagesToMessageManager; +- (id)_URLPersistenceScheme; +- (id)_infoForMatchingURL:(id)arg1; +- (id)storeForMailboxUid:(id)arg1 createIfNeeded:(BOOL)arg2; +- (BOOL)deleteMessagesWhenMovedFromInbox; +- (void)setDeleteMessagesWhenMovedFromInbox:(BOOL)arg1; +- (BOOL)deleteMessagesOnServer; +- (void)setDeleteMessagesOnServer:(BOOL)arg1; +- (id)mailboxes; +- (id)objectSpecifierForMailboxUid:(id)arg1; +- (id)valueInMailboxesWithName:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/POPMessage.h b/MailHeaders/Lion/Message/POPMessage.h new file mode 100644 index 00000000..e5e0922d --- /dev/null +++ b/MailHeaders/Lion/Message/POPMessage.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSData, NSString; + +@interface POPMessage : Message +{ + unsigned long long _messageNumber; + NSString *_messageID; + NSData *_messageData; +} + +- (id)initWithPOP3FetchStore:(id)arg1; +- (void)dealloc; +- (void)finalize; +- (unsigned long long)messageNumber; +- (void)setMessageNumber:(unsigned long long)arg1; +- (id)messageData; +- (void)setMessageData:(id)arg1; +- (unsigned long long)messageSize; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (id)messageID; +- (void)setMessageID:(id)arg1; +- (id)remoteMailboxURL; +- (id)originalMailboxURL; + +@end + diff --git a/MailHeaders/Lion/Message/POPSizeEngine.h b/MailHeaders/Lion/Message/POPSizeEngine.h new file mode 100644 index 00000000..e4bce473 --- /dev/null +++ b/MailHeaders/Lion/Message/POPSizeEngine.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableDictionary; + +@interface POPSizeEngine : SizeEngine +{ + NSMutableDictionary *_infoByMessageID; +} + +- (id)initWithAccount:(id)arg1; +- (void)dealloc; +- (id)allMessageIDs; +- (id)infoWithKey:(id)arg1 forMessageWithID:(id)arg2; +- (id)_newMessageInfoFromMessageHeaders:(id)arg1; +- (id)_remoteMailboxURL; +- (void)_runWorkerThread; +- (BOOL)_prepareToRefresh; +- (void)_fetchCompleted:(id)arg1; +- (void)_deleteServerMessagesCompleted:(id)arg1; +- (void)_messageFlagsChanged:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/ParentalControlAccount.h b/MailHeaders/Lion/Message/ParentalControlAccount.h new file mode 100644 index 00000000..e6d9370b --- /dev/null +++ b/MailHeaders/Lion/Message/ParentalControlAccount.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface ParentalControlAccount : LocalAccount +{ +} + ++ (void)initialize; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)parentalControlAccount; ++ (id)originalAccountForIncomingMailbox:(id)arg1; ++ (id)allMailboxes; ++ (id)mailboxForAccount:(id)arg1; ++ (id)storeForMailbox:(id)arg1; ++ (id)storeForAccount:(id)arg1; ++ (id)_mailboxNameForAccount:(id)arg1; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (BOOL)isSyncable; +- (Class)storeClass; +- (id)mailboxPathExtension; +- (BOOL)supportsNotes; + +@end + diff --git a/MailHeaders/Lion/Message/ParentalControlManager.h b/MailHeaders/Lion/Message/ParentalControlManager.h new file mode 100644 index 00000000..8b4b484e --- /dev/null +++ b/MailHeaders/Lion/Message/ParentalControlManager.h @@ -0,0 +1,67 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class InvocationQueue, NSDate, NSMutableArray, NSMutableSet; + +@interface ParentalControlManager : NSObject +{ + NSMutableSet *_pcStores; + InvocationQueue *_tasks; + NSDate *_lastCleanupDate; + NSMutableArray *_recentRequests; + BOOL _isDirty; + BOOL _recentRequestsDirty; + NSMutableSet *_pendingRequests; +} + ++ (id)sharedManager; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)parentalControlDirectory; +- (BOOL)isInSpamProtectionMode; +- (id)headersRequiredForParentalControl; +- (void)deleteAccount:(id)arg1; +- (void)_cleanupPCStoresAfterDelay:(double)arg1; +- (void)_approveSenders:(id)arg1 sourcePCMailbox:(id)arg2 destinationAccount:(id)arg3; +- (void)_rejectSenders:(id)arg1 sourcePCMailbox:(id)arg2; +- (id)_openStoreForPCMailbox:(id)arg1 keepOpen:(BOOL)arg2; +- (id)_openStoreForPCMailbox:(id)arg1; +- (id)_openPCStoreForAccount:(id)arg1; +- (id)_makeRequestMessageForMessage:(id)arg1 isOutgoingMessage:(BOOL)arg2; +- (id)_deliverMessage:(id)arg1; +- (id)_recentRequestsFilePath; +- (id)_recentRequestsNoLock; +- (BOOL)_hasRecentlySentPermissionRequestForSender:(id)arg1; +- (void)_removeSendersFromRecentRequests:(id)arg1; +- (BOOL)_hasPendingRequestForSender:(id)arg1; +- (void)_requestApprovalForIncomingMessage:(id)arg1 srcStore:(id)arg2 pcStore:(id)arg3 messageInPCStore:(id)arg4; +- (void)_reallyRequestApprovalForIncomingMessage:(id)arg1 srcStore:(id)arg2 pcStore:(id)arg3 messageInPCStore:(id)arg4; +- (void)_approveAddresses:(id)arg1 responseFromAccount:(id)arg2; +- (void)_rejectAddresses:(id)arg1 responseFromAccount:(id)arg2; +- (void)_cleanupPCStore:(id)arg1; +- (void)_reallyCleanupPCStores; +- (void)_cleanupPCStores; +- (BOOL)processIncomingMessage:(id)arg1 messageIsParentResponse:(char *)arg2; +- (BOOL)haveEmailsBeenApproved:(id)arg1 unapprovedOnes:(id)arg2; +- (void)_deliverApprovalRequestMessage:(id)arg1 forOutgoingMessage:(id)arg2; +- (void)_requestApprovalForOutgoingMessage:(id)arg1 srcStore:(id)arg2; +- (BOOL)requestApprovalForOutgoingMessage:(id)arg1; +- (void)saveChanges; +- (id)_makeResponseMessageToRequest:(id)arg1 approve:(BOOL)arg2; +- (void)_deliverResponseMessage:(id)arg1 requestMessage:(id)arg2; +- (BOOL)_respondToRequest:(id)arg1 approve:(BOOL)arg2; +- (BOOL)approveRequest:(id)arg1; +- (BOOL)rejectRequest:(id)arg1; +- (BOOL)isEmail:(id)arg1 inEmailList:(id)arg2; +- (void)_approveEmailListChanged:(id)arg1; +@property BOOL isDirty; +- (void)_saveChangesWithDelay; + +@end + diff --git a/MailHeaders/Lion/Message/ParentalControlSettings.h b/MailHeaders/Lion/Message/ParentalControlSettings.h new file mode 100644 index 00000000..e53f1938 --- /dev/null +++ b/MailHeaders/Lion/Message/ParentalControlSettings.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface ParentalControlSettings : NSObject +{ +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; ++ (BOOL)isEmail:(id)arg1 inEmailList:(id)arg2; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)_updateCachedDataForEnabledState:(BOOL)arg1 approvedList:(BOOL)arg2 postNotification:(BOOL)arg3; +- (void)_reallyHandleDefaultsChange; +- (void)_defaultsDidChange; +- (void)_approveEmailListChanged:(id)arg1; +- (BOOL)isInSpamProtectionMode; +- (id)parentEmails; +- (BOOL)isParentEmail:(id)arg1; +- (BOOL)_isSelfEmail:(id)arg1; +- (id)_approvedEmails; +- (BOOL)hasEmailBeenApproved:(id)arg1; +- (BOOL)haveEmailsBeenApproved:(id)arg1 unapprovedOnes:(id)arg2; +- (id)_dictionaryFromEmail:(id)arg1; +- (BOOL)_approveEmail:(id)arg1; +- (id)approveEmails:(id)arg1; +- (BOOL)_rejectEmail:(id)arg1; +- (id)rejectEmails:(id)arg1; +- (double)parentalControlEnabledTimeIntervalSince1970; + +@end + diff --git a/MailHeaders/Lion/Message/ParentalControlStore.h b/MailHeaders/Lion/Message/ParentalControlStore.h new file mode 100644 index 00000000..8ace6f8c --- /dev/null +++ b/MailHeaders/Lion/Message/ParentalControlStore.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface ParentalControlStore : NeXTMbox +{ +} + +- (BOOL)_shouldCallCompactWhenClosing; +- (id)_defaultRouterDestination; +- (id)realAccount; +- (void)setParentalControlMessageState:(int)arg1 forMessage:(id)arg2; +- (void)setParentalControlMessageState:(int)arg1 forMessages:(id)arg2; +- (void)saveChanges; + +@end + diff --git a/MailHeaders/Lion/Message/ParsedMessage.h b/MailHeaders/Lion/Message/ParsedMessage.h new file mode 100644 index 00000000..a696c6c6 --- /dev/null +++ b/MailHeaders/Lion/Message/ParsedMessage.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSDictionary, NSString, NSURL; + +@interface ParsedMessage : NSObject +{ + NSString *_html; + NSString *_mimeType; + NSURL *_baseURL; + NSDictionary *_attachmentsByURL; + NSArray *_stationeryBackgroundImageURLs; + BOOL _isPlainText; +} + ++ (id)parsedMessageWithWebArchive:(id)arg1 archiveIsMailInternal:(BOOL)arg2; +- (id)initWithWebArchive:(id)arg1; +- (id)initWithWebArchive:(id)arg1 archiveIsMailInternal:(BOOL)arg2; +- (void)dealloc; +- (void)addAttachment:(id)arg1 forURL:(id)arg2; +- (id)description; +@property(retain) NSString *html; +- (void)_addWebArchiveDataToArray:(id)arg1; +- (id)attributedString; +- (void)setBaseURLFromHtml; +@property BOOL isPlainText; // @synthesize isPlainText=_isPlainText; +@property(retain) NSArray *stationeryBackgroundImageURLs; // @synthesize stationeryBackgroundImageURLs=_stationeryBackgroundImageURLs; +@property(retain) NSDictionary *attachmentsByURL; // @synthesize attachmentsByURL=_attachmentsByURL; +@property(retain) NSURL *baseURL; // @synthesize baseURL=_baseURL; +@property(retain) NSString *mimeType; // @synthesize mimeType=_mimeType; + +@end + diff --git a/MailHeaders/Lion/Message/PerformanceLogger.h b/MailHeaders/Lion/Message/PerformanceLogger.h new file mode 100644 index 00000000..9aba9689 --- /dev/null +++ b/MailHeaders/Lion/Message/PerformanceLogger.h @@ -0,0 +1,50 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableDictionary, NSSet; + +@interface PerformanceLogger : NSObject +{ + long long _performanceLoggerMode; + NSSet *_enabledTests; + NSMutableDictionary *_startTimes; + NSMutableDictionary *_startMemories; + NSMutableDictionary *_timeDeltas; + NSMutableDictionary *_memoryDeltas; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedLogger; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)overrideMode:(long long)arg1; +- (id)timeDeltas; +- (id)memoryDeltas; +- (void)_addNumber:(double)arg1 withIdentifier:(id)arg2 toTest:(id)arg3 inDictionary:(id)arg4; +- (void)_addStartTime:(double)arg1 withIdentifier:(id)arg2 toTest:(id)arg3; +- (void)_addStartMemory:(double)arg1 withIdentifier:(id)arg2 toTest:(id)arg3; +- (void)_addTimeDelta:(double)arg1 withIdentifier:(id)arg2 toTest:(id)arg3; +- (void)_addMemoryDelta:(double)arg1 withIdentifier:(id)arg2 toTest:(id)arg3; +- (void)_startLoggingTimeForTest:(id)arg1 withIdentifier:(id)arg2; +- (void)_startLoggingMemoryForTest:(id)arg1 withIdentifier:(id)arg2; +- (id)_findMatchingTuple:(id)arg1 identifier:(id)arg2; +- (void)_stopLoggingTimeForTest:(id)arg1 withIdentifier:(id)arg2; +- (void)_stopLoggingMemoryForTest:(id)arg1 withIdentifier:(id)arg2; +- (long long)_getProcessMallocedMemory; +- (void)startLoggingTest:(id)arg1 withIdentifier:(id)arg2; +- (void)stopLoggingTest:(id)arg1 withIdentifier:(id)arg2; +- (void)clearPerformanceResults; +- (void)logPerformanceResults; + +@end + diff --git a/MailHeaders/Lion/Message/PerformanceLoggerTuple.h b/MailHeaders/Lion/Message/PerformanceLoggerTuple.h new file mode 100644 index 00000000..20bafa08 --- /dev/null +++ b/MailHeaders/Lion/Message/PerformanceLoggerTuple.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString; + +@interface PerformanceLoggerTuple : NSObject +{ + double _number; + NSString *_identifier; +} + +- (id)initWithNumber:(double)arg1 identifier:(id)arg2; +- (id)init; +- (void)dealloc; +- (id)description; +@property(retain) NSString *identifier; // @synthesize identifier=_identifier; +@property double number; // @synthesize number=_number; + +@end + diff --git a/MailHeaders/Lion/Message/PlaceholderArchiveFileWrapper.h b/MailHeaders/Lion/Message/PlaceholderArchiveFileWrapper.h new file mode 100644 index 00000000..aff93dc9 --- /dev/null +++ b/MailHeaders/Lion/Message/PlaceholderArchiveFileWrapper.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface PlaceholderArchiveFileWrapper : ArchiveFileWrapper +{ +} + +- (BOOL)isPlaceholder; + +@end + diff --git a/MailHeaders/Lion/Message/PlaceholderFileWrapper.h b/MailHeaders/Lion/Message/PlaceholderFileWrapper.h new file mode 100644 index 00000000..5dc96572 --- /dev/null +++ b/MailHeaders/Lion/Message/PlaceholderFileWrapper.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface PlaceholderFileWrapper : NSFileWrapper +{ +} + +- (BOOL)isPlaceholder; +- (BOOL)isRemotelyAccessed; + +@end + diff --git a/MailHeaders/Lion/Message/PlainAuthScheme.h b/MailHeaders/Lion/Message/PlainAuthScheme.h new file mode 100644 index 00000000..8abb38ac --- /dev/null +++ b/MailHeaders/Lion/Message/PlainAuthScheme.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface PlainAuthScheme : AuthScheme +{ +} + +- (id)name; +- (id)humanReadableName; +- (id)saslClientForAccount:(id)arg1 connection:(id)arg2; +- (BOOL)canAuthenticateAccount:(id)arg1 connection:(id)arg2; +- (unsigned int)applescriptScheme; + +@end + diff --git a/MailHeaders/Lion/Message/PreparedStatement.h b/MailHeaders/Lion/Message/PreparedStatement.h new file mode 100644 index 00000000..06f8749d --- /dev/null +++ b/MailHeaders/Lion/Message/PreparedStatement.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface PreparedStatement : NSObject +{ + struct sqlite3_stmt *_compiled; + BOOL _cachedAndInUse; +} + +- (id)initWithString:(const char *)arg1 andDb:(struct sqlite3 *)arg2; +- (void)dealloc; +- (void)finalize; +- (void)sqliteFinalize; +- (int)reset; +- (long long)_checkIn; +- (BOOL)_cachedAndInUse; +- (void)_setCachedAndInUse:(BOOL)arg1; +@property(readonly, nonatomic) struct sqlite3_stmt *compiled; // @synthesize compiled=_compiled; + +@end + diff --git a/MailHeaders/Lion/Message/QuotaUsage.h b/MailHeaders/Lion/Message/QuotaUsage.h new file mode 100644 index 00000000..aef875be --- /dev/null +++ b/MailHeaders/Lion/Message/QuotaUsage.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface QuotaUsage : NSObject +{ + CDStruct_d3e19d9e _current; + CDStruct_d3e19d9e _maximum; +} + +- (void)decrementCurrentBy:(CDStruct_d3e19d9e)arg1; +- (void)incrementCurrentBy:(CDStruct_d3e19d9e)arg1; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (id)description; +@property(nonatomic) CDStruct_d3e19d9e maximum; // @synthesize maximum=_maximum; +@property(nonatomic) CDStruct_d3e19d9e current; // @synthesize current=_current; + +@end + diff --git a/MailHeaders/Lion/Message/RSSAccount.h b/MailHeaders/Lion/Message/RSSAccount.h new file mode 100644 index 00000000..3937928e --- /dev/null +++ b/MailHeaders/Lion/Message/RSSAccount.h @@ -0,0 +1,71 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableArray; + +@interface RSSAccount : LocalAccount +{ + id _rssAccountLock; + NSMutableArray *_feedsToDisplayUnderInbox; + NSMutableArray *_deletedFeedURLs; + BOOL _childrenHaveBeenSet; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedAccount; ++ (id)defaultPathNameForAccount; ++ (id)accountTypeString; ++ (id)feedTitleForSuggestedTitle:(id)arg1 feedURL:(id)arg2; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)initWithAccountInfo:(id)arg1; +- (void)dealloc; +- (BOOL)isSyncable; +- (id)uniqueId; +- (Class)storeClass; +- (id)mailboxPathExtension; +- (id)primaryMailboxUid; +- (id)displayName; +- (BOOL)canFetch; +- (BOOL)shouldAutoFetch; +- (void)fetchSynchronously; +- (void)updateFeed:(id)arg1; +- (BOOL)isOffline; +- (void)setIsOffline:(BOOL)arg1; +- (BOOL)rootChildrenCanBePromoted; +- (id)trashMailboxUidCreateIfNeeded:(BOOL)arg1; +- (void)setupDefaultFeeds; +- (void)_setupDefaultFeedsWithDictionary:(id)arg1; +- (id)_URLPersistenceScheme; +- (void)_loadMailboxListingIntoCache:(id)arg1 parent:(id)arg2; +- (id)_copyMailboxUidWithParent:(id)arg1 name:(id)arg2 pathComponent:(id)arg3 attributes:(unsigned long long)arg4 existingMailboxUid:(id)arg5; +- (BOOL)_setChildren:(id)arg1 forMailboxUid:(id)arg2; +- (void)_validateRSSMailboxes:(id)arg1; +- (id)createMailboxWithParent:(id)arg1 name:(id)arg2; +- (BOOL)deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (BOOL)_deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2 withBookmarksManager:(id)arg3 saveImmediately:(BOOL)arg4; +- (BOOL)_deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (id)archiveMailboxUidCreateIfNeeded:(BOOL)arg1; +- (void)_finishSynchronizingMailboxesAfterImport; +- (BOOL)renameFeed:(id)arg1 newName:(id)arg2 onlyIfNeeded:(BOOL)arg3; +- (void)subscribeToFeeds:(id)arg1 parent:(id)arg2 displayUnderInbox:(id)arg3 addToBookmarks:(BOOL)arg4; +- (id)_subscribeToFeed:(id)arg1 parent:(id)arg2 displayUnderInbox:(BOOL)arg3 addToBookmarks:(BOOL)arg4 select:(BOOL)arg5; +- (id)feedForURL:(id)arg1; +- (id)feedsToDisplayUnderInbox; +- (id)feedToDisplayUnderInboxForMailboxUid:(id)arg1; +- (void)setFeed:(id)arg1 displaysUnderInbox:(BOOL)arg2 updateCache:(BOOL)arg3 select:(BOOL)arg4; +- (void)setFeed:(id)arg1 displaysUnderInbox:(BOOL)arg2 updateCache:(BOOL)arg3; +- (void)setFeeds:(id)arg1 displayUnderInbox:(BOOL)arg2 updateCache:(BOOL)arg3; +- (void)updateRSSPickerFromMailboxes; +- (BOOL)supportsNotes; +- (BOOL)allowsCalendarCreation; + +@end + diff --git a/MailHeaders/Lion/Message/RSSArticleDocument.h b/MailHeaders/Lion/Message/RSSArticleDocument.h new file mode 100644 index 00000000..a46a9efd --- /dev/null +++ b/MailHeaders/Lion/Message/RSSArticleDocument.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface RSSArticleDocument : WebMessageDocument +{ + NSString *_articleURL; + NSString *_articleSubject; +} + +- (void)dealloc; +- (void)setArticleURL:(id)arg1; +- (id)articleURL; +- (void)setArticleSubject:(id)arg1; +- (id)articleSubject; + +@end + diff --git a/MailHeaders/Lion/Message/RSSInterchange.h b/MailHeaders/Lion/Message/RSSInterchange.h new file mode 100644 index 00000000..c9a997d8 --- /dev/null +++ b/MailHeaders/Lion/Message/RSSInterchange.h @@ -0,0 +1,95 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSPortDelegate-Protocol.h" + +@class InvocationQueue, NSConditionLock, NSDate, NSMutableDictionary, NSPort, NSString, NSThread, NSTimer, NSURL, PSClient; + +@interface RSSInterchange : NSObject +{ + PSClient *_syndicationManager; + NSConditionLock *_syndicationLock; + NSThread *_syndicationThread; + NSPort *_syndicationPort; + InvocationQueue *_delegateHandlerQueue; + NSMutableDictionary *_feedsBeingUpdated; + NSMutableDictionary *_updatedFeeds; + BOOL _didReceiveArticles; + NSString *_feedName; + NSURL *_autodiscoveredURL; + BOOL _waitingForFeedName; + BOOL _isValidFeedURL; + NSDate *_fetchDate; + unsigned long long _numberOfOutstandingFeedWrites; + NSTimer *_manualCheckTimer; + BOOL _manualCheckIsAllowed; + BOOL _shareDeletionInterval; + BOOL _fatalError; +} + ++ (id)sharedInstance; +- (id)init; +- (void)dealloc; +- (BOOL)fetchTemporaryFeedAtURL:(id)arg1 getName:(id *)arg2 getAutodiscoveredURL:(id *)arg3; +- (BOOL)_performSynchronousRefreshWithFeed:(id)arg1; +- (void)_setTemporaryFeedInformationFromURL:(id)arg1; +- (void)_setFeedName:(id)arg1; +- (id)_feedName; +- (void)_setAutodiscoveredURL:(id)arg1; +- (id)_autodiscoveredURL; +- (void)subscribeToFeedWithTransporter:(id)arg1; +- (void)_subscribeToFeedWithURL:(id)arg1 login:(id)arg2 password:(id)arg3; +- (void)updateAuthenticationInfoForFeedWithTransporter:(id)arg1; +- (void)_updateAuthenticationInfoForFeedWithURL:(id)arg1 login:(id)arg2 password:(id)arg3; +- (void)unsubscribeToFeedWithURL:(id)arg1; +- (void)_unsubscribeToFeedWithURL:(id)arg1; +- (void)restoreFeedURLsForFeedInfo:(id)arg1; +- (void)_restoreFeedURLsForFeedInfo:(id)arg1; +- (void)setFetchFrequency:(long long)arg1; +- (void)setDeletionFrequency:(long long)arg1; +- (void)_setFrequency:(long long)arg1 forMsgid:(unsigned int)arg2; +- (void)_setFetchFrequency:(long long)arg1; +- (void)_setDeletionFrequency:(long long)arg1; +- (void)setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)_setFlagsFromDictionary:(id)arg1 forRemoteIDs:(id)arg2; +- (BOOL)updateAllFeeds; +- (void)_updateAllFeeds; +- (void)_synchronize; +- (void)updateFeedWithURL:(id)arg1; +- (void)_updateFeedWithURL:(id)arg1; +- (void)updateLastDateFetchedForNewArticles:(BOOL)arg1; +- (void)removeOldArticles; +- (void)_removeOldArticles; +- (void)_runManager; +- (void)handlePortMessage:(id)arg1; +- (void)_allowManualFeedCheck; +- (void)_setManualCheckTimer:(id)arg1; +- (id)_manualCheckTimer; +- (void)feedDidBeginRefresh:(id)arg1; +- (void)feedDidEndRefresh:(id)arg1; +- (void)feed:(id)arg1 didAddEntries:(id)arg2; +- (void)feed:(id)arg1 didUpdateEntries:(id)arg2; +- (void)feed:(id)arg1 didChangeFlagsInEntries:(id)arg2; +- (void)_setSyndicationManager:(id)arg1; +- (void)_setSyndicationLock:(id)arg1; +- (void)_setSyndicationPort:(id)arg1; +- (void)_configureSyndicationManager; +- (void)_setFetchDate:(id)arg1; +- (void)_writeDate; +- (void)_addStoreForFeedBeingRefreshed:(id)arg1; +- (void)_removeStoreBeingRefreshedWithIdentifier:(id)arg1; +- (id)_storeBeingRefreshedWithIdentifier:(id)arg1; +- (void)_delegateFeedDidEndRefresh:(id)arg1; +- (id)_newPortComponentsForFeedURL:(id)arg1; +- (id)_newPortComponentsForFeedTransporter:(id)arg1; +- (id)_mailboxForFeed:(id)arg1; +- (void)_refreshFeed:(id)arg1; +- (id)_messageForError:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/RSSLibraryStore.h b/MailHeaders/Lion/Message/RSSLibraryStore.h new file mode 100644 index 00000000..7daffa0c --- /dev/null +++ b/MailHeaders/Lion/Message/RSSLibraryStore.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "RouterStore-Protocol.h" + +@class NSURL; + +@interface RSSLibraryStore : LibraryStore +{ + id _feedLock; + NSURL *_feedURL; +} + ++ (void)tryToRecoverFeedURLsFromFeedInfo:(id)arg1; ++ (void)didFinishFetching:(BOOL)arg1; ++ (void)fetchSynchronously; ++ (id)_messageForEntry:(id)arg1 feed:(id)arg2 store:(id)arg3 isUpdated:(BOOL)arg4; +- (id)initWithCriterion:(id)arg1 mailbox:(id)arg2 readOnly:(BOOL)arg3; +- (void)dealloc; +- (void)subscribeToFeedWithURL:(id)arg1; +- (void)subscribeToFeedWithTransporter:(id)arg1; +- (void)unsubscribe; +- (void)subscribeToFeedIfNecessary; +- (BOOL)setFeedURL:(id)arg1 needsSave:(BOOL)arg2; +- (id)feedURL; +- (void)addEntries:(id)arg1 fromFeed:(id)arg2; +- (void)routeArticleMessages:(id)arg1 fetchedAt:(id)arg2; +- (void)_waitForRouterToFinishRouting:(id)arg1 articlesFetchedAt:(id)arg2; +- (void)messagesWillBeRouted:(id)arg1; +- (void)messagesWereRouted:(id)arg1; +- (void)cancel; +- (void)fetchSynchronously; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)allMailboxUidRepresentations; +- (void)doCompact; + +@end + diff --git a/MailHeaders/Lion/Message/RecoveredMessage.h b/MailHeaders/Lion/Message/RecoveredMessage.h new file mode 100644 index 00000000..97347e82 --- /dev/null +++ b/MailHeaders/Lion/Message/RecoveredMessage.h @@ -0,0 +1,53 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MessageHeaders, NSData, NSString; + +@interface RecoveredMessage : Message +{ + NSString *_path; + NSString *_remoteID; + NSString *_remoteMailboxURL; + NSString *_originalMailboxURL; + MessageHeaders *_headers; + unsigned long long _size; + CDStruct_3292de3e _remoteFlags; + NSData *_data; + NSData *_allData; + BOOL _loadedFileData; +} + +- (id)initWithPath:(id)arg1; +- (void)dealloc; +- (void)_loadFileDataIfNeeded; +- (id)messageID; +- (id)remoteMailboxURL; +- (id)originalMailboxURL; +- (id)headerData; +- (id)headerDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)headers; +- (id)headersIfAvailable; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (id)bodyData; +- (id)bodyDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)messageBody; +- (id)messageBodyIfAvailable; +- (id)messageBodyFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)messageBodyUpdatingFlags:(BOOL)arg1; +- (id)messageBodyForIndexingAttachments; +- (id)messageBodyIfAvailableUpdatingFlags:(BOOL)arg1; +- (CDStruct_3292de3e)remoteFlags; +- (unsigned int)messageFlags; +- (CDStruct_accefccd)moreMessageFlags; +- (void)flushCachedData; +- (BOOL)setMessageID:(long long)arg1 directory:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/RecoveredStore.h b/MailHeaders/Lion/Message/RecoveredStore.h new file mode 100644 index 00000000..ad73ff7a --- /dev/null +++ b/MailHeaders/Lion/Message/RecoveredStore.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface RecoveredStore : MessageStore +{ + NSArray *_pathsToImport; +} + +- (id)initWithMailboxUid:(id)arg1 readOnly:(BOOL)arg2 pathsToImport:(id)arg3; +- (id)init; +- (id)initWithMailboxUid:(id)arg1 readOnly:(BOOL)arg2; +- (void)dealloc; +- (void)writeUpdatedMessageDataToDisk; +- (id)messagesForImporter; + +@end + diff --git a/MailHeaders/Lion/Message/RegularExpression.h b/MailHeaders/Lion/Message/RegularExpression.h new file mode 100644 index 00000000..9563b4e8 --- /dev/null +++ b/MailHeaders/Lion/Message/RegularExpression.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString; + +@interface RegularExpression : NSObject +{ + NSString *_expressionString; + void *_reserved; +} + ++ (void)initialize; ++ (id)regularExpressionWithString:(id)arg1; ++ (const char *)getBytesForString:(id)arg1 lossByte:(unsigned char)arg2; +- (void)dealloc; +- (void)finalize; +- (id)initWithExpressionString:(id)arg1; +- (id)initWithExpressionString:(id)arg1 options:(unsigned long long)arg2; +- (unsigned long long)_numberOfSubexpressions; +- (id)init; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +- (id)expressionString; +- (struct _NSRange)matchedRangeForCString:(const char *)arg1 range:(struct _NSRange)arg2 subexpressionRanges:(struct _NSRange *)arg3 count:(unsigned long long)arg4; +- (struct _NSRange)matchedRangeForString:(id)arg1 range:(struct _NSRange)arg2 subexpressionRanges:(struct _NSRange *)arg3 count:(unsigned long long)arg4; +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/RemoteMessage.h b/MailHeaders/Lion/Message/RemoteMessage.h new file mode 100644 index 00000000..5963f061 --- /dev/null +++ b/MailHeaders/Lion/Message/RemoteMessage.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface RemoteMessage : Message +{ + CDStruct_3292de3e _remoteFlags; + unsigned long long _size; +} + +@property(nonatomic) BOOL isPartial; // @dynamic isPartial; +@property(nonatomic) BOOL partsHaveBeenCached; // @dynamic partsHaveBeenCached; +@property(readonly) CDStruct_3292de3e remoteFlags; // @dynamic remoteFlags; +- (unsigned long long)messageSize; +- (void)setMessageSize:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/RemotePlaceholderFileWrapper.h b/MailHeaders/Lion/Message/RemotePlaceholderFileWrapper.h new file mode 100644 index 00000000..f6a64e8e --- /dev/null +++ b/MailHeaders/Lion/Message/RemotePlaceholderFileWrapper.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSURL; + +@interface RemotePlaceholderFileWrapper : PlaceholderFileWrapper +{ + NSURL *_url; +} + +- (void)dealloc; +- (id)remoteAccessMimeType; +- (id)initWithURL:(id)arg1; +- (id)initDirectoryWithFileWrappers:(id)arg1; +- (id)initRegularFileWithContents:(id)arg1; +- (id)initSymbolicLinkWithDestination:(id)arg1; +- (id)initWithPath:(id)arg1; +- (id)initWithSerializedRepresentation:(id)arg1; +- (BOOL)isRemotelyAccessed; +- (id)symbolicLinkDestination; +- (id)URL; +- (unsigned long long)approximateSize; + +@end + diff --git a/MailHeaders/Lion/Message/RemoteStore.h b/MailHeaders/Lion/Message/RemoteStore.h new file mode 100644 index 00000000..e850a204 --- /dev/null +++ b/MailHeaders/Lion/Message/RemoteStore.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface RemoteStore : LibraryStore +{ +} + +- (void)forceResync; +- (id)URLString; +- (BOOL)_shouldUpdateColorsAndAttachmentsAfterOpening; +- (id)_cachedBodyForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedHeadersForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedBodyDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedHeaderDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (void)willAddMessages; +- (void)didAddMessages; +- (void)enqueuedMessageChangesInExistingRequest; +- (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 oldMessagesByNewMessage:(id)arg4; +- (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 isInitialImport:(BOOL)arg4 oldMessagesByNewMessage:(id)arg5 remoteIDs:(id)arg6 setFlags:(long long)arg7 clearFlags:(long long)arg8 messageFlagsForMessages:(id)arg9 copyFiles:(BOOL)arg10; +- (id)messagesForMailbox:(id)arg1 olderThanNumberOfDays:(long long)arg2; +- (void)compactMessages:(id)arg1; +- (id)messageWithLibraryID:(long long)arg1 options:(unsigned int)arg2; +- (int)updateMessagesLocally:(id)arg1 missedMessages:(id)arg2 newMessageIDs:(id)arg3; +- (int)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; +- (int)_doAppend:(CDStruct_9f3328ff *)arg1 fromStore:(id)arg2 error:(id *)arg3; +- (int)_appendToServerWithContext:(CDStruct_9f3328ff *)arg1 error:(id *)arg2; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (void)undeleteMessagesWithDetails:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/RemoteStoreAccount.h b/MailHeaders/Lion/Message/RemoteStoreAccount.h new file mode 100644 index 00000000..ecdfe5bb --- /dev/null +++ b/MailHeaders/Lion/Message/RemoteStoreAccount.h @@ -0,0 +1,61 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableArray; + +@interface RemoteStoreAccount : MailAccount +{ + NSMutableArray *_mailboxesToSynchronize; + BOOL _addedEAToAccountFolder; +} + +- (id)initWithAccountInfo:(id)arg1; +- (void)dealloc; +- (void)updateFromSyncedDictionary:(id)arg1; +- (void)setDisplayName:(id)arg1; +- (id)_infoForMatchingURL:(id)arg1; +- (void)fetchSynchronously; +- (BOOL)canGoOffline; +- (void)setCachePolicy:(unsigned long long)arg1 permanently:(BOOL)arg2; +- (unsigned long long)cachePolicy; +@property BOOL storeDraftsOnServer; +@property BOOL storeNotesOnServer; +@property BOOL storeJunkOnServer; +@property(readonly) BOOL storeJunkOnServerDefault; +@property BOOL storeSentMessagesOnServer; +@property BOOL storeTrashOnServer; +- (BOOL)_isMailboxTypeStoredLocally:(int)arg1; +- (BOOL)_setStoreSpecialMailboxUidType:(int)arg1 onServer:(BOOL)arg2; +- (void)_renameLocalSpecialMailboxesToName:(id)arg1; +- (id)_localMailboxNameForType:(int)arg1 usingDisplayName:(id)arg2; +- (id)_specialMailboxUidWithType:(int)arg1 create:(BOOL)arg2; +- (id)_specialMailboxUidWithType:(int)arg1 create:(BOOL)arg2 isLocal:(BOOL)arg3; +- (void)_setSpecialMailbox:(id)arg1 forType:(int)arg2; +- (BOOL)_canEmptyMessagesFromMailboxUid:(id)arg1; +- (void)_writeMailboxCache; +- (BOOL)_shouldCacheAggressively; +- (BOOL)canBeSynchronized; +- (void)considerSynchronizingNow; +- (void)nowWouldBeAGoodTimeToStartBackgroundSynchronization; +- (void)_nowWouldBeAGoodTimeToStartBackgroundSynchronizationWithUserInput:(BOOL)arg1; +- (BOOL)needToSynchronizeMailboxCaches; +- (void)_synchronizeAccountWithServerWithUserInput:(id)arg1; +- (BOOL)_synchronizeMailboxListWithUserInput:(BOOL)arg1; +- (BOOL)synchronizesDataWithServer; +- (void)didSynchronizeMailboxCachesAndFoundChanges:(BOOL)arg1; +- (void)_synchronizeMailboxes:(id)arg1; +- (BOOL)_addMailboxesToSynchronize:(id)arg1; +- (BOOL)_shouldSynchronizeMailbox:(id)arg1; +- (void)_synchronizeMailboxesSynchronously; +- (void)_checkForNewMessagesInStore:(id)arg1; +- (id)offlineCacheDirectory; +- (void)presentOverQuotaAlert; +@property BOOL addedEAToAccountFolder; // @synthesize addedEAToAccountFolder=_addedEAToAccountFolder; + +@end + diff --git a/MailHeaders/Lion/Message/RemoteStoreSizeEngine.h b/MailHeaders/Lion/Message/RemoteStoreSizeEngine.h new file mode 100644 index 00000000..47b21135 --- /dev/null +++ b/MailHeaders/Lion/Message/RemoteStoreSizeEngine.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableDictionary, NSMutableSet; + +@interface RemoteStoreSizeEngine : SizeEngine +{ + NSMutableDictionary *_usageByMailboxUid; + NSMutableSet *_mailboxesToSize; +} + +- (id)initWithAccount:(id)arg1; +- (void)dealloc; +- (id)usageForMailbox:(id)arg1; +- (BOOL)_prepareToRefresh; +- (BOOL)_shouldStartWorkerThread; +- (void)_refetchListing:(id)arg1; +- (void)_handleMailboxSizeChanged:(id)arg1; +- (void)_getSizeForMailboxUid:(id)arg1; +- (BOOL)_changeUsageInfo:(CDStruct_d3e19d9e *)arg1 forMailboxUid:(id)arg2 refetchQuotas:(BOOL)arg3; +- (void)_sizeChangedForMailboxUid:(id)arg1; +- (void)_mailboxSizeChanged:(id)arg1; +- (void)_mailboxBecameInvalid:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/RouterStore-Protocol.h b/MailHeaders/Lion/Message/RouterStore-Protocol.h new file mode 100644 index 00000000..7fb4248f --- /dev/null +++ b/MailHeaders/Lion/Message/RouterStore-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol RouterStore +- (void)messagesWillBeRouted:(id)arg1; +- (void)messagesWereRouted:(id)arg1; +- (void)cancel; +@end + diff --git a/MailHeaders/Lion/Message/SASLClient.h b/MailHeaders/Lion/Message/SASLClient.h new file mode 100644 index 00000000..323ff8a1 --- /dev/null +++ b/MailHeaders/Lion/Message/SASLClient.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class Account, NSString; + +@interface SASLClient : NSObject +{ + NSString *_mechanismName; + Account *_account; + long long _authenticationState; + unsigned int _encryptionBufferSize; + BOOL _justSentPlainTextPassword; +} + ++ (void)initializeSASLClient; ++ (id)newSASLClientWithMechanismName:(id)arg1 account:(id)arg2 externalSecurityLayer:(unsigned int)arg3; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (BOOL)resetWithExternalSecurityLayer:(unsigned int)arg1; +@property(nonatomic) unsigned int encryptionBufferSize; // @synthesize encryptionBufferSize=_encryptionBufferSize; +@property(nonatomic) BOOL justSentPlainTextPassword; // @synthesize justSentPlainTextPassword=_justSentPlainTextPassword; +@property(nonatomic) long long authenticationState; // @synthesize authenticationState=_authenticationState; +@property(retain, nonatomic) Account *account; // @synthesize account=_account; +@property(copy, nonatomic) NSString *mechanismName; // @synthesize mechanismName=_mechanismName; + +@end + diff --git a/MailHeaders/Lion/Message/SMTPAccount.h b/MailHeaders/Lion/Message/SMTPAccount.h new file mode 100644 index 00000000..5a482953 --- /dev/null +++ b/MailHeaders/Lion/Message/SMTPAccount.h @@ -0,0 +1,51 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSTimer, SMTPConnection; + +@interface SMTPAccount : DeliveryAccount +{ + SMTPConnection *_connection; + id _smtpAccountLock; + NSTimer *_timer; + long long _lastTimerSetTime; + unsigned int _lastUsedPort; +} + ++ (id)accountTypeString; +- (id)initWithAccountInfo:(id)arg1; +- (void)dealloc; +- (Class)deliveryClass; +- (unsigned int)defaultPortNumber; +- (unsigned int)secondaryDefaultPortNumber; +- (unsigned int)tertiaryDefaultPortNumber; +- (id)serviceName; +- (id)saslProfileName; +- (BOOL)_portNumberIsADefaultPortNumber; +- (unsigned int)portNumber; +- (void)setPortNumber:(unsigned int)arg1; +@property BOOL shouldTryDefaultPorts; +- (Class)connectionClass; +- (id)preferredAuthScheme; +- (void)setPreferredAuthScheme:(id)arg1; +- (BOOL)isSyncable; +- (void)_setStandardPortsConnectionErrorMessage; +- (id)newConnectedConnection; +- (id)authenticatedConnection; +- (void)checkInConnection:(id)arg1; +- (void)_setTimer; +- (void)_connectionExpired:(id)arg1; +- (void)_disconnect:(id)arg1; +- (BOOL)_shouldTryDirectSSLConnectionOnPort:(unsigned int)arg1; +- (void)releaseAllConnections; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +- (id)objectSpecifier; + +@end + diff --git a/MailHeaders/Lion/Message/SMTPConnection.h b/MailHeaders/Lion/Message/SMTPConnection.h new file mode 100644 index 00000000..5fb3d4bf --- /dev/null +++ b/MailHeaders/Lion/Message/SMTPConnection.h @@ -0,0 +1,56 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableArray, NSMutableData, NSString; + +@interface SMTPConnection : Connection +{ + double _originalSocketTimeout; + double _lastCommandTimestamp; + unsigned long long _lastResponseCode; + id _lastResponse; + NSMutableArray *_serviceExtensions; + NSMutableData *_mdata; + NSString *_domainName; + long long _greeting; +} + +- (id)init; +- (void)dealloc; +- (void)_setupConnection; +- (BOOL)connectUsingAccount:(id)arg1; +- (BOOL)_startTLSForHostname:(id)arg1 onPort:(unsigned int)arg2 securityLayerType:(long long)arg3 accountClass:(Class)arg4; +- (long long)_startTLSForSecurityLayerType:(long long)arg1; +- (BOOL)_teardownConnectionWithResult:(BOOL)arg1; +- (BOOL)reconnect; +- (id)authenticationMechanisms; +- (BOOL)authenticateUsingAccount:(id)arg1; +- (BOOL)_authenticateUsingAccount:(id)arg1 authenticator:(id)arg2; +- (long long)_authenticateUsingHostname:(id)arg1 username:(id)arg2 password:(id)arg3 authScheme:(id)arg4 authenticator:(id)arg5; +- (BOOL)_reauthenticate; +- (long long)_state; +- (id)lastResponse; +- (double)timeLastCommandWasSent; +- (long long)_sendCommand:(const char *)arg1 length:(unsigned long long)arg2 argument:(id)arg3 dontLogArgumentRange:(struct _NSRange)arg4 trailer:(unsigned char)arg5; +- (long long)_sendDataDontLogBytesInRange:(struct _NSRange)arg1; +- (long long)_getReply; +- (void)_readResponseRange:(struct _NSRange *)arg1 isContinuation:(char *)arg2; +- (long long)quit; +- (long long)noop; +- (long long)_doHandshakeTryHELOIfEHLOFails:(BOOL)arg1; +- (long long)_sendEHLOWithClientDomainName:(id)arg1; +- (long long)_sendHELOWithClientDomainName:(id)arg1; +- (id)_domainName; +- (BOOL)_hasParameter:(id)arg1 forKeyword:(id)arg2; +- (unsigned long long)maximumMessageBytes; +- (long long)mailFrom:(id)arg1; +- (long long)rcptTo:(id)arg1; +- (long long)sendDatas:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/SMTPDelivery.h b/MailHeaders/Lion/Message/SMTPDelivery.h new file mode 100644 index 00000000..6fef96b9 --- /dev/null +++ b/MailHeaders/Lion/Message/SMTPDelivery.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface SMTPDelivery : MailDelivery +{ +} + +- (Class)deliveryClass; +- (int)deliverMessageHeaderData:(id)arg1 bodyData:(id)arg2 toRecipients:(id)arg3; + +@end + diff --git a/MailHeaders/Lion/Message/SafariBookmarksLoader.h b/MailHeaders/Lion/Message/SafariBookmarksLoader.h new file mode 100644 index 00000000..3c11a064 --- /dev/null +++ b/MailHeaders/Lion/Message/SafariBookmarksLoader.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class BookmarksManager; + +@interface SafariBookmarksLoader : NSObject +{ + BookmarksManager *_bookmarksManager; +} + +- (id)init; +- (id)initWithManager:(id)arg1; +- (void)dealloc; +- (void)_loadBookmarkItemsFromDictionary:(id)arg1 position:(long long)arg2 parent:(id)arg3 folders:(id)arg4; +- (void)loadSafariBookmarks; + +@end + diff --git a/MailHeaders/Lion/Message/SafeBoolCache.h b/MailHeaders/Lion/Message/SafeBoolCache.h new file mode 100644 index 00000000..717ca1af --- /dev/null +++ b/MailHeaders/Lion/Message/SafeBoolCache.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSConditionLock, NSInvocation; + +@interface SafeBoolCache : NSObject +{ + NSConditionLock *_stateLock; + NSInvocation *_updateInvocation; +} + +- (id)initWithUpdateTarget:(id)arg1 selector:(SEL)arg2; +- (void)dealloc; +- (void)clearTarget; +@property BOOL value; +- (void)invalidate; + +@end + diff --git a/MailHeaders/Lion/Message/SafeObserver.h b/MailHeaders/Lion/Message/SafeObserver.h new file mode 100644 index 00000000..8d5fe7df --- /dev/null +++ b/MailHeaders/Lion/Message/SafeObserver.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface SafeObserver : NSObject +{ + unsigned long long _retainCount; + BOOL _inDealloc; +} + ++ (void)initialize; ++ (void)lockSafeObservers; ++ (void)unlockSafeObservers; +- (id)init; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)retain; +- (id)willDealloc; +- (void)release; +- (unsigned long long)retainCount; + +@end + diff --git a/MailHeaders/Lion/Message/SafeValueCache.h b/MailHeaders/Lion/Message/SafeValueCache.h new file mode 100644 index 00000000..300f6915 --- /dev/null +++ b/MailHeaders/Lion/Message/SafeValueCache.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface SafeValueCache : NSObject +{ + id _value; + long long _state; + id _target; + SEL _selector; +} + +- (id)initWithUpdateTarget:(id)arg1 selector:(SEL)arg2; +- (void)dealloc; +- (void)clearTarget; +@property(retain) id value; +- (id)retainedValue; +- (void)invalidate; + +@end + diff --git a/MailHeaders/Lion/Message/SeenMessage.h b/MailHeaders/Lion/Message/SeenMessage.h new file mode 100644 index 00000000..4a4ab720 --- /dev/null +++ b/MailHeaders/Lion/Message/SeenMessage.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSManagedObject.h" + +@interface SeenMessage : NSManagedObject +{ +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +- (void)setAccount:(id)arg1; +- (id)dateSeen; +- (void)setDateSeen:(id)arg1; +- (id)messageID; +- (void)setMessageID:(id)arg1; +- (BOOL)shouldDeleteFromServer; +- (void)setShouldDeleteFromServer:(BOOL)arg1; +- (BOOL)isOnServer; +- (void)setIsOnServer:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/SeenMessagesManager.h b/MailHeaders/Lion/Message/SeenMessagesManager.h new file mode 100644 index 00000000..8b24e6b5 --- /dev/null +++ b/MailHeaders/Lion/Message/SeenMessagesManager.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSManagedObjectContext; + +@interface SeenMessagesManager : NSObject +{ + NSManagedObjectContext *_managedObjectContext; + id _account; +} + +- (id)initWithAccountID:(id)arg1 createAccount:(BOOL)arg2; +- (void)dealloc; +- (id)_accountForAccountID:(id)arg1; +- (id)_addAccountWithID:(id)arg1; +- (id)seenMessageForMessageID:(id)arg1; +- (unsigned long long)countOfSeenMessages; +- (id)addMessageID:(id)arg1 dateSeen:(id)arg2; +- (void)removeMessageIDs:(id)arg1; +- (id)seenMessages; +- (id)messagesToBeDeletedFromServer; +- (void)removeServerDeletedMessages; +- (void)removeMessagesNotOnServer:(id)arg1; +- (void)saveChanges; +- (void)_configureManagedObjectContext; +@property(retain) NSManagedObjectContext *managedObjectContext; // @synthesize managedObjectContext=_managedObjectContext; +@property(retain) id account; // @synthesize account=_account; + +@end + diff --git a/MailHeaders/Lion/Message/SizeEngine.h b/MailHeaders/Lion/Message/SizeEngine.h new file mode 100644 index 00000000..8aaf809d --- /dev/null +++ b/MailHeaders/Lion/Message/SizeEngine.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ActivityMonitor, MailAccount, QuotaUsage; + +@interface SizeEngine : NSObject +{ + MailAccount *_account; + QuotaUsage *_totalUsage; + ActivityMonitor *_monitor; + long long _monitorAccessKey; + BOOL _isActive; +} + +- (id)initWithAccount:(id)arg1; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)account; +- (id)totalUsage; +- (void)refresh; +- (void)cancel; +- (void)start; +- (void)stop; +- (void)_startWorkerThreadIfNeeded; +- (void)_workerThreadFinished:(id)arg1; +- (void)_runWorkerThread; +- (BOOL)_prepareToRefresh; +- (BOOL)_shouldStartWorkerThread; +- (void)_postChangeNotificationWithUserInfo:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/SmartMailboxUnreadCountManager.h b/MailHeaders/Lion/Message/SmartMailboxUnreadCountManager.h new file mode 100644 index 00000000..8a12a9d6 --- /dev/null +++ b/MailHeaders/Lion/Message/SmartMailboxUnreadCountManager.h @@ -0,0 +1,74 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSConditionLock, NSMutableArray, NSMutableDictionary, NSMutableSet, _NonContentSmartMailboxUnreadCountManager; + +@interface SmartMailboxUnreadCountManager : NSObject +{ + NSMutableArray *_smartMailboxes; + NSMutableDictionary *_smartMailboxesOpenDates; + BOOL _updateNeededAfterOpeningMailboxes; + NSMutableDictionary *_smartMailboxesUnreadMessages; + NSMutableDictionary *_smartMailboxesUpdates; + NSConditionLock *_watchedMessagesLock; + NSMutableDictionary *_watchedMessages; + NSMutableDictionary *_messagesNeedingToBeIndexed; + NSConditionLock *_isUpdatingStateLock; + NSConditionLock *_isDirtyStateLock; + double _lastModificationToUpdate; + NSConditionLock *_obsoleteMailboxLibraryIDsLock; + NSMutableSet *_obsoleteMailboxLibraryIDs; + _NonContentSmartMailboxUnreadCountManager *_nonContentSmartMailboxUnreadCountManager; +} + ++ (void)initialize; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (id)init; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)setSmartMailboxes:(id)arg1; +- (void)smartMailbox:(id)arg1 didInitializeWithDictionaryRepresentation:(id)arg2; +- (void)smartMailbox:(id)arg1 willReturnDictionaryRepresentation:(id)arg2; +- (void)_setIsUpdating:(BOOL)arg1; +- (void)_setIsDirty:(BOOL)arg1; +- (id)_keyForMailbox:(id)arg1; +- (id)_keyForMessage:(id)arg1; +- (void)_decomposeMessageKey:(id)arg1 intoMailboxKey:(id *)arg2 messageID:(id *)arg3; +- (id)_pathForMessage:(id)arg1; +- (void)_setSmartMailboxesWithBodyCriterion:(id)arg1; +- (BOOL)_isObservingSmartMailbox:(id)arg1; +- (void)_startObservingNotifications; +- (void)_stopObservingNotifications; +- (void)_messagesAdded:(id)arg1; +- (void)_messageFlagsChanged:(id)arg1; +- (void)_messagesCompacted:(id)arg1; +- (void)_mailboxesDeleted:(id)arg1; +- (void)_storeWillOpen:(id)arg1; +- (void)_storeDidOpen:(id)arg1; +- (void)_smartMailboxesWillSaveToDisk:(id)arg1; +- (void)_smartMailboxesDidSaveToDisk:(id)arg1; +- (void)_setUnreadMessages:(id)arg1 forSmartMailbox:(id)arg2 onDate:(id)arg3; +- (void)_watchMessages:(id)arg1 withUnreadState:(BOOL)arg2 onDate:(id)arg3; +- (void)_performDelayedUpdate:(id)arg1; +- (void)_performUpdateNow; +- (void)_updateUnreadCountsWithWatchedMessages; +- (id)_filterMessages:(id)arg1 fromMailbox:(id)arg2 matchingCriterion:(id)arg3; +- (void)_updateSmartMailboxUnreadCountsWithMessagesByMailbox:(id)arg1; +- (void)_updateSmartMailboxUnreadCountsByRemovingMessagesInMailboxesWithLibraryIDs:(id)arg1; +- (void)_addMessagesWaitingToBeIndexed:(id)arg1; +- (BOOL)_isMessageIndexed:(id)arg1; +- (id)_messageKeysWaitingToBeIndexes; +- (void)_addObsoleteMailboxLibraryIDs:(id)arg1; +- (void)_updateObsoleteMailboxLibraryIDs; +@property double lastModificationToUpdate; // @synthesize lastModificationToUpdate=_lastModificationToUpdate; + +@end + diff --git a/MailHeaders/Lion/Message/SnippetManager.h b/MailHeaders/Lion/Message/SnippetManager.h new file mode 100644 index 00000000..0684ab82 --- /dev/null +++ b/MailHeaders/Lion/Message/SnippetManager.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class InvocationQueue, MFQuoteParser, NSMutableSet; + +@interface SnippetManager : NSObject +{ + InvocationQueue *_snippetQueue; + NSMutableSet *_messagesNeedingSnippets; + NSMutableSet *_watchList; + MFQuoteParser *_quoteParser; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (id)fetchSnippetsForMessages:(id)arg1; +- (void)scheduleSnippetCalculation; +- (void)_scheduleSnippetCalculationForMessages:(id)arg1; +- (void)snippetDataIsAvailableForMessage:(id)arg1; +- (void)_calculateSnippetForMessages; +- (id)generateSnippetFromHTML:(id)arg1 stripQuoted:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/SpecialMailboxUid.h b/MailHeaders/Lion/Message/SpecialMailboxUid.h new file mode 100644 index 00000000..45fa6f5a --- /dev/null +++ b/MailHeaders/Lion/Message/SpecialMailboxUid.h @@ -0,0 +1,59 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface SpecialMailboxUid : MailboxUid +{ +} + ++ (id)specialMailboxWithIdentifier:(id)arg1; ++ (id)specialMailboxUidForMailboxUidType:(int)arg1; ++ (id)inboxMailboxUid; ++ (id)sentMessagesMailboxUid; ++ (id)draftsMailboxUid; ++ (id)junkMailboxUid; ++ (id)outboxMailboxUid; ++ (id)trashMailboxUid; ++ (id)archiveMailboxUid; ++ (id)notesMailboxUid; ++ (id)flagsMailboxUid; ++ (id)flagMailboxUids; ++ (void)updateVisibleFlagMailboxUids; ++ (id)visibleFlagMailboxUids; ++ (id)appleScriptNameForMailboxType:(int)arg1; +- (id)_initWithName:(id)arg1 type:(int)arg2; +- (id)criterion; +- (id)displayName; +- (id)name; +- (id)account; +- (id)children; +- (id)childEnumeratorIncludingHiddenChildren:(BOOL)arg1; +- (id)mutableCopyOfChildrenIncludingHiddenChildren:(BOOL)arg1; +- (id)childAtIndex:(unsigned long long)arg1; +- (id)visibleChildAtIndex:(unsigned long long)arg1; +- (unsigned long long)numberOfChildren; +- (unsigned long long)numberOfVisibleChildren; +- (unsigned long long)numberOfSortedChildren; +- (id)sortedChildAtIndex:(unsigned long long)arg1; +- (unsigned long long)indexOfChild:(id)arg1; +- (long long)indexToInsertChildMailboxUid:(id)arg1; +- (unsigned long long)displayCount; +- (id)criteria; +- (void)setCriteria:(id)arg1; +- (BOOL)allCriteriaMustBeSatisfied; +- (void)setAllCriteriaMustBeSatisfied:(BOOL)arg1; +- (id)tildeAbbreviatedPath; +- (id)_viewerAttributesKey; +- (id)_loadUserInfo; +- (void)saveUserInfo; +- (void)_updateDontIndexFlagFile; +- (id)appleScriptKey; +- (id)objectSpecifier; +- (id)messages; + +@end + diff --git a/MailHeaders/Lion/Message/SqliteHandle.h b/MailHeaders/Lion/Message/SqliteHandle.h new file mode 100644 index 00000000..9ad6aa6a --- /dev/null +++ b/MailHeaders/Lion/Message/SqliteHandle.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "NSCacheDelegate-Protocol.h" + +@class NSArray, NSCache, NSMutableSet; + +@interface SqliteHandle : NSObject +{ + struct sqlite3 *_db; + double _busyTimer; + NSArray *_searchStringArray; + NSCache *_statementCache; + NSMutableSet *_cachedStatements; + NSMutableSet *_outstandingStatements; + BOOL _needsUnreadCountUpdate; +} + ++ (id)newHandleIsWriter:(BOOL)arg1; +- (id)init; +- (int)close; +- (void)dealloc; +- (id)checkOutPreparedStatementWithPattern:(const char *)arg1; +- (void)checkInPreparedStatement:(id)arg1; +- (void)finalizeOutstandingStatements; +- (void)cache:(id)arg1 willEvictObject:(id)arg2; +@property(nonatomic) BOOL needsUnreadCountUpdate; // @synthesize needsUnreadCountUpdate=_needsUnreadCountUpdate; +@property(retain, nonatomic) NSArray *searchStringArray; // @synthesize searchStringArray=_searchStringArray; +@property(nonatomic) double busyTimer; // @synthesize busyTimer=_busyTimer; +@property(nonatomic) struct sqlite3 *db; // @synthesize db=_db; + +@end + diff --git a/MailHeaders/Lion/Message/Subdata.h b/MailHeaders/Lion/Message/Subdata.h new file mode 100644 index 00000000..4b16c3b9 --- /dev/null +++ b/MailHeaders/Lion/Message/Subdata.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@interface Subdata : NSData +{ + struct _NSRange _subrange; + NSData *_parentData; +} + +- (id)initWithParent:(id)arg1 range:(struct _NSRange)arg2; +- (id)init; +- (id)initWithBytes:(const void *)arg1 length:(unsigned long long)arg2; +- (id)initWithBytesNoCopy:(void *)arg1 length:(unsigned long long)arg2; +- (id)initWithBytesNoCopy:(void *)arg1 length:(unsigned long long)arg2 freeWhenDone:(BOOL)arg3; +- (id)initWithContentsOfFile:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (id)initWithContentsOfURL:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (id)initWithContentsOfFile:(id)arg1; +- (id)initWithContentsOfURL:(id)arg1; +- (id)initWithData:(id)arg1; +- (id)initWithContentsOfMappedFile:(id)arg1; +- (id)initWithBase64Encoding:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (unsigned long long)length; +- (const void *)bytes; + +@end + diff --git a/MailHeaders/Lion/Message/SyncableApp-Protocol.h b/MailHeaders/Lion/Message/SyncableApp-Protocol.h new file mode 100644 index 00000000..0ae1a3e4 --- /dev/null +++ b/MailHeaders/Lion/Message/SyncableApp-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol SyncableApp +- (id)syncerForDataType:(long long)arg1; +- (id)ownerForDataType:(long long)arg1; +- (id)interestedPartiesForDataType:(long long)arg1; +- (BOOL)tellInterestedPartiesDataWillBeSyncedForDataType:(long long)arg1; +- (void)tellInterestedPartiesDataWasSyncedForDataType:(long long)arg1; +- (void)client:(id)arg1 mightWantToSyncEntityNames:(id)arg2; +@end + diff --git a/MailHeaders/Lion/Message/SyncableDataOwner-Protocol.h b/MailHeaders/Lion/Message/SyncableDataOwner-Protocol.h new file mode 100644 index 00000000..14e4d2c4 --- /dev/null +++ b/MailHeaders/Lion/Message/SyncableDataOwner-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol SyncableDataOwner +- (BOOL)dataWillBeSyncedVersion:(id *)arg1 data:(id *)arg2 type:(id)arg3; +- (BOOL)dataWasSyncedVersion:(id)arg1 newData:(id)arg2 acceptedChanges:(id)arg3; +@end + diff --git a/MailHeaders/Lion/Message/TOCMessage.h b/MailHeaders/Lion/Message/TOCMessage.h new file mode 100644 index 00000000..3d9af8d5 --- /dev/null +++ b/MailHeaders/Lion/Message/TOCMessage.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface TOCMessage : Message +{ + struct _NSRange _mboxRange; + NSString *_attachments; + NSString *_messageID; + BOOL _isInIncomingMail; +} + ++ (id)messageIDForSender:(id)arg1 subject:(id)arg2 dateAsTimeInterval:(double)arg3; +- (id)initWithMessage:(id)arg1; +- (void)dealloc; +- (unsigned long long)loadCachedInfoFromBytes:(const char *)arg1 length:(unsigned long long)arg2 isDirty:(char *)arg3 usingUniqueStrings:(id)arg4; +- (id)cachedData; +- (struct _NSRange)mboxRange; +- (void)setMboxRange:(struct _NSRange)arg1; +- (id)attachment; +- (id)messageID; +- (unsigned long long)messageSize; +- (id)description; +- (id)remoteID; +@property(nonatomic) BOOL isInIncomingMail; // @synthesize isInIncomingMail=_isInIncomingMail; + +@end + diff --git a/MailHeaders/Lion/Message/TableOfContents.h b/MailHeaders/Lion/Message/TableOfContents.h new file mode 100644 index 00000000..b4364cfc --- /dev/null +++ b/MailHeaders/Lion/Message/TableOfContents.h @@ -0,0 +1,53 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSData, NSMutableArray, NSMutableDictionary, NSString; + +@interface TableOfContents : NSObject +{ + BOOL _isValid; + NSMutableArray *_messages; + NSString *_path; + NSData *_data; + unsigned long long _pos; + CDStruct_c4d47a41 _header; + NSMutableDictionary *_messageIDMap; + BOOL _isDirty; +} + +- (void)_checkHeader; +- (BOOL)loadCacheFromFileUsingUniqueStrings:(id)arg1; +- (BOOL)loadCacheFromFileUsingUniqueStrings:(id)arg1 messageStore:(id)arg2; +- (void)appendHeader:(CDStruct_c4d47a41)arg1 toData:(id)arg2; +- (id)appendCachedDataToData:(id)arg1; +- (void)setTimeStamp:(int)arg1; +- (id)init; +- (id)initWithPath:(id)arg1; +- (void)dealloc; +- (BOOL)isDirty; +- (BOOL)isValid; +- (void)forceValidityToYES; +- (id)storePath; +- (void)rebuildCacheFromMessages:(id)arg1; +- (int)count; +- (id)messages; +- (void)removeMessage:(id)arg1; +- (void)_addMessageToMap:(id)arg1; +- (void)addMessage:(id)arg1; +- (void)addMessages:(id)arg1; +- (id)description; +- (BOOL)flushToFile; +- (id)messageForMessageID:(id)arg1; +- (id)sortOrder; +- (void)setSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (BOOL)isSortedAscending; +- (BOOL)isSortedByDateReceived; +- (void)sort; + +@end + diff --git a/MailHeaders/Lion/Message/TextAttachmentWrappingMessageAttachment.h b/MailHeaders/Lion/Message/TextAttachmentWrappingMessageAttachment.h new file mode 100644 index 00000000..75731f37 --- /dev/null +++ b/MailHeaders/Lion/Message/TextAttachmentWrappingMessageAttachment.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSTextAttachment.h" + +@class MessageAttachment; + +@interface TextAttachmentWrappingMessageAttachment : NSTextAttachment +{ + MessageAttachment *_messageAttachment; +} + +- (id)initWithMessageAttachment:(id)arg1; +- (id)initWithFileWrapper:(id)arg1; +- (void)dealloc; +- (id)messageAttachment; + +@end + diff --git a/MailHeaders/Lion/Message/ThrowingInvocationOperation.h b/MailHeaders/Lion/Message/ThrowingInvocationOperation.h new file mode 100644 index 00000000..06c821a5 --- /dev/null +++ b/MailHeaders/Lion/Message/ThrowingInvocationOperation.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSInvocationOperation.h" + +@interface ThrowingInvocationOperation : NSInvocationOperation +{ +} + +- (void)main; + +@end + diff --git a/MailHeaders/Lion/Message/TransientBookmark.h b/MailHeaders/Lion/Message/TransientBookmark.h new file mode 100644 index 00000000..a50e2327 --- /dev/null +++ b/MailHeaders/Lion/Message/TransientBookmark.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSNumber; + +@interface TransientBookmark : TransientBookmarkItem +{ +} + ++ (BOOL)automaticallyNotifiesObserversForKey222:(id)arg1; ++ (void)setEntity:(id)arg1; ++ (id)entity; +- (id)URL; +- (void)setURL:(id)arg1; +- (BOOL)isFeed; +- (void)setIsFeed:(BOOL)arg1; +- (void)setDisplaysUnderInbox:(BOOL)arg1; +- (BOOL)isSubscribed; +- (void)setIsSubscribed:(BOOL)arg1; +- (BOOL)existsInMailOnly; +- (void)setExistsInMailOnly:(BOOL)arg1; +- (void)_propagateChangeToBookmarksWithSameURLForKey:(id)arg1 value:(id)arg2; + +// Remaining properties +@property(retain) NSNumber *shouldSubscribe; // @dynamic shouldSubscribe; + +@end + diff --git a/MailHeaders/Lion/Message/TransientBookmarkFolder.h b/MailHeaders/Lion/Message/TransientBookmarkFolder.h new file mode 100644 index 00000000..873b5814 --- /dev/null +++ b/MailHeaders/Lion/Message/TransientBookmarkFolder.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface TransientBookmarkFolder : TransientBookmarkItem +{ + BOOL _localizedNameNeedRefresh; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; ++ (void)setEntity:(id)arg1; ++ (id)entity; +- (id)bookmarkChildren; +- (BOOL)containsFeed; +- (void)setContainsFeed:(BOOL)arg1; +- (void)calculateContainsFeed; +- (id)localizedName; +- (void)setLocalizedName:(id)arg1; +- (id)feedFolderChildren; +- (id)feedChildren; +- (unsigned long long)_feedChildrenCount; +- (unsigned long long)_feedFolderChildrenCount; +- (void)_updateContainsFeed:(BOOL)arg1; +- (void)didTurnIntoFault; + +@end + diff --git a/MailHeaders/Lion/Message/TransientBookmarkItem.h b/MailHeaders/Lion/Message/TransientBookmarkItem.h new file mode 100644 index 00000000..66c095b1 --- /dev/null +++ b/MailHeaders/Lion/Message/TransientBookmarkItem.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSManagedObject.h" + +@interface TransientBookmarkItem : NSManagedObject +{ +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; ++ (void)setEntity:(id)arg1; ++ (id)entity; +- (id)name; +- (void)setName:(id)arg1; +- (void)setPosition:(id)arg1; +- (id)parent; +- (void)setParent:(id)arg1; +- (void)setParent:(id)arg1 updatingContainsFeed:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/URLMatch.h b/MailHeaders/Lion/Message/URLMatch.h new file mode 100644 index 00000000..d19ac04a --- /dev/null +++ b/MailHeaders/Lion/Message/URLMatch.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSString; + +@interface URLMatch : NSObject +{ + struct _NSRange _range; + NSString *_url; +} + +- (id)initWithRange:(struct _NSRange)arg1 url:(id)arg2; +- (id)init; +- (void)dealloc; +- (id)description; +@property(copy) NSString *url; // @synthesize url=_url; +@property struct _NSRange range; // @synthesize range=_range; + +@end + diff --git a/MailHeaders/Lion/Message/URLifier.h b/MailHeaders/Lion/Message/URLifier.h new file mode 100644 index 00000000..f23150e4 --- /dev/null +++ b/MailHeaders/Lion/Message/URLifier.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface URLifier : NSObject +{ +} + ++ (id)urlMatchesForStringsInDictionary:(id)arg1; ++ (id)urlMatchesForString:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/UsageCounter.h b/MailHeaders/Lion/Message/UsageCounter.h new file mode 100644 index 00000000..c89f0e54 --- /dev/null +++ b/MailHeaders/Lion/Message/UsageCounter.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableDictionary, NSString; + +@interface UsageCounter : NSObject +{ + NSString *_name; + NSMutableDictionary *_counts; + BOOL _isDirty; +} + ++ (void)initialize; ++ (id)sharedInstance; ++ (BOOL)gatherJunkMailUsageCounts; ++ (void)setGatherJunkMailUsageCounts:(BOOL)arg1; +- (id)initWithName:(id)arg1; +- (void)dealloc; +- (void)finalize; +- (id)_dictionaryForKey:(id)arg1 createIfNeeded:(BOOL)arg2; +- (void)saveDefaults; +- (unsigned long long)numberOfDaysAvailableForKey:(id)arg1; +- (unsigned long long)countForKey:(id)arg1; +- (unsigned long long)countForKey:(id)arg1 includeToday:(BOOL)arg2; +- (void)removeCountForKey:(id)arg1; +- (void)incrementCountForKey:(id)arg1; +- (void)incrementCountForKey:(id)arg1 byCount:(unsigned long long)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/WebArchive-Conversion.h b/MailHeaders/Lion/Message/WebArchive-Conversion.h new file mode 100644 index 00000000..ca3ff1e8 --- /dev/null +++ b/MailHeaders/Lion/Message/WebArchive-Conversion.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "WebArchive.h" + +@interface WebArchive (Conversion) +- (id)attributedString; +@end + diff --git a/MailHeaders/Lion/Message/WebMessageDocument.h b/MailHeaders/Lion/Message/WebMessageDocument.h new file mode 100644 index 00000000..f08acb74 --- /dev/null +++ b/MailHeaders/Lion/Message/WebMessageDocument.h @@ -0,0 +1,70 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MimeBody, MimePart, NSDictionary, NSMutableDictionary, NSURL, ParsedMessage; + +@interface WebMessageDocument : NSObject +{ + NSDictionary *_mimePartsByURL; + NSMutableDictionary *_attachmentsByURL; + NSMutableDictionary *_headerAttachmentsByURL; + NSMutableDictionary *_backgroundImageAttachments; + NSURL *_baseURL; + MimeBody *_mimeBody; + MimePart *_htmlPart; + ParsedMessage *_parsedMessage; + unsigned int _preferredCharset; + int _uniqueId; + BOOL _shouldDownloadRemoteURLs; + BOOL _containsRemoteContent; + BOOL _messageIsFromMicrosoft; + BOOL _collapseQuotedBlocks; +} + ++ (void)initialize; ++ (id)openDocuments; ++ (id)invalidBaseURL; ++ (void)document:(id *)arg1 attachmentController:(id *)arg2 forURL:(id)arg3; ++ (void)document:(id *)arg1 attachmentController:(id *)arg2 mimePart:(id *)arg3 forURL:(id)arg4; ++ (void)document:(id *)arg1 attachment:(id *)arg2 forURL:(id)arg3; ++ (id)documentWithUniqueIdentifier:(unsigned long long)arg1; ++ (void)documentWillClose:(id)arg1; +- (id)initWithMimeBody:(id)arg1 forDisplay:(BOOL)arg2; +- (id)initForDisplay:(BOOL)arg1; +- (id)init; +- (void)dealloc; +- (id)mimePartForURL:(id)arg1; +- (id)attachmentForURL:(id)arg1 inHeaderView:(BOOL)arg2; +- (id)attachmentForURL:(id)arg1; +- (void)addAttachment:(id)arg1 forURL:(id)arg2 inHeaderView:(BOOL)arg3; +- (void)addAttachment:(id)arg1 forURL:(id)arg2; +- (void)addAttachments:(id)arg1; +- (BOOL)hasAttachmentViewController:(id)arg1; +- (id)userAttachments; +- (BOOL)hasAttachments; +- (id)attachments; +- (id)attachmentsByURL; +- (void)clearAttachmentsByURL; +- (id)mimeBody; +- (void)setPreferredEncoding:(unsigned int)arg1; +- (id)preferredCharacterSet; +- (unsigned long long)uniqueIdentifier; +- (id)parsedMessage; +- (id)parsedMessageFromRange:(id)arg1; +- (void)setShouldDownloadRemoteURLs:(BOOL)arg1; +- (BOOL)shouldDownloadRemoteURLs; +- (void)setContainsRemoteContent:(BOOL)arg1; +- (BOOL)containsRemoteContent; +- (void)setMessageIsFromMicrosoft:(BOOL)arg1; +- (BOOL)messageIsFromMicrosoft; +- (void)setCollapseQuotedBlocks:(BOOL)arg1; +- (BOOL)collapseQuotedBlocks; +@property(retain) NSURL *baseURL; // @synthesize baseURL=_baseURL; + +@end + diff --git a/MailHeaders/Lion/Message/WorkerThread.h b/MailHeaders/Lion/Message/WorkerThread.h new file mode 100644 index 00000000..b1395c2a --- /dev/null +++ b/MailHeaders/Lion/Message/WorkerThread.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface WorkerThread : NSObject +{ +} + ++ (void)initialize; ++ (void)addInvocationToQueue:(id)arg1; ++ (void)runInvocationOnQueueSynchronously:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/_ActivityAggregateArrayController.h b/MailHeaders/Lion/Message/_ActivityAggregateArrayController.h new file mode 100644 index 00000000..4ff4845d --- /dev/null +++ b/MailHeaders/Lion/Message/_ActivityAggregateArrayController.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSArrayController.h" + +@interface _ActivityAggregateArrayController : NSArrayController +{ +} + +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; + +@end + diff --git a/MailHeaders/Lion/Message/_ActivityMonitorMultiTarget.h b/MailHeaders/Lion/Message/_ActivityMonitorMultiTarget.h new file mode 100644 index 00000000..c6f84459 --- /dev/null +++ b/MailHeaders/Lion/Message/_ActivityMonitorMultiTarget.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableSet; + +@interface _ActivityMonitorMultiTarget : NSObject +{ + id _primaryTarget; + NSMutableSet *_allTargets; +} + +- (void)dealloc; +- (BOOL)addActivityTarget:(id)arg1; +- (BOOL)removeActivityTarget:(id)arg1; +- (id)primaryTarget; +- (void)setPrimaryTarget:(id)arg1; +- (id)allTargets; +- (id)displayName; + +@end + diff --git a/MailHeaders/Lion/Message/_AppleScriptHeaderRecord.h b/MailHeaders/Lion/Message/_AppleScriptHeaderRecord.h new file mode 100644 index 00000000..98ba1a73 --- /dev/null +++ b/MailHeaders/Lion/Message/_AppleScriptHeaderRecord.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class Message, NSString; + +@interface _AppleScriptHeaderRecord : NSObject +{ + NSString *_name; + id _content; + Message *_message; +} + +- (void)dealloc; +- (void)finalize; +- (id)name; +- (void)setName:(id)arg1; +- (id)content; +- (void)setContent:(id)arg1; +- (id)message; +- (void)setMessage:(id)arg1; +- (id)objectSpecifier; + +@end + diff --git a/MailHeaders/Lion/Message/_AppleTokenSASLClient.h b/MailHeaders/Lion/Message/_AppleTokenSASLClient.h new file mode 100644 index 00000000..151b03c8 --- /dev/null +++ b/MailHeaders/Lion/Message/_AppleTokenSASLClient.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _AppleTokenSASLClient : SASLClient +{ +} + +- (id)initWithMechanismName:(id)arg1 account:(id)arg2; +- (id)init; +- (id)initialResponse; +- (id)responseForServerData:(id)arg1; +- (id)newEncryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (id)newDecryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/_ConversationsMessageCollector.h b/MailHeaders/Lion/Message/_ConversationsMessageCollector.h new file mode 100644 index 00000000..f2f9e460 --- /dev/null +++ b/MailHeaders/Lion/Message/_ConversationsMessageCollector.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MessageConsumer-Protocol.h" + +@class NSMutableArray, NSMutableDictionary; + +@interface _ConversationsMessageCollector : NSObject +{ + NSMutableArray *_messages; + NSMutableDictionary *_conversationsMembers; +} + +- (id)init; +- (void)dealloc; +- (id)messages; +- (id)conversationsMembers; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByMessageID:(id)arg2; +- (BOOL)shouldCancel; +- (void)finishedSendingMessages; + +@end + diff --git a/MailHeaders/Lion/Message/_DataCollector.h b/MailHeaders/Lion/Message/_DataCollector.h new file mode 100644 index 00000000..21731b2e --- /dev/null +++ b/MailHeaders/Lion/Message/_DataCollector.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class LibraryMessage, NSFileHandle, NSString; + +@interface _DataCollector : NSObject +{ + NSString *_path; + NSString *_tmpPath; + LibraryMessage *_message; + NSString *_part; + NSFileHandle *_fileHandle; + unsigned long long _length; + BOOL _isEmpty; +} + +- (id)initWithMessage:(id)arg1 isPartial:(BOOL)arg2 part:(id)arg3; +- (void)dealloc; +- (void)finalize; +- (void)appendData:(id)arg1; +- (void)setData:(id)arg1; +- (void)done; + +@end + diff --git a/MailHeaders/Lion/Message/_ExternalSASLClient.h b/MailHeaders/Lion/Message/_ExternalSASLClient.h new file mode 100644 index 00000000..6b8bec8a --- /dev/null +++ b/MailHeaders/Lion/Message/_ExternalSASLClient.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _ExternalSASLClient : SASLClient +{ +} + +- (id)initWithMechanismName:(id)arg1 account:(id)arg2; +- (id)init; +- (id)initialResponse; +- (id)responseForServerData:(id)arg1; +- (id)newEncryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (id)newDecryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/_FormatFlowedWriter.h b/MailHeaders/Lion/Message/_FormatFlowedWriter.h new file mode 100644 index 00000000..83292df6 --- /dev/null +++ b/MailHeaders/Lion/Message/_FormatFlowedWriter.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSAttributedString, NSMutableAttributedString, NSMutableString, NSString; + +@interface _FormatFlowedWriter : NSObject +{ + NSAttributedString *_inputAttrString; + NSString *_inputString; + unsigned int _encoding; + NSMutableString *_outputString; + NSMutableString *_quotedString; + unsigned int _addedTrailingSpaces:1; + unsigned int _quoteLevel:31; + struct _NSRange _paraRange; + NSMutableString *_lineString; + NSMutableAttributedString *_attrString; +} + ++ (id)newWithAttributedString:(id)arg1 encoding:(unsigned int)arg2; +- (void)dealloc; +- (unsigned long long)_findLineBreakInRange:(struct _NSRange)arg1 maxCharWidthCount:(unsigned long long)arg2 endIsURL:(BOOL)arg3; +- (void)_outputQuotedParagraph; +- (id)outputString; +- (BOOL)addedTrailingSpaces; +- (id)quotedString; + +@end + diff --git a/MailHeaders/Lion/Message/_GoogleAccountSetupEnabler.h b/MailHeaders/Lion/Message/_GoogleAccountSetupEnabler.h new file mode 100644 index 00000000..0a2cc2e1 --- /dev/null +++ b/MailHeaders/Lion/Message/_GoogleAccountSetupEnabler.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +#import "NSURLConnectionDelegate-Protocol.h" + +@interface _GoogleAccountSetupEnabler : AccountSetupEnabler +{ + BOOL _isEnabling; +} + ++ (BOOL)_canHandleHostname:(id)arg1; +- (void)synchronouslyEnable; +- (void)connection:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (void)connectionDidFinishLoading:(id)arg1; +- (void)connection:(id)arg1 didFailWithError:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/_IMAPClientSimulatedSelectOperation.h b/MailHeaders/Lion/Message/_IMAPClientSimulatedSelectOperation.h new file mode 100644 index 00000000..f7e4feb7 --- /dev/null +++ b/MailHeaders/Lion/Message/_IMAPClientSimulatedSelectOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _IMAPClientSimulatedSelectOperation : IMAPClientSelectOperation +{ +} + ++ (void)initialize; ++ (id)newWithMailboxName:(id)arg1; +- (void)main; + +@end + diff --git a/MailHeaders/Lion/Message/_IMAPFetchUnit.h b/MailHeaders/Lion/Message/_IMAPFetchUnit.h new file mode 100644 index 00000000..25a1e381 --- /dev/null +++ b/MailHeaders/Lion/Message/_IMAPFetchUnit.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class IMAPClientFetchDataItem, IMAPFetchResult; + +@interface _IMAPFetchUnit : NSObject +{ + unsigned int _uid; + IMAPClientFetchDataItem *_fetchItem; + IMAPFetchResult *_expectedFetchResult; +} + +- (void)dealloc; +- (void)_setupExpectedFetchResult; +- (BOOL)matchesFetchResponse:(id)arg1; +- (id)newFailedFetchResponse; +@property(retain) IMAPFetchResult *expectedFetchResult; // @synthesize expectedFetchResult=_expectedFetchResult; +@property(retain) IMAPClientFetchDataItem *fetchItem; // @synthesize fetchItem=_fetchItem; +@property unsigned int uid; // @synthesize uid=_uid; + +@end + diff --git a/MailHeaders/Lion/Message/_IMAPMailboxDeletionQueueEntry.h b/MailHeaders/Lion/Message/_IMAPMailboxDeletionQueueEntry.h new file mode 100644 index 00000000..5363c859 --- /dev/null +++ b/MailHeaders/Lion/Message/_IMAPMailboxDeletionQueueEntry.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class IMAPAccount, NSArray; + +@interface _IMAPMailboxDeletionQueueEntry : NSObject +{ + NSArray *_urls; + NSArray *_paths; + IMAPAccount *_account; +} + +- (void)dealloc; +@property(retain, nonatomic) IMAPAccount *account; // @synthesize account=_account; +@property(retain, nonatomic) NSArray *paths; // @synthesize paths=_paths; +@property(retain, nonatomic) NSArray *urls; // @synthesize urls=_urls; + +@end + diff --git a/MailHeaders/Lion/Message/_ISPLocalAccountSettingsManager.h b/MailHeaders/Lion/Message/_ISPLocalAccountSettingsManager.h new file mode 100644 index 00000000..87c1abed --- /dev/null +++ b/MailHeaders/Lion/Message/_ISPLocalAccountSettingsManager.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _ISPLocalAccountSettingsManager : ISPAccountSettingsManager +{ +} + +- (id)_persistanceFolderName; + +@end + diff --git a/MailHeaders/Lion/Message/_ISPOnlineAccountSettingsManager.h b/MailHeaders/Lion/Message/_ISPOnlineAccountSettingsManager.h new file mode 100644 index 00000000..eac3b657 --- /dev/null +++ b/MailHeaders/Lion/Message/_ISPOnlineAccountSettingsManager.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSCache, NSString; + +@interface _ISPOnlineAccountSettingsManager : ISPAccountSettingsManager +{ + NSString *_ispAccountsXQuery; + NSCache *_fetchedISPPlistsByDomain; +} + +- (id)init; +- (void)dealloc; +- (id)_persistanceFolderName; +- (BOOL)_shouldVerifyLoadedISPPlist; +- (id)_ispPlistForDomain:(id)arg1; +- (id)_fetchISPDataForDomain:(id)arg1; +- (id)_ispPlistFromXMLDocument:(id)arg1; +- (void)_finalizeISPAccountsSettings:(id)arg1; +- (id)_receivingAccountSettingsForDomain:(id)arg1 fetchIfNecessary:(BOOL)arg2; +- (id)_deliveryAccountsSettingsForDomain:(id)arg1 fetchIfNecessary:(BOOL)arg2; +- (void)emptyCache; + +@end + diff --git a/MailHeaders/Lion/Message/_LibSasl2SASLClient.h b/MailHeaders/Lion/Message/_LibSasl2SASLClient.h new file mode 100644 index 00000000..2f52377c --- /dev/null +++ b/MailHeaders/Lion/Message/_LibSasl2SASLClient.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _LibSasl2SASLClient : SASLClient +{ + struct sasl_callback *_callbacks; + struct sasl_conn *_saslConnection; + char *_userLanguageCode; + char *_authenticationName; + char *_authorizationName; + struct sasl_secret *_password; + BOOL _mechanismUsesPlainText; + BOOL _started; +} + +- (id)initWithMechanismName:(id)arg1 account:(id)arg2 externalSecurityLayer:(unsigned int)arg3; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (id)description; +- (void)setUpSASLConnectionWithExternalSecurityLayer:(unsigned int)arg1; +- (void)setAuthenticationState:(long long)arg1; +- (id)startSASLConnectionReturnInitialResponse:(BOOL)arg1; +- (id)initialResponse; +- (id)responseForServerData:(id)arg1; +- (void)checkPlainTextPasswordInResponse:(id)arg1; +- (id)newEncryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (id)newDecryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (BOOL)resetWithExternalSecurityLayer:(unsigned int)arg1; +- (void)clearAuthenticationCallbackBuffers; +- (void)logSASLErrorWithGenericDescription:(id)arg1; +@property(nonatomic) BOOL started; // @synthesize started=_started; +@property(nonatomic) BOOL mechanismUsesPlainText; // @synthesize mechanismUsesPlainText=_mechanismUsesPlainText; +@property(nonatomic) struct sasl_conn *saslConnection; // @synthesize saslConnection=_saslConnection; +@property(nonatomic) struct sasl_callback *callbacks; // @synthesize callbacks=_callbacks; + +@end + diff --git a/MailHeaders/Lion/Message/_LibraryStoreMessageConsumer.h b/MailHeaders/Lion/Message/_LibraryStoreMessageConsumer.h new file mode 100644 index 00000000..38511cfd --- /dev/null +++ b/MailHeaders/Lion/Message/_LibraryStoreMessageConsumer.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MessageConsumer-Protocol.h" + +@class InvocationQueue, LibraryStore; + +@interface _LibraryStoreMessageConsumer : NSObject +{ + LibraryStore *_libraryStore; + InvocationQueue *_callbackQueue; +} + +- (id)initWithLibraryStore:(id)arg1 useCallbackQueue:(BOOL)arg2; +- (void)dealloc; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByMessageID:(id)arg2; +- (BOOL)shouldCancel; +- (id)libraryNotificationObject; +- (id)libraryNotificationMessages; +- (void)finishedSendingMessages; + +@end + diff --git a/MailHeaders/Lion/Message/_LibraryThreadRequest.h b/MailHeaders/Lion/Message/_LibraryThreadRequest.h new file mode 100644 index 00000000..095a955c --- /dev/null +++ b/MailHeaders/Lion/Message/_LibraryThreadRequest.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableArray, RemoteStore; + +@interface _LibraryThreadRequest : NSObject +{ + NSMutableArray *_messages; + RemoteStore *_store; + BOOL _isFollowOnToProgressTask; +} + +- (id)initWithStore:(id)arg1 andMessages:(id)arg2; +- (id)init; +- (void)dealloc; +@property(nonatomic) BOOL isFollowOnToProgressTask; // @synthesize isFollowOnToProgressTask=_isFollowOnToProgressTask; +@property(readonly) RemoteStore *store; // @synthesize store=_store; +@property(retain, nonatomic) NSMutableArray *messages; // @synthesize messages=_messages; + +@end + diff --git a/MailHeaders/Lion/Message/_MFAddressManagerCachedImageValue.h b/MailHeaders/Lion/Message/_MFAddressManagerCachedImageValue.h new file mode 100644 index 00000000..b2c183c7 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFAddressManagerCachedImageValue.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSImage; + +@interface _MFAddressManagerCachedImageValue : NSObject +{ + NSImage *_image; + double _fetchDate; +} + +- (id)initWithImage:(id)arg1; +- (id)init; +- (void)dealloc; +- (BOOL)isStaleImage; +@property(retain, nonatomic) NSImage *image; // @synthesize image=_image; + +@end + diff --git a/MailHeaders/Lion/Message/_MFConversationCalculationContext.h b/MailHeaders/Lion/Message/_MFConversationCalculationContext.h new file mode 100644 index 00000000..68701769 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFConversationCalculationContext.h @@ -0,0 +1,216 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class LibraryMessage, NSData, NSHashTable, NSMutableDictionary, NSMutableSet, PreparedStatement, SqliteHandle; + +@interface _MFConversationCalculationContext : NSObject +{ + long long _rowID; + LibraryMessage *_message; + long long _subjectID; + unsigned long long _subjectLength; + BOOL _hasSubjectPrefix; + BOOL _hasReferences; + NSData *_messageIDHeader; + long long _conversationID; + BOOL _messageType; + long long _mailbox; + long long _senderID; + int _dateReceived; + NSHashTable *_participants; + SqliteHandle *_handle; + struct sqlite3 *_db; + BOOL _didTearDown; + BOOL _conversationsWereReset; + NSMutableSet *_addedConversations; + NSMutableSet *_removedConversations; + NSMutableSet *_updatedConversations; + NSMutableDictionary *_oldConversationIDByMessage; + NSMutableDictionary *_newConversationIDByMessage; + PreparedStatement *_conversationIDOfRSSArticleStatement; + PreparedStatement *_messageHasReferencesStatement; + PreparedStatement *_messageHasMessageIDStatement; + PreparedStatement *_conversationIDOfCloneStatement; + PreparedStatement *_conversationIDOfAutomatedAncestorWithReferencesStatement; + PreparedStatement *_conversationIDOfAutomatedPeerWithReferencesStatement; + PreparedStatement *_conversationIDOfAutomatedMessageWithoutReferencesStatement; + PreparedStatement *_conversationIDOfClosestAncestorStatement; + PreparedStatement *_peersOfMessageStatement; + PreparedStatement *_addMessageToConversationStatement; + PreparedStatement *_messagesInConversationStatement; + PreparedStatement *_descendantsToSplitFromConversationStatement; + PreparedStatement *_descendantsOfMessageStatement; + PreparedStatement *_descendantBelongsToSameConversationAsAncestorStatement; + PreparedStatement *_peersToSplitFromConversationStatement; + PreparedStatement *_fuzzyMessagesWithSameSubjectStatement; + PreparedStatement *_candidateMessagesForFuzzyMatchingStatement; + PreparedStatement *_fuzzyMessagesToSplitFromConversationStatement; + PreparedStatement *_recipientsForRowIDStatement; + PreparedStatement *_dateReceivedForRowIDStatement; + PreparedStatement *_senderForRowIDStatement; + PreparedStatement *_conversationIDForRowIDStatement; + PreparedStatement *_setFuzzyAncestorForRowIDStatement; + PreparedStatement *_subjectForRowIDStatement; + PreparedStatement *_automatedConversationTypeForRowIDStatement; + PreparedStatement *_clonesForRowIDStatement; + double _conversationIDOfRSSArticleTime; + double _messageHasReferencesTime; + double _messageHasMessageIDTime; + double _conversationIDOfCloneTime; + double _conversationIDOfClosestAncestorTime; + double _descendantsOfMessagesTime; + double _peersOfMessagesTime; + double _fuzzyDescendantsToSplitTime; + double _conversationIDOfFuzzyAncestorTime; + double _descendantsOfMessageToSplitTime; + double _createNewConversationFromMessageTime; + double _addMessageToConversationTime; + double _mergeConversationsTime; + double _calculateConversationForMessageTotalTime; + double _conversationIDOfAutomatedMessageWithReferencesTime; + double _conversationIDOfAutomatedMessageWithoutReferencesTime; + unsigned long long _rssCount; + unsigned long long _cloneCount; + unsigned long long _closestAncestorCount; + unsigned long long _descendantsFoundCount; + unsigned long long _peersFoundCount; + unsigned long long _fuzzyDescendantsToSplitCount; + unsigned long long _fuzzyAncestorCount; + unsigned long long _descendantsToSplitCount; + unsigned long long _newConversationCount; + unsigned long long _addMessageToConversationCount; + unsigned long long _conversationsSplitCount; + unsigned long long _conversationsMergeCount; + unsigned long long _messagesMergedCount; + unsigned long long _fuzzyMatchesCacheHits; + unsigned long long _fuzzyMatchesCacheMisses; + unsigned long long _automatedMessagesWithReferencesCount; + unsigned long long _automatedMessagesWithoutReferencesCount; +} + +- (id)initWithHandle:(id)arg1; +- (void)resetForNewRow; +@property(nonatomic) long long nextConversationID; +- (void)tearDown; +- (void)dealloc; +- (void)conversationWasAdded:(long long)arg1; +- (void)conversationWasRemoved:(long long)arg1; +- (void)conversationWasUpdated:(long long)arg1; +- (long long)conversationIDOfRSSArticle; +- (BOOL)messageHasReferences; +- (BOOL)messageHasMessageID; +- (long long)conversationIDOfCloneWithRowID:(long long *)arg1; +- (long long)conversationIDOfClosestAncestorWithRowID:(long long *)arg1; +- (long long)conversationIDOfFuzzyAncestorWithRowID:(long long *)arg1; +- (id)peersOfMessageExcludingAncestorConversationID:(long long)arg1 descendantConversationID:(long long)arg2; +- (long long)conversationIDOfAutomatedMessageWithoutReferences; +- (long long)conversationIDOfAutomatedMessageWithReferences; +- (long long)conversationIDUsingFuzzyHeuristicOfRowID:(long long)arg1 withSubject:(long long)arg2 subjectLength:(unsigned long long)arg3 sender:(long long)arg4 hasPrefix:(BOOL)arg5 participantsByRowID:(id)arg6 conversationIDByRowID:(id)arg7 dateReceivedByRowID:(id)arg8 resultRowID:(long long *)arg9 abortOnMatchBetterThanRowID:(long long)arg10; +- (id)fuzzyDescendantsToSplitExcludingConversationIDs:(id)arg1; +- (id)descendantsOfMessageExcludingConversationID:(long long)arg1; +- (long long)conversationIDOfClosestDescendantExcludingConversationID:(long long)arg1; +- (BOOL)descendant:(long long)arg1 belongsToSameConversationAsAncestor:(long long)arg2; +- (id)descendantsOfMessageToSplit; +- (id)recursiveDescendantsInConversations:(id)arg1; +- (id)conversationsWithFuzzyDescendantsExcludingConversations:(id)arg1; +- (unsigned long long)messagesWithSubject:(long long)arg1 participantsByRowID:(id)arg2 conversationIDByRowID:(id)arg3 dateReceivedByRowID:(id)arg4; +- (id)messagesInConversations:(id)arg1 count:(unsigned long long *)arg2; +- (long long)rowIDOfBestFuzzyAncestorForMessage:(long long)arg1 subjectID:(long long)arg2 subjectLength:(unsigned long long)arg3 dateReceived:(int)arg4 senderID:(long long)arg5 hasPrefix:(BOOL)arg6 participantsByRowID:(id)arg7 conversationIDByRowID:(id)arg8 dateReceivedByRowID:(id)arg9 currentFuzzyAncestor:(long long)arg10 abortOnMatchBetterThanRowID:(long long)arg11 conversationIDOfBestFuzzyAncestor:(long long *)arg12; +- (void)setFuzzyAncestor:(long long)arg1 forRowID:(long long)arg2; +- (int)dateReceivedForRowID:(long long)arg1; +- (long long)senderForRowID:(long long)arg1; +- (unsigned long long)subjectLengthForRowID:(long long)arg1; +- (long long)conversationIDForRowID:(long long)arg1; +- (id)recipientsForRowID:(long long)arg1; +- (id)participantsForRowID:(long long)arg1; +@property(retain, nonatomic) NSHashTable *participants; // @synthesize participants=_participants; +- (id)clonesForRowID:(long long)arg1; +- (unsigned long long)automatedConversationTypeForRowID:(long long)arg1; +@property(nonatomic) unsigned long long automatedMessagesWithoutReferencesCount; // @synthesize automatedMessagesWithoutReferencesCount=_automatedMessagesWithoutReferencesCount; +@property(nonatomic) unsigned long long automatedMessagesWithReferencesCount; // @synthesize automatedMessagesWithReferencesCount=_automatedMessagesWithReferencesCount; +@property(nonatomic) unsigned long long fuzzyMatchesCacheMisses; // @synthesize fuzzyMatchesCacheMisses=_fuzzyMatchesCacheMisses; +@property(nonatomic) unsigned long long fuzzyMatchesCacheHits; // @synthesize fuzzyMatchesCacheHits=_fuzzyMatchesCacheHits; +@property(nonatomic) unsigned long long messagesMergedCount; // @synthesize messagesMergedCount=_messagesMergedCount; +@property(nonatomic) unsigned long long conversationsMergeCount; // @synthesize conversationsMergeCount=_conversationsMergeCount; +@property(nonatomic) unsigned long long conversationsSplitCount; // @synthesize conversationsSplitCount=_conversationsSplitCount; +@property(nonatomic) unsigned long long addMessageToConversationCount; // @synthesize addMessageToConversationCount=_addMessageToConversationCount; +@property(nonatomic) unsigned long long newConversationCount; // @synthesize newConversationCount=_newConversationCount; +@property(nonatomic) unsigned long long descendantsToSplitCount; // @synthesize descendantsToSplitCount=_descendantsToSplitCount; +@property(nonatomic) unsigned long long fuzzyAncestorCount; // @synthesize fuzzyAncestorCount=_fuzzyAncestorCount; +@property(nonatomic) unsigned long long fuzzyDescendantsToSplitCount; // @synthesize fuzzyDescendantsToSplitCount=_fuzzyDescendantsToSplitCount; +@property(nonatomic) unsigned long long peersFoundCount; // @synthesize peersFoundCount=_peersFoundCount; +@property(nonatomic) unsigned long long descendantsFoundCount; // @synthesize descendantsFoundCount=_descendantsFoundCount; +@property(nonatomic) unsigned long long closestAncestorCount; // @synthesize closestAncestorCount=_closestAncestorCount; +@property(nonatomic) unsigned long long cloneCount; // @synthesize cloneCount=_cloneCount; +@property(nonatomic) unsigned long long rssCount; // @synthesize rssCount=_rssCount; +@property(nonatomic) double conversationIDOfAutomatedMessageWithoutReferencesTime; // @synthesize conversationIDOfAutomatedMessageWithoutReferencesTime=_conversationIDOfAutomatedMessageWithoutReferencesTime; +@property(nonatomic) double conversationIDOfAutomatedMessageWithReferencesTime; // @synthesize conversationIDOfAutomatedMessageWithReferencesTime=_conversationIDOfAutomatedMessageWithReferencesTime; +@property(nonatomic) double calculateConversationForMessageTotalTime; // @synthesize calculateConversationForMessageTotalTime=_calculateConversationForMessageTotalTime; +@property(nonatomic) double mergeConversationsTime; // @synthesize mergeConversationsTime=_mergeConversationsTime; +@property(nonatomic) double addMessageToConversationTime; // @synthesize addMessageToConversationTime=_addMessageToConversationTime; +@property(nonatomic) double createNewConversationFromMessageTime; // @synthesize createNewConversationFromMessageTime=_createNewConversationFromMessageTime; +@property(nonatomic) double descendantsOfMessageToSplitTime; // @synthesize descendantsOfMessageToSplitTime=_descendantsOfMessageToSplitTime; +@property(nonatomic) double conversationIDOfFuzzyAncestorTime; // @synthesize conversationIDOfFuzzyAncestorTime=_conversationIDOfFuzzyAncestorTime; +@property(nonatomic) double fuzzyDescendantsToSplitTime; // @synthesize fuzzyDescendantsToSplitTime=_fuzzyDescendantsToSplitTime; +@property(nonatomic) double peersOfMessagesTime; // @synthesize peersOfMessagesTime=_peersOfMessagesTime; +@property(nonatomic) double descendantsOfMessagesTime; // @synthesize descendantsOfMessagesTime=_descendantsOfMessagesTime; +@property(nonatomic) double conversationIDOfClosestAncestorTime; // @synthesize conversationIDOfClosestAncestorTime=_conversationIDOfClosestAncestorTime; +@property(nonatomic) double conversationIDOfCloneTime; // @synthesize conversationIDOfCloneTime=_conversationIDOfCloneTime; +@property(nonatomic) double messageHasMessageIDTime; // @synthesize messageHasMessageIDTime=_messageHasMessageIDTime; +@property(nonatomic) double messageHasReferencesTime; // @synthesize messageHasReferencesTime=_messageHasReferencesTime; +@property(nonatomic) double conversationIDOfRSSArticleTime; // @synthesize conversationIDOfRSSArticleTime=_conversationIDOfRSSArticleTime; +@property(retain, nonatomic) PreparedStatement *clonesForRowIDStatement; // @synthesize clonesForRowIDStatement=_clonesForRowIDStatement; +@property(retain, nonatomic) PreparedStatement *automatedConversationTypeForRowIDStatement; // @synthesize automatedConversationTypeForRowIDStatement=_automatedConversationTypeForRowIDStatement; +@property(retain, nonatomic) PreparedStatement *subjectForRowIDStatement; // @synthesize subjectForRowIDStatement=_subjectForRowIDStatement; +@property(retain, nonatomic) PreparedStatement *setFuzzyAncestorForRowIDStatement; // @synthesize setFuzzyAncestorForRowIDStatement=_setFuzzyAncestorForRowIDStatement; +@property(retain, nonatomic) PreparedStatement *conversationIDForRowIDStatement; // @synthesize conversationIDForRowIDStatement=_conversationIDForRowIDStatement; +@property(retain, nonatomic) PreparedStatement *senderForRowIDStatement; // @synthesize senderForRowIDStatement=_senderForRowIDStatement; +@property(retain, nonatomic) PreparedStatement *dateReceivedForRowIDStatement; // @synthesize dateReceivedForRowIDStatement=_dateReceivedForRowIDStatement; +@property(retain, nonatomic) PreparedStatement *recipientsForRowIDStatement; // @synthesize recipientsForRowIDStatement=_recipientsForRowIDStatement; +@property(retain, nonatomic) PreparedStatement *candidateMessagesForFuzzyMatchingStatement; // @synthesize candidateMessagesForFuzzyMatchingStatement=_candidateMessagesForFuzzyMatchingStatement; +@property(retain, nonatomic) PreparedStatement *fuzzyMessagesWithSameSubjectStatement; // @synthesize fuzzyMessagesWithSameSubjectStatement=_fuzzyMessagesWithSameSubjectStatement; +@property(retain, nonatomic) PreparedStatement *fuzzyMessagesToSplitFromConversationStatement; // @synthesize fuzzyMessagesToSplitFromConversationStatement=_fuzzyMessagesToSplitFromConversationStatement; +@property(retain, nonatomic) PreparedStatement *peersToSplitFromConversationStatement; // @synthesize peersToSplitFromConversationStatement=_peersToSplitFromConversationStatement; +@property(retain, nonatomic) PreparedStatement *descendantBelongsToSameConversationAsAncestorStatement; // @synthesize descendantBelongsToSameConversationAsAncestorStatement=_descendantBelongsToSameConversationAsAncestorStatement; +@property(retain, nonatomic) PreparedStatement *descendantsOfMessageStatement; // @synthesize descendantsOfMessageStatement=_descendantsOfMessageStatement; +@property(retain, nonatomic) PreparedStatement *descendantsToSplitFromConversationStatement; // @synthesize descendantsToSplitFromConversationStatement=_descendantsToSplitFromConversationStatement; +@property(retain, nonatomic) PreparedStatement *messagesInConversationStatement; // @synthesize messagesInConversationStatement=_messagesInConversationStatement; +@property(retain, nonatomic) PreparedStatement *addMessageToConversationStatement; // @synthesize addMessageToConversationStatement=_addMessageToConversationStatement; +@property(retain, nonatomic) PreparedStatement *peersOfMessageStatement; // @synthesize peersOfMessageStatement=_peersOfMessageStatement; +@property(retain, nonatomic) PreparedStatement *conversationIDOfClosestAncestorStatement; // @synthesize conversationIDOfClosestAncestorStatement=_conversationIDOfClosestAncestorStatement; +@property(retain, nonatomic) PreparedStatement *conversationIDOfAutomatedMessageWithoutReferencesStatement; // @synthesize conversationIDOfAutomatedMessageWithoutReferencesStatement=_conversationIDOfAutomatedMessageWithoutReferencesStatement; +@property(retain, nonatomic) PreparedStatement *conversationIDOfAutomatedPeerWithReferencesStatement; // @synthesize conversationIDOfAutomatedPeerWithReferencesStatement=_conversationIDOfAutomatedPeerWithReferencesStatement; +@property(retain, nonatomic) PreparedStatement *conversationIDOfAutomatedAncestorWithReferencesStatement; // @synthesize conversationIDOfAutomatedAncestorWithReferencesStatement=_conversationIDOfAutomatedAncestorWithReferencesStatement; +@property(retain, nonatomic) PreparedStatement *conversationIDOfCloneStatement; // @synthesize conversationIDOfCloneStatement=_conversationIDOfCloneStatement; +@property(retain, nonatomic) PreparedStatement *messageHasMessageIDStatement; // @synthesize messageHasMessageIDStatement=_messageHasMessageIDStatement; +@property(retain, nonatomic) PreparedStatement *messageHasReferencesStatement; // @synthesize messageHasReferencesStatement=_messageHasReferencesStatement; +@property(retain, nonatomic) PreparedStatement *conversationIDOfRSSArticleStatement; // @synthesize conversationIDOfRSSArticleStatement=_conversationIDOfRSSArticleStatement; +@property(retain, nonatomic) NSMutableDictionary *newConversationIDByMessage; // @synthesize newConversationIDByMessage=_newConversationIDByMessage; +@property(retain, nonatomic) NSMutableDictionary *oldConversationIDByMessage; // @synthesize oldConversationIDByMessage=_oldConversationIDByMessage; +@property(retain, nonatomic) NSMutableSet *updatedConversations; // @synthesize updatedConversations=_updatedConversations; +@property(retain, nonatomic) NSMutableSet *removedConversations; // @synthesize removedConversations=_removedConversations; +@property(retain, nonatomic) NSMutableSet *addedConversations; // @synthesize addedConversations=_addedConversations; +@property(nonatomic) BOOL conversationsWereReset; // @synthesize conversationsWereReset=_conversationsWereReset; +@property(readonly, nonatomic) BOOL didTearDown; // @synthesize didTearDown=_didTearDown; +@property(readonly, nonatomic) struct sqlite3 *db; // @synthesize db=_db; +@property(readonly, retain, nonatomic) SqliteHandle *handle; // @synthesize handle=_handle; +@property(nonatomic) int dateReceived; // @synthesize dateReceived=_dateReceived; +@property(nonatomic) long long senderID; // @synthesize senderID=_senderID; +@property(nonatomic) long long mailbox; // @synthesize mailbox=_mailbox; +@property(nonatomic) BOOL messageType; // @synthesize messageType=_messageType; +@property(nonatomic) long long conversationID; // @synthesize conversationID=_conversationID; +@property(retain, nonatomic) NSData *messageIDHeader; // @synthesize messageIDHeader=_messageIDHeader; +@property(nonatomic) BOOL hasReferences; // @synthesize hasReferences=_hasReferences; +@property(nonatomic) BOOL hasSubjectPrefix; // @synthesize hasSubjectPrefix=_hasSubjectPrefix; +@property(nonatomic) unsigned long long subjectLength; // @synthesize subjectLength=_subjectLength; +@property(nonatomic) long long subjectID; // @synthesize subjectID=_subjectID; +@property(retain, nonatomic) LibraryMessage *message; // @synthesize message=_message; +@property(nonatomic) long long rowID; // @synthesize rowID=_rowID; + +@end + diff --git a/MailHeaders/Lion/Message/_MFFlagCheckInfo.h b/MailHeaders/Lion/Message/_MFFlagCheckInfo.h new file mode 100644 index 00000000..04a51e4a --- /dev/null +++ b/MailHeaders/Lion/Message/_MFFlagCheckInfo.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface _MFFlagCheckInfo : NSObject +{ + double _firstCountDifferenceTime; + double _lastCheckAllowedTime; + BOOL _hadCountDifference; +} + +- (id)init; +- (double)timeSinceFirstCountDifference; +- (double)timeSinceLastCheckAllowed; +- (BOOL)hasAllowedCheckAfterCountDifference; +- (BOOL)hadCountDifference; +- (void)setHadCountDifference; +- (void)resetAfterFullCheck:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/_MFInvocationOperation.h b/MailHeaders/Lion/Message/_MFInvocationOperation.h new file mode 100644 index 00000000..72d0b82d --- /dev/null +++ b/MailHeaders/Lion/Message/_MFInvocationOperation.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _MFInvocationOperation : ThrowingInvocationOperation +{ +} + +- (void)main; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueColor.h b/MailHeaders/Lion/Message/_MFMessageSortingValueColor.h new file mode 100644 index 00000000..946947e2 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueColor.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueColor : MFMessageSortingValue +{ + int _colorForSort; +} + +- (int)colorForSort; +- (void)setColorForSort:(int)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueDateLastViewed.h b/MailHeaders/Lion/Message/_MFMessageSortingValueDateLastViewed.h new file mode 100644 index 00000000..f0323227 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueDateLastViewed.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueDateLastViewed : MFMessageSortingValue +{ + double _dateLastViewedAsTimeIntervalSince1970; +} + +- (double)dateLastViewedAsTimeIntervalSince1970; +- (void)setDateLastViewedAsTimeIntervalSince1970:(double)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueDateReceived.h b/MailHeaders/Lion/Message/_MFMessageSortingValueDateReceived.h new file mode 100644 index 00000000..32e6b15f --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueDateReceived.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueDateReceived : MFMessageSortingValue +{ + double _dateReceivedAsTimeIntervalSince1970; +} + +- (double)dateReceivedAsTimeIntervalSince1970; +- (void)setDateReceivedAsTimeIntervalSince1970:(double)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueDateSent.h b/MailHeaders/Lion/Message/_MFMessageSortingValueDateSent.h new file mode 100644 index 00000000..33eb07db --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueDateSent.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueDateSent : MFMessageSortingValue +{ + double _dateSentAsTimeIntervalSince1970; +} + +- (double)dateSentAsTimeIntervalSince1970; +- (void)setDateSentAsTimeIntervalSince1970:(double)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueLibraryID.h b/MailHeaders/Lion/Message/_MFMessageSortingValueLibraryID.h new file mode 100644 index 00000000..c107a657 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueLibraryID.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueLibraryID : MFMessageSortingValue +{ + long long _libraryID; +} + +- (long long)libraryID; +- (void)setLibraryID:(long long)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueMailbox.h b/MailHeaders/Lion/Message/_MFMessageSortingValueMailbox.h new file mode 100644 index 00000000..6cab0100 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueMailbox.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class MailboxUid; + +@interface _MFMessageSortingValueMailbox : MFMessageSortingValue +{ + MailboxUid *_mailbox; +} + +- (void)dealloc; +- (id)mailbox; +- (void)setMailbox:(id)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueMessageFlags.h b/MailHeaders/Lion/Message/_MFMessageSortingValueMessageFlags.h new file mode 100644 index 00000000..835a9af9 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueMessageFlags.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueMessageFlags : MFMessageSortingValue +{ + unsigned int _messageFlags; +} + +- (unsigned int)messageFlags; +- (void)setMessageFlags:(unsigned int)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueMessageSize.h b/MailHeaders/Lion/Message/_MFMessageSortingValueMessageSize.h new file mode 100644 index 00000000..9be10c28 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueMessageSize.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueMessageSize : MFMessageSortingValue +{ + unsigned long long _messageSize; +} + +- (unsigned long long)messageSize; +- (void)setMessageSize:(unsigned long long)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueNumberOfAttachments.h b/MailHeaders/Lion/Message/_MFMessageSortingValueNumberOfAttachments.h new file mode 100644 index 00000000..8bad9bc2 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueNumberOfAttachments.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueNumberOfAttachments : MFMessageSortingValue +{ + unsigned long long _numberOfAttachments; +} + +- (unsigned long long)numberOfAttachments; +- (void)setNumberOfAttachments:(unsigned long long)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueSender.h b/MailHeaders/Lion/Message/_MFMessageSortingValueSender.h new file mode 100644 index 00000000..ea7358e1 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueSender.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface _MFMessageSortingValueSender : MFMessageSortingValue +{ + NSString *_senderAddressComment; +} + +- (void)dealloc; +- (id)senderAddressComment; +- (void)setSenderAddressComment:(id)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueSenderOnline.h b/MailHeaders/Lion/Message/_MFMessageSortingValueSenderOnline.h new file mode 100644 index 00000000..5a40707c --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueSenderOnline.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueSenderOnline : _MFMessageSortingValueSender +{ + BOOL _senderIsAvailableOnline; +} + +- (BOOL)senderIsAvailableOnline; +- (void)setSenderIsAvailableOnline:(BOOL)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueSubject.h b/MailHeaders/Lion/Message/_MFMessageSortingValueSubject.h new file mode 100644 index 00000000..913d6860 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueSubject.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface _MFMessageSortingValueSubject : MFMessageSortingValue +{ + NSString *_subject; + unsigned char _subjectPrefixLength; +} + +- (void)dealloc; +- (id)subject; +- (void)setSubject:(id)arg1; +- (void)setSubjectPrefixLength:(unsigned char)arg1; +- (id)subjectAndPrefixLength:(unsigned long long *)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueTo.h b/MailHeaders/Lion/Message/_MFMessageSortingValueTo.h new file mode 100644 index 00000000..8c8e811a --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueTo.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface _MFMessageSortingValueTo : MFMessageSortingValue +{ + NSArray *_to; +} + +- (void)dealloc; +- (id)to; +- (void)setTo:(id)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFMessageSortingValueUid.h b/MailHeaders/Lion/Message/_MFMessageSortingValueUid.h new file mode 100644 index 00000000..703f0b79 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFMessageSortingValueUid.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueUid : MFMessageSortingValue +{ + unsigned int _uidForSort; +} + +- (unsigned int)uidForSort; +- (void)setUidForSort:(unsigned int)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Lion/Message/_MFRedundantTextIdentifierParseContext.h b/MailHeaders/Lion/Message/_MFRedundantTextIdentifierParseContext.h new file mode 100644 index 00000000..d9263f94 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFRedundantTextIdentifierParseContext.h @@ -0,0 +1,84 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSDictionary, NSMutableString; + +@interface _MFRedundantTextIdentifierParseContext : NSObject +{ + CDStruct_7e4886f7 *_buffer; + unsigned long long _bufferStartIndex; + unsigned long long _bufferLength; + long long _currentIndex; + long long _startMatchIndexForCurrentLine; + BOOL _searchInForwardDirection; + BOOL _startTagCharacter; + BOOL _endTagCharacter; + BOOL _startEntityCharacter; + BOOL _endEntityCharacter; + BOOL _isParsingEntity; + unsigned short _entityValueCharacter; + long long _entityStartIndex; + BOOL _isParsingAttachment; + NSMutableString *_attachmentNameString; + NSMutableString *_attachmentNameExtension; + long long _attachmentStartIndex; + long long _attachmentEndIndex; + BOOL _attachmentIsTag; + NSDictionary *_attachmentsByURL; +} + +- (id)initWithBuffer:(CDStruct_7e4886f7 *)arg1 bufferStartIndex:(unsigned long long)arg2 bufferLength:(unsigned long long)arg3 searchInForwardDirection:(BOOL)arg4 attachmentsByURL:(id)arg5; +- (void)dealloc; +- (id)description; +- (id)charactersInMessageWithCurrentIndexMarked; +- (unsigned long long)remainingCharacters; +- (unsigned long long)readAndAdvanceToEndOfTag:(char *)arg1 isCloseTag:(char *)arg2 shouldParseAttachmentTags:(BOOL)arg3; +- (unsigned long long)readElement:(char *)arg1 isCloseElement:(char *)arg2 shouldParseAttachmentTags:(BOOL)arg3; +- (BOOL)parseAttachmentFilenameFromAttribute:(const char *)arg1; +- (BOOL)advanceToEndOfCommentIfExists; +- (BOOL)advanceToClosingTagMatchingOpenTag:(char *)arg1 openTagSize:(unsigned long long)arg2; +- (BOOL)isBlockLevelTag:(char *)arg1 size:(unsigned long long)arg2; +- (void)incrementCurrentIndex; +- (void)incrementCurrentIndexBy:(unsigned long long)arg1; +- (unsigned short)currentCharFromBuffer; +- (unsigned short)nextCharacterToMatch; +- (unsigned short)charFromBufferAtIndex:(unsigned long long)arg1; +- (long long)advancePastNonContentTagsAndWhitespaceParsingAttachmentPlaceholders:(BOOL)arg1; +- (unsigned short)readAndAdvanceToEndOfEntityIfExists; +- (id)normalizedStringForEntity:(id)arg1; +- (void)normalizeEntitiesInString:(id)arg1; +- (BOOL)advanceToEndOfAttachmentPlaceholderIfExists; +- (void)sanitizeAttachmentName; +- (BOOL)attachmentMatches:(id)arg1 extension:(id)arg2; +- (long long)advanceToEndOfLine; +- (long long)advanceToEndOfLine:(char *)arg1; +- (void)resetCurrentIndex; +- (id)parseAndSanitizeAttributionLineInRange:(struct _NSRange *)arg1; +@property(readonly, nonatomic) NSDictionary *attachmentsByURL; // @synthesize attachmentsByURL=_attachmentsByURL; +@property(nonatomic) BOOL attachmentIsTag; // @synthesize attachmentIsTag=_attachmentIsTag; +@property(nonatomic) long long attachmentEndIndex; // @synthesize attachmentEndIndex=_attachmentEndIndex; +@property(nonatomic) long long attachmentStartIndex; // @synthesize attachmentStartIndex=_attachmentStartIndex; +@property(retain, nonatomic) NSMutableString *attachmentNameExtension; // @synthesize attachmentNameExtension=_attachmentNameExtension; +@property(retain, nonatomic) NSMutableString *attachmentNameString; // @synthesize attachmentNameString=_attachmentNameString; +@property(nonatomic) BOOL isParsingAttachment; // @synthesize isParsingAttachment=_isParsingAttachment; +@property(nonatomic) long long entityStartIndex; // @synthesize entityStartIndex=_entityStartIndex; +@property(nonatomic) unsigned short entityValueCharacter; // @synthesize entityValueCharacter=_entityValueCharacter; +@property(nonatomic) BOOL isParsingEntity; // @synthesize isParsingEntity=_isParsingEntity; +@property(readonly, nonatomic) BOOL endEntityCharacter; // @synthesize endEntityCharacter=_endEntityCharacter; +@property(readonly, nonatomic) BOOL startEntityCharacter; // @synthesize startEntityCharacter=_startEntityCharacter; +@property(readonly, nonatomic) BOOL endTagCharacter; // @synthesize endTagCharacter=_endTagCharacter; +@property(readonly, nonatomic) BOOL startTagCharacter; // @synthesize startTagCharacter=_startTagCharacter; +@property(nonatomic) BOOL searchInForwardDirection; // @synthesize searchInForwardDirection=_searchInForwardDirection; +@property(nonatomic) long long startMatchIndexForCurrentLine; // @synthesize startMatchIndexForCurrentLine=_startMatchIndexForCurrentLine; +@property(nonatomic) long long currentIndex; // @synthesize currentIndex=_currentIndex; +@property(readonly, nonatomic) unsigned long long bufferLength; // @synthesize bufferLength=_bufferLength; +@property(readonly, nonatomic) unsigned long long bufferStartIndex; // @synthesize bufferStartIndex=_bufferStartIndex; +@property(readonly, nonatomic) CDStruct_7e4886f7 *buffer; // @synthesize buffer=_buffer; + +@end + diff --git a/MailHeaders/Lion/Message/_MFRedundantTextIdentifierSolutionContext.h b/MailHeaders/Lion/Message/_MFRedundantTextIdentifierSolutionContext.h new file mode 100644 index 00000000..f7e87e6f --- /dev/null +++ b/MailHeaders/Lion/Message/_MFRedundantTextIdentifierSolutionContext.h @@ -0,0 +1,59 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSDictionary, NSMutableArray, NSMutableIndexSet; + +@interface _MFRedundantTextIdentifierSolutionContext : NSObject +{ + CDStruct_7e4886f7 *_replyBuffer; + unsigned long long _replyStartIndex; + unsigned long long _replyLength; + CDStruct_7e4886f7 *_originalBuffer; + unsigned long long _originalStartIndex; + unsigned long long _originalLength; + NSDictionary *_originalAttachmentsByURL; + NSDictionary *_replyAttachmentsByURL; + NSMutableArray *_redundantRanges; + NSMutableIndexSet *_redundantAttachmentStartIndexes; + NSMutableArray *_attributionLineRanges; + unsigned long long _startingIndexForRedundantRanges; + unsigned long long _startingIndexForAttributionLineRanges; + long long _lastIndexMatchedInOriginal; + long long _lastIndexMatchedInReply; + BOOL _searchInForwardDirection; + BOOL _matchedEntireOriginalContiguously; +} + +- (id)initWithReply:(CDStruct_7e4886f7 *)arg1 replyStartIndex:(unsigned long long)arg2 replyLength:(unsigned long long)arg3 replyAttachmentsByURL:(id)arg4 original:(CDStruct_7e4886f7 *)arg5 originalStartIndex:(unsigned long long)arg6 originalLength:(unsigned long long)arg7 originalAttachmentsByURL:(id)arg8 searchInForwardDirection:(BOOL)arg9; +- (void)dealloc; +- (id)description; +- (void)computeRedundantRangesInReply; +- (void)computeAttributionRangesInReply; +- (void)addRangeWithStart:(long long)arg1 end:(long long)arg2 toArray:(id)arg3; +- (unsigned long long)contentTypeForIndex:(unsigned long long)arg1; +- (BOOL)location:(unsigned long long)arg1 isInRangeArray:(id)arg2 startingIndex:(unsigned long long *)arg3; +@property(nonatomic) BOOL matchedEntireOriginalContiguously; // @synthesize matchedEntireOriginalContiguously=_matchedEntireOriginalContiguously; +@property(nonatomic) BOOL searchInForwardDirection; // @synthesize searchInForwardDirection=_searchInForwardDirection; +@property(nonatomic) long long lastIndexMatchedInReply; // @synthesize lastIndexMatchedInReply=_lastIndexMatchedInReply; +@property(nonatomic) long long lastIndexMatchedInOriginal; // @synthesize lastIndexMatchedInOriginal=_lastIndexMatchedInOriginal; +@property(nonatomic) unsigned long long startingIndexForAttributionLineRanges; // @synthesize startingIndexForAttributionLineRanges=_startingIndexForAttributionLineRanges; +@property(nonatomic) unsigned long long startingIndexForRedundantRanges; // @synthesize startingIndexForRedundantRanges=_startingIndexForRedundantRanges; +@property(retain, nonatomic) NSMutableArray *attributionLineRanges; // @synthesize attributionLineRanges=_attributionLineRanges; +@property(retain, nonatomic) NSMutableIndexSet *redundantAttachmentStartIndexes; // @synthesize redundantAttachmentStartIndexes=_redundantAttachmentStartIndexes; +@property(retain, nonatomic) NSMutableArray *redundantRanges; // @synthesize redundantRanges=_redundantRanges; +@property(readonly, nonatomic) NSDictionary *replyAttachmentsByURL; // @synthesize replyAttachmentsByURL=_replyAttachmentsByURL; +@property(readonly, nonatomic) NSDictionary *originalAttachmentsByURL; // @synthesize originalAttachmentsByURL=_originalAttachmentsByURL; +@property(readonly, nonatomic) unsigned long long originalLength; // @synthesize originalLength=_originalLength; +@property(nonatomic) unsigned long long originalStartIndex; // @synthesize originalStartIndex=_originalStartIndex; +@property(readonly, nonatomic) CDStruct_7e4886f7 *originalBuffer; // @synthesize originalBuffer=_originalBuffer; +@property(readonly, nonatomic) unsigned long long replyLength; // @synthesize replyLength=_replyLength; +@property(nonatomic) unsigned long long replyStartIndex; // @synthesize replyStartIndex=_replyStartIndex; +@property(readonly, nonatomic) CDStruct_7e4886f7 *replyBuffer; // @synthesize replyBuffer=_replyBuffer; + +@end + diff --git a/MailHeaders/Lion/Message/_MFRedundantTextIdentifierSolutionGenerator.h b/MailHeaders/Lion/Message/_MFRedundantTextIdentifierSolutionGenerator.h new file mode 100644 index 00000000..b4b0404f --- /dev/null +++ b/MailHeaders/Lion/Message/_MFRedundantTextIdentifierSolutionGenerator.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSDictionary; + +@interface _MFRedundantTextIdentifierSolutionGenerator : NSObject +{ + CDStruct_7e4886f7 *_replyBuffer; + CDStruct_7e4886f7 *_originalBuffer; + unsigned long long _replyLength; + unsigned long long _originalLength; + NSDictionary *_originalAttachmentsByURL; + NSDictionary *_replyAttachmentsByURL; +} + +- (id)initWithReply:(CDStruct_7e4886f7 *)arg1 replyLength:(unsigned long long)arg2 replyAttachmentsByURL:(id)arg3 original:(CDStruct_7e4886f7 *)arg4 originalLength:(unsigned long long)arg5 originalAttachmentsByURL:(id)arg6; +- (void)dealloc; +- (id)generateBestSolution; +- (id)generateBestSolutionInForwardDirection:(BOOL)arg1 replyStartIndex:(unsigned long long)arg2 originalStartIndex:(unsigned long long)arg3; +@property(readonly, nonatomic) NSDictionary *originalAttachmentsByURL; // @synthesize originalAttachmentsByURL=_originalAttachmentsByURL; +@property(readonly, nonatomic) NSDictionary *replyAttachmentsByURL; // @synthesize replyAttachmentsByURL=_replyAttachmentsByURL; +@property(readonly, nonatomic) unsigned long long originalLength; // @synthesize originalLength=_originalLength; +@property(readonly, nonatomic) unsigned long long replyLength; // @synthesize replyLength=_replyLength; +@property(readonly, nonatomic) CDStruct_7e4886f7 *originalBuffer; // @synthesize originalBuffer=_originalBuffer; +@property(readonly, nonatomic) CDStruct_7e4886f7 *replyBuffer; // @synthesize replyBuffer=_replyBuffer; + +@end + diff --git a/MailHeaders/Lion/Message/_MFZipStream.h b/MailHeaders/Lion/Message/_MFZipStream.h new file mode 100644 index 00000000..eaf78b1f --- /dev/null +++ b/MailHeaders/Lion/Message/_MFZipStream.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface _MFZipStream : NSObject +{ + struct __sFILE { + char *_field1; + int _field2; + int _field3; + short _field4; + short _field5; + struct __sbuf _field6; + int _field7; + void *_field8; + void *_field9; + void *_field10; + void *_field11; + void *_field12; + struct __sbuf _field13; + struct __sFILEX *_field14; + int _field15; + unsigned char _field16[3]; + unsigned char _field17[1]; + struct __sbuf _field18; + int _field19; + long long _field20; + } *_destination; + struct z_stream_s _zipStream; + unsigned char inBuffer[32768]; + unsigned char outBuffer[32768]; + BOOL _closed; +} + +- (id)initWithDestinationPath:(id)arg1; +- (void)dealloc; +- (void)appendData:(id)arg1; +- (void)closeStream; + +@end + diff --git a/MailHeaders/Lion/Message/_MFZombie_.h b/MailHeaders/Lion/Message/_MFZombie_.h new file mode 100644 index 00000000..37768d35 --- /dev/null +++ b/MailHeaders/Lion/Message/_MFZombie_.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@interface _MFZombie_ +{ + Class isa; +} + ++ (void)initialize; +- (id)methodSignatureForSelector:(SEL)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/_MailboxUidChildrenEnumerator.h b/MailHeaders/Lion/Message/_MailboxUidChildrenEnumerator.h new file mode 100644 index 00000000..2b1b895d --- /dev/null +++ b/MailHeaders/Lion/Message/_MailboxUidChildrenEnumerator.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@interface _MailboxUidChildrenEnumerator : NSEnumerator +{ + struct __CFTree *_root; + struct __CFTree *_currentTree; + BOOL _includeHidden; +} + +- (id)initWithTree:(struct __CFTree *)arg1 includeHiddenChildren:(BOOL)arg2; +- (id)init; +- (void)dealloc; +- (id)nextObject; + +@end + diff --git a/MailHeaders/Lion/Message/_MailboxUidEnumerator.h b/MailHeaders/Lion/Message/_MailboxUidEnumerator.h new file mode 100644 index 00000000..acfa2633 --- /dev/null +++ b/MailHeaders/Lion/Message/_MailboxUidEnumerator.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@interface _MailboxUidEnumerator : NSEnumerator +{ + struct __CFTree *_startTree; + struct __CFTree *_lastTree; +} + +- (id)initWithTree:(struct __CFTree *)arg1; +- (id)init; +- (void)dealloc; +- (id)nextObject; + +@end + diff --git a/MailHeaders/Lion/Message/_MatadorResultCollector.h b/MailHeaders/Lion/Message/_MatadorResultCollector.h new file mode 100644 index 00000000..96a6ceea --- /dev/null +++ b/MailHeaders/Lion/Message/_MatadorResultCollector.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class MessageCriterion, NSHashTable, NSString; + +@interface _MatadorResultCollector : NSObject +{ + MessageCriterion *_criterion; + MessageCriterion *_resultParent; + NSString *_expression; + id _target; + struct __MDQuery *_query; + NSHashTable *_seenItems; + unsigned int _options; +} + +- (id)initWithCriterion:(id)arg1 resultParentCriterion:(id)arg2 target:(id)arg3 query:(struct __MDQuery *)arg4 expression:(id)arg5; +- (void)dealloc; +- (void)finalize; +- (struct __MDQuery *)query; +- (void)setQuery:(struct __MDQuery *)arg1; +@property(nonatomic) unsigned int options; // @synthesize options=_options; +@property(retain, nonatomic) NSHashTable *seenItems; // @synthesize seenItems=_seenItems; +@property(retain, nonatomic) id target; // @synthesize target=_target; +@property(retain, nonatomic) NSString *expression; // @synthesize expression=_expression; +@property(retain, nonatomic) MessageCriterion *resultParent; // @synthesize resultParent=_resultParent; +@property(retain, nonatomic) MessageCriterion *criterion; // @synthesize criterion=_criterion; + +@end + diff --git a/MailHeaders/Lion/Message/_MessageCollector.h b/MailHeaders/Lion/Message/_MessageCollector.h new file mode 100644 index 00000000..bc07e7bf --- /dev/null +++ b/MailHeaders/Lion/Message/_MessageCollector.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +#import "MessageConsumer-Protocol.h" + +@class NSMutableArray; + +@interface _MessageCollector : NSObject +{ + NSMutableArray *_messages; + int _accessNumber; + BOOL _didCancel; +} + +- (id)init; +- (void)dealloc; +- (id)messages; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByMessageID:(id)arg2; +- (void)newMessagesAvailable:(id)arg1 conversationMembers:(id)arg2; +- (BOOL)shouldCancel; +- (BOOL)didCancel; +- (void)finishedSendingMessages; + +@end + diff --git a/MailHeaders/Lion/Message/_MimeEnrichedReader.h b/MailHeaders/Lion/Message/_MimeEnrichedReader.h new file mode 100644 index 00000000..b0722a93 --- /dev/null +++ b/MailHeaders/Lion/Message/_MimeEnrichedReader.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableString; + +@interface _MimeEnrichedReader : NSObject +{ + CDStruct_7e4886f7 _inputBuffer; + long long _currentIndex; + long long _inputLength; + unsigned int _noFillLevel:30; + unsigned int _eatOneNewline:1; + unsigned int _insideComment:1; + long long _lastQuoteLevel; + struct __CFArray *_commandStack; + id _outputString; + NSMutableString *_outputBuffer; + double _indentWidth; + BOOL outputShouldBeHTML; +} + ++ (id)punctuationSet; ++ (id)parenSet; +- (id)init; +- (void)dealloc; +- (void)finalize; +- (void)appendStringToBuffer:(id)arg1; +- (void)resetStateWithString:(id)arg1 outputString:(id)arg2; +- (void)nowWouldBeAGoodTimeToAppendToTheAttributedString; +- (void)fixConsecutiveSpaces:(id)arg1; +- (void)closeUpQuoting; +- (void)handleNoParameterCommand:(const CDStruct_3441fd00 *)arg1; +- (void)setupFontStackEntry:(struct _CommandStackEntry *)arg1; +- (void)beginCommand:(id)arg1; +- (void)endCommand:(id)arg1; +- (void)parseParameterString:(id)arg1; +- (id)currentFont; +- (int)readTokenInto:(id *)arg1; +- (void)convertRichTextString:(id)arg1 intoOutputString:(id)arg2; +- (void)convertEnrichedString:(id)arg1 intoOutputString:(id)arg2; +- (void)convertEnrichedString:(id)arg1 intoPlainOutputString:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/_MimeEnrichedWriter.h b/MailHeaders/Lion/Message/_MimeEnrichedWriter.h new file mode 100644 index 00000000..09548d03 --- /dev/null +++ b/MailHeaders/Lion/Message/_MimeEnrichedWriter.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSAttributedString, NSFont, NSString; + +@interface _MimeEnrichedWriter : NSObject +{ + NSAttributedString *_attributedString; + NSString *_string; + CDStruct_7e4886f7 _stringBuffer; + NSFont *_defaultFont; + NSFont *_defaultFixedPitchFont; + double _defaultPointSize; + _CommandStackEntry_ce26798d *_commandStack; + _CommandStackEntry_ce26798d *_topOfStack; + struct EnrichedState _currentState; + unsigned long long _currentLineStart; + unsigned long long _lastSpace; +} + +- (void)setState:(struct EnrichedState *)arg1 fromAttributes:(id)arg2; +- (void)setState:(struct EnrichedState *)arg1 fromStackEntry:(struct _CommandStackEntry *)arg2; +- (void)dealloc; +- (void)finalize; +- (id)convertAttributedString:(id)arg1; +- (void)updateOutput:(id)arg1 forAttributes:(id)arg2 range:(struct _NSRange)arg3; +- (void)appendTextFromRange:(struct _NSRange)arg1 toString:(id)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/_MimePartEnumerator.h b/MailHeaders/Lion/Message/_MimePartEnumerator.h new file mode 100644 index 00000000..8bc97a81 --- /dev/null +++ b/MailHeaders/Lion/Message/_MimePartEnumerator.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@class MimePart; + +@interface _MimePartEnumerator : NSEnumerator +{ + BOOL _onlyAttachments; + BOOL _isFirstIteration; + MimePart *_currentPart; +} + +- (void)_setCurrentPart:(id)arg1; +- (id)initWithMimeBody:(id)arg1 onlyAttachments:(BOOL)arg2; +- (void)dealloc; +- (id)nextObject; + +@end + diff --git a/MailHeaders/Lion/Message/_NSDataMessageStoreMessage.h b/MailHeaders/Lion/Message/_NSDataMessageStoreMessage.h new file mode 100644 index 00000000..39b4f384 --- /dev/null +++ b/MailHeaders/Lion/Message/_NSDataMessageStoreMessage.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _NSDataMessageStoreMessage : Message +{ +} + +- (id)initWithStore:(id)arg1; +- (id)init; +- (void)dealloc; +- (void)setMessageStore:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/_NSSocket.h b/MailHeaders/Lion/Message/_NSSocket.h new file mode 100644 index 00000000..0b9bb7ed --- /dev/null +++ b/MailHeaders/Lion/Message/_NSSocket.h @@ -0,0 +1,81 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSInvocation, NSMachPort, NSString; + +@interface _NSSocket : NSObject +{ + id _streamAndProtocolLock; + struct __CFReadStream *_readStream; + struct __CFWriteStream *_writeStream; + NSString *_protocol; + NSMachPort *_socketActivityReplyPort; + NSArray *_clientCertificates; + NSArray *_trustedCertificates; + void *_stats; + void *_request; + BOOL _openCompleted; + BOOL _error; + BOOL _closed; + long long _connectionSetupState; + unsigned long long _identifier; + double _lastReadTime; + NSInvocation *_eventHandler; + double _numTimeoutSecs; + double _numConnectTimeoutSecs; + long long _activityType; +} + ++ (void)_runIOThread; ++ (void)handlePortMessage:(id)arg1; ++ (void)initialize; ++ (long long)simulatedSocketSpeed; ++ (void)setSimulatedSocketSpeed:(long long)arg1; +- (void)_setError:(id *)arg1 fromDomain:(long long)arg2 code:(long long)arg3 andLogIfNecessary:(id)arg4; +- (id)securityProtocol; +- (BOOL)setSecurityProtocol:(id)arg1; +- (unsigned int)cipherKeyLength; +- (void)setTrustedCertificates:(id)arg1; +- (void)setClientIdentity:(struct OpaqueSecIdentityRef *)arg1; +- (id)verboseSSLInformation; +- (struct OpaqueSecTrustRef *)copyServerTrust; +- (id)initWithTimeout:(double)arg1 connectTimeout:(double)arg2; +- (id)init; +- (double)timeout; +- (void)setTimeout:(double)arg1; +- (double)connectTimeout; +- (void)setConnectTimeout:(double)arg1; +- (void)dealloc; +- (void)finalize; +- (void)abort; +- (void)finishRequest:(CDStruct_1d72fa59 *)arg1; +- (void)clearError; +- (BOOL)isReadable; +- (BOOL)isWritable; +- (void)waitUntilWritable; +- (BOOL)readIsValid; +- (BOOL)writeIsValid; +- (BOOL)isValid; +- (BOOL)_configureReadStream:(struct __CFReadStream *)arg1 writeStream:(struct __CFWriteStream *)arg2 error:(id *)arg3; +- (BOOL)connectToHost:(id)arg1 withPort:(unsigned int)arg2 protocol:(id)arg3; +- (long long)writeBytes:(const char *)arg1 length:(long long)arg2 error:(id *)arg3; +- (long long)readBytes:(char *)arg1 length:(long long)arg2 error:(id *)arg3; +- (void)setEventHandler:(id)arg1; +- (void)removeEventHandler; +- (id)remoteHostname; +- (unsigned int)remotePortNumber; +- (id)sourceIPAddress; +- (id)sourceHostname; +- (void)_cancelLookupForHost:(struct __CFHost *)arg1 infoType:(int)arg2; +- (int)fileDescriptor; +- (double)lastReadTime; +@property long long activityType; // @synthesize activityType=_activityType; +@property unsigned long long identifier; // @synthesize identifier=_identifier; + +@end + diff --git a/MailHeaders/Lion/Message/_NonContentSmartMailboxUnreadCountManager.h b/MailHeaders/Lion/Message/_NonContentSmartMailboxUnreadCountManager.h new file mode 100644 index 00000000..b300a251 --- /dev/null +++ b/MailHeaders/Lion/Message/_NonContentSmartMailboxUnreadCountManager.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSMutableDictionary, NSOperationQueue, NSTimer; + +@interface _NonContentSmartMailboxUnreadCountManager : NSObject +{ + NSOperationQueue *_workQueue; + NSMutableDictionary *_unreadLibraryIDsByMailbox; + double _lastDisplayUpdateTime; + BOOL _isObserving; + NSTimer *_relativeDateTimer; +} + +- (id)init; +- (void)dealloc; +- (void)updateSmartMailboxes; +- (void)_startObservingNotifications; +- (void)_stopObservingNotifications; +- (void)_setDisplayCounts; +- (void)_refreshForMailboxes:(id)arg1; +- (void)_messagesChanged:(id)arg1; +- (void)_messagesCompacted:(id)arg1; +- (void)_messagesNeedRefresh:(id)arg1; +- (void)_refreshRelativeDateMailboxes:(id)arg1; +- (void)_smartMailboxLoaded:(id)arg1; + +@end + diff --git a/MailHeaders/Lion/Message/_OutgoingMessageBody.h b/MailHeaders/Lion/Message/_OutgoingMessageBody.h new file mode 100644 index 00000000..5164eb8f --- /dev/null +++ b/MailHeaders/Lion/Message/_OutgoingMessageBody.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableData; + +@interface _OutgoingMessageBody : MessageBody +{ + NSMutableData *_rawData; +} + +- (id)init; +- (void)dealloc; +- (id)message; +- (void)setMessage:(id)arg1; +- (void)clearMessageWithoutReleasing; +@property(retain, nonatomic) NSMutableData *rawData; // @synthesize rawData=_rawData; + +@end + diff --git a/MailHeaders/Lion/Message/_ProgressHandlerMonitorContext.h b/MailHeaders/Lion/Message/_ProgressHandlerMonitorContext.h new file mode 100644 index 00000000..ac2f197a --- /dev/null +++ b/MailHeaders/Lion/Message/_ProgressHandlerMonitorContext.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class ActivityMonitor; + +@interface _ProgressHandlerMonitorContext : NSObject +{ + id _progressMonitor; + ActivityMonitor *_activityMonitor; +} + +- (BOOL)shouldCancel; +@property(nonatomic) ActivityMonitor *activityMonitor; // @synthesize activityMonitor=_activityMonitor; +@property(nonatomic) id progressMonitor; // @synthesize progressMonitor=_progressMonitor; + +@end + diff --git a/MailHeaders/Lion/Message/_RootlessMailboxUid.h b/MailHeaders/Lion/Message/_RootlessMailboxUid.h new file mode 100644 index 00000000..ee149669 --- /dev/null +++ b/MailHeaders/Lion/Message/_RootlessMailboxUid.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@interface _RootlessMailboxUid : MailboxUid +{ +} + +- (id)displayName; +- (id)fullPath; +- (id)tildeAbbreviatedPath; +- (id)storeForMailboxUid:(id)arg1 createIfNeeded:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Lion/Message/_SeenMessagesStore.h b/MailHeaders/Lion/Message/_SeenMessagesStore.h new file mode 100644 index 00000000..a540ce58 --- /dev/null +++ b/MailHeaders/Lion/Message/_SeenMessagesStore.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSEntityDescription, NSPersistentStoreCoordinator, NSString; + +@interface _SeenMessagesStore : NSObject +{ + NSPersistentStoreCoordinator *_coordinator; + NSString *_storePath; + NSEntityDescription *_accountEntity; + NSEntityDescription *_seenMessageEntity; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)sharedInstance; +- (id)init; +- (void)dealloc; +- (id)retain; +- (unsigned long long)retainCount; +- (void)release; +- (id)autorelease; +- (void)_configurePersistentStoreCoordinator; +@property(retain) NSPersistentStoreCoordinator *persistentStoreCoordinator; // @synthesize persistentStoreCoordinator=_coordinator; +- (id)_managedObjectModel; +@property(retain) NSEntityDescription *seenMessageEntity; // @synthesize seenMessageEntity=_seenMessageEntity; +@property(retain) NSEntityDescription *accountEntity; // @synthesize accountEntity=_accountEntity; +@property(retain) NSString *persistentStorePath; // @synthesize persistentStorePath=_storePath; + +@end + diff --git a/MailHeaders/Lion/Message/_SetFlags.h b/MailHeaders/Lion/Message/_SetFlags.h new file mode 100644 index 00000000..598fa72f --- /dev/null +++ b/MailHeaders/Lion/Message/_SetFlags.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@class NSArray, NSDictionary, NSMutableArray; + +@interface _SetFlags : NSObject +{ + NSDictionary *_flagsToSet; + NSMutableArray *_messages; +} + +- (id)initWithFlagsDictionary:(id)arg1 messages:(id)arg2; +- (id)init; +- (void)dealloc; +- (void)addMessages:(id)arg1; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +@property(readonly) NSArray *messages; // @synthesize messages=_messages; +@property(readonly) NSDictionary *flagsToSet; // @synthesize flagsToSet=_flagsToSet; + +@end + diff --git a/MailHeaders/Lion/Message/_SmartMailboxesEnumerator.h b/MailHeaders/Lion/Message/_SmartMailboxesEnumerator.h new file mode 100644 index 00000000..c979f8bd --- /dev/null +++ b/MailHeaders/Lion/Message/_SmartMailboxesEnumerator.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@class NSArray, _MailboxUidEnumerator; + +@interface _SmartMailboxesEnumerator : NSEnumerator +{ + NSArray *_smartMailboxes; + long long _currentMailboxIndex; + _MailboxUidEnumerator *_currentMailboxEnumerator; +} + +- (id)initWithSmartMailboxUids:(id)arg1; +- (id)init; +- (void)dealloc; +- (id)nextObject; + +@end + diff --git a/MailHeaders/Lion/Message/_WriteSyncStateOperation.h b/MailHeaders/Lion/Message/_WriteSyncStateOperation.h new file mode 100644 index 00000000..562037e8 --- /dev/null +++ b/MailHeaders/Lion/Message/_WriteSyncStateOperation.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import + +@class NSMutableSet, NSString; + +@interface _WriteSyncStateOperation : ThrowingInvocationOperation +{ + NSMutableSet *_itemIdStrings; + NSString *_syncState; +} + ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +- (id)initWithStore:(id)arg1 syncState:(id)arg2; +- (void)dealloc; +- (void)setIdStrings:(id)arg1; +- (void)removeIdStringsForItemIdTypes:(id)arg1; +- (void)removeIdStringsForMessages:(id)arg1; +- (void)cancel; +- (BOOL)isReady; +- (id)description; +@property(retain, nonatomic) NSString *syncState; // @synthesize syncState=_syncState; + +@end + diff --git a/MailHeaders/Lion/Message/__MFCallStack.h b/MailHeaders/Lion/Message/__MFCallStack.h new file mode 100644 index 00000000..2ad301f6 --- /dev/null +++ b/MailHeaders/Lion/Message/__MFCallStack.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + + + +@interface __MFCallStack : NSObject +{ + void **_frames; + unsigned int _count; +} + +- (id)initWithFrames:(void **)arg1 count:(unsigned int)arg2; +- (void)dealloc; +- (void)finalize; +- (int)frameCount; +- (void **)frames; +- (id)copyArrayRepresentation; +- (id)description; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/EmailAddressing/CDStructures.h b/MailHeaders/Mavericks_10.9.5/EmailAddressing/CDStructures.h new file mode 100644 index 00000000..fb42b445 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/EmailAddressing/CDStructures.h @@ -0,0 +1,6 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + diff --git a/MailHeaders/Mavericks_10.9.5/EmailAddressing/EAEmailAddressGenerator.h b/MailHeaders/Mavericks_10.9.5/EmailAddressing/EAEmailAddressGenerator.h new file mode 100644 index 00000000..e9251d3b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/EmailAddressing/EAEmailAddressGenerator.h @@ -0,0 +1,17 @@ +/* + * 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" + +@interface EAEmailAddressGenerator : NSObject +{ +} + ++ (id)stringByTrimmingCommasSpacesQuotesFromString:(id)arg1; ++ (id)formattedAddressWithName:(id)arg1 email:(id)arg2 useQuotes:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/EmailAddressing/EAEmailAddressLists.h b/MailHeaders/Mavericks_10.9.5/EmailAddressing/EAEmailAddressLists.h new file mode 100644 index 00000000..08b53b8e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/EmailAddressing/EAEmailAddressLists.h @@ -0,0 +1,23 @@ +/* + * 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" + +@interface EAEmailAddressLists : NSObject +{ +} + ++ (id)addressDisplayStringWithMaxNumberOfAddresses:(unsigned long long)arg1 fromAddressList:(id)arg2; ++ (id)displayNameFromAddressList:(id)arg1; ++ (id)rawAddressListFromFullAddressList:(id)arg1; ++ (id)addressStringFromAddressList:(id)arg1; ++ (id)addressListFromAddressString:(id)arg1; ++ (id)componentsSeparatedByCharactersRespectingQuotesAndParens:(id)arg1 forString:(id)arg2; ++ (id)componentsSeparatedByCommaRespectingQuotesAndParensForString:(id)arg1; ++ (id)addressListFromHeaderValue:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/EmailAddressing/EAEmailAddressParser.h b/MailHeaders/Mavericks_10.9.5/EmailAddressing/EAEmailAddressParser.h new file mode 100644 index 00000000..04295362 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/EmailAddressing/EAEmailAddressParser.h @@ -0,0 +1,22 @@ +/* + * 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" + +@interface EAEmailAddressParser : NSObject +{ +} + ++ (id)displayNameFromAddress:(id)arg1; ++ (id)addressDomainFromAddress:(id)arg1; ++ (id)rawAddressRespectingGroupsFromFullAddress:(id)arg1; ++ (id)rawAddressFromFullAddress:(id)arg1; ++ (BOOL)addressIsEmptyGroup:(id)arg1; ++ (BOOL)isLegalEmailAddress:(id)arg1; ++ (id)unsafeAddressLocalPartCharacterSet; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/EmailAddressing/EANameParser.h b/MailHeaders/Mavericks_10.9.5/EmailAddressing/EANameParser.h new file mode 100644 index 00000000..b3e0f7d6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/EmailAddressing/EANameParser.h @@ -0,0 +1,19 @@ +/* + * 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" + +@interface EANameParser : NSObject +{ +} + ++ (id)_partialSurnames; ++ (void)firstName:(id *)arg1 middleName:(id *)arg2 lastName:(id *)arg3 extension:(id *)arg4 fromEmailAddress:(id)arg5; ++ (id)nameExtensionsThatDoNotNeedCommas; ++ (id)nameExtensions; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/EmailAddressing/EmailAddressingFramework.h b/MailHeaders/Mavericks_10.9.5/EmailAddressing/EmailAddressingFramework.h new file mode 100644 index 00000000..a869626b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/EmailAddressing/EmailAddressingFramework.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface EmailAddressingFramework : NSObject +{ +} + ++ (id)bundle; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/ABAddressBook-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/ABAddressBook-MailCoreAdditions.h new file mode 100644 index 00000000..50f4c51e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/ABAddressBook-MailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ABAddressBook.h" + +@interface ABAddressBook (MailCoreAdditions) +- (id)bestRecordMatchingFormattedAddress:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/ABAddressBook-MailCoreAdditionsInternal.h b/MailHeaders/Mavericks_10.9.5/MailCore/ABAddressBook-MailCoreAdditionsInternal.h new file mode 100644 index 00000000..df37b665 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/ABAddressBook-MailCoreAdditionsInternal.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ABAddressBook.h" + +@interface ABAddressBook (MailCoreAdditionsInternal) ++ (BOOL)_firstNameShouldBeFirstForRecord:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/ABGroup-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/ABGroup-MailCoreAdditions.h new file mode 100644 index 00000000..0ba7cb35 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/ABGroup-MailCoreAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ABGroup.h" + +@interface ABGroup (MailCoreAdditions) ++ (id)diacriticInsensitiveSearchElementForProperty:(id)arg1 label:(id)arg2 key:(id)arg3 value:(id)arg4 comparison:(long long)arg5; +- (BOOL)hasEmailAddress:(id)arg1; +- (id)_fullName; +- (BOOL)isGroup; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/ABMailRecent-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/ABMailRecent-MailCoreAdditions.h new file mode 100644 index 00000000..ae0330f5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/ABMailRecent-MailCoreAdditions.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ABMailRecent.h" + +@interface ABMailRecent (MailCoreAdditions) +- (id)_fullName; +- (BOOL)isGroup; +- (BOOL)hasRelatedAddressBookRecord; +- (id)mostRecentDate; +- (id)extension; +- (id)nickname; +- (id)middleName; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/ABPerson-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/ABPerson-MailCoreAdditions.h new file mode 100644 index 00000000..f4fd6e32 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/ABPerson-MailCoreAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ABPerson.h" + +@interface ABPerson (MailCoreAdditions) ++ (id)diacriticInsensitiveSearchElementForProperty:(id)arg1 label:(id)arg2 key:(id)arg3 value:(id)arg4 comparison:(long long)arg5; +- (BOOL)isGroup; +- (id)compoundNameAndEmailForGroupMembership:(id)arg1; +- (BOOL)isMe; +- (BOOL)hasEmailAddress:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/ABRecord-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/ABRecord-MailCoreAdditions.h new file mode 100644 index 00000000..3bb133e9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/ABRecord-MailCoreAdditions.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ABRecord.h" + +@interface ABRecord (MailCoreAdditions) +- (BOOL)isGroup; +- (id)compoundNameAndEmailForEmail:(id)arg1; +- (id)compoundNameAndEmail; +- (id)compoundName; +- (id)allEmailAddresses; +- (id)email; +- (long long)fullNameCompare:(id)arg1; +- (id)_fullName; +- (id)extension; +- (id)nickname; +- (id)middleName; +- (id)lastName; +- (id)firstName; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/CDStructures.h b/MailHeaders/Mavericks_10.9.5/MailCore/CDStructures.h new file mode 100644 index 00000000..b53d5b1d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/CDStructures.h @@ -0,0 +1,116 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class NSColor, NSString; + +#pragma mark Named Structures + +struct CGPoint { + double _field1; + double _field2; +}; + +struct CGRect { + struct CGPoint _field1; + struct CGSize _field2; +}; + +struct CGSize { + double width; + double height; +}; + +struct MCMimeEnrichedState { + unsigned int excerptLevel:8; + unsigned int alignment:4; + unsigned int bold:1; + unsigned int italic:1; + unsigned int fixed:1; + unsigned int underline:1; + unsigned int fontDelta:16; + NSString *fontFamily; + NSColor *color; +}; + +struct _MCMimeEnrichedWriterCommandStackEntry { + id _field1; + unsigned long long _field2; + id _field3; + struct _MCMimeEnrichedWriterCommandStackEntry *_field4; +}; + +struct _NSRange { + unsigned long long location; + unsigned long long length; +}; + +struct __va_list_tag { + unsigned int _field1; + unsigned int _field2; + void *_field3; + void *_field4; +}; + +struct sasl_callback { + unsigned long long _field1; + void *_field2; + void *_field3; +}; + +struct sasl_secret { + unsigned long long _field1; + unsigned char _field2[1]; +}; + +#pragma mark Typedef'd Structures + +typedef struct { + id _field1; + unsigned int :1; + unsigned int :1; + unsigned int :1; + unsigned int :2; +} CDStruct_3441fd00; + +typedef struct { + unsigned int colorHasBeenEvaluated:1; + unsigned int colorWasSetManually:1; + unsigned int redColor:8; + unsigned int greenColor:8; + unsigned int blueColor:8; + unsigned int loadingBody:1; + unsigned int firstUnused:2; + unsigned int isMarkedForOverwrite:1; + unsigned int unused:2; +} CDStruct_accefccd; + +typedef struct { + unsigned int reserved:27; + unsigned int isPartial:1; + unsigned int partsHaveBeenCached:1; + unsigned int hasTemporaryUid:1; + unsigned int isHTML:1; + unsigned int isRich:1; +} CDStruct_07ba05d6; + +typedef struct { + long long count; + unsigned long long size; +} CDStruct_d3e19d9e; + +typedef struct { + unsigned short buffer[64]; + struct __CFString *theString; + unsigned short *directUniCharBuffer; + char *directCStringBuffer; + struct { + long long location; + long long length; + } rangeToBuffer; + long long bufferedRangeStart; + long long bufferedRangeEnd; +} CDStruct_2ada2998; + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/EWSAutodiscoverBindingDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/EWSAutodiscoverBindingDelegate-Protocol.h new file mode 100644 index 00000000..64b0ed00 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/EWSAutodiscoverBindingDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol EWSAutodiscoverBindingDelegate +- (void)autodiscoverBinding:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; + +@optional +- (void)autodiscoverBinding:(id)arg1 didReceiveCertificateError:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didFailWithError:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didFinishWithResponse:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/IADataPluginDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/IADataPluginDelegate-Protocol.h new file mode 100644 index 00000000..efb49cbf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/IADataPluginDelegate-Protocol.h @@ -0,0 +1,21 @@ +/* + * 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" + +@protocol IADataPluginDelegate +- (BOOL)plugin:(id)arg1 handleCertificateError:(id)arg2; +- (void)plugin:(id)arg1 didChangeAccountUID:(id)arg2; +- (void)plugin:(id)arg1 didDeleteAccountUID:(id)arg2; +- (void)plugin:(id)arg1 didCreateAccountUID:(id)arg2; +- (void)plugin:(id)arg1 accountSetupDidFinish:(id)arg2 withResult:(id)arg3; +- (void)plugin:(id)arg1 accountSetupDidFail:(id)arg2 withError:(id)arg3; +- (void)plugin:(id)arg1 accountSetupUpdate:(id)arg2 withStatus:(long long)arg3; + +@optional +- (void)plugin:(id)arg1 aosAccountMigrationFinished:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCAccountAutoconfigurator.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCAccountAutoconfigurator.h new file mode 100644 index 00000000..485069a8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCAccountAutoconfigurator.h @@ -0,0 +1,56 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityMonitor, NSArray, NSDictionary, NSError, NSString; + +@interface MCAccountAutoconfigurator : NSObject +{ + long long _state; + NSString *_userName; + BOOL _authenticationFailed; + BOOL _shouldDoEWSAutodiscovery; + id _delegate; + MCActivityMonitor *_autoconfigurationActivity; + NSString *_emailAddress; + NSString *_password; + NSString *_domain; + NSDictionary *_receivingAccountInfo; + NSArray *_deliveryAccountInfos; + NSError *_authenticationError; +} + ++ (id)userNameForEmailAddress:(id)arg1 autoconfiguratorAccountInfo:(id)arg2; ++ (id)serverNameFromAutoconfiguratorAccountInfo:(id)arg1; ++ (id)urlFromAutoconfiguratorObject:(id)arg1; +@property BOOL shouldDoEWSAutodiscovery; // @synthesize shouldDoEWSAutodiscovery=_shouldDoEWSAutodiscovery; +@property(copy) NSError *authenticationError; // @synthesize authenticationError=_authenticationError; +@property(copy) NSArray *deliveryAccountInfos; // @synthesize deliveryAccountInfos=_deliveryAccountInfos; +@property(copy) NSDictionary *receivingAccountInfo; // @synthesize receivingAccountInfo=_receivingAccountInfo; +@property BOOL authenticationFailed; // @synthesize authenticationFailed=_authenticationFailed; +@property(copy, nonatomic) NSString *domain; // @synthesize domain=_domain; +@property(copy, nonatomic) NSString *password; // @synthesize password=_password; +@property(copy, nonatomic) NSString *emailAddress; // @synthesize emailAddress=_emailAddress; +@property(retain) MCActivityMonitor *autoconfigurationActivity; // @synthesize autoconfigurationActivity=_autoconfigurationActivity; +@property id delegate; // @synthesize delegate=_delegate; +- (void)_autoconfigure; +- (BOOL)_shouldCancel; +- (void)_setState:(long long)arg1; +- (void)_sendAutoconfiguratorDidFinish; +- (void)_sendAutoconfiguratorDidFail; +- (void)_sendAutoconfiguratorDidChangeState:(id)arg1; +@property(copy, nonatomic) NSString *userName; +- (void)cancel; +- (void)execute; +- (void)dealloc; +- (id)initWithEmailAddress:(id)arg1 userName:(id)arg2 password:(id)arg3 delegate:(id)arg4; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCAccountSetupValidator.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCAccountSetupValidator.h new file mode 100644 index 00000000..1873c896 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCAccountSetupValidator.h @@ -0,0 +1,46 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityMonitor, MCAuthScheme, MCConnection, NSString; + +@interface MCAccountSetupValidator : NSObject +{ + MCConnection *_connection; + id _account; + MCActivityMonitor *_validationActivity; + MCAuthScheme *_preferredAuthScheme; + id _delegate; + NSString *_password; +} + ++ (id)validatorWithAccount:(id)arg1 accountInfo:(id)arg2 delegate:(id)arg3; +@property(copy) NSString *password; // @synthesize password=_password; +@property id delegate; // @synthesize delegate=_delegate; +@property(retain) MCAuthScheme *preferredAuthScheme; // @synthesize preferredAuthScheme=_preferredAuthScheme; +@property(retain) MCActivityMonitor *validationActivity; // @synthesize validationActivity=_validationActivity; +@property(retain) id account; // @synthesize account=_account; +- (void)_validate; +- (BOOL)_attemptAuthentication; +- (BOOL)_attemptInitialConnection; +- (void)_disconnect; +- (BOOL)_connectIfNeeded; +- (void)_updateState:(long long)arg1; +- (void)_sendValidatorDidFinish; +- (void)_sendValidatorDidFail; +- (void)_sendValidatorDidChangeState:(id)arg1; +- (void)cancel; +@property(retain) MCConnection *connection; +- (id)description; +- (void)dealloc; +- (id)init; +- (id)_initWithAccount:(id)arg1 accountInfo:(id)arg2 delegate:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCAccountSetupValidatorDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCAccountSetupValidatorDelegate-Protocol.h new file mode 100644 index 00000000..b3094839 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCAccountSetupValidatorDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MCAccountSetupValidatorDelegate +- (id)delegateApplicationName; +- (BOOL)validatorShouldPromptForInsecurePassword:(id)arg1; +- (void)validatorDidFinish:(id)arg1; +- (void)validatorDidFail:(id)arg1; +- (void)validator:(id)arg1 didChangeState:(long long)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCActivityAggregate.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCActivityAggregate.h new file mode 100644 index 00000000..5e677331 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCActivityAggregate.h @@ -0,0 +1,76 @@ +/* + * 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" + +@class NSArrayController, NSDate, NSString; + +@interface MCActivityAggregate : NSObject +{ + NSArrayController *_monitorController; + unsigned long long _baseItemsDone; + unsigned long long _baseItemsTotal; + double _baseUnifiedDone; + BOOL _isResetting; + double _startTime; + BOOL _canCancel; + BOOL _isProgressing; + long long _activityType; + NSString *_bkItemDescription; + double _estimatedTimeRemaining; + unsigned long long _itemsDone; + unsigned long long _itemsTotal; + NSDate *_lastUpdateTimestamp; + NSString *_nameSingular; + NSString *_namePlural; + double _progress; + NSString *_status; + double _unifiedDone; +} + ++ (id)keyPathsForValuesAffectingIsProgressIndeterminate; ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +@property(readonly) double unifiedDone; // @synthesize unifiedDone=_unifiedDone; +@property(copy) NSString *status; // @synthesize status=_status; +@property(readonly) double progress; // @synthesize progress=_progress; +@property(copy) NSString *namePlural; // @synthesize namePlural=_namePlural; +@property(copy) NSString *nameSingular; // @synthesize nameSingular=_nameSingular; +@property(retain) NSDate *lastUpdateTimestamp; // @synthesize lastUpdateTimestamp=_lastUpdateTimestamp; +@property(readonly) unsigned long long itemsTotal; // @synthesize itemsTotal=_itemsTotal; +@property(readonly) unsigned long long itemsDone; // @synthesize itemsDone=_itemsDone; +@property(readonly) BOOL isProgressing; // @synthesize isProgressing=_isProgressing; +@property(readonly) double estimatedTimeRemaining; // @synthesize estimatedTimeRemaining=_estimatedTimeRemaining; +@property(readonly) BOOL canCancel; // @synthesize canCancel=_canCancel; +@property(copy) NSString *bkItemDescription; // @synthesize bkItemDescription=_bkItemDescription; +@property long long activityType; // @synthesize activityType=_activityType; +- (void)signalCancel:(id)arg1; +- (id)description; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_processMonitorUpdate; +- (void)_update; +- (void)_updateTimeBasedValues; +- (void)updateUnitBasedValues; +- (void)_updateAggregateValues; +- (void)_updateAggregateIsProgressing; +- (void)removeActivityMonitor:(id)arg1; +- (void)addActivityMonitor:(id)arg1; +- (void)reset; +- (void)_updateStatus; +@property(readonly) BOOL isProgressIndeterminate; +- (void)setEstimatedTimeRemaining:(double)arg1; +- (void)setProgress:(double)arg1; +- (void)setIsProgressing:(BOOL)arg1; +- (void)setCanCancel:(BOOL)arg1; +- (void)setUnifiedDone:(double)arg1; +- (void)setItemsTotal:(unsigned long long)arg1; +- (void)setItemsDone:(unsigned long long)arg1; +- (unsigned long long)currentItem; +@property(readonly) NSArrayController *monitorController; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCActivityAggregator.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCActivityAggregator.h new file mode 100644 index 00000000..883ca489 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCActivityAggregator.h @@ -0,0 +1,32 @@ +/* + * 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" + +@class MCActivityAggregate; + +@interface MCActivityAggregator : NSObject +{ + MCActivityAggregate *_in; + MCActivityAggregate *_out; + MCActivityAggregate *_save; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)activityMonitor:(id)arg1 didChangeTypeFrom:(long long)arg2; +- (id)save; +- (id)out; +- (id)in; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCActivityMonitor.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCActivityMonitor.h new file mode 100644 index 00000000..8e78eddc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCActivityMonitor.h @@ -0,0 +1,124 @@ +/* + * 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 "NSMachPortDelegate.h" + +@class MCError, MCSafeValueCache, NSInvocation, NSMachPort, NSMutableSet, NSString; + +@interface MCActivityMonitor : NSObject +{ + NSString *_taskName; + NSString *_statusMessage; + NSString *_descriptionString; + NSMutableSet *_subMonitors; + NSMachPort *_cancelPort; + MCSafeValueCache *_targetDisplayNameCache; + id _delegate; + id _target; + double _doneValue; + double _previousDoneness; + double _itemValue; + double _itemMaxValue; + double _startTime; + double _itemLastNotifiedTime; + double _percentDone; + long long _shouldUnifyDoneness; + long long _currentProgressStage; + long long _numberOfProgressStages; + long long _key; + unsigned long long _itemsDone; + unsigned long long _itemsTotal; + unsigned long long _itemFudgeFactor; + int _changeCount; + long long _activityType; + unsigned char _priority; + BOOL _canCancel; + BOOL _shouldCancel; + BOOL _isActive; + BOOL _isProgressing; + BOOL _shouldPromptUserOnTermination; + NSInvocation *_cancelInvocation; + NSString *_itemDescription; + double _itemMinValue; + MCError *_error; +} + ++ (id)currentMonitor; ++ (id)currentMonitorIfExists; ++ (void)setCurrentMonitor:(id)arg1; ++ (double)determinateProgress; ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +@property(retain) MCError *error; // @synthesize error=_error; +@property(nonatomic) double itemMinValue; // @synthesize itemMinValue=_itemMinValue; +@property(copy) NSString *itemDescription; // @synthesize itemDescription=_itemDescription; +@property(retain) NSInvocation *cancelInvocation; // @synthesize cancelInvocation=_cancelInvocation; +- (void)setShouldPromptUserOnTermination; +- (BOOL)shouldPromptUserOnTermination; +- (void)resetActivityType; +- (void)markCompleted:(BOOL)arg1; +- (void)incrementItemsTotal:(unsigned long long)arg1; +- (void)incrementItemsDone:(unsigned long long)arg1; +- (void)incrementItemValue:(double)arg1; +@property(nonatomic) unsigned long long itemsTotal; +@property(nonatomic) unsigned long long itemsDone; +@property(nonatomic) double itemValue; +- (void)resetItemValue; +- (void)setItem:(id)arg1; +- (void)setItemIndeterminateValue; +@property(nonatomic) double itemMaxValue; +@property(nonatomic) BOOL isProgressing; +- (void)setItemFudgeFactor:(unsigned long long)arg1; +- (void)setActivityType:(long long)arg1; +- (long long)activityType; +@property(nonatomic) double doneValue; +- (void)updateDoneValue; +- (id)cancelPort; +- (void)_setCancelPort:(id)arg1; +- (void)setPercentDone:(double)arg1 withKey:(long long)arg2; +- (void)setStatusMessage:(id)arg1 withKey:(long long)arg2; +- (void)setStatusMessage:(id)arg1 percentDone:(double)arg2 withKey:(long long)arg3; +- (void)relinquishExclusiveAccessKey:(long long)arg1; +- (long long)acquireExclusiveAccessKey; +- (void)cancel; +- (void)removeSubMonitor:(id)arg1; +- (void)addSubMonitor:(id)arg1; +@property(nonatomic) BOOL shouldCancel; +@property(nonatomic) BOOL canBeCancelled; +- (id)activityTargets; +- (void)setPrimaryTarget:(id)arg1; +- (void)removeActivityTarget:(id)arg1; +- (void)addActivityTarget:(id)arg1; +- (void)setActivityTarget:(id)arg1; +- (id)activityTarget; +- (void)setTaskName:(id)arg1; +- (id)taskName; +- (id)description; +- (id)taskDescriptionString; +- (id)_updatedTargetDisplayName:(id)arg1; +- (id)activityDescription; +- (void)setPriority:(unsigned char)arg1; +- (unsigned char)priority; +- (void)beginProgressFor:(long long)arg1; +- (double)unifiedFractionDone; +- (double)percentDone; +- (void)setPercentDone:(double)arg1; +- (id)statusMessage; +- (void)setStatusMessage:(id)arg1 percentDone:(double)arg2; +- (void)setStatusMessage:(id)arg1; +- (int)changeCount; +- (void)_didChange; +- (void)postActivityFinished; +- (void)handlePortMessage:(id)arg1; +- (void)postActivityStarting; +- (void)setDelegate:(id)arg1; +- (BOOL)isActive; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCActivityTarget-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCActivityTarget-Protocol.h new file mode 100644 index 00000000..e51c89fb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCActivityTarget-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol MCActivityTarget + +@optional +- (BOOL)isSmartMailbox; +- (id)displayName; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCAddressManager.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCAddressManager.h new file mode 100644 index 00000000..fb01839b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCAddressManager.h @@ -0,0 +1,25 @@ +/* + * 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" + +@interface MCAddressManager : NSObject +{ +} + ++ (id)myFullName; ++ (id)addAddressToAddressBook:(id)arg1; ++ (id)addEmailAddressToCardMatchingFirstAndLastNameFromFormattedAddress:(id)arg1; ++ (id)_addressBookRecordsForFirstName:(id)arg1 lastName:(id)arg2; ++ (id)emailAddressesFromGroup:(id)arg1; ++ (void)_addEmailsFromGroup:(id)arg1 toDictionary:(id)arg2; ++ (id)groupsMatchingString:(id)arg1; ++ (id)myEmailAddress; ++ (id)replaceGroupsWithUndisclosedRecipients:(id)arg1; ++ (id)expandGroups:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCApopAuthScheme.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCApopAuthScheme.h new file mode 100644 index 00000000..6ed05dc8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCApopAuthScheme.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCApopAuthScheme : MCAuthScheme +{ +} + ++ (id)apopAuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)saslClientForAccount:(id)arg1 connection:(id)arg2; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (long long)securityLevel; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCAppleTokenAuthScheme.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCAppleTokenAuthScheme.h new file mode 100644 index 00000000..f9276004 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCAppleTokenAuthScheme.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCAppleTokenAuthScheme : MCAuthScheme +{ +} + ++ (id)appleTokenAuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (long long)securityLevel; +- (BOOL)requiresPassword; +- (BOOL)requiresUsername; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCArchiveFileWrapper.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCArchiveFileWrapper.h new file mode 100644 index 00000000..c743b815 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCArchiveFileWrapper.h @@ -0,0 +1,44 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@class NSData; + +@interface MCArchiveFileWrapper : NSFileWrapper +{ + NSData *_archiveData; + long long _archiveType; + NSFileWrapper *_realFileWrapper; +} + +- (void)getCompressedData:(id *)arg1 archiveType:(long long *)arg2; +- (id)preferredFilename; +- (id)addSymbolicLinkWithDestination:(id)arg1 preferredFilename:(id)arg2; +- (id)addRegularFileWithContents:(id)arg1 preferredFilename:(id)arg2; +- (id)addFileWithPath:(id)arg1; +- (id)keyForFileWrapper:(id)arg1; +- (id)fileWrappers; +- (void)removeFileWrapper:(id)arg1; +- (id)addFileWrapper:(id)arg1; +- (id)serializedRepresentation; +- (BOOL)isSymbolicLink; +- (BOOL)isDirectory; +- (BOOL)isRegularFile; +- (unsigned long long)approximateSize; +- (BOOL)writeToURL:(id)arg1 options:(unsigned long long)arg2 originalContentsURL:(id)arg3 error:(id *)arg4; +- (void)_archiveFileWrapperCommonInit; +- (id)initWithSerializedRepresentation:(id)arg1; +- (id)initSymbolicLinkWithDestinationURL:(id)arg1; +- (id)initRegularFileWithContents:(id)arg1; +- (id)initWithURL:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (id)initDirectoryWithFileWrappers:(id)arg1; +- (id)initWithData:(id)arg1 archiveType:(long long)arg2; +- (void)dealloc; +- (id)_realFileWrapper; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCAssertionHandler.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCAssertionHandler.h new file mode 100644 index 00000000..cc5c890c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCAssertionHandler.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAssertionHandler.h" + +@interface MCAssertionHandler : NSAssertionHandler +{ +} + ++ (void)setAssertionAction:(unsigned long long)arg1; ++ (id)_MailCore_currentHandler; ++ (void)installDefaultAssertionHandler; +- (void)_handleFailureWithPreamble:(id)arg1 description:(id)arg2 arguments:(struct __va_list_tag [1])arg3; +- (void)handleFailureInFunction:(id)arg1 file:(id)arg2 lineNumber:(long long)arg3 description:(id)arg4; +- (void)handleFailureInMethod:(SEL)arg1 object:(id)arg2 file:(id)arg3 lineNumber:(long long)arg4 description:(id)arg5; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCAttachment.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCAttachment.h new file mode 100644 index 00000000..bb99c558 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCAttachment.h @@ -0,0 +1,136 @@ +/* + * 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 "NSURLDownloadDelegate.h" + +@class MCMimeBody, MCMimePart, NSArray, NSData, NSDictionary, NSFileWrapper, NSImage, NSNumber, NSOperation, NSProgress, NSString, NSURL; + +@interface MCAttachment : NSObject +{ + NSData *_currentData; + NSFileWrapper *_fileWrapper; + NSData *_originalData; + BOOL _hasResourceForkData; + struct CGSize _imageSizeFromHeaders; + NSImage *_iconImage; + long long _imageByteCountFromHeaders; + unsigned short _finderFlags; + MCMimeBody *_mimeBody; + MCMimePart *_mimePart; + NSString *_filenameForSaving; + unsigned long long _approximateSize; + BOOL _shouldHideExtension; + BOOL _isCalendarInvitation; + BOOL _isUnreferencedAttachment; + unsigned int _type; + unsigned int _creator; + NSURL *_externalBodyURL; + NSString *_filename; + NSString *_originalFilename; + NSNumber *_fileSize; + NSString *_contentID; + NSString *_extension; + NSNumber *_filePermissions; + NSString *_mimeType; + NSString *_messageID; + NSString *_mailSpecialHandlingType; + id _stationeryCompositeImage; + NSString *_savedPath; + NSArray *_whereFroms; + NSDictionary *_quarantineProperties; + NSOperation *_fileReadingOperation; + NSProgress *_downloadProgress; +} + ++ (id)_backgroundFileReadingQueue; ++ (BOOL)automaticallyNotifiesObserversOfOriginalData; +@property(retain) NSProgress *downloadProgress; // @synthesize downloadProgress=_downloadProgress; +@property BOOL isUnreferencedAttachment; // @synthesize isUnreferencedAttachment=_isUnreferencedAttachment; +@property(retain) NSOperation *fileReadingOperation; // @synthesize fileReadingOperation=_fileReadingOperation; +@property(retain) NSDictionary *quarantineProperties; // @synthesize quarantineProperties=_quarantineProperties; +@property(retain) NSArray *whereFroms; // @synthesize whereFroms=_whereFroms; +@property(retain) NSString *savedPath; // @synthesize savedPath=_savedPath; +@property(readonly) id stationeryCompositeImage; // @synthesize stationeryCompositeImage=_stationeryCompositeImage; +@property(retain) NSString *mailSpecialHandlingType; // @synthesize mailSpecialHandlingType=_mailSpecialHandlingType; +@property BOOL isCalendarInvitation; // @synthesize isCalendarInvitation=_isCalendarInvitation; +@property(retain) NSString *messageID; // @synthesize messageID=_messageID; +@property(retain) NSString *mimeType; // @synthesize mimeType=_mimeType; +@property(retain) NSNumber *filePermissions; // @synthesize filePermissions=_filePermissions; +@property BOOL shouldHideExtension; // @synthesize shouldHideExtension=_shouldHideExtension; +@property(retain) NSString *extension; // @synthesize extension=_extension; +@property unsigned int creator; // @synthesize creator=_creator; +@property unsigned int type; // @synthesize type=_type; +@property(retain) NSString *contentID; // @synthesize contentID=_contentID; +@property(retain) NSNumber *fileSize; // @synthesize fileSize=_fileSize; +@property(retain) NSString *originalFilename; // @synthesize originalFilename=_originalFilename; +@property(retain) NSString *filename; // @synthesize filename=_filename; +@property(retain) NSURL *externalBodyURL; // @synthesize externalBodyURL=_externalBodyURL; +- (void)_finishedCoordinatedFileReadingWithURL:(id)arg1; +- (BOOL)hasPendingBackgroundRead; +- (void)beginBackgroundFileReading; +- (id)description; +- (id)symbolicLinkDestinationForFileWrapper; +- (id)createTemporaryFile; +- (BOOL)createEmptyAttachmentAtPath:(id)arg1; +- (void)setFilenameForSaving:(id)arg1; +- (id)fileWrapperIfAvailable; +@property(retain) NSFileWrapper *fileWrapper; +- (id)fileWrapperIncludeData:(BOOL)arg1 fetchLevel:(unsigned long long)arg2; +- (id)_fileWrapperIncludeData:(BOOL)arg1; +- (id)appleDoubleDataWithFilename:(const char *)arg1 length:(unsigned long long)arg2; +- (id)appleSingleDataWithFilename:(const char *)arg1 length:(unsigned long long)arg2; +- (BOOL)couldConfuseWindowsClients; +- (void)takeNewDataFromPath:(id)arg1; +@property BOOL isPartOfStationery; +- (BOOL)isDirectory; +- (id)remoteAccessMimeType; +- (BOOL)isRemotelyAccessed; +- (void)isImage:(char *)arg1 isPDF:(char *)arg2 bestMimeType:(id *)arg3; +- (void)isImage:(char *)arg1 isPDF:(char *)arg2; +- (BOOL)isPDF; +- (BOOL)isImage; +- (BOOL)isStationeryCompositeImage; +- (BOOL)isVideoOrAudio; +@property(readonly) NSString *typeIdentifier; +- (id)toolTip; +- (void)discardIconImage; +- (void)setIconImage:(id)arg1; +- (id)iconImage; +- (id)filenameWithoutHiddenExtension; +- (unsigned long long)approximateSize; +- (unsigned long long)approximateSizeOfWrapper; +- (BOOL)isDataDownloaded; +- (long long)imageByteCountFromHeaders; +- (struct CGSize)imageSizeFromHeaders; +- (void)setFromHeadersImageSize:(struct CGSize)arg1 byteCount:(long long)arg2; +- (void)downloadDidFinish:(id)arg1; +- (void)download:(id)arg1 didFailWithError:(id)arg2; +- (void)download:(id)arg1 didReceiveDataOfLength:(unsigned long long)arg2; +- (void)download:(id)arg1 didReceiveResponse:(id)arg2; +- (id)dataForFetchLevel:(unsigned long long)arg1; +- (void)takeInfoFromMessageAttachment:(id)arg1 saveOriginalData:(BOOL)arg2; +- (void)_configureWithMimePart; +@property(retain) MCMimePart *mimePart; +- (void)setFileNameForResizedImage:(id)arg1; +- (BOOL)isFullSize; +- (void)revertToOriginalData; +- (void)setDataForResizedImage:(id)arg1; +- (BOOL)isScalable; +@property(retain, nonatomic) NSData *currentData; +@property(retain, nonatomic) NSData *originalData; +- (id)attachmentWithCurrentData; +- (void)dealloc; +- (id)initWithFileURL:(id)arg1; +- (id)initWithStationeryCompositeImage:(id)arg1; +- (id)initWithExternalBodyURL:(id)arg1; +- (id)initWithFileWrapper:(id)arg1; +- (id)initWithMailInternalData:(id)arg1; +- (id)initWithData:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCAttachmentWrappingTextAttachment.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCAttachmentWrappingTextAttachment.h new file mode 100644 index 00000000..f4899ac3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCAttachmentWrappingTextAttachment.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextAttachment.h" + +@class MCAttachment; + +@interface MCAttachmentWrappingTextAttachment : NSTextAttachment +{ + MCAttachment *_messageAttachment; +} + +- (id)messageAttachment; +- (void)dealloc; +- (id)initWithFileWrapper:(id)arg1; +- (id)initWithMessageAttachment:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCAuthScheme.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCAuthScheme.h new file mode 100644 index 00000000..d8bb7a81 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCAuthScheme.h @@ -0,0 +1,28 @@ +/* + * 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" + +@interface MCAuthScheme : NSObject +{ +} + ++ (id)schemeWithApplescriptScheme:(unsigned int)arg1; ++ (id)schemeWithInternetAccountsScheme:(id)arg1; ++ (id)schemeWithAccountInfo:(id)arg1; ++ (id)schemeWithName:(id)arg1; ++ (id)knownSchemes; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (long long)compareBySecurityLevel:(id)arg1; +- (BOOL)requiresDomain; +- (BOOL)requiresPassword; +- (BOOL)requiresUsername; +- (id)saslClientForAccount:(id)arg1 connection:(id)arg2; +- (long long)securityLevel; +- (BOOL)hasEncryption; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCByteSet.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCByteSet.h new file mode 100644 index 00000000..3e3bcc71 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCByteSet.h @@ -0,0 +1,31 @@ +/* + * 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 "NSCopying.h" +#import "NSMutableCopying.h" + +@interface MCByteSet : NSObject +{ + char _mySet[32]; +} + ++ (id)suspiciousCodepage1252ByteSet; ++ (id)nonASCIIByteSet; ++ (id)ASCIIByteSet; ++ (id)asciiWhitespaceSet; +- (id)invertedSet; +- (BOOL)byteIsMember:(BOOL)arg1; +- (void)_setBytes:(char [32])arg1; +- (id)mutableCopyWithZone:(struct _NSZone *)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)initWithCString:(const char *)arg1; +- (id)initWithBytes:(const void *)arg1 length:(unsigned long long)arg2; +- (id)initWithRange:(struct _NSRange)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCCIDURLProtocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCCIDURLProtocol.h new file mode 100644 index 00000000..87462fe6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCCIDURLProtocol.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSURLProtocol.h" + +@interface MCCIDURLProtocol : NSURLProtocol +{ +} + ++ (void)unregisterDataProvider:(id)arg1; ++ (void)registerDataProvider:(id)arg1; ++ (BOOL)requestIsCacheEquivalent:(id)arg1 toRequest:(id)arg2; ++ (id)canonicalRequestForRequest:(id)arg1; ++ (BOOL)canInitWithRequest:(id)arg1; +- (void)stopLoading; +- (void)startLoading; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCConnection.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCConnection.h new file mode 100644 index 00000000..6e792d6e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCConnection.h @@ -0,0 +1,92 @@ +/* + * 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 "MCConnectionLogging.h" + +@class MCSaslClient, MCSocket, NSData, NSFileHandle; + +@interface MCConnection : NSObject +{ + MCSocket *_socket; + void *_buffer; + long long _bufferRemainingBytes; + unsigned long long _bufferStart; + unsigned long long _bufferLength; + NSData *_logHeader; + id _account; + id _accountLock; + MCSaslClient *_saslClient; + BOOL _isBackground; + double _connectTimeout; + double _readWriteTimeout; + NSFileHandle *_logFile; +} + ++ (BOOL)shouldLogActivityForHost:(id)arg1 port:(long long)arg2; ++ (void)setLogStreamEvents:(BOOL)arg1; ++ (BOOL)logStreamEvents; ++ (void)setLogActivityToFile:(BOOL)arg1; ++ (BOOL)logActivityToFile; ++ (void)setLogActivityOnHosts:(id)arg1; ++ (id)logActivityOnHosts; ++ (void)setLogActivityOnPorts:(id)arg1; ++ (id)logActivityOnPorts; ++ (void)setLogAllSocketActivity:(BOOL)arg1; ++ (BOOL)logAllSocketActivity; ++ (void)setLoggingDelegate:(id)arg1; ++ (id)loggingDelegate; ++ (BOOL)_defaultsToBackground; ++ (void)initialize; +@property(retain) NSFileHandle *logFile; // @synthesize logFile=_logFile; +@property BOOL isBackground; // @synthesize isBackground=_isBackground; +@property double readWriteTimeout; // @synthesize readWriteTimeout=_readWriteTimeout; +@property double connectTimeout; // @synthesize connectTimeout=_connectTimeout; +- (void)_resetLogHeaderWithPort:(long long)arg1; +- (void)_logToFileDidChange:(id)arg1; +- (void)_loggingDidChange:(id)arg1; +- (void)_logEventWithPrefix:(const char *)arg1 bytes:(const void *)arg2 length:(unsigned long long)arg3 maskStartIndex:(unsigned long long)arg4 maskLength:(unsigned long long)arg5; +- (void)flushLog; +- (void)logBytes:(void *)arg1 length:(unsigned long long)arg2; +- (void)logData:(id)arg1 range:(struct _NSRange)arg2; +- (void)logData:(id)arg1; +- (void)logString:(id)arg1; +- (BOOL)_isSSLError:(id)arg1; +- (void)_setupWriteErrorForMonitor; +- (void)_setupReadErrorForMonitor; +- (void)_setupSSLErrorForMonitorWithHostname:(id)arg1; +- (void)_setupConnectionErrorForMonitorWithPort:(long long)arg1 usingSSL:(BOOL)arg2; +- (BOOL)_writeData:(id)arg1 dontLogBytesInRange:(struct _NSRange)arg2 error:(id *)arg3; +- (long long)_readBytesFromSocketIntoBuffer:(void *)arg1 amount:(unsigned long long)arg2 requireAllBytes:(BOOL)arg3 error:(id *)arg4; +- (BOOL)_fillBuffer:(id *)arg1; +- (BOOL)_readBytesIntoData:(id)arg1 desiredLength:(unsigned long long)arg2 error:(id *)arg3; +- (BOOL)_readLineIntoData:(id)arg1 error:(id *)arg2; +- (BOOL)_hasBytesAvailable; +- (void)disconnect; +- (void)quit; +- (BOOL)isValid; +- (BOOL)reconnect; +- (void)discoverAccountSettings; +- (BOOL)_authenticateWithAuthenticator:(id)arg1; +- (BOOL)authenticate; +- (BOOL)_completeConnectionWithResult:(BOOL)arg1; +- (void)_setupConnection; +- (BOOL)_startTLS; +- (void)_setupSocketWithSecurityLayer:(long long)arg1; +- (id)_newConnectionAttempts; +- (BOOL)connectDiscoveringBestSettings:(BOOL)arg1; +- (void *)_socket; +- (id)authenticationMechanisms; +- (id)capabilities; +- (unsigned int)cipherKeyLength; +@property id account; +- (void)dealloc; +- (id)description; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCConnectionLogging-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCConnectionLogging-Protocol.h new file mode 100644 index 00000000..04843f10 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCConnectionLogging-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol MCConnectionLogging +- (void)flushLog; +- (void)logBytes:(void *)arg1 length:(unsigned long long)arg2; +- (void)logData:(id)arg1 range:(struct _NSRange)arg2; +- (void)logData:(id)arg1; +- (void)logString:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCCramMD5AuthScheme.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCCramMD5AuthScheme.h new file mode 100644 index 00000000..61990410 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCCramMD5AuthScheme.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCCramMD5AuthScheme : MCAuthScheme +{ +} + ++ (id)cramMd5AuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (long long)securityLevel; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCDataScanner.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCDataScanner.h new file mode 100644 index 00000000..357e36a9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCDataScanner.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class NSData; + +@interface MCDataScanner : NSObject +{ + NSData *_myData; + unsigned long long _myLocation; +} + ++ (id)scannerWithData:(id)arg1; +- (BOOL)scanUpToBytesFromSet:(id)arg1 intoData:(id *)arg2; +- (BOOL)_scanUpToBytes:(const void *)arg1 length:(unsigned long long)arg2 intoData:(id *)arg3; +- (BOOL)scanUpToCString:(const char *)arg1 intoData:(id *)arg2; +- (BOOL)scanUpToData:(id)arg1 intoData:(id *)arg2; +- (BOOL)scanBytesFromSet:(id)arg1 intoData:(id *)arg2; +- (BOOL)_scanBytes:(const void *)arg1 length:(unsigned long long)arg2 intoData:(id *)arg3; +- (BOOL)scanCString:(const char *)arg1 intoData:(id *)arg2; +- (BOOL)scanData:(id)arg1 intoData:(id *)arg2; +- (BOOL)scanInteger:(long long *)arg1; +- (BOOL)scanByte:(char *)arg1; +- (BOOL)isAtEnd; +- (void)setScanLocation:(unsigned long long)arg1; +- (unsigned long long)scanLocation; +- (id)data; +- (void)dealloc; +- (id)initWithData:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCDateFormatterFactory.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCDateFormatterFactory.h new file mode 100644 index 00000000..4a3b1da8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCDateFormatterFactory.h @@ -0,0 +1,19 @@ +/* + * 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" + +@interface MCDateFormatterFactory : NSObject +{ +} + ++ (id)newUncommonInternetMessageDateFormatters; ++ (id)newCommonInternetMessageDateFormatters; ++ (id)newInternetMessageDateFormatter; ++ (id)newIMAPDateFormatter; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCEWSAutodiscovery.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCEWSAutodiscovery.h new file mode 100644 index 00000000..b43dd25a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCEWSAutodiscovery.h @@ -0,0 +1,47 @@ +/* + * 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 "EWSAutodiscoverBindingDelegate.h" + +@class NSDictionary, NSError, NSString, NSURL; + +@interface MCEWSAutodiscovery : NSObject +{ + NSString *_emailAddress; + NSString *_password; + NSString *_userName; + NSURL *_preferredAutodiscoverURL; + NSString *_internalHostname; + NSString *_externalHostname; + NSDictionary *_receivingAccountInfo; + long long _status; + NSError *_lastError; +} + ++ (void)initialize; +@property(copy) NSError *lastError; // @synthesize lastError=_lastError; +@property long long status; // @synthesize status=_status; +@property(copy) NSDictionary *receivingAccountInfo; // @synthesize receivingAccountInfo=_receivingAccountInfo; +@property(copy, nonatomic) NSString *externalHostname; // @synthesize externalHostname=_externalHostname; +@property(copy, nonatomic) NSString *internalHostname; // @synthesize internalHostname=_internalHostname; +@property(copy, nonatomic) NSURL *preferredAutodiscoverURL; // @synthesize preferredAutodiscoverURL=_preferredAutodiscoverURL; +@property(copy) NSString *userName; // @synthesize userName=_userName; +@property(copy, nonatomic) NSString *password; // @synthesize password=_password; +@property(copy, nonatomic) NSString *emailAddress; // @synthesize emailAddress=_emailAddress; +- (void)autodiscoverBinding:(id)arg1 didReceiveCertificateError:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didFailWithError:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didFinishWithResponse:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (long long)executeSynchronouslyWithMonitor:(id)arg1; +- (void)dealloc; +- (id)initWithEmailAddress:(id)arg1 userName:(id)arg2 password:(id)arg3 preferredAutodiscoverURL:(id)arg4 internalHostname:(id)arg5 externalHostname:(id)arg6; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCError.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCError.h new file mode 100644 index 00000000..94e2df6e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCError.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSError.h" + +#import "NSAlertDelegate.h" + +@class NSMutableDictionary; + +@interface MCError : NSError +{ + NSMutableDictionary *_moreUserInfo; +} + ++ (id)errorWithException:(id)arg1; ++ (id)errorWithDomain:(id)arg1 code:(long long)arg2 localizedDescription:(id)arg3 title:(id)arg4 helpTag:(id)arg5 userInfo:(id)arg6; ++ (id)errorWithDomain:(id)arg1 code:(long long)arg2 localizedDescription:(id)arg3; ++ (id)messageTraceableStringForError:(id)arg1; +- (void)dealloc; +- (BOOL)alertShowHelp:(id)arg1; +- (void)useGenericDescription:(id)arg1; +- (void)setShortDescription:(id)arg1; +- (void)setHelpTag:(id)arg1; +- (void)setMoreInfo:(id)arg1; +- (void)setLocalizedDescription:(id)arg1; +- (id)shortDescription; +- (id)helpAnchor; +- (id)moreInfo; +- (id)localizedDescription; +- (id)userInfo; +- (void)setUserInfoObject:(id)arg1 forKey:(id)arg2; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)initWithError:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCExternalAuthScheme.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCExternalAuthScheme.h new file mode 100644 index 00000000..a3dabf4a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCExternalAuthScheme.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCExternalAuthScheme : MCAuthScheme +{ +} + ++ (id)externalAuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (long long)securityLevel; +- (BOOL)requiresPassword; +- (BOOL)requiresUsername; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCFileTypeInfo.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCFileTypeInfo.h new file mode 100644 index 00000000..40b3b120 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCFileTypeInfo.h @@ -0,0 +1,29 @@ +/* + * 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" + +@class NSString; + +@interface MCFileTypeInfo : NSObject +{ + unsigned int _osType; + NSString *_mimeType; + NSString *_pathExtension; +} + +@property(nonatomic) unsigned int osType; // @synthesize osType=_osType; +@property(copy, nonatomic) NSString *pathExtension; // @synthesize pathExtension=_pathExtension; +@property(copy, nonatomic) NSString *mimeType; // @synthesize mimeType=_mimeType; +- (id)getPedigree; +- (void)_getTypeInfoFromFallbackFields:(unsigned long long *)arg1; +- (void)_getTypeInfoBasedOnFields:(unsigned long long *)arg1 inputClass:(struct __CFString *)arg2 inputValue:(struct __CFString *)arg3; +- (BOOL)getTypeInfoForDesiredFields:(unsigned long long)arg1; +- (id)description; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCGssapiAuthScheme.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCGssapiAuthScheme.h new file mode 100644 index 00000000..8766dc9a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCGssapiAuthScheme.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCGssapiAuthScheme : MCAuthScheme +{ +} + ++ (id)gssApiAuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (long long)securityLevel; +- (BOOL)hasEncryption; +- (BOOL)requiresPassword; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCIASetupViewController.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCIASetupViewController.h new file mode 100644 index 00000000..c11dcbf1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCIASetupViewController.h @@ -0,0 +1,154 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "IASetupViewController.h" + +#import "IADataPluginDelegate.h" +#import "MCAccountSetupValidatorDelegate.h" + +@class IADataPlugin, IAMailAccountSetupInput, IAMailAccountSetupResult, MCAccountSetupValidator, NSLayoutConstraint, NSPopUpButton, NSString, NSTextField, NSView; + +@interface MCIASetupViewController : IASetupViewController +{ + id _localEventMonitor; + id _globalEventMonitor; + BOOL _labelHeight; + BOOL _textFieldHeight; + BOOL _popUpButtonHeight; + BOOL _textFieldToTextFieldVerticalSpace; + BOOL _popUpButtonToPopUpButtonVerticalSpace; + BOOL _showPathPrefix; + BOOL _showIncomingTLSCertificate; + BOOL _showOutgoingTLSCertificate; + BOOL _manuallyConfigureIncoming; + BOOL _manuallyConfigureOutgoing; + BOOL _optionKeyPressed; + NSView *_incomingAccountInfoView; + NSView *_incomingAccountManualSetupView; + NSView *_outgoingAccountInfoView; + NSView *_outgoingAccountManualSetupView; + NSTextField *_emailAddressTextField; + NSTextField *_mailServerTextField; + NSTextField *_incomingPortTextField; + NSTextField *_smtpServerTextField; + NSTextField *_outgoingPortTextField; + NSPopUpButton *_incomingAuthenticationPopUp; + NSPopUpButton *_incomingTLSCertificatePopUp; + NSPopUpButton *_outgoingAuthenticationPopUp; + NSPopUpButton *_outgoingTLSCertificatePopUp; + NSLayoutConstraint *_accountTypeLabelHeightConstraint; + NSLayoutConstraint *_accountTypeButtonHeightConstraint; + NSLayoutConstraint *_accountTypeVerticalSpaceConstraint; + NSLayoutConstraint *_pathPrefixLabelHeightConstraint; + NSLayoutConstraint *_pathPrefixFieldHeightConstraint; + NSLayoutConstraint *_pathPrefixVerticalSpaceConstraint; + NSLayoutConstraint *_incomingTLSCertificateLabelHeightConstraint; + NSLayoutConstraint *_incomingTLSCertificateButtonHeightConstraint; + NSLayoutConstraint *_incomingTLSCertificateVerticalSpaceConstraint; + NSLayoutConstraint *_outgoingTLSCertificateLabelHeightConstraint; + NSLayoutConstraint *_outgoingTLSCertficiateButtonHeightConstraint; + NSLayoutConstraint *_outgoingTLSCertificateVerticalSpaceConstraint; + NSString *_progressText; + id _completion; + IADataPlugin *_iaDataPlugin; + MCAccountSetupValidator *_validator; + IAMailAccountSetupInput *_accountSetupInput; + IAMailAccountSetupResult *_accountSetupResult; +} + ++ (id)keyPathsForValuesAffectingAccountType; ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; +@property(retain, nonatomic) IAMailAccountSetupResult *accountSetupResult; // @synthesize accountSetupResult=_accountSetupResult; +@property(retain, nonatomic) IAMailAccountSetupInput *accountSetupInput; // @synthesize accountSetupInput=_accountSetupInput; +@property(nonatomic) BOOL optionKeyPressed; // @synthesize optionKeyPressed=_optionKeyPressed; +@property(nonatomic) BOOL manuallyConfigureOutgoing; // @synthesize manuallyConfigureOutgoing=_manuallyConfigureOutgoing; +@property(nonatomic) BOOL manuallyConfigureIncoming; // @synthesize manuallyConfigureIncoming=_manuallyConfigureIncoming; +@property(retain, nonatomic) MCAccountSetupValidator *validator; // @synthesize validator=_validator; +@property(readonly, nonatomic) IADataPlugin *iaDataPlugin; // @synthesize iaDataPlugin=_iaDataPlugin; +@property(copy, nonatomic) id completion; // @synthesize completion=_completion; +@property(nonatomic) BOOL showOutgoingTLSCertificate; // @synthesize showOutgoingTLSCertificate=_showOutgoingTLSCertificate; +@property(nonatomic) BOOL showIncomingTLSCertificate; // @synthesize showIncomingTLSCertificate=_showIncomingTLSCertificate; +@property(nonatomic) BOOL showPathPrefix; // @synthesize showPathPrefix=_showPathPrefix; +@property(copy, nonatomic) NSString *progressText; // @synthesize progressText=_progressText; +@property(nonatomic) BOOL popUpButtonToPopUpButtonVerticalSpace; // @synthesize popUpButtonToPopUpButtonVerticalSpace=_popUpButtonToPopUpButtonVerticalSpace; +@property(nonatomic) BOOL textFieldToTextFieldVerticalSpace; // @synthesize textFieldToTextFieldVerticalSpace=_textFieldToTextFieldVerticalSpace; +@property(nonatomic) BOOL popUpButtonHeight; // @synthesize popUpButtonHeight=_popUpButtonHeight; +@property(nonatomic) BOOL textFieldHeight; // @synthesize textFieldHeight=_textFieldHeight; +@property(nonatomic) BOOL labelHeight; // @synthesize labelHeight=_labelHeight; +@property(nonatomic) NSLayoutConstraint *outgoingTLSCertificateVerticalSpaceConstraint; // @synthesize outgoingTLSCertificateVerticalSpaceConstraint=_outgoingTLSCertificateVerticalSpaceConstraint; +@property(nonatomic) NSLayoutConstraint *outgoingTLSCertficiateButtonHeightConstraint; // @synthesize outgoingTLSCertficiateButtonHeightConstraint=_outgoingTLSCertficiateButtonHeightConstraint; +@property(nonatomic) NSLayoutConstraint *outgoingTLSCertificateLabelHeightConstraint; // @synthesize outgoingTLSCertificateLabelHeightConstraint=_outgoingTLSCertificateLabelHeightConstraint; +@property(nonatomic) NSLayoutConstraint *incomingTLSCertificateVerticalSpaceConstraint; // @synthesize incomingTLSCertificateVerticalSpaceConstraint=_incomingTLSCertificateVerticalSpaceConstraint; +@property(nonatomic) NSLayoutConstraint *incomingTLSCertificateButtonHeightConstraint; // @synthesize incomingTLSCertificateButtonHeightConstraint=_incomingTLSCertificateButtonHeightConstraint; +@property(nonatomic) NSLayoutConstraint *incomingTLSCertificateLabelHeightConstraint; // @synthesize incomingTLSCertificateLabelHeightConstraint=_incomingTLSCertificateLabelHeightConstraint; +@property(nonatomic) NSLayoutConstraint *pathPrefixVerticalSpaceConstraint; // @synthesize pathPrefixVerticalSpaceConstraint=_pathPrefixVerticalSpaceConstraint; +@property(nonatomic) NSLayoutConstraint *pathPrefixFieldHeightConstraint; // @synthesize pathPrefixFieldHeightConstraint=_pathPrefixFieldHeightConstraint; +@property(nonatomic) NSLayoutConstraint *pathPrefixLabelHeightConstraint; // @synthesize pathPrefixLabelHeightConstraint=_pathPrefixLabelHeightConstraint; +@property(nonatomic) NSLayoutConstraint *accountTypeVerticalSpaceConstraint; // @synthesize accountTypeVerticalSpaceConstraint=_accountTypeVerticalSpaceConstraint; +@property(nonatomic) NSLayoutConstraint *accountTypeButtonHeightConstraint; // @synthesize accountTypeButtonHeightConstraint=_accountTypeButtonHeightConstraint; +@property(nonatomic) NSLayoutConstraint *accountTypeLabelHeightConstraint; // @synthesize accountTypeLabelHeightConstraint=_accountTypeLabelHeightConstraint; +@property(nonatomic) NSPopUpButton *outgoingTLSCertificatePopUp; // @synthesize outgoingTLSCertificatePopUp=_outgoingTLSCertificatePopUp; +@property(nonatomic) NSPopUpButton *outgoingAuthenticationPopUp; // @synthesize outgoingAuthenticationPopUp=_outgoingAuthenticationPopUp; +@property(nonatomic) NSPopUpButton *incomingTLSCertificatePopUp; // @synthesize incomingTLSCertificatePopUp=_incomingTLSCertificatePopUp; +@property(nonatomic) NSPopUpButton *incomingAuthenticationPopUp; // @synthesize incomingAuthenticationPopUp=_incomingAuthenticationPopUp; +@property(nonatomic) NSTextField *outgoingPortTextField; // @synthesize outgoingPortTextField=_outgoingPortTextField; +@property(nonatomic) NSTextField *smtpServerTextField; // @synthesize smtpServerTextField=_smtpServerTextField; +@property(nonatomic) NSTextField *incomingPortTextField; // @synthesize incomingPortTextField=_incomingPortTextField; +@property(nonatomic) NSTextField *mailServerTextField; // @synthesize mailServerTextField=_mailServerTextField; +@property(nonatomic) NSTextField *emailAddressTextField; // @synthesize emailAddressTextField=_emailAddressTextField; +@property(retain, nonatomic) NSView *outgoingAccountManualSetupView; // @synthesize outgoingAccountManualSetupView=_outgoingAccountManualSetupView; +@property(retain, nonatomic) NSView *outgoingAccountInfoView; // @synthesize outgoingAccountInfoView=_outgoingAccountInfoView; +@property(retain, nonatomic) NSView *incomingAccountManualSetupView; // @synthesize incomingAccountManualSetupView=_incomingAccountManualSetupView; +@property(retain, nonatomic) NSView *incomingAccountInfoView; // @synthesize incomingAccountInfoView=_incomingAccountInfoView; +- (id)_uniqueDisplayNameForAccount; +- (void)updateAccountSetupResultWithOutgoingAccount:(id)arg1; +- (void)updateAccountSetupResultWithIncomingAccount:(id)arg1; +- (void)updateAccountSetupInput; +@property(nonatomic) long long accountType; +@property(copy, nonatomic) NSString *emailAddress; +@property(readonly, nonatomic) BOOL popDisabled; +@property(readonly, nonatomic) BOOL outgoingAccountDisabled; +- (id)delegateApplicationName; +- (BOOL)validatorShouldPromptForInsecurePassword:(id)arg1; +- (void)validatorDidFinish:(id)arg1; +- (id)_configureAuthenticationPopUp:(id)arg1 withAuthSchemes:(id)arg2 currentAuthScheme:(id)arg3 allowNone:(BOOL)arg4; +- (void)validatorDidFail:(id)arg1; +- (void)validator:(id)arg1 didChangeState:(long long)arg2; +- (BOOL)plugin:(id)arg1 handleCertificateError:(id)arg2; +- (void)plugin:(id)arg1 didChangeAccountUID:(id)arg2; +- (void)plugin:(id)arg1 didDeleteAccountUID:(id)arg2; +- (void)plugin:(id)arg1 didCreateAccountUID:(id)arg2; +- (void)plugin:(id)arg1 accountSetupDidFinish:(id)arg2 withResult:(id)arg3; +- (void)plugin:(id)arg1 accountSetupDidFail:(id)arg2 withError:(id)arg3; +- (void)plugin:(id)arg1 accountSetupUpdate:(id)arg2 withStatus:(long long)arg3; +- (BOOL)showBackButton; +- (id)title; +- (BOOL)showCreateButton; +- (BOOL)inputValidForNext; +- (void)cancel; +- (BOOL)_sendIAAccountCreationNotificationForUID:(id)arg1 withError:(id)arg2; +- (void)_createAccountWithSetupResult:(id)arg1; +- (void)_updateAccountSetupResultWithReceivingAccountInfo:(id)arg1 deliveryAccountInfo:(id)arg2; +- (void)_cancelValidation; +- (void)_kickOffOutgoingAccountValidation; +- (void)_kickOffIncomingAccountValidation; +- (void)createWithCompletion:(id)arg1; +- (void)back; +- (void)next; +- (void)didUpdateCurrentView:(id)arg1; +- (id)viewForAccount:(id)arg1; +- (void)_updateOutgoingTLSCertificateConstraintsWithAuthMechanism:(id)arg1; +- (void)_updateIncomingTLSCertificateConstraintsWithAuthMechanism:(id)arg1; +- (void)_updatePathPrefixConstraintsWithAccountType:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)loadView; +- (void)dealloc; +- (id)initWithCoder:(id)arg1; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCISPAccountSettingsManager.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCISPAccountSettingsManager.h new file mode 100644 index 00000000..c84c1c24 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCISPAccountSettingsManager.h @@ -0,0 +1,48 @@ +/* + * 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" + +@class NSMutableDictionary; + +@interface MCISPAccountSettingsManager : NSObject +{ + NSMutableDictionary *_ispAccountsSettings; + NSMutableDictionary *_ispReceivingAccountsSettingsByDomain; + NSMutableDictionary *_ispDeliveryAccountsSettingsByDomain; + NSMutableDictionary *_ispDeliveryAccountsSettingsByIdentifier; +} + ++ (id)_accountInformationStringForKey:(id)arg1 localizedKey:(id)arg2 domain:(id)arg3; ++ (id)ispSubscriptionURLLabelForDomain:(id)arg1; ++ (id)ispSubscriptionURLForDomain:(id)arg1; ++ (id)ispSupportURLLabelForDomain:(id)arg1; ++ (id)ispSupportURLForDomain:(id)arg1; ++ (id)ispBrandNameForDomain:(id)arg1; ++ (BOOL)ispAccountInformationAvailableForDomain:(id)arg1; ++ (id)_alwaysPersistedKeys; ++ (id)onlineDatabaseSettings; ++ (id)locallyInstalledSettings; ++ (void)initialize; +- (void)emptyCache; +- (id)deliveryAccountsSettingsForDomain:(id)arg1; +- (id)_deliveryAccountsSettingsForDomain:(id)arg1 fetchIfNecessary:(BOOL)arg2; +- (id)receivingAccountSettingsForDomain:(id)arg1; +- (id)_receivingAccountSettingsForDomain:(id)arg1 fetchIfNecessary:(BOOL)arg2; +- (BOOL)_getAccountIsReceivingAccount:(char *)arg1 isDeliveryAccount:(char *)arg2 fromAccountSettings:(id)arg3; +- (BOOL)_persistISPPlist:(id)arg1; +- (id)_persistantISPAccountSettings:(id)arg1; +- (id)_persistantAccountSettings:(id)arg1; +- (BOOL)_shouldVerifyLoadedISPPlist; +- (void)_loadISPPlist:(id)arg1 bundle:(id)arg2 path:(id)arg3; +- (void)_loadISPPlistsAtPath:(id)arg1; +- (void)_unloadISPAccounts; +- (void)_loadISPAccountsIfNecessary; +- (id)_persistanceFolderName; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCImageJunkMetadata.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCImageJunkMetadata.h new file mode 100644 index 00000000..919dc862 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCImageJunkMetadata.h @@ -0,0 +1,37 @@ +/* + * 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" + +@interface MCImageJunkMetadata : NSObject +{ + unsigned long long _pixelCount; + unsigned long long _byteCount; + BOOL _isAnimated; + long long _type; + double _density; + unsigned long long _frameCount; + struct CGSize _size; +} + ++ (id)lsmMarkerForImageDensityCategory:(long long)arg1; ++ (id)lsmMarkerForImageSizeCategory:(long long)arg1; ++ (id)stringForImageType:(long long)arg1; +@property unsigned long long frameCount; // @synthesize frameCount=_frameCount; +@property BOOL isAnimated; // @synthesize isAnimated=_isAnimated; +@property double density; // @synthesize density=_density; +@property struct CGSize size; // @synthesize size=_size; +@property long long type; // @synthesize type=_type; +- (id)description; +@property(readonly) long long densityCategory; +@property(readonly) long long sizeCategory; +@property unsigned long long pixelCount; +@property unsigned long long byteCount; +- (void)computeDensity; +- (id)initWithImage:(id)arg1 name:(id)arg2 type:(long long)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCInvocationQueue.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCInvocationQueue.h new file mode 100644 index 00000000..6ce24731 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCInvocationQueue.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOperationQueue.h" + +@class NSPort; + +@interface MCInvocationQueue : NSOperationQueue +{ + NSPort *_runLoopCancelPort; +} + ++ (BOOL)didCancelAllMonitoredItems; ++ (void)cancelAllMonitoredItems; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (id)_newOperationWithInvocation:(id)arg1; +- (void)runInvocationOnQueueSynchronously:(id)arg1; +- (void)addInvocation:(id)arg1; +- (void)dealloc; +- (id)initWithMaxConcurrentOperationCount:(long long)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCJunkRecorder.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCJunkRecorder.h new file mode 100644 index 00000000..3b8bc58c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCJunkRecorder.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class NSMutableDictionary; + +@interface MCJunkRecorder : NSObject +{ + BOOL _isSigned; + BOOL _isShort; + long long _imageCount; + long long _characterCount; + double _imageToTextRatio; + NSMutableDictionary *_imageInfos; + double _lsmScore; +} + +@property double lsmScore; // @synthesize lsmScore=_lsmScore; +@property BOOL isShort; // @synthesize isShort=_isShort; +@property BOOL isSigned; // @synthesize isSigned=_isSigned; +@property(retain) NSMutableDictionary *imageInfos; // @synthesize imageInfos=_imageInfos; +@property double imageToTextRatio; // @synthesize imageToTextRatio=_imageToTextRatio; +@property long long characterCount; // @synthesize characterCount=_characterCount; +@property long long imageCount; // @synthesize imageCount=_imageCount; +- (id)description; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCKeychainManager.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCKeychainManager.h new file mode 100644 index 00000000..77dce742 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCKeychainManager.h @@ -0,0 +1,32 @@ +/* + * 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" + +@interface MCKeychainManager : NSObject +{ +} + ++ (struct OpaqueSecPolicyRef *)createSMIMEPolicyForAddress:(id)arg1 keyUsage:(void *)arg2; ++ (BOOL)canEncryptMessagesToAddresses:(id)arg1 sender:(id)arg2; ++ (BOOL)canEncryptMessagesToAddress:(id)arg1; ++ (BOOL)canSignMessagesFromAddress:(id)arg1; ++ (struct OpaqueSecCertificateRef *)copyEncryptionCertificateForAddress:(id)arg1; ++ (struct OpaqueSecIdentityRef *)copySigningIdentityForAddress:(id)arg1; ++ (BOOL)configureTLSCertificatesPopUp:(id)arg1 usingPersistentReference:(BOOL)arg2 withOldIdentity:(id)arg3 newIdentity:(id *)arg4; ++ (id)_copyTlsClientIdentities; ++ (id)sessionTrustedCertificatesForHost:(id)arg1; ++ (void)setSessionTrustedCertificates:(id)arg1 forHost:(id)arg2; ++ (void)removePasswordForServiceName:(id)arg1 accountName:(id)arg2; ++ (void)setPassword:(id)arg1 forServiceName:(id)arg2 accountName:(id)arg3; ++ (id)passwordForServiceName:(id)arg1 accountName:(id)arg2; ++ (void)removePasswordForHost:(id)arg1 username:(id)arg2 port:(unsigned short)arg3 protocol:(void *)arg4; ++ (void)setPassword:(id)arg1 forHost:(id)arg2 username:(id)arg3 port:(unsigned short)arg4 protocol:(void *)arg5; ++ (id)passwordForHost:(id)arg1 username:(id)arg2 port:(unsigned short)arg3 protocol:(void *)arg4; ++ (void)initialize; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCLargeAttachmentFileWrapper.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCLargeAttachmentFileWrapper.h new file mode 100644 index 00000000..9a7dee5b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCLargeAttachmentFileWrapper.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@class NSURL; + +@interface MCLargeAttachmentFileWrapper : NSFileWrapper +{ + unsigned long long _attachmentSize; + NSURL *_fileToCopy; +} + ++ (id)localAttachmentFilesDirectory; ++ (id)fileWrapperWithURL:(id)arg1 andContentID:(id)arg2; +@property(retain) NSURL *fileToCopy; // @synthesize fileToCopy=_fileToCopy; +@property unsigned long long approximateSize; // @synthesize approximateSize=_attachmentSize; +- (BOOL)isALargeAttachment; +- (id)symbolicLinkDestinationURL; +- (id)archivedDataWithPartNumber:(id)arg1; +- (void)dealloc; +- (id)initWithDictionaryRepresentation:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMainThreadInvocationOperation.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMainThreadInvocationOperation.h new file mode 100644 index 00000000..36696a29 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMainThreadInvocationOperation.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCMainThreadInvocationOperation : MCThrowingInvocationOperation +{ + BOOL _isExecuting; + BOOL _isFinished; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +- (void)_finish; +- (BOOL)isFinished; +- (void)_setIsExecuting:(BOOL)arg1; +- (BOOL)isExecuting; +- (BOOL)isConcurrent; +- (void)main; +- (void)start; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMemoryDataSource.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMemoryDataSource.h new file mode 100644 index 00000000..aa9dfe2a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMemoryDataSource.h @@ -0,0 +1,68 @@ +/* + * 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 "MCMessageDataSource.h" + +@class NSData, NSMutableSet; + +@interface MCMemoryDataSource : NSObject +{ + NSMutableSet *_uniqueStrings; + NSData *_separator; + NSData *_data; +} + +@property(readonly) NSData *data; // @synthesize data=_data; +- (id)uniquedString:(id)arg1; +- (void)flushAllCaches; +- (void)invalidateMessage:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)routeMessages:(id)arg1; +- (void)doCompact; +- (BOOL)canCompact; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)undeleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (id)mailbox; +- (id)account; +@property(readonly) BOOL isReadOnly; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)message; +- (void)dealloc; +- (id)init; +- (id)initWithData:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMessage.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessage.h new file mode 100644 index 00000000..6015820b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessage.h @@ -0,0 +1,197 @@ +/* + * 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 "MCMessageSortingInterface.h" +#import "NSCopying.h" + +@class NSArray, NSData, NSMutableSet, NSSet, NSString, NSUUID; + +@interface MCMessage : NSObject +{ + id _dataSource; + NSString *_senderDisplayName; + NSString *_subject; + NSArray *_toRecipients; + NSString *_sender; + NSData *_messageIDHeaderDigest; + NSData *_inReplyToHeaderDigest; + NSUUID *_documentID; + unsigned int _messageFlags; + CDStruct_accefccd _flags; + BOOL _type; + double _dateSentInterval; + double _dateReceivedInterval; + double _dateLastViewedInterval; + unsigned char _subjectPrefixLength; + NSMutableSet *_gmailLabels; + BOOL _recipientType; +} + ++ (BOOL)isMessageURLString:(id)arg1; ++ (unsigned long long)displayablePriorityForPriority:(unsigned int)arg1; ++ (unsigned int)validatePriority:(unsigned int)arg1; ++ (BOOL)colorIsSetInMoreFlags:(CDStruct_accefccd)arg1; ++ (BOOL)allMessages:(id)arg1 areSameType:(BOOL)arg2; ++ (unsigned char)subjectPrefixLengthUnknown; ++ (id)unreadMessagesFromMessages:(id)arg1; ++ (BOOL)_messageTypeForMessageTypeKey:(id)arg1; ++ (id)messageTypeKeyForMessageType:(BOOL)arg1; ++ (id)descriptionForType:(BOOL)arg1 plural:(BOOL)arg2; ++ (id)replyPrefixWithSpacer:(BOOL)arg1; ++ (id)forwardedMessagePrefixWithSpacer:(BOOL)arg1; ++ (id)messageWithRFC822Data:(id)arg1 sanitizeData:(BOOL)arg2; ++ (id)messageWithRFC822Data:(id)arg1; ++ (void)initialize; +@property BOOL recipientType; // @synthesize recipientType=_recipientType; +@property double primitiveDateLastViewedInterval; // @synthesize primitiveDateLastViewedInterval=_dateLastViewedInterval; +@property double primitiveDateReceivedInterval; // @synthesize primitiveDateReceivedInterval=_dateReceivedInterval; +@property double primitiveDateSentInterval; // @synthesize primitiveDateSentInterval=_dateSentInterval; +@property BOOL primitiveMessageType; // @synthesize primitiveMessageType=_type; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3; +- (BOOL)calculateAttachmentInfoFromBody:(id)arg1 numberOfAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4 force:(BOOL)arg5; +- (BOOL)calculateAttachmentInfoFromBody:(id)arg1 numberOfAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4; +- (void)setAttachmentInfoFromBody:(id)arg1 forced:(BOOL)arg2; +- (void)setAttachmentInfoFromBody:(id)arg1; +- (void)forceSetAttachmentInfoFromBody:(id)arg1; +- (void)_calculateAttachmentInfoFromBody:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)dataForMimePart:(id)arg1; +- (id)headerData; +- (id)headerDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)bodyData; +- (id)bodyDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)persistentID; +@property(readonly) BOOL isThread; +- (id)URLStringIfAvailable; +- (id)URLString; +- (id)_URLFetchIfNotAvailable:(BOOL)arg1; +- (id)originalMailboxURLString; +- (id)remoteMailboxURLString; +- (id)account; +- (id)path; +- (CDStruct_accefccd)moreMessageFlags; +- (unsigned int)uidForSort; +- (unsigned int)uid; +- (id)remoteID; +- (id)references; +- (void)setMessageInfoFromMessage:(id)arg1; +- (void)setMessageInfo:(id)arg1 subjectPrefixLength:(unsigned char)arg2 to:(id)arg3 sender:(id)arg4 type:(BOOL)arg5 dateReceivedTimeIntervalSince1970:(double)arg6 dateSentTimeIntervalSince1970:(double)arg7 messageIDHeaderDigest:(id)arg8 inReplyToHeaderDigest:(id)arg9 dateLastViewedTimeIntervalSince1970:(double)arg10; +- (void)setTo:(id)arg1; +- (id)to; +- (id)senderDisplayName; +- (id)senderIfAvailable; +- (void)setSender:(id)arg1; +- (id)sender; +- (void)setDateLastViewedTimeIntervalSince1970:(double)arg1; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (id)dateLastViewed; +- (void)setDateSentTimeIntervalSince1970:(double)arg1; +- (double)dateSentAsTimeIntervalSince1970; +- (double)dateReceivedAsTimeIntervalSince1970; +- (void)setDateReceivedTimeIntervalSince1970:(double)arg1; +- (id)dateSent; +- (id)dateReceived; +- (BOOL)supportsSnippets; +- (void)setSubjectPrefixLength:(unsigned char)arg1; +- (void)setSubject:(id)arg1; +- (id)subjectIfAvailable; +- (id)subject; +- (id)subjectNotIncludingReAndFwdPrefix; +- (id)subjectAndPrefixLength:(unsigned long long *)arg1; +- (void)loadCachedHeaderValuesFromHeaders:(id)arg1 type:(BOOL)arg2; +- (void)_setDateSentFromHeaders:(id)arg1; +- (void)_setDateReceivedFromHeaders:(id)arg1; +- (id)_newDateFromDateHeaderInHeaders:(id)arg1; +- (id)_newDateFromHeader:(id)arg1 inHeaders:(id)arg2; +- (id)_newDateFromReceivedHeadersInHeaders:(id)arg1; +- (BOOL)_doesDateAppearToBeSane:(id)arg1; +- (id)rawSourceFromHeaders:(id)arg1 body:(id)arg2; +- (long long)priority; +- (void)setPriorityFromHeaders:(id)arg1; +- (long long)junkMailLevel; +- (unsigned long long)numberOfAttachments; +- (BOOL)hasCalculatedNumberOfAttachments; +- (id)stringForJunk:(id)arg1; +- (id)stringForJunk; +- (id)stringForIndexingUpdatingBodyFlags:(BOOL)arg1; +- (id)stringForBodyContent; +- (id)stringForIndexing; +- (id)stringValueRenderMode:(long long)arg1 updateBodyFlags:(BOOL)arg2 junkRecorder:(id)arg3 bodyOnly:(BOOL)arg4; +- (BOOL)isPartialMessageBodyAvailable; +- (BOOL)isMessageContentsLocallyAvailable; +- (id)_inReplyToHeaderDigestIvar; +- (void)setInReplyToHeaderDigest:(id)arg1; +- (void)unlockedSetInReplyToHeaderDigest:(id)arg1; +- (BOOL)isReply; +- (id)inReplyToHeaderDigest; +- (id)_messageIDHeaderDigestIvar; +- (void)setMessageIDHeaderDigest:(id)arg1; +- (void)unlockedSetMessageIDHeaderDigest:(id)arg1; +- (id)messageIDHeaderDigest; +- (id)messageID; +- (id)attributedString; +- (unsigned long long)messageSize; +- (void)dealloc; +- (void)setColor:(id)arg1 hasBeenEvaluated:(BOOL)arg2 flags:(unsigned int)arg3 mask:(unsigned int)arg4; +- (void)setPrimitiveColor:(id)arg1 hasBeenEvaluated:(BOOL)arg2 flags:(unsigned int)arg3 mask:(unsigned int)arg4; +- (void)setColorHasBeenEvaluated:(BOOL)arg1; +- (void)setPrimitiveColorHasBeenEvaluated:(BOOL)arg1; +- (void)setColor:(id)arg1; +- (void)setPrimitiveColor:(id)arg1; +- (void)setMarkedForOverwrite:(BOOL)arg1; +- (BOOL)isMarkedForOverwrite; +- (int)colorForSort; +- (int)colorIntValue; +- (id)color; +- (BOOL)colorHasBeenEvaluated; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (id)messageDataIncludingFromSpace:(BOOL)arg1; +- (id)messageBodyIfAvailableUpdatingFlags:(BOOL)arg1; +- (id)messageBodyForIndexingAttachments; +- (id)messageBodyUpdatingFlags:(BOOL)arg1; +- (id)messageBodyFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)messageBodyIfAvailable; +- (id)messageBody; +- (id)attachmentNamesIfAvailable; +- (void)removeGmailLabels:(id)arg1; +- (void)addGmailLabels:(id)arg1; +@property(retain) NSSet *gmailLabels; +- (void)setMessageFlags:(unsigned int)arg1 mask:(unsigned int)arg2; +- (void)setPrimitiveMessageFlags:(unsigned int)arg1 mask:(unsigned int)arg2; +- (unsigned int)messageFlags; +- (void)setDocumentID:(id)arg1; +- (id)documentID; +- (BOOL)isMessageMeeting; +- (BOOL)isEditable; +- (void)setType:(BOOL)arg1; +- (BOOL)type; +- (id)headersIfAvailable; +- (id)headers; +- (void)_cacheMessageBodyDataIfPossible:(id)arg1; +- (id)_cachedMessageBodyData; +- (void)_cacheMessageBodyIfPossible:(id)arg1; +- (id)_cachedMessageBody; +- (void)_cacheHeaderDataIfPossible:(id)arg1; +- (id)_cachedHeaderData; +- (void)_cacheHeadersIfPossible:(id)arg1; +- (id)_cachedHeaders; +- (void)uncacheBodyAndHeader; +- (void)cacheBodyAndHeader; +- (id)mailbox; +- (BOOL)dataSourceShouldBeSet; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (id)extendedDescription; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)init; +- (void)renderString:(id)arg1; +- (void)renderBody:(id)arg1; +- (void)renderHeaders:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageBody.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageBody.h new file mode 100644 index 00000000..c4fd0f3b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageBody.h @@ -0,0 +1,40 @@ +/* + * 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" + +@class MCMessage; + +@interface MCMessageBody : NSObject +{ + union { + MCMessage *message; + Class messageClass; + } _messageOrClass; + BOOL _hideCalendarMimePart; + long long _messageID; +} + +@property BOOL hideCalendarMimePart; // @synthesize hideCalendarMimePart=_hideCalendarMimePart; +@property long long messageID; // @synthesize messageID=_messageID; +- (id)webArchive; +- (id)textHtmlPart; +- (id)attachmentFilenames; +- (id)attachments; +- (id)attachmentsWithContext:(id)arg1; +- (unsigned int)numberOfAttachmentsSigned:(char *)arg1 encrypted:(char *)arg2 numberOfTNEFAttachments:(unsigned int *)arg3; +- (void)calculateNumberOfAttachmentsDecodeIfNeeded; +- (void)calculateNumberOfAttachmentsIfNeeded; +@property(readonly) BOOL isSignedByMe; +- (BOOL)isRich; +- (BOOL)isHTML; +- (id)attributedString; +@property MCMessage *message; +- (id)init; +- (void)renderString:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageDataSource-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageDataSource-Protocol.h new file mode 100644 index 00000000..64603fc5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageDataSource-Protocol.h @@ -0,0 +1,56 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCActivityTarget.h" +#import "NSCopying.h" + +@protocol MCMessageDataSource +@property(readonly) BOOL isReadOnly; +- (id)uniquedString:(id)arg1; +- (void)flushAllCaches; +- (void)invalidateMessage:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)routeMessages:(id)arg1; +- (void)doCompact; +- (BOOL)canCompact; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)undeleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (id)mailbox; +- (id)account; + +@optional +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageGenerator.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageGenerator.h new file mode 100644 index 00000000..f8404f9a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageGenerator.h @@ -0,0 +1,66 @@ +/* + * 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" + +@interface MCMessageGenerator : NSObject +{ + BOOL _shouldConvertCompositeImages; + BOOL _shouldMarkNonresizableAttachmentData; + BOOL _createsMimeAlternatives; + BOOL _createsPlainTextOnly; + BOOL _createsRichText; + BOOL _allows8BitMimeParts; + BOOL _allowsBinaryMimeParts; + BOOL _allowsAppleDoubleAttachments; + BOOL _signsOutput; + BOOL _encryptsOutput; + unsigned long long _preferredEncoding; + unsigned long long _encodingHint; +} + ++ (id)domainHintForResentIDFromHeaders:(id)arg1 hasResentFromHeaders:(char *)arg2; +@property(nonatomic) BOOL encryptsOutput; // @synthesize encryptsOutput=_encryptsOutput; +@property(nonatomic) BOOL signsOutput; // @synthesize signsOutput=_signsOutput; +@property(nonatomic) BOOL allowsAppleDoubleAttachments; // @synthesize allowsAppleDoubleAttachments=_allowsAppleDoubleAttachments; +@property(nonatomic) BOOL allowsBinaryMimeParts; // @synthesize allowsBinaryMimeParts=_allowsBinaryMimeParts; +@property(nonatomic) BOOL allows8BitMimeParts; // @synthesize allows8BitMimeParts=_allows8BitMimeParts; +@property(nonatomic) BOOL alwaysCreatesRichText; // @synthesize alwaysCreatesRichText=_createsRichText; +@property(nonatomic) BOOL createsPlainTextOnly; // @synthesize createsPlainTextOnly=_createsPlainTextOnly; +@property(nonatomic) BOOL createsMimeAlternatives; // @synthesize createsMimeAlternatives=_createsMimeAlternatives; +@property(nonatomic) unsigned long long encodingHint; // @synthesize encodingHint=_encodingHint; +@property(nonatomic) unsigned long long preferredEncoding; // @synthesize preferredEncoding=_preferredEncoding; +- (id)_newRFC2047NameParameterDataForMimePart:(id)arg1; +- (id)_hfsFilenameDataWithFilename:(id)arg1 partData:(id)arg2; +- (void)_setMimeTypeFromAttachment:(id)arg1 onMimePart:(id)arg2 filename:(id *)arg3; +- (BOOL)_encodeDataForMimePart:(id)arg1 withPartData:(id)arg2; +- (id)_newDataForMimePart:(id)arg1 withPartData:(id)arg2; +- (BOOL)appendDataForMimePart:(id)arg1 toData:(id)arg2 withPartData:(id)arg3; +- (void)_appendHeadersForMimePart:(id)arg1 toHeaders:(id)arg2; +- (id)_newPartForStationeryCompositeImage:(id)arg1 partData:(id)arg2; +- (id)_newPartForDirectoryAttachment:(id)arg1 partData:(id)arg2; +- (id)_newPartForAttachment:(id)arg1 partData:(id)arg2; +- (id)_newMimePartWithWebResource:(id)arg1 partData:(id)arg2 seenURLStrings:(id)arg3; +- (id)_newPartAndDataForString:(id)arg1 charset:(id)arg2 subtype:(id)arg3 partData:(id)arg4; +- (id)_newPlainTextPartWithAttributedString:(id)arg1 partData:(id)arg2; +- (id)_newMimePartWithAttributedString:(id)arg1 partData:(id)arg2 outputRich:(BOOL)arg3; +- (id)_newOutgoingMessage; +- (id)_newOutgoingMessageFromTopLevelMimePart:(id)arg1 topLevelHeaders:(id)arg2 withPartData:(id)arg3; +- (id)newMessageFromMessage:(id)arg1 reencodedWithCharset:(id)arg2; +- (id)newMessageByRemovingAttachmentsFromMessage:(id)arg1; +- (id)newMessageWithBodyData:(id)arg1 headers:(id)arg2; +- (id)newDataForAttributedString:(id)arg1; +- (id)newMessageWithAttributedString:(id)arg1 headers:(id)arg2; +- (id)newMessageWithHtmlString:(id)arg1 attachments:(id)arg2 headers:(id)arg3; +- (void)_recursivelyAddSubresourcesFromArchive:(id)arg1 toArray:(id)arg2; +- (id)newMessageWithHtmlString:(id)arg1 plainTextAlternative:(id)arg2 otherHtmlStringsAndAttachments:(id)arg3 headers:(id)arg4; +- (unsigned long long)_preferredEncodingUsingHintIfNecessary; +- (void)setShouldMarkNonresizableAttachmentData:(BOOL)arg1; +- (void)setShouldConvertCompositeImages:(BOOL)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageHeaders.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageHeaders.h new file mode 100644 index 00000000..3d7f8c3e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageHeaders.h @@ -0,0 +1,67 @@ +/* + * 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 "NSCopying.h" +#import "NSMutableCopying.h" + +@class NSData; + +@interface MCMessageHeaders : NSObject +{ + NSData *_data; + id _sender; + unsigned long long _encodingHint; +} + ++ (id)englishHeadersFromLocalizedHeaders:(id)arg1; ++ (id)localizedHeadersFromEnglishHeaders:(id)arg1; ++ (id)localizedHeaderForKey:(id)arg1; ++ (id)localizedHeaders; ++ (void)setCustomDisplayedHeaders:(id)arg1; ++ (id)customDisplayedHeaders; ++ (id)basicHeaderKeys; ++ (const char *)cstringForKey:(id)arg1; ++ (BOOL)isAddressHeaderKey:(id)arg1; ++ (void)initialize; +- (void)_appendAddressList:(id)arg1 toData:(id)arg2; +- (void)appendHeaderData:(id)arg1 recipients:(id)arg2 recipientsByHeaderKey:(id)arg3 expandABGroups:(BOOL)arg4 includeComment:(BOOL)arg5; +- (void)appendHeaderData:(id)arg1 recipients:(id)arg2; +- (id)encodedHeadersIncludingFromSpace:(BOOL)arg1; +- (BOOL)messageIsFromMicrosoft; +- (id)mailVersion; +- (id)isoLatin1CharsetHint; +- (id)_newDecodedAddressFromDataInRange:(struct _NSRange)arg1 sender:(id)arg2 consumedLength:(unsigned long long *)arg3; +- (id)_firstAddressForKey:(id)arg1 sender:(id)arg2; +- (id)firstAddressForKey:(id)arg1; +- (id)addressListForKey:(id)arg1; +- (id)_newHeaderValueForKey:(id)arg1 offset:(unsigned long long *)arg2; +- (id)firstHeaderForKey:(id)arg1; +- (id)_headersForKey:(id)arg1; +- (id)headersForKey:(id)arg1; +- (BOOL)hasHeaderForKey:(id)arg1; +- (void)_setCapitalizedKey:(id)arg1 forKey:(id)arg2; +- (id)_capitalizedKeyForKey:(id)arg1; +- (id)allHeaderKeys; +- (void)_resetSender; +- (id)_sender; +- (unsigned long long)encodingHint; +- (id)headerData; +- (id)headersDictionaryWithHeaderDetailLevel:(long long)arg1 forMessageType:(BOOL)arg2; +- (id)attributedStringShowingHeaderDetailLevel:(long long)arg1; +- (id)_htmlValueWithKey:(id)arg1 value:(id)arg2 useBold:(BOOL)arg3; +- (id)_htmlHeaderKey:(id)arg1 useBold:(BOOL)arg2 useGray:(BOOL)arg3; +- (id)htmlStringShowingHeaderDetailLevel:(long long)arg1 useBold:(BOOL)arg2 useGray:(BOOL)arg3; +- (id)_headersToDisplayFromHeaderKeys:(id)arg1 headerDetailLevel:(long long)arg2; +- (id)mutableCopyWithZone:(struct _NSZone *)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithHeaderData:(id)arg1 encodingHint:(unsigned long long)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageSortingInterface-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageSortingInterface-Protocol.h new file mode 100644 index 00000000..c2d9a0a3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageSortingInterface-Protocol.h @@ -0,0 +1,24 @@ +/* + * 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" + +@protocol MCMessageSortingInterface +- (unsigned int)uidForSort; +- (id)mailbox; +- (double)dateSentAsTimeIntervalSince1970; +- (double)dateReceivedAsTimeIntervalSince1970; +- (id)to; +- (id)subjectAndPrefixLength:(unsigned long long *)arg1; +- (id)subject; +- (unsigned long long)numberOfAttachments; +- (unsigned long long)messageSize; +- (id)senderDisplayName; +- (unsigned int)messageFlags; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (int)colorForSort; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageTracer.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageTracer.h new file mode 100644 index 00000000..9f1843d3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageTracer.h @@ -0,0 +1,23 @@ +/* + * 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" + +@interface MCMessageTracer : NSObject +{ +} + ++ (id)bucketSignatureForValue:(long long)arg1; ++ (void)messageTraceDomain:(id)arg1 withCustomKeysAndValues:(id)arg2; ++ (void)messageTraceResult:(const char *)arg1 domain:(id)arg2 signature:(id)arg3; ++ (void)messageTraceResult:(const char *)arg1 domain:(id)arg2 signature:(id)arg3 extraStatus:(id)arg4; ++ (void)messageTraceResult:(const char *)arg1 domain:(id)arg2 uuid:(id)arg3 signature:(id)arg4 extraStatus:(id)arg5; ++ (void)messageTraceResult:(const char *)arg1 count:(unsigned long long)arg2 domainPrefix:(id)arg3 domainSuffix:(id)arg4 signature:(id)arg5 extraStatus:(id)arg6; ++ (void)messageTraceDomainPrefix:(id)arg1 domainSuffix:(id)arg2 signature:(id)arg3 signature2:(id)arg4 extraStatus:(id)arg5; ++ (void)messageTraceOperationError:(id)arg1 domainPrefix:(id)arg2 domainSuffix:(id)arg3 uuid:(id)arg4 duration:(double)arg5 count:(unsigned long long)arg6 size:(unsigned long long)arg7; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageURLProtocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageURLProtocol.h new file mode 100644 index 00000000..ffaf31dd --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMessageURLProtocol.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSURLProtocol.h" + +@interface MCMessageURLProtocol : NSURLProtocol +{ +} + ++ (BOOL)requestIsCacheEquivalent:(id)arg1 toRequest:(id)arg2; ++ (id)canonicalRequestForRequest:(id)arg1; ++ (BOOL)canInitWithRequest:(id)arg1; +- (void)stopLoading; +- (void)startLoading; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMimeBody.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMimeBody.h new file mode 100644 index 00000000..dff6833b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMimeBody.h @@ -0,0 +1,56 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MCMimePart, NSData; + +@interface MCMimeBody : MCMessageBody +{ + MCMimePart *_topLevelPart; + NSData *_bodyData; +} + ++ (id)newMimeBoundary; ++ (id)versionString; ++ (void)initialize; +- (void)flushCachedData; +- (void)setBodyData:(id)arg1; +- (id)bodyData; +- (id)dataForMimePart:(id)arg1; +- (id)parsedMessageWithContext:(id)arg1; +- (id)parsedMessage; +- (id)webArchive; +- (id)textHtmlPart; +- (id)preferredBodyPart; +- (BOOL)isTextPlain; +- (BOOL)isMultipartRelated; +- (BOOL)isRich; +- (BOOL)isHTML; +- (id)attachmentFilenames; +- (id)attachmentsWithContext:(id)arg1; +- (id)attachments; +- (unsigned int)numberOfAttachmentsSigned:(char *)arg1 encrypted:(char *)arg2 numberOfTNEFAttachments:(unsigned int *)arg3; +- (BOOL)hasAttachments; +- (void)decodeIfNecessary; +- (void)decodeIfNecessaryWithContext:(id)arg1; +- (BOOL)_isPossiblySignedOrEncrypted; +- (void)calculateNumberOfAttachmentsIfNeeded; +- (id)partWithNumber:(id)arg1; +- (id)mimeSubtype; +- (id)mimeType; +- (BOOL)isSignedByMe; +- (id)attachmentPartsEnumerator; +- (id)allPartsEnumerator; +- (void)setTopLevelPart:(id)arg1; +- (id)topLevelPart; +- (void)dealloc; +- (id)attributedString; +- (void)renderString:(id)arg1; +- (void)renderStringForJunk:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMimeCharset.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMimeCharset.h new file mode 100644 index 00000000..00b34c9d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMimeCharset.h @@ -0,0 +1,38 @@ +/* + * 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" + +@class NSString; + +@interface MCMimeCharset : NSObject +{ + NSString *_primaryLanguage; + NSString *_charsetName; + unsigned int _coversLargeUnicodeSubset:1; + unsigned int _useBase64InHeaders:1; + unsigned int _canBeUsedForOutgoingMessages:1; + unsigned long long _encoding; +} + ++ (id)encodingVariantsForRecipients:(id)arg1; ++ (unsigned long long)encodingVariantForEncoding:(unsigned long long)arg1 address:(id)arg2; ++ (id)preferredMimeCharset; ++ (id)charsetForEncoding:(unsigned long long)arg1; ++ (id)allMimeCharsets; +@property(readonly) unsigned long long encoding; // @synthesize encoding=_encoding; +- (id)description; +- (id)primaryLanguage; +- (id)displayName; +- (BOOL)useBase64InHeaders; +- (BOOL)coversLargeUnicodeSubset; +- (BOOL)canBeUsedForOutgoingMessages; +- (id)charsetName; +- (void)dealloc; +- (id)_initWithCFEncoding:(unsigned int)arg1 primaryLanguage:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMimeDecodeContext.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMimeDecodeContext.h new file mode 100644 index 00000000..a37cfb58 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMimeDecodeContext.h @@ -0,0 +1,19 @@ +/* + * 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" + +@interface MCMimeDecodeContext : NSObject +{ + BOOL _decodeTextPartsOnly; + BOOL _shouldSkipUpdatingMessageFlags; +} + +@property(nonatomic) BOOL shouldSkipUpdatingMessageFlags; // @synthesize shouldSkipUpdatingMessageFlags=_shouldSkipUpdatingMessageFlags; +@property(nonatomic) BOOL decodeTextPartsOnly; // @synthesize decodeTextPartsOnly=_decodeTextPartsOnly; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMimePart.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMimePart.h new file mode 100644 index 00000000..d39c9e8a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMimePart.h @@ -0,0 +1,184 @@ +/* + * 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 "NSURLDownloadDelegate.h" + +@class MCError, MCMessage, MCMessageBody, NSArray, NSMutableDictionary, NSString; + +@interface MCMimePart : NSObject +{ + id _encryptSignLock; + NSArray *_messageSigners; + MCError *_smimeError; + struct _NSRange _range; + id _parentOrBody; + MCMimePart *_nextPart; + long long _typeCode; + long long _subtypeCode; + NSString *_type; + NSString *_subtype; + NSMutableDictionary *_bodyParameters; + NSString *_contentTransferEncoding; + NSMutableDictionary *_otherIvars; + BOOL _isMimeEncrypted; + BOOL _isMimeSigned; + MCMessageBody *_decryptedMessageBody; + MCMessage *_decryptedMessage; + id _decryptedMessageDataSource; +} + +@property(retain, nonatomic) id decryptedMessageDataSource; // @synthesize decryptedMessageDataSource=_decryptedMessageDataSource; +@property(retain, nonatomic) MCMessage *decryptedMessage; // @synthesize decryptedMessage=_decryptedMessage; +@property(retain, nonatomic) MCMessageBody *decryptedMessageBody; // @synthesize decryptedMessageBody=_decryptedMessageBody; +@property(nonatomic) BOOL isMimeSigned; // @synthesize isMimeSigned=_isMimeSigned; +@property(nonatomic) BOOL isMimeEncrypted; // @synthesize isMimeEncrypted=_isMimeEncrypted; +@property(copy) NSString *contentTransferEncoding; // @synthesize contentTransferEncoding=_contentTransferEncoding; +- (void)setDecryptedMessageBody:(id)arg1 isEncrypted:(BOOL)arg2 isSigned:(BOOL)arg3 error:(id)arg4; +- (void)clearCachedDecryptedMessageBody; +- (id)decryptedMessageBodyIsEncrypted:(char *)arg1 isSigned:(char *)arg2 error:(id *)arg3; +- (id)_archiveForMultipartRelated; +- (id)webArchive; +- (id)parsedMessageWithContext:(id)arg1; +- (id)parsedMessage; +- (id)_createArchiveWithConvertedPlainTextBodyClassFromArchive:(id)arg1; +- (id)_archiveForFileWrapper:(id)arg1 URL:(id)arg2; +- (id)_archiveForString:(id)arg1 URL:(id)arg2 needsPlainTextBodyClass:(BOOL)arg3; +- (id)_archiveForData:(id)arg1 URL:(id)arg2 MIMEType:(id)arg3 textEncodingName:(id)arg4 frameName:(id)arg5; +- (id)_archiveForData:(id)arg1 URL:(id)arg2 MIMEType:(id)arg3 textEncodingName:(id)arg4 frameName:(id)arg5 subresources:(id)arg6 subframeArchives:(id)arg7; +- (id)decodedContent; +- (id)decodedContentWithContext:(id)arg1; +- (id)htmlStringForMimePart:(id)arg1 attachment:(id)arg2; +- (void)htmlString:(id *)arg1 createWebResource:(id *)arg2 forFileWrapper:(id)arg3 partNumber:(id)arg4; +- (id)textHtmlPart; +- (id)textPart; +- (id)signedData; +- (id)bestAlternative; +- (id)startPart; +- (void)configureFileWrapper:(id)arg1; +- (void)downloadDidFinish:(id)arg1; +- (void)download:(id)arg1 didFailWithError:(id)arg2; +- (void)download:(id)arg1 didReceiveDataOfLength:(unsigned long long)arg2; +- (void)download:(id)arg1 didReceiveResponse:(id)arg2; +- (id)_remoteFileWrapper; +- (id)fileWrapper; +- (id)attributedString; +- (id)_getMessageAttachment:(unsigned long long)arg1; +- (id)_getMessageAttachment:(unsigned long long)arg1 context:(id)arg2; +- (id)_createFileWrapper; +- (id)_newAttachment; +@property(readonly) BOOL isAutoArchivePart; +- (BOOL)usesKnownSignatureProtocol; +- (BOOL)isHTML; +- (BOOL)isRich; +- (BOOL)isAttachment; +- (BOOL)shouldConsiderInlineOverridingExchangeServer; +- (BOOL)isMessageExternalBodyWithURL; +- (id)_partThatIsAttachment; +- (void)markAsStationeryImage; +- (BOOL)isStationeryImage; +- (BOOL)isCalendar; +@property(readonly) BOOL isImage; +- (BOOL)isReadableText; +- (unsigned long long)approximateDecodedSize; +- (unsigned long long)approximateRawSize; +- (unsigned long long)textEncoding; +- (id)attachmentFilenames; +- (id)attachments; +- (void)getNumberOfAttachments:(unsigned int *)arg1 numberOfTNEFAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4; +- (unsigned int)numberOfAttachments; +- (BOOL)hasCachedDataInStore; +@property(readonly) BOOL isEncrypted; +@property(readonly) BOOL isSigned; +- (id)attachmentFilename; +- (id)attachmentFilenameWithHiddenExtension:(char *)arg1; +- (id)description; +- (void)setMimeBody:(id)arg1; +- (id)mimeBody; +- (id)bodyConvertedFromFlowedText; +- (id)bodyData; +- (void)setRange:(struct _NSRange)arg1; +- (struct _NSRange)range; +- (void)addSubpart:(id)arg1; +- (void)setSubparts:(id)arg1; +- (id)subpartAtIndex:(long long)arg1; +- (id)subparts; +- (id)nextSiblingPart; +- (id)firstChildPart; +- (id)parentPart; +- (void)setLanguages:(id)arg1; +- (id)languages; +- (void)setContentLocation:(id)arg1; +- (id)contentLocation; +@property(readonly) NSString *contentIDURLString; +- (void)setContentID:(id)arg1; +- (id)contentID; +- (void)setContentDescription:(id)arg1; +- (id)contentDescription; +- (id)dispositionParameterKeys; +- (void)setDispositionParameter:(id)arg1 forKey:(id)arg2; +- (id)dispositionParameterForKey:(id)arg1; +- (void)setDisposition:(id)arg1; +- (id)disposition; +- (id)bodyParameterKeys; +- (void)setBodyParameter:(id)arg1 forKey:(id)arg2; +- (id)bodyParameterForKey:(id)arg1; +- (BOOL)isTypeCode:(long long)arg1 subtypeCode:(long long)arg2; +- (BOOL)isType:(id)arg1 subtype:(id)arg2; +- (void)setSubtype:(id)arg1; +- (id)subtype; +- (long long)subtypeCode; +- (void)setType:(id)arg1; +- (id)type; +- (long long)typeCode; +- (id)init; +- (void)dealloc; +- (void)renderString:(id)arg1; +- (BOOL)parseMimeBody; +- (BOOL)parseMimeBodyFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)partNumber; +- (void)_setupDictionary:(id *)arg1 fromArray:(id)arg2; +- (BOOL)parseIMAPPropertyList:(id)arg1; +- (id)decodeMultipartAppledoubleWithContext:(id)arg1; +- (id)decodeApplicationApplefileWithContext:(id)arg1; +- (id)decodeApplicationMac_binhex40WithContext:(id)arg1; +- (id)decodeMessageExternal_bodyWithContext:(id)arg1; +- (id)decodeMessagePartialWithContext:(id)arg1; +- (id)decodeMessageRfc822WithContext:(id)arg1; +- (id)decodeMessageDelivery_statusWithContext:(id)arg1; +- (id)decodeApplicationSmilWithContext:(id)arg1; +- (id)decodeApplicationZipWithContext:(id)arg1; +- (id)decodeApplicationOctet_streamWithContext:(id)arg1; +- (id)decodeApplicationApple_msg_composite_imageWithContext:(id)arg1; +- (id)decodeMultipartFolderWithContext:(id)arg1; +- (id)decodeMultipartRelatedWithContext:(id)arg1; +- (id)decodeMultipartAlternativeWithContext:(id)arg1; +- (id)decodeMultipartWithContext:(id)arg1; +- (id)decodeTextCalendarWithContext:(id)arg1; +- (id)decodeTextHtmlWithContext:(id)arg1; +- (id)decodeTextEnrichedWithContext:(id)arg1; +- (id)decodeTextRtfWithContext:(id)arg1; +- (id)decodeTextRichtextWithContext:(id)arg1; +- (id)decodeTextWithContext:(id)arg1; +- (id)decodeTextPlainWithContext:(id)arg1; +- (id)decode; +- (id)decodeWithContext:(id)arg1; +- (id)_fullMimeTypeEvenInsideAppleDouble; +- (id)copySignerLabels; +- (id)copyMessageSigners; +- (void)verifySignature; +- (BOOL)needsSignatureVerification:(id *)arg1; +- (id)decodeApplicationPkcs7_mimeWithContext:(id)arg1; +- (id)decodeMultipartSignedWithContext:(id)arg1; +- (id)_verifySignatureWithCMSDecoder:(struct _CMSDecoder *)arg1 againstSender:(id)arg2 signingError:(id *)arg3; +- (struct _CMSDecoder *)_newCMSDecoderWithMimePart:(id)arg1 error:(id *)arg2; +- (id)newEncryptedPartWithData:(id)arg1 recipients:(id)arg2 encryptedData:(id *)arg3; +- (id)newSignedPartWithData:(id)arg1 sender:(id)arg2 signatureData:(id *)arg3; +- (int)_addDataConvertingLineEndingsFromUnixToNetwork:(id)arg1 toCMSEncoder:(struct _CMSEncoder *)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMimeTextAttachment.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMimeTextAttachment.h new file mode 100644 index 00000000..3ba06b0a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMimeTextAttachment.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextAttachment.h" + +@class MCMimePart; + +@interface MCMimeTextAttachment : NSTextAttachment +{ + MCMimePart *_mimePart; +} + ++ (id)attachmentWithInternalAppleAttachmentData:(id)arg1 mimeBody:(id)arg2; +- (BOOL)shouldDownloadAttachmentOnDisplay; +- (BOOL)hasBeenDownloaded; +- (BOOL)isPlaceholder; +- (unsigned long long)approximateSize; +- (void)setMimePart:(id)arg1; +- (id)mimePart; +- (id)fileWrapperForcingDownloadEvenIfExternalBody:(BOOL)arg1; +- (id)fileWrapperForcingDownload; +- (void)_forceDownloadOfFileWrapperInBackground:(id)arg1; +- (id)initWithMimePart:(id)arg1; +- (id)initWithFileWrapper:(id)arg1; +- (id)initWithMimePart:(id)arg1 andFileWrapper:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMonitoredInvocation.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMonitoredInvocation.h new file mode 100644 index 00000000..81450ad2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMonitoredInvocation.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSInvocation.h" + +@class MCActivityMonitor; + +@interface MCMonitoredInvocation : NSInvocation +{ + MCActivityMonitor *_monitor; +} + ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 taskName:(id)arg6 priority:(unsigned char)arg7 canBeCancelled:(BOOL)arg8; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 taskName:(id)arg5 priority:(unsigned char)arg6 canBeCancelled:(BOOL)arg7; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object:(id)arg3 taskName:(id)arg4 priority:(unsigned char)arg5 canBeCancelled:(BOOL)arg6; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 taskName:(id)arg3 priority:(unsigned char)arg4 canBeCancelled:(BOOL)arg5; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 object4:(id)arg6; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object:(id)arg3; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2; +- (unsigned char)priority; +- (void)invokeWithTarget:(id)arg1; +- (void)invoke; +- (void)setShouldPromptUserOnTermination; +- (void)setMonitor:(id)arg1; +- (id)monitor; +- (void)setTarget:(id)arg1; +- (id)target; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMonitoredOperation.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMonitoredOperation.h new file mode 100644 index 00000000..a3032d01 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMonitoredOperation.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOperation.h" + +@class MCActivityMonitor, NSString; + +@interface MCMonitoredOperation : NSOperation +{ + MCActivityMonitor *_parentMonitor; + MCActivityMonitor *_monitor; +} + +@property(retain, nonatomic) MCActivityMonitor *monitor; // @synthesize monitor=_monitor; +@property(retain, nonatomic) MCActivityMonitor *parentMonitor; // @synthesize parentMonitor=_parentMonitor; +- (void)executeOperation; +@property(readonly) NSString *activityString; +- (void)main; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMutableByteSet.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMutableByteSet.h new file mode 100644 index 00000000..37c0e092 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMutableByteSet.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCMutableByteSet : MCByteSet +{ +} + +- (void)invert; +- (void)removeBytesInRange:(struct _NSRange)arg1; +- (void)addBytesInRange:(struct _NSRange)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCMutableMessageHeaders.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCMutableMessageHeaders.h new file mode 100644 index 00000000..6a6c2335 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCMutableMessageHeaders.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSMutableArray, NSMutableDictionary; + +@interface MCMutableMessageHeaders : MCMessageHeaders +{ + NSMutableDictionary *_headersAdded; + NSMutableArray *_headersRemoved; +} + +- (void)addFromSpaceIfMissing; +- (void)removeHeaderForKey:(id)arg1; +- (void)setAddressList:(id)arg1 forKey:(id)arg2; +- (void)setHeader:(id)arg1 forKey:(id)arg2; +- (void)_appendHeaderKey:(id)arg1 value:(id)arg2 toData:(id)arg3; +- (void)_appendAddedHeaderKey:(id)arg1 value:(id)arg2 toData:(id)arg3; +- (id)encodedHeadersIncludingFromSpace:(BOOL)arg1; +- (id)_firstAddressForKey:(id)arg1 sender:(id)arg2; +- (id)addressListForKey:(id)arg1; +- (id)firstHeaderForKey:(id)arg1; +- (id)_headersForKey:(id)arg1; +- (BOOL)hasHeaderForKey:(id)arg1; +- (id)allHeaderKeys; +- (id)description; +- (id)mutableCopyWithZone:(struct _NSZone *)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCNetworkController.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCNetworkController.h new file mode 100644 index 00000000..93f2d256 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCNetworkController.h @@ -0,0 +1,53 @@ +/* + * 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" + +@class NSMapTable, NSString, NSTimer; + +@interface MCNetworkController : NSObject +{ + struct __SCDynamicStore *_store; + struct __CFString *_dnsKey; + NSString *_domainName; + NSTimer *_notificationTimer; + NSMapTable *_reachabilityReferencesForWatchedAccounts; + BOOL _shouldLogNetworkEvents; + BOOL _shouldLogAllNetworkEvents; +} + ++ (id)encodeAddressForIDNA:(id)arg1 encodingHint:(unsigned long long)arg2; ++ (id)applyIDNAToHostname:(id)arg1 encode:(BOOL)arg2; ++ (BOOL)domain:(id)arg1 isSubdomainOfDomain:(id)arg2; ++ (BOOL)hostnameIsFullyQualified:(id)arg1; ++ (id)baseDomainsForDomains:(id)arg1; ++ (id)subnetForIPAddress:(id)arg1; ++ (id)getHostUUIDString; ++ (id)filteredDomainNamesFromHost:(id)arg1; ++ (id)filteredIPAddressesFromHost:(id)arg1; ++ (long long)networkStatus; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) BOOL shouldLogAllNetworkEvents; // @synthesize shouldLogAllNetworkEvents=_shouldLogAllNetworkEvents; +- (void)stopWatchingReachabilityForAllAccounts; +- (void)stopWatchingReachabilityForAccount:(id)arg1; +- (void)startWatchingReachabilityForAccount:(id)arg1; +- (struct __SCNetworkReachability *)_newNetworkReachabilityReferenceForHostname:(id)arg1; +- (BOOL)isHostReachable:(id)arg1 needToEstablishInternetConnection:(char *)arg2; +- (id)_watchedAccounts; +- (void)_postNetworkChangeNotification:(id)arg1; +- (id)domainName; +- (BOOL)_shouldLogForHostname:(id)arg1 port:(long long)arg2; +@property BOOL shouldLogNetworkEvents; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCNtlmAuthScheme.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCNtlmAuthScheme.h new file mode 100644 index 00000000..32dcc19d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCNtlmAuthScheme.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCNtlmAuthScheme : MCAuthScheme +{ +} + ++ (id)ntlmAuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (long long)securityLevel; +- (BOOL)hasEncryption; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (BOOL)requiresDomain; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCOutgoingMessage.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCOutgoingMessage.h new file mode 100644 index 00000000..745ebabc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCOutgoingMessage.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MCMutableMessageHeaders, NSData, NSString, _MCOutgoingMessageBody; + +@interface MCOutgoingMessage : MCMessage +{ + NSString *_remoteID; + NSData *_rawData; + _MCOutgoingMessageBody *_messageBody; + unsigned long long _localAttachmentsSize; + MCMutableMessageHeaders *_messageHeaders; + NSString *_existingRemoteID; +} + +@property(retain, nonatomic) NSString *existingRemoteID; // @synthesize existingRemoteID=_existingRemoteID; +@property(retain, nonatomic) MCMutableMessageHeaders *mutableHeaders; // @synthesize mutableHeaders=_messageHeaders; +- (void)setRemoteID:(id)arg1; +- (id)remoteID; +- (void)setLocalAttachmentsSize:(unsigned long long)arg1; +- (void)_setRawData:(id)arg1; +- (unsigned long long)messageSize; +- (id)headersIfAvailable; +- (id)headers; +- (id)messageDataIncludingFromSpace:(BOOL)arg1; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (id)messageBodyIfAvailable; +- (void)_setMessageBody:(id)arg1; +- (id)messageBody; +- (id)dataSource; +- (id)bodyDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)bodyData; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCParsedMessage.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCParsedMessage.h new file mode 100644 index 00000000..8f4208f6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCParsedMessage.h @@ -0,0 +1,42 @@ +/* + * 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 "NSXMLParserDelegate.h" + +@class NSArray, NSDictionary, NSString, NSURL; + +@interface MCParsedMessage : NSObject +{ + NSString *_html; + BOOL _isPlainText; + NSString *_mimeType; + NSURL *_baseURL; + NSDictionary *_attachmentsByURL; + NSArray *_stationeryBackgroundImageURLs; +} + ++ (id)parsedMessageWithWebArchive:(id)arg1 archiveIsMailInternal:(BOOL)arg2; +@property BOOL isPlainText; // @synthesize isPlainText=_isPlainText; +@property(retain) NSArray *stationeryBackgroundImageURLs; // @synthesize stationeryBackgroundImageURLs=_stationeryBackgroundImageURLs; +@property(retain) NSDictionary *attachmentsByURL; // @synthesize attachmentsByURL=_attachmentsByURL; +@property(retain) NSURL *baseURL; // @synthesize baseURL=_baseURL; +@property(retain) NSString *mimeType; // @synthesize mimeType=_mimeType; +- (void)setBaseURLFromHtml; +- (id)attributedString; +- (void)_addWebArchiveDataToArray:(id)arg1; +@property(retain) NSString *html; +- (id)description; +- (void)addAttachment:(id)arg1 forURL:(id)arg2; +- (void)dealloc; +- (void)_mcParsedMessageCommonInit; +- (id)init; +- (id)initWithWebArchive:(id)arg1 archiveIsMailInternal:(BOOL)arg2; +- (id)initWithWebArchive:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCPersistentIDFetching-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCPersistentIDFetching-Protocol.h new file mode 100644 index 00000000..4ce97a27 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCPersistentIDFetching-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MCPersistentIDFetching ++ (id)fetchedMessageWithRowID:(long long)arg1; +- (long long)libraryID; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCPlaceholderArchiveFileWrapper.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCPlaceholderArchiveFileWrapper.h new file mode 100644 index 00000000..cc5631bb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCPlaceholderArchiveFileWrapper.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCPlaceholderArchiveFileWrapper : MCArchiveFileWrapper +{ +} + +- (BOOL)isPlaceholder; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCPlaceholderFileWrapper.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCPlaceholderFileWrapper.h new file mode 100644 index 00000000..7db375f0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCPlaceholderFileWrapper.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface MCPlaceholderFileWrapper : NSFileWrapper +{ +} + +- (BOOL)isRemotelyAccessed; +- (BOOL)isPlaceholder; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCPlainAuthScheme.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCPlainAuthScheme.h new file mode 100644 index 00000000..cffcfd08 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCPlainAuthScheme.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCPlainAuthScheme : MCAuthScheme +{ +} + ++ (id)plainAuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)saslClientForAccount:(id)arg1 connection:(id)arg2; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCPortNumberFormatter.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCPortNumberFormatter.h new file mode 100644 index 00000000..796360a4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCPortNumberFormatter.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSNumberFormatter.h" + +@interface MCPortNumberFormatter : NSNumberFormatter +{ +} + +- (id)stringForObjectValue:(id)arg1; +- (BOOL)getObjectValue:(out id *)arg1 forString:(id)arg2 errorDescription:(out id *)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCPriorityInvocation.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCPriorityInvocation.h new file mode 100644 index 00000000..e2f6b892 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCPriorityInvocation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSInvocation.h" + +@interface MCPriorityInvocation : NSInvocation +{ + unsigned char _priority; +} + ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 object4:(id)arg6 priority:(unsigned char)arg7; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 priority:(unsigned char)arg6; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 priority:(unsigned char)arg5; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object:(id)arg3 priority:(unsigned char)arg4; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 priority:(unsigned char)arg3; +@property unsigned char priority; // @synthesize priority=_priority; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCQuotaUsage.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCQuotaUsage.h new file mode 100644 index 00000000..00307c59 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCQuotaUsage.h @@ -0,0 +1,24 @@ +/* + * 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" + +@interface MCQuotaUsage : NSObject +{ + CDStruct_d3e19d9e _current; + CDStruct_d3e19d9e _maximum; +} + +@property(nonatomic) CDStruct_d3e19d9e maximum; // @synthesize maximum=_maximum; +@property(nonatomic) CDStruct_d3e19d9e current; // @synthesize current=_current; +- (id)description; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +- (void)incrementCurrentBy:(CDStruct_d3e19d9e)arg1; +- (void)decrementCurrentBy:(CDStruct_d3e19d9e)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCRemoteMessage.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCRemoteMessage.h new file mode 100644 index 00000000..3a15bbeb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCRemoteMessage.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCRemoteMessage : MCMessage +{ + CDStruct_07ba05d6 _remoteFlags; + unsigned long long _size; +} + +- (void)setMessageSize:(unsigned long long)arg1; +- (unsigned long long)messageSize; +@property(readonly) CDStruct_07ba05d6 remoteFlags; +@property(nonatomic) BOOL partsHaveBeenCached; +@property(nonatomic) BOOL isPartial; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCRemotePlaceholderFileWrapper.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCRemotePlaceholderFileWrapper.h new file mode 100644 index 00000000..894e51e1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCRemotePlaceholderFileWrapper.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSURL; + +@interface MCRemotePlaceholderFileWrapper : MCPlaceholderFileWrapper +{ + NSURL *_url; +} + +- (unsigned long long)approximateSize; +- (id)URL; +- (id)symbolicLinkDestination; +- (id)symbolicLinkDestinationURL; +- (BOOL)isRemotelyAccessed; +- (id)initWithSerializedRepresentation:(id)arg1; +- (id)initSymbolicLinkWithDestinationURL:(id)arg1; +- (id)initRegularFileWithContents:(id)arg1; +- (id)initDirectoryWithFileWrappers:(id)arg1; +- (id)initWithURL:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (id)initWithURL:(id)arg1; +- (id)remoteAccessMimeType; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCResultTaskOperation.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCResultTaskOperation.h new file mode 100644 index 00000000..3dfbc865 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCResultTaskOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCResultTaskOperation : MCTaskOperation +{ + id _result; +} + +@property(retain, nonatomic) id result; // @synthesize result=_result; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCSAXHTMLParsing.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCSAXHTMLParsing.h new file mode 100644 index 00000000..3130230c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCSAXHTMLParsing.h @@ -0,0 +1,32 @@ +/* + * 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" + +@class NSMutableDictionary, NSMutableString, NSString; + +@interface MCSAXHTMLParsing : NSObject +{ + NSMutableString *string; + NSMutableDictionary *attributes; + NSString *metaName; + NSString *metaHttpEquiv; + NSString *metaContent; + unsigned long long encoding; + unsigned int indexingLimit; + const char *titleStart; + unsigned int titleLength; + BOOL inHead; + BOOL inTitle; + BOOL inScript; + BOOL inStyle; +} + +- (void)dealloc; +- (id)initWithEncoding:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCSSLCertificateTrustPanelManager.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCSSLCertificateTrustPanelManager.h new file mode 100644 index 00000000..26624706 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCSSLCertificateTrustPanelManager.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface MCSSLCertificateTrustPanelManager : NSObject +{ +} + ++ (BOOL)showCertificateTrustPanelForError:(id)arg1 host:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCSafeBoolCache.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCSafeBoolCache.h new file mode 100644 index 00000000..cd9c2308 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCSafeBoolCache.h @@ -0,0 +1,24 @@ +/* + * 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" + +@class NSConditionLock, NSInvocation; + +@interface MCSafeBoolCache : NSObject +{ + NSConditionLock *_stateLock; + NSInvocation *_updateInvocation; +} + +- (void)invalidate; +@property BOOL value; +- (void)clearTarget; +- (void)dealloc; +- (id)initWithUpdateTarget:(id)arg1 selector:(SEL)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCSafeValueCache.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCSafeValueCache.h new file mode 100644 index 00000000..3bd4b576 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCSafeValueCache.h @@ -0,0 +1,25 @@ +/* + * 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" + +@interface MCSafeValueCache : NSObject +{ + id _value; + long long _state; + id _target; + SEL _selector; +} + +- (void)invalidate; +- (id)retainedValue; +@property(retain) id value; +- (void)clearTarget; +- (void)dealloc; +- (id)initWithUpdateTarget:(id)arg1 selector:(SEL)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCSaslClient.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCSaslClient.h new file mode 100644 index 00000000..aeebb03a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCSaslClient.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class NSString; + +@interface MCSaslClient : NSObject +{ + BOOL _justSentPlainTextPassword; + BOOL _excludeAuthorizationName; + unsigned int _encryptionBufferSize; + NSString *_mechanismName; + id _account; + long long _authenticationState; +} + ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)newSASLClientWithMechanismName:(id)arg1 account:(id)arg2 externalSecurityLayer:(unsigned int)arg3; ++ (void)initializeSASLClient; +@property(nonatomic) BOOL excludeAuthorizationName; // @synthesize excludeAuthorizationName=_excludeAuthorizationName; +@property(nonatomic) unsigned int encryptionBufferSize; // @synthesize encryptionBufferSize=_encryptionBufferSize; +@property(nonatomic) BOOL justSentPlainTextPassword; // @synthesize justSentPlainTextPassword=_justSentPlainTextPassword; +@property(nonatomic) long long authenticationState; // @synthesize authenticationState=_authenticationState; +@property(nonatomic) id account; // @synthesize account=_account; +@property(copy, nonatomic) NSString *mechanismName; // @synthesize mechanismName=_mechanismName; +- (BOOL)resetWithExternalSecurityLayer:(unsigned int)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCSharedPreferencesController.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCSharedPreferencesController.h new file mode 100644 index 00000000..ac79bed1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCSharedPreferencesController.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class NSArray, NSString, NSUserDefaults; + +@interface MCSharedPreferencesController : NSObject +{ + NSUserDefaults *_sharedMailUserDefaults; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain, nonatomic) NSUserDefaults *sharedMailUserDefaults; // @synthesize sharedMailUserDefaults=_sharedMailUserDefaults; +- (void)_preferencesChangedExternally:(id)arg1; +- (void)_postPreferencesDidChangeNotifications; +@property BOOL shouldCheckIntranetDomains; +@property(retain) NSArray *intranetDomains; +@property long long addressDisplayMode; +@property BOOL shouldExpandGroups; +@property(retain) NSString *defaultFromAddress; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCSocket.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCSocket.h new file mode 100644 index 00000000..6a061a8d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCSocket.h @@ -0,0 +1,75 @@ +/* + * 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 "NSStreamDelegate.h" + +@class NSArray, NSInputStream, NSOutputStream, NSPort, NSString; + +@interface MCSocket : NSObject +{ + NSArray *_clientCertificates; + BOOL _useSSL; + BOOL _logsErrors; + BOOL _logsStreamEvents; + BOOL _scheduledForBytesToArrive; + unsigned long long _identifier; + long long _activityType; + double _connectTimeout; + double _readWriteTimeout; + NSArray *_trustedCertificates; + NSPort *_wakeupPort; + NSInputStream *_inputStream; + NSOutputStream *_outputStream; + NSString *_hostname; + id _bytesAvailableHandler; +} + +@property BOOL scheduledForBytesToArrive; // @synthesize scheduledForBytesToArrive=_scheduledForBytesToArrive; +@property(copy) id bytesAvailableHandler; // @synthesize bytesAvailableHandler=_bytesAvailableHandler; +@property(copy) NSString *hostname; // @synthesize hostname=_hostname; +@property(retain) NSOutputStream *outputStream; // @synthesize outputStream=_outputStream; +@property(retain) NSInputStream *inputStream; // @synthesize inputStream=_inputStream; +@property(readonly, nonatomic) NSPort *wakeupPort; // @synthesize wakeupPort=_wakeupPort; +@property(copy) NSArray *trustedCertificates; // @synthesize trustedCertificates=_trustedCertificates; +@property(nonatomic) BOOL logsStreamEvents; // @synthesize logsStreamEvents=_logsStreamEvents; +@property(nonatomic) BOOL logsErrors; // @synthesize logsErrors=_logsErrors; +@property(nonatomic) double readWriteTimeout; // @synthesize readWriteTimeout=_readWriteTimeout; +@property(nonatomic) double connectTimeout; // @synthesize connectTimeout=_connectTimeout; +@property long long activityType; // @synthesize activityType=_activityType; +@property(readonly) unsigned long long identifier; // @synthesize identifier=_identifier; +- (void)stream:(id)arg1 handleEvent:(unsigned long long)arg2; +- (void)_cancelLookupForHost:(struct __CFHost *)arg1 infoType:(int)arg2; +- (id)sourceHostname; +- (id)sourceIPAddress; +- (long long)remotePortNumber; +- (id)remoteHostname; +- (BOOL)isValid; +- (BOOL)isWritable; +- (BOOL)isReadable; +- (unsigned int)cipherKeyLength; +- (struct __SecTrust *)serverTrust; +- (id)securityLevel; +- (void)_unscheduleInputStreamFromMainRunLoopIfNecessary; +- (void)_scheduleInputStreamInMainRunLoopIfNecessary; +- (void)unregisterForBytesToArrive; +- (void)registerForBytesToArriveWithHandler:(id)arg1; +- (void)close; +- (void)_handleReadWriteErrorOnStream:(id)arg1 timedOut:(BOOL)arg2 logDetails:(id)arg3 error:(id *)arg4; +- (long long)writeBytes:(const void *)arg1 maxLength:(unsigned long long)arg2 error:(id *)arg3; +- (long long)readBytes:(void *)arg1 maxLength:(unsigned long long)arg2 error:(id *)arg3; +- (id)_waitForSecurityLayerNegotiationStreamsAreScheduled:(BOOL)arg1; +- (BOOL)_setSSLStreamProperties:(BOOL)arg1; +- (BOOL)_setupStreamsWithHostname:(id)arg1 port:(long long)arg2 needToEstablishInternetConnection:(char *)arg3 useSSL:(char *)arg4 isBackground:(BOOL)arg5 error:(id *)arg6; +- (BOOL)connectToHost:(id)arg1 withPort:(long long)arg2 isBackground:(BOOL)arg3; +- (void)setClientIdentity:(struct OpaqueSecIdentityRef *)arg1; +- (BOOL)setUsesSSL:(BOOL)arg1; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCStringRenderContext.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCStringRenderContext.h new file mode 100644 index 00000000..0d1c437b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCStringRenderContext.h @@ -0,0 +1,37 @@ +/* + * 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" + +@class MCJunkRecorder, NSMutableString, NSSet; + +@interface MCStringRenderContext : NSObject +{ + BOOL _updateBodyFlags; + MCJunkRecorder *_junkRecorder; + long long _imageCount; + long long _characterCount; + NSSet *_URLs; + NSSet *_imageURLs; + long long _mode; + NSMutableString *_buffer; +} + +@property(retain) NSMutableString *buffer; // @synthesize buffer=_buffer; +@property BOOL updateBodyFlags; // @synthesize updateBodyFlags=_updateBodyFlags; +@property long long mode; // @synthesize mode=_mode; +@property(retain) NSSet *imageURLs; // @synthesize imageURLs=_imageURLs; +@property(retain) NSSet *URLs; // @synthesize URLs=_URLs; +@property long long characterCount; // @synthesize characterCount=_characterCount; +@property long long imageCount; // @synthesize imageCount=_imageCount; +@property(retain) MCJunkRecorder *junkRecorder; // @synthesize junkRecorder=_junkRecorder; +- (id)renderString; +- (void)dealloc; +- (id)init; +- (id)initForMode:(long long)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCSubdata.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCSubdata.h new file mode 100644 index 00000000..dce00fd9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCSubdata.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSData.h" + +@interface MCSubdata : NSData +{ + struct _NSRange _subrange; + NSData *_parentData; +} + +- (const void *)bytes; +- (unsigned long long)length; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (id)initWithCoder:(id)arg1; +- (id)initWithContentsOfMappedFile:(id)arg1; +- (id)initWithData:(id)arg1; +- (id)initWithContentsOfURL:(id)arg1; +- (id)initWithContentsOfFile:(id)arg1; +- (id)initWithContentsOfURL:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (id)initWithContentsOfFile:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (id)initWithBytesNoCopy:(void *)arg1 length:(unsigned long long)arg2 freeWhenDone:(BOOL)arg3; +- (id)initWithBytesNoCopy:(void *)arg1 length:(unsigned long long)arg2; +- (id)initWithBytes:(const void *)arg1 length:(unsigned long long)arg2; +- (id)init; +- (id)initWithParent:(id)arg1 range:(struct _NSRange)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCTaskOperation.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCTaskOperation.h new file mode 100644 index 00000000..edb3037a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCTaskOperation.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSBlockOperation.h" + +@class MCActivityMonitor; + +@interface MCTaskOperation : NSBlockOperation +{ + MCActivityMonitor *_parentMonitor; + MCActivityMonitor *_monitor; +} + ++ (void)setTaskDescription:(const char *)arg1; +@property(retain) MCActivityMonitor *monitor; // @synthesize monitor=_monitor; +@property(retain) MCActivityMonitor *parentMonitor; // @synthesize parentMonitor=_parentMonitor; +- (void)cancel; +- (void)dealloc; +- (void)main; +- (id)setTaskName:(id)arg1 priority:(unsigned char)arg2 canCancel:(BOOL)arg3; +- (void)setParentMonitor:(id)arg1 taskName:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCThrowingInvocationOperation.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCThrowingInvocationOperation.h new file mode 100644 index 00000000..4c8fa938 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCThrowingInvocationOperation.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSInvocationOperation.h" + +@interface MCThrowingInvocationOperation : NSInvocationOperation +{ +} + +- (void)main; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCURLMatch.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCURLMatch.h new file mode 100644 index 00000000..d3d1458f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCURLMatch.h @@ -0,0 +1,25 @@ +/* + * 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" + +@class NSString; + +@interface MCURLMatch : NSObject +{ + struct _NSRange _range; + NSString *_url; +} + +@property(copy) NSString *url; // @synthesize url=_url; +@property struct _NSRange range; // @synthesize range=_range; +- (id)description; +- (void)dealloc; +- (id)init; +- (id)initWithRange:(struct _NSRange)arg1 url:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCURLifier.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCURLifier.h new file mode 100644 index 00000000..b6b84a24 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCURLifier.h @@ -0,0 +1,17 @@ +/* + * 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" + +@interface MCURLifier : NSObject +{ +} + ++ (id)urlMatchesForString:(id)arg1; ++ (id)urlMatchesForStringsInDictionary:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCWebAuthenticationManager.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCWebAuthenticationManager.h new file mode 100644 index 00000000..a8cb75d9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCWebAuthenticationManager.h @@ -0,0 +1,29 @@ +/* + * 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" + +@class NSMutableArray; + +@interface MCWebAuthenticationManager : NSObject +{ + NSMutableArray *_requests; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)_displayWebAuthentication; +- (void)queueDisplayWebAuthenticationURL:(id)arg1 onWindow:(id)arg2 completionHandler:(void)arg3; +- (id)description; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MCWorkerThread.h b/MailHeaders/Mavericks_10.9.5/MailCore/MCWorkerThread.h new file mode 100644 index 00000000..0d736a34 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MCWorkerThread.h @@ -0,0 +1,18 @@ +/* + * 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" + +@interface MCWorkerThread : NSObject +{ +} + ++ (void)runInvocationOnQueueSynchronously:(id)arg1; ++ (void)addInvocationToQueue:(id)arg1; ++ (void)initialize; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/MailCoreFramework.h b/MailHeaders/Mavericks_10.9.5/MailCore/MailCoreFramework.h new file mode 100644 index 00000000..76e391fc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/MailCoreFramework.h @@ -0,0 +1,22 @@ +/* + * 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" + +@interface MailCoreFramework : NSObject +{ +} + ++ (int)uniqueIDForMessageURL; ++ (id)logMessages; ++ (void)setUserAgent:(id)arg1; ++ (id)userAgent; ++ (void)setRunningInSpotlightImporter:(BOOL)arg1; ++ (BOOL)runningInSpotlightImporter; ++ (id)bundle; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSAlertDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSAlertDelegate-Protocol.h new file mode 100644 index 00000000..d6c0b2e1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSAlertDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSAlertDelegate + +@optional +- (BOOL)alertShowHelp:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSApplication-MCAssert.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSApplication-MCAssert.h new file mode 100644 index 00000000..a46603f5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSApplication-MCAssert.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSApplication.h" + +@interface NSApplication (MCAssert) ++ (BOOL)isMail; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-DateComparisonForRecents.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-DateComparisonForRecents.h new file mode 100644 index 00000000..268694d7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-DateComparisonForRecents.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (DateComparisonForRecents) +- (id)thirdDate; +- (unsigned long long)indexOfThirdDate; +- (unsigned long long)indexOfOldestDate; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-DeepCopying.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-DeepCopying.h new file mode 100644 index 00000000..600a86ef --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-DeepCopying.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (DeepCopying) +- (id)twiceMutableCopy; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-DerivedArray.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-DerivedArray.h new file mode 100644 index 00000000..140345ed --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-DerivedArray.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (DerivedArray) +- (id)indicesOfStringsWithPrefix:(id)arg1; +- (id)arrayByAddingAbsentObjectsFromArray:(id)arg1 accordingToEquals:(BOOL)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-MessagesFromMixedStoresConvenience.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-MessagesFromMixedStoresConvenience.h new file mode 100644 index 00000000..0ca3b56e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-MessagesFromMixedStoresConvenience.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArray.h" + +@class NSDictionary; + +@interface NSArray (MessagesFromMixedStoresConvenience) +@property(readonly) NSDictionary *dictionaryWithMessagesSortedByMailbox; +@property(readonly) NSDictionary *dictionaryWithMessagesSortedByStore; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-removeSelf.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-removeSelf.h new file mode 100644 index 00000000..338e7f55 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSArray-removeSelf.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (removeSelf) +- (id)attributedComponentsJoinedByString:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-FontAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-FontAdditions.h new file mode 100644 index 00000000..2e4d731b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-FontAdditions.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (FontAdditions) ++ (double)headerFontSize; ++ (id)messageNumberAttributes; ++ (id)selectionBlueHeaderAttributes; ++ (id)lightGrayHeaderAttributes; ++ (id)fixedPitchAttributes; ++ (id)headerAttributes; ++ (id)linkHeaderAttributes; ++ (id)blueHeaderAttributes; ++ (id)mediumWhiteHeaderAttributes; ++ (id)bigBoldWhiteHeaderAttributes; ++ (id)boldGrayHeaderAttributes; ++ (id)boldHeaderAttributes; ++ (void)resetMimeHeaderAttributes; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-MCFormatFlowedSupport.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-MCFormatFlowedSupport.h new file mode 100644 index 00000000..d8ddf2a5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-MCFormatFlowedSupport.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MCFormatFlowedSupport) +- (void)getQuotedString:(id *)arg1 encoding:(unsigned long long)arg2; +- (void)getFormatFlowedString:(id *)arg1 insertedTrailingSpaces:(char *)arg2 encoding:(unsigned long long)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-MCMimeEnrichedWriter.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-MCMimeEnrichedWriter.h new file mode 100644 index 00000000..747b4fa9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-MCMimeEnrichedWriter.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MCMimeEnrichedWriter) +- (id)enrichedString; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-MailCoreAdditions.h new file mode 100644 index 00000000..d775125a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-MailCoreAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MailCoreAdditions) +- (BOOL)containsRichText; +- (BOOL)containsRichTextInRange:(struct _NSRange)arg1; +- (struct _NSRange)rangeOfAttachment:(id)arg1; +- (id)attachmentsInRange:(struct _NSRange)arg1; +- (id)attachments; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-MessagePasteboardSupport.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-MessagePasteboardSupport.h new file mode 100644 index 00000000..190a288d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSAttributedString-MessagePasteboardSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MessagePasteboardSupport) +- (id)messageDataForRange:(struct _NSRange)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSCharacterSet-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSCharacterSet-MailCoreAdditions.h new file mode 100644 index 00000000..e2b65fa8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSCharacterSet-MailCoreAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSCharacterSet.h" + +@interface NSCharacterSet (MailCoreAdditions) ++ (id)replacementCharacterSet; ++ (id)unsafeDomainNameCharacterSet; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSColor-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSColor-MailCoreAdditions.h new file mode 100644 index 00000000..0f0e5c90 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSColor-MailCoreAdditions.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSColor.h" + +@interface NSColor (MailCoreAdditions) ++ (id)scriptingRGBColorWithDescriptor:(id)arg1; ++ (id)inactiveAlternateBackgroundColor; ++ (id)activeAlternateBackgroundColor; ++ (id)aquaBlueColor; ++ (id)subjectAdditionColor; ++ (id)splitterColor; ++ (id)activeLinkColor; ++ (id)visitedLinkColor; ++ (id)linkColor; ++ (id)junkMailColor; ++ (id)threadQuasiSelectedColor; ++ (id)lighterThreadChildBackgroundColor; ++ (id)threadChildBackgroundColor; ++ (id)threadBackgroundColor; ++ (void)clearThreadBackgroundColors; ++ (id)lighterThreadBackgroundColor; ++ (void)setThreadBackgroundColor:(id)arg1; ++ (id)colorWithHexString:(id)arg1; ++ (id)colorWithIntValue:(int)arg1; ++ (id)newSwatchForColor:(id)arg1; ++ (void)configureColorMenu:(id)arg1; ++ (id)colorForEnrichedValue:(id)arg1; ++ (id)colorForIdentifier:(id)arg1; ++ (id)identifierForColor:(id)arg1; ++ (int)intWithIdentifierColor:(id)arg1; ++ (id)colorPlist; ++ (id)colorForHighlightColorValue:(unsigned int)arg1; ++ (unsigned int)highlightColorValueForColor:(id)arg1; ++ (id)allHighlightColors; ++ (id)colorForQuoteLevel:(long long)arg1; ++ (void)setQuotingColorList:(id)arg1; ++ (id)quotingColorList; ++ (id)defaultQuotingColors; ++ (id)allQuotingColors; +- (id)cssColorString; +- (id)scriptingRGBColorDescriptor; +- (id)hexString; +- (int)intValue; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSConditionLock-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSConditionLock-MailCoreAdditions.h new file mode 100644 index 00000000..fb07167d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSConditionLock-MailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSConditionLock.h" + +@interface NSConditionLock (MailCoreAdditions) +- (BOOL)lockIfCondition:(long long)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSCopying-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSCopying-Protocol.h new file mode 100644 index 00000000..3275f717 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCopying +- (id)copyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSData-HFSDataConversion.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSData-HFSDataConversion.h new file mode 100644 index 00000000..0b449118 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSData-HFSDataConversion.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSData.h" + +@interface NSData (HFSDataConversion) +- (id)wrapperForBinHex40DataWithFileEncodingHint:(unsigned long long)arg1; +- (id)wrapperForAppleFileDataWithFileEncodingHint:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSData-MCMimeDataEncoding.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSData-MCMimeDataEncoding.h new file mode 100644 index 00000000..af69fd22 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSData-MCMimeDataEncoding.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSData.h" + +@interface NSData (MCMimeDataEncoding) ++ (unsigned long long)quotedPrintableLengthOfHeaderBytes:(const char *)arg1 length:(unsigned long long)arg2; +- (id)encodeBase64HeaderData; +- (id)encodeBase64AllowCancel:(BOOL)arg1; +- (id)encodeBase64WithoutLineBreaks; +- (BOOL)isValidBase64Data; +- (id)decodeBase64; +- (id)encodeQuotedPrintableForText:(BOOL)arg1 allowCancel:(BOOL)arg2; +- (id)decodeQuotedPrintableForText:(BOOL)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSData-MCUUEnDecode.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSData-MCUUEnDecode.h new file mode 100644 index 00000000..a45f4e1e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSData-MCUUEnDecode.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSData.h" + +@interface NSData (MCUUEnDecode) +- (id)uuencodedDataWithFile:(id)arg1 mode:(unsigned int)arg2; +- (id)uudecodedDataIntoFile:(id *)arg1 mode:(unsigned int *)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSData-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSData-MailCoreAdditions.h new file mode 100644 index 00000000..aae8da52 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSData-MailCoreAdditions.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSData.h" + +@interface NSData (MailCoreAdditions) +- (id)hexString; +- (id)MD5Digest; +- (struct _NSRange)rangeOfCString:(const char *)arg1 options:(unsigned long long)arg2 range:(struct _NSRange)arg3; +- (struct _NSRange)rangeOfCString:(const char *)arg1 options:(unsigned long long)arg2; +- (struct _NSRange)rangeOfCString:(const char *)arg1; +- (struct _NSRange)rangeOfByteFromSet:(id)arg1; +- (struct _NSRange)rangeOfRFC822HeaderData; +- (id)quotedFromSpaceDataForMessage; +- (id)unquotedFromSpaceDataWithRange:(struct _NSRange)arg1; +- (id)initWithDataConvertingLineEndingsFromNetworkToUnix:(id)arg1; +- (id)initWithDataConvertingLineEndingsFromUnixToNetwork:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSDate-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSDate-MailCoreAdditions.h new file mode 100644 index 00000000..cc9c09b9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSDate-MailCoreAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSDate.h" + +@interface NSDate (MailCoreAdditions) ++ (id)startOfDayWithDaysSinceToday:(long long)arg1; ++ (id)_dateStringByStrippingCommentsFromString:(id)arg1; ++ (id)newDateInCommonFormatsWithString:(id)arg1; +- (id)replyPrefixForSender:(id)arg1 withSpacer:(BOOL)arg2; +- (id)descriptionInBSDMailboxFormat; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSError-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSError-MailCoreAdditions.h new file mode 100644 index 00000000..b31177f3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSError-MailCoreAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSError.h" + +@interface NSError (MailCoreAdditions) +- (id)shortDescription; +- (id)moreInfo; +- (BOOL)isSSLCertificateError; +- (BOOL)isAuthenticationError; +- (BOOL)shouldBeReportedToUser; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSFileHandle-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileHandle-MailCoreAdditions.h new file mode 100644 index 00000000..6ddc5e80 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileHandle-MailCoreAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileHandle.h" + +@interface NSFileHandle (MailCoreAdditions) ++ (id)fileHandleForTempFile:(id *)arg1 atPath:(id)arg2 mode:(unsigned short)arg3; ++ (id)fileHandleForUniqueFile:(id *)arg1 atPath:(id)arg2 mode:(unsigned short)arg3; ++ (id)fileHandleForUniqueFile:(id *)arg1 atPath:(id)arg2 mode:(unsigned short)arg3 extension:(id)arg4; ++ (id)createFileAtPath:(id)arg1 flags:(int)arg2 mode:(unsigned short)arg3; +- (BOOL)writeBytes:(const char *)arg1 length:(unsigned long long)arg2; +- (BOOL)writeLossyString:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSFileManager-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileManager-MailCoreAdditions.h new file mode 100644 index 00000000..0b88ab9e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileManager-MailCoreAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileManager.h" + +@interface NSFileManager (MailCoreAdditions) +- (id)fileModificationDateAtPath:(id)arg1 traverseLink:(BOOL)arg2; +- (long long)fileSizeAtPath:(id)arg1 traverseLink:(BOOL)arg2; +- (id)URLForNonContainerizedHomeDirectory; +- (id)createUniqueDirectoryAtPath:(id)arg1 withIntermediateDirectories:(BOOL)arg2 attributes:(id)arg3 error:(id *)arg4; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-ArchivedData.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-ArchivedData.h new file mode 100644 index 00000000..374010e0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-ArchivedData.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (ArchivedData) +- (id)archivedData; +- (id)archivedDataWithPartNumber:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-HFSDataConversion.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-HFSDataConversion.h new file mode 100644 index 00000000..c900e3c9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-HFSDataConversion.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (HFSDataConversion) +- (id)appleDoubleDataWithFilename:(const char *)arg1 length:(unsigned long long)arg2; +- (id)appleSingleDataWithFilename:(const char *)arg1 length:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-MailCoreAdditions.h new file mode 100644 index 00000000..8f3b9e7a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-MailCoreAdditions.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@class NSArray, NSData, NSDictionary, NSNumber, NSString; + +@interface NSFileWrapper (MailCoreAdditions) +- (void)addGatekeeperQuarantineToPath:(id)arg1; +- (id)stringForIndexing; +- (unsigned long long)approximateSize; +- (BOOL)isALargeAttachment; +- (BOOL)isPlaceholder; +- (id)tmpFullPath; +- (id)preferredFilenameWithoutHiddenExtension; +- (void)_isImageFile:(char *)arg1 isPDF:(char *)arg2 bestMimeType:(id *)arg3; +- (void)isImageFile:(char *)arg1 isPDF:(char *)arg2; +- (BOOL)isImageFile; +@property(readonly) NSString *bestMimeType; +- (BOOL)isRemotelyAccessed; +- (unsigned long long)imageBytes; +- (struct CGSize)imageSize; +- (void)setImageSize:(struct CGSize)arg1 imageBytes:(unsigned long long)arg2; +@property(retain) NSString *messageID; +@property(retain) NSArray *whereFroms; +@property(retain) NSDictionary *quarantineProperties; +@property(retain) NSString *mimeType; +@property(retain) NSString *mailSpecialHandlingType; +@property(retain) NSString *contentID; +@property(retain) NSNumber *filePermissions; +@property BOOL shouldHideExtension; +@property unsigned short finderFlags; +@property unsigned int creator; +@property unsigned int type; +@property(retain) NSData *resourceForkData; +- (void)removeEmptyAttachment; +- (id)emptyAttachmentPath; +- (BOOL)emptyAttachmentExists; +- (BOOL)createEmptyAttachmentAtPath:(id)arg1; +- (BOOL)_writeFinderInfoToPath:(id)arg1 includeDirectoryContents:(BOOL)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-PersistenceWithoutLosingMetadata.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-PersistenceWithoutLosingMetadata.h new file mode 100644 index 00000000..02f816d8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-PersistenceWithoutLosingMetadata.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (PersistenceWithoutLosingMetadata) +- (id)initWithDictionaryRepresentation:(id)arg1; +- (id)dictionaryRepresentation; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-iCalInvitationSupport.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-iCalInvitationSupport.h new file mode 100644 index 00000000..0e62ad8b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSFileWrapper-iCalInvitationSupport.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (iCalInvitationSupport) +- (void)setIsCalendarInvitation:(BOOL)arg1; +- (BOOL)isCalendarInvitation; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSImage-CompositeImageAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSImage-CompositeImageAdditions.h new file mode 100644 index 00000000..622e8362 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSImage-CompositeImageAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImage.h" + +@interface NSImage (CompositeImageAdditions) ++ (id)compositeImageWithImageDictionaries:(id)arg1 size:(struct CGSize)arg2; ++ (id)drawingDictionaryWithBlock:(id)arg1; +- (id)tintedImageWithColor:(id)arg1 size:(struct CGSize)arg2; +- (id)tintedImageWithColor:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSImage-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSImage-MailCoreAdditions.h new file mode 100644 index 00000000..ab003886 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSImage-MailCoreAdditions.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImage.h" + +@interface NSImage (MailCoreAdditions) ++ (id)rotateImage:(id)arg1 byDegrees:(double)arg2; ++ (id)imageDataForType:(id *)arg1 fromPasteboard:(id)arg2; ++ (id)imagePasteboardTypesWithPreferenceToPNG; +- (double)pixelsHigh; +- (double)pixelsWide; +- (void)drawTransformedInRect:(struct CGRect)arg1 fromRect:(struct CGRect)arg2 operation:(unsigned long long)arg3 fraction:(double)arg4 flip:(BOOL)arg5; +@property(readonly) BOOL isAnimated; +@property(readonly) unsigned long long frameCount; +- (id)PNGData; +- (id)bitmapImageRep; +- (id)opaqueImage; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSInvocation-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSInvocation-MailCoreAdditions.h new file mode 100644 index 00000000..ac9714e1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSInvocation-MailCoreAdditions.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSInvocation.h" + +@interface NSInvocation (MailCoreAdditions) ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 object4:(id)arg6; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object:(id)arg3; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2; +@property(readonly) unsigned char priority; +- (void)invokeWithObject:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSLock-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSLock-MailCoreAdditions.h new file mode 100644 index 00000000..0e073421 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSLock-MailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSLock.h" + +@interface NSLock (MailCoreAdditions) +- (void)waitForLock; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSMachPortDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSMachPortDelegate-Protocol.h new file mode 100644 index 00000000..e32dc80a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSMachPortDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPortDelegate.h" + +@protocol NSMachPortDelegate + +@optional +- (void)handleMachMessage:(void *)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableArray-Convenience.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableArray-Convenience.h new file mode 100644 index 00000000..0ca8c71b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableArray-Convenience.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableArray.h" + +@interface NSMutableArray (Convenience) +- (void)removeObjectsFromSet:(id)arg1; +- (void)addObjectsFromSet:(id)arg1; +- (BOOL)addObjectIfAbsentAccordingToEquals:(id)arg1; +- (BOOL)addObjectIfAbsent:(id)arg1; +- (void)addAbsentObjectsFromArrayAccordingToEquals:(id)arg1; +- (void)addAbsentObjectsFromArray:(id)arg1; +- (unsigned long long)insertObjectIfAbsent:(id)arg1 usingComparator:(id)arg2; +- (unsigned long long)highestIndexOfObject:(id)arg1 inRange:(struct _NSRange)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableArray-SortedArrayExtensions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableArray-SortedArrayExtensions.h new file mode 100644 index 00000000..e8569f25 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableArray-SortedArrayExtensions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableArray.h" + +@interface NSMutableArray (SortedArrayExtensions) +- (unsigned long long)removeObject:(id)arg1 usingComparator:(id)arg2; +- (unsigned long long)insertObject:(id)arg1 usingComparator:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableAttributedString-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableAttributedString-MailCoreAdditions.h new file mode 100644 index 00000000..b247e0e5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableAttributedString-MailCoreAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableAttributedString.h" + +@interface NSMutableAttributedString (MailCoreAdditions) +- (void)changeQuoteLevelInRange:(struct _NSRange)arg1 by:(long long)arg2 undoManager:(id)arg3; +- (void)fixQuotingDisplayAttributesInRange:(struct _NSRange)arg1; +- (void)removeQuotingDisplayAttributesInRange:(struct _NSRange)arg1; +- (void)removeAllFormattingExceptAttachments; +- (void)removeAllAttachments; +- (void)_removeAttachmentsAndReplaceWithCustomAttribute:(BOOL)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableCopying-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableCopying-Protocol.h new file mode 100644 index 00000000..5611cf70 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSMutableCopying +- (id)mutableCopyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableData-MCMimeDataEncoding.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableData-MCMimeDataEncoding.h new file mode 100644 index 00000000..82183228 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableData-MCMimeDataEncoding.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableData.h" + +@interface NSMutableData (MCMimeDataEncoding) +- (void)appendQuotedPrintableDataForHeaderBytes:(const char *)arg1 length:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableData-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableData-MailCoreAdditions.h new file mode 100644 index 00000000..8c5ea62d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableData-MailCoreAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableData.h" + +@interface NSMutableData (MailCoreAdditions) +- (void)convertNetworkLineEndingsToUnix; +- (void)appendCString:(const char *)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableData-RFC2231Support.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableData-RFC2231Support.h new file mode 100644 index 00000000..e4024a07 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableData-RFC2231Support.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableData.h" + +@interface NSMutableData (RFC2231Support) +- (void)appendRFC2231CompliantValue:(id)arg1 forKey:(id)arg2 withEncodingHint:(unsigned long long)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableDictionary-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableDictionary-MailCoreAdditions.h new file mode 100644 index 00000000..8f9152d6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableDictionary-MailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableDictionary.h" + +@interface NSMutableDictionary (MailCoreAdditions) +- (void)addObject:(id)arg1 forKey:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableDictionary-RFC2231Support.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableDictionary-RFC2231Support.h new file mode 100644 index 00000000..97546365 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableDictionary-RFC2231Support.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableDictionary.h" + +@interface NSMutableDictionary (RFC2231Support) +- (void)fixupRFC2231ValuesWithSender:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableSet-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableSet-MailCoreAdditions.h new file mode 100644 index 00000000..137cdb4a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSMutableSet-MailCoreAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableSet.h" + +@interface NSMutableSet (MailCoreAdditions) +- (void)removeObjectsInArray:(id)arg1; +- (id)uniquedObject:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSNumber-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSNumber-MailCoreAdditions.h new file mode 100644 index 00000000..f2d67a6d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSNumber-MailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSNumber.h" + +@interface NSNumber (MailCoreAdditions) +- (id)localizedString; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSObject-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSObject-Protocol.h new file mode 100644 index 00000000..19cf622d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSObject-Protocol.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSObject +- (id)description; +- (unsigned long long)retainCount; +- (id)autorelease; +- (oneway void)release; +- (id)retain; +- (BOOL)respondsToSelector:(SEL)arg1; +- (BOOL)conformsToProtocol:(id)arg1; +- (BOOL)isMemberOfClass:(Class)arg1; +- (BOOL)isKindOfClass:(Class)arg1; +- (BOOL)isProxy; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2 withObject:(id)arg3; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2; +- (id)performSelector:(SEL)arg1; +- (struct _NSZone *)zone; +- (id)self; +- (Class)class; +- (Class)superclass; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; + +@optional +- (id)debugDescription; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSOperationQueue-MCTaskOperation.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSOperationQueue-MCTaskOperation.h new file mode 100644 index 00000000..e3eb3fcd --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSOperationQueue-MCTaskOperation.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOperationQueue.h" + +@interface NSOperationQueue (MCTaskOperation) +- (void)addTaskOperation:(id)arg1 taskName:(id)arg2 priority:(unsigned char)arg3 canCancel:(BOOL)arg4; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSPortDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSPortDelegate-Protocol.h new file mode 100644 index 00000000..3f9faebf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSPortDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSPortDelegate + +@optional +- (void)handlePortMessage:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSRunLoop-InternalMailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSRunLoop-InternalMailCoreAdditions.h new file mode 100644 index 00000000..39632fbb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSRunLoop-InternalMailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSRunLoop.h" + +@interface NSRunLoop (InternalMailCoreAdditions) ++ (BOOL)_flushQueuedEventsAddingSource:(BOOL)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSRunLoop-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSRunLoop-MailCoreAdditions.h new file mode 100644 index 00000000..793cf27f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSRunLoop-MailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSRunLoop.h" + +@interface NSRunLoop (MailCoreAdditions) ++ (void)flushQueuedEvents; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSScanner-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSScanner-MailCoreAdditions.h new file mode 100644 index 00000000..9fa6c15e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSScanner-MailCoreAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScanner.h" + +@interface NSScanner (MailCoreAdditions) +- (BOOL)scanUpAndOverString:(id)arg1; +- (id)nextTokenWithPunctuation:(id)arg1; +- (BOOL)scanEndIntoString:(id *)arg1; +- (BOOL)betterScanUpToCharactersFromSet:(id)arg1 intoString:(id *)arg2; +- (BOOL)scanStringOfLength:(unsigned long long)arg1 intoString:(id *)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSSet-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSSet-MailCoreAdditions.h new file mode 100644 index 00000000..a20cc764 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSSet-MailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSet.h" + +@interface NSSet (MailCoreAdditions) +- (BOOL)containsArray:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSStreamDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSStreamDelegate-Protocol.h new file mode 100644 index 00000000..9cc647a0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSStreamDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSStreamDelegate + +@optional +- (void)stream:(id)arg1 handleEvent:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSString-MCFormatFlowedSupport.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSString-MCFormatFlowedSupport.h new file mode 100644 index 00000000..5645704a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSString-MCFormatFlowedSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MCFormatFlowedSupport) +- (id)convertFromFlowedText:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSString-MCMimeCharsetSupport.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSString-MCMimeCharsetSupport.h new file mode 100644 index 00000000..552ac82d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSString-MCMimeCharsetSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MCMimeCharsetSupport) +- (id)bestMimeCharsetUsingHint:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSString-MCMimeEnrichedReader.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSString-MCMimeEnrichedReader.h new file mode 100644 index 00000000..e6ea9296 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSString-MCMimeEnrichedReader.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MCMimeEnrichedReader) ++ (id)stringFromMimeEnrichedString:(id)arg1; ++ (id)htmlStringFromMimeEnrichedString:(id)arg1; ++ (id)htmlStringFromMimeRichTextString:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSString-MailCoreAdditions.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSString-MailCoreAdditions.h new file mode 100644 index 00000000..6a91ef8d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSString-MailCoreAdditions.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MailCoreAdditions) ++ (id)contentIDStringFromCidUrl:(id)arg1; ++ (id)messageIDStringWithDomainHint:(id)arg1; ++ (id)newURLForContentID:(id)arg1; +- (id)stringByRemovingCharactersInSet:(id)arg1; +- (id)stringByReplacingNonBreakingSpacesWithString:(id)arg1; +- (unsigned long long)mf_effectivePrefixLengthOnlyRe:(BOOL)arg1; +- (BOOL)hasReplyPrefix; +- (unsigned long long)effectivePrefixLength; +- (id)MD5Digest; +- (id)messageIDSubstring; +- (id)encodedMessageID; +- (BOOL)isCalendarInvitation; +- (id)newStringByApplyingBodyClassName:(id)arg1; +- (id)stringByApplyingBodyClassName:(id)arg1; +- (id)stringByReplacingString:(id)arg1 withString:(id)arg2; +- (long long)caseInsensitiveCompareExcludingXDash:(id)arg1; +- (BOOL)isEqualToStringIgnoringCase:(id)arg1; +- (BOOL)isEqualToStringIgnoreCaseAndDiacritics:(id)arg1; +- (id)stringWithNoExtraSpaces; +- (id)stringSuitableForHTML; +- (id)stringByLocalizingReOrFwdPrefix; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSString-RFC2047Support.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSString-RFC2047Support.h new file mode 100644 index 00000000..048b71df --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSString-RFC2047Support.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (RFC2047Support) +- (id)decodeMimeAddressList; +- (id)decodeMimeHeaderValueWithCharsetHint:(id)arg1; +- (id)decodeMimeHeaderValue; +- (id)encodedHeaderDataWithEncodingHint:(unsigned long long)arg1 encodingUsed:(unsigned long long *)arg2; +- (id)encodedHeaderDataWithEncodingHint:(unsigned long long)arg1; +- (id)encodedHeaderData; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSString-StationeryUtilities.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSString-StationeryUtilities.h new file mode 100644 index 00000000..ba1a4fbe --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSString-StationeryUtilities.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (StationeryUtilities) +- (id)urlStringByInsertingCompositeVersionNumber; +- (id)urlStringByIncrementingCompositeVersionNumber; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSTextAttachment-MCMimeSupport.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSTextAttachment-MCMimeSupport.h new file mode 100644 index 00000000..128a661c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSTextAttachment-MCMimeSupport.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextAttachment.h" + +@interface NSTextAttachment (MCMimeSupport) +- (id)internalAppleAttachmentData; +- (BOOL)shouldDownloadAttachmentOnDisplay; +- (BOOL)isPlaceholder; +- (BOOL)hasBeenDownloaded; +- (id)mimePart; +- (unsigned long long)approximateSize; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSURLDownloadDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSURLDownloadDelegate-Protocol.h new file mode 100644 index 00000000..b6b3bdc4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSURLDownloadDelegate-Protocol.h @@ -0,0 +1,27 @@ +/* + * 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" + +@protocol NSURLDownloadDelegate + +@optional +- (void)download:(id)arg1 didFailWithError:(id)arg2; +- (void)downloadDidFinish:(id)arg1; +- (void)download:(id)arg1 didCreateDestination:(id)arg2; +- (void)download:(id)arg1 decideDestinationWithSuggestedFilename:(id)arg2; +- (BOOL)download:(id)arg1 shouldDecodeSourceDataOfMIMEType:(id)arg2; +- (void)download:(id)arg1 didReceiveDataOfLength:(unsigned long long)arg2; +- (void)download:(id)arg1 willResumeWithResponse:(id)arg2 fromByte:(long long)arg3; +- (void)download:(id)arg1 didReceiveResponse:(id)arg2; +- (BOOL)downloadShouldUseCredentialStorage:(id)arg1; +- (void)download:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (void)download:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (BOOL)download:(id)arg1 canAuthenticateAgainstProtectionSpace:(id)arg2; +- (id)download:(id)arg1 willSendRequest:(id)arg2 redirectResponse:(id)arg3; +- (void)downloadDidBegin:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/NSXMLParserDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailCore/NSXMLParserDelegate-Protocol.h new file mode 100644 index 00000000..364fc7cf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/NSXMLParserDelegate-Protocol.h @@ -0,0 +1,33 @@ +/* + * 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" + +@protocol NSXMLParserDelegate + +@optional +- (void)parser:(id)arg1 validationErrorOccurred:(id)arg2; +- (void)parser:(id)arg1 parseErrorOccurred:(id)arg2; +- (id)parser:(id)arg1 resolveExternalEntityName:(id)arg2 systemID:(id)arg3; +- (void)parser:(id)arg1 foundCDATA:(id)arg2; +- (void)parser:(id)arg1 foundComment:(id)arg2; +- (void)parser:(id)arg1 foundProcessingInstructionWithTarget:(id)arg2 data:(id)arg3; +- (void)parser:(id)arg1 foundIgnorableWhitespace:(id)arg2; +- (void)parser:(id)arg1 foundCharacters:(id)arg2; +- (void)parser:(id)arg1 didEndMappingPrefix:(id)arg2; +- (void)parser:(id)arg1 didStartMappingPrefix:(id)arg2 toURI:(id)arg3; +- (void)parser:(id)arg1 didEndElement:(id)arg2 namespaceURI:(id)arg3 qualifiedName:(id)arg4; +- (void)parser:(id)arg1 didStartElement:(id)arg2 namespaceURI:(id)arg3 qualifiedName:(id)arg4 attributes:(id)arg5; +- (void)parser:(id)arg1 foundExternalEntityDeclarationWithName:(id)arg2 publicID:(id)arg3 systemID:(id)arg4; +- (void)parser:(id)arg1 foundInternalEntityDeclarationWithName:(id)arg2 value:(id)arg3; +- (void)parser:(id)arg1 foundElementDeclarationWithName:(id)arg2 model:(id)arg3; +- (void)parser:(id)arg1 foundAttributeDeclarationWithName:(id)arg2 forElement:(id)arg3 type:(id)arg4 defaultValue:(id)arg5; +- (void)parser:(id)arg1 foundUnparsedEntityDeclarationWithName:(id)arg2 publicID:(id)arg3 systemID:(id)arg4 notationName:(id)arg5; +- (void)parser:(id)arg1 foundNotationDeclarationWithName:(id)arg2 publicID:(id)arg3 systemID:(id)arg4; +- (void)parserDidEndDocument:(id)arg1; +- (void)parserDidStartDocument:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_FormatFlowedWriter.h b/MailHeaders/Mavericks_10.9.5/MailCore/_FormatFlowedWriter.h new file mode 100644 index 00000000..364ab61e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_FormatFlowedWriter.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class NSAttributedString, NSMutableAttributedString, NSMutableString, NSString; + +@interface _FormatFlowedWriter : NSObject +{ + NSAttributedString *_inputAttrString; + NSString *_inputString; + unsigned long long _encoding; + NSMutableString *_outputString; + NSMutableString *_quotedString; + unsigned int _addedTrailingSpaces:1; + unsigned int _quoteLevel:31; + struct _NSRange _paraRange; + NSMutableString *_lineString; + NSMutableAttributedString *_attrString; +} + ++ (id)newWithAttributedString:(id)arg1 encoding:(unsigned long long)arg2; +- (id)quotedString; +- (BOOL)addedTrailingSpaces; +- (id)outputString; +- (void)_outputQuotedParagraph; +- (unsigned long long)_findLineBreakInRange:(struct _NSRange)arg1 maxCharWidthCount:(unsigned long long)arg2 endIsURL:(BOOL)arg3; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCActivityAggregateArrayController.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCActivityAggregateArrayController.h new file mode 100644 index 00000000..d256c3ae --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCActivityAggregateArrayController.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArrayController.h" + +@interface _MCActivityAggregateArrayController : NSArrayController +{ +} + +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCActivityMonitorMultiTarget.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCActivityMonitorMultiTarget.h new file mode 100644 index 00000000..329a40d3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCActivityMonitorMultiTarget.h @@ -0,0 +1,28 @@ +/* + * 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 "MCActivityTarget.h" + +@class NSMutableSet; + +@interface _MCActivityMonitorMultiTarget : NSObject +{ + id _primaryTarget; + NSMutableSet *_allTargets; +} + +- (id)displayName; +- (id)allTargets; +- (void)setPrimaryTarget:(id)arg1; +- (id)primaryTarget; +- (BOOL)removeActivityTarget:(id)arg1; +- (BOOL)addActivityTarget:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCAppleTokenSaslClient.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCAppleTokenSaslClient.h new file mode 100644 index 00000000..e8258a6a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCAppleTokenSaslClient.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MCAppleTokenSaslClient : MCSaslClient +{ +} + +- (id)newDecryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (id)newEncryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (id)responseForServerData:(id)arg1; +- (id)initialResponse; +- (id)init; +- (id)initWithMechanismName:(id)arg1 account:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCCompositeImageRep.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCCompositeImageRep.h new file mode 100644 index 00000000..75e8a2e7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCCompositeImageRep.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageRep.h" + +@class NSArray; + +@interface _MCCompositeImageRep : NSImageRep +{ + NSArray *_arrayOfImageDictionaries; +} + +- (BOOL)draw; +- (void)dealloc; +- (id)initWithArrayOfImageDictionaries:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCConnectionAttempt.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCConnectionAttempt.h new file mode 100644 index 00000000..6bdd72ad --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCConnectionAttempt.h @@ -0,0 +1,20 @@ +/* + * 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" + +@interface _MCConnectionAttempt : NSObject +{ + long long _securityLayer; + long long _port; +} + +@property(nonatomic) long long port; // @synthesize port=_port; +@property(nonatomic) long long securityLayer; // @synthesize securityLayer=_securityLayer; +- (id)description; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCExternalSaslClient.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCExternalSaslClient.h new file mode 100644 index 00000000..8289cbf4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCExternalSaslClient.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MCExternalSaslClient : MCSaslClient +{ +} + +- (id)newDecryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (id)newEncryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (id)responseForServerData:(id)arg1; +- (id)initialResponse; +- (id)init; +- (id)initWithMechanismName:(id)arg1 account:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCISPLocalAccountSettingsManager.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCISPLocalAccountSettingsManager.h new file mode 100644 index 00000000..32eda3d8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCISPLocalAccountSettingsManager.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MCISPLocalAccountSettingsManager : MCISPAccountSettingsManager +{ +} + +- (id)_persistanceFolderName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCISPOnlineAccountSettingsManager.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCISPOnlineAccountSettingsManager.h new file mode 100644 index 00000000..79f0c530 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCISPOnlineAccountSettingsManager.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSCache, NSString; + +@interface _MCISPOnlineAccountSettingsManager : MCISPAccountSettingsManager +{ + NSString *_ispAccountsXQuery; + NSCache *_fetchedISPPlistsByDomain; +} + +- (void)emptyCache; +- (id)_deliveryAccountsSettingsForDomain:(id)arg1 fetchIfNecessary:(BOOL)arg2; +- (id)_receivingAccountSettingsForDomain:(id)arg1 fetchIfNecessary:(BOOL)arg2; +- (void)_finalizeISPAccountsSettings:(id)arg1; +- (id)_ispPlistFromXMLDocument:(id)arg1; +- (id)_fetchISPDataForDomain:(id)arg1; +- (id)_ispPlistForDomain:(id)arg1; +- (BOOL)_shouldVerifyLoadedISPPlist; +- (id)_persistanceFolderName; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCInvocationOperation.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCInvocationOperation.h new file mode 100644 index 00000000..e3cebbdb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCInvocationOperation.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MCInvocationOperation : MCThrowingInvocationOperation +{ +} + +- (void)main; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCLibSasl2SaslClient.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCLibSasl2SaslClient.h new file mode 100644 index 00000000..1731f788 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCLibSasl2SaslClient.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MCLibSasl2SaslClient : MCSaslClient +{ + char *_userLanguageCode; + char *_authenticationName; + char *_authorizationName; + struct sasl_secret *_password; + BOOL _mechanismUsesPlainText; + BOOL _started; + struct sasl_callback *_callbacks; + struct sasl_conn *_saslConnection; +} + +@property(nonatomic) BOOL started; // @synthesize started=_started; +@property(nonatomic) BOOL mechanismUsesPlainText; // @synthesize mechanismUsesPlainText=_mechanismUsesPlainText; +@property(nonatomic) struct sasl_conn *saslConnection; // @synthesize saslConnection=_saslConnection; +@property(nonatomic) struct sasl_callback *callbacks; // @synthesize callbacks=_callbacks; +- (void)logSASLErrorWithGenericDescription:(id)arg1; +- (void)clearAuthenticationCallbackBuffers; +- (BOOL)resetWithExternalSecurityLayer:(unsigned int)arg1; +- (id)newDecryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (id)newEncryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (void)checkPlainTextPasswordInResponse:(id)arg1; +- (id)responseForServerData:(id)arg1; +- (id)initialResponse; +- (id)startSASLConnectionReturnInitialResponse:(BOOL)arg1; +- (void)setAuthenticationState:(long long)arg1; +- (void)setUpSASLConnectionWithExternalSecurityLayer:(unsigned int)arg1; +- (id)description; +- (void)dealloc; +- (id)init; +- (id)initWithMechanismName:(id)arg1 account:(id)arg2 externalSecurityLayer:(unsigned int)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCLogClient.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCLogClient.h new file mode 100644 index 00000000..58d76b1e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCLogClient.h @@ -0,0 +1,21 @@ +/* + * 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" + +@interface _MCLogClient : NSObject +{ + int _fileDescriptor; + struct __aslclient *_aslClient; +} + +@property(readonly) int fileDescriptor; // @synthesize fileDescriptor=_fileDescriptor; +@property(readonly) struct __aslclient *aslClient; // @synthesize aslClient=_aslClient; +- (void)dealloc; +- (id)initWithCategory:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCMemoryMessage.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCMemoryMessage.h new file mode 100644 index 00000000..f2cd85ad --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCMemoryMessage.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MCMemoryMessage : MCMessage +{ +} + +- (BOOL)isCompacted; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (void)dealloc; +- (id)init; +- (id)initWithStore:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimeEnrichedReader.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimeEnrichedReader.h new file mode 100644 index 00000000..a27fe769 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimeEnrichedReader.h @@ -0,0 +1,50 @@ +/* + * 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" + +@class NSMutableArray, NSMutableString; + +@interface _MCMimeEnrichedReader : NSObject +{ + CDStruct_2ada2998 _inputBuffer; + long long _currentIndex; + long long _inputLength; + unsigned int _noFillLevel:30; + unsigned int _eatOneNewline:1; + unsigned int _insideComment:1; + long long _lastQuoteLevel; + NSMutableArray *_commandStack; + id _outputString; + NSMutableString *_outputBuffer; + BOOL outputShouldBeHTML; +} + +- (id)description; +- (void)convertEnrichedString:(id)arg1 intoPlainOutputString:(id)arg2; +- (void)convertEnrichedString:(id)arg1 intoOutputString:(id)arg2; +- (void)convertRichTextString:(id)arg1 intoOutputString:(id)arg2; +- (long long)readTokenInto:(id *)arg1; +- (id)copyCommand; +- (id)copyNextTokenWithDelimiters:(id)arg1; +- (id)currentFont; +- (void)parseParameterString:(id)arg1; +- (void)endCommand:(id)arg1; +- (void)beginCommand:(id)arg1; +- (void)setupFontStackEntry:(id)arg1; +- (void)handleNoParameterCommand:(const CDStruct_3441fd00 *)arg1; +- (void)closeUpQuoting; +- (void)fixConsecutiveSpaces:(id)arg1; +- (void)nowWouldBeAGoodTimeToAppendToTheAttributedString; +- (void)resetStateWithString:(id)arg1 outputString:(id)arg2; +- (void)appendStringToBuffer:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)parenthesesSet; +- (id)punctuationSet; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimeEnrichedReaderCommandStackEntry.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimeEnrichedReaderCommandStackEntry.h new file mode 100644 index 00000000..54430ab1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimeEnrichedReaderCommandStackEntry.h @@ -0,0 +1,20 @@ +/* + * 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" + +@interface _MCMimeEnrichedReaderCommandStackEntry : NSObject +{ + const CDStruct_3441fd00 *_commandTableEntry; + id _parameter; +} + +@property(retain, nonatomic) id parameter; // @synthesize parameter=_parameter; +@property(nonatomic) const CDStruct_3441fd00 *commandTableEntry; // @synthesize commandTableEntry=_commandTableEntry; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimeEnrichedWriter.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimeEnrichedWriter.h new file mode 100644 index 00000000..cad4d7a3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimeEnrichedWriter.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSAttributedString, NSFont, NSString; + +@interface _MCMimeEnrichedWriter : NSObject +{ + NSAttributedString *_attributedString; + NSString *_string; + CDStruct_2ada2998 _stringBuffer; + NSFont *_defaultFont; + NSFont *_defaultFixedPitchFont; + double _defaultPointSize; + struct _MCMimeEnrichedWriterCommandStackEntry *_commandStack; + struct _MCMimeEnrichedWriterCommandStackEntry *_topOfStack; + struct MCMimeEnrichedState _currentState; + unsigned long long _currentLineStart; + unsigned long long _lastSpace; +} + +- (id)debugDescription; +- (void)appendTextFromRange:(struct _NSRange)arg1 toString:(id)arg2; +- (void)updateOutput:(id)arg1 forAttributes:(id)arg2 range:(struct _NSRange)arg3; +- (id)convertAttributedString:(id)arg1; +- (void)dealloc; +- (void)setState:(struct MCMimeEnrichedState *)arg1 fromStackEntry:(struct _MCMimeEnrichedWriterCommandStackEntry *)arg2; +- (void)setState:(struct MCMimeEnrichedState *)arg1 fromAttributes:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimeHeaderScanContext.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimeHeaderScanContext.h new file mode 100644 index 00000000..c285f1da --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimeHeaderScanContext.h @@ -0,0 +1,29 @@ +/* + * 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" + +@class MCMimePart, NSMutableData; + +@interface _MCMimeHeaderScanContext : NSObject +{ + const char *_current; + const char *_end; + unsigned long long _encodingHint; + NSMutableData *_dataBuf; + MCMimePart *_mimePart; +} + +@property(retain, nonatomic) MCMimePart *mimePart; // @synthesize mimePart=_mimePart; +@property(retain, nonatomic) NSMutableData *dataBuf; // @synthesize dataBuf=_dataBuf; +@property(nonatomic) unsigned long long encodingHint; // @synthesize encodingHint=_encodingHint; +@property(nonatomic) const char *end; // @synthesize end=_end; +@property(nonatomic) const char *current; // @synthesize current=_current; +- (id)description; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimePartEnumerator.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimePartEnumerator.h new file mode 100644 index 00000000..f649a7f8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCMimePartEnumerator.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@class MCMimePart; + +@interface _MCMimePartEnumerator : NSEnumerator +{ + BOOL _onlyAttachments; + BOOL _isFirstIteration; + MCMimePart *_currentPart; +} + +- (id)nextObject; +- (void)dealloc; +- (id)initWithMimeBody:(id)arg1 onlyAttachments:(BOOL)arg2; +- (void)_setCurrentPart:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCOutgoingMessageBody.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCOutgoingMessageBody.h new file mode 100644 index 00000000..02c605c7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCOutgoingMessageBody.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSMutableData; + +@interface _MCOutgoingMessageBody : MCMessageBody +{ + NSMutableData *_rawData; +} + +@property(retain, nonatomic) NSMutableData *rawData; // @synthesize rawData=_rawData; +- (void)setMessage:(id)arg1; +- (id)message; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCPlainClientTokenSaslClient.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCPlainClientTokenSaslClient.h new file mode 100644 index 00000000..dd699871 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCPlainClientTokenSaslClient.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MCPlainClientTokenSaslClient : MCSaslClient +{ +} + +- (id)newDecryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (id)newEncryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (id)responseForServerData:(id)arg1; +- (id)initialResponse; +- (id)init; +- (id)initWithMechanismName:(id)arg1 account:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailCore/_MCWebAuthenticationRequest.h b/MailHeaders/Mavericks_10.9.5/MailCore/_MCWebAuthenticationRequest.h new file mode 100644 index 00000000..0512d7b2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailCore/_MCWebAuthenticationRequest.h @@ -0,0 +1,28 @@ +/* + * 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" + +@class NSArray, NSMutableArray, NSURL; + +@interface _MCWebAuthenticationRequest : NSObject +{ + NSMutableArray *_completionHandlers; + NSURL *_webAuthenticationURL; + id _windowProvider; +} + +@property(copy) id windowProvider; // @synthesize windowProvider=_windowProvider; +@property(retain) NSURL *webAuthenticationURL; // @synthesize webAuthenticationURL=_webAuthenticationURL; +- (void)insertObject:(id)arg1 inCompletionHandlersAtIndex:(void)arg2; +- (unsigned long long)countOfCompletionHandlers; +@property(readonly) NSArray *completionHandlers; +- (id)description; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/ABImageClient-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/ABImageClient-Protocol.h new file mode 100644 index 00000000..1ad0dcdb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/ABImageClient-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol ABImageClient +- (void)consumeImageData:(id)arg1 forTag:(long long)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/CDStructures.h b/MailHeaders/Mavericks_10.9.5/MailFW/CDStructures.h new file mode 100644 index 00000000..a3443786 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/CDStructures.h @@ -0,0 +1,101 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#pragma mark Named Structures + +struct CGSize { + double width; + double height; +}; + +struct _NSRange { + unsigned long long location; + unsigned long long length; +}; + +struct __sbuf { + char *_field1; + int _field2; +}; + +struct internal_state; + +struct z_stream_s { + char *next_in; + unsigned int avail_in; + unsigned long long total_in; + char *next_out; + unsigned int avail_out; + unsigned long long total_out; + char *msg; + struct internal_state *state; + void *zalloc; + void *zfree; + void *opaque; + int data_type; + unsigned long long adler; + unsigned long long reserved; +}; + +#pragma mark Typedef'd Structures + +typedef struct { + unsigned long long _field1; + unsigned long long _field2; + char _field3; + char _field4; +} CDStruct_c53ccb4e; + +typedef struct { + unsigned int :1; + unsigned int :1; + unsigned int :8; + unsigned int :8; + unsigned int :8; + unsigned int :1; + unsigned int :2; + unsigned int :1; + unsigned int :2; +} CDStruct_76a5ddda; + +typedef struct { + unsigned int reserved:27; + unsigned int isPartial:1; + unsigned int partsHaveBeenCached:1; + unsigned int hasTemporaryUid:1; + unsigned int isHTML:1; + unsigned int isRich:1; +} CDStruct_07ba05d6; + +typedef struct { + int version; + int count; + int timeStamp; + float tocHeight; + unsigned int sortOrder; + unsigned int sortedAscending; + int unused1; + int unused2; +} CDStruct_c4d47a41; + +typedef struct { + long long _field1; + unsigned long long _field2; +} CDStruct_1dee9796; + +typedef struct { + unsigned short _field1[64]; + struct __CFString *_field2; + unsigned short *_field3; + char *_field4; + struct { + long long _field1; + long long _field2; + } _field5; + long long _field6; + long long _field7; +} CDStruct_f9502b4c; + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/DOMDocument-JunkAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/DOMDocument-JunkAdditions.h new file mode 100644 index 00000000..fdb266c2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/DOMDocument-JunkAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMDocument.h" + +@interface DOMDocument (JunkAdditions) +- (id)junkStringNonWhiteSpaceCount:(long long *)arg1 URLs:(id)arg2 imageURLs:(id)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/EWSExchangeServiceBindingDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/EWSExchangeServiceBindingDelegate-Protocol.h new file mode 100644 index 00000000..71ad7f7a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/EWSExchangeServiceBindingDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol EWSExchangeServiceBindingDelegate +- (void)exchangeServiceBinding:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; + +@optional +- (BOOL)exchangeServiceBinding:(id)arg1 canAuthenticateAgainstProtectionSpace:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didReceiveCertificateError:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didFailWithError:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didFinishWithResponse:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/EWSPathToExtendedFieldType-MessageAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/EWSPathToExtendedFieldType-MessageAdditions.h new file mode 100644 index 00000000..f5217eb1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/EWSPathToExtendedFieldType-MessageAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "EWSPathToExtendedFieldType.h" + +@interface EWSPathToExtendedFieldType (MessageAdditions) ++ (id)newExtendedFieldTypeForPropertyId:(long long)arg1; ++ (id)newExtendedFieldTypeForPropertyTag:(id)arg1; ++ (id)_newExtendedFieldTypeForPropertyTag:(id)arg1 propertyType:(int)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/IMAPAccount-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPAccount-Protocol.h new file mode 100644 index 00000000..3728695c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPAccount-Protocol.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCRemoteStoreAccount.h" + +@class NSDictionary; + +@protocol IMAPAccount +@property unsigned int readBufferSize; +@property(readonly) id offlineCache; +@property(copy) NSDictionary *serverID; +@property long long gmailCapabilitiesSupport; +@property BOOL useIDLEIfAvailable; +@property BOOL recoveringFromConnectionLoss; +- (void)recoverFromConnectionLoss; +- (BOOL)shouldMoveDeletedMessagesToTrash; +- (void)backgroundFetchCompletedCount:(unsigned long long)arg1; +- (void)sendAccountNeedsCheckingNotification; +- (BOOL)allowsPartialDownloads; +- (id)quotaRootForName:(id)arg1 createIfNeeded:(BOOL)arg2; +- (BOOL)handleResponseCodeFromResponse:(id)arg1; +- (id)IMAPMailboxForMailboxName:(id)arg1 createIfNeeded:(BOOL)arg2; +- (void)setServerPathPrefix:(id)arg1 permanently:(BOOL)arg2; +- (id)serverPathPrefix; + +@optional +- (void)detectAllMailWithGateway:(id)arg1; +- (id)gmailLabelWithName:(id)arg1; +- (id)additionalHeaderFields; +- (void)filterMailboxList:(id)arg1 forMailbox:(id)arg2 options:(long long)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/IMAPMailbox-MCMailboxAdapter.h b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPMailbox-MCMailboxAdapter.h new file mode 100644 index 00000000..d31e398d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPMailbox-MCMailboxAdapter.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "IMAPMailbox.h" + +@interface IMAPMailbox (MCMailboxAdapter) +- (id)mailMailbox; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/IMAPMailboxDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPMailboxDelegate-Protocol.h new file mode 100644 index 00000000..2e32e783 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPMailboxDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol IMAPMailboxDelegate +- (void)updateComputedHighestModificationSequence:(unsigned long long)arg1 forMailbox:(id)arg2; +- (unsigned long long)computedHighestModificationSequenceForMailbox:(id)arg1; +- (unsigned long long)allegedHighestModificationSequenceForMailbox:(id)arg1; +- (void)updateSelectedGatewayFromMailbox:(id)arg1; +- (void)processResponsesFromMailbox:(id)arg1; +- (void)updateUidValidityFromMailbox:(id)arg1; +- (void)updateCountFromMailbox:(id)arg1 fromIDLE:(BOOL)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/IMAPMessage-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPMessage-Protocol.h new file mode 100644 index 00000000..f47abc84 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPMessage-Protocol.h @@ -0,0 +1,25 @@ +/* + * 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" + +@protocol IMAPMessage +- (id)mailboxName; +- (id)dateReceived; +- (id)subject; +- (unsigned long long)messageSize; +- (CDStruct_07ba05d6)remoteFlags; +- (void)setHasTemporaryUid:(BOOL)arg1; +- (BOOL)hasTemporaryUid; +- (void)setPartsHaveBeenCached:(BOOL)arg1; +- (BOOL)partsHaveBeenCached; +- (void)setIsPartial:(BOOL)arg1; +- (BOOL)isPartial; +- (id)messageID; +- (void)setUid:(unsigned int)arg1; +- (unsigned int)uid; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/IMAPMessageDataSource-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPMessageDataSource-Protocol.h new file mode 100644 index 00000000..506fac19 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPMessageDataSource-Protocol.h @@ -0,0 +1,52 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessageDataSource.h" + +@protocol IMAPMessageDataSource +@property(readonly) BOOL persistentIDType; +- (void)syncEngineDidSynchronizeMessageList; +- (void)removeAllLocalMessages; +- (void)setUidValidityStatus:(unsigned int)arg1; +- (void)setComputedHighestModificationSequence:(unsigned long long)arg1; +- (void)setAllegedHighestModificationSequence:(unsigned long long)arg1; +- (unsigned long long)allegedHighestModificationSequence; +- (void)setUidNextStatus:(unsigned int)arg1; +- (unsigned int)uidNextStatus; +- (unsigned int)maximumRemoteID; +- (void)syncEngineDidFinish; +- (void)syncEngineDidStart; +- (id)newDictionaryForLocalFlags:(unsigned int)arg1 serverFlags:(unsigned int)arg2 existingDictionary:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2 updatingServer:(BOOL)arg3; +- (BOOL)messageHasBeenDeleted:(id)arg1; +- (void)compactMessagesFromSyncEngine:(id)arg1; +- (id)messagesBeingAdded; +- (BOOL)messagesAreBeingAdded; +- (void)addMessages:(id)arg1; +- (id)downloadCache; +- (id)fetchPipeline; +- (BOOL)hasValidCacheFileForMessage:(id)arg1; +- (BOOL)hasCacheFileForMessage:(id)arg1 part:(id)arg2 directoryContents:(id)arg3; +- (BOOL)hasCacheFileForMessage:(id)arg1 directoryContents:(id)arg2; +- (id)cacheDirectoryContents; +- (id)copyOfAllMessagesWithSubjects; +- (id)getDetailsForMessagesWithRemoteIDs:(id)arg1; +- (unsigned long long)totalCountOfMessages; +- (BOOL)isInbox; +- (id)mailboxName; +- (id)account; + +@optional +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2 updatingServer:(BOOL)arg3; +- (id)recentFlagChangesForManagedObjectID:(id)arg1; +- (id)messagesWithManagedObjectIDs:(id)arg1; +- (id)messageWithDefaultLoadOptionsAndManagedObjectID:(id)arg1; +- (id)recentFlagChangesForRowID:(id)arg1; +- (id)messagesWithRowIDs:(id)arg1; +- (id)messageWithDefaultLoadOptionsAndRowID:(long long)arg1; +- (BOOL)isAllMailMailbox; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/IMAPOfflineCache-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPOfflineCache-Protocol.h new file mode 100644 index 00000000..85893fba --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPOfflineCache-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol IMAPOfflineCache +- (void)saveChanges; +- (void)setGmailLabels:(id)arg1 andClearGmailLabels:(id)arg2 forUids:(id)arg3 forMailbox:(id)arg4; +- (void)setFlags:(id)arg1 andClearFlags:(id)arg2 forUids:(id)arg3 forMailbox:(id)arg4; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/IMAPPersistedMessage-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPPersistedMessage-Protocol.h new file mode 100644 index 00000000..16ed130d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/IMAPPersistedMessage-Protocol.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCChanging.h" + +@protocol IMAPPersistedMessage +@property(readonly) BOOL persistentIDType; +- (void)appendData:(id)arg1 part:(id)arg2; +- (void)setData:(id)arg1 isPartial:(BOOL)arg2; +- (void)setRemoteID:(id)arg1; +- (id)remoteID; + +@optional +- (id)managedObjectID; +- (long long)libraryID; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCAccount-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCAccount-Protocol.h new file mode 100644 index 00000000..10dc6018 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCAccount-Protocol.h @@ -0,0 +1,52 @@ +/* + * 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" + +@class MCAuthScheme, NSArray, NSString, NSURL; + +@protocol MCAccount ++ (void)saveAccountInfoToDefaults; ++ (id)accountTypeString; +@property(readonly) NSString *subscriptionURLLabel; +@property(readonly) NSURL *subscriptionURL; +@property BOOL usesSSL; +@property(readonly) BOOL requiresAuthentication; +@property(readonly) NSString *googleClientToken; +@property(readonly) NSString *appleAuthenticationToken; +@property(readonly) NSString *applePersonID; +@property(copy) NSString *password; +@property(copy) NSString *username; +@property(retain) MCAuthScheme *preferredAuthScheme; +@property long long securityLayerType; +@property(readonly) NSArray *standardSSLPorts; +@property(readonly) NSArray *standardPorts; +@property long long portNumber; +@property(copy) NSString *hostname; +@property BOOL configureDynamically; +@property(readonly) NSString *saslProfileName; +@property(copy) NSString *displayName; +@property(readonly) NSString *accountTypeString; +- (BOOL)canAuthenticateWithScheme:(id)arg1 connection:(id)arg2; +- (id)authSchemesForConnection:(id)arg1; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (void)respondToHostBecomingReachable; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (void)setSessionPassword:(id)arg1; +- (id)sessionPassword; +- (void)setTLSIdentity:(struct OpaqueSecIdentityRef *)arg1; +- (struct OpaqueSecIdentityRef *)copyTLSIdentity; + +@optional +@property(copy) NSString *externalHostname; +@property(readonly, nonatomic) NSString *internetAccountsUID; +@property(readonly) NSString *uniqueId; +- (void)setShouldUseAuthentication:(BOOL)arg1; +- (BOOL)shouldUseAuthentication; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCAccountSetupValidatorDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCAccountSetupValidatorDelegate-Protocol.h new file mode 100644 index 00000000..b3094839 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCAccountSetupValidatorDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MCAccountSetupValidatorDelegate +- (id)delegateApplicationName; +- (BOOL)validatorShouldPromptForInsecurePassword:(id)arg1; +- (void)validatorDidFinish:(id)arg1; +- (void)validatorDidFail:(id)arg1; +- (void)validator:(id)arg1 didChangeState:(long long)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCActivityTarget-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCActivityTarget-Protocol.h new file mode 100644 index 00000000..e51c89fb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCActivityTarget-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol MCActivityTarget + +@optional +- (BOOL)isSmartMailbox; +- (id)displayName; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCAttachment-ScriptingInternal.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCAttachment-ScriptingInternal.h new file mode 100644 index 00000000..c779d1e9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCAttachment-ScriptingInternal.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCAttachment.h" + +@interface MCAttachment (ScriptingInternal) +- (void)_finishSaveAttachmentCommand:(id)arg1; +- (void)_fetchDataForCommand:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCAttachment-ScriptingSupport.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCAttachment-ScriptingSupport.h new file mode 100644 index 00000000..4869212a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCAttachment-ScriptingSupport.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCAttachment.h" + +#import "MCActivityTarget.h" + +@interface MCAttachment (ScriptingSupport) +- (id)objectSpecifier; +- (id)uniqueID; +- (id)appleScriptApproximateSize; +- (id)handleSaveAttachmentCommand:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCCIDURLProtocolDataProvider-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCCIDURLProtocolDataProvider-Protocol.h new file mode 100644 index 00000000..23029267 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCCIDURLProtocolDataProvider-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@class NSData, NSString, NSURL; + +@protocol MCCIDURLProtocolDataProvider +@property(readonly) NSString *mimeType; +@property(readonly) NSData *data; +@property(readonly) NSURL *cidURL; + +@optional +@property(readonly) long long fileSize; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCChanging-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCChanging-Protocol.h new file mode 100644 index 00000000..b119c78e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCChanging-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MCChanging +- (BOOL)endChanging:(BOOL)arg1 immediately:(BOOL)arg2; +- (void)beginChanging; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCGmailLabel-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCGmailLabel-Protocol.h new file mode 100644 index 00000000..5476ed06 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCGmailLabel-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MCGmailLabel +- (BOOL)isGmailImportantLabel; +- (id)labelName; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCMailAccount-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCMailAccount-Protocol.h new file mode 100644 index 00000000..4e72b191 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCMailAccount-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCAccount.h" + +@protocol MCMailAccount +- (void)incrementTotalCountOfMessagesReceived:(unsigned long long)arg1; +- (void)incrementCountOfNewUnreadMessagesReceivedInInbox:(unsigned long long)arg1; +- (void)newUnreadMessagesHaveBeenReceivedInInbox; +- (id)remoteTaskQueue; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCMailbox-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCMailbox-Protocol.h new file mode 100644 index 00000000..9f191502 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCMailbox-Protocol.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSCopying.h" +#import "NSObject.h" + +@protocol MCMailbox +- (unsigned long long)unseenCount; +- (BOOL)unseenCountIsKnown; +- (id)URLString; +- (void)setUserInfoObject:(id)arg1 forKey:(id)arg2; +- (id)userInfoObjectForKey:(id)arg1; +- (void)setUserInfoBool:(BOOL)arg1 forKey:(id)arg2; +- (BOOL)userInfoBoolForKey:(id)arg1; +- (id)extendedDisplayName; +- (id)displayName; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-MCMailAccountAdapter.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-MCMailAccountAdapter.h new file mode 100644 index 00000000..97f2d38c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-MCMailAccountAdapter.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@interface MCMessage (MCMailAccountAdapter) +- (id)mailAccount; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-MCMailboxAdapter.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-MCMailboxAdapter.h new file mode 100644 index 00000000..e4163672 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-MCMailboxAdapter.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@interface MCMessage (MCMailboxAdapter) +- (id)mailMailbox; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-MFBackupAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-MFBackupAdditions.h new file mode 100644 index 00000000..6bab280f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-MFBackupAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@interface MCMessage (MFBackupAdditions) +- (id)backupID; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-ParentalControl.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-ParentalControl.h new file mode 100644 index 00000000..4e3e7c35 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-ParentalControl.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@interface MCMessage (ParentalControl) +- (void)setPermissionRequestState:(long long)arg1; +- (BOOL)isChildRequestMessage; +- (BOOL)isChildRequestMessage:(id)arg1 requestIsForSenders:(char *)arg2 childAddress:(id *)arg3 permissionRequestState:(long long *)arg4; +- (BOOL)isParentResponseMessage:(char *)arg1 isRejected:(char *)arg2 requestedAddresses:(id)arg3 requestIsForSenders:(char *)arg4; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-ScriptingSupport.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-ScriptingSupport.h new file mode 100644 index 00000000..cb2f94b8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-ScriptingSupport.h @@ -0,0 +1,52 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +#import "MCActivityTarget.h" + +@interface MCMessage (ScriptingSupport) +- (id)valueInAppleScriptAttachmentsWithUniqueID:(id)arg1; +- (id)appleScriptAttachments; +- (id)appleScriptHeaders; +- (void)setBackgroundColor:(unsigned int)arg1; +- (unsigned int)backgroundColor; +- (unsigned int)actionColorMessage; +- (id)allHeaders; +- (id)rawSource; +- (id)messageIDHeader; +- (void)_performBackgroundSetContainer:(id)arg1 command:(id)arg2; +- (void)setContainer:(id)arg1; +- (id)container; +- (id)bccRecipients; +- (id)ccRecipients; +- (id)toRecipients; +- (id)recipients; +- (void)_addRecipientsForKey:(id)arg1 toArray:(id)arg2; +- (id)_performBackgroundGetContent; +- (id)content; +- (id)scriptedMessageSize; +- (id)replyTo; +- (void)setFlaggedStatus:(long long)arg1; +- (long long)flaggedStatus; +- (void)setIsFlagged:(BOOL)arg1; +- (BOOL)isFlagged; +- (void)setIsDeleted:(BOOL)arg1; +- (BOOL)isDeleted; +- (void)setIsJunk:(BOOL)arg1; +- (BOOL)isJunk; +- (void)setWasRedirected:(BOOL)arg1; +- (BOOL)wasRedirected; +- (void)setWasForwarded:(BOOL)arg1; +- (BOOL)wasForwarded; +- (void)setWasRepliedTo:(BOOL)arg1; +- (BOOL)wasRepliedTo; +- (void)setIsRead:(BOOL)arg1; +- (BOOL)isRead; +- (void)_setAppleScriptFlag:(id)arg1 state:(BOOL)arg2; +- (id)objectSpecifier; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-Threads.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-Threads.h new file mode 100644 index 00000000..b1963b7e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessage-Threads.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@class NSIndexSet; + +@interface MCMessage (Threads) +@property(readonly) NSIndexSet *appliedFlagColors; +@property(readonly) int conversationPosition; +@property(readonly) long long conversationID; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCMessageBody-MFAttachmentViewController.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessageBody-MFAttachmentViewController.h new file mode 100644 index 00000000..82da8257 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessageBody-MFAttachmentViewController.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessageBody.h" + +@interface MCMessageBody (MFAttachmentViewController) +- (id)attachmentViewControllers; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCMessageDataSource-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessageDataSource-Protocol.h new file mode 100644 index 00000000..64603fc5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessageDataSource-Protocol.h @@ -0,0 +1,56 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCActivityTarget.h" +#import "NSCopying.h" + +@protocol MCMessageDataSource +@property(readonly) BOOL isReadOnly; +- (id)uniquedString:(id)arg1; +- (void)flushAllCaches; +- (void)invalidateMessage:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)routeMessages:(id)arg1; +- (void)doCompact; +- (BOOL)canCompact; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)undeleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (id)mailbox; +- (id)account; + +@optional +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCMessageSortingInterface-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessageSortingInterface-Protocol.h new file mode 100644 index 00000000..c2d9a0a3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCMessageSortingInterface-Protocol.h @@ -0,0 +1,24 @@ +/* + * 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" + +@protocol MCMessageSortingInterface +- (unsigned int)uidForSort; +- (id)mailbox; +- (double)dateSentAsTimeIntervalSince1970; +- (double)dateReceivedAsTimeIntervalSince1970; +- (id)to; +- (id)subjectAndPrefixLength:(unsigned long long *)arg1; +- (id)subject; +- (unsigned long long)numberOfAttachments; +- (unsigned long long)messageSize; +- (id)senderDisplayName; +- (unsigned int)messageFlags; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (int)colorForSort; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCMimePart-SpotlightSupport.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCMimePart-SpotlightSupport.h new file mode 100644 index 00000000..47779bee --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCMimePart-SpotlightSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMimePart.h" + +@interface MCMimePart (SpotlightSupport) +- (BOOL)writeAttachmentToSpotlightCacheIfNeededUnder:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCPersistentIDFetching-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCPersistentIDFetching-Protocol.h new file mode 100644 index 00000000..4ce97a27 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCPersistentIDFetching-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MCPersistentIDFetching ++ (id)fetchedMessageWithRowID:(long long)arg1; +- (long long)libraryID; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MCRemoteStoreAccount-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MCRemoteStoreAccount-Protocol.h new file mode 100644 index 00000000..27a584f5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MCRemoteStoreAccount-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMailAccount.h" + +@protocol MCRemoteStoreAccount +- (void)presentOverQuotaAlert; +- (void)setCachePolicy:(long long)arg1 permanently:(BOOL)arg2; +- (long long)cachePolicy; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFAccount.h new file mode 100644 index 00000000..2203a4f2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFAccount.h @@ -0,0 +1,144 @@ +/* + * 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 "MCAccount.h" + +@class MCAuthScheme, NSArray, NSDictionary, NSImage, NSMutableDictionary, NSMutableSet, NSString, NSURL; + +@interface MFAccount : NSObject +{ + NSString *_brandName; + id _brandIcon; + id _supportURL; + NSString *_supportURLLabel; + unsigned int _isOffline:1; + unsigned int _willingToGoOnline:1; + unsigned int _autosynchronizingEnabled:1; + unsigned int _isActive:2; + NSMutableDictionary *_info; + NSString *_providerIdentifier; + struct OpaqueSecIdentityRef *_tlsIdentity; + NSMutableSet *_connections; + unsigned int _promptedToTrustSSLCertificates:1; + BOOL _configureDynamically; +} + ++ (Class)classForProtocol:(id)arg1; ++ (id)keyPathsForValuesAffectingPreferredAuthScheme; ++ (BOOL)defaultsToSSL; ++ (id)keyPathsForValuesAffectingOfflineDisplayName; ++ (BOOL)allObjectsInArrayAreOffline:(id)arg1; ++ (id)genericAccountLargeImage; ++ (id)accountTypeString; ++ (void)saveAccountInfoToDefaults; ++ (BOOL)_shouldAnnounceChangesFromAccountInfo:(id)arg1 toAccountInfo:(id)arg2; ++ (void)saveAccounts:(id)arg1 usingStorageKey:(id)arg2 forceWriteToMail:(BOOL)arg3; ++ (void)saveAccounts:(id)arg1 usingStorageKey:(id)arg2; ++ (id)readAccountsUsingStorageKey:(id)arg1; ++ (id)readAccountsUsingStorageKey:(id)arg1 forceReadFromMail:(BOOL)arg2; ++ (id)v2AccountsPlistName; ++ (BOOL)haveAccountsBeenConfigured; ++ (id)typeStringForAccountClass:(Class)arg1; ++ (Class)accountClassForTypeString:(id)arg1; ++ (void)initialize; +@property BOOL configureDynamically; // @synthesize configureDynamically=_configureDynamically; +@property(readonly) void *keychainProtocol; +- (void)respondToHostBecomingReachable; +- (id)authSchemesForConnection:(id)arg1; +- (BOOL)canAuthenticateWithScheme:(id)arg1 connection:(id)arg2; +- (void)removeAccountInfoObjectForKey:(id)arg1; +- (void)setAccountInfoObject:(id)arg1 forKey:(id)arg2; +@property(readonly) BOOL isValid; +@property(nonatomic) BOOL promptToTrustSSLCertificates; +@property(readonly) NSImage *brandIcon; +- (id)iaSettingsIncludingPassword:(BOOL)arg1; +@property(readonly) NSString *brandName; +- (void)setProviderIdentifier:(id)arg1; +@property(readonly) NSString *providerIdentifier; +@property(readonly) NSString *accountTypeString; +@property(readonly) NSString *subscriptionURLLabel; +@property(readonly) NSURL *subscriptionURL; +@property(readonly) NSString *supportURLLabel; +@property(readonly) NSURL *supportURL; +- (id)_ispDomain; +- (id)nameForMailbox:(id)arg1; +@property(readonly) NSString *uniqueId; +@property(copy) NSString *ISPAccountID; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +@property(readonly) BOOL requiresAuthentication; +@property(readonly) NSString *saslProfileName; +@property(retain) MCAuthScheme *preferredAuthScheme; +- (void)accountInfoDidChange; +@property(copy) NSString *domain; +@property long long securityLayerType; +- (void)_setUsesSSL:(BOOL)arg1 accountInfoKey:(id)arg2; +- (BOOL)_usesSSLWithAccountInfoKey:(id)arg1; +@property BOOL usesSSL; +- (void)validateConnections; +- (void)releaseAllConnections; +@property(readonly) long long defaultSecurePortNumber; +@property(readonly) long long defaultPortNumber; +@property(readonly) NSArray *standardSSLPorts; +@property(readonly) NSArray *standardPorts; +@property long long portNumber; +- (void)setTLSIdentity:(struct OpaqueSecIdentityRef *)arg1; +- (struct OpaqueSecIdentityRef *)copyTLSIdentity; +@property(readonly) NSString *googleClientToken; +@property(readonly) NSString *appleAuthenticationToken; +@property(readonly) NSString *applePersonID; +- (void)promptUserForPasswordWithCompletion:(id)arg1; +- (id)promptUserForPassword; +- (void)setSessionPassword:(id)arg1; +- (id)sessionPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)permanentPassword; +@property(copy) NSString *password; +- (void)_setHostname:(id)arg1 accountInfoKey:(id)arg2; +- (id)_hostnameWithAccountInfoKey:(id)arg1; +@property(copy) NSString *hostname; +@property(copy) NSString *username; +@property(readonly) NSString *offlineDisplayName; +@property(copy) NSString *displayName; +@property(copy) NSString *storedDisplayName; +@property BOOL isWillingToGoOnline; +@property BOOL isOffline; +@property(readonly) BOOL canGoOffline; +@property BOOL isInactivatedInsteadOfBeingDeleted; +@property BOOL isActive; +- (void)setAutosynchronizingEnabled:(BOOL)arg1; +@property(readonly) NSMutableDictionary *defaultsDictionary; +- (void)_queueAccountInfoDidChange; +- (void)setInfo:(id)arg1; +- (id)info; +- (void)_setAccountInfo:(id)arg1; +@property(copy) NSDictionary *accountInfo; +- (void)dealloc; +- (id)init; +- (id)initWithAccountInfo:(id)arg1; +@property(readonly) NSString *iaServiceType; +- (void)setCustomAuthentication:(unsigned int)arg1; +- (unsigned int)customAuthentication; +- (id)accountName; +- (void)setAccountName:(id)arg1; +- (id)loginName; +- (void)setLoginName:(id)arg1; +- (id)serverName; +- (void)setServerName:(id)arg1; +- (id)accountPassword; +- (void)setAccountPassword:(id)arg1; +- (unsigned int)accountType; + +// Remaining properties +@property(copy) NSString *externalHostname; +@property(readonly, nonatomic) NSString *internetAccountsUID; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFAccountStatus.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFAccountStatus.h new file mode 100644 index 00000000..2d29b0e4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFAccountStatus.h @@ -0,0 +1,61 @@ +/* + * 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 "MCActivityTarget.h" + +@class NSMapTable, NSMutableArray, NSMutableDictionary, NSMutableSet, NSTimer; + +@interface MFAccountStatus : NSObject +{ + NSMutableDictionary *_states; + NSMutableDictionary *_stateDetails; + struct __CFNetDiagnostic *_netDiagnostics; + NSMapTable *_clients; + NSMutableSet *_allRegisteredAccounts; + unsigned long long _allRegisteredTypes; + NSMutableArray *_accountRefreshQueue; + NSTimer *_refreshTimer; + BOOL _isRefreshingInternet; +} + ++ (id)sharedStatus; +- (void)_accountStatusUpdatedWithInfo:(id)arg1; +- (void)_refreshAccountStatus:(id)arg1; +- (void)_refreshInternetStatus; +- (void)_refreshAccounts:(id)arg1 andInternet:(BOOL)arg2 clearingStatus:(BOOL)arg3; +- (void)refreshStatusForClient:(id)arg1 forceRefresh:(BOOL)arg2; +- (void)refreshAndClearStatus:(BOOL)arg1; +- (void)_accountInfoChanged:(id)arg1; +- (void)_networkChanged:(id)arg1; +- (void)_timedRefresh:(id)arg1; +- (void)_setStatusDetails:(id)arg1 forAccount:(id)arg2; +- (id)accountStatusDetails:(id)arg1; +- (void)_setStatus:(long long)arg1 forAccount:(id)arg2; +- (long long)knownAccountStatus:(id)arg1; +- (long long)accountStatus:(id)arg1; +- (void)diagnoseInternetConnection; +- (void)_setInternetStatus:(long long)arg1; +- (long long)internetStatus; +- (id)_accountsForTypes:(unsigned long long)arg1; +- (id)_allRegisteredAccounts; +- (id)_registeredAccountsForClient:(id)arg1 onlyWithUnknownStatus:(BOOL)arg2; +- (id)registeredAccountsForClient:(id)arg1; +- (void)unregisterClient:(id)arg1; +- (void)registerAccounts:(id)arg1 forClient:(id)arg2; +- (void)registerAccountTypes:(unsigned long long)arg1 forClient:(id)arg2; +- (void)registerAccountTypes:(unsigned long long)arg1 accounts:(id)arg2 forClient:(id)arg3; +- (void)invalidate; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFAccountStorage.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFAccountStorage.h new file mode 100644 index 00000000..479b72c1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFAccountStorage.h @@ -0,0 +1,37 @@ +/* + * 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" + +@interface MFAccountStorage : NSObject +{ + struct _opaque_pthread_rwlock_t { + long long __sig; + char __opaque[192]; + } _rwLock; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)v2AccountsPlistName; +- (void)setInteger:(long long)arg1 forKey:(id)arg2; +- (long long)integerForKey:(id)arg1; +- (id)stringForKey:(id)arg1; +- (id)arrayForKey:(id)arg1; +- (BOOL)synchronize; +- (void)removeObjectForKey:(id)arg1; +- (void)setObject:(id)arg1 forKey:(id)arg2; +- (id)objectForKey:(id)arg1; +- (id)_accountsPlistPath; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFAddressManager.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFAddressManager.h new file mode 100644 index 00000000..e419947b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFAddressManager.h @@ -0,0 +1,63 @@ +/* + * 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 "ABImageClient.h" +#import "MCActivityTarget.h" + +@class MCInvocationQueue, NSCache, NSMutableDictionary, NSMutableSet, NSOperationQueue; + +@interface MFAddressManager : NSObject +{ + NSCache *_imageCache; + NSMutableDictionary *_emailsAwaitingImage; + NSMutableSet *_emailsWithoutImage; + MCInvocationQueue *_imageLoadingQueue; + NSOperationQueue *_imageCreationQueue; + NSMutableDictionary *_recordsCache; + NSMutableSet *_addressesWithNoRecords; + BOOL _needToTrimRecordCaches; +} + ++ (id)addressManager; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)groups; +- (void)consumeImageData:(id)arg1 forTag:(long long)arg2; +- (void)_fetchImageForAddress:(id)arg1; +- (id)imageForMailAddress:(id)arg1 fetchState:(unsigned long long *)arg2; +- (id)_addressBookRecordsForFirstName:(id)arg1 lastName:(id)arg2; +- (id)addressBookPersonForEmail:(id)arg1; +- (id)_addressBookRecordForEmail:(id)arg1; +- (void)removeRecentRecord:(id)arg1; +- (void)removeRecentAddresses:(id)arg1; +- (void)removeRecordFromAddressBook:(id)arg1 forRecent:(id)arg2; +- (id)addRecentToAddressBook:(id)arg1; +- (void)addAddresses:(id)arg1; +- (void)addRecentAddresses:(id)arg1 sendingAddress:(id)arg2; +- (void)_addAddresses:(id)arg1; +- (id)recordForUniqueId:(id)arg1; +- (void)_postPhotoChangedNotification; +- (void)_clearCachedImagesForRemovedRecords:(id)arg1; +- (void)_updateCachedImagesForRecords:(id)arg1; +- (void)_invalidateInsertedRecords:(id)arg1; +- (id)_addressesForRecords:(id)arg1; +- (void)_invalidateChangedRecords:(id)arg1; +- (void)_addressBookDidChange:(id)arg1; +- (void)_trimRecordCaches; +- (void)_trimRecordCachesAfterDelay; +- (id)bestRecordMatchingFormattedAddress:(id)arg1; +- (void)_loadAddressBookSynchronously; +- (id)loadAddressBookAsynchronously; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFAosImapAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFAosImapAccount.h new file mode 100644 index 00000000..09160b88 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFAosImapAccount.h @@ -0,0 +1,81 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFAosSmtpAccount, NSString; + +@interface MFAosImapAccount : MFIMAPAccount +{ + id _aoskitLock; + struct AOSAccount *_aoskitAccount; + struct AOSTransactionC *_mailPropertiesTransaction; + struct AOSTransactionC *_aliasesTransaction; + struct AOSTransactionC *_editAliasesURLTransaction; + MFAosSmtpAccount *_aosSmtpAccount; + BOOL _shouldBypassCache; +} + ++ (void)updateAllEmailAliases:(BOOL)arg1; ++ (id)defaultPathNameForAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)defaultPathNameForAccount; ++ (BOOL)defaultsToSSL; ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; +@property BOOL shouldBypassCache; // @synthesize shouldBypassCache=_shouldBypassCache; +- (void)migrateToNewAOSService; +- (void)openEditEmailAliasesURL; +- (void)updateEmailAliases; +- (void)_updateMailProperties; +- (void)_updateAliases:(BOOL)arg1; +- (id)_passwordFromKeychain; +- (void)_updateAoskitAccount; +- (void)_setDidUpdateToAppleToken:(BOOL)arg1; +- (BOOL)_didUpdateToAppleToken; +- (void)setDefaultAddress:(id)arg1; +- (void)_setEditAliasesURLTransaction:(struct AOSTransactionC *)arg1; +- (struct AOSTransactionC *)_copyEditAliasesURLTransaction; +- (void)_setAliasesTransaction:(struct AOSTransactionC *)arg1; +- (struct AOSTransactionC *)_copyAliasesTransaction; +- (void)_setMailPropertiesTransaction:(struct AOSTransactionC *)arg1; +- (struct AOSTransactionC *)_copyMailPropertiesTransaction; +- (void)_setAoskitAccount:(struct AOSAccount *)arg1; +- (struct AOSAccount *)_copyAoskitAccount; +@property(retain) NSString *aosDomain; +- (void)handleAlertResponse:(id)arg1; +- (void)presentOverQuotaAlert; +- (id)dynamicDeliveryAccount; +- (id)_replacementDeliveryAccountForDeliveryAccount:(id)arg1; +- (void)_removeDeliveryAccountIfNotInUse:(id)arg1; +- (void)setDeliveryAccount:(id)arg1; +- (id)deliveryAccount; +- (void)_setEmailAliases:(id)arg1; +- (id)emailAddresses; +- (id)rawEmailAddresses; +- (id)_URLPersistenceHostname; +- (id)iaSettingsIncludingPassword:(BOOL)arg1; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (BOOL)canAuthenticateWithScheme:(id)arg1 connection:(id)arg2; +- (void)setIsOffline:(BOOL)arg1; +- (id)appleAuthenticationToken; +- (id)applePersonID; +- (void)setSessionPassword:(id)arg1; +- (void)setPermanentPassword:(id)arg1; +- (id)permanentPassword; +- (void)setPassword:(id)arg1; +- (id)defaultsDictionary; +- (void)setUsername:(id)arg1; +- (void)setHostname:(id)arg1; +- (id)hostname; +- (void)completeDeferredInitialization; +- (void)_setAccountInfo:(id)arg1; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; +- (void)setLastSuccessfulAosSmtpPortNumber:(long long)arg1; +- (long long)lastSuccessfulAosSmtpPortNumber; +- (id)aoskitPropertyForKey:(struct __CFString *)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFAosSmtpAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFAosSmtpAccount.h new file mode 100644 index 00000000..24aed7c4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFAosSmtpAccount.h @@ -0,0 +1,81 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFAosImapAccount; + +@interface MFAosSmtpAccount : MFSMTPAccount +{ + MFAosImapAccount *_aosImapAccount; +} + ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (void)setShouldTryDefaultPorts:(BOOL)arg1; +- (BOOL)shouldTryDefaultPorts; +- (id)remoteMailAccountsEmployedBy; +- (void)setShouldUseAuthentication:(BOOL)arg1; +- (BOOL)shouldUseAuthentication; +- (void)setAssociatedAccount:(id)arg1; +- (id)associatedAccount; +- (BOOL)isDynamic; +- (id)identifier; +- (void)setValidationRequired:(BOOL)arg1; +- (BOOL)validationRequired; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (id)subscriptionURLLabel; +- (id)subscriptionURL; +- (id)supportURLLabel; +- (id)supportURL; +- (id)uniqueId; +- (void)setISPAccountID:(id)arg1; +- (id)ISPAccountID; +- (void)setPreferredAuthScheme:(id)arg1; +- (id)preferredAuthScheme; +- (void)setDomain:(id)arg1; +- (id)domain; +- (void)setUsesSSL:(BOOL)arg1; +- (BOOL)usesSSL; +- (id)appleAuthenticationToken; +- (id)applePersonID; +- (void)setSessionPassword:(id)arg1; +- (id)sessionPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)permanentPassword; +- (void)setPassword:(id)arg1; +- (id)password; +- (void)setUsername:(id)arg1; +- (id)username; +- (void)setPortNumber:(long long)arg1; +- (long long)portNumber; +- (void)setConfigureDynamically:(BOOL)arg1; +- (BOOL)configureDynamically; +- (void)setHostname:(id)arg1; +- (id)hostname; +- (BOOL)canAuthenticateWithScheme:(id)arg1 connection:(id)arg2; +- (BOOL)requiresAuthentication; +- (void)setInfo:(id)arg1; +- (id)info; +- (void)_setAccountInfo:(id)arg1; +- (void)removeAccountInfoObjectForKey:(id)arg1; +- (void)setAccountInfoObject:(id)arg1 forKey:(id)arg2; +- (void)updateAccountsFromPlist:(id)arg1 acceptedChanges:(id)arg2; +- (id)defaultsDictionary; +- (void)setIsInactivatedInsteadOfBeingDeleted:(BOOL)arg1; +- (BOOL)isInactivatedInsteadOfBeingDeleted; +- (id)offlineDisplayName; +- (void)setDisplayName; +- (id)displayName; +- (void)setStoredDisplayName; +- (id)storedDisplayName; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFAttachmentViewController.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFAttachmentViewController.h new file mode 100644 index 00000000..76547f70 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFAttachmentViewController.h @@ -0,0 +1,71 @@ +/* + * 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 "MCCIDURLProtocolDataProvider.h" +#import "NSCopying.h" + +@class DOMHTMLObjectElement, MCAttachment, NSArray, NSData, NSImage, NSMutableArray, NSString, NSURL; + +@interface MFAttachmentViewController : NSObject +{ + NSMutableArray *_attachmentViews; + BOOL _canBeDisplayedInline; + BOOL _canBeDisplayedInRegisteredViewer; + struct CGSize _originalImageSize; + BOOL _originalImageSizeHasBeenComputed; + NSImage *_inlineImage; + BOOL _isBeingDisplayedInline; + BOOL _isInvisible; + struct CGSize _previousTargetImageSize; + BOOL _isImageBeingResized; + MCAttachment *_attachment; + long long _domNodeWidth; + long long _domNodeHeight; + DOMHTMLObjectElement *_objectElement; + struct CGSize _targetImageSize; +} + ++ (Class)_viewProviderClassForMimeType:(id)arg1; ++ (void)registerViewingClass:(Class)arg1 forMimeTypes:(id)arg2; ++ (void)initialize; +@property(retain, nonatomic) DOMHTMLObjectElement *objectElement; // @synthesize objectElement=_objectElement; +@property long long domNodeHeight; // @synthesize domNodeHeight=_domNodeHeight; +@property long long domNodeWidth; // @synthesize domNodeWidth=_domNodeWidth; +@property(readonly) MCAttachment *attachment; // @synthesize attachment=_attachment; +@property(readonly) NSString *mimeType; +@property(readonly) NSURL *cidURL; +@property(readonly) NSData *data; +- (id)description; +- (void)forwardInvocation:(id)arg1; +- (id)methodSignatureForSelector:(SEL)arg1; +- (void)_attachmentDidFinishReading:(id)arg1; +- (void)_imageDataDidChange:(id)arg1; +- (id)iconImage; +- (id)inlineImage; +- (void)resizingFinished:(id)arg1 imageSize:(struct CGSize)arg2 fileExtension:(id)arg3 fileType:(unsigned int)arg4 maxImageSize:(struct CGSize)arg5; +- (void)resizingStarted:(struct CGSize)arg1; +@property(readonly) struct CGSize targetImageSize; // @synthesize targetImageSize=_targetImageSize; +- (struct CGSize)originalImageSizeWithOriginalImage:(id)arg1; +- (void)setInvisible:(BOOL)arg1; +- (BOOL)shouldDownloadAttachmentOnDisplay; +- (BOOL)shouldBeDisplayedInlineByDefault; +- (void)setCanBeDisplayedInline:(BOOL)arg1; +- (BOOL)canBeDisplayedInline; +@property BOOL isBeingDisplayedInline; +- (void)addAttachmentView:(id)arg1; +@property(readonly) NSArray *attachmentViews; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (id)initWithMessageAttachment:(id)arg1; +- (id)init; + +// Remaining properties +@property(readonly) long long fileSize; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFBackupManager.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFBackupManager.h new file mode 100644 index 00000000..590b4257 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFBackupManager.h @@ -0,0 +1,64 @@ +/* + * 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" + +@class MFMailbox, NSArray, NSDictionary, NSMapTable, NSMutableDictionary, NSString, NSURL; + +@interface MFBackupManager : NSObject +{ + MFMailbox *_topLevelRecoveryMailbox; + NSDictionary *_lastSavedTableOfContents; + NSMapTable *_mailboxBackupPaths; + NSMutableDictionary *_mailboxesWithKnownContents; + id _editableMessagesLock; + BOOL _registeredForEditableMessageNotifications; + NSArray *_messagePathsToRestore; + NSURL *_mailboxDirectoryToRestore; + NSString *_mailboxNameForRestoring; + id _timeMachineRestoreLock; +} + ++ (id)sharedManager; +- (id)backupMailboxesEnumerator; +- (id)backupPathForMailbox:(id)arg1 pathsCache:(id)arg2; +- (id)_backupPathForMailbox:(id)arg1 withParentPath:(id)arg2 pathsCache:(id)arg3; +- (id)backupPathForMailbox:(id)arg1; +- (BOOL)saveTableOfContents:(id)arg1; +- (id)tableOfContents; +- (void)_addMailbox:(id)arg1 toSection:(long long)arg2 sections:(id)arg3 messagePool:(id)arg4; +- (long long)_sectionForMailbox:(id)arg1; +- (id)_dictionaryForMessage:(id)arg1 includeRecipients:(BOOL)arg2; +- (id)_dictionaryForMailbox:(id)arg1 parent:(id)arg2 messagePool:(id)arg3; +- (id)_dictionaryForSection:(long long)arg1; +- (id)_expandedMailboxes:(id)arg1; +- (BOOL)_shouldSaveDisplayNameForMailbox:(id)arg1; +- (BOOL)shouldSaveMessagesForMailbox:(id)arg1; +- (id)_reducedPathFromFullPath:(id)arg1; +- (id)_reducedPathFromFullPath:(id)arg1 supportDirectory:(id)arg2; +- (id)_recoveryMailboxWithSuggestedName:(id)arg1 reuseMailbox:(BOOL)arg2; +- (id)_topLevelRecoveryMailbox; +- (void)setTopLevelRecoveryMailbox:(id)arg1; +- (BOOL)_restoreMailboxAtURL:(id)arg1 intoMailbox:(id)arg2 newMessages:(id)arg3; +- (BOOL)restoreMailboxesAtURL:(id)arg1 intoMailbox:(id)arg2 restoredMessages:(id)arg3; +- (id)restoreMailboxAtURL:(id)arg1 intoMailboxNamed:(id)arg2 postNotification:(BOOL)arg3; +- (void)prepareToRestoreMailboxAtURL:(id)arg1 intoMailboxNamed:(id)arg2; +- (id)restoreMessagesAtPaths:(id)arg1 intoMailboxNamed:(id)arg2 reuseMailbox:(BOOL)arg3 createdMailboxNamed:(id *)arg4 postNotification:(BOOL)arg5; +- (void)prepareToRestoreMessagesAtPaths:(id)arg1 intoMailboxNamed:(id)arg2; +- (long long)numberOfMessagesToBeRestored; +- (id)mailboxNameToBeRestored; +- (BOOL)hasPendingRestoreIsMailbox:(char *)arg1; +- (void)timeMachineRestoreFinished:(id)arg1; +- (void)performPendingRestore; +- (void)_setupDefaultTopLevelRecoveryMailbox; +- (void)editableMessagesWereDeleted:(id)arg1; +- (void)editableMessagesWereAdded:(id)arg1; +- (void)invalidateCaches; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFBerkeleyMbox.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFBerkeleyMbox.h new file mode 100644 index 00000000..919396ed --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFBerkeleyMbox.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSData, NSString; + +@interface MFBerkeleyMbox : MFMessageStore +{ + NSData *_mboxData; + NSString *_path; +} + ++ (BOOL)createEmptyStoreForPath:(id)arg1; ++ (BOOL)storeAtPathIsWritable:(id)arg1; ++ (BOOL)storeExistsForPath:(id)arg1; +- (void)fetchSynchronously; +- (id)_defaultRouterDestination; +- (void)doCompact; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (void)_resetAllMessages; +- (id)_mboxData; +- (id)_lockFilePath; +- (id)path; +- (void)writeUpdatedMessageDataToDisk; +- (void)dealloc; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2; +- (id)init; +- (id)initWithPath:(id)arg1 create:(BOOL)arg2 readOnly:(BOOL)arg3 account:(id)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFCachedMailboxInfo.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFCachedMailboxInfo.h new file mode 100644 index 00000000..69841149 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFCachedMailboxInfo.h @@ -0,0 +1,26 @@ +/* + * 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" + +@class MFMailbox; + +@interface MFCachedMailboxInfo : NSObject +{ + int _mailboxType; + long long _mailboxID; + MFMailbox *_mailbox; +} + +@property(retain, nonatomic) MFMailbox *mailbox; // @synthesize mailbox=_mailbox; +@property(nonatomic) int mailboxType; // @synthesize mailboxType=_mailboxType; +@property(nonatomic) long long mailboxID; // @synthesize mailboxID=_mailboxID; +- (void)updateWithMessage:(id)arg1; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFConversationCalculationContext.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFConversationCalculationContext.h new file mode 100644 index 00000000..c4262170 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFConversationCalculationContext.h @@ -0,0 +1,244 @@ +/* + * 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" + +@class MFLibraryMessage, MFPreparedStatement, MFSqliteHandle, NSData, NSHashTable, NSMutableDictionary, NSMutableSet; + +@interface MFConversationCalculationContext : NSObject +{ + NSHashTable *_participants; + MFPreparedStatement *_messageHasReferencesStatement; + MFPreparedStatement *_messageHasMessageIDStatement; + MFPreparedStatement *_conversationIDOfCloneStatement; + MFPreparedStatement *_conversationIDOfAutomatedAncestorWithReferencesStatement; + MFPreparedStatement *_conversationIDOfAutomatedPeerWithReferencesStatement; + MFPreparedStatement *_conversationIDOfAutomatedMessageWithoutReferencesStatement; + MFPreparedStatement *_conversationIDOfClosestAncestorStatement; + MFPreparedStatement *_peersOfMessageStatement; + MFPreparedStatement *_addMessageToConversationStatement; + MFPreparedStatement *_messagesInConversationStatement; + MFPreparedStatement *_descendantsToSplitFromConversationStatement; + MFPreparedStatement *_descendantsOfMessageStatement; + MFPreparedStatement *_descendantBelongsToSameConversationAsAncestorStatement; + MFPreparedStatement *_peersToSplitFromConversationStatement; + MFPreparedStatement *_fuzzyMessagesWithSameSubjectStatement; + MFPreparedStatement *_candidateMessagesForFuzzyMatchingStatement; + MFPreparedStatement *_fuzzyMessagesToSplitFromConversationStatement; + MFPreparedStatement *_recipientsForRowIDStatement; + MFPreparedStatement *_dateReceivedForRowIDStatement; + MFPreparedStatement *_senderForRowIDStatement; + MFPreparedStatement *_conversationIDForRowIDStatement; + MFPreparedStatement *_setFuzzyAncestorForRowIDStatement; + MFPreparedStatement *_subjectForRowIDStatement; + MFPreparedStatement *_automatedConversationTypeForRowIDStatement; + MFPreparedStatement *_clonesForRowIDStatement; + MFPreparedStatement *_countOfDistinctAutomatedConversationTypesForConversationIDStatement; + MFPreparedStatement *_maxConversationIDStatement; + MFPreparedStatement *_messagesMissingConversationPositionStatement; + MFPreparedStatement *_updateConversationPositionStatement; + MFPreparedStatement *_conversationPositionOfClosestDescendantStatement; + MFPreparedStatement *_conversationPositionOfClosestAncestorStatement; + BOOL _hasReferences; + BOOL _messageType; + BOOL _didTearDown; + BOOL _conversationsWereReset; + BOOL _recordConversationCalculationPerformanceMetrics; + BOOL _logConversationCalculationTrace; + int _rootStatus; + int _dateReceived; + int _automatedConversationType; + long long _rowID; + MFLibraryMessage *_message; + long long _subjectID; + unsigned long long _subjectLength; + NSData *_messageIDHeader; + long long _conversationID; + long long _mailbox; + long long _senderID; + MFSqliteHandle *_handle; + struct sqlite3 *_db; + NSMutableSet *_addedConversations; + NSMutableSet *_removedConversations; + NSMutableSet *_updatedConversations; + NSMutableDictionary *_oldConversationIDByMessage; + NSMutableDictionary *_currentConversationIDByMessage; + double _messageHasReferencesTime; + double _messageHasMessageIDTime; + double _conversationIDOfCloneTime; + double _conversationIDOfClosestAncestorTime; + double _descendantsOfMessagesTime; + double _peersOfMessagesTime; + double _fuzzyDescendantsToSplitTime; + double _conversationIDOfFuzzyAncestorTime; + double _descendantsOfMessageToSplitTime; + double _createNewConversationFromMessageTime; + double _addMessageToConversationTime; + double _mergeConversationsTime; + double _calculateConversationForMessageTotalTime; + double _conversationIDOfAutomatedMessageWithReferencesTime; + double _conversationIDOfAutomatedMessageWithoutReferencesTime; + double _fixupConversationPositionsTime; + unsigned long long _cloneCount; + unsigned long long _closestAncestorCount; + unsigned long long _descendantsFoundCount; + unsigned long long _peersFoundCount; + unsigned long long _fuzzyDescendantsToSplitCount; + unsigned long long _fuzzyAncestorCount; + unsigned long long _descendantsToSplitCount; + unsigned long long _newConversationCount; + unsigned long long _addMessageToConversationCount; + unsigned long long _conversationsSplitCount; + unsigned long long _conversationsMergeCount; + unsigned long long _messagesMergedCount; + unsigned long long _fuzzyMatchesCacheHits; + unsigned long long _fuzzyMatchesCacheMisses; + unsigned long long _automatedMessagesWithReferencesCount; + unsigned long long _automatedMessagesWithoutReferencesCount; + unsigned long long _conversationPositionInvalidRangeCount; + unsigned long long _conversationPositionInsertionPointUnavailableCount; + unsigned long long _conversationPositionRangeNormalCount; + unsigned long long _conversationPositionAdjustedForAncestorCount; + unsigned long long _conversationPositionAdjustedForDescendantCount; +} + ++ (void)addMessagesInDictionary:(id)arg1 toDictionary:(id)arg2; +@property(nonatomic) unsigned long long conversationPositionAdjustedForDescendantCount; // @synthesize conversationPositionAdjustedForDescendantCount=_conversationPositionAdjustedForDescendantCount; +@property(nonatomic) unsigned long long conversationPositionAdjustedForAncestorCount; // @synthesize conversationPositionAdjustedForAncestorCount=_conversationPositionAdjustedForAncestorCount; +@property(nonatomic) unsigned long long conversationPositionRangeNormalCount; // @synthesize conversationPositionRangeNormalCount=_conversationPositionRangeNormalCount; +@property(nonatomic) unsigned long long conversationPositionInsertionPointUnavailableCount; // @synthesize conversationPositionInsertionPointUnavailableCount=_conversationPositionInsertionPointUnavailableCount; +@property(nonatomic) unsigned long long conversationPositionInvalidRangeCount; // @synthesize conversationPositionInvalidRangeCount=_conversationPositionInvalidRangeCount; +@property(nonatomic) unsigned long long automatedMessagesWithoutReferencesCount; // @synthesize automatedMessagesWithoutReferencesCount=_automatedMessagesWithoutReferencesCount; +@property(nonatomic) unsigned long long automatedMessagesWithReferencesCount; // @synthesize automatedMessagesWithReferencesCount=_automatedMessagesWithReferencesCount; +@property(nonatomic) unsigned long long fuzzyMatchesCacheMisses; // @synthesize fuzzyMatchesCacheMisses=_fuzzyMatchesCacheMisses; +@property(nonatomic) unsigned long long fuzzyMatchesCacheHits; // @synthesize fuzzyMatchesCacheHits=_fuzzyMatchesCacheHits; +@property(nonatomic) unsigned long long messagesMergedCount; // @synthesize messagesMergedCount=_messagesMergedCount; +@property(nonatomic) unsigned long long conversationsMergeCount; // @synthesize conversationsMergeCount=_conversationsMergeCount; +@property(nonatomic) unsigned long long conversationsSplitCount; // @synthesize conversationsSplitCount=_conversationsSplitCount; +@property(nonatomic) unsigned long long addMessageToConversationCount; // @synthesize addMessageToConversationCount=_addMessageToConversationCount; +@property(nonatomic) unsigned long long newConversationCount; // @synthesize newConversationCount=_newConversationCount; +@property(nonatomic) unsigned long long descendantsToSplitCount; // @synthesize descendantsToSplitCount=_descendantsToSplitCount; +@property(nonatomic) unsigned long long fuzzyAncestorCount; // @synthesize fuzzyAncestorCount=_fuzzyAncestorCount; +@property(nonatomic) unsigned long long fuzzyDescendantsToSplitCount; // @synthesize fuzzyDescendantsToSplitCount=_fuzzyDescendantsToSplitCount; +@property(nonatomic) unsigned long long peersFoundCount; // @synthesize peersFoundCount=_peersFoundCount; +@property(nonatomic) unsigned long long descendantsFoundCount; // @synthesize descendantsFoundCount=_descendantsFoundCount; +@property(nonatomic) unsigned long long closestAncestorCount; // @synthesize closestAncestorCount=_closestAncestorCount; +@property(nonatomic) unsigned long long cloneCount; // @synthesize cloneCount=_cloneCount; +@property(nonatomic) double fixupConversationPositionsTime; // @synthesize fixupConversationPositionsTime=_fixupConversationPositionsTime; +@property(nonatomic) double conversationIDOfAutomatedMessageWithoutReferencesTime; // @synthesize conversationIDOfAutomatedMessageWithoutReferencesTime=_conversationIDOfAutomatedMessageWithoutReferencesTime; +@property(nonatomic) double conversationIDOfAutomatedMessageWithReferencesTime; // @synthesize conversationIDOfAutomatedMessageWithReferencesTime=_conversationIDOfAutomatedMessageWithReferencesTime; +@property(nonatomic) double calculateConversationForMessageTotalTime; // @synthesize calculateConversationForMessageTotalTime=_calculateConversationForMessageTotalTime; +@property(nonatomic) double mergeConversationsTime; // @synthesize mergeConversationsTime=_mergeConversationsTime; +@property(nonatomic) double addMessageToConversationTime; // @synthesize addMessageToConversationTime=_addMessageToConversationTime; +@property(nonatomic) double createNewConversationFromMessageTime; // @synthesize createNewConversationFromMessageTime=_createNewConversationFromMessageTime; +@property(nonatomic) double descendantsOfMessageToSplitTime; // @synthesize descendantsOfMessageToSplitTime=_descendantsOfMessageToSplitTime; +@property(nonatomic) double conversationIDOfFuzzyAncestorTime; // @synthesize conversationIDOfFuzzyAncestorTime=_conversationIDOfFuzzyAncestorTime; +@property(nonatomic) double fuzzyDescendantsToSplitTime; // @synthesize fuzzyDescendantsToSplitTime=_fuzzyDescendantsToSplitTime; +@property(nonatomic) double peersOfMessagesTime; // @synthesize peersOfMessagesTime=_peersOfMessagesTime; +@property(nonatomic) double descendantsOfMessagesTime; // @synthesize descendantsOfMessagesTime=_descendantsOfMessagesTime; +@property(nonatomic) double conversationIDOfClosestAncestorTime; // @synthesize conversationIDOfClosestAncestorTime=_conversationIDOfClosestAncestorTime; +@property(nonatomic) double conversationIDOfCloneTime; // @synthesize conversationIDOfCloneTime=_conversationIDOfCloneTime; +@property(nonatomic) double messageHasMessageIDTime; // @synthesize messageHasMessageIDTime=_messageHasMessageIDTime; +@property(nonatomic) double messageHasReferencesTime; // @synthesize messageHasReferencesTime=_messageHasReferencesTime; +@property(retain, nonatomic) NSMutableDictionary *currentConversationIDByMessage; // @synthesize currentConversationIDByMessage=_currentConversationIDByMessage; +@property(retain, nonatomic) NSMutableDictionary *oldConversationIDByMessage; // @synthesize oldConversationIDByMessage=_oldConversationIDByMessage; +@property(retain, nonatomic) NSMutableSet *updatedConversations; // @synthesize updatedConversations=_updatedConversations; +@property(retain, nonatomic) NSMutableSet *removedConversations; // @synthesize removedConversations=_removedConversations; +@property(retain, nonatomic) NSMutableSet *addedConversations; // @synthesize addedConversations=_addedConversations; +@property(nonatomic) BOOL logConversationCalculationTrace; // @synthesize logConversationCalculationTrace=_logConversationCalculationTrace; +@property(nonatomic) BOOL recordConversationCalculationPerformanceMetrics; // @synthesize recordConversationCalculationPerformanceMetrics=_recordConversationCalculationPerformanceMetrics; +@property(nonatomic) BOOL conversationsWereReset; // @synthesize conversationsWereReset=_conversationsWereReset; +@property(readonly, nonatomic) BOOL didTearDown; // @synthesize didTearDown=_didTearDown; +@property(readonly, nonatomic) struct sqlite3 *db; // @synthesize db=_db; +@property(readonly, nonatomic) MFSqliteHandle *handle; // @synthesize handle=_handle; +@property(nonatomic) int automatedConversationType; // @synthesize automatedConversationType=_automatedConversationType; +@property(nonatomic) int dateReceived; // @synthesize dateReceived=_dateReceived; +@property(nonatomic) long long senderID; // @synthesize senderID=_senderID; +@property(nonatomic) long long mailbox; // @synthesize mailbox=_mailbox; +@property(nonatomic) BOOL messageType; // @synthesize messageType=_messageType; +@property(nonatomic) long long conversationID; // @synthesize conversationID=_conversationID; +@property(retain, nonatomic) NSData *messageIDHeader; // @synthesize messageIDHeader=_messageIDHeader; +@property(nonatomic) BOOL hasReferences; // @synthesize hasReferences=_hasReferences; +@property(nonatomic) int rootStatus; // @synthesize rootStatus=_rootStatus; +@property(nonatomic) unsigned long long subjectLength; // @synthesize subjectLength=_subjectLength; +@property(nonatomic) long long subjectID; // @synthesize subjectID=_subjectID; +@property(retain, nonatomic) MFLibraryMessage *message; // @synthesize message=_message; +@property(nonatomic) long long rowID; // @synthesize rowID=_rowID; +- (id)summaryForConversation:(long long)arg1; +- (BOOL)automatedConversationTypeIsConsistentForConversation:(long long)arg1; +- (int)conversationPositionOfClosestDescendantForRowID:(long long)arg1 inConversation:(long long)arg2; +- (int)conversationPositionOfClosestAncestorForRowID:(long long)arg1 inConversation:(long long)arg2; +- (int)automatedConversationTypeForRowID:(long long)arg1; +- (id)clonesForRowID:(long long)arg1; +@property(retain, nonatomic) NSHashTable *participants; +- (id)_participantsForRowID:(long long)arg1; +- (id)_recipientsForRowID:(long long)arg1; +- (long long)conversationIDForRowID:(long long)arg1; +- (unsigned long long)subjectLengthForRowID:(long long)arg1; +- (long long)_senderForRowID:(long long)arg1; +- (int)_dateReceivedForRowID:(long long)arg1; +- (void)_setFuzzyAncestor:(long long)arg1 forRowID:(long long)arg2; +- (id)_conversationsWithFuzzyDescendantsExcludingConversations:(id)arg1; +- (id)_recursiveDescendantsInConversations:(id)arg1; +- (id)descendantsOfMessageToSplit; +- (BOOL)_descendant:(long long)arg1 belongsToSameConversationAsAncestor:(long long)arg2; +- (long long)conversationIDOfClosestDescendantExcludingConversationID:(long long)arg1; +- (id)descendantsOfMessageExcludingConversationID:(long long)arg1; +- (id)fuzzyDescendantsToSplitExcludingConversationIDs:(id)arg1; +- (unsigned long long)_messagesWithSubject:(long long)arg1 participantsByRowID:(id)arg2 conversationIDByRowID:(id)arg3 dateReceivedByRowID:(id)arg4; +- (long long)_conversationIDUsingFuzzyHeuristicOfRowID:(long long)arg1 withSubject:(long long)arg2 subjectLength:(unsigned long long)arg3 sender:(long long)arg4 rootStatus:(int)arg5 participantsByRowID:(id)arg6 conversationIDByRowID:(id)arg7 dateReceivedByRowID:(id)arg8 resultRowID:(long long *)arg9 abortOnMatchBetterThanRowID:(long long)arg10; +- (long long)_rowIDOfBestFuzzyAncestorForMessage:(long long)arg1 subjectID:(long long)arg2 subjectLength:(unsigned long long)arg3 dateReceived:(int)arg4 senderID:(long long)arg5 rootStatus:(int)arg6 participantsByRowID:(id)arg7 conversationIDByRowID:(id)arg8 dateReceivedByRowID:(id)arg9 currentFuzzyAncestor:(long long)arg10 abortOnMatchBetterThanRowID:(long long)arg11 conversationIDOfBestFuzzyAncestor:(long long *)arg12; +- (id)_messagesInConversations:(id)arg1 count:(unsigned long long *)arg2; +- (id)peersOfMessageExcludingAncestorConversationID:(long long)arg1 descendantConversationID:(long long)arg2; +- (long long)conversationIDOfAutomatedMessageWithReferencesWithRowID:(long long *)arg1; +- (long long)conversationIDOfAutomatedMessageWithoutReferences; +- (long long)conversationIDOfFuzzyAncestorWithRowID:(long long *)arg1; +- (long long)conversationIDOfClosestAncestorWithRowID:(long long *)arg1; +- (long long)conversationIDOfCloneWithRowID:(long long *)arg1; +- (BOOL)messageHasMessageID; +- (BOOL)messageHasReferences; +- (void)conversationWasUpdated:(long long)arg1; +- (void)conversationWasRemoved:(long long)arg1; +- (void)conversationWasAdded:(long long)arg1; +@property(retain, nonatomic) MFPreparedStatement *conversationPositionOfClosestAncestorStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationPositionOfClosestDescendantStatement; +@property(retain, nonatomic) MFPreparedStatement *updateConversationPositionStatement; +@property(retain, nonatomic) MFPreparedStatement *messagesMissingConversationPositionStatement; +@property(retain, nonatomic) MFPreparedStatement *maxConversationIDStatement; +@property(retain, nonatomic) MFPreparedStatement *countOfDistinctAutomatedConversationTypesForConversationIDStatement; +@property(retain, nonatomic) MFPreparedStatement *clonesForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *automatedConversationTypeForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *subjectForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *setFuzzyAncestorForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationIDForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *senderForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *dateReceivedForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *recipientsForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *candidateMessagesForFuzzyMatchingStatement; +@property(retain, nonatomic) MFPreparedStatement *fuzzyMessagesWithSameSubjectStatement; +@property(retain, nonatomic) MFPreparedStatement *fuzzyMessagesToSplitFromConversationStatement; +@property(retain, nonatomic) MFPreparedStatement *peersToSplitFromConversationStatement; +@property(retain, nonatomic) MFPreparedStatement *descendantBelongsToSameConversationAsAncestorStatement; +@property(retain, nonatomic) MFPreparedStatement *descendantsOfMessageStatement; +@property(retain, nonatomic) MFPreparedStatement *descendantsToSplitFromConversationStatement; +@property(retain, nonatomic) MFPreparedStatement *messagesInConversationStatement; +@property(retain, nonatomic) MFPreparedStatement *addMessageToConversationStatement; +@property(retain, nonatomic) MFPreparedStatement *peersOfMessageStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationIDOfClosestAncestorStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationIDOfAutomatedMessageWithoutReferencesStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationIDOfAutomatedPeerWithReferencesStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationIDOfAutomatedAncestorWithReferencesStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationIDOfCloneStatement; +@property(retain, nonatomic) MFPreparedStatement *messageHasMessageIDStatement; +@property(retain, nonatomic) MFPreparedStatement *messageHasReferencesStatement; +- (id)description; +- (void)dealloc; +- (void)tearDown; +- (void)resetForNewRow; +- (id)initWithHandle:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFConversationCalculator.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFConversationCalculator.h new file mode 100644 index 00000000..4508620b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFConversationCalculator.h @@ -0,0 +1,51 @@ +/* + * 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" + +@interface MFConversationCalculator : NSObject +{ + BOOL _logConversationCalculationPerformance; + BOOL _logConversationCalculationTrace; + BOOL _logConversationCalculationSubjectPrefixTrace; + BOOL _forceConversationSplits; + BOOL _alwaysValidateConversations; + BOOL _recordConversationCalculationPerformanceMetrics; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(nonatomic) BOOL recordConversationCalculationPerformanceMetrics; // @synthesize recordConversationCalculationPerformanceMetrics=_recordConversationCalculationPerformanceMetrics; +@property(nonatomic) BOOL alwaysValidateConversations; // @synthesize alwaysValidateConversations=_alwaysValidateConversations; +@property(nonatomic) BOOL forceConversationSplits; // @synthesize forceConversationSplits=_forceConversationSplits; +@property(nonatomic) BOOL logConversationCalculationSubjectPrefixTrace; // @synthesize logConversationCalculationSubjectPrefixTrace=_logConversationCalculationSubjectPrefixTrace; +@property(nonatomic) BOOL logConversationCalculationTrace; // @synthesize logConversationCalculationTrace=_logConversationCalculationTrace; +@property(nonatomic) BOOL logConversationCalculationPerformance; // @synthesize logConversationCalculationPerformance=_logConversationCalculationPerformance; +- (void)updateConversationRootsWithHandle:(id)arg1 onlyForMessagesMissingRoots:(BOOL)arg2; +- (BOOL)_isRootSubjectPrefix:(id)arg1; +- (BOOL)isRootMessageSubject:(id)arg1; +- (void)_updatePrefixWithHandle:(id)arg1 withNewPrefix:(id)arg2 forMessagesWithSubject:(long long)arg3; +- (BOOL)updateSubjectPrefixesWithHandle:(id)arg1 onlyForMessagesMissingConversations:(BOOL)arg2; +- (int)_conversationPositionForMessageWithRowID:(long long)arg1 dateReceived:(int)arg2 conversationID:(long long)arg3 context:(id)arg4; +- (void)_fixupConversationPositionsForConversation:(id)arg1; +- (void)_mergeMessagesInConversations:(id)arg1 withConversation:(id)arg2; +- (void)_addMessage:(id)arg1 toConversation:(long long)arg2 withConversationPosition:(int)arg3; +- (long long)_createNewConversationFromMessage:(id)arg1; +- (void)_calculateConversationForMessage:(id)arg1; +- (void)_updateAllRowsMissingRootValueWithHandle:(id)arg1; +- (void)_updateAllRowsMissingFuzzyAncestorWithHandle:(id)arg1; +- (void)updateAllRowsMissingConversationsWithHandle:(id)arg1 conversationUserInfo:(id)arg2 conversationsWereReset:(BOOL)arg3 progressDelegate:(id)arg4; +- (void)resetConversationIDForMessages:(id)arg1 withHandle:(id)arg2; +- (void)updateConversationsIfNeededWithHandle:(id)arg1; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFCriterion.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFCriterion.h new file mode 100644 index 00000000..1c2fbc59 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFCriterion.h @@ -0,0 +1,125 @@ +/* + * 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" + +@class NSArray, NSString; + +@interface MFCriterion : NSObject +{ + NSArray *_criteria; + NSString *_expression; + NSString *_uniqueId; + NSString *_cachedAccountURLForSyncConflictResolution; + BOOL _dateIsRelative; + BOOL _allCriteriaMustBeSatisfied; + BOOL _originatedFromSearchSuggestion; + int _specialMailboxType; + NSString *_name; + NSString *_criterionIdentifier; + long long _criterionType; + long long _qualifier; + long long _dateUnits; + unsigned long long _knownLimit; +} + ++ (BOOL)criteria:(id)arg1 areEqualToCriteria:(id)arg2; ++ (id)stringForCriterionType:(long long)arg1; ++ (long long)criterionTypeForString:(id)arg1; ++ (id)queryScopePathForMailbox:(id)arg1; ++ (void)logSpotlightStatus; ++ (BOOL)logCriterionConversionErrors; ++ (void)setLogSpotlightCallbacks:(BOOL)arg1; ++ (BOOL)logSpotlightCallbacks; ++ (void)setLogSpotlightQueries:(BOOL)arg1; ++ (BOOL)logSpotlightQueries; ++ (BOOL)searchUsingOnlySpotlight; ++ (id)compoundCriterionWithCriteria:(id)arg1; ++ (id)defaultsArrayFromCriteria:(id)arg1; ++ (id)criteriaFromDefaultsArray:(id)arg1 removingRecognizedKeys:(BOOL)arg2; ++ (id)criteriaFromDefaultsArray:(id)arg1; +@property BOOL originatedFromSearchSuggestion; // @synthesize originatedFromSearchSuggestion=_originatedFromSearchSuggestion; +@property unsigned long long knownLimit; // @synthesize knownLimit=_knownLimit; +@property int specialMailboxType; // @synthesize specialMailboxType=_specialMailboxType; +@property BOOL allCriteriaMustBeSatisfied; // @synthesize allCriteriaMustBeSatisfied=_allCriteriaMustBeSatisfied; +@property BOOL dateIsRelative; // @synthesize dateIsRelative=_dateIsRelative; +@property long long dateUnits; // @synthesize dateUnits=_dateUnits; +@property long long qualifier; // @synthesize qualifier=_qualifier; +@property(copy) NSString *expression; // @synthesize expression=_expression; +@property(copy) NSString *name; // @synthesize name=_name; +- (long long)smartMailboxesVersion; +- (long long)version; +- (BOOL)containsJunkMailboxCriterion; +- (BOOL)isEqualToCriterion:(id)arg1; +- (BOOL)isValid:(id *)arg1 options:(unsigned int)arg2; +- (id)description; +- (id)descriptionWithDepth:(unsigned long long)arg1; +@property(copy, nonatomic) NSArray *criteria; // @synthesize criteria=_criteria; +- (id)simplifiedCriterion; +- (id)simplifyOnce; +- (id)stringForRuleQualifier:(long long)arg1; +- (long long)ruleQualifierForString:(id)arg1; +- (id)utiForMessageAttachmentType:(BOOL)arg1; +- (id)_searchTermForExpression:(id)arg1 withQualifer:(long long)arg2 exactMatch:(BOOL)arg3; +- (id)_comparisonOperatorForQualifier:(long long)arg1; +- (id)_spotlightQueryStringForCompoundCriterion; +- (id)_spotlightStringForHeaderQueryString:(id)arg1 withSpotlightAttribute:(id)arg2; +- (id)escapedString:(id)arg1; +- (id)_spotlightQueryStringForAnyRecipientCriterion; +- (id)_spotlightQueryStringForHeaderCriterion; +- (id)_spotlightQueryStringForContainsAttachmentsCriterion; +- (id)_spotlightQueryStringForAttachmentTypeCriterion; +- (id)_spotlightQueryStringForBodyCriterion; +- (id)_spotlightDateQueryStringForAttribute:(id)arg1; +- (id)_spotlightQueryStringForPriorityCriterion; +- (id)_spotlightQueryStringForFlagCriterion; +- (id)_spotlightQueryStringForFlaggedStatusCriterion; +- (id)_spotlightQueryStringForGroupOrVIPSendersCriterion; +- (id)_spotlightQueryStringForAnyAttachmentCriterion; +- (id)_spotlightQueryStringForAccountCriterion; +- (id)_spotlightQueryStringForGmailLabelCriterion; +- (id)_spotlightQueryStringForMailboxCriterion; +- (id)_spotlightQueryStringForNotInAJunkOrTrashMailboxCriterion; +- (id)_spotlightQueryStringForInASpecialMailboxCriterionWithQualifier:(long long)arg1; +- (id)_spotlightQueryStringForMessageID; +- (id)spotlightQueryString; +- (BOOL)_isCompoundCriterionSpotlightCriterion; +- (BOOL)isSpotlightCriterion; +- (BOOL)isSpotlightOnlyCriterion; +- (BOOL)containsMailboxCriterion; +- (BOOL)containsWhereFromsCriterion; +- (BOOL)containsSpotlightOnlyCriterion; +- (BOOL)containsSpotlightCriterion; +- (id)_qualifierString; +@property(copy) NSString *criterionIdentifier; // @synthesize criterionIdentifier=_criterionIdentifier; +- (void)_setCriterionIdentifier:(id)arg1; +@property long long criterionType; // @synthesize criterionType=_criterionType; +- (BOOL)hasExpression; +- (id)dictionaryRepresentation; +- (id)initWithDictionary:(id)arg1; +- (id)initWithCriterion:(id)arg1 expression:(id)arg2; +- (id)init; +- (id)initWithDictionary:(id)arg1 andRemoveRecognizedKeysIfMutable:(BOOL)arg2; +- (void)dealloc; +- (id)compoundCriterionBySplittingExpression; +- (id)convertToGmailLabelCriterionIfNeeded; +- (unsigned long long)bestBaseTable; +- (id)SQLExpressionWithTables:(unsigned long long *)arg1 baseTable:(unsigned long long)arg2; +- (id)criterionForSpotlight; +- (id)criterionForSQLIgnoringGmail; +- (id)criterionForSQL; +- (id)criterionValueForNotEqualRelativeDates:(long long *)arg1; +- (id)criterionExpressionForEqualRelativeDates:(CDStruct_c53ccb4e *)arg1 depth:(unsigned long long)arg2 enclosingSmartMailboxes:(id)arg3; +- (BOOL)isExpressibleInTigerSchema; +- (id)SQLExpressionWithContext:(CDStruct_c53ccb4e *)arg1 depth:(unsigned long long)arg2 enclosingSmartMailboxes:(id)arg3; +- (BOOL)hasNumberCriterion; +- (id)criterionByMergingSpotlightCriteria; +- (id)fixOnceWithExpandedSmartMailboxes:(id)arg1 forSpotlight:(BOOL)arg2; +- (id)criterionForSearchWithExpandedSmartMailboxes:(id)arg1 forSpotlight:(BOOL)arg2 convertingGmailCriteria:(BOOL)arg3; +- (id)targetSmartMailbox; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFCrossProcessLock.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFCrossProcessLock.h new file mode 100644 index 00000000..befe1ec2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFCrossProcessLock.h @@ -0,0 +1,31 @@ +/* + * 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 "NSLocking.h" + +@class NSLock, NSMachPort, NSString; + +@interface MFCrossProcessLock : NSObject +{ + NSString *_identifier; + NSMachPort *_port; + NSLock *_lock; + long long _lockCount; +} + ++ (id)defaultMailCrossProcessLock; +- (id)description; +- (BOOL)lockBeforeDate:(id)arg1; +- (BOOL)tryLock; +- (void)unlock; +- (void)lock; +- (void)dealloc; +- (id)initWithIdentifier:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFDatabaseRecoverer.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFDatabaseRecoverer.h new file mode 100644 index 00000000..7f74a82f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFDatabaseRecoverer.h @@ -0,0 +1,40 @@ +/* + * 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" + +@class NSCondition, NSString; + +@interface MFDatabaseRecoverer : NSObject +{ + NSString *_path; + long long _type; + NSCondition *_analysisCondition; + long long _analysisResult; +} + ++ (BOOL)moveDatabaseFromPath:(id)arg1 toPath:(id)arg2; ++ (id)moveDatabaseToUniquePath:(id)arg1; +@property long long analysisResult; // @synthesize analysisResult=_analysisResult; +@property(retain) NSCondition *analysisCondition; // @synthesize analysisCondition=_analysisCondition; +@property long long type; // @synthesize type=_type; +@property(retain) NSString *path; // @synthesize path=_path; +- (void)_moveToOriginalPath:(id)arg1; +- (id)_moveToUniquePath; +- (void)_removeLocks; +- (void)recover; +- (void)removeLockFile; +- (BOOL)lockFileFound; +- (BOOL)aRemoteApplicationIsAccessingTheDatabase; +- (BOOL)fileLocked; +- (void)analyzeBusyCondition; +- (void)_analyzeBusyCondition; +- (void)dealloc; +- (id)init; +- (id)initWithPath:(id)arg1 type:(long long)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFDefaults.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFDefaults.h new file mode 100644 index 00000000..47548d04 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFDefaults.h @@ -0,0 +1,67 @@ +/* + * 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" + +@interface MFDefaults : NSObject +{ +} + ++ (id)defaultNameForFlagColor:(BOOL)arg1; ++ (unsigned long long)deferredPreferredWindowBackingLocation; ++ (unsigned long long)preferredWindowBackingLocation; ++ (void)setPreferredWindowBackingLocation:(unsigned long long)arg1; ++ (void)resetLocaleCache; ++ (id)localeCache; ++ (void)setupLoggingDefaults; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (void)initialize; +- (BOOL)synchronize; +- (long long)integerForKey:(id)arg1; +- (BOOL)boolForKey:(id)arg1; +- (void)setBool:(BOOL)arg1 forKey:(id)arg2; +- (id)objectForKey:(id)arg1; +- (void)setObject:(id)arg1 forKey:(id)arg2; +- (void)removeObjectForKey:(id)arg1; +- (id)stringForKey:(id)arg1; +- (id)dictionaryForKey:(id)arg1; +- (id)unrenderedUserStyleSheet; +- (id)userStyleSheetURLIsForCompose:(BOOL)arg1; +- (id)todosMailbox; +- (id)trashMailboxName; +- (id)notesMailbox; +- (id)draftsMailbox; +- (id)archiveMailbox; +- (id)adjustAccountPathForV2:(id)arg1; +- (id)_adjustPathForV2:(id)arg1 usingPrefix:(id)arg2; +- (id)defaultMailDirectory; +- (id)mailDataDirectoryName; +- (id)mailDataDirectory; +- (id)mailDataSupportDirectory; +- (id)supportDirectory; +- (void)_setSupportDirectoryForTesting:(id)arg1; +- (id)nonContainerizedMailRootDirectory; +- (id)baseMailDirectory; +- (id)unresolvedBaseMailDirectory; +- (id)tildeUnresolvedBaseMailDirectory; +- (id)mailAccountDirectory; +- (BOOL)mf_v1Layout; +- (void)mf_resetV1Layout; +- (BOOL)_calculateShouldUseV1Layout; +- (void)setComposeMode:(long long)arg1; +- (long long)composeMode; +- (void)setHeaderDetailLevel:(long long)arg1; +- (long long)headerDetailLevel; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFDeliveryAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFDeliveryAccount.h new file mode 100644 index 00000000..31974354 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFDeliveryAccount.h @@ -0,0 +1,50 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFDeliveryAccount : MFAccount +{ +} + ++ (id)accountWithHostname:(id)arg1 username:(id)arg2 lookForExistingAccounts:(BOOL)arg3 addToDeliveryAccountsIfNeeded:(BOOL)arg4; ++ (id)accountWithHostname:(id)arg1 username:(id)arg2; ++ (id)existingAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)accountForHeaders:(id)arg1; ++ (id)accountWithWhichToSendMessage:(id)arg1; ++ (id)accountWithDomain:(id)arg1; ++ (id)_accountFromCollection:(id)arg1 withIdentifier:(id)arg2; ++ (id)accountWithIdentifier:(id)arg1; ++ (id)accountWithUniqueId:(id)arg1; ++ (id)_identifierWithHostname:(id)arg1 username:(id)arg2; ++ (void)saveAccountInfoToDefaults; ++ (void)_postDeliveryAccountsHaveChanged; ++ (void)unregisterDynamicAccount:(id)arg1; ++ (void)registerDynamicAccount:(id)arg1; ++ (void)removeDeliveryAccount:(id)arg1; ++ (void)sortDeliveryAccountsByUniqueID:(id)arg1; ++ (void)insertObjectInDeliveryAccounts:(id)arg1 atIndex:(unsigned long long)arg2; ++ (void)addDeliveryAccount:(id)arg1; ++ (void)setDeliveryAccounts:(id)arg1; ++ (id)deliveryAccounts; ++ (id)_deliveryAccountsIncludingUnknownTypes; ++ (void)reloadDeliveryAccounts; ++ (void)initialize; +- (id)remoteMailAccountsEmployedBy; +- (void)setMaximumMessageBytes:(unsigned long long)arg1; +- (unsigned long long)maximumMessageBytes; +- (void)setShouldUseAuthentication:(BOOL)arg1; +- (BOOL)shouldUseAuthentication; +- (id)identifier; +- (id)displayName; +- (void)setAssociatedAccount:(id)arg1; +- (id)associatedAccount; +- (BOOL)isDynamic; +- (Class)delivererClass; +- (void)_setAccountInfo:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSAccount.h new file mode 100644 index 00000000..72a340d2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSAccount.h @@ -0,0 +1,178 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFEWSConnection, MFEWSDeliveryAccount, MFEWSGateway, NSDictionary, NSMutableDictionary, NSOperationQueue, NSString, NSTimer, NSURL, NSUUID; + +@interface MFEWSAccount : MFRemoteStoreAccount +{ + MFEWSConnection *_connection; + MFEWSDeliveryAccount *_ewsDeliveryAccount; + NSMutableDictionary *_folderIdsToMailboxes; + id _connectionLock; + id _folderHierarchySyncLock; + NSOperationQueue *_ewsQueue; + BOOL _useExternalURL; + MFEWSGateway *_gateway; + NSDictionary *_distinguishedFolderIdsAndMailboxTypes; + double _lastFullFetchDuration; + double _lastFullFetchTime; + NSUUID *_messageTracerUUID; + NSString *_syncIssuesEntryID; + long long _externalAudienceType; + NSTimer *_autodiscoveryTimer; + NSOperationQueue *_autodiscoverQueue; +} + ++ (void)resetAllFolderHierarchySyncStates; ++ (id)existingAccountFromMailWithRootFolderId:(id)arg1; ++ (id)_contactsAccountWithRootFolderId:(id)arg1; ++ (BOOL)contactsAccountExistsWithRootFolderId:(id)arg1; ++ (BOOL)contactsAccountExistsForHostname:(id)arg1 username:(id)arg2; ++ (id)_contactsAccountForHostname:(id)arg1 username:(id)arg2; ++ (id)_calendarAccountWithRootFolderId:(id)arg1; ++ (BOOL)calendarAccountExistsWithRootFolderId:(id)arg1; ++ (BOOL)calendarAccountExistsForHostname:(id)arg1 username:(id)arg2; ++ (id)_calendarAccountForHostname:(id)arg1 username:(id)arg2; ++ (id)keyPathsForValuesAffectingExternalConnectionURL; ++ (id)keyPathsForValuesAffectingInternalConnectionURL; ++ (id)keyPathsForValuesAffecting_URLExternalConnectionScheme; ++ (id)keyPathsForValuesAffecting_URLInternalConnectionScheme; ++ (id)defaultPathNameForAccount; ++ (id)accountTypeString; +@property(readonly, nonatomic) NSOperationQueue *autodiscoverQueue; // @synthesize autodiscoverQueue=_autodiscoverQueue; +@property(retain) NSTimer *autodiscoveryTimer; // @synthesize autodiscoveryTimer=_autodiscoveryTimer; +@property long long externalAudienceType; // @synthesize externalAudienceType=_externalAudienceType; +@property(retain) NSString *syncIssuesEntryID; // @synthesize syncIssuesEntryID=_syncIssuesEntryID; +@property BOOL useExternalURL; // @synthesize useExternalURL=_useExternalURL; +@property(retain) NSUUID *messageTracerUUID; // @synthesize messageTracerUUID=_messageTracerUUID; +@property double lastFullFetchTime; // @synthesize lastFullFetchTime=_lastFullFetchTime; +@property double lastFullFetchDuration; // @synthesize lastFullFetchDuration=_lastFullFetchDuration; +@property(retain) NSDictionary *distinguishedFolderIdsAndMailboxTypes; // @synthesize distinguishedFolderIdsAndMailboxTypes=_distinguishedFolderIdsAndMailboxTypes; +@property(retain, nonatomic) MFEWSGateway *gateway; // @synthesize gateway=_gateway; +- (void)messageTraceEWSParameters; +- (BOOL)_setEWSError:(id)arg1; +- (id)_loadFolderIdForMailbox:(id)arg1; +- (void)_clearFolderId:(id)arg1 forMailbox:(id)arg2; +- (void)_saveFolderId:(id)arg1 forMailbox:(id)arg2; +- (void)_setMailbox:(id)arg1 forFolderId:(id)arg2; +- (id)_mailboxForFolderId:(id)arg1; +- (void)_setupMailbox:(id)arg1 forFolderId:(id)arg2; +- (void)updateEWSOfflineIdsToRealIds:(id)arg1 forFolders:(BOOL)arg2; +- (id)deletedEWSIdStringsFromStrings:(id)arg1 inFolderWithIdString:(id)arg2; +- (void)undeleteMessagesWithEWSItemIdStrings:(id)arg1 fromFolderWithIdString:(id)arg2; +- (void)deleteEWSItemsWithIdStrings:(id)arg1 fromFolderWithIdString:(id)arg2; +- (void)deleteMailboxForEWSFolderIdString:(id)arg1; +- (void)updateMailboxForEWSFolder:(id)arg1; +- (BOOL)_isSyncIssuesFolder:(id)arg1; +- (void)createMailboxFromEWSFolder:(id)arg1; +- (id)mailboxNameForFolderIdString:(id)arg1; +- (void)messageDeliveryDidFinish:(id)arg1; +- (id)remoteTaskQueue; +- (BOOL)_redoAutodiscoverySynchronously; +- (void)_kickOffReautodiscovery:(id)arg1; +@property BOOL isReautodiscoveryDisabled; +- (void)_handleConnectionError:(id)arg1 isUnsupportedVersionError:(char *)arg2 shouldRedoAutodiscovery:(char *)arg3; +- (BOOL)_shouldHideMailbox:(id)arg1 withType:(int)arg2; +- (void)setUserOofSettingsState:(long long)arg1 internalReply:(id)arg2 externalReply:(id)arg3 startTime:(id)arg4 endTime:(id)arg5; +- (void)getUserOofSettings; +- (BOOL)_isSameAsCalGroup:(id)arg1; +@property(retain) MFEWSConnection *connection; +@property(readonly) NSURL *connectionURL; +- (void)_setConnectionURL:(id)arg1 isExternal:(BOOL)arg2; +- (id)_connectionURL:(BOOL)arg1; +@property NSURL *externalConnectionURL; +@property NSURL *internalConnectionURL; +@property(retain) NSURL *lastUsedAutodiscoverURL; +@property(retain) NSString *rootFolderId; +@property(retain) NSString *folderHierarchySyncState; +- (void)_setServerPath:(id)arg1 accountInfoKey:(id)arg2; +- (id)_serverPathWithAccountInfoKey:(id)arg1; +@property(copy) NSString *externalServerPath; +@property(copy) NSString *internalServerPath; +@property BOOL externalUsesSSL; +@property long long externalPortNumber; +- (void)setExternalHostname:(id)arg1; +- (id)externalHostname; +- (BOOL)storeJunkOnServerDefault; +- (id)_specialMailboxWithType:(int)arg1 create:(BOOL)arg2 isLocal:(BOOL)arg3; +- (id)dynamicDeliveryAccount; +- (void)setDeliveryAccount:(id)arg1; +- (id)deliveryAccount; +- (id)_folderNameForMailboxDisplayName:(id)arg1; +- (id)_mailboxDisplayNameForFolderName:(id)arg1; +- (id)validNameForMailbox:(id)arg1 fromDisplayName:(id)arg2 error:(id *)arg3; +- (BOOL)supportsSlashesInMailboxName; +- (BOOL)_deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (BOOL)canMailboxBeDeleted:(id)arg1; +- (BOOL)renameMailbox:(id)arg1 newDisplayName:(id)arg2 parent:(id)arg3; +- (BOOL)canMailboxBeRenamed:(id)arg1; +- (id)_createMailboxWithParent:(id)arg1 displayName:(id)arg2 localizedDisplayName:(id)arg3 type:(int)arg4; +- (id)createMailboxWithParent:(id)arg1 displayName:(id)arg2 localizedDisplayName:(id)arg3; +- (void)setEmailAddresses:(id)arg1; +- (BOOL)_readMailboxCache; +- (void)_setSpecialMailboxRelativePath:(id)arg1 forType:(int)arg2; +- (id)_specialMailboxRelativePathForType:(int)arg1; +- (id)_defaultSpecialMailboxRelativePathForType:(int)arg1; +- (BOOL)_setChildren:(id)arg1 forMailbox:(id)arg2; +- (void)_synchronouslyLoadListingForParent:(id)arg1; +- (BOOL)_synchronizeMailboxListHighPriority:(BOOL)arg1; +- (BOOL)_supportsMailboxListInitialization; +@property(readonly) unsigned long long maximumConcurrentSyncFolderOperationCount; +- (void)_synchronizeMailboxesSynchronously; +- (BOOL)_shouldSynchronizeMailbox:(id)arg1; +- (void)synchronizeAllMailboxes; +- (void)fetchSynchronouslyIsAuto:(id)arg1; +- (void)respondToHostBecomingReachable; +- (BOOL)deleteConvertsStoreToFolder; +- (id)primaryMailbox; +- (void)setShouldMoveDeletedMessagesToTrash:(BOOL)arg1; +- (BOOL)shouldMoveDeletedMessagesToTrash; +- (id)mailboxPathExtension; +- (BOOL)defaultShouldShowNotesInInbox; +- (BOOL)supportsRichTextNotes; +- (Class)storeClassForMailbox:(id)arg1; +- (id)_URLExternalConnectionScheme; +- (id)_URLInternalConnectionScheme; +- (id)_URLPersistenceScheme; +- (void)setIsOffline:(BOOL)arg1; +- (void)releaseAllConnections; +- (id)authSchemesForConnection:(id)arg1; +- (BOOL)canAuthenticateWithScheme:(id)arg1 connection:(id)arg2; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (void)_setPassword:(id)arg1 persistence:(unsigned long long)arg2; +- (id)_passwordWithPersistence:(unsigned long long)arg1; +- (void)setSessionPassword:(id)arg1; +- (id)sessionPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)permanentPassword; +- (void)setPortNumber:(long long)arg1; +- (void)setUsesSSL:(BOOL)arg1; +- (id)defaultsDictionary; +- (void)_setAccountInfo:(id)arg1; +- (void)setPreferredAuthScheme:(id)arg1; +- (id)preferredAuthScheme; +- (void)setDomain:(id)arg1; +- (id)domain; +- (void)setSecurityLayerType:(long long)arg1; +- (long long)securityLayerType; +- (BOOL)requiresAuthentication; +- (void *)keychainProtocol; +- (long long)defaultSecurePortNumber; +- (long long)defaultPortNumber; +- (id)standardSSLPorts; +- (id)standardPorts; +- (id)iaServiceType; +- (id)syncableURLString; +- (id)_infoForMatchingURL:(id)arg1; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSConnection.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSConnection.h new file mode 100644 index 00000000..8b5061be --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSConnection.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCConnection.h" + +#import "EWSExchangeServiceBindingDelegate.h" + +@class EWSExchangeServiceBinding, MFEWSAccount; + +@interface MFEWSConnection : MCConnection +{ + EWSExchangeServiceBinding *_binding; +} + +@property(retain) EWSExchangeServiceBinding *binding; // @synthesize binding=_binding; +- (void)exchangeServiceBinding:(id)arg1 didReceiveCertificateError:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (void)disconnectWithError:(id)arg1; +- (id)_sendMessage:(id)arg1 error:(id *)arg2; +- (void)_handleServerBusyError:(id)arg1; +- (id)sendMessage:(id)arg1 forRequest:(id)arg2; +- (void)disconnect; +- (void)quit; +- (BOOL)isValid; +- (BOOL)reconnect; +- (void)_setupConnectionErrorForMonitorWithPort:(long long)arg1 usingSSL:(BOOL)arg2; +- (id)_fetchRootFolderId:(id *)arg1; +- (id)_connectAndAuthenticateDiscoveringBestSettings:(BOOL)arg1; +- (BOOL)authenticate; +- (BOOL)connectDiscoveringBestSettings:(BOOL)arg1; +@property MFEWSAccount *account; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCopyItemsRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCopyItemsRequestOperation.h new file mode 100644 index 00000000..b1b2c7f8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCopyItemsRequestOperation.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class NSArray, NSString; + +@interface MFEWSCopyItemsRequestOperation : MFEWSRequestOperation +{ + NSString *_sourceEWSFolderIdString; + NSString *_destinationEWSFolderIdString; + NSArray *_EWSItemIds; + NSArray *_offlineCreatedEWSItemIdStrings; +} + ++ (Class)classForResponse; +@property(copy) NSArray *offlineCreatedEWSItemIdStrings; // @synthesize offlineCreatedEWSItemIdStrings=_offlineCreatedEWSItemIdStrings; +@property(readonly, nonatomic) NSArray *EWSItemIds; // @synthesize EWSItemIds=_EWSItemIds; +@property(readonly, nonatomic) NSString *destinationEWSFolderIdString; // @synthesize destinationEWSFolderIdString=_destinationEWSFolderIdString; +@property(readonly, nonatomic) NSString *sourceEWSFolderIdString; // @synthesize sourceEWSFolderIdString=_sourceEWSFolderIdString; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setupOfflineResponse; +- (id)prepareRequest; +- (id)activityString; +- (void)_ewsCopyItemsRequestOperationCommonInitWithEWSItemIds:(id)arg1 sourceIdString:(id)arg2 destinationIdString:(id)arg3; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithEWSItemIds:(id)arg1 sourceIdString:(id)arg2 destinationIdString:(id)arg3 gateway:(id)arg4 errorHandler:(id)arg5; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCopyItemsResponseOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCopyItemsResponseOperation.h new file mode 100644 index 00000000..8c55420c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCopyItemsResponseOperation.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFEWSCopyItemsResponseOperation : MFEWSResponseOperation +{ + unsigned long long _expectedResponseCount; + NSArray *_newEWSItemIdStrings; +} + +@property(copy) NSArray *destinationEWSItemIdStrings; // @synthesize destinationEWSItemIdStrings=_newEWSItemIdStrings; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateEventReplyRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateEventReplyRequestOperation.h new file mode 100644 index 00000000..93a9feee --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateEventReplyRequestOperation.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFEWSGetItemsResponseOperation, NSString; + +@interface MFEWSCreateEventReplyRequestOperation : MFEWSCreateItemRequestOperation +{ + BOOL _messageResponseType; + NSString *_messageMeetingItemIdString; + MFEWSGetItemsResponseOperation *_getItemsResponse; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) MFEWSGetItemsResponseOperation *getItemsResponse; // @synthesize getItemsResponse=_getItemsResponse; +@property(readonly, nonatomic) BOOL messageResponseType; // @synthesize messageResponseType=_messageResponseType; +@property(readonly, nonatomic) NSString *messageMeetingItemIdString; // @synthesize messageMeetingItemIdString=_messageMeetingItemIdString; +- (id)prepareRequest; +- (void)dealloc; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithFolderIdString:(id)arg1 messageType:(BOOL)arg2 disposition:(long long)arg3 gateway:(id)arg4 errorHandler:(id)arg5; +- (void)_ewsCreateEventReplyRequestOperationCommonInitWithItemIdString:(id)arg1 responseType:(BOOL)arg2; +- (id)initWithItemIdString:(id)arg1 folderIdString:(id)arg2 messageType:(BOOL)arg3 responseType:(BOOL)arg4 disposition:(long long)arg5 gateway:(id)arg6 errorHandler:(id)arg7; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateEventReplyResponseOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateEventReplyResponseOperation.h new file mode 100644 index 00000000..eb2419fd --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateEventReplyResponseOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFEWSCreateEventReplyResponseOperation : MFEWSCreateItemResponseOperation +{ +} + +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateFolderRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateFolderRequestOperation.h new file mode 100644 index 00000000..c4896bc5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateFolderRequestOperation.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class NSString; + +@interface MFEWSCreateFolderRequestOperation : MFEWSRequestOperation +{ + int _mailboxType; + NSString *_parentEWSFolderIdString; + NSString *_offlineCreatedEWSFolderIdString; + NSString *_folderName; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) int mailboxType; // @synthesize mailboxType=_mailboxType; +@property(readonly, nonatomic) NSString *folderName; // @synthesize folderName=_folderName; +@property(copy) NSString *offlineCreatedEWSFolderIdString; // @synthesize offlineCreatedEWSFolderIdString=_offlineCreatedEWSFolderIdString; +@property(readonly, nonatomic) NSString *parentEWSFolderIdString; // @synthesize parentEWSFolderIdString=_parentEWSFolderIdString; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setupOfflineResponse; +- (id)prepareRequest; +- (BOOL)isFolderRequest; +- (id)activityString; +- (id)copyWithUpdatedNameCount:(unsigned long long)arg1; +- (void)dealloc; +- (void)_ewsCreateFolderRequestOperationCommonInitWithParentFolderIdString:(id)arg1 name:(id)arg2 mailboxType:(int)arg3; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithParentEWSFolderIdString:(id)arg1 name:(id)arg2 mailboxType:(int)arg3 gateway:(id)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateFolderResponseOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateFolderResponseOperation.h new file mode 100644 index 00000000..6624871d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateFolderResponseOperation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface MFEWSCreateFolderResponseOperation : MFEWSResponseOperation +{ + NSString *_createdFolderId; +} + +@property(copy) NSString *createdFolderId; // @synthesize createdFolderId=_createdFolderId; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateItemRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateItemRequestOperation.h new file mode 100644 index 00000000..4d176e41 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateItemRequestOperation.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class NSString; + +@interface MFEWSCreateItemRequestOperation : MFEWSRequestOperation +{ + BOOL _messageType; + BOOL _wroteOfflineData; + NSString *_EWSFolderIdString; + long long _disposition; + NSString *_offlineCreatedEWSItemIdString; +} + ++ (Class)classForResponse; +@property BOOL wroteOfflineData; // @synthesize wroteOfflineData=_wroteOfflineData; +@property(retain) NSString *offlineCreatedEWSItemIdString; // @synthesize offlineCreatedEWSItemIdString=_offlineCreatedEWSItemIdString; +@property(readonly, nonatomic) long long disposition; // @synthesize disposition=_disposition; +@property(readonly, nonatomic) BOOL messageType; // @synthesize messageType=_messageType; +@property(readonly, nonatomic) NSString *EWSFolderIdString; // @synthesize EWSFolderIdString=_EWSFolderIdString; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setupOfflineResponse; +- (id)activityString; +- (void)dealloc; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)_ewsCreateItemRequestOperationCommonInitWithFolderIdString:(id)arg1 messageType:(BOOL)arg2 disposition:(long long)arg3; +- (id)initWithFolderIdString:(id)arg1 messageType:(BOOL)arg2 disposition:(long long)arg3 gateway:(id)arg4 errorHandler:(id)arg5; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateItemResponseOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateItemResponseOperation.h new file mode 100644 index 00000000..f33ea953 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateItemResponseOperation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface MFEWSCreateItemResponseOperation : MFEWSResponseOperation +{ + NSString *_itemId; +} + +@property(copy) NSString *itemId; // @synthesize itemId=_itemId; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateMessageRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateMessageRequestOperation.h new file mode 100644 index 00000000..71b1f804 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSCreateMessageRequestOperation.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class MCMessage, MFEWSGetItemsResponseOperation, NSData, NSDictionary, NSString; + +@interface MFEWSCreateMessageRequestOperation : MFEWSCreateItemRequestOperation +{ + unsigned int _flags; + MCMessage *_message; + NSData *_data; + NSString *_sender; + NSString *_existingItemIdString; + NSDictionary *_recipientsByHeaderKey; + MFEWSGetItemsResponseOperation *_getItemsResponse; +} + +@property(readonly, nonatomic) MFEWSGetItemsResponseOperation *getItemsResponse; // @synthesize getItemsResponse=_getItemsResponse; +@property(readonly, nonatomic) NSDictionary *recipientsByHeaderKey; // @synthesize recipientsByHeaderKey=_recipientsByHeaderKey; +@property(copy, nonatomic) NSString *existingItemIdString; // @synthesize existingItemIdString=_existingItemIdString; +@property(readonly, nonatomic) NSString *sender; // @synthesize sender=_sender; +@property(readonly, nonatomic) unsigned int flags; // @synthesize flags=_flags; +@property(readonly, nonatomic) NSData *data; // @synthesize data=_data; +@property(readonly, nonatomic) MCMessage *message; // @synthesize message=_message; +- (id)prepareRequest; +- (void)dealloc; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithFolderIdString:(id)arg1 messageType:(BOOL)arg2 disposition:(long long)arg3 gateway:(id)arg4 errorHandler:(id)arg5; +- (void)_ewsCreateMessageRequestOperationCommonInitWithMessage:(id)arg1 data:(id)arg2 flags:(unsigned int)arg3 existingItemIdString:(id)arg4 sender:(id)arg5 recipientsByHeaderKey:(id)arg6; +- (id)initWithMessage:(id)arg1 data:(id)arg2 folderIdString:(id)arg3 messageType:(BOOL)arg4 flags:(unsigned int)arg5 existingItemIdString:(id)arg6 sender:(id)arg7 recipientsByHeaderKey:(id)arg8 disposition:(long long)arg9 gateway:(id)arg10 errorHandler:(id)arg11; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSDeleteFolderRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSDeleteFolderRequestOperation.h new file mode 100644 index 00000000..e21201fe --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSDeleteFolderRequestOperation.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class NSString; + +@interface MFEWSDeleteFolderRequestOperation : MFEWSRequestOperation +{ + NSString *_folderIdString; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) NSString *folderIdString; // @synthesize folderIdString=_folderIdString; +- (void)setupOfflineResponse; +- (id)prepareRequest; +- (BOOL)isFolderRequest; +- (id)activityString; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (void)_ewsDeleteFolderRequestOperationCommonInitWithEWSFolderIdString:(id)arg1; +- (id)initWithEWSFolderIdString:(id)arg1 gateway:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSDeleteItemsRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSDeleteItemsRequestOperation.h new file mode 100644 index 00000000..08fd125a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSDeleteItemsRequestOperation.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class NSArray, NSString; + +@interface MFEWSDeleteItemsRequestOperation : MFEWSRequestOperation +{ + NSArray *_EWSItemIds; + NSString *_folderIdString; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) NSString *folderIdString; // @synthesize folderIdString=_folderIdString; +@property(readonly, nonatomic) NSArray *EWSItemIds; // @synthesize EWSItemIds=_EWSItemIds; +- (void)setupOfflineResponse; +- (id)prepareRequest; +- (id)activityString; +- (void)_ewsDeleteItemsRequestOperationCommonInitWithEWSItemIds:(id)arg1 folderIdString:(id)arg2; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithEWSItemIds:(id)arg1 folderIdString:(id)arg2 gateway:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSDeliverer.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSDeliverer.h new file mode 100644 index 00000000..7f1c9ce3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSDeliverer.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "MFEWSErrorHandler.h" + +@class MCError; + +@interface MFEWSDeliverer : MFMessageDeliverer +{ + MCError *_error; +} + +@property(retain) MCError *error; // @synthesize error=_error; +- (void)handleEWSError:(id)arg1; +- (long long)deliverSynchronously; +- (id)headersForDelivery; +- (Class)deliveryClass; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSDeliveryAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSDeliveryAccount.h new file mode 100644 index 00000000..bc54a82f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSDeliveryAccount.h @@ -0,0 +1,98 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFEWSAccount; + +@interface MFEWSDeliveryAccount : MFDeliveryAccount +{ + MFEWSAccount *_ewsAccount; + BOOL _stripsFromHeaderWhenSending; +} + ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; +@property BOOL stripsFromHeaderWhenSending; // @synthesize stripsFromHeaderWhenSending=_stripsFromHeaderWhenSending; +- (id)remoteMailAccountsEmployedBy; +- (void)setShouldUseAuthentication:(BOOL)arg1; +- (BOOL)shouldUseAuthentication; +- (void)setAssociatedAccount:(id)arg1; +- (id)associatedAccount; +- (BOOL)isDynamic; +- (Class)delivererClass; +- (id)identifier; +- (void)setValidationRequired:(BOOL)arg1; +- (BOOL)validationRequired; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (void)validateConnections; +- (id)accountTypeString; +- (id)subscriptionURLLabel; +- (id)subscriptionURL; +- (id)supportURLLabel; +- (id)supportURL; +- (BOOL)isValid; +- (BOOL)canGoOffline; +- (void)setIsWillingToGoOnline:(BOOL)arg1; +- (BOOL)isWillingToGoOnline; +- (void)setIsOffline:(BOOL)arg1; +- (BOOL)isOffline; +- (long long)defaultSecurePortNumber; +- (long long)defaultPortNumber; +- (id)standardSSLPorts; +- (id)standardPorts; +- (BOOL)requiresAuthentication; +- (id)saslProfileName; +- (void)setAccountInfo:(id)arg1; +- (id)accountInfo; +- (id)uniqueId; +- (void)setISPAccountID:(id)arg1; +- (id)ISPAccountID; +- (void)setPreferredAuthScheme:(id)arg1; +- (id)preferredAuthScheme; +- (void)setDomain:(id)arg1; +- (id)domain; +- (void)setSecurityLayerType:(long long)arg1; +- (long long)securityLayerType; +- (void)setHostname:(id)arg1; +- (id)hostname; +- (void)setUsesSSL:(BOOL)arg1; +- (BOOL)usesSSL; +- (void)setPortNumber:(long long)arg1; +- (long long)portNumber; +- (id)appleAuthenticationToken; +- (id)applePersonID; +- (void)setSessionPassword:(id)arg1; +- (id)sessionPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)permanentPassword; +- (void)setPassword:(id)arg1; +- (id)password; +- (void)setUsername:(id)arg1; +- (id)username; +- (void)setInfo:(id)arg1; +- (id)info; +- (void)_setAccountInfo:(id)arg1; +- (void)removeAccountInfoObjectForKey:(id)arg1; +- (void)setAccountInfoObject:(id)arg1 forKey:(id)arg2; +- (void)releaseAllConnections; +- (void)updateAccountsFromPlist:(id)arg1 acceptedChanges:(id)arg2; +- (id)defaultsDictionary; +- (void)setIsInactivatedInsteadOfBeingDeleted:(BOOL)arg1; +- (BOOL)isInactivatedInsteadOfBeingDeleted; +- (id)offlineDisplayName; +- (void)setDisplayName; +- (id)displayName; +- (void)setStoredDisplayName; +- (id)storedDisplayName; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSErrorHandler-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSErrorHandler-Protocol.h new file mode 100644 index 00000000..4e098246 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSErrorHandler-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol MFEWSErrorHandler +- (void)handleEWSError:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSFindItemsRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSFindItemsRequestOperation.h new file mode 100644 index 00000000..7252375d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSFindItemsRequestOperation.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class EWSSearchExpressionType, NSArray; + +@interface MFEWSFindItemsRequestOperation : MFEWSRequestOperation +{ + NSArray *_additionalProperties; + NSArray *_EWSFolderIdStrings; + EWSSearchExpressionType *_searchExpression; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) EWSSearchExpressionType *searchExpression; // @synthesize searchExpression=_searchExpression; +@property(readonly, nonatomic) NSArray *EWSFolderIdStrings; // @synthesize EWSFolderIdStrings=_EWSFolderIdStrings; +@property(readonly, nonatomic) NSArray *additionalProperties; // @synthesize additionalProperties=_additionalProperties; +- (id)prepareRequest; +- (id)activityString; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithSearchExpression:(id)arg1 EWSFolderIdStrings:(id)arg2 additionalProperties:(id)arg3 gateway:(id)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSFindItemsResponseOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSFindItemsResponseOperation.h new file mode 100644 index 00000000..6e78b56c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSFindItemsResponseOperation.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray, NSDictionary; + +@interface MFEWSFindItemsResponseOperation : MFEWSResponseOperation +{ + NSDictionary *_rootFoldersByEWSFolderId; + NSArray *_EWSFolderIds; +} + +@property(retain, nonatomic) NSArray *EWSFolderIds; // @synthesize EWSFolderIds=_EWSFolderIds; +@property(retain, nonatomic) NSDictionary *rootFoldersByEWSFolderId; +- (id)rootFolderForEWSFolderId:(id)arg1; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGateway.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGateway.h new file mode 100644 index 00000000..586e5a33 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGateway.h @@ -0,0 +1,97 @@ +/* + * 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 "NSCoding.h" + +@class MFEWSAccount, MFEWSConnection, NSDictionary, NSMutableArray, NSMutableDictionary, NSOperationQueue; + +@interface MFEWSGateway : NSObject +{ + NSMutableDictionary *_pendingSyncOperations; + NSMutableDictionary *_headersByItemIdStringForSync; + MFEWSAccount *_account; + NSOperationQueue *_requestResponseQueue; + NSOperationQueue *_syncOperationQueue; + NSMutableArray *_offlineRequests; + NSDictionary *_savedOfflineToRealEWSIdStrings; + NSOperationQueue *_rulesQueue; +} + ++ (id)newTemporaryItemId; +@property(retain, nonatomic) NSOperationQueue *rulesQueue; // @synthesize rulesQueue=_rulesQueue; +@property(retain, nonatomic) NSDictionary *savedOfflineToRealEWSIdStrings; // @synthesize savedOfflineToRealEWSIdStrings=_savedOfflineToRealEWSIdStrings; +@property(retain, nonatomic) NSMutableArray *offlineRequests; // @synthesize offlineRequests=_offlineRequests; +@property(retain, nonatomic) NSOperationQueue *syncOperationQueue; // @synthesize syncOperationQueue=_syncOperationQueue; +@property(retain, nonatomic) NSOperationQueue *requestResponseQueue; // @synthesize requestResponseQueue=_requestResponseQueue; +@property(nonatomic) MFEWSAccount *account; // @synthesize account=_account; +- (id)fetchCopyOfSyncIssuesEntryID; +- (void)_logPendingSyncOperations:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(readonly) unsigned long long maxRequestsToSend; +- (void)_chunkItemsToSend:(id)arg1 applyToBlock:(id)arg2; +- (void)setOofState:(long long)arg1 internalReply:(id)arg2 externalReply:(id)arg3 startTime:(id)arg4 endTime:(id)arg5 externalAudienceType:(long long)arg6; +- (void)getOofSettings; +- (CDStruct_1dee9796)fetchUsageInfoForEWSFolderIdString:(id)arg1; +- (void)addOfflineToRealEWSIdStrings:(id)arg1 forRequest:(id)arg2; +- (id)resolvedIdStringForIdString:(id)arg1; +- (BOOL)deleteMailboxWithEWSFolderIdString:(id)arg1 error:(id *)arg2; +- (BOOL)moveMailboxWithEWSFolderIdString:(id)arg1 to:(id)arg2 error:(id *)arg3; +- (BOOL)renameMailboxWithEWSFolderIdString:(id)arg1 to:(id)arg2 error:(id *)arg3; +- (id)createMailboxWithParentEWSFolderIdString:(id)arg1 name:(id)arg2 mailboxType:(int)arg3 error:(id *)arg4; +- (void)_fetchMeetingCancellationMessages:(id)arg1 errorHandler:(id)arg2; +- (void)_fetchMeetingRequestMessages:(id)arg1 errorHandler:(id)arg2; +- (void)undeleteMessageForFailedCreateEventResponse:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2 inStore:(id)arg3 errorHandler:(id)arg4; +- (id)copyMessagesWithEWSItemIds:(id)arg1 fromFolderWithIdString:(id)arg2 toFolderWithIdString:(id)arg3 synchronously:(BOOL)arg4 errorHandler:(id)arg5; +- (void)setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2 inFolderWithEWSIdString:(id)arg3 errorHandler:(id)arg4; +- (void)deleteMessagesWithEWSItemIds:(id)arg1 fromFolderWithEWSIdString:(id)arg2 synchronously:(BOOL)arg3; +- (id)appendMessage:(id)arg1 withData:(id)arg2 toEWSFolderWithIdString:(id)arg3 messageType:(BOOL)arg4 flags:(unsigned int)arg5 sender:(id)arg6 recipientsByHeaderKey:(id)arg7 send:(BOOL)arg8 errorHandler:(id)arg9; +- (void)_cacheDataForLibraryMessages:(id)arg1 store:(id)arg2 folderIdString:(id)arg3 errorHandler:(id)arg4; +- (void)cacheDataForLibraryMessages:(id)arg1 store:(id)arg2 folderIdString:(id)arg3 errorHandler:(id)arg4; +- (id)_EWSItemTypesWithBodyDataForMessages:(id)arg1 errorHandler:(id)arg2; +- (id)fetchMimeDataForMessage:(id)arg1 errorHandler:(id)arg2; +- (void)_saveData:(id)arg1 forMessage:(id)arg2 isPartial:(BOOL)arg3 updateMetadata:(BOOL)arg4; +- (void)_cancelWriteSyncStateOperationForFolderIdString:(id)arg1 withSyncState:(id)arg2; +- (void)removeIdStringsForMessagesThatSynced:(id)arg1 fromFolderWithIdString:(id)arg2; +- (void)concludeSyncOfFolderItemsFromFolderIdString:(id)arg1; +- (void)_updateMessagesLocallyFromSync:(id)arg1 inStore:(id)arg2 withFolderIdString:(id)arg3 newMessageIDs:(id)arg4 newSyncState:(id)arg5; +- (void)updateMessagesLocallyFromSync:(id)arg1 inStore:(id)arg2 withFolderIdString:(id)arg3 newMessageIDs:(id)arg4 newSyncState:(id)arg5; +- (void)routeMessagesAndAddToLibrary:(id)arg1 toStore:(id)arg2; +- (void)setHeaders:(id)arg1 forItemIdString:(id)arg2; +- (void)setEWSIdStringsBlockingSyncCompletion:(id)arg1 syncState:(id)arg2 forFolderIdString:(id)arg3; +- (void)_handleSyncedMessagesWithoutHeaders:(id)arg1 inFolderIdString:(id)arg2 store:(id)arg3 newSyncState:(id)arg4; +- (id)_syncFolderItemsFromTargetFolderIdType:(id)arg1 syncState:(id)arg2 forStore:(id)arg3 includesLastItem:(char *)arg4; +- (id)syncFolderItemsFromFolderIdString:(id)arg1 syncState:(id)arg2 forStore:(id)arg3; +- (id)_syncFolderHierarchyWithSyncState:(id)arg1 includesLastItem:(char *)arg2; +- (id)syncFolderHierarchyWithSyncState:(id)arg1; +@property(readonly) MFEWSConnection *connection; +- (id)_offlineCachePathForDataWithItemIdString:(id)arg1; +- (id)_offlineCachePathForMessageWithItemIdString:(id)arg1; +- (id)_offlineCachePath; +- (void)removeMessageAndDataFromOfflineCacheForEWSItemIdString:(id)arg1; +- (void)retrieveMessageFromOfflineCache:(id *)arg1 data:(id *)arg2 forItemIdString:(id)arg3; +- (BOOL)writeMessageToOfflineCache:(id)arg1 data:(id)arg2 forItemIdString:(id)arg3; +- (void)playbackRequestsFromOfflineCacheWithConnection:(id)arg1 error:(id *)arg2; +- (void)_addDeleteRequestToOfflineCache:(id)arg1; +- (void)_addCreateRequestToOfflineCache:(id)arg1; +- (void)_saveOfflineCache; +- (void)saveRequestToOfflineCache:(id)arg1; +- (id)fetchDistinguishedFolderIdsWithConnection:(id)arg1; +- (void)takeRequestOffline:(id)arg1 error:(id)arg2; +- (void)sendMessage:(id)arg1 forRequest:(id)arg2; +- (void)addError:(id)arg1 withHandler:(id)arg2; +- (void)addResponse:(id)arg1; +- (void)addRequest:(id)arg1; +- (void)dealloc; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)init; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetFolderRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetFolderRequestOperation.h new file mode 100644 index 00000000..93d9d670 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetFolderRequestOperation.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFEWSGetFolderRequestOperation : MFEWSRequestOperation +{ + BOOL _fetchEntryIDs; + NSArray *_EWSFolderIds; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) NSArray *EWSFolderIds; // @synthesize EWSFolderIds=_EWSFolderIds; +- (id)prepareRequest; +- (BOOL)isFolderRequest; +- (id)activityString; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithEWSFolderIds:(id)arg1 gateway:(id)arg2 errorHandler:(id)arg3 fetchEntryIDs:(BOOL)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetFolderResponseOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetFolderResponseOperation.h new file mode 100644 index 00000000..78ec3a83 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetFolderResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFEWSGetFolderResponseOperation : MFEWSResponseOperation +{ + NSArray *_EWSFolders; + NSArray *_EWSFolderIdsRequested; +} + +@property(copy) NSArray *EWSFolderIdsRequested; // @synthesize EWSFolderIdsRequested=_EWSFolderIdsRequested; +@property(copy) NSArray *EWSFolders; // @synthesize EWSFolders=_EWSFolders; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetItemDataRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetItemDataRequestOperation.h new file mode 100644 index 00000000..ddbc8e2a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetItemDataRequestOperation.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFEWSGetItemDataRequestOperation : MFEWSRequestOperation +{ + NSArray *_itemIdTypes; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) NSArray *itemIdTypes; // @synthesize itemIdTypes=_itemIdTypes; +- (id)prepareRequest; +- (id)activityString; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithItemIdTypes:(id)arg1 dataHandler:(id)arg2 gateway:(void)arg3 errorHandler:(id)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetItemDataResponseOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetItemDataResponseOperation.h new file mode 100644 index 00000000..b6c2d357 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetItemDataResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFEWSGetItemDataResponseOperation : MFEWSResponseOperation +{ + NSArray *_itemIdTypes; + id _dataHandler; +} + +@property(copy, nonatomic) id dataHandler; // @synthesize dataHandler=_dataHandler; +@property(retain, nonatomic) NSArray *itemIdTypes; // @synthesize itemIdTypes=_itemIdTypes; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetItemsRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetItemsRequestOperation.h new file mode 100644 index 00000000..ae5a3b6b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetItemsRequestOperation.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFEWSGetItemsRequestOperation : MFEWSRequestOperation +{ + NSArray *_EWSItemIds; + NSArray *_additionalProperties; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) NSArray *additionalProperties; // @synthesize additionalProperties=_additionalProperties; +@property(readonly, nonatomic) NSArray *EWSItemIds; // @synthesize EWSItemIds=_EWSItemIds; +- (id)prepareRequest; +- (id)activityString; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithEWSItemIds:(id)arg1 additionalProperties:(id)arg2 gateway:(id)arg3 errorHandler:(id)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetItemsResponseOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetItemsResponseOperation.h new file mode 100644 index 00000000..00c43392 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetItemsResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray, NSMutableArray; + +@interface MFEWSGetItemsResponseOperation : MFEWSResponseOperation +{ + NSMutableArray *_EWSItems; + NSArray *_EWSItemIdsRequested; +} + +@property(retain) NSArray *EWSItemIdsRequested; // @synthesize EWSItemIdsRequested=_EWSItemIdsRequested; +@property(retain) NSMutableArray *EWSItems; // @synthesize EWSItems=_EWSItems; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetUserOofSettingsRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetUserOofSettingsRequestOperation.h new file mode 100644 index 00000000..6b658be6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetUserOofSettingsRequestOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class EWSEmailAddress; + +@interface MFEWSGetUserOofSettingsRequestOperation : MFEWSRequestOperation +{ + EWSEmailAddress *_emailAddress; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) EWSEmailAddress *emailAddress; // @synthesize emailAddress=_emailAddress; +- (id)prepareRequest; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithEmailAddress:(id)arg1 gateway:(id)arg2 errorHandler:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetUserOofSettingsResponseOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetUserOofSettingsResponseOperation.h new file mode 100644 index 00000000..dd2b6cc2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSGetUserOofSettingsResponseOperation.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class EWSUserOofSettingsType; + +@interface MFEWSGetUserOofSettingsResponseOperation : MFEWSResponseOperation +{ + EWSUserOofSettingsType *_oofSettings; + long long _allowExternalOof; +} + +@property long long allowExternalOof; // @synthesize allowExternalOof=_allowExternalOof; +@property(retain) EWSUserOofSettingsType *oofSettings; // @synthesize oofSettings=_oofSettings; +- (void)executeOperation; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSMessage.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSMessage.h new file mode 100644 index 00000000..7bf9ef49 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSMessage.h @@ -0,0 +1,72 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCRemoteMessage.h" + +@class MCMessageHeaders, NSData, NSString; + +@interface MFEWSMessage : MCRemoteMessage +{ + NSString *_itemId; + NSString *_changeKey; + NSData *_bodyData; + NSData *_headerData; + MCMessageHeaders *_headers; + long long _libraryID; +} + ++ (id)_newEWSAddressesForAddresses:(id)arg1; ++ (id)_newEWSAddressForAddress:(id)arg1; ++ (id)_newEWSHeaderFieldsForMessageHeaders:(id)arg1 encodingHint:(unsigned long long)arg2; ++ (id)validEWSIdStringsForIdStrings:(id)arg1; ++ (id)validEWSItemIdTypesForItemIdTypes:(id)arg1; ++ (id)EWSItemIdTypesForItemIdStrings:(id)arg1; ++ (id)EWSItemIdStringsForItemIdTypes:(id)arg1; ++ (id)EWSItemIdTypesForMessages:(id)arg1; ++ (id)newEWSItemFromMessage:(id)arg1 data:(id)arg2 flags:(unsigned int)arg3 sender:(id)arg4 recipientsByHeaderKey:(id)arg5 categories:(id)arg6 existingProperties:(id)arg7 useSenderInsteadOfFrom:(BOOL)arg8; ++ (id)_mimeContentForData:(id)arg1; ++ (id)dataFromMimeContent:(id)arg1; ++ (id)_newCustomEWSSetItemWithPropertyName:(id)arg1 boolValue:(BOOL)arg2; ++ (id)_newEWSSetItemWithPropertyTag:(id)arg1 intValue:(int)arg2; ++ (id)_newCustomEWSExtendedPropertyWithName:(id)arg1 boolValue:(BOOL)arg2; ++ (id)_newEWSExtendedPropertyWithTag:(id)arg1 intValue:(int)arg2; ++ (id)_extendedFieldsForFlags:(unsigned int)arg1 importance:(int *)arg2; ++ (id)_newEWSDeleteItemWithDistinguishedPropertySetId:(int)arg1 propertyType:(int)arg2 propertyId:(long long)arg3; ++ (id)_newEWSDeleteItemWithPropertyTag:(id)arg1 propertyType:(int)arg2; ++ (id)updatesForEWSItem:(id)arg1 applyingFlags:(id)arg2; ++ (id)propertiesToGetBeforeUpdatingMessageFlags:(id)arg1 forMessageType:(BOOL)arg2 includesReadReceipts:(char *)arg3; ++ (id)extendedFieldsForEWSCalendarType; ++ (id)extendedFieldsForEWSMeetingRequestMessageType; ++ (id)extendedFieldsForEWSMeetingMessageType; ++ (id)fieldsToMaintainWhenUpdatingMessageType:(BOOL)arg1; ++ (id)extendedFieldsForEWSNoteType; ++ (void)_extendedPropertiesFromEWSItem:(id)arg1 statusFlags:(int *)arg2 messageFlags:(int *)arg3 flagStatus:(int *)arg4 followupIcon:(int *)arg5 toDoFlags:(int *)arg6 replyFlags:(int *)arg7 hasAttachments:(char *)arg8 customFlags:(id)arg9 messageID:(id *)arg10 headers:(id *)arg11 sender:(id *)arg12; ++ (void)parseExtendedFieldsFromEWSMessage:(id)arg1 intoFlags:(unsigned int *)arg2 flagsMask:(unsigned int *)arg3 messageID:(id *)arg4 headers:(id *)arg5 sender:(id *)arg6; ++ (id)headersItemShape; ++ (id)EWSFolderClassForMailboxType:(int)arg1; ++ (id)EWSItemClassForMessageType:(BOOL)arg1; ++ (BOOL)messageTypeForEWSItemClass:(id)arg1; ++ (void)initialize; +@property(nonatomic) long long libraryID; // @synthesize libraryID=_libraryID; +@property(retain) MCMessageHeaders *headers; // @synthesize headers=_headers; +@property(retain) NSData *headerData; // @synthesize headerData=_headerData; +@property(retain) NSData *fetchedBodyData; // @synthesize fetchedBodyData=_bodyData; +@property(copy, nonatomic) NSString *changeKey; // @synthesize changeKey=_changeKey; +@property(copy, nonatomic) NSString *itemId; // @synthesize itemId=_itemId; +- (void)setHeaderAndBodyFromFullData:(id)arg1; +- (BOOL)isMessageContentsLocallyAvailable; +- (BOOL)isEditable; +- (id)remoteID; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (id)mailbox; +- (id)account; +- (void)dealloc; +- (id)init; +- (id)initWithItemId:(id)arg1 changeKey:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSMoveFolderRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSMoveFolderRequestOperation.h new file mode 100644 index 00000000..ebcb9960 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSMoveFolderRequestOperation.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class MFEWSGetFolderResponseOperation, NSArray, NSString; + +@interface MFEWSMoveFolderRequestOperation : MFEWSRequestOperation +{ + NSString *_destinationEWSFolderIdString; + MFEWSGetFolderResponseOperation *_changeKeysResponse; + NSArray *_originEWSFolderIdStrings; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) NSArray *originEWSFolderIdStrings; // @synthesize originEWSFolderIdStrings=_originEWSFolderIdStrings; +@property(readonly, nonatomic) MFEWSGetFolderResponseOperation *changeKeysResponse; // @synthesize changeKeysResponse=_changeKeysResponse; +@property(readonly, nonatomic) NSString *destinationEWSFolderIdString; // @synthesize destinationEWSFolderIdString=_destinationEWSFolderIdString; +- (void)setupOfflineResponse; +- (id)prepareRequest; +- (BOOL)isFolderRequest; +- (id)activityString; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (void)_ewsMoveFolderRequestCommonInitWithEWSFolderIdString:(id)arg1 originEWSFolderIdStrings:(id)arg2 gateway:(id)arg3; +- (id)initWithEWSFolderIdString:(id)arg1 originEWSFolderIdStrings:(id)arg2 gateway:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSOfflineGateway.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSOfflineGateway.h new file mode 100644 index 00000000..a1cf1ab7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSOfflineGateway.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSKeyedUnarchiverDelegate.h" + +@class MFEWSConnection, MFEWSResponseOperation, NSMutableDictionary; + +@interface MFEWSOfflineGateway : MFEWSGateway +{ + NSMutableDictionary *_offlineToRealEWSIdStrings; + id _offlineToRealEWSIdStringsLock; + MFEWSConnection *_offlineConnection; + MFEWSResponseOperation *_lastResponseDecoded; +} + +@property(retain) MFEWSResponseOperation *lastResponseDecoded; // @synthesize lastResponseDecoded=_lastResponseDecoded; +@property(retain) MFEWSConnection *offlineConnection; // @synthesize offlineConnection=_offlineConnection; +- (Class)unarchiver:(id)arg1 cannotDecodeObjectOfClassName:(id)arg2 originalClasses:(id)arg3; +- (id)unarchiver:(id)arg1 didDecodeObject:(id)arg2; +- (void)_undeleteMessagesFromFailedDeleteRequest:(id)arg1; +- (void)_undeleteMessagesFromFailedCopyRequest:(id)arg1; +- (void)_moveMessageFromFailedCreateRequest:(id)arg1 withBackupManager:(id)arg2 toMailboxNamed:(id)arg3 actualName:(id *)arg4; +- (id)_deleteRequestRemovingUndeletedItems:(id)arg1; +- (id)_EWSFolderFromCreateRequestOperation:(id)arg1; +@property(retain, nonatomic) NSMutableDictionary *offlineToRealEWSIdStrings; +- (id)playbackRequests:(id)arg1 offlineToRealEWSIdStrings:(id *)arg2 error:(id *)arg3; +- (void)takeRequestOffline:(id)arg1 error:(id)arg2; +- (void)addOfflineToRealEWSIdStrings:(id)arg1 forRequest:(id)arg2; +- (id)resolvedIdStringForIdString:(id)arg1; +- (void)addRequest:(id)arg1; +- (id)connection; +- (void)dealloc; +- (id)initWithAccount:(id)arg1; +- (id)initWithAccount:(id)arg1 connection:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSRenameFolderRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSRenameFolderRequestOperation.h new file mode 100644 index 00000000..4d27a63c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSRenameFolderRequestOperation.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFEWSGetFolderResponseOperation, NSString; + +@interface MFEWSRenameFolderRequestOperation : MFEWSRequestOperation +{ + NSString *_folderIdString; + NSString *_folderName; + MFEWSGetFolderResponseOperation *_changeKeysResponse; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) MFEWSGetFolderResponseOperation *changeKeysResponse; // @synthesize changeKeysResponse=_changeKeysResponse; +@property(readonly, nonatomic) NSString *folderName; // @synthesize folderName=_folderName; +@property(readonly, nonatomic) NSString *folderIdString; // @synthesize folderIdString=_folderIdString; +- (id)prepareRequest; +- (BOOL)isFolderRequest; +- (id)activityString; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithEWSFolderIdString:(id)arg1 name:(id)arg2 gateway:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSRequestOperation.h new file mode 100644 index 00000000..de7675b0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSRequestOperation.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMonitoredOperation.h" + +@class MFEWSGateway, MFEWSResponseOperation; + +@interface MFEWSRequestOperation : MCMonitoredOperation +{ + BOOL _isOffline; + MFEWSResponseOperation *_responseOperation; + MFEWSGateway *_gateway; +} + ++ (Class)classForResponse; +@property(retain, nonatomic) MFEWSGateway *gateway; // @synthesize gateway=_gateway; +@property(retain, nonatomic) MFEWSResponseOperation *responseOperation; // @synthesize responseOperation=_responseOperation; +- (id)description; +- (void)setupOfflineResponse; +- (void)goOffline; +- (BOOL)isOffline; +- (BOOL)isFolderRequest; +- (void)executeOperation; +- (id)prepareRequest; +- (void)dealloc; +- (id)init; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSResponseOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSResponseOperation.h new file mode 100644 index 00000000..8e189762 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSResponseOperation.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMonitoredOperation.h" + +@class EWSBaseMessageResponseType, MCError, MFEWSGateway; + +@interface MFEWSResponseOperation : MCMonitoredOperation +{ + BOOL _isOffline; + EWSBaseMessageResponseType *_response; + MFEWSGateway *_gateway; + id _errorHandler; + MCError *_lastError; +} + +@property BOOL isOffline; // @synthesize isOffline=_isOffline; +@property(retain) MCError *lastError; // @synthesize lastError=_lastError; +@property(retain, nonatomic) id errorHandler; // @synthesize errorHandler=_errorHandler; +@property(retain, nonatomic) MFEWSGateway *gateway; // @synthesize gateway=_gateway; +@property(retain) EWSBaseMessageResponseType *response; // @synthesize response=_response; +- (id)description; +- (BOOL)handleResponseMessage:(id)arg1 withObject:(id)arg2; +- (BOOL)handleResponseMessage:(id)arg1; +- (void)handleResponseMessages; +- (void)failWithError:(id)arg1; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)dealloc; +- (id)init; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSetUserOofSettingsRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSetUserOofSettingsRequestOperation.h new file mode 100644 index 00000000..60bc72f3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSetUserOofSettingsRequestOperation.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class EWSDuration, EWSEmailAddress, EWSReplyBodyType; + +@interface MFEWSSetUserOofSettingsRequestOperation : MFEWSRequestOperation +{ + long long _oofState; + EWSReplyBodyType *_internalReply; + EWSReplyBodyType *_externalReply; + EWSDuration *_duration; + EWSEmailAddress *_emailAddress; + long long _externalAudienceType; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) long long externalAudienceType; // @synthesize externalAudienceType=_externalAudienceType; +@property(readonly, nonatomic) EWSEmailAddress *emailAddress; // @synthesize emailAddress=_emailAddress; +@property(readonly, nonatomic) EWSDuration *duration; // @synthesize duration=_duration; +@property(readonly, nonatomic) EWSReplyBodyType *externalReply; // @synthesize externalReply=_externalReply; +@property(readonly, nonatomic) EWSReplyBodyType *internalReply; // @synthesize internalReply=_internalReply; +@property(readonly, nonatomic) long long oofState; // @synthesize oofState=_oofState; +- (id)prepareRequest; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithEmailAddress:(id)arg1 oofState:(long long)arg2 internalReply:(id)arg3 externalReply:(id)arg4 startTime:(id)arg5 endTime:(id)arg6 externalAudienceType:(long long)arg7 gateway:(id)arg8 errorHandler:(id)arg9; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSetUserOofSettingsResponseOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSetUserOofSettingsResponseOperation.h new file mode 100644 index 00000000..cb7b5f7f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSetUserOofSettingsResponseOperation.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFEWSSetUserOofSettingsResponseOperation : MFEWSResponseOperation +{ +} + +- (void)executeOperation; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSizeEngine.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSizeEngine.h new file mode 100644 index 00000000..b5c08a5a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSizeEngine.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFEWSSizeEngine : MFRemoteStoreSizeEngine +{ +} + +- (void)_getSizeForMailbox:(id)arg1; +- (void)_runWorkerThread; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSStore.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSStore.h new file mode 100644 index 00000000..97cfbccc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSStore.h @@ -0,0 +1,55 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "MFEWSErrorHandler.h" + +@class NSLock, NSMutableSet, NSString; + +@interface MFEWSStore : MFRemoteStore +{ + NSString *_syncState; + NSLock *_syncLock; + NSMutableSet *_flagsToSetDuringSync; + NSString *_folderIdString; +} + +@property(copy) NSString *folderIdString; // @synthesize folderIdString=_folderIdString; +- (void)handleEWSError:(id)arg1; +- (BOOL)_loadFolderId; +- (void)_setSyncState:(id)arg1 persistToLibrary:(BOOL)arg2; +@property(copy) NSString *syncState; +- (id)_gateway; +- (id)_EWSConnection; +- (id)account; +- (void)_fetchChangesFromServer; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (void)undeleteMessagesWithEWSItemIdStrings:(id)arg1; +- (void)deleteMessageWithEWSItemIdString:(id)arg1; +- (void)_deleteMessagesOnServerSynchronouslyWithEWSItemIds:(id)arg1 fromFolderWithEWSIdString:(id)arg2; +- (long long)_appendToServerWithContext:(id)arg1 error:(id *)arg2; +- (BOOL)_copyMessagesByID:(id)arg1 toStore:(id)arg2 settingFlags:(id)arg3 newMessages:(id)arg4 error:(id *)arg5; +- (void)forceResync; +- (long long)undoAppendOfMessageIDs:(id)arg1; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)messagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3 options:(id)arg4; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (void)startSynchronization; +- (void)fetchSynchronously; +- (void)openSynchronouslyIfWaitingToOpen; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (BOOL)allowsDeleteInPlace; +- (BOOL)allowsOverwrite; +- (BOOL)canRebuild; +- (void)dealloc; +- (id)initWithCriterion:(id)arg1 mailbox:(id)arg2 readOnly:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSuppressReadReceiptsRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSuppressReadReceiptsRequestOperation.h new file mode 100644 index 00000000..15cfd315 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSuppressReadReceiptsRequestOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFEWSGetItemsResponseOperation; + +@interface MFEWSSuppressReadReceiptsRequestOperation : MFEWSRequestOperation +{ + MFEWSGetItemsResponseOperation *_getItemsResponse; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) MFEWSGetItemsResponseOperation *getItemsResponse; // @synthesize getItemsResponse=_getItemsResponse; +- (id)prepareRequest; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithGetItemsResponse:(id)arg1 gateway:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSyncFolderHierarchyRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSyncFolderHierarchyRequestOperation.h new file mode 100644 index 00000000..f1c2b394 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSyncFolderHierarchyRequestOperation.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface MFEWSSyncFolderHierarchyRequestOperation : MFEWSRequestOperation +{ + NSString *_syncState; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) NSString *syncState; // @synthesize syncState=_syncState; +- (id)prepareRequest; +- (id)activityString; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithSyncState:(id)arg1 createBlock:(id)arg2 updateBlock:(void)arg3 deleteBlock:(id)arg4 gateway:(void)arg5; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSyncFolderHierarchyResponseOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSyncFolderHierarchyResponseOperation.h new file mode 100644 index 00000000..39a150fd --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSyncFolderHierarchyResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFEWSSyncFolderHierarchyResponseOperation : MFEWSResponseOperation +{ + id _createBlock; + id _updateBlock; + id _deleteBlock; +} + +@property(copy, nonatomic) id deleteBlock; // @synthesize deleteBlock=_deleteBlock; +@property(copy, nonatomic) id updateBlock; // @synthesize updateBlock=_updateBlock; +@property(copy, nonatomic) id createBlock; // @synthesize createBlock=_createBlock; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSyncFolderItemsRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSyncFolderItemsRequestOperation.h new file mode 100644 index 00000000..6062558d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSyncFolderItemsRequestOperation.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class EWSFolderIdType, EWSTargetFolderIdType, NSString; + +@interface MFEWSSyncFolderItemsRequestOperation : MFEWSRequestOperation +{ + NSString *_syncState; + EWSTargetFolderIdType *_targetFolder; +} + ++ (unsigned long long)maxChangesReturned; ++ (Class)classForResponse; ++ (id)keyPathsForValuesAffectingTargetFolderName; ++ (id)keyPathsForValuesAffectingTargetFolderId; +@property(retain, nonatomic) EWSTargetFolderIdType *targetFolder; // @synthesize targetFolder=_targetFolder; +@property(readonly, nonatomic) NSString *syncState; // @synthesize syncState=_syncState; +@property(readonly, nonatomic) NSString *targetFolderName; +@property(readonly, nonatomic) EWSFolderIdType *targetFolderId; +- (id)prepareRequest; +- (id)activityString; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithTargetFolder:(id)arg1 syncState:(id)arg2 gateway:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSyncFolderItemsResponseMessageOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSyncFolderItemsResponseMessageOperation.h new file mode 100644 index 00000000..39fe262d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSSyncFolderItemsResponseMessageOperation.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class EWSFolderIdType, MFEWSStore, NSArray, NSMutableArray, NSString; + +@interface MFEWSSyncFolderItemsResponseMessageOperation : MFEWSResponseOperation +{ + NSMutableArray *_messagesWithoutHeaders; + MFEWSStore *_store; + EWSFolderIdType *_folderId; + NSString *_startSyncState; + NSString *_endSyncState; +} + ++ (void)initialize; +@property(retain) NSString *endSyncState; // @synthesize endSyncState=_endSyncState; +@property(retain) NSString *startSyncState; // @synthesize startSyncState=_startSyncState; +@property(retain) EWSFolderIdType *folderId; // @synthesize folderId=_folderId; +@property(retain) MFEWSStore *store; // @synthesize store=_store; +- (void)_addMessageWithoutHeaders:(id)arg1; +@property(readonly) NSArray *messagesWithoutHeaders; +- (BOOL)_addressList:(id)arg1 isEqualToAddressList:(id)arg2; +- (void)_addFlagChanges:(unsigned int)arg1 mask:(unsigned int)arg2 forMessageWithEWSItemId:(id)arg3 toFlagChangesByMessage:(id)arg4; +- (void)_handleSyncFolderItemsCreateOrUpdate:(id)arg1 forStore:(id)arg2 messagesToUpdate:(id)arg3 libraryIDs:(id)arg4 messagesToCreate:(id)arg5 updatedFlagsByMessage:(id)arg6 messagesThatFinished:(id)arg7; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSUpdateItemRequestOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSUpdateItemRequestOperation.h new file mode 100644 index 00000000..465d33e8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFEWSUpdateItemRequestOperation.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class MFEWSGetItemsResponseOperation, MFEWSSuppressReadReceiptsRequestOperation, NSArray, NSDictionary; + +@interface MFEWSUpdateItemRequestOperation : MFEWSRequestOperation +{ + BOOL _messageType; + NSArray *_EWSItemIds; + NSDictionary *_flags; + MFEWSGetItemsResponseOperation *_getItemsResponse; + MFEWSSuppressReadReceiptsRequestOperation *_suppressReadReceiptsRequest; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) BOOL messageType; // @synthesize messageType=_messageType; +@property(readonly, nonatomic) MFEWSSuppressReadReceiptsRequestOperation *suppressReadReceiptsRequest; // @synthesize suppressReadReceiptsRequest=_suppressReadReceiptsRequest; +@property(readonly, nonatomic) MFEWSGetItemsResponseOperation *getItemsResponse; // @synthesize getItemsResponse=_getItemsResponse; +@property(readonly, nonatomic) NSDictionary *flags; // @synthesize flags=_flags; +@property(readonly, nonatomic) NSArray *EWSItemIds; // @synthesize EWSItemIds=_EWSItemIds; +@property(readonly, nonatomic) NSArray *itemsPriorToUpdate; +- (id)prepareRequest; +- (id)activityString; +- (void)setupOfflineResponse; +- (void)_ewsUpdateItemRequestOperationCommonInitWithEWSItemIds:(id)arg1 messageType:(BOOL)arg2 flags:(id)arg3 errorHandler:(id)arg4; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithEWSItemIds:(id)arg1 messageType:(BOOL)arg2 flags:(id)arg3 gateway:(id)arg4 errorHandler:(id)arg5; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFExchangeIMAPAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFExchangeIMAPAccount.h new file mode 100644 index 00000000..d25d5e74 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFExchangeIMAPAccount.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFExchangeIMAPAccount : MFIMAPAccount +{ +} + ++ (id)activeDirectoryEmailAddress; ++ (id)activeDirectoryFullName; ++ (void)setActiveDirectoryPassword:(id)arg1; ++ (id)activeDirectoryPassword; ++ (void)setActiveDirectoryUser:(id)arg1; ++ (id)activeDirectoryUser; ++ (void)setExchangeServer:(id)arg1; ++ (id)exchangeServer; ++ (void)setOutlookWebAccessServer:(id)arg1; ++ (id)outlookWebAccessServer; ++ (BOOL)usingActiveDirectory; ++ (id)defaultPathNameForAccount; ++ (id)accountTypeString; ++ (void)initialize; +- (void)handleOpenMailboxError:(id)arg1; +- (id)defaultsDictionary; +- (void)setPermanentPassword:(id)arg1; +- (id)permanentPassword; +- (void)setUsername:(id)arg1; +- (id)username; +- (void)setHostname:(id)arg1; +- (id)hostname; +- (id)additionalHeaderFields; +- (void)_filterMailboxList:(id)arg1 forMailboxWithPath:(id)arg2 iisServer:(id)arg3; +- (id)_nonMailboxChildrenOfMailboxWithPath:(id)arg1 iisServer:(id)arg2; +- (void)filterMailboxList:(id)arg1 forMailbox:(id)arg2 options:(long long)arg3; +- (id)_defaultSpecialMailboxRelativePathForType:(int)arg1; +- (BOOL)storeJunkOnServer; +- (BOOL)storeJunkOnServerDefault; +- (id)authSchemesForConnection:(id)arg1; +- (BOOL)canAuthenticateWithScheme:(id)arg1 connection:(id)arg2; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (id)_newConnectionWithPendingGateway:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFExchangeIMAPConnection.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFExchangeIMAPConnection.h new file mode 100644 index 00000000..6ed678ad --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFExchangeIMAPConnection.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "IMAPConnection.h" + +@class MFExchangeIMAPAccount; + +@interface MFExchangeIMAPConnection : IMAPConnection +{ +} + +- (BOOL)_isFetchResponseValid:(id)arg1; +@property MFExchangeIMAPAccount *account; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFFilesystemWatcher.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFFilesystemWatcher.h new file mode 100644 index 00000000..04b99a5c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFFilesystemWatcher.h @@ -0,0 +1,38 @@ +/* + * 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" + +@class NSMapTable, NSObject, NSOperationQueue; + +@interface MFFilesystemWatcher : NSObject +{ + NSMapTable *_libraryIMAPStoreToFSCache; + NSMapTable *_fseventStreamToLibraryIMAPStore; + NSMapTable *_libraryIMAPStoreToFSEventStream; + id _fseventsTableLock; + NSObject *_scanningQueue; + NSOperationQueue *_cachedDirectoryOperationQueue; + unsigned long long _nextLibraryIMAPStoreCookie; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)_fseventsTableLock; +- (id)_fseventStreamToLibraryIMAPStore; +- (void)stopWatchingPathForLibraryIMAPStore:(unsigned long long)arg1; +- (id)getCachedFilesFor:(unsigned long long)arg1; +- (unsigned long long)registerPath:(id)arg1; +- (void)_updateCacheInfoForPath:(id)arg1 rootPathToTrim:(id)arg2 scanSubDirectories:(BOOL)arg3 cookie:(const void *)arg4; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFGmailLabelStore.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFGmailLabelStore.h new file mode 100644 index 00000000..dee6118f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFGmailLabelStore.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFGmailLabelStore : MFLibraryStore +{ +} + +- (id)_allMailStore; +- (id)_messagesFromAllMailWithRemoteIDs:(id)arg1; +- (long long)_removeOurLabelFromMessages:(id)arg1; +- (void)_messagesAddedToLibrary:(id)arg1; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (long long)undoAppendOfMessageIDs:(id)arg1; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; +- (id)lastMessageWithHeaders:(id)arg1 inMailbox:(id)arg2; +- (BOOL)allowsOverwrite; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFHTMLConverter.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFHTMLConverter.h new file mode 100644 index 00000000..0177ecd2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFHTMLConverter.h @@ -0,0 +1,53 @@ +/* + * 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 "NSPortDelegate.h" + +@class NSData, NSPort, WebView; + +@interface MFHTMLConverter : NSObject +{ + WebView *_webView; + NSPort *_replyPort; + unsigned int _sequenceNumber:31; + SEL _mainThreadSelector; + BOOL _didHandlePortMessage; + NSData *_resultData; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain) NSData *resultData; // @synthesize resultData=_resultData; +- (void)webView:(id)arg1 decidePolicyForNavigationAction:(id)arg2 request:(id)arg3 frame:(id)arg4 decisionListener:(id)arg5; +- (id)webView:(id)arg1 resource:(id)arg2 willSendRequest:(id)arg3 redirectResponse:(id)arg4 fromDataSource:(id)arg5; +- (id)webView:(id)arg1 identifierForInitialRequest:(id)arg2 fromDataSource:(id)arg3; +- (void)webView:(id)arg1 didFailLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)webView:(id)arg1 didFailProvisionalLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 locationChangeDone:(id)arg2 forDataSource:(id)arg3; +- (void)webView:(id)arg1 didStartProvisionalLoadForFrame:(id)arg2; +- (id)_archivedHTMLStringWithInlinedStyleFromLoadedDocument; +- (id)_archivedDataFromLoadedDocument; +- (id)_archivedAttributedStringFromLoadedDocument; +- (void)_loadWebViewOnMainThreadFromData:(id)arg1 withTextEncodingName:(id)arg2 orFromWebArchive:(id)arg3; +- (void)_setUpWebView; +- (void)_stopLoadingWebView; +- (void)_setMainThreadSelector:(SEL)arg1; +- (void)handlePortMessage:(id)arg1; +- (id)htmlStringWithInlinedStyleFromHTMLData:(id)arg1 textEncodingName:(id)arg2; +- (id)junkStringFromHTMLData:(id)arg1 textEncodingName:(id)arg2 context:(id)arg3; +- (id)attributedStringFromWebArchive:(id)arg1; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFHTMLParser.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFHTMLParser.h new file mode 100644 index 00000000..4436e039 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFHTMLParser.h @@ -0,0 +1,18 @@ +/* + * 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" + +@interface MFHTMLParser : NSObject +{ +} + ++ (id)plainTextFromHTMLSnippet:(id)arg1; ++ (id)plainTextFromHTML:(id)arg1; ++ (id)plainTextFromHTML:(id)arg1 limit:(unsigned long long)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPAccount.h new file mode 100644 index 00000000..0e9dca1a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPAccount.h @@ -0,0 +1,248 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "IMAPAccount.h" + +@class IMAPConnectionPool, MCAuthScheme, MFIMAPOperationCache, MFLibraryIMAPStore, MFMailbox, NSArray, NSDictionary, NSLock, NSMutableArray, NSMutableDictionary, NSMutableSet, NSOperationQueue, NSString, NSURL; + +@interface MFIMAPAccount : MFRemoteStoreAccount +{ + double _lastUnreadCountsUpdateTime; + double _lastUnreadCountsAndNewMessagesUpdateTime; + double _lastMailboxListFetchTime; + NSArray *_lastKnownCapabilities; + NSMutableArray *_namespacePrefixes; + NSString *_separatorChar; + IMAPConnectionPool *_connectionPool; + NSLock *_connectionPoolLock; + MFIMAPOperationCache *_offlineCache; + NSString *_serverPathPrefixWithFilesystemSeparator; + NSString *_serverPathPrefixAsFilesystemPath; + NSLock *_fsPrefixLock; + NSLock *_mailboxListingLock; + NSMutableSet *_mailboxURLsToSynchronize; + NSMutableDictionary *_IMAPMailboxes; + NSMutableDictionary *_IMAPQuotaRoots; + NSOperationQueue *_imapQueue; + NSOperationQueue *_cleanUpQueue; + id _allMailLock; + MFMailbox *_allMailMailbox; + unsigned int _readBufferSize; + BOOL _lastConnectionFailed; + BOOL _shouldIncludePrefixInPath; + BOOL _allowsInputForConnectionProblems; + BOOL _isFetchingUnreadCountsForAllMailboxes; + BOOL _isFetchingUnreadCountsAndCheckingNewMessagesForAllMailboxes; + BOOL _recoveringFromConnectionLoss; + MFMailbox *_serverDefinedArchiveMailbox; + id _serverDefinedArchiveMailboxLock; + MFMailbox *_serverDefinedDraftsMailbox; + id _serverDefinedDraftsMailboxLock; + MFMailbox *_serverDefinedJunkMailbox; + id _serverDefinedJunkMailboxLock; + MFMailbox *_serverDefinedSentMailbox; + id _serverDefinedSentMailboxLock; + MFMailbox *_serverDefinedTrashMailbox; + id _serverDefinedTrashMailboxLock; + MFLibraryIMAPStore *_idleStore; +} + ++ (id)_mailboxNameForPathComponent:(id)arg1; ++ (id)_pathComponentForMailboxName:(id)arg1; ++ (void)_deleteQueuedMailboxes:(id)arg1; ++ (id)accountTypeString; +@property BOOL recoveringFromConnectionLoss; // @synthesize recoveringFromConnectionLoss=_recoveringFromConnectionLoss; +@property(retain) IMAPConnectionPool *connectionPool; // @synthesize connectionPool=_connectionPool; +@property(retain) MFLibraryIMAPStore *idleStore; // @synthesize idleStore=_idleStore; +- (void)messageDeliveryWillBegin:(id)arg1; +- (id)remoteTaskQueue; +- (BOOL)storesUnseenCount; +- (id)_infoForMatchingURL:(id)arg1; +- (id)_URLPersistenceScheme; +- (id)mailboxForRelativePath:(id)arg1 isFilesystemPath:(BOOL)arg2 create:(BOOL)arg3; +- (void)_clearOfflineCache; +@property(readonly) id offlineCache; +- (id)offlineCacheIfOffline; +- (void)deleteMessagesFromMailbox:(id)arg1 olderThanNumberOfDays:(unsigned long long)arg2; +- (void)_loadEntriesFromFileSystemPath:(id)arg1 parent:(id)arg2; +- (id)_mailboxPathPrefix:(BOOL)arg1; +- (void)syncFileSystemWithServerPathPrefix; +- (void)_setFileSystemServerPathPrefix; +- (id)_fileSystemServerPathPrefix:(BOOL)arg1; +- (void)setServerPathPrefix:(id)arg1 permanently:(BOOL)arg2; +- (void)_setServerPathPrefix:(id)arg1 permanently:(BOOL)arg2 shouldSync:(BOOL)arg3; +- (id)serverPathPrefix; +- (id)storedServerPathPrefix; +- (BOOL)canMailboxBeDeleted:(id)arg1; +- (id)_mailboxForName:(id)arg1; +- (id)nameForMailbox:(id)arg1; +- (id)_fullIMAPPathForPath:(id)arg1 relativeToMailbox:(id)arg2; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (BOOL)renameMailbox:(id)arg1 newDisplayName:(id)arg2 parent:(id)arg3; +- (void)_recursivelyModifySubscriptions:(BOOL)arg1 forMailbox:(id)arg2 children:(id)arg3 withGateway:(id)arg4; +- (void)_mailboxesWereRemovedFromTree:(id)arg1 withFileSystemPaths:(id)arg2; +- (void)_waitForMailboxListingLoadToComplete; +- (void)_loadMailboxListingIntoCache:(id)arg1 parent:(id)arg2 addedMailboxes:(id)arg3 removedMailboxes:(id)arg4 updatingSourceMailbox:(BOOL)arg5; +- (void)_loadMailboxListingIntoCache:(id)arg1 parent:(id)arg2 addedMailboxes:(id)arg3 removedMailboxes:(id)arg4; +- (void)refreshMailboxListingRootedAtMailbox:(id)arg1; +- (void)_synchronouslyLoadListingForParent:(id)arg1; +- (id)_copyMailboxWithParent:(id)arg1 name:(id)arg2 pathComponent:(id)arg3 attributes:(unsigned long long)arg4 existingMailbox:(id)arg5; +- (void)_synchronizeAccountWithServerHighPriority:(id)arg1; +- (void)_fetchUnreadCountsCheckForNewMessages:(BOOL)arg1; +- (void)_fetchUnreadCountsForMailbox:(id)arg1 recursively:(BOOL)arg2 gateway:(id)arg3; +- (void)_fetchUnreadCountsForMailbox:(id)arg1 recursively:(BOOL)arg2 gateway:(id)arg3 checkForNewMessages:(BOOL)arg4; +- (id)_specialMailboxWithType:(int)arg1 create:(BOOL)arg2 isLocal:(BOOL)arg3; +- (id)_specialMailboxRelativePathForType:(int)arg1; +- (BOOL)_deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (BOOL)deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (BOOL)_askToChangePathPrefixToCreateMailbox:(id)arg1 displayName:(id)arg2 withGateway:(id)arg3; +- (id)validNameForMailbox:(id)arg1 fromDisplayName:(id)arg2 error:(id *)arg3; +- (id)createMailboxWithParent:(id)arg1 displayName:(id)arg2 localizedDisplayName:(id)arg3; +- (BOOL)_createMailbox:(id)arg1 withGateway:(id)arg2; +- (id)_listingForMailbox:(id)arg1 listAllChildren:(BOOL)arg2 highPriority:(BOOL)arg3; +- (id)_recursivelyFilterMailboxList:(id)arg1 accordingToList:(id)arg2; +- (id)_namespacePrefixesForPrivate:(BOOL)arg1 public:(BOOL)arg2 shared:(BOOL)arg3; +- (id)_listingForMailbox:(id)arg1 listAllChildren:(BOOL)arg2 onlySubscribed:(BOOL)arg3 highPriority:(BOOL)arg4; +- (void)_synchronizeMailboxListDuringMailCheck; +- (void)_updateSpecialMailboxes; +- (BOOL)_synchronizeMailboxListHighPriority:(BOOL)arg1; +- (BOOL)hasCapability:(unsigned long long)arg1; +- (BOOL)supportsIDLE; +- (id)lastKnownCapabilities; +- (id)separatorChar; +- (void)_setSeparatorChar:(id)arg1; +- (void)fetchSynchronouslyIsAuto:(id)arg1; +- (void)_asynchronouslyFetchUnreadCountsCheckForNewMessages:(BOOL)arg1 isHighPriority:(BOOL)arg2; +- (void)setIsOffline:(BOOL)arg1; +- (void)_setIsOffline:(BOOL)arg1; +- (void)clearQuotaRoots; +- (id)quotaRootForName:(id)arg1 createIfNeeded:(BOOL)arg2; +- (void)_startObserving:(BOOL)arg1 IMAPMailbox:(id)arg2; +- (void)_removeIMAPMailboxWithName:(id)arg1; +- (void)_renameIMAPMailboxWithMailbox:(id)arg1 fromName:(id)arg2 toName:(id)arg3; +- (BOOL)resetSpecialMailboxes; +- (id)_serverDefinedMailboxWithAttribute:(unsigned long long)arg1; +@property(readonly) MFMailbox *serverDefinedTrashMailbox; +@property(readonly) MFMailbox *serverDefinedSentMailbox; +@property(readonly) MFMailbox *serverDefinedJunkMailbox; +@property(readonly) MFMailbox *serverDefinedDraftsMailbox; +@property(readonly) MFMailbox *serverDefinedArchiveMailbox; +- (id)gmailLabelWithName:(id)arg1; +- (id)_addIMAPMailboxForMailbox:(id)arg1 name:(id)arg2; +- (id)_IMAPMailboxForMailbox:(id)arg1 name:(id)arg2 createIfNeeded:(BOOL)arg3; +- (id)IMAPMailboxForMailboxName:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)IMAPMailboxForMailbox:(id)arg1 createIfNeeded:(BOOL)arg2; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)validateConnections; +- (void)_validateConnections; +- (void)releaseAllConnections; +- (void)_releaseAllConnectionsAndCallSuper:(BOOL)arg1 saveOfflineCache:(BOOL)arg2; +- (BOOL)_recoverFromConnectionlessStateHighPriority:(BOOL)arg1; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (id)_getPotentialGatewayForMailbox:(id)arg1 options:(unsigned long long)arg2 createdNewConnection:(char *)arg3 needsSelect:(char *)arg4; +- (id)_gatewayForMailbox:(id)arg1 name:(id)arg2 options:(unsigned long long)arg3; +- (void)_invalidateMailboxWithName:(id)arg1 expunge:(BOOL)arg2 URLToCompact:(id)arg3; +- (void)invalidateMailboxWithName:(id)arg1 expunge:(BOOL)arg2 URLToCompact:(id)arg3; +- (void)recoverFromConnectionLoss; +- (id)gatewayForExistingConnectionToMailbox:(id)arg1; +- (id)gatewayForMailbox:(id)arg1 options:(unsigned long long)arg2; +- (void)handleOpenMailboxError:(id)arg1; +- (id)authSchemesForConnection:(id)arg1; +- (BOOL)canAuthenticateWithScheme:(id)arg1 connection:(id)arg2; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (void)detectAllMailWithGateway:(id)arg1; +- (BOOL)isGmailAccount; +@property long long gmailCapabilitiesSupport; +- (void)setStoreTrashOnServer:(BOOL)arg1; +- (void)setStoreSentMessagesOnServer:(BOOL)arg1; +- (void)setStoreJunkOnServer:(BOOL)arg1; +- (void)setStoreDraftsOnServer:(BOOL)arg1; +@property BOOL ignoreServerDefinedTrashMailbox; +@property BOOL ignoreServerDefinedSentMailbox; +@property BOOL ignoreServerDefinedJunkMailbox; +@property BOOL ignoreServerDefinedDraftsMailbox; +@property BOOL ignoreServerDefinedArchiveMailbox; +@property BOOL hasServerDefinedTrashMailbox; +@property BOOL hasServerDefinedSentMailbox; +@property BOOL hasServerDefinedJunkMailbox; +@property BOOL hasServerDefinedDraftsMailbox; +@property BOOL hasServerDefinedArchiveMailbox; +@property BOOL hasServerDefinedAllMailMailbox; +@property(copy) NSDictionary *serverID; +- (void)_clearAllPathBasedCachesAndDelete:(BOOL)arg1; +- (void)setAllowsPartialDownloads:(BOOL)arg1; +- (BOOL)allowsPartialDownloads; +- (unsigned long long)minimumPartialDownloadSize; +- (id)_dataForTemporaryUid:(unsigned int)arg1; +- (void)_checkForNewMessagesInStore:(id)arg1; +- (void)didSynchronizeMailboxCachesAndFoundChanges:(BOOL)arg1; +- (void)resetNeedToSynchronizeMailboxCaches; +- (BOOL)needToSynchronizeMailboxCaches; +- (void)synchronizeAllMailboxes; +@property unsigned int readBufferSize; +- (void)handleAlertResponse:(id)arg1; +- (BOOL)handleResponseCodeFromResponse:(id)arg1; +- (id)providerIdentifier; +- (id)iaServiceType; +- (void)_updateIdleMailbox; +- (id)allMailMailbox; +- (id)primaryMailbox; +- (BOOL)_setChildren:(id)arg1 forMailbox:(id)arg2; +@property BOOL useIDLEIfAvailable; +- (void)setCompactWhenClosingMailboxes:(BOOL)arg1; +- (BOOL)compactWhenClosingMailboxes; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (id)_newConnectionWithPendingGateway:(BOOL)arg1; +@property(readonly) BOOL requiresAuthentication; +- (void *)keychainProtocol; +@property(readonly) NSString *saslProfileName; +- (long long)defaultSecurePortNumber; +- (long long)defaultPortNumber; +@property(readonly) NSArray *standardSSLPorts; +@property(readonly) NSArray *standardPorts; +- (id)mailboxPathExtension; +- (Class)storeClassForMailbox:(id)arg1; +- (void)sendAccountNeedsCheckingNotification; +- (void)doRoutineCleanup; +- (void)saveCache; +- (void)_writeCustomInfoToMailboxCache:(id)arg1; +- (void)_readCustomInfoFromMailboxCache:(id)arg1; +- (void)_cleanUpExistingMessagesIfNecessary; +- (id)_colorByMessageFromColorByMessageDigest:(id)arg1; +- (void)_migrateColorsForGmail; +@property BOOL needsGmailLabelsCleanup; +@property BOOL shouldUseGmailLabelStores; +- (void)completeDeferredInitialization; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; +- (void)setMessageCaching:(unsigned int)arg1; +- (unsigned int)messageCaching; + +// Remaining properties +@property(readonly) NSString *accountTypeString; +@property(readonly) NSString *appleAuthenticationToken; +@property(readonly) NSString *applePersonID; +@property BOOL configureDynamically; +@property(copy) NSString *displayName; +@property(copy) NSString *externalHostname; +@property(readonly) NSString *googleClientToken; +@property(copy) NSString *hostname; +@property(readonly, nonatomic) NSString *internetAccountsUID; +@property(copy) NSString *password; +@property long long portNumber; +@property(retain) MCAuthScheme *preferredAuthScheme; +@property long long securityLayerType; +@property(readonly) NSURL *subscriptionURL; +@property(readonly) NSString *subscriptionURLLabel; +@property(readonly) NSString *uniqueId; +@property(copy) NSString *username; +@property BOOL usesSSL; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPAppendMessageOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPAppendMessageOperation.h new file mode 100644 index 00000000..fec64106 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPAppendMessageOperation.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFIMAPAppendMessageOperation : MFIMAPOperation +{ + unsigned int _uid; + int _internalDateAsInt; + unsigned int _size; + NSArray *_flags; +} + +@property(nonatomic) unsigned int size; // @synthesize size=_size; +@property(nonatomic) int internalDateAsInt; // @synthesize internalDateAsInt=_internalDateAsInt; +@property(copy, nonatomic) NSArray *flags; // @synthesize flags=_flags; +@property(nonatomic) unsigned int uid; // @synthesize uid=_uid; +- (id)description; +- (unsigned int)lastTemporaryUid; +- (unsigned int)firstTemporaryUid; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (BOOL)isSourceOfTemporaryUid:(unsigned int)arg1; +- (id)internalDate; +- (void)serializeIntoData:(id)arg1; +- (void)_deserializeOpSpecificValuesFromData:(id)arg1 cursor:(unsigned long long *)arg2; +- (unsigned long long)approximateSize; +- (unsigned char)operationType; +- (void)dealloc; +- (id)initWithAppendedUid:(unsigned int)arg1 approximateSize:(unsigned int)arg2 flags:(id)arg3 internalDate:(id)arg4 mailbox:(id)arg5; + +// Remaining properties +@property(nonatomic) BOOL usesRealUids; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPCopyMessagesOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPCopyMessagesOperation.h new file mode 100644 index 00000000..cc6d2f5c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPCopyMessagesOperation.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSPointerArray, NSString; + +@interface MFIMAPCopyMessagesOperation : MFIMAPOperation +{ + NSPointerArray *_sourceUids; + NSPointerArray *_destinationUids; + NSString *_destinationMailbox; +} + +@property(copy, nonatomic) NSString *destinationMailbox; // @synthesize destinationMailbox=_destinationMailbox; +@property(retain, nonatomic) NSPointerArray *destinationUids; // @synthesize destinationUids=_destinationUids; +@property(retain, nonatomic) NSPointerArray *sourceUids; // @synthesize sourceUids=_sourceUids; +- (id)description; +- (unsigned int)lastTemporaryUid; +- (unsigned int)firstTemporaryUid; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (BOOL)actsOnTemporaryUid:(unsigned int)arg1; +- (void)setMessageId:(id)arg1 andInternalDate:(id)arg2 forMessageWithSourceUid:(unsigned int)arg3; +- (BOOL)getMessageId:(id *)arg1 andInternalDate:(id *)arg2 forDestinationUid:(unsigned int)arg3; +- (unsigned int)sourceUidForTemporaryUid:(unsigned int)arg1; +- (BOOL)isSourceOfTemporaryUid:(unsigned int)arg1; +- (void)serializeIntoData:(id)arg1; +- (void)_deserializeOpSpecificValuesFromData:(id)arg1 cursor:(unsigned long long *)arg2; +- (id)destinationUidStrings; +- (id)sourceUidStrings; +- (unsigned long long)approximateSize; +- (unsigned char)operationType; +- (void)dealloc; +- (id)initWithUidStringsToCopy:(id)arg1 fromMailbox:(id)arg2 toMailbox:(id)arg3 firstNewUid:(unsigned int)arg4; + +// Remaining properties +@property(nonatomic) BOOL usesRealUids; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPCreateOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPCreateOperation.h new file mode 100644 index 00000000..b87a8657 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPCreateOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFIMAPCreateOperation : MFIMAPOperation +{ +} + +- (id)description; +- (unsigned char)operationType; +- (id)initWithMailboxToCreate:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPDeleteOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPDeleteOperation.h new file mode 100644 index 00000000..eeab3715 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPDeleteOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFIMAPDeleteOperation : MFIMAPOperation +{ +} + +- (id)description; +- (unsigned char)operationType; +- (id)initWithMailboxToDelete:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPOfflineCopyOnStupidServerOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPOfflineCopyOnStupidServerOperation.h new file mode 100644 index 00000000..b04d0486 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPOfflineCopyOnStupidServerOperation.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSMutableArray, NSPointerArray; + +@interface MFIMAPOfflineCopyOnStupidServerOperation : MFIMAPCopyMessagesOperation +{ + NSMutableArray *_messageIds; + NSPointerArray *_internalDates; +} + +@property(retain, nonatomic) NSPointerArray *internalDates; // @synthesize internalDates=_internalDates; +@property(retain, nonatomic) NSMutableArray *messageIds; // @synthesize messageIds=_messageIds; +- (unsigned long long)approximateSize; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (void)setMessageId:(id)arg1 andInternalDate:(id)arg2 forMessageWithSourceUid:(unsigned int)arg3; +- (BOOL)getMessageId:(id *)arg1 andInternalDate:(id *)arg2 forDestinationUid:(unsigned int)arg3; +- (void)dealloc; +- (void)_deserializeOpSpecificValuesFromData:(id)arg1 cursor:(unsigned long long *)arg2; +- (unsigned char)_magic; +- (void)serializeIntoData:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPOperation.h new file mode 100644 index 00000000..69ea275e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPOperation.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSString; + +@interface MFIMAPOperation : NSObject +{ + BOOL _usesRealUids; + NSString *_mailboxName; +} + ++ (id)newOperationWithSerializedData:(id)arg1 cursor:(unsigned long long *)arg2; +@property(nonatomic) BOOL usesRealUids; // @synthesize usesRealUids=_usesRealUids; +@property(copy, nonatomic) NSString *mailboxName; // @synthesize mailboxName=_mailboxName; +- (unsigned int)lastTemporaryUid; +- (unsigned int)firstTemporaryUid; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (BOOL)actsOnTemporaryUid:(unsigned int)arg1; +- (BOOL)isSourceOfTemporaryUid:(unsigned int)arg1; +- (unsigned long long)approximateSize; +@property(readonly, nonatomic) unsigned char operationType; +- (void)dealloc; +- (id)init; +- (id)_initWithMailboxName:(id)arg1; +- (void)serializeIntoData:(id)arg1; +- (void)_deserializeOpSpecificValuesFromData:(id)arg1 cursor:(unsigned long long *)arg2; +- (unsigned char)_magic; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPOperationCache.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPOperationCache.h new file mode 100644 index 00000000..716fe25d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPOperationCache.h @@ -0,0 +1,49 @@ +/* + * 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 "IMAPOfflineCache.h" + +@class MFIMAPAccount, NSMutableArray; + +@interface MFIMAPOperationCache : NSObject +{ + MFIMAPAccount *_account; + NSMutableArray *_ops; + unsigned int _lastUid; + BOOL _opsChanged; +} + +- (id)description; +- (id)_deferredOperations; +- (void)performDeferredOperationsWithGateway:(id)arg1 outDisplayableError:(id *)arg2; +- (BOOL)_performCopyOperation:(id)arg1 withContext:(id)arg2 failedSourceUids:(id)arg3 error:(id *)arg4; +- (BOOL)_performAppendOperation:(id)arg1 withContext:(id)arg2 backupManager:(id)arg3 suggestedOfflineRestoreName:(id)arg4 recoveredMailboxName:(id *)arg5 error:(id *)arg6; +- (BOOL)_performStoreOperation:(id)arg1 forGmailLabels:(BOOL)arg2 ignoringUids:(id)arg3 withContext:(id)arg4; +- (BOOL)_performDeleteOperation:(id)arg1 withContext:(id)arg2; +- (BOOL)_performCreateOperation:(id)arg1 withContext:(id)arg2; +- (BOOL)hasOperationsForMailbox:(id)arg1; +- (unsigned long long)numberOfPendingChanges; +- (void)saveChanges; +- (void)expungeMessageWithMessageID:(id)arg1 documentID:(id)arg2; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (void)_expungeMessageWithTemporaryUid:(unsigned int)arg1 orMessageID:(id)arg2 documentID:(id)arg3; +- (unsigned int)uidForAppendingMessageData:(id)arg1 withFlags:(id)arg2 andInternalDate:(id)arg3 toMailbox:(id)arg4; +- (unsigned int)firstUidForCopyingMessages:(id)arg1 toMailbox:(id)arg2; +- (void)setGmailLabels:(id)arg1 andClearGmailLabels:(id)arg2 forUids:(id)arg3 forMailbox:(id)arg4; +- (void)setFlags:(id)arg1 andClearFlags:(id)arg2 forUids:(id)arg3 forMailbox:(id)arg4; +- (void)_setFlagsOrGmailLabels:(id)arg1 andClearFlagsOrGmailLabels:(id)arg2 actuallyGmailLabels:(BOOL)arg3 forMessages:(id)arg4; +- (void)setGmailLabels:(id)arg1 andClearGmailLabels:(id)arg2 forMessages:(id)arg3; +- (void)setFlags:(id)arg1 andClearFlags:(id)arg2 forMessages:(id)arg3; +- (void)deleteMailbox:(id)arg1; +- (void)createMailbox:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithIMAPAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPSizeEngine.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPSizeEngine.h new file mode 100644 index 00000000..2ec3a79c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPSizeEngine.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSMutableDictionary, NSMutableSet; + +@interface MFIMAPSizeEngine : MFRemoteStoreSizeEngine +{ + unsigned long long _workerThreadCount; + NSMutableDictionary *_mailboxesByQuotaRoot; + NSMutableSet *_quotasToFetch; + NSMutableSet *_observedIMAPMailboxes; + NSMutableSet *_observedIMAPQuotaRoots; + long long _quotaStatus; +} + +- (BOOL)mailbox:(id)arg1 usesQuotaName:(id)arg2; +- (id)mutableCopyOfMailboxesForQuotaName:(id)arg1; +- (id)usageForQuotaName:(id)arg1; +- (id)quotaNames; +- (long long)quotaStatus; +- (BOOL)_shouldStartWorkerThread; +- (void)_runWorkerThread; +- (void)_getSizeForMailbox:(id)arg1; +- (void)_mailboxBecameInvalid:(id)arg1; +- (void)_changeQuotaRoots:(id)arg1 forMailbox:(id)arg2; +- (BOOL)_changeUsageInfo:(CDStruct_1dee9796 *)arg1 forMailbox:(id)arg2 refetchQuotas:(BOOL)arg3; +- (void)_addQuotaRootsFromMailbox:(id)arg1; +- (void)_addUsageInfoFromMailbox:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)dealloc; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPStoreFlagsOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPStoreFlagsOperation.h new file mode 100644 index 00000000..fa18a3a9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPStoreFlagsOperation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFIMAPStoreFlagsOperation : MFIMAPStoreOperation +{ +} + +- (id)description; +@property(readonly, nonatomic) NSArray *flagsToClear; +@property(readonly, nonatomic) NSArray *flagsToSet; +- (unsigned char)operationType; +- (id)initWithFlagsToSet:(id)arg1 flagsToClear:(id)arg2 forUids:(id)arg3 inMailbox:(id)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPStoreGmailLabelsOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPStoreGmailLabelsOperation.h new file mode 100644 index 00000000..16e3f946 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPStoreGmailLabelsOperation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFIMAPStoreGmailLabelsOperation : MFIMAPStoreOperation +{ +} + +- (id)description; +@property(readonly, nonatomic) NSArray *gmailLabelsToClear; +@property(readonly, nonatomic) NSArray *gmailLabelsToSet; +- (unsigned char)operationType; +- (id)initWithGmailLabelsToSet:(id)arg1 gmailLabelsToClear:(id)arg2 forUids:(id)arg3 inMailbox:(id)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPStoreOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPStoreOperation.h new file mode 100644 index 00000000..913bf8af --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFIMAPStoreOperation.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray, NSPointerArray; + +@interface MFIMAPStoreOperation : MFIMAPOperation +{ + NSArray *_objectsToSet; + NSArray *_objectsToClear; + NSPointerArray *_uids; +} + +@property(retain, nonatomic) NSPointerArray *uids; // @synthesize uids=_uids; +@property(copy, nonatomic) NSArray *objectsToClear; // @synthesize objectsToClear=_objectsToClear; +@property(copy, nonatomic) NSArray *objectsToSet; // @synthesize objectsToSet=_objectsToSet; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (BOOL)actsOnTemporaryUid:(unsigned int)arg1; +- (void)serializeIntoData:(id)arg1; +- (void)_deserializeOpSpecificValuesFromData:(id)arg1 cursor:(unsigned long long *)arg2; +@property(readonly, nonatomic) NSArray *uidStrings; +- (unsigned long long)approximateSize; +- (void)dealloc; +- (id)_initWithObjectsToSet:(id)arg1 objectsToClear:(id)arg2 forUids:(id)arg3 inMailbox:(id)arg4; + +// Remaining properties +@property(nonatomic) BOOL usesRealUids; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFJunkMail.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFJunkMail.h new file mode 100644 index 00000000..bdc9bd60 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFJunkMail.h @@ -0,0 +1,18 @@ +/* + * 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" + +@interface MFJunkMail : NSObject +{ +} + ++ (id)mapDescriptionFromMapType:(int)arg1; ++ (int)mapTypeFromMapName:(id)arg1; ++ (id)mapNameForMapType:(int)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFJunkMailFilter.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFJunkMailFilter.h new file mode 100644 index 00000000..2bed076e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFJunkMailFilter.h @@ -0,0 +1,62 @@ +/* + * 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" + +@class NSString, NSURL; + +@interface MFJunkMailFilter : NSObject +{ + struct __LSMMap *_map; + BOOL _isDirty; + BOOL _useCleanMap; + BOOL _isInTraining; + NSURL *_oldMapFileURL; + NSURL *_mapFileURL; + NSString *_mapFilePath; +} + ++ (void)resetJunkMailUsageCounters; ++ (void)resetJunkMailTrainingBalance; ++ (void)incrementJunkMailTrainingCreditBy:(long long)arg1; ++ (void)incrementJunkMailTrainingDebtBy:(long long)arg1; ++ (BOOL)shouldUpdateTrainingDebt; ++ (id)_junkFilterUsageCounterKeys; ++ (id)sharedInstance; +@property(nonatomic) BOOL isInTraining; // @synthesize isInTraining=_isInTraining; +@property(retain) NSString *mapFilePath; // @synthesize mapFilePath=_mapFilePath; +@property(retain) NSURL *mapFileURL; // @synthesize mapFileURL=_mapFileURL; +@property(retain) NSURL *oldMapFileURL; // @synthesize oldMapFileURL=_oldMapFileURL; +@property(nonatomic) BOOL useCleanMap; // @synthesize useCleanMap=_useCleanMap; +- (void)_saveTrainingWithDelay; +@property(nonatomic) BOOL isDirty; +- (void)userDidReplyToMessage:(id)arg1; +- (id)trainOnMessages:(id)arg1 junkMailLevel:(long long)arg2; +- (long long)junkMailLevelForMessage:(id)arg1 junkRecorder:(id)arg2; +- (long long)junkMailLevelForMessage:(id)arg1; +- (id)_usageCounter; +@property(readonly) BOOL gatherUsageCounts; +- (id)state; +@property(readonly) BOOL isEnabled; +@property(readonly) long long junkMailTrainingCredit; +@property(readonly) long long junkMailTrainingDebt; +@property(readonly) long long junkMailTrainingBalance; +- (void)saveTraining; +- (void)reset; +@property(readonly) unsigned long long manuallyMarkedAsNotJunkMessageCount; +@property(readonly) unsigned long long manuallyMarkedAsJunkMessageCount; +@property(readonly) unsigned long long evaluatedAsJunkMessageCount; +@property(readonly) unsigned long long evaluatedMessageCount; +- (void)setMap:(struct __LSMMap *)arg1; +- (struct __LSMMap *)map; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLibrary.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibrary.h new file mode 100644 index 00000000..3cb82504 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibrary.h @@ -0,0 +1,283 @@ +/* + * 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 "MFLibraryInterface.h" + +@interface MFLibrary : NSObject +{ +} + ++ (unsigned long long)numberOfMessagesForAccount:(id)arg1; ++ (void)queueConversationsChangedNotification:(id)arg1; ++ (void)queueMessagesCompactedNotification:(id)arg1; ++ (void)queueMessageGmailLabelsChangedNotificationForMessages:(id)arg1 labelChanges:(id)arg2; ++ (void)queueMessagesChangedNotificationForMessages:(id)arg1 flags:(id)arg2 oldFlagsByMessage:(id)arg3; ++ (void)queueMessagesUpdatedNotification:(id)arg1; ++ (void)queueMessagesAddedNotification:(id)arg1; ++ (void)_queueMessagesNotification:(id)arg1 withUserInfo:(id)arg2; ++ (void)didCommit:(struct sqlite3 *)arg1; ++ (id)newUnsignedForQuery:(id)arg1 db:(struct sqlite3 *)arg2; ++ (void)tagDatabaseVersionIfNeeded:(struct sqlite3 *)arg1; ++ (unsigned long long)lastWriteMinorVersion; ++ (void)flushCachedDatabases; ++ (void)_checkInDBHandle:(id)arg1 forWriting:(BOOL)arg2; ++ (id)_checkOutDBHandleForWriting:(BOOL)arg1 isPrivileged:(BOOL)arg2; ++ (void)executeReadBlockInDatabase:(id)arg1; ++ (void)executeWriteBlockInDatabase:(id)arg1; ++ (void)executeBlock:(id)arg1 isWriter:(void)arg2 useTransaction:(BOOL)arg3 isPrivileged:(BOOL)arg4; ++ (id)sqlSanitizeAndQuoteArray:(id)arg1; ++ (id)sqlSanitizeNSString:(id)arg1; ++ (long long)cachedMailboxIDForMailbox:(id)arg1; ++ (long long)mailboxIDForMailbox:(id)arg1; ++ (id)_mailboxForMailboxID:(long long)arg1 forceCreation:(BOOL)arg2; ++ (id)mailboxForMailboxID:(long long)arg1 forceCreation:(BOOL)arg2; ++ (long long)mailboxIDForMailbox:(id)arg1 loadIfNotPresent:(BOOL)arg2; ++ (BOOL)deleteEventForMessage:(id)arg1; ++ (BOOL)updateCalendarEvent:(id)arg1 forMessage:(id)arg2; ++ (BOOL)addCalendarEvent:(id)arg1 toMessage:(id)arg2; ++ (id)calendarEventForMessageID:(long long)arg1; ++ (void)prepareToReImportMessages; ++ (void)cleanOldDatabases; ++ (unsigned long long)totalNumberOfMessages; ++ (void)setTotalNumberOfMessages:(unsigned long long)arg1; ++ (unsigned long long)runningIndexOfCurrentMessage; ++ (void)incrementRunningIndexOfCurrentMessage; ++ (id)currentMailbox; ++ (void)setCurrentMailbox:(id)arg1; ++ (BOOL)threadIsExecutingInDatabaseBlock; ++ (void)setInitialized; ++ (BOOL)isInitialized; ++ (long long)libraryStatusAsReader; ++ (long long)libraryStatusAsWriter; ++ (long long)_libraryStatusCanWrite:(BOOL)arg1; ++ (void)dispose; ++ (BOOL)isEmptyDB; ++ (BOOL)fileExists; ++ (void)takeAccountsOnlineAllAccounts:(BOOL)arg1; ++ (void)upgradeMessageDirectoriesIfNeeded; ++ (void)_upgradeMessageDirectoriesSynchronously; ++ (BOOL)importMessagesFromEnabledAccounts; ++ (BOOL)libraryIsImporting; ++ (void)setLibraryIsImporting:(BOOL)arg1; ++ (BOOL)importMailbox:(id)arg1; ++ (BOOL)rebuildMailbox:(id)arg1; ++ (id)filterContiguousMessages:(id)arg1 forCriterion:(id)arg2 options:(unsigned int)arg3; ++ (id)criterionExpressionStringForStartLibraryID:(long long)arg1 count:(unsigned long long)arg2; ++ (BOOL)boolForCriterion:(id)arg1; ++ (unsigned long long)countForCriterion:(id)arg1; ++ (unsigned long long)countForCriterion:(id)arg1 monitor:(id)arg2; ++ (id)_queryForCountCriterion:(id)arg1; ++ (id)messagesMatchingCriterion:(id)arg1 options:(unsigned int)arg2 searchType:(long long)arg3; ++ (id)spotlightCallbackDispatchQueue; ++ (void)sendMessagesMatchingCriterion:(id)arg1 to:(id)arg2 options:(unsigned int)arg3 searchType:(long long)arg4 async:(BOOL)arg5; ++ (struct __MDQuery *)createAllMailboxesSpotlightQueryWithQueryString:(id)arg1 attributes:(struct __CFArray *)arg2 forUnreadCount:(BOOL)arg3 withMailboxExclusions:(BOOL)arg4 includeWhereFromsCriterion:(BOOL)arg5; ++ (id)spotlightQueryStringWithQueryString:(id)arg1; ++ (id)countedSpotlightQueryStringWithQueryString:(id)arg1; ++ (id)queryForCriterion:(id)arg1 options:(unsigned int)arg2; ++ (id)queryForCriterion:(id)arg1 options:(unsigned int)arg2 baseTable:(unsigned long long)arg3 isSubquery:(BOOL)arg4 fixUpCriterion:(BOOL)arg5; ++ (void)markMessageAsViewed:(id)arg1 viewedDate:(id)arg2; ++ (BOOL)hasCacheFileForMessage:(id)arg1 part:(id)arg2 directoryContents:(id)arg3; ++ (BOOL)hasCacheFileForMessage:(id)arg1 directoryContents:(id)arg2; ++ (id)fullMessageDataForMessage:(id)arg1; ++ (id)_messageDataAtPath:(id)arg1; ++ (BOOL)isPartialMessageBodyAvailable:(id)arg1; ++ (BOOL)isMessageContentsLocallyAvailable:(id)arg1; ++ (id)dataForMimePart:(id)arg1; ++ (id)fullBodyDataForMessage:(id)arg1; ++ (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; ++ (id)bodyDataForMessage:(id)arg1; ++ (id)bodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; ++ (id)headerDataForMessage:(id)arg1; ++ (id)bodyDataAtPath:(id)arg1 headerData:(id *)arg2; ++ (id)_emlxPListInFile:(id)arg1 plistOffset:(unsigned long long *)arg2; ++ (id)emlxPListAtURL:(id)arg1; ++ (void)setData:(id)arg1 forMessage:(id)arg2 isPartial:(BOOL)arg3 hasCompleteText:(BOOL)arg4; ++ (void)setData:(id)arg1 forMessage:(id)arg2 isPartial:(BOOL)arg3; ++ (void)appendData:(id)arg1 forMessage:(id)arg2 part:(id)arg3; ++ (id)existingDataPathForMessage:(id)arg1; ++ (id)messageWithDataPath:(id)arg1; ++ (id)_dataPathForMessage:(id)arg1 type:(long long)arg2; ++ (id)dataPathForMessage:(id)arg1 part:(id)arg2; ++ (id)dataPathForMessage:(id)arg1; ++ (id)_dataPathForMessage:(id)arg1 withFilename:(id)arg2; ++ (id)_dataPathForLibraryID:(long long)arg1 pathToMailbox:(id)arg2 type:(long long)arg3; ++ (id)dataPathForLibraryID:(long long)arg1 pathToMailbox:(id)arg2 fileExists:(char *)arg3; ++ (id)attachmentsDirectoryForMessage:(id)arg1; ++ (id)_filenameForLibraryID:(long long)arg1 type:(long long)arg2; ++ (id)filenameForLibraryID:(long long)arg1 part:(id)arg2; ++ (id)intermediateDirectoryForLibraryID:(long long)arg1 forAttachments:(BOOL)arg2; ++ (id)v2_intermediateDirectoryForLibraryID:(long long)arg1 forAttachments:(BOOL)arg2; ++ (id)dataDirectoryForMailbox:(id)arg1; ++ (void)_invalidateDirectoryForMailboxes:(id)arg1; ++ (id)databaseUUIDString; ++ (void)_setDatabaseUUIDString:(id)arg1; ++ (void)loadDatabaseUUIDStringIfNeeded:(struct sqlite3 *)arg1; ++ (void)setComputedHighestModificationSequence:(unsigned long long)arg1 forIMAPMailboxURL:(id)arg2; ++ (unsigned long long)computedHighestModificationSequenceforIMAPMailboxURL:(id)arg1; ++ (void)setAllegedHighestModificationSequence:(unsigned long long)arg1 forIMAPMailboxURL:(id)arg2; ++ (unsigned long long)allegedHighestModificationSequenceforIMAPMailboxURL:(id)arg1; ++ (void)updateEWSOfflineIdsToRealIds:(id)arg1; ++ (id)EWSSyncStateForMailbox:(id)arg1; ++ (void)setEWSSyncState:(id)arg1 forMailbox:(id)arg2; ++ (id)EWSFolderIdsByURLForMailboxes:(id)arg1; ++ (id)EWSFolderIdForMailbox:(id)arg1; ++ (void)setEWSFolderId:(id)arg1 forMailbox:(id)arg2; ++ (id)_EWSProperty:(char *)arg1 forMailbox:(id)arg2 errorString:(id)arg3; ++ (void)_addEWSProperty:(char *)arg1 value:(id)arg2 forMailbox:(id)arg3 errorString:(id)arg4; ++ (BOOL)_EWSFolderExistsForMailbox:(id)arg1 errorString:(id)arg2; ++ (id)draftWithDocumentID:(id)arg1 mailbox:(id)arg2; ++ (id)lastMessageWithMessageID:(id)arg1 inMailbox:(id)arg2; ++ (id)messagesWithMessageID:(id)arg1 inMailbox:(id)arg2; ++ (void)deleteMailboxes:(id)arg1 forRebuild:(BOOL)arg2; ++ (void)deleteMailboxes:(id)arg1; ++ (BOOL)renameMailboxes:(id)arg1 to:(id)arg2; ++ (void)compactMailbox:(id)arg1; ++ (void)removeMessages:(id)arg1 cleanUpAfter:(BOOL)arg2; ++ (void)removeMessages:(id)arg1; ++ (BOOL)shouldCancel; ++ (void)updateFileForMessage:(id)arg1; ++ (void)reloadMessage:(id)arg1; ++ (id)snippetsForMessages:(id)arg1; ++ (BOOL)loadSecondaryMetadataForMessage:(id)arg1; ++ (BOOL)_loadSecondaryMetadataForMessage:(id)arg1 fromDB:(struct sqlite3 *)arg2; ++ (id)mailboxNameForMessage:(id)arg1; ++ (id)accountForMessage:(id)arg1; ++ (id)remoteStoreForMessage:(id)arg1; ++ (id)mailboxForMessage:(id)arg1; ++ (id)urlForMailboxID:(long long)arg1; ++ (void)mailboxesDidChange; ++ (id)copyMailboxURLToRowIDMap; ++ (id)referencesForLibraryID:(long long)arg1; ++ (BOOL)boolForQuery:(id)arg1; ++ (unsigned long long)unsignedCountForQuery:(id)arg1 monitor:(id)arg2; ++ (BOOL)messageHasRelatedNonJunkMessages:(id)arg1; ++ (id)firstReplyToMessage:(id)arg1; ++ (id)messageWithLibraryID:(long long)arg1; ++ (id)messageWithLibraryID:(long long)arg1 options:(unsigned int)arg2; ++ (id)messagesWithMessageIDHeader:(id)arg1; ++ (id)messageWithMessageID:(id)arg1; ++ (void)setStoreForMessage:(id)arg1 fromMailbox:(id)arg2 knownStores:(id)arg3; ++ (void)setStoreForMessage:(id)arg1 knownStores:(id)arg2; ++ (void)setStoresForMessages:(id)arg1; ++ (id)getDetailsForMessagesWithQuery:(char *)arg1 contiguous:(BOOL)arg2 firstRemoteID:(unsigned long long)arg3 lastRemoteID:(unsigned long long)arg4 fromMailbox:(id)arg5; ++ (id)getDetailsForMessagesWithRemoteIDs:(id)arg1 fromMailbox:(id)arg2; ++ (id)getDetailsForMessagesWithRemoteIDStrings:(id)arg1 fromMailbox:(id)arg2; ++ (unsigned int)maximumRemoteIDForMailbox:(id)arg1; ++ (id)messageWithRemoteID:(id)arg1 inRemoteMailbox:(id)arg2 options:(unsigned int)arg3; ++ (id)messagesWithRemoteIDs:(id)arg1 inRemoteMailbox:(id)arg2 options:(unsigned int)arg3; ++ (void)setMessageCountsForMailboxes; ++ (unsigned long long)unreadCountForMessageType:(BOOL)arg1; ++ (unsigned long long)totalCountForMailbox:(id)arg1; ++ (void)gatherCountsForMailbox:(id)arg1 totalCount:(unsigned long long *)arg2 unreadCount:(unsigned long long *)arg3 deletedCount:(unsigned long long *)arg4 totalSize:(unsigned long long *)arg5; ++ (id)unreadMessagesForMailbox:(id)arg1; ++ (id)messagesForGmailLabel:(id)arg1 inAllMailMailbox:(id)arg2 olderThanNumberOfDays:(long long)arg3; ++ (id)messagesForMailbox:(id)arg1 olderThanNumberOfDays:(long long)arg2; ++ (id)messagesForMailbox:(id)arg1 where:(id)arg2 sortedBy:(id)arg3 ascending:(BOOL)arg4 options:(unsigned int)arg5; ++ (void)sendMessagesForMailbox:(id)arg1 where:(id)arg2 sortedBy:(id)arg3 ascending:(BOOL)arg4 to:(id)arg5 options:(unsigned int)arg6; ++ (id)messagesWhere:(id)arg1 sortedBy:(id)arg2 options:(unsigned int)arg3; ++ (id)messagesMatchingQuery:(const char *)arg1 options:(unsigned int)arg2; ++ (void)sendMessagesMatchingQuery:(const char *)arg1 to:(id)arg2 options:(unsigned int)arg3; ++ (void)_setRecipientTypeForMessages:(id)arg1; ++ (id)_copyActiveMailboxesClause; ++ (void)_updateActiveMailboxesClause; ++ (id)_updatedActiveMailboxesClause:(id)arg1; ++ (BOOL)_isActiveMailboxID:(long long)arg1; ++ (void)_updateActiveMailboxes; ++ (id)_updatedActiveMailboxes:(id)arg1; ++ (void)_getActiveAccountURLs:(id)arg1 andActiveMailboxURLs:(id)arg2; ++ (void)disableActiveMailboxFiltering; ++ (void)invalidateActiveMailboxesCaches; ++ (id)myAddressIDsString; ++ (void)invalidateMyEmailAddresses; ++ (int)accessSequenceNumber; ++ (int)updateSequenceNumber; ++ (long long)threadPriority; ++ (void)setThreadPriority:(long long)arg1; ++ (void)setAttachmentNames:(id)arg1 forMessage:(id)arg2; ++ (id)duplicateMessages:(id)arg1 newRemoteIDs:(id)arg2 newDocumentIDs:(id)arg3 forMailbox:(id)arg4 setFlags:(long long)arg5 clearFlags:(long long)arg6 createNewCacheFiles:(BOOL)arg7 error:(id *)arg8; ++ (id)duplicateMessages:(id)arg1 newRemoteIDs:(id)arg2 newDocumentIDs:(id)arg3 forMailbox:(id)arg4 setFlags:(long long)arg5 clearFlags:(long long)arg6 messageFlagsForMessages:(id)arg7 createNewCacheFiles:(BOOL)arg8 error:(id *)arg9; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 error:(id *)arg3; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 progressDelegate:(id)arg3 error:(id *)arg4; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 oldMessagesByNewMessage:(id)arg4 error:(id *)arg5; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 isInitialImport:(BOOL)arg4 oldMessagesByNewMessage:(id)arg5 error:(id *)arg6; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 isInitialImport:(BOOL)arg4 oldMessagesByNewMessage:(id)arg5 remoteIDs:(id)arg6 setFlags:(long long)arg7 clearFlags:(long long)arg8 messageFlagsForMessages:(id)arg9 copyFiles:(BOOL)arg10 error:(id *)arg11; ++ (id)insertOrUpdateMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 isInitialImport:(BOOL)arg4 oldMessagesByNewMessage:(id)arg5 remoteIDs:(id)arg6 newDocumentIDs:(id)arg7 setFlags:(long long)arg8 clearFlags:(long long)arg9 messageFlagsForMessages:(id)arg10 copyFiles:(BOOL)arg11 progressDelegate:(id)arg12 updateRowIDs:(id)arg13 error:(id *)arg14; ++ (void)resetConversationIDForMessages:(id)arg1; ++ (void)updateDatabaseValuesIfNeeded; ++ (void)cleanupTablesReferencingMessageID:(long long)arg1 inDatabase:(id)arg2; ++ (BOOL)canUseEmlxFileWhenCopyingMessage:(id)arg1 fromAccount:(id)arg2 toAccount:(id)arg3; ++ (BOOL)isLibraryMessage:(id)arg1; ++ (BOOL)isLocalAccount:(id)arg1; ++ (BOOL)isRemoteStoreAccount:(id)arg1; ++ (void)fixAttachmentCache; ++ (void)addGmailLabelsToEmlx; ++ (void)hideMailboxesNotInLibraryFromSpotlight; ++ (void)backfillDateLastViewedAttribute; ++ (void)_updateDateLastViewed:(int)arg1 forLibraryID:(long long)arg2; ++ (void)deleteDataDirectoriesForMailbox:(id)arg1; ++ (void)touchDirectoryForMailbox:(id)arg1; ++ (void)_removeAlternatePathForEmlxPath:(id)arg1; ++ (BOOL)writeEmlxFile:(id)arg1 forMessage:(id)arg2 withBodyData:(id)arg3 plistData:(id)arg4 error:(id *)arg5; ++ (void)_removeExtendedAttributePlistFromEMLX:(id)arg1; ++ (id)plistDataForMessage:(id)arg1 subject:(id)arg2 sender:(id)arg3 to:(id)arg4 dateSent:(id)arg5 dateReceived:(id)arg6 dateLastViewed:(id)arg7 remoteID:(id)arg8 originalMailboxURLString:(id)arg9 gmailLabels:(id)arg10 flags:(long long)arg11 mergeWithDictionary:(id)arg12; ++ (void)_sendAttributesToSpotlight:(id)arg1 attributes:(id)arg2 replaceExisting:(BOOL)arg3; ++ (void)_sendAttributesToSpotlight:(id)arg1 bodyData:(id)arg2 plistData:(id)arg3 replaceExisting:(BOOL)arg4; ++ (void)updateNormalizedSubjectsIfNeededWithHandle:(id)arg1; ++ (void)_mailAccountsDidChange:(id)arg1; ++ (void)_mailboxWasRenamed:(id)arg1; ++ (void)_mailboxWillBeInvalidated:(id)arg1; ++ (BOOL)setupLibrary; ++ (void)setLogLibraryErrors:(BOOL)arg1; ++ (BOOL)logLibraryErrors; ++ (void)setLogSqliteQueries:(BOOL)arg1; ++ (BOOL)logSqliteQueries; ++ (void)setLogSqliteErrors:(BOOL)arg1; ++ (BOOL)logSqliteErrors; ++ (void)initialize; ++ (id)writeQueue; ++ (BOOL)initializeDatabase:(struct sqlite3 *)arg1; ++ (void)updateSize:(id)arg1 forMessage:(id)arg2; ++ (void)setFlagsAndColorForMessages:(id)arg1; ++ (void)setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; ++ (void)_commitFlagsForMessage:(id)arg1 oldFlags:(id)arg2; ++ (void)updateGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; ++ (id)_mailboxIDsStringForMailboxes:(id)arg1; ++ (void)clearLabelsForMailboxes:(id)arg1; ++ (void)removeSourceMailboxFromMailboxes:(id)arg1; ++ (void)removeSourceMailbox:(id)arg1; ++ (void)setSourceMailbox:(id)arg1 forMailboxes:(id)arg2; ++ (void)recalculateMessageCountsForMailboxIDs:(id)arg1; ++ (void)loadMessageCountsForMailboxes; ++ (void)commitFlagsForMessage:(id)arg1 oldFlags:(unsigned int)arg2; ++ (void)setSnippetsForMessages:(id)arg1; ++ (void)waitForCommitsToFinish; ++ (void)_updateMessageFilesInBackground; ++ (void)_commitMessagesInBackground; ++ (void)commitSynchronouslyPostingMessages:(id)arg1 postFlags:(id)arg2 postingOldFlagsByMessage:(id)arg3; ++ (void)commitSynchronously; ++ (void)synchronouslyUpdateMessageFiles; ++ (void)unScheduleMessageFileUpdate; ++ (void)scheduleMessageFileUpdate; ++ (void)unScheduleCommit; ++ (void)scheduleCommit; ++ (void)_setCommitTimer:(id)arg1; ++ (void)_addMessagesNeedingEmlxUpdate:(id)arg1; ++ (void)updateJunkMessagesForIndexing; ++ (void)flagsChangedForMessages:(id)arg1; ++ (void)restoreBackingStoreUpdateJournalIfNeeded; ++ (void)_mergeRestoreMessageLibraryIDsToUpdate:(id)arg1; ++ (BOOL)updateBackingStoreUpdateJournal; ++ (BOOL)removeBackingStoreUpdateJournal; ++ (id)backingStoreJournalPath; ++ (id)backingStoreJournalDirectory; ++ (void)commitMessage:(id)arg1 immediately:(BOOL)arg2; ++ (id)sharedInstance; ++ (void)loadSearchSettings; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryCalendarEvent.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryCalendarEvent.h new file mode 100644 index 00000000..c116dedd --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryCalendarEvent.h @@ -0,0 +1,40 @@ +/* + * 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" + +@class NSDate, NSString; + +@interface MFLibraryCalendarEvent : NSObject +{ + BOOL _isAllDayEvent; + BOOL _isOutOfDate; + BOOL _hasBeenProcessed; + BOOL _isResponseRequested; + NSString *_originalReceivedAccountURLString; + NSString *_associatedCalendarItemIdString; + NSString *_location; + NSString *_uid; + NSDate *_startDate; + NSDate *_endDate; + long long _responseStatus; +} + +@property long long responseStatus; // @synthesize responseStatus=_responseStatus; +@property BOOL isResponseRequested; // @synthesize isResponseRequested=_isResponseRequested; +@property BOOL hasBeenProcessed; // @synthesize hasBeenProcessed=_hasBeenProcessed; +@property BOOL isOutOfDate; // @synthesize isOutOfDate=_isOutOfDate; +@property BOOL isAllDayEvent; // @synthesize isAllDayEvent=_isAllDayEvent; +@property(copy) NSDate *endDate; // @synthesize endDate=_endDate; +@property(copy) NSDate *startDate; // @synthesize startDate=_startDate; +@property(copy) NSString *uid; // @synthesize uid=_uid; +@property(copy) NSString *location; // @synthesize location=_location; +@property(copy) NSString *associatedCalendarItemIdString; // @synthesize associatedCalendarItemIdString=_associatedCalendarItemIdString; +@property(copy) NSString *originalReceivedAccountURLString; // @synthesize originalReceivedAccountURLString=_originalReceivedAccountURLString; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryIMAPMessage.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryIMAPMessage.h new file mode 100644 index 00000000..bdde83e7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryIMAPMessage.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MCMessageHeaders; + +@interface MFLibraryIMAPMessage : MFLibraryMessage +{ + MCMessageHeaders *_headers; +} + +- (id)account; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (void)setHeaders:(id)arg1; +- (id)headers; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryIMAPStore.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryIMAPStore.h new file mode 100644 index 00000000..3a5476fe --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryIMAPStore.h @@ -0,0 +1,176 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "IMAPMailboxDelegate.h" +#import "IMAPMessageDataSource.h" + +@class IMAPCommandPipeline, IMAPDownloadCache, IMAPMailbox, IMAPMailboxSyncEngine, MCInvocationQueue, NSLock, NSMutableArray, NSMutableDictionary, NSString; + +@interface MFLibraryIMAPStore : MFRemoteStore +{ + double _lastNewMailCheckAllowedTime; + NSString *_mailboxName; + IMAPMailbox *_IMAPMailbox; + IMAPDownloadCache *_downloadCache; + IMAPCommandPipeline *_fetchPipeline; + IMAPMailboxSyncEngine *_syncEngine; + NSLock *_copyLock; + NSMutableArray *_pendingCompacts; + MCInvocationQueue *_pendingCompactsQueue; + NSMutableDictionary *_recentFlagChangesByMessageID; + NSMutableArray *_recentlyDeletedMessageIDs; + BOOL _supportsCustomPermanentFlags; + BOOL _readyToDealloc; + unsigned long long _filesystemWatcherCookie; + BOOL _isOpenedByUser; + BOOL _startedWatcher; + unsigned long long _totalCount; +} + ++ (id)_newDataFromMimePart:(id)arg1 threshold:(unsigned long long)arg2; +@property BOOL startedWatcher; // @synthesize startedWatcher=_startedWatcher; +@property unsigned long long totalCount; // @synthesize totalCount=_totalCount; +@property BOOL isOpenedByUser; // @synthesize isOpenedByUser=_isOpenedByUser; +- (void)updateSelectedGatewayFromMailbox:(id)arg1; +- (void)_updateUidValidityFromMailbox:(id)arg1; +- (void)_processResponsesFromMailbox:(id)arg1; +- (void)_updateCountFromMailbox:(id)arg1 fromIDLE:(id)arg2; +- (void)updateComputedHighestModificationSequence:(unsigned long long)arg1 forMailbox:(id)arg2; +- (unsigned long long)computedHighestModificationSequenceForMailbox:(id)arg1; +- (unsigned long long)allegedHighestModificationSequenceForMailbox:(id)arg1; +- (void)updateUidValidityFromMailbox:(id)arg1; +- (void)processResponsesFromMailbox:(id)arg1; +- (void)updateCountFromMailbox:(id)arg1 fromIDLE:(BOOL)arg2; +- (id)offlineCacheIfOffline; +- (id)_offlineCache; +- (id)account; +- (id)messagesBeingRouted; +- (id)downloadCache; +- (id)fetchPipeline; +- (void)_setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; +- (void)messagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3 options:(id)arg4; +- (BOOL)isSortedAscending; +- (id)sortOrder; +- (void)writeUpdatedMessageDataToDisk; +- (id)_deletedMessages; +- (id)_copyOfAllMessagesSortedByUidWithOptions:(unsigned int)arg1; +- (void)setUid:(unsigned int)arg1 forMessageWithTemporaryUid:(unsigned int)arg2; +- (id)copyOfOldCachedMessagesContentsForUid:(unsigned int)arg1; +- (BOOL)hasValidCacheFileForUid:(unsigned int)arg1; +- (BOOL)hasValidCacheFileForMessage:(id)arg1; +- (id)_preferredOrderForFetchingMessageBodies:(id)arg1; +- (void)forceResync; +- (void)_retrieveNewMessagesForCheckingNewMail:(BOOL)arg1; +- (void)_updateLastNewMailCheckAllowedTime; +- (void)setComputedHighestModificationSequence:(unsigned long long)arg1; +- (void)setAllegedHighestModificationSequence:(unsigned long long)arg1; +- (unsigned long long)allegedHighestModificationSequence; +- (void)setUidNextStatus:(unsigned int)arg1; +- (unsigned int)uidNextStatus; +- (void)setUidValidityStatus:(unsigned int)arg1; +- (id)_uidIndexSetForMessages:(id)arg1; +- (void)startSynchronization; +- (id)_gatewayCreateIfNeeded:(BOOL)arg1 options:(unsigned long long)arg2; +- (id)copyOfAllMessagesWithOptions:(unsigned int)arg1; +- (id)copyOfAllMessagesWithSubjects; +- (BOOL)messageHasBeenDeleted:(id)arg1; +- (BOOL)canSetMessageColors; +- (void)setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; +- (id)messageWithRemoteID:(id)arg1 inRemoteMailbox:(id)arg2; +- (id)duplicateMessages:(id)arg1 newRemoteIDs:(id)arg2 newDocumentIDs:(id)arg3 forMailbox:(id)arg4 setFlags:(long long)arg5 clearFlags:(long long)arg6 createNewCacheFiles:(BOOL)arg7; +- (id)duplicateMessages:(id)arg1 newRemoteIDs:(id)arg2 newDocumentIDs:(id)arg3 forMailbox:(id)arg4 setFlags:(long long)arg5 clearFlags:(long long)arg6 messageFlagsForMessages:(id)arg7 createNewCacheFiles:(BOOL)arg8; +- (id)messagesForMailbox:(id)arg1 where:(id)arg2 sortedBy:(id)arg3 ascending:(BOOL)arg4 options:(unsigned int)arg5; +- (void)compactMailbox:(id)arg1; +- (BOOL)hasCacheFileForMessage:(id)arg1 directoryContents:(id)arg2; +- (BOOL)hasCacheFileForMessage:(id)arg1 part:(id)arg2 directoryContents:(id)arg3; +- (unsigned long long)totalCountOfMessages; +- (id)getDetailsForMessagesWithRemoteIDs:(id)arg1; +- (unsigned int)maximumRemoteID; +- (id)messageForMessageID:(id)arg1; +- (id)colorForMessage:(id)arg1; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_waitForDataFromDownload:(id)arg1 uid:(unsigned int)arg2 gateway:(id)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (BOOL)_hasCachedDataForMimePart:(id)arg1 message:(id)arg2; +- (id)cacheDirectoryContents; +- (id)dataForMimePart:(id)arg1; +- (id)_fetchDataForMimePart:(id)arg1 keepInMemory:(BOOL)arg2 writeToDisk:(BOOL)arg3; +- (id)_dataForMessage:(id)arg1 readHeadersOnly:(BOOL)arg2; +- (id)messagesWithRowIDs:(id)arg1; +- (id)messageWithLibraryID:(long long)arg1 options:(unsigned int)arg2; +- (id)messageWithDefaultLoadOptionsAndRowID:(long long)arg1; +@property(readonly) BOOL persistentIDType; +- (void)syncEngineDidSynchronizeMessageList; +- (void)_internalSetFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2 updatingServer:(BOOL)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)_synchronouslyStoreLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2 updatingServer:(BOOL)arg3; +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)recentFlagChangesForRowID:(id)arg1; +- (void)_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)_synchronouslyStoreFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (BOOL)messagesAreBeingAdded; +- (void)addMessages:(id)arg1; +- (id)newDictionaryForLocalFlags:(unsigned int)arg1 serverFlags:(unsigned int)arg2 existingDictionary:(id)arg3; +- (long long)undoAppendOfMessageIDs:(id)arg1; +- (id)_uidSearchForMessageIds:(id)arg1 destinationUidNext:(unsigned int)arg2 withGateway:(id)arg3; +- (long long)_appendToServerWithContext:(id)arg1 error:(id *)arg2; +- (BOOL)_copyMessagesByID:(id)arg1 toStore:(id)arg2 settingFlags:(id)arg3 newMessages:(id)arg4 error:(id *)arg5; +- (void)_copyFlagsFromMessages:(id)arg1 flagsByMessage:(id)arg2 toMessagesWithUids:(id)arg3 withGateway:(id)arg4 usedFlags:(id)arg5; +- (BOOL)allowsOverwrite; +- (BOOL)allowsAppend; +- (id)messagesBeingAdded; +- (void)undeleteMessagesWithRemoteIDs:(id)arg1; +- (void)deleteLastMessageWithHeaders:(id)arg1 compactWhenDone:(BOOL)arg2; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (void)compactMessagesFromSyncEngine:(id)arg1; +- (void)compactMessages:(id)arg1; +- (void)_processPendingCompacts; +- (void)doCompact; +- (BOOL)canCompact; +- (id)mailbox; +- (id)mailboxName; +- (void)removeAllLocalMessages; +- (BOOL)canRebuild; +- (void)syncEngineDidFinish; +- (void)syncEngineDidStart; +- (void)doRoutineCleanup; +- (void)cleanupSynchronously; +- (void)fetchSynchronouslyForKnownChanges; +- (void)fetchSynchronously; +- (void)checkNewMail; +- (void)_fetchForCheckingNewMail:(BOOL)arg1; +- (BOOL)isAllMailMailbox; +- (BOOL)isInbox; +- (BOOL)_shouldCallCompactWhenClosing; +- (void)setSyncEngineLogging:(BOOL)arg1; +- (void)invalidateSyncEngine; +- (void)_invalidate; +- (BOOL)setStoreState:(int)arg1 fromState:(int)arg2; +- (id)willDeallocPerformingInStoreCacheLock:(char *)arg1; +- (void)openSynchronouslyWithoutUserInteraction; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (void)_openSynchronouslyUpdatingMetadata:(BOOL)arg1 withOptions:(unsigned long long)arg2; +- (void)openAsynchronously; +- (id)messagesForImporter; +@property(readonly) BOOL isReadOnly; +- (unsigned int)_permanentFlags; +- (BOOL)_isSynchronized; +- (BOOL)_isRebuildingOrSynchronizing; +- (id)_copyMailboxSyncEngineCreateIfNecessary:(BOOL)arg1 setupGatewayIfNecessary:(BOOL)arg2; +- (id)_IMAPMailbox; +- (void)dealloc; +- (id)initWithCriterion:(id)arg1 mailbox:(id)arg2 readOnly:(BOOL)arg3; +- (id)objectSpecifierForMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryInterface-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryInterface-Protocol.h new file mode 100644 index 00000000..b2ede79e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryInterface-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MFLibraryInterface ++ (id)urlForMailboxID:(long long)arg1; ++ (long long)mailboxIDForMailbox:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryMessage.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryMessage.h new file mode 100644 index 00000000..b13b563d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryMessage.h @@ -0,0 +1,130 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +#import "IMAPMessage.h" +#import "IMAPPersistedMessage.h" +#import "MCPersistentIDFetching.h" + +@class MFLibraryCalendarEvent, NSString; + +@interface MFLibraryMessage : MCMessage +{ + long long _libraryID; + NSString *_remoteID; + int _isCachingBodyAndHeaders; + unsigned int _options; + unsigned int _uid; + CDStruct_07ba05d6 _remoteFlags; + BOOL _hasSetCalendarEvent; + BOOL _hasSetReferences; + BOOL _isBeingChanged; + BOOL _isCompacted; + int _conversationPosition; + long long _conversationID; + long long _mailboxID; + long long _originalMailboxID; + unsigned long long _size; +} + ++ (id)fetchedMessageWithRowID:(long long)arg1; ++ (id)messageWithPersistentID:(id)arg1; ++ (id)messageWithLibraryID:(long long)arg1; ++ (id)messageWithURL:(id)arg1; ++ (id)messagesWithURL:(id)arg1; ++ (id)_residentMessageForLibraryID:(long long)arg1; ++ (void)_removeMessageFromResidentMessagesWithLibraryID:(long long)arg1; ++ (id)_addMessageToResidentMessages:(id)arg1; ++ (id)residentMessages; ++ (void)initialize; +@property BOOL isCompacted; // @synthesize isCompacted=_isCompacted; +@property unsigned int primitiveOptions; // @synthesize primitiveOptions=_options; +@property BOOL isBeingChanged; // @synthesize isBeingChanged=_isBeingChanged; +@property unsigned long long size; // @synthesize size=_size; +@property long long originalMailboxID; // @synthesize originalMailboxID=_originalMailboxID; +@property long long mailboxID; // @synthesize mailboxID=_mailboxID; +@property int conversationPosition; // @synthesize conversationPosition=_conversationPosition; +@property long long conversationID; // @synthesize conversationID=_conversationID; +- (void)_cacheMessageBodyDataIfPossible:(id)arg1; +- (id)_cachedMessageBodyData; +- (void)_cacheMessageBodyIfPossible:(id)arg1; +- (id)_cachedMessageBody; +- (void)_cacheHeaderDataIfPossible:(id)arg1; +- (id)_cachedHeaderData; +- (void)_cacheHeadersIfPossible:(id)arg1; +- (id)_cachedHeaders; +- (void)uncacheBodyAndHeader; +- (void)cacheBodyAndHeader; +- (void)appendData:(id)arg1 part:(id)arg2; +- (void)setData:(id)arg1 isPartial:(BOOL)arg2; +- (void)_calculateAttachmentInfoFromBody:(id)arg1; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (void)setRemoteID:(const char *)arg1 documentID:(id)arg2 flags:(long long)arg3 size:(unsigned long long)arg4 mailboxID:(long long)arg5 originalMailboxID:(long long)arg6 color:(char *)arg7 conversationID:(long long)arg8 conversationPosition:(int)arg9; +- (id)preferredEmailAddressToReplyWith; +- (id)account; +- (id)path; +- (id)_extendedDescriptionWithSubject:(BOOL)arg1; +- (id)extendedDescription; +- (id)description; +- (void)reload; +- (BOOL)endChanging:(BOOL)arg1 immediately:(BOOL)arg2; +- (void)beginChanging; +- (void)commitLater; +- (void)commit; +- (void)setColor:(id)arg1 hasBeenEvaluated:(BOOL)arg2 flags:(unsigned int)arg3 mask:(unsigned int)arg4; +- (void)setLibraryColor:(char *)arg1; +- (void)setColor:(id)arg1; +- (void)setColorHasBeenEvaluated:(BOOL)arg1; +- (void)setFlags:(long long)arg1; +- (void)setMessageFlags:(unsigned int)arg1 mask:(unsigned int)arg2; +- (id)mailboxName; +@property BOOL hasTemporaryUid; +@property BOOL partsHaveBeenCached; +- (BOOL)isPartialMessageBodyAvailable; +- (BOOL)isMessageContentsLocallyAvailable; +@property BOOL isPartial; +- (BOOL)loadOptionsSuffice:(unsigned int)arg1; +@property unsigned int options; +- (void)setUid:(unsigned int)arg1; +- (unsigned int)uid; +- (CDStruct_07ba05d6)remoteFlags; +- (void)setIMAPFlags:(CDStruct_07ba05d6)arg1; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (id)remoteID; +- (void)setRemoteID:(id)arg1; +- (void)_setRemoteID:(id)arg1; +- (void)_updateUID; +- (id)mailbox; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (id)_unlockedMessageStore; +- (void)setMessageSize:(unsigned long long)arg1; +- (unsigned long long)messageSize; +- (id)inReplyToHeaderDigest; +- (id)messageIDHeaderDigest; +- (id)to; +- (BOOL)supportsSnippets; +- (id)sender; +- (id)subject; +@property(retain) MFLibraryCalendarEvent *calendarEvent; +- (void)setReferences:(id)arg1; +- (id)references; +- (BOOL)type; +- (id)originalMailboxURLString; +- (id)documentID; +- (long long)_mf_LibraryMessageLibraryID; +- (long long)libraryID; +- (id)persistentID; +@property(readonly) BOOL persistentIDType; +- (id)messageID; +- (void)dealloc; +- (id)init; +- (id)initWithLibraryID:(long long)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryQueries.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryQueries.h new file mode 100644 index 00000000..3ff1a341 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryQueries.h @@ -0,0 +1,27 @@ +/* + * 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" + +@interface MFLibraryQueries : NSObject +{ +} + ++ (char *)queryToDeleteEventByMessageID:(id)arg1; ++ (int)bindUpdateEventStatement:(id)arg1 withEvent:(id)arg2 messageID:(long long)arg3; ++ (id)checkOutStatementToUpdateEvent:(id)arg1; ++ (int)bindInsertEventStatement:(id)arg1 withEvent:(id)arg2 messageID:(long long)arg3; ++ (id)checkOutStatementToInsertEvent:(id)arg1; ++ (id)checkOutStatementForEventWithMessageID:(long long)arg1 usingDB:(id)arg2; ++ (id)checkOutStatementForMailboxURLFromMailboxID:(long long)arg1 usingDB:(id)arg2; ++ (id)fromClauseForTables:(unsigned long long)arg1 startingFromTableExpression:(id)arg2; ++ (id)checkOutStatementToCompletelyUpdateMessage:(id)arg1; ++ (id)checkOutStatementToInsertMessage:(id)arg1; ++ (char *)queryToFindCopiesOfMessage:(char *)arg1 sentOn:(unsigned long long)arg2 receivedOn:(unsigned long long)arg3 withSize:(unsigned long long)arg4; ++ (char *)queryForUniquingDataForMessageNumber:(long long)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryStore.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryStore.h new file mode 100644 index 00000000..cba76d12 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryStore.h @@ -0,0 +1,116 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFLibraryStoreMessageConsumer, MFMessageCriterion, NSMutableArray, NSMutableSet, NSString; + +@interface MFLibraryStore : MFMessageStore +{ + NSString *_url; + MFMessageCriterion *_criterion; + id _openOptionsLock; + unsigned int _openOptions; + NSMutableSet *_memberMessageIDs; + NSMutableArray *_allMessagesDuringOpening; + MFLibraryStoreMessageConsumer *_consumer; +} + ++ (BOOL)storeAtPathIsWritable:(id)arg1; ++ (BOOL)createEmptyStoreForPath:(id)arg1; ++ (id)filterMessages:(id)arg1 throughSmartMailbox:(id)arg2; ++ (id)sharedInstance; ++ (unsigned int)defaultLoadOptions; ++ (void)initialize; +@property(retain) NSString *url; // @synthesize url=_url; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (BOOL)_updateFlagForMessage:(id)arg1 key:(id)arg2 value:(BOOL)arg3; +- (id)_setOrGetValue:(id)arg1 forKey:(id)arg2 inCache:(id *)arg3; +- (void)_invalidateObjectCachesForKey:(id)arg1; +- (unsigned long long)_numberOfMessagesToCache; +- (void)_rebuildTableOfContentsSynchronously; +- (void)rebuildTableOfContentsAsynchronously; +- (void)_flushAllMessageData; +- (id)criterion; +- (void)_cancelAutosave; +- (void)_setNeedsAutosave; +- (void)updateMetadata; +- (void)writeUpdatedMessageDataToDisk; +- (id)dataForMimePart:(id)arg1; +- (id)messagesForDocumentID:(id)arg1; +- (id)recentMessageWithValue:(id)arg1 forHeader:(id)arg2; +- (void)deleteLastMessageWithHeaders:(id)arg1 compactWhenDone:(BOOL)arg2; +- (id)lastMessageWithHeaders:(id)arg1 inMailbox:(id)arg2; +- (id)duplicateCopiesOfMessages:(id)arg1 withDocumentIDs:(id)arg2 excludingMessageIDs:(id)arg3; +- (id)duplicateCopiesOfMessages:(id)arg1; +- (void)doCompact; +- (BOOL)_shouldCallCompactWhenClosing; +- (BOOL)canCompact; +- (long long)undoAppendOfMessageIDs:(id)arg1; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; +- (BOOL)allowsOverwrite; +- (BOOL)allowsAppend; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (void)_cancelQueryAndClearConsumer:(BOOL)arg1; +- (void)cancelQuery; +- (void)cancelOpen; +- (void)cleanupSynchronously; +- (void)dealloc; +- (void)_invalidate; +- (void)_messagesUpdated:(id)arg1; +- (void)_messagesCompacted:(id)arg1; +- (void)_messageFlagsChanged:(id)arg1; +- (void)messagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3 options:(id)arg4; +- (void)_messagesAddedToLibrary:(id)arg1; +- (void)_setFlagsAndColorForMessages:(id)arg1; +- (void)setFlagsAndColorForMessages:(id)arg1; +- (id)async_setLocalFlagsForMessages:(id)arg1; +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (id)filterMessagesByMembership:(id)arg1; +- (id)mutableCopyOfAllMessages; +- (void)asynchronousCopyOfAllMessagesWithOptions:(id)arg1; +- (id)copyOfAllMessagesWithOptions:(unsigned int)arg1; +- (id)copyOfAllMessages; +- (unsigned long long)totalCount; +- (unsigned int)_openOptions; +- (void)cleanupAsynchronously; +- (id)openSynchronouslyUpdatingMetadata:(BOOL)arg1 returnRetainedMessages:(BOOL)arg2; +- (void)restartSearch:(id)arg1; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (BOOL)_shouldUpdateColorsAndAttachmentsAfterOpening; +- (void)openAsynchronouslyWithOptions:(unsigned int)arg1; +- (void)libraryFinishedSendingMessagesToLibraryStoreMessageConsumer:(id)arg1; +- (id)notificationMessagesFromOpen; +- (void)newMessagesAvailable:(id)arg1 conversationsMembers:(id)arg2 fromLibraryStoreMessageConsumer:(id)arg3 options:(id)arg4; +- (void)_updateCriterionFromMailbox:(id)arg1; +- (long long)mailboxID; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)_reset; +- (id)initWithMailbox:(id)arg1; +- (id)initWithCriterion:(id)arg1; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2; +- (id)init; +- (BOOL)_criterionContainsGmailLabelCriterion:(id)arg1; +- (id)initWithCriterion:(id)arg1 mailbox:(id)arg2 readOnly:(BOOL)arg3; +- (id)objectSpecifierForMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryStoreMessageConsumer.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryStoreMessageConsumer.h new file mode 100644 index 00000000..2d206118 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryStoreMessageConsumer.h @@ -0,0 +1,33 @@ +/* + * 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 "MFMessageConsumer.h" + +@class MCInvocationQueue, MFLibraryStore; + +@interface MFLibraryStoreMessageConsumer : NSObject +{ + MFLibraryStore *_libraryStore; + MCInvocationQueue *_callbackQueue; + BOOL _shouldCancel; + long long _collectorID; +} + +@property BOOL shouldCancel; // @synthesize shouldCancel=_shouldCancel; +@property long long collectorID; // @synthesize collectorID=_collectorID; +- (void)finishedSendingMessages; +- (void)searchPhaseComplete; +- (id)libraryNotificationMessages; +- (id)libraryNotificationObject; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByConversationID:(id)arg2 options:(id)arg3; +- (void)dealloc; +- (void)clearLibraryStoreWeakReference; +- (id)initWithLibraryStore:(id)arg1 useCallbackQueue:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryThread.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryThread.h new file mode 100644 index 00000000..92b7b030 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryThread.h @@ -0,0 +1,33 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityMonitor, NSMapTable, NSMutableArray; + +@interface MFLibraryThread : NSObject +{ + NSMutableArray *_requests; + MCActivityMonitor *_monitor; + NSMapTable *_storeReqCounts; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (BOOL)isAddingMessagesToStore:(id)arg1; +- (id)messagesBeingAddedToStore:(id)arg1; +- (void)addMessages:(id)arg1 toStore:(id)arg2; +- (void)_runThread; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryUpgrader.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryUpgrader.h new file mode 100644 index 00000000..f2d046aa --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLibraryUpgrader.h @@ -0,0 +1,161 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityAggregate, MCActivityMonitor, MFLibrary, MFSqliteHandle, NSString; + +@interface MFLibraryUpgrader : NSObject +{ + MFLibrary *_library; + unsigned long long _majorVersion; + unsigned long long _minorVersion; + MCActivityAggregate *_activity; + struct sqlite3 *_upgraderDB; + MFSqliteHandle *_handle; + BOOL _readOnly; + BOOL _shouldRecalculateConversations; + BOOL _shouldUpdateSubjectPrefixes; + BOOL _shouldRecalculateMessageCounts; + BOOL _shouldFixupSpotlightAttributesFromBackBooting; + BOOL _shouldUpdateMailboxURLs; + BOOL _shouldResetPasswords; + BOOL _shouldResetHighestChangeIdentifierForLabels; + BOOL _shouldNormalizeMailboxPaths; + id _delegate; + MCActivityMonitor *_monitor; + NSString *_migrationDestinationPath; + unsigned long long _initialLastWriteMinorVersion; + id _activityToken; +} + ++ (void)initialize; +@property(retain, nonatomic) id activityToken; // @synthesize activityToken=_activityToken; +@property(nonatomic) unsigned long long initialLastWriteMinorVersion; // @synthesize initialLastWriteMinorVersion=_initialLastWriteMinorVersion; +@property(nonatomic) BOOL shouldNormalizeMailboxPaths; // @synthesize shouldNormalizeMailboxPaths=_shouldNormalizeMailboxPaths; +@property(nonatomic) BOOL shouldResetHighestChangeIdentifierForLabels; // @synthesize shouldResetHighestChangeIdentifierForLabels=_shouldResetHighestChangeIdentifierForLabels; +@property(nonatomic) BOOL shouldResetPasswords; // @synthesize shouldResetPasswords=_shouldResetPasswords; +@property(nonatomic) BOOL shouldUpdateMailboxURLs; // @synthesize shouldUpdateMailboxURLs=_shouldUpdateMailboxURLs; +@property(nonatomic) BOOL shouldFixupSpotlightAttributesFromBackBooting; // @synthesize shouldFixupSpotlightAttributesFromBackBooting=_shouldFixupSpotlightAttributesFromBackBooting; +@property(nonatomic) BOOL shouldRecalculateMessageCounts; // @synthesize shouldRecalculateMessageCounts=_shouldRecalculateMessageCounts; +@property(nonatomic) BOOL shouldUpdateSubjectPrefixes; // @synthesize shouldUpdateSubjectPrefixes=_shouldUpdateSubjectPrefixes; +@property(nonatomic) BOOL shouldRecalculateConversations; // @synthesize shouldRecalculateConversations=_shouldRecalculateConversations; +@property(copy) NSString *migrationDestinationPath; // @synthesize migrationDestinationPath=_migrationDestinationPath; +@property(retain, nonatomic) MCActivityMonitor *monitor; // @synthesize monitor=_monitor; +@property BOOL readOnly; // @synthesize readOnly=_readOnly; +@property id delegate; // @synthesize delegate=_delegate; +- (void)upgradeSignaturesFromLion; +- (void)upgradeSmartMailboxesFromLion; +- (void)upgradeRulesFromLion; +- (void)upgradeMailDataIfNecessary; +- (long long)_getSQLTableCount:(const char *)arg1 usingDB:(struct sqlite3 *)arg2; +- (void)_stampCurrentMinorVersion; +- (void)_executeSQL:(id)arg1 updateMinorVersion:(unsigned long long)arg2; +- (BOOL)_needsRun; +- (BOOL)_canRun:(id *)arg1; +- (void)_bootstrapVersioningEngine; +- (void)_getVersionInfo; +- (void)_unlockWriterDB:(struct sqlite3 *)arg1; +- (struct sqlite3 *)_getWriterDB; +- (void)_unlockReaderDB:(struct sqlite3 *)arg1; +- (struct sqlite3 *)_getReaderDB; +- (id)_handle; +- (void)_setHandle:(id)arg1; +- (void)resetProgressItemsWithTotal:(unsigned long long)arg1 andStatusMessage:(id)arg2; +- (void)incrementProgressIndicatorWithThreshold:(unsigned long long)arg1; +- (void)incrementProgressIndicator; +- (void)setProgressItemTotal:(unsigned long long)arg1; +- (void)_setActivity:(id)arg1; +- (id)_activity; +- (void)_resetPasswords; +- (void)_fakeLibraryUpgraderStep; +- (void)_resetHighestChangeIdentifierForLabels; +- (void)_fixShadowEMLXFilesForAccount:(id)arg1; +- (void)_fixShadowEMLXFiles; +- (void)_resetConversationsForExistingMessages; +- (void)_resetSnippetColumn; +- (BOOL)_calculateInternationalSubjectPrefixes; +- (void)updateFavoritePersistentIdentifierUnicodeComposition; +- (void)_updateMailboxURLUnicodeComposition; +- (id)_copySpotlightAttributesWithDateSent:(int)arg1 dateReceived:(int)arg2 dateLastViewed:(int)arg3 read:(int)arg4 libraryFlags:(long long)arg5 messageID:(const char *)arg6 subject:(id)arg7 displayName:(id)arg8 senderName:(id)arg9 senderAddress:(id)arg10 recipientNames:(id)arg11 recipientAddresses:(id)arg12; +- (id)_urlStringForMailboxDirectory:(id)arg1 account:(id)arg2 levelFromAccountDirectory:(unsigned long long)arg3; +- (void)_getRecipientsForMessageWithLibraryID:(long long)arg1 recipientNames:(id)arg2 recipientAddresses:(id)arg3 dbHandle:(id)arg4; +- (void)_setSpotlightAttributesForEMLXFilesInMailbox:(id)arg1 mailboxURLString:(id)arg2; +- (void)_updateSpotlightAttributes; +- (void)_resetChangeIdentifierForGmailAccounts; +- (void)_fixLocalMailboxes:(unsigned long long)arg1; +- (void)_normalizeMailboxPathComponentsInMboxCache; +- (void)_addAllegedChangeIdentifier:(unsigned long long)arg1; +- (id)_mailboxURLStringsForAccount:(id)arg1; +- (BOOL)_accountIsGmailAccount:(id)arg1; +- (void)_deleteBogusTopLevelMailboxes:(unsigned long long)arg1; +- (void)_resetMailboxSource:(unsigned long long)arg1; +- (void)_addMessageIDMailboxIndex:(unsigned long long)arg1; +- (void)_removeMailboxUUIDColumn:(unsigned long long)arg1; +- (void)_removeSupportForRedundantContentCache:(unsigned long long)arg1; +- (void)_clearLabelsTable:(unsigned long long)arg1; +- (void)_addMailboxSource:(unsigned long long)arg1; +- (void)_fixGmailLabelsIndex:(unsigned long long)arg1; +- (void)_addGmailLabelsSupport:(unsigned long long)arg1; +- (void)_addConversationPosition:(unsigned long long)arg1; +- (void)_resetConversationRootColumn:(unsigned long long)arg1; +- (void)_upgradeFromMountainLionToSUMountainCalypso; +- (void)makeAppleScriptReferencesInRulesUseOnlyLastPathComponent; +- (void)_fixEWSFoldersTable; +- (void)fixMailDownloadsMigrationKey; +- (void)_startMigratorServiceForAppleScriptFilesAndRules; +- (void)upgradeAppleScriptFilesAndRules; +- (void)_startMigratorServiceForMailDownloads; +- (void)upgradeMailDownloadsFiles; +- (void)_removeDuplicateRSSAccounts; +- (void)_cleanUpSyncedData; +- (void)_removeSyncedFilesMetadata; +- (void)_moveSyncedFilesToLocal; +- (BOOL)_removeMessageTypeFromSmartMailbox:(id)arg1 localProperties:(id)arg2; +- (void)_removeMessageTypeFromSmartMailboxes; +- (void)_removeMessageTypeFromRules; +- (void)_combineVIPSendersPlists; +- (void)_addFileExtensionToSignatures; +- (void)_changeSignatureBundleLayout; +- (void)_changeSignaturesLayout; +- (void)_changeSmartMailboxesLayout; +- (void)_changeRulesLayout; +- (void)_upgradeFromLionToMountainLion; +- (void)_updateSmartMailboxUnreadMessagesForMailboxes:(id)arg1; +- (void)_updateSmartMailboxUnreadMessages; +- (void)_migrateTasksToLocalCalendar; +- (void)_upgradeFromSUSnowFeltToLion; +- (void)_upgradeFromSnowLeopardToSUSnowFelt; +- (void)_upgradeFromLeopardToSnowLeopard; +- (void)_updateCoalescedAddressReferences; +- (void)_populateRecipientPosition; +- (void)_upgradeFromTigerToLeopard; +- (void)_useWALJournalingIfPossible; +- (void)_vacuum; +- (void)_createNewDatabaseObjects; +- (void)_upgradeSchema; +- (void)_upgradeSchemaFromBackBooting; +- (void)_dropTriggers; +- (void)_firstLoginDidTimeout; +- (void)run; +- (void)_removeToDos:(unsigned long long)arg1; +- (BOOL)validateMigrationPath:(id)arg1; +- (BOOL)isComplexMigrationToV2; +- (BOOL)shouldMigrateToV2; +- (void)_evaluateAccountsForMigration; +- (BOOL)_allAccountsAreOnSameFSAsLibraryMail; +- (id)unresolvedAccountPaths; +- (void)resetEvaluationOfAccountsForMigration; +- (BOOL)_shouldDisplayDisturbingAndVagueWarningAboutMigrationToUser; +- (long long)libraryStatus; +- (void)dealloc; +- (id)init; +- (id)initWithLibrary:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLocalAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLocalAccount.h new file mode 100644 index 00000000..f6fc78db --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLocalAccount.h @@ -0,0 +1,67 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFLocalAccount : MFMailAccount +{ +} + ++ (id)accountTypeString; ++ (id)defaultPathNameForAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)defaultPathNameForAccount; ++ (id)localAccount; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (BOOL)supportsAppleScript; +- (BOOL)hasTrashMailbox; +- (BOOL)isRemoteAccount; +- (BOOL)isZeroConfiguration; +- (BOOL)providesAccountInformation; +- (BOOL)canParticipateInRules; +- (BOOL)isEditableByUser; +- (id)todosMailbox; +- (id)_specialMailboxRelativePathForType:(int)arg1; +- (BOOL)synchronizesDataWithServer; +- (id)_infoForMatchingURL:(id)arg1; +- (id)_URLPersistenceScheme; +- (id)rootlessMailboxForFileSystemPath:(id)arg1; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (BOOL)renameMailbox:(id)arg1 newDisplayName:(id)arg2 parent:(id)arg3; +- (id)createMailboxWithParent:(id)arg1 displayName:(id)arg2 error:(id *)arg3; +- (id)createMailboxWithParent:(id)arg1 displayName:(id)arg2 localizedDisplayName:(id)arg3; +- (id)pathForMailboxWithParent:(id)arg1 displayName:(id)arg2; +- (BOOL)deleteConvertsStoreToFolder; +- (BOOL)supportsNormalContainerOnlyMailboxes; +- (BOOL)_setChildren:(id)arg1 forMailbox:(id)arg2; +- (id)_copyMailboxWithParent:(id)arg1 name:(id)arg2 pathComponent:(id)arg3 attributes:(unsigned long long)arg4 existingMailbox:(id)arg5 uuid:(id)arg6; +- (void)_synchronouslyLoadListingForParent:(id)arg1; +- (BOOL)shouldMoveDeletedMessagesToTrash; +- (long long)emptyTrashFrequency; +- (void)_readCustomInfoFromMailboxCache:(id)arg1; +- (void)setIsWillingToGoOnline:(BOOL)arg1; +- (BOOL)isWillingToGoOnline; +- (void)setIsOffline:(BOOL)arg1; +- (BOOL)isOffline; +- (BOOL)shouldAutoFetch; +- (BOOL)canFetch; +- (void)setPassword:(id)arg1; +- (id)password; +- (void)setUsername:(id)arg1; +- (void)setHostname:(id)arg1; +- (id)displayName; +- (id)primaryMailbox; +- (id)mailboxPathExtension; +- (Class)storeClassForMailbox:(id)arg1; +- (id)uniqueId; +- (id)rootMailbox; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFLocationManager.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFLocationManager.h new file mode 100644 index 00000000..29fc59cf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFLocationManager.h @@ -0,0 +1,41 @@ +/* + * 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" + +@class MCInvocationQueue, MFNetworkLocation, NSMutableArray; + +@interface MFLocationManager : NSObject +{ + NSMutableArray *_locations; + MFNetworkLocation *_current; + MCInvocationQueue *_invocationQueue; + BOOL _supressNotifications; +} + ++ (id)currentLocation; ++ (id)sharedManager; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)_archivedLocations; +- (void)_unarchiveLocations:(id)arg1; +- (void)_managedLocationChanged:(id)arg1; +- (void)_determineCurrentLocation; +- (void)_networkChanged:(id)arg1; +- (id)locationForIPAddress:(id)arg1; +- (id)locationForDomain:(id)arg1; +- (void)addLocation:(id)arg1; +- (void)setCurrentLocation:(id)arg1; +- (id)currentLocation; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; +- (id)initWithUserDefaultsArray:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMailAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMailAccount.h new file mode 100644 index 00000000..7300522b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMailAccount.h @@ -0,0 +1,393 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "MCAccountSetupValidatorDelegate.h" +#import "MCActivityTarget.h" +#import "MCMailAccount.h" +#import "MFMessageDelivererDelegate.h" +#import "NSFileManagerDelegate.h" + +@class MCAccountSetupValidator, MCAuthScheme, MCError, MFMailbox, NSArray, NSString, NSTimer, NSURL; + +@interface MFMailAccount : MFAccount +{ + id _mailboxLock; + NSString *_path; + MFMailbox *_inboxMailbox; + MFMailbox *_rootMailbox; + BOOL _synchronizationThreadIsRunning; + BOOL _backgroundFetchInProgress; + id _mailAccountLock; + id _backgroundActivityFlagsLock; + MFMailbox *_draftsMailbox; + MFMailbox *_sentMessagesMailbox; + MFMailbox *_trashMailbox; + MFMailbox *_junkMailbox; + MFMailbox *_notesMailbox; + MFMailbox *_todosMailbox; + MFMailbox *_outboxMailbox; + MFMailbox *_archiveMailbox; + MCError *_lastConnectionError; + id _cacheChangeLock; + NSTimer *_cacheWriteTimer; + BOOL _cacheHasBeenRead; + BOOL _mailboxListInitializationInProgress; + BOOL _needsChecking; + MCAccountSetupValidator *_validator; +} + ++ (id)mailboxForMailboxID:(unsigned long long)arg1; ++ (id)mailboxForURL:(id)arg1 forceCreation:(BOOL)arg2 syncableURL:(BOOL)arg3; ++ (id)accountWithURLString:(id)arg1 includeInactiveAccounts:(BOOL)arg2; ++ (id)accountWithURLString:(id)arg1; ++ (id)URLForInfo:(id)arg1; ++ (id)infoForURL:(id)arg1; ++ (id)_accountForURL:(id)arg1; ++ (id)accountWithSyncableURLString:(id)arg1 includeInactiveAccounts:(BOOL)arg2; ++ (id)_accountForURL:(id)arg1 includeInactiveAccounts:(BOOL)arg2; ++ (void)deleteMailboxIfEmpty:(id)arg1; ++ (id)mailboxForFileSystemPath:(id)arg1 create:(BOOL)arg2; ++ (void)resetAllSpecialMailboxes; ++ (void)synchronouslyEmptyMailboxType:(int)arg1 inAccounts:(id)arg2; ++ (BOOL)allAccountsDeleteInPlace; ++ (long long)numberOfDaysToKeepLocalTrash; ++ (void)_clearAllAccountBackgroundFetchInProgress; ++ (id)accountsInitializingMailboxList; ++ (void)connectAllAccounts; ++ (void)disconnectAllAccounts; ++ (void)_setOnlineStateOfAllAccountsTo:(BOOL)arg1; ++ (BOOL)isAnyAccountOnline; ++ (BOOL)isAnyAccountOffline; ++ (id)defaultDeliveryAccount; ++ (id)defaultPathNameForAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)defaultPathNameForAccount; ++ (id)defaultAccountDirectory; ++ (id)defaultPathForAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)newAccountWithPath:(id)arg1; ++ (id)accountWithPath:(id)arg1; ++ (id)allMailboxes; ++ (id)archiveMailboxes; ++ (id)junkMailboxes; ++ (id)draftMailboxes; ++ (id)sentMessagesMailboxes; ++ (id)outboxMailboxes; ++ (id)trashMailboxes; ++ (id)inboxMailboxes; ++ (id)_specialMailboxesUsingSelector:(SEL)arg1; ++ (id)specialMailboxes; ++ (id)outboxMessageStore:(BOOL)arg1; ++ (id)accountThatReceivedMessage:(id)arg1 matchingEmailAddress:(id *)arg2 fullUserName:(id *)arg3; ++ (id)preferredEmailAddressToReplyToMessage:(id)arg1; ++ (id)addressesThatReceivedMessage:(id)arg1; ++ (id)accountThatMessageIsFrom:(id)arg1; ++ (id)accountUsingHeadersFromMessage:(id)arg1; ++ (id)accountForHeaders:(id)arg1 message:(id)arg2; ++ (id)accountContainingEmailAddress:(id)arg1; ++ (id)_accountContainingEmailAddress:(id)arg1 matchingAddress:(id *)arg2 fullUserName:(id *)arg3; ++ (void)resetAccountExistsForSigning; ++ (BOOL)accountExistsForSigning; ++ (void)_updateAccountExistsForSigning; ++ (BOOL)isEmailAddressInAnyAccount:(id)arg1; ++ (id)allEmailAddressesIncludingFullUserName:(BOOL)arg1; ++ (id)_urlFromObject:(id)arg1; ++ (BOOL)setAccountInfo:(id)arg1 forAccountMatchingInfo:(id)arg2; ++ (id)_accountFromArray:(id)arg1 withType:(id)arg2 hostname:(id)arg3 username:(id)arg4; ++ (id)existingAccountWithType:(id)arg1 hostname:(id)arg2 username:(id)arg3; ++ (id)_accountFromArray:(id)arg1 withUniqueId:(id)arg2; ++ (id)accountWithUniqueId:(id)arg1; ++ (void)migrateUnreadCountInMailboxCache; ++ (void)saveAccountInfoToDefaults; ++ (id)remoteAccounts; ++ (BOOL)onlyGmailAccountsUsingAllMailAsArchiveAreActive; ++ (id)activeAccounts; ++ (id)_activeAccountsFromArray:(id)arg1; ++ (void)_removeAccountFromSortedPaths:(id)arg1; ++ (id)syncManagedAccountWithMCXCreateIfAbsent:(BOOL)arg1; ++ (void)setTotalCountOfMessagesReceived:(unsigned long long)arg1; ++ (unsigned long long)totalCountOfMessagesReceived; ++ (void)setCountOfNewUnreadMessagesReceivedInInbox:(unsigned long long)arg1; ++ (unsigned long long)countOfNewUnreadMessagesReceivedInInbox; ++ (void)setNewUnreadMessagesReceivedInInbox:(BOOL)arg1; ++ (BOOL)newUnreadMessagesReceivedInInbox; ++ (void)accountsWereSynced; ++ (void)setIsActive:(BOOL)arg1 forAccountWithUniqueId:(id)arg2; ++ (id)removeMailAccountFromAccountStorageWithUniqueId:(id)arg1; ++ (id)uniqueDisplayNameForAccount:(id)arg1; ++ (void)addMailAccount:(id)arg1; ++ (void)_setMailAccounts:(id)arg1 reloadingFromStorage:(BOOL)arg2; ++ (void)setMailAccounts:(id)arg1; ++ (void)reloadMailAccounts; ++ (id)mailAccounts; ++ (id)allMailAccounts; ++ (id)_mailAccountsIncludingUnknownTypes; ++ (void)_setupSortedPathsForAccounts:(id)arg1; ++ (void)_addAccountToSortedPaths:(id)arg1; ++ (void)completeDeferredAccountInitialization; ++ (BOOL)haveAccountsBeenConfigured; ++ (BOOL)accountsHaveBeenInitialized; ++ (void)initialize; ++ (id)keyPathsForValuesAffecting_URLPersistenceHostname; ++ (id)_outboxMailbox; ++ (void)_setOutboxMailbox:(id)arg1; ++ (id)_mailboxNameForPathComponent:(id)arg1; ++ (id)_pathComponentForMailboxName:(id)arg1; ++ (void)_postMailAccountsHaveChanged; ++ (id)_accountWithPath:(id)arg1 relativePath:(id *)arg2; ++ (void)_enableMailboxListingNotifications:(BOOL)arg1; ++ (void)_disableMailboxListingNotifications; ++ (BOOL)_mailboxListingNotificationAreEnabled; ++ (void)setAllEmailAddresses:(id)arg1 withFullUserNames:(id)arg2; ++ (BOOL)_mailAccountsAreInitialized; ++ (void)_normalizePathComponentsInMailboxesDictionary:(id)arg1 accountClass:(Class)arg2; ++ (void)normalizeMailboxPathComponentsInAllAccounts; +@property(retain) MCAccountSetupValidator *validator; // @synthesize validator=_validator; +- (void)messageDeliveryDidFinish:(id)arg1; +- (id)delegateApplicationName; +- (BOOL)validatorShouldPromptForInsecurePassword:(id)arg1; +- (void)validatorDidFinish:(id)arg1; +- (void)validatorDidFail:(id)arg1; +- (void)_validatorFailedToAuthenticate:(id)arg1; +- (void)validator:(id)arg1 didChangeState:(long long)arg2; +@property BOOL validationRequired; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (long long)compareIAOrder:(id)arg1; +- (void)respondToHostBecomingReachable; +- (BOOL)storesUnseenCount; +- (BOOL)supportsAppleScript; +- (BOOL)hasTrashMailbox; +- (BOOL)isGmailAccount; +- (BOOL)isRemoteAccount; +- (BOOL)isZeroConfiguration; +- (BOOL)providesAccountInformation; +- (BOOL)canParticipateInRules; +- (BOOL)isEditableByUser; +- (BOOL)synchronizesDataWithServer; +- (id)syncableURLString; +- (id)URLString; +- (id)objectSpecifier; +- (id)objectSpecifierForMailbox:(id)arg1; +- (id)objectSpecifierForMessageStore:(id)arg1; +- (id)valueInMailboxesWithName:(id)arg1; +- (id)mailboxForRelativePath:(id)arg1 isFilesystemPath:(BOOL)arg2 create:(BOOL)arg3; +- (Class)storeClassForMailbox:(id)arg1; +- (id)storeForMailbox:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)storeForMailbox:(id)arg1; +- (id)_ispDomain; +- (id)connectionError; +- (void)setConnectionError:(id)arg1; +- (void)accountInfoDidChange; +@property long long portNumber; +@property(copy) NSString *hostname; +@property(copy) NSString *username; +- (void)_resetAllMailboxURLs; +- (void)invalidateChildrenOfMailbox:(id)arg1; +- (BOOL)deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (BOOL)renameMailbox:(id)arg1 newDisplayName:(id)arg2 parent:(id)arg3; +- (id)createMailboxWithParent:(id)arg1 displayName:(id)arg2 localizedDisplayName:(id)arg3; +- (id)createMailboxWithParent:(id)arg1 name:(id)arg2; +- (BOOL)deleteConvertsStoreToFolder; +- (BOOL)supportsNormalContainerOnlyMailboxes; +- (BOOL)canMailboxBeDeleted:(id)arg1; +- (BOOL)canMailboxBeRenamed:(id)arg1; +- (id)validNameForMailbox:(id)arg1 fromDisplayName:(id)arg2 error:(id *)arg3; +- (BOOL)supportsSlashesInMailboxName; +- (BOOL)canMoveMailboxes; +- (BOOL)canCreateNewMailboxes; +- (id)mailboxPathExtension; +- (BOOL)resetSpecialMailboxes; +- (BOOL)containsMailboxes; +- (id)displayNameForMailbox:(id)arg1; +@property(copy) NSString *displayName; +- (void)emptySpecialMailboxesThatNeedToBeEmptiedAtQuit; +- (BOOL)canMoveDeletedMessagesToTrash; +- (void)setShouldMoveDeletedMessagesToTrash:(BOOL)arg1; +- (BOOL)shouldMoveDeletedMessagesToTrash; +- (void)setEmptyTrashFrequency:(long long)arg1; +- (long long)emptyTrashFrequency; +- (void)setEmptyJunkFrequency:(long long)arg1; +- (long long)emptyJunkFrequency; +- (void)setEmptySentMessagesFrequency:(long long)arg1; +- (long long)emptySentMessagesFrequency; +- (long long)_emptyFrequencyForKey:(id)arg1 defaultValue:(long long)arg2; +- (void)_setEmptyFrequency:(long long)arg1 forKey:(id)arg2; +- (void)deleteMessagesFromMailbox:(id)arg1 olderThanNumberOfDays:(unsigned long long)arg2; +- (void)setToDosMailbox:(id)arg1; +- (void)setArchiveMailbox:(id)arg1; +- (void)setNotesMailbox:(id)arg1; +- (void)setSentMessagesMailbox:(id)arg1; +- (void)setJunkMailbox:(id)arg1; +- (void)setTrashMailbox:(id)arg1; +- (void)setDraftsMailbox:(id)arg1; +- (id)allMailboxesEvenIfInactive:(BOOL)arg1; +- (id)allMailboxes; +- (id)_outboxMailboxCreateIfNeeded:(BOOL)arg1; +- (id)archiveMailboxCreateIfNeeded:(BOOL)arg1; +- (id)trashMailboxCreateIfNeeded:(BOOL)arg1; +- (id)sentMessagesMailboxCreateIfNeeded:(BOOL)arg1; +- (id)junkMailboxCreateIfNeeded:(BOOL)arg1; +- (id)draftsMailboxCreateIfNeeded:(BOOL)arg1; +- (BOOL)rootChildrenCanBePromoted; +- (id)rootMailbox; +- (id)primaryMailbox; +- (void)incrementTotalCountOfMessagesReceived:(unsigned long long)arg1; +- (void)incrementCountOfNewUnreadMessagesReceivedInInbox:(unsigned long long)arg1; +- (void)newUnreadMessagesHaveBeenReceivedInInbox; +- (BOOL)isFetching; +- (void)fetchSynchronouslyIsAuto:(id)arg1; +- (void)fetchSynchronously; +- (void)fetchAsynchronously; +- (void)fetchAsynchronouslyIsAuto:(BOOL)arg1; +- (void)setNeedsChecking; +- (BOOL)needsChecking; +- (void)didInitializeMailboxList; +- (void)willInitializeMailboxList; +- (BOOL)isInitializingMailboxList; +- (BOOL)_supportsMailboxListInitialization; +- (void)synchronizeAllMailboxes; +- (BOOL)canBeSynchronized; +- (BOOL)canAppendMessages; +- (void)startBackgroundSynchronization; +- (id)defaultsDictionary; +- (id)remoteTaskQueue; +- (BOOL)canFetch; +- (void)setIsWillingToGoOnline:(BOOL)arg1; +- (void)setIsOffline:(BOOL)arg1; +- (void)releaseAllConnections; +- (void)setCacheIsDirty:(BOOL)arg1; +- (void)doRoutineCleanup; +- (void)saveCache; +- (void)saveCacheInBackground; +- (void)_setCacheWriteTimer:(id)arg1; +- (void)deleteAccount; +- (void)_synchronouslyInvalidateAndDelete:(BOOL)arg1; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +@property BOOL disableRecentsSync; +- (void)setShouldAutoFetch:(BOOL)arg1; +- (BOOL)shouldAutoFetch; +- (id)emailAliases; +- (void)setEmailAddresses:(id)arg1; +- (void)setApplescriptEmailAddresses:(id)arg1; +- (id)applescriptEmailAddresses; +- (id)emailAddresses; +- (id)rawEmailAddresses; +- (id)firstEmailAddress; +- (void)setDeliveryAccountIsLocked:(BOOL)arg1; +- (BOOL)deliveryAccountIsLocked; +- (void)_mailboxUserInfoDidChange:(id)arg1; +- (void)_deliveryAccountWillBeRemoved:(id)arg1; +- (id)dynamicDeliveryAccount; +- (void)setDeliveryAccount:(id)arg1; +- (id)deliveryAccount; +- (void)setSMTPIdentifier:(id)arg1; +- (id)smtpIdentifier; +- (id)localizedDeliveryAccountIgnoringLockedDelivery:(BOOL)arg1; +@property(readonly) NSString *googleClientToken; +- (void)setFullUserName:(id)arg1; +- (id)fullUserName; +- (void)setApplescriptFullUserName:(id)arg1; +- (id)applescriptFullUserName; +- (id)tildeAbbreviatedPath; +- (id)accountDirectory; +- (void)setPath:(id)arg1; +- (id)path; +- (void)_setAccountInfo:(id)arg1; +- (BOOL)isValid; +- (void)completeDeferredInitialization; +- (void)dealloc; +- (id)initWithPath:(id)arg1; +- (id)initWithAccountInfo:(id)arg1; +- (id)allMailMailbox; +- (id)_notesMailboxUnlessUsingLocal; +- (id)_todosMailboxUnlessUsingLocal; +- (id)notesMailbox; +- (id)todosMailbox; +- (BOOL)cheapStoreAtPathIsEmpty:(id)arg1; +- (BOOL)hasEmailAddress:(id)arg1; +- (BOOL)isValidAccountWithError:(id)arg1 accountBeingEdited:(id)arg2 userCanOverride:(char *)arg3; +- (id)backupID; +- (void)setEmptyJunkOnQuit:(BOOL)arg1; +- (BOOL)emptyJunkOnQuit; +- (void)setEmptySentMessagesOnQuit:(BOOL)arg1; +- (BOOL)emptySentMessagesOnQuit; +- (void)setEmptyTrashOnQuit:(BOOL)arg1; +- (BOOL)emptyTrashOnQuit; +- (void)removeFromMailboxesAtIndex:(unsigned long long)arg1; +- (void)insertInMailboxes:(id)arg1; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)replaceInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)mailboxes; +- (id)indicesOfObjectsByEvaluatingObjectSpecifier:(id)arg1; +- (BOOL)_validateIfNeeded; +- (id)iaSettingsIncludingPassword:(BOOL)arg1; +- (id)rootMailboxEvenIfInactive:(BOOL)arg1; +- (id)_mailboxPathPrefix:(BOOL)arg1; +- (id)_URLForInfo:(id)arg1; +- (id)_URLPersistenceHostname; +- (id)_URLExternalConnectionScheme; +- (id)_URLInternalConnectionScheme; +- (id)_URLPersistenceScheme; +- (id)_infoForMatchingURL:(id)arg1; +- (BOOL)_shouldLogDeleteActivity; +- (BOOL)_canEmptyMessagesFromMailbox:(id)arg1; +- (id)_specialMailboxWithType:(int)arg1 create:(BOOL)arg2; +- (id)_specialMailboxRelativePathForType:(int)arg1; +- (void)_setSpecialMailbox:(id)arg1 forType:(int)arg2; +- (void)_setSpecialMailboxRelativePath:(id)arg1 forType:(int)arg2; +- (BOOL)_assignSpecialMailboxToAppropriateIvar:(id)arg1 forType:(int)arg2; +- (id)_defaultSpecialMailboxRelativePathForType:(int)arg1; +- (void)_clearAllPathBasedCachesAndDelete:(BOOL)arg1; +- (void)_emptySpecialMailboxesIfNeededForQuit:(BOOL)arg1; +- (void)_emptySpecialMailboxesIfNeeded; +- (void)_backgroundFetchCompleted; +- (void)backgroundFetchCompletedCount:(unsigned long long)arg1; +- (void)_fetchSynchronouslyIfNeeded; +- (id)description; +- (BOOL)_deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (BOOL)_setChildren:(id)arg1 addedChild:(id)arg2 forMailbox:(id)arg3; +- (BOOL)_setChildren:(id)arg1 forMailbox:(id)arg2; +- (id)_insertMailbox:(id)arg1 intoParent:(id)arg2 withDisplayName:(id)arg3; +- (void)_writeMailboxCache; +- (void)_loadEntriesFromFileSystemPath:(id)arg1 parent:(id)arg2; +- (void)_finishSynchronizingMailboxesAfterImport; +- (void)_synchronizeMailboxListWithFileSystemBeforeImport; +- (void)_synchronizeMailboxListWithFileSystem; +- (void)_synchronizeMailboxListWithFileSystemBeforeImport:(BOOL)arg1; +- (BOOL)_readMailboxCache; +- (BOOL)_usesMailboxCache; +- (void)_mailboxesWereRemovedFromTree:(id)arg1 withFileSystemPaths:(id)arg2; +- (void)_loadMailboxListingIntoCache:(id)arg1 parent:(id)arg2 addedMailboxes:(id)arg3 removedMailboxes:(id)arg4; +- (void)_synchronouslyLoadListingForParent:(id)arg1; +- (id)_copyMailboxWithParent:(id)arg1 name:(id)arg2 pathComponent:(id)arg3 attributes:(unsigned long long)arg4 existingMailbox:(id)arg5; +- (void)_writeCustomInfoToMailboxCache:(id)arg1; +- (void)_readCustomInfoFromMailboxCache:(id)arg1; +- (void)_postMailAccountsHaveChangedIfNeeded; +- (void)setIsActive:(BOOL)arg1; +- (BOOL)_setPath:(id)arg1; + +// Remaining properties +@property(readonly) NSString *accountTypeString; +@property(readonly) NSString *appleAuthenticationToken; +@property(readonly) NSString *applePersonID; +@property BOOL configureDynamically; +@property(copy) NSString *externalHostname; +@property(readonly, nonatomic) NSString *internetAccountsUID; +@property(copy) NSString *password; +@property(retain) MCAuthScheme *preferredAuthScheme; +@property(readonly) BOOL requiresAuthentication; +@property(readonly) NSString *saslProfileName; +@property long long securityLayerType; +@property(readonly) NSArray *standardPorts; +@property(readonly) NSArray *standardSSLPorts; +@property(readonly) NSURL *subscriptionURL; +@property(readonly) NSString *subscriptionURLLabel; +@property(readonly) NSString *uniqueId; +@property BOOL usesSSL; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMailMigrator.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMailMigrator.h new file mode 100644 index 00000000..0d2eb3a1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMailMigrator.h @@ -0,0 +1,71 @@ +/* + * 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 "NSFileManagerDelegate.h" + +@class MFLibraryUpgrader, NSFileManager, NSMutableDictionary, NSMutableSet, NSString; + +@interface MFMailMigrator : NSObject +{ + NSString *_supportDirectory; + NSString *_destinationSupportDirectory; + NSString *_tempSupportDirectoryV2; + NSString *_supportDirectoryV2; + NSString *_mailDataDirectoryV2; + NSString *_migrationSuccessfulFilepath; + NSString *_v1ItemsToMigrateFilepath; + NSString *_logDirectory; + NSMutableDictionary *_lostItems; + NSString *_lostItemsFilepath; + NSString *_lostAndFoundDirectory; + BOOL _isComplex; + BOOL _isUsingAlternateDestination; + MFLibraryUpgrader *_progressDelegate; + unsigned long long _progressChunkSize; + unsigned long long _messagesProgressCount; + unsigned long long _v1CleanupCount; + BOOL _isTrackingCleanupProgress; + unsigned long long _emlxCountPreMigration; + unsigned long long _emlxCountPostMigration; + unsigned long long _lostAndFoundEmlxCount; + unsigned long long _messageCountPreMigration; + NSMutableSet *_nonFatalAttachmentErrorLibraryIDs; + NSFileManager *_fileManager; +} + ++ (BOOL)path:(id)arg1 hasPrefixInArray:(id)arg2; ++ (BOOL)isMigrating; ++ (BOOL)migrateFromV1ToV2Layout:(id)arg1 isComplex:(BOOL)arg2 progressDelegate:(id)arg3; +@property(retain, nonatomic) NSFileManager *fileManager; // @synthesize fileManager=_fileManager; +- (BOOL)_copyWithCompressionFromPath:(id)arg1 toPath:(id)arg2; +- (void)_savePlistFiles:(id)arg1 destinationPath:(id)arg2; +- (void)_saveSubpathsWithAttributesOfDirectoryAtPath:(id)arg1 destinationPath:(id)arg2 symbolicLinks:(id)arg3 mboxCacheFiles:(id)arg4 infoPlistFiles:(id)arg5 outEmlxCount:(unsigned long long *)arg6 outLostFoundEmlxCount:(unsigned long long *)arg7 shouldPersist:(BOOL)arg8; +- (void)_captureDiagnosticsForMigrationOutEmlxCount:(unsigned long long *)arg1 outLostFoundEmlxCount:(unsigned long long *)arg2; +- (BOOL)_migrateFromV1ToV2Layout; +- (BOOL)_shouldIgnoreFilename:(id)arg1; +- (void)_migrateMailboxesFromDirectory:(id)arg1 toDirectory:(id)arg2 baseDirectory:(id)arg3 usingUUID:(id)arg4 mailboxCacheDictionary:(id)arg5 accountPrefix:(id)arg6; +- (id)_accountPrefixes; +- (id)_mailboxSuffixes; +- (id)_lostItemsForBaseDirectory:(id)arg1; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtPath:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (void)_handleAttachmentsMigrationResult:(BOOL)arg1 error:(id)arg2 message:(id)arg3 libraryID:(long long)arg4; +- (id)_stringByAppendingV2MailboxSuffix:(id)arg1; +- (BOOL)_directoryExistsAtPath:(id)arg1; +- (BOOL)_string:(id)arg1 hasSuffixInSet:(id)arg2; +- (BOOL)_string:(id)arg1 hasPrefixInSet:(id)arg2; +- (id)_prefixOfString:(id)arg1 fromSet:(id)arg2; +- (void)_messageTraceLibraryData; +- (unsigned long long)_numberOfMessagesInDB; +- (unsigned long long)_numberOfEmlxFiles; +- (unsigned long long)_numberOfEmlxFilesInLostAndFound; +- (void)dealloc; +- (id)initWithDestinationPath:(id)arg1 isComplex:(BOOL)arg2 progressDelegate:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMailbox.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMailbox.h new file mode 100644 index 00000000..a7ff396b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMailbox.h @@ -0,0 +1,261 @@ +/* + * 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 "MCGmailLabel.h" +#import "MCMailbox.h" +#import "MFUIMailbox.h" + +@class MCError, MCSafeValueCache, MFCriterion, MFMailAccount, MFMessageStore, NSArray, NSMutableIndexSet, NSMutableSet, NSString; + +@interface MFMailbox : NSObject +{ + NSString *_mailboxName; + unsigned long long _attributes; + int _type; + BOOL _needsToSaveMailboxName; + MFMailAccount *_account; + NSMutableSet *_reservedPathComponents; + id _countsLock; + unsigned long long _displayCount; + unsigned long long _unseenCount; + unsigned long long _deletedCount; + BOOL _countsWereLoaded; + struct __CFTree *_tree; + NSString *_pendingNameChange; + BOOL _isSmartMailbox; + MCSafeValueCache *_criteriaCache; + BOOL _allCriteriaMustBeSatisfied; + NSString *_realFullPath; + unsigned long long _numberOfVisibleChildren; + NSMutableIndexSet *_visibleChildrenIndexes; + NSArray *_sortedChildren; + BOOL _sortedChildrenAreUpToDate; + BOOL _failedToOpen; + MCError *_openFailureError; + id _displayIndexLock; + unsigned long long _displayIndex; + BOOL _isManuallySorted; + BOOL _isVisibleFlaggedMailbox; + BOOL _isPublicOrShared; + id _dontIndexFlagLock; + BOOL _dontIndexFlagWritten; + id _typeAndRepresentedAccountLock; + MFMailAccount *_representedAccount; + NSString *_uuid; + id _attributesLock; + BOOL _storeIsReadOnly; + BOOL _uuidUpdatedInDatabase; + BOOL _respectsMailboxExclusions; + long long _smartMailboxVersion; + NSString *_syncId; + NSString *_pathComponent; + long long _unreadCountQueryObserverID; + MFMessageStore *_searchStore; +} + ++ (void)queueUpdateCountsForMailboxes:(id)arg1; ++ (void)setCanMarkUserInfoAsDirty:(BOOL)arg1; ++ (void)setShouldIndexJunk:(BOOL)arg1; ++ (void)reimportJunk; ++ (void)setShouldIndexTrash:(BOOL)arg1; ++ (BOOL)typeIsGeneric:(int)arg1; ++ (id)displayNameForMessage:(id)arg1 mailboxCriterion:(id)arg2; ++ (id)_mailboxesFromCriterion:(id)arg1; ++ (id)mailboxFromPath:(id)arg1; ++ (id)mailboxWithPersistentIdentifier:(id)arg1; ++ (BOOL)mailboxTypeAllowsDeduplication:(int)arg1; ++ (BOOL)mailboxTypeIsAlwaysUnread:(int)arg1; ++ (BOOL)mailboxTypeAllowsConversations:(int)arg1; ++ (BOOL)isSmartMailboxDictionaryCompatible:(id)arg1; ++ (id)smartMailboxesEnumeratorIncludingFlagMailboxes:(BOOL)arg1 VIPSenderMailboxes:(BOOL)arg2; ++ (id)smartMailboxWithIdentifier:(id)arg1; ++ (id)_smartMailboxWithIdentifier:(id)arg1 inArray:(id)arg2; ++ (void)removeAllSmartMailboxPlaceholders; ++ (void)addSmartMailboxPlaceholder:(id)arg1; ++ (id)smartMailboxPlaceholders; ++ (void)setSmartMailboxes:(id)arg1; ++ (id)smartMailboxes; ++ (void)setRefreshUnreadCountOnSelect:(BOOL)arg1; ++ (BOOL)refreshUnreadCountOnSelect; ++ (BOOL)logMailboxUUIDErrors; ++ (void)initialize; +@property(copy) NSString *uuid; // @synthesize uuid=_uuid; +@property MFMessageStore *searchStore; // @synthesize searchStore=_searchStore; +@property BOOL respectsMailboxExclusions; // @synthesize respectsMailboxExclusions=_respectsMailboxExclusions; +@property BOOL uuidUpdatedInDatabase; // @synthesize uuidUpdatedInDatabase=_uuidUpdatedInDatabase; +@property long long unreadCountQueryObserverID; // @synthesize unreadCountQueryObserverID=_unreadCountQueryObserverID; +@property(copy) NSString *primitiveMailboxName; // @synthesize primitiveMailboxName=_mailboxName; +@property(copy) NSString *primitivePathComponent; // @synthesize primitivePathComponent=_pathComponent; +@property BOOL storeIsReadOnly; // @synthesize storeIsReadOnly=_storeIsReadOnly; +@property(retain) NSString *syncId; // @synthesize syncId=_syncId; +@property long long smartMailboxVersion; // @synthesize smartMailboxVersion=_smartMailboxVersion; +- (void)_addressBookDidChange:(id)arg1; +- (BOOL)isEqualToSmartMailbox:(id)arg1; +- (BOOL)isValidDestinationMailbox; +- (BOOL)isPlaceholder; +- (BOOL)allowsMoveDeletedMessagesToTrash; +- (id)copyWithZone:(id)arg1; +- (void)setFailedToOpen:(BOOL)arg1 error:(id)arg2; +- (id)openFailureError; +- (BOOL)failedToOpen; +- (BOOL)isStoreReadOnlyCreateIfNeeded:(BOOL)arg1; +- (id)storeCreateIfNeeded:(BOOL)arg1; +- (id)store; +- (void)setMessageCounts:(id)arg1; +@property(readonly) unsigned long long deletedCount; +- (void)setDisplayCount:(unsigned long long)arg1; +- (unsigned long long)displayCount; +- (BOOL)_isNormalMailbox; +- (void)setAllCriteriaMustBeSatisfied:(BOOL)arg1; +- (BOOL)allCriteriaMustBeSatisfied; +- (BOOL)criteriaAreValid:(id *)arg1; +- (id)_abGroupsUsedInCriteria; +- (void)setCriteria:(id)arg1; +- (id)modifiedVIPCriterionForInboxOnly; +@property(readonly) MFCriterion *criterion; +- (id)_mailboxExclusionCriteria; +- (id)_updatedCriteria:(id)arg1; +- (id)criteria; +- (id)_ancestralAccount; +- (void)setUserInfoIsDirty:(BOOL)arg1; +- (BOOL)_userInfoIsDirty; +- (void)_saveMailboxesWithDirtyUserInfoWithDelay; +- (void)_saveMailboxesWithDirtyUserInfo; +- (void)setUserInfoWithDictionary:(id)arg1; +- (id)userInfoDictionary; +- (void)saveUserInfo; +- (void)assignNewUUID; +- (void)forceSaveUserInfo; +- (void)setUserInfoBool:(BOOL)arg1 forKey:(id)arg2; +- (BOOL)userInfoBoolForKey:(id)arg1; +- (void)setUserInfoObject:(id)arg1 forKey:(id)arg2; +- (id)userInfoObjectForKey:(id)arg1; +- (void)_userInfoDidLoad:(id)arg1; +- (id)_loadUserInfo; +- (void)_updateDontIndexFlagFile; +- (BOOL)isIndexable; +@property unsigned long long attributes; +- (BOOL)isVisible; +- (BOOL)preferredMessageType; +@property int type; +- (id)description; +- (BOOL)isStoreConvertibleToFolder; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (BOOL)isDescendantOfMailbox:(id)arg1; +- (long long)indexToInsertChildMailbox:(id)arg1; +- (id)_URLStringIsSyncable:(BOOL)arg1; +- (id)syncableURLString; +- (id)URLString; +- (id)_URLStringWithAccount:(id)arg1; +- (id)URL; +- (id)pathRelativeToMailbox:(id)arg1; +- (id)tildeAbbreviatedPath; +- (id)realFullPath; +- (id)fullPath; +- (id)accountRelativeFilesystemPath; +- (id)accountRelativePath; +- (id)_stringByAppendingPathComponentsToAccountPath:(id)arg1 relativeToTree:(struct __CFTree *)arg2 generateFileSystemPath:(BOOL)arg3; +- (BOOL)isAllMailMailbox; +- (BOOL)isGmailImportantLabel; +- (BOOL)isPlainSmartMailbox; +- (BOOL)isSpecialMailbox; +- (BOOL)isStore; +- (BOOL)isContainer; +- (void)invalidate; +- (BOOL)isValid; +- (id)applescriptAccount; +- (id)accountURLString; +- (id)account; +- (id)representedAccount; +- (void)setRepresentedAccount:(id)arg1; +- (id)deepCopy; +- (void)_saveMailboxNameIfNeeded; +- (void)flushCriteria; +- (BOOL)hasAlternateParent; +- (void)setParent:(id)arg1; +- (id)parent; +- (void)sortChildren; +- (void)invalidateChildren; +- (BOOL)setChildren:(id)arg1; +- (void)_deleteChildrenWithURLsIfInvalid:(id)arg1 fullPaths:(id)arg2; +- (id)mailboxComparatorWithAccount:(SEL)arg1; +- (id)mutableCopyOfChildrenIncludingHiddenChildren:(BOOL)arg1 hidingGmail:(BOOL)arg2; +- (id)mutableCopyOfChildren; +- (id)unusedChildPathComponent:(id)arg1; +- (id)childWithPathComponent:(id)arg1; +- (id)childWithName:(id)arg1; +- (unsigned long long)indexOfChild:(id)arg1; +- (BOOL)isValidGmailLabel; +- (BOOL)isGmailWhiteMailboxOrDescendant:(BOOL)arg1; +- (id)_gmailWhiteMailboxChild; +- (id)sortedChildAtIndex:(unsigned long long)arg1 hidingGmail:(BOOL)arg2; +- (id)visibleChildAtIndex:(unsigned long long)arg1; +- (id)childAtIndex:(unsigned long long)arg1; +- (unsigned long long)numberOfChildren; +- (id)depthFirstEnumerator; +- (id)childEnumeratorIncludingHiddenChildren:(BOOL)arg1; +- (id)childEnumerator; +- (unsigned long long)numberOfSortedChildrenHidingGmail:(BOOL)arg1; +- (unsigned long long)numberOfVisibleChildrenHidingGmail:(BOOL)arg1; +- (void)_updateSortedChildrenIfNeeded; +- (unsigned long long)suggestedDisplayIndexForChildMailbox:(id)arg1 hidingGmail:(BOOL)arg2; +@property BOOL isVisibleFlaggedMailbox; +@property BOOL isManuallySorted; +- (BOOL)displayIndexCanBeModified; +@property unsigned long long displayIndex; +- (void)_invalidateVisibleChildrenCaches; +- (BOOL)hasChildren; +- (id)children; +@property(readonly) BOOL hasMessages; +- (unsigned long long)unseenCount; +- (BOOL)unseenCountIsKnown; +- (void)notifyForUnreadCount:(unsigned long long)arg1 andOldUnreadCount:(unsigned long long)arg2; +- (void)_enqueueUnreadCountChangeNotification; +- (void)setIsPublicOrShared:(BOOL)arg1; +- (BOOL)isPublicOrShared; +- (void)setName:(id)arg1 pathComponent:(id)arg2; +- (id)name; +@property(readonly) NSString *pathComponent; +- (BOOL)canBeRenamed; +- (void)setPendingNameChange:(id)arg1; +- (id)labelName; +- (id)genericDisplayName; +- (id)displayName; +- (id)displayNameUsingAccountNameIfSpecial:(BOOL)arg1; +- (id)extendedDisplayName; +- (void)cancelUnreadCountQuery; +- (id)representedMailbox; +- (id)dictionaryRepresentation; +- (id)persistentIdentifier; +- (id)initWithDictionaryRepresentation:(id)arg1 copyUUID:(BOOL)arg2; +- (id)initWithMailbox:(id)arg1; +- (id)initWithName:(id)arg1 pathComponent:(id)arg2 attributes:(unsigned long long)arg3 forAccount:(id)arg4; +- (id)initWithName:(id)arg1 attributes:(unsigned long long)arg2 forAccount:(id)arg3; +- (id)initWithAccount:(id)arg1; +- (id)init; +- (void)dealloc; +- (BOOL)isSmartMailboxExpressibleInTigerSchema; +- (long long)smartMailboxEncodingVersion; +- (void)_registerForSmartMailboxNotification; +@property BOOL isSmartMailbox; +- (id)backupID; +- (long long)backupType; +- (BOOL)isPointedToBySmartMailbox:(id)arg1; +- (BOOL)isPointedToBySmartMailbox:(id)arg1 traversedMailboxes:(id)arg2; +- (BOOL)isPointedToByCriterion:(id)arg1 traversedMailboxes:(id)arg2; +- (id)valueInMessagesWithUniqueID:(id)arg1; +- (void)setMailboxName:(id)arg1; +- (id)mailboxName; +- (void)removeFromMessagesAtIndex:(unsigned long long)arg1; +- (id)messages; +- (id)applescriptChildren; +- (id)applescriptContainer; +- (id)objectSpecifier; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMailboxDirectoryScanner.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMailboxDirectoryScanner.h new file mode 100644 index 00000000..5059ead4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMailboxDirectoryScanner.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface MFMailboxDirectoryScanner : NSObject +{ +} + ++ (void)enumerateMailboxesAtDirectory:(id)arg1 usingBlock:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageAddressee.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageAddressee.h new file mode 100644 index 00000000..b898402f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageAddressee.h @@ -0,0 +1,32 @@ +/* + * 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" + +@class NSString; + +@interface MFMessageAddressee : NSObject +{ + NSString *_displayName; + NSString *_address; + NSString *_type; + id _message; +} + +- (void)setMessage:(id)arg1; +- (id)objectSpecifier; +- (id)_keyForType; +- (void)setAddress:(id)arg1; +- (id)address; +- (void)setDisplayName:(id)arg1; +- (id)displayName; +- (id)formattedAddress; +- (BOOL)isEqual:(id)arg1; +- (void)dealloc; +- (id)initWithDisplayName:(id)arg1 address:(id)arg2 type:(id)arg3 message:(id)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageConsumer-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageConsumer-Protocol.h new file mode 100644 index 00000000..15fe9d44 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageConsumer-Protocol.h @@ -0,0 +1,20 @@ +/* + * 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" + +@protocol MFMessageConsumer +@property(readonly) BOOL shouldCancel; +- (void)finishedSendingMessages; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByConversationID:(id)arg2 options:(id)arg3; + +@optional +- (id)libraryNotificationMessages; +- (id)libraryNotificationObject; +- (void)newMessagesAvailable:(id)arg1 conversationMembers:(id)arg2; +- (void)searchPhaseComplete; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageContext.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageContext.h new file mode 100644 index 00000000..5946dce5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageContext.h @@ -0,0 +1,31 @@ +/* + * 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" + +@class NSOperationQueue; + +@interface MFMessageContext : NSObject +{ + NSOperationQueue *_fsQueue; + NSOperationQueue *_waitingQueue; +} + ++ (id)sharedContext; +- (id)filesystemQueue; +- (id)async_cacheHeaderAndBodyForMessage:(id)arg1 monitor:(id)arg2; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageCounts.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageCounts.h new file mode 100644 index 00000000..a408e7c3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageCounts.h @@ -0,0 +1,27 @@ +/* + * 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" + +@interface MFMessageCounts : NSObject +{ + unsigned long long _totalCount; + unsigned long long _unreadCount; + unsigned long long _unseenCount; + unsigned long long _deletedCount; + unsigned long long _unreadAdjustedForDuplicates; +} + +@property(readonly, nonatomic) unsigned long long unreadAdjustedForDuplicates; // @synthesize unreadAdjustedForDuplicates=_unreadAdjustedForDuplicates; +@property(readonly, nonatomic) unsigned long long deletedCount; // @synthesize deletedCount=_deletedCount; +@property(readonly, nonatomic) unsigned long long unseenCount; // @synthesize unseenCount=_unseenCount; +@property(readonly, nonatomic) unsigned long long unreadCount; // @synthesize unreadCount=_unreadCount; +@property(readonly, nonatomic) unsigned long long totalCount; // @synthesize totalCount=_totalCount; +- (id)description; +- (id)initWithTotal:(unsigned long long)arg1 unread:(unsigned long long)arg2 unseen:(unsigned long long)arg3 deleted:(unsigned long long)arg4 unreadAdjustedForDuplicates:(unsigned long long)arg5; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageCriterion.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageCriterion.h new file mode 100644 index 00000000..8204a11e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageCriterion.h @@ -0,0 +1,95 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface MFMessageCriterion : MFCriterion +{ + NSString *_originalGroupUniqueID; + long long _specialMailboxTypeCode; + NSString *_groupUniqueID; +} + ++ (id)stringForCriterionType:(long long)arg1; ++ (long long)criterionTypeForString:(id)arg1; ++ (void)_updateAddressDisplayNames:(id)arg1; ++ (id)messagesInConversationCriterionWithConversationIDs:(id)arg1; ++ (void)initialize; +@property(copy) NSString *groupUniqueID; // @synthesize groupUniqueID=_groupUniqueID; +@property long long specialMailboxTypeCode; // @synthesize specialMailboxTypeCode=_specialMailboxTypeCode; +- (BOOL)containsAddressBookCriteria; +- (BOOL)containsRelativeDateCriteria; +- (BOOL)containsMessageIsNotInATrashMailboxCriterion; +- (BOOL)containsIncludeConversationsCriterion; +- (BOOL)containsLastViewedDateCriterion; +- (BOOL)_containsCriterion:(long long)arg1; +- (id)criterionByExpandingSpecialMailboxCriterion; +- (id)criterionByExpandingGroup; +- (id)emailAddressesForGroupCriterion; +- (id)emailAddressesForVIPCriterion; +- (BOOL)containsSpotlightCriterion; +- (BOOL)isValid:(id *)arg1 options:(unsigned int)arg2; +- (BOOL)hasQualifier; +- (BOOL)allowsEmptyExpression; +- (BOOL)hasExpression; +- (BOOL)evaluateMessage:(id)arg1; +- (BOOL)_evaluateMessage:(id)arg1; +- (BOOL)doesMessageSatisfyRuleEvaluationCriterion:(id)arg1; +- (BOOL)_evaluateFlaggedStatusCriterion:(id)arg1; +- (BOOL)_evaluateSpecialMailboxCriterion:(id)arg1; +- (BOOL)_mailboxURLString:(id)arg1 satisfiesQualifier:(long long)arg2 forExpression:(id)arg3; +- (BOOL)_evaluateGmailLabelCriterion:(id)arg1; +- (BOOL)_evaluateMailboxCriterion:(id)arg1; +- (BOOL)_evaluateFlagCriterion:(id)arg1; +- (BOOL)_evaluateCompoundCriterion:(id)arg1; +- (BOOL)_evaluateAttachmentTypeCriterion:(id)arg1; +- (BOOL)_evaluateAttachmentCriterion:(id)arg1; +- (BOOL)_evaluateJunkMailCriterion:(id)arg1; +- (BOOL)_evaluateJunkMailHeaders:(id)arg1; +- (BOOL)_evaluatePriorityIsLowCriterion:(id)arg1; +- (BOOL)_evaluatePriorityIsHighCriterion:(id)arg1; +- (BOOL)_evaluatePriorityIsNormalCriterion:(id)arg1; +- (BOOL)_evaluateMessageTypeCriterion:(id)arg1; +- (BOOL)_evaluateIsEncryptedCriterion:(id)arg1; +- (BOOL)_evaluateIsDigitallySignedCriterion:(id)arg1; +- (BOOL)_evaluateFullNameCriterion:(id)arg1; +- (BOOL)_evaluateAddressHistoryCriterion:(id)arg1; +- (BOOL)_evaluateAccountCriterion:(id)arg1; +- (BOOL)_evaluateMemberOfVIPSendersCriterion:(id)arg1; +- (BOOL)_evaluateMemberOfGroupCriterion:(id)arg1; +- (BOOL)_doesGroup:(id)arg1 containSender:(id)arg2; +- (BOOL)_evaluateAddressBookCriterion:(id)arg1; +- (BOOL)_evaluateBodyCriterion:(id)arg1; +- (BOOL)_evaluateHeaderCriterion:(id)arg1; +- (BOOL)_evaluateDateCriterion:(id)arg1; +- (void)addHeadersRequiredForRoutingToArray:(id)arg1; +- (id)_headersRequiredForEvaluation; +- (id)recursiveGroupUniqueIDs; +- (void)setCriterionIdentifier:(id)arg1; +- (id)dictionaryRepresentation; +- (BOOL)isEquivalent:(id)arg1; +- (BOOL)isEqual:(id)arg1; +@property(readonly) NSString *originalGroupUniqueID; +- (void)dealloc; +- (id)initWithDictionary:(id)arg1 andRemoveRecognizedKeysIfMutable:(BOOL)arg2; +- (id)SQLExpressionWithContext:(CDStruct_c53ccb4e *)arg1 depth:(unsigned long long)arg2 enclosingSmartMailboxes:(id)arg3; +- (BOOL)isExpressibleInTigerSchema; +- (BOOL)hasNumberCriterion; +- (id)criterionByMergingSpotlightCriteria; +- (id)fixOnceWithExpandedSmartMailboxes:(id)arg1 forSpotlight:(BOOL)arg2; +- (void)setRuleExpression:(id)arg1; +- (id)ruleExpression; +- (void)setRuleQualifier:(unsigned int)arg1; +- (unsigned int)ruleQualifier; +- (void)setRuleHeader:(id)arg1; +- (id)ruleHeader; +- (void)setRuleType:(unsigned int)arg1; +- (unsigned int)ruleType; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageDeliverer.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageDeliverer.h new file mode 100644 index 00000000..5fa7f150 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageDeliverer.h @@ -0,0 +1,43 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCMessage, MFDeliveryAccount; + +@interface MFMessageDeliverer : NSObject +{ + MCMessage *_message; + MFDeliveryAccount *_account; + long long _status; + id _delegate; + id _messageStore; + BOOL _askForReadReceipt; +} + ++ (BOOL)deliverMessage:(id)arg1; ++ (BOOL)deliverMessage:(id)arg1 askForReadReceipt:(BOOL)arg2; ++ (id)newWithMessage:(id)arg1; +- (long long)deliverMessageHeaderData:(id)arg1 bodyData:(id)arg2 toRecipients:(id)arg3; +- (long long)deliverSynchronously; +- (void)deliverAsynchronously; +- (id)_headersForDeliveryFromHeaders:(id)arg1; +- (id)headersForDelivery; +- (long long)deliveryStatus; +- (void)setAskForReadReceipt:(BOOL)arg1; +- (BOOL)askForReadReceipt; +- (void)setAccount:(id)arg1; +- (id)account; +- (void)setDelegate:(id)arg1; +- (id)delegate; +- (id)message; +- (void)dealloc; +- (id)initWithMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageDelivererDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageDelivererDelegate-Protocol.h new file mode 100644 index 00000000..9e58f441 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageDelivererDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol MFMessageDelivererDelegate +- (void)messageDeliveryDidFinish:(id)arg1; + +@optional +- (void)messageDeliveryWillBegin:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageReplyGenerator.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageReplyGenerator.h new file mode 100644 index 00000000..447ef35f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageReplyGenerator.h @@ -0,0 +1,32 @@ +/* + * 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" + +@class MCMutableMessageHeaders, MUIWebDocumentView, NSString; + +@interface MFMessageReplyGenerator : NSObject +{ + MUIWebDocumentView *_documentView; + id _completionHandler; + NSString *_contentToAdd; + NSString *_attributionLine; + MCMutableMessageHeaders *_messageHeaders; + MFMessageReplyGenerator *_me; +} + +@property(retain, nonatomic) MFMessageReplyGenerator *me; // @synthesize me=_me; +@property(retain, nonatomic) MCMutableMessageHeaders *messageHeaders; // @synthesize messageHeaders=_messageHeaders; +@property(copy, nonatomic) NSString *attributionLine; // @synthesize attributionLine=_attributionLine; +@property(copy, nonatomic) NSString *contentToAdd; // @synthesize contentToAdd=_contentToAdd; +@property(copy, nonatomic) id completionHandler; // @synthesize completionHandler=_completionHandler; +@property(retain, nonatomic) MUIWebDocumentView *documentView; // @synthesize documentView=_documentView; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)generateMessageWithType:(unsigned long long)arg1 originalMessage:(id)arg2 newContent:(id)arg3 forwardHeaders:(id)arg4 completionHandler:(id)arg5; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageRouter.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageRouter.h new file mode 100644 index 00000000..ca920798 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageRouter.h @@ -0,0 +1,110 @@ +/* + * 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 "MCActivityTarget.h" + +@class MFMessageStore, NSConditionLock, NSMutableArray; + +@interface MFMessageRouter : NSObject +{ + MFMessageStore *_store; + NSMutableArray *_queuedMessages; + NSConditionLock *_queuedMessagesFull; + NSConditionLock *_queuedMessagesEmpty; + NSConditionLock *_queuedMessagesRouting; + unsigned long long _bytesInQueue; + unsigned long long _queueSize; + BOOL _routingThreadShouldQuit; + unsigned long long _numMessagesRoutedSoFar; + unsigned long long _numMessagesToBeRouted; + BOOL _isUserAction; +} + ++ (void)saveRulesIfNeeded; ++ (id)syncedRulesSyncedFile; ++ (void)addInvitationsToCalendarFromMessages:(id)arg1; ++ (void)setAddInvitationsToCalendarAutomatically:(BOOL)arg1; ++ (BOOL)_addICalRule; ++ (BOOL)addInvitationsToCalendarAutomatically; ++ (void)applyRulesAsynchronouslyToMailboxes:(id)arg1; ++ (void)_applyRulesToMailboxes:(id)arg1; ++ (id)junkMailHeaderFlags; ++ (void)setJunkMailTrustHeaders:(BOOL)arg1; ++ (BOOL)junkMailTrustHeaders; ++ (void)setJunkMailEvaluationAfterRules:(BOOL)arg1; ++ (BOOL)junkMailEvaluationAfterRules; ++ (void)reloadRules; ++ (id)defaultJunkMailRule; ++ (id)userJunkMailRule; ++ (void)setJunkMailRule:(id)arg1; ++ (id)junkMailRule; ++ (id)_junkMailRuleForBehavior:(long long)arg1 abCriterion:(BOOL)arg2 ahCriterion:(BOOL)arg3 fnCriterion:(BOOL)arg4; ++ (void)routeJunkMessagesInMailboxes:(id)arg1; ++ (void)_ensureJunkRuleBehaviorMatchesPreference; ++ (void)evaluateJunkMailBehaviorFromRules; ++ (void)setJunkMailBehavior:(long long)arg1; ++ (long long)junkMailBehavior; ++ (id)colorForMessage:(id)arg1 highlightTextUsingColor:(char *)arg2; ++ (void)putRulesThatWantsToHandleMessage:(id)arg1 intoArray:(id)arg2 colorRulesOnly:(BOOL)arg3; ++ (void)headersRequiredForRoutingDidChange; ++ (id)headersRequiredForRouting; ++ (void)_mailboxListingChanged:(id)arg1; ++ (void)loadDestinationMailboxes; ++ (void)tryToReconnectAutoDeactivatedRules; ++ (void)_updateUnrecognizedRulesAfterRemovingIndex:(unsigned long long)arg1; ++ (void)_updateUnrecognizedRulesAfterAddingIndex:(unsigned long long)arg1; ++ (void)removeRule:(id)arg1; ++ (void)addRule:(id)arg1; ++ (void)insertRule:(id)arg1 atIndex:(unsigned long long)arg2; ++ (void)removeRuleAtIndex:(unsigned long long)arg1; ++ (id)ruleAtIndex:(unsigned long long)arg1; ++ (unsigned long long)numberOfRules; ++ (id)rules; ++ (void)_synchronouslyWriteRulesToDisk; ++ (void)_writeRulesToDiskInBackground; ++ (id)_readRulesFromDisk; ++ (void)_setupSortRules; ++ (id)_sortRuleDictionaryRepresentations; ++ (id)_sortRulesFromDictionaryRepresentations:(id)arg1 junkRule:(id *)arg2 iCalRule:(id *)arg3; ++ (BOOL)_setICalRule:(id)arg1; ++ (id)iCalRule; ++ (id)_defaultSortRules; ++ (id)defaultAppleEmailAddresses; ++ (void)_mailboxWasRenamed:(id)arg1; ++ (void)_accountWillBeDeleted:(id)arg1; ++ (void)_mailboxBecameInvalid:(id)arg1; ++ (void)mailboxWillBeRenamedOrInvalidated; ++ (void)ruleDidChange:(id)arg1; ++ (void)ruleAffectingColorsDidChange:(id)arg1; ++ (BOOL)colorsUpdateDynamically; ++ (BOOL)_colorRuleExistsAfterRule:(id)arg1; ++ (void)enqueueColorRulesDidChange; ++ (void)setColorChangeCounter:(long long)arg1; ++ (long long)colorChangeCounter; ++ (BOOL)_hasColorRules; ++ (void)_iCalSettingChangedFromICal:(id)arg1; ++ (void)_setupAddInvitationDefault; ++ (void)_updateICalRule:(BOOL)arg1; ++ (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; ++ (void)_unScheduleWriteRules; ++ (void)scheduleWriteRules; ++ (void)setWriteRulesTimer:(id)arg1; ++ (id)writeRulesTimer; ++ (void)initialize; +- (void)setIsUserAction:(BOOL)arg1; +- (void)dealloc; +- (void)setEstimatedNumberOfMessagesToRoute:(unsigned long long)arg1; +- (void)setStore:(id)arg1; +- (void)waitForRoutingToFinish; +- (void)_routeQueuedMessages; +- (void)asynchronouslyRouteMessages:(id)arg1; +- (id)routeMessages:(id)arg1 fromStores:(id)arg2; +- (BOOL)_routeMessagesIndividually; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageRouterUtilities.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageRouterUtilities.h new file mode 100644 index 00000000..26ab08ac --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageRouterUtilities.h @@ -0,0 +1,22 @@ +/* + * 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" + +@interface MFMessageRouterUtilities : NSObject +{ +} + ++ (void)resetShouldSpotlightIndexJunkLevel; ++ (BOOL)shouldSpotlightIndexJunkLevel; ++ (id)rulesActiveStatePath; ++ (id)unsyncedRulesPath; ++ (id)syncedRulesPath; ++ (id)sortRulesPath; ++ (id)rulesConflictResolver; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageRule.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageRule.h new file mode 100644 index 00000000..f7fb192d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageRule.h @@ -0,0 +1,168 @@ +/* + * 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 "NSCopying.h" + +@class MFMailbox, NSArray, NSColor, NSDictionary, NSMutableArray, NSNumber, NSString; + +@interface MFMessageRule : NSObject +{ + NSMutableArray *_criteria; + unsigned int _flags; + NSString *_uniqueId; + NSString *_ruleName; + NSDictionary *_otherInfo; + NSNumber *_isActiveSyncState; + MFMailbox *_copyDestinationMailbox; + NSString *_copyDestinationMailboxURL; + MFMailbox *_destinationMailbox; + NSString *_destinationMailboxURL; + NSColor *_color; + NSString *_soundPath; + NSString *_appleScriptPath; + NSArray *_recipients; + NSString *_responseMessage; + int _autoResponseType; + BOOL _isJunkMailRule; + BOOL _isCalendarRule; + BOOL _didChange; + unsigned int _isActive:1; + unsigned int _ruleWasAutoDeactivated:1; + unsigned int _allCriteriaMustBeSatisfied:1; + unsigned int _shouldTransferMessage:1; + unsigned int _shouldCopyMessage:1; + unsigned int _shouldStopEvaluatingRules:1; + unsigned int _highlightTextUsingColor:1; + unsigned int _shouldNotifyUser:1; + unsigned int _addInvitationAttachmentToCalendar:1; + unsigned int _shouldSendNotification:1; +} + ++ (BOOL)isRuleDictionaryCompatible:(id)arg1; ++ (id)appleScriptLock; ++ (void)initialize; +- (id)objectSpecifier; +- (BOOL)isEqualToRule:(id)arg1; +- (void)setShouldSendNotification:(BOOL)arg1; +- (BOOL)shouldSendNotification; +@property(nonatomic) BOOL isCalendarRule; +- (void)setAddInvitationAttachmentToCalendar:(BOOL)arg1; +- (BOOL)addInvitationAttachmentToCalendar; +- (void)setShouldNotifyUser:(BOOL)arg1; +- (BOOL)shouldNotifyUser; +- (void)setShouldStopEvaluatingRules:(BOOL)arg1; +- (BOOL)shouldStopEvaluatingRules; +- (void)setSoundPath:(id)arg1; +- (id)soundPath; +- (void)setResponseMessage:(id)arg1; +- (void)handleDidChange; +- (void)handleDidChangeIfNeeded; +- (id)responseMessage; +- (void)setAutoResponseRecipients:(id)arg1; +- (id)autoResponseRecipients; +- (void)setAutoResponseType:(int)arg1; +- (int)autoResponseType; +- (BOOL)affectsColorEvaluation; +- (void)setHighlightTextUsingColor:(BOOL)arg1; +- (BOOL)highlightTextUsingColor; +- (void)setColor:(id)arg1; +- (id)color; +- (void)setAppleScriptPath:(id)arg1; +- (id)appleScriptPath; +- (void)setFlagsToApply:(unsigned int)arg1; +- (unsigned int)flagsToApply; +- (void)setAppleScriptDestinationMailbox:(id)arg1; +- (void)setAppleScriptCopyDestinationMailbox:(id)arg1; +- (void)_evaluateIfNeeded:(id)arg1 andSetUsingSelector:(SEL)arg2; +- (id)appleScriptCopyDestinationMailbox; +- (id)appleScriptDestinationMailbox; +- (BOOL)invalidateDestinationMailboxesForURLString:(id)arg1; +- (void)tryToReconnectDestinationIfNeeded; +- (id)_tryToGetMailboxForURLString:(id)arg1; +- (void)setCopyDestinationMailbox:(id)arg1; +- (id)copyDestinationMailbox; +- (id)_copyDestinationMailboxCreateIfNeeded:(BOOL)arg1; +- (void)setDestinationMailbox:(id)arg1; +- (id)destinationMailbox; +- (id)_destinationMailboxCreateIfNeeded:(BOOL)arg1; +- (void)_setDestinationIvar:(id *)arg1 toDestinationMailbox:(id)arg2 destinationURLIvar:(id *)arg3; +- (id)_destinationMailbox:(id)arg1 withURL:(id)arg2 setUsingSelector:(SEL)arg3 createIfNeeded:(BOOL)arg4; +- (void)setShouldCopyMessage:(BOOL)arg1; +- (BOOL)shouldCopyMessage; +- (void)setShouldTransferMessage:(BOOL)arg1; +- (BOOL)shouldTransferMessage; +- (void)setCriteria:(id)arg1; +- (id)criteria; +- (void)setAllCriteriaMustBeSatisfied:(BOOL)arg1; +- (BOOL)allCriteriaMustBeSatisfied; +- (void)setIsActiveSyncState:(BOOL)arg1; +- (BOOL)isActiveSyncState; +@property(nonatomic) BOOL isActive; +@property(nonatomic) BOOL isJunkMailRule; +- (BOOL)isTerminalAction; +- (long long)version; +- (void)setRuleName:(id)arg1; +- (id)ruleName; +- (void)performPostSyncingValidation; +- (BOOL)isValid:(id *)arg1 options:(unsigned int)arg2; +- (BOOL)doesMessageSatisfyCriteria:(id)arg1; +- (void)addHeadersRequiredForRoutingToArray:(id)arg1; +- (void)_performAddInvitationAttachmentToCalendarActionOnMessages:(id)arg1; +- (void)_performAppleScriptActionWithMessages:(id)arg1; +- (void)_performAutoResponseActionOnMessages:(id)arg1; +- (id)_performAutoResponseActionOnMessage:(id)arg1 encrypt:(BOOL)arg2 includeOrignalMessageText:(BOOL)arg3; +- (void)_performUserNotificationAction:(id)arg1; +- (void)performActionsOnMessages:(id)arg1 sourceStores:(id)arg2 destinationStores:(id)arg3 rejectedMessages:(id)arg4 messagesToBeDeleted:(id)arg5; +- (void)_appendMessages:(id)arg1 fromSourceMailbox:(id)arg2 toDestinationMailbox:(id)arg3 destinationStores:(id)arg4 rejectedMessages:(id)arg5 messagesToBeDeleted:(id)arg6; +- (void)_updateDefaultAppleEmailAddressRule; +- (id)dictionaryRepresentation; +- (id)initWithDictionaryRepresentation:(id)arg1; +- (id)mailboxPathForMailboxURL:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)mailboxURLStringForMailbox:(id)arg1; +- (id)initWithRule:(id)arg1; +- (id)init; +- (void)setUniqueId:(id)arg1; +- (id)uniqueId; +- (BOOL)isEquivalentExceptForTitleAndIDs:(id)arg1; +- (BOOL)isEqual:(id)arg1; +- (id)description; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (void)setAddress:(id)arg1 forResponseType:(int)arg2; +- (void)removeFromCriteriaAtIndex:(unsigned long long)arg1; +- (void)insertInCriteria:(id)arg1; +- (void)insertInCriteria:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)setRuleDescription:(id)arg1; +- (id)ruleDescription; +- (void)setActionRunApplescript:(id)arg1; +- (id)actionRunApplescript; +- (void)setActionReplyText:(id)arg1; +- (id)actionReplyText; +- (void)setActionRedirectToAddress:(id)arg1; +- (id)actionRedirectToAddress; +- (void)setActionPlaySound:(id)arg1; +- (id)actionPlaySound; +- (void)setActionMarkAsRead:(BOOL)arg1; +- (BOOL)actionMarkAsRead; +- (void)setActionMarkAsFlaggedStatus:(long long)arg1; +- (long long)actionMarkAsFlaggedStatus; +- (void)setActionMarkAsFlagged:(BOOL)arg1; +- (BOOL)actionMarkAsFlagged; +- (void)setActionForwardText:(id)arg1; +- (id)actionForwardText; +- (void)setActionForwardToAddress:(id)arg1; +- (id)actionForwardToAddress; +- (void)setActionDeleteMessage:(BOOL)arg1; +- (BOOL)actionDeleteMessage; +- (unsigned int)highlightColorValue:(id)arg1; +- (void)setActionColorMessage:(unsigned int)arg1; +- (unsigned int)actionColorMessage; +- (void)updateIsActive; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageRuleCriterion.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageRuleCriterion.h new file mode 100644 index 00000000..ab1ff20e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageRuleCriterion.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFMessageRule; + +@interface MFMessageRuleCriterion : MFMessageCriterion +{ + MFMessageRule *_rule; +} + ++ (id)conversationsCriterion; ++ (id)noSentCriterion; ++ (id)noTrashCriterion; ++ (id)noJunkCriterion; +- (BOOL)performPostSyncingValidation; +- (id)objectSpecifier; +- (void)setCriterionIdentifier:(id)arg1; +- (void)setMessageRule:(id)arg1; +- (void)setRuleExpression:(id)arg1; +- (void)setRuleQualifier:(unsigned int)arg1; +- (void)setRuleType:(unsigned int)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageSortingInformation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageSortingInformation.h new file mode 100644 index 00000000..d0f996f8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageSortingInformation.h @@ -0,0 +1,26 @@ +/* + * 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" + +@class NSDictionary; + +@interface MFMessageSortingInformation : NSObject +{ + BOOL _isSortedAscending; + BOOL _skipAutomaticSecondarySort; + id _sortContext; + NSDictionary *_sortValues; +} + +@property(copy, nonatomic) NSDictionary *sortValues; // @synthesize sortValues=_sortValues; +@property(retain, nonatomic) id sortContext; // @synthesize sortContext=_sortContext; +@property(nonatomic) BOOL skipAutomaticSecondarySort; // @synthesize skipAutomaticSecondarySort=_skipAutomaticSecondarySort; +@property(nonatomic) BOOL isSortedAscending; // @synthesize isSortedAscending=_isSortedAscending; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageSortingValue.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageSortingValue.h new file mode 100644 index 00000000..8c9c844d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageSortingValue.h @@ -0,0 +1,39 @@ +/* + * 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 "MCMessageSortingInterface.h" + +@interface MFMessageSortingValue : NSObject +{ +} + ++ (void)removeEverythingExceptMessages:(id)arg1 fromSortData:(id)arg2; ++ (void)addMessages:(id)arg1 toSortData:(id)arg2 withDelegate:(id)arg3; ++ (void)addMessage:(id)arg1 toSortData:(id)arg2 withDelegate:(id)arg3; ++ (void)removeMessage:(id)arg1 fromSortData:(id)arg2; ++ (id)mutableCopyOfSortData:(id)arg1; ++ (id)copySortDataForMessages:(id)arg1 sortOrders:(id)arg2 withDelegate:(id)arg3; ++ (void)addSortData:(id)arg1 forMessages:(id)arg2 sortOrder:(id)arg3 withDelegate:(id)arg4; ++ (id)equivalentSortsForSort:(id)arg1; +- (long long)libraryID; +- (unsigned int)uidForSort; +- (id)mailbox; +- (double)dateSentAsTimeIntervalSince1970; +- (double)dateReceivedAsTimeIntervalSince1970; +- (id)to; +- (id)subjectAndPrefixLength:(unsigned long long *)arg1; +- (id)subject; +- (unsigned long long)numberOfAttachments; +- (unsigned long long)messageSize; +- (id)senderDisplayName; +- (unsigned int)messageFlags; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (int)colorForSort; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageStore.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageStore.h new file mode 100644 index 00000000..37f71fe9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageStore.h @@ -0,0 +1,223 @@ +/* + * 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 "MCMessageDataSource.h" + +@class MCActivityMonitor, MFMailAccount, MFMailbox, NSCache, NSMutableArray, NSMutableDictionary, NSMutableSet, NSOperationQueue, NSTimer; + +@interface MFMessageStore : NSObject +{ + id _retainCountLock; + MFMailbox *_mailbox; + NSMutableArray *_allMessages; + MFMailAccount *_account; + NSMutableSet *_uniqueStrings; + BOOL _isReadOnly; + BOOL _compactOnClose; + BOOL _haveOpenLockFile; + BOOL _isWritingChangesToDisk; + BOOL _isTryingToClose; + id _cacheLock; + NSCache *_headerDataCache; + NSCache *_headerCache; + NSCache *_bodyDataCache; + NSCache *_bodyCache; + int _storeState; + NSTimer *_timer; + MCActivityMonitor *_openMonitor; + NSMutableDictionary *_fetchLockMap; + BOOL _hasUnsavedChangesToMessageData; + BOOL _forceInvalidation; + NSOperationQueue *_deleteQueue; +} + ++ (void)_autosaveMessageStore:(id)arg1; ++ (long long)copyMessages:(id)arg1 toMailbox:(id)arg2 shouldDelete:(BOOL)arg3; ++ (id)succesfulMessagesFromMessages:(id)arg1 unsuccessfulOnes:(id)arg2; ++ (BOOL)cheapStoreAtPathIsEmpty:(id)arg1; ++ (BOOL)storeAtPathIsWritable:(id)arg1; ++ (BOOL)createEmptyStoreForPath:(id)arg1; ++ (BOOL)createEmptyStoreIfNeededForPath:(id)arg1 notIndexable:(BOOL)arg2; ++ (void)removeStoreFromCache:(id)arg1; ++ (void)registerAvailableStore:(id)arg1 forMailbox:(id)arg2; ++ (id)currentlyAvailableStoresForAccount:(id)arg1; ++ (id)currentlyAvailableStoreForMailbox:(id)arg1; ++ (id)_copyRawAvailableStoreForMailbox:(id)arg1 wantsCreate:(BOOL)arg2 shouldCreate:(char *)arg3; ++ (id)_storeCreationMarker; ++ (id)descriptionOfOpenStores; ++ (unsigned long long)numberOfCurrentlyOpenStores; ++ (void)initialize; +@property(readonly, nonatomic) NSOperationQueue *deleteQueue; // @synthesize deleteQueue=_deleteQueue; +@property BOOL forceInvalidation; // @synthesize forceInvalidation=_forceInvalidation; +@property BOOL hasUnsavedChangesToMessageData; // @synthesize hasUnsavedChangesToMessageData=_hasUnsavedChangesToMessageData; +@property(retain) MCActivityMonitor *openMonitor; // @synthesize openMonitor=_openMonitor; +@property BOOL isReadOnly; // @synthesize isReadOnly=_isReadOnly; +- (id)dataForMimePart:(id)arg1; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (BOOL)_updateFlagColor:(BOOL)arg1 forMessage:(id)arg2; +- (BOOL)_updateFlagForMessage:(id)arg1 key:(id)arg2 value:(BOOL)arg3; +- (void)messagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3 options:(id)arg4; +- (void)_setFlagsAndColorForMessages:(id)arg1; +- (void)_setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; +- (void)updateMessages:(id)arg1 updateColor:(BOOL)arg2 updateNumberOfAttachments:(BOOL)arg3; +- (void)updateMessageColorsSynchronouslyForMessages:(id)arg1 postingNotification:(BOOL)arg2; +- (id)_cachedHeaderDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedBodyDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedHeadersForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedBodyForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_setOrGetValue:(id)arg1 forKey:(id)arg2 inCache:(id *)arg3; +- (void)_invalidateObjectCachesForKey:(id)arg1; +- (id)_setOrGetBody:(id)arg1 forMessage:(id)arg2 updateFlags:(BOOL)arg3; +- (void)_rebuildTableOfContentsSynchronously; +- (void)_flushAllMessageData; +- (void)flushAllCaches; +- (void)_removeLockFile; +- (BOOL)_acquireLockFile; +- (id)_lockFilePath; +- (void)_invalidateInBackground; +- (void)_invalidate; +- (int)storeState; +- (BOOL)setStoreState:(int)arg1 fromState:(int)arg2; +- (BOOL)_isReadyToBeInvalidated; +- (BOOL)_shouldCallCompactWhenClosing; +- (id)_fetchBodyForMessage:(id)arg1 updateFlags:(BOOL)arg2; +- (id)_fetchBodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (void)_setNeedsAutosave; +- (void)_cancelAutosave; +- (void)invalidateMessages:(id)arg1; +- (void)invalidateMessage:(id)arg1; +- (BOOL)isSortedAscending; +- (id)sortOrder; +- (void)suggestSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (void)setSyncEngineLogging:(BOOL)arg1; +- (void)invalidateSyncEngine; +- (void)fetchSynchronouslyForKnownChanges; +- (void)fetchSynchronously; +- (id)status; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2; +- (void)updateMessageColorsSynchronouslyForMessages:(id)arg1; +- (void)updateNumberOfAttachmentsAndColorsForMessages:(id)arg1; +- (void)updateNumberOfAttachmentsForMessages:(id)arg1; +- (void)startSynchronization; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setLocalFlagsForMessages:(id)arg1; +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)setPrimitiveFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (id)colorForMessage:(id)arg1; +- (id)uniquedString:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (void)updateBodyFlagsForMessage:(id)arg1 body:(id)arg2; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)bodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 allowPartial:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (unsigned long long)_numberOfMessagesToCache; +- (id)messageForMessageID:(id)arg1; +- (id)messagesForDocumentID:(id)arg1; +- (id)recentMessageWithValue:(id)arg1 forHeader:(id)arg2; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 forMove:(BOOL)arg5; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6 error:(id *)arg7; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; +- (void)finishCopyOfMessages:(id)arg1 fromStore:(id)arg2 originalsWereDeleted:(BOOL)arg3; +- (long long)undoAppendOfMessageIDs:(id)arg1; +- (BOOL)allowsDeleteInPlace; +- (BOOL)allowsOverwrite; +- (BOOL)allowsAppend; +- (void)deleteLastMessageWithHeaders:(id)arg1 compactWhenDone:(BOOL)arg2; +- (void)undeleteMessages:(id)arg1; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (id)async_deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (void)doCompact; +- (BOOL)canCompact; +- (void)rebuildTableOfContentsAsynchronously; +- (BOOL)canRebuild; +- (id)routeMessages:(id)arg1 isUserAction:(BOOL)arg2; +- (id)finishRoutingMessages:(id)arg1 routed:(id)arg2; +- (id)routeMessages:(id)arg1; +- (id)_defaultRouterDestination; +- (void)addMessagesToAllMessages:(id)arg1; +- (id)copyOfAllMessagesWithOptions:(unsigned int)arg1; +- (id)mutableCopyOfAllMessages; +- (id)copyOfAllMessages; +- (unsigned long long)totalCount; +- (void)messagesWereUpdated:(id)arg1; +- (void)messagesWereCompacted:(id)arg1; +- (void)messagesWereAdded:(id)arg1; +- (void)structureDidChange; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (BOOL)isTrash; +- (id)description; +- (const char *)displayNameForLogging; +- (id)displayName; +- (BOOL)isOpened; +- (id)allMailboxRepresentations; +- (BOOL)isSmartMailbox; +- (id)mailbox; +- (id)account; +- (void)invalidateSavingChanges:(BOOL)arg1; +- (void)saveChanges; +- (void)writeUpdatedMessageDataToDisk; +- (void)cancelOpen; +- (void)didOpenWithMessages:(id)arg1; +- (void)willOpen; +- (void)cleanupSynchronously; +- (void)_cleanupSynchronouslyIfCancelOpenPosted; +- (void)cleanupAsynchronously; +- (void)updateMetadata; +- (void)updateMetadataAsynchronously; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (void)openSynchronously; +- (void)openAsynchronouslyWithOptions:(unsigned int)arg1; +- (void)openAsynchronously; +- (void)reset; +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)_messageStoreCommonInit; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2; +- (id)init; +- (id)willDeallocPerformingInStoreCacheLock:(char *)arg1; +- (void)queueSaveChangesInvocation; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (id)objectSpecifierForMessage:(id)arg1; +- (id)objectSpecifier; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageThread.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageThread.h new file mode 100644 index 00000000..7f2c9065 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFMessageThread.h @@ -0,0 +1,103 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@class NSMutableArray, NSMutableDictionary, NSString; + +@interface MFMessageThread : MCMessage +{ + NSMutableArray *_filteredMessages; + NSString *_formattedUnreadMessageCount; + NSMutableDictionary *_pendingChanges; + MCMessage *_newestMessage; + MCMessage *_oldestMessage; + MCMessage *_realNewestMessage; + MCMessage *_newestReceivedMessage; + MCMessage *_newestSentMessage; + MCMessage *_snippetMessage; + MCMessage *_messageWithHighestLibraryID; + MCMessage *_messageWithHighestRemoteID; + MCMessage *_messageWithHighestNumberWithinStores; + unsigned int _unreadMessageCount; + unsigned int _flaggedMessageCount; + unsigned int _junkMessageCount; + unsigned int _attachmentCount; + BOOL _updateSubjectEtcUponClosing; + BOOL _isThreadOpen; + BOOL _showDateInSubject; +} + ++ (id)findMessageWithHighestRemoteIDInMessages:(id)arg1; ++ (id)findMessageWithHighestLibraryIDInMessages:(id)arg1; ++ (id)findSnippetMessageInMessages:(id)arg1; ++ (id)findNewestSentMessageInMessages:(id)arg1; ++ (id)findNewestReceivedMessageInMessages:(id)arg1; ++ (id)findNewestMessageInMessages:(id)arg1; ++ (id)_storeForMailbox:(id)arg1 fromStores:(id)arg2 cache:(id)arg3; ++ (BOOL)_isNewSnippetMessage:(id)arg1 currentSnippetDate:(double *)arg2 newestReadDate:(double *)arg3 threadHasReadMessages:(char *)arg4; ++ (id)_newestFirstEnumerator:(id)arg1; ++ (id)messagesByExpandingThreads:(id)arg1; +@property BOOL showDateInSubject; // @synthesize showDateInSubject=_showDateInSubject; +@property BOOL isThreadOpen; // @synthesize isThreadOpen=_isThreadOpen; +- (id)gmailLabels; +- (id)mailbox; +- (id)messageWithHighestNumberWithinStores:(id)arg1; +- (unsigned int)uidForSort; +- (id)messageWithHighestRemoteID; +- (id)_unlockedMessageWithHighestRemoteID; +- (id)messageWithHighestLibraryID; +- (id)_unlockedMessageWithHighestLibraryID; +- (void)_setJunkFlags; +- (id)snippetMessage; +- (id)newestSentMessage; +- (id)newestMessage; +- (id)oldestMessage; +- (void)invertOrderOfMessagesMakePending:(BOOL)arg1; +- (void)sortMessagesUsingComparator:(id)arg1 makePending:(void)arg2; +- (BOOL)willBeDeletedIfMessagesAreDeleted:(id)arg1; +- (void)setIsOpen:(BOOL)arg1; +- (BOOL)isOpen; +- (BOOL)isThread; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (unsigned long long)numberOfAttachments; +- (unsigned long long)messageSize; +- (id)messageBody; +- (id)dataSource; +- (id)messageID; +- (id)senderDisplayName; +- (id)sender; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (double)dateSentAsTimeIntervalSince1970; +- (double)dateReceivedAsTimeIntervalSince1970; +- (id)subject; +- (id)to; +- (void)setOldestMessage:(id)arg1; +- (void)setNewestSentMessage:(id)arg1; +- (void)setNewestReceivedMessage:(id)arg1; +- (void)setNewestMessage:(id)arg1; +- (unsigned long long)numberOfUnreadMessages; +- (id)pendingFilteredMessages; +- (unsigned long long)numberOfPendingFilteredMessages; +- (unsigned long long)numberOfFilteredMessages; +- (id)formattedUnreadMessageCount; +- (void)updateSubjectEtc:(BOOL)arg1; +- (BOOL)flagsHaveChanged; +- (void)discardPendingChangesForSeriesID:(id)arg1; +- (BOOL)commitPendingChangesForSeriesID:(id)arg1; +- (void)deleteMessages:(id)arg1 makePending:(BOOL)arg2; +- (void)addMessages:(id)arg1 usingComparator:(id)arg2 makePending:(void)arg3; +- (id)_filteredMessagesEnumerator; +- (id)filteredMessages; +@property(readonly) unsigned int options; +@property(readonly) long long conversationID; +- (id)appliedFlagColors; +- (void)dealloc; +- (id)init; +- (id)initWithMessages:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFNeXTStore.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFNeXTStore.h new file mode 100644 index 00000000..00b235c5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFNeXTStore.h @@ -0,0 +1,64 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFTableOfContents, NSData; + +@interface MFNeXTStore : MFMessageStore +{ + NSData *_mboxData; + MFTableOfContents *_toc; + BOOL _mboxIsOnSMB; + BOOL _haveUpdatedMetadata; + BOOL _importMode; + NSData *_incomingMboxData; + BOOL _rebuildingTOC; +} + ++ (BOOL)cheapStoreAtPathIsEmpty:(id)arg1; ++ (BOOL)storeAtPathIsWritable:(id)arg1; ++ (BOOL)createEmptyStoreForPath:(id)arg1; +@property BOOL rebuildingTOC; // @synthesize rebuildingTOC=_rebuildingTOC; +- (BOOL)_shouldCallCompactWhenClosing; +- (BOOL)isSortedAscending; +- (id)sortOrder; +- (void)suggestSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (long long)_writeMessagesToIncomingMail:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3; +- (void)_incorporateMailFromIncoming; +- (long long)undoAppendOfMessageIDs:(id)arg1; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6 error:(id *)arg7; +- (BOOL)allowsAppend; +- (long long)_appendMessages:(id)arg1 successes:(id *)arg2 failures:(id *)arg3 mboxName:(id)arg4 tableOfContents:(id)arg5; +- (void)_addIDsForAppendedMessages:(id)arg1 toArray:(id)arg2; +- (id)_appendMessage:(id)arg1 toFile:(id)arg2; +- (void)_deleteAttachments:(id)arg1; +- (void)doCompact; +- (void)_compactMessageAtIndex:(unsigned long long)arg1; +- (BOOL)canCompact; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)messageForMessageID:(id)arg1; +- (void)_resetAllMessages; +- (BOOL)tableOfContents:(id)arg1 loadedMessages:(id)arg2; +- (void)_flushAllMessageData; +- (void)_rebuildTableOfContentsSynchronously; +- (BOOL)canRebuild; +- (void)writeUpdatedMessageDataToDisk; +- (void)_invalidate; +- (id)_lockFilePath; +- (void)updateMetadata; +- (id)messagesForImporter; +- (id)incomingMessages; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (void)_releaseMboxData; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFNetworkLocation.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFNetworkLocation.h new file mode 100644 index 00000000..d2ea4e81 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFNetworkLocation.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSMutableDictionary; + +@interface MFNetworkLocation : NSObject +{ + NSMutableDictionary *_accountDefaults; + NSMutableDictionary *_domainsBySubnet; +} + +- (BOOL)isEqualToLocation:(id)arg1; +- (BOOL)isEqual:(id)arg1; +- (void)_postChanged; +- (id)bestDeliveryAccountForAccount:(id)arg1 ignoreLockedDelivery:(BOOL)arg2; +- (void)setAccount:(id)arg1 deliveryAccount:(id)arg2; +- (id)deliveryAccountForAccount:(id)arg1; +- (BOOL)isForDomain:(id)arg1; +- (BOOL)isForIPAddress:(id)arg1; +- (id)subnets; +- (id)domains; +- (void)addDomains:(id)arg1 IPAddresses:(id)arg2; +- (id)archive; +- (void)dealloc; +- (id)initWithArchive:(id)arg1; +- (id)initWithDomains:(id)arg1 IPAddresses:(id)arg2; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPAccount.h new file mode 100644 index 00000000..5c72867c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPAccount.h @@ -0,0 +1,81 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MCActivityMonitor, MFPOPStore, NSLock; + +@interface MFPOPAccount : MFMailAccount +{ + MFPOPStore *_fetcher; + MCActivityMonitor *_fetchMonitor; + NSLock *_connectionActivityLock; + id _seenMessagesManagerLock; + BOOL _fetcherNeedsReset; + BOOL _deletingMessages; + BOOL _hasDoneBackgroundSynchronization; +} + ++ (id)accountTypeString; +- (id)storeForMailbox:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)_infoForMatchingURL:(id)arg1; +- (id)_URLPersistenceScheme; +- (void)_addAccountAndSeenMessagesToMessageManager; +- (id)newSeenMessagesManager; +- (id)authSchemesForConnection:(id)arg1; +- (BOOL)canAuthenticateWithScheme:(id)arg1 connection:(id)arg2; +- (id)archiveMailboxCreateIfNeeded:(BOOL)arg1; +- (void)relinquishConnectionActivityLock; +- (void)acquireConnectionActivityLock; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)deleteSeenMessagesNow; +- (void)deleteMessagesNow:(id)arg1; +- (BOOL)deletingMessages; +- (void)setDelayedMessageDeletionInterval:(long long)arg1; +- (long long)delayedMessageDeletionInterval; +- (void)setMessageDeletionPolicy:(long long)arg1; +- (long long)messageDeletionPolicy; +- (void)setDidTryUpgradingToAPOP:(BOOL)arg1; +- (BOOL)didTryUpgradingToAPOP; +- (void)setBigMessageWarningSize:(long long)arg1; +- (long long)bigMessageWarningSize; +- (BOOL)_setPath:(id)arg1; +- (BOOL)canMailboxBeRenamed:(id)arg1; +- (BOOL)canCreateNewMailboxes; +- (BOOL)containsMailboxes; +- (id)primaryMailbox; +- (id)mailboxPathExtension; +- (Class)storeClassForMailbox:(id)arg1; +- (BOOL)requiresAuthentication; +- (void *)keychainProtocol; +- (id)saslProfileName; +- (long long)defaultSecurePortNumber; +- (long long)defaultPortNumber; +- (id)standardSSLPorts; +- (id)standardPorts; +- (void)_readCustomInfoFromMailboxCache:(id)arg1; +- (void)setIsOffline:(BOOL)arg1; +- (BOOL)canGoOffline; +- (id)iaServiceType; +- (void)releaseAllConnections; +- (void)resetFetcher; +- (void)fetchSynchronously; +- (BOOL)_configureFetcherObject; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; +- (id)valueInMailboxesWithName:(id)arg1; +- (id)objectSpecifierForMailbox:(id)arg1; +- (id)mailboxes; +- (void)setDeleteMessagesOnServer:(BOOL)arg1; +- (BOOL)deleteMessagesOnServer; +- (void)setDeleteMessagesWhenMovedFromInbox:(BOOL)arg1; +- (BOOL)deleteMessagesWhenMovedFromInbox; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPConnection.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPConnection.h new file mode 100644 index 00000000..5bcb247c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPConnection.h @@ -0,0 +1,80 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCConnection.h" + +@class MFPOPAccount, NSArray, NSData, NSMapTable, NSMutableData; + +@interface MFPOPConnection : MCConnection +{ + NSMutableData *_sendBuffer; + NSMapTable *_listResults; + NSMapTable *_serverMessageIdsByNumber; + unsigned long long _numberOfMessagesAvailable; + id _delegate; + NSData *_apopTimeStamp; + NSArray *_capabilities; + BOOL _capaCommandFailed; + BOOL _connectionShouldPrefetchMessages; + BOOL _currentlyFetchingMessage; + id _context; + unsigned long long _numberOfMessagesToFetch; + unsigned long long _numberOfMessagesFetched; + unsigned long long _totalBytesToFetch; + unsigned long long _totalBytesReceived; + long long _activityMonitorKey; +} + +@property(nonatomic) long long activityMonitorKey; // @synthesize activityMonitorKey=_activityMonitorKey; +@property(nonatomic) BOOL currentlyFetchingMessage; // @synthesize currentlyFetchingMessage=_currentlyFetchingMessage; +@property(nonatomic) unsigned long long totalBytesReceived; // @synthesize totalBytesReceived=_totalBytesReceived; +@property(nonatomic) unsigned long long totalBytesToFetch; // @synthesize totalBytesToFetch=_totalBytesToFetch; +@property(nonatomic) unsigned long long numberOfMessagesFetched; // @synthesize numberOfMessagesFetched=_numberOfMessagesFetched; +@property(nonatomic) unsigned long long numberOfMessagesToFetch; // @synthesize numberOfMessagesToFetch=_numberOfMessagesToFetch; +@property(retain, nonatomic) id context; // @synthesize context=_context; +- (long long)_pass:(id)arg1; +- (long long)_user:(id)arg1; +- (long long)_apopWithUsername:(id)arg1 password:(id)arg2; +- (long long)_getStatusFromReply; +- (void)_parsePOPErrorFromData:(id)arg1 error:(id)arg2; +- (id)_copyReplyLineData; +- (id)_copyReplyLineDataWithError:(id *)arg1; +- (long long)_sendCommand:(const char *)arg1 dontLogIndex:(long long)arg2 withArguments:(id)arg3; +- (long long)_readMultilineResponseWithMaxSize:(unsigned long long)arg1 intoMutableData:(id)arg2 informDelegate:(BOOL)arg3; +- (BOOL)_startTLS; +@property MFPOPAccount *account; +- (void)setDelegate:(id)arg1 context:(id)arg2; +- (long long)deleteMessagesOnServer:(id)arg1; +- (long long)fetchMessages:(id)arg1 totalBytes:(unsigned long long)arg2; +- (unsigned long long)numberOfMessagesAvailable; +- (BOOL)messagesAvailable; +- (unsigned long long)sizeOfMessageNumber:(unsigned long long)arg1; +- (void)getTopOfMessageNumber:(unsigned long long)arg1 intoMutableData:(id)arg2; +- (id)newMessageHeaderForMessageNumber:(unsigned long long)arg1; +- (long long)dele:(unsigned long long)arg1; +- (long long)_retr:(unsigned long long)arg1; +- (id)_newDataForMessage:(unsigned long long)arg1 ofSize:(unsigned long long)arg2 informDelegate:(BOOL)arg3; +- (void)setMessageID:(id)arg1 forMessageNumber:(unsigned long long)arg2; +- (id)messageIDForMessageNumber:(unsigned long long)arg1; +- (long long)getMessageNumbers:(id *)arg1 andMessageIdsByNumber:(id *)arg2; +- (long long)_getListResults; +- (long long)doStat; +- (BOOL)supportsAPOP; +- (BOOL)supportsUSER; +- (long long)_quit; +- (void)quit; +- (BOOL)_authenticateWithUsername:(id)arg1 password:(id)arg2; +- (BOOL)_apopAuthenticateWithUsername:(id)arg1 password:(id)arg2; +- (BOOL)_authenticateWithAuthenticator:(id)arg1; +- (BOOL)authenticate; +- (BOOL)_completeConnectionWithResult:(BOOL)arg1; +- (id)authenticationMechanisms; +- (id)capabilities; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPConnectionDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPConnectionDelegate-Protocol.h new file mode 100644 index 00000000..a6b3a745 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPConnectionDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol MFPOPConnectionDelegate +- (BOOL)connectionShouldPrefetchMessages; +- (void)connection:(id)arg1 didRetrieveData:(id)arg2 forMessageNumber:(unsigned long long)arg3; +- (long long)connection:(id)arg1 willRetrieveMessageNumber:(unsigned long long)arg2 header:(id)arg3 size:(unsigned long long)arg4; +- (void)connection:(id)arg1 receivedNumberOfBytes:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPMessage.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPMessage.h new file mode 100644 index 00000000..584d0b99 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPMessage.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@class NSData, NSString; + +@interface MFPOPMessage : MCMessage +{ + unsigned long long _messageNumber; + NSString *_messageID; + NSData *_messageData; +} + +- (id)originalMailboxURLString; +- (id)remoteMailboxURLString; +- (void)setMessageID:(id)arg1; +- (id)messageID; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (unsigned long long)messageSize; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (id)mailbox; +- (id)account; +- (void)setMessageData:(id)arg1; +- (id)messageData; +- (void)setMessageNumber:(unsigned long long)arg1; +- (unsigned long long)messageNumber; +- (void)dealloc; +- (id)initWithPOP3FetchStore:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPSizeEngine.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPSizeEngine.h new file mode 100644 index 00000000..77c78b79 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPSizeEngine.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSMutableDictionary; + +@interface MFPOPSizeEngine : MFSizeEngine +{ + NSMutableDictionary *_infoByMessageID; +} + +- (void)_messageFlagsChanged:(id)arg1; +- (void)_deleteServerMessagesCompleted:(id)arg1; +- (void)_fetchCompleted:(id)arg1; +- (BOOL)_prepareToRefresh; +- (void)_runWorkerThread; +- (id)_remoteMailboxURL; +- (id)_newMessageInfoFromMessageHeaders:(id)arg1; +- (id)infoWithKey:(id)arg1 forMessageWithID:(id)arg2; +- (id)allMessageIDs; +- (void)dealloc; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPStore.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPStore.h new file mode 100644 index 00000000..230dcec8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFPOPStore.h @@ -0,0 +1,64 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "MFPOPConnectionDelegate.h" +#import "MFRouterStore.h" + +@class NSMutableIndexSet, NSMutableSet; + +@interface MFPOPStore : MFMessageStore +{ + NSMutableSet *_skippedMessageIds; + NSMutableIndexSet *_messageNumbersToDelete; + BOOL _lastConnectionFailed; + BOOL _routerCancelled; +} + +@property BOOL routerCancelled; // @synthesize routerCancelled=_routerCancelled; +- (void)messagesWereRouted:(id)arg1; +- (void)messagesWillBeRouted:(id)arg1; +- (id)_defaultRouterDestination; +- (void)cancel; +- (void)connection:(id)arg1 didRetrieveData:(id)arg2 forMessageNumber:(unsigned long long)arg3; +- (long long)connection:(id)arg1 willRetrieveMessageNumber:(unsigned long long)arg2 header:(id)arg3 size:(unsigned long long)arg4; +- (void)connection:(id)arg1 receivedNumberOfBytes:(unsigned long long)arg2; +- (BOOL)connectionShouldPrefetchMessages; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (void)_cancelAutosave; +- (void)_setNeedsAutosave; +- (void)writeUpdatedMessageDataToDisk; +- (id)messageForMessageID:(id)arg1; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)displayName; +- (BOOL)isOpened; +- (id)mailbox; +- (id)_copyMessageNumbersToDelete; +- (void)_clearMessageNumbersToDelete; +- (void)_addMessageNumberToDelete:(unsigned long long)arg1; +- (long long)_closeConnection:(id)arg1; +- (void)_deleteMessagesMarkedForDeletionUsingManager:(id)arg1; +- (void)_removeDeletedMessagesWithNumbers:(id)arg1 fromSeenMessageManager:(id)arg2 connection:(id)arg3; +- (BOOL)_shouldDeleteSeenMessage:(id)arg1 messageID:(id)arg2 deletionPolicy:(long long)arg3 cutoffDate:(id)arg4 url:(id)arg5 inbox:(id)arg6; +- (id)_messageIDForNumber:(unsigned long long)arg1 serverIdsByNumber:(id)arg2 connection:(id)arg3; +- (BOOL)_firstAndLast:(unsigned long long)arg1 onConnection:(id)arg2 alreadySeen:(id)arg3; +- (void)_backgroundFetchFailed:(id)arg1; +- (id)_authenticatedConnection; +- (BOOL)_createDirectoryIfNeeded; +- (void)fetchSynchronously; +- (void)deleteMessages:(id)arg1; +- (id)account; +- (void)dealloc; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2; +- (id)init; +- (id)initWithPOPAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFParentalControlAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFParentalControlAccount.h new file mode 100644 index 00000000..078e382f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFParentalControlAccount.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFParentalControlAccount : MFLocalAccount +{ +} + ++ (id)_mailboxNameForAccount:(id)arg1; ++ (id)storeForAccount:(id)arg1; ++ (id)storeForMailbox:(id)arg1; ++ (id)mailboxForAccount:(id)arg1; ++ (id)allMailboxes; ++ (id)originalAccountForIncomingMailbox:(id)arg1; ++ (id)parentalControlAccount; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)mailboxPathExtension; +- (Class)storeClassForMailbox:(id)arg1; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFParentalControlManager.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFParentalControlManager.h new file mode 100644 index 00000000..bad871ec --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFParentalControlManager.h @@ -0,0 +1,73 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCInvocationQueue, NSDate, NSMutableArray, NSMutableSet; + +@interface MFParentalControlManager : NSObject +{ + NSMutableSet *_pcStores; + MCInvocationQueue *_tasks; + NSDate *_lastCleanupDate; + NSMutableArray *_recentRequests; + BOOL _isDirty; + BOOL _recentRequestsDirty; + NSMutableSet *_pendingRequests; +} + ++ (id)sharedManager; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)_saveChangesWithDelay; +@property BOOL isDirty; +- (void)_approveEmailListChanged:(id)arg1; +- (BOOL)isEmail:(id)arg1 inEmailList:(id)arg2; +- (BOOL)rejectRequest:(id)arg1; +- (BOOL)approveRequest:(id)arg1; +- (BOOL)_respondToRequest:(id)arg1 approve:(BOOL)arg2; +- (void)_deliverResponseMessage:(id)arg1 requestMessage:(id)arg2; +- (id)_makeResponseMessageToRequest:(id)arg1 approve:(BOOL)arg2; +- (void)saveChanges; +- (BOOL)requestApprovalForOutgoingMessage:(id)arg1; +- (void)_requestApprovalForOutgoingMessage:(id)arg1 srcStore:(id)arg2; +- (void)_deliverApprovalRequestMessage:(id)arg1 forOutgoingMessage:(id)arg2; +- (BOOL)haveEmailsBeenApproved:(id)arg1 unapprovedOnes:(id)arg2; +- (BOOL)processIncomingMessage:(id)arg1 messageIsParentResponse:(char *)arg2; +- (void)_cleanupPCStores; +- (void)_reallyCleanupPCStores; +- (void)_cleanupPCStore:(id)arg1; +- (void)_rejectAddresses:(id)arg1 responseFromAccount:(id)arg2; +- (void)_approveAddresses:(id)arg1 responseFromAccount:(id)arg2; +- (void)_reallyRequestApprovalForIncomingMessage:(id)arg1 srcStore:(id)arg2 pcStore:(id)arg3 messageInPCStore:(id)arg4; +- (void)_requestApprovalForIncomingMessage:(id)arg1 srcStore:(id)arg2 pcStore:(id)arg3 messageInPCStore:(id)arg4; +- (BOOL)_hasPendingRequestForSender:(id)arg1; +- (void)_removeSendersFromRecentRequests:(id)arg1; +- (BOOL)_hasRecentlySentPermissionRequestForSender:(id)arg1; +- (id)_recentRequestsNoLock; +- (id)_recentRequestsFilePath; +- (id)_deliverMessage:(id)arg1; +- (id)_makeRequestMessageForMessage:(id)arg1 isOutgoingMessage:(BOOL)arg2; +- (id)_openPCStoreForAccount:(id)arg1; +- (id)_openStoreForPCMailbox:(id)arg1; +- (id)_openStoreForPCMailbox:(id)arg1 keepOpen:(BOOL)arg2; +- (void)_rejectSenders:(id)arg1 sourcePCMailbox:(id)arg2; +- (void)_approveSenders:(id)arg1 sourcePCMailbox:(id)arg2 destinationAccount:(id)arg3; +- (void)_cleanupPCStoresAfterDelay:(id)arg1; +- (void)deleteAccount:(id)arg1; +- (id)headersRequiredForParentalControl; +- (BOOL)isParentEmailAvailable; +- (id)parentalControlDirectory; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFParentalControlSettings.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFParentalControlSettings.h new file mode 100644 index 00000000..724d82a5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFParentalControlSettings.h @@ -0,0 +1,41 @@ +/* + * 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" + +@interface MFParentalControlSettings : NSObject +{ +} + ++ (BOOL)isEmail:(id)arg1 inEmailList:(id)arg2; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (double)parentalControlEnabledTimeIntervalSince1970; +- (id)rejectEmails:(id)arg1; +- (BOOL)_rejectEmail:(id)arg1; +- (id)approveEmails:(id)arg1; +- (BOOL)_approveEmail:(id)arg1; +- (id)_dictionaryFromEmail:(id)arg1; +- (BOOL)haveEmailsBeenApproved:(id)arg1 unapprovedOnes:(id)arg2; +- (BOOL)hasEmailBeenApproved:(id)arg1; +- (id)_approvedEmails; +- (BOOL)_isSelfEmail:(id)arg1; +- (BOOL)isParentEmail:(id)arg1; +- (id)parentEmails; +- (BOOL)isParentalControlEnabled; +- (void)_approveEmailListChanged:(id)arg1; +- (void)_defaultsDidChange; +- (void)_reallyHandleDefaultsChange; +- (void)_updateCachedDataForEnabledState:(BOOL)arg1 approvedList:(BOOL)arg2 postNotification:(BOOL)arg3; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFParentalControlStore.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFParentalControlStore.h new file mode 100644 index 00000000..96688e48 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFParentalControlStore.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFParentalControlStore : MFNeXTStore +{ +} + +- (void)saveChanges; +- (void)setParentalControlMessageState:(long long)arg1 forMessages:(id)arg2; +- (void)setParentalControlMessageState:(long long)arg1 forMessage:(id)arg2; +- (id)realAccount; +- (id)_defaultRouterDestination; +- (BOOL)_shouldCallCompactWhenClosing; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFPreparedStatement.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFPreparedStatement.h new file mode 100644 index 00000000..ad40cf91 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFPreparedStatement.h @@ -0,0 +1,21 @@ +/* + * 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" + +@interface MFPreparedStatement : NSObject +{ + struct sqlite3_stmt *_compiled; +} + +@property(readonly, nonatomic) struct sqlite3_stmt *compiled; // @synthesize compiled=_compiled; +- (int)reset; +- (void)sqliteFinalize; +- (void)dealloc; +- (id)initWithString:(const char *)arg1 andDb:(struct sqlite3 *)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFQuoteParser.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFQuoteParser.h new file mode 100644 index 00000000..aa1761a3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFQuoteParser.h @@ -0,0 +1,25 @@ +/* + * 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" + +@class NSString; + +@interface MFQuoteParser : NSObject +{ + NSString *_quoteBlockHtmlPrefix; + NSString *_quoteBlockHtmlSuffix; +} + +- (void)reset; +- (id)escapedQuoteBlockWithHtml:(id)arg1; +- (id)strippedQuoteBlockWithHtml:(id)arg1; +- (id)_finalHtmlContentWithBlockQuoteChangesIfNeededForHtml:(id)arg1 startIndex:(unsigned long long)arg2 quoteProcessingStyle:(long long)arg3 allowMultipleQuoteBlocks:(BOOL)arg4; +- (void)dealloc; +- (id)initWithHtmlQuoteBlockHtmlPrefix:(id)arg1 quoteBlockHtmlSuffix:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFRecoveredMessage.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFRecoveredMessage.h new file mode 100644 index 00000000..7634713e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFRecoveredMessage.h @@ -0,0 +1,66 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@class MCMessageHeaders, NSArray, NSData, NSString; + +@interface MFRecoveredMessage : MCMessage +{ + NSString *_path; + NSString *_remoteID; + NSString *_remoteMailboxURL; + NSString *_originalMailboxURL; + NSArray *_gmailLabelIDs; + MCMessageHeaders *_headers; + unsigned long long _size; + CDStruct_07ba05d6 _remoteFlags; + NSData *_bodyData; + NSData *_allData; + BOOL _loadedFileData; +} + ++ (id)spotlightAttributesForBodyData:(id)arg1 plistData:(id)arg2; +- (id)spotlightAttributes; +- (id)description; +- (BOOL)setMessageID:(long long)arg1 directory:(id)arg2; +- (void)flushCachedData; +- (CDStruct_76a5ddda)moreMessageFlags; +- (unsigned int)messageFlags; +- (CDStruct_07ba05d6)remoteFlags; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (id)mailbox; +- (id)account; +- (id)messageBodyIfAvailableUpdatingFlags:(BOOL)arg1; +- (id)messageBodyForIndexingAttachments; +- (id)messageBodyUpdatingFlags:(BOOL)arg1; +- (id)messageBodyFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)messageBodyIfAvailable; +- (id)messageBody; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)dataForMimePart:(id)arg1; +- (id)bodyDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)bodyData; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (id)headersIfAvailable; +- (id)headers; +- (id)headerDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)originalMailboxURLString; +- (id)remoteMailboxURLString; +- (id)messageID; +- (void)_parseBodyDataWithPList:(id)arg1; +- (void)_parseFileData:(id)arg1; +- (void)_loadFileDataIfNeeded; +- (id)_extendedAttributes; +- (void)dealloc; +- (id)initWithURL:(id)arg1; +- (id)init; +- (id)_initWithBodyData:(id)arg1; +- (id)initWithPath:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFRecoveredStore.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFRecoveredStore.h new file mode 100644 index 00000000..e2dda9ab --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFRecoveredStore.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFRecoveredStore : MFMessageStore +{ + NSArray *_pathsToImport; +} + +- (id)messagesForImporter; +- (void)writeUpdatedMessageDataToDisk; +- (void)dealloc; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2; +- (id)init; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2 pathsToImport:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFRedundantContentMarkup.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFRedundantContentMarkup.h new file mode 100644 index 00000000..74d3163d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFRedundantContentMarkup.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class MCMessage, MCParsedMessage, NSString; + +@interface MFRedundantContentMarkup : NSObject +{ + BOOL _matchedEntireAncestorContiguously; + BOOL _messageContainsRedundantText; + MCMessage *_message; + MCParsedMessage *_parsedMessage; + MCMessage *_ancestorUsedForComparison; + NSString *_messageBodyWithRedundantTextMarkers; + NSString *_redundantContentSenderName; +} + +@property(readonly, nonatomic) BOOL messageContainsRedundantText; // @synthesize messageContainsRedundantText=_messageContainsRedundantText; +@property(readonly, nonatomic) BOOL matchedEntireAncestorContiguously; // @synthesize matchedEntireAncestorContiguously=_matchedEntireAncestorContiguously; +@property(readonly, nonatomic) NSString *redundantContentSenderName; // @synthesize redundantContentSenderName=_redundantContentSenderName; +@property(readonly, nonatomic) NSString *messageBodyWithRedundantTextMarkers; // @synthesize messageBodyWithRedundantTextMarkers=_messageBodyWithRedundantTextMarkers; +@property(readonly, nonatomic) MCMessage *ancestorUsedForComparison; // @synthesize ancestorUsedForComparison=_ancestorUsedForComparison; +@property(readonly, nonatomic) MCParsedMessage *parsedMessage; // @synthesize parsedMessage=_parsedMessage; +@property(readonly, nonatomic) MCMessage *message; // @synthesize message=_message; +- (id)description; +- (void)dealloc; +- (id)initWithMessage:(id)arg1 parsedMessage:(id)arg2 ancestorUsedForComparison:(id)arg3 messageBodyWithRedundantTextMarkers:(id)arg4 messageContainsRedundantText:(BOOL)arg5 matchedEntireAncestorContiguously:(BOOL)arg6; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFRedundantTextIdentifier.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFRedundantTextIdentifier.h new file mode 100644 index 00000000..6480ad55 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFRedundantTextIdentifier.h @@ -0,0 +1,24 @@ +/* + * 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" + +@class MFRedundantContentMarkup; + +@interface MFRedundantTextIdentifier : NSObject +{ + MFRedundantContentMarkup *_redundantContentMarkup; +} + ++ (id)_htmlMarkerForContentType:(long long)arg1; ++ (void)initialize; +@property(readonly, nonatomic) MFRedundantContentMarkup *redundantContentMarkup; // @synthesize redundantContentMarkup=_redundantContentMarkup; +- (id)_attachmentContextsByURLforAttachmentsByURL:(id)arg1; +- (void)dealloc; +- (id)initWithMessage:(id)arg1 parsedMessage:(id)arg2 ancestorMessage:(id)arg3 ancestorParsedMessage:(id)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFRemoteAppendMessagesContext.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFRemoteAppendMessagesContext.h new file mode 100644 index 00000000..2b2ed4c5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFRemoteAppendMessagesContext.h @@ -0,0 +1,39 @@ +/* + * 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" + +@class NSArray, NSMutableArray, NSMutableDictionary; + +@interface MFRemoteAppendMessagesContext : NSObject +{ + BOOL someMsgsWentToServer; + BOOL _forMove; + unsigned int _destUidNext; + NSArray *_messages; + NSArray *_flagsToSet; + NSMutableArray *_missedMessages; + NSMutableArray *_addedMessageIDs; + NSMutableArray *_addedMessages; + NSMutableDictionary *_addedDocumentIDsByOld; + unsigned long long _unreadCountDelta; +} + +@property(nonatomic) BOOL forMove; // @synthesize forMove=_forMove; +@property(nonatomic) unsigned int destUidNext; // @synthesize destUidNext=_destUidNext; +@property(nonatomic) unsigned long long unreadCountDelta; // @synthesize unreadCountDelta=_unreadCountDelta; +@property(retain, nonatomic) NSMutableDictionary *addedDocumentIDsByOld; // @synthesize addedDocumentIDsByOld=_addedDocumentIDsByOld; +@property(retain, nonatomic) NSMutableArray *addedMessages; // @synthesize addedMessages=_addedMessages; +@property(retain, nonatomic) NSMutableArray *addedMessageIDs; // @synthesize addedMessageIDs=_addedMessageIDs; +@property(retain, nonatomic) NSMutableArray *missedMessages; // @synthesize missedMessages=_missedMessages; +@property(nonatomic) BOOL someMsgsWentToServer; // @synthesize someMsgsWentToServer; +@property(copy, nonatomic) NSArray *flagsToSet; // @synthesize flagsToSet=_flagsToSet; +@property(copy, nonatomic) NSArray *messages; // @synthesize messages=_messages; +- (id)description; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFRemoteStore.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFRemoteStore.h new file mode 100644 index 00000000..fcea7711 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFRemoteStore.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFRemoteStore : MFLibraryStore +{ +} + +- (void)undeleteMessagesWithDetails:(id)arg1; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (long long)_appendToServerWithContext:(id)arg1 error:(id *)arg2; +- (long long)_doAppend:(id)arg1 fromStore:(id)arg2 error:(id *)arg3; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; +- (long long)updateMessagesLocally:(id)arg1 missedMessages:(id)arg2 newMessageIDs:(id)arg3; +- (id)messageWithLibraryID:(long long)arg1 options:(unsigned int)arg2; +- (void)compactMessages:(id)arg1; +- (id)messagesForMailbox:(id)arg1 olderThanNumberOfDays:(long long)arg2; +- (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 isInitialImport:(BOOL)arg4 oldMessagesByNewMessage:(id)arg5 remoteIDs:(id)arg6 setFlags:(long long)arg7 clearFlags:(long long)arg8 messageFlagsForMessages:(id)arg9 copyFiles:(BOOL)arg10; +- (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 oldMessagesByNewMessage:(id)arg4; +- (void)enqueuedMessageChangesInExistingRequest; +- (void)didAddMessages; +- (void)willAddMessages; +- (id)_cachedHeaderDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedBodyDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedHeadersForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedBodyForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (BOOL)_shouldUpdateColorsAndAttachmentsAfterOpening; +- (id)URLString; +- (void)forceResync; +- (id)account; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFRemoteStoreAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFRemoteStoreAccount.h new file mode 100644 index 00000000..e7ed5bf4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFRemoteStoreAccount.h @@ -0,0 +1,87 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "MCRemoteStoreAccount.h" + +@class MCAuthScheme, NSArray, NSMutableArray, NSString, NSURL; + +@interface MFRemoteStoreAccount : MFMailAccount +{ + NSMutableArray *_mailboxesToSynchronize; + BOOL _addedEAToAccountFolder; +} + ++ (BOOL)cachePoliciesNeedUpdating; +@property BOOL addedEAToAccountFolder; // @synthesize addedEAToAccountFolder=_addedEAToAccountFolder; +- (void)presentOverQuotaAlert; +- (id)offlineCacheDirectory; +- (void)_checkForNewMessagesInStore:(id)arg1; +- (void)_synchronizeMailboxesSynchronously; +- (BOOL)_shouldSynchronizeMailbox:(id)arg1; +- (BOOL)_addMailboxesToSynchronize:(id)arg1; +- (void)_synchronizeMailboxes:(id)arg1; +- (void)didSynchronizeMailboxCachesAndFoundChanges:(BOOL)arg1; +- (BOOL)synchronizesDataWithServer; +- (BOOL)_synchronizeMailboxListHighPriority:(BOOL)arg1; +- (void)_synchronizeAccountWithServerHighPriority:(id)arg1; +- (void)resetNeedToSynchronizeMailboxCaches; +- (BOOL)needToSynchronizeMailboxCaches; +- (void)_startBackgroundSynchronizationHighPriority:(BOOL)arg1; +- (void)startBackgroundSynchronization; +- (void)considerSynchronizingNow; +- (BOOL)canBeSynchronized; +- (BOOL)_shouldCacheAggressively; +- (void)_writeMailboxCache; +- (BOOL)_canEmptyMessagesFromMailbox:(id)arg1; +- (void)_setSpecialMailbox:(id)arg1 forType:(int)arg2; +- (id)_specialMailboxWithType:(int)arg1 create:(BOOL)arg2 isLocal:(BOOL)arg3; +- (id)_specialMailboxWithType:(int)arg1 create:(BOOL)arg2; +- (id)_localMailboxRelativePathForType:(int)arg1 usingDisplayName:(id)arg2; +- (void)_renameLocalSpecialMailboxesToName:(id)arg1; +- (BOOL)_setStoreSpecialMailboxType:(int)arg1 onServer:(BOOL)arg2; +- (BOOL)_isMailboxTypeStoredLocally:(int)arg1; +@property BOOL storeTrashOnServer; +@property BOOL storeSentMessagesOnServer; +@property(readonly) BOOL storeJunkOnServerDefault; +@property BOOL storeJunkOnServer; +@property BOOL storeDraftsOnServer; +- (long long)_storedCachePolicy; +- (void)setCachePolicy:(long long)arg1 permanently:(BOOL)arg2; +- (long long)cachePolicy; +- (BOOL)canGoOffline; +- (void)fetchSynchronously; +- (id)_infoForMatchingURL:(id)arg1; +@property(copy) NSString *displayName; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; + +// Remaining properties +@property(readonly) NSString *accountTypeString; +@property(readonly) NSString *appleAuthenticationToken; +@property(readonly) NSString *applePersonID; +@property BOOL configureDynamically; +@property(copy) NSString *externalHostname; +@property(readonly) NSString *googleClientToken; +@property(copy) NSString *hostname; +@property(readonly, nonatomic) NSString *internetAccountsUID; +@property(copy) NSString *password; +@property long long portNumber; +@property(retain) MCAuthScheme *preferredAuthScheme; +@property(readonly) BOOL requiresAuthentication; +@property(readonly) NSString *saslProfileName; +@property long long securityLayerType; +@property(readonly) NSArray *standardPorts; +@property(readonly) NSArray *standardSSLPorts; +@property(readonly) NSURL *subscriptionURL; +@property(readonly) NSString *subscriptionURLLabel; +@property(readonly) NSString *uniqueId; +@property(copy) NSString *username; +@property BOOL usesSSL; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFRemoteStoreSizeEngine.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFRemoteStoreSizeEngine.h new file mode 100644 index 00000000..0ae80950 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFRemoteStoreSizeEngine.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSMutableDictionary, NSMutableSet; + +@interface MFRemoteStoreSizeEngine : MFSizeEngine +{ + NSMutableDictionary *_usageByMailbox; + NSMutableSet *_mailboxesToSize; +} + +- (void)_handleMailboxSizeChanged:(id)arg1; +- (void)_refetchListing:(id)arg1; +- (BOOL)_shouldStartWorkerThread; +- (BOOL)_prepareToRefresh; +- (id)usageForMailbox:(id)arg1; +- (void)dealloc; +- (id)initWithAccount:(id)arg1; +- (void)_mailboxBecameInvalid:(id)arg1; +- (void)_mailboxSizeChanged:(id)arg1; +- (void)_sizeChangedForMailbox:(id)arg1; +- (BOOL)_changeUsageInfo:(CDStruct_1dee9796 *)arg1 forMailbox:(id)arg2 refetchQuotas:(BOOL)arg3; +- (void)_getSizeForMailbox:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFRouterStore-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFRouterStore-Protocol.h new file mode 100644 index 00000000..8d6e1d4d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFRouterStore-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol MFRouterStore +- (void)cancel; +- (void)messagesWereRouted:(id)arg1; +- (void)messagesWillBeRouted:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSMTPAccount.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSMTPAccount.h new file mode 100644 index 00000000..c724f609 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSMTPAccount.h @@ -0,0 +1,50 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFSMTPConnection, NSTimer; + +@interface MFSMTPAccount : MFDeliveryAccount +{ + MFSMTPConnection *_connection; + id _smtpAccountLock; + NSTimer *_timer; + long long _lastTimerSetTime; +} + ++ (id)accountTypeString; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (void)releaseAllConnections; +- (void)_disconnect:(id)arg1; +- (void)_connectionExpired:(id)arg1; +- (void)_setTimer; +- (id)authSchemesForConnection:(id)arg1; +- (BOOL)canAuthenticateWithScheme:(id)arg1 connection:(id)arg2; +- (void)checkInConnection:(id)arg1; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (id)googleClientToken; +- (void)setPreferredAuthScheme:(id)arg1; +- (id)preferredAuthScheme; +@property BOOL shouldTryDefaultPorts; +- (void)setConfigureDynamically:(BOOL)arg1; +- (BOOL)configureDynamically; +- (BOOL)_portNumberIsADefaultPortNumber; +- (void *)keychainProtocol; +- (id)saslProfileName; +- (long long)defaultPortNumber; +- (id)standardSSLPorts; +- (id)standardPorts; +- (Class)delivererClass; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; +- (id)objectSpecifier; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSMTPConnection.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSMTPConnection.h new file mode 100644 index 00000000..20519265 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSMTPConnection.h @@ -0,0 +1,57 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCConnection.h" + +@class MFSMTPAccount, NSMutableArray, NSMutableData, NSString, _MFSMTPEnhancedStatusCode; + +@interface MFSMTPConnection : MCConnection +{ + double _originalSocketTimeout; + double _lastCommandTimestamp; + int _lastReplyCode; + id _lastResponse; + NSMutableArray *_serviceExtensions; + NSMutableData *_mdata; + NSString *_domainName; + long long _greeting; + _MFSMTPEnhancedStatusCode *_lastStatusCode; +} + +@property(readonly, nonatomic) _MFSMTPEnhancedStatusCode *lastStatusCode; // @synthesize lastStatusCode=_lastStatusCode; +- (long long)sendDatas:(id)arg1; +- (long long)rcptTo:(id)arg1; +- (long long)mailFrom:(id)arg1; +- (unsigned long long)maximumMessageBytes; +- (BOOL)_hasParameter:(id)arg1 forKeyword:(id)arg2; +- (id)_domainName; +- (long long)_sendHELOWithClientDomainName:(id)arg1; +- (long long)_sendEHLOWithClientDomainName:(id)arg1; +- (long long)_doHandshakeTryHELOIfEHLOFails:(BOOL)arg1; +- (long long)noop; +- (void)quit; +- (void)_readResponseRange:(struct _NSRange *)arg1 isContinuation:(char *)arg2; +- (long long)_getReply; +- (long long)_sendDataDontLogBytesInRange:(struct _NSRange)arg1; +- (long long)_sendCommand:(const char *)arg1 length:(unsigned long long)arg2 argument:(id)arg3 dontLogArgumentRange:(struct _NSRange)arg4 trailer:(unsigned char)arg5; +- (double)timeLastCommandWasSent; +- (id)lastResponse; +- (long long)_state; +- (id)_makeInvalidCredentialsError; +- (id)_getErrorFromFailedAuthentication; +- (BOOL)_authenticateWithAuthenticator:(id)arg1; +- (BOOL)authenticate; +- (id)authenticationMechanisms; +- (BOOL)_completeConnectionWithResult:(BOOL)arg1; +- (BOOL)_startTLS; +- (BOOL)connectDiscoveringBestSettings:(BOOL)arg1; +- (void)_setupConnection; +@property MFSMTPAccount *account; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSMTPDeliverer.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSMTPDeliverer.h new file mode 100644 index 00000000..e0299803 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSMTPDeliverer.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFSMTPDeliverer : MFMessageDeliverer +{ +} + +- (long long)deliverMessageHeaderData:(id)arg1 bodyData:(id)arg2 toRecipients:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSeenMessage.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSeenMessage.h new file mode 100644 index 00000000..51632c15 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSeenMessage.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSManagedObject.h" + +@interface MFSeenMessage : NSManagedObject +{ +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +- (void)setIsOnServer:(BOOL)arg1; +- (BOOL)isOnServer; +- (void)setShouldDeleteFromServer:(BOOL)arg1; +- (BOOL)shouldDeleteFromServer; +- (void)setMessageID:(id)arg1; +- (id)messageID; +- (void)setDateSeen:(id)arg1; +- (id)dateSeen; +- (void)setAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSeenMessagesManager.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSeenMessagesManager.h new file mode 100644 index 00000000..705bad91 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSeenMessagesManager.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSManagedObjectContext; + +@interface MFSeenMessagesManager : NSObject +{ + id _account; + NSManagedObjectContext *_managedObjectContext; +} + +@property(retain) NSManagedObjectContext *managedObjectContext; // @synthesize managedObjectContext=_managedObjectContext; +@property(retain) id account; // @synthesize account=_account; +- (void)_configureManagedObjectContext; +- (void)saveChanges; +- (void)removeMessagesNotOnServer:(id)arg1; +- (void)removeServerDeletedMessages; +- (id)messagesToBeDeletedFromServer; +- (id)seenMessages; +- (void)removeMessageIDs:(id)arg1; +- (id)addMessageID:(id)arg1 dateSeen:(id)arg2; +- (unsigned long long)countOfSeenMessages; +- (id)seenMessageForMessageID:(id)arg1; +- (id)_addAccountWithID:(id)arg1; +- (id)_accountForAccountID:(id)arg1; +- (void)dealloc; +- (id)initWithAccountID:(id)arg1 createAccount:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSizeEngine.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSizeEngine.h new file mode 100644 index 00000000..794798f7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSizeEngine.h @@ -0,0 +1,39 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityMonitor, MCQuotaUsage, MFMailAccount; + +@interface MFSizeEngine : NSObject +{ + MFMailAccount *_account; + MCQuotaUsage *_totalUsage; + MCActivityMonitor *_monitor; + BOOL _isActive; + long long _monitorAccessKey; +} + +- (void)stop; +- (void)start; +- (void)cancel; +- (void)refresh; +- (id)totalUsage; +- (id)account; +- (void)dealloc; +- (id)init; +- (id)initWithAccount:(id)arg1; +- (void)_postChangeNotificationWithUserInfo:(id)arg1; +- (BOOL)_shouldStartWorkerThread; +- (BOOL)_prepareToRefresh; +- (void)_runWorkerThread; +- (void)_workerThreadFinished:(id)arg1; +- (void)_startWorkerThreadIfNeeded; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSmartMailboxUnreadCountManager.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSmartMailboxUnreadCountManager.h new file mode 100644 index 00000000..d9cba31f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSmartMailboxUnreadCountManager.h @@ -0,0 +1,88 @@ +/* + * 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 "MCActivityTarget.h" + +@class NSConditionLock, NSMutableArray, NSMutableDictionary, NSMutableSet, NSOperationQueue, _MFNonContentSmartMailboxUnreadCountManager; + +@interface MFSmartMailboxUnreadCountManager : NSObject +{ + NSMutableArray *_smartMailboxes; + NSMutableDictionary *_smartMailboxesOpenDates; + BOOL _updateNeededAfterOpeningMailboxes; + NSMutableDictionary *_unreadMessagesBySmartMailbox; + NSMutableDictionary *_smartMailboxesUpdates; + NSConditionLock *_watchedMessagesLock; + NSMutableDictionary *_watchedMessages; + NSMutableDictionary *_messagesNeedingToBeIndexed; + NSConditionLock *_isUpdatingStateLock; + NSConditionLock *_isDirtyStateLock; + NSConditionLock *_obsoleteMessageKeysLock; + NSMutableSet *_obsoleteMessageKeys; + _MFNonContentSmartMailboxUnreadCountManager *_nonContentSmartMailboxUnreadCountManager; + NSOperationQueue *_spotlightQueue; + BOOL _suspendSmartMailboxUnreadCountCalculations; + double _lastModificationToUpdate; + long long _unreadQueryCount; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (void)initialize; +@property long long unreadQueryCount; // @synthesize unreadQueryCount=_unreadQueryCount; +@property BOOL suspendSmartMailboxUnreadCountCalculations; // @synthesize suspendSmartMailboxUnreadCountCalculations=_suspendSmartMailboxUnreadCountCalculations; +@property double lastModificationToUpdate; // @synthesize lastModificationToUpdate=_lastModificationToUpdate; +- (void)_updateObsoleteMessageKeys; +- (void)_addObsoleteMessageKeys:(id)arg1; +- (id)_messageKeysWaitingToBeIndexes; +- (BOOL)_isMessageIndexed:(id)arg1; +- (void)_addMessagesWaitingToBeIndexed:(id)arg1; +- (void)_updateSmartMailboxUnreadCountsByRemovingMessagesWithKeys:(id)arg1; +- (void)_updateSmartMailboxUnreadCountsWithMessages:(id)arg1; +- (id)_filterMessages:(id)arg1 matchingCriterion:(id)arg2; +- (void)_updateUnreadCountsWithWatchedMessages; +- (void)_performUpdateNow; +- (void)_performDelayedUpdate:(id)arg1; +- (void)_watchMessages:(id)arg1 withUnreadState:(BOOL)arg2 onDate:(id)arg3; +- (unsigned long long)_uniqueCountOfMessages:(id)arg1; +- (void)_setUnreadMessages:(id)arg1 forSmartMailbox:(id)arg2 onDate:(id)arg3; +- (void)_searchedMailboxPreferencesChanged:(id)arg1; +- (void)_smartMailboxesDidSaveToDisk:(id)arg1; +- (void)_smartMailboxesWillSaveToDisk:(id)arg1; +- (void)_storeDidOpen:(id)arg1; +- (void)_storeWillOpen:(id)arg1; +- (void)_mailboxesDeleted:(id)arg1; +- (void)_messagesCompacted:(id)arg1; +- (void)_messageFlagsChanged:(id)arg1; +- (void)_messagesAdded:(id)arg1; +- (void)_stopObservingNotifications; +- (void)_startObservingNotifications; +- (BOOL)_isObservingSmartMailbox:(id)arg1; +- (void)_setSmartMailboxesWithSpotlightCriterion:(id)arg1; +- (id)_pathForMessage:(id)arg1; +- (void)_decomposeMessageKey:(id)arg1 intoRowID:(id *)arg2 messageIDHeader:(id *)arg3; +- (id)_keyForMessage:(id)arg1; +- (id)_keyForMailbox:(id)arg1; +- (void)_setIsDirty:(BOOL)arg1; +- (void)_setIsUpdating:(BOOL)arg1; +- (void)smartMailbox:(id)arg1 willReturnDictionaryRepresentation:(id)arg2; +- (void)smartMailbox:(id)arg1 didInitializeWithDictionaryRepresentation:(id)arg2; +- (void)setSmartMailboxes:(id)arg1; +- (void)updateMailboxesUnreadCountUsingSpotlight:(id)arg1 useTotalCount:(BOOL)arg2; +- (void)_libraryMessagesFlagsChanged:(id)arg1; +- (void)_updateSmartMailboxUnreadCountUsingSpotlight:(id)arg1 useTotalCount:(BOOL)arg2; +- (BOOL)_canCreateQuery; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSnippetManager.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSnippetManager.h new file mode 100644 index 00000000..d2c463f1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSnippetManager.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class MCInvocationQueue, MFQuoteParser, NSMutableSet; + +@interface MFSnippetManager : NSObject +{ + MCInvocationQueue *_snippetQueue; + NSMutableSet *_messagesNeedingSnippets; + NSMutableSet *_watchList; + MFQuoteParser *_quoteParser; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)generateSnippetFromHTML:(id)arg1 stripQuoted:(BOOL)arg2; +- (void)_calculateSnippetForMessages; +- (id)snippetForMessage:(id)arg1; +- (void)snippetDataIsAvailableForMessage:(id)arg1; +- (void)_scheduleSnippetCalculationForMessages:(id)arg1; +- (void)scheduleSnippetCalculation; +- (id)fetchSnippetsForMessages:(id)arg1; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSpecialMailbox.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSpecialMailbox.h new file mode 100644 index 00000000..7eb3f26a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSpecialMailbox.h @@ -0,0 +1,59 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFSpecialMailbox : MFMailbox +{ +} + ++ (id)visibleFlagMailboxes; ++ (void)updateVisibleFlagMailboxes; ++ (id)flagMailboxes; ++ (id)VIPSendersMailbox; ++ (id)flagsMailbox; ++ (id)archiveMailbox; ++ (id)trashMailbox; ++ (id)outboxMailbox; ++ (id)junkMailbox; ++ (id)draftsMailbox; ++ (id)sentMessagesMailbox; ++ (id)inboxMailbox; ++ (id)specialMailboxForMailboxType:(int)arg1; ++ (id)specialMailboxWithIdentifier:(id)arg1; ++ (id)appleScriptNameForMailboxType:(int)arg1; +- (void)_updateDontIndexFlagFile; +- (void)saveUserInfo; +- (id)_loadUserInfo; +- (id)_viewerAttributesKey; +- (id)tildeAbbreviatedPath; +- (void)setAllCriteriaMustBeSatisfied:(BOOL)arg1; +- (BOOL)allCriteriaMustBeSatisfied; +- (void)setCriteria:(id)arg1; +- (id)criteria; +- (unsigned long long)displayCount; +- (long long)indexToInsertChildMailbox:(id)arg1; +- (unsigned long long)indexOfChild:(id)arg1; +- (id)sortedChildAtIndex:(unsigned long long)arg1 hidingGmail:(BOOL)arg2; +- (unsigned long long)numberOfSortedChildrenHidingGmail:(BOOL)arg1; +- (unsigned long long)numberOfVisibleChildrenHidingGmail:(BOOL)arg1; +- (unsigned long long)numberOfChildren; +- (id)visibleChildAtIndex:(unsigned long long)arg1; +- (id)childAtIndex:(unsigned long long)arg1; +- (id)mutableCopyOfChildrenIncludingHiddenChildren:(BOOL)arg1 hidingGmail:(BOOL)arg2; +- (id)childEnumeratorIncludingHiddenChildren:(BOOL)arg1; +- (id)children; +- (id)account; +- (id)name; +- (id)displayName; +- (id)criterion; +- (id)_initWithName:(id)arg1 type:(int)arg2 uuid:(id)arg3; +- (id)messages; +- (id)objectSpecifier; +- (id)appleScriptKey; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSpotlightManager.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSpotlightManager.h new file mode 100644 index 00000000..43d92701 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSpotlightManager.h @@ -0,0 +1,47 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCInvocationQueue, NSConditionLock, NSMutableDictionary, NSMutableSet; + +@interface MFSpotlightManager : NSObject +{ + NSConditionLock *_attachmentIndexingLock; + NSMutableSet *_messsagesScheduledForAttachmentIndexing; + MCInvocationQueue *_indexQueue; + NSMutableDictionary *_queryObserverDictionary; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)acquireQueryObserver:(long long)arg1; +- (void)unregisterQueryObserver:(long long)arg1; +- (long long)registerQueryObserver:(id)arg1; +- (void)immediatelyIndexAttachmentsForMessage:(id)arg1; +- (void)immediatelyIndexAttachmentsForMessages:(id)arg1; +- (void)indexAttachmentsForMessage:(id)arg1; +- (void)indexAttachmentsForMessages:(id)arg1; +- (void)_indexAttachmentsForScheduledMessages; +- (void)_triggerNowAttachmentIndexing; +- (void)_triggerDelayedAttachmentIndexing; +- (void)_scheduleAttachmentIndexingForMessages:(id)arg1; +- (void)_synchronouslyIndexAttachmentsForMessages:(id)arg1; +- (void)_synchronouslyIndexAttachmentsForMessage:(id)arg1; +- (BOOL)_shouldIndexAttachmentsForMessage:(id)arg1; +- (void)setAttributeForFileAtPath:(id)arg1 name:(id)arg2 value:(id)arg3; +- (void)_setAttributeForFileAtPath:(id)arg1 name:(id)arg2 value:(id)arg3; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSpotlightResultCollector.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSpotlightResultCollector.h new file mode 100644 index 00000000..4f56079d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSpotlightResultCollector.h @@ -0,0 +1,48 @@ +/* + * 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" + +@class MFMessageCriterion, NSArray, NSString; + +@interface MFSpotlightResultCollector : NSObject +{ + struct __MDQuery *_query; + BOOL _queryIsCancelled; + BOOL _async; + BOOL _checkWhereFromsPaths; + unsigned int _options; + MFMessageCriterion *_criterion; + NSString *_expression; + id _target; + long long _nextIndexToProcess; + double _queryStartTime; + double _timeSpentInCallback; + unsigned long long _totalResultsCount; + double _firstCallbackTime; + NSArray *_excludedMailboxURLs; +} + +@property(retain, nonatomic) NSArray *excludedMailboxURLs; // @synthesize excludedMailboxURLs=_excludedMailboxURLs; +@property(nonatomic) BOOL checkWhereFromsPaths; // @synthesize checkWhereFromsPaths=_checkWhereFromsPaths; +@property(nonatomic) double firstCallbackTime; // @synthesize firstCallbackTime=_firstCallbackTime; +@property(nonatomic) unsigned long long totalResultsCount; // @synthesize totalResultsCount=_totalResultsCount; +@property(nonatomic) double timeSpentInCallback; // @synthesize timeSpentInCallback=_timeSpentInCallback; +@property(nonatomic) double queryStartTime; // @synthesize queryStartTime=_queryStartTime; +@property(nonatomic) BOOL async; // @synthesize async=_async; +@property(nonatomic) BOOL queryIsCancelled; // @synthesize queryIsCancelled=_queryIsCancelled; +@property(nonatomic) long long nextIndexToProcess; // @synthesize nextIndexToProcess=_nextIndexToProcess; +@property(nonatomic) unsigned int options; // @synthesize options=_options; +@property(retain, nonatomic) id target; // @synthesize target=_target; +@property(retain, nonatomic) NSString *expression; // @synthesize expression=_expression; +@property(retain, nonatomic) MFMessageCriterion *criterion; // @synthesize criterion=_criterion; +- (void)dealloc; +- (struct __MDQuery *)query; +- (id)initWithCriterion:(id)arg1 target:(id)arg2 query:(struct __MDQuery *)arg3 expression:(id)arg4; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSqliteHandle.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSqliteHandle.h new file mode 100644 index 00000000..b1c5f9b5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSqliteHandle.h @@ -0,0 +1,32 @@ +/* + * 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 "NSCacheDelegate.h" + +@class NSArray; + +@interface MFSqliteHandle : NSObject +{ + BOOL _needsUnreadCountUpdate; + struct sqlite3 *_db; + double _busyTimer; + NSArray *_searchStringArray; +} + ++ (id)newHandleIsWriter:(BOOL)arg1; +@property(nonatomic) BOOL needsUnreadCountUpdate; // @synthesize needsUnreadCountUpdate=_needsUnreadCountUpdate; +@property(retain, nonatomic) NSArray *searchStringArray; // @synthesize searchStringArray=_searchStringArray; +@property(nonatomic) double busyTimer; // @synthesize busyTimer=_busyTimer; +@property(nonatomic) struct sqlite3 *db; // @synthesize db=_db; +- (id)newPreparedStatementWithPattern:(const char *)arg1; +- (void)dealloc; +- (int)close; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFStringUniquer.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFStringUniquer.h new file mode 100644 index 00000000..b47242a2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFStringUniquer.h @@ -0,0 +1,23 @@ +/* + * 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" + +@class NSMapTable; + +@interface MFStringUniquer : NSObject +{ + NSMapTable *_stringsTable; +} + +- (void)dealloc; +- (id)description; +- (void)setUniquedString:(id)arg1 forIndex:(long long)arg2; +- (id)copyUniquedStringForIndex:(long long)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFSyncedFile.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFSyncedFile.h new file mode 100644 index 00000000..3df783be --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFSyncedFile.h @@ -0,0 +1,71 @@ +/* + * 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 "NSFilePresenter.h" + +@class NSOperationQueue, NSURL; + +@interface MFSyncedFile : NSObject +{ + NSURL *_cloudURL; + id _cloudURLLock; + NSURL *_url; + id _conflictResolver; + unsigned long long _syncState; +} + ++ (id)_metadataURL; ++ (id)_metadata; ++ (id)_currentiCloudAccount; ++ (void)stopPersistingSyncedFileForURL:(id)arg1; ++ (id)syncedFileForURL:(id)arg1 withConflictResolver:(id)arg2; ++ (void)initialize; +@property unsigned long long syncState; // @synthesize syncState=_syncState; +@property(copy) id conflictResolver; // @synthesize conflictResolver=_conflictResolver; +@property(readonly) NSURL *URL; // @synthesize URL=_url; +- (void)_handleIdentityChange:(id)arg1; +- (void)_resolveConflicts; +- (void)_setCloudURL; +@property(readonly) NSURL *cloudURL; +- (id)_ubiquitousFileName; +- (id)_ubiquitousFileURL; +- (BOOL)_fileExistsInCloud; +- (BOOL)_writeDataToCloud:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (BOOL)_syncWithCloudPostNotification:(BOOL)arg1 error:(id *)arg2; +- (BOOL)synchronouslyWritePlist:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (id)synchronouslyReadPlistWithOptions:(unsigned long long)arg1 error:(id *)arg2; +- (BOOL)_deleteFileLocallyPostingNotification:(BOOL)arg1 error:(id *)arg2; +- (void)deleteFile; +- (id)_readPlistWithOptions:(unsigned long long)arg1 error:(id *)arg2; +- (id)readPlistWithOptions:(unsigned long long)arg1; +- (void)writePlist:(id)arg1 options:(unsigned long long)arg2; +- (id)readDataWithOptions:(unsigned long long)arg1; +- (BOOL)_writeDataLocally:(id)arg1 options:(unsigned long long)arg2 setMetadata:(BOOL)arg3 postNotification:(BOOL)arg4 error:(id *)arg5; +- (BOOL)_writeDataAfterResolvingConflict:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (BOOL)_writeData:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (void)writeData:(id)arg1 options:(unsigned long long)arg2; +- (void)_clearMetadata; +- (BOOL)_signedInState; +- (void)_setiCloudAccount; +- (id)_iCloudAccount; +- (void)presentedItemDidResolveConflictVersion:(id)arg1; +- (void)presentedItemDidMoveToURL:(id)arg1; +- (void)presentedItemDidGainVersion:(id)arg1; +- (void)presentedItemDidChange; +- (void)accommodatePresentedItemDeletionWithCompletionHandler:(id)arg1; +@property(readonly) NSOperationQueue *presentedItemOperationQueue; +@property(readonly) NSURL *presentedItemURL; +- (void)dealloc; +- (id)init; +- (id)initWithURL:(id)arg1 withConflictResolver:(id)arg2; + +// Remaining properties +@property(readonly) NSURL *primaryPresentedItemURL; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFTOCMessage.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFTOCMessage.h new file mode 100644 index 00000000..635a616a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFTOCMessage.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@class NSString; + +@interface MFTOCMessage : MCMessage +{ + struct _NSRange _mboxRange; + NSString *_attachments; + NSString *_messageID; + BOOL _isInIncomingMail; +} + ++ (id)messageIDForSender:(id)arg1 subject:(id)arg2 dateAsTimeInterval:(double)arg3; +@property(nonatomic) BOOL isInIncomingMail; // @synthesize isInIncomingMail=_isInIncomingMail; +- (id)remoteID; +- (id)description; +- (unsigned long long)messageSize; +- (id)messageID; +- (id)attachment; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (void)setMboxRange:(struct _NSRange)arg1; +- (struct _NSRange)mboxRange; +- (id)mailbox; +- (id)account; +- (id)cachedData; +- (unsigned long long)loadCachedInfoFromBytes:(const char *)arg1 length:(unsigned long long)arg2 isDirty:(char *)arg3 usingUniqueStrings:(id)arg4; +- (void)dealloc; +- (id)initWithMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFTableOfContents.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFTableOfContents.h new file mode 100644 index 00000000..d3f833dc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFTableOfContents.h @@ -0,0 +1,53 @@ +/* + * 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" + +@class NSData, NSMutableArray, NSMutableDictionary, NSString; + +@interface MFTableOfContents : NSObject +{ + BOOL _isValid; + NSMutableArray *_messages; + NSString *_path; + NSData *_data; + unsigned long long _pos; + CDStruct_c4d47a41 _header; + NSMutableDictionary *_messageIDMap; + BOOL _isDirty; +} + +- (void)sort; +- (BOOL)isSortedByDateReceived; +- (BOOL)isSortedAscending; +- (void)setSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (id)sortOrder; +- (id)messageForMessageID:(id)arg1; +- (BOOL)flushToFile; +- (id)description; +- (void)addMessages:(id)arg1; +- (void)addMessage:(id)arg1; +- (void)_addMessageToMap:(id)arg1; +- (void)removeMessage:(id)arg1; +- (id)messages; +- (int)count; +- (void)rebuildCacheFromMessages:(id)arg1; +- (id)storePath; +- (void)forceValidityToYES; +- (BOOL)isValid; +- (BOOL)isDirty; +- (void)dealloc; +- (id)initWithPath:(id)arg1; +- (id)init; +- (void)setTimeStamp:(int)arg1; +- (id)appendCachedDataToData:(id)arg1; +- (void)appendHeader:(CDStruct_c4d47a41)arg1 toData:(id)arg2; +- (BOOL)loadCacheFromFileUsingUniqueStrings:(id)arg1 messageStore:(id)arg2; +- (BOOL)loadCacheFromFileUsingUniqueStrings:(id)arg1; +- (void)_checkHeader; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFUIMailbox-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFUIMailbox-Protocol.h new file mode 100644 index 00000000..2fb7c4ad --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFUIMailbox-Protocol.h @@ -0,0 +1,26 @@ +/* + * 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" + +@protocol MFUIMailbox +@property int type; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (BOOL)isPlaceholder; +- (id)accountURLString; +- (id)account; +- (BOOL)isSmartMailbox; +- (BOOL)isStore; +- (id)children; +- (BOOL)hasChildren; +- (unsigned long long)numberOfChildren; +- (unsigned long long)displayCount; +- (BOOL)isContainer; +- (id)extendedDisplayName; +- (id)displayName; +- (id)persistentIdentifier; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFUnreadCountQueryObserver.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFUnreadCountQueryObserver.h new file mode 100644 index 00000000..d1b56fab --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFUnreadCountQueryObserver.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class MFMailbox, NSMutableDictionary; + +@interface MFUnreadCountQueryObserver : NSObject +{ + struct __MDQuery *_query; + MFMailbox *_mailbox; + NSMutableDictionary *_seenIDs; + NSMutableDictionary *_messageIDsFromAttachments; + BOOL _queryIsCancelled; + BOOL _useTotalCount; + BOOL _checkWhereFromsPaths; + long long _nextIndexToProcess; +} + +@property(nonatomic) BOOL checkWhereFromsPaths; // @synthesize checkWhereFromsPaths=_checkWhereFromsPaths; +@property BOOL useTotalCount; // @synthesize useTotalCount=_useTotalCount; +@property long long nextIndexToProcess; // @synthesize nextIndexToProcess=_nextIndexToProcess; +@property BOOL queryIsCancelled; // @synthesize queryIsCancelled=_queryIsCancelled; +@property(readonly, nonatomic) NSMutableDictionary *messageIDsFromAttachments; +@property(readonly, nonatomic) NSMutableDictionary *seenIDs; +- (void)clearMailbox; +- (id)mailbox; +- (struct __MDQuery *)query; +- (void)dealloc; +- (id)initWithMailbox:(id)arg1 query:(struct __MDQuery *)arg2 useTotalCount:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFUsageCounter.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFUsageCounter.h new file mode 100644 index 00000000..95d515c2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFUsageCounter.h @@ -0,0 +1,39 @@ +/* + * 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" + +@class NSCalendar, NSDate, NSMutableDictionary; + +@interface MFUsageCounter : NSObject +{ + NSMutableDictionary *_counts; + NSCalendar *_gregorianCalendar; + NSDate *_referenceDate; + BOOL _isDirty; +} + ++ (void)setGatherJunkMailUsageCounts:(BOOL)arg1; ++ (BOOL)gatherJunkMailUsageCounts; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)incrementCountForKey:(id)arg1 byCount:(unsigned long long)arg2; +- (void)incrementCountForKey:(id)arg1; +- (void)removeCountForKey:(id)arg1; +- (unsigned long long)countForKey:(id)arg1 includeToday:(BOOL)arg2; +- (unsigned long long)countForKey:(id)arg1; +- (long long)numberOfDaysAvailableForKey:(id)arg1; +- (void)saveDefaults; +- (id)_dictionaryForKey:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFVIPSendersController.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFVIPSendersController.h new file mode 100644 index 00000000..f971c884 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFVIPSendersController.h @@ -0,0 +1,57 @@ +/* + * 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" + +@class NSMutableArray, NSOperationQueue, NSSet, NSUbiquitousKeyValueStore; + +@interface MFVIPSendersController : NSObject +{ + NSMutableArray *_VIPSendersMailboxes; + NSUbiquitousKeyValueStore *_store; + NSOperationQueue *_operationQueue; + NSSet *_VIPSendersAddresses; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain) NSSet *VIPSendersAddresses; // @synthesize VIPSendersAddresses=_VIPSendersAddresses; +@property(readonly) NSOperationQueue *operationQueue; // @synthesize operationQueue=_operationQueue; +@property(readonly) NSUbiquitousKeyValueStore *store; // @synthesize store=_store; +- (id)_keyForVIP:(id)arg1; +- (void)_mergeVIPs; +- (void)_updateLocalWithCloud:(id)arg1 refresh:(BOOL)arg2; +- (void)_storeChanged:(id)arg1; +- (void)_updateCloudWithLocal:(id)arg1; +- (void)_addressBookDidChange:(id)arg1; +- (id)addressesForVIPSenders; +- (BOOL)isVIPForPerson:(id)arg1 orAddress:(id)arg2; +- (void)removeVIPSenderWithAddress:(id)arg1; +- (void)removeVIPSenderWithMailboxes:(id)arg1; +- (void)addNewVIPSenderWithAddress:(id)arg1 name:(id)arg2; +- (id)VIPSendersMailboxes; +- (id)_vipsPlistPath; +- (void)_updateMailboxesAndPostNotificationsOnMainThread; +- (void)_readVIPSenders; +- (void)_saveVIPSendersAndUpdateMailboxes:(BOOL)arg1; +- (void)save; +- (id)_addressBookRecordsForFirstName:(id)arg1 lastName:(id)arg2 withAddressBook:(id)arg3; +- (id)_ABPersonForName:(id)arg1 withAddressBook:(id)arg2; +- (id)_ABPersonForName:(id)arg1 emailAddresses:(id)arg2 withAddressBook:(id)arg3; +- (id)_combineAddresses:(id)arg1 withAddresses:(id)arg2; +- (BOOL)_canCreateNewVIP; +- (id)_mailboxWithName:(id)arg1 addresses:(id)arg2 uuid:(id)arg3; +- (id)_addressesForMailboxCriteria:(id)arg1; +- (id)_mailboxCriteriaForAddresses:(id)arg1; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MFWebMessageDocument.h b/MailHeaders/Mavericks_10.9.5/MailFW/MFWebMessageDocument.h new file mode 100644 index 00000000..f4e935cc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MFWebMessageDocument.h @@ -0,0 +1,68 @@ +/* + * 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" + +@class MCMimeBody, MCMimePart, MCParsedMessage, NSDictionary, NSMutableDictionary, NSURL; + +@interface MFWebMessageDocument : NSObject +{ + NSMutableDictionary *_attachmentsByURL; + NSMutableDictionary *_backgroundImageAttachments; + NSDictionary *_mimePartsByURL; + NSMutableDictionary *_headerAttachmentsByURL; + MCMimeBody *_mimeBody; + MCMimePart *_htmlPart; + MCParsedMessage *_parsedMessage; + int _uniqueId; + BOOL _shouldDownloadRemoteURLs; + BOOL _containsRemoteContent; + BOOL _messageIsFromMicrosoft; + BOOL _collapseQuotedBlocks; + NSURL *_baseURL; +} + ++ (void)documentWillClose:(id)arg1; ++ (id)documentWithUniqueIdentifier:(unsigned long long)arg1; ++ (void)document:(id *)arg1 attachment:(id *)arg2 forURL:(id)arg3; ++ (void)document:(id *)arg1 attachmentController:(id *)arg2 mimePart:(id *)arg3 forURL:(id)arg4; ++ (void)document:(id *)arg1 attachmentController:(id *)arg2 forURL:(id)arg3; ++ (id)invalidBaseURL; ++ (id)openDocuments; ++ (void)initialize; +@property(retain) NSURL *baseURL; // @synthesize baseURL=_baseURL; +- (BOOL)collapseQuotedBlocks; +- (void)setCollapseQuotedBlocks:(BOOL)arg1; +- (BOOL)messageIsFromMicrosoft; +- (void)setMessageIsFromMicrosoft:(BOOL)arg1; +- (BOOL)containsRemoteContent; +- (void)setContainsRemoteContent:(BOOL)arg1; +- (BOOL)shouldDownloadRemoteURLs; +- (void)setShouldDownloadRemoteURLs:(BOOL)arg1; +- (id)parsedMessageFromRange:(id)arg1; +- (id)parsedMessage; +- (unsigned long long)uniqueIdentifier; +- (id)mimeBody; +- (void)clearAttachmentsByURL; +- (id)attachmentsByURL; +- (id)attachments; +- (BOOL)hasAttachments; +- (id)userAttachments; +- (BOOL)hasAttachmentViewController:(id)arg1; +- (void)removeAttachmentForURL:(id)arg1; +- (void)addAttachments:(id)arg1; +- (void)addAttachment:(id)arg1 forURL:(id)arg2; +- (void)addAttachment:(id)arg1 forURL:(id)arg2 inHeaderView:(BOOL)arg3; +- (id)attachmentForURL:(id)arg1; +- (id)attachmentForURL:(id)arg1 inHeaderView:(BOOL)arg2; +- (id)mimePartForURL:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initForDisplay:(BOOL)arg1; +- (id)initWithMimeBody:(id)arg1 forDisplay:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MailFramework.h b/MailHeaders/Mavericks_10.9.5/MailFW/MailFramework.h new file mode 100644 index 00000000..9de48670 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MailFramework.h @@ -0,0 +1,19 @@ +/* + * 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" + +@interface MailFramework : NSObject +{ +} + ++ (void)setUserAgent:(id)arg1; ++ (id)userAgent; ++ (id)frameworkVersion; ++ (id)bundle; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/MailMigratorService-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/MailMigratorService-Protocol.h new file mode 100644 index 00000000..9f3477aa --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/MailMigratorService-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MailMigratorService +- (void)migrateAppleScriptFiles; +- (void)migrateMailDownloadsFiles; +- (void)fixMailDownloadsMigrationKey; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSAppleEventDescriptor-MessageRuleAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSAppleEventDescriptor-MessageRuleAdditions.h new file mode 100644 index 00000000..139ec90b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSAppleEventDescriptor-MessageRuleAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAppleEventDescriptor.h" + +@interface NSAppleEventDescriptor (MessageRuleAdditions) +- (BOOL)isSendToSelfEvent; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSAppleScript-MessageRuleAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSAppleScript-MessageRuleAdditions.h new file mode 100644 index 00000000..cf9d6c7a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSAppleScript-MessageRuleAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAppleScript.h" + +@interface NSAppleScript (MessageRuleAdditions) ++ (id)appleScriptLock; ++ (id)appleEventDescriptionWithEventClass:(unsigned int)arg1 eventID:(unsigned int)arg2 andArguments:(id)arg3; ++ (id)appleEventDescriptionWithName:(id)arg1 andArguments:(id)arg2; ++ (id)_newScriptAtPath:(id)arg1 errorInfo:(id *)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSArray-AppleScriptConveniences.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSArray-AppleScriptConveniences.h new file mode 100644 index 00000000..dcea4cdb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSArray-AppleScriptConveniences.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (AppleScriptConveniences) +- (id)arrayByEvaluatingObjectSpecifiers; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSCacheDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSCacheDelegate-Protocol.h new file mode 100644 index 00000000..fd487731 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSCacheDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSCacheDelegate + +@optional +- (void)cache:(id)arg1 willEvictObject:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSCoding-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSCoding-Protocol.h new file mode 100644 index 00000000..7bda0254 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSCoding-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCoding +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSCopying-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSCopying-Protocol.h new file mode 100644 index 00000000..3275f717 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCopying +- (id)copyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSDate-toc_extension.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSDate-toc_extension.h new file mode 100644 index 00000000..f867983f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSDate-toc_extension.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSDate.h" + +@interface NSDate (toc_extension) +- (int)tocSillyDateInt; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSDictionary-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSDictionary-MailAdditions.h new file mode 100644 index 00000000..4c205a8e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSDictionary-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSDictionary.h" + +@interface NSDictionary (MailAdditions) +- (id)mutableSomewhatDeepCopy; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSDictionary-MailFoundationAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSDictionary-MailFoundationAdditions.h new file mode 100644 index 00000000..21e081e9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSDictionary-MailFoundationAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSDictionary.h" + +@interface NSDictionary (MailFoundationAdditions) +- (id)objectForIntegerKey:(long long)arg1; +- (struct CGSize)sizeForKey:(id)arg1; +- (double)cgfloatForKey:(id)arg1; +- (float)floatForKey:(id)arg1; +- (long long)integerForKey:(id)arg1; +- (BOOL)boolForKey:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSError-MFPOPConnectionAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSError-MFPOPConnectionAdditions.h new file mode 100644 index 00000000..5e1838ad --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSError-MFPOPConnectionAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSError.h" + +@interface NSError (MFPOPConnectionAdditions) +- (long long)MFPOPResponseCode; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSFileManager-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSFileManager-MailAdditions.h new file mode 100644 index 00000000..7bdd3afc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSFileManager-MailAdditions.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileManager.h" + +@interface NSFileManager (MailAdditions) +- (id)mf_subpathsOfDirectoryAtPath:(id)arg1; +- (id)uniquePathInDirectory:(id)arg1 withName:(id)arg2 extension:(id)arg3; +- (id)pathByUniquingPath:(id)arg1; +- (id)localizedFullPath:(id)arg1; +- (id)pathByResolvingAliasesInPath:(id)arg1; +- (void)deleteFilesInSortedArray:(id)arg1 matchingPrefix:(id)arg2 fromDirectory:(id)arg3; +- (id)pathsAtDirectory:(id)arg1 beginningWithString:(id)arg2; +- (BOOL)canWriteToFileAtPath:(id)arg1; +- (BOOL)canWriteToDirectoryAtPath:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSFileManagerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSFileManagerDelegate-Protocol.h new file mode 100644 index 00000000..b1fc717f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSFileManagerDelegate-Protocol.h @@ -0,0 +1,29 @@ +/* + * 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" + +@protocol NSFileManagerDelegate + +@optional +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtURL:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtPath:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 linkingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 linkingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldLinkItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldLinkItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 movingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 movingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldMoveItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldMoveItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 copyingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 copyingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldCopyItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldCopyItemAtPath:(id)arg2 toPath:(id)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSFilePresenter-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSFilePresenter-Protocol.h new file mode 100644 index 00000000..a38528c2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSFilePresenter-Protocol.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class NSOperationQueue, NSURL; + +@protocol NSFilePresenter +@property(readonly) NSOperationQueue *presentedItemOperationQueue; +@property(readonly) NSURL *presentedItemURL; + +@optional +@property(readonly) NSURL *primaryPresentedItemURL; +- (void)presentedSubitemAtURL:(id)arg1 didResolveConflictVersion:(id)arg2; +- (void)presentedSubitemAtURL:(id)arg1 didLoseVersion:(id)arg2; +- (void)presentedSubitemAtURL:(id)arg1 didGainVersion:(id)arg2; +- (void)presentedSubitemDidChangeAtURL:(id)arg1; +- (void)presentedSubitemAtURL:(id)arg1 didMoveToURL:(id)arg2; +- (void)presentedSubitemDidAppearAtURL:(id)arg1; +- (void)accommodatePresentedSubitemDeletionAtURL:(id)arg1 completionHandler:(id)arg2; +- (void)presentedItemDidResolveConflictVersion:(id)arg1; +- (void)presentedItemDidLoseVersion:(id)arg1; +- (void)presentedItemDidGainVersion:(id)arg1; +- (void)presentedItemDidChange; +- (void)presentedItemDidMoveToURL:(id)arg1; +- (void)accommodatePresentedItemDeletionWithCompletionHandler:(id)arg1; +- (void)savePresentedItemChangesWithCompletionHandler:(id)arg1; +- (void)relinquishPresentedItemToWriter:(id)arg1; +- (void)relinquishPresentedItemToReader:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSFileWrapper-HFSExtensions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSFileWrapper-HFSExtensions.h new file mode 100644 index 00000000..ae87590d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSFileWrapper-HFSExtensions.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@class NSString; + +@interface NSFileWrapper (HFSExtensions) ++ (void)loadMessageExtensions; +- (BOOL)_Message_updateFromPath:(id)arg1 checkOnly:(BOOL)arg2 exists:(char *)arg3; +- (void)_Message_setPreferredFilename:(id)arg1; +- (id)_Message_initWithURL:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (BOOL)_Message_writeToURL:(id)arg1 options:(unsigned long long)arg2 originalContentsURL:(id)arg3 error:(id *)arg4; +@property(retain) NSString *savedPath; +- (id)remoteAccessMimeType; +@property BOOL shouldBeViewedInline; +- (BOOL)couldConfuseWindowsClients; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSFileWrapper-UniquePaths.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSFileWrapper-UniquePaths.h new file mode 100644 index 00000000..1c242460 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSFileWrapper-UniquePaths.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (UniquePaths) ++ (id)uniquedPathForFile:(id)arg1 inDirectory:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSKeyedUnarchiver-MailFoundationAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSKeyedUnarchiver-MailFoundationAdditions.h new file mode 100644 index 00000000..35676627 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSKeyedUnarchiver-MailFoundationAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSKeyedUnarchiver.h" + +@interface NSKeyedUnarchiver (MailFoundationAdditions) ++ (id)safeUnarchiveObjectWithData:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSKeyedUnarchiverDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSKeyedUnarchiverDelegate-Protocol.h new file mode 100644 index 00000000..ae7b1b93 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSKeyedUnarchiverDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol NSKeyedUnarchiverDelegate + +@optional +- (void)unarchiverDidFinish:(id)arg1; +- (void)unarchiverWillFinish:(id)arg1; +- (void)unarchiver:(id)arg1 willReplaceObject:(id)arg2 withObject:(id)arg3; +- (id)unarchiver:(id)arg1 didDecodeObject:(id)arg2; +- (Class)unarchiver:(id)arg1 cannotDecodeObjectOfClassName:(id)arg2 originalClasses:(id)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSLocking-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSLocking-Protocol.h new file mode 100644 index 00000000..4b0f16ff --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSLocking-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSLocking +- (void)unlock; +- (void)lock; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSMutableDictionary-MailFoundationAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSMutableDictionary-MailFoundationAdditions.h new file mode 100644 index 00000000..ad183a45 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSMutableDictionary-MailFoundationAdditions.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableDictionary.h" + +@interface NSMutableDictionary (MailFoundationAdditions) +- (void)removeObjectForIntegerKey:(long long)arg1; +- (void)setObject:(id)arg1 forIntegerKey:(long long)arg2; +- (void)setSize:(struct CGSize)arg1 forKey:(id)arg2; +- (void)setCGFloat:(double)arg1 forKey:(id)arg2; +- (void)setFloat:(float)arg1 forKey:(id)arg2; +- (void)setInteger:(long long)arg1 forKey:(id)arg2; +- (void)setBool:(BOOL)arg1 forKey:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSNotificationCenter-MainThreadPosting.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSNotificationCenter-MainThreadPosting.h new file mode 100644 index 00000000..d6966634 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSNotificationCenter-MainThreadPosting.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSNotificationCenter.h" + +@interface NSNotificationCenter (MainThreadPosting) +- (void)postNotificationInMainThread:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSObject-MainThreadMessaging.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSObject-MainThreadMessaging.h new file mode 100644 index 00000000..3b70662a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSObject-MainThreadMessaging.h @@ -0,0 +1,13 @@ +/* + * 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" + +@interface NSObject (MainThreadMessaging) ++ (void)mf_performBlockOnMainThread:(id)arg1 waitUntilDone:(void)arg2; ++ (void)_mf_mainThreadPerform:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSObject-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSObject-Protocol.h new file mode 100644 index 00000000..19cf622d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSObject-Protocol.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSObject +- (id)description; +- (unsigned long long)retainCount; +- (id)autorelease; +- (oneway void)release; +- (id)retain; +- (BOOL)respondsToSelector:(SEL)arg1; +- (BOOL)conformsToProtocol:(id)arg1; +- (BOOL)isMemberOfClass:(Class)arg1; +- (BOOL)isKindOfClass:(Class)arg1; +- (BOOL)isProxy; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2 withObject:(id)arg3; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2; +- (id)performSelector:(SEL)arg1; +- (struct _NSZone *)zone; +- (id)self; +- (Class)class; +- (Class)superclass; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; + +@optional +- (id)debugDescription; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSObject-_mf_LibraryMessageEquality.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSObject-_mf_LibraryMessageEquality.h new file mode 100644 index 00000000..943816f8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSObject-_mf_LibraryMessageEquality.h @@ -0,0 +1,12 @@ +/* + * 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" + +@interface NSObject (_mf_LibraryMessageEquality) +- (long long)_mf_LibraryMessageLibraryID; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSPersistentStoreCoordinator-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSPersistentStoreCoordinator-MailAdditions.h new file mode 100644 index 00000000..2ea4e142 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSPersistentStoreCoordinator-MailAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPersistentStoreCoordinator.h" + +@interface NSPersistentStoreCoordinator (MailAdditions) +- (id)_addSQLPersistentStoreFromPath:(id)arg1 URL:(id)arg2 type:(long long)arg3 recoveringFromError:(id)arg4; +- (id)addSQLPersistentStoreFromPath:(id)arg1 type:(long long)arg2 error:(id *)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSPortDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSPortDelegate-Protocol.h new file mode 100644 index 00000000..3f9faebf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSPortDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSPortDelegate + +@optional +- (void)handlePortMessage:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSPortMessage-MailFoundationAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSPortMessage-MailFoundationAdditions.h new file mode 100644 index 00000000..058e1a51 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSPortMessage-MailFoundationAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPortMessage.h" + +@interface NSPortMessage (MailFoundationAdditions) +- (void)safeSendBeforeDate:(id)arg1; +- (void)safeSendNow; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSSound-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSSound-MailAdditions.h new file mode 100644 index 00000000..22d9e0ac --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSSound-MailAdditions.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSound.h" + +@interface NSSound (MailAdditions) ++ (id)soundsAtPaths:(id)arg1; ++ (id)appendSoundsToPaths:(id)arg1; ++ (id)containerLibrarySoundsDirs; ++ (id)tildeLibrarySoundsDirs; ++ (id)networkLibrarySoundsDirs; ++ (id)librarySoundsDirs; ++ (id)systemLibrarySoundsDirs; ++ (id)validPathToSound:(id)arg1; ++ (void)addSoundPathToPlayList:(id)arg1 playImmediately:(BOOL)arg2; ++ (void)addSoundToPlayList:(id)arg1 playImmediately:(BOOL)arg2; ++ (void)_addSoundOrPathToPlayList:(id)arg1 playImmediately:(BOOL)arg2; ++ (void)_setupPlayList; ++ (void)sound:(id)arg1 didFinishPlaying:(BOOL)arg2; ++ (void)_playSound; ++ (void)_playNextSound; +- (BOOL)_playAsMailSound; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSString-MFLibraryID.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSString-MFLibraryID.h new file mode 100644 index 00000000..0027879d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSString-MFLibraryID.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MFLibraryID) ++ (id)stringWithLibraryID:(long long)arg1; +- (id)initWithLibraryID:(long long)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSString-MailFrameworkAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSString-MailFrameworkAdditions.h new file mode 100644 index 00000000..40c552bc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSString-MailFrameworkAdditions.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MailFrameworkAdditions) ++ (id)stringWithAttachmentCharacter; ++ (id)stringWithData:(id)arg1 encoding:(unsigned long long)arg2; +- (BOOL)isEqualExceptForFinalSlash:(id)arg1; +- (id)percentEscapedURLString; +- (id)validURLString; +- (BOOL)hasPrefixIgnoreCaseAndDiacritics:(id)arg1; +- (id)secondToLastPathComponent; +- (id)firstLine; +- (id)uniqueFilenameWithRespectToFilenames:(id)arg1; +- (id)encodedMessageIDString; +- (long long)compareAsInts:(id)arg1; +- (id)foldedStringForSuggestionsOriginatedExactMatchSearches; +- (id)fileSystemString; +- (void)mf_effectiveSubject:(id *)arg1 prefix:(id *)arg2; +- (BOOL)containsOnlyBreakingWhitespace; +- (BOOL)containsOnlyWhitespace; +- (id)stringByReplacingSpecialSlashesWith:(id)arg1; +- (id)stringByReplacingSpecialSlashesWithSlashes; +- (id)stringByReplacingSlashesWithSpecialSlashes; +- (id)specialSlash; +- (id)stringByRemovingLineEndingsForHTML; +- (id)stringByChangingBodyTagToDiv; +- (id)stringByReplacingCharactersInSet:(id)arg1 withCharacter:(unsigned short)arg2; +- (id)smartCapitalizedString; +- (unsigned long long)hexLongLongValue; +- (unsigned int)hexIntValue; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSString-MailPathUtils.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSString-MailPathUtils.h new file mode 100644 index 00000000..d499c368 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSString-MailPathUtils.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MailPathUtils) ++ (void)resetBetterStringByResolvingSymlinksInPath; ++ (id)pathWithDirectory:(id)arg1 filename:(id)arg2 extension:(id)arg3; +- (id)betterStringByResolvingSymlinksInPath; +- (id)stringByReallyAbbreviatingWithTildeInPath; +- (BOOL)isSubdirectoryOfPath:(id)arg1; +- (BOOL)deletePath; +- (id)uniquePathWithMaximumLength:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSURL-MailFoundationAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSURL-MailFoundationAdditions.h new file mode 100644 index 00000000..e614db39 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSURL-MailFoundationAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSURL.h" + +@interface NSURL (MailFoundationAdditions) +- (id)URLByRemovingFragment; +- (BOOL)isReallyCaseSensitivelyEqual:(id)arg1; +- (id)completePath; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/NSUserDefaults-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailFW/NSUserDefaults-MailAdditions.h new file mode 100644 index 00000000..b8516566 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/NSUserDefaults-MailAdditions.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSUserDefaults.h" + +@class NSString, NSURL; + +@interface NSUserDefaults (MailAdditions) +- (void)_mf_setObject:(id)arg1 forKey:(id)arg2 version:(unsigned long long)arg3; +- (id)_mf_objectForKey:(id)arg1 version:(unsigned long long)arg2; +- (void)setDisplayName:(id)arg1 forFlagColor:(BOOL)arg2; +- (id)displayNameForFlagColor:(BOOL)arg1; +@property BOOL autosaveWindows; +@property(readonly) double autoSaveStoreDelay; +@property(readonly) double autoSaveDelay; +@property BOOL junkMailEvaluationAfterRules; +@property long long junkMailBehavior; +@property BOOL junkMailTrustHeaders; +@property(readonly) NSString *autoDownloadDirectoryPath; +@property(retain) NSURL *downloadDirectoryURL; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/WebArchive-Conversion.h b/MailHeaders/Mavericks_10.9.5/MailFW/WebArchive-Conversion.h new file mode 100644 index 00000000..0f754255 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/WebArchive-Conversion.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebArchive.h" + +@interface WebArchive (Conversion) +- (id)attributedString; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_IMAPOfflineRestoreContext.h b/MailHeaders/Mavericks_10.9.5/MailFW/_IMAPOfflineRestoreContext.h new file mode 100644 index 00000000..647d4e1f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_IMAPOfflineRestoreContext.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class IMAPGateway, MCActivityMonitor, NSMapTable, NSMutableDictionary, NSString; + +@interface _IMAPOfflineRestoreContext : NSObject +{ + MCActivityMonitor *_monitor; + IMAPGateway *_gateway; + NSMapTable *_temporaryToRealUidMap; + NSMutableDictionary *_storesByMailboxName; + unsigned long long _currentSize; + unsigned long long _totalSize; + long long _activityAccessKey; + NSString *_oldTaskName; +} + +@property(copy, nonatomic) NSString *oldTaskName; // @synthesize oldTaskName=_oldTaskName; +@property(nonatomic) long long activityAccessKey; // @synthesize activityAccessKey=_activityAccessKey; +@property(nonatomic) unsigned long long totalSize; // @synthesize totalSize=_totalSize; +@property(nonatomic) unsigned long long currentSize; // @synthesize currentSize=_currentSize; +@property(retain, nonatomic) NSMutableDictionary *storesByMailboxName; // @synthesize storesByMailboxName=_storesByMailboxName; +@property(retain, nonatomic) NSMapTable *temporaryToRealUidMap; // @synthesize temporaryToRealUidMap=_temporaryToRealUidMap; +@property(retain, nonatomic) IMAPGateway *gateway; // @synthesize gateway=_gateway; +@property(retain, nonatomic) MCActivityMonitor *monitor; // @synthesize monitor=_monitor; +- (id)description; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFAppleScriptHeaderRecord.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFAppleScriptHeaderRecord.h new file mode 100644 index 00000000..1b40c5ec --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFAppleScriptHeaderRecord.h @@ -0,0 +1,28 @@ +/* + * 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" + +@class MCMessage, NSString; + +@interface _MFAppleScriptHeaderRecord : NSObject +{ + NSString *_name; + id _content; + MCMessage *_message; +} + +- (id)objectSpecifier; +- (void)setMessage:(id)arg1; +- (id)message; +- (void)setContent:(id)arg1; +- (id)content; +- (void)setName:(id)arg1; +- (id)name; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFConversationsMessageCollector.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFConversationsMessageCollector.h new file mode 100644 index 00000000..dd632207 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFConversationsMessageCollector.h @@ -0,0 +1,31 @@ +/* + * 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 "MFMessageConsumer.h" + +@class NSMutableArray, NSMutableDictionary; + +@interface _MFConversationsMessageCollector : NSObject +{ + NSMutableArray *_messages; + NSMutableDictionary *_conversationsMembers; + struct __MDQuery *_query; +} + +- (void)finishedSendingMessages; +@property(readonly) BOOL shouldCancel; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByConversationID:(id)arg2 options:(id)arg3; +- (id)conversationsMembers; +- (id)messages; +- (void)setQuery:(struct __MDQuery *)arg1; +- (struct __MDQuery *)query; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFDataCollector.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFDataCollector.h new file mode 100644 index 00000000..f42c7c18 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFDataCollector.h @@ -0,0 +1,30 @@ +/* + * 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" + +@class MFLibraryMessage, NSData, NSDictionary, NSFileHandle, NSString; + +@interface _MFDataCollector : NSObject +{ + NSString *_path; + NSString *_tmpPath; + MFLibraryMessage *_message; + NSString *_part; + NSFileHandle *_fileHandle; + unsigned long long _length; + BOOL _isEmpty; + NSData *_plistData; + NSDictionary *_spotlightAttributes; +} + +- (void)done; +- (void)setData:(id)arg1; +- (void)dealloc; +- (id)initWithMessage:(id)arg1 isPartial:(BOOL)arg2 part:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFIMAPMailboxDeletionQueueEntry.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFIMAPMailboxDeletionQueueEntry.h new file mode 100644 index 00000000..b63c2f8f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFIMAPMailboxDeletionQueueEntry.h @@ -0,0 +1,24 @@ +/* + * 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" + +@class MFIMAPAccount, NSArray; + +@interface _MFIMAPMailboxDeletionQueueEntry : NSObject +{ + NSArray *_urls; + NSArray *_paths; + MFIMAPAccount *_account; +} + +@property(retain, nonatomic) MFIMAPAccount *account; // @synthesize account=_account; +@property(retain, nonatomic) NSArray *paths; // @synthesize paths=_paths; +@property(retain, nonatomic) NSArray *urls; // @synthesize urls=_urls; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFLibraryThreadRequest.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFLibraryThreadRequest.h new file mode 100644 index 00000000..2bc2cf48 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFLibraryThreadRequest.h @@ -0,0 +1,26 @@ +/* + * 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" + +@class MFRemoteStore, NSMutableArray; + +@interface _MFLibraryThreadRequest : NSObject +{ + BOOL _isFollowOnToProgressTask; + NSMutableArray *_messages; + MFRemoteStore *_store; +} + +@property(nonatomic) BOOL isFollowOnToProgressTask; // @synthesize isFollowOnToProgressTask=_isFollowOnToProgressTask; +@property(readonly) MFRemoteStore *store; // @synthesize store=_store; +@property(retain, nonatomic) NSMutableArray *messages; // @synthesize messages=_messages; +- (void)dealloc; +- (id)init; +- (id)initWithStore:(id)arg1 andMessages:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMailboxChildrenEnumerator.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMailboxChildrenEnumerator.h new file mode 100644 index 00000000..e48b5941 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMailboxChildrenEnumerator.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@interface _MFMailboxChildrenEnumerator : NSEnumerator +{ + struct __CFTree *_root; + struct __CFTree *_currentTree; + BOOL _includeHidden; +} + +- (id)nextObject; +- (void)dealloc; +- (id)init; +- (id)initWithTree:(struct __CFTree *)arg1 includeHiddenChildren:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMailboxEnumerator.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMailboxEnumerator.h new file mode 100644 index 00000000..d216ac74 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMailboxEnumerator.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@interface _MFMailboxEnumerator : NSEnumerator +{ + struct __CFTree *_startTree; + struct __CFTree *_lastTree; +} + +- (id)nextObject; +- (void)dealloc; +- (id)init; +- (id)initWithTree:(struct __CFTree *)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageCollector.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageCollector.h new file mode 100644 index 00000000..3f4a316d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageCollector.h @@ -0,0 +1,31 @@ +/* + * 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 "MFMessageConsumer.h" + +@class NSMutableArray; + +@interface _MFMessageCollector : NSObject +{ + NSMutableArray *_messages; + int _accessNumber; + BOOL _didCancel; +} + +- (void)finishedSendingMessages; +- (BOOL)didCancel; +@property(readonly) BOOL shouldCancel; +- (void)newMessagesAvailable:(id)arg1 conversationMembers:(id)arg2; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByConversationID:(id)arg2 options:(id)arg3; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByConversationID:(id)arg2; +- (id)messages; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageLoadingContext.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageLoadingContext.h new file mode 100644 index 00000000..f6390743 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageLoadingContext.h @@ -0,0 +1,37 @@ +/* + * 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" + +@class NSMutableArray, NSMutableSet; + +@interface _MFMessageLoadingContext : NSObject +{ + unsigned int _options; + NSMutableSet *_seenConversationIDs; + NSMutableArray *_messages; + id _target; + unsigned long long _chunkSize; + double _chunkInterval; + double _lastChunkSentTime; + unsigned long long _messagesLoaded; + struct sqlite3 *_database; +} + +@property(nonatomic) struct sqlite3 *database; // @synthesize database=_database; +@property(nonatomic) unsigned int options; // @synthesize options=_options; +@property(nonatomic) unsigned long long messagesLoaded; // @synthesize messagesLoaded=_messagesLoaded; +@property(nonatomic) double lastChunkSentTime; // @synthesize lastChunkSentTime=_lastChunkSentTime; +@property(nonatomic) double chunkInterval; // @synthesize chunkInterval=_chunkInterval; +@property(nonatomic) unsigned long long chunkSize; // @synthesize chunkSize=_chunkSize; +@property(retain, nonatomic) id target; // @synthesize target=_target; +@property(retain, nonatomic) NSMutableArray *messages; // @synthesize messages=_messages; +@property(retain, nonatomic) NSMutableSet *seenConversationIDs; // @synthesize seenConversationIDs=_seenConversationIDs; +- (id)description; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueColor.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueColor.h new file mode 100644 index 00000000..8fcbc233 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueColor.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueColor : MFMessageSortingValue +{ + int _colorForSort; +} + +- (id)description; +- (void)setColorForSort:(int)arg1; +- (int)colorForSort; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueDateLastViewed.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueDateLastViewed.h new file mode 100644 index 00000000..ed91e93d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueDateLastViewed.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueDateLastViewed : MFMessageSortingValue +{ + double _dateLastViewedAsTimeIntervalSince1970; +} + +- (id)description; +- (void)setDateLastViewedAsTimeIntervalSince1970:(double)arg1; +- (double)dateLastViewedAsTimeIntervalSince1970; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueDateReceived.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueDateReceived.h new file mode 100644 index 00000000..c29de032 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueDateReceived.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueDateReceived : MFMessageSortingValue +{ + double _dateReceivedAsTimeIntervalSince1970; +} + +- (id)description; +- (void)setDateReceivedAsTimeIntervalSince1970:(double)arg1; +- (double)dateReceivedAsTimeIntervalSince1970; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueDateSent.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueDateSent.h new file mode 100644 index 00000000..9fe6719c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueDateSent.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueDateSent : MFMessageSortingValue +{ + double _dateSentAsTimeIntervalSince1970; +} + +- (id)description; +- (void)setDateSentAsTimeIntervalSince1970:(double)arg1; +- (double)dateSentAsTimeIntervalSince1970; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueLibraryID.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueLibraryID.h new file mode 100644 index 00000000..0423b64f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueLibraryID.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueLibraryID : MFMessageSortingValue +{ + long long _libraryID; +} + +- (id)description; +- (void)setLibraryID:(long long)arg1; +- (long long)libraryID; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueMailbox.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueMailbox.h new file mode 100644 index 00000000..46c2fa5d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueMailbox.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFMailbox; + +@interface _MFMessageSortingValueMailbox : MFMessageSortingValue +{ + MFMailbox *_mailbox; +} + +- (id)description; +- (void)setMailbox:(id)arg1; +- (id)mailbox; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueMessageFlags.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueMessageFlags.h new file mode 100644 index 00000000..b9253118 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueMessageFlags.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueMessageFlags : MFMessageSortingValue +{ + unsigned int _messageFlags; +} + +- (id)description; +- (void)setMessageFlags:(unsigned int)arg1; +- (unsigned int)messageFlags; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueMessageSize.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueMessageSize.h new file mode 100644 index 00000000..dcee4bbd --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueMessageSize.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueMessageSize : MFMessageSortingValue +{ + unsigned long long _messageSize; +} + +- (id)description; +- (void)setMessageSize:(unsigned long long)arg1; +- (unsigned long long)messageSize; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueNumberOfAttachments.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueNumberOfAttachments.h new file mode 100644 index 00000000..a23158d2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueNumberOfAttachments.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueNumberOfAttachments : MFMessageSortingValue +{ + unsigned long long _numberOfAttachments; +} + +- (id)description; +- (void)setNumberOfAttachments:(unsigned long long)arg1; +- (unsigned long long)numberOfAttachments; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueSender.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueSender.h new file mode 100644 index 00000000..dd58dc7a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueSender.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface _MFMessageSortingValueSender : MFMessageSortingValue +{ + NSString *_senderDisplayName; +} + +- (id)description; +- (void)setSenderDisplayName:(id)arg1; +- (id)senderDisplayName; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueSubject.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueSubject.h new file mode 100644 index 00000000..5fc3b328 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueSubject.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface _MFMessageSortingValueSubject : MFMessageSortingValue +{ + NSString *_subject; + unsigned char _subjectPrefixLength; +} + +- (id)description; +- (id)subjectAndPrefixLength:(unsigned long long *)arg1; +- (void)setSubjectPrefixLength:(unsigned char)arg1; +- (void)setSubject:(id)arg1; +- (id)subject; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueTo.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueTo.h new file mode 100644 index 00000000..f0ce4bdf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueTo.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface _MFMessageSortingValueTo : MFMessageSortingValue +{ + NSArray *_to; +} + +- (id)description; +- (void)setTo:(id)arg1; +- (id)to; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueUid.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueUid.h new file mode 100644 index 00000000..9b4246c7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFMessageSortingValueUid.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueUid : MFMessageSortingValue +{ + unsigned int _uidForSort; +} + +- (id)description; +- (void)setUidForSort:(unsigned int)arg1; +- (unsigned int)uidForSort; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFNonContentSmartMailboxUnreadCountManager.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFNonContentSmartMailboxUnreadCountManager.h new file mode 100644 index 00000000..af92a6d9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFNonContentSmartMailboxUnreadCountManager.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class NSMutableDictionary, NSOperationQueue, NSTimer; + +@interface _MFNonContentSmartMailboxUnreadCountManager : NSObject +{ + NSOperationQueue *_workQueue; + NSMutableDictionary *_unreadLibraryIDsByMessageIDHeaderByMailbox; + double _lastDisplayUpdateTime; + BOOL _isObserving; + NSTimer *_relativeDateTimer; +} + +- (void)_updateSmartMailbox:(id)arg1 withCompleteMessageList:(id)arg2 setDisplayCounts:(BOOL)arg3; +- (void)_smartMailboxLoaded:(id)arg1; +- (void)_refreshRelativeDateMailboxes:(id)arg1; +- (void)_messagesNeedRefresh:(id)arg1; +- (void)_messagesCompacted:(id)arg1; +- (void)_messagesChanged:(id)arg1; +- (void)_refreshForMailboxes:(id)arg1; +- (void)_setDisplayCounts; +- (void)_stopObservingNotifications; +- (void)_startObservingNotifications; +- (void)updateSmartMailboxes; +- (id)_messageIDHeaderKeyForMessage:(id)arg1; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFProgressHandlerMonitorContext.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFProgressHandlerMonitorContext.h new file mode 100644 index 00000000..f491ce91 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFProgressHandlerMonitorContext.h @@ -0,0 +1,22 @@ +/* + * 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" + +@class MCActivityMonitor; + +@interface _MFProgressHandlerMonitorContext : NSObject +{ + id _progressMonitor; + MCActivityMonitor *_activityMonitor; +} + +@property(nonatomic) MCActivityMonitor *activityMonitor; // @synthesize activityMonitor=_activityMonitor; +@property(nonatomic) id progressMonitor; // @synthesize progressMonitor=_progressMonitor; +- (BOOL)shouldCancel; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFRedundantTextIdentifierAttachmentContext.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFRedundantTextIdentifierAttachmentContext.h new file mode 100644 index 00000000..a6f57a6f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFRedundantTextIdentifierAttachmentContext.h @@ -0,0 +1,29 @@ +/* + * 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" + +@class NSString; + +@interface _MFRedundantTextIdentifierAttachmentContext : NSObject +{ + BOOL _attachmentIsDownloaded; + NSString *_attachmentName; + NSString *_attachmentExtension; + unsigned long long _attachmentSize; +} + +@property(readonly, nonatomic) BOOL attachmentIsDownloaded; // @synthesize attachmentIsDownloaded=_attachmentIsDownloaded; +@property(readonly, nonatomic) unsigned long long attachmentSize; // @synthesize attachmentSize=_attachmentSize; +@property(readonly, nonatomic) NSString *attachmentExtension; // @synthesize attachmentExtension=_attachmentExtension; +@property(readonly, nonatomic) NSString *attachmentName; // @synthesize attachmentName=_attachmentName; +- (BOOL)isEqualTo:(id)arg1; +- (id)description; +- (void)dealloc; +- (id)initWithAttachmentName:(id)arg1 attachmentSize:(unsigned long long)arg2 attachmentIsDownloaded:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFRedundantTextIdentifierParseContext.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFRedundantTextIdentifierParseContext.h new file mode 100644 index 00000000..b43f922e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFRedundantTextIdentifierParseContext.h @@ -0,0 +1,80 @@ +/* + * 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" + +@class NSDictionary, _MFRedundantTextIdentifierAttachmentContext; + +@interface _MFRedundantTextIdentifierParseContext : NSObject +{ + BOOL _searchInForwardDirection; + BOOL _startTagCharacter; + BOOL _endTagCharacter; + BOOL _startEntityCharacter; + BOOL _endEntityCharacter; + BOOL _isParsingEntity; + BOOL _isParsingAttachment; + BOOL _attachmentIsTag; + unsigned short _entityValueCharacter; + CDStruct_f9502b4c *_buffer; + unsigned long long _bufferStartIndex; + unsigned long long _bufferLength; + long long _currentIndex; + long long _startMatchIndexForCurrentLine; + long long _entityStartIndex; + _MFRedundantTextIdentifierAttachmentContext *_attachmentContext; + long long _attachmentStartIndex; + long long _attachmentEndIndex; + NSDictionary *_attachmentContextsByURL; +} + ++ (void)normalizeEntitiesInString:(id)arg1; ++ (id)normalizedStringForEntity:(id)arg1; +@property(readonly, nonatomic) NSDictionary *attachmentContextsByURL; // @synthesize attachmentContextsByURL=_attachmentContextsByURL; +@property(nonatomic) BOOL attachmentIsTag; // @synthesize attachmentIsTag=_attachmentIsTag; +@property(nonatomic) long long attachmentEndIndex; // @synthesize attachmentEndIndex=_attachmentEndIndex; +@property(nonatomic) long long attachmentStartIndex; // @synthesize attachmentStartIndex=_attachmentStartIndex; +@property(retain, nonatomic) _MFRedundantTextIdentifierAttachmentContext *attachmentContext; // @synthesize attachmentContext=_attachmentContext; +@property(nonatomic) BOOL isParsingAttachment; // @synthesize isParsingAttachment=_isParsingAttachment; +@property(nonatomic) long long entityStartIndex; // @synthesize entityStartIndex=_entityStartIndex; +@property(nonatomic) unsigned short entityValueCharacter; // @synthesize entityValueCharacter=_entityValueCharacter; +@property(nonatomic) BOOL isParsingEntity; // @synthesize isParsingEntity=_isParsingEntity; +@property(readonly, nonatomic) BOOL endEntityCharacter; // @synthesize endEntityCharacter=_endEntityCharacter; +@property(readonly, nonatomic) BOOL startEntityCharacter; // @synthesize startEntityCharacter=_startEntityCharacter; +@property(readonly, nonatomic) BOOL endTagCharacter; // @synthesize endTagCharacter=_endTagCharacter; +@property(readonly, nonatomic) BOOL startTagCharacter; // @synthesize startTagCharacter=_startTagCharacter; +@property(nonatomic) BOOL searchInForwardDirection; // @synthesize searchInForwardDirection=_searchInForwardDirection; +@property(nonatomic) long long startMatchIndexForCurrentLine; // @synthesize startMatchIndexForCurrentLine=_startMatchIndexForCurrentLine; +@property(nonatomic) long long currentIndex; // @synthesize currentIndex=_currentIndex; +@property(readonly, nonatomic) unsigned long long bufferLength; // @synthesize bufferLength=_bufferLength; +@property(readonly, nonatomic) unsigned long long bufferStartIndex; // @synthesize bufferStartIndex=_bufferStartIndex; +@property(readonly, nonatomic) CDStruct_f9502b4c *buffer; // @synthesize buffer=_buffer; +- (id)parseAndSanitizeAttributionLineInRange:(struct _NSRange *)arg1; +- (void)resetCurrentIndex; +- (long long)advanceToEndOfLine:(char *)arg1; +- (long long)advanceToEndOfLine; +- (BOOL)advanceToEndOfAttachmentPlaceholderIfExists; +- (unsigned short)readAndAdvanceToEndOfEntityIfExists; +- (long long)advancePastNonContentTagsAndWhitespaceParsingAttachmentPlaceholders:(BOOL)arg1; +- (unsigned short)charFromBufferAtIndex:(unsigned long long)arg1; +- (unsigned short)nextCharacterToMatch; +- (unsigned short)currentCharFromBuffer; +- (void)incrementCurrentIndexBy:(unsigned long long)arg1; +- (void)incrementCurrentIndex; +- (BOOL)isBlockLevelTag:(char *)arg1 size:(unsigned long long)arg2; +- (BOOL)advanceToClosingTagMatchingOpenTag:(char *)arg1 openTagSize:(unsigned long long)arg2; +- (BOOL)advanceToEndOfCommentIfExists; +- (BOOL)parseAttachmentFilenameFromAttribute:(const char *)arg1; +- (unsigned long long)readElement:(char *)arg1 isCloseElement:(char *)arg2 shouldParseAttachmentTags:(BOOL)arg3; +- (unsigned long long)readAndAdvanceToEndOfTag:(char *)arg1 isCloseTag:(char *)arg2 shouldParseAttachmentTags:(BOOL)arg3; +- (unsigned long long)remainingCharacters; +- (id)charactersInMessageWithCurrentIndexMarked; +- (id)description; +- (void)dealloc; +- (id)initWithBuffer:(CDStruct_f9502b4c *)arg1 bufferStartIndex:(unsigned long long)arg2 bufferLength:(unsigned long long)arg3 searchInForwardDirection:(BOOL)arg4 attachmentContextsByURL:(id)arg5; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFRedundantTextIdentifierSolutionContext.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFRedundantTextIdentifierSolutionContext.h new file mode 100644 index 00000000..cf75a267 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFRedundantTextIdentifierSolutionContext.h @@ -0,0 +1,59 @@ +/* + * 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" + +@class NSDictionary, NSMutableArray, NSMutableIndexSet; + +@interface _MFRedundantTextIdentifierSolutionContext : NSObject +{ + BOOL _searchInForwardDirection; + BOOL _matchedEntireOriginalContiguously; + CDStruct_f9502b4c *_replyBuffer; + unsigned long long _replyStartIndex; + unsigned long long _replyLength; + CDStruct_f9502b4c *_originalBuffer; + unsigned long long _originalStartIndex; + unsigned long long _originalLength; + NSDictionary *_originalAttachmentContextsByURL; + NSDictionary *_replyAttachmentContextsByURL; + NSMutableArray *_redundantRanges; + NSMutableIndexSet *_redundantAttachmentStartIndexes; + NSMutableArray *_attributionLineRanges; + unsigned long long _startingIndexForRedundantRanges; + unsigned long long _startingIndexForAttributionLineRanges; + long long _lastIndexMatchedInOriginal; + long long _lastIndexMatchedInReply; +} + +@property(nonatomic) BOOL matchedEntireOriginalContiguously; // @synthesize matchedEntireOriginalContiguously=_matchedEntireOriginalContiguously; +@property(nonatomic) BOOL searchInForwardDirection; // @synthesize searchInForwardDirection=_searchInForwardDirection; +@property(nonatomic) long long lastIndexMatchedInReply; // @synthesize lastIndexMatchedInReply=_lastIndexMatchedInReply; +@property(nonatomic) long long lastIndexMatchedInOriginal; // @synthesize lastIndexMatchedInOriginal=_lastIndexMatchedInOriginal; +@property(nonatomic) unsigned long long startingIndexForAttributionLineRanges; // @synthesize startingIndexForAttributionLineRanges=_startingIndexForAttributionLineRanges; +@property(nonatomic) unsigned long long startingIndexForRedundantRanges; // @synthesize startingIndexForRedundantRanges=_startingIndexForRedundantRanges; +@property(retain, nonatomic) NSMutableArray *attributionLineRanges; // @synthesize attributionLineRanges=_attributionLineRanges; +@property(retain, nonatomic) NSMutableIndexSet *redundantAttachmentStartIndexes; // @synthesize redundantAttachmentStartIndexes=_redundantAttachmentStartIndexes; +@property(retain, nonatomic) NSMutableArray *redundantRanges; // @synthesize redundantRanges=_redundantRanges; +@property(readonly, nonatomic) NSDictionary *replyAttachmentContextsByURL; // @synthesize replyAttachmentContextsByURL=_replyAttachmentContextsByURL; +@property(readonly, nonatomic) NSDictionary *originalAttachmentContextsByURL; // @synthesize originalAttachmentContextsByURL=_originalAttachmentContextsByURL; +@property(readonly, nonatomic) unsigned long long originalLength; // @synthesize originalLength=_originalLength; +@property(nonatomic) unsigned long long originalStartIndex; // @synthesize originalStartIndex=_originalStartIndex; +@property(readonly, nonatomic) CDStruct_f9502b4c *originalBuffer; // @synthesize originalBuffer=_originalBuffer; +@property(readonly, nonatomic) unsigned long long replyLength; // @synthesize replyLength=_replyLength; +@property(nonatomic) unsigned long long replyStartIndex; // @synthesize replyStartIndex=_replyStartIndex; +@property(readonly, nonatomic) CDStruct_f9502b4c *replyBuffer; // @synthesize replyBuffer=_replyBuffer; +- (BOOL)location:(unsigned long long)arg1 isInRangeArray:(id)arg2 startingIndex:(unsigned long long *)arg3; +- (long long)contentTypeForIndex:(unsigned long long)arg1; +- (void)addRangeWithStart:(long long)arg1 end:(long long)arg2 toArray:(id)arg3; +- (void)computeAttributionRangesInReply; +- (void)computeRedundantRangesInReply; +- (id)description; +- (void)dealloc; +- (id)initWithReply:(CDStruct_f9502b4c *)arg1 replyStartIndex:(unsigned long long)arg2 replyLength:(unsigned long long)arg3 replyAttachmentContextsByURL:(id)arg4 original:(CDStruct_f9502b4c *)arg5 originalStartIndex:(unsigned long long)arg6 originalLength:(unsigned long long)arg7 originalAttachmentContextsByURL:(id)arg8 searchInForwardDirection:(BOOL)arg9; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFRedundantTextIdentifierSolutionGenerator.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFRedundantTextIdentifierSolutionGenerator.h new file mode 100644 index 00000000..22c7a4f0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFRedundantTextIdentifierSolutionGenerator.h @@ -0,0 +1,33 @@ +/* + * 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" + +@class NSDictionary; + +@interface _MFRedundantTextIdentifierSolutionGenerator : NSObject +{ + CDStruct_f9502b4c *_replyBuffer; + CDStruct_f9502b4c *_originalBuffer; + unsigned long long _replyLength; + unsigned long long _originalLength; + NSDictionary *_replyAttachmentContextsByURL; + NSDictionary *_originalAttachmentContextsByURL; +} + +@property(readonly, nonatomic) NSDictionary *originalAttachmentContextsByURL; // @synthesize originalAttachmentContextsByURL=_originalAttachmentContextsByURL; +@property(readonly, nonatomic) NSDictionary *replyAttachmentContextsByURL; // @synthesize replyAttachmentContextsByURL=_replyAttachmentContextsByURL; +@property(readonly, nonatomic) unsigned long long originalLength; // @synthesize originalLength=_originalLength; +@property(readonly, nonatomic) unsigned long long replyLength; // @synthesize replyLength=_replyLength; +@property(readonly, nonatomic) CDStruct_f9502b4c *originalBuffer; // @synthesize originalBuffer=_originalBuffer; +@property(readonly, nonatomic) CDStruct_f9502b4c *replyBuffer; // @synthesize replyBuffer=_replyBuffer; +- (id)generateBestSolutionInForwardDirection:(BOOL)arg1 replyStartIndex:(unsigned long long)arg2 originalStartIndex:(unsigned long long)arg3; +- (id)generateBestSolution; +- (void)dealloc; +- (id)initWithReply:(CDStruct_f9502b4c *)arg1 replyLength:(unsigned long long)arg2 replyAttachmentContextsByURL:(id)arg3 original:(CDStruct_f9502b4c *)arg4 originalLength:(unsigned long long)arg5 originalAttachmentContextsByURL:(id)arg6; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFRootlessMailbox.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFRootlessMailbox.h new file mode 100644 index 00000000..5c3ee790 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFRootlessMailbox.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFRootlessMailbox : MFMailbox +{ +} + +- (id)storeForMailbox:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)tildeAbbreviatedPath; +- (id)fullPath; +- (id)displayName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFSMTPEnhancedStatusCode.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFSMTPEnhancedStatusCode.h new file mode 100644 index 00000000..6be54ac9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFSMTPEnhancedStatusCode.h @@ -0,0 +1,23 @@ +/* + * 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" + +@interface _MFSMTPEnhancedStatusCode : NSObject +{ + int _classStatus; + int _subject; + int _detail; +} + +@property(nonatomic) int detail; // @synthesize detail=_detail; +@property(nonatomic) int subject; // @synthesize subject=_subject; +@property(nonatomic) int classStatus; // @synthesize classStatus=_classStatus; +@property(readonly, nonatomic) long long interpretedStatusCode; +- (id)description; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFSeenMessagesStore.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFSeenMessagesStore.h new file mode 100644 index 00000000..5191530b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFSeenMessagesStore.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class NSEntityDescription, NSPersistentStoreCoordinator, NSString; + +@interface _MFSeenMessagesStore : NSObject +{ + NSPersistentStoreCoordinator *_coordinator; + NSString *_storePath; + NSEntityDescription *_accountEntity; + NSEntityDescription *_seenMessageEntity; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain) NSEntityDescription *seenMessageEntity; // @synthesize seenMessageEntity=_seenMessageEntity; +@property(retain) NSEntityDescription *accountEntity; // @synthesize accountEntity=_accountEntity; +@property(retain) NSString *persistentStorePath; // @synthesize persistentStorePath=_storePath; +@property(readonly) NSPersistentStoreCoordinator *persistentStoreCoordinator; // @synthesize persistentStoreCoordinator=_coordinator; +- (id)_managedObjectModel; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFSetFlags.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFSetFlags.h new file mode 100644 index 00000000..cdb7ec12 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFSetFlags.h @@ -0,0 +1,27 @@ +/* + * 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" + +@class NSArray, NSDictionary, NSMutableArray; + +@interface _MFSetFlags : NSObject +{ + NSMutableArray *_messages; + NSDictionary *_flagsToSet; +} + +@property(readonly) NSArray *messages; // @synthesize messages=_messages; +@property(readonly) NSDictionary *flagsToSet; // @synthesize flagsToSet=_flagsToSet; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (void)addMessages:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithFlagsDictionary:(id)arg1 messages:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFSmartMailboxesEnumerator.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFSmartMailboxesEnumerator.h new file mode 100644 index 00000000..200818a2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFSmartMailboxesEnumerator.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@class NSArray; + +@interface _MFSmartMailboxesEnumerator : NSEnumerator +{ + NSArray *_smartMailboxes; + unsigned long long _nextMailboxIndex; + NSEnumerator *_currentMailboxEnumerator; +} + +- (id)nextObject; +- (void)dealloc; +- (id)init; +- (id)initWithSmartMailboxes:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_MFZipStream.h b/MailHeaders/Mavericks_10.9.5/MailFW/_MFZipStream.h new file mode 100644 index 00000000..1309f831 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_MFZipStream.h @@ -0,0 +1,45 @@ +/* + * 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" + +@interface _MFZipStream : NSObject +{ + struct __sFILE { + char *_field1; + int _field2; + int _field3; + short _field4; + short _field5; + struct __sbuf _field6; + int _field7; + void *_field8; + void *_field9; + void *_field10; + void *_field11; + void *_field12; + struct __sbuf _field13; + struct __sFILEX *_field14; + int _field15; + unsigned char _field16[3]; + unsigned char _field17[1]; + struct __sbuf _field18; + int _field19; + long long _field20; + } *_destination; + struct z_stream_s _zipStream; + unsigned char inBuffer[32768]; + unsigned char outBuffer[32768]; + BOOL _closed; +} + +- (void)closeStream; +- (void)appendData:(id)arg1; +- (void)dealloc; +- (id)initWithDestinationPath:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailFW/_WriteSyncStateOperation.h b/MailHeaders/Mavericks_10.9.5/MailFW/_WriteSyncStateOperation.h new file mode 100644 index 00000000..eb6f02bb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailFW/_WriteSyncStateOperation.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCThrowingInvocationOperation.h" + +@class NSMutableSet, NSString; + +@interface _WriteSyncStateOperation : MCThrowingInvocationOperation +{ + NSMutableSet *_itemIdStrings; + NSString *_syncState; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; +@property(retain, nonatomic) NSString *syncState; // @synthesize syncState=_syncState; +- (id)description; +- (BOOL)isReady; +- (void)cancel; +- (void)removeIdStringsForMessages:(id)arg1; +- (void)removeIdStringsForItemIdTypes:(id)arg1; +- (void)setIdStrings:(id)arg1; +- (void)dealloc; +- (id)initWithStore:(id)arg1 syncState:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AccountCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/AccountCell.h new file mode 100644 index 00000000..0e902234 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AccountCell.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSActionCell.h" + +@class MFMailAccount, NSImage, NSString; + +@interface AccountCell : NSActionCell +{ + NSString *_subtitle; + MFMailAccount *_account; + NSImage *_icon; +} + +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +@property(retain, nonatomic) NSImage *icon; // @synthesize icon=_icon; +- (id)title; +- (id)subtitle; +- (void)setSubtitle:(id)arg1; +- (void)setAccount:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (id)initTextCell:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AccountDetails.h b/MailHeaders/Mavericks_10.9.5/MailUI/AccountDetails.h new file mode 100644 index 00000000..611f8cc2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AccountDetails.h @@ -0,0 +1,53 @@ +/* + * 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" + +@class MCAuthScheme, MFMailAccount, NSButton, NSPopUpButton, NSTextField, NSView, SpecialMailboxes; + +@interface AccountDetails : NSObject +{ + NSTextField *_portNumberField; + NSButton *_sslSwitch; + SpecialMailboxes *_specialMailboxes; + MFMailAccount *_account; + Class _accountClass; + MCAuthScheme *_authScheme; + NSView *_detailView; + NSButton *_autoFetch; + NSPopUpButton *_authenticationPopup; + NSTextField *_domainLabel; + NSTextField *_domainField; +} + ++ (id)accountDetailsNibName; ++ (id)accountDetailsForAccountClass:(Class)arg1; +@property(nonatomic) NSTextField *domainField; // @synthesize domainField=_domainField; +@property(nonatomic) NSTextField *domainLabel; // @synthesize domainLabel=_domainLabel; +@property(nonatomic) NSPopUpButton *authenticationPopup; // @synthesize authenticationPopup=_authenticationPopup; +@property(nonatomic) NSButton *sslSwitch; // @synthesize sslSwitch=_sslSwitch; +@property(nonatomic) NSButton *autoFetch; // @synthesize autoFetch=_autoFetch; +@property(nonatomic) NSTextField *portNumberField; // @synthesize portNumberField=_portNumberField; +@property(retain, nonatomic) NSView *detailView; // @synthesize detailView=_detailView; +- (void)_specialMailboxesDidChange:(id)arg1; +- (void)authenticationChanged:(id)arg1; +- (void)sslChanged:(id)arg1; +- (id)portFieldForSSLCheckBox:(id)arg1; +- (void)didDisplayTabViewItem:(id)arg1; +- (id)setupSpecialMailboxesUIFromValuesInAccount:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)setupAccountFromValuesInSpecialMailboxesUI:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (void)_updateDomainUI; +- (void)setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (Class)accountClass; +- (void)dealloc; +- (id)init; +- (id)initWithAccountClass:(Class)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AccountInfo.h b/MailHeaders/Mavericks_10.9.5/MailUI/AccountInfo.h new file mode 100644 index 00000000..d9dd8c8d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AccountInfo.h @@ -0,0 +1,56 @@ +/* + * 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 "NSTabViewDelegate.h" +#import "NSWindowDelegate.h" + +@class AccountSummary, IMAPMailboxes, MFMailAccount, NSMutableSet, NSPopUpButton, NSTabView, NSTabViewItem, NSView, NSWindow, OofPanelController, Quota, SpecialMailboxes; + +@interface AccountInfo : NSObject +{ + NSTabView *_tabView; + NSPopUpButton *_accountPopup; + NSTabViewItem *_mailboxListTab; + NSTabViewItem *_outOfOfficeTab; + AccountSummary *_summary; + SpecialMailboxes *_specialMailboxes; + NSView *_specialMailboxesView; + Quota *_quota; + OofPanelController *_oofController; + IMAPMailboxes *_mailboxes; + MFMailAccount *_account; + NSMutableSet *_tabViewItemsThatHaveBeenSetup; + struct CGRect _oldFrame; + struct CGRect _newFrame; + NSWindow *_window; + NSView *_topView; +} + ++ (void)showForAccount:(id)arg1 withTab:(id)arg2; +@property(retain, nonatomic) NSView *topView; // @synthesize topView=_topView; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +- (void)windowWillClose:(id)arg1; +- (void)tabView:(id)arg1 didSelectTabViewItem:(id)arg2; +- (void)tabView:(id)arg1 willSelectTabViewItem:(id)arg2; +- (void)_handleOofError:(id)arg1; +- (void)accountPopupChanged:(id)arg1; +- (void)_showWithTab:(id)arg1; +- (void)_specialMailboxesDidChange:(id)arg1; +- (void)_accountsDidChange:(id)arg1; +- (void)_commitSpecialMailboxesChanges; +- (void)_setupTabViewItem:(id)arg1 oldTabViewItem:(id)arg2; +- (id)_getOwnerFromIdentifier:(id)arg1; +- (void)_setAccount:(id)arg1 setupSelectedTab:(BOOL)arg2; +- (id)_selectedAccount; +- (void)_configureAccountPopupSelectingAccount:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithMailAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AccountInfoTabOwner-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/AccountInfoTabOwner-Protocol.h new file mode 100644 index 00000000..f4ceaa74 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AccountInfoTabOwner-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol AccountInfoTabOwner +- (id)view; +- (void)accountInfoWillShowView:(id)arg1; +- (void)accountInfoWillHideView:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AccountPreferences.h b/MailHeaders/Mavericks_10.9.5/MailUI/AccountPreferences.h new file mode 100644 index 00000000..ef6ae384 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AccountPreferences.h @@ -0,0 +1,136 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "AccountStatusDataSourceDelegate.h" +#import "MVTerminationHandler.h" +#import "NSTabViewDelegate.h" +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class AccountDetails, AccountStatusDataSource, MFMailAccount, NSButton, NSIndexSet, NSMutableArray, NSMutableDictionary, NSPopUpButton, NSSegmentedControl, NSString, NSTabView, NSTableView, NSTextField, NSTextView, NSView; + +@interface AccountPreferences : NSPreferencesModule +{ + NSMutableArray *_accounts; + AccountDetails *_accountDetails; + NSTabView *_detailTabView; + NSTableView *_accountsTable; + NSSegmentedControl *_addRemoveAccountControl; + NSButton *_helpButton; + NSButton *_enableAccountCheckbox; + NSPopUpButton *_accountTypePopup; + NSTextField *_accountTypeString; + NSTextField *_accountName; + NSTextField *_fullNameField; + NSTextField *_emailAddressField; + NSTextField *_username; + NSTextField *_hostnameLabel; + NSTextField *_hostname; + NSTextField *_externalHostnameLabel; + NSTextField *_externalHostname; + NSTextField *_password; + AccountStatusDataSource *_deliveryASDS; + NSTextField *_deliveryAccountLabel; + NSPopUpButton *_smtpAccountPopup; + NSButton *_lockDeliveryAccountButton; + NSView *_outlookWebAccessView; + NSTextField *_outlookWebAccessServerName; + NSTextField *_aliasLabel; + NSPopUpButton *_aliasPopup; + NSView *_tlsCertificatesView; + NSPopUpButton *_tlsCertificatesPopup; + NSButton *_ewsAutodiscoveryCheckbox; + MFMailAccount *_accountBeingEdited; + MFMailAccount *_accountBeingValidated; + BOOL _accountBeingEditedWasEnabledWhenEditingStarted; + BOOL _creatingNewAccount; + BOOL _passwordFieldHasBeenTouched; + long long _indexOfNewAccount; + struct { + unsigned int userWantsToQuit:1; + unsigned int userWantsToClosePrefsPanel:1; + unsigned int userWantsToChangeSelection:1; + unsigned int userWantsToCreateNewAccount:1; + unsigned int userWantsToOpenNewAccountAssistant:1; + } _flags; + NSIndexSet *_selectedRows; + NSString *_selectedToolbarIdentifier; + BOOL _ignoreTableViewSelectionCallbacks; + BOOL _registeredForNotifications; + BOOL _lastPopupSelectionWasAOS; + NSMutableDictionary *_userEnteredInfo; + NSTextView *_accountSupportURLField; + NSTextField *_passwordLabel; +} + ++ (id)ispAccountInfoOfSelectedItemInAccountTypePopup:(id)arg1; ++ (Class)accountClassOfSelectedItemInAccountTypePopup:(id)arg1; ++ (void)selectAccoutType:(Class)arg1 inTypePopup:(id)arg2; ++ (void)configureAccountTypePopUp:(id)arg1; ++ (void)editServerList:(id)arg1 selectedAccount:(id)arg2; ++ (void)focusAccount:(id)arg1; ++ (void)initialize; ++ (void)_addAccountType:(id)arg1 class:(Class)arg2; +@property(nonatomic) NSTextField *passwordLabel; // @synthesize passwordLabel=_passwordLabel; +- (Class)_classForNewAccount; +- (id)_nameForNewAccount; +- (void)controlTextDidChange:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (id)_accountAtRow:(long long)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)editServerList:(id)arg1 selectedAccount:(id)arg2; +- (void)editAliases:(id)arg1; +- (void)setAlias:(id)arg1; +- (void)customAlias:(id)arg1; +- (void)accountTypeChanged:(id)arg1; +- (void)_accountTypePopupWillPopup:(id)arg1; +- (BOOL)_newSettingsAreValid; +- (void)_synchronizeAliasPopup; +- (void)_updateAliasPopup; +- (void)_updateAccountTypePopup; +- (void)_setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (void)tabView:(id)arg1 didSelectTabViewItem:(id)arg2; +- (void)_saveAccountBeingEdited; +- (void)_runAccountDetailPanelForAccount:(id)arg1; +- (void)_setupUIForAccountBeingEdited; +- (void)_reloadDeliveryAccountPopup:(id)arg1; +- (void)_clearAccountUI; +- (void)_setUIElementsEnabled:(BOOL)arg1; +- (void)toggleEWSAutodiscovery:(id)arg1; +- (void)_tableDidResize:(id)arg1; +- (BOOL)_allowSwitchingAwayFromSelectedAccount; +- (void)_handleRequestToSwitchAwayFromSelectedAccountWithResponse:(BOOL)arg1; +- (BOOL)_isAccountInformationDirty; +- (void)editMailAccount:(id)arg1; +- (void)editAccount:(id)arg1; +- (void)_removeAccountBeingCreated; +- (void)addRemoveAccountClick:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)toggleIncludeWhenCheckingForNewMail:(id)arg1; +- (void)toggleAccountEnabled:(id)arg1; +- (void)_saveAccountInfo; +- (BOOL)preferencesWindowShouldClose; +- (BOOL)moduleCanBeRemoved; +- (void)moduleWasInstalled; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)initializeFromDefaults; +- (id)init; +- (id)imageForPreferenceNamed:(id)arg1; +- (void)_accountDidChange:(id)arg1; +- (void)_accountsDidChange:(id)arg1; +- (void)awakeFromNib; +- (void)dealloc; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AccountSetupManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/AccountSetupManager.h new file mode 100644 index 00000000..3a582cd6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AccountSetupManager.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface AccountSetupManager : NSObject +{ +} + ++ (void)showAddAccountSheetInWindow:(id)arg1 completionHandler:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AccountStatusDataSource.h b/MailHeaders/Mavericks_10.9.5/MailUI/AccountStatusDataSource.h new file mode 100644 index 00000000..060b4086 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AccountStatusDataSource.h @@ -0,0 +1,93 @@ +/* + * 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 "NSMenuDelegate.h" +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class MFAccount, MFAccountStatus, NSArray, NSMutableDictionary, NSPopUpButton, NSTableView, NSTextView; + +@interface AccountStatusDataSource : NSObject +{ + NSPopUpButton *_popUp; + NSTableView *_table; + NSTextView *_ispInfoField; + NSMutableDictionary *_progressIndicators; + id _delegate; + MFAccountStatus *_statusProvider; + NSArray *_accounts; + MFAccount *_selectedAccount; + MFAccount *_dynamicAccount; + unsigned long long _accountFlags; + BOOL _disabled; + BOOL _usesOfflineStatusString; + BOOL _allowNone; + BOOL _allowEditServerList; + BOOL _omitStatus; + BOOL _selectedAccountIsLocked; + BOOL _delegateWantsTableDataSourceInvocations; + BOOL _allowAccountLocking; + BOOL _beConservative; +} + ++ (id)keyPathsForValuesAffectingTotalNumberOfAccounts; +@property BOOL beConservative; // @synthesize beConservative=_beConservative; +@property BOOL allowAccountLocking; // @synthesize allowAccountLocking=_allowAccountLocking; +@property BOOL delegateWantsTableDataSourceInvocations; // @synthesize delegateWantsTableDataSourceInvocations=_delegateWantsTableDataSourceInvocations; +@property BOOL selectedAccountIsLocked; // @synthesize selectedAccountIsLocked=_selectedAccountIsLocked; +@property BOOL omitStatus; // @synthesize omitStatus=_omitStatus; +@property BOOL allowEditServerList; // @synthesize allowEditServerList=_allowEditServerList; +@property BOOL allowNone; // @synthesize allowNone=_allowNone; +- (void)_updateUIWithAccountState:(id)arg1; +- (void)_updateUI; +- (void)_removeUI:(id)arg1; +- (void)_addUI:(id)arg1; +- (void)_reloadAccounts:(id)arg1; +- (void)_accountInfoDidChange:(id)arg1; +- (void)_didUpdateAccountStatus:(id)arg1; +- (void)_willRefreshStatusForAllAccounts:(id)arg1; +- (void)_tableViewDoubleClickAction:(id)arg1; +- (void)_removeAllIndicators:(id)arg1; +- (id)_accountForTableRow:(long long)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (unsigned long long)tableRowIndexOfAccount:(id)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)tableViewWillHide:(id)arg1; +- (void)tableViewWillBecomeVisible:(id)arg1; +- (void)configureTable:(id)arg1 ispInfoField:(id)arg2 handleDoubleClick:(BOOL)arg3 useOfflineStatusString:(BOOL)arg4; +- (void)toggleAccountLock:(id)arg1; +- (void)editServerList:(id)arg1; +- (void)_selectAccount:(id)arg1; +- (void)_synchronizePopUpWithSelectedAccount; +- (void)_popUpButtonWillPopUp:(id)arg1; +- (void)_configureMenuItem:(id)arg1 forAccount:(id)arg2; +- (BOOL)menu:(id)arg1 updateItem:(id)arg2 atIndex:(long long)arg3 shouldCancel:(BOOL)arg4; +- (unsigned long long)menuItemIndexOfAccount:(id)arg1; +- (long long)numberOfItemsInMenu:(id)arg1; +- (double)popUpSizeToFitWidth:(id)arg1; +- (void)configurePopUpButton:(id)arg1; +- (void)disable; +- (void)enable; +- (void)refresh; +- (id)_displayStringWithOfflineStatusForAccount:(id)arg1; +- (void)_resetObservedAccounts; +- (void)setDelegate:(id)arg1; +@property(readonly) unsigned long long totalNumberOfAccounts; +- (void)selectAnyAccount; +@property(retain) MFAccount *selectedAccount; +@property(retain) MFAccount *dynamicAccount; +@property(copy) NSArray *accounts; +@property(retain) MFAccountStatus *statusProvider; +- (void)dealloc; +- (id)init; +- (id)initWithDelegate:(id)arg1 forAccounts:(unsigned long long)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AccountStatusDataSourceDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/AccountStatusDataSourceDelegate-Protocol.h new file mode 100644 index 00000000..7f3c62df --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AccountStatusDataSourceDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol AccountStatusDataSourceDelegate + +@optional +- (void)configureMenuItem:(id)arg1 forAccount:(id)arg2; +- (void)showConnectionDoctor:(id)arg1; +- (void)editServerList:(id)arg1 selectedAccount:(id)arg2; +- (void)toggleAccountLock:(id)arg1; +- (void)addServer:(id)arg1; +- (void)setSelectedAccount:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AccountSummary.h b/MailHeaders/Mavericks_10.9.5/MailUI/AccountSummary.h new file mode 100644 index 00000000..98f892b7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AccountSummary.h @@ -0,0 +1,33 @@ +/* + * 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" + +@class NSTextField, NSView; + +@interface AccountSummary : NSObject +{ + NSTextField *_accountDescription; + NSTextField *_fullname; + NSTextField *_emailAddress; + NSTextField *_userName; + NSTextField *_incomingServer; + NSTextField *_incomingServerSSLMode; + NSTextField *_outgoingServer; + NSTextField *_outgoingServerSSLMode; + NSTextField *_outlookServer; + NSTextField *_outlookServerLabel; + NSView *_view; +} + +@property(retain, nonatomic) NSView *view; // @synthesize view=_view; +- (void)setupUIWithAccount:(id)arg1; +- (void)setupUIWithAccount:(id)arg1 deliveryAccount:(id)arg2; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ActivityAggregateView.h b/MailHeaders/Mavericks_10.9.5/MailUI/ActivityAggregateView.h new file mode 100644 index 00000000..72c6b4d0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ActivityAggregateView.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class MCActivityAggregate, NSButton, NSProgressIndicator, NSTextField; + +@interface ActivityAggregateView : NSView +{ + NSTextField *_nameTextField; + NSTextField *_statusTextField; + NSButton *_stopButton; + NSProgressIndicator *_progressIndicator; + double _nameTextFieldSpace; + double _statusTextFieldSpace; + double _progressIndicatorSpace; + MCActivityAggregate *_activityAggregate; +} + +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_updateNameTextField; +- (void)awakeFromNib; +- (void)setActivityAggregate:(id)arg1; +- (id)activityAggregate; +- (void)dealloc; +- (void)_activityAggregateViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ActivityProgressPanel.h b/MailHeaders/Mavericks_10.9.5/MailUI/ActivityProgressPanel.h new file mode 100644 index 00000000..5c32c9a8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ActivityProgressPanel.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class MCActivityMonitor, NSPanel, NSProgressIndicator, NSTextField, NSTimer; + +@interface ActivityProgressPanel : NSObject +{ + MCActivityMonitor *_monitor; + NSTimer *_timer; + NSPanel *_progressPanel; + NSProgressIndicator *_progressBar; + NSTextField *_statusMessageField; +} + +@property(nonatomic) NSTextField *statusMessageField; // @synthesize statusMessageField=_statusMessageField; +@property(nonatomic) NSProgressIndicator *progressBar; // @synthesize progressBar=_progressBar; +@property(retain, nonatomic) NSPanel *progressPanel; // @synthesize progressPanel=_progressPanel; +- (void)cancel:(id)arg1; +- (void)_activityEnded:(id)arg1; +- (void)_activityStarted:(id)arg1; +- (void)_updateProgressBar; +- (void)setStatusMessage:(id)arg1; +- (id)statusMessage; +- (void)setActivityMonitor:(id)arg1; +- (id)activityMonitor; +- (void)dealloc; +- (void)_invalidateTimer; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ActivityViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/ActivityViewController.h new file mode 100644 index 00000000..cd63ad9b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ActivityViewController.h @@ -0,0 +1,69 @@ +/* + * 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 "NSAnimationDelegate.h" + +@class ActivityAggregateView, MailboxPaneBottomShadowView, NSButton, NSLayoutConstraint, NSMutableArray, NSMutableSet, NSOutlineView, NSTextField, NSView, SourceListBackgroundView; + +@interface ActivityViewController : NSObject +{ + NSMutableArray *_views; + NSMutableArray *_viewQueue; + NSMutableSet *_viewsPendingHide; + double _activityViewHeight; + double _mailActivityViewHeight; + BOOL _loadingAggregateView; + NSTextField *_titleTextField; + SourceListBackgroundView *_contentView; + NSButton *_mailActivityToggleButton; + MailboxPaneBottomShadowView *_bottomShadowView; + NSOutlineView *_mailboxesOutline; + NSView *_mailboxesContent; + ActivityAggregateView *_aggregateView; + NSView *_inView; + NSView *_outView; + NSView *_saveView; + NSLayoutConstraint *_activityViewHeightConstraint; +} + +@property NSLayoutConstraint *activityViewHeightConstraint; // @synthesize activityViewHeightConstraint=_activityViewHeightConstraint; +@property(retain, nonatomic) NSView *saveView; // @synthesize saveView=_saveView; +@property(retain, nonatomic) NSView *outView; // @synthesize outView=_outView; +@property(retain, nonatomic) NSView *inView; // @synthesize inView=_inView; +@property(nonatomic) BOOL loadingAggregateView; // @synthesize loadingAggregateView=_loadingAggregateView; +@property(retain, nonatomic) ActivityAggregateView *aggregateView; // @synthesize aggregateView=_aggregateView; +@property(retain, nonatomic) NSView *mailboxesContent; // @synthesize mailboxesContent=_mailboxesContent; +@property(nonatomic) NSOutlineView *mailboxesOutline; // @synthesize mailboxesOutline=_mailboxesOutline; +@property(nonatomic) MailboxPaneBottomShadowView *bottomShadowView; // @synthesize bottomShadowView=_bottomShadowView; +@property(nonatomic) NSButton *mailActivityToggleButton; // @synthesize mailActivityToggleButton=_mailActivityToggleButton; +@property(nonatomic) SourceListBackgroundView *contentView; // @synthesize contentView=_contentView; +@property(nonatomic) NSTextField *titleTextField; // @synthesize titleTextField=_titleTextField; +- (void)_mailboxesHeightChanged:(id)arg1; +- (BOOL)_shouldHideShadow; +- (double)_activityAnimationDuration; +- (void)_setActivityViewHeight:(double)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_hideViews:(id)arg1; +- (void)_hideView:(id)arg1; +- (void)_showView:(id)arg1; +- (BOOL)removeViewFromQueue:(id)arg1; +- (void)addViewToQueue:(id)arg1; +- (id)_layoutString; +- (void)toggleDisplay:(id)arg1; +- (void)configureTitleTextField; +- (void)configureActivityAggegateViews; +- (id)_activityAggregateViewForAggregate:(id)arg1 withKeyPathToObserve:(id)arg2; +- (id)_loadActivityAggregateView; +- (void)_setVisible:(BOOL)arg1; +- (void)_unregisterObservedKeyPaths; +- (void)dealloc; +- (void)awakeFromNib; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ActivityViewEntry.h b/MailHeaders/Mavericks_10.9.5/MailUI/ActivityViewEntry.h new file mode 100644 index 00000000..0e646660 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ActivityViewEntry.h @@ -0,0 +1,40 @@ +/* + * 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" + +@class ActivityViewer, MCActivityMonitor, NSButton, NSProgressIndicator, NSTextField, NSView; + +@interface ActivityViewEntry : NSObject +{ + MCActivityMonitor *_activity; + int _lastChangeCount; + ActivityViewer *_viewer; + NSView *_box; + NSProgressIndicator *_progressBar; + NSTextField *_statusField; + NSButton *_stopButton; + NSTextField *_taskNameField; +} + +@property(nonatomic) NSTextField *taskNameField; // @synthesize taskNameField=_taskNameField; +@property(nonatomic) NSButton *stopButton; // @synthesize stopButton=_stopButton; +@property(nonatomic) NSTextField *statusField; // @synthesize statusField=_statusField; +@property(nonatomic) NSProgressIndicator *progressBar; // @synthesize progressBar=_progressBar; +@property(retain, nonatomic) NSView *box; // @synthesize box=_box; +- (void)setupUI; +- (BOOL)inUse; +- (void)stop:(id)arg1; +- (void)_handleActivityEnded:(id)arg1; +- (void)update; +- (id)monitoredActivity; +- (void)setMonitoredActivity:(id)arg1; +- (void)awakeFromNib; +- (void)dealloc; +- (id)initForViewer:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ActivityViewer.h b/MailHeaders/Mavericks_10.9.5/MailUI/ActivityViewer.h new file mode 100644 index 00000000..ee0a3b23 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ActivityViewer.h @@ -0,0 +1,51 @@ +/* + * 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 "MVTerminationHandler.h" +#import "NSWindowDelegate.h" + +@class FlippedView, NSMutableArray, NSPanel, NSScrollView, NSTimer; + +@interface ActivityViewer : NSObject +{ + NSMutableArray *_entries; + long long _numActiveEntries; + NSTimer *_updateTimer; + BOOL _userIsBeingPromptedForTermination; + FlippedView *_docView; + NSScrollView *_scrollView; + NSPanel *_window; +} + +@property(retain, nonatomic) NSPanel *window; // @synthesize window=_window; +@property(nonatomic) NSScrollView *scrollView; // @synthesize scrollView=_scrollView; +@property(nonatomic) FlippedView *docView; // @synthesize docView=_docView; +- (struct CGRect)windowWillUseStandardFrame:(id)arg1 defaultFrame:(struct CGRect)arg2; +- (void)windowWillClose:(id)arg1; +- (BOOL)windowShouldClose:(id)arg1; +- (id)statusMessageForTarget:(id)arg1; +- (void)toggleActivityViewerVisible; +- (BOOL)isActivityViewerVisible; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)_promptUserForTermination; +- (BOOL)needsToPromptUserBeforeTermination:(id)arg1; +- (long long)countOfBackgroundActivities; +- (BOOL)hasBackgroundActivity; +- (void)_tileViews; +- (void)removeEntry:(id)arg1; +- (void)_appendEntry:(id)arg1; +- (void)_addViewToViewerWindow:(id)arg1; +- (void)_updateAllEntries; +- (void)_handleNewActivity:(id)arg1; +- (void)awakeFromNib; +- (void)initializeFromDefaults; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ActivityViewerMailSound.h b/MailHeaders/Mavericks_10.9.5/MailUI/ActivityViewerMailSound.h new file mode 100644 index 00000000..a864b20a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ActivityViewerMailSound.h @@ -0,0 +1,26 @@ +/* + * 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" + +@interface ActivityViewerMailSound : NSObject +{ + BOOL _fetchWasRequested; + BOOL _waitingForServerResponse; + BOOL _shouldPlayNoMailSound; + long long _backgroundFetchesInProgress; +} + +- (void)_mailFetchComplete; +- (BOOL)_isActivityInteresting:(id)arg1 isStarting:(BOOL)arg2; +- (void)_monitoredActivityEnded:(id)arg1; +- (void)_monitoredActivityStarted:(id)arg1; +- (void)beginFetch:(BOOL)arg1; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AddressHistoryController.h b/MailHeaders/Mavericks_10.9.5/MailUI/AddressHistoryController.h new file mode 100644 index 00000000..49398eac --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AddressHistoryController.h @@ -0,0 +1,63 @@ +/* + * 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 "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class NSButton, NSImage, NSMutableArray, NSMutableDictionary, NSOperationQueue, NSSearchField, NSString, NSTableView, NSWindow; + +@interface AddressHistoryController : NSObject +{ + NSMutableArray *_historyRecords; + NSString *_sortColumn; + BOOL _sortIsAscending; + NSImage *_addressBookPersonImage; + NSTableView *_historyTableView; + NSButton *_addToContactsButton; + NSWindow *_window; + NSSearchField *_searchField; + NSMutableDictionary *_abRecordMap; + NSOperationQueue *_fetchQueue; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly) NSOperationQueue *fetchQueue; // @synthesize fetchQueue=_fetchQueue; +@property(retain, nonatomic) NSMutableDictionary *abRecordMap; // @synthesize abRecordMap=_abRecordMap; +@property(nonatomic) NSSearchField *searchField; // @synthesize searchField=_searchField; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +@property(nonatomic) NSButton *addToContactsButton; // @synthesize addToContactsButton=_addToContactsButton; +@property(nonatomic) NSTableView *historyTableView; // @synthesize historyTableView=_historyTableView; +- (id)_recordForAddress:(id)arg1; +- (void)_addressBookDidChange:(id)arg1; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (void)_showColumnSortIndicator; +- (void)_sortHistoryData; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)openContacts:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)_cancelSearch:(id)arg1; +- (void)search:(id)arg1; +- (void)searchIndex:(id)arg1; +- (void)deleteFromHistory:(id)arg1; +- (void)addToContacts:(id)arg1; +- (void)showAddressHistory; +- (void)_fetchRecentsDataWithCompletionBlock:(id)arg1; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AddressPicker.h b/MailHeaders/Mavericks_10.9.5/MailUI/AddressPicker.h new file mode 100644 index 00000000..030cd96a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AddressPicker.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowController.h" + +#import "NSWindowDelegate.h" + +@class ABPeoplePickerView; + +@interface AddressPicker : NSWindowController +{ + ABPeoplePickerView *_pickerView; + BOOL _selectionIsValid; +} + ++ (void)restoreFromDefaults; ++ (void)showOrHideAddressPicker; +@property(nonatomic) BOOL selectionIsValid; // @synthesize selectionIsValid=_selectionIsValid; +- (void)_ensureSelectionIsValid:(id)arg1; +- (id)_formattedAddressForRecord:(id)arg1; +- (void)_putSelectionInHeader:(id)arg1; +- (void)putSelectionInBestHeader:(id)arg1; +- (void)putSelectionInBCC:(id)arg1; +- (void)putSelectionInCC:(id)arg1; +- (void)putSelectionInTo:(id)arg1; +- (id)windowNibName; +- (void)awakeFromNib; +- (void)dealloc; +- (void)windowWillClose:(id)arg1; +- (void)_showOrHideWindow; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AppleScriptPopUpButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/AppleScriptPopUpButton.h new file mode 100644 index 00000000..6810f242 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AppleScriptPopUpButton.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@class NSMenu, NSString, NSURL; + +@interface AppleScriptPopUpButton : NSPopUpButton +{ + NSMenu *_appleScriptFilesMenu; + BOOL _amIAwake; + NSString *_previouslySelectedItem; + NSURL *_applicationScriptsDirectoryURL; + id _delegate; +} + +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; +@property(retain) NSURL *applicationScriptsDirectoryURL; // @synthesize applicationScriptsDirectoryURL=_applicationScriptsDirectoryURL; +@property(retain) NSString *previouslySelectedItem; // @synthesize previouslySelectedItem=_previouslySelectedItem; +- (void)_invalidateAppleScriptFilesMenu; +- (void)_popupMenuChanged:(id)arg1; +- (void)resetPopUp; +- (id)selectedAppleScriptPath; +- (void)selectAppleScriptPath:(id)arg1; +- (void)_configureAppleScriptFilesMenu; +- (id)_appleScriptFilesFromMagicDirectory; +- (void)viewDidMoveToWindow; +- (id)menu; +- (void)dealloc; +- (void)awakeFromNib; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/Assistant.h b/MailHeaders/Mavericks_10.9.5/MailUI/Assistant.h new file mode 100644 index 00000000..51d5f67d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/Assistant.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSButton, NSView; + +@interface Assistant : NSObject +{ + NSView *_parentView; + NSButton *_backButton; + NSButton *_forwardButton; + NSButton *_cancelButton; + NSButton *_helpButton; + id _delegate; +} + +- (void)setupKeyViewLoop; +- (id)windowTitle; +- (void)weAreDone; +- (BOOL)shouldStop; +- (void)goBackward; +- (void)goForward; +- (void)stop; +- (void)start; +- (void)setDelegate:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithAssistentManager:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AssistantDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/AssistantDelegate-Protocol.h new file mode 100644 index 00000000..5fe6d269 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AssistantDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol AssistantDelegate +- (void)assistantDidFinish:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AssistantManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/AssistantManager.h new file mode 100644 index 00000000..b1269847 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AssistantManager.h @@ -0,0 +1,57 @@ +/* + * 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 "AssistantDelegate.h" + +@class Assistant, NSButton, NSEvent, NSView, NSWindow; + +@interface AssistantManager : NSObject +{ + NSView *_assistantContainerView; + NSButton *_backButton; + NSButton *_forwardButton; + NSButton *_cancelButton; + NSButton *_helpButton; + long long _type; + Assistant *_assistant; + BOOL _userWantsToQuit; + NSWindow *_window; + NSEvent *_libraryUpgradeCompletedEvent; + AssistantManager *_me; +} + ++ (BOOL)isImporting; ++ (id)openAssistantOfType:(long long)arg1 modalForWindow:(id)arg2 userWantsToQuit:(char *)arg3; ++ (id)openAssistantOfType:(long long)arg1 modalForWindow:(id)arg2; +@property(retain, nonatomic) AssistantManager *me; // @synthesize me=_me; +@property(retain, nonatomic) NSEvent *libraryUpgradeCompletedEvent; // @synthesize libraryUpgradeCompletedEvent=_libraryUpgradeCompletedEvent; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +- (void)assistantDidFinish:(id)arg1; +- (void)_moveWindowToFront:(id)arg1; +- (void)_terminate; +- (void)_sheetWillBegin:(id)arg1; +- (void)_windowDidBecomeKey:(id)arg1; +- (void)_showInWindow:(id)arg1; +- (void)_start; +- (BOOL)_userWantsToQuit; +- (void)cancel:(id)arg1; +- (void)forward:(id)arg1; +- (void)back:(id)arg1; +- (id)helpButton; +- (id)cancelButton; +- (id)forwardButton; +- (id)backButton; +- (id)assistantContainerView; +- (void)dealloc; +- (id)_initWithType:(long long)arg1; +@property(retain, nonatomic) Assistant *assistant; +- (id)init; +- (id)_newAssistantOfType:(long long)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AttachmentDragSession.h b/MailHeaders/Mavericks_10.9.5/MailUI/AttachmentDragSession.h new file mode 100644 index 00000000..635bf4b6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AttachmentDragSession.h @@ -0,0 +1,31 @@ +/* + * 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" + +@class NSMutableArray, NSView; + +@interface AttachmentDragSession : NSObject +{ + NSView *_sourceView; + NSMutableArray *_attachments; +} + +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; +- (id)namesOfPromisedFilesDroppedAtDestination:(id)arg1; +- (BOOL)ignoreModifierKeysWhileDragging; +- (void)draggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; +- (void)draggedImage:(id)arg1 endedAt:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (void)draggedImage:(id)arg1 beganAt:(struct CGPoint)arg2; +- (unsigned long long)draggingSourceOperationMaskForLocal:(BOOL)arg1; +- (BOOL)startDragFromPoint:(struct CGPoint)arg1 event:(id)arg2 image:(id)arg3; +- (id)attachments; +- (id)sourceView; +- (id)initWithSourceView:(id)arg1 attachments:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AttachmentLoader.h b/MailHeaders/Mavericks_10.9.5/MailUI/AttachmentLoader.h new file mode 100644 index 00000000..e422ad87 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AttachmentLoader.h @@ -0,0 +1,41 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityMonitor, NSMutableArray; + +@interface AttachmentLoader : NSObject +{ + id _store; + MCActivityMonitor *_monitor; + NSMutableArray *_entries; +} + ++ (id)_makeLoaderForStore:(id)arg1; ++ (id)_loaderForStore:(id)arg1; ++ (void)cancelInlineLoads:(id)arg1 window:(id)arg2; ++ (void)startLoadingInlineAttachments:(id)arg1 window:(id)arg2 delegate:(id)arg3; ++ (id)loaderForSavingAttachment:(id)arg1 window:(id)arg2 path:(id)arg3; ++ (id)loaderForAttachmentViewController:(id)arg1 window:(id)arg2 reason:(int)arg3 application:(id)arg4 attachmentDirectory:(id)arg5; ++ (id)loaderForAttachment:(id)arg1 window:(id)arg2 reason:(int)arg3 application:(id)arg4 attachmentDirectory:(id)arg5; +- (BOOL)_addOrReprioritizeEntryEqualTo:(id)arg1; +- (void)_addAttachmentsToFetch:(id)arg1 fromWindow:(id)arg2 delegate:(id)arg3; +- (void)_startBackgroundThreadIfNeeded; +- (void)_setStore:(id)arg1; +- (void)_mailboxBecameInvalid; +- (void)_monitorQuit:(id)arg1; +- (void)_setMonitor:(id)arg1; +- (void)_processAttachmentQueue; +- (void)_didFetchDataForQueueEntry:(id)arg1; +- (void)_cancelInlineLoadsForWindow:(id)arg1; +- (id)init; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AttachmentManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/AttachmentManager.h new file mode 100644 index 00000000..5cf8e526 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AttachmentManager.h @@ -0,0 +1,122 @@ +/* + * 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 "MCActivityTarget.h" +#import "MVTerminationHandler.h" +#import "NSSharingServiceDelegate.h" +#import "NSSharingServicePickerDelegate.h" +#import "QLPreviewPanelDataSource.h" +#import "QLPreviewPanelDelegate.h" +#import "QLSeamlessOpenerDelegate.h" + +@class MCInvocationQueue, MFAttachmentViewController, NSMutableArray, NSMutableDictionary, NSTimer; + +@interface AttachmentManager : NSObject +{ + NSMutableArray *_openedAttachmentPaths; + NSMutableDictionary *_openedAttachmentMessageIDs; + NSMutableArray *_messageIDPurgeQueue; + NSTimer *_purgeTimer; + long long _purgeBehavior; + NSMutableDictionary *_quickLookAttachments; + MCInvocationQueue *_deletionHandlerQueue; + BOOL _isDirty; + MFAttachmentViewController *_controllerForImageToShare; +} + ++ (BOOL)attachmentPurgingIsEnabled; ++ (id)_openedAttachmentListPath; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (void)initialize; +@property(retain, nonatomic) MFAttachmentViewController *controllerForImageToShare; // @synthesize controllerForImageToShare=_controllerForImageToShare; +- (void)_noteFileSystemChanged:(id)arg1; +- (id)_fileForSavedFileWrapper:(id)arg1 directory:(id)arg2 makePathUnique:(BOOL)arg3; +- (BOOL)_immediatelyOpenAttachment:(id)arg1 withApplicationURL:(id)arg2 window:(id)arg3 attachmentDirectory:(id)arg4 reason:(int)arg5; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)_handleMessageDeleted:(id)arg1; +- (void)_messageDeleted:(id)arg1; +- (void)_schedulePurgeOfMessageIDs:(id)arg1; +- (void)_scheduleMessageIDPurge; +- (void)_purgeMessageIDs; +- (void)_purgeAttachments:(id)arg1; +- (void)_reallyPurgeAttachments; +- (void)_finishTerminatingAttachmentPurge; +- (void)_synchronouslyPurgeAttachments; +- (BOOL)_allMessagesWithMessageIDAreDeletedOrTrashed:(id)arg1; +- (void)_saveOpenedAttachmentsList; +- (void)_scheduleAttachmentListSave; +- (void)_setDirty:(BOOL)arg1; +- (void)_addPurgeEntryForAttachmentAtPath:(id)arg1 modDate:(id)arg2 messageID:(id)arg3 partNumber:(id)arg4; +- (void)_addOrReplaceEntry:(id)arg1 inAttachmentList:(id)arg2; +- (void)_setupOpenedAttachmentsMessageIDMap; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)seamlessOpener:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (BOOL)_immediatelyOpenAttachment:(id)arg1 path:(id)arg2 window:(id)arg3 application:(id)arg4 reason:(int)arg5 exists:(BOOL)arg6; +- (BOOL)_sameAttachmentAsBefore:(id)arg1 path:(id)arg2; +- (BOOL)_saveAttachmentsFromMessages:(id)arg1 toDirectory:(id)arg2 error:(id *)arg3; +- (void)_saveAttachmentsFromMessages:(id)arg1 toDirectory:(id)arg2; +- (BOOL)_saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3 error:(id *)arg4; +- (void)_saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3; +- (void)_saveAttachment:(id)arg1 toPath:(id)arg2 window:(id)arg3; +- (void)_immediatelySaveFileWrapper:(id)arg1 path:(id)arg2 window:(id)arg3; +- (void)_openPathsForAttachmentsWithDictionary:(id)arg1; +- (int)_openFullPath:(id)arg1 withAppURL:(struct __CFURL *)arg2 options:(unsigned int)arg3; +- (id)previewPanel:(id)arg1 previewItemAtIndex:(long long)arg2; +- (long long)numberOfPreviewItemsInPreviewPanel:(id)arg1; +- (id)sharingService:(id)arg1 sourceWindowForShareItems:(id)arg2 sharingContentScope:(long long *)arg3; +- (id)sharingService:(id)arg1 transitionImageForShareItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)sharingService:(id)arg1 sourceFrameOnScreenForShareItem:(id)arg2; +- (id)sharingServicePicker:(id)arg1 delegateForSharingService:(id)arg2; +- (void)sharingService:(id)arg1 didShareItems:(id)arg2; +- (id)sharingServicePicker:(id)arg1 sharingServicesForItems:(id)arg2 proposedSharingServices:(id)arg3; +- (void)writeImageAttachmentToPasteboard:(id)arg1; +- (void)saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3 window:(id)arg4; +- (id)contextualMenuForAttachments:(id)arg1 clickedAttachment:(id)arg2 forEditing:(BOOL)arg3; +- (void)_configureOpenWithMenu:(id)arg1 forAttachments:(id)arg2; +- (BOOL)openFileAtPath:(id)arg1 withApplication:(id)arg2 stayInBackground:(BOOL)arg3; +- (BOOL)openFileURL:(id)arg1 stayInBackground:(BOOL)arg2 window:(id)arg3; +- (void)chooseApplicationToOpenAttachments:(id)arg1 needsSave:(BOOL)arg2 window:(id)arg3 delegate:(id)arg4; +- (BOOL)openInvitationAttachments:(id)arg1 openImmediately:(BOOL)arg2; +- (BOOL)openTemporaryAttachments:(id)arg1 applicationBundle:(id)arg2 window:(id)arg3; +- (void)saveAttachmentsToDownloadDirectory:(id)arg1 window:(id)arg2; +- (void)_runSavePanelForAttachments:(id)arg1 messages:(id)arg2 window:(id)arg3; +- (void)runSavePanelForAttachments:(id)arg1 window:(id)arg2; +- (void)saveAttachmentsFromMessages:(id)arg1 window:(id)arg2; +- (void)_openAttachmentsWithDictionary:(id)arg1; +- (void)openAttachments:(id)arg1 applicationURL:(id)arg2 window:(id)arg3 delegate:(id)arg4; +- (void)downloadAttachments:(id)arg1 window:(id)arg2; +- (void)quickLookAttachmentsFromMessages:(id)arg1 window:(id)arg2; +- (void)quickLookAttachments:(id)arg1 window:(id)arg2; +- (void)windowWillClose:(id)arg1; +- (BOOL)previewPanel:(id)arg1 shouldOpenURL:(id)arg2 forPreviewItem:(id)arg3; +- (id)previewPanel:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)previewPanel:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (void)_addAttachmentToQuickLookPanel:(id)arg1 attachmentDirectory:(id)arg2 window:(id)arg3; +- (BOOL)_addAttachmentForQuickLook:(id)arg1 attachmentDirectory:(id)arg2; +- (void)_tellControllerAttachmentIsDownloaded:(id)arg1; +- (void)_downloadCompleted:(id)arg1; +- (void)_openFromDownloadedNotification:(id)arg1; +- (id)pathsForDraggedAttachments:(id)arg1 fromView:(id)arg2; +- (BOOL)dragAttachments:(id)arg1 startPoint:(struct CGPoint)arg2 view:(id)arg3 event:(id)arg4 image:(id)arg5 delegate:(id)arg6; +- (void)cancelLoadingInlineAttachmentsForDisplay:(id)arg1; +- (void)beginLoadingInlineAttachmentsForDisplay:(id)arg1; +- (void)setAttachmentPurgingBehavior:(long long)arg1; +- (void)disableAttachmentPurging; +- (void)enableAttachmentPurging; +- (void)initializeAttachmentPurging; +- (long long)attachmentPurgingBehavior; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AuthSchemeBindingProxy.h b/MailHeaders/Mavericks_10.9.5/MailUI/AuthSchemeBindingProxy.h new file mode 100644 index 00000000..3c2214ca --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AuthSchemeBindingProxy.h @@ -0,0 +1,30 @@ +/* + * 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" + +@class MCAuthScheme; + +@interface AuthSchemeBindingProxy : NSObject +{ + BOOL _isSeparator; + MCAuthScheme *_authScheme; +} + ++ (id)separatorProxy; ++ (id)noneProxy; +@property BOOL isSeparator; // @synthesize isSeparator=_isSeparator; +@property(retain) MCAuthScheme *authScheme; // @synthesize authScheme=_authScheme; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (id)name; +- (id)humanReadableName; +- (void)dealloc; +- (id)initWithAuthScheme:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/AuthSchemeValueTransformer.h b/MailHeaders/Mavericks_10.9.5/MailUI/AuthSchemeValueTransformer.h new file mode 100644 index 00000000..5f071f91 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/AuthSchemeValueTransformer.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSValueTransformer.h" + +@interface AuthSchemeValueTransformer : NSValueTransformer +{ +} + ++ (BOOL)allowsReverseTransformation; ++ (Class)transformedValueClass; +- (id)reverseTransformedValue:(id)arg1; +- (id)transformedValue:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/BannerBackgroundView.h b/MailHeaders/Mavericks_10.9.5/MailUI/BannerBackgroundView.h new file mode 100644 index 00000000..38d6818b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/BannerBackgroundView.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface BannerBackgroundView : NSView +{ + long long _bannerBackgroundStyle; +} + +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsIgnored; +@property(nonatomic) long long bannerBackgroundStyle; +- (void)updateLayer; +- (void)_bannerBackgroundViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/BannerContainerViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/BannerContainerViewController.h new file mode 100644 index 00000000..9b971b31 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/BannerContainerViewController.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +@class MessageWebDocumentView, NSArray, NSLayoutConstraint; + +@interface BannerContainerViewController : NSViewController +{ + BOOL _loaded; + NSLayoutConstraint *_heightConstraint; + MessageWebDocumentView *_webDocumentView; + NSArray *_bannerViewControllers; +} + ++ (id)_showingPassbookBannerBackgroundColor; ++ (id)_defaultBackgroundColor; +@property(retain, nonatomic) NSArray *bannerViewControllers; // @synthesize bannerViewControllers=_bannerViewControllers; +@property(nonatomic) BOOL loaded; // @synthesize loaded=_loaded; +@property(retain, nonatomic) MessageWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(nonatomic) NSLayoutConstraint *heightConstraint; // @synthesize heightConstraint=_heightConstraint; +- (void)updateBannerDisplay; +- (void)addSubviewForBanner:(id)arg1; +- (void)updateLoaded; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +- (void)setView:(id)arg1; +- (void)dealloc; +- (void)_bannerContainerViewControllerCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/BannerImageView.h b/MailHeaders/Mavericks_10.9.5/MailUI/BannerImageView.h new file mode 100644 index 00000000..9212a699 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/BannerImageView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageView.h" + +@interface BannerImageView : NSImageView +{ + CDStruct_3c058996 _edgeInsets; +} + +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsIgnored; +- (CDStruct_3c058996)alignmentRectInsets; +- (void)setAlignmentRectInsets:(CDStruct_3c058996)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/BannerTextFieldCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/BannerTextFieldCell.h new file mode 100644 index 00000000..c6f899bc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/BannerTextFieldCell.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface BannerTextFieldCell : NSTextFieldCell +{ +} + +- (void)setAttributedStringValue:(id)arg1; +- (void)setStringValue:(id)arg1; +- (id)_stringAttributes; +- (void)setBackgroundStyle:(long long)arg1; +- (void)_bannerTextFieldCellCommonInit; +- (id)initImageCell:(id)arg1; +- (id)initTextCell:(id)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/BannerViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/BannerViewController.h new file mode 100644 index 00000000..fcd20a22 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/BannerViewController.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +@class BannerContainerViewController, MUIWebDocument, MessageWebDocumentView, NSColor; + +@interface BannerViewController : NSViewController +{ + BOOL _loaded; + BOOL _wantsDisplay; + BOOL _viewIsLoaded; + BannerContainerViewController *_container; +} + ++ (id)keyPathsForValuesAffectingWebDocument; ++ (id)keyPathsForValuesAffectingWebDocumentView; +@property(nonatomic) BOOL viewIsLoaded; // @synthesize viewIsLoaded=_viewIsLoaded; +@property(nonatomic) BannerContainerViewController *container; // @synthesize container=_container; +- (void)updateWantsDisplay; +- (void)updateBannerContents; +@property(nonatomic) BOOL wantsDisplay; +@property(nonatomic) BOOL loaded; +@property(readonly, nonatomic) MUIWebDocument *webDocument; +@property(readonly, nonatomic) MessageWebDocumentView *webDocumentView; +@property(readonly, nonatomic) NSColor *backgroundColor; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +- (void)setView:(id)arg1; +- (id)view; +- (id)nibBundle; +- (id)nibName; +- (id)initWithCoder:(id)arg1; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; +- (id)initWithBannerContainerViewController:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/BindingsEnabledMenu.h b/MailHeaders/Mavericks_10.9.5/MailUI/BindingsEnabledMenu.h new file mode 100644 index 00000000..ebb279eb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/BindingsEnabledMenu.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMenu.h" + +@interface BindingsEnabledMenu : NSMenu +{ +} + +- (id)insertItemWithTitle:(id)arg1 action:(SEL)arg2 keyEquivalent:(id)arg3 atIndex:(long long)arg4; +- (id)addItemWithTitle:(id)arg1 action:(SEL)arg2 keyEquivalent:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/BlockedWebPluginView.h b/MailHeaders/Mavericks_10.9.5/MailUI/BlockedWebPluginView.h new file mode 100644 index 00000000..6425a08f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/BlockedWebPluginView.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface BlockedWebPluginView : NSView +{ +} + +- (void)_blockedWebPluginViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/BorderlessToolbarItem.h b/MailHeaders/Mavericks_10.9.5/MailUI/BorderlessToolbarItem.h new file mode 100644 index 00000000..ba46156a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/BorderlessToolbarItem.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@class NSImage; + +@interface BorderlessToolbarItem : NSToolbarItem +{ + double _width; +} + +@property(retain) NSImage *pressedImage; +@property(retain) NSImage *inactiveImage; +- (void)setImage:(id)arg1; +- (id)image; +- (void)setLabel:(id)arg1; +- (id)control; +- (void)validate; +- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; +- (void)setWidth:(double)arg1; +- (id)initWithItemIdentifier:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/BusyStatusErrorWindowDelegate.h b/MailHeaders/Mavericks_10.9.5/MailUI/BusyStatusErrorWindowDelegate.h new file mode 100644 index 00000000..1b943909 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/BusyStatusErrorWindowDelegate.h @@ -0,0 +1,34 @@ +/* + * 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 "DynamicErrorWindowDelegate.h" + +@class MFDatabaseRecoverer; + +@interface BusyStatusErrorWindowDelegate : NSObject +{ + MFDatabaseRecoverer *_recoverer; +} + +@property MFDatabaseRecoverer *recoverer; // @synthesize recoverer=_recoverer; +- (id)_capitalizedStringForDatabase; +- (id)_stringForDatabase; +- (unsigned long long)helpTopicForDiagnosis:(long long)arg1; +- (void)rightActionSelectedWithDiagnosis:(long long)arg1; +- (void)leftActionSelectedWithDiagnosis:(long long)arg1; +- (id)rightButtonTextForErrorDiagnosis:(long long)arg1; +- (id)leftButtonTextForErrorDiagnosis:(long long)arg1; +- (id)errorDescriptionForErrorDiagnosis:(long long)arg1; +- (id)errorMessageForErrorDiagnosis:(long long)arg1; +- (BOOL)displayIndeterminateProgress; +- (void)dealloc; +- (id)init; +- (id)initWithRecoverer:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ButtonIconTextCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/ButtonIconTextCell.h new file mode 100644 index 00000000..083d515c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ButtonIconTextCell.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@class NSImage; + +@interface ButtonIconTextCell : NSButtonCell +{ + NSImage *_icon; + BOOL _cellEnabled; + struct CGRect _cellRect; +} + +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (struct CGRect)drawTitle:(id)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (BOOL)cellEnabled; +- (void)setCellEnabled:(BOOL)arg1; +- (struct CGSize)iconSizeForFrame:(struct CGRect)arg1; +- (id)icon; +- (void)setIcon:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/CALayer-MailCALayerAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/CALayer-MailCALayerAdditions.h new file mode 100644 index 00000000..8da254d1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/CALayer-MailCALayerAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "CALayer.h" + +@interface CALayer (MailCALayerAdditions) +- (id)snapshotFromPresentationLayer; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/CDStructures.h b/MailHeaders/Mavericks_10.9.5/MailUI/CDStructures.h new file mode 100644 index 00000000..0db6caf7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/CDStructures.h @@ -0,0 +1,56 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#pragma mark Named Structures + +struct CGAffineTransform { + double _field1; + double _field2; + double _field3; + double _field4; + double _field5; + double _field6; +}; + +struct CGPoint { + double x; + double y; +}; + +struct CGRect { + struct CGPoint origin; + struct CGSize size; +}; + +struct CGSize { + double width; + double height; +}; + +struct QuotaSimpleSortDescriptor { + void *comparator; + char ascending; +}; + +struct _NSRange { + unsigned long long location; + unsigned long long length; +}; + +struct menuItemInfo { + long long _field1; + long long _field2; +}; + +#pragma mark Typedef'd Structures + +typedef struct { + double top; + double left; + double bottom; + double right; +} CDStruct_3c058996; + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/CalendarBannerIconCreator.h b/MailHeaders/Mavericks_10.9.5/MailUI/CalendarBannerIconCreator.h new file mode 100644 index 00000000..c5c23a68 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/CalendarBannerIconCreator.h @@ -0,0 +1,20 @@ +/* + * 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" + +@interface CalendarBannerIconCreator : NSObject +{ +} + ++ (id)newCalendarBannerIconForDate:(id)arg1; ++ (void)drawBackgroundTileInRect:(struct CGRect)arg1 pathToBackground:(id)arg2 date:(id)arg3; ++ (id)monthStringAttributes; ++ (id)dateStringAttributes; ++ (id)appleFontWithName:(id)arg1 size:(double)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/CalendarBannerViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/CalendarBannerViewController.h new file mode 100644 index 00000000..7b0d838b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/CalendarBannerViewController.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "BannerViewController.h" + +@class NSButton, NSTextField; + +@interface CalendarBannerViewController : BannerViewController +{ + NSTextField *_eventTitle; + NSTextField *_eventTime; + NSButton *_openCalendarButton; +} + ++ (id)keyPathsForValuesAffectingShouldHideMeetingCancellationOKButton; ++ (id)keyPathsForValuesAffectingShouldHideMeetingRequestButtons; +@property(nonatomic) NSButton *openCalendarButton; // @synthesize openCalendarButton=_openCalendarButton; +@property(nonatomic) NSTextField *eventTime; // @synthesize eventTime=_eventTime; +@property(nonatomic) NSTextField *eventTitle; // @synthesize eventTitle=_eventTitle; +- (id)_dateStringForEvent:(id)arg1; +- (id)_titleForEvent:(id)arg1; +- (id)_eventForCurrentMessage; +- (void)openInCalendar:(id)arg1; +- (void)sendMeetingResponse:(id)arg1; +@property(readonly, nonatomic) BOOL shouldHideMeetingCancellationOKButton; +@property(readonly, nonatomic) BOOL shouldHideMeetingRequestButtons; +- (void)updateBannerContents; +- (void)updateWantsDisplay; +- (id)backgroundColor; +- (id)nibName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/CertificateBannerViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/CertificateBannerViewController.h new file mode 100644 index 00000000..4ccdc3c2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/CertificateBannerViewController.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "BannerViewController.h" + +@class BannerImageView, NSButton, NSTextField; + +@interface CertificateBannerViewController : BannerViewController +{ + BannerImageView *_certificateImage; + NSTextField *_messageField; + NSButton *_helpButton; +} + +@property(nonatomic) NSButton *helpButton; // @synthesize helpButton=_helpButton; +@property(nonatomic) NSTextField *messageField; // @synthesize messageField=_messageField; +@property(nonatomic) BannerImageView *certificateImage; // @synthesize certificateImage=_certificateImage; +- (void)showDetails:(id)arg1; +- (void)updateBannerContents; +- (void)updateWantsDisplay; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setRepresentedObject:(id)arg1; +- (id)backgroundColor; +- (void)dealloc; +- (id)nibName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ChildBannerViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/ChildBannerViewController.h new file mode 100644 index 00000000..6b193b42 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ChildBannerViewController.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "BannerViewController.h" + +@class BannerImageView, NSButton, NSLayoutConstraint, NSTextField; + +@interface ChildBannerViewController : BannerViewController +{ + long long _parentalControlMessageState; + BannerImageView *_icon; + NSTextField *_messageField; + NSButton *_helpButton; + NSButton *_sendButton; + NSLayoutConstraint *_helpButtonTrailingSpace; +} + +@property(nonatomic) NSLayoutConstraint *helpButtonTrailingSpace; // @synthesize helpButtonTrailingSpace=_helpButtonTrailingSpace; +@property(nonatomic) NSButton *sendButton; // @synthesize sendButton=_sendButton; +@property(nonatomic) NSButton *helpButton; // @synthesize helpButton=_helpButton; +@property(nonatomic) NSTextField *messageField; // @synthesize messageField=_messageField; +@property(nonatomic) BannerImageView *icon; // @synthesize icon=_icon; +@property(nonatomic) long long parentalControlMessageState; // @synthesize parentalControlMessageState=_parentalControlMessageState; +- (void)sendMessage:(id)arg1; +- (void)updateBannerContents; +- (void)updateWantsDisplay; +- (id)backgroundColor; +- (void)awakeFromNib; +- (id)nibName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ClippedItemsIndicator.h b/MailHeaders/Mavericks_10.9.5/MailUI/ClippedItemsIndicator.h new file mode 100644 index 00000000..a732b19f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ClippedItemsIndicator.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +#import "NSMenuDelegate.h" + +@class NSMenu; + +@interface ClippedItemsIndicator : NSButton +{ + id _delegate; + NSMenu *_menu; +} + +- (void)menuDidClose:(id)arg1; +- (void)_popUpMenu; +- (void)mouseDown:(id)arg1; +- (void)setDelegate:(id)arg1; +- (id)delegate; +- (void)dealloc; +- (id)init; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ClippedItemsIndicatorDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/ClippedItemsIndicatorDelegate-Protocol.h new file mode 100644 index 00000000..c7b3c346 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ClippedItemsIndicatorDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol ClippedItemsIndicatorDelegate +- (id)menuItemsForClippedItemsIndicator:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ColorBackgroundView.h b/MailHeaders/Mavericks_10.9.5/MailUI/ColorBackgroundView.h new file mode 100644 index 00000000..d76d3d55 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ColorBackgroundView.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSArray, NSColor, NSGradient, NSImage; + +@interface ColorBackgroundView : NSView +{ + NSColor *_color; + NSImage *_image; + NSArray *_colors; + BOOL _shouldTileImage; + NSGradient *_gradient; + BOOL _transparent; + BOOL _isFlipped; + double _gradientAngle; + long long _tag; + double _rowHeight; + double _rowOffset; + NSColor *_imageColor; +} + +@property(nonatomic) BOOL transparent; // @synthesize transparent=_transparent; +@property(retain, nonatomic) NSColor *backgroundImageColor; // @synthesize backgroundImageColor=_imageColor; +@property(nonatomic, setter=setFlipped:) BOOL isFlipped; // @synthesize isFlipped=_isFlipped; +@property(nonatomic) double rowOffset; // @synthesize rowOffset=_rowOffset; +@property(nonatomic) double rowHeight; // @synthesize rowHeight=_rowHeight; +@property(nonatomic) long long tag; // @synthesize tag=_tag; +@property(nonatomic) double gradientAngle; // @synthesize gradientAngle=_gradientAngle; +- (id)colorForRow:(unsigned long long)arg1; +- (void)drawRect:(struct CGRect)arg1; +@property(nonatomic) BOOL shouldTileImage; +@property(retain, nonatomic) NSImage *backgroundImage; +- (void)updateBackgroundImageColor; +@property(retain, nonatomic) NSGradient *gradient; +@property(retain, nonatomic) NSColor *backgroundColor; +@property(retain, nonatomic) NSArray *backgroundColors; +- (id)hitTest:(struct CGPoint)arg1; +- (BOOL)isOpaque; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ComposeBackEnd.h b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeBackEnd.h new file mode 100644 index 00000000..4b7b91c7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeBackEnd.h @@ -0,0 +1,262 @@ +/* + * 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 "MCActivityTarget.h" + +@class DOMNode, EditableWebMessageDocument, MCInvocationQueue, MCParsedMessage, MFMailAccount, MFMailbox, NSArray, NSMutableDictionary, NSMutableSet, NSNumber, NSPort, NSString, NSURL, NSUUID, NSUndoManager, StationeryController; + +@interface ComposeBackEnd : NSObject +{ + id _delegate; + NSString *_contentForAddressBookUpdate; + NSNumber *_uniqueID; + NSURL *_vcardFileForAddressBookUpdate; + NSPort *_initializationPort; + StationeryController *_stationeryController; + NSArray *_originalMessages; + NSArray *_generatedParsedMessages; + DOMNode *_stationerySignatureNode; + NSMutableDictionary *_originalMessageHeaders; + NSMutableDictionary *_originalMessageBodies; + MCParsedMessage *_originalMessageParsedMessage; + NSMutableDictionary *_cleanHeaders; + NSMutableDictionary *_extraRecipients; + NSMutableDictionary *_directoriesByAttachment; + NSUndoManager *_undoManager; + NSMutableSet *_knownMessageIds; + MCInvocationQueue *_saveQueue; + struct { + unsigned int type:4; + unsigned int composeMode:2; + unsigned int hadChangesBeforeSave:1; + unsigned int hasChanges:1; + unsigned int showAllHeaders:1; + unsigned int includeHeaders:1; + unsigned int isUndeliverable:1; + unsigned int isDeliveringMessage:1; + unsigned int sendWindowsFriendlyAttachments:2; + unsigned int contentsWasEditedByUser:1; + unsigned int delegateRespondsToDidChange:1; + unsigned int delegateRespondsToSenderDidChange:1; + unsigned int delegateRespondsToDidAppendMessage:1; + unsigned int delegateRespondsToDidSaveMessage:1; + unsigned int delegateRespondsToDidBeginLoad:1; + unsigned int delegateRespondsToDidEndLoad:1; + unsigned int delegateRespondsToWillCreateMessageWithHeaders:1; + unsigned int delegateRespondsToShouldSaveMessage:1; + unsigned int delegateRespondsToShouldDeliverMessage:1; + unsigned int delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients:1; + unsigned int delegateRespondsToDidCancelMessageDeliveryForEncryptionError:1; + unsigned int delegateRespondsToDidCancelMessageDeliveryForError:1; + unsigned int delegateRespondsToDidCancelMessageDeliveryForAttachmentError:1; + unsigned int signIfPossible:1; + unsigned int encryptIfPossible:1; + unsigned int knowsCanSign:1; + unsigned int canSign:1; + unsigned int shouldDownloadRemoteAttachments:1; + unsigned int overrideRemoteAttachmentsPreference:1; + unsigned int editorHasInitialized:1; + unsigned int isEditing:1; + unsigned int isSendFormatInitialized:1; + unsigned int isAppleScriptMessage:1; + unsigned long long encodingHint; + } _flags; + BOOL _willCloseEditor; + BOOL _isSettingSenderFromGetter; + EditableWebMessageDocument *_document; + NSMutableDictionary *_contentsByMessage; + MCParsedMessage *_initialParsedMessage; + MCParsedMessage *_restoredParsedMessage; + NSMutableDictionary *_attachmentMimeBodiesByURL; + BOOL _saveThreadCancelFlag; + NSString *_saveThreadMessageId; + MFMailbox *_saveThreadMailbox; + NSURL *_originalMessageBaseURL; + NSUUID *_documentID; +} + ++ (id)keyPathsForValuesAffectingAccount; ++ (id)supportedMailboxTypes; ++ (void)initialize; ++ (id)composeBackEndsByUniqueID; ++ (id)_messageEditorForComposeBackEnd:(id)arg1 window:(id *)arg2; ++ (void)unregisterComposeBackEnd:(id)arg1; ++ (void)registerComposeBackEnd:(id)arg1; ++ (id)composeBackEndForUniqueID:(id)arg1; +@property(retain) NSUUID *documentID; // @synthesize documentID=_documentID; +@property(retain) NSURL *originalMessageBaseURL; // @synthesize originalMessageBaseURL=_originalMessageBaseURL; +@property(retain) MFMailbox *saveThreadMailbox; // @synthesize saveThreadMailbox=_saveThreadMailbox; +@property(copy) NSString *saveThreadMessageId; // @synthesize saveThreadMessageId=_saveThreadMessageId; +- (void)_markForOverwrite:(id)arg1; +- (void)_saveThreadSaveContents:(id)arg1; +- (void)_saveThreadRemoveLastSave; +- (void)_saveThreadSetMessageId:(id)arg1 mailbox:(id)arg2 overwrite:(id)arg3; +- (void)_saveThreadUpdateAccount:(id)arg1 mailbox:(id)arg2; +- (BOOL)_saveThreadShouldCancel; +@property BOOL saveThreadCancelFlag; // @synthesize saveThreadCancelFlag=_saveThreadCancelFlag; +- (BOOL)isContentSignificant; +@property(readonly) BOOL isSavingMessage; +- (int)_convertSaveOrSendResultFromResultCodeT:(long long)arg1; +- (id)mailboxCreateIfNeeded:(BOOL)arg1; +- (id)_formattedAddressMatchingRawAddress:(id)arg1 inAccount:(id)arg2; +- (id)_replyAddressForMessage:(id)arg1; +- (void)_saveRecipients; +- (void)_setupDefaultRecipientsFirstTime:(BOOL)arg1; +- (void)_ccOrBccMyselfGivenOriginalMessage:(id)arg1 uniquedRecipientsTable:(id)arg2; +- (BOOL)containsAttachmentsThatCouldConfuseWindowsClients; +- (BOOL)containsAttachments; +- (BOOL)attachmentCanBeSentInline:(id)arg1; +- (id)copyOfContentsForDraft:(BOOL)arg1 shouldBePlainText:(BOOL)arg2 isOkayToForceRichText:(BOOL)arg3; +- (id)htmlDocumentForSave; +- (void)setOriginalMessageParsedMessage:(id)arg1; +- (void)getContentsForMessage:(id)arg1 body:(id)arg2; +- (void)_recursivelyURLifyNode:(id)arg1; +- (void)addBaseURLTagToNode:(id)arg1; +- (id)_newPlainTextRepresentationIncludeAttachments:(BOOL)arg1; +- (id)htmlStringFromRange:(id)arg1 htmlDocument:(id)arg2 removeCustomAttributes:(BOOL)arg3 convertObjectsToImages:(BOOL)arg4 convertEditableElements:(BOOL)arg5; +- (id)newOutgoingMessageUsingWriter:(id)arg1 contents:(id)arg2 headers:(id)arg3 isDraft:(BOOL)arg4 shouldBePlainText:(BOOL)arg5; +- (id)userDefaultMessageFont; +- (BOOL)containsRichText; +- (BOOL)hasContents; +- (void)generateMessageParsedMessages; +- (void)fetchAndCacheMessages; +- (void)_notifyDelegateMonitor:(id)arg1 alreadyDone:(char *)arg2; +- (void)finishPreparingContentWithEditorSettings:(id)arg1; +- (void)updateSaveDestinationAccount:(id)arg1 mailbox:(id)arg2; +- (void)updateDocumentReference:(id)arg1; +- (void)_configureLastDraftInformationFromHeaders:(id)arg1 overwrite:(BOOL)arg2; +- (BOOL)_isValidSaveDestination:(id)arg1; +- (BOOL)canEncryptForRecipients:(id)arg1 sender:(id)arg2; +- (BOOL)canSignFromAddress:(id)arg1; +- (id)recipientsThatHaveNoKeyForEncryption; +- (id)allRecipients; +- (void)setEncryptIfPossible:(BOOL)arg1; +- (void)setSignIfPossible:(BOOL)arg1; +- (BOOL)isEditingMessage:(id)arg1; +- (void)removeLastDraft; +- (id)defaultMessageStore; +- (BOOL)saveMessage; +- (id)saveTaskName; +- (void)_backgroundSaveDidChangeMessageId:(id)arg1; +- (void)backgroundSaveEnded:(id)arg1; +- (void)_backgroundAppendEnded:(id)arg1; +- (void)_synchronouslyAppendMessageToOutboxWithContents:(id)arg1; +- (BOOL)isDeliveringMessage; +- (BOOL)deliverMessage; +- (BOOL)isAddressHeaderKey:(id)arg1; +- (void)removeAddressForHeader:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertAddress:(id)arg1 forHeader:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)setAddressList:(id)arg1 forHeader:(id)arg2; +- (id)addressListForHeader:(id)arg1; +- (void)addHeaders:(id)arg1; +- (long long)displayableMessagePriority; +- (void)setMessagePriority:(long long)arg1; +- (id)htmlStringForSignature:(id)arg1; +- (void)getSignatureElement:(id *)arg1 parent:(id *)arg2 nextSibling:(id *)arg3; +- (void)setStationerySignatureNode:(id)arg1; +- (void)setSignature:(id)arg1; +- (id)signature; +- (id)signatureId; +- (BOOL)okToLetUserAddSignature; +- (BOOL)okToAddSignatureAutomatically; +@property long long composeMode; +@property BOOL includeHeaders; +- (void)setShowAllHeaders:(BOOL)arg1; +- (id)messageID; +@property(retain) NSString *subject; +- (void)_setCleanHeaders:(id)arg1; +- (id)cleanHeaders; +@property(retain) NSString *sender; +- (void)setDeliveryAccount:(id)arg1; +- (id)deliveryAccount; +@property(retain, nonatomic) MFMailAccount *account; +- (id)message; +- (id)plainTextMessage; +- (id)_makeMessageWithContents:(id)arg1 isDraft:(BOOL)arg2 shouldSign:(BOOL)arg3 shouldEncrypt:(BOOL)arg4 shouldSkipSignature:(BOOL)arg5 shouldBePlainText:(BOOL)arg6; +- (unsigned long long)_encodingHint; +- (id)mimeBodyForAttachmentWithURL:(id)arg1; +- (id)_parsedMessageForMessage:(id)arg1; +- (void)_continueToSetupContentsForView:(id)arg1 withParsedMessages:(id)arg2; +@property(readonly) BOOL defaultFormatIsRich; +- (void)setupContentsForView:(id)arg1; +- (void)setTypeAndConfigureLoadingOfRemoteAttachments:(unsigned long long)arg1; +- (void)_configureLoadingOfRemoteAttachments; +- (void)_generateParsedMessageFromOriginalMessages; +@property(readonly) EditableWebMessageDocument *document; +- (void)setRestoredParsedMessage:(id)arg1; +@property(retain) MCParsedMessage *initialParsedMessage; +- (BOOL)preserveAddedArchiveBody; +- (id)directoryForAttachment:(id)arg1; +- (id)attachments; +- (void)setOriginalMessages:(id)arg1; +- (id)_knownMessageIds; +- (id)originalMessageBody; +- (id)originalMessageHeaders; +- (void)setOriginalMessage:(id)arg1; +- (id)originalMessage; +- (void)setSendWindowsFriendlyAttachments:(BOOL)arg1; +- (BOOL)sendWindowsFriendlyAttachments; +- (void)setIsUndeliverable:(BOOL)arg1; +- (BOOL)isUndeliverable; +- (void)setShouldDownloadRemoteAttachments:(BOOL)arg1; +- (BOOL)isRedirecting; +- (void)setType:(unsigned long long)arg1; +- (unsigned long long)type; +- (void)setUndoManager:(id)arg1; +- (id)undoManager; +- (void)setHasChanges:(BOOL)arg1; +- (BOOL)hasChanges; +- (id)stationeryController; +- (BOOL)hasStationery; +- (void)setDelegate:(id)arg1; +- (id)delegate; +- (id)description; +- (void)setWillCloseEditor:(BOOL)arg1; +- (void)_editorHasInitialized:(id)arg1; +- (void)setGeneratedParsedMessages:(id)arg1; +- (void)setStateFromBackEnd:(id)arg1; +- (void)_createUniqueID; +- (id)init; +- (id)initCreatingDocumentEditor:(BOOL)arg1; +- (void)dealloc; +- (void)setVcardFile:(id)arg1; +- (void)setHtmlContent:(id)arg1; +- (id)objectSpecifier; +- (id)handleCloseScriptCommand:(id)arg1; +- (id)handleSendMessageCommand:(id)arg1; +- (id)handleSaveMessageCommand:(id)arg1; +- (void)replaceFormattedAddress:(id)arg1 withAddress:(id)arg2 forKey:(id)arg3; +- (void)removeFromBccRecipientsAtIndex:(unsigned long long)arg1; +- (void)removeFromCcRecipientsAtIndex:(unsigned long long)arg1; +- (void)removeFromToRecipientsAtIndex:(unsigned long long)arg1; +- (void)insertInBccRecipients:(id)arg1; +- (void)insertInBccRecipients:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInCcRecipients:(id)arg1; +- (void)insertInCcRecipients:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInToRecipients:(id)arg1; +- (void)insertInToRecipients:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertRecipient:(id)arg1 atIndex:(unsigned long long)arg2 inHeaderWithKey:(id)arg3; +- (id)bccRecipients; +- (id)ccRecipients; +- (id)toRecipients; +- (id)recipients; +- (void)_addRecipientsForKey:(id)arg1 toArray:(id)arg2; +- (void)setMessageSignature:(id)arg1; +- (id)messageSignature; +- (void)setContent:(id)arg1; +- (id)content; +- (void)setAppleScriptSubject:(id)arg1; +- (id)appleScriptSubject; +- (void)setAppleScriptSender:(id)arg1; +- (id)appleScriptSender; +- (void)setIsVisible:(BOOL)arg1; +- (BOOL)isVisible; +- (id)uniqueID; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ComposeBackEnd_Scripting.h b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeBackEnd_Scripting.h new file mode 100644 index 00000000..3eed4fdf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeBackEnd_Scripting.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ComposeBackEnd.h" + +@class NSTextStorage; + +@interface ComposeBackEnd_Scripting : ComposeBackEnd +{ + NSTextStorage *_textStorage; +} + +- (void)_coalescedConvertTextStorage; +- (void)_convertTextStorage; +- (void)_pushTextStorage; +- (void)setContent:(id)arg1; +- (id)content; +- (id)textStorage; +- (void)setTextStorage:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ComposeHeaderView.h b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeHeaderView.h new file mode 100644 index 00000000..8c3cd2be --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeHeaderView.h @@ -0,0 +1,175 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "NSAnimationDelegate.h" + +@class NSButton, NSMenu, NSPopUpButton, NSViewAnimation, OptionalView; + +@interface ComposeHeaderView : NSView +{ + id _delegate; + NSPopUpButton *_disclosureButton; + OptionalView *_toOptionalView; + OptionalView *_ccOptionalView; + OptionalView *_subjectOptionalView; + OptionalView *_bccOptionalView; + OptionalView *_replyToOptionalView; + OptionalView *_accountOptionalView; + OptionalView *_signatureOptionalView; + OptionalView *_priorityOptionalView; + OptionalView *_securityOptionalView; + OptionalView *_deliveryOptionalView; + NSView *_messageContentView; + NSPopUpButton *_signaturePopUp; + NSPopUpButton *_accountPopUp; + NSPopUpButton *_priorityPopUp; + NSPopUpButton *_deliveryPopUp; + NSButton *_cancelButton; + NSButton *_okButton; + unsigned int _showCcView:1; + unsigned int _showBccView:1; + unsigned int _showReplyToView:1; + unsigned int _showAccountView:1; + unsigned int _showSignatureView:1; + unsigned int _showPriorityView:1; + unsigned int _showDeliveryView:1; + BOOL _tempShowDeliveryView; + unsigned int _accountFieldEnabled:1; + unsigned int _deliveryFieldEnabled:1; + unsigned int _signatureFieldEnabled:1; + unsigned int _securityFieldEnabled:1; + unsigned int _resizingViews:1; + unsigned int _customizing:1; + unsigned int _changesCancelled:1; + NSViewAnimation *_animation; + double _nextShownFrameOrigin; + double _nextHiddenFrameOrigin; + double _heightDelta; + id _lastFirstResponder; + double _signaturePopUpMaxWidth; + double _accountPopUpMaxWidth; + OptionalView *_togglingOptionalView; + BOOL _customizationShouldStick; + BOOL _hasBarBelow; + BOOL _showSecurityView; + NSMenu *_actionMenu; + double _accountLabelRTLWidth; + double _signatureLabelRTLWidth; + double _deliveryLabelRTLWidth; + double _accountCheckboxRTLWidth; + double _signatureCheckboxRTLWidth; + double _deliveryCheckboxRTLWidth; + double _signatureRTLOffset; + double _priorityRTLOffset; +} + +@property double priorityRTLOffset; // @synthesize priorityRTLOffset=_priorityRTLOffset; +@property double signatureRTLOffset; // @synthesize signatureRTLOffset=_signatureRTLOffset; +@property double deliveryCheckboxRTLWidth; // @synthesize deliveryCheckboxRTLWidth=_deliveryCheckboxRTLWidth; +@property double signatureCheckboxRTLWidth; // @synthesize signatureCheckboxRTLWidth=_signatureCheckboxRTLWidth; +@property double accountCheckboxRTLWidth; // @synthesize accountCheckboxRTLWidth=_accountCheckboxRTLWidth; +@property double deliveryLabelRTLWidth; // @synthesize deliveryLabelRTLWidth=_deliveryLabelRTLWidth; +@property double signatureLabelRTLWidth; // @synthesize signatureLabelRTLWidth=_signatureLabelRTLWidth; +@property double accountLabelRTLWidth; // @synthesize accountLabelRTLWidth=_accountLabelRTLWidth; +@property(retain, nonatomic) NSMenu *actionMenu; // @synthesize actionMenu=_actionMenu; +@property BOOL showSecurityView; // @synthesize showSecurityView=_showSecurityView; +- (double)_checkboxRTLWidthForView:(id)arg1; +- (double)_labelRTLWidthForView:(id)arg1; +- (void)_enforceRTLMinWidthsForAccountFrame:(struct CGRect)arg1 signatureFrame:(struct CGRect)arg2 deliveryFrame:(struct CGRect)arg3; +- (void)_determineOptionalViewLabelWidthsForRTL; +@property(nonatomic) BOOL hasBarBelow; +- (void)setSecurityFieldEnabled:(BOOL)arg1; +- (void)setDeliveryFieldEnabled:(BOOL)arg1; +- (void)setSignatureFieldEnabled:(BOOL)arg1; +- (void)setAccountFieldEnabled:(BOOL)arg1; +- (BOOL)showReplyToHeader; +- (BOOL)showBccHeader; +- (BOOL)showCcHeader; +- (BOOL)securityFieldVisible; +- (void)setSecurityFieldVisible:(BOOL)arg1; +- (void)setPriorityFieldVisible:(BOOL)arg1; +- (void)_setPriorityFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; +- (void)setDeliveryFieldVisible:(BOOL)arg1; +- (void)setSignatureFieldVisible:(BOOL)arg1; +- (void)setAccountFieldVisible:(BOOL)arg1; +- (void)setReplyToFieldVisible:(BOOL)arg1; +- (void)_setReplyToFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; +- (void)setBccFieldVisible:(BOOL)arg1; +- (void)_setBccFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; +- (void)setCcFieldVisible:(BOOL)arg1; +- (void)_setCcFieldVisible:(BOOL)arg1 andSetDefault:(BOOL)arg2; +- (void)configureSignaturePopUpSize; +- (void)configureAccountPopUpSize; +- (void)configureHeaders:(id)arg1; +- (void)temporarilyTogglePriorityFieldVisibility; +- (void)togglePriorityFieldVisibility:(id)arg1; +- (void)_toggleAccountOrDeliveryOrSignatureOrPriorityOrSecurityField:(id)arg1; +- (void)temporarilyToggleReplyToFieldVisibility; +- (void)temporarilyToggleBccFieldVisibility; +- (void)temporarilyToggleCcFieldVisibility; +- (void)toggleReplyToFieldVisibility:(id)arg1; +- (void)toggleBccFieldVisibility:(id)arg1; +- (void)toggleCcFieldVisibility:(id)arg1; +- (void)_toggleCcOrBccOrReplyToField:(id)arg1; +- (void)done:(id)arg1; +- (void)_finishCustomizingSavingChanges:(BOOL)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (void)animationDidEnd:(id)arg1; +- (void)_sanityCheckHiddenessOfViewsInAnimationList:(id)arg1; +- (void)_enableActionMenu:(BOOL)arg1; +- (void)resizeWithOldSuperviewSize:(struct CGSize)arg1; +- (void)_customizeHeaders:(BOOL)arg1 duration:(double)arg2; +- (void)_recordUserCustomization; +- (void)_addView:(id)arg1 toList:(id)arg2 isVisible:(BOOL)arg3 adjustYOrigin:(BOOL)arg4; +- (void)tile; +- (void)_fixupTabRing; +- (BOOL)_isDisplayingFatBottomControls; +- (BOOL)_isDisplayingBottomControls; +- (void)_subviewFrameDidChange:(id)arg1; +- (void)_calculateAccountFrame:(struct CGRect *)arg1 deliveryFrame:(struct CGRect *)arg2 signatureFrame:(struct CGRect *)arg3; +- (struct CGRect)_calculatePriorityFrame:(struct CGRect)arg1; +- (struct CGRect)_calculateSecurityFrame:(struct CGRect)arg1; +- (BOOL)_shouldShowPriorityView; +- (BOOL)_shouldShowPriorityViewWhenCustomizing; +- (BOOL)_shouldShowPriorityViewWhenNotCustomizing; +- (BOOL)shouldShowDeliveryView; +- (BOOL)_shouldShowDeliveryViewWhenCustomizing; +- (void)_recomputeShowDeliveryView; +- (void)deliveryViewAppearanceConditionsDidChange:(id)arg1; +- (BOOL)_shouldShowDeliveryViewWhenNotCustomizing; +- (BOOL)_shouldShowSignatureView; +- (BOOL)_shouldShowSignatureViewWhenCustomizing; +- (BOOL)_shouldShowSignatureViewWhenNotCustomizing; +- (BOOL)_shouldShowAccountView; +- (BOOL)_shouldShowAccountViewWhenCustomizing; +- (BOOL)_shouldShowAccountViewWhenNotCustomizing; +- (BOOL)_shouldShowSecurityView; +- (BOOL)_shouldShowSecurityViewWhenCustomizing; +- (BOOL)_shouldShowSecurityViewWhenNotCustomizing; +- (void)_setupSecurityViewInBackground; +- (double)_positionView:(id)arg1 yOffset:(double)arg2; +- (void)_setupActionMenuItemState; +- (void)_setupMenuItemWithAction:(SEL)arg1 withState:(BOOL)arg2; +- (void)beginListeningForChildFrameChangeNotifications; +- (void)_readVisibleStateFromOptionCheckboxes; +- (void)_popDisclosureButtonToFront; +- (void)_noteCurrentFirstResponder; +- (void)_restoreFirstResponder; +- (BOOL)isCustomizing; +- (void)viewWillMoveToWindow:(id)arg1; +- (BOOL)isOpaque; +- (BOOL)isFlipped; +- (void)setMessageContentView:(id)arg1; +- (id)messageContentView; +- (void)setDelegate:(id)arg1; +- (id)delegate; +- (void)dealloc; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ComposeSpellChecker.h b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeSpellChecker.h new file mode 100644 index 00000000..1b446bac --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeSpellChecker.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSpellChecker.h" + +@interface ComposeSpellChecker : NSSpellChecker +{ +} + +- (void)closeSpellDocumentWithTag:(long long)arg1; +- (id)spellingPanel; +- (long long)requestCheckingOfString:(id)arg1 range:(struct _NSRange)arg2 types:(unsigned long long)arg3 options:(id)arg4 inSpellDocumentWithTag:(long long)arg5 completionHandler:(id)arg6; +- (id)checkString:(id)arg1 range:(struct _NSRange)arg2 types:(unsigned long long)arg3 options:(id)arg4 inSpellDocumentWithTag:(long long)arg5 orthography:(id *)arg6 wordCount:(long long *)arg7; +- (BOOL)_mail_unifiedTextCheckingResultsHaveErrors:(id)arg1; +- (void)_mail_didCheckSpellDocumentWithTag:(long long)arg1 hasErrors:(BOOL)arg2; +- (void)_mail_willCheckSpellDocumentWithTag:(long long)arg1; +- (void)_mail_spellPanelDidClose:(id)arg1; +- (void)_mail_postingTimerFired:(id)arg1; +- (long long)currentSpellDocumentTag; +- (void)setPostCompletedNotification:(BOOL)arg1 forSpellDocumentWithTag:(long long)arg2; +- (void)_mail_removeObjectForSpellDocumentTag:(long long)arg1; +- (id)_mail_objectForSpellDocumentTag:(long long)arg1; +- (void)_mail_setObject:(id)arg1 forSpellDocumentTag:(long long)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ComposeStatusView.h b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeStatusView.h new file mode 100644 index 00000000..710c8836 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeStatusView.h @@ -0,0 +1,52 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSPopUpButton, NSProgressIndicator, NSTextField; + +@interface ComposeStatusView : NSView +{ + double _originalMaxXPositionForImageStatus; + BOOL _imageResizingVisible; + BOOL _URLPickerVisible; + BOOL _findBarIsVisible; + NSTextField *_imageFileSizeLabel; + NSTextField *_imageFileSizeTextField; + NSTextField *_imageSizeLabel; + NSPopUpButton *_imageSizePopup; + NSProgressIndicator *_imageResizingProgressWheel; + NSTextField *_imageResizingProgressField; + NSTextField *_URLPickerLabel; + NSPopUpButton *_URLPickerButton; +} + +@property(retain, nonatomic) NSPopUpButton *URLPickerButton; // @synthesize URLPickerButton=_URLPickerButton; +@property(retain, nonatomic) NSTextField *URLPickerLabel; // @synthesize URLPickerLabel=_URLPickerLabel; +@property(retain, nonatomic) NSTextField *imageResizingProgressField; // @synthesize imageResizingProgressField=_imageResizingProgressField; +@property(retain, nonatomic) NSProgressIndicator *imageResizingProgressWheel; // @synthesize imageResizingProgressWheel=_imageResizingProgressWheel; +@property(retain, nonatomic) NSPopUpButton *imageSizePopup; // @synthesize imageSizePopup=_imageSizePopup; +@property(retain, nonatomic) NSTextField *imageSizeLabel; // @synthesize imageSizeLabel=_imageSizeLabel; +@property(retain, nonatomic) NSTextField *imageFileSizeTextField; // @synthesize imageFileSizeTextField=_imageFileSizeTextField; +@property(retain, nonatomic) NSTextField *imageFileSizeLabel; // @synthesize imageFileSizeLabel=_imageFileSizeLabel; +- (void)drawRect:(struct CGRect)arg1; +- (id)_imageFileSizeView; +- (id)_imageResizingView; +- (BOOL)canHideStatusBar; +- (void)setImageResizePickerVisible:(BOOL)arg1; +- (void)setURLPickerVisible:(BOOL)arg1; +- (void)_layoutSubviews; +- (void)_resizeImageResizeLabels; +- (void)_findBarContainerDidChangeFindBarVisibility:(id)arg1; +- (void)_viewBoundsChanged:(id)arg1; +- (void)dealloc; +- (void)_setEngravedStatusForTextField:(id)arg1; +- (void)viewDidMoveToSuperview; +- (id)_findBarContainer; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ComposeView.h b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeView.h new file mode 100644 index 00000000..bd5333fd --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeView.h @@ -0,0 +1,136 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class ComposeViewController, MUIAddressField, MUIWebDocumentView, NSButton, NSLayoutConstraint, NSPopUpButton, NSTextField; + +@interface ComposeView : NSView +{ + BOOL _allowShowingOfCcBccFromField; + NSView *_headerView; + MUIWebDocumentView *_webDocumentView; + ComposeViewController *_controller; + MUIAddressField *_toField; + NSView *_ccBccFromView; + NSTextField *_ccBccFromField; + NSLayoutConstraint *_ccBccFromHeightConstraint; + NSLayoutConstraint *_ccBccFromCurrentHeightConstraint; + NSView *_ccView; + MUIAddressField *_ccField; + NSLayoutConstraint *_ccHeightConstraint; + NSLayoutConstraint *_ccCurrentHeightConstraint; + NSView *_bccView; + MUIAddressField *_bccField; + NSLayoutConstraint *_bccHeightConstraint; + NSLayoutConstraint *_bccCurrentHeightConstraint; + NSView *_replyToView; + MUIAddressField *_replyToField; + NSLayoutConstraint *_replyToHeightConstraint; + NSLayoutConstraint *_replyToCurrentHeightConstraint; + NSView *_subjectView; + NSTextField *_subjectField; + NSLayoutConstraint *_subjectTrailingConstraint; + NSView *_fromView; + NSPopUpButton *_fromPopupButton; + NSPopUpButton *_deliveryPopupButton; + NSLayoutConstraint *_fromHeightConstraint; + NSLayoutConstraint *_fromCurrentHeightConstraint; + NSView *_signatureView; + NSLayoutConstraint *_signatureHeightConstraint; + NSLayoutConstraint *_signatureCurrentHeightConstraint; + NSLayoutConstraint *_signatureTrailingConstraint; + NSPopUpButton *_priorityPopupButton; + NSLayoutConstraint *_priorityWidthConstraint; + NSLayoutConstraint *_priorityCurrentWidthConstraint; + NSView *_securityView; + NSButton *_encryptButton; + NSButton *_signButton; + NSLayoutConstraint *_securityWidthConstraint; + NSLayoutConstraint *_securityCurrentWidthConstraint; + NSPopUpButton *_fieldSelectorPopupButton; + NSLayoutConstraint *_bottomMostElementTrailingToFieldsSelectorConstraint; + NSButton *_sendButton; +} + +@property(nonatomic) NSButton *sendButton; // @synthesize sendButton=_sendButton; +@property(retain, nonatomic) NSLayoutConstraint *bottomMostElementTrailingToFieldsSelectorConstraint; // @synthesize bottomMostElementTrailingToFieldsSelectorConstraint=_bottomMostElementTrailingToFieldsSelectorConstraint; +@property(nonatomic) NSPopUpButton *fieldSelectorPopupButton; // @synthesize fieldSelectorPopupButton=_fieldSelectorPopupButton; +@property(retain, nonatomic) NSLayoutConstraint *securityCurrentWidthConstraint; // @synthesize securityCurrentWidthConstraint=_securityCurrentWidthConstraint; +@property(retain, nonatomic) NSLayoutConstraint *securityWidthConstraint; // @synthesize securityWidthConstraint=_securityWidthConstraint; +@property(nonatomic) NSButton *signButton; // @synthesize signButton=_signButton; +@property(nonatomic) NSButton *encryptButton; // @synthesize encryptButton=_encryptButton; +@property(nonatomic) NSView *securityView; // @synthesize securityView=_securityView; +@property(retain, nonatomic) NSLayoutConstraint *priorityCurrentWidthConstraint; // @synthesize priorityCurrentWidthConstraint=_priorityCurrentWidthConstraint; +@property(retain, nonatomic) NSLayoutConstraint *priorityWidthConstraint; // @synthesize priorityWidthConstraint=_priorityWidthConstraint; +@property(nonatomic) NSPopUpButton *priorityPopupButton; // @synthesize priorityPopupButton=_priorityPopupButton; +@property(retain, nonatomic) NSLayoutConstraint *signatureTrailingConstraint; // @synthesize signatureTrailingConstraint=_signatureTrailingConstraint; +@property(retain, nonatomic) NSLayoutConstraint *signatureCurrentHeightConstraint; // @synthesize signatureCurrentHeightConstraint=_signatureCurrentHeightConstraint; +@property(retain, nonatomic) NSLayoutConstraint *signatureHeightConstraint; // @synthesize signatureHeightConstraint=_signatureHeightConstraint; +@property(nonatomic) NSView *signatureView; // @synthesize signatureView=_signatureView; +@property(retain, nonatomic) NSLayoutConstraint *fromCurrentHeightConstraint; // @synthesize fromCurrentHeightConstraint=_fromCurrentHeightConstraint; +@property(retain, nonatomic) NSLayoutConstraint *fromHeightConstraint; // @synthesize fromHeightConstraint=_fromHeightConstraint; +@property(nonatomic) NSPopUpButton *deliveryPopupButton; // @synthesize deliveryPopupButton=_deliveryPopupButton; +@property(nonatomic) NSPopUpButton *fromPopupButton; // @synthesize fromPopupButton=_fromPopupButton; +@property(nonatomic) NSView *fromView; // @synthesize fromView=_fromView; +@property(retain, nonatomic) NSLayoutConstraint *subjectTrailingConstraint; // @synthesize subjectTrailingConstraint=_subjectTrailingConstraint; +@property(nonatomic) NSTextField *subjectField; // @synthesize subjectField=_subjectField; +@property(nonatomic) NSView *subjectView; // @synthesize subjectView=_subjectView; +@property(retain, nonatomic) NSLayoutConstraint *replyToCurrentHeightConstraint; // @synthesize replyToCurrentHeightConstraint=_replyToCurrentHeightConstraint; +@property(retain, nonatomic) NSLayoutConstraint *replyToHeightConstraint; // @synthesize replyToHeightConstraint=_replyToHeightConstraint; +@property(nonatomic) MUIAddressField *replyToField; // @synthesize replyToField=_replyToField; +@property(nonatomic) NSView *replyToView; // @synthesize replyToView=_replyToView; +@property(retain, nonatomic) NSLayoutConstraint *bccCurrentHeightConstraint; // @synthesize bccCurrentHeightConstraint=_bccCurrentHeightConstraint; +@property(retain, nonatomic) NSLayoutConstraint *bccHeightConstraint; // @synthesize bccHeightConstraint=_bccHeightConstraint; +@property(nonatomic) MUIAddressField *bccField; // @synthesize bccField=_bccField; +@property(nonatomic) NSView *bccView; // @synthesize bccView=_bccView; +@property(retain, nonatomic) NSLayoutConstraint *ccCurrentHeightConstraint; // @synthesize ccCurrentHeightConstraint=_ccCurrentHeightConstraint; +@property(retain, nonatomic) NSLayoutConstraint *ccHeightConstraint; // @synthesize ccHeightConstraint=_ccHeightConstraint; +@property(nonatomic) MUIAddressField *ccField; // @synthesize ccField=_ccField; +@property(nonatomic) NSView *ccView; // @synthesize ccView=_ccView; +@property(retain, nonatomic) NSLayoutConstraint *ccBccFromCurrentHeightConstraint; // @synthesize ccBccFromCurrentHeightConstraint=_ccBccFromCurrentHeightConstraint; +@property(retain, nonatomic) NSLayoutConstraint *ccBccFromHeightConstraint; // @synthesize ccBccFromHeightConstraint=_ccBccFromHeightConstraint; +@property(nonatomic) NSTextField *ccBccFromField; // @synthesize ccBccFromField=_ccBccFromField; +@property(nonatomic) NSView *ccBccFromView; // @synthesize ccBccFromView=_ccBccFromView; +@property(nonatomic) MUIAddressField *toField; // @synthesize toField=_toField; +@property(nonatomic) ComposeViewController *controller; // @synthesize controller=_controller; +@property(nonatomic) MUIWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(nonatomic) NSView *headerView; // @synthesize headerView=_headerView; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (void)controlTextDidBeginEditing:(id)arg1; +- (void)_setupKeyViewLoop; +- (void)animateCcBccFromChange; +- (void)toggleSecurity:(id)arg1; +- (void)togglePriority:(id)arg1; +- (void)toggleSignature:(id)arg1; +- (void)toggleReplyTo:(id)arg1; +- (void)_synchronizeCcBccFromUI; +- (BOOL)_isShowingFromField; +- (BOOL)_isShowingBccField; +- (BOOL)_isShowingCcField; +- (BOOL)_isShowingCcBccFromField; +- (id)_fieldInFocus; +- (BOOL)_showCcBccFromField; +@property(nonatomic) BOOL allowShowingOfCcBccFromField; +- (void)_synchronizeSecurityUI; +- (BOOL)_isShowingSecurityControls; +@property(nonatomic) BOOL showSecurityControls; +- (void)_synchronizePriorityUI; +- (BOOL)_isShowingPriorityControl; +@property(nonatomic) BOOL showPriorityControl; +- (void)_synchronizeSignatureUI; +- (BOOL)_isShowingSignatureField; +@property(nonatomic) BOOL showSignatureField; +- (void)_synchronizeReplyToUI; +- (BOOL)_isShowingReplyToField; +@property(nonatomic) BOOL showReplyToField; +- (void)updateLayer; +- (BOOL)wantsUpdateLayer; +- (void)awakeFromNib; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ComposeViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeViewController.h new file mode 100644 index 00000000..6000ee62 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeViewController.h @@ -0,0 +1,72 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +#import "AccountStatusDataSourceDelegate.h" +#import "MCActivityTarget.h" +#import "NSUserInterfaceValidations.h" + +@class AccountStatusDataSource, NSOperationQueue, NewDeliveryFailure; + +@interface ComposeViewController : NSViewController +{ + id _delegate; + NSOperationQueue *_workerQueue; + AccountStatusDataSource *_deliveryAccountStatusDataSource; + NewDeliveryFailure *_deliveryFailure; +} + +@property(retain, nonatomic) NewDeliveryFailure *deliveryFailure; // @synthesize deliveryFailure=_deliveryFailure; +@property(retain, nonatomic) AccountStatusDataSource *deliveryAccountStatusDataSource; // @synthesize deliveryAccountStatusDataSource=_deliveryAccountStatusDataSource; +@property(readonly) NSOperationQueue *workerQueue; // @synthesize workerQueue=_workerQueue; +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; +- (BOOL)_alwaysCcOrBccMyself; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)_updateActiveField; +- (void)addAttachments:(id)arg1; +- (void)discard; +- (void)saveMessageToDrafts:(id)arg1; +- (void)finishEditing; +- (void)reportDeliveryFailure:(id)arg1; +- (void)_didAppendMessageToOutboxWithResult:(int)arg1 error:(id)arg2; +- (void)_saveRecipients; +- (void)_appendMessageToOutboxInBackground:(id)arg1; +- (void)sendMessageAfterChecking:(id)arg1; +- (void)send:(id)arg1; +- (void)_updateSendButton; +- (BOOL)_allowSend; +- (void)_updateSecurityControls; +- (void)_updateShowCcBccFrom; +- (id)_dynamicDeliveryAccountForAccount:(id)arg1; +- (void)_updateDeliveryPopupWithAccount:(id)arg1; +- (void)_updateComposeViewWithFrom:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)isSignedChanged:(id)arg1; +- (void)isEncryptedChanged:(id)arg1; +- (void)signatureChanged:(id)arg1; +- (void)priorityChanged:(id)arg1; +- (void)subjectChanged:(id)arg1; +- (void)setDeliveryAccount:(id)arg1; +- (void)_setDeliveryAccountWithFromAccount:(id)arg1; +- (void)setSelectedAccount:(id)arg1; +- (void)fromChanged:(id)arg1; +- (void)_replyToChanged:(id)arg1; +- (void)_bccChanged:(id)arg1; +- (void)_ccChanged:(id)arg1; +- (void)_toChanged:(id)arg1; +- (void)awakeFromNib; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +- (id)view; +- (id)nibName; +- (void)dealloc; +- (void)_composeViewControllerCommonInit; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ComposeViewControllerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeViewControllerDelegate-Protocol.h new file mode 100644 index 00000000..9d5ba149 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeViewControllerDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol ComposeViewControllerDelegate +- (void)composeViewDidSaveSuccessfully:(BOOL)arg1; +- (BOOL)composeViewShouldAllowUserToIgnoreSaveFailure; +- (void)composeViewDidSend; +- (void)composeViewFinishedEditing; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ComposeWindow.h b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeWindow.h new file mode 100644 index 00000000..ffad4b09 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeWindow.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface ComposeWindow : NSWindow +{ +} + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ComposeWindowController.h b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeWindowController.h new file mode 100644 index 00000000..cd67ba79 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ComposeWindowController.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowController.h" + +#import "ComposeViewControllerDelegate.h" +#import "NSWindowDelegate.h" + +@class ComposeViewController; + +@interface ComposeWindowController : NSWindowController +{ + BOOL _userWantsToCloseWindow; + ComposeViewController *_composeViewController; +} + ++ (void)initialize; +@property(nonatomic) BOOL userWantsToCloseWindow; // @synthesize userWantsToCloseWindow=_userWantsToCloseWindow; +@property(retain, nonatomic) ComposeViewController *composeViewController; // @synthesize composeViewController=_composeViewController; +- (void)windowWillClose:(id)arg1; +- (BOOL)windowShouldClose:(id)arg1; +- (void)showWindow:(id)arg1; +- (void)composeViewDidSaveSuccessfully:(BOOL)arg1; +- (BOOL)composeViewShouldAllowUserToIgnoreSaveFailure; +- (void)composeViewDidSend; +- (void)composeViewFinishedEditing; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +- (void)awakeFromNib; +- (id)windowNibName; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ComposingPreferences.h b/MailHeaders/Mavericks_10.9.5/MailUI/ComposingPreferences.h new file mode 100644 index 00000000..e8b1cac8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ComposingPreferences.h @@ -0,0 +1,53 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "AccountStatusDataSourceDelegate.h" + +@class NSButton, NSMatrix, NSPopUpButton, NSTextField; + +@interface ComposingPreferences : NSPreferencesModule +{ + NSPopUpButton *_defaultFormatButton; + NSButton *_alwaysCCMyselfSwitch; + NSPopUpButton *_ccOrBccButton; + NSButton *_replyUsingSameFormatSwitch; + NSButton *_expandAliasesSwitch; + NSButton *_useQuoteBarsSwitch; + NSPopUpButton *_spellCheckingPopUpButton; + NSButton *_replyQuotingSwitch; + NSMatrix *_quotingBehaviorMatrix; + NSTextField *_quotingBehaviorLabel; + NSButton *_matchDomainsSwitch; + NSTextField *_matchingDomainField; + NSPopUpButton *_sendingAccountButton; + BOOL _endEditingSimply; +} + +- (void)sendingAccountClicked:(id)arg1; +- (void)controlTextDidEndEditing:(id)arg1; +- (void)matchDomainsClicked:(id)arg1; +- (void)_setComposeMode:(long long)arg1; +- (void)defaultMessageFormatChanged:(id)arg1; +- (void)expandAliasesClicked:(id)arg1; +- (void)alwaysCCMyselfClicked:(id)arg1; +- (void)spellCheckingBehaviorChanged:(id)arg1; +- (void)quotingBehaviorChanged:(id)arg1; +- (void)replyQuotingBehaviorChanged:(id)arg1; +- (void)useQuoteBarsClicked:(id)arg1; +- (void)replyUsingSameFormatClicked:(id)arg1; +- (void)initializeFromDefaults; +- (void)_sizeToFitWithinSuperview:(id)arg1; +- (void)_postComposePreferencesChanged; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (BOOL)isResizable; +- (id)imageForPreferenceNamed:(id)arg1; +- (void)configureMenuItem:(id)arg1 forAccount:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ConnectionDoctor.h b/MailHeaders/Mavericks_10.9.5/MailUI/ConnectionDoctor.h new file mode 100644 index 00000000..f431e659 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ConnectionDoctor.h @@ -0,0 +1,73 @@ +/* + * 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 "AccountStatusDataSourceDelegate.h" +#import "MCConnectionLogging.h" + +@class AccountStatusDataSource, NSButton, NSDrawer, NSImageView, NSMutableString, NSProgressIndicator, NSTableView, NSTextField, NSTextView, NSView, NSWindow; + +@interface ConnectionDoctor : NSObject +{ + AccountStatusDataSource *_deliveryASDS; + NSMutableString *_detailBuffer; + NSWindow *_window; + NSTableView *_tableView; + NSImageView *_internetStatusIndicator; + NSProgressIndicator *_internetStatusProgressIndicator; + NSTextField *_internetStatusField; + NSButton *_checkStatusButton; + NSButton *_assistMeButton; + NSTextView *_ispInfoField; + NSDrawer *_detailDrawer; + NSButton *_detailButton; + NSView *_detailView; + NSTextView *_detailTextView; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(nonatomic) NSTextView *detailTextView; // @synthesize detailTextView=_detailTextView; +@property(retain, nonatomic) NSView *detailView; // @synthesize detailView=_detailView; +@property(nonatomic) NSButton *detailButton; // @synthesize detailButton=_detailButton; +@property(retain, nonatomic) NSDrawer *detailDrawer; // @synthesize detailDrawer=_detailDrawer; +@property(nonatomic) NSTextView *ispInfoField; // @synthesize ispInfoField=_ispInfoField; +@property(nonatomic) NSButton *assistMeButton; // @synthesize assistMeButton=_assistMeButton; +@property(nonatomic) NSButton *checkStatusButton; // @synthesize checkStatusButton=_checkStatusButton; +@property(nonatomic) NSTextField *internetStatusField; // @synthesize internetStatusField=_internetStatusField; +@property(nonatomic) NSProgressIndicator *internetStatusProgressIndicator; // @synthesize internetStatusProgressIndicator=_internetStatusProgressIndicator; +@property(nonatomic) NSImageView *internetStatusIndicator; // @synthesize internetStatusIndicator=_internetStatusIndicator; +@property(nonatomic) NSTableView *tableView; // @synthesize tableView=_tableView; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +- (void)flushLog; +- (void)logBytes:(void *)arg1 length:(unsigned long long)arg2; +- (void)logData:(id)arg1 range:(struct _NSRange)arg2; +- (void)logData:(id)arg1; +- (void)logString:(id)arg1; +- (void)_flushLog; +- (void)toggleDetail:(id)arg1; +- (void)showLogs:(id)arg1; +- (void)_logDebuggingInformationDidChange:(BOOL)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)windowWillClose:(id)arg1; +- (void)assistMeClicked:(id)arg1; +- (void)checkAccounts:(id)arg1; +- (void)_didRefreshStatusForAllAccounts:(id)arg1; +- (void)_willRefreshStatusForAllAccounts:(id)arg1; +- (void)_didCheckInternetConnection:(id)arg1; +- (void)_willCheckInternetConnection:(id)arg1; +- (void)show; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (void)awakeFromNib; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ContentSplitViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/ContentSplitViewController.h new file mode 100644 index 00000000..1ed52e72 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ContentSplitViewController.h @@ -0,0 +1,47 @@ +/* + * 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 "NSSplitViewDelegate.h" + +@class MailSplitView, MailTableView, MessageViewer, NSView; + +@interface ContentSplitViewController : NSObject +{ + BOOL _keepCurrentRowVisible; + BOOL _previewPaneIsVisible; + MessageViewer *_messageViewer; + MailTableView *_messageList; + MailSplitView *_contentSplitView; + NSView *_previewPane; + NSView *_messageListPane; +} + +@property(nonatomic) NSView *messageListPane; // @synthesize messageListPane=_messageListPane; +@property(nonatomic) NSView *previewPane; // @synthesize previewPane=_previewPane; +@property(nonatomic) MailSplitView *contentSplitView; // @synthesize contentSplitView=_contentSplitView; +@property(nonatomic) MailTableView *messageList; // @synthesize messageList=_messageList; +@property(nonatomic) MessageViewer *messageViewer; // @synthesize messageViewer=_messageViewer; +- (void)updateDividerStyle; +@property(readonly, nonatomic) struct CGSize minimumPreviewPaneSize; +@property(readonly, nonatomic) struct CGSize minimumMessageListSize; +- (void)_splitView:(id)arg1 verticallyResizeSubviewsWithNewSize:(struct CGSize)arg2 messageListRect:(struct CGRect *)arg3 previewPaneRect:(struct CGRect *)arg4; +- (void)_splitView:(id)arg1 horizontallyResizeSubviewsWithNewSize:(struct CGSize)arg2 messageListRect:(struct CGRect *)arg3 previewPaneRect:(struct CGRect *)arg4; +- (void)frameRectsWithNewSize:(struct CGSize)arg1 messageListRect:(struct CGRect *)arg2 previewPaneRect:(struct CGRect *)arg3; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (BOOL)splitView:(id)arg1 shouldAdjustSizeOfSubview:(id)arg2; +- (struct CGRect)splitView:(id)arg1 effectiveRect:(struct CGRect)arg2 forDrawnRect:(struct CGRect)arg3 ofDividerAtIndex:(long long)arg4; +- (struct CGRect)splitView:(id)arg1 additionalEffectiveRectOfDividerAtIndex:(long long)arg2; +- (void)splitViewDidResizeSubviews:(id)arg1; +- (void)splitViewWillResizeSubviews:(id)arg1; +- (double)splitView:(id)arg1 constrainSplitPosition:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; +@property(nonatomic) BOOL previewPaneIsVisible; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/Conversation.h b/MailHeaders/Mavericks_10.9.5/MailUI/Conversation.h new file mode 100644 index 00000000..ccbf47a9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/Conversation.h @@ -0,0 +1,75 @@ +/* + * 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 "NSCopying.h" + +@class MFCriterion, NSArray, NSMutableArray, NSMutableDictionary, NSSet; + +@interface Conversation : NSObject +{ + NSMutableArray *_primitiveOrderedConversationMembers; + NSArray *_orderedConversationMembers; + NSMutableDictionary *_conversationMemberByMessage; + NSMutableDictionary *_conversationMemberByMessageID; + BOOL _conversationMembersLoaded; + BOOL _isRegisteredForConversationUpdates; + BOOL _shouldLogConversationViewUpdates; + long long _conversationID; + MFCriterion *_mailboxCriterion; + NSArray *_initialMessages; + NSSet *_initialPrimaryMessages; + long long _loadBehavior; + id _conversationMembersLoadedCompletionHandler; +} + ++ (BOOL)automaticallyNotifiesObserversOfOrderedConversationMembers; ++ (id)keyPathsForValuesAffectingMessages; +@property(readonly, nonatomic) BOOL shouldLogConversationViewUpdates; // @synthesize shouldLogConversationViewUpdates=_shouldLogConversationViewUpdates; +@property(copy, nonatomic) id conversationMembersLoadedCompletionHandler; // @synthesize conversationMembersLoadedCompletionHandler=_conversationMembersLoadedCompletionHandler; +@property(nonatomic) BOOL isRegisteredForConversationUpdates; // @synthesize isRegisteredForConversationUpdates=_isRegisteredForConversationUpdates; +@property(nonatomic) BOOL conversationMembersLoaded; // @synthesize conversationMembersLoaded=_conversationMembersLoaded; +@property(nonatomic) long long loadBehavior; // @synthesize loadBehavior=_loadBehavior; +@property(copy, nonatomic) NSSet *initialPrimaryMessages; // @synthesize initialPrimaryMessages=_initialPrimaryMessages; +@property(copy, nonatomic) NSArray *initialMessages; // @synthesize initialMessages=_initialMessages; +@property(retain, nonatomic) MFCriterion *mailboxCriterion; // @synthesize mailboxCriterion=_mailboxCriterion; +@property(nonatomic) long long conversationID; // @synthesize conversationID=_conversationID; +- (void)unhideMessages:(id)arg1; +- (void)hideMessages:(id)arg1; +- (void)markConversationMembersAsRead:(id)arg1; +- (void)_conversationMessagesFlagsChanged:(id)arg1; +- (void)_conversationMessagesCompacted:(id)arg1; +- (void)_conversationMessagesUpdated:(id)arg1; +- (void)_conversationsUpdated:(id)arg1; +- (void)_conversationMessagesLoaded:(id)arg1; +- (void)_updateConversationMembersWithAddedMessages:(id)arg1 primaryMessages:(id)arg2; +- (void)_removeMessage:(id)arg1 fromConversationMember:(id)arg2; +- (void)_addMessage:(id)arg1 isPrimary:(BOOL)arg2 toConversationMember:(id)arg3; +- (void)_removeConversationMember:(id)arg1; +- (void)_addNewConversationMember:(id)arg1; +- (void)_updateMessageNumbers; +- (void)_updateOrderedConversationMembers; +- (void)_quickFetchTimeout; +- (void)asyncLoadConversationMembers:(id)arg1; +@property(copy, nonatomic) NSArray *orderedConversationMembers; +@property(readonly, nonatomic) NSSet *messages; +- (id)_orderingComparator; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (id)description; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)initWithConversationID:(long long)arg1 mailboxCriterion:(id)arg2 initialMessages:(id)arg3 initialPrimaryMessages:(id)arg4 loadBehavior:(long long)arg5; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ConversationCellView.h b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationCellView.h new file mode 100644 index 00000000..878e8af9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationCellView.h @@ -0,0 +1,50 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class CALayer, NSLayoutConstraint, NSViewController; + +@interface ConversationCellView : NSView +{ + NSViewController *_viewController; + BOOL _emphasized; + BOOL _selected; + BOOL _focused; + BOOL _primary; + NSLayoutConstraint *_widthConstraint; + NSLayoutConstraint *_heightConstraint; + NSLayoutConstraint *_midXConstraint; + NSLayoutConstraint *_minYConstraint; + CALayer *_shadowLayer; + CALayer *_overlayLayer; +} + ++ (BOOL)requiresConstraintBasedLayout; +@property(retain, nonatomic) CALayer *overlayLayer; // @synthesize overlayLayer=_overlayLayer; +@property(retain, nonatomic) CALayer *shadowLayer; // @synthesize shadowLayer=_shadowLayer; +@property(retain, nonatomic) NSLayoutConstraint *minYConstraint; // @synthesize minYConstraint=_minYConstraint; +@property(retain, nonatomic) NSLayoutConstraint *midXConstraint; // @synthesize midXConstraint=_midXConstraint; +@property(retain, nonatomic) NSLayoutConstraint *heightConstraint; // @synthesize heightConstraint=_heightConstraint; +@property(retain, nonatomic) NSLayoutConstraint *widthConstraint; // @synthesize widthConstraint=_widthConstraint; +- (void)layoutSublayersOfLayer:(id)arg1; +- (void)updateLayer; +- (id)makeBackingLayer; +- (void)setFrameSize:(struct CGSize)arg1; +- (id)_enclosingConversationView; +@property(nonatomic) BOOL primary; +@property(nonatomic) BOOL focused; +@property(nonatomic) BOOL selected; +@property(nonatomic) BOOL emphasized; +@property(retain, nonatomic) NSViewController *viewController; +- (BOOL)wantsUpdateLayer; +- (BOOL)isOpaque; +- (BOOL)isFlipped; +- (BOOL)clipsToBounds; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ConversationHeightStorage.h b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationHeightStorage.h new file mode 100644 index 00000000..e09742b1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationHeightStorage.h @@ -0,0 +1,40 @@ +/* + * 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" + +@class NSMutableArray; + +@interface ConversationHeightStorage : NSObject +{ + double _height; + double _spacing; + NSMutableArray *_heights; + NSMutableArray *_yCache; +} + ++ (id)keyPathsForValuesAffectingCount; +@property(readonly, nonatomic) NSMutableArray *yCache; // @synthesize yCache=_yCache; +@property(readonly, nonatomic) NSMutableArray *heights; // @synthesize heights=_heights; +@property(nonatomic) double spacing; // @synthesize spacing=_spacing; +@property(nonatomic) double height; // @synthesize height=_height; +- (unsigned long long)indexAtY:(double)arg1; +- (double)maxYOfIndex:(unsigned long long)arg1; +- (double)minYOfIndex:(unsigned long long)arg1; +- (double)heightOfIndex:(unsigned long long)arg1; +- (void)setHeight:(double)arg1 ofIndex:(unsigned long long)arg2; +- (void)_invalidateCacheForIndex:(unsigned long long)arg1; +- (void)removeAllHeights; +- (void)removeHeightAtIndex:(unsigned long long)arg1; +- (void)moveHeightAtIndex:(unsigned long long)arg1 toIndex:(unsigned long long)arg2; +- (void)addHeight:(double)arg1; +- (void)insertHeight:(double)arg1 atIndex:(unsigned long long)arg2; +@property(readonly, nonatomic) unsigned long long count; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ConversationMember.h b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationMember.h new file mode 100644 index 00000000..eb9bb3f2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationMember.h @@ -0,0 +1,133 @@ +/* + * 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 "NSCopying.h" + +@class Conversation, MCMessage, MCMessageBody, MCMessageHeaders, MUIWebDocument, NSArray, NSData, NSDate, NSImage, NSIndexSet, NSMutableSet, NSString, WebDocumentGenerator; + +@interface ConversationMember : NSObject +{ + NSMutableSet *_primitiveMessages; + NSMutableSet *_primaryMessages; + NSMutableSet *_hiddenMessages; + BOOL _isPrimary; + BOOL _isDeleted; + unsigned long long _messageNumber; + MCMessage *_originalMessage; + NSImage *_senderImage; + BOOL _senderIsVIP; + int _conversationPosition; + BOOL _primitiveIsUnread; + BOOL _primitiveIsFlagged; + NSIndexSet *_primitiveFlagColors; + unsigned long long _primitiveJunkStatus; + BOOL _isEncrypted; + BOOL _isSigned; + NSArray *_signers; + NSArray *_signerNames; + BOOL _bodyCached; + BOOL _registeredForNotifications; + BOOL _shouldLogConversationViewUpdates; + BOOL _senderImageLoadedOrTimedOut; + MCMessageHeaders *_headers; + Conversation *_conversation; + NSArray *_messages; + WebDocumentGenerator *_documentGenerator; +} + ++ (id)keyPathsForValuesAffectingJunkStatus; ++ (id)keyPathsForValuesAffectingFlagColors; ++ (id)keyPathsForValuesAffectingIsFlagged; ++ (id)keyPathsForValuesAffectingIsUnread; ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; ++ (id)keyPathsForValuesAffectingMessageBody; ++ (id)keyPathsForValuesAffectingAttachmentSize; ++ (id)keyPathsForValuesAffectingNumberOfAttachments; ++ (id)keyPathsForValuesAffectingMailboxName; ++ (id)keyPathsForValuesAffectingDateReceived; ++ (id)keyPathsForValuesAffectingSubject; ++ (id)keyPathsForValuesAffectingBccRecipients; ++ (id)keyPathsForValuesAffectingCcRecipients; ++ (id)keyPathsForValuesAffectingToRecipients; ++ (id)keyPathsForValuesAffectingSender; ++ (id)keyPathsForValuesAffectingMessageIDHeaderDigest; ++ (id)keyPathsForValuesAffectingWebDocument; ++ (id)flagsAffectingConversationMember; +@property(nonatomic) BOOL senderImageLoadedOrTimedOut; // @synthesize senderImageLoadedOrTimedOut=_senderImageLoadedOrTimedOut; +@property(readonly, nonatomic) BOOL shouldLogConversationViewUpdates; // @synthesize shouldLogConversationViewUpdates=_shouldLogConversationViewUpdates; +@property(nonatomic) BOOL registeredForNotifications; // @synthesize registeredForNotifications=_registeredForNotifications; +@property(nonatomic) BOOL bodyCached; // @synthesize bodyCached=_bodyCached; +@property(retain, nonatomic) WebDocumentGenerator *documentGenerator; // @synthesize documentGenerator=_documentGenerator; +@property(copy, nonatomic) NSArray *messages; // @synthesize messages=_messages; +@property(nonatomic) Conversation *conversation; // @synthesize conversation=_conversation; +@property(retain, nonatomic) MCMessageHeaders *headers; // @synthesize headers=_headers; +- (id)messagesInSameMailboxAsOriginalMessage; +- (BOOL)isPrimaryMessage:(id)arg1; +- (void)unhideMessage:(id)arg1; +- (void)hideMessage:(id)arg1; +- (void)removeMessage:(id)arg1; +- (void)addMessage:(id)arg1 isPrimary:(BOOL)arg2; +- (id)_preferredOriginalMessage; +- (void)_reloadOriginalMessage; +- (BOOL)_messageIsInSent:(id)arg1; +- (BOOL)_messageIsInTrashJunkOrOutbox:(id)arg1; +- (BOOL)_messageIsDeleted:(id)arg1; +- (BOOL)_shouldDisplayMessage:(id)arg1; +- (void)updateLastViewedDate; +- (void)_reloadSenderIsVIP; +- (void)_VIPSendersDidChange:(id)arg1; +- (void)_reloadValuesForAggregateFlags; +- (void)flagsChangedForMessage:(id)arg1; +@property(nonatomic) unsigned long long junkStatus; +@property(copy, nonatomic) NSIndexSet *flagColors; +@property(nonatomic) BOOL isFlagged; +@property(nonatomic) BOOL isUnread; +- (void)_addressPhotoChanged:(id)arg1; +- (void)_addressPhotoLoaded:(id)arg1; +- (void)_asyncLoadSenderImage; +- (void)_senderImageTimedOut; +@property(nonatomic) unsigned long long primitiveJunkStatus; +@property(copy, nonatomic) NSIndexSet *primitiveFlagColors; +@property(nonatomic) BOOL primitiveIsFlagged; +@property(nonatomic) BOOL primitiveIsUnread; +@property(nonatomic) int conversationPosition; +@property(nonatomic) BOOL senderIsVIP; +@property(retain, nonatomic) NSImage *senderImage; +@property(retain, nonatomic) MCMessage *originalMessage; +@property(nonatomic) unsigned long long messageNumber; +@property(nonatomic) BOOL isDeleted; +@property(nonatomic) BOOL isPrimary; +- (void)_reloadSecurityProperties; +@property(retain, nonatomic) NSArray *signerNames; +@property(retain, nonatomic) NSArray *signers; +@property(nonatomic) BOOL isSigned; +@property(nonatomic) BOOL isEncrypted; +@property(readonly, nonatomic) MCMessageBody *messageBody; +@property(readonly, nonatomic) unsigned long long attachmentSize; +@property(readonly, nonatomic) unsigned long long numberOfAttachments; +@property(readonly, nonatomic) NSString *mailboxName; +@property(readonly, nonatomic) NSDate *dateReceived; +@property(readonly, nonatomic) NSString *subject; +@property(readonly, nonatomic) NSArray *bccRecipients; +@property(readonly, nonatomic) NSArray *ccRecipients; +@property(readonly, nonatomic) NSArray *toRecipients; +@property(readonly, nonatomic) NSString *sender; +@property(readonly, nonatomic) NSData *messageIDHeaderDigest; +@property(readonly, nonatomic) MUIWebDocument *webDocument; +- (void)cancelLoad; +- (void)asyncLoad:(id)arg1; +- (void)invalidate; +- (id)description; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (id)initWithMessages:(id)arg1 primaryMessages:(id)arg2 forConversation:(id)arg3; +- (id)initWithMessage:(id)arg1 isPrimary:(BOOL)arg2 forConversation:(id)arg3; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ConversationMemberArrayController.h b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationMemberArrayController.h new file mode 100644 index 00000000..e1027f86 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationMemberArrayController.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArrayController.h" + +@class MCMessage, NSMutableSet; + +@interface ConversationMemberArrayController : NSArrayController +{ + MCMessage *_focusedMessage; + BOOL _temporarilyToggleRelatedMessages; + NSMutableSet *_directlyLinkedSentMessages; +} + ++ (id)keyPathsForValuesAffectingHasRelatedMessages; +@property(retain, nonatomic) NSMutableSet *directlyLinkedSentMessages; // @synthesize directlyLinkedSentMessages=_directlyLinkedSentMessages; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_updateDirectlyLinkedSentMessagesForContent:(id)arg1; +- (void)_updateFilterPredicate; +@property(readonly, nonatomic) BOOL viewingRelatedMessages; +@property(readonly, nonatomic) BOOL hasRelatedMessages; +@property(nonatomic) BOOL temporarilyToggleRelatedMessages; +- (void)resetConversationState; +@property(retain, nonatomic) MCMessage *focusedMessage; +- (id)arrangeObjects:(id)arg1; +- (id)automaticRearrangementKeyPaths; +- (BOOL)automaticallyRearrangesObjects; +- (void)setContent:(id)arg1; +- (void)dealloc; +- (void)_conversationMemberArrayControllerCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithContent:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ConversationView.h b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationView.h new file mode 100644 index 00000000..9452292a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationView.h @@ -0,0 +1,138 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "NSScrollViewDelegate.h" + +@class ConversationHeightStorage, NSIndexSet, NSMutableArray, NSMutableIndexSet; + +@interface ConversationView : NSView +{ + struct CGSize _cellSpacing; + BOOL _emphasized; + unsigned long long _focusedIndex; + NSMutableIndexSet *_selectionIndexes; + BOOL _adjustHeightForPinning; + BOOL _adjustScrollForPinning; + BOOL _inInertialScroll; + BOOL _inScroll; + NSMutableArray *_cellViews; + id _delegate; + NSMutableIndexSet *_faultedIndexes; + ConversationHeightStorage *_heightStorage; + NSMutableIndexSet *_lockedIndexes; + unsigned long long _pinnedCellEdge; + unsigned long long _pinnedEdge; + double _pinnedHeightAdjustment; + unsigned long long _pinnedIndex; + double _pinnedOffset; +} + ++ (id)keyPathsForValuesAffectingNumberOfCells; ++ (BOOL)requiresConstraintBasedLayout; +@property(nonatomic) double pinnedOffset; // @synthesize pinnedOffset=_pinnedOffset; +@property(nonatomic) unsigned long long pinnedIndex; // @synthesize pinnedIndex=_pinnedIndex; +@property(nonatomic) double pinnedHeightAdjustment; // @synthesize pinnedHeightAdjustment=_pinnedHeightAdjustment; +@property(nonatomic) unsigned long long pinnedEdge; // @synthesize pinnedEdge=_pinnedEdge; +@property(nonatomic) unsigned long long pinnedCellEdge; // @synthesize pinnedCellEdge=_pinnedCellEdge; +@property(readonly, nonatomic) NSMutableIndexSet *lockedIndexes; // @synthesize lockedIndexes=_lockedIndexes; +@property(nonatomic) BOOL inScroll; // @synthesize inScroll=_inScroll; +@property(nonatomic) BOOL inInertialScroll; // @synthesize inInertialScroll=_inInertialScroll; +@property(readonly, nonatomic) ConversationHeightStorage *heightStorage; // @synthesize heightStorage=_heightStorage; +@property(readonly, nonatomic) NSMutableIndexSet *faultedIndexes; // @synthesize faultedIndexes=_faultedIndexes; +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; +@property(readonly, nonatomic) NSMutableArray *cellViews; // @synthesize cellViews=_cellViews; +@property(nonatomic) BOOL adjustScrollForPinning; // @synthesize adjustScrollForPinning=_adjustScrollForPinning; +@property(nonatomic) BOOL adjustHeightForPinning; // @synthesize adjustHeightForPinning=_adjustHeightForPinning; +- (BOOL)_scrollToNextCell:(id)arg1 contiguously:(BOOL)arg2; +- (BOOL)_scrollToPreviousCell:(id)arg1 contiguously:(BOOL)arg2; +- (void)scrollPageDown:(id)arg1; +- (void)scrollPageUp:(id)arg1; +- (void)scrollToEndOfDocument:(id)arg1; +- (void)scrollToBeginningOfDocument:(id)arg1; +- (void)moveDown:(id)arg1; +- (void)moveUp:(id)arg1; +- (void)moveLeft:(id)arg1; +- (void)moveRight:(id)arg1; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (void)keyDown:(id)arg1; +- (BOOL)performKeyEquivalent:(id)arg1; +- (void)scrollToCellAtIndex:(unsigned long long)arg1 constrainScroll:(BOOL)arg2; +- (BOOL)scrollRectToVisible:(struct CGRect)arg1; +- (void)scrollPoint:(struct CGPoint)arg1; +- (void)_scrollEdge:(unsigned long long)arg1 to:(id)arg2; +- (id)enclosingScrollView; +- (void)didEndScrollInScrollView:(id)arg1; +- (void)didScrollInScrollView:(id)arg1; +- (void)didBeginScrollInScrollView:(id)arg1; +- (void)_scrollViewDidEndScroll; +- (void)_scrollViewDidScroll:(id)arg1; +- (void)_updatePreparedContentRect; +- (void)_updateGeometryIfNeeded; +- (void)_updateConstraintsForCellAtIndex:(unsigned long long)arg1; +- (void)setFrameSize:(struct CGSize)arg1; +- (void)setFrameOrigin:(struct CGPoint)arg1; +- (void)layout; +- (void)updateConstraints; +- (void)noteHeightOfCellAtIndex:(unsigned long long)arg1; +- (void)_updateSelectionIfNeeded; +- (void)_updateEmphasisIfNeeded; +- (void)deselectCellsAtIndexes:(id)arg1; +- (void)selectCellsAtIndexes:(id)arg1 byExtendingSelection:(BOOL)arg2; +- (id)hitTest:(struct CGPoint)arg1; +- (struct CGRect)adjustScroll:(struct CGRect)arg1; +- (struct CGRect)_adjustRectForPinning:(struct CGRect)arg1; +- (void)_pinToCellAtIndex:(unsigned long long)arg1 cellEdge:(unsigned long long)arg2 edge:(unsigned long long)arg3 offset:(double)arg4; +- (void)pinToCellAtIndex:(unsigned long long)arg1 cellEdge:(unsigned long long)arg2 edge:(unsigned long long)arg3; +- (void)_pinTo:(struct CGRect)arg1 edge:(unsigned long long)arg2; +- (void)enumerateCellViewsWithOptions:(unsigned long long)arg1 usingBlock:(id)arg2; +- (void)enumerateCellViewsUsingBlock:(id)arg1; +- (unsigned long long)indexForView:(id)arg1; +- (unsigned long long)indexForResponder:(id)arg1; +- (id)cellViewForView:(id)arg1; +- (id)cellViewForResponder:(id)arg1; +- (id)cellViewAtIndex:(unsigned long long)arg1; +- (struct CGRect)rectForCellAtIndex:(unsigned long long)arg1; +- (struct _NSRange)rangeOfCellsInRect:(struct CGRect)arg1; +- (unsigned long long)_indexOfCellView:(id)arg1; +- (void)prepareContentInRect:(struct CGRect)arg1; +- (void)_faultCellsAtIndexesInRange:(struct _NSRange)arg1; +- (void)unlockCellsAtIndexes:(id)arg1; +- (void)unlockCellsAtIndexesInRange:(struct _NSRange)arg1; +- (void)unlockCellAtIndex:(unsigned long long)arg1; +- (void)lockCellsAtIndexes:(id)arg1; +- (void)lockCellsAtIndexesInRange:(struct _NSRange)arg1; +- (void)lockCellAtIndex:(unsigned long long)arg1; +- (void)removeAllCells; +- (void)removeCellsAtIndexes:(id)arg1; +- (void)removeCellsAtIndexesInRange:(struct _NSRange)arg1; +- (void)removeCellAtIndex:(unsigned long long)arg1; +- (void)moveCellAtIndex:(unsigned long long)arg1 toIndex:(unsigned long long)arg2; +- (void)insertCellsAtIndexes:(id)arg1; +- (void)insertCellsAtIndexesInRange:(struct _NSRange)arg1; +- (void)insertCellAtIndex:(unsigned long long)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)viewDidMoveToWindow; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)viewDidMoveToSuperview; +- (void)viewWillMoveToSuperview:(id)arg1; +@property(readonly, nonatomic) struct _NSRange visibleRange; +@property(copy, nonatomic) NSIndexSet *selectionIndexes; +@property(readonly, nonatomic) unsigned long long numberOfCells; +@property(readonly, nonatomic) unsigned long long firstResponderIndex; +@property(nonatomic) unsigned long long focusedIndex; +@property(nonatomic) BOOL emphasized; +@property(nonatomic) struct CGSize cellSpacing; +- (BOOL)isFlipped; +- (BOOL)acceptsFirstResponder; +- (void)dealloc; +- (void)_conversationViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ConversationViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationViewController.h new file mode 100644 index 00000000..68186b94 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationViewController.h @@ -0,0 +1,101 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +#import "ConversationViewDelegate.h" +#import "NSUserInterfaceValidations.h" + +@class ConversationMemberArrayController, ConversationView, ConversationViewFindController, NSDictionary, NSMutableDictionary, NSMutableIndexSet, NSMutableOrderedSet, NSUUID, UnfoldAnimationController; + +@interface ConversationViewController : NSViewController +{ + NSMutableDictionary *_defaultMessageViewingState; + NSMutableDictionary *_messageViewingStateByLibraryID; + BOOL _automaticallySelectsPinnedMessage; + BOOL _loaded; + ConversationView *_conversationView; + NSMutableOrderedSet *_conversationMembers; + NSMutableIndexSet *_loadIndexes; + NSMutableIndexSet *_primaryIndexes; + NSMutableIndexSet *_unreadIndexes; + NSMutableIndexSet *_visibleIndexes; + ConversationMemberArrayController *_arrayController; + ConversationViewFindController *_findController; + UnfoldAnimationController *_unfoldAnimationController; + double _messageHeightBeforeRedundantTextExpansion; + double _pageZoom; + NSUUID *_updateUUID; +} + +@property(copy, nonatomic) NSUUID *updateUUID; // @synthesize updateUUID=_updateUUID; +@property(nonatomic) double pageZoom; // @synthesize pageZoom=_pageZoom; +@property(nonatomic) double messageHeightBeforeRedundantTextExpansion; // @synthesize messageHeightBeforeRedundantTextExpansion=_messageHeightBeforeRedundantTextExpansion; +@property(nonatomic) BOOL loaded; // @synthesize loaded=_loaded; +@property(nonatomic) BOOL automaticallySelectsPinnedMessage; // @synthesize automaticallySelectsPinnedMessage=_automaticallySelectsPinnedMessage; +@property(retain, nonatomic) UnfoldAnimationController *unfoldAnimationController; // @synthesize unfoldAnimationController=_unfoldAnimationController; +@property(readonly, nonatomic) ConversationViewFindController *findController; // @synthesize findController=_findController; +@property(readonly, nonatomic) ConversationMemberArrayController *arrayController; // @synthesize arrayController=_arrayController; +@property(readonly, nonatomic) NSMutableIndexSet *visibleIndexes; // @synthesize visibleIndexes=_visibleIndexes; +@property(readonly, nonatomic) NSMutableIndexSet *unreadIndexes; // @synthesize unreadIndexes=_unreadIndexes; +@property(readonly, nonatomic) NSMutableIndexSet *primaryIndexes; // @synthesize primaryIndexes=_primaryIndexes; +@property(readonly, nonatomic) NSMutableIndexSet *loadIndexes; // @synthesize loadIndexes=_loadIndexes; +@property(readonly, nonatomic) NSMutableOrderedSet *conversationMembers; // @synthesize conversationMembers=_conversationMembers; +@property(readonly, nonatomic) ConversationView *conversationView; // @synthesize conversationView=_conversationView; +- (void)_cancelRedundantTextExpansionAnimation; +- (void)performRedundantTextExpansionForDocumentView:(id)arg1 atClusterIndex:(long long)arg2; +- (void)_startRedundantTextExpansionAnimationForWebDocumentView:(id)arg1; +- (void)_getInitialMetricsAndSnapshotForRedundantTextExpansionForDocumentView:(id)arg1 atClusterIndex:(long long)arg2 completionBlock:(id)arg3; +- (double)_scrollBarWidth; +- (BOOL)validateToolbarItem:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)performTextFinderAction:(id)arg1; +- (void)makeFontSmaller:(id)arg1; +- (void)makeFontBigger:(id)arg1; +- (void)toggleViewRelatedMessages:(id)arg1; +- (id)actionViewController; +- (id)actionConversationMembers; +- (id)actionMessagesIncludingDuplicates:(BOOL)arg1; +- (id)_actionConversationMemberIndices; +- (void)_updateLastViewedDateAndMarkReadIfNeeded:(id)arg1; +- (void)_prepareToUpdateLastViewedDateAndMarkReadIfNeeded:(id)arg1 index:(unsigned long long)arg2; +- (void)_adjustHorizontalScrollersForCell:(id)arg1 forceShow:(BOOL)arg2; +- (void)_adjustHorizontalScrollersForceShow:(BOOL)arg1; +- (void)_hideAllHorizontalScrollers; +- (void)conversationView:(id)arg1 didEndScrollInScrollView:(id)arg2; +- (void)conversationView:(id)arg1 didScrollInScrollView:(id)arg2; +- (void)conversationView:(id)arg1 didBeginScrollInScrollView:(id)arg2; +- (void)conversationView:(id)arg1 didSelectIndex:(unsigned long long)arg2; +- (void)conversationView:(id)arg1 didRemoveCellView:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)conversationView:(id)arg1 didAddCellView:(id)arg2 atIndex:(unsigned long long)arg3; +- (double)conversationView:(id)arg1 initialHeightOfCellAtIndex:(unsigned long long)arg2; +- (void)_restoreMessageViewingState:(id)arg1; +- (void)_saveMessageViewingState:(id)arg1; +- (void)_updateCellViewAtIndexIfNeeded:(unsigned long long)arg1; +- (void)_cellViewFrameDidChange:(id)arg1; +- (void)_bodyContentViewGeometryDidChange:(id)arg1; +- (void)_loadNextIndex; +- (void)_performInitialPinning; +- (void)_updateConversationMembers:(id)arg1; +- (void)_resetConversationState; +- (void)_updateFirstResponderIfNeeded; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(readonly, nonatomic) NSDictionary *messageViewingStateByLibraryID; +- (void)setView:(id)arg1; +- (id)view; +- (void)setRepresentedObject:(id)arg1 withFocusedMessage:(id)arg2; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +- (void)dealloc; +- (void)tearDown; +- (void)loadView; +- (void)_conversationViewControllerCommonInit; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ConversationViewDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationViewDelegate-Protocol.h new file mode 100644 index 00000000..bf90c6e0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationViewDelegate-Protocol.h @@ -0,0 +1,21 @@ +/* + * 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" + +@protocol ConversationViewDelegate + +@optional +- (void)conversationView:(id)arg1 didEndScrollInScrollView:(id)arg2; +- (void)conversationView:(id)arg1 didScrollInScrollView:(id)arg2; +- (void)conversationView:(id)arg1 didBeginScrollInScrollView:(id)arg2; +- (void)conversationView:(id)arg1 didDeselectIndex:(unsigned long long)arg2; +- (void)conversationView:(id)arg1 didSelectIndex:(unsigned long long)arg2; +- (void)conversationView:(id)arg1 didRemoveCellView:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)conversationView:(id)arg1 didAddCellView:(id)arg2 atIndex:(unsigned long long)arg3; +- (double)conversationView:(id)arg1 initialHeightOfCellAtIndex:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ConversationViewFindController.h b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationViewFindController.h new file mode 100644 index 00000000..83de35d2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationViewFindController.h @@ -0,0 +1,66 @@ +/* + * 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 "NSTextFinderClient.h" +#import "NSUserInterfaceValidations.h" + +@class ConversationViewController, NSArray, NSMutableArray, NSProgress, NSString, NSTextFinder; + +@interface ConversationViewFindController : NSObject +{ + NSTextFinder *_textFinder; + NSArray *_incrementalAsynchronousDocumentMatches; + ConversationViewController *_viewController; + NSString *_targetString; + unsigned long long _findOptions; + NSProgress *_currentProgress; + NSProgress *_updateProgress; + NSMutableArray *_findStore; +} + +@property(retain, nonatomic) NSMutableArray *findStore; // @synthesize findStore=_findStore; +@property(retain, nonatomic) NSProgress *updateProgress; // @synthesize updateProgress=_updateProgress; +@property(retain, nonatomic) NSProgress *currentProgress; // @synthesize currentProgress=_currentProgress; +@property(nonatomic) unsigned long long findOptions; // @synthesize findOptions=_findOptions; +@property(retain, nonatomic) NSString *targetString; // @synthesize targetString=_targetString; +@property(readonly, nonatomic) ConversationViewController *viewController; // @synthesize viewController=_viewController; +- (void)_updateVisibleRectsForCell:(unsigned long long)arg1; +- (void)_conversationViewDidResize:(id)arg1; +- (void)_cellBoundsDidChange:(id)arg1; +- (void)_revalidateVisibleCells:(id)arg1; +- (void)_updateConversationMatches:(id *)arg1 forWebMatches:(id)arg2 atCellIndex:(unsigned long long)arg3 visibleRect:(struct CGRect)arg4; +- (id)_conversationMatchesForWebMatches:(id)arg1 atCellIndex:(unsigned long long)arg2 cache:(BOOL)arg3; +- (void)_asyncFindMatchesAtCellIndex:(unsigned long long)arg1 maxResults:(unsigned long long)arg2 progress:(id)arg3 completionHandler:(id)arg4; +- (void)_findNextMatchAtCurrentIndex:(unsigned long long)arg1 startIndex:(unsigned long long)arg2 conversationDidWrap:(BOOL)arg3 progress:(id)arg4 resultCollector:(id)arg5; +- (void)_findNextMatchForString:(id)arg1 findOptions:(unsigned long long)arg2 resultCollector:(id)arg3; +- (void)_findAllMatchesWithProgress:(id)arg1 currentIndex:(unsigned long long)arg2 stopIndex:(unsigned long long)arg3 resultCollector:(id)arg4; +- (void)_findAllMatchesForString:(id)arg1 findOptions:(unsigned long long)arg2 resultCollector:(id)arg3; +- (void)selectFindMatch:(id)arg1 completionHandler:(id)arg2; +- (void)scrollFindMatchToVisible:(id)arg1; +- (void)getSelectedText:(id)arg1; +- (void)findMatchesForString:(id)arg1 relativeToMatch:(id)arg2 findOptions:(unsigned long long)arg3 maxResults:(unsigned long long)arg4 resultCollector:(id)arg5; +- (void)performTextFinderAction:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +@property(readonly, nonatomic) NSTextFinder *textFinder; +- (void)reset; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)tearDown; +- (void)dealloc; +- (id)initWithViewController:(id)arg1; + +// Remaining properties +@property(readonly) BOOL allowsMultipleSelection; +@property(readonly, getter=isEditable) BOOL editable; +@property(readonly) struct _NSRange firstSelectedRange; +@property(readonly, getter=isSelectable) BOOL selectable; +@property(copy) NSArray *selectedRanges; +@property(readonly) NSString *string; +@property(readonly) NSArray *visibleCharacterRanges; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ConversationsObserver.h b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationsObserver.h new file mode 100644 index 00000000..09626d65 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ConversationsObserver.h @@ -0,0 +1,42 @@ +/* + * 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" + +@class NSCountedSet, NSMutableDictionary, NSOperationQueue; + +@interface ConversationsObserver : NSObject +{ + NSOperationQueue *_workQueue; + NSCountedSet *_registeredConversationIDs; + NSMutableDictionary *_mailboxCriterionByConversationID; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)_libraryMessagesFlagsChanged:(id)arg1; +- (void)_libraryMessagesUpdated:(id)arg1; +- (void)_libraryMessagesCompacted:(id)arg1; +- (void)_libraryConversationsWereChanged:(id)arg1; +- (void)_updateRegistrationForConversation:(id)arg1 withNewConversationID:(id)arg2; +- (BOOL)_isRegistered:(id)arg1; +- (void)unregisterConversationID:(long long)arg1; +- (void)registerConversationID:(long long)arg1 withMailboxCriterion:(id)arg2; +- (unsigned int)_loadOptions; +- (id)_criterionForConversationID:(id)arg1; +- (id)_primaryMessagesForConversationIDNumber:(id)arg1; +- (id)_primaryMessagesForConversations:(id)arg1; +- (id)_allMessagesForConversationIDNumber:(id)arg1; +- (id)_allMessagesForConversations:(id)arg1; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/CriteriaUIHelper.h b/MailHeaders/Mavericks_10.9.5/MailUI/CriteriaUIHelper.h new file mode 100644 index 00000000..38fc2970 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/CriteriaUIHelper.h @@ -0,0 +1,71 @@ +/* + * 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 "NSTableViewDataSource.h" + +@class CriterionView, NSButton, NSMutableArray, NSPanel, NSPopUpButton, NSScrollView, NSString, NSTableView, NSTextField, NSWindow; + +@interface CriteriaUIHelper : NSObject +{ + NSMutableArray *_criteriaViews; + NSTextField *_nameField; + NSScrollView *_criteriaContainer; + NSPopUpButton *_allCriteriaMustBeMetPopUp; + NSButton *_includeTrashCheckbox; + NSButton *_includeSentCheckbox; + NSTextField *_performActionLabel; + NSScrollView *_actionContainer; + NSPanel *_headerListPanel; + NSTableView *_headerListTable; + NSButton *_addHeaderButton; + BOOL _isEditingHeader; + BOOL _criteriaWillBeUsedForMailboxes; + id _objectWithCriteria; + CriterionView *_criterionView; + NSString *_previousTitle; + NSWindow *_parentWindow; +} + ++ (id)headerList; ++ (void)unpackUserCriteria:(id *)arg1 noJunkCriterion:(id *)arg2 noTrashCriterion:(id *)arg3 noSentCriterion:(id *)arg4 allCriteriaMustBeSatisfield:(char *)arg5 fromCriteria:(id)arg6; ++ (id)packageUserCriteria:(id)arg1 withNoJunk:(BOOL)arg2 noTrash:(BOOL)arg3 noSent:(BOOL)arg4 allUserCriteriaMustBeSatisfied:(BOOL)arg5; +@property NSWindow *parentWindow; // @synthesize parentWindow=_parentWindow; +@property(retain) NSString *previousTitle; // @synthesize previousTitle=_previousTitle; +@property(retain, nonatomic) CriterionView *criterionView; // @synthesize criterionView=_criterionView; +- (void)connectNextKeyViewChain; +- (void)tileViews:(id)arg1 inContainer:(id)arg2 withChangeAtRow:(long long)arg3 removeIsEnabled:(BOOL)arg4; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)_removeInvalidHeaders; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)addHeaderClicked:(id)arg1; +- (void)_headerTableEndedEditing:(id)arg1; +- (void)_headerTableBeganEditing:(id)arg1; +- (void)_updateHeaderListUI; +- (void)headerListCancelClicked:(id)arg1; +- (void)headerListOkClicked:(id)arg1; +- (void)_endEditingHeader; +- (void)resetHeaderListForObjectsWithCriteria:(id)arg1; +- (void)_configureAllCriterionMenus; +- (void)editHeaderList; +- (void)userHasSelectedSenderInContacts:(char *)arg1 senderInPreviousRecipients:(char *)arg2; +- (void)removeView:(id)arg1 fromViews:(id)arg2 inContainer:(id)arg3; +- (void)removeCriterion:(id)arg1; +- (id)_createNewCriterionViewForSender:(id)arg1; +- (void)addCriterion:(id)arg1; +- (void)configureCriteriaForObject:(id)arg1; +- (void)trashMailboxCriterionAdded; +- (void)sentMessagesMailboxCriterionAdded; +- (void)putCriteriaFromUIIntoObject:(id)arg1; +- (id)newCriterion; +- (void)awakeFromNib; +- (void)dealloc; +@property BOOL criteriaWillBeUsedForMailboxes; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/CriterionView.h b/MailHeaders/Mavericks_10.9.5/MailUI/CriterionView.h new file mode 100644 index 00000000..82ae8070 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/CriterionView.h @@ -0,0 +1,89 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ColorBackgroundView.h" + +@class CriteriaUIHelper, MFMailbox, MailboxesChooser, NSButton, NSDatePicker, NSMenu, NSNumberFormatter, NSPopUpButton, NSString, NSTextField, NSView; + +@interface CriterionView : ColorBackgroundView +{ + CriteriaUIHelper *_owner; + NSButton *_removeButton; + NSButton *_addButton; + NSView *_currentView; + NSPopUpButton *_criterionPopUp; + NSPopUpButton *_qualifierPopUp; + NSTextField *_expressionStringField; + NSTextField *_expressionNumberField; + NSTextField *_expressionOtherNumberField; + NSDatePicker *_dateFieldPicker; + NSDatePicker *_otherDateFieldPicker; + NSPopUpButton *_unitsPopUp; + NSMenu *_criterionMenu; + NSMenu *_dateQualifierMenu; + BOOL _isSmartMailboxCriterion; + NSString *_expressionGuess; + MFMailbox *_mailboxBeingEdited; + long long _criterionType; + long long _criterionTypeForOtherArea; + NSView *_headerCriteriaView; + NSView *_simpleCriteriaView; + NSView *_accountOrGroupView; + NSView *_mailboxesView; + NSView *_daysOldDatesView; + NSView *_simpleDatesView; + NSView *_daysAgoDatesView; + NSView *_inThelastDaysDatesView; + NSView *_daysAgoRangeDatesView; + NSView *_beforeAfterDatesView; + NSView *_dateRangeDatesView; + NSView *_attachmentTypeView; + NSView *_flaggedStatusView; + NSNumberFormatter *_daysFormatter; + NSNumberFormatter *_daysOldFormatter; + MailboxesChooser *_mailboxesChooser; +} + +@property(retain, nonatomic) MailboxesChooser *mailboxesChooser; // @synthesize mailboxesChooser=_mailboxesChooser; +@property(retain, nonatomic) NSNumberFormatter *daysOldFormatter; // @synthesize daysOldFormatter=_daysOldFormatter; +@property(retain, nonatomic) NSNumberFormatter *daysFormatter; // @synthesize daysFormatter=_daysFormatter; +@property(retain, nonatomic) NSView *flaggedStatusView; // @synthesize flaggedStatusView=_flaggedStatusView; +@property(retain, nonatomic) NSView *attachmentTypeView; // @synthesize attachmentTypeView=_attachmentTypeView; +@property(retain, nonatomic) NSView *dateRangeDatesView; // @synthesize dateRangeDatesView=_dateRangeDatesView; +@property(retain, nonatomic) NSView *beforeAfterDatesView; // @synthesize beforeAfterDatesView=_beforeAfterDatesView; +@property(retain, nonatomic) NSView *daysAgoRangeDatesView; // @synthesize daysAgoRangeDatesView=_daysAgoRangeDatesView; +@property(retain, nonatomic) NSView *inThelastDaysDatesView; // @synthesize inThelastDaysDatesView=_inThelastDaysDatesView; +@property(retain, nonatomic) NSView *daysAgoDatesView; // @synthesize daysAgoDatesView=_daysAgoDatesView; +@property(retain, nonatomic) NSView *simpleDatesView; // @synthesize simpleDatesView=_simpleDatesView; +@property(retain, nonatomic) NSView *daysOldDatesView; // @synthesize daysOldDatesView=_daysOldDatesView; +@property(retain, nonatomic) NSView *mailboxesView; // @synthesize mailboxesView=_mailboxesView; +@property(retain, nonatomic) NSView *accountOrGroupView; // @synthesize accountOrGroupView=_accountOrGroupView; +@property(retain, nonatomic) NSView *simpleCriteriaView; // @synthesize simpleCriteriaView=_simpleCriteriaView; +@property(retain, nonatomic) NSView *headerCriteriaView; // @synthesize headerCriteriaView=_headerCriteriaView; +- (void)ownerSearchAreaChanged:(id)arg1; +- (void)mailboxCriterionPopUpChangedSelection:(id)arg1; +- (void)_setExpressionGuess:(id)arg1; +- (void)makeRemoveButtonEnabled:(BOOL)arg1; +- (void)criterionPopupChanged:(id)arg1; +- (void)_criterionPopupWillPopup:(id)arg1; +- (void)qualifierPopupChanged:(id)arg1; +- (BOOL)_populateQualifierPopup; +- (void)putHeaderCriteriaInPopUpMenu; +- (id)_timeSince1970StringFromDatePicker:(id)arg1 atEndOfDay:(BOOL)arg2; +- (id)_subcriteriaForRelativeDatesFrom:(long long)arg1 to:(long long)arg2 units:(long long)arg3 criterionType:(long long)arg4; +- (void)_insertBestGuessForExpressionField; +- (void)_configureViewForQualifierTag:(long long)arg1 criterion:(id)arg2; +- (void)_setEnglishStringsForPopUpMenuHeaderItems:(id)arg1; +- (id)criterion; +- (void)configureForCriterion:(id)arg1; +- (id)_menuUsingInfo:(struct menuItemInfo *)arg1 length:(long long)arg2; +- (void)setIsSmartMailboxCriterion:(BOOL)arg1 mailbox:(id)arg2; +- (void)awakeFromNib; +@property long long criterionType; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMCSSValue-MailExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMCSSValue-MailExtras.h new file mode 100644 index 00000000..a6e98b77 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMCSSValue-MailExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMCSSValue.h" + +@interface DOMCSSValue (MailExtras) +- (BOOL)matchesFontFamily:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMCharacterData-MailExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMCharacterData-MailExtras.h new file mode 100644 index 00000000..2b6281c3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMCharacterData-MailExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMCharacterData.h" + +@interface DOMCharacterData (MailExtras) +- (id)debugDescription; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMDocument-MailExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMDocument-MailExtras.h new file mode 100644 index 00000000..d303c554 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMDocument-MailExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMDocument.h" + +@interface DOMDocument (MailExtras) +- (id)createBlockPlaceholder; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMDocumentFragment-MailExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMDocumentFragment-MailExtras.h new file mode 100644 index 00000000..1cf9692f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMDocumentFragment-MailExtras.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMDocumentFragment.h" + +@interface DOMDocumentFragment (MailExtras) +- (void)insertTextAtBeginning:(id)arg1 atEnd:(id)arg2; +@property(readonly) DOMDocumentFragment *unwrappedFragment; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMElement-MailExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMElement-MailExtras.h new file mode 100644 index 00000000..2dcab5a7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMElement-MailExtras.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMElement.h" + +@interface DOMElement (MailExtras) +- (void)scrollToBottom; +- (BOOL)hasMarginsOfZero; +- (BOOL)isBlockLevelElement; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMElement-MailHTMLAttachments.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMElement-MailHTMLAttachments.h new file mode 100644 index 00000000..dcefa1a3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMElement-MailHTMLAttachments.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMElement.h" + +@interface DOMElement (MailHTMLAttachments) +- (BOOL)getNewElement:(id *)arg1 usingAttachments:(id)arg2 excludeRemoteImages:(BOOL)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMEventListener-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMEventListener-Protocol.h new file mode 100644 index 00000000..f2551066 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMEventListener-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol DOMEventListener +- (void)handleEvent:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLDocument-MailExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLDocument-MailExtras.h new file mode 100644 index 00000000..55dd578c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLDocument-MailExtras.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMHTMLDocument.h" + +@interface DOMHTMLDocument (MailExtras) ++ (id)listElements; +- (id)createElement:(id)arg1 class:(id)arg2 id:(id)arg3 editable:(id)arg4; +- (BOOL)convertStationeryBackgroundImageURLs; +- (id)backgroundImageURLs; +- (id)generatorMeta; +- (id)head; +- (id)createFragmentForURL:(id)arg1 text:(id)arg2; +- (id)createSpanElementWithTabs:(long long)arg1; +- (id)createFragmentForWebArchive:(id)arg1 baseURL:(id)arg2 bodyAsDiv:(BOOL)arg3; +- (id)createFragmentForWebArchive:(id)arg1 baseURL:(id)arg2; +- (id)createFragmentForWebArchive:(id)arg1; +- (id)createNonemptyDivElementWithPlainStyle; +- (id)createMessageQuoteElement; +- (id)createFragmentForStringLosingBR:(id)arg1; +- (id)createDocumentFragmentWithMarkupString:(id)arg1; +@property(readonly) BOOL containsSelectionMarkers; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLElement-MailExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLElement-MailExtras.h new file mode 100644 index 00000000..aa3323d4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLElement-MailExtras.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMHTMLElement.h" + +@interface DOMHTMLElement (MailExtras) ++ (BOOL)isRichTextStyle:(id)arg1; ++ (BOOL)isRichTextStyleCheckingOnlyFont:(id)arg1; ++ (BOOL)isRichTextStyleNotCheckingFont:(id)arg1; +- (BOOL)hasClassName:(id)arg1; +- (void)attachment:(id *)arg1 url:(id *)arg2 fromDocument:(id)arg3; +- (void)restoreEditableElementsEdited:(id *)arg1 unedited:(id *)arg2; +- (void)recursivelyRemoveMailAttributes:(BOOL)arg1 convertObjectsToImages:(BOOL)arg2 convertEditableElements:(BOOL)arg3 removeDefaultColorStyle:(BOOL)arg4; +- (BOOL)isRichTextElementForMessageFont:(id)arg1; +- (BOOL)isRichTextElementType; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLElement-MailQuoteLevel.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLElement-MailQuoteLevel.h new file mode 100644 index 00000000..e2c15908 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLElement-MailQuoteLevel.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMHTMLElement.h" + +@interface DOMHTMLElement (MailQuoteLevel) +- (long long)quoteLevelDelta; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLImageElement-MailHTMLAttachments.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLImageElement-MailHTMLAttachments.h new file mode 100644 index 00000000..9933c1f0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLImageElement-MailHTMLAttachments.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMHTMLImageElement.h" + +@interface DOMHTMLImageElement (MailHTMLAttachments) +- (BOOL)getNewElement:(id *)arg1 usingAttachments:(id)arg2 excludeRemoteImages:(BOOL)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLObjectElement-AttachmentLocator.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLObjectElement-AttachmentLocator.h new file mode 100644 index 00000000..6e6e2aff --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMHTMLObjectElement-AttachmentLocator.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMHTMLObjectElement.h" + +@interface DOMHTMLObjectElement (AttachmentLocator) +- (void)attachment:(id *)arg1 url:(id *)arg2 fromDocument:(id)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMNode-MailExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMNode-MailExtras.h new file mode 100644 index 00000000..72745c6d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMNode-MailExtras.h @@ -0,0 +1,88 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMNode.h" + +@class DOMHTMLElement; + +@interface DOMNode (MailExtras) +- (void)insertAsSiblingAfterNode:(id)arg1; +- (void)insertAsSiblingBeforeNode:(id)arg1; +- (void)convertBackgroundImageURLsUsingDictionary:(id)arg1; +- (BOOL)convertInlineStationeryBackgroundImageURL; +- (void)addInlineBackgroundImageURLToArray:(id)arg1; +- (id)findElementWithTag:(id)arg1 className:(id)arg2 andIdName:(id)arg3; +- (id)findElementWithTag:(id)arg1 andClass:(id)arg2; +- (void)stationeryAttachmentPlaceholderNodes:(id *)arg1; +- (id)stationeryAttachmentPlaceholderNodes; +- (void)objectElementChildNodes:(id *)arg1; +- (id)objectElementChildNodes; +- (void)descendants:(id *)arg1 withClassName:(id)arg2; +- (id)descendantsWithClassName:(id)arg1; +- (id)lastEditableElement; +- (void)editableElements:(id *)arg1; +- (id)editableElements; +- (id)tilingDiv; +- (id)tilingElements; +- (void)stationeryDynamicElementNodes:(id *)arg1; +- (id)stationeryDynamicElementNodes; +- (BOOL)convertInternalImagesToObjects; +- (id)attributedStringWithDocument:(id)arg1; +- (void)fixParagraphsAndQuotesFromMicrosoft; +- (void)fixParagraphsAndQuotesFromMicrosoftNodesToRemove:(id)arg1; +- (void)recursivelyFixParagraphs; +- (void)recursivelyRemoveMailAttributes; +- (void)restoreEditableElementsEdited:(id *)arg1 unedited:(id *)arg2; +- (void)recursivelyRemoveMailAttributes:(BOOL)arg1 convertObjectsToImages:(BOOL)arg2 convertEditableElements:(BOOL)arg3 removeDefaultColorStyle:(BOOL)arg4; +- (BOOL)_isAppleStringAttachmentSpan; +- (BOOL)containsRichTextForMessageFont:(id)arg1; +@property(readonly) DOMHTMLElement *containingListElement; +- (BOOL)containsOnlySelectionMarkers; +- (BOOL)isInEditableRegion; +- (id)topmostEditableAncestor; +- (long long)outlineNestingLevel; +- (id)precedingListItem; +- (id)containingListItem; +- (id)topmostContainingNodeWithNameInArray:(id)arg1; +- (id)firstContainingNodeWithNameInArray:(id)arg1; +- (id)descendantNamed:(id)arg1; +- (id)nestedListElement; +- (BOOL)isAtEndOfContainerNode:(id)arg1; +- (BOOL)isAtBeginningOfContainerNode:(id)arg1; +- (unsigned int)offsetOfChild:(id)arg1; +- (id)commonAncestorWithNode:(id)arg1; +- (BOOL)isDescendantOfNode:(id)arg1; +- (id)firstDescendantBlockQuote; +- (id)highestContainingBlockQuote; +- (id)containingBlockQuote; +- (long long)quoteLevelDelta; +- (long long)quoteLevel; +- (BOOL)hasNoSignificantContentsOtherThanAttachments; +- (BOOL)hasNoSignificantContentsOrWhitespace; +- (BOOL)hasNoSignificantContents; +- (BOOL)_hasNoSignificantContentsOrWhitespace:(BOOL)arg1 orAttachments:(BOOL)arg2; +- (BOOL)hasNoContents; +@property(readonly) BOOL isListElement; +@property(readonly) BOOL isBody; +- (BOOL)isNodeThatAffectsTyping; +- (id)blockNodeAncestor; +- (BOOL)isBlockLevelElement; +- (id)appendBlockPlaceholder; +- (id)stringValue; +- (id)_mail_traversePreviousNode; +- (id)_mail_traverseNextSiblingStayingWithin:(id)arg1; +- (id)_mail_traverseNextNodeStayingWithin:(id)arg1; +@property(readonly) DOMNode *previousNode; +@property(readonly) DOMNode *nextNode; +- (id)nextSiblingOrAunt; +@property(readonly) BOOL _mail_isAttached; +- (BOOL)isTemporaryCursorMarker; +- (void)removeStrayLinefeeds; +- (void)_removeStrayLinefeedsAtBeginning; +- (void)_removeStrayLinefeedsAtEnd; +- (id)XPathRelativeTo:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMNode-MailHTMLAttachments.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMNode-MailHTMLAttachments.h new file mode 100644 index 00000000..9aafac28 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMNode-MailHTMLAttachments.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMNode.h" + +@interface DOMNode (MailHTMLAttachments) +- (void)convertImagesToObjectsForAttachments:(id)arg1 excludeRemoteImages:(BOOL)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DOMRange-MailExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/DOMRange-MailExtras.h new file mode 100644 index 00000000..2e40683a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DOMRange-MailExtras.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMRange.h" + +@interface DOMRange (MailExtras) +- (BOOL)hasNoSignificantContents; +- (BOOL)hasNoSignificantContentsOtherThanAttachments; +- (BOOL)hasNoSignificantContentsOrWhitespace; +- (BOOL)runSelectorOnContents:(SEL)arg1; +- (BOOL)containsListElements; +- (BOOL)isEditable; +- (void)setWithStringRepresentation:(id)arg1; +- (BOOL)containsRange:(id)arg1; +- (BOOL)isEqualToRange:(id)arg1; +- (id)stringRepresentation; +- (id)attachmentsFromDocument:(id)arg1; +- (void)attachments:(id *)arg1 urls:(id *)arg2 fromDocument:(id)arg3; +- (id)attachmentsByURLFromDocument:(id)arg1; +- (BOOL)containsRichTextForMessageFont:(id)arg1; +- (id)rangeOfContainingBlock; +- (void)balanceContainers; +- (void)fixIfStartIsAtEndOfContainerNode; +- (void)fixIfEndpointIsAtBeginningOfLine; +- (void)getBlockBoundaryParent:(id *)arg1 nextSibling:(id *)arg2 atStart:(BOOL)arg3; +- (id)attributedStringWithDocument:(id)arg1; +- (id)stringValue; +- (void)hoistRange; +- (BOOL)includeTemporarySelectionMarkers; +- (BOOL)isEquivalentToCollapsedRange; +- (id)lastNode; +- (id)firstNode; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DateCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/DateCell.h new file mode 100644 index 00000000..d414fe3a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DateCell.h @@ -0,0 +1,55 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface DateCell : NSTextFieldCell +{ + int _dateDetailLevel; + double _lastWidth; + _Bool _lastStringWasRTL; + BOOL _forceTextColor; +} + ++ (void)resetDateFormats; ++ (void)initialize; +@property(nonatomic) BOOL forceTextColor; // @synthesize forceTextColor=_forceTextColor; +- (id)accessibilityAttributeValue:(id)arg1 forParameter:(id)arg2; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)stringValue; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (double)minimumWidth; +- (void)setObjectValue:(id)arg1; +- (void)setTimeIntervalSince1970:(double)arg1; +- (void)updateLocale; +- (void)setUnderlinesText:(BOOL)arg1; +- (BOOL)underlinesText; +- (void)setNeedsDisplay:(BOOL)arg1; +- (void)setAlignment:(unsigned long long)arg1; +- (void)setTextColor:(id)arg1; +- (void)setFont:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (void)awakeFromNib; +- (id)initWithCoder:(id)arg1; +- (id)initTextCell:(id)arg1; +- (void)_updateDateColumnDetailLevels; +- (void)_updateDateColumnDetailLevelWidths; +- (BOOL)_readWidthsFromDefaults; +- (void)_saveWidthsToDefaults; +- (id)_newWeekdayWidthReferenceDatesFirstWeekday:(long long *)arg1; +- (id)_newMonthWidthReferenceDates; +- (double)_widthOfLongestDateStringWithLevel:(int)arg1 format:(id)arg2; +- (double)_widthOfStringWithTimeFormat:(id)arg1 withDatePrefix:(id)arg2; +- (id)lastFont; +- (void)setLastFont:(id)arg1; +- (id)drawingAttributes; +- (void)setDrawingAttributes:(id)arg1; +- (void)_initDateFormatter; +- (void)_dateCellCommonInit; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DefaultApplicationPopUpButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/DefaultApplicationPopUpButton.h new file mode 100644 index 00000000..af34f729 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DefaultApplicationPopUpButton.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@interface DefaultApplicationPopUpButton : NSPopUpButton +{ + long long _indexOfSelectedHandler; +} + +- (void)_selectApplication:(id)arg1; +- (void)_setDefaultEmailHandler:(id)arg1; +- (void)_selectHandlerWithBundleIdentifier:(id)arg1 url:(id)arg2; +- (long long)_addHandlerWithBundleIdentifier:(id)arg1 url:(id)arg2; +- (void)_populateMenu; +- (void)refreshApplicationList; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DeletingTableView.h b/MailHeaders/Mavericks_10.9.5/MailUI/DeletingTableView.h new file mode 100644 index 00000000..a154c381 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DeletingTableView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableView.h" + +@interface DeletingTableView : NSTableView +{ +} + +- (void)keyDown:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DeliveryFailure.h b/MailHeaders/Mavericks_10.9.5/MailUI/DeliveryFailure.h new file mode 100644 index 00000000..834952a8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DeliveryFailure.h @@ -0,0 +1,54 @@ +/* + * 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 "AccountStatusDataSourceDelegate.h" + +@class AccountStatusDataSource, DocumentEditor, MCError, NSButton, NSPanel, NSTableView, NSTextField, NSTextView, NSView; + +@interface DeliveryFailure : NSObject +{ + AccountStatusDataSource *_deliveryASDS; + DocumentEditor *_editor; + MCError *_error; + NSPanel *_panel; + NSTextField *_errorLabel; + NSTextView *_errorDescriptionLabel; + NSView *_contents; + NSTableView *_table; + NSButton *_tryLaterButton; + NSButton *_tryOtherButton; +} + +@property(nonatomic) NSButton *tryOtherButton; // @synthesize tryOtherButton=_tryOtherButton; +@property(nonatomic) NSButton *tryLaterButton; // @synthesize tryLaterButton=_tryLaterButton; +@property(nonatomic) NSTableView *table; // @synthesize table=_table; +@property(nonatomic) NSView *contents; // @synthesize contents=_contents; +@property(nonatomic) NSTextView *errorDescriptionLabel; // @synthesize errorDescriptionLabel=_errorDescriptionLabel; +@property(nonatomic) NSTextField *errorLabel; // @synthesize errorLabel=_errorLabel; +@property(retain, nonatomic) NSPanel *panel; // @synthesize panel=_panel; +- (void)_retile; +- (void)_tile; +- (void)_postDeliveryFailureHappened; +- (void)_deliveryAccountsDidChange:(id)arg1; +- (void)_selectedAccountDidChangeFrom:(id)arg1 to:(id)arg2; +- (id)_setDynamicDeliveryAccountForAccount:(id)arg1; +- (void)editServerList:(id)arg1; +- (void)tryOtherAccount:(id)arg1; +- (void)editMessage:(id)arg1; +- (void)sendLater:(id)arg1; +- (void)runChooseAlternateDeliveryAccountSheet; +- (void)reportError:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)editorWillClose; +- (void)dealloc; +- (void)awakeFromNib; +- (id)init; +- (id)initWithDocumentEditor:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DeliveryQueue.h b/MailHeaders/Mavericks_10.9.5/MailUI/DeliveryQueue.h new file mode 100644 index 00000000..687ccc6d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DeliveryQueue.h @@ -0,0 +1,65 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCInvocationQueue.h" + +#import "MCActivityTarget.h" +#import "MVTerminationHandler.h" + +@class MCActivityMonitor, MFMessageStore, NSMutableDictionary, NSMutableSet; + +@interface DeliveryQueue : MCInvocationQueue +{ + double _beginDeliveryTime; + MCActivityMonitor *_deliveryMonitor; + MFMessageStore *_outboxStore; + NSMutableDictionary *_errorResponses; + NSMutableDictionary *_alternateDeliveryAccounts; + NSMutableSet *_accountsOnHold; + BOOL _queueIsActive; + BOOL _isBackgroundProcessingEnabled; + BOOL _resetDeliveryQueueWhenDoneWithCurrentMessage; + NSMutableSet *_documentIdsToIgnore; +} + ++ (id)sharedDeliveryQueue; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain) NSMutableSet *documentIdsToIgnore; // @synthesize documentIdsToIgnore=_documentIdsToIgnore; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)stopIgnoringDocumentId:(id)arg1; +- (void)ignoreDocumentId:(id)arg1; +- (id)alternateDeliveryAccountForAccount:(id)arg1; +- (void)unfreezeDeliveryAccount:(id)arg1 reprocessQueue:(BOOL)arg2; +- (void)setAlternateDeliveryAccount:(id)arg1 forAccount:(id)arg2; +- (void)_deliveryAccountsDidChange:(id)arg1; +- (void)_networkConfigurationChanged:(id)arg1; +- (void)cancelDeliveryOfMessageWithDocumentId:(id)arg1; +- (void)cancelDeliveryOfMessage:(id)arg1; +- (long long)_performDeliveryOfMessage:(id)arg1 accountUsed:(id *)arg2; +- (void)_closeOutboxStore; +- (void)_outboxDidOpen:(id)arg1; +- (BOOL)_openOutboxStoreIfNeeded; +@property(retain) MFMessageStore *outboxStore; +- (void)_resetStateAndReprocessQueueIfNecessary; +- (void)resetStateAndReprocessQueueIfNecessary; +- (void)resetStateAndReprocessQueue; +- (long long)appendMessageToQueue:(id)arg1 replacingOriginalMessage:(id)arg2; +- (long long)appendMessageToQueue:(id)arg1; +- (BOOL)_isMessageBeingEdited:(id)arg1; +- (void)_deliverQueuedMessages:(unsigned long long)arg1; +- (void)_processDeliveryQueueStartingAtIndex:(unsigned long long)arg1; +- (void)_setDeliveryMonitor:(id)arg1; +- (BOOL)isBackgroundProcessingEnabled; +- (void)setBackgroundProcessingEnabled:(BOOL)arg1; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DockCountController.h b/MailHeaders/Mavericks_10.9.5/MailUI/DockCountController.h new file mode 100644 index 00000000..2b6c0412 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DockCountController.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class MFMailbox, NSOperationQueue; + +@interface DockCountController : NSObject +{ + MFMailbox *_mailBadgeMailbox; + int _mailBadgeScope; + NSOperationQueue *_workQueue; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)setMailBadgeScope:(int)arg1 mailbox:(id)arg2; +- (int)mailBadgeScope; +- (void)unreadCountChanged:(id)arg1; +- (id)mailBadgeMailbox; +- (void)_setMailBadgeMailbox:(id)arg1; +- (void)_mailboxWillBeInvalidated:(id)arg1; +- (void)_setDockBadgeForCount:(id)arg1; +- (void)clearCountAndStopUpdating; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DocumentEditor.h b/MailHeaders/Mavericks_10.9.5/MailUI/DocumentEditor.h new file mode 100644 index 00000000..cd9d831b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DocumentEditor.h @@ -0,0 +1,414 @@ +/* + * 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, NSViewAnimation, NSWindow, StationerySelector, WebArchive, WebViewEditor; + +@interface DocumentEditor : NSObject +{ + 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 *_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 + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DocumentEditor_Scripting.h b/MailHeaders/Mavericks_10.9.5/MailUI/DocumentEditor_Scripting.h new file mode 100644 index 00000000..a17d9edf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DocumentEditor_Scripting.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DocumentEditor.h" + +@interface DocumentEditor_Scripting : DocumentEditor +{ +} + +- (Class)backEndClass; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DynamicErrorWindowController.h b/MailHeaders/Mavericks_10.9.5/MailUI/DynamicErrorWindowController.h new file mode 100644 index 00000000..f0bef374 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DynamicErrorWindowController.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowController.h" + +@class NSButton, NSProgressIndicator, NSTextField; + +@interface DynamicErrorWindowController : NSWindowController +{ + NSTextField *_message; + NSTextField *_explanation; + NSButton *_leftButton; + NSProgressIndicator *_progressIndicator; + NSButton *_rightButton; + NSButton *_helpButton; + long long _diagnosisCode; + double _distanceToRightEdge; + double _distanceBetweenButtons; + double _distanceToBottomEdge; + double _distanceFromProgresBarToButtons; + double _progressIndicatorHeight; + id _delegate; +} + +- (void)rightActionSelected:(id)arg1; +- (void)leftActionSelected:(id)arg1; +- (void)errorDiagnosedAs:(long long)arg1; +- (void)updateWindowLayout; +- (void)setDelegate:(id)arg1; +- (void)awakeFromNib; +- (void)relocateButton:(id)arg1 relativeTo:(double)arg2; +- (void)collectBasicWindowMetrics; +- (void)updateTextField:(id)arg1 withText:(id)arg2 belowControl:(id)arg3; +- (void)updateTextFieldHeightForNewContent:(id)arg1; +- (void)dealloc; +- (id)initWithDelegate:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/DynamicErrorWindowDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/DynamicErrorWindowDelegate-Protocol.h new file mode 100644 index 00000000..2c3e1040 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/DynamicErrorWindowDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol DynamicErrorWindowDelegate +- (unsigned long long)helpTopicForDiagnosis:(long long)arg1; +- (void)rightActionSelectedWithDiagnosis:(long long)arg1; +- (void)leftActionSelectedWithDiagnosis:(long long)arg1; +- (id)rightButtonTextForErrorDiagnosis:(long long)arg1; +- (id)leftButtonTextForErrorDiagnosis:(long long)arg1; +- (id)errorDescriptionForErrorDiagnosis:(long long)arg1; +- (id)errorMessageForErrorDiagnosis:(long long)arg1; +- (BOOL)displayIndeterminateProgress; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/EWSAccountDetails.h b/MailHeaders/Mavericks_10.9.5/MailUI/EWSAccountDetails.h new file mode 100644 index 00000000..bc377d8a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/EWSAccountDetails.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "AccountDetails.h" + +@class NSButton, NSTextField; + +@interface EWSAccountDetails : AccountDetails +{ + NSTextField *_internalServerPath; + NSTextField *_externalServerPath; + NSTextField *_externalPortNumber; + NSButton *_externalUseSSL; + BOOL _warnedAboutCachingAndIndexing; + NSButton *_cachePolicyCheckbox; +} + +@property(nonatomic) NSButton *cachePolicyCheckbox; // @synthesize cachePolicyCheckbox=_cachePolicyCheckbox; +- (void)cachePolicyChanged:(id)arg1; +- (void)didDisplayTabViewItem:(id)arg1; +- (id)portFieldForSSLCheckBox:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (void)setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (void)setupUIFromValuesInAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/EWSAccountSpecialMailboxes.h b/MailHeaders/Mavericks_10.9.5/MailUI/EWSAccountSpecialMailboxes.h new file mode 100644 index 00000000..ce381a22 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/EWSAccountSpecialMailboxes.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "RemoteStoreAccountSpecialMailboxes.h" + +@interface EWSAccountSpecialMailboxes : RemoteStoreAccountSpecialMailboxes +{ +} + +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/EWSQuota.h b/MailHeaders/Mavericks_10.9.5/MailUI/EWSQuota.h new file mode 100644 index 00000000..adb5faaf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/EWSQuota.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "RemoteStoreQuota.h" + +@interface EWSQuota : RemoteStoreQuota +{ +} + +- (void)_updateUsageField; +- (void)engineUpdated:(id)arg1; +- (void)engineDidFinish; +- (void)engineDidStart; +- (Class)engineClass; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/EditableWebMessageDocument.h b/MailHeaders/Mavericks_10.9.5/MailUI/EditableWebMessageDocument.h new file mode 100644 index 00000000..ca96710a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/EditableWebMessageDocument.h @@ -0,0 +1,54 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MFWebMessageDocument.h" + +@class DOMHTMLDocument, DOMHTMLElement, NSMutableArray, NSMutableDictionary; + +@interface EditableWebMessageDocument : MFWebMessageDocument +{ + DOMHTMLDocument *_htmlDocument; + DOMHTMLElement *_contentElement; + NSMutableDictionary *_savedUserContent; + NSMutableDictionary *_savedUserAttachments; + NSMutableArray *_orderedUserAttachmentsURLs; + NSMutableArray *_savedUserImages; +} + +- (id)attachmentElementEnumeratorForRange:(id)arg1 withOptions:(int)arg2; +- (id)attachmentElementEnumeratorWithOptions:(int)arg1; +- (void)copyBackgroundImageFromURL:(id)arg1 toURL:(id)arg2; +- (id)prepareToAddArchive:(id)arg1; +- (id)prepareToAddArchive:(id)arg1 attachmentDelegate:(id)arg2; +- (id)attachmentForURLString:(id)arg1; +- (void)removeAllBackgroundAttachments; +- (void)removeAllCompositeImageAttachments; +- (void)removeAllAttachments; +- (id)attachmentsIncludingBackgrounds; +- (void)saveAttachmentsWithURLsAsBackgroundAttachments:(id)arg1; +- (id)backgroundImageAttachments; +- (id)attachments; +- (id)userImageDictionaryFromAttachment:(id)arg1 withURL:(id)arg2; +- (void)forgetAllSavedContentAttachmentsAndImages; +- (void)insertSavedUserImagesIntoCompositeImages; +- (id)savedUserImagesFromCompositeImages; +- (void)saveUserImagesFromCompositeImages; +- (id)orderedCompositeImagesAndTheirURLs:(id *)arg1; +- (void)removeSavedUserAttachmentWithURL:(id)arg1; +- (id)savedUserAttachmentForURL:(id)arg1; +- (id)savedUserAttachmentsOrdering; +- (void)saveUserAttachments:(id)arg1 withOrdering:(id)arg2; +- (void)forgetSavedContentWithKeys:(id)arg1; +- (id)savedUserContent; +- (void)saveUserContent:(id)arg1; +- (void)setContentElement:(id)arg1; +- (id)contentElement; +- (void)setHTMLDocument:(id)arg1; +- (id)htmlDocument; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/EditingMessageWebView.h b/MailHeaders/Mavericks_10.9.5/MailUI/EditingMessageWebView.h new file mode 100644 index 00000000..2afc4394 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/EditingMessageWebView.h @@ -0,0 +1,135 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "TilingWebView.h" + +#import "NSInspectorBarClient.h" +#import "NSTextInputClient.h" + +@class DOMHTMLElement, DOMNode; + +@interface EditingMessageWebView : TilingWebView +{ + DOMHTMLElement *_contentElement; + DOMNode *_cursorPositionNode; + struct { + unsigned int delegateRespondsToCanInsertFromDraggingInfo:1; + unsigned int delegateRespondsToCanInsertFromPasteboard:1; + } _flags; +} + ++ (id)insertablePasteboardTypes; +- (unsigned long long)characterIndexForPoint:(struct CGPoint)arg1; +- (struct CGRect)firstRectForCharacterRange:(struct _NSRange)arg1 actualRange:(struct _NSRange *)arg2; +- (id)validAttributesForMarkedText; +- (id)attributedSubstringForProposedRange:(struct _NSRange)arg1 actualRange:(struct _NSRange *)arg2; +- (BOOL)hasMarkedText; +- (struct _NSRange)markedRange; +- (struct _NSRange)selectedRange; +- (void)unmarkText; +- (void)setMarkedText:(id)arg1 selectedRange:(struct _NSRange)arg2 replacementRange:(struct _NSRange)arg3; +- (void)doCommandBySelector:(SEL)arg1; +- (void)insertText:(id)arg1 replacementRange:(struct _NSRange)arg2; +- (id)textInput; +- (id)inspectorBarItemIdentifiers; +- (BOOL)validateUserInterfaceItem:(id)arg1 fallThrough:(char *)arg2; +- (BOOL)validateMenuItem:(id)arg1 fallThrough:(char *)arg2; +- (BOOL)selectionIsInEmptyListItem; +- (BOOL)selectionIsInList; +- (BOOL)selectionIsInListTypes:(id)arg1; +- (BOOL)selectionIsInListType:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (void)insertListWithNumbers:(BOOL)arg1 undoTitle:(id)arg2; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (void)convertListFromType:(id)arg1 toType:(id)arg2 undoTitle:(id)arg3; +- (void)layoutResizingAttachmentViews; +- (void)viewDidEndLiveResize; +- (void)changeDocumentBackgroundColorToColor:(id)arg1; +- (void)viewWillStartLiveResize; +- (void)makeFontSmaller:(id)arg1; +- (void)makeFontBigger:(id)arg1; +- (void)removeFragmentBlockQuote:(id)arg1; +- (void)removeBlockQuoteFromTree:(id)arg1; +- (long long)compareRange:(id)arg1 toEndOfNode:(id)arg2; +- (void)splitUpBlockQuotesOverlappingEndOfRange:(id)arg1; +- (void)splitUpBlockQuotesOverlappingStartOfRange:(id)arg1; +- (void)changeQuoteLevel:(id)arg1; +- (BOOL)removeAllQuotingFromTree:(id)arg1; +- (void)changeIndentation:(long long)arg1; +- (void)changeIndentationIfAllowed:(long long)arg1; +- (void)decreaseIndentation:(id)arg1; +- (void)increaseIndentation:(id)arg1; +- (void)addHorizontalRule:(id)arg1; +- (void)removeLink:(id)arg1; +- (void)editLink:(id)arg1; +- (BOOL)becomeFirstResponder; +- (void)setCursorPositionNode:(id)arg1; +- (void)pasteWithCurrentStyle:(id)arg1; +- (void)pasteAsQuotation:(id)arg1; +- (void)paste:(id)arg1; +- (void)redo:(id)arg1; +- (void)undo:(id)arg1; +- (void)dragImage:(id)arg1 at:(struct CGPoint)arg2 offset:(struct CGSize)arg3 event:(id)arg4 pasteboard:(id)arg5 source:(id)arg6 slideBack:(BOOL)arg7; +- (BOOL)wantsPeriodicDraggingUpdates; +- (void)concludeDragOperation:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (BOOL)prepareForDragOperation:(id)arg1; +- (void)draggingExited:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (void)saveMessageToDrafts:(id)arg1; +- (void)registerForDraggedTypes:(id)arg1; +- (id)insertablePasteboardTypes; +- (void)insertNode:(id)arg1 atRange:(id)arg2; +- (void)saveSelectionForUndo; +- (void)setSelectionStart:(id)arg1 offset:(int)arg2 end:(id)arg3 offset:(int)arg4 affinity:(unsigned long long)arg5; +- (id)selectedContainerWithNameInArray:(id)arg1; +- (BOOL)isFirstLineOfDocument; +- (id)selectedAnchor; +- (id)temporaryStartingSelectionMarker; +- (id)temporaryEndingSelectionMarker; +- (void)deleteTemporarySelectionMarkersFromDocument:(id)arg1; +- (void)restoreSelectionFromTemporaryMarkers:(BOOL)arg1; +- (void)restoreSelectionFromTemporaryMarkers; +- (void)insertTemporarySelectionMarkersForRange:(id)arg1; +- (BOOL)isAutomaticLinkDetectionEnabled; +- (void)removeAllFormatting; +- (BOOL)resetMainDocumentBodyAttributes; +- (BOOL)removeNonBodyChildrenAndAttributesFromMainDocumentElement; +- (BOOL)removeFormattingFromTree:(id)arg1 forDocument:(id)arg2 hasDocumentContext:(BOOL)arg3 imageStrippingMode:(int)arg4; +- (BOOL)removeHeadFromDocument:(id)arg1; +- (void)setMainDocumentURI:(id)arg1; +- (void)setStyleProperty:(id)arg1 value:(id)arg2 priority:(id)arg3 ofElement:(id)arg4; +- (void)setValue:(id)arg1 forAttribute:(id)arg2 ofElement:(id)arg3; +- (void)insertNode:(id)arg1 parent:(id)arg2 offset:(int)arg3; +- (void)insertNode:(id)arg1 parent:(id)arg2 nextSibling:(id)arg3; +- (void)replaceNode:(id)arg1 oldNode:(id)arg2; +- (void)deleteRange:(id)arg1; +- (void)deleteNode:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (BOOL)selectionCouldBeMadeIntoALink; +- (BOOL)isSelectionInContentElement; +- (void)dealloc; +- (void)setContentElement:(id)arg1; +- (id)contentElement; +- (BOOL)isContentEditable; +- (BOOL)replaceSelectionWithFragment:(id)arg1 attachments:(id)arg2 pasteboard:(id)arg3 types:(id)arg4 action:(int)arg5 options:(int)arg6 isPlainText:(BOOL)arg7; +- (BOOL)replaceSelectionUsingContext:(id)arg1; +- (BOOL)_replaceSelectionWithPasteboardContentsDraggingInfo:(id)arg1 pasteboard:(id)arg2 pasteboardType:(id)arg3 action:(int)arg4 options:(int)arg5; +- (BOOL)_replaceSelectionWithContentsOfWebpage:(id)arg1; +- (BOOL)replaceSelectionWithPasteboardContentsDraggingInfo:(id)arg1 pasteboardType:(id)arg2 action:(int)arg3 options:(int)arg4; +- (BOOL)replaceSelectionWithPasteboardContentsPasteboard:(id)arg1 pasteboardType:(id)arg2 action:(int)arg3 options:(int)arg4; +- (unsigned long long)pastedGraphicCounter; +- (void)setEditingDelegate:(id)arg1; +- (id)editingDelegate; +- (id)mailPreferredPboardTypeFromTypes:(id)arg1 pasteboard:(id)arg2 isForDrag:(BOOL)arg3 preferHTML:(BOOL)arg4; +- (BOOL)isActive; +- (BOOL)maintainsInactiveSelection; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/EditingMessageWebViewDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/EditingMessageWebViewDelegate-Protocol.h new file mode 100644 index 00000000..761122f2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/EditingMessageWebViewDelegate-Protocol.h @@ -0,0 +1,36 @@ +/* + * 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" + +@protocol EditingMessageWebViewDelegate +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (BOOL)selectionIsInList; +- (void)removeSelectedLink; +- (void)editLink; +- (void)setAllowsRichText:(BOOL)arg1; +- (BOOL)allowsRichText; +- (BOOL)allowQuoting; + +@optional +- (void)webViewWillInsertContentsOfWebpage:(id)arg1; +- (BOOL)webViewShouldReplaceSelectionWithContentsOfWebpage:(id)arg1; +- (void)webViewMainDocumentBaseURIDidChange:(id)arg1; +- (BOOL)webView:(id)arg1 canInsertFromPasteboard:(id)arg2 forDrag:(BOOL)arg3; +- (BOOL)webView:(id)arg1 canInsertFromDraggingInfo:(id)arg2; +- (id)webView:(id)arg1 shouldReplaceSelectionWithWebArchive:(id)arg2 givenAction:(int)arg3; +- (void)webView:(id)arg1 willRemoveMailAttachment:(id)arg2; +- (void)webView:(id)arg1 didAddMailAttachment:(id)arg2; +- (void)webView:(id)arg1 willReplaceSelectionWithFragment:(id *)arg2 pasteboard:(id)arg3 type:(id)arg4 options:(int *)arg5; +- (void)webViewDidEndLiveResize:(id)arg1; +- (void)webViewWillStartLiveResize:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/EditingWebMessageController.h b/MailHeaders/Mavericks_10.9.5/MailUI/EditingWebMessageController.h new file mode 100644 index 00000000..f6520026 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/EditingWebMessageController.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebMessageController.h" + +@interface EditingWebMessageController : WebMessageController +{ +} + +- (BOOL)considerBaseURLsInternal; +- (void)setMainFrameDocumentView:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/EmailImporter.h b/MailHeaders/Mavericks_10.9.5/MailUI/EmailImporter.h new file mode 100644 index 00000000..d9a4696b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/EmailImporter.h @@ -0,0 +1,76 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "Importer.h" + +@class NSArray, NSData, NSString; + +@interface EmailImporter : Importer +{ + NSString *_attachmentBeingSearchedFor; + NSString *_rootFolderPath; + NSArray *_sourceFolderPaths; + NSArray *_sourcePaths; + NSString *_destinationFolderName; + NSString *_lastDirectoryFound; + NSString *_temporaryImportFolderPath; + char *_lineDelimiter; + char *_fromSpaceSeparator; + NSData *_newline; + NSData *_greaterThanSign; + NSData *_fromSpace; + BOOL _errorsDuringImport; +} + +- (void)dealloc; +- (id)mailboxForImportItem:(id)arg1; +- (id)mailboxNameForImportItem:(id)arg1; +- (id)_fromSpace; +- (id)_greaterThanSign; +- (id)_newline; +- (id)copyAttachmentsToMailFolder:(id)arg1; +- (BOOL)isAttachmentBeingSearchedFor:(id)arg1; +- (id)locateAttachments:(id)arg1 inFolder:(id)arg2; +- (id)createAttachmentText:(id)arg1 isHTML:(BOOL)arg2; +- (id)regenerateMessageData:(id)arg1 isHTML:(BOOL)arg2 isRich:(BOOL)arg3; +- (id)longestCommonPathForItems:(id)arg1; +- (id)uniqueDirectoriesForItems:(id)arg1; +- (id)searchForValidItemInsideDirectory:(id)arg1 validitySelector:(SEL)arg2 searchDepth:(long long)arg3; +- (id)searchForValidItemsInsideDirectory:(id)arg1 validitySelector:(SEL)arg2 limit:(unsigned long long)arg3 searchDepth:(long long)arg4; +- (id)validItemsFromPaths:(id)arg1 validitySelector:(SEL)arg2; +- (void)convertChar:(BOOL)arg1 toChar:(BOOL)arg2 inBytes:(char *)arg3 length:(long long)arg4; +- (void)updateSubjectStringForMessageHeaders:(id)arg1; +- (void)addMessagesToLibrary:(id)arg1 withMailbox:(id)arg2; +- (id)messageWithImporterData:(id)arg1; +- (BOOL)errorsDuringImport; +- (void)setErrorsDuringImport:(BOOL)arg1; +- (BOOL)isValidMailbox:(id)arg1; +- (void)setSourceList:(id)arg1; +- (id)sourceList; +- (void)setSourceFolders:(id)arg1; +- (id)sourceFolders; +- (void)setRootFolder:(id)arg1; +- (id)rootFolder; +- (void)setFromSpaceSeparator:(char *)arg1; +- (char *)fromSpaceSeparator; +- (void)setLineDelimiter:(char *)arg1; +- (id)destinationFolderName; +- (id)regexForAttachmentName:(id)arg1; +- (char *)lineDelimiter; +- (id)preProcessSourceData:(id)arg1; +- (void)importMailbox:(id)arg1; +- (void)processUserSelection; +- (void)readMailbox:(id)arg1 intoMailbox:(id)arg2; +- (void)cleanup; +- (id)statusLine; +- (id)importFinishedText; +- (void)importFinished; +- (void)revealMailbox:(id)arg1; +- (void)performImport; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/EudoraEmailImporter.h b/MailHeaders/Mavericks_10.9.5/MailUI/EudoraEmailImporter.h new file mode 100644 index 00000000..8245dc3d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/EudoraEmailImporter.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +@interface EudoraEmailImporter : FilesystemEmailImporter +{ +} + ++ (id)explanatoryText; ++ (id)name; +- (BOOL)isAttachmentBeingSearchedFor:(id)arg1; +- (id)_attachmentsInEudoraMessage:(id)arg1; +- (void)_stripTag:(char *)arg1 fromData:(id)arg2; +- (struct _NSRange)_rangeOfDataContainedByTag:(char *)arg1 endTag:(char *)arg2 inData:(id)arg3; +- (id)preProcessSourceData:(id)arg1; +- (BOOL)isValidMailbox:(id)arg1; +- (char *)fromString; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ExtractAddressCommand.h b/MailHeaders/Mavericks_10.9.5/MailUI/ExtractAddressCommand.h new file mode 100644 index 00000000..e34d9387 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ExtractAddressCommand.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScriptCommand.h" + +@interface ExtractAddressCommand : NSScriptCommand +{ +} + +- (id)performDefaultImplementation; +- (id)executeCommand; +- (id)_getRawAddressForObject:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ExtractNameCommand.h b/MailHeaders/Mavericks_10.9.5/MailUI/ExtractNameCommand.h new file mode 100644 index 00000000..58db3177 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ExtractNameCommand.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScriptCommand.h" + +@interface ExtractNameCommand : NSScriptCommand +{ +} + +- (id)performDefaultImplementation; +- (id)executeCommand; +- (id)_getAddressDisplayNameForObject:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FauxUIElement.h b/MailHeaders/Mavericks_10.9.5/MailUI/FauxUIElement.h new file mode 100644 index 00000000..19b8e697 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FauxUIElement.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class NSString; + +@interface FauxUIElement : NSObject +{ + NSString *_role; + NSString *_identifier; + id _parent; +} + ++ (id)elementWithRole:(id)arg1 parent:(id)arg2 identifier:(id)arg3; +- (id)accessibilityFocusedUIElement; +- (id)accessibilityHitTest:(struct CGPoint)arg1; +- (BOOL)accessibilityIsIgnored; +- (void)accessibilityPerformAction:(id)arg1; +- (id)accessibilityActionDescription:(id)arg1; +- (id)accessibilityActionNames; +- (void)accessibilitySetValue:(id)arg1 forAttribute:(id)arg2; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeNames; +- (id)identifier; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (void)dealloc; +- (id)initWithRole:(id)arg1 parent:(id)arg2 identifier:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FavoriteButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/FavoriteButton.h new file mode 100644 index 00000000..3549adc2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FavoriteButton.h @@ -0,0 +1,84 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MailBarContainerButton.h" + +#import "FavoritesMenuDelegateProtocol.h" +#import "NSCopying.h" + +@class FavoriteButtonMailboxProperties, FavoritesMenuController, MFMailbox, NSTimer; + +@interface FavoriteButton : MailBarContainerButton +{ + id _mailbox; + FavoritesMenuController *_menuController; + NSTimer *_showMenuTimer; + NSTimer *_flashButtonTimer; + long long _flashCount; + BOOL _menuIsOpen; + MFMailbox *_selectedSubMailbox; + FavoriteButtonMailboxProperties *_mailboxProperties; +} + ++ (BOOL)enabledStateforMailbox:(id)arg1; ++ (Class)cellClass; ++ (id)titleForMailbox:(id)arg1 selectedSubMailbox:(id)arg2 shouldUseExtendedName:(BOOL)arg3 countsChildren:(BOOL)arg4; ++ (unsigned long long)_unreadCountForMailbox:(id)arg1 countsChildren:(BOOL)arg2; ++ (void)setDraggedButton:(id)arg1; ++ (id)draggedButton; +@property(retain, nonatomic) FavoriteButtonMailboxProperties *mailboxProperties; // @synthesize mailboxProperties=_mailboxProperties; +@property(retain, nonatomic) MFMailbox *selectedSubMailbox; // @synthesize selectedSubMailbox=_selectedSubMailbox; +- (id)selectedMailbox; +- (void)menuDidSelectMailbox:(id)arg1; +- (void)menuDidClose; +- (void)menuDidPresent; +- (void)showMenu; +- (void)_showMenuTimerFired; +- (void)_toggleFlashState; +- (void)_stopShowMenuTimer; +- (void)_startShowMenuTimer; +- (id)description; +- (BOOL)_canAcceptMailboxAtPoint:(struct CGPoint)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (void)draggingExited:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (unsigned long long)_dragOperationForCurrentEvent; +- (BOOL)_canDragMessageIntoSubMailboxesOrMailbox:(id)arg1; +- (BOOL)_canDragMessageIntoMailbox:(id)arg1; +- (void)flash; +- (void)_finishFlash:(id)arg1; +- (void)draggedImage:(id)arg1 endedAt:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (unsigned long long)draggingSourceOperationMaskForLocal:(BOOL)arg1; +- (void)mouseUp:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)_presentContextualPopupForEvent:(id)arg1; +- (BOOL)_shouldDispayMenuForEvent:(id)arg1; +- (void)draggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; +- (void)_performDragFromMouseDown:(id)arg1 withViewFrameOrigin:(struct CGPoint)arg2; +- (struct CGSize)_currentEventOffsetFromEvent:(id)arg1; +- (BOOL)_canDragHorizontally:(BOOL)arg1 fromMouseDown:(id)arg2; +- (id)_draggingImage; +- (void)dealloc; +- (BOOL)hasIndicator; +- (void)_setIndicator:(BOOL)arg1; +- (id)activeMailbox; +- (id)mailbox; +- (void)_fullScreenStateChanged:(id)arg1; +- (void)_mailboxSectionListingDidChange:(id)arg1; +- (void)_flagMailboxVisibilityChanged:(id)arg1; +- (void)_unreadCountDidChange:(id)arg1; +- (void)_mailboxInfoDidChange:(id)arg1; +- (void)_mailboxWillBecomeInvalid:(id)arg1; +- (void)viewWillMoveToWindow:(id)arg1; +- (id)initWithMailbox:(id)arg1 selectedSubMailbox:(id)arg2; +- (void)_registerChildrenForUnreadCountChangesForMailbox:(id)arg1; +- (void)setEnabled:(BOOL)arg1; +- (void)registerForDraggedTypes; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FavoriteButtonMailboxProperties.h b/MailHeaders/Mavericks_10.9.5/MailUI/FavoriteButtonMailboxProperties.h new file mode 100644 index 00000000..be5821a9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FavoriteButtonMailboxProperties.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSString; + +@interface FavoriteButtonMailboxProperties : NSObject +{ + BOOL _isContainer; + BOOL _isPreferredSelection; + int _type; + NSString *_persistentIdentifier; + NSString *_selectedSubMailboxPersistentIdentifier; + NSString *_displayName; + NSString *_accountURLString; +} + +@property(nonatomic) BOOL isPreferredSelection; // @synthesize isPreferredSelection=_isPreferredSelection; +@property(nonatomic) BOOL isContainer; // @synthesize isContainer=_isContainer; +@property(nonatomic) int type; // @synthesize type=_type; +@property(retain, nonatomic) NSString *accountURLString; // @synthesize accountURLString=_accountURLString; +@property(retain, nonatomic) NSString *displayName; // @synthesize displayName=_displayName; +@property(retain, nonatomic) NSString *selectedSubMailboxPersistentIdentifier; // @synthesize selectedSubMailboxPersistentIdentifier=_selectedSubMailboxPersistentIdentifier; +@property(retain, nonatomic) NSString *persistentIdentifier; // @synthesize persistentIdentifier=_persistentIdentifier; +- (id)dictionaryRepresentation; +- (void)dealloc; +- (id)initWithDictionaryRepresentation:(id)arg1; +- (id)initWithPersistentIdentifier:(id)arg1 selectedSubMailboxPersistentIdentifier:(id)arg2 displayName:(id)arg3 accountURLString:(id)arg4 type:(int)arg5 isContainer:(BOOL)arg6 isPreferredSelection:(BOOL)arg7; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FavoriteMenuScrollHoverView.h b/MailHeaders/Mavericks_10.9.5/MailUI/FavoriteMenuScrollHoverView.h new file mode 100644 index 00000000..45c4f068 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FavoriteMenuScrollHoverView.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSImage, NSTrackingArea; + +@interface FavoriteMenuScrollHoverView : NSView +{ + NSTrackingArea *_trackingArea; + NSImage *_arrowImage; + unsigned long long _direction; + id _delegate; +} + +@property id delegate; // @synthesize delegate=_delegate; +@property(readonly) unsigned long long direction; // @synthesize direction=_direction; +- (void)mouseExited:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (void)dealloc; +- (void)updateTrackingAreas; +- (id)initWithDirection:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesBarView.h b/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesBarView.h new file mode 100644 index 00000000..538444f6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesBarView.h @@ -0,0 +1,105 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "SlidingViewsBar.h" + +#import "ClippedItemsIndicatorDelegate.h" + +@class MFMailbox, MailBarContainerView, MessageViewer, NSMutableArray, NSMutableDictionary, NSSet; + +@interface FavoritesBarView : SlidingViewsBar +{ + MailBarContainerView *_mailBarContainerView; + NSMutableArray *_clippedMenuItems; + NSMutableDictionary *_favoriteButtonsByMailboxes; + NSSet *_duplicateMailboxesSet; + double _firstFavoriteLeftEdge; + double _buttonHeight; + double _lastWidth; + BOOL _preparedForFirstLayout; + BOOL _windowDidClose; + BOOL _shouldCheckForDuplicates; + BOOL _isForSearch; + MFMailbox *_selectedMailbox; + MessageViewer *_messageViewer; + NSMutableArray *_mailboxProperties; +} + ++ (id)mailboxForFavoritesBarPosition:(unsigned long long)arg1; ++ (id)_favoriteMailboxPropertiesFromPreferences; ++ (id)_mailboxForMailboxProperties:(id)arg1; ++ (id)_mailboxPropertiesFromMailbox:(id)arg1; ++ (double)buttonBottomOffset; ++ (id)_menuItemForMailboxProperties:(id)arg1; +@property(retain, nonatomic) NSMutableArray *mailboxProperties; // @synthesize mailboxProperties=_mailboxProperties; +@property(nonatomic) MessageViewer *messageViewer; // @synthesize messageViewer=_messageViewer; +@property(retain, nonatomic) MFMailbox *selectedMailbox; // @synthesize selectedMailbox=_selectedMailbox; +- (void)flashButtonAtPosition:(unsigned long long)arg1; +- (struct CGPoint)centerOfButtonForFavoritesBarPosition:(unsigned long long)arg1; +- (id)_mailboxPropertiesForFavoritesBarPosition:(unsigned long long)arg1; +- (void)setFavoritesBarIsForSearch:(BOOL)arg1; +- (BOOL)_havePreviouslyAddedMailbox:(id)arg1; +- (void)_setFavoriteMailboxAddedDefaultForMailbox:(id)arg1; +- (void)_getDefaultSetOfMailboxes; +- (void)_finishedGettingDefaultMailboxes; +- (void)_writeFavoriteMailboxPropertiesToPreferences; +- (void)saveFavoritesBar; +- (void)_upgradeFavoritesBar; +- (BOOL)_favoritesPreferenceExists; +- (id)_primaryMailboxes; +- (id)_activeMailboxes; +- (void)_insertMailboxPropertiesFromMailbox:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)_addMailboxPropertiesFromMailbox:(id)arg1; +- (void)updateButtonSelectionWithPreferredProperties:(id)arg1; +- (void)_VIPSendersChanged:(id)arg1; +- (void)clearButtons; +- (BOOL)isMailboxInFavoritesBar:(id)arg1; +- (double)_rightEdgeOfFavoritesViewSubviews; +- (void)_resetClippedItems; +- (void)_refreshButtonsSoon; +- (void)layOutButtons; +- (void)_favoritesViewFrameChanged:(id)arg1; +- (void)_mailboxSelectionChanged:(id)arg1; +- (void)_favoritesBarDidChanged:(id)arg1; +- (void)_mailAccountWillBeDeleted:(id)arg1; +- (void)_mailboxesChanged:(id)arg1; +- (void)_mailboxListingDidChange:(id)arg1; +- (void)_registerForNotifications; +- (id)_selectedButton; +- (void)deleteMailbox:(id)arg1; +- (void)deleteDraggedMailbox:(id)arg1; +- (id)_buttonAtMouseLocation:(struct CGPoint)arg1; +- (BOOL)addDroppedMailboxes:(id)arg1 atIndex:(long long)arg2; +- (void)favoriteButtonClicked:(id)arg1; +- (id)_addButtonForMailboxProperties:(id)arg1; +- (void)windowWillClose; +- (double)widthOfDraggingInfo:(id)arg1; +- (unsigned long long)updateDropTarget:(id)arg1; +- (void)reorderedSlidingView:(id)arg1; +- (void)refreshButtons; +- (void)_refreshMailboxProperties; +- (double)_paddingForSidebar; +- (double)paddingBetweenButtons; +- (double)maxButtonXWithoutClipIndicator; +- (double)maxButtonXWithClipIndicator; +- (double)minSlidingViewX; +- (double)minButtonX; +- (unsigned long long)lastNonSlidingViewIndex; +- (unsigned long long)dropIndexFromDraggingInfo:(id)arg1; +- (void)finishedSlidingAnimation:(id)arg1; +- (id)menuItemsForClippedItemsIndicator:(id)arg1; +- (void)_favoritesBarViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)draggingExited:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (void)dealloc; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuController.h b/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuController.h new file mode 100644 index 00000000..c06da0fa --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuController.h @@ -0,0 +1,65 @@ +/* + * 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 "NSOutlineViewDataSource.h" +#import "NSOutlineViewDelegate.h" + +@class FavoritesMenuOutlineView, MFMailbox, NSScrollView, NSTimer, NSView, NSWindow; + +@interface FavoritesMenuController : NSObject +{ + NSWindow *_window; + NSWindow *_parentWindow; + MFMailbox *_mailbox; + NSScrollView *_scrollView; + FavoritesMenuOutlineView *_outlineView; + id _mouseClickedMonitor; + BOOL _isOpeningMenu; + NSView *_upScrollHoverView; + NSView *_downScrollHoverView; + BOOL _needsScrollers; + NSTimer *_scrollTimer; + BOOL _isScrolling; + id _delegate; +} + ++ (void)closeExitingMenu; +@property(readonly) BOOL isScrolling; // @synthesize isScrolling=_isScrolling; +@property id delegate; // @synthesize delegate=_delegate; +- (void)stopScrolling:(unsigned long long)arg1; +- (void)stopScrolling; +- (void)startScrolling:(unsigned long long)arg1; +- (void)updateScrollArrows; +- (void)_scrollToNextPoint:(id)arg1; +- (BOOL)outlineView:(id)arg1 acceptDrop:(id)arg2 item:(id)arg3 childIndex:(long long)arg4; +- (BOOL)_canDragMessageIntoMailbox:(id)arg1; +- (unsigned long long)outlineView:(id)arg1 validateDrop:(id)arg2 proposedItem:(id)arg3 proposedChildIndex:(long long)arg4; +- (unsigned long long)_dragOperationForCurrentEvent; +- (BOOL)outlineView:(id)arg1 shouldShowOutlineCellForItem:(id)arg2; +- (id)outlineView:(id)arg1 viewForTableColumn:(id)arg2 item:(id)arg3; +- (id)outlineView:(id)arg1 rowViewForItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 isItemExpandable:(id)arg2; +- (id)outlineView:(id)arg1 child:(long long)arg2 ofItem:(id)arg3; +- (long long)outlineView:(id)arg1 numberOfChildrenOfItem:(id)arg2; +- (id)_nibForFavoriteMenuItemView; +- (id)_titleForTopLevelMailbox:(id)arg1; +- (void)presentPopupAtLocation:(struct CGPoint)arg1; +- (void)_insertOutlineViewInScrollView; +- (void)_constrainWindowToScreen; +- (void)_sizeWindowToFitCells; +- (struct CGSize)_windowSizeForOutlineViewSize:(struct CGSize)arg1; +- (void)_mouseClickedInApplicationWithEvent:(id)arg1; +- (void)_dragEnded:(id)arg1; +- (void)_applicationShouldClosePopup:(id)arg1; +- (void)closePopup; +- (void)dealloc; +- (void)_cleanupMenu; +- (id)initWithMailbox:(id)arg1 atWindow:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuDelegateProtocol-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuDelegateProtocol-Protocol.h new file mode 100644 index 00000000..eec15819 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuDelegateProtocol-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol FavoritesMenuDelegateProtocol + +@optional +- (void)menuDidClose; +- (void)menuDidPresent; +- (void)menuDidSelectMailbox:(id)arg1; +- (id)selectedMailbox; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuItem.h b/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuItem.h new file mode 100644 index 00000000..b5f638ea --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuItem.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableCellView.h" + +@class NSImage, NSImageView; + +@interface FavoritesMenuItem : NSTableCellView +{ + NSImageView *_menuStateImageView; + unsigned long long _indentationLevel; + NSImage *_image; + NSImage *_alternateImage; +} + +@property(retain, nonatomic) NSImage *alternateImage; // @synthesize alternateImage=_alternateImage; +@property(retain, nonatomic) NSImage *image; // @synthesize image=_image; +@property(nonatomic) unsigned long long indentationLevel; // @synthesize indentationLevel=_indentationLevel; +@property(nonatomic) NSImageView *menuStateImageView; // @synthesize menuStateImageView=_menuStateImageView; +- (void)setState:(long long)arg1; +- (void)setBackgroundStyle:(long long)arg1; +- (double)preferredWidth; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuItemRowView.h b/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuItemRowView.h new file mode 100644 index 00000000..36f2b0c2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuItemRowView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableRowView.h" + +@interface FavoritesMenuItemRowView : NSTableRowView +{ +} + +- (void)drawSelectionInRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuOutlineView.h b/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuOutlineView.h new file mode 100644 index 00000000..f6e04b76 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FavoritesMenuOutlineView.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOutlineView.h" + +@class FavoritesMenuController, NSTrackingArea; + +@interface FavoritesMenuOutlineView : NSOutlineView +{ + NSTrackingArea *_trackingArea; + FavoritesMenuController *_controller; +} + +@property FavoritesMenuController *controller; // @synthesize controller=_controller; +- (void)scrollWheel:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)mouseMoved:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)updateTrackingAreas; +- (void)dealloc; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FeedbackCollector.h b/MailHeaders/Mavericks_10.9.5/MailUI/FeedbackCollector.h new file mode 100644 index 00000000..d6b77c7c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FeedbackCollector.h @@ -0,0 +1,48 @@ +/* + * 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 "MCActivityTarget.h" +#import "NSWindowDelegate.h" + +@class NSButton, NSMutableString, NSProgressIndicator, NSTextField, NSView, NSWindow, WebView; + +@interface FeedbackCollector : NSObject +{ + WebView *_metricsWebView; + NSButton *_includeMetricsCheckbox; + NSProgressIndicator *_spinner; + NSTextField *_collectingTextField; + NSView *_statusContainerView; + NSButton *_continueButton; + NSMutableString *_feedbackHTMLString; + BOOL _sendMetricsImmediately; + BOOL _currentlyLoading; + NSWindow *_window; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +- (void)cancel:(id)arg1; +- (void)continue:(id)arg1; +- (BOOL)windowShouldClose:(id)arg1; +- (void)_loadStringIntoWebView; +- (void)_cleanUpWindow; +- (void)_sendMetricsIfRequested; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)_collectMetrics; +- (void)run; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FilesystemEmailImporter.h b/MailHeaders/Mavericks_10.9.5/MailUI/FilesystemEmailImporter.h new file mode 100644 index 00000000..a4e3132f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FilesystemEmailImporter.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "EmailImporter.h" + +@interface FilesystemEmailImporter : EmailImporter +{ +} + +- (void)verifyFromSpaceHeaderForScanner:(id)arg1 dataLength:(long long)arg2; +- (void)sniffLineDelimiterFromData:(id)arg1; +- (BOOL)isValidMailbox:(id)arg1; +- (char *)fromString; +- (id)pathExtensions; +- (void)readMailbox:(id)arg1 intoMailbox:(id)arg2; +- (void)processUserSelection; +- (double)progressValueForMailboxAtPath:(id)arg1; +- (id)prepareForImport; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FindBarContainer.h b/MailHeaders/Mavericks_10.9.5/MailUI/FindBarContainer.h new file mode 100644 index 00000000..5ebf7d7b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FindBarContainer.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "NSTextFinderBarContainer.h" + +@interface FindBarContainer : NSView +{ + NSView *_findBarView; + BOOL _findBarVisible; + NSView *_containerView; +} + +- (void)updateLayer; +- (void)_layoutSubviews; +@property(getter=isFindBarVisible) BOOL findBarVisible; +@property(retain) NSView *findBarView; +- (id)contentView; +- (void)findBarViewDidChangeHeight; +- (BOOL)isFlipped; +- (BOOL)wantsUpdateLayer; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FlagButtonImageView.h b/MailHeaders/Mavericks_10.9.5/MailUI/FlagButtonImageView.h new file mode 100644 index 00000000..51ccd27b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FlagButtonImageView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageView.h" + +@interface FlagButtonImageView : NSImageView +{ + BOOL _selected; + BOOL _displayMouseOverStyle; +} + +@property(nonatomic) BOOL displayMouseOverStyle; // @synthesize displayMouseOverStyle=_displayMouseOverStyle; +@property(nonatomic) BOOL selected; // @synthesize selected=_selected; +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FlaggedStatusToolbarItem.h b/MailHeaders/Mavericks_10.9.5/MailUI/FlaggedStatusToolbarItem.h new file mode 100644 index 00000000..8d2a2614 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FlaggedStatusToolbarItem.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@interface FlaggedStatusToolbarItem : NSToolbarItem +{ + id _delegate; +} + +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; +- (void)validate; +- (void)dealloc; +- (id)initWithItemIdentifier:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FlaggedStatusToolbarItemDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/FlaggedStatusToolbarItemDelegate-Protocol.h new file mode 100644 index 00000000..2ec67cb9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FlaggedStatusToolbarItemDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol FlaggedStatusToolbarItemDelegate + +@optional +- (void)toggleFlaggedStatus:(BOOL)arg1; +- (BOOL)validateFlaggedStatusToolbarItem:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FlaggedStatusView.h b/MailHeaders/Mavericks_10.9.5/MailUI/FlaggedStatusView.h new file mode 100644 index 00000000..372e5703 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FlaggedStatusView.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSegmentedControl.h" + +@class FlaggedStatusToolbarItem, NSMutableDictionary; + +@interface FlaggedStatusView : NSSegmentedControl +{ + NSMutableDictionary *_flagIcons; + BOOL _flagColorToDisplay; + FlaggedStatusToolbarItem *_toolbarItem; +} + ++ (BOOL)defaultFlagColor; ++ (id)menuForFlaggedStatus; +@property(nonatomic) FlaggedStatusToolbarItem *toolbarItem; // @synthesize toolbarItem=_toolbarItem; +- (void)_segmentedControlClicked:(id)arg1; +- (void)setupAccessibilityForButton:(BOOL)arg1; +@property(nonatomic) BOOL flagColorToDisplay; +- (void)dealloc; +- (void)_flaggedStatusViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FlagsMenuItemView.h b/MailHeaders/Mavericks_10.9.5/MailUI/FlagsMenuItemView.h new file mode 100644 index 00000000..ed839733 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FlagsMenuItemView.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class FlagButtonImageView, NSMutableArray, NSMutableDictionary, NSTextField; + +@interface FlagsMenuItemView : NSView +{ + NSTextField *_flagTitleTextField; + NSTextField *_flagNameTextField; + FlagButtonImageView *_clearFlaggedStatusView; + NSMutableDictionary *_flagViews; + NSMutableArray *_trackingAreas; +} + +- (void)setEnabled:(BOOL)arg1; +- (void)viewDidMoveToWindow; +- (void)mouseUp:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)_drawSelectedOutlineForView:(id)arg1; +- (id)_viewForFlagColor:(BOOL)arg1; +- (void)dealloc; +- (void)awakeFromNib; +- (void)_flagsMenuItemViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FlatTableView.h b/MailHeaders/Mavericks_10.9.5/MailUI/FlatTableView.h new file mode 100644 index 00000000..65328a1b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FlatTableView.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableView.h" + +@class NSImage; + +@interface FlatTableView : NSTableView +{ + NSImage *_selectionHighlightLeftEndCap; + NSImage *_selectionHighlightCenter; + NSImage *_selectionHighlightRightEndCap; + NSImage *_dropDestinationLeftEndCap; + NSImage *_dropDestinationCenter; + NSImage *_dropDestinationRightEndCap; +} + +- (BOOL)isOpaque; +- (void)tile; +- (id)_highlightColorForCell:(id)arg1; +- (void)highlightRow:(long long)arg1 withLeftEndCap:(id)arg2 center:(id)arg3 rightEndCap:(id)arg4; +- (void)_drawDropHighlightOnRow:(long long)arg1; +- (void)_drawDropHighlightBackgroundForRow:(long long)arg1; +- (void)highlightSelectionInClipRect:(struct CGRect)arg1; +- (void)dealloc; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FlatTableViewDataCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/FlatTableViewDataCell.h new file mode 100644 index 00000000..1a1abbf0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FlatTableViewDataCell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface FlatTableViewDataCell : NSTextFieldCell +{ +} + +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)initTextCell:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FlippedView.h b/MailHeaders/Mavericks_10.9.5/MailUI/FlippedView.h new file mode 100644 index 00000000..5ef4de68 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FlippedView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface FlippedView : NSView +{ +} + +- (BOOL)isOpaque; +- (BOOL)isFlipped; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FontPreferenceContainerView.h b/MailHeaders/Mavericks_10.9.5/MailUI/FontPreferenceContainerView.h new file mode 100644 index 00000000..2e70341c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FontPreferenceContainerView.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSButton, NSTextField; + +@interface FontPreferenceContainerView : NSView +{ + NSButton *_selectButton; + NSTextField *_labelTextField; + NSTextField *_sampleTextField; + struct CGRect _myOriginalFrame; + struct CGRect _sampleTextFieldOriginalFrame; + double _buttonOffset; + double _labelOffset; + double _sampleOffset; + SEL _getSEL; + SEL _setSEL; +} + +@property SEL setSEL; // @synthesize setSEL=_setSEL; +@property SEL getSEL; // @synthesize getSEL=_getSEL; +- (void)sizeToFit; +- (void)layoutVertically; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FontsAndColorsPreferences.h b/MailHeaders/Mavericks_10.9.5/MailUI/FontsAndColorsPreferences.h new file mode 100644 index 00000000..51d34045 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FontsAndColorsPreferences.h @@ -0,0 +1,76 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +@class FontPreferenceContainerView, NSArray, NSFont, NSMutableDictionary, NSPopUpButton, NSTextView; + +@interface FontsAndColorsPreferences : NSPreferencesModule +{ + FontPreferenceContainerView *_messageListContainerView; + FontPreferenceContainerView *_messageTextContainerView; + FontPreferenceContainerView *_fixedWidthContainerView; + NSArray *_fontPrefContainerViews; + double _containerSuperViewSpacingY; + double _containerContainerSpacingY; + int _changingFontPreference; + NSMutableDictionary *_midYDict; + NSPopUpButton *_colorPopupOne; + NSPopUpButton *_colorPopupTwo; + NSPopUpButton *_colorPopupThree; + NSPopUpButton *_lastColorPopupSelected; + NSTextView *_exampleTextView; + BOOL _isQuotedTextColored; + BOOL _isPlainTextOfFixedWidth; + NSFont *_messageListFont; + NSFont *_messageFont; + NSFont *_fixedWidthFont; + NSArray *_colorList; +} + ++ (id)keyPathsForValuesAffectingFixedWidthSampleFont; ++ (id)keyPathsForValuesAffectingMessageSampleFont; ++ (id)keyPathsForValuesAffectingMessageListSampleFont; +@property(retain) NSArray *colorList; // @synthesize colorList=_colorList; +@property BOOL isPlainTextOfFixedWidth; // @synthesize isPlainTextOfFixedWidth=_isPlainTextOfFixedWidth; +@property BOOL isQuotedTextColored; // @synthesize isQuotedTextColored=_isQuotedTextColored; +@property(retain) NSFont *fixedWidthFont; // @synthesize fixedWidthFont=_fixedWidthFont; +@property(retain) NSFont *messageFont; // @synthesize messageFont=_messageFont; +@property(retain) NSFont *messageListFont; // @synthesize messageListFont=_messageListFont; +- (unsigned long long)validModesForFontPanel:(id)arg1; +- (void)_colorPicked:(id)arg1; +- (void)colorPopupChanged:(id)arg1; +- (void)colorQuotesButtonClicked:(id)arg1; +- (void)_updateColorList; +- (void)_updateExampleTextView; +- (void)_setColor:(id)arg1 forPopup:(id)arg2; +- (void)_setOtherColor:(id)arg1 forPopup:(id)arg2; +- (void)changeFont:(id)arg1; +- (double)_sizeContainerView:(id)arg1; +- (id)_containerViewForFontPreference:(int)arg1; +- (void)toggleUseFixedWidthFont:(id)arg1; +- (void)toggleColorQuotedText:(id)arg1; +- (void)selectFont:(id)arg1; +- (void)moduleWillBeRemoved; +- (void)_populateFontPrefContainers; +- (id)_sampleFontForFont:(id)arg1; +@property(readonly) NSFont *fixedWidthSampleFont; +@property(readonly) NSFont *messageSampleFont; +@property(readonly) NSFont *messageListSampleFont; +- (void)_replaceExampleTextView; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (BOOL)isResizable; +- (void)_layoutFromFontPreference:(int)arg1; +- (void)_updateAutoresizeFlags:(int)arg1; +- (void)_growWindowVertically:(double)arg1 animate:(BOOL)arg2; +- (void)initializeFromDefaults; +- (id)imageForPreferenceNamed:(id)arg1; +- (void)dealloc; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FullScreenModalCapableWindow.h b/MailHeaders/Mavericks_10.9.5/MailUI/FullScreenModalCapableWindow.h new file mode 100644 index 00000000..42607a02 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FullScreenModalCapableWindow.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@class NSResponder, WindowTransformAnimation; + +@interface FullScreenModalCapableWindow : NSWindow +{ + BOOL _hasTransform; + BOOL _disableFrameConstraint; + BOOL _isModal; + BOOL _shouldNotSaveFrame; + WindowTransformAnimation *_windowTransformAnimation; + NSResponder *_nextFirstResponder; +} + +@property BOOL shouldNotSaveFrame; // @synthesize shouldNotSaveFrame=_shouldNotSaveFrame; +@property BOOL isModal; // @synthesize isModal=_isModal; +@property(retain) NSResponder *nextFirstResponder; // @synthesize nextFirstResponder=_nextFirstResponder; +@property BOOL disableFrameConstraint; // @synthesize disableFrameConstraint=_disableFrameConstraint; +@property WindowTransformAnimation *windowTransformAnimation; // @synthesize windowTransformAnimation=_windowTransformAnimation; +- (void)setIdentityTransform; +- (void)setTransformForAnimation:(struct CGAffineTransform)arg1 anchorPoint:(struct CGPoint)arg2; +- (BOOL)isMainWindow; +- (BOOL)canEnterFullScreenMode; +- (void)makeKeyAndOrderFrontForAnimation; +- (void)makeKeyAndOrderFront:(id)arg1; +- (void)orderFront:(id)arg1; +- (void)saveFrameUsingName:(id)arg1; +- (void)orderOut:(id)arg1; +- (struct CGRect)constrainFrameRect:(struct CGRect)arg1 toScreen:(id)arg2; +- (void)keyDown:(id)arg1; +- (BOOL)makeFirstResponder:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/FullScreenWindowController.h b/MailHeaders/Mavericks_10.9.5/MailUI/FullScreenWindowController.h new file mode 100644 index 00000000..ef87722e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/FullScreenWindowController.h @@ -0,0 +1,69 @@ +/* + * 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 "NSAnimationDelegate.h" + +@class CALayer, MailWindowShadowLayer, MessageViewer, ModalDimmingWindow, NSWindow; + +@interface FullScreenWindowController : NSObject +{ + ModalDimmingWindow *_modalDimmingWindow; + id _modalWindowDelegate; + MessageViewer *_messageViewer; + NSWindow *_coverExitAnimationWindow; + CALayer *_mainWindowAnimationLayer; + CALayer *_modalWindowAnimationLayer; + MailWindowShadowLayer *_mainShadowLayer; + MailWindowShadowLayer *_modalShadowLayer; + struct CGImage *_mainWindowNonFullScreenSnapshot; + struct CGImage *_modalWindowNonFullScreenSnapshot; + struct CGRect _nonFullScreenWindowFrame; + BOOL _isPerformingAnimation; +} + ++ (void)waitForFullScreenSpaceSwitchIfNeeded; ++ (BOOL)isFrontmostMessageViewerInFullScreen; ++ (BOOL)preventCreationOfViewerOfClass:(Class)arg1; ++ (BOOL)preventCreationOfEditorOfClass:(Class)arg1 withType:(unsigned long long)arg2; +@property(readonly) BOOL isPerformingAnimation; // @synthesize isPerformingAnimation=_isPerformingAnimation; +- (void)_exitAnimationFinished; +- (void)startExitAnimationWithDuration:(double)arg1; +- (void)_animateModalWindow; +- (void)_animateMainWindow; +- (id)prepareExitAnimation; +- (struct CGImage *)_newModalWindowSnapshot; +- (void)_closeAnimationFinished; +- (void)animationDidEnd:(id)arg1; +- (void)animationDidStop:(id)arg1; +- (BOOL)animationShouldStart:(id)arg1; +- (void)_animationDidEndOrStop:(id)arg1; +- (void)_openAnimationFinished; +- (id)_operationNameForAnimationType:(long long)arg1; +- (void)finishedReplyAnimation; +- (void)attachModalWindowWithDelegate:(id)arg1; +- (void)willAttachModalWindowWithDelegate:(id)arg1; +- (void)windowWillEnterFullScreen; +- (void)_setupDimmingWindow; +- (void)_cleanUpAfterModalWindowClose; +- (void)_closeModalWindow; +- (void)_modalWindowWillClose:(id)arg1; +- (struct CGRect)modalWindowRectWithParentWindow:(id)arg1; +- (BOOL)isModalWindowPresent; +- (void)_prepareModalWindowForNonFullScreen; +- (double)_titleBarHeight; +- (void)prepareWindowForFullScreen:(id)arg1; +- (void)presentModalWindowWithDelegate:(id)arg1; +- (void)closeModalWindowForcibly:(BOOL)arg1 animate:(BOOL)arg2 animationType:(long long)arg3; +- (void)closeModalWindowForcibly:(BOOL)arg1 animate:(BOOL)arg2; +- (BOOL)_isFullScreen; +- (id)_parentWindow; +- (void)dealloc; +- (id)initWithMessageViewer:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/GeneralPreferences.h b/MailHeaders/Mavericks_10.9.5/MailUI/GeneralPreferences.h new file mode 100644 index 00000000..cd53d5a2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/GeneralPreferences.h @@ -0,0 +1,56 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "SoundPopUpButtonDelegate.h" + +@class DefaultApplicationPopUpButton, MailboxesChooser, NSButton, NSPopUpButton, SoundPopUpButton; + +@interface GeneralPreferences : NSPreferencesModule +{ + NSPopUpButton *_fetchFrequencyPopup; + SoundPopUpButton *_newMailSoundPopup; + NSButton *_playMailSoundsCheckbox; + NSPopUpButton *_dockBadgePopup; + NSPopUpButton *_userNotificationPopup; + MailboxesChooser *_dockBadgeMailboxesChooser; + MailboxesChooser *_userNotificationMailboxesChooser; + DefaultApplicationPopUpButton *_defaultMailClientPopUp; + NSButton *_indexDecryptedMessagesButton; + NSButton *_indexTrashButton; + NSButton *_indexJunkButton; + NSPopUpButton *_downloadFolderPopup; + NSPopUpButton *_addInvitationsPopup; + NSPopUpButton *_attachmentDeletionPopup; +} + +- (void)attachmentDeletionPopupChanged:(id)arg1; +- (void)addInvitationsPopupChanged:(id)arg1; +- (void)chooseNewDownloadFolder:(id)arg1; +- (void)userNotificationPopupChanged:(id)arg1; +- (void)dockBadgePopupChanged:(id)arg1; +- (void)playSoundsClicked:(id)arg1; +- (id)titleForSoundFile:(id)arg1; +- (void)newMailSoundDidChange:(id)arg1; +- (void)indexJunkButtonClicked:(id)arg1; +- (void)indexTrashButtonClicked:(id)arg1; +- (void)indexDecryptedMessagesButtonClicked:(id)arg1; +- (void)fetchFrequencyChanged:(id)arg1; +- (void)initializeFromDefaults; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (void)dealloc; +- (void)awakeFromNib; +- (void)_setupUserNotificationPopup; +- (void)_setupDockCountPopup; +- (void)_addInvitationsBehaviorChanged:(id)arg1; +- (void)_updateAddInvitationsPopup; +- (BOOL)isResizable; +- (id)imageForPreferenceNamed:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/GenericAttachmentFetcher.h b/MailHeaders/Mavericks_10.9.5/MailUI/GenericAttachmentFetcher.h new file mode 100644 index 00000000..ea340c52 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/GenericAttachmentFetcher.h @@ -0,0 +1,35 @@ +/* + * 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 "MCActivityTarget.h" + +@class NSArray, NSMutableSet; + +@interface GenericAttachmentFetcher : NSObject +{ + NSArray *_attachments; + NSMutableSet *_attachmentsBeingDownloaded; +} + +- (double)temporaryFolderTimeout; +- (void)didSaveAttachment:(id)arg1 toPath:(id)arg2; +- (void)didSaveAttachments:(id)arg1 paths:(id)arg2; +- (void)downloadedAllAttachments; +- (void)didFinishBackgroundLoadOfAttachment:(id)arg1; +- (void)beginSaveOfAttachments:(id)arg1 toTemporaryFolderWithName:(id)arg2 taskName:(id)arg3; +- (void)_saveAttachments:(id)arg1 itemManager:(id)arg2; +- (id)downloadedAttachments; +- (void)cancelBackgroundLoad; +- (void)beginBackgroundLoad; +- (void)_downloadCompleted:(id)arg1; +- (id)init; +- (id)initWithAttachments:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/GlassButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/GlassButton.h new file mode 100644 index 00000000..c6b512de --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/GlassButton.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface GlassButton : NSButton +{ +} + ++ (Class)cellClass; +- (void)updateLayer; +- (double)baselineOffsetFromBottom; +- (CDStruct_3c058996)alignmentRectInsets; +- (struct CGSize)intrinsicContentSize; +- (BOOL)wantsUpdateLayer; +- (void)awakeFromNib; +- (void)setCell:(id)arg1; +- (void)_glassButtonCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/GlassButtonCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/GlassButtonCell.h new file mode 100644 index 00000000..7c76f5e5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/GlassButtonCell.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface GlassButtonCell : NSButtonCell +{ +} + +- (void)setBackgroundStyle:(long long)arg1; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (void)setEnabled:(BOOL)arg1; +- (id)attributedTitle; +- (id)_titleAttributes; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/HeaderButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderButton.h new file mode 100644 index 00000000..0f5b97ec --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderButton.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@class NSTrackingArea; + +@interface HeaderButton : NSButton +{ + NSTrackingArea *_trackingArea; +} + +@property(retain, nonatomic) NSTrackingArea *trackingArea; // @synthesize trackingArea=_trackingArea; +- (void)cursorUpdate:(id)arg1; +- (void)updateTrackingAreas; +- (CDStruct_3c058996)alignmentRectInsets; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/HeaderButtonCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderButtonCell.h new file mode 100644 index 00000000..485bb5db --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderButtonCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface HeaderButtonCell : NSButtonCell +{ +} + +- (BOOL)_shouldDrawTextWithDisabledAppearance; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/HeaderLayoutManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderLayoutManager.h new file mode 100644 index 00000000..c6d4dde5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderLayoutManager.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSLayoutManager.h" + +@interface HeaderLayoutManager : NSLayoutManager +{ +} + +- (void)textContainerChangedGeometry:(id)arg1; +- (void)setDelegate:(id)arg1; +- (id)delegate; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/HeaderLayoutManagerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderLayoutManagerDelegate-Protocol.h new file mode 100644 index 00000000..73fe5188 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderLayoutManagerDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSLayoutManagerDelegate.h" + +@protocol HeaderLayoutManagerDelegate + +@optional +- (void)layoutManager:(id)arg1 textContainerChangedGeometry:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/HeaderTextContainer.h b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderTextContainer.h new file mode 100644 index 00000000..aaef522d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderTextContainer.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextContainer.h" + +@class NSMutableSet; + +@interface HeaderTextContainer : NSTextContainer +{ + NSMutableSet *_views; +} + +- (BOOL)containsPoint:(struct CGPoint)arg1; +- (struct CGRect)lineFragmentRectForProposedRect:(struct CGRect)arg1 sweepDirection:(unsigned long long)arg2 movementDirection:(unsigned long long)arg3 remainingRect:(struct CGRect *)arg4; +- (BOOL)isSimpleRectangularTextContainer; +- (void)_viewFrameChanged:(id)arg1; +- (void)removeView:(id)arg1; +- (void)addView:(id)arg1; +- (void)dealloc; +- (id)initWithContainerSize:(struct CGSize)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/HeaderTextView.h b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderTextView.h new file mode 100644 index 00000000..506a08f6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderTextView.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextView.h" + +@interface HeaderTextView : NSTextView +{ + id _attachmentCell; + struct CGSize _contentSize; + struct CGRect _attachmentCellRect; +} + +@property(nonatomic) struct CGSize contentSize; // @synthesize contentSize=_contentSize; +@property(nonatomic) struct CGRect attachmentCellRect; // @synthesize attachmentCellRect=_attachmentCellRect; +@property(retain, nonatomic) id attachmentCell; // @synthesize attachmentCell=_attachmentCell; +- (BOOL)writeSelectionToPasteboard:(id)arg1 type:(id)arg2; +- (id)_selectedAttributedString; +- (id)writablePasteboardTypes; +- (void)mouseMoved:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)rightMouseDown:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)cursorUpdate:(id)arg1; +- (id)_attachmentCellForCharacterAtIndex:(unsigned long long)arg1; +- (unsigned long long)_glyphIndexForPoint:(struct CGPoint)arg1 glyphRect:(struct CGRect *)arg2; +- (void)resetCursorRects; +- (void)keyDown:(id)arg1; +- (struct CGSize)intrinsicContentSize; +- (void)setConstrainedFrameSize:(struct CGSize)arg1; +- (BOOL)autoscroll:(id)arg1; +- (BOOL)resignFirstResponder; +- (BOOL)canBecomeKeyView; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/HeaderTruncationAttachmentCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderTruncationAttachmentCell.h new file mode 100644 index 00000000..741c5389 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderTruncationAttachmentCell.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextAttachmentCell.h" + +@class NSColor; + +@interface HeaderTruncationAttachmentCell : NSTextAttachmentCell +{ + NSColor *_textColor; +} + +@property(copy, nonatomic) NSColor *textColor; // @synthesize textColor=_textColor; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (struct CGRect)cellFrameForTextContainer:(id)arg1 proposedLineFragment:(struct CGRect)arg2 glyphPosition:(struct CGPoint)arg3 characterIndex:(unsigned long long)arg4; +- (struct CGSize)cellSizeForBounds:(struct CGRect)arg1; +- (struct CGSize)cellSize; +- (struct CGPoint)cellBaselineOffset; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (id)_textAttributes; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/HeaderView.h b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderView.h new file mode 100644 index 00000000..b2ef2123 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderView.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class HeaderViewController, MCMessage, NSTrackingArea; + +@interface HeaderView : NSView +{ + NSTrackingArea *_trackingArea; + HeaderViewController *_viewController; +} + +@property(nonatomic) HeaderViewController *viewController; // @synthesize viewController=_viewController; +@property(retain, nonatomic) NSTrackingArea *trackingArea; // @synthesize trackingArea=_trackingArea; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsIgnored; +- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (unsigned long long)draggingSourceOperationMaskForLocal:(BOOL)arg1; +- (void)pasteboardChangedOwner:(id)arg1; +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; +- (id)namesOfPromisedFilesDroppedAtDestination:(id)arg1; +- (void)draggingSession:(id)arg1 endedAtPoint:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (void)draggingSession:(id)arg1 movedToPoint:(struct CGPoint)arg2; +- (void)draggingSession:(id)arg1 willBeginAtPoint:(struct CGPoint)arg2; +- (void)mouseDragged:(id)arg1; +- (void)mouseDown:(id)arg1; +@property(readonly, nonatomic) MCMessage *displayedMessage; +- (void)cursorUpdate:(id)arg1; +- (void)updateTrackingAreas; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (BOOL)isOpaque; +- (BOOL)isFlipped; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/HeaderViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderViewController.h new file mode 100644 index 00000000..c76f6631 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/HeaderViewController.h @@ -0,0 +1,117 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +#import "HeaderLayoutManagerDelegate.h" +#import "NSTextStorageDelegate.h" +#import "NSTokenAttachmentDelegate.h" + +@class HeaderLayoutManager, HeaderTextContainer, HeaderTextView, HeaderView, NSButton, NSFont, NSImageView, NSLayoutConstraint, NSMutableDictionary, NSMutableSet, NSTextAttachment, NSTextField, NSView; + +@interface HeaderViewController : NSViewController +{ + long long _detailsHidden; + long long _detailLevel; + long long _addressDisplayMode; + BOOL _showMailboxLink; + BOOL _showMessageNumber; + BOOL _showVIPButton; + NSFont *_font; + HeaderView *_view; + NSTextField *_dateReceivedField; + NSButton *_detailsButton; + NSView *_dividerView; + NSButton *_mailboxNameButton; + NSTextField *_messageNumberField; + NSImageView *_senderImageView; + NSButton *_unreadVIPButton; + HeaderLayoutManager *_layoutManager; + HeaderTextContainer *_textContainer; + HeaderTextView *_textView; + NSTextAttachment *_flagTextAttachment; + NSTextAttachment *_attachmentTextAttachment; + NSMutableDictionary *_displayStringsByHeaderKey; + NSMutableSet *_expandedHeaderKeys; + NSLayoutConstraint *_dateReceivedFieldTopAlignmentConstraint; + NSLayoutConstraint *_dateReceivedFieldTrailingSpaceConstraint; + NSLayoutConstraint *_dividerViewTrailingAlignmentConstraint; + NSLayoutConstraint *_mailboxNameButtonBottomSpaceConstraint; + NSLayoutConstraint *_mailboxNameButtonTrailingSpaceConstraint; + NSLayoutConstraint *_messageNumberFieldBottomSpaceConstraint; + NSLayoutConstraint *_senderImageViewBottomSpaceConstraint; +} + +@property(retain, nonatomic) NSLayoutConstraint *senderImageViewBottomSpaceConstraint; // @synthesize senderImageViewBottomSpaceConstraint=_senderImageViewBottomSpaceConstraint; +@property(retain, nonatomic) NSLayoutConstraint *messageNumberFieldBottomSpaceConstraint; // @synthesize messageNumberFieldBottomSpaceConstraint=_messageNumberFieldBottomSpaceConstraint; +@property(retain, nonatomic) NSLayoutConstraint *mailboxNameButtonTrailingSpaceConstraint; // @synthesize mailboxNameButtonTrailingSpaceConstraint=_mailboxNameButtonTrailingSpaceConstraint; +@property(retain, nonatomic) NSLayoutConstraint *mailboxNameButtonBottomSpaceConstraint; // @synthesize mailboxNameButtonBottomSpaceConstraint=_mailboxNameButtonBottomSpaceConstraint; +@property(retain, nonatomic) NSLayoutConstraint *dividerViewTrailingAlignmentConstraint; // @synthesize dividerViewTrailingAlignmentConstraint=_dividerViewTrailingAlignmentConstraint; +@property(retain, nonatomic) NSLayoutConstraint *dateReceivedFieldTrailingSpaceConstraint; // @synthesize dateReceivedFieldTrailingSpaceConstraint=_dateReceivedFieldTrailingSpaceConstraint; +@property(retain, nonatomic) NSLayoutConstraint *dateReceivedFieldTopAlignmentConstraint; // @synthesize dateReceivedFieldTopAlignmentConstraint=_dateReceivedFieldTopAlignmentConstraint; +@property(readonly, nonatomic) NSMutableSet *expandedHeaderKeys; // @synthesize expandedHeaderKeys=_expandedHeaderKeys; +@property(readonly, nonatomic) NSMutableDictionary *displayStringsByHeaderKey; // @synthesize displayStringsByHeaderKey=_displayStringsByHeaderKey; +@property(readonly, nonatomic) NSTextAttachment *attachmentTextAttachment; // @synthesize attachmentTextAttachment=_attachmentTextAttachment; +@property(readonly, nonatomic) NSTextAttachment *flagTextAttachment; // @synthesize flagTextAttachment=_flagTextAttachment; +@property(retain, nonatomic) HeaderTextView *textView; // @synthesize textView=_textView; +@property(readonly, nonatomic) HeaderTextContainer *textContainer; // @synthesize textContainer=_textContainer; +@property(readonly, nonatomic) HeaderLayoutManager *layoutManager; // @synthesize layoutManager=_layoutManager; +@property(retain, nonatomic) NSButton *unreadVIPButton; // @synthesize unreadVIPButton=_unreadVIPButton; +@property(retain, nonatomic) NSImageView *senderImageView; // @synthesize senderImageView=_senderImageView; +@property(retain, nonatomic) NSTextField *messageNumberField; // @synthesize messageNumberField=_messageNumberField; +@property(retain, nonatomic) NSButton *mailboxNameButton; // @synthesize mailboxNameButton=_mailboxNameButton; +@property(retain, nonatomic) NSView *dividerView; // @synthesize dividerView=_dividerView; +@property(retain, nonatomic) NSButton *detailsButton; // @synthesize detailsButton=_detailsButton; +@property(retain, nonatomic) NSTextField *dateReceivedField; // @synthesize dateReceivedField=_dateReceivedField; +- (void)toggleVIP:(id)arg1; +- (void)toggleDetails:(id)arg1; +- (void)showSignerCertificate:(id)arg1; +- (id)menuForTokenAttachment:(id)arg1; +- (BOOL)hasMenuForTokenAttachment:(id)arg1; +- (BOOL)textView:(id)arg1 writeCell:(id)arg2 atIndex:(unsigned long long)arg3 toPasteboard:(id)arg4 type:(id)arg5; +- (id)textView:(id)arg1 writablePasteboardTypesForCell:(id)arg2 atIndex:(unsigned long long)arg3; +- (id)textView:(id)arg1 willDisplayToolTip:(id)arg2 forCharacterAtIndex:(unsigned long long)arg3; +- (id)textView:(id)arg1 menu:(id)arg2 forEvent:(id)arg3 atIndex:(unsigned long long)arg4; +- (void)textView:(id)arg1 clickedOnCell:(id)arg2 inRect:(struct CGRect)arg3 atIndex:(unsigned long long)arg4; +- (id)layoutManager:(id)arg1 shouldUseSelectedTextAttributes:(id)arg2 atCharacterIndex:(unsigned long long)arg3 effectiveRange:(struct _NSRange *)arg4; +- (void)layoutManager:(id)arg1 textContainerChangedGeometry:(id)arg2; +- (void)_layoutTextStorageIfNeeded; +- (id)_displayStringForSecurityKey; +- (id)_displayStringForHeaderKey:(id)arg1; +- (id)_displayStringForCombinedRecipientsKey; +- (id)_displayStringForAddressHeaderKey:(id)arg1; +- (void)_updateUnreadVIPButton; +- (void)_updateTextStorageWithHardInvalidation:(BOOL)arg1; +- (void)_updateSenderImageView; +- (void)_updateMessageNumberField; +- (void)_updateMailboxNameButton; +- (void)_updateFlagTextAttachment; +- (void)_updateDividerView; +- (void)_updateDetailsButton; +- (void)_updateDateReceivedField; +- (void)_updateAttachmentTextAttachment; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(nonatomic) BOOL showVIPButton; +@property(nonatomic) BOOL showMailboxLink; +@property(nonatomic) BOOL showMessageNumber; +@property(copy, nonatomic) NSFont *font; +@property(nonatomic) long long detailLevel; +@property(nonatomic) long long detailsHidden; +@property(nonatomic) long long addressDisplayMode; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +- (void)setView:(id)arg1; +- (id)view; +- (void)dealloc; +- (void)_setupTextSystem; +- (void)_setupControls; +- (void)awakeFromNib; +- (void)_headerViewControllerCommonInit; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/HeadersEditor.h b/MailHeaders/Mavericks_10.9.5/MailUI/HeadersEditor.h new file mode 100644 index 00000000..c7db7ee2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/HeadersEditor.h @@ -0,0 +1,127 @@ +/* + * 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 "AccountStatusDataSourceDelegate.h" +#import "NSUserInterfaceValidations.h" +#import "NSWindowDelegate.h" + +@class AccountStatusDataSource, ComposeHeaderView, DocumentEditor, MUIAddressField, NSMutableArray, NSPopUpButton, NSSegmentedControl, NSTextField; + +@interface HeadersEditor : NSObject +{ + DocumentEditor *_documentEditor; + ComposeHeaderView *_composeHeaderView; + NSPopUpButton *_fromPopup; + NSPopUpButton *_signaturePopup; + NSPopUpButton *_priorityPopup; + NSSegmentedControl *_signButton; + NSSegmentedControl *_encryptButton; + AccountStatusDataSource *_deliveryASDS; + NSPopUpButton *_deliveryPopUp; + NSTextField *_subjectField; + NSMutableArray *_accessoryViewOwners; + BOOL _hasChanges; + BOOL _registeredForAnimationObservation; + MUIAddressField *_toField; + MUIAddressField *_ccField; + MUIAddressField *_bccField; + MUIAddressField *_replyToField; + NSTextField *_toTitle; + NSTextField *_ccTitle; + NSTextField *_bccTitle; + NSTextField *_replyToTitle; +} + ++ (id)keyPathsForValuesAffectingDeliveryAccount; +@property(nonatomic) BOOL registeredForAnimationObservation; // @synthesize registeredForAnimationObservation=_registeredForAnimationObservation; +@property BOOL hasChanges; // @synthesize hasChanges=_hasChanges; +@property(nonatomic) NSTextField *replyToTitle; // @synthesize replyToTitle=_replyToTitle; +@property(nonatomic) NSTextField *bccTitle; // @synthesize bccTitle=_bccTitle; +@property(nonatomic) NSTextField *ccTitle; // @synthesize ccTitle=_ccTitle; +@property(nonatomic) NSTextField *toTitle; // @synthesize toTitle=_toTitle; +@property(retain, nonatomic) MUIAddressField *replyToField; // @synthesize replyToField=_replyToField; +@property(retain, nonatomic) MUIAddressField *bccField; // @synthesize bccField=_bccField; +@property(retain, nonatomic) MUIAddressField *ccField; // @synthesize ccField=_ccField; +@property(retain, nonatomic) MUIAddressField *toField; // @synthesize toField=_toField; +- (id)_newSenderMarkupStringIncludeBrackets:(BOOL)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)dealloc; +- (void)prepareToCloseWindow; +- (void)_clearFieldIfHidden:(id)arg1; +- (void)addReplyToHeader:(id)arg1; +- (void)addBccHeader:(id)arg1; +- (void)addCcHeader:(id)arg1; +- (BOOL)headerCustomizationIsInProgress; +- (void)composeHeaderViewDidEndCustomization:(id)arg1; +- (void)composeHeaderViewWillBeginCustomization:(id)arg1; +- (void)changeSignature:(id)arg1; +- (void)editSignatures:(id)arg1; +- (void)_updateEncryptButtonInBackground; +- (void)securityControlChanged:(id)arg1; +- (void)setMessagePriority:(id)arg1; +- (void)changeFromHeader:(id)arg1; +- (void)changeHeaderField:(id)arg1; +- (void)accountStatusDidChange:(id)arg1; +- (id)mailAccount; +- (void)setDeliveryAccount:(id)arg1; +- (void)_setDynamicDeliveryAccountForAccount:(id)arg1; +- (id)deliveryAccount; +- (void)setSelectedAccount:(id)arg1; +- (void)toggleAccountLock:(id)arg1; +- (void)editServerList:(id)arg1 selectedAccount:(id)arg2; +- (BOOL)isOkayToSaveMessage:(id)arg1; +- (BOOL)canSignFromAnyAccount; +- (BOOL)messageHasRecipients; +- (BOOL)messageIsToBeEncrypted; +- (BOOL)messageIsToBeSigned; +- (void)changeSignatureFrom:(id)arg1 to:(id)arg2; +- (void)turnOffEncryption; +- (void)setCheckGrammarWithSpelling:(BOOL)arg1; +- (void)setInlineSpellCheckingEnabled:(BOOL)arg1; +- (void)appendAddresses:(id)arg1 toHeader:(id)arg2; +- (void)setHeaders:(id)arg1; +- (BOOL)_headerFieldIsNonEmpty:(id)arg1; +- (void)_addressFieldChanged; +- (void)_subjectChanged; +- (void)_textFieldBeganOrEndedEditing:(id)arg1; +- (void)loadHeadersFromBackEnd:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (id)_headerKeyForView:(id)arg1; +- (id)fieldForHeader:(id)arg1; +- (void)_configureTextField:(id)arg1 isAddressField:(BOOL)arg2; +- (void)_setupField:(id)arg1 withAddressesForKey:(id)arg2 visibilityBlock:(id)arg3; +- (void)_setupAddressField:(id)arg1; +- (void)webViewDidLoadStationery:(id)arg1; +- (void)updateCcOrBccMyselfFieldWithSender:(id)arg1 oldSender:(id)arg2; +- (double)deliveryPopUpSizeToFitWidth; +- (void)_configureDeliveryPopupButton; +- (void)updateDeliveryAccountControl:(id)arg1; +- (void)updateSignatureControlOverridingExistingSignature:(BOOL)arg1; +- (void)_updateFromAndSignatureControls:(id)arg1; +- (void)_updateEncryptButtonToolTip; +- (void)_toggleEncrypButtonImages; +- (void)_updateSignButtonToolTip; +- (void)_toggleSignButtonImages; +- (void)_updateSecurityStateInBackgroundForRecipients:(id)arg1 sender:(id)arg2; +- (void)updateSecurityControls; +- (void)updatePriorityPopUpMakeActive:(BOOL)arg1; +- (void)windowDidResignKey:(id)arg1; +- (void)windowDidBecomeKey:(id)arg1; +- (void)_accountInfoDidChange:(id)arg1; +- (void)_mailAccountsDidChange:(id)arg1; +- (void)composePrefsChanged; +- (void)initializePriorityPopUp; +- (void)configureButtonsAndPopUps; +- (void)setAGoodFirstResponder; +- (void)finishSetUp; +- (void)setUpFieldsAndButtons; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/HyperlinkEditor.h b/MailHeaders/Mavericks_10.9.5/MailUI/HyperlinkEditor.h new file mode 100644 index 00000000..37b45fdb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/HyperlinkEditor.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class DOMHTMLAnchorElement, DOMNode, EditingMessageWebView, NSButton, NSPanel, NSString, NSTextField; + +@interface HyperlinkEditor : NSObject +{ + NSTextField *_linkTextField; + NSButton *_okButton; + NSButton *_removeButton; + EditingMessageWebView *_webView; + id _delegate; + DOMHTMLAnchorElement *_selectedAnchor; + DOMNode *_selectionContents; + NSString *_replacementLink; + NSPanel *_linkSheet; +} + +@property(retain, nonatomic) NSPanel *linkSheet; // @synthesize linkSheet=_linkSheet; +- (void)_setReplacementLink:(id)arg1; +- (void)controlTextDidChange:(id)arg1; +- (void)orderOutPanel:(id)arg1; +- (void)removeSelectedLink; +- (void)editLink; +- (id)initForWebView:(id)arg1 delegate:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/IMAPAccountDetails.h b/MailHeaders/Mavericks_10.9.5/MailUI/IMAPAccountDetails.h new file mode 100644 index 00000000..e21c636d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/IMAPAccountDetails.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "AccountDetails.h" + +@class NSButton, NSTextField; + +@interface IMAPAccountDetails : AccountDetails +{ + NSButton *_compactWhenClosing; + NSTextField *_serverPathPrefix; + BOOL _warnedAboutCachingAndIndexing; + NSButton *_useIDLECommand; + NSButton *_cachePolicyCheckbox; +} + +@property(nonatomic) NSButton *cachePolicyCheckbox; // @synthesize cachePolicyCheckbox=_cachePolicyCheckbox; +- (void)cachePolicyChanged:(id)arg1; +- (void)didDisplayTabViewItem:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (void)setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (void)setupUIFromValuesInAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/IMAPAccountSpecialMailboxes.h b/MailHeaders/Mavericks_10.9.5/MailUI/IMAPAccountSpecialMailboxes.h new file mode 100644 index 00000000..e5b35a6b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/IMAPAccountSpecialMailboxes.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "RemoteStoreAccountSpecialMailboxes.h" + +@class NSButton; + +@interface IMAPAccountSpecialMailboxes : RemoteStoreAccountSpecialMailboxes +{ + NSButton *_trashCheckbox; + BOOL _moveDeletedMessagesToTrash; +} + +@property(nonatomic) BOOL moveDeletedMessagesToTrash; // @synthesize moveDeletedMessagesToTrash=_moveDeletedMessagesToTrash; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (BOOL)setupAccountFromValuesInUI:(id)arg1; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/IMAPMailboxes.h b/MailHeaders/Mavericks_10.9.5/MailUI/IMAPMailboxes.h new file mode 100644 index 00000000..b6459569 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/IMAPMailboxes.h @@ -0,0 +1,78 @@ +/* + * 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 "AccountInfoTabOwner.h" +#import "MCActivityTarget.h" +#import "NSOutlineViewDataSource.h" +#import "NSOutlineViewDelegate.h" + +@class IMAPGateway, MCActivityMonitor, MCInvocationQueue, MFIMAPAccount, NSArray, NSButton, NSImageView, NSOutlineView, NSPredicate, NSProgressIndicator, NSSearchField, NSTextField, NSView, NSWindow; + +@interface IMAPMailboxes : NSObject +{ + NSView *_mailboxesView; + NSSearchField *_searchField; + NSOutlineView *_mailboxesOutline; + NSButton *_subscribeButton; + NSButton *_unsubscribeButton; + NSProgressIndicator *_fetchProgressIndicator; + NSTextField *_fetchStatusField; + NSImageView *_statusImageView; + MFIMAPAccount *_account; + IMAPGateway *_gateway; + NSPredicate *_predicate; + NSArray *_mailboxes; + NSArray *_filteredMailboxes; + MCActivityMonitor *_mailboxListMonitor; + MCInvocationQueue *_subscribeQueue; + NSWindow *_window; +} + +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +- (void)accountInfoWillShowView:(id)arg1; +- (void)accountInfoWillHideView:(id)arg1; +- (void)outlineView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 byItem:(id)arg4; +- (BOOL)outlineView:(id)arg1 shouldSelectItem:(id)arg2; +- (void)outlineView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (id)outlineView:(id)arg1 objectValueForTableColumn:(id)arg2 byItem:(id)arg3; +- (long long)outlineView:(id)arg1 numberOfChildrenOfItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 isItemExpandable:(id)arg2; +- (id)outlineView:(id)arg1 child:(long long)arg2 ofItem:(id)arg3; +- (void)_handleError:(id)arg1 settingSubscribedState:(id)arg2 forMailboxPath:(id)arg3 account:(id)arg4; +- (void)_setSubscribedState:(BOOL)arg1 forMailboxPath:(id)arg2 parentUid:(id)arg3; +- (void)_reallySetSubscribedState:(id)arg1 parentUid:(id)arg2 account:(id)arg3 forMailboxPath:(id)arg4; +- (void)_reallySetSubscribedState:(BOOL)arg1 forMailboxPath:(id)arg2 parentUid:(id)arg3 account:(id)arg4 refreshListing:(BOOL)arg5; +- (void)_updateEntryTreeForChangedEntry:(id)arg1 oldValue:(BOOL)arg2; +- (id)_mailboxEntryForMailbox:(id)arg1; +- (id)_mailboxEntryForPath:(id)arg1; +- (id)predicate; +- (void)_clearFilteredMailboxes:(id)arg1; +- (void)_clearFilteredMailboxes; +- (void)filterMailboxList:(id)arg1; +- (void)unsubscribeButtonClicked:(id)arg1; +- (void)subscribeButtonClicked:(id)arg1; +- (void)_handleSubscriptionRequest:(BOOL)arg1; +- (void)_handleSubscriptionRequest:(BOOL)arg1 forItem:(id)arg2 refreshSet:(id)arg3 recursive:(BOOL)arg4; +- (void)_reallyStopSubscriptionRequest:(id)arg1 refreshList:(id)arg2; +- (void)_stopSubscriptionRequest:(id)arg1; +- (void)_reallyStartSubscriptionRequest:(id)arg1; +- (void)_startSubscriptionRequest; +- (id)view; +- (void)_fetchMailboxListingForAccount:(id)arg1; +- (id)_recursivelyCreateMailboxEntriesForList:(id)arg1 subscribedList:(id)arg2 inLocalPath:(id)arg3 remotePath:(id)arg4 forAccount:(id)arg5; +- (void)_mailboxFetchCompleted:(id)arg1 forAccount:(id)arg2; +- (void)setupUIWithAccount:(id)arg1; +- (void)_setupNotifications; +- (void)setUIEnabled:(BOOL)arg1; +- (void)_updateUIForOnlineState:(id)arg1; +- (id)_alertIcon; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/IMAPQuota.h b/MailHeaders/Mavericks_10.9.5/MailUI/IMAPQuota.h new file mode 100644 index 00000000..9502e5a5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/IMAPQuota.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "RemoteStoreQuota.h" + +@class NSPopUpButton, NSTextField, NSView, QuotaBar; + +@interface IMAPQuota : RemoteStoreQuota +{ + NSPopUpButton *_quotaPopup; + NSTextField *_quotaPopupLabel; + NSView *_quotaContainerView; + QuotaBar *_quotaBar; + NSTextField *_capacityField; + NSTextField *_statusField; + double _spaceUnderQuotaPopup; +} + +- (id)_stringForSize:(unsigned long long)arg1 andCount:(long long)arg2 isCapacity:(BOOL)arg3; +- (void)_updateUIForQuotaName:(id)arg1 updateTable:(BOOL)arg2; +- (void)engineUpdated:(id)arg1; +- (void)engineDidFinish; +- (void)_updateQuotaPopupWithQuotaNames:(id)arg1; +- (void)_engineStatusChanged:(id)arg1; +- (void)_updateStatusField; +- (void)_updateQuotaBarWithSize:(unsigned long long)arg1 maxSize:(unsigned long long)arg2 count:(long long)arg3 maxCount:(long long)arg4; +- (id)_selectedQuotaName; +- (void)quotaPopupChanged:(id)arg1; +- (BOOL)tableShouldIncludeMailbox:(id)arg1; +- (Class)engineClass; +- (void)dealloc; +- (void)awakeFromNib; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/IMAPUserAgent-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/IMAPUserAgent-Protocol.h new file mode 100644 index 00000000..25a9dc70 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/IMAPUserAgent-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol IMAPUserAgent +- (BOOL)doParentalControlProcessingForMessage:(id)arg1; +- (BOOL)addInvitationsToCalendarAutomatically; +- (void)addInvitationsToCalendarFromMessages:(id)arg1; +- (id)headersRequiredForParentalControl; +- (id)headersRequiredForRouting; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/IOErrorWindowDelegate.h b/MailHeaders/Mavericks_10.9.5/MailUI/IOErrorWindowDelegate.h new file mode 100644 index 00000000..f565eb09 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/IOErrorWindowDelegate.h @@ -0,0 +1,25 @@ +/* + * 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 "DynamicErrorWindowDelegate.h" + +@interface IOErrorWindowDelegate : NSObject +{ +} + +- (void)rightActionSelectedWithDiagnosis:(long long)arg1; +- (void)leftActionSelectedWithDiagnosis:(long long)arg1; +- (unsigned long long)helpTopicForDiagnosis:(long long)arg1; +- (id)rightButtonTextForErrorDiagnosis:(long long)arg1; +- (id)leftButtonTextForErrorDiagnosis:(long long)arg1; +- (id)errorDescriptionForErrorDiagnosis:(long long)arg1; +- (id)errorMessageForErrorDiagnosis:(long long)arg1; +- (BOOL)displayIndeterminateProgress; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ImageResizer.h b/MailHeaders/Mavericks_10.9.5/MailUI/ImageResizer.h new file mode 100644 index 00000000..ffb13c27 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ImageResizer.h @@ -0,0 +1,56 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityMonitor, NSData, NSString; + +@interface ImageResizer : NSObject +{ + NSData *_sourceData; + NSString *_sourceFilename; + unsigned int _sourceFileType; + id _representedObject; + struct CGRect _maxBounds; + unsigned long long _maxFileBytes; + struct CGSize _sourceSize; + struct CGSize _destSize; + MCActivityMonitor *_monitor; + NSData *_resultData; + NSString *_resultUTI; + id _delegate; +} + ++ (struct CGSize)scaleSize:(struct CGSize)arg1 toContainSize:(struct CGSize)arg2; ++ (struct CGSize)scaleSize:(struct CGSize)arg1 toFitSize:(struct CGSize)arg2; ++ (BOOL)isFileResizableImage:(id)arg1; ++ (void)initialize; +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; +@property(retain, nonatomic) NSString *resultUTI; // @synthesize resultUTI=_resultUTI; +@property(retain, nonatomic) NSData *resultImageData; // @synthesize resultImageData=_resultData; +- (void)_resizeImage; +- (void)_didFinishResizingWithResultCode:(long long)arg1; +- (struct CGSize)resultImageSize; +- (unsigned int)resultFileType; +- (id)resultFileExtension; +- (void)cancel; +- (BOOL)isResizing; +- (void)resizeImage; +- (id)sourceFilename; +- (void)setMaxFileBytes:(unsigned long long)arg1; +- (unsigned long long)maxFileBytes; +- (void)setMaxImageSize:(struct CGSize)arg1; +- (struct CGSize)maxImageSize; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +- (void)dealloc; +- (id)init; +- (id)initWithImageData:(id)arg1 sourceFilename:(id)arg2 sourceFileType:(unsigned int)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ImageResizerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/ImageResizerDelegate-Protocol.h new file mode 100644 index 00000000..5aa2937f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ImageResizerDelegate-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol ImageResizerDelegate +- (void)imageResizer:(id)arg1 didFinishResizingWithResultCode:(long long)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ImportAssistant.h b/MailHeaders/Mavericks_10.9.5/MailUI/ImportAssistant.h new file mode 100644 index 00000000..32a79254 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ImportAssistant.h @@ -0,0 +1,81 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "Assistant.h" + +@class EmailImporter, NSArray, NSDictionary, NSMatrix, NSMutableArray, NSProgressIndicator, NSTabView, NSTableView, NSTextField, NSView; + +@interface ImportAssistant : Assistant +{ + NSTabView *_tabView; + NSMatrix *_importClients; + NSTextField *_explanatoryTextInImportClientTab; + NSProgressIndicator *_progressWheelInImportClientTab; + NSTextField *_statusLineInImportClientTab; + NSMatrix *_importTypes; + NSTextField *_explanatoryText; + NSProgressIndicator *_progressWheel; + NSTextField *_statusLine; + NSTableView *_tableView; + NSProgressIndicator *_progressBar; + NSTextField *_textFieldAbove; + NSTextField *_textFieldBelow; + NSTextField *_importFinished; + NSArray *_clients; + NSDictionary *_client; + int _currentTab; + EmailImporter *_importer; + NSMutableArray *_importers; + NSMutableArray *_startingImporters; + double _currentTime; + double _referenceTime; + NSView *_topView; + id _activityToken; +} + +@property(retain, nonatomic) id activityToken; // @synthesize activityToken=_activityToken; +@property(retain, nonatomic) NSView *topView; // @synthesize topView=_topView; +- (void)_endUserInitiatedActivity; +- (void)_beginUserInitiatedActivity; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (BOOL)shouldUpdateTextFields; +- (void)updateProgressIndicatorByValue:(double)arg1; +- (void)updateProgressIndicatorWithItem:(id)arg1; +- (void)updateProgressIndicatorWithFraction:(double)arg1 ofItem:(id)arg2; +- (void)_setProgressStartOnItem:(id)arg1; +- (void)_updateProgressIndicatorToValue:(id)arg1; +- (void)_updateProgressIndicatorByValue:(id)arg1; +- (void)initializeProgressIndicator; +- (void)reloadTableView; +- (void)setExplanatoryText:(id)arg1; +- (void)setTextFieldBelow:(id)arg1; +- (void)setTextFieldAbove:(id)arg1; +- (void)updateTextField:(id)arg1 withValue:(id)arg2; +- (void)clearStatusLine; +- (void)setStatusLine:(id)arg1; +- (void)askForMailboxLocationAllowedFileTypes:(id)arg1 allowsMultipleSelection:(BOOL)arg2; +- (void)askForMailboxLocation; +- (void)importFinished; +- (void)moveToTab:(int)arg1; +- (void)presentAlertSheetWithString:(id)arg1; +- (void)runImporter; +- (void)createNewImporter; +- (void)importClientSelected:(id)arg1; +- (void)goBackward; +- (void)goForward; +- (void)stop; +- (BOOL)shouldStop; +- (void)start; +- (id)windowTitle; +- (void)dealloc; +- (id)initWithAssistentManager:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ImportItem.h b/MailHeaders/Mavericks_10.9.5/MailUI/ImportItem.h new file mode 100644 index 00000000..63d222a6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ImportItem.h @@ -0,0 +1,48 @@ +/* + * 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" + +@class NSString; + +@interface ImportItem : NSObject +{ + NSString *_fullPath; + NSString *_relativePath; + long long _itemCount; + id _identifier; + long long _subfolderCount; + id _importFields; + BOOL _isEnabled; + NSString *_displayName; + double _progressValue; + double _progressStart; +} + +- (void)setImportFields:(id)arg1; +- (id)importFields; +- (void)setSubfolderCount:(long long)arg1; +- (long long)subfolderCount; +- (void)setIdentifier:(id)arg1; +- (id)identifier; +- (void)setItemCount:(long long)arg1; +- (long long)itemCount; +- (void)setRelativePath:(id)arg1; +- (id)relativePath; +- (void)setFullPath:(id)arg1; +- (id)fullPath; +- (void)setProgressStart:(double)arg1; +- (double)progressStart; +- (void)setProgressValue:(double)arg1; +- (double)progressValue; +- (void)setDisplayName:(id)arg1; +- (id)displayName; +- (void)setIsEnabled:(BOOL)arg1; +- (BOOL)isEnabled; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/Importer.h b/MailHeaders/Mavericks_10.9.5/MailUI/Importer.h new file mode 100644 index 00000000..bcd31af3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/Importer.h @@ -0,0 +1,45 @@ +/* + * 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" + +@class ImportAssistant, NSArray, NSMutableArray, NSString; + +@interface Importer : NSObject +{ + ImportAssistant *_delegate; + NSMutableArray *_importArray; + NSString *_applicationString; + NSArray *_importFields; + BOOL _importCanceled; +} + ++ (id)name; ++ (id)explanatoryText; +- (void)dealloc; +- (void)importFinished; +- (void)performImport; +- (id)prepareForImport; +- (void)cleanup; +- (id)creatorCode; +- (id)importFinishedText; +- (id)statusLine; +- (void)sortArray:(id)arg1; +- (void)setImportFields:(id)arg1; +- (id)importFields; +- (void)setImportCanceled:(BOOL)arg1; +- (BOOL)importCanceled; +- (unsigned long long)countOfEnabledItems; +- (void)addItemToImportArray:(id)arg1; +- (void)clearImportArray; +- (id)importArray; +- (id)delegate; +- (void)setDelegate:(id)arg1; +- (id)name; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/InvitationAttachmentOpener.h b/MailHeaders/Mavericks_10.9.5/MailUI/InvitationAttachmentOpener.h new file mode 100644 index 00000000..4be993b1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/InvitationAttachmentOpener.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "TemporaryAttachmentOpener.h" + +@interface InvitationAttachmentOpener : TemporaryAttachmentOpener +{ + BOOL _openImmediately; +} + +- (void)beginSaveOfAttachments:(id)arg1 toTemporaryFolderWithName:(id)arg2 taskName:(id)arg3; +- (void)_saveAttachmentsToICalCaches:(id)arg1; +- (id)initWithAttachments:(id)arg1 openImmediately:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/JunkMailBannerViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/JunkMailBannerViewController.h new file mode 100644 index 00000000..b58b96b7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/JunkMailBannerViewController.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "LoadImagesBannerViewController.h" + +@class NSTextField; + +@interface JunkMailBannerViewController : LoadImagesBannerViewController +{ + NSTextField *_messageField; +} + +@property(nonatomic) NSTextField *messageField; // @synthesize messageField=_messageField; +- (void)markNotJunk:(id)arg1; +- (void)updateBannerContents; +- (void)updateWantsDisplay; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setRepresentedObject:(id)arg1; +- (BOOL)shouldDisplayToLoadImages; +- (CDStruct_3c058996)iconAlignmentRectInsets; +- (id)backgroundColor; +- (void)dealloc; +- (id)nibName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/JunkPreferences.h b/MailHeaders/Mavericks_10.9.5/MailUI/JunkPreferences.h new file mode 100644 index 00000000..c9ad0c79 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/JunkPreferences.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +@class NSButton, NSColor, NSMatrix; + +@interface JunkPreferences : NSPreferencesModule +{ + NSButton *_advancedButton; + NSMatrix *_junkMailMode; + NSButton *_junkMailOnOffSwitch; + NSMatrix *_junkMailWhitelist; + long long _junkMailBehavior; +} + ++ (id)keyPathsForValuesAffectingIsAdvancedEnabled; ++ (id)keyPathsForValuesAffectingIsEnabled; ++ (id)keyPathsForValuesAffectingLabelColor; +- (void)showCustomJunkMailSettings:(id)arg1; +- (void)resetJunkMailMap:(id)arg1; +- (void)changeJunkMailBehavior:(id)arg1; +@property(readonly) BOOL isAdvancedEnabled; +@property(readonly) BOOL isEnabled; +@property long long junkMailBehavior; +- (void)whitelistChanged:(id)arg1; +- (void)junkMailToggled:(id)arg1; +- (void)initializeFromDefaults; +@property(readonly) NSColor *labelColor; +- (id)imageForPreferenceNamed:(id)arg1; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (void)_messageRuleChanged:(id)arg1; +- (BOOL)isResizable; +- (void)moduleWasInstalled; +- (void)moduleWillBeRemoved; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/LDAPServer.h b/MailHeaders/Mavericks_10.9.5/MailUI/LDAPServer.h new file mode 100644 index 00000000..aaaad082 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/LDAPServer.h @@ -0,0 +1,28 @@ +/* + * 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" + +@interface LDAPServer : NSObject +{ +} + +- (void)setScope:(unsigned int)arg1; +- (unsigned int)scope; +- (void)setPort:(id)arg1; +- (id)port; +- (void)setEnabled:(BOOL)arg1; +- (BOOL)enabled; +- (void)setEntryName:(id)arg1; +- (id)entryName; +- (void)setSearchBase:(id)arg1; +- (id)searchBase; +- (void)setServerAddress:(id)arg1; +- (id)serverAddress; +- (id)objectSpecifier; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/LazyMenuSegmentedCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/LazyMenuSegmentedCell.h new file mode 100644 index 00000000..270ba554 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/LazyMenuSegmentedCell.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSegmentedCell.h" + +@class NSMutableDictionary; + +@interface LazyMenuSegmentedCell : NSSegmentedCell +{ + id _lazyMenuBlock; + NSMutableDictionary *_loadedMenus; +} + +- (id)menuForSegment:(long long)arg1; +- (void)setLazyMenuBlock:(id)arg1; +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/LazySubmenuMenuItem.h b/MailHeaders/Mavericks_10.9.5/MailUI/LazySubmenuMenuItem.h new file mode 100644 index 00000000..f9865bf6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/LazySubmenuMenuItem.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMenuItem.h" + +@class NSMenu; + +@interface LazySubmenuMenuItem : NSMenuItem +{ + id _lazySubmenuBlock; + NSMenu *_loadedSubmenu; + BOOL _enableLoadedSubmenu; +} + +- (void)setEnabled:(BOOL)arg1; +- (BOOL)isEnabled; +- (id)submenu; +- (BOOL)hasSubmenu; +- (void)setLazySubmenuBlock:(id)arg1; +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/LibraryImportAssistant.h b/MailHeaders/Mavericks_10.9.5/MailUI/LibraryImportAssistant.h new file mode 100644 index 00000000..53c34afb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/LibraryImportAssistant.h @@ -0,0 +1,59 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "Assistant.h" + +#import "MCActivityTarget.h" + +@class MCActivityMonitor, NSButton, NSProgressIndicator, NSTextField, NSTimer, NSView; + +@interface LibraryImportAssistant : Assistant +{ + MCActivityMonitor *_activityMonitor; + NSTimer *_updateTimer; + long long _state; + BOOL _importWasSuccessful; + BOOL _accountsAreNewlyCreated; + NSView *_introView; + NSView *_patienceView; + NSView *_doneView; + NSView *_errorView; + NSView *_recoveryIntroView; + NSTextField *_mailboxStatusField; + NSTextField *_messageStatusField; + NSTextField *_timeRemainingField; + NSProgressIndicator *_progressBar; + NSButton *_showNewFeaturesButton; + NSTextField *_theNewFeaturesTextField; +} + +@property(nonatomic) NSTextField *theNewFeaturesTextField; // @synthesize theNewFeaturesTextField=_theNewFeaturesTextField; +@property(nonatomic) NSButton *showNewFeaturesButton; // @synthesize showNewFeaturesButton=_showNewFeaturesButton; +@property(nonatomic) NSProgressIndicator *progressBar; // @synthesize progressBar=_progressBar; +@property(nonatomic) NSTextField *timeRemainingField; // @synthesize timeRemainingField=_timeRemainingField; +@property(nonatomic) NSTextField *messageStatusField; // @synthesize messageStatusField=_messageStatusField; +@property(nonatomic) NSTextField *mailboxStatusField; // @synthesize mailboxStatusField=_mailboxStatusField; +@property(retain, nonatomic) NSView *recoveryIntroView; // @synthesize recoveryIntroView=_recoveryIntroView; +@property(retain, nonatomic) NSView *errorView; // @synthesize errorView=_errorView; +@property(retain, nonatomic) NSView *doneView; // @synthesize doneView=_doneView; +@property(retain, nonatomic) NSView *patienceView; // @synthesize patienceView=_patienceView; +@property(retain, nonatomic) NSView *introView; // @synthesize introView=_introView; +- (void)showNewFeatures:(id)arg1; +- (void)synchronouslyDoTheImport; +- (id)formattedTimeForSeconds:(double)arg1; +- (double)runningAverageWithNewValue:(double)arg1; +- (void)updateProgress:(id)arg1; +- (id)windowTitle; +- (void)goForward; +- (BOOL)_checkAccountDirectoryPermissions; +- (void)stop; +- (void)start; +- (void)setAccountsAreNewlyCreated:(BOOL)arg1; +- (void)dealloc; +- (id)initWithAssistentManager:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/LibraryUpgradeAssistant.h b/MailHeaders/Mavericks_10.9.5/MailUI/LibraryUpgradeAssistant.h new file mode 100644 index 00000000..c373a528 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/LibraryUpgradeAssistant.h @@ -0,0 +1,61 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "Assistant.h" + +#import "MFLibraryUpgraderDelegate.h" +#import "NSOpenSavePanelDelegate.h" + +@class MFLibraryUpgrader, NSButton, NSTextField, NSView; + +@interface LibraryUpgradeAssistant : Assistant +{ + MFLibraryUpgrader *_libraryUpgrader; + NSView *_currentView; + int _state; + BOOL _accountsRequireStoragePolicyChange; + NSView *_accountsRequireCachePolicyChangeView; + NSView *_unresolvedAccountsView; + NSView *_complexMigrationView; + NSView *_patienceView; + NSView *_epilogueView; + NSView *_errorView; + NSButton *_showNewFeaturesButton; + NSTextField *_migrationDestinationTextField; + NSTextField *_errorText; +} + +@property(nonatomic) BOOL accountsRequireStoragePolicyChange; // @synthesize accountsRequireStoragePolicyChange=_accountsRequireStoragePolicyChange; +@property(nonatomic) NSTextField *errorText; // @synthesize errorText=_errorText; +@property(nonatomic) NSTextField *migrationDestinationTextField; // @synthesize migrationDestinationTextField=_migrationDestinationTextField; +@property(nonatomic) NSButton *showNewFeaturesButton; // @synthesize showNewFeaturesButton=_showNewFeaturesButton; +@property(retain, nonatomic) NSView *errorView; // @synthesize errorView=_errorView; +@property(retain, nonatomic) NSView *epilogueView; // @synthesize epilogueView=_epilogueView; +@property(retain, nonatomic) NSView *patienceView; // @synthesize patienceView=_patienceView; +@property(retain, nonatomic) NSView *complexMigrationView; // @synthesize complexMigrationView=_complexMigrationView; +@property(retain, nonatomic) NSView *unresolvedAccountsView; // @synthesize unresolvedAccountsView=_unresolvedAccountsView; +@property(retain, nonatomic) NSView *accountsRequireCachePolicyChangeView; // @synthesize accountsRequireCachePolicyChangeView=_accountsRequireCachePolicyChangeView; +- (void)chooseMigrationDestination:(id)arg1; +- (BOOL)panel:(id)arg1 validateURL:(id)arg2 error:(id *)arg3; +- (void)showNewFeatures:(id)arg1; +- (void)upgrader:(id)arg1 didFailWithError:(id)arg2; +- (void)upgraderDidFinish:(id)arg1; +- (void)requestUserAttentionWithRequestType:(unsigned long long)arg1; +- (void)goForward; +- (void)stop; +- (void)start; +- (void)setCurrentView:(id)arg1; +- (id)currentView; +- (void)setState:(int)arg1; +- (int)state; +- (id)windowTitle; +- (void)setLibraryUpgrader:(id)arg1; +- (id)libraryUpgrader; +- (void)dealloc; +- (id)initWithAssistentManager:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/LoadImagesBannerViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/LoadImagesBannerViewController.h new file mode 100644 index 00000000..49048c82 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/LoadImagesBannerViewController.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "BannerViewController.h" + +@class BannerImageView, NSButton, NSLayoutConstraint; + +@interface LoadImagesBannerViewController : BannerViewController +{ + NSButton *_loadImagesButton; + NSLayoutConstraint *_messageFieldToLoadImagesButtonHorizontalSpacing; + BannerImageView *_icon; +} + +@property(nonatomic) BannerImageView *icon; // @synthesize icon=_icon; +@property(nonatomic) NSLayoutConstraint *messageFieldToLoadImagesButtonHorizontalSpacing; // @synthesize messageFieldToLoadImagesButtonHorizontalSpacing=_messageFieldToLoadImagesButtonHorizontalSpacing; +@property(nonatomic) NSButton *loadImagesButton; // @synthesize loadImagesButton=_loadImagesButton; +- (void)loadImages:(id)arg1; +- (void)updateWantsDisplay; +- (void)updateBannerContents; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setRepresentedObject:(id)arg1; +- (void)awakeFromNib; +@property(readonly, nonatomic) BOOL shouldDisplayToLoadImages; +@property(readonly, nonatomic) CDStruct_3c058996 iconAlignmentRectInsets; +- (id)backgroundColor; +- (void)dealloc; +- (id)nibName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/LoadingOverlay.h b/MailHeaders/Mavericks_10.9.5/MailUI/LoadingOverlay.h new file mode 100644 index 00000000..afb25419 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/LoadingOverlay.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class MCActivityMonitor, NSProgressIndicator, NSString, NSTextField, NSView; + +@interface LoadingOverlay : NSObject +{ + MCActivityMonitor *_monitor; + NSView *_overlayView; + NSProgressIndicator *_progressIndicator; + NSTextField *_statusMessageField; + id _modalDelegate; +} + +@property id modalDelegate; // @synthesize modalDelegate=_modalDelegate; +@property(nonatomic) NSTextField *statusMessageField; // @synthesize statusMessageField=_statusMessageField; +@property(nonatomic) NSProgressIndicator *progressIndicator; // @synthesize progressIndicator=_progressIndicator; +@property(retain, nonatomic) NSView *overlayView; // @synthesize overlayView=_overlayView; +- (void)stop; +- (void)_activityEnded:(id)arg1; +@property(retain) NSString *statusMessage; +@property(retain, nonatomic) MCActivityMonitor *activityMonitor; +- (void)displayInSuperviewAfterDelay:(id)arg1; +- (void)displayInSuperview:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithModalDelegate:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MCActivityTarget-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MCActivityTarget-Protocol.h new file mode 100644 index 00000000..e51c89fb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MCActivityTarget-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol MCActivityTarget + +@optional +- (BOOL)isSmartMailbox; +- (id)displayName; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MCConnectionLogging-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MCConnectionLogging-Protocol.h new file mode 100644 index 00000000..04843f10 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MCConnectionLogging-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol MCConnectionLogging +- (void)flushLog; +- (void)logBytes:(void *)arg1 length:(unsigned long long)arg2; +- (void)logData:(id)arg1 range:(struct _NSRange)arg2; +- (void)logData:(id)arg1; +- (void)logString:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MCMessage-MailViewerAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/MCMessage-MailViewerAdditions.h new file mode 100644 index 00000000..a7e3127d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MCMessage-MailViewerAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@interface MCMessage (MailViewerAdditions) +- (void)handleBounceMessage:(id)arg1; +- (id)handleRedirectMessage:(id)arg1; +- (id)handleForwardMessage:(id)arg1; +- (id)handleReplyToMessage:(id)arg1; +- (void)handleOpenAppleEvent:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MCMessageDataSource-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MCMessageDataSource-Protocol.h new file mode 100644 index 00000000..64603fc5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MCMessageDataSource-Protocol.h @@ -0,0 +1,56 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCActivityTarget.h" +#import "NSCopying.h" + +@protocol MCMessageDataSource +@property(readonly) BOOL isReadOnly; +- (id)uniquedString:(id)arg1; +- (void)flushAllCaches; +- (void)invalidateMessage:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)routeMessages:(id)arg1; +- (void)doCompact; +- (BOOL)canCompact; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)undeleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (id)mailbox; +- (id)account; + +@optional +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MCUserAgent-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MCUserAgent-Protocol.h new file mode 100644 index 00000000..7dcfba74 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MCUserAgent-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol MCUserAgent +- (id)localAttachmentFilesDirectory; +- (id)junkStringFromHTMLData:(id)arg1 textEncodingName:(id)arg2 context:(id)arg3; +- (long long)junkMailBehavior; +- (void)setIsInTimeMachineMode:(BOOL)arg1; +- (BOOL)isInTimeMachineMode; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MFAccount-MailUIExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/MFAccount-MailUIExtras.h new file mode 100644 index 00000000..55e6dfe9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MFAccount-MailUIExtras.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MFAccount.h" + +@interface MFAccount (MailUIExtras) ++ (id)mailAccountOfClass:(Class)arg1 withHostname:(id)arg2 username:(id)arg3; ++ (id)mailAccountWithName:(id)arg1; ++ (BOOL)exchangeAccountExists; ++ (BOOL)_existsAccountOfClass:(Class)arg1; +- (id)authSchemeBindingProxies; +- (void)configureAuthenticationPopUp:(id)arg1 withAuthSchemes:(id)arg2; +- (void)configureAuthenticationPopUp:(id)arg1; +- (void)_addAuthScheme:(id)arg1 toPopUp:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MFAddProgressMonitor-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MFAddProgressMonitor-Protocol.h new file mode 100644 index 00000000..f1d49708 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MFAddProgressMonitor-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol MFAddProgressMonitor +- (void)setFractionDone:(double)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MFDeliveryAccount-MailUIExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/MFDeliveryAccount-MailUIExtras.h new file mode 100644 index 00000000..7da3dcc2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MFDeliveryAccount-MailUIExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MFDeliveryAccount.h" + +@interface MFDeliveryAccount (MailUIExtras) +- (id)remoteMailAccountsEmployedByString; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MFEWSAccount-MailUIExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/MFEWSAccount-MailUIExtras.h new file mode 100644 index 00000000..50c474c3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MFEWSAccount-MailUIExtras.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MFEWSAccount.h" + +@interface MFEWSAccount (MailUIExtras) +- (void)configureAuthenticationPopUp:(id)arg1 withAuthSchemes:(id)arg2; +- (void)configureAuthenticationPopUp:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MFLibraryUpgraderDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MFLibraryUpgraderDelegate-Protocol.h new file mode 100644 index 00000000..6dbf428d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MFLibraryUpgraderDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MFLibraryUpgraderDelegate +- (void)upgrader:(id)arg1 didFailWithError:(id)arg2; +- (void)upgraderDidFinish:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MFMailbox-MessageListAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/MFMailbox-MessageListAdditions.h new file mode 100644 index 00000000..fe70390a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MFMailbox-MessageListAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MFMailbox.h" + +@interface MFMailbox (MessageListAdditions) +- (BOOL)smartMailboxUsesLastViewedDate; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MFMessageSortContext-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MFMessageSortContext-Protocol.h new file mode 100644 index 00000000..90e3dd18 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MFMessageSortContext-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol MFMessageSortContext +- (long long)compareByNumberMessage:(id)arg1 andMessage:(id)arg2 sortedAscending:(BOOL)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MFMessageSortingValueDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MFMessageSortingValueDelegate-Protocol.h new file mode 100644 index 00000000..0e01a096 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MFMessageSortingValueDelegate-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MFMessageSortingValueDelegate +- (unsigned int)sortingMessageFlagsForMessage:(id)arg1; +- (unsigned long long)sortingSizeForMessage:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MFUIMailbox-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MFUIMailbox-Protocol.h new file mode 100644 index 00000000..2fb7c4ad --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MFUIMailbox-Protocol.h @@ -0,0 +1,26 @@ +/* + * 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" + +@protocol MFUIMailbox +@property int type; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (BOOL)isPlaceholder; +- (id)accountURLString; +- (id)account; +- (BOOL)isSmartMailbox; +- (BOOL)isStore; +- (id)children; +- (BOOL)hasChildren; +- (unsigned long long)numberOfChildren; +- (unsigned long long)displayCount; +- (BOOL)isContainer; +- (id)extendedDisplayName; +- (id)displayName; +- (id)persistentIdentifier; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MFUserAgent-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MFUserAgent-Protocol.h new file mode 100644 index 00000000..9da326fc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MFUserAgent-Protocol.h @@ -0,0 +1,24 @@ +/* + * 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" + +@protocol MFUserAgent +- (void)informUserOfBusyDatabaseWithRecoverer:(id)arg1 diagnosis:(long long *)arg2; +- (void)informUserOfIOErrorWithStateIn:(long long *)arg1; +- (BOOL)openTemporaryAttachments:(id)arg1 applicationBundle:(id)arg2; +- (void)relaunchAndQuitWithAdditionalArguments:(id)arg1; +- (void)relaunchAndQuit; +- (BOOL)isTerminating; +- (void)storeBeingInvalidated:(id)arg1; +- (long long)queryUserForBigMessageAction:(id)arg1; +- (long long)runAlertPanelWithTitle:(id)arg1 firstButtonTitle:(id)arg2 secondButtonTitle:(id)arg3 thirdButtonTitle:(id)arg4 message:(id)arg5; +- (BOOL)queryUserWithMessageText:(id)arg1 informativeText:(id)arg2 defaultButton:(id)arg3 alternateButton:(id)arg4; +- (void)informUserOfError:(id)arg1; +- (void)resetSuppressedAccount:(id)arg1; +- (BOOL)promptForPassword:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MFWebMessageDocument-Attachments.h b/MailHeaders/Mavericks_10.9.5/MailUI/MFWebMessageDocument-Attachments.h new file mode 100644 index 00000000..a1642e5e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MFWebMessageDocument-Attachments.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MFWebMessageDocument.h" + +@interface MFWebMessageDocument (Attachments) +- (void)addAttachmentsFromArchive:(id)arg1 attachmentDelegate:(id)arg2; +- (void)addAttachmentsFromResource:(id)arg1 attachmentDelegate:(id)arg2; +- (id)mimeBodyForAttachmentWithURL:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMBufferedController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMBufferedController.h new file mode 100644 index 00000000..cc12ce94 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMBufferedController.h @@ -0,0 +1,36 @@ +/* + * 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 "MTMMailboxControllerProtocol.h" + +@class MTMMailbox, NSDictionary, NSMutableDictionary, NSURL; + +@interface MTMBufferedController : NSObject +{ + NSDictionary *_tableOfContents; + NSMutableDictionary *_accounts; + NSDictionary *_preferences; + MTMMailbox *_rootMailbox; + NSURL *_mailLibraryURL; +} + +@property(readonly) NSURL *mailLibraryURL; // @synthesize mailLibraryURL=_mailLibraryURL; +- (void)tearDown; +- (id)revisionIDForURL:(id)arg1; +- (id)accountForAccountID:(id)arg1; +- (id)messageWithID:(id)arg1; +- (BOOL)_loadTableOfContentsIfNeeded; +- (void)mailboxListWasUpdated:(id)arg1; +- (void)mailboxListWillBeUpdated:(id)arg1; +@property(readonly) NSURL *tocURL; +- (void)loadPreferences:(id *)arg1 accounts:(id *)arg2 toc:(id *)arg3 rootMailbox:(id *)arg4 forLibraryURL:(id)arg5; +- (void)dealloc; +- (id)initWithMailLibraryURL:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMBytesFormatter.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMBytesFormatter.h new file mode 100644 index 00000000..87e7f604 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMBytesFormatter.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFormatter.h" + +@interface MTMBytesFormatter : NSFormatter +{ +} + +- (id)stringForObjectValue:(id)arg1; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMDiskMessage.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMDiskMessage.h new file mode 100644 index 00000000..d73b1097 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMDiskMessage.h @@ -0,0 +1,46 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMMessage.h" + +@class NSDate, NSString; + +@interface MTMDiskMessage : MTMMessage +{ + id _identifier; + NSString *_path; + NSString *_subject; + NSDate *_sentDate; + NSDate *_receivedDate; + NSDate *_lastViewedDate; + NSString *_author; + NSString *_to; + unsigned long long _messageSize; + unsigned long long _messageFlags; + unsigned long long _readFlags; + BOOL _hasCachedChange; + BOOL _cachedChange; +} + +- (BOOL)messageHasChangedFromSnapshot:(id)arg1; +- (unsigned long long)readFlags; +- (unsigned long long)messageFlags; +- (unsigned long long)messageSize; +- (id)lastViewedDate; +- (id)receivedDate; +- (id)sentDate; +- (id)to; +- (id)author; +- (id)subject; +- (id)URL; +- (id)path; +- (id)identifier; +- (id)identifierForURL; +- (void)dealloc; +- (id)initWithPath:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMFakeMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMFakeMailbox.h new file mode 100644 index 00000000..762d201e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMFakeMailbox.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMMailbox.h" + +@class NSMutableArray, NSMutableIndexSet; + +@interface MTMFakeMailbox : MTMMailbox +{ + NSMutableArray *_fakeMessages; + NSMutableIndexSet *_fakeSelectionIndexes; +} + +- (id)selectedMessageIndexes; +- (id)messages; +- (void)dealloc; +- (id)initWithMessageDescriptions:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMFakeMessage.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMFakeMessage.h new file mode 100644 index 00000000..9abb7f0e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMFakeMessage.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMMessage.h" + +@class NSDictionary; + +@interface MTMFakeMessage : MTMMessage +{ + NSDictionary *_messageDescription; +} + +- (unsigned long long)readFlags; +- (unsigned long long)messageFlags; +- (id)valueForKey:(id)arg1; +- (void)dealloc; +- (id)initWithDescription:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMFlagsCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMFlagsCell.h new file mode 100644 index 00000000..35617d17 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMFlagsCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface MTMFlagsCell : NSTextFieldCell +{ +} + +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)imageForFlags:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMFullWindowController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMFullWindowController.h new file mode 100644 index 00000000..0cccf52d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMFullWindowController.h @@ -0,0 +1,141 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMWindowController.h" + +#import "NSOutlineViewDelegate.h" +#import "NSSplitViewDelegate.h" +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" +#import "NSWindowDelegate.h" + +@class ColorBackgroundView, MTMFakeMailbox, MTMMessageColumnController, MTMOutlineCell, MTMOutlineView, MTMScroller, MailSplitView, NSArray, NSArrayController, NSDictionary, NSIndexSet, NSMutableDictionary, NSTabView, NSTableView, NSTextFieldCell, NSTreeController, NSView, NSView, NSWindow, QLPreviewView; + +@interface MTMFullWindowController : MTMWindowController +{ + MailSplitView *_verticalSplitView; + NSView *_mailboxesView; + MTMOutlineView *_outlineView; + NSTabView *_mailboxTabView; + MailSplitView *_splitView; + ColorBackgroundView *_globalRestoreView; + NSTableView *_messagesView; + ColorBackgroundView *_messageBackgroundView; + QLPreviewView *_previewView; + MTMScroller *_messageScroller; + BOOL _messageScrollerSavedDontNotify; + MTMMessageColumnController *_columnController; + NSArray *_messageColumnOrder; + NSDictionary *_messageColumnSizes; + NSArray *_messageSortDescriptors; + NSTextFieldCell *_textCell; + MTMOutlineCell *_mailboxCell; + NSMutableDictionary *_mailboxesDict; + BOOL _shouldPreventFirstViewResize; + BOOL _messageScrollerSavedDontNotifyOnResize; + BOOL _isActivated; + NSArray *_expectedSelectedMessageIDs; + unsigned long long _isUpdatingSelectionFromBackend; + double _expectedMessageScrollerValue; + double _currentMessageScrollerValue; + NSArray *_expectedVisibleSelectedMessageIDs; + MTMFakeMailbox *_displayedMailbox; + NSWindow *_topLevelWindow; + NSView *_emptyView; + NSView *_genericView; + NSView *_loadingView; + NSArrayController *_messagesController; + NSTreeController *_mailboxesController; + NSArray *_selectedMailboxIndexPaths; + NSIndexSet *_selectedMessageIndexes; +} + ++ (id)keyPathsForValuesAffectingMailboxTargeted; ++ (id)keyPathsForValuesAffectingPlaceholderString; ++ (id)keyPathsForValuesAffectingDisplayState; ++ (Class)specialMailboxClass; +@property(retain) NSIndexSet *selectedMessageIndexes; // @synthesize selectedMessageIndexes=_selectedMessageIndexes; +@property(retain) NSArray *selectedMailboxIndexPaths; // @synthesize selectedMailboxIndexPaths=_selectedMailboxIndexPaths; +@property(retain, nonatomic) NSTreeController *mailboxesController; // @synthesize mailboxesController=_mailboxesController; +@property(retain, nonatomic) NSArrayController *messagesController; // @synthesize messagesController=_messagesController; +@property(retain, nonatomic) NSView *loadingView; // @synthesize loadingView=_loadingView; +@property(retain, nonatomic) NSView *genericView; // @synthesize genericView=_genericView; +@property(retain, nonatomic) NSView *emptyView; // @synthesize emptyView=_emptyView; +@property(retain, nonatomic) NSWindow *topLevelWindow; // @synthesize topLevelWindow=_topLevelWindow; +- (void)didChangeValueForKey:(id)arg1; +- (void)willChangeValueForKey:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (double)fadeDuration; +- (void)windowDidResize:(id)arg1; +- (struct CGSize)windowWillResize:(id)arg1 toSize:(struct CGSize)arg2; +- (double)_maxMailboxesViewWidthAllowed; +- (BOOL)splitView:(id)arg1 shouldCollapseSubview:(id)arg2 forDoubleClickOnDividerAtIndex:(long long)arg3; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (double)splitView:(id)arg1 constrainMaxCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; +- (void)tableViewColumnDidResize:(id)arg1; +- (void)tableViewColumnDidMove:(id)arg1; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)outlineViewItemDidCollapse:(id)arg1; +- (void)outlineViewItemWillCollapse:(id)arg1; +- (void)outlineViewItemDidExpand:(id)arg1; +- (void)outlineViewItemWillExpand:(id)arg1; +- (BOOL)outlineView:(id)arg1 shouldCollapseItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 isGroupItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldSelectItem:(id)arg2; +- (void)outlineView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (id)outlineView:(id)arg1 dataCellForTableColumn:(id)arg2 item:(id)arg3; +@property(retain, nonatomic) NSArray *messageSortDescriptors; +- (id)_computedMessageSortDescriptors; +@property(retain, nonatomic) NSDictionary *messageColumnSizes; +- (id)_computedMessageColumnSizes; +@property(retain, nonatomic) NSArray *messageColumnOrder; +- (id)_computedMessageColumnOrder; +- (BOOL)isTopLevelItem:(id)arg1; +- (void)configureCell:(id)arg1 forItem:(id)arg2; +- (void)mailboxListWasUpdated:(id)arg1; +- (void)mailboxListWillBeUpdated:(id)arg1; +- (void)scrollerWasMovedByUser:(id)arg1; +- (void)scrollerWillBeMovedByUser:(id)arg1; +- (void)_selectionDidChange; +- (id)urlToMessage; +- (void)setShowChangedItemsOnly:(BOOL)arg1; +- (id)restoreMessagePaths; +- (BOOL)shouldRestoreMailboxPaths; +- (id)selectedMessagePaths; +- (id)selectedMailboxPaths; +- (BOOL)mailboxTargeted; +- (id)_subPlaceholderAttributes; +- (id)_placeholderAttributes; +- (id)placeholderString; +- (void)adjustDisplayStateAfterTimeMachineStarted; +- (void)_flushMessageScrollPosition; +- (void)_updateMessageScrollPosition; +- (void)_tryToUpdateSelectedMessageIDs; +- (void)_flushExpectedMessageIDsSelection; +- (void)_tryToSelectMessages:(id)arg1 selectedMailbox:(id)arg2; +- (void)setDisplayState:(id)arg1; +- (id)displayState; +- (void)_resizeSplitViewToPercentage:(double)arg1; +- (BOOL)setupUIWithDisplayState:(id)arg1; +- (id)windowNibName; +- (void)loadWindow; +- (void)dealloc; +@property(retain) NSIndexSet *selectedMessageIndexesInDisplayedMailbox; +- (void)updateMessageListBindingsWithDisplayedMailbox:(id)arg1 scrollerDelta:(double)arg2; +@property(readonly) MTMFakeMailbox *displayedMailbox; +- (id)selectedMailbox; +- (void)deactivate; +- (void)activate; +- (void)_updatePreviewViewURLIfNecessary; +- (void)removeBindings; +- (void)setupBindings; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMIndexedMessage.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMIndexedMessage.h new file mode 100644 index 00000000..9ca35905 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMIndexedMessage.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMMessage.h" + +@class NSDictionary, NSMutableDictionary, NSString; + +@interface MTMIndexedMessage : MTMMessage +{ + NSString *_identifier; + NSDictionary *_attributes; + NSString *_realPath; + BOOL _realPathComputed; + BOOL _hasCachedChange; + BOOL _cachedChange; + NSString *_to; + unsigned long long _messageSize; + unsigned long long _messageFlags; + unsigned long long _readFlags; + NSMutableDictionary *_computedAdditionalProperties; +} + +- (void)updateAdditionalPropertiesFromComputedProperties; +- (void)computeAdditionalProperties; +- (BOOL)messageHasChangedFromSnapshot:(id)arg1; +- (unsigned long long)readFlags; +- (unsigned long long)messageFlags; +- (unsigned long long)messageSize; +- (id)to; +- (id)savedDate; +- (id)subject; +- (id)URL; +- (id)path; +- (id)identifier; +- (void)dealloc; +- (id)initWithIdentifier:(id)arg1 attributes:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMLoadingView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMLoadingView.h new file mode 100644 index 00000000..3351fe84 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMLoadingView.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSProgressIndicator; + +@interface MTMLoadingView : NSView +{ + NSProgressIndicator *_progressIndicator; +} + +- (void)viewWillMoveToWindow:(id)arg1; +- (void)viewDidMoveToWindow; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMailbox.h new file mode 100644 index 00000000..4ced0e25 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMailbox.h @@ -0,0 +1,107 @@ +/* + * 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 "MFUIMailbox.h" + +@class NSArray, NSColor, NSDictionary, NSEnumerator, NSFont, NSMutableArray, NSMutableDictionary, NSString, NSURL; + +@interface MTMMailbox : NSObject +{ + NSDictionary *_mailboxDict; + NSMutableArray *_subMailboxes; + NSMutableArray *_messages; + BOOL _messagesLoaded; + NSEnumerator *_messageEnumerator; + BOOL _updatePaused; + NSMutableArray *_pendingMessages; + MTMMailbox *_parentMailbox; + id _controller; + NSMutableDictionary *_messageColumnAttributes; +} + ++ (id)keyPathsForValuesAffectingType; ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; ++ (Class)mailboxClassForMailboxDictionary:(id)arg1; ++ (void)setSectionOrder:(id)arg1; +- (unsigned long long)numberOfMessage:(id)arg1; +- (void)discardMailbox; +- (void)resumeMailboxUpdate; +- (void)pauseMailboxUpdate; +- (void)loadNextMessagesWithControllingMailbox:(id)arg1 andFetcher:(id)arg2; +- (void)_updateMessages:(id)arg1; +- (BOOL)needsToLoadMessagesInBackground; +- (id)description; +@property(readonly) NSFont *messageListFont; +@property(readonly) NSColor *messageListColor; +@property(readonly) NSString *subRestoreString; +@property(readonly) NSString *restoreString; +@property(readonly) NSString *defaultMessageColumnAttributesKey; +@property(readonly) NSDictionary *messageColumnAttributes; +- (BOOL)_addAttributesFromInfo:(id)arg1; +@property(readonly) NSString *messageColumnConfiguration; +@property(readonly) NSString *restoreMode; +@property(readonly) NSString *displayMode; +@property(readonly) BOOL canCollapse; +@property(readonly) BOOL showSender; +@property(readonly) NSString *senderTitleString; +@property(readonly) NSString *dateTitleString; +- (long long)compareIndexInOutline:(id)arg1; +- (long long)_compareName:(id)arg1; +- (void)sortSubMailboxes; +@property(readonly) SEL sortSelector; +- (unsigned long long)indexInOutline; +- (id)_messagesFolderPathFromMailboxFolderPath:(id)arg1; +- (void)reloadMessages; +- (id)messageWithIdentifier:(id)arg1; +@property(readonly) NSArray *messages; +- (void)_loadMessages; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (void)_addSubMailbox:(id)arg1; +- (void)_addSubMailboxesFromDictionaries:(id)arg1; +- (id)_sortedMaiboxDictsForMailboxDicts:(id)arg1; +- (BOOL)_shouldSortMailboxes; +- (BOOL)hasChildren; +- (unsigned long long)numberOfChildren; +- (id)subMailboxWithIdentifier:(id)arg1; +- (id)children; +@property(readonly) NSArray *subMailboxes; +@property(readonly) MTMMailbox *parentMailbox; +- (BOOL)isPlaceholder; +- (BOOL)isSmartMailbox; +- (BOOL)isStore; +- (unsigned long long)displayCount; +- (BOOL)isContainer; +@property(readonly) NSString *displayNameInMessageList; +@property(readonly) NSString *displayNameInTitleBar; +- (id)_severalMessagesFormatString; +- (id)_oneMesageString; +- (id)extendedDisplayName; +@property(readonly) NSString *displayNameForList; +- (id)displayName; +@property(readonly) NSArray *paths; +@property(readonly) NSURL *timeMachineURL; +@property(readonly) NSString *path; +- (id)accountURLString; +- (id)account; +@property(readonly) BOOL enabled; +@property(readonly) BOOL asyncLoading; +@property int type; +@property(readonly) long long backupType; +@property(readonly) id revisionID; +- (id)persistentIdentifier; +@property(readonly) id identifier; +- (id)mailboxWithMailboxPath:(id)arg1; +- (id)mailboxPath; +- (id)mailboxWithIndexPath:(id)arg1; +- (id)indexPathFromMailbox:(id)arg1; +- (void)dealloc; +- (id)initWithDictionary:(id)arg1 controller:(id)arg2; +@property(nonatomic) id controller; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMMailboxChangedPredicate.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMailboxChangedPredicate.h new file mode 100644 index 00000000..e4911ba3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMailboxChangedPredicate.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPredicate.h" + +@interface MTMMailboxChangedPredicate : NSPredicate +{ +} + ++ (id)mailboxChangedPredicate; +- (BOOL)evaluateWithObject:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMMailboxControllerProtocol-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMailboxControllerProtocol-Protocol.h new file mode 100644 index 00000000..eee66049 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMailboxControllerProtocol-Protocol.h @@ -0,0 +1,20 @@ +/* + * 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" + +@class NSURL; + +@protocol MTMMailboxControllerProtocol +@property(readonly) NSURL *tocURL; +@property(readonly) NSURL *mailLibraryURL; +- (id)revisionIDForURL:(id)arg1; +- (id)accountForAccountID:(id)arg1; +- (id)messageWithID:(id)arg1; +- (void)mailboxListWasUpdated:(id)arg1; +- (void)mailboxListWillBeUpdated:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMMailboxFetcher.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMailboxFetcher.h new file mode 100644 index 00000000..2ca9656d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMailboxFetcher.h @@ -0,0 +1,41 @@ +/* + * 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" + +@class MTMMailbox, NSConditionLock, NSMutableArray; + +@interface MTMMailboxFetcher : NSObject +{ + MTMMailbox *_processingMailbox; + NSMutableArray *_inactiveMailboxes; + NSConditionLock *_lock; + BOOL _threadLaunched; + MTMMailbox *_loadingMailbox; +} + ++ (id)sharedFetcher; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)waitForActiveMailboxToBeLoadedWithTimeOut:(double)arg1; +- (BOOL)shouldContinueFetchingMailbox:(id)arg1; +- (void)_protectedSmartAddMailboxToInactiveMailboxes:(id)arg1; +- (void)stopFetchingInactiveMailbox:(id)arg1; +- (void)startFetchingInactiveMailbox:(id)arg1; +- (void)stopFetchingMailbox:(id)arg1; +- (void)startFetchingMailbox:(id)arg1; +- (void)_workerThread; +- (void)_unlockAndNotify; +- (void)_lockWhenThereIsWorkToDo; +- (void)_lock; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMMessage.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMessage.h new file mode 100644 index 00000000..6d25181d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMessage.h @@ -0,0 +1,39 @@ +/* + * 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" + +@class MTMMailbox, NSDate, NSString, NSURL; + +@interface MTMMessage : NSObject +{ + MTMMailbox *_mailbox; +} + +@property MTMMailbox *mailbox; // @synthesize mailbox=_mailbox; +@property(readonly) NSString *displayNameInMessageList; +- (unsigned long long)numberOfMessageInCurrentController; +- (BOOL)messageHasChangedFromSnapshot:(id)arg1; +- (id)description; +- (BOOL)isEqual:(id)arg1; +@property(readonly) unsigned long long readFlags; +@property(readonly) unsigned long long messageFlags; +@property(readonly) unsigned long long messageSize; +@property(readonly) NSDate *lastViewedDate; +@property(readonly) NSDate *savedDate; +@property(readonly) NSDate *receivedDate; +@property(readonly) NSDate *sentDate; +@property(readonly) NSString *to; +@property(readonly) NSString *author; +@property(readonly) NSString *subject; +@property(readonly) NSURL *URL; +@property(readonly) NSString *path; +@property(readonly) id revisionID; +@property(readonly) id identifier; +@property(readonly) id identifierForURL; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMMessageChangedPredicate.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMessageChangedPredicate.h new file mode 100644 index 00000000..c5d0355c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMessageChangedPredicate.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPredicate.h" + +@interface MTMMessageChangedPredicate : NSPredicate +{ +} + ++ (id)messageChangedPredicate; +- (BOOL)evaluateWithObject:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMMessageColumnController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMessageColumnController.h new file mode 100644 index 00000000..9b0b8280 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMMessageColumnController.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSArrayController, NSDictionary, NSMutableDictionary, NSString, NSTableView; + +@interface MTMMessageColumnController : NSObject +{ + NSMutableDictionary *_columnConfigurations; + NSString *_activeConfiguration; + NSDictionary *_activeAttributes; + NSTableView *_messageTableView; + NSArrayController *_messagesController; +} + ++ (void)initialize; +@property NSArrayController *messagesController; // @synthesize messagesController=_messagesController; +@property NSTableView *messageTableView; // @synthesize messageTableView=_messageTableView; +@property(retain) NSDictionary *activeAttributes; +- (void)_updateActiveAttributes; +- (id)_tableColumnForSortName:(id)arg1; +@property(retain) NSString *activeConfiguration; +- (void)_updateActiveConfiguration; +- (id)_configDictForConfiguration:(id)arg1; +- (void)_removeAllColumns; +- (id)_tableColumnWithIdentifier:(id)arg1 columnDict:(id)arg2; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMNumberCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMNumberCell.h new file mode 100644 index 00000000..47d02473 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMNumberCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface MTMNumberCell : NSTextFieldCell +{ +} + +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMOutlineCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMOutlineCell.h new file mode 100644 index 00000000..9b806389 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMOutlineCell.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageTextFieldCell.h" + +@interface MTMOutlineCell : NSImageTextFieldCell +{ + BOOL _enabled; +} + +@property BOOL enabled; // @synthesize enabled=_enabled; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)initImageCell:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMOutlineTopLevelCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMOutlineTopLevelCell.h new file mode 100644 index 00000000..4b4fd1aa --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMOutlineTopLevelCell.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface MTMOutlineTopLevelCell : NSTextFieldCell +{ + BOOL _enabled; +} + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMOutlineView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMOutlineView.h new file mode 100644 index 00000000..45b4a044 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMOutlineView.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOutlineView.h" + +@class MTMFullWindowController; + +@interface MTMOutlineView : NSOutlineView +{ + MTMFullWindowController *_windowController; +} + +- (BOOL)becomeFirstResponder; +- (void)selectAll:(id)arg1; +- (struct CGRect)frameOfOutlineCellAtRow:(long long)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMReadCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMReadCell.h new file mode 100644 index 00000000..57447d7f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMReadCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMFlagsCell.h" + +@interface MTMReadCell : MTMFlagsCell +{ +} + +- (id)imageForFlags:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMScroller.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMScroller.h new file mode 100644 index 00000000..c37e8054 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMScroller.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScroller.h" + +@interface MTMScroller : NSScroller +{ + BOOL _isFakeScroller; + BOOL _dontNotify; + id _delegate; +} + +@property id delegate; // @synthesize delegate=_delegate; +@property BOOL dontNotify; // @synthesize dontNotify=_dontNotify; +- (void)drawKnob; +@property(nonatomic) BOOL isFakeScroller; +- (void)_notifyPostScrollPositionChanged; +- (void)setDoubleValue:(double)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMSpecialMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMSpecialMailbox.h new file mode 100644 index 00000000..6bc5195b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMSpecialMailbox.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMMailbox.h" + +@interface MTMSpecialMailbox : MTMMailbox +{ + BOOL _isObserving; +} + ++ (Class)specialMailboxClassForMailboxType:(long long)arg1; ++ (Class)rootMailboxClass; +- (id)identifier; +- (id)recoverDisplayName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMTableView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMTableView.h new file mode 100644 index 00000000..d3483219 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMTableView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableView.h" + +@class NSArrayController; + +@interface MTMTableView : NSTableView +{ + NSArrayController *_messagesController; +} + +@property(retain, nonatomic) NSArrayController *messagesController; // @synthesize messagesController=_messagesController; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMWindow.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMWindow.h new file mode 100644 index 00000000..147a611d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMWindow.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface MTMWindow : NSWindow +{ +} + +- (double)animationResizeTime:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MTMWindowController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MTMWindowController.h new file mode 100644 index 00000000..ef4b47e3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MTMWindowController.h @@ -0,0 +1,84 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowController.h" + +#import "MTMMailboxControllerProtocol.h" + +@class MTMMailbox, MailToolbar, NSArray, NSAttributedString, NSDictionary, NSMutableDictionary, NSURL, NSView, StarFieldController; + +@interface MTMWindowController : NSWindowController +{ + MTMMailbox *_rootMailbox; + BOOL _activated; + BOOL _bindingsAreSet; + MailToolbar *_toolbar; + NSView *_pinView; + StarFieldController *_controller; + NSURL *_mailLibraryURL; + NSURL *_focusURL; + NSDictionary *_toolbarItems; + NSMutableDictionary *_accounts; + NSDictionary *_preferences; + NSDictionary *_tableOfContents; + BOOL _updatingToolbar; +} + ++ (void)loadPreferences:(id *)arg1 accounts:(id *)arg2 toc:(id *)arg3 rootMailbox:(id *)arg4 forLibraryURL:(id)arg5; ++ (BOOL)_loadTableOfContents:(id *)arg1 forLibraryURL:(id)arg2; ++ (id)focusURLInCurrentSnapshotForFocusURL:(id)arg1; ++ (id)baseLibraryURLFromMailLibraryURL:(id)arg1; ++ (id)mailLibraryURLFromFocusURL:(id)arg1; ++ (Class)specialMailboxClass; +@property(readonly) BOOL activated; // @synthesize activated=_activated; +- (long long)compare:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)restore:(id)arg1; +@property(readonly) double fadeDuration; +@property BOOL showChangedItemsOnly; +@property(readonly) NSArray *restoreMessagePaths; +@property(readonly) NSArray *restoreMailboxPaths; +@property(readonly) BOOL shouldRestoreMailboxPaths; +@property(readonly) NSArray *selectedMessagePaths; +@property(readonly) NSArray *selectedMailboxPaths; +@property(readonly) MTMMailbox *selectedMailbox; +@property(readonly) BOOL mailboxTargeted; +- (void)mailboxListWasUpdated:(id)arg1; +- (void)mailboxListWillBeUpdated:(id)arg1; +- (void)updateThumbnailAndGenericThumbnailIfNecessary; +@property(readonly) NSAttributedString *placeholderString; +- (void)updateThumbnailAsGenericWindow; +- (void)updateThumbnail; +- (id)revisionIDForURL:(id)arg1; +- (void)adjustDisplayStateAfterTimeMachineStarted; +@property(copy) NSDictionary *displayState; +- (id)accountForAccountID:(id)arg1; +- (void)_setupToolbarWithConfigurationDictionary:(id)arg1; +- (id)messageWithID:(id)arg1; +- (BOOL)_loadTableOfContentsIfNeeded; +@property(readonly) MTMMailbox *rootMailbox; +@property(readonly) NSArray *mailboxes; +@property(readonly) NSDictionary *preferences; +@property(readonly) NSURL *mailLibraryURL; +@property(readonly) NSURL *tocURL; +@property(retain) NSURL *focusURL; +- (void)_updateTimeMachineTargetIfNecessary; +@property(readonly) StarFieldController *controller; +- (void)deactivate; +- (void)activate; +- (BOOL)setupUIWithDisplayState:(id)arg1; +- (id)description; +- (void)dealloc; +- (void)removeBindings; +- (void)setupBindings; +- (id)initWithFocusURL:(id)arg1 bufferedController:(id)arg2 controller:(id)arg3; +- (id)initWithFocusURL:(id)arg1 controller:(id)arg2; +- (id)toolbarAllowedItemIdentifiers:(id)arg1; +- (id)toolbarDefaultItemIdentifiers:(id)arg1; +- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MUITokenAddressDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MUITokenAddressDelegate-Protocol.h new file mode 100644 index 00000000..f9f3932c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MUITokenAddressDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MUITokenAddressDelegate +- (BOOL)tokenAddressIsVIP:(id)arg1; +- (void)tokenAddress:(id)arg1 didSelectAction:(long long)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MVComposeAccessoryViewOwner.h b/MailHeaders/Mavericks_10.9.5/MailUI/MVComposeAccessoryViewOwner.h new file mode 100644 index 00000000..0b2495c2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MVComposeAccessoryViewOwner.h @@ -0,0 +1,17 @@ +/* + * 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" + +@interface MVComposeAccessoryViewOwner : NSObject +{ +} + ++ (id)composeAccessoryViewOwner; +- (BOOL)messageWillBeSaved:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MVLinkButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/MVLinkButton.h new file mode 100644 index 00000000..6af3ebe7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MVLinkButton.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface MVLinkButton : NSButton +{ +} + +- (void)resetCursorRects; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MVMailBundle.h b/MailHeaders/Mavericks_10.9.5/MailUI/MVMailBundle.h new file mode 100644 index 00000000..07ff5f9b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MVMailBundle.h @@ -0,0 +1,25 @@ +/* + * 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" + +@interface MVMailBundle : NSObject +{ +} + ++ (id)composeAccessoryViewOwnerClassName; ++ (BOOL)hasComposeAccessoryViewOwner; ++ (id)preferencesPanelName; ++ (id)preferencesOwnerClassName; ++ (BOOL)hasPreferencesPanel; ++ (id)sharedInstance; ++ (void)registerBundle; ++ (id)composeAccessoryViewOwners; ++ (id)allBundles; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MVMailboxSelectionOwner-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MVMailboxSelectionOwner-Protocol.h new file mode 100644 index 00000000..88528175 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MVMailboxSelectionOwner-Protocol.h @@ -0,0 +1,25 @@ +/* + * 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" + +@protocol MVMailboxSelectionOwner +- (id)mailboxSelectionWindow; +- (void)revealMailbox:(id)arg1; +- (BOOL)sectionIsExpanded:(id)arg1; +- (BOOL)mailboxIsExpanded:(id)arg1; +- (void)selectPathsToMailboxes:(id)arg1; +- (BOOL)isSelectedMailboxSpecial; +- (id)sortedSectionItemsForTimeMachine; +- (id)selectedMailbox; +- (id)selectedMailboxes; + +@optional +- (void)didCloseContextMenu:(id)arg1; +- (void)willShowContextMenu:(id)arg1; +- (id)expandedItems; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MVSelectionOwner-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MVSelectionOwner-Protocol.h new file mode 100644 index 00000000..69cfb021 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MVSelectionOwner-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MVSelectionOwner +- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (id)messageStore; +- (id)messageThatUserIsProbablyReading; +- (id)currentDisplayedMessage; +- (void)selectMessages:(id)arg1; +- (id)selectionExpandingThreadsAndHiddenCopies:(BOOL)arg1; +- (id)selection; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MVTerminationHandler-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MVTerminationHandler-Protocol.h new file mode 100644 index 00000000..b1e79668 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MVTerminationHandler-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol MVTerminationHandler +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; + +@optional +- (BOOL)needsToPromptUserBeforeTermination:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailAddressDelegate.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailAddressDelegate.h new file mode 100644 index 00000000..70747230 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailAddressDelegate.h @@ -0,0 +1,30 @@ +/* + * 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 "MUITokenAddressDelegate.h" + +@interface MailAddressDelegate : NSObject +{ +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)_searchForToken:(id)arg1; +- (void)_removeFromVIPs:(id)arg1; +- (void)_addToVIPs:(id)arg1; +- (void)_openNewMessageForTokenAddress:(id)arg1; +- (BOOL)tokenAddressIsVIP:(id)arg1; +- (void)tokenAddress:(id)arg1 didSelectAction:(long long)arg2; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailAnimatingButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailAnimatingButton.h new file mode 100644 index 00000000..e5965e17 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailAnimatingButton.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +#import "NSAnimationDelegate.h" + +@class NSImageView, NSViewAnimation; + +@interface MailAnimatingButton : NSButton +{ + NSViewAnimation *_animation; + NSImageView *_backImageView; + NSImageView *_frontImageView; +} + +- (void)_animationDidEnd; +- (void)animationDidEnd:(id)arg1; +- (void)animationDidStop:(id)arg1; +- (void)setImage:(id)arg1 animates:(BOOL)arg2; +- (void)setImage:(id)arg1; +- (void)dealloc; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailApp.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailApp.h new file mode 100644 index 00000000..8e4aa5a2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailApp.h @@ -0,0 +1,483 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSApplication.h" + +#import "IMAPUserAgent.h" +#import "MCActivityTarget.h" +#import "MCUserAgent.h" +#import "MFUserAgent.h" +#import "MVTerminationHandler.h" +#import "MailAutoFetchManagerDelegate.h" +#import "NSApplicationDelegate.h" +#import "NSMenuDelegate.h" + +@class ActivityViewer, ActivityViewerMailSound, DeliveryQueue, DockCountController, DynamicErrorWindowController, FlagsMenuItemView, MailAutoFetchManager, MailboxesController, NSMenu, NSMutableArray, NSMutableSet, NSString, NSTimer, NSWindow; + +@interface MailApp : NSApplication +{ + long long *_errorDiagnosisResult; + NSMenu *_viewAttachmentContextMenu; + unsigned int _paused:1; + id _selectionOwner; + NSMenu *_mailboxesContextMenu; + NSMenu *_addButtonMenu; + NSMenu *_messageViewerContextMenu; + NSMenu *_composeAttachmentContextMenu; + MailboxesController *_mailboxesController; + NSString *_noMailSoundPath; + NSString *_fetchErrorSoundPath; + DockCountController *_dockCountController; + NSMutableArray *_stationeryBundlesToInstall; + double _appDidFinishLaunchingTime; + DeliveryQueue *_deliveryQueue; + ActivityViewer *_activityViewer; + ActivityViewerMailSound *_activityViewerMailSound; + id _terminationHandlersLock; + NSMutableArray *_terminationHandlers; + NSMutableArray *_currentTerminationHandlers; + unsigned long long _terminateReply; + NSTimer *_terminationTimer; + unsigned int _autoLaunchHidden:1; + unsigned int _shouldPlayFetchErrorSound:1; + unsigned int _appHasFinishedLaunching:1; + unsigned int _synchronizingAllAccounts:1; + unsigned int _groupingByThreadDefaultsToOn:1; + unsigned int _updateEmailAliasesOnNextActivation:1; + NSMutableSet *_accountsCurrentlySynchronizing; + unsigned long long _numberOfAccountsEmptyingTrash; + BOOL _accountsAreNew; + BOOL _runningEmptyTrashSheet; + NSMutableArray *_appleEventDescriptorQueue; + BOOL _isTerminating; + BOOL _isExitingFullscreen; + BOOL _hasPerformedDelayedInitialization; + BOOL _accountsHaveBeenConfigured; + FlagsMenuItemView *_flagsMenuItemView; + NSWindow *_errorDiagnosisWindow; + DynamicErrorWindowController *_errorDiagnosisWindowController; + MailAutoFetchManager *_autoFetchManager; +} + ++ (void)_testMachPorts; +@property BOOL accountsHaveBeenConfigured; // @synthesize accountsHaveBeenConfigured=_accountsHaveBeenConfigured; +@property BOOL hasPerformedDelayedInitialization; // @synthesize hasPerformedDelayedInitialization=_hasPerformedDelayedInitialization; +@property BOOL isExitingFullscreen; // @synthesize isExitingFullscreen=_isExitingFullscreen; +@property BOOL isCurrentlyTerminating; // @synthesize isCurrentlyTerminating=_isTerminating; +@property(readonly, nonatomic) MailAutoFetchManager *autoFetchManager; // @synthesize autoFetchManager=_autoFetchManager; +@property(retain, nonatomic) DynamicErrorWindowController *errorDiagnosisWindowController; // @synthesize errorDiagnosisWindowController=_errorDiagnosisWindowController; +@property(retain, nonatomic) NSWindow *errorDiagnosisWindow; // @synthesize errorDiagnosisWindow=_errorDiagnosisWindow; +@property(retain, nonatomic) FlagsMenuItemView *flagsMenuItemView; // @synthesize flagsMenuItemView=_flagsMenuItemView; +- (void)_delayedUpgradeSteps; +- (void)_handleSyncNotification:(id)arg1; +- (void)_smartMailboxesChanged:(id)arg1; +- (void)_rulesChanged:(id)arg1; +- (BOOL)shouldRestoreStateOnNextLaunch; +- (void)replyToApplicationShouldTerminate:(BOOL)arg1; +- (void)handler:(id)arg1 approvedQuit:(BOOL)arg2; +- (void)removeTerminationHandler:(id)arg1; +- (void)addTerminationHandler:(id)arg1; +- (void)applicationWillTerminate:(id)arg1; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)_terminationTimerFired:(id)arg1; +- (unsigned long long)applicationShouldTerminate:(id)arg1; +- (id)_currentTerminationHandler; +- (void)_nowWouldBeAGoodTimeForHandler:(id)arg1 toTerminateFromSelector:(SEL)arg2; +- (void)_backfillDateLastViewedAttribute; +- (void)_fixAttachmentCache; +- (void)_cleanOldDatabases:(id)arg1; +- (void)_cleanUpAccount:(id)arg1; +- (void)_cleanupFinished:(id)arg1; +- (void)_approveQuitIfFinished:(id)arg1; +- (void)_terminateNoConfirm; +- (void)quitNoMatterWhat; +- (void)timeMachineDismiss:(id)arg1; +- (void)_timeMachineSendEvent:(id)arg1; +- (BOOL)applicationShouldHandleReopen:(id)arg1 hasVisibleWindows:(BOOL)arg2; +- (id)preferredReplyAddressBasedOnCurrentSelection; +- (id)preferredAccountBasedOnSelection; +- (id)selectionOwner; +- (id)selectionExpandingThreadsAndHiddenCopies:(BOOL)arg1; +- (id)selection; +- (void)resignSelectionFor:(id)arg1; +- (void)setSelectionFrom:(id)arg1; +- (id)deliveryQueue; +- (void)mailTo:(id)arg1 userData:(id)arg2 error:(id *)arg3; +- (void)mailSelection:(id)arg1 userData:(id)arg2 error:(id *)arg3; +- (id)messageEditor; +- (void)_mailDocuments:(id)arg1; +- (id)frameworkVersion; +- (id)applicationVersion; +- (BOOL)handleClickOnURL:(id)arg1 visibleText:(id)arg2 window:(id)arg3 dontSwitch:(BOOL)arg4; +- (BOOL)handleMessageURL:(id)arg1; +- (BOOL)handleMailToURL:(id)arg1; +- (void)_preferencesChanged:(id)arg1; +- (id)mailboxesController; +- (void)menuWillOpen:(id)arg1; +- (void)willPresentContextualMenu:(id)arg1; +- (id)toolbarItemCopyMenu; +- (id)toolbarItemMoveMenu; +@property(retain, nonatomic) NSMenu *composeAttachmentContextMenu; +@property(retain, nonatomic) NSMenu *viewAttachmentContextMenu; +@property(retain, nonatomic) NSMenu *messageViewerContextMenu; +@property(retain, nonatomic) NSMenu *mailboxesContextMenu; +@property(retain, nonatomic) NSMenu *addButtonMenu; +- (void)loadMailboxesContextMenuNib; +- (id)activityViewer; +- (void)_addressManagerLoaded:(id)arg1; +- (id)_messageEditorWithSettings:(id)arg1; +- (id)openMessageEditorWithParsedMessage:(id)arg1 headers:(id)arg2 activatingApp:(BOOL)arg3; +- (id)openStoreWithMailbox:(id)arg1 andMakeKey:(BOOL)arg2; +- (id)openStoreWithMailbox:(id)arg1; +- (void)applicationDidBecomeActive:(id)arg1; +- (void)updateEmailAliasesOnNextActivation; +- (void)applicationDidUnhide:(id)arg1; +- (void)application:(id)arg1 openFiles:(id)arg2; +- (void)handleStationeryBundles; +- (BOOL)_handleOpenMessage:(id)arg1; +- (BOOL)application:(id)arg1 openFile:(id)arg2; +- (void)_mailAccountNeedsChecking:(id)arg1; +- (void)fetchErrorHasOccurred; +- (void)_backgroundFetchCompleted:(id)arg1; +- (void)autoFetchMail:(id)arg1; +- (void)checkNewMailInSelectedAccounts:(id)arg1; +- (void)_checkNewMailInAccountRepresentedByMailbox:(id)arg1; +- (void)checkNewMail:(id)arg1; +- (void)checkNewMailInAccount:(id)arg1; +- (void)checkNewMailInAccount:(id)arg1 isAutocheck:(BOOL)arg2; +- (void)_doBackgroundFetch:(BOOL)arg1; +- (void)_checkNewMail:(BOOL)arg1; +- (void)_autoFetchDidChange; +- (BOOL)_allowSlowAutomaticFetch; +- (double)fetchInterval; +- (void)setAutoFetchFrequency:(long long)arg1; +- (long long)autoFetchFrequency; +- (void)setShouldAutoFetch:(BOOL)arg1; +- (BOOL)shouldAutoFetch; +- (void)setGroupingByThreadDefaultsToOn:(BOOL)arg1; +- (BOOL)groupingByThreadDefaultsToOn; +- (void)toggleThreadedMode:(id)arg1; +- (void)eraseJunkMail:(id)arg1; +- (void)showToolbarItemForJunkMail:(BOOL)arg1; +- (void)compactSelectedMailboxes:(id)arg1; +- (void)emptyTrashInAccount:(id)arg1; +- (id)_accountsToEmptyTrashIn:(id)arg1; +- (void)_emptyTrashPromptingUserInAccounts:(id)arg1 storeToCompact:(id)arg2; +- (void)_emptyTrashInAccounts:(id)arg1 storeToCompact:(id)arg2; +- (void)editAccount:(id)arg1; +- (void)_aosAccountMigratedExternally:(id)arg1; +- (void)_webAuthenticationCompleted:(id)arg1; +- (void)_mailAccountsChangedExternally:(id)arg1; +- (void)_deliveryAccountsChangedExternally:(id)arg1; +- (void)_accountsChanged:(id)arg1; +- (void)_setupCheckSpellingSubMenu; +- (void)_setupAccountMenuItems; +- (void)_removeAllItemsInAccountMenuWithTag:(long long)arg1; +- (void)_removeExtraSeparatorsInMailboxMenu; +- (void)bringUpGetNewMailMenu:(id)arg1; +- (void)bringUpEmptyTrashMenu:(id)arg1; +- (void)bringUpSynchronizeAccountMenu:(id)arg1; +- (void)bringUpOnlineOfflineMenu:(id)arg1; +- (void)_synchronizeAccountListMenuWithTagIfNeeded:(long long)arg1; +- (void)_getActiveAccountsThatCanGoOffline:(id)arg1 fetch:(id)arg2 sync:(id)arg3 deleteToTrash:(id)arg4 doesNotDeleteToTrash:(id)arg5; +- (id)_getMenuItemInMessageMenuWithTag:(long long)arg1; +- (id)_mailboxMenu; +- (void)_resetMenuItemWithTag:(long long)arg1; +- (void)insertOriginalAttachments:(id)arg1; +- (void)attachFilesAtEnd:(id)arg1; +- (void)alwaysAttachFilesAtEnd:(id)arg1; +- (void)sendWindowsFriendlyAttachments:(id)arg1; +- (void)alwaysSendWindowsFriendlyAttachments:(id)arg1; +- (void)showAccountInfo:(id)arg1; +- (void)showReleaseNotes:(id)arg1; +- (void)importMailboxes:(id)arg1; +- (void)addAccount:(id)arg1; +- (void)openSystemAccountPreferences:(id)arg1; +- (void)collectFeedback:(id)arg1; +- (void)showPreferencesPanel:(id)arg1; +- (void)showActivityViewer:(id)arg1; +- (void)showAddressHistoryPanel:(id)arg1; +- (void)showAddressPanel:(id)arg1; +- (void)showMediaBrowser:(id)arg1; +- (void)selectMailbox:(id)arg1; +- (void)newViewerWindow:(id)arg1; +- (void)addFontTrait:(id)arg1; +- (void)orderFrontStylesPanel:(id)arg1; +- (void)showComposeWindow:(id)arg1; +- (void)showInfoPanel:(id)arg1; +- (void)showConnectionDoctor:(id)arg1; +- (void)closeAll:(id)arg1; +- (void)_emailsRejected:(id)arg1; +- (void)_emailAddressesApproved:(id)arg1; +- (void)_handleNetworkConfigurationChange; +- (void)_networkConfigurationChanged:(id)arg1; +- (void)synchronizeAccount:(id)arg1; +- (void)performSynchronizationForAccounts:(id)arg1; +- (void)_clearAccountsCurrentlySynchronizing; +- (BOOL)_isAccountCurrentlySynchronizing:(id)arg1; +- (void)_removeFromAccountsCurrentlySynchronizing:(id)arg1; +- (void)_addToAccountsCurrentlySynchronizing:(id)arg1; +- (void)toggleAccountOnlineStatus:(id)arg1; +- (void)disconnectThisAccountFromContextMenu:(id)arg1; +- (void)connectThisAccountFromContextMenu:(id)arg1; +- (void)connectAllAccountsFromContextMenu:(id)arg1; +- (void)disconnectAllAccountsFromContextMenu:(id)arg1; +- (void)disconnectThisAccount:(id)arg1; +- (void)connectThisAccount:(id)arg1; +- (void)connectAllAccounts:(id)arg1; +- (void)disconnectAllAccounts:(id)arg1; +- (BOOL)_moreThanOneAccountCanGoOffline; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateToolbarItem:(id)arg1; +- (void)runPageLayout:(id)arg1; +- (id)_accountBeingViewed; +- (BOOL)_isMailboxBeingViewedSpecial; +- (id)_mailboxBeingViewed; +- (id)_failureInfoForBundle:(id)arg1 path:(id)arg2; +- (void)_loadBundlesFromPath:(id)arg1 failedBundleInfos:(id)arg2; +- (void)_loadBundles; +- (void)_setupInitialState; +- (void)_restoreMessagesFromDefaults; +- (BOOL)accountsAreNew; +- (BOOL)_needToCreateLibraryUpgradingIfNecessary; +- (void)_setupQuitMenu; +- (void)applicationDidFinishLaunching:(id)arg1; +- (void)applicationWillFinishLaunching:(id)arg1; +- (void)_exitIfInUpgradeOnlyMode; +- (void)transformToBackground; +- (BOOL)applicationIsInBackgroundMode; +- (void)transformToForeground; +- (BOOL)applicationWillBeRestoredByTAL; +- (void)_delayOnStartup; +- (void)_showDatabaseAlert:(BOOL)arg1 databaseFile:(id)arg2; +- (void)_showReadOnlyFolderAlert:(id)arg1; +- (void)_showUnresolvedFolderAlert:(id)arg1; +- (void)_performBackgroundDelayedInitialization; +- (void)_setSourceOnGmailLabels; +- (void)_performDelayedInitialization; +- (void)_tryToPerformDelayedInitialization; +- (void)_updateEmailAliases; +- (void)checkAndEnableMidnightTimerIfNecessary; +- (void)disableMidnightTimer; +- (void)adjustAutoFetchTimer; +- (void)checkAndEnableAutoFetchTimerIfNecessary; +- (void)disableAutoFetchTimer; +@property(nonatomic) BOOL logAutoFetchTimerActivity; +- (void)_setupMidnightTimer; +- (void)_midnightPassed; +- (void)_systemTimeChanged; +- (BOOL)applicationOpenUntitledFile:(id)arg1; +- (BOOL)_showViewerWindow:(id)arg1; +- (void)showViewerWindow:(id)arg1; +- (void)_accountInfoDidChange:(id)arg1; +- (void)sendEvent:(id)arg1; +- (BOOL)appHasFinishedLaunching; +- (void)dealloc; +- (id)init; +- (id)deliveryAccounts; +- (void)removeFromAccountsAtIndex:(unsigned long long)arg1; +- (void)insertInPopAccounts:(id)arg1; +- (void)insertInPopAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInImapAccounts:(id)arg1; +- (void)insertInImapAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInAosImapAccounts:(id)arg1; +- (void)insertInAosImapAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInAccounts:(id)arg1; +- (void)insertInAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)_insertInAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (long long)backgroundThreadCount; +- (void)setShouldCheckIntranetDomains:(BOOL)arg1 withString:(id)arg2; +- (void)setInlineSpellCheckingEnabled:(BOOL)arg1; +- (BOOL)inlineSpellCheckingEnabled; +- (void)setEncryptOutgoingMessages:(BOOL)arg1; +- (BOOL)encryptOutgoingMessages; +- (void)setSignOutgoingMessages:(BOOL)arg1; +- (BOOL)signOutgoingMessages; +- (void)setIncludeAllOfOriginalMessage:(BOOL)arg1; +- (BOOL)includeAllOfOriginalMessage; +- (void)setIncludeOriginalMessage:(BOOL)arg1; +- (BOOL)includeOriginalMessage; +- (void)setAlwaysBCCMyself:(BOOL)arg1; +- (BOOL)alwaysBCCMyself; +- (void)setAlwaysCCMyself:(BOOL)arg1; +- (BOOL)alwaysCCMyself; +- (void)setReplyInSameFormat:(BOOL)arg1; +- (BOOL)replyInSameFormat; +- (void)setUseAddressCompletion:(BOOL)arg1; +- (BOOL)useAddressCompletion; +- (void)setExpandGroupAddresses:(BOOL)arg1; +- (BOOL)expandGroupAddresses; +- (void)setCheckGrammarWithSpelling:(BOOL)arg1; +- (BOOL)checkGrammarWithSpelling; +- (void)setSpellCheckingBehavior:(long long)arg1; +- (long long)spellCheckingBehavior; +- (void)setAutosaveComposeWindows:(BOOL)arg1; +- (BOOL)autosaveComposeWindows; +- (void)setDefaultMessageFormat:(unsigned int)arg1; +- (unsigned int)defaultMessageFormat; +- (void)setLevelThreeQuotingColor:(int)arg1; +- (int)levelThreeQuotingColor; +- (void)setLevelTwoQuotingColor:(int)arg1; +- (int)levelTwoQuotingColor; +- (void)setLevelOneQuotingColor:(int)arg1; +- (int)levelOneQuotingColor; +- (int)quotingColorValue:(id)arg1; +- (int)quotingColorForLevel:(long long)arg1; +- (void)setQuotingColor:(int)arg1 forLevel:(long long)arg2; +- (void)setFixedWidthFontSize:(double)arg1; +- (double)fixedWidthFontSize; +- (void)setFixedWidthFont:(id)arg1; +- (id)fixedWidthFont; +- (void)setUseFixedWidthFont:(BOOL)arg1; +- (BOOL)useFixedWidthFont; +- (void)setMessageFontSize:(double)arg1; +- (double)messageFontSize; +- (void)setMessageFont:(id)arg1; +- (id)messageFont; +- (void)setMessageListFontSize:(double)arg1; +- (double)messageListFontSize; +- (void)setMessageListFont:(id)arg1; +- (id)messageListFont; +- (void)setColorQuotedText:(BOOL)arg1; +- (BOOL)colorQuotedText; +- (void)setFixedPitchFont:(id)arg1 size:(double)arg2; +- (void)setMessageFont:(id)arg1 size:(double)arg2; +- (void)fontsAndColorsPreferencesDidChange; +- (void)fontsAndColorsPreferencesDidChange:(BOOL)arg1; +- (void)setIndexDecryptedMessages:(BOOL)arg1; +- (BOOL)indexDecryptedMessages; +- (void)setDownloadFolderURL:(id)arg1; +- (id)downloadFolderURL; +- (void)setMailSoundForNewMail:(id)arg1; +- (id)mailSoundForNewMail; +- (void)setSoundPathForNewMail:(id)arg1; +- (id)soundPathForNewMail; +- (void)setPlayOtherMailSounds:(BOOL)arg1; +- (BOOL)playOtherMailSounds; +- (void)handleShowAccountPreferencesEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleSafariPDFEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleSafariReaderArchiveEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleSafariPageArchiveEvent:(id)arg1 replyEvent:(id)arg2; +- (void)shareInMailEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleMailWebLinkEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleMailWebPageEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleGURLAppleEvent:(id)arg1 replyEvent:(id)arg2; +- (void)queueAppleEvent:(id)arg1 replyEvent:(id)arg2; +- (void)_unregisterAppleEventHandlers; +- (void)_registerAppleEventHandlers; +- (void)_registerAppleEventQueue; +- (id)handleImportMboxCommand:(id)arg1; +- (id)handleSynchronizeAccountCommand:(id)arg1; +- (id)handleCheckMailCommand:(id)arg1; +- (id)logMessages; +- (void)setLogActivityOnHosts:(id)arg1; +- (id)logActivityOnHosts; +- (void)setLogActivityOnPorts:(id)arg1; +- (id)logActivityOnPorts; +- (void)setLogAllSocketActivity:(BOOL)arg1; +- (BOOL)logAllSocketActivity; +- (void)setUseKeychain:(BOOL)arg1; +- (BOOL)useKeychain; +- (id)_objectSpecifierForObject:(id)arg1 inArray:(id)arg2 withKey:(id)arg3; +- (id)valueInComposeMessagesWithUniqueID:(id)arg1; +- (void)removeFromComposeMessagesAtIndex:(unsigned long long)arg1; +- (void)insertInComposeMessages:(id)arg1; +- (void)insertInComposeMessages:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)composeMessages; +- (void)removeFromMessageEditorsAtIndex:(unsigned long long)arg1; +- (void)insertInMessageEditors:(id)arg1; +- (void)insertInMessageEditors:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)messageEditors; +- (void)replaceInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInMailboxes:(id)arg1; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)removeFromMailboxesAtIndex:(unsigned long long)arg1; +- (id)valueInMailboxesWithName:(id)arg1; +- (id)mailboxes; +- (id)junkMailbox; +- (id)trashMailbox; +- (id)sentMailbox; +- (id)draftsMailbox; +- (id)outbox; +- (id)inbox; +- (void)removeFromMessageViewersAtIndex:(unsigned long long)arg1; +- (void)insertInMessageViewers:(id)arg1; +- (void)insertInMessageViewers:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)valueInMessageViewersWithUniqueID:(id)arg1; +- (id)messageViewers; +- (void)removeFromDeliveryAccountsAtIndex:(unsigned long long)arg1; +- (void)insertInDeliveryAccounts:(id)arg1; +- (void)insertInDeliveryAccounts:(id)arg1 atIndex:(long long)arg2; +- (id)aosImapAccounts; +- (id)imapAccounts; +- (id)popAccounts; +- (id)_accountsOfClass:(Class)arg1; +- (id)accounts; +- (id)applescriptSelection; +- (id)indicesOfObjectsByEvaluatingObjectSpecifier:(id)arg1; +- (void)openHelpTopic:(id)arg1; +- (id)_convertSnowLeopardToLionKey:(id)arg1; +- (void)_setAutoFetchFrequencyToAutomatic; +- (void)_migrateRecentsToCoreRecents; +- (void)_migrateDefaultsToSharedDomain; +- (void)_removeViewRelatedMessagesToolbarButtonByDefault; +- (void)_upgradeExpandedMailboxesPreference; +- (void)_adoptNewToolbarDefaultConfigurations; +- (void)_preserveSignatureAboveQuotedTextPreference; +- (void)_switchToolbarsToIconOnly; +- (void)_upgradeFlagToolbarItems; +- (void)_turnOnConversationView; +- (void)performMailUpgrade; +- (BOOL)doParentalControlProcessingForMessage:(id)arg1; +- (BOOL)addInvitationsToCalendarAutomatically; +- (void)addInvitationsToCalendarFromMessages:(id)arg1; +- (id)junkStringFromHTMLData:(id)arg1 textEncodingName:(id)arg2 context:(id)arg3; +- (long long)junkMailBehavior; +- (id)headersRequiredForParentalControl; +- (id)headersRequiredForRouting; +- (void)setIsInTimeMachineMode:(BOOL)arg1; +- (BOOL)isInTimeMachineMode; +- (id)localAttachmentFilesDirectory; +- (BOOL)openTemporaryAttachments:(id)arg1 applicationBundle:(id)arg2; +- (void)relaunchAndQuitWithAdditionalArguments:(id)arg1; +- (void)relaunchAndQuit; +- (BOOL)isTerminating; +- (id)sharedAttachmentContextMenu; +- (void)storeBeingInvalidated:(id)arg1; +- (void)_downloadBigMessage:(id)arg1; +- (long long)queryUserForBigMessageAction:(id)arg1; +- (void)informUserOfBusyDatabaseWithRecoverer:(id)arg1 diagnosis:(long long *)arg2; +- (void)informUserOfIOErrorWithStateIn:(long long *)arg1; +- (void)_informUserOfDatabaseError:(id)arg1; +- (BOOL)queryUserWithMessageText:(id)arg1 informativeText:(id)arg2 defaultButton:(id)arg3 alternateButton:(id)arg4; +- (void)informUserOfError:(id)arg1; +- (long long)runAlertPanelWithTitle:(id)arg1 firstButtonTitle:(id)arg2 secondButtonTitle:(id)arg3 thirdButtonTitle:(id)arg4 message:(id)arg5; +- (void)_runAlertPanelInMainThreadWithInfo:(id)arg1; +- (void)resetSuppressedAccount:(id)arg1; +- (BOOL)promptForPassword:(id)arg1; +- (void)removeFromRulesAtIndex:(unsigned long long)arg1; +- (void)insertInRules:(id)arg1; +- (void)insertInRules:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)rules; +- (void)removeFromSignaturesAtIndex:(unsigned long long)arg1; +- (void)insertInSignatures:(id)arg1; +- (void)insertInSignatures:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)setSelectedSignature:(id)arg1; +- (id)selectedSignature; +- (void)setChooseSignatureWhenComposing:(BOOL)arg1; +- (BOOL)chooseSignatureWhenComposing; +- (id)signatures; +- (BOOL)shouldShowUnreadMessagesInBold; +- (void)setShouldShowUnreadMessagesInBold:(BOOL)arg1; +- (void)setShouldHighlightThreads:(BOOL)arg1; +- (BOOL)shouldHighlightThreads; +- (void)setHeaderDetail:(int)arg1; +- (int)headerDetail; +- (void)setDownloadHTMLAttachments:(BOOL)arg1; +- (BOOL)downloadHTMLAttachments; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailAutoFetchManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailAutoFetchManager.h new file mode 100644 index 00000000..76178ea6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailAutoFetchManager.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSDate, NSTimer; + +@interface MailAutoFetchManager : NSObject +{ + BOOL _logTimerActivity; + BOOL _autoFetchTimerShouldBeDisabled; + id _delegate; + NSTimer *_autoFetchTimer; + NSDate *_lastFetch; +} + +@property(retain, nonatomic) NSDate *lastFetch; // @synthesize lastFetch=_lastFetch; +@property(nonatomic) NSTimer *autoFetchTimer; // @synthesize autoFetchTimer=_autoFetchTimer; +@property(nonatomic) BOOL autoFetchTimerShouldBeDisabled; // @synthesize autoFetchTimerShouldBeDisabled=_autoFetchTimerShouldBeDisabled; +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; +@property(nonatomic) BOOL logTimerActivity; // @synthesize logTimerActivity=_logTimerActivity; +- (void)_fireTimer:(id)arg1; +- (void)_registerForActivityFetchTimerWithDelay:(double)arg1 fetchInterval:(double)arg2; +- (void)_unregisterForActivityFetchTimer; +- (void)willCheckNewMail; +- (void)adjustAutoFetchTimer; +- (void)checkAndEnableAutoFetchTimerIfNecessary; +- (void)disableAutoFetchTimer; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailAutoFetchManagerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailAutoFetchManagerDelegate-Protocol.h new file mode 100644 index 00000000..6d932994 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailAutoFetchManagerDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MailAutoFetchManagerDelegate +- (double)fetchInterval; +- (void)autoFetchMail:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailBarContainerButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailBarContainerButton.h new file mode 100644 index 00000000..6cac65cf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailBarContainerButton.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface MailBarContainerButton : NSButton +{ + BOOL _isPerformingSearchScope; +} + ++ (id)mailBarContainerButtonFont; ++ (Class)cellClass; +- (BOOL)shouldSetFontSmoothingBackgroundColor; +@property(nonatomic) BOOL isPerformingSearchScope; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailBarContainerButtonCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailBarContainerButtonCell.h new file mode 100644 index 00000000..9cae0ea7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailBarContainerButtonCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface MailBarContainerButtonCell : NSButtonCell +{ +} + +- (void)drawBezelWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailBarContainerView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailBarContainerView.h new file mode 100644 index 00000000..f43fb96a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailBarContainerView.h @@ -0,0 +1,74 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class FavoritesBarView, MailSearchScopeView, MessageViewer, NSArray, NSButton, NSProgressIndicator; + +@interface MailBarContainerView : NSView +{ + FavoritesBarView *_favoritesBarView; + NSButton *_leftSidebarButton; + NSView *_searchScopeViewSuperview; + MailSearchScopeView *_searchScopeView; + NSButton *_saveButton; + NSProgressIndicator *_progressIndicator; + double _xPositionOfSeparator; + BOOL _isSearchScopeViewVisible; + unsigned long long _animationCount; + BOOL _isVisible; + BOOL _barWasHiddenBeforeSearch; + int _searchTarget; + MessageViewer *_messageViewer; +} + ++ (id)colorForLightSeparatorLineShadowIsMain:(BOOL)arg1; ++ (id)colorForLightSeparatorLineIsMain:(BOOL)arg1; +@property(readonly, nonatomic) BOOL barWasHiddenBeforeSearch; // @synthesize barWasHiddenBeforeSearch=_barWasHiddenBeforeSearch; +@property int searchTarget; // @synthesize searchTarget=_searchTarget; +@property(nonatomic) BOOL isVisible; // @synthesize isVisible=_isVisible; +@property(nonatomic) MessageViewer *messageViewer; // @synthesize messageViewer=_messageViewer; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeNames; +- (BOOL)accessibilityIsIgnored; +- (BOOL)extraButtonsSelected; +- (void)scopeToAllMailboxes; +- (void)_saveButtonAction:(id)arg1; +@property(readonly, nonatomic) NSArray *scopeMailboxes; +- (void)_scopeChanged; +- (void)_scopeWillChange; +- (BOOL)isShowingSearchResults; +- (void)setCanSearchSelectedMailbox:(BOOL)arg1; +- (void)setCanSaveSearch:(BOOL)arg1; +- (void)stopProgressAnimation; +- (void)startProgressAnimation; +- (void)clearSearchButtons; +- (void)_tearDown; +- (void)finishedShowHideAnimation; +- (void)setSearchScopeViewVisible:(BOOL)arg1 animate:(BOOL)arg2; +- (void)_setupSearchScopeViewUI; +- (void)_mailboxesVisibilityChanged:(id)arg1; +- (id)_sidebarButton; +- (id)_sidebarButtonToolTip; +- (id)_sidebarButtonText; +- (id)_sidebarButtonImage; +- (void)_toolbarVisibilityDidChange:(id)arg1; +- (id)toggleBarContainerAnimationDictionary; +- (double)barHeight; +- (double)_startPositionOfFirstViewAfterSeparator; +- (void)updateLayer; +- (BOOL)wantsUpdateLayer; +- (BOOL)isFlipped; +- (void)dealloc; +- (void)awakeFromNib; +- (void)_windowStateChanged:(id)arg1; +- (void)_mailBarContainerViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailCopyCommand.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailCopyCommand.h new file mode 100644 index 00000000..7ba3f3a0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailCopyCommand.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSCloneCommand.h" + +@interface MailCopyCommand : NSCloneCommand +{ +} + +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailDeleteCommand.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailDeleteCommand.h new file mode 100644 index 00000000..dea6eccf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailDeleteCommand.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSDeleteCommand.h" + +@interface MailDeleteCommand : NSDeleteCommand +{ +} + +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailEmailImporter.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailEmailImporter.h new file mode 100644 index 00000000..7d7eceed --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailEmailImporter.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +#import "MFAddProgressMonitor.h" + +@class ImportItem; + +@interface MailEmailImporter : FilesystemEmailImporter +{ + ImportItem *_currentItem; + unsigned long long _currentItemMessageIndex; + unsigned long long _currentItemMessageCount; + unsigned long long _currentBlockSize; +} + ++ (id)explanatoryText; ++ (id)name; +- (id)mailboxNameForImportItem:(id)arg1; +- (void)setFractionDone:(double)arg1; +- (void)importMailbox:(id)arg1; +- (BOOL)isValidMailbox:(id)arg1; +- (id)prepareForImport; +- (double)progressValueForMailboxAtPath:(id)arg1; +- (id)pathExtensions; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailFullScreenWindowDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailFullScreenWindowDelegate-Protocol.h new file mode 100644 index 00000000..4a67ec9b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailFullScreenWindowDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowDelegate.h" + +@protocol MailFullScreenWindowDelegate +- (void)restoreFrame; +- (BOOL)mailFullScreenWindowShouldClose:(id)arg1; +- (id)windowForMailFullScreen; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailInspectorBar.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailInspectorBar.h new file mode 100644 index 00000000..cfb49a65 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailInspectorBar.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSInspectorBar.h" + +@class NSView, NSWindow; + +@interface MailInspectorBar : NSInspectorBar +{ + NSWindow *_window; + NSView *_separatorView; +} + ++ (Class)standardItemControllerClass; +- (void)_tile; +- (id)_inspectorBarView; +- (void)_setWindow:(id)arg1; +- (id)loadedNib; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailInspectorBarItemController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailInspectorBarItemController.h new file mode 100644 index 00000000..654808de --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailInspectorBarItemController.h @@ -0,0 +1,45 @@ +/* + * 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 "NSInspectorBarDelegate.h" +#import "NSInspectorBarItemController.h" + +@class NSInspectorBar, NSPopUpButton, NSSegmentedControl, NSView; + +@interface MailInspectorBarItemController : NSObject +{ + NSView *_view; + NSInspectorBar *_inspectorBar; + NSPopUpButton *_fontSizePopUpButton; + NSPopUpButton *_listPopUpButton; + NSPopUpButton *_indentationPopUpButton; + NSSegmentedControl *_textAlignmentSegmentedControl; +} + ++ (id)keyForItemIdentifier:(id)arg1; ++ (id)loadedNib; ++ (id)supportedInspectorItemIdentifiers; +@property(nonatomic) NSSegmentedControl *textAlignmentSegmentedControl; // @synthesize textAlignmentSegmentedControl=_textAlignmentSegmentedControl; +@property(nonatomic) NSPopUpButton *indentationPopUpButton; // @synthesize indentationPopUpButton=_indentationPopUpButton; +@property(nonatomic) NSPopUpButton *listPopUpButton; // @synthesize listPopUpButton=_listPopUpButton; +@property(nonatomic) NSPopUpButton *fontSizePopUpButton; // @synthesize fontSizePopUpButton=_fontSizePopUpButton; +@property(nonatomic) NSInspectorBar *inspectorBar; // @synthesize inspectorBar=_inspectorBar; +@property(retain, nonatomic) NSView *view; // @synthesize view=_view; +- (id)viewForInspectorBarItem:(id)arg1; +- (id)inspectorBar:(id)arg1 itemForIdentifier:(id)arg2; +- (void)changeTextAlignment:(id)arg1; +- (void)changeFontSize:(id)arg1; +- (void)removePlaceholderFontSize; +- (void)selectFontSize:(double)arg1; +- (void)selectedFontDidChange:(id)arg1; +- (id)newMenuItemForFontSize:(double)arg1; +- (void)loadNib; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailMoveCommand.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailMoveCommand.h new file mode 100644 index 00000000..83131942 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailMoveCommand.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMoveCommand.h" + +@interface MailMoveCommand : NSMoveCommand +{ +} + ++ (void)_performBackgroundCommand:(id)arg1 copyMessages:(id)arg2 fromStores:(id)arg3 toMailbox:(id)arg4 shouldDelete:(BOOL)arg5; +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailPopoverWell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailPopoverWell.h new file mode 100644 index 00000000..8cd98655 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailPopoverWell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopoverColorWell.h" + +@interface MailPopoverWell : NSPopoverColorWell +{ +} + ++ (id)_bezelRenderingButton; +- (struct CGSize)colorSwatchInset; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailPreferences.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailPreferences.h new file mode 100644 index 00000000..2534d495 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailPreferences.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferences.h" + +@interface MailPreferences : NSPreferences +{ +} + ++ (void)restoreWindowWithIdentifier:(id)arg1 state:(id)arg2 completionHandler:(id)arg3; ++ (void)_mailApplicationDidFinishLaunching:(id)arg1; ++ (void)configureFetchFrequencyPopUp:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (BOOL)fontManager:(id)arg1 willIncludeFont:(id)arg2; +- (unsigned long long)validModesForFontPanel:(id)arg1; +- (void)changeFont:(id)arg1; +- (id)windowTitle; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailScroller.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailScroller.h new file mode 100644 index 00000000..c3824114 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailScroller.h @@ -0,0 +1,53 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScroller.h" + +@class NSImage; + +@interface MailScroller : NSScroller +{ + BOOL _isVertical; + NSImage *_paddingImage; + NSImage *_hiddenImage; + NSImage *_slotStartImage; + NSImage *_slotMiddleImage; + NSImage *_slotEndImage; + NSImage *_knobStartImage; + NSImage *_knobMiddleImage; + NSImage *_knobEndImage; + double _startPadding; + double _endPadding; +} + +@property BOOL isVertical; // @synthesize isVertical=_isVertical; +@property double endPadding; // @synthesize endPadding=_endPadding; +@property double startPadding; // @synthesize startPadding=_startPadding; +@property(retain) NSImage *knobEndImage; // @synthesize knobEndImage=_knobEndImage; +@property(retain) NSImage *knobMiddleImage; // @synthesize knobMiddleImage=_knobMiddleImage; +@property(retain) NSImage *knobStartImage; // @synthesize knobStartImage=_knobStartImage; +@property(retain) NSImage *slotEndImage; // @synthesize slotEndImage=_slotEndImage; +@property(retain) NSImage *slotMiddleImage; // @synthesize slotMiddleImage=_slotMiddleImage; +@property(retain) NSImage *slotStartImage; // @synthesize slotStartImage=_slotStartImage; +@property(retain) NSImage *hiddenImage; // @synthesize hiddenImage=_hiddenImage; +@property(retain) NSImage *paddingImage; // @synthesize paddingImage=_paddingImage; +- (BOOL)isOpaque; +- (void)setImagesFlipped:(BOOL)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (void)drawImage:(id)arg1 asPart:(int)arg2 withDirtyRect:(struct CGRect)arg3; +- (BOOL)isUseful; +- (struct CGRect)rectForPart:(unsigned long long)arg1; +- (struct CGRect)_drawingRectForPart:(unsigned long long)arg1; +- (struct CGRect)_drawingRectForCustomPart:(int)arg1; +- (double)_getLengthFromImage:(id)arg1; +- (double)_getLengthFromSize:(struct CGSize)arg1; +- (struct CGRect)_rectWithRect:(struct CGRect)arg1 offset:(double)arg2 length:(double)arg3; +- (void)dealloc; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithFrame:(struct CGRect)arg1 isVertical:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailSearchCriteriaHelper.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailSearchCriteriaHelper.h new file mode 100644 index 00000000..c495275e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailSearchCriteriaHelper.h @@ -0,0 +1,30 @@ +/* + * 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" + +@interface MailSearchCriteriaHelper : NSObject +{ +} + ++ (id)compoundCriterionWithCriterion:(id)arg1 andAnyDateMatchingQuery:(id)arg2; ++ (id)criterionForAttachmentNameContainsString:(id)arg1; ++ (id)criterionForDateWithin:(id)arg1 and:(id)arg2 withType:(long long)arg3; ++ (id)textSearchCriterionForSearchField:(long long)arg1 queryString:(id)arg2 includeDateTextualRepresentations:(BOOL)arg3 exactMatch:(BOOL)arg4; ++ (id)criterionForMailboxSuggestion:(id)arg1 forSavedSearch:(BOOL)arg2; ++ (id)criterionForMailFlagColorSuggestion:(id)arg1; ++ (id)criterionForPrioritySuggestion:(id)arg1; ++ (id)criterionForAttachmentNameContainsSuggestion:(id)arg1 forSavedSearch:(BOOL)arg2; ++ (id)criterionForMessageHasAttachment; ++ (id)criterionForMailStatusSuggestion:(id)arg1; ++ (id)criterionForDateSuggestion:(id)arg1; ++ (id)mailboxSearchCriterionForScope:(int)arg1 inMessageMall:(id)arg2; ++ (id)_mailboxSearchCriterionForMailboxes:(id)arg1; ++ (id)criterionForSuggestion:(id)arg1 forSavedSearch:(BOOL)arg2; ++ (id)criterionForSuggestions:(id)arg1 scope:(int)arg2 inMessageMall:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailSearchScopeView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailSearchScopeView.h new file mode 100644 index 00000000..c9ccef34 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailSearchScopeView.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class MailBarContainerButton, MailBarContainerView, NSTextField; + +@interface MailSearchScopeView : NSView +{ + NSTextField *_searchLabel; + MailBarContainerView *_mailBarContainerView; + MailBarContainerButton *_allButton; + MailBarContainerButton *_extraButton; +} + +@property(readonly, nonatomic) MailBarContainerButton *extraButton; // @synthesize extraButton=_extraButton; +@property(readonly, nonatomic) MailBarContainerButton *allButton; // @synthesize allButton=_allButton; +@property(nonatomic) MailBarContainerView *mailBarContainerView; // @synthesize mailBarContainerView=_mailBarContainerView; +- (void)scopeButtonClicked:(id)arg1; +- (void)addExtraButtonTitle:(id)arg1; +- (double)searchScopeViewWidth; +- (BOOL)isFlipped; +- (void)dealloc; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailSplitView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailSplitView.h new file mode 100644 index 00000000..3b48d3a1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailSplitView.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSplitView.h" + +@class NSString; + +@interface MailSplitView : NSSplitView +{ + long long _dividerToolTipTag; + NSString *_toolTipString; + BOOL _isDividerHidden; + NSString *_oldAutosaveName; +} + +@property(nonatomic) BOOL isDividerHidden; // @synthesize isDividerHidden=_isDividerHidden; +@property(copy, nonatomic) NSString *oldAutosaveName; // @synthesize oldAutosaveName=_oldAutosaveName; +- (double)dividerThickness; +- (struct CGRect)_dividerRect; +- (void)setDividerToolTip:(id)arg1; +- (BOOL)isFirstViewVisible; +- (BOOL)isSecondViewVisible; +- (BOOL)_isSubviewAtIndexVisible:(unsigned long long)arg1; +- (id)accessibilityAttributeValue:(id)arg1; +- (void)setAutosaveName:(id)arg1; +- (void)windowLayoutDidExitFullScreen:(id)arg1; +- (void)windowLayoutWillExitFullScreen:(id)arg1; +- (void)windowLayoutDidEnterFullScreen:(id)arg1; +- (void)windowLayoutWillEnterFullScreen:(id)arg1; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailStackViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailStackViewController.h new file mode 100644 index 00000000..43c7eea4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailStackViewController.h @@ -0,0 +1,62 @@ +/* + * 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 "StackDataSource.h" +#import "StackDelegate.h" + +@class CALayer, NSArray, NSImage, NSMutableDictionary, NSMutableSet, NSView, StackContainerView, StackController; + +@interface MailStackViewController : NSObject +{ + NSView *_containerView; + StackContainerView *_stackContainerView; + CALayer *_stackContainerLayer; + StackController *_stackController; + NSMutableDictionary *_messageViewControllers; + NSMutableDictionary *_messageLayers; + NSMutableSet *_snapshotWindows; + BOOL _performingAsynchronousAnimation; + NSArray *_messages; + NSImage *_topLayerSnapshot; +} + +@property(retain, nonatomic) NSImage *topLayerSnapshot; // @synthesize topLayerSnapshot=_topLayerSnapshot; +@property(nonatomic) BOOL performingAsynchronousAnimation; // @synthesize performingAsynchronousAnimation=_performingAsynchronousAnimation; +@property(retain, nonatomic) NSArray *messages; // @synthesize messages=_messages; +- (void)stackController:(id)arg1 willRemoveLayerForItem:(id)arg2; +- (void)stackController:(id)arg1 willDisplayLayer:(id)arg2 forItem:(id)arg3; +- (void)stackController:(id)arg1 willStackLayer:(id)arg2 forItem:(id)arg3; +- (void)stackControllerDidStopStackingLayers:(id)arg1; +- (void)stackControllerWillStartStackingLayers:(id)arg1; +- (void)stackController:(id)arg1 loadDataForItem:(id)arg2 inLayer:(id)arg3; +- (BOOL)stackController:(id)arg1 isDataLoadedForItem:(id)arg2 inLayer:(id)arg3; +- (id)stackController:(id)arg1 layerForItem:(id)arg2; +- (id)stackContainerLayerForStackController:(id)arg1; +- (id)stackContainerView; +- (void)updateDisplayForSelectedMessages:(id)arg1; +- (id)_stackControllerCreateIfNeeded:(BOOL)arg1; +- (void)_abortAnimations; +- (void)mui_prepareToLayoutSynchronously:(id)arg1; +- (void)mui_performAnimation; +- (void)mui_prepareToAnimate:(id)arg1; +- (void)_viewDidEndLiveResize:(id)arg1; +- (void)_viewFrameDidChange:(id)arg1; +- (void)_resizeMessageViewWithID:(id)arg1 toSize:(struct CGSize)arg2 animating:(BOOL)arg3; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_takeSnapshotOfMessageViewForController:(id)arg1 completionHandler:(id)arg2; +- (void)_removeMessageViewForItem:(id)arg1; +- (id)_messageViewForItem:(id)arg1 createIfNeeded:(BOOL)arg2; +- (void)_detachMessageViewFromIndividualWindow:(id)arg1; +- (void)_attachMessageViewToIndividualWindow:(id)arg1; +- (void)setStackVisible:(BOOL)arg1 animates:(BOOL)arg2; +- (id)stackSnapshot; +- (void)dealloc; +- (id)initWithContainerView:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailStackViewDragController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailStackViewDragController.h new file mode 100644 index 00000000..4da0d1ef --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailStackViewDragController.h @@ -0,0 +1,47 @@ +/* + * 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" + +@class CALayer, MailStackViewController, NSImage, NSWindow; + +@interface MailStackViewDragController : NSObject +{ + MailStackViewController *_controller; + NSWindow *_dragWindow; + NSImage *_sourceImage; + NSImage *_destinationImage; + CALayer *_dragLayer; + struct CGPoint _sourcePoint; + struct CGRect _sourceRect; + unsigned long long _dragPositionState; + unsigned long long _dragImageState; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)_morphIntoDragBadge; +- (void)_morphIntoStack; +- (void)_returnLayerToOriginalPosition; +- (void)_centerLayer; +- (struct CGRect)_rectForCenteringTheStack; +- (struct CGPoint)_dragLayerPositionAtDragPoint:(struct CGPoint)arg1; +- (struct CGRect)_dragLayerSourceFrame; +- (struct CGPoint)_dragLayerSourceAnchorPoint; +- (void)_cleanUpController; +- (void)dragCompletedAtPoint:(struct CGPoint)arg1 forCopy:(BOOL)arg2; +- (void)dragCancelledAtPoint:(struct CGPoint)arg1; +- (void)dragMovedToPoint:(struct CGPoint)arg1; +- (void)startDragWithController:(id)arg1 sourceImage:(id)arg2 destinationImage:(id)arg3 sourcePoint:(struct CGPoint)arg4 sourceRect:(struct CGRect)arg5; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailTableView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailTableView.h new file mode 100644 index 00000000..19087c97 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailTableView.h @@ -0,0 +1,89 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableView.h" + +#import "NSScrollViewDelegate.h" + +@interface MailTableView : NSTableView +{ + struct { + unsigned int delegateProvidesDragImage:1; + unsigned int delegateDoesCommandBySelector:1; + unsigned int delegateDragWillEndOperation:1; + unsigned int delegateDraggedImageMovedTo:1; + unsigned int delegateProvidesBackgroundShadedRegions:1; + unsigned int delegateProvidesHighlightStyle:1; + unsigned int delegateRespondsToWillDrawRowsInRange:1; + unsigned int delegateApprovesScrolling:1; + unsigned int delegateRespondsToGotEvent:1; + unsigned int delegateRespondsToMouseDown:1; + unsigned int delegateRespondsToWillMoveToWindow:1; + unsigned int delegateRespondsToDidMoveToWindow:1; + unsigned int delegateRespondsToWillStartLiveResize:1; + unsigned int delegateRespondsToDidEndLiveResize:1; + unsigned int delegateRespondsToDidBecomeFirstResponder:1; + unsigned int delegateRespondsToDidResignFirstResponder:1; + unsigned int delegateRespondsToTopLineColor:1; + unsigned int delegateApprovesRemoveColumn:1; + unsigned int delegateApprovesAddColumn:1; + } _extendedTableViewFlags; + long long _mfClickedRow; + BOOL _didLazyLoadMenu; + BOOL _keyEventHandled; +} + +@property BOOL keyEventHandled; // @synthesize keyEventHandled=_keyEventHandled; +- (BOOL)isRichTableView; +- (void)scrollRowToVisible:(long long)arg1 position:(int)arg2; +- (void)showSelectionAndCenter:(BOOL)arg1; +- (BOOL)isSelectionVisible; +- (long long)lastSelectedRow; +- (long long)firstSelectedRow; +- (BOOL)resignFirstResponder; +- (BOOL)becomeFirstResponder; +- (void)viewDidMoveToWindow; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)_postEventNotification:(id)arg1 fromCell:(id)arg2; +- (void)mouseUp:(id)arg1; +- (void)_logSpotlightInfoForClickedMessage; +- (void)mouseDown:(id)arg1; +- (void)_setMFClickedRow:(long long)arg1; +- (long long)clickedRow; +- (void)drawGridInClipRect:(struct CGRect)arg1; +- (void)drawRow:(long long)arg1 clipRect:(struct CGRect)arg2; +- (void)drawRect:(struct CGRect)arg1; +- (void)drawBackgroundInClipRect:(struct CGRect)arg1; +- (void)_colorizeRow:(long long)arg1 inRect:(struct CGRect)arg2 clipRect:(struct CGRect)arg3; +- (void)_highlightRect:(struct CGRect)arg1 withColor:(id)arg2 usingStyle:(int)arg3; +- (BOOL)shouldUseSecondaryHighlightColor; +- (void)draggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; +- (void)draggedImage:(id)arg1 endedAt:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (id)dragImageForRowsWithIndexes:(id)arg1 tableColumns:(id)arg2 event:(id)arg3 offset:(struct CGPoint *)arg4; +- (void)addTableColumn:(id)arg1; +- (void)removeTableColumn:(id)arg1; +- (void)moveColumn:(long long)arg1 toColumn:(long long)arg2; +- (void)setTableColumn:(id)arg1 toVisible:(BOOL)arg2 atPosition:(long long)arg3; +- (void)scrollRowToVisible:(long long)arg1; +- (void)showTableColumnsFromArray:(id)arg1 allColumns:(id)arg2; +- (void)drawBackgroundOverhangInRect:(struct CGRect)arg1; +- (id)menu; +- (void)setDelegate:(id)arg1; +- (void)keyDown:(id)arg1; +- (void)insertText:(id)arg1; +- (void)doCommandBySelector:(SEL)arg1; +- (void)viewDidEndLiveResize; +- (void)viewWillStartLiveResize; +- (void)dealloc; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)_mailTableViewCommonInit; +- (id)menuForEvent:(id)arg1; +- (id)_extendedDelegate; +- (BOOL)isOpaque; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailTableViewDelegateDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailTableViewDelegateDelegate-Protocol.h new file mode 100644 index 00000000..1158a34b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailTableViewDelegateDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol MailTableViewDelegateDelegate + +@optional +- (id)tableHeaderViewGetDefaultMenu:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailTimeMachineController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailTimeMachineController.h new file mode 100644 index 00000000..53fc2d01 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailTimeMachineController.h @@ -0,0 +1,56 @@ +/* + * 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 "MVTerminationHandler.h" + +@class MessageViewer, NSTimer; + +@interface MailTimeMachineController : NSObject +{ + MessageViewer *_messageViewer; + BOOL _savingTOC; + struct CGRect _orignalMailWindowFrame; + id _tableOfContentsSaveLock; + NSTimer *_tableOfContentsSaveTimer; +} + ++ (id)sharedController; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)relinquishTimeMachineAccess; +- (void)exitTimeMachine; +- (void)prepareToExitTimeMachineModeWithDisplayState:(id)arg1; +- (void)enterTimeMachineMode; +- (void)finishedEnteringTM; +- (BOOL)_launchTimeMachineHelperApp; +- (id)_mailTimeMachineDescriptionForMessage:(id)arg1 withColumns:(id)arg2 andMall:(id)arg3 selected:(BOOL)arg4; +- (void)_threadedSaveTableOfContentsWithEndedSelector:(SEL)arg1; +- (BOOL)_timingOutSaveTableOfContents; +- (void)_threadedSaveTableOfContentsEnded:(id)arg1; +- (void)_thread_saveTableOfContents:(id)arg1; +- (void)_saveTableOfContents; +- (void)_approvedQuit; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)unregisterTimeMachineHandlers; +- (void)registerTimeMachineHandlers; +- (void)disableTableOfContentsSaveTimer:(BOOL)arg1; +- (void)_setTableOfContentsTimer:(id)arg1; +- (void)_setTableOfContentsIsValid:(BOOL)arg1; +- (void)forceSaveTableOfContentsNow; +- (void)saveTableOfContents; +- (void)_invalidateTableOfContents:(id)arg1; +- (void)_invalidateTableOfContentsAndBackupManager:(id)arg1; +- (void)registerNotificationHandlers; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailToCommand.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailToCommand.h new file mode 100644 index 00000000..2b5f8917 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailToCommand.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScriptCommand.h" + +@interface MailToCommand : NSScriptCommand +{ +} + +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailToolbar.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailToolbar.h new file mode 100644 index 00000000..15c24ccc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailToolbar.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbar.h" + +@interface MailToolbar : NSToolbar +{ + unsigned long long _previousDisplayMode; + long long _temporaryItemTag; + BOOL _stateIsTemporary; + BOOL _previousVisible; + BOOL _neverShowsBaselineSeparator; + BOOL _frozen; +} + ++ (void)upgradeToolbarWithIdentifier:(id)arg1 toDisplayMode:(unsigned long long)arg2; ++ (void)upgradeToolbarWithIdentifier:(id)arg1 usingBlock:(id)arg2; ++ (id)_plistForToolbarWithIdentifier:(id)arg1; +- (void)validateVisibleItems; +- (void)unfreeze; +- (void)freeze; +- (void)setNeverShowsBaselineSeparator:(BOOL)arg1; +- (void)setShowsBaselineSeparator:(BOOL)arg1; +- (BOOL)showsBaselineSeparator; +- (void)removeItemAtIndex:(long long)arg1; +- (void)insertItemWithItemIdentifier:(id)arg1 atIndex:(long long)arg2; +- (void)setVisible:(BOOL)arg1; +- (void)setDisplayMode:(unsigned long long)arg1; +- (void)revertTemporaryStateIfAny; +- (void)setTemporaryDisplayMode:(unsigned long long)arg1 visible:(BOOL)arg2 requiredItemTag:(long long)arg3 identifier:(id)arg4; +- (id)_customMetrics; +- (BOOL)_allowsSizeMode:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailToolbarBaselineView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailToolbarBaselineView.h new file mode 100644 index 00000000..fe4b074b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailToolbarBaselineView.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface MailToolbarBaselineView : NSView +{ +} + +- (void)_mainStatusDidChange:(id)arg1; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailToolbarSpaceItemWithPin.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailToolbarSpaceItemWithPin.h new file mode 100644 index 00000000..b532b2d7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailToolbarSpaceItemWithPin.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@class NSView; + +@interface MailToolbarSpaceItemWithPin : NSToolbarItem +{ + NSView *_pin; +} + ++ (id)itemIdentifier; +- (void)updateWidth; +- (void)_pinViewFrameChanged; +- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; +- (void)_updateSizeForDisplayMode:(unsigned long long)arg1; +- (BOOL)allowsDuplicatesInToolbar; +- (BOOL)_hasContents; +- (BOOL)_emptyContents; +- (BOOL)_needsRedisplayWhenBeginningToolbarEditing; +- (BOOL)wantsToDrawIconIntoLabelAreaInDisplayMode:(unsigned long long)arg1; +- (BOOL)wantsToDrawLabelInDisplayMode:(unsigned long long)arg1; +- (BOOL)wantsToDrawIconInDisplayMode:(unsigned long long)arg1; +- (BOOL)isSeparatorItem; +- (id)menuFormRepresentation; +- (void)dealloc; +- (id)init; +- (id)initWithItemIdentifier:(id)arg1; +- (id)initWithPin:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailUsageStatistics.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailUsageStatistics.h new file mode 100644 index 00000000..468ce2a7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailUsageStatistics.h @@ -0,0 +1,22 @@ +/* + * 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" + +@interface MailUsageStatistics : NSObject +{ +} + ++ (void)_messageTracePreferences; ++ (void)_messageTraceUsage; ++ (void)_messageTraceAccounts; ++ (void)_messageTraceFullScreen:(id)arg1; ++ (void)_startFullScreenMessageTracerTimer; ++ (void)_messageTrace:(id)arg1; ++ (void)startMessageTracing; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailWebAttachment.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailWebAttachment.h new file mode 100644 index 00000000..ad8b6215 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailWebAttachment.h @@ -0,0 +1,48 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MUIWebAttachment.h" + +@class MCAttachment, MCMessage, NSURL; + +@interface MailWebAttachment : MUIWebAttachment +{ + MCAttachment *_backingAttachment; + MCMessage *_parentMessage; + NSURL *_mailDownloadsFileURL; + id _downloadCompletionBlock; +} + ++ (id)keyPathsForValuesAffectingIsDataDownloaded; +@property(copy) id downloadCompletionBlock; // @synthesize downloadCompletionBlock=_downloadCompletionBlock; +@property(retain) NSURL *mailDownloadsFileURL; // @synthesize mailDownloadsFileURL=_mailDownloadsFileURL; +@property MCMessage *parentMessage; // @synthesize parentMessage=_parentMessage; +@property(retain, nonatomic) MCAttachment *backingAttachment; // @synthesize backingAttachment=_backingAttachment; +- (BOOL)isStationeryAttachment; +- (BOOL)isAutoArchiveAttachment; +- (void)_addPrivateAttributes:(id)arg1; +- (void)startDownloadingIfNeededWithProgress:(id)arg1 completionBlock:(id)arg2; +- (id)downloadProgress; +- (BOOL)shouldAlwaysAutomaticallyDownload; +- (BOOL)isDataDownloaded; +- (id)downloadDirectory; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)writeToURL:(id)arg1; +- (id)fileURL; +- (id)filename; +- (unsigned long long)fileSize; +- (id)mimeType; +- (id)iconImage; +- (id)fileWrapper; +- (BOOL)conformsToProtocol:(id)arg1; +- (void)dealloc; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithFileWrapper:(id)arg1; +- (id)initWithMCAttachment:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailWebViewEditor.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailWebViewEditor.h new file mode 100644 index 00000000..a394ef28 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailWebViewEditor.h @@ -0,0 +1,61 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebViewEditor.h" + +#import "DOMEventListener.h" + +@class DOMNode, NSArray, NSMutableArray; + +@interface MailWebViewEditor : WebViewEditor +{ + BOOL _needToFinishMakingPlainAfterRemovingStationery; + NSMutableArray *_uneditedEditableElements; + NSMutableArray *_editedEditableElements; + DOMNode *_editableElementWithMouseDown; + BOOL _shouldAttachFilesAtEnd; + BOOL _isDeletingAllEncompassingSelection; + NSArray *_backgroundTilingElements; + NSArray *_backgroundTilingDivs; + NSArray *_backgroundTilingFixedSizes; +} + +@property(retain) NSArray *backgroundTilingFixedSizes; // @synthesize backgroundTilingFixedSizes=_backgroundTilingFixedSizes; +@property(retain) NSArray *backgroundTilingDivs; // @synthesize backgroundTilingDivs=_backgroundTilingDivs; +@property(retain) NSArray *backgroundTilingElements; // @synthesize backgroundTilingElements=_backgroundTilingElements; +- (void)changeDocumentBackgroundColor:(id)arg1; +- (void)webView:(id)arg1 didWriteSelectionToPasteboard:(id)arg2; +- (BOOL)insertNewline:(id)arg1; +- (BOOL)webView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (void)webViewDidChangeSelection:(id)arg1; +- (id)replaceOldSignatureWithNewSignature:(id)arg1; +- (void)webViewDidChange:(id)arg1; +- (void)mouseUpDidHappen:(id)arg1 inWebView:(id)arg2; +- (void)mouseDownDidHappen:(id)arg1 inWebView:(id)arg2; +- (id)editedEditableElements; +- (void)_doOrUndoEditingInSignatureWithInfo:(id)arg1; +- (void)handleEvent:(id)arg1; +- (void)_stationeryDidFinishLoadingResources:(id)arg1; +- (void)_webViewDidLoadStationery:(id)arg1; +- (void)prepareToRemoveStationery; +- (BOOL)webView:(id)arg1 canInsertFromPasteboard:(id)arg2 forDrag:(BOOL)arg3; +- (void)insertAttributedStringOfAttachments:(id)arg1 allAttachmentsAreOkay:(BOOL)arg2; +- (BOOL)_isOkayToInsertAttachment:(id)arg1; +- (void)_insertAttributedStringOfAttachments:(id)arg1 allAttachmentsAreOkay:(BOOL)arg2; +@property(nonatomic) BOOL shouldAttachFilesAtEnd; +- (BOOL)isOkayToLoadStationery; +- (BOOL)webView:(id)arg1 shouldInsertAttachments:(id)arg2 context:(id)arg3; +- (id)alertForConvertingToRichText; +- (void)setAllowsRichText:(BOOL)arg1; +- (BOOL)allowQuoting; +- (void)setBackEnd:(id)arg1; +- (void)setUp; +- (void)dealloc; +- (void)prepareToGoAway; +@property(readonly) NSArray *insertablePasteboardTypes; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailWindowShadowLayer.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailWindowShadowLayer.h new file mode 100644 index 00000000..1ec9e9fa --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailWindowShadowLayer.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "CALayer.h" + +@interface MailWindowShadowLayer : CALayer +{ + CALayer *_topShadow; + CALayer *_bottomShadow; + CALayer *_leftShadow; + CALayer *_rightShadow; + CALayer *_topRightShadow; + CALayer *_topLeftShadow; + CALayer *_bottomRightShadow; + CALayer *_bottomLeftShadow; + unsigned long long _shadowType; + struct CGSize _animationStartSize; + struct CGSize _animationEndSize; +} + +- (id)_shadowImageForShadowPart:(unsigned long long)arg1; +- (double)_rightMargin; +- (double)_leftMargin; +- (double)_bottomMargin; +- (double)_topMargin; +- (void)animateShadowByGrowing:(BOOL)arg1; +- (void)dealloc; +- (id)initWithStartSize:(struct CGSize)arg1 endSize:(struct CGSize)arg2 shadowType:(unsigned long long)arg3; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxBadgeCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxBadgeCell.h new file mode 100644 index 00000000..c940a0db --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxBadgeCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface MailboxBadgeCell : NSButtonCell +{ +} + +- (id)accessibilityAttributeValue:(id)arg1; +- (struct CGSize)cellSizeForBounds:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxBadgeView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxBadgeView.h new file mode 100644 index 00000000..b1e64fab --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxBadgeView.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface MailboxBadgeView : NSButton +{ +} + ++ (Class)cellClass; +- (BOOL)shouldSetFontSmoothingBackgroundColor; +- (id)hitTest:(struct CGPoint)arg1; +- (void)_mailboxBadgeViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxIndicatorCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxIndicatorCell.h new file mode 100644 index 00000000..02a567ca --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxIndicatorCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface MailboxIndicatorCell : NSButtonCell +{ +} + +- (struct CGSize)cellSizeForBounds:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxIndicatorView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxIndicatorView.h new file mode 100644 index 00000000..f613f1c9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxIndicatorView.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface MailboxIndicatorView : NSButton +{ +} + ++ (Class)cellClass; +- (void)_mailboxIndicatorViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineItemController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineItemController.h new file mode 100644 index 00000000..5a522d38 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineItemController.h @@ -0,0 +1,51 @@ +/* + * 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 "MailboxOutlineItemViewDelegate.h" +#import "MailboxTextFieldDelegate.h" + +@class MailboxOutlineItemView, NSObject; + +@interface MailboxOutlineItemController : NSObject +{ + MailboxOutlineItemView *_view; + id _item; + NSObject *_delegate; +} + +@property NSObject *delegate; // @synthesize delegate=_delegate; +- (id)mailboxOutlineItemViewShouldDisplayImage:(id)arg1; +- (void)mailboxTextFieldEndedEditingSession; +- (void)mailboxTextFieldBeganEditingSession; +- (long long)_alertState; +- (void)updateAlertState; +- (BOOL)_shouldShowBadge; +- (BOOL)_shouldShowProgressIndicator; +- (void)_updateProgressIndicator; +- (BOOL)_isEditing; +- (void)_updateBadgeAnimated:(BOOL)arg1; +- (void)_updateImage; +- (unsigned long long)_iconStyle; +- (unsigned long long)_iconSize; +- (void)_updateValuesForBasicSection; +- (void)_updateValuesForAccount; +- (void)_updateValuesForMailbox; +- (void)updateBadgeCountAnimated:(BOOL)arg1; +- (void)updateAllValues; +- (id)_sectionDisplayName; +- (id)_account; +- (id)_mailbox; +@property id item; +- (void)_connectView:(id)arg1; +- (void)_disconnectView:(id)arg1; +@property MailboxOutlineItemView *view; +- (id)debugDescription; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineItemControllerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineItemControllerDelegate-Protocol.h new file mode 100644 index 00000000..5e83e772 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineItemControllerDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MailboxOutlineItemControllerDelegate +- (void)mailbox:(id)arg1 nameUpdated:(id)arg2; +- (unsigned long long)badgeCountForItem:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineItemView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineItemView.h new file mode 100644 index 00000000..ed0ccc0c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineItemView.h @@ -0,0 +1,50 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableCellView.h" + +#import "NSTextFieldDelegate.h" + +@class MailboxBadgeView, NSButton, NSObject; + +@interface MailboxOutlineItemView : NSTableCellView +{ + MailboxBadgeView *_badgeView; + NSObject *_delegate; + NSButton *_indicatorView; +} + +@property(nonatomic) NSButton *indicatorView; // @synthesize indicatorView=_indicatorView; +@property(nonatomic) NSObject *delegate; // @synthesize delegate=_delegate; +@property(nonatomic) MailboxBadgeView *badgeView; // @synthesize badgeView=_badgeView; +- (void)viewWillDraw; +- (void)_layoutAuxiliaryViews; +- (void)_layoutAuxiliaryViewsForcingBadge:(BOOL)arg1 forcingIndicator:(BOOL)arg2; +- (struct CGRect)_layoutText:(struct CGRect *)arg1 isRTL:(BOOL)arg2; +- (struct CGRect)_layoutIndicator:(struct CGRect *)arg1 force:(BOOL)arg2 isRTL:(BOOL)arg3; +- (struct CGRect)_leftAlignAndVerticallyCenterRect:(struct CGRect)arg1 inRect:(struct CGRect)arg2; +- (struct CGRect)_rightAlignAndVerticallyCenterRect:(struct CGRect)arg1 inRect:(struct CGRect)arg2; +- (struct CGRect)_layoutBadge:(struct CGRect *)arg1 force:(BOOL)arg2 isRTL:(BOOL)arg3; +- (void)setUserInterfaceLayoutDirection:(long long)arg1; +- (void)setObjectValue:(id)arg1; +- (void)setBackgroundStyle:(long long)arg1; +- (id)menuForEvent:(id)arg1; +@property(readonly, nonatomic) double idealWidth; +- (void)setAlertTarget:(id)arg1; +- (void)setAlertAction:(SEL)arg1; +- (void)setRowSizeStyle:(long long)arg1; +- (void)showAlertIndicator:(BOOL)arg1 withState:(long long)arg2; +- (void)showBadge:(BOOL)arg1 withCount:(unsigned long long)arg2 animated:(BOOL)arg3; +- (void)_updateImage; +- (void)_windowKeyStateChanged:(id)arg1; +- (void)dealloc; +- (void)prepareForReuse; +- (void)_mailboxOutlineItemViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineItemViewDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineItemViewDelegate-Protocol.h new file mode 100644 index 00000000..c6963fad --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineItemViewDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol MailboxOutlineItemViewDelegate +- (id)mailboxOutlineItemViewShouldDisplayImage:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineRowView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineRowView.h new file mode 100644 index 00000000..0fc1ff05 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxOutlineRowView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableRowView.h" + +@interface MailboxOutlineRowView : NSTableRowView +{ +} + +- (BOOL)shouldSetFontSmoothingBackgroundColor; +- (void)didAddSubview:(id)arg1; +- (void)_mailboxOutlineRowViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxPaneBottomShadowView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxPaneBottomShadowView.h new file mode 100644 index 00000000..79c3fe06 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxPaneBottomShadowView.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSOutlineView; + +@interface MailboxPaneBottomShadowView : NSView +{ + NSOutlineView *_outlineView; +} + +@property(retain, nonatomic) NSOutlineView *outlineView; // @synthesize outlineView=_outlineView; +- (void)updateLayer; +- (id)shadowImage; +- (void)viewDidMoveToWindow; +- (void)dealloc; +- (void)windowKeyStateDidChange:(id)arg1; +- (BOOL)wantsUpdateLayer; +- (void)_mailboxPaneBottomShadowViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxTextField.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxTextField.h new file mode 100644 index 00000000..a5e8f69f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxTextField.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextField.h" + +@interface MailboxTextField : NSTextField +{ +} + +- (BOOL)canBecomeKeyView; +- (void)textDidEndEditing:(id)arg1; +- (BOOL)becomeFirstResponder; +- (BOOL)acceptsFirstResponder; +- (void)_mailboxTextFieldCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxTextFieldDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxTextFieldDelegate-Protocol.h new file mode 100644 index 00000000..d4dfd114 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxTextFieldDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldDelegate.h" + +@protocol MailboxTextFieldDelegate + +@optional +- (void)mailboxTextFieldEndedEditingSession; +- (void)mailboxTextFieldBeganEditingSession; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesChooser.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesChooser.h new file mode 100644 index 00000000..d82382a5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesChooser.h @@ -0,0 +1,53 @@ +/* + * 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 "NSMenuDelegate.h" + +@class NSArray, NSMenu, NSMutableSet, NSPopUpButton; + +@interface MailboxesChooser : NSObject +{ + NSMenu *_rootMenu; + NSPopUpButton *_popUpButton; + id _selectedItem; + NSMutableSet *_updatedMenus; + BOOL _useSelection; + id _includeMailboxCondition; + id _enableMailboxCondition; + id _target; + SEL _action; + NSArray *_additionalItems; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +@property(retain, nonatomic) NSArray *additionalItems; // @synthesize additionalItems=_additionalItems; +@property(nonatomic) SEL action; // @synthesize action=_action; +@property(nonatomic) id target; // @synthesize target=_target; +@property(copy, nonatomic) id enableMailboxCondition; // @synthesize enableMailboxCondition=_enableMailboxCondition; +@property(copy, nonatomic) id includeMailboxCondition; // @synthesize includeMailboxCondition=_includeMailboxCondition; +- (void)menuDidClose:(id)arg1; +- (void)_popUpAction:(id)arg1; +- (void)refresh; +- (void)menuNeedsUpdate:(id)arg1; +- (void)_outlineViewStateDidChange:(id)arg1; +- (void)_invalidateUpdatedMenus:(id)arg1; +- (void)invalidateUpdatedMenus; +- (void)_addMenuItemsForItems:(id)arg1 toMenu:(id)arg2 withIndentationLevel:(long long)arg3 initialSeparatorItem:(BOOL)arg4; +- (id)_menuItemForItem:(id)arg1 indentationLevel:(long long)arg2; +@property(retain, nonatomic) id selectedItem; +@property(nonatomic) NSPopUpButton *popUpButton; +@property(nonatomic) NSMenu *rootMenu; +- (void)_setupPopUpButton; +- (void)_mailboxesChooserCommonInitWithSelection:(BOOL)arg1; +- (void)dealloc; +- (void)awakeFromNib; +- (id)initWithSelection:(BOOL)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesController.h new file mode 100644 index 00000000..6e36b1e5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesController.h @@ -0,0 +1,132 @@ +/* + * 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 "MCActivityTarget.h" +#import "MVTerminationHandler.h" +#import "NSMenuDelegate.h" + +@class MFMailbox, MailboxesChooser, NSArray, NSButton, NSConditionLock, NSMutableDictionary, NSMutableSet, NSPopUpButton, NSTextField, NSView, NSWindow; + +@interface MailboxesController : NSObject +{ + id _currentMailboxSelectionOwner; + BOOL _currentTransferIsCopy; + MFMailbox *_currentTransferMailbox; + NSConditionLock *_smartMailboxesNeedSavingLock; + MailboxesChooser *_menuMailboxesChooser; + NSMutableSet *_rootMailboxMenus; + NSMutableDictionary *_contextualMenus; + NSArray *_originalGlobalSortOrder; + NSWindow *_makeNewMailboxPanel; + NSTextField *_makeNewMailboxField; + NSTextField *_makeNewMailboxMessage; + NSButton *_makeNewMailboxOKButton; + NSPopUpButton *_makeNewMailboxPopUp; + MailboxesChooser *_makeNewMailboxChooser; + NSView *_exportChildrenView; + NSButton *_exportChildrenCheckbox; +} + ++ (id)_mergeOldMailUserInfoDictionary:(id)arg1 withSyncChanges:(id)arg2; ++ (id)_filteredMailUserInfoDictionary:(id)arg1; ++ (void)_createDownsizedImages; ++ (id)_imageNameForFlag:(BOOL)arg1 size:(unsigned long long)arg2 style:(unsigned long long)arg3; ++ (id)_iconForSmartMailboxWithSize:(unsigned long long)arg1 style:(unsigned long long)arg2; ++ (id)_iconForGenericMailboxWithSize:(unsigned long long)arg1 style:(unsigned long long)arg2; ++ (id)iconForMailbox:(id)arg1 size:(unsigned long long)arg2 style:(unsigned long long)arg3; +@property(nonatomic) NSButton *exportChildrenCheckbox; // @synthesize exportChildrenCheckbox=_exportChildrenCheckbox; +@property(retain, nonatomic) NSView *exportChildrenView; // @synthesize exportChildrenView=_exportChildrenView; +@property(retain, nonatomic) MailboxesChooser *makeNewMailboxChooser; // @synthesize makeNewMailboxChooser=_makeNewMailboxChooser; +@property(nonatomic) NSPopUpButton *makeNewMailboxPopUp; // @synthesize makeNewMailboxPopUp=_makeNewMailboxPopUp; +@property(nonatomic) NSButton *makeNewMailboxOKButton; // @synthesize makeNewMailboxOKButton=_makeNewMailboxOKButton; +@property(nonatomic) NSTextField *makeNewMailboxMessage; // @synthesize makeNewMailboxMessage=_makeNewMailboxMessage; +@property(nonatomic) NSTextField *makeNewMailboxField; // @synthesize makeNewMailboxField=_makeNewMailboxField; +@property(retain, nonatomic) NSWindow *makeNewMailboxPanel; // @synthesize makeNewMailboxPanel=_makeNewMailboxPanel; +- (id)_smartMailboxesFromDictionaryRepresentations:(id)arg1 andMergeOldUserInfoFromMailboxes:(BOOL)arg2; +- (void)_removeLocalProperties:(id)arg1 fromSmartMailboxes:(id)arg2; +- (id)_smartMailboxesDictionaryRepresentationsFilteredForSync:(BOOL)arg1 localProperties:(id *)arg2; +- (id)_loadDefaultSmartMailboxes; +- (void)_addLocalProperties:(id)arg1 toSmartMailboxes:(id)arg2; +- (id)_readSmartMailboxesFromDisk; +- (id)_sortMailboxesDictionaries:(id)arg1 withIdentifiers:(id)arg2; +- (id)_sortMailboxes:(id)arg1 withIdentifiers:(id)arg2; +- (void)_writeSmartMailboxesToDisk; +- (void)_writeSmartMailboxesToDiskWithDelay; +- (void)_setSmartMailboxesNeedSaving:(BOOL)arg1; +- (BOOL)_smartMailboxesNeedSaving; +- (void)_smartMailboxChanged:(id)arg1; +- (id)smartMailboxesPathForFile:(id)arg1; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (id)smartMailboxes; +- (void)loadSmartMailboxes; +- (void)addSmartMailboxFolder:(id)arg1; +- (void)smartMailboxWasEdited:(id)arg1; +- (void)tentativelyAddSmartMailbox:(id)arg1; +- (void)addSmartMailbox:(id)arg1 select:(BOOL)arg2; +- (BOOL)moveOrCopy:(id)arg1 smartMailboxes:(id)arg2 toIndex:(unsigned long long)arg3; +- (BOOL)copyMailboxes:(id)arg1 toParentMailbox:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)_synchronouslyCopyMailboxes:(id)arg1 toParent:(id)arg2 atIndex:(unsigned long long)arg3 originalParent:(id)arg4; +- (BOOL)moveMailboxes:(id)arg1 toParentMailbox:(id)arg2 atIndex:(unsigned long long)arg3; +- (BOOL)removeAccount:(id)arg1; +- (BOOL)moveAccount:(id)arg1 toAfterAccount:(id)arg2; +- (BOOL)menuHasKeyEquivalent:(id)arg1 forEvent:(id)arg2 target:(id *)arg3 action:(SEL *)arg4; +- (void)menuDidClose:(id)arg1; +- (void)menuWillOpen:(id)arg1; +- (void)menuNeedsUpdate:(id)arg1; +- (BOOL)_isCopyMenu:(id)arg1; +- (BOOL)_isMoveMenu:(id)arg1; +- (void)bringUpTransferMenu:(id)arg1; +- (void)cancelClicked:(id)arg1; +- (void)okClicked:(id)arg1; +- (void)controlTextDidChange:(id)arg1; +- (id)_unreadMessagesInMailbox:(id)arg1; +- (void)_asynchronouslyChangeReadFlag:(BOOL)arg1 forMessages:(id)arg2; +- (void)_changeReadFlag:(BOOL)arg1 forMessages:(id)arg2; +- (void)markAllAsRead:(id)arg1; +- (void)_gatherMessagesForFlagChange:(id)arg1; +- (void)setSpecialMailbox:(id)arg1; +- (void)exportMailbox:(id)arg1; +- (void)_exportMailboxes:(id)arg1 toDirectory:(id)arg2 includeChildren:(id)arg3; +- (void)_userEditedMailboxName:(id)arg1; +- (void)renameMailbox:(id)arg1; +- (void)_synchronouslySetName:(id)arg1 andParent:(id)arg2 forMailboxes:(id)arg3 insertionIndex:(unsigned long long)arg4; +- (void)_updateDisplayIndexesInParentMailbox:(id)arg1 byMovingMailboxes:(id)arg2 toIndex:(unsigned long long)arg3; +- (void)removeFromVIPSenders:(id)arg1; +- (void)deleteMailbox:(id)arg1; +- (void)_synchronouslyDeleteMailboxes:(id)arg1; +- (void)mailboxPopUpChanged:(id)arg1; +- (void)newGroup:(id)arg1; +- (void)newFolder:(id)arg1; +- (void)duplicateSmartMailbox:(id)arg1; +- (void)editSmartMailbox:(id)arg1; +- (void)newSmartMailbox:(id)arg1; +- (void)showOutOfOfficeSettings:(id)arg1; +- (void)newMailbox:(id)arg1; +- (void)_configureNewMailboxPanelForMailbox:(id)arg1; +- (void)_synchronouslyCreateNewMailboxWithName:(id)arg1 parent:(id)arg2; +- (BOOL)validateMenuItem:(id)arg1; +- (id)mailboxSelectionOwnerFromSender:(id)arg1; +- (void)resignMailboxSelectionOwnerFor:(id)arg1; +- (void)setMailboxSelectionOwnerFrom:(id)arg1; +- (id)mailboxSelectionOwner; +- (id)smartMailboxesSyncedFile; +- (BOOL)currentTransferDeletesOriginals; +- (id)currentTransferMailbox; +- (void)setCurrentTransferMailbox:(id)arg1 deletedOriginals:(BOOL)arg2; +- (void)saveDefaults; +- (void)readDefaults; +- (id)menuForMailbox:(id)arg1 isContextMenu:(BOOL)arg2; +- (void)dealloc; +- (void)awakeFromNib; +- (id)init; +- (id)previousMailboxIdentifiersOfType:(id)arg1 fromDictionary:(id)arg2; +- (id)previousVersionedSmartMailboxIdentifiersFromDictionary:(id)arg1; +- (id)previousSmartMailboxIdentifiersFromDictionary:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineView.h new file mode 100644 index 00000000..90b2fd4b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineView.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOutlineView.h" + +@interface MailboxesOutlineView : NSOutlineView +{ + BOOL _reloading; + BOOL _allowsSelectAll; + BOOL _showsUnnecessaryDisclosureTriangles; + BOOL _draggingIsBeingUpdated; +} + +@property(nonatomic) BOOL draggingIsBeingUpdated; // @synthesize draggingIsBeingUpdated=_draggingIsBeingUpdated; +@property(nonatomic) BOOL showsUnnecessaryDisclosureTriangles; // @synthesize showsUnnecessaryDisclosureTriangles=_showsUnnecessaryDisclosureTriangles; +@property(nonatomic) BOOL allowsSelectAll; // @synthesize allowsSelectAll=_allowsSelectAll; +- (id)dragImageForRowsWithIndexes:(id)arg1 tableColumns:(id)arg2 event:(id)arg3 offset:(struct CGPoint *)arg4; +- (unsigned long long)draggingUpdated:(id)arg1; +- (void)reloadItem:(id)arg1; +- (void)reloadData; +- (void)noteNumberOfRowsChanged; +- (void)_didReload; +- (void)_triggerReloadNotification; +- (void)_willReload; +- (BOOL)inLiveResize; +- (BOOL)shouldCollapseAutoExpandedItemsForDeposited:(BOOL)arg1; +- (id)menu; +- (void)selectAll:(id)arg1; +- (BOOL)resignFirstResponder; +- (BOOL)becomeFirstResponder; +- (BOOL)acceptsFirstResponder; +- (struct CGRect)frameOfOutlineCellAtRow:(long long)arg1; +- (void)setDelegate:(id)arg1; +- (id)delegate; +- (void)_mailboxesOutlineViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineViewController.h new file mode 100644 index 00000000..84e9d3ee --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineViewController.h @@ -0,0 +1,115 @@ +/* + * 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 "MVMailboxSelectionOwner.h" +#import "MailboxOutlineItemControllerDelegate.h" +#import "MailboxesOutlineViewDelegate.h" +#import "NSOutlineViewDataSource.h" + +@class MFMailbox, MailboxesOutlineView, NSMapTable; + +@interface MailboxesOutlineViewController : NSObject +{ + double _idealOutlineViewWidth; + id _delegate; + long long _reloadingCount; + long long _wantsToEditInlineCount; + MailboxesOutlineView *_outlineView; + NSMapTable *_itemControllers; + MFMailbox *_clickedMailbox; +} + +@property(retain) MFMailbox *clickedMailbox; // @synthesize clickedMailbox=_clickedMailbox; +@property(readonly) NSMapTable *itemControllers; // @synthesize itemControllers=_itemControllers; +@property(retain) MailboxesOutlineView *outlineView; // @synthesize outlineView=_outlineView; +- (void)mailbox:(id)arg1 nameUpdated:(id)arg2; +- (unsigned long long)badgeCountForItem:(id)arg1; +- (id)mailboxesOutlineView; +- (void)outlineViewItemDidCollapse:(id)arg1; +- (void)outlineViewItemDidExpand:(id)arg1; +- (void)didCloseContextMenu:(id)arg1; +- (void)willShowContextMenu:(id)arg1; +- (void)setFirstResponderAfterMouseDownOnOutlineView:(id)arg1; +- (void)selectAllInOutlineView:(id)arg1; +- (void)outlineView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (void)outlineView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (void)outlineViewSelectionDidChange:(id)arg1; +- (id)outlineView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldCollapseItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldExpandItem:(id)arg2; +- (double)outlineView:(id)arg1 heightOfRowByItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 isGroupItem:(id)arg2; +- (id)outlineView:(id)arg1 viewForTableColumn:(id)arg2 item:(id)arg3; +- (id)outlineView:(id)arg1 rowViewForItem:(id)arg2; +- (unsigned long long)_outlineView:(id)arg1 validateDrop:(id)arg2 proposedItem:(id)arg3 proposedChildIndex:(long long)arg4 allowStoreCreation:(BOOL)arg5; +- (unsigned long long)outlineView:(id)arg1 validateDrop:(id)arg2 proposedItem:(id)arg3 proposedChildIndex:(long long)arg4; +- (BOOL)outlineView:(id)arg1 acceptDrop:(id)arg2 item:(id)arg3 childIndex:(long long)arg4; +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; +- (void)outlineView:(id)arg1 draggingSession:(id)arg2 endedAtPoint:(struct CGPoint)arg3 operation:(unsigned long long)arg4; +- (BOOL)outlineView:(id)arg1 writeItems:(id)arg2 toPasteboard:(id)arg3; +- (id)outlineView:(id)arg1 persistentObjectForItem:(id)arg2; +- (id)outlineView:(id)arg1 itemForPersistentObject:(id)arg2; +- (id)itemControllerForItem:(id)arg1 makeIfNecessary:(BOOL)arg2; +- (id)outlineView:(id)arg1 objectValueForTableColumn:(id)arg2 byItem:(id)arg3; +- (id)outlineView:(id)arg1 child:(long long)arg2 ofItem:(id)arg3; +- (BOOL)outlineView:(id)arg1 isItemExpandable:(id)arg2; +- (long long)outlineView:(id)arg1 numberOfChildrenOfItem:(id)arg2; +- (id)mailboxSelectionWindow; +- (void)_revealMailbox:(id)arg1; +- (void)revealMailbox:(id)arg1; +- (id)sortedSectionItemsForTimeMachine; +- (id)expandedItems; +- (BOOL)sectionIsExpanded:(id)arg1; +- (BOOL)mailboxIsExpanded:(id)arg1; +- (void)selectPathsToMailboxes:(id)arg1 scrollToVisible:(BOOL)arg2; +- (void)selectPathsToMailboxes:(id)arg1; +- (BOOL)isSelectedMailboxSpecial; +- (id)selectedMailbox; +- (id)selectedMailboxes; +- (void)_mailboxPendingNameDidChange:(id)arg1; +- (void)_viewerPreferencesChanged:(id)arg1; +- (void)_userInfoDidChange:(id)arg1; +- (void)_displayCountDidChange:(id)arg1; +- (void)_mailboxesActivityDidChange:(id)arg1; +- (void)_sectionListingDidChange:(id)arg1; +- (void)_mailboxPublicStatusDidChange:(id)arg1; +- (void)_mailboxListingDidChange:(id)arg1; +- (void)_accountOfflineStatusDidChange:(id)arg1; +- (void)_accountAdded:(id)arg1; +- (void)_handleWebAuthenticationRequiredError:(id)arg1 withCompletionHandler:(id)arg2; +- (void)_alertClickedForItem:(id)arg1; +- (void)rowDoubleClicked:(id)arg1; +- (void)rowClicked:(id)arg1; +- (void)alertClicked:(id)arg1; +- (BOOL)_isTopLevelItem:(id)arg1; +- (void)_saveSelectionAndReloadItem:(id)arg1; +- (void)_updateProgressIndicatorForMailbox:(id)arg1; +- (id)_copyActivityMonitorsForMailbox:(id)arg1 finishedCount:(unsigned long long *)arg2 includingDescendants:(BOOL)arg3; +- (void)_redisplayRowsForItems:(id)arg1; +- (unsigned long long)_badgeCountForItem:(id)arg1; +- (id)_firstChildIfCollapsedSpecialMailbox:(id)arg1; +- (void)_endWantsToEditInline; +- (void)_beginWantsToEditInline; +@property(readonly) BOOL wantsToEditInline; +- (void)_endReloading; +- (void)_beginReloading; +@property(readonly) BOOL isReloading; +- (void)editNameOfMailbox:(id)arg1; +- (void)makeMailboxesListFirstResponder; +@property(nonatomic) double idealOutlineViewWidth; // @synthesize idealOutlineViewWidth=_idealOutlineViewWidth; +@property(readonly, nonatomic) double minimumWidthNeededToUseMailboxes; +@property(readonly, nonatomic) double minimizedOutlineViewWidth; +- (void)clearDelegateBecauseWindowIsClosing; +- (void)dealloc; +- (void)_migrateAutosaveName; +@property id delegate; +- (void)awakeFromNib; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineViewControllerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineViewControllerDelegate-Protocol.h new file mode 100644 index 00000000..fb78d4c2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineViewControllerDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * 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" + +@protocol MailboxesOutlineViewControllerDelegate +- (long long)viewerNumber; +- (void)focusMessages; +- (void)selectAllMessages; + +@optional +- (void)mailboxSelectionChanged:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineViewDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineViewDelegate-Protocol.h new file mode 100644 index 00000000..ae4062aa --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineViewDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOutlineViewDelegate.h" + +@protocol MailboxesOutlineViewDelegate + +@optional +- (void)outlineViewDidReload:(id)arg1; +- (void)setFirstResponderAfterMouseDownOnOutlineView:(id)arg1; +- (void)selectAllInOutlineView:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineViewStateStorage.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineViewStateStorage.h new file mode 100644 index 00000000..6554c96c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesOutlineViewStateStorage.h @@ -0,0 +1,109 @@ +/* + * 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" + +@class NSArray, NSConditionLock, NSMutableDictionary, NSMutableSet, NSSet; + +@interface MailboxesOutlineViewStateStorage : NSObject +{ + NSConditionLock *_shouldShowVariablesLock; + unsigned long long _shouldShowVariablesToUpdate; + unsigned long long _shouldShowVariablesToReset; + BOOL _shouldShowOutbox; + BOOL _shouldShowDrafts; + BOOL _shouldShowTrash; + BOOL _shouldShowJunk; + BOOL _shouldShowFlags; + BOOL _shouldShowArchive; + BOOL _shouldShowVIPs; + NSMutableSet *_visibleFlagMailboxes; + id _firstUpdateLock; + BOOL _firstUpdate; + id _isListeningForVariablesLock; + BOOL _isListeningForDocumentEditorNotifications; + BOOL _isListeningForMessagesAdded; + BOOL _isListeningForFlagUpdates; + id _sectionItemsLock; + NSArray *_sectionItems; + NSArray *_visibleSectionItems; + NSArray *_visibleMailboxes; + id _defaultSectionItemsLock; + NSSet *_observedTaskNames; + id _activityMonitorMailboxMapsLock; + NSMutableDictionary *_mailboxesPerActivityMonitor; + NSMutableDictionary *_activityMonitorsPerMailbox; + NSMutableDictionary *_finishedActivityMonitorCountPerMailbox; + NSConditionLock *_changedMailboxesLock; + NSMutableSet *_changedMailboxes; + NSArray *_draggedMailboxes; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain) NSArray *draggedMailboxes; // @synthesize draggedMailboxes=_draggedMailboxes; +- (BOOL)_archiveMessagesOrSubmailboxesExist; +- (BOOL)flagsExist; +- (BOOL)draftsExist; +- (void)_accountInitializedMailboxList:(id)arg1; +- (id)copyActivityMonitorsForMailboxes:(id)arg1 finishedCount:(unsigned long long *)arg2; +- (void)_postChangedMailboxesNotification; +- (void)_notifyChangedMailboxes; +- (void)_setNeedsToNotifyChangedMailboxes:(id)arg1; +- (void)_triggerChangedMailboxesNotification; +- (BOOL)_removeActivityMonitor:(id)arg1 fromMailbox:(id)arg2; +- (BOOL)_addActivityMonitor:(id)arg1 toMailbox:(id)arg2; +- (id)_copyMailboxesForActivityMonitor:(id)arg1; +- (void)_monitoredActivityChanged:(id)arg1; +- (id)_copyKeyForObject:(id)arg1; +@property BOOL shouldShowVIPs; +@property BOOL shouldShowArchive; +@property BOOL shouldShowFlags; +@property BOOL shouldShowJunk; +@property BOOL shouldShowTrash; +@property BOOL shouldShowDrafts; +@property BOOL shouldShowOutbox; +- (void)_setShouldShowVariable:(char *)arg1 withMask:(unsigned long long)arg2 to:(BOOL)arg3; +@property(readonly) NSArray *visibleMailboxes; +@property(readonly) NSArray *visibleSectionItems; +@property(readonly) NSArray *sectionItems; +- (void)_mailboxDisplayCountChanged:(id)arg1; +- (void)_allViewersDidClose:(id)arg1; +- (void)_mailboxListingDidChange:(id)arg1; +- (void)_editorUserSaved:(id)arg1; +- (void)_editorClosed:(id)arg1; +- (void)_viewerPreferencesChanged:(id)arg1; +- (void)_mailAccountsChanged:(id)arg1; +- (void)_handleOutboxCountChange; +- (void)_outboxCountDidChange:(id)arg1; +- (void)_deliveryFailureHappened:(id)arg1; +- (void)_VIPsChanged:(id)arg1; +- (void)_messageFlagsChanged:(id)arg1; +- (void)_messagesWereAddedToMailboxes:(id)arg1; +- (void)moveSectionItem:(id)arg1 beforeItem:(id)arg2; +- (void)_updateSectionItemsWithNewlyVisibleFlagMailboxes:(id)arg1; +- (void)_writeVisibleFlagsMailboxesToDefaults; +- (void)_readVisibleFlagsMailboxesFromDefaults; +- (void)_writeSectionItemsToDefaults; +- (void)_writeSectionItems:(id)arg1 toDefaultsWithKey:(id)arg2; +- (void)_readSectionItemsFromDefaults; +- (id)_sectionItemsFromDefaultSectionItems:(id)arg1; +- (BOOL)_draftsHasMessageWithNoWindow; +- (void)_updateIsListeningForVariables; +- (void)_updateShouldShowVariables; +- (void)_setNeedsToResetShouldShowVariablesWithMask:(unsigned long long)arg1; +- (void)_setNeedsToUpdateShouldShowVariablesWithMask:(unsigned long long)arg1; +- (void)_setShouldShowVariablesNeedUpdateWithUpdateMask:(unsigned long long)arg1 resetMask:(unsigned long long)arg2; +- (void)_triggerShouldShowVariablesUpdate; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesScrollView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesScrollView.h new file mode 100644 index 00000000..395ba384 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesScrollView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScrollView.h" + +@interface MailboxesScrollView : NSScrollView +{ +} + +- (BOOL)_accessoryViewMightInterfereWithOverlayScrollers:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesSplitViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesSplitViewController.h new file mode 100644 index 00000000..a0f6c376 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MailboxesSplitViewController.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class MailSplitView, MessageViewer, NSView; + +@interface MailboxesSplitViewController : NSObject +{ + char *_isAnimating; + double _lastUserSelectedPosition; + NSView *_mailboxesContainer; + MailSplitView *_mailboxesSplitView; + MessageViewer *_messageViewer; +} + +@property(nonatomic) MessageViewer *messageViewer; // @synthesize messageViewer=_messageViewer; +@property(nonatomic) MailSplitView *mailboxesSplitView; // @synthesize mailboxesSplitView=_mailboxesSplitView; +@property(nonatomic) NSView *mailboxesContainer; // @synthesize mailboxesContainer=_mailboxesContainer; +@property(nonatomic) double lastUserSelectedPosition; // @synthesize lastUserSelectedPosition=_lastUserSelectedPosition; +@property(nonatomic) char *isAnimating; // @synthesize isAnimating=_isAnimating; +- (void)openMailboxesPaneToWidth:(double)arg1; +- (void)splitViewDidResizeSubviews:(id)arg1; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (BOOL)splitView:(id)arg1 shouldAdjustSizeOfSubview:(id)arg2; +- (struct CGRect)splitView:(id)arg1 additionalEffectiveRectOfDividerAtIndex:(long long)arg2; +- (double)_maxSplitPosition:(id)arg1; +- (double)splitView:(id)arg1 constrainSplitPosition:(double)arg2 ofSubviewAt:(long long)arg3; +- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MboxEmailImporter.h b/MailHeaders/Mavericks_10.9.5/MailUI/MboxEmailImporter.h new file mode 100644 index 00000000..41b5365e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MboxEmailImporter.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +@interface MboxEmailImporter : FilesystemEmailImporter +{ +} + ++ (id)explanatoryText; ++ (id)name; +- (char *)fromString; +- (id)prepareForImport; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageBodyScroller.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageBodyScroller.h new file mode 100644 index 00000000..8867fcae --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageBodyScroller.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScroller.h" + +@interface MessageBodyScroller : NSScroller +{ + BOOL _forceHidden; + double _forceYPosition; +} + ++ (BOOL)isCompatibleWithOverlayScrollers; +@property(nonatomic) double forceYPosition; // @synthesize forceYPosition=_forceYPosition; +- (void)setHidden:(BOOL)arg1; +- (void)setFrameOrigin:(struct CGPoint)arg1; +@property(nonatomic) BOOL forceHidden; +- (void)_mailBodyScrollerCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageDeletionTransfer-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageDeletionTransfer-Protocol.h new file mode 100644 index 00000000..e88e5d53 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageDeletionTransfer-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MessageDeletionTransfer +- (void)beginTransfer; +- (BOOL)canBeginTransfer; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageDraft.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageDraft.h new file mode 100644 index 00000000..edf9ccee --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageDraft.h @@ -0,0 +1,87 @@ +/* + * 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 "MCActivityTarget.h" + +@class Conversation, MCInvocationQueue, MCMessage, MCMessageHeaders, MCMutableMessageHeaders, MFDeliveryAccount, MUIWebDocument, NSArray, NSDate, NSString, NSTimer, NSUUID; + +@interface MessageDraft : NSObject +{ + MCMutableMessageHeaders *_headers; + BOOL _hasChanges; + BOOL _hasBeenSavedByUser; + BOOL _isRedirected; + BOOL _canEncryptMessage; + BOOL _canSignMessage; + unsigned long long _encoding; + Conversation *_conversation; + MCMessage *_originalMessage; + MCInvocationQueue *_saveQueue; + NSTimer *_saveTimer; + id _completionBlock; + MUIWebDocument *_webDocument; +} + ++ (int)convertSaveOrSendResultFromResultCodeT:(long long)arg1; ++ (id)_saveTaskName; +@property(nonatomic) BOOL canSignMessage; // @synthesize canSignMessage=_canSignMessage; +@property(nonatomic) BOOL canEncryptMessage; // @synthesize canEncryptMessage=_canEncryptMessage; +@property(readonly) BOOL isRedirected; // @synthesize isRedirected=_isRedirected; +@property(readonly) MUIWebDocument *webDocument; // @synthesize webDocument=_webDocument; +@property(readonly) MCMessageHeaders *headers; // @synthesize headers=_headers; +@property(copy) id completionBlock; // @synthesize completionBlock=_completionBlock; +@property(retain, nonatomic) NSTimer *saveTimer; // @synthesize saveTimer=_saveTimer; +@property(readonly) MCInvocationQueue *saveQueue; // @synthesize saveQueue=_saveQueue; +@property(readonly) MCMessage *originalMessage; // @synthesize originalMessage=_originalMessage; +@property(retain, nonatomic) Conversation *conversation; // @synthesize conversation=_conversation; +@property(nonatomic) unsigned long long encoding; // @synthesize encoding=_encoding; +@property(nonatomic) BOOL hasBeenSavedByUser; // @synthesize hasBeenSavedByUser=_hasBeenSavedByUser; +@property BOOL hasChanges; // @synthesize hasChanges=_hasChanges; +- (id)fromAccount; +- (void)_asyncGenerateMessageAsDraft:(BOOL)arg1 completionHandler:(id)arg2; +- (void)asyncGenerateMessage:(id)arg1; +- (void)_discardInBackgroundWithDocumentId:(id)arg1 account:(id)arg2; +- (void)discard; +- (void)_saveInBackgroundWithMessage:(id)arg1 account:(id)arg2; +- (void)_addBackgroundSaveInvocationToQueue; +- (void)saveWithCompletionBlock:(id)arg1; +- (void)_markDirtyAndSave; +@property(nonatomic) BOOL signMessage; +@property(nonatomic) BOOL encryptMessage; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (BOOL)_updateCcOrBccMyselfFieldWithSender:(id)arg1 oldSender:(id)arg2; +@property(copy, nonatomic) NSUUID *documentId; +@property(copy, nonatomic) NSString *messageId; +@property(copy, nonatomic) NSString *subject; +@property(retain, nonatomic) MFDeliveryAccount *deliveryAccount; +@property(nonatomic) long long priority; +@property(copy, nonatomic) NSString *from; +@property(readonly) NSArray *allRecipients; +@property(retain, nonatomic) NSArray *replyTo; +@property(retain, nonatomic) NSArray *bcc; +@property(retain, nonatomic) NSArray *cc; +@property(retain, nonatomic) NSArray *to; +@property(retain, nonatomic) NSDate *date; +- (id)_webDocumentForMessage:(id)arg1; +- (id)_webDocumentForMessage:(id)arg1 webDocument:(id)arg2 type:(unsigned long long)arg3; +- (void)_addAddresses:(id)arg1 toAddresses:(id)arg2; +- (id)_addresses:(id)arg1 withoutAddresses:(id)arg2; +- (id)_bccRecipientsWithMessage:(id)arg1 type:(unsigned long long)arg2; +- (id)_ccRecipientsWithMessage:(id)arg1 type:(unsigned long long)arg2; +- (id)_toRecipientsWithMessage:(id)arg1 type:(unsigned long long)arg2; +- (id)_subjectWithMessage:(id)arg1 type:(unsigned long long)arg2; +- (id)_fromAccountWithMessage:(id)arg1; +- (void)dealloc; +- (id)_initWithType:(unsigned long long)arg1 message:(id)arg2 webDocument:(id)arg3; +- (id)initWithType:(unsigned long long)arg1 message:(id)arg2; +- (id)initWithType:(unsigned long long)arg1 messages:(id)arg2; +- (id)initWithType:(unsigned long long)arg1 conversationMember:(id)arg2; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageDragHelper.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageDragHelper.h new file mode 100644 index 00000000..7d8a22a2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageDragHelper.h @@ -0,0 +1,33 @@ +/* + * 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" + +@class NSArray, NSOperationQueue, NSString; + +@interface MessageDragHelper : NSObject +{ + NSOperationQueue *_pasteboardURLProviderQueue; + NSArray *_draggedMessages; + NSString *_pasteboardURLString; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain) NSString *pasteboardURLString; // @synthesize pasteboardURLString=_pasteboardURLString; +@property(copy) NSArray *draggedMessages; // @synthesize draggedMessages=_draggedMessages; +- (id)namesOfPromisedFilesDroppedAtDestination:(id)arg1; +- (void)pasteboardChangedOwner:(id)arg1; +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; +- (void)writeMessages:(id)arg1 toPasteboard:(id)arg2 forOwner:(id)arg3; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageEditor.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageEditor.h new file mode 100644 index 00000000..e8b184ac --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageEditor.h @@ -0,0 +1,25 @@ +/* + * 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" + +@interface MessageEditor : NSObject +{ +} + ++ (id)sharedMessageEditor; ++ (void)initialize; +- (void)setBackEnd:(id)arg1; +- (id)objectSpecifier; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageListCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageListCell.h new file mode 100644 index 00000000..105a9c4f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageListCell.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageCell.h" + +@class NSString, NSTextFieldCell; + +@interface MessageListCell : NSImageCell +{ + int _contentType; + NSTextFieldCell *_textCell; + NSString *_stringValue; + double _maxHeight; + double _maxWidth; + unsigned long long _contentCount; +} + +- (id)accessibilityActionNames; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeNames; +- (BOOL)isRepresentedAsButton; +- (BOOL)isRepresentedAsStaticText; +- (id)contentValue; +- (void)setContentCount:(unsigned long long)arg1; +- (void)setContentType:(int)arg1; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (struct CGRect)imageRectForBounds:(struct CGRect)arg1; +- (void)setObjectValue:(id)arg1; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (struct CGPoint)_drawOriginForSize:(struct CGSize)arg1 inRect:(struct CGRect)arg2; +- (struct CGSize)_imageSizeForCellFrame:(struct CGRect)arg1; +- (double)maxWidth; +- (void)setMaxWidth:(double)arg1; +- (double)maxHeight; +- (void)setMaxHeight:(double)arg1; +- (void)setFont:(id)arg1; +- (void)setTextColor:(id)arg1; +- (id)_textCell; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageListColumnManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageListColumnManager.h new file mode 100644 index 00000000..510bb89c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageListColumnManager.h @@ -0,0 +1,55 @@ +/* + * 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" + +@class NSArray, NSDictionary, NSMutableDictionary; + +@interface MessageListColumnManager : NSObject +{ + NSArray *_tableColumns; + NSDictionary *_viewerPreferences; + NSMutableDictionary *_tableColumnPreferences; + BOOL _blockSavingColumnPreferences; + BOOL _columnPreferencesWereSetupFromScratch; +} + ++ (void)setSharedManager:(id)arg1; ++ (id)sharedManager; +@property BOOL wereTableColumnPreferencesSetupFromScratch; // @synthesize wereTableColumnPreferencesSetupFromScratch=_columnPreferencesWereSetupFromScratch; +- (void)_setupUnreadColumnWidthInTableView:(id)arg1 forMailboxes:(id)arg2 isThreaded:(BOOL)arg3; +- (void)setUpUnreadColumnMinWidth:(id)arg1 isThreaded:(BOOL)arg2; +- (long long)calcUnreadColumnWidth:(id)arg1 forUnreadCountString:(id)arg2; +- (void)column:(id)arg1 wasMadeVisible:(BOOL)arg2 inTableView:(id)arg3 forMailboxes:(id)arg4 isSearching:(BOOL)arg5 searchTarget:(int)arg6 searchField:(long long)arg7; +- (void)sizeColumnsToFitInTableView:(id)arg1 forMailboxes:(id)arg2 isThreaded:(BOOL)arg3 threadingDidChange:(BOOL)arg4; +- (void)showColumnsInTableView:(id)arg1 allColumns:(id)arg2 forSearchTarget:(int)arg3 searchField:(long long)arg4 mailboxes:(id)arg5 isThreaded:(BOOL)arg6; +- (void)showColumnsInTableView:(id)arg1 allColumns:(id)arg2 forMailboxes:(id)arg3 isThreaded:(BOOL)arg4 threadingHasChanged:(BOOL)arg5; +- (BOOL)_someMailboxUsesLastViewedDateCriterion:(id)arg1; +- (BOOL)_column:(long long)arg1 isAnAutomaticInsertColumnForMailboxType:(id)arg2 mailboxes:(id)arg3 multipleMailboxes:(BOOL)arg4 isSearching:(BOOL)arg5 searchTarget:(int)arg6 searchField:(long long)arg7; +- (BOOL)_columnsList:(id)arg1 containsColumn:(long long)arg2; +- (id)_widthKeyForMailboxType:(id)arg1 isThreaded:(BOOL)arg2 isSearching:(BOOL)arg3 locationIsVisible:(BOOL)arg4; +- (id)typeOfMailboxes:(id)arg1 multiple:(char *)arg2; +- (id)_visibleTableColumnSettingsForMailboxes:(id)arg1 multipleMailboxes:(BOOL)arg2 ofType:(id)arg3 withLastViewedDate:(BOOL)arg4 isThreaded:(BOOL)arg5 isSearching:(BOOL)arg6 searchTarget:(int)arg7 searchField:(long long)arg8 tableView:(id)arg9; +- (void)_setColumn:(long long)arg1 isVisible:(BOOL)arg2 inSettings:(id)arg3; +- (void)_replaceColumn:(long long)arg1 byColumn:(long long)arg2 inSettings:(id)arg3; +- (id)_convertNormalSettingsFromPreleopardDefaults; +- (long long)_widthAndPosition:(long long *)arg1 forColumn:(id)arg2 mailboxes:(id)arg3 isThreaded:(BOOL)arg4 isSearching:(BOOL)arg5 locationIsVisible:(BOOL)arg6; +- (long long)widthAndPosition:(long long *)arg1 forColumn:(id)arg2 inTableView:(id)arg3 mailboxes:(id)arg4 isThreaded:(BOOL)arg5 isSearching:(BOOL)arg6; +- (id)_settingForColumn:(long long)arg1 forKey:(id)arg2 forMailboxes:(id)arg3; +- (BOOL)isAutomaticInsertionWhileSearchingOkayForColumn:(long long)arg1 forMailboxes:(id)arg2; +- (BOOL)isColumnVisible:(long long)arg1 forMailboxes:(id)arg2; +- (id)_tableColumnPreferencesForMailboxType:(id)arg1; +- (void)takeDefaultsForMailboxes:(id)arg1 isThreaded:(BOOL)arg2 isSearching:(BOOL)arg3 searchTarget:(int)arg4 fromCurrentColumnsInTableView:(id)arg5; +- (void)saveColumnPreferencesToStandardDefaults; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)initWithTableColumns:(id)arg1 viewerPreferences:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageListContainerView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageListContainerView.h new file mode 100644 index 00000000..01cb317a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageListContainerView.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "RichMessageListSortViewProtocol.h" + +@class MessageViewer, NSTableHeaderView, NSTableView, RichMessageListSortView; + +@interface MessageListContainerView : NSView +{ + MessageViewer *_messageViewer; + NSTableHeaderView *_previousHeaderView; + BOOL _isRichMessageList; + NSTableView *_messageListTableView; + RichMessageListSortView *_sortView; +} + +@property(retain) RichMessageListSortView *sortView; // @synthesize sortView=_sortView; +@property NSTableView *messageListTableView; // @synthesize messageListTableView=_messageListTableView; +- (BOOL)accessibilityIsIgnored; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeNames; +- (void)sortViewDidMouseDown:(id)arg1; +- (void)dealloc; +@property(nonatomic) BOOL isRichMessageList; +- (void)_updateSortViewVisibility; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageListHeaderCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageListHeaderCell.h new file mode 100644 index 00000000..f83d010c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageListHeaderCell.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableHeaderCell.h" + +@class MessageListCell, NSString; + +@interface MessageListHeaderCell : NSTableHeaderCell +{ + MessageListCell *_realCell; + unsigned long long _imageAlignment; + NSString *_accessibilityTitle; +} + +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeNames; +- (id)accessibilityTitle; +- (void)setAccessibilityTitle:(id)arg1; +- (void)setImageAlignment:(unsigned long long)arg1; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageMall-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageMall-Protocol.h new file mode 100644 index 00000000..64b11847 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageMall-Protocol.h @@ -0,0 +1,99 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessageDataSource.h" + +@protocol MessageMall +- (BOOL)supportsSearching; +- (unsigned int)messageFlagsForMessage:(id)arg1 size:(unsigned long long *)arg2 appliedFlagColors:(id *)arg3; +- (unsigned long long)sizeForMessage:(id)arg1; +- (id)allMessagesForConversationID:(long long)arg1; +- (id)primaryMessagesForConversationID:(long long)arg1; +- (BOOL)hasNonDuplicateRelatedMessages:(id)arg1; +- (id)allRelatedMessagesForMessage:(id)arg1; +- (id)unfilteredThreadForMessage:(id)arg1; +- (id)filteredThreadForMessage:(id)arg1; +- (id)parentOfMessage:(id)arg1; +- (id)repliesToMessage:(id)arg1; +- (void)addMessagesInSameThreadAsMessage:(id)arg1 toSet:(id)arg2; +- (void)routeMessages:(id)arg1 fromMailboxes:(id)arg2; +- (void)reload:(id)arg1; +- (void)closeAllThreads; +- (void)openAllThreads; +- (BOOL)openThreadsWithIDs:(id)arg1; +- (id)quietlyCloseThreadAtIndex:(unsigned long long)arg1; +- (BOOL)closeThreadAtIndex:(long long)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; +- (id)quietlyOpenThreadAtIndex:(unsigned long long)arg1; +- (BOOL)openThreadAtIndex:(long long)arg1 andSelectMessage:(id)arg2 animate:(BOOL)arg3; +- (void)prepareToDisplayThread:(id)arg1; +- (void)toggleThreadedMode; +- (void)setIsInThreadedMode:(BOOL)arg1; +- (BOOL)isInThreadedModeExcludingSearch; +- (BOOL)isInThreadedMode; +- (void)setDisplayingToColumn:(BOOL)arg1; +- (BOOL)displayingToColumn; +- (void)sortMessages:(id)arg1; +- (BOOL)isSortedAscending; +- (id)sortOrder; +- (void)setSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (void)setIncludeDeleted:(BOOL)arg1; +- (BOOL)includeDeleted; +- (id)expandedSelectedMailboxesAllowingSearch; +- (id)stores; +- (id)expandedSelectedMailboxes; +- (id)selectedMailboxes; +- (id)allMailboxes; +- (void)setMailboxes:(id)arg1; +- (BOOL)deletedFlagForMessage:(id)arg1; +- (id)unhideMessages:(id)arg1; +- (id)hideMessages:(id)arg1; +- (void)doCompact; +- (BOOL)canCompact; +- (void)rebuildTableOfContentsAsynchronously; +- (BOOL)canRebuild; +- (BOOL)isOpened; +- (BOOL)isReadOnly; +- (id)messageForMessageID:(id)arg1; +- (unsigned long long)totalCount; +- (unsigned long long)unreadCount; +- (id)smartMailboxMemberMessagesForMessages:(id)arg1; +- (BOOL)filteredListIncludesAllMessages; +- (id)originalOfMessage:(id)arg1; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (void)hideAllCopiesOfMessages:(id)arg1; +- (void)showAllCopiesOfMessage:(id)arg1; +- (id)messageIDsToShowAllCopiesOf; +- (unsigned int)loadOptions; +- (BOOL)messageIsPartOfAThread:(id)arg1; +- (id)threadForMessageID:(id)arg1; +- (void)setFocusedMessages:(id)arg1; +- (BOOL)isFocused; +- (void)clearSearch; +- (void)clearFilteredMessagesAndUpdateImmediately:(BOOL)arg1; +- (void)clearFilteredMessages; +- (id)filteredThreads; +- (unsigned long long)indexOfMessage:(id)arg1; +- (id)filteredMessageAtIndex:(unsigned long long)arg1 isChildOfThread:(char *)arg2; +- (id)numberForMessage:(id)arg1; +- (unsigned long long)indexOfFilteredDocument:(id)arg1; +- (unsigned long long)indexOfFilteredMessage:(id)arg1; +- (id)filteredMessagesInRange:(struct _NSRange)arg1; +- (id)filteredMessages; +- (id)filteredMessagesAtIndexes:(id)arg1; +- (id)filteredMessageAtIndex:(unsigned long long)arg1; +- (unsigned long long)filteredMessagesCount; +- (void)unregisterForNotifications; + +@optional +- (void)clearPreviousQueryString; +- (int)currentSearchTarget; +- (long long)currentSearchField; +- (BOOL)isStillSearching; +- (BOOL)isShowingSearchResults; +- (void)searchForString:(id)arg1 in:(int)arg2 withOptions:(long long)arg3; +- (void)searchForSuggestions:(id)arg1 in:(int)arg2 withOptions:(long long)arg3 fromSuggestionsSearchField:(id)arg4; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageMegaMall.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageMegaMall.h new file mode 100644 index 00000000..e396c889 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageMegaMall.h @@ -0,0 +1,165 @@ +/* + * 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 "MessageMall.h" + +@class MessageMiniMall, NSString; + +@interface MessageMegaMall : NSObject +{ + MessageMiniMall *_mailboxesMiniMall; + MessageMiniMall *_searchMiniMall; + MessageMiniMall *_currentMiniMall; + MessageMiniMall *_alternateMiniMall; + long long _activeSearchField; + int _activeSearchTarget; + NSString *_lastQueryStringFragment; +} + ++ (id)expandedMailboxes:(id)arg1; ++ (id)notificationQueue; ++ (id)notificationCenter; +- (id)uniquedString:(id)arg1; +- (void)flushAllCaches; +- (void)invalidateMessage:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)undeleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (id)mailbox; +- (id)account; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)routeMessages:(id)arg1 fromMailboxes:(id)arg2; +- (void)routeMessages:(id)arg1; +- (void)reload:(id)arg1; +- (void)setDisplayingToColumn:(BOOL)arg1; +- (BOOL)displayingToColumn; +- (void)doCompact; +- (BOOL)canCompact; +- (void)rebuildTableOfContentsAsynchronously; +- (BOOL)canRebuild; +- (BOOL)isOpened; +@property(readonly) BOOL isReadOnly; +- (id)messageForMessageID:(id)arg1; +- (unsigned long long)totalCount; +- (unsigned long long)unreadCount; +- (id)smartMailboxMemberMessagesForMessages:(id)arg1; +- (id)allMessagesForConversationID:(long long)arg1; +- (id)primaryMessagesForConversationID:(long long)arg1; +- (BOOL)hasNonDuplicateRelatedMessages:(id)arg1; +- (id)allRelatedMessagesForMessage:(id)arg1; +- (id)originalOfMessage:(id)arg1; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (void)hideAllCopiesOfMessages:(id)arg1; +- (id)messageIDsToShowAllCopiesOf; +- (void)showAllCopiesOfMessage:(id)arg1; +- (unsigned int)loadOptions; +- (BOOL)messageIsPartOfAThread:(id)arg1; +- (id)threadForMessageID:(id)arg1; +- (id)unfilteredThreadForMessage:(id)arg1; +- (id)filteredThreadForMessage:(id)arg1; +- (id)parentOfMessage:(id)arg1; +- (id)repliesToMessage:(id)arg1; +- (void)addMessagesInSameThreadAsMessage:(id)arg1 toSet:(id)arg2; +- (void)closeAllThreads; +- (void)openAllThreads; +- (BOOL)openThreadsWithIDs:(id)arg1; +- (id)quietlyCloseThreadAtIndex:(unsigned long long)arg1; +- (BOOL)closeThreadAtIndex:(long long)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; +- (id)quietlyOpenThreadAtIndex:(unsigned long long)arg1; +- (BOOL)openThreadAtIndex:(long long)arg1 andSelectMessage:(id)arg2 animate:(BOOL)arg3; +- (void)prepareToDisplayThread:(id)arg1; +- (void)toggleThreadedMode; +- (void)setIsInThreadedMode:(BOOL)arg1; +- (BOOL)isInThreadedModeExcludingSearch; +- (BOOL)isInThreadedMode; +- (void)sortMessages:(id)arg1; +- (BOOL)isSortedAscending; +- (id)sortOrder; +- (void)setSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (void)setIncludeDeleted:(BOOL)arg1; +- (BOOL)includeDeleted; +- (id)stores; +- (id)expandedSelectedMailboxesAllowingSearch; +- (id)expandedSelectedMailboxes; +- (id)selectedMailboxes; +- (id)allMailboxes; +- (void)setMailboxes:(id)arg1; +- (BOOL)deletedFlagForMessage:(id)arg1; +- (id)unhideMessages:(id)arg1; +- (id)hideMessages:(id)arg1; +- (int)currentSearchTarget; +- (long long)currentSearchField; +- (BOOL)isStillSearching; +- (BOOL)isShowingSearchResults; +- (unsigned int)messageFlagsForMessage:(id)arg1 size:(unsigned long long *)arg2 appliedFlagColors:(id *)arg3; +- (unsigned long long)sizeForMessage:(id)arg1; +- (id)criterionForString:(id)arg1 type:(long long)arg2 scope:(int)arg3; +- (id)criterionForAttachmentType:(id)arg1; +- (void)searchForString:(id)arg1 in:(int)arg2 withOptions:(long long)arg3; +- (id)queryStringFragmentFromSuggestions:(id)arg1; +- (void)searchForSuggestions:(id)arg1 in:(int)arg2 withOptions:(long long)arg3 fromSuggestionsSearchField:(id)arg4; +- (void)clearPreviousQueryString; +- (void)_searchForCriterion:(id)arg1; +- (BOOL)supportsSearching; +- (void)setFocusedMessages:(id)arg1; +- (BOOL)isFocused; +- (BOOL)filteredListIncludesAllMessages; +- (void)clearFilteredMessagesAndUpdateImmediately:(BOOL)arg1; +- (void)clearFilteredMessages; +- (void)clearSearch; +- (id)filteredThreads; +- (unsigned long long)indexOfMessage:(id)arg1; +- (id)numberForMessage:(id)arg1; +- (id)filteredMessageAtIndex:(unsigned long long)arg1 isChildOfThread:(char *)arg2; +- (unsigned long long)indexOfFilteredDocument:(id)arg1; +- (unsigned long long)indexOfFilteredMessage:(id)arg1; +- (id)filteredMessagesInRange:(struct _NSRange)arg1; +- (id)filteredMessages; +- (id)filteredMessagesAtIndexes:(id)arg1; +- (id)filteredMessageAtIndex:(unsigned long long)arg1; +- (unsigned long long)filteredMessagesCount; +- (void)_handleMiniMallNotification:(id)arg1; +- (void)_updateUseLibraryIDNumbering; +- (void)setUsingSearchMiniMall:(BOOL)arg1; +- (BOOL)isUsingSearchMiniMall; +- (id)alternateMiniMall; +- (id)currentMiniMall; +- (void)unregisterForNotifications; +- (id)description; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageMiniMall.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageMiniMall.h new file mode 100644 index 00000000..8210ea89 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageMiniMall.h @@ -0,0 +1,302 @@ +/* + * 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 "MFMessageSortContext.h" +#import "MFMessageSortingValueDelegate.h" +#import "MessageMall.h" + +@class MCInvocationQueue, NSArray, NSMapTable, NSMutableArray, NSMutableDictionary, NSMutableSet, NSString; + +@interface MessageMiniMall : NSObject +{ + MCInvocationQueue *_filterTasks; + MCInvocationQueue *_userTasks; + BOOL _sortedAscending; + BOOL _wantsToBeSortedAscending; + BOOL _includeDeleted; + BOOL _focused; + BOOL _isInThreadedMode; + BOOL _wantsToBeInThreadedMode; + BOOL _displayingToColumn; + BOOL _selectionIncludesSmartMailbox; + BOOL _useLibraryIDNumbering; + BOOL _alwaysShowCopies; + int _currentFilterSeriesID; + NSArray *_selectedMailboxes; + NSArray *_expandedSelectedMailboxes; + NSMutableArray *_allStores; + NSMutableSet *_storesWaitingToLoad; + NSMutableDictionary *_allMessagesByStore; + NSMutableDictionary *_primaryMessagesByConversationByStore; + NSMutableDictionary *_nonDeletedMessagesByStore; + NSMutableDictionary *_sortedMessagesByStore; + NSMutableDictionary *_sortedNonDeletedMessagesByStore; + NSMutableArray *_filteredMessages; + NSMutableArray *_sortedFilteredMessages; + NSMutableSet *_filteredThreads; + NSMutableSet *_hiddenMessages; + NSMutableSet *_undeletedMessages; + NSMutableSet *_focusedMessages; + NSMutableSet *_storesBeingOpened; + NSString *_sortOrder; + NSString *_secondarySortOrder; + NSMutableDictionary *_messageSortValues; + NSMutableDictionary *_messagesByConversationID; + NSMutableDictionary *_oldestMessageForConversationID; + NSMutableDictionary *_relatedMessagesByConversationID; + NSMutableDictionary *_messageThreadingDataByMessage; + NSMapTable *_messagesByID; + NSMutableSet *_messageIDsToShowAllCopiesOf; + NSMutableDictionary *_originalMessageByMessageID; + NSMutableDictionary *_messageCopiesByMessageID; + BOOL _filteredMessagesCleared; + BOOL _filteredListIncludesAllMessages; + BOOL _isUsedForSearching; +} + ++ (id)sortComparatorForThreads; ++ (id)sortComparatorForThreadsWithSortOrderAscending:(SEL)arg1; ++ (void)initialize; +@property(nonatomic) BOOL isUsedForSearching; // @synthesize isUsedForSearching=_isUsedForSearching; +@property BOOL filteredListIncludesAllMessages; // @synthesize filteredListIncludesAllMessages=_filteredListIncludesAllMessages; +- (void)_logSearchDebugInfo:(id)arg1 sortValues:(id)arg2; +- (id)_debugSearchStringForMessage:(id)arg1 sortValues:(id)arg2; +- (id)searchDescriptionForMessage:(id)arg1 sortValue:(id)arg2 andSortOrder:(id)arg3; +- (void)_removeMessage:(id)arg1 fromMallArray:(id)arg2 sortValues:(id)arg3 atIndex:(unsigned long long)arg4 fromFunction:(const char *)arg5 andLine:(int)arg6; +- (unsigned long long)_indexOfMessage:(id)arg1 inMallArray:(id)arg2 sortValues:(id)arg3 usingComparator:(id)arg4 fromFunction:(void)arg5 andLine:(const char *)arg6; +- (unsigned long long)_removeMessage:(id)arg1 fromMallArray:(id)arg2 sortValues:(id)arg3 usingComparator:(id)arg4 fromFunction:(void)arg5 andLine:(const char *)arg6; +- (unsigned long long)_insertMessageIfAbsent:(id)arg1 intoMallArray:(id)arg2 sortValues:(id)arg3 usingComparator:(id)arg4 fromFunction:(void)arg5 andLine:(const char *)arg6; +- (id)description; +- (void)_updateThreadInfoForMessages:(id)arg1; +- (void)_resetThreadInfoFromFilteredMessages; +- (void)updateThreadingDictionaryForMessages:(id)arg1; +- (void)_clearThreadInfo; +- (void)_deduceThreadHierarchyForMessages:(id)arg1; +- (void)_setupNewParentMessageThreadingData:(id)arg1 parent:(id)arg2 conversationID:(id)arg3; +- (void)_cleanUpRelatedMessageDataForConversationIDs:(id)arg1; +- (BOOL)_removeRelatedMessageDataForMessage:(id)arg1 withConversationID:(id)arg2; +- (void)_addRelatedMessageDataForMessage:(id)arg1 withConversationID:(id)arg2; +- (BOOL)_removeConversationDataForMessage:(id)arg1 withConversationID:(id)arg2; +- (void)_addConversationDataForMessage:(id)arg1 withConversationID:(id)arg2; +- (id)allMessagesForConversationID:(long long)arg1; +- (id)primaryMessagesForConversationID:(long long)arg1; +- (BOOL)hasNonDuplicateRelatedMessages:(id)arg1; +- (id)allRelatedMessagesForMessage:(id)arg1; +- (id)originalOfMessage:(id)arg1; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (void)hideAllCopiesOfMessages:(id)arg1; +- (void)showAllCopiesOfMessage:(id)arg1; +- (id)messageIDsToShowAllCopiesOf; +- (id)unfilteredThreadForMessage:(id)arg1; +- (id)filteredThreadForMessage:(id)arg1; +- (BOOL)_hasFilteredThreadForMessage:(id)arg1; +- (id)threadAtIndex:(unsigned long long)arg1; +- (id)threadForMessage:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (BOOL)messageIsPartOfAThread:(id)arg1; +- (id)parentOfMessage:(id)arg1; +- (id)repliesToMessage:(id)arg1; +- (void)addMessagesInSameThreadAsMessage:(id)arg1 toSet:(id)arg2; +- (void)_unlockedAddMessagesInSameThreadAsMessage:(id)arg1 toSetOrArray:(id)arg2; +- (void)routeMessages:(id)arg1 fromStores:(id)arg2; +- (void)routeMessages:(id)arg1 fromMailboxes:(id)arg2; +- (void)routeMessages:(id)arg1; +- (void)_setFilteredMessages:(id)arg1 changedMessages:(id)arg2 filteredThreads:(id)arg3 changedThreads:(id)arg4 changedFlags:(id)arg5 messagesFilteredIn:(id)arg6 messagesFilteredOut:(id)arg7 sortValues:(id)arg8 forSeriesID:(int)arg9 updateImmediately:(BOOL)arg10; +- (void)closeAllThreads; +- (void)openAllThreads; +- (BOOL)openThreadsWithIDs:(id)arg1; +- (id)quietlyCloseThreadAtIndex:(unsigned long long)arg1; +- (BOOL)closeThreadAtIndex:(long long)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; +- (id)quietlyOpenThreadAtIndex:(unsigned long long)arg1; +- (BOOL)openThreadAtIndex:(long long)arg1 andSelectMessage:(id)arg2 animate:(BOOL)arg3; +- (void)prepareToDisplayThread:(id)arg1; +- (id)_backgroundUngroupThreads; +- (id)_backgroundGroupMessagesByThread; +- (id)_backgroundResetThreadInfoAndGroupByThread; +- (unsigned int)loadOptions; +- (BOOL)needTo; +- (void)setDisplayingToColumn:(BOOL)arg1; +- (BOOL)displayingToColumn; +- (BOOL)needThreadingInfo; +- (void)toggleThreadedMode; +- (void)setIsInThreadedMode:(BOOL)arg1; +- (BOOL)isInThreadedModeExcludingSearch; +- (BOOL)isInThreadedMode; +- (void)_mergeMessages:(id)arg1 intoMessages:(id)arg2 newThreads:(id *)arg3 changedThreads:(id *)arg4 sortValues:(id)arg5 usingComparator:(id)arg6 concurrent:(void)arg7; +- (id)_updateOriginalsForMessageIDs:(id)arg1; +- (void)_updateCopiesInfoForMessages:(id)arg1; +- (void)_removeThreadedMessagesIn:(id)arg1 from:(id)arg2; +- (id)_backgroundSortNewFilteredMessages:(id)arg1; +- (id)_backgroundMergeMessages:(id)arg1; +- (id)_backgroundRefilterMessages:(id)arg1; +- (void)_insertMembersOfOpenThreads:(id)arg1 usingComparator:(id)arg2; +- (void)_removeMembersOfOpenThreads:(id)arg1; +- (id)_backgroundResortWithPrimarySortOrder:(id)arg1 secondarySortOrder:(id)arg2; +- (void)structureWillChange; +- (void)structureWillChangeFromClosingThread:(id)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; +- (void)structureWillChangeFromOpeningThread:(id)arg1; +- (void)_filterTaskCompleted:(id)arg1 seriesID:(int)arg2; +- (void)_resetFilterQueue; +- (void)_addTaskToFilterQueue:(id)arg1; +- (void)_performFilterTask:(id)arg1 seriesID:(int)arg2; +- (void)_backgroundHandleLibraryConversationsChanged:(id)arg1; +- (void)_libraryConversationsWereChanged:(id)arg1; +- (void)_removeMessages:(id)arg1; +- (void)_libraryMessagesGmailLabelsChanged:(id)arg1; +- (void)_libraryMessagesCompacted:(id)arg1; +- (void)_addedMessagesWithDictionary:(id)arg1 conversationsMembers:(id)arg2 toStore:(id)arg3; +- (void)_backgroundHandleMessagesAdded:(id)arg1; +- (void)_componentStoreMessagesWereAdded:(id)arg1; +- (void)_backgroundHandleStoreFinishedLoading:(id)arg1; +- (void)_componentStoreFinishedLoading:(id)arg1; +- (void)_backgroundHandleMessagesUpdated:(id)arg1; +- (void)_libraryMessagesUpdated:(id)arg1; +- (BOOL)_shouldIncludeConversationMemberMessageInMall:(id)arg1 lastSeenMailboxInfo:(id)arg2; +- (void)reload:(id)arg1; +- (void)_componentStoreStructureChanged:(id)arg1; +- (void)_componentStoreDidOpen:(id)arg1; +- (void)_componentStoreWillOpen:(id)arg1; +- (void)_libraryMessagesFlagsChanged:(id)arg1; +- (id)_knownAndUnknownMessages:(id)arg1 fromMessages:(id)arg2; +- (BOOL)_isKnownMessage:(id)arg1; +- (id)_messagesThatShouldBeDisplayed:(id)arg1; +- (BOOL)_shouldDisplayMessage:(id)arg1 hidingCopies:(BOOL)arg2; +- (BOOL)deletedFlagForMessage:(id)arg1; +- (long long)compareByNumberMessage:(id)arg1 andMessage:(id)arg2 sortedAscending:(BOOL)arg3; +- (BOOL)isStillSearching; +- (id)uniquedString:(id)arg1; +- (void)flushAllCaches; +- (void)invalidateMessage:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)undeleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (id)mailbox; +- (id)account; +- (id)stores; +@property(readonly) BOOL isReadOnly; +- (id)expandedSelectedMailboxesAllowingSearch; +- (id)expandedSelectedMailboxes; +- (id)selectedMailboxes; +- (id)allMailboxes; +- (BOOL)canRebuild; +- (id)_storesToRebuild; +- (void)doCompact; +- (BOOL)canCompact; +- (void)_removeMessagesFromByStoreTables:(id)arg1; +- (void)updateFilteredListByAddingMessages:(id)arg1 removingMessages:(id)arg2; +- (void)_addMessagesToByStoreTables:(id)arg1; +- (void)_addMessages:(id)arg1 toTablesForStore:(id)arg2; +- (id)threadForMessageID:(id)arg1; +- (void)structureDidChangeWithChangedThreads:(id)arg1; +- (void)structureDidChangeByClosingThread:(id)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; +- (void)structureDidChangeFromOpeningThread:(id)arg1 andSelectMessage:(id)arg2 animate:(BOOL)arg3; +- (void)structureDidChange; +- (void)rebuildTableOfContentsAsynchronously; +- (id)unhideMessages:(id)arg1; +- (id)hideMessages:(id)arg1; +- (unsigned long long)unreadCount; +- (unsigned long long)totalCount; +- (id)_backgroundInvertFilteredList; +- (void)_invertFilteredList; +- (void)_refilter; +- (void)_resortWithPrimarySortOrder:(id)arg1 secondarySortOrder:(id)arg2; +- (BOOL)_filterOutMessagesSynchronously:(id)arg1; +- (void)_filterInMessagesSynchronously:(id)arg1; +- (void)_filterInMessages:(id)arg1; +- (id)_addStore:(id)arg1; +- (void)_removeMessagesInStores:(id)arg1 fromCopiesInfoWithStoreCache:(id)arg2; +- (void)_removeMessagesInStores:(id)arg1 fromMessages:(id)arg2 storeCache:(id)arg3; +- (id)_storeForMailbox:(id)arg1 cache:(id)arg2; +- (void)_setMailboxes:(id)arg1; +- (void)setMailboxes:(id)arg1; +- (void)_threadsSpanMailboxesChanged:(id)arg1; +- (void)_storeFinishedLoading:(id)arg1; +- (unsigned int)sortingMessageFlagsForMessage:(id)arg1; +- (unsigned int)messageFlagsForMessage:(id)arg1 size:(unsigned long long *)arg2 appliedFlagColors:(id *)arg3; +- (unsigned long long)sortingSizeForMessage:(id)arg1; +- (unsigned long long)sizeForMessage:(id)arg1; +- (void *)secondarySortFunction; +- (void *)sortFunction; +- (void *)sortFunctionForSortOrder:(id)arg1; +- (BOOL)isSortedByDateReceived; +- (BOOL)isSortedAscending; +- (void)setIncludeDeleted:(BOOL)arg1; +- (BOOL)includeDeleted; +- (void)sortMessages:(id)arg1; +- (id)sortComparatorWithPrimarySortOrder:(SEL)arg1 secondarySortOrder:(id)arg2 sortValues:(id)arg3 context:(id)arg4; +- (id)sortComparatorWithContext:(SEL)arg1 sortValues:(void *)arg2; +- (id)arrayOfSortOrders; +- (id)arrayWithPrimarySortOrder:(id)arg1 secondarySortOrder:(id)arg2; +- (id)secondarySortOrder; +- (id)sortOrder; +- (void)setSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (id)smartMailboxMemberMessagesForMessages:(id)arg1; +- (unsigned long long)_focusedMessagesCount; +- (void)_setFocusedMessages:(id)arg1; +- (void)setFocusedMessages:(id)arg1; +- (BOOL)isFocused; +- (void)setFocused:(BOOL)arg1; +- (void)clearFilteredMessagesAndUpdateImmediately:(BOOL)arg1; +- (void)clearFilteredMessages; +- (id)filteredThreads; +- (unsigned long long)indexOfFilteredMessage:(id)arg1; +- (unsigned long long)indexOfFilteredDocument:(id)arg1; +- (id)numberForMessage:(id)arg1; +- (unsigned long long)indexOfMessage:(id)arg1; +- (unsigned long long)_indexOfMessage:(id)arg1 inStore:(id)arg2 messages:(id)arg3; +- (id)_sortedMessagesForStore:(id)arg1; +- (BOOL)useLibraryIDNumbering; +- (void)setUseLibraryIDNumbering:(BOOL)arg1; +- (BOOL)selectionIncludesSmartMailbox; +- (unsigned long long)indexOfMessageByLibraryID:(id)arg1; +- (void)setSortedFilteredMessages:(id)arg1; +- (id)filteredMessageAtIndex:(unsigned long long)arg1 isChildOfThread:(char *)arg2; +- (id)filteredMessagesInRange:(struct _NSRange)arg1; +- (id)filteredMessages; +- (id)filteredMessagesAtIndexes:(id)arg1; +- (id)filteredMessageAtIndex:(unsigned long long)arg1; +- (unsigned long long)filteredMessagesCount; +- (void)_updateFilteredListIncludesAllMessages; +- (BOOL)isOpened; +- (BOOL)supportsSearching; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)clearSearch; +- (void)_cancelStoreQueries:(id)arg1; +- (void)dealloc; +- (void)unregisterForNotifications; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageSaver.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageSaver.h new file mode 100644 index 00000000..11ab459b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageSaver.h @@ -0,0 +1,52 @@ +/* + * 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 "MCActivityTarget.h" + +@class NSArray, NSButton, NSPopUpButton, NSSavePanel, NSSet, NSURL, NSView, NSWindow; + +@interface MessageSaver : NSObject +{ + NSArray *_messages; + NSSet *_stores; + NSSavePanel *_savePanel; + NSWindow *_window; + NSURL *_saveDestination; + unsigned int _haveAttachments:1; + unsigned int _hideExtension:1; + unsigned int _includeAttachments:1; + unsigned int _saveFormat:4; + unsigned int _headerDetailLevel:4; + NSView *_accessoryView; + NSPopUpButton *_formatPopup; + NSButton *_includeAttachmentsSwitch; +} + ++ (void)saveMessages:(id)arg1 headerDetailLevel:(long long)arg2 preferredFormat:(int)arg3 window:(id)arg4; ++ (void)initialize; +@property(nonatomic) NSButton *includeAttachmentsSwitch; // @synthesize includeAttachmentsSwitch=_includeAttachmentsSwitch; +@property(nonatomic) NSPopUpButton *formatPopup; // @synthesize formatPopup=_formatPopup; +@property(retain, nonatomic) NSView *accessoryView; // @synthesize accessoryView=_accessoryView; +- (id)_separator; +- (void)changeIncludeAttachments:(id)arg1; +- (void)changeFormat:(id)arg1; +- (void)_handleSaveError:(id)arg1; +- (void)_saveMessages; +- (void)_updateSavePanelUI; +- (void)_runSavePanel; +- (void)_runSavePanelForStationery; +- (void)_savePanelDidEndWithFileHandlingResult:(long long)arg1; +- (void)_setWindow:(id)arg1; +- (void)_setSaveFormat:(int)arg1; +- (void)_setHeaderDetailLevel:(long long)arg1; +- (void)_setMessages:(id)arg1; +- (void)saveMessagesWithoutPrompting:(id)arg1 toFilePath:(id)arg2 headerDetailLevel:(long long)arg3 format:(int)arg4; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageSegmentedCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageSegmentedCell.h new file mode 100644 index 00000000..41cb73c6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageSegmentedCell.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSegmentedCell.h" + +@interface MessageSegmentedCell : NSSegmentedCell +{ +} + +- (void)drawSegment:(long long)arg1 inFrame:(struct CGRect)arg2 withView:(id)arg3; +- (void)_drawMenuIndicatorForSegment:(long long)arg1 withRect:(struct CGRect)arg2 inView:(id)arg3; +- (double)_alphaForSegment:(long long)arg1; +- (double)_menuDelayTimeForSegment:(long long)arg1; +- (double)_edgeInset; +- (double)_imageTextGap; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageSegmentedControl.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageSegmentedControl.h new file mode 100644 index 00000000..01c08bd3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageSegmentedControl.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSegmentedControl.h" + +@class NSTrackingArea; + +@interface MessageSegmentedControl : NSSegmentedControl +{ + NSTrackingArea *_trackingArea; +} + ++ (Class)cellClass; +@property(retain, nonatomic) NSTrackingArea *trackingArea; // @synthesize trackingArea=_trackingArea; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsIgnored; +- (void)mouseExited:(id)arg1; +- (void)mouseMoved:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)cursorUpdate:(id)arg1; +- (void)_updateRolloverWithMouseLocation:(struct CGPoint)arg1; +- (void)_updateRollover; +- (void)updateTrackingAreas; +- (void)setHidden:(BOOL)arg1; +- (void)setCell:(id)arg1; +- (id)cell; +- (void)dealloc; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageSelection.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageSelection.h new file mode 100644 index 00000000..faf3d23f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageSelection.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class MCMessage, NSArray, NSDictionary; + +@interface MessageSelection : NSObject +{ + MCMessage *_initialMessage; + NSArray *_conversations; + NSDictionary *_focusedMessagesByConversation; + NSDictionary *_selectedMessagesForConversation; + NSDictionary *_viewingState; + NSArray *_messages; +} + +@property(readonly, nonatomic) NSArray *messages; // @synthesize messages=_messages; +@property(readonly, nonatomic) NSDictionary *viewingState; // @synthesize viewingState=_viewingState; +@property(readonly, nonatomic) NSDictionary *selectedMessagesByConversation; // @synthesize selectedMessagesByConversation=_selectedMessagesForConversation; +@property(readonly, nonatomic) NSDictionary *focusedMessagesByConversation; // @synthesize focusedMessagesByConversation=_focusedMessagesByConversation; +@property(readonly, nonatomic) NSArray *conversations; // @synthesize conversations=_conversations; +@property(readonly, nonatomic) MCMessage *initialMessage; // @synthesize initialMessage=_initialMessage; +- (id)description; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (void)dealloc; +- (id)_initWithInitialMessage:(id)arg1 conversations:(id)arg2 focusedMessagesByConversation:(id)arg3 selectedMessagesByConversation:(id)arg4 viewingState:(id)arg5 messages:(id)arg6; +- (id)initWithInitialMessage:(id)arg1 conversations:(id)arg2 selectedMessagesByConversation:(id)arg3 viewingState:(id)arg4 messages:(id)arg5; +- (id)initWithInitialMessage:(id)arg1 conversations:(id)arg2 focusedMessagesByConversation:(id)arg3 messages:(id)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageTextView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageTextView.h new file mode 100644 index 00000000..f9e82e3a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageTextView.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextView.h" + +@interface MessageTextView : NSTextView +{ +} + +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeNames; +- (BOOL)accessibilityIsIgnored; +- (void)drawRect:(struct CGRect)arg1; +- (void)saveAs:(id)arg1; +- (void)showPrintPanel:(id)arg1; +- (void)toggleShowControlCharacters:(id)arg1; +- (id)menuForEvent:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)acceptsFirstResponder; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageTransfer.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageTransfer.h new file mode 100644 index 00000000..7cb9881c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageTransfer.h @@ -0,0 +1,56 @@ +/* + * 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 "MCActivityTarget.h" +#import "MessageDeletionTransfer.h" + +@class NSArray, NSMutableArray; + +@interface MessageTransfer : NSObject +{ + NSMutableArray *_operations; + BOOL _registeredForUndo; + BOOL _isDeleteOperation; + BOOL _isArchiveOperation; + BOOL _undoInProgress; + BOOL _needToUndoTransfer; + BOOL _deleteOriginals; + BOOL _allowsUndo; + id _delegate; + NSArray *_sourceLabels; +} + ++ (void)queueMailboxDeletions:(id)arg1; ++ (BOOL)_shouldProceedWithMailboxDeletions:(id)arg1; ++ (void)_redo:(id)arg1; ++ (void)_undo:(id)arg1; ++ (void)initialize; +@property(copy) NSArray *sourceLabels; // @synthesize sourceLabels=_sourceLabels; +@property BOOL allowsUndo; // @synthesize allowsUndo=_allowsUndo; +@property BOOL deleteOriginals; // @synthesize deleteOriginals=_deleteOriginals; +@property id delegate; // @synthesize delegate=_delegate; +- (id)_undoActionNameForMessageCount:(unsigned long long)arg1; +- (BOOL)anySourceStoreAllowsDeleteInPlace; +- (id)sourceStores; +- (id)destinationMailboxes; +- (void)_synchronouslyPerformTransfer; +- (void)_postDidEndDocumentTransferNotification:(id)arg1 result:(long long)arg2 destinationAccount:(id)arg3 missedMessages:(id)arg4; +- (void)_postWillBeginDocumentTransferNotification:(id)arg1; +- (void)_redo; +- (void)_undoSettingFlags:(id)arg1 transferringMessages:(id)arg2; +- (void)_undoSettingFlagsCompletedWithMessages:(id)arg1; +- (void)_undo; +- (void)_registerForUndoType:(int)arg1; +- (void)_completedTransferWithError:(id)arg1; +- (void)beginTransfer; +- (BOOL)canBeginTransfer; +- (id)initWithMessages:(id)arg1 targetMailbox:(id)arg2 isDeleteOperation:(BOOL)arg3 isArchiveOperation:(BOOL)arg4; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageTransferDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageTransferDelegate-Protocol.h new file mode 100644 index 00000000..82fb81b4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageTransferDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * 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" + +@protocol MessageTransferDelegate +- (void)messageTransferDidUndoTransferOfMessages:(id)arg1; +- (void)messageTransferDidTransferMessages:(id)arg1; +- (void)unhideMessagesForMessageTransfer:(id)arg1; +- (void)hideMessagesForMessageTransfer:(id)arg1; +- (id)undoManagerForMessageTransfer:(id)arg1; +- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageView.h new file mode 100644 index 00000000..5cecd9bd --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageView.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface MessageView : NSView +{ +} + +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsIgnored; +- (BOOL)isOpaque; +- (BOOL)isFlipped; +- (BOOL)canBecomeKeyView; +- (BOOL)acceptsFirstResponder; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewController.h new file mode 100644 index 00000000..08074509 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewController.h @@ -0,0 +1,85 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +#import "NSMenuDelegate.h" + +@class BannerContainerViewController, HeaderViewController, MessageViewer, MessageWebDocumentView, NSScrollView, NSSegmentedControl, NSTrackingArea; + +@interface MessageViewController : NSViewController +{ + BOOL _displayAsSingleton; + double _pageZoom; + BannerContainerViewController *_bannerContainerViewController; + HeaderViewController *_headerViewController; + NSSegmentedControl *_actionButtons; + NSScrollView *_bodyScrollView; + MessageWebDocumentView *_webDocumentView; + NSTrackingArea *_headerTrackingArea; +} + ++ (id)keyPathsForValuesAffectingShowingAllHeaders; ++ (id)keyPathsForValuesAffectingLoaded; +@property(retain, nonatomic) NSTrackingArea *headerTrackingArea; // @synthesize headerTrackingArea=_headerTrackingArea; +@property(retain, nonatomic) MessageWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(retain, nonatomic) NSScrollView *bodyScrollView; // @synthesize bodyScrollView=_bodyScrollView; +@property(retain, nonatomic) NSSegmentedControl *actionButtons; // @synthesize actionButtons=_actionButtons; +@property(retain, nonatomic) HeaderViewController *headerViewController; // @synthesize headerViewController=_headerViewController; +@property(retain, nonatomic) BannerContainerViewController *bannerContainerViewController; // @synthesize bannerContainerViewController=_bannerContainerViewController; +- (void)linkAccessibilityView:(id)arg1; +- (id)viewWhereMessageExists; +- (id)viewWhereMessageIsDisplayed; +- (BOOL)isHeaderViewFullyVisible; +- (id)headerSnapshot; +- (void)bodySnapshotWithSize:(struct CGSize)arg1 completionBlock:(id)arg2; +- (struct CGSize)visibleBodySize; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateToolbarItem:(id)arg1; +- (void)menuNeedsUpdate:(id)arg1; +- (void)viewSource:(id)arg1; +- (void)showMessageInMailbox:(id)arg1; +- (void)showFilteredHeaders:(id)arg1; +- (void)showAllHeaders:(id)arg1; +- (void)exportAttachmentsToiPhoto:(id)arg1; +- (void)saveAllAttachmentsWithoutPrompting:(id)arg1; +- (void)saveAllAttachments:(id)arg1; +- (void)saveAttachment:(id)arg1; +- (void)quickLookAllAttachments:(id)arg1; +- (void)forwardAction:(id)arg1; +- (void)replyAllAction:(id)arg1; +- (void)replyAction:(id)arg1; +- (void)deleteAction:(id)arg1; +- (void)_interpretAction:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)_updateHeaderMouseOver; +- (void)_updateHeaderTrackingArea; +- (void)_updateLoadRemoteContent; +- (void)_updateHeaderFont; +- (void)_updateActionButtons; +- (void)_updateWebDocumentView; +- (void)_viewerPreferencesChanged; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(readonly, nonatomic) BOOL showingAllHeaders; +@property(nonatomic) double pageZoom; +@property(readonly, nonatomic) MessageViewer *messageViewer; +@property(readonly, nonatomic) BOOL loaded; +@property(nonatomic) BOOL displayAsSingleton; +- (void)_showLoadingProgress; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +- (void)setView:(id)arg1; +- (id)view; +- (void)dealloc; +- (void)_setupActionButtons; +- (void)_setupBodyScrollView; +- (void)_setupHeaderView; +- (void)awakeFromNib; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewer.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewer.h new file mode 100644 index 00000000..267dfa84 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewer.h @@ -0,0 +1,558 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSResponder.h" + +#import "FlaggedStatusToolbarItemDelegate.h" +#import "MCActivityTarget.h" +#import "MVMailboxSelectionOwner.h" +#import "MVTerminationHandler.h" +#import "MailTableViewDelegateDelegate.h" +#import "MailboxesOutlineViewControllerDelegate.h" +#import "MessageTransferDelegate.h" +#import "MessageViewerSearchFieldFocusDelegate.h" +#import "NSAnimationDelegate.h" +#import "NSSpeechSynthesizerDelegate.h" +#import "NSToolbarDelegate.h" +#import "NSUserInterfaceValidations.h" +#import "NSWindowDelegate.h" +#import "SGTSearchFieldQueryScopeDelegate.h" +#import "SearchScopeDelegate.h" + +@class ActivityViewController, ContentSplitViewController, FavoritesBarView, FlaggedStatusToolbarItem, FullScreenWindowController, MCInvocationQueue, MCSafeBoolCache, MailBarContainerView, MailSplitView, MailToolbar, MailboxPaneBottomView, MailboxesOutlineViewController, MailboxesSplitViewController, MessageListContainerView, MessageViewerLazyPopUpButton, MessageViewerSearchField, NSAnimation, NSArray, NSDictionary, NSLayoutConstraint, NSMenu, NSMenuItem, NSMutableArray, NSNumber, NSSet, NSString, NSTextField, NSTimer, NSToolbarItem, NSView, NSWindow, RichMessageListSortView, TableViewManager, ViewingPaneViewController; + +@interface MessageViewer : NSResponder +{ + id _messageMall; + MessageViewerSearchField *_searchField; + NSToolbarItem *_searchViewItem; + MailToolbar *_toolbar; + NSDictionary *_toolbarItems; + NSWindow *_window; + FlaggedStatusToolbarItem *_flaggedStatusToolbarItem; + NSToolbarItem *_fullScreenFlagMenuToolbarItem; + NSDictionary *_savedAttributes; + struct __MDQuery *_lowPriorityQuery; + struct __MDQuery *_highPriorityQuery; + MCInvocationQueue *_userTasks; + NSString *_searchQuery; + NSString *_searchPhrase; + long long _currentSearchField; + int _currentSearchTarget; + long long _selectedTag; + NSMenu *_messageColumnsMenu; + NSMenu *_messageSortByMenu; + NSMenuItem *_columnsMenuItem; + NSMenuItem *_sortByMenuItem; + NSMenuItem *_dateReceivedMenuItem; + NSMenuItem *_dateSentMenuItem; + NSMenuItem *_dateReceivedTableHeaderMenuItem; + NSMenuItem *_dateSentTableHeaderMenuItem; + MailboxPaneBottomView *_mailboxPaneBottomView; + struct CGSize _messageListUserSize; + double _mailboxesPaneUserWidth; + BOOL _shouldPreventTableViewResize; + BOOL _shouldMakeTableViewSelectionVisible; + BOOL _showingDefaultSearchString; + BOOL _updatingSearchField; + BOOL _allowShowingDeletedMessages; + BOOL _suppressWindowTitleUpdates; + BOOL _didSetupUI; + double _restoreMailboxPaneToWidthAfterDragOperation; + NSArray *_mailboxesToDisplayWhenVisible; + NSString *_stringToSearchWhenVisible; + BOOL _shouldCascadeWhenShowing; + NSDictionary *_initialWindowState; + NSArray *_messagesToDeleteAfterPlainTextTransferHasCompleted; + NSSet *_initiallySelectedMessages; + NSMutableArray *_transferOperations; + NSDictionary *_plainTextTransferParameters; + RichMessageListSortView *_sortView; + MCSafeBoolCache *_atLeastOneSelectedMessageIsInOutboxCache; + MCSafeBoolCache *_atLeastOneSelectedMessageIsInDraftsCache; + NSNumber *_uniqueID; + BOOL _changingSplitViewOrientation; + BOOL _initializedSearchDelay; + double _performSearchDelay; + NSAnimation *_barContainerViewAnimation; + NSTimer *_timeMachineRestoreSheetTimer; + BOOL _timeMachineRestoreIsInProgress; + FullScreenWindowController *_fullScreenWindowController; + MailboxesSplitViewController *_mailboxesSplitViewController; + ContentSplitViewController *_contentSplitViewController; + BOOL _ignoreSearchBarUpdates; + BOOL _previouslyHadSentScope; + TableViewManager *_tableManager; + NSView *_viewingPaneContainerView; + ViewingPaneViewController *_viewingPaneViewController; + MailboxesOutlineViewController *_outlineViewController; + MailSplitView *_contentSplitView; + MessageListContainerView *_messageListContainerView; + MailSplitView *_mailboxesSplitView; + NSView *_viewerContainer; + NSView *_mailboxesView; + NSView *_mailboxesContainer; + NSLayoutConstraint *_mailboxesWidthConstraint; + ActivityViewController *_activityViewController; + NSMenu *_tableHeaderMenu; + NSMenu *_sortByTableHeaderMenu; + MessageViewerLazyPopUpButton *_makeNewMailboxButton; + MessageViewerLazyPopUpButton *_actionButton; + MailBarContainerView *_mailBarContainerView; + FavoritesBarView *_favoritesBarView; + NSWindow *_timeMachineRestoreMessagesWindow; + NSTextField *_timeMachineRestoreMessagesField; + NSWindow *_timeMachineRestoreMailboxWindow; + NSTextField *_timeMachineRestoreMailboxField; +} + ++ (id)_messageViewersByUniqueID; ++ (void)restoreWindowWithIdentifier:(id)arg1 state:(id)arg2 completionHandler:(id)arg3; ++ (id)newDefaultMessageViewer; ++ (void)clearDelayedWindowRestorations; ++ (void)_mailApplicationDidFinishLaunching:(id)arg1; ++ (void)restoreAllViewersFromDefaults; ++ (unsigned long long)deleteOperationForEvent:(id)arg1 isKeyPressed:(BOOL)arg2; ++ (id)_mailboxesForPaths:(id)arg1; ++ (void)searchForString:(id)arg1; ++ (id)frontmostMessageViewerWithOptions:(unsigned long long)arg1; ++ (id)mailboxesBeingViewed; ++ (void)showAllViewers; ++ (void)deregisterViewer:(id)arg1; ++ (void)_registerNewViewer:(id)arg1; ++ (id)existingViewerShowingMessage:(id)arg1; ++ (id)viewerForMailboxWithTag:(unsigned long long)arg1; ++ (id)mailboxForFavoritesBarPosition:(unsigned long long)arg1; ++ (id)existingViewerForMailbox:(id)arg1; ++ (id)allSingleMessageViewers; ++ (id)allMessageViewers; ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; ++ (void)initialize; ++ (id)messageViewerForUniqueID:(id)arg1; ++ (id)toolbarIdentifier; +@property(nonatomic) BOOL previouslyHadSentScope; // @synthesize previouslyHadSentScope=_previouslyHadSentScope; +@property(nonatomic) BOOL ignoreSearchBarUpdates; // @synthesize ignoreSearchBarUpdates=_ignoreSearchBarUpdates; +@property(nonatomic) NSTextField *timeMachineRestoreMailboxField; // @synthesize timeMachineRestoreMailboxField=_timeMachineRestoreMailboxField; +@property(retain, nonatomic) NSWindow *timeMachineRestoreMailboxWindow; // @synthesize timeMachineRestoreMailboxWindow=_timeMachineRestoreMailboxWindow; +@property(nonatomic) NSTextField *timeMachineRestoreMessagesField; // @synthesize timeMachineRestoreMessagesField=_timeMachineRestoreMessagesField; +@property(retain, nonatomic) NSWindow *timeMachineRestoreMessagesWindow; // @synthesize timeMachineRestoreMessagesWindow=_timeMachineRestoreMessagesWindow; +@property(nonatomic) FavoritesBarView *favoritesBarView; // @synthesize favoritesBarView=_favoritesBarView; +@property(nonatomic) MailBarContainerView *mailBarContainerView; // @synthesize mailBarContainerView=_mailBarContainerView; +@property(readonly) NSDictionary *savedAttributes; // @synthesize savedAttributes=_savedAttributes; +@property(nonatomic) MessageViewerLazyPopUpButton *actionButton; // @synthesize actionButton=_actionButton; +@property(nonatomic) MessageViewerLazyPopUpButton *makeNewMailboxButton; // @synthesize makeNewMailboxButton=_makeNewMailboxButton; +@property(nonatomic) NSMenu *sortByTableHeaderMenu; // @synthesize sortByTableHeaderMenu=_sortByTableHeaderMenu; +@property(retain, nonatomic) NSMenu *tableHeaderMenu; // @synthesize tableHeaderMenu=_tableHeaderMenu; +@property(retain, nonatomic) ActivityViewController *activityViewController; // @synthesize activityViewController=_activityViewController; +@property(nonatomic) NSLayoutConstraint *mailboxesWidthConstraint; // @synthesize mailboxesWidthConstraint=_mailboxesWidthConstraint; +@property(nonatomic) NSView *mailboxesContainer; // @synthesize mailboxesContainer=_mailboxesContainer; +@property(retain, nonatomic) NSView *mailboxesView; // @synthesize mailboxesView=_mailboxesView; +@property(nonatomic) NSView *viewerContainer; // @synthesize viewerContainer=_viewerContainer; +@property(nonatomic) MailSplitView *mailboxesSplitView; // @synthesize mailboxesSplitView=_mailboxesSplitView; +@property(nonatomic) MessageListContainerView *messageListContainerView; // @synthesize messageListContainerView=_messageListContainerView; +@property(retain, nonatomic) MailSplitView *contentSplitView; // @synthesize contentSplitView=_contentSplitView; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +@property(retain, nonatomic) MailboxesOutlineViewController *outlineViewController; // @synthesize outlineViewController=_outlineViewController; +@property(retain, nonatomic) ViewingPaneViewController *viewingPaneViewController; // @synthesize viewingPaneViewController=_viewingPaneViewController; +@property(nonatomic) NSView *viewingPaneContainerView; // @synthesize viewingPaneContainerView=_viewingPaneContainerView; +@property(retain, nonatomic) TableViewManager *tableManager; // @synthesize tableManager=_tableManager; +- (void)_alwaysShowDuplicatesDidChange:(id)arg1; +- (void)window:(id)arg1 startCustomAnimationToExitFullScreenWithDuration:(double)arg2; +- (id)customWindowsToExitFullScreenForWindow:(id)arg1; +- (BOOL)usesCustomFullScreenAnimation; +- (BOOL)isModal; +- (BOOL)hasModalWindow; +- (void)_windowDidExitFullScreen:(id)arg1; +- (void)_windowWillExitFullScreen:(id)arg1; +- (void)windowDidFailToEnterFullScreen:(id)arg1; +- (void)_windowWillEnterFullScreen:(id)arg1; +- (void)initFullScreenController; +- (void)setFullScreenWindowController:(id)arg1; +@property(readonly) FullScreenWindowController *fullScreenWindowController; +- (void)attachModalWindowWithDelegate:(id)arg1; +- (void)willAttachModalWindowWithDelegate:(id)arg1; +- (void)closeModalWindowForcibly:(BOOL)arg1 animate:(BOOL)arg2 animationType:(long long)arg3; +- (void)closeModalWindowForcibly:(BOOL)arg1 animate:(BOOL)arg2; +- (void)presentModalWindowWithDelegate:(id)arg1; +- (BOOL)isFullScreen; +- (void)animationDidStop:(id)arg1; +- (void)animationDidEnd:(id)arg1; +- (void)_animationDidEndOrStop:(id)arg1; +- (BOOL)animationShouldStart:(id)arg1; +- (void)animation:(id)arg1 didReachProgressMark:(float)arg2; +@property(readonly) struct CGRect nonToolbarWindowContentRect; +- (struct CGRect)window:(id)arg1 willPositionSheet:(id)arg2 usingRect:(struct CGRect)arg3; +- (void)toggleShowBarContainer:(id)arg1; +- (void)setWithoutAnimationBarContainerVisibility:(BOOL)arg1 forFullScreen:(BOOL)arg2; +- (void)_createUniqueID; +- (void)_updateSearchItemLabel; +- (id)undoManagerForMessageTransfer:(id)arg1; +- (void)messageTransferDidUndoTransferOfMessages:(id)arg1; +- (void)messageTransferDidTransferMessages:(id)arg1; +- (void)unhideMessagesForMessageTransfer:(id)arg1; +- (void)hideMessagesForMessageTransfer:(id)arg1; +- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; +- (void)_reportError:(id)arg1; +- (id)_selectedLabels; +- (BOOL)transferMessages:(id)arg1 toMailbox:(id)arg2 deleteOriginals:(BOOL)arg3 allowUndo:(BOOL)arg4 isDeleteOperation:(BOOL)arg5 isArchiveOperation:(BOOL)arg6; +- (void)_synchronouslyMarkAsNotJunkMail:(id)arg1 inStores:(id)arg2; +- (void)_markMessagesAsNotJunkMail:(id)arg1 stores:(id)arg2; +- (void)markAsNotJunkMail:(id)arg1; +- (void)_undoMarkMessagesAsJunkMail:(id)arg1 stores:(id)arg2; +- (void)_synchronouslyMarkAsJunkMail:(id)arg1 inStores:(id)arg2 delete:(BOOL)arg3; +- (void)_deleteJunkedMessages:(id)arg1 inStores:(id)arg2 moveToTrash:(BOOL)arg3; +- (void)_markMessagesAsJunkMail:(id)arg1 stores:(id)arg2; +- (void)markAsJunkMail:(id)arg1; +- (id)searchFieldWidenScopeMenuSpinnerTitleString:(id)arg1; +- (id)searchFieldWidenScopeMenuItemTitleString:(id)arg1; +- (id)searchFieldWidenScopeMenuTitleString:(id)arg1; +- (void)searchFieldWidenQueryScope:(id)arg1; +- (BOOL)searchField:(id)arg1 hasResultsForQuery:(id)arg2; +- (BOOL)searchFieldUsesRestrictedQueryScope:(id)arg1; +- (void)addSenderToContacts:(id)arg1; +- (void)reapplySortingRules:(id)arg1; +- (void)saveSearch:(id)arg1; +- (void)searchScopeChanged:(id)arg1; +- (void)searchScopeWillChange; +- (BOOL)_hasSentScope; +- (void)performSearch:(id)arg1; +- (void)_updateSearchUIForSender:(id)arg1; +- (void)searchDidUpdate; +- (void)searchDidFinish; +- (void)searchWillStart; +- (void)clearUndoRedoStacksUnconditionally:(BOOL)arg1; +- (void)_updateSearchStatusWithDelay; +- (void)_reallyAnimateProgressInidicator; +@property(copy, nonatomic) NSSet *initiallySelectedMessages; +- (void)filterMessagesToMoveOrDelete:(id)arg1; +- (BOOL)archiveMessages:(id)arg1 allowUndo:(BOOL)arg2; +- (BOOL)deleteMessages:(id)arg1 allowMoveToTrash:(BOOL)arg2 allowUndo:(BOOL)arg3; +- (BOOL)transferSelectedMessagesToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (void)messageDragDidEnd; +- (void)ensureMailboxesPaneIsVisible:(id)arg1; +- (void)messageDragMovedTo:(struct CGPoint)arg1; +- (void)messageDragWillStartWithEvent:(id)arg1; +- (void)messageWasDoubleClicked:(id)arg1; +- (void)actionMessageDidChangeInConversationView; +- (void)selectedMessagesDidChangeInMessageList; +- (void)refreshViewingPaneSelection; +- (void)messagesWereSelected:(id)arg1 fromTableViewManager:(id)arg2; +- (void)_updateMallboxes:(id)arg1; +- (id)_columnOrDetailMenuItemTitle; +- (void)_reallyUpdateWindowTitle:(id)arg1; +- (void)_updateWindowTitle:(id)arg1; +- (void)_mailboxDisplayCountChanged:(id)arg1; +- (id)_countStringForType:(BOOL)arg1 isDrafts:(BOOL)arg2 omitUnread:(BOOL)arg3 totalCount:(unsigned long long *)arg4; +- (void)saveDefaultWindowState; +- (void)saveDefaultViewerState; +- (void)window:(id)arg1 willEncodeRestorableState:(id)arg2; +- (void)_restoreFromDefaultWindowStateDictionary:(id)arg1; +- (id)_defaultWindowStateDictionary; +- (void)_setupFromAttributes; +- (void)_findSomeDefaultsIfNecessary; +- (id)dictionaryRepresentation; +- (void)toggleSizeColumn:(id)arg1; +- (void)toggleAuthorColumn:(id)arg1; +- (void)toggleLocationColumn:(id)arg1; +- (void)toggleDateReceivedColumn:(id)arg1; +- (void)toggleDateSentColumn:(id)arg1; +- (void)toggleToColumn:(id)arg1; +- (void)toggleFromColumn:(id)arg1; +- (void)toggleMessageFlagsColumn:(id)arg1; +- (void)toggleMessageNumbersColumn:(id)arg1; +- (void)toggleContentsColumn:(id)arg1; +- (void)hideDeletions:(id)arg1; +- (void)showDeletions:(id)arg1; +- (void)selectNextInThread:(id)arg1; +- (void)selectPreviousInThread:(id)arg1; +- (void)selectThread:(id)arg1; +- (BOOL)shouldShowThreadControlForMessage:(id)arg1 isSelectedRow:(BOOL)arg2; +- (void)toggleViewRelatedMessages:(id)arg1; +- (void)toggleThreadedMode:(id)arg1; +- (void)closeAllThreads:(id)arg1; +- (void)openAllThreads:(id)arg1; +- (void)unfocus:(id)arg1; +- (void)focus:(id)arg1; +- (void)toggleInboxOnly:(id)arg1; +- (void)toggleAscendingSort:(id)arg1; +- (void)sortByTagOfSender:(id)arg1; +- (void)removeAttachments:(id)arg1; +- (void)_removeAttachmentsFromMessages:(id)arg1 fromStores:(id)arg2; +- (void)_handleAttachmentsRemovedFromMessages:(id)arg1 newMessages:(id)arg2; +- (int)searchTarget; +- (long long)_searchField; +- (void)_setupSearchParametersForTag:(long long)arg1; +- (void)clearSearch:(id)arg1; +- (void)_clearSearchByAnimating:(BOOL)arg1; +- (void)_updateSearchStatus; +@property(copy, nonatomic) NSString *searchPhrase; +- (void)startSearchForSuggestions:(id)arg1; +- (id)suggestionsGenius; +- (void)_searchForSuggestions:(id)arg1; +- (void)_searchForString:(id)arg1; +- (void)_hideSearchResultsInSearchView; +- (void)_showSearchResultsInSearchView; +- (BOOL)_canSearchSelectedMailboxes; +- (BOOL)_canSaveSearchWithTarget:(int)arg1; +- (unsigned long long)_searchResultCount; +@property(readonly, nonatomic) BOOL isShowingSearchResults; +- (void)searchIndex:(id)arg1; +- (id)mailboxSearchCriterionForScope:(int)arg1 containsSentMailbox:(char *)arg2 containsTrashMailbox:(char *)arg3 shouldExcludeJunk:(char *)arg4; +- (id)_criterionForMailbox:(id)arg1; +- (void)endPreviewPanelControl:(id)arg1; +- (void)beginPreviewPanelControl:(id)arg1; +- (BOOL)acceptsPreviewPanelControl:(id)arg1; +- (void)jumpToSelection:(id)arg1; +- (void)quickLookSelectedAttachments:(id)arg1; +- (void)saveAllAttachments:(id)arg1; +- (void)saveAs:(id)arg1; +- (BOOL)send:(id)arg1; +- (BOOL)_sendMessages:(id)arg1 forDraft:(BOOL)arg2; +- (BOOL)send:(id)arg1 forDraft:(BOOL)arg2 actualMessage:(id)arg3; +- (void)exportAsPDF:(id)arg1; +- (void)showPrintPanel:(id)arg1; +- (void)speechSynthesizer:(id)arg1 didFinishSpeaking:(BOOL)arg2; +- (void)stopSpeaking:(id)arg1; +- (void)startSpeaking:(id)arg1; +- (void)paste:(id)arg1; +- (void)_pasteData:(id)arg1 pasteboardType:(id)arg2 alternateData:(id)arg3 alternateType:(id)arg4 destination:(id)arg5; +- (long long)_pasteMessages:(id)arg1 unsuccessfulMessages:(id)arg2 flagsToSet:(id)arg3 destinationAccount:(id)arg4 destinationStore:(id)arg5; +- (void)cut:(id)arg1; +- (void)copy:(id)arg1; +- (BOOL)_doCopy:(id)arg1 deleteWhenCopied:(BOOL)arg2; +- (void)_showActivityProgressPanelForCopy:(id)arg1; +- (void)_copyMessagesToPasteboard:(id)arg1 deleteWhenCopied:(BOOL)arg2 pasteboardType:(id)arg3 alternateType:(id)arg4; +- (void)_putMessageDataOntoPasteboard:(id)arg1 attributedString:(id)arg2 shouldDelete:(id)arg3 pasteboardType:(id)arg4; +- (void)rebuildTableOfContents:(id)arg1; +- (void)changeColor:(id)arg1; +- (void)clearFlaggedStatus:(id)arg1; +- (void)toggleFlag:(id)arg1; +- (void)markAsUnreadFromToolbar:(id)arg1; +- (void)markAsReadFromToolbar:(id)arg1; +- (void)markAsUnread:(id)arg1; +- (void)markAsRead:(id)arg1; +- (void)performTextFinderAction:(id)arg1; +- (void)markMessagesAsViewed:(id)arg1; +- (void)markMessageAsViewed:(id)arg1; +- (void)modifyFlaggedStatus:(id)arg1; +- (void)clearFlaggedStatusForMessageListSelection:(BOOL)arg1; +- (void)clearFlaggedStatus; +- (id)_flaggedStatusForMessages:(id)arg1; +- (void)_setFlaggedStatus:(id)arg1 withUndoActionName:(id)arg2; +- (id)_messagesWithoutFlagColor:(BOOL)arg1 fromMessages:(id)arg2; +- (void)toggleFlaggedStatus:(BOOL)arg1 forMessageListSelection:(BOOL)arg2; +- (void)toggleFlaggedStatus:(BOOL)arg1; +- (void)toggleFlaggedStatusInFullScreen:(id)arg1; +- (id)appliedFlagColorsForSelectedMessages; +- (void)_changeFlag:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3 undoActionName:(id)arg4; +- (id)_selectedMessagesWhoseFlag:(unsigned int)arg1 isEqualToState:(BOOL)arg2 action:(SEL)arg3; +- (void)copyMessagesToMailbox:(id)arg1; +- (void)moveMessagesToMailbox:(id)arg1; +- (void)_moveOrCopyMessagesToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (void)renameMailbox:(id)arg1; +- (id)_displaySelectedMessageInSeparateWindow:(id)arg1 withModifiers:(unsigned long long)arg2; +- (id)_documentsToDisplaySelectedMessagesInSeperateWindowWithModifiers:(unsigned long long)arg1; +- (id)displaySelectedMessageInSeparateWindow:(id)arg1; +- (void)forwardWithParentAsAttachment:(id)arg1; +- (void)forwardAsAttachment:(id)arg1; +- (void)forwardMessage:(id)arg1; +- (void)redirectMessage:(id)arg1; +- (BOOL)showEditorWithType:(unsigned long long)arg1 forSelectedMessages:(id)arg2 settings:(id)arg3 completionHandler:(id)arg4; +- (void)_showComposeWindowWithType:(unsigned long long)arg1; +- (void)showAccountInfo:(id)arg1; +- (void)focusMessage; +- (void)focusMailboxes; +- (void)focusMessages; +- (void)selectAllMessages; +- (void)_openMessages:(id)arg1 withModifiers:(unsigned long long)arg2; +- (void)openMessages:(id)arg1; +- (void)archiveMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 allowingMoveToTrash:(BOOL)arg2; +- (void)deleteMessages:(id)arg1; +- (void)undeleteMessages:(id)arg1; +- (void)showAddressPanel:(id)arg1; +- (void)showComposeWindow:(id)arg1; +- (void)replyToOriginalSender:(id)arg1; +- (void)replyAllMessage:(id)arg1; +- (void)replyMessage:(id)arg1; +- (void)checkNewMail:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (id)smartMailboxMemberMessagesForMessages:(id)arg1; +- (BOOL)shouldDeleteMessagesGivenCurrentState; +- (BOOL)_updatedAtLeastOneSelectedMessageIsInDrafts:(id)arg1; +- (BOOL)atLeastOneSelectedMessageIsInDrafts:(id)arg1; +- (BOOL)_updatedAtLeastOneSelectedMessageIsInOutbox:(id)arg1; +- (BOOL)atLeastOneSelectedMessageIsInOutbox:(id)arg1; +- (BOOL)_messagesContainMessagesWithAttachments:(id)arg1; +- (BOOL)_messages:(id)arg1 containMessagesWithJunkMailLevelEqualTo:(long long)arg2; +- (BOOL)_messages:(id)arg1 containMessagesWithFlaggedStatusEqualTo:(BOOL)arg2; +- (long long)_messages:(id)arg1 stateForFlagColor:(BOOL)arg2; +- (BOOL)_messages:(id)arg1 containMessagesWithReadStatusEqualTo:(BOOL)arg2; +- (void)_setMailboxes:(id)arg1; +- (void)smartMailboxCriteriaChanged:(id)arg1; +- (void)_selectNextMessage:(id)arg1; +- (void)_mailboxesDidChange:(id)arg1; +- (void)_accountsDidChange:(id)arg1; +- (void)_mallStructureDidChange:(id)arg1; +- (void)_mallDidOpen:(id)arg1; +- (BOOL)messageViewerIsFinishedLoadingMessages; +- (void)_updateUnreadCountQueries:(id)arg1; +- (void)mailboxSelectionChanged:(id)arg1; +- (void)_mailboxWasRenamed:(id)arg1; +- (void)swipeWithEvent:(id)arg1; +- (void)keyUp:(id)arg1; +- (void)keyDown:(id)arg1; +- (double)previewSplitPercentage; +- (void)selectMailbox:(id)arg1; +- (void)_moveMessagesToFavoriteWithMailbox:(id)arg1 andPosition:(unsigned long long)arg2; +- (void)_animateMessageSelectionToFavoriteButtonAtPosition:(long long)arg1 withCount:(unsigned long long)arg2 image:(id)arg3 fromPosition:(struct CGPoint)arg4; +- (void)outlineViewDoubleClick:(id)arg1; +- (id)messageThatUserIsProbablyReading; +- (id)currentDisplayedMessage; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (void)hideAllCopiesOfMessages:(id)arg1; +- (void)showAllCopiesOfMessage:(id)arg1; +- (id)messageIDsToShowAllCopiesOf; +- (id)messageSelectionForPrinting; +- (id)messageSelection; +- (id)messagesTargetedByAction:(SEL)arg1; +- (void)_firstResponderIsViewingPane:(char *)arg1 isMessageList:(char *)arg2; +- (BOOL)outgoingMailboxSelected; +- (void)setSelectedMessages:(id)arg1; +- (id)selectedMessages; +- (void)setSelectedMailboxes:(id)arg1 scrollToVisible:(BOOL)arg2; +- (void)setSelectedMailboxes:(id)arg1; +- (void)didCloseContextMenu:(id)arg1; +- (void)willShowContextMenu:(id)arg1; +- (id)mailboxSelectionWindow; +- (void)revealMailbox:(id)arg1; +- (id)sortedSectionItemsForTimeMachine; +- (id)expandedItems; +- (BOOL)sectionIsExpanded:(id)arg1; +- (BOOL)mailboxIsExpanded:(id)arg1; +- (void)selectPathsToMailboxes:(id)arg1; +- (BOOL)isSelectedMailboxSpecial; +- (id)selectedMailbox; +- (id)selectedMailbox:(BOOL)arg1; +- (id)expandedSelectedMailboxesAllowingSearch; +- (id)expandedSelectedMailboxes; +- (id)selectedMailboxes; +- (void)_setAutorecalculatesContentBorderThickness:(BOOL)arg1; +- (void)_timeMachineRestoreFinished:(id)arg1; +- (void)_beginTimeMachineRestoreSheetIsForMailbox:(id)arg1; +- (void)_displayTimeMachineRestoreSheet:(id)arg1; +- (void)prepareForTimeMachineRestore; +@property(retain, nonatomic) ContentSplitViewController *contentSplitViewController; +@property(retain, nonatomic) MailboxesSplitViewController *mailboxesSplitViewController; +- (BOOL)_shouldUseLayoutContraintsForWindow:(id)arg1; +- (struct CGSize)_minimumPreviewPaneSize; +- (struct CGSize)_minimumMessageListSize; +- (struct CGSize)minimumContentSize; +- (double)_sidebarAnimationDuration; +- (void)toggleMailboxesPane:(id)arg1; +- (void)_disableSplitViewAutosaving; +- (void)_enableSplitViewAutosaving; +- (void)_viewerLayoutPreferenceChanged:(id)arg1; +- (BOOL)_mailboxesPaneIsOpenWideEnoughToUse; +- (void)setMailboxesPaneIsOpen:(BOOL)arg1; +- (BOOL)mailboxesPaneIsOpen; +- (double)mailboxesPaneWidth; +- (struct CGSize)windowWillResize:(id)arg1 toSize:(struct CGSize)arg2; +- (void)windowWillMiniaturize:(id)arg1; +- (BOOL)windowShouldClose:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)windowDidBecomeMain:(id)arg1; +- (void)resignAsSelectionOwner; +- (void)takeOverAsSelectionOwner; +- (void)_setUpMenus; +- (void)_setupMailboxOutlineView; +- (void)_setUpWindowContents; +- (id)messageListSortMenu; +- (id)tableHeaderViewGetDefaultMenu:(id)arg1; +- (void)_setupUIAndOrderFront:(BOOL)arg1 andMakeKey:(BOOL)arg2; +- (void)_updateWindowMinimumSize; +- (struct CGImage *)newMessageViewerSnapshotForceNonFullScreen:(BOOL)arg1; +- (void)showAndMakeKey:(BOOL)arg1; +- (void)show; +- (BOOL)_isShowingMessage:(id)arg1; +- (BOOL)_isViewingMailbox:(id)arg1; +- (BOOL)_selectedMailboxesAreOutgoing:(char *)arg1; +- (void)_setStore:(id)arg1; +- (void)storeBeingInvalidated:(id)arg1; +- (void)_unregisterForStoreNotifications; +- (void)_registerForStoreNotifications; +- (void)_unregisterForApplicationNotifications; +- (void)_registerForApplicationNotifications; +- (void)dealloc; +- (void)_messageViewerCommonInit; +- (id)initWithMailboxes:(id)arg1; +- (id)initPlain; +- (id)init; +- (void)intializeLazyPopUpButtons; +- (id)initWithAttributes:(id)arg1; +- (void)awakeFromNib; +- (id)_mailboxesFromAttributes:(id)arg1; +- (void)showFollowupsToMessage:(id)arg1; +- (void)_cantFindFollowupToMessage:(id)arg1; +- (void)_displayFollowup:(id)arg1; +- (void)showCurrentMessageInMailbox; +- (void)revealMessage:(id)arg1 inMailbox:(id)arg2 forceMailboxSelection:(BOOL)arg3; +- (long long)viewerNumber; +- (void)setScriptingProperties:(id)arg1; +- (id)junkMailbox; +- (id)trashMailbox; +- (id)sentMailbox; +- (id)draftsMailbox; +- (id)outbox; +- (id)inbox; +- (void)setVisibleColumns:(id)arg1; +- (id)visibleColumns; +- (BOOL)previewPaneVisible; +- (void)setIsSortedAscending:(BOOL)arg1; +- (BOOL)isSortedAscending; +- (void)setAppleScriptSortColumn:(unsigned int)arg1; +- (unsigned int)appleScriptSortColumn; +- (void)setFocusedMessages:(id)arg1; +- (id)focusedMessages; +- (id)allMessages; +- (id)objectSpecifier; +- (id)uniqueID; +- (void)submenuAction:(id)arg1; +- (void)_synchronizeFullScreenFlagToolbarItem:(id)arg1; +- (void)finishedSettingFlaggedStatus; +- (void)searchFieldDidEndSearching:(id)arg1; +- (void)ensureSearchFieldVisibilityInToolbar; +- (void)_ensureItemVisibilityInToolbar:(long long)arg1 identifier:(id)arg2; +- (void)toolbarDidReorderItem:(id)arg1; +- (void)toolbarDidRemoveItem:(id)arg1; +- (void)toolbarWillAddItem:(id)arg1; +- (void)updateToolbar; +- (id)toolbarAllowedItemIdentifiers:(id)arg1; +- (id)toolbarDefaultItemIdentifiers:(id)arg1; +- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; +- (void)setupSuggestionsSearchFieldForSentMailboxIfNecessary; +- (void)setupSuggestionsSearchField; +- (void)_setPrioritySuggestionsWithHighPriority:(BOOL)arg1 withLowPriority:(BOOL)arg2; +- (void)_updateSuggestionsMailboxesListAndFlagNames; +- (void)_asyncUpdateSuggestionsMailboxesListAndFlagNames:(id)arg1; +- (long long)_getLowPriorityResultCount; +- (long long)_getHighPriorityResultCount; +- (void)_setupPrioritySuggestions:(id)arg1; +- (void)_updateSuggestionsFlagNames; +- (void)_asyncUpdateSuggestionsFlagNames:(id)arg1; +- (void)configureSegmentedItem:(id)arg1 withDictionary:(id)arg2 forSegment:(long long)arg3; +- (BOOL)validateFlaggedStatusToolbarItem:(id)arg1; +- (BOOL)validateToolbarItem:(id)arg1; +- (id)toolbarConfigurationDict; +- (void)clearToolbarItemsTarget; +- (void)setupToolbar; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewerLazyPopUpButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewerLazyPopUpButton.h new file mode 100644 index 00000000..25914f1d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewerLazyPopUpButton.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@interface MessageViewerLazyPopUpButton : NSPopUpButton +{ + BOOL _didLazyLoadMenu; + long long _menuToUse; +} + +@property long long menuToUse; // @synthesize menuToUse=_menuToUse; +- (void)initializeMenu; +- (void)setMenu:(id)arg1; +- (void)dealloc; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewerSearchField.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewerSearchField.h new file mode 100644 index 00000000..45023d99 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewerSearchField.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "SGTSearchField.h" + +@interface MessageViewerSearchField : SGTSearchField +{ + id _focusDelegate; + BOOL _focused; +} + +@property id focusDelegate; // @synthesize focusDelegate=_focusDelegate; +@property(getter=isFocused) BOOL focused; +- (void)windowDidResignKey:(id)arg1; +- (void)_firstResponderDidChange:(id)arg1; +- (void)dealloc; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewerSearchFieldFocusDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewerSearchFieldFocusDelegate-Protocol.h new file mode 100644 index 00000000..71a3307b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageViewerSearchFieldFocusDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol MessageViewerSearchFieldFocusDelegate +- (void)searchFieldDidEndSearching:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageWebDocumentView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageWebDocumentView.h new file mode 100644 index 00000000..7eb0a710 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageWebDocumentView.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MUIWebDocumentView.h" + +@class NSIndexSet, NSMutableIndexSet; + +@interface MessageWebDocumentView : MUIWebDocumentView +{ + BOOL _expandAllRedundantContent; + NSMutableIndexSet *_expandedRedundantClusters; +} + +- (void)linkAccessibilityView:(id)arg1; +- (void)toggleHighlightRedundantContent:(id)arg1; +- (void)generateSelectionParsedMessage:(id)arg1; +- (void)generateStyleInlinedParsedMessage:(id)arg1; +- (BOOL)shouldHandleClickForURL:(id)arg1; +- (id)view:(id)arg1 stringForToolTip:(long long)arg2 point:(struct CGPoint)arg3 userData:(void *)arg4; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (void)resizeWithOldSuperviewSize:(struct CGSize)arg1; +- (void)setWebDocument:(id)arg1; +@property(copy, nonatomic) NSIndexSet *expandedRedundantClusters; +@property(nonatomic) BOOL expandAllRedundantContent; +- (void)_messageWebDocumentViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageWebDocumentViewGroupManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageWebDocumentViewGroupManager.h new file mode 100644 index 00000000..91b7c327 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageWebDocumentViewGroupManager.h @@ -0,0 +1,28 @@ +/* + * 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" + +@class MUIWebDocumentViewGroup; + +@interface MessageWebDocumentViewGroupManager : NSObject +{ + MUIWebDocumentViewGroup *_viewGroup; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain, nonatomic) MUIWebDocumentViewGroup *viewGroup; // @synthesize viewGroup=_viewGroup; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageWebHTMLView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageWebHTMLView.h new file mode 100644 index 00000000..74f7cb6f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageWebHTMLView.h @@ -0,0 +1,66 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebHTMLView.h" + +@class NSArray; + +@interface MessageWebHTMLView : WebHTMLView +{ + NSArray *_attachmentsForContextualMenu; +} + +- (void)endPreviewPanelControl:(id)arg1; +- (void)beginPreviewPanelControl:(id)arg1; +- (BOOL)acceptsPreviewPanelControl:(id)arg1; +- (void)setSelectionFloat:(id)arg1 undoTitle:(id)arg2; +- (BOOL)canFloatSelectedElement; +- (void)floatNone:(id)arg1; +- (void)floatRight:(id)arg1; +- (void)floatLeft:(id)arg1; +- (BOOL)shouldDelayWindowOrderingForEvent:(id)arg1; +- (BOOL)acceptsFirstMouse:(id)arg1; +- (void)mouseDragged:(id)arg1; +- (void)mouseUp:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)quickLookWithEvent:(id)arg1; +- (void)keyDown:(id)arg1; +- (id)messageViewer; +- (void)fixWebArchiveAndRTFDDataOnPasteboard:(id)arg1; +- (void)writeSelectionWithPasteboardTypes:(id)arg1 toPasteboard:(id)arg2; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)insertList:(id)arg1; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (void)insertNumberedList:(id)arg1; +- (void)insertBulletedList:(id)arg1; +- (void)exportAttachmentsToIPhoto:(id)arg1; +- (void)importInvitations:(id)arg1; +- (void)chooseApplicationToOpenAttachment:(id)arg1; +- (void)openAttachmentWithApplication:(id)arg1; +- (void)viewAttachmentInline:(id)arg1; +- (id)editingDelegate; +- (void)saveAttachmentToDownloadsDirectory:(id)arg1; +- (void)saveAttachment:(id)arg1; +- (void)quickLookAttachment:(id)arg1; +- (void)quickLookSelectedAttachments:(id)arg1; +- (void)openAttachment:(id)arg1; +- (id)attachmentForEvent:(id)arg1; +- (BOOL)moreThanOneAttachmentSelected; +- (BOOL)allSelectedAttachmentsArePhotos; +- (BOOL)selectionIsOneAttachment; +- (id)selectedAttachments; +- (void)willShowContextualMenuForAttachment:(id)arg1; +- (void)setAttachmentsForContextualMenu:(id)arg1; +- (id)attachmentsForContextualMenu; +- (id)selectedAttributedString; +- (void)_updateFontPanel; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MessageWebView.h b/MailHeaders/Mavericks_10.9.5/MailUI/MessageWebView.h new file mode 100644 index 00000000..584b0df3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MessageWebView.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "TilingWebView.h" + +@interface MessageWebView : TilingWebView +{ +} + +- (void)resizeWithOldSuperviewSize:(struct CGSize)arg1; +- (void)layoutResizingAttachmentViews; +- (void)keyDown:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ModalDimmingWindow.h b/MailHeaders/Mavericks_10.9.5/MailUI/ModalDimmingWindow.h new file mode 100644 index 00000000..bf7aecdc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ModalDimmingWindow.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface ModalDimmingWindow : NSWindow +{ +} + +- (void)dim; +- (id)initWithContentRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MouseTrackingWindow.h b/MailHeaders/Mavericks_10.9.5/MailUI/MouseTrackingWindow.h new file mode 100644 index 00000000..686a6fe5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MouseTrackingWindow.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface MouseTrackingWindow : NSWindow +{ + BOOL _customFullScreenAnimation; + BOOL _forceDrawAsMain; + BOOL _preventBecomingKey; + unsigned long long _fullScreenState; +} + +@property(readonly) unsigned long long fullScreenState; // @synthesize fullScreenState=_fullScreenState; +@property BOOL preventBecomingKey; // @synthesize preventBecomingKey=_preventBecomingKey; +@property BOOL forceDrawAsMain; // @synthesize forceDrawAsMain=_forceDrawAsMain; +- (void)_windowDidResize:(id)arg1; +- (void)_windowDidExitFullScreen:(id)arg1; +- (void)_windowWillExitFullScreen:(id)arg1; +- (void)_windowDidEnterFullScreen:(id)arg1; +- (void)_windowWillEnterFullScreen:(id)arg1; +- (BOOL)_isModalWindowPresent; +@property(readonly) BOOL isFullScreen; +- (BOOL)canBecomeKeyWindow; +- (BOOL)isMainWindow; +- (BOOL)validateMenuItem:(id)arg1; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (void)displayIfNeeded; +- (void)toggleToolbarShown:(id)arg1; +- (BOOL)makeFirstResponder:(id)arg1; +- (void)dealloc; +- (id)initWithContentRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/MultiImageCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/MultiImageCell.h new file mode 100644 index 00000000..0286c09d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/MultiImageCell.h @@ -0,0 +1,60 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageCell.h" + +@class NSMutableArray; + +@interface MultiImageCell : NSImageCell +{ + NSMutableArray *_images; + NSMutableArray *_subcells; + id _accessibilityValue; +} + +- (void)accessibilitySetValue:(id)arg1 forAttribute:(id)arg2; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityAttributeNames; +- (void)setImageScaling:(unsigned long long)arg1; +- (void)setImageAlignment:(unsigned long long)arg1; +- (unsigned long long)hitTestForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3; +- (void)highlight:(BOOL)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)calcDrawInfo:(struct CGRect)arg1; +- (id)_firstImageName; +- (long long)compare:(id)arg1; +- (id)stringValue; +- (void)_addSubcellsWithImages:(id)arg1; +- (void)setObjectValue:(id)arg1; +- (void)setEditable:(BOOL)arg1; +- (BOOL)isEditable; +- (void)setTitle:(id)arg1; +- (void)setUserInterfaceLayoutDirection:(long long)arg1; +- (void)setCellAttribute:(unsigned long long)arg1 to:(long long)arg2; +- (void)setBackgroundStyle:(long long)arg1; +- (void)setUsesSingleLineMode:(BOOL)arg1; +- (void)setTruncatesLastVisibleLine:(BOOL)arg1; +- (void)setLineBreakMode:(unsigned long long)arg1; +- (void)setBaseWritingDirection:(long long)arg1; +- (void)setControlSize:(unsigned long long)arg1; +- (void)setControlTint:(unsigned long long)arg1; +- (void)setFont:(id)arg1; +- (void)setAlignment:(unsigned long long)arg1; +- (void)setHighlighted:(BOOL)arg1; +- (void)setSelectable:(BOOL)arg1; +- (void)setEnabled:(BOOL)arg1; +- (void)setControlView:(id)arg1; +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)_multiImageCellCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initTextCell:(id)arg1; +- (id)initImageCell:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSAlert-MFErrorSupport.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSAlert-MFErrorSupport.h new file mode 100644 index 00000000..6dbae2d1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSAlert-MFErrorSupport.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAlert.h" + +@interface NSAlert (MFErrorSupport) ++ (id)alertForError:(id)arg1 firstButton:(id)arg2 secondButton:(id)arg3 thirdButton:(id)arg4; +- (void)setKeyEquivalent:(id)arg1 onButtonWithTitle:(id)arg2; +- (void)setEscapeKeyEquivalentOnButtonWithTitle:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSAnimationDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSAnimationDelegate-Protocol.h new file mode 100644 index 00000000..31d9a069 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSAnimationDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol NSAnimationDelegate + +@optional +- (void)animation:(id)arg1 didReachProgressMark:(float)arg2; +- (float)animation:(id)arg1 valueForProgress:(float)arg2; +- (void)animationDidEnd:(id)arg1; +- (void)animationDidStop:(id)arg1; +- (BOOL)animationShouldStart:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSApplicationDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSApplicationDelegate-Protocol.h new file mode 100644 index 00000000..b9ebf926 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSApplicationDelegate-Protocol.h @@ -0,0 +1,46 @@ +/* + * 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" + +@protocol NSApplicationDelegate + +@optional +- (void)applicationDidChangeOcclusionState:(id)arg1; +- (void)applicationDidChangeScreenParameters:(id)arg1; +- (void)applicationWillTerminate:(id)arg1; +- (void)applicationDidUpdate:(id)arg1; +- (void)applicationWillUpdate:(id)arg1; +- (void)applicationDidResignActive:(id)arg1; +- (void)applicationWillResignActive:(id)arg1; +- (void)applicationDidBecomeActive:(id)arg1; +- (void)applicationWillBecomeActive:(id)arg1; +- (void)applicationDidUnhide:(id)arg1; +- (void)applicationWillUnhide:(id)arg1; +- (void)applicationDidHide:(id)arg1; +- (void)applicationWillHide:(id)arg1; +- (void)applicationDidFinishLaunching:(id)arg1; +- (void)applicationWillFinishLaunching:(id)arg1; +- (void)application:(id)arg1 didDecodeRestorableState:(id)arg2; +- (void)application:(id)arg1 willEncodeRestorableState:(id)arg2; +- (void)application:(id)arg1 didReceiveRemoteNotification:(id)arg2; +- (void)application:(id)arg1 didFailToRegisterForRemoteNotificationsWithError:(id)arg2; +- (void)application:(id)arg1 didRegisterForRemoteNotificationsWithDeviceToken:(id)arg2; +- (id)application:(id)arg1 willPresentError:(id)arg2; +- (id)applicationDockMenu:(id)arg1; +- (BOOL)applicationShouldHandleReopen:(id)arg1 hasVisibleWindows:(BOOL)arg2; +- (BOOL)applicationShouldTerminateAfterLastWindowClosed:(id)arg1; +- (unsigned long long)application:(id)arg1 printFiles:(id)arg2 withSettings:(id)arg3 showPrintPanels:(BOOL)arg4; +- (BOOL)application:(id)arg1 printFile:(id)arg2; +- (BOOL)application:(id)arg1 openFileWithoutUI:(id)arg2; +- (BOOL)applicationOpenUntitledFile:(id)arg1; +- (BOOL)applicationShouldOpenUntitledFile:(id)arg1; +- (BOOL)application:(id)arg1 openTempFile:(id)arg2; +- (void)application:(id)arg1 openFiles:(id)arg2; +- (BOOL)application:(id)arg1 openFile:(id)arg2; +- (unsigned long long)applicationShouldTerminate:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSAttributedString-MailAttributedStringToHTML.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSAttributedString-MailAttributedStringToHTML.h new file mode 100644 index 00000000..864d2601 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSAttributedString-MailAttributedStringToHTML.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MailAttributedStringToHTML) +- (id)webArchiveForRange:(struct _NSRange)arg1; +- (id)webArchiveForRange:(struct _NSRange)arg1 fixUpNewlines:(BOOL)arg2; +- (id)webArchiveForRange:(struct _NSRange)arg1 signatureID:(id *)arg2; +- (id)webArchiveForRange:(struct _NSRange)arg1 signatureID:(id *)arg2 fixUpNewlines:(BOOL)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSCoding-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSCoding-Protocol.h new file mode 100644 index 00000000..7bda0254 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSCoding-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCoding +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSControl-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSControl-MailAdditions.h new file mode 100644 index 00000000..89cf0719 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSControl-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControl.h" + +@interface NSControl (MailAdditions) +- (void)sizeToFitAndAdjustWindowHeight; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSControlTextEditingDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSControlTextEditingDelegate-Protocol.h new file mode 100644 index 00000000..41d1e729 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSControlTextEditingDelegate-Protocol.h @@ -0,0 +1,20 @@ +/* + * 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" + +@protocol NSControlTextEditingDelegate + +@optional +- (id)control:(id)arg1 textView:(id)arg2 completions:(id)arg3 forPartialWordRange:(struct _NSRange)arg4 indexOfSelectedItem:(long long *)arg5; +- (BOOL)control:(id)arg1 textView:(id)arg2 doCommandBySelector:(SEL)arg3; +- (BOOL)control:(id)arg1 isValidObject:(id)arg2; +- (void)control:(id)arg1 didFailToValidatePartialString:(id)arg2 errorDescription:(id)arg3; +- (BOOL)control:(id)arg1 didFailToFormatString:(id)arg2 errorDescription:(id)arg3; +- (BOOL)control:(id)arg1 textShouldEndEditing:(id)arg2; +- (BOOL)control:(id)arg1 textShouldBeginEditing:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSCopying-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSCopying-Protocol.h new file mode 100644 index 00000000..3275f717 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCopying +- (id)copyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSDatePickerCellDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSDatePickerCellDelegate-Protocol.h new file mode 100644 index 00000000..b41a16f0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSDatePickerCellDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSDatePickerCellDelegate + +@optional +- (void)datePickerCell:(id)arg1 validateProposedDateValue:(id *)arg2 timeInterval:(double *)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSEvent-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSEvent-MailAdditions.h new file mode 100644 index 00000000..5cbc685e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSEvent-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEvent.h" + +@interface NSEvent (MailAdditions) +- (BOOL)_mv_isMouseEvent; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSEvent-MailViewerEvent.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSEvent-MailViewerEvent.h new file mode 100644 index 00000000..a7cef230 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSEvent-MailViewerEvent.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEvent.h" + +@interface NSEvent (MailViewerEvent) +- (void)_setModifierFlags:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSFileManagerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSFileManagerDelegate-Protocol.h new file mode 100644 index 00000000..b1fc717f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSFileManagerDelegate-Protocol.h @@ -0,0 +1,29 @@ +/* + * 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" + +@protocol NSFileManagerDelegate + +@optional +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtURL:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtPath:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 linkingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 linkingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldLinkItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldLinkItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 movingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 movingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldMoveItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldMoveItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 copyingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 copyingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldCopyItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldCopyItemAtPath:(id)arg2 toPath:(id)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSFont-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSFont-MailAdditions.h new file mode 100644 index 00000000..bdab82ea --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSFont-MailAdditions.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFont.h" + +@interface NSFont (MailAdditions) ++ (id)validFontFamilyName:(id)arg1 fixedPitchOnly:(BOOL)arg2; ++ (id)fontWithBaseFont:(id)arg1 overlayFont:(id)arg2; ++ (void)setMessageListFont:(id)arg1; ++ (id)messageListFont; ++ (void)setFixedWidthFont:(id)arg1; ++ (id)fixedWidthFont; ++ (void)setMessageFont:(id)arg1; ++ (id)messageFont; ++ (id)prefsAddressFieldFont; ++ (id)addressFieldFont; +- (BOOL)isEqualNameAndSize:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSFontManager-ToReplaceWithOurOwn.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSFontManager-ToReplaceWithOurOwn.h new file mode 100644 index 00000000..375cee8d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSFontManager-ToReplaceWithOurOwn.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFontManager.h" + +@interface NSFontManager (ToReplaceWithOurOwn) ++ (id)allocWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSInspectorBarClient-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSInspectorBarClient-Protocol.h new file mode 100644 index 00000000..35747105 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSInspectorBarClient-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol NSInspectorBarClient +- (id)inspectorBarItemIdentifiers; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSInspectorBarDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSInspectorBarDelegate-Protocol.h new file mode 100644 index 00000000..6c82e82b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSInspectorBarDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol NSInspectorBarDelegate + +@optional +- (id)inspectorBar:(id)arg1 shouldLayoutItem:(id)arg2; +- (id)inspectorBar:(id)arg1 itemForIdentifier:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSInspectorBarItemController-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSInspectorBarItemController-Protocol.h new file mode 100644 index 00000000..2d8d9618 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSInspectorBarItemController-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol NSInspectorBarItemController +- (id)viewForInspectorBarItem:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSLayoutManagerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSLayoutManagerDelegate-Protocol.h new file mode 100644 index 00000000..a1121846 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSLayoutManagerDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol NSLayoutManagerDelegate + +@optional +- (id)layoutManager:(id)arg1 shouldUseTemporaryAttributes:(id)arg2 forDrawingToScreen:(BOOL)arg3 atCharacterIndex:(unsigned long long)arg4 effectiveRange:(struct _NSRange *)arg5; +- (void)layoutManager:(id)arg1 didCompleteLayoutForTextContainer:(id)arg2 atEnd:(BOOL)arg3; +- (void)layoutManagerDidInvalidateLayout:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSMediaLibraryBrowserController-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSMediaLibraryBrowserController-MailAdditions.h new file mode 100644 index 00000000..f46a9ae7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSMediaLibraryBrowserController-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMediaLibraryBrowserController.h" + +@interface NSMediaLibraryBrowserController (MailAdditions) ++ (id)mv_sharedMailPhotoBrowser; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSMenuDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSMenuDelegate-Protocol.h new file mode 100644 index 00000000..41334b13 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSMenuDelegate-Protocol.h @@ -0,0 +1,21 @@ +/* + * 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" + +@protocol NSMenuDelegate + +@optional +- (struct CGRect)confinementRectForMenu:(id)arg1 onScreen:(id)arg2; +- (void)menu:(id)arg1 willHighlightItem:(id)arg2; +- (void)menuDidClose:(id)arg1; +- (void)menuWillOpen:(id)arg1; +- (BOOL)menuHasKeyEquivalent:(id)arg1 forEvent:(id)arg2 target:(id *)arg3 action:(SEL *)arg4; +- (BOOL)menu:(id)arg1 updateItem:(id)arg2 atIndex:(long long)arg3 shouldCancel:(BOOL)arg4; +- (long long)numberOfItemsInMenu:(id)arg1; +- (void)menuNeedsUpdate:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSNib-MailSharedNibLoading.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSNib-MailSharedNibLoading.h new file mode 100644 index 00000000..f2be4bfc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSNib-MailSharedNibLoading.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSNib.h" + +@interface NSNib (MailSharedNibLoading) ++ (BOOL)loadSharedNib:(long long)arg1 owner:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSObject-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSObject-Protocol.h new file mode 100644 index 00000000..19cf622d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSObject-Protocol.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSObject +- (id)description; +- (unsigned long long)retainCount; +- (id)autorelease; +- (oneway void)release; +- (id)retain; +- (BOOL)respondsToSelector:(SEL)arg1; +- (BOOL)conformsToProtocol:(id)arg1; +- (BOOL)isMemberOfClass:(Class)arg1; +- (BOOL)isKindOfClass:(Class)arg1; +- (BOOL)isProxy; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2 withObject:(id)arg3; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2; +- (id)performSelector:(SEL)arg1; +- (struct _NSZone *)zone; +- (id)self; +- (Class)class; +- (Class)superclass; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; + +@optional +- (id)debugDescription; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSOpenSavePanelDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSOpenSavePanelDelegate-Protocol.h new file mode 100644 index 00000000..eda955c7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSOpenSavePanelDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol NSOpenSavePanelDelegate + +@optional +- (void)panelSelectionDidChange:(id)arg1; +- (void)panel:(id)arg1 willExpand:(BOOL)arg2; +- (id)panel:(id)arg1 userEnteredFilename:(id)arg2 confirmed:(BOOL)arg3; +- (void)panel:(id)arg1 didChangeToDirectoryURL:(id)arg2; +- (BOOL)panel:(id)arg1 validateURL:(id)arg2 error:(id *)arg3; +- (BOOL)panel:(id)arg1 shouldEnableURL:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSOutlineView-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSOutlineView-MailAdditions.h new file mode 100644 index 00000000..92a83369 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSOutlineView-MailAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOutlineView.h" + +@interface NSOutlineView (MailAdditions) +- (id)editedItem; +- (id)copyOfItemAndDescendance:(id)arg1; +- (void)_collectDescendants:(id *)arg1 ofItem:(id)arg2; +- (BOOL)item:(id)arg1 isDescendantOf:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSOutlineViewDataSource-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSOutlineViewDataSource-Protocol.h new file mode 100644 index 00000000..2ea4628f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSOutlineViewDataSource-Protocol.h @@ -0,0 +1,29 @@ +/* + * 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" + +@protocol NSOutlineViewDataSource + +@optional +- (id)outlineView:(id)arg1 namesOfPromisedFilesDroppedAtDestination:(id)arg2 forDraggedItems:(id)arg3; +- (BOOL)outlineView:(id)arg1 acceptDrop:(id)arg2 item:(id)arg3 childIndex:(long long)arg4; +- (unsigned long long)outlineView:(id)arg1 validateDrop:(id)arg2 proposedItem:(id)arg3 proposedChildIndex:(long long)arg4; +- (void)outlineView:(id)arg1 updateDraggingItemsForDrag:(id)arg2; +- (BOOL)outlineView:(id)arg1 writeItems:(id)arg2 toPasteboard:(id)arg3; +- (void)outlineView:(id)arg1 draggingSession:(id)arg2 endedAtPoint:(struct CGPoint)arg3 operation:(unsigned long long)arg4; +- (void)outlineView:(id)arg1 draggingSession:(id)arg2 willBeginAtPoint:(struct CGPoint)arg3 forItems:(id)arg4; +- (id)outlineView:(id)arg1 pasteboardWriterForItem:(id)arg2; +- (void)outlineView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (id)outlineView:(id)arg1 persistentObjectForItem:(id)arg2; +- (id)outlineView:(id)arg1 itemForPersistentObject:(id)arg2; +- (void)outlineView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 byItem:(id)arg4; +- (id)outlineView:(id)arg1 objectValueForTableColumn:(id)arg2 byItem:(id)arg3; +- (BOOL)outlineView:(id)arg1 isItemExpandable:(id)arg2; +- (id)outlineView:(id)arg1 child:(long long)arg2 ofItem:(id)arg3; +- (long long)outlineView:(id)arg1 numberOfChildrenOfItem:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSOutlineViewDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSOutlineViewDelegate-Protocol.h new file mode 100644 index 00000000..7bd8626d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSOutlineViewDelegate-Protocol.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate.h" + +@protocol NSOutlineViewDelegate + +@optional +- (void)outlineViewItemDidCollapse:(id)arg1; +- (void)outlineViewItemWillCollapse:(id)arg1; +- (void)outlineViewItemDidExpand:(id)arg1; +- (void)outlineViewItemWillExpand:(id)arg1; +- (void)outlineViewSelectionIsChanging:(id)arg1; +- (void)outlineViewColumnDidResize:(id)arg1; +- (void)outlineViewColumnDidMove:(id)arg1; +- (void)outlineViewSelectionDidChange:(id)arg1; +- (BOOL)outlineView:(id)arg1 shouldShowOutlineCellForItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldReorderColumn:(long long)arg2 toColumn:(long long)arg3; +- (double)outlineView:(id)arg1 sizeToFitWidthOfColumn:(long long)arg2; +- (void)outlineView:(id)arg1 willDisplayOutlineCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (BOOL)outlineView:(id)arg1 shouldCollapseItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldExpandItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 isGroupItem:(id)arg2; +- (id)outlineView:(id)arg1 dataCellForTableColumn:(id)arg2 item:(id)arg3; +- (BOOL)outlineView:(id)arg1 shouldTrackCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (BOOL)outlineView:(id)arg1 shouldShowCellExpansionForTableColumn:(id)arg2 item:(id)arg3; +- (BOOL)outlineView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; +- (id)outlineView:(id)arg1 nextTypeSelectMatchFromItem:(id)arg2 toItem:(id)arg3 forString:(id)arg4; +- (id)outlineView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 item:(id)arg3; +- (double)outlineView:(id)arg1 heightOfRowByItem:(id)arg2; +- (id)outlineView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 item:(id)arg5 mouseLocation:(struct CGPoint)arg6; +- (void)outlineView:(id)arg1 didDragTableColumn:(id)arg2; +- (void)outlineView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)outlineView:(id)arg1 mouseDownInHeaderOfTableColumn:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldSelectTableColumn:(id)arg2; +- (id)outlineView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldSelectItem:(id)arg2; +- (BOOL)selectionShouldChangeInOutlineView:(id)arg1; +- (BOOL)outlineView:(id)arg1 shouldEditTableColumn:(id)arg2 item:(id)arg3; +- (void)outlineView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (void)outlineView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (void)outlineView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (id)outlineView:(id)arg1 rowViewForItem:(id)arg2; +- (id)outlineView:(id)arg1 viewForTableColumn:(id)arg2 item:(id)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSPopUpButton-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSPopUpButton-MailAdditions.h new file mode 100644 index 00000000..35e12c32 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSPopUpButton-MailAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@interface NSPopUpButton (MailAdditions) +- (void)reloadData; +- (double)sizeToFitWidth; +- (void)_selectItemWithTagAndSynchronizeTitle:(long long)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSPreferences-ActiveModule.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSPreferences-ActiveModule.h new file mode 100644 index 00000000..9ccb17a2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSPreferences-ActiveModule.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferences.h" + +@interface NSPreferences (ActiveModule) +- (id)currentModule; +- (id)activeModule; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSPreferencesModule-ActiveModule.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSPreferencesModule-ActiveModule.h new file mode 100644 index 00000000..bd469d67 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSPreferencesModule-ActiveModule.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +@interface NSPreferencesModule (ActiveModule) ++ (id)activeInstance; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSScrollViewDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSScrollViewDelegate-Protocol.h new file mode 100644 index 00000000..12756dcb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSScrollViewDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol NSScrollViewDelegate + +@optional +- (void)scrollView:(id)arg1 didChangePresentationOrigin:(struct CGPoint)arg2 active:(BOOL)arg3; +- (double)scrollView:(id)arg1 pageAlignedOriginOnAxis:(long long)arg2 forProposedDestination:(double)arg3 currentOrigin:(double)arg4 initialOrigin:(double)arg5 velocity:(double)arg6; +- (void)didEndScrollInScrollView:(id)arg1; +- (void)didScrollInScrollView:(id)arg1; +- (void)didBeginScrollInScrollView:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSSharingServiceDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSSharingServiceDelegate-Protocol.h new file mode 100644 index 00000000..587baede --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSSharingServiceDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol NSSharingServiceDelegate + +@optional +- (id)sharingService:(id)arg1 sourceWindowForShareItems:(id)arg2 sharingContentScope:(long long *)arg3; +- (id)sharingService:(id)arg1 transitionImageForShareItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)sharingService:(id)arg1 sourceFrameOnScreenForShareItem:(id)arg2; +- (void)sharingService:(id)arg1 didShareItems:(id)arg2; +- (void)sharingService:(id)arg1 didFailToShareItems:(id)arg2 error:(id)arg3; +- (void)sharingService:(id)arg1 willShareItems:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSSharingServicePickerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSSharingServicePickerDelegate-Protocol.h new file mode 100644 index 00000000..d025542c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSSharingServicePickerDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol NSSharingServicePickerDelegate + +@optional +- (void)sharingServicePicker:(id)arg1 didChooseSharingService:(id)arg2; +- (id)sharingServicePicker:(id)arg1 delegateForSharingService:(id)arg2; +- (id)sharingServicePicker:(id)arg1 sharingServicesForItems:(id)arg2 proposedSharingServices:(id)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSSpeechSynthesizerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSSpeechSynthesizerDelegate-Protocol.h new file mode 100644 index 00000000..956747c7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSSpeechSynthesizerDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol NSSpeechSynthesizerDelegate + +@optional +- (void)speechSynthesizer:(id)arg1 didEncounterSyncMessage:(id)arg2; +- (void)speechSynthesizer:(id)arg1 didEncounterErrorAtIndex:(unsigned long long)arg2 ofString:(id)arg3 message:(id)arg4; +- (void)speechSynthesizer:(id)arg1 willSpeakPhoneme:(short)arg2; +- (void)speechSynthesizer:(id)arg1 willSpeakWord:(struct _NSRange)arg2 ofString:(id)arg3; +- (void)speechSynthesizer:(id)arg1 didFinishSpeaking:(BOOL)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSSpellChecker-AllocationOverride.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSSpellChecker-AllocationOverride.h new file mode 100644 index 00000000..40065581 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSSpellChecker-AllocationOverride.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSpellChecker.h" + +@interface NSSpellChecker (AllocationOverride) ++ (id)allocWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSSplitViewDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSSplitViewDelegate-Protocol.h new file mode 100644 index 00000000..09b7bc4f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSSplitViewDelegate-Protocol.h @@ -0,0 +1,25 @@ +/* + * 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" + +@protocol NSSplitViewDelegate + +@optional +- (void)splitViewDidResizeSubviews:(id)arg1; +- (void)splitViewWillResizeSubviews:(id)arg1; +- (struct CGRect)splitView:(id)arg1 additionalEffectiveRectOfDividerAtIndex:(long long)arg2; +- (struct CGRect)splitView:(id)arg1 effectiveRect:(struct CGRect)arg2 forDrawnRect:(struct CGRect)arg3 ofDividerAtIndex:(long long)arg4; +- (BOOL)splitView:(id)arg1 shouldHideDividerAtIndex:(long long)arg2; +- (BOOL)splitView:(id)arg1 shouldAdjustSizeOfSubview:(id)arg2; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (double)splitView:(id)arg1 constrainSplitPosition:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMaxCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (BOOL)splitView:(id)arg1 shouldCollapseSubview:(id)arg2 forDoubleClickOnDividerAtIndex:(long long)arg3; +- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSString-HTMLConversion.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSString-HTMLConversion.h new file mode 100644 index 00000000..02ebc1a0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSString-HTMLConversion.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (HTMLConversion) +- (id)webArchiveForRange:(struct _NSRange)arg1 signatureID:(id *)arg2; +- (id)webArchiveForRange:(struct _NSRange)arg1; +- (id)markupString; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSString-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSString-MailAdditions.h new file mode 100644 index 00000000..3e236e2e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSString-MailAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MailAdditions) +- (BOOL)matchesLocalizedDateIntervalFrom:(id *)arg1 to:(id *)arg2; +- (BOOL)doesMatchLocalizedDateName:(id)arg1; +- (void)drawEtchedInRect:(struct CGRect)arg1 withTopColor:(id)arg2 bottomColor:(id)arg3 shadowBelow:(BOOL)arg4 font:(id)arg5 centered:(BOOL)arg6 flipped:(BOOL)arg7 truncate:(BOOL)arg8; +- (void)_drawInRect:(struct CGRect)arg1 font:(id)arg2 color:(id)arg3 truncate:(BOOL)arg4; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTabViewDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTabViewDelegate-Protocol.h new file mode 100644 index 00000000..bfe33ce9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTabViewDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * 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" + +@protocol NSTabViewDelegate + +@optional +- (void)tabViewDidChangeNumberOfTabViewItems:(id)arg1; +- (void)tabView:(id)arg1 didSelectTabViewItem:(id)arg2; +- (void)tabView:(id)arg1 willSelectTabViewItem:(id)arg2; +- (BOOL)tabView:(id)arg1 shouldSelectTabViewItem:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTableViewDataSource-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTableViewDataSource-Protocol.h new file mode 100644 index 00000000..84b533d4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTableViewDataSource-Protocol.h @@ -0,0 +1,25 @@ +/* + * 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" + +@protocol NSTableViewDataSource + +@optional +- (id)tableView:(id)arg1 namesOfPromisedFilesDroppedAtDestination:(id)arg2 forDraggedRowsWithIndexes:(id)arg3; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (void)tableView:(id)arg1 updateDraggingItemsForDrag:(id)arg2; +- (void)tableView:(id)arg1 draggingSession:(id)arg2 endedAtPoint:(struct CGPoint)arg3 operation:(unsigned long long)arg4; +- (void)tableView:(id)arg1 draggingSession:(id)arg2 willBeginAtPoint:(struct CGPoint)arg3 forRowIndexes:(id)arg4; +- (id)tableView:(id)arg1 pasteboardWriterForRow:(long long)arg2; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTableViewDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTableViewDelegate-Protocol.h new file mode 100644 index 00000000..f2f1581f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTableViewDelegate-Protocol.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate.h" + +@protocol NSTableViewDelegate + +@optional +- (void)tableViewSelectionIsChanging:(id)arg1; +- (void)tableViewColumnDidResize:(id)arg1; +- (void)tableViewColumnDidMove:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)tableView:(id)arg1 shouldReorderColumn:(long long)arg2 toColumn:(long long)arg3; +- (double)tableView:(id)arg1 sizeToFitWidthOfColumn:(long long)arg2; +- (BOOL)tableView:(id)arg1 isGroupRow:(long long)arg2; +- (BOOL)tableView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; +- (long long)tableView:(id)arg1 nextTypeSelectMatchFromRow:(long long)arg2 toRow:(long long)arg3 forString:(id)arg4; +- (id)tableView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 row:(long long)arg3; +- (double)tableView:(id)arg1 heightOfRow:(long long)arg2; +- (void)tableView:(id)arg1 didDragTableColumn:(id)arg2; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)tableView:(id)arg1 mouseDownInHeaderOfTableColumn:(id)arg2; +- (BOOL)tableView:(id)arg1 shouldSelectTableColumn:(id)arg2; +- (id)tableView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (BOOL)tableView:(id)arg1 shouldSelectRow:(long long)arg2; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (id)tableView:(id)arg1 dataCellForTableColumn:(id)arg2 row:(long long)arg3; +- (BOOL)tableView:(id)arg1 shouldTrackCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (BOOL)tableView:(id)arg1 shouldShowCellExpansionForTableColumn:(id)arg2 row:(long long)arg3; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (BOOL)tableView:(id)arg1 shouldEditTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tableView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (void)tableView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (id)tableView:(id)arg1 rowViewForRow:(long long)arg2; +- (id)tableView:(id)arg1 viewForTableColumn:(id)arg2 row:(long long)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTextDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextDelegate-Protocol.h new file mode 100644 index 00000000..92a85312 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol NSTextDelegate + +@optional +- (void)textDidChange:(id)arg1; +- (void)textDidEndEditing:(id)arg1; +- (void)textDidBeginEditing:(id)arg1; +- (BOOL)textShouldEndEditing:(id)arg1; +- (BOOL)textShouldBeginEditing:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTextFieldDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextFieldDelegate-Protocol.h new file mode 100644 index 00000000..20d66c6c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextFieldDelegate-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate.h" + +@protocol NSTextFieldDelegate +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTextFinderAsynchronousDocumentFindMatch-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextFinderAsynchronousDocumentFindMatch-Protocol.h new file mode 100644 index 00000000..9b2af35d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextFinderAsynchronousDocumentFindMatch-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@class NSArray, NSView; + +@protocol NSTextFinderAsynchronousDocumentFindMatch +@property(readonly, nonatomic) NSArray *textRects; +@property(readonly, nonatomic) NSView *containingView; +- (void)generateTextImage:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTextFinderBarContainer-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextFinderBarContainer-Protocol.h new file mode 100644 index 00000000..ca8dfb92 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextFinderBarContainer-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@class NSView; + +@protocol NSTextFinderBarContainer +@property(getter=isFindBarVisible) BOOL findBarVisible; +@property(retain) NSView *findBarView; +- (void)findBarViewDidChangeHeight; + +@optional +- (id)contentView; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTextFinderClient-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextFinderClient-Protocol.h new file mode 100644 index 00000000..80728570 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextFinderClient-Protocol.h @@ -0,0 +1,31 @@ +/* + * 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" + +@class NSArray, NSString; + +@protocol NSTextFinderClient + +@optional +@property(readonly) NSArray *visibleCharacterRanges; +@property(copy) NSArray *selectedRanges; +@property(readonly) struct _NSRange firstSelectedRange; +@property(readonly) NSString *string; +@property(readonly, getter=isEditable) BOOL editable; +@property(readonly) BOOL allowsMultipleSelection; +@property(readonly, getter=isSelectable) BOOL selectable; +- (void)drawCharactersInRange:(struct _NSRange)arg1 forContentView:(id)arg2; +- (id)rectsForCharacterRange:(struct _NSRange)arg1; +- (id)contentViewAtIndex:(unsigned long long)arg1 effectiveCharacterRange:(struct _NSRange *)arg2; +- (void)didReplaceCharacters; +- (void)replaceCharactersInRange:(struct _NSRange)arg1 withString:(id)arg2; +- (BOOL)shouldReplaceCharactersInRanges:(id)arg1 withStrings:(id)arg2; +- (void)scrollRangeToVisible:(struct _NSRange)arg1; +- (unsigned long long)stringLength; +- (id)stringAtIndex:(unsigned long long)arg1 effectiveRange:(struct _NSRange *)arg2 endsWithSearchBoundary:(char *)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTextInput-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextInput-Protocol.h new file mode 100644 index 00000000..64325b02 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextInput-Protocol.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSTextInput +- (id)validAttributesForMarkedText; +- (unsigned long long)characterIndexForPoint:(struct CGPoint)arg1; +- (struct CGRect)firstRectForCharacterRange:(struct _NSRange)arg1; +- (struct _NSRange)selectedRange; +- (struct _NSRange)markedRange; +- (id)attributedSubstringFromRange:(struct _NSRange)arg1; +- (long long)conversationIdentifier; +- (BOOL)hasMarkedText; +- (void)unmarkText; +- (void)setMarkedText:(id)arg1 selectedRange:(struct _NSRange)arg2; +- (void)doCommandBySelector:(SEL)arg1; +- (void)insertText:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTextInputClient-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextInputClient-Protocol.h new file mode 100644 index 00000000..c9dc200c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextInputClient-Protocol.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSTextInputClient +- (unsigned long long)characterIndexForPoint:(struct CGPoint)arg1; +- (struct CGRect)firstRectForCharacterRange:(struct _NSRange)arg1 actualRange:(struct _NSRange *)arg2; +- (id)validAttributesForMarkedText; +- (id)attributedSubstringForProposedRange:(struct _NSRange)arg1 actualRange:(struct _NSRange *)arg2; +- (BOOL)hasMarkedText; +- (struct _NSRange)markedRange; +- (struct _NSRange)selectedRange; +- (void)unmarkText; +- (void)setMarkedText:(id)arg1 selectedRange:(struct _NSRange)arg2 replacementRange:(struct _NSRange)arg3; +- (void)doCommandBySelector:(SEL)arg1; +- (void)insertText:(id)arg1 replacementRange:(struct _NSRange)arg2; + +@optional +- (BOOL)drawsVerticallyForCharacterAtIndex:(unsigned long long)arg1; +- (long long)windowLevel; +- (double)baselineDeltaForCharacterAtIndex:(unsigned long long)arg1; +- (double)fractionOfDistanceThroughGlyphForPoint:(struct CGPoint)arg1; +- (id)attributedString; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTextStorageDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextStorageDelegate-Protocol.h new file mode 100644 index 00000000..dad8d1dd --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextStorageDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol NSTextStorageDelegate + +@optional +- (void)textStorageDidProcessEditing:(id)arg1; +- (void)textStorageWillProcessEditing:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTextViewDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextViewDelegate-Protocol.h new file mode 100644 index 00000000..013aad79 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTextViewDelegate-Protocol.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextDelegate.h" + +@protocol NSTextViewDelegate + +@optional +- (id)undoManagerForTextView:(id)arg1; +- (void)textView:(id)arg1 draggedCell:(id)arg2 inRect:(struct CGRect)arg3 event:(id)arg4; +- (void)textView:(id)arg1 doubleClickedOnCell:(id)arg2 inRect:(struct CGRect)arg3; +- (void)textView:(id)arg1 clickedOnCell:(id)arg2 inRect:(struct CGRect)arg3; +- (BOOL)textView:(id)arg1 clickedOnLink:(id)arg2; +- (id)textView:(id)arg1 willShowSharingServicePicker:(id)arg2 forItems:(id)arg3; +- (id)textView:(id)arg1 URLForContentsOfTextAttachment:(id)arg2 atIndex:(unsigned long long)arg3; +- (id)textView:(id)arg1 didCheckTextInRange:(struct _NSRange)arg2 types:(unsigned long long)arg3 options:(id)arg4 results:(id)arg5 orthography:(id)arg6 wordCount:(long long)arg7; +- (id)textView:(id)arg1 willCheckTextInRange:(struct _NSRange)arg2 options:(id)arg3 types:(unsigned long long *)arg4; +- (id)textView:(id)arg1 menu:(id)arg2 forEvent:(id)arg3 atIndex:(unsigned long long)arg4; +- (long long)textView:(id)arg1 shouldSetSpellingState:(long long)arg2 range:(struct _NSRange)arg3; +- (BOOL)textView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (BOOL)textView:(id)arg1 shouldChangeTextInRange:(struct _NSRange)arg2 replacementString:(id)arg3; +- (id)textView:(id)arg1 completions:(id)arg2 forPartialWordRange:(struct _NSRange)arg3 indexOfSelectedItem:(long long *)arg4; +- (id)textView:(id)arg1 willDisplayToolTip:(id)arg2 forCharacterAtIndex:(unsigned long long)arg3; +- (void)textViewDidChangeTypingAttributes:(id)arg1; +- (void)textViewDidChangeSelection:(id)arg1; +- (id)textView:(id)arg1 shouldChangeTypingAttributes:(id)arg2 toAttributes:(id)arg3; +- (BOOL)textView:(id)arg1 shouldChangeTextInRanges:(id)arg2 replacementStrings:(id)arg3; +- (id)textView:(id)arg1 willChangeSelectionFromCharacterRanges:(id)arg2 toCharacterRanges:(id)arg3; +- (struct _NSRange)textView:(id)arg1 willChangeSelectionFromCharacterRange:(struct _NSRange)arg2 toCharacterRange:(struct _NSRange)arg3; +- (BOOL)textView:(id)arg1 writeCell:(id)arg2 atIndex:(unsigned long long)arg3 toPasteboard:(id)arg4 type:(id)arg5; +- (id)textView:(id)arg1 writablePasteboardTypesForCell:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)textView:(id)arg1 draggedCell:(id)arg2 inRect:(struct CGRect)arg3 event:(id)arg4 atIndex:(unsigned long long)arg5; +- (void)textView:(id)arg1 doubleClickedOnCell:(id)arg2 inRect:(struct CGRect)arg3 atIndex:(unsigned long long)arg4; +- (void)textView:(id)arg1 clickedOnCell:(id)arg2 inRect:(struct CGRect)arg3 atIndex:(unsigned long long)arg4; +- (BOOL)textView:(id)arg1 clickedOnLink:(id)arg2 atIndex:(unsigned long long)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSTokenAttachmentDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSTokenAttachmentDelegate-Protocol.h new file mode 100644 index 00000000..26bce107 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSTokenAttachmentDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSTokenAttachmentDelegate + +@optional +- (id)menuForTokenAttachment:(id)arg1; +- (BOOL)hasMenuForTokenAttachment:(id)arg1; +- (BOOL)tokenAttachment:(id)arg1 doubleClickedInRect:(struct CGRect)arg2 ofView:(id)arg3 atCharacterIndex:(unsigned long long)arg4; +- (id)tokenAttachment:(id)arg1 shouldUseTokenAttachmentCell:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSToolbar-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSToolbar-MailAdditions.h new file mode 100644 index 00000000..5f878b39 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSToolbar-MailAdditions.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbar.h" + +@interface NSToolbar (MailAdditions) ++ (id)segmentedOrBorderlessItemForItemIdentifier:(id)arg1 withDictionary:(id)arg2; ++ (id)darkGrayItemForItemIdentifier:(id)arg1 withDictionary:(id)arg2; ++ (id)borderlessItemForItemIdentifier:(id)arg1 withDictionary:(id)arg2; ++ (id)segmentedItemForItemIdentifier:(id)arg1 withDictionary:(id)arg2; ++ (void)configureSegmentedItem:(id)arg1 withDictionary:(id)arg2 forSegment:(long long)arg3; +- (id)configureToolbarItems; +- (id)itemWithTag:(long long)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSToolbarDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSToolbarDelegate-Protocol.h new file mode 100644 index 00000000..edc8aa4f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSToolbarDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol NSToolbarDelegate + +@optional +- (void)toolbarDidRemoveItem:(id)arg1; +- (void)toolbarWillAddItem:(id)arg1; +- (id)toolbarSelectableItemIdentifiers:(id)arg1; +- (id)toolbarAllowedItemIdentifiers:(id)arg1; +- (id)toolbarDefaultItemIdentifiers:(id)arg1; +- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSUserDefaults-FontAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSUserDefaults-FontAdditions.h new file mode 100644 index 00000000..47e2122b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSUserDefaults-FontAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSUserDefaults.h" + +@class NSString; + +@interface NSUserDefaults (FontAdditions) +@property double messageListFontSize; +@property(retain) NSString *messageListFontName; +- (void)setMessageListFont:(id)arg1; +- (id)messageListFont; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSUserInterfaceValidations-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSUserInterfaceValidations-Protocol.h new file mode 100644 index 00000000..31d81e4b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSUserInterfaceValidations-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSUserInterfaceValidations +- (BOOL)validateUserInterfaceItem:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSUserNotificationCenterDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSUserNotificationCenterDelegate-Protocol.h new file mode 100644 index 00000000..10ce7901 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSUserNotificationCenterDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol NSUserNotificationCenterDelegate + +@optional +- (BOOL)userNotificationCenter:(id)arg1 shouldPresentNotification:(id)arg2; +- (void)userNotificationCenter:(id)arg1 didActivateNotification:(id)arg2; +- (void)userNotificationCenter:(id)arg1 didDeliverNotification:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSView-AttachmentDragSession.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-AttachmentDragSession.h new file mode 100644 index 00000000..d7de6a59 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-AttachmentDragSession.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (AttachmentDragSession) +- (BOOL)isCurrentAttachmentDragSourceView; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSView-FavoriteButtonAnimation.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-FavoriteButtonAnimation.h new file mode 100644 index 00000000..8ed22102 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-FavoriteButtonAnimation.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (FavoriteButtonAnimation) +- (void)resumeAnimation; +- (void)pauseAnimation; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSView-LocatingFrameViews.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-LocatingFrameViews.h new file mode 100644 index 00000000..895cc0f6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-LocatingFrameViews.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (LocatingFrameViews) +- (id)enclosingScrollViewIgnoringWebScrollbars; +- (id)enclosingWebView; +- (id)enclosingFrameView; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSView-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-MailAdditions.h new file mode 100644 index 00000000..4eb86b0a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-MailAdditions.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MailAdditions) +- (id)newRenderedSnapshotForLayerBackedView:(struct CGRect)arg1; +- (id)newSnapshotForLayerBackedView; +- (struct CGRect)rectInScreenCoords:(struct CGRect)arg1; +- (id)newSnapshotIgnoringSubviewsWithRect:(struct CGRect)arg1; +- (id)newRenderedSnapshotWithRect:(struct CGRect)arg1 allowAlpha:(BOOL)arg2 forceScaleFactor:(long long)arg3; +- (id)newFullRenderedSnapshot; +- (id)newSnapshotWithRect:(struct CGRect)arg1; +- (BOOL)_testIsHIDPI; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSView-MailQuickLookAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-MailQuickLookAdditions.h new file mode 100644 index 00000000..7f9da893 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-MailQuickLookAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MailQuickLookAdditions) +- (id)quickLookTransitionImage; +- (struct CGRect)quickLookRectForFrame:(struct CGRect)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSView-MailToolbarBaselineView.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-MailToolbarBaselineView.h new file mode 100644 index 00000000..788d437e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-MailToolbarBaselineView.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MailToolbarBaselineView) +- (id)toolbarBaselineColorForceMain:(BOOL)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSView-ResizingAnimation.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-ResizingAnimation.h new file mode 100644 index 00000000..030c7ebb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-ResizingAnimation.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (ResizingAnimation) +- (void)setFrame:(struct CGRect)arg1 animate:(BOOL)arg2 repositionOtherSiblings:(BOOL)arg3; +- (void)setFrame:(struct CGRect)arg1 animate:(BOOL)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSView-SlidingExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-SlidingExtras.h new file mode 100644 index 00000000..c21c8139 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSView-SlidingExtras.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (SlidingExtras) +- (void)setFrameWithRedraw:(struct CGRect)arg1; +- (void)setSlidingFrame:(struct CGRect)arg1; +- (struct CGRect)slidingFrame; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSWindow-BetterDescription.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSWindow-BetterDescription.h new file mode 100644 index 00000000..f5a48332 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSWindow-BetterDescription.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface NSWindow (BetterDescription) +- (id)debugDescription; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSWindow-MailWindowAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSWindow-MailWindowAdditions.h new file mode 100644 index 00000000..2bc4ee23 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSWindow-MailWindowAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface NSWindow (MailWindowAdditions) ++ (void)updateMailPreferredBackingLocationFromDefaults; +- (void)setMailPreferredBackingLocationFromDefaults; +- (void)_setMailDeferredBackingLocationFromDefaults; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NSWindowDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/NSWindowDelegate-Protocol.h new file mode 100644 index 00000000..3ebfdce9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NSWindowDelegate-Protocol.h @@ -0,0 +1,64 @@ +/* + * 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" + +@protocol NSWindowDelegate + +@optional +- (void)windowDidChangeOcclusionState:(id)arg1; +- (void)windowDidExitVersionBrowser:(id)arg1; +- (void)windowWillExitVersionBrowser:(id)arg1; +- (void)windowDidEnterVersionBrowser:(id)arg1; +- (void)windowWillEnterVersionBrowser:(id)arg1; +- (void)windowDidExitFullScreen:(id)arg1; +- (void)windowWillExitFullScreen:(id)arg1; +- (void)windowDidEnterFullScreen:(id)arg1; +- (void)windowWillEnterFullScreen:(id)arg1; +- (void)windowDidEndLiveResize:(id)arg1; +- (void)windowWillStartLiveResize:(id)arg1; +- (void)windowDidEndSheet:(id)arg1; +- (void)windowWillBeginSheet:(id)arg1; +- (void)windowDidChangeBackingProperties:(id)arg1; +- (void)windowDidChangeScreenProfile:(id)arg1; +- (void)windowDidChangeScreen:(id)arg1; +- (void)windowDidUpdate:(id)arg1; +- (void)windowDidDeminiaturize:(id)arg1; +- (void)windowDidMiniaturize:(id)arg1; +- (void)windowWillMiniaturize:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)windowDidResignMain:(id)arg1; +- (void)windowDidBecomeMain:(id)arg1; +- (void)windowDidResignKey:(id)arg1; +- (void)windowDidBecomeKey:(id)arg1; +- (void)windowDidMove:(id)arg1; +- (void)windowWillMove:(id)arg1; +- (void)windowDidExpose:(id)arg1; +- (void)windowDidResize:(id)arg1; +- (void)window:(id)arg1 didDecodeRestorableState:(id)arg2; +- (void)window:(id)arg1 willEncodeRestorableState:(id)arg2; +- (struct CGSize)window:(id)arg1 willResizeForVersionBrowserWithMaxPreferredSize:(struct CGSize)arg2 maxAllowedSize:(struct CGSize)arg3; +- (void)windowDidFailToExitFullScreen:(id)arg1; +- (void)window:(id)arg1 startCustomAnimationToEnterFullScreenOnScreen:(id)arg2 withDuration:(double)arg3; +- (id)customWindowsToEnterFullScreenForWindow:(id)arg1 onScreen:(id)arg2; +- (void)window:(id)arg1 startCustomAnimationToExitFullScreenWithDuration:(double)arg2; +- (id)customWindowsToExitFullScreenForWindow:(id)arg1; +- (void)windowDidFailToEnterFullScreen:(id)arg1; +- (void)window:(id)arg1 startCustomAnimationToEnterFullScreenWithDuration:(double)arg2; +- (id)customWindowsToEnterFullScreenForWindow:(id)arg1; +- (unsigned long long)window:(id)arg1 willUseFullScreenPresentationOptions:(unsigned long long)arg2; +- (struct CGSize)window:(id)arg1 willUseFullScreenContentSize:(struct CGSize)arg2; +- (BOOL)window:(id)arg1 shouldDragDocumentWithEvent:(id)arg2 from:(struct CGPoint)arg3 withPasteboard:(id)arg4; +- (BOOL)window:(id)arg1 shouldPopUpDocumentPathMenu:(id)arg2; +- (struct CGRect)window:(id)arg1 willPositionSheet:(id)arg2 usingRect:(struct CGRect)arg3; +- (id)windowWillReturnUndoManager:(id)arg1; +- (BOOL)windowShouldZoom:(id)arg1 toFrame:(struct CGRect)arg2; +- (struct CGRect)windowWillUseStandardFrame:(id)arg1 defaultFrame:(struct CGRect)arg2; +- (struct CGSize)windowWillResize:(id)arg1 toSize:(struct CGSize)arg2; +- (id)windowWillReturnFieldEditor:(id)arg1 toObject:(id)arg2; +- (BOOL)windowShouldClose:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NetscapeEmailImporter.h b/MailHeaders/Mavericks_10.9.5/MailUI/NetscapeEmailImporter.h new file mode 100644 index 00000000..cfc71b56 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NetscapeEmailImporter.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +@interface NetscapeEmailImporter : FilesystemEmailImporter +{ +} + ++ (id)explanatoryText; ++ (id)name; +- (char *)fromString; +- (id)pathExtensions; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NewDeliveryFailure.h b/MailHeaders/Mavericks_10.9.5/MailUI/NewDeliveryFailure.h new file mode 100644 index 00000000..6789b90c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NewDeliveryFailure.h @@ -0,0 +1,54 @@ +/* + * 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 "AccountStatusDataSourceDelegate.h" + +@class AccountStatusDataSource, ComposeViewController, MCError, NSButton, NSPanel, NSTableView, NSTextField, NSView; + +@interface NewDeliveryFailure : NSObject +{ + AccountStatusDataSource *_deliveryAccountStatusDataSource; + MCError *_error; + ComposeViewController *_composeViewController; + NSPanel *_panel; + NSTextField *_errorLabel; + NSTextField *_errorDescriptionLabel; + NSView *_contents; + NSTableView *_table; + NSButton *_tryLaterButton; + NSButton *_tryOtherButton; +} + +@property(nonatomic) NSButton *tryOtherButton; // @synthesize tryOtherButton=_tryOtherButton; +@property(nonatomic) NSButton *tryLaterButton; // @synthesize tryLaterButton=_tryLaterButton; +@property(nonatomic) NSTableView *table; // @synthesize table=_table; +@property(nonatomic) NSView *contents; // @synthesize contents=_contents; +@property(nonatomic) NSTextField *errorDescriptionLabel; // @synthesize errorDescriptionLabel=_errorDescriptionLabel; +@property(nonatomic) NSTextField *errorLabel; // @synthesize errorLabel=_errorLabel; +@property(retain, nonatomic) NSPanel *panel; // @synthesize panel=_panel; +@property(nonatomic) ComposeViewController *composeViewController; // @synthesize composeViewController=_composeViewController; +- (void)_retile; +- (void)_tile; +- (void)_postDeliveryFailureHappened; +- (void)_deliveryAccountsDidChange:(id)arg1; +- (void)_selectedAccountDidChangeTo:(id)arg1; +- (id)_setDynamicDeliveryAccountForAccount:(id)arg1; +- (void)editServerList:(id)arg1; +- (void)tryOtherAccount:(id)arg1; +- (void)editMessage:(id)arg1; +- (void)sendLater:(id)arg1; +- (void)_runChooseAlternateDeliveryAccountSheet; +- (void)reportError:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)dealloc; +- (void)awakeFromNib; +- (id)init; +- (id)initWithComposeViewController:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/NoSelectionPlaceholderView.h b/MailHeaders/Mavericks_10.9.5/MailUI/NoSelectionPlaceholderView.h new file mode 100644 index 00000000..46e769c6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/NoSelectionPlaceholderView.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NoSelectionPlaceholderView : NSView +{ +} + +- (BOOL)isOpaque; +- (void)_noSelectionPlaceholderViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/OofPanelController.h b/MailHeaders/Mavericks_10.9.5/MailUI/OofPanelController.h new file mode 100644 index 00000000..44d280eb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/OofPanelController.h @@ -0,0 +1,55 @@ +/* + * 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 "AccountInfoTabOwner.h" +#import "NSDatePickerCellDelegate.h" + +@class ColorBackgroundView, EditingWebMessageController, MFEWSAccount, NSButton, NSDate, NSDatePicker, NSPopUpButton, NSProgressIndicator, NSView, WebView; + +@interface OofPanelController : NSObject +{ + NSButton *_oofEnabledCheckbox; + NSButton *_okButton; + NSProgressIndicator *_getOofSettingsIndicator; + NSPopUpButton *_scheduleMenu; + NSDatePicker *_startTimePicker; + NSDatePicker *_endTimePicker; + ColorBackgroundView *_internalWebViewBackground; + ColorBackgroundView *_externalWebViewBackground; + WebView *_internalWebView; + WebView *_externalWebView; + EditingWebMessageController *_internalController; + EditingWebMessageController *_externalController; + NSView *_view; + MFEWSAccount *_account; + NSDate *_startTime; + NSDate *_endTime; +} + +@property(retain) NSDate *endTime; // @synthesize endTime=_endTime; +@property(retain) NSDate *startTime; // @synthesize startTime=_startTime; +@property(retain) MFEWSAccount *account; // @synthesize account=_account; +@property(retain, nonatomic) NSView *view; // @synthesize view=_view; +- (void)datePickerCell:(id)arg1 validateProposedDateValue:(id *)arg2 timeInterval:(double *)arg3; +- (void)webView:(id)arg1 didFailProvisionalLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didFailLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)accountInfoWillShowView:(id)arg1; +- (void)accountInfoWillHideView:(id)arg1; +- (void)_updateWebView:(id)arg1 content:(id)arg2; +- (void)_setEnabledForInterfaceElements:(BOOL)arg1; +- (void)_handleOutOfOfficeSettings:(id)arg1; +- (void)showOutOfOfficeSettings; +- (void)scheduleMenuChanged:(id)arg1; +- (void)toggleOofEnabled:(id)arg1; +- (void)dealloc; +- (void)awakeFromNib; +- (id)init; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/OptionalView.h b/MailHeaders/Mavericks_10.9.5/MailUI/OptionalView.h new file mode 100644 index 00000000..cdb73e86 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/OptionalView.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSButton, NSTextField; + +@interface OptionalView : NSView +{ + BOOL _isResizing; + NSView *_primaryView; + NSButton *_optionSwitch; + NSTextField *_label; + struct CGRect _originalFrame; +} + +@property(nonatomic) struct CGRect originalFrame; // @synthesize originalFrame=_originalFrame; +@property(nonatomic) NSTextField *label; // @synthesize label=_label; +@property(nonatomic) NSButton *optionSwitch; // @synthesize optionSwitch=_optionSwitch; +@property(nonatomic) NSView *primaryView; // @synthesize primaryView=_primaryView; +- (double)widthOffsetIncludingOptionSwitch:(BOOL)arg1; +- (double)widthIncludingOptionSwitch:(BOOL)arg1; +- (void)sizeToFit; +- (BOOL)isOpaque; +- (BOOL)isFlipped; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_subviewFrameDidChange:(id)arg1; +- (void)willRemoveSubview:(id)arg1; +- (void)didAddSubview:(id)arg1; +- (void)awakeFromNib; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/OutlineViewProgressIndicatorsController.h b/MailHeaders/Mavericks_10.9.5/MailUI/OutlineViewProgressIndicatorsController.h new file mode 100644 index 00000000..2defd965 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/OutlineViewProgressIndicatorsController.h @@ -0,0 +1,43 @@ +/* + * 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" + +@class NSMutableDictionary, NSMutableSet, NSOutlineView; + +@interface OutlineViewProgressIndicatorsController : NSObject +{ + NSOutlineView *_outlineView; + NSMutableDictionary *_progressIndicators; + NSMutableDictionary *_fractionsDone; + NSMutableDictionary *_origins; + NSMutableDictionary *_roundDeterminateColors; + NSMutableSet *_scheduledUpdates; + NSMutableSet *_scheduledRemovals; + BOOL _updateScheduled; +} + +- (void)_removeProgressIndicatorForKey:(id)arg1; +- (void)_updateProgressIndicatorForKey:(id)arg1; +- (void)_processUpdates; +- (void)_scheduleUpdate; +- (void)_setNeedsToRemoveProgressIndicatorForKey:(id)arg1; +- (void)_setNeedsToUpdateProgressIndicatorForKey:(id)arg1; +- (id)_progressIndicatorForKey:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)_itemForKey:(id)arg1; +- (id)_keyForItem:(id)arg1; +- (void)setRoundDeterminateColor:(id)arg1 forProgressIndicatorForItem:(id)arg2; +- (void)positionProgressIndicatorForItem:(id)arg1 inRect:(struct CGRect)arg2; +- (void)removeOrphanProgressIndicators; +- (void)removeProgressIndicatorForItem:(id)arg1; +- (void)showDeterminateProgressIndicatorForItem:(id)arg1 fractionDone:(double)arg2; +- (void)showIndeterminateProgressIndicatorForItem:(id)arg1; +- (void)dealloc; +- (id)initWithOutlineView:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/POPAccountDetails.h b/MailHeaders/Mavericks_10.9.5/MailUI/POPAccountDetails.h new file mode 100644 index 00000000..535596b1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/POPAccountDetails.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "AccountDetails.h" + +@class NSButton, NSPopUpButton, NSTextField; + +@interface POPAccountDetails : AccountDetails +{ + NSButton *_deleteMessagesOnServer; + NSTextField *_bigMessageWarningSize; + NSButton *_removeSeenMessagesButton; + NSPopUpButton *_removeIntervalPopup; +} + +- (void)_deleteServerMessagesStarted:(id)arg1; +- (void)_deleteServerMessagesCompleted:(id)arg1; +- (void)removeMessagesButtonClicked:(id)arg1; +- (void)deleteSeenMessagesNow:(id)arg1; +- (void)warnIfDeleteMessages:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (long long)_popDeletionPolicyFromUI; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (void)dealloc; +- (id)initWithAccountClass:(Class)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/POPAccountSpecialMailboxes.h b/MailHeaders/Mavericks_10.9.5/MailUI/POPAccountSpecialMailboxes.h new file mode 100644 index 00000000..5a058b9a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/POPAccountSpecialMailboxes.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "SpecialMailboxes.h" + +@class NSButton; + +@interface POPAccountSpecialMailboxes : SpecialMailboxes +{ + NSButton *_trashCheckbox; + BOOL _moveDeletedMessagesToTrash; +} + +@property(nonatomic) BOOL moveDeletedMessagesToTrash; // @synthesize moveDeletedMessagesToTrash=_moveDeletedMessagesToTrash; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (BOOL)setupAccountFromValuesInUI:(id)arg1; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/POPQuota.h b/MailHeaders/Mavericks_10.9.5/MailUI/POPQuota.h new file mode 100644 index 00000000..76377e05 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/POPQuota.h @@ -0,0 +1,53 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "Quota.h" + +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class NSButton, NSMutableArray, NSMutableAttributedString, NSMutableDictionary, NSPopUpButton; + +@interface POPQuota : Quota +{ + NSPopUpButton *_showMessagesPopup; + NSButton *_deleteButton; + NSMutableAttributedString *_truncatedString; + NSMutableDictionary *_truncatedParagraphStyle; + struct QuotaSimpleSortDescriptor _simpleSortDescs[5]; + NSMutableArray *_messageIDs; +} + +- (void)_deleteServerMessagesCompleted:(id)arg1; +- (void)_deleteServerMessagesStarted:(id)arg1; +- (BOOL)_updateMessage:(id)arg1; +- (long long)_addMessage:(id)arg1; +- (void)_resortMessages; +- (void)_syncSortDescriptors; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (id)_truncatedAttributedStringForString:(id)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (const struct QuotaSimpleSortDescriptor *)sortDescriptorAtIndex:(unsigned long long)arg1; +- (unsigned long long)numberOfSortDescriptors; +- (void)engineUpdated:(id)arg1; +- (void)engineDidFinish; +- (void)engineDidStart; +- (id)_account; +- (void)showMessagesPopupChanged:(id)arg1; +- (void)_updateUsageField; +- (id)_filterMessages:(id)arg1 showMessageType:(long long)arg2; +- (BOOL)_shouldShowMessage:(id)arg1 showMessageType:(long long)arg2; +- (void)deleteFromServer:(id)arg1; +- (Class)engineClass; +- (void)dealloc; +- (void)awakeFromNib; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ParentBannerViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/ParentBannerViewController.h new file mode 100644 index 00000000..355b8cbb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ParentBannerViewController.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "BannerViewController.h" + +@class BannerImageView, NSButton, NSMutableArray, NSString, NSTextField; + +@interface ParentBannerViewController : BannerViewController +{ + NSMutableArray *_requestedAddresses; + BOOL _requestIsForSenders; + BannerImageView *_icon; + NSTextField *_messageField; + NSButton *_helpButton; + NSButton *_respondButton; + NSString *_childAddress; + long long _permissionRequestState; +} + +@property(nonatomic) long long permissionRequestState; // @synthesize permissionRequestState=_permissionRequestState; +@property(nonatomic) NSString *childAddress; // @synthesize childAddress=_childAddress; +@property(nonatomic) BOOL requestIsForSenders; // @synthesize requestIsForSenders=_requestIsForSenders; +@property(nonatomic) NSButton *respondButton; // @synthesize respondButton=_respondButton; +@property(nonatomic) NSButton *helpButton; // @synthesize helpButton=_helpButton; +@property(nonatomic) NSTextField *messageField; // @synthesize messageField=_messageField; +@property(nonatomic) BannerImageView *icon; // @synthesize icon=_icon; +- (void)rejectChildRequest:(id)arg1; +- (void)approveChildRequest:(id)arg1; +- (void)updateBannerContents; +- (void)updateWantsDisplay; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setRepresentedObject:(id)arg1; +- (id)backgroundColor; +- (void)dealloc; +- (id)initWithBannerContainerViewController:(id)arg1; +- (id)nibName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/PassbookBannerViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/PassbookBannerViewController.h new file mode 100644 index 00000000..ee149bc4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/PassbookBannerViewController.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "LoadImagesBannerViewController.h" + +@class GlassButton, NSMutableArray, NSTextField; + +@interface PassbookBannerViewController : LoadImagesBannerViewController +{ + NSTextField *_messageField; + GlassButton *_viewPassButton; + NSMutableArray *_passes; +} + +@property(retain, nonatomic) NSMutableArray *passes; // @synthesize passes=_passes; +@property(nonatomic) GlassButton *viewPassButton; // @synthesize viewPassButton=_viewPassButton; +@property(nonatomic) NSTextField *messageField; // @synthesize messageField=_messageField; +- (void)showPasses:(id)arg1; +- (void)updateBannerContents; +- (void)updateWantsDisplay; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setRepresentedObject:(id)arg1; +- (void)setWantsDisplay:(BOOL)arg1; +- (void)setView:(id)arg1; +- (void)setContainer:(id)arg1; +- (void)awakeFromNib; +- (BOOL)shouldDisplayToLoadImages; +- (CDStruct_3c058996)iconAlignmentRectInsets; +- (id)backgroundColor; +- (void)dealloc; +- (id)initWithBannerContainerViewController:(id)arg1; +- (id)nibName; + +// Remaining properties +@property(nonatomic) BOOL loaded; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/PasswordManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/PasswordManager.h new file mode 100644 index 00000000..2676813b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/PasswordManager.h @@ -0,0 +1,47 @@ +/* + * 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" + +@class IAPasswordUIController, NSCondition, NSMutableArray, NSMutableSet, NSOperationQueue; + +@interface PasswordManager : NSObject +{ + IAPasswordUIController *_passwordController; + NSMutableArray *_pendingAccounts; + NSMutableSet *_suppressedAccounts; + long long _lastUserResponse; + NSCondition *_passwordChanged; + NSOperationQueue *_passwordChangeQueue; +} + ++ (void)resetSuppressedAccount:(id)arg1; ++ (void)resetSuppressedAccounts; ++ (BOOL)isShowingPasswordUI; ++ (BOOL)promptForPassword:(id)arg1; ++ (id)_passwordManagerInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) NSOperationQueue *passwordChangeQueue; // @synthesize passwordChangeQueue=_passwordChangeQueue; +- (void)_accountsChanged:(id)arg1; +- (void)_accountChanged:(id)arg1; +- (void)_mainWindowChanged:(id)arg1; +- (BOOL)_waitForPasswordCompletion:(id)arg1; +- (BOOL)_isSuppressedAccount:(id)arg1; +- (void)_resetSuppressedAccount:(id)arg1; +- (void)_resetAllSuppressedAccounts; +- (void)_finalizePasswordResult:(long long)arg1 forAccount:(id)arg2; +- (void)_displayPasswordSheetIfNeeded; +- (BOOL)_displayPasswordSheetForAccount:(id)arg1; +@property(retain) IAPasswordUIController *passwordController; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/PhotoExporter.h b/MailHeaders/Mavericks_10.9.5/MailUI/PhotoExporter.h new file mode 100644 index 00000000..2d0d9c53 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/PhotoExporter.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "GenericAttachmentFetcher.h" + +@interface PhotoExporter : GenericAttachmentFetcher +{ +} + ++ (void)exportPhotoAttachments:(id)arg1; ++ (BOOL)isPhotoAttachment:(id)arg1; +- (void)downloadedAllAttachments; +- (void)_exportAttachments:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/PowerManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/PowerManager.h new file mode 100644 index 00000000..0fb355f9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/PowerManager.h @@ -0,0 +1,58 @@ +/* + * 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" + +@class NSObject, NSOperationQueue; + +@interface PowerManager : NSObject +{ + NSObject *_fetchCheckPointTimer; + struct __IOPMConnection *_connection; + unsigned int _powerAssertion; + BOOL _registeredForSleepServices; + id _powerSourceLock; + struct __CFRunLoopSource *_powerSourceRunLoopSource; + BOOL _alreadyHeldPowerAssertionThisDarkWake; + BOOL _shouldLogPowerEvents; + NSOperationQueue *_workQueue; + long long _currentPowerState; + long long _previousPowerState; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property BOOL shouldLogPowerEvents; // @synthesize shouldLogPowerEvents=_shouldLogPowerEvents; +@property BOOL alreadyHeldPowerAssertionThisDarkWake; // @synthesize alreadyHeldPowerAssertionThisDarkWake=_alreadyHeldPowerAssertionThisDarkWake; +@property long long previousPowerState; // @synthesize previousPowerState=_previousPowerState; +@property long long currentPowerState; // @synthesize currentPowerState=_currentPowerState; +@property(readonly, nonatomic) NSOperationQueue *workQueue; // @synthesize workQueue=_workQueue; +- (void)_fetchCheckPointTimerFired; +- (void)_stopFetchCheckPointTimer; +- (void)_startFetchCheckPointTimer; +- (void)_accountBecameReachable:(id)arg1; +- (void)_networkConfigurationChanged:(id)arg1; +- (void)_releasePowerAssertion; +- (void)_holdPowerAssertion; +- (void)_systemFullWoke; +- (void)_systemDarkWoke; +- (void)_systemWillSleep; +- (void)_mailAccountsDidChange:(id)arg1; +- (void)_autoFetchFrequencyChanged:(id)arg1; +- (BOOL)_atLeastOneActiveAccountIsIncludedInAutoFetch; +- (BOOL)_atLeastOneActiveAccountIsUsingIDLE; +- (BOOL)_shouldRegisterForSleepServices; +- (void)_registerForSleepServices:(BOOL)arg1; +- (void)registerForPowerEvents; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/PrintingHTMLGenerator.h b/MailHeaders/Mavericks_10.9.5/MailUI/PrintingHTMLGenerator.h new file mode 100644 index 00000000..9cd9a681 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/PrintingHTMLGenerator.h @@ -0,0 +1,39 @@ +/* + * 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" + +@class ConversationMember, MessageWebDocumentView, NSImage, NSIndexSet, NSMutableString, NSString; + +@interface PrintingHTMLGenerator : NSObject +{ + NSMutableString *_headerTableHTML; + NSString *_senderImageHTML; + BOOL _shouldExpandAllRedundantText; + ConversationMember *_conversationMember; + MessageWebDocumentView *_webDocumentView; + NSIndexSet *_expandedRedundantClusters; + NSImage *_senderImage; + PrintingHTMLGenerator *_activeGenerator; +} + +@property(retain, nonatomic) PrintingHTMLGenerator *activeGenerator; // @synthesize activeGenerator=_activeGenerator; +@property(retain, nonatomic) NSImage *senderImage; // @synthesize senderImage=_senderImage; +@property(copy, nonatomic) NSIndexSet *expandedRedundantClusters; // @synthesize expandedRedundantClusters=_expandedRedundantClusters; +@property(nonatomic) BOOL shouldExpandAllRedundantText; // @synthesize shouldExpandAllRedundantText=_shouldExpandAllRedundantText; +@property(nonatomic) MessageWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(nonatomic) ConversationMember *conversationMember; // @synthesize conversationMember=_conversationMember; +- (id)_newHTMLAddressStringsFromAddressList:(id)arg1; +@property(readonly, nonatomic) NSString *senderImageHTML; +@property(readonly, nonatomic) NSString *headerTableHTML; +- (id)_newPrintHTMLUsingPrintingData:(id)arg1 base64EncodedDisplayHTML:(id)arg2; +- (void)asyncLoadPrintingHTML:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithConversationMember:(id)arg1 webDocumentView:(id)arg2 shouldExpandAllRedundantText:(BOOL)arg3 expandedRedundantClusters:(id)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/PrintingHTMLPrinter.h b/MailHeaders/Mavericks_10.9.5/MailUI/PrintingHTMLPrinter.h new file mode 100644 index 00000000..c6d52417 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/PrintingHTMLPrinter.h @@ -0,0 +1,41 @@ +/* + * 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 "NSWindowDelegate.h" + +@class MUIWebDocumentView, NSMutableArray, NSPrintInfo, NSString; + +@interface PrintingHTMLPrinter : NSObject +{ + BOOL _hasPrinted; + NSString *_printingHTML; + NSMutableArray *_attachments; + NSPrintInfo *_printInfo; + NSString *_jobTitle; + MUIWebDocumentView *_printView; + PrintingHTMLPrinter *_activePrinter; + id _finishedPrintingCompletionBlock; +} + +@property(copy, nonatomic) id finishedPrintingCompletionBlock; // @synthesize finishedPrintingCompletionBlock=_finishedPrintingCompletionBlock; +@property(retain, nonatomic) PrintingHTMLPrinter *activePrinter; // @synthesize activePrinter=_activePrinter; +@property(nonatomic) BOOL hasPrinted; // @synthesize hasPrinted=_hasPrinted; +@property(retain, nonatomic) MUIWebDocumentView *printView; // @synthesize printView=_printView; +@property(retain, nonatomic) NSString *jobTitle; // @synthesize jobTitle=_jobTitle; +@property(retain, nonatomic) NSPrintInfo *printInfo; // @synthesize printInfo=_printInfo; +@property(retain, nonatomic) NSMutableArray *attachments; // @synthesize attachments=_attachments; +@property(retain, nonatomic) NSString *printingHTML; // @synthesize printingHTML=_printingHTML; +- (void)printOperationDidRun:(id)arg1 success:(BOOL)arg2 contextInfo:(void *)arg3; +- (void)_runPrintOperation; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)run:(id)arg1; +- (void)dealloc; +- (id)initWithPrintingHTML:(id)arg1 attachments:(id)arg2 printInfo:(id)arg3 jobTitle:(id)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/PrintingManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/PrintingManager.h new file mode 100644 index 00000000..4e44a9c8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/PrintingManager.h @@ -0,0 +1,41 @@ +/* + * 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" + +@class MessageSelection, MessageWebDocumentView, NSString, PrintingProgressPanelWindowController; + +@interface PrintingManager : NSObject +{ + BOOL _wasCancelled; + MessageSelection *_selection; + MessageWebDocumentView *_webDocumentView; + PrintingManager *_activeDispatcher; + PrintingProgressPanelWindowController *_progressPanelController; + double _progressMaxValue; + double _progressValue; + double _progressIncrement; +} + ++ (void)exportSelectionAsPDF:(id)arg1; ++ (void)printSelection:(id)arg1; +@property(nonatomic) double progressIncrement; // @synthesize progressIncrement=_progressIncrement; +@property double progressValue; // @synthesize progressValue=_progressValue; +@property(nonatomic) double progressMaxValue; // @synthesize progressMaxValue=_progressMaxValue; +@property(retain, nonatomic) PrintingProgressPanelWindowController *progressPanelController; // @synthesize progressPanelController=_progressPanelController; +@property(retain, nonatomic) PrintingManager *activeDispatcher; // @synthesize activeDispatcher=_activeDispatcher; +@property(nonatomic) BOOL wasCancelled; // @synthesize wasCancelled=_wasCancelled; +@property(retain, nonatomic) MessageWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(retain, nonatomic) MessageSelection *selection; // @synthesize selection=_selection; +- (void)_showProgressPanel; +@property(readonly, nonatomic) NSString *progressMessage; +- (void)_generatePrintingHTMLForEnumeratedConversationMembers:(id)arg1 HTMLStorage:(id)arg2 attachmentStorage:(id)arg3 completionHandler:(id)arg4; +- (void)dispatch; +- (void)dealloc; +- (id)initWithSelection:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/PrintingManagerForExportAsPDF.h b/MailHeaders/Mavericks_10.9.5/MailUI/PrintingManagerForExportAsPDF.h new file mode 100644 index 00000000..17342713 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/PrintingManagerForExportAsPDF.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "PrintingManager.h" + +@class NSMutableArray, NSPDFInfo; + +@interface PrintingManagerForExportAsPDF : PrintingManager +{ + NSMutableArray *_exportJobs; + NSPDFInfo *_pdfInfo; + unsigned long long _numberOfConversationsNotYetLoaded; +} + +@property(nonatomic) unsigned long long numberOfConversationsNotYetLoaded; // @synthesize numberOfConversationsNotYetLoaded=_numberOfConversationsNotYetLoaded; +@property(retain, nonatomic) NSPDFInfo *pdfInfo; // @synthesize pdfInfo=_pdfInfo; +@property(retain, nonatomic) NSMutableArray *exportJobs; // @synthesize exportJobs=_exportJobs; +- (void)_generateJobTitleAndPrintInfoForExportJob:(id)arg1; +- (void)_getSaveURLFromUser:(id)arg1; +- (void)_runEnumeratedExportJobs:(id)arg1; +- (void)_generatePrintingHTMLForEnumeratedExportJobs:(id)arg1; +- (void)_generatePrintingHTMLIfAllConversationMembersAreLoaded; +- (void)dispatch; +- (id)progressMessage; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/PrintingManagerForPrinting.h b/MailHeaders/Mavericks_10.9.5/MailUI/PrintingManagerForPrinting.h new file mode 100644 index 00000000..66e037bf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/PrintingManagerForPrinting.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "PrintingManager.h" + +@class NSMutableArray; + +@interface PrintingManagerForPrinting : PrintingManager +{ + NSMutableArray *_arraysOfConversationMembersToGenerateHTMLFor; + unsigned long long _numberOfConversationsNotYetLoaded; +} + +@property(nonatomic) unsigned long long numberOfConversationsNotYetLoaded; // @synthesize numberOfConversationsNotYetLoaded=_numberOfConversationsNotYetLoaded; +@property(retain, nonatomic) NSMutableArray *arraysOfConversationMembersToGenerateHTMLFor; // @synthesize arraysOfConversationMembersToGenerateHTMLFor=_arraysOfConversationMembersToGenerateHTMLFor; +- (void)_printIfAllNecessaryConversationMembersHaveBeenLoaded; +- (void)dispatch; +- (id)progressMessage; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/PrintingProgressPanelWindowController.h b/MailHeaders/Mavericks_10.9.5/MailUI/PrintingProgressPanelWindowController.h new file mode 100644 index 00000000..e0085d65 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/PrintingProgressPanelWindowController.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowController.h" + +@class NSButton, NSProgressIndicator, NSTextField; + +@interface PrintingProgressPanelWindowController : NSWindowController +{ + NSProgressIndicator *_progressIndicator; + NSTextField *_progressText; + NSButton *_cancelButton; +} + +@property(nonatomic) NSButton *cancelButton; // @synthesize cancelButton=_cancelButton; +@property(nonatomic) NSTextField *progressText; // @synthesize progressText=_progressText; +@property(nonatomic) NSProgressIndicator *progressIndicator; // @synthesize progressIndicator=_progressIndicator; +- (void)cancel:(id)arg1; +- (void)awakeFromNib; +- (id)windowNibName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ProgressIndicatorCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/ProgressIndicatorCell.h new file mode 100644 index 00000000..fb166b31 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ProgressIndicatorCell.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageCell.h" + +@class NSProgressIndicator; + +@interface ProgressIndicatorCell : NSImageCell +{ + NSProgressIndicator *_progressIndicator; +} + +- (void)dealloc; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)setProgressIndicator:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/QLPreviewPanelDataSource-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/QLPreviewPanelDataSource-Protocol.h new file mode 100644 index 00000000..3936dbb5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/QLPreviewPanelDataSource-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol QLPreviewPanelDataSource +- (id)previewPanel:(id)arg1 previewItemAtIndex:(long long)arg2; +- (long long)numberOfPreviewItemsInPreviewPanel:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/QLPreviewPanelDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/QLPreviewPanelDelegate-Protocol.h new file mode 100644 index 00000000..343adb3d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/QLPreviewPanelDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowDelegate.h" + +@protocol QLPreviewPanelDelegate + +@optional +- (id)previewPanel:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)previewPanel:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (BOOL)previewPanel:(id)arg1 handleEvent:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/QLSeamlessOpenerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/QLSeamlessOpenerDelegate-Protocol.h new file mode 100644 index 00000000..28dd37af --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/QLSeamlessOpenerDelegate-Protocol.h @@ -0,0 +1,24 @@ +/* + * 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" + +@protocol QLSeamlessOpenerDelegate + +@optional +- (id)seamlessOpener:(id)arg1 transientWindowForItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 transientImageAtFrame:(struct CGRect *)arg2 forItem:(id)arg3; +- (void)seamlessOpener:(id)arg1 failedToOpenItems:(id)arg2 withError:(id)arg3; +- (void)seamlessOpener:(id)arg1 openedItem:(id)arg2 seamlessly:(BOOL)arg3; +- (id)seamlessOpenerTransientWindow:(id)arg1 level:(long long *)arg2; +- (int)seamlessOpener:(id)arg1 supportForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3 windowLevel:(long long *)arg4; +- (struct CGRect)seamlessOpener:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 sourceBubbleForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 sourcePreviewViewForPreviewItem:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/QuickTimeAttachmentView.h b/MailHeaders/Mavericks_10.9.5/MailUI/QuickTimeAttachmentView.h new file mode 100644 index 00000000..56a45694 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/QuickTimeAttachmentView.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "QTMovieView.h" + +@class MFAttachmentViewController; + +@interface QuickTimeAttachmentView : QTMovieView +{ + MFAttachmentViewController *_attachmentViewController; +} + ++ (id)viewForAttachmentViewController:(id)arg1; ++ (void)initialize; +@property MFAttachmentViewController *attachmentViewController; // @synthesize attachmentViewController=_attachmentViewController; +- (void)scrollWheel:(id)arg1; +- (void)mouseDragged:(id)arg1; +- (BOOL)shouldDisplayInline; +- (id)menuForEvent:(id)arg1; +- (void)viewWillMoveToSuperview:(id)arg1; +- (void)viewWillMoveToWindow:(id)arg1; +- (struct CGSize)desiredSizeWithMaximumWidth:(double)arg1; +- (struct CGSize)naturalSize; +- (BOOL)performKeyEquivalent:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/Quota.h b/MailHeaders/Mavericks_10.9.5/MailUI/Quota.h new file mode 100644 index 00000000..5712dc8d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/Quota.h @@ -0,0 +1,46 @@ +/* + * 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 "AccountInfoTabOwner.h" + +@class MFSizeEngine, NSProgressIndicator, NSTableView, NSTextField, NSTimer, NSView; + +@interface Quota : NSObject +{ + NSTableView *_quotaTable; + NSTextField *_usageField; + NSTimer *_statusTimer; + NSProgressIndicator *_progressIndicator; + NSTextField *_progressField; + NSView *_view; + MFSizeEngine *_sizeEngine; + id _compareUsingDescriptors; +} + ++ (id)quotaForMailAccount:(id)arg1; +@property(readonly, nonatomic) id compareUsingDescriptors; // @synthesize compareUsingDescriptors=_compareUsingDescriptors; +@property(retain, nonatomic) MFSizeEngine *sizeEngine; // @synthesize sizeEngine=_sizeEngine; +@property(retain, nonatomic) NSView *view; // @synthesize view=_view; +- (void)accountInfoWillShowView:(id)arg1; +- (void)accountInfoWillHideView:(id)arg1; +- (const struct QuotaSimpleSortDescriptor *)sortDescriptorAtIndex:(unsigned long long)arg1; +- (unsigned long long)numberOfSortDescriptors; +- (void)engineUpdated:(id)arg1; +- (void)_stopProgress:(id)arg1; +- (void)_updateProgress:(id)arg1; +- (void)updateProgress:(id)arg1; +- (void)engineDidFinish; +- (void)engineDidStart; +- (void)_accountOfflineStatusDidChange:(id)arg1; +- (Class)engineClass; +- (void)dealloc; +- (id)init; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/QuotaBar.h b/MailHeaders/Mavericks_10.9.5/MailUI/QuotaBar.h new file mode 100644 index 00000000..e5cfae90 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/QuotaBar.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSLevelIndicator; + +@interface QuotaBar : NSView +{ + NSLevelIndicator *_levelIndicator; +} + +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeNames; +- (void)drawRect:(struct CGRect)arg1; +- (void)setQuotaUsed:(unsigned long long)arg1 limit:(unsigned long long)arg2; +- (void)dealloc; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)_labelFont; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/RedundantContentIdentificationManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/RedundantContentIdentificationManager.h new file mode 100644 index 00000000..fb47959f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/RedundantContentIdentificationManager.h @@ -0,0 +1,30 @@ +/* + * 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" + +@class NSOperationQueue; + +@interface RedundantContentIdentificationManager : NSObject +{ + NSOperationQueue *_workQueue; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain) NSOperationQueue *workQueue; // @synthesize workQueue=_workQueue; +- (id)_messageWithMessageIDHeaderString:(id)arg1 inConversation:(id)arg2; +- (id)mostRecentAncestorForRedundantTextComparisonForMessage:(id)arg1 inConversation:(id)arg2; +- (id)redundantContentMarkupForMessage:(id)arg1 inConversation:(id)arg2; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/RemoteStoreAccountSpecialMailboxes.h b/MailHeaders/Mavericks_10.9.5/MailUI/RemoteStoreAccountSpecialMailboxes.h new file mode 100644 index 00000000..d3767c3d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/RemoteStoreAccountSpecialMailboxes.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "SpecialMailboxes.h" + +@class NSButton; + +@interface RemoteStoreAccountSpecialMailboxes : SpecialMailboxes +{ + NSButton *_keepDraftsOnServer; + NSButton *_keepSentMessagesOnServer; + NSButton *_keepTrashOnServer; + NSButton *_keepJunkOnServer; +} + +- (void)setUIElementsEnabled:(BOOL)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (BOOL)setupAccountFromValuesInUI:(id)arg1; +- (void)setupUIFromValuesInAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/RemoteStoreQuota.h b/MailHeaders/Mavericks_10.9.5/MailUI/RemoteStoreQuota.h new file mode 100644 index 00000000..06c69ff6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/RemoteStoreQuota.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "Quota.h" + +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class NSButton, NSMutableArray; + +@interface RemoteStoreQuota : Quota +{ + NSMutableArray *_mailboxes; + NSButton *_showMessagesButton; + struct QuotaSimpleSortDescriptor _simpleSortDescs[3]; +} + +- (void)resortMailboxes; +- (void)syncSortDescriptors; +- (const struct QuotaSimpleSortDescriptor *)sortDescriptorAtIndex:(unsigned long long)arg1; +- (unsigned long long)numberOfSortDescriptors; +- (id)_iconForMailbox:(id)arg1; +- (BOOL)tableShouldIncludeMailbox:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)showMessages:(id)arg1; +- (void)engineUpdated:(id)arg1; +- (void)dealloc; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/RichMessageListSortView.h b/MailHeaders/Mavericks_10.9.5/MailUI/RichMessageListSortView.h new file mode 100644 index 00000000..6ee08dc5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/RichMessageListSortView.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class CALayer, NSLayoutConstraint, _SortBarButton; + +@interface RichMessageListSortView : NSView +{ + _SortBarButton *_sortButton; + id _delegate; + NSLayoutConstraint *_heightConstraint; + CALayer *_dividerLayer; +} + ++ (id)_dividerColor; ++ (id)_backgroundColor; +@property(retain, nonatomic) CALayer *dividerLayer; // @synthesize dividerLayer=_dividerLayer; +@property(nonatomic) NSLayoutConstraint *heightConstraint; // @synthesize heightConstraint=_heightConstraint; +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; +- (void)mouseDown:(id)arg1; +- (id)makeBackingLayer; +- (void)updateLayer; +- (void)setSortTitle:(id)arg1; +- (void)setShowsSortButton:(BOOL)arg1; +- (void)dealloc; +- (void)adjustHeight; +- (unsigned long long)controlSize; +- (BOOL)wantsUpdateLayer; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/RichMessageListSortViewProtocol-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/RichMessageListSortViewProtocol-Protocol.h new file mode 100644 index 00000000..206c9f87 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/RichMessageListSortViewProtocol-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol RichMessageListSortViewProtocol +- (void)sortViewDidMouseDown:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/RichTableCellView.h b/MailHeaders/Mavericks_10.9.5/MailUI/RichTableCellView.h new file mode 100644 index 00000000..8156f45c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/RichTableCellView.h @@ -0,0 +1,151 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableCellView.h" + +@class MFCriterion, NSButton, NSColor, NSImageView, NSIndexSet, NSLayoutConstraint, NSMutableArray, NSString, NSTextField, RoundedRectTextField, SenderPhotoView, ThreadDisclosureTextField; + +@interface RichTableCellView : NSTableCellView +{ + BOOL _isChildOfThread; + BOOL _shouldShowToCc; + BOOL _shouldShowLocation; + BOOL _shouldShowSize; + BOOL _shouldShowThreadDisclosureControl; + BOOL _shouldShowVIPIndicator; + NSString *_fromToAuthorEmail; + NSImageView *_unreadView; + NSButton *_replyButton; + SenderPhotoView *_photoView; + RoundedRectTextField *_toCcIndicator; + ThreadDisclosureTextField *_threadDisclosureControl; + NSImageView *_attachmentsView; + NSImageView *_statusView; + NSColor *_textColor; + BOOL _shouldUseDateSent; + BOOL _shouldShowPhoto; + BOOL _shouldShowFlaggedStatus; + BOOL _shouldShowRecipientInsteadOfSender; + BOOL _hasNonDuplicateRelatedMessages; + BOOL _isThreadChildSidebarSelectedColor; + unsigned int _messageFlags; + NSTextField *_senderTextField; + NSTextField *_subjectTextField; + NSTextField *_snippetTextField; + NSTextField *_dateTextField; + NSTextField *_sizeTextField; + unsigned long long _numberOfSnippetLines; + unsigned long long _messageSize; + NSIndexSet *_appliedFlagColors; + NSString *_snippet; + NSLayoutConstraint *_topOffsetConstraint; + NSLayoutConstraint *_photoOffsetConstraint; + NSLayoutConstraint *_subjectOffsetConstraint; + NSLayoutConstraint *_senderOffsetConstraint; + NSMutableArray *_flagViews; + MFCriterion *_mailboxCriterion; +} + ++ (double)heightWithNumberOfSnippetLines:(unsigned long long)arg1 style:(unsigned long long)arg2; ++ (void)_resetDateFormats; ++ (id)_defaultParagraphStyle; ++ (void)initialize; +@property(retain, nonatomic) MFCriterion *mailboxCriterion; // @synthesize mailboxCriterion=_mailboxCriterion; +@property(retain, nonatomic) NSMutableArray *flagViews; // @synthesize flagViews=_flagViews; +@property(nonatomic) NSLayoutConstraint *senderOffsetConstraint; // @synthesize senderOffsetConstraint=_senderOffsetConstraint; +@property(retain, nonatomic) NSLayoutConstraint *subjectOffsetConstraint; // @synthesize subjectOffsetConstraint=_subjectOffsetConstraint; +@property(nonatomic) NSLayoutConstraint *photoOffsetConstraint; // @synthesize photoOffsetConstraint=_photoOffsetConstraint; +@property(nonatomic) NSLayoutConstraint *topOffsetConstraint; // @synthesize topOffsetConstraint=_topOffsetConstraint; +@property(nonatomic) BOOL isThreadChildSidebarSelectedColor; // @synthesize isThreadChildSidebarSelectedColor=_isThreadChildSidebarSelectedColor; +@property(copy, nonatomic) NSString *snippet; // @synthesize snippet=_snippet; +@property(retain, nonatomic) NSIndexSet *appliedFlagColors; // @synthesize appliedFlagColors=_appliedFlagColors; +@property(nonatomic) unsigned int messageFlags; // @synthesize messageFlags=_messageFlags; +@property(nonatomic) unsigned long long messageSize; // @synthesize messageSize=_messageSize; +@property(nonatomic) unsigned long long numberOfSnippetLines; // @synthesize numberOfSnippetLines=_numberOfSnippetLines; +@property(nonatomic) BOOL hasNonDuplicateRelatedMessages; // @synthesize hasNonDuplicateRelatedMessages=_hasNonDuplicateRelatedMessages; +@property(nonatomic) BOOL shouldShowRecipientInsteadOfSender; // @synthesize shouldShowRecipientInsteadOfSender=_shouldShowRecipientInsteadOfSender; +@property(nonatomic) BOOL shouldShowFlaggedStatus; // @synthesize shouldShowFlaggedStatus=_shouldShowFlaggedStatus; +@property(nonatomic) BOOL shouldUseDateSent; // @synthesize shouldUseDateSent=_shouldUseDateSent; +@property(nonatomic) NSTextField *sizeTextField; // @synthesize sizeTextField=_sizeTextField; +@property(nonatomic) NSTextField *dateTextField; // @synthesize dateTextField=_dateTextField; +@property(nonatomic) NSTextField *snippetTextField; // @synthesize snippetTextField=_snippetTextField; +@property(nonatomic) NSTextField *subjectTextField; // @synthesize subjectTextField=_subjectTextField; +@property(nonatomic) NSTextField *senderTextField; // @synthesize senderTextField=_senderTextField; +- (void)setThreadDisclosureTarget:(id)arg1; +- (void)setThreadDisclosureAction:(SEL)arg1; +- (void)setReplyTarget:(id)arg1; +- (void)setReplyAction:(SEL)arg1; +- (void)_windowDidChangeKeyStatus:(id)arg1; +- (void)_photoAvailable:(id)arg1; +- (void)_VIPSendersDidChange:(id)arg1; +- (BOOL)_isVIP; +- (void)_updateVIPIndicator; +- (void)_updateDateColor; +- (void)_performUpdateSnippetForThread; +- (void)_updateSnippetForThread:(id)arg1; +- (void)_updateAttachmentsView; +- (void)_updateFlags; +- (id)_anchorViewForNewFlag:(double *)arg1; +- (id)_iconForFlag:(unsigned long long)arg1; +- (void)_updateSnippetTextField:(id)arg1; +- (void)_updateReplyButton; +- (void)_updateUnreadIndicator; +- (void)_updateStatusView; +- (void)_showStatusView:(id)arg1; +- (void)_showAttachmentsView; +- (void)_showThreadControl:(unsigned long long)arg1 isOpen:(BOOL)arg2; +- (void)_showToCCIndicator:(BOOL)arg1; +- (void)_showPhoto:(id)arg1; +- (void)_showReplyButton:(unsigned long long)arg1; +- (void)_showUnreadIndicator:(unsigned long long)arg1; +- (void)prepareForReuse; +@property(readonly, nonatomic) NSImageView *statusView; +@property(readonly, nonatomic) NSImageView *attachmentsView; +@property(readonly, nonatomic) ThreadDisclosureTextField *threadDisclosureControl; +@property(readonly, nonatomic) RoundedRectTextField *toCcIndicator; +@property(readonly, nonatomic) SenderPhotoView *photoView; +@property(readonly, nonatomic) NSButton *replyButton; +@property(readonly, nonatomic) NSImageView *unreadView; +- (void)_loadReplyImages; +- (id)_snippetForMessage; +- (id)_unknownSenderImage; +- (id)_tableView; +- (void)removeFromSuperview; +- (void)viewDidMoveToWindow; +- (BOOL)acceptsFirstResponder; +- (BOOL)canBecomeKeyView; +- (void)updateSnippet:(id)arg1; +- (BOOL)isSelected; +@property(nonatomic) BOOL shouldShowPhoto; // @synthesize shouldShowPhoto=_shouldShowPhoto; +@property(nonatomic) BOOL shouldShowToCc; +@property(nonatomic) BOOL isChildOfThread; +- (void)_updateTextFieldsColor:(id)arg1; +@property(retain, nonatomic) NSColor *textColor; +- (void)setBackgroundStyle:(long long)arg1; +@property(retain, nonatomic) NSString *fromToAuthorEmail; +- (void)setObjectValue:(id)arg1; +- (BOOL)_messageHasAttachments:(id)arg1; +- (id)_subjectFieldValueForMessage:(id)arg1; +- (id)_senderFieldValueForMessage:(id)arg1; +- (id)_senderFont; +- (id)_dateFont; +- (id)_dateStringForMessage:(id)arg1; +- (id)_todayDateFormatter; +- (id)_defaultDateFormatter; +- (id)_messageValue; +- (BOOL)isHighlighted; +@property(nonatomic) BOOL shouldShowThreadDisclosureControl; +@property(nonatomic) BOOL shouldShowSize; +@property(nonatomic) BOOL shouldShowLocation; +- (BOOL)isValidMessageDoubleClick:(id)arg1; +- (void)dealloc; +- (void)awakeFromNib; +- (void)_richTableCellViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/RichTableRowView.h b/MailHeaders/Mavericks_10.9.5/MailUI/RichTableRowView.h new file mode 100644 index 00000000..c392cee8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/RichTableRowView.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableRowView.h" + +@class NSTableView; + +@interface RichTableRowView : NSTableRowView +{ + unsigned long long _rowStyle; + BOOL _isThreadCollapsing; + NSTableView *_tableView; +} + +@property(nonatomic) BOOL isThreadCollapsing; // @synthesize isThreadCollapsing=_isThreadCollapsing; +@property(nonatomic) NSTableView *tableView; // @synthesize tableView=_tableView; +@property(nonatomic) unsigned long long rowStyle; +- (void)setEmphasized:(BOOL)arg1; +- (void)setSelected:(BOOL)arg1; +- (void)setBackgroundColor:(id)arg1; +- (void)_drawThreadSeparatorInRect:(struct CGRect)arg1; +- (void)_drawBasicSeparatorInRect:(struct CGRect)arg1; +- (void)drawSeparatorInRect:(struct CGRect)arg1; +- (void)drawBackgroundInRect:(struct CGRect)arg1; +- (BOOL)_isChildOfThread; +- (BOOL)_isInternalThreadChild; +- (BOOL)_isExpandedThreadParent; +- (id)_rowBelow; +- (id)_rowAbove; +- (id)_threadChildBackgroundColor; +- (id)_threadParentBackgroundColor; +- (id)_separatorColor; +- (BOOL)shouldSetFontSmoothingBackgroundColor; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/RolloverButtonCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/RolloverButtonCell.h new file mode 100644 index 00000000..123bbc18 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/RolloverButtonCell.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MessageListCell.h" + +@interface RolloverButtonCell : MessageListCell +{ + id _target; + SEL _action; +} + +- (id)accessibilityActionDescription:(id)arg1; +- (void)accessibilityPerformAction:(id)arg1; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityActionNames; +- (id)accessibilityAttributeNames; +- (unsigned long long)hitTestForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3; +- (BOOL)_mf_shouldSendAction; +- (BOOL)_sendActionFrom:(id)arg1; +- (BOOL)trackMouse:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3 untilMouseUp:(BOOL)arg4; +- (SEL)action; +- (id)target; +- (void)setAction:(SEL)arg1; +- (void)setTarget:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/RoundedCornersView.h b/MailHeaders/Mavericks_10.9.5/MailUI/RoundedCornersView.h new file mode 100644 index 00000000..b2626c30 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/RoundedCornersView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface RoundedCornersView : NSView +{ +} + +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/RoundedRectTextField.h b/MailHeaders/Mavericks_10.9.5/MailUI/RoundedRectTextField.h new file mode 100644 index 00000000..7653491f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/RoundedRectTextField.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextField.h" + +@interface RoundedRectTextField : NSTextField +{ +} + ++ (Class)cellClass; +- (CDStruct_3c058996)alignmentRectInsets; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/RulesPreferences.h b/MailHeaders/Mavericks_10.9.5/MailUI/RulesPreferences.h new file mode 100644 index 00000000..c355c157 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/RulesPreferences.h @@ -0,0 +1,119 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" +#import "NSWindowDelegate.h" +#import "SoundPopUpButtonDelegate.h" + +@class AppleScriptPopUpButton, CriteriaUIHelper, MFMessageRule, MUIAddressField, MailboxesChooser, NSButton, NSMenu, NSMutableArray, NSPanel, NSPopUpButton, NSScrollView, NSTableView, NSTextField, NSTextView, NSView, SoundPopUpButton; + +@interface RulesPreferences : NSPreferencesModule +{ + NSTableView *_rulesTable; + NSButton *_editButton; + NSButton *_duplicateButton; + NSButton *_removeButton; + NSPanel *_ruleDetailPanel; + NSTextField *_ruleNameField; + NSButton *_ruleHelpButton; + NSMutableArray *_actionViews; + NSMenu *_actionMenu; + NSScrollView *_actionContainer; + NSView *_soundActionView; + NSView *_colorActionView; + NSView *_transferActionView; + NSView *_copyActionView; + NSView *_autoReplyActionView; + NSView *_autoForwardActionView; + NSView *_autoRedirectActionView; + NSView *_markDeletedActionView; + NSView *_markAsReadActionView; + NSView *_markAsFlaggedActionView; + NSView *_stopEvaluatingRulesActionView; + NSView *_runAppleScriptActionView; + NSView *_notifyUserActionView; + NSView *_sendNotificationActionView; + NSPopUpButton *_colorPopup; + NSPopUpButton *_colorStylePopup; + NSPopUpButton *_flagColorPopup; + SoundPopUpButton *_soundPopup; + AppleScriptPopUpButton *_appleScriptPopup; + NSPanel *_responseMessageTextPanel; + NSTextView *_responseMessageTextView; + CriteriaUIHelper *_criteriaUIHelper; + MailboxesChooser *_destinationChooser; + MailboxesChooser *_copyDestinationChooser; + BOOL _colorPanelShouldBeHidden; + long long _currentlySelectedRow; + MFMessageRule *_ruleBeingValidated; + MFMessageRule *_ruleBeingEdited; + BOOL _isDuplicatingRule; + BOOL _hasPendingChanges; + MUIAddressField *_forwardRecipientsField; + MUIAddressField *_redirectRecipientsField; +} + +@property(nonatomic) MUIAddressField *redirectRecipientsField; // @synthesize redirectRecipientsField=_redirectRecipientsField; +@property(nonatomic) MUIAddressField *forwardRecipientsField; // @synthesize forwardRecipientsField=_forwardRecipientsField; +- (id)ruleBeingEdited; +- (void)_openAppleScriptDirectoryInFinder; +- (id)titleForSoundFile:(id)arg1; +- (void)_accountMailboxListingDidChange:(id)arg1; +- (void)actionPopupChanged:(id)arg1; +- (void)_actionPopupWillPopup:(id)arg1; +- (void)mailboxSelected:(id)arg1; +- (void)flagsToApplyChanged:(id)arg1; +- (void)responseMessageCancelClicked:(id)arg1; +- (void)responseMessageOKClicked:(id)arg1; +- (void)setResponseMessageClicked:(id)arg1; +- (void)colorStyleChanged:(id)arg1; +- (void)colorPicked:(id)arg1; +- (void)colorChanged:(id)arg1; +- (void)cancelClicked:(id)arg1; +- (void)okClicked:(id)arg1; +- (void)runRuleDetailPanelForRule:(id)arg1 inWindow:(id)arg2 withHelpButtonTag:(long long)arg3; +- (void)_validateActionMenuItem:(id)arg1 currentTag:(long long)arg2; +- (void)addAction:(id)arg1; +- (void)_configureActionsForRule:(id)arg1; +- (void)_configureFlagColorPopup; +- (void)_configureColorPopupForColorStyle:(long long)arg1; +- (void)_addActionForTag:(long long)arg1 atIndex:(long long)arg2; +- (id)_actionViewForTag:(long long)arg1; +- (void)removeAction:(id)arg1; +- (void)_setOtherColor:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)_validateDrag:(id)arg1 proposedRow:(long long)arg2 dragOperation:(unsigned long long)arg3; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (BOOL)mailTableView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (int)mailTableView:(id)arg1 highlightStyleForRow:(long long)arg2 inRect:(struct CGRect *)arg3 color:(id *)arg4; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)removeRule:(id)arg1; +- (void)editRule:(id)arg1; +- (void)duplicateRule:(id)arg1; +- (void)createRule:(id)arg1; +- (void)saveChanges; +- (void)initializeFromDefaults; +- (void)_validateButtonState; +- (void)dataWasSynced; +- (BOOL)dataWillBeSynced; +- (id)imageForPreferenceNamed:(id)arg1; +- (id)preferencesNibName; +- (id)viewForPreferenceNamed:(id)arg1; +- (void)awakeFromNib; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SGTSearchFieldQueryScopeDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/SGTSearchFieldQueryScopeDelegate-Protocol.h new file mode 100644 index 00000000..a149637b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SGTSearchFieldQueryScopeDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * 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" + +@protocol SGTSearchFieldQueryScopeDelegate +- (id)searchFieldWidenScopeMenuSpinnerTitleString:(id)arg1; +- (id)searchFieldWidenScopeMenuItemTitleString:(id)arg1; +- (id)searchFieldWidenScopeMenuTitleString:(id)arg1; +- (void)searchFieldWidenQueryScope:(id)arg1; +- (BOOL)searchField:(id)arg1 hasResultsForQuery:(id)arg2; +- (BOOL)searchFieldUsesRestrictedQueryScope:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SMTPSettings.h b/MailHeaders/Mavericks_10.9.5/MailUI/SMTPSettings.h new file mode 100644 index 00000000..978af52b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SMTPSettings.h @@ -0,0 +1,68 @@ +/* + * 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 "AccountStatusDataSourceDelegate.h" +#import "NSTableViewDataSource.h" + +@class AccountStatusDataSource, MFSMTPAccount, NSArrayController, NSMutableArray, NSMutableDictionary, NSPanel, NSPopUpButton, NSSegmentedControl, NSTableView, NSTextField; + +@interface SMTPSettings : NSObject +{ + MFSMTPAccount *_selectedDeliveryAccount; + AccountStatusDataSource *_deliveryASDS; + NSMutableArray *_accountsInConflict; + NSMutableDictionary *_cachedAccountEmployment; + NSMutableDictionary *_cachedAccountEmploymentStrings; + BOOL _didRegisterForNotifications; + NSMutableArray *_deliveryAccounts; + NSArrayController *_deliveryAccountsController; + NSPanel *_panel; + NSTableView *_accountTable; + NSTextField *_portField; + NSSegmentedControl *_addRemoveAccountControl; + NSPopUpButton *_tlsCertificatePopUp; +} + ++ (id)sharedPanel; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (void)initialize; +@property(nonatomic) NSPopUpButton *tlsCertificatePopUp; // @synthesize tlsCertificatePopUp=_tlsCertificatePopUp; +@property(nonatomic) NSSegmentedControl *addRemoveAccountControl; // @synthesize addRemoveAccountControl=_addRemoveAccountControl; +@property(nonatomic) NSTextField *portField; // @synthesize portField=_portField; +@property(nonatomic) NSTableView *accountTable; // @synthesize accountTable=_accountTable; +@property(retain, nonatomic) NSPanel *panel; // @synthesize panel=_panel; +@property(retain, nonatomic) NSArrayController *deliveryAccountsController; // @synthesize deliveryAccountsController=_deliveryAccountsController; +@property(retain) NSMutableArray *deliveryAccounts; // @synthesize deliveryAccounts=_deliveryAccounts; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)_restoreMailAccountDefaultAccounts; +- (void)_recacheAccountEmployment; +- (void)_removeInvalidAccounts; +- (id)_defaultColumnSortDescriptor; +- (BOOL)_checkForConflicts; +- (void)_accountInfoDidChange:(id)arg1; +- (BOOL)_validateAccounts; +- (void)_updateTLSCertificateForOldAccount:(id)arg1 newAccount:(id)arg2; +- (void)_updatePortFieldEnabled; +- (void)_updatePortNumberForOldAccount:(id)arg1 newAccount:(id)arg2; +- (void)_syncBindings; +- (void)dismissPanel:(id)arg1; +- (void)addRemoveAccountClicked:(id)arg1; +- (void)runSheetRelativeToWindow:(id)arg1 selectedAccount:(id)arg2 didEndDelegate:(id)arg3; +- (void)_updateEnableRemoveAccountControl; +- (void)_updateEnableAddAccountControl; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)awakeFromNib; +- (void)dealloc; +- (id)init; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ScriptableMessageTextStorage.h b/MailHeaders/Mavericks_10.9.5/MailUI/ScriptableMessageTextStorage.h new file mode 100644 index 00000000..4092d28e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ScriptableMessageTextStorage.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSConcreteTextStorage.h" + +@interface ScriptableMessageTextStorage : NSConcreteTextStorage +{ +} + +- (void)setAttributes:(id)arg1 range:(struct _NSRange)arg2; +- (void)addAttribute:(id)arg1 value:(id)arg2 range:(struct _NSRange)arg3; +- (void)replaceCharactersInRange:(struct _NSRange)arg1 withAttributedString:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SearchScopeDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/SearchScopeDelegate-Protocol.h new file mode 100644 index 00000000..cca57037 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SearchScopeDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol SearchScopeDelegate +- (void)saveSearch:(id)arg1; +- (void)performSearch:(id)arg1; +- (id)selectedMailboxes; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SegmentedToolbarItem.h b/MailHeaders/Mavericks_10.9.5/MailUI/SegmentedToolbarItem.h new file mode 100644 index 00000000..2c744992 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SegmentedToolbarItem.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItemGroup.h" + +@interface SegmentedToolbarItem : NSToolbarItemGroup +{ + BOOL _disableWidthCalculation; +} + +@property(nonatomic) BOOL disableWidthCalculation; // @synthesize disableWidthCalculation=_disableWidthCalculation; +- (void)setMenu:(id)arg1 forSegment:(long long)arg2; +- (void)setToolTip:(id)arg1 forSegment:(long long)arg2; +- (void)setTag:(long long)arg1 forSegment:(long long)arg2; +- (void)setTarget:(id)arg1 forSegment:(long long)arg2; +- (id)targetForSegment:(long long)arg1; +- (void)setAction:(SEL)arg1 forSegment:(long long)arg2; +- (SEL)actionForSegment:(long long)arg1; +- (void)setPaletteLabel:(id)arg1 forSegment:(long long)arg2; +- (id)paletteLabelForSegment:(long long)arg1; +- (void)setInsideLabel:(id)arg1 forSegment:(long long)arg2; +- (id)insideLabelForSegment:(long long)arg1; +- (void)setAlternateLabel:(id)arg1 forSegment:(long long)arg2; +- (void)setLabel:(id)arg1 forSegment:(long long)arg2; +- (id)labelForSegment:(long long)arg1; +- (id)forwardingTargetForSelector:(SEL)arg1; +@property(nonatomic) long long segmentCount; +- (void)_controlAction:(id)arg1; +- (id)control; +- (void)validate; +- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)initWithItemIdentifier:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SegmentedToolbarItemSegmentItem.h b/MailHeaders/Mavericks_10.9.5/MailUI/SegmentedToolbarItemSegmentItem.h new file mode 100644 index 00000000..56de7b88 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SegmentedToolbarItemSegmentItem.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@class SegmentedToolbarItem; + +@interface SegmentedToolbarItemSegmentItem : NSToolbarItem +{ + SegmentedToolbarItem *_parent; + long long _segmentNumber; +} + +@property(nonatomic) long long segmentNumber; // @synthesize segmentNumber=_segmentNumber; +@property(nonatomic) SegmentedToolbarItem *parent; // @synthesize parent=_parent; +- (void)setMenu:(id)arg1; +- (void)setImage:(id)arg1; +- (void)_setTag:(long long)arg1; +- (void)setTag:(long long)arg1; +- (void)_setToolTip:(id)arg1; +- (void)setToolTip:(id)arg1; +- (id)menuFormRepresentation; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SegmentedToolbarItemSegmentedCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/SegmentedToolbarItemSegmentedCell.h new file mode 100644 index 00000000..eab047d5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SegmentedToolbarItemSegmentedCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "LazyMenuSegmentedCell.h" + +@interface SegmentedToolbarItemSegmentedCell : LazyMenuSegmentedCell +{ +} + +- (double)_menuDelayTimeForSegment:(long long)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SelfAnimatingProgressIndicator.h b/MailHeaders/Mavericks_10.9.5/MailUI/SelfAnimatingProgressIndicator.h new file mode 100644 index 00000000..8f14ea07 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SelfAnimatingProgressIndicator.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSProgressIndicator.h" + +@interface SelfAnimatingProgressIndicator : NSProgressIndicator +{ +} + +- (void)setIndeterminate:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SenderPhotoView.h b/MailHeaders/Mavericks_10.9.5/MailUI/SenderPhotoView.h new file mode 100644 index 00000000..12c13e35 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SenderPhotoView.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageView.h" + +@class NSLayoutConstraint; + +@interface SenderPhotoView : NSImageView +{ + NSLayoutConstraint *_widthConstraint; + NSLayoutConstraint *_heightConstraint; + unsigned long long _photoSize; +} + +@property(nonatomic) unsigned long long photoSize; // @synthesize photoSize=_photoSize; +@property(retain, nonatomic) NSLayoutConstraint *heightConstraint; // @synthesize heightConstraint=_heightConstraint; +@property(retain, nonatomic) NSLayoutConstraint *widthConstraint; // @synthesize widthConstraint=_widthConstraint; +- (void)drawRect:(struct CGRect)arg1; +- (BOOL)isOpaque; +- (void)updateConstraints; +- (void)dealloc; +- (void)_senderPhotoViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/Signature.h b/MailHeaders/Mavericks_10.9.5/MailUI/Signature.h new file mode 100644 index 00000000..4646063a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/Signature.h @@ -0,0 +1,53 @@ +/* + * 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 "NSCopying.h" + +@class MFSyncedFile, NSData, NSString; + +@interface Signature : NSObject +{ + NSString *_uniqueId; + NSString *_name; + NSData *_webArchiveData; + BOOL _isRich; + BOOL _isSavedAsRich; + BOOL _isDirty; + MFSyncedFile *_syncedFile; +} + +- (id)syncedFile; +- (id)signaturePath; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (BOOL)isRich; +- (void)setIsRich:(BOOL)arg1; +- (void)setWebArchive:(id)arg1; +- (id)webArchive; +- (id)_sanitizeSignatureFileData:(id)arg1; +- (id)webArchiveData; +- (void)reloadFromDisk; +- (void)setName:(id)arg1; +- (id)name; +- (id)uniqueId; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)dictionaryRepresentation; +- (void)removeContentFromDisk; +- (BOOL)saveContentToDisk; +- (void)dealloc; +- (id)initWithDictionary:(id)arg1; +- (id)initWithName:(id)arg1; +- (id)initWithName:(id)arg1 uniqueId:(id)arg2; +- (id)objectSpecifier; +- (void)setSignatureContents:(id)arg1; +- (id)signatureContents; +- (void)setSignatureName:(id)arg1; +- (id)signatureName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SignatureBundle.h b/MailHeaders/Mavericks_10.9.5/MailUI/SignatureBundle.h new file mode 100644 index 00000000..8969be12 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SignatureBundle.h @@ -0,0 +1,66 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MVMailBundle.h" + +@class MFSyncedFile, NSMutableArray, NSMutableDictionary; + +@interface SignatureBundle : MVMailBundle +{ + NSMutableDictionary *_signatures; + NSMutableArray *_accounts; + BOOL _isDirty; + NSMutableDictionary *_lastDefaultSignatures; + MFSyncedFile *_syncedFile; +} + ++ (id)signaturesFolderPath; ++ (id)allSignaturesAccount; ++ (void)initialize; +- (void)configurePopUpButton:(id)arg1 forAccount:(id)arg2 defaultSignature:(id)arg3 selectionMethod:(int)arg4 showAccount:(BOOL)arg5; +- (void)setPlaceSignatureAboveQuotedText:(BOOL)arg1; +- (BOOL)placeSignatureAboveQuotedText; +- (void)unsetShowsComposeAccessoryView; +- (void)setShowsComposeAccessoryView:(BOOL)arg1; +- (BOOL)showComposeAccessoryView; +- (BOOL)showComposeAccessoryView:(char *)arg1; +- (id)activeSignatureWithId:(id)arg1; +- (id)activeSignatureWithName:(id)arg1; +- (void)setSignatureSelectionMethod:(int)arg1 forAccount:(id)arg2; +- (int)signatureSelectionMethodForAccount:(id)arg1; +- (id)defaultSignatureForAccount:(id)arg1; +- (void)setDefaultSignature:(id)arg1 forAccount:(id)arg2; +- (void)_setDefaultSignatureId:(id)arg1 forAccountId:(id)arg2; +- (void)_signatureBundleChanged:(id)arg1; +- (void)_signatureChanged:(id)arg1; +- (id)syncedFile; +- (id)_accountsMap; +- (id)_serializedSignatures; +- (void)saveChangesToDisk; +- (void)_signatureNameChanged:(id)arg1; +- (void)addSignature:(id)arg1; +- (void)insertSignature:(id)arg1 atIndex:(long long)arg2; +- (void)insertSignature:(id)arg1 atIndex:(long long)arg2 forAccount:(id)arg3; +- (void)removeSignatureAtIndex:(long long)arg1 forAccount:(id)arg2; +- (void)_removeSignature:(id)arg1; +- (void)removeSignatureAtIndex:(long long)arg1; +- (id)signatureAtIndex:(long long)arg1; +- (id)signatureAtIndex:(long long)arg1 forAccount:(id)arg2; +- (id)signaturesForAccount:(id)arg1; +- (unsigned long long)numberOfSignatures; +- (id)_fixAccountIdsInPlist:(id)arg1; +- (void)loadSignaturesFromDisk; +- (id)signatures; +- (BOOL)_deleteSignaturesNotPresentInNewSignatures:(id)arg1; +- (void)_loadAllSignatures:(id)arg1 forAccounts:(id)arg2; +- (BOOL)updateAccountList; +- (id)signatureAccounts; +- (void)_loadLastDefaultSignatures; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SignaturePreferences.h b/MailHeaders/Mavericks_10.9.5/MailUI/SignaturePreferences.h new file mode 100644 index 00000000..599d28e1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SignaturePreferences.h @@ -0,0 +1,111 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "EditingMessageWebViewDelegate.h" +#import "MVTerminationHandler.h" + +@class ColorBackgroundView, EditingMessageWebView, EditingWebMessageController, HyperlinkEditor, MFMailAccount, NSButton, NSPopUpButton, NSSegmentedControl, NSString, NSTableView, NSTextField, WebArchive; + +@interface SignaturePreferences : NSPreferencesModule +{ + NSTableView *_signaturesTable; + NSTableView *_accountsTable; + NSPopUpButton *_selectPopup; + ColorBackgroundView *_webViewBackground; + EditingMessageWebView *_webView; + EditingWebMessageController *_controller; + NSButton *_textRichnessButton; + NSTextField *_textRichnessMessageField; + NSSegmentedControl *_createOrRemoveButton; + NSButton *_placeSignatureAboveQuote; + unsigned int _addingNewSignature:1; + unsigned int _appIsTerminating:1; + unsigned int _loadedInitialHTML:1; + MFMailAccount *_selectedAccount; + MFMailAccount *_allSignaturesAccount; + NSString *_defaultFontName; + WebArchive *_savedWebArchive; + HyperlinkEditor *_hyperlinkEditor; + BOOL _currentSignatureHasChanges; +} + +- (void)setAllowsRichText:(BOOL)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)removeSelectedLink; +- (void)editLink; +- (BOOL)selectionIsInList; +- (void)insertBulletedList:(id)arg1; +- (void)insertNumberedList:(id)arg1; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (BOOL)allowQuoting; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (double)splitView:(id)arg1 constrainMaxCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (BOOL)control:(id)arg1 textView:(id)arg2 doCommandBySelector:(SEL)arg3; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (id)truncatingAttributes; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)_displaySelectedSignatureDetails; +- (id)_webArchiveForEditedSignature; +- (void)webView:(id)arg1 didFailProvisionalLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didFailLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didAddMailAttachment:(id)arg2; +- (id)webView:(id)arg1 shouldReplaceSelectionWithWebArchive:(id)arg2 givenAction:(int)arg3; +- (BOOL)webView:(id)arg1 shouldInsertNode:(id)arg2 replacingDOMRange:(id)arg3 givenAction:(int)arg4; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)_updateWebView; +- (BOOL)_validateValuesInUI; +- (void)placeSignatureAboveQuotedText:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)_updatePopup; +- (void)webViewDidChange:(id)arg1; +- (void)webViewDidChangeTypingStyle:(id)arg1; +- (void)dataWasSynced; +- (BOOL)dataWillBeSynced; +- (void)changeSignatureRichness:(id)arg1; +- (BOOL)allowsRichText; +- (void)_removeSignature:(id)arg1; +- (void)deleteKey:(id)arg1; +- (BOOL)_endEditingOfSignatureOkayToReload:(BOOL)arg1 needsToReload:(char *)arg2; +- (id)_defaultSignatureContentForSelectedAccount; +- (void)_createSignature:(id)arg1; +- (void)createOrRemoveSignature:(id)arg1; +- (void)_defaultFontMayHaveChanged:(id)arg1; +- (void)_determineDefaultFontName; +- (void)awakeFromNib; +- (void)_accountsDidChange:(id)arg1; +- (void)_unregisterForNotifications; +- (void)_registerForNotifications; +- (BOOL)preferencesWindowShouldClose; +- (void)moduleWillBeRemoved; +- (BOOL)moduleCanBeRemoved; +- (void)moduleWasInstalled; +- (void)willBeDisplayed; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)saveChanges; +- (void)_setSelectedAccount:(id)arg1; +- (void)initializeFromDefaults; +- (void)defaultSignatureChanged:(id)arg1; +- (void)_validateButtonState; +- (id)imageForPreferenceNamed:(id)arg1; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SingleMessageViewer.h b/MailHeaders/Mavericks_10.9.5/MailUI/SingleMessageViewer.h new file mode 100644 index 00000000..2f6e4936 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SingleMessageViewer.h @@ -0,0 +1,120 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MessageViewer.h" + +#import "MVSelectionOwner.h" +#import "MailFullScreenWindowDelegate.h" +#import "NSToolbarDelegate.h" + +@class MCMessage, MessageContentController, NSArray, NSOperation, NSSet; + +@interface SingleMessageViewer : MessageViewer +{ + NSOperation *_proxyIconOperation; + NSOperation *_subjectLoadOperation; + BOOL _nibLoaded; + MessageContentController *_contentControllerObserving; + NSSet *_hiddenCopies; + NSSet *_relatedMessages; + BOOL _nextDeleteShouldMoveToTrash; + NSArray *_messagesToDelete; + MCMessage *_initialMessage; + NSArray *_selectedMailboxes; +} + ++ (void)restoreAllViewersFromDefaults; ++ (void)restoreWindowWithIdentifier:(id)arg1 state:(id)arg2 completionHandler:(id)arg3; ++ (void)_mailApplicationDidFinishLaunching:(id)arg1; ++ (id)_createWithSavedAttributes:(id)arg1; ++ (id)_messagesFromDictionary:(id)arg1; ++ (id)_createWithMessage:(id)arg1 hiddenCopies:(id)arg2 relatedMessages:(id)arg3 showRelatedMessages:(BOOL)arg4 expandedSelectedMailboxes:(id)arg5 andAttributes:(id)arg6; ++ (id)newDefaultMessageViewer; ++ (id)toolbarIdentifierForMessageType:(BOOL)arg1 fullScreen:(BOOL)arg2; ++ (id)toolbarIdentifier; ++ (id)viewerForMessage:(id)arg1 hiddenCopies:(id)arg2 relatedMessages:(id)arg3 showRelatedMessages:(BOOL)arg4 showAllHeaders:(BOOL)arg5 expandedSelectedMailboxes:(id)arg6; ++ (id)existingSingleMessageViewerForMessage:(id)arg1; +@property(retain) NSArray *selectedMailboxes; // @synthesize selectedMailboxes=_selectedMailboxes; +@property(retain, nonatomic) NSOperation *subjectLoadOperation; // @synthesize subjectLoadOperation=_subjectLoadOperation; +@property(retain, nonatomic) NSOperation *proxyIconOperation; // @synthesize proxyIconOperation=_proxyIconOperation; +@property(retain, nonatomic) MCMessage *initialMessage; // @synthesize initialMessage=_initialMessage; +- (struct CGRect)nonToolbarWindowContentRect; +- (void)_setAutorecalculatesContentBorderThickness:(BOOL)arg1; +- (void)revealMessage:(id)arg1; +- (void)setShouldDisplayShowInMailboxLink:(BOOL)arg1; +- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (id)messageStore; +- (id)currentDisplayedMessage; +- (void)selectMessages:(id)arg1; +- (id)selectionExpandingThreadsAndHiddenCopies:(BOOL)arg1; +- (id)selection; +- (BOOL)_replaceWithEditorForType:(unsigned long long)arg1 action:(SEL)arg2; +- (void)editorDidLoad:(id)arg1; +- (BOOL)send:(id)arg1; +- (void)redirectMessage:(id)arg1; +- (void)forwardMessage:(id)arg1; +- (void)replyToOriginalSender:(id)arg1; +- (void)replyAllMessage:(id)arg1; +- (void)replyMessage:(id)arg1; +- (void)archiveMessages:(id)arg1; +- (void)undeleteMessagesAllowUndo:(BOOL)arg1; +- (void)undeleteMessages:(id)arg1; +- (void)_reallyDeleteMessages:(id)arg1 allowingMoveToTrash:(BOOL)arg2; +- (void)fullScreenDeleteAnimationFinished; +- (void)deleteMessages:(id)arg1 allowingMoveToTrash:(BOOL)arg2; +- (BOOL)_displayingSingletonMessage; +- (void)deleteMessages:(id)arg1; +- (void)_noMessagesLeftToDisplay:(id)arg1; +- (void)_messagesCompacted:(id)arg1; +- (void)_messageFlagsDidChange:(id)arg1; +- (void)_messagesWereRemoved:(id)arg1; +- (BOOL)shouldDeleteMessagesGivenCurrentState; +- (BOOL)shouldDeleteMessageGivenCurrentState; +- (BOOL)_isViewingMessage:(id)arg1; +- (void)updateToolbar; +- (void)setupToolbar; +- (void)selectMailbox:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (id)selectedMessages; +- (void)resignAsSelectionOwner; +- (void)takeOverAsSelectionOwner; +- (void)saveDefaultWindowState; +- (id)dictionaryRepresentation; +- (void)_restoreViewer; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)showAndMakeKey:(BOOL)arg1; +- (void)_setupFromAttributes; +- (void)_adjustNewSingleViewerWindowFrame; +- (id)_messageIDDictionaryRepresentationOf:(id)arg1; +- (void)_addMessageIDsFrom:(id)arg1 toDictionary:(id)arg2; +- (id)expandedSelectedMailboxesAllowingSearch; +- (id)expandedSelectedMailboxes; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (void)dealloc; +- (void)initFullScreenController; +- (id)initWithMailboxes:(id)arg1; +- (id)initPlain; +- (id)initForViewingMessage:(id)arg1 hiddenCopies:(id)arg2 relatedMessages:(id)arg3 showRelatedMessages:(BOOL)arg4 showAllHeaders:(BOOL)arg5 expandedSelectedMailboxes:(id)arg6 withAttributes:(id)arg7; +- (void)loadMessageWindowNib; +- (void)_openEnclosingMailbox:(id)arg1; +- (BOOL)window:(id)arg1 shouldPopUpDocumentPathMenu:(id)arg2; +- (unsigned long long)draggingSourceOperationMaskForLocal:(BOOL)arg1; +- (BOOL)window:(id)arg1 shouldDragDocumentWithEvent:(id)arg2 from:(struct CGPoint)arg3 withPasteboard:(id)arg4; +- (id)filenameToDrag:(id)arg1; +- (void)_reallyUpdateWindowTitle:(id)arg1; +- (void)_updateWindowTitle:(id)arg1; +- (void)_updateWindowProxy:(id)arg1; +- (void)windowDidMove:(id)arg1; +- (void)windowDidResize:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (BOOL)windowShouldCloseForDelete; +- (BOOL)windowShouldClose:(id)arg1; +- (void)restoreFrame; +- (BOOL)mailFullScreenWindowShouldClose:(id)arg1; +- (id)windowForMailFullScreen; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SlidingAnimation.h b/MailHeaders/Mavericks_10.9.5/MailUI/SlidingAnimation.h new file mode 100644 index 00000000..0d2a975d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SlidingAnimation.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class NSMutableDictionary; + +@interface SlidingAnimation : NSObject +{ + id _delegate; + NSMutableDictionary *_views; + BOOL _isSliding; + BOOL _isPaused; +} + ++ (id)_runLoopModesForAnimation; +- (void)resume; +- (void)pause; +- (BOOL)isSliding; +- (void)setDelegate:(id)arg1; +- (void)stop; +- (void)stopView:(id)arg1; +- (struct CGRect)destinationForView:(id)arg1; +- (void)_sendViewToDestination:(id)arg1; +- (void)setDestinationForView:(id)arg1 to:(struct CGRect)arg2 duration:(double)arg3; +- (void)_showNextFrame; +- (void)_updateTimer; +- (void)_updateViewPosition:(id)arg1 forTime:(double)arg2; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SlidingAnimationDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/SlidingAnimationDelegate-Protocol.h new file mode 100644 index 00000000..79085113 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SlidingAnimationDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol SlidingAnimationDelegate + +@optional +- (void)finishedSlidingAnimation:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SlidingViewsBar.h b/MailHeaders/Mavericks_10.9.5/MailUI/SlidingViewsBar.h new file mode 100644 index 00000000..0fee98e9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SlidingViewsBar.h @@ -0,0 +1,69 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "SlidingAnimationDelegate.h" + +@class ClippedItemsIndicator, NSMutableArray, SlidingAnimation; + +@interface SlidingViewsBar : NSView +{ + ClippedItemsIndicator *_rightClipIndicator; + unsigned long long _dropIndex; + unsigned long long _dragSourceIndex; + NSMutableArray *_buttons; + SlidingAnimation *_animation; + double _draggedItemWidth; +} + ++ (double)buttonBottomOffset; +@property double draggedItemWidth; // @synthesize draggedItemWidth=_draggedItemWidth; +@property(retain) SlidingAnimation *animation; // @synthesize animation=_animation; +@property(retain) NSMutableArray *buttons; // @synthesize buttons=_buttons; +@property(retain) ClippedItemsIndicator *rightClipIndicator; // @synthesize rightClipIndicator=_rightClipIndicator; +@property unsigned long long dragSourceIndex; // @synthesize dragSourceIndex=_dragSourceIndex; +- (void)_ensureButtonIsInViewHierarchy:(id)arg1; +- (void)_mainStatusDidChange:(id)arg1; +- (BOOL)isFlipped; +- (void)viewWillBeginDragging:(id)arg1; +- (id)viewPinnedToOverflowIndicator; +- (void)moveSlidingViewToCurrentDropIndex:(id)arg1; +- (BOOL)isSliding; +- (void)draggingEnded:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (void)draggingExited:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (unsigned long long)updateDropTarget:(id)arg1; +- (double)slidingWidthForView:(id)arg1; +- (double)widthOfDraggingInfo:(id)arg1; +- (void)resumeAnimation; +- (void)pauseAnimation; +- (BOOL)reorderSlidingView:(id)arg1 fromMouseDownEvent:(id)arg2; +- (id)_lastDraggedOrUpEventFollowing:(id)arg1; +- (id)_lastDraggedEventFollowing:(id)arg1; +@property(nonatomic) unsigned long long dropIndex; +- (void)slideButtonsIntoPlace; +- (unsigned long long)dropIndexFromLocalPoint:(struct CGPoint)arg1; +- (unsigned long long)dropIndexFromDraggingInfo:(id)arg1; +- (void)refreshButtons; +- (void)draggedSlidingView:(id)arg1; +- (void)reorderedSlidingView:(id)arg1; +- (double)paddingBetweenButtons; +- (struct CGRect)_constrainProposedButtonFrame:(struct CGRect)arg1; +- (double)minSlidingViewX; +- (double)minButtonX; +- (double)maxButtonX; +- (double)maxButtonXWithClipIndicator; +- (double)maxButtonXWithoutClipIndicator; +- (unsigned long long)lastNonSlidingViewIndex; +- (void)dealloc; +- (void)_slidingViewsBarCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SmartMailboxEditor.h b/MailHeaders/Mavericks_10.9.5/MailUI/SmartMailboxEditor.h new file mode 100644 index 00000000..95e76b83 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SmartMailboxEditor.h @@ -0,0 +1,47 @@ +/* + * 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" + +@class CriteriaUIHelper, MFMailbox, NSTextField, NSTextView, NSView, NSWindow; + +@interface SmartMailboxEditor : NSObject +{ + MFMailbox *_mailboxBeingEdited; + MFMailbox *_mailboxBeingValidated; + BOOL _editedMailboxIsNew; + CriteriaUIHelper *_criteriaUIHelper; + NSWindow *_makeNewMailboxWindow; + NSTextField *_nameField; + NSWindow *_makeNewFolderWindow; + NSTextField *_groupNameField; + NSWindow *_notEditableWindow; + NSTextField *_searchStringField; + NSTextView *_mailboxesTextView; + NSView *_criteriaView; +} + ++ (BOOL)mailboxIsEditable:(id)arg1; ++ (BOOL)isEditingInProgress; +@property(nonatomic) NSView *criteriaView; // @synthesize criteriaView=_criteriaView; +@property(nonatomic) NSTextView *mailboxesTextView; // @synthesize mailboxesTextView=_mailboxesTextView; +@property(nonatomic) NSTextField *searchStringField; // @synthesize searchStringField=_searchStringField; +@property(retain, nonatomic) NSWindow *notEditableWindow; // @synthesize notEditableWindow=_notEditableWindow; +@property(nonatomic) NSTextField *groupNameField; // @synthesize groupNameField=_groupNameField; +@property(retain, nonatomic) NSWindow *makeNewFolderWindow; // @synthesize makeNewFolderWindow=_makeNewFolderWindow; +@property(nonatomic) NSTextField *nameField; // @synthesize nameField=_nameField; +@property(retain, nonatomic) NSWindow *makeNewMailboxWindow; // @synthesize makeNewMailboxWindow=_makeNewMailboxWindow; +@property(retain, nonatomic) CriteriaUIHelper *criteriaUIHelper; // @synthesize criteriaUIHelper=_criteriaUIHelper; +- (void)_saveEditedMailbox; +- (void)cancelClicked:(id)arg1; +- (void)okClicked:(id)arg1; +- (void)_sheetDidEnd:(id)arg1 returnCode:(long long)arg2; +- (void)createNewMailboxGroup; +- (void)editSmartMailbox:(id)arg1 suggestedName:(id)arg2 isNew:(BOOL)arg3; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SortByMenuDelegate.h b/MailHeaders/Mavericks_10.9.5/MailUI/SortByMenuDelegate.h new file mode 100644 index 00000000..4dded196 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SortByMenuDelegate.h @@ -0,0 +1,24 @@ +/* + * 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 "NSMenuDelegate.h" + +@class NSMenuItem; + +@interface SortByMenuDelegate : NSObject +{ + NSMenuItem *_ascendingMenuItem; + NSMenuItem *_descendingMenuItem; +} + +@property NSMenuItem *descendingMenuItem; // @synthesize descendingMenuItem=_descendingMenuItem; +@property NSMenuItem *ascendingMenuItem; // @synthesize ascendingMenuItem=_ascendingMenuItem; +- (void)menuNeedsUpdate:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SoundPopUpButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/SoundPopUpButton.h new file mode 100644 index 00000000..be6b08f1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SoundPopUpButton.h @@ -0,0 +1,51 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class NSButton, NSMutableArray, NSPanel, NSString, NSTableView; + +@interface SoundPopUpButton : NSPopUpButton +{ + NSMutableArray *_userSounds; + NSString *_selectedItem; + BOOL _configured; + BOOL _showNone; + NSButton *_removeSoundButton; + NSTableView *_soundTableView; + NSPanel *_soundPanel; + id _delegate; +} + +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; +@property(retain, nonatomic) NSPanel *soundPanel; // @synthesize soundPanel=_soundPanel; +@property(nonatomic) NSTableView *soundTableView; // @synthesize soundTableView=_soundTableView; +@property(nonatomic) NSButton *removeSoundButton; // @synthesize removeSoundButton=_removeSoundButton; +- (void)tableViewSelectionDidChange:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)doneClicked:(id)arg1; +- (void)removeSoundClicked:(id)arg1; +- (void)addSoundClicked:(id)arg1; +- (void)_addRemoveMailSound:(id)arg1; +- (void)selectSoundPath:(id)arg1; +- (id)selectedSoundPath; +- (void)_playSound:(id)arg1; +- (void)_popupMenuChanged:(id)arg1; +@property(nonatomic) BOOL showNone; +- (void)_appendSoundsFromDirectories:(id)arg1; +- (void)configureSoundMenu; +- (void)dealloc; +- (void)awakeFromNib; +- (void)_soundPopUpButtonCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1 pullsDown:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SoundPopUpButtonDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/SoundPopUpButtonDelegate-Protocol.h new file mode 100644 index 00000000..d7280642 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SoundPopUpButtonDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol SoundPopUpButtonDelegate +- (id)titleForSoundFile:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SourceListBackgroundView.h b/MailHeaders/Mavericks_10.9.5/MailUI/SourceListBackgroundView.h new file mode 100644 index 00000000..d9d50ab6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SourceListBackgroundView.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSImage; + +@interface SourceListBackgroundView : NSView +{ + NSImage *_fullBackground; +} + +@property(retain, nonatomic) NSImage *fullBackground; // @synthesize fullBackground=_fullBackground; +- (void)updateLayer; +- (BOOL)wantsUpdateLayer; +- (void)_updateFullBackgroundImage; +- (void)windowMainStateChanged:(id)arg1; +- (void)_superViewFrameChanged:(id)arg1; +- (void)dealloc; +- (void)_sourceListBackgroundViewCommonInit; +- (void)viewWillMoveToSuperview:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SpecialMailboxes.h b/MailHeaders/Mavericks_10.9.5/MailUI/SpecialMailboxes.h new file mode 100644 index 00000000..ddcf4cd5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SpecialMailboxes.h @@ -0,0 +1,29 @@ +/* + * 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" + +@class NSPopUpButton, NSView; + +@interface SpecialMailboxes : NSObject +{ + NSPopUpButton *_sentMessagesAgePopup; + NSPopUpButton *_junkAgePopup; + NSPopUpButton *_trashAgePopup; + NSView *_view; +} + ++ (id)specialMailboxesForAccountClass:(Class)arg1; +@property(retain, nonatomic) NSView *view; // @synthesize view=_view; +- (void)postSpecialMailboxesDidChangeNotification:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (BOOL)setupAccountFromValuesInUI:(id)arg1; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StackContainerView.h b/MailHeaders/Mavericks_10.9.5/MailUI/StackContainerView.h new file mode 100644 index 00000000..09c5bfd0 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StackContainerView.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class MailStackViewController; + +@interface StackContainerView : NSView +{ + MailStackViewController *_controller; +} + +@property(nonatomic) MailStackViewController *controller; // @synthesize controller=_controller; +- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (unsigned long long)draggingSourceOperationMaskForLocal:(BOOL)arg1; +- (void)pasteboardChangedOwner:(id)arg1; +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; +- (id)namesOfPromisedFilesDroppedAtDestination:(id)arg1; +- (void)draggingSession:(id)arg1 endedAtPoint:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (void)draggingSession:(id)arg1 movedToPoint:(struct CGPoint)arg2; +- (void)mouseDragged:(id)arg1; +- (BOOL)_shouldDoSpecialDragAnimation; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeNames; +- (void)viewDidEndLiveResize; +- (BOOL)accessibilityIsIgnored; +- (void)mui_prepareToLayoutSynchronously:(id)arg1; +- (void)mui_performAnimation; +- (void)mui_prepareToAnimate:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StackController.h b/MailHeaders/Mavericks_10.9.5/MailUI/StackController.h new file mode 100644 index 00000000..9fa17f82 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StackController.h @@ -0,0 +1,88 @@ +/* + * 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 "StackElementDelegate.h" +#import "StackRevealGroupDelegate.h" + +@class CALayer, NSArray, NSMutableArray, NSMutableDictionary, NSMutableSet, StackRevealGroup; + +@interface StackController : NSObject +{ + CALayer *_stackContainerLayer; + struct CGSize _stackCenterOffset; + NSMutableArray *_stackedItems; + NSMutableSet *_stackedItemsSet; + NSMutableArray *_orderedItems; + NSMutableSet *_orderedItemsSet; + NSMutableDictionary *_stackElementsByItem; + NSMutableDictionary *_loadRequestDatesByItem; + StackRevealGroup *_revealGroup; + double _lastDisplayedItemsUpdateRequest; + double _lastTransitionToStackState; + unsigned long long _transactionCount; + BOOL _updateNeeded; + BOOL _loadingData; + BOOL _waitingForTransitionToStackState; + BOOL _isAnimating; + BOOL _isTerminating; + BOOL _isSuspended; + BOOL _preventReveal; + BOOL _preventStackBeforeOffscreen; + BOOL _abortingRevealAnimation; + BOOL _animateStateTransitions; + id _dataSource; + id _delegate; + NSArray *_itemsToDisplay; +} + +@property(copy, nonatomic) NSArray *itemsToDisplay; // @synthesize itemsToDisplay=_itemsToDisplay; +@property(nonatomic) BOOL animateStateTransitions; // @synthesize animateStateTransitions=_animateStateTransitions; +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; +@property(nonatomic) id dataSource; // @synthesize dataSource=_dataSource; +- (void)stackRevealGroupDidFinish:(id)arg1; +- (void)stackRevealGroupDidReveal:(id)arg1; +- (void)stackRevealGroupWillReveal:(id)arg1; +- (id)stackContainerView; +- (void)stackElement:(id)arg1 targetStateDidChangeFrom:(int)arg2 to:(int)arg3; +- (void)stackElement:(id)arg1 currentStateDidChangeFrom:(int)arg2 to:(int)arg3; +- (void)stackElement:(id)arg1 willRemoveLayer:(id)arg2; +- (id)layerForStackElement:(id)arg1; +- (BOOL)stackIsTerminating; +- (struct CGSize)stackCenterOffset; +- (id)stackContainerLayer; +- (void)cancelPendingActions; +- (void)cancelRevealAnimation; +- (void)updateIsAnimating; +@property(nonatomic) BOOL isAnimating; +@property(retain, nonatomic) StackRevealGroup *revealGroup; +- (BOOL)isAnyStackElementBeingStacked; +- (id)stackElementToReshowUnderneathStackElement:(id)arg1; +- (id)orderedStackedElementsAboveStackElement:(id)arg1; +- (id)orderedStackedElementsWithOrientation:(long long)arg1; +- (void)stackDataSourceDidLoadItemData:(id)arg1; +- (void)updateOrientationForStackElement:(id)arg1; +- (void)updateStackElement:(id)arg1; +- (void)updateStackElements; +- (void)setNeedsToUpdateStackElements; +- (void)endTransaction; +- (void)beginTransaction; +- (BOOL)isDataAvailableForStackElement:(id)arg1 loadIfNeeded:(BOOL)arg2; +- (void)removeStackElement:(id)arg1; +- (id)stackElementForItem:(id)arg1 createIfNeeded:(BOOL)arg2 withInitialState:(int)arg3; +- (id)stackElementForItem:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)keyForItem:(id)arg1; +- (void)removeStackedLayers:(BOOL)arg1; +- (void)updateDisplayedItems; +- (void)addStackedItem:(id)arg1; +- (void)setNeedsToUpdateDisplayedItems:(BOOL)arg1 immediately:(BOOL)arg2; +- (void)displayStackedLayersForItems:(id)arg1 animated:(BOOL)arg2; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StackDataSource-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/StackDataSource-Protocol.h new file mode 100644 index 00000000..93135ab1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StackDataSource-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol StackDataSource +- (void)stackController:(id)arg1 loadDataForItem:(id)arg2 inLayer:(id)arg3; +- (BOOL)stackController:(id)arg1 isDataLoadedForItem:(id)arg2 inLayer:(id)arg3; +- (id)stackController:(id)arg1 layerForItem:(id)arg2; +- (id)stackContainerView; +- (id)stackContainerLayerForStackController:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StackDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/StackDelegate-Protocol.h new file mode 100644 index 00000000..76c9f2d6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StackDelegate-Protocol.h @@ -0,0 +1,21 @@ +/* + * 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" + +@protocol StackDelegate + +@optional +- (void)stackController:(id)arg1 willRemoveLayerForItem:(id)arg2; +- (void)stackController:(id)arg1 willDisplayLayer:(id)arg2 forItem:(id)arg3; +- (void)stackController:(id)arg1 willStackLayer:(id)arg2 forItem:(id)arg3; +- (void)stackController:(id)arg1 dataLoadTimedOutInLayer:(id)arg2 forItem:(id)arg3; +- (void)stackControllerDidStopAnimatingLayers:(id)arg1; +- (void)stackControllerWillStartAnimatingLayers:(id)arg1; +- (void)stackControllerDidStopStackingLayers:(id)arg1; +- (void)stackControllerWillStartStackingLayers:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StackElement.h b/MailHeaders/Mavericks_10.9.5/MailUI/StackElement.h new file mode 100644 index 00000000..6b5d1e02 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StackElement.h @@ -0,0 +1,56 @@ +/* + * 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" + +@class CALayer; + +@interface StackElement : NSObject +{ + CALayer *_itemLayer; + int _currentState; + int _nextState; + int _targetState; + int _previousState; + id _delegate; + id _item; + long long _orientation; +} + +@property(nonatomic) long long orientation; // @synthesize orientation=_orientation; +@property(readonly, nonatomic) int previousState; // @synthesize previousState=_previousState; +@property(readonly, nonatomic) id item; // @synthesize item=_item; +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; +- (struct CGAffineTransform)onStackTransform; +- (struct CGAffineTransform)offscreenTransform; +- (struct CGAffineTransform)_affineTransformWithTranslation:(struct CGSize)arg1; +- (struct CGAffineTransform)fullsizeTransform; +- (void)fadeInUnderneathStack:(BOOL)arg1; +- (void)fadeOutUnderneathStack:(BOOL)arg1; +- (void)moveOutFromStack:(BOOL)arg1; +- (void)moveIntoStack:(BOOL)arg1; +- (void)hide:(BOOL)arg1; +- (void)animationDidStop:(id)arg1 finished:(id)arg2 context:(void *)arg3; +- (void)commitAnimation; +- (void)beginAnimationToState:(int)arg1 withDuration:(double)arg2 beginsFromCurrentState:(BOOL)arg3 didStopSelector:(SEL)arg4 context:(void *)arg5 animated:(BOOL)arg6; +- (id)_operationNameWithState:(int)arg1; +- (void)removeLayer; +@property(readonly, nonatomic) CALayer *layer; +@property(readonly, nonatomic) double stackIndex; +@property(readonly, nonatomic) BOOL isAnimating; +@property(nonatomic) int targetState; +@property(nonatomic) int currentState; +@property(readonly, nonatomic, getter=isVisible) BOOL visible; +- (void)setNextState:(int)arg1 animated:(BOOL)arg2; +- (void)setNextState:(int)arg1; +@property(readonly, nonatomic) int nextState; +- (int)state; +- (id)description; +- (void)dealloc; +- (id)initWithItem:(id)arg1 state:(int)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StackElementDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/StackElementDelegate-Protocol.h new file mode 100644 index 00000000..b85194dc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StackElementDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol StackElementDelegate +- (void)stackElement:(id)arg1 targetStateDidChangeFrom:(int)arg2 to:(int)arg3; +- (void)stackElement:(id)arg1 currentStateDidChangeFrom:(int)arg2 to:(int)arg3; +- (void)stackElement:(id)arg1 willRemoveLayer:(id)arg2; +- (id)layerForStackElement:(id)arg1; +- (BOOL)stackIsTerminating; +- (struct CGSize)stackCenterOffset; +- (id)stackContainerLayer; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StackRevealGroup.h b/MailHeaders/Mavericks_10.9.5/MailUI/StackRevealGroup.h new file mode 100644 index 00000000..72ce1499 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StackRevealGroup.h @@ -0,0 +1,37 @@ +/* + * 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" + +@class CALayer, NSMutableArray, NSWindow; + +@interface StackRevealGroup : NSObject +{ + NSWindow *_window; + CALayer *_layer; + NSMutableArray *_stackElements; + unsigned long long _state; + double _revealBeginTime; + id _delegate; +} + +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; +@property(readonly, nonatomic, getter=isAnimating) BOOL animating; +@property(readonly, nonatomic, getter=isRevealing) BOOL revealing; +- (void)finish; +- (void)animationDidStop:(id)arg1 finished:(BOOL)arg2; +- (void)cancel:(BOOL)arg1; +- (void)beginRevealAnimation; +- (void)removeLayer; +@property(readonly, nonatomic) CALayer *layer; +- (void)removeStackElement:(id)arg1; +- (BOOL)containsStackElement:(id)arg1 isTopElement:(char *)arg2; +- (void)dealloc; +- (id)_window; +- (id)initWithStackElements:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StackRevealGroupDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUI/StackRevealGroupDelegate-Protocol.h new file mode 100644 index 00000000..94834dee --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StackRevealGroupDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol StackRevealGroupDelegate + +@optional +- (id)stackContainerView; +- (id)stackContainerLayer; +- (void)stackRevealGroupDidFinish:(id)arg1; +- (void)stackRevealGroupDidReveal:(id)arg1; +- (void)stackRevealGroupWillReveal:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StarFieldController.h b/MailHeaders/Mavericks_10.9.5/MailUI/StarFieldController.h new file mode 100644 index 00000000..01b21699 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StarFieldController.h @@ -0,0 +1,73 @@ +/* + * 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" + +@class MTMMailbox, MTMWindowController, NSDictionary, NSMutableArray, NSMutableDictionary, NSTimer; + +@interface StarFieldController : NSObject +{ + NSMutableDictionary *_windowControllers; + NSMutableDictionary *_bufferedControllers; + MTMWindowController *_currentActiveWindowController; + MTMWindowController *_currentTimeWindowController; + struct CGRect _mailFrame; + struct CGRect _initialFrame; + NSDictionary *_mailDisplayState; + NSMutableArray *_thumbnailUpdateQueue; + NSTimer *_updateTimer; + BOOL _firstThumbnailUpdateRequest; + BOOL _hasAtLeastSentOneThumbnail; + BOOL _dismissed; + MTMMailbox *_pausedMailbox; + BOOL _isInTimeMachine; + BOOL _showChangedItemsOnly; + BOOL _timeMachineStarted; + NSDictionary *_sharedDisplayState; +} + ++ (id)sharedController; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)keyPathsForValuesAffectingIsInTimeMachine; +@property(readonly) BOOL timeMachineStarted; // @synthesize timeMachineStarted=_timeMachineStarted; +@property BOOL showChangedItemsOnly; // @synthesize showChangedItemsOnly=_showChangedItemsOnly; +@property BOOL isInTimeMachine; // @synthesize isInTimeMachine=_isInTimeMachine; +@property(retain) NSDictionary *sharedDisplayState; // @synthesize sharedDisplayState=_sharedDisplayState; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)restoreFromURL:(id)arg1; +- (void)showChangedItemsOnlyToggled:(BOOL)arg1; +- (id)deactivateWindowForURL:(id)arg1; +- (id)activateWindowForURL:(id)arg1 changedItemsOnly:(BOOL)arg2 atFrame:(struct CGRect)arg3; +- (id)revisionIDForURL:(id)arg1; +- (id)_correctedURLForURL:(id)arg1 proposedQueryString:(id)arg2; +- (void)scheduleUpdateForURL:(id)arg1 withFrame:(struct CGRect)arg2; +- (void)updateNextThumbnail; +- (void)markSnapshotAsDirty:(id)arg1; +- (void)updateThumbnailForURL:(id)arg1 withFrame:(struct CGRect)arg2; +- (void)updateAllThumbnails; +- (void)_updateAllThumbnails; +- (void)timeMachineWasDismissed; +- (BOOL)startTimeMachine; +- (void)setActiveWindowController:(id)arg1; +- (void)removeWindowControllerForURL:(id)arg1; +- (id)windowControllerForURL:(id)arg1 forDisplay:(BOOL)arg2 canCreate:(BOOL)arg3; +- (void)appHasExitedTimeMachineAndFinishedRestoring; +- (void)startExitTransitionOfWindowController:(id)arg1; +- (void)_enterTransitionDidEnd:(id)arg1; +- (void)startEnterTransitionOfWindowController:(id)arg1 fromFrame:(struct CGRect)arg2; +@property(readonly) MTMWindowController *activeWindowController; +@property(readonly) MTMWindowController *currentTimeWindowController; +- (void)showCurrentStateMailDisplayState:(id)arg1; +- (id)mainURL; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StartupManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/StartupManager.h new file mode 100644 index 00000000..374cde71 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StartupManager.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface StartupManager : NSObject +{ +} + ++ (BOOL)setupAccountsAndSynchronize:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/Stationery.h b/MailHeaders/Mavericks_10.9.5/MailUI/Stationery.h new file mode 100644 index 00000000..0d847e6e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/Stationery.h @@ -0,0 +1,71 @@ +/* + * 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" + +@class NSArray, NSBundle, NSDictionary, NSImage, NSMutableDictionary, NSString; + +@interface Stationery : NSObject +{ + NSDictionary *_descriptionDictionary; + NSDictionary *_localizedDescriptionDictionary; + NSBundle *_bundle; + NSString *_html; + NSMutableDictionary *_imageData; + NSImage *_thumbnailImage; + BOOL _isCustom; + NSArray *_colors; + NSString *_defaultColor; + NSString *_uniqueIDForBaseURL; +} + +- (id)description; +- (BOOL)isEqual:(id)arg1; +- (void)setBundlePath:(id)arg1; +- (id)bundlePath; +- (void)addValueToDescription:(id)arg1 forKey:(id)arg2; +- (BOOL)saveToPath:(id)arg1 error:(id *)arg2; +- (void)setValue:(id)arg1 forHeader:(id)arg2; +- (id)addImageWithData:(id)arg1 name:(id)arg2; +- (void)setHTML:(id)arg1; +- (void)setStationeryName:(id)arg1; +- (void)setMinimumWidth:(double)arg1; +- (id)headers; +- (id)setThumbnailImage:(id)arg1; +- (id)thumbnailImage; +- (id)thumbnailImagePath; +- (id)displayName; +- (id)folderName; +- (id)stationeryID; +- (void)changeFolderAndDisplayNameTo:(id)arg1; +- (id)fontsForColor:(id)arg1; +- (id)imagesInCompositeImagesForColor:(id)arg1; +- (id)backgroundImagePathsForColor:(id)arg1 previousColor:(id)arg2; +- (id)imagePathsForColor:(id)arg1; +- (id)nextColorAfterColor:(id)arg1; +- (double)letterWidth; +- (double)letterTopMargin; +- (id)defaultColor; +- (id)colors; +- (void)setUniqueIDForBaseURL:(id)arg1; +- (id)uniqueIDForBaseURL; +- (id)backgroundTile; +- (id)pathToBackgroundTile; +- (BOOL)hasImages; +- (id)_localizeHtml:(id)arg1 withTable:(id)arg2; +- (id)html; +- (id)attachmentsForImages:(id)arg1 typeIsBackground:(BOOL)arg2; +- (id)parsedMessage; +- (void)markAsUserCreatedCustomStationery; +- (BOOL)isUserCreatedCustomStationery; +- (void)setIsCustom:(BOOL)arg1; +- (BOOL)isCustom; +- (void)dealloc; +- (id)init; +- (id)initWithPath:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StationeryCompositeImage.h b/MailHeaders/Mavericks_10.9.5/MailUI/StationeryCompositeImage.h new file mode 100644 index 00000000..97283eb7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StationeryCompositeImage.h @@ -0,0 +1,61 @@ +/* + * 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" + +@class NSArray, NSData, NSMutableArray, NSString, StationeryCompositeImageView; + +@interface StationeryCompositeImage : NSObject +{ + NSData *_baseImageData; + NSData *_overlayImageData; + NSArray *_masks; + NSMutableArray *_userImages; + StationeryCompositeImageView *_view; + NSString *_contentID; + NSString *_mimeType; + NSString *_preferredFilename; + BOOL _isReadOnly; + long long _index; +} + +- (id)fileWrapper; +- (BOOL)isPlaceholder; +- (id)filename; +- (void)setFilename:(id)arg1; +- (id)preferredFilename; +- (void)setPreferredFilename:(id)arg1; +- (id)mimeType; +- (void)setMimeType:(id)arg1; +- (id)contentID; +- (void)setContentID:(id)arg1; +- (unsigned long long)approximateSize; +- (long long)index; +- (void)setIndex:(long long)arg1; +- (BOOL)isReadOnly; +- (void)setIsReadOnly:(BOOL)arg1; +- (id)filenameForCompositedImage; +- (id)mimeTypeForCompositedImage; +- (id)dataForCompositedImage; +- (long long)numberOfDropZones; +- (id)userImagesToSave; +- (id)userImages; +- (void)addUserImage:(id)arg1; +- (id)masks; +- (void)setMasks:(id)arg1; +- (id)overlayImage; +- (void)setOverlayImageData:(id)arg1; +- (id)baseImage; +- (void)setBaseImageData:(id)arg1; +- (void)setView:(id)arg1; +- (BOOL)isValid; +- (void)dealloc; +- (id)data; +- (id)initWithData:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StationeryCompositeImageMask.h b/MailHeaders/Mavericks_10.9.5/MailUI/StationeryCompositeImageMask.h new file mode 100644 index 00000000..b2798323 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StationeryCompositeImageMask.h @@ -0,0 +1,42 @@ +/* + * 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" + +@class NSData, NSImage; + +@interface StationeryCompositeImageMask : NSObject +{ + NSData *_maskImageData; + NSImage *_maskImage; + struct CGSize _dropZoneOffset; + double _dropZoneAngle; + struct CGSize _dropZoneSize; + NSData *_placeholderImageData; + NSImage *_placeholderImage; +} + +- (struct CGSize)actualMaskSize; +- (struct CGRect)dropZoneRect; +- (struct CGRect)dropZoneBoundingBox; +- (struct CGSize)dropZoneSize; +- (void)setDropZoneSize:(struct CGSize)arg1; +- (double)dropZoneAngle; +- (void)setDropZoneAngle:(double)arg1; +- (struct CGSize)dropZoneOffset; +- (void)setDropZoneOffset:(struct CGSize)arg1; +- (void)discardPlaceholderImage; +- (id)placeholderImage; +- (void)setPlaceholderImageData:(id)arg1; +- (id)maskImage; +- (void)setMaskImageData:(id)arg1; +- (BOOL)isValid; +- (void)dealloc; +- (id)dictionary; +- (id)initWithDictionary:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StationeryController.h b/MailHeaders/Mavericks_10.9.5/MailUI/StationeryController.h new file mode 100644 index 00000000..5f9ec080 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StationeryController.h @@ -0,0 +1,58 @@ +/* + * 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" + +@class ComposeBackEnd, EditableWebMessageDocument, NSMutableArray, NSMutableDictionary, NSString, NSTimer, Stationery, WebView; + +@interface StationeryController : NSObject +{ + Stationery *_stationery; + BOOL _isStationeryLoaded; + NSString *_currentColor; + double _letterTopMargin; + double _letterWidth; + id _savedResourceLoadDelegate; + id _savedFrameLoadDelegate; + long long _numberOfResourcesNotYetLoaded; + BOOL _isLoadingStationery; + BOOL _isChangingStationeryColor; + BOOL _isLoadingResources; + BOOL _shouldAnimateTransitions; + WebView *_webView; + ComposeBackEnd *_composeBackEnd; + EditableWebMessageDocument *_messageDocument; + NSMutableDictionary *_fontElementsWithColors; + NSMutableArray *_colorsThatHaveBeenDisplayed; + NSTimer *_flushWindowTimer; +} + +- (id)stationeryFromCurrentMessageError:(id *)arg1; +- (void)changeStationeryColor:(id)arg1; +- (void)userClickedOnStationeryBackground:(id)arg1; +- (void)_webViewDidFinishLoadingAllResources; +- (void)_timerDidFire:(id)arg1; +- (void)webView:(id)arg1 didLoadResourceFromMemoryCache:(id)arg2 response:(id)arg3 length:(long long)arg4 fromDataSource:(id)arg5; +- (void)webView:(id)arg1 resource:(id)arg2 didFinishLoadingFromDataSource:(id)arg3; +- (id)webView:(id)arg1 identifierForInitialRequest:(id)arg2 fromDataSource:(id)arg3; +- (void)webView:(id)arg1 didFailLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)_finishLoadingStationery; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)loadStationery:(id)arg1; +- (void)showColorOptions; +- (void)setColor:(id)arg1; +- (id)color; +- (void)setStationeryIsLoaded:(BOOL)arg1; +- (BOOL)isStationeryLoaded; +- (void)setStationery:(id)arg1; +- (id)stationery; +- (void)setWebView:(id)arg1; +- (void)setComposeBackEnd:(id)arg1; +- (BOOL)isUpdatingWebView; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StationeryDynamicElement.h b/MailHeaders/Mavericks_10.9.5/MailUI/StationeryDynamicElement.h new file mode 100644 index 00000000..8506b648 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StationeryDynamicElement.h @@ -0,0 +1,26 @@ +/* + * 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" + +@class NSString; + +@interface StationeryDynamicElement : NSObject +{ + unsigned long long _type; + NSString *_dateFormat; +} + ++ (id)dynamicElementFromDOMElement:(id)arg1; +- (id)description; +- (id)fragmentToReplaceHTMLObjectBackEnd:(id)arg1; +- (void)setDateFormat:(id)arg1; +- (unsigned long long)type; +- (void)dealloc; +- (id)initWithType:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StationeryLoader.h b/MailHeaders/Mavericks_10.9.5/MailUI/StationeryLoader.h new file mode 100644 index 00000000..e9a39a18 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StationeryLoader.h @@ -0,0 +1,69 @@ +/* + * 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" + +@class NSMutableArray, NSMutableDictionary; + +@interface StationeryLoader : NSObject +{ + NSMutableDictionary *_categoriesByDisplayName; + NSMutableArray *_orderedCategoryDisplayNames; + NSMutableDictionary *_orderedStationeryByCategoryDisplayName; +} + ++ (void)purgeDeletedCustomStationery; ++ (id)pathForCustomCategoryResources; ++ (id)pathForCustomCategory; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)_synchronouslyPurgeDeletedCustomStationery:(id)arg1; +- (void)purgeDeletedCustomStationery:(id)arg1; +- (void)_reinsertStationeryWithInformation:(id)arg1; +- (void)deleteStationeryWithDictionary:(id)arg1 fromCategoryWithDisplayName:(id)arg2 undoManager:(id)arg3; +- (BOOL)installStationery:(id)arg1; +- (BOOL)_saveCustomStationery:(id)arg1 byMovingFromPath:(id)arg2 error:(id *)arg3; +- (BOOL)saveCustomStationery:(id)arg1 error:(id *)arg2; +- (BOOL)_recursivelyCreateDirectory:(id)arg1 error:(id *)arg2; +- (void)_addToFavoritesInPosition:(long long)arg1 stationeryWithPath:(id)arg2 inCategoryWithDisplayName:(id)arg3; +- (void)addToFavoritesStationeryWithPath:(id)arg1 inCategoryWithDisplayName:(id)arg2; +- (BOOL)customStationeryWithNameExists:(id)arg1 index:(unsigned long long *)arg2; +- (BOOL)stationery:(id)arg1 isInCategoryWithDisplayName:(id)arg2; +- (void)thumbnailCreator:(id)arg1 didCreateThumbnail:(id)arg2 forCustomStationeryWithPath:(id)arg3; +- (void)thumbnailCreatorDidCreateThumbnailForCustomStationery:(id)arg1; +- (void)thumbnailCreatorDidCompletelyFinish:(id)arg1; +- (id)_categoryTOCForCategoryFolderName:(id)arg1 company:(id)arg2 type:(long long)arg3 categoryDisplayName:(id)arg4; +- (void)_updateStationeryInCategoryWithDisplayName:(id)arg1; +- (id)validatedStationeryDictionary:(id)arg1 withName:(id)arg2 categoryBundle:(id)arg3 needsThumbnail:(char *)arg4; +- (id)_validatedCompanyCategoryDictionary:(id)arg1 categoryFolderName:(id)arg2 companyBundle:(id)arg3 type:(long long)arg4; +- (id)_dictionaryForCustomCategoryForCompany:(BOOL)arg1; +- (void)_combinePartialTOCs:(id)arg1; +- (id)_companyTOCWithName:(id)arg1 type:(long long)arg2 isFromCache:(char *)arg3; +- (void)_updateCategories; +- (id)_cacheNameForCompany:(id)arg1 categoryDisplayName:(id)arg2 type:(long long)arg3; +- (void)_cacheTOC:(id)arg1 withName:(id)arg2; +- (id)_cachedTOCWithName:(id)arg1; +- (id)pathForStationeryNamed:(id)arg1 inCategoryWithDisplayName:(id)arg2; +- (id)bundlePathForCategoryWithFolderName:(id)arg1 company:(id)arg2 type:(long long)arg3; +- (void)createAppleUserCompanyBundleIfNecessary; +- (id)pathForFavoritesList; +- (id)orderedStationeryDictionariesForCategoryWithDisplayName:(id)arg1; +- (id)orderedCategoryDictionaries; +- (id)orderedCategoryDisplayNamesIncludingFavorites; +- (void)updateStationery; +- (id)_dictionaryForStationeryWithPath:(id)arg1 inCategoryWithDisplayName:(id)arg2 position:(long long *)arg3; +- (id)_dictionaryForStationeryWithPath:(id)arg1 inCategoryWithDisplayName:(id)arg2; +- (id)pathForStationeryWithID:(id)arg1; +- (id)stationeryWithPath:(id)arg1; +- (id)stationeryWithID:(id)arg1; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StationerySelector.h b/MailHeaders/Mavericks_10.9.5/MailUI/StationerySelector.h new file mode 100644 index 00000000..2078281b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StationerySelector.h @@ -0,0 +1,67 @@ +/* + * 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 "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class ColorBackgroundView, DocumentEditor, NSArray, NSImageView, NSMutableArray, NSMutableDictionary, NSScrollView, NSTableView, NSView, StationeryLoader, ThumbnailMatrix, _EmptyFavoritesMessageView; + +@interface StationerySelector : NSObject +{ + NSTableView *_categoriesTableView; + ThumbnailMatrix *_thumbnailMatrix; + DocumentEditor *_documentEditor; + NSView *_selectorPane; + ColorBackgroundView *_horizontalScrollerBackground; + _EmptyFavoritesMessageView *_emptyFavoritesMessageView; + NSScrollView *_thumbnailsScrollView; + NSImageView *_thumbnailLeftSideShadowView; + double _minimumScrollViewContentOriginX; + StationeryLoader *_stationeryLoader; + NSArray *_categoryDictionaries; + NSArray *_stationeryDictionaries; + NSMutableArray *_deletedStationery; + NSMutableDictionary *_scrollPositionByCategory; + BOOL _isFirstShowOfCategoriesForFavorites; + BOOL _isFirstShowOfCategoriesForExistingStationery; + BOOL _hasRegisteredForNewThumbnailImageNotifications; +} + +- (void)_thumbnailsDidScroll:(id)arg1; +- (BOOL)_draggingPasteboardContainsStationery; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)_thumbnailImageIsAvailable:(id)arg1; +- (BOOL)handleDropIntoFavorites; +- (void)startDragSessionFromIndex:(long long)arg1 withImage:(id)arg2 event:(id)arg3; +- (void)deleteStationery:(id)arg1; +- (void)clearStationerySelection; +- (void)selectStationery:(id)arg1; +- (void)_setStationeryDictionaries:(id)arg1; +- (void)_displayStationery:(id)arg1 showDeleteButtons:(BOOL)arg2 beginningAtIndex:(long long)arg3; +- (void)_restoreThumbnailScrollPosition; +- (void)_saveThumbnailScrollPosition; +- (void)tableViewSelectionDidChange:(id)arg1; +- (double)tableView:(id)arg1 heightOfRow:(long long)arg2; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (void)selectCategory:(id)arg1; +- (void)_stationeryDidChange:(id)arg1; +- (void)_refreshStationery; +- (void)showStationery; +- (double)scrollerProportion; +- (double)scrollerValue; +- (double)horizontalScrollerWidth; +- (double)stationeryPaneHeight; +- (void)dealloc; +- (void)awakeFromNib; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/StatusCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/StatusCell.h new file mode 100644 index 00000000..ede27c4f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/StatusCell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageTextFieldCell.h" + +@interface StatusCell : NSImageTextFieldCell +{ + long long _statusType; +} + +@property(nonatomic) long long statusType; // @synthesize statusType=_statusType; +- (id)accessibilityAttributeValue:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/SubjectFormatter.h b/MailHeaders/Mavericks_10.9.5/MailUI/SubjectFormatter.h new file mode 100644 index 00000000..c01688c8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/SubjectFormatter.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFormatter.h" + +@interface SubjectFormatter : NSFormatter +{ +} + +- (BOOL)isPartialStringValid:(id)arg1 newEditingString:(id *)arg2 errorDescription:(id *)arg3; +- (BOOL)getObjectValue:(id *)arg1 forString:(id)arg2 errorDescription:(id *)arg3; +- (id)editingStringForObjectValue:(id)arg1; +- (id)attributedStringForObjectValue:(id)arg1 withDefaultAttributes:(id)arg2; +- (id)stringForObjectValue:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/TableHeaderView.h b/MailHeaders/Mavericks_10.9.5/MailUI/TableHeaderView.h new file mode 100644 index 00000000..5ba572b6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/TableHeaderView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableHeaderView.h" + +@interface TableHeaderView : NSTableHeaderView +{ + BOOL _noSeparatorLines; +} + ++ (id)updateHeaderViewForTableView:(id)arg1; +- (BOOL)_drawingEndSeparator; +- (void)setDrawsSeparatorLines:(BOOL)arg1; +- (BOOL)drawsSeparatorLines; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/TableViewManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/TableViewManager.h new file mode 100644 index 00000000..b0b1ad2c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/TableViewManager.h @@ -0,0 +1,378 @@ +/* + * 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 "MVSelectionOwner.h" +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class MFMessageThread, MailTableView, MessageListContainerView, MessageViewer, NSArray, NSCache, NSDictionary, NSFont, NSImageView, NSMapTable, NSMutableArray, NSMutableAttributedString, NSMutableDictionary, NSMutableSet, NSString, NSTableColumn, NSTableHeaderView, _VisibleStateObject; + +@interface TableViewManager : NSObject +{ + MailTableView *_tableView; + id _messageMall; + NSArray *_tableColumns; + MessageViewer *_delegate; + NSMutableArray *_selection; + BOOL _suspendChangesToScrollingAndSelection; + NSDictionary *_messageIDsToSelectWhenOpened; + NSArray *_threadIDsToOpenWhenOpened; + NSMapTable *_storeStateTable; + _VisibleStateObject *_visibleStateBeforeSearch; + long long _windowWidthBeforeSearch; + NSMutableSet *_mouseTrackers; + struct { + unsigned int includeDeleted:1; + unsigned int isFocused:1; + unsigned int sortColumnOrderAscending:1; + unsigned int mailboxSortColumnOrderAscending:1; + unsigned int isShowingSearchResults:1; + unsigned int sortColumnOrder:8; + unsigned int mailboxSortColumnOrder:8; + unsigned int hasScrolledSinceMailboxChange:1; + unsigned int userChangedSelectionSinceMailboxChange:1; + unsigned int threadOpeningIsInProgress:1; + unsigned int threadClosingIsInProgress:1; + unsigned int doubleClickThreadOpeningIsInProgress:1; + unsigned int animatingThreadOpening:1; + unsigned int animatingThreadClosing:1; + unsigned int animateInSlowMotion:1; + unsigned int dontUpdateTrackingRects:1; + unsigned int useBoldFontForUnreadMessages:1; + unsigned int clearingSearch:1; + unsigned int selectionShouldNotChange:1; + unsigned int selectingMessagesForTransfer:1; + } _flags; + BOOL _isRichMessageList; + BOOL _keepSelectionWhenTogglingThread; + int _searchTarget; + long long _searchField; + BOOL _needsColumnSetup; + NSFont *_font; + NSArray *_expandedSelection; + NSArray *_expandedSelectionForTransfer; + struct _NSRange _filteredMessagesRange; + NSMutableAttributedString *_truncatedString; + NSMutableDictionary *_truncatedStringAttributes; + NSMutableDictionary *_truncatedParagraphStyle; + long long _leftmostTextColumn; + long long _colorHighlightLeftEdge; + long long _colorHighlightWidth; + NSMutableSet *_messagesInSelectedThread; + MFMessageThread *_threadBeingClosed; + MFMessageThread *_threadBeingOpened; + struct CGPoint _lastMouseDownInUnreadColumnPoint; + long long _lastMouseDownInUnreadColumnEventNumber; + struct CGPoint _currentMouseLocationInWindow; + long long _numberOfSelectedRowsBeforeTogglingThread; + long long _selectedRowBeforeTogglingThread; + BOOL _isDragging; + BOOL _didAwake; + BOOL _isShowingToCc; + BOOL _isShowingContactPhotos; + unsigned long long _numberOfSnippetLines; + NSTableColumn *_richTableColumn; + NSTableHeaderView *_tableHeaderView; + long long _previouslyViewedMessageRow; + long long _currentViewedMessageRow; + int _nextMessageDirection; + MessageListContainerView *_messageListContainerView; + BOOL _shouldShowSnapshotView; + NSFont *_boldFont; + NSArray *_draggedMessages; + NSArray *_filteredMessagesFromMouseDown; + long long _lastRequestedRow; + NSMutableSet *_messagesBeingFetched; + NSString *_messageIDToReveal; + NSImageView *_messageListSnapshotView; + NSCache *_snippetsForMessage; + NSObject *_snippetLock; +} + ++ (id)specialImageForMessageCount:(unsigned long long)arg1 offset:(struct CGPoint *)arg2; ++ (void)initialize; ++ (id)_getThreadBackgroundColorForThread:(id)arg1; ++ (id)_getDarkerThreadBackgroundColorForThread:(id)arg1; +@property(readonly, nonatomic) NSObject *snippetLock; // @synthesize snippetLock=_snippetLock; +@property(readonly, nonatomic) NSCache *snippetsForMessage; // @synthesize snippetsForMessage=_snippetsForMessage; +@property(nonatomic) BOOL shouldShowSnapshotView; // @synthesize shouldShowSnapshotView=_shouldShowSnapshotView; +@property(retain, nonatomic) NSImageView *messageListSnapshotView; // @synthesize messageListSnapshotView=_messageListSnapshotView; +@property(retain, nonatomic) NSString *messageIDToReveal; // @synthesize messageIDToReveal=_messageIDToReveal; +@property(readonly, nonatomic) NSMutableSet *messagesBeingFetched; // @synthesize messagesBeingFetched=_messagesBeingFetched; +@property(nonatomic) long long lastRequestedRow; // @synthesize lastRequestedRow=_lastRequestedRow; +@property(retain, nonatomic) NSArray *filteredMessagesFromMouseDown; // @synthesize filteredMessagesFromMouseDown=_filteredMessagesFromMouseDown; +@property(copy) NSArray *draggedMessages; // @synthesize draggedMessages=_draggedMessages; +@property(readonly, nonatomic) BOOL isRichMessageList; // @synthesize isRichMessageList=_isRichMessageList; +@property(retain) NSFont *boldFont; // @synthesize boldFont=_boldFont; +- (void)setIncludeDeleted:(BOOL)arg1; +- (BOOL)includeDeleted; +- (id)messageToSelectIfEntireSelectionRemoved:(id)arg1; +- (void)_recordSelectionHistoryForRow:(long long)arg1; +- (void)_resetNextMessageTracking; +- (BOOL)_goUpInsteadOfDown; +- (long long)_indexOfFirstNonDeletedNonSelectedMessage:(long long)arg1 withinRowRange:(struct _NSRange)arg2 goUp:(BOOL)arg3; +- (id)messageMall; +- (id)mailTableView:(id)arg1 rangesForBackgroundShadingInRange:(struct _NSRange)arg2 shadingColors:(id *)arg3 leftColumnColors:(id *)arg4; +- (BOOL)shouldTrackMouse:(id)arg1; +- (void)mailTableView:(id)arg1 gotEvent:(id)arg2; +- (void)_setButtonCellNeedsDisplay; +- (void)_callWillDisplayCellForClickedCell; +- (struct CGPoint)_mouseLocationInWindow; +- (struct CGRect)frameOfClickedCell; +- (void)mailTableView:(id)arg1 willDrawRowsInRange:(struct _NSRange)arg2; +- (id)mailTableView:(id)arg1 dragImageForRowsWithIndexes:(id)arg2 event:(id)arg3 dragImageOffset:(struct CGPoint *)arg4; +- (id)tableView:(id)arg1 namesOfPromisedFilesDroppedAtDestination:(id)arg2 forDraggedRowsWithIndexes:(id)arg3; +- (void)pasteboardChangedOwner:(id)arg1; +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (void)mailTableView:(id)arg1 didMouseDown:(id)arg2; +- (void)mailTableView:(id)arg1 willMouseDown:(id)arg2; +- (void)mailTableViewDragWillEnd:(id)arg1 operation:(unsigned long long)arg2; +- (BOOL)transferSelectionToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; +- (id)messagesToTransferIsMove:(BOOL)arg1; +- (id)_filterAndExpandMessagesForTransfer:(id)arg1; +- (void)mailTableViewDraggedImage:(id)arg1 movedTo:(struct CGPoint)arg2; +- (void)archiveMessages:(id)arg1 allowUndo:(BOOL)arg2; +- (BOOL)shouldDeleteMessagesGivenCurrentState:(id)arg1; +- (void)undeleteMessagesAllowingUndo:(BOOL)arg1; +- (void)deleteMessages:(id)arg1 allowMoveToTrash:(BOOL)arg2 allowUndo:(BOOL)arg3; +- (void)_redeleteMessages:(id)arg1 messagesToSelect:(id)arg2; +- (void)undeleteMessages:(id)arg1 allowUndo:(BOOL)arg2; +- (void)_undeleteMessages:(id)arg1 allowUndo:(BOOL)arg2 unreadMessages:(id)arg3; +- (void)selectMessagesForMessageTransferUndo:(id)arg1; +- (void)selectMessagesForMessageTransfer:(id)arg1; +- (void)_adjustScrollPositionForTransferedMessages:(id)arg1 isUndo:(BOOL)arg2; +- (id)_undoActionNameForMessageCount:(unsigned long long)arg1; +- (BOOL)mailTableView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (id)tableView; +- (id)messageStore; +- (id)currentDisplayedMessage; +- (BOOL)shouldViewRelatedMessagesForMessage:(id)arg1; +- (id)parentThreadForChildMessage:(id)arg1; +- (id)messageThatUserIsProbablyReading; +- (void)selectMessages:(id)arg1; +- (void)_selectMessages:(id)arg1 scrollIfNeeded:(BOOL)arg2; +- (id)selection; +- (id)selectionExpandingThreadsAndHiddenCopies:(BOOL)arg1; +- (void)deleteSelectionAllowingMoveToTrash:(BOOL)arg1; +- (void)deleteKeyPressed; +- (void)_snippetsUpdated:(id)arg1; +- (void)_updateRowsWithNewSnippets:(id)arg1; +- (void)_updateSnippetsForMessage:(id)arg1 ignoreExpected:(BOOL)arg2; +- (void)clearSnippetCacheForMessages:(id)arg1; +- (void)mallPrefetchedSnippets:(id)arg1; +- (void)resetSnippetCache; +- (id)_messagesNeedingSnippetsAroundRow:(unsigned long long)arg1; +- (void)_performSnippetFetching; +- (void)_cacheSnippetsAroundRow:(unsigned long long)arg1; +- (id)_snippetFetchQueue; +- (id)_snippetForMessage:(id)arg1; +- (void)_doubleClickedMessage:(id)arg1; +- (id)mailTableViewTopLineColor:(id)arg1; +- (int)mailTableView:(id)arg1 highlightStyleForRow:(long long)arg2 inRect:(struct CGRect *)arg3 color:(id *)arg4; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 dataCellForTableColumn:(id)arg2 row:(long long)arg3; +- (id)_cachedMessageDataForRow:(long long)arg1 flags:(unsigned int *)arg2 appliedFlagColors:(id *)arg3; +- (void)invalidateRowDataCache; +- (void)_resetObjectValueForCellView:(id)arg1; +- (void)_prepareCell:(id)arg1 withMessage:(id)arg2; +- (id)tableView:(id)arg1 viewForTableColumn:(id)arg2 row:(long long)arg3; +- (id)tableView:(id)arg1 rowViewForRow:(long long)arg2; +- (void)tableView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (void)tableView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (void)_setupRowView:(id)arg1 atIndex:(long long)arg2; +- (void)_setupRowViewAtRow:(long long)arg1; +- (void)tableViewColumnDidResize:(id)arg1; +- (void)tableViewColumnDidMove:(id)arg1; +- (void)mailTableViewDidEndLiveResize:(id)arg1; +- (void)mailTableViewWillStartLiveResize:(id)arg1; +- (void)tableViewFrameChangedDuringLiveResize:(id)arg1; +- (void)tableView:(id)arg1 didDragTableColumn:(id)arg2; +- (void)updateColorHighlightEdges; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (BOOL)tableView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; +- (id)tableView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 row:(long long)arg3; +- (id)_truncatedAttributedStringForString:(id)arg1 message:(id)arg2 row:(long long)arg3 shouldIndent:(BOOL)arg4; +- (id)_colorForMessage:(id)arg1 inRow:(long long)arg2 withCell:(id)arg3; +- (id)_messageSelectionColor; +- (id)_attributesForTruncatedParagraphStyle; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)_datesNeedRedisplay:(id)arg1; +- (void)mailTableViewDidResignFirstResponder:(id)arg1; +- (void)mailTableViewDidBecomeFirstResponder:(id)arg1; +- (void)_redisplayRowsAboveSelected; +- (void)tableViewSelectionDidChange:(id)arg1; +- (id)_normalizedSelection:(id)arg1; +- (id)tableView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (void)_selectOrDeselectMembersOfThread:(id)arg1 atIndex:(long long)arg2 select:(BOOL)arg3; +- (void)updateViewingPaneToSelection; +- (id)selectedThread; +- (id)_messageSelectionWithDataForPrinting:(BOOL)arg1; +- (id)messageSelectionForPrinting; +- (id)messageSelection; +- (void)_updateSelectedThreadList; +- (void)_setNeedsDisplayThreadColumnForMessagesInSet:(id)arg1; +- (void)_reloadDisplayOnlyForMessagesInSet:(id)arg1 highlightOnly:(BOOL)arg2; +- (BOOL)_isMessageInSelectedThread:(id)arg1; +- (long long)mailTableView:(id)arg1 shouldScrollRowToVisible:(long long)arg2; +- (void)scrollRowToVisible:(long long)arg1 position:(int)arg2; +- (BOOL)isSelectionVisible; +- (void)showSelectionAndCenter:(BOOL)arg1; +- (void)selectPreviousReplyToParent; +- (void)selectNextReplyToParent; +- (void)selectPeer:(BOOL)arg1; +- (void)selectFirstReplyToMessage; +- (void)selectParentOfMessage; +- (void)selectPreviousMessage:(int)arg1; +- (void)selectNextMessage:(int)arg1; +- (BOOL)nextMessageIsBelow; +- (BOOL)selectOldestUnreadOrNewestMessageInThread; +- (BOOL)openSelectedThread; +- (BOOL)stepOutOfSelectedThread; +- (BOOL)stepIntoSelectedThread; +- (void)selectNextMessageMovingUpward:(int)arg1; +- (void)selectNextMessageMovingDownward:(int)arg1; +- (long long)_modifierFlagsForKeyboardNavigation; +- (BOOL)selectionIsExactlyOneOpenThread; +- (BOOL)canSelectNextReplyToParent; +- (BOOL)canSelectFirstReplyToMessage; +- (BOOL)canSelectParentOfMessage; +- (BOOL)canSelectNextThreadedMessage; +- (BOOL)canSelectPreviousThreadedMessage; +- (long long)_indexOfMessageNearest:(long long)arg1 numberOfRows:(long long)arg2 threaded:(BOOL)arg3 downward:(BOOL)arg4; +- (void)toggleThread:(id)arg1 ignoreModifierKeys:(BOOL)arg2; +- (void)toggleThread:(id)arg1; +- (void)closeAllThreads; +- (void)openAllThreads; +- (BOOL)closeThreadAtIndex:(long long)arg1 focusRow:(long long)arg2 animate:(BOOL)arg3; +- (BOOL)openThreadAtIndex:(long long)arg1 andSelectMessage:(id)arg2 animate:(BOOL)arg3; +- (void)invalidateSelectionCache:(id)arg1; +- (void)_threadedModeDidChange:(id)arg1; +- (void)toggleThreadedMode; +- (BOOL)isInThreadedMode; +@property(retain, nonatomic) NSFont *font; +- (void)_updateTableViewRowHeight; +- (double)tableView:(id)arg1 heightOfRow:(long long)arg2; +- (double)tableViewRowHeightForRichMessageList:(BOOL)arg1; +- (void)makeMessageListFirstResponder; +- (void)selectAllMessagesAndMakeFirstResponder; +- (long long)tableViewNumberOfColumnsToPinToLefthandSide:(id)arg1; +- (BOOL)mailTableView:(id)arg1 shouldAddTableColumn:(id)arg2; +- (BOOL)mailTableView:(id)arg1 shouldRemoveTableColumn:(id)arg2; +- (BOOL)tableView:(id)arg1 shouldReorderColumn:(long long)arg2 toColumn:(long long)arg3; +- (void)_setColumn:(long long)arg1 toVisible:(BOOL)arg2; +- (void)setColumn:(long long)arg1 toVisible:(BOOL)arg2; +- (void)_updateAttributesForMailboxes; +- (BOOL)isColumnVisible:(long long)arg1; +- (BOOL)_isAutomaticInsertionWhileSearchingOkayForColumn:(long long)arg1; +- (BOOL)_isColumnVisibleInSettings:(long long)arg1; +- (id)_unreadColumn; +- (id)_columnWithIdentifierTag:(long long)arg1; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)_updateTableHeaderToMatchCurrentSort; +- (void)_threadColorPreferenceChanged:(id)arg1; +- (void)_snippetLinePreferenceChanged:(id)arg1; +- (void)_contactPhotoPreferenceChanged:(id)arg1; +- (void)_toCcPreferenceChanged:(id)arg1; +- (void)_viewerLayoutPreferenceChanged:(id)arg1; +- (void)_viewerPreferencesChanged:(id)arg1; +- (BOOL)canSelectPreviousMessage; +- (BOOL)canSelectNextMessage; +- (void)readStoreSpecificAttributesFromDictionary:(id)arg1; +- (void)readStoreSpecificAttributesFromMailbox:(id)arg1; +- (void)writeStoreSpecificAttributesToMailbox:(id)arg1; +- (void)writeAttributesToDictionary:(id)arg1; +- (void)readAttributesFromDictionary:(id)arg1; +- (void)setupColumnManagerFromDictionary:(id)arg1; +- (void)_mallConversationsUpdated:(id)arg1; +- (void)_messagesUpdated:(id)arg1; +- (void)_messageMarkedForOverwrite:(id)arg1; +- (void)setMessageMall:(id)arg1; +- (void)setDelegate:(id)arg1; +- (id)delegate; +- (void)prepareForWindowClose; +- (void)dealloc; +- (void)_configureTableViewLayoutWithTableColumnResizingMasks:(id)arg1; +- (void)_setupColumnsForTableView; +- (void)showFollowupsToMessageAtRow:(long long)arg1; +- (void)showFollowupsToMessage:(id)arg1; +- (void)richUnreadButtonClicked:(id)arg1; +- (void)_createTintedImages; +- (void)_configureRichMessageListColumn; +- (void)_configureColumnForRolloverCell:(id)arg1 alignment:(unsigned long long)arg2 action:(SEL)arg3; +- (void)_configureColumnForImageCell:(id)arg1 alignment:(unsigned long long)arg2; +- (void)_configureColumnForEndTruncation:(id)arg1; +- (void)_setupTableColumnWidths; +- (void)_setupColumnHeaderIcon:(id)arg1 inColumnWithIdentifier:(id)arg2 accessibilityTitle:(id)arg3 alignment:(unsigned long long)arg4; +- (void)_tableViewScrolled:(id)arg1; +- (BOOL)respondsToSelector:(SEL)arg1; +- (id)tableViewGetDefaultMenu:(id)arg1; +- (void)_unregisterTableViewNibs; +- (void)_registerTableViewNibs; +- (void)awakeFromNib; +- (id)init; +- (void)setAppleScriptVisibleColumns:(id)arg1; +- (id)appleScriptVisibleColumns; +- (void)setAppleScriptSortColumn:(unsigned int)arg1; +- (unsigned int)appleScriptSortColumn; +- (long long)_columnForAppleScriptColumn:(unsigned int)arg1; +- (BOOL)selectMessageWithIDIfExists:(id)arg1; +- (void)mailTableViewDidMoveToWindow:(id)arg1; +- (void)mailTableView:(id)arg1 willMoveToWindow:(id)arg2; +- (void)openOrCloseThread:(id)arg1 flag:(BOOL)arg2 clickedRow:(long long)arg3 rowToSelectInOpeningThread:(long long)arg4; +- (double)_scrollRectToVisibleAdjustment:(struct CGRect)arg1 visibleRect:(struct CGRect)arg2; +- (BOOL)_isRowVisible:(long long)arg1; +- (double)_getAnimationDuration:(long long)arg1; +- (long long)_indexOfMemberToSelectWhenOpeningThread:(id)arg1; +- (void)updateTrackingRects; +- (void)clearTrackingRects; +- (id)filteredMessages; +- (long long)state; +- (void)setIsSortedAscending:(BOOL)arg1; +- (BOOL)isSortedAscending; +- (void)setSortColumn:(long long)arg1 ascending:(BOOL)arg2; +- (id)sortByStringForColumn:(long long)arg1; +- (long long)sortColumn; +- (BOOL)isSortedChronologically; +- (BOOL)isSortedByDateReceived; +- (void)setFocusedMessages:(id)arg1; +- (BOOL)isFocused; +- (void)searchForString:(id)arg1 in:(int)arg2 withOptions:(long long)arg3; +- (void)searchForSuggestions:(id)arg1 in:(int)arg2 withOptions:(long long)arg3 fromSuggestionsSearchField:(id)arg4; +- (void)_searchForString:(id)arg1 orSuggestions:(id)arg2 in:(int)arg3 withOptions:(long long)arg4 fromSuggestionsSearchField:(id)arg5; +- (BOOL)isShowingSearchResults; +- (void)clearSearch; +- (void)setSelectedMessageIDs:(id)arg1 openThreadIDs:(id)arg2 withOverride:(BOOL)arg3; +- (id)openThreadIDs; +- (id)selectedMessageIDs; +- (BOOL)restoreScrollAndSelectionWithForceSelection:(BOOL)arg1; +- (void)saveScrollAndSelection; +- (void)_saveScrollAndSelection:(BOOL)arg1; +- (id)persistentVisibleStateCreateIfNecessary:(BOOL)arg1; +- (long long)indexOfLastReadMessage; +- (long long)indexOfTopmostVisibleMessageMustBeSelected:(BOOL)arg1 okayIfDeleted:(BOOL)arg2; +- (void)dumpVisibleState; +- (BOOL)_restoreVisibleState:(id)arg1 forceSelToVisible:(BOOL)arg2; +- (void)_recordVisibleState:(id)arg1 deletedAreGoingAway:(BOOL)arg2 considerPinToEnd:(BOOL)arg3; +- (void)_scrollToHappyPlace; +- (void)messageFlagsChanged:(id)arg1; +- (void)messagesCompacted:(id)arg1; +- (void)_updateSearchDelegate; +- (void)mallFinishedLoading:(id)arg1; +- (void)_setupColumns; +- (void)mallStructureChanged:(id)arg1; +- (void)mallSortChanged:(id)arg1; +- (void)setMailboxes:(id)arg1 isSettingUpUI:(BOOL)arg2; +- (void)mallStructureWillChange:(id)arg1; +- (void)_removeMessageListSnapshot; +- (void)_snapshotMessageList; +- (BOOL)_debugThreadAnimation; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/TemporaryAttachmentOpener.h b/MailHeaders/Mavericks_10.9.5/MailUI/TemporaryAttachmentOpener.h new file mode 100644 index 00000000..fbfc15b9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/TemporaryAttachmentOpener.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "GenericAttachmentFetcher.h" + +@class NSString; + +@interface TemporaryAttachmentOpener : GenericAttachmentFetcher +{ + NSString *_applicationPath; +} + +- (double)temporaryFolderTimeout; +- (void)didSaveAttachment:(id)arg1 toPath:(id)arg2; +- (void)_openAttachmentAtPath:(id)arg1; +- (void)downloadedAllAttachments; +- (void)dealloc; +- (id)initWithAttachments:(id)arg1; +- (id)initWithAttachments:(id)arg1 applicationPath:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/TemporaryItemManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/TemporaryItemManager.h new file mode 100644 index 00000000..7e70c747 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/TemporaryItemManager.h @@ -0,0 +1,31 @@ +/* + * 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 "NSFileManagerDelegate.h" + +@class NSString, NSTimer; + +@interface TemporaryItemManager : NSObject +{ + NSString *_path; + NSTimer *_timer; +} + ++ (id)temporaryItemManagerWithRelativePath:(id)arg1 cleanupInterval:(double)arg2; ++ (void)cleanupAllItems; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (void)cleanUpDirectory; +- (void)setExpirationDate:(id)arg1; +- (void)_setUpTimer:(id)arg1; +- (id)expirationDate; +- (id)path; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/TextButtonToolbarItem.h b/MailHeaders/Mavericks_10.9.5/MailUI/TextButtonToolbarItem.h new file mode 100644 index 00000000..cb587611 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/TextButtonToolbarItem.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@interface TextButtonToolbarItem : NSToolbarItem +{ +} + +- (void)setLabel:(id)arg1; +- (id)control; +- (void)validate; +- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; +- (id)initWithItemIdentifier:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/TextMessageDisplay.h b/MailHeaders/Mavericks_10.9.5/MailUI/TextMessageDisplay.h new file mode 100644 index 00000000..1437fcab --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/TextMessageDisplay.h @@ -0,0 +1,41 @@ +/* + * 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 "NSTextViewDelegate.h" + +@class MCMessage, MessageTextView, NSAttributedString, NSWindow; + +@interface TextMessageDisplay : NSObject +{ + MessageTextView *_textView; + NSAttributedString *_rawSourceString; + BOOL _showControlCharacters; + NSWindow *_singleWindow; + MCMessage *_message; +} + ++ (void)_removeDisplayForMessage:(id)arg1; ++ (void)displayRawSourceForMessage:(id)arg1; +@property(retain, nonatomic) MCMessage *message; // @synthesize message=_message; +@property(retain, nonatomic) NSWindow *singleWindow; // @synthesize singleWindow=_singleWindow; +- (void)saveAs:(id)arg1; +- (void)toggleShowControlCharacters:(id)arg1; +- (void)showPrintPanel:(id)arg1; +- (void)setTitle:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)bringToFront; +- (BOOL)validateMenuItem:(id)arg1; +- (id)messageTextView:(id)arg1 willReturnMenu:(id)arg2 forEvent:(id)arg3; +- (void)_displayRawSource; +- (void)_prepareForMessage:(id)arg1; +- (void)_beginBackgroundLoad; +- (void)dealloc; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ThreadDisclosureTextField.h b/MailHeaders/Mavericks_10.9.5/MailUI/ThreadDisclosureTextField.h new file mode 100644 index 00000000..915a92e7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ThreadDisclosureTextField.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextField.h" + +@interface ThreadDisclosureTextField : NSTextField +{ +} + +@property(nonatomic) BOOL isOpen; +- (void)mouseDown:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)_updateWithCustomCell; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ThumbnailButtonCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/ThumbnailButtonCell.h new file mode 100644 index 00000000..5893a88b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ThumbnailButtonCell.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@class NSButton; + +@interface ThumbnailButtonCell : NSButtonCell +{ + NSButton *_deleteButton; + long long _trackingRectTag; +} + +- (unsigned long long)focusRingType; +- (void)mouseExited:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (long long)trackingRectTag; +- (void)setTrackingRectTag:(long long)arg1; +- (void)setDeleteButton:(id)arg1; +- (struct CGRect)drawTitle:(id)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (void)drawImage:(id)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (void)dealloc; +- (id)initImageCell:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ThumbnailMatrix.h b/MailHeaders/Mavericks_10.9.5/MailUI/ThumbnailMatrix.h new file mode 100644 index 00000000..41e4e132 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ThumbnailMatrix.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMatrix.h" + +@interface ThumbnailMatrix : NSMatrix +{ + BOOL _shouldShowButtons; +} + +- (BOOL)_performDragFromMouseDown:(id)arg1; +- (struct CGRect)frameOfThumbnailAtIndex:(long long)arg1; +- (void)_addButtonAtIndex:(long long)arg1; +- (void)showDeleteButtons:(BOOL)arg1 beginningAtIndex:(long long)arg2; +- (void)highlightCell:(BOOL)arg1 atRow:(long long)arg2 column:(long long)arg3; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ThunderbirdEmailImporter.h b/MailHeaders/Mavericks_10.9.5/MailUI/ThunderbirdEmailImporter.h new file mode 100644 index 00000000..c1d871b3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ThunderbirdEmailImporter.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +@interface ThunderbirdEmailImporter : FilesystemEmailImporter +{ +} + ++ (id)explanatoryText; ++ (id)name; +- (char *)fromString; +- (id)pathExtensions; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/TilingWebView.h b/MailHeaders/Mavericks_10.9.5/MailUI/TilingWebView.h new file mode 100644 index 00000000..658050ca --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/TilingWebView.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebView.h" + +@interface TilingWebView : WebView +{ + unsigned int _isAdjusting:1; + unsigned int _disableSizeToFit:1; + double _minHeight; + double _leftMargin; +} + +@property double minHeight; // @synthesize minHeight=_minHeight; +@property double leftMargin; // @synthesize leftMargin=_leftMargin; +- (void)sizeToFit; +- (id)initWithFrame:(struct CGRect)arg1 frameName:(id)arg2 groupName:(id)arg3; +@property BOOL disableSizeToFit; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/TransparentImageView.h b/MailHeaders/Mavericks_10.9.5/MailUI/TransparentImageView.h new file mode 100644 index 00000000..c8e3c3ce --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/TransparentImageView.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageView.h" + +@class NSView; + +@interface TransparentImageView : NSImageView +{ + NSView *_backgroundView; +} + +- (id)accessibilityAttributeValue:(id)arg1; +- (void)awakeFromNib; +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/TypeAheadWindow.h b/MailHeaders/Mavericks_10.9.5/MailUI/TypeAheadWindow.h new file mode 100644 index 00000000..c9bc046b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/TypeAheadWindow.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "FullScreenModalCapableWindow.h" + +@interface TypeAheadWindow : FullScreenModalCapableWindow +{ + BOOL _shouldFlushTypeAheadEvents; + BOOL _sendMouseDownNotifications; +} + ++ (BOOL)handleEvent:(id)arg1; +- (void)performTextFinderAction:(id)arg1; +- (BOOL)canEnterFullScreenMode; +- (void)sendMouseDownNotifications:(BOOL)arg1; +- (void)sendEvent:(id)arg1; +- (void)close; +- (void)_flushTypeAheadEvents; +- (void)becomeKeyWindow; +- (void)flushTypeAheadEventsWhenAppropriate; +- (void)startRecordingTypeAheadEvents; +- (id)initWithContentRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4 screen:(id)arg5; +- (id)initWithContentRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/UnfoldAnimationController.h b/MailHeaders/Mavericks_10.9.5/MailUI/UnfoldAnimationController.h new file mode 100644 index 00000000..c5f2352b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/UnfoldAnimationController.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class NSOpenGLContext, NSTimer, NSWindow, QCRenderer; + +@interface UnfoldAnimationController : NSObject +{ + NSWindow *_window; + NSOpenGLContext *_glContext; + QCRenderer *_renderer; + NSTimer *_timer; + struct CGSize _size; + double _foldTop; + double _foldHeight; + double _startTime; + double _duration; + id _completionBlock; +} + +@property(readonly, nonatomic) double overflowHeight; +- (void)_renderTimer:(id)arg1; +- (void)stopAnimation; +- (void)startAnimationWithDestinationImage:(id)arg1 completionBlock:(id)arg2; +- (void)setFoldHeight:(double)arg1; +- (void)prepareAnimationWithBackgroundImage:(id)arg1 sourceImage:(id)arg2 foldTop:(double)arg3 contentTop:(double)arg4 contentBottom:(double)arg5 sideMargin:(double)arg6 screenRect:(struct CGRect)arg7 parentWindow:(id)arg8; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/UserNotificationCenterController.h b/MailHeaders/Mavericks_10.9.5/MailUI/UserNotificationCenterController.h new file mode 100644 index 00000000..1ef5e3c7 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/UserNotificationCenterController.h @@ -0,0 +1,60 @@ +/* + * 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 "NSUserNotificationCenterDelegate.h" + +@class MFMailbox, NSMutableDictionary, NSMutableSet, NSOperationQueue; + +@interface UserNotificationCenterController : NSObject +{ + BOOL _isRichList; + MFMailbox *_userNotificationMailbox; + unsigned long long _userNotificationScope; + NSMutableDictionary *_messagesInNeedingSnippetsInMailboxes; + NSMutableSet *_messagesSentBySelf; + NSMutableSet *_forcedNotificationMessageIDs; + unsigned long long _numberOfSnippetLines; + BOOL _shouldLogUserNotificationEvents; + NSOperationQueue *_operationQueue; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain, nonatomic) NSOperationQueue *operationQueue; // @synthesize operationQueue=_operationQueue; +- (BOOL)_shouldSendUserNotificationForMessage:(id)arg1 inMailbox:(id)arg2; +- (BOOL)userNotificationCenter:(id)arg1 shouldPresentNotification:(id)arg2; +- (void)userNotificationCenter:(id)arg1 didDismissAlert:(id)arg2; +- (void)userNotificationCenter:(id)arg1 didActivateNotification:(id)arg2; +- (BOOL)userNotificationCenter:(id)arg1 shouldActivateForNotification:(id)arg2; +- (void)setUserNotificationScope:(unsigned long long)arg1 mailbox:(id)arg2; +- (unsigned long long)userNotificationScope; +- (void)_deleteUserNotificationWithKey:(id)arg1 object:(id)arg2; +- (void)_mailAccountsChanged:(id)arg1; +- (void)_viewerLayoutPreferenceChanged:(id)arg1; +- (void)_messagesWereReadOrDeleted:(id)arg1; +- (void)_sendUserNotificationForSenderName:(id)arg1 subject:(id)arg2 snippet:(id)arg3 messageID:(id)arg4 accountID:(id)arg5 mailboxPersistentID:(id)arg6 messageDate:(id)arg7 isVip:(BOOL)arg8; +- (void)_postUserNotificationForMessagesInMailboxes:(id)arg1 withSnippets:(id)arg2; +- (void)_messageSnippetsUpdated:(id)arg1; +- (id)_snippetsForMessagesInMailboxes:(id)arg1; +- (void)_ruleWasMatched:(id)arg1; +- (void)_messagesGmailLabelsChanged:(id)arg1; +- (void)_messagesWereAdded:(id)arg1; +- (void)_snippetLinePreferenceChanged:(id)arg1; +- (id)userNotificationMailbox; +- (void)_setUserNotificationMailbox:(id)arg1; +- (void)_mailboxWillBeInvalidated:(id)arg1; +- (void)_clearNotificationsForDeletedAccounts; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/UserScriptGenerator.h b/MailHeaders/Mavericks_10.9.5/MailUI/UserScriptGenerator.h new file mode 100644 index 00000000..e2a150cd --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/UserScriptGenerator.h @@ -0,0 +1,25 @@ +/* + * 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" + +@class NSArray; + +@interface UserScriptGenerator : NSObject +{ +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) NSArray *userScripts; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/UserStyleSheetGenerator.h b/MailHeaders/Mavericks_10.9.5/MailUI/UserStyleSheetGenerator.h new file mode 100644 index 00000000..85a55273 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/UserStyleSheetGenerator.h @@ -0,0 +1,28 @@ +/* + * 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" + +@class NSString; + +@interface UserStyleSheetGenerator : NSObject +{ + NSString *_styleSheetString; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)_generateStyleSheetString; +@property(retain, nonatomic) NSString *userStyleSheetString; +- (id)autorelease; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/VerticallyCenteredTextFieldCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/VerticallyCenteredTextFieldCell.h new file mode 100644 index 00000000..c6e970a9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/VerticallyCenteredTextFieldCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface VerticallyCenteredTextFieldCell : NSTextFieldCell +{ +} + +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ViewTextAttachmentCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/ViewTextAttachmentCell.h new file mode 100644 index 00000000..0c4768d8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ViewTextAttachmentCell.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewTextAttachmentCell.h" + +@class NSView; + +@interface ViewTextAttachmentCell : NSViewTextAttachmentCell +{ + NSView *_view; + NSView *_containingView; + struct CGSize _viewSize; +} + +- (void)dealloc; +- (void)releaseView:(id)arg1; +- (struct CGSize)cellSize; +- (id)viewWithFrame:(struct CGRect)arg1 forView:(id)arg2 characterIndex:(unsigned long long)arg3 layoutManager:(id)arg4; +- (id)view; +- (void)setControlView:(id)arg1; +- (id)controlView; +- (id)initWithView:(id)arg1; +- (void)_viewFrameChanged:(id)arg1; +- (void)_viewFrameChanged; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ViewerPreferences.h b/MailHeaders/Mavericks_10.9.5/MailUI/ViewerPreferences.h new file mode 100644 index 00000000..99a59467 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ViewerPreferences.h @@ -0,0 +1,71 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "NSTableViewDataSource.h" + +@class NSButton, NSColorWell, NSMutableArray, NSPanel, NSPopUpButton, NSSegmentedControl, NSTableView; + +@interface ViewerPreferences : NSPreferencesModule +{ + NSButton *_highlightThreadCheckbox; + NSColorWell *_threadHighlightColorWell; + NSButton *_loadURLsSwitch; + NSButton *_showUnreadMessagesInBoldSwitch; + NSButton *_useSmartAddressesSwitch; + NSPopUpButton *_headerDetailPopup; + NSTableView *_customHeaderTable; + NSSegmentedControl *_addRemoveHeaderControl; + NSPanel *_customHeaderPanel; + NSMutableArray *_filteredHeaders; + BOOL _isEditingHeader; + NSPopUpButton *_snippetLinesPopup; + NSButton *_classicLayoutButton; + NSButton *_toCcButton; + NSButton *_contactPhotosButton; + NSButton *_viewRelatedMessagesButton; +} + ++ (void)postSnippetLinesPreferenceChanged; ++ (void)postContactPhotoPreferenceChanged; ++ (void)_postToCcPreferenceChanged; ++ (void)postLayoutPreferenceChanged; ++ (void)postViewingPreferencesChanged; +- (void)viewRelatedMessagesClicked:(id)arg1; +- (void)contactPhotosClicked:(id)arg1; +- (void)toCcClicked:(id)arg1; +- (void)classicLayoutClicked:(id)arg1; +- (void)snippetLinesChanged:(id)arg1; +- (void)showUnreadMessagesInBoldChanged:(id)arg1; +- (void)threadHighlightColorChanged:(id)arg1; +- (void)highlightThreadClicked:(id)arg1; +- (void)headerDetailLevelChanged:(id)arg1; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)addRemoveHeaderClicked:(id)arg1; +- (void)cancelClicked:(id)arg1; +- (void)okClicked:(id)arg1; +- (void)_endEditingHeader; +- (void)_removeInvalidHeaders; +- (void)_headerTableEndedEditing:(id)arg1; +- (void)_headerTableBeganEditing:(id)arg1; +- (void)_editCustomHeadersClicked; +- (void)useSmartAddressesClicked:(id)arg1; +- (void)loadURLsClicked:(id)arg1; +- (void)initializeFromDefaults; +- (void)_updateCustomHeaderUI; +- (void)_initializeHeaderDetailLevelPopup; +- (id)imageForPreferenceNamed:(id)arg1; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (BOOL)isResizable; +- (void)dealloc; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ViewingPaneView.h b/MailHeaders/Mavericks_10.9.5/MailUI/ViewingPaneView.h new file mode 100644 index 00000000..b9a34ab6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ViewingPaneView.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class CALayer, NSImageView, NSMutableArray; + +@interface ViewingPaneView : NSView +{ + BOOL _showTopDividerEdgeOnly; + NSImageView *_snapshotView; + NSView *_contentView; + NSMutableArray *_subviewConstraints; + CALayer *_edgeLayer; + CALayer *_shadowLayer; +} + +@property(nonatomic) CALayer *shadowLayer; // @synthesize shadowLayer=_shadowLayer; +@property(nonatomic) CALayer *edgeLayer; // @synthesize edgeLayer=_edgeLayer; +@property(retain, nonatomic) NSMutableArray *subviewConstraints; // @synthesize subviewConstraints=_subviewConstraints; +@property(retain, nonatomic) NSImageView *snapshotView; // @synthesize snapshotView=_snapshotView; +@property(nonatomic) BOOL showTopDividerEdgeOnly; +@property(nonatomic) BOOL showDividerEdge; +@property(nonatomic) BOOL showingSnapshot; +@property(retain, nonatomic) NSView *contentView; // @synthesize contentView=_contentView; +- (void)didAddSubview:(id)arg1; +- (void)updateLayer; +- (BOOL)wantsUpdateLayer; +- (void)dealloc; +- (id)_buildShadowLayer; +- (id)_buildEdgeLayer; +- (id)makeBackingLayer; +- (void)_createSnapshotView; +- (void)_viewingPaneViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/ViewingPaneViewController.h b/MailHeaders/Mavericks_10.9.5/MailUI/ViewingPaneViewController.h new file mode 100644 index 00000000..26de8419 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/ViewingPaneViewController.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +@class ConversationViewController, MailStackViewController, NSView, NoSelectionPlaceholderView; + +@interface ViewingPaneViewController : NSViewController +{ + NoSelectionPlaceholderView *_placeholderView; + ConversationViewController *_conversationViewController; + MailStackViewController *_stackViewController; + NSView *_snapshotView; +} + +@property(retain, nonatomic) NSView *snapshotView; // @synthesize snapshotView=_snapshotView; +@property(retain, nonatomic) MailStackViewController *stackViewController; // @synthesize stackViewController=_stackViewController; +@property(retain, nonatomic) ConversationViewController *conversationViewController; // @synthesize conversationViewController=_conversationViewController; +@property(retain, nonatomic) NoSelectionPlaceholderView *placeholderView; // @synthesize placeholderView=_placeholderView; +- (void)_snapshotTimeout; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setShowTopDividerEdgeOnly:(BOOL)arg1; +- (void)setShowDividerEdge:(BOOL)arg1; +- (void)_displayStackView; +- (void)_displayConversationView; +- (void)_displayNoSelectionPlaceholder; +- (id)currentMessageSelection; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +- (void)setView:(id)arg1; +- (id)view; +- (void)loadView; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/WebComposeMessageContents.h b/MailHeaders/Mavericks_10.9.5/MailUI/WebComposeMessageContents.h new file mode 100644 index 00000000..c1998563 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/WebComposeMessageContents.h @@ -0,0 +1,30 @@ +/* + * 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" + +@class NSAttributedString, NSMutableArray, NSString; + +@interface WebComposeMessageContents : NSObject +{ + long long _composeMode; + NSAttributedString *_plainText; + NSString *_topLevelHtmlString; + NSMutableArray *_attachmentsAndHtmlStrings; + NSMutableArray *_urlsForAttachmentsAndHtmlStrings; +} + +@property(retain, nonatomic) NSMutableArray *urlsForAttachmentsAndHtmlStrings; // @synthesize urlsForAttachmentsAndHtmlStrings=_urlsForAttachmentsAndHtmlStrings; +@property(retain, nonatomic) NSMutableArray *attachmentsAndHtmlStrings; // @synthesize attachmentsAndHtmlStrings=_attachmentsAndHtmlStrings; +@property(retain, nonatomic) NSString *topLevelHtmlString; // @synthesize topLevelHtmlString=_topLevelHtmlString; +@property(retain, nonatomic) NSAttributedString *plainText; // @synthesize plainText=_plainText; +@property(nonatomic) long long composeMode; // @synthesize composeMode=_composeMode; +- (id)description; +- (void)addAttachmentOrHtmlString:(id)arg1 withURL:(id)arg2; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/WebDocumentGenerator.h b/MailHeaders/Mavericks_10.9.5/MailUI/WebDocumentGenerator.h new file mode 100644 index 00000000..175563ea --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/WebDocumentGenerator.h @@ -0,0 +1,33 @@ +/* + * 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" + +@class MCActivityMonitor, MCMessage, MUIWebDocument, NSSet; + +@interface WebDocumentGenerator : NSObject +{ + MCMessage *_message; + NSSet *_messagesInConversation; + MCActivityMonitor *_loadMonitor; + MUIWebDocument *_webDocument; + id _asyncLoadCompletionHandler; +} + ++ (id)_loadQueue; +@property(copy, nonatomic) id asyncLoadCompletionHandler; // @synthesize asyncLoadCompletionHandler=_asyncLoadCompletionHandler; +@property(retain, nonatomic) MUIWebDocument *webDocument; // @synthesize webDocument=_webDocument; +@property(retain, nonatomic) MCActivityMonitor *loadMonitor; // @synthesize loadMonitor=_loadMonitor; +@property(retain, nonatomic) NSSet *messagesInConversation; // @synthesize messagesInConversation=_messagesInConversation; +@property(retain, nonatomic) MCMessage *message; // @synthesize message=_message; +- (void)cancelLoad; +- (void)asyncLoad:(id)arg1; +- (id)_dataDetectorsContext; +- (void)dealloc; +- (id)initWithMessage:(id)arg1 messagesInConversation:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/WebFrame-SizingExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/WebFrame-SizingExtras.h new file mode 100644 index 00000000..14aca4cb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/WebFrame-SizingExtras.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebFrame.h" + +@interface WebFrame (SizingExtras) +- (void)selectAttachmentView:(id)arg1; +- (void)adjustAttachmentView:(id)arg1; +- (void)adjustToDocumentView; +- (void)_setSize:(struct CGSize)arg1 ofElement:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/WebHTMLView-MailAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUI/WebHTMLView-MailAdditions.h new file mode 100644 index 00000000..66dcc98a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/WebHTMLView-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebHTMLView.h" + +@interface WebHTMLView (MailAdditions) +- (void)changeDocumentBackgroundColor:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/WebHTMLView-ToReplaceViewWithOurOwn.h b/MailHeaders/Mavericks_10.9.5/MailUI/WebHTMLView-ToReplaceViewWithOurOwn.h new file mode 100644 index 00000000..a7e733cb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/WebHTMLView-ToReplaceViewWithOurOwn.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebHTMLView.h" + +@interface WebHTMLView (ToReplaceViewWithOurOwn) ++ (id)allocWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/WebMessageController.h b/MailHeaders/Mavericks_10.9.5/MailUI/WebMessageController.h new file mode 100644 index 00000000..e804b6c8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/WebMessageController.h @@ -0,0 +1,77 @@ +/* + * 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 "NSSharingServiceDelegate.h" +#import "NSSharingServicePickerDelegate.h" + +@class MFWebMessageDocument, NSString, NSView, WebArchive, WebView; + +@interface WebMessageController : NSObject +{ + WebView *_webView; + MFWebMessageDocument *_document; + id _parentController; + NSView *_mainFrameDocumentView; + NSString *_sender; + BOOL _finishedFirstLayout; + BOOL _isForURLSharing; + id _delegate; + id _itemToShare; + WebArchive *_webArchiveForSharing; + struct CGRect _frameOfItemToShare; +} + ++ (id)webResourcesForAttachments:(id)arg1 urls:(id)arg2; +@property(retain, nonatomic) WebArchive *webArchiveForSharing; // @synthesize webArchiveForSharing=_webArchiveForSharing; +@property(nonatomic) BOOL isForURLSharing; // @synthesize isForURLSharing=_isForURLSharing; +@property(nonatomic) struct CGRect frameOfItemToShare; // @synthesize frameOfItemToShare=_frameOfItemToShare; +@property(retain, nonatomic) id itemToShare; // @synthesize itemToShare=_itemToShare; +@property id parentController; // @synthesize parentController=_parentController; +@property(readonly) MFWebMessageDocument *document; // @synthesize document=_document; +@property id delegate; // @synthesize delegate=_delegate; +- (id)sharingService:(id)arg1 sourceWindowForShareItems:(id)arg2 sharingContentScope:(long long *)arg3; +- (id)sharingService:(id)arg1 transitionImageForShareItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)sharingService:(id)arg1 sourceFrameOnScreenForShareItem:(id)arg2; +- (id)sharingServicePicker:(id)arg1 delegateForSharingService:(id)arg2; +- (void)sharingService:(id)arg1 didShareItems:(id)arg2; +- (id)sharingServicePicker:(id)arg1 sharingServicesForItems:(id)arg2 proposedSharingServices:(id)arg3; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)_openLinkBehind:(id)arg1; +- (void)_openLink:(id)arg1; +- (void)setMainFrameDocumentView:(id)arg1; +- (id)mainFrameDocumentView; +- (void)adjustFontSizeBy:(float)arg1; +- (void)dealloc; +- (void)stopLoading; +- (void)webView:(id)arg1 didFirstLayoutInFrame:(id)arg2; +- (BOOL)hasFinishedFirstLayout; +- (BOOL)hasFinishedLoading; +- (void)documentResized; +- (void)setSender:(id)arg1; +@property(retain) WebView *webView; +- (void)setDocument:(id)arg1; +- (id)init; +- (id)initWithDocument:(id)arg1; +- (void)download:(id)arg1 decideDestinationWithSuggestedFilename:(id)arg2; +- (id)webView:(id)arg1 contextMenuItemsForElement:(id)arg2 defaultMenuItems:(id)arg3; +- (id)webView:(id)arg1 plugInViewWithArguments:(id)arg2; +- (unsigned long long)webView:(id)arg1 dragDestinationActionMaskForDraggingInfo:(id)arg2; +- (void)webView:(id)arg1 didFailProvisionalLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didCommitLoadForFrame:(id)arg2; +- (void)webView:(id)arg1 didStartProvisionalLoadForFrame:(id)arg2; +- (id)webView:(id)arg1 resource:(id)arg2 willSendRequest:(id)arg3 redirectResponse:(id)arg4 fromDataSource:(id)arg5; +- (void)webView:(id)arg1 resource:(id)arg2 didFinishLoadingFromDataSource:(id)arg3; +- (id)webView:(id)arg1 identifierForInitialRequest:(id)arg2 fromDataSource:(id)arg3; +- (void)webView:(id)arg1 decidePolicyForNewWindowAction:(id)arg2 request:(id)arg3 newFrameName:(id)arg4 decisionListener:(id)arg5; +- (void)webView:(id)arg1 decidePolicyForNavigationAction:(id)arg2 request:(id)arg3 frame:(id)arg4 decisionListener:(id)arg5; +- (BOOL)considerBaseURLsInternal; +- (BOOL)_isInternalURL:(id)arg1; +- (void)adjustSpellingAndGrammarMenuItems:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/WebPreferences-MessageDefaultsSupport.h b/MailHeaders/Mavericks_10.9.5/MailUI/WebPreferences-MessageDefaultsSupport.h new file mode 100644 index 00000000..1b7f1dcb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/WebPreferences-MessageDefaultsSupport.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebPreferences.h" + +@interface WebPreferences (MessageDefaultsSupport) ++ (id)richTextComposeWebPreferences; ++ (id)plainTextComposeWebPreferences; ++ (id)unrenderedMailWebPreferences; ++ (id)richTextMailWebPreferences; ++ (id)plainTextMailWebPreferences; +- (void)_configureFixedFont:(id)arg1; +- (void)_configureCommonRichTextPreferences; +- (void)_configureCommonPlainTextPreferences; +- (void)_configureCommonPreferences; +- (void)_configureComposeRichPreferences:(id)arg1; +- (void)_configureComposePlainTextPreferences:(id)arg1; +- (void)_configureRichTextMessagePreferences:(id)arg1; +- (void)_configurePlainTextMessagePreferences:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/WebView-MailExtras.h b/MailHeaders/Mavericks_10.9.5/MailUI/WebView-MailExtras.h new file mode 100644 index 00000000..036f8804 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/WebView-MailExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebView.h" + +@interface WebView (MailExtras) +- (void)setAllDelegates:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/WebViewEditor.h b/MailHeaders/Mavericks_10.9.5/MailUI/WebViewEditor.h new file mode 100644 index 00000000..bbaab42a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/WebViewEditor.h @@ -0,0 +1,132 @@ +/* + * 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 "EditingMessageWebViewDelegate.h" +#import "NSUserInterfaceValidations.h" + +@class ComposeBackEnd, DOMHTMLAnchorElement, DocumentEditor, EditableWebMessageDocument, EditingMessageWebView, EditingWebMessageController, HyperlinkEditor, NSArray, NSDictionary, NSMutableSet, WebFrame; + +@interface WebViewEditor : NSObject +{ + EditingMessageWebView *_webView; + ComposeBackEnd *_backEnd; + DocumentEditor *_documentEditor; + HyperlinkEditor *_hyperlinkEditor; + EditingWebMessageController *_messageController; + WebFrame *_frameAllowedToLoadContent; + NSArray *_attachmentsForContextualMenu; + NSMutableSet *_largeFilesAddedWhileEditing; + BOOL _finalSpellCheckingIsInProgress; + BOOL _containsRichText; + BOOL _containsRichTextFlagIsValid; + BOOL _needToCheckRichnessInRange; + DOMHTMLAnchorElement *_linkWhoseTextIsBeingEdited; + NSDictionary *_infoForRichnessTest; +} + +@property(readonly) ComposeBackEnd *composeBackEnd; // @synthesize composeBackEnd=_backEnd; +@property(retain) NSDictionary *infoForRichnessTest; // @synthesize infoForRichnessTest=_infoForRichnessTest; +- (void)webViewDidEndLiveResize:(id)arg1; +- (void)webViewWillStartLiveResize:(id)arg1; +- (void)largeFileAdded:(id)arg1; +- (id)largeFilesAddedWhileEditing; +- (void)saveChangedDocument:(id)arg1; +- (void)saveDocument:(id)arg1; +- (void)pasteAsMarkup; +- (void)replaceSelectionWithFragment:(id)arg1; +- (BOOL)_isOkayToInsertAttachment:(id)arg1; +- (void)insertAttributedStringOfAttachments:(id)arg1 allAttachmentsAreOkay:(BOOL)arg2; +- (void)addAttachmentsForFiles:(id)arg1; +- (void)redisplayChangedAttachment:(id)arg1; +- (void)viewAttachments:(id)arg1 inLine:(BOOL)arg2; +- (void)removeAttachments:(id)arg1; +- (id)directoryForAttachment:(id)arg1; +- (id)selectedAttachmentNode; +- (id)attachmentForEvent:(id)arg1; +- (id)selectedAttachments; +- (void)replaceRiskyAttachmentsWithLinks; +- (BOOL)removeAttachmentsLeavingPlaceholder:(BOOL)arg1; +- (void)webView:(id)arg1 willRemoveMailAttachment:(id)arg2; +- (void)webView:(id)arg1 didAddMailAttachment:(id)arg2; +- (void)webViewWillInsertContentsOfWebpage:(id)arg1; +- (BOOL)webViewShouldReplaceSelectionWithContentsOfWebpage:(id)arg1; +- (void)webViewMainDocumentBaseURIDidChange:(id)arg1; +- (BOOL)webView:(id)arg1 shouldInsertAttachments:(id)arg2 context:(id)arg3; +- (id)webView:(id)arg1 shouldReplaceSelectionWithWebArchive:(id)arg2 givenAction:(int)arg3; +- (id)_validRangeFromSelection:(id)arg1; +- (BOOL)webView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (void)webViewDidChange:(id)arg1; +- (BOOL)webView:(id)arg1 shouldInsertNode:(id)arg2 replacingDOMRange:(id)arg3 givenAction:(int)arg4; +- (BOOL)webView:(id)arg1 shouldInsertText:(id)arg2 replacingDOMRange:(id)arg3 givenAction:(int)arg4; +- (void)appendAttributedString:(id)arg1 toDocument:(id)arg2 asQuote:(BOOL)arg3; +- (void)appendParsedMessage:(id)arg1 toDocument:(id)arg2 asQuote:(BOOL)arg3; +- (void)appendFragment:(id)arg1 toDocument:(id)arg2 asQuote:(BOOL)arg3; +@property(readonly) BOOL isSelectionEditable; +- (void)beginConvertToRichTextAlert:(id)arg1; +- (id)alertForConvertingToRichText; +- (BOOL)webView:(id)arg1 shouldApplyStyle:(id)arg2 toElementsInDOMRange:(id)arg3; +- (void)webViewDidInsertRichText:(id)arg1; +- (BOOL)webView:(id)arg1 shouldDeleteDOMRange:(id)arg2; +- (void)_checkRichnessForEditedRange:(id)arg1; +- (void)changeComposeModeInBackEndAndView:(long long)arg1; +- (void)invalidateRichTextCache; +@property BOOL containsRichText; +@property BOOL allowsRichText; +- (void)removeAllFormattingFromWebView; +- (BOOL)webView:(id)arg1 canInsertFromPasteboard:(id)arg2 forDrag:(BOOL)arg3; +- (BOOL)webView:(id)arg1 shouldShowDeleteInterfaceForElement:(id)arg2; +- (void)setFloat:(id)arg1 ofNode:(id)arg2 inView:(id)arg3 undoTitle:(id)arg4; +- (void)_setFloat:(id)arg1 ofNode:(id)arg2 inView:(id)arg3 undoTitle:(id)arg4; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (void)insertListWithNumbers:(BOOL)arg1 undoTitle:(id)arg2; +- (void)insertBulletedList:(id)arg1; +- (void)insertNumberedList:(id)arg1; +- (BOOL)_selectionIsInEmptyListItem; +- (BOOL)selectionIsInListTypes:(id)arg1; +- (BOOL)selectionIsInList; +- (void)changeIndentationIfAllowed:(long long)arg1; +- (void)decreaseIndentation; +- (void)increaseIndentation; +@property(readonly) BOOL allowQuoting; +- (void)insertList:(id)arg1; +- (void)webViewDidChangeSelection:(id)arg1; +- (void)removeSelectedLink; +- (void)editLink; +- (void)editLink:(id)arg1; +- (void)_editLink; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)updateIgnoredWordsForHeader:(id)arg1; +- (BOOL)finalSpellCheckingIsInProgress; +- (void)setFinalSpellCheckingIsInProgress:(BOOL)arg1; +- (void)finalSpellCheckCompleted:(id)arg1; +- (void)endFinalSpellCheck; +- (BOOL)startFinalSpellCheck; +- (void)setCheckGrammarWithSpelling:(BOOL)arg1; +- (void)setInlineSpellCheckingEnabled:(BOOL)arg1; +- (id)webView:(id)arg1 resource:(id)arg2 willSendRequest:(id)arg3 redirectResponse:(id)arg4 fromDataSource:(id)arg5; +- (void)webView:(id)arg1 decidePolicyForNavigationAction:(id)arg2 request:(id)arg3 frame:(id)arg4 decisionListener:(id)arg5; +- (void)setFrameAllowedToLoadContent:(id)arg1; +- (void)setMessageController:(id)arg1; +@property(readonly) EditableWebMessageDocument *document; +- (void)setBackEnd:(id)arg1; +- (id)documentEditor; +@property(readonly) BOOL useDesignMode; +- (id)webView; +- (void)close; +- (void)setUp; +- (void)earlySetUp; +- (void)dealloc; +- (void)awakeFromNib; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/WebViewLoadOperation.h b/MailHeaders/Mavericks_10.9.5/MailUI/WebViewLoadOperation.h new file mode 100644 index 00000000..af558721 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/WebViewLoadOperation.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOperation.h" + +@class NSData, NSInvocation, NSURLRequest, WebView; + +@interface WebViewLoadOperation : NSOperation +{ + WebView *_webView; + NSData *_data; + NSURLRequest *_urlRequest; + NSInvocation *_loadInvocation; + NSInvocation *_didLoadInvocation; + BOOL _isExecuting; + BOOL _isFinished; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +- (void)_webViewDidLoad:(id)arg1; +- (void)_end; +- (void)cancel; +- (void)main; +- (void)start; +- (BOOL)isFinished; +- (void)_setIsExecuting:(BOOL)arg1; +- (BOOL)isExecuting; +- (BOOL)isConcurrent; +- (id)description; +- (void)dealloc; +- (id)init; +- (void)_webViewLoadOperationCommonInitWithWebView:(id)arg1; +- (id)initWithWebView:(id)arg1 loadInvocation:(id)arg2 didLoadInvocation:(id)arg3; +- (id)initWithWebView:(id)arg1 loadInvocation:(id)arg2; +- (id)initWithWebView:(id)arg1 urlRequest:(id)arg2; +- (id)initWithWebView:(id)arg1 data:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/WindowTransformAnimation.h b/MailHeaders/Mavericks_10.9.5/MailUI/WindowTransformAnimation.h new file mode 100644 index 00000000..08e0f253 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/WindowTransformAnimation.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAnimation.h" + +@class FullScreenModalCapableWindow, ModalDimmingWindow; + +@interface WindowTransformAnimation : NSAnimation +{ + FullScreenModalCapableWindow *_window; + ModalDimmingWindow *_dimmingWindow; + long long _dimmingFade; + struct CGPoint _anchorPoint; + double _maxScreenPosition; + BOOL _cancelled; + long long _animationType; +} + ++ (id)windowTransformAnimationWithWindow:(id)arg1 dimmingWindow:(id)arg2 type:(long long)arg3; +@property BOOL cancelled; // @synthesize cancelled=_cancelled; +@property(readonly) long long animationType; // @synthesize animationType=_animationType; +- (void)dealloc; +- (void)setCurrentProgress:(float)arg1; +- (void)cancelAnimation; +- (void)startAnimation; +- (void)setWindowMagnificationForProgress:(double)arg1 anchorPoint:(struct CGPoint)arg2; +- (void)setWindowFlyInTranslationProgress:(double)arg1; +- (unsigned long long)_animationCurveForAnimationType:(long long)arg1; +- (double)_animationDurationForAnimationType:(long long)arg1; +- (id)initWithWindow:(id)arg1 dimmingWindow:(id)arg2 type:(long long)arg3; +- (id)initWithDuration:(double)arg1 animationCurve:(unsigned long long)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_AccountDisplayCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/_AccountDisplayCell.h new file mode 100644 index 00000000..5e413ed9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_AccountDisplayCell.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@class AccountPreferences, MFMailAccount, NSImageCell; + +@interface _AccountDisplayCell : NSTextFieldCell +{ + AccountPreferences *_accountPreferences; + NSTextFieldCell *_descriptionTextCell; + NSTextFieldCell *_activeTextCell; + NSImageCell *_imageCell; + MFMailAccount *_account; +} + +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)willBeDisplayed; +- (BOOL)trackMouse:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3 untilMouseUp:(BOOL)arg4; +- (struct CGRect)expansionFrameWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)setMailAccount:(id)arg1; +- (void)setAccountPreferences:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (void)_accountDisplayCellCommonInitWithAccountPreferences:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initTextCell:(id)arg1; +- (id)initImageCell:(id)arg1; +- (id)initWithAccountPreferences:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_AllSignaturesAccount.h b/MailHeaders/Mavericks_10.9.5/MailUI/_AllSignaturesAccount.h new file mode 100644 index 00000000..508b310f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_AllSignaturesAccount.h @@ -0,0 +1,17 @@ +/* + * 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" + +@interface _AllSignaturesAccount : NSObject +{ +} + +- (id)displayName; +- (id)uniqueId; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_AttachmentQueueEntry.h b/MailHeaders/Mavericks_10.9.5/MailUI/_AttachmentQueueEntry.h new file mode 100644 index 00000000..74493225 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_AttachmentQueueEntry.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class MCAttachment, MCMimeBody, MFAttachmentViewController, NSString, NSURL, NSWindow; + +@interface _AttachmentQueueEntry : NSObject +{ + MFAttachmentViewController *_attachmentController; + MCAttachment *_attachment; + NSURL *_opSpecific_applicationURL; + NSString *_opSpecific_savePath; + int _reason; + NSWindow *_window; + MCMimeBody *_body; + NSString *_attachDir; +} + ++ (id)newWithWindow:(id)arg1 attachment:(id)arg2 reason:(int)arg3 opSpecific:(id)arg4 attachmentDirectory:(id)arg5; ++ (id)newWithWindow:(id)arg1 attachmentController:(id)arg2 reason:(int)arg3 opSpecific:(id)arg4 attachmentDirectory:(id)arg5; +@property(retain, nonatomic) NSString *attachDir; // @synthesize attachDir=_attachDir; +@property(nonatomic) int reason; // @synthesize reason=_reason; +@property(retain, nonatomic) MCMimeBody *body; // @synthesize body=_body; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +- (void)dealloc; +- (BOOL)isEqual:(id)arg1; +@property(retain, nonatomic) MFAttachmentViewController *attachmentController; +@property(retain, nonatomic) MCAttachment *attachment; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_BorderlessButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/_BorderlessButton.h new file mode 100644 index 00000000..ca4023dc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_BorderlessButton.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@class NSImage; + +@interface _BorderlessButton : NSButton +{ + NSImage *_activeImage; + NSImage *_inactiveImage; +} + +@property(retain) NSImage *inactiveImage; // @synthesize inactiveImage=_inactiveImage; +@property(retain) NSImage *activeImage; // @synthesize activeImage=_activeImage; +- (void)setEnabled:(BOOL)arg1; +- (void)dealloc; +- (BOOL)isOpaque; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_CellFindStore.h b/MailHeaders/Mavericks_10.9.5/MailUI/_CellFindStore.h new file mode 100644 index 00000000..5ac2dd72 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_CellFindStore.h @@ -0,0 +1,28 @@ +/* + * 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" + +@class NSArray; + +@interface _CellFindStore : NSObject +{ + BOOL _matchesAreValid; + NSArray *_matches; + struct CGRect _visibleRectInCell; + struct CGRect _cellRectInContainingView; + struct CGRect _visibleRectInContainingView; +} + +@property(nonatomic) struct CGRect visibleRectInContainingView; // @synthesize visibleRectInContainingView=_visibleRectInContainingView; +@property(nonatomic) struct CGRect cellRectInContainingView; // @synthesize cellRectInContainingView=_cellRectInContainingView; +@property(nonatomic) struct CGRect visibleRectInCell; // @synthesize visibleRectInCell=_visibleRectInCell; +@property(nonatomic) BOOL matchesAreValid; // @synthesize matchesAreValid=_matchesAreValid; +@property(retain, nonatomic) NSArray *matches; // @synthesize matches=_matches; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_ComposeAttachmentEnumerator.h b/MailHeaders/Mavericks_10.9.5/MailUI/_ComposeAttachmentEnumerator.h new file mode 100644 index 00000000..54601872 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_ComposeAttachmentEnumerator.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@class DOMNode, EditableWebMessageDocument; + +@interface _ComposeAttachmentEnumerator : NSEnumerator +{ + unsigned int _acceptDeleted:1; + unsigned int _acceptNonDeleted:1; + DOMNode *_currentNode; + DOMNode *_containerNode; + DOMNode *_endNode; + EditableWebMessageDocument *_document; +} + +@property(retain) EditableWebMessageDocument *document; // @synthesize document=_document; +@property(retain) DOMNode *endNode; // @synthesize endNode=_endNode; +@property(retain) DOMNode *containerNode; // @synthesize containerNode=_containerNode; +@property(retain) DOMNode *currentNode; // @synthesize currentNode=_currentNode; +- (id)nextObject; +- (short)acceptNode:(id)arg1; +- (void)dealloc; +- (id)initWithDocument:(id)arg1 options:(int)arg2 range:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_ConversationFindMatch.h b/MailHeaders/Mavericks_10.9.5/MailUI/_ConversationFindMatch.h new file mode 100644 index 00000000..81985d56 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_ConversationFindMatch.h @@ -0,0 +1,32 @@ +/* + * 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 "NSTextFinderAsynchronousDocumentFindMatch.h" + +@class ConversationView, ConversationViewFindController, NSArray; + +@interface _ConversationFindMatch : NSObject +{ + ConversationView *_containingView; + id _backingFindMatch; + unsigned long long _cellIndex; + NSArray *_textRectsInCellView; + ConversationViewFindController *_findController; +} + +@property(retain, nonatomic) ConversationViewFindController *findController; // @synthesize findController=_findController; +@property(retain, nonatomic) NSArray *textRectsInCellView; // @synthesize textRectsInCellView=_textRectsInCellView; +@property(nonatomic) unsigned long long cellIndex; // @synthesize cellIndex=_cellIndex; +@property(retain, nonatomic) id backingFindMatch; // @synthesize backingFindMatch=_backingFindMatch; +@property(retain, nonatomic) ConversationView *containingView; // @synthesize containingView=_containingView; +- (void)generateTextImage:(id)arg1; +@property(readonly, nonatomic) NSArray *textRects; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_DeleteMailboxTransfer.h b/MailHeaders/Mavericks_10.9.5/MailUI/_DeleteMailboxTransfer.h new file mode 100644 index 00000000..52fbb26d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_DeleteMailboxTransfer.h @@ -0,0 +1,24 @@ +/* + * 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 "MessageDeletionTransfer.h" + +@class MCMonitoredInvocation; + +@interface _DeleteMailboxTransfer : NSObject +{ + MCMonitoredInvocation *_invocation; +} + +@property(retain, nonatomic) MCMonitoredInvocation *invocation; // @synthesize invocation=_invocation; +- (void)beginTransfer; +- (BOOL)canBeginTransfer; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_EmptyFavoritesMessageView.h b/MailHeaders/Mavericks_10.9.5/MailUI/_EmptyFavoritesMessageView.h new file mode 100644 index 00000000..b20a4d13 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_EmptyFavoritesMessageView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface _EmptyFavoritesMessageView : NSView +{ +} + +- (BOOL)isOpaque; +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_ExportJob.h b/MailHeaders/Mavericks_10.9.5/MailUI/_ExportJob.h new file mode 100644 index 00000000..8264b3ed --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_ExportJob.h @@ -0,0 +1,33 @@ +/* + * 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" + +@class NSArray, NSMutableArray, NSPrintInfo, NSString; + +@interface _ExportJob : NSObject +{ + BOOL _shouldCollapseRedundantText; + NSArray *_conversationMembers; + NSMutableArray *_printingHTMLs; + NSMutableArray *_attachments; + NSString *_jobTitle; + NSPrintInfo *_printInfo; + unsigned long long _sequenceNumber; +} + +@property(nonatomic) unsigned long long sequenceNumber; // @synthesize sequenceNumber=_sequenceNumber; +@property(retain, nonatomic) NSPrintInfo *printInfo; // @synthesize printInfo=_printInfo; +@property(retain, nonatomic) NSString *jobTitle; // @synthesize jobTitle=_jobTitle; +@property(retain, nonatomic) NSMutableArray *attachments; // @synthesize attachments=_attachments; +@property(retain, nonatomic) NSMutableArray *printingHTMLs; // @synthesize printingHTMLs=_printingHTMLs; +@property(nonatomic) BOOL shouldCollapseRedundantText; // @synthesize shouldCollapseRedundantText=_shouldCollapseRedundantText; +@property(retain, nonatomic) NSArray *conversationMembers; // @synthesize conversationMembers=_conversationMembers; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_FavoriteButtonCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/_FavoriteButtonCell.h new file mode 100644 index 00000000..f927b5eb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_FavoriteButtonCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MailBarContainerButtonCell.h" + +@interface _FavoriteButtonCell : MailBarContainerButtonCell +{ +} + +- (BOOL)_shouldDrawBezel; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_FilteredListInfo.h b/MailHeaders/Mavericks_10.9.5/MailUI/_FilteredListInfo.h new file mode 100644 index 00000000..17469a91 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_FilteredListInfo.h @@ -0,0 +1,39 @@ +/* + * 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" + +@class NSArray, NSDictionary, NSMutableArray, NSMutableDictionary, NSMutableSet; + +@interface _FilteredListInfo : NSObject +{ + int _taskType; + NSMutableArray *_filteredMessages; + NSArray *_changedMessages; + NSMutableSet *_filteredThreads; + NSArray *_changedThreads; + NSDictionary *_changedFlags; + NSArray *_messagesFilteredIn; + NSArray *_messagesFilteredOut; + NSMutableDictionary *_messageSortValues; + NSDictionary *_snippetsForMessages; +} + ++ (id)infoForType:(int)arg1; +@property int taskType; // @synthesize taskType=_taskType; +@property(retain) NSDictionary *snippetsForMessages; // @synthesize snippetsForMessages=_snippetsForMessages; +@property(retain) NSMutableDictionary *messageSortValues; // @synthesize messageSortValues=_messageSortValues; +@property(retain) NSArray *messagesFilteredOut; // @synthesize messagesFilteredOut=_messagesFilteredOut; +@property(retain) NSArray *messagesFilteredIn; // @synthesize messagesFilteredIn=_messagesFilteredIn; +@property(retain) NSDictionary *changedFlags; // @synthesize changedFlags=_changedFlags; +@property(retain) NSArray *changedThreads; // @synthesize changedThreads=_changedThreads; +@property(retain) NSMutableSet *filteredThreads; // @synthesize filteredThreads=_filteredThreads; +@property(retain) NSArray *changedMessages; // @synthesize changedMessages=_changedMessages; +@property(retain) NSMutableArray *filteredMessages; // @synthesize filteredMessages=_filteredMessages; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_IMAPMailboxEntry.h b/MailHeaders/Mavericks_10.9.5/MailUI/_IMAPMailboxEntry.h new file mode 100644 index 00000000..75f45776 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_IMAPMailboxEntry.h @@ -0,0 +1,41 @@ +/* + * 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" + +@class IMAPMailboxes, MFMailbox, NSArray, NSString; + +@interface _IMAPMailboxEntry : NSObject +{ + BOOL _subscribed; + BOOL _isNoSelect; + BOOL _hasEnabledDescendants; + NSString *_name; + NSString *_path; + NSArray *_children; + NSArray *_filteredChildren; + MFMailbox *_mailbox; + _IMAPMailboxEntry *_parent; + IMAPMailboxes *_controller; +} + +@property(nonatomic) IMAPMailboxes *controller; // @synthesize controller=_controller; +@property(retain, nonatomic) _IMAPMailboxEntry *parent; // @synthesize parent=_parent; +@property(nonatomic) BOOL hasEnabledDescendants; // @synthesize hasEnabledDescendants=_hasEnabledDescendants; +@property(nonatomic) BOOL isNoSelect; // @synthesize isNoSelect=_isNoSelect; +@property(retain, nonatomic) MFMailbox *mailbox; // @synthesize mailbox=_mailbox; +@property(retain, nonatomic) NSArray *children; // @synthesize children=_children; +@property(nonatomic) BOOL subscribed; // @synthesize subscribed=_subscribed; +@property(retain, nonatomic) NSString *path; // @synthesize path=_path; +@property(retain, nonatomic) NSString *name; // @synthesize name=_name; +- (BOOL)isValidForCurrentFilter; +- (BOOL)isPathValidForCurrentFilter; +@property(copy, nonatomic) NSArray *filteredChildren; // @synthesize filteredChildren=_filteredChildren; +- (long long)compare:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMAccountMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMAccountMailbox.h new file mode 100644 index 00000000..48f46464 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMAccountMailbox.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMAccountMailbox : MTMSpecialMailbox +{ +} + +- (id)identifier; +- (id)subRestoreString; +- (id)restoreString; +- (id)recoverDisplayName; +- (id)displayName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMArchiveMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMArchiveMailbox.h new file mode 100644 index 00000000..4b7ca979 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMArchiveMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMMetaMailbox.h" + +@interface _MTMArchiveMailbox : _MTMMetaMailbox +{ +} + +- (id)defaultMessageColumnAttributesKey; +- (id)recoverDisplayName; +- (id)displayName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMBackupMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMBackupMailbox.h new file mode 100644 index 00000000..f3f4b644 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMBackupMailbox.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMBackupMailbox : MTMSpecialMailbox +{ +} + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMDisabledSubMetaMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMDisabledSubMetaMailbox.h new file mode 100644 index 00000000..2fa7e861 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMDisabledSubMetaMailbox.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMSubMetaMailbox.h" + +@interface _MTMDisabledSubMetaMailbox : _MTMSubMetaMailbox +{ +} + +- (BOOL)enabled; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMDraftsMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMDraftsMailbox.h new file mode 100644 index 00000000..13568253 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMDraftsMailbox.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMStoredMetaMailbox.h" + +@interface _MTMDraftsMailbox : _MTMStoredMetaMailbox +{ +} + +- (id)_severalMessagesString; +- (id)_oneMesageString; +- (id)defaultMessageColumnAttributesKey; +- (id)messageColumnConfiguration; +- (id)restoreMode; +- (id)recoverDisplayName; +- (id)displayName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMHeaderCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMHeaderCell.h new file mode 100644 index 00000000..f92b6cd1 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMHeaderCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableHeaderCell.h" + +@interface _MTMHeaderCell : NSTableHeaderCell +{ +} + +- (struct CGRect)sortIndicatorRectForBounds:(struct CGRect)arg1; +- (struct CGRect)drawingRectForBounds:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMInboxMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMInboxMailbox.h new file mode 100644 index 00000000..617f15c4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMInboxMailbox.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMMetaMailbox.h" + +@interface _MTMInboxMailbox : _MTMMetaMailbox +{ +} + +- (id)restoreString; +- (id)recoverDisplayName; +- (id)defaultMessageColumnAttributesKey; +- (id)displayName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMJunkMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMJunkMailbox.h new file mode 100644 index 00000000..41d6b0a2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMJunkMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMJunkMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)enabled; +- (id)defaultMessageColumnAttributesKey; +- (id)displayName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMMetaMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMMetaMailbox.h new file mode 100644 index 00000000..0ac3c69d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMMetaMailbox.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMMetaMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)_shouldSortMailboxes; +- (id)subRestoreString; +- (id)restoreString; +- (id)paths; +- (void)loadNextMessagesWithControllingMailbox:(id)arg1 andFetcher:(id)arg2; +- (BOOL)needsToLoadMessagesInBackground; +- (void)_loadMessages; +- (void)discardMailbox; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_updateMessages:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMRootMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMRootMailbox.h new file mode 100644 index 00000000..9fb1d56e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMRootMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMRootMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)_shouldSortMailboxes; +- (id)subMailboxes; +- (id)messages; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMSectionMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMSectionMailbox.h new file mode 100644 index 00000000..d5b3a14e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMSectionMailbox.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMSectionMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)canCollapse; +- (id)displayName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMSentMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMSentMailbox.h new file mode 100644 index 00000000..654b0cae --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMSentMailbox.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMMetaMailbox.h" + +@interface _MTMSentMailbox : _MTMMetaMailbox +{ +} + +- (id)defaultMessageColumnAttributesKey; +- (id)messageColumnConfiguration; +- (id)recoverDisplayName; +- (id)displayName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMSmartMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMSmartMailbox.h new file mode 100644 index 00000000..6fbcd9cc --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMSmartMailbox.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMSmartMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)isSmartMailbox; +- (BOOL)enabled; +- (id)messageColumnConfiguration; +- (id)identifier; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMStoredMetaMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMStoredMetaMailbox.h new file mode 100644 index 00000000..774a038e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMStoredMetaMailbox.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMStoredMetaMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)_shouldSortMailboxes; +- (id)restoreString; +- (id)paths; +- (void)loadNextMessagesWithControllingMailbox:(id)arg1 andFetcher:(id)arg2; +- (void)_updateMessages:(id)arg1; +- (void)_loadMessages; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMStoredSubMetaMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMStoredSubMetaMailbox.h new file mode 100644 index 00000000..fa37cc82 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMStoredSubMetaMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMSubMetaMailbox.h" + +@interface _MTMStoredSubMetaMailbox : _MTMSubMetaMailbox +{ +} + +- (void)loadNextMessagesWithControllingMailbox:(id)arg1 andFetcher:(id)arg2; +- (void)_updateMessages:(id)arg1; +- (void)_loadMessages; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMSubMetaMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMSubMetaMailbox.h new file mode 100644 index 00000000..597db683 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMSubMetaMailbox.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMSubMetaMailbox : MTMSpecialMailbox +{ +} + +- (id)messageListFont; +- (id)messageListColor; +- (id)_severalMessagesString; +- (id)_oneMesageString; +- (id)displayNameInMessageList; +- (id)displayNameForList; +- (id)defaultMessageColumnAttributesKey; +- (id)messageColumnConfiguration; +- (id)restoreString; +- (id)restoreMode; +- (id)identifier; +- (id)recoverDisplayName; +- (id)displayName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MTMTrashMailbox.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMTrashMailbox.h new file mode 100644 index 00000000..8c16a4f5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MTMTrashMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMMetaMailbox.h" + +@interface _MTMTrashMailbox : _MTMMetaMailbox +{ +} + +- (id)defaultMessageColumnAttributesKey; +- (id)recoverDisplayName; +- (id)displayName; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MVAlertInfo.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MVAlertInfo.h new file mode 100644 index 00000000..c6f91856 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MVAlertInfo.h @@ -0,0 +1,27 @@ +/* + * 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" + +@class MCError, NSString; + +@interface _MVAlertInfo : NSObject +{ + MCError *_error; + NSString *_firstButtonTitle; + NSString *_secondButtonTitle; + NSString *_thirdButtonTitle; + long long _returnCode; +} + +@property(nonatomic) long long returnCode; // @synthesize returnCode=_returnCode; +@property(nonatomic) NSString *thirdButtonTitle; // @synthesize thirdButtonTitle=_thirdButtonTitle; +@property(nonatomic) NSString *secondButtonTitle; // @synthesize secondButtonTitle=_secondButtonTitle; +@property(nonatomic) NSString *firstButtonTitle; // @synthesize firstButtonTitle=_firstButtonTitle; +@property(nonatomic) MCError *error; // @synthesize error=_error; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MailInspectorBarSeparatorView.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MailInspectorBarSeparatorView.h new file mode 100644 index 00000000..4cc60333 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MailInspectorBarSeparatorView.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface _MailInspectorBarSeparatorView : NSView +{ +} + +- (void)drawRect:(struct CGRect)arg1; +- (BOOL)isFlipped; +- (BOOL)isOpaque; +- (id)initForContainerView:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MailNSFontManager.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MailNSFontManager.h new file mode 100644 index 00000000..b5a4af8f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MailNSFontManager.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFontManager.h" + +@interface _MailNSFontManager : NSFontManager +{ + double _fontSize; + BOOL _isMultiple; +} + +- (id)convertFont:(id)arg1; +- (unsigned long long)currentFontAction; +- (void)modifyFontSize:(double)arg1; +- (void)setSelectedFont:(id)arg1 isMultiple:(BOOL)arg2; +- (void)postSelectedFontChangeNotification; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MailTableHeaderView.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MailTableHeaderView.h new file mode 100644 index 00000000..c438b039 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MailTableHeaderView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableHeaderView.h" + +@interface _MailTableHeaderView : NSTableHeaderView +{ + BOOL _didLazyLoadMenu; +} + +- (id)menu; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MailToolbarSpace.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MailToolbarSpace.h new file mode 100644 index 00000000..5c7f4e52 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MailToolbarSpace.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class MailToolbarSpaceItemWithPin; + +@interface _MailToolbarSpace : NSView +{ + MailToolbarSpaceItemWithPin *_spaceItem; + BOOL _inPalette; +} + +- (void)setInPalette:(BOOL)arg1; +- (BOOL)inPalette; +- (void)drawRect:(struct CGRect)arg1; +- (id)initWithSize:(struct CGSize)arg1 forSpaceItem:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MailboxPlaceholder.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MailboxPlaceholder.h new file mode 100644 index 00000000..31cbb6bd --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MailboxPlaceholder.h @@ -0,0 +1,44 @@ +/* + * 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 "MFUIMailbox.h" +#import "NSCopying.h" + +@class NSString; + +@interface _MailboxPlaceholder : NSObject +{ + BOOL _isContainer; + int _type; + NSString *_persistentIdentifier; + NSString *_displayName; + NSString *_accountURLString; +} + +@property(nonatomic) BOOL isContainer; // @synthesize isContainer=_isContainer; +@property int type; // @synthesize type=_type; +@property(retain, nonatomic) NSString *accountURLString; // @synthesize accountURLString=_accountURLString; +@property(retain, nonatomic) NSString *displayName; // @synthesize displayName=_displayName; +@property(retain, nonatomic) NSString *persistentIdentifier; // @synthesize persistentIdentifier=_persistentIdentifier; +- (id)extendedDisplayName; +- (unsigned long long)displayCount; +- (id)description; +- (void)dealloc; +- (BOOL)isPlaceholder; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (id)children; +- (unsigned long long)numberOfChildren; +- (BOOL)hasChildren; +- (BOOL)isStore; +- (BOOL)isSmartMailbox; +- (id)account; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)initWithPersistentIdentifier:(id)arg1 name:(id)arg2 accountURLString:(id)arg3 type:(int)arg4 isContainer:(BOOL)arg5; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MessageThreadingData.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MessageThreadingData.h new file mode 100644 index 00000000..44cc0ced --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MessageThreadingData.h @@ -0,0 +1,25 @@ +/* + * 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" + +@class MCMessage, MFMessageThread, NSMutableSet; + +@interface _MessageThreadingData : NSObject +{ + MCMessage *_parent; + NSMutableSet *_replies; + MFMessageThread *_thread; +} + +@property(retain, nonatomic) MFMessageThread *thread; // @synthesize thread=_thread; +@property(retain, nonatomic) NSMutableSet *replies; // @synthesize replies=_replies; +@property(retain, nonatomic) MCMessage *parent; // @synthesize parent=_parent; +- (void)dealloc; +- (id)description; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MessageViewerLazyPopUpButtonCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MessageViewerLazyPopUpButtonCell.h new file mode 100644 index 00000000..db3f5c04 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MessageViewerLazyPopUpButtonCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButtonCell.h" + +@interface _MessageViewerLazyPopUpButtonCell : NSPopUpButtonCell +{ +} + +- (void)_drawIndicatorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)accessibilityPerformAction:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_MouseTracker.h b/MailHeaders/Mavericks_10.9.5/MailUI/_MouseTracker.h new file mode 100644 index 00000000..b469ccd6 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_MouseTracker.h @@ -0,0 +1,32 @@ +/* + * 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" + +@class NSView; + +@interface _MouseTracker : NSObject +{ + NSView *_view; + struct CGRect _trackingRect; + long long _trackingRectTag; + BOOL _mouseOver; + id _delegate; +} + +- (void)mouseMoved:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)_updateMouseIsOver; +- (BOOL)mouseOver; +- (id)view; +- (struct CGRect)trackingRect; +- (void)setDelegate:(id)arg1; +- (void)dealloc; +- (id)initWithTrackingRect:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_RoundedRectTextFieldCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/_RoundedRectTextFieldCell.h new file mode 100644 index 00000000..0ef371ab --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_RoundedRectTextFieldCell.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface _RoundedRectTextFieldCell : NSTextFieldCell +{ +} + +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)textColor; +- (id)backgroundColor; +- (BOOL)_isInSelectedRow; +- (BOOL)_isInThreadParentRow; +- (id)_parentRow; +- (id)_selectionColor; +- (id)_darkBackgroundColor; +- (id)_normalBackgroundColor; +- (id)_lightBackgroundColor; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_SidebarButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/_SidebarButton.h new file mode 100644 index 00000000..56d4f916 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_SidebarButton.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MailBarContainerButton.h" + +@interface _SidebarButton : MailBarContainerButton +{ +} + ++ (Class)cellClass; +- (unsigned long long)draggingEntered:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_SidebarButtonCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/_SidebarButtonCell.h new file mode 100644 index 00000000..fda6c6d8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_SidebarButtonCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface _SidebarButtonCell : NSButtonCell +{ +} + +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (struct CGSize)cellSize; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_SlidingView.h b/MailHeaders/Mavericks_10.9.5/MailUI/_SlidingView.h new file mode 100644 index 00000000..5cb6326c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_SlidingView.h @@ -0,0 +1,22 @@ +/* + * 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" + +@interface _SlidingView : NSObject +{ + struct CGRect _startFrame; + struct CGRect _endFrame; + double _startTime; + double _duration; +} + +- (struct CGRect)frameForTime:(double)arg1; +- (struct CGRect)endFrame; +- (id)initWithStartFrame:(struct CGRect)arg1 endFrame:(struct CGRect)arg2 duration:(double)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_SortBarButton.h b/MailHeaders/Mavericks_10.9.5/MailUI/_SortBarButton.h new file mode 100644 index 00000000..919bca48 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_SortBarButton.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface _SortBarButton : NSButton +{ +} + ++ (Class)cellClass; ++ (id)_sortBarButtonFont; +- (id)fontSmoothingBackgroundColor; +- (BOOL)shouldSetFontSmoothingBackgroundColor; +- (void)showPopUpMenu; +- (void)mouseDown:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_SortBarButtonCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/_SortBarButtonCell.h new file mode 100644 index 00000000..76904e2d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_SortBarButtonCell.h @@ -0,0 +1,48 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@class NSPopUpButtonCell; + +@interface _SortBarButtonCell : NSButtonCell +{ + NSPopUpButtonCell *_popUpCell; + BOOL _showingPopUpMenu; +} + +- (void)accessibilityPerformShowMenuAction; +- (void)accessibilityPerformAction:(id)arg1; +- (id)accessibilityActionNames; +- (id)accessibilityChildrenAttribute; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeNames; +- (void)runPopUpInView:(id)arg1; +- (void)showPopUpMenuForButton:(id)arg1; +- (struct CGRect)drawTitle:(id)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (struct CGRect)imageRectForBounds:(struct CGRect)arg1; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (struct CGSize)cellSize; +- (id)indicatorImage; +- (id)newIndicatorImageWithForegroundColor:(id)arg1 engravingColor:(id)arg2; +- (id)engravingColor; +- (id)foregroundTextColor; +- (double)titleHorizontalInset; +- (double)titleVerticalOffset; +- (double)textToImageSpace; +- (double)insetForMenuArrowImage; +- (double)insetForHighlightY; +- (double)insetForHighlightX; +- (void)dealloc; +- (void)sortBarButtonCellCommonInit; +- (id)initImageCell:(id)arg1; +- (id)initTextCell:(id)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_StationeryThumbnailCreator.h b/MailHeaders/Mavericks_10.9.5/MailUI/_StationeryThumbnailCreator.h new file mode 100644 index 00000000..15a07966 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_StationeryThumbnailCreator.h @@ -0,0 +1,38 @@ +/* + * 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 "MCActivityTarget.h" + +@class EditableWebMessageDocument, NSArray, NSBitmapImageRep, NSString, NSWindow, Stationery, WebView; + +@interface _StationeryThumbnailCreator : NSObject +{ + id _delegate; + NSArray *_stationeryPaths; + NSString *_categoryDisplayName; + long long _currentStationeryIndex; + Stationery *_currentStationery; + WebView *_webView; + NSWindow *_window; + EditableWebMessageDocument *_webMessageDocument; + NSBitmapImageRep *_snapshot; +} + +- (void)scaleSnapshotAndSendToDelegate; +- (void)takeSnapshot; +- (void)performTakeSnapshot; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)moveOnToTheNextStationery; +- (void)loadParsedMessage:(id)arg1; +- (void)createWebView; +- (void)createThumbnailsForCustomStationeriesWithPaths:(id)arg1; +- (void)setDelegate:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_TextButtonCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/_TextButtonCell.h new file mode 100644 index 00000000..c5cb8d1e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_TextButtonCell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface _TextButtonCell : NSButtonCell +{ + long long _buttonType; +} + +@property long long buttonType; // @synthesize buttonType=_buttonType; +- (void)drawBezelWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_ThreadDisclosureTextFieldCell.h b/MailHeaders/Mavericks_10.9.5/MailUI/_ThreadDisclosureTextFieldCell.h new file mode 100644 index 00000000..2efe6bce --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_ThreadDisclosureTextFieldCell.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface _ThreadDisclosureTextFieldCell : NSTextFieldCell +{ + BOOL _threadIsOpen; +} + ++ (id)_selectionColor; ++ (id)_lightBorderColor; ++ (id)_darkBorderColor; ++ (void)_recacheStaticArrowImages:(id)arg1; +@property(nonatomic) BOOL threadIsOpen; // @synthesize threadIsOpen=_threadIsOpen; +- (void)accessibilityPerformAction:(id)arg1; +- (id)accessibilityActionDescription:(id)arg1; +- (id)accessibilityActionNames; +- (BOOL)accessibilityIsAttributeSettable:(id)arg1; +- (id)accessibilityRoleAttribute; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)accessibilityAttributeNames; +- (unsigned long long)hitTestForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3; +- (void)setBackgroundStyle:(long long)arg1; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)_drawThreadControlWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (struct CGSize)cellSize; +- (struct CGRect)drawingRectForBounds:(struct CGRect)arg1; +- (void)_registerForColorChangeNotifications; +- (id)initImageCell:(id)arg1; +- (id)initTextCell:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_TransferOperation.h b/MailHeaders/Mavericks_10.9.5/MailUI/_TransferOperation.h new file mode 100644 index 00000000..bdf0443b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_TransferOperation.h @@ -0,0 +1,41 @@ +/* + * 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" + +@class MFMailbox, MFMessageStore, NSArray, NSDictionary, NSMutableArray, NSMutableDictionary; + +@interface _TransferOperation : NSObject +{ + NSMutableArray *_sourceMessages; + NSMutableArray *_documentIDs; + id _messagesForGmailLabelsToRemoveLock; + NSMutableDictionary *_messagesForGmailLabelsToRemove; + BOOL _editableDocuments; + MFMessageStore *_sourceStore; + MFMailbox *_destinationMailbox; + NSArray *_unreadSourceMessages; + NSArray *_destinationMessageIDs; +} + +@property(readonly, nonatomic) BOOL editableDocuments; // @synthesize editableDocuments=_editableDocuments; +@property(retain) NSArray *destinationMessageIDs; // @synthesize destinationMessageIDs=_destinationMessageIDs; +@property(retain) NSArray *unreadSourceMessages; // @synthesize unreadSourceMessages=_unreadSourceMessages; +@property(readonly, nonatomic) MFMailbox *destinationMailbox; // @synthesize destinationMailbox=_destinationMailbox; +@property(readonly, nonatomic) MFMessageStore *sourceStore; // @synthesize sourceStore=_sourceStore; +- (id)popMessagesForGmailLabelsToRemove; +- (void)addMessage:(id)arg1 forLabelsToRemove:(id)arg2; +@property(readonly) NSDictionary *messagesForGmailLabelsToRemove; +- (void)removeSourceMessages:(id)arg1; +- (void)addSourceMessage:(id)arg1; +@property(retain, nonatomic) NSArray *sourceMessages; +@property(readonly, nonatomic) NSArray *documentIDs; // @synthesize documentIDs=_documentIDs; +- (id)sourceLibraryStore; +- (void)dealloc; +- (id)initWithSourceStore:(id)arg1 destinationMailbox:(id)arg2 editableDocuments:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUI/_VisibleStateObject.h b/MailHeaders/Mavericks_10.9.5/MailUI/_VisibleStateObject.h new file mode 100644 index 00000000..a947b9e5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUI/_VisibleStateObject.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class MCMessage, NSArray, NSMutableDictionary; + +@interface _VisibleStateObject : NSObject +{ + BOOL _hadSelection; + BOOL _selectionWasVisible; + BOOL _scrollerWasAtEnd; + BOOL _forceSelToVisible; + MCMessage *_messageToPin; + double _msgUpperLeft; + NSMutableDictionary *_selectedMessageIDs; + NSArray *_openThreadIDs; +} + +@property(retain, nonatomic) NSArray *openThreadIDs; // @synthesize openThreadIDs=_openThreadIDs; +@property(retain, nonatomic) NSMutableDictionary *selectedMessageIDs; // @synthesize selectedMessageIDs=_selectedMessageIDs; +@property(nonatomic) double msgUpperLeft; // @synthesize msgUpperLeft=_msgUpperLeft; +@property(retain, nonatomic) MCMessage *messageToPin; // @synthesize messageToPin=_messageToPin; +@property(nonatomic) BOOL forceSelToVisible; // @synthesize forceSelToVisible=_forceSelToVisible; +@property(nonatomic) BOOL scrollerWasAtEnd; // @synthesize scrollerWasAtEnd=_scrollerWasAtEnd; +@property(nonatomic) BOOL selectionWasVisible; // @synthesize selectionWasVisible=_selectionWasVisible; +@property(nonatomic) BOOL hadSelection; // @synthesize hadSelection=_hadSelection; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/CDStructures.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/CDStructures.h new file mode 100644 index 00000000..14bf62f4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/CDStructures.h @@ -0,0 +1,46 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#pragma mark Named Structures + +struct CGPoint { + double x; + double y; +}; + +struct CGRect { + struct CGPoint origin; + struct CGSize size; +}; + +struct CGSize { + double width; + double height; +}; + +struct WKPageContextMenuClient { + int _field1; + void *_field2; + void *_field3; + void *_field4; + void *_field5; + void *_field6; + void *_field7; + void *_field8; +}; + +struct WKPageFindMatchesClient { + int _field1; + void *_field2; + void *_field3; + void *_field4; +}; + +struct _NSRange { + unsigned long long location; + unsigned long long length; +}; + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/CNAutocompleteFetchDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/CNAutocompleteFetchDelegate-Protocol.h new file mode 100644 index 00000000..c192f177 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/CNAutocompleteFetchDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol CNAutocompleteFetchDelegate +- (void)autocompleteFetch:(id)arg1 didFailWithError:(id)arg2; +- (void)autocompleteFetch:(id)arg1 didReceiveResults:(id)arg2; + +@optional +- (void)autocompleteFetchDidEndNetworkActivity:(id)arg1; +- (void)autocompleteFetchDidBeginNetworkActivity:(id)arg1; +- (void)autocompleteFetchDidFinish:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/CNContactPickerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/CNContactPickerDelegate-Protocol.h new file mode 100644 index 00000000..108f47b4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/CNContactPickerDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol CNContactPickerDelegate + +@optional +- (void)contactPickerDidClose:(id)arg1; +- (void)contactPickerWillClose:(id)arg1; +- (void)contactPicker:(id)arg1 didChooseContact:(id)arg2 key:(id)arg3 value:(id)arg4; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MCCIDURLProtocolDataProvider-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MCCIDURLProtocolDataProvider-Protocol.h new file mode 100644 index 00000000..23029267 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MCCIDURLProtocolDataProvider-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@class NSData, NSString, NSURL; + +@protocol MCCIDURLProtocolDataProvider +@property(readonly) NSString *mimeType; +@property(readonly) NSData *data; +@property(readonly) NSURL *cidURL; + +@optional +@property(readonly) long long fileSize; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIAddressField.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIAddressField.h new file mode 100644 index 00000000..62af4a81 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIAddressField.h @@ -0,0 +1,165 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControl.h" + +#import "CNAutocompleteFetchDelegate.h" +#import "CNContactPickerDelegate.h" +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" +#import "NSTokenFieldDelegate.h" + +@class CNAutocompleteResult, MUITokenAddressField, NSArray, NSButton, NSLayoutConstraint, NSMapTable, NSMutableArray, NSProgressIndicator, NSScrollView, NSString, NSTableView, NSView, NSWindow; + +@interface MUIAddressField : NSControl +{ + SEL _action; + id _target; + unsigned long long _style; + BOOL _ignoreCompletionForTextChange; + BOOL _isShowingContactPicker; + BOOL _shouldDrawFocusRing; + BOOL _isBoundToTokenField; + BOOL _isShowingSelectedCompletion; + NSString *_senderDomain; + NSScrollView *_scrollView; + MUITokenAddressField *_tokenField; + NSProgressIndicator *_progressIndicator; + NSButton *_addContactButton; + NSWindow *_completionWindow; + NSTableView *_completionTableView; + NSScrollView *_completionTableScrollView; + CNAutocompleteResult *_selectedResult; + NSMutableArray *_completionResults; + id _currentSearchRequest; + NSString *_previousPartialString; + double _completionStartTime; + long long _addressDisplayMode; + id _tokenValue; + NSLayoutConstraint *_addContactButtonWidthConstraint; + NSLayoutConstraint *_addContactButtonTrailingConstraint; + NSLayoutConstraint *_tokenFieldTrailingConstraint; + NSLayoutConstraint *_tokenFieldBottomConstraint; + NSLayoutConstraint *_addressFieldHeightConstraint; + NSMapTable *_representedObjectsCache; + NSMutableArray *_autocompletionOperations; + NSView *_progressIndicatorContainer; + id _tokenAddressDelegate; + struct _NSRange _completionHighlightRange; +} + ++ (id)_contactPicker; ++ (id)readablePasteboardTypes; ++ (id)keyPathsForValuesAffectingAddresses; +@property(nonatomic) BOOL isShowingSelectedCompletion; // @synthesize isShowingSelectedCompletion=_isShowingSelectedCompletion; +@property(nonatomic) BOOL isBoundToTokenField; // @synthesize isBoundToTokenField=_isBoundToTokenField; +@property(nonatomic) id tokenAddressDelegate; // @synthesize tokenAddressDelegate=_tokenAddressDelegate; +@property(nonatomic) BOOL shouldDrawFocusRing; // @synthesize shouldDrawFocusRing=_shouldDrawFocusRing; +@property(retain, nonatomic) NSView *progressIndicatorContainer; // @synthesize progressIndicatorContainer=_progressIndicatorContainer; +@property(retain, nonatomic) NSMutableArray *autocompletionOperations; // @synthesize autocompletionOperations=_autocompletionOperations; +@property(retain, nonatomic) NSMapTable *representedObjectsCache; // @synthesize representedObjectsCache=_representedObjectsCache; +@property(retain, nonatomic) NSLayoutConstraint *addressFieldHeightConstraint; // @synthesize addressFieldHeightConstraint=_addressFieldHeightConstraint; +@property(nonatomic) NSLayoutConstraint *tokenFieldBottomConstraint; // @synthesize tokenFieldBottomConstraint=_tokenFieldBottomConstraint; +@property(nonatomic) NSLayoutConstraint *tokenFieldTrailingConstraint; // @synthesize tokenFieldTrailingConstraint=_tokenFieldTrailingConstraint; +@property(nonatomic) NSLayoutConstraint *addContactButtonTrailingConstraint; // @synthesize addContactButtonTrailingConstraint=_addContactButtonTrailingConstraint; +@property(nonatomic) NSLayoutConstraint *addContactButtonWidthConstraint; // @synthesize addContactButtonWidthConstraint=_addContactButtonWidthConstraint; +@property(nonatomic) BOOL isShowingContactPicker; // @synthesize isShowingContactPicker=_isShowingContactPicker; +@property(retain, nonatomic) id tokenValue; // @synthesize tokenValue=_tokenValue; +@property(nonatomic) long long addressDisplayMode; // @synthesize addressDisplayMode=_addressDisplayMode; +@property(nonatomic) BOOL ignoreCompletionForTextChange; // @synthesize ignoreCompletionForTextChange=_ignoreCompletionForTextChange; +@property(nonatomic) struct _NSRange completionHighlightRange; // @synthesize completionHighlightRange=_completionHighlightRange; +@property(nonatomic) double completionStartTime; // @synthesize completionStartTime=_completionStartTime; +@property(copy, nonatomic) NSString *previousPartialString; // @synthesize previousPartialString=_previousPartialString; +@property(retain, nonatomic) id currentSearchRequest; // @synthesize currentSearchRequest=_currentSearchRequest; +@property(retain, nonatomic) NSMutableArray *completionResults; // @synthesize completionResults=_completionResults; +@property(retain, nonatomic) CNAutocompleteResult *selectedResult; // @synthesize selectedResult=_selectedResult; +@property(retain, nonatomic) NSScrollView *completionTableScrollView; // @synthesize completionTableScrollView=_completionTableScrollView; +@property(retain, nonatomic) NSTableView *completionTableView; // @synthesize completionTableView=_completionTableView; +@property(retain, nonatomic) NSWindow *completionWindow; // @synthesize completionWindow=_completionWindow; +@property(retain, nonatomic) NSButton *addContactButton; // @synthesize addContactButton=_addContactButton; +@property(retain, nonatomic) NSProgressIndicator *progressIndicator; // @synthesize progressIndicator=_progressIndicator; +@property(retain, nonatomic) MUITokenAddressField *tokenField; // @synthesize tokenField=_tokenField; +@property(retain, nonatomic) NSScrollView *scrollView; // @synthesize scrollView=_scrollView; +@property(copy, nonatomic) NSString *senderDomain; // @synthesize senderDomain=_senderDomain; +- (id)accessibilityAttributeValue:(id)arg1; +- (BOOL)accessibilitySetOverrideValue:(id)arg1 forAttribute:(id)arg2; +- (void)drawFocusRingMask; +- (struct CGRect)focusRingMaskBounds; +- (BOOL)_addressFieldNeedsToBeScrollable; +- (void)_resizeFieldIfNeeded; +- (void)updateConstraints; +- (BOOL)_hasFocus; +- (void)contactPickerDidClose:(id)arg1; +- (void)contactPickerWillClose:(id)arg1; +- (void)contactPicker:(id)arg1 didChooseContact:(id)arg2 key:(id)arg3 value:(id)arg4; +- (void)_showContactPicker:(id)arg1; +- (void)_tokenFieldGainedFocus:(id)arg1; +- (void)_completeSelection:(id)arg1; +- (void)_selectTableViewRow:(unsigned long long)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)_completionTableView; +- (void)_presentCompletionWindow; +- (void)setFrameSize:(struct CGSize)arg1; +- (id)_completionStringForSelectedRecord; +- (BOOL)tokenField:(id)arg1 characterAtIndex:(unsigned long long)arg2 shouldTerminateString:(id)arg3; +- (id)tokenField:(id)arg1 readFromPasteboard:(id)arg2; +- (BOOL)tokenField:(id)arg1 writeRepresentedObjects:(id)arg2 toPasteboard:(id)arg3; +- (id)tokenField:(id)arg1 menuForRepresentedObject:(id)arg2; +- (BOOL)tokenField:(id)arg1 hasMenuForRepresentedObject:(id)arg2; +- (unsigned long long)tokenField:(id)arg1 styleForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 editingStringForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 displayStringForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 shouldAddObjects:(id)arg2 atIndex:(unsigned long long)arg3; +- (id)tokenField:(id)arg1 representedObjectForEditingString:(id)arg2; +- (id)tokenField:(id)arg1 setUpTokenAttachmentCell:(id)arg2 forRepresentedObject:(id)arg3; +- (void)_tokenFieldCommitedEditing:(id)arg1; +- (BOOL)control:(id)arg1 textView:(id)arg2 doCommandBySelector:(SEL)arg3; +- (void)controlTextDidEndEditing:(id)arg1; +- (void)controlTextDidChange:(id)arg1; +- (BOOL)becomeFirstResponder; +- (BOOL)canBecomeKeyView; +- (void)setNextKeyView:(id)arg1; +- (void)setTarget:(id)arg1; +- (id)target; +- (void)setAction:(SEL)arg1; +- (SEL)action; +@property(nonatomic) unsigned long long style; +- (void)autocompleteFetchDidEndNetworkActivity:(id)arg1; +- (void)autocompleteFetchDidBeginNetworkActivity:(id)arg1; +- (void)autocompleteFetch:(id)arg1 didFailWithError:(id)arg2; +- (void)_cleanUpOperationArray; +- (void)autocompleteFetch:(id)arg1 didReceiveResults:(id)arg2; +- (id)_tokensWithGroupTokensExpanded:(id)arg1; +- (void)_addAddress:(id)arg1 contact:(id)arg2; +@property(retain, nonatomic) NSArray *addresses; +@property(readonly) BOOL isEmpty; +- (void)_refreshAddressDisplayMode; +- (void)_sharedPreferencesChanged:(id)arg1; +- (void)_showSelectedCompletionInField; +- (void)_cancelCompletion; +- (void)_startCompleting; +- (void)_updateTrailingConstraints; +- (void)_scrollerStyleDidChange:(id)arg1; +- (void)_configureConstraints; +- (void)_configureAddContactButton; +- (void)_configureProgressIndicator; +- (void)_configureTokenField; +- (void)_configureScrollView; +- (void)_windowDidChangeKeyStatus:(id)arg1; +- (void)_bindOrUnbindToTokenField:(BOOL)arg1; +- (void)viewDidMoveToSuperview; +- (void)removeFromSuperview; +- (void)viewDidMoveToWindow; +- (void)_registerForNotifications; +- (void)dealloc; +- (void)_muiAddressFieldCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIAddressFieldScrollDocumentView.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIAddressFieldScrollDocumentView.h new file mode 100644 index 00000000..a775762f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIAddressFieldScrollDocumentView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface MUIAddressFieldScrollDocumentView : NSView +{ +} + +- (BOOL)isFlipped; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIAddressTokenAttachmentCell.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIAddressTokenAttachmentCell.h new file mode 100644 index 00000000..6d8e816d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIAddressTokenAttachmentCell.h @@ -0,0 +1,55 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTokenAttachmentCell.h" + +@class NSString, NSView; + +@interface MUIAddressTokenAttachmentCell : NSTokenAttachmentCell +{ + BOOL _isForGroup; + BOOL _drawAsMain; + NSView *_containerView; + double _lineFragmentPadding; + long long _tokenAddressStyle; + NSString *_title; + NSString *_alternateTitle; + struct CGRect _cellFrame; +} + ++ (id)colorForExternalDomain; ++ (BOOL)addressIsExternal:(id)arg1; +@property(nonatomic) BOOL drawAsMain; // @synthesize drawAsMain=_drawAsMain; +@property(nonatomic) struct CGRect cellFrame; // @synthesize cellFrame=_cellFrame; +@property(copy, nonatomic) NSString *alternateTitle; // @synthesize alternateTitle=_alternateTitle; +@property(copy, nonatomic) NSString *title; // @synthesize title=_title; +@property(nonatomic) long long tokenAddressStyle; // @synthesize tokenAddressStyle=_tokenAddressStyle; +@property(nonatomic) double lineFragmentPadding; // @synthesize lineFragmentPadding=_lineFragmentPadding; +@property(nonatomic) BOOL isForGroup; // @synthesize isForGroup=_isForGroup; +@property(nonatomic) NSView *containerView; // @synthesize containerView=_containerView; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)tokenBackgroundColor; +- (id)tokenForegroundColor; +- (id)_textAttributes; +- (id)_contents; +- (struct CGRect)pullDownRectForBounds:(struct CGRect)arg1; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (struct CGRect)drawingRectForBounds:(struct CGRect)arg1; +- (struct CGRect)cellFrameForTextContainer:(id)arg1 proposedLineFragment:(struct CGRect)arg2 glyphPosition:(struct CGPoint)arg3 characterIndex:(unsigned long long)arg4; +- (struct CGSize)cellSizeForBounds:(struct CGRect)arg1; +- (struct CGPoint)cellBaselineOffset; +- (struct CGRect)_titleBoundingRectWithSize:(struct CGSize)arg1; +- (id)pullDownImage; +@property(readonly, nonatomic) BOOL isRTL; +- (void)setFont:(id)arg1; +- (void)dealloc; +- (void)_addressTokenAttachmentCellCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initTextCell:(id)arg1; +- (id)initImageCell:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIBundleResourceURLProtocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIBundleResourceURLProtocol.h new file mode 100644 index 00000000..6ce0aead --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIBundleResourceURLProtocol.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSURLProtocol.h" + +@interface MUIBundleResourceURLProtocol : NSURLProtocol +{ +} + ++ (BOOL)requestIsCacheEquivalent:(id)arg1 toRequest:(id)arg2; ++ (id)canonicalRequestForRequest:(id)arg1; ++ (BOOL)canInitWithRequest:(id)arg1; +- (void)stopLoading; +- (void)startLoading; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIContextMenuController.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIContextMenuController.h new file mode 100644 index 00000000..dbbcaacb --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIContextMenuController.h @@ -0,0 +1,40 @@ +/* + * 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 "NSSharingServiceDelegate.h" +#import "NSSharingServicePickerDelegate.h" + +@class MUIWKViewController, NSDictionary, NSMapTable, NSMenu, NSSharingServicePicker; + +@interface MUIContextMenuController : NSObject +{ + MUIWKViewController *_viewController; + NSMenu *_shareMenu; + NSSharingServicePicker *_picker; + NSDictionary *_applicationDictionary; + NSMapTable *_sharingItems; +} + +@property(retain, nonatomic) NSMapTable *sharingItems; // @synthesize sharingItems=_sharingItems; +@property(retain, nonatomic) NSDictionary *applicationDictionary; // @synthesize applicationDictionary=_applicationDictionary; +@property(retain, nonatomic) NSSharingServicePicker *picker; // @synthesize picker=_picker; +@property(retain, nonatomic) NSMenu *shareMenu; // @synthesize shareMenu=_shareMenu; +@property(nonatomic) MUIWKViewController *viewController; // @synthesize viewController=_viewController; +- (id)sharingService:(id)arg1 sourceWindowForShareItems:(id)arg2 sharingContentScope:(long long *)arg3; +- (id)sharingService:(id)arg1 transitionImageForShareItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)sharingService:(id)arg1 sourceFrameOnScreenForShareItem:(id)arg2; +- (id)sharingServicePicker:(id)arg1 delegateForSharingService:(id)arg2; +- (id)sharingServicePicker:(id)arg1 sharingServicesForItems:(id)arg2 proposedSharingServices:(id)arg3; +- (void)_handleClickedItem:(struct OpaqueWKContextMenuItem *)arg1; +- (void)_addProposedContextMenuItems:(struct OpaqueWKArray *)arg1 toMenu:(struct OpaqueWKArray **)arg2; +- (id)_applicationNameFromIdentifier:(id)arg1; +- (struct WKPageContextMenuClient)contextMenuClient; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIFramework.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIFramework.h new file mode 100644 index 00000000..b81b033d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIFramework.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface MUIFramework : NSObject +{ +} + ++ (id)bundle; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIJSNotification.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIJSNotification.h new file mode 100644 index 00000000..58f2af76 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIJSNotification.h @@ -0,0 +1,25 @@ +/* + * 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" + +@class NSDictionary, NSString; + +@interface MUIJSNotification : NSObject +{ + NSString *_notificationName; + NSString *_identifier; + NSDictionary *_userInfo; +} + +@property(readonly, nonatomic) NSDictionary *userInfo; // @synthesize userInfo=_userInfo; +@property(readonly, nonatomic) NSString *identifier; // @synthesize identifier=_identifier; +@property(readonly, nonatomic) NSString *notificationName; // @synthesize notificationName=_notificationName; +- (void)dealloc; +- (id)initWithName:(id)arg1 identifier:(id)arg2 userInfo:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIJSNotificationCenter.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIJSNotificationCenter.h new file mode 100644 index 00000000..03cb356d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIJSNotificationCenter.h @@ -0,0 +1,32 @@ +/* + * 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" + +@class MUIWKViewController, NSMutableDictionary, NSTimer; + +@interface MUIJSNotificationCenter : NSObject +{ + NSTimer *_pollTimer; + NSMutableDictionary *_observerRegistrations; + MUIWKViewController *_viewController; +} + +@property(nonatomic) MUIWKViewController *viewController; // @synthesize viewController=_viewController; +@property(retain, nonatomic) NSMutableDictionary *observerRegistrations; // @synthesize observerRegistrations=_observerRegistrations; +@property(retain, nonatomic) NSTimer *pollTimer; // @synthesize pollTimer=_pollTimer; +- (void)_poll; +- (void)_receiveNotificationNamed:(id)arg1 identifier:(id)arg2 userInfo:(id)arg3; +- (void)removeObserver:(id)arg1 name:(id)arg2 identifier:(id)arg3; +- (void)removeObserver:(id)arg1; +- (void)addObserver:(id)arg1 selector:(SEL)arg2 name:(id)arg3 identifier:(id)arg4; +- (void)dealloc; +- (void)tearDown; +- (id)init; +- (id)initWithViewController:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIMIMEDocumentGenerator.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIMIMEDocumentGenerator.h new file mode 100644 index 00000000..7c0b9cec --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIMIMEDocumentGenerator.h @@ -0,0 +1,28 @@ +/* + * 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" + +@class MUIWebDocumentView, NSArray, NSAttributedString; + +@interface MUIMIMEDocumentGenerator : NSObject +{ + NSArray *_mimeParts; + NSAttributedString *_plainTextAlternative; + MUIWebDocumentView *_webDocumentView; +} + +@property(retain, nonatomic) MUIWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(retain, nonatomic) NSAttributedString *plainTextAlternative; // @synthesize plainTextAlternative=_plainTextAlternative; +@property(retain, nonatomic) NSArray *mimeParts; // @synthesize mimeParts=_mimeParts; +- (void)asyncGenerateHTMLDocument:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithWebDocument:(id)arg1; +- (id)initWithWebDocumentView:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddress.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddress.h new file mode 100644 index 00000000..d7eb1755 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddress.h @@ -0,0 +1,93 @@ +/* + * 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 "CNAutocompleteFetchDelegate.h" +#import "NSCopying.h" + +@class ABGroup, CNContact, NSString, NSTextView, NSTokenField; + +@interface MUITokenAddress : NSObject +{ + BOOL _shouldRefreshNameIfPossible; + id _delegate; + NSTokenField *_tokenField; + NSTextView *_textView; + CNContact *_contact; + ABGroup *_group; + NSString *_recentRawAddress; + NSString *_recentName; + NSString *_currentRawAddress; + NSString *_currentName; + long long _tokenStyle; + id _autocompletionSearchRequest; +} + ++ (id)_contactsCache; ++ (void)writeTokens:(id)arg1 toPasteboard:(id)arg2; +@property(retain, nonatomic) id autocompletionSearchRequest; // @synthesize autocompletionSearchRequest=_autocompletionSearchRequest; +@property(nonatomic) BOOL shouldRefreshNameIfPossible; // @synthesize shouldRefreshNameIfPossible=_shouldRefreshNameIfPossible; +@property(nonatomic) long long tokenStyle; // @synthesize tokenStyle=_tokenStyle; +@property(copy) NSString *currentName; // @synthesize currentName=_currentName; +@property(copy) NSString *currentRawAddress; // @synthesize currentRawAddress=_currentRawAddress; +@property(copy) NSString *recentName; // @synthesize recentName=_recentName; +@property(copy) NSString *recentRawAddress; // @synthesize recentRawAddress=_recentRawAddress; +@property(retain) ABGroup *group; // @synthesize group=_group; +@property(retain) CNContact *contact; // @synthesize contact=_contact; +@property(nonatomic) NSTextView *textView; // @synthesize textView=_textView; +@property(nonatomic) NSTokenField *tokenField; // @synthesize tokenField=_tokenField; +@property(nonatomic) id delegate; // @synthesize delegate=_delegate; +- (void)searchForToken:(id)arg1; +- (void)removeFromAddressHistory:(id)arg1; +- (void)expandGroupAddress:(id)arg1; +- (void)openNewMessage:(id)arg1; +- (void)addToVIPSenders:(id)arg1; +- (void)removeFromVIPSenders:(id)arg1; +- (void)openInContacts:(id)arg1; +- (void)openPersonCard:(id)arg1; +- (void)addToContacts:(id)arg1; +- (void)copyAddressToClipboard:(id)arg1; +- (void)removeAddress:(id)arg1; +- (void)editAddress:(id)arg1; +- (void)changeAddress:(id)arg1; +- (id)_tokenForTokenAddress:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (id)menu; +- (id)expandedTokens; +- (void)autocompleteFetch:(id)arg1 didFailWithError:(id)arg2; +- (void)autocompleteFetch:(id)arg1 didReceiveResults:(id)arg2; +- (void)_refreshTokenInTokenField:(id)arg1; +- (void)_contactsChanged:(id)arg1; +- (id)_contactForEmail:(id)arg1; +- (void)_getAddressAndNameFromRecord; +- (void)_getRecordFromAddress; +- (void)getRecordFromAddress; +- (id)_contactsOperationQueue; +- (void)writeToPasteboard:(id)arg1; +- (void)_writeToPasteboard:(id)arg1 forceAddressOnly:(BOOL)arg2; +- (BOOL)writeToPasteboard:(id)arg1 type:(id)arg2; +- (BOOL)_writeToPasteboard:(id)arg1 type:(id)arg2 forceAddressOnly:(BOOL)arg3; +- (id)writablePasteboardTypes; +- (id)_suggestionSerializedRepresentation; +- (id)suggestionWithGenius:(id)arg1; +- (id)_vCardRepresentation; +- (id)toolTipWithMode:(long long)arg1; +- (id)displayStringWithMode:(long long)arg1; +- (id)formattedAddress; +- (id)_contactNameFormatter; +- (id)_formattedRecentAddress; +- (id)_formattedCurrentAddress; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (id)init; +- (id)_initBasic; +- (id)initWithGroup:(id)arg1; +- (id)initWithAddress:(id)arg1 isRecent:(BOOL)arg2 contact:(id)arg3; +- (id)initWithAddress:(id)arg1 contact:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddressField.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddressField.h new file mode 100644 index 00000000..4f25e505 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddressField.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTokenField.h" + +@class MUITokenAddressTextView, NSView; + +@interface MUITokenAddressField : NSTokenField +{ + MUITokenAddressTextView *_addressTextView; + NSView *_parentAddressField; +} + ++ (Class)cellClass; +@property(nonatomic) NSView *parentAddressField; // @synthesize parentAddressField=_parentAddressField; +- (id)accessibilityAttributeValue:(id)arg1; +- (id)designatedFocusRingView; +- (struct CGSize)intrinsicContentSize; +- (void)setFrameSize:(struct CGSize)arg1; +- (double)minimumHeight; +- (void)refreshField; +- (void)didAddSubview:(id)arg1; +- (id)_addressTextView; +- (BOOL)textView:(id)arg1 shouldChangeTextInRange:(struct _NSRange)arg2 replacementString:(id)arg3; +- (unsigned long long)textView:(id)arg1 dragOperationForDraggingInfo:(id)arg2 type:(id)arg3; +- (id)tokenFieldCell:(id)arg1 shouldUseReadablePasteboardTypes:(id)arg2; +- (id)tokenFieldCell:(id)arg1 shouldUseDraggingPasteboardTypes:(id)arg2; +- (BOOL)becomeFirstResponder; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddressFieldCell.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddressFieldCell.h new file mode 100644 index 00000000..a6663eb8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddressFieldCell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTokenFieldCell.h" + +@interface MUITokenAddressFieldCell : NSTokenFieldCell +{ +} + +- (BOOL)_needRedrawOnWindowChangedKeyState; +- (BOOL)tokenAttachment:(id)arg1 doubleClickedInRect:(struct CGRect)arg2 ofView:(id)arg3 atCharacterIndex:(unsigned long long)arg4; +- (id)_fieldEditor; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddressTextStorage.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddressTextStorage.h new file mode 100644 index 00000000..3112774f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddressTextStorage.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSConcreteTextStorage.h" + +@interface MUITokenAddressTextStorage : NSConcreteTextStorage +{ +} + +- (BOOL)stripsFontAndColorFromAttachments; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddressTextView.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddressTextView.h new file mode 100644 index 00000000..a75c8e66 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUITokenAddressTextView.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTokenTextView.h" + +@class MUIAddressField; + +@interface MUITokenAddressTextView : NSTokenTextView +{ + MUIAddressField *_addressField; +} + +@property(nonatomic) MUIAddressField *addressField; // @synthesize addressField=_addressField; +- (void)noteFocusRingMaskChanged; +- (id)designatedFocusRingView; +- (BOOL)performDragOperation:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWKView.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWKView.h new file mode 100644 index 00000000..6be4a27e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWKView.h @@ -0,0 +1,81 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WKView.h" + +#import "NSDraggingDestination.h" +#import "NSDraggingSource.h" +#import "QLPreviewPanelDataSource.h" +#import "QLPreviewPanelDelegate.h" +#import "QLSeamlessCloserDelegate.h" +#import "QLSeamlessOpenerDelegate.h" + +@class MUIWKViewController, NSArray, NSDraggingSession, WKProcessGroup; + +@interface MUIWKView : WKView +{ + BOOL _isDragging; + BOOL _isDraggingAttachments; + NSArray *_attachmentControllersToQuicklook; + MUIWKViewController *_controller; + NSDraggingSession *_dragSession; + WKProcessGroup *_processGroup; +} + +@property(retain, nonatomic) WKProcessGroup *processGroup; // @synthesize processGroup=_processGroup; +@property(nonatomic) BOOL isDraggingAttachments; // @synthesize isDraggingAttachments=_isDraggingAttachments; +@property(nonatomic) BOOL isDragging; // @synthesize isDragging=_isDragging; +@property(retain, nonatomic) NSDraggingSession *dragSession; // @synthesize dragSession=_dragSession; +@property(nonatomic) MUIWKViewController *controller; // @synthesize controller=_controller; +@property(retain, nonatomic) NSArray *attachmentControllersToQuicklook; // @synthesize attachmentControllersToQuicklook=_attachmentControllersToQuicklook; +- (id)seamlessCloserTransitionImageForPreviewItem:(id)arg1 contentRect:(struct CGRect *)arg2; +- (struct CGRect)seamlessCloserSourceFrameOnScreenForPreviewItem:(id)arg1; +- (void)seamlessOpener:(id)arg1 failedToOpenItems:(id)arg2 withError:(id)arg3; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3 windowLevel:(long long *)arg4; +- (struct CGRect)seamlessOpener:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (id)previewPanel:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)previewPanel:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (id)previewPanel:(id)arg1 previewItemAtIndex:(long long)arg2; +- (long long)numberOfPreviewItemsInPreviewPanel:(id)arg1; +- (void)endPreviewPanelControl:(id)arg1; +- (void)beginPreviewPanelControl:(id)arg1; +- (BOOL)acceptsPreviewPanelControl:(id)arg1; +- (void)keyDown:(id)arg1; +- (void)quickLookWithEvent:(id)arg1; +- (BOOL)quickLookAttachmentControllers:(id)arg1; +- (void)_displayAlertForUndownloadedAttachments:(id)arg1; +- (void)mouseDragged:(id)arg1; +- (void)draggingSession:(id)arg1 endedAtPoint:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (unsigned long long)draggingSession:(id)arg1 sourceOperationMaskForDraggingContext:(long long)arg2; +- (unsigned long long)draggingUpdated:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (void)mouseUp:(id)arg1; +- (void)mouseDown:(id)arg1; +- (id)printOperationWithPrintInfo:(id)arg1; +- (id)selectionAndClickInformation; +- (id)selectedAndClickedAttachmentControllersFromSelectionAndClickInformation:(id)arg1; +- (id)_allSelectedAndClickedAttachmentControllers; +- (struct CGRect)_rectFromComponentString:(id)arg1; +- (struct CGSize)intrinsicContentSize; +- (void)invalidateIntrinsicContentSize; +- (void)viewDidMoveToSuperview; +- (BOOL)autoscroll:(id)arg1; +- (void)updateLayer; +- (BOOL)resignFirstResponder; +- (BOOL)canBecomeKeyView; +- (id)defaultStringForToolTip:(long long)arg1 view:(id)arg2 point:(struct CGPoint)arg3 userData:(void *)arg4; +- (id)view:(id)arg1 stringForToolTip:(long long)arg2 point:(struct CGPoint)arg3 userData:(void *)arg4; +- (void)showWebInspector:(id)arg1; +- (BOOL)_shouldUseTiledDrawingArea; +- (void)scrollWheel:(id)arg1; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (void)awakeFromNib; +- (void)dealloc; +- (id)initWithFrame:(struct CGRect)arg1 processGroup:(id)arg2 browsingContextGroup:(id)arg3; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWKViewController.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWKViewController.h new file mode 100644 index 00000000..e8b10eba --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWKViewController.h @@ -0,0 +1,101 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +#import "WKBrowsingContextLoadDelegate.h" + +@class MUIContextMenuController, MUIJSNotificationCenter, MUIWebDocumentView, MUIWebDocumentViewGroup, MUIWebFindController, NSMapTable, NSMutableArray, NSPort, NSString; + +@interface MUIWKViewController : NSViewController +{ + BOOL _editable; + BOOL _ignoreKVOHTMLChanges; + MUIWebDocumentView *_webDocumentView; + MUIWebDocumentViewGroup *_viewGroup; + NSMapTable *_attachmentControllersByAttachment; + MUIJSNotificationCenter *_jsNotificationCenter; + NSMutableArray *_pendingRequests; + MUIContextMenuController *_contextMenuController; + MUIWebFindController *_findController; + id _generateWebDocumentCompletionHandler; + id _cacheDisplayInRectCompletionHandler; + NSString *_bundleReplyMessageString; + id _bundleReplyMessageData; + NSPort *_javascriptPort; + NSPort *_bundleMessageReplyPort; +} + ++ (id)newReplyMessageNameForMessageName:(id)arg1; +@property(readonly, nonatomic) NSPort *bundleMessageReplyPort; // @synthesize bundleMessageReplyPort=_bundleMessageReplyPort; +@property(readonly, nonatomic) NSPort *javascriptPort; // @synthesize javascriptPort=_javascriptPort; +@property(retain, nonatomic) id bundleReplyMessageData; // @synthesize bundleReplyMessageData=_bundleReplyMessageData; +@property(copy, nonatomic) NSString *bundleReplyMessageString; // @synthesize bundleReplyMessageString=_bundleReplyMessageString; +@property(copy, nonatomic) id cacheDisplayInRectCompletionHandler; // @synthesize cacheDisplayInRectCompletionHandler=_cacheDisplayInRectCompletionHandler; +@property(copy, nonatomic) id generateWebDocumentCompletionHandler; // @synthesize generateWebDocumentCompletionHandler=_generateWebDocumentCompletionHandler; +@property(retain, nonatomic) MUIWebFindController *findController; // @synthesize findController=_findController; +@property(retain, nonatomic) MUIContextMenuController *contextMenuController; // @synthesize contextMenuController=_contextMenuController; +@property(nonatomic) BOOL ignoreKVOHTMLChanges; // @synthesize ignoreKVOHTMLChanges=_ignoreKVOHTMLChanges; +@property(readonly, nonatomic) NSMutableArray *pendingRequests; // @synthesize pendingRequests=_pendingRequests; +@property(retain, nonatomic) MUIJSNotificationCenter *jsNotificationCenter; // @synthesize jsNotificationCenter=_jsNotificationCenter; +@property(retain, nonatomic) NSMapTable *attachmentControllersByAttachment; // @synthesize attachmentControllersByAttachment=_attachmentControllersByAttachment; +@property(retain, nonatomic) MUIWebDocumentViewGroup *viewGroup; // @synthesize viewGroup=_viewGroup; +@property(nonatomic) MUIWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +- (void)_didReceiveCacheDisplayData:(id)arg1; +- (void)cancelPendingCacheDisplayInRect; +- (void)cacheDisplayInRect:(struct CGRect)arg1 completionHandler:(id)arg2; +- (void)_noteFileSystemChanged:(id)arg1; +- (void)setAttachments:(id)arg1 asHidden:(BOOL)arg2 completionHandler:(id)arg3; +- (void)exportAttachmentsToiPhoto:(id)arg1; +- (BOOL)canExportAttachmentsToiPhoto:(id)arg1; +- (id)_imageAttachments; +- (void)saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3; +- (void)_saveAttachment:(id)arg1 toDirectory:(id)arg2 filename:(id)arg3 makePathUnique:(BOOL)arg4; +- (void)saveAttachmentsWithPanel:(id)arg1; +- (void)_completeWebDocumentPasteboardType; +- (void)_didGenerateSelectionWebDocument:(id)arg1; +- (void)generateSelectionWebDocument:(id)arg1; +- (void)_didGenerateStyleInlinedWebDocument:(id)arg1; +- (void)generateStyleInlinedWebDocument:(id)arg1; +- (void)removeAttachment:(id)arg1 completionHandler:(id)arg2; +- (void)_attachmentDeleted:(id)arg1; +- (void)_documentContentChanged:(id)arg1; +- (id)_stringByRemovingCharactersInSet:(id)arg1 fromString:(id)arg2; +- (void)appendAttributedString:(id)arg1 completionHandler:(id)arg2; +- (void)appendString:(id)arg1 completionHandler:(id)arg2; +- (void)appendAttachment:(id)arg1 completionHandler:(id)arg2; +@property(nonatomic) BOOL editable; +- (BOOL)performDragOperation:(id)arg1; +- (void)_ddExternalUIRequested:(id)arg1; +- (id)sendMessageToWebProcessControllerSynchronously:(id)arg1 messageBody:(id)arg2; +- (void)sendMessageToWebProcessController:(id)arg1 messageBody:(id)arg2; +- (void)receiveMessageFromWebProcessController:(id)arg1 messageBody:(id)arg2 wkObject:(id)arg3; +- (void)_runPendingAsyncRequests; +- (void)_evaluateAsyncRequest:(id)arg1; +- (id)evaluateJavascriptSynchronously:(id)arg1; +- (void)evaluateJavascript:(id)arg1 completionHandler:(id)arg2; +- (void)_didLoadMainFrameTimeout; +- (void)_webProcessDidPaintContent:(id)arg1; +- (void)_webProcessDidLayoutContent:(id)arg1; +- (void)browsingContextControllerDidFinishLoad:(id)arg1; +- (void)_updateDebuggingPreferences; +- (void)_updateFontPreferences; +- (void)_updateImageScaling; +- (void)_reloadDocument; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +- (void)setView:(id)arg1; +- (id)view; +- (void)loadView; +- (void)tearDown; +- (void)dealloc; +- (void)_muiWKViewControllerCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebAttachment.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebAttachment.h new file mode 100644 index 00000000..f36a42b9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebAttachment.h @@ -0,0 +1,52 @@ +/* + * 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 "NSCoding.h" +#import "NSPasteboardWriting.h" + +@class NSFileWrapper, NSImage, NSProgress, NSString, NSURL; + +@interface MUIWebAttachment : NSObject +{ + NSString *_mimeType; + NSString *_uti; + NSImage *_iconImage; + NSFileWrapper *_fileWrapper; + NSURL *_cidURL; + NSURL *_fileURL; + NSString *_originalContentID; + NSString *_generatedContentID; +} + +@property(readonly, nonatomic) NSString *generatedContentID; // @synthesize generatedContentID=_generatedContentID; +@property(copy, nonatomic) NSString *originalContentID; // @synthesize originalContentID=_originalContentID; +@property(retain, nonatomic) NSURL *cidURL; // @synthesize cidURL=_cidURL; +@property(readonly, nonatomic) NSFileWrapper *fileWrapper; // @synthesize fileWrapper=_fileWrapper; +- (id)pasteboardPropertyListForType:(id)arg1; +- (id)writableTypesForPasteboard:(id)arg1; +- (void)writeToURL:(id)arg1; +- (void)startDownloadingIfNeededWithProgress:(id)arg1 completionBlock:(id)arg2; +@property(readonly, nonatomic) NSProgress *downloadProgress; +@property(readonly, nonatomic) BOOL shouldAlwaysAutomaticallyDownload; +@property(readonly, nonatomic) BOOL isDataDownloaded; +@property(readonly, nonatomic) NSURL *downloadDirectory; +@property(readonly, nonatomic) BOOL isAutoArchiveAttachment; +@property(readonly, nonatomic) NSString *filename; +@property(readonly, nonatomic) NSImage *iconImage; +@property(readonly, nonatomic) unsigned long long fileSize; +@property(readonly, nonatomic) NSString *uti; // @synthesize uti=_uti; +@property(readonly, nonatomic) NSString *mimeType; // @synthesize mimeType=_mimeType; +@property(readonly, nonatomic) NSURL *fileURL; // @synthesize fileURL=_fileURL; +- (void)dealloc; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithFileWrapper:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebAttachmentController.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebAttachmentController.h new file mode 100644 index 00000000..61204fb4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebAttachmentController.h @@ -0,0 +1,69 @@ +/* + * 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 "MCCIDURLProtocolDataProvider.h" +#import "QLPreviewItem.h" + +@class MUIWKViewController, MUIWebAttachment, NSData, NSImage, NSProgress, NSString, NSURL, _MUIWebAttachmentIconPrintingDataProvider; + +@interface MUIWebAttachmentController : NSObject +{ + unsigned long long _displayState; + BOOL _canBeDisplayedInline; + MUIWebAttachment *_webAttachment; + MUIWKViewController *_controller; + NSString *_markup; + _MUIWebAttachmentIconPrintingDataProvider *_iconPrintingDataProvider; + NSImage *_cachedSnapshot; + long long _downloadedState; + NSURL *_alternateCIDURL; + NSProgress *_downloadProgress; + struct CGRect _cachedFrame; + struct CGRect _cachedIconFrame; +} + +@property(nonatomic) BOOL canBeDisplayedInline; // @synthesize canBeDisplayedInline=_canBeDisplayedInline; +@property(retain, nonatomic) NSProgress *downloadProgress; // @synthesize downloadProgress=_downloadProgress; +@property(retain, nonatomic) NSURL *alternateCIDURL; // @synthesize alternateCIDURL=_alternateCIDURL; +@property(nonatomic) long long downloadedState; // @synthesize downloadedState=_downloadedState; +@property(retain, nonatomic) NSImage *cachedSnapshot; // @synthesize cachedSnapshot=_cachedSnapshot; +@property(retain, nonatomic) _MUIWebAttachmentIconPrintingDataProvider *iconPrintingDataProvider; // @synthesize iconPrintingDataProvider=_iconPrintingDataProvider; +@property(nonatomic) struct CGRect cachedIconFrame; // @synthesize cachedIconFrame=_cachedIconFrame; +@property(nonatomic) struct CGRect cachedFrame; // @synthesize cachedFrame=_cachedFrame; +@property(readonly, nonatomic) NSString *markup; // @synthesize markup=_markup; +@property(nonatomic) MUIWKViewController *controller; // @synthesize controller=_controller; +@property(readonly, nonatomic) MUIWebAttachment *webAttachment; // @synthesize webAttachment=_webAttachment; +- (void)startDownloadingIfNeededWithProgress:(id)arg1 completionBlock:(id)arg2; +@property(readonly) NSString *mimeType; +@property(readonly) NSURL *cidURL; +@property(readonly) NSData *data; +- (void)setImageScale:(unsigned long long)arg1; +- (struct CGRect)frameForPreview; +- (id)transitionImageForPreview; +@property(readonly) NSString *previewItemTitle; +@property(readonly) NSURL *previewItemURL; +- (id)deletionScriptString; +- (id)creationScriptStringForDropPoint:(struct CGPoint)arg1; +- (id)creationScriptString; +- (id)registrationScriptString; +- (id)_couponAttachmentMarkup:(id)arg1; +- (id)_genericAttachmentMarkup:(id)arg1 downloadedState:(long long)arg2; +- (void)_generateAttachmentMarkup; +- (void)_refreshAttachmentMarkup; +- (BOOL)_displayedInline; +@property(nonatomic) unsigned long long displayState; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)dealloc; +- (id)initWithWebAttachment:(id)arg1 controller:(id)arg2; + +// Remaining properties +@property(readonly) long long fileSize; +@property(readonly) id previewItemDisplayState; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebDocument.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebDocument.h new file mode 100644 index 00000000..62fde2d8 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebDocument.h @@ -0,0 +1,49 @@ +/* + * 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 "NSCoding.h" + +@class NSArray, NSDictionary, NSError, NSMutableDictionary, NSString, NSURL; + +@interface MUIWebDocument : NSObject +{ + NSString *_html; + BOOL _loadRemoteContent; + BOOL _hasBlockedRemoteContent; + NSArray *_attachments; + Class _webAttachmentClass; + unsigned long long _imageScale; + NSURL *_baseURL; + NSDictionary *_dataDetectorsContext; + NSMutableDictionary *_jsDocumentContext; + NSError *_parseError; + unsigned long long _originalEncoding; +} + +@property(nonatomic) unsigned long long originalEncoding; // @synthesize originalEncoding=_originalEncoding; +@property(nonatomic) BOOL hasBlockedRemoteContent; // @synthesize hasBlockedRemoteContent=_hasBlockedRemoteContent; +@property(nonatomic) BOOL loadRemoteContent; // @synthesize loadRemoteContent=_loadRemoteContent; +@property(retain, nonatomic) NSError *parseError; // @synthesize parseError=_parseError; +@property(readonly, nonatomic) NSMutableDictionary *jsDocumentContext; // @synthesize jsDocumentContext=_jsDocumentContext; +@property(copy, nonatomic) NSDictionary *dataDetectorsContext; // @synthesize dataDetectorsContext=_dataDetectorsContext; +@property(readonly, nonatomic) NSURL *baseURL; // @synthesize baseURL=_baseURL; +@property(nonatomic) unsigned long long imageScale; // @synthesize imageScale=_imageScale; +@property(retain, nonatomic) Class webAttachmentClass; // @synthesize webAttachmentClass=_webAttachmentClass; +@property(retain, nonatomic) NSArray *attachments; // @synthesize attachments=_attachments; +@property(retain, nonatomic) NSString *html; +- (id)attachmentForGeneratedContentID:(id)arg1; +- (id)description; +- (id)_defaultDocumentHTML; +- (void)dealloc; +- (void)encodeWithCoder:(id)arg1; +- (void)_muiWebDocumentCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebDocumentView.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebDocumentView.h new file mode 100644 index 00000000..4a97c57e --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebDocumentView.h @@ -0,0 +1,84 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class MUIWKViewController, MUIWebDocument; + +@interface MUIWebDocumentView : NSView +{ + unsigned long long _loadedState; + struct CGSize _contentSize; + BOOL _preparingToLayoutSynchronously; + NSView *_snapshotView; + MUIWKViewController *_wkViewController; + id _prepareToLayoutSynchronouslyCompletionHandler; +} + ++ (id)keyPathsForValuesAffectingEditable; ++ (id)keyPathsForValuesAffectingPageZoom; ++ (id)keyPathsForValuesAffectingViewGroup; ++ (id)keyPathsForValuesAffectingWebDocument; ++ (BOOL)requiresConstraintBasedLayout; +@property(copy, nonatomic) id prepareToLayoutSynchronouslyCompletionHandler; // @synthesize prepareToLayoutSynchronouslyCompletionHandler=_prepareToLayoutSynchronouslyCompletionHandler; +@property(nonatomic) BOOL preparingToLayoutSynchronously; // @synthesize preparingToLayoutSynchronously=_preparingToLayoutSynchronously; +@property(retain, nonatomic) MUIWKViewController *wkViewController; // @synthesize wkViewController=_wkViewController; +@property(readonly, nonatomic) NSView *snapshotView; // @synthesize snapshotView=_snapshotView; +- (void)exportAttachmentsToiPhoto; +- (BOOL)canExportAttachmentsToiPhoto; +- (void)saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3; +- (void)saveAttachmentsWithPanel:(id)arg1; +- (void)quickLookAttachments:(id)arg1; +- (id)_attachmentControllersForAttachments:(id)arg1; +- (id)description; +- (BOOL)shouldHandleClickForURL:(id)arg1; +- (void)getSelectedText:(id)arg1; +- (void)selectFindMatch:(id)arg1 completionHandler:(id)arg2; +- (void)findMatchesForString:(id)arg1 findOptions:(unsigned long long)arg2 maxResults:(unsigned long long)arg3 resultCollector:(id)arg4; +- (void)generateSelectionWebDocument:(id)arg1; +- (void)generateStyleInlinedWebDocument:(id)arg1; +- (void)removeAttachment:(id)arg1 completionHandler:(id)arg2; +- (void)appendAttributedString:(id)arg1 completionHandler:(id)arg2; +- (void)appendString:(id)arg1 completionHandler:(id)arg2; +- (void)appendAttachment:(id)arg1 completionHandler:(id)arg2; +- (void)setAttachments:(id)arg1 asHidden:(BOOL)arg2 completionHandler:(id)arg3; +@property(nonatomic) BOOL editable; +- (void)layoutSublayersOfLayer:(id)arg1; +- (void)mui_cancelSynchronousLayout; +- (void)mui_performLayoutSynchronously; +- (void)_readyToLayoutSynchronously; +- (void)mui_prepareToLayoutSynchronously:(id)arg1; +- (void)mui_cancelAnimation; +- (void)mui_performAnimation; +- (void)mui_prepareToAnimate:(id)arg1; +- (void)mui_didCacheDisplayInRect; +- (void)mui_prepareToCacheDisplayInRect:(struct CGRect)arg1 completionHandler:(id)arg2; +- (id)printOperationWithPrintInfo:(id)arg1; +- (void)prepareTilesInRect:(struct CGRect)arg1; +- (void)evaluateJavascript:(id)arg1 completionHandler:(id)arg2; +- (void)setShouldPaintToBounds:(BOOL)arg1; +- (BOOL)shouldPaintToBounds; +@property(nonatomic) double preferredMinLayoutWidth; +@property(nonatomic) double pageZoom; +- (void)setViewGroup:(id)arg1; +- (id)viewGroup; +@property(retain, nonatomic) MUIWebDocument *webDocument; +@property(nonatomic) unsigned long long loadedState; +@property(nonatomic) struct CGSize contentSize; +- (id)contentView; +- (id)view:(id)arg1 stringForToolTip:(long long)arg2 point:(struct CGPoint)arg3 userData:(void *)arg4; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (struct CGSize)intrinsicContentSize; +- (BOOL)isFlipped; +- (void)dealloc; +- (void)_muiWebDocumentViewCommonInitWithViewGroup:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1 viewGroup:(id)arg2; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1 viewGroup:(id)arg2; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebDocumentViewGroup.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebDocumentViewGroup.h new file mode 100644 index 00000000..cd0e5810 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebDocumentViewGroup.h @@ -0,0 +1,48 @@ +/* + * 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 "WKConnectionDelegate.h" +#import "WKProcessGroupDelegate.h" + +@class NSArray, NSMapTable, NSMutableArray, NSString, WKBrowsingContextGroup; + +@interface MUIWebDocumentViewGroup : NSObject +{ + NSString *_userStyleSheet; + NSArray *_userScripts; + NSString *_processGroupName; + unsigned long long _maxProcessCount; + NSMutableArray *_processGroups; + unsigned long long _processRotator; + WKBrowsingContextGroup *_browsingContextGroup; + NSMapTable *_wkConnectionsByProcessGroup; +} + ++ (id)_defaultUserStyleSheet; +@property(retain, nonatomic) NSMapTable *wkConnectionsByProcessGroup; // @synthesize wkConnectionsByProcessGroup=_wkConnectionsByProcessGroup; +@property(retain, nonatomic) WKBrowsingContextGroup *browsingContextGroup; // @synthesize browsingContextGroup=_browsingContextGroup; +@property(nonatomic) unsigned long long processRotator; // @synthesize processRotator=_processRotator; +@property(retain, nonatomic) NSMutableArray *processGroups; // @synthesize processGroups=_processGroups; +@property(readonly, nonatomic) unsigned long long maxProcessCount; // @synthesize maxProcessCount=_maxProcessCount; +@property(readonly, nonatomic) NSString *processGroupName; // @synthesize processGroupName=_processGroupName; +@property(copy, nonatomic) NSArray *userScripts; +- (void)_refreshUserScripts; +- (id)_defaultUserScripts; +- (id)effectiveUserStyle; +@property(copy, nonatomic) NSString *userStyleSheet; +- (void)_refreshUserStyleSheet; +- (void)connectionDidClose:(id)arg1; +- (void)connection:(id)arg1 didReceiveMessageWithName:(id)arg2 body:(id)arg3; +- (void)processGroup:(id)arg1 didCreateConnectionToWebProcessPlugIn:(id)arg2; +- (id)processGroup; +- (void)dealloc; +- (id)initWithMaxProcessCount:(unsigned long long)arg1 groupName:(id)arg2; +- (id)init; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebFindController.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebFindController.h new file mode 100644 index 00000000..c838ad68 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/MUIWebFindController.h @@ -0,0 +1,62 @@ +/* + * 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 "NSTextFinderClient.h" +#import "NSUserInterfaceValidations.h" + +@class MUIWKViewController, NSArray, NSMutableArray, NSProgress, NSString, NSTextFinder; + +@interface MUIWebFindController : NSObject +{ + MUIWKViewController *_viewController; + NSTextFinder *_textFinder; + BOOL _findIsRequested; + NSString *_currentFindString; + unsigned long long *_currentMaxResults; + unsigned long long _currentFindOptions; + NSProgress *_currentProgress; + id _resultCollector; + NSMutableArray *_findStringMatchesCompletionHandlers; + NSMutableArray *_getImageForMatchResultCompletionHandlers; +} + +@property(retain, nonatomic) NSMutableArray *getImageForMatchResultCompletionHandlers; // @synthesize getImageForMatchResultCompletionHandlers=_getImageForMatchResultCompletionHandlers; +@property(retain, nonatomic) NSMutableArray *findStringMatchesCompletionHandlers; // @synthesize findStringMatchesCompletionHandlers=_findStringMatchesCompletionHandlers; +@property(copy, nonatomic) id resultCollector; // @synthesize resultCollector=_resultCollector; +@property(nonatomic) BOOL findIsRequested; // @synthesize findIsRequested=_findIsRequested; +@property(retain, nonatomic) NSProgress *currentProgress; // @synthesize currentProgress=_currentProgress; +@property(nonatomic) unsigned long long currentFindOptions; // @synthesize currentFindOptions=_currentFindOptions; +@property(nonatomic) unsigned long long *currentMaxResults; // @synthesize currentMaxResults=_currentMaxResults; +@property(copy, nonatomic) NSString *currentFindString; // @synthesize currentFindString=_currentFindString; +- (void)generateImageForMatch:(id)arg1 completionHandler:(id)arg2; +- (void)scrollFindMatchToVisible:(id)arg1; +- (void)getSelectedText:(id)arg1; +- (id)documentContainerView; +- (void)selectFindMatch:(id)arg1 completionHandler:(id)arg2; +- (void)_addFindStringMatchesCompletionHandler; +- (void)_beginFind; +- (void)findMatchesForString:(id)arg1 findOptions:(unsigned long long)arg2 maxResults:(unsigned long long)arg3 resultCollector:(id)arg4; +@property(readonly, nonatomic) NSTextFinder *textFinder; +- (void)performTextFinderAction:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(nonatomic) MUIWKViewController *viewController; +- (void)dealloc; +- (struct WKPageFindMatchesClient)findMatchesClient; + +// Remaining properties +@property(readonly) BOOL allowsMultipleSelection; +@property(readonly, getter=isEditable) BOOL editable; +@property(readonly) struct _NSRange firstSelectedRange; +@property(readonly, getter=isSelectable) BOOL selectable; +@property(copy) NSArray *selectedRanges; +@property(readonly) NSString *string; +@property(readonly) NSArray *visibleCharacterRanges; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSCoding-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSCoding-Protocol.h new file mode 100644 index 00000000..7bda0254 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSCoding-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCoding +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSControlTextEditingDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSControlTextEditingDelegate-Protocol.h new file mode 100644 index 00000000..41d1e729 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSControlTextEditingDelegate-Protocol.h @@ -0,0 +1,20 @@ +/* + * 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" + +@protocol NSControlTextEditingDelegate + +@optional +- (id)control:(id)arg1 textView:(id)arg2 completions:(id)arg3 forPartialWordRange:(struct _NSRange)arg4 indexOfSelectedItem:(long long *)arg5; +- (BOOL)control:(id)arg1 textView:(id)arg2 doCommandBySelector:(SEL)arg3; +- (BOOL)control:(id)arg1 isValidObject:(id)arg2; +- (void)control:(id)arg1 didFailToValidatePartialString:(id)arg2 errorDescription:(id)arg3; +- (BOOL)control:(id)arg1 didFailToFormatString:(id)arg2 errorDescription:(id)arg3; +- (BOOL)control:(id)arg1 textShouldEndEditing:(id)arg2; +- (BOOL)control:(id)arg1 textShouldBeginEditing:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSCopying-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSCopying-Protocol.h new file mode 100644 index 00000000..3275f717 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCopying +- (id)copyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSDraggingDestination-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSDraggingDestination-Protocol.h new file mode 100644 index 00000000..3197091c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSDraggingDestination-Protocol.h @@ -0,0 +1,22 @@ +/* + * 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" + +@protocol NSDraggingDestination + +@optional +- (void)updateDraggingItemsForDrag:(id)arg1; +- (BOOL)wantsPeriodicDraggingUpdates; +- (void)draggingEnded:(id)arg1; +- (void)concludeDragOperation:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (BOOL)prepareForDragOperation:(id)arg1; +- (void)draggingExited:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSDraggingSource-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSDraggingSource-Protocol.h new file mode 100644 index 00000000..32c3a388 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSDraggingSource-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol NSDraggingSource +- (unsigned long long)draggingSession:(id)arg1 sourceOperationMaskForDraggingContext:(long long)arg2; + +@optional +- (BOOL)ignoreModifierKeysForDraggingSession:(id)arg1; +- (void)draggingSession:(id)arg1 endedAtPoint:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (void)draggingSession:(id)arg1 movedToPoint:(struct CGPoint)arg2; +- (void)draggingSession:(id)arg1 willBeginAtPoint:(struct CGPoint)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSObject-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSObject-Protocol.h new file mode 100644 index 00000000..19cf622d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSObject-Protocol.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSObject +- (id)description; +- (unsigned long long)retainCount; +- (id)autorelease; +- (oneway void)release; +- (id)retain; +- (BOOL)respondsToSelector:(SEL)arg1; +- (BOOL)conformsToProtocol:(id)arg1; +- (BOOL)isMemberOfClass:(Class)arg1; +- (BOOL)isKindOfClass:(Class)arg1; +- (BOOL)isProxy; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2 withObject:(id)arg3; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2; +- (id)performSelector:(SEL)arg1; +- (struct _NSZone *)zone; +- (id)self; +- (Class)class; +- (Class)superclass; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; + +@optional +- (id)debugDescription; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSPasteboardWriting-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSPasteboardWriting-Protocol.h new file mode 100644 index 00000000..cc7e4ba2 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSPasteboardWriting-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol NSPasteboardWriting +- (id)pasteboardPropertyListForType:(id)arg1; +- (id)writableTypesForPasteboard:(id)arg1; + +@optional +- (unsigned long long)writingOptionsForType:(id)arg1 pasteboard:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSSharingServiceDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSSharingServiceDelegate-Protocol.h new file mode 100644 index 00000000..587baede --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSSharingServiceDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol NSSharingServiceDelegate + +@optional +- (id)sharingService:(id)arg1 sourceWindowForShareItems:(id)arg2 sharingContentScope:(long long *)arg3; +- (id)sharingService:(id)arg1 transitionImageForShareItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)sharingService:(id)arg1 sourceFrameOnScreenForShareItem:(id)arg2; +- (void)sharingService:(id)arg1 didShareItems:(id)arg2; +- (void)sharingService:(id)arg1 didFailToShareItems:(id)arg2 error:(id)arg3; +- (void)sharingService:(id)arg1 willShareItems:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSSharingServicePickerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSSharingServicePickerDelegate-Protocol.h new file mode 100644 index 00000000..d025542c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSSharingServicePickerDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol NSSharingServicePickerDelegate + +@optional +- (void)sharingServicePicker:(id)arg1 didChooseSharingService:(id)arg2; +- (id)sharingServicePicker:(id)arg1 delegateForSharingService:(id)arg2; +- (id)sharingServicePicker:(id)arg1 sharingServicesForItems:(id)arg2 proposedSharingServices:(id)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTableViewDataSource-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTableViewDataSource-Protocol.h new file mode 100644 index 00000000..84b533d4 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTableViewDataSource-Protocol.h @@ -0,0 +1,25 @@ +/* + * 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" + +@protocol NSTableViewDataSource + +@optional +- (id)tableView:(id)arg1 namesOfPromisedFilesDroppedAtDestination:(id)arg2 forDraggedRowsWithIndexes:(id)arg3; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (void)tableView:(id)arg1 updateDraggingItemsForDrag:(id)arg2; +- (void)tableView:(id)arg1 draggingSession:(id)arg2 endedAtPoint:(struct CGPoint)arg3 operation:(unsigned long long)arg4; +- (void)tableView:(id)arg1 draggingSession:(id)arg2 willBeginAtPoint:(struct CGPoint)arg3 forRowIndexes:(id)arg4; +- (id)tableView:(id)arg1 pasteboardWriterForRow:(long long)arg2; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTableViewDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTableViewDelegate-Protocol.h new file mode 100644 index 00000000..f2f1581f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTableViewDelegate-Protocol.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate.h" + +@protocol NSTableViewDelegate + +@optional +- (void)tableViewSelectionIsChanging:(id)arg1; +- (void)tableViewColumnDidResize:(id)arg1; +- (void)tableViewColumnDidMove:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)tableView:(id)arg1 shouldReorderColumn:(long long)arg2 toColumn:(long long)arg3; +- (double)tableView:(id)arg1 sizeToFitWidthOfColumn:(long long)arg2; +- (BOOL)tableView:(id)arg1 isGroupRow:(long long)arg2; +- (BOOL)tableView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; +- (long long)tableView:(id)arg1 nextTypeSelectMatchFromRow:(long long)arg2 toRow:(long long)arg3 forString:(id)arg4; +- (id)tableView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 row:(long long)arg3; +- (double)tableView:(id)arg1 heightOfRow:(long long)arg2; +- (void)tableView:(id)arg1 didDragTableColumn:(id)arg2; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)tableView:(id)arg1 mouseDownInHeaderOfTableColumn:(id)arg2; +- (BOOL)tableView:(id)arg1 shouldSelectTableColumn:(id)arg2; +- (id)tableView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (BOOL)tableView:(id)arg1 shouldSelectRow:(long long)arg2; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (id)tableView:(id)arg1 dataCellForTableColumn:(id)arg2 row:(long long)arg3; +- (BOOL)tableView:(id)arg1 shouldTrackCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (BOOL)tableView:(id)arg1 shouldShowCellExpansionForTableColumn:(id)arg2 row:(long long)arg3; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (BOOL)tableView:(id)arg1 shouldEditTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tableView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (void)tableView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (id)tableView:(id)arg1 rowViewForRow:(long long)arg2; +- (id)tableView:(id)arg1 viewForTableColumn:(id)arg2 row:(long long)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTextFieldDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTextFieldDelegate-Protocol.h new file mode 100644 index 00000000..20d66c6c --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTextFieldDelegate-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate.h" + +@protocol NSTextFieldDelegate +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTextFinderAsynchronousDocumentFindMatch-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTextFinderAsynchronousDocumentFindMatch-Protocol.h new file mode 100644 index 00000000..9b2af35d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTextFinderAsynchronousDocumentFindMatch-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@class NSArray, NSView; + +@protocol NSTextFinderAsynchronousDocumentFindMatch +@property(readonly, nonatomic) NSArray *textRects; +@property(readonly, nonatomic) NSView *containingView; +- (void)generateTextImage:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTextFinderClient-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTextFinderClient-Protocol.h new file mode 100644 index 00000000..80728570 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTextFinderClient-Protocol.h @@ -0,0 +1,31 @@ +/* + * 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" + +@class NSArray, NSString; + +@protocol NSTextFinderClient + +@optional +@property(readonly) NSArray *visibleCharacterRanges; +@property(copy) NSArray *selectedRanges; +@property(readonly) struct _NSRange firstSelectedRange; +@property(readonly) NSString *string; +@property(readonly, getter=isEditable) BOOL editable; +@property(readonly) BOOL allowsMultipleSelection; +@property(readonly, getter=isSelectable) BOOL selectable; +- (void)drawCharactersInRange:(struct _NSRange)arg1 forContentView:(id)arg2; +- (id)rectsForCharacterRange:(struct _NSRange)arg1; +- (id)contentViewAtIndex:(unsigned long long)arg1 effectiveCharacterRange:(struct _NSRange *)arg2; +- (void)didReplaceCharacters; +- (void)replaceCharactersInRange:(struct _NSRange)arg1 withString:(id)arg2; +- (BOOL)shouldReplaceCharactersInRanges:(id)arg1 withStrings:(id)arg2; +- (void)scrollRangeToVisible:(struct _NSRange)arg1; +- (unsigned long long)stringLength; +- (id)stringAtIndex:(unsigned long long)arg1 effectiveRange:(struct _NSRange *)arg2 endsWithSearchBoundary:(char *)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTokenFieldDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTokenFieldDelegate-Protocol.h new file mode 100644 index 00000000..eb631e51 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSTokenFieldDelegate-Protocol.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldDelegate.h" + +@protocol NSTokenFieldDelegate + +@optional +- (unsigned long long)tokenField:(id)arg1 styleForRepresentedObject:(id)arg2; +- (BOOL)tokenField:(id)arg1 hasMenuForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 menuForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 readFromPasteboard:(id)arg2; +- (BOOL)tokenField:(id)arg1 writeRepresentedObjects:(id)arg2 toPasteboard:(id)arg3; +- (id)tokenField:(id)arg1 representedObjectForEditingString:(id)arg2; +- (id)tokenField:(id)arg1 editingStringForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 displayStringForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 shouldAddObjects:(id)arg2 atIndex:(unsigned long long)arg3; +- (id)tokenField:(id)arg1 completionsForSubstring:(id)arg2 indexOfToken:(long long)arg3 indexOfSelectedItem:(long long *)arg4; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSUserInterfaceValidations-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSUserInterfaceValidations-Protocol.h new file mode 100644 index 00000000..31d81e4b --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSUserInterfaceValidations-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSUserInterfaceValidations +- (BOOL)validateUserInterfaceItem:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSView-MUIAdditions.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSView-MUIAdditions.h new file mode 100644 index 00000000..16dcbbf5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSView-MUIAdditions.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MUIAdditions) +- (void)mui_cancelSynchronousLayout; +- (void)mui_performLayoutSynchronously; +- (void)mui_prepareToLayoutSynchronously:(id)arg1; +- (void)mui_cancelAnimation; +- (void)mui_performAnimation; +- (void)mui_prepareToAnimate:(id)arg1; +- (void)mui_didCacheDisplayInRect; +- (void)mui_prepareToCacheDisplayInRect:(struct CGRect)arg1 completionHandler:(id)arg2; +- (void)mui_cacheDisplayInRect:(struct CGRect)arg1 completionHandler:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/NSWindowDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSWindowDelegate-Protocol.h new file mode 100644 index 00000000..3ebfdce9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/NSWindowDelegate-Protocol.h @@ -0,0 +1,64 @@ +/* + * 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" + +@protocol NSWindowDelegate + +@optional +- (void)windowDidChangeOcclusionState:(id)arg1; +- (void)windowDidExitVersionBrowser:(id)arg1; +- (void)windowWillExitVersionBrowser:(id)arg1; +- (void)windowDidEnterVersionBrowser:(id)arg1; +- (void)windowWillEnterVersionBrowser:(id)arg1; +- (void)windowDidExitFullScreen:(id)arg1; +- (void)windowWillExitFullScreen:(id)arg1; +- (void)windowDidEnterFullScreen:(id)arg1; +- (void)windowWillEnterFullScreen:(id)arg1; +- (void)windowDidEndLiveResize:(id)arg1; +- (void)windowWillStartLiveResize:(id)arg1; +- (void)windowDidEndSheet:(id)arg1; +- (void)windowWillBeginSheet:(id)arg1; +- (void)windowDidChangeBackingProperties:(id)arg1; +- (void)windowDidChangeScreenProfile:(id)arg1; +- (void)windowDidChangeScreen:(id)arg1; +- (void)windowDidUpdate:(id)arg1; +- (void)windowDidDeminiaturize:(id)arg1; +- (void)windowDidMiniaturize:(id)arg1; +- (void)windowWillMiniaturize:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)windowDidResignMain:(id)arg1; +- (void)windowDidBecomeMain:(id)arg1; +- (void)windowDidResignKey:(id)arg1; +- (void)windowDidBecomeKey:(id)arg1; +- (void)windowDidMove:(id)arg1; +- (void)windowWillMove:(id)arg1; +- (void)windowDidExpose:(id)arg1; +- (void)windowDidResize:(id)arg1; +- (void)window:(id)arg1 didDecodeRestorableState:(id)arg2; +- (void)window:(id)arg1 willEncodeRestorableState:(id)arg2; +- (struct CGSize)window:(id)arg1 willResizeForVersionBrowserWithMaxPreferredSize:(struct CGSize)arg2 maxAllowedSize:(struct CGSize)arg3; +- (void)windowDidFailToExitFullScreen:(id)arg1; +- (void)window:(id)arg1 startCustomAnimationToEnterFullScreenOnScreen:(id)arg2 withDuration:(double)arg3; +- (id)customWindowsToEnterFullScreenForWindow:(id)arg1 onScreen:(id)arg2; +- (void)window:(id)arg1 startCustomAnimationToExitFullScreenWithDuration:(double)arg2; +- (id)customWindowsToExitFullScreenForWindow:(id)arg1; +- (void)windowDidFailToEnterFullScreen:(id)arg1; +- (void)window:(id)arg1 startCustomAnimationToEnterFullScreenWithDuration:(double)arg2; +- (id)customWindowsToEnterFullScreenForWindow:(id)arg1; +- (unsigned long long)window:(id)arg1 willUseFullScreenPresentationOptions:(unsigned long long)arg2; +- (struct CGSize)window:(id)arg1 willUseFullScreenContentSize:(struct CGSize)arg2; +- (BOOL)window:(id)arg1 shouldDragDocumentWithEvent:(id)arg2 from:(struct CGPoint)arg3 withPasteboard:(id)arg4; +- (BOOL)window:(id)arg1 shouldPopUpDocumentPathMenu:(id)arg2; +- (struct CGRect)window:(id)arg1 willPositionSheet:(id)arg2 usingRect:(struct CGRect)arg3; +- (id)windowWillReturnUndoManager:(id)arg1; +- (BOOL)windowShouldZoom:(id)arg1 toFrame:(struct CGRect)arg2; +- (struct CGRect)windowWillUseStandardFrame:(id)arg1 defaultFrame:(struct CGRect)arg2; +- (struct CGSize)windowWillResize:(id)arg1 toSize:(struct CGSize)arg2; +- (id)windowWillReturnFieldEditor:(id)arg1 toObject:(id)arg2; +- (BOOL)windowShouldClose:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/QLPreviewItem-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/QLPreviewItem-Protocol.h new file mode 100644 index 00000000..d022fbd3 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/QLPreviewItem-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@class NSString, NSURL; + +@protocol QLPreviewItem +@property(readonly) NSURL *previewItemURL; + +@optional +@property(readonly) id previewItemDisplayState; +@property(readonly) NSString *previewItemTitle; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/QLPreviewPanelDataSource-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/QLPreviewPanelDataSource-Protocol.h new file mode 100644 index 00000000..3936dbb5 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/QLPreviewPanelDataSource-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol QLPreviewPanelDataSource +- (id)previewPanel:(id)arg1 previewItemAtIndex:(long long)arg2; +- (long long)numberOfPreviewItemsInPreviewPanel:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/QLPreviewPanelDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/QLPreviewPanelDelegate-Protocol.h new file mode 100644 index 00000000..343adb3d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/QLPreviewPanelDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowDelegate.h" + +@protocol QLPreviewPanelDelegate + +@optional +- (id)previewPanel:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)previewPanel:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (BOOL)previewPanel:(id)arg1 handleEvent:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/QLSeamlessCloserDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/QLSeamlessCloserDelegate-Protocol.h new file mode 100644 index 00000000..df89ccaf --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/QLSeamlessCloserDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol QLSeamlessCloserDelegate + +@optional +- (id)seamlessCloserTransitionImageForPreviewItem:(id)arg1 contentRect:(struct CGRect *)arg2; +- (struct CGRect)seamlessCloserSourceFrameOnScreenForPreviewItem:(id)arg1; +- (id)seamlessCloserSourcePreviewViewForPreviewItem:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/QLSeamlessOpenerDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/QLSeamlessOpenerDelegate-Protocol.h new file mode 100644 index 00000000..28dd37af --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/QLSeamlessOpenerDelegate-Protocol.h @@ -0,0 +1,24 @@ +/* + * 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" + +@protocol QLSeamlessOpenerDelegate + +@optional +- (id)seamlessOpener:(id)arg1 transientWindowForItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 transientImageAtFrame:(struct CGRect *)arg2 forItem:(id)arg3; +- (void)seamlessOpener:(id)arg1 failedToOpenItems:(id)arg2 withError:(id)arg3; +- (void)seamlessOpener:(id)arg1 openedItem:(id)arg2 seamlessly:(BOOL)arg3; +- (id)seamlessOpenerTransientWindow:(id)arg1 level:(long long *)arg2; +- (int)seamlessOpener:(id)arg1 supportForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3 windowLevel:(long long *)arg4; +- (struct CGRect)seamlessOpener:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 sourceBubbleForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 sourcePreviewViewForPreviewItem:(id)arg2; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/WKBrowsingContextLoadDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/WKBrowsingContextLoadDelegate-Protocol.h new file mode 100644 index 00000000..8d24307f --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/WKBrowsingContextLoadDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol WKBrowsingContextLoadDelegate + +@optional +- (void)browsingContextControllerDidFailLoad:(id)arg1 withError:(id)arg2; +- (void)browsingContextControllerDidFinishLoad:(id)arg1; +- (void)browsingContextControllerDidCommitLoad:(id)arg1; +- (void)browsingContextControllerDidFailProvisionalLoad:(id)arg1 withError:(id)arg2; +- (void)browsingContextControllerDidReceiveServerRedirectForProvisionalLoad:(id)arg1; +- (void)browsingContextControllerDidStartProvisionalLoad:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/WKConnectionDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/WKConnectionDelegate-Protocol.h new file mode 100644 index 00000000..5e0ec09d --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/WKConnectionDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol WKConnectionDelegate +- (void)connectionDidClose:(id)arg1; +- (void)connection:(id)arg1 didReceiveMessageWithName:(id)arg2 body:(id)arg3; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/WKProcessGroupDelegate-Protocol.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/WKProcessGroupDelegate-Protocol.h new file mode 100644 index 00000000..67cba384 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/WKProcessGroupDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol WKProcessGroupDelegate +- (void)processGroup:(id)arg1 didCreateConnectionToWebProcessPlugIn:(id)arg2; + +@optional +- (id)processGroupWillCreateConnectionToWebProcessPlugIn:(id)arg1; +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUIAddContactsButton.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUIAddContactsButton.h new file mode 100644 index 00000000..232f95ec --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUIAddContactsButton.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface _MUIAddContactsButton : NSButton +{ +} + +- (BOOL)acceptsFirstResponder; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUIJSNotificationCenterObserverRegistration.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUIJSNotificationCenterObserverRegistration.h new file mode 100644 index 00000000..b498c434 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUIJSNotificationCenterObserverRegistration.h @@ -0,0 +1,23 @@ +/* + * 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" + +@class NSString; + +@interface _MUIJSNotificationCenterObserverRegistration : NSObject +{ + id _observer; + SEL _selector; + NSString *_identifier; +} + +@property(copy, nonatomic) NSString *identifier; // @synthesize identifier=_identifier; +@property(nonatomic) SEL selector; // @synthesize selector=_selector; +@property(nonatomic) id observer; // @synthesize observer=_observer; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUISnapshotView.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUISnapshotView.h new file mode 100644 index 00000000..aa15ac1a --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUISnapshotView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface _MUISnapshotView : NSView +{ +} + +- (id)hitTest:(struct CGPoint)arg1; +- (BOOL)isFlipped; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUIWebAttachmentIconPrintingDataProvider.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUIWebAttachmentIconPrintingDataProvider.h new file mode 100644 index 00000000..71f80564 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUIWebAttachmentIconPrintingDataProvider.h @@ -0,0 +1,30 @@ +/* + * 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 "MCCIDURLProtocolDataProvider.h" + +@class NSData, NSImage, NSString, NSURL; + +@interface _MUIWebAttachmentIconPrintingDataProvider : NSObject +{ + NSImage *_iconImage; + NSURL *_cidURL; +} + +@property(retain) NSURL *cidURL; // @synthesize cidURL=_cidURL; +@property(retain) NSImage *iconImage; // @synthesize iconImage=_iconImage; +@property(readonly) NSData *data; +@property(readonly) NSString *mimeType; +- (void)dealloc; +- (id)initWithImage:(id)arg1; + +// Remaining properties +@property(readonly) long long fileSize; + +@end + diff --git a/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUIWebFindMatch.h b/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUIWebFindMatch.h new file mode 100644 index 00000000..77f76ba9 --- /dev/null +++ b/MailHeaders/Mavericks_10.9.5/MailUIFW/_MUIWebFindMatch.h @@ -0,0 +1,29 @@ +/* + * 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 "NSTextFinderAsynchronousDocumentFindMatch.h" + +@class MUIWebFindController, NSArray, NSView; + +@interface _MUIWebFindMatch : NSObject +{ + int _matchIndex; + NSView *_containingView; + NSArray *_textRects; + MUIWebFindController *_findController; +} + +@property(nonatomic) int matchIndex; // @synthesize matchIndex=_matchIndex; +@property(nonatomic) MUIWebFindController *findController; // @synthesize findController=_findController; +@property(retain, nonatomic) NSArray *textRects; // @synthesize textRects=_textRects; +@property(retain, nonatomic) NSView *containingView; // @synthesize containingView=_containingView; +- (void)generateTextImage:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/NSPreferences.h b/MailHeaders/NSPreferences.h new file mode 100644 index 00000000..2020b1cf --- /dev/null +++ b/MailHeaders/NSPreferences.h @@ -0,0 +1,63 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@class NSBox, NSButtonCell, NSMatrix, NSMutableArray, NSMutableDictionary, NSWindow; + +@interface NSPreferences : NSObject +{ + NSWindow *_preferencesPanel; + NSBox *_preferenceBox; + NSMatrix *_moduleMatrix; + NSButtonCell *_okButton; + NSButtonCell *_cancelButton; + NSButtonCell *_applyButton; + NSMutableArray *_preferenceTitles; + NSMutableArray *_preferenceModules; + NSMutableDictionary *_masterPreferenceViews; + NSMutableDictionary *_currentSessionPreferenceViews; + NSBox *_originalContentView; + BOOL _isModal; + double _constrainedWidth; + id _currentModule; + void *_reserved; +} + ++ (id)sharedPreferences; ++ (void)setDefaultPreferencesClass:(Class)arg1; ++ (Class)defaultPreferencesClass; ++ (void)restoreWindowWithIdentifier:(id)arg1 state:(id)arg2 completionHandler:(id)arg3; +- (id)init; +- (void)dealloc; +- (void)addPreferenceNamed:(id)arg1 owner:(id)arg2; +- (void)_setupToolbar; +- (void)_setupUI; +- (struct CGSize)preferencesContentSize; +- (void)showPreferencesPanel; +- (id)_setupPreferencesPanelForOwner:(id)arg1; +- (id)_setupPreferencesPanelForOwnerAtIndex:(long long)arg1; +- (void)showPreferencesPanelForOwner:(id)arg1; +- (void)window:(id)arg1 willEncodeRestorableState:(id)arg2; +- (long long)showModalPreferencesPanelForOwner:(id)arg1; +- (long long)showModalPreferencesPanel; +- (void)ok:(id)arg1; +- (void)cancel:(id)arg1; +- (void)apply:(id)arg1; +- (void)_selectModuleOwner:(id)arg1; +- (id)windowTitle; +- (void)confirmCloseSheetIsDone:(id)arg1 returnCode:(long long)arg2 contextInfo:(void *)arg3; +- (BOOL)windowShouldClose:(id)arg1; +- (void)windowDidResize:(id)arg1; +- (struct CGSize)windowWillResize:(id)arg1 toSize:(struct CGSize)arg2; +- (BOOL)usesButtons; +- (id)_itemIdentifierForModule:(id)arg1; +- (void)toolbarItemClicked:(id)arg1; +- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; +- (id)toolbarDefaultItemIdentifiers:(id)arg1; +- (id)toolbarAllowedItemIdentifiers:(id)arg1; +- (id)toolbarSelectableItemIdentifiers:(id)arg1; + +@end + diff --git a/MailHeaders/NSPreferencesModule-Protocol.h b/MailHeaders/NSPreferencesModule-Protocol.h new file mode 100644 index 00000000..23a1c459 --- /dev/null +++ b/MailHeaders/NSPreferencesModule-Protocol.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +@protocol NSPreferencesModule +- (id)viewForPreferenceNamed:(id)arg1; +- (id)imageForPreferenceNamed:(id)arg1; +- (BOOL)hasChangesPending; +- (void)saveChanges; +- (void)willBeDisplayed; +- (void)initializeFromDefaults; +- (void)didChange; +- (void)moduleWillBeRemoved; +- (void)moduleWasInstalled; +- (BOOL)moduleCanBeRemoved; +- (BOOL)preferencesWindowShouldClose; +@end + diff --git a/MailHeaders/NSPreferencesModule.h b/MailHeaders/NSPreferencesModule.h new file mode 100644 index 00000000..0a7b2b60 --- /dev/null +++ b/MailHeaders/NSPreferencesModule.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.3.3 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. + */ + +#import "NSPreferencesModule-Protocol.h" + +@class NSBox; + +@interface NSPreferencesModule : NSObject +{ + NSBox *_preferencesView; + struct CGSize _minSize; + BOOL _hasChanges; + void *_reserved; +} + ++ (id)sharedInstance; +- (void)dealloc; +- (void)finalize; +- (id)init; +- (id)preferencesNibName; +- (void)setPreferencesView:(id)arg1; +- (id)viewForPreferenceNamed:(id)arg1; +- (id)imageForPreferenceNamed:(id)arg1; +- (id)titleForIdentifier:(id)arg1; +- (BOOL)hasChangesPending; +- (void)saveChanges; +- (void)willBeDisplayed; +- (void)initializeFromDefaults; +- (void)didChange; +- (struct CGSize)minSize; +- (void)setMinSize:(struct CGSize)arg1; +- (void)moduleWillBeRemoved; +- (void)moduleWasInstalled; +- (BOOL)moduleCanBeRemoved; +- (BOOL)preferencesWindowShouldClose; +- (BOOL)isResizable; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/CDStructures.h b/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/CDStructures.h new file mode 100644 index 00000000..fb42b445 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/CDStructures.h @@ -0,0 +1,6 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EAEmailAddressGenerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EAEmailAddressGenerator.h new file mode 100644 index 00000000..e9251d3b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EAEmailAddressGenerator.h @@ -0,0 +1,17 @@ +/* + * 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" + +@interface EAEmailAddressGenerator : NSObject +{ +} + ++ (id)stringByTrimmingCommasSpacesQuotesFromString:(id)arg1; ++ (id)formattedAddressWithName:(id)arg1 email:(id)arg2 useQuotes:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EAEmailAddressLists.h b/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EAEmailAddressLists.h new file mode 100644 index 00000000..08b53b8e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EAEmailAddressLists.h @@ -0,0 +1,23 @@ +/* + * 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" + +@interface EAEmailAddressLists : NSObject +{ +} + ++ (id)addressDisplayStringWithMaxNumberOfAddresses:(unsigned long long)arg1 fromAddressList:(id)arg2; ++ (id)displayNameFromAddressList:(id)arg1; ++ (id)rawAddressListFromFullAddressList:(id)arg1; ++ (id)addressStringFromAddressList:(id)arg1; ++ (id)addressListFromAddressString:(id)arg1; ++ (id)componentsSeparatedByCharactersRespectingQuotesAndParens:(id)arg1 forString:(id)arg2; ++ (id)componentsSeparatedByCommaRespectingQuotesAndParensForString:(id)arg1; ++ (id)addressListFromHeaderValue:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EAEmailAddressParser.h b/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EAEmailAddressParser.h new file mode 100644 index 00000000..0c98457c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EAEmailAddressParser.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@interface EAEmailAddressParser : NSObject +{ +} + ++ (id)displayNameFromAddress:(id)arg1; ++ (id)addressDomainFromAddress:(id)arg1; ++ (id)rawAddressRespectingGroupsFromFullAddress:(id)arg1; ++ (id)rawAddressFromFullAddress:(id)arg1; ++ (BOOL)addressIsEmptyGroup:(id)arg1; ++ (BOOL)isLegalEmailAddress:(id)arg1; ++ (id)unsafeAddressLocalPartCharacterSet; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EANameParser.h b/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EANameParser.h new file mode 100644 index 00000000..d24e120a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EANameParser.h @@ -0,0 +1,20 @@ +/* + * 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" + +@interface EANameParser : NSObject +{ +} + ++ (id)_partialSurnames; ++ (void)firstName:(id *)arg1 middleName:(id *)arg2 lastName:(id *)arg3 extension:(id *)arg4 fromEmailAddress:(id)arg5 respectSystemNameOrder:(BOOL)arg6; ++ (void)firstName:(id *)arg1 middleName:(id *)arg2 lastName:(id *)arg3 extension:(id *)arg4 fromEmailAddress:(id)arg5; ++ (id)nameExtensionsThatDoNotNeedCommas; ++ (id)nameExtensions; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EmailAddressingFramework.h b/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EmailAddressingFramework.h new file mode 100644 index 00000000..a869626b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/EmailAddressing/EmailAddressingFramework.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface EmailAddressingFramework : NSObject +{ +} + ++ (id)bundle; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABAddressBook-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABAddressBook-MailCoreAdditions.h new file mode 100644 index 00000000..50f4c51e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABAddressBook-MailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ABAddressBook.h" + +@interface ABAddressBook (MailCoreAdditions) +- (id)bestRecordMatchingFormattedAddress:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABAddressBook-MailCoreAdditionsInternal.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABAddressBook-MailCoreAdditionsInternal.h new file mode 100644 index 00000000..df37b665 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABAddressBook-MailCoreAdditionsInternal.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ABAddressBook.h" + +@interface ABAddressBook (MailCoreAdditionsInternal) ++ (BOOL)_firstNameShouldBeFirstForRecord:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABGroup-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABGroup-MailCoreAdditions.h new file mode 100644 index 00000000..0ba7cb35 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABGroup-MailCoreAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ABGroup.h" + +@interface ABGroup (MailCoreAdditions) ++ (id)diacriticInsensitiveSearchElementForProperty:(id)arg1 label:(id)arg2 key:(id)arg3 value:(id)arg4 comparison:(long long)arg5; +- (BOOL)hasEmailAddress:(id)arg1; +- (id)_fullName; +- (BOOL)isGroup; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABMailRecent-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABMailRecent-MailCoreAdditions.h new file mode 100644 index 00000000..ae0330f5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABMailRecent-MailCoreAdditions.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ABMailRecent.h" + +@interface ABMailRecent (MailCoreAdditions) +- (id)_fullName; +- (BOOL)isGroup; +- (BOOL)hasRelatedAddressBookRecord; +- (id)mostRecentDate; +- (id)extension; +- (id)nickname; +- (id)middleName; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABPerson-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABPerson-MailCoreAdditions.h new file mode 100644 index 00000000..f4fd6e32 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABPerson-MailCoreAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ABPerson.h" + +@interface ABPerson (MailCoreAdditions) ++ (id)diacriticInsensitiveSearchElementForProperty:(id)arg1 label:(id)arg2 key:(id)arg3 value:(id)arg4 comparison:(long long)arg5; +- (BOOL)isGroup; +- (id)compoundNameAndEmailForGroupMembership:(id)arg1; +- (BOOL)isMe; +- (BOOL)hasEmailAddress:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABRecord-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABRecord-MailCoreAdditions.h new file mode 100644 index 00000000..3bb133e9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/ABRecord-MailCoreAdditions.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ABRecord.h" + +@interface ABRecord (MailCoreAdditions) +- (BOOL)isGroup; +- (id)compoundNameAndEmailForEmail:(id)arg1; +- (id)compoundNameAndEmail; +- (id)compoundName; +- (id)allEmailAddresses; +- (id)email; +- (long long)fullNameCompare:(id)arg1; +- (id)_fullName; +- (id)extension; +- (id)nickname; +- (id)middleName; +- (id)lastName; +- (id)firstName; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/CDStructures.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/CDStructures.h new file mode 100644 index 00000000..b4f07c4b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/CDStructures.h @@ -0,0 +1,80 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#pragma mark Named Structures + +struct sasl_callback { + unsigned long long _field1; + void *_field2; + void *_field3; +}; + +struct sasl_interact { + unsigned long long _field1; + char *_field2; + char *_field3; + char *_field4; + void *_field5; + unsigned int _field6; +}; + +struct sasl_secret { + unsigned long long _field1; + unsigned char _field2[1]; +}; + +#pragma mark Typedef'd Structures + +typedef struct { +// id _field1; + unsigned int :1; + unsigned int :1; + unsigned int :1; + unsigned int :2; +} CDStruct_3441fd00; + +#ifndef CDSTRUCT_ACCEFCCD +typedef struct { + unsigned int colorHasBeenEvaluated:1; + unsigned int colorWasSetManually:1; + unsigned int redColor:8; + unsigned int greenColor:8; + unsigned int blueColor:8; + unsigned int loadingBody:1; + unsigned int firstUnused:2; + unsigned int isMarkedForOverwrite:1; + unsigned int unused:2; +} CDStruct_accefccd; +#define CDSTRUCT_ACCEFCCD 1 +#endif + +typedef struct { + unsigned int reserved:27; + unsigned int isPartial:1; + unsigned int partsHaveBeenCached:1; + unsigned int hasTemporaryUid:1; + unsigned int isHTML:1; + unsigned int isRich:1; +} CDStruct_07ba05d6; + +typedef struct { + long long count; + unsigned long long size; +} CDStruct_d3e19d9e; + +typedef struct { + unsigned short buffer[64]; + struct __CFString *theString; + unsigned short *directUniCharBuffer; + char *directCStringBuffer; + struct { + long long location; + long long length; + } rangeToBuffer; + long long bufferedRangeStart; + long long bufferedRangeEnd; +} CDStruct_2ada2998; + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/EWSAutodiscoverBindingDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/EWSAutodiscoverBindingDelegate-Protocol.h new file mode 100644 index 00000000..a5b10f12 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/EWSAutodiscoverBindingDelegate-Protocol.h @@ -0,0 +1,21 @@ +/* + * 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" + +@protocol EWSAutodiscoverBindingDelegate + +@optional +- (void)autodiscoverBinding:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 canAuthenticateAgainstProtectionSpace:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didFailWithError:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didFinishWithResponse:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 willSendRequestForAuthenticationChallenge:(id)arg2; +- (BOOL)autodiscoverBindingShouldUseCredentialStorage:(id)arg1; +- (void)autodiscoverBinding:(id)arg1 didReceiveCertificateError:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/IADataPluginDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/IADataPluginDelegate-Protocol.h new file mode 100644 index 00000000..efb49cbf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/IADataPluginDelegate-Protocol.h @@ -0,0 +1,21 @@ +/* + * 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" + +@protocol IADataPluginDelegate +- (BOOL)plugin:(id)arg1 handleCertificateError:(id)arg2; +- (void)plugin:(id)arg1 didChangeAccountUID:(id)arg2; +- (void)plugin:(id)arg1 didDeleteAccountUID:(id)arg2; +- (void)plugin:(id)arg1 didCreateAccountUID:(id)arg2; +- (void)plugin:(id)arg1 accountSetupDidFinish:(id)arg2 withResult:(id)arg3; +- (void)plugin:(id)arg1 accountSetupDidFail:(id)arg2 withError:(id)arg3; +- (void)plugin:(id)arg1 accountSetupUpdate:(id)arg2 withStatus:(long long)arg3; + +@optional +- (void)plugin:(id)arg1 aosAccountMigrationFinished:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAccount-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAccount-Protocol.h new file mode 100644 index 00000000..6422ea9e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAccount-Protocol.h @@ -0,0 +1,53 @@ +/* + * 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" + +@class MCAuthScheme, NSArray, NSString, NSURL; + +@protocol MCAccount ++ (void)saveAccountInfoToDefaults; ++ (id)accountTypeString; +@property(readonly, copy) NSString *subscriptionURLLabel; +@property(readonly) NSURL *subscriptionURL; +@property BOOL usesSSL; +@property BOOL shouldUseAuthentication; +@property(readonly, nonatomic) BOOL requiresAuthentication; +@property(readonly, copy) NSString *googleClientToken; +@property(readonly, copy) NSString *appleAuthenticationToken; +@property(readonly, copy) NSString *applePersonID; +@property(copy) NSString *password; +@property(copy) NSString *username; +@property(retain) MCAuthScheme *preferredAuthScheme; +@property long long securityLayerType; +@property(readonly, copy, nonatomic) NSArray *standardSSLPorts; +@property(readonly, copy, nonatomic) NSArray *standardPorts; +@property long long portNumber; +@property(copy) NSString *hostname; +@property(copy) NSString *canonicalEmailAddress; +@property BOOL allowInsecureAuthentication; +@property BOOL configureDynamically; +@property(readonly, copy, nonatomic) NSString *saslProfileName; +@property(copy) NSString *displayName; +@property(readonly, copy) NSString *identifier; +@property(readonly, copy) NSString *accountTypeString; +- (BOOL)canAuthenticateWithScheme:(id)arg1; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (void)respondToHostBecomingReachable; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (BOOL)autodiscoverSettings:(id *)arg1; +- (void)updateFromSuccessfulConnectionPortNumber:(long long)arg1 securityLayerType:(long long)arg2; +- (void)setSessionPassword:(id)arg1; +- (id)sessionPassword; +- (void)setTLSIdentity:(struct OpaqueSecIdentityRef *)arg1; +- (struct OpaqueSecIdentityRef *)copyTLSIdentity; + +@optional +@property(copy) NSString *externalHostname; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAccountProxy.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAccountProxy.h new file mode 100644 index 00000000..2a5cb021 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAccountProxy.h @@ -0,0 +1,46 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MCMailboxProxy, NSError, NSOperationQueue, NSString; + +@interface MCAccountProxy : MCManagedObjectProxy +{ + int _syncCount; + long long _accountState; + NSError *_webAuthenticationError; + NSString *_certificateHostname; + NSError *_certificateError; + NSOperationQueue *_remoteTaskQueue; + NSOperationQueue *_remoteFetchQueue; +} + ++ (id)keyPathsForValuesAffectingIsSyncing; +@property(readonly, nonatomic) NSOperationQueue *remoteFetchQueue; // @synthesize remoteFetchQueue=_remoteFetchQueue; +@property(readonly, nonatomic) NSOperationQueue *remoteTaskQueue; // @synthesize remoteTaskQueue=_remoteTaskQueue; +@property(retain) NSError *certificateError; // @synthesize certificateError=_certificateError; +@property(copy) NSString *certificateHostname; // @synthesize certificateHostname=_certificateHostname; +@property(retain) NSError *webAuthenticationError; // @synthesize webAuthenticationError=_webAuthenticationError; +@property long long accountState; // @synthesize accountState=_accountState; +- (void).cxx_destruct; +- (void)setHighPriorityMailbox:(id)arg1; +@property(readonly, nonatomic) MCMailboxProxy *defaultHighPriorityMailbox; +@property BOOL enabled; +@property(readonly) NSString *googleClientToken; +@property BOOL allowInsecureAuthentication; +@property(copy) NSString *username; +@property(copy) NSString *canonicalEmailAddress; +@property(copy) NSString *displayName; +@property(readonly) BOOL isSyncing; +- (void)syncFinished; +- (void)syncStarted; +@property(readonly, copy) NSString *identifier; +- (void)invalidate; +- (id)initWithManagedObject:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAccountSetupValidator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAccountSetupValidator.h new file mode 100644 index 00000000..4c790f30 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAccountSetupValidator.h @@ -0,0 +1,48 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityMonitor, MCConnection, NSString; + +@interface MCAccountSetupValidator : NSObject +{ + MCConnection *_connection; + id _account; + MCActivityMonitor *_validationActivity; + id _delegate; + NSString *_password; +} + ++ (id)validatorWithAccount:(id)arg1 accountInfo:(id)arg2 delegate:(id)arg3; +@property(retain) MCConnection *connection; // @synthesize connection=_connection; +@property(copy) NSString *password; // @synthesize password=_password; +@property __weak id delegate; // @synthesize delegate=_delegate; +@property(retain) MCActivityMonitor *validationActivity; // @synthesize validationActivity=_validationActivity; +@property(retain) id account; // @synthesize account=_account; +- (void).cxx_destruct; +- (BOOL)_attemptAuthentication; +- (BOOL)_attemptInitialConnection; +- (void)_updateState:(long long)arg1; +- (void)_validate; +- (void)_sendValidatorDidFinish; +- (void)_sendValidatorDidFail; +- (void)_sendValidatorDidChangeState:(id)arg1; +- (void)cancel; +@property(readonly, copy) NSString *description; +- (void)dealloc; +- (id)init; +- (id)_initWithAccount:(id)arg1 accountInfo:(id)arg2 delegate:(id)arg3; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAccountSetupValidatorDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAccountSetupValidatorDelegate-Protocol.h new file mode 100644 index 00000000..e1f3355e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAccountSetupValidatorDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MCAccountSetupValidatorDelegate +- (id)delegateApplicationName; +- (void)validatorDidFinish:(id)arg1; +- (void)validatorDidFail:(id)arg1; +- (void)validator:(id)arg1 didChangeState:(long long)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCActivityAggregate.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCActivityAggregate.h new file mode 100644 index 00000000..1dc8bbed --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCActivityAggregate.h @@ -0,0 +1,75 @@ +/* + * 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" + +@class NSArrayController, NSDate, NSString; + +@interface MCActivityAggregate : NSObject +{ + NSArrayController *_monitorController; + unsigned long long _baseItemsDone; + unsigned long long _baseItemsTotal; + double _baseUnifiedDone; + BOOL _canCancel; + unsigned long long _itemsDone; + unsigned long long _itemsTotal; + double _unifiedDone; + double _progress; + BOOL _isProgressing; + double _estimatedTimeRemaining; + BOOL _isResetting; + long long _activityType; + NSString *_bkItemDescription; + NSString *_status; + double _startTime; + NSDate *_lastUpdateTimestamp; + NSString *_nameSingular; + NSString *_namePlural; +} + ++ (id)keyPathsForValuesAffectingIsProgressIndeterminate; ++ (BOOL)automaticallyNotifiesObserversOfEstimatedTimeRemaining; ++ (BOOL)automaticallyNotifiesObserversOfProgress; ++ (BOOL)automaticallyNotifiesObserversOfIsProgressing; ++ (BOOL)automaticallyNotifiesObserversOfCanCancel; +@property(copy) NSString *namePlural; // @synthesize namePlural=_namePlural; +@property(copy) NSString *nameSingular; // @synthesize nameSingular=_nameSingular; +@property(retain) NSDate *lastUpdateTimestamp; // @synthesize lastUpdateTimestamp=_lastUpdateTimestamp; +@property(nonatomic) double startTime; // @synthesize startTime=_startTime; +@property(copy) NSString *status; // @synthesize status=_status; +@property BOOL isResetting; // @synthesize isResetting=_isResetting; +@property(copy) NSString *bkItemDescription; // @synthesize bkItemDescription=_bkItemDescription; +@property long long activityType; // @synthesize activityType=_activityType; +- (void).cxx_destruct; +- (void)signalCancel:(id)arg1; +- (id)description; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_processMonitorUpdate; +- (void)_update; +- (void)_updateTimeBasedValues; +- (void)updateUnitBasedValues; +- (void)_updateAggregateValues; +- (void)_updateAggregateIsProgressing; +- (void)removeActivityMonitor:(id)arg1; +- (void)addActivityMonitor:(id)arg1; +- (void)reset; +- (void)_updateStatus; +@property(readonly, nonatomic) BOOL isProgressIndeterminate; +@property(nonatomic) double estimatedTimeRemaining; +@property(nonatomic) double progress; +@property(nonatomic) BOOL isProgressing; +@property(nonatomic) BOOL canCancel; +@property double unifiedDone; +@property unsigned long long itemsTotal; +@property unsigned long long itemsDone; +- (unsigned long long)currentItem; +@property(readonly, nonatomic) NSArrayController *monitorController; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCActivityAggregator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCActivityAggregator.h new file mode 100644 index 00000000..babe3ae6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCActivityAggregator.h @@ -0,0 +1,29 @@ +/* + * 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" + +@class MCActivityAggregate; + +@interface MCActivityAggregator : NSObject +{ + MCActivityAggregate *_in; + MCActivityAggregate *_out; + MCActivityAggregate *_save; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) MCActivityAggregate *save; // @synthesize save=_save; +@property(readonly, nonatomic) MCActivityAggregate *out; // @synthesize out=_out; +@property(readonly, nonatomic) MCActivityAggregate *in; // @synthesize in=_in; +- (void).cxx_destruct; +- (void)activityMonitor:(id)arg1 didChangeTypeFrom:(long long)arg2; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCActivityMonitor.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCActivityMonitor.h new file mode 100644 index 00000000..0237f1c0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCActivityMonitor.h @@ -0,0 +1,131 @@ +/* + * 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 "NSMachPortDelegate.h" + +@class MCError, NSInvocation, NSMachPort, NSMutableSet, NSString; + +@interface MCActivityMonitor : NSObject +{ + NSString *_taskName; + NSString *_statusMessage; + NSString *_descriptionString; + NSMutableSet *_subMonitors; + NSMachPort *_cancelPort; + id _delegate; + id _target; + double _doneValue; + double _previousDoneness; + double _itemValue; + double _itemMaxValue; + double _startTime; + double _itemLastNotifiedTime; + double _percentDone; + long long _shouldUnifyDoneness; + long long _currentProgressStage; + long long _numberOfProgressStages; + long long _key; + unsigned long long _itemsDone; + unsigned long long _itemsTotal; + unsigned long long _itemFudgeFactor; + int _changeCount; + long long _activityType; + unsigned char _priority; + BOOL _canCancel; + BOOL _shouldCancel; + BOOL _isActive; + BOOL _isProgressing; + BOOL _shouldPromptUserOnTermination; + NSInvocation *_cancelInvocation; + NSString *_itemDescription; + double _itemMinValue; + MCError *_error; +} + ++ (BOOL)automaticallyNotifiesObserversOfIsProgressing; ++ (id)currentMonitor; ++ (id)currentMonitorIfExists; ++ (void)setCurrentMonitor:(id)arg1; ++ (BOOL)automaticallyNotifiesObserversOfCanBeCancelled; ++ (BOOL)automaticallyNotifiesObserversOfPercentDone; ++ (BOOL)automaticallyNotifiesObserversOfStatusMessage; ++ (double)determinateProgress; +@property(retain) MCError *error; // @synthesize error=_error; +@property(nonatomic) double itemMinValue; // @synthesize itemMinValue=_itemMinValue; +@property(copy) NSString *itemDescription; // @synthesize itemDescription=_itemDescription; +@property(retain) NSInvocation *cancelInvocation; // @synthesize cancelInvocation=_cancelInvocation; +- (void).cxx_destruct; +- (void)setShouldPromptUserOnTermination; +- (BOOL)shouldPromptUserOnTermination; +- (void)resetActivityType; +- (void)markCompleted:(BOOL)arg1; +- (void)incrementItemsTotal:(unsigned long long)arg1; +- (void)incrementItemsDone:(unsigned long long)arg1; +- (void)incrementItemValue:(double)arg1; +@property(nonatomic) unsigned long long itemsTotal; +@property(nonatomic) unsigned long long itemsDone; +@property(nonatomic) double itemValue; +- (void)resetItemValue; +- (void)setItem:(id)arg1; +- (void)setItemIndeterminateValue; +@property(nonatomic) double itemMaxValue; +@property(nonatomic) BOOL isProgressing; +- (void)setItemFudgeFactor:(unsigned long long)arg1; +- (void)setActivityType:(long long)arg1; +- (long long)activityType; +@property(nonatomic) double doneValue; +- (void)updateDoneValue; +- (id)cancelPort; +- (void)_setCancelPort:(id)arg1; +- (void)setPercentDone:(double)arg1 withKey:(long long)arg2; +- (void)setStatusMessage:(id)arg1 withKey:(long long)arg2; +- (void)setStatusMessage:(id)arg1 percentDone:(double)arg2 withKey:(long long)arg3; +- (void)relinquishExclusiveAccessKey:(long long)arg1; +- (long long)acquireExclusiveAccessKey; +- (void)cancel; +- (void)removeSubMonitor:(id)arg1; +- (void)addSubMonitor:(id)arg1; +@property(nonatomic) BOOL shouldCancel; +@property(nonatomic) BOOL canBeCancelled; +- (id)activityTargets; +- (void)setPrimaryTarget:(id)arg1; +- (void)removeActivityTarget:(id)arg1; +- (void)addActivityTarget:(id)arg1; +- (void)setActivityTarget:(id)arg1; +- (id)activityTarget; +- (void)setTaskName:(id)arg1; +- (id)taskName; +@property(readonly, copy) NSString *description; +- (id)taskDescriptionString; +- (id)activityDescription; +- (void)setPriority:(unsigned char)arg1; +- (unsigned char)priority; +- (void)beginProgressFor:(long long)arg1; +- (double)unifiedFractionDone; +- (void)setStatusMessage:(id)arg1 percentDone:(double)arg2; +- (void)setPercentDone:(double)arg1; +- (double)percentDone; +- (void)setStatusMessage:(id)arg1; +- (id)statusMessage; +- (int)changeCount; +- (void)_didChange; +- (void)postActivityFinished; +- (void)handlePortMessage:(id)arg1; +- (void)postActivityStarting; +- (void)setDelegate:(id)arg1; +- (BOOL)isActive; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCActivityTarget-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCActivityTarget-Protocol.h new file mode 100644 index 00000000..bc00a4ed --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCActivityTarget-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MCActivityTarget + +@optional +- (BOOL)isSmartMailbox; +- (id)displayName; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAddressManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAddressManager.h new file mode 100644 index 00000000..fb01839b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAddressManager.h @@ -0,0 +1,25 @@ +/* + * 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" + +@interface MCAddressManager : NSObject +{ +} + ++ (id)myFullName; ++ (id)addAddressToAddressBook:(id)arg1; ++ (id)addEmailAddressToCardMatchingFirstAndLastNameFromFormattedAddress:(id)arg1; ++ (id)_addressBookRecordsForFirstName:(id)arg1 lastName:(id)arg2; ++ (id)emailAddressesFromGroup:(id)arg1; ++ (void)_addEmailsFromGroup:(id)arg1 toDictionary:(id)arg2; ++ (id)groupsMatchingString:(id)arg1; ++ (id)myEmailAddress; ++ (id)replaceGroupsWithUndisclosedRecipients:(id)arg1; ++ (id)expandGroups:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCApopAuthScheme.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCApopAuthScheme.h new file mode 100644 index 00000000..ad8ab51e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCApopAuthScheme.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCApopAuthScheme : MCAuthScheme +{ +} + ++ (id)apopAuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAppleTokenAuthScheme.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAppleTokenAuthScheme.h new file mode 100644 index 00000000..27e99797 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAppleTokenAuthScheme.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCAppleTokenAuthScheme : MCAuthScheme +{ +} + ++ (id)appleTokenAuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)supportedSaslMechanisms; +- (BOOL)requiresPassword; +- (BOOL)requiresUsername; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCArchiveFileWrapper.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCArchiveFileWrapper.h new file mode 100644 index 00000000..fb80e4f0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCArchiveFileWrapper.h @@ -0,0 +1,46 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@class NSData; + +@interface MCArchiveFileWrapper : NSFileWrapper +{ + NSFileWrapper *_realFileWrapper; + NSData *_archiveData; + long long _archiveType; +} + +@property(nonatomic) long long archiveType; // @synthesize archiveType=_archiveType; +@property(retain, nonatomic) NSData *archiveData; // @synthesize archiveData=_archiveData; +- (void).cxx_destruct; +- (void)getCompressedData:(id *)arg1 archiveType:(long long *)arg2; +- (id)preferredFilename; +- (id)addRegularFileWithContents:(id)arg1 preferredFilename:(id)arg2; +- (id)keyForFileWrapper:(id)arg1; +- (id)fileWrappers; +- (void)removeFileWrapper:(id)arg1; +- (id)addFileWrapper:(id)arg1; +- (id)serializedRepresentation; +- (BOOL)isSymbolicLink; +- (BOOL)isDirectory; +- (BOOL)isRegularFile; +- (unsigned long long)approximateSize; +- (BOOL)writeToURL:(id)arg1 options:(unsigned long long)arg2 originalContentsURL:(id)arg3 error:(id *)arg4; +- (void)_archiveFileWrapperCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithSerializedRepresentation:(id)arg1; +- (id)initSymbolicLinkWithDestinationURL:(id)arg1; +- (id)initRegularFileWithContents:(id)arg1; +- (id)initWithURL:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (id)initWithURL:(id)arg1 options:(unsigned long long)arg2 compressionLevel:(long long)arg3 error:(id *)arg4; +- (id)initDirectoryWithFileWrappers:(id)arg1; +- (id)initWithData:(id)arg1 archiveType:(long long)arg2; +@property(readonly, nonatomic) NSFileWrapper *realFileWrapper; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAttachment.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAttachment.h new file mode 100644 index 00000000..dcbd8600 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAttachment.h @@ -0,0 +1,177 @@ +/* + * 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 "NSURLSessionDownloadDelegate.h" + +@class MCMimeBody, MCMimePart, NSArray, NSBlockOperation, NSData, NSDate, NSDictionary, NSError, NSFileWrapper, NSImage, NSNumber, NSPort, NSProgress, NSString, NSURL, StationeryCompositeImage; + +@interface MCAttachment : NSObject +{ + unsigned long long _approximateSize; + NSImage *_iconImage; + MCMimePart *_mimePart; + id _currentDataLock; + NSData *_currentData; + NSData *_originalData; + id _archiveFileWrapperLock; + BOOL _isMailDropImageThumbnail; + BOOL _isAutoArchiveAttachment; + BOOL _hasResourceForkData; + BOOL _isCalendarInvitation; + BOOL _isUnreferencedAttachment; + BOOL _shouldHideExtension; + BOOL _isMailDropImageArchive; + BOOL _isMailDropIndividualImage; + unsigned short _finderFlags; + unsigned int _creator; + unsigned int _type; + NSString *_contentID; + NSProgress *_downloadProgress; + NSString *_extension; + NSURL *_remoteURL; + NSNumber *_filePermissions; + NSBlockOperation *_fileReadingOperation; + NSNumber *_fileSize; + NSFileWrapper *_fileWrapper; + NSString *_filename; + NSString *_filenameForSaving; + long long _imageByteCountFromHeaders; + NSString *_mailSpecialHandlingType; + NSString *_messageID; + MCMimeBody *_mimeBody; + NSString *_mimeType; + NSString *_originalFilename; + NSDictionary *_quarantineProperties; + NSString *_savedPath; + StationeryCompositeImage *_stationeryCompositeImage; + NSArray *_whereFroms; + NSString *_cloudKitRecordName; + NSURL *_downloadURL; + NSDate *_downloadURLExpiration; + NSURL *_downloadDirectory; + NSPort *_downloadPort; + NSError *_downloadError; + struct CGSize _imageSizeFromHeaders; + struct CGSize _resizedImageSize; +} + ++ (id)_backgroundFileReadingQueue; ++ (BOOL)automaticallyNotifiesObserversOfOriginalData; +@property(nonatomic) BOOL isMailDropIndividualImage; // @synthesize isMailDropIndividualImage=_isMailDropIndividualImage; +@property(nonatomic) struct CGSize resizedImageSize; // @synthesize resizedImageSize=_resizedImageSize; +@property(nonatomic) BOOL isMailDropImageArchive; // @synthesize isMailDropImageArchive=_isMailDropImageArchive; +@property(retain, nonatomic) NSError *downloadError; // @synthesize downloadError=_downloadError; +@property(readonly, nonatomic) NSPort *downloadPort; // @synthesize downloadPort=_downloadPort; +@property(retain, nonatomic) NSURL *downloadDirectory; // @synthesize downloadDirectory=_downloadDirectory; +@property(retain, nonatomic) NSDate *downloadURLExpiration; // @synthesize downloadURLExpiration=_downloadURLExpiration; +@property(retain, nonatomic) NSURL *downloadURL; // @synthesize downloadURL=_downloadURL; +@property(copy, nonatomic) NSString *cloudKitRecordName; // @synthesize cloudKitRecordName=_cloudKitRecordName; +@property(copy, nonatomic) NSArray *whereFroms; // @synthesize whereFroms=_whereFroms; +@property(nonatomic) unsigned int type; // @synthesize type=_type; +@property(retain, nonatomic) StationeryCompositeImage *stationeryCompositeImage; // @synthesize stationeryCompositeImage=_stationeryCompositeImage; +@property(nonatomic) BOOL shouldHideExtension; // @synthesize shouldHideExtension=_shouldHideExtension; +@property(copy, nonatomic) NSString *savedPath; // @synthesize savedPath=_savedPath; +@property(copy, nonatomic) NSDictionary *quarantineProperties; // @synthesize quarantineProperties=_quarantineProperties; +@property(copy, nonatomic) NSString *originalFilename; // @synthesize originalFilename=_originalFilename; +@property(copy, nonatomic) NSString *mimeType; // @synthesize mimeType=_mimeType; +@property(retain, nonatomic) MCMimeBody *mimeBody; // @synthesize mimeBody=_mimeBody; +@property(copy, nonatomic) NSString *messageID; // @synthesize messageID=_messageID; +@property(copy, nonatomic) NSString *mailSpecialHandlingType; // @synthesize mailSpecialHandlingType=_mailSpecialHandlingType; +@property(nonatomic) BOOL isUnreferencedAttachment; // @synthesize isUnreferencedAttachment=_isUnreferencedAttachment; +@property(nonatomic) BOOL isCalendarInvitation; // @synthesize isCalendarInvitation=_isCalendarInvitation; +@property(nonatomic) struct CGSize imageSizeFromHeaders; // @synthesize imageSizeFromHeaders=_imageSizeFromHeaders; +@property(nonatomic) long long imageByteCountFromHeaders; // @synthesize imageByteCountFromHeaders=_imageByteCountFromHeaders; +@property(nonatomic) BOOL hasResourceForkData; // @synthesize hasResourceForkData=_hasResourceForkData; +@property(nonatomic) unsigned short finderFlags; // @synthesize finderFlags=_finderFlags; +@property(retain, nonatomic) NSString *filenameForSaving; // @synthesize filenameForSaving=_filenameForSaving; +@property(copy, nonatomic) NSString *filename; // @synthesize filename=_filename; +@property(retain, nonatomic) NSFileWrapper *fileWrapper; // @synthesize fileWrapper=_fileWrapper; +@property(retain, nonatomic) NSNumber *fileSize; // @synthesize fileSize=_fileSize; +@property(retain, nonatomic) NSBlockOperation *fileReadingOperation; // @synthesize fileReadingOperation=_fileReadingOperation; +@property(retain, nonatomic) NSNumber *filePermissions; // @synthesize filePermissions=_filePermissions; +@property(retain, nonatomic) NSURL *remoteURL; // @synthesize remoteURL=_remoteURL; +@property(copy, nonatomic) NSString *extension; // @synthesize extension=_extension; +@property(retain, nonatomic) NSProgress *downloadProgress; // @synthesize downloadProgress=_downloadProgress; +@property(nonatomic) unsigned int creator; // @synthesize creator=_creator; +@property(copy, nonatomic) NSString *contentID; // @synthesize contentID=_contentID; +- (void).cxx_destruct; +- (void)_finishedCoordinatedFileReadingWithURL:(id)arg1; +- (BOOL)hasPendingBackgroundRead; +- (void)beginBackgroundFileReading; +- (id)getCompressedDataAndArchiveType:(long long *)arg1 error:(id *)arg2; +@property(readonly, copy) NSString *description; +- (id)symbolicLinkDestinationForFileWrapper; +- (id)createTemporaryFile; +- (BOOL)createEmptyAttachmentAtPath:(id)arg1; +- (void)_setupFileWrapper:(id)arg1; +- (id)_freshFileWrapper; +- (id)fileWrapperForFetchLevel:(unsigned long long)arg1; +- (id)appleDoubleDataWithFilename:(const char *)arg1 length:(unsigned long long)arg2; +- (id)appleSingleDataWithFilename:(const char *)arg1 length:(unsigned long long)arg2; +- (BOOL)couldConfuseWindowsClients; +- (void)takeNewDataFromPath:(id)arg1; +@property(nonatomic) BOOL isPartOfStationery; +- (BOOL)isDirectory; +- (id)remoteAccessMimeType; +- (BOOL)isRemotelyAccessed; +- (id)_dataWithCleanedImageMetadata; +- (BOOL)_hasPrivateImageMetadata; +- (id)_privateImageMetadataDescriptors; +- (void)isImage:(char *)arg1 isPDF:(char *)arg2 bestMimeType:(id *)arg3; +- (BOOL)isPDF; +- (BOOL)isImage; +- (BOOL)isStationeryCompositeImage; +- (BOOL)isVideoOrAudio; +@property(readonly, copy, nonatomic) NSString *typeIdentifier; +- (id)toolTip; +- (void)discardIconImage; +@property(retain, nonatomic) NSImage *iconImage; +- (id)filenameWithoutHiddenExtension; +@property(nonatomic) unsigned long long approximateSize; +- (unsigned long long)approximateSizeOfWrapper; +- (BOOL)_isExpired; +- (BOOL)isDataDownloaded; +- (void)setFromHeadersImageSize:(struct CGSize)arg1 byteCount:(long long)arg2; +- (void)_downloadFinished; +- (void)URLSession:(id)arg1 task:(id)arg2 didCompleteWithError:(id)arg3; +- (void)URLSession:(id)arg1 downloadTask:(id)arg2 didWriteData:(long long)arg3 totalBytesWritten:(long long)arg4 totalBytesExpectedToWrite:(long long)arg5; +- (void)URLSession:(id)arg1 downloadTask:(id)arg2 didFinishDownloadingToURL:(id)arg3; +- (id)dataForFetchLevel:(unsigned long long)arg1; +- (void)_takeInfoFromMessageAttachment:(id)arg1 saveOriginalData:(BOOL)arg2 cleanImageMetadata:(BOOL)arg3; +- (void)_configureWithMimePart; +@property(nonatomic) BOOL isAutoArchiveAttachment; +@property(nonatomic) BOOL isMailDropImageThumbnail; +@property(retain, nonatomic) MCMimePart *mimePart; +- (void)setSizeForResizedImage:(struct CGSize)arg1; +- (void)setFileNameForResizedImage:(id)arg1; +- (BOOL)isFullSize; +- (void)revertToOriginalData; +- (void)setDataForResizedImage:(id)arg1; +- (BOOL)isScalable; +- (void)_setCurrentDataIfNil:(id)arg1; +@property(retain, nonatomic) NSData *currentData; +@property(retain, nonatomic) NSData *originalData; +- (id)attachmentWithCurrentData; +- (void)dealloc; +- (void)_mcAttachmentCommonInit; +- (id)initWithHeaderURL:(id)arg1; +- (id)init; +- (id)initWithFileURL:(id)arg1; +- (id)initWithStationeryCompositeImage:(id)arg1; +- (id)initWithRemoteURL:(id)arg1; +- (id)initWithFileWrapper:(id)arg1; +- (id)initWithMailInternalData:(id)arg1; +- (id)initWithData:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAttachmentWrappingTextAttachment.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAttachmentWrappingTextAttachment.h new file mode 100644 index 00000000..31b05d27 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAttachmentWrappingTextAttachment.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextAttachment.h" + +@class MCAttachment; + +@interface MCAttachmentWrappingTextAttachment : NSTextAttachment +{ + MCAttachment *_messageAttachment; +} + +@property(readonly, nonatomic) MCAttachment *messageAttachment; // @synthesize messageAttachment=_messageAttachment; +- (void).cxx_destruct; +- (id)initWithFileWrapper:(id)arg1; +- (id)initWithAttachment:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAuthScheme.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAuthScheme.h new file mode 100644 index 00000000..20e1fb66 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCAuthScheme.h @@ -0,0 +1,26 @@ +/* + * 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" + +@class NSSet; + +@interface MCAuthScheme : NSObject +{ +} + ++ (id)schemeWithApplescriptScheme:(unsigned int)arg1; ++ (id)schemeWithInternetAccountsScheme:(id)arg1; ++ (id)schemeWithAccountInfo:(id)arg1; ++ (id)schemeWithName:(id)arg1; ++ (id)knownSchemes; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, copy) NSSet *supportedSaslMechanisms; +- (BOOL)requiresPassword; +- (BOOL)requiresUsername; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCByteSet.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCByteSet.h new file mode 100644 index 00000000..c855aa99 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCByteSet.h @@ -0,0 +1,30 @@ +/* + * 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 "NSCopying.h" +#import "NSMutableCopying.h" + +@interface MCByteSet : NSObject +{ + unsigned char _bitString[32]; +} + ++ (id)nonASCIIByteSet; ++ (id)ASCIIByteSet; ++ (id)asciiWhitespaceSet; +- (BOOL)byteIsMember:(unsigned char)arg1; +- (id)mutableCopyWithZone:(struct _NSZone *)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)description; +- (id)initWithCString:(const char *)arg1; +- (id)init; +- (id)initWithBytes:(const void *)arg1 length:(unsigned long long)arg2; +- (id)initWithRange:(struct _NSRange)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCCIDURLProtocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCCIDURLProtocol.h new file mode 100644 index 00000000..87462fe6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCCIDURLProtocol.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSURLProtocol.h" + +@interface MCCIDURLProtocol : NSURLProtocol +{ +} + ++ (void)unregisterDataProvider:(id)arg1; ++ (void)registerDataProvider:(id)arg1; ++ (BOOL)requestIsCacheEquivalent:(id)arg1 toRequest:(id)arg2; ++ (id)canonicalRequestForRequest:(id)arg1; ++ (BOOL)canInitWithRequest:(id)arg1; +- (void)stopLoading; +- (void)startLoading; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCChanging-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCChanging-Protocol.h new file mode 100644 index 00000000..b119c78e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCChanging-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MCChanging +- (BOOL)endChanging:(BOOL)arg1 immediately:(BOOL)arg2; +- (void)beginChanging; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCConnection.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCConnection.h new file mode 100644 index 00000000..d0a42bdc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCConnection.h @@ -0,0 +1,106 @@ +/* + * 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 "MCConnectionLogging.h" + +@class MCSaslClient, MCSocket, NSData, NSFileHandle, NSString; + +@interface MCConnection : NSObject +{ + id _accountLock; + id _account; + BOOL _isBackground; + void *_buffer; + long long _bufferRemainingBytes; + unsigned long long _bufferStart; + unsigned long long _bufferLength; + NSData *_logHeader; + MCSaslClient *_saslClient; + MCSocket *_socket; + double _connectTimeout; + double _readWriteTimeout; + NSFileHandle *_logFile; +} + ++ (BOOL)shouldLogActivityForHost:(id)arg1 port:(long long)arg2; ++ (void)setLogActivityToFile:(BOOL)arg1; ++ (BOOL)logActivityToFile; ++ (void)setLogActivityOnHosts:(id)arg1; ++ (id)logActivityOnHosts; ++ (void)setLogActivityOnPorts:(id)arg1; ++ (id)logActivityOnPorts; ++ (void)setLogAllSocketActivity:(BOOL)arg1; ++ (BOOL)logAllSocketActivity; ++ (void)setLoggingDelegate:(id)arg1; ++ (id)loggingDelegate; ++ (BOOL)_defaultsToBackground; ++ (void)initialize; +@property(retain) NSFileHandle *logFile; // @synthesize logFile=_logFile; +@property BOOL isBackground; // @synthesize isBackground=_isBackground; +@property(nonatomic) double readWriteTimeout; // @synthesize readWriteTimeout=_readWriteTimeout; +@property(nonatomic) double connectTimeout; // @synthesize connectTimeout=_connectTimeout; +@property(retain, nonatomic) MCSocket *socket; // @synthesize socket=_socket; +@property(retain, nonatomic) MCSaslClient *saslClient; // @synthesize saslClient=_saslClient; +@property(retain, nonatomic) NSData *logHeader; // @synthesize logHeader=_logHeader; +@property(nonatomic) unsigned long long bufferLength; // @synthesize bufferLength=_bufferLength; +@property(nonatomic) unsigned long long bufferStart; // @synthesize bufferStart=_bufferStart; +@property(nonatomic) long long bufferRemainingBytes; // @synthesize bufferRemainingBytes=_bufferRemainingBytes; +@property(nonatomic) void *buffer; // @synthesize buffer=_buffer; +- (void).cxx_destruct; +- (void)_resetLogHeaderWithPort:(long long)arg1; +- (void)_logToFileDidChange:(id)arg1; +- (void)_loggingDidChange:(id)arg1; +- (void)_logEventWithPrefix:(const char *)arg1 bytes:(const void *)arg2 length:(unsigned long long)arg3 maskStartIndex:(unsigned long long)arg4 maskLength:(unsigned long long)arg5; +- (void)flushLog; +- (void)logBytes:(void *)arg1 length:(unsigned long long)arg2; +- (void)logData:(id)arg1 range:(struct _NSRange)arg2; +- (void)logData:(id)arg1; +- (void)logString:(id)arg1; +- (BOOL)_isSSLError:(id)arg1; +- (void)_setupWriteErrorForMonitor; +- (void)_setupReadErrorForMonitor; +- (void)_setupSSLErrorForMonitorWithHostname:(id)arg1; +- (void)_setupConnectionErrorForMonitorWithPort:(long long)arg1 usingSSL:(BOOL)arg2; +- (BOOL)_writeData:(id)arg1 dontLogBytesInRange:(struct _NSRange)arg2 error:(id *)arg3; +- (long long)_readBytesFromSocketIntoBuffer:(void *)arg1 amount:(unsigned long long)arg2 requireAllBytes:(BOOL)arg3 error:(id *)arg4; +- (BOOL)_fillBuffer:(id *)arg1; +- (BOOL)_readBytesIntoData:(id)arg1 desiredLength:(long long)arg2 error:(id *)arg3; +- (BOOL)_readLineIntoData:(id)arg1 error:(id *)arg2; +- (BOOL)_hasBytesAvailable; +- (void)disconnect; +- (void)quit; +- (BOOL)isValid; +- (void)discoverAccountSettings; +- (BOOL)_supportsPlainTextSchemes; +- (id)_authenticateWithPlainTextSchemes; +- (id)_authenticateWithNonPlainTextSchemes; +- (BOOL)_authenticateWithSaslClient:(id)arg1; +- (BOOL)_authenticateWithAuthenticationMechanisms:(id)arg1 allowPlainText:(BOOL)arg2; +- (BOOL)_shouldKeepTryingAfterAuthenticationFailure:(id *)arg1; +- (BOOL)authenticate; +- (BOOL)_completeConnectionWithResult:(BOOL)arg1; +- (void)_setupConnection; +- (BOOL)_startTLS; +- (void)_setupSocketWithSecurityLayer:(long long)arg1; +- (id)_newConnectionAttemptsConfigureDynamically:(BOOL)arg1; +- (BOOL)connectDiscoveringBestSettings:(BOOL)arg1; +@property(readonly, nonatomic) BOOL isExpensive; +- (id)authenticationMechanisms; +- (unsigned int)cipherKeyLength; +@property __weak id account; +- (void)dealloc; +@property(readonly, copy) NSString *description; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCConnectionBasedAccountProxy.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCConnectionBasedAccountProxy.h new file mode 100644 index 00000000..e2ca479e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCConnectionBasedAccountProxy.h @@ -0,0 +1,68 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "MCAccount.h" + +@class MCAuthScheme, NSArray, NSString, NSURL; + +@interface MCConnectionBasedAccountProxy : MCAccountProxy +{ + NSString *_primitiveSessionPassword; +} + ++ (id)accountTypeString; ++ (void)saveAccountInfoToDefaults; +@property(copy) NSString *primitiveSessionPassword; // @synthesize primitiveSessionPassword=_primitiveSessionPassword; +- (void).cxx_destruct; +- (BOOL)isServerReachable; +- (BOOL)canAuthenticateWithScheme:(id)arg1; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (void)respondToHostBecomingReachable; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +@property(retain) MCAuthScheme *preferredAuthScheme; +- (void)setTLSIdentity:(struct OpaqueSecIdentityRef *)arg1; +- (struct OpaqueSecIdentityRef *)copyTLSIdentity; +@property long long securityLayerType; +@property long long portNumber; +@property(copy) NSString *hostname; +- (void)updateFromSuccessfulConnectionPortNumber:(long long)arg1 securityLayerType:(long long)arg2; +@property(readonly, copy) NSString *subscriptionURLLabel; +@property(readonly) NSURL *subscriptionURL; +@property BOOL usesSSL; +@property BOOL shouldUseAuthentication; +@property(readonly, nonatomic) BOOL requiresAuthentication; +@property(readonly, copy) NSString *appleAuthenticationToken; +@property(readonly, copy) NSString *applePersonID; +- (void)setSessionPassword:(id)arg1; +- (id)sessionPassword; +@property(copy) NSString *password; +@property(readonly, copy, nonatomic) NSArray *standardSSLPorts; +@property(readonly, copy, nonatomic) NSArray *standardPorts; +- (BOOL)autodiscoverSettings:(id *)arg1; +@property BOOL configureDynamically; +@property(readonly, copy, nonatomic) NSString *saslProfileName; +@property(readonly, copy) NSString *accountTypeString; +- (id)initWithManagedObject:(id)arg1; + +// Remaining properties +@property BOOL allowInsecureAuthentication; +@property(copy) NSString *canonicalEmailAddress; +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(copy) NSString *displayName; +@property(copy) NSString *externalHostname; +@property(readonly, copy) NSString *googleClientToken; +@property(readonly) unsigned long long hash; +@property(readonly, copy) NSString *identifier; +@property(readonly) Class superclass; +@property(copy) NSString *username; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCConnectionBasedAutodiscoverer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCConnectionBasedAutodiscoverer.h new file mode 100644 index 00000000..db637960 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCConnectionBasedAutodiscoverer.h @@ -0,0 +1,24 @@ +/* + * 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" + +@interface MCConnectionBasedAutodiscoverer : NSObject +{ + BOOL _shouldCancel; + long long _autoconfigurationStatus; +} + ++ (id)userNameForEmailAddress:(id)arg1 accountSettings:(id)arg2; ++ (id)serverNameFromAccountSettings:(id)arg1; +@property BOOL shouldCancel; // @synthesize shouldCancel=_shouldCancel; +@property long long autoconfigurationStatus; // @synthesize autoconfigurationStatus=_autoconfigurationStatus; +- (void)cancel; +- (void)discoverSettingsForDomain:(id)arg1 receivingAccountSettings:(id *)arg2 sendingAccountsSettings:(id *)arg3; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCConnectionLogging-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCConnectionLogging-Protocol.h new file mode 100644 index 00000000..04843f10 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCConnectionLogging-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol MCConnectionLogging +- (void)flushLog; +- (void)logBytes:(void *)arg1 length:(unsigned long long)arg2; +- (void)logData:(id)arg1 range:(struct _NSRange)arg2; +- (void)logData:(id)arg1; +- (void)logString:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCContactsManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCContactsManager.h new file mode 100644 index 00000000..e82a37eb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCContactsManager.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSMutableDictionary, NSOperationQueue; + +@interface MCContactsManager : NSObject +{ + NSMutableDictionary *_contactsForAddress; + NSOperationQueue *_contactsUpdateQueue; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) NSOperationQueue *contactsUpdateQueue; // @synthesize contactsUpdateQueue=_contactsUpdateQueue; +- (void).cxx_destruct; +- (id)contactForAddress:(id)arg1; +- (id)_fetchGroupedContactsWithPredicate:(id)arg1; +- (id)_fetchGroupedContacts; +- (id)_processDeletes:(id)arg1 addressesWithNoContacts:(id)arg2; +- (id)_processUpdates:(id)arg1 andAdds:(id)arg2; +- (id)_designatedNameContactForContactGroup:(id)arg1; +- (id)_processUpdatesForContactGroup:(id)arg1; +- (id)_changedContactsFromChangedIdentifiers:(id)arg1 addedIdentifiers:(id)arg2; +- (void)_contactsChanged:(id)arg1; +- (void)_asyncLoadContacts; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCCramMD5AuthScheme.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCCramMD5AuthScheme.h new file mode 100644 index 00000000..44cf1636 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCCramMD5AuthScheme.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCCramMD5AuthScheme : MCAuthScheme +{ +} + ++ (id)cramMd5AuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)supportedSaslMechanisms; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDataScanner.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDataScanner.h new file mode 100644 index 00000000..cbcbb163 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDataScanner.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSData; + +@interface MCDataScanner : NSObject +{ + NSData *_data; + unsigned long long _scanLocation; +} + ++ (id)scannerWithData:(id)arg1; +@property(readonly, nonatomic) NSData *data; // @synthesize data=_data; +- (void).cxx_destruct; +- (BOOL)scanUpToBytesFromSet:(id)arg1 intoData:(id *)arg2; +- (BOOL)_scanUpToBytes:(const void *)arg1 length:(unsigned long long)arg2 intoData:(id *)arg3; +- (BOOL)scanUpToCString:(const char *)arg1 intoData:(id *)arg2; +- (BOOL)scanUpToData:(id)arg1 intoData:(id *)arg2; +- (BOOL)scanBytesFromSet:(id)arg1 intoData:(id *)arg2; +- (BOOL)_scanBytes:(const void *)arg1 length:(unsigned long long)arg2 intoData:(id *)arg3; +- (BOOL)scanCString:(const char *)arg1 intoData:(id *)arg2; +- (BOOL)scanData:(id)arg1 intoData:(id *)arg2; +- (BOOL)scanInteger:(long long *)arg1; +- (BOOL)scanByte:(char *)arg1; +- (BOOL)isAtEnd; +@property(nonatomic) unsigned long long scanLocation; // @synthesize scanLocation=_scanLocation; +- (id)initWithData:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDateFormatterFactory.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDateFormatterFactory.h new file mode 100644 index 00000000..4a3b1da8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDateFormatterFactory.h @@ -0,0 +1,19 @@ +/* + * 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" + +@interface MCDateFormatterFactory : NSObject +{ +} + ++ (id)newUncommonInternetMessageDateFormatters; ++ (id)newCommonInternetMessageDateFormatters; ++ (id)newInternetMessageDateFormatter; ++ (id)newIMAPDateFormatter; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDateParser.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDateParser.h new file mode 100644 index 00000000..83ee62c2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDateParser.h @@ -0,0 +1,22 @@ +/* + * 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" + +@interface MCDateParser : NSObject +{ +} + ++ (id)_dateStringByStrippingCommentsFromString:(id)arg1; ++ (id)_fallbackDateFormaters; ++ (id)_commonDateFormatters; ++ (id)_imapDateFormatter; ++ (id)_dateFromString:(id)arg1 imapFirst:(BOOL)arg2; ++ (id)dateFromInternetMessageDateString:(id)arg1; ++ (id)dateFromIMAPDateString:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDisplayNameInfo.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDisplayNameInfo.h new file mode 100644 index 00000000..8531dce7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDisplayNameInfo.h @@ -0,0 +1,25 @@ +/* + * 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" + +@class NSString; + +@interface MCDisplayNameInfo : NSObject +{ + NSString *_shortName; + NSString *_fullName; +} + +@property(readonly, copy, nonatomic) NSString *fullName; // @synthesize fullName=_fullName; +@property(readonly, copy, nonatomic) NSString *shortName; // @synthesize shortName=_shortName; +- (void).cxx_destruct; +- (id)debugDescription; +- (id)initWithShortName:(id)arg1 fullName:(id)arg2; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDisplayNameManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDisplayNameManager.h new file mode 100644 index 00000000..05743038 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCDisplayNameManager.h @@ -0,0 +1,40 @@ +/* + * 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" + +@class NSCache, NSMutableDictionary, NSNotificationCenter; + +@interface MCDisplayNameManager : NSObject +{ + NSCache *_parsedDisplayNameInfos; + NSMutableDictionary *_queriedDisplayNameInfos; + NSNotificationCenter *_displayNameNotificationCenter; +} + ++ (id)formattedStringForAddressList:(id)arg1; ++ (id)formattedStringForDisplayNameInfoList:(id)arg1; ++ (id)namesFromDisplayNameInfos:(id)arg1; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) NSNotificationCenter *displayNameNotificationCenter; // @synthesize displayNameNotificationCenter=_displayNameNotificationCenter; +- (void).cxx_destruct; +- (void)resetCachedDisplayNamesFromContacts; +- (void)_nameContactsChanged:(id)arg1; +- (void)removeDisplayNameObserver:(id)arg1; +- (void)addDisplayNameObserver:(id)arg1 selector:(SEL)arg2; +- (id)_createDisplayNameInfoWithAddress:(id)arg1; +- (id)_createDisplayNameInfoWithContact:(id)arg1 fullName:(id)arg2; +- (id)_createDisplayNameInfoWithContact:(id)arg1; +- (id)_displayNameInfoForContact:(id)arg1; +- (id)_queriedDisplayNameInfoForAddress:(id)arg1; +- (id)_cacheItemForFullAddress:(id)arg1; +- (id)displayNameForAddress:(id)arg1; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCEWSAutodiscoverer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCEWSAutodiscoverer.h new file mode 100644 index 00000000..c5caf856 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCEWSAutodiscoverer.h @@ -0,0 +1,55 @@ +/* + * 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 "EWSAutodiscoverBindingDelegate.h" + +@class NSDictionary, NSError, NSString, NSURL; + +@interface MCEWSAutodiscoverer : NSObject +{ + NSString *_emailAddress; + NSString *_password; + NSString *_userName; + NSString *_lastSentUserName; + NSURL *_preferredAutodiscoverURL; + NSString *_internalHostname; + NSString *_externalHostname; + NSDictionary *_receivingAccountInfo; + long long _status; + NSError *_lastError; +} + ++ (BOOL)url:(id)arg1 isEqualToURLIgnoringUsername:(id)arg2; ++ (void)initialize; +@property(copy) NSError *lastError; // @synthesize lastError=_lastError; +@property long long status; // @synthesize status=_status; +@property(copy) NSDictionary *receivingAccountInfo; // @synthesize receivingAccountInfo=_receivingAccountInfo; +@property(readonly, copy, nonatomic) NSString *externalHostname; // @synthesize externalHostname=_externalHostname; +@property(readonly, copy, nonatomic) NSString *internalHostname; // @synthesize internalHostname=_internalHostname; +@property(readonly, copy, nonatomic) NSURL *preferredAutodiscoverURL; // @synthesize preferredAutodiscoverURL=_preferredAutodiscoverURL; +@property(copy) NSString *lastSentUserName; // @synthesize lastSentUserName=_lastSentUserName; +@property(copy) NSString *userName; // @synthesize userName=_userName; +@property(readonly, copy, nonatomic) NSString *password; // @synthesize password=_password; +@property(readonly, copy, nonatomic) NSString *emailAddress; // @synthesize emailAddress=_emailAddress; +- (void).cxx_destruct; +- (void)autodiscoverBinding:(id)arg1 didReceiveCertificateError:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didFailWithError:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 didFinishWithResponse:(id)arg2; +- (void)autodiscoverBinding:(id)arg1 willSendRequestForAuthenticationChallenge:(id)arg2; +- (long long)executeSynchronouslyWithMonitor:(id)arg1; +- (id)initWithEmailAddress:(id)arg1 userName:(id)arg2 password:(id)arg3 preferredAutodiscoverURL:(id)arg4 internalHostname:(id)arg5 externalHostname:(id)arg6; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCError.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCError.h new file mode 100644 index 00000000..bd9601b0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCError.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class NSMutableDictionary, NSString; + +@interface MCError : NSError +{ + NSMutableDictionary *_moreUserInfo; +} + ++ (id)errorWithException:(id)arg1; ++ (id)errorWithDomain:(id)arg1 code:(long long)arg2 localizedDescription:(id)arg3 title:(id)arg4 helpTag:(id)arg5 userInfo:(id)arg6; ++ (id)errorWithDomain:(id)arg1 code:(long long)arg2 localizedDescription:(id)arg3; ++ (id)messageTraceableStringForError:(id)arg1; +//- (void).cxx_destruct; +- (BOOL)alertShowHelp:(id)arg1; +- (void)useGenericDescription:(id)arg1; +- (void)setShortDescription:(id)arg1; +- (void)setHelpTag:(id)arg1; +- (void)setMoreInfo:(id)arg1; +- (void)setLocalizedDescription:(id)arg1; +- (id)shortDescription; +- (id)helpAnchor; +- (id)moreInfo; +- (id)localizedDescription; +- (id)userInfo; +- (void)setUserInfoObject:(id)arg1 forKey:(id)arg2; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)initWithError:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCExternalAuthScheme.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCExternalAuthScheme.h new file mode 100644 index 00000000..f53124e7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCExternalAuthScheme.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCExternalAuthScheme : MCAuthScheme +{ +} + ++ (id)externalAuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)supportedSaslMechanisms; +- (BOOL)requiresPassword; +- (BOOL)requiresUsername; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCFileTypeInfo.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCFileTypeInfo.h new file mode 100644 index 00000000..682d254b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCFileTypeInfo.h @@ -0,0 +1,29 @@ +/* + * 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" + +@class NSString; + +@interface MCFileTypeInfo : NSObject +{ + unsigned int _osType; + NSString *_mimeType; + NSString *_pathExtension; +} + +@property(nonatomic) unsigned int osType; // @synthesize osType=_osType; +@property(copy, nonatomic) NSString *pathExtension; // @synthesize pathExtension=_pathExtension; +@property(copy, nonatomic) NSString *mimeType; // @synthesize mimeType=_mimeType; +- (void).cxx_destruct; +- (id)getPedigree; +- (void)_getTypeInfoFromFallbackFields:(unsigned long long *)arg1; +- (void)_getTypeInfoBasedOnFields:(unsigned long long *)arg1 inputClass:(struct __CFString *)arg2 inputValue:(struct __CFString *)arg3; +- (BOOL)getTypeInfoForDesiredFields:(unsigned long long)arg1; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCGssapiAuthScheme.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCGssapiAuthScheme.h new file mode 100644 index 00000000..83b9f87a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCGssapiAuthScheme.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCGssapiAuthScheme : MCAuthScheme +{ +} + ++ (id)gssApiAuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)supportedSaslMechanisms; +- (BOOL)requiresPassword; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCIASetupViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCIASetupViewController.h new file mode 100644 index 00000000..0d422f3f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCIASetupViewController.h @@ -0,0 +1,160 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "IASetupViewController.h" + +#import "IADataPluginDelegate.h" +#import "MCAccountSetupValidatorDelegate.h" + +@class IADataPlugin, IAMailAccountSetupInput, IAMailAccountSetupResult, MCAccountSetupValidator, NSLayoutConstraint, NSPopUpButton, NSString, NSTextField, NSView; + +@interface MCIASetupViewController : IASetupViewController +{ + id _localEventMonitor; + id _globalEventMonitor; + BOOL _showPathPrefix; + BOOL _showIncomingTLSCertificate; + BOOL _showOutgoingTLSCertificate; + BOOL _manuallyConfigureIncoming; + BOOL _manuallyConfigureOutgoing; + BOOL _optionKeyPressed; + NSView *_incomingAccountInfoView; + NSView *_incomingAccountManualSetupView; + NSView *_outgoingAccountInfoView; + NSView *_outgoingAccountManualSetupView; + NSTextField *_emailAddressTextField; + NSTextField *_mailServerTextField; + NSTextField *_incomingPortTextField; + NSTextField *_smtpServerTextField; + NSTextField *_outgoingPortTextField; + NSPopUpButton *_incomingAuthenticationPopUp; + NSPopUpButton *_incomingTLSCertificatePopUp; + NSPopUpButton *_outgoingAuthenticationPopUp; + NSPopUpButton *_outgoingTLSCertificatePopUp; + NSLayoutConstraint *_accountTypeLabelHeightConstraint; + NSLayoutConstraint *_accountTypeButtonHeightConstraint; + NSLayoutConstraint *_accountTypeVerticalSpaceConstraint; + NSLayoutConstraint *_pathPrefixLabelHeightConstraint; + NSLayoutConstraint *_pathPrefixFieldHeightConstraint; + NSLayoutConstraint *_pathPrefixVerticalSpaceConstraint; + NSLayoutConstraint *_incomingTLSCertificateLabelHeightConstraint; + NSLayoutConstraint *_incomingTLSCertificateButtonHeightConstraint; + NSLayoutConstraint *_incomingTLSCertificateVerticalSpaceConstraint; + NSLayoutConstraint *_outgoingTLSCertificateLabelHeightConstraint; + NSLayoutConstraint *_outgoingTLSCertficiateButtonHeightConstraint; + NSLayoutConstraint *_outgoingTLSCertificateVerticalSpaceConstraint; + double _labelHeight; + double _textFieldHeight; + double _popUpButtonHeight; + double _textFieldToTextFieldVerticalSpace; + double _popUpButtonToPopUpButtonVerticalSpace; + NSString *_progressText; + id _completion; + IADataPlugin *_iaDataPlugin; + MCAccountSetupValidator *_validator; + IAMailAccountSetupInput *_accountSetupInput; + IAMailAccountSetupResult *_accountSetupResult; +} + ++ (id)keyPathsForValuesAffectingAccountType; ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; +@property(retain, nonatomic) IAMailAccountSetupResult *accountSetupResult; // @synthesize accountSetupResult=_accountSetupResult; +@property(retain, nonatomic) IAMailAccountSetupInput *accountSetupInput; // @synthesize accountSetupInput=_accountSetupInput; +@property(nonatomic) BOOL optionKeyPressed; // @synthesize optionKeyPressed=_optionKeyPressed; +@property(nonatomic) BOOL manuallyConfigureOutgoing; // @synthesize manuallyConfigureOutgoing=_manuallyConfigureOutgoing; +@property(nonatomic) BOOL manuallyConfigureIncoming; // @synthesize manuallyConfigureIncoming=_manuallyConfigureIncoming; +@property(retain, nonatomic) MCAccountSetupValidator *validator; // @synthesize validator=_validator; +@property(readonly, nonatomic) IADataPlugin *iaDataPlugin; // @synthesize iaDataPlugin=_iaDataPlugin; +@property(copy, nonatomic) id completion; // @synthesize completion=_completion; +@property(nonatomic) BOOL showOutgoingTLSCertificate; // @synthesize showOutgoingTLSCertificate=_showOutgoingTLSCertificate; +@property(nonatomic) BOOL showIncomingTLSCertificate; // @synthesize showIncomingTLSCertificate=_showIncomingTLSCertificate; +@property(nonatomic) BOOL showPathPrefix; // @synthesize showPathPrefix=_showPathPrefix; +@property(copy, nonatomic) NSString *progressText; // @synthesize progressText=_progressText; +@property(nonatomic) double popUpButtonToPopUpButtonVerticalSpace; // @synthesize popUpButtonToPopUpButtonVerticalSpace=_popUpButtonToPopUpButtonVerticalSpace; +@property(nonatomic) double textFieldToTextFieldVerticalSpace; // @synthesize textFieldToTextFieldVerticalSpace=_textFieldToTextFieldVerticalSpace; +@property(nonatomic) double popUpButtonHeight; // @synthesize popUpButtonHeight=_popUpButtonHeight; +@property(nonatomic) double textFieldHeight; // @synthesize textFieldHeight=_textFieldHeight; +@property(nonatomic) double labelHeight; // @synthesize labelHeight=_labelHeight; +@property(nonatomic) __weak NSLayoutConstraint *outgoingTLSCertificateVerticalSpaceConstraint; // @synthesize outgoingTLSCertificateVerticalSpaceConstraint=_outgoingTLSCertificateVerticalSpaceConstraint; +@property(nonatomic) __weak NSLayoutConstraint *outgoingTLSCertficiateButtonHeightConstraint; // @synthesize outgoingTLSCertficiateButtonHeightConstraint=_outgoingTLSCertficiateButtonHeightConstraint; +@property(nonatomic) __weak NSLayoutConstraint *outgoingTLSCertificateLabelHeightConstraint; // @synthesize outgoingTLSCertificateLabelHeightConstraint=_outgoingTLSCertificateLabelHeightConstraint; +@property(nonatomic) __weak NSLayoutConstraint *incomingTLSCertificateVerticalSpaceConstraint; // @synthesize incomingTLSCertificateVerticalSpaceConstraint=_incomingTLSCertificateVerticalSpaceConstraint; +@property(nonatomic) __weak NSLayoutConstraint *incomingTLSCertificateButtonHeightConstraint; // @synthesize incomingTLSCertificateButtonHeightConstraint=_incomingTLSCertificateButtonHeightConstraint; +@property(nonatomic) __weak NSLayoutConstraint *incomingTLSCertificateLabelHeightConstraint; // @synthesize incomingTLSCertificateLabelHeightConstraint=_incomingTLSCertificateLabelHeightConstraint; +@property(nonatomic) __weak NSLayoutConstraint *pathPrefixVerticalSpaceConstraint; // @synthesize pathPrefixVerticalSpaceConstraint=_pathPrefixVerticalSpaceConstraint; +@property(nonatomic) __weak NSLayoutConstraint *pathPrefixFieldHeightConstraint; // @synthesize pathPrefixFieldHeightConstraint=_pathPrefixFieldHeightConstraint; +@property(nonatomic) __weak NSLayoutConstraint *pathPrefixLabelHeightConstraint; // @synthesize pathPrefixLabelHeightConstraint=_pathPrefixLabelHeightConstraint; +@property(nonatomic) __weak NSLayoutConstraint *accountTypeVerticalSpaceConstraint; // @synthesize accountTypeVerticalSpaceConstraint=_accountTypeVerticalSpaceConstraint; +@property(nonatomic) __weak NSLayoutConstraint *accountTypeButtonHeightConstraint; // @synthesize accountTypeButtonHeightConstraint=_accountTypeButtonHeightConstraint; +@property(nonatomic) __weak NSLayoutConstraint *accountTypeLabelHeightConstraint; // @synthesize accountTypeLabelHeightConstraint=_accountTypeLabelHeightConstraint; +@property(nonatomic) __weak NSPopUpButton *outgoingTLSCertificatePopUp; // @synthesize outgoingTLSCertificatePopUp=_outgoingTLSCertificatePopUp; +@property(nonatomic) __weak NSPopUpButton *outgoingAuthenticationPopUp; // @synthesize outgoingAuthenticationPopUp=_outgoingAuthenticationPopUp; +@property(nonatomic) __weak NSPopUpButton *incomingTLSCertificatePopUp; // @synthesize incomingTLSCertificatePopUp=_incomingTLSCertificatePopUp; +@property(nonatomic) __weak NSPopUpButton *incomingAuthenticationPopUp; // @synthesize incomingAuthenticationPopUp=_incomingAuthenticationPopUp; +@property(nonatomic) __weak NSTextField *outgoingPortTextField; // @synthesize outgoingPortTextField=_outgoingPortTextField; +@property(nonatomic) __weak NSTextField *smtpServerTextField; // @synthesize smtpServerTextField=_smtpServerTextField; +@property(nonatomic) __weak NSTextField *incomingPortTextField; // @synthesize incomingPortTextField=_incomingPortTextField; +@property(nonatomic) __weak NSTextField *mailServerTextField; // @synthesize mailServerTextField=_mailServerTextField; +@property(nonatomic) __weak NSTextField *emailAddressTextField; // @synthesize emailAddressTextField=_emailAddressTextField; +@property(retain, nonatomic) NSView *outgoingAccountManualSetupView; // @synthesize outgoingAccountManualSetupView=_outgoingAccountManualSetupView; +@property(retain, nonatomic) NSView *outgoingAccountInfoView; // @synthesize outgoingAccountInfoView=_outgoingAccountInfoView; +@property(retain, nonatomic) NSView *incomingAccountManualSetupView; // @synthesize incomingAccountManualSetupView=_incomingAccountManualSetupView; +@property(retain, nonatomic) NSView *incomingAccountInfoView; // @synthesize incomingAccountInfoView=_incomingAccountInfoView; +- (void).cxx_destruct; +- (id)_uniqueDisplayNameForAccount; +- (void)updateAccountSetupResultWithOutgoingAccount:(id)arg1; +- (void)updateAccountSetupResultWithIncomingAccount:(id)arg1; +- (void)updateAccountSetupInput; +@property(nonatomic) long long accountType; +@property(copy, nonatomic) NSString *emailAddress; +@property(readonly, nonatomic) BOOL popDisabled; +@property(readonly, nonatomic) BOOL outgoingAccountDisabled; +- (id)delegateApplicationName; +- (void)validatorDidFinish:(id)arg1; +- (id)_configureAuthenticationPopUp:(id)arg1 withAuthSchemes:(id)arg2 currentAuthScheme:(id)arg3 allowNone:(BOOL)arg4; +- (void)validatorDidFail:(id)arg1; +- (void)validator:(id)arg1 didChangeState:(long long)arg2; +- (BOOL)plugin:(id)arg1 handleCertificateError:(id)arg2; +- (void)plugin:(id)arg1 didChangeAccountUID:(id)arg2; +- (void)plugin:(id)arg1 didDeleteAccountUID:(id)arg2; +- (void)plugin:(id)arg1 didCreateAccountUID:(id)arg2; +- (void)plugin:(id)arg1 accountSetupDidFinish:(id)arg2 withResult:(id)arg3; +- (void)plugin:(id)arg1 accountSetupDidFail:(id)arg2 withError:(id)arg3; +- (void)plugin:(id)arg1 accountSetupUpdate:(id)arg2 withStatus:(long long)arg3; +- (BOOL)showBackButton; +- (id)title; +- (BOOL)showCreateButton; +- (BOOL)inputValidForNext; +- (void)cancel; +- (BOOL)_sendIAAccountCreationNotificationForUID:(id)arg1 withError:(id)arg2; +- (void)_createAccountWithSetupResult:(id)arg1; +- (void)_updateAccountSetupResultWithReceivingAccountInfo:(id)arg1 deliveryAccountInfo:(id)arg2; +- (void)_cancelValidation; +- (void)_kickOffOutgoingAccountValidation; +- (void)_kickOffIncomingAccountValidation; +- (void)createWithCompletion:(id)arg1; +- (void)back; +- (void)next; +- (void)didUpdateCurrentView:(id)arg1; +- (id)viewForAccount:(id)arg1; +- (void)_updateOutgoingTLSCertificateConstraintsWithAuthMechanism:(id)arg1; +- (void)_updateIncomingTLSCertificateConstraintsWithAuthMechanism:(id)arg1; +- (void)_updatePathPrefixConstraintsWithAccountType:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)loadView; +- (void)dealloc; +- (id)initWithCoder:(id)arg1; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCISPAccountSettingsManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCISPAccountSettingsManager.h new file mode 100644 index 00000000..dfd6ecc2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCISPAccountSettingsManager.h @@ -0,0 +1,49 @@ +/* + * 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" + +@class NSMutableDictionary; + +@interface MCISPAccountSettingsManager : NSObject +{ + NSMutableDictionary *_ispAccountsSettings; + NSMutableDictionary *_ispReceivingAccountsSettingsByDomain; + NSMutableDictionary *_ispDeliveryAccountsSettingsByDomain; + NSMutableDictionary *_ispDeliveryAccountsSettingsByIdentifier; +} + ++ (id)_accountInformationStringForKey:(id)arg1 localizedKey:(id)arg2 domain:(id)arg3; ++ (id)ispSubscriptionURLLabelForDomain:(id)arg1; ++ (id)ispSubscriptionURLForDomain:(id)arg1; ++ (id)ispSupportURLLabelForDomain:(id)arg1; ++ (id)ispSupportURLForDomain:(id)arg1; ++ (id)ispBrandNameForDomain:(id)arg1; ++ (BOOL)ispAccountInformationAvailableForDomain:(id)arg1; ++ (id)_alwaysPersistedKeys; ++ (id)onlineDatabaseSettings; ++ (id)locallyInstalledSettings; ++ (void)initialize; +- (void).cxx_destruct; +- (void)emptyCache; +- (id)deliveryAccountsSettingsForDomain:(id)arg1; +- (id)_deliveryAccountsSettingsForDomain:(id)arg1 fetchIfNecessary:(BOOL)arg2; +- (id)receivingAccountSettingsForDomain:(id)arg1; +- (id)_receivingAccountSettingsForDomain:(id)arg1 fetchIfNecessary:(BOOL)arg2; +- (BOOL)_getAccountIsReceivingAccount:(char *)arg1 isDeliveryAccount:(char *)arg2 fromAccountSettings:(id)arg3; +- (BOOL)_persistISPPlist:(id)arg1; +- (id)_persistantISPAccountSettings:(id)arg1; +- (id)_persistantAccountSettings:(id)arg1; +- (BOOL)_shouldVerifyLoadedISPPlist; +- (void)_loadISPPlist:(id)arg1 bundle:(id)arg2 path:(id)arg3; +- (void)_loadISPPlistsAtPath:(id)arg1; +- (void)_unloadISPAccounts; +- (void)_loadISPAccountsIfNecessary; +- (id)_persistanceFolderName; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCImageJunkMetadata.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCImageJunkMetadata.h new file mode 100644 index 00000000..3216c45d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCImageJunkMetadata.h @@ -0,0 +1,37 @@ +/* + * 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" + +@interface MCImageJunkMetadata : NSObject +{ + unsigned long long _pixelCount; + unsigned long long _byteCount; + BOOL _isAnimated; + long long _type; + double _density; + unsigned long long _frameCount; + struct CGSize _size; +} + ++ (id)lsmMarkerForImageDensityCategory:(long long)arg1; ++ (id)lsmMarkerForImageSizeCategory:(long long)arg1; ++ (id)stringForImageType:(long long)arg1; +@property(nonatomic) unsigned long long frameCount; // @synthesize frameCount=_frameCount; +@property(nonatomic) BOOL isAnimated; // @synthesize isAnimated=_isAnimated; +@property(nonatomic) double density; // @synthesize density=_density; +@property(nonatomic) struct CGSize size; // @synthesize size=_size; +@property(nonatomic) long long type; // @synthesize type=_type; +- (id)description; +@property(readonly, nonatomic) long long densityCategory; +@property(readonly, nonatomic) long long sizeCategory; +@property(nonatomic) unsigned long long pixelCount; +@property(nonatomic) unsigned long long byteCount; +- (void)computeDensity; +- (id)initWithImage:(id)arg1 name:(id)arg2 type:(long long)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCInvocationQueue.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCInvocationQueue.h new file mode 100644 index 00000000..790c53b4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCInvocationQueue.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOperationQueue.h" + +@class NSPort; + +@interface MCInvocationQueue : NSOperationQueue +{ + id _runLoopCancelPortOnceLock; + NSPort *_runLoopCancelPort; +} + ++ (BOOL)didCancelAllMonitoredItems; ++ (void)cancelAllMonitoredItems; +- (void).cxx_destruct; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (id)_newOperationWithInvocation:(id)arg1; +- (void)runInvocationOnQueueSynchronously:(id)arg1; +- (void)addInvocation:(id)arg1; +- (void)dealloc; +- (id)initWithMaxConcurrentOperationCount:(long long)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCJunkRecorder.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCJunkRecorder.h new file mode 100644 index 00000000..865f88f1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCJunkRecorder.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSDictionary, NSMutableDictionary; + +@interface MCJunkRecorder : NSObject +{ + NSMutableDictionary *_imageInfos; + BOOL _isSigned; + BOOL _isShort; + unsigned long long _imageCount; + unsigned long long _characterCount; + double _imageToTextRatio; + double _lsmScore; +} + +@property double lsmScore; // @synthesize lsmScore=_lsmScore; +@property BOOL isShort; // @synthesize isShort=_isShort; +@property BOOL isSigned; // @synthesize isSigned=_isSigned; +@property double imageToTextRatio; // @synthesize imageToTextRatio=_imageToTextRatio; +@property unsigned long long characterCount; // @synthesize characterCount=_characterCount; +@property unsigned long long imageCount; // @synthesize imageCount=_imageCount; +- (void).cxx_destruct; +- (void)setImageJunkInfo:(id)arg1 forKey:(id)arg2; +@property(readonly, copy) NSDictionary *imageInfos; +- (id)description; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCKeychainManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCKeychainManager.h new file mode 100644 index 00000000..c86174b7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCKeychainManager.h @@ -0,0 +1,32 @@ +/* + * 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" + +@interface MCKeychainManager : NSObject +{ +} + ++ (struct OpaqueSecPolicyRef *)createSMIMEPolicyForAddress:(id)arg1 keyUsage:(void *)arg2; ++ (BOOL)canEncryptMessagesToAddresses:(id)arg1 sender:(id)arg2; ++ (BOOL)canEncryptMessagesToAddress:(id)arg1; ++ (BOOL)canSignMessagesFromAddress:(id)arg1; ++ (struct OpaqueSecCertificateRef *)copyEncryptionCertificateForAddress:(id)arg1; ++ (struct OpaqueSecIdentityRef *)copySigningIdentityForAddress:(id)arg1; ++ (BOOL)configureTLSCertificatesPopUp:(id)arg1 usingPersistentReference:(BOOL)arg2 withOldIdentity:(id)arg3 newIdentity:(id *)arg4; ++ (id)_copyTlsClientIdentities; ++ (id)sessionTrustedCertificatesForHost:(id)arg1; ++ (void)setSessionTrustedCertificates:(id)arg1 forHost:(id)arg2; ++ (void)removePasswordForServiceName:(id)arg1 accountName:(id)arg2; ++ (void)setPassword:(id)arg1 forServiceName:(id)arg2 accountName:(id)arg3; ++ (id)passwordForServiceName:(id)arg1 accountName:(id)arg2; ++ (void)removePasswordForHost:(id)arg1 username:(id)arg2 port:(long long)arg3 protocol:(void *)arg4; ++ (void)setPassword:(id)arg1 forHost:(id)arg2 username:(id)arg3 port:(long long)arg4 protocol:(void *)arg5; ++ (id)passwordForHost:(id)arg1 username:(id)arg2 port:(long long)arg3 protocol:(void *)arg4; ++ (void)initialize; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCLargeAttachmentFileWrapper.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCLargeAttachmentFileWrapper.h new file mode 100644 index 00000000..6f5d3c92 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCLargeAttachmentFileWrapper.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@class NSURL; + +@interface MCLargeAttachmentFileWrapper : NSFileWrapper +{ + unsigned long long _attachmentSize; + NSURL *_fileToCopy; +} + ++ (id)localAttachmentFilesDirectory; ++ (id)fileWrapperWithURL:(id)arg1 andContentID:(id)arg2; +@property(retain, nonatomic) NSURL *fileToCopy; // @synthesize fileToCopy=_fileToCopy; +@property(nonatomic) unsigned long long approximateSize; // @synthesize approximateSize=_attachmentSize; +- (void).cxx_destruct; +- (BOOL)isALargeAttachment; +- (id)symbolicLinkDestinationURL; +- (id)archivedDataWithPartNumber:(id)arg1; +- (id)initWithDictionaryRepresentation:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMailboxProxy.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMailboxProxy.h new file mode 100644 index 00000000..78ed970c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMailboxProxy.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCMailboxProxy : MCManagedObjectProxy +{ +} + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMainThreadInvocationOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMainThreadInvocationOperation.h new file mode 100644 index 00000000..36696a29 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMainThreadInvocationOperation.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCMainThreadInvocationOperation : MCThrowingInvocationOperation +{ + BOOL _isExecuting; + BOOL _isFinished; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +- (void)_finish; +- (BOOL)isFinished; +- (void)_setIsExecuting:(BOOL)arg1; +- (BOOL)isExecuting; +- (BOOL)isConcurrent; +- (void)main; +- (void)start; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCManagedObjectContextManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCManagedObjectContextManager.h new file mode 100644 index 00000000..a034236b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCManagedObjectContextManager.h @@ -0,0 +1,25 @@ +/* + * 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" + +@class NSManagedObjectContext; + +@interface MCManagedObjectContextManager : NSObject +{ + NSManagedObjectContext *_context; +} + ++ (void)attachContextManagerWithOptions:(unsigned long long)arg1 toContext:(id)arg2; +@property(readonly, nonatomic) __weak NSManagedObjectContext *context; // @synthesize context=_context; +- (void).cxx_destruct; +- (void)_contextDidSave:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithOptions:(unsigned long long)arg1 context:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCManagedObjectProxy.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCManagedObjectProxy.h new file mode 100644 index 00000000..fdcf8bb6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCManagedObjectProxy.h @@ -0,0 +1,39 @@ +/* + * 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 "MCChanging.h" + +@class NSManagedObject, NSManagedObjectContext, NSString; + +@interface MCManagedObjectProxy : NSObject +{ + NSManagedObjectContext *_context; + NSManagedObject *_managedObject; + BOOL _isChanging; +} + +@property BOOL isChanging; // @synthesize isChanging=_isChanging; +- (void).cxx_destruct; +- (BOOL)endChanging:(BOOL)arg1 immediately:(BOOL)arg2; +- (void)beginChanging; +- (void)setProxiedValue:(id)arg1 forKey:(id)arg2; +- (id)proxiedValueForKey:(id)arg1; +- (void)_handleObjectDeletion:(id)arg1; +@property(readonly, copy) NSString *description; +- (id)objectID; +- (void)dealloc; +- (id)init; +- (id)initWithManagedObject:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMemoryDataSource.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMemoryDataSource.h new file mode 100644 index 00000000..564349ff --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMemoryDataSource.h @@ -0,0 +1,73 @@ +/* + * 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 "MCMessageDataSource.h" + +@class NSData, NSMutableSet, NSString; + +@interface MCMemoryDataSource : NSObject +{ + NSMutableSet *_uniqueStrings; + NSData *_data; + NSData *_separator; +} + +@property(readonly, copy, nonatomic) NSData *separator; // @synthesize separator=_separator; +@property(readonly, nonatomic) NSData *data; // @synthesize data=_data; +- (void).cxx_destruct; +- (id)uniquedString:(id)arg1; +- (void)flushAllCaches; +- (void)invalidateMessage:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)routeMessages:(id)arg1 fetchingBodies:(BOOL)arg2 messagesNeedingBodies:(id)arg3; +- (void)doCompact; +- (BOOL)canCompact; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)undeleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (id)mailbox; +- (id)account; +@property(readonly) BOOL isReadOnly; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)message; +- (id)init; +- (id)initWithData:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessage.h new file mode 100644 index 00000000..d23e3a1a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessage.h @@ -0,0 +1,207 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "CDStructures.h" +#import "MCMessageSortingInterface-Protocol.h" +#import "MCMessageDataSource-Protocol.h" + +@class NSArray, NSData, NSDictionary, NSMutableSet, NSSet, NSString, NSURL, NSUUID; + +@interface MCMessage : NSObject +{ + NSString *_subject; + NSArray *_toRecipients; + NSString *_sender; + NSData *_messageIDHeaderDigest; + NSData *_inReplyToHeaderDigest; + NSUUID *_documentID; + unsigned int _messageFlags; + CDStruct_accefccd _flags; + BOOL _type; + double _dateSentInterval; + double _dateReceivedInterval; + double _dateLastViewedInterval; + id _dataSource; + unsigned char _subjectPrefixLength; + NSMutableSet *_gmailLabels; + BOOL _recipientType; +} + ++ (BOOL)isMessageURLString:(id)arg1; ++ (long long)displayablePriorityForPriority:(long long)arg1; ++ (long long)validatePriority:(long long)arg1; ++ (BOOL)colorIsSetInMoreFlags:(CDStruct_accefccd)arg1; ++ (BOOL)allMessages:(id)arg1 areSameType:(BOOL)arg2; ++ (id)sharedKeySetForSpotlightAttributes; ++ (unsigned char)subjectPrefixLengthUnknown; ++ (id)unreadMessagesFromMessages:(id)arg1; ++ (BOOL)_messageTypeForMessageTypeKey:(id)arg1; ++ (id)messageTypeKeyForMessageType:(BOOL)arg1; ++ (id)descriptionForType:(BOOL)arg1 plural:(BOOL)arg2; ++ (id)replyPrefixWithSpacer:(BOOL)arg1; ++ (id)forwardedMessagePrefixWithSpacer:(BOOL)arg1; ++ (id)messageWithRFC822Data:(id)arg1 sanitizeData:(BOOL)arg2; ++ (id)messageWithRFC822Data:(id)arg1; ++ (void)initialize; +@property BOOL recipientType; // @synthesize recipientType=_recipientType; +@property double primitiveDateLastViewedInterval; // @synthesize primitiveDateLastViewedInterval=_dateLastViewedInterval; +@property double primitiveDateReceivedInterval; // @synthesize primitiveDateReceivedInterval=_dateReceivedInterval; +@property double primitiveDateSentInterval; // @synthesize primitiveDateSentInterval=_dateSentInterval; +@property BOOL primitiveMessageType; // @synthesize primitiveMessageType=_type; +//- (void).cxx_destruct; +@property(readonly, copy, nonatomic) NSDictionary *remoteAttachments; +@property(readonly, nonatomic) NSURL *imageArchiveURL; +- (id)spotlightAttributesIncludingText:(BOOL)arg1; +- (void)setAttachmentFilenames:(id)arg1; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3; +- (BOOL)calculateAttachmentInfoFromBody:(id)arg1 numberOfAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4 force:(BOOL)arg5; +- (BOOL)calculateAttachmentInfoFromBody:(id)arg1 numberOfAttachments:(unsigned int *)arg2 isSigned:(char *)arg3 isEncrypted:(char *)arg4; +- (void)setAttachmentInfoFromBody:(id)arg1 forced:(BOOL)arg2; +- (void)setAttachmentInfoFromBody:(id)arg1; +- (void)forceSetAttachmentInfoFromBody:(id)arg1; +- (void)_calculateAttachmentInfoFromBody:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)dataForMimePart:(id)arg1; +- (id)headerData; +- (id)headerDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)bodyData; +- (id)bodyDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)persistentID; +@property(readonly, nonatomic) BOOL isThread; +- (id)URLStringIfAvailable; +- (id)URLString; +- (id)_URLFetchIfNotAvailable:(BOOL)arg1; +- (id)originalMailboxURLString; +- (id)remoteMailboxURLString; +- (id)account; +- (id)path; +- (CDStruct_accefccd)moreMessageFlags; +- (unsigned int)uidForSort; +- (unsigned int)uid; +- (id)remoteID; +- (id)references; +- (void)setMessageInfoFromMessage:(id)arg1; +- (void)setMessageInfo:(id)arg1 subjectPrefixLength:(unsigned char)arg2 to:(id)arg3 sender:(id)arg4 type:(BOOL)arg5 dateReceivedTimeIntervalSince1970:(double)arg6 dateSentTimeIntervalSince1970:(double)arg7 messageIDHeaderDigest:(id)arg8 inReplyToHeaderDigest:(id)arg9 dateLastViewedTimeIntervalSince1970:(double)arg10; +- (void)setTo:(id)arg1; +- (id)to; +- (id)senderDisplayNameInfo; +- (id)senderDisplayName; +- (id)senderIfAvailable; +- (void)setSender:(id)arg1; +- (id)sender; +- (void)setDateLastViewedTimeIntervalSince1970:(double)arg1; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (id)dateLastViewed; +- (void)setDateSentTimeIntervalSince1970:(double)arg1; +- (double)dateSentAsTimeIntervalSince1970; +- (id)dateSent; +- (void)setDateReceivedTimeIntervalSince1970:(double)arg1; +- (double)dateReceivedAsTimeIntervalSince1970; +- (id)dateReceived; +- (BOOL)supportsSnippets; +- (void)setSubjectPrefixLength:(unsigned char)arg1; +- (void)setSubject:(id)arg1; +- (id)subjectIfAvailable; +- (id)subject; +- (id)subjectNotIncludingReAndFwdPrefix; +- (unsigned long long)subjectPrefixLength; +- (void)loadCachedHeaderValuesFromHeaders:(id)arg1 type:(BOOL)arg2; +- (void)_setDateSentFromHeaders:(id)arg1; +- (void)_setDateReceivedFromHeaders:(id)arg1; +- (id)_newDateFromDateHeaderInHeaders:(id)arg1; +- (id)_newDateFromHeader:(id)arg1 inHeaders:(id)arg2; +- (id)_newDateFromReceivedHeadersInHeaders:(id)arg1; +- (id)rawSourceFromHeaders:(id)arg1 body:(id)arg2; +- (long long)priority; +- (void)setPriorityFromHeaders:(id)arg1; +- (long long)junkMailLevel; +- (unsigned long long)numberOfAttachments; +- (BOOL)hasCalculatedNumberOfAttachments; +- (id)stringForJunk:(id)arg1; +- (id)stringForJunk; +- (id)stringForIndexingUpdatingBodyFlags:(BOOL)arg1; +- (id)stringForBodyContent; +- (id)stringForIndexing; +- (id)stringValueRenderMode:(long long)arg1 updateBodyFlags:(BOOL)arg2 junkRecorder:(id)arg3 bodyOnly:(BOOL)arg4; +- (BOOL)isPartialMessageBodyAvailable; +- (BOOL)isMessageContentLocallyAvailable; +- (id)_inReplyToHeaderDigestIvar; +- (void)setInReplyToHeaderDigest:(id)arg1; +- (void)unlockedSetInReplyToHeaderDigest:(id)arg1; +- (BOOL)isReply; +- (id)inReplyToHeaderDigest; +- (id)_messageIDHeaderDigestIvar; +- (void)setMessageIDHeaderDigest:(id)arg1; +- (void)unlockedSetMessageIDHeaderDigest:(id)arg1; +- (id)messageIDHeaderDigest; +- (id)messageID; +- (id)attributedString; +- (unsigned long long)messageSize; +- (void)setColor:(id)arg1 hasBeenEvaluated:(BOOL)arg2 flags:(unsigned int)arg3 mask:(unsigned int)arg4; +- (void)setPrimitiveColor:(id)arg1 hasBeenEvaluated:(BOOL)arg2 flags:(unsigned int)arg3 mask:(unsigned int)arg4; +- (void)setColorHasBeenEvaluated:(BOOL)arg1; +- (void)setPrimitiveColorHasBeenEvaluated:(BOOL)arg1; +- (void)setColor:(id)arg1; +- (void)setPrimitiveColor:(id)arg1; +- (void)setMarkedForOverwrite:(BOOL)arg1; +- (BOOL)isMarkedForOverwrite; +- (int)colorForSort; +- (int)colorIntValue; +- (id)color; +- (BOOL)colorHasBeenEvaluated; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (id)messageDataIncludingFromSpace:(BOOL)arg1; +- (id)messageBodyIfAvailableUpdatingFlags:(BOOL)arg1; +- (id)messageBodyForIndexing; +- (id)messageBodyUpdatingFlags:(BOOL)arg1; +- (id)messageBodyFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)messageBodyIfAvailable; +- (id)messageBody; +- (id)attachmentNamesIfAvailable; +- (void)removeGmailLabels:(id)arg1; +- (void)addGmailLabels:(id)arg1; +@property(retain) NSSet *gmailLabels; +- (void)setMessageFlags:(unsigned int)arg1 mask:(unsigned int)arg2; +- (void)setPrimitiveMessageFlags:(unsigned int)arg1 mask:(unsigned int)arg2; +- (unsigned int)messageFlags; +- (void)setDocumentID:(id)arg1; +- (id)documentID; +- (BOOL)isMessageMeeting; +- (BOOL)isEditable; +- (void)setType:(BOOL)arg1; +- (BOOL)type; +- (id)headersIfAvailable; +- (id)headers; +- (void)_cacheMessageBodyDataIfPossible:(id)arg1; +- (id)_cachedMessageBodyData; +- (void)_cacheMessageBodyIfPossible:(id)arg1; +- (id)_cachedMessageBody; +- (void)_cacheHeaderDataIfPossible:(id)arg1; +- (id)_cachedHeaderData; +- (void)_cacheHeadersIfPossible:(id)arg1; +- (id)_cachedHeaders; +- (void)uncacheBodyAndHeader; +- (void)cacheBodyAndHeader; +- (id)mailbox; +- (BOOL)dataSourceShouldBeSet; +- (id)primitiveDataSource; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (id)extendedDescription; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)init; +- (void)renderString:(id)arg1; +- (void)renderBody:(id)arg1; +- (void)renderHeaders:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageBody.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageBody.h new file mode 100644 index 00000000..ef28081f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageBody.h @@ -0,0 +1,38 @@ +/* + * 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" + +@class MCMessage; + +@interface MCMessageBody : NSObject +{ + id _messageOrClass; + BOOL _hideCalendarMimePart; + long long _messageID; +} + +@property BOOL hideCalendarMimePart; // @synthesize hideCalendarMimePart=_hideCalendarMimePart; +@property long long messageID; // @synthesize messageID=_messageID; +- (void).cxx_destruct; +- (id)webArchive; +- (id)textHtmlPart; +- (id)attachmentFilenames; +- (id)attachments; +- (id)attachmentsWithContext:(id)arg1; +- (unsigned int)numberOfAttachmentsWithFilenames:(id)arg1 isSigned:(char *)arg2 encrypted:(char *)arg3 numberOfTNEFAttachments:(unsigned int *)arg4; +- (void)calculateNumberOfAttachmentsDecodeIfNeeded; +- (void)calculateNumberOfAttachmentsIfNeeded; +@property(readonly, nonatomic) BOOL isSignedByMe; +- (BOOL)isRich; +- (BOOL)isHTML; +- (id)attributedString; +@property __weak MCMessage *message; +- (id)init; +- (void)renderString:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageDataSource-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageDataSource-Protocol.h new file mode 100644 index 00000000..0dd6ea69 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageDataSource-Protocol.h @@ -0,0 +1,53 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCActivityTarget-Protocol.h" + +@protocol MCMessageDataSource +@property(readonly) BOOL isReadOnly; +- (id)uniquedString:(id)arg1; +- (void)flushAllCaches; +- (void)invalidateMessage:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)routeMessages:(id)arg1 fetchingBodies:(BOOL)arg2 messagesNeedingBodies:(id)arg3; +- (void)doCompact; +- (BOOL)canCompact; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)undeleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (id)mailbox; +- (id)account; + +@optional +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageGenerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageGenerator.h new file mode 100644 index 00000000..2ed79836 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageGenerator.h @@ -0,0 +1,64 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@interface MCMessageGenerator : NSObject +{ + BOOL _shouldConvertCompositeImages; + BOOL _shouldMarkNonresizableAttachmentData; + BOOL _createsMimeAlternatives; + BOOL _createsPlainTextOnly; + BOOL _createsRichText; + BOOL _allows8BitMimeParts; + BOOL _allowsBinaryMimeParts; + BOOL _allowsAppleDoubleAttachments; + BOOL _signsOutput; + BOOL _encryptsOutput; + unsigned long long _preferredEncoding; + unsigned long long _encodingHint; +} + ++ (id)domainHintForResentIDFromHeaders:(id)arg1 hasResentFromHeaders:(char *)arg2; +@property(nonatomic) BOOL encryptsOutput; // @synthesize encryptsOutput=_encryptsOutput; +@property(nonatomic) BOOL signsOutput; // @synthesize signsOutput=_signsOutput; +@property(nonatomic) BOOL allowsAppleDoubleAttachments; // @synthesize allowsAppleDoubleAttachments=_allowsAppleDoubleAttachments; +@property(nonatomic) BOOL allowsBinaryMimeParts; // @synthesize allowsBinaryMimeParts=_allowsBinaryMimeParts; +@property(nonatomic) BOOL allows8BitMimeParts; // @synthesize allows8BitMimeParts=_allows8BitMimeParts; +@property(nonatomic) BOOL alwaysCreatesRichText; // @synthesize alwaysCreatesRichText=_createsRichText; +@property(nonatomic) BOOL createsPlainTextOnly; // @synthesize createsPlainTextOnly=_createsPlainTextOnly; +@property(nonatomic) BOOL createsMimeAlternatives; // @synthesize createsMimeAlternatives=_createsMimeAlternatives; +@property(nonatomic) unsigned long long encodingHint; // @synthesize encodingHint=_encodingHint; +@property(nonatomic) unsigned long long preferredEncoding; // @synthesize preferredEncoding=_preferredEncoding; +- (id)_newRFC2047NameParameterDataForMimePart:(id)arg1; +- (id)_hfsFilenameDataWithFilename:(id)arg1 partData:(id)arg2; +- (void)_setMimeTypeFromAttachment:(id)arg1 onMimePart:(id)arg2 filename:(id *)arg3; +- (BOOL)_encodeDataForMimePart:(id)arg1 withPartData:(id)arg2; +- (id)_newDataForMimePart:(id)arg1 withPartData:(id)arg2; +- (BOOL)appendDataForMimePart:(id)arg1 toData:(id)arg2 withPartData:(id)arg3; +- (void)_appendHeadersForMimePart:(id)arg1 toHeaders:(id)arg2; +- (id)_newPartForStationeryCompositeImage:(id)arg1 partData:(id)arg2; +- (id)_newPartForDirectoryAttachment:(id)arg1 partData:(id)arg2; +- (id)_newPartForAttachment:(id)arg1 partData:(id)arg2; +- (id)_newMimePartWithWebResource:(id)arg1 partData:(id)arg2 seenURLStrings:(id)arg3; +- (id)_newPartAndDataForString:(id)arg1 charset:(id)arg2 subtype:(id)arg3 partData:(id)arg4; +- (id)_newPlainTextPartWithAttributedString:(id)arg1 partData:(id)arg2; +- (id)_newMimePartWithAttributedString:(id)arg1 partData:(id)arg2 outputRich:(BOOL)arg3; +- (id)_newOutgoingMessage; +- (id)_newOutgoingMessageFromTopLevelMimePart:(id)arg1 topLevelHeaders:(id)arg2 withPartData:(id)arg3; +- (id)newMessageFromMessage:(id)arg1 reencodedWithCharset:(id)arg2; +- (id)newMessageByRemovingAttachmentsFromMessage:(id)arg1; +- (id)newMessageWithBodyData:(id)arg1 headers:(id)arg2; +- (id)newDataForAttributedString:(id)arg1; +- (id)newMessageWithAttributedString:(id)arg1 headers:(id)arg2; +- (id)newMessageWithHtmlString:(id)arg1 attachments:(id)arg2 headers:(id)arg3; +- (void)_recursivelyAddSubresourcesFromArchive:(id)arg1 toArray:(id)arg2; +- (id)newMessageWithHtmlString:(id)arg1 plainTextAlternative:(id)arg2 otherHtmlStringsAndAttachments:(id)arg3 headers:(id)arg4; +- (unsigned long long)_preferredEncodingUsingHintIfNecessary; +- (void)setShouldMarkNonresizableAttachmentData:(BOOL)arg1; +- (void)setShouldConvertCompositeImages:(BOOL)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageHeaders.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageHeaders.h new file mode 100644 index 00000000..1d47d56b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageHeaders.h @@ -0,0 +1,79 @@ +/* + * 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 "NSCopying.h" +#import "NSMutableCopying.h" + +@class NSData; + +@interface MCMessageHeaders : NSObject +{ + NSData *_data; + id _sender; + unsigned long long _encodingHint; +} + ++ (id)headerKeysFromLocalizedHeaders:(id)arg1; ++ (id)englishHeadersFromLocalizedHeaders:(id)arg1; ++ (id)localizedHeadersFromEnglishHeaders:(id)arg1; ++ (id)_localizedHeadersForKeys; ++ (id)localizedHeaderForKey:(id)arg1; ++ (id)localizedHeaders; ++ (void)setCustomDisplayedHeaders:(id)arg1; ++ (BOOL)_customHeadersEnabled; ++ (id)customHeadersIgnoringDisabledState; ++ (id)customDisplayedHeaders; ++ (id)basicHeaderKeys; ++ (const char *)cstringForKey:(id)arg1; ++ (BOOL)isHumanReadableHeaderKey:(id)arg1; ++ (BOOL)isMessageIDHeaderKey:(id)arg1; ++ (BOOL)isAddressHeaderKey:(id)arg1; ++ (void)initialize; +@property(readonly, nonatomic) unsigned long long encodingHint; // @synthesize encodingHint=_encodingHint; +- (void).cxx_destruct; +- (void)_appendAddressList:(id)arg1 toData:(id)arg2; +- (id)description; +- (void)appendHeaderData:(id)arg1 recipients:(id)arg2 recipientsByHeaderKey:(id)arg3 expandGroups:(BOOL)arg4 includeComment:(BOOL)arg5; +- (void)appendHeaderData:(id)arg1 recipients:(id)arg2; +- (id)encodedHeadersIncludingFromSpace:(BOOL)arg1; +- (BOOL)messageIsFromMicrosoft; +- (id)mailVersion; +- (id)_newDecodedMessageIDFromDataInRange:(struct _NSRange)arg1 sender:(id)arg2 consumedLength:(unsigned long long *)arg3; +- (id)_newDecodedAddressFromDataInRange:(struct _NSRange)arg1 sender:(id)arg2 consumedLength:(unsigned long long *)arg3; +- (id)_firstMessageIDForKey:(id)arg1 sender:(id)arg2; +- (id)firstMessageIDForKey:(id)arg1; +- (id)messageIDListForKey:(id)arg1; +- (id)_firstAddressForKey:(id)arg1 sender:(id)arg2; +- (id)firstAddressForKey:(id)arg1; +- (id)addressListForKey:(id)arg1; +- (id)_newHeaderValueForKey:(id)arg1 offset:(unsigned long long *)arg2; +- (id)firstHeaderForKey:(id)arg1; +- (id)_headersForKey:(id)arg1; +- (id)headersForKey:(id)arg1; +- (BOOL)hasHeaderForKey:(id)arg1; +- (void)_setCapitalizedKey:(id)arg1 forKey:(id)arg2; +- (id)_capitalizedKeyForKey:(id)arg1; +- (id)allHeaderKeys; +- (void)_resetSender; +- (id)_sender; +- (id)headerData; +- (id)headersDictionaryForMessageType:(BOOL)arg1; +- (id)_attributedStringForHeaders:(id)arg1; +- (id)attributedStringForAllHeaders; +- (id)attributedString; +- (id)_htmlValueWithKey:(id)arg1 value:(id)arg2 useBold:(BOOL)arg3; +- (id)_htmlHeaderKey:(id)arg1 useBold:(BOOL)arg2 useGray:(BOOL)arg3; +- (id)htmlStringUseBold:(BOOL)arg1 useGray:(BOOL)arg2; +- (id)_headersToDisplayFromHeaderKeys:(id)arg1; +- (id)mutableCopyWithZone:(struct _NSZone *)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)init; +- (id)initWithHeaderData:(id)arg1 encodingHint:(unsigned long long)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageSortingInterface-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageSortingInterface-Protocol.h new file mode 100644 index 00000000..9fe261d5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageSortingInterface-Protocol.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MCMessageSortingInterface +- (unsigned int)uidForSort; +- (id)mailbox; +- (double)dateSentAsTimeIntervalSince1970; +- (double)dateReceivedAsTimeIntervalSince1970; +- (id)to; +- (unsigned long long)subjectPrefixLength; +- (id)subject; +- (unsigned long long)numberOfAttachments; +- (unsigned long long)messageSize; +- (id)senderDisplayName; +- (unsigned int)messageFlags; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (int)colorForSort; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageTracer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageTracer.h new file mode 100644 index 00000000..9f1843d3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageTracer.h @@ -0,0 +1,23 @@ +/* + * 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" + +@interface MCMessageTracer : NSObject +{ +} + ++ (id)bucketSignatureForValue:(long long)arg1; ++ (void)messageTraceDomain:(id)arg1 withCustomKeysAndValues:(id)arg2; ++ (void)messageTraceResult:(const char *)arg1 domain:(id)arg2 signature:(id)arg3; ++ (void)messageTraceResult:(const char *)arg1 domain:(id)arg2 signature:(id)arg3 extraStatus:(id)arg4; ++ (void)messageTraceResult:(const char *)arg1 domain:(id)arg2 uuid:(id)arg3 signature:(id)arg4 extraStatus:(id)arg5; ++ (void)messageTraceResult:(const char *)arg1 count:(unsigned long long)arg2 domainPrefix:(id)arg3 domainSuffix:(id)arg4 signature:(id)arg5 extraStatus:(id)arg6; ++ (void)messageTraceDomainPrefix:(id)arg1 domainSuffix:(id)arg2 signature:(id)arg3 signature2:(id)arg4 extraStatus:(id)arg5; ++ (void)messageTraceOperationError:(id)arg1 domainPrefix:(id)arg2 domainSuffix:(id)arg3 uuid:(id)arg4 duration:(double)arg5 count:(unsigned long long)arg6 size:(unsigned long long)arg7; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageURLProtocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageURLProtocol.h new file mode 100644 index 00000000..ffaf31dd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMessageURLProtocol.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSURLProtocol.h" + +@interface MCMessageURLProtocol : NSURLProtocol +{ +} + ++ (BOOL)requestIsCacheEquivalent:(id)arg1 toRequest:(id)arg2; ++ (id)canonicalRequestForRequest:(id)arg1; ++ (BOOL)canInitWithRequest:(id)arg1; +- (void)stopLoading; +- (void)startLoading; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeBody.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeBody.h new file mode 100644 index 00000000..a8be9ed3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeBody.h @@ -0,0 +1,54 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MCMimePart, NSData; + +@interface MCMimeBody : MCMessageBody +{ + MCMimePart *_topLevelPart; + NSData *_bodyData; +} + ++ (id)newMimeBoundary; ++ (id)versionString; ++ (void)initialize; +- (void).cxx_destruct; +- (void)flushCachedData; +@property(retain) NSData *bodyData; +- (id)dataForMimePart:(id)arg1; +- (id)parsedMessageWithContext:(id)arg1; +- (id)parsedMessage; +- (id)webArchive; +- (id)textHtmlPart; +- (id)preferredBodyPart; +- (BOOL)isTextPlain; +- (BOOL)isMultipartRelated; +- (BOOL)isRich; +- (BOOL)isHTML; +- (id)attachmentFilenames; +- (id)attachmentsWithContext:(id)arg1; +- (id)attachments; +- (unsigned int)numberOfAttachmentsWithFilenames:(id)arg1 isSigned:(char *)arg2 encrypted:(char *)arg3 numberOfTNEFAttachments:(unsigned int *)arg4; +- (BOOL)hasAttachments; +- (void)decodeIfNecessary; +- (void)decodeIfNecessaryWithContext:(id)arg1; +- (BOOL)_isPossiblySignedOrEncrypted; +- (void)calculateNumberOfAttachmentsIfNeeded; +- (id)partWithNumber:(id)arg1; +- (id)mimeSubtype; +- (id)mimeType; +- (BOOL)isSignedByMe; +- (id)attachmentPartsEnumerator; +- (id)allPartsEnumerator; +@property(retain, nonatomic) MCMimePart *topLevelPart; +- (id)attributedString; +- (void)renderString:(id)arg1; +- (void)renderStringForJunk:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeCharset.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeCharset.h new file mode 100644 index 00000000..9515eb29 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeCharset.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class NSString; + +@interface MCMimeCharset : NSObject +{ + BOOL _useBase64InHeaders; + BOOL _canBeUsedForOutgoingMessages; + unsigned long long _encoding; + NSString *_primaryLanguage; + NSString *_charsetName; +} + ++ (id)encodingVariantsForRecipients:(id)arg1; ++ (unsigned long long)encodingVariantForEncoding:(unsigned long long)arg1 address:(id)arg2; ++ (id)preferredMimeCharset; ++ (id)charsetForEncoding:(unsigned long long)arg1; ++ (id)allMimeCharsets; +@property(readonly, nonatomic) BOOL canBeUsedForOutgoingMessages; // @synthesize canBeUsedForOutgoingMessages=_canBeUsedForOutgoingMessages; +@property(readonly, nonatomic) BOOL useBase64InHeaders; // @synthesize useBase64InHeaders=_useBase64InHeaders; +@property(readonly, copy, nonatomic) NSString *charsetName; // @synthesize charsetName=_charsetName; +@property(readonly, copy, nonatomic) NSString *primaryLanguage; // @synthesize primaryLanguage=_primaryLanguage; +@property(readonly) unsigned long long encoding; // @synthesize encoding=_encoding; +- (void).cxx_destruct; +- (id)description; +- (id)displayName; +- (id)initWithCFEncoding:(unsigned int)arg1 primaryLanguage:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeConverter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeConverter.h new file mode 100644 index 00000000..cdb410cb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeConverter.h @@ -0,0 +1,18 @@ +/* + * 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" + +@interface MCMimeConverter : NSObject +{ +} + ++ (void)updatePersistedMessage:(id)arg1 fromMessage:(id)arg2; ++ (id)headersFromPersistedMessage:(id)arg1 withMessageType:(BOOL)arg2; ++ (id)messageFromPersistedMessage:(id)arg1 withMessageType:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeDataEncoding.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeDataEncoding.h new file mode 100644 index 00000000..f1579a19 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeDataEncoding.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface MCMimeDataEncoding : NSObject +{ +} + ++ (id)sharedKeySetForEncodingOptions; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeDecodeContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeDecodeContext.h new file mode 100644 index 00000000..a37cfb58 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeDecodeContext.h @@ -0,0 +1,19 @@ +/* + * 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" + +@interface MCMimeDecodeContext : NSObject +{ + BOOL _decodeTextPartsOnly; + BOOL _shouldSkipUpdatingMessageFlags; +} + +@property(nonatomic) BOOL shouldSkipUpdatingMessageFlags; // @synthesize shouldSkipUpdatingMessageFlags=_shouldSkipUpdatingMessageFlags; +@property(nonatomic) BOOL decodeTextPartsOnly; // @synthesize decodeTextPartsOnly=_decodeTextPartsOnly; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeHeaderScanContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeHeaderScanContext.h new file mode 100644 index 00000000..0bf7f91b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeHeaderScanContext.h @@ -0,0 +1,29 @@ +/* + * 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" + +@class MCMimePart, NSMutableData; + +@interface MCMimeHeaderScanContext : NSObject +{ + const char *_current; + const char *_end; + unsigned long long _encodingHint; + NSMutableData *_dataBuf; + MCMimePart *_mimePart; +} + +@property(retain, nonatomic) MCMimePart *mimePart; // @synthesize mimePart=_mimePart; +@property(retain, nonatomic) NSMutableData *dataBuf; // @synthesize dataBuf=_dataBuf; +@property(nonatomic) unsigned long long encodingHint; // @synthesize encodingHint=_encodingHint; +@property(nonatomic) const char *end; // @synthesize end=_end; +@property(nonatomic) const char *current; // @synthesize current=_current; +- (void).cxx_destruct; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimePart.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimePart.h new file mode 100644 index 00000000..c5e30860 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimePart.h @@ -0,0 +1,203 @@ +/* + * 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 "NSURLDownloadDelegate.h" + +@class MCError, MCMessage, MCMessageBody, NSArray, NSMutableDictionary, NSString; + +@interface MCMimePart : NSObject +{ + struct _NSRange _range; + id _parentOrBody; + MCMimePart *_nextPart; + long long _typeCode; + long long _subtypeCode; + NSString *_type; + NSString *_subtype; + NSMutableDictionary *_bodyParameters; + NSString *_contentTransferEncoding; + id _encryptSignLock; + NSArray *_messageSigners; + MCError *_smimeError; + NSMutableDictionary *_otherIvars; + BOOL _isMimeEncrypted; + BOOL _isMimeSigned; + MCMessageBody *_decryptedMessageBody; + MCMessage *_decryptedMessage; + id _decryptedMessageDataSource; +} + ++ (BOOL)mimeParameterIsHumanReadable:(id)arg1; +@property(retain, nonatomic) id decryptedMessageDataSource; // @synthesize decryptedMessageDataSource=_decryptedMessageDataSource; +@property(retain, nonatomic) MCMessage *decryptedMessage; // @synthesize decryptedMessage=_decryptedMessage; +@property(retain, nonatomic) MCMessageBody *decryptedMessageBody; // @synthesize decryptedMessageBody=_decryptedMessageBody; +@property(nonatomic) BOOL isMimeSigned; // @synthesize isMimeSigned=_isMimeSigned; +@property(nonatomic) BOOL isMimeEncrypted; // @synthesize isMimeEncrypted=_isMimeEncrypted; +@property(copy, nonatomic) NSString *contentTransferEncoding; // @synthesize contentTransferEncoding=_contentTransferEncoding; +- (void).cxx_destruct; +- (id)decodeMultipartAppledoubleWithContext:(id)arg1; +- (id)decodeApplicationApplefileWithContext:(id)arg1; +- (id)decodeApplicationMac_binhex40WithContext:(id)arg1; +- (id)decodeMessageExternal_bodyWithContext:(id)arg1; +- (id)decodeMessagePartialWithContext:(id)arg1; +- (id)decodeMessageRfc822WithContext:(id)arg1; +- (id)decodeMessageDelivery_statusWithContext:(id)arg1; +- (id)decodeApplicationSmilWithContext:(id)arg1; +- (id)decodeApplicationZipWithContext:(id)arg1; +- (id)decodeApplicationOctet_streamWithContext:(id)arg1; +- (id)decodeApplicationApple_msg_composite_imageWithContext:(id)arg1; +- (id)decodeMultipartFolderWithContext:(id)arg1; +- (id)decodeMultipartRelatedWithContext:(id)arg1; +- (id)decodeMultipartAlternativeWithContext:(id)arg1; +- (id)decodeMultipartWithContext:(id)arg1; +- (id)decodeTextCalendarWithContext:(id)arg1; +- (id)decodeTextHtmlWithContext:(id)arg1; +- (id)decodeTextEnrichedWithContext:(id)arg1; +- (id)decodeTextRtfWithContext:(id)arg1; +- (id)decodeTextRichtextWithContext:(id)arg1; +- (id)decodeTextWithContext:(id)arg1; +- (id)decodeTextPlainWithContext:(id)arg1; +- (id)decode; +- (id)decodeWithContext:(id)arg1; +- (id)_fullMimeTypeEvenInsideAppleDouble; +- (unsigned long long)_getHFSAttachmentEncodingHint; +- (id)_chosenAlternativePartOrParts:(id *)arg1; +- (id)_getSomeCharsetFromPartTree; +- (id)partNumber; +- (void)_setupDictionary:(id *)arg1 fromArray:(id)arg2; +- (BOOL)parseIMAPPropertyList:(id)arg1; +- (BOOL)parseMimeBody; +- (BOOL)parseMimeBodyFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)_parseUUEncodedPartsWithEncodingHint:(unsigned long long)arg1 bodyData:(id)arg2 range:(struct _NSRange)arg3; +- (void)_parseSubpartsWithEncodingHint:(unsigned long long)arg1 messageBodyData:(id)arg2 hasVisualEncoding:(char *)arg3; +- (void)_parseHeadersWithEncodingHint:(unsigned long long)arg1 headerData:(id)arg2 bodyData:(id)arg3 hasVisualEncoding:(char *)arg4; +- (void)setDecryptedMessageBody:(id)arg1 isEncrypted:(BOOL)arg2 isSigned:(BOOL)arg3 error:(id)arg4; +- (void)clearCachedDecryptedMessageBody; +- (id)decryptedMessageBodyIsEncrypted:(char *)arg1 isSigned:(char *)arg2 error:(id *)arg3; +- (id)_archiveForMultipartRelated; +- (id)webArchive; +- (id)parsedMessageWithContext:(id)arg1; +- (id)parsedMessage; +- (id)_createArchiveWithConvertedPlainTextBodyClassFromArchive:(id)arg1; +- (id)_archiveForFileWrapper:(id)arg1 URL:(id)arg2; +- (id)_archiveForString:(id)arg1 URL:(id)arg2 needsPlainTextBodyClass:(BOOL)arg3; +- (id)_archiveForData:(id)arg1 URL:(id)arg2 MIMEType:(id)arg3 textEncodingName:(id)arg4 frameName:(id)arg5; +- (id)_archiveForData:(id)arg1 URL:(id)arg2 MIMEType:(id)arg3 textEncodingName:(id)arg4 frameName:(id)arg5 subresources:(id)arg6 subframeArchives:(id)arg7; +- (id)decodedContent; +- (id)decodedContentWithContext:(id)arg1; +- (id)htmlStringForMimePart:(id)arg1 attachment:(id)arg2; +- (void)htmlString:(id *)arg1 createWebResource:(id *)arg2 forFileWrapper:(id)arg3 partNumber:(id)arg4; +- (id)textHtmlPart; +- (id)textPart; +- (id)signedData; +- (id)bestAlternative; +- (id)startPart; +- (void)configureFileWrapper:(id)arg1; +- (void)downloadDidFinish:(id)arg1; +- (void)download:(id)arg1 didFailWithError:(id)arg2; +- (void)download:(id)arg1 didReceiveDataOfLength:(unsigned long long)arg2; +- (void)download:(id)arg1 didReceiveResponse:(id)arg2; +- (id)_remoteFileWrapper; +- (id)fileWrapper; +- (id)attributedString; +- (id)_getMessageAttachment:(unsigned long long)arg1; +- (id)_getMessageAttachment:(unsigned long long)arg1 context:(id)arg2; +- (id)_createFileWrapper; +- (id)_newAttachment; +@property(readonly, nonatomic) BOOL isAutoArchivePart; +- (BOOL)_isIWorkArchive; +- (void)_setMessageSigners:(id)arg1 andSigningError:(id)arg2; +- (id)copyMessageSigners; +- (BOOL)needsSignatureVerification:(id *)arg1; +- (BOOL)usesKnownSignatureProtocol; +- (BOOL)isHTML; +- (BOOL)isRich; +- (BOOL)isAttachment; +- (BOOL)shouldConsiderInlineOverridingExchangeServer; +- (BOOL)isMessageExternalBodyWithURL; +- (id)_partThatIsAttachment; +- (void)markAsStationeryImage; +- (BOOL)isStationeryImage; +- (BOOL)isCalendar; +@property(readonly, nonatomic) BOOL isImage; +- (BOOL)isReadableText; +- (unsigned long long)approximateDecodedSize; +- (unsigned long long)approximateRawSize; +- (id)attachmentFilenames; +- (id)attachments; +- (void)getNumberOfAttachments:(unsigned int *)arg1 filenames:(id)arg2 numberOfTNEFAttachments:(unsigned int *)arg3 isSigned:(char *)arg4 isEncrypted:(char *)arg5; +- (unsigned int)numberOfAttachments; +- (void)_getAttachmentsAndAddToCount:(unsigned int *)arg1 isSigned:(char *)arg2 isEncrypted:(char *)arg3 attachments:(id)arg4 attachmentsName:(id)arg5 numberOfTNEFAttachments:(unsigned int *)arg6; +- (BOOL)hasCachedDataInStore; +@property(readonly, nonatomic) BOOL isEncrypted; +@property(readonly, nonatomic) BOOL isSigned; +- (id)attachmentFilename; +- (id)attachmentFilenameWithHiddenExtension:(char *)arg1; +- (void)_appendToDescription:(id)arg1 withIndent:(unsigned long long)arg2; +@property(readonly, copy) NSString *description; +- (void)setMimeBody:(id)arg1; +- (id)mimeBody; +- (id)bodyConvertedFromFlowedText; +- (id)bodyString; +- (id)bodyData; +- (void)setRange:(struct _NSRange)arg1; +- (struct _NSRange)range; +- (void)addSubpart:(id)arg1; +- (void)setSubparts:(id)arg1; +- (id)subpartAtIndex:(long long)arg1; +- (id)subparts; +- (id)nextSiblingPart; +- (id)firstChildPart; +- (id)parentPart; +- (void)setLanguages:(id)arg1; +- (id)languages; +- (void)setContentLocation:(id)arg1; +- (id)contentLocation; +@property(readonly, copy, nonatomic) NSString *contentIDURLString; +- (void)setContentID:(id)arg1; +- (id)contentID; +- (void)setContentDescription:(id)arg1; +- (id)contentDescription; +- (id)dispositionParameterKeys; +- (void)setDispositionParameter:(id)arg1 forKey:(id)arg2; +- (id)dispositionParameterForKey:(id)arg1; +- (void)setDisposition:(id)arg1; +- (id)disposition; +- (id)typeInfo; +@property(readonly, nonatomic) unsigned int macCreatorCode; +@property(readonly, nonatomic) unsigned int macTypeCode; +@property(readonly, nonatomic) unsigned long long formatFlowedOptions; +- (id)bodyParameterKeys; +- (void)setBodyParameter:(id)arg1 forKey:(id)arg2; +- (id)bodyParameterForKey:(id)arg1; +- (BOOL)isTypeCode:(long long)arg1 subtypeCode:(long long)arg2; +- (BOOL)isType:(id)arg1 subtype:(id)arg2; +@property(copy, nonatomic) NSString *subtype; +- (long long)subtypeCode; +@property(copy, nonatomic) NSString *type; +- (long long)typeCode; +- (id)init; +- (void)dealloc; +- (void)renderString:(id)arg1; +- (id)copySignerLabels; +- (void)verifySignature; +- (id)decodeApplicationPkcs7_mimeWithContext:(id)arg1; +- (id)decodeMultipartSignedWithContext:(id)arg1; +- (id)_verifySignatureWithCMSDecoder:(struct _CMSDecoder *)arg1 againstSender:(id)arg2 signingError:(id *)arg3; +- (struct _CMSDecoder *)_newCMSDecoderWithMimePart:(id)arg1 error:(id *)arg2; +- (id)newEncryptedPartWithData:(id)arg1 recipients:(id)arg2 encryptedData:(id *)arg3; +- (id)newSignedPartWithData:(id)arg1 sender:(id)arg2 signatureData:(id *)arg3; +- (int)_addDataConvertingLineEndingsFromUnixToNetwork:(id)arg1 toCMSEncoder:(struct _CMSEncoder *)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeTextAttachment.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeTextAttachment.h new file mode 100644 index 00000000..800c2db0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMimeTextAttachment.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextAttachment.h" + +@class MCMimePart; + +@interface MCMimeTextAttachment : NSTextAttachment +{ + MCMimePart *_mimePart; +} + ++ (id)attachmentWithInternalAppleAttachmentData:(id)arg1 mimeBody:(id)arg2; +@property(retain, nonatomic) MCMimePart *mimePart; // @synthesize mimePart=_mimePart; +- (void).cxx_destruct; +- (BOOL)shouldDownloadAttachmentOnDisplay; +- (BOOL)hasBeenDownloaded; +- (BOOL)isPlaceholder; +- (unsigned long long)approximateSize; +- (id)fileWrapperForcingDownloadEvenIfExternalBody:(BOOL)arg1; +- (id)fileWrapperForcingDownload; +- (void)_forceDownloadOfFileWrapperInBackground:(id)arg1; +- (id)initWithMimePart:(id)arg1; +- (id)initWithFileWrapper:(id)arg1; +- (id)initWithMimePart:(id)arg1 andFileWrapper:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMonitoredInvocation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMonitoredInvocation.h new file mode 100644 index 00000000..c4dc000a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMonitoredInvocation.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSInvocation.h" + +@class MCActivityMonitor, NSNumber; + +@interface MCMonitoredInvocation : NSInvocation +{ + MCActivityMonitor *_monitor; + NSNumber *_requestedQualityOfService; +} + ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 object4:(id)arg6 taskName:(id)arg7 priority:(unsigned char)arg8 canBeCancelled:(BOOL)arg9; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 taskName:(id)arg6 priority:(unsigned char)arg7 canBeCancelled:(BOOL)arg8; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 taskName:(id)arg5 priority:(unsigned char)arg6 canBeCancelled:(BOOL)arg7; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object:(id)arg3 taskName:(id)arg4 priority:(unsigned char)arg5 canBeCancelled:(BOOL)arg6; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 taskName:(id)arg3 priority:(unsigned char)arg4 canBeCancelled:(BOOL)arg5; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 object4:(id)arg6; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object:(id)arg3; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2; +@property(retain) NSNumber *requestedQualityOfService; // @synthesize requestedQualityOfService=_requestedQualityOfService; +- (void).cxx_destruct; +- (unsigned char)priority; +- (void)invokeWithTarget:(id)arg1; +- (void)invoke; +- (void)setShouldPromptUserOnTermination; +@property(retain, nonatomic) MCActivityMonitor *monitor; +- (void)setTarget:(id)arg1; +- (id)target; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMonitoredOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMonitoredOperation.h new file mode 100644 index 00000000..3026c413 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMonitoredOperation.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOperation.h" + +@class MCActivityMonitor, NSString; + +@interface MCMonitoredOperation : NSOperation +{ + MCActivityMonitor *_parentMonitor; + MCActivityMonitor *_monitor; +} + +@property(retain, nonatomic) MCActivityMonitor *monitor; // @synthesize monitor=_monitor; +@property(retain, nonatomic) MCActivityMonitor *parentMonitor; // @synthesize parentMonitor=_parentMonitor; +- (void).cxx_destruct; +- (void)executeOperation; +@property(readonly, copy, nonatomic) NSString *activityString; +- (void)main; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMutableByteSet.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMutableByteSet.h new file mode 100644 index 00000000..37c0e092 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMutableByteSet.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCMutableByteSet : MCByteSet +{ +} + +- (void)invert; +- (void)removeBytesInRange:(struct _NSRange)arg1; +- (void)addBytesInRange:(struct _NSRange)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMutableMessageHeaders.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMutableMessageHeaders.h new file mode 100644 index 00000000..2874e259 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCMutableMessageHeaders.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSMutableArray, NSMutableDictionary; + +@interface MCMutableMessageHeaders : MCMessageHeaders +{ + NSMutableDictionary *_headersAdded; + NSMutableArray *_headersRemoved; +} + +- (void).cxx_destruct; +- (void)addFromSpaceIfMissing; +- (void)removeHeaderForKey:(id)arg1; +- (void)setMessageIDList:(id)arg1 forKey:(id)arg2; +- (void)setAddressList:(id)arg1 forKey:(id)arg2; +- (void)setHeader:(id)arg1 forKey:(id)arg2; +- (void)_appendHeaderKey:(id)arg1 value:(id)arg2 toData:(id)arg3; +- (void)_appendAddedHeaderKey:(id)arg1 value:(id)arg2 toData:(id)arg3; +- (id)encodedHeadersIncludingFromSpace:(BOOL)arg1; +- (id)_firstMessageIDForKey:(id)arg1 sender:(id)arg2; +- (id)messageIDListForKey:(id)arg1; +- (id)_firstAddressForKey:(id)arg1 sender:(id)arg2; +- (id)addressListForKey:(id)arg1; +- (id)firstHeaderForKey:(id)arg1; +- (id)_headersForKey:(id)arg1; +- (BOOL)hasHeaderForKey:(id)arg1; +- (id)allHeaderKeys; +- (id)description; +- (id)mutableCopyWithZone:(struct _NSZone *)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCNetworkController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCNetworkController.h new file mode 100644 index 00000000..db4656c1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCNetworkController.h @@ -0,0 +1,46 @@ +/* + * 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" + +@class NSMapTable, NSString; + +@interface MCNetworkController : NSObject +{ + struct __SCDynamicStore *_store; + struct __CFString *_dnsKey; + id _domainLock; + NSString *_domainName; + NSMapTable *_reachabilityReferencesForWatchedAccounts; +} + ++ (id)encodeAddressForIDNA:(id)arg1 encodingHint:(unsigned long long)arg2; ++ (id)applyIDNAToHostname:(id)arg1 encode:(BOOL)arg2; ++ (BOOL)domain:(id)arg1 isSubdomainOfDomain:(id)arg2; ++ (BOOL)hostnameIsFullyQualified:(id)arg1; ++ (id)baseDomainsForDomains:(id)arg1; ++ (id)subnetForIPAddress:(id)arg1; ++ (id)getHostUUIDString; ++ (id)filteredDomainNamesFromHost:(id)arg1; ++ (id)filteredIPAddressesFromHost:(id)arg1; ++ (long long)networkStatus; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void).cxx_destruct; +- (id)_watchedAccounts; +- (void)stopWatchingReachabilityForAccount:(id)arg1; +- (struct __SCNetworkReachability *)_newNetworkReachabilityReferenceForHostname:(id)arg1; +- (void)startWatchingReachabilityForAccount:(id)arg1; +- (BOOL)isHostReachable:(id)arg1 needToEstablishInternetConnection:(char *)arg2; +- (void)_clearDomainName; +- (id)domainName; +- (void)_postNetworkChangeNotification; +- (void)_queueNetworkChangeNotification; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCNtlmAuthScheme.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCNtlmAuthScheme.h new file mode 100644 index 00000000..18bfbaaa --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCNtlmAuthScheme.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCNtlmAuthScheme : MCAuthScheme +{ +} + ++ (id)ntlmAuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)supportedSaslMechanisms; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCOutgoingMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCOutgoingMessage.h new file mode 100644 index 00000000..c4a5473a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCOutgoingMessage.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MCMutableMessageHeaders, NSData, NSString, _MCOutgoingMessageBody; + +@interface MCOutgoingMessage : MCMessage +{ + _MCOutgoingMessageBody *_messageBody; + unsigned long long _localAttachmentsSize; + MCMutableMessageHeaders *_mutableHeaders; + NSString *_existingRemoteID; + NSString *_remoteID; + NSData *_rawData; +} + +@property(retain, nonatomic) NSData *rawData; // @synthesize rawData=_rawData; +@property(copy, nonatomic) NSString *remoteID; // @synthesize remoteID=_remoteID; +@property(retain, nonatomic) NSString *existingRemoteID; // @synthesize existingRemoteID=_existingRemoteID; +@property(retain, nonatomic) MCMutableMessageHeaders *mutableHeaders; // @synthesize mutableHeaders=_mutableHeaders; +- (void).cxx_destruct; +- (void)setLocalAttachmentsSize:(unsigned long long)arg1; +- (unsigned long long)messageSize; +- (id)headersIfAvailable; +- (id)headers; +- (id)messageDataIncludingFromSpace:(BOOL)arg1; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (id)messageBodyIfAvailable; +- (void)_setMessageBody:(id)arg1; +- (id)messageBody; +- (id)dataSource; +- (id)bodyDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)bodyData; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCParsedMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCParsedMessage.h new file mode 100644 index 00000000..a120144e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCParsedMessage.h @@ -0,0 +1,47 @@ +/* + * 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 "NSXMLParserDelegate.h" + +@class NSArray, NSDictionary, NSString, NSURL; + +@interface MCParsedMessage : NSObject +{ + BOOL _isPlainText; + NSString *_html; + NSString *_mimeType; + NSURL *_baseURL; + NSDictionary *_attachmentsByURL; + NSArray *_stationeryBackgroundImageURLs; +} + ++ (id)parsedMessageWithWebArchive:(id)arg1 archiveIsMailInternal:(BOOL)arg2; +@property(nonatomic) BOOL isPlainText; // @synthesize isPlainText=_isPlainText; +@property(copy, nonatomic) NSArray *stationeryBackgroundImageURLs; // @synthesize stationeryBackgroundImageURLs=_stationeryBackgroundImageURLs; +@property(copy, nonatomic) NSDictionary *attachmentsByURL; // @synthesize attachmentsByURL=_attachmentsByURL; +@property(retain, nonatomic) NSURL *baseURL; // @synthesize baseURL=_baseURL; +@property(copy, nonatomic) NSString *mimeType; // @synthesize mimeType=_mimeType; +@property(copy, nonatomic) NSString *html; // @synthesize html=_html; +- (void).cxx_destruct; +- (void)setBaseURLFromHtml; +- (id)attributedString; +- (void)_addWebArchiveDataToArray:(id)arg1; +@property(readonly, copy) NSString *description; +- (void)addAttachment:(id)arg1 forURL:(id)arg2; +- (void)_mcParsedMessageCommonInit; +- (id)init; +- (id)initWithWebArchive:(id)arg1 archiveIsMailInternal:(BOOL)arg2; +- (id)initWithWebArchive:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPersistedAccount-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPersistedAccount-Protocol.h new file mode 100644 index 00000000..158a31d1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPersistedAccount-Protocol.h @@ -0,0 +1,20 @@ +/* + * 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" + +@class ACAccountCredential, NSString; + +@protocol MCPersistedAccount +@property(nonatomic) BOOL enabled; +@property(retain, nonatomic) ACAccountCredential *credential; +@property(nonatomic) BOOL allowInsecureAuthentication; +@property(copy, nonatomic) NSString *username; +@property(copy, nonatomic) NSString *canonicalEmailAddress; +@property(copy, nonatomic) NSString *accountDescription; +@property(readonly, copy, nonatomic) NSString *identifier; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPersistedConnectionBasedAccount-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPersistedConnectionBasedAccount-Protocol.h new file mode 100644 index 00000000..281ccffb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPersistedConnectionBasedAccount-Protocol.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCPersistedAccount.h" + +@class NSData, NSString; + +@protocol MCPersistedConnectionBasedAccount +@property(copy, nonatomic) NSString *authenticationSchemeName; +@property(copy, nonatomic) NSData *tlsCertificate; +@property(nonatomic) long long securityLayerType; +@property(nonatomic) long long port; +@property(copy, nonatomic) NSString *hostname; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPersistentIDFetching-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPersistentIDFetching-Protocol.h new file mode 100644 index 00000000..4ce97a27 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPersistentIDFetching-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MCPersistentIDFetching ++ (id)fetchedMessageWithRowID:(long long)arg1; +- (long long)libraryID; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPlaceholderArchiveFileWrapper.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPlaceholderArchiveFileWrapper.h new file mode 100644 index 00000000..cc5631bb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPlaceholderArchiveFileWrapper.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCPlaceholderArchiveFileWrapper : MCArchiveFileWrapper +{ +} + +- (BOOL)isPlaceholder; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPlaceholderFileWrapper.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPlaceholderFileWrapper.h new file mode 100644 index 00000000..7db375f0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPlaceholderFileWrapper.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface MCPlaceholderFileWrapper : NSFileWrapper +{ +} + +- (BOOL)isRemotelyAccessed; +- (BOOL)isPlaceholder; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPlainAuthScheme.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPlainAuthScheme.h new file mode 100644 index 00000000..2df2bea1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPlainAuthScheme.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCPlainAuthScheme : MCAuthScheme +{ +} + ++ (id)plainAuthScheme; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)supportedSaslMechanisms; +- (unsigned int)applescriptScheme; +- (id)humanReadableName; +- (id)name; +- (id)internetAccountsScheme; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPortNumberFormatter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPortNumberFormatter.h new file mode 100644 index 00000000..796360a4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPortNumberFormatter.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSNumberFormatter.h" + +@interface MCPortNumberFormatter : NSNumberFormatter +{ +} + +- (id)stringForObjectValue:(id)arg1; +- (BOOL)getObjectValue:(out id *)arg1 forString:(id)arg2 errorDescription:(out id *)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPriorityInvocation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPriorityInvocation.h new file mode 100644 index 00000000..e2f6b892 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCPriorityInvocation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSInvocation.h" + +@interface MCPriorityInvocation : NSInvocation +{ + unsigned char _priority; +} + ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 object4:(id)arg6 priority:(unsigned char)arg7; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 priority:(unsigned char)arg6; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 priority:(unsigned char)arg5; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object:(id)arg3 priority:(unsigned char)arg4; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 priority:(unsigned char)arg3; +@property unsigned char priority; // @synthesize priority=_priority; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCQuotaUsage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCQuotaUsage.h new file mode 100644 index 00000000..00307c59 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCQuotaUsage.h @@ -0,0 +1,24 @@ +/* + * 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" + +@interface MCQuotaUsage : NSObject +{ + CDStruct_d3e19d9e _current; + CDStruct_d3e19d9e _maximum; +} + +@property(nonatomic) CDStruct_d3e19d9e maximum; // @synthesize maximum=_maximum; +@property(nonatomic) CDStruct_d3e19d9e current; // @synthesize current=_current; +- (id)description; +- (BOOL)isEqual:(id)arg1; +- (unsigned long long)hash; +- (void)incrementCurrentBy:(CDStruct_d3e19d9e)arg1; +- (void)decrementCurrentBy:(CDStruct_d3e19d9e)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCRemoteMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCRemoteMessage.h new file mode 100644 index 00000000..48cca9d7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCRemoteMessage.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCRemoteMessage : MCMessage +{ + CDStruct_07ba05d6 _remoteFlags; + unsigned long long _messageSize; +} + +@property(nonatomic) unsigned long long messageSize; // @synthesize messageSize=_messageSize; +@property(nonatomic) CDStruct_07ba05d6 remoteFlags; // @synthesize remoteFlags=_remoteFlags; +@property(nonatomic) BOOL hasTemporaryUid; +@property(nonatomic) BOOL partsHaveBeenCached; +@property(nonatomic) BOOL isPartial; +- (id)initWithSize:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCRemotePlaceholderFileWrapper.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCRemotePlaceholderFileWrapper.h new file mode 100644 index 00000000..eb483d0e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCRemotePlaceholderFileWrapper.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSURL; + +@interface MCRemotePlaceholderFileWrapper : MCPlaceholderFileWrapper +{ + NSURL *_URL; +} + +@property(readonly, nonatomic) NSURL *URL; // @synthesize URL=_URL; +- (void).cxx_destruct; +- (unsigned long long)approximateSize; +- (id)symbolicLinkDestinationURL; +- (BOOL)isRemotelyAccessed; +- (id)initWithCoder:(id)arg1; +- (id)initWithSerializedRepresentation:(id)arg1; +- (id)initSymbolicLinkWithDestinationURL:(id)arg1; +- (id)initRegularFileWithContents:(id)arg1; +- (id)initDirectoryWithFileWrappers:(id)arg1; +- (id)initWithURL:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (id)initWithURL:(id)arg1; +- (id)remoteAccessMimeType; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCResultTaskOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCResultTaskOperation.h new file mode 100644 index 00000000..e25203f6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCResultTaskOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MCResultTaskOperation : MCTaskOperation +{ + id _result; +} + +@property(retain, nonatomic) id result; // @synthesize result=_result; +- (void).cxx_destruct; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSAXHTMLParsing.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSAXHTMLParsing.h new file mode 100644 index 00000000..20be62a0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSAXHTMLParsing.h @@ -0,0 +1,32 @@ +/* + * 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" + +@class NSMutableDictionary, NSMutableString, NSString; + +@interface MCSAXHTMLParsing : NSObject +{ + NSMutableString *string; + NSMutableDictionary *attributes; + NSString *metaName; + NSString *metaHttpEquiv; + NSString *metaContent; + unsigned long long encoding; + unsigned int indexingLimit; + const char *titleStart; + unsigned int titleLength; + BOOL inHead; + BOOL inTitle; + BOOL inScript; + BOOL inStyle; +} + +- (void).cxx_destruct; +- (id)initWithEncoding:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSSLCertificateTrustPanelManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSSLCertificateTrustPanelManager.h new file mode 100644 index 00000000..8140f179 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSSLCertificateTrustPanelManager.h @@ -0,0 +1,27 @@ +/* + * 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" + +@class NSMutableDictionary, NSMutableSet; + +@interface MCSSLCertificateTrustPanelManager : NSObject +{ + id _hostStateLock; + NSMutableSet *_hostnamesAlreadyPromptedFor; + NSMutableDictionary *_hostnamesToPendingOperations; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void).cxx_destruct; +- (void)resetCertificateTrustPanelForHost:(id)arg1; +- (BOOL)showCertificateTrustPanelForError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSaslClient.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSaslClient.h new file mode 100644 index 00000000..e5a71249 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSaslClient.h @@ -0,0 +1,64 @@ +/* + * 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" + +@class NSArray, NSError, NSString; + +@interface MCSaslClient : NSObject +{ + char *_userLanguageCode; + char *_authenticationName; + char *_authorizationName; + struct sasl_secret *_password; + char *_authenticationPersonID; + char *_authorizationPersonID; + char *_appleToken; + char *_googleToken; + BOOL _excludeAuthorizationName; + BOOL _mechanismUsesPlainText; + BOOL _lastResponseIncludesCredential; + unsigned int _encryptionBufferSize; + id _account; + long long _saslStatus; + NSError *_saslError; + NSString *_selectedMechanismName; + NSArray *_mechanismNames; + struct sasl_callback *_callbacks; + struct sasl_conn *_saslConnection; +} + ++ (id)keyPathsForValuesAffectingLastResponseIncludesPlainTextCredential; +@property(nonatomic) BOOL lastResponseIncludesCredential; // @synthesize lastResponseIncludesCredential=_lastResponseIncludesCredential; +@property(nonatomic) BOOL mechanismUsesPlainText; // @synthesize mechanismUsesPlainText=_mechanismUsesPlainText; +@property(nonatomic) struct sasl_conn *saslConnection; // @synthesize saslConnection=_saslConnection; +@property(nonatomic) struct sasl_callback *callbacks; // @synthesize callbacks=_callbacks; +@property(copy, nonatomic) NSArray *mechanismNames; // @synthesize mechanismNames=_mechanismNames; +@property(nonatomic) unsigned int encryptionBufferSize; // @synthesize encryptionBufferSize=_encryptionBufferSize; +@property(nonatomic) BOOL excludeAuthorizationName; // @synthesize excludeAuthorizationName=_excludeAuthorizationName; +@property(copy, nonatomic) NSString *selectedMechanismName; // @synthesize selectedMechanismName=_selectedMechanismName; +@property(retain, nonatomic) NSError *saslError; // @synthesize saslError=_saslError; +@property(nonatomic) long long saslStatus; // @synthesize saslStatus=_saslStatus; +@property(nonatomic) __weak id account; // @synthesize account=_account; +- (void).cxx_destruct; +- (void)_handleNeedsUserInteraction:(struct sasl_interact *)arg1; +- (void)_handleStartFailure:(int)arg1; +- (BOOL)_logGenericError:(int)arg1 saslConnection:(struct sasl_conn *)arg2 description:(id)arg3 error:(id *)arg4; +- (void)_handleGenericError:(int)arg1 description:(id)arg2; +- (void)_clearAuthenticationCallbackBuffers; +- (id)newDecryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (id)newEncryptedDataForBytes:(const char *)arg1 length:(unsigned int)arg2; +- (void)_retrieveEncryptionBufferSize; +@property(readonly, nonatomic) BOOL lastResponseIncludesPlainTextCredential; +- (id)responseForServerData:(id)arg1; +- (id)startAndReturnInitialResponse:(BOOL)arg1; +- (id)description; +- (void)dealloc; +- (id)init; +- (id)initWithMechanismNames:(id)arg1 account:(id)arg2 externalSecurityLayer:(unsigned int)arg3 allowPlainText:(BOOL)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSharedPreferencesController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSharedPreferencesController.h new file mode 100644 index 00000000..6995b620 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSharedPreferencesController.h @@ -0,0 +1,32 @@ +/* + * 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" + +@class NSArray, NSString, NSUserDefaults; + +@interface MCSharedPreferencesController : NSObject +{ + NSUserDefaults *_sharedMailUserDefaults; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain, nonatomic) NSUserDefaults *sharedMailUserDefaults; // @synthesize sharedMailUserDefaults=_sharedMailUserDefaults; +- (void).cxx_destruct; +- (void)_preferencesChangedExternally:(id)arg1; +- (void)_postPreferencesDidChangeNotifications; +@property(readonly) BOOL intranetDomainsManagedByProfile; +@property BOOL shouldCheckIntranetDomains; +@property(retain) NSArray *intranetDomains; +@property long long addressDisplayMode; +@property BOOL shouldExpandGroups; +@property(retain) NSString *defaultFromAddress; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSocket.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSocket.h new file mode 100644 index 00000000..09f728a6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSocket.h @@ -0,0 +1,77 @@ +/* + * 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 "NSStreamDelegate.h" + +@class NSArray, NSInputStream, NSOutputStream, NSPort, NSString; + +@interface MCSocket : NSObject +{ + NSArray *_clientCertificates; + BOOL _useSSL; + BOOL _scheduledForBytesToArrive; + unsigned long long _identifier; + long long _activityType; + double _connectTimeout; + double _readWriteTimeout; + NSArray *_trustedCertificates; + NSPort *_wakeupPort; + NSInputStream *_inputStream; + NSOutputStream *_outputStream; + id _bytesAvailableHandler; +} + +@property BOOL scheduledForBytesToArrive; // @synthesize scheduledForBytesToArrive=_scheduledForBytesToArrive; +@property(copy) id bytesAvailableHandler; // @synthesize bytesAvailableHandler=_bytesAvailableHandler; +@property(retain) NSOutputStream *outputStream; // @synthesize outputStream=_outputStream; +@property(retain) NSInputStream *inputStream; // @synthesize inputStream=_inputStream; +@property(readonly, nonatomic) NSPort *wakeupPort; // @synthesize wakeupPort=_wakeupPort; +@property(copy) NSArray *trustedCertificates; // @synthesize trustedCertificates=_trustedCertificates; +@property(nonatomic) double readWriteTimeout; // @synthesize readWriteTimeout=_readWriteTimeout; +@property(nonatomic) double connectTimeout; // @synthesize connectTimeout=_connectTimeout; +@property long long activityType; // @synthesize activityType=_activityType; +@property(readonly) unsigned long long identifier; // @synthesize identifier=_identifier; +- (void).cxx_destruct; +- (void)stream:(id)arg1 handleEvent:(unsigned long long)arg2; +@property(readonly, nonatomic) BOOL isExpensive; +- (void)_cancelLookupForHost:(struct __CFHost *)arg1 infoType:(int)arg2; +- (id)sourceHostname; +- (id)sourceIPAddress; +- (long long)remotePortNumber; +- (id)remoteHostname; +- (BOOL)isValid; +- (BOOL)isWritable; +- (BOOL)isReadable; +- (unsigned int)cipherKeyLength; +- (struct __SecTrust *)serverTrust; +- (id)securityLevel; +- (void)_unscheduleInputStreamFromMainRunLoopIfNecessary; +- (void)_scheduleInputStreamInMainRunLoopIfNecessary; +- (void)unregisterForBytesToArrive; +- (void)registerForBytesToArriveWithHandler:(id)arg1; +- (void)close; +- (void)_handleReadWriteErrorOnStream:(id)arg1 timedOut:(BOOL)arg2 logDetails:(id)arg3 error:(id *)arg4; +- (long long)writeBytes:(const void *)arg1 maxLength:(unsigned long long)arg2 error:(id *)arg3; +- (long long)readBytes:(void *)arg1 maxLength:(unsigned long long)arg2 error:(id *)arg3; +- (id)_waitForSecurityLayerNegotiationStreamsAreScheduled:(BOOL)arg1; +- (BOOL)_setSSLStreamProperties:(BOOL)arg1; +- (BOOL)_setupStreamsWithHostname:(id)arg1 port:(long long)arg2 needToEstablishInternetConnection:(char *)arg3 useSSL:(char *)arg4 isBackground:(BOOL)arg5 error:(id *)arg6; +- (BOOL)connectToHost:(id)arg1 withPort:(long long)arg2 isBackground:(BOOL)arg3; +- (void)setClientIdentity:(struct OpaqueSecIdentityRef *)arg1; +- (BOOL)setUsesSSL:(BOOL)arg1; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCStringRenderContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCStringRenderContext.h new file mode 100644 index 00000000..5acd9722 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCStringRenderContext.h @@ -0,0 +1,37 @@ +/* + * 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" + +@class MCJunkRecorder, NSMutableString, NSSet; + +@interface MCStringRenderContext : NSObject +{ + NSMutableString *_buffer; + BOOL _updateBodyFlags; + MCJunkRecorder *_junkRecorder; + unsigned long long _imageCount; + unsigned long long _characterCount; + NSSet *_URLs; + NSSet *_imageURLs; + long long _mode; +} + +@property(readonly, nonatomic) NSMutableString *buffer; // @synthesize buffer=_buffer; +@property(nonatomic) BOOL updateBodyFlags; // @synthesize updateBodyFlags=_updateBodyFlags; +@property(nonatomic) long long mode; // @synthesize mode=_mode; +@property(retain, nonatomic) NSSet *imageURLs; // @synthesize imageURLs=_imageURLs; +@property(retain, nonatomic) NSSet *URLs; // @synthesize URLs=_URLs; +@property(nonatomic) unsigned long long characterCount; // @synthesize characterCount=_characterCount; +@property(nonatomic) unsigned long long imageCount; // @synthesize imageCount=_imageCount; +@property(retain, nonatomic) MCJunkRecorder *junkRecorder; // @synthesize junkRecorder=_junkRecorder; +- (void).cxx_destruct; +- (id)renderString; +- (id)init; +- (id)initForMode:(long long)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSubdata.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSubdata.h new file mode 100644 index 00000000..7a2d58e2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSubdata.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSData.h" + +@interface MCSubdata : NSData +{ + NSData *_parentData; + struct _NSRange _subrange; +} + +@property(retain, nonatomic) NSData *parentData; // @synthesize parentData=_parentData; +@property(nonatomic) struct _NSRange subrange; // @synthesize subrange=_subrange; +- (void).cxx_destruct; +- (const void *)bytes; +- (unsigned long long)length; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithContentsOfMappedFile:(id)arg1; +- (id)initWithData:(id)arg1; +- (id)initWithContentsOfURL:(id)arg1; +- (id)initWithContentsOfFile:(id)arg1; +- (id)initWithContentsOfURL:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (id)initWithContentsOfFile:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (id)initWithBytesNoCopy:(void *)arg1 length:(unsigned long long)arg2 freeWhenDone:(BOOL)arg3; +- (id)initWithBytesNoCopy:(void *)arg1 length:(unsigned long long)arg2; +- (id)initWithBytes:(const void *)arg1 length:(unsigned long long)arg2; +- (id)init; +- (id)initWithParent:(id)arg1 range:(struct _NSRange)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSubjectParser.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSubjectParser.h new file mode 100644 index 00000000..57b723b4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCSubjectParser.h @@ -0,0 +1,18 @@ +/* + * 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" + +@interface MCSubjectParser : NSObject +{ +} + ++ (unsigned long long)effectivePrefixLengthForSubject:(id)arg1 replyOnly:(BOOL)arg2; ++ (id)effectiveSubjectForSubject:(id)arg1 prefix:(id *)arg2; ++ (BOOL)subjectHasReplyPrefix:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCTaskOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCTaskOperation.h new file mode 100644 index 00000000..ec5efdd0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCTaskOperation.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSBlockOperation.h" + +@class MCActivityMonitor; + +@interface MCTaskOperation : NSBlockOperation +{ + MCActivityMonitor *_parentMonitor; + MCActivityMonitor *_monitor; +} + ++ (void)setTaskDescription:(const char *)arg1; +@property(retain) MCActivityMonitor *monitor; // @synthesize monitor=_monitor; +@property(retain) MCActivityMonitor *parentMonitor; // @synthesize parentMonitor=_parentMonitor; +- (void).cxx_destruct; +- (void)cancel; +- (void)dealloc; +- (void)main; +- (id)setTaskName:(id)arg1 priority:(unsigned char)arg2 canCancel:(BOOL)arg3; +- (void)setParentMonitor:(id)arg1 taskName:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCThrowingInvocationOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCThrowingInvocationOperation.h new file mode 100644 index 00000000..4c8fa938 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCThrowingInvocationOperation.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSInvocationOperation.h" + +@interface MCThrowingInvocationOperation : NSInvocationOperation +{ +} + +- (void)main; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCURLMatch.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCURLMatch.h new file mode 100644 index 00000000..18f2b701 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCURLMatch.h @@ -0,0 +1,25 @@ +/* + * 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" + +@class NSString; + +@interface MCURLMatch : NSObject +{ + NSString *_url; + struct _NSRange _range; +} + +@property(copy, nonatomic) NSString *url; // @synthesize url=_url; +@property(nonatomic) struct _NSRange range; // @synthesize range=_range; +- (void).cxx_destruct; +- (id)description; +- (id)init; +- (id)initWithRange:(struct _NSRange)arg1 url:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCURLifier.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCURLifier.h new file mode 100644 index 00000000..b6b84a24 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCURLifier.h @@ -0,0 +1,17 @@ +/* + * 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" + +@interface MCURLifier : NSObject +{ +} + ++ (id)urlMatchesForString:(id)arg1; ++ (id)urlMatchesForStringsInDictionary:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCUserAlertCoordinator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCUserAlertCoordinator.h new file mode 100644 index 00000000..969cf0dd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCUserAlertCoordinator.h @@ -0,0 +1,31 @@ +/* + * 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" + +@class NSMutableArray; + +@interface MCUserAlertCoordinator : NSObject +{ + NSMutableArray *_requests; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void).cxx_destruct; +- (void)_dequeueRequestAndStartNextRequest; +- (void)_displayInsecureAuthenticationRequest:(id)arg1; +- (void)_displayWebAuthentication:(id)arg1; +- (void)_displayUserAlertRequest; +- (void)_queueDisplayUserAlertForCoalescingValue:(id)arg1 onWindow:(id)arg2 completionHandler:(void)arg3 requestCreator:(id)arg4; +- (void)queueDisplayInsecureAuthenticationRequestForAccount:(id)arg1 applicationName:(id)arg2 onWindow:(id)arg3 completionHandler:(void)arg4; +- (void)queueDisplayWebAuthenticationURL:(id)arg1 onWindow:(id)arg2 completionHandler:(void)arg3; +- (id)description; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCWorkerThread.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCWorkerThread.h new file mode 100644 index 00000000..0d736a34 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MCWorkerThread.h @@ -0,0 +1,18 @@ +/* + * 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" + +@interface MCWorkerThread : NSObject +{ +} + ++ (void)runInvocationOnQueueSynchronously:(id)arg1; ++ (void)addInvocationToQueue:(id)arg1; ++ (void)initialize; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MailCoreFramework.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MailCoreFramework.h new file mode 100644 index 00000000..f0f6cd5d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/MailCoreFramework.h @@ -0,0 +1,23 @@ +/* + * 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" + +@interface MailCoreFramework : NSObject +{ +} + ++ (int)uniqueIDForMessageURL; ++ (id)logMessages; ++ (void)setUserAgent:(id)arg1; ++ (id)userAgent; ++ (BOOL)isRunningInMail; ++ (void)setRunningInSpotlightImporter:(BOOL)arg1; ++ (BOOL)isRunningInSpotlightImporter; ++ (id)bundle; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAlertDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAlertDelegate-Protocol.h new file mode 100644 index 00000000..d6c0b2e1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAlertDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSAlertDelegate + +@optional +- (BOOL)alertShowHelp:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-DateComparisonForRecents.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-DateComparisonForRecents.h new file mode 100644 index 00000000..268694d7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-DateComparisonForRecents.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (DateComparisonForRecents) +- (id)thirdDate; +- (unsigned long long)indexOfThirdDate; +- (unsigned long long)indexOfOldestDate; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-DeepCopying.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-DeepCopying.h new file mode 100644 index 00000000..600a86ef --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-DeepCopying.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (DeepCopying) +- (id)twiceMutableCopy; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-DerivedArray.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-DerivedArray.h new file mode 100644 index 00000000..140345ed --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-DerivedArray.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (DerivedArray) +- (id)indicesOfStringsWithPrefix:(id)arg1; +- (id)arrayByAddingAbsentObjectsFromArray:(id)arg1 accordingToEquals:(BOOL)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-MessagesFromMixedStoresConvenience.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-MessagesFromMixedStoresConvenience.h new file mode 100644 index 00000000..d730729d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-MessagesFromMixedStoresConvenience.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArray.h" + +@class NSDictionary; + +@interface NSArray (MessagesFromMixedStoresConvenience) +@property(readonly, copy, nonatomic) NSDictionary *dictionaryWithMessagesSortedByMailbox; +@property(readonly, copy, nonatomic) NSDictionary *dictionaryWithMessagesSortedByStore; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-removeSelf.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-removeSelf.h new file mode 100644 index 00000000..338e7f55 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSArray-removeSelf.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (removeSelf) +- (id)attributedComponentsJoinedByString:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-FontAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-FontAdditions.h new file mode 100644 index 00000000..7b97e4a3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-FontAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@interface NSAttributedString (FontAdditions) ++ (double)headerFontSize; ++ (id)fixedPitchAttributes; ++ (id)headerAttributes; ++ (id)boldGrayHeaderAttributes; ++ (void)resetMimeHeaderAttributes; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-MCFormatFlowedSupport.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-MCFormatFlowedSupport.h new file mode 100644 index 00000000..d8ddf2a5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-MCFormatFlowedSupport.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MCFormatFlowedSupport) +- (void)getQuotedString:(id *)arg1 encoding:(unsigned long long)arg2; +- (void)getFormatFlowedString:(id *)arg1 insertedTrailingSpaces:(char *)arg2 encoding:(unsigned long long)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-MCMimeEnrichedWriter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-MCMimeEnrichedWriter.h new file mode 100644 index 00000000..747b4fa9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-MCMimeEnrichedWriter.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MCMimeEnrichedWriter) +- (id)enrichedString; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-MailCoreAdditions.h new file mode 100644 index 00000000..5838da25 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-MailCoreAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MailCoreAdditions) +- (BOOL)containsRichText; +- (BOOL)containsRichTextInRange:(struct _NSRange)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-MessagePasteboardSupport.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-MessagePasteboardSupport.h new file mode 100644 index 00000000..190a288d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSAttributedString-MessagePasteboardSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MessagePasteboardSupport) +- (id)messageDataForRange:(struct _NSRange)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSCharacterSet-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSCharacterSet-MailCoreAdditions.h new file mode 100644 index 00000000..e2b65fa8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSCharacterSet-MailCoreAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSCharacterSet.h" + +@interface NSCharacterSet (MailCoreAdditions) ++ (id)replacementCharacterSet; ++ (id)unsafeDomainNameCharacterSet; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSColor-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSColor-MailCoreAdditions.h new file mode 100644 index 00000000..a04ab241 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSColor-MailCoreAdditions.h @@ -0,0 +1,50 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSColor.h" + +@interface NSColor (MailCoreAdditions) ++ (id)scriptingRGBColorWithDescriptor:(id)arg1; ++ (id)stationeryPaneBackgroundColor; ++ (id)inactiveAlternateBackgroundColor; ++ (id)activeAlternateBackgroundColor; ++ (id)aquaBlueColor; ++ (id)subjectAdditionColor; ++ (id)splitterColor; ++ (id)activeLinkColor; ++ (id)visitedLinkColor; ++ (id)linkColor; ++ (id)junkMailColor; ++ (id)threadQuasiSelectedColor; ++ (id)lighterThreadChildBackgroundColor; ++ (id)threadChildBackgroundColor; ++ (id)threadBackgroundColor; ++ (void)clearThreadBackgroundColors; ++ (id)lighterThreadBackgroundColor; ++ (void)setThreadBackgroundColor:(id)arg1; ++ (id)colorWithHexString:(id)arg1; ++ (id)colorWithIntValue:(int)arg1; ++ (id)newSwatchForColor:(id)arg1; ++ (void)configureColorMenu:(id)arg1; ++ (id)colorForEnrichedValue:(id)arg1; ++ (id)colorForIdentifier:(id)arg1; ++ (id)identifierForColor:(id)arg1; ++ (int)intWithIdentifierColor:(id)arg1; ++ (id)colorPlist; ++ (id)colorForHighlightColorValue:(unsigned int)arg1; ++ (unsigned int)highlightColorValueForColor:(id)arg1; ++ (id)allHighlightColors; ++ (id)colorForQuoteLevel:(unsigned long long)arg1; ++ (void)setQuotingColorList:(id)arg1; ++ (id)quotingColorList; ++ (id)defaultQuotingColors; ++ (id)allQuotingColors; +- (id)cssColorString; +- (id)scriptingRGBColorDescriptor; +- (id)hexString; +- (int)intValue; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSCopying-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSCopying-Protocol.h new file mode 100644 index 00000000..3275f717 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCopying +- (id)copyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSData-HFSDataConversion.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSData-HFSDataConversion.h new file mode 100644 index 00000000..0b449118 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSData-HFSDataConversion.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSData.h" + +@interface NSData (HFSDataConversion) +- (id)wrapperForBinHex40DataWithFileEncodingHint:(unsigned long long)arg1; +- (id)wrapperForAppleFileDataWithFileEncodingHint:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSData-MCMimeDataEncoding.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSData-MCMimeDataEncoding.h new file mode 100644 index 00000000..908dfa84 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSData-MCMimeDataEncoding.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSData.h" + +@interface NSData (MCMimeDataEncoding) ++ (unsigned long long)quotedPrintableLengthOfHeaderBytes:(const char *)arg1 length:(unsigned long long)arg2; +- (id)encodeQuotedPrintableForText:(BOOL)arg1 allowCancel:(BOOL)arg2; +- (id)decodeQuotedPrintableForText:(BOOL)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSData-MCUUEnDecode.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSData-MCUUEnDecode.h new file mode 100644 index 00000000..a45f4e1e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSData-MCUUEnDecode.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSData.h" + +@interface NSData (MCUUEnDecode) +- (id)uuencodedDataWithFile:(id)arg1 mode:(unsigned int)arg2; +- (id)uudecodedDataIntoFile:(id *)arg1 mode:(unsigned int *)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSData-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSData-MailCoreAdditions.h new file mode 100644 index 00000000..aae8da52 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSData-MailCoreAdditions.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSData.h" + +@interface NSData (MailCoreAdditions) +- (id)hexString; +- (id)MD5Digest; +- (struct _NSRange)rangeOfCString:(const char *)arg1 options:(unsigned long long)arg2 range:(struct _NSRange)arg3; +- (struct _NSRange)rangeOfCString:(const char *)arg1 options:(unsigned long long)arg2; +- (struct _NSRange)rangeOfCString:(const char *)arg1; +- (struct _NSRange)rangeOfByteFromSet:(id)arg1; +- (struct _NSRange)rangeOfRFC822HeaderData; +- (id)quotedFromSpaceDataForMessage; +- (id)unquotedFromSpaceDataWithRange:(struct _NSRange)arg1; +- (id)initWithDataConvertingLineEndingsFromNetworkToUnix:(id)arg1; +- (id)initWithDataConvertingLineEndingsFromUnixToNetwork:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSDate-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSDate-MailCoreAdditions.h new file mode 100644 index 00000000..1051f51f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSDate-MailCoreAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSDate.h" + +@interface NSDate (MailCoreAdditions) ++ (id)startOfDayWithDaysSinceToday:(long long)arg1; +- (id)replyPrefixForSender:(id)arg1 withSpacer:(BOOL)arg2; +- (id)descriptionInBSDMailboxFormat; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSError-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSError-MailCoreAdditions.h new file mode 100644 index 00000000..b31177f3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSError-MailCoreAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSError.h" + +@interface NSError (MailCoreAdditions) +- (id)shortDescription; +- (id)moreInfo; +- (BOOL)isSSLCertificateError; +- (BOOL)isAuthenticationError; +- (BOOL)shouldBeReportedToUser; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileHandle-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileHandle-MailCoreAdditions.h new file mode 100644 index 00000000..6ddc5e80 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileHandle-MailCoreAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileHandle.h" + +@interface NSFileHandle (MailCoreAdditions) ++ (id)fileHandleForTempFile:(id *)arg1 atPath:(id)arg2 mode:(unsigned short)arg3; ++ (id)fileHandleForUniqueFile:(id *)arg1 atPath:(id)arg2 mode:(unsigned short)arg3; ++ (id)fileHandleForUniqueFile:(id *)arg1 atPath:(id)arg2 mode:(unsigned short)arg3 extension:(id)arg4; ++ (id)createFileAtPath:(id)arg1 flags:(int)arg2 mode:(unsigned short)arg3; +- (BOOL)writeBytes:(const char *)arg1 length:(unsigned long long)arg2; +- (BOOL)writeLossyString:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileManager-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileManager-MailCoreAdditions.h new file mode 100644 index 00000000..0b88ab9e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileManager-MailCoreAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileManager.h" + +@interface NSFileManager (MailCoreAdditions) +- (id)fileModificationDateAtPath:(id)arg1 traverseLink:(BOOL)arg2; +- (long long)fileSizeAtPath:(id)arg1 traverseLink:(BOOL)arg2; +- (id)URLForNonContainerizedHomeDirectory; +- (id)createUniqueDirectoryAtPath:(id)arg1 withIntermediateDirectories:(BOOL)arg2 attributes:(id)arg3 error:(id *)arg4; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-ArchivedData.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-ArchivedData.h new file mode 100644 index 00000000..374010e0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-ArchivedData.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (ArchivedData) +- (id)archivedData; +- (id)archivedDataWithPartNumber:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-HFSDataConversion.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-HFSDataConversion.h new file mode 100644 index 00000000..c900e3c9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-HFSDataConversion.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (HFSDataConversion) +- (id)appleDoubleDataWithFilename:(const char *)arg1 length:(unsigned long long)arg2; +- (id)appleSingleDataWithFilename:(const char *)arg1 length:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-MailCoreAdditions.h new file mode 100644 index 00000000..72689145 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-MailCoreAdditions.h @@ -0,0 +1,44 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@class NSArray, NSData, NSDictionary, NSNumber, NSString; + +@interface NSFileWrapper (MailCoreAdditions) +- (id)stringForIndexing; +- (unsigned long long)approximateSize; +- (BOOL)isALargeAttachment; +- (BOOL)isPlaceholder; +- (id)tmpFullPath; +- (id)preferredFilenameWithoutHiddenExtension; +- (void)_isImageFile:(char *)arg1 isPDF:(char *)arg2 bestMimeType:(id *)arg3; +- (void)isImageFile:(char *)arg1 isPDF:(char *)arg2; +- (BOOL)isImageFile; +@property(readonly, copy, nonatomic) NSString *bestMimeType; +- (BOOL)isRemotelyAccessed; +- (unsigned long long)imageBytes; +- (struct CGSize)imageSize; +- (void)setImageSize:(struct CGSize)arg1 imageBytes:(unsigned long long)arg2; +@property(retain, nonatomic) NSString *messageID; +@property(retain, nonatomic) NSArray *whereFroms; +@property(retain, nonatomic) NSDictionary *quarantineProperties; +@property(retain, nonatomic) NSString *mimeType; +@property(retain, nonatomic) NSString *mailSpecialHandlingType; +@property(retain, nonatomic) NSString *contentID; +@property(retain, nonatomic) NSNumber *filePermissions; +@property(nonatomic) BOOL shouldHideExtension; +@property(nonatomic) unsigned short finderFlags; +@property(nonatomic) unsigned int creator; +@property(nonatomic) unsigned int type; +@property(retain, nonatomic) NSData *resourceForkData; +- (void)removeEmptyAttachment; +- (id)emptyAttachmentPath; +- (BOOL)emptyAttachmentExists; +- (BOOL)createEmptyAttachmentAtPath:(id)arg1; +- (BOOL)_writeFinderInfoToPath:(id)arg1 includeDirectoryContents:(BOOL)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-PersistenceWithoutLosingMetadata.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-PersistenceWithoutLosingMetadata.h new file mode 100644 index 00000000..02f816d8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-PersistenceWithoutLosingMetadata.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (PersistenceWithoutLosingMetadata) +- (id)initWithDictionaryRepresentation:(id)arg1; +- (id)dictionaryRepresentation; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-iCalInvitationSupport.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-iCalInvitationSupport.h new file mode 100644 index 00000000..0e62ad8b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSFileWrapper-iCalInvitationSupport.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (iCalInvitationSupport) +- (void)setIsCalendarInvitation:(BOOL)arg1; +- (BOOL)isCalendarInvitation; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSImage-CompositeImageAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSImage-CompositeImageAdditions.h new file mode 100644 index 00000000..622e8362 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSImage-CompositeImageAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImage.h" + +@interface NSImage (CompositeImageAdditions) ++ (id)compositeImageWithImageDictionaries:(id)arg1 size:(struct CGSize)arg2; ++ (id)drawingDictionaryWithBlock:(id)arg1; +- (id)tintedImageWithColor:(id)arg1 size:(struct CGSize)arg2; +- (id)tintedImageWithColor:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSImage-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSImage-MailCoreAdditions.h new file mode 100644 index 00000000..a008fe9c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSImage-MailCoreAdditions.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImage.h" + +@interface NSImage (MailCoreAdditions) ++ (id)rotateImage:(id)arg1 byDegrees:(double)arg2; ++ (id)imageDataForType:(id *)arg1 fromPasteboard:(id)arg2; ++ (id)imagePasteboardTypesWithPreferenceToPNG; +- (double)pixelsHigh; +- (double)pixelsWide; +- (void)drawTransformedInRect:(struct CGRect)arg1 fromRect:(struct CGRect)arg2 operation:(unsigned long long)arg3 fraction:(double)arg4 flip:(BOOL)arg5; +@property(readonly, nonatomic) BOOL isAnimated; +@property(readonly, nonatomic) unsigned long long frameCount; +- (id)PNGData; +- (id)bitmapImageRep; +- (id)opaqueImage; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSInvocation-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSInvocation-MailCoreAdditions.h new file mode 100644 index 00000000..b426d48d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSInvocation-MailCoreAdditions.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSInvocation.h" + +@class NSNumber; + +@interface NSInvocation (MailCoreAdditions) ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5 object4:(id)arg6; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4 object3:(id)arg5; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object1:(id)arg3 object2:(id)arg4; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2 object:(id)arg3; ++ (id)invocationWithSelector:(SEL)arg1 target:(id)arg2; +@property(readonly) NSNumber *requestedQualityOfService; +@property(readonly) unsigned char priority; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMachPortDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMachPortDelegate-Protocol.h new file mode 100644 index 00000000..e32dc80a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMachPortDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPortDelegate.h" + +@protocol NSMachPortDelegate + +@optional +- (void)handleMachMessage:(void *)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableArray-Convenience.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableArray-Convenience.h new file mode 100644 index 00000000..37020bab --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableArray-Convenience.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableArray.h" + +@interface NSMutableArray (Convenience) +- (BOOL)addObjectIfAbsentAccordingToEquals:(id)arg1; +- (BOOL)addObjectIfAbsent:(id)arg1; +- (void)addAbsentObjectsFromArrayAccordingToEquals:(id)arg1; +- (void)addAbsentObjectsFromArray:(id)arg1; +- (unsigned long long)insertObjectIfAbsent:(id)arg1 usingComparator:(id)arg2; +- (unsigned long long)highestIndexOfObject:(id)arg1 inRange:(struct _NSRange)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableArray-SortedArrayExtensions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableArray-SortedArrayExtensions.h new file mode 100644 index 00000000..e8569f25 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableArray-SortedArrayExtensions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableArray.h" + +@interface NSMutableArray (SortedArrayExtensions) +- (unsigned long long)removeObject:(id)arg1 usingComparator:(id)arg2; +- (unsigned long long)insertObject:(id)arg1 usingComparator:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableAttributedString-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableAttributedString-MailCoreAdditions.h new file mode 100644 index 00000000..b247e0e5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableAttributedString-MailCoreAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableAttributedString.h" + +@interface NSMutableAttributedString (MailCoreAdditions) +- (void)changeQuoteLevelInRange:(struct _NSRange)arg1 by:(long long)arg2 undoManager:(id)arg3; +- (void)fixQuotingDisplayAttributesInRange:(struct _NSRange)arg1; +- (void)removeQuotingDisplayAttributesInRange:(struct _NSRange)arg1; +- (void)removeAllFormattingExceptAttachments; +- (void)removeAllAttachments; +- (void)_removeAttachmentsAndReplaceWithCustomAttribute:(BOOL)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableCopying-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableCopying-Protocol.h new file mode 100644 index 00000000..5611cf70 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSMutableCopying +- (id)mutableCopyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableData-MCMimeDataEncoding.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableData-MCMimeDataEncoding.h new file mode 100644 index 00000000..82183228 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableData-MCMimeDataEncoding.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableData.h" + +@interface NSMutableData (MCMimeDataEncoding) +- (void)appendQuotedPrintableDataForHeaderBytes:(const char *)arg1 length:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableData-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableData-MailCoreAdditions.h new file mode 100644 index 00000000..8c5ea62d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableData-MailCoreAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableData.h" + +@interface NSMutableData (MailCoreAdditions) +- (void)convertNetworkLineEndingsToUnix; +- (void)appendCString:(const char *)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableData-RFC2231Support.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableData-RFC2231Support.h new file mode 100644 index 00000000..e4024a07 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableData-RFC2231Support.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableData.h" + +@interface NSMutableData (RFC2231Support) +- (void)appendRFC2231CompliantValue:(id)arg1 forKey:(id)arg2 withEncodingHint:(unsigned long long)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableDictionary-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableDictionary-MailCoreAdditions.h new file mode 100644 index 00000000..8f9152d6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableDictionary-MailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableDictionary.h" + +@interface NSMutableDictionary (MailCoreAdditions) +- (void)addObject:(id)arg1 forKey:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableDictionary-RFC2231Support.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableDictionary-RFC2231Support.h new file mode 100644 index 00000000..766315ee --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableDictionary-RFC2231Support.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableDictionary.h" + +@interface NSMutableDictionary (RFC2231Support) +- (void)fixupRFC2231ValuesWithSender:(id)arg1 fromWindows:(BOOL)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableSet-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableSet-MailCoreAdditions.h new file mode 100644 index 00000000..137cdb4a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSMutableSet-MailCoreAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableSet.h" + +@interface NSMutableSet (MailCoreAdditions) +- (void)removeObjectsInArray:(id)arg1; +- (id)uniquedObject:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSNumber-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSNumber-MailCoreAdditions.h new file mode 100644 index 00000000..f2d67a6d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSNumber-MailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSNumber.h" + +@interface NSNumber (MailCoreAdditions) +- (id)localizedString; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSObject-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSObject-Protocol.h new file mode 100644 index 00000000..ebf9f6c2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSObject-Protocol.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class NSString; + +@protocol NSObject +@property(readonly, copy) NSString *description; +@property(readonly) Class superclass; +@property(readonly) unsigned long long hash; +- (struct _NSZone *)zone; +- (unsigned long long)retainCount; +- (id)autorelease; +- (oneway void)release; +- (id)retain; +- (BOOL)respondsToSelector:(SEL)arg1; +- (BOOL)conformsToProtocol:(id)arg1; +- (BOOL)isMemberOfClass:(Class)arg1; +- (BOOL)isKindOfClass:(Class)arg1; +- (BOOL)isProxy; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2 withObject:(id)arg3; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2; +- (id)performSelector:(SEL)arg1; +- (id)self; +- (Class)class; +- (BOOL)isEqual:(id)arg1; + +@optional +@property(readonly, copy) NSString *debugDescription; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSOperationQueue-MCTaskOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSOperationQueue-MCTaskOperation.h new file mode 100644 index 00000000..e3eb3fcd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSOperationQueue-MCTaskOperation.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOperationQueue.h" + +@interface NSOperationQueue (MCTaskOperation) +- (void)addTaskOperation:(id)arg1 taskName:(id)arg2 priority:(unsigned char)arg3 canCancel:(BOOL)arg4; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSPortDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSPortDelegate-Protocol.h new file mode 100644 index 00000000..3f9faebf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSPortDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSPortDelegate + +@optional +- (void)handlePortMessage:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSRunLoop-InternalMailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSRunLoop-InternalMailCoreAdditions.h new file mode 100644 index 00000000..39632fbb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSRunLoop-InternalMailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSRunLoop.h" + +@interface NSRunLoop (InternalMailCoreAdditions) ++ (BOOL)_flushQueuedEventsAddingSource:(BOOL)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSRunLoop-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSRunLoop-MailCoreAdditions.h new file mode 100644 index 00000000..793cf27f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSRunLoop-MailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSRunLoop.h" + +@interface NSRunLoop (MailCoreAdditions) ++ (void)flushQueuedEvents; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSScanner-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSScanner-MailCoreAdditions.h new file mode 100644 index 00000000..9fa6c15e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSScanner-MailCoreAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScanner.h" + +@interface NSScanner (MailCoreAdditions) +- (BOOL)scanUpAndOverString:(id)arg1; +- (id)nextTokenWithPunctuation:(id)arg1; +- (BOOL)scanEndIntoString:(id *)arg1; +- (BOOL)betterScanUpToCharactersFromSet:(id)arg1 intoString:(id *)arg2; +- (BOOL)scanStringOfLength:(unsigned long long)arg1 intoString:(id *)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSSet-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSSet-MailCoreAdditions.h new file mode 100644 index 00000000..a20cc764 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSSet-MailCoreAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSet.h" + +@interface NSSet (MailCoreAdditions) +- (BOOL)containsArray:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSStreamDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSStreamDelegate-Protocol.h new file mode 100644 index 00000000..9cc647a0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSStreamDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSStreamDelegate + +@optional +- (void)stream:(id)arg1 handleEvent:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-MCFormatFlowedSupport.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-MCFormatFlowedSupport.h new file mode 100644 index 00000000..5645704a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-MCFormatFlowedSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MCFormatFlowedSupport) +- (id)convertFromFlowedText:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-MCMimeCharsetSupport.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-MCMimeCharsetSupport.h new file mode 100644 index 00000000..552ac82d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-MCMimeCharsetSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MCMimeCharsetSupport) +- (id)bestMimeCharsetUsingHint:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-MCMimeEnrichedReader.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-MCMimeEnrichedReader.h new file mode 100644 index 00000000..e6ea9296 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-MCMimeEnrichedReader.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MCMimeEnrichedReader) ++ (id)stringFromMimeEnrichedString:(id)arg1; ++ (id)htmlStringFromMimeEnrichedString:(id)arg1; ++ (id)htmlStringFromMimeRichTextString:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-MailCoreAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-MailCoreAdditions.h new file mode 100644 index 00000000..1e5d7c67 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-MailCoreAdditions.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MailCoreAdditions) ++ (id)contentIDStringFromCidUrl:(id)arg1; ++ (id)messageIDStringWithDomainHint:(id)arg1; ++ (id)newURLForContentID:(id)arg1 percentEscaped:(BOOL)arg2; +- (id)stringByRemovingCharactersInSet:(id)arg1; +- (id)stringByReplacingNonBreakingSpacesWithString:(id)arg1; +- (unsigned long long)effectivePrefixLength; +- (id)MD5Digest; +- (id)messageIDSubstring; +- (id)encodedMessageID; +- (BOOL)isCalendarInvitation; +- (id)newStringByApplyingBodyClassName:(id)arg1; +- (id)stringByApplyingBodyClassName:(id)arg1; +- (id)stringByReplacingString:(id)arg1 withString:(id)arg2; +- (long long)caseInsensitiveCompareExcludingXDash:(id)arg1; +- (BOOL)isEqualToStringIgnoringCase:(id)arg1; +- (BOOL)isEqualToStringIgnoreCaseAndDiacritics:(id)arg1; +- (id)stringWithNoExtraSpaces; +- (id)stringSuitableForHTML; +- (id)stringByLocalizingReOrFwdPrefix; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-RFC2047Support.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-RFC2047Support.h new file mode 100644 index 00000000..9b4ea4e1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-RFC2047Support.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (RFC2047Support) +- (id)decodeMimeMessageIDList; +- (id)decodeMimeAddressList; +- (id)decodeMimeHeaderValueWithCharsetHint:(id)arg1 detectOtherEncodings:(BOOL)arg2 fromWindows:(BOOL)arg3; +- (id)encodedHeaderDataWithEncodingHint:(unsigned long long)arg1 encodingUsed:(unsigned long long *)arg2; +- (id)encodedHeaderDataWithEncodingHint:(unsigned long long)arg1; +- (id)encodedHeaderData; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-StationeryUtilities.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-StationeryUtilities.h new file mode 100644 index 00000000..ba1a4fbe --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSString-StationeryUtilities.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (StationeryUtilities) +- (id)urlStringByInsertingCompositeVersionNumber; +- (id)urlStringByIncrementingCompositeVersionNumber; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSTextAttachment-MCMimeSupport.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSTextAttachment-MCMimeSupport.h new file mode 100644 index 00000000..128a661c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSTextAttachment-MCMimeSupport.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextAttachment.h" + +@interface NSTextAttachment (MCMimeSupport) +- (id)internalAppleAttachmentData; +- (BOOL)shouldDownloadAttachmentOnDisplay; +- (BOOL)isPlaceholder; +- (BOOL)hasBeenDownloaded; +- (id)mimePart; +- (unsigned long long)approximateSize; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSURLDownloadDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSURLDownloadDelegate-Protocol.h new file mode 100644 index 00000000..b6b3bdc4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSURLDownloadDelegate-Protocol.h @@ -0,0 +1,27 @@ +/* + * 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" + +@protocol NSURLDownloadDelegate + +@optional +- (void)download:(id)arg1 didFailWithError:(id)arg2; +- (void)downloadDidFinish:(id)arg1; +- (void)download:(id)arg1 didCreateDestination:(id)arg2; +- (void)download:(id)arg1 decideDestinationWithSuggestedFilename:(id)arg2; +- (BOOL)download:(id)arg1 shouldDecodeSourceDataOfMIMEType:(id)arg2; +- (void)download:(id)arg1 didReceiveDataOfLength:(unsigned long long)arg2; +- (void)download:(id)arg1 willResumeWithResponse:(id)arg2 fromByte:(long long)arg3; +- (void)download:(id)arg1 didReceiveResponse:(id)arg2; +- (BOOL)downloadShouldUseCredentialStorage:(id)arg1; +- (void)download:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (void)download:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (BOOL)download:(id)arg1 canAuthenticateAgainstProtectionSpace:(id)arg2; +- (id)download:(id)arg1 willSendRequest:(id)arg2 redirectResponse:(id)arg3; +- (void)downloadDidBegin:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSURLSessionDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSURLSessionDelegate-Protocol.h new file mode 100644 index 00000000..9e41e7ae --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSURLSessionDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol NSURLSessionDelegate + +@optional +- (void)URLSessionDidFinishEventsForBackgroundURLSession:(id)arg1; +- (void)URLSession:(id)arg1 didReceiveChallenge:(id)arg2 completionHandler:(id)arg3; +- (void)URLSession:(id)arg1 didBecomeInvalidWithError:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSURLSessionDownloadDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSURLSessionDownloadDelegate-Protocol.h new file mode 100644 index 00000000..875c2e82 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSURLSessionDownloadDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSURLSessionTaskDelegate.h" + +@protocol NSURLSessionDownloadDelegate +- (void)URLSession:(id)arg1 downloadTask:(id)arg2 didFinishDownloadingToURL:(id)arg3; + +@optional +- (void)URLSession:(id)arg1 downloadTask:(id)arg2 didResumeAtOffset:(long long)arg3 expectedTotalBytes:(long long)arg4; +- (void)URLSession:(id)arg1 downloadTask:(id)arg2 didWriteData:(long long)arg3 totalBytesWritten:(long long)arg4 totalBytesExpectedToWrite:(long long)arg5; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSURLSessionTaskDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSURLSessionTaskDelegate-Protocol.h new file mode 100644 index 00000000..5e34a963 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSURLSessionTaskDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSURLSessionDelegate.h" + +@protocol NSURLSessionTaskDelegate + +@optional +- (void)URLSession:(id)arg1 task:(id)arg2 didCompleteWithError:(id)arg3; +- (void)URLSession:(id)arg1 task:(id)arg2 didSendBodyData:(long long)arg3 totalBytesSent:(long long)arg4 totalBytesExpectedToSend:(long long)arg5; +- (void)URLSession:(id)arg1 task:(id)arg2 needNewBodyStream:(id)arg3; +- (void)URLSession:(id)arg1 task:(id)arg2 didReceiveChallenge:(id)arg3 completionHandler:(id)arg4; +- (void)URLSession:(id)arg1 task:(id)arg2 willPerformHTTPRedirection:(id)arg3 newRequest:(id)arg4 completionHandler:(id)arg5; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSXMLParserDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSXMLParserDelegate-Protocol.h new file mode 100644 index 00000000..364fc7cf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/NSXMLParserDelegate-Protocol.h @@ -0,0 +1,33 @@ +/* + * 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" + +@protocol NSXMLParserDelegate + +@optional +- (void)parser:(id)arg1 validationErrorOccurred:(id)arg2; +- (void)parser:(id)arg1 parseErrorOccurred:(id)arg2; +- (id)parser:(id)arg1 resolveExternalEntityName:(id)arg2 systemID:(id)arg3; +- (void)parser:(id)arg1 foundCDATA:(id)arg2; +- (void)parser:(id)arg1 foundComment:(id)arg2; +- (void)parser:(id)arg1 foundProcessingInstructionWithTarget:(id)arg2 data:(id)arg3; +- (void)parser:(id)arg1 foundIgnorableWhitespace:(id)arg2; +- (void)parser:(id)arg1 foundCharacters:(id)arg2; +- (void)parser:(id)arg1 didEndMappingPrefix:(id)arg2; +- (void)parser:(id)arg1 didStartMappingPrefix:(id)arg2 toURI:(id)arg3; +- (void)parser:(id)arg1 didEndElement:(id)arg2 namespaceURI:(id)arg3 qualifiedName:(id)arg4; +- (void)parser:(id)arg1 didStartElement:(id)arg2 namespaceURI:(id)arg3 qualifiedName:(id)arg4 attributes:(id)arg5; +- (void)parser:(id)arg1 foundExternalEntityDeclarationWithName:(id)arg2 publicID:(id)arg3 systemID:(id)arg4; +- (void)parser:(id)arg1 foundInternalEntityDeclarationWithName:(id)arg2 value:(id)arg3; +- (void)parser:(id)arg1 foundElementDeclarationWithName:(id)arg2 model:(id)arg3; +- (void)parser:(id)arg1 foundAttributeDeclarationWithName:(id)arg2 forElement:(id)arg3 type:(id)arg4 defaultValue:(id)arg5; +- (void)parser:(id)arg1 foundUnparsedEntityDeclarationWithName:(id)arg2 publicID:(id)arg3 systemID:(id)arg4 notationName:(id)arg5; +- (void)parser:(id)arg1 foundNotationDeclarationWithName:(id)arg2 publicID:(id)arg3 systemID:(id)arg4; +- (void)parserDidEndDocument:(id)arg1; +- (void)parserDidStartDocument:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_FormatFlowedWriter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_FormatFlowedWriter.h new file mode 100644 index 00000000..4e085e4e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_FormatFlowedWriter.h @@ -0,0 +1,40 @@ +/* + * 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" + +@class NSAttributedString, NSMutableAttributedString, NSMutableString, NSString; + +@interface _FormatFlowedWriter : NSObject +{ + NSMutableString *_outputString; + NSMutableString *_quotedString; + NSMutableString *_lineString; + NSMutableAttributedString *_attributedString; + BOOL _addedTrailingSpaces; + NSAttributedString *_inputAttributedString; + unsigned long long _encoding; + NSString *_inputString; + unsigned long long _quoteLevel; + struct _NSRange _paragraphRange; +} + +@property(nonatomic) struct _NSRange paragraphRange; // @synthesize paragraphRange=_paragraphRange; +@property(nonatomic) unsigned long long quoteLevel; // @synthesize quoteLevel=_quoteLevel; +@property(nonatomic) BOOL addedTrailingSpaces; // @synthesize addedTrailingSpaces=_addedTrailingSpaces; +@property(copy, nonatomic) NSString *inputString; // @synthesize inputString=_inputString; +@property(readonly, nonatomic) unsigned long long encoding; // @synthesize encoding=_encoding; +@property(readonly, copy, nonatomic) NSAttributedString *inputAttributedString; // @synthesize inputAttributedString=_inputAttributedString; +- (void).cxx_destruct; +- (id)quotedString; +- (id)outputString; +- (void)_outputQuotedParagraph; +- (unsigned long long)_findLineBreakInRange:(struct _NSRange)arg1 maxCharWidthCount:(unsigned long long)arg2 endIsURL:(BOOL)arg3; +- (id)init; +- (id)initWithAttributedString:(id)arg1 encoding:(unsigned long long)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCActivityAggregateArrayController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCActivityAggregateArrayController.h new file mode 100644 index 00000000..d256c3ae --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCActivityAggregateArrayController.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArrayController.h" + +@interface _MCActivityAggregateArrayController : NSArrayController +{ +} + +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCActivityMonitorMultiTarget.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCActivityMonitorMultiTarget.h new file mode 100644 index 00000000..a6de1a1b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCActivityMonitorMultiTarget.h @@ -0,0 +1,34 @@ +/* + * 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 "MCActivityTarget.h" + +@class NSMutableSet, NSString; + +@interface _MCActivityMonitorMultiTarget : NSObject +{ + id _primaryTarget; + NSMutableSet *_allTargets; +} + +- (void).cxx_destruct; +- (id)displayName; +- (id)allTargets; +- (void)setPrimaryTarget:(id)arg1; +- (id)primaryTarget; +- (BOOL)removeActivityTarget:(id)arg1; +- (BOOL)addActivityTarget:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCCompositeImageRep.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCCompositeImageRep.h new file mode 100644 index 00000000..a4c44d99 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCCompositeImageRep.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageRep.h" + +@class NSArray; + +@interface _MCCompositeImageRep : NSImageRep +{ + NSArray *_arrayOfImageDictionaries; +} + +@property(copy, nonatomic) NSArray *arrayOfImageDictionaries; // @synthesize arrayOfImageDictionaries=_arrayOfImageDictionaries; +- (void).cxx_destruct; +- (BOOL)draw; +- (id)initWithArrayOfImageDictionaries:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCConnectionAttempt.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCConnectionAttempt.h new file mode 100644 index 00000000..6bdd72ad --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCConnectionAttempt.h @@ -0,0 +1,20 @@ +/* + * 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" + +@interface _MCConnectionAttempt : NSObject +{ + long long _securityLayer; + long long _port; +} + +@property(nonatomic) long long port; // @synthesize port=_port; +@property(nonatomic) long long securityLayer; // @synthesize securityLayer=_securityLayer; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCDisplayNameInfoCacheItem.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCDisplayNameInfoCacheItem.h new file mode 100644 index 00000000..cf08067e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCDisplayNameInfoCacheItem.h @@ -0,0 +1,24 @@ +/* + * 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" + +@class MCDisplayNameInfo, NSString; + +@interface _MCDisplayNameInfoCacheItem : NSObject +{ + MCDisplayNameInfo *_info; + NSString *_rawAddress; +} + +@property(readonly, copy, nonatomic) NSString *rawAddress; // @synthesize rawAddress=_rawAddress; +@property(readonly, nonatomic) MCDisplayNameInfo *info; // @synthesize info=_info; +- (void).cxx_destruct; +- (id)init; +- (id)initWithInfo:(id)arg1 address:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCISPLocalAccountSettingsManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCISPLocalAccountSettingsManager.h new file mode 100644 index 00000000..32eda3d8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCISPLocalAccountSettingsManager.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MCISPLocalAccountSettingsManager : MCISPAccountSettingsManager +{ +} + +- (id)_persistanceFolderName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCISPOnlineAccountSettingsManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCISPOnlineAccountSettingsManager.h new file mode 100644 index 00000000..ce136d3c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCISPOnlineAccountSettingsManager.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSCache, NSString; + +@interface _MCISPOnlineAccountSettingsManager : MCISPAccountSettingsManager +{ + NSCache *_fetchedISPPlistsByDomain; + NSString *_ispAccountsXQuery; +} + +@property(readonly, copy, nonatomic) NSString *ispAccountsXQuery; // @synthesize ispAccountsXQuery=_ispAccountsXQuery; +- (void).cxx_destruct; +- (void)emptyCache; +- (id)_deliveryAccountsSettingsForDomain:(id)arg1 fetchIfNecessary:(BOOL)arg2; +- (id)_receivingAccountSettingsForDomain:(id)arg1 fetchIfNecessary:(BOOL)arg2; +- (void)_finalizeISPAccountsSettings:(id)arg1; +- (id)_ispPlistFromXMLDocument:(id)arg1; +- (id)_fetchISPDataForDomain:(id)arg1; +- (id)_ispPlistForDomain:(id)arg1; +- (BOOL)_shouldVerifyLoadedISPPlist; +- (id)_persistanceFolderName; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCInsecureAuthenticationRequest.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCInsecureAuthenticationRequest.h new file mode 100644 index 00000000..72b24be3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCInsecureAuthenticationRequest.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface _MCInsecureAuthenticationRequest : _MCUserAlertRequest +{ + id _account; + NSString *_applicationName; +} + +@property(copy) NSString *applicationName; // @synthesize applicationName=_applicationName; +@property(retain) id account; // @synthesize account=_account; +- (void).cxx_destruct; +- (id)coalescingValue; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCInvocationOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCInvocationOperation.h new file mode 100644 index 00000000..e3cebbdb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCInvocationOperation.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MCInvocationOperation : MCThrowingInvocationOperation +{ +} + +- (void)main; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCLogClient.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCLogClient.h new file mode 100644 index 00000000..ba2f4adf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCLogClient.h @@ -0,0 +1,26 @@ +/* + * 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" + +@interface _MCLogClient : NSObject +{ + int _fileDescriptor; + struct __asl_object_s *_aslClient; +} + ++ (void)setUpMidnightCleanupTimer; ++ (id)logFileNameDateFormatter; ++ (void)cleanUpOldLogs; ++ (void)logsDidRollOver:(id)arg1; ++ (void)initialize; +@property(readonly, nonatomic) int fileDescriptor; // @synthesize fileDescriptor=_fileDescriptor; +@property(readonly, nonatomic) struct __asl_object_s *aslClient; // @synthesize aslClient=_aslClient; +- (void)dealloc; +- (id)initWithCategory:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMemoryMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMemoryMessage.h new file mode 100644 index 00000000..3a569898 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMemoryMessage.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MCMemoryDataSource; + +@interface _MCMemoryMessage : MCMessage +{ + MCMemoryDataSource *_dataSource; +} + +- (void).cxx_destruct; +- (BOOL)isCompacted; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (id)primitiveDataSource; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (id)init; +- (id)initWithStore:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedReader.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedReader.h new file mode 100644 index 00000000..091c8dcf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedReader.h @@ -0,0 +1,50 @@ +/* + * 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" + +@class NSMutableArray, NSMutableString; + +@interface _MCMimeEnrichedReader : NSObject +{ + CDStruct_2ada2998 _inputBuffer; + long long _currentIndex; + long long _inputLength; + unsigned int _noFillLevel:30; + unsigned int _eatOneNewline:1; + unsigned int _insideComment:1; + long long _lastQuoteLevel; + NSMutableArray *_commandStack; + id _outputString; + NSMutableString *_outputBuffer; + BOOL outputShouldBeHTML; +} + +- (void).cxx_destruct; +- (id)description; +- (void)convertEnrichedString:(id)arg1 intoPlainOutputString:(id)arg2; +- (void)convertEnrichedString:(id)arg1 intoOutputString:(id)arg2; +- (void)convertRichTextString:(id)arg1 intoOutputString:(id)arg2; +- (long long)readTokenInto:(id *)arg1; +- (id)copyCommand; +- (id)copyNextTokenWithDelimiters:(id)arg1; +- (id)currentFont; +- (void)parseParameterString:(id)arg1; +- (void)endCommand:(id)arg1; +- (void)beginCommand:(id)arg1; +- (void)setupFontStackEntry:(id)arg1; +- (void)handleNoParameterCommand:(const CDStruct_3441fd00 *)arg1; +- (void)closeUpQuoting; +- (void)fixConsecutiveSpaces:(id)arg1; +- (void)nowWouldBeAGoodTimeToAppendToTheAttributedString; +- (void)resetStateWithString:(id)arg1 outputString:(id)arg2; +- (void)appendStringToBuffer:(id)arg1; +- (id)init; +- (id)parenthesesSet; +- (id)punctuationSet; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedReaderCommandStackEntry.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedReaderCommandStackEntry.h new file mode 100644 index 00000000..405866bf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedReaderCommandStackEntry.h @@ -0,0 +1,20 @@ +/* + * 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" + +@interface _MCMimeEnrichedReaderCommandStackEntry : NSObject +{ + const CDStruct_3441fd00 *_commandTableEntry; + id _parameter; +} + +@property(retain, nonatomic) id parameter; // @synthesize parameter=_parameter; +@property(nonatomic) const CDStruct_3441fd00 *commandTableEntry; // @synthesize commandTableEntry=_commandTableEntry; +- (void).cxx_destruct; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedState.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedState.h new file mode 100644 index 00000000..8d1d34d3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedState.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class NSColor, NSString; + +@interface _MCMimeEnrichedState : NSObject +{ + unsigned char _excerptLevel; + BOOL _bold; + BOOL _italic; + BOOL _fixed; + BOOL _underline; + short _fontDelta; + unsigned long long _alignment; + NSString *_fontFamily; + NSColor *_color; +} + +@property(retain, nonatomic) NSColor *color; // @synthesize color=_color; +@property(copy, nonatomic) NSString *fontFamily; // @synthesize fontFamily=_fontFamily; +@property(nonatomic) short fontDelta; // @synthesize fontDelta=_fontDelta; +@property(nonatomic) BOOL underline; // @synthesize underline=_underline; +@property(nonatomic) BOOL fixed; // @synthesize fixed=_fixed; +@property(nonatomic) BOOL italic; // @synthesize italic=_italic; +@property(nonatomic) BOOL bold; // @synthesize bold=_bold; +@property(nonatomic) unsigned long long alignment; // @synthesize alignment=_alignment; +@property(nonatomic) unsigned char excerptLevel; // @synthesize excerptLevel=_excerptLevel; +- (void).cxx_destruct; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedWriter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedWriter.h new file mode 100644 index 00000000..833f8736 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedWriter.h @@ -0,0 +1,38 @@ +/* + * 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" + +@class NSAttributedString, NSFont, NSString, _MCMimeEnrichedState, _MCMimeEnrichedWriterCommandStackEntry; + +@interface _MCMimeEnrichedWriter : NSObject +{ + NSAttributedString *_attributedString; + NSString *_string; + CDStruct_2ada2998 _stringBuffer; + NSFont *_defaultFont; + NSFont *_defaultFixedPitchFont; + double _defaultPointSize; + _MCMimeEnrichedWriterCommandStackEntry *_commandStack; + _MCMimeEnrichedWriterCommandStackEntry *_topOfStack; + _MCMimeEnrichedState *_currentState; + unsigned long long _currentLineStart; + unsigned long long _lastSpace; +} + +- (void).cxx_destruct; +- (id)debugDescription; +- (void)appendTextFromRange:(struct _NSRange)arg1 toString:(id)arg2; +- (void)updateOutput:(id)arg1 forAttributes:(id)arg2 range:(struct _NSRange)arg3; +- (id)convertAttributedString:(id)arg1; +- (void)setState:(id)arg1 fromStackEntry:(id)arg2; +- (void)setState:(id)arg1 fromAttributes:(id)arg2; +- (void)pushEntryForCommand:(id)arg1 withParameter:(id)arg2 output:(id)arg3; +- (void)popStackEntry; +- (void)pushStackEntry:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedWriterCommandStackEntry.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedWriterCommandStackEntry.h new file mode 100644 index 00000000..58018de4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimeEnrichedWriterCommandStackEntry.h @@ -0,0 +1,27 @@ +/* + * 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" + +@class NSString; + +@interface _MCMimeEnrichedWriterCommandStackEntry : NSObject +{ + NSString *_command; + unsigned long long _attrStringIndex; + id _parameter; + _MCMimeEnrichedWriterCommandStackEntry *_parent; +} + +@property(retain, nonatomic) _MCMimeEnrichedWriterCommandStackEntry *parent; // @synthesize parent=_parent; +@property(retain, nonatomic) id parameter; // @synthesize parameter=_parameter; +@property(nonatomic) unsigned long long attrStringIndex; // @synthesize attrStringIndex=_attrStringIndex; +@property(nonatomic) __weak NSString *command; // @synthesize command=_command; +- (void).cxx_destruct; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimePartEnumerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimePartEnumerator.h new file mode 100644 index 00000000..5e374fbb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCMimePartEnumerator.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@class MCMimePart; + +@interface _MCMimePartEnumerator : NSEnumerator +{ + BOOL _onlyAttachments; + BOOL _isFirstIteration; + MCMimePart *_currentPart; +} + +@property(retain, nonatomic) MCMimePart *currentPart; // @synthesize currentPart=_currentPart; +@property(nonatomic) BOOL isFirstIteration; // @synthesize isFirstIteration=_isFirstIteration; +@property(nonatomic) BOOL onlyAttachments; // @synthesize onlyAttachments=_onlyAttachments; +- (void).cxx_destruct; +- (id)nextObject; +- (id)initWithMimeBody:(id)arg1 onlyAttachments:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCOutgoingMessageBody.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCOutgoingMessageBody.h new file mode 100644 index 00000000..d0ceca90 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCOutgoingMessageBody.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSMutableData; + +@interface _MCOutgoingMessageBody : MCMessageBody +{ + NSMutableData *_rawData; +} + +@property(retain, nonatomic) NSMutableData *rawData; // @synthesize rawData=_rawData; +- (void).cxx_destruct; +- (void)setMessage:(id)arg1; +- (id)message; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCUserAlertRequest.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCUserAlertRequest.h new file mode 100644 index 00000000..69628eb9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCUserAlertRequest.h @@ -0,0 +1,26 @@ +/* + * 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" + +@class NSArray, NSMutableArray; + +@interface _MCUserAlertRequest : NSObject +{ + NSMutableArray *_completionHandlers; + id _windowProvider; +} + +@property(copy) id windowProvider; // @synthesize windowProvider=_windowProvider; +- (void).cxx_destruct; +- (void)insertObject:(id)arg1 inCompletionHandlersAtIndex:(unsigned long long)arg2; +- (unsigned long long)countOfCompletionHandlers; +@property(readonly, copy) NSArray *completionHandlers; +- (id)description; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCWebAuthenticationRequest.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCWebAuthenticationRequest.h new file mode 100644 index 00000000..2e24ac02 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailCore/_MCWebAuthenticationRequest.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSURL; + +@interface _MCWebAuthenticationRequest : _MCUserAlertRequest +{ + NSURL *_webAuthenticationURL; +} + +@property(retain) NSURL *webAuthenticationURL; // @synthesize webAuthenticationURL=_webAuthenticationURL; +- (void).cxx_destruct; +- (id)coalescingValue; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/CDStructures.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/CDStructures.h new file mode 100644 index 00000000..38c30f5f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/CDStructures.h @@ -0,0 +1,103 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#pragma mark Named Structures + +struct CGSize { + double width; + double height; +}; + +struct _NSRange { + unsigned long long location; + unsigned long long length; +}; + +struct __sbuf { + char *_field1; + int _field2; +}; + +struct internal_state; + +struct z_stream_s { + char *next_in; + unsigned int avail_in; + unsigned long long total_in; + char *next_out; + unsigned int avail_out; + unsigned long long total_out; + char *msg; + struct internal_state *state; + void *zalloc; + void *zfree; + void *opaque; + int data_type; + unsigned long long adler; + unsigned long long reserved; +}; + +#pragma mark Typedef'd Structures + +typedef struct { + unsigned long long _field1; + unsigned long long _field2; + char _field3; + char _field4; +} CDStruct_c53ccb4e; + +typedef struct { + unsigned int :1; + unsigned int :1; + unsigned int :8; + unsigned int :8; + unsigned int :8; + unsigned int :1; + unsigned int :2; + unsigned int :1; + unsigned int :2; +} CDStruct_76a5ddda; + +typedef struct { + unsigned int reserved:27; + unsigned int isPartial:1; + unsigned int partsHaveBeenCached:1; + unsigned int hasTemporaryUid:1; + unsigned int isHTML:1; + unsigned int isRich:1; +} CDStruct_07ba05d6; + +typedef struct { + int version; + int count; + int timeStamp; + float tocHeight; + unsigned int sortOrder; + unsigned int sortedAscending; + int unused1; + int unused2; +} CDStruct_c4d47a41; + +typedef struct { + long long _field1; + unsigned long long _field2; +} CDStruct_1dee9796; + +typedef struct { + long long _field1; + long long _field2; +} CDStruct_912cb5d2; + +typedef struct { + unsigned short _field1[64]; + struct __CFString *_field2; + unsigned short *_field3; + char *_field4; + CDStruct_912cb5d2 _field5; + long long _field6; + long long _field7; +} CDStruct_f9502b4c; + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/DOMDocument-JunkAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/DOMDocument-JunkAdditions.h new file mode 100644 index 00000000..854cc0fc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/DOMDocument-JunkAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMDocument.h" + +@interface DOMDocument (JunkAdditions) +- (id)junkStringNonWhiteSpaceCount:(unsigned long long *)arg1 URLs:(id)arg2 imageURLs:(id)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/EWSExchangeServiceBindingDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/EWSExchangeServiceBindingDelegate-Protocol.h new file mode 100644 index 00000000..acee6ab0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/EWSExchangeServiceBindingDelegate-Protocol.h @@ -0,0 +1,21 @@ +/* + * 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" + +@protocol EWSExchangeServiceBindingDelegate + +@optional +- (void)exchangeServiceBinding:(id)arg1 didCancelAuthenticationChallenge:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didReceiveAuthenticationChallenge:(id)arg2; +- (BOOL)exchangeServiceBinding:(id)arg1 canAuthenticateAgainstProtectionSpace:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didFailWithError:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 didFinishWithResponse:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 willSendRequestForAuthenticationChallenge:(id)arg2; +- (BOOL)exchangeServiceBindingShouldUseCredentialStorage:(id)arg1; +- (void)exchangeServiceBinding:(id)arg1 didReceiveCertificateError:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/EWSPathToExtendedFieldType-MessageAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/EWSPathToExtendedFieldType-MessageAdditions.h new file mode 100644 index 00000000..f5217eb1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/EWSPathToExtendedFieldType-MessageAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "EWSPathToExtendedFieldType.h" + +@interface EWSPathToExtendedFieldType (MessageAdditions) ++ (id)newExtendedFieldTypeForPropertyId:(long long)arg1; ++ (id)newExtendedFieldTypeForPropertyTag:(id)arg1; ++ (id)_newExtendedFieldTypeForPropertyTag:(id)arg1 propertyType:(int)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPAccount-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPAccount-Protocol.h new file mode 100644 index 00000000..a4882dfe --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPAccount-Protocol.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCRemoteStoreAccount.h" + +@class NSDictionary; + +@protocol IMAPAccount +@property unsigned int readBufferSize; +@property(readonly) id offlineCache; +@property(copy) NSDictionary *serverID; +@property long long gmailCapabilitiesSupport; +@property BOOL useIDLEIfAvailable; +@property BOOL recoveringFromConnectionLoss; +- (void)recoverFromConnectionLoss; +- (BOOL)shouldMoveDeletedMessagesToTrash; +- (void)backgroundFetchCompleted; +- (void)sendAccountNeedsCheckingNotification; +- (BOOL)allowsPartialDownloads; +- (id)quotaRootForName:(id)arg1 createIfNeeded:(BOOL)arg2; +- (BOOL)handleResponseCodeFromResponse:(id)arg1; +- (id)IMAPMailboxForMailboxName:(id)arg1 createIfNeeded:(BOOL)arg2; +- (void)setServerPathPrefix:(id)arg1 permanently:(BOOL)arg2; +- (id)serverPathPrefix; + +@optional +- (void)detectAllMailWithGateway:(id)arg1; +- (id)gmailLabelWithName:(id)arg1; +- (id)additionalHeaderFields; +- (void)filterMailboxList:(id)arg1 forMailbox:(id)arg2 options:(long long)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPMailbox-MCMailboxAdapter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPMailbox-MCMailboxAdapter.h new file mode 100644 index 00000000..d31e398d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPMailbox-MCMailboxAdapter.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "IMAPMailbox.h" + +@interface IMAPMailbox (MCMailboxAdapter) +- (id)mailMailbox; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPMailboxDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPMailboxDelegate-Protocol.h new file mode 100644 index 00000000..2e32e783 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPMailboxDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol IMAPMailboxDelegate +- (void)updateComputedHighestModificationSequence:(unsigned long long)arg1 forMailbox:(id)arg2; +- (unsigned long long)computedHighestModificationSequenceForMailbox:(id)arg1; +- (unsigned long long)allegedHighestModificationSequenceForMailbox:(id)arg1; +- (void)updateSelectedGatewayFromMailbox:(id)arg1; +- (void)processResponsesFromMailbox:(id)arg1; +- (void)updateUidValidityFromMailbox:(id)arg1; +- (void)updateCountFromMailbox:(id)arg1 fromIDLE:(BOOL)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPMessage-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPMessage-Protocol.h new file mode 100644 index 00000000..f47abc84 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPMessage-Protocol.h @@ -0,0 +1,25 @@ +/* + * 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" + +@protocol IMAPMessage +- (id)mailboxName; +- (id)dateReceived; +- (id)subject; +- (unsigned long long)messageSize; +- (CDStruct_07ba05d6)remoteFlags; +- (void)setHasTemporaryUid:(BOOL)arg1; +- (BOOL)hasTemporaryUid; +- (void)setPartsHaveBeenCached:(BOOL)arg1; +- (BOOL)partsHaveBeenCached; +- (void)setIsPartial:(BOOL)arg1; +- (BOOL)isPartial; +- (id)messageID; +- (void)setUid:(unsigned int)arg1; +- (unsigned int)uid; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPMessageDataSource-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPMessageDataSource-Protocol.h new file mode 100644 index 00000000..32ca2cb8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPMessageDataSource-Protocol.h @@ -0,0 +1,55 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessageDataSource.h" + +@protocol IMAPMessageDataSource +@property(readonly, nonatomic) BOOL persistentIDType; +- (void)syncEngineDidSynchronizeMessageList; +- (void)removeAllLocalMessages; +- (void)setUidValidityStatus:(unsigned int)arg1; +- (unsigned int)uidValidityStatus; +- (void)setComputedHighestModificationSequence:(unsigned long long)arg1; +- (void)setAllegedHighestModificationSequence:(unsigned long long)arg1; +- (unsigned long long)allegedHighestModificationSequence; +- (void)setUidNextStatus:(unsigned int)arg1; +- (unsigned int)uidNextStatus; +- (unsigned int)maximumRemoteID; +- (void)syncEngineDidFinish; +- (void)syncEngineDidStart; +- (id)newDictionaryForLocalFlags:(unsigned int)arg1 serverFlags:(unsigned int)arg2 existingDictionary:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2 updatingServer:(BOOL)arg3; +- (BOOL)messageHasBeenDeleted:(id)arg1; +- (void)compactMessagesFromSyncEngine:(id)arg1; +- (id)fetchAndCacheBodyDataForMessages:(id)arg1; +- (id)messagesBeingAdded; +- (BOOL)messagesAreBeingAdded; +- (void)addMessages:(id)arg1; +- (id)downloadCache; +- (id)fetchPipeline; +- (BOOL)hasValidCacheFileForMessage:(id)arg1; +- (BOOL)hasCacheFileForMessage:(id)arg1 part:(id)arg2 directoryContents:(id)arg3; +- (BOOL)hasCacheFileForMessage:(id)arg1 directoryContents:(id)arg2; +- (id)cacheDirectoryContents; +- (id)copyIncompleteMessages; +- (id)copyMessagesWithTemporaryUids; +- (id)getDetailsForMessagesWithRemoteIDs:(id)arg1; +- (unsigned long long)totalCountOfMessages; +- (BOOL)isAllMailMailbox; +- (BOOL)isInbox; +- (id)mailboxName; +- (id)account; + +@optional +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2 updatingServer:(BOOL)arg3; +- (id)recentFlagChangesForManagedObjectID:(id)arg1; +- (id)messagesWithManagedObjectIDs:(id)arg1; +- (id)messageWithDefaultLoadOptionsAndManagedObjectID:(id)arg1; +- (id)recentFlagChangesForRowID:(id)arg1; +- (id)messagesWithRowIDs:(id)arg1; +- (id)messageWithDefaultLoadOptionsAndRowID:(long long)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPOfflineCache-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPOfflineCache-Protocol.h new file mode 100644 index 00000000..85893fba --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPOfflineCache-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol IMAPOfflineCache +- (void)saveChanges; +- (void)setGmailLabels:(id)arg1 andClearGmailLabels:(id)arg2 forUids:(id)arg3 forMailbox:(id)arg4; +- (void)setFlags:(id)arg1 andClearFlags:(id)arg2 forUids:(id)arg3 forMailbox:(id)arg4; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPPersistedMessage-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPPersistedMessage-Protocol.h new file mode 100644 index 00000000..16d8f75f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/IMAPPersistedMessage-Protocol.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCChanging.h" + +@protocol IMAPPersistedMessage +@property(readonly, nonatomic) BOOL persistentIDType; +- (void)appendData:(id)arg1 part:(id)arg2; +- (void)setData:(id)arg1 isPartial:(BOOL)arg2; +- (void)setRemoteID:(id)arg1; +- (id)remoteID; + +@optional +- (id)managedObjectID; +- (long long)libraryID; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCAccount-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCAccount-Protocol.h new file mode 100644 index 00000000..6422ea9e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCAccount-Protocol.h @@ -0,0 +1,53 @@ +/* + * 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" + +@class MCAuthScheme, NSArray, NSString, NSURL; + +@protocol MCAccount ++ (void)saveAccountInfoToDefaults; ++ (id)accountTypeString; +@property(readonly, copy) NSString *subscriptionURLLabel; +@property(readonly) NSURL *subscriptionURL; +@property BOOL usesSSL; +@property BOOL shouldUseAuthentication; +@property(readonly, nonatomic) BOOL requiresAuthentication; +@property(readonly, copy) NSString *googleClientToken; +@property(readonly, copy) NSString *appleAuthenticationToken; +@property(readonly, copy) NSString *applePersonID; +@property(copy) NSString *password; +@property(copy) NSString *username; +@property(retain) MCAuthScheme *preferredAuthScheme; +@property long long securityLayerType; +@property(readonly, copy, nonatomic) NSArray *standardSSLPorts; +@property(readonly, copy, nonatomic) NSArray *standardPorts; +@property long long portNumber; +@property(copy) NSString *hostname; +@property(copy) NSString *canonicalEmailAddress; +@property BOOL allowInsecureAuthentication; +@property BOOL configureDynamically; +@property(readonly, copy, nonatomic) NSString *saslProfileName; +@property(copy) NSString *displayName; +@property(readonly, copy) NSString *identifier; +@property(readonly, copy) NSString *accountTypeString; +- (BOOL)canAuthenticateWithScheme:(id)arg1; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (void)respondToHostBecomingReachable; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (BOOL)autodiscoverSettings:(id *)arg1; +- (void)updateFromSuccessfulConnectionPortNumber:(long long)arg1 securityLayerType:(long long)arg2; +- (void)setSessionPassword:(id)arg1; +- (id)sessionPassword; +- (void)setTLSIdentity:(struct OpaqueSecIdentityRef *)arg1; +- (struct OpaqueSecIdentityRef *)copyTLSIdentity; + +@optional +@property(copy) NSString *externalHostname; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCAccountSetupValidatorDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCAccountSetupValidatorDelegate-Protocol.h new file mode 100644 index 00000000..e1f3355e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCAccountSetupValidatorDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MCAccountSetupValidatorDelegate +- (id)delegateApplicationName; +- (void)validatorDidFinish:(id)arg1; +- (void)validatorDidFail:(id)arg1; +- (void)validator:(id)arg1 didChangeState:(long long)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCActivityTarget-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCActivityTarget-Protocol.h new file mode 100644 index 00000000..e51c89fb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCActivityTarget-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol MCActivityTarget + +@optional +- (BOOL)isSmartMailbox; +- (id)displayName; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCAttachment-ScriptingInternal.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCAttachment-ScriptingInternal.h new file mode 100644 index 00000000..c779d1e9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCAttachment-ScriptingInternal.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCAttachment.h" + +@interface MCAttachment (ScriptingInternal) +- (void)_finishSaveAttachmentCommand:(id)arg1; +- (void)_fetchDataForCommand:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCAttachment-ScriptingSupport.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCAttachment-ScriptingSupport.h new file mode 100644 index 00000000..0d66480e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCAttachment-ScriptingSupport.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCAttachment.h" + +#import "MCActivityTarget.h" + +@class NSString; + +@interface MCAttachment (ScriptingSupport) +- (id)objectSpecifier; +- (id)uniqueID; +- (id)appleScriptApproximateSize; +- (id)handleSaveAttachmentCommand:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCCIDURLProtocolDataProvider-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCCIDURLProtocolDataProvider-Protocol.h new file mode 100644 index 00000000..e030a378 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCCIDURLProtocolDataProvider-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@class NSData, NSString, NSURL; + +@protocol MCCIDURLProtocolDataProvider +@property(readonly, copy) NSString *mimeType; +@property(readonly, copy) NSData *data; +@property(readonly) NSURL *cidURL; + +@optional +@property(readonly) long long fileSize; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCChanging-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCChanging-Protocol.h new file mode 100644 index 00000000..b119c78e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCChanging-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MCChanging +- (BOOL)endChanging:(BOOL)arg1 immediately:(BOOL)arg2; +- (void)beginChanging; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCGmailLabel-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCGmailLabel-Protocol.h new file mode 100644 index 00000000..5476ed06 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCGmailLabel-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MCGmailLabel +- (BOOL)isGmailImportantLabel; +- (id)labelName; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMailAccount-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMailAccount-Protocol.h new file mode 100644 index 00000000..8e207976 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMailAccount-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCAccount.h" + +@protocol MCMailAccount +- (void)incrementTotalCountOfMessagesReceived:(unsigned long long)arg1; +- (void)incrementCountOfNewUnreadMessagesReceivedInInbox:(unsigned long long)arg1; +- (void)newUnreadMessagesHaveBeenReceivedInInbox; +- (id)remoteFetchQueue; +- (id)remoteTaskQueue; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMailbox-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMailbox-Protocol.h new file mode 100644 index 00000000..9f191502 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMailbox-Protocol.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSCopying.h" +#import "NSObject.h" + +@protocol MCMailbox +- (unsigned long long)unseenCount; +- (BOOL)unseenCountIsKnown; +- (id)URLString; +- (void)setUserInfoObject:(id)arg1 forKey:(id)arg2; +- (id)userInfoObjectForKey:(id)arg1; +- (void)setUserInfoBool:(BOOL)arg1 forKey:(id)arg2; +- (BOOL)userInfoBoolForKey:(id)arg1; +- (id)extendedDisplayName; +- (id)displayName; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-MCMailAccountAdapter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-MCMailAccountAdapter.h new file mode 100644 index 00000000..97f2d38c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-MCMailAccountAdapter.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@interface MCMessage (MCMailAccountAdapter) +- (id)mailAccount; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-MCMailboxAdapter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-MCMailboxAdapter.h new file mode 100644 index 00000000..e4163672 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-MCMailboxAdapter.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@interface MCMessage (MCMailboxAdapter) +- (id)mailMailbox; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-MFBackupAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-MFBackupAdditions.h new file mode 100644 index 00000000..6bab280f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-MFBackupAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@interface MCMessage (MFBackupAdditions) +- (id)backupID; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-ParentalControl.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-ParentalControl.h new file mode 100644 index 00000000..4e3e7c35 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-ParentalControl.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@interface MCMessage (ParentalControl) +- (void)setPermissionRequestState:(long long)arg1; +- (BOOL)isChildRequestMessage; +- (BOOL)isChildRequestMessage:(id)arg1 requestIsForSenders:(char *)arg2 childAddress:(id *)arg3 permissionRequestState:(long long *)arg4; +- (BOOL)isParentResponseMessage:(char *)arg1 isRejected:(char *)arg2 requestedAddresses:(id)arg3 requestIsForSenders:(char *)arg4; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-ScriptingSupport.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-ScriptingSupport.h new file mode 100644 index 00000000..0bb9e6ff --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-ScriptingSupport.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@interface MCMessage (ScriptingSupport) +- (id)bccRecipients; +- (id)ccRecipients; +- (id)toRecipients; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-ScriptingSupportInternal.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-ScriptingSupportInternal.h new file mode 100644 index 00000000..50568c2a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-ScriptingSupportInternal.h @@ -0,0 +1,57 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +#import "MCActivityTarget.h" + +@class NSString; + +@interface MCMessage (ScriptingSupportInternal) +- (id)valueInAppleScriptAttachmentsWithUniqueID:(id)arg1; +- (id)appleScriptAttachments; +- (id)appleScriptHeaders; +- (void)setBackgroundColor:(unsigned int)arg1; +- (unsigned int)backgroundColor; +- (unsigned int)actionColorMessage; +- (id)allHeaders; +- (id)rawSource; +- (id)messageIDHeader; +- (void)_performBackgroundSetContainer:(id)arg1 command:(id)arg2; +- (void)setContainer:(id)arg1; +- (id)container; +- (id)recipients; +- (void)_addRecipientsForKey:(id)arg1 toArray:(id)arg2; +- (id)_performBackgroundGetContent; +- (id)content; +- (id)scriptedMessageSize; +- (id)replyTo; +- (void)setFlaggedStatus:(long long)arg1; +- (long long)flaggedStatus; +- (void)setIsFlagged:(BOOL)arg1; +- (BOOL)isFlagged; +- (void)setIsDeleted:(BOOL)arg1; +- (BOOL)isDeleted; +- (void)setIsJunk:(BOOL)arg1; +- (BOOL)isJunk; +- (void)setWasRedirected:(BOOL)arg1; +- (BOOL)wasRedirected; +- (void)setWasForwarded:(BOOL)arg1; +- (BOOL)wasForwarded; +- (void)setWasRepliedTo:(BOOL)arg1; +- (BOOL)wasRepliedTo; +- (void)setIsRead:(BOOL)arg1; +- (BOOL)isRead; +- (void)_setAppleScriptFlag:(id)arg1 state:(BOOL)arg2; +- (id)objectSpecifier; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-Threads.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-Threads.h new file mode 100644 index 00000000..b92b6891 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessage-Threads.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@class NSIndexSet; + +@interface MCMessage (Threads) +@property(readonly, nonatomic) NSIndexSet *appliedFlagColors; +@property(readonly, nonatomic) int conversationPosition; +@property(readonly, nonatomic) long long conversationID; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessageBody-MFAttachmentViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessageBody-MFAttachmentViewController.h new file mode 100644 index 00000000..82da8257 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessageBody-MFAttachmentViewController.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessageBody.h" + +@interface MCMessageBody (MFAttachmentViewController) +- (id)attachmentViewControllers; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessageDataSource-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessageDataSource-Protocol.h new file mode 100644 index 00000000..89dfae2d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessageDataSource-Protocol.h @@ -0,0 +1,54 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCActivityTarget.h" +#import "NSCopying.h" + +@protocol MCMessageDataSource +@property(readonly) BOOL isReadOnly; +- (id)uniquedString:(id)arg1; +- (void)flushAllCaches; +- (void)invalidateMessage:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)routeMessages:(id)arg1 fetchingBodies:(BOOL)arg2 messagesNeedingBodies:(id)arg3; +- (void)doCompact; +- (BOOL)canCompact; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)undeleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (id)mailbox; +- (id)account; + +@optional +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessageSortingInterface-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessageSortingInterface-Protocol.h new file mode 100644 index 00000000..d27a81c0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMessageSortingInterface-Protocol.h @@ -0,0 +1,24 @@ +/* + * 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" + +@protocol MCMessageSortingInterface +- (unsigned int)uidForSort; +- (id)mailbox; +- (double)dateSentAsTimeIntervalSince1970; +- (double)dateReceivedAsTimeIntervalSince1970; +- (id)to; +- (unsigned long long)subjectPrefixLength; +- (id)subject; +- (unsigned long long)numberOfAttachments; +- (unsigned long long)messageSize; +- (id)senderDisplayName; +- (unsigned int)messageFlags; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (int)colorForSort; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMimePart-SpotlightSupport.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMimePart-SpotlightSupport.h new file mode 100644 index 00000000..47779bee --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCMimePart-SpotlightSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMimePart.h" + +@interface MCMimePart (SpotlightSupport) +- (BOOL)writeAttachmentToSpotlightCacheIfNeededUnder:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCPersistentIDFetching-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCPersistentIDFetching-Protocol.h new file mode 100644 index 00000000..4ce97a27 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCPersistentIDFetching-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MCPersistentIDFetching ++ (id)fetchedMessageWithRowID:(long long)arg1; +- (long long)libraryID; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCRemoteStoreAccount-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCRemoteStoreAccount-Protocol.h new file mode 100644 index 00000000..2e36f3f0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MCRemoteStoreAccount-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMailAccount.h" + +@protocol MCRemoteStoreAccount +- (void)presentOverQuotaAlert; +- (BOOL)shouldCacheAttachmentsForMessageWithDateReceived:(id)arg1; +- (void)setCachePolicy:(long long)arg1 permanently:(BOOL)arg2; +- (long long)cachePolicy; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAccount.h new file mode 100644 index 00000000..aa442370 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAccount.h @@ -0,0 +1,172 @@ +/* + * 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 "MCAccount.h" + +@class MCAuthScheme, NSArray, NSDate, NSDictionary, NSImage, NSMutableDictionary, NSNumber, NSString, NSURL; + +@interface MFAccount : NSObject +{ + NSMutableDictionary *_info; + NSString *_brandName; + id _brandIcon; + id _supportURL; + NSString *_supportURLLabel; + NSString *_providerIdentifier; + struct OpaqueSecIdentityRef *_tlsIdentity; + BOOL _isActive; + BOOL _configureDynamically; + BOOL _allowInsecureAuthentication; + BOOL _primitiveIsOffline; + BOOL _primitiveIsWillingToGoOnline; + BOOL _autosynchronizingEnabled; + NSString *_canonicalEmailAddress; + NSNumber *_useMailDrop; + NSDate *_lastConnectionValidationTime; +} + ++ (Class)classForProtocol:(id)arg1; ++ (id)keyPathsForValuesAffectingPreferredAuthScheme; ++ (BOOL)defaultsToSSL; ++ (id)standardSSLPorts; ++ (id)standardPorts; ++ (id)keyPathsForValuesAffectingOfflineDisplayName; ++ (BOOL)allObjectsInArrayAreOffline:(id)arg1; ++ (void)resetConfigureDynamically; ++ (id)genericAccountLargeImage; ++ (id)accountTypeString; ++ (void)saveAccountInfoToDefaults; ++ (BOOL)_shouldAnnounceChangesFromAccountInfo:(id)arg1 toAccountInfo:(id)arg2; ++ (void)saveAccounts:(id)arg1 usingStorageKey:(id)arg2 forceWriteToMail:(BOOL)arg3; ++ (void)saveAccounts:(id)arg1 usingStorageKey:(id)arg2; ++ (id)readAccountsUsingStorageKey:(id)arg1; ++ (id)readAccountsUsingStorageKey:(id)arg1 forceReadFromMail:(BOOL)arg2; ++ (id)v2AccountsPlistName; ++ (BOOL)haveAccountsBeenConfigured; ++ (id)typeStringForAccountClass:(Class)arg1; ++ (Class)accountClassForTypeString:(id)arg1; +@property(retain) NSDate *lastConnectionValidationTime; // @synthesize lastConnectionValidationTime=_lastConnectionValidationTime; +@property(retain, nonatomic) NSNumber *useMailDrop; // @synthesize useMailDrop=_useMailDrop; +@property(nonatomic) BOOL autosynchronizingEnabled; // @synthesize autosynchronizingEnabled=_autosynchronizingEnabled; +@property BOOL primitiveIsWillingToGoOnline; // @synthesize primitiveIsWillingToGoOnline=_primitiveIsWillingToGoOnline; +@property BOOL primitiveIsOffline; // @synthesize primitiveIsOffline=_primitiveIsOffline; +@property(copy) NSString *canonicalEmailAddress; // @synthesize canonicalEmailAddress=_canonicalEmailAddress; +@property BOOL allowInsecureAuthentication; // @synthesize allowInsecureAuthentication=_allowInsecureAuthentication; +@property BOOL configureDynamically; // @synthesize configureDynamically=_configureDynamically; +- (void).cxx_destruct; +- (void *)keychainProtocol; +- (void)respondToHostBecomingReachable; +- (BOOL)canAuthenticateWithScheme:(id)arg1; +- (void)removeAccountInfoObjectForKey:(id)arg1; +- (void)setAccountInfoObject:(id)arg1 forKey:(id)arg2; +@property(readonly) BOOL isValid; +- (void)clearBrandingCache; +@property(readonly) NSImage *brandIcon; +- (id)iaSettingsIncludingPassword:(BOOL)arg1; +@property(readonly, copy) NSString *brandName; +@property(copy) NSString *providerIdentifier; +@property(readonly, copy) NSString *accountTypeString; +@property(readonly, copy) NSString *subscriptionURLLabel; +@property(readonly) NSURL *subscriptionURL; +@property(readonly, copy) NSString *supportURLLabel; +@property(readonly) NSURL *supportURL; +- (BOOL)_matchesEmailAddress:(id)arg1; +- (BOOL)_matchesDiscoveredSettings:(id)arg1 fromEmailAddress:(id)arg2; +- (BOOL)autodiscoverSettings:(id *)arg1; +@property(readonly, nonatomic) BOOL usesConnectionBasedAutodiscovery; +- (id)nameForMailbox:(id)arg1; +@property(readonly, copy) NSString *identifier; +@property(copy) NSString *ISPAccountID; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +@property BOOL shouldUseAuthentication; +@property(readonly, nonatomic) BOOL requiresAuthentication; +@property(readonly, copy, nonatomic) NSString *saslProfileName; +@property(retain) MCAuthScheme *preferredAuthScheme; +- (void)accountInfoDidChange; +- (void)updateFromSuccessfulConnectionPortNumber:(long long)arg1 securityLayerType:(long long)arg2; +- (void)_setSecurityLayerType:(long long)arg1 releasingConnections:(BOOL)arg2; +@property long long securityLayerType; +- (void)_setUsesSSL:(BOOL)arg1 accountInfoKey:(id)arg2 releasingConnections:(BOOL)arg3; +- (BOOL)_usesSSLWithAccountInfoKey:(id)arg1; +- (void)_setUsesSSL:(BOOL)arg1 releasingConnections:(BOOL)arg2; +@property BOOL usesSSL; +- (void)validateConnectionsIfNeeded; +- (void)validateConnections; +- (void)releaseAllConnections; +@property(readonly, nonatomic) long long defaultSecurePortNumber; +@property(readonly, nonatomic) long long defaultPortNumber; +@property(readonly, copy, nonatomic) NSArray *standardSSLPorts; +@property(readonly, copy, nonatomic) NSArray *standardPorts; +- (void)_setPortNumber:(long long)arg1 releasingConnections:(BOOL)arg2; +@property long long portNumber; +- (void)setTLSIdentity:(struct OpaqueSecIdentityRef *)arg1; +- (struct OpaqueSecIdentityRef *)copyTLSIdentity; +@property(readonly, copy) NSString *googleClientToken; +@property(readonly, copy) NSString *appleAuthenticationToken; +@property(readonly, copy) NSString *applePersonID; +- (void)promptUserForPasswordWithCompletion:(id)arg1; +- (id)promptUserForPassword; +- (void)setSessionPassword:(id)arg1; +- (id)sessionPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)permanentPassword; +@property(copy) NSString *password; +- (void)_setHostname:(id)arg1 accountInfoKey:(id)arg2; +- (id)_hostnameWithAccountInfoKey:(id)arg1; +@property(copy) NSString *hostname; +@property(copy) NSString *username; +@property(readonly, copy) NSString *offlineDisplayName; +@property(copy) NSString *displayName; +@property(copy) NSString *storedDisplayName; +@property BOOL isWillingToGoOnline; +@property BOOL isOffline; +@property(readonly, nonatomic) BOOL canGoOffline; +@property BOOL isInactivatedInsteadOfBeingDeleted; +- (void)clearIsActiveCache; +@property BOOL isActive; +@property(readonly) NSMutableDictionary *defaultsDictionary; +- (void)_queueAccountInfoDidChange; +- (long long)portNumberForKeychain; +- (void)removeObjectForAccountInfoKey:(id)arg1; +- (void)setBool:(BOOL)arg1 forAccountInfoKey:(id)arg2; +- (BOOL)setBool:(BOOL)arg1 forAccountInfoKey:(id)arg2 withDefault:(BOOL)arg3; +- (void)setObject:(id)arg1 forAccountInfoKey:(id)arg2; +- (BOOL)boolForAccountInfoKey:(id)arg1 defaultResult:(BOOL)arg2; +- (id)objectForAccountInfoKey:(id)arg1; +- (void)setInfo:(id)arg1; +- (id)info; +- (void)_setAccountInfo:(id)arg1; +@property(copy) NSDictionary *accountInfo; +- (void)dealloc; +- (id)init; +- (id)initWithAccountInfo:(id)arg1; +@property(readonly, copy, nonatomic) NSString *iaServiceType; +- (void)setCustomAuthentication:(unsigned int)arg1; +- (unsigned int)customAuthentication; +- (id)accountName; +- (void)setAccountName:(id)arg1; +- (id)loginName; +- (void)setLoginName:(id)arg1; +- (id)serverName; +- (void)setServerName:(id)arg1; +- (id)accountPassword; +- (void)setAccountPassword:(id)arg1; +- (unsigned int)accountType; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(copy) NSString *externalHostname; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAccountStatus.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAccountStatus.h new file mode 100644 index 00000000..5eb1d33b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAccountStatus.h @@ -0,0 +1,66 @@ +/* + * 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 "MCActivityTarget.h" + +@class NSMapTable, NSMutableArray, NSMutableDictionary, NSMutableSet, NSString, NSTimer; + +@interface MFAccountStatus : NSObject +{ + NSMutableDictionary *_states; + NSMutableDictionary *_stateDetails; + struct __CFNetDiagnostic *_netDiagnostics; + NSMapTable *_clients; + NSMutableSet *_allRegisteredAccounts; + unsigned long long _allRegisteredTypes; + NSMutableArray *_accountRefreshQueue; + BOOL _isRefreshingInternet; + NSTimer *_refreshTimer; +} + ++ (id)sharedStatus; +@property BOOL isRefreshingInternet; // @synthesize isRefreshingInternet=_isRefreshingInternet; +@property(readonly, nonatomic) NSTimer *refreshTimer; // @synthesize refreshTimer=_refreshTimer; +- (void).cxx_destruct; +- (void)_accountStatusUpdatedWithInfo:(id)arg1; +- (void)_refreshAccountStatus:(id)arg1; +- (void)_refreshInternetStatus; +- (void)_refreshAccounts:(id)arg1 andInternet:(BOOL)arg2 clearingStatus:(BOOL)arg3; +- (void)refreshStatusForClient:(id)arg1 forceRefresh:(BOOL)arg2; +- (void)refreshAndClearStatus:(BOOL)arg1; +- (void)_accountInfoChanged:(id)arg1; +- (void)_networkChanged:(id)arg1; +- (void)_timedRefresh:(id)arg1; +- (void)_setStatusDetails:(id)arg1 forAccount:(id)arg2; +- (id)accountStatusDetails:(id)arg1; +- (void)_setStatus:(long long)arg1 forAccount:(id)arg2; +- (long long)knownAccountStatus:(id)arg1; +- (long long)accountStatus:(id)arg1; +- (void)diagnoseInternetConnection; +- (void)_setInternetStatus:(long long)arg1; +- (long long)internetStatus; +- (id)_accountsForTypes:(unsigned long long)arg1; +- (id)_allRegisteredAccounts; +- (id)_registeredAccountsForClient:(id)arg1 onlyWithUnknownStatus:(BOOL)arg2; +- (id)registeredAccountsForClient:(id)arg1; +- (void)unregisterClient:(id)arg1; +- (void)registerAccounts:(id)arg1 forClient:(id)arg2; +- (void)registerAccountTypes:(unsigned long long)arg1 forClient:(id)arg2; +- (void)registerAccountTypes:(unsigned long long)arg1 accounts:(id)arg2 forClient:(id)arg3; +- (void)invalidate; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAccountStorage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAccountStorage.h new file mode 100644 index 00000000..0eccad2f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAccountStorage.h @@ -0,0 +1,31 @@ +/* + * 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" + +@interface MFAccountStorage : NSObject +{ + id _plistLock; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void).cxx_destruct; +- (id)v2AccountsPlistName; +- (void)setInteger:(long long)arg1 forKey:(id)arg2; +- (long long)integerForKey:(id)arg1; +- (id)stringForKey:(id)arg1; +- (id)arrayForKey:(id)arg1; +- (BOOL)synchronize; +- (void)removeObjectForKey:(id)arg1; +- (void)setObject:(id)arg1 forKey:(id)arg2; +- (id)objectForKey:(id)arg1; +- (id)_accountsPlistPath; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAddressManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAddressManager.h new file mode 100644 index 00000000..12ffd866 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAddressManager.h @@ -0,0 +1,73 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCInvocationQueue, NSCache, NSMutableDictionary, NSMutableSet, NSOperationQueue, NSString; + +@interface MFAddressManager : NSObject +{ + NSMutableSet *_emailsAwaitingImage; + NSMutableSet *_emailsWithoutImage; + NSMutableDictionary *_recordsCache; + NSMutableSet *_addressesWithNoRecords; + BOOL _needToTrimRecordCaches; + NSCache *_imageCache; + MCInvocationQueue *_imageLoadingQueue; + NSOperationQueue *_imageCreationQueue; +} + ++ (double)_photoDimensionForPhotoSize:(unsigned long long)arg1; ++ (id)placeholderImageOfSize:(unsigned long long)arg1 selected:(BOOL)arg2; ++ (id)addressManager; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) NSOperationQueue *imageCreationQueue; // @synthesize imageCreationQueue=_imageCreationQueue; +@property(readonly, nonatomic) MCInvocationQueue *imageLoadingQueue; // @synthesize imageLoadingQueue=_imageLoadingQueue; +@property(readonly, nonatomic) NSCache *imageCache; // @synthesize imageCache=_imageCache; +- (void).cxx_destruct; +- (id)groups; +- (void)_abImageForAddress:(id)arg1 displayName:(id)arg2 photoSize:(unsigned long long)arg3 selected:(BOOL)arg4 completionBlock:(id)arg5; +- (void)_fetchImageForAddress:(id)arg1 displayName:(id)arg2 size:(id)arg3 selected:(id)arg4; +- (id)_cacheKeyForAddress:(id)arg1 displayName:(id)arg2; +- (id)_cacheKeyForPhotoSize:(unsigned long long)arg1 selected:(BOOL)arg2; +- (void)_setCachedImage:(id)arg1 forAddress:(id)arg2 displayName:(id)arg3 photoSize:(unsigned long long)arg4 selected:(BOOL)arg5; +- (id)_cachedImageForAddress:(id)arg1 displayName:(id)arg2 photoSize:(unsigned long long)arg3 selected:(BOOL)arg4; +- (id)imageForMailAddress:(id)arg1 displayName:(id)arg2 photoSize:(unsigned long long)arg3 selected:(BOOL)arg4 fetchState:(unsigned long long *)arg5; +- (id)_addressBookRecordsForFirstName:(id)arg1 lastName:(id)arg2; +- (id)addressBookPersonForEmail:(id)arg1; +- (id)_addressBookRecordForEmail:(id)arg1; +- (void)removeRecentRecord:(id)arg1; +- (void)removeRecentAddresses:(id)arg1; +- (void)removeRecordFromAddressBook:(id)arg1 forRecent:(id)arg2; +- (id)addRecentToAddressBook:(id)arg1; +- (void)addAddresses:(id)arg1; +- (void)addRecentAddresses:(id)arg1 sendingAddress:(id)arg2; +- (void)_addAddresses:(id)arg1; +- (id)recordForUniqueId:(id)arg1; +- (void)_postPhotoChangedNotification; +- (void)_clearCachedImagesForRemovedRecords:(id)arg1; +- (void)_invalidateInsertedRecords:(id)arg1; +- (id)_fullAddressesForRecords:(id)arg1; +- (void)_invalidateChangedRecords:(id)arg1; +- (void)_addressBookDidChange:(id)arg1; +- (void)_trimRecordCaches; +- (void)_trimRecordCachesAfterDelay; +- (id)bestRecordMatchingFormattedAddress:(id)arg1; +- (void)_loadAddressBookSynchronously; +- (id)loadAddressBookAsynchronously; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAosImapAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAosImapAccount.h new file mode 100644 index 00000000..d5b34483 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAosImapAccount.h @@ -0,0 +1,87 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFAosSmtpAccount; + +@interface MFAosImapAccount : MFIMAPAccount +{ + id _aoskitLock; + struct AOSAccount *_aoskitAccount; + struct AOSTransactionC *_mailPropertiesTransaction; + struct AOSTransactionC *_aliasesTransaction; + struct AOSTransactionC *_editAliasesURLTransaction; + unsigned char _shouldBypassCache; + MFAosSmtpAccount *_aosSmtpAccount; +} + ++ (void)updateAllEmailAliases:(BOOL)arg1; ++ (id)defaultPathNameForAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)defaultPathNameForAccount; ++ (BOOL)defaultsToSSL; ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; +@property(readonly, nonatomic) MFAosSmtpAccount *aosSmtpAccount; // @synthesize aosSmtpAccount=_aosSmtpAccount; +@property unsigned char shouldBypassCache; // @synthesize shouldBypassCache=_shouldBypassCache; +- (void).cxx_destruct; +- (void)migrateToNewAOSService; +- (void)openEditEmailAliasesURL; +- (void)updateEmailAliases; +- (void)_updateMailProperties; +- (void)_updateAliases:(BOOL)arg1; +- (id)_passwordFromKeychain; +- (void)_updateAoskitAccount; +- (void)_setDidUpdateToAppleToken:(BOOL)arg1; +- (BOOL)_didUpdateToAppleToken; +- (void)setDefaultAddress:(id)arg1; +- (void)_setEditAliasesURLTransaction:(struct AOSTransactionC *)arg1; +- (struct AOSTransactionC *)_copyEditAliasesURLTransaction; +- (void)_setAliasesTransaction:(struct AOSTransactionC *)arg1; +- (struct AOSTransactionC *)_copyAliasesTransaction; +- (void)_setMailPropertiesTransaction:(struct AOSTransactionC *)arg1; +- (struct AOSTransactionC *)_copyMailPropertiesTransaction; +- (void)_setAoskitAccount:(struct AOSAccount *)arg1; +- (struct AOSAccount *)_copyAoskitAccount; +- (void)handleAlertResponse:(id)arg1; +- (void)presentOverQuotaAlert; +- (id)dynamicDeliveryAccount; +- (id)_replacementDeliveryAccountForDeliveryAccount:(id)arg1; +- (void)_removeDeliveryAccountIfNotInUse:(id)arg1; +- (void)setDeliveryAccount:(id)arg1; +- (id)deliveryAccount; +- (void)_setEmailAliases:(id)arg1; +- (id)emailAddresses; +- (id)rawEmailAddresses; +- (id)_URLPersistenceHostname; +- (BOOL)usesConnectionBasedAutodiscovery; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (BOOL)canAuthenticateWithScheme:(id)arg1; +- (id)preferredAuthScheme; +- (void)setIsOffline:(BOOL)arg1; +- (id)appleAuthenticationToken; +- (id)applePersonID; +- (void)setSessionPassword:(id)arg1; +- (void)setPermanentPassword:(id)arg1; +- (id)permanentPassword; +- (void)setPassword:(id)arg1; +- (id)defaultsDictionary; +- (void)setUsername:(id)arg1; +- (void)setHostname:(id)arg1; +- (id)hostname; +- (BOOL)autodiscoverSettings:(id *)arg1; +- (id)canonicalEmailAddress; +- (void)completeDeferredInitialization; +- (void)_setAccountInfo:(id)arg1; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; +- (void)setLastSuccessfulAosSmtpSecurityLayerType:(long long)arg1; +- (long long)lastSuccessfulAosSmtpSecurityLayerType; +- (void)setLastSuccessfulAosSmtpPortNumber:(long long)arg1; +- (long long)lastSuccessfulAosSmtpPortNumber; +- (id)aoskitPropertyForKey:(struct __CFString *)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAosSmtpAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAosSmtpAccount.h new file mode 100644 index 00000000..c6e1da29 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAosSmtpAccount.h @@ -0,0 +1,84 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFAosImapAccount; + +@interface MFAosSmtpAccount : MFSMTPAccount +{ + MFAosImapAccount *_aosImapAccount; +} + ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; +- (void).cxx_destruct; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (void)setShouldTryDefaultPorts:(BOOL)arg1; +- (BOOL)shouldTryDefaultPorts; +- (id)remoteMailAccountsEmployedBy; +- (void)setShouldUseAuthentication:(BOOL)arg1; +- (BOOL)shouldUseAuthentication; +- (void)setAssociatedAccount:(id)arg1; +- (id)associatedAccount; +- (BOOL)isDynamic; +- (id)deliveryIdentifier; +- (void)setValidationRequired:(BOOL)arg1; +- (BOOL)validationRequired; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (id)subscriptionURLLabel; +- (id)subscriptionURL; +- (id)supportURLLabel; +- (id)supportURL; +- (id)identifier; +- (void)setISPAccountID:(id)arg1; +- (id)ISPAccountID; +- (void)setPreferredAuthScheme:(id)arg1; +- (id)preferredAuthScheme; +- (void)_setUsesSSL:(BOOL)arg1 accountInfoKey:(id)arg2 releasingConnections:(BOOL)arg3; +- (id)appleAuthenticationToken; +- (id)applePersonID; +- (void)setSessionPassword:(id)arg1; +- (id)sessionPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)permanentPassword; +- (void)setPassword:(id)arg1; +- (id)password; +- (void)setUsername:(id)arg1; +- (id)username; +- (BOOL)autodiscoverSettings:(id *)arg1; +- (BOOL)usesConnectionBasedAutodiscovery; +- (void)setCanonicalEmailAddress:(id)arg1; +- (id)canonicalEmailAddress; +- (void)_setSecurityLayerType:(long long)arg1 releasingConnections:(BOOL)arg2; +- (long long)securityLayerType; +- (void)_setPortNumber:(long long)arg1 releasingConnections:(BOOL)arg2; +- (long long)portNumber; +- (void)setConfigureDynamically:(BOOL)arg1; +- (BOOL)configureDynamically; +- (void)setHostname:(id)arg1; +- (id)hostname; +- (BOOL)canAuthenticateWithScheme:(id)arg1; +- (BOOL)requiresAuthentication; +- (void)setInfo:(id)arg1; +- (id)info; +- (void)_setAccountInfo:(id)arg1; +- (void)removeAccountInfoObjectForKey:(id)arg1; +- (void)setAccountInfoObject:(id)arg1 forKey:(id)arg2; +- (id)defaultsDictionary; +- (void)setIsInactivatedInsteadOfBeingDeleted:(BOOL)arg1; +- (BOOL)isInactivatedInsteadOfBeingDeleted; +- (id)offlineDisplayName; +- (void)setDisplayName; +- (id)displayName; +- (void)setStoredDisplayName; +- (id)storedDisplayName; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAttachmentViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAttachmentViewController.h new file mode 100644 index 00000000..7d9b7b8b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFAttachmentViewController.h @@ -0,0 +1,81 @@ +/* + * 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 "MCCIDURLProtocolDataProvider.h" +#import "NSCopying.h" + +@class DOMHTMLObjectElement, MCAttachment, NSArray, NSData, NSImage, NSItemProvider, NSMutableArray, NSString, NSURL; + +@interface MFAttachmentViewController : NSObject +{ + NSMutableArray *_attachmentViews; + BOOL _canBeDisplayedInline; + NSImage *_inlineImage; + BOOL _isBeingDisplayedInline; + BOOL _isInvisible; + BOOL _canBeDisplayedInRegisteredViewer; + BOOL _originalImageSizeHasBeenComputed; + BOOL _isImageBeingResized; + MCAttachment *_attachment; + long long _domNodeWidth; + long long _domNodeHeight; + DOMHTMLObjectElement *_objectElement; + struct CGSize _targetImageSize; + struct CGSize _originalImageSize; + struct CGSize _previousTargetImageSize; +} + ++ (Class)_viewProviderClassForMimeType:(id)arg1; ++ (void)registerViewingClass:(Class)arg1 forMimeTypes:(id)arg2; ++ (void)initialize; +@property(nonatomic) BOOL isImageBeingResized; // @synthesize isImageBeingResized=_isImageBeingResized; +@property(nonatomic) struct CGSize previousTargetImageSize; // @synthesize previousTargetImageSize=_previousTargetImageSize; +@property(nonatomic) BOOL originalImageSizeHasBeenComputed; // @synthesize originalImageSizeHasBeenComputed=_originalImageSizeHasBeenComputed; +@property(nonatomic) struct CGSize originalImageSize; // @synthesize originalImageSize=_originalImageSize; +@property(nonatomic) BOOL canBeDisplayedInRegisteredViewer; // @synthesize canBeDisplayedInRegisteredViewer=_canBeDisplayedInRegisteredViewer; +@property(retain, nonatomic) DOMHTMLObjectElement *objectElement; // @synthesize objectElement=_objectElement; +@property(nonatomic) struct CGSize targetImageSize; // @synthesize targetImageSize=_targetImageSize; +@property(nonatomic) long long domNodeHeight; // @synthesize domNodeHeight=_domNodeHeight; +@property(nonatomic) long long domNodeWidth; // @synthesize domNodeWidth=_domNodeWidth; +@property(readonly, nonatomic) MCAttachment *attachment; // @synthesize attachment=_attachment; +- (void).cxx_destruct; +@property(readonly, copy) NSString *mimeType; +@property(readonly) NSURL *cidURL; +@property(readonly, copy) NSData *data; +@property(readonly, nonatomic) NSItemProvider *itemProvider; +@property(readonly, copy) NSString *description; +- (void)forwardInvocation:(id)arg1; +- (id)methodSignatureForSelector:(SEL)arg1; +- (void)_attachmentDidFinishReading:(id)arg1; +- (void)_imageDataDidChange:(id)arg1; +- (id)iconImage; +- (id)inlineImage; +- (void)resizingFinished:(id)arg1 imageSize:(struct CGSize)arg2 fileExtension:(id)arg3 fileType:(unsigned int)arg4 maxImageSize:(struct CGSize)arg5; +- (void)resizingStarted:(struct CGSize)arg1; +- (struct CGSize)originalImageSizeWithOriginalImage:(id)arg1; +- (void)setInvisible:(BOOL)arg1; +- (BOOL)shouldDownloadAttachmentOnDisplay; +- (BOOL)shouldBeDisplayedInlineByDefault; +- (void)setCanBeDisplayedInline:(BOOL)arg1; +- (BOOL)canBeDisplayedInline; +@property(nonatomic) BOOL isBeingDisplayedInline; +- (void)addAttachmentView:(id)arg1; +@property(readonly, copy, nonatomic) NSArray *attachmentViews; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (id)initWithAttachment:(id)arg1; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) long long fileSize; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFBackupManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFBackupManager.h new file mode 100644 index 00000000..85d00e8b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFBackupManager.h @@ -0,0 +1,69 @@ +/* + * 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" + +@class MFMailbox, NSArray, NSDictionary, NSMapTable, NSMutableDictionary, NSString, NSURL; + +@interface MFBackupManager : NSObject +{ + NSMapTable *_mailboxBackupPaths; + NSMutableDictionary *_mailboxesWithKnownContents; + id _editableMessagesLock; + id _timeMachineRestoreLock; + BOOL _registeredForEditableMessageNotifications; + MFMailbox *_topLevelRecoveryMailbox; + NSDictionary *_lastSavedTableOfContents; + NSArray *_messagePathsToRestore; + NSURL *_mailboxDirectoryToRestore; + NSString *_mailboxNameForRestoring; +} + ++ (id)sharedManager; +@property(copy) NSString *mailboxNameForRestoring; // @synthesize mailboxNameForRestoring=_mailboxNameForRestoring; +@property(retain) NSURL *mailboxDirectoryToRestore; // @synthesize mailboxDirectoryToRestore=_mailboxDirectoryToRestore; +@property(copy) NSArray *messagePathsToRestore; // @synthesize messagePathsToRestore=_messagePathsToRestore; +@property BOOL registeredForEditableMessageNotifications; // @synthesize registeredForEditableMessageNotifications=_registeredForEditableMessageNotifications; +@property(copy) NSDictionary *lastSavedTableOfContents; // @synthesize lastSavedTableOfContents=_lastSavedTableOfContents; +@property(retain) MFMailbox *topLevelRecoveryMailbox; // @synthesize topLevelRecoveryMailbox=_topLevelRecoveryMailbox; +- (void).cxx_destruct; +- (id)backupMailboxesEnumerator; +- (id)backupPathForMailbox:(id)arg1 pathsCache:(id)arg2; +- (id)_backupPathForMailbox:(id)arg1 withParentPath:(id)arg2 pathsCache:(id)arg3; +- (id)backupPathForMailbox:(id)arg1; +- (BOOL)saveTableOfContents:(id)arg1; +- (id)tableOfContents; +- (void)_addMailbox:(id)arg1 toSection:(long long)arg2 sections:(id)arg3 messagePool:(id)arg4; +- (long long)_sectionForMailbox:(id)arg1; +- (id)_dictionaryForMessage:(id)arg1 includeRecipients:(BOOL)arg2; +- (id)_dictionaryForMailbox:(id)arg1 parent:(id)arg2 messagePool:(id)arg3; +- (id)_dictionaryForSection:(long long)arg1; +- (id)_expandedMailboxes:(id)arg1; +- (BOOL)_shouldSaveDisplayNameForMailbox:(id)arg1; +- (BOOL)shouldSaveMessagesForMailbox:(id)arg1; +- (id)_reducedPathFromFullPath:(id)arg1; +- (id)_reducedPathFromFullPath:(id)arg1 supportDirectory:(id)arg2; +- (id)_recoveryMailboxWithSuggestedName:(id)arg1 reuseMailbox:(BOOL)arg2; +- (BOOL)_restoreMailboxAtURL:(id)arg1 intoMailbox:(id)arg2 newMessages:(id)arg3; +- (BOOL)restoreMailboxesAtURL:(id)arg1 intoMailbox:(id)arg2 restoredMessages:(id)arg3; +- (id)restoreMailboxAtURL:(id)arg1 intoMailboxNamed:(id)arg2 postNotification:(BOOL)arg3; +- (void)prepareToRestoreMailboxAtURL:(id)arg1 intoMailboxNamed:(id)arg2; +- (id)restoreMessagesAtPaths:(id)arg1 intoMailboxNamed:(id)arg2 reuseMailbox:(BOOL)arg3 createdMailboxNamed:(id *)arg4 postNotification:(BOOL)arg5; +- (void)prepareToRestoreMessagesAtPaths:(id)arg1 intoMailboxNamed:(id)arg2; +- (unsigned long long)numberOfMessagesToBeRestored; +- (id)mailboxNameToBeRestored; +- (BOOL)hasPendingRestoreIsMailbox:(char *)arg1; +- (void)timeMachineRestoreFinished:(id)arg1; +- (void)performPendingRestore; +- (void)_setupDefaultTopLevelRecoveryMailbox; +- (void)editableMessagesWereDeleted:(id)arg1; +- (void)editableMessagesWereAdded:(id)arg1; +- (void)invalidateCaches; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFBehaviorTracker.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFBehaviorTracker.h new file mode 100644 index 00000000..2001dda4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFBehaviorTracker.h @@ -0,0 +1,28 @@ +/* + * 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" + +@class CDSession, NSMutableDictionary, NSOperationQueue; + +@interface MFBehaviorTracker : NSObject +{ + NSMutableDictionary *_activeValuesByAttributeName; + CDSession *_session; + NSOperationQueue *_taskQueue; +} + +@property(readonly, nonatomic) NSOperationQueue *taskQueue; // @synthesize taskQueue=_taskQueue; +@property(readonly, nonatomic) CDSession *session; // @synthesize session=_session; +- (void).cxx_destruct; +- (id)valueForecastsForAttributeName:(id)arg1 values:(id)arg2; +- (id)_attributeForName:(id)arg1; +- (void)endAllBehaviorsForAttribute:(id)arg1; +- (void)beginBehaviorWithValues:(id)arg1 forAttribute:(id)arg2; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFBerkeleyMbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFBerkeleyMbox.h new file mode 100644 index 00000000..16ac0ae7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFBerkeleyMbox.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSData, NSString; + +@interface MFBerkeleyMbox : MFMessageStore +{ + NSData *_mboxData; + NSString *_path; +} + ++ (BOOL)createEmptyStoreForPath:(id)arg1; ++ (BOOL)storeAtPathIsWritable:(id)arg1; ++ (BOOL)storeExistsForPath:(id)arg1; +@property(readonly, copy) NSString *path; // @synthesize path=_path; +- (void).cxx_destruct; +- (void)fetchSynchronously; +- (id)_defaultRouterDestination; +- (void)doCompact; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (void)_resetAllMessages; +- (id)_mboxData; +- (id)_lockFilePath; +- (void)writeUpdatedMessageDataToDisk; +- (id)initWithAccount:(id)arg1; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2 createEmptyStore:(BOOL)arg3; +- (id)init; +- (id)initWithPath:(id)arg1 create:(BOOL)arg2 readOnly:(BOOL)arg3 account:(id)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFCachedMailboxInfo.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFCachedMailboxInfo.h new file mode 100644 index 00000000..69841149 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFCachedMailboxInfo.h @@ -0,0 +1,26 @@ +/* + * 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" + +@class MFMailbox; + +@interface MFCachedMailboxInfo : NSObject +{ + int _mailboxType; + long long _mailboxID; + MFMailbox *_mailbox; +} + +@property(retain, nonatomic) MFMailbox *mailbox; // @synthesize mailbox=_mailbox; +@property(nonatomic) int mailboxType; // @synthesize mailboxType=_mailboxType; +@property(nonatomic) long long mailboxID; // @synthesize mailboxID=_mailboxID; +- (void)updateWithMessage:(id)arg1; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFConversationCalculationContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFConversationCalculationContext.h new file mode 100644 index 00000000..e2031a0a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFConversationCalculationContext.h @@ -0,0 +1,245 @@ +/* + * 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" + +@class MFLibraryMessage, MFPreparedStatement, MFSqliteHandle, NSData, NSHashTable, NSMutableDictionary, NSMutableSet; + +@interface MFConversationCalculationContext : NSObject +{ + NSHashTable *_participants; + BOOL _hasReferences; + BOOL _messageType; + BOOL _didTearDown; + BOOL _conversationsWereReset; + BOOL _recordConversationCalculationPerformanceMetrics; + BOOL _logConversationCalculationTrace; + int _rootStatus; + int _dateReceived; + int _automatedConversationType; + long long _rowID; + MFLibraryMessage *_message; + long long _subjectID; + unsigned long long _subjectLength; + NSData *_messageIDHeader; + long long _conversationID; + long long _mailbox; + long long _senderID; + MFSqliteHandle *_handle; + struct sqlite3 *_db; + NSMutableSet *_addedConversations; + NSMutableSet *_removedConversations; + NSMutableSet *_updatedConversations; + NSMutableDictionary *_oldConversationIDByMessage; + NSMutableDictionary *_currentConversationIDByMessage; + double _messageHasReferencesTime; + double _messageHasMessageIDTime; + double _conversationIDOfCloneTime; + double _conversationIDOfClosestAncestorTime; + double _descendantsOfMessagesTime; + double _peersOfMessagesTime; + double _fuzzyDescendantsToSplitTime; + double _conversationIDOfFuzzyAncestorTime; + double _descendantsOfMessageToSplitTime; + double _createNewConversationFromMessageTime; + double _addMessageToConversationTime; + double _mergeConversationsTime; + double _calculateConversationForMessageTotalTime; + double _conversationIDOfAutomatedMessageWithReferencesTime; + double _conversationIDOfAutomatedMessageWithoutReferencesTime; + double _fixupConversationPositionsTime; + unsigned long long _cloneCount; + unsigned long long _closestAncestorCount; + unsigned long long _descendantsFoundCount; + unsigned long long _peersFoundCount; + unsigned long long _fuzzyDescendantsToSplitCount; + unsigned long long _fuzzyAncestorCount; + unsigned long long _descendantsToSplitCount; + unsigned long long _newConversationCount; + unsigned long long _addMessageToConversationCount; + unsigned long long _conversationsSplitCount; + unsigned long long _conversationsMergeCount; + unsigned long long _messagesMergedCount; + unsigned long long _fuzzyMatchesCacheHits; + unsigned long long _fuzzyMatchesCacheMisses; + unsigned long long _automatedMessagesWithReferencesCount; + unsigned long long _automatedMessagesWithoutReferencesCount; + unsigned long long _conversationPositionInvalidRangeCount; + unsigned long long _conversationPositionInsertionPointUnavailableCount; + unsigned long long _conversationPositionRangeNormalCount; + unsigned long long _conversationPositionAdjustedForAncestorCount; + unsigned long long _conversationPositionAdjustedForDescendantCount; + MFPreparedStatement *_messageHasReferencesStatement; + MFPreparedStatement *_messageHasMessageIDStatement; + MFPreparedStatement *_conversationIDOfCloneStatement; + MFPreparedStatement *_conversationIDOfAutomatedAncestorWithReferencesStatement; + MFPreparedStatement *_conversationIDOfAutomatedPeerWithReferencesStatement; + MFPreparedStatement *_conversationIDOfAutomatedMessageWithoutReferencesStatement; + MFPreparedStatement *_conversationIDOfClosestAncestorStatement; + MFPreparedStatement *_peersOfMessageStatement; + MFPreparedStatement *_addMessageToConversationStatement; + MFPreparedStatement *_messagesInConversationStatement; + MFPreparedStatement *_descendantsToSplitFromConversationStatement; + MFPreparedStatement *_descendantsOfMessageStatement; + MFPreparedStatement *_descendantBelongsToSameConversationAsAncestorStatement; + MFPreparedStatement *_peersToSplitFromConversationStatement; + MFPreparedStatement *_fuzzyMessagesWithSameSubjectStatement; + MFPreparedStatement *_candidateMessagesForFuzzyMatchingStatement; + MFPreparedStatement *_fuzzyMessagesToSplitFromConversationStatement; + MFPreparedStatement *_recipientsForRowIDStatement; + MFPreparedStatement *_dateReceivedForRowIDStatement; + MFPreparedStatement *_senderForRowIDStatement; + MFPreparedStatement *_conversationIDForRowIDStatement; + MFPreparedStatement *_setFuzzyAncestorForRowIDStatement; + MFPreparedStatement *_subjectForRowIDStatement; + MFPreparedStatement *_automatedConversationTypeForRowIDStatement; + MFPreparedStatement *_clonesForRowIDStatement; + MFPreparedStatement *_countOfDistinctAutomatedConversationTypesForConversationIDStatement; + MFPreparedStatement *_maxConversationIDStatement; + MFPreparedStatement *_messagesMissingConversationPositionStatement; + MFPreparedStatement *_updateConversationPositionStatement; + MFPreparedStatement *_conversationPositionOfClosestDescendantStatement; + MFPreparedStatement *_conversationPositionOfClosestAncestorStatement; +} + ++ (void)addMessagesInDictionary:(id)arg1 toDictionary:(id)arg2; +@property(retain, nonatomic) MFPreparedStatement *conversationPositionOfClosestAncestorStatement; // @synthesize conversationPositionOfClosestAncestorStatement=_conversationPositionOfClosestAncestorStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationPositionOfClosestDescendantStatement; // @synthesize conversationPositionOfClosestDescendantStatement=_conversationPositionOfClosestDescendantStatement; +@property(retain, nonatomic) MFPreparedStatement *updateConversationPositionStatement; // @synthesize updateConversationPositionStatement=_updateConversationPositionStatement; +@property(retain, nonatomic) MFPreparedStatement *messagesMissingConversationPositionStatement; // @synthesize messagesMissingConversationPositionStatement=_messagesMissingConversationPositionStatement; +@property(retain, nonatomic) MFPreparedStatement *maxConversationIDStatement; // @synthesize maxConversationIDStatement=_maxConversationIDStatement; +@property(retain, nonatomic) MFPreparedStatement *countOfDistinctAutomatedConversationTypesForConversationIDStatement; // @synthesize countOfDistinctAutomatedConversationTypesForConversationIDStatement=_countOfDistinctAutomatedConversationTypesForConversationIDStatement; +@property(retain, nonatomic) MFPreparedStatement *clonesForRowIDStatement; // @synthesize clonesForRowIDStatement=_clonesForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *automatedConversationTypeForRowIDStatement; // @synthesize automatedConversationTypeForRowIDStatement=_automatedConversationTypeForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *subjectForRowIDStatement; // @synthesize subjectForRowIDStatement=_subjectForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *setFuzzyAncestorForRowIDStatement; // @synthesize setFuzzyAncestorForRowIDStatement=_setFuzzyAncestorForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationIDForRowIDStatement; // @synthesize conversationIDForRowIDStatement=_conversationIDForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *senderForRowIDStatement; // @synthesize senderForRowIDStatement=_senderForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *dateReceivedForRowIDStatement; // @synthesize dateReceivedForRowIDStatement=_dateReceivedForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *recipientsForRowIDStatement; // @synthesize recipientsForRowIDStatement=_recipientsForRowIDStatement; +@property(retain, nonatomic) MFPreparedStatement *fuzzyMessagesToSplitFromConversationStatement; // @synthesize fuzzyMessagesToSplitFromConversationStatement=_fuzzyMessagesToSplitFromConversationStatement; +@property(retain, nonatomic) MFPreparedStatement *candidateMessagesForFuzzyMatchingStatement; // @synthesize candidateMessagesForFuzzyMatchingStatement=_candidateMessagesForFuzzyMatchingStatement; +@property(retain, nonatomic) MFPreparedStatement *fuzzyMessagesWithSameSubjectStatement; // @synthesize fuzzyMessagesWithSameSubjectStatement=_fuzzyMessagesWithSameSubjectStatement; +@property(retain, nonatomic) MFPreparedStatement *peersToSplitFromConversationStatement; // @synthesize peersToSplitFromConversationStatement=_peersToSplitFromConversationStatement; +@property(retain, nonatomic) MFPreparedStatement *descendantBelongsToSameConversationAsAncestorStatement; // @synthesize descendantBelongsToSameConversationAsAncestorStatement=_descendantBelongsToSameConversationAsAncestorStatement; +@property(retain, nonatomic) MFPreparedStatement *descendantsOfMessageStatement; // @synthesize descendantsOfMessageStatement=_descendantsOfMessageStatement; +@property(retain, nonatomic) MFPreparedStatement *descendantsToSplitFromConversationStatement; // @synthesize descendantsToSplitFromConversationStatement=_descendantsToSplitFromConversationStatement; +@property(retain, nonatomic) MFPreparedStatement *messagesInConversationStatement; // @synthesize messagesInConversationStatement=_messagesInConversationStatement; +@property(retain, nonatomic) MFPreparedStatement *addMessageToConversationStatement; // @synthesize addMessageToConversationStatement=_addMessageToConversationStatement; +@property(retain, nonatomic) MFPreparedStatement *peersOfMessageStatement; // @synthesize peersOfMessageStatement=_peersOfMessageStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationIDOfClosestAncestorStatement; // @synthesize conversationIDOfClosestAncestorStatement=_conversationIDOfClosestAncestorStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationIDOfAutomatedMessageWithoutReferencesStatement; // @synthesize conversationIDOfAutomatedMessageWithoutReferencesStatement=_conversationIDOfAutomatedMessageWithoutReferencesStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationIDOfAutomatedPeerWithReferencesStatement; // @synthesize conversationIDOfAutomatedPeerWithReferencesStatement=_conversationIDOfAutomatedPeerWithReferencesStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationIDOfAutomatedAncestorWithReferencesStatement; // @synthesize conversationIDOfAutomatedAncestorWithReferencesStatement=_conversationIDOfAutomatedAncestorWithReferencesStatement; +@property(retain, nonatomic) MFPreparedStatement *conversationIDOfCloneStatement; // @synthesize conversationIDOfCloneStatement=_conversationIDOfCloneStatement; +@property(retain, nonatomic) MFPreparedStatement *messageHasMessageIDStatement; // @synthesize messageHasMessageIDStatement=_messageHasMessageIDStatement; +@property(retain, nonatomic) MFPreparedStatement *messageHasReferencesStatement; // @synthesize messageHasReferencesStatement=_messageHasReferencesStatement; +@property(nonatomic) unsigned long long conversationPositionAdjustedForDescendantCount; // @synthesize conversationPositionAdjustedForDescendantCount=_conversationPositionAdjustedForDescendantCount; +@property(nonatomic) unsigned long long conversationPositionAdjustedForAncestorCount; // @synthesize conversationPositionAdjustedForAncestorCount=_conversationPositionAdjustedForAncestorCount; +@property(nonatomic) unsigned long long conversationPositionRangeNormalCount; // @synthesize conversationPositionRangeNormalCount=_conversationPositionRangeNormalCount; +@property(nonatomic) unsigned long long conversationPositionInsertionPointUnavailableCount; // @synthesize conversationPositionInsertionPointUnavailableCount=_conversationPositionInsertionPointUnavailableCount; +@property(nonatomic) unsigned long long conversationPositionInvalidRangeCount; // @synthesize conversationPositionInvalidRangeCount=_conversationPositionInvalidRangeCount; +@property(nonatomic) unsigned long long automatedMessagesWithoutReferencesCount; // @synthesize automatedMessagesWithoutReferencesCount=_automatedMessagesWithoutReferencesCount; +@property(nonatomic) unsigned long long automatedMessagesWithReferencesCount; // @synthesize automatedMessagesWithReferencesCount=_automatedMessagesWithReferencesCount; +@property(nonatomic) unsigned long long fuzzyMatchesCacheMisses; // @synthesize fuzzyMatchesCacheMisses=_fuzzyMatchesCacheMisses; +@property(nonatomic) unsigned long long fuzzyMatchesCacheHits; // @synthesize fuzzyMatchesCacheHits=_fuzzyMatchesCacheHits; +@property(nonatomic) unsigned long long messagesMergedCount; // @synthesize messagesMergedCount=_messagesMergedCount; +@property(nonatomic) unsigned long long conversationsMergeCount; // @synthesize conversationsMergeCount=_conversationsMergeCount; +@property(nonatomic) unsigned long long conversationsSplitCount; // @synthesize conversationsSplitCount=_conversationsSplitCount; +@property(nonatomic) unsigned long long addMessageToConversationCount; // @synthesize addMessageToConversationCount=_addMessageToConversationCount; +@property(nonatomic) unsigned long long newConversationCount; // @synthesize newConversationCount=_newConversationCount; +@property(nonatomic) unsigned long long descendantsToSplitCount; // @synthesize descendantsToSplitCount=_descendantsToSplitCount; +@property(nonatomic) unsigned long long fuzzyAncestorCount; // @synthesize fuzzyAncestorCount=_fuzzyAncestorCount; +@property(nonatomic) unsigned long long fuzzyDescendantsToSplitCount; // @synthesize fuzzyDescendantsToSplitCount=_fuzzyDescendantsToSplitCount; +@property(nonatomic) unsigned long long peersFoundCount; // @synthesize peersFoundCount=_peersFoundCount; +@property(nonatomic) unsigned long long descendantsFoundCount; // @synthesize descendantsFoundCount=_descendantsFoundCount; +@property(nonatomic) unsigned long long closestAncestorCount; // @synthesize closestAncestorCount=_closestAncestorCount; +@property(nonatomic) unsigned long long cloneCount; // @synthesize cloneCount=_cloneCount; +@property(nonatomic) double fixupConversationPositionsTime; // @synthesize fixupConversationPositionsTime=_fixupConversationPositionsTime; +@property(nonatomic) double conversationIDOfAutomatedMessageWithoutReferencesTime; // @synthesize conversationIDOfAutomatedMessageWithoutReferencesTime=_conversationIDOfAutomatedMessageWithoutReferencesTime; +@property(nonatomic) double conversationIDOfAutomatedMessageWithReferencesTime; // @synthesize conversationIDOfAutomatedMessageWithReferencesTime=_conversationIDOfAutomatedMessageWithReferencesTime; +@property(nonatomic) double calculateConversationForMessageTotalTime; // @synthesize calculateConversationForMessageTotalTime=_calculateConversationForMessageTotalTime; +@property(nonatomic) double mergeConversationsTime; // @synthesize mergeConversationsTime=_mergeConversationsTime; +@property(nonatomic) double addMessageToConversationTime; // @synthesize addMessageToConversationTime=_addMessageToConversationTime; +@property(nonatomic) double createNewConversationFromMessageTime; // @synthesize createNewConversationFromMessageTime=_createNewConversationFromMessageTime; +@property(nonatomic) double descendantsOfMessageToSplitTime; // @synthesize descendantsOfMessageToSplitTime=_descendantsOfMessageToSplitTime; +@property(nonatomic) double conversationIDOfFuzzyAncestorTime; // @synthesize conversationIDOfFuzzyAncestorTime=_conversationIDOfFuzzyAncestorTime; +@property(nonatomic) double fuzzyDescendantsToSplitTime; // @synthesize fuzzyDescendantsToSplitTime=_fuzzyDescendantsToSplitTime; +@property(nonatomic) double peersOfMessagesTime; // @synthesize peersOfMessagesTime=_peersOfMessagesTime; +@property(nonatomic) double descendantsOfMessagesTime; // @synthesize descendantsOfMessagesTime=_descendantsOfMessagesTime; +@property(nonatomic) double conversationIDOfClosestAncestorTime; // @synthesize conversationIDOfClosestAncestorTime=_conversationIDOfClosestAncestorTime; +@property(nonatomic) double conversationIDOfCloneTime; // @synthesize conversationIDOfCloneTime=_conversationIDOfCloneTime; +@property(nonatomic) double messageHasMessageIDTime; // @synthesize messageHasMessageIDTime=_messageHasMessageIDTime; +@property(nonatomic) double messageHasReferencesTime; // @synthesize messageHasReferencesTime=_messageHasReferencesTime; +@property(retain, nonatomic) NSMutableDictionary *currentConversationIDByMessage; // @synthesize currentConversationIDByMessage=_currentConversationIDByMessage; +@property(retain, nonatomic) NSMutableDictionary *oldConversationIDByMessage; // @synthesize oldConversationIDByMessage=_oldConversationIDByMessage; +@property(retain, nonatomic) NSMutableSet *updatedConversations; // @synthesize updatedConversations=_updatedConversations; +@property(retain, nonatomic) NSMutableSet *removedConversations; // @synthesize removedConversations=_removedConversations; +@property(retain, nonatomic) NSMutableSet *addedConversations; // @synthesize addedConversations=_addedConversations; +@property(nonatomic) BOOL logConversationCalculationTrace; // @synthesize logConversationCalculationTrace=_logConversationCalculationTrace; +@property(nonatomic) BOOL recordConversationCalculationPerformanceMetrics; // @synthesize recordConversationCalculationPerformanceMetrics=_recordConversationCalculationPerformanceMetrics; +@property(nonatomic) BOOL conversationsWereReset; // @synthesize conversationsWereReset=_conversationsWereReset; +@property(readonly, nonatomic) BOOL didTearDown; // @synthesize didTearDown=_didTearDown; +@property(readonly, nonatomic) struct sqlite3 *db; // @synthesize db=_db; +@property(readonly, nonatomic) MFSqliteHandle *handle; // @synthesize handle=_handle; +@property(nonatomic) int automatedConversationType; // @synthesize automatedConversationType=_automatedConversationType; +@property(nonatomic) int dateReceived; // @synthesize dateReceived=_dateReceived; +@property(nonatomic) long long senderID; // @synthesize senderID=_senderID; +@property(nonatomic) long long mailbox; // @synthesize mailbox=_mailbox; +@property(nonatomic) BOOL messageType; // @synthesize messageType=_messageType; +@property(nonatomic) long long conversationID; // @synthesize conversationID=_conversationID; +@property(retain, nonatomic) NSData *messageIDHeader; // @synthesize messageIDHeader=_messageIDHeader; +@property(nonatomic) BOOL hasReferences; // @synthesize hasReferences=_hasReferences; +@property(nonatomic) int rootStatus; // @synthesize rootStatus=_rootStatus; +@property(nonatomic) unsigned long long subjectLength; // @synthesize subjectLength=_subjectLength; +@property(nonatomic) long long subjectID; // @synthesize subjectID=_subjectID; +@property(retain, nonatomic) MFLibraryMessage *message; // @synthesize message=_message; +@property(nonatomic) long long rowID; // @synthesize rowID=_rowID; +- (void).cxx_destruct; +- (id)summaryForConversation:(long long)arg1; +- (BOOL)automatedConversationTypeIsConsistentForConversation:(long long)arg1; +- (int)conversationPositionOfClosestDescendantForRowID:(long long)arg1 inConversation:(long long)arg2; +- (int)conversationPositionOfClosestAncestorForRowID:(long long)arg1 inConversation:(long long)arg2; +- (int)automatedConversationTypeForRowID:(long long)arg1; +- (id)clonesForRowID:(long long)arg1; +@property(retain, nonatomic) NSHashTable *participants; +- (id)_participantsForRowID:(long long)arg1; +- (id)_recipientsForRowID:(long long)arg1; +- (long long)conversationIDForRowID:(long long)arg1; +- (unsigned long long)subjectLengthForRowID:(long long)arg1; +- (long long)_senderForRowID:(long long)arg1; +- (int)_dateReceivedForRowID:(long long)arg1; +- (void)_setFuzzyAncestor:(long long)arg1 forRowID:(long long)arg2; +- (id)_conversationsWithFuzzyDescendantsExcludingConversations:(id)arg1; +- (id)_recursiveDescendantsInConversations:(id)arg1; +- (id)descendantsOfMessageToSplit; +- (BOOL)_descendant:(long long)arg1 belongsToSameConversationAsAncestor:(long long)arg2; +- (long long)conversationIDOfClosestDescendantExcludingConversationID:(long long)arg1; +- (id)descendantsOfMessageExcludingConversationID:(long long)arg1; +- (id)fuzzyDescendantsToSplitExcludingConversationIDs:(id)arg1; +- (unsigned long long)_messagesWithSubject:(long long)arg1 participantsByRowID:(id)arg2 conversationIDByRowID:(id)arg3 dateReceivedByRowID:(id)arg4; +- (long long)_conversationIDUsingFuzzyHeuristicOfRowID:(long long)arg1 withSubject:(long long)arg2 subjectLength:(unsigned long long)arg3 sender:(long long)arg4 rootStatus:(int)arg5 participantsByRowID:(id)arg6 conversationIDByRowID:(id)arg7 dateReceivedByRowID:(id)arg8 resultRowID:(long long *)arg9 abortOnMatchBetterThanRowID:(long long)arg10; +- (long long)_rowIDOfBestFuzzyAncestorForMessage:(long long)arg1 subjectID:(long long)arg2 subjectLength:(unsigned long long)arg3 dateReceived:(int)arg4 senderID:(long long)arg5 rootStatus:(int)arg6 participantsByRowID:(id)arg7 conversationIDByRowID:(id)arg8 dateReceivedByRowID:(id)arg9 currentFuzzyAncestor:(long long)arg10 abortOnMatchBetterThanRowID:(long long)arg11 conversationIDOfBestFuzzyAncestor:(long long *)arg12; +- (id)_messagesInConversations:(id)arg1 count:(unsigned long long *)arg2; +- (id)peersOfMessageExcludingAncestorConversationID:(long long)arg1 descendantConversationID:(long long)arg2; +- (long long)conversationIDOfAutomatedMessageWithReferencesWithRowID:(long long *)arg1; +- (long long)conversationIDOfAutomatedMessageWithoutReferences; +- (long long)conversationIDOfFuzzyAncestorWithRowID:(long long *)arg1; +- (long long)conversationIDOfClosestAncestorWithRowID:(long long *)arg1; +- (long long)conversationIDOfCloneWithRowID:(long long *)arg1; +- (BOOL)messageHasMessageID; +- (BOOL)messageHasReferences; +- (void)conversationWasUpdated:(long long)arg1; +- (void)conversationWasRemoved:(long long)arg1; +- (void)conversationWasAdded:(long long)arg1; +- (id)description; +- (void)dealloc; +- (void)tearDown; +- (void)resetForNewRow; +- (id)initWithHandle:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFConversationCalculator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFConversationCalculator.h new file mode 100644 index 00000000..0d9e9a2e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFConversationCalculator.h @@ -0,0 +1,47 @@ +/* + * 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" + +@interface MFConversationCalculator : NSObject +{ + BOOL _logConversationCalculationPerformance; + BOOL _logConversationCalculationTrace; + BOOL _logConversationCalculationSubjectPrefixTrace; + BOOL _forceConversationSplits; + BOOL _alwaysValidateConversations; + BOOL _recordConversationCalculationPerformanceMetrics; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(nonatomic) BOOL recordConversationCalculationPerformanceMetrics; // @synthesize recordConversationCalculationPerformanceMetrics=_recordConversationCalculationPerformanceMetrics; +@property(nonatomic) BOOL alwaysValidateConversations; // @synthesize alwaysValidateConversations=_alwaysValidateConversations; +@property(nonatomic) BOOL forceConversationSplits; // @synthesize forceConversationSplits=_forceConversationSplits; +@property(nonatomic) BOOL logConversationCalculationSubjectPrefixTrace; // @synthesize logConversationCalculationSubjectPrefixTrace=_logConversationCalculationSubjectPrefixTrace; +@property(nonatomic) BOOL logConversationCalculationTrace; // @synthesize logConversationCalculationTrace=_logConversationCalculationTrace; +@property(nonatomic) BOOL logConversationCalculationPerformance; // @synthesize logConversationCalculationPerformance=_logConversationCalculationPerformance; +- (void)updateConversationRootsWithHandle:(id)arg1 onlyForMessagesMissingRoots:(BOOL)arg2; +- (BOOL)isRootSubjectPrefix:(id)arg1; +- (BOOL)isRootMessageSubject:(id)arg1; +- (void)_updatePrefixWithHandle:(id)arg1 withNewPrefix:(id)arg2 forMessagesWithSubject:(long long)arg3; +- (BOOL)updateSubjectPrefixesWithHandle:(id)arg1 onlyForMessagesMissingConversations:(BOOL)arg2; +- (int)_conversationPositionForMessageWithRowID:(long long)arg1 dateReceived:(int)arg2 conversationID:(long long)arg3 context:(id)arg4; +- (void)_fixupConversationPositionsForConversation:(id)arg1; +- (void)_mergeMessagesInConversations:(id)arg1 withConversation:(id)arg2; +- (void)_addMessage:(id)arg1 toConversation:(long long)arg2 withConversationPosition:(int)arg3; +- (long long)_createNewConversationFromMessage:(id)arg1; +- (void)_calculateConversationForMessage:(id)arg1; +- (void)_updateAllRowsMissingRootValueWithHandle:(id)arg1; +- (void)_updateAllRowsMissingFuzzyAncestorWithHandle:(id)arg1; +- (void)updateAllRowsMissingConversationsWithHandle:(id)arg1 conversationUserInfo:(id)arg2 conversationsWereReset:(BOOL)arg3 progressDelegate:(id)arg4; +- (id)resetConversationIDForMessages:(id)arg1 withHandle:(id)arg2; +- (void)updateConversationsIfNeededWithHandle:(id)arg1; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFCriterion.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFCriterion.h new file mode 100644 index 00000000..37f69849 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFCriterion.h @@ -0,0 +1,128 @@ +/* + * 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" + +@class NSArray, NSString; + +@interface MFCriterion : NSObject +{ + BOOL _dateIsRelative; + BOOL _allCriteriaMustBeSatisfied; + BOOL _originatedFromSearchSuggestion; + int _specialMailboxType; + NSString *_name; + NSString *_expression; + NSString *_criterionIdentifier; + long long _criterionType; + long long _qualifier; + long long _dateUnits; + NSArray *_criteria; + unsigned long long _knownLimit; + NSString *_uniqueId; +} + ++ (BOOL)criteria:(id)arg1 areEqualToCriteria:(id)arg2; ++ (id)stringForCriterionType:(long long)arg1; ++ (long long)criterionTypeForString:(id)arg1; ++ (id)queryScopePathForMailbox:(id)arg1; ++ (void)logSpotlightStatus; ++ (BOOL)logCriterionConversionErrors; ++ (void)setLogSpotlightCallbacks:(BOOL)arg1; ++ (BOOL)logSpotlightCallbacks; ++ (void)setLogSpotlightQueries:(BOOL)arg1; ++ (BOOL)logSpotlightQueries; ++ (BOOL)searchUsingOnlySpotlight; ++ (id)compoundCriterionWithCriteria:(id)arg1; ++ (id)defaultsArrayFromCriteria:(id)arg1; ++ (id)criteriaFromDefaultsArray:(id)arg1 removingRecognizedKeys:(BOOL)arg2; ++ (id)criteriaFromDefaultsArray:(id)arg1; +@property(readonly, copy, nonatomic) NSString *uniqueId; // @synthesize uniqueId=_uniqueId; +@property BOOL originatedFromSearchSuggestion; // @synthesize originatedFromSearchSuggestion=_originatedFromSearchSuggestion; +@property unsigned long long knownLimit; // @synthesize knownLimit=_knownLimit; +@property int specialMailboxType; // @synthesize specialMailboxType=_specialMailboxType; +@property BOOL allCriteriaMustBeSatisfied; // @synthesize allCriteriaMustBeSatisfied=_allCriteriaMustBeSatisfied; +@property BOOL dateIsRelative; // @synthesize dateIsRelative=_dateIsRelative; +@property long long dateUnits; // @synthesize dateUnits=_dateUnits; +@property long long qualifier; // @synthesize qualifier=_qualifier; +@property(copy) NSString *expression; // @synthesize expression=_expression; +@property(copy) NSString *name; // @synthesize name=_name; +- (void).cxx_destruct; +- (long long)smartMailboxesVersion; +- (long long)version; +- (BOOL)containsJunkMailboxCriterion; +- (BOOL)isEqualToCriterion:(id)arg1; +- (BOOL)isValid:(id *)arg1 options:(unsigned int)arg2; +- (id)description; +- (id)descriptionWithDepth:(unsigned long long)arg1; +@property(copy, nonatomic) NSArray *criteria; // @synthesize criteria=_criteria; +- (id)_simplifyOnce; +- (id)simplifiedCriterion; +- (id)stringForRuleQualifier:(long long)arg1; +- (long long)ruleQualifierForString:(id)arg1; +- (id)utiForMessageAttachmentType:(BOOL)arg1; +- (id)_searchTermForExpression:(id)arg1 withQualifer:(long long)arg2 exactMatch:(BOOL)arg3; +- (id)_comparisonOperatorForQualifier:(long long)arg1; +- (id)_spotlightQueryStringForCompoundCriterionWithInFlightURLs:(id)arg1; +- (id)_spotlightStringForHeaderQueryString:(id)arg1 withSpotlightAttribute:(id)arg2; +- (id)escapedString:(id)arg1; +- (id)_spotlightQueryStringForAnyRecipientCriterion; +- (id)_spotlightQueryStringForHeaderCriterion; +- (id)_spotlightQueryStringForContainsAttachmentsCriterion; +- (id)_spotlightQueryStringForAttachmentTypeCriterion; +- (id)_spotlightQueryStringForBodyCriterion; +- (id)_spotlightDateQueryStringForAttribute:(id)arg1; +- (id)_spotlightQueryStringForPriorityCriterion; +- (id)_spotlightQueryStringForFlagCriterion; +- (id)_spotlightQueryStringForFlaggedStatusCriterion; +- (id)_spotlightQueryStringForGroupOrVIPSendersCriterion; +- (id)_spotlightQueryStringForAnyAttachmentCriterion; +- (id)_spotlightQueryStringForAccountCriterion:(id)arg1; +- (id)_spotlightQueryStringForGmailLabelCriterion; +- (id)_spotlightQueryStringForMailboxCriterion:(id)arg1; +- (id)_spotlightQueryStringForNotInAJunkOrTrashMailboxCriterion; +- (id)_spotlightQueryStringForInASpecialMailboxCriterionWithQualifier:(long long)arg1 inFlightURLs:(id)arg2; +- (id)_spotlightQueryStringForMessageID; +- (id)spotlightQueryString; +- (id)_spotlightQueryStringWithInFlightURLs:(id)arg1; +- (BOOL)_isCompoundCriterionSpotlightCriterion; +- (BOOL)isSpotlightCriterion; +- (BOOL)_isSpotlightOnlyCriterion; +- (BOOL)containsVIPSendersCriterion; +- (BOOL)_containsVIPSendersCriterionWithInFlightURLs:(id)arg1; +- (BOOL)containsMailboxCriterion; +- (BOOL)containsWhereFromsCriterion; +- (BOOL)containsSpotlightOnlyCriterion; +- (BOOL)containsSpotlightCriterion; +- (id)_qualifierString; +@property(copy) NSString *criterionIdentifier; // @synthesize criterionIdentifier=_criterionIdentifier; +- (void)_setCriterionIdentifier:(id)arg1; +@property long long criterionType; // @synthesize criterionType=_criterionType; +- (BOOL)hasExpression; +- (id)dictionaryRepresentation; +- (id)initWithDictionary:(id)arg1; +- (id)initWithCriterion:(id)arg1 expression:(id)arg2; +- (id)init; +- (id)initWithDictionary:(id)arg1 andRemoveRecognizedKeysIfMutable:(BOOL)arg2; +- (id)compoundCriterionBySplittingExpression; +- (id)convertToGmailLabelCriterionIfNeeded; +- (unsigned long long)bestBaseTable; +- (id)SQLExpressionWithTables:(unsigned long long *)arg1 baseTable:(unsigned long long)arg2; +- (id)criterionForSpotlight; +- (id)criterionForSQLIgnoringGmail; +- (id)criterionForSQL; +- (id)criterionValueForNotEqualRelativeDates:(long long *)arg1; +- (id)criterionExpressionForEqualRelativeDates:(CDStruct_c53ccb4e *)arg1 depth:(unsigned long long)arg2 enclosingSmartMailboxes:(id)arg3; +- (BOOL)isExpressibleInTigerSchema; +- (id)SQLExpressionWithContext:(CDStruct_c53ccb4e *)arg1 depth:(unsigned long long)arg2 enclosingSmartMailboxes:(id)arg3; +- (BOOL)hasNumberCriterion; +- (id)criterionByMergingSpotlightCriteria; +- (id)fixOnceWithExpandedSmartMailboxes:(id)arg1 forSpotlight:(BOOL)arg2; +- (id)criterionForSearchWithExpandedSmartMailboxes:(id)arg1 forSpotlight:(BOOL)arg2 convertingGmailCriteria:(BOOL)arg3; +- (id)targetSmartMailbox; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFCrossProcessLock.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFCrossProcessLock.h new file mode 100644 index 00000000..abdd2496 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFCrossProcessLock.h @@ -0,0 +1,33 @@ +/* + * 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 "NSLocking.h" + +@class NSLock, NSMachPort, NSString; + +@interface MFCrossProcessLock : NSObject +{ + NSMachPort *_port; + NSLock *_lock; + long long _lockCount; + NSString *_identifier; +} + ++ (id)defaultMailCrossProcessLock; +@property(readonly, copy, nonatomic) NSString *identifier; // @synthesize identifier=_identifier; +- (void).cxx_destruct; +- (id)description; +- (BOOL)lockBeforeDate:(id)arg1; +- (BOOL)tryLock; +- (void)unlock; +- (void)lock; +- (void)dealloc; +- (id)initWithIdentifier:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFDatabaseRecoverer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFDatabaseRecoverer.h new file mode 100644 index 00000000..feccaddc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFDatabaseRecoverer.h @@ -0,0 +1,39 @@ +/* + * 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" + +@class NSCondition, NSString; + +@interface MFDatabaseRecoverer : NSObject +{ + NSCondition *_analysisCondition; + NSString *_path; + long long _type; + long long _analysisResult; +} + ++ (BOOL)moveDatabaseFromPath:(id)arg1 toPath:(id)arg2; ++ (id)moveDatabaseToUniquePath:(id)arg1; +@property long long analysisResult; // @synthesize analysisResult=_analysisResult; +@property long long type; // @synthesize type=_type; +@property(copy) NSString *path; // @synthesize path=_path; +- (void).cxx_destruct; +- (void)_moveToOriginalPath:(id)arg1; +- (id)_moveToUniquePath; +- (void)_removeLocks; +- (void)recover; +- (void)removeLockFile; +- (BOOL)lockFileFound; +- (BOOL)aRemoteApplicationIsAccessingTheDatabase; +- (BOOL)fileLocked; +- (void)analyzeBusyCondition; +- (void)_analyzeBusyCondition; +- (id)init; +- (id)initWithPath:(id)arg1 type:(long long)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFDefaults.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFDefaults.h new file mode 100644 index 00000000..0d302ebe --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFDefaults.h @@ -0,0 +1,40 @@ +/* + * 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" + +@interface MFDefaults : NSObject +{ +} + ++ (id)defaultNameForFlagColor:(BOOL)arg1; ++ (unsigned long long)deferredPreferredWindowBackingLocation; ++ (unsigned long long)preferredWindowBackingLocation; ++ (void)setPreferredWindowBackingLocation:(unsigned long long)arg1; ++ (void)setupLoggingDefaults; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (BOOL)synchronize; +- (long long)integerForKey:(id)arg1; +- (BOOL)boolForKey:(id)arg1; +- (void)setBool:(BOOL)arg1 forKey:(id)arg2; +- (id)objectForKey:(id)arg1; +- (void)setObject:(id)arg1 forKey:(id)arg2; +- (void)removeObjectForKey:(id)arg1; +- (id)stringForKey:(id)arg1; +- (id)dictionaryForKey:(id)arg1; +- (id)todosMailbox; +- (id)trashMailboxName; +- (id)notesMailbox; +- (id)draftsMailbox; +- (id)archiveMailbox; +- (void)setComposeMode:(long long)arg1; +- (long long)composeMode; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFDeliveryAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFDeliveryAccount.h new file mode 100644 index 00000000..350015ba --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFDeliveryAccount.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFDeliveryAccount : MFAccount +{ +} + ++ (id)accountWithHostname:(id)arg1 username:(id)arg2 lookForExistingAccounts:(BOOL)arg3 addToDeliveryAccountsIfNeeded:(BOOL)arg4; ++ (id)accountWithHostname:(id)arg1 username:(id)arg2; ++ (id)existingAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)accountForHeaders:(id)arg1; ++ (id)accountWithWhichToSendMessage:(id)arg1; ++ (id)accountWithDomain:(id)arg1; ++ (id)_accountFromCollection:(id)arg1 withDeliveryIdentifier:(id)arg2; ++ (id)accountWithDeliveryIdentifier:(id)arg1; ++ (id)_deliveryIdentifierWithHostname:(id)arg1 username:(id)arg2; ++ (void)saveAccountInfoToDefaults; ++ (void)_postDeliveryAccountsHaveChanged; ++ (void)unregisterDynamicAccount:(id)arg1; ++ (void)registerDynamicAccount:(id)arg1; ++ (void)removeDeliveryAccount:(id)arg1; ++ (void)insertObjectInDeliveryAccounts:(id)arg1 atIndex:(unsigned long long)arg2; ++ (void)addDeliveryAccount:(id)arg1; ++ (void)setDeliveryAccounts:(id)arg1; ++ (id)deliveryAccounts; ++ (id)_deliveryAccountsIncludingUnknownTypes; ++ (void)reloadDeliveryAccounts; ++ (void)initialize; +- (id)remoteMailAccountsEmployedBy; +- (void)setMaximumMessageBytes:(unsigned long long)arg1; +- (unsigned long long)maximumMessageBytes; +- (void)setShouldUseAuthentication:(BOOL)arg1; +- (BOOL)shouldUseAuthentication; +- (id)deliveryIdentifier; +- (id)displayName; +- (void)setAssociatedAccount:(id)arg1; +- (id)associatedAccount; +- (BOOL)isDynamic; +- (Class)delivererClass; +- (BOOL)autodiscoverSettings:(id *)arg1; +- (void)_setAccountInfo:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSAccount.h new file mode 100644 index 00000000..2faf934e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSAccount.h @@ -0,0 +1,187 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFEWSConnection, MFEWSDeliveryAccount, MFEWSGateway, NSDictionary, NSMutableDictionary, NSOperationQueue, NSString, NSTimer, NSURL, NSUUID; + +@interface MFEWSAccount : MFRemoteStoreAccount +{ + MFEWSConnection *_connection; + NSMutableDictionary *_folderIdsToMailboxes; + id _connectionLock; + id _folderHierarchySyncLock; + BOOL _useExternalURL; + MFEWSGateway *_gateway; + NSDictionary *_distinguishedFolderIdsAndMailboxTypes; + double _lastFullFetchDuration; + double _lastFullFetchTime; + NSUUID *_messageTracerUUID; + NSString *_syncIssuesEntryID; + long long _externalAudienceType; + NSTimer *_autodiscoveryTimer; + NSOperationQueue *_autodiscoverQueue; + MFEWSDeliveryAccount *_ewsDeliveryAccount; + NSOperationQueue *_remoteTaskQueue; + NSOperationQueue *_remoteFetchQueue; + NSOperationQueue *_requestResponseQueue; + NSOperationQueue *_bodyFetchQueue; +} + ++ (void)resetAllFolderHierarchySyncStates; ++ (id)existingAccountFromMailWithRootFolderId:(id)arg1; ++ (id)_contactsAccountWithRootFolderId:(id)arg1; ++ (BOOL)contactsAccountExistsWithRootFolderId:(id)arg1; ++ (BOOL)contactsAccountExistsForHostname:(id)arg1 username:(id)arg2; ++ (id)_contactsAccountForHostname:(id)arg1 username:(id)arg2; ++ (id)_calendarAccountWithRootFolderId:(id)arg1; ++ (BOOL)calendarAccountExistsWithRootFolderId:(id)arg1; ++ (BOOL)calendarAccountExistsForHostname:(id)arg1 username:(id)arg2; ++ (id)_calendarAccountForHostname:(id)arg1 username:(id)arg2; ++ (id)keyPathsForValuesAffectingExternalConnectionURL; ++ (id)keyPathsForValuesAffectingInternalConnectionURL; ++ (id)keyPathsForValuesAffecting_URLExternalConnectionScheme; ++ (id)keyPathsForValuesAffecting_URLInternalConnectionScheme; ++ (id)defaultPathNameForAccount; ++ (id)accountTypeString; +@property(readonly, nonatomic) NSOperationQueue *bodyFetchQueue; // @synthesize bodyFetchQueue=_bodyFetchQueue; +@property(readonly, nonatomic) NSOperationQueue *requestResponseQueue; // @synthesize requestResponseQueue=_requestResponseQueue; +@property(readonly, nonatomic) NSOperationQueue *remoteFetchQueue; // @synthesize remoteFetchQueue=_remoteFetchQueue; +@property(readonly, nonatomic) NSOperationQueue *remoteTaskQueue; // @synthesize remoteTaskQueue=_remoteTaskQueue; +@property(readonly, nonatomic) MFEWSDeliveryAccount *ewsDeliveryAccount; // @synthesize ewsDeliveryAccount=_ewsDeliveryAccount; +@property(readonly, nonatomic) NSOperationQueue *autodiscoverQueue; // @synthesize autodiscoverQueue=_autodiscoverQueue; +@property(readonly, nonatomic) NSTimer *autodiscoveryTimer; // @synthesize autodiscoveryTimer=_autodiscoveryTimer; +@property long long externalAudienceType; // @synthesize externalAudienceType=_externalAudienceType; +@property(retain) NSString *syncIssuesEntryID; // @synthesize syncIssuesEntryID=_syncIssuesEntryID; +@property BOOL useExternalURL; // @synthesize useExternalURL=_useExternalURL; +@property(retain) NSUUID *messageTracerUUID; // @synthesize messageTracerUUID=_messageTracerUUID; +@property double lastFullFetchTime; // @synthesize lastFullFetchTime=_lastFullFetchTime; +@property double lastFullFetchDuration; // @synthesize lastFullFetchDuration=_lastFullFetchDuration; +@property(retain) NSDictionary *distinguishedFolderIdsAndMailboxTypes; // @synthesize distinguishedFolderIdsAndMailboxTypes=_distinguishedFolderIdsAndMailboxTypes; +@property(retain) MFEWSConnection *connection; // @synthesize connection=_connection; +@property(retain, nonatomic) MFEWSGateway *gateway; // @synthesize gateway=_gateway; +- (void).cxx_destruct; +- (void)messageTraceEWSParameters; +- (BOOL)_setEWSError:(id)arg1; +- (id)_loadFolderIdForMailbox:(id)arg1; +- (void)_clearFolderId:(id)arg1 forMailbox:(id)arg2; +- (void)_saveFolderId:(id)arg1 forMailbox:(id)arg2; +- (void)_setMailbox:(id)arg1 forFolderId:(id)arg2; +- (id)_mailboxForFolderId:(id)arg1; +- (void)_setupMailbox:(id)arg1 forFolderId:(id)arg2; +- (void)updateEWSOfflineIdsToRealIds:(id)arg1 forFolders:(BOOL)arg2; +- (id)deletedEWSIdStringsFromStrings:(id)arg1 inFolderWithIdString:(id)arg2; +- (void)undeleteMessagesWithEWSItemIdStrings:(id)arg1 fromFolderWithIdString:(id)arg2; +- (void)deleteEWSItemsWithIdStrings:(id)arg1 fromFolderWithIdString:(id)arg2; +- (void)deleteMailboxForEWSFolderIdString:(id)arg1; +- (void)updateMailboxForEWSFolder:(id)arg1; +- (BOOL)_isSyncIssuesFolder:(id)arg1; +- (void)createMailboxFromEWSFolder:(id)arg1; +- (id)mailboxNameForFolderIdString:(id)arg1; +- (void)messageDeliveryDidFinish:(id)arg1; +- (BOOL)_autodiscoverWithEmailAddress:(id)arg1 error:(id *)arg2; +- (id)_autodiscoverForConnectionFailure:(BOOL)arg1; +- (void)_kickOffReautodiscovery:(id)arg1; +- (BOOL)_shouldHideMailbox:(id)arg1 withType:(int)arg2; +- (void)setUserOofSettingsState:(long long)arg1 internalReply:(id)arg2 externalReply:(id)arg3 startTime:(id)arg4 endTime:(id)arg5; +- (void)getUserOofSettings; +- (BOOL)_isSameAsCalGroup:(id)arg1; +@property(readonly) NSURL *connectionURL; +- (void)_setConnectionURL:(id)arg1 isExternal:(BOOL)arg2; +- (id)_connectionURL:(BOOL)arg1; +@property __weak NSURL *externalConnectionURL; +@property __weak NSURL *internalConnectionURL; +@property(retain) NSURL *lastUsedAutodiscoverURL; +@property(retain) NSString *rootFolderId; +@property(retain) NSString *folderHierarchySyncState; +- (void)_setServerPath:(id)arg1 accountInfoKey:(id)arg2; +- (id)_serverPathWithAccountInfoKey:(id)arg1; +@property(copy) NSString *externalServerPath; +@property(copy) NSString *internalServerPath; +@property BOOL externalUsesSSL; +@property long long externalPortNumber; +- (void)setExternalHostname:(id)arg1; +- (id)externalHostname; +- (BOOL)storeJunkOnServerDefault; +- (id)_specialMailboxWithType:(int)arg1 create:(BOOL)arg2 isLocal:(BOOL)arg3; +- (id)dynamicDeliveryAccount; +- (void)setDeliveryAccount:(id)arg1; +- (id)deliveryAccount; +- (id)_folderNameForMailboxDisplayName:(id)arg1; +- (id)_mailboxDisplayNameForFolderName:(id)arg1; +- (id)validNameForMailbox:(id)arg1 fromDisplayName:(id)arg2 error:(id *)arg3; +- (BOOL)supportsSlashesInMailboxName; +- (BOOL)_deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (BOOL)canMailboxBeDeleted:(id)arg1; +- (BOOL)renameMailbox:(id)arg1 newDisplayName:(id)arg2 parent:(id)arg3; +- (BOOL)canMailboxBeRenamed:(id)arg1; +- (id)_createMailboxWithParent:(id)arg1 displayName:(id)arg2 localizedDisplayName:(id)arg3 type:(int)arg4; +- (id)createMailboxWithParent:(id)arg1 displayName:(id)arg2 localizedDisplayName:(id)arg3; +- (void)setEmailAddresses:(id)arg1; +- (BOOL)_readMailboxCache; +- (void)_setSpecialMailboxRelativePath:(id)arg1 forType:(int)arg2; +- (id)_specialMailboxRelativePathForType:(int)arg1; +- (id)_defaultSpecialMailboxRelativePathForType:(int)arg1; +- (BOOL)_setChildren:(id)arg1 forMailbox:(id)arg2; +- (void)_synchronouslyLoadListingForParent:(id)arg1; +- (BOOL)_synchronizeMailboxListHighPriority:(BOOL)arg1; +- (BOOL)_supportsMailboxListInitialization; +@property(readonly) long long maximumConcurrentSyncFolderOperationCount; +- (void)_synchronizeMailboxesSynchronously; +- (BOOL)_shouldSynchronizeMailbox:(id)arg1; +- (void)synchronizeAllMailboxes; +- (void)fetchSynchronouslyIsAuto:(id)arg1; +- (void)respondToHostBecomingReachable; +- (BOOL)deleteConvertsStoreToFolder; +- (id)primaryMailbox; +- (void)setShouldMoveDeletedMessagesToTrash:(BOOL)arg1; +- (BOOL)shouldMoveDeletedMessagesToTrash; +- (id)mailboxPathExtension; +- (BOOL)defaultShouldShowNotesInInbox; +- (BOOL)supportsRichTextNotes; +- (Class)storeClassForMailbox:(id)arg1; +- (id)_URLExternalConnectionScheme; +- (id)_URLInternalConnectionScheme; +- (id)_URLPersistenceScheme; +- (BOOL)usesConnectionBasedAutodiscovery; +- (void)setIsWillingToGoOnline:(BOOL)arg1; +- (void)setIsOffline:(BOOL)arg1; +- (void)releaseAllConnections; +- (BOOL)canAuthenticateWithScheme:(id)arg1; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (BOOL)autodiscoverSettings:(id *)arg1; +- (void)setConfigureDynamically:(BOOL)arg1; +- (void)_setPassword:(id)arg1 persistence:(unsigned long long)arg2; +- (id)_passwordWithPersistence:(unsigned long long)arg1; +- (void)setSessionPassword:(id)arg1; +- (id)sessionPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)permanentPassword; +- (void)setPortNumber:(long long)arg1; +- (void)_setUsesSSL:(BOOL)arg1 releasingConnections:(BOOL)arg2; +- (void)setUsesSSL:(BOOL)arg1; +- (id)defaultsDictionary; +- (void)_setAccountInfo:(id)arg1; +- (void)setPreferredAuthScheme:(id)arg1; +- (id)preferredAuthScheme; +- (void)setSecurityLayerType:(long long)arg1; +- (long long)securityLayerType; +- (BOOL)requiresAuthentication; +- (void *)keychainProtocol; +- (long long)defaultSecurePortNumber; +- (long long)defaultPortNumber; +- (id)standardSSLPorts; +- (id)standardPorts; +- (id)iaServiceType; +- (id)syncableURLString; +- (id)_infoForMatchingURL:(id)arg1; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSConnection.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSConnection.h new file mode 100644 index 00000000..051b2b51 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSConnection.h @@ -0,0 +1,44 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCConnection.h" + +#import "EWSExchangeServiceBindingDelegate.h" + +@class EWSExchangeServiceBinding, MFEWSAccount, NSString; + +@interface MFEWSConnection : MCConnection +{ + EWSExchangeServiceBinding *_binding; +} + +@property(retain) EWSExchangeServiceBinding *binding; // @synthesize binding=_binding; +- (void).cxx_destruct; +- (void)exchangeServiceBinding:(id)arg1 didReceiveCertificateError:(id)arg2; +- (void)exchangeServiceBinding:(id)arg1 willSendRequestForAuthenticationChallenge:(id)arg2; +- (void)disconnectWithError:(id)arg1; +- (id)_sendMessage:(id)arg1 error:(id *)arg2; +- (void)_handleServerBusyError:(id)arg1; +- (id)sendMessage:(id)arg1 forRequest:(id)arg2; +- (void)disconnect; +- (void)quit; +- (BOOL)isValid; +- (void)_setupConnectionErrorForMonitorWithPort:(long long)arg1 usingSSL:(BOOL)arg2; +- (id)_fetchRootFolderId:(id *)arg1; +- (id)_connectAndAuthenticateDiscoveringBestSettings:(BOOL)arg1; +- (BOOL)connectAndAuthenticate; +- (BOOL)authenticate; +- (BOOL)connectDiscoveringBestSettings:(BOOL)arg1; +@property __weak MFEWSAccount *account; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCopyItemsRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCopyItemsRequestOperation.h new file mode 100644 index 00000000..2148d002 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCopyItemsRequestOperation.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class NSArray, NSString; + +@interface MFEWSCopyItemsRequestOperation : MFEWSRequestOperation +{ + NSString *_sourceEWSFolderIdString; + NSString *_destinationEWSFolderIdString; + NSArray *_EWSItemIds; + NSArray *_offlineCreatedEWSItemIdStrings; +} + ++ (Class)classForResponse; +@property(copy) NSArray *offlineCreatedEWSItemIdStrings; // @synthesize offlineCreatedEWSItemIdStrings=_offlineCreatedEWSItemIdStrings; +@property(readonly, copy, nonatomic) NSArray *EWSItemIds; // @synthesize EWSItemIds=_EWSItemIds; +@property(readonly, copy, nonatomic) NSString *destinationEWSFolderIdString; // @synthesize destinationEWSFolderIdString=_destinationEWSFolderIdString; +@property(readonly, copy, nonatomic) NSString *sourceEWSFolderIdString; // @synthesize sourceEWSFolderIdString=_sourceEWSFolderIdString; +- (void).cxx_destruct; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setupOfflineResponse; +- (id)prepareRequest; +- (id)activityString; +- (void)_ewsCopyItemsRequestOperationCommonInitWithEWSItemIds:(id)arg1 sourceIdString:(id)arg2 destinationIdString:(id)arg3; +- (void)dealloc; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithEWSItemIds:(id)arg1 sourceIdString:(id)arg2 destinationIdString:(id)arg3 gateway:(id)arg4 errorHandler:(id)arg5; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCopyItemsResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCopyItemsResponseOperation.h new file mode 100644 index 00000000..56dc3616 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCopyItemsResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFEWSCopyItemsResponseOperation : MFEWSResponseOperation +{ + NSArray *_newEWSItemIdStrings; + unsigned long long _expectedResponseCount; +} + +@property(nonatomic) unsigned long long expectedResponseCount; // @synthesize expectedResponseCount=_expectedResponseCount; +@property(copy) NSArray *destinationEWSItemIdStrings; // @synthesize destinationEWSItemIdStrings=_newEWSItemIdStrings; +- (void).cxx_destruct; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateEventReplyRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateEventReplyRequestOperation.h new file mode 100644 index 00000000..f09fc96d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateEventReplyRequestOperation.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFEWSGetItemsResponseOperation, NSString; + +@interface MFEWSCreateEventReplyRequestOperation : MFEWSCreateItemRequestOperation +{ + BOOL _messageResponseType; + NSString *_messageMeetingItemIdString; + MFEWSGetItemsResponseOperation *_getItemsResponse; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) MFEWSGetItemsResponseOperation *getItemsResponse; // @synthesize getItemsResponse=_getItemsResponse; +@property(readonly, nonatomic) BOOL messageResponseType; // @synthesize messageResponseType=_messageResponseType; +@property(readonly, copy, nonatomic) NSString *messageMeetingItemIdString; // @synthesize messageMeetingItemIdString=_messageMeetingItemIdString; +- (void).cxx_destruct; +- (id)prepareRequest; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithFolderIdString:(id)arg1 messageType:(BOOL)arg2 disposition:(long long)arg3 gateway:(id)arg4 errorHandler:(id)arg5; +- (void)_ewsCreateEventReplyRequestOperationCommonInitWithItemIdString:(id)arg1 responseType:(BOOL)arg2; +- (id)initWithItemIdString:(id)arg1 folderIdString:(id)arg2 messageType:(BOOL)arg3 responseType:(BOOL)arg4 disposition:(long long)arg5 gateway:(id)arg6 errorHandler:(id)arg7; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateEventReplyResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateEventReplyResponseOperation.h new file mode 100644 index 00000000..eb2419fd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateEventReplyResponseOperation.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFEWSCreateEventReplyResponseOperation : MFEWSCreateItemResponseOperation +{ +} + +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateFolderRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateFolderRequestOperation.h new file mode 100644 index 00000000..1a698aa7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateFolderRequestOperation.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class NSString; + +@interface MFEWSCreateFolderRequestOperation : MFEWSRequestOperation +{ + int _mailboxType; + NSString *_parentEWSFolderIdString; + NSString *_offlineCreatedEWSFolderIdString; + NSString *_folderName; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) int mailboxType; // @synthesize mailboxType=_mailboxType; +@property(readonly, copy, nonatomic) NSString *folderName; // @synthesize folderName=_folderName; +@property(copy) NSString *offlineCreatedEWSFolderIdString; // @synthesize offlineCreatedEWSFolderIdString=_offlineCreatedEWSFolderIdString; +@property(readonly, copy, nonatomic) NSString *parentEWSFolderIdString; // @synthesize parentEWSFolderIdString=_parentEWSFolderIdString; +- (void).cxx_destruct; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setupOfflineResponse; +- (id)prepareRequest; +- (BOOL)isFolderRequest; +- (id)activityString; +- (id)copyWithUpdatedNameCount:(unsigned long long)arg1; +- (void)dealloc; +- (void)_ewsCreateFolderRequestOperationCommonInitWithParentFolderIdString:(id)arg1 name:(id)arg2 mailboxType:(int)arg3; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithParentEWSFolderIdString:(id)arg1 name:(id)arg2 mailboxType:(int)arg3 gateway:(id)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateFolderResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateFolderResponseOperation.h new file mode 100644 index 00000000..4bd53651 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateFolderResponseOperation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface MFEWSCreateFolderResponseOperation : MFEWSResponseOperation +{ + NSString *_createdFolderId; +} + +@property(copy) NSString *createdFolderId; // @synthesize createdFolderId=_createdFolderId; +- (void).cxx_destruct; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateItemRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateItemRequestOperation.h new file mode 100644 index 00000000..b84c5abf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateItemRequestOperation.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class NSString; + +@interface MFEWSCreateItemRequestOperation : MFEWSRequestOperation +{ + BOOL _messageType; + BOOL _wroteOfflineData; + NSString *_EWSFolderIdString; + long long _disposition; + NSString *_offlineCreatedEWSItemIdString; +} + ++ (Class)classForResponse; +@property BOOL wroteOfflineData; // @synthesize wroteOfflineData=_wroteOfflineData; +@property(retain) NSString *offlineCreatedEWSItemIdString; // @synthesize offlineCreatedEWSItemIdString=_offlineCreatedEWSItemIdString; +@property(readonly, nonatomic) long long disposition; // @synthesize disposition=_disposition; +@property(readonly, nonatomic) BOOL messageType; // @synthesize messageType=_messageType; +@property(readonly, copy, nonatomic) NSString *EWSFolderIdString; // @synthesize EWSFolderIdString=_EWSFolderIdString; +- (void).cxx_destruct; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setupOfflineResponse; +- (id)activityString; +- (void)dealloc; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)_ewsCreateItemRequestOperationCommonInitWithFolderIdString:(id)arg1 messageType:(BOOL)arg2 disposition:(long long)arg3; +- (id)initWithFolderIdString:(id)arg1 messageType:(BOOL)arg2 disposition:(long long)arg3 gateway:(id)arg4 errorHandler:(id)arg5; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateItemResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateItemResponseOperation.h new file mode 100644 index 00000000..14b300b3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateItemResponseOperation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface MFEWSCreateItemResponseOperation : MFEWSResponseOperation +{ + NSString *_itemId; +} + +@property(copy) NSString *itemId; // @synthesize itemId=_itemId; +- (void).cxx_destruct; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateMessageRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateMessageRequestOperation.h new file mode 100644 index 00000000..d152c0b6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSCreateMessageRequestOperation.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class MCMessage, MFEWSGetItemsResponseOperation, NSData, NSDictionary, NSString; + +@interface MFEWSCreateMessageRequestOperation : MFEWSCreateItemRequestOperation +{ + unsigned int _flags; + MCMessage *_message; + NSData *_data; + NSString *_sender; + NSString *_existingItemIdString; + NSDictionary *_recipientsByHeaderKey; + MFEWSGetItemsResponseOperation *_getItemsResponse; +} + +@property(readonly, nonatomic) MFEWSGetItemsResponseOperation *getItemsResponse; // @synthesize getItemsResponse=_getItemsResponse; +@property(readonly, copy, nonatomic) NSDictionary *recipientsByHeaderKey; // @synthesize recipientsByHeaderKey=_recipientsByHeaderKey; +@property(copy, nonatomic) NSString *existingItemIdString; // @synthesize existingItemIdString=_existingItemIdString; +@property(readonly, copy, nonatomic) NSString *sender; // @synthesize sender=_sender; +@property(readonly, nonatomic) unsigned int flags; // @synthesize flags=_flags; +@property(readonly, nonatomic) NSData *data; // @synthesize data=_data; +@property(readonly, nonatomic) MCMessage *message; // @synthesize message=_message; +- (void).cxx_destruct; +- (id)prepareRequest; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithFolderIdString:(id)arg1 messageType:(BOOL)arg2 disposition:(long long)arg3 gateway:(id)arg4 errorHandler:(id)arg5; +- (void)_ewsCreateMessageRequestOperationCommonInitWithMessage:(id)arg1 data:(id)arg2 flags:(unsigned int)arg3 existingItemIdString:(id)arg4 sender:(id)arg5 recipientsByHeaderKey:(id)arg6; +- (id)initWithMessage:(id)arg1 data:(id)arg2 folderIdString:(id)arg3 messageType:(BOOL)arg4 flags:(unsigned int)arg5 existingItemIdString:(id)arg6 sender:(id)arg7 recipientsByHeaderKey:(id)arg8 disposition:(long long)arg9 gateway:(id)arg10 errorHandler:(id)arg11; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSDeleteFolderRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSDeleteFolderRequestOperation.h new file mode 100644 index 00000000..a8cafb5d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSDeleteFolderRequestOperation.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class NSString; + +@interface MFEWSDeleteFolderRequestOperation : MFEWSRequestOperation +{ + NSString *_folderIdString; +} + ++ (Class)classForResponse; +@property(readonly, copy, nonatomic) NSString *folderIdString; // @synthesize folderIdString=_folderIdString; +- (void).cxx_destruct; +- (void)setupOfflineResponse; +- (id)prepareRequest; +- (BOOL)isFolderRequest; +- (id)activityString; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (void)_ewsDeleteFolderRequestOperationCommonInitWithEWSFolderIdString:(id)arg1; +- (id)initWithEWSFolderIdString:(id)arg1 gateway:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSDeleteItemsRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSDeleteItemsRequestOperation.h new file mode 100644 index 00000000..9e0f299b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSDeleteItemsRequestOperation.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class NSArray, NSString; + +@interface MFEWSDeleteItemsRequestOperation : MFEWSRequestOperation +{ + NSArray *_EWSItemIds; + NSString *_folderIdString; +} + ++ (Class)classForResponse; +@property(readonly, copy, nonatomic) NSString *folderIdString; // @synthesize folderIdString=_folderIdString; +@property(readonly, copy, nonatomic) NSArray *EWSItemIds; // @synthesize EWSItemIds=_EWSItemIds; +- (void).cxx_destruct; +- (void)setupOfflineResponse; +- (id)prepareRequest; +- (id)activityString; +- (void)_ewsDeleteItemsRequestOperationCommonInitWithEWSItemIds:(id)arg1 folderIdString:(id)arg2; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithEWSItemIds:(id)arg1 folderIdString:(id)arg2 gateway:(id)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSDeliverer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSDeliverer.h new file mode 100644 index 00000000..d14ffd3c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSDeliverer.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "MFEWSErrorHandler.h" + +@class MCError, NSString; + +@interface MFEWSDeliverer : MFMessageDeliverer +{ + MCError *_error; +} + +@property(retain) MCError *error; // @synthesize error=_error; +- (void).cxx_destruct; +- (void)handleEWSError:(id)arg1; +- (long long)deliverSynchronously; +- (id)headersForDelivery; +- (Class)deliveryClass; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSDeliveryAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSDeliveryAccount.h new file mode 100644 index 00000000..83872be9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSDeliveryAccount.h @@ -0,0 +1,101 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFEWSAccount; + +@interface MFEWSDeliveryAccount : MFDeliveryAccount +{ + MFEWSAccount *_ewsAccount; + BOOL _stripsFromHeaderWhenSending; +} + ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; +@property BOOL stripsFromHeaderWhenSending; // @synthesize stripsFromHeaderWhenSending=_stripsFromHeaderWhenSending; +- (void).cxx_destruct; +- (id)remoteMailAccountsEmployedBy; +- (void)setShouldUseAuthentication:(BOOL)arg1; +- (BOOL)shouldUseAuthentication; +- (void)setAssociatedAccount:(id)arg1; +- (id)associatedAccount; +- (BOOL)isDynamic; +- (Class)delivererClass; +- (id)deliveryIdentifier; +- (void)setValidationRequired:(BOOL)arg1; +- (BOOL)validationRequired; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (void)validateConnections; +- (id)accountTypeString; +- (id)subscriptionURLLabel; +- (id)subscriptionURL; +- (id)supportURLLabel; +- (id)supportURL; +- (BOOL)isValid; +- (BOOL)canGoOffline; +- (void)setIsWillingToGoOnline:(BOOL)arg1; +- (BOOL)isWillingToGoOnline; +- (void)setIsOffline:(BOOL)arg1; +- (BOOL)isOffline; +- (long long)defaultSecurePortNumber; +- (long long)defaultPortNumber; +- (id)standardSSLPorts; +- (id)standardPorts; +- (BOOL)requiresAuthentication; +- (id)saslProfileName; +- (void)setAccountInfo:(id)arg1; +- (id)accountInfo; +- (id)identifier; +- (void)setISPAccountID:(id)arg1; +- (id)ISPAccountID; +- (void)setPreferredAuthScheme:(id)arg1; +- (id)preferredAuthScheme; +- (void)_setSecurityLayerType:(long long)arg1 releasingConnections:(BOOL)arg2; +- (long long)securityLayerType; +- (void)setHostname:(id)arg1; +- (id)hostname; +- (void)_setUsesSSL:(BOOL)arg1 releasingConnections:(BOOL)arg2; +- (BOOL)usesSSL; +- (void)_setPortNumber:(long long)arg1 releasingConnections:(BOOL)arg2; +- (void)setPortNumber:(long long)arg1; +- (long long)portNumber; +- (id)appleAuthenticationToken; +- (id)applePersonID; +- (void)setSessionPassword:(id)arg1; +- (id)sessionPassword; +- (void)setPermanentPassword:(id)arg1; +- (id)permanentPassword; +- (void)setPassword:(id)arg1; +- (id)password; +- (void)setUsername:(id)arg1; +- (id)username; +- (BOOL)autodiscoverSettings:(id *)arg1; +- (BOOL)usesConnectionBasedAutodiscovery; +- (void)setCanonicalEmailAddress:(id)arg1; +- (id)canonicalEmailAddress; +- (void)setInfo:(id)arg1; +- (id)info; +- (void)_setAccountInfo:(id)arg1; +- (void)removeAccountInfoObjectForKey:(id)arg1; +- (void)setAccountInfoObject:(id)arg1 forKey:(id)arg2; +- (void)releaseAllConnections; +- (id)defaultsDictionary; +- (void)setIsInactivatedInsteadOfBeingDeleted:(BOOL)arg1; +- (BOOL)isInactivatedInsteadOfBeingDeleted; +- (id)offlineDisplayName; +- (void)setDisplayName; +- (id)displayName; +- (void)setStoredDisplayName; +- (id)storedDisplayName; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSErrorHandler-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSErrorHandler-Protocol.h new file mode 100644 index 00000000..4e098246 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSErrorHandler-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol MFEWSErrorHandler +- (void)handleEWSError:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSFindItemsRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSFindItemsRequestOperation.h new file mode 100644 index 00000000..88e0186a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSFindItemsRequestOperation.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class EWSSearchExpressionType, NSArray; + +@interface MFEWSFindItemsRequestOperation : MFEWSRequestOperation +{ + NSArray *_additionalProperties; + NSArray *_EWSFolderIdStrings; + EWSSearchExpressionType *_searchExpression; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) EWSSearchExpressionType *searchExpression; // @synthesize searchExpression=_searchExpression; +@property(readonly, copy, nonatomic) NSArray *EWSFolderIdStrings; // @synthesize EWSFolderIdStrings=_EWSFolderIdStrings; +@property(readonly, copy, nonatomic) NSArray *additionalProperties; // @synthesize additionalProperties=_additionalProperties; +- (void).cxx_destruct; +- (id)prepareRequest; +- (id)activityString; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithSearchExpression:(id)arg1 EWSFolderIdStrings:(id)arg2 additionalProperties:(id)arg3 gateway:(id)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSFindItemsResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSFindItemsResponseOperation.h new file mode 100644 index 00000000..f830e15e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSFindItemsResponseOperation.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray, NSDictionary; + +@interface MFEWSFindItemsResponseOperation : MFEWSResponseOperation +{ + NSArray *_EWSFolderIds; + NSDictionary *_rootFoldersByEWSFolderId; +} + +@property(copy, nonatomic) NSDictionary *rootFoldersByEWSFolderId; // @synthesize rootFoldersByEWSFolderId=_rootFoldersByEWSFolderId; +@property(copy, nonatomic) NSArray *EWSFolderIds; // @synthesize EWSFolderIds=_EWSFolderIds; +- (void).cxx_destruct; +- (id)rootFolderForEWSFolderId:(id)arg1; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGateway.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGateway.h new file mode 100644 index 00000000..efe2f414 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGateway.h @@ -0,0 +1,80 @@ +/* + * 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 "NSCoding.h" + +@class MFEWSAccount, MFEWSConnection, NSDictionary, NSMutableArray, NSOperationQueue; + +@interface MFEWSGateway : NSObject +{ + NSMutableArray *_offlineRequests; + MFEWSAccount *_account; + NSOperationQueue *_syncOperationQueue; + NSDictionary *_savedOfflineToRealEWSIdStrings; +} + ++ (id)newTemporaryItemId; ++ (id)keyPathsForValuesAffectingRequestResponseQueue; +@property(copy, nonatomic) NSDictionary *savedOfflineToRealEWSIdStrings; // @synthesize savedOfflineToRealEWSIdStrings=_savedOfflineToRealEWSIdStrings; +@property(readonly, nonatomic) NSOperationQueue *syncOperationQueue; // @synthesize syncOperationQueue=_syncOperationQueue; +@property(readonly, nonatomic) __weak MFEWSAccount *account; // @synthesize account=_account; +- (void).cxx_destruct; +- (id)fetchCopyOfSyncIssuesEntryID; +@property(readonly, nonatomic) unsigned long long maxRequestsToSend; +- (void)_chunkItemsToSend:(id)arg1 applyToBlock:(id)arg2; +- (void)setOofState:(long long)arg1 internalReply:(id)arg2 externalReply:(id)arg3 startTime:(id)arg4 endTime:(id)arg5 externalAudienceType:(long long)arg6; +- (void)getOofSettings; +- (CDStruct_1dee9796)fetchUsageInfoForEWSFolderIdString:(id)arg1; +- (void)addOfflineToRealEWSIdStrings:(id)arg1 forRequest:(id)arg2; +- (id)resolvedIdStringForIdString:(id)arg1; +- (BOOL)deleteMailboxWithEWSFolderIdString:(id)arg1 error:(id *)arg2; +- (BOOL)moveMailboxWithEWSFolderIdString:(id)arg1 to:(id)arg2 error:(id *)arg3; +- (BOOL)renameMailboxWithEWSFolderIdString:(id)arg1 to:(id)arg2 error:(id *)arg3; +- (id)createMailboxWithParentEWSFolderIdString:(id)arg1 name:(id)arg2 mailboxType:(int)arg3 error:(id *)arg4; +- (void)_fetchMeetingCancellationMessages:(id)arg1 errorHandler:(id)arg2; +- (void)_fetchMeetingRequestMessages:(id)arg1 errorHandler:(id)arg2; +- (void)undeleteMessageForFailedCreateEventResponse:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2 inStore:(id)arg3 errorHandler:(id)arg4; +- (id)copyMessagesWithEWSItemIds:(id)arg1 fromFolderWithIdString:(id)arg2 toFolderWithIdString:(id)arg3 synchronously:(BOOL)arg4 errorHandler:(id)arg5; +- (void)setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2 inFolderWithEWSIdString:(id)arg3 errorHandler:(id)arg4; +- (void)deleteMessagesWithEWSItemIds:(id)arg1 fromFolderWithEWSIdString:(id)arg2 synchronously:(BOOL)arg3; +- (id)appendMessage:(id)arg1 withData:(id)arg2 toEWSFolderWithIdString:(id)arg3 messageType:(BOOL)arg4 flags:(unsigned int)arg5 sender:(id)arg6 recipientsByHeaderKey:(id)arg7 send:(BOOL)arg8 errorHandler:(id)arg9; +- (void)_cacheDataForLibraryMessages:(id)arg1 store:(id)arg2 folderIdString:(id)arg3 errorHandler:(id)arg4; +- (void)cacheDataForLibraryMessages:(id)arg1 store:(id)arg2 folderIdString:(id)arg3 errorHandler:(id)arg4; +- (id)_EWSItemTypesWithBodyDataForMessages:(id)arg1 errorHandler:(id)arg2; +- (id)fetchMimeDataForMessage:(id)arg1 errorHandler:(id)arg2; +- (void)_saveData:(id)arg1 forMessage:(id)arg2 isPartial:(BOOL)arg3 updateMetadata:(BOOL)arg4; +- (BOOL)syncFolderItemsFromFolderIdString:(id)arg1 syncState:(id)arg2 forStore:(id)arg3; +- (id)_syncFolderHierarchyWithSyncState:(id)arg1 includesLastItem:(char *)arg2; +- (id)syncFolderHierarchyWithSyncState:(id)arg1; +@property(readonly, nonatomic) MFEWSConnection *connection; +- (id)_offlineCachePathForDataWithItemIdString:(id)arg1; +- (id)_offlineCachePathForMessageWithItemIdString:(id)arg1; +- (id)_offlineCachePath; +- (void)removeMessageAndDataFromOfflineCacheForEWSItemIdString:(id)arg1; +- (void)retrieveMessageFromOfflineCache:(id *)arg1 data:(id *)arg2 forItemIdString:(id)arg3; +- (BOOL)writeMessageToOfflineCache:(id)arg1 data:(id)arg2 forItemIdString:(id)arg3; +- (void)playbackRequestsFromOfflineCacheWithConnection:(id)arg1 error:(id *)arg2; +- (void)_addDeleteRequestToOfflineCache:(id)arg1; +- (void)_addCreateRequestToOfflineCache:(id)arg1; +- (void)_saveOfflineCache; +- (void)saveRequestToOfflineCache:(id)arg1; +- (id)fetchDistinguishedFolderIdsWithConnection:(id)arg1; +- (void)takeRequestOffline:(id)arg1 error:(id)arg2; +- (void)sendMessage:(id)arg1 forRequest:(id)arg2; +- (void)addError:(id)arg1 withHandler:(id)arg2; +- (void)addResponse:(id)arg1; +- (void)addRequest:(id)arg1; +@property(readonly, nonatomic) NSOperationQueue *requestResponseQueue; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)init; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetFolderRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetFolderRequestOperation.h new file mode 100644 index 00000000..2231cc08 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetFolderRequestOperation.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFEWSGetFolderRequestOperation : MFEWSRequestOperation +{ + BOOL _fetchEntryIDs; + NSArray *_EWSFolderIds; +} + ++ (Class)classForResponse; +@property(readonly, copy, nonatomic) NSArray *EWSFolderIds; // @synthesize EWSFolderIds=_EWSFolderIds; +@property(readonly, nonatomic) BOOL fetchEntryIDs; // @synthesize fetchEntryIDs=_fetchEntryIDs; +- (void).cxx_destruct; +- (id)prepareRequest; +- (BOOL)isFolderRequest; +- (id)activityString; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithEWSFolderIds:(id)arg1 gateway:(id)arg2 errorHandler:(id)arg3 fetchEntryIDs:(BOOL)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetFolderResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetFolderResponseOperation.h new file mode 100644 index 00000000..9a073883 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetFolderResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFEWSGetFolderResponseOperation : MFEWSResponseOperation +{ + NSArray *_EWSFolders; + NSArray *_EWSFolderIdsRequested; +} + +@property(copy) NSArray *EWSFolderIdsRequested; // @synthesize EWSFolderIdsRequested=_EWSFolderIdsRequested; +@property(copy) NSArray *EWSFolders; // @synthesize EWSFolders=_EWSFolders; +- (void).cxx_destruct; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetItemDataRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetItemDataRequestOperation.h new file mode 100644 index 00000000..7cab3618 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetItemDataRequestOperation.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFEWSGetItemDataRequestOperation : MFEWSRequestOperation +{ + NSArray *_itemIdTypes; +} + ++ (Class)classForResponse; +@property(readonly, copy, nonatomic) NSArray *itemIdTypes; // @synthesize itemIdTypes=_itemIdTypes; +- (void).cxx_destruct; +- (id)prepareRequest; +- (id)activityString; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithItemIdTypes:(id)arg1 dataHandler:(id)arg2 gateway:(void)arg3 errorHandler:(id)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetItemDataResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetItemDataResponseOperation.h new file mode 100644 index 00000000..777fd169 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetItemDataResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFEWSGetItemDataResponseOperation : MFEWSResponseOperation +{ + NSArray *_itemIdTypes; + id _dataHandler; +} + +@property(copy, nonatomic) id dataHandler; // @synthesize dataHandler=_dataHandler; +@property(retain, nonatomic) NSArray *itemIdTypes; // @synthesize itemIdTypes=_itemIdTypes; +- (void).cxx_destruct; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetItemsRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetItemsRequestOperation.h new file mode 100644 index 00000000..66244235 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetItemsRequestOperation.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFEWSGetItemsResponseOperation, NSArray; + +@interface MFEWSGetItemsRequestOperation : MFEWSRequestOperation +{ + NSArray *_EWSItemIds; + NSArray *_additionalProperties; +} + ++ (Class)classForResponse; +@property(readonly, copy, nonatomic) NSArray *additionalProperties; // @synthesize additionalProperties=_additionalProperties; +@property(readonly, copy, nonatomic) NSArray *EWSItemIds; // @synthesize EWSItemIds=_EWSItemIds; +- (void).cxx_destruct; +- (id)prepareRequest; +- (id)activityString; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithEWSItemIds:(id)arg1 additionalProperties:(id)arg2 gateway:(id)arg3 errorHandler:(id)arg4; + +// Remaining properties +@property(readonly, nonatomic) MFEWSGetItemsResponseOperation *responseOperation; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetItemsResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetItemsResponseOperation.h new file mode 100644 index 00000000..da7d3721 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetItemsResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray, NSMutableArray; + +@interface MFEWSGetItemsResponseOperation : MFEWSResponseOperation +{ + NSMutableArray *_EWSItems; + NSArray *_EWSItemIdsRequested; +} + +@property(retain) NSArray *EWSItemIdsRequested; // @synthesize EWSItemIdsRequested=_EWSItemIdsRequested; +@property(retain) NSMutableArray *EWSItems; // @synthesize EWSItems=_EWSItems; +- (void).cxx_destruct; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetUserOofSettingsRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetUserOofSettingsRequestOperation.h new file mode 100644 index 00000000..e3c92c5d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetUserOofSettingsRequestOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class EWSEmailAddress; + +@interface MFEWSGetUserOofSettingsRequestOperation : MFEWSRequestOperation +{ + EWSEmailAddress *_emailAddress; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) EWSEmailAddress *emailAddress; // @synthesize emailAddress=_emailAddress; +- (void).cxx_destruct; +- (id)prepareRequest; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithEmailAddress:(id)arg1 gateway:(id)arg2 errorHandler:(id)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetUserOofSettingsResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetUserOofSettingsResponseOperation.h new file mode 100644 index 00000000..c6862776 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSGetUserOofSettingsResponseOperation.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class EWSUserOofSettingsType; + +@interface MFEWSGetUserOofSettingsResponseOperation : MFEWSResponseOperation +{ + EWSUserOofSettingsType *_oofSettings; + long long _allowExternalOof; +} + +@property long long allowExternalOof; // @synthesize allowExternalOof=_allowExternalOof; +@property(retain) EWSUserOofSettingsType *oofSettings; // @synthesize oofSettings=_oofSettings; +- (void).cxx_destruct; +- (void)executeOperation; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSLibraryUpdateOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSLibraryUpdateOperation.h new file mode 100644 index 00000000..f2977737 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSLibraryUpdateOperation.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMonitoredOperation.h" + +@class MFEWSStore, NSArray, NSDictionary, NSString; + +@interface MFEWSLibraryUpdateOperation : MCMonitoredOperation +{ + NSString *_syncState; + NSArray *_deletedItemIdStrings; + NSDictionary *_readFlagChanges; + NSArray *_getItemsOperations; + MFEWSStore *_store; +} + +@property(readonly, nonatomic) MFEWSStore *store; // @synthesize store=_store; +@property(readonly, copy, nonatomic) NSArray *getItemsOperations; // @synthesize getItemsOperations=_getItemsOperations; +@property(readonly, copy, nonatomic) NSDictionary *readFlagChanges; // @synthesize readFlagChanges=_readFlagChanges; +@property(readonly, copy, nonatomic) NSArray *deletedItemIdStrings; // @synthesize deletedItemIdStrings=_deletedItemIdStrings; +@property(readonly, copy, nonatomic) NSString *syncState; // @synthesize syncState=_syncState; +- (void).cxx_destruct; +- (BOOL)_headersNeedUpdateForLibraryMessage:(id)arg1 withEWSItemType:(id)arg2; +- (id)_propertiesForItemClass:(Class)arg1; +- (id)_queueGetItemOperationForItemIds:(id)arg1 itemClass:(Class)arg2 onGateway:(id)arg3; +- (void)executeOperation; +- (id)init; +- (id)initWithSyncState:(id)arg1 changes:(id)arg2 gateway:(id)arg3 store:(id)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSMessage.h new file mode 100644 index 00000000..4054dc74 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSMessage.h @@ -0,0 +1,72 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCRemoteMessage.h" + +@class MCMessageHeaders, NSData, NSString; + +@interface MFEWSMessage : MCRemoteMessage +{ + NSString *_itemId; + NSString *_changeKey; + NSData *_bodyData; + NSData *_headerData; + MCMessageHeaders *_headers; + long long _libraryID; +} + ++ (id)newAddressesForEWSAddresses:(id)arg1; ++ (id)newAddressForEWSAddress:(id)arg1; ++ (id)_newEWSAddressesForAddresses:(id)arg1; ++ (id)_newEWSAddressForAddress:(id)arg1; ++ (id)_newEWSHeaderFieldsForMessageHeaders:(id)arg1 encodingHint:(unsigned long long)arg2; ++ (id)validEWSIdStringsForIdStrings:(id)arg1; ++ (id)validEWSItemIdTypesForItemIdTypes:(id)arg1; ++ (id)EWSItemIdTypesForItemIdStrings:(id)arg1; ++ (id)EWSItemIdStringsForItemIdTypes:(id)arg1; ++ (id)EWSItemIdTypesForMessages:(id)arg1; ++ (id)newEWSItemFromMessage:(id)arg1 data:(id)arg2 flags:(unsigned int)arg3 sender:(id)arg4 recipientsByHeaderKey:(id)arg5 categories:(id)arg6 existingProperties:(id)arg7 useSenderInsteadOfFrom:(BOOL)arg8; ++ (id)_mimeContentForData:(id)arg1; ++ (id)dataFromMimeContent:(id)arg1; ++ (id)_newCustomEWSSetItemWithPropertyName:(id)arg1 boolValue:(BOOL)arg2; ++ (id)_newEWSSetItemWithPropertyTag:(id)arg1 intValue:(int)arg2; ++ (id)_newCustomEWSExtendedPropertyWithName:(id)arg1 boolValue:(BOOL)arg2; ++ (id)_newEWSExtendedPropertyWithTag:(id)arg1 intValue:(int)arg2; ++ (id)_extendedFieldsForFlags:(unsigned int)arg1 importance:(int *)arg2; ++ (id)_newEWSDeleteItemWithDistinguishedPropertySetId:(int)arg1 propertyType:(int)arg2 propertyId:(long long)arg3; ++ (id)_newEWSDeleteItemWithPropertyTag:(id)arg1 propertyType:(int)arg2; ++ (id)updatesForEWSItem:(id)arg1 applyingFlags:(id)arg2; ++ (id)propertiesToGetBeforeUpdatingMessageFlags:(id)arg1 forMessageType:(BOOL)arg2 includesReadReceipts:(char *)arg3; ++ (id)extendedFieldsForEWSCalendarType; ++ (id)extendedFieldsForEWSMeetingRequestMessageType; ++ (id)extendedFieldsForEWSMeetingMessageType; ++ (id)fieldsToMaintainWhenUpdatingMessageType:(BOOL)arg1; ++ (id)EWSFolderClassForMailboxType:(int)arg1; ++ (id)EWSItemClassForMessageType:(BOOL)arg1; ++ (BOOL)messageTypeForEWSItemClass:(id)arg1; ++ (unsigned int)flagsForEWSItemType:(id)arg1; ++ (id)newMessageWithEWSItemType:(id)arg1; ++ (void)initialize; +@property(nonatomic) long long libraryID; // @synthesize libraryID=_libraryID; +@property(retain) MCMessageHeaders *headers; // @synthesize headers=_headers; +@property(retain) NSData *headerData; // @synthesize headerData=_headerData; +@property(retain) NSData *fetchedBodyData; // @synthesize fetchedBodyData=_bodyData; +@property(copy, nonatomic) NSString *changeKey; // @synthesize changeKey=_changeKey; +@property(copy, nonatomic) NSString *itemId; // @synthesize itemId=_itemId; +- (void).cxx_destruct; +- (void)setHeaderAndBodyFromFullData:(id)arg1; +- (BOOL)isMessageContentLocallyAvailable; +- (BOOL)isEditable; +- (id)remoteID; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (id)mailbox; +- (id)account; +- (id)init; +- (id)initWithItemId:(id)arg1 changeKey:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSMoveFolderRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSMoveFolderRequestOperation.h new file mode 100644 index 00000000..0eb3d4c1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSMoveFolderRequestOperation.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class MFEWSGetFolderResponseOperation, NSArray, NSString; + +@interface MFEWSMoveFolderRequestOperation : MFEWSRequestOperation +{ + NSString *_destinationEWSFolderIdString; + MFEWSGetFolderResponseOperation *_changeKeysResponse; + NSArray *_originEWSFolderIdStrings; +} + ++ (Class)classForResponse; +@property(readonly, copy, nonatomic) NSArray *originEWSFolderIdStrings; // @synthesize originEWSFolderIdStrings=_originEWSFolderIdStrings; +@property(readonly, nonatomic) MFEWSGetFolderResponseOperation *changeKeysResponse; // @synthesize changeKeysResponse=_changeKeysResponse; +@property(readonly, copy, nonatomic) NSString *destinationEWSFolderIdString; // @synthesize destinationEWSFolderIdString=_destinationEWSFolderIdString; +- (void).cxx_destruct; +- (void)setupOfflineResponse; +- (id)prepareRequest; +- (BOOL)isFolderRequest; +- (id)activityString; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (void)_ewsMoveFolderRequestCommonInitWithEWSFolderIdString:(id)arg1 originEWSFolderIdStrings:(id)arg2 gateway:(id)arg3; +- (id)initWithEWSFolderIdString:(id)arg1 originEWSFolderIdStrings:(id)arg2 gateway:(id)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSOfflineGateway.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSOfflineGateway.h new file mode 100644 index 00000000..7be4a737 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSOfflineGateway.h @@ -0,0 +1,51 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSKeyedUnarchiverDelegate.h" + +@class MFEWSConnection, MFEWSResponseOperation, NSMutableDictionary, NSOperationQueue, NSString; + +@interface MFEWSOfflineGateway : MFEWSGateway +{ + NSMutableDictionary *_offlineToRealEWSIdStrings; + id _offlineToRealEWSIdStringsLock; + MFEWSConnection *_offlineConnection; + MFEWSResponseOperation *_lastResponseDecoded; + NSOperationQueue *_requestResponseQueue; +} + ++ (id)keyPathsForValuesAffectingRequestResponseQueue; +- (id)requestResponseQueue; +@property(retain) MFEWSResponseOperation *lastResponseDecoded; // @synthesize lastResponseDecoded=_lastResponseDecoded; +@property(retain) MFEWSConnection *offlineConnection; // @synthesize offlineConnection=_offlineConnection; +- (void).cxx_destruct; +- (Class)unarchiver:(id)arg1 cannotDecodeObjectOfClassName:(id)arg2 originalClasses:(id)arg3; +- (id)unarchiver:(id)arg1 didDecodeObject:(id)arg2; +- (void)_undeleteMessagesFromFailedDeleteRequest:(id)arg1; +- (void)_undeleteMessagesFromFailedCopyRequest:(id)arg1; +- (void)_moveMessageFromFailedCreateRequest:(id)arg1 withBackupManager:(id)arg2 toMailboxNamed:(id)arg3 actualName:(id *)arg4; +- (id)_deleteRequestRemovingUndeletedItems:(id)arg1; +- (id)_EWSFolderFromCreateRequestOperation:(id)arg1; +@property(retain, nonatomic) NSMutableDictionary *offlineToRealEWSIdStrings; +- (id)playbackRequests:(id)arg1 offlineToRealEWSIdStrings:(id *)arg2 error:(id *)arg3; +- (void)takeRequestOffline:(id)arg1 error:(id)arg2; +- (void)addOfflineToRealEWSIdStrings:(id)arg1 forRequest:(id)arg2; +- (id)resolvedIdStringForIdString:(id)arg1; +- (void)addRequest:(id)arg1; +- (id)connection; +- (id)initWithAccount:(id)arg1; +- (id)initWithAccount:(id)arg1 connection:(id)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSRenameFolderRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSRenameFolderRequestOperation.h new file mode 100644 index 00000000..2819da1c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSRenameFolderRequestOperation.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFEWSGetFolderResponseOperation, NSString; + +@interface MFEWSRenameFolderRequestOperation : MFEWSRequestOperation +{ + NSString *_folderIdString; + NSString *_folderName; + MFEWSGetFolderResponseOperation *_changeKeysResponse; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) MFEWSGetFolderResponseOperation *changeKeysResponse; // @synthesize changeKeysResponse=_changeKeysResponse; +@property(readonly, copy, nonatomic) NSString *folderName; // @synthesize folderName=_folderName; +@property(readonly, copy, nonatomic) NSString *folderIdString; // @synthesize folderIdString=_folderIdString; +- (void).cxx_destruct; +- (id)prepareRequest; +- (BOOL)isFolderRequest; +- (id)activityString; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithEWSFolderIdString:(id)arg1 name:(id)arg2 gateway:(id)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSRequestOperation.h new file mode 100644 index 00000000..a89204a3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSRequestOperation.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMonitoredOperation.h" + +@class MFEWSGateway, MFEWSResponseOperation; + +@interface MFEWSRequestOperation : MCMonitoredOperation +{ + BOOL _isOffline; + MFEWSResponseOperation *_responseOperation; + MFEWSGateway *_gateway; +} + ++ (Class)classForResponse; +@property(retain, nonatomic) MFEWSGateway *gateway; // @synthesize gateway=_gateway; +@property(retain, nonatomic) MFEWSResponseOperation *responseOperation; // @synthesize responseOperation=_responseOperation; +- (void).cxx_destruct; +- (id)description; +- (void)setupOfflineResponse; +- (void)goOffline; +- (BOOL)isOffline; +- (BOOL)isFolderRequest; +- (void)executeOperation; +- (id)prepareRequest; +- (id)init; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSResponseOperation.h new file mode 100644 index 00000000..dd6670fe --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSResponseOperation.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMonitoredOperation.h" + +@class EWSBaseMessageResponseType, MCError, MFEWSGateway; + +@interface MFEWSResponseOperation : MCMonitoredOperation +{ + BOOL _isOffline; + EWSBaseMessageResponseType *_response; + MFEWSGateway *_gateway; + id _errorHandler; + MCError *_lastError; +} + +@property BOOL isOffline; // @synthesize isOffline=_isOffline; +@property(retain) MCError *lastError; // @synthesize lastError=_lastError; +@property(retain, nonatomic) id errorHandler; // @synthesize errorHandler=_errorHandler; +@property(retain, nonatomic) MFEWSGateway *gateway; // @synthesize gateway=_gateway; +@property(retain) EWSBaseMessageResponseType *response; // @synthesize response=_response; +- (void).cxx_destruct; +- (id)description; +- (BOOL)handleResponseMessage:(id)arg1 withObject:(id)arg2; +- (BOOL)handleResponseMessage:(id)arg1; +- (void)handleResponseMessages; +- (void)failWithError:(id)arg1; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; +- (id)init; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSetUserOofSettingsRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSetUserOofSettingsRequestOperation.h new file mode 100644 index 00000000..ab5cb10b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSetUserOofSettingsRequestOperation.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class EWSDuration, EWSEmailAddress, EWSReplyBodyType; + +@interface MFEWSSetUserOofSettingsRequestOperation : MFEWSRequestOperation +{ + long long _oofState; + EWSReplyBodyType *_internalReply; + EWSReplyBodyType *_externalReply; + EWSDuration *_duration; + EWSEmailAddress *_emailAddress; + long long _externalAudienceType; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) long long externalAudienceType; // @synthesize externalAudienceType=_externalAudienceType; +@property(readonly, nonatomic) EWSEmailAddress *emailAddress; // @synthesize emailAddress=_emailAddress; +@property(readonly, nonatomic) EWSDuration *duration; // @synthesize duration=_duration; +@property(readonly, nonatomic) EWSReplyBodyType *externalReply; // @synthesize externalReply=_externalReply; +@property(readonly, nonatomic) EWSReplyBodyType *internalReply; // @synthesize internalReply=_internalReply; +@property(readonly, nonatomic) long long oofState; // @synthesize oofState=_oofState; +- (void).cxx_destruct; +- (id)prepareRequest; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithEmailAddress:(id)arg1 oofState:(long long)arg2 internalReply:(id)arg3 externalReply:(id)arg4 startTime:(id)arg5 endTime:(id)arg6 externalAudienceType:(long long)arg7 gateway:(id)arg8 errorHandler:(id)arg9; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSetUserOofSettingsResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSetUserOofSettingsResponseOperation.h new file mode 100644 index 00000000..cb7b5f7f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSetUserOofSettingsResponseOperation.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFEWSSetUserOofSettingsResponseOperation : MFEWSResponseOperation +{ +} + +- (void)executeOperation; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSizeEngine.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSizeEngine.h new file mode 100644 index 00000000..b5c08a5a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSizeEngine.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFEWSSizeEngine : MFRemoteStoreSizeEngine +{ +} + +- (void)_getSizeForMailbox:(id)arg1; +- (void)_runWorkerThread; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSStore.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSStore.h new file mode 100644 index 00000000..8317e743 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSStore.h @@ -0,0 +1,63 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "MFEWSErrorHandler.h" + +@class NSLock, NSMutableSet, NSString; + +@interface MFEWSStore : MFRemoteStore +{ + NSString *_syncState; + NSLock *_syncLock; + NSMutableSet *_flagsToSetDuringSync; + NSString *_folderIdString; +} + +@property(copy) NSString *folderIdString; // @synthesize folderIdString=_folderIdString; +- (void).cxx_destruct; +- (id)incompleteMessages; +- (void)handleEWSError:(id)arg1; +- (BOOL)_loadFolderId; +- (void)_setSyncState:(id)arg1 persistToLibrary:(BOOL)arg2; +@property(copy) NSString *syncState; +- (id)_gateway; +- (id)account; +- (void)_handleStoreFinishedFirstTimeSync:(id)arg1; +- (void)_fetchChangesFromServer; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (void)undeleteMessagesWithEWSItemIdStrings:(id)arg1; +- (void)deleteMessageWithEWSItemIdString:(id)arg1; +- (void)_deleteMessagesOnServerSynchronouslyWithEWSItemIds:(id)arg1 fromFolderWithEWSIdString:(id)arg2; +- (void)updateWithSyncState:(id)arg1 newMessages:(id)arg2 updatedMessages:(id)arg3 updatedLibraryIdStrings:(id)arg4 deletedMessages:(id)arg5 flagChanges:(id)arg6; +- (long long)_appendToServerWithContext:(id)arg1 error:(id *)arg2; +- (BOOL)_copyMessagesByID:(id)arg1 toStore:(id)arg2 settingFlags:(id)arg3 newMessages:(id)arg4 error:(id *)arg5; +- (void)forceResync; +- (long long)undoAppendOfMessageIDs:(id)arg1; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)messagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3 options:(id)arg4; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (void)startSynchronization; +- (void)fetchSynchronously; +- (void)openSynchronouslyIfWaitingToOpen; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (BOOL)allowsDeleteInPlace; +- (BOOL)allowsOverwrite; +- (BOOL)canRebuild; +- (id)initWithCriterion:(id)arg1 mailbox:(id)arg2 readOnly:(BOOL)arg3; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSuppressReadReceiptsRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSuppressReadReceiptsRequestOperation.h new file mode 100644 index 00000000..cfb4fefd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSuppressReadReceiptsRequestOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFEWSGetItemsResponseOperation; + +@interface MFEWSSuppressReadReceiptsRequestOperation : MFEWSRequestOperation +{ + MFEWSGetItemsResponseOperation *_getItemsResponse; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) MFEWSGetItemsResponseOperation *getItemsResponse; // @synthesize getItemsResponse=_getItemsResponse; +- (void).cxx_destruct; +- (id)prepareRequest; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithGetItemsResponse:(id)arg1 gateway:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSyncFolderHierarchyRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSyncFolderHierarchyRequestOperation.h new file mode 100644 index 00000000..24fc4663 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSyncFolderHierarchyRequestOperation.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface MFEWSSyncFolderHierarchyRequestOperation : MFEWSRequestOperation +{ + NSString *_syncState; +} + ++ (Class)classForResponse; +@property(readonly, copy, nonatomic) NSString *syncState; // @synthesize syncState=_syncState; +- (void).cxx_destruct; +- (id)prepareRequest; +- (id)activityString; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithSyncState:(id)arg1 createBlock:(id)arg2 updateBlock:(void)arg3 deleteBlock:(id)arg4 gateway:(void)arg5; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSyncFolderHierarchyResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSyncFolderHierarchyResponseOperation.h new file mode 100644 index 00000000..75208405 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSyncFolderHierarchyResponseOperation.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFEWSSyncFolderHierarchyResponseOperation : MFEWSResponseOperation +{ + id _createBlock; + id _updateBlock; + id _deleteBlock; +} + +@property(copy, nonatomic) id deleteBlock; // @synthesize deleteBlock=_deleteBlock; +@property(copy, nonatomic) id updateBlock; // @synthesize updateBlock=_updateBlock; +@property(copy, nonatomic) id createBlock; // @synthesize createBlock=_createBlock; +- (void).cxx_destruct; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSyncFolderItemsRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSyncFolderItemsRequestOperation.h new file mode 100644 index 00000000..9d8d4cc5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSyncFolderItemsRequestOperation.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class EWSFolderIdType, EWSTargetFolderIdType, MFEWSSyncFolderItemsResponseOperation, NSString; + +@interface MFEWSSyncFolderItemsRequestOperation : MFEWSRequestOperation +{ + NSString *_syncState; + EWSTargetFolderIdType *_targetFolder; +} + ++ (long long)maxChangesReturned; ++ (Class)classForResponse; ++ (id)keyPathsForValuesAffectingTargetFolderName; ++ (id)keyPathsForValuesAffectingTargetFolderId; +@property(retain, nonatomic) EWSTargetFolderIdType *targetFolder; // @synthesize targetFolder=_targetFolder; +@property(readonly, copy, nonatomic) NSString *syncState; // @synthesize syncState=_syncState; +- (void).cxx_destruct; +@property(readonly, copy, nonatomic) NSString *targetFolderName; +@property(readonly, nonatomic) EWSFolderIdType *targetFolderId; +- (id)prepareRequest; +- (id)activityString; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (id)initWithTargetFolder:(id)arg1 syncState:(id)arg2 gateway:(id)arg3; + +// Remaining properties +@property(readonly, nonatomic) MFEWSSyncFolderItemsResponseOperation *responseOperation; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSyncFolderItemsResponseOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSyncFolderItemsResponseOperation.h new file mode 100644 index 00000000..1a588d72 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSSyncFolderItemsResponseOperation.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class EWSFolderIdType, NSArray, NSString; + +@interface MFEWSSyncFolderItemsResponseOperation : MFEWSResponseOperation +{ + BOOL _includesLastItemInRange; + EWSFolderIdType *_folderId; + NSString *_startSyncState; + NSString *_endSyncState; + NSArray *_changes; +} + +@property BOOL includesLastItemInRange; // @synthesize includesLastItemInRange=_includesLastItemInRange; +@property(copy) NSArray *changes; // @synthesize changes=_changes; +@property(copy) NSString *endSyncState; // @synthesize endSyncState=_endSyncState; +@property(copy) NSString *startSyncState; // @synthesize startSyncState=_startSyncState; +@property(retain) EWSFolderIdType *folderId; // @synthesize folderId=_folderId; +- (void).cxx_destruct; +- (void)executeOperation; +- (void)prepareToExecuteWithResponse:(id)arg1 forRequestOperation:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSUpdateItemRequestOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSUpdateItemRequestOperation.h new file mode 100644 index 00000000..9527da50 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFEWSUpdateItemRequestOperation.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "NSCoding.h" + +@class MFEWSGetItemsResponseOperation, MFEWSSuppressReadReceiptsRequestOperation, NSArray, NSDictionary; + +@interface MFEWSUpdateItemRequestOperation : MFEWSRequestOperation +{ + BOOL _messageType; + NSArray *_EWSItemIds; + NSDictionary *_flags; + MFEWSGetItemsResponseOperation *_getItemsResponse; + MFEWSSuppressReadReceiptsRequestOperation *_suppressReadReceiptsRequest; +} + ++ (Class)classForResponse; +@property(readonly, nonatomic) BOOL messageType; // @synthesize messageType=_messageType; +@property(readonly, nonatomic) MFEWSSuppressReadReceiptsRequestOperation *suppressReadReceiptsRequest; // @synthesize suppressReadReceiptsRequest=_suppressReadReceiptsRequest; +@property(readonly, nonatomic) MFEWSGetItemsResponseOperation *getItemsResponse; // @synthesize getItemsResponse=_getItemsResponse; +@property(readonly, copy, nonatomic) NSDictionary *flags; // @synthesize flags=_flags; +@property(readonly, copy, nonatomic) NSArray *EWSItemIds; // @synthesize EWSItemIds=_EWSItemIds; +- (void).cxx_destruct; +@property(readonly, copy, nonatomic) NSArray *itemsPriorToUpdate; +- (id)prepareRequest; +- (id)activityString; +- (void)setupOfflineResponse; +- (void)_ewsUpdateItemRequestOperationCommonInitWithEWSItemIds:(id)arg1 messageType:(BOOL)arg2 flags:(id)arg3 errorHandler:(id)arg4; +- (id)initWithGateway:(id)arg1 errorHandler:(id)arg2; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithEWSItemIds:(id)arg1 messageType:(BOOL)arg2 flags:(id)arg3 gateway:(id)arg4 errorHandler:(id)arg5; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFExchangeIMAPAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFExchangeIMAPAccount.h new file mode 100644 index 00000000..46ba1b30 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFExchangeIMAPAccount.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFExchangeIMAPAccount : MFIMAPAccount +{ +} + ++ (id)activeDirectoryEmailAddress; ++ (id)activeDirectoryFullName; ++ (void)setActiveDirectoryPassword:(id)arg1; ++ (id)activeDirectoryPassword; ++ (void)setActiveDirectoryUser:(id)arg1; ++ (id)activeDirectoryUser; ++ (void)setExchangeServer:(id)arg1; ++ (id)exchangeServer; ++ (void)setOutlookWebAccessServer:(id)arg1; ++ (id)outlookWebAccessServer; ++ (BOOL)usingActiveDirectory; ++ (id)defaultPathNameForAccount; ++ (id)accountTypeString; ++ (void)initialize; +- (void)handleOpenMailboxError:(id)arg1; +- (id)defaultsDictionary; +- (void)setPermanentPassword:(id)arg1; +- (id)permanentPassword; +- (void)setUsername:(id)arg1; +- (id)username; +- (void)setHostname:(id)arg1; +- (id)hostname; +- (id)additionalHeaderFields; +- (void)_filterMailboxList:(id)arg1 forMailboxWithPath:(id)arg2 iisServer:(id)arg3; +- (id)_nonMailboxChildrenOfMailboxWithPath:(id)arg1 iisServer:(id)arg2; +- (void)filterMailboxList:(id)arg1 forMailbox:(id)arg2 options:(long long)arg3; +- (id)_defaultSpecialMailboxRelativePathForType:(int)arg1; +- (BOOL)storeJunkOnServer; +- (BOOL)storeJunkOnServerDefault; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (id)_newConnectionWithPendingGateway:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFExchangeIMAPConnection.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFExchangeIMAPConnection.h new file mode 100644 index 00000000..aa022bff --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFExchangeIMAPConnection.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "IMAPConnection.h" + +@class MFExchangeIMAPAccount; + +@interface MFExchangeIMAPConnection : IMAPConnection +{ +} + +- (BOOL)_isFetchResponseValid:(id)arg1; +@property __weak MFExchangeIMAPAccount *account; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFFilesystemWatcher.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFFilesystemWatcher.h new file mode 100644 index 00000000..fd5debb8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFFilesystemWatcher.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSMapTable, NSObject, NSOperationQueue; + +@interface MFFilesystemWatcher : NSObject +{ + NSMapTable *_libraryStoreToFSCache; + NSMapTable *_fseventStreamToLibraryStore; + NSMapTable *_libraryStoreToFSEventStream; + id _fseventsTableLock; + NSObject *_scanningQueue; + NSOperationQueue *_cachedDirectoryOperationQueue; + long long _nextLibraryStoreCookie; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void).cxx_destruct; +- (id)_fseventsTableLock; +- (id)_fseventStreamToLibraryStore; +- (void)stopWatchingPathForLibraryStore:(long long)arg1; +- (id)getCachedFilesFor:(long long)arg1; +- (long long)registerPath:(id)arg1; +- (void)_updateCacheInfoForPath:(id)arg1 rootPathToTrim:(id)arg2 scanSubDirectories:(BOOL)arg3 cookie:(const void *)arg4; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFGmailLabelStore.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFGmailLabelStore.h new file mode 100644 index 00000000..dee6118f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFGmailLabelStore.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFGmailLabelStore : MFLibraryStore +{ +} + +- (id)_allMailStore; +- (id)_messagesFromAllMailWithRemoteIDs:(id)arg1; +- (long long)_removeOurLabelFromMessages:(id)arg1; +- (void)_messagesAddedToLibrary:(id)arg1; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (long long)undoAppendOfMessageIDs:(id)arg1; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; +- (id)lastMessageWithHeaders:(id)arg1 inMailbox:(id)arg2; +- (BOOL)allowsOverwrite; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFHTMLConverter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFHTMLConverter.h new file mode 100644 index 00000000..17f0e89a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFHTMLConverter.h @@ -0,0 +1,59 @@ +/* + * 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 "NSPortDelegate.h" + +@class NSData, NSPort, NSString, WebView; + +@interface MFHTMLConverter : NSObject +{ + NSPort *_replyPort; + BOOL _didHandlePortMessage; + unsigned int _sequenceNumber; + NSData *_resultData; + WebView *_webView; + long long _mainThreadSelectorType; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(nonatomic) long long mainThreadSelectorType; // @synthesize mainThreadSelectorType=_mainThreadSelectorType; +@property(nonatomic) BOOL didHandlePortMessage; // @synthesize didHandlePortMessage=_didHandlePortMessage; +@property(nonatomic) unsigned int sequenceNumber; // @synthesize sequenceNumber=_sequenceNumber; +@property(retain, nonatomic) WebView *webView; // @synthesize webView=_webView; +@property(retain, nonatomic) NSData *resultData; // @synthesize resultData=_resultData; +- (void).cxx_destruct; +- (void)webView:(id)arg1 decidePolicyForNavigationAction:(id)arg2 request:(id)arg3 frame:(id)arg4 decisionListener:(id)arg5; +- (id)webView:(id)arg1 resource:(id)arg2 willSendRequest:(id)arg3 redirectResponse:(id)arg4 fromDataSource:(id)arg5; +- (id)webView:(id)arg1 identifierForInitialRequest:(id)arg2 fromDataSource:(id)arg3; +- (void)webView:(id)arg1 didFailLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)webView:(id)arg1 didFailProvisionalLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 locationChangeDone:(id)arg2 forDataSource:(id)arg3; +- (void)webView:(id)arg1 didStartProvisionalLoadForFrame:(id)arg2; +- (id)_archivedHTMLStringWithInlinedStyleFromLoadedDocument; +- (id)_archivedDataFromLoadedDocument; +- (id)_archivedAttributedStringFromLoadedDocument; +- (void)_loadWebViewOnMainThreadFromData:(id)arg1 withTextEncodingName:(id)arg2 orFromWebArchive:(id)arg3; +- (void)_setUpWebView; +- (void)_stopLoadingWebView; +- (void)handlePortMessage:(id)arg1; +- (id)htmlStringWithInlinedStyleFromHTMLData:(id)arg1 textEncodingName:(id)arg2; +- (id)junkStringFromHTMLData:(id)arg1 textEncodingName:(id)arg2 context:(id)arg3; +- (id)attributedStringFromWebArchive:(id)arg1; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFHTMLParser.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFHTMLParser.h new file mode 100644 index 00000000..4436e039 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFHTMLParser.h @@ -0,0 +1,18 @@ +/* + * 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" + +@interface MFHTMLParser : NSObject +{ +} + ++ (id)plainTextFromHTMLSnippet:(id)arg1; ++ (id)plainTextFromHTML:(id)arg1; ++ (id)plainTextFromHTML:(id)arg1 limit:(unsigned long long)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPAccount.h new file mode 100644 index 00000000..6adc0810 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPAccount.h @@ -0,0 +1,261 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "IMAPAccount.h" + +@class IMAPConnectionPool, MCAuthScheme, MFIMAPOperationCache, MFLibraryIMAPStore, MFMailbox, NSArray, NSDictionary, NSLock, NSMutableArray, NSMutableDictionary, NSMutableSet, NSOperationQueue, NSString, NSURL; + +@interface MFIMAPAccount : MFRemoteStoreAccount +{ + double _lastUnreadCountsAndNewMessagesUpdateTime; + NSArray *_lastKnownCapabilities; + NSMutableArray *_namespacePrefixes; + NSString *_separatorChar; + IMAPConnectionPool *_connectionPool; + NSLock *_connectionPoolLock; + MFIMAPOperationCache *_offlineCache; + NSString *_serverPathPrefixWithFilesystemSeparator; + NSString *_serverPathPrefixAsFilesystemPath; + NSLock *_fsPrefixLock; + NSLock *_mailboxListingLock; + NSMutableSet *_mailboxURLsToSynchronize; + NSMutableDictionary *_IMAPMailboxes; + NSMutableDictionary *_IMAPQuotaRoots; + id _allMailLock; + MFMailbox *_allMailMailbox; + unsigned int _readBufferSize; + BOOL _isFetchingUnreadCountsAndCheckingNewMessagesForAllMailboxes; + MFMailbox *_serverDefinedArchiveMailbox; + id _serverDefinedArchiveMailboxLock; + MFMailbox *_serverDefinedDraftsMailbox; + id _serverDefinedDraftsMailboxLock; + MFMailbox *_serverDefinedJunkMailbox; + id _serverDefinedJunkMailboxLock; + MFMailbox *_serverDefinedSentMailbox; + id _serverDefinedSentMailboxLock; + MFMailbox *_serverDefinedTrashMailbox; + id _serverDefinedTrashMailboxLock; + BOOL _recoveringFromConnectionLoss; + BOOL _lastConnectionFailed; + BOOL _shouldIncludePrefixInPath; + BOOL _allowsInputForConnectionProblems; + MFLibraryIMAPStore *_idleStore; + double _lastMailboxListFetchTime; + NSOperationQueue *_remoteTaskQueue; + NSOperationQueue *_remoteFetchQueue; + NSOperationQueue *_deferredInitializationQueue; +} + ++ (id)_mailboxNameForPathComponent:(id)arg1; ++ (id)_pathComponentForMailboxName:(id)arg1; ++ (void)_deleteQueuedMailboxes:(id)arg1; ++ (id)accountTypeString; ++ (id)standardSSLPorts; ++ (id)standardPorts; +@property(nonatomic) BOOL allowsInputForConnectionProblems; // @synthesize allowsInputForConnectionProblems=_allowsInputForConnectionProblems; +@property(nonatomic) BOOL shouldIncludePrefixInPath; // @synthesize shouldIncludePrefixInPath=_shouldIncludePrefixInPath; +@property(nonatomic) BOOL lastConnectionFailed; // @synthesize lastConnectionFailed=_lastConnectionFailed; +@property(readonly, nonatomic) NSOperationQueue *deferredInitializationQueue; // @synthesize deferredInitializationQueue=_deferredInitializationQueue; +@property(readonly, nonatomic) NSOperationQueue *remoteFetchQueue; // @synthesize remoteFetchQueue=_remoteFetchQueue; +@property(readonly, nonatomic) NSOperationQueue *remoteTaskQueue; // @synthesize remoteTaskQueue=_remoteTaskQueue; +@property BOOL recoveringFromConnectionLoss; // @synthesize recoveringFromConnectionLoss=_recoveringFromConnectionLoss; +@property(retain) IMAPConnectionPool *connectionPool; // @synthesize connectionPool=_connectionPool; +@property(nonatomic) double lastMailboxListFetchTime; // @synthesize lastMailboxListFetchTime=_lastMailboxListFetchTime; +@property(retain) MFLibraryIMAPStore *idleStore; // @synthesize idleStore=_idleStore; +- (void).cxx_destruct; +- (void)messageDeliveryWillBegin:(id)arg1; +- (BOOL)storesUnseenCount; +- (id)_infoForMatchingURL:(id)arg1; +- (id)_URLPersistenceScheme; +- (id)mailboxForRelativePath:(id)arg1 isFilesystemPath:(BOOL)arg2 create:(BOOL)arg3; +- (void)_clearOfflineCache; +@property(readonly) id offlineCache; +- (id)offlineCacheIfOffline; +- (void)deleteMessagesFromMailbox:(id)arg1 olderThanNumberOfDays:(long long)arg2; +- (void)_loadEntriesFromFileSystemPath:(id)arg1 parent:(id)arg2; +- (id)_mailboxPathPrefix:(BOOL)arg1; +- (void)syncFileSystemWithServerPathPrefix; +- (void)_setFileSystemServerPathPrefix; +- (id)_fileSystemServerPathPrefix:(BOOL)arg1; +- (void)setServerPathPrefix:(id)arg1 permanently:(BOOL)arg2; +- (void)_setServerPathPrefix:(id)arg1 permanently:(BOOL)arg2 shouldSync:(BOOL)arg3; +- (id)serverPathPrefix; +- (id)storedServerPathPrefix; +- (BOOL)canMailboxBeDeleted:(id)arg1; +- (id)_mailboxForName:(id)arg1; +- (id)nameForMailbox:(id)arg1; +- (id)_fullIMAPPathForPath:(id)arg1 relativeToMailbox:(id)arg2; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (BOOL)renameMailbox:(id)arg1 newDisplayName:(id)arg2 parent:(id)arg3; +- (void)_recursivelyModifySubscriptions:(BOOL)arg1 forMailbox:(id)arg2 children:(id)arg3 withGateway:(id)arg4; +- (void)_mailboxesWereRemovedFromTree:(id)arg1 withFileSystemPaths:(id)arg2; +- (void)_waitForMailboxListingLoadToComplete; +- (void)_loadMailboxListingIntoCache:(id)arg1 parent:(id)arg2 addedMailboxes:(id)arg3 removedMailboxes:(id)arg4 updatingSourceMailbox:(BOOL)arg5; +- (void)_loadMailboxListingIntoCache:(id)arg1 parent:(id)arg2 addedMailboxes:(id)arg3 removedMailboxes:(id)arg4; +- (void)refreshMailboxListingRootedAtMailbox:(id)arg1; +- (void)_synchronouslyLoadListingForParent:(id)arg1; +- (id)_copyMailboxWithParent:(id)arg1 name:(id)arg2 pathComponent:(id)arg3 attributes:(unsigned long long)arg4 existingMailbox:(id)arg5; +- (void)_synchronizeAccountWithServerHighPriority:(id)arg1; +- (void)_fetchUnreadCountsCheckForNewMessages:(BOOL)arg1; +- (void)_fetchUnreadCountsForMailbox:(id)arg1 recursively:(BOOL)arg2 gateway:(id)arg3; +- (void)_fetchUnreadCountsForMailbox:(id)arg1 recursively:(BOOL)arg2 gateway:(id)arg3 checkForNewMessages:(BOOL)arg4; +- (id)_specialMailboxWithType:(int)arg1 create:(BOOL)arg2 isLocal:(BOOL)arg3; +- (id)_specialMailboxRelativePathForType:(int)arg1; +- (BOOL)_deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (BOOL)deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (BOOL)_askToChangePathPrefixToCreateMailbox:(id)arg1 displayName:(id)arg2 withGateway:(id)arg3; +- (id)validNameForMailbox:(id)arg1 fromDisplayName:(id)arg2 error:(id *)arg3; +- (id)createMailboxWithParent:(id)arg1 displayName:(id)arg2 localizedDisplayName:(id)arg3; +- (BOOL)_createMailbox:(id)arg1 withGateway:(id)arg2; +- (id)_listingForMailbox:(id)arg1 listAllChildren:(BOOL)arg2 highPriority:(BOOL)arg3; +- (id)_recursivelyFilterMailboxList:(id)arg1 accordingToList:(id)arg2; +- (id)_namespacePrefixesForPrivate:(BOOL)arg1 public:(BOOL)arg2 shared:(BOOL)arg3; +- (id)_listingForMailbox:(id)arg1 listAllChildren:(BOOL)arg2 onlySubscribed:(BOOL)arg3 highPriority:(BOOL)arg4; +- (void)_synchronizeMailboxListDuringMailCheck; +- (void)_updateSpecialMailboxes; +- (BOOL)_synchronizeMailboxListHighPriority:(BOOL)arg1; +- (BOOL)hasCapability:(unsigned long long)arg1; +- (BOOL)supportsIDLE; +- (id)lastKnownCapabilities; +- (id)separatorCharFetchIfNeeded:(BOOL)arg1; +- (void)_setSeparatorChar:(id)arg1; +- (void)fetchSynchronouslyIsAuto:(id)arg1; +- (void)boostExistingFetchTo:(long long)arg1; +- (void)_asynchronouslyFetchUnreadCountsCheckForNewMessages:(BOOL)arg1 highPriority:(BOOL)arg2; +- (void)setIsOffline:(BOOL)arg1; +- (void)_setIsOffline:(BOOL)arg1; +- (void)clearQuotaRoots; +- (id)quotaRootForName:(id)arg1 createIfNeeded:(BOOL)arg2; +- (void)_startObserving:(BOOL)arg1 IMAPMailbox:(id)arg2; +- (void)_removeIMAPMailboxWithName:(id)arg1; +- (void)_renameIMAPMailboxWithMailbox:(id)arg1 fromName:(id)arg2 toName:(id)arg3; +- (BOOL)resetSpecialMailboxes; +- (id)_serverDefinedMailboxWithAttribute:(unsigned long long)arg1; +@property(readonly, retain) MFMailbox *serverDefinedTrashMailbox; +@property(readonly, retain) MFMailbox *serverDefinedSentMailbox; +@property(readonly, retain) MFMailbox *serverDefinedJunkMailbox; +@property(readonly, retain) MFMailbox *serverDefinedDraftsMailbox; +@property(readonly, retain) MFMailbox *serverDefinedArchiveMailbox; +- (id)gmailLabelWithName:(id)arg1; +- (id)_addIMAPMailboxForMailbox:(id)arg1 name:(id)arg2; +- (id)_IMAPMailboxForMailbox:(id)arg1 name:(id)arg2 createIfNeeded:(BOOL)arg3; +- (id)IMAPMailboxForMailboxName:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)IMAPMailboxForMailbox:(id)arg1 createIfNeeded:(BOOL)arg2; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)validateConnections; +- (void)_validateConnections; +- (void)releaseAllConnections; +- (void)_releaseAllConnectionsAndCallSuper:(BOOL)arg1 saveOfflineCache:(BOOL)arg2; +- (BOOL)_recoverFromConnectionlessStateHighPriority:(BOOL)arg1; +- (BOOL)shouldRetryConnectionWithoutCertificateCheckingAfterError:(id)arg1 host:(id)arg2 didPromptUser:(char *)arg3; +- (id)_getPotentialGatewayForMailbox:(id)arg1 options:(unsigned long long)arg2 createdNewConnection:(char *)arg3 needsSelect:(char *)arg4; +- (id)_gatewayForMailbox:(id)arg1 name:(id)arg2 options:(unsigned long long)arg3; +- (void)_invalidateMailboxWithName:(id)arg1 expunge:(BOOL)arg2 URLToCompact:(id)arg3; +- (void)invalidateMailboxWithName:(id)arg1 expunge:(BOOL)arg2 URLStringToCompact:(id)arg3; +- (void)recoverFromConnectionLoss; +- (id)gatewayForExistingConnectionToMailbox:(id)arg1; +- (id)gatewayForMailbox:(id)arg1 options:(unsigned long long)arg2; +- (void)handleOpenMailboxError:(id)arg1; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (void)detectAllMailWithGateway:(id)arg1; +- (BOOL)isGmailAccount; +@property long long gmailCapabilitiesSupport; +- (void)setStoreTrashOnServer:(BOOL)arg1; +- (void)setStoreSentMessagesOnServer:(BOOL)arg1; +- (void)setStoreJunkOnServer:(BOOL)arg1; +- (void)setStoreDraftsOnServer:(BOOL)arg1; +@property BOOL ignoreServerDefinedTrashMailbox; +@property BOOL ignoreServerDefinedSentMailbox; +@property BOOL ignoreServerDefinedJunkMailbox; +@property BOOL ignoreServerDefinedDraftsMailbox; +@property BOOL ignoreServerDefinedArchiveMailbox; +@property BOOL hasServerDefinedTrashMailbox; +@property BOOL hasServerDefinedSentMailbox; +@property BOOL hasServerDefinedJunkMailbox; +@property BOOL hasServerDefinedDraftsMailbox; +@property BOOL hasServerDefinedArchiveMailbox; +@property BOOL hasServerDefinedAllMailMailbox; +@property(copy) NSDictionary *serverID; +- (void)_clearAllPathBasedCachesAndDelete:(BOOL)arg1; +- (void)setAllowsPartialDownloads:(BOOL)arg1; +- (BOOL)allowsPartialDownloads; +- (unsigned long long)minimumPartialDownloadSize; +- (id)_dataForTemporaryUid:(unsigned int)arg1; +- (void)_checkForNewMessagesInStore:(id)arg1; +- (void)didSynchronizeMailboxCachesAndFoundChanges:(BOOL)arg1; +- (void)resetNeedToSynchronizeMailboxCaches; +- (BOOL)needToSynchronizeMailboxCaches; +- (void)synchronizeAllMailboxes; +@property unsigned int readBufferSize; +- (void)handleAlertResponse:(id)arg1; +- (BOOL)handleResponseCodeFromResponse:(id)arg1; +- (id)providerIdentifier; +- (id)iaServiceType; +- (void)_updateIdleMailbox; +- (id)allMailMailbox; +- (id)primaryMailbox; +- (BOOL)_setChildren:(id)arg1 forMailbox:(id)arg2; +@property BOOL useIDLEIfAvailable; +- (void)setCompactWhenClosingMailboxes:(BOOL)arg1; +- (BOOL)compactWhenClosingMailboxes; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (id)_newConnectionWithPendingGateway:(BOOL)arg1; +@property(readonly, nonatomic) BOOL requiresAuthentication; +- (void *)keychainProtocol; +@property(readonly, copy, nonatomic) NSString *saslProfileName; +- (long long)defaultSecurePortNumber; +- (long long)defaultPortNumber; +- (id)mailboxPathExtension; +- (Class)storeClassForMailbox:(id)arg1; +- (void)sendAccountNeedsCheckingNotification; +- (void)doRoutineCleanup; +- (void)saveCache; +- (void)_writeCustomInfoToMailboxCache:(id)arg1; +- (void)_readCustomInfoFromMailboxCache:(id)arg1; +- (void)_cleanUpExistingMessages; +- (id)_colorByMessageFromColorByMessageDigest:(id)arg1; +- (void)_migrateColorsForGmail; +@property BOOL needsGmailLabelsCleanup; +@property BOOL shouldUseGmailLabelStores; +- (void)completeDeferredInitialization; +- (void)dealloc; +- (id)initWithAccountInfo:(id)arg1; +- (void)setMessageCaching:(unsigned int)arg1; +- (unsigned int)messageCaching; + +// Remaining properties +@property(readonly, copy) NSString *accountTypeString; +@property BOOL allowInsecureAuthentication; +@property(readonly, copy) NSString *appleAuthenticationToken; +@property(readonly, copy) NSString *applePersonID; +@property(copy) NSString *canonicalEmailAddress; +@property BOOL configureDynamically; +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(copy) NSString *displayName; +@property(copy) NSString *externalHostname; +@property(readonly, copy) NSString *googleClientToken; +@property(readonly) unsigned long long hash; +@property(copy) NSString *hostname; +@property(readonly, copy) NSString *identifier; +@property(copy) NSString *password; +@property long long portNumber; +@property(retain) MCAuthScheme *preferredAuthScheme; +@property long long securityLayerType; +@property BOOL shouldUseAuthentication; +@property(readonly, copy, nonatomic) NSArray *standardPorts; +@property(readonly, copy, nonatomic) NSArray *standardSSLPorts; +@property(readonly) NSURL *subscriptionURL; +@property(readonly, copy) NSString *subscriptionURLLabel; +@property(readonly) Class superclass; +@property(copy) NSString *username; +@property BOOL usesSSL; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPAppendMessageOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPAppendMessageOperation.h new file mode 100644 index 00000000..8fef1dcf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPAppendMessageOperation.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFIMAPAppendMessageOperation : MFIMAPOperation +{ + unsigned int _uid; + int _internalDateAsInt; + unsigned int _size; + NSArray *_flags; +} + +@property(nonatomic) unsigned int size; // @synthesize size=_size; +@property(nonatomic) int internalDateAsInt; // @synthesize internalDateAsInt=_internalDateAsInt; +@property(copy, nonatomic) NSArray *flags; // @synthesize flags=_flags; +@property(nonatomic) unsigned int uid; // @synthesize uid=_uid; +- (void).cxx_destruct; +- (id)description; +- (unsigned int)lastTemporaryUid; +- (unsigned int)firstTemporaryUid; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (BOOL)isSourceOfTemporaryUid:(unsigned int)arg1; +- (id)internalDate; +- (void)serializeIntoData:(id)arg1; +- (void)_deserializeOpSpecificValuesFromData:(id)arg1 cursor:(unsigned long long *)arg2; +- (unsigned long long)approximateSize; +- (unsigned char)operationType; +- (id)initWithAppendedUid:(unsigned int)arg1 approximateSize:(unsigned int)arg2 flags:(id)arg3 internalDate:(id)arg4 mailbox:(id)arg5; + +// Remaining properties +@property(nonatomic) BOOL usesRealUids; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPCopyMessagesOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPCopyMessagesOperation.h new file mode 100644 index 00000000..f289b49a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPCopyMessagesOperation.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSPointerArray, NSString; + +@interface MFIMAPCopyMessagesOperation : MFIMAPOperation +{ + NSPointerArray *_sourceUids; + NSPointerArray *_destinationUids; + NSString *_destinationMailbox; +} + +@property(copy, nonatomic) NSString *destinationMailbox; // @synthesize destinationMailbox=_destinationMailbox; +@property(retain, nonatomic) NSPointerArray *destinationUids; // @synthesize destinationUids=_destinationUids; +@property(retain, nonatomic) NSPointerArray *sourceUids; // @synthesize sourceUids=_sourceUids; +- (void).cxx_destruct; +- (id)description; +- (unsigned int)lastTemporaryUid; +- (unsigned int)firstTemporaryUid; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (BOOL)actsOnTemporaryUid:(unsigned int)arg1; +- (void)setMessageId:(id)arg1 andInternalDate:(id)arg2 forMessageWithSourceUid:(unsigned int)arg3; +- (BOOL)getMessageId:(id *)arg1 andInternalDate:(id *)arg2 forDestinationUid:(unsigned int)arg3; +- (unsigned int)sourceUidForTemporaryUid:(unsigned int)arg1; +- (BOOL)isSourceOfTemporaryUid:(unsigned int)arg1; +- (void)serializeIntoData:(id)arg1; +- (void)_deserializeOpSpecificValuesFromData:(id)arg1 cursor:(unsigned long long *)arg2; +- (id)destinationUidStrings; +- (id)sourceUidStrings; +- (unsigned long long)approximateSize; +- (unsigned char)operationType; +- (id)initWithUidStringsToCopy:(id)arg1 fromMailbox:(id)arg2 toMailbox:(id)arg3 firstNewUid:(unsigned int)arg4; + +// Remaining properties +@property(nonatomic) BOOL usesRealUids; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPCreateOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPCreateOperation.h new file mode 100644 index 00000000..b87a8657 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPCreateOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFIMAPCreateOperation : MFIMAPOperation +{ +} + +- (id)description; +- (unsigned char)operationType; +- (id)initWithMailboxToCreate:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPDeleteOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPDeleteOperation.h new file mode 100644 index 00000000..eeab3715 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPDeleteOperation.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFIMAPDeleteOperation : MFIMAPOperation +{ +} + +- (id)description; +- (unsigned char)operationType; +- (id)initWithMailboxToDelete:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPOfflineCopyOnStupidServerOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPOfflineCopyOnStupidServerOperation.h new file mode 100644 index 00000000..b70e6819 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPOfflineCopyOnStupidServerOperation.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSMutableArray, NSPointerArray; + +@interface MFIMAPOfflineCopyOnStupidServerOperation : MFIMAPCopyMessagesOperation +{ + NSMutableArray *_messageIds; + NSPointerArray *_internalDates; +} + +@property(retain, nonatomic) NSPointerArray *internalDates; // @synthesize internalDates=_internalDates; +@property(retain, nonatomic) NSMutableArray *messageIds; // @synthesize messageIds=_messageIds; +- (void).cxx_destruct; +- (unsigned long long)approximateSize; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (void)setMessageId:(id)arg1 andInternalDate:(id)arg2 forMessageWithSourceUid:(unsigned int)arg3; +- (BOOL)getMessageId:(id *)arg1 andInternalDate:(id *)arg2 forDestinationUid:(unsigned int)arg3; +- (void)_deserializeOpSpecificValuesFromData:(id)arg1 cursor:(unsigned long long *)arg2; +- (unsigned char)_magic; +- (void)serializeIntoData:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPOperation.h new file mode 100644 index 00000000..cf872cc8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPOperation.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSString; + +@interface MFIMAPOperation : NSObject +{ + BOOL _usesRealUids; + NSString *_mailboxName; +} + ++ (id)newOperationWithSerializedData:(id)arg1 cursor:(unsigned long long *)arg2; +@property(nonatomic) BOOL usesRealUids; // @synthesize usesRealUids=_usesRealUids; +@property(readonly, copy, nonatomic) NSString *mailboxName; // @synthesize mailboxName=_mailboxName; +- (void).cxx_destruct; +- (unsigned int)lastTemporaryUid; +- (unsigned int)firstTemporaryUid; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (BOOL)actsOnTemporaryUid:(unsigned int)arg1; +- (BOOL)isSourceOfTemporaryUid:(unsigned int)arg1; +- (unsigned long long)approximateSize; +@property(readonly, nonatomic) unsigned char operationType; +- (id)init; +- (id)_initWithMailboxName:(id)arg1; +- (void)serializeIntoData:(id)arg1; +- (void)_deserializeOpSpecificValuesFromData:(id)arg1 cursor:(unsigned long long *)arg2; +- (unsigned char)_magic; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPOperationCache.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPOperationCache.h new file mode 100644 index 00000000..9b13a97f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPOperationCache.h @@ -0,0 +1,54 @@ +/* + * 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 "IMAPOfflineCache.h" + +@class MFIMAPAccount, NSMutableArray, NSString; + +@interface MFIMAPOperationCache : NSObject +{ + MFIMAPAccount *_account; + NSMutableArray *_ops; + unsigned int _lastUid; + BOOL _opsChanged; +} + +- (void).cxx_destruct; +@property(readonly, copy) NSString *description; +- (id)_deferredOperations; +- (void)performDeferredOperationsWithGateway:(id)arg1 outDisplayableError:(id *)arg2; +- (BOOL)_performCopyOperation:(id)arg1 withContext:(id)arg2 failedSourceUids:(id)arg3 error:(id *)arg4; +- (BOOL)_performAppendOperation:(id)arg1 withContext:(id)arg2 backupManager:(id)arg3 suggestedOfflineRestoreName:(id)arg4 recoveredMailboxName:(id *)arg5 error:(id *)arg6; +- (BOOL)_performStoreOperation:(id)arg1 forGmailLabels:(BOOL)arg2 ignoringUids:(id)arg3 withContext:(id)arg4; +- (BOOL)_performDeleteOperation:(id)arg1 withContext:(id)arg2; +- (BOOL)_performCreateOperation:(id)arg1 withContext:(id)arg2; +- (BOOL)hasOperationsForMailbox:(id)arg1; +- (unsigned long long)numberOfPendingChanges; +- (void)saveChanges; +- (void)expungeMessageWithMessageID:(id)arg1 documentID:(id)arg2; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (void)_expungeMessageWithTemporaryUid:(unsigned int)arg1 orMessageID:(id)arg2 documentID:(id)arg3; +- (unsigned int)uidForAppendingMessageData:(id)arg1 withFlags:(id)arg2 andInternalDate:(id)arg3 toMailbox:(id)arg4; +- (unsigned int)firstUidForCopyingMessages:(id)arg1 toMailbox:(id)arg2; +- (void)setGmailLabels:(id)arg1 andClearGmailLabels:(id)arg2 forUids:(id)arg3 forMailbox:(id)arg4; +- (void)setFlags:(id)arg1 andClearFlags:(id)arg2 forUids:(id)arg3 forMailbox:(id)arg4; +- (void)_setFlagsOrGmailLabels:(id)arg1 andClearFlagsOrGmailLabels:(id)arg2 actuallyGmailLabels:(BOOL)arg3 forMessages:(id)arg4; +- (void)setGmailLabels:(id)arg1 andClearGmailLabels:(id)arg2 forMessages:(id)arg3; +- (void)setFlags:(id)arg1 andClearFlags:(id)arg2 forMessages:(id)arg3; +- (void)deleteMailbox:(id)arg1; +- (void)createMailbox:(id)arg1; +- (id)init; +- (id)initWithIMAPAccount:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPSizeEngine.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPSizeEngine.h new file mode 100644 index 00000000..711a8ff0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPSizeEngine.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSMutableDictionary, NSMutableSet; + +@interface MFIMAPSizeEngine : MFRemoteStoreSizeEngine +{ + unsigned long long _workerThreadCount; + NSMutableDictionary *_mailboxesByQuotaRoot; + NSMutableSet *_quotasToFetch; + NSMutableSet *_observedIMAPMailboxes; + NSMutableSet *_observedIMAPQuotaRoots; + long long _quotaStatus; +} + +- (void).cxx_destruct; +- (BOOL)mailbox:(id)arg1 usesQuotaName:(id)arg2; +- (id)copyMailboxesForQuotaName:(id)arg1; +- (id)usageForQuotaName:(id)arg1; +- (id)quotaNames; +- (long long)quotaStatus; +- (BOOL)_shouldStartWorkerThread; +- (void)_runWorkerThread; +- (void)_getSizeForMailbox:(id)arg1; +- (void)_mailboxBecameInvalid:(id)arg1; +- (void)_changeQuotaRoots:(id)arg1 forMailbox:(id)arg2; +- (BOOL)_changeUsageInfo:(CDStruct_1dee9796 *)arg1 forMailbox:(id)arg2 refetchQuotas:(BOOL)arg3; +- (void)_addQuotaRootsFromMailbox:(id)arg1; +- (void)_addUsageInfoFromMailbox:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)dealloc; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPStoreFlagsOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPStoreFlagsOperation.h new file mode 100644 index 00000000..078f5d5b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPStoreFlagsOperation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFIMAPStoreFlagsOperation : MFIMAPStoreOperation +{ +} + +- (id)description; +@property(readonly, copy, nonatomic) NSArray *flagsToClear; +@property(readonly, copy, nonatomic) NSArray *flagsToSet; +- (unsigned char)operationType; +- (id)initWithFlagsToSet:(id)arg1 flagsToClear:(id)arg2 forUids:(id)arg3 inMailbox:(id)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPStoreGmailLabelsOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPStoreGmailLabelsOperation.h new file mode 100644 index 00000000..5675a0a0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPStoreGmailLabelsOperation.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFIMAPStoreGmailLabelsOperation : MFIMAPStoreOperation +{ +} + +- (id)description; +@property(readonly, copy, nonatomic) NSArray *gmailLabelsToClear; +@property(readonly, copy, nonatomic) NSArray *gmailLabelsToSet; +- (unsigned char)operationType; +- (id)initWithGmailLabelsToSet:(id)arg1 gmailLabelsToClear:(id)arg2 forUids:(id)arg3 inMailbox:(id)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPStoreOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPStoreOperation.h new file mode 100644 index 00000000..b2c73a99 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFIMAPStoreOperation.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray, NSPointerArray; + +@interface MFIMAPStoreOperation : MFIMAPOperation +{ + NSArray *_objectsToSet; + NSArray *_objectsToClear; + NSPointerArray *_uids; +} + +@property(retain, nonatomic) NSPointerArray *uids; // @synthesize uids=_uids; +@property(copy, nonatomic) NSArray *objectsToClear; // @synthesize objectsToClear=_objectsToClear; +@property(copy, nonatomic) NSArray *objectsToSet; // @synthesize objectsToSet=_objectsToSet; +- (void).cxx_destruct; +- (void)expungeTemporaryUid:(unsigned int)arg1; +- (BOOL)actsOnTemporaryUid:(unsigned int)arg1; +- (void)serializeIntoData:(id)arg1; +- (void)_deserializeOpSpecificValuesFromData:(id)arg1 cursor:(unsigned long long *)arg2; +@property(readonly, copy, nonatomic) NSArray *uidStrings; +- (unsigned long long)approximateSize; +- (id)_initWithObjectsToSet:(id)arg1 objectsToClear:(id)arg2 forUids:(id)arg3 inMailbox:(id)arg4; + +// Remaining properties +@property(nonatomic) BOOL usesRealUids; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFJunkMail.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFJunkMail.h new file mode 100644 index 00000000..bdc9bd60 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFJunkMail.h @@ -0,0 +1,18 @@ +/* + * 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" + +@interface MFJunkMail : NSObject +{ +} + ++ (id)mapDescriptionFromMapType:(int)arg1; ++ (int)mapTypeFromMapName:(id)arg1; ++ (id)mapNameForMapType:(int)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFJunkMailFilter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFJunkMailFilter.h new file mode 100644 index 00000000..aa199388 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFJunkMailFilter.h @@ -0,0 +1,59 @@ +/* + * 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" + +@class NSString, NSURL; + +@interface MFJunkMailFilter : NSObject +{ + struct __LSMMap *_map; + BOOL _isDirty; + BOOL _useCleanMap; + BOOL _isInTraining; + NSURL *_oldMapFileURL; + NSURL *_mapFileURL; + NSString *_mapFilePath; +} + ++ (void)resetJunkMailUsageCounters; ++ (void)resetJunkMailTrainingBalance; ++ (void)incrementJunkMailTrainingCreditBy:(long long)arg1; ++ (void)incrementJunkMailTrainingDebtBy:(long long)arg1; ++ (BOOL)shouldUpdateTrainingDebt; ++ (id)_junkFilterUsageCounterKeys; ++ (id)sharedInstance; +@property(nonatomic) BOOL isInTraining; // @synthesize isInTraining=_isInTraining; +@property(copy, nonatomic) NSString *mapFilePath; // @synthesize mapFilePath=_mapFilePath; +@property(retain, nonatomic) NSURL *mapFileURL; // @synthesize mapFileURL=_mapFileURL; +@property(retain, nonatomic) NSURL *oldMapFileURL; // @synthesize oldMapFileURL=_oldMapFileURL; +@property(nonatomic) BOOL useCleanMap; // @synthesize useCleanMap=_useCleanMap; +- (void).cxx_destruct; +- (void)_saveTrainingWithDelay; +@property(nonatomic) BOOL isDirty; +- (void)userDidReplyToMessage:(id)arg1; +- (id)trainOnMessages:(id)arg1 junkMailLevel:(long long)arg2; +- (long long)junkMailLevelForMessage:(id)arg1 junkRecorder:(id)arg2; +- (long long)junkMailLevelForMessage:(id)arg1; +- (id)_usageCounter; +@property(readonly, nonatomic) BOOL gatherUsageCounts; +- (id)state; +@property(readonly, nonatomic) BOOL isEnabled; +@property(readonly, nonatomic) long long junkMailTrainingCredit; +@property(readonly, nonatomic) long long junkMailTrainingDebt; +@property(readonly, nonatomic) long long junkMailTrainingBalance; +- (void)saveTraining; +- (void)reset; +@property(readonly, nonatomic) unsigned long long manuallyMarkedAsNotJunkMessageCount; +@property(readonly, nonatomic) unsigned long long manuallyMarkedAsJunkMessageCount; +@property(readonly, nonatomic) unsigned long long evaluatedAsJunkMessageCount; +@property(readonly, nonatomic) unsigned long long evaluatedMessageCount; +- (void)setMap:(struct __LSMMap *)arg1; +- (struct __LSMMap *)map; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibrary.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibrary.h new file mode 100644 index 00000000..e6e0b219 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibrary.h @@ -0,0 +1,288 @@ +/* + * 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 "MFLibraryInterface.h" + +@class NSString; + +@interface MFLibrary : NSObject +{ +} + ++ (unsigned long long)numberOfMessagesForAccount:(id)arg1; ++ (void)queueStoreFinishedFirstTimeSync:(id)arg1; ++ (void)queueConversationsChangedNotification:(id)arg1; ++ (void)queueMessagesCompactedNotification:(id)arg1; ++ (void)queueMessageGmailLabelsChangedNotificationForMessages:(id)arg1; ++ (void)queueMessagesChangedNotificationForMessages:(id)arg1 flags:(id)arg2 oldFlagsByMessage:(id)arg3; ++ (void)queueMessagesUpdatedNotification:(id)arg1; ++ (void)queueMessagesAddedNotification:(id)arg1; ++ (void)_queueMessagesNotification:(id)arg1 withUserInfo:(id)arg2; ++ (void)registerStoreForUpdates:(id)arg1; ++ (void)didCommit:(struct sqlite3 *)arg1; ++ (id)newUnsignedForQuery:(id)arg1 db:(struct sqlite3 *)arg2; ++ (void)tagDatabaseVersionIfNeeded:(struct sqlite3 *)arg1; ++ (int)lastWriteMinorVersion; ++ (void)flushCachedDatabases; ++ (void)_checkInDBHandle:(id)arg1 forWriting:(BOOL)arg2; ++ (id)_checkOutDBHandleForWriting:(BOOL)arg1 isPrivileged:(BOOL)arg2; ++ (void)executeReadBlockInDatabase:(id)arg1; ++ (void)executeWriteBlockInDatabase:(id)arg1; ++ (void)executeBlock:(id)arg1 isWriter:(void)arg2 useTransaction:(BOOL)arg3 isPrivileged:(BOOL)arg4; ++ (id)sqlListWithArray:(id)arg1; ++ (long long)cachedMailboxIDForMailbox:(id)arg1; ++ (long long)mailboxIDForMailbox:(id)arg1; ++ (id)_mailboxForMailboxID:(long long)arg1 forceCreation:(BOOL)arg2; ++ (id)mailboxForMailboxID:(long long)arg1 forceCreation:(BOOL)arg2; ++ (long long)mailboxIDForMailbox:(id)arg1 loadIfNotPresent:(BOOL)arg2; ++ (BOOL)deleteEventForMessage:(id)arg1; ++ (BOOL)updateCalendarEvent:(id)arg1 forMessage:(id)arg2; ++ (BOOL)addCalendarEvent:(id)arg1 toMessage:(id)arg2; ++ (id)calendarEventForMessageID:(long long)arg1; ++ (void)prepareToReImportMessages; ++ (void)cleanOldDatabases; ++ (void)setTotalNumberOfMessages:(unsigned long long)arg1; ++ (unsigned long long)totalNumberOfMessages; ++ (unsigned long long)runningIndexOfCurrentMessage; ++ (void)incrementRunningIndexOfCurrentMessage; ++ (void)setCurrentMailbox:(id)arg1; ++ (id)currentMailbox; ++ (BOOL)threadIsExecutingInDatabaseBlock; ++ (void)setInitialized; ++ (BOOL)isInitialized; ++ (long long)libraryStatusAsReader; ++ (long long)libraryStatusAsWriter; ++ (long long)_libraryStatusCanWrite:(BOOL)arg1; ++ (void)dispose; ++ (BOOL)isEmptyDB; ++ (BOOL)fileExists; ++ (void)takeAccountsOnlineAllAccounts:(BOOL)arg1; ++ (void)upgradeMessageDirectoriesIfNeeded; ++ (void)_upgradeMessageDirectoriesSynchronously; ++ (BOOL)importMessagesFromEnabledAccounts; ++ (void)setLibraryIsImporting:(BOOL)arg1; ++ (BOOL)libraryIsImporting; ++ (BOOL)importMailbox:(id)arg1; ++ (BOOL)rebuildMailbox:(id)arg1; ++ (id)filterContiguousMessages:(id)arg1 forCriterion:(id)arg2 options:(unsigned int)arg3; ++ (id)criterionExpressionStringForStartLibraryID:(long long)arg1 count:(unsigned long long)arg2; ++ (BOOL)boolForCriterion:(id)arg1; ++ (unsigned long long)countForCriterion:(id)arg1; ++ (unsigned long long)countForCriterion:(id)arg1 monitor:(id)arg2; ++ (id)_queryForCountCriterion:(id)arg1; ++ (id)messagesMatchingCriterion:(id)arg1 options:(unsigned int)arg2 searchType:(long long)arg3; ++ (id)spotlightCallbackDispatchQueue; ++ (void)sendMessagesMatchingCriterion:(id)arg1 to:(id)arg2 options:(unsigned int)arg3 searchType:(long long)arg4 queryLabel:(id)arg5 async:(BOOL)arg6; ++ (struct __MDQuery *)createAllMailboxesSpotlightQueryWithQueryString:(id)arg1 attributes:(struct __CFArray *)arg2 queryLabel:(id)arg3 forUnreadCount:(BOOL)arg4 withMailboxExclusions:(BOOL)arg5 includeWhereFromsCriterion:(BOOL)arg6; ++ (id)spotlightQueryStringWithQueryString:(id)arg1; ++ (id)countedSpotlightQueryStringWithQueryString:(id)arg1; ++ (id)queryForCriterion:(id)arg1 options:(unsigned int)arg2; ++ (id)queryForCriterion:(id)arg1 options:(unsigned int)arg2 baseTable:(unsigned long long)arg3 isSubquery:(BOOL)arg4 fixUpCriterion:(BOOL)arg5; ++ (void)markMessageAsViewed:(id)arg1 viewedDate:(id)arg2; ++ (BOOL)hasCacheFileForMessage:(id)arg1 part:(id)arg2 directoryContents:(id)arg3; ++ (BOOL)_hasCacheFileForMessageWithLibraryID:(long long)arg1 mailboxID:(long long)arg2 directoryContents:(id)arg3 allowsPartials:(BOOL)arg4; ++ (BOOL)hasCacheFileForMessage:(id)arg1 directoryContents:(id)arg2; ++ (id)incompleteMessagesForMailbox:(id)arg1 directoryContents:(id)arg2; ++ (id)fullMessageDataForMessage:(id)arg1; ++ (id)_messageDataAtPath:(id)arg1; ++ (BOOL)isMessageContentLocallyAvailable:(id)arg1; ++ (BOOL)_isFullEmlxLocallyAvailable:(id)arg1; ++ (id)dataForMimePart:(id)arg1; ++ (id)fullBodyDataForMessage:(id)arg1; ++ (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; ++ (id)bodyDataForMessage:(id)arg1; ++ (id)bodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; ++ (id)headerDataForMessage:(id)arg1; ++ (id)bodyDataAtPath:(id)arg1 headerData:(id *)arg2; ++ (id)_emlxPListInFile:(id)arg1 plistOffset:(unsigned long long *)arg2; ++ (id)emlxPListAtURL:(id)arg1; ++ (void)setData:(id)arg1 forMessage:(id)arg2 isPartial:(BOOL)arg3 hasCompleteText:(BOOL)arg4; ++ (void)setData:(id)arg1 forMessage:(id)arg2 isPartial:(BOOL)arg3; ++ (void)appendData:(id)arg1 forMessage:(id)arg2 part:(id)arg3; ++ (id)existingDataPathForMessage:(id)arg1; ++ (id)messageWithDataPath:(id)arg1; ++ (id)_dataPathForMessage:(id)arg1 type:(long long)arg2; ++ (id)dataPathForMessage:(id)arg1 part:(id)arg2; ++ (id)dataPathForMessage:(id)arg1; ++ (id)_dataPathForMessageWithLibraryID:(long long)arg1 mailboxID:(long long)arg2 withFilename:(id)arg3; ++ (id)_dataPathForLibraryID:(long long)arg1 pathToMailbox:(id)arg2 type:(long long)arg3; ++ (id)dataPathForLibraryID:(long long)arg1 pathToMailbox:(id)arg2 fileExists:(char *)arg3; ++ (id)attachmentsDirectoryForMessage:(id)arg1; ++ (id)_filenameForLibraryID:(long long)arg1 type:(long long)arg2; ++ (id)filenameForLibraryID:(long long)arg1 part:(id)arg2; ++ (id)intermediateDirectoryForLibraryID:(long long)arg1 forAttachments:(BOOL)arg2; ++ (id)v2_intermediateDirectoryForLibraryID:(long long)arg1 forAttachments:(BOOL)arg2; ++ (id)dataDirectoryForMailbox:(id)arg1; ++ (void)_invalidateDirectoryForMailboxes:(id)arg1; ++ (id)databaseUUIDString; ++ (void)_setDatabaseUUIDString:(id)arg1; ++ (void)loadDatabaseUUIDStringIfNeeded:(struct sqlite3 *)arg1; ++ (void)setComputedHighestModificationSequence:(unsigned long long)arg1 forIMAPMailboxURL:(id)arg2; ++ (unsigned long long)computedHighestModificationSequenceforIMAPMailboxURL:(id)arg1; ++ (void)setAllegedHighestModificationSequence:(unsigned long long)arg1 forIMAPMailboxURL:(id)arg2; ++ (unsigned long long)allegedHighestModificationSequenceforIMAPMailboxURL:(id)arg1; ++ (void)updateEWSOfflineIdsToRealIds:(id)arg1; ++ (id)EWSSyncStateForMailbox:(id)arg1; ++ (void)setEWSSyncState:(id)arg1 forMailbox:(id)arg2; ++ (id)EWSFolderIdsByURLForMailboxes:(id)arg1; ++ (id)EWSFolderIdForMailbox:(id)arg1; ++ (void)setEWSFolderId:(id)arg1 forMailbox:(id)arg2; ++ (id)_EWSProperty:(char *)arg1 forMailbox:(id)arg2 errorString:(id)arg3; ++ (void)_addEWSProperty:(char *)arg1 value:(id)arg2 forMailbox:(id)arg3 errorString:(id)arg4; ++ (BOOL)_EWSFolderExistsForMailbox:(id)arg1 errorString:(id)arg2; ++ (id)draftWithDocumentID:(id)arg1 mailbox:(id)arg2; ++ (id)lastMessageWithMessageID:(id)arg1 inMailbox:(id)arg2; ++ (id)messagesWithMessageID:(id)arg1 inMailbox:(id)arg2; ++ (void)deleteMailboxes:(id)arg1 forRebuild:(BOOL)arg2; ++ (void)deleteMailboxes:(id)arg1; ++ (BOOL)renameMailboxes:(id)arg1 to:(id)arg2; ++ (void)compactMailbox:(id)arg1; ++ (void)removeMessages:(id)arg1 cleanUpAfter:(BOOL)arg2; ++ (void)removeMessages:(id)arg1; ++ (BOOL)shouldCancel; ++ (void)updateFileForMessage:(id)arg1; ++ (void)reloadMessage:(id)arg1; ++ (id)snippetsForMessages:(id)arg1; ++ (BOOL)loadSecondaryMetadataForMessage:(id)arg1; ++ (BOOL)_loadSecondaryMetadataForMessage:(id)arg1 fromDB:(struct sqlite3 *)arg2; ++ (id)mailboxNameForMessage:(id)arg1; ++ (id)accountForMessage:(id)arg1; ++ (id)remoteStoreForMessage:(id)arg1; ++ (id)_mailboxForMailboxID:(long long)arg1; ++ (id)mailboxForMessage:(id)arg1; ++ (id)urlForMailboxID:(long long)arg1; ++ (void)mailboxesDidChange; ++ (id)copyMailboxURLToRowIDMap; ++ (id)referencesForLibraryID:(long long)arg1; ++ (BOOL)boolForQuery:(id)arg1; ++ (unsigned long long)unsignedCountForQuery:(id)arg1 monitor:(id)arg2; ++ (BOOL)messageHasRelatedNonJunkMessages:(id)arg1; ++ (id)firstReplyToMessage:(id)arg1; ++ (id)messageWithLibraryID:(long long)arg1; ++ (id)messageWithLibraryID:(long long)arg1 options:(unsigned int)arg2; ++ (id)messagesWithMessageIDHeader:(id)arg1; ++ (id)messageWithMessageID:(id)arg1; ++ (void)setStoreForMessage:(id)arg1 fromMailbox:(id)arg2 knownStores:(id)arg3; ++ (void)setStoreForMessage:(id)arg1 knownStores:(id)arg2; ++ (void)setStoresForMessages:(id)arg1; ++ (id)getDetailsForMessagesWithQuery:(char *)arg1 contiguous:(BOOL)arg2 firstRemoteID:(unsigned long long)arg3 lastRemoteID:(unsigned long long)arg4 fromMailbox:(id)arg5; ++ (id)getDetailsForMessagesWithRemoteIDs:(id)arg1 fromMailbox:(id)arg2; ++ (id)getDetailsForMessagesWithRemoteIDStrings:(id)arg1 fromMailbox:(id)arg2; ++ (unsigned int)maximumRemoteIDForMailbox:(id)arg1; ++ (id)messageWithRemoteID:(id)arg1 inRemoteMailbox:(id)arg2 options:(unsigned int)arg3; ++ (id)messagesWithRemoteIDs:(id)arg1 inRemoteMailbox:(id)arg2 options:(unsigned int)arg3; ++ (void)setMessageCountsForMailboxes; ++ (unsigned long long)unreadCountForMessageType:(BOOL)arg1; ++ (unsigned long long)totalCountForMailbox:(id)arg1; ++ (void)gatherCountsForMailbox:(id)arg1 totalCount:(unsigned long long *)arg2 unreadCount:(unsigned long long *)arg3 deletedCount:(unsigned long long *)arg4 totalSize:(unsigned long long *)arg5; ++ (id)unreadMessagesForMailbox:(id)arg1; ++ (id)messagesForGmailLabel:(id)arg1 inAllMailMailbox:(id)arg2 olderThanNumberOfDays:(long long)arg3; ++ (id)messagesForMailbox:(id)arg1 olderThanNumberOfDays:(long long)arg2; ++ (id)messagesForMailbox:(id)arg1 where:(id)arg2 sortedBy:(id)arg3 ascending:(BOOL)arg4 options:(unsigned int)arg5; ++ (char *)_queryForMailbox:(id)arg1 where:(id)arg2 sortedBy:(id)arg3 ascending:(BOOL)arg4 options:(unsigned int)arg5; ++ (id)messagesWhere:(id)arg1 sortedBy:(id)arg2 options:(unsigned int)arg3; ++ (id)messagesMatchingQuery:(const char *)arg1 options:(unsigned int)arg2; ++ (void)sendMessagesMatchingQuery:(const char *)arg1 to:(id)arg2 options:(unsigned int)arg3; ++ (void)_setRecipientTypeForMessages:(id)arg1; ++ (id)_activeMailboxesClauseRebuildIfNecessary; ++ (BOOL)_isActiveMailboxID:(long long)arg1; ++ (id)_copyActiveMailboxesCache; ++ (void)_rebuildActiveMailboxesCacheIfNecessary; ++ (void)_rebuildActiveMailboxesCache; ++ (void)_getActiveAccountURLs:(id)arg1 andActiveMailboxURLs:(id)arg2; ++ (void)disableActiveMailboxFiltering; ++ (void)clearActiveMailboxesCache; ++ (id)myAddressIDsString; ++ (void)invalidateMyEmailAddresses; ++ (long long)threadPriority; ++ (void)setThreadPriority:(long long)arg1; ++ (void)setAttachmentNames:(id)arg1 forMessage:(id)arg2; ++ (id)duplicateMessages:(id)arg1 newRemoteIDs:(id)arg2 newDocumentIDs:(id)arg3 forMailbox:(id)arg4 setFlags:(long long)arg5 clearFlags:(long long)arg6 createNewCacheFiles:(BOOL)arg7 error:(id *)arg8; ++ (id)duplicateMessages:(id)arg1 newRemoteIDs:(id)arg2 newDocumentIDs:(id)arg3 forMailbox:(id)arg4 setFlags:(long long)arg5 clearFlags:(long long)arg6 messageFlagsForMessages:(id)arg7 createNewCacheFiles:(BOOL)arg8 error:(id *)arg9; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 error:(id *)arg3; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 progressDelegate:(id)arg3 error:(id *)arg4; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 oldMessagesByNewMessage:(id)arg4 error:(id *)arg5; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 isInitialImport:(BOOL)arg4 oldMessagesByNewMessage:(id)arg5 error:(id *)arg6; ++ (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 isInitialImport:(BOOL)arg4 oldMessagesByNewMessage:(id)arg5 remoteIDs:(id)arg6 setFlags:(long long)arg7 clearFlags:(long long)arg8 messageFlagsForMessages:(id)arg9 copyFiles:(BOOL)arg10 missedMessages:(id *)arg11 error:(id *)arg12; ++ (id)insertOrUpdateMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 isInitialImport:(BOOL)arg4 oldMessagesByNewMessage:(id)arg5 remoteIDs:(id)arg6 newDocumentIDs:(id)arg7 setFlags:(long long)arg8 clearFlags:(long long)arg9 messageFlagsForMessages:(id)arg10 copyFiles:(BOOL)arg11 progressDelegate:(id)arg12 updateRowIDs:(id)arg13 missedMessages:(id *)arg14 error:(id *)arg15; ++ (void)resetConversationIDForMessages:(id)arg1; ++ (void)updateDatabaseValuesIfNeeded; ++ (void)cleanupTablesReferencingMessageID:(long long)arg1 inDatabase:(id)arg2; ++ (BOOL)canUseEmlxFileWhenCopyingMessage:(id)arg1 fromAccount:(id)arg2 toAccount:(id)arg3; ++ (BOOL)isLibraryMessage:(id)arg1; ++ (BOOL)isLocalAccount:(id)arg1; ++ (BOOL)isRemoteStoreAccount:(id)arg1; ++ (void)fixAttachmentCache; ++ (void)addGmailLabelsToEmlx; ++ (void)hideMailboxesNotInLibraryFromSpotlight; ++ (void)backfillDateLastViewedAttribute; ++ (void)_updateDateLastViewed:(int)arg1 forLibraryID:(long long)arg2; ++ (void)deleteDataDirectoriesForMailbox:(id)arg1; ++ (void)touchDirectoryForMailbox:(id)arg1; ++ (void)_removeAlternatePathForEmlxPath:(id)arg1; ++ (BOOL)writeEmlxFile:(id)arg1 forMessage:(id)arg2 withBodyData:(id)arg3 plistData:(id)arg4 error:(id *)arg5; ++ (void)_removeExtendedAttributePlistFromEMLX:(id)arg1; ++ (id)plistDataForMessage:(id)arg1 subject:(id)arg2 sender:(id)arg3 to:(id)arg4 dateSent:(id)arg5 dateReceived:(id)arg6 dateLastViewed:(id)arg7 remoteID:(id)arg8 originalMailboxURLString:(id)arg9 gmailLabels:(id)arg10 flags:(long long)arg11 mergeWithDictionary:(id)arg12; ++ (id)_spotlightSendQueue; ++ (void)_sendAttributesToSpotlight:(id)arg1 attributes:(id)arg2; ++ (void)_sendAttributesToSpotlight:(id)arg1 bodyData:(id)arg2 plistData:(id)arg3; ++ (void)_sendAttributesToSpotlightForMessage:(id)arg1 path:(id)arg2 replaceExisting:(BOOL)arg3; ++ (void)updateNormalizedSubjectsIfNeededWithHandle:(id)arg1; ++ (void)_mailAccountsDidChange:(id)arg1; ++ (void)_mailboxWasRenamed:(id)arg1; ++ (void)_mailboxWillBeInvalidated:(id)arg1; ++ (BOOL)setupLibrary; ++ (void)initialize; ++ (id)writeQueue; ++ (BOOL)initializeDatabase:(struct sqlite3 *)arg1; ++ (void)updateSize:(id)arg1 forMessage:(id)arg2; ++ (void)setFlagsAndColorForMessages:(id)arg1; ++ (void)setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; ++ (void)_commitFlagsForMessage:(id)arg1 oldFlags:(id)arg2; ++ (void)updateGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; ++ (id)_mailboxIDsStringForMailboxes:(id)arg1; ++ (void)clearLabelsForMailboxes:(id)arg1; ++ (void)removeSourceMailboxFromMailboxes:(id)arg1; ++ (void)removeSourceMailbox:(id)arg1; ++ (void)setSourceMailbox:(id)arg1 forMailboxes:(id)arg2; ++ (void)recalculateMessageCountsForMailboxIDs:(id)arg1; ++ (void)loadMessageCountsForMailboxes; ++ (void)commitFlagsForMessage:(id)arg1 oldFlags:(unsigned int)arg2; ++ (void)setSnippetsForMessages:(id)arg1; ++ (void)waitForCommitsToFinish; ++ (void)_updateMessageFilesInBackground; ++ (void)_commitMessagesInBackground; ++ (void)commitSynchronouslyPostingMessages:(id)arg1 postFlags:(id)arg2 postingOldFlagsByMessage:(id)arg3; ++ (void)commitSynchronously; ++ (void)synchronouslyUpdateMessageFiles; ++ (void)unScheduleMessageFileUpdate; ++ (void)scheduleMessageFileUpdate; ++ (void)unScheduleCommit; ++ (void)scheduleCommit; ++ (void)_setCommitTimer:(id)arg1; ++ (void)_addMessagesNeedingEmlxUpdate:(id)arg1; ++ (void)updateJunkMessagesForIndexing; ++ (void)flagsChangedForMessages:(id)arg1; ++ (void)restoreBackingStoreUpdateJournalIfNeeded; ++ (void)_mergeRestoreMessageLibraryIDsToUpdate:(id)arg1; ++ (BOOL)updateBackingStoreUpdateJournal; ++ (BOOL)removeBackingStoreUpdateJournal; ++ (id)backingStoreJournalPath; ++ (id)backingStoreJournalDirectory; ++ (void)commitMessage:(id)arg1 immediately:(BOOL)arg2; ++ (id)sharedInstance; ++ (void)loadSearchSettings; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryCalendarEvent.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryCalendarEvent.h new file mode 100644 index 00000000..8cd2c457 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryCalendarEvent.h @@ -0,0 +1,40 @@ +/* + * 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" + +@class NSDate, NSString; + +@interface MFLibraryCalendarEvent : NSObject +{ + BOOL _isAllDayEvent; + BOOL _isOutOfDate; + BOOL _hasBeenProcessed; + BOOL _isResponseRequested; + NSString *_originalReceivedAccountURLString; + NSString *_associatedCalendarItemIdString; + NSString *_location; + NSString *_uid; + NSDate *_startDate; + NSDate *_endDate; + long long _responseStatus; +} + +@property long long responseStatus; // @synthesize responseStatus=_responseStatus; +@property BOOL isResponseRequested; // @synthesize isResponseRequested=_isResponseRequested; +@property BOOL hasBeenProcessed; // @synthesize hasBeenProcessed=_hasBeenProcessed; +@property BOOL isOutOfDate; // @synthesize isOutOfDate=_isOutOfDate; +@property BOOL isAllDayEvent; // @synthesize isAllDayEvent=_isAllDayEvent; +@property(copy) NSDate *endDate; // @synthesize endDate=_endDate; +@property(copy) NSDate *startDate; // @synthesize startDate=_startDate; +@property(copy) NSString *uid; // @synthesize uid=_uid; +@property(copy) NSString *location; // @synthesize location=_location; +@property(copy) NSString *associatedCalendarItemIdString; // @synthesize associatedCalendarItemIdString=_associatedCalendarItemIdString; +@property(copy) NSString *originalReceivedAccountURLString; // @synthesize originalReceivedAccountURLString=_originalReceivedAccountURLString; +- (void).cxx_destruct; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryIMAPMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryIMAPMessage.h new file mode 100644 index 00000000..4a3d2450 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryIMAPMessage.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MCMessageHeaders; + +@interface MFLibraryIMAPMessage : MFLibraryMessage +{ + MCMessageHeaders *_headers; +} + +- (void).cxx_destruct; +- (id)account; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (void)setHeaders:(id)arg1; +- (id)headers; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryIMAPStore.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryIMAPStore.h new file mode 100644 index 00000000..a4b0f038 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryIMAPStore.h @@ -0,0 +1,179 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "IMAPMailboxDelegate.h" +#import "IMAPMessageDataSource.h" + +@class IMAPCommandPipeline, IMAPDownloadCache, IMAPMailbox, IMAPMailboxSyncEngine, MCInvocationQueue, NSLock, NSMutableArray, NSMutableDictionary, NSString; + +@interface MFLibraryIMAPStore : MFRemoteStore +{ + NSString *_mailboxName; + IMAPMailbox *_IMAPMailbox; + IMAPDownloadCache *_downloadCache; + IMAPCommandPipeline *_fetchPipeline; + IMAPMailboxSyncEngine *_syncEngine; + NSLock *_copyLock; + NSMutableArray *_pendingCompacts; + MCInvocationQueue *_pendingCompactsQueue; + NSMutableDictionary *_recentFlagChangesByMessageID; + NSMutableArray *_recentlyDeletedMessageIDs; + BOOL _readyToDealloc; + BOOL _isOpenedByUser; + BOOL _supportsCustomPermanentFlags; + unsigned long long _totalCount; +} + ++ (id)_newDataFromMimePart:(id)arg1 threshold:(unsigned long long)arg2; +@property(nonatomic) BOOL supportsCustomPermanentFlags; // @synthesize supportsCustomPermanentFlags=_supportsCustomPermanentFlags; +@property unsigned long long totalCount; // @synthesize totalCount=_totalCount; +@property BOOL isOpenedByUser; // @synthesize isOpenedByUser=_isOpenedByUser; +- (void).cxx_destruct; +- (void)boostExistingFetchTo:(long long)arg1; +- (void)updateSelectedGatewayFromMailbox:(id)arg1; +- (void)_updateUidValidityFromMailbox:(id)arg1; +- (void)_processResponsesFromMailbox:(id)arg1; +- (void)_updateCountFromMailbox:(id)arg1 fromIDLE:(id)arg2; +- (void)updateComputedHighestModificationSequence:(unsigned long long)arg1 forMailbox:(id)arg2; +- (unsigned long long)computedHighestModificationSequenceForMailbox:(id)arg1; +- (unsigned long long)allegedHighestModificationSequenceForMailbox:(id)arg1; +- (void)updateUidValidityFromMailbox:(id)arg1; +- (void)processResponsesFromMailbox:(id)arg1; +- (void)updateCountFromMailbox:(id)arg1 fromIDLE:(BOOL)arg2; +- (id)offlineCacheIfOffline; +- (id)_offlineCache; +- (id)account; +- (id)messagesBeingRouted; +- (id)downloadCache; +- (id)fetchPipeline; +- (void)_setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; +- (void)messagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3 options:(id)arg4; +- (BOOL)isSortedAscending; +- (id)sortOrder; +- (void)writeUpdatedMessageDataToDisk; +- (id)_deletedMessages; +- (id)_copyOfAllMessagesSortedByUidWithOptions:(unsigned int)arg1; +- (void)setUid:(unsigned int)arg1 forMessageWithTemporaryUid:(unsigned int)arg2; +- (id)copyOfOldCachedMessagesContentsForUid:(unsigned int)arg1; +- (BOOL)hasValidCacheFileForUid:(unsigned int)arg1; +- (BOOL)hasValidCacheFileForMessage:(id)arg1; +- (id)_preferredOrderForFetchingMessageBodies:(id)arg1; +- (void)forceResync; +- (void)_retrieveNewMessagesForCheckingNewMail:(BOOL)arg1; +- (void)setComputedHighestModificationSequence:(unsigned long long)arg1; +- (void)setAllegedHighestModificationSequence:(unsigned long long)arg1; +- (unsigned long long)allegedHighestModificationSequence; +- (void)setUidNextStatus:(unsigned int)arg1; +- (unsigned int)uidNextStatus; +- (void)setUidValidityStatus:(unsigned int)arg1; +- (unsigned int)uidValidityStatus; +- (id)_uidIndexSetForMessages:(id)arg1; +- (void)startSynchronization; +- (id)_gatewayCreateIfNeeded:(BOOL)arg1 options:(unsigned long long)arg2; +- (id)copyOfAllMessagesWithOptions:(unsigned int)arg1; +- (id)copyIncompleteMessages; +- (id)copyMessagesWithTemporaryUids; +- (BOOL)canSetMessageColors; +- (void)setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; +- (id)messageWithRemoteID:(id)arg1 inRemoteMailbox:(id)arg2; +- (id)duplicateMessages:(id)arg1 newRemoteIDs:(id)arg2 newDocumentIDs:(id)arg3 forMailbox:(id)arg4 setFlags:(long long)arg5 clearFlags:(long long)arg6 createNewCacheFiles:(BOOL)arg7; +- (id)duplicateMessages:(id)arg1 newRemoteIDs:(id)arg2 newDocumentIDs:(id)arg3 forMailbox:(id)arg4 setFlags:(long long)arg5 clearFlags:(long long)arg6 messageFlagsForMessages:(id)arg7 createNewCacheFiles:(BOOL)arg8; +- (id)messagesForMailbox:(id)arg1 where:(id)arg2 sortedBy:(id)arg3 ascending:(BOOL)arg4 options:(unsigned int)arg5; +- (void)compactMailbox:(id)arg1; +- (unsigned long long)totalCountOfMessages; +- (id)getDetailsForMessagesWithRemoteIDs:(id)arg1; +- (unsigned int)maximumRemoteID; +- (id)messageForMessageID:(id)arg1; +- (id)colorForMessage:(id)arg1; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_waitForDataFromDownload:(id)arg1 uid:(unsigned int)arg2 gateway:(id)arg3; +- (id)fetchAndCacheBodyDataForMessages:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (BOOL)_hasCachedDataForMimePart:(id)arg1 message:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (id)_fetchDataForMimePart:(id)arg1 keepInMemory:(BOOL)arg2 writeToDisk:(BOOL)arg3; +- (id)_dataForMessage:(id)arg1 readHeadersOnly:(BOOL)arg2; +- (id)messagesWithRowIDs:(id)arg1; +- (id)messageWithLibraryID:(long long)arg1 options:(unsigned int)arg2; +- (id)messageWithDefaultLoadOptionsAndRowID:(long long)arg1; +@property(readonly, nonatomic) BOOL persistentIDType; +- (void)syncEngineDidSynchronizeMessageList; +- (void)_internalSetFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2 updatingServer:(BOOL)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)_synchronouslyStoreLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2 updatingServer:(BOOL)arg3; +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)recentFlagChangesForRowID:(id)arg1; +- (void)_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)_synchronouslyStoreFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (BOOL)messagesAreBeingAdded; +- (void)addMessages:(id)arg1; +- (id)newDictionaryForLocalFlags:(unsigned int)arg1 serverFlags:(unsigned int)arg2 existingDictionary:(id)arg3; +- (long long)undoAppendOfMessageIDs:(id)arg1; +- (id)_uidSearchForMessageIds:(id)arg1 destinationUidNext:(unsigned int)arg2 withGateway:(id)arg3; +- (long long)_appendToServerWithContext:(id)arg1 error:(id *)arg2; +- (BOOL)_copyMessagesByID:(id)arg1 toStore:(id)arg2 settingFlags:(id)arg3 newMessages:(id)arg4 error:(id *)arg5; +- (void)_copyFlagsFromMessages:(id)arg1 flagsByMessage:(id)arg2 toMessagesWithUids:(id)arg3 withGateway:(id)arg4 usedFlags:(id)arg5; +- (BOOL)allowsOverwrite; +- (BOOL)allowsAppend; +- (id)messagesBeingAdded; +- (void)undeleteMessagesWithRemoteIDs:(id)arg1; +- (void)deleteLastMessageWithHeaders:(id)arg1 compactWhenDone:(BOOL)arg2; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (void)compactMessagesFromSyncEngine:(id)arg1; +- (void)compactMessages:(id)arg1; +- (void)_processPendingCompacts; +- (void)doCompact; +- (BOOL)canCompact; +- (id)mailbox; +- (id)mailboxName; +- (void)removeAllLocalMessages; +- (BOOL)canRebuild; +- (void)_handleStoreFinishedFirstTimeSync:(id)arg1; +- (void)syncEngineDidFinish; +- (void)syncEngineDidStart; +- (void)doRoutineCleanup; +- (void)cleanupSynchronously; +- (void)fetchSynchronouslyForKnownChanges; +- (void)fetchSynchronously; +- (void)checkNewMail; +- (void)_fetchForCheckingNewMail:(BOOL)arg1; +- (BOOL)isAllMailMailbox; +- (BOOL)isInbox; +- (BOOL)_shouldCallCompactWhenClosing; +- (void)invalidateSyncEngine; +- (void)_invalidate; +- (BOOL)setStoreState:(int)arg1 fromState:(int)arg2; +- (id)willDeallocPerformingInStoreCacheLock:(char *)arg1; +- (void)openSynchronouslyWithoutUserInteraction; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (void)_openSynchronouslyUpdatingMetadata:(BOOL)arg1 withOptions:(unsigned long long)arg2; +- (void)openAsynchronously; +- (id)messagesForImporter; +@property(readonly) BOOL isReadOnly; +- (unsigned int)_permanentFlags; +- (BOOL)_isSynchronized; +- (BOOL)_isRebuildingOrSynchronizing; +- (id)_copyMailboxSyncEngineCreateIfNecessary:(BOOL)arg1 setupGatewayIfNecessary:(BOOL)arg2; +- (id)_IMAPMailbox; +- (void)dealloc; +- (id)initWithCriterion:(id)arg1 mailbox:(id)arg2 readOnly:(BOOL)arg3; +- (id)objectSpecifierForMessage:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryInterface-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryInterface-Protocol.h new file mode 100644 index 00000000..b2ede79e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryInterface-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MFLibraryInterface ++ (id)urlForMailboxID:(long long)arg1; ++ (long long)mailboxIDForMailbox:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryMessage.h new file mode 100644 index 00000000..bc25bbf2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryMessage.h @@ -0,0 +1,138 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +#import "IMAPMessage.h" +#import "IMAPPersistedMessage.h" +#import "MCPersistentIDFetching.h" + +@class MFLibraryCalendarEvent, MFLibraryStore, NSString; + +@interface MFLibraryMessage : MCMessage +{ + long long _libraryID; + MFLibraryStore *_dataSource; + NSString *_remoteID; + int _isCachingBodyAndHeaders; + unsigned int _uid; + CDStruct_07ba05d6 _remoteFlags; + BOOL _hasSetCalendarEvent; + BOOL _hasSetReferences; + BOOL _isBeingChanged; + BOOL _isCompacted; + int _conversationPosition; + unsigned int _options; + long long _conversationID; + long long _mailboxID; + long long _originalMailboxID; + unsigned long long _size; +} + ++ (id)fetchedMessageWithRowID:(long long)arg1; ++ (id)messageWithPersistentID:(id)arg1; ++ (id)messageWithLibraryID:(long long)arg1; ++ (id)messageWithURL:(id)arg1; ++ (id)messagesWithURL:(id)arg1; ++ (id)_residentMessageForLibraryID:(long long)arg1; ++ (void)_removeMessageFromResidentMessagesWithLibraryID:(long long)arg1; ++ (id)_addMessageToResidentMessages:(id)arg1 overridingPreviousMessage:(BOOL)arg2; ++ (id)residentMessages; ++ (void)initialize; +@property BOOL isCompacted; // @synthesize isCompacted=_isCompacted; +@property unsigned int primitiveOptions; // @synthesize primitiveOptions=_options; +@property BOOL isBeingChanged; // @synthesize isBeingChanged=_isBeingChanged; +@property unsigned long long size; // @synthesize size=_size; +@property long long originalMailboxID; // @synthesize originalMailboxID=_originalMailboxID; +@property long long mailboxID; // @synthesize mailboxID=_mailboxID; +@property int conversationPosition; // @synthesize conversationPosition=_conversationPosition; +@property long long conversationID; // @synthesize conversationID=_conversationID; +- (void).cxx_destruct; +- (id)spotlightAttributesIncludingText:(BOOL)arg1; +- (void)_cacheMessageBodyDataIfPossible:(id)arg1; +- (id)_cachedMessageBodyData; +- (void)_cacheMessageBodyIfPossible:(id)arg1; +- (id)_cachedMessageBody; +- (void)_cacheHeaderDataIfPossible:(id)arg1; +- (id)_cachedHeaderData; +- (void)_cacheHeadersIfPossible:(id)arg1; +- (id)_cachedHeaders; +- (void)uncacheBodyAndHeader; +- (void)cacheBodyAndHeader; +- (void)appendData:(id)arg1 part:(id)arg2; +- (void)setData:(id)arg1 isPartial:(BOOL)arg2; +- (void)setAttachmentFilenames:(id)arg1; +- (void)_calculateAttachmentInfoFromBody:(id)arg1; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (void)setRemoteID:(const char *)arg1 documentID:(id)arg2 flags:(long long)arg3 size:(unsigned long long)arg4 mailboxID:(long long)arg5 originalMailboxID:(long long)arg6 color:(char *)arg7 conversationID:(long long)arg8 conversationPosition:(int)arg9; +- (id)preferredEmailAddressToReplyWith; +- (id)account; +- (id)path; +- (id)_extendedDescriptionWithSubject:(BOOL)arg1; +- (id)extendedDescription; +@property(readonly, copy) NSString *description; +- (void)reload; +- (BOOL)endChanging:(BOOL)arg1 immediately:(BOOL)arg2; +- (void)beginChanging; +- (void)_commitLater; +- (void)commit; +- (void)setColor:(id)arg1 hasBeenEvaluated:(BOOL)arg2 flags:(unsigned int)arg3 mask:(unsigned int)arg4; +- (void)setLibraryColor:(char *)arg1; +- (void)setColor:(id)arg1; +- (void)setColorHasBeenEvaluated:(BOOL)arg1; +- (void)setFlags:(long long)arg1; +- (void)setMessageFlags:(unsigned int)arg1 mask:(unsigned int)arg2; +- (id)mailboxName; +@property BOOL hasTemporaryUid; +@property BOOL partsHaveBeenCached; +- (BOOL)isPartialMessageBodyAvailable; +- (BOOL)isMessageContentLocallyAvailable; +@property BOOL isPartial; +- (BOOL)loadOptionsSuffice:(unsigned int)arg1; +@property unsigned int options; +- (void)setUid:(unsigned int)arg1; +- (unsigned int)uid; +- (CDStruct_07ba05d6)remoteFlags; +- (void)setIMAPFlags:(CDStruct_07ba05d6)arg1; +@property(readonly) unsigned long long hash; +- (BOOL)isEqual:(id)arg1; +- (id)remoteID; +- (void)setRemoteID:(id)arg1; +- (void)_setRemoteID:(id)arg1; +- (void)_updateUID; +- (id)mailbox; +- (id)primitiveDataSource; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (id)_unlockedMessageStore; +- (void)setMessageSize:(unsigned long long)arg1; +- (unsigned long long)messageSize; +- (id)inReplyToHeaderDigest; +- (id)messageIDHeaderDigest; +- (id)to; +- (BOOL)supportsSnippets; +- (id)sender; +- (id)subject; +@property(retain) MFLibraryCalendarEvent *calendarEvent; +- (void)setReferences:(id)arg1; +- (id)references; +- (BOOL)type; +- (id)originalMailboxURLString; +- (id)documentID; +- (long long)libraryID; +- (id)persistentID; +@property(readonly, nonatomic) BOOL persistentIDType; +- (id)messageID; +- (void)dealloc; +- (id)init; +- (id)initWithLibraryID:(long long)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryQueries.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryQueries.h new file mode 100644 index 00000000..3ff1a341 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryQueries.h @@ -0,0 +1,27 @@ +/* + * 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" + +@interface MFLibraryQueries : NSObject +{ +} + ++ (char *)queryToDeleteEventByMessageID:(id)arg1; ++ (int)bindUpdateEventStatement:(id)arg1 withEvent:(id)arg2 messageID:(long long)arg3; ++ (id)checkOutStatementToUpdateEvent:(id)arg1; ++ (int)bindInsertEventStatement:(id)arg1 withEvent:(id)arg2 messageID:(long long)arg3; ++ (id)checkOutStatementToInsertEvent:(id)arg1; ++ (id)checkOutStatementForEventWithMessageID:(long long)arg1 usingDB:(id)arg2; ++ (id)checkOutStatementForMailboxURLFromMailboxID:(long long)arg1 usingDB:(id)arg2; ++ (id)fromClauseForTables:(unsigned long long)arg1 startingFromTableExpression:(id)arg2; ++ (id)checkOutStatementToCompletelyUpdateMessage:(id)arg1; ++ (id)checkOutStatementToInsertMessage:(id)arg1; ++ (char *)queryToFindCopiesOfMessage:(char *)arg1 sentOn:(unsigned long long)arg2 receivedOn:(unsigned long long)arg3 withSize:(unsigned long long)arg4; ++ (char *)queryForUniquingDataForMessageNumber:(long long)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryStore.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryStore.h new file mode 100644 index 00000000..fc9e4835 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryStore.h @@ -0,0 +1,124 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFLibraryStoreMessageConsumer, MFMessageCriterion, NSMutableArray, NSMutableSet, NSString; + +@interface MFLibraryStore : MFMessageStore +{ + id _openOptionsLock; + unsigned int _openOptions; + NSMutableSet *_memberMessageIDs; + NSMutableArray *_allMessagesDuringOpening; + id _consumerLock; + MFLibraryStoreMessageConsumer *_consumer; + BOOL _startedWatcher; + NSString *_url; + MFMessageCriterion *_criterion; + long long _filesystemWatcherCookie; +} + ++ (BOOL)storeAtPathIsWritable:(id)arg1; ++ (BOOL)createEmptyStoreForPath:(id)arg1; ++ (id)filterMessages:(id)arg1 throughSmartMailbox:(id)arg2; ++ (id)sharedInstance; ++ (unsigned int)defaultLoadOptions; ++ (void)initialize; +@property(nonatomic) long long filesystemWatcherCookie; // @synthesize filesystemWatcherCookie=_filesystemWatcherCookie; +@property BOOL startedWatcher; // @synthesize startedWatcher=_startedWatcher; +@property(retain) MFMessageCriterion *criterion; // @synthesize criterion=_criterion; +@property(copy) NSString *url; // @synthesize url=_url; +- (void).cxx_destruct; +- (BOOL)hasCacheFileForMessage:(id)arg1 directoryContents:(id)arg2; +- (BOOL)hasCacheFileForMessage:(id)arg1 part:(id)arg2 directoryContents:(id)arg3; +- (id)cacheDirectoryContents; +- (BOOL)messageHasBeenDeleted:(id)arg1; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (BOOL)_updateFlagForMessage:(id)arg1 key:(id)arg2 value:(BOOL)arg3; +- (id)_setOrGetValue:(id)arg1 forKey:(id)arg2 inCache:(id *)arg3; +- (void)_invalidateObjectCachesForKey:(id)arg1; +- (unsigned long long)_numberOfMessagesToCache; +- (void)_rebuildTableOfContentsSynchronously; +- (void)rebuildTableOfContentsAsynchronously; +- (void)_flushAllMessageData; +- (void)_cancelAutosave; +- (void)_setNeedsAutosave; +- (void)updateMetadata; +- (void)writeUpdatedMessageDataToDisk; +- (id)dataForMimePart:(id)arg1; +- (id)messagesForDocumentID:(id)arg1; +- (id)recentMessageWithValue:(id)arg1 forHeader:(id)arg2; +- (void)deleteLastMessageWithHeaders:(id)arg1 compactWhenDone:(BOOL)arg2; +- (id)lastMessageWithHeaders:(id)arg1 inMailbox:(id)arg2; +- (id)duplicateCopiesOfMessages:(id)arg1 withDocumentIDs:(id)arg2 excludingMessageIDs:(id)arg3; +- (id)duplicateCopiesOfMessages:(id)arg1; +- (void)doCompact; +- (BOOL)_shouldCallCompactWhenClosing; +- (BOOL)canCompact; +- (long long)undoAppendOfMessageIDs:(id)arg1; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; +- (BOOL)allowsOverwrite; +- (BOOL)allowsAppend; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (void)_cancelQueryAndClearConsumer:(BOOL)arg1; +- (void)cancelQuery; +- (void)cancelOpen; +- (void)cleanupSynchronously; +- (void)dealloc; +- (void)_invalidate; +- (void)_messagesUpdated:(id)arg1; +- (void)_messagesCompacted:(id)arg1; +- (void)_messageFlagsChanged:(id)arg1; +- (void)messagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3 options:(id)arg4; +- (void)_messagesAddedToLibrary:(id)arg1; +- (void)_setFlagsAndColorForMessages:(id)arg1; +- (void)setFlagsAndColorForMessages:(id)arg1; +- (id)async_setLocalFlagsForMessages:(id)arg1; +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (id)filterMessagesByMembership:(id)arg1; +- (id)mutableCopyOfAllMessages; +- (void)_asynchronousCopyOfAllMessagesWithOptions:(id)arg1; +- (void)asynchronousCopyOfAllMessagesWithOptions:(id)arg1; +- (id)copyOfAllMessagesWithOptions:(unsigned int)arg1; +- (id)copyOfAllMessages; +- (unsigned long long)totalCount; +- (unsigned int)_openOptions; +- (void)cleanupAsynchronously; +- (id)openSynchronouslyUpdatingMetadata:(BOOL)arg1 returnRetainedMessages:(BOOL)arg2; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (BOOL)_shouldUpdateColorsAndAttachmentsAfterOpening; +- (void)openAsynchronouslyWithOptions:(unsigned int)arg1; +- (void)libraryFinishedSendingMessagesToLibraryStoreMessageConsumer:(id)arg1; +- (id)notificationMessagesFromOpen; +- (void)newMessagesAvailable:(id)arg1 conversationsMembers:(id)arg2 fromLibraryStoreMessageConsumer:(id)arg3 options:(id)arg4; +- (void)_updateCriterionFromMailbox:(id)arg1; +- (long long)mailboxID; +- (void)reset; +- (id)initWithAccount:(id)arg1; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2 createEmptyStore:(BOOL)arg3; +- (id)initWithMailbox:(id)arg1; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2; +- (id)initWithCriterion:(id)arg1; +- (id)init; +- (BOOL)_criterionContainsGmailLabelCriterion:(id)arg1; +- (id)initWithCriterion:(id)arg1 mailbox:(id)arg2 readOnly:(BOOL)arg3; +- (id)objectSpecifierForMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryStoreMessageConsumer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryStoreMessageConsumer.h new file mode 100644 index 00000000..0c16a5ad --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryStoreMessageConsumer.h @@ -0,0 +1,41 @@ +/* + * 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 "MFMessageConsumer.h" + +@class MCInvocationQueue, MFLibraryStore, NSString; + +@interface MFLibraryStoreMessageConsumer : NSObject +{ + BOOL _shouldCancel; + long long _collectorID; + MFLibraryStore *_libraryStore; + MCInvocationQueue *_callbackQueue; +} + +@property(readonly, nonatomic) MCInvocationQueue *callbackQueue; // @synthesize callbackQueue=_callbackQueue; +@property(nonatomic) __weak MFLibraryStore *libraryStore; // @synthesize libraryStore=_libraryStore; +@property BOOL shouldCancel; // @synthesize shouldCancel=_shouldCancel; +@property long long collectorID; // @synthesize collectorID=_collectorID; +- (void).cxx_destruct; +- (void)finishedSendingMessages; +- (void)searchPhaseComplete; +- (id)libraryNotificationMessages; +- (id)libraryNotificationObject; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByConversationID:(id)arg2 options:(id)arg3; +- (void)clearLibraryStoreWeakReference; +- (id)initWithLibraryStore:(id)arg1 useCallbackQueue:(BOOL)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryThread.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryThread.h new file mode 100644 index 00000000..a6321f08 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryThread.h @@ -0,0 +1,36 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityMonitor, NSMapTable, NSMutableArray, NSString; + +@interface MFLibraryThread : NSObject +{ + NSMutableArray *_requests; + MCActivityMonitor *_monitor; + NSMapTable *_storeReqCounts; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void).cxx_destruct; +- (BOOL)isAddingMessagesToStore:(id)arg1; +- (id)messagesBeingAddedToStore:(id)arg1; +- (void)addMessages:(id)arg1 toStore:(id)arg2; +- (void)_runThread; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryUpgrader.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryUpgrader.h new file mode 100644 index 00000000..9cd7db1b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLibraryUpgrader.h @@ -0,0 +1,164 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityAggregate, MCActivityMonitor, MFSqliteHandle, NSString; + +@interface MFLibraryUpgrader : NSObject +{ + MFSqliteHandle *_handle; + BOOL _readOnly; + BOOL _shouldRecalculateConversations; + BOOL _shouldUpdateSubjectPrefixes; + BOOL _shouldResetSnippets; + BOOL _shouldRecalculateMessageCounts; + BOOL _shouldUpdateSpotlightAttributes; + BOOL _shouldUpdateMailboxURLs; + BOOL _shouldResetPasswords; + BOOL _shouldResetChangeIdentifierForGmailAccounts; + BOOL _shouldNormalizeMailboxPaths; + BOOL _shouldResetDynamicAccountConfiguration; + BOOL _shouldRemoveMailboxesWithAbsoluteURLs; + id _delegate; + MCActivityMonitor *_monitor; + NSString *_migrationDestinationPath; + unsigned long long _initialLastWriteMinorVersion; + id _activityToken; + unsigned long long _majorVersion; + unsigned long long _minorVersion; + MCActivityAggregate *_activity; + struct sqlite3 *_upgraderDB; +} + ++ (void)initialize; +@property(nonatomic) struct sqlite3 *upgraderDB; // @synthesize upgraderDB=_upgraderDB; +@property(retain, nonatomic) MCActivityAggregate *activity; // @synthesize activity=_activity; +@property(nonatomic) unsigned long long minorVersion; // @synthesize minorVersion=_minorVersion; +@property(nonatomic) unsigned long long majorVersion; // @synthesize majorVersion=_majorVersion; +@property(retain, nonatomic) id activityToken; // @synthesize activityToken=_activityToken; +@property(nonatomic) unsigned long long initialLastWriteMinorVersion; // @synthesize initialLastWriteMinorVersion=_initialLastWriteMinorVersion; +@property(nonatomic) BOOL shouldRemoveMailboxesWithAbsoluteURLs; // @synthesize shouldRemoveMailboxesWithAbsoluteURLs=_shouldRemoveMailboxesWithAbsoluteURLs; +@property(nonatomic) BOOL shouldResetDynamicAccountConfiguration; // @synthesize shouldResetDynamicAccountConfiguration=_shouldResetDynamicAccountConfiguration; +@property(nonatomic) BOOL shouldNormalizeMailboxPaths; // @synthesize shouldNormalizeMailboxPaths=_shouldNormalizeMailboxPaths; +@property(nonatomic) BOOL shouldResetChangeIdentifierForGmailAccounts; // @synthesize shouldResetChangeIdentifierForGmailAccounts=_shouldResetChangeIdentifierForGmailAccounts; +@property(nonatomic) BOOL shouldResetPasswords; // @synthesize shouldResetPasswords=_shouldResetPasswords; +@property(nonatomic) BOOL shouldUpdateMailboxURLs; // @synthesize shouldUpdateMailboxURLs=_shouldUpdateMailboxURLs; +@property(nonatomic) BOOL shouldUpdateSpotlightAttributes; // @synthesize shouldUpdateSpotlightAttributes=_shouldUpdateSpotlightAttributes; +@property(nonatomic) BOOL shouldRecalculateMessageCounts; // @synthesize shouldRecalculateMessageCounts=_shouldRecalculateMessageCounts; +@property(nonatomic) BOOL shouldResetSnippets; // @synthesize shouldResetSnippets=_shouldResetSnippets; +@property(nonatomic) BOOL shouldUpdateSubjectPrefixes; // @synthesize shouldUpdateSubjectPrefixes=_shouldUpdateSubjectPrefixes; +@property(nonatomic) BOOL shouldRecalculateConversations; // @synthesize shouldRecalculateConversations=_shouldRecalculateConversations; +@property(copy, nonatomic) NSString *migrationDestinationPath; // @synthesize migrationDestinationPath=_migrationDestinationPath; +@property(retain, nonatomic) MCActivityMonitor *monitor; // @synthesize monitor=_monitor; +@property(nonatomic) BOOL readOnly; // @synthesize readOnly=_readOnly; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (void)upgradeSignaturesFromLion; +- (void)upgradeSmartMailboxesFromLion; +- (void)upgradeRulesFromLion; +- (void)upgradeMailDataIfNecessary; +- (long long)_getSQLTableCount:(const char *)arg1 usingDB:(struct sqlite3 *)arg2; +- (void)_stampCurrentMinorVersion; +- (void)_executeSQL:(id)arg1 updateMinorVersion:(unsigned long long)arg2; +- (BOOL)_needsRun; +- (BOOL)_canRun:(id *)arg1; +- (void)_bootstrapVersioningEngine; +- (void)_getVersionInfo; +- (void)_unlockWriterDB:(struct sqlite3 *)arg1; +- (struct sqlite3 *)_getWriterDB; +- (void)_unlockReaderDB:(struct sqlite3 *)arg1; +- (struct sqlite3 *)_getReaderDB; +- (id)_handle; +- (void)_setHandle:(id)arg1; +- (void)resetProgressItemsWithTotal:(unsigned long long)arg1 andStatusMessage:(id)arg2; +- (void)incrementProgressIndicatorWithThreshold:(unsigned long long)arg1; +- (void)incrementProgressIndicator; +- (void)setProgressItemTotal:(unsigned long long)arg1; +- (void)_resetConfigureDynamically; +- (void)_resetPasswords; +- (void)_fakeLibraryUpgraderStep; +- (void)_normalizeMailboxPathComponentsInMboxCache; +- (void)_resetConversationsForExistingMessages; +- (void)_resetSnippetColumn; +- (BOOL)_calculateInternationalSubjectPrefixes; +- (void)updateFavoritePersistentIdentifierUnicodeComposition; +- (void)_updateMailboxURLUnicodeComposition; +- (id)_copySpotlightAttributesWithDateSent:(int)arg1 dateReceived:(int)arg2 dateLastViewed:(int)arg3 read:(int)arg4 libraryFlags:(long long)arg5 messageID:(const char *)arg6 subject:(id)arg7 displayName:(id)arg8 senderName:(id)arg9 senderAddress:(id)arg10 recipientNames:(id)arg11 recipientAddresses:(id)arg12; +- (id)_urlStringForMailboxDirectory:(id)arg1 account:(id)arg2 levelFromAccountDirectory:(unsigned long long)arg3; +- (void)_getRecipientsForMessageWithLibraryID:(long long)arg1 recipientNames:(id)arg2 recipientAddresses:(id)arg3 dbHandle:(id)arg4; +- (void)_setSpotlightAttributesForEMLXFilesInMailbox:(id)arg1 mailboxURLString:(id)arg2; +- (void)_updateSpotlightAttributes; +- (void)_removeMailboxesWithAbsoluteURLs; +- (void)_resetChangeIdentifierForGmailAccounts; +- (void)_fixLocalMailboxes:(unsigned long long)arg1; +- (void)_fixShadowEMLXFilesForAccount:(id)arg1; +- (void)_fixShadowEMLXFiles; +- (id)_mailboxURLStringsForAccount:(id)arg1; +- (BOOL)_accountIsGmailAccount:(id)arg1; +- (void)_upgradeFromSUMountainCalypsoToMavericks; +- (void)_upgradeFromMountainLionToSUMountainCalypso; +- (void)makeAppleScriptReferencesInRulesUseOnlyLastPathComponent; +- (void)_fixEWSFoldersTable; +- (void)fixMailDownloadsMigrationKey; +- (void)_startMigratorServiceForAppleScriptFilesAndRules; +- (void)upgradeAppleScriptFilesAndRules; +- (void)_startMigratorServiceForMailDownloads; +- (void)upgradeMailDownloadsFiles; +- (void)_removeDuplicateRSSAccounts; +- (void)_cleanUpSyncedData; +- (void)_removeSyncedFilesMetadata; +- (void)_moveSyncedFilesToLocal; +- (BOOL)_removeMessageTypeFromSmartMailbox:(id)arg1 localProperties:(id)arg2; +- (void)_removeMessageTypeFromSmartMailboxes; +- (void)_removeMessageTypeFromRules; +- (void)_combineVIPSendersPlists; +- (void)_addFileExtensionToSignatures; +- (void)_changeSignatureBundleLayout; +- (void)_changeSignaturesLayout; +- (void)_changeSmartMailboxesLayout; +- (void)_changeRulesLayout; +- (void)_upgradeFromLionToMountainLion; +- (void)_updateSmartMailboxUnreadMessagesForMailboxes:(id)arg1; +- (void)_updateSmartMailboxUnreadMessages; +- (void)_migrateTasksToLocalCalendar; +- (void)_upgradeFromSUSnowFeltToLion; +- (void)_upgradeFromSnowLeopardToSUSnowFelt; +- (void)_upgradeFromLeopardToSnowLeopard; +- (void)_updateCoalescedAddressReferences; +- (void)_populateRecipientPosition; +- (void)_upgradeFromTigerToLeopard; +- (void)_useWALJournalingIfPossible; +- (void)_vacuum; +- (void)_createNewDatabaseObjects; +- (void)_upgradeSchema; +- (void)_upgradeSchemaFromBackBooting; +- (void)_dropTriggers; +- (void)_firstLoginDidTimeout; +- (void)run; +- (void)_removeToDos:(unsigned long long)arg1; +- (BOOL)validateMigrationPath:(id)arg1; +- (BOOL)isComplexMigrationToV2; +- (BOOL)shouldMigrateToV2; +- (void)_evaluateAccountsForMigration; +- (BOOL)_allAccountsAreOnSameFSAsLibraryMail; +- (id)unresolvedAccountPaths; +- (void)resetEvaluationOfAccountsForMigration; +- (BOOL)_shouldDisplayDisturbingAndVagueWarningAboutMigrationToUser; +- (long long)libraryStatus; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLocalAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLocalAccount.h new file mode 100644 index 00000000..9c2fde5e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLocalAccount.h @@ -0,0 +1,66 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFLocalAccount : MFMailAccount +{ +} + ++ (id)accountTypeString; ++ (id)defaultPathNameForAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)defaultPathNameForAccount; ++ (id)localAccount; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (BOOL)supportsAppleScript; +- (BOOL)hasTrashMailbox; +- (BOOL)isRemoteAccount; +- (BOOL)isZeroConfiguration; +- (BOOL)providesAccountInformation; +- (BOOL)canParticipateInRules; +- (BOOL)isEditableByUser; +- (id)todosMailbox; +- (id)_specialMailboxRelativePathForType:(int)arg1; +- (BOOL)synchronizesDataWithServer; +- (id)_infoForMatchingURL:(id)arg1; +- (id)_URLPersistenceScheme; +- (id)rootlessMailboxForFileSystemPath:(id)arg1; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (BOOL)renameMailbox:(id)arg1 newDisplayName:(id)arg2 parent:(id)arg3; +- (id)createMailboxWithParent:(id)arg1 displayName:(id)arg2 error:(id *)arg3; +- (id)createMailboxWithParent:(id)arg1 displayName:(id)arg2 localizedDisplayName:(id)arg3; +- (id)pathForMailboxWithParent:(id)arg1 displayName:(id)arg2; +- (BOOL)deleteConvertsStoreToFolder; +- (BOOL)supportsNormalContainerOnlyMailboxes; +- (BOOL)_setChildren:(id)arg1 forMailbox:(id)arg2; +- (id)_copyMailboxWithParent:(id)arg1 name:(id)arg2 pathComponent:(id)arg3 attributes:(unsigned long long)arg4 existingMailbox:(id)arg5 uuid:(id)arg6; +- (void)_synchronouslyLoadListingForParent:(id)arg1; +- (BOOL)shouldMoveDeletedMessagesToTrash; +- (long long)emptyTrashFrequency; +- (void)_readCustomInfoFromMailboxCache:(id)arg1; +- (void)setIsWillingToGoOnline:(BOOL)arg1; +- (BOOL)isWillingToGoOnline; +- (void)setIsOffline:(BOOL)arg1; +- (BOOL)isOffline; +- (BOOL)shouldAutoFetch; +- (BOOL)canFetch; +- (void)setPassword:(id)arg1; +- (id)password; +- (void)setUsername:(id)arg1; +- (void)setHostname:(id)arg1; +- (void)setConfigureDynamically:(BOOL)arg1; +- (BOOL)configureDynamically; +- (id)displayName; +- (id)defaultsDictionary; +- (id)primaryMailbox; +- (id)mailboxPathExtension; +- (Class)storeClassForMailbox:(id)arg1; +- (id)identifier; +- (id)rootMailbox; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLocationManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLocationManager.h new file mode 100644 index 00000000..a880cbe8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFLocationManager.h @@ -0,0 +1,38 @@ +/* + * 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" + +@class MCInvocationQueue, MFNetworkLocation, NSMutableArray; + +@interface MFLocationManager : NSObject +{ + NSMutableArray *_locations; + BOOL _supressNotifications; + MFNetworkLocation *_current; + MCInvocationQueue *_invocationQueue; +} + ++ (id)currentLocation; ++ (id)sharedManager; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) MCInvocationQueue *invocationQueue; // @synthesize invocationQueue=_invocationQueue; +@property(retain) MFNetworkLocation *current; // @synthesize current=_current; +- (void).cxx_destruct; +- (id)_archivedLocations; +- (void)_unarchiveLocations:(id)arg1; +- (void)_managedLocationChanged:(id)arg1; +- (void)_determineCurrentLocation; +- (void)_networkChanged:(id)arg1; +- (id)locationForIPAddress:(id)arg1; +- (id)locationForDomain:(id)arg1; +- (void)addLocation:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithUserDefaultsArray:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailAccount.h new file mode 100644 index 00000000..b83b38ba --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailAccount.h @@ -0,0 +1,402 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "MCAccountSetupValidatorDelegate.h" +#import "MCActivityTarget.h" +#import "MCMailAccount.h" +#import "MFMessageDelivererDelegate.h" +#import "NSFileManagerDelegate.h" + +@class MCAccountSetupValidator, MCAuthScheme, MCError, MFMailbox, NSArray, NSString, NSTimer, NSURL; + +@interface MFMailAccount : MFAccount +{ + id _mailAccountLock; + NSString *_path; + id _mailboxLock; + MFMailbox *_inboxMailbox; + MFMailbox *_rootMailbox; + MFMailbox *_draftsMailbox; + MFMailbox *_sentMessagesMailbox; + MFMailbox *_trashMailbox; + MFMailbox *_junkMailbox; + MFMailbox *_notesMailbox; + MFMailbox *_todosMailbox; + MFMailbox *_outboxMailbox; + MFMailbox *_archiveMailbox; + MCError *_lastConnectionError; + id _cacheChangeLock; + NSTimer *_cacheWriteTimer; + id _backgroundActivityFlagsLock; + BOOL _backgroundFetchInProgress; + BOOL _cacheHasBeenRead; + BOOL _mailboxListInitializationInProgress; + BOOL _needsChecking; + MCAccountSetupValidator *_validator; +} + ++ (id)keyPathsForValuesAffecting_URLPersistenceHostname; ++ (id)_outboxMailbox; ++ (void)_setOutboxMailbox:(id)arg1; ++ (id)_mailboxNameForPathComponent:(id)arg1; ++ (id)_pathComponentForMailboxName:(id)arg1; ++ (void)_postMailAccountsHaveChanged; ++ (id)_accountWithPath:(id)arg1 relativePath:(id *)arg2; ++ (void)_enableMailboxListingNotifications:(BOOL)arg1; ++ (void)_disableMailboxListingNotifications; ++ (BOOL)_mailboxListingNotificationAreEnabled; ++ (void)setAllEmailAddresses:(id)arg1 withFullUserNames:(id)arg2; ++ (BOOL)_mailAccountsAreInitialized; ++ (void)_normalizePathComponentsInMailboxesDictionary:(id)arg1 accountClass:(Class)arg2; ++ (void)normalizeMailboxPathComponentsInAllAccounts; ++ (id)mailboxForURL:(id)arg1 forceCreation:(BOOL)arg2 syncableURL:(BOOL)arg3; ++ (id)accountWithURLString:(id)arg1 includeInactiveAccounts:(BOOL)arg2; ++ (id)accountWithURLString:(id)arg1; ++ (id)URLForInfo:(id)arg1; ++ (id)infoForURL:(id)arg1; ++ (id)_accountForURL:(id)arg1; ++ (id)accountWithSyncableURLString:(id)arg1 includeInactiveAccounts:(BOOL)arg2; ++ (id)_accountForURL:(id)arg1 includeInactiveAccounts:(BOOL)arg2; ++ (void)_inferMissingCanonicalEmailAddressesForAccounts:(id)arg1 usingEmailAddresses:(id)arg2; ++ (void)inferMissingCanonicalEmailAddresses; ++ (void)deleteMailboxIfEmpty:(id)arg1; ++ (id)mailboxForFileSystemPath:(id)arg1 create:(BOOL)arg2; ++ (void)resetAllSpecialMailboxes; ++ (void)synchronouslyEmptyMailboxType:(int)arg1 inAccounts:(id)arg2; ++ (BOOL)allAccountsDeleteInPlace; ++ (long long)numberOfDaysToKeepLocalTrash; ++ (void)_clearAllAccountBackgroundFetchInProgress; ++ (id)accountsInitializingMailboxList; ++ (void)connectAllAccounts; ++ (void)disconnectAllAccounts; ++ (void)_setOnlineStateOfAllAccountsTo:(BOOL)arg1; ++ (BOOL)isAnyAccountOnline; ++ (BOOL)isAnyAccountOffline; ++ (id)defaultDeliveryAccount; ++ (id)defaultPathNameForAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)defaultPathNameForAccount; ++ (id)defaultAccountDirectory; ++ (id)defaultPathForAccountWithHostname:(id)arg1 username:(id)arg2; ++ (id)newAccountWithPath:(id)arg1; ++ (id)accountWithPath:(id)arg1; ++ (id)allMailboxes; ++ (id)archiveMailboxes; ++ (id)junkMailboxes; ++ (id)draftMailboxes; ++ (id)sentMessagesMailboxes; ++ (id)outboxMailboxes; ++ (id)trashMailboxes; ++ (id)inboxMailboxes; ++ (id)_specialMailboxesUsingBlock:(id)arg1; ++ (id)specialMailboxes; ++ (id)outboxMessageStore:(BOOL)arg1; ++ (id)accountThatReceivedMessage:(id)arg1 matchingEmailAddress:(id *)arg2 fullUserName:(id *)arg3; ++ (id)preferredEmailAddressToReplyToMessage:(id)arg1; ++ (id)addressesThatReceivedMessage:(id)arg1; ++ (id)accountThatMessageIsFrom:(id)arg1; ++ (id)accountUsingHeadersFromMessage:(id)arg1; ++ (id)accountForHeaders:(id)arg1 message:(id)arg2; ++ (id)accountContainingEmailAddress:(id)arg1; ++ (id)_accountContainingEmailAddress:(id)arg1 matchingAddress:(id *)arg2 fullUserName:(id *)arg3; ++ (void)resetAccountExistsForSigning; ++ (BOOL)accountExistsForSigning; ++ (void)_updateAccountExistsForSigning; ++ (BOOL)isEmailAddressInAnyAccount:(id)arg1; ++ (id)allEmailAddressesIncludingFullUserName:(BOOL)arg1; ++ (id)_urlFromObject:(id)arg1; ++ (BOOL)setAccountInfo:(id)arg1 forAccountMatchingInfo:(id)arg2; ++ (id)_accountFromArray:(id)arg1 withType:(id)arg2 hostname:(id)arg3 username:(id)arg4; ++ (id)existingAccountWithType:(id)arg1 hostname:(id)arg2 username:(id)arg3; ++ (id)_accountFromArray:(id)arg1 withIdentifier:(id)arg2; ++ (id)accountWithIdentifier:(id)arg1; ++ (void)migrateUnreadCountInMailboxCache; ++ (void)saveAccountInfoToDefaults; ++ (id)remoteAccounts; ++ (BOOL)onlyGmailAccountsUsingAllMailAsArchiveAreActive; ++ (id)activeAccounts; ++ (id)_activeAccountsFromArray:(id)arg1; ++ (void)_removeAccountFromSortedPaths:(id)arg1; ++ (id)syncManagedAccountWithMCXCreateIfAbsent:(BOOL)arg1; ++ (void)setTotalCountOfMessagesReceived:(unsigned long long)arg1; ++ (unsigned long long)totalCountOfMessagesReceived; ++ (void)setCountOfNewUnreadMessagesReceivedInInbox:(unsigned long long)arg1; ++ (unsigned long long)countOfNewUnreadMessagesReceivedInInbox; ++ (void)setNewUnreadMessagesReceivedInInbox:(BOOL)arg1; ++ (BOOL)newUnreadMessagesReceivedInInbox; ++ (void)accountsWereSynced; ++ (void)setIsActive:(BOOL)arg1 forAccountWithIdentifier:(id)arg2; ++ (id)removeMailAccountFromAccountStorageWithIdentifier:(id)arg1; ++ (void)addMailAccount:(id)arg1; ++ (void)_setMailAccounts:(id)arg1 reloadingFromStorage:(BOOL)arg2; ++ (void)setMailAccounts:(id)arg1; ++ (void)reloadMailAccounts; ++ (id)mailAccounts; ++ (id)allMailAccounts; ++ (id)_mailAccountsIncludingUnknownTypes; ++ (void)_setupSortedPathsForAccounts:(id)arg1; ++ (void)_addAccountToSortedPaths:(id)arg1; ++ (void)completeDeferredAccountInitialization; ++ (BOOL)haveAccountsBeenConfigured; ++ (BOOL)accountsHaveBeenInitialized; ++ (void)initialize; +@property(retain) MCAccountSetupValidator *validator; // @synthesize validator=_validator; +- (void).cxx_destruct; +- (BOOL)_validateIfNeeded; +- (id)iaSettingsIncludingPassword:(BOOL)arg1; +- (id)rootMailboxEvenIfInactive:(BOOL)arg1; +- (id)_mailboxPathPrefix:(BOOL)arg1; +- (id)_URLForInfo:(id)arg1; +- (id)_URLPersistenceHostname; +- (id)_URLExternalConnectionScheme; +- (id)_URLInternalConnectionScheme; +- (id)_URLPersistenceScheme; +- (id)_infoForMatchingURL:(id)arg1; +- (BOOL)_shouldLogDeleteActivity; +- (BOOL)_canEmptyMessagesFromMailbox:(id)arg1; +- (id)_specialMailboxWithType:(int)arg1 create:(BOOL)arg2; +- (id)_specialMailboxRelativePathForType:(int)arg1; +- (void)_setSpecialMailbox:(id)arg1 forType:(int)arg2; +- (void)_setSpecialMailboxRelativePath:(id)arg1 forType:(int)arg2; +- (BOOL)_assignSpecialMailboxToAppropriateIvar:(id)arg1 forType:(int)arg2; +- (id)_defaultSpecialMailboxRelativePathForType:(int)arg1; +- (void)_clearAllPathBasedCachesAndDelete:(BOOL)arg1; +- (void)_emptySpecialMailboxesIfNeededForQuit:(BOOL)arg1; +- (void)_emptySpecialMailboxesIfNeeded; +- (void)backgroundFetchCompleted; +- (void)_fetchSynchronouslyIfNeeded; +- (BOOL)_deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (BOOL)_setChildren:(id)arg1 addedChild:(id)arg2 forMailbox:(id)arg3; +- (BOOL)_setChildren:(id)arg1 forMailbox:(id)arg2; +- (id)_insertMailbox:(id)arg1 intoParent:(id)arg2 withDisplayName:(id)arg3; +- (void)_writeMailboxCache; +- (void)_loadEntriesFromFileSystemPath:(id)arg1 parent:(id)arg2; +- (void)_finishSynchronizingMailboxesAfterImport; +- (void)_synchronizeMailboxListWithFileSystemBeforeImport; +- (void)_synchronizeMailboxListWithFileSystem; +- (void)_synchronizeMailboxListWithFileSystemBeforeImport:(BOOL)arg1; +- (BOOL)_readMailboxCache; +- (BOOL)_usesMailboxCache; +- (void)_mailboxesWereRemovedFromTree:(id)arg1 withFileSystemPaths:(id)arg2; +- (void)_loadMailboxListingIntoCache:(id)arg1 parent:(id)arg2 addedMailboxes:(id)arg3 removedMailboxes:(id)arg4; +- (void)_synchronouslyLoadListingForParent:(id)arg1; +- (id)_copyMailboxWithParent:(id)arg1 name:(id)arg2 pathComponent:(id)arg3 attributes:(unsigned long long)arg4 existingMailbox:(id)arg5; +- (void)_writeCustomInfoToMailboxCache:(id)arg1; +- (void)_readCustomInfoFromMailboxCache:(id)arg1; +- (void)_postMailAccountsHaveChangedIfNeeded; +- (void)setIsActive:(BOOL)arg1; +- (BOOL)_setPath:(id)arg1; +- (void)messageDeliveryDidFinish:(id)arg1; +- (id)delegateApplicationName; +- (void)validatorDidFinish:(id)arg1; +- (void)validatorDidFail:(id)arg1; +- (void)_validatorFailedToAuthenticate:(id)arg1; +- (void)validator:(id)arg1 didChangeState:(long long)arg2; +@property BOOL validationRequired; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (long long)compareIAOrder:(id)arg1; +- (void)respondToHostBecomingReachable; +- (BOOL)storesUnseenCount; +- (BOOL)supportsAppleScript; +- (BOOL)hasTrashMailbox; +- (BOOL)isGmailAccount; +- (BOOL)isRemoteAccount; +- (BOOL)isZeroConfiguration; +- (BOOL)providesAccountInformation; +- (BOOL)canParticipateInRules; +- (BOOL)isEditableByUser; +- (BOOL)synchronizesDataWithServer; +- (id)syncableURLString; +- (id)URLString; +- (id)objectSpecifier; +- (id)objectSpecifierForMailbox:(id)arg1; +- (id)objectSpecifierForMessageStore:(id)arg1; +- (id)valueInMailboxesWithName:(id)arg1; +- (id)mailboxForRelativePath:(id)arg1 isFilesystemPath:(BOOL)arg2 create:(BOOL)arg3; +- (Class)storeClassForMailbox:(id)arg1; +- (id)storeForMailbox:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)storeForMailbox:(id)arg1; +- (void)_autodiscoveredSSLSetting:(id)arg1 portNumberSetting:(id)arg2 otherSettingsChanged:(BOOL)arg3 needToResetMailboxURLs:(BOOL)arg4; +- (BOOL)autodiscoverSettings:(id *)arg1; +- (id)connectionError; +- (void)setConnectionError:(id)arg1; +- (void)accountInfoDidChange; +@property long long portNumber; +@property(copy) NSString *hostname; +@property(copy) NSString *username; +- (void)_resetAllMailboxURLs; +- (void)invalidateChildrenOfMailbox:(id)arg1; +- (BOOL)deleteMailbox:(id)arg1 reflectToServer:(BOOL)arg2; +- (BOOL)renameMailbox:(id)arg1 newDisplayName:(id)arg2 parent:(id)arg3; +- (id)createMailboxWithParent:(id)arg1 displayName:(id)arg2 localizedDisplayName:(id)arg3; +- (id)createMailboxWithParent:(id)arg1 name:(id)arg2; +- (BOOL)deleteConvertsStoreToFolder; +- (BOOL)supportsNormalContainerOnlyMailboxes; +- (BOOL)canMailboxBeDeleted:(id)arg1; +- (BOOL)canMailboxBeRenamed:(id)arg1; +- (id)validNameForMailbox:(id)arg1 fromDisplayName:(id)arg2 error:(id *)arg3; +- (BOOL)supportsSlashesInMailboxName; +- (BOOL)canMoveMailboxes; +- (BOOL)canCreateNewMailboxes; +- (id)mailboxPathExtension; +- (BOOL)resetSpecialMailboxes; +- (BOOL)containsMailboxes; +- (id)displayNameForMailbox:(id)arg1; +@property(copy) NSString *displayName; +- (void)emptySpecialMailboxesThatNeedToBeEmptiedAtQuit; +- (BOOL)canMoveDeletedMessagesToTrash; +- (void)setShouldMoveDeletedMessagesToTrash:(BOOL)arg1; +- (BOOL)shouldMoveDeletedMessagesToTrash; +- (void)setEmptyTrashFrequency:(long long)arg1; +- (long long)emptyTrashFrequency; +- (void)setEmptyJunkFrequency:(long long)arg1; +- (long long)emptyJunkFrequency; +- (void)setEmptySentMessagesFrequency:(long long)arg1; +- (long long)emptySentMessagesFrequency; +- (void)_setEmptyFrequency:(long long)arg1 forKey:(id)arg2; +- (long long)_emptyFrequencyForKey:(id)arg1 defaultValue:(long long)arg2; +- (void)deleteMessagesFromMailbox:(id)arg1 olderThanNumberOfDays:(long long)arg2; +- (void)setToDosMailbox:(id)arg1; +- (void)setArchiveMailbox:(id)arg1; +- (void)setNotesMailbox:(id)arg1; +- (void)setSentMessagesMailbox:(id)arg1; +- (void)setJunkMailbox:(id)arg1; +- (void)setTrashMailbox:(id)arg1; +- (void)setDraftsMailbox:(id)arg1; +- (id)allMailboxesEvenIfInactive:(BOOL)arg1; +- (id)allMailboxes; +- (id)_outboxMailboxCreateIfNeeded:(BOOL)arg1; +- (id)archiveMailboxCreateIfNeeded:(BOOL)arg1; +- (id)trashMailboxCreateIfNeeded:(BOOL)arg1; +- (id)sentMessagesMailboxCreateIfNeeded:(BOOL)arg1; +- (id)junkMailboxCreateIfNeeded:(BOOL)arg1; +- (id)draftsMailboxCreateIfNeeded:(BOOL)arg1; +- (id)inboxMailboxCreateIfNeeded:(BOOL)arg1; +- (BOOL)rootChildrenCanBePromoted; +@property(readonly) BOOL rootMailboxExists; +- (BOOL)mailboxIsRootMailbox:(id)arg1; +- (id)rootMailbox; +- (id)primaryMailbox; +- (void)incrementTotalCountOfMessagesReceived:(unsigned long long)arg1; +- (void)incrementCountOfNewUnreadMessagesReceivedInInbox:(unsigned long long)arg1; +- (void)newUnreadMessagesHaveBeenReceivedInInbox; +- (BOOL)isFetching; +- (void)fetchSynchronouslyIsAuto:(id)arg1; +- (void)fetchSynchronously; +- (void)fetchAsynchronously; +- (void)boostExistingFetchTo:(long long)arg1; +- (void)fetchAsynchronouslyIsAuto:(BOOL)arg1; +- (void)setNeedsChecking; +- (BOOL)needsChecking; +- (void)didInitializeMailboxList; +- (void)willInitializeMailboxList; +- (BOOL)isInitializingMailboxList; +- (BOOL)_supportsMailboxListInitialization; +- (void)synchronizeAllMailboxes; +- (BOOL)canBeSynchronized; +- (BOOL)canAppendMessages; +- (void)startBackgroundSynchronization; +- (id)defaultsDictionary; +- (id)remoteFetchQueue; +- (id)remoteTaskQueue; +- (BOOL)canFetch; +- (void)setIsWillingToGoOnline:(BOOL)arg1; +- (void)setIsOffline:(BOOL)arg1; +- (void)releaseAllConnections; +- (void)setCacheIsDirty:(BOOL)arg1; +- (void)doRoutineCleanup; +- (void)saveCache; +- (void)saveCacheInBackground; +- (void)_setCacheWriteTimer:(id)arg1; +- (void)deleteAccount; +- (void)_synchronouslyInvalidateAndDelete:(BOOL)arg1; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +@property BOOL disableRecentsSync; +- (void)setShouldAutoFetch:(BOOL)arg1; +- (BOOL)shouldAutoFetch; +- (id)emailAliases; +- (void)setApplescriptEmailAddresses:(id)arg1; +- (id)applescriptEmailAddresses; +- (void)setEmailAddresses:(id)arg1; +- (id)emailAddresses; +- (id)rawEmailAddresses; +- (id)firstEmailAddress; +- (void)setDeliveryAccountIsLocked:(BOOL)arg1; +- (BOOL)deliveryAccountIsLocked; +- (void)_mailboxUserInfoDidChange:(id)arg1; +- (void)_deliveryAccountWillBeRemoved:(id)arg1; +- (id)dynamicDeliveryAccount; +- (void)setDeliveryAccount:(id)arg1; +- (id)deliveryAccount; +- (void)setSMTPIdentifier:(id)arg1; +- (id)smtpIdentifier; +- (id)localizedDeliveryAccountIgnoringLockedDelivery:(BOOL)arg1; +@property(readonly, copy) NSString *googleClientToken; +- (void)setFullUserName:(id)arg1; +- (id)fullUserName; +- (void)setApplescriptFullUserName:(id)arg1; +- (id)applescriptFullUserName; +- (id)tildeAbbreviatedPath; +- (id)accountDirectory; +- (void)setPath:(id)arg1; +- (id)path; +- (void)_setAccountInfo:(id)arg1; +- (BOOL)isValid; +- (void)completeDeferredInitialization; +@property(readonly, copy) NSString *description; +- (void)dealloc; +- (id)initWithPath:(id)arg1; +- (id)initWithAccountInfo:(id)arg1; +- (id)allMailMailbox; +- (id)_notesMailboxUnlessUsingLocal; +- (id)_todosMailboxUnlessUsingLocal; +- (id)notesMailbox; +- (id)todosMailbox; +- (BOOL)cheapStoreAtPathIsEmpty:(id)arg1; +- (BOOL)hasEmailAddress:(id)arg1; +- (BOOL)isValidAccountWithError:(id)arg1 accountBeingEdited:(id)arg2 userCanOverride:(char *)arg3; +- (id)backupID; +- (void)setEmptyJunkOnQuit:(BOOL)arg1; +- (BOOL)emptyJunkOnQuit; +- (void)setEmptySentMessagesOnQuit:(BOOL)arg1; +- (BOOL)emptySentMessagesOnQuit; +- (void)setEmptyTrashOnQuit:(BOOL)arg1; +- (BOOL)emptyTrashOnQuit; +- (void)removeFromMailboxesAtIndex:(unsigned long long)arg1; +- (void)insertInMailboxes:(id)arg1; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)replaceInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)mailboxes; +- (id)indicesOfObjectsByEvaluatingObjectSpecifier:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *accountTypeString; +@property BOOL allowInsecureAuthentication; +@property(readonly, copy) NSString *appleAuthenticationToken; +@property(readonly, copy) NSString *applePersonID; +@property(copy) NSString *canonicalEmailAddress; +@property BOOL configureDynamically; +@property(readonly, copy) NSString *debugDescription; +@property(copy) NSString *externalHostname; +@property(readonly) unsigned long long hash; +@property(readonly, copy) NSString *identifier; +@property(copy) NSString *password; +@property(retain) MCAuthScheme *preferredAuthScheme; +@property(readonly, nonatomic) BOOL requiresAuthentication; +@property(readonly, copy, nonatomic) NSString *saslProfileName; +@property long long securityLayerType; +@property BOOL shouldUseAuthentication; +@property(readonly, copy, nonatomic) NSArray *standardPorts; +@property(readonly, copy, nonatomic) NSArray *standardSSLPorts; +@property(readonly) NSURL *subscriptionURL; +@property(readonly, copy) NSString *subscriptionURLLabel; +@property(readonly) Class superclass; +@property BOOL usesSSL; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailDropPreferencesManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailDropPreferencesManager.h new file mode 100644 index 00000000..2d70cf76 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailDropPreferencesManager.h @@ -0,0 +1,23 @@ +/* + * 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" + +@interface MFMailDropPreferencesManager : NSObject +{ +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (BOOL)validateURL:(id)arg1; +@property(readonly, nonatomic) float minMessageSize; +@property(readonly, nonatomic) float maxMessageSize; +@property(readonly, nonatomic) long long attachmentTTL; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailMigrator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailMigrator.h new file mode 100644 index 00000000..fd111376 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailMigrator.h @@ -0,0 +1,99 @@ +/* + * 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 "NSFileManagerDelegate.h" + +@class MFLibraryUpgrader, NSFileManager, NSMutableDictionary, NSMutableSet, NSString; + +@interface MFMailMigrator : NSObject +{ + NSMutableDictionary *_lostItems; + NSMutableSet *_nonFatalAttachmentErrorLibraryIDs; + BOOL _isComplex; + BOOL _isUsingAlternateDestination; + BOOL _isTrackingCleanupProgress; + NSFileManager *_fileManager; + NSString *_supportDirectory; + NSString *_destinationSupportDirectory; + NSString *_tempSupportDirectoryV2; + NSString *_supportDirectoryV2; + NSString *_mailDataDirectoryV2; + NSString *_migrationSuccessfulFilepath; + NSString *_v1ItemsToMigrateFilepath; + NSString *_logDirectory; + NSString *_lostItemsFilepath; + NSString *_lostAndFoundDirectory; + MFLibraryUpgrader *_progressDelegate; + unsigned long long _progressChunkSize; + unsigned long long _messagesProgressCount; + unsigned long long _v1CleanupCount; + unsigned long long _emlxCountPreMigration; + unsigned long long _emlxCountPostMigration; + unsigned long long _lostAndFoundEmlxCount; + unsigned long long _messageCountPreMigration; +} + ++ (BOOL)path:(id)arg1 hasPrefixInArray:(id)arg2; ++ (BOOL)isMigrating; ++ (BOOL)migrateFromV1ToV2Layout:(id)arg1 isComplex:(BOOL)arg2 progressDelegate:(id)arg3; +@property(nonatomic) unsigned long long messageCountPreMigration; // @synthesize messageCountPreMigration=_messageCountPreMigration; +@property(nonatomic) unsigned long long lostAndFoundEmlxCount; // @synthesize lostAndFoundEmlxCount=_lostAndFoundEmlxCount; +@property(nonatomic) unsigned long long emlxCountPostMigration; // @synthesize emlxCountPostMigration=_emlxCountPostMigration; +@property(nonatomic) unsigned long long emlxCountPreMigration; // @synthesize emlxCountPreMigration=_emlxCountPreMigration; +@property(nonatomic) BOOL isTrackingCleanupProgress; // @synthesize isTrackingCleanupProgress=_isTrackingCleanupProgress; +@property(nonatomic) unsigned long long v1CleanupCount; // @synthesize v1CleanupCount=_v1CleanupCount; +@property(nonatomic) unsigned long long messagesProgressCount; // @synthesize messagesProgressCount=_messagesProgressCount; +@property(nonatomic) unsigned long long progressChunkSize; // @synthesize progressChunkSize=_progressChunkSize; +@property(readonly, nonatomic) MFLibraryUpgrader *progressDelegate; // @synthesize progressDelegate=_progressDelegate; +@property(readonly, nonatomic) BOOL isUsingAlternateDestination; // @synthesize isUsingAlternateDestination=_isUsingAlternateDestination; +@property(readonly, nonatomic) BOOL isComplex; // @synthesize isComplex=_isComplex; +@property(readonly, copy, nonatomic) NSString *lostAndFoundDirectory; // @synthesize lostAndFoundDirectory=_lostAndFoundDirectory; +@property(readonly, copy, nonatomic) NSString *lostItemsFilepath; // @synthesize lostItemsFilepath=_lostItemsFilepath; +@property(readonly, copy, nonatomic) NSString *logDirectory; // @synthesize logDirectory=_logDirectory; +@property(readonly, copy, nonatomic) NSString *v1ItemsToMigrateFilepath; // @synthesize v1ItemsToMigrateFilepath=_v1ItemsToMigrateFilepath; +@property(readonly, copy, nonatomic) NSString *migrationSuccessfulFilepath; // @synthesize migrationSuccessfulFilepath=_migrationSuccessfulFilepath; +@property(readonly, copy, nonatomic) NSString *mailDataDirectoryV2; // @synthesize mailDataDirectoryV2=_mailDataDirectoryV2; +@property(readonly, copy, nonatomic) NSString *supportDirectoryV2; // @synthesize supportDirectoryV2=_supportDirectoryV2; +@property(readonly, copy, nonatomic) NSString *tempSupportDirectoryV2; // @synthesize tempSupportDirectoryV2=_tempSupportDirectoryV2; +@property(readonly, copy, nonatomic) NSString *destinationSupportDirectory; // @synthesize destinationSupportDirectory=_destinationSupportDirectory; +@property(readonly, copy, nonatomic) NSString *supportDirectory; // @synthesize supportDirectory=_supportDirectory; +@property(retain, nonatomic) NSFileManager *fileManager; // @synthesize fileManager=_fileManager; +- (void).cxx_destruct; +- (BOOL)_copyWithCompressionFromPath:(id)arg1 toPath:(id)arg2; +- (void)_savePlistFiles:(id)arg1 destinationPath:(id)arg2; +- (void)_saveSubpathsWithAttributesOfDirectoryAtPath:(id)arg1 destinationPath:(id)arg2 symbolicLinks:(id)arg3 mboxCacheFiles:(id)arg4 infoPlistFiles:(id)arg5 outEmlxCount:(unsigned long long *)arg6 outLostFoundEmlxCount:(unsigned long long *)arg7 shouldPersist:(BOOL)arg8; +- (void)_captureDiagnosticsForMigrationOutEmlxCount:(unsigned long long *)arg1 lostFoundEmlxCount:(unsigned long long *)arg2; +- (BOOL)_migrateFromV1ToV2Layout; +- (BOOL)_shouldIgnoreFilename:(id)arg1; +- (void)_migrateMailboxesFromDirectory:(id)arg1 toDirectory:(id)arg2 baseDirectory:(id)arg3 usingUUID:(id)arg4 mailboxCacheDictionary:(id)arg5 accountPrefix:(id)arg6; +- (id)_accountPrefixes; +- (id)_mailboxSuffixes; +- (id)_lostItemsForBaseDirectory:(id)arg1; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtPath:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (void)_handleAttachmentsMigrationResult:(BOOL)arg1 error:(id)arg2 message:(id)arg3 libraryID:(long long)arg4; +- (id)_stringByAppendingV2MailboxSuffix:(id)arg1; +- (BOOL)_directoryExistsAtPath:(id)arg1; +- (BOOL)_string:(id)arg1 hasSuffixInSet:(id)arg2; +- (BOOL)_string:(id)arg1 hasPrefixInSet:(id)arg2; +- (id)_prefixOfString:(id)arg1 fromSet:(id)arg2; +- (void)_messageTraceLibraryData; +- (unsigned long long)_numberOfMessagesInDB; +- (unsigned long long)_numberOfEmlxFiles; +- (unsigned long long)_numberOfEmlxFilesInLostAndFound; +- (void)dealloc; +- (id)initWithDestinationPath:(id)arg1 isComplex:(BOOL)arg2 progressDelegate:(id)arg3; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailbox.h new file mode 100644 index 00000000..44ac5f22 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailbox.h @@ -0,0 +1,271 @@ +/* + * 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 "MCGmailLabel.h" +#import "MCMailbox.h" +#import "MFUIMailbox.h" + +@class MCError, MFCriterion, MFMailAccount, NSArray, NSMutableIndexSet, NSMutableSet, NSString; + +@interface MFMailbox : NSObject +{ + MFMailAccount *_account; + NSMutableSet *_reservedPathComponents; + id _countsLock; + unsigned long long _displayCount; + unsigned long long _unseenCount; + unsigned long long _deletedCount; + BOOL _countsWereLoaded; + struct __CFTree *_tree; + NSString *_pendingNameChange; + BOOL _isSmartMailbox; + id _criteriaLock; + NSArray *_criteria; + long long _criteriaState; + NSString *_realFullPath; + unsigned long long _numberOfVisibleChildren; + NSMutableIndexSet *_visibleChildrenIndexes; + NSArray *_sortedChildren; + BOOL _sortedChildrenAreUpToDate; + BOOL _failedToOpen; + MCError *_openFailureError; + id _displayIndexLock; + unsigned long long _displayIndex; + BOOL _isManuallySorted; + BOOL _isVisibleFlaggedMailbox; + id _dontIndexFlagLock; + BOOL _dontIndexFlagWritten; + id _typeAndRepresentedAccountLock; + MFMailAccount *_representedAccount; + int _type; + id _attributesLock; + unsigned long long _attributes; + id _deletionLock; + BOOL _deletionInProgress; + BOOL _storeIsReadOnly; + BOOL _uuidUpdatedInDatabase; + BOOL _respectsMailboxExclusions; + BOOL _needsToSaveMailboxName; + BOOL _allCriteriaMustBeSatisfied; + BOOL _isPublicOrShared; + long long _smartMailboxVersion; + NSString *_syncId; + NSString *_name; + NSString *_pathComponent; + long long _unreadCountQueryObserverID; + NSString *_uuid; +} + ++ (void)queueUpdateCountsForMailboxes:(id)arg1; ++ (void)setCanMarkUserInfoAsDirty:(BOOL)arg1; ++ (void)setShouldIndexJunk:(BOOL)arg1; ++ (void)reimportJunk; ++ (void)setShouldIndexTrash:(BOOL)arg1; ++ (BOOL)typeIsGeneric:(int)arg1; ++ (id)displayNameForMessage:(id)arg1 mailboxCriteria:(id)arg2; ++ (id)_mailboxesFromCriterion:(id)arg1; ++ (id)mailboxFromPath:(id)arg1; ++ (id)mailboxWithPersistentIdentifier:(id)arg1; ++ (BOOL)mailboxTypeAllowsDeduplication:(int)arg1; ++ (BOOL)mailboxTypeIsAlwaysUnread:(int)arg1; ++ (BOOL)mailboxTypeAllowsConversations:(int)arg1; ++ (BOOL)isSmartMailboxDictionaryCompatible:(id)arg1; ++ (id)smartMailboxesEnumeratorIncludingFlagMailboxes:(BOOL)arg1 VIPSenderMailboxes:(BOOL)arg2; ++ (id)smartMailboxWithIdentifier:(id)arg1; ++ (id)_smartMailboxWithIdentifier:(id)arg1 inArray:(id)arg2; ++ (void)removeAllSmartMailboxPlaceholders; ++ (void)addSmartMailboxPlaceholder:(id)arg1; ++ (id)smartMailboxPlaceholders; ++ (void)setSmartMailboxes:(id)arg1; ++ (id)smartMailboxes; ++ (void)setRefreshUnreadCountOnSelect:(BOOL)arg1; ++ (BOOL)refreshUnreadCountOnSelect; ++ (BOOL)logMailboxUUIDErrors; ++ (void)initialize; +@property BOOL isPublicOrShared; // @synthesize isPublicOrShared=_isPublicOrShared; +@property BOOL allCriteriaMustBeSatisfied; // @synthesize allCriteriaMustBeSatisfied=_allCriteriaMustBeSatisfied; +@property BOOL needsToSaveMailboxName; // @synthesize needsToSaveMailboxName=_needsToSaveMailboxName; +@property(copy) NSString *uuid; // @synthesize uuid=_uuid; +@property BOOL respectsMailboxExclusions; // @synthesize respectsMailboxExclusions=_respectsMailboxExclusions; +@property BOOL uuidUpdatedInDatabase; // @synthesize uuidUpdatedInDatabase=_uuidUpdatedInDatabase; +@property long long unreadCountQueryObserverID; // @synthesize unreadCountQueryObserverID=_unreadCountQueryObserverID; +@property(copy) NSString *pathComponent; // @synthesize pathComponent=_pathComponent; +@property(copy) NSString *name; // @synthesize name=_name; +@property BOOL storeIsReadOnly; // @synthesize storeIsReadOnly=_storeIsReadOnly; +@property(copy) NSString *syncId; // @synthesize syncId=_syncId; +@property long long smartMailboxVersion; // @synthesize smartMailboxVersion=_smartMailboxVersion; +- (void).cxx_destruct; +- (void)_VIPSendersChanged:(id)arg1; +- (void)_addressBookDidChange:(id)arg1; +- (BOOL)isEqualToSmartMailbox:(id)arg1; +- (BOOL)isValidDestinationMailbox; +- (BOOL)isPlaceholder; +- (BOOL)allowsMoveDeletedMessagesToTrash; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)setFailedToOpen:(BOOL)arg1 error:(id)arg2; +- (id)openFailureError; +- (BOOL)failedToOpen; +- (BOOL)isStoreReadOnlyCreateIfNeeded:(BOOL)arg1; +- (id)storeCreateIfNeeded:(BOOL)arg1; +- (id)store; +- (void)setMessageCounts:(id)arg1; +@property(readonly) unsigned long long deletedCount; +- (void)setDisplayCount:(unsigned long long)arg1; +- (unsigned long long)displayCount; +- (BOOL)_isNormalMailbox; +- (BOOL)criteriaAreValid:(id *)arg1; +- (id)_abGroupsUsedInCriteria; +- (id)modifiedVIPCriterionForInboxOnly; +@property(readonly) MFCriterion *criterion; +- (id)_mailboxExclusionCriteria; +- (void)flushCriteria; +- (void)setCriteria:(id)arg1; +- (id)criteria; +- (id)_ancestralAccount; +- (void)setUserInfoIsDirty:(BOOL)arg1; +- (BOOL)_userInfoIsDirty; +- (void)_saveMailboxesWithDirtyUserInfoWithDelay; +- (void)_saveMailboxesWithDirtyUserInfo; +- (void)setUserInfoWithDictionary:(id)arg1; +- (id)userInfoDictionary; +- (void)saveUserInfo; +- (void)assignNewUUID; +- (void)forceSaveUserInfo; +- (void)setUserInfoBool:(BOOL)arg1 forKey:(id)arg2; +- (BOOL)userInfoBoolForKey:(id)arg1; +- (void)setUserInfoObject:(id)arg1 forKey:(id)arg2; +- (id)userInfoObjectForKey:(id)arg1; +- (void)_userInfoDidLoad:(id)arg1; +- (id)_loadUserInfo; +@property(readonly) BOOL hasFirstTimeSyncBeenDetermined; +@property BOOL isFirstTimeSync; +- (void)_updateDontIndexFlagFile; +- (BOOL)isIndexable; +- (void)setPrimitiveAttributes:(unsigned long long)arg1; +@property unsigned long long attributes; +- (BOOL)isVisible; +- (BOOL)preferredMessageType; +- (void)setPrimitiveType:(int)arg1; +@property int type; +@property(readonly, copy) NSString *description; +- (BOOL)isStoreConvertibleToFolder; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (BOOL)isDescendantOfMailbox:(id)arg1; +- (unsigned long long)indexToInsertChildMailbox:(id)arg1; +- (id)_URLStringIsSyncable:(BOOL)arg1; +- (id)syncableURLString; +- (id)URLString; +- (id)_URLStringWithAccount:(id)arg1; +- (id)URL; +- (id)pathRelativeToMailbox:(id)arg1; +- (id)tildeAbbreviatedPath; +- (id)realFullPath; +- (id)fullPath; +- (id)accountRelativeFilesystemPath; +- (id)accountRelativePath; +- (id)_stringByAppendingPathComponentsToAccountPath:(id)arg1 relativeToTree:(struct __CFTree *)arg2 generateFileSystemPath:(BOOL)arg3; +- (BOOL)isAllMailMailbox; +- (BOOL)isGmailImportantLabel; +- (BOOL)isPlainSmartMailbox; +- (BOOL)isSpecialMailbox; +- (BOOL)isStore; +- (BOOL)isContainer; +- (void)invalidate; +- (BOOL)isValid; +- (id)applescriptAccount; +- (id)accountURLString; +- (id)account; +- (id)representedAccount; +- (void)setRepresentedAccount:(id)arg1; +- (id)deepCopy; +- (void)_saveMailboxNameIfNeeded; +- (BOOL)hasAlternateParent; +- (void)setParent:(id)arg1; +- (id)parent; +- (void)sortChildren; +- (void)invalidateChildren; +- (BOOL)setChildren:(id)arg1; +- (void)_deleteChildrenWithURLsIfInvalid:(id)arg1 fullPaths:(id)arg2; +- (id)mailboxComparatorWithAccount:(SEL)arg1; +- (id)mutableCopyOfChildrenIncludingHiddenChildren:(BOOL)arg1 hidingGmail:(BOOL)arg2; +- (id)mutableCopyOfChildren; +- (id)unusedChildPathComponent:(id)arg1; +- (id)childWithPathComponent:(id)arg1; +- (id)childWithName:(id)arg1; +- (unsigned long long)indexOfChild:(id)arg1; +- (BOOL)isValidGmailLabel; +- (BOOL)isGmailWhiteMailboxOrDescendant:(BOOL)arg1; +- (id)_gmailWhiteMailboxChild; +- (id)sortedChildAtIndex:(unsigned long long)arg1 hidingGmail:(BOOL)arg2; +- (id)visibleChildAtIndex:(unsigned long long)arg1; +- (id)childAtIndex:(unsigned long long)arg1; +- (unsigned long long)numberOfChildren; +- (id)depthFirstEnumerator; +- (id)childEnumeratorIncludingHiddenChildren:(BOOL)arg1; +- (id)childEnumerator; +- (unsigned long long)numberOfSortedChildrenHidingGmail:(BOOL)arg1; +- (unsigned long long)numberOfVisibleChildrenHidingGmail:(BOOL)arg1; +- (void)_updateSortedChildrenIfNeeded; +- (unsigned long long)suggestedDisplayIndexForChildMailbox:(id)arg1 hidingGmail:(BOOL)arg2; +@property BOOL isVisibleFlaggedMailbox; +@property BOOL isManuallySorted; +- (BOOL)displayIndexCanBeModified; +@property unsigned long long displayIndex; +- (void)_invalidateVisibleChildrenCaches; +- (BOOL)hasChildren; +- (id)children; +@property(readonly, nonatomic) BOOL hasMessages; +- (unsigned long long)unseenCount; +- (BOOL)unseenCountIsKnown; +- (void)notifyForUnreadCount:(unsigned long long)arg1 andOldUnreadCount:(unsigned long long)arg2; +- (void)_enqueueUnreadCountChangeNotification; +- (void)setName:(id)arg1 pathComponent:(id)arg2; +- (BOOL)canBeRenamed; +- (void)setPendingNameChange:(id)arg1; +- (id)labelName; +- (id)genericDisplayName; +- (id)displayName; +- (id)displayNameUsingAccountNameIfSpecial:(BOOL)arg1; +- (id)extendedDisplayName; +- (void)prepareForDeletion; +- (void)cancelUnreadCountQuery; +- (id)representedMailbox; +- (id)dictionaryRepresentation; +- (id)persistentIdentifier; +- (id)initWithDictionaryRepresentation:(id)arg1 copyUUID:(BOOL)arg2; +- (id)initWithMailbox:(id)arg1; +- (id)initWithName:(id)arg1 pathComponent:(id)arg2 attributes:(unsigned long long)arg3 forAccount:(id)arg4; +- (id)initWithName:(id)arg1 attributes:(unsigned long long)arg2 forAccount:(id)arg3; +- (id)initWithAccount:(id)arg1; +- (id)init; +- (void)dealloc; +- (BOOL)isSmartMailboxExpressibleInTigerSchema; +- (long long)smartMailboxEncodingVersion; +- (void)_registerForSmartMailboxNotification; +@property BOOL isSmartMailbox; +- (id)backupID; +- (long long)backupType; +- (BOOL)isPointedToBySmartMailbox:(id)arg1; +- (BOOL)isPointedToBySmartMailbox:(id)arg1 traversedMailboxes:(id)arg2; +- (BOOL)isPointedToByCriterion:(id)arg1 traversedMailboxes:(id)arg2; +- (id)valueInMessagesWithUniqueID:(id)arg1; +- (void)setMailboxName:(id)arg1; +- (id)mailboxName; +- (void)removeFromMessagesAtIndex:(unsigned long long)arg1; +- (id)messages; +- (id)applescriptChildren; +- (id)applescriptContainer; +- (id)objectSpecifier; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailboxDirectoryScanner.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailboxDirectoryScanner.h new file mode 100644 index 00000000..5059ead4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMailboxDirectoryScanner.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface MFMailboxDirectoryScanner : NSObject +{ +} + ++ (void)enumerateMailboxesAtDirectory:(id)arg1 usingBlock:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageAddressee.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageAddressee.h new file mode 100644 index 00000000..4ef400e7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageAddressee.h @@ -0,0 +1,33 @@ +/* + * 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" + +@class NSString; + +@interface MFMessageAddressee : NSObject +{ + NSString *_displayName; + NSString *_address; + id _message; + NSString *_type; +} + +@property(readonly, copy, nonatomic) NSString *type; // @synthesize type=_type; +@property(retain, nonatomic) id message; // @synthesize message=_message; +- (void).cxx_destruct; +- (id)objectSpecifier; +- (void)setAddress:(id)arg1; +- (id)address; +- (void)setDisplayName:(id)arg1; +- (id)displayName; +- (id)formattedAddress; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (id)initWithDisplayName:(id)arg1 address:(id)arg2 type:(id)arg3 message:(id)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageConsumer-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageConsumer-Protocol.h new file mode 100644 index 00000000..15fe9d44 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageConsumer-Protocol.h @@ -0,0 +1,20 @@ +/* + * 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" + +@protocol MFMessageConsumer +@property(readonly) BOOL shouldCancel; +- (void)finishedSendingMessages; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByConversationID:(id)arg2 options:(id)arg3; + +@optional +- (id)libraryNotificationMessages; +- (id)libraryNotificationObject; +- (void)newMessagesAvailable:(id)arg1 conversationMembers:(id)arg2; +- (void)searchPhaseComplete; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageContext.h new file mode 100644 index 00000000..606d60d5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageContext.h @@ -0,0 +1,29 @@ +/* + * 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" + +@class NSOperationQueue; + +@interface MFMessageContext : NSObject +{ + NSOperationQueue *_filesystemQueue; + NSOperationQueue *_waitingQueue; +} + ++ (id)sharedContext; +@property(readonly, nonatomic) NSOperationQueue *waitingQueue; // @synthesize waitingQueue=_waitingQueue; +@property(readonly, nonatomic) NSOperationQueue *filesystemQueue; // @synthesize filesystemQueue=_filesystemQueue; +- (void).cxx_destruct; +- (id)async_cacheHeaderAndBodyForMessage:(id)arg1 monitor:(id)arg2; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageCounts.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageCounts.h new file mode 100644 index 00000000..a408e7c3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageCounts.h @@ -0,0 +1,27 @@ +/* + * 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" + +@interface MFMessageCounts : NSObject +{ + unsigned long long _totalCount; + unsigned long long _unreadCount; + unsigned long long _unseenCount; + unsigned long long _deletedCount; + unsigned long long _unreadAdjustedForDuplicates; +} + +@property(readonly, nonatomic) unsigned long long unreadAdjustedForDuplicates; // @synthesize unreadAdjustedForDuplicates=_unreadAdjustedForDuplicates; +@property(readonly, nonatomic) unsigned long long deletedCount; // @synthesize deletedCount=_deletedCount; +@property(readonly, nonatomic) unsigned long long unseenCount; // @synthesize unseenCount=_unseenCount; +@property(readonly, nonatomic) unsigned long long unreadCount; // @synthesize unreadCount=_unreadCount; +@property(readonly, nonatomic) unsigned long long totalCount; // @synthesize totalCount=_totalCount; +- (id)description; +- (id)initWithTotal:(unsigned long long)arg1 unread:(unsigned long long)arg2 unseen:(unsigned long long)arg3 deleted:(unsigned long long)arg4 unreadAdjustedForDuplicates:(unsigned long long)arg5; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageCriterion.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageCriterion.h new file mode 100644 index 00000000..7a45392a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageCriterion.h @@ -0,0 +1,96 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface MFMessageCriterion : MFCriterion +{ + NSString *_originalGroupUniqueID; + long long _specialMailboxTypeCode; + NSString *_groupUniqueID; +} + ++ (id)stringForCriterionType:(long long)arg1; ++ (long long)criterionTypeForString:(id)arg1; ++ (void)_updateAddressDisplayNames:(id)arg1; ++ (id)messagesInConversationCriterionWithConversationIDs:(id)arg1; ++ (void)initialize; +@property(copy) NSString *groupUniqueID; // @synthesize groupUniqueID=_groupUniqueID; +@property long long specialMailboxTypeCode; // @synthesize specialMailboxTypeCode=_specialMailboxTypeCode; +- (void).cxx_destruct; +- (BOOL)containsAddressBookCriteria; +- (BOOL)containsRelativeDateCriteria; +- (BOOL)containsMessageIsNotInATrashMailboxCriterion; +- (BOOL)containsIncludeConversationsCriterion; +- (BOOL)containsLastViewedDateCriterion; +- (BOOL)_containsCriterion:(long long)arg1; +- (id)criterionByExpandingSpecialMailboxCriterion; +- (id)criterionByExpandingGroup; +- (id)emailAddressesForGroupCriterion; +- (id)emailAddressesForVIPCriterion; +- (BOOL)containsSpotlightCriterion; +- (BOOL)isValid:(id *)arg1 options:(unsigned int)arg2; +- (BOOL)hasQualifier; +- (BOOL)allowsEmptyExpression; +- (BOOL)hasExpression; +- (BOOL)evaluateMessage:(id)arg1; +- (BOOL)_evaluateMessage:(id)arg1 fetchBody:(BOOL)arg2 needsBody:(char *)arg3; +- (BOOL)doesMessageSatisfyRuleEvaluationCriterion:(id)arg1 fetchBody:(BOOL)arg2 needsBody:(char *)arg3; +- (BOOL)_evaluateFlaggedStatusCriterion:(id)arg1; +- (BOOL)_evaluateSpecialMailboxCriterion:(id)arg1; +- (BOOL)_mailboxURLString:(id)arg1 satisfiesQualifier:(long long)arg2 forExpression:(id)arg3; +- (BOOL)_evaluateGmailLabelCriterion:(id)arg1; +- (BOOL)_evaluateMailboxCriterion:(id)arg1; +- (BOOL)_evaluateFlagCriterion:(id)arg1; +- (BOOL)_evaluateCompoundCriterion:(id)arg1; +- (BOOL)_evaluateAttachmentTypeCriterion:(id)arg1 fetchBody:(BOOL)arg2 needsBody:(char *)arg3; +- (BOOL)_evaluateAttachmentCriterion:(id)arg1 fetchBody:(BOOL)arg2 needsBody:(char *)arg3; +- (BOOL)_evaluateJunkMailCriterion:(id)arg1 fetchBody:(BOOL)arg2 needsBody:(char *)arg3; +- (BOOL)_evaluateJunkMailHeaders:(id)arg1; +- (BOOL)_evaluatePriorityIsLowCriterion:(id)arg1; +- (BOOL)_evaluatePriorityIsHighCriterion:(id)arg1; +- (BOOL)_evaluatePriorityIsNormalCriterion:(id)arg1; +- (BOOL)_evaluateMessageTypeCriterion:(id)arg1; +- (BOOL)_evaluateIsEncryptedCriterion:(id)arg1; +- (BOOL)_evaluateIsDigitallySignedCriterion:(id)arg1; +- (BOOL)_evaluateFullNameCriterion:(id)arg1; +- (BOOL)_evaluateAddressHistoryCriterion:(id)arg1; +- (BOOL)_evaluateAccountCriterion:(id)arg1; +- (BOOL)_evaluateMemberOfVIPSendersCriterion:(id)arg1; +- (BOOL)_evaluateMemberOfGroupCriterion:(id)arg1; +- (BOOL)_doesGroup:(id)arg1 containSender:(id)arg2; +- (BOOL)_evaluateAddressBookCriterion:(id)arg1; +- (BOOL)_evaluateBodyCriterion:(id)arg1 fetchBody:(BOOL)arg2 needsBody:(char *)arg3; +- (BOOL)_evaluateHeaderCriterion:(id)arg1; +- (BOOL)_evaluateDateCriterion:(id)arg1; +- (void)addHeadersRequiredForRoutingToArray:(id)arg1; +- (id)_headersRequiredForEvaluation; +- (id)recursiveGroupUniqueIDs; +- (void)setCriterionIdentifier:(id)arg1; +- (id)dictionaryRepresentation; +- (BOOL)isEquivalent:(id)arg1; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +@property(readonly, copy) NSString *originalGroupUniqueID; +- (id)initWithDictionary:(id)arg1 andRemoveRecognizedKeysIfMutable:(BOOL)arg2; +- (id)SQLExpressionWithContext:(CDStruct_c53ccb4e *)arg1 depth:(unsigned long long)arg2 enclosingSmartMailboxes:(id)arg3; +- (BOOL)isExpressibleInTigerSchema; +- (BOOL)hasNumberCriterion; +- (id)criterionByMergingSpotlightCriteria; +- (id)fixOnceWithExpandedSmartMailboxes:(id)arg1 forSpotlight:(BOOL)arg2; +- (void)setRuleExpression:(id)arg1; +- (id)ruleExpression; +- (void)setRuleQualifier:(unsigned int)arg1; +- (unsigned int)ruleQualifier; +- (void)setRuleHeader:(id)arg1; +- (id)ruleHeader; +- (void)setRuleType:(unsigned int)arg1; +- (unsigned int)ruleType; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageDeliverer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageDeliverer.h new file mode 100644 index 00000000..e7ce6944 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageDeliverer.h @@ -0,0 +1,46 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCMessage, MFDeliveryAccount, NSString; + +@interface MFMessageDeliverer : NSObject +{ + MFDeliveryAccount *_account; + id _messageStore; + BOOL _askForReadReceipt; + id _delegate; + MCMessage *_message; + long long _deliveryStatus; +} + ++ (BOOL)deliverMessage:(id)arg1; ++ (BOOL)deliverMessage:(id)arg1 askForReadReceipt:(BOOL)arg2; ++ (id)newWithMessage:(id)arg1; +@property(nonatomic) long long deliveryStatus; // @synthesize deliveryStatus=_deliveryStatus; +@property(retain, nonatomic) MCMessage *message; // @synthesize message=_message; +@property(nonatomic) BOOL askForReadReceipt; // @synthesize askForReadReceipt=_askForReadReceipt; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (long long)deliverMessageHeaderData:(id)arg1 bodyData:(id)arg2 toRecipients:(id)arg3; +- (long long)deliverSynchronously; +- (void)deliverAsynchronously; +- (id)_headersForDeliveryFromHeaders:(id)arg1; +- (id)headersForDelivery; +@property(retain, nonatomic) MFDeliveryAccount *account; +- (id)initWithMessage:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageDelivererDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageDelivererDelegate-Protocol.h new file mode 100644 index 00000000..9e58f441 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageDelivererDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol MFMessageDelivererDelegate +- (void)messageDeliveryDidFinish:(id)arg1; + +@optional +- (void)messageDeliveryWillBegin:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageReplyGenerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageReplyGenerator.h new file mode 100644 index 00000000..d701a236 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageReplyGenerator.h @@ -0,0 +1,33 @@ +/* + * 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" + +@class MCMutableMessageHeaders, MUIWebDocumentView, NSString; + +@interface MFMessageReplyGenerator : NSObject +{ + MUIWebDocumentView *_documentView; + id _completionHandler; + NSString *_contentToAdd; + NSString *_attributionLine; + MCMutableMessageHeaders *_messageHeaders; + MFMessageReplyGenerator *_me; +} + +@property(retain, nonatomic) MFMessageReplyGenerator *me; // @synthesize me=_me; +@property(retain, nonatomic) MCMutableMessageHeaders *messageHeaders; // @synthesize messageHeaders=_messageHeaders; +@property(copy, nonatomic) NSString *attributionLine; // @synthesize attributionLine=_attributionLine; +@property(copy, nonatomic) NSString *contentToAdd; // @synthesize contentToAdd=_contentToAdd; +@property(copy, nonatomic) id completionHandler; // @synthesize completionHandler=_completionHandler; +@property(retain, nonatomic) MUIWebDocumentView *documentView; // @synthesize documentView=_documentView; +- (void).cxx_destruct; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)generateMessageWithType:(unsigned long long)arg1 originalMessage:(id)arg2 newContent:(id)arg3 forwardHeaders:(id)arg4 completionHandler:(id)arg5; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageRouter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageRouter.h new file mode 100644 index 00000000..1708acaf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageRouter.h @@ -0,0 +1,120 @@ +/* + * 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 "MCActivityTarget.h" + +@class MFMessageStore, NSConditionLock, NSMutableArray, NSString; + +@interface MFMessageRouter : NSObject +{ + NSMutableArray *_queuedMessages; + NSConditionLock *_queuedMessagesFull; + NSConditionLock *_queuedMessagesEmpty; + NSConditionLock *_queuedMessagesRouting; + unsigned long long _bytesInQueue; + unsigned long long _queueSize; + BOOL _routingThreadShouldQuit; + BOOL _isUserAction; + MFMessageStore *_store; + unsigned long long _numMessagesRoutedSoFar; + unsigned long long _numMessagesToBeRouted; +} + ++ (void)saveRulesIfNeeded; ++ (id)syncedRulesSyncedFile; ++ (void)addInvitationsToCalendarFromMessages:(id)arg1; ++ (void)setAddInvitationsToCalendarAutomatically:(BOOL)arg1; ++ (BOOL)_addICalRule; ++ (BOOL)addInvitationsToCalendarAutomatically; ++ (void)applyRulesAsynchronouslyToMailboxes:(id)arg1; ++ (void)_applyRulesToMailboxes:(id)arg1; ++ (id)junkMailHeaderFlags; ++ (void)setJunkMailTrustHeaders:(BOOL)arg1; ++ (BOOL)junkMailTrustHeaders; ++ (void)setJunkMailEvaluationAfterRules:(BOOL)arg1; ++ (BOOL)junkMailEvaluationAfterRules; ++ (void)reloadRules; ++ (id)_safeToMarkAsNotJunkRule; ++ (id)defaultJunkMailRule; ++ (id)userJunkMailRule; ++ (void)setJunkMailRule:(id)arg1; ++ (id)junkMailRule; ++ (id)_junkMailRuleForBehavior:(long long)arg1 abCriterion:(BOOL)arg2 ahCriterion:(BOOL)arg3 fnCriterion:(BOOL)arg4; ++ (void)routeJunkMessagesInMailboxes:(id)arg1; ++ (void)_ensureJunkRuleBehaviorMatchesPreference; ++ (void)evaluateJunkMailBehaviorFromRules; ++ (void)setJunkMailBehavior:(long long)arg1; ++ (long long)junkMailBehavior; ++ (id)colorForMessage:(id)arg1 highlightTextUsingColor:(char *)arg2; ++ (void)_putRulesThatWantsToHandleMessage:(id)arg1 intoArray:(id)arg2 colorRulesOnly:(BOOL)arg3 fetchingBody:(BOOL)arg4 needsBody:(char *)arg5; ++ (void)headersRequiredForRoutingDidChange; ++ (id)headersRequiredForRouting; ++ (void)_mailboxListingChanged:(id)arg1; ++ (void)loadDestinationMailboxes; ++ (void)tryToReconnectAutoDeactivatedRules; ++ (void)_updateUnrecognizedRulesAfterRemovingIndex:(unsigned long long)arg1; ++ (void)_updateUnrecognizedRulesAfterAddingIndex:(unsigned long long)arg1; ++ (void)removeRule:(id)arg1; ++ (void)addRule:(id)arg1; ++ (void)insertRule:(id)arg1 atIndex:(unsigned long long)arg2; ++ (void)removeRuleAtIndex:(unsigned long long)arg1; ++ (id)ruleAtIndex:(unsigned long long)arg1; ++ (unsigned long long)numberOfRules; ++ (id)activeRules; ++ (id)rules; ++ (void)_synchronouslyWriteRulesToDisk; ++ (void)_writeRulesToDiskInBackground; ++ (id)_readRulesFromDisk; ++ (void)_setupSortRules; ++ (id)_sortRuleDictionaryRepresentations; ++ (id)_sortRulesFromDictionaryRepresentations:(id)arg1 junkRule:(id *)arg2 iCalRule:(id *)arg3; ++ (BOOL)_setICalRule:(id)arg1; ++ (id)iCalRule; ++ (id)_defaultSortRules; ++ (id)defaultAppleEmailAddresses; ++ (void)_mailboxWasRenamed:(id)arg1; ++ (void)_accountWillBeDeleted:(id)arg1; ++ (void)_mailboxBecameInvalid:(id)arg1; ++ (void)mailboxWillBeRenamedOrInvalidated; ++ (void)ruleDidChange:(id)arg1; ++ (void)ruleAffectingColorsDidChange:(id)arg1; ++ (BOOL)colorsUpdateDynamically; ++ (BOOL)_colorRuleExistsAfterRule:(id)arg1; ++ (void)enqueueColorRulesDidChange; ++ (void)setColorChangeCounter:(long long)arg1; ++ (long long)colorChangeCounter; ++ (BOOL)_hasColorRules; ++ (void)_iCalSettingChangedFromICal:(id)arg1; ++ (void)_setupAddInvitationDefault; ++ (void)_updateICalRule:(BOOL)arg1; ++ (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; ++ (void)_unScheduleWriteRules; ++ (void)scheduleWriteRules; ++ (void)setWriteRulesTimer:(id)arg1; ++ (id)writeRulesTimer; ++ (void)initialize; +@property(nonatomic) BOOL isUserAction; // @synthesize isUserAction=_isUserAction; +@property(nonatomic) unsigned long long numMessagesToBeRouted; // @synthesize numMessagesToBeRouted=_numMessagesToBeRouted; +@property(nonatomic) unsigned long long numMessagesRoutedSoFar; // @synthesize numMessagesRoutedSoFar=_numMessagesRoutedSoFar; +@property(nonatomic) __weak MFMessageStore *store; // @synthesize store=_store; +- (void).cxx_destruct; +- (void)setEstimatedNumberOfMessagesToRoute:(unsigned long long)arg1; +- (void)waitForRoutingToFinish; +- (void)_routeQueuedMessages; +- (void)asynchronouslyRouteMessages:(id)arg1; +- (id)routeMessages:(id)arg1 fromStores:(id)arg2 fetchingBodies:(BOOL)arg3 messagesNeedingBodies:(id)arg4; +- (BOOL)_routeMessagesIndividually; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageRouterUtilities.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageRouterUtilities.h new file mode 100644 index 00000000..26ab08ac --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageRouterUtilities.h @@ -0,0 +1,22 @@ +/* + * 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" + +@interface MFMessageRouterUtilities : NSObject +{ +} + ++ (void)resetShouldSpotlightIndexJunkLevel; ++ (BOOL)shouldSpotlightIndexJunkLevel; ++ (id)rulesActiveStatePath; ++ (id)unsyncedRulesPath; ++ (id)syncedRulesPath; ++ (id)sortRulesPath; ++ (id)rulesConflictResolver; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageRule.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageRule.h new file mode 100644 index 00000000..bba7a39d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageRule.h @@ -0,0 +1,172 @@ +/* + * 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 "NSCopying.h" + +@class MFMailbox, NSArray, NSColor, NSDictionary, NSMutableArray, NSNumber, NSString; + +@interface MFMessageRule : NSObject +{ + NSNumber *_isActiveSyncState; + MFMailbox *_copyDestinationMailbox; + NSString *_copyDestinationMailboxURL; + MFMailbox *_destinationMailbox; + NSString *_destinationMailboxURL; + NSColor *_color; + NSString *_soundPath; + NSString *_appleScriptPath; + NSArray *_recipients; + NSString *_responseMessage; + int _autoResponseType; + NSString *_ruleName; + NSMutableArray *_criteria; + unsigned int _flags; + unsigned int _isActive:1; + unsigned int _ruleWasAutoDeactivated:1; + unsigned int _allCriteriaMustBeSatisfied:1; + unsigned int _shouldTransferMessage:1; + unsigned int _shouldCopyMessage:1; + unsigned int _shouldStopEvaluatingRules:1; + unsigned int _highlightTextUsingColor:1; + unsigned int _shouldNotifyUser:1; + unsigned int _addInvitationAttachmentToCalendar:1; + unsigned int _shouldSendNotification:1; + BOOL _isJunkMailRule; + BOOL _isSafeToMarkAsNotJunkRule; + BOOL _isCalendarRule; + BOOL _didChange; + NSString *_uniqueId; + NSDictionary *_otherInfo; +} + ++ (BOOL)isRuleDictionaryCompatible:(id)arg1; ++ (id)appleScriptLock; ++ (void)initialize; +@property(nonatomic) BOOL didChange; // @synthesize didChange=_didChange; +@property(nonatomic) BOOL isCalendarRule; // @synthesize isCalendarRule=_isCalendarRule; +@property(nonatomic) BOOL isSafeToMarkAsNotJunkRule; // @synthesize isSafeToMarkAsNotJunkRule=_isSafeToMarkAsNotJunkRule; +@property(nonatomic) BOOL isJunkMailRule; // @synthesize isJunkMailRule=_isJunkMailRule; +@property(readonly, copy, nonatomic) NSDictionary *otherInfo; // @synthesize otherInfo=_otherInfo; +@property(copy, nonatomic) NSString *uniqueId; // @synthesize uniqueId=_uniqueId; +- (void).cxx_destruct; +- (id)objectSpecifier; +- (BOOL)isEqualToRule:(id)arg1; +- (void)setShouldSendNotification:(BOOL)arg1; +- (BOOL)shouldSendNotification; +- (void)setAddInvitationAttachmentToCalendar:(BOOL)arg1; +- (BOOL)addInvitationAttachmentToCalendar; +- (void)setShouldNotifyUser:(BOOL)arg1; +- (BOOL)shouldNotifyUser; +- (void)setShouldStopEvaluatingRules:(BOOL)arg1; +- (BOOL)shouldStopEvaluatingRules; +- (void)setSoundPath:(id)arg1; +- (id)soundPath; +- (void)setResponseMessage:(id)arg1; +- (void)handleDidChange; +- (void)handleDidChangeIfNeeded; +- (id)responseMessage; +- (void)setAutoResponseRecipients:(id)arg1; +- (id)autoResponseRecipients; +- (void)setAutoResponseType:(int)arg1; +- (int)autoResponseType; +- (BOOL)affectsColorEvaluation; +- (void)setHighlightTextUsingColor:(BOOL)arg1; +- (BOOL)highlightTextUsingColor; +- (void)setColor:(id)arg1; +- (id)color; +- (void)setAppleScriptPath:(id)arg1; +- (id)appleScriptPath; +- (void)setFlagsToApply:(unsigned int)arg1; +- (unsigned int)flagsToApply; +- (void)setAppleScriptDestinationMailbox:(id)arg1; +- (void)setAppleScriptCopyDestinationMailbox:(id)arg1; +- (void)_evaluateIfNeeded:(id)arg1 andSetUsingBlock:(id)arg2; +- (id)appleScriptCopyDestinationMailbox; +- (id)appleScriptDestinationMailbox; +- (BOOL)invalidateDestinationMailboxesForURLString:(id)arg1; +- (void)tryToReconnectDestinationIfNeeded; +- (id)_tryToGetMailboxForURLString:(id)arg1; +- (void)setCopyDestinationMailbox:(id)arg1; +- (id)copyDestinationMailbox; +- (id)_copyDestinationMailboxCreateIfNeeded:(BOOL)arg1; +- (void)setDestinationMailbox:(id)arg1; +- (id)destinationMailbox; +- (id)_destinationMailboxCreateIfNeeded:(BOOL)arg1; +- (void)_setDestinationIvar:(id *)arg1 toDestinationMailbox:(id)arg2 destinationURLIvar:(id *)arg3; +- (id)_destinationMailbox:(id)arg1 withURL:(id)arg2 createIfNeeded:(BOOL)arg3 setUsingBlock:(id)arg4; +- (void)setShouldCopyMessage:(BOOL)arg1; +- (BOOL)shouldCopyMessage; +- (void)setShouldTransferMessage:(BOOL)arg1; +- (BOOL)shouldTransferMessage; +- (void)removeObjectFromCriteriaAtIndex:(unsigned long long)arg1; +- (void)insertObject:(id)arg1 inCriteriaAtIndex:(unsigned long long)arg2; +- (void)setCriteria:(id)arg1; +- (id)criteria; +- (void)setAllCriteriaMustBeSatisfied:(BOOL)arg1; +- (BOOL)allCriteriaMustBeSatisfied; +- (void)setIsActiveSyncState:(BOOL)arg1; +- (BOOL)isActiveSyncState; +@property(nonatomic) BOOL isActive; +- (BOOL)isTerminalAction; +- (long long)version; +@property(copy, nonatomic) NSString *ruleName; +- (BOOL)isValid:(id *)arg1 options:(unsigned int)arg2; +- (BOOL)doesMessageSatisfyCriteria:(id)arg1 fetchBody:(BOOL)arg2 needsBody:(char *)arg3; +- (void)addHeadersRequiredForRoutingToArray:(id)arg1; +- (void)_performAddInvitationAttachmentToCalendarActionOnMessages:(id)arg1; +- (void)_performAppleScriptActionWithMessages:(id)arg1; +- (void)_performAutoResponseActionOnMessages:(id)arg1; +- (id)_performAutoResponseActionOnMessage:(id)arg1 encrypt:(BOOL)arg2 includeOrignalMessageText:(BOOL)arg3; +- (void)_performUserNotificationAction:(id)arg1; +- (void)performActionsOnMessages:(id)arg1 sourceStores:(id)arg2 destinationStores:(id)arg3 transferredOrDeleted:(id)arg4 rejectedMessages:(id)arg5 messagesToBeDeleted:(id)arg6; +- (void)_appendMessages:(id)arg1 fromSourceMailbox:(id)arg2 toDestinationMailbox:(id)arg3 destinationStores:(id)arg4 rejectedMessages:(id)arg5 messagesToBeDeleted:(id)arg6; +- (void)_updateDefaultAppleEmailAddressRule; +- (id)dictionaryRepresentation; +- (id)initWithDictionaryRepresentation:(id)arg1; +- (id)mailboxPathForMailboxURL:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)mailboxURLStringForMailbox:(id)arg1; +- (id)initWithRule:(id)arg1; +- (id)init; +- (BOOL)isEquivalentExceptForTitleAndIDs:(id)arg1; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (id)description; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)setAddress:(id)arg1 forResponseType:(int)arg2; +- (void)removeFromCriteriaAtIndex:(unsigned long long)arg1; +- (void)insertInCriteria:(id)arg1; +- (void)insertInCriteria:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)setRuleDescription:(id)arg1; +- (id)ruleDescription; +- (void)setActionRunApplescript:(id)arg1; +- (id)actionRunApplescript; +- (void)setActionReplyText:(id)arg1; +- (id)actionReplyText; +- (void)setActionRedirectToAddress:(id)arg1; +- (id)actionRedirectToAddress; +- (void)setActionPlaySound:(id)arg1; +- (id)actionPlaySound; +- (void)setActionMarkAsRead:(BOOL)arg1; +- (BOOL)actionMarkAsRead; +- (void)setActionMarkAsFlaggedStatus:(long long)arg1; +- (long long)actionMarkAsFlaggedStatus; +- (void)setActionMarkAsFlagged:(BOOL)arg1; +- (BOOL)actionMarkAsFlagged; +- (void)setActionForwardText:(id)arg1; +- (id)actionForwardText; +- (void)setActionForwardToAddress:(id)arg1; +- (id)actionForwardToAddress; +- (void)setActionDeleteMessage:(BOOL)arg1; +- (BOOL)actionDeleteMessage; +- (unsigned int)highlightColorValue:(id)arg1; +- (void)setActionColorMessage:(unsigned int)arg1; +- (unsigned int)actionColorMessage; +- (void)updateIsActive; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageRuleCriterion.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageRuleCriterion.h new file mode 100644 index 00000000..b601a8e5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageRuleCriterion.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFMessageRule; + +@interface MFMessageRuleCriterion : MFMessageCriterion +{ + MFMessageRule *_rule; +} + ++ (id)conversationsCriterion; ++ (id)noSentCriterion; ++ (id)noTrashCriterion; ++ (id)noJunkCriterion; +@property(nonatomic) __weak MFMessageRule *rule; // @synthesize rule=_rule; +- (void).cxx_destruct; +- (id)objectSpecifier; +- (void)setCriterionIdentifier:(id)arg1; +- (void)setRuleExpression:(id)arg1; +- (void)setRuleQualifier:(unsigned int)arg1; +- (void)setRuleType:(unsigned int)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageSortingInformation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageSortingInformation.h new file mode 100644 index 00000000..d0f996f8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageSortingInformation.h @@ -0,0 +1,26 @@ +/* + * 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" + +@class NSDictionary; + +@interface MFMessageSortingInformation : NSObject +{ + BOOL _isSortedAscending; + BOOL _skipAutomaticSecondarySort; + id _sortContext; + NSDictionary *_sortValues; +} + +@property(copy, nonatomic) NSDictionary *sortValues; // @synthesize sortValues=_sortValues; +@property(retain, nonatomic) id sortContext; // @synthesize sortContext=_sortContext; +@property(nonatomic) BOOL skipAutomaticSecondarySort; // @synthesize skipAutomaticSecondarySort=_skipAutomaticSecondarySort; +@property(nonatomic) BOOL isSortedAscending; // @synthesize isSortedAscending=_isSortedAscending; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageSortingValue.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageSortingValue.h new file mode 100644 index 00000000..2d89748b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageSortingValue.h @@ -0,0 +1,49 @@ +/* + * 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 "MCMessageSortingInterface.h" + +@class NSString; + +@interface MFMessageSortingValue : NSObject +{ +} + ++ (void)removeEverythingExceptMessages:(id)arg1 fromSortData:(id)arg2; ++ (void)addMessages:(id)arg1 toSortData:(id)arg2 withDelegate:(id)arg3; ++ (void)addMessage:(id)arg1 toSortData:(id)arg2 withDelegate:(id)arg3; ++ (void)removeMessage:(id)arg1 fromSortData:(id)arg2; ++ (id)_newSortOrderDictionary; ++ (id)mutableCopyOfSortData:(id)arg1; ++ (id)_automaticSecondarySortForPrimarySort:(id)arg1; ++ (id)copySortDataForMessages:(id)arg1 sortOrders:(id)arg2 includeDataForAutomaticSecondarySort:(BOOL)arg3 withDelegate:(id)arg4; ++ (void)addSortData:(id)arg1 forMessages:(id)arg2 sortOrder:(id)arg3 withDelegate:(id)arg4; ++ (id)equivalentSortsForSort:(id)arg1; +- (long long)libraryID; +- (unsigned int)uidForSort; +- (id)mailbox; +- (double)dateSentAsTimeIntervalSince1970; +- (double)dateReceivedAsTimeIntervalSince1970; +- (id)to; +- (unsigned long long)subjectPrefixLength; +- (id)subject; +- (unsigned long long)numberOfAttachments; +- (unsigned long long)messageSize; +- (id)senderDisplayName; +- (unsigned int)messageFlags; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (int)colorForSort; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageStore.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageStore.h new file mode 100644 index 00000000..eed6225d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageStore.h @@ -0,0 +1,239 @@ +/* + * 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 "MCMessageDataSource.h" + +@class MCActivityMonitor, MCInvocationQueue, MFMailAccount, MFMailbox, NSCache, NSMutableArray, NSMutableDictionary, NSMutableSet, NSOperationQueue, NSString, NSTimer; + +@interface MFMessageStore : NSObject +{ + id _retainCountLock; + BOOL _haveOpenLockFile; + BOOL _isWritingChangesToDisk; + BOOL _isTryingToClose; + id _cacheLock; + NSCache *_headerDataCache; + NSCache *_headerCache; + NSCache *_bodyDataCache; + NSCache *_bodyCache; + int _storeState; + NSTimer *_timer; + NSMutableDictionary *_fetchLockMap; + MFMailbox *_mailbox; + NSMutableArray *_allMessages; + MFMailAccount *_account; + NSMutableSet *_uniqueStrings; + BOOL _isReadOnly; + BOOL _compactOnClose; + BOOL _hasUnsavedChangesToMessageData; + BOOL _forceInvalidation; + MCActivityMonitor *_openMonitor; + NSOperationQueue *_deleteQueue; + MCInvocationQueue *_openAndCloseMailboxQueue; +} + ++ (void)_autosaveMessageStore:(id)arg1; ++ (long long)copyMessages:(id)arg1 toMailbox:(id)arg2 shouldDelete:(BOOL)arg3; ++ (id)succesfulMessagesFromMessages:(id)arg1 unsuccessfulOnes:(id)arg2; ++ (BOOL)cheapStoreAtPathIsEmpty:(id)arg1; ++ (BOOL)storeAtPathIsWritable:(id)arg1; ++ (BOOL)createEmptyStoreForPath:(id)arg1; ++ (BOOL)createEmptyStoreIfNeededForPath:(id)arg1 notIndexable:(BOOL)arg2; ++ (void)removeStoreFromCache:(id)arg1; ++ (void)registerAvailableStore:(id)arg1 forMailbox:(id)arg2; ++ (id)currentlyAvailableStoresForAccount:(id)arg1; ++ (id)currentlyAvailableStoreForMailbox:(id)arg1; ++ (id)_copyRawAvailableStoreForMailbox:(id)arg1 wantsCreate:(BOOL)arg2 shouldCreate:(char *)arg3; ++ (id)_storeCreationMarker; ++ (id)descriptionOfOpenStores; ++ (unsigned long long)numberOfCurrentlyOpenStores; ++ (void)initialize; +@property(readonly, nonatomic) MCInvocationQueue *openAndCloseMailboxQueue; // @synthesize openAndCloseMailboxQueue=_openAndCloseMailboxQueue; +@property(readonly, nonatomic) NSOperationQueue *deleteQueue; // @synthesize deleteQueue=_deleteQueue; +@property BOOL forceInvalidation; // @synthesize forceInvalidation=_forceInvalidation; +@property BOOL hasUnsavedChangesToMessageData; // @synthesize hasUnsavedChangesToMessageData=_hasUnsavedChangesToMessageData; +@property(retain) MCActivityMonitor *openMonitor; // @synthesize openMonitor=_openMonitor; +@property BOOL isReadOnly; // @synthesize isReadOnly=_isReadOnly; +- (void).cxx_destruct; +- (id)dataForMimePart:(id)arg1; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (BOOL)_updateFlagColor:(BOOL)arg1 forMessage:(id)arg2; +- (BOOL)_updateFlagForMessage:(id)arg1 key:(id)arg2 value:(BOOL)arg3; +- (void)messagesWereAdded:(id)arg1 conversationsMembers:(id)arg2 duringOpen:(BOOL)arg3 options:(id)arg4; +- (void)_setFlagsAndColorForMessages:(id)arg1; +- (void)_setBackgroundColorForMessages:(id)arg1 textColorForMessages:(id)arg2; +- (void)updateMessages:(id)arg1 updateColor:(BOOL)arg2 updateNumberOfAttachments:(BOOL)arg3; +- (void)updateMessageColorsSynchronouslyForMessages:(id)arg1 postingNotification:(BOOL)arg2; +- (id)_cachedHeaderDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedBodyDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedHeadersForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedBodyForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_setOrGetValue:(id)arg1 forKey:(id)arg2 inCache:(id *)arg3; +- (void)_invalidateObjectCachesForKey:(id)arg1; +- (id)_setOrGetBody:(id)arg1 forMessage:(id)arg2 updateFlags:(BOOL)arg3; +- (void)_rebuildTableOfContentsSynchronously; +- (void)_flushAllMessageData; +- (void)flushAllCaches; +- (void)_removeLockFile; +- (BOOL)_acquireLockFile; +- (id)_lockFilePath; +- (void)_invalidateInBackground; +- (void)_invalidate; +- (int)storeState; +- (BOOL)setStoreState:(int)arg1 fromState:(int)arg2; +- (BOOL)_isReadyToBeInvalidated; +- (BOOL)_shouldCallCompactWhenClosing; +- (id)_fetchBodyForMessage:(id)arg1 updateFlags:(BOOL)arg2; +- (id)_fetchBodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (void)_setNeedsAutosave; +- (void)_cancelAutosave; +- (void)invalidateMessages:(id)arg1; +- (void)invalidateMessage:(id)arg1; +- (BOOL)isSortedAscending; +- (id)sortOrder; +- (void)suggestSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (void)invalidateSyncEngine; +- (void)fetchSynchronouslyForKnownChanges; +- (void)fetchSynchronously; +- (id)status; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (void)updateMessageColorsSynchronouslyForMessages:(id)arg1; +- (void)updateNumberOfAttachmentsAndColorsForMessages:(id)arg1; +- (void)updateNumberOfAttachmentsForMessages:(id)arg1; +- (void)startSynchronization; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setLocalFlagsForMessages:(id)arg1; +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)setPrimitiveFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (id)colorForMessage:(id)arg1; +- (void)addUniquedStrings:(id)arg1; +- (void)setUniquedStrings:(id)arg1; +- (id)uniquedString:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (void)updateBodyFlagsForMessage:(id)arg1 body:(id)arg2; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)bodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 allowPartial:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (unsigned long long)_numberOfMessagesToCache; +- (id)messageForMessageID:(id)arg1; +- (id)messagesForDocumentID:(id)arg1; +- (id)recentMessageWithValue:(id)arg1 forHeader:(id)arg2; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 forMove:(BOOL)arg5; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6 error:(id *)arg7; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; +- (void)finishCopyOfMessages:(id)arg1 fromStore:(id)arg2 originalsWereDeleted:(BOOL)arg3; +- (long long)undoAppendOfMessageIDs:(id)arg1; +- (BOOL)allowsDeleteInPlace; +- (BOOL)allowsOverwrite; +- (BOOL)allowsAppend; +- (void)deleteLastMessageWithHeaders:(id)arg1 compactWhenDone:(BOOL)arg2; +- (void)undeleteMessages:(id)arg1; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (id)async_deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (void)doCompact; +- (BOOL)canCompact; +- (void)rebuildTableOfContentsAsynchronously; +- (BOOL)canRebuild; +- (id)routeMessages:(id)arg1 isUserAction:(BOOL)arg2 fetchingBodies:(BOOL)arg3 messagesNeedingBodies:(id)arg4; +- (id)finishRoutingMessages:(id)arg1 routed:(id)arg2; +- (id)routeMessages:(id)arg1 fetchingBodies:(BOOL)arg2 messagesNeedingBodies:(id)arg3; +- (id)_defaultRouterDestination; +- (void)removeMessageFromAllMessages:(id)arg1; +- (void)removeAllMessagesAtIndexes:(id)arg1; +- (void)addMessagesToAllMessages:(id)arg1; +- (unsigned long long)indexOfMessageInAllMessages:(id)arg1; +- (void)setAllMessages:(id)arg1; +- (id)copyOfAllMessagesWithOptions:(unsigned int)arg1; +- (id)mutableCopyOfAllMessages; +- (id)copyOfAllMessages; +- (unsigned long long)totalCount; +- (void)messagesWereUpdated:(id)arg1; +- (void)messagesWereCompacted:(id)arg1; +- (void)messagesWereAdded:(id)arg1; +- (void)structureDidChange; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +@property BOOL isFirstTimeSync; +- (BOOL)isTrash; +@property(readonly, copy) NSString *description; +- (const char *)displayNameForLogging; +- (id)displayName; +- (BOOL)isOpened; +- (id)allMailboxRepresentations; +- (BOOL)isSmartMailbox; +- (void)createDummyMailboxIfNecessary; +- (id)mailbox; +- (id)account; +- (void)invalidateSavingChanges:(BOOL)arg1; +- (void)saveChanges; +- (void)writeUpdatedMessageDataToDisk; +- (void)cancelOpen; +- (void)didOpenWithMessages:(id)arg1; +- (void)willOpen; +- (void)cleanupSynchronously; +- (void)_cleanupSynchronouslyIfCancelOpenPosted; +- (void)cleanupAsynchronously; +- (void)updateMetadata; +- (void)updateMetadataAsynchronously; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (void)openSynchronously; +- (void)openAsynchronouslyWithOptions:(unsigned int)arg1; +- (void)openAsynchronously; +- (void)resetAllMessages; +- (void)reset; +- (void)dealloc; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)_messageStoreCommonInit; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2; +- (id)initWithAccount:(id)arg1; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2 createEmptyStore:(BOOL)arg3; +- (id)init; +- (id)willDeallocPerformingInStoreCacheLock:(char *)arg1; +- (void)queueSaveChangesInvocation; +- (oneway void)release; +- (unsigned long long)retainCount; +- (id)retain; +- (id)objectSpecifierForMessage:(id)arg1; +- (id)objectSpecifier; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageThread.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageThread.h new file mode 100644 index 00000000..d5c9b5a1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFMessageThread.h @@ -0,0 +1,100 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@class NSMutableArray, NSMutableDictionary, NSString; + +@interface MFMessageThread : MCMessage +{ + NSMutableArray *_filteredMessages; + NSString *_formattedUnreadMessageCount; + NSMutableDictionary *_pendingChanges; + MCMessage *_newestMessage; + MCMessage *_oldestMessage; + MCMessage *_newestReceivedMessage; + MCMessage *_newestSentMessage; + MCMessage *_newestReadMessage; + MCMessage *_snippetMessage; + MCMessage *_messageWithHighestLibraryID; + unsigned int _unreadMessageCount; + unsigned int _flaggedMessageCount; + unsigned int _junkMessageCount; + unsigned int _attachmentCount; + BOOL _isThreadOpen; + BOOL _showDateInSubject; +} + ++ (id)sendersStringForMessages:(id)arg1; ++ (id)findMessageWithHighestLibraryIDInMessages:(id)arg1; ++ (id)findSnippetMessageInMessages:(id)arg1; ++ (id)findNewestReadMessageInMessages:(id)arg1; ++ (id)findNewestSentMessageInMessages:(id)arg1; ++ (id)findNewestReceivedMessageInMessages:(id)arg1; ++ (id)findNewestMessageInMessages:(id)arg1; ++ (id)_storeForMailbox:(id)arg1 fromStores:(id)arg2 cache:(id)arg3; ++ (id)_newestFirstEnumerator:(id)arg1; ++ (id)messagesByExpandingThreads:(id)arg1; +@property BOOL showDateInSubject; // @synthesize showDateInSubject=_showDateInSubject; +@property BOOL isThreadOpen; // @synthesize isThreadOpen=_isThreadOpen; +- (void).cxx_destruct; +- (id)gmailLabels; +- (id)mailbox; +- (id)messageWithHighestLibraryID; +- (void)_setJunkFlags; +- (id)snippetMessage; +- (id)newestReadMessage; +- (id)newestSentMessage; +- (id)newestMessage; +- (id)oldestMessage; +- (void)invertOrderOfMessages; +- (void)sortMessagesUsingComparator:(id)arg1; +- (BOOL)willBeDeletedIfMessagesAreDeleted:(id)arg1; +- (void)setIsOpen:(BOOL)arg1; +- (BOOL)isOpen; +- (BOOL)isThread; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)_updateFilteredMessages:(id)arg1; +- (unsigned long long)numberOfAttachments; +- (unsigned long long)messageSize; +- (id)messageBody; +- (id)dataSource; +- (id)messageID; +- (id)senderDisplayNameInfo; +- (id)senderDisplayName; +@property(readonly, copy) NSString *sendersString; +- (id)sender; +- (double)dateLastViewedAsTimeIntervalSince1970; +- (double)dateSentAsTimeIntervalSince1970; +- (double)dateReceivedAsTimeIntervalSince1970; +- (id)subject; +- (id)to; +- (void)setOldestMessage:(id)arg1; +- (void)setNewestSentMessage:(id)arg1; +- (void)setNewestReceivedMessage:(id)arg1; +- (void)setNewestMessage:(id)arg1; +- (unsigned long long)numberOfUnreadMessages; +- (id)filteredMessageAtIndex:(unsigned long long)arg1; +- (id)filteredMessages; +- (unsigned long long)numberOfFilteredMessages; +- (id)formattedUnreadMessageCount; +- (void)updateSubjectEtc; +- (BOOL)flagsHaveChanged; +- (void)discardPendingChangesForTaskID:(id)arg1; +- (BOOL)commitPendingChangesForTaskID:(id)arg1; +- (id)deleteMessages:(id)arg1; +- (id)addMessages:(id)arg1 usingComparator:(id)arg2; +- (id)_filteredMessagesEnumerator; +@property(readonly) unsigned int options; +@property(readonly) long long conversationID; +- (id)_changeDictionaryForTaskID:(id)arg1 toModify:(BOOL)arg2; +- (void)dealloc; +- (id)appliedFlagColors; +- (id)init; +- (id)initWithMessages:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFNeXTStore.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFNeXTStore.h new file mode 100644 index 00000000..de8abe58 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFNeXTStore.h @@ -0,0 +1,64 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFTableOfContents, NSData; + +@interface MFNeXTStore : MFMessageStore +{ + NSData *_mboxData; + MFTableOfContents *_toc; + BOOL _mboxIsOnSMB; + BOOL _haveUpdatedMetadata; + BOOL _importMode; + NSData *_incomingMboxData; + BOOL _rebuildingTOC; +} + ++ (BOOL)cheapStoreAtPathIsEmpty:(id)arg1; ++ (BOOL)storeAtPathIsWritable:(id)arg1; ++ (BOOL)createEmptyStoreForPath:(id)arg1; +@property BOOL rebuildingTOC; // @synthesize rebuildingTOC=_rebuildingTOC; +- (void).cxx_destruct; +- (BOOL)_shouldCallCompactWhenClosing; +- (BOOL)isSortedAscending; +- (id)sortOrder; +- (void)suggestSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (long long)_writeMessagesToIncomingMail:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3; +- (void)_incorporateMailFromIncoming; +- (long long)undoAppendOfMessageIDs:(id)arg1; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 flagsToSet:(id)arg5 forMove:(BOOL)arg6 error:(id *)arg7; +- (BOOL)allowsAppend; +- (long long)_appendMessages:(id)arg1 successes:(id *)arg2 failures:(id *)arg3 mboxName:(id)arg4 tableOfContents:(id)arg5; +- (void)_addIDsForAppendedMessages:(id)arg1 toArray:(id)arg2; +- (id)_appendMessage:(id)arg1 toFile:(id)arg2; +- (void)_deleteAttachments:(id)arg1; +- (void)doCompact; +- (BOOL)canCompact; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)messageForMessageID:(id)arg1; +- (void)_resetAllMessages; +- (BOOL)tableOfContents:(id)arg1 loadedMessages:(id)arg2; +- (void)_flushAllMessageData; +- (void)_rebuildTableOfContentsSynchronously; +- (BOOL)canRebuild; +- (void)writeUpdatedMessageDataToDisk; +- (void)_invalidate; +- (id)_lockFilePath; +- (void)updateMetadata; +- (id)messagesForImporter; +- (id)incomingMessages; +- (void)openSynchronouslyUpdatingMetadata:(BOOL)arg1; +- (void)_releaseMboxData; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFNetworkLocation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFNetworkLocation.h new file mode 100644 index 00000000..341d9c64 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFNetworkLocation.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class NSMutableDictionary; + +@interface MFNetworkLocation : NSObject +{ + NSMutableDictionary *_accountDefaults; + NSMutableDictionary *_domainsBySubnet; +} + +- (void).cxx_destruct; +- (unsigned long long)hash; +- (BOOL)isEqualToLocation:(id)arg1; +- (BOOL)isEqual:(id)arg1; +- (void)_postChanged; +- (id)bestDeliveryAccountForAccount:(id)arg1 ignoreLockedDelivery:(BOOL)arg2; +- (void)setAccount:(id)arg1 deliveryAccount:(id)arg2; +- (id)deliveryAccountForAccount:(id)arg1; +- (BOOL)isForDomain:(id)arg1; +- (BOOL)isForIPAddress:(id)arg1; +- (id)subnets; +- (id)domains; +- (void)addDomains:(id)arg1 IPAddresses:(id)arg2; +- (id)archive; +- (id)initWithArchive:(id)arg1; +- (id)initWithDomains:(id)arg1 IPAddresses:(id)arg2; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPAccount-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPAccount-Protocol.h new file mode 100644 index 00000000..0cddadc5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPAccount-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCAccount.h" + +@protocol MFPOPAccount +- (BOOL)logPOPFetchTimes; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPAccount.h new file mode 100644 index 00000000..6cf0ae6d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPAccount.h @@ -0,0 +1,114 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "MFPOPAccount.h" + +@class MCActivityMonitor, MCAuthScheme, MFPOPStore, NSArray, NSLock, NSString, NSURL; + +@interface MFPOPAccount : MFMailAccount +{ + NSLock *_connectionActivityLock; + id _seenMessagesManagerLock; + BOOL _fetcherNeedsReset; + BOOL _deletingMessages; + BOOL _hasDoneBackgroundSynchronization; + MFPOPStore *_fetcher; + MCActivityMonitor *_fetchMonitor; +} + ++ (id)standardSSLPorts; ++ (id)standardPorts; ++ (id)accountTypeString; +@property(nonatomic) BOOL hasDoneBackgroundSynchronization; // @synthesize hasDoneBackgroundSynchronization=_hasDoneBackgroundSynchronization; +@property(nonatomic) BOOL deletingMessages; // @synthesize deletingMessages=_deletingMessages; +@property(nonatomic) BOOL fetcherNeedsReset; // @synthesize fetcherNeedsReset=_fetcherNeedsReset; +@property(retain, nonatomic) MCActivityMonitor *fetchMonitor; // @synthesize fetchMonitor=_fetchMonitor; +@property(retain, nonatomic) MFPOPStore *fetcher; // @synthesize fetcher=_fetcher; +- (void).cxx_destruct; +- (BOOL)logPOPFetchTimes; +- (id)storeForMailbox:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)_infoForMatchingURL:(id)arg1; +- (id)_URLPersistenceScheme; +- (void)_addAccountAndSeenMessagesToMessageManager; +- (id)newSeenMessagesManager; +- (BOOL)canAuthenticateWithScheme:(id)arg1; +- (id)archiveMailboxCreateIfNeeded:(BOOL)arg1; +- (void)relinquishConnectionActivityLock; +- (void)acquireConnectionActivityLock; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)deleteSeenMessagesNow; +- (void)deleteMessagesNow:(id)arg1; +- (void)setDelayedMessageDeletionInterval:(long long)arg1; +- (long long)delayedMessageDeletionInterval; +- (void)setMessageDeletionPolicy:(long long)arg1; +- (long long)messageDeletionPolicy; +- (void)setBigMessageWarningSize:(long long)arg1; +- (long long)bigMessageWarningSize; +- (BOOL)_setPath:(id)arg1; +- (BOOL)canMailboxBeRenamed:(id)arg1; +- (BOOL)canCreateNewMailboxes; +- (BOOL)containsMailboxes; +- (id)primaryMailbox; +- (id)mailboxPathExtension; +- (Class)storeClassForMailbox:(id)arg1; +@property(readonly, nonatomic) BOOL requiresAuthentication; +- (void *)keychainProtocol; +@property(readonly, copy, nonatomic) NSString *saslProfileName; +- (long long)defaultSecurePortNumber; +- (long long)defaultPortNumber; +- (void)_readCustomInfoFromMailboxCache:(id)arg1; +- (void)setIsOffline:(BOOL)arg1; +- (BOOL)canGoOffline; +- (id)iaServiceType; +- (void)releaseAllConnections; +@property BOOL isFirstTimeSync; +- (void)resetFetcher; +- (void)fetchSynchronously; +- (BOOL)_configureFetcherObject; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (id)initWithAccountInfo:(id)arg1; +- (id)valueInMailboxesWithName:(id)arg1; +- (id)objectSpecifierForMailbox:(id)arg1; +- (id)mailboxes; +- (void)setDeleteMessagesOnServer:(BOOL)arg1; +- (BOOL)deleteMessagesOnServer; +- (void)setDeleteMessagesWhenMovedFromInbox:(BOOL)arg1; +- (BOOL)deleteMessagesWhenMovedFromInbox; + +// Remaining properties +@property(readonly, copy) NSString *accountTypeString; +@property BOOL allowInsecureAuthentication; +@property(readonly, copy) NSString *appleAuthenticationToken; +@property(readonly, copy) NSString *applePersonID; +@property(copy) NSString *canonicalEmailAddress; +@property BOOL configureDynamically; +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(copy) NSString *displayName; +@property(copy) NSString *externalHostname; +@property(readonly, copy) NSString *googleClientToken; +@property(readonly) unsigned long long hash; +@property(copy) NSString *hostname; +@property(readonly, copy) NSString *identifier; +@property(copy) NSString *password; +@property long long portNumber; +@property(retain) MCAuthScheme *preferredAuthScheme; +@property long long securityLayerType; +@property BOOL shouldUseAuthentication; +@property(readonly, copy, nonatomic) NSArray *standardPorts; +@property(readonly, copy, nonatomic) NSArray *standardSSLPorts; +@property(readonly) NSURL *subscriptionURL; +@property(readonly, copy) NSString *subscriptionURLLabel; +@property(readonly) Class superclass; +@property(copy) NSString *username; +@property BOOL usesSSL; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPConnection.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPConnection.h new file mode 100644 index 00000000..997c5e34 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPConnection.h @@ -0,0 +1,86 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCConnection.h" + +@class NSArray, NSData, NSMapTable, NSMutableData; + +@interface MFPOPConnection : MCConnection +{ + NSMutableData *_sendBuffer; + NSMapTable *_listResults; + NSMapTable *_serverMessageIdsByNumber; + id _delegate; + NSData *_apopTimeStamp; + NSArray *_capabilities; + BOOL _capaCommandFailed; + BOOL _currentlyFetchingMessage; + BOOL _connectionShouldPrefetchMessages; + id _context; + unsigned long long _numberOfMessagesToFetch; + unsigned long long _numberOfMessagesFetched; + unsigned long long _totalBytesToFetch; + unsigned long long _totalBytesReceived; + long long _activityMonitorKey; + unsigned long long _numberOfMessagesAvailable; +} + +@property(nonatomic) BOOL connectionShouldPrefetchMessages; // @synthesize connectionShouldPrefetchMessages=_connectionShouldPrefetchMessages; +@property(nonatomic) unsigned long long numberOfMessagesAvailable; // @synthesize numberOfMessagesAvailable=_numberOfMessagesAvailable; +@property(nonatomic) long long activityMonitorKey; // @synthesize activityMonitorKey=_activityMonitorKey; +@property(nonatomic) BOOL currentlyFetchingMessage; // @synthesize currentlyFetchingMessage=_currentlyFetchingMessage; +@property(nonatomic) unsigned long long totalBytesReceived; // @synthesize totalBytesReceived=_totalBytesReceived; +@property(nonatomic) unsigned long long totalBytesToFetch; // @synthesize totalBytesToFetch=_totalBytesToFetch; +@property(nonatomic) unsigned long long numberOfMessagesFetched; // @synthesize numberOfMessagesFetched=_numberOfMessagesFetched; +@property(nonatomic) unsigned long long numberOfMessagesToFetch; // @synthesize numberOfMessagesToFetch=_numberOfMessagesToFetch; +@property(retain, nonatomic) id context; // @synthesize context=_context; +- (void).cxx_destruct; +- (BOOL)_readMultilineResponseWithMaxSize:(unsigned long long)arg1 intoMutableData:(id)arg2 informDelegate:(BOOL)arg3; +- (BOOL)_parseSingleLineResponse:(id)arg1 status:(long long)arg2 responseCode:(long long *)arg3 textRange:(struct _NSRange *)arg4 humanReadableText:(id *)arg5; +- (void)_parseErrorFromResponseData:(id)arg1 isCapabilitiesError:(BOOL)arg2 isAuthenticationError:(BOOL)arg3; +- (id)_copyResponseLineData; +- (BOOL)_readAndParseSingleLineResponseIsCapabilities:(BOOL)arg1 isAuthentication:(BOOL)arg2; +- (BOOL)_sendCommand:(const char *)arg1 dontLogIndex:(long long)arg2 withArguments:(id)arg3; +- (BOOL)dele:(unsigned long long)arg1; +- (BOOL)deleteMessagesOnServer:(id)arg1; +- (id)_newDataForMessage:(unsigned long long)arg1 ofSize:(unsigned long long)arg2 informDelegate:(BOOL)arg3; +- (BOOL)_retr:(unsigned long long)arg1; +- (BOOL)fetchMessages:(id)arg1 totalBytes:(unsigned long long)arg2; +- (void)getTopOfMessageNumber:(unsigned long long)arg1 intoMutableData:(id)arg2; +- (id)newMessageHeaderForMessageNumber:(unsigned long long)arg1; +- (void)setMessageID:(id)arg1 forMessageNumber:(unsigned long long)arg2; +- (id)messageIDForMessageNumber:(unsigned long long)arg1; +- (BOOL)_getListResults; +- (unsigned long long)sizeOfMessageNumber:(unsigned long long)arg1; +- (BOOL)getMessageNumbers:(id *)arg1 andMessageIdsByNumber:(id *)arg2; +- (BOOL)doStat; +- (BOOL)messagesAvailable; +- (BOOL)_pass:(id)arg1; +- (BOOL)_user:(id)arg1; +- (BOOL)_apopWithUsername:(id)arg1 password:(id)arg2; +- (BOOL)_supportsAuthResponseCode; +- (BOOL)_supportsResponseCodes; +- (BOOL)_supportsAPOP; +- (BOOL)_supportsUSER; +- (BOOL)_supportsStartTLS; +- (id)_capabilities; +- (BOOL)_quit; +- (void)quit; +- (BOOL)_supportsPlainTextSchemes; +- (id)_authenticateWithPlainTextSchemes; +- (id)_authenticateWithNonPlainTextSchemes; +- (BOOL)_authenticateWithSaslClient:(id)arg1; +- (BOOL)authenticate; +- (id)authenticationMechanisms; +- (BOOL)_completeConnectionWithResult:(BOOL)arg1; +- (BOOL)_startTLS; +- (void)_setupConnection; +@property __weak id account; +- (void)setDelegate:(id)arg1 context:(id)arg2; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPConnectionDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPConnectionDelegate-Protocol.h new file mode 100644 index 00000000..a6b3a745 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPConnectionDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol MFPOPConnectionDelegate +- (BOOL)connectionShouldPrefetchMessages; +- (void)connection:(id)arg1 didRetrieveData:(id)arg2 forMessageNumber:(unsigned long long)arg3; +- (long long)connection:(id)arg1 willRetrieveMessageNumber:(unsigned long long)arg2 header:(id)arg3 size:(unsigned long long)arg4; +- (void)connection:(id)arg1 receivedNumberOfBytes:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPMessage.h new file mode 100644 index 00000000..46c807c2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPMessage.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@class NSData, NSString; + +@interface MFPOPMessage : MCMessage +{ + unsigned long long _messageNumber; + NSString *_messageID; + NSData *_messageData; +} + +@property(copy, nonatomic) NSData *messageData; // @synthesize messageData=_messageData; +@property(copy, nonatomic) NSString *messageID; // @synthesize messageID=_messageID; +@property(nonatomic) unsigned long long messageNumber; // @synthesize messageNumber=_messageNumber; +- (void).cxx_destruct; +- (id)originalMailboxURLString; +- (id)remoteMailboxURLString; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (unsigned long long)messageSize; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (id)mailbox; +- (id)account; +- (id)initWithPOP3FetchStore:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPSizeEngine.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPSizeEngine.h new file mode 100644 index 00000000..a588d9b9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPSizeEngine.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSMutableDictionary; + +@interface MFPOPSizeEngine : MFSizeEngine +{ + NSMutableDictionary *_infoByMessageID; +} + +- (void).cxx_destruct; +- (void)_messageFlagsChanged:(id)arg1; +- (void)_deleteServerMessagesCompleted:(id)arg1; +- (void)_fetchCompleted:(id)arg1; +- (BOOL)_prepareToRefresh; +- (void)_runWorkerThread; +- (id)_remoteMailboxURL; +- (id)_newMessageInfoFromMessageHeaders:(id)arg1; +- (id)infoWithKey:(id)arg1 forMessageWithID:(id)arg2; +- (id)allMessageIDs; +- (void)dealloc; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPStore.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPStore.h new file mode 100644 index 00000000..e1bed16d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPOPStore.h @@ -0,0 +1,71 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "MFPOPConnectionDelegate.h" +#import "MFRouterStore.h" + +@class NSMutableIndexSet, NSMutableSet, NSString; + +@interface MFPOPStore : MFMessageStore +{ + NSMutableSet *_skippedMessageIds; + NSMutableIndexSet *_messageNumbersToDelete; + BOOL _lastConnectionFailed; + BOOL _routerCancelled; +} + +@property BOOL routerCancelled; // @synthesize routerCancelled=_routerCancelled; +- (void).cxx_destruct; +- (void)messagesWereRouted:(id)arg1; +- (void)messagesWillBeRouted:(id)arg1; +- (id)_defaultRouterDestination; +- (void)cancel; +- (void)connection:(id)arg1 didRetrieveData:(id)arg2 forMessageNumber:(unsigned long long)arg3; +- (long long)connection:(id)arg1 willRetrieveMessageNumber:(unsigned long long)arg2 header:(id)arg3 size:(unsigned long long)arg4; +- (void)connection:(id)arg1 receivedNumberOfBytes:(unsigned long long)arg2; +- (BOOL)connectionShouldPrefetchMessages; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (void)_cancelAutosave; +- (void)_setNeedsAutosave; +- (void)writeUpdatedMessageDataToDisk; +- (id)messageForMessageID:(id)arg1; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)_fetchBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)_fetchHeaderDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)displayName; +- (BOOL)isOpened; +- (id)mailbox; +- (id)_copyMessageNumbersToDelete; +- (void)_clearMessageNumbersToDelete; +- (void)_addMessageNumberToDelete:(unsigned long long)arg1; +- (BOOL)_closeConnection:(id)arg1; +- (void)_deleteMessagesMarkedForDeletionUsingManager:(id)arg1; +- (void)_removeDeletedMessagesWithNumbers:(id)arg1 fromSeenMessageManager:(id)arg2 connection:(id)arg3; +- (BOOL)_shouldDeleteSeenMessage:(id)arg1 messageID:(id)arg2 deletionPolicy:(long long)arg3 cutoffDate:(id)arg4 url:(id)arg5 inbox:(id)arg6; +- (id)_messageIDForNumber:(unsigned long long)arg1 serverIdsByNumber:(id)arg2 connection:(id)arg3; +- (BOOL)_firstAndLast:(unsigned long long)arg1 onConnection:(id)arg2 alreadySeen:(id)arg3; +- (void)_backgroundFetchFailed:(id)arg1; +- (id)_authenticatedConnection; +- (BOOL)_createDirectoryIfNeeded; +- (void)_handleStoreFinishedFirstTimeSync:(id)arg1; +- (void)fetchSynchronously; +- (void)deleteMessages:(id)arg1; +- (id)account; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2 createEmptyStore:(BOOL)arg3; +- (id)init; +- (id)initWithAccount:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFParentalControlAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFParentalControlAccount.h new file mode 100644 index 00000000..d30f30a5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFParentalControlAccount.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFParentalControlAccount : MFLocalAccount +{ +} + ++ (id)_mailboxNameForAccount:(id)arg1; ++ (id)storeForAccount:(id)arg1; ++ (id)storeForMailbox:(id)arg1; ++ (id)mailboxForAccount:(id)arg1; ++ (id)allMailboxes; ++ (id)originalAccountForIncomingMailbox:(id)arg1; ++ (id)parentalControlAccount; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (id)mailboxPathExtension; +- (Class)storeClassForMailbox:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFParentalControlManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFParentalControlManager.h new file mode 100644 index 00000000..42fc1f21 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFParentalControlManager.h @@ -0,0 +1,77 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCInvocationQueue, NSDate, NSMutableArray, NSMutableSet, NSString; + +@interface MFParentalControlManager : NSObject +{ + NSMutableSet *_pcStores; + NSDate *_lastCleanupDate; + NSMutableArray *_recentRequests; + BOOL _isDirty; + BOOL _recentRequestsDirty; + NSMutableSet *_pendingRequests; + MCInvocationQueue *_tasks; +} + ++ (id)sharedManager; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) MCInvocationQueue *tasks; // @synthesize tasks=_tasks; +- (void).cxx_destruct; +- (void)_saveChangesWithDelay; +@property BOOL isDirty; +- (void)_approveEmailListChanged:(id)arg1; +- (BOOL)isEmail:(id)arg1 inEmailList:(id)arg2; +- (BOOL)rejectRequest:(id)arg1; +- (BOOL)approveRequest:(id)arg1; +- (BOOL)_respondToRequest:(id)arg1 approve:(BOOL)arg2; +- (void)_deliverResponseMessage:(id)arg1 requestMessage:(id)arg2; +- (id)_makeResponseMessageToRequest:(id)arg1 approve:(BOOL)arg2; +- (void)saveChanges; +- (BOOL)requestApprovalForOutgoingMessage:(id)arg1; +- (void)_requestApprovalForOutgoingMessage:(id)arg1 srcStore:(id)arg2; +- (void)_deliverApprovalRequestMessage:(id)arg1 forOutgoingMessage:(id)arg2; +- (BOOL)haveEmailsBeenApproved:(id)arg1 unapprovedOnes:(id)arg2; +- (BOOL)processIncomingMessage:(id)arg1 messageIsParentResponse:(char *)arg2; +- (void)_cleanupPCStores; +- (void)_reallyCleanupPCStores; +- (void)_cleanupPCStore:(id)arg1; +- (void)_rejectAddresses:(id)arg1 responseFromAccount:(id)arg2; +- (void)_approveAddresses:(id)arg1 responseFromAccount:(id)arg2; +- (void)_reallyRequestApprovalForIncomingMessage:(id)arg1 srcStore:(id)arg2 pcStore:(id)arg3 messageInPCStore:(id)arg4; +- (void)_requestApprovalForIncomingMessage:(id)arg1 srcStore:(id)arg2 pcStore:(id)arg3 messageInPCStore:(id)arg4; +- (BOOL)_hasPendingRequestForSender:(id)arg1; +- (void)_removeSendersFromRecentRequests:(id)arg1; +- (BOOL)_hasRecentlySentPermissionRequestForSender:(id)arg1; +- (id)_recentRequestsNoLock; +- (id)_recentRequestsFilePath; +- (id)_deliverMessage:(id)arg1; +- (id)_makeRequestMessageForMessage:(id)arg1 isOutgoingMessage:(BOOL)arg2; +- (id)_openPCStoreForAccount:(id)arg1; +- (id)_openStoreForPCMailbox:(id)arg1; +- (id)_openStoreForPCMailbox:(id)arg1 keepOpen:(BOOL)arg2; +- (void)_rejectSenders:(id)arg1 sourcePCMailbox:(id)arg2; +- (void)_approveSenders:(id)arg1 sourcePCMailbox:(id)arg2 destinationAccount:(id)arg3; +- (void)_cleanupPCStoresAfterDelay:(id)arg1; +- (void)deleteAccount:(id)arg1; +- (id)headersRequiredForParentalControl; +- (BOOL)isParentEmailAvailable; +- (id)parentalControlDirectory; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFParentalControlSettings.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFParentalControlSettings.h new file mode 100644 index 00000000..739f7bfb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFParentalControlSettings.h @@ -0,0 +1,37 @@ +/* + * 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" + +@interface MFParentalControlSettings : NSObject +{ +} + ++ (BOOL)isEmail:(id)arg1 inEmailList:(id)arg2; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (double)parentalControlEnabledTimeIntervalSince1970; +- (id)rejectEmails:(id)arg1; +- (BOOL)_rejectEmail:(id)arg1; +- (id)approveEmails:(id)arg1; +- (BOOL)_approveEmail:(id)arg1; +- (id)_dictionaryFromEmail:(id)arg1; +- (BOOL)haveEmailsBeenApproved:(id)arg1 unapprovedOnes:(id)arg2; +- (BOOL)hasEmailBeenApproved:(id)arg1; +- (id)_approvedEmails; +- (BOOL)_isSelfEmail:(id)arg1; +- (BOOL)isParentEmail:(id)arg1; +- (id)parentEmails; +- (BOOL)isParentalControlEnabled; +- (void)_approveEmailListChanged:(id)arg1; +- (void)_defaultsDidChange; +- (void)_reallyHandleDefaultsChange; +- (void)_updateCachedDataForEnabledState:(BOOL)arg1 approvedList:(BOOL)arg2 postNotification:(BOOL)arg3; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFParentalControlStore.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFParentalControlStore.h new file mode 100644 index 00000000..96688e48 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFParentalControlStore.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFParentalControlStore : MFNeXTStore +{ +} + +- (void)saveChanges; +- (void)setParentalControlMessageState:(long long)arg1 forMessages:(id)arg2; +- (void)setParentalControlMessageState:(long long)arg1 forMessage:(id)arg2; +- (id)realAccount; +- (id)_defaultRouterDestination; +- (BOOL)_shouldCallCompactWhenClosing; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPersistenceManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPersistenceManager.h new file mode 100644 index 00000000..c1cb3440 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPersistenceManager.h @@ -0,0 +1,30 @@ +/* + * 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" + +@interface MFPersistenceManager : NSObject +{ +} + ++ (id)_adjustPathForV2:(id)arg1 usingPrefix:(id)arg2; ++ (id)adjustAccountPathForV2:(id)arg1; ++ (id)autoDownloadDirectoryPath; ++ (id)mailDataSupportDirectory; ++ (id)mailDataDirectory; ++ (id)defaultMailDirectory; ++ (id)mailAccountDirectory; ++ (id)mailDataDirectoryName; ++ (id)supportDirectory; ++ (void)resetV1Layout; ++ (BOOL)persistenceLayoutIsV1; ++ (id)nonContainerizedMailRootDirectory; ++ (id)baseMailDirectory; ++ (id)unresolvedBaseMailDirectory; ++ (id)tildeUnresolvedBaseMailDirectory; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPreparedStatement.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPreparedStatement.h new file mode 100644 index 00000000..f51f10d6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFPreparedStatement.h @@ -0,0 +1,22 @@ +/* + * 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" + +@interface MFPreparedStatement : NSObject +{ + struct sqlite3_stmt *_compiled; +} + +@property(readonly, nonatomic) struct sqlite3_stmt *compiled; // @synthesize compiled=_compiled; +- (int)clearBindings; +- (int)reset; +- (void)sqliteFinalize; +- (void)dealloc; +- (id)initWithString:(const char *)arg1 andDb:(struct sqlite3 *)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFQuoteParser.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFQuoteParser.h new file mode 100644 index 00000000..8931f252 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFQuoteParser.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface MFQuoteParser : NSObject +{ +} + +- (id)strippedQuoteBlockWithHtml:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRecoveredMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRecoveredMessage.h new file mode 100644 index 00000000..2cfc0bc1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRecoveredMessage.h @@ -0,0 +1,72 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@class MCMessageHeaders, MCMimeBody, NSArray, NSData, NSString; + +@interface MFRecoveredMessage : MCMessage +{ + MCMessageHeaders *_headers; + CDStruct_07ba05d6 _remoteFlags; + NSData *_bodyData; + NSData *_allData; + MCMimeBody *_messageBody; + BOOL _loadedFileData; + NSString *_path; + NSString *_remoteID; + NSString *_remoteMailboxURL; + NSString *_originalMailboxURL; + NSArray *_gmailLabelIDs; +} + ++ (id)spotlightAttributesForBodyData:(id)arg1 plistData:(id)arg2; +@property(nonatomic) BOOL loadedFileData; // @synthesize loadedFileData=_loadedFileData; +@property(copy, nonatomic) NSArray *gmailLabelIDs; // @synthesize gmailLabelIDs=_gmailLabelIDs; +@property(copy, nonatomic) NSString *originalMailboxURL; // @synthesize originalMailboxURL=_originalMailboxURL; +@property(copy, nonatomic) NSString *remoteMailboxURL; // @synthesize remoteMailboxURL=_remoteMailboxURL; +@property(copy, nonatomic) NSString *remoteID; // @synthesize remoteID=_remoteID; +@property(readonly, copy, nonatomic) NSString *path; // @synthesize path=_path; +- (void).cxx_destruct; +- (id)spotlightAttributesIncludingText:(BOOL)arg1; +- (id)description; +- (BOOL)setMessageID:(long long)arg1 directory:(id)arg2; +- (void)flushCachedData; +- (CDStruct_76a5ddda)moreMessageFlags; +- (unsigned int)messageFlags; +- (CDStruct_07ba05d6)remoteFlags; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (id)mailbox; +- (id)account; +- (id)messageBodyIfAvailableUpdatingFlags:(BOOL)arg1; +- (id)messageBodyForIndexing; +- (id)messageBodyUpdatingFlags:(BOOL)arg1; +- (id)messageBodyFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)messageBodyIfAvailable; +- (id)messageBody; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)dataForMimePart:(id)arg1; +- (id)bodyDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)bodyData; +- (id)messageDataIncludingFromSpace:(BOOL)arg1 newDocumentID:(id)arg2; +- (id)headersIfAvailable; +- (id)headers; +- (id)headerDataFetchIfNotAvailable:(BOOL)arg1 allowPartial:(BOOL)arg2; +- (id)originalMailboxURLString; +- (id)remoteMailboxURLString; +- (id)messageID; +- (void)_parseBodyDataWithPList:(id)arg1; +- (void)_parseFileData:(id)arg1; +- (void)_loadFileDataIfNeeded; +- (id)_extendedAttributes; +- (id)initWithURL:(id)arg1; +- (id)init; +- (id)_initWithBodyData:(id)arg1; +- (id)initWithPath:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRecoveredStore.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRecoveredStore.h new file mode 100644 index 00000000..aa2f7fe2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRecoveredStore.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface MFRecoveredStore : MFMessageStore +{ + NSArray *_pathsToImport; +} + +@property(readonly, copy, nonatomic) NSArray *pathsToImport; // @synthesize pathsToImport=_pathsToImport; +- (void).cxx_destruct; +- (id)messagesForImporter; +- (void)writeUpdatedMessageDataToDisk; +- (id)initWithAccount:(id)arg1; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2 createEmptyStore:(BOOL)arg3; +- (id)init; +- (id)initWithMailbox:(id)arg1 readOnly:(BOOL)arg2 pathsToImport:(id)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRedundantContentMarkup.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRedundantContentMarkup.h new file mode 100644 index 00000000..efffd511 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRedundantContentMarkup.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class MCMessage, MCParsedMessage, NSString; + +@interface MFRedundantContentMarkup : NSObject +{ + BOOL _matchedEntireAncestorContiguously; + BOOL _messageContainsRedundantText; + MCMessage *_message; + MCParsedMessage *_parsedMessage; + MCMessage *_ancestorUsedForComparison; + NSString *_messageBodyWithRedundantTextMarkers; + NSString *_redundantContentSenderName; +} + +@property(readonly, nonatomic) BOOL messageContainsRedundantText; // @synthesize messageContainsRedundantText=_messageContainsRedundantText; +@property(readonly, nonatomic) BOOL matchedEntireAncestorContiguously; // @synthesize matchedEntireAncestorContiguously=_matchedEntireAncestorContiguously; +@property(readonly, copy, nonatomic) NSString *redundantContentSenderName; // @synthesize redundantContentSenderName=_redundantContentSenderName; +@property(readonly, copy, nonatomic) NSString *messageBodyWithRedundantTextMarkers; // @synthesize messageBodyWithRedundantTextMarkers=_messageBodyWithRedundantTextMarkers; +@property(readonly, nonatomic) MCMessage *ancestorUsedForComparison; // @synthesize ancestorUsedForComparison=_ancestorUsedForComparison; +@property(readonly, nonatomic) MCParsedMessage *parsedMessage; // @synthesize parsedMessage=_parsedMessage; +@property(readonly, nonatomic) MCMessage *message; // @synthesize message=_message; +- (void).cxx_destruct; +- (id)description; +- (id)initWithMessage:(id)arg1 parsedMessage:(id)arg2 ancestorUsedForComparison:(id)arg3 messageBodyWithRedundantTextMarkers:(id)arg4 messageContainsRedundantText:(BOOL)arg5 matchedEntireAncestorContiguously:(BOOL)arg6; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRedundantTextIdentifier.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRedundantTextIdentifier.h new file mode 100644 index 00000000..d0eb4577 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRedundantTextIdentifier.h @@ -0,0 +1,24 @@ +/* + * 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" + +@class MFRedundantContentMarkup; + +@interface MFRedundantTextIdentifier : NSObject +{ + MFRedundantContentMarkup *_redundantContentMarkup; +} + ++ (id)_htmlMarkerForContentType:(long long)arg1; ++ (void)initialize; +@property(readonly, nonatomic) MFRedundantContentMarkup *redundantContentMarkup; // @synthesize redundantContentMarkup=_redundantContentMarkup; +- (void).cxx_destruct; +- (id)_attachmentContextsByURLforAttachmentsByURL:(id)arg1; +- (id)initWithMessage:(id)arg1 parsedMessage:(id)arg2 ancestorMessage:(id)arg3 ancestorParsedMessage:(id)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteAppendMessagesContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteAppendMessagesContext.h new file mode 100644 index 00000000..d62ddda8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteAppendMessagesContext.h @@ -0,0 +1,39 @@ +/* + * 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" + +@class NSArray, NSMutableArray, NSMutableDictionary; + +@interface MFRemoteAppendMessagesContext : NSObject +{ + BOOL someMsgsWentToServer; + BOOL _forMove; + unsigned int _destUidNext; + NSArray *_messages; + NSArray *_flagsToSet; + NSMutableArray *_missedMessages; + NSMutableArray *_addedMessageIDs; + NSMutableArray *_addedMessages; + NSMutableDictionary *_addedDocumentIDsByOld; + unsigned long long _unreadCountDelta; +} + +@property(nonatomic) BOOL forMove; // @synthesize forMove=_forMove; +@property(nonatomic) unsigned int destUidNext; // @synthesize destUidNext=_destUidNext; +@property(nonatomic) unsigned long long unreadCountDelta; // @synthesize unreadCountDelta=_unreadCountDelta; +@property(retain, nonatomic) NSMutableDictionary *addedDocumentIDsByOld; // @synthesize addedDocumentIDsByOld=_addedDocumentIDsByOld; +@property(retain, nonatomic) NSMutableArray *addedMessages; // @synthesize addedMessages=_addedMessages; +@property(retain, nonatomic) NSMutableArray *addedMessageIDs; // @synthesize addedMessageIDs=_addedMessageIDs; +@property(retain, nonatomic) NSMutableArray *missedMessages; // @synthesize missedMessages=_missedMessages; +@property(nonatomic) BOOL someMsgsWentToServer; // @synthesize someMsgsWentToServer; +@property(copy, nonatomic) NSArray *flagsToSet; // @synthesize flagsToSet=_flagsToSet; +@property(copy, nonatomic) NSArray *messages; // @synthesize messages=_messages; +- (void).cxx_destruct; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteAttachmentManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteAttachmentManager.h new file mode 100644 index 00000000..6a703f69 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteAttachmentManager.h @@ -0,0 +1,27 @@ +/* + * 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" + +@class NSMutableSet, NSOperationQueue; + +@interface MFRemoteAttachmentManager : NSObject +{ + NSMutableSet *_attachments; + NSOperationQueue *_downloadQueue; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) NSOperationQueue *downloadQueue; // @synthesize downloadQueue=_downloadQueue; +- (void).cxx_destruct; +- (id)_attachmentForURL:(id)arg1 filename:(id)arg2 mimeType:(id)arg3 filesize:(long long)arg4 downloadDirectory:(id)arg5 isMailDropImageArchive:(BOOL)arg6 isAutoArchive:(BOOL)arg7 allowDownloading:(BOOL)arg8 isMailDropIndividualImage:(BOOL)arg9 expirationDate:(id)arg10; +- (id)remoteAttachmentsByURLForMessage:(id)arg1 allowDownloading:(BOOL)arg2; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteStore.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteStore.h new file mode 100644 index 00000000..fcea7711 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteStore.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFRemoteStore : MFLibraryStore +{ +} + +- (void)undeleteMessagesWithDetails:(id)arg1; +- (void)deleteMessagesOlderThanNumberOfDays:(long long)arg1 compact:(BOOL)arg2; +- (long long)_appendToServerWithContext:(id)arg1 error:(id *)arg2; +- (long long)_doAppend:(id)arg1 fromStore:(id)arg2 error:(id *)arg3; +- (long long)appendMessages:(id)arg1 unsuccessfulOnes:(id)arg2 newMessageIDs:(id)arg3 newMessages:(id)arg4 newDocumentIDsByOld:(id)arg5 flagsToSet:(id)arg6 forMove:(BOOL)arg7 error:(id *)arg8; +- (long long)updateMessagesLocally:(id)arg1 missedMessages:(id)arg2 newMessageIDs:(id)arg3; +- (id)messageWithLibraryID:(long long)arg1 options:(unsigned int)arg2; +- (void)compactMessages:(id)arg1; +- (id)messagesForMailbox:(id)arg1 olderThanNumberOfDays:(long long)arg2; +- (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 isInitialImport:(BOOL)arg4 oldMessagesByNewMessage:(id)arg5 remoteIDs:(id)arg6 setFlags:(long long)arg7 clearFlags:(long long)arg8 messageFlagsForMessages:(id)arg9 copyFiles:(BOOL)arg10; +- (id)addMessages:(id)arg1 withMailbox:(id)arg2 fetchBodies:(BOOL)arg3 oldMessagesByNewMessage:(id)arg4; +- (void)enqueuedMessageChangesInExistingRequest; +- (void)didAddMessages; +- (void)willAddMessages; +- (id)_cachedHeaderDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedBodyDataForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedHeadersForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (id)_cachedBodyForMessage:(id)arg1 valueIfNotPresent:(id)arg2; +- (BOOL)_shouldUpdateColorsAndAttachmentsAfterOpening; +- (id)URLString; +- (void)forceResync; +- (id)account; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteStoreAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteStoreAccount.h new file mode 100644 index 00000000..97ad5d9b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteStoreAccount.h @@ -0,0 +1,101 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +#import "MCRemoteStoreAccount.h" + +@class MCAuthScheme, MFBehaviorTracker, NSArray, NSMutableArray, NSString, NSURL; + +@interface MFRemoteStoreAccount : MFMailAccount +{ + NSMutableArray *_mailboxesToSynchronize; + BOOL _synchronizationThreadIsRunning; + BOOL _addedEAToAccountFolder; +} + ++ (BOOL)cachePoliciesNeedUpdating; ++ (BOOL)powerIsUnlimited; +@property BOOL addedEAToAccountFolder; // @synthesize addedEAToAccountFolder=_addedEAToAccountFolder; +@property BOOL synchronizationThreadIsRunning; // @synthesize synchronizationThreadIsRunning=_synchronizationThreadIsRunning; +- (void).cxx_destruct; +- (void)presentOverQuotaAlert; +- (id)offlineCacheDirectory; +- (void)_checkForNewMessagesInStore:(id)arg1; +- (void)_synchronizeMailboxesSynchronously; +- (BOOL)_shouldSynchronizeMailbox:(id)arg1; +@property(readonly, copy) NSArray *mailboxURLStringsToSynchronize; +- (void)_removeAllMailboxesToSynchronize; +- (id)_popMailboxToSynchronize; +- (BOOL)_addMailboxesToSynchronize:(id)arg1; +- (void)_synchronizeMailboxes:(id)arg1; +- (void)didSynchronizeMailboxCachesAndFoundChanges:(BOOL)arg1; +- (BOOL)synchronizesDataWithServer; +- (BOOL)_synchronizeMailboxListHighPriority:(BOOL)arg1; +- (void)_synchronizeAccountWithServerHighPriority:(id)arg1; +- (void)resetNeedToSynchronizeMailboxCaches; +- (BOOL)needToSynchronizeMailboxCaches; +- (void)_startBackgroundSynchronizationHighPriority:(BOOL)arg1; +- (void)startBackgroundSynchronization; +- (void)considerSynchronizingNow; +- (BOOL)canBeSynchronized; +- (BOOL)_shouldCacheAggressively; +- (void)_writeMailboxCache; +- (BOOL)_canEmptyMessagesFromMailbox:(id)arg1; +- (void)_setSpecialMailbox:(id)arg1 forType:(int)arg2; +- (id)_specialMailboxWithType:(int)arg1 create:(BOOL)arg2 isLocal:(BOOL)arg3; +- (id)_specialMailboxWithType:(int)arg1 create:(BOOL)arg2; +- (id)_localMailboxRelativePathForType:(int)arg1 usingDisplayName:(id)arg2; +- (void)_renameLocalSpecialMailboxesToName:(id)arg1; +- (BOOL)_setStoreSpecialMailboxType:(int)arg1 onServer:(BOOL)arg2; +- (BOOL)_isMailboxTypeStoredLocally:(int)arg1; +@property BOOL storeTrashOnServer; +@property BOOL storeSentMessagesOnServer; +@property(readonly, nonatomic) BOOL storeJunkOnServerDefault; +@property BOOL storeJunkOnServer; +@property BOOL storeDraftsOnServer; +- (BOOL)shouldCacheAttachmentsForMessageWithDateReceived:(id)arg1; +- (long long)_storedCachePolicy; +- (void)setCachePolicy:(long long)arg1 permanently:(BOOL)arg2; +- (long long)cachePolicy; +- (BOOL)canGoOffline; +- (void)fetchSynchronously; +- (id)_infoForMatchingURL:(id)arg1; +@property(copy) NSString *displayName; +@property(readonly) MFBehaviorTracker *behaviorTracker; +- (id)initWithAccountInfo:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *accountTypeString; +@property BOOL allowInsecureAuthentication; +@property(readonly, copy) NSString *appleAuthenticationToken; +@property(readonly, copy) NSString *applePersonID; +@property(copy) NSString *canonicalEmailAddress; +@property BOOL configureDynamically; +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(copy) NSString *externalHostname; +@property(readonly, copy) NSString *googleClientToken; +@property(readonly) unsigned long long hash; +@property(copy) NSString *hostname; +@property(readonly, copy) NSString *identifier; +@property(copy) NSString *password; +@property long long portNumber; +@property(retain) MCAuthScheme *preferredAuthScheme; +@property(readonly, nonatomic) BOOL requiresAuthentication; +@property(readonly, copy, nonatomic) NSString *saslProfileName; +@property long long securityLayerType; +@property BOOL shouldUseAuthentication; +@property(readonly, copy, nonatomic) NSArray *standardPorts; +@property(readonly, copy, nonatomic) NSArray *standardSSLPorts; +@property(readonly) NSURL *subscriptionURL; +@property(readonly, copy) NSString *subscriptionURLLabel; +@property(readonly) Class superclass; +@property(copy) NSString *username; +@property BOOL usesSSL; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteStoreSizeEngine.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteStoreSizeEngine.h new file mode 100644 index 00000000..ccd922ac --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRemoteStoreSizeEngine.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSMutableDictionary, NSMutableSet; + +@interface MFRemoteStoreSizeEngine : MFSizeEngine +{ + NSMutableDictionary *_usageByMailbox; + NSMutableSet *_mailboxesToSize; +} + +- (void).cxx_destruct; +- (void)_handleMailboxSizeChanged:(id)arg1; +- (void)_refetchListing:(id)arg1; +- (BOOL)_shouldStartWorkerThread; +- (BOOL)_prepareToRefresh; +- (id)usageForMailbox:(id)arg1; +- (void)dealloc; +- (id)initWithAccount:(id)arg1; +- (id)allUsageByMailboxKeys; +- (void)addMailboxesToSizeFromArray:(id)arg1; +- (id)popMailboxToSize; +- (unsigned long long)countOfMailboxesToSize; +- (void)_mailboxBecameInvalid:(id)arg1; +- (void)_mailboxSizeChanged:(id)arg1; +- (void)_sizeChangedForMailbox:(id)arg1; +- (BOOL)_changeUsageInfo:(CDStruct_1dee9796 *)arg1 forMailbox:(id)arg2 refetchQuotas:(BOOL)arg3; +- (void)_getSizeForMailbox:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRouterStore-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRouterStore-Protocol.h new file mode 100644 index 00000000..8d6e1d4d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFRouterStore-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol MFRouterStore +- (void)cancel; +- (void)messagesWereRouted:(id)arg1; +- (void)messagesWillBeRouted:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSMTPAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSMTPAccount.h new file mode 100644 index 00000000..b248b933 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSMTPAccount.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFSMTPConnection, NSTimer; + +@interface MFSMTPAccount : MFDeliveryAccount +{ + MFSMTPConnection *_connection; + id _smtpAccountLock; + NSTimer *_timer; + long long _lastTimerSetTime; +} + ++ (id)standardSSLPorts; ++ (id)standardPorts; ++ (id)accountTypeString; +@property(nonatomic) long long lastTimerSetTime; // @synthesize lastTimerSetTime=_lastTimerSetTime; +- (void).cxx_destruct; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (void)releaseAllConnections; +- (void)_disconnect:(id)arg1; +- (void)_connectionExpired:(id)arg1; +- (void)_setTimer; +- (void)checkInConnection:(id)arg1; +- (BOOL)connectAndAuthenticate:(id)arg1; +- (id)authenticatedConnection; +- (id)newConnectedConnectionDiscoveringBestSettings:(BOOL)arg1 withConnectTimeout:(double)arg2 readWriteTimeout:(double)arg3; +- (id)googleClientToken; +- (void)setPreferredAuthScheme:(id)arg1; +- (id)preferredAuthScheme; +- (void *)keychainProtocol; +- (id)saslProfileName; +- (long long)defaultPortNumber; +- (Class)delivererClass; +- (id)initWithAccountInfo:(id)arg1; +- (id)objectSpecifier; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSMTPConnection.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSMTPConnection.h new file mode 100644 index 00000000..6639b0c5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSMTPConnection.h @@ -0,0 +1,63 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCConnection.h" + +@class MFSMTPAccount, NSMutableArray, NSMutableData, NSString, _MFSMTPEnhancedStatusCode; + +@interface MFSMTPConnection : MCConnection +{ + id _lastResponse; + NSMutableArray *_serviceExtensions; + NSMutableData *_mdata; + NSString *_domainName; + BOOL _hasSASLSecurityLayer; + int _lastReplyCode; + _MFSMTPEnhancedStatusCode *_lastStatusCode; + double _originalSocketTimeout; + double _lastCommandTimestamp; + long long _greeting; +} + +@property(nonatomic) BOOL hasSASLSecurityLayer; // @synthesize hasSASLSecurityLayer=_hasSASLSecurityLayer; +@property(nonatomic) long long greeting; // @synthesize greeting=_greeting; +@property(nonatomic) int lastReplyCode; // @synthesize lastReplyCode=_lastReplyCode; +@property(nonatomic) double lastCommandTimestamp; // @synthesize lastCommandTimestamp=_lastCommandTimestamp; +@property(nonatomic) double originalSocketTimeout; // @synthesize originalSocketTimeout=_originalSocketTimeout; +@property(readonly, nonatomic) _MFSMTPEnhancedStatusCode *lastStatusCode; // @synthesize lastStatusCode=_lastStatusCode; +- (void).cxx_destruct; +- (long long)sendDatas:(id)arg1; +- (long long)rcptTo:(id)arg1; +- (long long)mailFrom:(id)arg1; +- (unsigned long long)maximumMessageBytes; +- (BOOL)_hasParameter:(id)arg1 forKeyword:(id)arg2; +- (id)_domainName; +- (long long)_sendHELOWithClientDomainName:(id)arg1; +- (long long)_sendEHLOWithClientDomainName:(id)arg1; +- (long long)_doHandshakeTryHELOIfEHLOFails:(BOOL)arg1; +- (long long)noop; +- (void)_readResponseRange:(struct _NSRange *)arg1 isContinuation:(char *)arg2; +- (long long)_getReply; +- (long long)_sendDataDontLogBytesInRange:(struct _NSRange)arg1; +- (long long)_sendCommand:(const char *)arg1 length:(unsigned long long)arg2 argument:(id)arg3 dontLogArgumentRange:(struct _NSRange)arg4 trailer:(unsigned char)arg5; +- (double)timeLastCommandWasSent; +- (id)lastResponse; +- (long long)_state; +- (void)quit; +- (id)_makeInvalidCredentialsError; +- (id)_getErrorFromFailedAuthentication; +- (BOOL)_authenticateWithSaslClient:(id)arg1; +- (BOOL)authenticate; +- (id)authenticationMechanisms; +- (BOOL)_completeConnectionWithResult:(BOOL)arg1; +- (BOOL)_startTLS; +- (BOOL)connectDiscoveringBestSettings:(BOOL)arg1; +- (void)_setupConnection; +@property __weak MFSMTPAccount *account; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSMTPDeliverer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSMTPDeliverer.h new file mode 100644 index 00000000..e0299803 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSMTPDeliverer.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFSMTPDeliverer : MFMessageDeliverer +{ +} + +- (long long)deliverMessageHeaderData:(id)arg1 bodyData:(id)arg2 toRecipients:(id)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSeenMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSeenMessage.h new file mode 100644 index 00000000..51632c15 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSeenMessage.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSManagedObject.h" + +@interface MFSeenMessage : NSManagedObject +{ +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +- (void)setIsOnServer:(BOOL)arg1; +- (BOOL)isOnServer; +- (void)setShouldDeleteFromServer:(BOOL)arg1; +- (BOOL)shouldDeleteFromServer; +- (void)setMessageID:(id)arg1; +- (id)messageID; +- (void)setDateSeen:(id)arg1; +- (id)dateSeen; +- (void)setAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSeenMessagesManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSeenMessagesManager.h new file mode 100644 index 00000000..960449b5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSeenMessagesManager.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class NSManagedObjectContext; + +@interface MFSeenMessagesManager : NSObject +{ + id _account; + NSManagedObjectContext *_managedObjectContext; +} + +@property(retain, nonatomic) NSManagedObjectContext *managedObjectContext; // @synthesize managedObjectContext=_managedObjectContext; +@property(retain, nonatomic) id account; // @synthesize account=_account; +- (void).cxx_destruct; +- (void)_configureManagedObjectContext; +- (void)saveChanges; +- (void)removeMessagesNotOnServer:(id)arg1; +- (void)removeServerDeletedMessages; +- (id)messagesToBeDeletedFromServer; +- (id)seenMessages; +- (void)removeMessageIDs:(id)arg1; +- (id)addMessageID:(id)arg1 dateSeen:(id)arg2; +- (unsigned long long)countOfSeenMessages; +- (id)seenMessageForMessageID:(id)arg1; +- (id)_addAccountWithID:(id)arg1; +- (id)_accountForAccountID:(id)arg1; +- (id)init; +- (id)initWithAccountID:(id)arg1 createAccount:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSizeEngine.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSizeEngine.h new file mode 100644 index 00000000..5534636d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSizeEngine.h @@ -0,0 +1,48 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityMonitor, MCQuotaUsage, MFMailAccount, NSString; + +@interface MFSizeEngine : NSObject +{ + MFMailAccount *_account; + MCQuotaUsage *_totalUsage; + MCActivityMonitor *_monitor; + BOOL _isActive; + long long _monitorAccessKey; +} + +@property(nonatomic) long long monitorAccessKey; // @synthesize monitorAccessKey=_monitorAccessKey; +@property(nonatomic) BOOL isActive; // @synthesize isActive=_isActive; +@property(retain, nonatomic) MCActivityMonitor *monitor; // @synthesize monitor=_monitor; +- (void).cxx_destruct; +- (void)stop; +- (void)start; +- (void)cancel; +- (void)refresh; +- (id)totalUsage; +- (id)account; +- (id)init; +- (id)initWithAccount:(id)arg1; +- (void)_postChangeNotificationWithUserInfo:(id)arg1; +- (BOOL)_shouldStartWorkerThread; +- (BOOL)_prepareToRefresh; +- (void)_runWorkerThread; +- (void)_workerThreadFinished:(id)arg1; +- (void)_startWorkerThreadIfNeeded; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSmartMailboxUnreadCountManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSmartMailboxUnreadCountManager.h new file mode 100644 index 00000000..35882803 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSmartMailboxUnreadCountManager.h @@ -0,0 +1,92 @@ +/* + * 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 "MCActivityTarget.h" + +@class NSConditionLock, NSMutableArray, NSMutableDictionary, NSMutableSet, NSOperationQueue, NSString, _MFNonContentSmartMailboxUnreadCountManager; + +@interface MFSmartMailboxUnreadCountManager : NSObject +{ + NSMutableArray *_smartMailboxes; + NSMutableDictionary *_smartMailboxesOpenDates; + BOOL _updateNeededAfterOpeningMailboxes; + NSMutableDictionary *_unreadMessagesBySmartMailbox; + NSMutableDictionary *_smartMailboxesUpdates; + NSConditionLock *_watchedMessagesLock; + NSMutableDictionary *_watchedMessages; + NSMutableDictionary *_messagesNeedingToBeIndexed; + NSConditionLock *_isUpdatingStateLock; + NSConditionLock *_isDirtyStateLock; + NSConditionLock *_obsoleteMessageKeysLock; + NSMutableSet *_obsoleteMessageKeys; + _MFNonContentSmartMailboxUnreadCountManager *_nonContentSmartMailboxUnreadCountManager; + BOOL _suspendSmartMailboxUnreadCountCalculations; + double _lastModificationToUpdate; + long long _unreadQueryCount; + NSOperationQueue *_spotlightQueue; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (void)initialize; +@property(readonly, nonatomic) NSOperationQueue *spotlightQueue; // @synthesize spotlightQueue=_spotlightQueue; +@property long long unreadQueryCount; // @synthesize unreadQueryCount=_unreadQueryCount; +@property BOOL suspendSmartMailboxUnreadCountCalculations; // @synthesize suspendSmartMailboxUnreadCountCalculations=_suspendSmartMailboxUnreadCountCalculations; +@property double lastModificationToUpdate; // @synthesize lastModificationToUpdate=_lastModificationToUpdate; +- (void).cxx_destruct; +- (void)_updateObsoleteMessageKeys; +- (void)_addObsoleteMessageKeys:(id)arg1; +- (id)_messageKeysWaitingToBeIndexes; +- (BOOL)_isMessageIndexed:(id)arg1; +- (void)_addMessagesWaitingToBeIndexed:(id)arg1; +- (void)_updateSmartMailboxUnreadCountsByRemovingMessagesWithKeys:(id)arg1; +- (void)_updateSmartMailboxUnreadCountsWithMessages:(id)arg1; +- (id)_filterMessages:(id)arg1 matchingCriterion:(id)arg2; +- (void)_updateUnreadCountsWithWatchedMessages; +- (void)_performUpdateNow; +- (void)_performDelayedUpdate:(id)arg1; +- (void)_watchMessages:(id)arg1 withUnreadState:(BOOL)arg2 onDate:(id)arg3; +- (unsigned long long)_uniqueCountOfMessages:(id)arg1; +- (void)_setUnreadMessages:(id)arg1 forSmartMailbox:(id)arg2 onDate:(id)arg3; +- (void)_searchedMailboxPreferencesChanged:(id)arg1; +- (void)_smartMailboxesDidSaveToDisk:(id)arg1; +- (void)_smartMailboxesWillSaveToDisk:(id)arg1; +- (void)_storeDidOpen:(id)arg1; +- (void)_storeWillOpen:(id)arg1; +- (void)_mailboxesDeleted:(id)arg1; +- (void)_messagesCompacted:(id)arg1; +- (void)_messageFlagsChanged:(id)arg1; +- (void)_messagesAdded:(id)arg1; +- (void)_stopObservingNotifications; +- (void)_startObservingNotifications; +- (BOOL)_isObservingSmartMailbox:(id)arg1; +- (void)_setSmartMailboxesWithSpotlightCriterion:(id)arg1; +- (id)_pathForMessage:(id)arg1; +- (void)_decomposeMessageKey:(id)arg1 intoRowID:(id *)arg2 messageIDHeader:(id *)arg3; +- (id)_keyForMessage:(id)arg1; +- (id)_keyForMailbox:(id)arg1; +- (void)_setIsDirty:(BOOL)arg1; +- (void)_setIsUpdating:(BOOL)arg1; +- (void)smartMailbox:(id)arg1 willReturnDictionaryRepresentation:(id)arg2; +- (void)smartMailbox:(id)arg1 didInitializeWithDictionaryRepresentation:(id)arg2; +- (void)setSmartMailboxes:(id)arg1; +- (void)updateMailboxesUnreadCountUsingSpotlight:(id)arg1 useTotalCount:(BOOL)arg2; +- (void)_libraryMessagesFlagsChanged:(id)arg1; +- (void)_updateSmartMailboxUnreadCountUsingSpotlight:(id)arg1 useTotalCount:(BOOL)arg2; +- (BOOL)_canCreateQuery; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSnippetCalculator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSnippetCalculator.h new file mode 100644 index 00000000..5aca57bb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSnippetCalculator.h @@ -0,0 +1,33 @@ +/* + * 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" + +@class MFQuoteParser, NSMutableSet, NSOperationQueue; + +@interface MFSnippetCalculator : NSObject +{ + NSMutableSet *_messagesToCalculate; + BOOL _isCalculating; + id _delegate; + MFQuoteParser *_quoteParser; + NSOperationQueue *_calculationQueue; +} + +@property(readonly, nonatomic) NSOperationQueue *calculationQueue; // @synthesize calculationQueue=_calculationQueue; +@property(readonly, nonatomic) MFQuoteParser *quoteParser; // @synthesize quoteParser=_quoteParser; +@property __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (id)_snippetFromAttachments:(id)arg1; +- (id)_snippetForMessage:(id)arg1; +- (void)_performSnippetCalculation; +- (void)_queueCalculationIfNecessary; +- (void)calculateSnippetsForMessages:(id)arg1; +- (void)immediatelyCalculateSnippetForMessage:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSnippetCalculatorDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSnippetCalculatorDelegate-Protocol.h new file mode 100644 index 00000000..53b24829 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSnippetCalculatorDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol MFSnippetCalculatorDelegate +- (void)didCalculateSnippet:(id)arg1 forMessage:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSnippetManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSnippetManager.h new file mode 100644 index 00000000..559010ee --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSnippetManager.h @@ -0,0 +1,43 @@ +/* + * 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 "MFSnippetCalculatorDelegate.h" + +@class MFSnippetCalculator, NSMutableDictionary, NSMutableSet, NSOperationQueue, NSString; + +@interface MFSnippetManager : NSObject +{ + NSMutableSet *_messagesNeedingBodies; + id _pendingSnippetsLock; + NSMutableDictionary *_pendingSnippetDictionariesByStore; + BOOL _queuedUpdate; + MFSnippetCalculator *_snippetCalculator; + NSOperationQueue *_snippetCommitQueue; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) NSOperationQueue *snippetCommitQueue; // @synthesize snippetCommitQueue=_snippetCommitQueue; +@property(readonly, nonatomic) MFSnippetCalculator *snippetCalculator; // @synthesize snippetCalculator=_snippetCalculator; +- (void).cxx_destruct; +- (void)_commitPendingSnippets; +- (void)_queueCommitPendingSnippets; +- (void)didCalculateSnippet:(id)arg1 forMessage:(id)arg2; +- (void)_messageBodyDataAvailable:(id)arg1; +- (id)fetchSnippetsForMessages:(id)arg1; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSpecialMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSpecialMailbox.h new file mode 100644 index 00000000..64dbbcdd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSpecialMailbox.h @@ -0,0 +1,58 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface MFSpecialMailbox : MFMailbox +{ +} + ++ (id)visibleFlagMailboxes; ++ (void)updateVisibleFlagMailboxes; ++ (id)flagMailboxes; ++ (id)VIPSendersMailbox; ++ (id)flagsMailbox; ++ (id)archiveMailbox; ++ (id)trashMailbox; ++ (id)outboxMailbox; ++ (id)junkMailbox; ++ (id)draftsMailbox; ++ (id)sentMessagesMailbox; ++ (id)inboxMailbox; ++ (id)specialMailboxForMailboxType:(int)arg1; ++ (id)specialMailboxWithIdentifier:(id)arg1; ++ (id)appleScriptNameForMailboxType:(int)arg1; +- (void)_updateDontIndexFlagFile; +- (void)saveUserInfo; +- (id)_loadUserInfo; +- (id)_viewerAttributesKey; +- (id)tildeAbbreviatedPath; +- (void)setAllCriteriaMustBeSatisfied:(BOOL)arg1; +- (BOOL)allCriteriaMustBeSatisfied; +- (void)setCriteria:(id)arg1; +- (id)criteria; +- (unsigned long long)displayCount; +- (unsigned long long)indexToInsertChildMailbox:(id)arg1; +- (unsigned long long)indexOfChild:(id)arg1; +- (id)sortedChildAtIndex:(unsigned long long)arg1 hidingGmail:(BOOL)arg2; +- (unsigned long long)numberOfSortedChildrenHidingGmail:(BOOL)arg1; +- (unsigned long long)numberOfVisibleChildrenHidingGmail:(BOOL)arg1; +- (unsigned long long)numberOfChildren; +- (id)visibleChildAtIndex:(unsigned long long)arg1; +- (id)childAtIndex:(unsigned long long)arg1; +- (id)mutableCopyOfChildrenIncludingHiddenChildren:(BOOL)arg1 hidingGmail:(BOOL)arg2; +- (id)childEnumeratorIncludingHiddenChildren:(BOOL)arg1; +- (id)children; +- (id)account; +- (id)displayName; +- (id)criterion; +- (id)_initWithName:(id)arg1 type:(int)arg2 uuid:(id)arg3; +- (id)messages; +- (id)objectSpecifier; +- (id)appleScriptKey; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSpotlightManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSpotlightManager.h new file mode 100644 index 00000000..13b666c9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSpotlightManager.h @@ -0,0 +1,51 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCInvocationQueue, NSConditionLock, NSMutableDictionary, NSMutableSet, NSString; + +@interface MFSpotlightManager : NSObject +{ + NSConditionLock *_attachmentIndexingLock; + NSMutableSet *_messsagesScheduledForAttachmentIndexing; + NSMutableDictionary *_queryObserverDictionary; + MCInvocationQueue *_indexQueue; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) MCInvocationQueue *indexQueue; // @synthesize indexQueue=_indexQueue; +- (void).cxx_destruct; +- (id)acquireQueryObserver:(long long)arg1; +- (void)unregisterQueryObserver:(long long)arg1; +- (long long)registerQueryObserver:(id)arg1; +- (void)immediatelyIndexAttachmentsForMessage:(id)arg1; +- (void)immediatelyIndexAttachmentsForMessages:(id)arg1; +- (void)indexAttachmentsForMessage:(id)arg1; +- (void)indexAttachmentsForMessages:(id)arg1; +- (void)_indexAttachmentsForScheduledMessages; +- (void)_triggerNowAttachmentIndexing; +- (void)_triggerDelayedAttachmentIndexing; +- (void)_scheduleAttachmentIndexingForMessages:(id)arg1; +- (void)_synchronouslyIndexAttachmentsForMessages:(id)arg1; +- (void)_synchronouslyIndexAttachmentsForMessage:(id)arg1; +- (BOOL)_shouldIndexAttachmentsForMessage:(id)arg1; +- (void)setAttributeForFileAtPath:(id)arg1 name:(id)arg2 value:(id)arg3; +- (void)_setAttributeForFileAtPath:(id)arg1 name:(id)arg2 value:(id)arg3; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSpotlightResultCollector.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSpotlightResultCollector.h new file mode 100644 index 00000000..1f5cb95c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSpotlightResultCollector.h @@ -0,0 +1,49 @@ +/* + * 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" + +@class MFMessageCriterion, NSArray, NSString; + +@interface MFSpotlightResultCollector : NSObject +{ + struct __MDQuery *_query; + BOOL _queryIsCancelled; + BOOL _async; + BOOL _checkWhereFromsPaths; + unsigned int _options; + MFMessageCriterion *_criterion; + NSString *_expression; + id _target; + long long _nextIndexToProcess; + double _queryStartTime; + double _timeSpentInCallback; + unsigned long long _totalResultsCount; + double _firstCallbackTime; + NSArray *_excludedMailboxURLs; +} + +@property(retain, nonatomic) NSArray *excludedMailboxURLs; // @synthesize excludedMailboxURLs=_excludedMailboxURLs; +@property(nonatomic) BOOL checkWhereFromsPaths; // @synthesize checkWhereFromsPaths=_checkWhereFromsPaths; +@property(nonatomic) double firstCallbackTime; // @synthesize firstCallbackTime=_firstCallbackTime; +@property(nonatomic) unsigned long long totalResultsCount; // @synthesize totalResultsCount=_totalResultsCount; +@property(nonatomic) double timeSpentInCallback; // @synthesize timeSpentInCallback=_timeSpentInCallback; +@property(nonatomic) double queryStartTime; // @synthesize queryStartTime=_queryStartTime; +@property(nonatomic) BOOL async; // @synthesize async=_async; +@property(nonatomic) BOOL queryIsCancelled; // @synthesize queryIsCancelled=_queryIsCancelled; +@property(nonatomic) long long nextIndexToProcess; // @synthesize nextIndexToProcess=_nextIndexToProcess; +@property(nonatomic) unsigned int options; // @synthesize options=_options; +@property(retain, nonatomic) id target; // @synthesize target=_target; +@property(retain, nonatomic) NSString *expression; // @synthesize expression=_expression; +@property(retain, nonatomic) MFMessageCriterion *criterion; // @synthesize criterion=_criterion; +- (void).cxx_destruct; +- (void)dealloc; +- (struct __MDQuery *)query; +- (id)initWithCriterion:(id)arg1 target:(id)arg2 query:(struct __MDQuery *)arg3 expression:(id)arg4; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSqliteHandle.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSqliteHandle.h new file mode 100644 index 00000000..18e0461b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSqliteHandle.h @@ -0,0 +1,38 @@ +/* + * 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 "NSCacheDelegate.h" + +@class NSArray, NSString; + +@interface MFSqliteHandle : NSObject +{ + BOOL _needsUnreadCountUpdate; + struct sqlite3 *_db; + double _busyTimer; + NSArray *_searchStringArray; +} + ++ (id)newHandleIsWriter:(BOOL)arg1; +@property(nonatomic) BOOL needsUnreadCountUpdate; // @synthesize needsUnreadCountUpdate=_needsUnreadCountUpdate; +@property(retain, nonatomic) NSArray *searchStringArray; // @synthesize searchStringArray=_searchStringArray; +@property(nonatomic) double busyTimer; // @synthesize busyTimer=_busyTimer; +@property(nonatomic) struct sqlite3 *db; // @synthesize db=_db; +- (void).cxx_destruct; +- (id)newPreparedStatementWithPattern:(const char *)arg1; +- (void)dealloc; +- (void)close; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFStringUniquer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFStringUniquer.h new file mode 100644 index 00000000..02d2f633 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFStringUniquer.h @@ -0,0 +1,23 @@ +/* + * 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" + +@class NSMapTable; + +@interface MFStringUniquer : NSObject +{ + NSMapTable *_stringsTable; +} + +- (void).cxx_destruct; +- (id)description; +- (void)setUniquedString:(id)arg1 forIndex:(long long)arg2; +- (id)copyUniquedStringForIndex:(long long)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSyncedFile.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSyncedFile.h new file mode 100644 index 00000000..156d3f5a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFSyncedFile.h @@ -0,0 +1,76 @@ +/* + * 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 "NSFilePresenter.h" + +@class NSOperationQueue, NSString, NSURL; + +@interface MFSyncedFile : NSObject +{ + NSURL *_cloudURL; + id _cloudURLLock; + NSURL *_url; + id _conflictResolver; + unsigned long long _syncState; +} + ++ (id)_metadataURL; ++ (id)_metadata; ++ (id)_currentiCloudAccount; ++ (void)stopPersistingSyncedFileForURL:(id)arg1; ++ (id)syncedFileForURL:(id)arg1 withConflictResolver:(id)arg2; ++ (void)initialize; +@property unsigned long long syncState; // @synthesize syncState=_syncState; +@property(copy) id conflictResolver; // @synthesize conflictResolver=_conflictResolver; +@property(readonly, nonatomic) NSURL *URL; // @synthesize URL=_url; +- (void).cxx_destruct; +- (void)_handleIdentityChange:(id)arg1; +- (void)_resolveConflicts; +- (void)_setCloudURL; +@property(readonly) NSURL *cloudURL; +- (id)_ubiquitousFileName; +- (id)_ubiquitousFileURL; +- (BOOL)_fileExistsInCloud; +- (BOOL)_writeDataToCloud:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (BOOL)_syncWithCloudPostNotification:(BOOL)arg1 error:(id *)arg2; +- (BOOL)synchronouslyWritePlist:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (id)synchronouslyReadPlistWithOptions:(unsigned long long)arg1 error:(id *)arg2; +- (BOOL)_deleteFileLocallyPostingNotification:(BOOL)arg1 error:(id *)arg2; +- (void)deleteFile; +- (id)_readPlistWithOptions:(unsigned long long)arg1 error:(id *)arg2; +- (id)readPlistWithOptions:(unsigned long long)arg1; +- (void)writePlist:(id)arg1 options:(unsigned long long)arg2; +- (id)readDataWithOptions:(unsigned long long)arg1; +- (BOOL)_writeDataLocally:(id)arg1 options:(unsigned long long)arg2 setMetadata:(BOOL)arg3 postNotification:(BOOL)arg4 error:(id *)arg5; +- (BOOL)_writeDataAfterResolvingConflict:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (BOOL)_writeData:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (void)writeData:(id)arg1 options:(unsigned long long)arg2; +- (void)_clearMetadata; +- (BOOL)_signedInState; +- (void)_setiCloudAccount; +- (id)_iCloudAccount; +- (void)presentedItemDidResolveConflictVersion:(id)arg1; +- (void)presentedItemDidMoveToURL:(id)arg1; +- (void)presentedItemDidGainVersion:(id)arg1; +- (void)presentedItemDidChange; +- (void)accommodatePresentedItemDeletionWithCompletionHandler:(id)arg1; +@property(readonly, retain) NSOperationQueue *presentedItemOperationQueue; +@property(readonly, copy) NSURL *presentedItemURL; +- (void)dealloc; +- (id)init; +- (id)initWithURL:(id)arg1 withConflictResolver:(id)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly, copy) NSURL *primaryPresentedItemURL; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFTOCMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFTOCMessage.h new file mode 100644 index 00000000..940f6265 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFTOCMessage.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@class NSString; + +@interface MFTOCMessage : MCMessage +{ + NSString *_messageID; + BOOL _isInIncomingMail; + NSString *_attachment; + struct _NSRange _mboxRange; +} + ++ (id)messageIDForSender:(id)arg1 subject:(id)arg2 dateAsTimeInterval:(double)arg3; +@property(copy, nonatomic) NSString *attachment; // @synthesize attachment=_attachment; +@property(nonatomic) struct _NSRange mboxRange; // @synthesize mboxRange=_mboxRange; +@property(nonatomic) BOOL isInIncomingMail; // @synthesize isInIncomingMail=_isInIncomingMail; +- (void).cxx_destruct; +- (id)remoteID; +- (id)description; +- (unsigned long long)messageSize; +- (id)messageID; +- (void)setDataSource:(id)arg1; +- (id)dataSource; +- (id)mailbox; +- (id)account; +- (id)cachedData; +- (unsigned long long)loadCachedInfoFromBytes:(const char *)arg1 length:(unsigned long long)arg2 isDirty:(char *)arg3 usingUniqueStrings:(id)arg4; +- (id)init; +- (id)initWithMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFTableOfContents.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFTableOfContents.h new file mode 100644 index 00000000..81d8b48b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFTableOfContents.h @@ -0,0 +1,54 @@ +/* + * 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" + +@class NSData, NSMutableArray, NSMutableDictionary, NSString; + +@interface MFTableOfContents : NSObject +{ + NSMutableArray *_messages; + NSData *_data; + CDStruct_c4d47a41 _header; + NSMutableDictionary *_messageIDMap; + BOOL _isValid; + BOOL _isDirty; + NSString *_path; + unsigned long long _position; +} + +@property(nonatomic) unsigned long long position; // @synthesize position=_position; +@property(readonly, copy, nonatomic) NSString *path; // @synthesize path=_path; +@property(nonatomic) BOOL isDirty; // @synthesize isDirty=_isDirty; +@property(nonatomic) BOOL isValid; // @synthesize isValid=_isValid; +- (void).cxx_destruct; +- (void)_sort; +- (BOOL)isSortedByDateReceived; +- (BOOL)isSortedAscending; +- (void)setSortOrder:(id)arg1 ascending:(BOOL)arg2; +- (id)sortOrder; +- (id)messageForMessageID:(id)arg1; +- (BOOL)flushToFile; +- (id)description; +- (void)addMessages:(id)arg1; +- (void)addMessage:(id)arg1; +- (void)_addMessageToMap:(id)arg1; +- (void)removeMessage:(id)arg1; +- (id)messages; +- (int)count; +- (void)rebuildCacheFromMessages:(id)arg1; +- (void)forceValidityToYES; +- (id)initWithPath:(id)arg1; +- (id)init; +- (void)setTimeStamp:(int)arg1; +- (id)appendCachedDataToData:(id)arg1; +- (void)appendHeader:(CDStruct_c4d47a41)arg1 toData:(id)arg2; +- (BOOL)loadCacheFromFileUsingUniqueStrings:(id)arg1 messageStore:(id)arg2; +- (BOOL)loadCacheFromFileUsingUniqueStrings:(id)arg1; +- (void)_checkHeader; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFUIMailbox-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFUIMailbox-Protocol.h new file mode 100644 index 00000000..1fae8850 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFUIMailbox-Protocol.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSCopying.h" +#import "NSObject.h" + +@protocol MFUIMailbox +@property(readonly) BOOL isVisibleFlaggedMailbox; +@property int type; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (BOOL)isPlaceholder; +- (id)accountURLString; +- (id)account; +- (BOOL)isSmartMailbox; +- (BOOL)isStore; +- (id)children; +- (BOOL)hasChildren; +- (unsigned long long)numberOfChildren; +- (unsigned long long)displayCount; +- (BOOL)isContainer; +- (id)extendedDisplayName; +- (id)displayName; +- (id)persistentIdentifier; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFUnreadCountQueryObserver.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFUnreadCountQueryObserver.h new file mode 100644 index 00000000..d9ab3aed --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFUnreadCountQueryObserver.h @@ -0,0 +1,37 @@ +/* + * 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" + +@class MFMailbox, NSMutableDictionary; + +@interface MFUnreadCountQueryObserver : NSObject +{ + struct __MDQuery *_query; + BOOL _queryIsCancelled; + BOOL _useTotalCount; + BOOL _checkWhereFromsPaths; + long long _nextIndexToProcess; + MFMailbox *_mailbox; + NSMutableDictionary *_seenIDs; + NSMutableDictionary *_messageIDsFromAttachments; +} + +@property(readonly, nonatomic) NSMutableDictionary *messageIDsFromAttachments; // @synthesize messageIDsFromAttachments=_messageIDsFromAttachments; +@property(readonly, nonatomic) NSMutableDictionary *seenIDs; // @synthesize seenIDs=_seenIDs; +@property(retain, nonatomic) MFMailbox *mailbox; // @synthesize mailbox=_mailbox; +@property(nonatomic) BOOL checkWhereFromsPaths; // @synthesize checkWhereFromsPaths=_checkWhereFromsPaths; +@property(nonatomic) BOOL useTotalCount; // @synthesize useTotalCount=_useTotalCount; +@property(nonatomic) long long nextIndexToProcess; // @synthesize nextIndexToProcess=_nextIndexToProcess; +@property(nonatomic) BOOL queryIsCancelled; // @synthesize queryIsCancelled=_queryIsCancelled; +- (void).cxx_destruct; +- (void)clearMailbox; +- (struct __MDQuery *)query; +- (void)dealloc; +- (id)initWithMailbox:(id)arg1 query:(struct __MDQuery *)arg2 useTotalCount:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFUsageCounter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFUsageCounter.h new file mode 100644 index 00000000..1a9604e6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFUsageCounter.h @@ -0,0 +1,38 @@ +/* + * 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" + +@class NSCalendar, NSDate, NSMutableDictionary; + +@interface MFUsageCounter : NSObject +{ + NSMutableDictionary *_counts; + BOOL _isDirty; + NSCalendar *_gregorianCalendar; + NSDate *_referenceDate; +} + ++ (void)setGatherJunkMailUsageCounts:(BOOL)arg1; ++ (BOOL)gatherJunkMailUsageCounts; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) NSDate *referenceDate; // @synthesize referenceDate=_referenceDate; +@property(readonly, nonatomic) NSCalendar *gregorianCalendar; // @synthesize gregorianCalendar=_gregorianCalendar; +- (void).cxx_destruct; +- (void)incrementCountForKey:(id)arg1 byCount:(unsigned long long)arg2; +- (void)incrementCountForKey:(id)arg1; +- (void)removeCountForKey:(id)arg1; +- (unsigned long long)countForKey:(id)arg1 includeToday:(BOOL)arg2; +- (unsigned long long)countForKey:(id)arg1; +- (long long)numberOfDaysAvailableForKey:(id)arg1; +- (void)saveDefaults; +- (id)_dictionaryForKey:(id)arg1 createIfNeeded:(BOOL)arg2; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFVIPSendersController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFVIPSendersController.h new file mode 100644 index 00000000..d0bbc0e3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFVIPSendersController.h @@ -0,0 +1,54 @@ +/* + * 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" + +@class NSMutableArray, NSOperationQueue, NSSet, NSUbiquitousKeyValueStore; + +@interface MFVIPSendersController : NSObject +{ + NSMutableArray *_VIPSendersMailboxes; + NSUbiquitousKeyValueStore *_store; + NSOperationQueue *_operationQueue; + NSSet *_VIPSendersAddresses; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain) NSSet *VIPSendersAddresses; // @synthesize VIPSendersAddresses=_VIPSendersAddresses; +@property(readonly, nonatomic) NSOperationQueue *operationQueue; // @synthesize operationQueue=_operationQueue; +@property(readonly, nonatomic) NSUbiquitousKeyValueStore *store; // @synthesize store=_store; +- (void).cxx_destruct; +- (id)_keyForVIP:(id)arg1; +- (void)_mergeVIPs; +- (void)_updateLocalWithCloud:(id)arg1 refresh:(BOOL)arg2; +- (void)_storeChanged:(id)arg1; +- (void)_updateCloudWithLocal:(id)arg1; +- (void)_addressBookDidChange:(id)arg1; +- (id)addressesForVIPSenders; +- (BOOL)isVIPForPerson:(id)arg1 orAddress:(id)arg2; +- (void)removeVIPSenderWithAddress:(id)arg1; +- (void)removeVIPSenderWithMailboxes:(id)arg1; +- (void)addNewVIPSenderWithAddress:(id)arg1 name:(id)arg2; +- (id)VIPSendersMailboxes; +- (id)_vipsPlistPath; +- (void)_updateMailboxesAndPostNotificationsOnMainThread; +- (void)_readVIPSenders; +- (void)_saveVIPSendersAndUpdateMailboxes:(BOOL)arg1; +- (void)save; +- (id)_addressBookRecordsForFirstName:(id)arg1 lastName:(id)arg2 withAddressBook:(id)arg3; +- (id)_ABPersonForName:(id)arg1 withAddressBook:(id)arg2; +- (id)_ABPersonForName:(id)arg1 emailAddresses:(id)arg2 withAddressBook:(id)arg3; +- (id)_combineAddresses:(id)arg1 withAddresses:(id)arg2; +- (BOOL)_canCreateNewVIP; +- (id)_mailboxWithName:(id)arg1 addresses:(id)arg2 uuid:(id)arg3; +- (id)_addressesForMailboxCriteria:(id)arg1; +- (id)_mailboxCriteriaForAddresses:(id)arg1; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFWebMessageDocument.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFWebMessageDocument.h new file mode 100644 index 00000000..ca4a482b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MFWebMessageDocument.h @@ -0,0 +1,68 @@ +/* + * 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" + +@class MCMimeBody, MCParsedMessage, NSDictionary, NSMutableDictionary, NSURL; + +@interface MFWebMessageDocument : NSObject +{ + NSMutableDictionary *_attachmentsByURL; + id _mimePartsByURLLock; + NSDictionary *_mimePartsByURL; + NSMutableDictionary *_headerAttachmentsByURL; + BOOL _containsRemoteContent; + BOOL _messageIsFromMicrosoft; + BOOL _collapseQuotedBlocks; + BOOL _shouldDownloadRemoteURLs; + int _uniqueIdentifier; + NSURL *_baseURL; + MCParsedMessage *_parsedMessage; + MCMimeBody *_mimeBody; +} + ++ (void)documentWillClose:(id)arg1; ++ (id)documentWithUniqueIdentifier:(int)arg1; ++ (void)document:(id *)arg1 attachment:(id *)arg2 forURL:(id)arg3; ++ (void)document:(id *)arg1 attachmentController:(id *)arg2 mimePart:(id *)arg3 forURL:(id)arg4; ++ (void)document:(id *)arg1 attachmentController:(id *)arg2 forURL:(id)arg3; ++ (id)invalidBaseURL; ++ (id)openDocuments; ++ (void)initialize; +@property(readonly, nonatomic) MCMimeBody *mimeBody; // @synthesize mimeBody=_mimeBody; +@property(readonly, nonatomic) MCParsedMessage *parsedMessage; // @synthesize parsedMessage=_parsedMessage; +@property(readonly, nonatomic) int uniqueIdentifier; // @synthesize uniqueIdentifier=_uniqueIdentifier; +@property(nonatomic) BOOL shouldDownloadRemoteURLs; // @synthesize shouldDownloadRemoteURLs=_shouldDownloadRemoteURLs; +@property(nonatomic) BOOL collapseQuotedBlocks; // @synthesize collapseQuotedBlocks=_collapseQuotedBlocks; +@property(nonatomic) BOOL messageIsFromMicrosoft; // @synthesize messageIsFromMicrosoft=_messageIsFromMicrosoft; +@property(retain, nonatomic) NSURL *baseURL; // @synthesize baseURL=_baseURL; +- (void).cxx_destruct; +- (BOOL)containsRemoteContent; +- (void)setContainsRemoteContent:(BOOL)arg1; +- (id)parsedMessageFromRange:(id)arg1; +- (void)removeNonHeaderAttachmentForURL:(id)arg1; +- (void)removeAttachmentsForURLs:(id)arg1; +- (void)clearAttachmentsByURL; +- (id)attachmentsByURL; +- (id)attachments; +- (BOOL)hasAttachments; +- (id)userAttachments; +- (BOOL)hasAttachmentViewController:(id)arg1; +- (void)removeAllAttachments; +- (void)removeAttachmentForURL:(id)arg1; +- (void)addAttachments:(id)arg1; +- (void)addAttachment:(id)arg1 forURLString:(id)arg2; +- (void)addAttachment:(id)arg1 forURL:(id)arg2; +- (void)addAttachment:(id)arg1 forURL:(id)arg2 inHeaderView:(BOOL)arg3; +- (id)attachmentForURL:(id)arg1; +- (id)attachmentForURL:(id)arg1 inHeaderView:(BOOL)arg2; +- (id)mimePartForURL:(id)arg1; +- (id)init; +- (id)initForDisplay:(BOOL)arg1; +- (id)initWithMimeBody:(id)arg1 forDisplay:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MailFramework.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MailFramework.h new file mode 100644 index 00000000..9de48670 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MailFramework.h @@ -0,0 +1,19 @@ +/* + * 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" + +@interface MailFramework : NSObject +{ +} + ++ (void)setUserAgent:(id)arg1; ++ (id)userAgent; ++ (id)frameworkVersion; ++ (id)bundle; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MailMigratorService-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MailMigratorService-Protocol.h new file mode 100644 index 00000000..9f3477aa --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/MailMigratorService-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MailMigratorService +- (void)migrateAppleScriptFiles; +- (void)migrateMailDownloadsFiles; +- (void)fixMailDownloadsMigrationKey; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSAppleEventDescriptor-MessageRuleAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSAppleEventDescriptor-MessageRuleAdditions.h new file mode 100644 index 00000000..139ec90b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSAppleEventDescriptor-MessageRuleAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAppleEventDescriptor.h" + +@interface NSAppleEventDescriptor (MessageRuleAdditions) +- (BOOL)isSendToSelfEvent; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSAppleScript-MessageRuleAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSAppleScript-MessageRuleAdditions.h new file mode 100644 index 00000000..cf9d6c7a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSAppleScript-MessageRuleAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAppleScript.h" + +@interface NSAppleScript (MessageRuleAdditions) ++ (id)appleScriptLock; ++ (id)appleEventDescriptionWithEventClass:(unsigned int)arg1 eventID:(unsigned int)arg2 andArguments:(id)arg3; ++ (id)appleEventDescriptionWithName:(id)arg1 andArguments:(id)arg2; ++ (id)_newScriptAtPath:(id)arg1 errorInfo:(id *)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSArray-AppleScriptConveniences.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSArray-AppleScriptConveniences.h new file mode 100644 index 00000000..dcea4cdb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSArray-AppleScriptConveniences.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArray.h" + +@interface NSArray (AppleScriptConveniences) +- (id)arrayByEvaluatingObjectSpecifiers; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSCacheDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSCacheDelegate-Protocol.h new file mode 100644 index 00000000..fd487731 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSCacheDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSCacheDelegate + +@optional +- (void)cache:(id)arg1 willEvictObject:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSCoding-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSCoding-Protocol.h new file mode 100644 index 00000000..7bda0254 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSCoding-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCoding +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSCopying-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSCopying-Protocol.h new file mode 100644 index 00000000..3275f717 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCopying +- (id)copyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSDate-toc_extension.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSDate-toc_extension.h new file mode 100644 index 00000000..f867983f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSDate-toc_extension.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSDate.h" + +@interface NSDate (toc_extension) +- (int)tocSillyDateInt; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSDictionary-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSDictionary-MailAdditions.h new file mode 100644 index 00000000..4c205a8e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSDictionary-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSDictionary.h" + +@interface NSDictionary (MailAdditions) +- (id)mutableSomewhatDeepCopy; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSDictionary-MailFoundationAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSDictionary-MailFoundationAdditions.h new file mode 100644 index 00000000..21e081e9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSDictionary-MailFoundationAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSDictionary.h" + +@interface NSDictionary (MailFoundationAdditions) +- (id)objectForIntegerKey:(long long)arg1; +- (struct CGSize)sizeForKey:(id)arg1; +- (double)cgfloatForKey:(id)arg1; +- (float)floatForKey:(id)arg1; +- (long long)integerForKey:(id)arg1; +- (BOOL)boolForKey:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFileManager-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFileManager-MailAdditions.h new file mode 100644 index 00000000..7bdd3afc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFileManager-MailAdditions.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileManager.h" + +@interface NSFileManager (MailAdditions) +- (id)mf_subpathsOfDirectoryAtPath:(id)arg1; +- (id)uniquePathInDirectory:(id)arg1 withName:(id)arg2 extension:(id)arg3; +- (id)pathByUniquingPath:(id)arg1; +- (id)localizedFullPath:(id)arg1; +- (id)pathByResolvingAliasesInPath:(id)arg1; +- (void)deleteFilesInSortedArray:(id)arg1 matchingPrefix:(id)arg2 fromDirectory:(id)arg3; +- (id)pathsAtDirectory:(id)arg1 beginningWithString:(id)arg2; +- (BOOL)canWriteToFileAtPath:(id)arg1; +- (BOOL)canWriteToDirectoryAtPath:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFileManagerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFileManagerDelegate-Protocol.h new file mode 100644 index 00000000..b1fc717f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFileManagerDelegate-Protocol.h @@ -0,0 +1,29 @@ +/* + * 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" + +@protocol NSFileManagerDelegate + +@optional +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtURL:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtPath:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 linkingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 linkingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldLinkItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldLinkItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 movingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 movingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldMoveItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldMoveItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 copyingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 copyingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldCopyItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldCopyItemAtPath:(id)arg2 toPath:(id)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFilePresenter-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFilePresenter-Protocol.h new file mode 100644 index 00000000..71d3aeaf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFilePresenter-Protocol.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class NSOperationQueue, NSURL; + +@protocol NSFilePresenter +@property(readonly, retain) NSOperationQueue *presentedItemOperationQueue; +@property(readonly, copy) NSURL *presentedItemURL; + +@optional +@property(readonly, copy) NSURL *primaryPresentedItemURL; +- (void)presentedSubitemAtURL:(id)arg1 didResolveConflictVersion:(id)arg2; +- (void)presentedSubitemAtURL:(id)arg1 didLoseVersion:(id)arg2; +- (void)presentedSubitemAtURL:(id)arg1 didGainVersion:(id)arg2; +- (void)presentedSubitemDidChangeAtURL:(id)arg1; +- (void)presentedSubitemAtURL:(id)arg1 didMoveToURL:(id)arg2; +- (void)presentedSubitemDidAppearAtURL:(id)arg1; +- (void)accommodatePresentedSubitemDeletionAtURL:(id)arg1 completionHandler:(id)arg2; +- (void)presentedItemDidResolveConflictVersion:(id)arg1; +- (void)presentedItemDidLoseVersion:(id)arg1; +- (void)presentedItemDidGainVersion:(id)arg1; +- (void)presentedItemDidChange; +- (void)presentedItemDidMoveToURL:(id)arg1; +- (void)accommodatePresentedItemDeletionWithCompletionHandler:(id)arg1; +- (void)savePresentedItemChangesWithCompletionHandler:(id)arg1; +- (void)relinquishPresentedItemToWriter:(id)arg1; +- (void)relinquishPresentedItemToReader:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFileWrapper-HFSExtensions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFileWrapper-HFSExtensions.h new file mode 100644 index 00000000..a8efa58a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFileWrapper-HFSExtensions.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@class NSString; + +@interface NSFileWrapper (HFSExtensions) ++ (void)loadMessageExtensions; ++ (id)_quarantinePropertiesQueue; +- (BOOL)_Message_updateFromPath:(id)arg1 checkOnly:(BOOL)arg2 exists:(char *)arg3; +- (void)_Message_setPreferredFilename:(id)arg1; +- (id)_Message_initWithURL:(id)arg1 options:(unsigned long long)arg2 error:(id *)arg3; +- (BOOL)_Message_writeToURL:(id)arg1 options:(unsigned long long)arg2 originalContentsURL:(id)arg3 error:(id *)arg4; +@property(retain) NSString *savedPath; +- (id)remoteAccessMimeType; +@property BOOL shouldBeViewedInline; +- (BOOL)couldConfuseWindowsClients; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFileWrapper-UniquePaths.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFileWrapper-UniquePaths.h new file mode 100644 index 00000000..1c242460 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSFileWrapper-UniquePaths.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFileWrapper.h" + +@interface NSFileWrapper (UniquePaths) ++ (id)uniquedPathForFile:(id)arg1 inDirectory:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSKeyedUnarchiver-MailFoundationAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSKeyedUnarchiver-MailFoundationAdditions.h new file mode 100644 index 00000000..35676627 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSKeyedUnarchiver-MailFoundationAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSKeyedUnarchiver.h" + +@interface NSKeyedUnarchiver (MailFoundationAdditions) ++ (id)safeUnarchiveObjectWithData:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSKeyedUnarchiverDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSKeyedUnarchiverDelegate-Protocol.h new file mode 100644 index 00000000..ae7b1b93 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSKeyedUnarchiverDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol NSKeyedUnarchiverDelegate + +@optional +- (void)unarchiverDidFinish:(id)arg1; +- (void)unarchiverWillFinish:(id)arg1; +- (void)unarchiver:(id)arg1 willReplaceObject:(id)arg2 withObject:(id)arg3; +- (id)unarchiver:(id)arg1 didDecodeObject:(id)arg2; +- (Class)unarchiver:(id)arg1 cannotDecodeObjectOfClassName:(id)arg2 originalClasses:(id)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSLocking-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSLocking-Protocol.h new file mode 100644 index 00000000..4b0f16ff --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSLocking-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSLocking +- (void)unlock; +- (void)lock; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSMutableDictionary-MailFoundationAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSMutableDictionary-MailFoundationAdditions.h new file mode 100644 index 00000000..ad183a45 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSMutableDictionary-MailFoundationAdditions.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMutableDictionary.h" + +@interface NSMutableDictionary (MailFoundationAdditions) +- (void)removeObjectForIntegerKey:(long long)arg1; +- (void)setObject:(id)arg1 forIntegerKey:(long long)arg2; +- (void)setSize:(struct CGSize)arg1 forKey:(id)arg2; +- (void)setCGFloat:(double)arg1 forKey:(id)arg2; +- (void)setFloat:(float)arg1 forKey:(id)arg2; +- (void)setInteger:(long long)arg1 forKey:(id)arg2; +- (void)setBool:(BOOL)arg1 forKey:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSNotificationCenter-MainThreadPosting.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSNotificationCenter-MainThreadPosting.h new file mode 100644 index 00000000..d6966634 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSNotificationCenter-MainThreadPosting.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSNotificationCenter.h" + +@interface NSNotificationCenter (MainThreadPosting) +- (void)postNotificationInMainThread:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSObject-MainThreadMessaging.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSObject-MainThreadMessaging.h new file mode 100644 index 00000000..3b70662a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSObject-MainThreadMessaging.h @@ -0,0 +1,13 @@ +/* + * 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" + +@interface NSObject (MainThreadMessaging) ++ (void)mf_performBlockOnMainThread:(id)arg1 waitUntilDone:(void)arg2; ++ (void)_mf_mainThreadPerform:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSObject-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSObject-Protocol.h new file mode 100644 index 00000000..ebf9f6c2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSObject-Protocol.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class NSString; + +@protocol NSObject +@property(readonly, copy) NSString *description; +@property(readonly) Class superclass; +@property(readonly) unsigned long long hash; +- (struct _NSZone *)zone; +- (unsigned long long)retainCount; +- (id)autorelease; +- (oneway void)release; +- (id)retain; +- (BOOL)respondsToSelector:(SEL)arg1; +- (BOOL)conformsToProtocol:(id)arg1; +- (BOOL)isMemberOfClass:(Class)arg1; +- (BOOL)isKindOfClass:(Class)arg1; +- (BOOL)isProxy; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2 withObject:(id)arg3; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2; +- (id)performSelector:(SEL)arg1; +- (id)self; +- (Class)class; +- (BOOL)isEqual:(id)arg1; + +@optional +@property(readonly, copy) NSString *debugDescription; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSObject-_mf_LibraryMessageEquality.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSObject-_mf_LibraryMessageEquality.h new file mode 100644 index 00000000..a6c21ed6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSObject-_mf_LibraryMessageEquality.h @@ -0,0 +1,12 @@ +/* + * 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" + +@interface NSObject (_mf_LibraryMessageEquality) +- (long long)libraryID; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSPersistentStoreCoordinator-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSPersistentStoreCoordinator-MailAdditions.h new file mode 100644 index 00000000..2ea4e142 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSPersistentStoreCoordinator-MailAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPersistentStoreCoordinator.h" + +@interface NSPersistentStoreCoordinator (MailAdditions) +- (id)_addSQLPersistentStoreFromPath:(id)arg1 URL:(id)arg2 type:(long long)arg3 recoveringFromError:(id)arg4; +- (id)addSQLPersistentStoreFromPath:(id)arg1 type:(long long)arg2 error:(id *)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSPortDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSPortDelegate-Protocol.h new file mode 100644 index 00000000..3f9faebf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSPortDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSPortDelegate + +@optional +- (void)handlePortMessage:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSPortMessage-MailFoundationAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSPortMessage-MailFoundationAdditions.h new file mode 100644 index 00000000..058e1a51 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSPortMessage-MailFoundationAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPortMessage.h" + +@interface NSPortMessage (MailFoundationAdditions) +- (void)safeSendBeforeDate:(id)arg1; +- (void)safeSendNow; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSSound-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSSound-MailAdditions.h new file mode 100644 index 00000000..22d9e0ac --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSSound-MailAdditions.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSound.h" + +@interface NSSound (MailAdditions) ++ (id)soundsAtPaths:(id)arg1; ++ (id)appendSoundsToPaths:(id)arg1; ++ (id)containerLibrarySoundsDirs; ++ (id)tildeLibrarySoundsDirs; ++ (id)networkLibrarySoundsDirs; ++ (id)librarySoundsDirs; ++ (id)systemLibrarySoundsDirs; ++ (id)validPathToSound:(id)arg1; ++ (void)addSoundPathToPlayList:(id)arg1 playImmediately:(BOOL)arg2; ++ (void)addSoundToPlayList:(id)arg1 playImmediately:(BOOL)arg2; ++ (void)_addSoundOrPathToPlayList:(id)arg1 playImmediately:(BOOL)arg2; ++ (void)_setupPlayList; ++ (void)sound:(id)arg1 didFinishPlaying:(BOOL)arg2; ++ (void)_playSound; ++ (void)_playNextSound; +- (BOOL)_playAsMailSound; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSString-MFLibraryID.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSString-MFLibraryID.h new file mode 100644 index 00000000..0027879d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSString-MFLibraryID.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MFLibraryID) ++ (id)stringWithLibraryID:(long long)arg1; +- (id)initWithLibraryID:(long long)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSString-MailFrameworkAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSString-MailFrameworkAdditions.h new file mode 100644 index 00000000..eeb75c79 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSString-MailFrameworkAdditions.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MailFrameworkAdditions) ++ (id)stringWithAttachmentCharacter; ++ (id)stringWithData:(id)arg1 encoding:(unsigned long long)arg2; +- (BOOL)isEqualExceptForFinalSlash:(id)arg1; +- (id)percentEscapedURLString; +- (id)validURLString; +- (BOOL)hasPrefixIgnoreCaseAndDiacritics:(id)arg1; +- (id)secondToLastPathComponent; +- (id)firstLine; +- (id)uniqueFilenameWithRespectToFilenames:(id)arg1; +- (id)encodedMessageIDString; +- (long long)compareAsInts:(id)arg1; +- (id)foldedStringForSuggestionsOriginatedExactMatchSearches; +- (id)fileSystemString; +- (BOOL)containsOnlyBreakingWhitespace; +- (BOOL)containsOnlyWhitespace; +- (id)stringByReplacingSpecialSlashesWith:(id)arg1; +- (id)stringByReplacingSpecialSlashesWithSlashes; +- (id)stringByReplacingSlashesWithSpecialSlashes; +- (id)specialSlash; +- (id)stringByRemovingLineEndingsForHTML; +- (id)stringByChangingBodyTagToDiv; +- (id)stringByReplacingCharactersInSet:(id)arg1 withCharacter:(unsigned short)arg2; +- (id)smartCapitalizedString; +- (unsigned long long)hexLongLongValue; +- (unsigned int)hexIntValue; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSString-MailPathUtils.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSString-MailPathUtils.h new file mode 100644 index 00000000..d499c368 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSString-MailPathUtils.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MailPathUtils) ++ (void)resetBetterStringByResolvingSymlinksInPath; ++ (id)pathWithDirectory:(id)arg1 filename:(id)arg2 extension:(id)arg3; +- (id)betterStringByResolvingSymlinksInPath; +- (id)stringByReallyAbbreviatingWithTildeInPath; +- (BOOL)isSubdirectoryOfPath:(id)arg1; +- (BOOL)deletePath; +- (id)uniquePathWithMaximumLength:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSURL-MailFoundationAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSURL-MailFoundationAdditions.h new file mode 100644 index 00000000..e614db39 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSURL-MailFoundationAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSURL.h" + +@interface NSURL (MailFoundationAdditions) +- (id)URLByRemovingFragment; +- (BOOL)isReallyCaseSensitivelyEqual:(id)arg1; +- (id)completePath; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSUserDefaults-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSUserDefaults-MailAdditions.h new file mode 100644 index 00000000..e95d9fac --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/NSUserDefaults-MailAdditions.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSUserDefaults.h" + +@class NSURL; + +@interface NSUserDefaults (MailAdditions) +- (void)_mf_setObject:(id)arg1 forKey:(id)arg2 version:(unsigned long long)arg3; +- (id)_mf_objectForKey:(id)arg1 version:(unsigned long long)arg2; +- (void)setDisplayName:(id)arg1 forFlagColor:(BOOL)arg2; +- (id)displayNameForFlagColor:(BOOL)arg1; +@property(nonatomic) BOOL autosaveWindows; +@property(readonly, nonatomic) double autoSaveStoreDelay; +@property(readonly, nonatomic) double autoSaveDelay; +@property(nonatomic) BOOL junkMailEvaluationAfterRules; +@property(nonatomic) long long junkMailBehavior; +@property(retain, nonatomic) NSURL *downloadDirectoryURL; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/WebArchive-Conversion.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/WebArchive-Conversion.h new file mode 100644 index 00000000..0f754255 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/WebArchive-Conversion.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebArchive.h" + +@interface WebArchive (Conversion) +- (id)attributedString; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_IMAPOfflineRestoreContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_IMAPOfflineRestoreContext.h new file mode 100644 index 00000000..42cef56e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_IMAPOfflineRestoreContext.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class IMAPGateway, MCActivityMonitor, NSMapTable, NSMutableDictionary, NSString; + +@interface _IMAPOfflineRestoreContext : NSObject +{ + MCActivityMonitor *_monitor; + IMAPGateway *_gateway; + NSMapTable *_temporaryToRealUidMap; + NSMutableDictionary *_storesByMailboxName; + unsigned long long _currentSize; + unsigned long long _totalSize; + long long _activityAccessKey; + NSString *_oldTaskName; +} + +@property(copy, nonatomic) NSString *oldTaskName; // @synthesize oldTaskName=_oldTaskName; +@property(nonatomic) long long activityAccessKey; // @synthesize activityAccessKey=_activityAccessKey; +@property(nonatomic) unsigned long long totalSize; // @synthesize totalSize=_totalSize; +@property(nonatomic) unsigned long long currentSize; // @synthesize currentSize=_currentSize; +@property(retain, nonatomic) NSMutableDictionary *storesByMailboxName; // @synthesize storesByMailboxName=_storesByMailboxName; +@property(retain, nonatomic) NSMapTable *temporaryToRealUidMap; // @synthesize temporaryToRealUidMap=_temporaryToRealUidMap; +@property(retain, nonatomic) IMAPGateway *gateway; // @synthesize gateway=_gateway; +@property(retain, nonatomic) MCActivityMonitor *monitor; // @synthesize monitor=_monitor; +- (void).cxx_destruct; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFAppleScriptHeaderRecord.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFAppleScriptHeaderRecord.h new file mode 100644 index 00000000..d2ea1e33 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFAppleScriptHeaderRecord.h @@ -0,0 +1,25 @@ +/* + * 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" + +@class MCMessage, NSString; + +@interface _MFAppleScriptHeaderRecord : NSObject +{ + NSString *_name; + id _content; + MCMessage *_message; +} + +@property(retain, nonatomic) MCMessage *message; // @synthesize message=_message; +@property(retain, nonatomic) id content; // @synthesize content=_content; +@property(copy, nonatomic) NSString *name; // @synthesize name=_name; +- (void).cxx_destruct; +- (id)objectSpecifier; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFConversationsMessageCollector.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFConversationsMessageCollector.h new file mode 100644 index 00000000..ea12ca21 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFConversationsMessageCollector.h @@ -0,0 +1,38 @@ +/* + * 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 "MFMessageConsumer.h" + +@class NSMutableArray, NSMutableDictionary, NSString; + +@interface _MFConversationsMessageCollector : NSObject +{ + NSMutableArray *_messages; + NSMutableDictionary *_conversationsMembers; + struct __MDQuery *_query; +} + +- (void).cxx_destruct; +- (void)finishedSendingMessages; +@property(readonly) BOOL shouldCancel; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByConversationID:(id)arg2 options:(id)arg3; +- (id)conversationsMembers; +- (id)messages; +- (void)setQuery:(struct __MDQuery *)arg1; +- (struct __MDQuery *)query; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFDataCollector.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFDataCollector.h new file mode 100644 index 00000000..3c92150d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFDataCollector.h @@ -0,0 +1,37 @@ +/* + * 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" + +@class MFLibraryMessage, NSData, NSFileHandle, NSString; + +@interface _MFDataCollector : NSObject +{ + BOOL _isEmpty; + NSString *_path; + NSString *_tempPath; + MFLibraryMessage *_message; + NSString *_part; + NSFileHandle *_fileHandle; + unsigned long long _length; + NSData *_plistData; +} + +@property(copy, nonatomic) NSData *plistData; // @synthesize plistData=_plistData; +@property(nonatomic) BOOL isEmpty; // @synthesize isEmpty=_isEmpty; +@property(nonatomic) unsigned long long length; // @synthesize length=_length; +@property(retain, nonatomic) NSFileHandle *fileHandle; // @synthesize fileHandle=_fileHandle; +@property(readonly, copy, nonatomic) NSString *part; // @synthesize part=_part; +@property(readonly, nonatomic) MFLibraryMessage *message; // @synthesize message=_message; +@property(copy, nonatomic) NSString *tempPath; // @synthesize tempPath=_tempPath; +@property(readonly, copy, nonatomic) NSString *path; // @synthesize path=_path; +- (void).cxx_destruct; +- (void)setData:(id)arg1; +- (void)dealloc; +- (id)initWithMessage:(id)arg1 isPartial:(BOOL)arg2 part:(id)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFIMAPMailboxDeletionQueueEntry.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFIMAPMailboxDeletionQueueEntry.h new file mode 100644 index 00000000..c8f5832c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFIMAPMailboxDeletionQueueEntry.h @@ -0,0 +1,24 @@ +/* + * 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" + +@class MFIMAPAccount, NSArray; + +@interface _MFIMAPMailboxDeletionQueueEntry : NSObject +{ + NSArray *_urls; + NSArray *_paths; + MFIMAPAccount *_account; +} + +@property(retain, nonatomic) MFIMAPAccount *account; // @synthesize account=_account; +@property(retain, nonatomic) NSArray *paths; // @synthesize paths=_paths; +@property(retain, nonatomic) NSArray *urls; // @synthesize urls=_urls; +- (void).cxx_destruct; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFLibraryThreadRequest.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFLibraryThreadRequest.h new file mode 100644 index 00000000..af2d90f2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFLibraryThreadRequest.h @@ -0,0 +1,26 @@ +/* + * 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" + +@class MFRemoteStore, NSMutableArray; + +@interface _MFLibraryThreadRequest : NSObject +{ + BOOL _isFollowOnToProgressTask; + NSMutableArray *_messages; + MFRemoteStore *_store; +} + +@property(nonatomic) BOOL isFollowOnToProgressTask; // @synthesize isFollowOnToProgressTask=_isFollowOnToProgressTask; +@property(readonly, nonatomic) MFRemoteStore *store; // @synthesize store=_store; +@property(retain, nonatomic) NSMutableArray *messages; // @synthesize messages=_messages; +- (void).cxx_destruct; +- (id)init; +- (id)initWithStore:(id)arg1 andMessages:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMailboxChildrenEnumerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMailboxChildrenEnumerator.h new file mode 100644 index 00000000..1ef76c55 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMailboxChildrenEnumerator.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@interface _MFMailboxChildrenEnumerator : NSEnumerator +{ + struct __CFTree *_root; + struct __CFTree *_currentTree; + BOOL _includeHidden; +} + +@property(readonly, nonatomic) BOOL includeHidden; // @synthesize includeHidden=_includeHidden; +- (id)nextObject; +- (void)dealloc; +- (id)init; +- (id)initWithTree:(struct __CFTree *)arg1 includeHiddenChildren:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMailboxEnumerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMailboxEnumerator.h new file mode 100644 index 00000000..d216ac74 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMailboxEnumerator.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@interface _MFMailboxEnumerator : NSEnumerator +{ + struct __CFTree *_startTree; + struct __CFTree *_lastTree; +} + +- (id)nextObject; +- (void)dealloc; +- (id)init; +- (id)initWithTree:(struct __CFTree *)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageCollector.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageCollector.h new file mode 100644 index 00000000..fad48457 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageCollector.h @@ -0,0 +1,36 @@ +/* + * 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 "MFMessageConsumer.h" + +@class NSMutableArray, NSString; + +@interface _MFMessageCollector : NSObject +{ + NSMutableArray *_messages; + BOOL _didCancel; +} + +@property(nonatomic) BOOL didCancel; // @synthesize didCancel=_didCancel; +- (void).cxx_destruct; +- (void)finishedSendingMessages; +@property(readonly) BOOL shouldCancel; +- (void)newMessagesAvailable:(id)arg1 conversationMembers:(id)arg2; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByConversationID:(id)arg2 options:(id)arg3; +- (void)newMessagesAvailable:(id)arg1 conversationsMembersByConversationID:(id)arg2; +- (id)messages; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageLoadingContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageLoadingContext.h new file mode 100644 index 00000000..2a31b6bd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageLoadingContext.h @@ -0,0 +1,37 @@ +/* + * 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" + +@class NSMutableArray, NSMutableSet; + +@interface _MFMessageLoadingContext : NSObject +{ + unsigned int _options; + NSMutableSet *_seenConversationIDs; + NSMutableArray *_messages; + id _target; + unsigned long long _chunkSize; + double _chunkInterval; + double _lastChunkSentTime; + unsigned long long _messagesLoaded; + struct sqlite3 *_database; +} + +@property(nonatomic) struct sqlite3 *database; // @synthesize database=_database; +@property(nonatomic) unsigned int options; // @synthesize options=_options; +@property(nonatomic) unsigned long long messagesLoaded; // @synthesize messagesLoaded=_messagesLoaded; +@property(nonatomic) double lastChunkSentTime; // @synthesize lastChunkSentTime=_lastChunkSentTime; +@property(nonatomic) double chunkInterval; // @synthesize chunkInterval=_chunkInterval; +@property(nonatomic) unsigned long long chunkSize; // @synthesize chunkSize=_chunkSize; +@property(retain, nonatomic) id target; // @synthesize target=_target; +@property(retain, nonatomic) NSMutableArray *messages; // @synthesize messages=_messages; +@property(retain, nonatomic) NSMutableSet *seenConversationIDs; // @synthesize seenConversationIDs=_seenConversationIDs; +- (void).cxx_destruct; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueColor.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueColor.h new file mode 100644 index 00000000..3903228a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueColor.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueColor : MFMessageSortingValue +{ + int _colorForSort; +} + +@property(nonatomic) int colorForSort; // @synthesize colorForSort=_colorForSort; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueDateLastViewed.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueDateLastViewed.h new file mode 100644 index 00000000..d660a5a5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueDateLastViewed.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueDateLastViewed : MFMessageSortingValue +{ + double _dateLastViewedAsTimeIntervalSince1970; +} + +@property(nonatomic) double dateLastViewedAsTimeIntervalSince1970; // @synthesize dateLastViewedAsTimeIntervalSince1970=_dateLastViewedAsTimeIntervalSince1970; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueDateReceived.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueDateReceived.h new file mode 100644 index 00000000..18ce547f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueDateReceived.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueDateReceived : MFMessageSortingValue +{ + double _dateReceivedAsTimeIntervalSince1970; +} + +@property(nonatomic) double dateReceivedAsTimeIntervalSince1970; // @synthesize dateReceivedAsTimeIntervalSince1970=_dateReceivedAsTimeIntervalSince1970; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueDateSent.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueDateSent.h new file mode 100644 index 00000000..eb6cfe05 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueDateSent.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueDateSent : MFMessageSortingValue +{ + double _dateSentAsTimeIntervalSince1970; +} + +@property(nonatomic) double dateSentAsTimeIntervalSince1970; // @synthesize dateSentAsTimeIntervalSince1970=_dateSentAsTimeIntervalSince1970; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueLibraryID.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueLibraryID.h new file mode 100644 index 00000000..9533e0cd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueLibraryID.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueLibraryID : MFMessageSortingValue +{ + long long _libraryID; +} + +@property(nonatomic) long long libraryID; // @synthesize libraryID=_libraryID; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueMailbox.h new file mode 100644 index 00000000..b461047f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueMailbox.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class MFMailbox; + +@interface _MFMessageSortingValueMailbox : MFMessageSortingValue +{ + MFMailbox *_mailbox; +} + +@property(retain, nonatomic) MFMailbox *mailbox; // @synthesize mailbox=_mailbox; +- (id)description; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueMessageFlags.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueMessageFlags.h new file mode 100644 index 00000000..014f1ed7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueMessageFlags.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueMessageFlags : MFMessageSortingValue +{ + unsigned int _messageFlags; +} + +@property(nonatomic) unsigned int messageFlags; // @synthesize messageFlags=_messageFlags; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueMessageSize.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueMessageSize.h new file mode 100644 index 00000000..6a70e9c0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueMessageSize.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueMessageSize : MFMessageSortingValue +{ + unsigned long long _messageSize; +} + +@property(nonatomic) unsigned long long messageSize; // @synthesize messageSize=_messageSize; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueNumberOfAttachments.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueNumberOfAttachments.h new file mode 100644 index 00000000..0537bf2d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueNumberOfAttachments.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFMessageSortingValueNumberOfAttachments : MFMessageSortingValue +{ + unsigned long long _numberOfAttachments; +} + +@property(nonatomic) unsigned long long numberOfAttachments; // @synthesize numberOfAttachments=_numberOfAttachments; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueSender.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueSender.h new file mode 100644 index 00000000..de7ddc33 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueSender.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface _MFMessageSortingValueSender : MFMessageSortingValue +{ + NSString *_senderDisplayName; +} + +@property(copy, nonatomic) NSString *senderDisplayName; // @synthesize senderDisplayName=_senderDisplayName; +- (id)description; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueSubject.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueSubject.h new file mode 100644 index 00000000..13111cf0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueSubject.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSString; + +@interface _MFMessageSortingValueSubject : MFMessageSortingValue +{ + unsigned char _subjectPrefixLength; + NSString *_subject; +} + +@property(nonatomic) unsigned char subjectPrefixLength; // @synthesize subjectPrefixLength=_subjectPrefixLength; +@property(copy, nonatomic) NSString *subject; // @synthesize subject=_subject; +- (id)description; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueTo.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueTo.h new file mode 100644 index 00000000..49001d57 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFMessageSortingValueTo.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@class NSArray; + +@interface _MFMessageSortingValueTo : MFMessageSortingValue +{ + NSArray *_to; +} + +@property(copy, nonatomic) NSArray *to; // @synthesize to=_to; +- (id)description; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFNonContentSmartMailboxUnreadCountManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFNonContentSmartMailboxUnreadCountManager.h new file mode 100644 index 00000000..30784967 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFNonContentSmartMailboxUnreadCountManager.h @@ -0,0 +1,37 @@ +/* + * 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" + +@class NSMutableDictionary, NSOperationQueue, NSTimer; + +@interface _MFNonContentSmartMailboxUnreadCountManager : NSObject +{ + NSOperationQueue *_workQueue; + NSMutableDictionary *_unreadLibraryIDsByMessageIDHeaderByMailbox; + double _lastDisplayUpdateTime; + BOOL _isObserving; + NSTimer *_relativeDateTimer; +} + +- (void).cxx_destruct; +- (void)_updateSmartMailbox:(id)arg1 withCompleteMessageList:(id)arg2 setDisplayCounts:(BOOL)arg3; +- (void)_smartMailboxLoaded:(id)arg1; +- (void)_refreshRelativeDateMailboxes:(id)arg1; +- (void)_messagesNeedRefresh:(id)arg1; +- (void)_messagesCompacted:(id)arg1; +- (void)_messagesChanged:(id)arg1; +- (void)_refreshForMailboxes:(id)arg1; +- (void)_setDisplayCounts; +- (void)_stopObservingNotifications; +- (void)_startObservingNotifications; +- (void)updateSmartMailboxes; +- (id)_messageIDHeaderKeyForMessage:(id)arg1; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFProgressHandlerMonitorContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFProgressHandlerMonitorContext.h new file mode 100644 index 00000000..3d245274 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFProgressHandlerMonitorContext.h @@ -0,0 +1,23 @@ +/* + * 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" + +@class MCActivityMonitor; + +@interface _MFProgressHandlerMonitorContext : NSObject +{ + id _progressMonitor; + MCActivityMonitor *_activityMonitor; +} + +@property(nonatomic) __weak MCActivityMonitor *activityMonitor; // @synthesize activityMonitor=_activityMonitor; +@property(nonatomic) __weak id progressMonitor; // @synthesize progressMonitor=_progressMonitor; +- (void).cxx_destruct; +- (BOOL)shouldCancel; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRedundantTextIdentifierAttachmentContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRedundantTextIdentifierAttachmentContext.h new file mode 100644 index 00000000..e3c76cf8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRedundantTextIdentifierAttachmentContext.h @@ -0,0 +1,29 @@ +/* + * 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" + +@class NSString; + +@interface _MFRedundantTextIdentifierAttachmentContext : NSObject +{ + BOOL _attachmentIsDownloaded; + NSString *_attachmentName; + NSString *_attachmentExtension; + unsigned long long _attachmentSize; +} + +@property(readonly, nonatomic) BOOL attachmentIsDownloaded; // @synthesize attachmentIsDownloaded=_attachmentIsDownloaded; +@property(readonly, nonatomic) unsigned long long attachmentSize; // @synthesize attachmentSize=_attachmentSize; +@property(readonly, copy, nonatomic) NSString *attachmentExtension; // @synthesize attachmentExtension=_attachmentExtension; +@property(readonly, copy, nonatomic) NSString *attachmentName; // @synthesize attachmentName=_attachmentName; +- (void).cxx_destruct; +- (BOOL)isEqualTo:(id)arg1; +- (id)description; +- (id)initWithAttachmentName:(id)arg1 attachmentSize:(unsigned long long)arg2 attachmentIsDownloaded:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRedundantTextIdentifierParseContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRedundantTextIdentifierParseContext.h new file mode 100644 index 00000000..892bb48a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRedundantTextIdentifierParseContext.h @@ -0,0 +1,80 @@ +/* + * 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" + +@class NSDictionary, _MFRedundantTextIdentifierAttachmentContext; + +@interface _MFRedundantTextIdentifierParseContext : NSObject +{ + BOOL _searchInForwardDirection; + BOOL _isParsingEntity; + BOOL _isParsingAttachment; + BOOL _attachmentIsTag; + unsigned short _startTagCharacter; + unsigned short _endTagCharacter; + unsigned short _startEntityCharacter; + unsigned short _endEntityCharacter; + unsigned short _entityValueCharacter; + CDStruct_f9502b4c *_buffer; + long long _bufferStartIndex; + long long _bufferLength; + long long _currentIndex; + long long _startMatchIndexForCurrentLine; + long long _entityStartIndex; + _MFRedundantTextIdentifierAttachmentContext *_attachmentContext; + long long _attachmentStartIndex; + long long _attachmentEndIndex; + NSDictionary *_attachmentContextsByURL; +} + ++ (void)normalizeEntitiesInString:(id)arg1; ++ (id)normalizedStringForEntity:(id)arg1; +@property(readonly, copy, nonatomic) NSDictionary *attachmentContextsByURL; // @synthesize attachmentContextsByURL=_attachmentContextsByURL; +@property(nonatomic) BOOL attachmentIsTag; // @synthesize attachmentIsTag=_attachmentIsTag; +@property(nonatomic) long long attachmentEndIndex; // @synthesize attachmentEndIndex=_attachmentEndIndex; +@property(nonatomic) long long attachmentStartIndex; // @synthesize attachmentStartIndex=_attachmentStartIndex; +@property(retain, nonatomic) _MFRedundantTextIdentifierAttachmentContext *attachmentContext; // @synthesize attachmentContext=_attachmentContext; +@property(nonatomic) BOOL isParsingAttachment; // @synthesize isParsingAttachment=_isParsingAttachment; +@property(nonatomic) long long entityStartIndex; // @synthesize entityStartIndex=_entityStartIndex; +@property(nonatomic) unsigned short entityValueCharacter; // @synthesize entityValueCharacter=_entityValueCharacter; +@property(nonatomic) BOOL isParsingEntity; // @synthesize isParsingEntity=_isParsingEntity; +@property(readonly, nonatomic) unsigned short endEntityCharacter; // @synthesize endEntityCharacter=_endEntityCharacter; +@property(readonly, nonatomic) unsigned short startEntityCharacter; // @synthesize startEntityCharacter=_startEntityCharacter; +@property(readonly, nonatomic) unsigned short endTagCharacter; // @synthesize endTagCharacter=_endTagCharacter; +@property(readonly, nonatomic) unsigned short startTagCharacter; // @synthesize startTagCharacter=_startTagCharacter; +@property(nonatomic) BOOL searchInForwardDirection; // @synthesize searchInForwardDirection=_searchInForwardDirection; +@property(nonatomic) long long startMatchIndexForCurrentLine; // @synthesize startMatchIndexForCurrentLine=_startMatchIndexForCurrentLine; +@property(nonatomic) long long currentIndex; // @synthesize currentIndex=_currentIndex; +@property(readonly, nonatomic) long long bufferLength; // @synthesize bufferLength=_bufferLength; +@property(readonly, nonatomic) long long bufferStartIndex; // @synthesize bufferStartIndex=_bufferStartIndex; +@property(readonly, nonatomic) CDStruct_f9502b4c *buffer; // @synthesize buffer=_buffer; +- (void).cxx_destruct; +- (id)parseAndSanitizeAttributionLineInRange:(CDStruct_912cb5d2 *)arg1; +- (void)resetCurrentIndex; +- (long long)advanceToEndOfLine:(char *)arg1; +- (long long)advanceToEndOfLine; +- (BOOL)advanceToEndOfAttachmentPlaceholderIfExists; +- (unsigned short)readAndAdvanceToEndOfEntityIfExists; +- (long long)advancePastNonContentTagsAndWhitespaceParsingAttachmentPlaceholders:(BOOL)arg1; +- (unsigned short)charFromBufferAtIndex:(long long)arg1; +- (unsigned short)nextCharacterToMatch; +- (unsigned short)currentCharFromBuffer; +- (void)incrementCurrentIndexBy:(long long)arg1; +- (void)incrementCurrentIndex; +- (BOOL)isBlockLevelTag:(CDStruct_912cb5d2)arg1; +- (BOOL)advanceToClosingTagMatchingOpenTag:(CDStruct_912cb5d2)arg1; +- (BOOL)advanceToEndOfCommentIfExists; +- (BOOL)parseAttachmentFilenameFromAttribute:(struct __CFString *)arg1; +- (CDStruct_912cb5d2)readElementIsCloseElement:(char *)arg1 shouldParseAttachmentTags:(BOOL)arg2; +- (CDStruct_912cb5d2)readAndAdvanceToEndOfTagIsCloseTag:(char *)arg1 shouldParseAttachmentTags:(BOOL)arg2; +- (long long)remainingCharacters; +- (id)charactersInMessageWithCurrentIndexMarked; +- (id)description; +- (id)initWithBuffer:(CDStruct_f9502b4c *)arg1 bufferStartIndex:(long long)arg2 bufferLength:(long long)arg3 searchInForwardDirection:(BOOL)arg4 attachmentContextsByURL:(id)arg5; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRedundantTextIdentifierSolutionContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRedundantTextIdentifierSolutionContext.h new file mode 100644 index 00000000..fd845bec --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRedundantTextIdentifierSolutionContext.h @@ -0,0 +1,62 @@ +/* + * 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" + +@class NSArray, NSDictionary, NSIndexSet, NSMutableArray, NSMutableIndexSet; + +@interface _MFRedundantTextIdentifierSolutionContext : NSObject +{ + NSMutableArray *_redundantRanges; + NSMutableIndexSet *_redundantAttachmentStartIndexes; + NSMutableArray *_attributionLineRanges; + BOOL _searchInForwardDirection; + BOOL _matchedEntireOriginalContiguously; + CDStruct_f9502b4c *_replyBuffer; + long long _replyStartIndex; + long long _replyLength; + CDStruct_f9502b4c *_originalBuffer; + long long _originalStartIndex; + long long _originalLength; + NSDictionary *_originalAttachmentContextsByURL; + NSDictionary *_replyAttachmentContextsByURL; + unsigned long long _startingIndexForRedundantRanges; + unsigned long long _startingIndexForAttributionLineRanges; + long long _lastIndexMatchedInOriginal; + long long _lastIndexMatchedInReply; +} + +@property(nonatomic) BOOL matchedEntireOriginalContiguously; // @synthesize matchedEntireOriginalContiguously=_matchedEntireOriginalContiguously; +@property(nonatomic) BOOL searchInForwardDirection; // @synthesize searchInForwardDirection=_searchInForwardDirection; +@property(nonatomic) long long lastIndexMatchedInReply; // @synthesize lastIndexMatchedInReply=_lastIndexMatchedInReply; +@property(nonatomic) long long lastIndexMatchedInOriginal; // @synthesize lastIndexMatchedInOriginal=_lastIndexMatchedInOriginal; +@property(nonatomic) unsigned long long startingIndexForAttributionLineRanges; // @synthesize startingIndexForAttributionLineRanges=_startingIndexForAttributionLineRanges; +@property(nonatomic) unsigned long long startingIndexForRedundantRanges; // @synthesize startingIndexForRedundantRanges=_startingIndexForRedundantRanges; +@property(readonly, copy, nonatomic) NSDictionary *replyAttachmentContextsByURL; // @synthesize replyAttachmentContextsByURL=_replyAttachmentContextsByURL; +@property(readonly, copy, nonatomic) NSDictionary *originalAttachmentContextsByURL; // @synthesize originalAttachmentContextsByURL=_originalAttachmentContextsByURL; +@property(readonly, nonatomic) long long originalLength; // @synthesize originalLength=_originalLength; +@property(nonatomic) long long originalStartIndex; // @synthesize originalStartIndex=_originalStartIndex; +@property(readonly, nonatomic) CDStruct_f9502b4c *originalBuffer; // @synthesize originalBuffer=_originalBuffer; +@property(readonly, nonatomic) long long replyLength; // @synthesize replyLength=_replyLength; +@property(nonatomic) long long replyStartIndex; // @synthesize replyStartIndex=_replyStartIndex; +@property(readonly, nonatomic) CDStruct_f9502b4c *replyBuffer; // @synthesize replyBuffer=_replyBuffer; +- (void).cxx_destruct; +- (BOOL)location:(long long)arg1 isInRangeArray:(id)arg2 startingIndex:(unsigned long long *)arg3; +- (long long)contentTypeForIndex:(long long)arg1; +- (void)addRangeWithStart:(long long)arg1 end:(long long)arg2 toArray:(id)arg3; +- (void)computeAttributionRangesInReply; +- (void)computeRedundantRangesInReply; +- (void)addAttributionLineRanges:(id)arg1; +@property(readonly, copy, nonatomic) NSArray *attributionLineRanges; +- (void)addRedundantAttachmentStartIndexes:(id)arg1; +@property(readonly, copy, nonatomic) NSIndexSet *redundantAttachmentStartIndexes; +- (void)addRedundantRanges:(id)arg1; +@property(readonly, copy, nonatomic) NSArray *redundantRanges; +- (id)description; +- (id)initWithReply:(CDStruct_f9502b4c *)arg1 replyStartIndex:(long long)arg2 replyLength:(long long)arg3 replyAttachmentContextsByURL:(id)arg4 original:(CDStruct_f9502b4c *)arg5 originalStartIndex:(long long)arg6 originalLength:(long long)arg7 originalAttachmentContextsByURL:(id)arg8 searchInForwardDirection:(BOOL)arg9; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRedundantTextIdentifierSolutionGenerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRedundantTextIdentifierSolutionGenerator.h new file mode 100644 index 00000000..244c924f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRedundantTextIdentifierSolutionGenerator.h @@ -0,0 +1,33 @@ +/* + * 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" + +@class NSDictionary; + +@interface _MFRedundantTextIdentifierSolutionGenerator : NSObject +{ + CDStruct_f9502b4c *_replyBuffer; + CDStruct_f9502b4c *_originalBuffer; + long long _replyLength; + long long _originalLength; + NSDictionary *_replyAttachmentContextsByURL; + NSDictionary *_originalAttachmentContextsByURL; +} + +@property(readonly, copy, nonatomic) NSDictionary *originalAttachmentContextsByURL; // @synthesize originalAttachmentContextsByURL=_originalAttachmentContextsByURL; +@property(readonly, copy, nonatomic) NSDictionary *replyAttachmentContextsByURL; // @synthesize replyAttachmentContextsByURL=_replyAttachmentContextsByURL; +@property(readonly, nonatomic) long long originalLength; // @synthesize originalLength=_originalLength; +@property(readonly, nonatomic) long long replyLength; // @synthesize replyLength=_replyLength; +@property(readonly, nonatomic) CDStruct_f9502b4c *originalBuffer; // @synthesize originalBuffer=_originalBuffer; +@property(readonly, nonatomic) CDStruct_f9502b4c *replyBuffer; // @synthesize replyBuffer=_replyBuffer; +- (void).cxx_destruct; +- (id)generateBestSolutionInForwardDirection:(BOOL)arg1 replyStartIndex:(long long)arg2 originalStartIndex:(long long)arg3; +- (id)generateBestSolution; +- (id)initWithReply:(CDStruct_f9502b4c *)arg1 replyLength:(long long)arg2 replyAttachmentContextsByURL:(id)arg3 original:(CDStruct_f9502b4c *)arg4 originalLength:(long long)arg5 originalAttachmentContextsByURL:(id)arg6; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRootlessMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRootlessMailbox.h new file mode 100644 index 00000000..5c3ee790 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRootlessMailbox.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import + +@interface _MFRootlessMailbox : MFMailbox +{ +} + +- (id)storeForMailbox:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)tildeAbbreviatedPath; +- (id)fullPath; +- (id)displayName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRoutingDictionaryContext.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRoutingDictionaryContext.h new file mode 100644 index 00000000..366e57c4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFRoutingDictionaryContext.h @@ -0,0 +1,27 @@ +/* + * 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" + +@class NSMutableArray, NSMutableSet; + +@interface _MFRoutingDictionaryContext : NSObject +{ + NSMutableArray *_transferredOrDeleted; + NSMutableArray *_rejectedMessages; + NSMutableArray *_messagesToBeDeleted; + NSMutableSet *_destinationStores; +} + +@property(retain, nonatomic) NSMutableSet *destinationStores; // @synthesize destinationStores=_destinationStores; +@property(retain, nonatomic) NSMutableArray *messagesToBeDeleted; // @synthesize messagesToBeDeleted=_messagesToBeDeleted; +@property(retain, nonatomic) NSMutableArray *rejectedMessages; // @synthesize rejectedMessages=_rejectedMessages; +@property(retain, nonatomic) NSMutableArray *transferredOrDeleted; // @synthesize transferredOrDeleted=_transferredOrDeleted; +- (void).cxx_destruct; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFSMTPEnhancedStatusCode.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFSMTPEnhancedStatusCode.h new file mode 100644 index 00000000..6be54ac9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFSMTPEnhancedStatusCode.h @@ -0,0 +1,23 @@ +/* + * 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" + +@interface _MFSMTPEnhancedStatusCode : NSObject +{ + int _classStatus; + int _subject; + int _detail; +} + +@property(nonatomic) int detail; // @synthesize detail=_detail; +@property(nonatomic) int subject; // @synthesize subject=_subject; +@property(nonatomic) int classStatus; // @synthesize classStatus=_classStatus; +@property(readonly, nonatomic) long long interpretedStatusCode; +- (id)description; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFSeenMessagesStore.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFSeenMessagesStore.h new file mode 100644 index 00000000..1a854c2a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFSeenMessagesStore.h @@ -0,0 +1,31 @@ +/* + * 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" + +@class NSEntityDescription, NSPersistentStoreCoordinator, NSString; + +@interface _MFSeenMessagesStore : NSObject +{ + NSPersistentStoreCoordinator *_persistentStoreCoordinator; + NSString *_persistentStorePath; + NSEntityDescription *_accountEntity; + NSEntityDescription *_seenMessageEntity; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain, nonatomic) NSEntityDescription *seenMessageEntity; // @synthesize seenMessageEntity=_seenMessageEntity; +@property(retain, nonatomic) NSEntityDescription *accountEntity; // @synthesize accountEntity=_accountEntity; +@property(readonly, copy, nonatomic) NSString *persistentStorePath; // @synthesize persistentStorePath=_persistentStorePath; +@property(readonly, nonatomic) NSPersistentStoreCoordinator *persistentStoreCoordinator; // @synthesize persistentStoreCoordinator=_persistentStoreCoordinator; +- (void).cxx_destruct; +- (id)_managedObjectModel; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFSetFlags.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFSetFlags.h new file mode 100644 index 00000000..d4f5e5ca --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFSetFlags.h @@ -0,0 +1,27 @@ +/* + * 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" + +@class NSArray, NSDictionary, NSMutableArray; + +@interface _MFSetFlags : NSObject +{ + NSMutableArray *_messages; + NSDictionary *_flagsToSet; +} + +@property(readonly, copy, nonatomic) NSDictionary *flagsToSet; // @synthesize flagsToSet=_flagsToSet; +- (void).cxx_destruct; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (void)addMessages:(id)arg1; +@property(readonly, copy, nonatomic) NSArray *messages; +- (id)init; +- (id)initWithFlagsDictionary:(id)arg1 messages:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFSmartMailboxesEnumerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFSmartMailboxesEnumerator.h new file mode 100644 index 00000000..f3f5469b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFSmartMailboxesEnumerator.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@class NSArray; + +@interface _MFSmartMailboxesEnumerator : NSEnumerator +{ + NSArray *_smartMailboxes; + unsigned long long _nextMailboxIndex; + NSEnumerator *_currentMailboxEnumerator; +} + +@property(retain, nonatomic) NSEnumerator *currentMailboxEnumerator; // @synthesize currentMailboxEnumerator=_currentMailboxEnumerator; +@property(nonatomic) unsigned long long nextMailboxIndex; // @synthesize nextMailboxIndex=_nextMailboxIndex; +@property(readonly, copy, nonatomic) NSArray *smartMailboxes; // @synthesize smartMailboxes=_smartMailboxes; +- (void).cxx_destruct; +- (id)nextObject; +- (id)init; +- (id)initWithSmartMailboxes:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFZipStream.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFZipStream.h new file mode 100644 index 00000000..1309f831 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailFW/_MFZipStream.h @@ -0,0 +1,45 @@ +/* + * 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" + +@interface _MFZipStream : NSObject +{ + struct __sFILE { + char *_field1; + int _field2; + int _field3; + short _field4; + short _field5; + struct __sbuf _field6; + int _field7; + void *_field8; + void *_field9; + void *_field10; + void *_field11; + void *_field12; + struct __sbuf _field13; + struct __sFILEX *_field14; + int _field15; + unsigned char _field16[3]; + unsigned char _field17[1]; + struct __sbuf _field18; + int _field19; + long long _field20; + } *_destination; + struct z_stream_s _zipStream; + unsigned char inBuffer[32768]; + unsigned char outBuffer[32768]; + BOOL _closed; +} + +- (void)closeStream; +- (void)appendData:(id)arg1; +- (void)dealloc; +- (id)initWithDestinationPath:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountCell.h new file mode 100644 index 00000000..263ecb28 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountCell.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSActionCell.h" + +@class MFMailAccount, NSImage, NSString; + +@interface AccountCell : NSActionCell +{ + MFMailAccount *_account; + NSImage *_icon; + NSString *_subtitle; +} + +@property(copy, nonatomic) NSString *subtitle; // @synthesize subtitle=_subtitle; +- (void).cxx_destruct; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +@property(retain, nonatomic) NSImage *icon; // @synthesize icon=_icon; +- (id)title; +- (void)setAccount:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)_accountCellCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initImageCell:(id)arg1; +- (id)initTextCell:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountDetails.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountDetails.h new file mode 100644 index 00000000..30419c88 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountDetails.h @@ -0,0 +1,58 @@ +/* + * 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" + +@class MCAuthScheme, MFMailAccount, NSButton, NSPopUpButton, NSTextField, NSView, SpecialMailboxes; + +@interface AccountDetails : NSObject +{ + Class _accountClass; + NSView *_detailView; + NSTextField *_portNumberField; + NSButton *_configureDynamically; + NSButton *_autoFetch; + NSButton *_sslSwitch; + NSButton *_useMailDrop; + NSPopUpButton *_authenticationPopup; + NSButton *_allowInsecureAuthentication; + MFMailAccount *_account; + SpecialMailboxes *_specialMailboxes; + MCAuthScheme *_authScheme; +} + ++ (id)accountDetailsNibName; ++ (id)accountDetailsForAccountClass:(Class)arg1; +@property(nonatomic) __weak MCAuthScheme *authScheme; // @synthesize authScheme=_authScheme; +@property(retain, nonatomic) SpecialMailboxes *specialMailboxes; // @synthesize specialMailboxes=_specialMailboxes; +@property(retain, nonatomic) MFMailAccount *account; // @synthesize account=_account; +@property(nonatomic) __weak NSButton *allowInsecureAuthentication; // @synthesize allowInsecureAuthentication=_allowInsecureAuthentication; +@property(nonatomic) __weak NSPopUpButton *authenticationPopup; // @synthesize authenticationPopup=_authenticationPopup; +@property(nonatomic) __weak NSButton *useMailDrop; // @synthesize useMailDrop=_useMailDrop; +@property(nonatomic) __weak NSButton *sslSwitch; // @synthesize sslSwitch=_sslSwitch; +@property(nonatomic) __weak NSButton *autoFetch; // @synthesize autoFetch=_autoFetch; +@property(nonatomic) __weak NSButton *configureDynamically; // @synthesize configureDynamically=_configureDynamically; +@property(nonatomic) __weak NSTextField *portNumberField; // @synthesize portNumberField=_portNumberField; +@property(retain, nonatomic) NSView *detailView; // @synthesize detailView=_detailView; +- (void).cxx_destruct; +- (void)_specialMailboxesDidChange:(id)arg1; +- (void)authenticationChanged:(id)arg1; +- (void)sslChanged:(id)arg1; +- (id)portFieldForSSLCheckBox:(id)arg1; +- (void)didDisplayTabViewItem:(id)arg1; +- (id)setupSpecialMailboxesUIFromValuesInAccount:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)setupAccountFromValuesInSpecialMailboxesUI:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (void)setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (Class)accountClass; +- (void)dealloc; +- (id)init; +- (id)initWithAccountClass:(Class)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountInfo.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountInfo.h new file mode 100644 index 00000000..d7b49886 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountInfo.h @@ -0,0 +1,76 @@ +/* + * 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 "NSTabViewDelegate.h" +#import "NSWindowDelegate.h" + +@class AccountSummary, IMAPMailboxes, MFMailAccount, NSMutableSet, NSPopUpButton, NSString, NSTabView, NSTabViewItem, NSView, NSWindow, OofPanelController, Quota, SpecialMailboxes; + +@interface AccountInfo : NSObject +{ + NSMutableSet *_tabViewItemsThatHaveBeenSetup; + NSWindow *_window; + NSView *_topView; + NSTabView *_tabView; + NSPopUpButton *_accountPopup; + NSTabViewItem *_mailboxListTab; + NSTabViewItem *_outOfOfficeTab; + AccountSummary *_summary; + SpecialMailboxes *_specialMailboxes; + NSView *_specialMailboxesView; + Quota *_quota; + OofPanelController *_oofController; + IMAPMailboxes *_mailboxes; + MFMailAccount *_account; + struct CGRect _oldFrame; + struct CGRect _newFrame; +} + ++ (void)showForAccount:(id)arg1 withTab:(id)arg2; +@property(nonatomic) struct CGRect newFrame; // @synthesize newFrame=_newFrame; +@property(nonatomic) struct CGRect oldFrame; // @synthesize oldFrame=_oldFrame; +@property(retain, nonatomic) MFMailAccount *account; // @synthesize account=_account; +@property(retain, nonatomic) IMAPMailboxes *mailboxes; // @synthesize mailboxes=_mailboxes; +@property(retain, nonatomic) OofPanelController *oofController; // @synthesize oofController=_oofController; +@property(retain, nonatomic) Quota *quota; // @synthesize quota=_quota; +@property(retain, nonatomic) NSView *specialMailboxesView; // @synthesize specialMailboxesView=_specialMailboxesView; +@property(retain, nonatomic) SpecialMailboxes *specialMailboxes; // @synthesize specialMailboxes=_specialMailboxes; +@property(retain, nonatomic) AccountSummary *summary; // @synthesize summary=_summary; +@property(retain, nonatomic) NSTabViewItem *outOfOfficeTab; // @synthesize outOfOfficeTab=_outOfOfficeTab; +@property(retain, nonatomic) NSTabViewItem *mailboxListTab; // @synthesize mailboxListTab=_mailboxListTab; +@property(nonatomic) __weak NSPopUpButton *accountPopup; // @synthesize accountPopup=_accountPopup; +@property(nonatomic) __weak NSTabView *tabView; // @synthesize tabView=_tabView; +@property(retain, nonatomic) NSView *topView; // @synthesize topView=_topView; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +- (void).cxx_destruct; +- (void)windowWillClose:(id)arg1; +- (void)tabView:(id)arg1 didSelectTabViewItem:(id)arg2; +- (void)tabView:(id)arg1 willSelectTabViewItem:(id)arg2; +- (void)_handleOofError:(id)arg1; +- (void)accountPopupChanged:(id)arg1; +- (void)_showWithTab:(id)arg1; +- (void)_specialMailboxesDidChange:(id)arg1; +- (void)_accountsDidChange:(id)arg1; +- (void)_commitSpecialMailboxesChanges; +- (void)_setupTabViewItem:(id)arg1 oldTabViewItem:(id)arg2; +- (id)_getOwnerFromIdentifier:(id)arg1; +- (void)_setAccount:(id)arg1 setupSelectedTab:(BOOL)arg2; +- (id)_selectedAccount; +- (void)_configureAccountPopupSelectingAccount:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithMailAccount:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountInfoTabOwner-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountInfoTabOwner-Protocol.h new file mode 100644 index 00000000..f4ceaa74 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountInfoTabOwner-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol AccountInfoTabOwner +- (id)view; +- (void)accountInfoWillShowView:(id)arg1; +- (void)accountInfoWillHideView:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountManager.h new file mode 100644 index 00000000..a43b463a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountManager.h @@ -0,0 +1,59 @@ +/* + * 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" + +@class ActivityViewerMailSound, NSDate, NSOperationQueue, NSTimer, NSUserDefaults; + +@interface AccountManager : NSObject +{ + BOOL _automaticFetchingShouldBeDisabled; + BOOL _dailyCleanupDisabled; + BOOL _missedDailyCleanup; + NSOperationQueue *_automaticFetchQueue; + NSTimer *_fetchTimer; + NSDate *_lastAutomaticFetchDate; + ActivityViewerMailSound *_activityViewerMailSound; +} + ++ (id)keyPathsForValuesAffectingFetchFrequency; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(nonatomic) BOOL missedDailyCleanup; // @synthesize missedDailyCleanup=_missedDailyCleanup; +@property(nonatomic) BOOL dailyCleanupDisabled; // @synthesize dailyCleanupDisabled=_dailyCleanupDisabled; +@property(readonly, nonatomic) ActivityViewerMailSound *activityViewerMailSound; // @synthesize activityViewerMailSound=_activityViewerMailSound; +@property(retain, nonatomic) NSDate *lastAutomaticFetchDate; // @synthesize lastAutomaticFetchDate=_lastAutomaticFetchDate; +@property(retain, nonatomic) NSTimer *fetchTimer; // @synthesize fetchTimer=_fetchTimer; +@property(readonly, nonatomic) NSOperationQueue *automaticFetchQueue; // @synthesize automaticFetchQueue=_automaticFetchQueue; +@property(nonatomic) BOOL automaticFetchingShouldBeDisabled; // @synthesize automaticFetchingShouldBeDisabled=_automaticFetchingShouldBeDisabled; +- (void).cxx_destruct; +- (void)_webAuthenticationCompleted:(id)arg1; +- (void)_aosAccountMigratedExternally:(id)arg1; +- (void)_mailAccountsChangedExternally:(id)arg1; +- (void)_deliveryAccountsChangedExternally:(id)arg1; +- (void)_performDailyCleanup:(id)arg1; +- (void)enableDailyCleanupAndCleanupIfNecessary; +- (void)disableDailyCleanup; +- (void)_backgroundFetchCompleted:(id)arg1; +- (void)_mailAccountNeedsChecking:(id)arg1; +- (void)_fetchForAllAccountsIsAutomatic:(BOOL)arg1; +- (void)fetchForAccount:(id)arg1 isAutomatic:(BOOL)arg2; +- (void)_automaticFetchDateDidArrive; +- (void)_startSynchronizationForNewAccount:(id)arg1; +- (void)performInitialAccountSynchronization; +- (void)initializeAutomaticFetchingAndPerformInitialFetch; +- (void)_fetchTimerFired:(id)arg1; +- (void)_adjustFetchActivityAndReset:(BOOL)arg1; +- (void)disableAutomaticFetching; +- (void)enableAutomaticFetchingAndFetchIfNecessary; +- (void)recalculateAutomaticFetchFrequency; +@property(nonatomic) long long fetchFrequency; +@property(readonly, nonatomic) NSUserDefaults *userDefaults; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountPreferences.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountPreferences.h new file mode 100644 index 00000000..5ef4dc68 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountPreferences.h @@ -0,0 +1,183 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "AccountStatusDataSourceDelegate.h" +#import "MVTerminationHandler.h" +#import "NSTabViewDelegate.h" +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class AccountDetails, AccountStatusDataSource, MFMailAccount, NSButton, NSIndexSet, NSMutableArray, NSMutableDictionary, NSPopUpButton, NSSecureTextField, NSSegmentedControl, NSString, NSTabView, NSTableView, NSTextField, NSTextView, NSView; + +@interface AccountPreferences : NSPreferencesModule +{ + NSMutableArray *_accounts; + NSMutableDictionary *_userEnteredInfo; + BOOL _accountBeingEditedWasEnabledWhenEditingStarted; + BOOL _creatingNewAccount; + BOOL _passwordFieldHasBeenTouched; + BOOL _userWantsToQuit; + BOOL _userWantsToClosePrefsPanel; + BOOL _userWantsToChangeSelection; + BOOL _userWantsToCreateNewAccount; + BOOL _userWantsToOpenNewAccountAssistant; + BOOL _ignoreTableViewSelectionCallbacks; + BOOL _registeredForNotifications; + BOOL _lastPopupSelectionWasAOS; + NSTextField *_passwordLabel; + NSTabView *_detailTabView; + NSTableView *_accountsTable; + NSSegmentedControl *_addRemoveAccountControl; + NSButton *_helpButton; + NSButton *_enableAccountCheckbox; + NSPopUpButton *_accountTypePopup; + NSTextField *_accountTypeString; + NSTextField *_accountName; + NSTextField *_fullNameField; + NSTextField *_emailAddressField; + NSTextField *_username; + NSTextField *_hostnameLabel; + NSTextField *_hostname; + NSTextField *_externalHostnameLabel; + NSTextField *_externalHostname; + NSSecureTextField *_password; + NSTextField *_deliveryAccountLabel; + NSPopUpButton *_smtpAccountPopup; + NSButton *_lockDeliveryAccountButton; + NSView *_outlookWebAccessView; + NSTextField *_outlookWebAccessServerName; + NSTextField *_aliasLabel; + NSPopUpButton *_aliasPopup; + NSView *_tlsCertificatesView; + NSPopUpButton *_tlsCertificatesPopup; + NSTextView *_accountSupportURLField; + AccountDetails *_accountDetails; + AccountStatusDataSource *_deliveryASDS; + MFMailAccount *_accountBeingEdited; + MFMailAccount *_accountBeingValidated; + long long _indexOfNewAccount; + NSIndexSet *_selectedRows; + NSString *_selectedToolbarIdentifier; +} + ++ (id)ispAccountInfoOfSelectedItemInAccountTypePopup:(id)arg1; ++ (Class)accountClassOfSelectedItemInAccountTypePopup:(id)arg1; ++ (void)selectAccoutType:(Class)arg1 inTypePopup:(id)arg2; ++ (void)configureAccountTypePopUp:(id)arg1; ++ (void)editServerList:(id)arg1 selectedAccount:(id)arg2; ++ (void)focusAccount:(id)arg1; ++ (void)initialize; ++ (void)_addAccountType:(id)arg1 class:(Class)arg2; +@property(nonatomic) BOOL lastPopupSelectionWasAOS; // @synthesize lastPopupSelectionWasAOS=_lastPopupSelectionWasAOS; +@property(nonatomic) BOOL registeredForNotifications; // @synthesize registeredForNotifications=_registeredForNotifications; +@property(nonatomic) BOOL ignoreTableViewSelectionCallbacks; // @synthesize ignoreTableViewSelectionCallbacks=_ignoreTableViewSelectionCallbacks; +@property(copy, nonatomic) NSString *selectedToolbarIdentifier; // @synthesize selectedToolbarIdentifier=_selectedToolbarIdentifier; +@property(copy, nonatomic) NSIndexSet *selectedRows; // @synthesize selectedRows=_selectedRows; +@property(nonatomic) BOOL userWantsToOpenNewAccountAssistant; // @synthesize userWantsToOpenNewAccountAssistant=_userWantsToOpenNewAccountAssistant; +@property(nonatomic) BOOL userWantsToCreateNewAccount; // @synthesize userWantsToCreateNewAccount=_userWantsToCreateNewAccount; +@property(nonatomic) BOOL userWantsToChangeSelection; // @synthesize userWantsToChangeSelection=_userWantsToChangeSelection; +@property(nonatomic) BOOL userWantsToClosePrefsPanel; // @synthesize userWantsToClosePrefsPanel=_userWantsToClosePrefsPanel; +@property(nonatomic) BOOL userWantsToQuit; // @synthesize userWantsToQuit=_userWantsToQuit; +@property(nonatomic) long long indexOfNewAccount; // @synthesize indexOfNewAccount=_indexOfNewAccount; +@property(nonatomic) BOOL passwordFieldHasBeenTouched; // @synthesize passwordFieldHasBeenTouched=_passwordFieldHasBeenTouched; +@property(nonatomic) BOOL creatingNewAccount; // @synthesize creatingNewAccount=_creatingNewAccount; +@property(nonatomic) BOOL accountBeingEditedWasEnabledWhenEditingStarted; // @synthesize accountBeingEditedWasEnabledWhenEditingStarted=_accountBeingEditedWasEnabledWhenEditingStarted; +@property(retain, nonatomic) MFMailAccount *accountBeingValidated; // @synthesize accountBeingValidated=_accountBeingValidated; +@property(retain, nonatomic) MFMailAccount *accountBeingEdited; // @synthesize accountBeingEdited=_accountBeingEdited; +@property(retain, nonatomic) AccountStatusDataSource *deliveryASDS; // @synthesize deliveryASDS=_deliveryASDS; +@property(retain, nonatomic) AccountDetails *accountDetails; // @synthesize accountDetails=_accountDetails; +@property(nonatomic) NSTextView *accountSupportURLField; // @synthesize accountSupportURLField=_accountSupportURLField; +@property(nonatomic) __weak NSPopUpButton *tlsCertificatesPopup; // @synthesize tlsCertificatesPopup=_tlsCertificatesPopup; +@property(nonatomic) __weak NSView *tlsCertificatesView; // @synthesize tlsCertificatesView=_tlsCertificatesView; +@property(nonatomic) __weak NSPopUpButton *aliasPopup; // @synthesize aliasPopup=_aliasPopup; +@property(nonatomic) __weak NSTextField *aliasLabel; // @synthesize aliasLabel=_aliasLabel; +@property(nonatomic) __weak NSTextField *outlookWebAccessServerName; // @synthesize outlookWebAccessServerName=_outlookWebAccessServerName; +@property(nonatomic) __weak NSView *outlookWebAccessView; // @synthesize outlookWebAccessView=_outlookWebAccessView; +@property(nonatomic) __weak NSButton *lockDeliveryAccountButton; // @synthesize lockDeliveryAccountButton=_lockDeliveryAccountButton; +@property(nonatomic) __weak NSPopUpButton *smtpAccountPopup; // @synthesize smtpAccountPopup=_smtpAccountPopup; +@property(nonatomic) __weak NSTextField *deliveryAccountLabel; // @synthesize deliveryAccountLabel=_deliveryAccountLabel; +@property(nonatomic) __weak NSSecureTextField *password; // @synthesize password=_password; +@property(nonatomic) __weak NSTextField *externalHostname; // @synthesize externalHostname=_externalHostname; +@property(nonatomic) __weak NSTextField *externalHostnameLabel; // @synthesize externalHostnameLabel=_externalHostnameLabel; +@property(nonatomic) __weak NSTextField *hostname; // @synthesize hostname=_hostname; +@property(nonatomic) __weak NSTextField *hostnameLabel; // @synthesize hostnameLabel=_hostnameLabel; +@property(nonatomic) __weak NSTextField *username; // @synthesize username=_username; +@property(nonatomic) __weak NSTextField *emailAddressField; // @synthesize emailAddressField=_emailAddressField; +@property(nonatomic) __weak NSTextField *fullNameField; // @synthesize fullNameField=_fullNameField; +@property(nonatomic) __weak NSTextField *accountName; // @synthesize accountName=_accountName; +@property(nonatomic) __weak NSTextField *accountTypeString; // @synthesize accountTypeString=_accountTypeString; +@property(nonatomic) __weak NSPopUpButton *accountTypePopup; // @synthesize accountTypePopup=_accountTypePopup; +@property(nonatomic) __weak NSButton *enableAccountCheckbox; // @synthesize enableAccountCheckbox=_enableAccountCheckbox; +@property(nonatomic) __weak NSButton *helpButton; // @synthesize helpButton=_helpButton; +@property(nonatomic) __weak NSSegmentedControl *addRemoveAccountControl; // @synthesize addRemoveAccountControl=_addRemoveAccountControl; +@property(nonatomic) __weak NSTableView *accountsTable; // @synthesize accountsTable=_accountsTable; +@property(nonatomic) __weak NSTabView *detailTabView; // @synthesize detailTabView=_detailTabView; +@property(nonatomic) __weak NSTextField *passwordLabel; // @synthesize passwordLabel=_passwordLabel; +- (void).cxx_destruct; +- (Class)_classForNewAccount; +- (id)_nameForNewAccount; +- (void)controlTextDidChange:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (id)_accountAtRow:(long long)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)editServerList:(id)arg1 selectedAccount:(id)arg2; +- (void)editAliases:(id)arg1; +- (void)setAlias:(id)arg1; +- (void)customAlias:(id)arg1; +- (void)accountTypeChanged:(id)arg1; +- (void)_accountTypePopupWillPopup:(id)arg1; +- (BOOL)_newSettingsAreValid; +- (void)_synchronizeAliasPopup; +- (void)_updateAliasPopup; +- (void)_updateAccountTypePopup; +- (void)_setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (void)tabView:(id)arg1 didSelectTabViewItem:(id)arg2; +- (void)_saveAccountBeingEdited; +- (void)_runAccountDetailPanelForAccount:(id)arg1; +- (void)_setupUIForAccountBeingEdited; +- (void)_reloadDeliveryAccountPopup:(id)arg1; +- (void)_clearAccountUI; +- (void)_setUIElementsEnabled:(BOOL)arg1; +- (void)_tableDidResize:(id)arg1; +- (BOOL)_allowSwitchingAwayFromSelectedAccount; +- (void)_handleRequestToSwitchAwayFromSelectedAccountWithResponse:(BOOL)arg1; +- (BOOL)_isAccountInformationDirty; +- (void)editMailAccount:(id)arg1; +- (void)editAccount:(id)arg1; +- (void)_removeAccountBeingCreated; +- (void)addRemoveAccountClick:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)toggleIncludeWhenCheckingForNewMail:(id)arg1; +- (void)toggleAccountEnabled:(id)arg1; +- (void)_saveAccountInfo; +- (BOOL)preferencesWindowShouldClose; +- (BOOL)moduleCanBeRemoved; +- (void)moduleWasInstalled; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)initializeFromDefaults; +- (id)init; +- (id)imageForPreferenceNamed:(id)arg1; +- (void)_accountDidChange:(id)arg1; +- (void)_accountsDidChange:(id)arg1; +- (void)awakeFromNib; +- (void)dealloc; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountSetupManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountSetupManager.h new file mode 100644 index 00000000..3a582cd6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountSetupManager.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface AccountSetupManager : NSObject +{ +} + ++ (void)showAddAccountSheetInWindow:(id)arg1 completionHandler:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountStatusDataSource.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountStatusDataSource.h new file mode 100644 index 00000000..24cba93d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountStatusDataSource.h @@ -0,0 +1,105 @@ +/* + * 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 "NSMenuDelegate.h" +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class MFAccount, MFAccountStatus, NSArray, NSMutableDictionary, NSPopUpButton, NSString, NSTableView, NSTextView; + +@interface AccountStatusDataSource : NSObject +{ + NSMutableDictionary *_progressIndicators; + MFAccountStatus *_statusProvider; + NSArray *_accounts; + MFAccount *_selectedAccount; + MFAccount *_dynamicAccount; + BOOL _allowNone; + BOOL _allowEditServerList; + BOOL _omitStatus; + BOOL _selectedAccountIsLocked; + BOOL _delegateWantsTableDataSourceInvocations; + BOOL _allowAccountLocking; + BOOL _beConservative; + BOOL _disabled; + BOOL _usesOfflineStatusString; + id _delegate; + NSPopUpButton *_popUp; + NSTableView *_table; + NSTextView *_ispInfoField; + unsigned long long _accountFlags; +} + ++ (id)keyPathsForValuesAffectingTotalNumberOfAccounts; +@property(nonatomic) BOOL usesOfflineStatusString; // @synthesize usesOfflineStatusString=_usesOfflineStatusString; +@property(nonatomic) BOOL disabled; // @synthesize disabled=_disabled; +@property(nonatomic) unsigned long long accountFlags; // @synthesize accountFlags=_accountFlags; +@property(nonatomic) NSTextView *ispInfoField; // @synthesize ispInfoField=_ispInfoField; +@property(retain, nonatomic) NSTableView *table; // @synthesize table=_table; +@property(retain, nonatomic) NSPopUpButton *popUp; // @synthesize popUp=_popUp; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +@property BOOL beConservative; // @synthesize beConservative=_beConservative; +@property BOOL allowAccountLocking; // @synthesize allowAccountLocking=_allowAccountLocking; +@property BOOL delegateWantsTableDataSourceInvocations; // @synthesize delegateWantsTableDataSourceInvocations=_delegateWantsTableDataSourceInvocations; +@property BOOL selectedAccountIsLocked; // @synthesize selectedAccountIsLocked=_selectedAccountIsLocked; +@property BOOL omitStatus; // @synthesize omitStatus=_omitStatus; +@property BOOL allowEditServerList; // @synthesize allowEditServerList=_allowEditServerList; +@property BOOL allowNone; // @synthesize allowNone=_allowNone; +- (void).cxx_destruct; +- (void)_updateUIWithAccountState:(id)arg1; +- (void)_updateUI; +- (void)_removeUI:(id)arg1; +- (void)_addUI:(id)arg1; +- (void)_reloadAccounts:(id)arg1; +- (void)_accountInfoDidChange:(id)arg1; +- (void)_didUpdateAccountStatus:(id)arg1; +- (void)_willRefreshStatusForAllAccounts:(id)arg1; +- (void)_tableViewDoubleClickAction:(id)arg1; +- (void)_removeAllIndicators:(id)arg1; +- (id)_accountForTableRow:(long long)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (unsigned long long)tableRowIndexOfAccount:(id)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)tableViewWillHide:(id)arg1; +- (void)tableViewWillBecomeVisible:(id)arg1; +- (void)configureTable:(id)arg1 ispInfoField:(id)arg2 handleDoubleClick:(BOOL)arg3 useOfflineStatusString:(BOOL)arg4; +- (void)toggleAccountLock:(id)arg1; +- (void)editServerList:(id)arg1; +- (void)_selectAccount:(id)arg1; +- (void)_synchronizePopUpWithSelectedAccount; +- (void)_popUpButtonWillPopUp:(id)arg1; +- (void)_configureMenuItem:(id)arg1 forAccount:(id)arg2; +- (BOOL)menu:(id)arg1 updateItem:(id)arg2 atIndex:(long long)arg3 shouldCancel:(BOOL)arg4; +- (unsigned long long)menuItemIndexOfAccount:(id)arg1; +- (long long)numberOfItemsInMenu:(id)arg1; +- (void)configurePopUpButton:(id)arg1; +- (void)disable; +- (void)enable; +- (void)refresh; +- (id)_displayStringWithOfflineStatusForAccount:(id)arg1; +- (void)_resetObservedAccounts; +@property(readonly, nonatomic) unsigned long long totalNumberOfAccounts; +- (void)selectAnyAccount; +@property(retain) MFAccount *selectedAccount; +@property(retain) MFAccount *dynamicAccount; +@property(copy) NSArray *accounts; +@property(retain) MFAccountStatus *statusProvider; +- (void)dealloc; +- (id)init; +- (id)initWithDelegate:(id)arg1 forAccounts:(unsigned long long)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountStatusDataSourceDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountStatusDataSourceDelegate-Protocol.h new file mode 100644 index 00000000..7ce3024e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountStatusDataSourceDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol AccountStatusDataSourceDelegate + +@optional +- (void)configureMenuItem:(id)arg1 forAccount:(id)arg2; +- (void)showConnectionDoctor:(id)arg1; +- (void)editServerList:(id)arg1 selectedAccount:(id)arg2; +- (void)toggleAccountLock:(id)arg1; +- (void)addServer:(id)arg1; +- (void)setSelectedAccount:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountSummary.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountSummary.h new file mode 100644 index 00000000..fe7791ce --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AccountSummary.h @@ -0,0 +1,43 @@ +/* + * 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" + +@class NSTextField, NSView; + +@interface AccountSummary : NSObject +{ + NSView *_view; + NSTextField *_accountDescription; + NSTextField *_fullname; + NSTextField *_emailAddress; + NSTextField *_userName; + NSTextField *_incomingServer; + NSTextField *_incomingServerSSLMode; + NSTextField *_outgoingServer; + NSTextField *_outgoingServerSSLMode; + NSTextField *_outlookServer; + NSTextField *_outlookServerLabel; +} + +@property(nonatomic) __weak NSTextField *outlookServerLabel; // @synthesize outlookServerLabel=_outlookServerLabel; +@property(nonatomic) __weak NSTextField *outlookServer; // @synthesize outlookServer=_outlookServer; +@property(nonatomic) __weak NSTextField *outgoingServerSSLMode; // @synthesize outgoingServerSSLMode=_outgoingServerSSLMode; +@property(nonatomic) __weak NSTextField *outgoingServer; // @synthesize outgoingServer=_outgoingServer; +@property(nonatomic) __weak NSTextField *incomingServerSSLMode; // @synthesize incomingServerSSLMode=_incomingServerSSLMode; +@property(nonatomic) __weak NSTextField *incomingServer; // @synthesize incomingServer=_incomingServer; +@property(nonatomic) __weak NSTextField *userName; // @synthesize userName=_userName; +@property(nonatomic) __weak NSTextField *emailAddress; // @synthesize emailAddress=_emailAddress; +@property(nonatomic) __weak NSTextField *fullname; // @synthesize fullname=_fullname; +@property(nonatomic) __weak NSTextField *accountDescription; // @synthesize accountDescription=_accountDescription; +@property(retain, nonatomic) NSView *view; // @synthesize view=_view; +- (void).cxx_destruct; +- (void)setupUIWithAccount:(id)arg1; +- (void)setupUIWithAccount:(id)arg1 deliveryAccount:(id)arg2; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityAggregateView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityAggregateView.h new file mode 100644 index 00000000..20e4bf80 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityAggregateView.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class MCActivityAggregate, NSButton, NSProgressIndicator, NSTextField; + +@interface ActivityAggregateView : NSView +{ + MCActivityAggregate *_activityAggregate; + NSTextField *_nameTextField; + NSTextField *_statusTextField; + NSButton *_stopButton; + NSProgressIndicator *_progressIndicator; +} + +@property(retain, nonatomic) NSProgressIndicator *progressIndicator; // @synthesize progressIndicator=_progressIndicator; +@property(retain, nonatomic) NSButton *stopButton; // @synthesize stopButton=_stopButton; +@property(retain, nonatomic) NSTextField *statusTextField; // @synthesize statusTextField=_statusTextField; +@property(retain, nonatomic) NSTextField *nameTextField; // @synthesize nameTextField=_nameTextField; +- (void).cxx_destruct; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_updateNameTextField; +@property(retain, nonatomic) MCActivityAggregate *activityAggregate; +- (void)dealloc; +- (void)_activityAggregateViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityPaneView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityPaneView.h new file mode 100644 index 00000000..58dddd0b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityPaneView.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSVisualEffectView.h" + +@class CALayer; + +@interface ActivityPaneView : NSVisualEffectView +{ + CALayer *_dividerLayer; +} + +@property(nonatomic) __weak CALayer *dividerLayer; // @synthesize dividerLayer=_dividerLayer; +- (void).cxx_destruct; +@property(nonatomic) BOOL drawDivider; +- (void)updateLayer; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewController.h new file mode 100644 index 00000000..8f976fa9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewController.h @@ -0,0 +1,74 @@ +/* + * 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 "NSAnimationDelegate.h" + +@class ActivityAggregateView, ActivityPaneView, NSButton, NSLayoutConstraint, NSMutableArray, NSMutableSet, NSOutlineView, NSString, NSTextField, NSView; + +@interface ActivityViewController : NSObject +{ + NSMutableArray *_views; + NSMutableArray *_viewQueue; + NSMutableSet *_viewsPendingHide; + BOOL _loadingAggregateView; + NSTextField *_titleTextField; + ActivityPaneView *_contentView; + ActivityPaneView *_bottomPane; + NSButton *_mailActivityToggleButton; + NSOutlineView *_mailboxesOutline; + NSView *_mailboxesContent; + ActivityAggregateView *_aggregateView; + NSView *_innerView; + ActivityAggregateView *_inView; + ActivityAggregateView *_outView; + ActivityAggregateView *_saveView; + NSLayoutConstraint *_activityViewHeightConstraint; +} + +@property(nonatomic) __weak NSLayoutConstraint *activityViewHeightConstraint; // @synthesize activityViewHeightConstraint=_activityViewHeightConstraint; +@property(retain, nonatomic) ActivityAggregateView *saveView; // @synthesize saveView=_saveView; +@property(retain, nonatomic) ActivityAggregateView *outView; // @synthesize outView=_outView; +@property(retain, nonatomic) ActivityAggregateView *inView; // @synthesize inView=_inView; +@property(retain, nonatomic) NSView *innerView; // @synthesize innerView=_innerView; +@property(nonatomic) BOOL loadingAggregateView; // @synthesize loadingAggregateView=_loadingAggregateView; +@property(retain, nonatomic) ActivityAggregateView *aggregateView; // @synthesize aggregateView=_aggregateView; +@property(retain, nonatomic) NSView *mailboxesContent; // @synthesize mailboxesContent=_mailboxesContent; +@property(nonatomic) __weak NSOutlineView *mailboxesOutline; // @synthesize mailboxesOutline=_mailboxesOutline; +@property(nonatomic) __weak NSButton *mailActivityToggleButton; // @synthesize mailActivityToggleButton=_mailActivityToggleButton; +@property(nonatomic) __weak ActivityPaneView *bottomPane; // @synthesize bottomPane=_bottomPane; +@property(nonatomic) __weak ActivityPaneView *contentView; // @synthesize contentView=_contentView; +@property(nonatomic) __weak NSTextField *titleTextField; // @synthesize titleTextField=_titleTextField; +- (void).cxx_destruct; +- (BOOL)_shouldShowBottomDivider; +- (void)_mailboxesFrameChanged:(id)arg1; +- (double)_activityAnimationDuration; +- (void)_setActivityViewHeight:(double)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_hideViews:(id)arg1; +- (void)_hideView:(id)arg1; +- (void)_showView:(id)arg1; +- (BOOL)removeViewFromQueue:(id)arg1; +- (void)addViewToQueue:(id)arg1; +- (void)toggleDisplay:(id)arg1; +- (void)configureActivityAggegateViews; +- (id)_activityAggregateViewForAggregate:(id)arg1 withKeyPathToObserve:(id)arg2; +- (id)_loadActivityAggregateView; +- (void)_setVisible:(BOOL)arg1; +- (void)_unregisterObservedKeyPaths; +- (void)dealloc; +- (void)awakeFromNib; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewEntry.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewEntry.h new file mode 100644 index 00000000..f03a1cba --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewEntry.h @@ -0,0 +1,44 @@ +/* + * 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" + +@class ActivityViewer, MCActivityMonitor, NSButton, NSProgressIndicator, NSTextField, NSView; + +@interface ActivityViewEntry : NSObject +{ + MCActivityMonitor *_monitoredActivity; + int _lastChangeCount; + NSView *_box; + NSProgressIndicator *_progressBar; + NSTextField *_statusField; + NSButton *_stopButton; + NSTextField *_taskNameField; + ActivityViewer *_viewer; +} + +@property(readonly, nonatomic) __weak ActivityViewer *viewer; // @synthesize viewer=_viewer; +@property(nonatomic) int lastChangeCount; // @synthesize lastChangeCount=_lastChangeCount; +@property(nonatomic) __weak NSTextField *taskNameField; // @synthesize taskNameField=_taskNameField; +@property(nonatomic) __weak NSButton *stopButton; // @synthesize stopButton=_stopButton; +@property(nonatomic) __weak NSTextField *statusField; // @synthesize statusField=_statusField; +@property(nonatomic) __weak NSProgressIndicator *progressBar; // @synthesize progressBar=_progressBar; +@property(retain, nonatomic) NSView *box; // @synthesize box=_box; +- (void).cxx_destruct; +- (void)setupUI; +- (BOOL)inUse; +- (void)stop:(id)arg1; +- (void)_handleActivityEnded:(id)arg1; +- (void)update; +@property(retain, nonatomic) MCActivityMonitor *monitoredActivity; +- (id)description; +- (void)awakeFromNib; +- (void)dealloc; +- (id)init; +- (id)initForViewer:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewEntryView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewEntryView.h new file mode 100644 index 00000000..1c754a82 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewEntryView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface ActivityViewEntryView : NSView +{ +} + +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewer.h new file mode 100644 index 00000000..4efa6092 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewer.h @@ -0,0 +1,60 @@ +/* + * 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 "MVTerminationHandler.h" +#import "NSWindowDelegate.h" + +@class NSDate, NSMutableArray, NSPanel, NSScrollView, NSStackView, NSString, NSTimer; + +@interface ActivityViewer : NSObject +{ + NSMutableArray *_entries; + BOOL _userIsBeingPromptedForTermination; + NSStackView *_docView; + NSScrollView *_scrollView; + NSPanel *_window; + NSTimer *_updateTimer; + NSDate *_updateTimerStartDate; +} + +@property(nonatomic) BOOL userIsBeingPromptedForTermination; // @synthesize userIsBeingPromptedForTermination=_userIsBeingPromptedForTermination; +@property(retain, nonatomic) NSDate *updateTimerStartDate; // @synthesize updateTimerStartDate=_updateTimerStartDate; +@property(retain, nonatomic) NSTimer *updateTimer; // @synthesize updateTimer=_updateTimer; +@property(retain, nonatomic) NSPanel *window; // @synthesize window=_window; +@property(nonatomic) __weak NSScrollView *scrollView; // @synthesize scrollView=_scrollView; +@property(nonatomic) __weak NSStackView *docView; // @synthesize docView=_docView; +- (void).cxx_destruct; +- (struct CGRect)windowWillUseStandardFrame:(id)arg1 defaultFrame:(struct CGRect)arg2; +- (void)windowWillClose:(id)arg1; +- (BOOL)windowShouldClose:(id)arg1; +- (id)statusMessageForTarget:(id)arg1; +- (void)toggleActivityViewerVisible; +- (BOOL)isActivityViewerVisible; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)_promptUserForTermination; +- (BOOL)needsToPromptUserBeforeTermination:(id)arg1; +- (long long)countOfBackgroundActivities; +- (BOOL)hasBackgroundActivity; +- (void)removeEntry:(id)arg1; +- (void)_appendEntry:(id)arg1; +- (void)_addViewToViewerWindow:(id)arg1; +- (void)_updateAllEntries; +- (void)_handleNewActivity:(id)arg1; +- (void)awakeFromNib; +- (void)initializeFromDefaults; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewerMailSound.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewerMailSound.h new file mode 100644 index 00000000..77607458 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ActivityViewerMailSound.h @@ -0,0 +1,30 @@ +/* + * 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" + +@interface ActivityViewerMailSound : NSObject +{ + BOOL _fetchWasRequested; + BOOL _waitingForServerResponse; + BOOL _shouldPlayNoMailSound; + unsigned long long _backgroundFetchesInProgress; +} + +@property(nonatomic) unsigned long long backgroundFetchesInProgress; // @synthesize backgroundFetchesInProgress=_backgroundFetchesInProgress; +@property(nonatomic) BOOL shouldPlayNoMailSound; // @synthesize shouldPlayNoMailSound=_shouldPlayNoMailSound; +@property(nonatomic) BOOL waitingForServerResponse; // @synthesize waitingForServerResponse=_waitingForServerResponse; +@property(nonatomic) BOOL fetchWasRequested; // @synthesize fetchWasRequested=_fetchWasRequested; +- (void)_mailFetchComplete; +- (BOOL)_isActivityInteresting:(id)arg1 isStarting:(BOOL)arg2; +- (void)_monitoredActivityEnded:(id)arg1; +- (void)_monitoredActivityStarted:(id)arg1; +- (void)beginFetch:(BOOL)arg1; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AddressHistoryController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AddressHistoryController.h new file mode 100644 index 00000000..5c355670 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AddressHistoryController.h @@ -0,0 +1,69 @@ +/* + * 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 "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class NSButton, NSImage, NSMutableArray, NSMutableDictionary, NSOperationQueue, NSSearchField, NSString, NSTableView, NSWindow; + +@interface AddressHistoryController : NSObject +{ + NSMutableArray *_historyRecords; + BOOL _sortIsAscending; + NSTableView *_historyTableView; + NSButton *_addToContactsButton; + NSWindow *_window; + NSSearchField *_searchField; + NSMutableDictionary *_abRecordMap; + NSOperationQueue *_fetchQueue; + NSString *_sortColumn; + NSImage *_addressBookPersonImage; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) NSImage *addressBookPersonImage; // @synthesize addressBookPersonImage=_addressBookPersonImage; +@property(nonatomic) BOOL sortIsAscending; // @synthesize sortIsAscending=_sortIsAscending; +@property(nonatomic) __weak NSString *sortColumn; // @synthesize sortColumn=_sortColumn; +@property(readonly, nonatomic) NSOperationQueue *fetchQueue; // @synthesize fetchQueue=_fetchQueue; +@property(retain, nonatomic) NSMutableDictionary *abRecordMap; // @synthesize abRecordMap=_abRecordMap; +@property(nonatomic) __weak NSSearchField *searchField; // @synthesize searchField=_searchField; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +@property(nonatomic) __weak NSButton *addToContactsButton; // @synthesize addToContactsButton=_addToContactsButton; +@property(nonatomic) __weak NSTableView *historyTableView; // @synthesize historyTableView=_historyTableView; +- (void).cxx_destruct; +- (id)_recordForAddress:(id)arg1; +- (void)_addressBookDidChange:(id)arg1; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (void)_showColumnSortIndicator; +- (void)_sortHistoryData; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)openContacts:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)_cancelSearch:(id)arg1; +- (void)search:(id)arg1; +- (void)searchIndex:(id)arg1; +- (void)deleteFromHistory:(id)arg1; +- (void)addToContacts:(id)arg1; +- (void)showAddressHistory; +- (void)_fetchRecentsDataWithCompletionBlock:(id)arg1; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AppleScriptPopUpButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AppleScriptPopUpButton.h new file mode 100644 index 00000000..7f1534db --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AppleScriptPopUpButton.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@class NSMenu, NSString, NSURL; + +@interface AppleScriptPopUpButton : NSPopUpButton +{ + BOOL _amIAwake; + NSString *_previouslySelectedItem; + NSURL *_applicationScriptsDirectoryURL; + id _delegate; + NSMenu *_appleScriptFilesMenu; +} + +@property(nonatomic) BOOL amIAwake; // @synthesize amIAwake=_amIAwake; +@property(retain, nonatomic) NSMenu *appleScriptFilesMenu; // @synthesize appleScriptFilesMenu=_appleScriptFilesMenu; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +@property(retain, nonatomic) NSURL *applicationScriptsDirectoryURL; // @synthesize applicationScriptsDirectoryURL=_applicationScriptsDirectoryURL; +@property(retain, nonatomic) NSString *previouslySelectedItem; // @synthesize previouslySelectedItem=_previouslySelectedItem; +- (void).cxx_destruct; +- (void)_invalidateAppleScriptFilesMenu; +- (void)_popupMenuChanged:(id)arg1; +- (void)resetPopUp; +- (id)selectedAppleScriptPath; +- (void)selectAppleScriptPath:(id)arg1; +- (void)_configureAppleScriptFilesMenu; +- (id)_appleScriptFilesFromMagicDirectory; +- (void)viewDidMoveToWindow; +- (id)menu; +- (void)dealloc; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Assistant.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Assistant.h new file mode 100644 index 00000000..f47697e4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Assistant.h @@ -0,0 +1,38 @@ +/* + * 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" + +@class NSButton, NSView; + +@interface Assistant : NSObject +{ + id _delegate; + NSView *_parentView; + NSButton *_backButton; + NSButton *_forwardButton; + NSButton *_cancelButton; +} + +@property(readonly, nonatomic) NSButton *cancelButton; // @synthesize cancelButton=_cancelButton; +@property(readonly, nonatomic) NSButton *forwardButton; // @synthesize forwardButton=_forwardButton; +@property(readonly, nonatomic) NSButton *backButton; // @synthesize backButton=_backButton; +@property(readonly, nonatomic) NSView *parentView; // @synthesize parentView=_parentView; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (void)setupKeyViewLoop; +- (id)windowTitle; +- (void)weAreDone; +- (BOOL)shouldStop; +- (void)goBackward; +- (void)goForward; +- (void)stop; +- (void)start; +- (id)init; +- (id)initWithAssistentManager:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AssistantDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AssistantDelegate-Protocol.h new file mode 100644 index 00000000..5fe6d269 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AssistantDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol AssistantDelegate +- (void)assistantDidFinish:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AssistantManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AssistantManager.h new file mode 100644 index 00000000..2bf2db66 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AssistantManager.h @@ -0,0 +1,65 @@ +/* + * 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 "AssistantDelegate.h" + +@class Assistant, NSButton, NSEvent, NSString, NSView, NSWindow; + +@interface AssistantManager : NSObject +{ + Assistant *_assistant; + BOOL _userWantsToQuit; + NSWindow *_window; + NSView *_assistantContainerView; + NSButton *_backButton; + NSButton *_forwardButton; + NSButton *_cancelButton; + NSButton *_helpButton; + NSEvent *_libraryUpgradeCompletedEvent; + long long _type; + AssistantManager *_me; +} + ++ (BOOL)isImporting; ++ (id)openAssistantOfType:(long long)arg1 modalForWindow:(id)arg2 userWantsToQuit:(char *)arg3; ++ (id)openAssistantOfType:(long long)arg1 modalForWindow:(id)arg2; +@property(retain, nonatomic) AssistantManager *me; // @synthesize me=_me; +@property(nonatomic) BOOL userWantsToQuit; // @synthesize userWantsToQuit=_userWantsToQuit; +@property(nonatomic) long long type; // @synthesize type=_type; +@property(retain, nonatomic) NSEvent *libraryUpgradeCompletedEvent; // @synthesize libraryUpgradeCompletedEvent=_libraryUpgradeCompletedEvent; +@property(nonatomic) __weak NSButton *helpButton; // @synthesize helpButton=_helpButton; +@property(nonatomic) __weak NSButton *cancelButton; // @synthesize cancelButton=_cancelButton; +@property(nonatomic) __weak NSButton *forwardButton; // @synthesize forwardButton=_forwardButton; +@property(nonatomic) __weak NSButton *backButton; // @synthesize backButton=_backButton; +@property(nonatomic) __weak NSView *assistantContainerView; // @synthesize assistantContainerView=_assistantContainerView; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +- (void).cxx_destruct; +- (void)assistantDidFinish:(id)arg1; +- (void)_moveWindowToFront:(id)arg1; +- (void)_terminate; +- (void)_sheetWillBegin:(id)arg1; +- (void)_windowDidBecomeKey:(id)arg1; +- (void)_showInWindow:(id)arg1; +- (void)_start; +- (void)cancel:(id)arg1; +- (void)forward:(id)arg1; +- (void)back:(id)arg1; +- (void)dealloc; +- (id)_initWithType:(long long)arg1; +@property(retain, nonatomic) Assistant *assistant; +- (id)init; +- (id)_newAssistantOfType:(long long)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AttachmentDragSession.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AttachmentDragSession.h new file mode 100644 index 00000000..6f167607 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AttachmentDragSession.h @@ -0,0 +1,42 @@ +/* + * 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 "NSDraggingSource.h" +#import "NSPasteboardItemDataProvider.h" + +@class NSArray, NSMutableArray, NSString, NSView; + +@interface AttachmentDragSession : NSObject +{ + NSMutableArray *_attachments; + NSView *_sourceView; + NSArray *_temporaryAttachmentURLs; +} + +@property(retain, nonatomic) NSArray *temporaryAttachmentURLs; // @synthesize temporaryAttachmentURLs=_temporaryAttachmentURLs; +@property(retain, nonatomic) NSView *sourceView; // @synthesize sourceView=_sourceView; +- (void).cxx_destruct; +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; +- (void)pasteboard:(id)arg1 item:(id)arg2 provideDataForType:(id)arg3; +- (id)namesOfPromisedFilesDroppedAtDestination:(id)arg1; +- (void)draggingSession:(id)arg1 endedAtPoint:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (void)draggingSession:(id)arg1 willBeginAtPoint:(struct CGPoint)arg2; +- (unsigned long long)draggingSession:(id)arg1 sourceOperationMaskForDraggingContext:(long long)arg2; +- (BOOL)startDragFromPoint:(struct CGPoint)arg1 event:(id)arg2 image:(id)arg3; +- (id)attachments; +- (id)initWithSourceView:(id)arg1 attachments:(id)arg2; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AttachmentLoader.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AttachmentLoader.h new file mode 100644 index 00000000..f491d606 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AttachmentLoader.h @@ -0,0 +1,48 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityMonitor, NSMutableArray, NSString; + +@interface AttachmentLoader : NSObject +{ + id _store; + MCActivityMonitor *_monitor; + NSMutableArray *_entries; +} + ++ (id)_makeLoaderForStore:(id)arg1; ++ (id)_loaderForStore:(id)arg1; ++ (void)cancelInlineLoads:(id)arg1 window:(id)arg2; ++ (void)startLoadingInlineAttachments:(id)arg1 window:(id)arg2 delegate:(id)arg3; ++ (id)loaderForSavingAttachment:(id)arg1 window:(id)arg2 path:(id)arg3; ++ (id)loaderForAttachmentViewController:(id)arg1 window:(id)arg2 reason:(int)arg3 application:(id)arg4 attachmentDirectory:(id)arg5; ++ (id)loaderForAttachment:(id)arg1 window:(id)arg2 reason:(int)arg3 application:(id)arg4 attachmentDirectory:(id)arg5; +- (void).cxx_destruct; +- (BOOL)_addOrReprioritizeEntryEqualTo:(id)arg1; +- (void)_addAttachmentsToFetch:(id)arg1 fromWindow:(id)arg2 delegate:(id)arg3; +- (void)_startBackgroundThreadIfNeeded; +- (void)_setStore:(id)arg1; +- (void)_mailboxBecameInvalid; +- (void)_monitorQuit:(id)arg1; +- (void)_setMonitor:(id)arg1; +- (void)_processAttachmentQueue; +- (void)_didFetchDataForQueueEntry:(id)arg1; +- (void)_cancelInlineLoadsForWindow:(id)arg1; +- (id)init; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AttachmentManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AttachmentManager.h new file mode 100644 index 00000000..55a2df2f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AttachmentManager.h @@ -0,0 +1,127 @@ +/* + * 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 "MCActivityTarget.h" +#import "MVTerminationHandler.h" +#import "NSSharingServiceDelegate.h" +#import "NSSharingServicePickerDelegate.h" +#import "QLPreviewPanelDataSource.h" +#import "QLPreviewPanelDelegate.h" +#import "QLSeamlessOpenerDelegate.h" + +@class MCInvocationQueue, MFAttachmentViewController, NSMutableArray, NSMutableDictionary, NSString, NSTimer; + +@interface AttachmentManager : NSObject +{ + NSMutableArray *_openedAttachmentPaths; + NSMutableDictionary *_openedAttachmentMessageIDs; + NSMutableArray *_messageIDPurgeQueue; + long long _purgeBehavior; + NSMutableDictionary *_quickLookAttachments; + BOOL _isDirty; + MFAttachmentViewController *_controllerForImageToShare; + NSTimer *_purgeTimer; + MCInvocationQueue *_deletionHandlerQueue; +} + ++ (BOOL)attachmentPurgingIsEnabled; ++ (id)_openedAttachmentListPath; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (void)initialize; +@property(readonly, nonatomic) MCInvocationQueue *deletionHandlerQueue; // @synthesize deletionHandlerQueue=_deletionHandlerQueue; +@property(retain, nonatomic) NSTimer *purgeTimer; // @synthesize purgeTimer=_purgeTimer; +@property(retain, nonatomic) MFAttachmentViewController *controllerForImageToShare; // @synthesize controllerForImageToShare=_controllerForImageToShare; +- (void).cxx_destruct; +- (void)_noteFileSystemChanged:(id)arg1; +- (id)_fileForSavedFileWrapper:(id)arg1 directory:(id)arg2 makePathUnique:(BOOL)arg3; +- (BOOL)_immediatelyOpenAttachment:(id)arg1 withApplicationURL:(id)arg2 window:(id)arg3 attachmentDirectory:(id)arg4 reason:(int)arg5; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)_handleMessageDeleted:(id)arg1; +- (void)_messageDeleted:(id)arg1; +- (void)_schedulePurgeOfMessageIDs:(id)arg1; +- (void)_scheduleMessageIDPurge; +- (void)_purgeMessageIDs; +- (void)_purgeAttachments:(id)arg1; +- (void)_reallyPurgeAttachments; +- (void)_finishTerminatingAttachmentPurge; +- (void)_synchronouslyPurgeAttachments; +- (BOOL)_allMessagesWithMessageIDAreDeletedOrTrashed:(id)arg1; +- (void)_saveOpenedAttachmentsList; +- (void)_scheduleAttachmentListSave; +- (void)_setDirty:(BOOL)arg1; +- (void)_addPurgeEntryForAttachmentAtPath:(id)arg1 modDate:(id)arg2 messageID:(id)arg3 partNumber:(id)arg4; +- (void)_addOrReplaceEntry:(id)arg1 inAttachmentList:(id)arg2; +- (void)_setupOpenedAttachmentsMessageIDMap; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)seamlessOpener:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (BOOL)_immediatelyOpenAttachment:(id)arg1 path:(id)arg2 window:(id)arg3 application:(id)arg4 reason:(int)arg5 exists:(BOOL)arg6; +- (BOOL)_sameAttachmentAsBefore:(id)arg1 proposedPath:(id)arg2 withProposedAttachmentWrapper:(id)arg3; +- (BOOL)_saveAttachmentsFromMessages:(id)arg1 toDirectory:(id)arg2 error:(id *)arg3; +- (void)_saveAttachmentsFromMessages:(id)arg1 toDirectory:(id)arg2; +- (BOOL)_saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3 error:(id *)arg4; +- (void)_saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3; +- (void)_saveAttachment:(id)arg1 toPath:(id)arg2 window:(id)arg3; +- (void)_immediatelySaveFileWrapper:(id)arg1 path:(id)arg2 window:(id)arg3; +- (void)_openPathsForAttachmentsWithDictionary:(id)arg1; +- (int)_openFullPath:(id)arg1 withAppURL:(struct __CFURL *)arg2 options:(unsigned int)arg3; +- (id)previewPanel:(id)arg1 previewItemAtIndex:(long long)arg2; +- (long long)numberOfPreviewItemsInPreviewPanel:(id)arg1; +- (id)sharingService:(id)arg1 sourceWindowForShareItems:(id)arg2 sharingContentScope:(long long *)arg3; +- (id)sharingService:(id)arg1 transitionImageForShareItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)sharingService:(id)arg1 sourceFrameOnScreenForShareItem:(id)arg2; +- (id)sharingServicePicker:(id)arg1 delegateForSharingService:(id)arg2; +- (void)sharingService:(id)arg1 didShareItems:(id)arg2; +- (id)sharingServicePicker:(id)arg1 sharingServicesForItems:(id)arg2 proposedSharingServices:(id)arg3; +- (void)writeImageAttachmentToPasteboard:(id)arg1; +- (void)saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3 window:(id)arg4; +- (id)contextualMenuForAttachments:(id)arg1 clickedAttachment:(id)arg2 forEditing:(BOOL)arg3; +- (void)_configureOpenWithMenu:(id)arg1 forAttachments:(id)arg2; +- (BOOL)openFileAtPath:(id)arg1 withApplication:(id)arg2 stayInBackground:(BOOL)arg3; +- (BOOL)openFileURL:(id)arg1 stayInBackground:(BOOL)arg2 window:(id)arg3; +- (void)chooseApplicationToOpenAttachments:(id)arg1 needsSave:(BOOL)arg2 window:(id)arg3 delegate:(id)arg4; +- (BOOL)openInvitationAttachments:(id)arg1 openImmediately:(BOOL)arg2; +- (BOOL)openTemporaryAttachments:(id)arg1 applicationBundle:(id)arg2 window:(id)arg3; +- (void)saveAttachmentsToDownloadDirectory:(id)arg1 window:(id)arg2; +- (void)_runSavePanelForAttachments:(id)arg1 messages:(id)arg2 window:(id)arg3; +- (void)runSavePanelForAttachments:(id)arg1 window:(id)arg2; +- (void)saveAttachmentsFromMessages:(id)arg1 window:(id)arg2; +- (void)_openAttachmentsWithDictionary:(id)arg1; +- (void)openAttachments:(id)arg1 applicationURL:(id)arg2 window:(id)arg3 delegate:(id)arg4; +- (void)downloadAttachments:(id)arg1 window:(id)arg2; +- (void)quickLookAttachmentsFromMessages:(id)arg1 window:(id)arg2; +- (void)quickLookAttachments:(id)arg1 window:(id)arg2; +- (void)windowWillClose:(id)arg1; +- (BOOL)previewPanel:(id)arg1 shouldOpenURL:(id)arg2 forPreviewItem:(id)arg3; +- (id)previewPanel:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)previewPanel:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (void)_addAttachmentToQuickLookPanel:(id)arg1 attachmentDirectory:(id)arg2 window:(id)arg3; +- (BOOL)_addAttachmentForQuickLook:(id)arg1 attachmentDirectory:(id)arg2; +- (void)_tellControllerAttachmentIsDownloaded:(id)arg1; +- (void)_downloadCompleted:(id)arg1; +- (void)_openFromDownloadedNotification:(id)arg1; +- (id)pathsForDraggedAttachments:(id)arg1 fromView:(id)arg2; +- (BOOL)dragAttachments:(id)arg1 startPoint:(struct CGPoint)arg2 view:(id)arg3 event:(id)arg4 image:(id)arg5 delegate:(id)arg6; +- (void)cancelLoadingInlineAttachmentsForDisplay:(id)arg1; +- (void)beginLoadingInlineAttachmentsForDisplay:(id)arg1; +- (void)setAttachmentPurgingBehavior:(long long)arg1; +- (long long)attachmentPurgingBehavior; +- (void)disableAttachmentPurging; +- (void)enableAttachmentPurging; +- (void)initializeAttachmentPurging; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AuthSchemeBindingProxy.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AuthSchemeBindingProxy.h new file mode 100644 index 00000000..b0f3eed6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AuthSchemeBindingProxy.h @@ -0,0 +1,30 @@ +/* + * 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" + +@class MCAuthScheme; + +@interface AuthSchemeBindingProxy : NSObject +{ + BOOL _isSeparator; + MCAuthScheme *_authScheme; +} + ++ (id)separatorProxy; ++ (id)noneProxy; +@property(nonatomic) BOOL isSeparator; // @synthesize isSeparator=_isSeparator; +@property(retain, nonatomic) MCAuthScheme *authScheme; // @synthesize authScheme=_authScheme; +- (void).cxx_destruct; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (id)name; +- (id)humanReadableName; +- (id)initWithAuthScheme:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AuthSchemeValueTransformer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AuthSchemeValueTransformer.h new file mode 100644 index 00000000..5f071f91 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/AuthSchemeValueTransformer.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSValueTransformer.h" + +@interface AuthSchemeValueTransformer : NSValueTransformer +{ +} + ++ (BOOL)allowsReverseTransformation; ++ (Class)transformedValueClass; +- (id)reverseTransformedValue:(id)arg1; +- (id)transformedValue:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerBackgroundView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerBackgroundView.h new file mode 100644 index 00000000..95cd7c6d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerBackgroundView.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "NSAccessibilityGroup.h" + +@class NSString; + +@interface BannerBackgroundView : NSView +{ + long long _bannerBackgroundStyle; +} + +- (void)setBannerBackgroundStyle:(long long)arg1; +- (long long)bannerBackgroundStyle; +- (void)_bannerBackgroundViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerContainerViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerContainerViewController.h new file mode 100644 index 00000000..3fcc0051 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerContainerViewController.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +@class MessageWebDocumentView, NSArray, NSLayoutConstraint; + +@interface BannerContainerViewController : NSViewController +{ + BOOL _loaded; + NSLayoutConstraint *_heightConstraint; + MessageWebDocumentView *_webDocumentView; + NSArray *_bannerViewControllers; +} + +@property(readonly, nonatomic) NSArray *bannerViewControllers; // @synthesize bannerViewControllers=_bannerViewControllers; +@property(nonatomic) BOOL loaded; // @synthesize loaded=_loaded; +@property(retain, nonatomic) MessageWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(retain, nonatomic) NSLayoutConstraint *heightConstraint; // @synthesize heightConstraint=_heightConstraint; +- (void).cxx_destruct; +- (void)updateBannerDisplay; +- (void)addSubviewForBanner:(id)arg1; +- (void)updateLoaded; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +- (void)dealloc; +- (void)_bannerContainerViewControllerCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerImageView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerImageView.h new file mode 100644 index 00000000..ed4d86d6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerImageView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageView.h" + +@interface BannerImageView : NSImageView +{ + struct NSEdgeInsets _edgeInsets; +} + +- (id)accessibilityChildren; +- (BOOL)isAccessibilityElement; +- (void)setAlignmentRectInsets:(struct NSEdgeInsets)arg1; +- (struct NSEdgeInsets)alignmentRectInsets; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerTextFieldCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerTextFieldCell.h new file mode 100644 index 00000000..c6f899bc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerTextFieldCell.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface BannerTextFieldCell : NSTextFieldCell +{ +} + +- (void)setAttributedStringValue:(id)arg1; +- (void)setStringValue:(id)arg1; +- (id)_stringAttributes; +- (void)setBackgroundStyle:(long long)arg1; +- (void)_bannerTextFieldCellCommonInit; +- (id)initImageCell:(id)arg1; +- (id)initTextCell:(id)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerViewController.h new file mode 100644 index 00000000..4c469f2e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BannerViewController.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +@class BannerBackgroundView, BannerContainerViewController, MUIWebDocument, MessageWebDocumentView, NSColor; + +@interface BannerViewController : NSViewController +{ + BOOL _loaded; + BOOL _wantsDisplay; + BOOL _viewIsLoaded; + BannerContainerViewController *_container; +} + ++ (id)keyPathsForValuesAffectingWebDocument; ++ (id)keyPathsForValuesAffectingWebDocumentView; +@property(nonatomic) BOOL viewIsLoaded; // @synthesize viewIsLoaded=_viewIsLoaded; +@property(nonatomic) BannerContainerViewController *container; // @synthesize container=_container; +- (void)updateWantsDisplay; +- (void)updateBannerContents; +@property(nonatomic) BOOL wantsDisplay; +@property(nonatomic) BOOL loaded; +@property(readonly, nonatomic) MUIWebDocument *webDocument; +@property(readonly, nonatomic) __weak MessageWebDocumentView *webDocumentView; +@property(readonly, nonatomic) NSColor *backgroundColor; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +@property(retain) BannerBackgroundView *view; +@property(readonly, nonatomic) double bannerHeight; +- (id)nibBundle; +- (id)nibName; +- (id)initWithCoder:(id)arg1; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; +- (id)initWithBannerContainerViewController:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BindingsEnabledMenu.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BindingsEnabledMenu.h new file mode 100644 index 00000000..ebb279eb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BindingsEnabledMenu.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMenu.h" + +@interface BindingsEnabledMenu : NSMenu +{ +} + +- (id)insertItemWithTitle:(id)arg1 action:(SEL)arg2 keyEquivalent:(id)arg3 atIndex:(long long)arg4; +- (id)addItemWithTitle:(id)arg1 action:(SEL)arg2 keyEquivalent:(id)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BlockedWebPluginView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BlockedWebPluginView.h new file mode 100644 index 00000000..6425a08f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BlockedWebPluginView.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface BlockedWebPluginView : NSView +{ +} + +- (void)_blockedWebPluginViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BorderlessToolbarItem.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BorderlessToolbarItem.h new file mode 100644 index 00000000..90d32312 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BorderlessToolbarItem.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@class NSImage; + +@interface BorderlessToolbarItem : NSToolbarItem +{ + double _width; +} + +@property(retain, nonatomic) NSImage *pressedImage; +@property(retain, nonatomic) NSImage *inactiveImage; +- (void)setImage:(id)arg1; +- (id)image; +- (void)setLabel:(id)arg1; +- (id)control; +- (void)validate; +- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; +@property(nonatomic) double width; +- (id)initWithItemIdentifier:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BusyStatusErrorWindowDelegate.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BusyStatusErrorWindowDelegate.h new file mode 100644 index 00000000..772bab09 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/BusyStatusErrorWindowDelegate.h @@ -0,0 +1,38 @@ +/* + * 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 "DynamicErrorWindowDelegate.h" + +@class MFDatabaseRecoverer, NSString; + +@interface BusyStatusErrorWindowDelegate : NSObject +{ + MFDatabaseRecoverer *_recoverer; +} + +@property(nonatomic) __weak MFDatabaseRecoverer *recoverer; // @synthesize recoverer=_recoverer; +- (void).cxx_destruct; +- (id)_capitalizedStringForDatabase; +- (id)_stringForDatabase; +- (long long)helpTopicForDiagnosis:(long long)arg1; +- (void)rightActionSelectedWithDiagnosis:(long long)arg1; +- (void)leftActionSelectedWithDiagnosis:(long long)arg1; +- (id)rightButtonTextForErrorDiagnosis:(long long)arg1; +- (id)leftButtonTextForErrorDiagnosis:(long long)arg1; +- (id)errorDescriptionForErrorDiagnosis:(long long)arg1; +- (id)errorMessageForErrorDiagnosis:(long long)arg1; +- (BOOL)displayIndeterminateProgress; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ButtonIconTextCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ButtonIconTextCell.h new file mode 100644 index 00000000..e0ab1bd4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ButtonIconTextCell.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@class NSImage; + +@interface ButtonIconTextCell : NSButtonCell +{ + BOOL _cellEnabled; + NSImage *_icon; +} + +@property(nonatomic) BOOL cellEnabled; // @synthesize cellEnabled=_cellEnabled; +@property(retain, nonatomic) NSImage *icon; // @synthesize icon=_icon; +- (void).cxx_destruct; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (struct CGRect)drawTitle:(id)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (struct CGSize)iconSizeForFrame:(struct CGRect)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CALayer-MailCALayerAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CALayer-MailCALayerAdditions.h new file mode 100644 index 00000000..8da254d1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CALayer-MailCALayerAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "CALayer.h" + +@interface CALayer (MailCALayerAdditions) +- (id)snapshotFromPresentationLayer; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CDStructures.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CDStructures.h new file mode 100644 index 00000000..b4bac16e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CDStructures.h @@ -0,0 +1,54 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#pragma mark Named Structures + +struct CGAffineTransform { + double _field1; + double _field2; + double _field3; + double _field4; + double _field5; + double _field6; +}; + +struct CGPoint { + double x; + double y; +}; + +struct CGRect { + struct CGPoint origin; + struct CGSize size; +}; + +struct CGSize { + double width; + double height; +}; + +struct NSEdgeInsets { + double top; + double left; + double bottom; + double right; +}; + +struct QuotaSimpleSortDescriptor { + void *comparator; + char ascending; +}; + +struct _NSRange { + unsigned long long location; + unsigned long long length; +}; + +struct menuItemInfo { + long long _field1; + long long _field2; +}; + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CalendarBannerIconCreator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CalendarBannerIconCreator.h new file mode 100644 index 00000000..00dacdd2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CalendarBannerIconCreator.h @@ -0,0 +1,19 @@ +/* + * 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" + +@interface CalendarBannerIconCreator : NSObject +{ +} + ++ (id)newCalendarBannerIconForDate:(id)arg1; ++ (void)drawBackgroundTileInRect:(struct CGRect)arg1 pathToBackground:(id)arg2 date:(id)arg3; ++ (id)monthStringAttributes; ++ (id)dateStringAttributes; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CalendarBannerViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CalendarBannerViewController.h new file mode 100644 index 00000000..eaa70a85 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CalendarBannerViewController.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "BannerViewController.h" + +@class NSButton, NSTextField; + +@interface CalendarBannerViewController : BannerViewController +{ + NSTextField *_eventTitle; + NSTextField *_eventTime; + NSButton *_openCalendarButton; +} + ++ (id)keyPathsForValuesAffectingShouldHideMeetingCancellationOKButton; ++ (id)keyPathsForValuesAffectingShouldHideMeetingRequestButtons; +@property(nonatomic) __weak NSButton *openCalendarButton; // @synthesize openCalendarButton=_openCalendarButton; +@property(nonatomic) __weak NSTextField *eventTime; // @synthesize eventTime=_eventTime; +@property(nonatomic) __weak NSTextField *eventTitle; // @synthesize eventTitle=_eventTitle; +- (void).cxx_destruct; +- (id)_dateStringForEvent:(id)arg1; +- (id)_titleForEvent:(id)arg1; +- (id)_eventForCurrentMessage; +- (void)openInCalendar:(id)arg1; +- (void)sendMeetingResponse:(id)arg1; +@property(readonly, nonatomic) BOOL shouldHideMeetingCancellationOKButton; +@property(readonly, nonatomic) BOOL shouldHideMeetingRequestButtons; +- (void)updateBannerContents; +- (void)updateWantsDisplay; +- (double)bannerHeight; +- (id)backgroundColor; +- (id)nibName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CertificateBannerViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CertificateBannerViewController.h new file mode 100644 index 00000000..d7a3668f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CertificateBannerViewController.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "BannerViewController.h" + +@class BannerImageView, NSButton, NSTextField; + +@interface CertificateBannerViewController : BannerViewController +{ + BannerImageView *_certificateImage; + NSTextField *_messageField; + NSButton *_helpButton; +} + +@property(nonatomic) __weak NSButton *helpButton; // @synthesize helpButton=_helpButton; +@property(nonatomic) __weak NSTextField *messageField; // @synthesize messageField=_messageField; +@property(nonatomic) __weak BannerImageView *certificateImage; // @synthesize certificateImage=_certificateImage; +- (void).cxx_destruct; +- (void)showDetails:(id)arg1; +- (void)updateBannerContents; +- (void)updateWantsDisplay; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setRepresentedObject:(id)arg1; +- (void)dealloc; +- (id)nibName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ChildBannerViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ChildBannerViewController.h new file mode 100644 index 00000000..0ad77983 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ChildBannerViewController.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "BannerViewController.h" + +@class BannerImageView, NSButton, NSLayoutConstraint, NSTextField; + +@interface ChildBannerViewController : BannerViewController +{ + long long _parentalControlMessageState; + BannerImageView *_icon; + NSTextField *_messageField; + NSButton *_helpButton; + NSButton *_sendButton; + NSLayoutConstraint *_helpButtonTrailingSpace; +} + +@property(nonatomic) __weak NSLayoutConstraint *helpButtonTrailingSpace; // @synthesize helpButtonTrailingSpace=_helpButtonTrailingSpace; +@property(nonatomic) __weak NSButton *sendButton; // @synthesize sendButton=_sendButton; +@property(nonatomic) __weak NSButton *helpButton; // @synthesize helpButton=_helpButton; +@property(nonatomic) __weak NSTextField *messageField; // @synthesize messageField=_messageField; +@property(nonatomic) __weak BannerImageView *icon; // @synthesize icon=_icon; +@property(nonatomic) long long parentalControlMessageState; // @synthesize parentalControlMessageState=_parentalControlMessageState; +- (void).cxx_destruct; +- (void)sendMessage:(id)arg1; +- (void)updateBannerContents; +- (void)updateWantsDisplay; +- (id)nibName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ChildDateColorTransformer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ChildDateColorTransformer.h new file mode 100644 index 00000000..8aa06756 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ChildDateColorTransformer.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSValueTransformer.h" + +@interface ChildDateColorTransformer : NSValueTransformer +{ +} + ++ (BOOL)allowsReverseTransformation; ++ (Class)transformedValueClass; +- (id)transformedValue:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ClippedItemsIndicator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ClippedItemsIndicator.h new file mode 100644 index 00000000..151b721a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ClippedItemsIndicator.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +#import "NSMenuDelegate.h" + +@class NSMenu, NSString; + +@interface ClippedItemsIndicator : NSButton +{ + id _delegate; + NSMenu *_menu; +} + +@property(retain, nonatomic) NSMenu *menu; // @synthesize menu=_menu; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (void)menuDidClose:(id)arg1; +- (void)_popUpMenu; +- (void)mouseDown:(id)arg1; +- (id)init; +- (id)initWithFrame:(struct CGRect)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ClippedItemsIndicatorDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ClippedItemsIndicatorDelegate-Protocol.h new file mode 100644 index 00000000..c7b3c346 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ClippedItemsIndicatorDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol ClippedItemsIndicatorDelegate +- (id)menuItemsForClippedItemsIndicator:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ColorBackgroundView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ColorBackgroundView.h new file mode 100644 index 00000000..80b4b432 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ColorBackgroundView.h @@ -0,0 +1,48 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSArray, NSColor, NSGradient, NSImage; + +@interface ColorBackgroundView : NSView +{ + NSColor *_color; + NSImage *_image; + NSArray *_colors; + BOOL _shouldTileImage; + NSGradient *_gradient; + BOOL _isFlipped; + BOOL _transparent; + double _gradientAngle; + long long _tag; + double _rowHeight; + double _rowOffset; + NSColor *_imageColor; +} + +@property(nonatomic) BOOL transparent; // @synthesize transparent=_transparent; +@property(retain, nonatomic) NSColor *backgroundImageColor; // @synthesize backgroundImageColor=_imageColor; +@property(nonatomic) double rowOffset; // @synthesize rowOffset=_rowOffset; +@property(nonatomic) double rowHeight; // @synthesize rowHeight=_rowHeight; +@property long long tag; // @synthesize tag=_tag; +@property(nonatomic) double gradientAngle; // @synthesize gradientAngle=_gradientAngle; +- (void).cxx_destruct; +- (id)colorForRow:(unsigned long long)arg1; +- (void)drawRect:(struct CGRect)arg1; +@property(nonatomic) BOOL shouldTileImage; +@property(retain, nonatomic) NSImage *backgroundImage; +- (void)updateBackgroundImageColor; +@property(retain, nonatomic) NSGradient *gradient; +@property(retain, nonatomic) NSArray *backgroundColors; +@property(retain, nonatomic) NSColor *backgroundColor; +- (id)hitTest:(struct CGPoint)arg1; +- (void)setFlipped:(BOOL)arg1; +- (BOOL)isFlipped; +- (BOOL)isOpaque; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeBackEnd.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeBackEnd.h new file mode 100644 index 00000000..2ce0d758 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeBackEnd.h @@ -0,0 +1,325 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ImageResizerDelegate-Protocol.h" +#import "MCActivityTarget-Protocol.h" + +@class DOMNode, EditableWebMessageDocument, MCInvocationQueue, MCParsedMessage, MFMailAccount, MFMailbox, NSArray, NSInputStream, NSMutableArray, NSMutableData, NSMutableDictionary, NSMutableSet, NSNumber, NSOutputStream, NSPort, NSString, NSURL, NSUUID, NSUndoManager, NSUserActivity, StationeryController; + +@interface ComposeBackEnd : NSObject +{ + id _delegate; + StationeryController *_stationeryController; + NSArray *_originalMessages; + NSMutableDictionary *_originalMessageHeaders; + NSMutableDictionary *_originalMessageBodies; + NSMutableDictionary *_cleanHeaders; + NSMutableDictionary *_extraRecipients; + NSMutableDictionary *_directoriesByAttachment; + NSMutableSet *_knownMessageIds; + unsigned long long _type; + BOOL _hasChanges; + BOOL _shouldDownloadRemoteAttachments; + BOOL _overrideRemoteAttachmentsPreference; + NSMutableDictionary *_contentsByMessage; + NSMutableDictionary *_attachmentMimeBodiesByURL; + NSMutableArray *_resizers; + NSMutableArray *_composeDataToStream; + BOOL _includeHeaders; + BOOL _signIfPossible; + BOOL _encryptIfPossible; + BOOL _isUndeliverable; + BOOL _isDeliveringMessage; + BOOL _willCloseEditor; + BOOL _saveThreadCancelFlag; + BOOL _editorHasInitialized; + BOOL _hadChangesBeforeSave; + BOOL _contentsWasEditedByUser; + BOOL _isSettingSenderFromGetter; + BOOL _delegateRespondsToDidChange; + BOOL _delegateRespondsToSenderDidChange; + BOOL _delegateRespondsToDidAppendMessage; + BOOL _delegateRespondsToDidSaveMessage; + BOOL _delegateRespondsToDidBeginLoad; + BOOL _delegateRespondsToDidEndLoad; + BOOL _delegateRespondsToWillCreateMessageWithHeaders; + BOOL _delegateRespondsToShouldSaveMessage; + BOOL _delegateRespondsToShouldDeliverMessage; + BOOL _delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients; + BOOL _delegateRespondsToDidCancelMessageDeliveryForEncryptionError; + BOOL _delegateRespondsToDidCancelMessageDeliveryForError; + BOOL _delegateRespondsToDidCancelMessageDeliveryForAttachmentError; + BOOL _knowsCanSign; + BOOL _canSign; + BOOL _isEditing; + BOOL _isSendFormatInitialized; + BOOL _isAppleScriptMessage; + BOOL _sendAttachmentsViaMailDrop; + BOOL _attachmentUploadFailed; + NSString *_contentForContactsUpdate; + NSNumber *_uniqueID; + NSURL *_vcardFileForContactsUpdate; + NSString *_saveThreadMessageId; + MFMailbox *_saveThreadMailbox; + NSURL *_originalMessageBaseURL; + MCParsedMessage *_originalMessageParsedMessage; + EditableWebMessageDocument *_document; + NSUUID *_documentID; + NSUndoManager *_undoManager; + long long _composeMode; + MCParsedMessage *_initialParsedMessage; + NSArray *_generatedParsedMessages; + DOMNode *_stationerySignatureNode; + NSPort *_initializationPort; + MCInvocationQueue *_saveQueue; + MCParsedMessage *_restoredParsedMessage; + long long _windowsFriendliness; + unsigned long long _encodingHint; + NSUserActivity *_activity; + unsigned long long _composeDataOffset; + unsigned long long _imagesToResize; + NSPort *_resizePort; + unsigned long long _imageArchiveSize; + NSOutputStream *_outputStream; + NSInputStream *_inputStream; + unsigned long long _replyBytesRead; + NSMutableData *_replyData; + NSUUID *_placeholderMessageID; +} + ++ (id)keyPathsForValuesAffectingAccount; ++ (id)supportedMailboxTypes; ++ (void)initialize; ++ (id)composeBackEndsByUniqueID; ++ (id)_messageEditorForComposeBackEnd:(id)arg1 window:(id *)arg2; ++ (void)unregisterComposeBackEnd:(id)arg1; ++ (void)registerComposeBackEnd:(id)arg1; ++ (id)composeBackEndForUniqueID:(id)arg1; +@property(retain, nonatomic) NSUUID *placeholderMessageID; // @synthesize placeholderMessageID=_placeholderMessageID; +@property(retain, nonatomic) NSMutableData *replyData; // @synthesize replyData=_replyData; +@property(nonatomic) unsigned long long replyBytesRead; // @synthesize replyBytesRead=_replyBytesRead; +@property __weak NSInputStream *inputStream; // @synthesize inputStream=_inputStream; +@property __weak NSOutputStream *outputStream; // @synthesize outputStream=_outputStream; +@property(nonatomic) BOOL attachmentUploadFailed; // @synthesize attachmentUploadFailed=_attachmentUploadFailed; +@property(nonatomic) unsigned long long imageArchiveSize; // @synthesize imageArchiveSize=_imageArchiveSize; +@property(readonly, nonatomic) NSPort *resizePort; // @synthesize resizePort=_resizePort; +@property unsigned long long imagesToResize; // @synthesize imagesToResize=_imagesToResize; +@property(nonatomic) unsigned long long composeDataOffset; // @synthesize composeDataOffset=_composeDataOffset; +@property(retain, nonatomic) NSUserActivity *activity; // @synthesize activity=_activity; +@property(nonatomic) BOOL sendAttachmentsViaMailDrop; // @synthesize sendAttachmentsViaMailDrop=_sendAttachmentsViaMailDrop; +@property(nonatomic) unsigned long long encodingHint; // @synthesize encodingHint=_encodingHint; +@property(nonatomic) BOOL isAppleScriptMessage; // @synthesize isAppleScriptMessage=_isAppleScriptMessage; +@property(nonatomic) BOOL isSendFormatInitialized; // @synthesize isSendFormatInitialized=_isSendFormatInitialized; +@property(nonatomic) BOOL isEditing; // @synthesize isEditing=_isEditing; +@property(nonatomic) BOOL canSign; // @synthesize canSign=_canSign; +@property(nonatomic) BOOL knowsCanSign; // @synthesize knowsCanSign=_knowsCanSign; +@property(nonatomic) BOOL delegateRespondsToDidCancelMessageDeliveryForAttachmentError; // @synthesize delegateRespondsToDidCancelMessageDeliveryForAttachmentError=_delegateRespondsToDidCancelMessageDeliveryForAttachmentError; +@property(nonatomic) BOOL delegateRespondsToDidCancelMessageDeliveryForError; // @synthesize delegateRespondsToDidCancelMessageDeliveryForError=_delegateRespondsToDidCancelMessageDeliveryForError; +@property(nonatomic) BOOL delegateRespondsToDidCancelMessageDeliveryForEncryptionError; // @synthesize delegateRespondsToDidCancelMessageDeliveryForEncryptionError=_delegateRespondsToDidCancelMessageDeliveryForEncryptionError; +@property(nonatomic) BOOL delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients; // @synthesize delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients=_delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients; +@property(nonatomic) BOOL delegateRespondsToShouldDeliverMessage; // @synthesize delegateRespondsToShouldDeliverMessage=_delegateRespondsToShouldDeliverMessage; +@property(nonatomic) BOOL delegateRespondsToShouldSaveMessage; // @synthesize delegateRespondsToShouldSaveMessage=_delegateRespondsToShouldSaveMessage; +@property(nonatomic) BOOL delegateRespondsToWillCreateMessageWithHeaders; // @synthesize delegateRespondsToWillCreateMessageWithHeaders=_delegateRespondsToWillCreateMessageWithHeaders; +@property(nonatomic) BOOL delegateRespondsToDidEndLoad; // @synthesize delegateRespondsToDidEndLoad=_delegateRespondsToDidEndLoad; +@property(nonatomic) BOOL delegateRespondsToDidBeginLoad; // @synthesize delegateRespondsToDidBeginLoad=_delegateRespondsToDidBeginLoad; +@property(nonatomic) BOOL delegateRespondsToDidSaveMessage; // @synthesize delegateRespondsToDidSaveMessage=_delegateRespondsToDidSaveMessage; +@property(nonatomic) BOOL delegateRespondsToDidAppendMessage; // @synthesize delegateRespondsToDidAppendMessage=_delegateRespondsToDidAppendMessage; +@property(nonatomic) BOOL delegateRespondsToSenderDidChange; // @synthesize delegateRespondsToSenderDidChange=_delegateRespondsToSenderDidChange; +@property(nonatomic) BOOL delegateRespondsToDidChange; // @synthesize delegateRespondsToDidChange=_delegateRespondsToDidChange; +@property(nonatomic) long long windowsFriendliness; // @synthesize windowsFriendliness=_windowsFriendliness; +@property(nonatomic) BOOL isSettingSenderFromGetter; // @synthesize isSettingSenderFromGetter=_isSettingSenderFromGetter; +@property(retain, nonatomic) MCParsedMessage *restoredParsedMessage; // @synthesize restoredParsedMessage=_restoredParsedMessage; +@property(nonatomic) BOOL contentsWasEditedByUser; // @synthesize contentsWasEditedByUser=_contentsWasEditedByUser; +@property(nonatomic) BOOL hadChangesBeforeSave; // @synthesize hadChangesBeforeSave=_hadChangesBeforeSave; +@property(readonly, nonatomic) MCInvocationQueue *saveQueue; // @synthesize saveQueue=_saveQueue; +@property(nonatomic) BOOL editorHasInitialized; // @synthesize editorHasInitialized=_editorHasInitialized; +@property(readonly, nonatomic) NSPort *initializationPort; // @synthesize initializationPort=_initializationPort; +@property(retain, nonatomic) DOMNode *stationerySignatureNode; // @synthesize stationerySignatureNode=_stationerySignatureNode; +@property(copy, nonatomic) NSArray *generatedParsedMessages; // @synthesize generatedParsedMessages=_generatedParsedMessages; +@property(retain, nonatomic) MCParsedMessage *initialParsedMessage; // @synthesize initialParsedMessage=_initialParsedMessage; +@property(nonatomic) long long composeMode; // @synthesize composeMode=_composeMode; +@property(retain, nonatomic) NSUndoManager *undoManager; // @synthesize undoManager=_undoManager; +@property(retain, nonatomic) NSUUID *documentID; // @synthesize documentID=_documentID; +@property(retain, nonatomic) EditableWebMessageDocument *document; // @synthesize document=_document; +@property(retain, nonatomic) MCParsedMessage *originalMessageParsedMessage; // @synthesize originalMessageParsedMessage=_originalMessageParsedMessage; +@property(retain, nonatomic) NSURL *originalMessageBaseURL; // @synthesize originalMessageBaseURL=_originalMessageBaseURL; +@property(retain) MFMailbox *saveThreadMailbox; // @synthesize saveThreadMailbox=_saveThreadMailbox; +@property(copy) NSString *saveThreadMessageId; // @synthesize saveThreadMessageId=_saveThreadMessageId; +@property BOOL saveThreadCancelFlag; // @synthesize saveThreadCancelFlag=_saveThreadCancelFlag; +@property(nonatomic) BOOL willCloseEditor; // @synthesize willCloseEditor=_willCloseEditor; +@property(nonatomic) BOOL isDeliveringMessage; // @synthesize isDeliveringMessage=_isDeliveringMessage; +@property(nonatomic) BOOL isUndeliverable; // @synthesize isUndeliverable=_isUndeliverable; +@property(nonatomic) BOOL encryptIfPossible; // @synthesize encryptIfPossible=_encryptIfPossible; +@property(nonatomic) BOOL signIfPossible; // @synthesize signIfPossible=_signIfPossible; +@property(nonatomic) BOOL includeHeaders; // @synthesize includeHeaders=_includeHeaders; +@property(retain, nonatomic) NSURL *vcardFileForContactsUpdate; // @synthesize vcardFileForContactsUpdate=_vcardFileForContactsUpdate; +@property(retain, nonatomic) NSNumber *uniqueID; // @synthesize uniqueID=_uniqueID; +@property(copy, nonatomic) NSString *contentForContactsUpdate; // @synthesize contentForContactsUpdate=_contentForContactsUpdate; +//- (void).cxx_destruct; +- (void)stream:(id)arg1 handleEvent:(unsigned long long)arg2; +- (void)userActivity:(id)arg1 didReceiveInputStream:(id)arg2 outputStream:(id)arg3; +- (void)_markForOverwrite:(id)arg1; +- (void)_saveThreadSaveContents; +- (void)_saveThreadRemoveLastSave; +- (void)_saveThreadSetMessageId:(id)arg1 mailbox:(id)arg2 overwrite:(id)arg3; +- (void)_saveThreadUpdateAccount:(id)arg1 mailbox:(id)arg2; +- (BOOL)_saveThreadShouldCancel; +- (BOOL)isContentSignificant; +@property(readonly, nonatomic) BOOL isSavingMessage; +- (unsigned int)_convertSaveOrSendResultFromResultCodeT:(long long)arg1; +- (id)mailboxCreateIfNeeded:(BOOL)arg1; +- (id)_formattedAddressMatchingRawAddress:(id)arg1 inAccount:(id)arg2; +- (id)replyAddressForMessage:(id)arg1; +- (void)_saveRecipients; +- (void)_setupDefaultRecipientsFirstTime:(BOOL)arg1; +- (void)_ccOrBccMyselfGivenOriginalMessage:(id)arg1 uniquedRecipientsTable:(id)arg2; +- (BOOL)containsAttachmentsThatCouldConfuseWindowsClients; +- (BOOL)containsAttachments; +- (BOOL)attachmentCanBeSentInline:(id)arg1; +- (id)copyOfContentsForDraft:(BOOL)arg1 shouldBePlainText:(BOOL)arg2 isOkayToForceRichText:(BOOL)arg3 isMailDropPlaceholderMessage:(BOOL)arg4; +- (id)htmlDocumentForSave; +- (void)getContentsForMessage:(id)arg1 body:(id)arg2; +- (void)_recursivelyURLifyNode:(id)arg1; +- (void)addBaseURLTagToNode:(id)arg1; +- (id)_newPlainTextRepresentationIncludeAttachments:(BOOL)arg1; +- (id)htmlStringFromRange:(id)arg1 htmlDocument:(id)arg2 removeCustomAttributes:(BOOL)arg3 convertObjectsToImages:(BOOL)arg4 convertEditableElements:(BOOL)arg5; +- (id)newOutgoingMessageUsingWriter:(id)arg1 contents:(id)arg2 headers:(id)arg3 isDraft:(BOOL)arg4 shouldBePlainText:(BOOL)arg5; +- (id)userDefaultMessageFont; +- (BOOL)containsRichText; +- (BOOL)hasContents; +- (void)generateMessageParsedMessages; +- (void)fetchAndCacheMessages; +- (void)_notifyDelegateMonitor:(id)arg1 alreadyDone:(char *)arg2; +- (void)finishPreparingContentWithEditorSettings:(id)arg1; +- (void)updateSaveDestinationAccount:(id)arg1 mailbox:(id)arg2; +- (void)updateDocumentReference:(id)arg1; +- (void)_configureLastDraftInformationFromHeaders:(id)arg1 overwrite:(BOOL)arg2; +- (BOOL)_isValidSaveDestination:(id)arg1; +- (BOOL)canEncryptForRecipients:(id)arg1 sender:(id)arg2; +- (BOOL)canSignFromAddress:(id)arg1; +- (id)recipientsThatHaveNoKeyForEncryption; +- (id)allRecipients; +- (BOOL)isEditingMessage:(id)arg1; +- (void)removeLastDraft; +- (id)defaultMessageStore; +- (BOOL)saveMessage; +- (id)saveTaskName; +- (void)_backgroundSaveDidChangeMessageId:(id)arg1; +- (void)backgroundSaveEnded:(id)arg1; +- (void)_backgroundAppendEnded:(id)arg1; +- (void)_synchronouslyAppendMessageToOutboxWithContents:(id)arg1; +- (BOOL)deliverMessage; +- (void)imageResizer:(id)arg1 didFinishResizingWithResultCode:(long long)arg2; +- (void)_beginResizeOfImageAttachment:(id)arg1; +- (id)_createImageAttachmentRecordWithZoneID:(id)arg1 images:(id)arg2 error:(id *)arg3; +- (id)_createAttachmentRecordWithZoneID:(id)arg1 data:(id)arg2 filename:(id)arg3 mimeType:(id)arg4 error:(id *)arg5; +- (void)_recordZoneIDInDatabase:(id)arg1 completionHandler:(id)arg2; +- (void)_revertAttachments:(id)arg1 andExecuteBlock:(id)arg2 withError:(void)arg3; +- (void)_uploadAttachments:(id)arg1 completionBlock:(id)arg2; +- (BOOL)isAddressHeaderKey:(id)arg1; +- (void)removeAddressForHeader:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertAddress:(id)arg1 forHeader:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)setAddressList:(id)arg1 forHeader:(id)arg2; +- (id)addressListForHeader:(id)arg1; +- (void)_setStructuredList:(id)arg1 forHeader:(id)arg2; +- (id)_structuredListForHeader:(id)arg1; +- (void)addHeaders:(id)arg1; +- (long long)displayableMessagePriority; +- (void)setMessagePriority:(long long)arg1; +- (id)htmlStringForSignature:(id)arg1; +- (void)getSignatureElement:(id *)arg1 parent:(id *)arg2 nextSibling:(id *)arg3; +- (void)setSignature:(id)arg1; +- (id)signature; +- (id)signatureId; +- (BOOL)okToLetUserAddSignature; +- (BOOL)okToAddSignatureAutomatically; +- (id)messageID; +@property(retain, nonatomic) NSString *subject; +- (void)_setCleanHeaders:(id)arg1; +- (id)cleanHeaders; +@property(retain, nonatomic) NSString *sender; +- (void)setDeliveryAccount:(id)arg1; +- (id)deliveryAccount; +@property(retain, nonatomic) MFMailAccount *account; +- (id)message; +- (id)plainTextMessage; +- (id)_makeMessageWithContents:(id)arg1 isDraft:(BOOL)arg2 shouldSign:(BOOL)arg3 shouldEncrypt:(BOOL)arg4 shouldSkipSignature:(BOOL)arg5 shouldBePlainText:(BOOL)arg6; +- (unsigned long long)_encodingHint; +- (id)mimeBodyForAttachmentWithURL:(id)arg1; +- (id)_parsedMessageForMessage:(id)arg1; +- (void)_continueToSetupContentsForView:(id)arg1 withParsedMessages:(id)arg2; +@property(readonly, nonatomic) BOOL defaultFormatIsRich; +- (void)setupContentsForView:(id)arg1; +- (void)setTypeAndConfigureLoadingOfRemoteAttachments:(unsigned long long)arg1; +- (void)_configureLoadingOfRemoteAttachments; +- (void)_generateParsedMessageFromOriginalMessages; +- (BOOL)preserveAddedArchiveBody; +- (id)directoryForAttachment:(id)arg1; +- (id)attachments; +- (void)setOriginalMessages:(id)arg1; +- (id)_knownMessageIds; +- (id)originalMessageBody; +- (id)originalMessageHeaders; +- (void)setOriginalMessage:(id)arg1; +- (id)originalMessage; +- (void)setSendWindowsFriendlyAttachments:(BOOL)arg1; +- (BOOL)sendWindowsFriendlyAttachments; +- (void)setShouldDownloadRemoteAttachments:(BOOL)arg1; +- (BOOL)isRedirecting; +- (void)setType:(unsigned long long)arg1; +- (unsigned long long)type; +- (void)setHasChanges:(BOOL)arg1; +- (BOOL)hasChanges; +- (id)stationeryController; +- (BOOL)hasStationery; +@property(nonatomic) __weak id delegate; +@property(readonly, copy) NSString *description; +- (void)_editorHasInitialized:(id)arg1; +- (void)setStateFromBackEnd:(id)arg1; +- (void)_createUniqueID; +- (id)init; +- (id)initCreatingDocumentEditor:(BOOL)arg1; +- (void)dealloc; +- (void)setVcardFile:(id)arg1; +- (void)setHtmlContent:(id)arg1; +- (id)objectSpecifier; +- (id)handleCloseScriptCommand:(id)arg1; +- (id)handleSendMessageCommand:(id)arg1; +- (id)handleSaveMessageCommand:(id)arg1; +- (void)replaceFormattedAddress:(id)arg1 withAddress:(id)arg2 forKey:(id)arg3; +- (void)removeFromBccRecipientsAtIndex:(unsigned long long)arg1; +- (void)removeFromCcRecipientsAtIndex:(unsigned long long)arg1; +- (void)removeFromToRecipientsAtIndex:(unsigned long long)arg1; +- (void)insertInBccRecipients:(id)arg1; +- (void)insertInBccRecipients:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInCcRecipients:(id)arg1; +- (void)insertInCcRecipients:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInToRecipients:(id)arg1; +- (void)insertInToRecipients:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertRecipient:(id)arg1 atIndex:(unsigned long long)arg2 inHeaderWithKey:(id)arg3; +- (id)bccRecipients; +- (id)ccRecipients; +- (id)toRecipients; +- (id)recipients; +- (void)_addRecipientsForKey:(id)arg1 toArray:(id)arg2; +- (void)setMessageSignature:(id)arg1; +- (id)messageSignature; +- (void)setContent:(id)arg1; +- (id)content; +- (void)setAppleScriptSubject:(id)arg1; +- (id)appleScriptSubject; +- (void)setAppleScriptSender:(id)arg1; +- (id)appleScriptSender; +- (void)setIsVisible:(BOOL)arg1; +- (BOOL)isVisible; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeBackEnd_Scripting.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeBackEnd_Scripting.h new file mode 100644 index 00000000..816dd129 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeBackEnd_Scripting.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ComposeBackEnd.h" + +@class NSTextStorage; + +@interface ComposeBackEnd_Scripting : ComposeBackEnd +{ + NSTextStorage *_textStorage; +} + +@property(retain, nonatomic) NSTextStorage *textStorage; // @synthesize textStorage=_textStorage; +- (void).cxx_destruct; +- (void)_coalescedConvertTextStorage; +- (void)_convertTextStorage; +- (void)_pushTextStorage; +- (void)setContent:(id)arg1; +- (id)content; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeDraft.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeDraft.h new file mode 100644 index 00000000..96b06618 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeDraft.h @@ -0,0 +1,89 @@ +/* + * 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" + +@class MFDeliveryAccount, MFMailAccount, MFMailbox, MUIWebDocument, NSArray, NSMutableArray, NSPointerArray, NSString, NSUndoManager; + +@interface ComposeDraft : NSObject +{ + BOOL _hasUndoManager; + NSUndoManager *_undoManager; + id _weakProxy; + NSMutableArray *_windowControllers; + NSPointerArray *_editors; + NSString *_fromAddress; + MFMailAccount *_fromAccount; + long long _deliveryPriority; + MFDeliveryAccount *_deliveryAccount; + NSArray *_toAddresses; + NSArray *_ccAddresses; + NSArray *_bccAddresses; + NSArray *_replyToAddresses; + NSString *_subject; + MUIWebDocument *_webDocument; + BOOL _isEdited; + BOOL _hasUnsavedChanges; + NSString *_documentID; + MFMailbox *_mailbox; + long long _changeCount; + long long _generationCount; + id _commitEditingCompletionHandler; + NSString *_displayName; +} + ++ (id)defaultDraftName; +@property(copy, nonatomic) NSString *displayName; // @synthesize displayName=_displayName; +@property(copy, nonatomic) id commitEditingCompletionHandler; // @synthesize commitEditingCompletionHandler=_commitEditingCompletionHandler; +@property(nonatomic) long long generationCount; // @synthesize generationCount=_generationCount; +@property(nonatomic) long long changeCount; // @synthesize changeCount=_changeCount; +@property(nonatomic) BOOL hasUnsavedChanges; // @synthesize hasUnsavedChanges=_hasUnsavedChanges; +@property(nonatomic) BOOL isEdited; // @synthesize isEdited=_isEdited; +@property(retain, nonatomic) MFMailbox *mailbox; // @synthesize mailbox=_mailbox; +@property(readonly, copy, nonatomic) NSString *documentID; // @synthesize documentID=_documentID; +- (void).cxx_destruct; +- (void)objectDidEndEditing:(id)arg1; +- (void)objectDidBeginEditing:(id)arg1; +- (void)_commitEditingWithCompletionHandler:(id)arg1; +- (void)_discardEditing; +- (void)_editor:(id)arg1 didCommit:(BOOL)arg2 contextInfo:(void *)arg3; +- (id)_currentEditor; +- (void)close:(id)arg1; +- (void)send:(id)arg1; +- (void)saveMessageToDrafts:(id)arg1; +- (void)showWindows:(id)arg1; +- (void)removeWindowController:(id)arg1; +- (void)addWindowController:(id)arg1; +- (void)makeWindowControllers; +@property(readonly, copy, nonatomic) NSArray *windowControllers; +- (id)_weakProxy; +@property(nonatomic) BOOL hasUndoManager; +@property(retain, nonatomic) NSUndoManager *undoManager; +- (void)updateChangeCountWithToken:(id)arg1 forSaveOperation:(long long)arg2; +- (id)changeCountTokenForSaveOperation:(long long)arg1; +- (void)updateChangeCount:(long long)arg1; +- (void)_changeWasRedone:(id)arg1; +- (void)_changeWasUndone:(id)arg1; +- (void)_changeWasDone:(id)arg1; +- (void)saveToMailbox:(id)arg1 forSaveOperation:(long long)arg2 completionHandler:(id)arg3; +- (void)writeToMailbox:(id)arg1 withOptions:(unsigned long long)arg2 completionHandler:(id)arg3; +- (void)messageWithOptions:(unsigned long long)arg1 completionHandler:(id)arg2; +- (void)readFromMailbox:(id)arg1 completionHandler:(id)arg2; +- (void)readFromMessage:(id)arg1 completionHandler:(id)arg2; +@property(retain, nonatomic) MUIWebDocument *webDocument; +@property(copy, nonatomic) NSString *subject; +@property(copy, nonatomic) NSArray *replyToAddresses; +@property(copy, nonatomic) NSArray *bccAddresses; +@property(copy, nonatomic) NSArray *ccAddresses; +@property(copy, nonatomic) NSArray *toAddresses; +@property(copy, nonatomic) NSString *fromAddress; +@property(retain, nonatomic) MFDeliveryAccount *deliveryAccount; +@property(nonatomic) long long deliveryPriority; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeDraftController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeDraftController.h new file mode 100644 index 00000000..12bfe3a6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeDraftController.h @@ -0,0 +1,31 @@ +/* + * 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" + +@class ComposeDraft, NSArray, NSMutableOrderedSet; + +@interface ComposeDraftController : NSObject +{ + NSMutableOrderedSet *_drafts; +} + ++ (id)sharedDraftController; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void).cxx_destruct; +- (void)openDraftWithDocumentID:(id)arg1 display:(BOOL)arg2 completionHandler:(id)arg3; +- (void)openUntitledDraftAndDisplay:(BOOL)arg1 completionHandler:(id)arg2; +- (void)removeDraft:(id)arg1; +- (void)addDraft:(id)arg1; +- (id)draftForWindow:(id)arg1; +- (id)draftForDocumentID:(id)arg1; +@property(readonly, nonatomic) ComposeDraft *currentDraft; +@property(readonly, copy, nonatomic) NSArray *drafts; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeHeaderRowView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeHeaderRowView.h new file mode 100644 index 00000000..4ba5c700 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeHeaderRowView.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface ComposeHeaderRowView : NSView +{ + BOOL _drawsFullWidthSeparator; +} + +@property(nonatomic) BOOL drawsFullWidthSeparator; // @synthesize drawsFullWidthSeparator=_drawsFullWidthSeparator; +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposePopUpButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposePopUpButton.h new file mode 100644 index 00000000..a946c268 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposePopUpButton.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@class NSLayoutConstraint; + +@interface ComposePopUpButton : NSPopUpButton +{ + NSLayoutConstraint *_minimumWidthConstraint; + NSLayoutConstraint *_preferredWidthConstraint; +} + +@property(retain, nonatomic) NSLayoutConstraint *preferredWidthConstraint; // @synthesize preferredWidthConstraint=_preferredWidthConstraint; +@property(retain, nonatomic) NSLayoutConstraint *minimumWidthConstraint; // @synthesize minimumWidthConstraint=_minimumWidthConstraint; +- (void).cxx_destruct; +- (void)updateConstraints; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeSpellChecker.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeSpellChecker.h new file mode 100644 index 00000000..1b446bac --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeSpellChecker.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSpellChecker.h" + +@interface ComposeSpellChecker : NSSpellChecker +{ +} + +- (void)closeSpellDocumentWithTag:(long long)arg1; +- (id)spellingPanel; +- (long long)requestCheckingOfString:(id)arg1 range:(struct _NSRange)arg2 types:(unsigned long long)arg3 options:(id)arg4 inSpellDocumentWithTag:(long long)arg5 completionHandler:(id)arg6; +- (id)checkString:(id)arg1 range:(struct _NSRange)arg2 types:(unsigned long long)arg3 options:(id)arg4 inSpellDocumentWithTag:(long long)arg5 orthography:(id *)arg6 wordCount:(long long *)arg7; +- (BOOL)_mail_unifiedTextCheckingResultsHaveErrors:(id)arg1; +- (void)_mail_didCheckSpellDocumentWithTag:(long long)arg1 hasErrors:(BOOL)arg2; +- (void)_mail_willCheckSpellDocumentWithTag:(long long)arg1; +- (void)_mail_spellPanelDidClose:(id)arg1; +- (void)_mail_postingTimerFired:(id)arg1; +- (long long)currentSpellDocumentTag; +- (void)setPostCompletedNotification:(BOOL)arg1 forSpellDocumentWithTag:(long long)arg2; +- (void)_mail_removeObjectForSpellDocumentTag:(long long)arg1; +- (id)_mail_objectForSpellDocumentTag:(long long)arg1; +- (void)_mail_setObject:(id)arg1 forSpellDocumentTag:(long long)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeStatusView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeStatusView.h new file mode 100644 index 00000000..44ba27a0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeStatusView.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSStackView.h" + +@class NSColor, NSMenu, NSPopUpButton, NSString, NSTextField; + +@interface ComposeStatusView : NSStackView +{ + NSTextField *_messageSizeLabel; + NSTextField *_messageSizeTextField; + NSTextField *_imageSizePickerLabel; + NSPopUpButton *_imageSizePickerPopup; + NSTextField *_URLPickerLabel; + NSPopUpButton *_URLPickerButton; +} + ++ (id)keyPathsForValuesAffectingSelectedImageSize; ++ (id)keyPathsForValuesAffectingSelectedSharingDisplayType; ++ (id)keyPathsForValuesAffectingMessageSizeColor; ++ (id)keyPathsForValuesAffectingMessageSizeValue; +@property(retain, nonatomic) NSPopUpButton *URLPickerButton; // @synthesize URLPickerButton=_URLPickerButton; +@property(retain, nonatomic) NSTextField *URLPickerLabel; // @synthesize URLPickerLabel=_URLPickerLabel; +@property(retain, nonatomic) NSPopUpButton *imageSizePickerPopup; // @synthesize imageSizePickerPopup=_imageSizePickerPopup; +@property(retain, nonatomic) NSTextField *imageSizePickerLabel; // @synthesize imageSizePickerLabel=_imageSizePickerLabel; +@property(retain, nonatomic) NSTextField *messageSizeTextField; // @synthesize messageSizeTextField=_messageSizeTextField; +@property(retain, nonatomic) NSTextField *messageSizeLabel; // @synthesize messageSizeLabel=_messageSizeLabel; +- (void).cxx_destruct; +@property(readonly, nonatomic) __weak NSMenu *imageSizeMenu; +@property(readonly, nonatomic) __weak NSMenu *URLPickerMenu; +@property(nonatomic) long long selectedImageSize; +@property(nonatomic) long long selectedSharingDisplayType; +@property(retain, nonatomic) NSColor *messageSizeColor; +@property(copy, nonatomic) NSString *messageSizeValue; +@property(nonatomic) BOOL showsMessageSizeLabel; +@property(nonatomic) BOOL showsImageSizePicker; +@property(nonatomic) BOOL showsURLPicker; +@property(readonly, nonatomic) BOOL canHideStatusBar; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeViewController.h new file mode 100644 index 00000000..70dce874 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeViewController.h @@ -0,0 +1,133 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class ComposeDraft, MUIAddressField, MUIWebDocumentView, NSArray, NSButton, NSPopUpButton, NSStackView, NSString, NSTextField; + +@interface ComposeViewController : NSViewController +{ + long long _toState; + long long _ccState; + long long _bccState; + long long _replyToState; + long long _subjectState; + long long _fromState; + long long _deliveryAccountState; + long long _deliveryPriorityState; + BOOL _isPerformingUICustomization; + NSArray *_fromAddresses; + NSArray *_deliveryAccounts; + NSStackView *_headerStackView; + MUIWebDocumentView *_webDocumentView; + NSStackView *_toStackView; + NSStackView *_ccStackView; + NSStackView *_bccStackView; + NSStackView *_replyToStackView; + NSStackView *_subjectStackView; + NSStackView *_fromStackView; + NSStackView *_customizationStackView; + NSButton *_toCheckBox; + NSButton *_ccCheckBox; + NSButton *_bccCheckBox; + NSButton *_replyToCheckBox; + NSButton *_subjectCheckBox; + NSButton *_fromCheckBox; + NSButton *_deliveryAccountCheckBox; + NSButton *_deliveryPriorityCheckBox; + NSTextField *_toLabel; + NSTextField *_ccLabel; + NSTextField *_bccLabel; + NSTextField *_replyToLabel; + NSTextField *_subjectLabel; + NSTextField *_fromLabel; + MUIAddressField *_toAddressField; + MUIAddressField *_ccAddressField; + MUIAddressField *_bccAddressField; + MUIAddressField *_replyToAddressField; + NSTextField *_subjectTextField; + NSPopUpButton *_fromAddressPopUpButton; + NSPopUpButton *_deliveryAccountPopUpButton; + NSPopUpButton *_deliveryPriorityPopUpButton; +} + +@property(nonatomic) BOOL isPerformingUICustomization; // @synthesize isPerformingUICustomization=_isPerformingUICustomization; +@property(retain, nonatomic) NSPopUpButton *deliveryPriorityPopUpButton; // @synthesize deliveryPriorityPopUpButton=_deliveryPriorityPopUpButton; +@property(retain, nonatomic) NSPopUpButton *deliveryAccountPopUpButton; // @synthesize deliveryAccountPopUpButton=_deliveryAccountPopUpButton; +@property(retain, nonatomic) NSPopUpButton *fromAddressPopUpButton; // @synthesize fromAddressPopUpButton=_fromAddressPopUpButton; +@property(retain, nonatomic) NSTextField *subjectTextField; // @synthesize subjectTextField=_subjectTextField; +@property(retain, nonatomic) MUIAddressField *replyToAddressField; // @synthesize replyToAddressField=_replyToAddressField; +@property(retain, nonatomic) MUIAddressField *bccAddressField; // @synthesize bccAddressField=_bccAddressField; +@property(retain, nonatomic) MUIAddressField *ccAddressField; // @synthesize ccAddressField=_ccAddressField; +@property(retain, nonatomic) MUIAddressField *toAddressField; // @synthesize toAddressField=_toAddressField; +@property(retain, nonatomic) NSTextField *fromLabel; // @synthesize fromLabel=_fromLabel; +@property(retain, nonatomic) NSTextField *subjectLabel; // @synthesize subjectLabel=_subjectLabel; +@property(retain, nonatomic) NSTextField *replyToLabel; // @synthesize replyToLabel=_replyToLabel; +@property(retain, nonatomic) NSTextField *bccLabel; // @synthesize bccLabel=_bccLabel; +@property(retain, nonatomic) NSTextField *ccLabel; // @synthesize ccLabel=_ccLabel; +@property(retain, nonatomic) NSTextField *toLabel; // @synthesize toLabel=_toLabel; +@property(retain, nonatomic) NSButton *deliveryPriorityCheckBox; // @synthesize deliveryPriorityCheckBox=_deliveryPriorityCheckBox; +@property(retain, nonatomic) NSButton *deliveryAccountCheckBox; // @synthesize deliveryAccountCheckBox=_deliveryAccountCheckBox; +@property(retain, nonatomic) NSButton *fromCheckBox; // @synthesize fromCheckBox=_fromCheckBox; +@property(retain, nonatomic) NSButton *subjectCheckBox; // @synthesize subjectCheckBox=_subjectCheckBox; +@property(retain, nonatomic) NSButton *replyToCheckBox; // @synthesize replyToCheckBox=_replyToCheckBox; +@property(retain, nonatomic) NSButton *bccCheckBox; // @synthesize bccCheckBox=_bccCheckBox; +@property(retain, nonatomic) NSButton *ccCheckBox; // @synthesize ccCheckBox=_ccCheckBox; +@property(retain, nonatomic) NSButton *toCheckBox; // @synthesize toCheckBox=_toCheckBox; +@property(retain, nonatomic) NSStackView *customizationStackView; // @synthesize customizationStackView=_customizationStackView; +@property(retain, nonatomic) NSStackView *fromStackView; // @synthesize fromStackView=_fromStackView; +@property(retain, nonatomic) NSStackView *subjectStackView; // @synthesize subjectStackView=_subjectStackView; +@property(retain, nonatomic) NSStackView *replyToStackView; // @synthesize replyToStackView=_replyToStackView; +@property(retain, nonatomic) NSStackView *bccStackView; // @synthesize bccStackView=_bccStackView; +@property(retain, nonatomic) NSStackView *ccStackView; // @synthesize ccStackView=_ccStackView; +@property(retain, nonatomic) NSStackView *toStackView; // @synthesize toStackView=_toStackView; +@property(retain, nonatomic) MUIWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(retain, nonatomic) NSStackView *headerStackView; // @synthesize headerStackView=_headerStackView; +@property(copy, nonatomic) NSArray *deliveryAccounts; // @synthesize deliveryAccounts=_deliveryAccounts; +@property(copy, nonatomic) NSArray *fromAddresses; // @synthesize fromAddresses=_fromAddresses; +//- (void).cxx_destruct; +- (void)controlTextDidChange:(id)arg1; +- (void)objectDidEndEditing:(id)arg1; +- (void)objectDidBeginEditing:(id)arg1; +- (void)finishUICustomization:(id)arg1; +- (void)beginUICustomization:(id)arg1; +- (double)_customizationAnimationDuration; +- (void)_configureUIElements; +- (void)_alignUILabels; +- (void)_updateDeliveryAccountsMenu:(id)arg1; +- (void)_synchronizeDeliveryAccount; +- (void)_updateDeliveryAccounts:(id)arg1; +- (void)_updateFromAddressesMenu:(id)arg1; +- (void)_synchronizeFromAddress; +- (void)_updateFromAddresses:(id)arg1; +- (void)_updateDisplayNameWithSubject:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (id)_controlForIdentifer:(long long)arg1; +- (id)_checkBoxForIdentifier:(long long)arg1; +- (id)_labelForIdentifier:(long long)arg1; +- (id)_stackViewForIdentifier:(long long)arg1; +- (long long)_stateForIdentifier:(long long)arg1; +@property(nonatomic) long long deliveryPriorityState; +@property(nonatomic) long long deliveryAccountState; +@property(nonatomic) long long fromState; +@property(nonatomic) long long subjectState; +@property(nonatomic) long long replyToState; +@property(nonatomic) long long bccState; +@property(nonatomic) long long ccState; +@property(nonatomic) long long toState; +@property(retain) ComposeDraft *representedObject; +- (void)awakeFromNib; +- (void)dealloc; +- (void)_newComposeViewControllerCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeWindowController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeWindowController.h new file mode 100644 index 00000000..7590f3dc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposeWindowController.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + + +@class ComposeDraft, ComposeViewController, NSString; + +@interface ComposeWindowController : NSWindowController +{ + ComposeViewController *_viewController; +} + +@property(readonly, nonatomic) ComposeViewController *viewController; // @synthesize viewController=_viewController; +- (id)toolbarAllowedItemIdentifiers:(id)arg1; +- (id)toolbarDefaultItemIdentifiers:(id)arg1; +- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; +- (id)windowWillReturnUndoManager:(id)arg1; +@property(retain, nonatomic) ComposeDraft *representedObject; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (void)_windowDidClose; +- (void)windowDidLoad; +- (id)windowNibName; +- (void)_composeWindowControllerCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithWindow:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposingPreferences.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposingPreferences.h new file mode 100644 index 00000000..9a133fdc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ComposingPreferences.h @@ -0,0 +1,74 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "AccountStatusDataSourceDelegate.h" + +@class NSButton, NSMatrix, NSPopUpButton, NSString, NSTextField; + +@interface ComposingPreferences : NSPreferencesModule +{ + BOOL _endEditingSimply; + NSPopUpButton *_defaultFormatButton; + NSButton *_alwaysCCMyselfSwitch; + NSPopUpButton *_ccOrBccButton; + NSButton *_replyUsingSameFormatSwitch; + NSButton *_expandAliasesSwitch; + NSButton *_useQuoteBarsSwitch; + NSPopUpButton *_spellCheckingPopUpButton; + NSButton *_replyQuotingSwitch; + NSMatrix *_quotingBehaviorMatrix; + NSTextField *_quotingBehaviorLabel; + NSButton *_matchDomainsSwitch; + NSTextField *_matchingDomainField; + NSPopUpButton *_sendingAccountButton; +} + +@property(nonatomic) BOOL endEditingSimply; // @synthesize endEditingSimply=_endEditingSimply; +@property(nonatomic) __weak NSPopUpButton *sendingAccountButton; // @synthesize sendingAccountButton=_sendingAccountButton; +@property(nonatomic) __weak NSTextField *matchingDomainField; // @synthesize matchingDomainField=_matchingDomainField; +@property(nonatomic) __weak NSButton *matchDomainsSwitch; // @synthesize matchDomainsSwitch=_matchDomainsSwitch; +@property(nonatomic) __weak NSTextField *quotingBehaviorLabel; // @synthesize quotingBehaviorLabel=_quotingBehaviorLabel; +@property(nonatomic) __weak NSMatrix *quotingBehaviorMatrix; // @synthesize quotingBehaviorMatrix=_quotingBehaviorMatrix; +@property(nonatomic) __weak NSButton *replyQuotingSwitch; // @synthesize replyQuotingSwitch=_replyQuotingSwitch; +@property(nonatomic) __weak NSPopUpButton *spellCheckingPopUpButton; // @synthesize spellCheckingPopUpButton=_spellCheckingPopUpButton; +@property(nonatomic) __weak NSButton *useQuoteBarsSwitch; // @synthesize useQuoteBarsSwitch=_useQuoteBarsSwitch; +@property(nonatomic) __weak NSButton *expandAliasesSwitch; // @synthesize expandAliasesSwitch=_expandAliasesSwitch; +@property(nonatomic) __weak NSButton *replyUsingSameFormatSwitch; // @synthesize replyUsingSameFormatSwitch=_replyUsingSameFormatSwitch; +@property(nonatomic) __weak NSPopUpButton *ccOrBccButton; // @synthesize ccOrBccButton=_ccOrBccButton; +@property(nonatomic) __weak NSButton *alwaysCCMyselfSwitch; // @synthesize alwaysCCMyselfSwitch=_alwaysCCMyselfSwitch; +@property(nonatomic) __weak NSPopUpButton *defaultFormatButton; // @synthesize defaultFormatButton=_defaultFormatButton; +- (void).cxx_destruct; +- (void)sendingAccountClicked:(id)arg1; +- (void)controlTextDidEndEditing:(id)arg1; +- (void)matchDomainsClicked:(id)arg1; +- (void)_setComposeMode:(long long)arg1; +- (void)defaultMessageFormatChanged:(id)arg1; +- (void)expandAliasesClicked:(id)arg1; +- (void)alwaysCCMyselfClicked:(id)arg1; +- (void)spellCheckingBehaviorChanged:(id)arg1; +- (void)quotingBehaviorChanged:(id)arg1; +- (void)replyQuotingBehaviorChanged:(id)arg1; +- (void)useQuoteBarsClicked:(id)arg1; +- (void)replyUsingSameFormatClicked:(id)arg1; +- (void)initializeFromDefaults; +- (void)_sizeToFitWithinSuperview:(id)arg1; +- (void)_postComposePreferencesChanged; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (BOOL)isResizable; +- (id)imageForPreferenceNamed:(id)arg1; +- (void)configureMenuItem:(id)arg1 forAccount:(id)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConnectionDoctor.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConnectionDoctor.h new file mode 100644 index 00000000..e637e03b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConnectionDoctor.h @@ -0,0 +1,77 @@ +/* + * 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 "AccountStatusDataSourceDelegate.h" +#import "MCConnectionLogging.h" + +@class AccountStatusDataSource, NSButton, NSDrawer, NSImageView, NSMutableString, NSProgressIndicator, NSString, NSTableView, NSTextField, NSTextView, NSView, NSWindow; + +@interface ConnectionDoctor : NSObject +{ + NSMutableString *_detailBuffer; + NSWindow *_window; + NSTableView *_tableView; + NSImageView *_internetStatusIndicator; + NSProgressIndicator *_internetStatusProgressIndicator; + NSTextField *_internetStatusField; + NSButton *_checkStatusButton; + NSButton *_assistMeButton; + NSTextView *_ispInfoField; + NSDrawer *_detailDrawer; + NSButton *_detailButton; + NSView *_detailView; + NSTextView *_detailTextView; + AccountStatusDataSource *_deliveryASDS; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain, nonatomic) AccountStatusDataSource *deliveryASDS; // @synthesize deliveryASDS=_deliveryASDS; +@property(nonatomic) NSTextView *detailTextView; // @synthesize detailTextView=_detailTextView; +@property(retain, nonatomic) NSView *detailView; // @synthesize detailView=_detailView; +@property(nonatomic) __weak NSButton *detailButton; // @synthesize detailButton=_detailButton; +@property(retain, nonatomic) NSDrawer *detailDrawer; // @synthesize detailDrawer=_detailDrawer; +@property(nonatomic) NSTextView *ispInfoField; // @synthesize ispInfoField=_ispInfoField; +@property(nonatomic) __weak NSButton *assistMeButton; // @synthesize assistMeButton=_assistMeButton; +@property(nonatomic) __weak NSButton *checkStatusButton; // @synthesize checkStatusButton=_checkStatusButton; +@property(nonatomic) __weak NSTextField *internetStatusField; // @synthesize internetStatusField=_internetStatusField; +@property(nonatomic) __weak NSProgressIndicator *internetStatusProgressIndicator; // @synthesize internetStatusProgressIndicator=_internetStatusProgressIndicator; +@property(nonatomic) __weak NSImageView *internetStatusIndicator; // @synthesize internetStatusIndicator=_internetStatusIndicator; +@property(nonatomic) __weak NSTableView *tableView; // @synthesize tableView=_tableView; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +- (void).cxx_destruct; +- (void)flushLog; +- (void)logBytes:(void *)arg1 length:(unsigned long long)arg2; +- (void)logData:(id)arg1 range:(struct _NSRange)arg2; +- (void)logData:(id)arg1; +- (void)logString:(id)arg1; +- (void)_flushLog; +- (void)toggleDetail:(id)arg1; +- (void)showLogs:(id)arg1; +- (void)_logDebuggingInformationDidChange:(BOOL)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)windowWillClose:(id)arg1; +- (void)assistMeClicked:(id)arg1; +- (void)checkAccounts:(id)arg1; +- (void)_didRefreshStatusForAllAccounts:(id)arg1; +- (void)_willRefreshStatusForAllAccounts:(id)arg1; +- (void)_didCheckInternetConnection:(id)arg1; +- (void)_willCheckInternetConnection:(id)arg1; +- (void)show; +- (void)dealloc; +- (void)awakeFromNib; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ContentSplitViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ContentSplitViewController.h new file mode 100644 index 00000000..345fee15 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ContentSplitViewController.h @@ -0,0 +1,55 @@ +/* + * 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 "NSSplitViewDelegate.h" + +@class MailSplitView, MailTableView, MessageViewer, NSString, NSView; + +@interface ContentSplitViewController : NSObject +{ + BOOL _previewPaneIsVisible; + BOOL _keepCurrentRowVisible; + MessageViewer *_messageViewer; + MailTableView *_messageList; + MailSplitView *_contentSplitView; + NSView *_messageListPane; + NSView *_previewPane; +} + +@property(nonatomic) BOOL keepCurrentRowVisible; // @synthesize keepCurrentRowVisible=_keepCurrentRowVisible; +@property(nonatomic) __weak NSView *previewPane; // @synthesize previewPane=_previewPane; +@property(nonatomic) __weak NSView *messageListPane; // @synthesize messageListPane=_messageListPane; +@property(nonatomic) __weak MailSplitView *contentSplitView; // @synthesize contentSplitView=_contentSplitView; +@property(nonatomic) __weak MailTableView *messageList; // @synthesize messageList=_messageList; +@property(nonatomic) __weak MessageViewer *messageViewer; // @synthesize messageViewer=_messageViewer; +- (void).cxx_destruct; +- (void)updateDividerStyle; +@property(readonly, nonatomic) struct CGSize minimumPreviewPaneSize; +@property(readonly, nonatomic) struct CGSize minimumMessageListSize; +- (void)_splitView:(id)arg1 verticallyResizeSubviewsWithNewSize:(struct CGSize)arg2 messageListRect:(struct CGRect *)arg3 previewPaneRect:(struct CGRect *)arg4; +- (void)_splitView:(id)arg1 horizontallyResizeSubviewsWithNewSize:(struct CGSize)arg2 messageListRect:(struct CGRect *)arg3 previewPaneRect:(struct CGRect *)arg4; +- (void)frameRectsWithNewSize:(struct CGSize)arg1 messageListRect:(struct CGRect *)arg2 previewPaneRect:(struct CGRect *)arg3; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (BOOL)splitView:(id)arg1 shouldAdjustSizeOfSubview:(id)arg2; +- (struct CGRect)splitView:(id)arg1 effectiveRect:(struct CGRect)arg2 forDrawnRect:(struct CGRect)arg3 ofDividerAtIndex:(long long)arg4; +- (struct CGRect)splitView:(id)arg1 additionalEffectiveRectOfDividerAtIndex:(long long)arg2; +- (void)splitViewDidResizeSubviews:(id)arg1; +- (void)splitViewWillResizeSubviews:(id)arg1; +- (double)splitView:(id)arg1 constrainSplitPosition:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; +@property(nonatomic) BOOL previewPaneIsVisible; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Conversation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Conversation.h new file mode 100644 index 00000000..c761440e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Conversation.h @@ -0,0 +1,74 @@ +/* + * 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 "NSCopying.h" + +@class MFCriterion, NSArray, NSMutableArray, NSMutableDictionary, NSSet; + +@interface Conversation : NSObject +{ + NSMutableArray *_primitiveOrderedConversationMembers; + NSArray *_orderedConversationMembers; + NSMutableDictionary *_conversationMemberByMessage; + NSMutableDictionary *_conversationMemberByMessageID; + NSMutableArray *_asyncLoadConversationMembersCompletionHandlers; + BOOL _conversationMembersLoaded; + BOOL _isRegisteredForConversationUpdates; + BOOL _shouldLogConversationViewUpdates; + long long _conversationID; + MFCriterion *_mailboxCriterion; + NSArray *_initialMessages; + NSSet *_initialPrimaryMessages; + long long _loadBehavior; + unsigned long long _initialReadingMemberIndex; +} + ++ (BOOL)automaticallyNotifiesObserversOfOrderedConversationMembers; ++ (id)keyPathsForValuesAffectingMessages; +@property(readonly, nonatomic) BOOL shouldLogConversationViewUpdates; // @synthesize shouldLogConversationViewUpdates=_shouldLogConversationViewUpdates; +@property(nonatomic) BOOL isRegisteredForConversationUpdates; // @synthesize isRegisteredForConversationUpdates=_isRegisteredForConversationUpdates; +@property(nonatomic) BOOL conversationMembersLoaded; // @synthesize conversationMembersLoaded=_conversationMembersLoaded; +@property(nonatomic) unsigned long long initialReadingMemberIndex; // @synthesize initialReadingMemberIndex=_initialReadingMemberIndex; +@property(nonatomic) long long loadBehavior; // @synthesize loadBehavior=_loadBehavior; +@property(copy, nonatomic) NSSet *initialPrimaryMessages; // @synthesize initialPrimaryMessages=_initialPrimaryMessages; +@property(copy, nonatomic) NSArray *initialMessages; // @synthesize initialMessages=_initialMessages; +@property(readonly, nonatomic) MFCriterion *mailboxCriterion; // @synthesize mailboxCriterion=_mailboxCriterion; +@property(nonatomic) long long conversationID; // @synthesize conversationID=_conversationID; +- (void).cxx_destruct; +- (void)unhideMessages:(id)arg1; +- (void)hideMessages:(id)arg1; +- (void)markConversationMembersAsRead:(id)arg1; +- (void)_conversationMessagesFlagsChanged:(id)arg1; +- (void)_conversationMessagesCompacted:(id)arg1; +- (void)_conversationMessagesUpdated:(id)arg1; +- (void)_conversationsUpdated:(id)arg1; +- (void)_conversationMessagesLoaded:(id)arg1; +- (void)_updateConversationMembersWithAddedMessages:(id)arg1 primaryMessages:(id)arg2; +- (void)_removeMessage:(id)arg1 fromConversationMember:(id)arg2; +- (void)_addMessage:(id)arg1 isPrimary:(BOOL)arg2 toConversationMember:(id)arg3; +- (void)_removeConversationMember:(id)arg1; +- (void)_addNewConversationMember:(id)arg1; +- (void)_updateInitialReadingMemberIndex; +- (void)_updateOrderedConversationMembers; +- (void)_quickFetchTimeout; +- (void)loadConversationMembersForDisplay; +- (void)asyncLoadConversationMembers:(id)arg1; +@property(copy, nonatomic) NSArray *orderedConversationMembers; +@property(readonly, copy, nonatomic) NSSet *messages; +- (id)_orderingComparator; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (id)description; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (void)dealloc; +- (id)initWithConversationID:(long long)arg1 mailboxCriterion:(id)arg2 initialMessages:(id)arg3 initialPrimaryMessages:(id)arg4 loadBehavior:(long long)arg5; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationMember.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationMember.h new file mode 100644 index 00000000..2a38f5c1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationMember.h @@ -0,0 +1,142 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class Conversation, MCMessage, MCMessageBody, MCMessageHeaders, MUIWebDocument, NSArray, NSData, NSDate, NSImage, NSIndexSet, NSMutableArray, NSMutableSet, NSString, WebDocumentGenerator; + +@interface ConversationMember : NSObject +{ + NSMutableSet *_primitiveMessages; + NSMutableSet *_primaryMessages; + NSMutableSet *_hiddenMessages; + NSMutableArray *_asyncLoadCompletionHandlers; + BOOL _isPrimary; + BOOL _isDeleted; + MCMessage *_originalMessage; + NSImage *_senderImage; + BOOL _senderIsVIP; + int _conversationPosition; + BOOL _primitiveIsUnread; + BOOL _primitiveIsFlagged; + NSIndexSet *_primitiveFlagColors; + unsigned long long _primitiveJunkStatus; + MUIWebDocument *_webDocument; + WebDocumentGenerator *_documentGenerator; + BOOL _startedLoad; + BOOL _messageDataCached; + BOOL _registeredForNotifications; + BOOL _shouldLogConversationViewUpdates; + BOOL _senderImageLoadedOrTimedOut; + MCMessageHeaders *_headers; + Conversation *_conversation; + NSArray *_messages; + NSString *_messageURLString; +} + ++ (id)keyPathsForValuesAffectingJunkStatus; ++ (id)keyPathsForValuesAffectingFlagColors; ++ (id)keyPathsForValuesAffectingIsFlagged; ++ (id)keyPathsForValuesAffectingIsUnread; ++ (BOOL)automaticallyNotifiesObserversOfPrimitiveJunkStatus; ++ (BOOL)automaticallyNotifiesObserversOfPrimitiveFlagColors; ++ (BOOL)automaticallyNotifiesObserversOfPrimitiveIsFlagged; ++ (BOOL)automaticallyNotifiesObserversOfPrimitiveIsUnread; ++ (BOOL)automaticallyNotifiesObserversOfConversationPosition; ++ (BOOL)automaticallyNotifiesObserversOfSenderIsVIP; ++ (BOOL)automaticallyNotifiesObserversOfSenderImage; ++ (BOOL)automaticallyNotifiesObserversOfOriginalMessage; ++ (BOOL)automaticallyNotifiesObserversOfIsDeleted; ++ (BOOL)automaticallyNotifiesObserversOfIsPrimary; ++ (id)keyPathsForValuesAffectingSignerNames; ++ (id)keyPathsForValuesAffectingSigners; ++ (id)keyPathsForValuesAffectingIsSigned; ++ (id)keyPathsForValuesAffectingIsEncrypted; ++ (id)keyPathsForValuesAffectingMessageBody; ++ (id)keyPathsForValuesAffectingAttachmentSize; ++ (id)keyPathsForValuesAffectingNumberOfAttachments; ++ (id)keyPathsForValuesAffectingMailboxName; ++ (id)keyPathsForValuesAffectingDateReceived; ++ (id)keyPathsForValuesAffectingSubject; ++ (id)keyPathsForValuesAffectingBccRecipients; ++ (id)keyPathsForValuesAffectingCcRecipients; ++ (id)keyPathsForValuesAffectingToRecipients; ++ (id)keyPathsForValuesAffectingSender; ++ (id)keyPathsForValuesAffectingMessageIDHeaderDigest; ++ (id)flagsAffectingConversationMember; +@property(copy, nonatomic) NSString *messageURLString; // @synthesize messageURLString=_messageURLString; +@property(nonatomic) BOOL senderImageLoadedOrTimedOut; // @synthesize senderImageLoadedOrTimedOut=_senderImageLoadedOrTimedOut; +@property(readonly, nonatomic) BOOL shouldLogConversationViewUpdates; // @synthesize shouldLogConversationViewUpdates=_shouldLogConversationViewUpdates; +@property(nonatomic) BOOL registeredForNotifications; // @synthesize registeredForNotifications=_registeredForNotifications; +@property(nonatomic) BOOL messageDataCached; // @synthesize messageDataCached=_messageDataCached; +@property(nonatomic) BOOL startedLoad; // @synthesize startedLoad=_startedLoad; +@property(copy, nonatomic) NSArray *messages; // @synthesize messages=_messages; +@property(nonatomic) __weak Conversation *conversation; // @synthesize conversation=_conversation; +@property(retain, nonatomic) MCMessageHeaders *headers; // @synthesize headers=_headers; +//- (void).cxx_destruct; +- (id)messagesInSameMailboxAsOriginalMessage; +- (BOOL)isPrimaryMessage:(id)arg1; +- (void)unhideMessage:(id)arg1; +- (void)hideMessage:(id)arg1; +- (void)removeMessage:(id)arg1; +- (void)addMessage:(id)arg1 isPrimary:(BOOL)arg2; +- (id)_preferredOriginalMessage; +- (void)_reloadOriginalMessage; +- (BOOL)_messageIsInSent:(id)arg1; +- (BOOL)_messageIsInTrashJunkOrOutbox:(id)arg1; +- (BOOL)_messageIsDeleted:(id)arg1; +- (BOOL)_shouldDisplayMessage:(id)arg1; +- (void)updateLastViewedDate; +- (void)_reloadSenderIsVIP; +- (void)_VIPSendersDidChange:(id)arg1; +- (void)_reloadValuesForAggregateFlags; +- (void)flagsChangedForMessage:(id)arg1; +@property(nonatomic) unsigned long long junkStatus; +@property(copy, nonatomic) NSIndexSet *flagColors; +@property(nonatomic) BOOL isFlagged; +@property(nonatomic) BOOL isUnread; +- (void)_addressPhotoChanged:(id)arg1; +- (void)_addressPhotoLoaded:(id)arg1; +- (void)_asyncLoadSenderImage; +- (void)_senderImageTimedOut; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(nonatomic) unsigned long long primitiveJunkStatus; +@property(copy, nonatomic) NSIndexSet *primitiveFlagColors; +@property(nonatomic) BOOL primitiveIsFlagged; +@property(nonatomic) BOOL primitiveIsUnread; +@property(nonatomic) int conversationPosition; +@property(nonatomic) BOOL senderIsVIP; +@property(retain, nonatomic) NSImage *senderImage; +@property(retain, nonatomic) MCMessage *originalMessage; +@property(nonatomic) BOOL isDeleted; +@property(nonatomic) BOOL isPrimary; +@property(readonly, nonatomic) NSArray *signerNames; +@property(readonly, nonatomic) NSArray *signers; +@property(readonly, nonatomic) BOOL isSigned; +@property(readonly, nonatomic) BOOL isEncrypted; +@property(readonly, nonatomic) MCMessageBody *messageBody; +@property(readonly, nonatomic) unsigned long long attachmentSize; +@property(readonly, nonatomic) unsigned long long numberOfAttachments; +@property(readonly, copy, nonatomic) NSString *mailboxName; +@property(readonly, copy, nonatomic) NSDate *dateReceived; +@property(readonly, copy, nonatomic) NSString *subject; +@property(readonly, copy, nonatomic) NSArray *bccRecipients; +@property(readonly, copy, nonatomic) NSArray *ccRecipients; +@property(readonly, copy, nonatomic) NSArray *toRecipients; +@property(readonly, copy, nonatomic) NSString *sender; +@property(readonly, copy, nonatomic) NSData *messageIDHeaderDigest; +@property(retain, nonatomic) MUIWebDocument *webDocument; +@property(retain, nonatomic) WebDocumentGenerator *documentGenerator; +- (void)cancelLoad; +- (void)asyncLoadAllowingRemoteFetch:(BOOL)arg1 completionHandler:(id)arg2; +- (void)invalidate; +- (id)description; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (id)initWithMessages:(id)arg1 primaryMessages:(id)arg2 forConversation:(id)arg3; +- (id)initWithMessage:(id)arg1 isPrimary:(BOOL)arg2 forConversation:(id)arg3; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationMemberArrayController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationMemberArrayController.h new file mode 100644 index 00000000..53233303 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationMemberArrayController.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSArrayController.h" + +@class MCMessage, NSMutableSet; + +@interface ConversationMemberArrayController : NSArrayController +{ + MCMessage *_focusedMessage; + BOOL _temporarilyToggleRelatedMessages; + NSMutableSet *_directlyLinkedSentMessages; +} + ++ (id)keyPathsForValuesAffectingHasRelatedMessages; +@property(retain, nonatomic) NSMutableSet *directlyLinkedSentMessages; // @synthesize directlyLinkedSentMessages=_directlyLinkedSentMessages; +- (void).cxx_destruct; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_updateDirectlyLinkedSentMessagesForContent:(id)arg1; +- (void)_updateFilterPredicate; +@property(readonly, nonatomic) BOOL viewingRelatedMessages; +@property(readonly, nonatomic) BOOL hasRelatedMessages; +@property(nonatomic) BOOL temporarilyToggleRelatedMessages; +- (void)resetConversationState; +@property(retain, nonatomic) MCMessage *focusedMessage; +- (id)arrangeObjects:(id)arg1; +- (id)automaticRearrangementKeyPaths; +- (BOOL)automaticallyRearrangesObjects; +- (void)setContent:(id)arg1; +- (void)dealloc; +- (void)_conversationMemberArrayControllerCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithContent:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationPrefetcher.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationPrefetcher.h new file mode 100644 index 00000000..b2cb47dd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationPrefetcher.h @@ -0,0 +1,43 @@ +/* + * 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 "NSCacheDelegate.h" + +@class MessageMall, NSCache, NSString, NSTableView, NSTimer; + +@interface ConversationPrefetcher : NSObject +{ + NSCache *_prefetchedConversations; + MessageMall *_messageMall; + NSTableView *_messagesTableView; + NSTimer *_prefetchTimer; +} + +@property(retain, nonatomic) NSTimer *prefetchTimer; // @synthesize prefetchTimer=_prefetchTimer; +@property(retain, nonatomic) NSTableView *messagesTableView; // @synthesize messagesTableView=_messagesTableView; +@property(retain, nonatomic) MessageMall *messageMall; // @synthesize messageMall=_messageMall; +@property(retain, nonatomic) NSCache *prefetchedConversations; // @synthesize prefetchedConversations=_prefetchedConversations; +- (void).cxx_destruct; +- (void)cache:(id)arg1 willEvictObject:(id)arg2; +- (void)_prefetchVisibleConversations:(id)arg1; +- (id)cachedConversationForID:(long long)arg1; +- (void)_armTimerWithDelay:(double)arg1; +- (void)_tableViewScrolled:(id)arg1; +- (void)_mallStructureChanged:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithMessageMall:(id)arg1 messagesTableView:(id)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationViewController.h new file mode 100644 index 00000000..9f050127 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationViewController.h @@ -0,0 +1,100 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +#import "MUICollectionViewDelegate.h" + +@class Conversation, ConversationMember, ConversationMemberArrayController, ConversationViewFindController, MUICollectionView, NSMutableDictionary, NSMutableIndexSet, NSMutableOrderedSet, NSMutableSet, NSScrollView, NSString, NSUUID, UnfoldAnimationController; + +@interface ConversationViewController : NSViewController +{ + NSMutableOrderedSet *_conversationMembers; + NSMutableSet *_viewControllers; + NSMutableIndexSet *_loadIndexes; + NSMutableIndexSet *_primaryIndexes; + NSMutableIndexSet *_unreadIndexes; + NSMutableIndexSet *_visibleIndexes; + NSMutableDictionary *_defaultMessageViewingState; + NSMutableDictionary *_messageViewingStateByLibraryID; + ConversationMember *_conversationMemberObservedForActivity; + BOOL _alwaysShowMailboxNames; + BOOL _loaded; + MUICollectionView *_conversationView; + ConversationMemberArrayController *_arrayController; + ConversationViewFindController *_findController; + UnfoldAnimationController *_unfoldAnimationController; + double _pageZoom; + NSUUID *_updateUUID; + NSString *_urlStringToContinue; +} + ++ (BOOL)automaticallyNotifiesObserversOfRepresentedObject; +@property(copy, nonatomic) NSString *urlStringToContinue; // @synthesize urlStringToContinue=_urlStringToContinue; +@property(copy, nonatomic) NSUUID *updateUUID; // @synthesize updateUUID=_updateUUID; +@property(nonatomic) double pageZoom; // @synthesize pageZoom=_pageZoom; +@property(nonatomic) BOOL loaded; // @synthesize loaded=_loaded; +@property(readonly, nonatomic) UnfoldAnimationController *unfoldAnimationController; // @synthesize unfoldAnimationController=_unfoldAnimationController; +@property(readonly, nonatomic) ConversationViewFindController *findController; // @synthesize findController=_findController; +@property(readonly, nonatomic) ConversationMemberArrayController *arrayController; // @synthesize arrayController=_arrayController; +@property(readonly, nonatomic) MUICollectionView *conversationView; // @synthesize conversationView=_conversationView; +- (void).cxx_destruct; +- (void)updateUserActivityState:(id)arg1; +- (BOOL)validateToolbarItem:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)makeFontSmaller:(id)arg1; +- (void)makeFontBigger:(id)arg1; +- (void)toggleViewRelatedMessages:(id)arg1; +- (void)performTextFinderAction:(id)arg1; +- (void)performRedundantTextExpansion:(id)arg1; +- (id)actionViewController; +- (id)actionConversationMembers; +- (id)actionMessagesIncludingDuplicates:(BOOL)arg1; +- (id)_actionConversationMemberIndices; +- (void)_updateLastViewedDateAndMarkRead:(id)arg1; +- (void)_prepareToUpdateLastViewedDateAndMarkReadIfNeeded:(id)arg1 index:(unsigned long long)arg2; +- (void)_cellViewFrameDidChange:(id)arg1; +- (void)collectionView:(id)arg1 didSelectIndex:(unsigned long long)arg2; +- (void)collectionView:(id)arg1 didEndScrollInScrollView:(id)arg2; +- (void)collectionView:(id)arg1 didScrollInScrollView:(id)arg2; +- (void)collectionView:(id)arg1 didEndDisplayingCellView:(id)arg2 forItemAtIndex:(unsigned long long)arg3; +- (void)collectionView:(id)arg1 didBeginDisplayingCellView:(id)arg2 forItemAtIndex:(unsigned long long)arg3; +- (void)collectionView:(id)arg1 willEvictCellView:(id)arg2; +- (id)collectionView:(id)arg1 makeCellViewForItemAtIndex:(unsigned long long)arg2; +- (double)collectionView:(id)arg1 initialHeightOfCellAtIndex:(unsigned long long)arg2; +- (void)_restoreMessageViewingState:(id)arg1; +- (void)_saveMessageViewingState:(id)arg1; +- (void)_viewControllerDidFinishLoading:(id)arg1; +- (void)_loadCellAtNextIndex; +- (void)_performInitialPinning; +- (void)_updateConversationMembers:(id)arg1; +- (void)_resetConversationDisplayState; +- (void)_resetConversationState; +- (void)_updateActivityFromConversationMember:(id)arg1; +@property(retain, nonatomic) ConversationMember *conversationMemberObservedForActivity; +- (void)_updateFirstResponderIfNeeded; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(nonatomic) BOOL alwaysShowMailboxNames; +- (void)_scrollViewDidEndLiveScroll:(id)arg1; +- (void)_scrollViewWillStartLiveScroll:(id)arg1; +@property(retain) NSScrollView *view; +- (void)setRepresentedObject:(id)arg1 withFocusedMessage:(id)arg2; +@property(retain) Conversation *representedObject; +- (void)tearDown; +- (void)loadView; +- (void)_conversationViewControllerCommonInit; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; +- (id)initWithCoder:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationViewFindController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationViewFindController.h new file mode 100644 index 00000000..096c704b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationViewFindController.h @@ -0,0 +1,69 @@ +/* + * 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 "NSTextFinderClient.h" +#import "NSUserInterfaceValidations.h" + +@class ConversationViewController, NSArray, NSMutableArray, NSProgress, NSString, NSTextFinder; + +@interface ConversationViewFindController : NSObject +{ + NSTextFinder *_textFinder; + ConversationViewController *_viewController; + NSString *_targetString; + unsigned long long _findOptions; + NSProgress *_currentProgress; + NSProgress *_updateProgress; + NSMutableArray *_findStore; +} + +@property(retain, nonatomic) NSMutableArray *findStore; // @synthesize findStore=_findStore; +@property(retain, nonatomic) NSProgress *updateProgress; // @synthesize updateProgress=_updateProgress; +@property(retain, nonatomic) NSProgress *currentProgress; // @synthesize currentProgress=_currentProgress; +@property(nonatomic) unsigned long long findOptions; // @synthesize findOptions=_findOptions; +@property(retain, nonatomic) NSString *targetString; // @synthesize targetString=_targetString; +@property(readonly, nonatomic) __weak ConversationViewController *viewController; // @synthesize viewController=_viewController; +- (void).cxx_destruct; +- (void)_updateVisibleRectsForCell:(unsigned long long)arg1; +- (void)_conversationViewDidResize:(id)arg1; +- (void)_cellBoundsDidChange:(id)arg1; +- (void)_revalidateVisibleCells:(id)arg1; +- (void)_updateConversationMatches:(id *)arg1 forWebMatches:(id)arg2 atCellIndex:(unsigned long long)arg3 visibleRect:(struct CGRect)arg4; +- (id)_conversationMatchesForWebMatches:(id)arg1 atCellIndex:(unsigned long long)arg2 cache:(BOOL)arg3; +- (void)_asyncFindMatchesAtCellIndex:(unsigned long long)arg1 maxResults:(unsigned long long)arg2 progress:(id)arg3 completionHandler:(id)arg4; +- (void)_findNextMatchAtCurrentIndex:(unsigned long long)arg1 startIndex:(unsigned long long)arg2 conversationDidWrap:(BOOL)arg3 progress:(id)arg4 resultCollector:(id)arg5; +- (void)_findNextMatchForString:(id)arg1 findOptions:(unsigned long long)arg2 resultCollector:(id)arg3; +- (void)_findAllMatchesWithProgress:(id)arg1 currentIndex:(unsigned long long)arg2 stopIndex:(unsigned long long)arg3 resultCollector:(id)arg4; +- (void)_findAllMatchesForString:(id)arg1 findOptions:(unsigned long long)arg2 resultCollector:(id)arg3; +- (void)selectFindMatch:(id)arg1 completionHandler:(id)arg2; +- (void)scrollFindMatchToVisible:(id)arg1; +- (void)getSelectedText:(id)arg1; +- (void)findMatchesForString:(id)arg1 relativeToMatch:(id)arg2 findOptions:(unsigned long long)arg3 maxResults:(unsigned long long)arg4 resultCollector:(id)arg5; +- (void)performTextFinderAction:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +@property(readonly, nonatomic) NSTextFinder *textFinder; +- (void)reset; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)tearDown; +- (id)initWithViewController:(id)arg1; + +// Remaining properties +@property(readonly) BOOL allowsMultipleSelection; +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly, getter=isEditable) BOOL editable; +@property(readonly) struct _NSRange firstSelectedRange; +@property(readonly) unsigned long long hash; +@property(readonly, getter=isSelectable) BOOL selectable; +@property(copy) NSArray *selectedRanges; +@property(readonly) NSString *string; +@property(readonly) Class superclass; +@property(readonly, copy) NSArray *visibleCharacterRanges; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationsObserver.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationsObserver.h new file mode 100644 index 00000000..d3085a61 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ConversationsObserver.h @@ -0,0 +1,40 @@ +/* + * 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" + +@class NSCountedSet, NSMutableDictionary, NSOperationQueue; + +@interface ConversationsObserver : NSObject +{ + NSCountedSet *_registeredConversationIDs; + NSMutableDictionary *_mailboxCriterionByConversationID; + NSOperationQueue *_workQueue; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) NSOperationQueue *workQueue; // @synthesize workQueue=_workQueue; +- (void).cxx_destruct; +- (void)_libraryMessagesFlagsChanged:(id)arg1; +- (void)_libraryMessagesUpdated:(id)arg1; +- (void)_libraryMessagesCompacted:(id)arg1; +- (void)_libraryConversationsWereChanged:(id)arg1; +- (void)_updateRegistrationForConversation:(id)arg1 withNewConversationID:(id)arg2; +- (BOOL)_isRegistered:(id)arg1; +- (void)unregisterConversationID:(long long)arg1; +- (void)registerConversationID:(long long)arg1 withMailboxCriterion:(id)arg2; +- (unsigned int)_loadOptions; +- (id)_criterionForConversationID:(id)arg1; +- (id)_primaryMessagesForConversationIDNumber:(id)arg1; +- (id)_primaryMessagesForConversations:(id)arg1; +- (id)_allMessagesForConversationIDNumber:(id)arg1; +- (id)_allMessagesForConversations:(id)arg1; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CriteriaUIHelper.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CriteriaUIHelper.h new file mode 100644 index 00000000..4651cbba --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CriteriaUIHelper.h @@ -0,0 +1,90 @@ +/* + * 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 "NSTableViewDataSource.h" + +@class CriterionView, NSButton, NSMutableArray, NSPanel, NSPopUpButton, NSScrollView, NSString, NSTableView, NSTextField, NSWindow; + +@interface CriteriaUIHelper : NSObject +{ + NSMutableArray *_criteriaViews; + BOOL _isEditingHeader; + BOOL _criteriaWillBeUsedForMailboxes; + CriterionView *_criterionView; + NSTextField *_nameField; + NSScrollView *_criteriaContainer; + NSPopUpButton *_allCriteriaMustBeMetPopUp; + NSButton *_includeTrashCheckbox; + NSButton *_includeSentCheckbox; + NSTextField *_performActionLabel; + NSScrollView *_actionContainer; + NSPanel *_headerListPanel; + NSTableView *_headerListTable; + NSButton *_addHeaderButton; + NSString *_previousTitle; + NSWindow *_parentWindow; + id _objectWithCriteria; +} + ++ (id)headerList; ++ (void)unpackUserCriteria:(id *)arg1 noJunkCriterion:(id *)arg2 noTrashCriterion:(id *)arg3 noSentCriterion:(id *)arg4 allCriteriaMustBeSatisfield:(char *)arg5 fromCriteria:(id)arg6; ++ (id)packageUserCriteria:(id)arg1 withNoJunk:(BOOL)arg2 noTrash:(BOOL)arg3 noSent:(BOOL)arg4 allUserCriteriaMustBeSatisfied:(BOOL)arg5; +@property(nonatomic) __weak id objectWithCriteria; // @synthesize objectWithCriteria=_objectWithCriteria; +@property(nonatomic) BOOL criteriaWillBeUsedForMailboxes; // @synthesize criteriaWillBeUsedForMailboxes=_criteriaWillBeUsedForMailboxes; +@property(nonatomic) BOOL isEditingHeader; // @synthesize isEditingHeader=_isEditingHeader; +@property(nonatomic) __weak NSWindow *parentWindow; // @synthesize parentWindow=_parentWindow; +@property(retain, nonatomic) NSString *previousTitle; // @synthesize previousTitle=_previousTitle; +@property(retain, nonatomic) NSButton *addHeaderButton; // @synthesize addHeaderButton=_addHeaderButton; +@property(retain, nonatomic) NSTableView *headerListTable; // @synthesize headerListTable=_headerListTable; +@property(retain, nonatomic) NSPanel *headerListPanel; // @synthesize headerListPanel=_headerListPanel; +@property(retain, nonatomic) NSScrollView *actionContainer; // @synthesize actionContainer=_actionContainer; +@property(retain, nonatomic) NSTextField *performActionLabel; // @synthesize performActionLabel=_performActionLabel; +@property(retain, nonatomic) NSButton *includeSentCheckbox; // @synthesize includeSentCheckbox=_includeSentCheckbox; +@property(retain, nonatomic) NSButton *includeTrashCheckbox; // @synthesize includeTrashCheckbox=_includeTrashCheckbox; +@property(retain, nonatomic) NSPopUpButton *allCriteriaMustBeMetPopUp; // @synthesize allCriteriaMustBeMetPopUp=_allCriteriaMustBeMetPopUp; +@property(retain, nonatomic) NSScrollView *criteriaContainer; // @synthesize criteriaContainer=_criteriaContainer; +@property(retain, nonatomic) NSTextField *nameField; // @synthesize nameField=_nameField; +@property(retain, nonatomic) CriterionView *criterionView; // @synthesize criterionView=_criterionView; +- (void).cxx_destruct; +- (void)connectNextKeyViewChain; +- (void)tileViews:(id)arg1 inContainer:(id)arg2 withChangeAtRow:(unsigned long long)arg3 removeIsEnabled:(BOOL)arg4; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)_removeInvalidHeaders; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)addHeaderClicked:(id)arg1; +- (void)_headerTableEndedEditing:(id)arg1; +- (void)_headerTableBeganEditing:(id)arg1; +- (void)_updateHeaderListUI; +- (void)headerListCancelClicked:(id)arg1; +- (void)headerListOkClicked:(id)arg1; +- (void)_endEditingHeader; +- (void)resetHeaderListForObjectsWithCriteria:(id)arg1; +- (void)_configureAllCriterionMenus; +- (void)editHeaderList; +- (void)userHasSelectedSenderInContacts:(char *)arg1 senderInPreviousRecipients:(char *)arg2; +- (void)removeView:(id)arg1 fromViews:(id)arg2 inContainer:(id)arg3; +- (void)removeCriterion:(id)arg1; +- (id)_createNewCriterionViewForSender:(id)arg1; +- (void)addCriterion:(id)arg1; +- (void)configureCriteriaForObject:(id)arg1; +- (void)trashMailboxCriterionAdded; +- (void)sentMessagesMailboxCriterionAdded; +- (void)putCriteriaFromUIIntoObject:(id)arg1; +- (id)newCriterion; +- (void)awakeFromNib; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CriterionView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CriterionView.h new file mode 100644 index 00000000..a7f64c28 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/CriterionView.h @@ -0,0 +1,107 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ColorBackgroundView.h" + +@class CriteriaUIHelper, MFMailbox, MailboxesChooser, NSButton, NSDatePicker, NSMenu, NSNumberFormatter, NSPopUpButton, NSString, NSTextField, NSView; + +@interface CriterionView : ColorBackgroundView +{ + long long _criterionType; + BOOL _isSmartMailboxCriterion; + NSView *_headerCriteriaView; + NSView *_simpleCriteriaView; + NSView *_accountOrGroupView; + NSView *_mailboxesView; + NSView *_daysOldDatesView; + NSView *_simpleDatesView; + NSView *_daysAgoDatesView; + NSView *_inThelastDaysDatesView; + NSView *_daysAgoRangeDatesView; + NSView *_beforeAfterDatesView; + NSView *_dateRangeDatesView; + NSView *_attachmentTypeView; + NSView *_flaggedStatusView; + NSNumberFormatter *_daysFormatter; + NSNumberFormatter *_daysOldFormatter; + MailboxesChooser *_mailboxesChooser; + CriteriaUIHelper *_owner; + NSButton *_removeButton; + NSButton *_addButton; + NSView *_currentView; + NSPopUpButton *_criterionPopUp; + NSPopUpButton *_qualifierPopUp; + NSTextField *_expressionStringField; + NSTextField *_expressionNumberField; + NSTextField *_expressionOtherNumberField; + NSDatePicker *_dateFieldPicker; + NSDatePicker *_otherDateFieldPicker; + NSPopUpButton *_unitsPopUp; + NSMenu *_criterionMenu; + NSMenu *_dateQualifierMenu; + NSString *_expressionGuess; + MFMailbox *_mailboxBeingEdited; + long long _criterionTypeForOtherArea; +} + +@property(nonatomic) long long criterionTypeForOtherArea; // @synthesize criterionTypeForOtherArea=_criterionTypeForOtherArea; +@property(retain, nonatomic) MFMailbox *mailboxBeingEdited; // @synthesize mailboxBeingEdited=_mailboxBeingEdited; +@property(copy, nonatomic) NSString *expressionGuess; // @synthesize expressionGuess=_expressionGuess; +@property(nonatomic) BOOL isSmartMailboxCriterion; // @synthesize isSmartMailboxCriterion=_isSmartMailboxCriterion; +@property(retain, nonatomic) NSMenu *dateQualifierMenu; // @synthesize dateQualifierMenu=_dateQualifierMenu; +@property(retain, nonatomic) NSMenu *criterionMenu; // @synthesize criterionMenu=_criterionMenu; +@property(nonatomic) __weak NSPopUpButton *unitsPopUp; // @synthesize unitsPopUp=_unitsPopUp; +@property(nonatomic) __weak NSDatePicker *otherDateFieldPicker; // @synthesize otherDateFieldPicker=_otherDateFieldPicker; +@property(nonatomic) __weak NSDatePicker *dateFieldPicker; // @synthesize dateFieldPicker=_dateFieldPicker; +@property(nonatomic) __weak NSTextField *expressionOtherNumberField; // @synthesize expressionOtherNumberField=_expressionOtherNumberField; +@property(nonatomic) __weak NSTextField *expressionNumberField; // @synthesize expressionNumberField=_expressionNumberField; +@property(nonatomic) __weak NSTextField *expressionStringField; // @synthesize expressionStringField=_expressionStringField; +@property(nonatomic) __weak NSPopUpButton *qualifierPopUp; // @synthesize qualifierPopUp=_qualifierPopUp; +@property(nonatomic) __weak NSPopUpButton *criterionPopUp; // @synthesize criterionPopUp=_criterionPopUp; +@property(nonatomic) __weak NSView *currentView; // @synthesize currentView=_currentView; +@property(retain, nonatomic) NSButton *addButton; // @synthesize addButton=_addButton; +@property(retain, nonatomic) NSButton *removeButton; // @synthesize removeButton=_removeButton; +@property(nonatomic) __weak CriteriaUIHelper *owner; // @synthesize owner=_owner; +@property(retain, nonatomic) MailboxesChooser *mailboxesChooser; // @synthesize mailboxesChooser=_mailboxesChooser; +@property(retain, nonatomic) NSNumberFormatter *daysOldFormatter; // @synthesize daysOldFormatter=_daysOldFormatter; +@property(retain, nonatomic) NSNumberFormatter *daysFormatter; // @synthesize daysFormatter=_daysFormatter; +@property(retain, nonatomic) NSView *flaggedStatusView; // @synthesize flaggedStatusView=_flaggedStatusView; +@property(retain, nonatomic) NSView *attachmentTypeView; // @synthesize attachmentTypeView=_attachmentTypeView; +@property(retain, nonatomic) NSView *dateRangeDatesView; // @synthesize dateRangeDatesView=_dateRangeDatesView; +@property(retain, nonatomic) NSView *beforeAfterDatesView; // @synthesize beforeAfterDatesView=_beforeAfterDatesView; +@property(retain, nonatomic) NSView *daysAgoRangeDatesView; // @synthesize daysAgoRangeDatesView=_daysAgoRangeDatesView; +@property(retain, nonatomic) NSView *inThelastDaysDatesView; // @synthesize inThelastDaysDatesView=_inThelastDaysDatesView; +@property(retain, nonatomic) NSView *daysAgoDatesView; // @synthesize daysAgoDatesView=_daysAgoDatesView; +@property(retain, nonatomic) NSView *simpleDatesView; // @synthesize simpleDatesView=_simpleDatesView; +@property(retain, nonatomic) NSView *daysOldDatesView; // @synthesize daysOldDatesView=_daysOldDatesView; +@property(retain, nonatomic) NSView *mailboxesView; // @synthesize mailboxesView=_mailboxesView; +@property(retain, nonatomic) NSView *accountOrGroupView; // @synthesize accountOrGroupView=_accountOrGroupView; +@property(retain, nonatomic) NSView *simpleCriteriaView; // @synthesize simpleCriteriaView=_simpleCriteriaView; +@property(retain, nonatomic) NSView *headerCriteriaView; // @synthesize headerCriteriaView=_headerCriteriaView; +- (void).cxx_destruct; +- (void)ownerSearchAreaChanged:(id)arg1; +- (void)mailboxCriterionPopUpChangedSelection:(id)arg1; +- (void)makeRemoveButtonEnabled:(BOOL)arg1; +- (void)criterionPopupChanged:(id)arg1; +- (void)_criterionPopupWillPopup:(id)arg1; +- (void)qualifierPopupChanged:(id)arg1; +- (BOOL)_populateQualifierPopup; +- (void)putHeaderCriteriaInPopUpMenu; +- (id)_timeSince1970StringFromDatePicker:(id)arg1 atEndOfDay:(BOOL)arg2; +- (id)_subcriteriaForRelativeDatesFrom:(long long)arg1 to:(long long)arg2 units:(long long)arg3 criterionType:(long long)arg4; +- (void)_insertBestGuessForExpressionField; +- (void)_configureViewForQualifierTag:(long long)arg1 criterion:(id)arg2; +- (void)_setEnglishStringsForPopUpMenuHeaderItems:(id)arg1; +- (id)criterion; +- (void)configureForCriterion:(id)arg1; +- (id)_menuUsingInfo:(struct menuItemInfo *)arg1 length:(long long)arg2; +- (void)setIsSmartMailboxCriterion:(BOOL)arg1 mailbox:(id)arg2; +- (void)awakeFromNib; +@property(nonatomic) long long criterionType; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMCSSValue-MailExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMCSSValue-MailExtras.h new file mode 100644 index 00000000..a6e98b77 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMCSSValue-MailExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMCSSValue.h" + +@interface DOMCSSValue (MailExtras) +- (BOOL)matchesFontFamily:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMCharacterData-MailExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMCharacterData-MailExtras.h new file mode 100644 index 00000000..2b6281c3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMCharacterData-MailExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMCharacterData.h" + +@interface DOMCharacterData (MailExtras) +- (id)debugDescription; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMDocument-MailExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMDocument-MailExtras.h new file mode 100644 index 00000000..d303c554 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMDocument-MailExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMDocument.h" + +@interface DOMDocument (MailExtras) +- (id)createBlockPlaceholder; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMDocumentFragment-MailExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMDocumentFragment-MailExtras.h new file mode 100644 index 00000000..2eb67f97 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMDocumentFragment-MailExtras.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMDocumentFragment.h" + +@interface DOMDocumentFragment (MailExtras) +- (void)insertTextAtBeginning:(id)arg1 atEnd:(id)arg2; +@property(readonly, nonatomic) DOMDocumentFragment *unwrappedFragment; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMElement-MailExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMElement-MailExtras.h new file mode 100644 index 00000000..2dcab5a7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMElement-MailExtras.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMElement.h" + +@interface DOMElement (MailExtras) +- (void)scrollToBottom; +- (BOOL)hasMarginsOfZero; +- (BOOL)isBlockLevelElement; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMElement-MailHTMLAttachments.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMElement-MailHTMLAttachments.h new file mode 100644 index 00000000..dcefa1a3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMElement-MailHTMLAttachments.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMElement.h" + +@interface DOMElement (MailHTMLAttachments) +- (BOOL)getNewElement:(id *)arg1 usingAttachments:(id)arg2 excludeRemoteImages:(BOOL)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMEventListener-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMEventListener-Protocol.h new file mode 100644 index 00000000..f2551066 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMEventListener-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol DOMEventListener +- (void)handleEvent:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLDocument-MailExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLDocument-MailExtras.h new file mode 100644 index 00000000..797b2113 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLDocument-MailExtras.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMHTMLDocument.h" + +@interface DOMHTMLDocument (MailExtras) ++ (id)listElements; +- (id)createElement:(id)arg1 class:(id)arg2 id:(id)arg3 editable:(id)arg4; +- (BOOL)convertStationeryBackgroundImageURLs; +- (id)backgroundImageURLs; +- (id)generatorMeta; +- (id)head; +- (id)createFragmentForURL:(id)arg1 text:(id)arg2; +- (id)createSpanElementWithTabs:(long long)arg1; +- (id)createFragmentForWebArchive:(id)arg1 baseURL:(id)arg2 bodyAsDiv:(BOOL)arg3; +- (id)createFragmentForWebArchive:(id)arg1 baseURL:(id)arg2; +- (id)createFragmentForWebArchive:(id)arg1; +- (id)createNonemptyDivElementWithPlainStyle; +- (id)createMessageQuoteElement; +- (id)createFragmentForStringLosingBR:(id)arg1; +- (id)createDocumentFragmentWithMarkupString:(id)arg1; +@property(readonly, nonatomic) BOOL containsSelectionMarkers; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLElement-MailExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLElement-MailExtras.h new file mode 100644 index 00000000..aa3323d4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLElement-MailExtras.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMHTMLElement.h" + +@interface DOMHTMLElement (MailExtras) ++ (BOOL)isRichTextStyle:(id)arg1; ++ (BOOL)isRichTextStyleCheckingOnlyFont:(id)arg1; ++ (BOOL)isRichTextStyleNotCheckingFont:(id)arg1; +- (BOOL)hasClassName:(id)arg1; +- (void)attachment:(id *)arg1 url:(id *)arg2 fromDocument:(id)arg3; +- (void)restoreEditableElementsEdited:(id *)arg1 unedited:(id *)arg2; +- (void)recursivelyRemoveMailAttributes:(BOOL)arg1 convertObjectsToImages:(BOOL)arg2 convertEditableElements:(BOOL)arg3 removeDefaultColorStyle:(BOOL)arg4; +- (BOOL)isRichTextElementForMessageFont:(id)arg1; +- (BOOL)isRichTextElementType; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLElement-MailQuoteLevel.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLElement-MailQuoteLevel.h new file mode 100644 index 00000000..e2c15908 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLElement-MailQuoteLevel.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMHTMLElement.h" + +@interface DOMHTMLElement (MailQuoteLevel) +- (long long)quoteLevelDelta; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLImageElement-MailHTMLAttachments.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLImageElement-MailHTMLAttachments.h new file mode 100644 index 00000000..9933c1f0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLImageElement-MailHTMLAttachments.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMHTMLImageElement.h" + +@interface DOMHTMLImageElement (MailHTMLAttachments) +- (BOOL)getNewElement:(id *)arg1 usingAttachments:(id)arg2 excludeRemoteImages:(BOOL)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLObjectElement-AttachmentLocator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLObjectElement-AttachmentLocator.h new file mode 100644 index 00000000..6e6e2aff --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMHTMLObjectElement-AttachmentLocator.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMHTMLObjectElement.h" + +@interface DOMHTMLObjectElement (AttachmentLocator) +- (void)attachment:(id *)arg1 url:(id *)arg2 fromDocument:(id)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMNode-MailExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMNode-MailExtras.h new file mode 100644 index 00000000..223562fa --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMNode-MailExtras.h @@ -0,0 +1,89 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMNode.h" + +@class DOMHTMLElement; + +@interface DOMNode (MailExtras) +- (void)insertAsSiblingAfterNode:(id)arg1; +- (void)insertAsSiblingBeforeNode:(id)arg1; +- (void)convertBackgroundImageURLsUsingDictionary:(id)arg1; +- (BOOL)convertInlineStationeryBackgroundImageURL; +- (void)addInlineBackgroundImageURLToArray:(id)arg1; +- (id)findElementWithTag:(id)arg1 className:(id)arg2 andIdName:(id)arg3; +- (id)findElementWithTag:(id)arg1 andClass:(id)arg2; +- (void)stationeryAttachmentPlaceholderNodes:(id *)arg1; +- (id)stationeryAttachmentPlaceholderNodes; +- (void)objectElementChildNodes:(id *)arg1; +- (id)objectElementChildNodes; +- (void)descendants:(id *)arg1 withClassName:(id)arg2; +- (id)descendantsWithClassName:(id)arg1; +- (id)lastEditableElement; +- (void)editableElements:(id *)arg1; +- (id)editableElements; +- (id)tilingDiv; +- (id)tilingElements; +- (void)stationeryDynamicElementNodes:(id *)arg1; +- (id)stationeryDynamicElementNodes; +- (BOOL)convertInternalImagesToObjectsIsStationery:(BOOL)arg1; +- (id)attributedStringWithDocument:(id)arg1; +- (void)fixParagraphsAndQuotesFromMicrosoft; +- (void)fixParagraphsAndQuotesFromMicrosoftNodesToRemove:(id)arg1; +- (void)recursivelyFixParagraphs; +- (void)recursivelyRemoveMailAttributes; +- (void)restoreEditableElementsEdited:(id *)arg1 unedited:(id *)arg2; +- (void)recursivelyRemoveMailAttributes:(BOOL)arg1 convertObjectsToImages:(BOOL)arg2 convertEditableElements:(BOOL)arg3 removeDefaultColorStyle:(BOOL)arg4; +- (BOOL)_isAppleStringAttachmentSpan; +- (BOOL)containsRichTextForMessageFont:(id)arg1; +@property(readonly, nonatomic) DOMHTMLElement *containingListElement; +- (BOOL)containsOnlySelectionMarkers; +- (BOOL)isInEditableRegion; +- (id)topmostEditableAncestor; +- (long long)outlineNestingLevel; +- (id)precedingListItem; +- (id)containingListItem; +- (id)topmostContainingNodeWithNameInArray:(id)arg1; +- (id)firstContainingNodeWithNameInArray:(id)arg1; +- (id)descendantNamed:(id)arg1; +- (id)nestedListElement; +- (BOOL)isAtEndOfContainerNode:(id)arg1; +- (BOOL)isAtBeginningOfContainerNode:(id)arg1; +- (unsigned int)offsetOfChild:(id)arg1; +- (id)commonAncestorWithNode:(id)arg1; +- (BOOL)isDescendantOfNode:(id)arg1; +- (id)firstDescendantBlockQuote; +- (id)highestContainingBlockQuote; +- (id)containingBlockQuote; +- (long long)quoteLevelDelta; +- (long long)quoteLevel; +- (BOOL)hasNoSignificantContentsOtherThanAttachments; +- (BOOL)hasNoSignificantContentsOrWhitespace; +- (BOOL)hasNoSignificantContents; +- (BOOL)_hasNoSignificantContentsOrWhitespace:(BOOL)arg1 orAttachments:(BOOL)arg2; +- (BOOL)hasNoContents; +@property(readonly, nonatomic) BOOL isListElement; +@property(readonly, nonatomic) BOOL isBody; +- (BOOL)isNodeThatAffectsTyping; +- (id)elementAncestor; +- (id)blockNodeAncestor; +- (BOOL)isBlockLevelElement; +- (id)appendBlockPlaceholder; +- (id)stringValue; +- (id)_mail_traversePreviousNode; +- (id)_mail_traverseNextSiblingStayingWithin:(id)arg1; +- (id)_mail_traverseNextNodeStayingWithin:(id)arg1; +@property(readonly, nonatomic) DOMNode *previousNode; +@property(readonly, nonatomic) DOMNode *nextNode; +- (id)nextSiblingOrAunt; +@property(readonly, nonatomic) BOOL _mail_isAttached; +- (BOOL)isTemporaryCursorMarker; +- (void)removeStrayLinefeeds; +- (void)_removeStrayLinefeedsAtBeginning; +- (void)_removeStrayLinefeedsAtEnd; +- (id)XPathRelativeTo:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMNode-MailHTMLAttachments.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMNode-MailHTMLAttachments.h new file mode 100644 index 00000000..9aafac28 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMNode-MailHTMLAttachments.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMNode.h" + +@interface DOMNode (MailHTMLAttachments) +- (void)convertImagesToObjectsForAttachments:(id)arg1 excludeRemoteImages:(BOOL)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMRange-MailExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMRange-MailExtras.h new file mode 100644 index 00000000..2e40683a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DOMRange-MailExtras.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DOMRange.h" + +@interface DOMRange (MailExtras) +- (BOOL)hasNoSignificantContents; +- (BOOL)hasNoSignificantContentsOtherThanAttachments; +- (BOOL)hasNoSignificantContentsOrWhitespace; +- (BOOL)runSelectorOnContents:(SEL)arg1; +- (BOOL)containsListElements; +- (BOOL)isEditable; +- (void)setWithStringRepresentation:(id)arg1; +- (BOOL)containsRange:(id)arg1; +- (BOOL)isEqualToRange:(id)arg1; +- (id)stringRepresentation; +- (id)attachmentsFromDocument:(id)arg1; +- (void)attachments:(id *)arg1 urls:(id *)arg2 fromDocument:(id)arg3; +- (id)attachmentsByURLFromDocument:(id)arg1; +- (BOOL)containsRichTextForMessageFont:(id)arg1; +- (id)rangeOfContainingBlock; +- (void)balanceContainers; +- (void)fixIfStartIsAtEndOfContainerNode; +- (void)fixIfEndpointIsAtBeginningOfLine; +- (void)getBlockBoundaryParent:(id *)arg1 nextSibling:(id *)arg2 atStart:(BOOL)arg3; +- (id)attributedStringWithDocument:(id)arg1; +- (id)stringValue; +- (void)hoistRange; +- (BOOL)includeTemporarySelectionMarkers; +- (BOOL)isEquivalentToCollapsedRange; +- (id)lastNode; +- (id)firstNode; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DateCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DateCell.h new file mode 100644 index 00000000..9f3c8ba0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DateCell.h @@ -0,0 +1,62 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface DateCell : NSTextFieldCell +{ + BOOL _forceTextColor; + _Bool _lastStringWasRTL; + int _dateDetailLevel; + double _lastWidth; +} + ++ (void)_resetDateFormats:(id)arg1; ++ (void)initialize; +@property(nonatomic) _Bool lastStringWasRTL; // @synthesize lastStringWasRTL=_lastStringWasRTL; +@property(nonatomic) double lastWidth; // @synthesize lastWidth=_lastWidth; +@property(nonatomic) int dateDetailLevel; // @synthesize dateDetailLevel=_dateDetailLevel; +@property(nonatomic) BOOL forceTextColor; // @synthesize forceTextColor=_forceTextColor; +- (void)_updateDateColumnDetailLevels; +- (void)_updateDateColumnDetailLevelWidths; +- (BOOL)_readWidthsFromDefaults; +- (void)_saveWidthsToDefaults; +- (id)_newWeekdayWidthReferenceDatesFirstWeekday:(unsigned long long *)arg1; +- (id)_newMonthWidthReferenceDates; +- (double)_widthOfLongestDateStringWithLevel:(int)arg1 format:(id)arg2; +- (double)_widthOfStringWithTimeFormat:(id)arg1 withDatePrefix:(id)arg2; +- (void)setLastFont:(id)arg1; +- (id)lastFont; +- (void)setDrawingAttributes:(id)arg1; +- (id)drawingAttributes; +- (long long)accessibilityLineForIndex:(long long)arg1; +- (id)accessibilityStringForRange:(struct _NSRange)arg1; +- (struct _NSRange)accessibilityRangeForLine:(long long)arg1; +- (id)accessibilityAttributedStringForRange:(struct _NSRange)arg1; +- (long long)accessibilityNumberOfCharacters; +- (struct _NSRange)accessibilityVisibleCharacterRange; +- (id)accessibilityValue; +- (id)stringValue; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (double)minimumWidth; +- (void)setObjectValue:(id)arg1; +- (void)setTimeIntervalSince1970:(double)arg1; +- (void)setUnderlinesText:(BOOL)arg1; +- (BOOL)underlinesText; +- (void)setNeedsDisplay:(BOOL)arg1; +- (void)setAlignment:(unsigned long long)arg1; +- (void)setTextColor:(id)arg1; +- (void)setFont:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (void)_initDateFormatter; +- (void)awakeFromNib; +- (void)_dateCellCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initTextCell:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DateColorTransformer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DateColorTransformer.h new file mode 100644 index 00000000..ece20b3c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DateColorTransformer.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSValueTransformer.h" + +@interface DateColorTransformer : NSValueTransformer +{ +} + ++ (BOOL)allowsReverseTransformation; ++ (Class)transformedValueClass; +- (id)transformedValue:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DefaultApplicationPopUpButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DefaultApplicationPopUpButton.h new file mode 100644 index 00000000..de1584d5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DefaultApplicationPopUpButton.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@interface DefaultApplicationPopUpButton : NSPopUpButton +{ + long long _indexOfSelectedHandler; +} + +@property(nonatomic) long long indexOfSelectedHandler; // @synthesize indexOfSelectedHandler=_indexOfSelectedHandler; +- (void)_selectApplication:(id)arg1; +- (void)_setDefaultEmailHandler:(id)arg1; +- (void)_selectHandlerWithBundleIdentifier:(id)arg1 url:(id)arg2; +- (long long)_addHandlerWithBundleIdentifier:(id)arg1 url:(id)arg2; +- (void)_populateMenu; +- (void)refreshApplicationList; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DeletingTableView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DeletingTableView.h new file mode 100644 index 00000000..a154c381 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DeletingTableView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableView.h" + +@interface DeletingTableView : NSTableView +{ +} + +- (void)keyDown:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DeliveryFailure.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DeliveryFailure.h new file mode 100644 index 00000000..de042d0c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DeliveryFailure.h @@ -0,0 +1,64 @@ +/* + * 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 "AccountStatusDataSourceDelegate.h" + +@class AccountStatusDataSource, DocumentEditor, MCError, NSButton, NSPanel, NSString, NSTableView, NSTextField, NSTextView, NSView; + +@interface DeliveryFailure : NSObject +{ + NSPanel *_panel; + NSTextField *_errorLabel; + NSTextView *_errorDescriptionLabel; + NSView *_contents; + NSTableView *_table; + NSButton *_tryLaterButton; + NSButton *_tryOtherButton; + AccountStatusDataSource *_deliveryASDS; + DocumentEditor *_editor; + MCError *_error; +} + +@property(retain, nonatomic) MCError *error; // @synthesize error=_error; +@property(nonatomic) __weak DocumentEditor *editor; // @synthesize editor=_editor; +@property(readonly, nonatomic) AccountStatusDataSource *deliveryASDS; // @synthesize deliveryASDS=_deliveryASDS; +@property(nonatomic) __weak NSButton *tryOtherButton; // @synthesize tryOtherButton=_tryOtherButton; +@property(nonatomic) __weak NSButton *tryLaterButton; // @synthesize tryLaterButton=_tryLaterButton; +@property(nonatomic) __weak NSTableView *table; // @synthesize table=_table; +@property(nonatomic) __weak NSView *contents; // @synthesize contents=_contents; +@property(nonatomic) NSTextView *errorDescriptionLabel; // @synthesize errorDescriptionLabel=_errorDescriptionLabel; +@property(nonatomic) __weak NSTextField *errorLabel; // @synthesize errorLabel=_errorLabel; +@property(retain, nonatomic) NSPanel *panel; // @synthesize panel=_panel; +- (void).cxx_destruct; +- (void)_retile; +- (void)_tile; +- (void)_postDeliveryFailureHappened; +- (void)_deliveryAccountsDidChange:(id)arg1; +- (void)_selectedAccountDidChangeFrom:(id)arg1 to:(id)arg2; +- (id)_setDynamicDeliveryAccountForAccount:(id)arg1; +- (void)editServerList:(id)arg1; +- (void)tryOtherAccount:(id)arg1; +- (void)editMessage:(id)arg1; +- (void)sendLater:(id)arg1; +- (void)runChooseAlternateDeliveryAccountSheet; +- (void)reportError:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)editorWillClose; +- (void)dealloc; +- (void)awakeFromNib; +- (id)init; +- (id)initWithDocumentEditor:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DeliveryQueue.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DeliveryQueue.h new file mode 100644 index 00000000..819ea866 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DeliveryQueue.h @@ -0,0 +1,69 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCInvocationQueue.h" + +#import "MCActivityTarget.h" +#import "MVTerminationHandler.h" + +@class MCActivityMonitor, MFMessageStore, NSMutableDictionary, NSMutableSet, NSString; + +@interface DeliveryQueue : MCInvocationQueue +{ + NSMutableSet *_documentIdsToIgnore; + NSMutableDictionary *_errorResponses; + NSMutableDictionary *_alternateDeliveryAccounts; + NSMutableSet *_accountsOnHold; + BOOL _backgroundProcessingEnabled; + BOOL _queueIsActive; + BOOL _resetDeliveryQueueWhenDoneWithCurrentMessage; + MFMessageStore *_outboxStore; + double _beginDeliveryTime; + MCActivityMonitor *_deliveryMonitor; +} + ++ (id)sharedDeliveryQueue; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(nonatomic) BOOL resetDeliveryQueueWhenDoneWithCurrentMessage; // @synthesize resetDeliveryQueueWhenDoneWithCurrentMessage=_resetDeliveryQueueWhenDoneWithCurrentMessage; +@property(nonatomic) BOOL queueIsActive; // @synthesize queueIsActive=_queueIsActive; +@property(retain, nonatomic) MCActivityMonitor *deliveryMonitor; // @synthesize deliveryMonitor=_deliveryMonitor; +@property(nonatomic) double beginDeliveryTime; // @synthesize beginDeliveryTime=_beginDeliveryTime; +@property(retain) MFMessageStore *outboxStore; // @synthesize outboxStore=_outboxStore; +@property BOOL backgroundProcessingEnabled; // @synthesize backgroundProcessingEnabled=_backgroundProcessingEnabled; +- (void).cxx_destruct; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)stopIgnoringDocumentId:(id)arg1; +- (void)ignoreDocumentId:(id)arg1; +- (id)alternateDeliveryAccountForAccount:(id)arg1; +- (void)unfreezeDeliveryAccount:(id)arg1 reprocessQueue:(BOOL)arg2; +- (void)setAlternateDeliveryAccount:(id)arg1 forAccount:(id)arg2; +- (void)_deliveryAccountsDidChange:(id)arg1; +- (void)_networkConfigurationChanged:(id)arg1; +- (void)cancelDeliveryOfMessageWithDocumentId:(id)arg1; +- (void)cancelDeliveryOfMessage:(id)arg1; +- (long long)_performDeliveryOfMessage:(id)arg1 accountUsed:(id *)arg2; +- (void)_closeOutboxStore; +- (void)_outboxDidOpen:(id)arg1; +- (BOOL)_openOutboxStoreIfNeeded; +- (void)_resetStateAndReprocessQueueIfNecessary; +- (void)resetStateAndReprocessQueueIfNecessary; +- (void)resetStateAndReprocessQueue; +- (long long)appendMessageToQueue:(id)arg1 replacingOriginalMessage:(id)arg2; +- (long long)appendMessageToQueue:(id)arg1; +- (BOOL)_isMessageBeingEdited:(id)arg1; +- (void)_deliverQueuedMessages:(unsigned long long)arg1; +- (void)_processDeliveryQueueStartingAtIndex:(unsigned long long)arg1; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DockCountController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DockCountController.h new file mode 100644 index 00000000..b6576487 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DockCountController.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class MFMailbox, NSOperationQueue; + +@interface DockCountController : NSObject +{ + MFMailbox *_mailBadgeMailbox; + long long _mailBadgeScope; + NSOperationQueue *_workQueue; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) NSOperationQueue *workQueue; // @synthesize workQueue=_workQueue; +- (void).cxx_destruct; +- (void)setMailBadgeScope:(long long)arg1 mailbox:(id)arg2; +- (long long)mailBadgeScope; +- (void)unreadCountChanged:(id)arg1; +- (void)_setMailBadgeMailbox:(id)arg1; +- (id)mailBadgeMailbox; +- (void)_mailboxWillBeInvalidated:(id)arg1; +- (void)_setDockBadgeForCount:(id)arg1; +- (void)clearCountAndStopUpdating; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DocumentEditor.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DocumentEditor.h new file mode 100644 index 00000000..71c91f32 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DocumentEditor.h @@ -0,0 +1,458 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "ImageResizerDelegate-Protocol.h" +#import "MCActivityTarget-Protocol.h" +#import "MVTerminationHandler-Protocol.h" +#import "MailFullScreenWindowDelegate-Protocol.h" +#import "NSTextFinderBarContainer-Protocol.h" + +@class CALayer, ColorBackgroundView, ComposeBackEnd, ComposeStatusView, DeliveryFailure, EditingMessageWebView, EditingWebMessageController, HeadersEditor, LoadingOverlay, MCAttachment, MailInspectorBar, MailInspectorBarItemController, MailToolbar, MailWebViewEditor, MailWindowShadowLayer, MessageViewer, NSArray, NSButton, NSDictionary, NSMutableArray, NSMutableDictionary, NSOperation, NSOperationQueue, NSRunningApplication, NSStackView, NSString, NSTextField, NSTextFinder, NSUUID, NSView, NSWindow, StationerySelector, TypeAheadWindow, WebArchive; + +@interface DocumentEditor : NSObject +{ + ComposeBackEnd *_backEnd; + BOOL _userSavedMessage; + NSMutableDictionary *_bodiesByAttachmentURL; + NSMutableArray *_imageResizers; + unsigned long long _encryptionOverhead; + NSMutableArray *_unapprovedRecipients; + NSMutableArray *_userActionQueue; + struct CGImage *_mainWindowNonKeySnapshot; + BOOL _isLoaded; + BOOL _isAutoSaving; + BOOL _autoShowEditor; + BOOL _userCanApplyStationery; + BOOL _wantsToClose; + BOOL _shouldSaveWhenClosing; + BOOL _shouldDoPopOutAnimation; + BOOL _userKnowsSaveFailed; + BOOL _registeredForNotifications; + BOOL _shouldSaveAfterLoading; + BOOL _inspectorBarDisplayed; + BOOL _sendWhenFinishLoading; + BOOL _hasIncludedAttachmentsFromOriginal; + BOOL _sendAnimationIsInProgress; + BOOL _sendAnimationCancelled; + BOOL _shouldCloseWindowWhenAnimationCompletes; + BOOL _isShareKitOriginated; + BOOL _contentIsDelayed; + MailWebViewEditor *_webViewEditor; + HeadersEditor *_headersEditor; + TypeAheadWindow *_window; + EditingMessageWebView *_composeWebView; + NSTextField *_stationeryNameTextField; + NSButton *_stationeryNameSaveButton; + NSView *_findBarContainer; + NSStackView *_contentStack; + NSView *_clippingView; + NSView *_statusRow; + MailToolbar *_toolbar; + NSDictionary *_toolbarItems; + unsigned long long _messageType; + id _loadDelegate; + NSDictionary *_settings; + EditingWebMessageController *_webMessageController; + MessageViewer *_possibleFullScreenViewerParent; + NSRunningApplication *_activeApplicationBeforeEditorOpened; + NSWindow *_stationeryNameSheet; + ColorBackgroundView *_stationeryPane; + StationerySelector *_stationerySelector; + ComposeStatusView *_composeStatusView; + NSString *_userHTMLForSharingTop; + NSString *_URLShareUUID; + WebArchive *_pageWebArchive; + WebArchive *_readerWebArchive; + MCAttachment *_PDFAttachment; + DocumentEditor *_me; + MailInspectorBar *_inspectorBar; + MailInspectorBarItemController *_inspectorBarItemController; + LoadingOverlay *_loadingOverlay; + NSOperationQueue *_operationQueue; + NSOperation *_savedFinishLoadingEditorOperation; + DeliveryFailure *_deliveryFailure; + unsigned long long _textLengthForLastEstimatedMessageSize; + NSTextFinder *_textFinder; + NSWindow *_transparentWindow; + CALayer *_mainWindowLayer; + CALayer *_composeContentLayer; + CALayer *_headerAndBodyHostingLayer; + CALayer *_messageHeaderLayer; + CALayer *_messageBodyLayer; + CALayer *_composeHeaderLayer; + CALayer *_composeBodyLayer; + CALayer *_composeToolbarLayer; + MailWindowShadowLayer *_shadowLayer; + MessageViewer *_messageViewerToAttach; + struct CGPoint _originalCascadePoint; + struct CGRect _startRect; + struct CGRect _endRect; + struct CGRect _composeWindowFrame; +} + ++ (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(nonatomic) BOOL contentIsDelayed; // @synthesize contentIsDelayed=_contentIsDelayed; +@property(nonatomic) BOOL isShareKitOriginated; // @synthesize isShareKitOriginated=_isShareKitOriginated; +@property(nonatomic) BOOL shouldCloseWindowWhenAnimationCompletes; // @synthesize shouldCloseWindowWhenAnimationCompletes=_shouldCloseWindowWhenAnimationCompletes; +@property(nonatomic) BOOL sendAnimationCancelled; // @synthesize sendAnimationCancelled=_sendAnimationCancelled; +@property(nonatomic) BOOL sendAnimationIsInProgress; // @synthesize sendAnimationIsInProgress=_sendAnimationIsInProgress; +@property(retain, nonatomic) MessageViewer *messageViewerToAttach; // @synthesize messageViewerToAttach=_messageViewerToAttach; +@property(nonatomic) struct CGRect composeWindowFrame; // @synthesize composeWindowFrame=_composeWindowFrame; +@property(nonatomic) struct CGRect endRect; // @synthesize endRect=_endRect; +@property(nonatomic) struct CGRect startRect; // @synthesize startRect=_startRect; +@property(retain, nonatomic) MailWindowShadowLayer *shadowLayer; // @synthesize shadowLayer=_shadowLayer; +@property(retain, nonatomic) CALayer *composeToolbarLayer; // @synthesize composeToolbarLayer=_composeToolbarLayer; +@property(retain, nonatomic) CALayer *composeBodyLayer; // @synthesize composeBodyLayer=_composeBodyLayer; +@property(retain, nonatomic) CALayer *composeHeaderLayer; // @synthesize composeHeaderLayer=_composeHeaderLayer; +@property(retain, nonatomic) CALayer *messageBodyLayer; // @synthesize messageBodyLayer=_messageBodyLayer; +@property(retain, nonatomic) CALayer *messageHeaderLayer; // @synthesize messageHeaderLayer=_messageHeaderLayer; +@property(retain, nonatomic) CALayer *headerAndBodyHostingLayer; // @synthesize headerAndBodyHostingLayer=_headerAndBodyHostingLayer; +@property(retain, nonatomic) CALayer *composeContentLayer; // @synthesize composeContentLayer=_composeContentLayer; +@property(retain, nonatomic) CALayer *mainWindowLayer; // @synthesize mainWindowLayer=_mainWindowLayer; +@property(retain, nonatomic) NSWindow *transparentWindow; // @synthesize transparentWindow=_transparentWindow; +@property(retain, nonatomic) NSTextFinder *textFinder; // @synthesize textFinder=_textFinder; +@property(nonatomic) BOOL hasIncludedAttachmentsFromOriginal; // @synthesize hasIncludedAttachmentsFromOriginal=_hasIncludedAttachmentsFromOriginal; +@property(nonatomic) BOOL sendWhenFinishLoading; // @synthesize sendWhenFinishLoading=_sendWhenFinishLoading; +@property(nonatomic) unsigned long long textLengthForLastEstimatedMessageSize; // @synthesize textLengthForLastEstimatedMessageSize=_textLengthForLastEstimatedMessageSize; +@property(retain, nonatomic) DeliveryFailure *deliveryFailure; // @synthesize deliveryFailure=_deliveryFailure; +@property(nonatomic) BOOL inspectorBarDisplayed; // @synthesize inspectorBarDisplayed=_inspectorBarDisplayed; +@property(nonatomic) __weak NSOperation *savedFinishLoadingEditorOperation; // @synthesize savedFinishLoadingEditorOperation=_savedFinishLoadingEditorOperation; +@property(readonly, nonatomic) NSOperationQueue *operationQueue; // @synthesize operationQueue=_operationQueue; +@property(nonatomic) struct CGPoint originalCascadePoint; // @synthesize originalCascadePoint=_originalCascadePoint; +@property(nonatomic) BOOL shouldSaveAfterLoading; // @synthesize shouldSaveAfterLoading=_shouldSaveAfterLoading; +@property(nonatomic) BOOL registeredForNotifications; // @synthesize registeredForNotifications=_registeredForNotifications; +@property(nonatomic) BOOL userKnowsSaveFailed; // @synthesize userKnowsSaveFailed=_userKnowsSaveFailed; +@property(retain, nonatomic) LoadingOverlay *loadingOverlay; // @synthesize loadingOverlay=_loadingOverlay; +@property(retain, nonatomic) MailInspectorBarItemController *inspectorBarItemController; // @synthesize inspectorBarItemController=_inspectorBarItemController; +@property(retain, nonatomic) MailInspectorBar *inspectorBar; // @synthesize inspectorBar=_inspectorBar; +@property(retain, nonatomic) DocumentEditor *me; // @synthesize me=_me; +@property(nonatomic) 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 *userHTMLForSharingTop; // @synthesize userHTMLForSharingTop=_userHTMLForSharingTop; +@property(retain, nonatomic) ComposeStatusView *composeStatusView; // @synthesize composeStatusView=_composeStatusView; +@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(nonatomic) BOOL shouldSaveWhenClosing; // @synthesize shouldSaveWhenClosing=_shouldSaveWhenClosing; +@property(nonatomic) __weak MessageViewer *possibleFullScreenViewerParent; // @synthesize possibleFullScreenViewerParent=_possibleFullScreenViewerParent; +@property(readonly, nonatomic) EditingWebMessageController *webMessageController; // @synthesize webMessageController=_webMessageController; +@property(retain, nonatomic) NSDictionary *settings; // @synthesize settings=_settings; +@property(nonatomic) __weak id loadDelegate; // @synthesize loadDelegate=_loadDelegate; +@property(nonatomic) BOOL wantsToClose; // @synthesize wantsToClose=_wantsToClose; +@property(nonatomic) BOOL userCanApplyStationery; // @synthesize userCanApplyStationery=_userCanApplyStationery; +@property(nonatomic) BOOL autoShowEditor; // @synthesize autoShowEditor=_autoShowEditor; +@property(nonatomic) BOOL isAutoSaving; // @synthesize isAutoSaving=_isAutoSaving; +@property(nonatomic) BOOL isLoaded; // @synthesize isLoaded=_isLoaded; +@property(nonatomic) unsigned long long messageType; // @synthesize messageType=_messageType; +@property(copy, nonatomic) NSDictionary *toolbarItems; // @synthesize toolbarItems=_toolbarItems; +@property(retain, nonatomic) MailToolbar *toolbar; // @synthesize toolbar=_toolbar; +@property(nonatomic) __weak NSView *statusRow; // @synthesize statusRow=_statusRow; +@property(retain, nonatomic) NSView *clippingView; // @synthesize clippingView=_clippingView; +@property(nonatomic) __weak NSStackView *contentStack; // @synthesize contentStack=_contentStack; +@property(nonatomic) __weak NSView *findBarContainer; // @synthesize findBarContainer=_findBarContainer; +@property(nonatomic) __weak NSButton *stationeryNameSaveButton; // @synthesize stationeryNameSaveButton=_stationeryNameSaveButton; +@property(nonatomic) __weak NSTextField *stationeryNameTextField; // @synthesize stationeryNameTextField=_stationeryNameTextField; +@property(retain, nonatomic) EditingMessageWebView *composeWebView; // @synthesize composeWebView=_composeWebView; +@property(retain, nonatomic) TypeAheadWindow *window; // @synthesize window=_window; +@property(retain, nonatomic) HeadersEditor *headersEditor; // @synthesize headersEditor=_headersEditor; +@property(retain, nonatomic) MailWebViewEditor *webViewEditor; // @synthesize webViewEditor=_webViewEditor; +//- (void).cxx_destruct; +- (void)backEndHandedMessageToDevice:(id)arg1; +- (void)setInsertionPointAtEnd; +- (void)activityContinuationFailed; +- (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)windowDidBecomeMain:(id)arg1; +- (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)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)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; +- (id)_firstSelectedAttachmentView; +- (id)sharingService:(id)arg1 sourceWindowForShareItems:(id)arg2 sharingContentScope:(long long *)arg3; +- (id)sharingService:(id)arg1 transitionImageForShareItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)sharingService:(id)arg1 sourceFrameOnScreenForShareItem:(id)arg2; +- (void)sharingService:(id)arg1 didShareItems:(id)arg2; +- (id)shareItemsForRange:(id)arg1; +- (void)invokeExtensionService:(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; +- (void)_setImageSizePopupToSize:(id)arg1; +- (void)_saveImageSizeToDefaults; +- (unsigned long long)_estimatedMessageSize; +- (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; +- (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)_insertUserHTMLDivs; +- (void)_getUserHTMLForEditing; +- (void)_addBaseURLToDocumentIfNeeded; +- (id)_newOriginalSharingSourceURLHTMLString; +- (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; +- (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)_composePreferencesChanged:(id)arg1; +- (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, nonatomic) BOOL canSave; +- (void)backEndDidSaveMessage:(id)arg1 result:(unsigned int)arg2; +- (void)reportSaveFailure:(id)arg1; +@property(readonly, nonatomic) BOOL hasChanges; +- (void)_setUserSavedMessage:(BOOL)arg1; +@property(readonly, nonatomic) 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, nonatomic) BOOL stationeryPaneIsVisible; +- (void)animationDidEnd:(id)arg1; +- (void)_animateStationerySelector:(BOOL)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; +- (id)webMessageDocument; +@property(retain, nonatomic) 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:(unsigned int)arg2; +- (void)backEndDidCancelMessageDeliveryForAttachmentError:(id)arg1; +- (void)_showMailDropAlert:(id)arg1 forMultipleAttachments:(BOOL)arg2; +- (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; +- (BOOL)_loadEditorNib; +- (void)dealloc; +- (Class)backEndClass; +- (void)finishLoadingEditor; +- (void)performOperationAfterLoad:(id)arg1; +@property(readonly, nonatomic) BOOL isFinishedLoading; +- (id)finishLoadingEditorOperation; +- (id)loadInitialDocumentOperation; +- (id)prepareContentOperation; +- (id)showInterfaceOperation; +- (BOOL)shouldRecordTypeAheadEvents; +- (BOOL)_loadContent; +- (BOOL)load; +- (void)prepareWithSettings:(id)arg1; +- (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)initForPendingMessageOfType:(unsigned long long)arg1; +@property(readonly, copy) NSString *description; +- (BOOL)isEditingDocumentID:(id)arg1; +@property(readonly, nonatomic) NSUUID *documentID; +- (oneway void)release; +- (void)editVisibleHeaders:(id)arg1; +- (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; + +// Remaining properties +@property(readonly) BOOL allowsMultipleSelection; +@property(readonly, copy) NSString *debugDescription; +@property(readonly) struct _NSRange firstSelectedRange; +@property(readonly) unsigned long long hash; +@property(readonly, getter=isSelectable) BOOL selectable; +@property(copy) NSArray *selectedRanges; +@property(readonly) NSString *string; +@property(readonly) Class superclass; +@property(readonly, copy) NSArray *visibleCharacterRanges; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DocumentEditor_Scripting.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DocumentEditor_Scripting.h new file mode 100644 index 00000000..a17d9edf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DocumentEditor_Scripting.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "DocumentEditor.h" + +@interface DocumentEditor_Scripting : DocumentEditor +{ +} + +- (Class)backEndClass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DynamicErrorWindowController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DynamicErrorWindowController.h new file mode 100644 index 00000000..0da064eb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DynamicErrorWindowController.h @@ -0,0 +1,51 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowController.h" + +@class NSButton, NSProgressIndicator, NSTextField; + +@interface DynamicErrorWindowController : NSWindowController +{ + id _delegate; + NSTextField *_message; + NSTextField *_explanation; + NSButton *_leftButton; + NSProgressIndicator *_progressIndicator; + NSButton *_rightButton; + NSButton *_helpButton; + long long _diagnosisCode; + double _distanceToRightEdge; + double _distanceBetweenButtons; + double _distanceFromProgresBarToButtons; + double _progressIndicatorHeight; +} + +@property(nonatomic) double progressIndicatorHeight; // @synthesize progressIndicatorHeight=_progressIndicatorHeight; +@property(nonatomic) double distanceFromProgresBarToButtons; // @synthesize distanceFromProgresBarToButtons=_distanceFromProgresBarToButtons; +@property(nonatomic) double distanceBetweenButtons; // @synthesize distanceBetweenButtons=_distanceBetweenButtons; +@property(nonatomic) double distanceToRightEdge; // @synthesize distanceToRightEdge=_distanceToRightEdge; +@property(nonatomic) long long diagnosisCode; // @synthesize diagnosisCode=_diagnosisCode; +@property(nonatomic) __weak NSButton *helpButton; // @synthesize helpButton=_helpButton; +@property(nonatomic) __weak NSButton *rightButton; // @synthesize rightButton=_rightButton; +@property(nonatomic) __weak NSProgressIndicator *progressIndicator; // @synthesize progressIndicator=_progressIndicator; +@property(nonatomic) __weak NSButton *leftButton; // @synthesize leftButton=_leftButton; +@property(nonatomic) __weak NSTextField *explanation; // @synthesize explanation=_explanation; +@property(nonatomic) __weak NSTextField *message; // @synthesize message=_message; +@property(retain, nonatomic) id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (void)rightActionSelected:(id)arg1; +- (void)leftActionSelected:(id)arg1; +- (void)errorDiagnosedAs:(long long)arg1; +- (void)updateWindowLayout; +- (void)awakeFromNib; +- (void)relocateButton:(id)arg1 relativeTo:(double)arg2; +- (void)collectBasicWindowMetrics; +- (void)_updateTextField:(id)arg1 withText:(id)arg2 belowControl:(id)arg3; +- (void)_updateTextFieldHeightForNewContent:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DynamicErrorWindowDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DynamicErrorWindowDelegate-Protocol.h new file mode 100644 index 00000000..96da6a48 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/DynamicErrorWindowDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol DynamicErrorWindowDelegate +- (long long)helpTopicForDiagnosis:(long long)arg1; +- (void)rightActionSelectedWithDiagnosis:(long long)arg1; +- (void)leftActionSelectedWithDiagnosis:(long long)arg1; +- (id)rightButtonTextForErrorDiagnosis:(long long)arg1; +- (id)leftButtonTextForErrorDiagnosis:(long long)arg1; +- (id)errorDescriptionForErrorDiagnosis:(long long)arg1; +- (id)errorMessageForErrorDiagnosis:(long long)arg1; +- (BOOL)displayIndeterminateProgress; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EWSAccountDetails.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EWSAccountDetails.h new file mode 100644 index 00000000..5e6b3e09 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EWSAccountDetails.h @@ -0,0 +1,37 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "AccountDetails.h" + +@class NSButton, NSTextField; + +@interface EWSAccountDetails : AccountDetails +{ + BOOL _warnedAboutCachingAndIndexing; + NSButton *_cachePolicyCheckbox; + NSTextField *_internalServerPath; + NSTextField *_externalServerPath; + NSTextField *_externalPortNumber; + NSButton *_externalUseSSL; +} + +@property(nonatomic) BOOL warnedAboutCachingAndIndexing; // @synthesize warnedAboutCachingAndIndexing=_warnedAboutCachingAndIndexing; +@property(nonatomic) __weak NSButton *externalUseSSL; // @synthesize externalUseSSL=_externalUseSSL; +@property(nonatomic) __weak NSTextField *externalPortNumber; // @synthesize externalPortNumber=_externalPortNumber; +@property(nonatomic) __weak NSTextField *externalServerPath; // @synthesize externalServerPath=_externalServerPath; +@property(nonatomic) __weak NSTextField *internalServerPath; // @synthesize internalServerPath=_internalServerPath; +@property(nonatomic) __weak NSButton *cachePolicyCheckbox; // @synthesize cachePolicyCheckbox=_cachePolicyCheckbox; +- (void).cxx_destruct; +- (void)cachePolicyChanged:(id)arg1; +- (void)didDisplayTabViewItem:(id)arg1; +- (id)portFieldForSSLCheckBox:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (void)setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (void)setupUIFromValuesInAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EWSAccountSpecialMailboxes.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EWSAccountSpecialMailboxes.h new file mode 100644 index 00000000..ce381a22 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EWSAccountSpecialMailboxes.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "RemoteStoreAccountSpecialMailboxes.h" + +@interface EWSAccountSpecialMailboxes : RemoteStoreAccountSpecialMailboxes +{ +} + +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EWSQuota.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EWSQuota.h new file mode 100644 index 00000000..adb5faaf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EWSQuota.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "RemoteStoreQuota.h" + +@interface EWSQuota : RemoteStoreQuota +{ +} + +- (void)_updateUsageField; +- (void)engineUpdated:(id)arg1; +- (void)engineDidFinish; +- (void)engineDidStart; +- (Class)engineClass; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EditableWebMessageDocument.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EditableWebMessageDocument.h new file mode 100644 index 00000000..17f203ac --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EditableWebMessageDocument.h @@ -0,0 +1,66 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MFWebMessageDocument.h" + +@class DOMHTMLDocument, DOMHTMLElement, NSDate, NSDictionary, NSMutableArray, NSMutableDictionary, NSURL; + +@interface EditableWebMessageDocument : MFWebMessageDocument +{ + DOMHTMLElement *_contentElement; + NSMutableDictionary *_savedUserContent; + NSMutableDictionary *_savedUserAttachments; + NSMutableArray *_orderedUserAttachmentsURLs; + NSMutableArray *_savedUserImages; + NSMutableDictionary *_backgroundImageAttachments; + DOMHTMLDocument *_htmlDocument; + NSDictionary *_remoteAttachments; + NSURL *_imageArchiveURL; + NSURL *_imageArchiveDownloadURL; + NSDate *_expirationDate; +} + +@property(retain, nonatomic) NSDate *expirationDate; // @synthesize expirationDate=_expirationDate; +@property(retain, nonatomic) NSURL *imageArchiveDownloadURL; // @synthesize imageArchiveDownloadURL=_imageArchiveDownloadURL; +@property(retain, nonatomic) NSURL *imageArchiveURL; // @synthesize imageArchiveURL=_imageArchiveURL; +@property(copy, nonatomic) NSDictionary *remoteAttachments; // @synthesize remoteAttachments=_remoteAttachments; +@property(retain, nonatomic) DOMHTMLDocument *htmlDocument; // @synthesize htmlDocument=_htmlDocument; +- (void).cxx_destruct; +- (void)addAttachmentsFromArchive:(id)arg1 attachmentDelegate:(id)arg2; +- (void)_addAttachmentsFromResource:(id)arg1 attachmentDelegate:(id)arg2; +- (id)attachmentElementEnumeratorForRange:(id)arg1 withOptions:(int)arg2; +- (id)attachmentElementEnumeratorWithOptions:(int)arg1; +- (void)copyBackgroundImageFromURL:(id)arg1 toURL:(id)arg2; +- (id)prepareToAddArchive:(id)arg1; +- (id)prepareToAddArchive:(id)arg1 attachmentDelegate:(id)arg2; +- (id)attachmentForURLString:(id)arg1; +- (void)removeAllBackgroundAttachments; +- (void)removeAllCompositeImageAttachments; +- (id)attachmentsIncludingBackgrounds; +- (void)saveAttachmentsWithURLsAsBackgroundAttachments:(id)arg1; +- (id)backgroundImageAttachments; +- (id)attachments; +- (id)attachmentsInRange:(id)arg1; +- (void)addMailDropBannerWithSize:(unsigned long long)arg1; +- (void)convertAOSBoundAttachmentsToLinks; +- (id)userImageDictionaryFromAttachment:(id)arg1 withURL:(id)arg2; +- (void)forgetAllSavedContentAttachmentsAndImages; +- (void)insertSavedUserImagesIntoCompositeImages; +- (id)savedUserImagesFromCompositeImages; +- (void)saveUserImagesFromCompositeImages; +- (id)orderedCompositeImagesAndTheirURLs:(id *)arg1; +- (void)removeSavedUserAttachmentWithURL:(id)arg1; +- (id)savedUserAttachmentForURL:(id)arg1; +- (id)savedUserAttachmentsOrdering; +- (void)saveUserAttachments:(id)arg1 withOrdering:(id)arg2; +- (void)forgetSavedContentWithKeys:(id)arg1; +- (id)savedUserContent; +- (void)saveUserContent:(id)arg1; +- (void)setContentElement:(id)arg1; +- (id)contentElement; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EditingMessageWebView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EditingMessageWebView.h new file mode 100644 index 00000000..aae6acc8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EditingMessageWebView.h @@ -0,0 +1,146 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "TilingWebView.h" + +#import "NSInspectorBarClient.h" +#import "NSTextInputClient.h" + +@class DOMHTMLElement, DOMNode, NSString; + +@interface EditingMessageWebView : TilingWebView +{ + DOMHTMLElement *_contentElement; + BOOL _delegateRespondsToCanInsertFromDraggingInfo; + BOOL _delegateRespondsToCanInsertFromPasteboard; + DOMNode *_cursorPositionNode; +} + ++ (id)insertablePasteboardTypes; +@property(nonatomic) BOOL delegateRespondsToCanInsertFromPasteboard; // @synthesize delegateRespondsToCanInsertFromPasteboard=_delegateRespondsToCanInsertFromPasteboard; +@property(nonatomic) BOOL delegateRespondsToCanInsertFromDraggingInfo; // @synthesize delegateRespondsToCanInsertFromDraggingInfo=_delegateRespondsToCanInsertFromDraggingInfo; +@property(retain, nonatomic) DOMNode *cursorPositionNode; // @synthesize cursorPositionNode=_cursorPositionNode; +- (void).cxx_destruct; +- (unsigned long long)characterIndexForPoint:(struct CGPoint)arg1; +- (struct CGRect)firstRectForCharacterRange:(struct _NSRange)arg1 actualRange:(struct _NSRange *)arg2; +- (id)validAttributesForMarkedText; +- (id)attributedSubstringForProposedRange:(struct _NSRange)arg1 actualRange:(struct _NSRange *)arg2; +- (BOOL)hasMarkedText; +- (struct _NSRange)markedRange; +- (struct _NSRange)selectedRange; +- (void)unmarkText; +- (void)setMarkedText:(id)arg1 selectedRange:(struct _NSRange)arg2 replacementRange:(struct _NSRange)arg3; +- (void)doCommandBySelector:(SEL)arg1; +- (void)insertText:(id)arg1 replacementRange:(struct _NSRange)arg2; +- (id)textInput; +- (id)inspectorBarItemIdentifiers; +- (BOOL)validateUserInterfaceItem:(id)arg1 fallThrough:(char *)arg2; +- (BOOL)validateMenuItem:(id)arg1 fallThrough:(char *)arg2; +- (BOOL)selectionIsInEmptyListItem; +- (BOOL)selectionIsInList; +- (BOOL)selectionIsInListTypes:(id)arg1; +- (BOOL)selectionIsInListType:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (void)insertListWithNumbers:(BOOL)arg1 undoTitle:(id)arg2; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (void)convertListFromType:(id)arg1 toType:(id)arg2 undoTitle:(id)arg3; +- (void)layoutResizingAttachmentViews; +- (void)viewDidEndLiveResize; +- (void)changeDocumentBackgroundColorToColor:(id)arg1; +- (void)viewWillStartLiveResize; +- (void)makeFontSmaller:(id)arg1; +- (void)makeFontBigger:(id)arg1; +- (void)_removeFragmentBlockQuote:(id)arg1; +- (void)_removeBlockQuoteFromTree:(id)arg1; +- (void)_splitUpBlockQuotesOverlappingEndOfRange:(id)arg1; +- (void)_splitUpBlockQuotesOverlappingStartOfRange:(id)arg1; +- (void)changeQuoteLevel:(id)arg1; +- (BOOL)_removeAllQuotingFromTree:(id)arg1; +- (void)changeIndentation:(long long)arg1; +- (void)_changeIndentationIfAllowed:(long long)arg1; +- (void)decreaseIndentation:(id)arg1; +- (void)increaseIndentation:(id)arg1; +- (void)addHorizontalRule:(id)arg1; +- (void)removeLink:(id)arg1; +- (void)editLink:(id)arg1; +- (BOOL)becomeFirstResponder; +- (void)pasteWithCurrentStyle:(id)arg1; +- (void)pasteAsQuotation:(id)arg1; +- (void)paste:(id)arg1; +- (void)redo:(id)arg1; +- (void)undo:(id)arg1; +- (id)beginDraggingSessionWithItems:(id)arg1 event:(id)arg2 source:(id)arg3; +- (BOOL)wantsPeriodicDraggingUpdates; +- (void)concludeDragOperation:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (BOOL)prepareForDragOperation:(id)arg1; +- (void)draggingExited:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (void)saveMessageToDrafts:(id)arg1; +- (void)registerForDraggedTypes:(id)arg1; +- (id)insertablePasteboardTypes; +- (void)insertNode:(id)arg1 atRange:(id)arg2; +- (void)saveSelectionForUndo; +- (void)setSelectionStart:(id)arg1 offset:(int)arg2 end:(id)arg3 offset:(int)arg4 affinity:(unsigned long long)arg5; +- (id)selectedContainerWithNameInArray:(id)arg1; +- (BOOL)isFirstLineOfDocument; +- (id)selectedAnchor; +- (id)temporaryStartingSelectionMarker; +- (id)temporaryEndingSelectionMarker; +- (void)deleteTemporarySelectionMarkersFromDocument:(id)arg1; +- (void)_restoreSelectionFromTemporaryMarkers:(BOOL)arg1; +- (void)restoreSelectionFromTemporaryMarkers; +- (void)insertTemporarySelectionMarkersForRange:(id)arg1; +- (BOOL)isAutomaticLinkDetectionEnabled; +- (BOOL)_removeAllFormatting:(int)arg1; +- (void)removeAllFormatting; +- (void)removeStyle:(id)arg1; +- (BOOL)resetMainDocumentBodyAttributes; +- (BOOL)removeNonBodyChildrenAndAttributesFromMainDocumentElement; +- (BOOL)removeFormattingFromTree:(id)arg1 forDocument:(id)arg2 hasDocumentContext:(BOOL)arg3 imageStrippingMode:(int)arg4; +- (BOOL)removeHeadFromDocument:(id)arg1; +- (void)setMainDocumentURI:(id)arg1; +- (void)setStyleProperty:(id)arg1 value:(id)arg2 priority:(id)arg3 ofElement:(id)arg4; +- (void)setValue:(id)arg1 forAttribute:(id)arg2 ofElement:(id)arg3; +- (void)_insertNode:(id)arg1 parent:(id)arg2 offset:(unsigned int)arg3; +- (void)insertNode:(id)arg1 parent:(id)arg2 nextSibling:(id)arg3; +- (void)replaceNode:(id)arg1 oldNode:(id)arg2; +- (void)deleteRange:(id)arg1; +- (void)deleteNode:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (BOOL)selectionCouldBeMadeIntoALink; +- (BOOL)isSelectionInContentElement; +- (void)setContentElement:(id)arg1; +- (id)contentElement; +- (BOOL)_isContentEditable; +- (BOOL)_replaceSelectionWithFragment:(id)arg1 attachments:(id)arg2 pasteboard:(id)arg3 types:(id)arg4 action:(long long)arg5 options:(long long)arg6 isPlainText:(BOOL)arg7; +- (BOOL)replaceSelectionUsingContext:(id)arg1; +- (id)_createAttachmentsForResources:(id)arg1 inFragment:(id)arg2; +- (void)_clearExistingHTML; +- (void)loadHTMLString:(id)arg1 baseURL:(id)arg2 resourcesToAttach:(id)arg3; +- (BOOL)_replaceSelectionWithPasteboardContentsDraggingInfo:(id)arg1 pasteboard:(id)arg2 pasteboardType:(id)arg3 action:(long long)arg4 options:(long long)arg5; +- (BOOL)_replaceSelectionWithContentsOfWebpage:(id)arg1; +- (BOOL)replaceSelectionWithPasteboardContentsDraggingInfo:(id)arg1 pasteboardType:(id)arg2 action:(long long)arg3 options:(long long)arg4; +- (BOOL)replaceSelectionWithPasteboardContentsPasteboard:(id)arg1 pasteboardType:(id)arg2 action:(long long)arg3 options:(long long)arg4; +- (unsigned long long)pastedContactCounter; +- (unsigned long long)pastedGraphicCounter; +- (void)setEditingDelegate:(id)arg1; +- (id)editingDelegate; +- (id)mailPreferredPboardTypeFromTypes:(id)arg1 pasteboard:(id)arg2 isForDrag:(BOOL)arg3 preferHTML:(BOOL)arg4; +- (BOOL)isActive; +- (BOOL)maintainsInactiveSelection; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EditingMessageWebViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EditingMessageWebViewDelegate-Protocol.h new file mode 100644 index 00000000..761b7183 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EditingMessageWebViewDelegate-Protocol.h @@ -0,0 +1,36 @@ +/* + * 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" + +@protocol EditingMessageWebViewDelegate +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (BOOL)selectionIsInList; +- (void)removeSelectedLink; +- (void)editLink; +- (void)setAllowsRichText:(BOOL)arg1; +- (BOOL)allowsRichText; +- (BOOL)allowQuoting; + +@optional +- (void)webViewWillInsertContentsOfWebpage:(id)arg1; +- (BOOL)webViewShouldReplaceSelectionWithContentsOfWebpage:(id)arg1; +- (void)webViewMainDocumentBaseURIDidChange:(id)arg1; +- (BOOL)webView:(id)arg1 canInsertFromPasteboard:(id)arg2 forDrag:(BOOL)arg3; +- (BOOL)webView:(id)arg1 canInsertFromDraggingInfo:(id)arg2; +- (id)webView:(id)arg1 shouldReplaceSelectionWithWebArchive:(id)arg2 givenAction:(long long)arg3; +- (void)webView:(id)arg1 willRemoveMailAttachment:(id)arg2; +- (void)webView:(id)arg1 didAddMailAttachment:(id)arg2; +- (void)webView:(id)arg1 willReplaceSelectionWithFragment:(id *)arg2 pasteboard:(id)arg3 type:(id)arg4 options:(long long *)arg5; +- (void)webViewDidEndLiveResize:(id)arg1; +- (void)webViewWillStartLiveResize:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EditingWebMessageController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EditingWebMessageController.h new file mode 100644 index 00000000..f6520026 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EditingWebMessageController.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebMessageController.h" + +@interface EditingWebMessageController : WebMessageController +{ +} + +- (BOOL)considerBaseURLsInternal; +- (void)setMainFrameDocumentView:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EmailImporter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EmailImporter.h new file mode 100644 index 00000000..11a5d745 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EmailImporter.h @@ -0,0 +1,63 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "Importer.h" + +@class NSArray, NSString; + +@interface EmailImporter : Importer +{ + NSArray *_sourcePaths; + NSString *_destinationFolderName; + BOOL _errorsDuringImport; + NSString *_rootFolder; + NSArray *_sourceFolders; + char *_lineDelimiter; + char *_fromSpaceSeparator; + NSString *_attachmentBeingSearchedFor; + NSString *_lastDirectoryFound; +} + +@property(copy, nonatomic) NSString *lastDirectoryFound; // @synthesize lastDirectoryFound=_lastDirectoryFound; +@property(nonatomic) __weak NSString *attachmentBeingSearchedFor; // @synthesize attachmentBeingSearchedFor=_attachmentBeingSearchedFor; +@property(nonatomic) BOOL errorsDuringImport; // @synthesize errorsDuringImport=_errorsDuringImport; +@property(nonatomic) char *fromSpaceSeparator; // @synthesize fromSpaceSeparator=_fromSpaceSeparator; +@property(nonatomic) char *lineDelimiter; // @synthesize lineDelimiter=_lineDelimiter; +@property(copy, nonatomic) NSArray *sourceFolders; // @synthesize sourceFolders=_sourceFolders; +@property(copy, nonatomic) NSString *rootFolder; // @synthesize rootFolder=_rootFolder; +- (void).cxx_destruct; +- (id)mailboxForImportItem:(id)arg1; +- (id)mailboxNameForImportItem:(id)arg1; +- (id)copyAttachmentsToMailFolder:(id)arg1; +- (BOOL)isAttachmentBeingSearchedFor:(id)arg1; +- (id)locateAttachments:(id)arg1 inFolder:(id)arg2; +- (id)createAttachmentText:(id)arg1 isHTML:(BOOL)arg2; +- (id)regenerateMessageData:(id)arg1 isHTML:(BOOL)arg2 isRich:(BOOL)arg3; +- (id)longestCommonPathForItems:(id)arg1; +- (id)uniqueDirectoriesForItems:(id)arg1; +- (id)searchForValidItemInsideDirectory:(id)arg1 searchDepth:(long long)arg2 validityBlock:(id)arg3; +- (id)searchForValidItemsInsideDirectory:(id)arg1 limit:(unsigned long long)arg2 searchDepth:(long long)arg3 validityBlock:(id)arg4; +- (id)validItemsFromPaths:(id)arg1 validityBlock:(id)arg2; +- (void)convertChar:(BOOL)arg1 toChar:(BOOL)arg2 inBytes:(char *)arg3 length:(unsigned long long)arg4; +- (void)updateSubjectStringForMessageHeaders:(id)arg1; +- (void)addMessagesToLibrary:(id)arg1 withMailbox:(id)arg2; +- (id)messageWithImporterData:(id)arg1; +- (BOOL)isValidMailbox:(id)arg1; +@property(copy, nonatomic) NSArray *sourceList; +@property(readonly, copy, nonatomic) NSString *destinationFolderName; +- (id)regexForAttachmentName:(id)arg1; +- (id)preProcessSourceData:(id)arg1; +- (void)importMailbox:(id)arg1; +- (void)cleanup; +- (id)statusLine; +- (id)importFinishedText; +- (void)importFinished; +- (void)revealMailbox:(id)arg1; +- (void)performImport; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EncryptImageValueTransormer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EncryptImageValueTransormer.h new file mode 100644 index 00000000..9f0e9b56 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EncryptImageValueTransormer.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSValueTransformer.h" + +@interface EncryptImageValueTransormer : NSValueTransformer +{ +} + ++ (Class)transformedValueClass; ++ (void)initialize; +- (id)transformedValue:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EncryptToolTipValueTransformer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EncryptToolTipValueTransformer.h new file mode 100644 index 00000000..d99cfe93 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EncryptToolTipValueTransformer.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSValueTransformer.h" + +@interface EncryptToolTipValueTransformer : NSValueTransformer +{ +} + ++ (Class)transformedValueClass; +- (id)transformedValue:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EudoraEmailImporter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EudoraEmailImporter.h new file mode 100644 index 00000000..8245dc3d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/EudoraEmailImporter.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +@interface EudoraEmailImporter : FilesystemEmailImporter +{ +} + ++ (id)explanatoryText; ++ (id)name; +- (BOOL)isAttachmentBeingSearchedFor:(id)arg1; +- (id)_attachmentsInEudoraMessage:(id)arg1; +- (void)_stripTag:(char *)arg1 fromData:(id)arg2; +- (struct _NSRange)_rangeOfDataContainedByTag:(char *)arg1 endTag:(char *)arg2 inData:(id)arg3; +- (id)preProcessSourceData:(id)arg1; +- (BOOL)isValidMailbox:(id)arg1; +- (char *)fromString; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ExtractAddressCommand.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ExtractAddressCommand.h new file mode 100644 index 00000000..e34d9387 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ExtractAddressCommand.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScriptCommand.h" + +@interface ExtractAddressCommand : NSScriptCommand +{ +} + +- (id)performDefaultImplementation; +- (id)executeCommand; +- (id)_getRawAddressForObject:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ExtractNameCommand.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ExtractNameCommand.h new file mode 100644 index 00000000..58db3177 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ExtractNameCommand.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScriptCommand.h" + +@interface ExtractNameCommand : NSScriptCommand +{ +} + +- (id)performDefaultImplementation; +- (id)executeCommand; +- (id)_getAddressDisplayNameForObject:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoriteButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoriteButton.h new file mode 100644 index 00000000..b773d012 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoriteButton.h @@ -0,0 +1,100 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MailBarContainerButton.h" + +#import "FavoritesMenuDelegateProtocol.h" +#import "NSCopying.h" +#import "NSDraggingSource.h" +#import "NSPasteboardItemDataProvider.h" + +@class FavoriteButtonMailboxProperties, FavoritesMenuController, MFMailbox, NSString, NSTimer; + +@interface FavoriteButton : MailBarContainerButton +{ + BOOL _menuIsOpen; + id _mailbox; + MFMailbox *_selectedSubMailbox; + FavoriteButtonMailboxProperties *_mailboxProperties; + FavoritesMenuController *_menuController; + NSTimer *_showMenuTimer; + NSTimer *_flashButtonTimer; + long long _flashCount; +} + ++ (BOOL)enabledStateforMailbox:(id)arg1; ++ (Class)cellClass; ++ (id)titleForMailbox:(id)arg1 selectedSubMailbox:(id)arg2 shouldUseExtendedName:(BOOL)arg3 countsChildren:(BOOL)arg4; ++ (unsigned long long)_unreadCountForMailbox:(id)arg1 countsChildren:(BOOL)arg2; ++ (void)setDraggedButton:(id)arg1; ++ (id)draggedButton; +@property(nonatomic) BOOL menuIsOpen; // @synthesize menuIsOpen=_menuIsOpen; +@property(nonatomic) long long flashCount; // @synthesize flashCount=_flashCount; +@property(retain, nonatomic) NSTimer *flashButtonTimer; // @synthesize flashButtonTimer=_flashButtonTimer; +@property(retain, nonatomic) NSTimer *showMenuTimer; // @synthesize showMenuTimer=_showMenuTimer; +@property(retain, nonatomic) FavoritesMenuController *menuController; // @synthesize menuController=_menuController; +@property(retain, nonatomic) FavoriteButtonMailboxProperties *mailboxProperties; // @synthesize mailboxProperties=_mailboxProperties; +@property(retain, nonatomic) MFMailbox *selectedSubMailbox; // @synthesize selectedSubMailbox=_selectedSubMailbox; +@property(readonly, nonatomic) id mailbox; // @synthesize mailbox=_mailbox; +- (void).cxx_destruct; +- (id)selectedMailbox; +- (void)menuDidSelectMailbox:(id)arg1; +- (void)menuDidClose; +- (void)menuDidPresent; +- (void)showMenu; +- (void)_showMenuTimerFired; +- (void)_toggleFlashState; +- (void)_stopShowMenuTimer; +- (void)_startShowMenuTimer; +@property(readonly, copy) NSString *description; +- (BOOL)_canAcceptMailboxAtPoint:(struct CGPoint)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (void)draggingExited:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (unsigned long long)_dragOperationForCurrentEvent; +- (BOOL)_canDragMessageIntoSubMailboxesOrMailbox:(id)arg1; +- (BOOL)_canDragMessageIntoMailbox:(id)arg1; +- (void)flash; +- (void)_finishFlash:(id)arg1; +- (void)draggingSession:(id)arg1 endedAtPoint:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (unsigned long long)draggingSession:(id)arg1 sourceOperationMaskForDraggingContext:(long long)arg2; +- (void)mouseUp:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)_presentContextualPopupForEvent:(id)arg1; +- (BOOL)_shouldDispayMenuForEvent:(id)arg1; +- (void)pasteboard:(id)arg1 item:(id)arg2 provideDataForType:(id)arg3; +- (void)draggingSession:(id)arg1 movedToPoint:(struct CGPoint)arg2; +- (void)_performDragFromMouseDown:(id)arg1 withViewFrameOrigin:(struct CGPoint)arg2; +- (struct CGSize)_currentEventOffsetFromEvent:(id)arg1; +- (BOOL)_canDragHorizontally:(BOOL)arg1 fromMouseDown:(id)arg2; +- (id)_draggingImage; +- (void)dealloc; +- (BOOL)_hasIndicator; +- (void)_setIndicator:(BOOL)arg1; +- (id)activeMailbox; +- (void)_fullScreenStateChanged:(id)arg1; +- (void)_mailboxSectionListingDidChange:(id)arg1; +- (void)_flagMailboxVisibilityChanged:(id)arg1; +- (void)_unreadCountDidChange:(id)arg1; +- (void)_mailboxInfoDidChange:(id)arg1; +- (void)_mailboxWillBecomeInvalid:(id)arg1; +- (void)viewWillMoveToWindow:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)_favoriteButtonCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithMailbox:(id)arg1 selectedSubMailbox:(id)arg2; +- (void)_registerChildrenForUnreadCountChangesForMailbox:(id)arg1; +- (void)registerForDraggedTypes; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoriteButtonMailboxProperties.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoriteButtonMailboxProperties.h new file mode 100644 index 00000000..cd7fd912 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoriteButtonMailboxProperties.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSString; + +@interface FavoriteButtonMailboxProperties : NSObject +{ + BOOL _isContainer; + BOOL _isPreferredSelection; + int _type; + NSString *_persistentIdentifier; + NSString *_selectedSubMailboxPersistentIdentifier; + NSString *_displayName; + NSString *_accountURLString; +} + +@property(nonatomic) BOOL isPreferredSelection; // @synthesize isPreferredSelection=_isPreferredSelection; +@property(nonatomic) BOOL isContainer; // @synthesize isContainer=_isContainer; +@property(nonatomic) int type; // @synthesize type=_type; +@property(retain, nonatomic) NSString *accountURLString; // @synthesize accountURLString=_accountURLString; +@property(retain, nonatomic) NSString *displayName; // @synthesize displayName=_displayName; +@property(retain, nonatomic) NSString *selectedSubMailboxPersistentIdentifier; // @synthesize selectedSubMailboxPersistentIdentifier=_selectedSubMailboxPersistentIdentifier; +@property(retain, nonatomic) NSString *persistentIdentifier; // @synthesize persistentIdentifier=_persistentIdentifier; +- (void).cxx_destruct; +- (id)dictionaryRepresentation; +- (id)initWithDictionaryRepresentation:(id)arg1; +- (id)initWithPersistentIdentifier:(id)arg1 selectedSubMailboxPersistentIdentifier:(id)arg2 displayName:(id)arg3 accountURLString:(id)arg4 type:(int)arg5 isContainer:(BOOL)arg6 isPreferredSelection:(BOOL)arg7; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoriteHoverViewDirectionProtocol-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoriteHoverViewDirectionProtocol-Protocol.h new file mode 100644 index 00000000..d55c2f3c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoriteHoverViewDirectionProtocol-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol FavoriteHoverViewDirectionProtocol +- (void)stopScrolling:(long long)arg1; +- (void)startScrolling:(long long)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesBarView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesBarView.h new file mode 100644 index 00000000..1e1f815f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesBarView.h @@ -0,0 +1,114 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "SlidingViewsBar.h" + +#import "ClippedItemsIndicatorDelegate.h" + +@class MailBarContainerView, MessageViewer, NSMutableArray, NSMutableDictionary, NSSet, NSString; + +@interface FavoritesBarView : SlidingViewsBar +{ + NSMutableArray *_clippedMenuItems; + NSMutableDictionary *_favoriteButtonsByMailboxes; + NSMutableArray *_mailboxProperties; + BOOL _isForSearch; + BOOL _preparedForFirstLayout; + BOOL _windowDidClose; + BOOL _shouldCheckForDuplicates; + id _selectedMailbox; + MessageViewer *_messageViewer; + MailBarContainerView *_mailBarContainerView; + NSSet *_duplicateMailboxesSet; + double _minButtonX; + double _lastWidth; +} + ++ (id)mailboxForFavoritesBarPosition:(unsigned long long)arg1; ++ (id)_favoriteMailboxPropertiesFromPreferences; ++ (id)_mailboxForMailboxProperties:(id)arg1; ++ (id)_mailboxPropertiesFromMailbox:(id)arg1; ++ (double)buttonBottomOffset; ++ (id)_menuItemForMailboxProperties:(id)arg1; +@property(nonatomic) BOOL shouldCheckForDuplicates; // @synthesize shouldCheckForDuplicates=_shouldCheckForDuplicates; +@property(nonatomic) BOOL windowDidClose; // @synthesize windowDidClose=_windowDidClose; +@property(nonatomic) BOOL preparedForFirstLayout; // @synthesize preparedForFirstLayout=_preparedForFirstLayout; +@property(nonatomic) double lastWidth; // @synthesize lastWidth=_lastWidth; +@property(nonatomic) double minButtonX; // @synthesize minButtonX=_minButtonX; +@property(copy, nonatomic) NSSet *duplicateMailboxesSet; // @synthesize duplicateMailboxesSet=_duplicateMailboxesSet; +@property(nonatomic) __weak MailBarContainerView *mailBarContainerView; // @synthesize mailBarContainerView=_mailBarContainerView; +@property(nonatomic) __weak MessageViewer *messageViewer; // @synthesize messageViewer=_messageViewer; +@property(retain, nonatomic) id selectedMailbox; // @synthesize selectedMailbox=_selectedMailbox; +- (void).cxx_destruct; +- (void)flashButtonAtPosition:(unsigned long long)arg1; +- (struct CGPoint)centerOfButtonForFavoritesBarPosition:(unsigned long long)arg1; +- (id)_mailboxPropertiesForFavoritesBarPosition:(unsigned long long)arg1; +- (void)setFavoritesBarIsForSearch:(BOOL)arg1; +- (BOOL)_havePreviouslyAddedMailbox:(id)arg1; +- (void)_setFavoriteMailboxAddedDefaultForMailbox:(id)arg1; +- (void)_getDefaultSetOfMailboxes; +- (void)_finishedGettingDefaultMailboxes; +- (void)_writeFavoriteMailboxPropertiesToPreferences; +- (void)saveFavoritesBar; +- (void)_upgradeFavoritesBar; +- (BOOL)_favoritesPreferenceExists; +- (id)_primaryMailboxes; +- (id)_activeMailboxes; +- (void)_insertMailboxPropertiesFromMailbox:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)_addMailboxPropertiesFromMailbox:(id)arg1; +- (void)updateButtonSelectionWithPreferredProperties:(id)arg1; +- (void)_VIPSendersChanged:(id)arg1; +- (void)clearButtons; +- (BOOL)isMailboxInFavoritesBar:(id)arg1; +- (double)_rightEdgeOfFavoritesViewSubviews; +- (void)_resetClippedItems; +- (void)_refreshButtonsSoon; +- (void)layOutButtons; +- (void)_favoritesViewFrameChanged:(id)arg1; +- (void)_mailboxSelectionChanged:(id)arg1; +- (void)_favoritesBarDidChanged:(id)arg1; +- (void)_mailAccountWillBeDeleted:(id)arg1; +- (void)_mailboxesChanged:(id)arg1; +- (void)_mailboxListingDidChange:(id)arg1; +- (void)_registerForNotifications; +- (id)_selectedButton; +- (void)deleteMailbox:(id)arg1; +- (void)deleteDraggedMailbox:(id)arg1; +- (id)_buttonAtMouseLocation:(struct CGPoint)arg1; +- (BOOL)addDroppedMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)favoriteButtonClicked:(id)arg1; +- (id)_addButtonForMailboxProperties:(id)arg1; +- (void)windowWillClose; +- (double)widthOfDraggingInfo:(id)arg1; +- (unsigned long long)updateDropTarget:(id)arg1; +- (void)reorderedSlidingView:(id)arg1; +- (void)refreshButtons; +- (void)_refreshMailboxProperties; +- (double)_paddingForSidebar; +- (double)paddingBetweenButtons; +- (double)maxButtonXWithoutClipIndicator; +- (double)maxButtonXWithClipIndicator; +- (double)minSlidingViewX; +- (unsigned long long)lastNonSlidingViewIndex; +- (void)finishedSlidingAnimation:(id)arg1; +- (id)menuItemsForClippedItemsIndicator:(id)arg1; +- (void)_favoritesBarViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)draggingExited:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (void)awakeFromNib; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesBarViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesBarViewController.h new file mode 100644 index 00000000..2961348a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesBarViewController.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTitlebarAccessoryViewController.h" + +@class FavoritesBarView, MailBarContainerView; + +@interface FavoritesBarViewController : NSTitlebarAccessoryViewController +{ + FavoritesBarView *_favoritesBarView; +} + +@property(nonatomic) __weak FavoritesBarView *favoritesBarView; // @synthesize favoritesBarView=_favoritesBarView; +- (void).cxx_destruct; +@property(retain) MailBarContainerView *view; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuController.h new file mode 100644 index 00000000..49fce8c9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuController.h @@ -0,0 +1,84 @@ +/* + * 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 "FavoriteHoverViewDirectionProtocol.h" +#import "NSOutlineViewDataSource.h" +#import "NSOutlineViewDelegate.h" + +@class FavoritesMenuOutlineView, NSScrollView, NSString, NSTimer, NSWindow, _FavoriteMenuScrollHoverView; + +@interface FavoritesMenuController : NSObject +{ + BOOL _isScrolling; + BOOL _isOpeningMenu; + BOOL _needsScrollers; + id _delegate; + NSWindow *_window; + NSWindow *_parentWindow; + id _mailbox; + NSScrollView *_scrollView; + FavoritesMenuOutlineView *_outlineView; + id _mouseClickedMonitor; + _FavoriteMenuScrollHoverView *_upScrollHoverView; + _FavoriteMenuScrollHoverView *_downScrollHoverView; + NSTimer *_scrollTimer; +} + ++ (void)closeExitingMenu; +@property(retain, nonatomic) NSTimer *scrollTimer; // @synthesize scrollTimer=_scrollTimer; +@property(nonatomic) BOOL needsScrollers; // @synthesize needsScrollers=_needsScrollers; +@property(retain, nonatomic) _FavoriteMenuScrollHoverView *downScrollHoverView; // @synthesize downScrollHoverView=_downScrollHoverView; +@property(retain, nonatomic) _FavoriteMenuScrollHoverView *upScrollHoverView; // @synthesize upScrollHoverView=_upScrollHoverView; +@property(nonatomic) BOOL isOpeningMenu; // @synthesize isOpeningMenu=_isOpeningMenu; +@property(retain, nonatomic) id mouseClickedMonitor; // @synthesize mouseClickedMonitor=_mouseClickedMonitor; +@property(retain, nonatomic) FavoritesMenuOutlineView *outlineView; // @synthesize outlineView=_outlineView; +@property(retain, nonatomic) NSScrollView *scrollView; // @synthesize scrollView=_scrollView; +@property(readonly, nonatomic) id mailbox; // @synthesize mailbox=_mailbox; +@property(readonly, nonatomic) NSWindow *parentWindow; // @synthesize parentWindow=_parentWindow; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +@property(nonatomic) BOOL isScrolling; // @synthesize isScrolling=_isScrolling; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (void)stopScrolling:(long long)arg1; +- (void)stopScrolling; +- (void)startScrolling:(long long)arg1; +- (void)updateScrollArrows; +- (void)_scrollToNextPoint:(id)arg1; +- (BOOL)outlineView:(id)arg1 acceptDrop:(id)arg2 item:(id)arg3 childIndex:(long long)arg4; +- (BOOL)_canDragMessageIntoMailbox:(id)arg1; +- (unsigned long long)outlineView:(id)arg1 validateDrop:(id)arg2 proposedItem:(id)arg3 proposedChildIndex:(long long)arg4; +- (unsigned long long)_dragOperationForCurrentEvent; +- (BOOL)outlineView:(id)arg1 shouldShowOutlineCellForItem:(id)arg2; +- (id)outlineView:(id)arg1 viewForTableColumn:(id)arg2 item:(id)arg3; +- (BOOL)outlineView:(id)arg1 isItemExpandable:(id)arg2; +- (id)outlineView:(id)arg1 child:(long long)arg2 ofItem:(id)arg3; +- (long long)outlineView:(id)arg1 numberOfChildrenOfItem:(id)arg2; +- (id)_nibForFavoriteMenuItemView; +- (id)_titleForTopLevelMailbox:(id)arg1; +- (void)presentPopupAtLocation:(struct CGPoint)arg1; +- (void)_insertOutlineViewInScrollView; +- (void)_constrainWindowToScreen; +- (void)_sizeWindowToFitCells; +- (struct CGSize)_windowSizeForOutlineViewSize:(struct CGSize)arg1; +- (void)_mouseClickedInApplicationWithEvent:(id)arg1; +- (void)_dragEnded:(id)arg1; +- (void)_applicationShouldClosePopup:(id)arg1; +- (void)closePopup; +- (void)_cleanupMenu; +- (void)dealloc; +- (id)init; +- (id)initWithMailbox:(id)arg1 atWindow:(id)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuDelegateProtocol-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuDelegateProtocol-Protocol.h new file mode 100644 index 00000000..a7552910 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuDelegateProtocol-Protocol.h @@ -0,0 +1,17 @@ +/* + * 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" + +@protocol FavoritesMenuDelegateProtocol + +@optional +- (void)menuDidClose; +- (void)menuDidPresent; +- (void)menuDidSelectMailbox:(id)arg1; +- (id)selectedMailbox; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuItem.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuItem.h new file mode 100644 index 00000000..5f0d8c70 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuItem.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableCellView.h" + +@class NSImage, NSImageView; + +@interface FavoritesMenuItem : NSTableCellView +{ + NSImageView *_menuStateImageView; + long long _indentationLevel; + NSImage *_image; + NSImage *_alternateImage; +} + +@property(retain, nonatomic) NSImage *alternateImage; // @synthesize alternateImage=_alternateImage; +@property(retain, nonatomic) NSImage *image; // @synthesize image=_image; +@property(nonatomic) long long indentationLevel; // @synthesize indentationLevel=_indentationLevel; +@property(nonatomic) __weak NSImageView *menuStateImageView; // @synthesize menuStateImageView=_menuStateImageView; +- (void).cxx_destruct; +- (void)setState:(long long)arg1; +- (void)setBackgroundStyle:(long long)arg1; +- (double)preferredWidth; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuItemImageView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuItemImageView.h new file mode 100644 index 00000000..9aaa0c97 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuItemImageView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageView.h" + +@interface FavoritesMenuItemImageView : NSImageView +{ +} + +- (BOOL)allowsVibrancy; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuOutlineView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuOutlineView.h new file mode 100644 index 00000000..af59c56f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FavoritesMenuOutlineView.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOutlineView.h" + +@class FavoritesMenuController, NSTrackingArea; + +@interface FavoritesMenuOutlineView : NSOutlineView +{ + FavoritesMenuController *_controller; + NSTrackingArea *_trackingArea; +} + +@property(retain, nonatomic) NSTrackingArea *trackingArea; // @synthesize trackingArea=_trackingArea; +@property(nonatomic) __weak FavoritesMenuController *controller; // @synthesize controller=_controller; +- (void).cxx_destruct; +- (void)scrollWheel:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)mouseMoved:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)updateTrackingAreas; +- (void)dealloc; +- (void)_favoritesMenuOutlineViewCommonInitWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FilesystemEmailImporter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FilesystemEmailImporter.h new file mode 100644 index 00000000..e64660d3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FilesystemEmailImporter.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "EmailImporter.h" + +@class NSSet; + +@interface FilesystemEmailImporter : EmailImporter +{ +} + +- (void)verifyFromSpaceHeaderForScanner:(id)arg1 dataLength:(unsigned long long)arg2; +- (void)sniffLineDelimiterFromData:(id)arg1; +- (BOOL)isValidMailbox:(id)arg1; +- (char *)fromString; +@property(readonly, copy, nonatomic) NSSet *pathExtensions; +- (void)readMailbox:(id)arg1 intoMailbox:(id)arg2; +- (void)processUserSelection; +- (double)progressValueForMailboxAtPath:(id)arg1; +- (id)prepareForImport; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FindBarContainer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FindBarContainer.h new file mode 100644 index 00000000..f9d35cd9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FindBarContainer.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "NSTextFinderBarContainer.h" + +@class NSString; + +@interface FindBarContainer : NSView +{ + NSView *_findBarView; + BOOL _findBarVisible; + NSView *_containerView; +} + +@property(retain, nonatomic) NSView *containerView; // @synthesize containerView=_containerView; +- (void).cxx_destruct; +- (void)updateLayer; +- (void)_layoutSubviews; +@property(getter=isFindBarVisible) BOOL findBarVisible; +@property(retain) NSView *findBarView; +- (id)contentView; +- (void)findBarViewDidChangeHeight; +- (BOOL)isFlipped; +- (BOOL)wantsUpdateLayer; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlagButtonImageView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlagButtonImageView.h new file mode 100644 index 00000000..51ccd27b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlagButtonImageView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageView.h" + +@interface FlagButtonImageView : NSImageView +{ + BOOL _selected; + BOOL _displayMouseOverStyle; +} + +@property(nonatomic) BOOL displayMouseOverStyle; // @synthesize displayMouseOverStyle=_displayMouseOverStyle; +@property(nonatomic) BOOL selected; // @synthesize selected=_selected; +- (void)drawRect:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlagIconFactory.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlagIconFactory.h new file mode 100644 index 00000000..fd61bafc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlagIconFactory.h @@ -0,0 +1,20 @@ +/* + * 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" + +@interface FlagIconFactory : NSObject +{ +} + ++ (BOOL)colorForKey:(id)arg1; ++ (id)displayNameForFlag:(BOOL)arg1; ++ (id)iconForFlag:(BOOL)arg1; ++ (id)colorForFlag:(BOOL)arg1; +- (id)valueForKey:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlaggedStatusToolbarItem.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlaggedStatusToolbarItem.h new file mode 100644 index 00000000..f71a8554 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlaggedStatusToolbarItem.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@interface FlaggedStatusToolbarItem : NSToolbarItem +{ + id _delegate; +} + +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (void)validate; +- (void)dealloc; +- (id)initWithItemIdentifier:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlaggedStatusToolbarItemDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlaggedStatusToolbarItemDelegate-Protocol.h new file mode 100644 index 00000000..2ec67cb9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlaggedStatusToolbarItemDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol FlaggedStatusToolbarItemDelegate + +@optional +- (void)toggleFlaggedStatus:(BOOL)arg1; +- (BOOL)validateFlaggedStatusToolbarItem:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlaggedStatusView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlaggedStatusView.h new file mode 100644 index 00000000..022f586e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlaggedStatusView.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSegmentedControl.h" + +@class FlaggedStatusToolbarItem; + +@interface FlaggedStatusView : NSSegmentedControl +{ + BOOL _flagColorToDisplay; + FlaggedStatusToolbarItem *_toolbarItem; +} + ++ (BOOL)defaultFlagColor; ++ (id)menuForFlaggedStatus; +@property(nonatomic) __weak FlaggedStatusToolbarItem *toolbarItem; // @synthesize toolbarItem=_toolbarItem; +- (void).cxx_destruct; +- (void)_segmentedControlClicked:(id)arg1; +- (void)setupAccessibilityForButton:(BOOL)arg1; +@property(nonatomic) BOOL flagColorToDisplay; +- (void)_flaggedStatusViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlagsMenuItemView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlagsMenuItemView.h new file mode 100644 index 00000000..e8a2dfc7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlagsMenuItemView.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class FlagButtonImageView, NSMutableArray, NSMutableDictionary, NSTextField; + +@interface FlagsMenuItemView : NSView +{ + NSMutableDictionary *_flagViews; + NSMutableArray *_trackingAreas; + NSTextField *_flagTitleTextField; + NSTextField *_flagNameTextField; + FlagButtonImageView *_clearFlaggedStatusView; +} + +@property(retain, nonatomic) FlagButtonImageView *clearFlaggedStatusView; // @synthesize clearFlaggedStatusView=_clearFlaggedStatusView; +@property(retain, nonatomic) NSTextField *flagNameTextField; // @synthesize flagNameTextField=_flagNameTextField; +@property(retain, nonatomic) NSTextField *flagTitleTextField; // @synthesize flagTitleTextField=_flagTitleTextField; +- (void).cxx_destruct; +- (void)setEnabled:(BOOL)arg1; +- (void)viewDidMoveToWindow; +- (void)mouseUp:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)_drawSelectedOutlineForView:(id)arg1; +- (id)_viewForFlagColor:(BOOL)arg1; +- (void)updateTrackingAreas; +- (void)awakeFromNib; +- (void)_flagsMenuItemViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlatTableView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlatTableView.h new file mode 100644 index 00000000..2d5dd832 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlatTableView.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableView.h" + +@interface FlatTableView : NSTableView +{ +} + +- (BOOL)isOpaque; +- (id)_dropTargetColor; +- (id)_selectionColor; +- (id)_highlightColorForCell:(id)arg1; +- (void)_drawDropHighlightBackgroundForRow:(long long)arg1; +- (void)_highlightRow:(long long)arg1 withColor:(id)arg2; +- (void)highlightSelectionInClipRect:(struct CGRect)arg1; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlatTableViewDataCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlatTableViewDataCell.h new file mode 100644 index 00000000..ae525a46 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FlatTableViewDataCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "VerticallyCenteredTextFieldCell.h" + +@interface FlatTableViewDataCell : VerticallyCenteredTextFieldCell +{ +} + +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (id)textColor; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FontPreferenceContainerView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FontPreferenceContainerView.h new file mode 100644 index 00000000..2e5f1ba0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FontPreferenceContainerView.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSButton, NSTextField; + +@interface FontPreferenceContainerView : NSView +{ + NSButton *_selectButton; + NSTextField *_labelTextField; + NSTextField *_sampleTextField; + long long _fontPreference; + double _buttonOffset; + double _labelOffset; + double _sampleOffset; + struct CGRect _myOriginalFrame; + struct CGRect _sampleTextFieldOriginalFrame; +} + +@property(nonatomic) double sampleOffset; // @synthesize sampleOffset=_sampleOffset; +@property(nonatomic) double labelOffset; // @synthesize labelOffset=_labelOffset; +@property(nonatomic) double buttonOffset; // @synthesize buttonOffset=_buttonOffset; +@property(nonatomic) struct CGRect sampleTextFieldOriginalFrame; // @synthesize sampleTextFieldOriginalFrame=_sampleTextFieldOriginalFrame; +@property(nonatomic) struct CGRect myOriginalFrame; // @synthesize myOriginalFrame=_myOriginalFrame; +@property(nonatomic) long long fontPreference; // @synthesize fontPreference=_fontPreference; +@property(retain, nonatomic) NSTextField *sampleTextField; // @synthesize sampleTextField=_sampleTextField; +@property(retain, nonatomic) NSTextField *labelTextField; // @synthesize labelTextField=_labelTextField; +@property(retain, nonatomic) NSButton *selectButton; // @synthesize selectButton=_selectButton; +- (void).cxx_destruct; +- (void)sizeToFit; +- (void)layoutVertically; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FontsAndColorsPreferences.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FontsAndColorsPreferences.h new file mode 100644 index 00000000..b2858e8b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FontsAndColorsPreferences.h @@ -0,0 +1,90 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +@class FontPreferenceContainerView, NSArray, NSFont, NSMutableDictionary, NSPopUpButton, NSTextView; + +@interface FontsAndColorsPreferences : NSPreferencesModule +{ + NSMutableDictionary *_midYDict; + BOOL _isQuotedTextColored; + BOOL _isPlainTextOfFixedWidth; + NSFont *_messageListFont; + NSFont *_messageFont; + NSFont *_fixedWidthFont; + NSArray *_colorList; + FontPreferenceContainerView *_messageListContainerView; + FontPreferenceContainerView *_messageTextContainerView; + FontPreferenceContainerView *_fixedWidthContainerView; + NSPopUpButton *_colorPopupOne; + NSPopUpButton *_colorPopupTwo; + NSPopUpButton *_colorPopupThree; + NSTextView *_exampleTextView; + NSArray *_fontPrefContainerViews; + double _containerSuperViewSpacingY; + double _containerContainerSpacingY; + long long _changingFontPreference; + NSPopUpButton *_lastColorPopupSelected; +} + ++ (id)keyPathsForValuesAffectingFixedWidthSampleFont; ++ (id)keyPathsForValuesAffectingMessageSampleFont; ++ (id)keyPathsForValuesAffectingMessageListSampleFont; +@property(nonatomic) __weak NSPopUpButton *lastColorPopupSelected; // @synthesize lastColorPopupSelected=_lastColorPopupSelected; +@property(nonatomic) long long changingFontPreference; // @synthesize changingFontPreference=_changingFontPreference; +@property(nonatomic) double containerContainerSpacingY; // @synthesize containerContainerSpacingY=_containerContainerSpacingY; +@property(nonatomic) double containerSuperViewSpacingY; // @synthesize containerSuperViewSpacingY=_containerSuperViewSpacingY; +@property(copy, nonatomic) NSArray *fontPrefContainerViews; // @synthesize fontPrefContainerViews=_fontPrefContainerViews; +@property(retain, nonatomic) NSTextView *exampleTextView; // @synthesize exampleTextView=_exampleTextView; +@property(nonatomic) __weak NSPopUpButton *colorPopupThree; // @synthesize colorPopupThree=_colorPopupThree; +@property(nonatomic) __weak NSPopUpButton *colorPopupTwo; // @synthesize colorPopupTwo=_colorPopupTwo; +@property(nonatomic) __weak NSPopUpButton *colorPopupOne; // @synthesize colorPopupOne=_colorPopupOne; +@property(nonatomic) __weak FontPreferenceContainerView *fixedWidthContainerView; // @synthesize fixedWidthContainerView=_fixedWidthContainerView; +@property(nonatomic) __weak FontPreferenceContainerView *messageTextContainerView; // @synthesize messageTextContainerView=_messageTextContainerView; +@property(nonatomic) __weak FontPreferenceContainerView *messageListContainerView; // @synthesize messageListContainerView=_messageListContainerView; +@property(retain, nonatomic) NSArray *colorList; // @synthesize colorList=_colorList; +@property(nonatomic) BOOL isPlainTextOfFixedWidth; // @synthesize isPlainTextOfFixedWidth=_isPlainTextOfFixedWidth; +@property(nonatomic) BOOL isQuotedTextColored; // @synthesize isQuotedTextColored=_isQuotedTextColored; +@property(retain, nonatomic) NSFont *fixedWidthFont; // @synthesize fixedWidthFont=_fixedWidthFont; +@property(retain, nonatomic) NSFont *messageFont; // @synthesize messageFont=_messageFont; +@property(retain, nonatomic) NSFont *messageListFont; // @synthesize messageListFont=_messageListFont; +- (void).cxx_destruct; +- (void)_setFont:(id)arg1 forPreferenceContainer:(id)arg2; +- (id)_getFontForPreferenceContainer:(id)arg1; +- (unsigned long long)validModesForFontPanel:(id)arg1; +- (void)_colorPicked:(id)arg1; +- (void)colorPopupChanged:(id)arg1; +- (void)colorQuotesButtonClicked:(id)arg1; +- (void)_updateColorList; +- (void)_updateExampleTextView; +- (void)_setColor:(id)arg1 forPopup:(id)arg2; +- (void)_setOtherColor:(id)arg1 forPopup:(id)arg2; +- (void)changeFont:(id)arg1; +- (double)_sizeContainerView:(id)arg1; +- (id)_containerViewForFontPreference:(long long)arg1; +- (void)toggleUseFixedWidthFont:(id)arg1; +- (void)toggleColorQuotedText:(id)arg1; +- (void)selectFont:(id)arg1; +- (void)moduleWillBeRemoved; +- (void)_populateFontPrefContainers; +- (id)_sampleFontForFont:(id)arg1; +@property(readonly, nonatomic) NSFont *fixedWidthSampleFont; +@property(readonly, nonatomic) NSFont *messageSampleFont; +@property(readonly, nonatomic) NSFont *messageListSampleFont; +- (void)_replaceExampleTextView; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (BOOL)isResizable; +- (void)_layoutFromFontPreference:(long long)arg1; +- (void)_updateAutoresizeFlags:(long long)arg1; +- (void)_growWindowVertically:(double)arg1 animate:(BOOL)arg2; +- (void)initializeFromDefaults; +- (id)imageForPreferenceNamed:(id)arg1; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FullScreenModalCapableWindow.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FullScreenModalCapableWindow.h new file mode 100644 index 00000000..06084222 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FullScreenModalCapableWindow.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@class NSResponder, WindowTransformAnimation; + +@interface FullScreenModalCapableWindow : NSWindow +{ + BOOL _disableFrameConstraint; + BOOL _isModal; + BOOL _shouldNotSaveFrame; + BOOL _hasTransform; + WindowTransformAnimation *_windowTransformAnimation; + NSResponder *_nextFirstResponder; +} + +@property(nonatomic) BOOL hasTransform; // @synthesize hasTransform=_hasTransform; +@property(nonatomic) BOOL shouldNotSaveFrame; // @synthesize shouldNotSaveFrame=_shouldNotSaveFrame; +@property(nonatomic) BOOL isModal; // @synthesize isModal=_isModal; +@property(retain, nonatomic) NSResponder *nextFirstResponder; // @synthesize nextFirstResponder=_nextFirstResponder; +@property(nonatomic) BOOL disableFrameConstraint; // @synthesize disableFrameConstraint=_disableFrameConstraint; +@property(nonatomic) __weak WindowTransformAnimation *windowTransformAnimation; // @synthesize windowTransformAnimation=_windowTransformAnimation; +- (void).cxx_destruct; +- (void)setIdentityTransform; +- (void)setTransformForAnimation:(struct CGAffineTransform)arg1 anchorPoint:(struct CGPoint)arg2; +- (BOOL)isMainWindow; +- (BOOL)canEnterFullScreenMode; +- (void)makeKeyAndOrderFrontForAnimation; +- (void)makeKeyAndOrderFront:(id)arg1; +- (void)orderFront:(id)arg1; +- (void)saveFrameUsingName:(id)arg1; +- (void)orderOut:(id)arg1; +- (struct CGRect)constrainFrameRect:(struct CGRect)arg1 toScreen:(id)arg2; +- (void)keyDown:(id)arg1; +- (BOOL)makeFirstResponder:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FullScreenWindowController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FullScreenWindowController.h new file mode 100644 index 00000000..42153f49 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/FullScreenWindowController.h @@ -0,0 +1,84 @@ +/* + * 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 "NSAnimationDelegate.h" + +@class CALayer, MailWindowShadowLayer, MessageViewer, ModalDimmingWindow, NSString, NSWindow; + +@interface FullScreenWindowController : NSObject +{ + MessageViewer *_messageViewer; + struct CGImage *_mainWindowNonFullScreenSnapshot; + struct CGImage *_modalWindowNonFullScreenSnapshot; + BOOL _isPerformingAnimation; + ModalDimmingWindow *_modalDimmingWindow; + id _modalWindowDelegate; + NSWindow *_coverExitAnimationWindow; + CALayer *_mainWindowAnimationLayer; + CALayer *_modalWindowAnimationLayer; + MailWindowShadowLayer *_mainShadowLayer; + MailWindowShadowLayer *_modalShadowLayer; + struct CGRect _nonFullScreenWindowFrame; +} + ++ (void)waitForFullScreenSpaceSwitchIfNeeded; ++ (BOOL)isFrontmostMessageViewerInFullScreen; ++ (BOOL)preventCreationOfViewerOfClass:(Class)arg1; ++ (BOOL)preventCreationOfEditorOfClass:(Class)arg1 withType:(unsigned long long)arg2; +@property(nonatomic) struct CGRect nonFullScreenWindowFrame; // @synthesize nonFullScreenWindowFrame=_nonFullScreenWindowFrame; +@property(retain, nonatomic) MailWindowShadowLayer *modalShadowLayer; // @synthesize modalShadowLayer=_modalShadowLayer; +@property(retain, nonatomic) MailWindowShadowLayer *mainShadowLayer; // @synthesize mainShadowLayer=_mainShadowLayer; +@property(retain, nonatomic) CALayer *modalWindowAnimationLayer; // @synthesize modalWindowAnimationLayer=_modalWindowAnimationLayer; +@property(retain, nonatomic) CALayer *mainWindowAnimationLayer; // @synthesize mainWindowAnimationLayer=_mainWindowAnimationLayer; +@property(retain, nonatomic) NSWindow *coverExitAnimationWindow; // @synthesize coverExitAnimationWindow=_coverExitAnimationWindow; +@property(retain, nonatomic) id modalWindowDelegate; // @synthesize modalWindowDelegate=_modalWindowDelegate; +@property(retain, nonatomic) ModalDimmingWindow *modalDimmingWindow; // @synthesize modalDimmingWindow=_modalDimmingWindow; +@property(nonatomic) BOOL isPerformingAnimation; // @synthesize isPerformingAnimation=_isPerformingAnimation; +- (void).cxx_destruct; +- (void)_exitAnimationFinished; +- (void)startExitAnimationWithDuration:(double)arg1; +- (void)_animateModalWindow; +- (void)_animateMainWindow; +- (id)prepareExitAnimation; +- (struct CGImage *)_newModalWindowSnapshot; +- (void)_closeAnimationFinished; +- (void)animationDidEnd:(id)arg1; +- (void)animationDidStop:(id)arg1; +- (BOOL)animationShouldStart:(id)arg1; +- (void)_animationDidEndOrStop:(id)arg1; +- (void)_openAnimationFinished; +- (id)_operationNameForAnimationType:(long long)arg1; +- (void)finishedReplyAnimation; +- (void)attachModalWindowWithDelegate:(id)arg1; +- (void)willAttachModalWindowWithDelegate:(id)arg1; +- (void)windowWillEnterFullScreen; +- (void)_setupDimmingWindow; +- (void)_cleanUpAfterModalWindowClose; +- (void)_closeModalWindow; +- (void)_modalWindowWillClose:(id)arg1; +- (struct CGRect)modalWindowRectWithParentWindow:(id)arg1; +- (BOOL)isModalWindowPresent; +- (void)_prepareModalWindowForNonFullScreen; +- (double)_titleBarHeight; +- (void)prepareWindowForFullScreen:(id)arg1; +- (void)presentModalWindowWithDelegate:(id)arg1; +- (void)closeModalWindowForcibly:(BOOL)arg1 animate:(BOOL)arg2 animationType:(long long)arg3; +- (void)closeModalWindowForcibly:(BOOL)arg1 animate:(BOOL)arg2; +- (BOOL)_isFullScreen; +- (id)_parentWindow; +@property(nonatomic) __weak MessageViewer *messageViewer; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/GeneralPreferences.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/GeneralPreferences.h new file mode 100644 index 00000000..b2b6336b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/GeneralPreferences.h @@ -0,0 +1,73 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "SoundPopUpButtonDelegate.h" + +@class DefaultApplicationPopUpButton, MailboxesChooser, NSButton, NSPopUpButton, NSString, SoundPopUpButton; + +@interface GeneralPreferences : NSPreferencesModule +{ + NSPopUpButton *_fetchFrequencyPopup; + SoundPopUpButton *_theNewMailSoundPopup; + NSButton *_playMailSoundsCheckbox; + MailboxesChooser *_dockBadgeMailboxesChooser; + MailboxesChooser *_userNotificationMailboxesChooser; + DefaultApplicationPopUpButton *_defaultMailClientPopUp; + NSButton *_indexDecryptedMessagesButton; + NSButton *_indexTrashButton; + NSButton *_indexJunkButton; + NSPopUpButton *_downloadFolderPopup; + NSPopUpButton *_addInvitationsPopup; + NSPopUpButton *_attachmentDeletionPopup; +} + +@property(nonatomic) __weak NSPopUpButton *attachmentDeletionPopup; // @synthesize attachmentDeletionPopup=_attachmentDeletionPopup; +@property(nonatomic) __weak NSPopUpButton *addInvitationsPopup; // @synthesize addInvitationsPopup=_addInvitationsPopup; +@property(nonatomic) __weak NSPopUpButton *downloadFolderPopup; // @synthesize downloadFolderPopup=_downloadFolderPopup; +@property(nonatomic) __weak NSButton *indexJunkButton; // @synthesize indexJunkButton=_indexJunkButton; +@property(nonatomic) __weak NSButton *indexTrashButton; // @synthesize indexTrashButton=_indexTrashButton; +@property(nonatomic) __weak NSButton *indexDecryptedMessagesButton; // @synthesize indexDecryptedMessagesButton=_indexDecryptedMessagesButton; +@property(nonatomic) __weak DefaultApplicationPopUpButton *defaultMailClientPopUp; // @synthesize defaultMailClientPopUp=_defaultMailClientPopUp; +@property(retain, nonatomic) MailboxesChooser *userNotificationMailboxesChooser; // @synthesize userNotificationMailboxesChooser=_userNotificationMailboxesChooser; +@property(retain, nonatomic) MailboxesChooser *dockBadgeMailboxesChooser; // @synthesize dockBadgeMailboxesChooser=_dockBadgeMailboxesChooser; +@property(nonatomic) __weak NSButton *playMailSoundsCheckbox; // @synthesize playMailSoundsCheckbox=_playMailSoundsCheckbox; +@property(nonatomic) __weak SoundPopUpButton *theNewMailSoundPopup; // @synthesize theNewMailSoundPopup=_theNewMailSoundPopup; +@property(nonatomic) __weak NSPopUpButton *fetchFrequencyPopup; // @synthesize fetchFrequencyPopup=_fetchFrequencyPopup; +- (void).cxx_destruct; +- (void)attachmentDeletionPopupChanged:(id)arg1; +- (void)addInvitationsPopupChanged:(id)arg1; +- (void)chooseNewDownloadFolder:(id)arg1; +- (void)userNotificationPopupChanged:(id)arg1; +- (void)dockBadgePopupChanged:(id)arg1; +- (void)playSoundsClicked:(id)arg1; +- (id)titleForSoundFile:(id)arg1; +- (void)newMailSoundDidChange:(id)arg1; +- (void)indexJunkButtonClicked:(id)arg1; +- (void)indexTrashButtonClicked:(id)arg1; +- (void)indexDecryptedMessagesButtonClicked:(id)arg1; +- (void)fetchFrequencyChanged:(id)arg1; +- (void)initializeFromDefaults; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (void)dealloc; +- (void)awakeFromNib; +- (void)_setupUserNotificationPopup; +- (void)_setupDockCountPopup; +- (void)_addInvitationsBehaviorChanged:(id)arg1; +- (void)_updateAddInvitationsPopup; +- (BOOL)isResizable; +- (id)imageForPreferenceNamed:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/GenericAttachmentFetcher.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/GenericAttachmentFetcher.h new file mode 100644 index 00000000..186cbfb1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/GenericAttachmentFetcher.h @@ -0,0 +1,45 @@ +/* + * 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 "MCActivityTarget.h" + +@class NSArray, NSMutableSet, NSString; + +@interface GenericAttachmentFetcher : NSObject +{ + NSMutableSet *_attachmentsBeingDownloaded; + NSArray *_attachments; + GenericAttachmentFetcher *_me; +} + +@property(retain, nonatomic) GenericAttachmentFetcher *me; // @synthesize me=_me; +@property(copy, nonatomic) NSArray *attachments; // @synthesize attachments=_attachments; +- (void).cxx_destruct; +- (double)temporaryFolderTimeout; +- (void)didSaveAttachment:(id)arg1 toPath:(id)arg2; +- (void)didSaveAttachments:(id)arg1 paths:(id)arg2; +- (void)downloadedAllAttachments; +- (void)didFinishBackgroundLoadOfAttachment:(id)arg1; +- (void)beginSaveOfAttachments:(id)arg1 toTemporaryFolderWithName:(id)arg2 taskName:(id)arg3; +- (void)_saveAttachments:(id)arg1 itemManager:(id)arg2; +- (id)downloadedAttachments; +- (void)cancelBackgroundLoad; +- (void)beginBackgroundLoad; +- (void)_downloadCompleted:(id)arg1; +- (id)init; +- (id)initWithAttachments:(id)arg1; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderDividerView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderDividerView.h new file mode 100644 index 00000000..32507a16 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderDividerView.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSVisualEffectView.h" + +@class NSImageView; + +@interface HeaderDividerView : NSVisualEffectView +{ + NSImageView *_snapshotView; +} + +@property(nonatomic) __weak NSImageView *snapshotView; // @synthesize snapshotView=_snapshotView; +- (void).cxx_destruct; +- (void)mui_didCacheDisplayInRect; +- (void)mui_prepareToCacheDisplayInRect:(struct CGRect)arg1 completionHandler:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderLayoutManagerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderLayoutManagerDelegate-Protocol.h new file mode 100644 index 00000000..510efbcd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderLayoutManagerDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSLayoutManagerDelegate-Protocol.h" + +@protocol HeaderLayoutManagerDelegate + +@optional +- (void)layoutManager:(id)arg1 textContainerChangedGeometry:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderTextContainer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderTextContainer.h new file mode 100644 index 00000000..f89a71db --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderTextContainer.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextContainer.h" + +@class NSMutableSet; + +@interface HeaderTextContainer : NSTextContainer +{ + NSMutableSet *_views; +} + +- (void).cxx_destruct; +- (BOOL)containsPoint:(struct CGPoint)arg1; +- (struct CGRect)lineFragmentRectForProposedRect:(struct CGRect)arg1 sweepDirection:(unsigned long long)arg2 movementDirection:(unsigned long long)arg3 remainingRect:(struct CGRect *)arg4; +- (BOOL)isSimpleRectangularTextContainer; +- (void)_textContainerChangedGeometry:(id)arg1; +- (void)removeView:(id)arg1; +- (void)addView:(id)arg1; +- (void)setContainerSize:(struct CGSize)arg1; +- (void)dealloc; +- (id)initWithContainerSize:(struct CGSize)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderTextView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderTextView.h new file mode 100644 index 00000000..213d650e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderTextView.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextView.h" + +@interface HeaderTextView : NSTextView +{ + id _attachmentCell; + struct CGSize _contentSize; + struct CGRect _attachmentCellRect; +} + +@property(nonatomic) struct CGSize contentSize; // @synthesize contentSize=_contentSize; +@property(nonatomic) struct CGRect attachmentCellRect; // @synthesize attachmentCellRect=_attachmentCellRect; +@property(retain, nonatomic) id attachmentCell; // @synthesize attachmentCell=_attachmentCell; +- (void).cxx_destruct; +- (BOOL)writeSelectionToPasteboard:(id)arg1 type:(id)arg2; +- (id)_selectedAttributedString; +- (id)writablePasteboardTypes; +- (void)mouseMoved:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)keyDown:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)rightMouseDown:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)cursorUpdate:(id)arg1; +- (id)_attachmentCellForCharacterAtIndex:(unsigned long long)arg1; +- (unsigned long long)_glyphIndexForPoint:(struct CGPoint)arg1 glyphRect:(struct CGRect *)arg2; +- (void)resetCursorRects; +- (struct CGSize)intrinsicContentSize; +- (void)setConstrainedFrameSize:(struct CGSize)arg1; +- (BOOL)respondsToSelector:(SEL)arg1; +- (BOOL)autoscroll:(id)arg1; +- (BOOL)resignFirstResponder; +- (BOOL)canBecomeKeyView; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderTruncationAttachmentCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderTruncationAttachmentCell.h new file mode 100644 index 00000000..e6d48558 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderTruncationAttachmentCell.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextAttachmentCell.h" + +@interface HeaderTruncationAttachmentCell : NSTextAttachmentCell +{ + BOOL _truncatesAllRecipients; + unsigned long long _truncatedRecipients; + double _fontSize; +} + +@property(nonatomic) double fontSize; // @synthesize fontSize=_fontSize; +- (void)_updateTitle; +@property(nonatomic) BOOL truncatesAllRecipients; +@property(nonatomic) unsigned long long truncatedRecipients; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (struct CGRect)cellFrameForTextContainer:(id)arg1 proposedLineFragment:(struct CGRect)arg2 glyphPosition:(struct CGPoint)arg3 characterIndex:(unsigned long long)arg4; +- (struct CGSize)cellSizeForBounds:(struct CGRect)arg1; +- (struct CGSize)cellSize; +- (struct CGPoint)cellBaselineOffset; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (id)_textAttributes; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderView.h new file mode 100644 index 00000000..ac60e1be --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderView.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "NSAccessibilityGroup.h" + +@class NSString; + +@interface HeaderView : NSView +{ +} + +- (BOOL)isFlipped; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderViewController.h new file mode 100644 index 00000000..3f24b01a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeaderViewController.h @@ -0,0 +1,103 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "HeaderLayoutManagerDelegate-Protocol.h" +#import "NSTokenAttachmentDelegate-Protocol.h" + +@class ConversationMember, HeaderTextContainer, HeaderTruncationAttachmentCell, NSButton, NSImageView, NSLayoutConstraint, NSMutableDictionary, NSString, NSTextAttachment, NSTextField, NSTextView, NSView; + +@interface HeaderViewController : NSViewController +{ + NSMutableDictionary *_displayStringsByHeaderKey; + NSTextField *_dateView; + NSTextField *_mailboxView; + NSButton *_detailsLink; + BOOL _expandRecipients; + BOOL _showVIPButton; + BOOL _alwaysShowMailboxName; + BOOL _showingAllHeaders; + NSView *_dividerView; + NSButton *_unreadVIPButton; + NSImageView *_senderImageView; + HeaderTextContainer *_textContainer; + NSTextView *_textView; + HeaderTruncationAttachmentCell *_truncationCell; + NSTextAttachment *_flagTextAttachment; + NSTextAttachment *_attachmentTextAttachment; + NSLayoutConstraint *_dateViewTopOffset; +} + ++ (id)_mailboxIconString; ++ (BOOL)automaticallyNotifiesObserversOfShowingAllHeaders; +@property(retain, nonatomic) NSLayoutConstraint *dateViewTopOffset; // @synthesize dateViewTopOffset=_dateViewTopOffset; +@property(readonly, nonatomic) NSTextAttachment *attachmentTextAttachment; // @synthesize attachmentTextAttachment=_attachmentTextAttachment; +@property(readonly, nonatomic) NSTextAttachment *flagTextAttachment; // @synthesize flagTextAttachment=_flagTextAttachment; +@property(retain, nonatomic) HeaderTruncationAttachmentCell *truncationCell; // @synthesize truncationCell=_truncationCell; +@property(nonatomic) __weak NSView *dividerView; // @synthesize dividerView=_dividerView; +//- (void).cxx_destruct; +- (id)_displayStringForTruncationCell; +- (void)viewerPreferencesChanged:(id)arg1; +- (void)toggleVIP:(id)arg1; +- (void)showSignerCertificate:(id)arg1; +- (void)draggingSession:(id)arg1 endedAtPoint:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (void)draggingSession:(id)arg1 movedToPoint:(struct CGPoint)arg2; +- (void)draggingSession:(id)arg1 willBeginAtPoint:(struct CGPoint)arg2; +- (unsigned long long)draggingSession:(id)arg1 sourceOperationMaskForDraggingContext:(long long)arg2; +- (id)menuForTokenAttachment:(id)arg1; +- (BOOL)hasMenuForTokenAttachment:(id)arg1; +- (BOOL)textView:(id)arg1 writeCell:(id)arg2 atIndex:(unsigned long long)arg3 toPasteboard:(id)arg4 type:(id)arg5; +- (id)textView:(id)arg1 writablePasteboardTypesForCell:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)textView:(id)arg1 clickedOnCell:(id)arg2 inRect:(struct CGRect)arg3 atIndex:(unsigned long long)arg4; +- (id)layoutManager:(id)arg1 shouldUseSelectedTextAttributes:(id)arg2 atCharacterIndex:(unsigned long long)arg3 effectiveRange:(struct _NSRange *)arg4; +- (void)layoutManager:(id)arg1 textContainerChangedGeometry:(id)arg2; +- (void)_insertAddressesInRange:(struct _NSRange)arg1 toLines:(unsigned long long)arg2 startingWithTruncatedItems:(id)arg3; +- (void)_truncateAddressesInRange:(struct _NSRange)arg1 toLines:(unsigned long long)arg2 startingWithTruncatedItems:(id)arg3; +- (void)_layoutTextStorageIfNeeded; +- (void)_updateUnreadVIPButton; +- (void)_updateTextStorageWithHardInvalidation:(BOOL)arg1; +- (BOOL)_shouldShowMailboxName; +- (void)_updateMailboxView; +- (void)_updateSenderImageView; +- (void)_updateDateView; +- (void)_updateFlagTextAttachment; +- (void)_updateAttachmentTextAttachment; +- (void)_setImage:(id)arg1 forTextAttachmentCell:(id)arg2; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_unregisterKVOForRepresentedObject:(id)arg1; +- (void)_registerKVOForRepresentedObject:(id)arg1; +- (void)mouseDragged:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)cursorUpdate:(id)arg1; +- (id)_messageViewer; +- (void)_installConstraints; +- (void)viewDidLoad; +@property(retain) ConversationMember *representedObject; +- (void)_setShowingAllHeaders:(BOOL)arg1 andUpdateTextStorage:(BOOL)arg2; +@property(nonatomic) BOOL showingAllHeaders; // @synthesize showingAllHeaders=_showingAllHeaders; +@property(nonatomic) BOOL alwaysShowMailboxName; // @synthesize alwaysShowMailboxName=_alwaysShowMailboxName; +@property(nonatomic) BOOL showVIPButton; // @synthesize showVIPButton=_showVIPButton; +@property(nonatomic) BOOL expandRecipients; // @synthesize expandRecipients=_expandRecipients; +- (void)_hideDetailsClicked:(id)arg1; +@property(readonly, nonatomic) NSButton *detailsLink; +@property(readonly, nonatomic) NSTextField *mailboxView; +@property(readonly, nonatomic) NSTextField *dateView; +@property(readonly, nonatomic) NSTextView *textView; // @synthesize textView=_textView; +@property(readonly, nonatomic) HeaderTextContainer *textContainer; // @synthesize textContainer=_textContainer; +@property(readonly, nonatomic) NSButton *unreadVIPButton; // @synthesize unreadVIPButton=_unreadVIPButton; +@property(readonly, nonatomic) NSImageView *senderImageView; // @synthesize senderImageView=_senderImageView; +- (void)dealloc; +- (void)_headerViewControllerCommonInit; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; +- (id)initWithCoder:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeadersEditor.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeadersEditor.h new file mode 100644 index 00000000..cae68538 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HeadersEditor.h @@ -0,0 +1,174 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "AccountStatusDataSourceDelegate-Protocol.h" + +@class AccountStatusDataSource, ComposeHeaderRowView, DocumentEditor, MUIAddressField, NSButtonCell, NSMenu, NSMutableArray, NSPopUpButton, NSSegmentedControl, NSStackView, NSString, NSTextField, NSView; + +@interface HeadersEditor : NSObject +{ + NSMutableArray *_accessoryViewOwners; + BOOL _hasChanges; + BOOL _registeredForAnimationObservation; + BOOL _messageIsToBeSigned; + BOOL _messageIsToBeEncrypted; + BOOL _canSign; + BOOL _canEncrypt; + DocumentEditor *_documentEditor; + MUIAddressField *_toField; + MUIAddressField *_ccField; + MUIAddressField *_bccField; + MUIAddressField *_replyToField; + NSTextField *_subjectField; + NSTextField *_toTitle; + NSTextField *_ccTitle; + NSTextField *_bccTitle; + NSTextField *_replyToTitle; + NSTextField *_subjectTitle; + NSTextField *_fromLabel; + NSPopUpButton *_fromPopup; + NSTextField *_signatureLabel; + NSPopUpButton *_signaturePopup; + NSPopUpButton *_priorityPopup; + NSView *_signBlock; + NSSegmentedControl *_signButton; + NSSegmentedControl *_encryptButton; + NSStackView *_contentStack; + ComposeHeaderRowView *_ccRow; + ComposeHeaderRowView *_bccRow; + ComposeHeaderRowView *_replyToRow; + NSStackView *_subjectStack; + ComposeHeaderRowView *_fromRow; + NSStackView *_fromStack; + ComposeHeaderRowView *_statusRow; + NSMenu *_disclosureMenu; + AccountStatusDataSource *_deliveryASDS; + NSButtonCell *_encryptCell; + NSButtonCell *_signCell; +} + ++ (id)keyPathsForValuesAffectingDeliveryAccount; +@property(nonatomic) BOOL canEncrypt; // @synthesize canEncrypt=_canEncrypt; +@property(nonatomic) BOOL canSign; // @synthesize canSign=_canSign; +@property(nonatomic) __weak NSButtonCell *signCell; // @synthesize signCell=_signCell; +@property(nonatomic) __weak NSButtonCell *encryptCell; // @synthesize encryptCell=_encryptCell; +@property(nonatomic) BOOL registeredForAnimationObservation; // @synthesize registeredForAnimationObservation=_registeredForAnimationObservation; +@property(retain, nonatomic) AccountStatusDataSource *deliveryASDS; // @synthesize deliveryASDS=_deliveryASDS; +@property(retain, nonatomic) NSMenu *disclosureMenu; // @synthesize disclosureMenu=_disclosureMenu; +@property(nonatomic) __weak ComposeHeaderRowView *statusRow; // @synthesize statusRow=_statusRow; +@property(nonatomic) __weak NSStackView *fromStack; // @synthesize fromStack=_fromStack; +@property(nonatomic) __weak ComposeHeaderRowView *fromRow; // @synthesize fromRow=_fromRow; +@property(nonatomic) __weak NSStackView *subjectStack; // @synthesize subjectStack=_subjectStack; +@property(nonatomic) __weak ComposeHeaderRowView *replyToRow; // @synthesize replyToRow=_replyToRow; +@property(nonatomic) __weak ComposeHeaderRowView *bccRow; // @synthesize bccRow=_bccRow; +@property(nonatomic) __weak ComposeHeaderRowView *ccRow; // @synthesize ccRow=_ccRow; +@property(nonatomic) __weak NSStackView *contentStack; // @synthesize contentStack=_contentStack; +@property(nonatomic) __weak NSSegmentedControl *encryptButton; // @synthesize encryptButton=_encryptButton; +@property(nonatomic) __weak NSSegmentedControl *signButton; // @synthesize signButton=_signButton; +@property(nonatomic) __weak NSView *signBlock; // @synthesize signBlock=_signBlock; +@property(nonatomic) __weak NSPopUpButton *priorityPopup; // @synthesize priorityPopup=_priorityPopup; +@property(nonatomic) __weak NSPopUpButton *signaturePopup; // @synthesize signaturePopup=_signaturePopup; +@property(nonatomic) __weak NSTextField *signatureLabel; // @synthesize signatureLabel=_signatureLabel; +@property(nonatomic) __weak NSPopUpButton *fromPopup; // @synthesize fromPopup=_fromPopup; +@property(nonatomic) __weak NSTextField *fromLabel; // @synthesize fromLabel=_fromLabel; +@property(nonatomic) __weak NSTextField *subjectTitle; // @synthesize subjectTitle=_subjectTitle; +@property(nonatomic) __weak NSTextField *replyToTitle; // @synthesize replyToTitle=_replyToTitle; +@property(nonatomic) __weak NSTextField *bccTitle; // @synthesize bccTitle=_bccTitle; +@property(nonatomic) __weak NSTextField *ccTitle; // @synthesize ccTitle=_ccTitle; +@property(nonatomic) __weak NSTextField *toTitle; // @synthesize toTitle=_toTitle; +@property(nonatomic) __weak NSTextField *subjectField; // @synthesize subjectField=_subjectField; +@property(retain, nonatomic) MUIAddressField *replyToField; // @synthesize replyToField=_replyToField; +@property(retain, nonatomic) MUIAddressField *bccField; // @synthesize bccField=_bccField; +@property(retain, nonatomic) MUIAddressField *ccField; // @synthesize ccField=_ccField; +@property(retain, nonatomic) MUIAddressField *toField; // @synthesize toField=_toField; +@property(nonatomic) BOOL hasChanges; // @synthesize hasChanges=_hasChanges; +@property(nonatomic) __weak DocumentEditor *documentEditor; // @synthesize documentEditor=_documentEditor; +//- (void).cxx_destruct; +- (void)_updateFullWidthSeparatorState; +- (void)stackView:(id)arg1 willDetachViews:(id)arg2; +- (void)stackView:(id)arg1 didReattachViews:(id)arg2; +- (id)_newSenderMarkupStringIncludeBrackets:(BOOL)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)_updateSignButton; +@property(nonatomic) BOOL messageIsToBeSigned; // @synthesize messageIsToBeSigned=_messageIsToBeSigned; +- (void)_updateEncryptButton; +@property(nonatomic) BOOL messageIsToBeEncrypted; // @synthesize messageIsToBeEncrypted=_messageIsToBeEncrypted; +- (void)prepareToCloseWindow; +- (id)_newContentsForClearedField:(id)arg1; +- (void)_clearField:(id)arg1; +- (void)changeSignature:(id)arg1; +- (void)editSignatures:(id)arg1; +- (void)_toggleEncryption; +- (void)securityControlChanged:(id)arg1; +- (void)setMessagePriority:(id)arg1; +- (void)changeFromHeader:(id)arg1; +- (void)_changeHeaderField:(id)arg1; +- (void)_accountStatusDidChange:(id)arg1; +- (id)mailAccount; +- (void)setDeliveryAccount:(id)arg1; +- (void)_setDynamicDeliveryAccountForAccount:(id)arg1; +- (id)deliveryAccount; +- (void)setSelectedAccount:(id)arg1; +- (void)toggleAccountLock:(id)arg1; +- (void)editServerList:(id)arg1 selectedAccount:(id)arg2; +- (BOOL)isOkayToSaveMessage:(id)arg1; +- (BOOL)canSignFromAnyAccount; +- (BOOL)messageHasRecipients; +- (void)changeSignatureFrom:(id)arg1 to:(id)arg2; +- (void)setCheckGrammarWithSpelling:(BOOL)arg1; +- (void)setInlineSpellCheckingEnabled:(BOOL)arg1; +- (void)appendAddressesForToHeader:(id)arg1; +- (void)setHeaders:(id)arg1; +- (BOOL)_headerFieldIsEmpty:(id)arg1; +- (void)_subjectChanged; +- (void)loadHeadersFromBackEnd:(id)arg1; +- (id)_headerKeyForView:(id)arg1; +- (BOOL)_populateField:(id)arg1 withAddressesForKey:(id)arg2; +- (void)_setupAddressField:(id)arg1; +- (void)setAGoodFirstResponder; +- (BOOL)_alwaysBCCMyself; +- (BOOL)_alwaysCCMyself; +- (void)_updateCcOrBccMyselfFieldWithSender:(id)arg1 oldSender:(id)arg2; +- (void)_updateSenderDomainWithSender:(id)arg1; +- (void)updateDeliveryAccountControl:(id)arg1; +- (void)_updateSignatureControlOverridingExistingSignature:(BOOL)arg1; +- (void)_updateFromControl; +- (id)_fromDisplayAddressFromFullAddress:(id)arg1; +- (BOOL)_shouldShowFromView; +- (void)_updateSecurityStateInBackgroundForRecipients:(id)arg1 sender:(id)arg2; +- (void)_updateSecurityControls; +- (void)_updatePriorityPopUp; +- (void)controlTextDidChange:(id)arg1; +- (void)controlTextDidEndEditing:(id)arg1; +- (void)controlTextDidBeginEditing:(id)arg1; +- (void)_webViewDidLoadStationery:(id)arg1; +- (void)_accountInfoDidChange:(id)arg1; +- (void)_mailAccountsDidChange:(id)arg1; +- (void)_composePreferencesChanged:(id)arg1; +- (void)_signaturePreferencesChanged:(id)arg1; +- (void)_emailAliasesDidChange:(id)arg1; +- (void)configureButtonsAndPopUps; +- (double)_rowAnimationDuration; +- (void)_animateHeaderRow:(id)arg1 toVisible:(BOOL)arg2; +- (void)_setHeaderRow:(id)arg1 toVisible:(BOOL)arg2 animate:(BOOL)arg3; +- (void)_setVisibilityForEncryptionAndSigning:(BOOL)arg1; +- (void)_setVisibilityForSignatureView:(BOOL)arg1; +- (void)_setVisibilityForFromView:(BOOL)arg1; +- (void)_setVisibilityForPriorityControl:(BOOL)arg1; +- (void)setAllHeaderFieldsToEnabled:(BOOL)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)awakeFromNib; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HyperlinkButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HyperlinkButton.h new file mode 100644 index 00000000..ab3a46da --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HyperlinkButton.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface HyperlinkButton : NSButton +{ +} + +- (void)resetCursorRects; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HyperlinkEditor.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HyperlinkEditor.h new file mode 100644 index 00000000..cd0c70c0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/HyperlinkEditor.h @@ -0,0 +1,41 @@ +/* + * 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" + +@class DOMHTMLAnchorElement, DOMNode, EditingMessageWebView, NSButton, NSPanel, NSString, NSTextField; + +@interface HyperlinkEditor : NSObject +{ + NSPanel *_linkSheet; + NSTextField *_linkTextField; + NSButton *_okButton; + NSButton *_removeButton; + EditingMessageWebView *_webView; + id _delegate; + DOMHTMLAnchorElement *_selectedAnchor; + DOMNode *_selectionContents; + NSString *_replacementLink; +} + +@property(copy, nonatomic) NSString *replacementLink; // @synthesize replacementLink=_replacementLink; +@property(retain, nonatomic) DOMNode *selectionContents; // @synthesize selectionContents=_selectionContents; +@property(retain, nonatomic) DOMHTMLAnchorElement *selectedAnchor; // @synthesize selectedAnchor=_selectedAnchor; +@property(readonly, nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +@property(readonly, nonatomic) __weak EditingMessageWebView *webView; // @synthesize webView=_webView; +@property(nonatomic) __weak NSButton *removeButton; // @synthesize removeButton=_removeButton; +@property(nonatomic) __weak NSButton *okButton; // @synthesize okButton=_okButton; +@property(nonatomic) __weak NSTextField *linkTextField; // @synthesize linkTextField=_linkTextField; +@property(retain, nonatomic) NSPanel *linkSheet; // @synthesize linkSheet=_linkSheet; +- (void).cxx_destruct; +- (void)controlTextDidChange:(id)arg1; +- (void)orderOutPanel:(id)arg1; +- (void)removeSelectedLink; +- (void)editLink; +- (id)initForWebView:(id)arg1 delegate:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPAccountDetails.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPAccountDetails.h new file mode 100644 index 00000000..f0d6e41c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPAccountDetails.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "AccountDetails.h" + +@class NSButton, NSTextField; + +@interface IMAPAccountDetails : AccountDetails +{ + BOOL _warnedAboutCachingAndIndexing; + NSButton *_cachePolicyCheckbox; + NSButton *_compactWhenClosing; + NSTextField *_serverPathPrefix; + NSButton *_useIDLECommand; +} + +@property(nonatomic) BOOL warnedAboutCachingAndIndexing; // @synthesize warnedAboutCachingAndIndexing=_warnedAboutCachingAndIndexing; +@property(nonatomic) __weak NSButton *useIDLECommand; // @synthesize useIDLECommand=_useIDLECommand; +@property(nonatomic) __weak NSTextField *serverPathPrefix; // @synthesize serverPathPrefix=_serverPathPrefix; +@property(nonatomic) __weak NSButton *compactWhenClosing; // @synthesize compactWhenClosing=_compactWhenClosing; +@property(nonatomic) __weak NSButton *cachePolicyCheckbox; // @synthesize cachePolicyCheckbox=_cachePolicyCheckbox; +- (void).cxx_destruct; +- (void)cachePolicyChanged:(id)arg1; +- (void)didDisplayTabViewItem:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (void)setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (void)setupUIFromValuesInAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPAccountSpecialMailboxes.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPAccountSpecialMailboxes.h new file mode 100644 index 00000000..3b7d0bf6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPAccountSpecialMailboxes.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "RemoteStoreAccountSpecialMailboxes.h" + +@class NSButton; + +@interface IMAPAccountSpecialMailboxes : RemoteStoreAccountSpecialMailboxes +{ + BOOL _moveDeletedMessagesToTrash; + NSButton *_trashCheckbox; +} + +@property(nonatomic) __weak NSButton *trashCheckbox; // @synthesize trashCheckbox=_trashCheckbox; +@property(nonatomic) BOOL moveDeletedMessagesToTrash; // @synthesize moveDeletedMessagesToTrash=_moveDeletedMessagesToTrash; +- (void).cxx_destruct; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (BOOL)setupAccountFromValuesInUI:(id)arg1; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPMailboxes.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPMailboxes.h new file mode 100644 index 00000000..49b36706 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPMailboxes.h @@ -0,0 +1,97 @@ +/* + * 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 "AccountInfoTabOwner.h" +#import "MCActivityTarget.h" +#import "NSOutlineViewDataSource.h" +#import "NSOutlineViewDelegate.h" + +@class IMAPGateway, MCActivityMonitor, MCInvocationQueue, MFIMAPAccount, NSArray, NSButton, NSImageView, NSOutlineView, NSPredicate, NSProgressIndicator, NSSearchField, NSString, NSTextField, NSView, NSWindow; + +@interface IMAPMailboxes : NSObject +{ + MCActivityMonitor *_mailboxListMonitor; + NSWindow *_window; + NSView *_mailboxesView; + NSSearchField *_searchField; + NSOutlineView *_mailboxesOutline; + NSButton *_subscribeButton; + NSButton *_unsubscribeButton; + NSProgressIndicator *_fetchProgressIndicator; + NSTextField *_fetchStatusField; + NSImageView *_statusImageView; + MFIMAPAccount *_account; + IMAPGateway *_gateway; + NSPredicate *_predicate; + NSArray *_mailboxes; + NSArray *_filteredMailboxes; + MCInvocationQueue *_subscribeQueue; +} + +@property(retain, nonatomic) MCInvocationQueue *subscribeQueue; // @synthesize subscribeQueue=_subscribeQueue; +@property(copy, nonatomic) NSArray *filteredMailboxes; // @synthesize filteredMailboxes=_filteredMailboxes; +@property(copy, nonatomic) NSArray *mailboxes; // @synthesize mailboxes=_mailboxes; +@property(retain, nonatomic) NSPredicate *predicate; // @synthesize predicate=_predicate; +@property(retain, nonatomic) IMAPGateway *gateway; // @synthesize gateway=_gateway; +@property(retain, nonatomic) MFIMAPAccount *account; // @synthesize account=_account; +@property(nonatomic) __weak NSImageView *statusImageView; // @synthesize statusImageView=_statusImageView; +@property(nonatomic) __weak NSTextField *fetchStatusField; // @synthesize fetchStatusField=_fetchStatusField; +@property(nonatomic) __weak NSProgressIndicator *fetchProgressIndicator; // @synthesize fetchProgressIndicator=_fetchProgressIndicator; +@property(nonatomic) __weak NSButton *unsubscribeButton; // @synthesize unsubscribeButton=_unsubscribeButton; +@property(nonatomic) __weak NSButton *subscribeButton; // @synthesize subscribeButton=_subscribeButton; +@property(nonatomic) __weak NSOutlineView *mailboxesOutline; // @synthesize mailboxesOutline=_mailboxesOutline; +@property(nonatomic) __weak NSSearchField *searchField; // @synthesize searchField=_searchField; +@property(nonatomic) __weak NSView *mailboxesView; // @synthesize mailboxesView=_mailboxesView; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +- (void).cxx_destruct; +- (void)accountInfoWillShowView:(id)arg1; +- (void)accountInfoWillHideView:(id)arg1; +- (void)outlineView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 byItem:(id)arg4; +- (BOOL)outlineView:(id)arg1 shouldSelectItem:(id)arg2; +- (void)outlineView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (id)outlineView:(id)arg1 objectValueForTableColumn:(id)arg2 byItem:(id)arg3; +- (long long)outlineView:(id)arg1 numberOfChildrenOfItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 isItemExpandable:(id)arg2; +- (id)outlineView:(id)arg1 child:(long long)arg2 ofItem:(id)arg3; +- (void)_handleError:(id)arg1 settingSubscribedState:(id)arg2 forMailboxPath:(id)arg3 account:(id)arg4; +- (void)_setSubscribedState:(BOOL)arg1 forMailboxPath:(id)arg2 parentUid:(id)arg3; +- (void)_reallySetSubscribedState:(BOOL)arg1 forMailboxPath:(id)arg2 parentMailbox:(id)arg3 account:(id)arg4 refreshListing:(BOOL)arg5; +- (void)_updateEntryTreeForChangedEntry:(id)arg1 oldValue:(BOOL)arg2; +- (id)_mailboxEntryForMailbox:(id)arg1; +- (id)_mailboxEntryForPath:(id)arg1; +- (void)_clearFilteredMailboxes:(id)arg1; +- (void)_clearFilteredMailboxes; +- (void)filterMailboxList:(id)arg1; +- (void)unsubscribeButtonClicked:(id)arg1; +- (void)subscribeButtonClicked:(id)arg1; +- (void)_handleSubscriptionRequest:(BOOL)arg1; +- (void)_handleSubscriptionRequest:(BOOL)arg1 forItem:(id)arg2 refreshSet:(id)arg3 recursive:(BOOL)arg4; +- (void)_reallyStopSubscriptionRequest:(id)arg1 refreshList:(id)arg2; +- (void)_stopSubscriptionRequest:(id)arg1; +- (void)_reallyStartSubscriptionRequest:(id)arg1; +- (void)_startSubscriptionRequest; +- (id)view; +- (void)_fetchMailboxListingForAccount:(id)arg1; +- (id)_recursivelyCreateMailboxEntriesForList:(id)arg1 subscribedList:(id)arg2 inLocalPath:(id)arg3 remotePath:(id)arg4 forAccount:(id)arg5; +- (void)_mailboxFetchCompleted:(id)arg1 forAccount:(id)arg2; +- (void)setupUIWithAccount:(id)arg1; +- (void)_setupNotifications; +- (void)setUIEnabled:(BOOL)arg1; +- (void)_updateUIForOnlineState:(id)arg1; +- (id)_alertIcon; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPQuota.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPQuota.h new file mode 100644 index 00000000..0cf6101d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPQuota.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "RemoteStoreQuota.h" + +@class NSPopUpButton, NSTextField, NSView, QuotaBar; + +@interface IMAPQuota : RemoteStoreQuota +{ + NSPopUpButton *_quotaPopup; + NSTextField *_quotaPopupLabel; + NSView *_quotaContainerView; + QuotaBar *_quotaBar; + NSTextField *_capacityField; + NSTextField *_statusField; + double _spaceUnderQuotaPopup; +} + +@property(readonly, nonatomic) double spaceUnderQuotaPopup; // @synthesize spaceUnderQuotaPopup=_spaceUnderQuotaPopup; +@property(nonatomic) __weak NSTextField *statusField; // @synthesize statusField=_statusField; +@property(nonatomic) __weak NSTextField *capacityField; // @synthesize capacityField=_capacityField; +@property(nonatomic) __weak QuotaBar *quotaBar; // @synthesize quotaBar=_quotaBar; +@property(nonatomic) __weak NSView *quotaContainerView; // @synthesize quotaContainerView=_quotaContainerView; +@property(nonatomic) __weak NSTextField *quotaPopupLabel; // @synthesize quotaPopupLabel=_quotaPopupLabel; +@property(nonatomic) __weak NSPopUpButton *quotaPopup; // @synthesize quotaPopup=_quotaPopup; +- (void).cxx_destruct; +- (id)_stringForSize:(unsigned long long)arg1 andCount:(long long)arg2 isCapacity:(BOOL)arg3; +- (void)_updateUIForQuotaName:(id)arg1 updateTable:(BOOL)arg2; +- (void)engineUpdated:(id)arg1; +- (void)engineDidFinish; +- (void)_updateQuotaPopupWithQuotaNames:(id)arg1; +- (void)_engineStatusChanged:(id)arg1; +- (void)_updateStatusField; +- (void)_updateQuotaBarWithSize:(unsigned long long)arg1 maxSize:(unsigned long long)arg2 count:(unsigned long long)arg3 maxCount:(unsigned long long)arg4; +- (id)_selectedQuotaName; +- (void)quotaPopupChanged:(id)arg1; +- (BOOL)tableShouldIncludeMailbox:(id)arg1; +- (Class)engineClass; +- (void)dealloc; +- (void)awakeFromNib; +- (id)initWithAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPUserAgent-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPUserAgent-Protocol.h new file mode 100644 index 00000000..25a9dc70 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IMAPUserAgent-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol IMAPUserAgent +- (BOOL)doParentalControlProcessingForMessage:(id)arg1; +- (BOOL)addInvitationsToCalendarAutomatically; +- (void)addInvitationsToCalendarFromMessages:(id)arg1; +- (id)headersRequiredForParentalControl; +- (id)headersRequiredForRouting; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IOErrorWindowDelegate.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IOErrorWindowDelegate.h new file mode 100644 index 00000000..a1ccb2d1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/IOErrorWindowDelegate.h @@ -0,0 +1,33 @@ +/* + * 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 "DynamicErrorWindowDelegate.h" + +@class NSString; + +@interface IOErrorWindowDelegate : NSObject +{ +} + +- (void)rightActionSelectedWithDiagnosis:(long long)arg1; +- (void)leftActionSelectedWithDiagnosis:(long long)arg1; +- (long long)helpTopicForDiagnosis:(long long)arg1; +- (id)rightButtonTextForErrorDiagnosis:(long long)arg1; +- (id)leftButtonTextForErrorDiagnosis:(long long)arg1; +- (id)errorDescriptionForErrorDiagnosis:(long long)arg1; +- (id)errorMessageForErrorDiagnosis:(long long)arg1; +- (BOOL)displayIndeterminateProgress; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ImageResizer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ImageResizer.h new file mode 100644 index 00000000..22ce74ab --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ImageResizer.h @@ -0,0 +1,62 @@ +/* + * 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 "MCActivityTarget.h" + +@class MCActivityMonitor, NSData, NSString; + +@interface ImageResizer : NSObject +{ + struct CGRect _maxBounds; + unsigned int _sourceFileType; + NSData *_sourceData; + NSData *_resultData; + NSString *_resultUTI; + MCActivityMonitor *_monitor; + id _delegate; + id _representedObject; + unsigned long long _maxFileBytes; + struct CGSize _sourceSize; + struct CGSize _resultImageSize; +} + ++ (struct CGSize)scaleSize:(struct CGSize)arg1 toContainSize:(struct CGSize)arg2; ++ (struct CGSize)scaleSize:(struct CGSize)arg1 toFitSize:(struct CGSize)arg2; ++ (BOOL)isFileResizableImage:(id)arg1; ++ (void)initialize; +@property(nonatomic) unsigned long long maxFileBytes; // @synthesize maxFileBytes=_maxFileBytes; +@property(retain, nonatomic) id representedObject; // @synthesize representedObject=_representedObject; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +@property(retain, nonatomic) MCActivityMonitor *monitor; // @synthesize monitor=_monitor; +@property(retain, nonatomic) NSString *resultUTI; // @synthesize resultUTI=_resultUTI; +@property(retain, nonatomic) NSData *resultImageData; // @synthesize resultImageData=_resultData; +@property(nonatomic) struct CGSize resultImageSize; // @synthesize resultImageSize=_resultImageSize; +@property(nonatomic) struct CGSize sourceSize; // @synthesize sourceSize=_sourceSize; +@property(readonly, nonatomic) unsigned int sourceFileType; // @synthesize sourceFileType=_sourceFileType; +@property(readonly, copy, nonatomic) NSData *sourceData; // @synthesize sourceData=_sourceData; +- (void).cxx_destruct; +- (void)_resizeImage; +- (void)_didFinishResizingWithResultCode:(id)arg1; +- (unsigned int)resultFileType; +- (id)resultFileExtension; +- (void)cancel; +- (BOOL)isResizing; +- (void)resizeImage; +- (void)setMaxImageSize:(struct CGSize)arg1; +- (struct CGSize)maxImageSize; +- (id)init; +- (id)initWithImageData:(id)arg1 sourceFileType:(unsigned int)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ImageResizerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ImageResizerDelegate-Protocol.h new file mode 100644 index 00000000..d74aa2ff --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ImageResizerDelegate-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol ImageResizerDelegate +- (void)imageResizer:(id)arg1 didFinishResizingWithResultCode:(long long)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ImportAssistant.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ImportAssistant.h new file mode 100644 index 00000000..de059389 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ImportAssistant.h @@ -0,0 +1,100 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "Assistant.h" + +@class EmailImporter, NSArray, NSDictionary, NSMatrix, NSMutableArray, NSProgressIndicator, NSTabView, NSTableView, NSTextField, NSView; + +@interface ImportAssistant : Assistant +{ + NSMutableArray *_importers; + NSMutableArray *_startingImporters; + double _currentTime; + double _referenceTime; + int _currentTab; + NSView *_topView; + NSTabView *_tabView; + NSMatrix *_importClients; + NSTextField *_explanatoryTextInImportClientTab; + NSProgressIndicator *_progressWheelInImportClientTab; + NSTextField *_statusLineInImportClientTab; + NSMatrix *_importTypes; + NSTextField *_explanatoryTextField; + NSProgressIndicator *_progressWheel; + NSTextField *_statusLineField; + NSTableView *_tableView; + NSProgressIndicator *_progressBar; + NSTextField *_textFieldAboveField; + NSTextField *_textFieldBelowField; + NSTextField *_importFinishedField; + id _activityToken; + NSArray *_clients; + NSDictionary *_client; + EmailImporter *_importer; +} + +@property(retain, nonatomic) EmailImporter *importer; // @synthesize importer=_importer; +@property(nonatomic) int currentTab; // @synthesize currentTab=_currentTab; +@property(retain, nonatomic) NSDictionary *client; // @synthesize client=_client; +@property(readonly, nonatomic) NSArray *clients; // @synthesize clients=_clients; +@property(retain, nonatomic) id activityToken; // @synthesize activityToken=_activityToken; +@property(nonatomic) __weak NSTextField *importFinishedField; // @synthesize importFinishedField=_importFinishedField; +@property(nonatomic) __weak NSTextField *textFieldBelowField; // @synthesize textFieldBelowField=_textFieldBelowField; +@property(nonatomic) __weak NSTextField *textFieldAboveField; // @synthesize textFieldAboveField=_textFieldAboveField; +@property(nonatomic) __weak NSProgressIndicator *progressBar; // @synthesize progressBar=_progressBar; +@property(nonatomic) __weak NSTableView *tableView; // @synthesize tableView=_tableView; +@property(nonatomic) __weak NSTextField *statusLineField; // @synthesize statusLineField=_statusLineField; +@property(nonatomic) __weak NSProgressIndicator *progressWheel; // @synthesize progressWheel=_progressWheel; +@property(nonatomic) __weak NSTextField *explanatoryTextField; // @synthesize explanatoryTextField=_explanatoryTextField; +@property(nonatomic) __weak NSMatrix *importTypes; // @synthesize importTypes=_importTypes; +@property(nonatomic) __weak NSTextField *statusLineInImportClientTab; // @synthesize statusLineInImportClientTab=_statusLineInImportClientTab; +@property(nonatomic) __weak NSProgressIndicator *progressWheelInImportClientTab; // @synthesize progressWheelInImportClientTab=_progressWheelInImportClientTab; +@property(nonatomic) __weak NSTextField *explanatoryTextInImportClientTab; // @synthesize explanatoryTextInImportClientTab=_explanatoryTextInImportClientTab; +@property(nonatomic) __weak NSMatrix *importClients; // @synthesize importClients=_importClients; +@property(nonatomic) __weak NSTabView *tabView; // @synthesize tabView=_tabView; +@property(retain, nonatomic) NSView *topView; // @synthesize topView=_topView; +- (void).cxx_destruct; +- (void)_endUserInitiatedActivity; +- (void)_beginUserInitiatedActivity; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (BOOL)shouldUpdateTextFields; +- (void)updateProgressIndicatorByValue:(double)arg1; +- (void)updateProgressIndicatorWithItem:(id)arg1; +- (void)updateProgressIndicatorWithFraction:(double)arg1 ofItem:(id)arg2; +- (void)_setProgressStartOnItem:(id)arg1; +- (void)_updateProgressIndicatorToValue:(id)arg1; +- (void)_updateProgressIndicatorByValue:(id)arg1; +- (void)initializeProgressIndicator; +- (void)reloadTableView; +- (void)setExplanatoryText:(id)arg1; +- (void)setTextFieldBelow:(id)arg1; +- (void)setTextFieldAbove:(id)arg1; +- (void)updateTextField:(id)arg1 withValue:(id)arg2; +- (void)clearStatusLine; +- (void)setStatusLine:(id)arg1; +- (void)askForMailboxLocationAllowedFileTypes:(id)arg1 allowsMultipleSelection:(BOOL)arg2; +- (void)askForMailboxLocation; +- (void)importFinished; +- (void)moveToTab:(int)arg1; +- (void)presentAlertSheetWithString:(id)arg1; +- (void)runImporter; +- (void)createNewImporter; +- (void)importClientSelected:(id)arg1; +- (void)goBackward; +- (void)goForward; +- (void)stop; +- (BOOL)shouldStop; +- (void)start; +- (id)windowTitle; +- (void)dealloc; +- (id)initWithAssistentManager:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ImportItem.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ImportItem.h new file mode 100644 index 00000000..92ef29aa --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ImportItem.h @@ -0,0 +1,38 @@ +/* + * 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" + +@class NSString; + +@interface ImportItem : NSObject +{ + BOOL _isEnabled; + NSString *_displayName; + double _progressValue; + double _progressStart; + NSString *_fullPath; + NSString *_relativePath; + long long _itemCount; + id _identifier; + long long _subfolderCount; + id _importFields; +} + +@property(retain, nonatomic) id importFields; // @synthesize importFields=_importFields; +@property(nonatomic) long long subfolderCount; // @synthesize subfolderCount=_subfolderCount; +@property(retain, nonatomic) id identifier; // @synthesize identifier=_identifier; +@property(nonatomic) long long itemCount; // @synthesize itemCount=_itemCount; +@property(copy, nonatomic) NSString *relativePath; // @synthesize relativePath=_relativePath; +@property(copy, nonatomic) NSString *fullPath; // @synthesize fullPath=_fullPath; +@property(nonatomic) double progressStart; // @synthesize progressStart=_progressStart; +@property(nonatomic) double progressValue; // @synthesize progressValue=_progressValue; +@property(copy, nonatomic) NSString *displayName; // @synthesize displayName=_displayName; +@property(nonatomic) BOOL isEnabled; // @synthesize isEnabled=_isEnabled; +- (void).cxx_destruct; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Importer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Importer.h new file mode 100644 index 00000000..132f6954 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Importer.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class ImportAssistant, NSArray, NSMutableArray, NSString; + +@interface Importer : NSObject +{ + NSMutableArray *_importArray; + BOOL _importCanceled; + ImportAssistant *_delegate; + NSArray *_importFields; +} + +@property(copy, nonatomic) NSArray *importFields; // @synthesize importFields=_importFields; +@property(nonatomic) BOOL importCanceled; // @synthesize importCanceled=_importCanceled; +@property(retain, nonatomic) ImportAssistant *delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (id)importFinishedText; +- (void)sortImportArray; +- (unsigned long long)countOfEnabledItems; +- (void)insertObject:(id)arg1 inImportArrayAtIndex:(unsigned long long)arg2; +- (void)clearImportArray; +- (unsigned long long)countOfImportArray; +@property(readonly, copy, nonatomic) NSArray *importArray; +@property(readonly, copy, nonatomic) NSString *name; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/InvitationAttachmentOpener.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/InvitationAttachmentOpener.h new file mode 100644 index 00000000..63c2714b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/InvitationAttachmentOpener.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "TemporaryAttachmentOpener.h" + +@interface InvitationAttachmentOpener : TemporaryAttachmentOpener +{ + BOOL _openImmediately; +} + +@property(readonly, nonatomic) BOOL openImmediately; // @synthesize openImmediately=_openImmediately; +- (void)beginSaveOfAttachments:(id)arg1 toTemporaryFolderWithName:(id)arg2 taskName:(id)arg3; +- (void)_saveAttachmentsToICalCaches:(id)arg1; +- (id)initWithAttachments:(id)arg1 openImmediately:(BOOL)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/JunkMailBannerViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/JunkMailBannerViewController.h new file mode 100644 index 00000000..7263a1ae --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/JunkMailBannerViewController.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "LoadRemoteContentBannerViewController.h" + +@class NSTextField; + +@interface JunkMailBannerViewController : LoadRemoteContentBannerViewController +{ + NSTextField *_messageField; +} + +@property(nonatomic) __weak NSTextField *messageField; // @synthesize messageField=_messageField; +- (void).cxx_destruct; +- (void)markNotJunk:(id)arg1; +- (void)updateBannerContents; +- (void)updateWantsDisplay; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setRepresentedObject:(id)arg1; +- (BOOL)shouldDisplayToLoadRemoteContent; +- (id)backgroundColor; +- (void)dealloc; +- (id)nibName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/JunkPreferences.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/JunkPreferences.h new file mode 100644 index 00000000..c7515d1d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/JunkPreferences.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +@class NSButton, NSColor, NSMatrix; + +@interface JunkPreferences : NSPreferencesModule +{ + long long _junkMailBehavior; + NSButton *_advancedButton; + NSMatrix *_junkMailMode; + NSButton *_junkMailOnOffSwitch; + NSMatrix *_junkMailWhitelist; +} + ++ (id)keyPathsForValuesAffectingIsAdvancedEnabled; ++ (id)keyPathsForValuesAffectingIsEnabled; ++ (id)keyPathsForValuesAffectingLabelColor; +@property(nonatomic) __weak NSMatrix *junkMailWhitelist; // @synthesize junkMailWhitelist=_junkMailWhitelist; +@property(nonatomic) __weak NSButton *junkMailOnOffSwitch; // @synthesize junkMailOnOffSwitch=_junkMailOnOffSwitch; +@property(nonatomic) __weak NSMatrix *junkMailMode; // @synthesize junkMailMode=_junkMailMode; +@property(nonatomic) __weak NSButton *advancedButton; // @synthesize advancedButton=_advancedButton; +- (void).cxx_destruct; +- (void)showCustomJunkMailSettings:(id)arg1; +- (void)resetJunkMailMap:(id)arg1; +- (void)changeJunkMailBehavior:(id)arg1; +@property(readonly, nonatomic) BOOL isAdvancedEnabled; +@property(readonly, nonatomic) BOOL isEnabled; +@property(nonatomic) long long junkMailBehavior; +- (void)whitelistChanged:(id)arg1; +- (void)junkMailToggled:(id)arg1; +- (void)initializeFromDefaults; +@property(readonly, nonatomic) NSColor *labelColor; +- (id)imageForPreferenceNamed:(id)arg1; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (void)_messageRuleChanged:(id)arg1; +- (BOOL)isResizable; +- (void)moduleWasInstalled; +- (void)moduleWillBeRemoved; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LDAPServer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LDAPServer.h new file mode 100644 index 00000000..aaaad082 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LDAPServer.h @@ -0,0 +1,28 @@ +/* + * 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" + +@interface LDAPServer : NSObject +{ +} + +- (void)setScope:(unsigned int)arg1; +- (unsigned int)scope; +- (void)setPort:(id)arg1; +- (id)port; +- (void)setEnabled:(BOOL)arg1; +- (BOOL)enabled; +- (void)setEntryName:(id)arg1; +- (id)entryName; +- (void)setSearchBase:(id)arg1; +- (id)searchBase; +- (void)setServerAddress:(id)arg1; +- (id)serverAddress; +- (id)objectSpecifier; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LazyMenuSegmentedCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LazyMenuSegmentedCell.h new file mode 100644 index 00000000..9750aeff --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LazyMenuSegmentedCell.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSegmentedCell.h" + +@class NSMutableDictionary; + +@interface LazyMenuSegmentedCell : NSSegmentedCell +{ + NSMutableDictionary *_loadedMenus; + id _lazyMenuBlock; +} + +@property(copy, nonatomic) id lazyMenuBlock; // @synthesize lazyMenuBlock=_lazyMenuBlock; +- (void).cxx_destruct; +- (id)menuForSegment:(long long)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LazySubmenuMenuItem.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LazySubmenuMenuItem.h new file mode 100644 index 00000000..f1cced8d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LazySubmenuMenuItem.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMenuItem.h" + +@class NSMenu; + +@interface LazySubmenuMenuItem : NSMenuItem +{ + BOOL _enableLoadedSubmenu; + id _lazySubmenuBlock; + NSMenu *_loadedSubmenu; +} + +@property(nonatomic) BOOL enableLoadedSubmenu; // @synthesize enableLoadedSubmenu=_enableLoadedSubmenu; +@property(retain, nonatomic) NSMenu *loadedSubmenu; // @synthesize loadedSubmenu=_loadedSubmenu; +@property(copy, nonatomic) id lazySubmenuBlock; // @synthesize lazySubmenuBlock=_lazySubmenuBlock; +- (void).cxx_destruct; +- (void)setEnabled:(BOOL)arg1; +- (BOOL)isEnabled; +- (id)submenu; +- (BOOL)hasSubmenu; +- (id)copyWithZone:(struct _NSZone *)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LibraryImportAssistant.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LibraryImportAssistant.h new file mode 100644 index 00000000..b0ea1abb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LibraryImportAssistant.h @@ -0,0 +1,67 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "Assistant.h" + +#import "MCActivityTarget.h" + +@class MCActivityMonitor, NSButton, NSProgressIndicator, NSString, NSTextField, NSTimer, NSView; + +@interface LibraryImportAssistant : Assistant +{ + BOOL _importWasSuccessful; + NSView *_introView; + NSView *_patienceView; + NSView *_doneView; + NSView *_errorView; + NSView *_recoveryIntroView; + NSTextField *_mailboxStatusField; + NSTextField *_messageStatusField; + NSTextField *_timeRemainingField; + NSProgressIndicator *_progressBar; + NSButton *_showNewFeaturesButton; + NSTextField *_theNewFeaturesTextField; + MCActivityMonitor *_activityMonitor; + NSTimer *_updateTimer; + long long _state; +} + +@property(nonatomic) BOOL importWasSuccessful; // @synthesize importWasSuccessful=_importWasSuccessful; +@property(nonatomic) long long state; // @synthesize state=_state; +@property(retain, nonatomic) NSTimer *updateTimer; // @synthesize updateTimer=_updateTimer; +@property(nonatomic) __weak MCActivityMonitor *activityMonitor; // @synthesize activityMonitor=_activityMonitor; +@property(nonatomic) __weak NSTextField *theNewFeaturesTextField; // @synthesize theNewFeaturesTextField=_theNewFeaturesTextField; +@property(nonatomic) __weak NSButton *showNewFeaturesButton; // @synthesize showNewFeaturesButton=_showNewFeaturesButton; +@property(nonatomic) __weak NSProgressIndicator *progressBar; // @synthesize progressBar=_progressBar; +@property(nonatomic) __weak NSTextField *timeRemainingField; // @synthesize timeRemainingField=_timeRemainingField; +@property(nonatomic) __weak NSTextField *messageStatusField; // @synthesize messageStatusField=_messageStatusField; +@property(nonatomic) __weak NSTextField *mailboxStatusField; // @synthesize mailboxStatusField=_mailboxStatusField; +@property(retain, nonatomic) NSView *recoveryIntroView; // @synthesize recoveryIntroView=_recoveryIntroView; +@property(retain, nonatomic) NSView *errorView; // @synthesize errorView=_errorView; +@property(retain, nonatomic) NSView *doneView; // @synthesize doneView=_doneView; +@property(retain, nonatomic) NSView *patienceView; // @synthesize patienceView=_patienceView; +@property(retain, nonatomic) NSView *introView; // @synthesize introView=_introView; +- (void).cxx_destruct; +- (void)showNewFeatures:(id)arg1; +- (void)synchronouslyDoTheImport; +- (id)_formattedTimeForSeconds:(double)arg1; +- (double)_runningAverageWithNewValue:(double)arg1; +- (void)_updateProgress:(id)arg1; +- (id)windowTitle; +- (void)goForward; +- (BOOL)_checkAccountDirectoryPermissions; +- (void)stop; +- (void)start; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LibraryUpgradeAssistant.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LibraryUpgradeAssistant.h new file mode 100644 index 00000000..b1a83731 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LibraryUpgradeAssistant.h @@ -0,0 +1,72 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "Assistant.h" + +#import "MFLibraryUpgraderDelegate.h" +#import "NSOpenSavePanelDelegate.h" + +@class MFLibraryUpgrader, NSButton, NSString, NSTextField, NSView; + +@interface LibraryUpgradeAssistant : Assistant +{ + MFLibraryUpgrader *_libraryUpgrader; + NSView *_currentView; + int _state; + BOOL _accountsRequireStoragePolicyChange; + BOOL _isProgressIndeterminate; + NSView *_accountsRequireCachePolicyChangeView; + NSView *_unresolvedAccountsView; + NSView *_complexMigrationView; + NSView *_patienceView; + NSView *_epilogueView; + NSView *_errorView; + NSButton *_showNewFeaturesButton; + NSTextField *_migrationDestinationTextField; + NSTextField *_errorText; + NSString *_statusMessage; + double _progress; +} + +@property(nonatomic) double progress; // @synthesize progress=_progress; +@property(nonatomic) BOOL isProgressIndeterminate; // @synthesize isProgressIndeterminate=_isProgressIndeterminate; +@property(copy, nonatomic) NSString *statusMessage; // @synthesize statusMessage=_statusMessage; +@property(nonatomic) BOOL accountsRequireStoragePolicyChange; // @synthesize accountsRequireStoragePolicyChange=_accountsRequireStoragePolicyChange; +@property(nonatomic) __weak NSTextField *errorText; // @synthesize errorText=_errorText; +@property(nonatomic) __weak NSTextField *migrationDestinationTextField; // @synthesize migrationDestinationTextField=_migrationDestinationTextField; +@property(nonatomic) __weak NSButton *showNewFeaturesButton; // @synthesize showNewFeaturesButton=_showNewFeaturesButton; +@property(retain, nonatomic) NSView *errorView; // @synthesize errorView=_errorView; +@property(retain, nonatomic) NSView *epilogueView; // @synthesize epilogueView=_epilogueView; +@property(retain, nonatomic) NSView *patienceView; // @synthesize patienceView=_patienceView; +@property(retain, nonatomic) NSView *complexMigrationView; // @synthesize complexMigrationView=_complexMigrationView; +@property(retain, nonatomic) NSView *unresolvedAccountsView; // @synthesize unresolvedAccountsView=_unresolvedAccountsView; +@property(retain, nonatomic) NSView *accountsRequireCachePolicyChangeView; // @synthesize accountsRequireCachePolicyChangeView=_accountsRequireCachePolicyChangeView; +- (void).cxx_destruct; +- (void)chooseMigrationDestination:(id)arg1; +- (BOOL)panel:(id)arg1 validateURL:(id)arg2 error:(id *)arg3; +- (void)showNewFeatures:(id)arg1; +- (void)upgrader:(id)arg1 didFailWithError:(id)arg2; +- (void)upgraderDidFinish:(id)arg1; +- (void)requestUserAttentionWithRequestType:(unsigned long long)arg1; +- (void)goForward; +- (void)stop; +- (void)start; +@property(retain, nonatomic) NSView *currentView; +@property(nonatomic) int state; +- (id)windowTitle; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(retain, nonatomic) MFLibraryUpgrader *libraryUpgrader; +- (void)dealloc; +- (id)initWithAssistentManager:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LoadRemoteContentBannerViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LoadRemoteContentBannerViewController.h new file mode 100644 index 00000000..dcf6b179 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LoadRemoteContentBannerViewController.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "BannerViewController.h" + +@class BannerImageView, NSButton, NSLayoutConstraint; + +@interface LoadRemoteContentBannerViewController : BannerViewController +{ + NSButton *_loadRemoteContentButton; + NSLayoutConstraint *_messageFieldToLoadRemoteContentButtonHorizontalSpacing; + BannerImageView *_icon; +} + +@property(nonatomic) __weak BannerImageView *icon; // @synthesize icon=_icon; +@property(nonatomic) __weak NSLayoutConstraint *messageFieldToLoadRemoteContentButtonHorizontalSpacing; // @synthesize messageFieldToLoadRemoteContentButtonHorizontalSpacing=_messageFieldToLoadRemoteContentButtonHorizontalSpacing; +@property(nonatomic) __weak NSButton *loadRemoteContentButton; // @synthesize loadRemoteContentButton=_loadRemoteContentButton; +- (void).cxx_destruct; +- (void)loadRemoteContent:(id)arg1; +- (void)updateWantsDisplay; +- (void)updateBannerContents; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setRepresentedObject:(id)arg1; +@property(readonly, nonatomic) BOOL shouldDisplayToLoadRemoteContent; +- (void)dealloc; +- (id)nibName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LoadingOverlay.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LoadingOverlay.h new file mode 100644 index 00000000..c7931b0b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LoadingOverlay.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class MCActivityMonitor, NSProgressIndicator, NSString, NSTextField, NSView; + +@interface LoadingOverlay : NSObject +{ + MCActivityMonitor *_activityMonitor; + NSView *_overlayView; + NSProgressIndicator *_progressIndicator; + NSTextField *_statusMessageField; + id _modalDelegate; +} + +@property(nonatomic) __weak id modalDelegate; // @synthesize modalDelegate=_modalDelegate; +@property(nonatomic) __weak NSTextField *statusMessageField; // @synthesize statusMessageField=_statusMessageField; +@property(nonatomic) __weak NSProgressIndicator *progressIndicator; // @synthesize progressIndicator=_progressIndicator; +@property(retain, nonatomic) NSView *overlayView; // @synthesize overlayView=_overlayView; +- (void).cxx_destruct; +- (void)stop; +- (void)_activityEnded:(id)arg1; +@property(retain, nonatomic) NSString *statusMessage; +@property(retain, nonatomic) MCActivityMonitor *activityMonitor; +- (void)displayInSuperviewAfterDelay:(id)arg1; +- (void)displayInSuperview:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithModalDelegate:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LoweredTextAttachmentCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LoweredTextAttachmentCell.h new file mode 100644 index 00000000..e7c8da96 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/LoweredTextAttachmentCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextAttachmentCell.h" + +@interface LoweredTextAttachmentCell : NSTextAttachmentCell +{ +} + +- (struct CGSize)cellSize; +- (struct CGPoint)cellBaselineOffset; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCActivityTarget-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCActivityTarget-Protocol.h new file mode 100644 index 00000000..bc00a4ed --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCActivityTarget-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MCActivityTarget + +@optional +- (BOOL)isSmartMailbox; +- (id)displayName; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCConnectionLogging-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCConnectionLogging-Protocol.h new file mode 100644 index 00000000..04843f10 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCConnectionLogging-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol MCConnectionLogging +- (void)flushLog; +- (void)logBytes:(void *)arg1 length:(unsigned long long)arg2; +- (void)logData:(id)arg1 range:(struct _NSRange)arg2; +- (void)logData:(id)arg1; +- (void)logString:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCMessage-MailViewerAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCMessage-MailViewerAdditions.h new file mode 100644 index 00000000..a7e3127d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCMessage-MailViewerAdditions.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCMessage.h" + +@interface MCMessage (MailViewerAdditions) +- (void)handleBounceMessage:(id)arg1; +- (id)handleRedirectMessage:(id)arg1; +- (id)handleForwardMessage:(id)arg1; +- (id)handleReplyToMessage:(id)arg1; +- (void)handleOpenAppleEvent:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCMessageDataSource-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCMessageDataSource-Protocol.h new file mode 100644 index 00000000..89dfae2d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCMessageDataSource-Protocol.h @@ -0,0 +1,54 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MCActivityTarget.h" +#import "NSCopying.h" + +@protocol MCMessageDataSource +@property(readonly) BOOL isReadOnly; +- (id)uniquedString:(id)arg1; +- (void)flushAllCaches; +- (void)invalidateMessage:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)routeMessages:(id)arg1 fetchingBodies:(BOOL)arg2 messagesNeedingBodies:(id)arg3; +- (void)doCompact; +- (BOOL)canCompact; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)undeleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (id)mailbox; +- (id)account; + +@optional +- (id)async_setGmailLabelsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)async_deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCUserAgent-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCUserAgent-Protocol.h new file mode 100644 index 00000000..7dcfba74 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MCUserAgent-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol MCUserAgent +- (id)localAttachmentFilesDirectory; +- (id)junkStringFromHTMLData:(id)arg1 textEncodingName:(id)arg2 context:(id)arg3; +- (long long)junkMailBehavior; +- (void)setIsInTimeMachineMode:(BOOL)arg1; +- (BOOL)isInTimeMachineMode; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFAccount-MailUIExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFAccount-MailUIExtras.h new file mode 100644 index 00000000..55e6dfe9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFAccount-MailUIExtras.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MFAccount.h" + +@interface MFAccount (MailUIExtras) ++ (id)mailAccountOfClass:(Class)arg1 withHostname:(id)arg2 username:(id)arg3; ++ (id)mailAccountWithName:(id)arg1; ++ (BOOL)exchangeAccountExists; ++ (BOOL)_existsAccountOfClass:(Class)arg1; +- (id)authSchemeBindingProxies; +- (void)configureAuthenticationPopUp:(id)arg1 withAuthSchemes:(id)arg2; +- (void)configureAuthenticationPopUp:(id)arg1; +- (void)_addAuthScheme:(id)arg1 toPopUp:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFAddProgressMonitor-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFAddProgressMonitor-Protocol.h new file mode 100644 index 00000000..f1d49708 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFAddProgressMonitor-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol MFAddProgressMonitor +- (void)setFractionDone:(double)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFDeliveryAccount-MailUIExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFDeliveryAccount-MailUIExtras.h new file mode 100644 index 00000000..7da3dcc2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFDeliveryAccount-MailUIExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MFDeliveryAccount.h" + +@interface MFDeliveryAccount (MailUIExtras) +- (id)remoteMailAccountsEmployedByString; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFEWSAccount-MailUIExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFEWSAccount-MailUIExtras.h new file mode 100644 index 00000000..50c474c3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFEWSAccount-MailUIExtras.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MFEWSAccount.h" + +@interface MFEWSAccount (MailUIExtras) +- (void)configureAuthenticationPopUp:(id)arg1 withAuthSchemes:(id)arg2; +- (void)configureAuthenticationPopUp:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFLibraryUpgraderDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFLibraryUpgraderDelegate-Protocol.h new file mode 100644 index 00000000..6dbf428d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFLibraryUpgraderDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MFLibraryUpgraderDelegate +- (void)upgrader:(id)arg1 didFailWithError:(id)arg2; +- (void)upgraderDidFinish:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFMailbox-MessageListAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFMailbox-MessageListAdditions.h new file mode 100644 index 00000000..fe70390a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFMailbox-MessageListAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MFMailbox.h" + +@interface MFMailbox (MessageListAdditions) +- (BOOL)smartMailboxUsesLastViewedDate; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFMessageSortContext-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFMessageSortContext-Protocol.h new file mode 100644 index 00000000..90e3dd18 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFMessageSortContext-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol MFMessageSortContext +- (long long)compareByNumberMessage:(id)arg1 andMessage:(id)arg2 sortedAscending:(BOOL)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFMessageSortingValueDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFMessageSortingValueDelegate-Protocol.h new file mode 100644 index 00000000..6311616b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFMessageSortingValueDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MFMessageSortingValueDelegate +- (long long)sortingUniqueIdentifierForMessageThread:(id)arg1; +- (unsigned int)sortingMessageFlagsForMessage:(id)arg1; +- (unsigned long long)sortingSizeForMessage:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFUIMailbox-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFUIMailbox-Protocol.h new file mode 100644 index 00000000..1fae8850 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFUIMailbox-Protocol.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSCopying.h" +#import "NSObject.h" + +@protocol MFUIMailbox +@property(readonly) BOOL isVisibleFlaggedMailbox; +@property int type; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (BOOL)isPlaceholder; +- (id)accountURLString; +- (id)account; +- (BOOL)isSmartMailbox; +- (BOOL)isStore; +- (id)children; +- (BOOL)hasChildren; +- (unsigned long long)numberOfChildren; +- (unsigned long long)displayCount; +- (BOOL)isContainer; +- (id)extendedDisplayName; +- (id)displayName; +- (id)persistentIdentifier; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFUserAgent-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFUserAgent-Protocol.h new file mode 100644 index 00000000..9da326fc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFUserAgent-Protocol.h @@ -0,0 +1,24 @@ +/* + * 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" + +@protocol MFUserAgent +- (void)informUserOfBusyDatabaseWithRecoverer:(id)arg1 diagnosis:(long long *)arg2; +- (void)informUserOfIOErrorWithStateIn:(long long *)arg1; +- (BOOL)openTemporaryAttachments:(id)arg1 applicationBundle:(id)arg2; +- (void)relaunchAndQuitWithAdditionalArguments:(id)arg1; +- (void)relaunchAndQuit; +- (BOOL)isTerminating; +- (void)storeBeingInvalidated:(id)arg1; +- (long long)queryUserForBigMessageAction:(id)arg1; +- (long long)runAlertPanelWithTitle:(id)arg1 firstButtonTitle:(id)arg2 secondButtonTitle:(id)arg3 thirdButtonTitle:(id)arg4 message:(id)arg5; +- (BOOL)queryUserWithMessageText:(id)arg1 informativeText:(id)arg2 defaultButton:(id)arg3 alternateButton:(id)arg4; +- (void)informUserOfError:(id)arg1; +- (void)resetSuppressedAccount:(id)arg1; +- (BOOL)promptForPassword:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFWebMessageDocument-Attachments.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFWebMessageDocument-Attachments.h new file mode 100644 index 00000000..2ec0d6e7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MFWebMessageDocument-Attachments.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MFWebMessageDocument.h" + +@interface MFWebMessageDocument (Attachments) +- (id)mimeBodyForAttachmentWithURL:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMBufferedController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMBufferedController.h new file mode 100644 index 00000000..bac361b3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMBufferedController.h @@ -0,0 +1,60 @@ +/* + * 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 "MTMMailboxControllerProtocol.h" + +@class MTMMailbox, NSDictionary, NSMutableDictionary, NSString, NSURL; + +@interface MTMBufferedController : NSObject +{ + NSMutableDictionary *_accounts; + NSURL *_mailLibraryURL; + NSDictionary *_tableOfContents; + NSDictionary *_preferences; + MTMMailbox *_rootMailbox; +} + +@property(retain, nonatomic) MTMMailbox *rootMailbox; // @synthesize rootMailbox=_rootMailbox; +@property(readonly, copy, nonatomic) NSDictionary *preferences; // @synthesize preferences=_preferences; +@property(copy, nonatomic) NSDictionary *tableOfContents; // @synthesize tableOfContents=_tableOfContents; +@property(readonly, nonatomic) NSURL *mailLibraryURL; // @synthesize mailLibraryURL=_mailLibraryURL; +- (void).cxx_destruct; +- (void)updateThumbnailAsGenericWindow; +- (void)updateThumbnail; +- (void)adjustDisplayStateAfterTimeMachineStarted; +- (void)updateMessageListBindingsWithDisplayedMailbox:(id)arg1 scrollerDelta:(double)arg2; +- (void)restore:(id)arg1; +- (void)deactivate; +- (void)activate; +- (void)close; +- (void)showWindow:(id)arg1; +- (id)window; +@property(copy, nonatomic) NSDictionary *displayState; +@property(retain, nonatomic) NSURL *focusURL; +@property(readonly, nonatomic) BOOL activated; +@property(readonly, nonatomic) MTMMailbox *selectedMailbox; +@property(readonly, nonatomic) double fadeDuration; +- (void)tearDown; +- (id)revisionIDForURL:(id)arg1; +- (id)accountForAccountID:(id)arg1; +- (id)messageWithID:(id)arg1; +- (BOOL)_loadTableOfContentsIfNeeded; +- (void)mailboxListWasUpdated:(id)arg1; +- (void)mailboxListWillBeUpdated:(id)arg1; +@property(readonly, nonatomic) NSURL *tocURL; +- (void)loadPreferences:(id *)arg1 accounts:(id *)arg2 tableOfContents:(id *)arg3 rootMailbox:(id *)arg4 forLibraryURL:(id)arg5; +- (id)initWithMailLibraryURL:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMBytesFormatter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMBytesFormatter.h new file mode 100644 index 00000000..5153e4b3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMBytesFormatter.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFormatter.h" + +@interface MTMBytesFormatter : NSFormatter +{ +} + +- (id)stringForObjectValue:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMDiskMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMDiskMessage.h new file mode 100644 index 00000000..e9a15325 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMDiskMessage.h @@ -0,0 +1,48 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMMessage.h" + +@class NSDate, NSString; + +@interface MTMDiskMessage : MTMMessage +{ + BOOL _hasCachedChange; + BOOL _cachedChange; + id _identifier; + NSString *_path; + NSString *_subject; + NSDate *_sentDate; + NSDate *_receivedDate; + NSDate *_lastViewedDate; + NSString *_author; + NSString *_to; + unsigned long long _messageSize; + unsigned long long _messageFlags; + unsigned long long _readFlags; +} + +@property(nonatomic) BOOL cachedChange; // @synthesize cachedChange=_cachedChange; +@property(nonatomic) BOOL hasCachedChange; // @synthesize hasCachedChange=_hasCachedChange; +- (unsigned long long)readFlags; +- (unsigned long long)messageFlags; +- (unsigned long long)messageSize; +- (id)to; +- (id)author; +- (id)lastViewedDate; +- (id)receivedDate; +- (id)sentDate; +- (id)subject; +- (id)path; +- (id)identifier; +- (void).cxx_destruct; +- (BOOL)messageHasChangedFromSnapshot:(id)arg1; +- (id)URL; +- (id)identifierForURL; +- (id)initWithPath:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMFakeMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMFakeMailbox.h new file mode 100644 index 00000000..f8214777 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMFakeMailbox.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMMailbox.h" + +@class NSMutableArray, NSMutableIndexSet; + +@interface MTMFakeMailbox : MTMMailbox +{ + NSMutableArray *_fakeMessages; + NSMutableIndexSet *_fakeSelectionIndexes; +} + +- (void).cxx_destruct; +- (id)selectedMessageIndexes; +- (id)messages; +- (id)initWithMessageDescriptions:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMFakeMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMFakeMessage.h new file mode 100644 index 00000000..4cae90b4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMFakeMessage.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMMessage.h" + +@class NSDictionary; + +@interface MTMFakeMessage : MTMMessage +{ + NSDictionary *_messageDescription; +} + +- (void).cxx_destruct; +- (unsigned long long)readFlags; +- (unsigned long long)messageFlags; +- (id)valueForKey:(id)arg1; +- (id)initWithDescription:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMFlagsCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMFlagsCell.h new file mode 100644 index 00000000..35617d17 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMFlagsCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface MTMFlagsCell : NSTextFieldCell +{ +} + +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)imageForFlags:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMFullWindowController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMFullWindowController.h new file mode 100644 index 00000000..8c4e5d91 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMFullWindowController.h @@ -0,0 +1,170 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMWindowController.h" + +#import "NSOutlineViewDelegate.h" +#import "NSSplitViewDelegate.h" +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" +#import "NSWindowDelegate.h" + +@class ColorBackgroundView, MTMFakeMailbox, MTMMessageColumnController, MTMOutlineCell, MTMOutlineView, MTMScroller, MailSplitView, NSArray, NSArrayController, NSDictionary, NSIndexSet, NSMutableDictionary, NSString, NSTabView, NSTableView, NSTextFieldCell, NSTreeController, NSView, NSView, NSWindow, QLPreviewView; + +@interface MTMFullWindowController : MTMWindowController +{ + NSArray *_messageColumnOrder; + NSDictionary *_messageColumnSizes; + NSArray *_messageSortDescriptors; + NSMutableDictionary *_mailboxesDict; + BOOL _messageScrollerSavedDontNotify; + BOOL _shouldPreventFirstViewResize; + BOOL _messageScrollerSavedDontNotifyOnResize; + BOOL _isActivated; + NSWindow *_topLevelWindow; + NSView *_emptyView; + NSView *_genericView; + NSView *_loadingView; + NSArrayController *_messagesController; + NSTreeController *_mailboxesController; + MailSplitView *_verticalSplitView; + NSView *_mailboxesView; + MTMOutlineView *_outlineView; + NSTabView *_mailboxTabView; + MailSplitView *_splitView; + ColorBackgroundView *_globalRestoreView; + NSTableView *_messagesView; + ColorBackgroundView *_messageBackgroundView; + QLPreviewView *_previewView; + NSArray *_selectedMailboxIndexPaths; + NSIndexSet *_selectedMessageIndexes; + MTMFakeMailbox *_displayedMailbox; + MTMScroller *_messageScroller; + MTMMessageColumnController *_columnController; + NSTextFieldCell *_textCell; + MTMOutlineCell *_mailboxCell; + NSArray *_expectedSelectedMessageIDs; + unsigned long long _isUpdatingSelectionFromBackend; + double _expectedMessageScrollerValue; + double _currentMessageScrollerValue; + NSArray *_expectedVisibleSelectedMessageIDs; +} + ++ (id)keyPathsForValuesAffectingMailboxTargeted; ++ (id)keyPathsForValuesAffectingPlaceholderString; ++ (id)keyPathsForValuesAffectingDisplayState; ++ (Class)specialMailboxClass; +@property(copy, nonatomic) NSArray *expectedVisibleSelectedMessageIDs; // @synthesize expectedVisibleSelectedMessageIDs=_expectedVisibleSelectedMessageIDs; +@property(nonatomic) double currentMessageScrollerValue; // @synthesize currentMessageScrollerValue=_currentMessageScrollerValue; +@property(nonatomic) double expectedMessageScrollerValue; // @synthesize expectedMessageScrollerValue=_expectedMessageScrollerValue; +@property(nonatomic) unsigned long long isUpdatingSelectionFromBackend; // @synthesize isUpdatingSelectionFromBackend=_isUpdatingSelectionFromBackend; +@property(copy, nonatomic) NSArray *expectedSelectedMessageIDs; // @synthesize expectedSelectedMessageIDs=_expectedSelectedMessageIDs; +@property(nonatomic) BOOL isActivated; // @synthesize isActivated=_isActivated; +@property(nonatomic) BOOL messageScrollerSavedDontNotifyOnResize; // @synthesize messageScrollerSavedDontNotifyOnResize=_messageScrollerSavedDontNotifyOnResize; +@property(nonatomic) BOOL shouldPreventFirstViewResize; // @synthesize shouldPreventFirstViewResize=_shouldPreventFirstViewResize; +@property(retain, nonatomic) MTMOutlineCell *mailboxCell; // @synthesize mailboxCell=_mailboxCell; +@property(retain, nonatomic) NSTextFieldCell *textCell; // @synthesize textCell=_textCell; +@property(retain, nonatomic) MTMMessageColumnController *columnController; // @synthesize columnController=_columnController; +@property(nonatomic) BOOL messageScrollerSavedDontNotify; // @synthesize messageScrollerSavedDontNotify=_messageScrollerSavedDontNotify; +@property(retain, nonatomic) MTMScroller *messageScroller; // @synthesize messageScroller=_messageScroller; +@property(retain, nonatomic) MTMFakeMailbox *displayedMailbox; // @synthesize displayedMailbox=_displayedMailbox; +@property(retain, nonatomic) NSIndexSet *selectedMessageIndexes; // @synthesize selectedMessageIndexes=_selectedMessageIndexes; +@property(retain, nonatomic) NSArray *selectedMailboxIndexPaths; // @synthesize selectedMailboxIndexPaths=_selectedMailboxIndexPaths; +@property(nonatomic) __weak QLPreviewView *previewView; // @synthesize previewView=_previewView; +@property(nonatomic) __weak ColorBackgroundView *messageBackgroundView; // @synthesize messageBackgroundView=_messageBackgroundView; +@property(nonatomic) __weak NSTableView *messagesView; // @synthesize messagesView=_messagesView; +@property(nonatomic) __weak ColorBackgroundView *globalRestoreView; // @synthesize globalRestoreView=_globalRestoreView; +@property(nonatomic) __weak MailSplitView *splitView; // @synthesize splitView=_splitView; +@property(nonatomic) __weak NSTabView *mailboxTabView; // @synthesize mailboxTabView=_mailboxTabView; +@property(nonatomic) __weak MTMOutlineView *outlineView; // @synthesize outlineView=_outlineView; +@property(nonatomic) __weak NSView *mailboxesView; // @synthesize mailboxesView=_mailboxesView; +@property(nonatomic) __weak MailSplitView *verticalSplitView; // @synthesize verticalSplitView=_verticalSplitView; +@property(retain, nonatomic) NSTreeController *mailboxesController; // @synthesize mailboxesController=_mailboxesController; +@property(retain, nonatomic) NSArrayController *messagesController; // @synthesize messagesController=_messagesController; +@property(retain, nonatomic) NSView *loadingView; // @synthesize loadingView=_loadingView; +@property(retain, nonatomic) NSView *genericView; // @synthesize genericView=_genericView; +@property(retain, nonatomic) NSView *emptyView; // @synthesize emptyView=_emptyView; +@property(retain, nonatomic) NSWindow *topLevelWindow; // @synthesize topLevelWindow=_topLevelWindow; +- (void).cxx_destruct; +- (void)didChangeValueForKey:(id)arg1; +- (void)willChangeValueForKey:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (double)fadeDuration; +- (void)windowDidResize:(id)arg1; +- (struct CGSize)windowWillResize:(id)arg1 toSize:(struct CGSize)arg2; +- (double)_maxMailboxesViewWidthAllowed; +- (BOOL)splitView:(id)arg1 shouldCollapseSubview:(id)arg2 forDoubleClickOnDividerAtIndex:(long long)arg3; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (double)splitView:(id)arg1 constrainMaxCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; +- (void)tableViewColumnDidResize:(id)arg1; +- (void)tableViewColumnDidMove:(id)arg1; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)outlineViewItemDidCollapse:(id)arg1; +- (void)outlineViewItemWillCollapse:(id)arg1; +- (void)outlineViewItemDidExpand:(id)arg1; +- (void)outlineViewItemWillExpand:(id)arg1; +- (BOOL)outlineView:(id)arg1 shouldCollapseItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 isGroupItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldSelectItem:(id)arg2; +- (void)outlineView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (id)outlineView:(id)arg1 dataCellForTableColumn:(id)arg2 item:(id)arg3; +@property(copy, nonatomic) NSArray *messageSortDescriptors; +- (id)_computedMessageSortDescriptors; +@property(copy, nonatomic) NSDictionary *messageColumnSizes; +- (id)_computedMessageColumnSizes; +@property(copy, nonatomic) NSArray *messageColumnOrder; +- (id)_computedMessageColumnOrder; +- (BOOL)isTopLevelItem:(id)arg1; +- (void)configureCell:(id)arg1 forItem:(id)arg2; +- (void)mailboxListWasUpdated:(id)arg1; +- (void)mailboxListWillBeUpdated:(id)arg1; +- (void)scrollerWasMovedByUser:(id)arg1; +- (void)scrollerWillBeMovedByUser:(id)arg1; +- (void)_selectionDidChange; +- (id)urlToMessage; +- (void)setShowChangedItemsOnly:(BOOL)arg1; +- (id)restoreMessagePaths; +- (BOOL)shouldRestoreMailboxPaths; +- (id)selectedMessagePaths; +- (id)selectedMailboxPaths; +- (BOOL)mailboxTargeted; +- (id)_subPlaceholderAttributes; +- (id)_placeholderAttributes; +- (id)placeholderString; +- (void)adjustDisplayStateAfterTimeMachineStarted; +- (void)_flushMessageScrollPosition; +- (void)_updateMessageScrollPosition; +- (void)_tryToUpdateSelectedMessageIDs; +- (void)_flushExpectedMessageIDsSelection; +- (void)_tryToSelectMessages:(id)arg1 selectedMailbox:(id)arg2; +- (void)setDisplayState:(id)arg1; +- (id)displayState; +- (void)_resizeSplitViewToPercentage:(double)arg1; +- (BOOL)setupUIWithDisplayState:(id)arg1; +- (id)windowNibName; +- (void)loadWindow; +- (void)dealloc; +@property(retain, nonatomic) NSIndexSet *selectedMessageIndexesInDisplayedMailbox; +- (void)updateMessageListBindingsWithDisplayedMailbox:(id)arg1 scrollerDelta:(double)arg2; +- (id)selectedMailbox; +- (void)deactivate; +- (void)activate; +- (void)_updatePreviewViewURLIfNecessary; +- (void)removeBindings; +- (void)setupBindings; +- (void)awakeFromNib; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMIndexedMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMIndexedMessage.h new file mode 100644 index 00000000..fc95d721 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMIndexedMessage.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMMessage.h" + +@class NSDictionary, NSMutableDictionary, NSString; + +@interface MTMIndexedMessage : MTMMessage +{ + NSString *_realPath; + BOOL _realPathComputed; + NSString *_to; + NSMutableDictionary *_computedAdditionalProperties; + BOOL _hasCachedChange; + BOOL _cachedChange; + NSString *_identifier; + NSDictionary *_attributes; + unsigned long long _messageSize; + unsigned long long _messageFlags; + unsigned long long _readFlags; +} + +- (unsigned long long)readFlags; +- (unsigned long long)messageFlags; +- (unsigned long long)messageSize; +@property(nonatomic) BOOL cachedChange; // @synthesize cachedChange=_cachedChange; +@property(nonatomic) BOOL hasCachedChange; // @synthesize hasCachedChange=_hasCachedChange; +@property(readonly, copy, nonatomic) NSDictionary *attributes; // @synthesize attributes=_attributes; +@property(readonly, copy, nonatomic) NSString *identifier; // @synthesize identifier=_identifier; +- (void).cxx_destruct; +- (void)updateAdditionalPropertiesFromComputedProperties; +- (void)computeAdditionalProperties; +- (BOOL)messageHasChangedFromSnapshot:(id)arg1; +- (id)to; +- (id)savedDate; +- (id)subject; +- (id)URL; +- (id)path; +- (id)initWithIdentifier:(id)arg1 attributes:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMLoadingView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMLoadingView.h new file mode 100644 index 00000000..d63f7eb3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMLoadingView.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSProgressIndicator; + +@interface MTMLoadingView : NSView +{ + NSProgressIndicator *_progressIndicator; +} + +@property(retain, nonatomic) NSProgressIndicator *progressIndicator; // @synthesize progressIndicator=_progressIndicator; +- (void).cxx_destruct; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)viewDidMoveToWindow; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMailbox.h new file mode 100644 index 00000000..f8aefc9d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMailbox.h @@ -0,0 +1,122 @@ +/* + * 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 "MFUIMailbox.h" + +@class NSArray, NSColor, NSDictionary, NSEnumerator, NSFont, NSMutableArray, NSMutableDictionary, NSString, NSURL; + +@interface MTMMailbox : NSObject +{ + NSMutableArray *_subMailboxes; + NSMutableArray *_messages; + NSMutableArray *_pendingMessages; + id _controller; + NSMutableDictionary *_messageColumnAttributes; + BOOL _messagesLoaded; + BOOL _updatePaused; + NSDictionary *_mailboxDict; + MTMMailbox *_parentMailbox; + NSEnumerator *_messageEnumerator; +} + ++ (id)keyPathsForValuesAffectingType; ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; ++ (Class)mailboxClassForMailboxDictionary:(id)arg1; ++ (void)setSectionOrder:(id)arg1; +@property(nonatomic) BOOL updatePaused; // @synthesize updatePaused=_updatePaused; +@property(retain, nonatomic) NSEnumerator *messageEnumerator; // @synthesize messageEnumerator=_messageEnumerator; +@property(nonatomic) BOOL messagesLoaded; // @synthesize messagesLoaded=_messagesLoaded; +@property(readonly, nonatomic) __weak MTMMailbox *parentMailbox; // @synthesize parentMailbox=_parentMailbox; +@property(readonly, copy, nonatomic) NSDictionary *mailboxDict; // @synthesize mailboxDict=_mailboxDict; +- (void).cxx_destruct; +- (unsigned long long)numberOfMessage:(id)arg1; +- (void)discardMailbox; +- (void)resumeMailboxUpdate; +- (void)pauseMailboxUpdate; +- (void)loadNextMessagesWithControllingMailbox:(id)arg1 andFetcher:(id)arg2; +- (void)_updateMessagesWhilePaused:(id)arg1; +- (void)_updateMessages:(id)arg1; +- (BOOL)needsToLoadMessagesInBackground; +@property(readonly, copy) NSString *description; +@property(readonly, nonatomic) NSFont *messageListFont; +@property(readonly, nonatomic) NSColor *messageListColor; +@property(readonly, copy, nonatomic) NSString *subRestoreString; +@property(readonly, copy, nonatomic) NSString *restoreString; +@property(readonly, copy, nonatomic) NSString *defaultMessageColumnAttributesKey; +@property(readonly, copy, nonatomic) NSDictionary *messageColumnAttributes; +- (BOOL)_addAttributesFromInfo:(id)arg1; +@property(readonly, copy, nonatomic) NSString *messageColumnConfiguration; +@property(readonly, copy, nonatomic) NSString *restoreMode; +@property(readonly, copy, nonatomic) NSString *displayMode; +@property(readonly, nonatomic) BOOL canCollapse; +@property(readonly, nonatomic) BOOL showSender; +@property(readonly, copy, nonatomic) NSString *senderTitleString; +@property(readonly, copy, nonatomic) NSString *dateTitleString; +- (long long)compareIndexInOutline:(id)arg1; +- (long long)_compareName:(id)arg1; +- (void)sortSubMailboxes; +@property(readonly, nonatomic) SEL sortSelector; +- (unsigned long long)indexInOutline; +- (id)_messagesFolderPathFromMailboxFolderPath:(id)arg1; +- (id)getMessageEnumerator; +- (void)reloadMessages; +- (id)messageWithIdentifier:(id)arg1; +- (void)addMessages:(id)arg1; +- (void)addMessagesObject:(id)arg1; +@property(copy, nonatomic) NSArray *messages; +- (void)_loadMessages; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (void)_addSubMailbox:(id)arg1; +- (void)_addSubMailboxesFromDictionaries:(id)arg1; +- (id)_sortedMaiboxDictsForMailboxDicts:(id)arg1; +- (BOOL)_shouldSortMailboxes; +- (BOOL)hasChildren; +- (unsigned long long)numberOfChildren; +- (id)subMailboxWithIdentifier:(id)arg1; +- (id)children; +@property(readonly, copy, nonatomic) NSArray *subMailboxes; +@property(readonly) BOOL isVisibleFlaggedMailbox; +- (BOOL)isPlaceholder; +- (BOOL)isSmartMailbox; +- (BOOL)isStore; +- (unsigned long long)displayCount; +- (BOOL)isContainer; +@property(readonly, copy, nonatomic) NSString *displayNameInMessageList; +@property(readonly, copy) NSString *displayNameInTitleBar; +- (id)_severalMessagesFormatString; +- (id)_oneMesageString; +- (id)extendedDisplayName; +@property(readonly, copy, nonatomic) NSString *displayNameForList; +- (id)displayName; +@property(readonly, copy, nonatomic) NSArray *paths; +@property(readonly, nonatomic) NSURL *timeMachineURL; +@property(readonly, copy, nonatomic) NSString *path; +- (id)accountURLString; +- (id)account; +@property(readonly, nonatomic) BOOL enabled; +@property(readonly, nonatomic) BOOL asyncLoading; +@property int type; +@property(readonly, nonatomic) long long backupType; +@property(readonly, nonatomic) id revisionID; +- (id)persistentIdentifier; +@property(readonly, nonatomic) id identifier; +- (id)mailboxWithMailboxPath:(id)arg1; +- (id)mailboxPath; +- (id)mailboxWithIndexPath:(id)arg1; +- (id)indexPathFromMailbox:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)initWithDictionary:(id)arg1 controller:(id)arg2; +@property(nonatomic) __weak id controller; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMailboxChangedPredicate.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMailboxChangedPredicate.h new file mode 100644 index 00000000..e4911ba3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMailboxChangedPredicate.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPredicate.h" + +@interface MTMMailboxChangedPredicate : NSPredicate +{ +} + ++ (id)mailboxChangedPredicate; +- (BOOL)evaluateWithObject:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMailboxControllerProtocol-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMailboxControllerProtocol-Protocol.h new file mode 100644 index 00000000..184eecda --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMailboxControllerProtocol-Protocol.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class MTMMailbox, NSDictionary, NSURL; + +@protocol MTMMailboxControllerProtocol +@property(readonly, nonatomic) MTMMailbox *rootMailbox; +@property(copy, nonatomic) NSDictionary *displayState; +@property(retain, nonatomic) NSURL *focusURL; +@property(readonly, nonatomic) BOOL activated; +@property(readonly, nonatomic) MTMMailbox *selectedMailbox; +@property(readonly, nonatomic) double fadeDuration; +@property(readonly, nonatomic) NSURL *tocURL; +@property(readonly, nonatomic) NSURL *mailLibraryURL; +- (void)updateThumbnailAsGenericWindow; +- (void)updateThumbnail; +- (void)adjustDisplayStateAfterTimeMachineStarted; +- (void)updateMessageListBindingsWithDisplayedMailbox:(id)arg1 scrollerDelta:(double)arg2; +- (void)restore:(id)arg1; +- (void)deactivate; +- (void)activate; +- (void)close; +- (void)showWindow:(id)arg1; +- (id)window; +- (id)revisionIDForURL:(id)arg1; +- (id)accountForAccountID:(id)arg1; +- (id)messageWithID:(id)arg1; +- (void)mailboxListWasUpdated:(id)arg1; +- (void)mailboxListWillBeUpdated:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMailboxFetcher.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMailboxFetcher.h new file mode 100644 index 00000000..a92000bf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMailboxFetcher.h @@ -0,0 +1,39 @@ +/* + * 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" + +@class MTMMailbox, NSConditionLock, NSMutableArray; + +@interface MTMMailboxFetcher : NSObject +{ + MTMMailbox *_processingMailbox; + NSMutableArray *_inactiveMailboxes; + NSConditionLock *_lock; + MTMMailbox *_loadingMailbox; + BOOL _threadLaunched; +} + ++ (id)sharedFetcher; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(nonatomic) BOOL threadLaunched; // @synthesize threadLaunched=_threadLaunched; +- (void).cxx_destruct; +- (void)waitForActiveMailboxToBeLoadedWithTimeOut:(double)arg1; +- (BOOL)shouldContinueFetchingMailbox:(id)arg1; +- (void)_protectedSmartAddMailboxToInactiveMailboxes:(id)arg1; +- (void)stopFetchingInactiveMailbox:(id)arg1; +- (void)startFetchingInactiveMailbox:(id)arg1; +- (void)stopFetchingMailbox:(id)arg1; +- (void)startFetchingMailbox:(id)arg1; +- (void)_workerThread; +- (void)_unlockAndNotify; +- (void)_lockWhenThereIsWorkToDo; +- (void)_lock; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMessage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMessage.h new file mode 100644 index 00000000..78363849 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMessage.h @@ -0,0 +1,41 @@ +/* + * 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" + +@class MTMMailbox, NSDate, NSString, NSURL; + +@interface MTMMessage : NSObject +{ + MTMMailbox *_mailbox; +} + +@property(nonatomic) __weak MTMMailbox *mailbox; // @synthesize mailbox=_mailbox; +- (void).cxx_destruct; +@property(readonly, copy, nonatomic) NSString *displayNameInMessageList; +- (unsigned long long)numberOfMessageInCurrentController; +- (BOOL)messageHasChangedFromSnapshot:(id)arg1; +- (id)description; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +@property(readonly, nonatomic) unsigned long long readFlags; +@property(readonly, nonatomic) unsigned long long messageFlags; +@property(readonly, nonatomic) unsigned long long messageSize; +@property(readonly, nonatomic) NSDate *lastViewedDate; +@property(readonly, nonatomic) NSDate *savedDate; +@property(readonly, nonatomic) NSDate *receivedDate; +@property(readonly, nonatomic) NSDate *sentDate; +@property(readonly, copy, nonatomic) NSString *to; +@property(readonly, copy, nonatomic) NSString *author; +@property(readonly, copy, nonatomic) NSString *subject; +@property(readonly, nonatomic) NSURL *URL; +@property(readonly, copy, nonatomic) NSString *path; +@property(readonly, nonatomic) id revisionID; +@property(readonly, nonatomic) id identifier; +@property(readonly, nonatomic) id identifierForURL; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMessageChangedPredicate.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMessageChangedPredicate.h new file mode 100644 index 00000000..c5d0355c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMessageChangedPredicate.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPredicate.h" + +@interface MTMMessageChangedPredicate : NSPredicate +{ +} + ++ (id)messageChangedPredicate; +- (BOOL)evaluateWithObject:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMessageColumnController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMessageColumnController.h new file mode 100644 index 00000000..c0001051 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMMessageColumnController.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class NSArrayController, NSDictionary, NSMutableDictionary, NSString, NSTableView; + +@interface MTMMessageColumnController : NSObject +{ + NSMutableDictionary *_columnConfigurations; + NSString *_activeConfiguration; + NSDictionary *_activeAttributes; + NSTableView *_messageTableView; + NSArrayController *_messagesController; +} + ++ (void)initialize; +@property(nonatomic) __weak NSArrayController *messagesController; // @synthesize messagesController=_messagesController; +@property(nonatomic) __weak NSTableView *messageTableView; // @synthesize messageTableView=_messageTableView; +- (void).cxx_destruct; +@property(retain, nonatomic) NSDictionary *activeAttributes; +- (void)_updateActiveAttributes; +- (id)_tableColumnForSortName:(id)arg1; +@property(retain, nonatomic) NSString *activeConfiguration; +- (void)_updateActiveConfiguration; +- (id)_configDictForConfiguration:(id)arg1; +- (void)_removeAllColumns; +- (id)_tableColumnWithIdentifier:(id)arg1 columnDict:(id)arg2; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMNumberCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMNumberCell.h new file mode 100644 index 00000000..47d02473 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMNumberCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface MTMNumberCell : NSTextFieldCell +{ +} + +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMOutlineCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMOutlineCell.h new file mode 100644 index 00000000..f96d73fd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMOutlineCell.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageTextFieldCell.h" + +@interface MTMOutlineCell : NSImageTextFieldCell +{ + BOOL _enabled; +} + +@property(nonatomic) BOOL enabled; // @synthesize enabled=_enabled; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)initTextCell:(id)arg1; +- (id)init; +- (id)initImageCell:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMOutlineTopLevelCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMOutlineTopLevelCell.h new file mode 100644 index 00000000..732e7939 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMOutlineTopLevelCell.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface MTMOutlineTopLevelCell : NSTextFieldCell +{ +} + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMOutlineView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMOutlineView.h new file mode 100644 index 00000000..aea8b9c8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMOutlineView.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOutlineView.h" + +@class MTMFullWindowController; + +@interface MTMOutlineView : NSOutlineView +{ + MTMFullWindowController *_windowController; +} + +@property(nonatomic) __weak MTMFullWindowController *windowController; // @synthesize windowController=_windowController; +- (void).cxx_destruct; +- (BOOL)becomeFirstResponder; +- (void)selectAll:(id)arg1; +- (struct CGRect)frameOfOutlineCellAtRow:(long long)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMReadCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMReadCell.h new file mode 100644 index 00000000..57447d7f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMReadCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMFlagsCell.h" + +@interface MTMReadCell : MTMFlagsCell +{ +} + +- (id)imageForFlags:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMScroller.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMScroller.h new file mode 100644 index 00000000..800c0a15 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMScroller.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScroller.h" + +@interface MTMScroller : NSScroller +{ + BOOL _isFakeScroller; + BOOL _dontNotify; + id _delegate; +} + +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +@property(nonatomic) BOOL dontNotify; // @synthesize dontNotify=_dontNotify; +- (void).cxx_destruct; +- (void)drawKnob; +@property(nonatomic) BOOL isFakeScroller; +- (void)_notifyPostScrollPositionChanged; +- (void)setDoubleValue:(double)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMSpecialMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMSpecialMailbox.h new file mode 100644 index 00000000..9c451cd0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMSpecialMailbox.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMMailbox.h" + +@class NSString; + +@interface MTMSpecialMailbox : MTMMailbox +{ + BOOL _isObserving; +} + ++ (Class)specialMailboxClassForMailboxType:(long long)arg1; ++ (Class)rootMailboxClass; +@property(nonatomic) BOOL isObserving; // @synthesize isObserving=_isObserving; +- (id)identifier; +@property(readonly, copy, nonatomic) NSString *recoverDisplayName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMTableView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMTableView.h new file mode 100644 index 00000000..22d10632 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMTableView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableView.h" + +@class NSArrayController; + +@interface MTMTableView : NSTableView +{ + NSArrayController *_messagesController; +} + +@property(retain, nonatomic) NSArrayController *messagesController; // @synthesize messagesController=_messagesController; +- (void).cxx_destruct; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMWindow.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMWindow.h new file mode 100644 index 00000000..147a611d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMWindow.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface MTMWindow : NSWindow +{ +} + +- (double)animationResizeTime:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMWindowController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMWindowController.h new file mode 100644 index 00000000..7c19b9f3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MTMWindowController.h @@ -0,0 +1,98 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowController.h" + +#import "MTMMailboxControllerProtocol.h" +#import "NSToolbarDelegate.h" + +@class MTMMailbox, MailToolbar, NSArray, NSAttributedString, NSDictionary, NSMutableDictionary, NSString, NSURL, NSView, StarFieldController; + +@interface MTMWindowController : NSWindowController +{ + NSURL *_mailLibraryURL; + NSURL *_focusURL; + NSMutableDictionary *_accounts; + BOOL _activated; + BOOL _bindingsAreSet; + MailToolbar *_toolbar; + NSView *_pinView; + StarFieldController *_controller; + MTMMailbox *_rootMailbox; + NSDictionary *_preferences; + NSDictionary *_toolbarItems; + NSDictionary *_tableOfContents; +} + ++ (void)loadPreferences:(id *)arg1 accounts:(id *)arg2 tableOfContents:(id *)arg3 rootMailbox:(id *)arg4 forLibraryURL:(id)arg5; ++ (BOOL)_loadTableOfContents:(id *)arg1 forLibraryURL:(id)arg2; ++ (id)focusURLInCurrentSnapshotForFocusURL:(id)arg1; ++ (id)baseLibraryURLFromMailLibraryURL:(id)arg1; ++ (id)mailLibraryURLFromFocusURL:(id)arg1; ++ (Class)specialMailboxClass; +@property(copy, nonatomic) NSDictionary *tableOfContents; // @synthesize tableOfContents=_tableOfContents; +@property(copy, nonatomic) NSDictionary *toolbarItems; // @synthesize toolbarItems=_toolbarItems; +@property(readonly, copy, nonatomic) NSDictionary *preferences; // @synthesize preferences=_preferences; +@property(nonatomic) BOOL bindingsAreSet; // @synthesize bindingsAreSet=_bindingsAreSet; +@property(nonatomic) BOOL activated; // @synthesize activated=_activated; +@property(readonly, nonatomic) MTMMailbox *rootMailbox; // @synthesize rootMailbox=_rootMailbox; +@property(nonatomic) __weak StarFieldController *controller; // @synthesize controller=_controller; +@property(nonatomic) __weak NSView *pinView; // @synthesize pinView=_pinView; +@property(nonatomic) __weak MailToolbar *toolbar; // @synthesize toolbar=_toolbar; +- (void).cxx_destruct; +- (void)updateMessageListBindingsWithDisplayedMailbox:(id)arg1 scrollerDelta:(double)arg2; +- (long long)compare:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)restore:(id)arg1; +@property(readonly, nonatomic) double fadeDuration; +@property(nonatomic) BOOL showChangedItemsOnly; +@property(readonly, copy, nonatomic) NSArray *restoreMessagePaths; +@property(readonly, copy, nonatomic) NSArray *restoreMailboxPaths; +@property(readonly, nonatomic) BOOL shouldRestoreMailboxPaths; +@property(readonly, copy, nonatomic) NSArray *selectedMessagePaths; +@property(readonly, copy, nonatomic) NSArray *selectedMailboxPaths; +@property(readonly, nonatomic) MTMMailbox *selectedMailbox; +@property(readonly, nonatomic) BOOL mailboxTargeted; +- (void)mailboxListWasUpdated:(id)arg1; +- (void)mailboxListWillBeUpdated:(id)arg1; +- (void)updateThumbnailAndGenericThumbnailIfNecessary; +@property(readonly, copy, nonatomic) NSAttributedString *placeholderString; +- (void)updateThumbnailAsGenericWindow; +- (void)updateThumbnail; +- (id)revisionIDForURL:(id)arg1; +- (void)adjustDisplayStateAfterTimeMachineStarted; +@property(copy, nonatomic) NSDictionary *displayState; +- (id)accountForAccountID:(id)arg1; +- (void)_setupToolbarWithConfigurationDictionary:(id)arg1; +- (id)messageWithID:(id)arg1; +- (BOOL)_loadTableOfContentsIfNeeded; +@property(readonly, copy, nonatomic) NSArray *mailboxes; +@property(readonly, nonatomic) NSURL *mailLibraryURL; +@property(readonly, nonatomic) NSURL *tocURL; +@property(retain, nonatomic) NSURL *focusURL; +- (void)_updateTimeMachineTargetIfNecessary; +- (void)deactivate; +- (void)activate; +- (BOOL)setupUIWithDisplayState:(id)arg1; +@property(readonly, copy) NSString *description; +- (void)dealloc; +- (void)removeBindings; +- (void)setupBindings; +- (id)initWithCoder:(id)arg1; +- (id)initWithWindow:(id)arg1; +- (id)initWithFocusURL:(id)arg1 bufferedController:(id)arg2 controller:(id)arg3; +- (id)initWithFocusURL:(id)arg1 controller:(id)arg2; +- (id)toolbarAllowedItemIdentifiers:(id)arg1; +- (id)toolbarDefaultItemIdentifiers:(id)arg1; +- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MUICollectionViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MUICollectionViewDelegate-Protocol.h new file mode 100644 index 00000000..79c18b2c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MUICollectionViewDelegate-Protocol.h @@ -0,0 +1,23 @@ +/* + * 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" + +@protocol MUICollectionViewDelegate + +@optional +- (void)collectionView:(id)arg1 didEndScrollInScrollView:(id)arg2; +- (void)collectionView:(id)arg1 didScrollInScrollView:(id)arg2; +- (void)collectionView:(id)arg1 didBeginScrollInScrollView:(id)arg2; +- (void)collectionView:(id)arg1 didDeselectIndex:(unsigned long long)arg2; +- (void)collectionView:(id)arg1 didSelectIndex:(unsigned long long)arg2; +- (void)collectionView:(id)arg1 didEndDisplayingCellView:(id)arg2 forItemAtIndex:(unsigned long long)arg3; +- (void)collectionView:(id)arg1 didBeginDisplayingCellView:(id)arg2 forItemAtIndex:(unsigned long long)arg3; +- (void)collectionView:(id)arg1 willEvictCellView:(id)arg2; +- (id)collectionView:(id)arg1 makeCellViewForItemAtIndex:(unsigned long long)arg2; +- (double)collectionView:(id)arg1 initialHeightOfCellAtIndex:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MUITokenAddressDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MUITokenAddressDelegate-Protocol.h new file mode 100644 index 00000000..f9f3932c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MUITokenAddressDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MUITokenAddressDelegate +- (BOOL)tokenAddressIsVIP:(id)arg1; +- (void)tokenAddress:(id)arg1 didSelectAction:(long long)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MUIWebDocumentViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MUIWebDocumentViewDelegate-Protocol.h new file mode 100644 index 00000000..4101177a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MUIWebDocumentViewDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol MUIWebDocumentViewDelegate + +@optional +- (id)additionalContextMenuItemsForWebDocumentView:(id)arg1 withWebAttachment:(id)arg2; +- (void)webDocumentView:(id)arg1 contentDidChange:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVComposeAccessoryViewOwner.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVComposeAccessoryViewOwner.h new file mode 100644 index 00000000..0b2495c2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVComposeAccessoryViewOwner.h @@ -0,0 +1,17 @@ +/* + * 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" + +@interface MVComposeAccessoryViewOwner : NSObject +{ +} + ++ (id)composeAccessoryViewOwner; +- (BOOL)messageWillBeSaved:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVLinkButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVLinkButton.h new file mode 100644 index 00000000..6af3ebe7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVLinkButton.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface MVLinkButton : NSButton +{ +} + +- (void)resetCursorRects; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVMailBundle.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVMailBundle.h new file mode 100644 index 00000000..1b682ddd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVMailBundle.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@interface MVMailBundle : NSObject +{ +} + ++ (id)composeAccessoryViewOwnerClassName; ++ (BOOL)hasComposeAccessoryViewOwner; ++ (id)preferencesPanelName; ++ (id)preferencesOwnerClassName; ++ (BOOL)hasPreferencesPanel; ++ (id)sharedInstance; ++ (void)registerBundle; ++ (id)composeAccessoryViewOwners; ++ (id)allBundles; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVMailboxSelectionOwner-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVMailboxSelectionOwner-Protocol.h new file mode 100644 index 00000000..88528175 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVMailboxSelectionOwner-Protocol.h @@ -0,0 +1,25 @@ +/* + * 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" + +@protocol MVMailboxSelectionOwner +- (id)mailboxSelectionWindow; +- (void)revealMailbox:(id)arg1; +- (BOOL)sectionIsExpanded:(id)arg1; +- (BOOL)mailboxIsExpanded:(id)arg1; +- (void)selectPathsToMailboxes:(id)arg1; +- (BOOL)isSelectedMailboxSpecial; +- (id)sortedSectionItemsForTimeMachine; +- (id)selectedMailbox; +- (id)selectedMailboxes; + +@optional +- (void)didCloseContextMenu:(id)arg1; +- (void)willShowContextMenu:(id)arg1; +- (id)expandedItems; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVSelectionOwner-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVSelectionOwner-Protocol.h new file mode 100644 index 00000000..dc3f068a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVSelectionOwner-Protocol.h @@ -0,0 +1,21 @@ +/* + * 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" + +@protocol MVSelectionOwner +- (id)messageStore; +- (id)messageThatUserIsProbablyReading; +- (id)currentDisplayedMessage; +- (void)selectMessages:(id)arg1; +- (id)selectionExpandingThreadsAndHiddenCopies:(BOOL)arg1; +- (id)selection; + +@optional +- (void)toggleThreadedMode; +- (BOOL)isInThreadedMode; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVTerminationHandler-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVTerminationHandler-Protocol.h new file mode 100644 index 00000000..a0d49713 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MVTerminationHandler-Protocol.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MVTerminationHandler +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; + +@optional +- (BOOL)needsToPromptUserBeforeTermination:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailAddressDelegate.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailAddressDelegate.h new file mode 100644 index 00000000..3cf8cb29 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailAddressDelegate.h @@ -0,0 +1,34 @@ +/* + * 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 "MUITokenAddressDelegate.h" + +@class NSString; + +@interface MailAddressDelegate : NSObject +{ +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void)_searchForToken:(id)arg1; +- (void)_removeFromVIPs:(id)arg1; +- (void)_addToVIPs:(id)arg1; +- (void)_openNewMessageForTokenAddress:(id)arg1; +- (BOOL)tokenAddressIsVIP:(id)arg1; +- (void)tokenAddress:(id)arg1 didSelectAction:(long long)arg2; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailAnimatingButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailAnimatingButton.h new file mode 100644 index 00000000..eee0615f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailAnimatingButton.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +#import "NSAnimationDelegate.h" + +@class NSImageView, NSString, NSViewAnimation; + +@interface MailAnimatingButton : NSButton +{ + NSViewAnimation *_animation; + NSImageView *_backImageView; + NSImageView *_frontImageView; +} + +@property(readonly, nonatomic) NSImageView *frontImageView; // @synthesize frontImageView=_frontImageView; +@property(readonly, nonatomic) NSImageView *backImageView; // @synthesize backImageView=_backImageView; +@property(retain, nonatomic) NSViewAnimation *animation; // @synthesize animation=_animation; +- (void).cxx_destruct; +- (void)_animationDidEnd; +- (void)animationDidEnd:(id)arg1; +- (void)animationDidStop:(id)arg1; +- (void)setImage:(id)arg1 animates:(BOOL)arg2; +- (void)setImage:(id)arg1; +- (void)dealloc; +- (id)initWithFrame:(struct CGRect)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailApp.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailApp.h new file mode 100644 index 00000000..fd7e740d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailApp.h @@ -0,0 +1,468 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSApplication.h" + +#import "IMAPUserAgent.h" +#import "MCActivityTarget.h" +#import "MCUserAgent.h" +#import "MFUserAgent.h" +#import "MVTerminationHandler.h" +#import "NSApplicationDelegate.h" +#import "NSMenuDelegate.h" + +@class ActivityViewer, DeliveryQueue, DockCountController, DynamicErrorWindowController, FlagsMenuItemView, MailboxesController, NSMenu, NSMutableArray, NSMutableSet, NSString, NSTimer, NSWindow, UserActivityHandler; + +@interface MailApp : NSApplication +{ + NSMenu *_mailboxesContextMenu; + NSMenu *_addButtonMenu; + NSMenu *_messageViewerContextMenu; + NSMenu *_viewAttachmentContextMenu; + NSMenu *_composeAttachmentContextMenu; + NSMutableArray *_stationeryBundlesToInstall; + DeliveryQueue *_deliveryQueue; + id _terminationHandlersLock; + NSMutableArray *_terminationHandlers; + NSMutableArray *_currentTerminationHandlers; + unsigned long long _terminateReply; + NSTimer *_terminationTimer; + BOOL _groupingByThreadDefaultsToOn; + NSMutableSet *_accountsCurrentlySynchronizing; + NSMutableArray *_appleEventDescriptorQueue; + NSMutableArray *_accountsEmptyingTrash; + BOOL _paused; + BOOL _isTerminating; + BOOL _isExitingFullscreen; + BOOL _hasPerformedDelayedInitialization; + BOOL _accountsHaveBeenConfigured; + BOOL _autoLaunchHidden; + BOOL _appHasFinishedLaunching; + BOOL _synchronizingAllAccounts; + BOOL _shouldUpdateEmailAliasesOnNextActivation; + BOOL _accountsAreNew; + BOOL _runningEmptyTrashSheet; + MailboxesController *_mailboxesController; + FlagsMenuItemView *_flagsMenuItemView; + NSWindow *_errorDiagnosisWindow; + DynamicErrorWindowController *_errorDiagnosisWindowController; + long long *_errorDiagnosisResult; + id _selectionOwner; + ActivityViewer *_activityViewer; + DockCountController *_dockCountController; + double _appDidFinishLaunchingTime; + UserActivityHandler *_userActivityHandler; +} + ++ (void)_testMachPorts; +@property(readonly, nonatomic) UserActivityHandler *userActivityHandler; // @synthesize userActivityHandler=_userActivityHandler; +@property(nonatomic) BOOL runningEmptyTrashSheet; // @synthesize runningEmptyTrashSheet=_runningEmptyTrashSheet; +@property(nonatomic) BOOL accountsAreNew; // @synthesize accountsAreNew=_accountsAreNew; +@property(nonatomic) BOOL shouldUpdateEmailAliasesOnNextActivation; // @synthesize shouldUpdateEmailAliasesOnNextActivation=_shouldUpdateEmailAliasesOnNextActivation; +@property BOOL synchronizingAllAccounts; // @synthesize synchronizingAllAccounts=_synchronizingAllAccounts; +@property(nonatomic) BOOL appHasFinishedLaunching; // @synthesize appHasFinishedLaunching=_appHasFinishedLaunching; +@property(nonatomic) BOOL autoLaunchHidden; // @synthesize autoLaunchHidden=_autoLaunchHidden; +@property(nonatomic) double appDidFinishLaunchingTime; // @synthesize appDidFinishLaunchingTime=_appDidFinishLaunchingTime; +@property(nonatomic) __weak DockCountController *dockCountController; // @synthesize dockCountController=_dockCountController; +@property(readonly, nonatomic) ActivityViewer *activityViewer; // @synthesize activityViewer=_activityViewer; +@property(nonatomic) __weak id selectionOwner; // @synthesize selectionOwner=_selectionOwner; +@property BOOL accountsHaveBeenConfigured; // @synthesize accountsHaveBeenConfigured=_accountsHaveBeenConfigured; +@property BOOL hasPerformedDelayedInitialization; // @synthesize hasPerformedDelayedInitialization=_hasPerformedDelayedInitialization; +@property BOOL isExitingFullscreen; // @synthesize isExitingFullscreen=_isExitingFullscreen; +@property BOOL isCurrentlyTerminating; // @synthesize isCurrentlyTerminating=_isTerminating; +@property(nonatomic) BOOL paused; // @synthesize paused=_paused; +@property(nonatomic) long long *errorDiagnosisResult; // @synthesize errorDiagnosisResult=_errorDiagnosisResult; +@property(retain, nonatomic) DynamicErrorWindowController *errorDiagnosisWindowController; // @synthesize errorDiagnosisWindowController=_errorDiagnosisWindowController; +@property(retain, nonatomic) NSWindow *errorDiagnosisWindow; // @synthesize errorDiagnosisWindow=_errorDiagnosisWindow; +@property(retain, nonatomic) FlagsMenuItemView *flagsMenuItemView; // @synthesize flagsMenuItemView=_flagsMenuItemView; +@property(retain, nonatomic) MailboxesController *mailboxesController; // @synthesize mailboxesController=_mailboxesController; +- (void).cxx_destruct; +- (void)_delayedUpgradeSteps; +- (void)_handleSyncNotification:(id)arg1; +- (void)_rulesChanged:(id)arg1; +- (BOOL)shouldRestoreStateOnNextLaunch; +- (void)replyToApplicationShouldTerminate:(BOOL)arg1; +- (void)handler:(id)arg1 approvedQuit:(BOOL)arg2; +- (void)removeTerminationHandler:(id)arg1; +- (void)addTerminationHandler:(id)arg1; +- (void)applicationWillTerminate:(id)arg1; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)_terminationTimerFired:(id)arg1; +- (unsigned long long)applicationShouldTerminate:(id)arg1; +- (id)_currentTerminationHandler; +- (void)_nowWouldBeAGoodTimeForHandler:(id)arg1 toTerminateFromSelector:(SEL)arg2; +- (void)_backfillDateLastViewedAttribute; +- (void)_fixAttachmentCache; +- (void)_cleanOldDatabases:(id)arg1; +- (void)_cleanUpAccount:(id)arg1; +- (void)_cleanupFinishedForAccount:(id)arg1; +- (void)_approveQuitIfFinished:(id)arg1; +- (void)_terminateNoConfirm; +- (void)quitNoMatterWhat; +- (void)timeMachineDismiss:(id)arg1; +- (void)_timeMachineSendEvent:(id)arg1; +- (BOOL)applicationShouldHandleReopen:(id)arg1 hasVisibleWindows:(BOOL)arg2; +- (id)preferredReplyAddressBasedOnCurrentSelection; +- (id)preferredAccountBasedOnSelection; +- (id)selectionExpandingThreadsAndHiddenCopies:(BOOL)arg1; +- (id)selection; +- (void)resignSelectionFor:(id)arg1; +- (void)setSelectionFrom:(id)arg1; +- (id)deliveryQueue; +- (void)mailTo:(id)arg1 userData:(id)arg2 error:(id *)arg3; +- (void)mailSelection:(id)arg1 userData:(id)arg2 error:(id *)arg3; +- (id)messageEditor; +- (void)_mailDocuments:(id)arg1; +- (id)frameworkVersion; +- (id)applicationVersion; +- (BOOL)handleClickOnURL:(id)arg1 visibleText:(id)arg2 window:(id)arg3 dontSwitch:(BOOL)arg4; +- (BOOL)handleMessageURL:(id)arg1; +- (BOOL)handleMailToURL:(id)arg1; +- (void)_preferencesChanged:(id)arg1; +- (void)menuWillOpen:(id)arg1; +- (void)willPresentContextualMenu:(id)arg1; +- (id)toolbarItemCopyMenu; +- (id)toolbarItemMoveMenu; +@property(retain, nonatomic) NSMenu *composeAttachmentContextMenu; +@property(retain, nonatomic) NSMenu *viewAttachmentContextMenu; +@property(retain, nonatomic) NSMenu *messageViewerContextMenu; +@property(retain, nonatomic) NSMenu *mailboxesContextMenu; +@property(retain, nonatomic) NSMenu *addButtonMenu; +- (void)loadMailboxesContextMenuNib; +- (void)_addressManagerLoaded:(id)arg1; +- (id)_messageEditorWithSettings:(id)arg1; +- (id)openMessageEditorWithParsedMessage:(id)arg1 headers:(id)arg2 activatingApp:(BOOL)arg3; +- (id)openStoreWithMailbox:(id)arg1 andMakeKey:(BOOL)arg2; +- (id)openStoreWithMailbox:(id)arg1; +- (void)application:(id)arg1 didFailToContinueUserActivityWithType:(id)arg2 error:(id)arg3; +- (BOOL)application:(id)arg1 continueUserActivity:(id)arg2 restorationHandler:(id)arg3; +- (BOOL)application:(id)arg1 willContinueUserActivityWithType:(id)arg2; +- (void)applicationDidBecomeActive:(id)arg1; +- (void)updateEmailAliasesOnNextActivation; +- (void)applicationDidUnhide:(id)arg1; +- (void)application:(id)arg1 openFiles:(id)arg2; +- (void)handleStationeryBundles; +- (BOOL)_handleOpenMessage:(id)arg1; +- (BOOL)application:(id)arg1 openFile:(id)arg2; +- (void)checkNewMailInSelectedAccounts:(id)arg1; +- (void)_checkNewMailInAccountRepresentedByMailbox:(id)arg1; +- (void)checkNewMail:(id)arg1; +@property(nonatomic) BOOL groupingByThreadDefaultsToOn; +- (void)toggleThreadedMode:(id)arg1; +- (void)eraseJunkMail:(id)arg1; +- (void)showToolbarItemForJunkMail:(BOOL)arg1; +- (void)compactSelectedMailboxes:(id)arg1; +- (void)emptyTrashInAccount:(id)arg1; +- (id)_accountsToEmptyTrashIn:(id)arg1; +- (void)_emptyTrashPromptingUserInAccounts:(id)arg1 storeToCompact:(id)arg2; +- (void)_emptyTrashInAccounts:(id)arg1 storeToCompact:(id)arg2; +- (void)editAccount:(id)arg1; +- (void)_accountsChanged:(id)arg1; +- (void)_setupCheckSpellingSubMenu; +- (void)_setupAccountMenuItems; +- (void)_removeAllItemsInAccountMenuWithTag:(long long)arg1; +- (void)_removeExtraSeparatorsInMailboxMenu; +- (void)bringUpGetNewMailMenu:(id)arg1; +- (void)bringUpEmptyTrashMenu:(id)arg1; +- (void)bringUpSynchronizeAccountMenu:(id)arg1; +- (void)bringUpOnlineOfflineMenu:(id)arg1; +- (void)_synchronizeAccountListMenuWithTagIfNeeded:(long long)arg1; +- (void)_getActiveAccountsThatCanGoOffline:(id)arg1 fetch:(id)arg2 sync:(id)arg3 deleteToTrash:(id)arg4 doesNotDeleteToTrash:(id)arg5; +- (id)_getMenuItemInMessageMenuWithTag:(long long)arg1; +- (id)_mailboxMenu; +- (void)_resetMenuItemWithTag:(long long)arg1; +- (void)insertOriginalAttachments:(id)arg1; +- (void)attachFilesAtEnd:(id)arg1; +- (void)alwaysAttachFilesAtEnd:(id)arg1; +- (void)sendWindowsFriendlyAttachments:(id)arg1; +- (void)alwaysSendWindowsFriendlyAttachments:(id)arg1; +- (void)showAccountInfo:(id)arg1; +- (void)showReleaseNotes:(id)arg1; +- (void)importMailboxes:(id)arg1; +- (void)addAccount:(id)arg1; +- (void)openSystemAccountPreferences:(id)arg1; +- (void)showPreferencesPanel:(id)arg1; +- (void)showActivityViewer:(id)arg1; +- (void)showAddressHistoryPanel:(id)arg1; +- (void)showMediaBrowser:(id)arg1; +- (void)selectMailbox:(id)arg1; +- (void)newViewerWindow:(id)arg1; +- (void)addFontTrait:(id)arg1; +- (void)orderFrontStylesPanel:(id)arg1; +- (void)showComposeWindow:(id)arg1; +- (void)showInfoPanel:(id)arg1; +- (void)showConnectionDoctor:(id)arg1; +- (void)closeAll:(id)arg1; +- (void)_emailsRejected:(id)arg1; +- (void)_emailAddressesApproved:(id)arg1; +- (void)_handleNetworkConfigurationChange; +- (void)_networkConfigurationChanged:(id)arg1; +- (void)synchronizeAccount:(id)arg1; +- (void)performSynchronizationForAccounts:(id)arg1; +- (void)_clearAccountsCurrentlySynchronizing; +- (BOOL)_isAccountCurrentlySynchronizing:(id)arg1; +- (void)_removeFromAccountsCurrentlySynchronizing:(id)arg1; +- (void)_addToAccountsCurrentlySynchronizing:(id)arg1; +- (void)toggleAccountOnlineStatus:(id)arg1; +- (void)disconnectThisAccountFromContextMenu:(id)arg1; +- (void)connectThisAccountFromContextMenu:(id)arg1; +- (void)connectAllAccountsFromContextMenu:(id)arg1; +- (void)disconnectAllAccountsFromContextMenu:(id)arg1; +- (void)disconnectThisAccount:(id)arg1; +- (void)connectThisAccount:(id)arg1; +- (void)connectAllAccounts:(id)arg1; +- (void)disconnectAllAccounts:(id)arg1; +- (BOOL)_moreThanOneAccountCanGoOffline; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateToolbarItem:(id)arg1; +- (void)runPageLayout:(id)arg1; +- (id)_accountBeingViewed; +- (BOOL)_isMailboxBeingViewedSpecial; +- (id)_mailboxBeingViewed; +- (id)_failureInfoForBundle:(id)arg1 path:(id)arg2; +- (void)_loadBundlesFromPath:(id)arg1 failedBundleInfos:(id)arg2; +- (void)_loadBundles; +- (void)_setupInitialState; +- (void)_restoreMessagesFromDefaults; +- (BOOL)_needToCreateLibraryUpgradingIfNecessary; +- (void)_setupQuitMenu; +- (void)applicationDidFinishLaunching:(id)arg1; +- (void)applicationWillFinishLaunching:(id)arg1; +- (void)_exitIfInUpgradeOnlyMode; +- (void)transformToBackground; +- (BOOL)applicationIsInBackgroundMode; +- (void)transformToForeground; +- (BOOL)applicationWillBeRestoredByTAL; +- (void)_delayOnStartup; +- (void)_showDatabaseAlert:(BOOL)arg1 databaseFile:(id)arg2; +- (void)_showReadOnlyFolderAlert:(id)arg1; +- (void)_showUnresolvedFolderAlert:(id)arg1; +- (void)_performBackgroundDelayedInitialization; +- (void)_setSourceOnGmailLabels; +- (void)_performDelayedInitialization; +- (void)_tryToPerformDelayedInitialization; +- (void)_updateEmailAliases; +- (BOOL)applicationOpenUntitledFile:(id)arg1; +- (BOOL)_showViewerWindow:(id)arg1; +- (void)showViewerWindow:(id)arg1; +- (void)_accountInfoDidChange:(id)arg1; +- (void)sendEvent:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)deliveryAccounts; +- (void)removeFromAccountsAtIndex:(unsigned long long)arg1; +- (void)insertInPopAccounts:(id)arg1; +- (void)insertInPopAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInImapAccounts:(id)arg1; +- (void)insertInImapAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInAosImapAccounts:(id)arg1; +- (void)insertInAosImapAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInAccounts:(id)arg1; +- (void)insertInAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)_insertInAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (long long)backgroundThreadCount; +- (void)setShouldCheckIntranetDomains:(BOOL)arg1 withString:(id)arg2; +- (void)setInlineSpellCheckingEnabled:(BOOL)arg1; +- (BOOL)inlineSpellCheckingEnabled; +- (void)setEncryptOutgoingMessages:(BOOL)arg1; +- (BOOL)encryptOutgoingMessages; +- (void)setSignOutgoingMessages:(BOOL)arg1; +- (BOOL)signOutgoingMessages; +- (void)setIncludeAllOfOriginalMessage:(BOOL)arg1; +- (BOOL)includeAllOfOriginalMessage; +- (void)setIncludeOriginalMessage:(BOOL)arg1; +- (BOOL)includeOriginalMessage; +- (void)setAlwaysBCCMyself:(BOOL)arg1; +- (BOOL)alwaysBCCMyself; +- (void)setAlwaysCCMyself:(BOOL)arg1; +- (BOOL)alwaysCCMyself; +- (void)setReplyInSameFormat:(BOOL)arg1; +- (BOOL)replyInSameFormat; +- (void)setUseAddressCompletion:(BOOL)arg1; +- (BOOL)useAddressCompletion; +- (void)setExpandGroupAddresses:(BOOL)arg1; +- (BOOL)expandGroupAddresses; +- (void)setCheckGrammarWithSpelling:(BOOL)arg1; +- (BOOL)checkGrammarWithSpelling; +- (void)setSpellCheckingBehavior:(long long)arg1; +- (long long)spellCheckingBehavior; +- (void)setAutosaveComposeWindows:(BOOL)arg1; +- (BOOL)autosaveComposeWindows; +- (void)setDefaultMessageFormat:(unsigned int)arg1; +- (unsigned int)defaultMessageFormat; +- (void)setLevelThreeQuotingColor:(int)arg1; +- (int)levelThreeQuotingColor; +- (void)setLevelTwoQuotingColor:(int)arg1; +- (int)levelTwoQuotingColor; +- (void)setLevelOneQuotingColor:(int)arg1; +- (int)levelOneQuotingColor; +- (int)quotingColorValue:(id)arg1; +- (void)setQuotingColor:(int)arg1 forLevel:(unsigned long long)arg2; +- (int)quotingColorForLevel:(unsigned long long)arg1; +- (void)setFixedWidthFontSize:(double)arg1; +- (double)fixedWidthFontSize; +- (void)setFixedWidthFont:(id)arg1; +- (id)fixedWidthFont; +- (void)setUseFixedWidthFont:(BOOL)arg1; +- (BOOL)useFixedWidthFont; +- (void)setMessageFontSize:(double)arg1; +- (double)messageFontSize; +- (void)setMessageFont:(id)arg1; +- (id)messageFont; +- (void)setMessageListFontSize:(double)arg1; +- (double)messageListFontSize; +- (void)setMessageListFont:(id)arg1; +- (id)messageListFont; +- (void)setColorQuotedText:(BOOL)arg1; +- (BOOL)colorQuotedText; +- (void)setFixedPitchFont:(id)arg1 size:(double)arg2; +- (void)setMessageFont:(id)arg1 size:(double)arg2; +- (void)fontsAndColorsPreferencesDidChange; +- (void)fontsAndColorsPreferencesDidChange:(BOOL)arg1; +- (void)setIndexDecryptedMessages:(BOOL)arg1; +- (BOOL)indexDecryptedMessages; +- (void)setDownloadFolderURL:(id)arg1; +- (id)downloadFolderURL; +- (void)setMailSoundForNewMail:(id)arg1; +- (id)mailSoundForNewMail; +- (void)setSoundPathForNewMail:(id)arg1; +- (id)soundPathForNewMail; +- (void)setPlayOtherMailSounds:(BOOL)arg1; +- (BOOL)playOtherMailSounds; +- (id)soundPathForNoNewMail; +- (void)handleShowAccountPreferencesEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleSafariPDFEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleSafariReaderArchiveEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleSafariPageArchiveEvent:(id)arg1 replyEvent:(id)arg2; +- (void)shareInMailEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleMailWebLinkEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleMailWebPageEvent:(id)arg1 replyEvent:(id)arg2; +- (void)handleGURLAppleEvent:(id)arg1 replyEvent:(id)arg2; +- (void)queueAppleEvent:(id)arg1 replyEvent:(id)arg2; +- (void)_unregisterAppleEventHandlers; +- (void)_registerAppleEventHandlers; +- (void)_registerAppleEventQueue; +- (id)handleImportMboxCommand:(id)arg1; +- (id)handleSynchronizeAccountCommand:(id)arg1; +- (id)handleCheckMailCommand:(id)arg1; +- (id)logMessages; +- (void)setLogActivityOnHosts:(id)arg1; +- (id)logActivityOnHosts; +- (void)setLogActivityOnPorts:(id)arg1; +- (id)logActivityOnPorts; +- (void)setLogAllSocketActivity:(BOOL)arg1; +- (BOOL)logAllSocketActivity; +- (void)setUseKeychain:(BOOL)arg1; +- (BOOL)useKeychain; +- (id)_objectSpecifierForObject:(id)arg1 inArray:(id)arg2 withKey:(id)arg3; +- (id)valueInComposeMessagesWithUniqueID:(id)arg1; +- (void)removeFromComposeMessagesAtIndex:(unsigned long long)arg1; +- (void)insertInComposeMessages:(id)arg1; +- (void)insertInComposeMessages:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)composeMessages; +- (void)removeFromMessageEditorsAtIndex:(unsigned long long)arg1; +- (void)insertInMessageEditors:(id)arg1; +- (void)insertInMessageEditors:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)messageEditors; +- (void)replaceInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertInMailboxes:(id)arg1; +- (void)insertInMailboxes:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)removeFromMailboxesAtIndex:(unsigned long long)arg1; +- (id)valueInMailboxesWithName:(id)arg1; +- (id)mailboxes; +- (id)junkMailbox; +- (id)trashMailbox; +- (id)sentMailbox; +- (id)draftsMailbox; +- (id)outbox; +- (id)inbox; +- (void)removeFromMessageViewersAtIndex:(unsigned long long)arg1; +- (void)insertInMessageViewers:(id)arg1; +- (void)insertInMessageViewers:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)valueInMessageViewersWithUniqueID:(id)arg1; +- (id)messageViewers; +- (void)removeFromDeliveryAccountsAtIndex:(unsigned long long)arg1; +- (void)insertInDeliveryAccounts:(id)arg1; +- (void)insertInDeliveryAccounts:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)aosImapAccounts; +- (id)imapAccounts; +- (id)popAccounts; +- (id)_accountsOfClass:(Class)arg1; +- (id)accounts; +- (id)applescriptSelection; +- (id)indicesOfObjectsByEvaluatingObjectSpecifier:(id)arg1; +- (void)openHelpTopic:(id)arg1; +- (id)_convertSnowLeopardToLionKey:(id)arg1; +- (void)_upgradeDebuggingDefaults; +- (void)_upgradeComposeWindowReplyOrForwardToolbar; +- (void)_setAutoFetchFrequencyToAutomatic; +- (void)_migrateRecentsToCoreRecents; +- (void)_migrateDefaultsToSharedDomain; +- (void)_removeViewRelatedMessagesToolbarButtonByDefault; +- (void)_upgradeExpandedMailboxesPreference; +- (void)_adoptNewToolbarDefaultConfigurations; +- (void)_preserveSignatureAboveQuotedTextPreference; +- (void)_switchToolbarsToIconOnly; +- (void)_upgradeFlagToolbarItems; +- (void)_turnOnConversationView; +- (void)performPostPersistenceUpgrades; +- (void)performPrePersistenceUpgrades; +- (BOOL)doParentalControlProcessingForMessage:(id)arg1; +- (BOOL)addInvitationsToCalendarAutomatically; +- (void)addInvitationsToCalendarFromMessages:(id)arg1; +- (id)junkStringFromHTMLData:(id)arg1 textEncodingName:(id)arg2 context:(id)arg3; +- (long long)junkMailBehavior; +- (id)headersRequiredForParentalControl; +- (id)headersRequiredForRouting; +- (void)setIsInTimeMachineMode:(BOOL)arg1; +- (BOOL)isInTimeMachineMode; +- (id)localAttachmentFilesDirectory; +- (BOOL)openTemporaryAttachments:(id)arg1 applicationBundle:(id)arg2; +- (void)relaunchAndQuitWithAdditionalArguments:(id)arg1; +- (void)relaunchAndQuit; +- (BOOL)isTerminating; +- (id)sharedAttachmentContextMenu; +- (void)storeBeingInvalidated:(id)arg1; +- (void)_downloadBigMessage:(id)arg1; +- (long long)queryUserForBigMessageAction:(id)arg1; +- (void)informUserOfBusyDatabaseWithRecoverer:(id)arg1 diagnosis:(long long *)arg2; +- (void)informUserOfIOErrorWithStateIn:(long long *)arg1; +- (void)_informUserOfDatabaseError:(id)arg1; +- (BOOL)queryUserWithMessageText:(id)arg1 informativeText:(id)arg2 defaultButton:(id)arg3 alternateButton:(id)arg4; +- (void)informUserOfError:(id)arg1; +- (long long)runAlertPanelWithTitle:(id)arg1 firstButtonTitle:(id)arg2 secondButtonTitle:(id)arg3 thirdButtonTitle:(id)arg4 message:(id)arg5; +- (void)_runAlertPanelInMainThreadWithInfo:(id)arg1; +- (void)resetSuppressedAccount:(id)arg1; +- (BOOL)promptForPassword:(id)arg1; +- (void)removeFromRulesAtIndex:(unsigned long long)arg1; +- (void)insertInRules:(id)arg1; +- (void)insertInRules:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)rules; +- (void)removeFromSignaturesAtIndex:(unsigned long long)arg1; +- (void)insertInSignatures:(id)arg1; +- (void)insertInSignatures:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)setSelectedSignature:(id)arg1; +- (id)selectedSignature; +- (void)setChooseSignatureWhenComposing:(BOOL)arg1; +- (BOOL)chooseSignatureWhenComposing; +- (id)signatures; +- (BOOL)shouldShowUnreadMessagesInBold; +- (void)setShouldShowUnreadMessagesInBold:(BOOL)arg1; +- (void)setShouldHighlightThreads:(BOOL)arg1; +- (BOOL)shouldHighlightThreads; +- (void)setHeaderDetail:(unsigned int)arg1; +- (unsigned int)headerDetail; +- (void)setDownloadHTMLAttachments:(BOOL)arg1; +- (BOOL)downloadHTMLAttachments; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailBarContainerButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailBarContainerButton.h new file mode 100644 index 00000000..1a6974b2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailBarContainerButton.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface MailBarContainerButton : NSButton +{ + BOOL _isPerformingSearchScope; +} + +- (BOOL)shouldSetFontSmoothingBackgroundColor; +@property(nonatomic) BOOL isPerformingSearchScope; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailBarContainerView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailBarContainerView.h new file mode 100644 index 00000000..6e99bc7f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailBarContainerView.h @@ -0,0 +1,89 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "NSAccessibilityGroup.h" + +@class CALayer, FavoritesBarView, MailBarContainerButton, MessageViewer, NSArray, NSButton, NSLayoutConstraint, NSStackView, NSString, _SidebarButton, _TopDividerLine; + +@interface MailBarContainerView : NSView +{ + BOOL _isVisible; + BOOL _barWasHiddenBeforeSearch; + BOOL _isSearchScopeViewVisible; + int _searchTarget; + MessageViewer *_messageViewer; + FavoritesBarView *_favoritesBarView; + _SidebarButton *_sidebarButton; + NSView *_searchScopeClipView; + NSStackView *_stackView; + NSStackView *_searchScopeView; + NSButton *_saveButton; + NSLayoutConstraint *_animationConstraint; + _TopDividerLine *_topDivider; + CALayer *_bottomDividerLayer; + MailBarContainerButton *_allButton; + MailBarContainerButton *_extraButton; +} + +@property(nonatomic) BOOL isSearchScopeViewVisible; // @synthesize isSearchScopeViewVisible=_isSearchScopeViewVisible; +@property(nonatomic) __weak MailBarContainerButton *extraButton; // @synthesize extraButton=_extraButton; +@property(nonatomic) __weak MailBarContainerButton *allButton; // @synthesize allButton=_allButton; +@property(nonatomic) __weak CALayer *bottomDividerLayer; // @synthesize bottomDividerLayer=_bottomDividerLayer; +@property(nonatomic) __weak _TopDividerLine *topDivider; // @synthesize topDivider=_topDivider; +@property(retain, nonatomic) NSLayoutConstraint *animationConstraint; // @synthesize animationConstraint=_animationConstraint; +@property(nonatomic) __weak NSButton *saveButton; // @synthesize saveButton=_saveButton; +@property(nonatomic) __weak NSStackView *searchScopeView; // @synthesize searchScopeView=_searchScopeView; +@property(nonatomic) __weak NSStackView *stackView; // @synthesize stackView=_stackView; +@property(nonatomic) __weak NSView *searchScopeClipView; // @synthesize searchScopeClipView=_searchScopeClipView; +@property(nonatomic) __weak _SidebarButton *sidebarButton; // @synthesize sidebarButton=_sidebarButton; +@property(nonatomic) __weak FavoritesBarView *favoritesBarView; // @synthesize favoritesBarView=_favoritesBarView; +@property(nonatomic) BOOL barWasHiddenBeforeSearch; // @synthesize barWasHiddenBeforeSearch=_barWasHiddenBeforeSearch; +@property(nonatomic) int searchTarget; // @synthesize searchTarget=_searchTarget; +@property(nonatomic) BOOL isVisible; // @synthesize isVisible=_isVisible; +@property(nonatomic) __weak MessageViewer *messageViewer; // @synthesize messageViewer=_messageViewer; +- (void).cxx_destruct; +- (id)accessibilityLabel; +- (id)accessibilityChildren; +- (BOOL)isAccessibilityElement; +- (BOOL)extraButtonsSelected; +- (void)scopeToAllMailboxes; +- (void)_saveButtonAction:(id)arg1; +@property(readonly, nonatomic) NSArray *scopeMailboxes; +- (void)_scopeChanged; +- (void)_scopeWillChange; +- (BOOL)isShowingSearchResults; +- (void)setCanSearchSelectedMailbox:(BOOL)arg1; +- (void)setCanSaveSearch:(BOOL)arg1; +- (void)clearSearchButtons; +- (void)_tearDown; +- (void)finishedShowHideAnimation; +- (void)_animateSearchScopeView:(BOOL)arg1; +- (void)_appearSearchScopeView:(BOOL)arg1; +- (void)setSearchScopeViewVisible:(BOOL)arg1 animate:(BOOL)arg2; +- (id)_extraSearchButtonTitle; +- (void)_setupSearchScopeViewUI; +- (void)scopeButtonClicked:(id)arg1; +- (void)_toolbarVisibilityDidChange:(id)arg1; +- (void)layoutSublayersOfLayer:(id)arg1; +- (void)updateLayer; +- (BOOL)isFlipped; +- (void)dealloc; +- (void)updateConstraints; +- (void)awakeFromNib; +- (void)_mailBarContainerViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailCopyCommand.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailCopyCommand.h new file mode 100644 index 00000000..7ba3f3a0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailCopyCommand.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSCloneCommand.h" + +@interface MailCopyCommand : NSCloneCommand +{ +} + +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailDeleteCommand.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailDeleteCommand.h new file mode 100644 index 00000000..dea6eccf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailDeleteCommand.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSDeleteCommand.h" + +@interface MailDeleteCommand : NSDeleteCommand +{ +} + +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailEmailImporter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailEmailImporter.h new file mode 100644 index 00000000..739b7114 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailEmailImporter.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +#import "MFAddProgressMonitor.h" + +@class ImportItem, NSString; + +@interface MailEmailImporter : FilesystemEmailImporter +{ + ImportItem *_currentItem; + unsigned long long _currentItemMessageIndex; + unsigned long long _currentItemMessageCount; + unsigned long long _currentBlockSize; +} + ++ (id)explanatoryText; ++ (id)name; +@property(nonatomic) unsigned long long currentBlockSize; // @synthesize currentBlockSize=_currentBlockSize; +@property(nonatomic) unsigned long long currentItemMessageCount; // @synthesize currentItemMessageCount=_currentItemMessageCount; +@property(nonatomic) unsigned long long currentItemMessageIndex; // @synthesize currentItemMessageIndex=_currentItemMessageIndex; +@property(nonatomic) __weak ImportItem *currentItem; // @synthesize currentItem=_currentItem; +- (void).cxx_destruct; +- (void)setFractionDone:(double)arg1; +- (id)mailboxNameForImportItem:(id)arg1; +- (void)importMailbox:(id)arg1; +- (BOOL)isValidMailbox:(id)arg1; +- (id)pathExtensions; +- (id)prepareForImport; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailFullScreenWindowDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailFullScreenWindowDelegate-Protocol.h new file mode 100644 index 00000000..9ce26e43 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailFullScreenWindowDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MailFullScreenWindowDelegate +- (void)restoreFrame; +- (BOOL)mailFullScreenWindowShouldClose:(id)arg1; +- (id)windowForMailFullScreen; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailInspectorBar.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailInspectorBar.h new file mode 100644 index 00000000..945de7c4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailInspectorBar.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSInspectorBar.h" + +@class NSView, NSWindow; + +@interface MailInspectorBar : NSInspectorBar +{ + NSWindow *_window; + NSView *_separatorView; +} + ++ (Class)standardItemControllerClass; +@property(retain, nonatomic) NSView *separatorView; // @synthesize separatorView=_separatorView; +@property(nonatomic) __weak NSWindow *window; // @synthesize window=_window; +- (void).cxx_destruct; +- (void)_tile; +- (id)_inspectorBarView; +- (void)_setWindow:(id)arg1; +- (id)loadedNib; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailInspectorBarItemController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailInspectorBarItemController.h new file mode 100644 index 00000000..923f4898 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailInspectorBarItemController.h @@ -0,0 +1,52 @@ +/* + * 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 "NSInspectorBarDelegate.h" +#import "NSInspectorBarItemController.h" + +@class NSInspectorBar, NSPopUpButton, NSSegmentedControl, NSString, NSView; + +@interface MailInspectorBarItemController : NSObject +{ + NSView *_view; + NSInspectorBar *_inspectorBar; + NSPopUpButton *_fontSizePopUpButton; + NSPopUpButton *_listPopUpButton; + NSPopUpButton *_indentationPopUpButton; + NSSegmentedControl *_textAlignmentSegmentedControl; +} + ++ (id)keyForItemIdentifier:(id)arg1; ++ (id)loadedNib; ++ (id)supportedInspectorItemIdentifiers; +@property(nonatomic) __weak NSSegmentedControl *textAlignmentSegmentedControl; // @synthesize textAlignmentSegmentedControl=_textAlignmentSegmentedControl; +@property(nonatomic) __weak NSPopUpButton *indentationPopUpButton; // @synthesize indentationPopUpButton=_indentationPopUpButton; +@property(nonatomic) __weak NSPopUpButton *listPopUpButton; // @synthesize listPopUpButton=_listPopUpButton; +@property(nonatomic) __weak NSPopUpButton *fontSizePopUpButton; // @synthesize fontSizePopUpButton=_fontSizePopUpButton; +@property(nonatomic) __weak NSInspectorBar *inspectorBar; // @synthesize inspectorBar=_inspectorBar; +@property(retain, nonatomic) NSView *view; // @synthesize view=_view; +- (void).cxx_destruct; +- (id)viewForInspectorBarItem:(id)arg1; +- (id)inspectorBar:(id)arg1 itemForIdentifier:(id)arg2; +- (void)changeTextAlignment:(id)arg1; +- (void)changeFontSize:(id)arg1; +- (void)removePlaceholderFontSize; +- (void)selectFontSize:(double)arg1; +- (void)selectedFontDidChange:(id)arg1; +- (id)newMenuItemForFontSize:(double)arg1; +- (void)loadNib; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailMoveCommand.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailMoveCommand.h new file mode 100644 index 00000000..83131942 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailMoveCommand.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMoveCommand.h" + +@interface MailMoveCommand : NSMoveCommand +{ +} + ++ (void)_performBackgroundCommand:(id)arg1 copyMessages:(id)arg2 fromStores:(id)arg3 toMailbox:(id)arg4 shouldDelete:(BOOL)arg5; +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailPopoverWell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailPopoverWell.h new file mode 100644 index 00000000..8cd98655 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailPopoverWell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopoverColorWell.h" + +@interface MailPopoverWell : NSPopoverColorWell +{ +} + ++ (id)_bezelRenderingButton; +- (struct CGSize)colorSwatchInset; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailPreferences.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailPreferences.h new file mode 100644 index 00000000..2534d495 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailPreferences.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferences.h" + +@interface MailPreferences : NSPreferences +{ +} + ++ (void)restoreWindowWithIdentifier:(id)arg1 state:(id)arg2 completionHandler:(id)arg3; ++ (void)_mailApplicationDidFinishLaunching:(id)arg1; ++ (void)configureFetchFrequencyPopUp:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (BOOL)fontManager:(id)arg1 willIncludeFont:(id)arg2; +- (unsigned long long)validModesForFontPanel:(id)arg1; +- (void)changeFont:(id)arg1; +- (id)windowTitle; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailSearchCriteriaHelper.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailSearchCriteriaHelper.h new file mode 100644 index 00000000..50f447f3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailSearchCriteriaHelper.h @@ -0,0 +1,30 @@ +/* + * 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" + +@interface MailSearchCriteriaHelper : NSObject +{ +} + ++ (id)compoundCriterionWithCriterion:(id)arg1 andAnyDateMatchingQuery:(id)arg2; ++ (id)criterionForAttachmentNameContainsString:(id)arg1; ++ (id)criterionForDateWithin:(id)arg1 and:(id)arg2 withType:(long long)arg3; ++ (id)textSearchCriterionForSearchField:(long long)arg1 queryString:(id)arg2 includeDateTextualRepresentations:(BOOL)arg3 exactMatch:(BOOL)arg4; ++ (id)criterionForMailboxSuggestion:(id)arg1 forSavedSearch:(BOOL)arg2; ++ (id)criterionForMailFlagColorSuggestion:(id)arg1; ++ (id)criterionForPrioritySuggestion:(id)arg1; ++ (id)criterionForAttachmentNameContainsSuggestion:(id)arg1 forSavedSearch:(BOOL)arg2; ++ (id)criterionForMessageHasAttachment; ++ (id)criterionForMailStatusSuggestion:(id)arg1; ++ (id)criterionForDateSuggestion:(id)arg1; ++ (id)mailboxSearchCriterionForScope:(int)arg1 inMessageMall:(id)arg2 shouldShowRecipient:(char *)arg3; ++ (id)_mailboxSearchCriterionForMailboxes:(id)arg1; ++ (id)criterionForSuggestion:(id)arg1 forSavedSearch:(BOOL)arg2; ++ (id)criterionForSuggestions:(id)arg1 scope:(int)arg2 inMessageMall:(id)arg3 shouldShowRecipient:(char *)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailSplitView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailSplitView.h new file mode 100644 index 00000000..16e96bfb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailSplitView.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSplitView.h" + +@class NSString; + +@interface MailSplitView : NSSplitView +{ + long long _dividerToolTipTag; + NSString *_toolTipString; + BOOL _isDividerHidden; + NSString *_oldAutosaveName; +} + +@property(nonatomic) BOOL isDividerHidden; // @synthesize isDividerHidden=_isDividerHidden; +@property(copy, nonatomic) NSString *oldAutosaveName; // @synthesize oldAutosaveName=_oldAutosaveName; +- (void).cxx_destruct; +- (double)dividerThickness; +- (id)dividerColor; +- (struct CGRect)_dividerRect; +- (void)setDividerToolTip:(id)arg1; +- (BOOL)isFirstViewVisible; +- (BOOL)isSecondViewVisible; +- (BOOL)_isSubviewAtIndexVisible:(unsigned long long)arg1; +- (id)accessibilityHelp; +- (void)setAutosaveName:(id)arg1; +- (void)_windowLayoutDidExitFullScreen:(id)arg1; +- (void)_windowLayoutWillExitFullScreen:(id)arg1; +- (void)_windowLayoutDidEnterFullScreen:(id)arg1; +- (void)_windowLayoutWillEnterFullScreen:(id)arg1; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailStackViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailStackViewController.h new file mode 100644 index 00000000..e712edfd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailStackViewController.h @@ -0,0 +1,71 @@ +/* + * 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 "StackDataSource.h" +#import "StackDelegate.h" + +@class CALayer, NSArray, NSImage, NSMutableDictionary, NSMutableSet, NSString, NSView, StackController, _StackContainerView; + +@interface MailStackViewController : NSObject +{ + NSMutableDictionary *_messageViewControllers; + NSMutableDictionary *_messageLayers; + NSMutableSet *_snapshotWindows; + BOOL _performingAsynchronousAnimation; + NSArray *_messages; + NSImage *_topLayerSnapshot; + NSView *_containerView; + _StackContainerView *_stackContainerView; + CALayer *_stackContainerLayer; + StackController *_stackController; +} + +@property(retain, nonatomic) StackController *stackController; // @synthesize stackController=_stackController; +@property(retain, nonatomic) CALayer *stackContainerLayer; // @synthesize stackContainerLayer=_stackContainerLayer; +@property(retain, nonatomic) _StackContainerView *stackContainerView; // @synthesize stackContainerView=_stackContainerView; +@property(readonly, nonatomic) NSView *containerView; // @synthesize containerView=_containerView; +@property(retain, nonatomic) NSImage *topLayerSnapshot; // @synthesize topLayerSnapshot=_topLayerSnapshot; +@property(nonatomic) BOOL performingAsynchronousAnimation; // @synthesize performingAsynchronousAnimation=_performingAsynchronousAnimation; +@property(retain, nonatomic) NSArray *messages; // @synthesize messages=_messages; +- (void).cxx_destruct; +- (void)stackController:(id)arg1 willRemoveLayerForItem:(id)arg2; +- (void)stackController:(id)arg1 willDisplayLayer:(id)arg2 forItem:(id)arg3; +- (void)stackController:(id)arg1 willStackLayer:(id)arg2 forItem:(id)arg3; +- (void)stackControllerDidStopStackingLayers:(id)arg1; +- (void)stackControllerWillStartStackingLayers:(id)arg1; +- (void)stackController:(id)arg1 loadDataForItem:(id)arg2 inLayer:(id)arg3; +- (BOOL)stackController:(id)arg1 isDataLoadedForItem:(id)arg2 inLayer:(id)arg3; +- (id)stackController:(id)arg1 layerForItem:(id)arg2; +- (id)stackContainerLayerForStackController:(id)arg1; +- (void)updateDisplayForSelectedMessages:(id)arg1; +- (id)_stackControllerCreateIfNeeded:(BOOL)arg1; +- (void)_abortAnimations; +- (void)mui_prepareToLayoutSynchronously:(id)arg1; +- (void)mui_performAnimation; +- (void)mui_prepareToAnimate:(id)arg1; +- (void)_viewDidEndLiveResize:(id)arg1; +- (void)_viewFrameDidChange:(id)arg1; +- (void)_resizeMessageViewWithID:(id)arg1 toSize:(struct CGSize)arg2 animating:(BOOL)arg3; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_takeSnapshotOfMessageViewForController:(id)arg1 completionHandler:(id)arg2; +- (void)_removeMessageViewForItem:(id)arg1; +- (id)_messageViewForItem:(id)arg1 createIfNeeded:(BOOL)arg2; +- (void)_detachMessageViewFromIndividualWindow:(id)arg1; +- (void)_attachMessageViewToIndividualWindow:(id)arg1; +- (void)setStackVisible:(BOOL)arg1 animates:(BOOL)arg2; +- (void)dealloc; +- (id)initWithContainerView:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailTableView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailTableView.h new file mode 100644 index 00000000..779a5361 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailTableView.h @@ -0,0 +1,121 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableView.h" + +#import "NSScrollViewDelegate.h" + +@class NSString; + +@interface MailTableView : NSTableView +{ + BOOL _keyEventHandled; + BOOL _delegateProvidesDragImage; + BOOL _delegateDoesCommandBySelector; + BOOL _delegateDragWillEndOperation; + BOOL _delegateDraggedImageMovedTo; + BOOL _delegateProvidesBackgroundShadedRegions; + BOOL _delegateProvidesHighlightStyle; + BOOL _delegateRespondsToWillDrawRowsInRange; + BOOL _delegateApprovesScrolling; + BOOL _delegateRespondsToGotEvent; + BOOL _delegateRespondsToMouseDown; + BOOL _delegateRespondsToWillMoveToWindow; + BOOL _delegateRespondsToDidMoveToWindow; + BOOL _delegateRespondsToWillStartLiveResize; + BOOL _delegateRespondsToDidEndLiveResize; + BOOL _delegateRespondsToDidBecomeFirstResponder; + BOOL _delegateRespondsToDidResignFirstResponder; + BOOL _delegateRespondsToTopLineColor; + BOOL _delegateApprovesRemoveColumn; + BOOL _delegateApprovesAddColumn; + BOOL _delegateRespondsToUserDidScrollInTableView; + BOOL _didLazyLoadMenu; + long long _virtualClickedRow; +} + +@property(nonatomic) BOOL didLazyLoadMenu; // @synthesize didLazyLoadMenu=_didLazyLoadMenu; +@property(nonatomic) long long virtualClickedRow; // @synthesize virtualClickedRow=_virtualClickedRow; +@property(nonatomic) BOOL delegateRespondsToUserDidScrollInTableView; // @synthesize delegateRespondsToUserDidScrollInTableView=_delegateRespondsToUserDidScrollInTableView; +@property(nonatomic) BOOL delegateApprovesAddColumn; // @synthesize delegateApprovesAddColumn=_delegateApprovesAddColumn; +@property(nonatomic) BOOL delegateApprovesRemoveColumn; // @synthesize delegateApprovesRemoveColumn=_delegateApprovesRemoveColumn; +@property(nonatomic) BOOL delegateRespondsToTopLineColor; // @synthesize delegateRespondsToTopLineColor=_delegateRespondsToTopLineColor; +@property(nonatomic) BOOL delegateRespondsToDidResignFirstResponder; // @synthesize delegateRespondsToDidResignFirstResponder=_delegateRespondsToDidResignFirstResponder; +@property(nonatomic) BOOL delegateRespondsToDidBecomeFirstResponder; // @synthesize delegateRespondsToDidBecomeFirstResponder=_delegateRespondsToDidBecomeFirstResponder; +@property(nonatomic) BOOL delegateRespondsToDidEndLiveResize; // @synthesize delegateRespondsToDidEndLiveResize=_delegateRespondsToDidEndLiveResize; +@property(nonatomic) BOOL delegateRespondsToWillStartLiveResize; // @synthesize delegateRespondsToWillStartLiveResize=_delegateRespondsToWillStartLiveResize; +@property(nonatomic) BOOL delegateRespondsToDidMoveToWindow; // @synthesize delegateRespondsToDidMoveToWindow=_delegateRespondsToDidMoveToWindow; +@property(nonatomic) BOOL delegateRespondsToWillMoveToWindow; // @synthesize delegateRespondsToWillMoveToWindow=_delegateRespondsToWillMoveToWindow; +@property(nonatomic) BOOL delegateRespondsToMouseDown; // @synthesize delegateRespondsToMouseDown=_delegateRespondsToMouseDown; +@property(nonatomic) BOOL delegateRespondsToGotEvent; // @synthesize delegateRespondsToGotEvent=_delegateRespondsToGotEvent; +@property(nonatomic) BOOL delegateApprovesScrolling; // @synthesize delegateApprovesScrolling=_delegateApprovesScrolling; +@property(nonatomic) BOOL delegateRespondsToWillDrawRowsInRange; // @synthesize delegateRespondsToWillDrawRowsInRange=_delegateRespondsToWillDrawRowsInRange; +@property(nonatomic) BOOL delegateProvidesHighlightStyle; // @synthesize delegateProvidesHighlightStyle=_delegateProvidesHighlightStyle; +@property(nonatomic) BOOL delegateProvidesBackgroundShadedRegions; // @synthesize delegateProvidesBackgroundShadedRegions=_delegateProvidesBackgroundShadedRegions; +@property(nonatomic) BOOL delegateDraggedImageMovedTo; // @synthesize delegateDraggedImageMovedTo=_delegateDraggedImageMovedTo; +@property(nonatomic) BOOL delegateDragWillEndOperation; // @synthesize delegateDragWillEndOperation=_delegateDragWillEndOperation; +@property(nonatomic) BOOL delegateDoesCommandBySelector; // @synthesize delegateDoesCommandBySelector=_delegateDoesCommandBySelector; +@property(nonatomic) BOOL delegateProvidesDragImage; // @synthesize delegateProvidesDragImage=_delegateProvidesDragImage; +@property BOOL keyEventHandled; // @synthesize keyEventHandled=_keyEventHandled; +- (void)reloadData; +- (BOOL)_isRichTableView; +- (void)didScrollInScrollView:(id)arg1; +- (void)scrollRowToVisible:(long long)arg1 position:(int)arg2; +- (void)showSelectionAndCenter:(BOOL)arg1; +- (BOOL)isSelectionVisible; +- (long long)lastRowInSelection; +- (long long)firstRowInSelection; +- (BOOL)resignFirstResponder; +- (BOOL)becomeFirstResponder; +- (void)viewDidMoveToSuperview; +- (void)viewWillMoveToSuperview:(id)arg1; +- (void)viewDidMoveToWindow; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)_postEventNotification:(id)arg1 fromCell:(id)arg2; +- (void)mouseUp:(id)arg1; +- (void)_logSpotlightInfoForClickedMessage; +- (void)mouseDown:(id)arg1; +- (long long)clickedRow; +- (void)drawGridInClipRect:(struct CGRect)arg1; +- (void)drawRow:(long long)arg1 clipRect:(struct CGRect)arg2; +- (void)drawRect:(struct CGRect)arg1; +- (void)drawBackgroundInClipRect:(struct CGRect)arg1; +- (void)_colorizeRow:(long long)arg1 inRect:(struct CGRect)arg2 clipRect:(struct CGRect)arg3; +- (void)_highlightRect:(struct CGRect)arg1 withColor:(id)arg2 usingStyle:(int)arg3; +- (BOOL)shouldUseSecondaryHighlightColor; +- (void)draggingSession:(id)arg1 movedToPoint:(struct CGPoint)arg2; +- (void)draggingSession:(id)arg1 endedAtPoint:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (id)dragImageForRowsWithIndexes:(id)arg1 tableColumns:(id)arg2 event:(id)arg3 offset:(struct CGPoint *)arg4; +- (void)addTableColumn:(id)arg1; +- (void)removeTableColumn:(id)arg1; +- (void)moveColumn:(long long)arg1 toColumn:(long long)arg2; +- (void)setTableColumn:(id)arg1 toVisible:(BOOL)arg2 atPosition:(long long)arg3; +- (void)scrollRowToVisible:(long long)arg1; +- (void)showTableColumnsFromArray:(id)arg1 allColumns:(id)arg2; +- (void)drawBackgroundOverhangInRect:(struct CGRect)arg1; +- (id)menu; +- (void)setDelegate:(id)arg1; +- (void)keyDown:(id)arg1; +- (void)insertText:(id)arg1; +- (void)doCommandBySelector:(SEL)arg1; +- (BOOL)respondsToSelector:(SEL)arg1; +- (void)viewDidEndLiveResize; +- (void)viewWillStartLiveResize; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (void)_mailTableViewCommonInit; +- (id)menuForEvent:(id)arg1; +- (id)_extendedDelegate; +- (BOOL)isOpaque; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailTableViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailTableViewDelegate-Protocol.h new file mode 100644 index 00000000..9599a51c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailTableViewDelegate-Protocol.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableViewDelegate.h" + +@protocol MailTableViewDelegate + +@optional +- (void)userDidScrollInTableView:(id)arg1; +- (id)tableViewGetDefaultMenu:(id)arg1; +- (id)mailTableViewTopLineColor:(id)arg1; +- (void)mailTableViewDidResignFirstResponder:(id)arg1; +- (void)mailTableViewDidBecomeFirstResponder:(id)arg1; +- (BOOL)mailTableView:(id)arg1 shouldAddTableColumn:(id)arg2; +- (BOOL)mailTableView:(id)arg1 shouldRemoveTableColumn:(id)arg2; +- (void)mailTableView:(id)arg1 didMouseDown:(id)arg2; +- (void)mailTableView:(id)arg1 willMouseDown:(id)arg2; +- (void)mailTableView:(id)arg1 gotEvent:(id)arg2; +- (void)mailTableViewDidEndLiveResize:(id)arg1; +- (void)mailTableViewWillStartLiveResize:(id)arg1; +- (void)mailTableViewDidMoveToWindow:(id)arg1; +- (void)mailTableView:(id)arg1 willMoveToWindow:(id)arg2; +- (id)mailTableView:(id)arg1 rangesForBackgroundShadingInRange:(struct _NSRange)arg2 shadingColors:(id *)arg3 leftColumnColors:(id *)arg4; +- (void)mailTableView:(id)arg1 willDrawRowsInRange:(struct _NSRange)arg2; +- (int)mailTableView:(id)arg1 highlightStyleForRow:(long long)arg2 inRect:(struct CGRect *)arg3 color:(id *)arg4; +- (long long)mailTableView:(id)arg1 shouldScrollRowToVisible:(long long)arg2; +- (BOOL)mailTableView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (void)mailTableViewDraggingSession:(id)arg1 movedTo:(struct CGPoint)arg2; +- (void)mailTableViewDragWillEnd:(id)arg1 operation:(unsigned long long)arg2; +- (id)mailTableView:(id)arg1 dragImageForRowsWithIndexes:(id)arg2 event:(id)arg3 dragImageOffset:(struct CGPoint *)arg4; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailTableViewDelegateDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailTableViewDelegateDelegate-Protocol.h new file mode 100644 index 00000000..1158a34b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailTableViewDelegateDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol MailTableViewDelegateDelegate + +@optional +- (id)tableHeaderViewGetDefaultMenu:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailTimeMachineController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailTimeMachineController.h new file mode 100644 index 00000000..5c9b2d51 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailTimeMachineController.h @@ -0,0 +1,62 @@ +/* + * 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 "MVTerminationHandler.h" + +@class MessageViewer, NSString, NSTimer; + +@interface MailTimeMachineController : NSObject +{ + id _tableOfContentsSaveLock; + NSTimer *_tableOfContentsSaveTimer; + BOOL _savingTOC; + MessageViewer *_messageViewer; + struct CGRect _originalMailWindowFrame; +} + ++ (id)sharedController; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(nonatomic) struct CGRect originalMailWindowFrame; // @synthesize originalMailWindowFrame=_originalMailWindowFrame; +@property(nonatomic) BOOL savingTOC; // @synthesize savingTOC=_savingTOC; +@property(retain, nonatomic) MessageViewer *messageViewer; // @synthesize messageViewer=_messageViewer; +- (void).cxx_destruct; +- (void)relinquishTimeMachineAccess; +- (void)exitTimeMachine; +- (void)prepareToExitTimeMachineModeWithDisplayState:(id)arg1; +- (void)enterTimeMachineMode; +- (void)finishedEnteringTM; +- (unsigned char)_launchTimeMachineHelperApp; +- (id)_mailTimeMachineDescriptionForMessage:(id)arg1 withColumns:(id)arg2 andMall:(id)arg3 selected:(BOOL)arg4; +- (void)_threadedSaveTableOfContentsApprovedQuit:(BOOL)arg1; +- (BOOL)_timingOutSaveTableOfContents; +- (void)_threadedSaveTableOfContentsEnded:(id)arg1; +- (void)_thread_saveTableOfContents:(id)arg1; +- (void)_saveTableOfContents; +- (void)_approvedQuit; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)unregisterTimeMachineHandlers; +- (void)registerTimeMachineHandlers; +- (void)disableTableOfContentsSaveTimer:(BOOL)arg1; +- (void)_setTableOfContentsTimer:(id)arg1; +- (void)_setTableOfContentsIsValid:(BOOL)arg1; +- (void)forceSaveTableOfContentsNow; +- (void)saveTableOfContents; +- (void)_invalidateTableOfContents:(id)arg1; +- (void)_invalidateTableOfContentsAndBackupManager:(id)arg1; +- (void)registerNotificationHandlers; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailToCommand.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailToCommand.h new file mode 100644 index 00000000..2b5f8917 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailToCommand.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScriptCommand.h" + +@interface MailToCommand : NSScriptCommand +{ +} + +- (id)performDefaultImplementation; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailToolbar.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailToolbar.h new file mode 100644 index 00000000..7e96b450 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailToolbar.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbar.h" + +@interface MailToolbar : NSToolbar +{ + BOOL _allowsReadWriteItems; + BOOL _stateIsTemporary; + BOOL _previousVisible; + BOOL _frozen; + unsigned long long _previousDisplayMode; + long long _temporaryItemTag; +} + ++ (void)upgradeToolbarWithIdentifier:(id)arg1 toDisplayMode:(unsigned long long)arg2; ++ (void)upgradeToolbarWithIdentifier:(id)arg1 usingBlock:(id)arg2; ++ (id)_plistForToolbarWithIdentifier:(id)arg1; +@property(nonatomic) BOOL frozen; // @synthesize frozen=_frozen; +@property(nonatomic) BOOL previousVisible; // @synthesize previousVisible=_previousVisible; +@property(nonatomic) BOOL stateIsTemporary; // @synthesize stateIsTemporary=_stateIsTemporary; +@property(nonatomic) long long temporaryItemTag; // @synthesize temporaryItemTag=_temporaryItemTag; +@property(nonatomic) unsigned long long previousDisplayMode; // @synthesize previousDisplayMode=_previousDisplayMode; +@property(nonatomic) BOOL allowsReadWriteItems; // @synthesize allowsReadWriteItems=_allowsReadWriteItems; +- (void)validateVisibleItems; +- (void)unfreeze; +- (void)freeze; +- (void)removeItemAtIndex:(long long)arg1; +- (void)insertItemWithItemIdentifier:(id)arg1 atIndex:(long long)arg2; +- (void)setVisible:(BOOL)arg1; +- (void)setDisplayMode:(unsigned long long)arg1; +- (void)revertTemporaryStateIfAny; +- (void)setTemporaryDisplayMode:(unsigned long long)arg1 visible:(BOOL)arg2 requiredItemTag:(long long)arg3 identifier:(id)arg4; +- (id)_customMetrics; +- (BOOL)_allowsSizeMode:(unsigned long long)arg1; +- (id)_allowedItemIdentifiers; +- (BOOL)allowsExtensionItems; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailToolbarBaselineView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailToolbarBaselineView.h new file mode 100644 index 00000000..fe4b074b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailToolbarBaselineView.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface MailToolbarBaselineView : NSView +{ +} + +- (void)_mainStatusDidChange:(id)arg1; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailToolbarSpaceItemWithPin.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailToolbarSpaceItemWithPin.h new file mode 100644 index 00000000..f6819207 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailToolbarSpaceItemWithPin.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@class NSView; + +@interface MailToolbarSpaceItemWithPin : NSToolbarItem +{ + NSView *_pin; +} + ++ (id)itemIdentifier; +@property(retain, nonatomic) NSView *pin; // @synthesize pin=_pin; +- (void).cxx_destruct; +- (void)updateWidth; +- (void)_pinViewFrameChanged; +- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; +- (void)_updateSizeForDisplayMode:(unsigned long long)arg1; +- (BOOL)allowsDuplicatesInToolbar; +- (BOOL)_hasContents; +- (BOOL)_emptyContents; +- (BOOL)_needsRedisplayWhenBeginningToolbarEditing; +- (BOOL)wantsToDrawIconIntoLabelAreaInDisplayMode:(unsigned long long)arg1; +- (BOOL)wantsToDrawLabelInDisplayMode:(unsigned long long)arg1; +- (BOOL)wantsToDrawIconInDisplayMode:(unsigned long long)arg1; +- (BOOL)isSeparatorItem; +- (id)menuFormRepresentation; +- (void)dealloc; +- (id)init; +- (id)initWithItemIdentifier:(id)arg1; +- (id)initWithPin:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailUsageStatistics.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailUsageStatistics.h new file mode 100644 index 00000000..3a57f8d9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailUsageStatistics.h @@ -0,0 +1,23 @@ +/* + * 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" + +@interface MailUsageStatistics : NSObject +{ +} + ++ (void)_messageTracePreferences; ++ (void)_messageTraceUILayout; ++ (void)_messageTraceUsage; ++ (void)_messageTraceAccounts; ++ (void)_messageTraceFullScreen:(id)arg1; ++ (void)_startFullScreenMessageTracerTimer; ++ (void)_messageTrace:(id)arg1; ++ (void)startMessageTracing; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailWebAttachment.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailWebAttachment.h new file mode 100644 index 00000000..bf6f7539 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailWebAttachment.h @@ -0,0 +1,55 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MUIWebAttachment.h" + +@class MCAttachment, MCMessage, NSError, NSOperationQueue, NSURL; + +@interface MailWebAttachment : MUIWebAttachment +{ + MCAttachment *_backingAttachment; + MCMessage *_parentMessage; + NSURL *_mailDownloadsFileURL; + id _downloadCompletionBlock; + NSOperationQueue *_downloadQueue; + NSError *_downloadError; +} + ++ (id)keyPathsForValuesAffectingValueForKey:(id)arg1; +@property(retain, nonatomic) NSError *downloadError; // @synthesize downloadError=_downloadError; +@property(retain) NSOperationQueue *downloadQueue; // @synthesize downloadQueue=_downloadQueue; +@property(copy) id downloadCompletionBlock; // @synthesize downloadCompletionBlock=_downloadCompletionBlock; +@property(retain) NSURL *mailDownloadsFileURL; // @synthesize mailDownloadsFileURL=_mailDownloadsFileURL; +@property(nonatomic) __weak MCMessage *parentMessage; // @synthesize parentMessage=_parentMessage; +@property(readonly, nonatomic) MCAttachment *backingAttachment; // @synthesize backingAttachment=_backingAttachment; +- (void).cxx_destruct; +- (void)takeNewDataFromURL:(id)arg1; +- (BOOL)isStationeryAttachment; +- (BOOL)isAutoArchiveAttachment; +- (void)_addPrivateAttributes:(id)arg1; +- (void)startDownloadingIfNeededWithProgress:(id)arg1 completionBlock:(id)arg2; +- (id)downloadProgress; +- (BOOL)shouldAlwaysAutomaticallyDownload; +- (BOOL)isDataDownloaded; +- (id)downloadDirectory; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)writeToURL:(id)arg1; +- (id)fileURL; +- (id)_filenameForSaving; +- (id)filename; +- (unsigned long long)fileSize; +- (id)mimeType; +- (id)iconImage; +- (id)fileWrapper; +- (BOOL)conformsToProtocol:(id)arg1; +- (void)dealloc; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithFileWrapper:(id)arg1; +- (id)initWithMCAttachment:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailWebViewEditor.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailWebViewEditor.h new file mode 100644 index 00000000..fab2563f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailWebViewEditor.h @@ -0,0 +1,71 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebViewEditor.h" + +#import "DOMEventListener.h" + +@class DOMNode, NSArray, NSMutableArray, NSString; + +@interface MailWebViewEditor : WebViewEditor +{ + NSMutableArray *_uneditedEditableElements; + NSMutableArray *_editedEditableElements; + BOOL _shouldAttachFilesAtEnd; + BOOL _needToFinishMakingPlainAfterRemovingStationery; + BOOL _isDeletingAllEncompassingSelection; + NSArray *_backgroundTilingElements; + NSArray *_backgroundTilingDivs; + NSArray *_backgroundTilingFixedSizes; + DOMNode *_editableElementWithMouseDown; +} + +@property(nonatomic) BOOL isDeletingAllEncompassingSelection; // @synthesize isDeletingAllEncompassingSelection=_isDeletingAllEncompassingSelection; +@property(retain, nonatomic) DOMNode *editableElementWithMouseDown; // @synthesize editableElementWithMouseDown=_editableElementWithMouseDown; +@property(nonatomic) BOOL needToFinishMakingPlainAfterRemovingStationery; // @synthesize needToFinishMakingPlainAfterRemovingStationery=_needToFinishMakingPlainAfterRemovingStationery; +@property(retain, nonatomic) NSArray *backgroundTilingFixedSizes; // @synthesize backgroundTilingFixedSizes=_backgroundTilingFixedSizes; +@property(retain, nonatomic) NSArray *backgroundTilingDivs; // @synthesize backgroundTilingDivs=_backgroundTilingDivs; +@property(retain, nonatomic) NSArray *backgroundTilingElements; // @synthesize backgroundTilingElements=_backgroundTilingElements; +- (void).cxx_destruct; +- (void)changeDocumentBackgroundColor:(id)arg1; +- (void)webView:(id)arg1 didWriteSelectionToPasteboard:(id)arg2; +- (BOOL)insertNewline:(id)arg1; +- (BOOL)webView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (void)webViewDidChangeSelection:(id)arg1; +- (id)replaceOldSignatureWithNewSignature:(id)arg1; +- (void)webViewDidChange:(id)arg1; +- (void)mouseUpDidHappen:(id)arg1 inWebView:(id)arg2; +- (void)mouseDownDidHappen:(id)arg1 inWebView:(id)arg2; +- (id)editedEditableElements; +- (void)_doOrUndoEditingInSignatureWithInfo:(id)arg1; +- (void)handleEvent:(id)arg1; +- (void)_stationeryDidFinishLoadingResources:(id)arg1; +- (void)_webViewDidLoadStationery:(id)arg1; +- (void)prepareToRemoveStationery; +- (BOOL)webView:(id)arg1 canInsertFromPasteboard:(id)arg2 forDrag:(BOOL)arg3; +- (void)insertAttributedStringOfAttachments:(id)arg1 allAttachmentsAreOkay:(BOOL)arg2; +- (BOOL)_isOkayToInsertAttachment:(id)arg1; +- (void)_insertAttributedStringOfAttachments:(id)arg1 allAttachmentsAreOkay:(BOOL)arg2; +- (void)setShouldAttachFilesAtEnd:(BOOL)arg1; +- (BOOL)shouldAttachFilesAtEnd; +- (BOOL)isOkayToLoadStationery; +- (BOOL)webView:(id)arg1 shouldInsertAttachments:(id)arg2 context:(id)arg3; +- (id)alertForConvertingToRichText; +- (void)setAllowsRichText:(BOOL)arg1; +- (BOOL)allowQuoting; +- (void)setComposeBackEnd:(id)arg1; +- (void)setUp; +- (void)prepareToGoAway; +@property(readonly, copy, nonatomic) NSArray *insertablePasteboardTypes; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailWindowShadowLayer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailWindowShadowLayer.h new file mode 100644 index 00000000..9ae77e8b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailWindowShadowLayer.h @@ -0,0 +1,46 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "CALayer.h" + +@interface MailWindowShadowLayer : CALayer +{ + CALayer *_topShadow; + CALayer *_bottomShadow; + CALayer *_leftShadow; + CALayer *_rightShadow; + CALayer *_topRightShadow; + CALayer *_topLeftShadow; + CALayer *_bottomRightShadow; + CALayer *_bottomLeftShadow; + unsigned long long _shadowType; + struct CGSize _animationStartSize; + struct CGSize _animationEndSize; +} + +@property(readonly, nonatomic) struct CGSize animationEndSize; // @synthesize animationEndSize=_animationEndSize; +@property(readonly, nonatomic) struct CGSize animationStartSize; // @synthesize animationStartSize=_animationStartSize; +@property(readonly, nonatomic) unsigned long long shadowType; // @synthesize shadowType=_shadowType; +@property(readonly, nonatomic) CALayer *bottomLeftShadow; // @synthesize bottomLeftShadow=_bottomLeftShadow; +@property(readonly, nonatomic) CALayer *bottomRightShadow; // @synthesize bottomRightShadow=_bottomRightShadow; +@property(readonly, nonatomic) CALayer *topLeftShadow; // @synthesize topLeftShadow=_topLeftShadow; +@property(readonly, nonatomic) CALayer *topRightShadow; // @synthesize topRightShadow=_topRightShadow; +@property(readonly, nonatomic) CALayer *rightShadow; // @synthesize rightShadow=_rightShadow; +@property(readonly, nonatomic) CALayer *leftShadow; // @synthesize leftShadow=_leftShadow; +@property(readonly, nonatomic) CALayer *bottomShadow; // @synthesize bottomShadow=_bottomShadow; +@property(readonly, nonatomic) CALayer *topShadow; // @synthesize topShadow=_topShadow; +- (void).cxx_destruct; +- (id)_shadowImageForShadowPart:(unsigned long long)arg1; +- (double)_rightMargin; +- (double)_leftMargin; +- (double)_bottomMargin; +- (double)_topMargin; +- (void)animateShadowByGrowing:(BOOL)arg1; +- (id)initWithStartSize:(struct CGSize)arg1 endSize:(struct CGSize)arg2 shadowType:(unsigned long long)arg3; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxBadgeCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxBadgeCell.h new file mode 100644 index 00000000..36361b00 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxBadgeCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface MailboxBadgeCell : NSButtonCell +{ +} + +- (id)accessibilityRoleDescription; +- (struct CGSize)cellSizeForBounds:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxBadgeView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxBadgeView.h new file mode 100644 index 00000000..b1e64fab --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxBadgeView.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface MailboxBadgeView : NSButton +{ +} + ++ (Class)cellClass; +- (BOOL)shouldSetFontSmoothingBackgroundColor; +- (id)hitTest:(struct CGPoint)arg1; +- (void)_mailboxBadgeViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineItemController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineItemController.h new file mode 100644 index 00000000..dd62e557 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineItemController.h @@ -0,0 +1,55 @@ +/* + * 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 "MailboxOutlineItemViewDelegate.h" +#import "MailboxTextFieldDelegate.h" + +@class MailboxOutlineItemView, NSObject, NSString; + +@interface MailboxOutlineItemController : NSObject +{ + MailboxOutlineItemView *_view; + id _item; + NSObject *_delegate; +} + +@property __weak NSObject *delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (id)mailboxOutlineItemViewShouldDisplayImage:(id)arg1; +- (void)mailboxTextFieldEndedEditingSession; +- (void)mailboxTextFieldBeganEditingSession; +- (long long)_alertState; +- (void)updateAlertState; +- (BOOL)_shouldShowBadge; +- (BOOL)_isEditing; +- (void)_updateBadgeAnimated:(BOOL)arg1; +- (void)_updateImage; +- (unsigned long long)_iconStyle; +- (unsigned long long)_iconSize; +- (void)_updateValuesForBasicSection; +- (void)_updateValuesForAccount; +- (void)_updateValuesForMailbox; +- (void)updateBadgeCountAnimated:(BOOL)arg1; +- (void)updateAllValues; +- (id)_sectionDisplayName; +- (id)_account; +- (id)_mailbox; +@property __weak id item; +- (void)_connectView:(id)arg1; +- (void)_disconnectView:(id)arg1; +@property __weak MailboxOutlineItemView *view; +@property(readonly, copy) NSString *debugDescription; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineItemControllerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineItemControllerDelegate-Protocol.h new file mode 100644 index 00000000..5e83e772 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineItemControllerDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol MailboxOutlineItemControllerDelegate +- (void)mailbox:(id)arg1 nameUpdated:(id)arg2; +- (unsigned long long)badgeCountForItem:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineItemView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineItemView.h new file mode 100644 index 00000000..e558ddcb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineItemView.h @@ -0,0 +1,58 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableCellView.h" + +#import "NSTextFieldDelegate.h" + +@class MailboxBadgeView, NSButton, NSObject, NSString; + +@interface MailboxOutlineItemView : NSTableCellView +{ + MailboxBadgeView *_badgeView; + NSObject *_delegate; + NSButton *_indicatorView; +} + +@property(retain, nonatomic) NSButton *indicatorView; // @synthesize indicatorView=_indicatorView; +@property(nonatomic) __weak NSObject *delegate; // @synthesize delegate=_delegate; +@property(retain, nonatomic) MailboxBadgeView *badgeView; // @synthesize badgeView=_badgeView; +- (void).cxx_destruct; +- (void)viewWillDraw; +- (void)_layoutAuxiliaryViews; +- (void)_layoutAuxiliaryViewsForcingBadge:(BOOL)arg1 forcingIndicator:(BOOL)arg2; +- (struct CGRect)_layoutText:(struct CGRect *)arg1 isRTL:(BOOL)arg2; +- (struct CGRect)_layoutIndicator:(struct CGRect *)arg1 force:(BOOL)arg2 isRTL:(BOOL)arg3; +- (struct CGRect)_leftAlignAndVerticallyCenterRect:(struct CGRect)arg1 inRect:(struct CGRect)arg2; +- (struct CGRect)_rightAlignAndVerticallyCenterRect:(struct CGRect)arg1 inRect:(struct CGRect)arg2; +- (struct CGRect)_layoutBadge:(struct CGRect *)arg1 force:(BOOL)arg2 isRTL:(BOOL)arg3; +- (void)setUserInterfaceLayoutDirection:(long long)arg1; +- (void)setObjectValue:(id)arg1; +- (void)setBackgroundStyle:(long long)arg1; +- (id)menu; +- (id)menuForEvent:(id)arg1; +@property(readonly, nonatomic) double idealWidth; +- (void)setAlertTarget:(id)arg1; +- (void)setAlertAction:(SEL)arg1; +- (void)setRowSizeStyle:(long long)arg1; +- (void)showAlertIndicator:(BOOL)arg1 withState:(long long)arg2; +- (void)showBadge:(BOOL)arg1 withCount:(unsigned long long)arg2 animated:(BOOL)arg3; +- (void)_updateImage; +- (void)_windowKeyStateChanged:(id)arg1; +- (void)dealloc; +- (void)prepareForReuse; +- (void)_mailboxOutlineItemViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineItemViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineItemViewDelegate-Protocol.h new file mode 100644 index 00000000..c6963fad --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineItemViewDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol MailboxOutlineItemViewDelegate +- (id)mailboxOutlineItemViewShouldDisplayImage:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineRowView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineRowView.h new file mode 100644 index 00000000..0fc1ff05 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxOutlineRowView.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableRowView.h" + +@interface MailboxOutlineRowView : NSTableRowView +{ +} + +- (BOOL)shouldSetFontSmoothingBackgroundColor; +- (void)didAddSubview:(id)arg1; +- (void)_mailboxOutlineRowViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxTextField.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxTextField.h new file mode 100644 index 00000000..a5e8f69f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxTextField.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextField.h" + +@interface MailboxTextField : NSTextField +{ +} + +- (BOOL)canBecomeKeyView; +- (void)textDidEndEditing:(id)arg1; +- (BOOL)becomeFirstResponder; +- (BOOL)acceptsFirstResponder; +- (void)_mailboxTextFieldCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxTextFieldDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxTextFieldDelegate-Protocol.h new file mode 100644 index 00000000..d4dfd114 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxTextFieldDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldDelegate.h" + +@protocol MailboxTextFieldDelegate + +@optional +- (void)mailboxTextFieldEndedEditingSession; +- (void)mailboxTextFieldBeganEditingSession; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesChooser.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesChooser.h new file mode 100644 index 00000000..6c2f2261 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesChooser.h @@ -0,0 +1,63 @@ +/* + * 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 "NSMenuDelegate.h" + +@class NSArray, NSMenu, NSMutableSet, NSPopUpButton, NSString; + +@interface MailboxesChooser : NSObject +{ + NSMenu *_rootMenu; + NSPopUpButton *_popUpButton; + id _selectedItem; + NSMutableSet *_updatedMenus; + BOOL _useSelection; + id _includeMailboxCondition; + id _enableMailboxCondition; + id _target; + SEL _action; + NSArray *_additionalItems; +} + ++ (BOOL)automaticallyNotifiesObserversOfSelectedItem; ++ (BOOL)automaticallyNotifiesObserversOfPopUpButton; ++ (BOOL)automaticallyNotifiesObserversOfRootMenu; +@property(readonly, nonatomic) BOOL useSelection; // @synthesize useSelection=_useSelection; +@property(retain, nonatomic) NSArray *additionalItems; // @synthesize additionalItems=_additionalItems; +@property(nonatomic) SEL action; // @synthesize action=_action; +@property(nonatomic) __weak id target; // @synthesize target=_target; +@property(copy, nonatomic) id enableMailboxCondition; // @synthesize enableMailboxCondition=_enableMailboxCondition; +@property(copy, nonatomic) id includeMailboxCondition; // @synthesize includeMailboxCondition=_includeMailboxCondition; +- (void).cxx_destruct; +- (void)menuDidClose:(id)arg1; +- (void)_popUpAction:(id)arg1; +- (void)refresh; +- (void)menuNeedsUpdate:(id)arg1; +- (void)_outlineViewStateDidChange:(id)arg1; +- (void)_invalidateUpdatedMenus:(id)arg1; +- (void)invalidateUpdatedMenus; +- (void)_addMenuItemsForItems:(id)arg1 toMenu:(id)arg2 withIndentationLevel:(long long)arg3 initialSeparatorItem:(BOOL)arg4; +- (id)_menuItemForItem:(id)arg1 indentationLevel:(long long)arg2; +@property(retain, nonatomic) id selectedItem; +@property(nonatomic) __weak NSPopUpButton *popUpButton; +@property(nonatomic) __weak NSMenu *rootMenu; +- (void)_setupPopUpButton; +- (void)_mailboxesChooserCommonInitWithSelection:(BOOL)arg1; +- (void)dealloc; +- (void)awakeFromNib; +- (id)initWithSelection:(BOOL)arg1; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesController.h new file mode 100644 index 00000000..0689c230 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesController.h @@ -0,0 +1,144 @@ +/* + * 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 "MCActivityTarget.h" +#import "MVTerminationHandler.h" +#import "NSMenuDelegate.h" + +@class MFMailbox, MailboxesChooser, NSArray, NSButton, NSConditionLock, NSMutableDictionary, NSMutableSet, NSPopUpButton, NSString, NSTextField, NSView, NSWindow; + +@interface MailboxesController : NSObject +{ + MFMailbox *_currentTransferMailbox; + NSConditionLock *_smartMailboxesNeedSavingLock; + NSMutableSet *_rootMailboxMenus; + NSMutableDictionary *_contextualMenus; + BOOL _currentTransferIsCopy; + NSWindow *_makeNewMailboxPanel; + NSTextField *_makeNewMailboxField; + NSTextField *_makeNewMailboxMessage; + NSButton *_makeNewMailboxOKButton; + NSPopUpButton *_makeNewMailboxPopUp; + MailboxesChooser *_makeNewMailboxChooser; + NSView *_exportChildrenView; + NSButton *_exportChildrenCheckbox; + id _currentMailboxSelectionOwner; + MailboxesChooser *_menuMailboxesChooser; + NSArray *_originalGlobalSortOrder; +} + ++ (id)_mergeOldMailUserInfoDictionary:(id)arg1 withSyncChanges:(id)arg2; ++ (id)_filteredMailUserInfoDictionary:(id)arg1; ++ (void)_createDownsizedImages; ++ (id)_flagColorForColor:(BOOL)arg1; ++ (id)_imageForFlagColor:(BOOL)arg1 ofSize:(unsigned long long)arg2; ++ (id)_iconForSmartMailboxWithSize:(unsigned long long)arg1 style:(unsigned long long)arg2; ++ (id)_iconForGenericMailboxWithSize:(unsigned long long)arg1 style:(unsigned long long)arg2; ++ (id)iconForMailbox:(id)arg1 size:(unsigned long long)arg2 style:(unsigned long long)arg3; +@property(retain, nonatomic) NSArray *originalGlobalSortOrder; // @synthesize originalGlobalSortOrder=_originalGlobalSortOrder; +@property(retain, nonatomic) MailboxesChooser *menuMailboxesChooser; // @synthesize menuMailboxesChooser=_menuMailboxesChooser; +@property(nonatomic) BOOL currentTransferIsCopy; // @synthesize currentTransferIsCopy=_currentTransferIsCopy; +@property(nonatomic) __weak id currentMailboxSelectionOwner; // @synthesize currentMailboxSelectionOwner=_currentMailboxSelectionOwner; +@property(nonatomic) __weak NSButton *exportChildrenCheckbox; // @synthesize exportChildrenCheckbox=_exportChildrenCheckbox; +@property(retain, nonatomic) NSView *exportChildrenView; // @synthesize exportChildrenView=_exportChildrenView; +@property(retain, nonatomic) MailboxesChooser *makeNewMailboxChooser; // @synthesize makeNewMailboxChooser=_makeNewMailboxChooser; +@property(nonatomic) __weak NSPopUpButton *makeNewMailboxPopUp; // @synthesize makeNewMailboxPopUp=_makeNewMailboxPopUp; +@property(nonatomic) __weak NSButton *makeNewMailboxOKButton; // @synthesize makeNewMailboxOKButton=_makeNewMailboxOKButton; +@property(nonatomic) __weak NSTextField *makeNewMailboxMessage; // @synthesize makeNewMailboxMessage=_makeNewMailboxMessage; +@property(nonatomic) __weak NSTextField *makeNewMailboxField; // @synthesize makeNewMailboxField=_makeNewMailboxField; +@property(retain, nonatomic) NSWindow *makeNewMailboxPanel; // @synthesize makeNewMailboxPanel=_makeNewMailboxPanel; +- (void).cxx_destruct; +- (id)_smartMailboxesFromDictionaryRepresentations:(id)arg1 andMergeOldUserInfoFromMailboxes:(BOOL)arg2; +- (void)_removeLocalProperties:(id)arg1 fromSmartMailboxes:(id)arg2; +- (id)_smartMailboxesDictionaryRepresentationsFilteredForSync:(BOOL)arg1 localProperties:(id *)arg2; +- (id)_loadDefaultSmartMailboxes; +- (void)_addLocalProperties:(id)arg1 toSmartMailboxes:(id)arg2; +- (id)_readSmartMailboxesFromDisk; +- (id)_sortMailboxesDictionaries:(id)arg1 withIdentifiers:(id)arg2; +- (id)_sortMailboxes:(id)arg1 withIdentifiers:(id)arg2; +- (void)_writeSmartMailboxesToDisk; +- (void)_writeSmartMailboxesToDiskWithDelay; +- (void)_setSmartMailboxesNeedSaving:(BOOL)arg1; +- (BOOL)_smartMailboxesNeedSaving; +- (void)_smartMailboxChanged:(id)arg1; +- (id)smartMailboxesPathForFile:(id)arg1; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (id)smartMailboxes; +- (void)_reloadSmartMailboxesSyncedFile:(id)arg1; +- (void)initializeSmartMailboxes; +- (void)addSmartMailboxFolder:(id)arg1; +- (void)smartMailboxWasEdited:(id)arg1; +- (void)tentativelyAddSmartMailbox:(id)arg1; +- (void)addSmartMailbox:(id)arg1 select:(BOOL)arg2; +- (BOOL)moveOrCopy:(id)arg1 smartMailboxes:(id)arg2 toIndex:(unsigned long long)arg3; +- (BOOL)copyMailboxes:(id)arg1 toParentMailbox:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)_synchronouslyCopyMailboxes:(id)arg1 toParent:(id)arg2 atIndex:(unsigned long long)arg3 originalParent:(id)arg4; +- (BOOL)moveMailboxes:(id)arg1 toParentMailbox:(id)arg2 atIndex:(unsigned long long)arg3; +- (BOOL)removeAccount:(id)arg1; +- (BOOL)moveAccount:(id)arg1 toAfterAccount:(id)arg2; +- (BOOL)menuHasKeyEquivalent:(id)arg1 forEvent:(id)arg2 target:(id *)arg3 action:(SEL *)arg4; +- (void)menuDidClose:(id)arg1; +- (void)menuWillOpen:(id)arg1; +- (void)menuNeedsUpdate:(id)arg1; +- (BOOL)_isCopyMenu:(id)arg1; +- (BOOL)_isMoveMenu:(id)arg1; +- (void)bringUpTransferMenu:(id)arg1; +- (void)cancelClicked:(id)arg1; +- (void)okClicked:(id)arg1; +- (void)controlTextDidChange:(id)arg1; +- (id)_unreadMessagesInMailbox:(id)arg1; +- (void)_asynchronouslyChangeReadFlag:(BOOL)arg1 forMessages:(id)arg2; +- (void)_changeReadFlag:(BOOL)arg1 forMessages:(id)arg2; +- (void)markAllAsRead:(id)arg1; +- (void)_gatherMessagesForFlagChange:(id)arg1; +- (void)setSpecialMailbox:(id)arg1; +- (void)exportMailbox:(id)arg1; +- (void)_exportMailboxes:(id)arg1 toDirectory:(id)arg2 includeChildren:(id)arg3; +- (void)_userEditedMailboxName:(id)arg1; +- (void)renameMailbox:(id)arg1; +- (void)_synchronouslySetName:(id)arg1 andParent:(id)arg2 forMailboxes:(id)arg3 insertionIndex:(unsigned long long)arg4; +- (void)_updateDisplayIndexesInParentMailbox:(id)arg1 byMovingMailboxes:(id)arg2 toIndex:(unsigned long long)arg3; +- (void)removeFromVIPSenders:(id)arg1; +- (void)deleteMailbox:(id)arg1; +- (void)_synchronouslyDeleteMailboxes:(id)arg1; +- (void)mailboxPopUpChanged:(id)arg1; +- (void)newGroup:(id)arg1; +- (void)newFolder:(id)arg1; +- (void)duplicateSmartMailbox:(id)arg1; +- (void)editSmartMailbox:(id)arg1; +- (void)newSmartMailbox:(id)arg1; +- (void)showOutOfOfficeSettings:(id)arg1; +- (void)newMailbox:(id)arg1; +- (void)_configureNewMailboxPanelForMailbox:(id)arg1; +- (void)_synchronouslyCreateNewMailboxWithName:(id)arg1 parent:(id)arg2; +- (BOOL)validateMenuItem:(id)arg1; +- (id)mailboxSelectionOwnerFromSender:(id)arg1; +- (void)resignMailboxSelectionOwnerFor:(id)arg1; +- (void)setMailboxSelectionOwnerFrom:(id)arg1; +- (id)mailboxSelectionOwner; +- (id)smartMailboxesSyncedFile; +- (BOOL)currentTransferDeletesOriginals; +- (id)currentTransferMailbox; +- (void)setCurrentTransferMailbox:(id)arg1 deletedOriginals:(BOOL)arg2; +- (void)saveDefaults; +- (void)readDefaults; +- (id)menuForMailbox:(id)arg1 isContextMenu:(BOOL)arg2; +- (void)dealloc; +- (id)init; +- (id)previousMailboxIdentifiersOfType:(id)arg1 fromDictionary:(id)arg2; +- (id)previousVersionedSmartMailboxIdentifiersFromDictionary:(id)arg1; +- (id)previousSmartMailboxIdentifiersFromDictionary:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineView.h new file mode 100644 index 00000000..66c84dc9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineView.h @@ -0,0 +1,44 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOutlineView.h" + +@interface MailboxesOutlineView : NSOutlineView +{ + BOOL _reloading; + BOOL _allowsSelectAll; + BOOL _showsUnnecessaryDisclosureTriangles; + BOOL _draggingIsBeingUpdated; +} + +@property(nonatomic) BOOL draggingIsBeingUpdated; // @synthesize draggingIsBeingUpdated=_draggingIsBeingUpdated; +@property(nonatomic) BOOL showsUnnecessaryDisclosureTriangles; // @synthesize showsUnnecessaryDisclosureTriangles=_showsUnnecessaryDisclosureTriangles; +@property(nonatomic) BOOL allowsSelectAll; // @synthesize allowsSelectAll=_allowsSelectAll; +- (id)dragImageForRowsWithIndexes:(id)arg1 tableColumns:(id)arg2 event:(id)arg3 offset:(struct CGPoint *)arg4; +- (unsigned long long)draggingUpdated:(id)arg1; +- (void)reloadItem:(id)arg1; +- (void)reloadData; +- (void)noteNumberOfRowsChanged; +- (void)_didReload; +- (void)_triggerReloadNotification; +- (void)_willReload; +- (BOOL)inLiveResize; +- (BOOL)shouldCollapseAutoExpandedItemsForDeposited:(BOOL)arg1; +- (id)menu; +- (void)selectAll:(id)arg1; +- (BOOL)resignFirstResponder; +- (BOOL)becomeFirstResponder; +- (BOOL)acceptsFirstResponder; +- (BOOL)acceptsFirstMouse:(id)arg1; +- (struct CGRect)frameOfOutlineCellAtRow:(long long)arg1; +- (void)setDelegate:(id)arg1; +- (id)delegate; +- (void)_mailboxesOutlineViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineViewController.h new file mode 100644 index 00000000..8a534a94 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineViewController.h @@ -0,0 +1,123 @@ +/* + * 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 "MVMailboxSelectionOwner.h" +#import "MailboxOutlineItemControllerDelegate.h" +#import "MailboxesOutlineViewDelegate.h" +#import "NSOutlineViewDataSource.h" + +@class MFMailbox, MailboxesOutlineView, NSMapTable, NSString; + +@interface MailboxesOutlineViewController : NSObject +{ + double _idealOutlineViewWidth; + id _delegate; + NSMapTable *_itemControllers; + MailboxesOutlineView *_outlineView; + MFMailbox *_clickedMailbox; + long long _reloadingCount; + long long _wantsToEditInlineCount; +} + +@property long long wantsToEditInlineCount; // @synthesize wantsToEditInlineCount=_wantsToEditInlineCount; +@property long long reloadingCount; // @synthesize reloadingCount=_reloadingCount; +@property(retain) MFMailbox *clickedMailbox; // @synthesize clickedMailbox=_clickedMailbox; +@property(retain) MailboxesOutlineView *outlineView; // @synthesize outlineView=_outlineView; +- (void).cxx_destruct; +- (void)mailbox:(id)arg1 nameUpdated:(id)arg2; +- (unsigned long long)badgeCountForItem:(id)arg1; +- (id)mailboxesOutlineView; +- (void)outlineViewItemDidCollapse:(id)arg1; +- (void)outlineViewItemDidExpand:(id)arg1; +- (void)didCloseContextMenu:(id)arg1; +- (void)willShowContextMenu:(id)arg1; +- (void)setFirstResponderAfterMouseDownOnOutlineView:(id)arg1; +- (void)selectAllInOutlineView:(id)arg1; +- (void)outlineView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (void)outlineView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (void)outlineViewSelectionDidChange:(id)arg1; +- (id)outlineView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldCollapseItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldExpandItem:(id)arg2; +- (double)outlineView:(id)arg1 heightOfRowByItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 isGroupItem:(id)arg2; +- (id)outlineView:(id)arg1 viewForTableColumn:(id)arg2 item:(id)arg3; +- (id)outlineView:(id)arg1 rowViewForItem:(id)arg2; +- (unsigned long long)_outlineView:(id)arg1 validateDrop:(id)arg2 proposedItem:(id)arg3 proposedChildIndex:(long long)arg4 allowStoreCreation:(BOOL)arg5; +- (unsigned long long)outlineView:(id)arg1 validateDrop:(id)arg2 proposedItem:(id)arg3 proposedChildIndex:(long long)arg4; +- (BOOL)outlineView:(id)arg1 acceptDrop:(id)arg2 item:(id)arg3 childIndex:(long long)arg4; +- (void)pasteboard:(id)arg1 provideDataForType:(id)arg2; +- (void)outlineView:(id)arg1 draggingSession:(id)arg2 endedAtPoint:(struct CGPoint)arg3 operation:(unsigned long long)arg4; +- (BOOL)outlineView:(id)arg1 writeItems:(id)arg2 toPasteboard:(id)arg3; +- (id)outlineView:(id)arg1 persistentObjectForItem:(id)arg2; +- (id)outlineView:(id)arg1 itemForPersistentObject:(id)arg2; +- (id)itemControllerForItem:(id)arg1 makeIfNecessary:(BOOL)arg2; +- (id)outlineView:(id)arg1 objectValueForTableColumn:(id)arg2 byItem:(id)arg3; +- (id)outlineView:(id)arg1 child:(long long)arg2 ofItem:(id)arg3; +- (BOOL)outlineView:(id)arg1 isItemExpandable:(id)arg2; +- (long long)outlineView:(id)arg1 numberOfChildrenOfItem:(id)arg2; +- (id)mailboxSelectionWindow; +- (void)_revealMailbox:(id)arg1; +- (void)revealMailbox:(id)arg1; +- (id)sortedSectionItemsForTimeMachine; +- (id)expandedItems; +- (BOOL)sectionIsExpanded:(id)arg1; +- (BOOL)mailboxIsExpanded:(id)arg1; +- (void)selectPathsToMailboxes:(id)arg1 scrollToVisible:(BOOL)arg2; +- (void)selectPathsToMailboxes:(id)arg1; +- (BOOL)isSelectedMailboxSpecial; +- (id)selectedMailbox; +- (id)selectedMailboxes; +- (void)_mailboxPendingNameDidChange:(id)arg1; +- (void)_viewerPreferencesChanged:(id)arg1; +- (void)_userInfoDidChange:(id)arg1; +- (void)_displayCountDidChange:(id)arg1; +- (void)_mailboxesActivityDidChange:(id)arg1; +- (void)_sectionListingDidChange:(id)arg1; +- (void)_mailboxPublicStatusDidChange:(id)arg1; +- (void)_mailboxListingDidChange:(id)arg1; +- (void)_accountOfflineStatusDidChange:(id)arg1; +- (void)_accountAdded:(id)arg1; +- (void)_handleWebAuthenticationRequiredError:(id)arg1 withCompletionHandler:(id)arg2; +- (void)_alertClickedForItem:(id)arg1; +- (void)rowDoubleClicked:(id)arg1; +- (void)rowClicked:(id)arg1; +- (void)alertClicked:(id)arg1; +- (BOOL)_isTopLevelItem:(id)arg1; +- (void)_saveSelectionAndReloadItem:(id)arg1; +- (void)_updateProgressIndicatorForMailbox:(id)arg1; +- (id)_copyActivityMonitorsForMailbox:(id)arg1 finishedCount:(unsigned long long *)arg2 includingDescendants:(BOOL)arg3; +- (void)_redisplayRowsForItems:(id)arg1; +- (unsigned long long)_badgeCountForItem:(id)arg1; +- (id)_firstChildIfCollapsedSpecialMailbox:(id)arg1; +- (void)_endWantsToEditInline; +- (void)_beginWantsToEditInline; +@property(readonly) BOOL wantsToEditInline; +- (void)_endReloading; +- (void)_beginReloading; +@property(readonly) BOOL isReloading; +- (void)editNameOfMailbox:(id)arg1; +- (void)makeMailboxesListFirstResponder; +@property(nonatomic) double idealOutlineViewWidth; // @synthesize idealOutlineViewWidth=_idealOutlineViewWidth; +@property(readonly, nonatomic) double minimumWidthNeededToUseMailboxes; +@property(readonly, nonatomic) double minimizedOutlineViewWidth; +- (void)clearDelegateBecauseWindowIsClosing; +- (void)dealloc; +- (void)_migrateAutosaveName; +@property __weak id delegate; +- (void)awakeFromNib; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineViewControllerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineViewControllerDelegate-Protocol.h new file mode 100644 index 00000000..fb78d4c2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineViewControllerDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * 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" + +@protocol MailboxesOutlineViewControllerDelegate +- (long long)viewerNumber; +- (void)focusMessages; +- (void)selectAllMessages; + +@optional +- (void)mailboxSelectionChanged:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineViewDelegate-Protocol.h new file mode 100644 index 00000000..ae4062aa --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineViewDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOutlineViewDelegate.h" + +@protocol MailboxesOutlineViewDelegate + +@optional +- (void)outlineViewDidReload:(id)arg1; +- (void)setFirstResponderAfterMouseDownOnOutlineView:(id)arg1; +- (void)selectAllInOutlineView:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineViewStateStorage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineViewStateStorage.h new file mode 100644 index 00000000..e7e4747e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesOutlineViewStateStorage.h @@ -0,0 +1,107 @@ +/* + * 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" + +@class NSArray, NSConditionLock, NSMutableDictionary, NSMutableSet, NSSet; + +@interface MailboxesOutlineViewStateStorage : NSObject +{ + NSConditionLock *_shouldShowVariablesLock; + unsigned long long _shouldShowVariablesToUpdate; + unsigned long long _shouldShowVariablesToReset; + BOOL _shouldShowOutbox; + BOOL _shouldShowDrafts; + BOOL _shouldShowTrash; + BOOL _shouldShowJunk; + BOOL _shouldShowFlags; + BOOL _shouldShowArchive; + BOOL _shouldShowVIPs; + NSMutableSet *_visibleFlagMailboxes; + id _firstUpdateLock; + BOOL _firstUpdate; + id _isListeningForVariablesLock; + BOOL _isListeningForDocumentEditorNotifications; + BOOL _isListeningForMessagesAdded; + BOOL _isListeningForFlagUpdates; + id _sectionItemsLock; + NSArray *_sectionItems; + NSArray *_visibleSectionItems; + NSArray *_visibleMailboxes; + id _defaultSectionItemsLock; + id _activityMonitorMailboxMapsLock; + NSMutableDictionary *_mailboxesPerActivityMonitor; + NSMutableDictionary *_activityMonitorsPerMailbox; + NSMutableDictionary *_finishedActivityMonitorCountPerMailbox; + NSConditionLock *_changedMailboxesLock; + NSMutableSet *_changedMailboxes; + NSArray *_draggedMailboxes; + NSSet *_observedTaskNames; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, copy, nonatomic) NSSet *observedTaskNames; // @synthesize observedTaskNames=_observedTaskNames; +@property(retain) NSArray *draggedMailboxes; // @synthesize draggedMailboxes=_draggedMailboxes; +- (void).cxx_destruct; +- (BOOL)_archiveMessagesOrSubmailboxesExist; +- (BOOL)flagsExist; +- (BOOL)draftsExist; +- (void)_accountInitializedMailboxList:(id)arg1; +- (id)copyActivityMonitorsForMailboxes:(id)arg1 finishedCount:(unsigned long long *)arg2; +- (void)_postChangedMailboxesNotification; +- (void)_notifyChangedMailboxes; +- (void)_setNeedsToNotifyChangedMailboxes:(id)arg1; +- (void)_triggerChangedMailboxesNotification; +- (BOOL)_removeActivityMonitor:(id)arg1 fromMailbox:(id)arg2; +- (BOOL)_addActivityMonitor:(id)arg1 toMailbox:(id)arg2; +- (id)_copyMailboxesForActivityMonitor:(id)arg1; +- (void)_monitoredActivityChanged:(id)arg1; +- (id)_copyKeyForObject:(id)arg1; +@property BOOL shouldShowVIPs; +@property BOOL shouldShowArchive; +@property BOOL shouldShowFlags; +@property BOOL shouldShowJunk; +@property BOOL shouldShowTrash; +@property BOOL shouldShowDrafts; +@property BOOL shouldShowOutbox; +- (void)_setShouldShowVariable:(char *)arg1 withMask:(unsigned long long)arg2 to:(BOOL)arg3; +@property(readonly, copy) NSArray *visibleMailboxes; +@property(readonly, copy) NSArray *visibleSectionItems; +@property(readonly, copy) NSArray *sectionItems; +- (void)_mailboxDisplayCountChanged:(id)arg1; +- (void)_allViewersDidClose:(id)arg1; +- (void)_mailboxListingDidChange:(id)arg1; +- (void)_editorUserSaved:(id)arg1; +- (void)_editorClosed:(id)arg1; +- (void)_viewerPreferencesChanged:(id)arg1; +- (void)_mailAccountsChanged:(id)arg1; +- (void)_handleOutboxCountChange; +- (void)_outboxCountDidChange:(id)arg1; +- (void)_deliveryFailureHappened:(id)arg1; +- (void)_VIPsChanged:(id)arg1; +- (void)_messageFlagsChanged:(id)arg1; +- (void)_messagesWereAddedToMailboxes:(id)arg1; +- (void)moveSectionItem:(id)arg1 beforeItem:(id)arg2; +- (void)_updateSectionItemsWithNewlyVisibleFlagMailboxes:(id)arg1; +- (void)_writeVisibleFlagsMailboxesToDefaults; +- (void)_readVisibleFlagsMailboxesFromDefaults; +- (void)_writeSectionItemsToDefaults; +- (void)_writeSectionItems:(id)arg1 toDefaultsWithKey:(id)arg2; +- (void)_readSectionItemsFromDefaults; +- (id)_sectionItemsFromDefaultSectionItems:(id)arg1; +- (BOOL)_draftsHasMessageWithNoWindow; +- (void)_updateIsListeningForVariables; +- (void)_updateShouldShowVariables; +- (void)_setNeedsToResetShouldShowVariablesWithMask:(unsigned long long)arg1; +- (void)_setNeedsToUpdateShouldShowVariablesWithMask:(unsigned long long)arg1; +- (void)_setShouldShowVariablesNeedUpdateWithUpdateMask:(unsigned long long)arg1 resetMask:(unsigned long long)arg2; +- (void)_triggerShouldShowVariablesUpdate; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesSplitViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesSplitViewController.h new file mode 100644 index 00000000..ab48ce3b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MailboxesSplitViewController.h @@ -0,0 +1,36 @@ +/* + * 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" + +@class MailSplitView, MessageViewer, NSView; + +@interface MailboxesSplitViewController : NSObject +{ + BOOL _isAnimating; + double _lastUserSelectedPosition; + NSView *_mailboxesContainer; + MailSplitView *_mailboxesSplitView; + MessageViewer *_messageViewer; +} + +@property(nonatomic) __weak MessageViewer *messageViewer; // @synthesize messageViewer=_messageViewer; +@property(nonatomic) __weak MailSplitView *mailboxesSplitView; // @synthesize mailboxesSplitView=_mailboxesSplitView; +@property(nonatomic) __weak NSView *mailboxesContainer; // @synthesize mailboxesContainer=_mailboxesContainer; +@property(nonatomic) double lastUserSelectedPosition; // @synthesize lastUserSelectedPosition=_lastUserSelectedPosition; +@property(nonatomic) BOOL isAnimating; // @synthesize isAnimating=_isAnimating; +- (void).cxx_destruct; +- (void)openMailboxesPaneToWidth:(double)arg1; +- (void)splitViewDidResizeSubviews:(id)arg1; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (BOOL)splitView:(id)arg1 shouldAdjustSizeOfSubview:(id)arg2; +- (struct CGRect)splitView:(id)arg1 additionalEffectiveRectOfDividerAtIndex:(long long)arg2; +- (double)_maxSplitPosition:(id)arg1; +- (double)splitView:(id)arg1 constrainSplitPosition:(double)arg2 ofSubviewAt:(long long)arg3; +- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MboxEmailImporter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MboxEmailImporter.h new file mode 100644 index 00000000..41b5365e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MboxEmailImporter.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +@interface MboxEmailImporter : FilesystemEmailImporter +{ +} + ++ (id)explanatoryText; ++ (id)name; +- (char *)fromString; +- (id)prepareForImport; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageBodyScrollView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageBodyScrollView.h new file mode 100644 index 00000000..32cadfaf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageBodyScrollView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScrollView.h" + +@interface MessageBodyScrollView : NSScrollView +{ +} + +- (void)tile; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageDeletionTransfer-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageDeletionTransfer-Protocol.h new file mode 100644 index 00000000..e88e5d53 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageDeletionTransfer-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol MessageDeletionTransfer +- (void)beginTransfer; +- (BOOL)canBeginTransfer; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageDragHelper.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageDragHelper.h new file mode 100644 index 00000000..274fe7c2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageDragHelper.h @@ -0,0 +1,34 @@ +/* + * 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 "NSPasteboardItemDataProvider.h" + +@class NSMapTable, NSString; + +@interface MessageDragHelper : NSObject +{ + NSMapTable *_messagesByPasteboardItem; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void).cxx_destruct; +- (void)pasteboard:(id)arg1 item:(id)arg2 provideDataForType:(id)arg3; +- (id)messagesTargetedByItems:(id)arg1; +- (id)pasteboardWriterForMessages:(id)arg1; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageEditor.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageEditor.h new file mode 100644 index 00000000..7b65b763 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageEditor.h @@ -0,0 +1,21 @@ +/* + * 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" + +@interface MessageEditor : NSObject +{ +} + ++ (id)sharedMessageEditor; ++ (void)initialize; +- (void)setBackEnd:(id)arg1; +- (id)objectSpecifier; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageFilter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageFilter.h new file mode 100644 index 00000000..fd22c802 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageFilter.h @@ -0,0 +1,174 @@ +/* + * 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 "MFMessageSortContext.h" +#import "MFMessageSortingValueDelegate.h" + +@class MCInvocationQueue, NSMutableArray, NSMutableDictionary, NSMutableIndexSet, NSMutableSet, NSNumber, NSString; + +@interface MessageFilter : NSObject +{ + int _taskCounter; + NSMutableArray *_filteredMessages; + NSMutableArray *_allStores; + NSMutableSet *_storesWaitingToLoad; + NSMutableDictionary *_allMessagesByStore; + NSMutableDictionary *_nonDeletedMessagesByStore; + NSMutableSet *_hiddenMessages; + NSMutableSet *_undeletedMessages; + NSMutableSet *_storesBeingOpened; + NSString *_primarySortOrder; + NSString *_secondarySortOrder; + NSMutableDictionary *_messageSortValues; + NSMutableDictionary *_conversationIDByMessage; + NSMutableDictionary *_threadsByConversationID; + NSMutableIndexSet *_openThreadIndexes; + NSMutableDictionary *_originalMessageByMessageID; + NSMutableDictionary *_messageCopiesByMessageID; + NSMutableSet *_pendingSelectedMessageIdentifiers; + NSMutableSet *_pendingSelectedThreadIdentifiers; + NSMutableSet *_pendingOpenThreadIdentifiers; + BOOL _isSortedAscending; + BOOL _includeDeleted; + BOOL _isInThreadedMode; + BOOL _awaitingInitialMessages; + id _delegate; + MCInvocationQueue *_filterTasks; + unsigned long long _totalMessageCount; + NSNumber *_pendingScrollStyle; + id _pendingPinnedMessageIdentifier; + NSNumber *_pendingPinnedThreadIdentifier; + double _pendingPinningOffset; +} + ++ (id)sortComparatorForThreads; ++ (id)sortComparatorForThreadsWithSortOrderAscending:(SEL)arg1; ++ (void)initialize; +@property(nonatomic) double pendingPinningOffset; // @synthesize pendingPinningOffset=_pendingPinningOffset; +@property(retain, nonatomic) NSNumber *pendingPinnedThreadIdentifier; // @synthesize pendingPinnedThreadIdentifier=_pendingPinnedThreadIdentifier; +@property(copy, nonatomic) id pendingPinnedMessageIdentifier; // @synthesize pendingPinnedMessageIdentifier=_pendingPinnedMessageIdentifier; +@property(retain, nonatomic) NSNumber *pendingScrollStyle; // @synthesize pendingScrollStyle=_pendingScrollStyle; +@property(nonatomic) unsigned long long totalMessageCount; // @synthesize totalMessageCount=_totalMessageCount; +@property(nonatomic) BOOL awaitingInitialMessages; // @synthesize awaitingInitialMessages=_awaitingInitialMessages; +@property(nonatomic) BOOL isInThreadedMode; // @synthesize isInThreadedMode=_isInThreadedMode; +@property(readonly, nonatomic) MCInvocationQueue *filterTasks; // @synthesize filterTasks=_filterTasks; +@property __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (id)_indexesAdjustedByOpenThreads:(id)arg1; +- (unsigned long long)_indexAdjustedByOpenThreads:(unsigned long long)arg1; +- (unsigned long long)_removeObjectIfPresent:(id)arg1 fromArray:(id)arg2 inSortedRange:(struct _NSRange)arg3 usingComparator:(id)arg4 didRemove:(void)arg5; +- (unsigned long long)_insertObjectIfAbsent:(id)arg1 intoArray:(id)arg2 inSortedRange:(struct _NSRange)arg3 usingComparator:(id)arg4 didInsert:(void)arg5; +- (BOOL)_removeMessage:(id)arg1 fromMallArray:(id)arg2 sortValues:(id)arg3 atIndex:(unsigned long long)arg4; +- (unsigned long long)_removeMessage:(id)arg1 fromMallArray:(id)arg2 sortValues:(id)arg3 inSortedRange:(struct _NSRange)arg4 usingComparator:(id)arg5 didRemove:(void)arg6; +- (id)_removeSortedMessages:(id)arg1 fromArray:(id)arg2 sortValues:(id)arg3 usingComparator:(id)arg4; +- (unsigned long long)_insertMessageIfAbsent:(id)arg1 intoMallArray:(id)arg2 sortValues:(id)arg3 inSortedRange:(struct _NSRange)arg4 usingComparator:(id)arg5 didInsert:(void)arg6; +- (id)_mergeMessages:(id)arg1 intoArray:(id)arg2 sortValues:(id)arg3 usingComparator:(id)arg4; +- (long long)sortingUniqueIdentifierForMessageThread:(id)arg1; +- (id)_messagesIncludingHiddenCopies:(id)arg1; +- (unsigned int)sortingMessageFlagsForMessage:(id)arg1; +- (unsigned int)messageFlagsForMessage:(id)arg1 size:(unsigned long long *)arg2 appliedFlagColors:(id *)arg3; +- (unsigned long long)sortingSizeForMessage:(id)arg1; +- (unsigned long long)sizeForMessage:(id)arg1; +- (id)arrayWithPrimarySortOrder:(id)arg1 secondarySortOrder:(id)arg2; +- (id)arrayOfSortOrders; +- (id)_storeForMailbox:(id)arg1 cache:(id)arg2; +- (unsigned int)_loadOptions; +- (id)_updateCopiesInfoForMessages:(id)arg1; +- (id)_structureChangesByAdjustingThreads:(id)arg1 messageRemovals:(id)arg2 messageMoves:(id)arg3 deletedThreads:(id *)arg4; +- (id)_filterOutMessages:(id)arg1; +- (id)_filterInMessages:(id)arg1; +- (id)_updateFilteredListByAddingMessages:(id)arg1 removingMessages:(id)arg2; +- (void)_filterTaskCompleted:(id)arg1 taskID:(int)arg2; +- (void)_addTaskToFilterQueue:(id)arg1; +- (id)_filterTaskInfoByMergingTaskInfos:(id)arg1; +- (id)_fullTaskInfoFromChangeDictionary:(id)arg1; +- (void)_performFilterTask:(id)arg1 taskID:(int)arg2; +- (id)_originalForMessage:(id)arg1; +- (BOOL)_shouldAlwaysShowDuplicates; +- (BOOL)_shouldShowCopy:(id)arg1; +- (BOOL)_shouldDisplayMessage:(id)arg1; +- (long long)compareByNumberMessage:(id)arg1 andMessage:(id)arg2 sortedAscending:(BOOL)arg3; +- (void)_removeMessagesFromByStoreTables:(id)arg1; +- (void)_addMessages:(id)arg1 toTablesForStore:(id)arg2; +- (void)_removeMessagesInStores:(id)arg1 fromCopiesInfoWithStoreCache:(id)arg2; +- (void)_removeMessagesInStores:(id)arg1 fromMessages:(id)arg2 storeCache:(id)arg3; +- (id)_handleComponentStoreStructureChanged:(id)arg1; +- (void)_componentStoreStructureChanged:(id)arg1; +- (id)_handleMessagesAdded:(id)arg1; +- (void)_componentStoreMessagesWereAdded:(id)arg1; +- (id)_storeFinishedLoading:(id)arg1; +- (void)_componentStoreFinishedLoading:(id)arg1; +- (id)_addMessages:(id)arg1 toStore:(id)arg2; +- (id)_removeMessages:(id)arg1 reason:(id)arg2; +- (id)_addStore:(id)arg1; +- (void)_addMessagesToByStoreTables:(id)arg1; +- (id)_threadForMessage:(id)arg1; +- (void *)_secondarySortFunction; +- (void *)_primarySortFunction; +- (void *)_sortFunctionForSortOrder:(id)arg1; +- (id)_sortComparatorWithContext:(SEL)arg1 sortValues:(id)arg2; +- (id)_handleComponentStoreDidOpen:(id)arg1; +- (void)_componentStoreDidOpen:(id)arg1; +- (id)_handleLibraryConversationsWereChanged:(id)arg1; +- (void)_libraryConversationsWereChanged:(id)arg1; +- (id)_handleLibraryMessagesGmailLabelsChanged:(id)arg1; +- (void)_libraryMessagesGmailLabelsChanged:(id)arg1; +- (void)_libraryMessagesCompacted:(id)arg1; +- (id)_handleLibraryMessagesUpdated:(id)arg1; +- (void)_libraryMessagesUpdated:(id)arg1; +- (BOOL)_isKnownMessage:(id)arg1; +- (id)_knownAndUnknownMessages:(id)arg1 fromMessages:(id)arg2; +- (id)_handleLibraryMessagesFlagsChanged:(id)arg1; +- (void)_libraryMessagesFlagsChanged:(id)arg1; +- (void)_prepareToDisplayThread:(id)arg1; +- (unsigned long long)_indexOfChildMessage:(id)arg1 usingComparator:(id)arg2; +- (id)_getIndexesOfMessages:(id)arg1 completionBlock:(id)arg2; +- (void)getIndexesOfMessages:(id)arg1 completionBlock:(id)arg2; +- (id)_closeAllThreads; +- (void)closeAllThreads; +- (struct _NSRange)_closeThread:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)_closeThreads:(id)arg1 selectingThread:(id)arg2; +- (void)closeThreads:(id)arg1 selectingThread:(id)arg2; +- (id)_openAllThreads; +- (void)openAllThreads; +- (struct _NSRange)_openThread:(id)arg1 atIndex:(unsigned long long)arg2; +- (id)_openThreads:(id)arg1; +- (void)openThreads:(id)arg1; +- (id)_unhideMessages:(id)arg1; +- (void)unhideMessages:(id)arg1; +- (id)_hideMessages:(id)arg1 selectingNextMessage:(id)arg2; +- (void)hideMessages:(id)arg1 selectingNextMessage:(id)arg2; +- (id)_refilter; +- (id)_hideDeletedMessages; +- (void)hideDeletedMessages; +- (id)_showDeletedMessages; +- (void)showDeletedMessages; +- (id)_ungroupMessages; +- (void)ungroupMessages; +- (id)_groupMessages; +- (void)groupMessages; +- (id)_findPendingObjectsInList; +- (id)_invertFilteredListWithViewingState:(id)arg1; +- (void)invertFilteredListWithViewingState:(id)arg1; +- (id)_resortWithPrimarySortOrder:(id)arg1 secondarySortOrder:(id)arg2 viewingState:(id)arg3; +- (void)resortWithPrimarySortOrder:(id)arg1 secondarySortOrder:(id)arg2 viewingState:(id)arg3; +- (void)_clearAllMessageInfo; +- (void)_unrollViewingState:(id)arg1; +- (id)_setStores:(id)arg1 sortOrder:(id)arg2 isSortedAscending:(BOOL)arg3 isInThreadedMode:(BOOL)arg4 includeDeleted:(BOOL)arg5 viewingState:(id)arg6; +- (void)setStores:(id)arg1 sortOrder:(id)arg2 isSortedAscending:(BOOL)arg3 isInThreadedMode:(BOOL)arg4 includeDeleted:(BOOL)arg5 viewingState:(id)arg6; +- (void)unregisterForNotifications; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageFilterDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageFilterDelegate-Protocol.h new file mode 100644 index 00000000..73938fd6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageFilterDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol MessageFilterDelegate +- (void)postNotifications:(id)arg1; +- (void)storesLoaded:(BOOL)arg1; +- (void)storesDidOpen; +- (void)setFilteredMessages:(id)arg1 totalMessageCount:(unsigned long long)arg2 openThreadIndexes:(id)arg3 originalMessageByMessageID:(id)arg4 messageCopiesByMessageID:(id)arg5; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListCell.h new file mode 100644 index 00000000..cbfdfe44 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListCell.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageCell.h" + +@class NSString, NSTextFieldCell; + +@interface MessageListCell : NSImageCell +{ + NSTextFieldCell *_textCell; + int _contentType; + double _maxHeight; + double _maxWidth; + unsigned long long _contentCount; + NSString *_stringValue; +} + +@property(copy, nonatomic) NSString *stringValue; // @synthesize stringValue=_stringValue; +@property(nonatomic) unsigned long long contentCount; // @synthesize contentCount=_contentCount; +@property(nonatomic) int contentType; // @synthesize contentType=_contentType; +@property(nonatomic) double maxWidth; // @synthesize maxWidth=_maxWidth; +@property(nonatomic) double maxHeight; // @synthesize maxHeight=_maxHeight; +- (void).cxx_destruct; +- (struct _NSRange)accessibilitySelectedTextRange; +- (id)accessibilitySelectedText; +- (long long)accessibilityNumberOfCharacters; +- (id)accessibilityLabel; +- (id)accessibilityRole; +- (id)accessibilityValue; +- (BOOL)isAccessibilitySelectorAllowed:(SEL)arg1; +- (BOOL)isRepresentedAsButton; +- (BOOL)isRepresentedAsStaticText; +- (id)contentValue; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (struct CGRect)imageRectForBounds:(struct CGRect)arg1; +- (void)setObjectValue:(id)arg1; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (struct CGPoint)_drawOriginForSize:(struct CGSize)arg1 inRect:(struct CGRect)arg2; +- (struct CGSize)_imageSizeForCellFrame:(struct CGRect)arg1; +- (void)setFont:(id)arg1; +- (void)setTextColor:(id)arg1; +- (id)_textCell; +- (id)copyWithZone:(struct _NSZone *)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListColumnManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListColumnManager.h new file mode 100644 index 00000000..98b9f13a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListColumnManager.h @@ -0,0 +1,55 @@ +/* + * 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" + +@class NSArray, NSDictionary, NSMutableDictionary; + +@interface MessageListColumnManager : NSObject +{ + NSMutableDictionary *_tableColumnPreferences; + BOOL _wereTableColumnPreferencesSetupFromScratch; + BOOL _blockSavingColumnPreferences; + NSArray *_tableColumns; + NSDictionary *_viewerPreferences; +} + ++ (void)setSharedManager:(id)arg1; ++ (id)sharedManager; +@property(nonatomic) BOOL blockSavingColumnPreferences; // @synthesize blockSavingColumnPreferences=_blockSavingColumnPreferences; +@property(copy, nonatomic) NSDictionary *viewerPreferences; // @synthesize viewerPreferences=_viewerPreferences; +@property(copy, nonatomic) NSArray *tableColumns; // @synthesize tableColumns=_tableColumns; +@property(nonatomic) BOOL wereTableColumnPreferencesSetupFromScratch; // @synthesize wereTableColumnPreferencesSetupFromScratch=_wereTableColumnPreferencesSetupFromScratch; +- (void).cxx_destruct; +- (void)_setupUnreadColumnWidthInTableView:(id)arg1 forMailboxes:(id)arg2 isThreaded:(BOOL)arg3; +- (void)setUpUnreadColumnMinWidth:(id)arg1 isThreaded:(BOOL)arg2; +- (long long)calcUnreadColumnWidth:(id)arg1 forUnreadCountString:(id)arg2; +- (void)column:(id)arg1 wasMadeVisible:(BOOL)arg2 inTableView:(id)arg3 forMailboxes:(id)arg4 isSearching:(BOOL)arg5 searchTarget:(int)arg6 searchField:(long long)arg7; +- (void)sizeColumnsToFitInTableView:(id)arg1 forMailboxes:(id)arg2 isThreaded:(BOOL)arg3 threadingDidChange:(BOOL)arg4; +- (void)showColumnsInTableView:(id)arg1 allColumns:(id)arg2 forSearchTarget:(int)arg3 searchField:(long long)arg4 mailboxes:(id)arg5 isThreaded:(BOOL)arg6; +- (void)showColumnsInTableView:(id)arg1 allColumns:(id)arg2 forMailboxes:(id)arg3 isThreaded:(BOOL)arg4 threadingHasChanged:(BOOL)arg5; +- (BOOL)_someMailboxUsesLastViewedDateCriterion:(id)arg1; +- (BOOL)_column:(long long)arg1 isAnAutomaticInsertColumnForMailboxType:(id)arg2 mailboxes:(id)arg3 multipleMailboxes:(BOOL)arg4 isSearching:(BOOL)arg5 searchTarget:(int)arg6 searchField:(long long)arg7; +- (BOOL)_columnsList:(id)arg1 containsColumn:(long long)arg2; +- (id)_widthKeyForMailboxType:(id)arg1 isThreaded:(BOOL)arg2 isSearching:(BOOL)arg3 locationIsVisible:(BOOL)arg4; +- (id)typeOfMailboxes:(id)arg1 multiple:(char *)arg2; +- (id)_visibleTableColumnSettingsForMailboxes:(id)arg1 multipleMailboxes:(BOOL)arg2 ofType:(id)arg3 withLastViewedDate:(BOOL)arg4 isThreaded:(BOOL)arg5 isSearching:(BOOL)arg6 searchTarget:(int)arg7 searchField:(long long)arg8 tableView:(id)arg9; +- (void)_setColumn:(long long)arg1 isVisible:(BOOL)arg2 inSettings:(id)arg3; +- (void)_replaceColumn:(long long)arg1 byColumn:(long long)arg2 inSettings:(id)arg3; +- (id)_convertNormalSettingsFromPreleopardDefaults; +- (long long)_widthAndPosition:(long long *)arg1 forColumn:(id)arg2 mailboxes:(id)arg3 isThreaded:(BOOL)arg4 isSearching:(BOOL)arg5 locationIsVisible:(BOOL)arg6; +- (long long)widthAndPosition:(long long *)arg1 forColumn:(id)arg2 inTableView:(id)arg3 mailboxes:(id)arg4 isThreaded:(BOOL)arg5 isSearching:(BOOL)arg6; +- (id)_settingForColumn:(long long)arg1 forKey:(id)arg2 forMailboxes:(id)arg3; +- (BOOL)isAutomaticInsertionWhileSearchingOkayForColumn:(long long)arg1 forMailboxes:(id)arg2; +- (BOOL)isColumnVisible:(long long)arg1 forMailboxes:(id)arg2; +- (id)_tableColumnPreferencesForMailboxType:(id)arg1; +- (void)takeDefaultsForMailboxes:(id)arg1 isThreaded:(BOOL)arg2 isSearching:(BOOL)arg3 searchTarget:(int)arg4 fromCurrentColumnsInTableView:(id)arg5; +- (void)saveColumnPreferencesToStandardDefaults; +- (void)dealloc; +- (id)initWithTableColumns:(id)arg1 viewerPreferences:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListContainerView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListContainerView.h new file mode 100644 index 00000000..2d651b2b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListContainerView.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "NSAccessibilityGroup.h" +#import "RichMessageListSortViewProtocol.h" + +@class MailTableView, MessageViewer, NSString, RichMessageListSortView; + +@interface MessageListContainerView : NSView +{ + BOOL _isRichMessageList; + MessageViewer *_messageViewer; + MailTableView *_messageListTableView; + RichMessageListSortView *_sortView; +} + +@property(retain, nonatomic) RichMessageListSortView *sortView; // @synthesize sortView=_sortView; +@property(retain, nonatomic) MailTableView *messageListTableView; // @synthesize messageListTableView=_messageListTableView; +@property(nonatomic) __weak MessageViewer *messageViewer; // @synthesize messageViewer=_messageViewer; +- (void).cxx_destruct; +- (id)accessibilityLabel; +- (BOOL)isAccessibilityElement; +- (void)sortViewDidMouseDown:(id)arg1; +@property(nonatomic) BOOL isRichMessageList; // @synthesize isRichMessageList=_isRichMessageList; +- (void)_updateSortViewVisibility; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListHeaderCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListHeaderCell.h new file mode 100644 index 00000000..e8765fed --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListHeaderCell.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableHeaderCell.h" + +@class MessageListCell; + +@interface MessageListHeaderCell : NSTableHeaderCell +{ + unsigned long long _imageAlignment; + MessageListCell *_realCell; +} + +@property(retain, nonatomic) MessageListCell *realCell; // @synthesize realCell=_realCell; +- (void).cxx_destruct; +- (void)setImageAlignment:(unsigned long long)arg1; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)copyWithZone:(struct _NSZone *)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListObjectProxy.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListObjectProxy.h new file mode 100644 index 00000000..fb0ee4a3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageListObjectProxy.h @@ -0,0 +1,124 @@ +/* + * 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" + +@class MCMessage, MFCriterion, NSDictionary, NSImage, NSIndexSet, NSOrderedSet, NSString; + +@interface MessageListObjectProxy : NSObject +{ + BOOL _showContactPhotos; + BOOL _isOpen; + BOOL _isVIP; + BOOL _selected; + BOOL _showRecipient; + BOOL _isDeleted; + unsigned int _flags; + MCMessage *_message; + NSString *_addressee; + NSString *_dateString; + NSString *_subject; + NSDictionary *_unreadImages; + NSDictionary *_replyImages; + NSDictionary *_attachmentImages; + NSImage *_statusImage; + NSImage *_selectedPhoto; + NSImage *_unselectedPhoto; + unsigned long long _photoSize; + NSString *_mailbox; + NSString *_size; + NSOrderedSet *_flagImages; + NSString *_snippetString; + unsigned long long _threadCount; + MFCriterion *_mailboxCriterion; + long long _backgroundStyle; + NSIndexSet *_flagColors; + unsigned long long _messageSize; + NSString *_snippet; + NSString *_toCcString; +} + ++ (id)keyPathsForValuesAffectingFirstFlag; ++ (id)keyPathsForValuesAffectingAttachmentImage; ++ (id)keyPathsForValuesAffectingReplyAlternateImage; ++ (id)keyPathsForValuesAffectingReplyImage; ++ (id)keyPathsForValuesAffectingUnreadImage; ++ (id)keyPathsForValuesAffectingPhoto; ++ (void)_resetDateFormats:(id)arg1; ++ (void)initialize; +@property(copy, nonatomic) NSString *toCcString; // @synthesize toCcString=_toCcString; +@property(nonatomic) BOOL isDeleted; // @synthesize isDeleted=_isDeleted; +@property(nonatomic) BOOL selected; // @synthesize selected=_selected; +@property(nonatomic) long long backgroundStyle; // @synthesize backgroundStyle=_backgroundStyle; +@property(nonatomic) unsigned long long threadCount; // @synthesize threadCount=_threadCount; +@property(nonatomic) BOOL isOpen; // @synthesize isOpen=_isOpen; +@property(copy, nonatomic) NSString *snippetString; // @synthesize snippetString=_snippetString; +@property(copy, nonatomic) NSOrderedSet *flagImages; // @synthesize flagImages=_flagImages; +@property(copy, nonatomic) NSString *size; // @synthesize size=_size; +@property(copy, nonatomic) NSString *mailbox; // @synthesize mailbox=_mailbox; +@property(retain, nonatomic) NSImage *unselectedPhoto; // @synthesize unselectedPhoto=_unselectedPhoto; +@property(retain, nonatomic) NSImage *selectedPhoto; // @synthesize selectedPhoto=_selectedPhoto; +@property(retain, nonatomic) NSImage *statusImage; // @synthesize statusImage=_statusImage; +@property(retain, nonatomic) NSDictionary *attachmentImages; // @synthesize attachmentImages=_attachmentImages; +@property(retain, nonatomic) NSDictionary *replyImages; // @synthesize replyImages=_replyImages; +@property(retain, nonatomic) NSDictionary *unreadImages; // @synthesize unreadImages=_unreadImages; +@property(copy, nonatomic) NSString *subject; // @synthesize subject=_subject; +@property(copy, nonatomic) NSString *dateString; // @synthesize dateString=_dateString; +@property(copy, nonatomic) NSString *addressee; // @synthesize addressee=_addressee; +@property(readonly, nonatomic) MCMessage *message; // @synthesize message=_message; +- (void).cxx_destruct; +@property(readonly, nonatomic) NSImage *firstFlag; +- (id)_iconsForFlags:(id)arg1; +@property(readonly, nonatomic) NSImage *attachmentImage; +@property(readonly, nonatomic) NSImage *replyAlternateImage; +@property(readonly, nonatomic) NSImage *replyImage; +@property(readonly, nonatomic) NSImage *unreadImage; +- (void)_updateFlagImages; +- (void)_updateSize; +- (void)_updateMailbox; +- (id)_displayNameForPhoto; +- (id)_addressForPhoto; +- (id)_messageForPhoto; +- (id)_relevantAddressesForMessage:(id)arg1; +- (id)_relevantAddresses; +- (id)_unknownSenderImageSelected:(BOOL)arg1; +- (void)_updatePhoto; +- (void)_updateToCcString; +- (void)_updateThreadData; +- (void)_updateSnippet; +- (void)_updateStatusImage; +- (BOOL)_messageHasAttachments:(id)arg1; +- (void)_updateAttachmentImages; +- (void)_updateReplyImages; +- (id)_initializeUnreadImages; +- (void)_updateUnreadImages; +- (void)_updateIsVIP; +- (void)_displayNameChanged:(id)arg1; +- (void)_photoAvailable:(id)arg1; +- (void)_updateContactPhotoVisibilityFromDefaults; +- (void)_vipSendersChanged:(id)arg1; +- (void)_updateSubject; +- (void)_updateDate; +- (void)_updateAddressee; +@property(nonatomic) BOOL showContactPhotos; +@property(copy, nonatomic) NSString *snippet; // @synthesize snippet=_snippet; +@property(nonatomic) unsigned long long photoSize; // @synthesize photoSize=_photoSize; +@property(nonatomic) BOOL showRecipient; // @synthesize showRecipient=_showRecipient; +@property(nonatomic) unsigned int flags; // @synthesize flags=_flags; +@property(copy, nonatomic) NSIndexSet *flagColors; // @synthesize flagColors=_flagColors; +@property(readonly, nonatomic) NSImage *photo; +@property(nonatomic) BOOL isVIP; // @synthesize isVIP=_isVIP; +@property(nonatomic) __weak MFCriterion *mailboxCriterion; // @synthesize mailboxCriterion=_mailboxCriterion; +@property(nonatomic) unsigned long long messageSize; // @synthesize messageSize=_messageSize; +- (void)update; +- (id)_todayDateFormatter; +- (id)_defaultDateFormatter; +- (void)dealloc; +- (id)init; +- (id)initWithMessage:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageMall.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageMall.h new file mode 100644 index 00000000..8d2ad16b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageMall.h @@ -0,0 +1,179 @@ +/* + * 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 "MCMessageDataSource.h" +#import "MessageFilterDelegate.h" + +@class MFLibraryStore, MessageFilter, NSArray, NSDictionary, NSIndexSet, NSString; + +@interface MessageMall : NSObject +{ + BOOL _isSortedAscending; + BOOL _includeDeleted; + BOOL _isInThreadedMode; + BOOL _displayingToColumn; + BOOL _useLibraryIDNumbering; + NSArray *_selectedMailboxes; + NSArray *_expandedSelectedMailboxes; + NSString *_sortOrder; + NSString *_secondarySortOrder; + NSArray *_filteredMessages; + NSDictionary *_originalMessageByMessageID; + NSDictionary *_messageCopiesByMessageID; + MFLibraryStore *_searchStore; + BOOL _filteredListIncludesAllMessages; + BOOL _isOpened; + BOOL _inSearchMode; + BOOL _wasPreviouslyOrderedAscending; + BOOL _wasPreviouslyInThreadedMode; + BOOL _wasPreviouslyIncludingDeleted; + int _activeSearchTarget; + MessageFilter *_filter; + long long _activeSearchField; + NSString *_lastQueryStringFragment; + NSArray *_previouslySelectedMailboxes; + NSString *_previousSortOrder; + NSIndexSet *_openThreadIndexes; + unsigned long long _totalMessageCount; +} + ++ (id)expandedMailboxes:(id)arg1; ++ (void)initialize; +@property(nonatomic) unsigned long long totalMessageCount; // @synthesize totalMessageCount=_totalMessageCount; +@property(copy, nonatomic) NSIndexSet *openThreadIndexes; // @synthesize openThreadIndexes=_openThreadIndexes; +@property(nonatomic) BOOL wasPreviouslyIncludingDeleted; // @synthesize wasPreviouslyIncludingDeleted=_wasPreviouslyIncludingDeleted; +@property(nonatomic) BOOL wasPreviouslyInThreadedMode; // @synthesize wasPreviouslyInThreadedMode=_wasPreviouslyInThreadedMode; +@property(nonatomic) BOOL wasPreviouslyOrderedAscending; // @synthesize wasPreviouslyOrderedAscending=_wasPreviouslyOrderedAscending; +@property(copy, nonatomic) NSString *previousSortOrder; // @synthesize previousSortOrder=_previousSortOrder; +@property(retain, nonatomic) NSArray *previouslySelectedMailboxes; // @synthesize previouslySelectedMailboxes=_previouslySelectedMailboxes; +@property(copy, nonatomic) NSString *lastQueryStringFragment; // @synthesize lastQueryStringFragment=_lastQueryStringFragment; +@property(nonatomic) int activeSearchTarget; // @synthesize activeSearchTarget=_activeSearchTarget; +@property(nonatomic) long long activeSearchField; // @synthesize activeSearchField=_activeSearchField; +@property(readonly, nonatomic) MessageFilter *filter; // @synthesize filter=_filter; +@property(nonatomic) BOOL inSearchMode; // @synthesize inSearchMode=_inSearchMode; +@property(nonatomic) BOOL isOpened; // @synthesize isOpened=_isOpened; +@property BOOL filteredListIncludesAllMessages; // @synthesize filteredListIncludesAllMessages=_filteredListIncludesAllMessages; +- (void).cxx_destruct; +- (unsigned long long)sizeForMessage:(id)arg1; +- (unsigned int)messageFlagsForMessage:(id)arg1 size:(unsigned long long *)arg2 appliedFlagColors:(id *)arg3; +- (id)originalOfMessage:(id)arg1; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (void)addMessagesInSameThreadAsMessage:(id)arg1 toSet:(id)arg2; +- (id)filteredThreadForMessage:(id)arg1; +- (id)threadAtIndex:(unsigned long long)arg1; +- (BOOL)messageIsPartOfAThread:(id)arg1; +- (id)parentOfMessage:(id)arg1; +- (id)repliesToMessage:(id)arg1; +- (void)postNotifications:(id)arg1; +- (void)storesLoaded:(BOOL)arg1; +- (void)storesDidOpen; +- (void)setFilteredMessages:(id)arg1 totalMessageCount:(unsigned long long)arg2 openThreadIndexes:(id)arg3 originalMessageByMessageID:(id)arg4 messageCopiesByMessageID:(id)arg5; +- (void)getIndexesOfMessages:(id)arg1 completionBlock:(id)arg2; +- (void)closeAllThreads; +- (void)openAllThreads; +- (void)closeThread:(id)arg1; +- (void)openThread:(id)arg1; +- (BOOL)needTo; +- (void)setDisplayingToColumn:(BOOL)arg1; +- (BOOL)displayingToColumn; +- (void)toggleThreadedMode; +- (void)setIsInThreadedMode:(BOOL)arg1; +- (BOOL)isInThreadedModeExcludingSearch; +- (BOOL)isInThreadedMode; +- (BOOL)isStillSearching; +- (id)uniquedString:(id)arg1; +- (void)flushAllCaches; +- (void)invalidateMessage:(id)arg1; +- (void)sendResponseType:(BOOL)arg1 forMeetingMessage:(id)arg2; +- (id)routeMessages:(id)arg1 fetchingBodies:(BOOL)arg2 messagesNeedingBodies:(id)arg3; +- (void)doCompact; +- (id)undeleteMessages:(id)arg1 movedToStore:(id)arg2 newMessageIDs:(id)arg3; +- (void)undeleteMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 moveToTrash:(BOOL)arg2; +- (void)saveSnippetsForMessages:(id)arg1; +- (id)snippetsForMessages:(id)arg1; +- (BOOL)supportsSnippets; +- (void)setNumberOfAttachments:(unsigned int)arg1 isSigned:(BOOL)arg2 isEncrypted:(BOOL)arg3 forMessage:(id)arg4; +- (id)attachmentsDirectoryForMessage:(id)arg1; +- (void)setColor:(id)arg1 highlightTextOnly:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setJunkMailLevel:(long long)arg1 forMessages:(id)arg2 trainJunkMailDatabase:(BOOL)arg3 userRecorded:(BOOL)arg4; +- (void)messageFlagsDidChange:(id)arg1 flags:(id)arg2; +- (id)async_setFlagWithKey:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3; +- (id)async_setFlagsFromDictionary:(id)arg1 forMessages:(id)arg2; +- (id)dataForMimePart:(id)arg1; +- (BOOL)hasCachedDataForMimePart:(id)arg1; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2 fetchIfNotAvailable:(BOOL)arg3; +- (id)fullBodyDataForMessage:(id)arg1 andHeaderDataIfReadilyAvailable:(id *)arg2; +- (id)fullBodyDataForMessage:(id)arg1; +- (id)bodyDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3 allowPartial:(BOOL)arg4; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 updateFlags:(BOOL)arg3; +- (id)bodyForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2 allowPartial:(BOOL)arg3; +- (id)headerDataForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headerDataForMessage:(id)arg1; +- (id)headersForMessage:(id)arg1 fetchIfNotAvailable:(BOOL)arg2; +- (id)headersForMessage:(id)arg1; +- (id)messageForMessageID:(id)arg1; +- (id)mailbox; +- (id)account; +@property(readonly) BOOL isReadOnly; +- (id)searchScopeMailboxes; +- (id)expandedSelectedMailboxesAllowingSearch; +- (id)expandedSelectedMailboxes; +- (id)selectedMailboxes; +- (id)allMailboxes; +@property(readonly, nonatomic) MFLibraryStore *searchStore; +- (id)stores; +- (id)_storesToRebuild; +- (void)rebuildTableOfContentsAsynchronously; +- (BOOL)canRebuild; +- (BOOL)canCompact; +- (void)unhideMessages:(id)arg1; +- (void)hideMessages:(id)arg1 selectingNextMessage:(id)arg2; +- (unsigned long long)unreadCount; +- (void)setMailboxes:(id)arg1 sortOrder:(id)arg2 isSortedAscending:(BOOL)arg3 isInThreadedMode:(BOOL)arg4 includeDeleted:(BOOL)arg5 initialViewingState:(id)arg6; +- (BOOL)isSortedByDateReceived; +- (BOOL)isSortedAscending; +- (void)setIncludeDeleted:(BOOL)arg1; +- (BOOL)includeDeleted; +- (id)secondarySortOrder; +- (id)sortOrder; +- (void)setSortOrder:(id)arg1 ascending:(BOOL)arg2 viewingState:(id)arg3; +- (BOOL)selectionIncludesSmartMailbox; +- (id)openThreads; +- (id)filteredMessageAtIndex:(unsigned long long)arg1 isChildOfThread:(char *)arg2; +- (id)filteredMessagesInRange:(struct _NSRange)arg1; +- (id)filteredMessages; +- (id)filteredMessagesAtIndexes:(id)arg1; +- (id)filteredMessageAtIndex:(unsigned long long)arg1; +- (unsigned long long)filteredMessagesCount; +- (BOOL)supportsSearching; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (BOOL)shouldShowRecipientForMailboxes:(id)arg1; +- (id)criterionForString:(id)arg1 type:(long long)arg2 scope:(int)arg3 shouldShowRecipient:(char *)arg4; +- (id)criterionForAttachmentType:(id)arg1; +- (void)searchForString:(id)arg1 in:(int)arg2 withOptions:(long long)arg3 isInThreadedMode:(BOOL)arg4 viewingState:(id)arg5; +- (id)queryStringFragmentFromSuggestions:(id)arg1; +- (void)searchForSuggestions:(id)arg1 in:(int)arg2 withOptions:(long long)arg3 fromSuggestionsSearchField:(id)arg4 isInThreadedMode:(BOOL)arg5 viewingState:(id)arg6; +- (void)clearPreviousQueryString; +- (void)_searchForCriterion:(id)arg1 isInThreadedMode:(BOOL)arg2 viewingState:(id)arg3; +- (void)clearSearchWithViewingState:(id)arg1; +- (id)_delayedReleaseQueue; +- (void)dealloc; +- (void)unregisterForNotifications; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageMallShared.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageMallShared.h new file mode 100644 index 00000000..c4de9858 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageMallShared.h @@ -0,0 +1,19 @@ +/* + * 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" + +@interface MessageMallShared : NSObject +{ +} + ++ (BOOL)shouldDisplayMessage:(id)arg1 includeDeleted:(BOOL)arg2; ++ (unsigned long long)sizeForMessage:(id)arg1 originalMessageByMessageID:(id)arg2 messageCopiesByMessageID:(id)arg3 includeDeleted:(BOOL)arg4; ++ (unsigned int)messageFlagsForMessage:(id)arg1 size:(unsigned long long *)arg2 appliedFlagColors:(id *)arg3 originalMessageByMessageID:(id)arg4 messageCopiesByMessageID:(id)arg5 includeDeleted:(BOOL)arg6; ++ (id)messagesIncludingHiddenCopies:(id)arg1 originalMessageByMessageID:(id)arg2 messageCopiesByMessageID:(id)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageSaver.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageSaver.h new file mode 100644 index 00000000..814caa0a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageSaver.h @@ -0,0 +1,64 @@ +/* + * 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 "MCActivityTarget.h" + +@class NSArray, NSButton, NSPopUpButton, NSSavePanel, NSSet, NSString, NSURL, NSView, NSWindow; + +@interface MessageSaver : NSObject +{ + BOOL _haveAttachments; + BOOL _hideExtension; + BOOL _includeAttachments; + int _saveFormat; + NSView *_accessoryView; + NSPopUpButton *_formatPopup; + NSButton *_includeAttachmentsSwitch; + NSArray *_messages; + NSSet *_stores; + NSSavePanel *_savePanel; + NSWindow *_window; + NSURL *_saveDestination; +} + ++ (void)saveMessages:(id)arg1 preferredFormat:(int)arg2 window:(id)arg3; ++ (void)initialize; +@property(nonatomic) int saveFormat; // @synthesize saveFormat=_saveFormat; +@property(nonatomic) BOOL includeAttachments; // @synthesize includeAttachments=_includeAttachments; +@property(nonatomic) BOOL hideExtension; // @synthesize hideExtension=_hideExtension; +@property(nonatomic) BOOL haveAttachments; // @synthesize haveAttachments=_haveAttachments; +@property(retain, nonatomic) NSURL *saveDestination; // @synthesize saveDestination=_saveDestination; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +@property(nonatomic) __weak NSSavePanel *savePanel; // @synthesize savePanel=_savePanel; +@property(copy, nonatomic) NSSet *stores; // @synthesize stores=_stores; +@property(copy, nonatomic) NSArray *messages; // @synthesize messages=_messages; +@property(nonatomic) __weak NSButton *includeAttachmentsSwitch; // @synthesize includeAttachmentsSwitch=_includeAttachmentsSwitch; +@property(nonatomic) __weak NSPopUpButton *formatPopup; // @synthesize formatPopup=_formatPopup; +@property(retain, nonatomic) NSView *accessoryView; // @synthesize accessoryView=_accessoryView; +- (void).cxx_destruct; +- (id)_separator; +- (void)changeIncludeAttachments:(id)arg1; +- (void)changeFormat:(id)arg1; +- (void)_handleSaveError:(id)arg1; +- (void)_saveMessages; +- (void)_updateSavePanelUI; +- (void)_runSavePanel; +- (void)_runSavePanelForStationery; +- (void)_savePanelDidEndWithFileHandlingResult:(long long)arg1; +- (void)_setSaveFormat:(int)arg1; +- (void)_setMessages:(id)arg1; +- (void)saveMessagesWithoutPrompting:(id)arg1 toFilePath:(id)arg2 format:(int)arg3; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageSelection.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageSelection.h new file mode 100644 index 00000000..07914672 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageSelection.h @@ -0,0 +1,35 @@ +/* + * 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" + +@class MCMessage, NSArray, NSDictionary; + +@interface MessageSelection : NSObject +{ + MCMessage *_initialMessage; + NSArray *_conversations; + NSDictionary *_focusedMessagesByConversation; + NSDictionary *_selectedMessagesForConversation; + NSArray *_messages; +} + +@property(readonly, copy, nonatomic) NSArray *messages; // @synthesize messages=_messages; +@property(readonly, copy, nonatomic) NSDictionary *selectedMessagesByConversation; // @synthesize selectedMessagesByConversation=_selectedMessagesForConversation; +@property(readonly, copy, nonatomic) NSDictionary *focusedMessagesByConversation; // @synthesize focusedMessagesByConversation=_focusedMessagesByConversation; +@property(readonly, copy, nonatomic) NSArray *conversations; // @synthesize conversations=_conversations; +@property(readonly, nonatomic) MCMessage *initialMessage; // @synthesize initialMessage=_initialMessage; +- (void).cxx_destruct; +- (id)description; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (id)init; +- (void)_messageSelectionCommonInitWithInitialMessage:(id)arg1 conversations:(id)arg2 focusedMessagesByConversation:(id)arg3 selectedMessagesByConversation:(id)arg4 messages:(id)arg5; +- (id)initWithInitialMessage:(id)arg1 conversations:(id)arg2 selectedMessagesByConversation:(id)arg3 messages:(id)arg4; +- (id)initWithInitialMessage:(id)arg1 conversations:(id)arg2 focusedMessagesByConversation:(id)arg3 messages:(id)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageTextView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageTextView.h new file mode 100644 index 00000000..192fe3af --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageTextView.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextView.h" + +@interface MessageTextView : NSTextView +{ +} + +- (id)accessibilityLabel; +- (BOOL)isAccessibilityElement; +- (BOOL)isAccessibilitySelectorAllowed:(SEL)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (void)saveAs:(id)arg1; +- (void)showPrintPanel:(id)arg1; +- (void)toggleShowControlCharacters:(id)arg1; +- (id)menuForEvent:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)acceptsFirstResponder; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageTransfer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageTransfer.h new file mode 100644 index 00000000..ac304111 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageTransfer.h @@ -0,0 +1,67 @@ +/* + * 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 "MCActivityTarget.h" +#import "MessageDeletionTransfer.h" + +@class NSArray, NSMutableArray, NSString; + +@interface MessageTransfer : NSObject +{ + NSMutableArray *_operations; + BOOL _deleteOriginals; + BOOL _allowsUndo; + BOOL _registeredForUndo; + BOOL _isDeleteOperation; + BOOL _isArchiveOperation; + BOOL _undoInProgress; + BOOL _needToUndoTransfer; + id _delegate; + NSArray *_sourceLabels; +} + ++ (void)queueMailboxDeletions:(id)arg1; ++ (BOOL)_shouldProceedWithMailboxDeletions:(id)arg1; ++ (void)_redo:(id)arg1; ++ (void)_undo:(id)arg1; ++ (void)initialize; +@property(nonatomic) BOOL needToUndoTransfer; // @synthesize needToUndoTransfer=_needToUndoTransfer; +@property(nonatomic) BOOL undoInProgress; // @synthesize undoInProgress=_undoInProgress; +@property(nonatomic) BOOL isArchiveOperation; // @synthesize isArchiveOperation=_isArchiveOperation; +@property(nonatomic) BOOL isDeleteOperation; // @synthesize isDeleteOperation=_isDeleteOperation; +@property(nonatomic) BOOL registeredForUndo; // @synthesize registeredForUndo=_registeredForUndo; +@property(copy) NSArray *sourceLabels; // @synthesize sourceLabels=_sourceLabels; +@property BOOL allowsUndo; // @synthesize allowsUndo=_allowsUndo; +@property BOOL deleteOriginals; // @synthesize deleteOriginals=_deleteOriginals; +@property __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (id)_undoActionNameForMessageCount:(unsigned long long)arg1; +- (BOOL)anySourceStoreAllowsDeleteInPlace; +- (id)sourceStores; +- (id)destinationMailboxes; +- (void)_synchronouslyPerformTransfer; +- (void)_postDidEndDocumentTransferNotification:(id)arg1 result:(long long)arg2 destinationAccount:(id)arg3 missedMessages:(id)arg4; +- (void)_postWillBeginDocumentTransferNotification:(id)arg1; +- (void)_redo; +- (void)_undoSettingFlags:(id)arg1 transferringMessages:(id)arg2; +- (void)_undoSettingFlagsCompletedWithMessages:(id)arg1; +- (void)_undo; +- (void)_registerForUndoType:(int)arg1; +- (void)_completedTransferWithError:(id)arg1; +- (void)beginTransfer; +- (BOOL)canBeginTransfer; +- (id)initWithMessages:(id)arg1 targetMailbox:(id)arg2 isDeleteOperation:(BOOL)arg3 isArchiveOperation:(BOOL)arg4; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageTransferDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageTransferDelegate-Protocol.h new file mode 100644 index 00000000..82fb81b4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageTransferDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * 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" + +@protocol MessageTransferDelegate +- (void)messageTransferDidUndoTransferOfMessages:(id)arg1; +- (void)messageTransferDidTransferMessages:(id)arg1; +- (void)unhideMessagesForMessageTransfer:(id)arg1; +- (void)hideMessagesForMessageTransfer:(id)arg1; +- (id)undoManagerForMessageTransfer:(id)arg1; +- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageView.h new file mode 100644 index 00000000..3ac314c1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageView.h @@ -0,0 +1,55 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MUICollectionCellView.h" + +#import "NSAccessibilityGroup.h" + +@class CALayer, MessageWebDocumentView, NSScrollView, NSString; + +@interface MessageView : MUICollectionCellView +{ + NSScrollView *_bodyScrollView; + MessageWebDocumentView *_webDocumentView; + CALayer *_borderLayer; + CALayer *_shadowLayer; +} + +@property(nonatomic) __weak CALayer *shadowLayer; // @synthesize shadowLayer=_shadowLayer; +@property(nonatomic) __weak CALayer *borderLayer; // @synthesize borderLayer=_borderLayer; +@property(retain, nonatomic) MessageWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(retain, nonatomic) NSScrollView *bodyScrollView; // @synthesize bodyScrollView=_bodyScrollView; +- (void).cxx_destruct; +- (void)collectionView:(id)arg1 didScrollInScrollView:(id)arg2; +- (BOOL)_isSelected; +- (id)_borderColor; +- (void)prepareContentInRect:(struct CGRect)arg1; +- (void)updateLayer; +- (void)layoutSublayersOfLayer:(id)arg1; +- (id)_createShadowLayer; +- (id)_createBorderLayer; +- (id)makeBackingLayer; +- (void)setFrameSize:(struct CGSize)arg1; +- (void)setFrameOrigin:(struct CGPoint)arg1; +- (struct NSEdgeInsets)alignmentRectInsets; +- (void)setFocused:(BOOL)arg1; +- (void)setSelected:(BOOL)arg1; +- (void)setEmphasized:(BOOL)arg1; +- (void)setCellIndex:(unsigned long long)arg1; +- (BOOL)wantsUpdateLayer; +- (BOOL)isFlipped; +- (BOOL)canBecomeKeyView; +- (BOOL)acceptsFirstResponder; +- (void)awakeFromNib; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewController.h new file mode 100644 index 00000000..2fde4f8f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewController.h @@ -0,0 +1,77 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class BannerContainerViewController, ConversationMember, HeaderViewController, MessageView, MessageWebDocumentView, NSLayoutConstraint, NSPopUpButton, NSScrollView, NSString, NSTrackingArea, NSView; + +@interface MessageViewController : NSViewController +{ + BannerContainerViewController *_bannerViewController; + HeaderViewController *_headerViewController; + NSView *_actionButtons; + NSView *_headerView; + NSScrollView *_bodyScrollView; + MessageWebDocumentView *_webDocumentView; + NSTrackingArea *_rolloverTrackingArea; + NSLayoutConstraint *_forwardButtonOffset; + NSPopUpButton *_attachmentsButton; + NSView *_attachmentsDivider; +} + ++ (id)keyPathsForValuesAffectingAlwaysShowMailboxName; ++ (id)keyPathsForValuesAffectingLoaded; ++ (id)keyPathsForValuesAffectingPageZoom; +@property(nonatomic) __weak NSView *attachmentsDivider; // @synthesize attachmentsDivider=_attachmentsDivider; +@property(nonatomic) __weak NSPopUpButton *attachmentsButton; // @synthesize attachmentsButton=_attachmentsButton; +@property(retain, nonatomic) NSLayoutConstraint *forwardButtonOffset; // @synthesize forwardButtonOffset=_forwardButtonOffset; +@property(retain, nonatomic) NSTrackingArea *rolloverTrackingArea; // @synthesize rolloverTrackingArea=_rolloverTrackingArea; +@property(retain, nonatomic) MessageWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(retain, nonatomic) NSScrollView *bodyScrollView; // @synthesize bodyScrollView=_bodyScrollView; +@property(retain, nonatomic) NSView *headerView; // @synthesize headerView=_headerView; +@property(retain, nonatomic) NSView *actionButtons; // @synthesize actionButtons=_actionButtons; +@property(retain, nonatomic) HeaderViewController *headerViewController; // @synthesize headerViewController=_headerViewController; +@property(retain, nonatomic) BannerContainerViewController *bannerViewController; // @synthesize bannerViewController=_bannerViewController; +//- (void).cxx_destruct; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateToolbarItem:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)menuNeedsUpdate:(id)arg1; +- (void)exportAttachments:(id)arg1; +- (void)quickLookAllAttachments:(id)arg1; +- (void)saveAllAttachmentsWithoutPrompting:(id)arg1; +- (void)saveAllAttachments:(id)arg1; +- (void)saveAttachment:(id)arg1; +- (void)viewSource:(id)arg1; +- (void)showMessageInMailbox:(id)arg1; +- (void)toggleAllHeaders:(id)arg1; +- (void)forward:(id)arg1; +- (void)replyAll:(id)arg1; +- (void)reply:(id)arg1; +- (void)delete:(id)arg1; +- (id)_messageViewer; +- (void)mouseExited:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)_updateHeaderMouseOver; +- (void)_updateAttachmentRollover; +- (void)_updateRolloverTrackingArea:(id)arg1; +- (void)_showLoadingProgress; +- (void)_updateWebDocumentView; +- (void)cursorUpdate:(id)arg1; +@property(retain) ConversationMember *representedObject; +@property(retain) MessageView *view; +@property(nonatomic) BOOL alwaysShowMailboxName; +@property(readonly, nonatomic) BOOL loaded; +@property(nonatomic) double pageZoom; +- (void)dealloc; +- (void)awakeFromNib; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewer.h new file mode 100644 index 00000000..e9c5823c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewer.h @@ -0,0 +1,562 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSResponder.h" + +#import "FlaggedStatusToolbarItemDelegate.h" +#import "MCActivityTarget.h" +#import "MVMailboxSelectionOwner.h" +#import "MVTerminationHandler.h" +#import "MailTableViewDelegateDelegate.h" +#import "MailboxesOutlineViewControllerDelegate.h" +#import "MessageTransferDelegate.h" +#import "MessageViewerSearchFieldFocusDelegate.h" +#import "NSAnimationDelegate.h" +#import "NSSpeechSynthesizerDelegate.h" +#import "NSToolbarDelegate.h" +#import "NSUserInterfaceValidations.h" +#import "NSWindowDelegate.h" +#import "SGTSearchFieldQueryScopeDelegate.h" + +@class ActivityViewController, ContentSplitViewController, FavoritesBarView, FavoritesBarViewController, FlaggedStatusToolbarItem, FullScreenModalCapableWindow, FullScreenWindowController, MFBehaviorTracker, MailBarContainerView, MailSplitView, MailToolbar, MailboxesOutlineViewController, MailboxesSplitViewController, MessageListContainerView, MessageMall, MessageViewerLazyPopUpButton, MessageViewerSearchField, NSArray, NSDictionary, NSLayoutConstraint, NSMenu, NSMenuItem, NSMutableArray, NSNumber, NSSet, NSString, NSTextField, NSTimer, NSToolbarItem, NSView, NSWindow, TableViewManager, ViewingPaneViewController; + +@interface MessageViewer : NSResponder +{ + MessageMall *_messageMall; + NSString *_searchPhrase; + NSSet *_initiallySelectedMessages; + NSMutableArray *_transferOperations; + FullScreenWindowController *_fullScreenWindowController; + MailboxesSplitViewController *_mailboxesSplitViewController; + struct __MDQuery *_lowPriorityQuery; + struct __MDQuery *_highPriorityQuery; + BOOL _ignoreSearchBarUpdates; + BOOL _previouslyHadSentScope; + BOOL _allowShowingDeletedMessages; + BOOL _suppressWindowTitleUpdates; + BOOL _didSetupUI; + BOOL _shouldCascadeWhenShowing; + BOOL _atLeastOneSelectedMessageIsInOutbox; + BOOL _atLeastOneSelectedMessageIsInOutboxIsValid; + BOOL _atLeastOneSelectedMessageIsInDrafts; + BOOL _atLeastOneSelectedMessageIsInDraftsIsValid; + BOOL _changingSplitViewOrientation; + BOOL _timeMachineRestoreIsInProgress; + BOOL _performedEarlyDealloc; + int _searchTarget; + TableViewManager *_tableManager; + NSView *_viewingPaneContainerView; + ViewingPaneViewController *_viewingPaneViewController; + MailboxesOutlineViewController *_outlineViewController; + FullScreenModalCapableWindow *_window; + MailSplitView *_contentSplitView; + MessageListContainerView *_messageListContainerView; + MailSplitView *_mailboxesSplitView; + NSView *_viewerContainer; + NSView *_mailboxesView; + NSView *_mailboxesContainer; + NSLayoutConstraint *_mailboxesWidthConstraint; + ActivityViewController *_activityViewController; + MessageViewerSearchField *_searchField; + NSToolbarItem *_searchViewItem; + FlaggedStatusToolbarItem *_flaggedStatusToolbarItem; + NSToolbarItem *_fullScreenFlagMenuToolbarItem; + MailToolbar *_toolbar; + NSDictionary *_toolbarItems; + NSMenu *_tableHeaderMenu; + NSMenu *_sortByTableHeaderMenu; + MessageViewerLazyPopUpButton *_makeNewMailboxButton; + MessageViewerLazyPopUpButton *_actionButton; + NSDictionary *_savedAttributes; + NSWindow *_timeMachineRestoreMessagesWindow; + NSTextField *_timeMachineRestoreMessagesField; + NSWindow *_timeMachineRestoreMailboxWindow; + NSTextField *_timeMachineRestoreMailboxField; + FavoritesBarViewController *_favoritesBarViewController; + NSString *_searchQuery; + long long _currentSearchField; + long long _selectedTag; + NSMenu *_messageColumnsMenu; + NSMenu *_messageSortByMenu; + NSMenuItem *_columnsMenuItem; + NSMenuItem *_sortByMenuItem; + NSMenuItem *_dateReceivedMenuItem; + NSMenuItem *_dateSentMenuItem; + NSMenuItem *_dateReceivedTableHeaderMenuItem; + NSMenuItem *_dateSentTableHeaderMenuItem; + double _restoreMailboxPaneToWidthAfterDragOperation; + NSArray *_mailboxesToDisplayWhenVisible; + NSDictionary *_initialWindowState; + NSNumber *_uniqueID; + NSTimer *_timeMachineRestoreSheetTimer; + ContentSplitViewController *_contentSplitViewController; + MFBehaviorTracker *_behaviorTracker; +} + ++ (id)_messageViewersByUniqueID; ++ (void)restoreWindowWithIdentifier:(id)arg1 state:(id)arg2 completionHandler:(id)arg3; ++ (id)newDefaultMessageViewer; ++ (void)clearDelayedWindowRestorations; ++ (void)_mailApplicationDidFinishLaunching:(id)arg1; ++ (void)restoreAllViewersFromDefaults; ++ (BOOL)automaticallyNotifiesObserversOfSearchPhrase; ++ (unsigned long long)deleteOperationForEvent:(id)arg1 isKeyPressed:(BOOL)arg2; ++ (id)keyPathsForValuesAffectingFavoritesBarView; ++ (id)keyPathsForValuesAffectingMailBarContainerView; ++ (id)_mailboxesForPaths:(id)arg1; ++ (void)searchForString:(id)arg1; ++ (id)frontmostMessageViewerWithOptions:(unsigned long long)arg1; ++ (id)mailboxesBeingViewed; ++ (void)showAllViewers; ++ (void)deregisterViewer:(id)arg1; ++ (void)_registerNewViewer:(id)arg1; ++ (id)existingViewerShowingMessage:(id)arg1; ++ (id)viewerForMailboxWithTag:(long long)arg1; ++ (id)existingViewerForMailbox:(id)arg1; ++ (id)allSingleMessageViewers; ++ (id)allMessageViewers; ++ (void)initialize; ++ (id)messageViewerForUniqueID:(id)arg1; ++ (id)toolbarIdentifier; +@property(readonly, nonatomic) MFBehaviorTracker *behaviorTracker; // @synthesize behaviorTracker=_behaviorTracker; +@property(nonatomic) BOOL performedEarlyDealloc; // @synthesize performedEarlyDealloc=_performedEarlyDealloc; +@property(retain, nonatomic) ContentSplitViewController *contentSplitViewController; // @synthesize contentSplitViewController=_contentSplitViewController; +@property(nonatomic) BOOL timeMachineRestoreIsInProgress; // @synthesize timeMachineRestoreIsInProgress=_timeMachineRestoreIsInProgress; +@property(retain, nonatomic) NSTimer *timeMachineRestoreSheetTimer; // @synthesize timeMachineRestoreSheetTimer=_timeMachineRestoreSheetTimer; +@property(nonatomic) BOOL changingSplitViewOrientation; // @synthesize changingSplitViewOrientation=_changingSplitViewOrientation; +@property(retain, nonatomic) NSNumber *uniqueID; // @synthesize uniqueID=_uniqueID; +@property(nonatomic) BOOL atLeastOneSelectedMessageIsInDraftsIsValid; // @synthesize atLeastOneSelectedMessageIsInDraftsIsValid=_atLeastOneSelectedMessageIsInDraftsIsValid; +@property(nonatomic) BOOL atLeastOneSelectedMessageIsInDrafts; // @synthesize atLeastOneSelectedMessageIsInDrafts=_atLeastOneSelectedMessageIsInDrafts; +@property(nonatomic) BOOL atLeastOneSelectedMessageIsInOutboxIsValid; // @synthesize atLeastOneSelectedMessageIsInOutboxIsValid=_atLeastOneSelectedMessageIsInOutboxIsValid; +@property(nonatomic) BOOL atLeastOneSelectedMessageIsInOutbox; // @synthesize atLeastOneSelectedMessageIsInOutbox=_atLeastOneSelectedMessageIsInOutbox; +@property(copy, nonatomic) NSDictionary *initialWindowState; // @synthesize initialWindowState=_initialWindowState; +@property(nonatomic) BOOL shouldCascadeWhenShowing; // @synthesize shouldCascadeWhenShowing=_shouldCascadeWhenShowing; +@property(copy, nonatomic) NSArray *mailboxesToDisplayWhenVisible; // @synthesize mailboxesToDisplayWhenVisible=_mailboxesToDisplayWhenVisible; +@property(nonatomic) double restoreMailboxPaneToWidthAfterDragOperation; // @synthesize restoreMailboxPaneToWidthAfterDragOperation=_restoreMailboxPaneToWidthAfterDragOperation; +@property(nonatomic) BOOL didSetupUI; // @synthesize didSetupUI=_didSetupUI; +@property(nonatomic) BOOL suppressWindowTitleUpdates; // @synthesize suppressWindowTitleUpdates=_suppressWindowTitleUpdates; +@property(nonatomic) BOOL allowShowingDeletedMessages; // @synthesize allowShowingDeletedMessages=_allowShowingDeletedMessages; +@property(nonatomic) __weak NSMenuItem *dateSentTableHeaderMenuItem; // @synthesize dateSentTableHeaderMenuItem=_dateSentTableHeaderMenuItem; +@property(nonatomic) __weak NSMenuItem *dateReceivedTableHeaderMenuItem; // @synthesize dateReceivedTableHeaderMenuItem=_dateReceivedTableHeaderMenuItem; +@property(nonatomic) __weak NSMenuItem *dateSentMenuItem; // @synthesize dateSentMenuItem=_dateSentMenuItem; +@property(nonatomic) __weak NSMenuItem *dateReceivedMenuItem; // @synthesize dateReceivedMenuItem=_dateReceivedMenuItem; +@property(retain, nonatomic) NSMenuItem *sortByMenuItem; // @synthesize sortByMenuItem=_sortByMenuItem; +@property(retain, nonatomic) NSMenuItem *columnsMenuItem; // @synthesize columnsMenuItem=_columnsMenuItem; +@property(retain, nonatomic) NSMenu *messageSortByMenu; // @synthesize messageSortByMenu=_messageSortByMenu; +@property(retain, nonatomic) NSMenu *messageColumnsMenu; // @synthesize messageColumnsMenu=_messageColumnsMenu; +@property(nonatomic) long long selectedTag; // @synthesize selectedTag=_selectedTag; +@property(nonatomic) int searchTarget; // @synthesize searchTarget=_searchTarget; +@property(nonatomic) long long currentSearchField; // @synthesize currentSearchField=_currentSearchField; +@property(copy, nonatomic) NSString *searchQuery; // @synthesize searchQuery=_searchQuery; +@property(retain, nonatomic) FavoritesBarViewController *favoritesBarViewController; // @synthesize favoritesBarViewController=_favoritesBarViewController; +@property(nonatomic) BOOL previouslyHadSentScope; // @synthesize previouslyHadSentScope=_previouslyHadSentScope; +@property(nonatomic) BOOL ignoreSearchBarUpdates; // @synthesize ignoreSearchBarUpdates=_ignoreSearchBarUpdates; +@property(nonatomic) __weak NSTextField *timeMachineRestoreMailboxField; // @synthesize timeMachineRestoreMailboxField=_timeMachineRestoreMailboxField; +@property(retain, nonatomic) NSWindow *timeMachineRestoreMailboxWindow; // @synthesize timeMachineRestoreMailboxWindow=_timeMachineRestoreMailboxWindow; +@property(nonatomic) __weak NSTextField *timeMachineRestoreMessagesField; // @synthesize timeMachineRestoreMessagesField=_timeMachineRestoreMessagesField; +@property(retain, nonatomic) NSWindow *timeMachineRestoreMessagesWindow; // @synthesize timeMachineRestoreMessagesWindow=_timeMachineRestoreMessagesWindow; +@property(copy, nonatomic) NSDictionary *savedAttributes; // @synthesize savedAttributes=_savedAttributes; +@property(nonatomic) __weak MessageViewerLazyPopUpButton *actionButton; // @synthesize actionButton=_actionButton; +@property(nonatomic) __weak MessageViewerLazyPopUpButton *makeNewMailboxButton; // @synthesize makeNewMailboxButton=_makeNewMailboxButton; +@property(nonatomic) __weak NSMenu *sortByTableHeaderMenu; // @synthesize sortByTableHeaderMenu=_sortByTableHeaderMenu; +@property(retain, nonatomic) NSMenu *tableHeaderMenu; // @synthesize tableHeaderMenu=_tableHeaderMenu; +@property(copy, nonatomic) NSDictionary *toolbarItems; // @synthesize toolbarItems=_toolbarItems; +@property(retain, nonatomic) MailToolbar *toolbar; // @synthesize toolbar=_toolbar; +@property(retain, nonatomic) NSToolbarItem *fullScreenFlagMenuToolbarItem; // @synthesize fullScreenFlagMenuToolbarItem=_fullScreenFlagMenuToolbarItem; +@property(retain, nonatomic) FlaggedStatusToolbarItem *flaggedStatusToolbarItem; // @synthesize flaggedStatusToolbarItem=_flaggedStatusToolbarItem; +@property(retain, nonatomic) NSToolbarItem *searchViewItem; // @synthesize searchViewItem=_searchViewItem; +@property(retain, nonatomic) MessageViewerSearchField *searchField; // @synthesize searchField=_searchField; +@property(retain, nonatomic) ActivityViewController *activityViewController; // @synthesize activityViewController=_activityViewController; +@property(nonatomic) __weak NSLayoutConstraint *mailboxesWidthConstraint; // @synthesize mailboxesWidthConstraint=_mailboxesWidthConstraint; +@property(nonatomic) __weak NSView *mailboxesContainer; // @synthesize mailboxesContainer=_mailboxesContainer; +@property(retain, nonatomic) NSView *mailboxesView; // @synthesize mailboxesView=_mailboxesView; +@property(nonatomic) __weak NSView *viewerContainer; // @synthesize viewerContainer=_viewerContainer; +@property(nonatomic) __weak MailSplitView *mailboxesSplitView; // @synthesize mailboxesSplitView=_mailboxesSplitView; +@property(nonatomic) __weak MessageListContainerView *messageListContainerView; // @synthesize messageListContainerView=_messageListContainerView; +@property(retain, nonatomic) MailSplitView *contentSplitView; // @synthesize contentSplitView=_contentSplitView; +@property(retain, nonatomic) FullScreenModalCapableWindow *window; // @synthesize window=_window; +@property(retain, nonatomic) MailboxesOutlineViewController *outlineViewController; // @synthesize outlineViewController=_outlineViewController; +@property(retain, nonatomic) ViewingPaneViewController *viewingPaneViewController; // @synthesize viewingPaneViewController=_viewingPaneViewController; +@property(nonatomic) __weak NSView *viewingPaneContainerView; // @synthesize viewingPaneContainerView=_viewingPaneContainerView; +@property(retain, nonatomic) TableViewManager *tableManager; // @synthesize tableManager=_tableManager; +- (void).cxx_destruct; +- (void)window:(id)arg1 startCustomAnimationToExitFullScreenWithDuration:(double)arg2; +- (id)customWindowsToExitFullScreenForWindow:(id)arg1; +- (BOOL)usesCustomFullScreenAnimation; +- (BOOL)isModal; +- (BOOL)hasModalWindow; +- (void)_windowDidExitFullScreen:(id)arg1; +- (void)_windowWillExitFullScreen:(id)arg1; +- (void)windowDidFailToEnterFullScreen:(id)arg1; +- (void)_windowWillEnterFullScreen:(id)arg1; +- (void)initFullScreenController; +- (void)setFullScreenWindowController:(id)arg1; +@property(readonly, nonatomic) FullScreenWindowController *fullScreenWindowController; +- (void)attachModalWindowWithDelegate:(id)arg1; +- (void)willAttachModalWindowWithDelegate:(id)arg1; +- (void)closeModalWindowForcibly:(BOOL)arg1 animate:(BOOL)arg2 animationType:(long long)arg3; +- (void)closeModalWindowForcibly:(BOOL)arg1 animate:(BOOL)arg2; +- (void)presentModalWindowWithDelegate:(id)arg1; +- (BOOL)isFullScreen; +@property(readonly, nonatomic) struct CGRect nonToolbarWindowContentRect; +- (struct CGRect)window:(id)arg1 willPositionSheet:(id)arg2 usingRect:(struct CGRect)arg3; +- (void)toggleShowBarContainer:(id)arg1; +- (void)setWithoutAnimationBarContainerVisibility:(BOOL)arg1; +- (void)_createUniqueID; +- (void)_updateSearchItemLabel; +- (id)undoManagerForMessageTransfer:(id)arg1; +- (void)messageTransferDidUndoTransferOfMessages:(id)arg1; +- (void)messageTransferDidTransferMessages:(id)arg1; +- (void)unhideMessagesForMessageTransfer:(id)arg1; +- (void)hideMessagesForMessageTransfer:(id)arg1; +- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; +- (void)_reportError:(id)arg1; +- (id)_selectedLabels; +- (BOOL)transferMessages:(id)arg1 toMailbox:(id)arg2 deleteOriginals:(BOOL)arg3 allowUndo:(BOOL)arg4 isDeleteOperation:(BOOL)arg5 isArchiveOperation:(BOOL)arg6; +- (void)_synchronouslyMarkAsNotJunkMail:(id)arg1; +- (void)_markMessagesAsNotJunkMail:(id)arg1 stores:(id)arg2; +- (void)markAsNotJunkMail:(id)arg1; +- (void)_undoMarkMessagesAsJunkMail:(id)arg1 stores:(id)arg2; +- (void)_synchronouslyMarkAsJunkMail:(id)arg1 inStores:(id)arg2 delete:(BOOL)arg3; +- (void)_deleteJunkedMessages:(id)arg1 inStores:(id)arg2 moveToTrash:(BOOL)arg3; +- (void)_markMessagesAsJunkMail:(id)arg1 stores:(id)arg2; +- (void)markAsJunkMail:(id)arg1; +- (id)searchFieldWidenScopeMenuSpinnerTitleString:(id)arg1; +- (id)searchFieldWidenScopeMenuItemTitleString:(id)arg1; +- (id)searchFieldWidenScopeMenuTitleString:(id)arg1; +- (void)searchFieldWidenQueryScope:(id)arg1; +- (BOOL)searchField:(id)arg1 hasResultsForQuery:(id)arg2; +- (BOOL)searchFieldUsesRestrictedQueryScope:(id)arg1; +- (void)addSenderToContacts:(id)arg1; +- (void)_routeMessages:(id)arg1 fromStores:(id)arg2 fetchingBodies:(id)arg3 messagesNeedingBodies:(id)arg4; +- (void)_routeMessages:(id)arg1 fromMailboxes:(id)arg2; +- (void)reapplySortingRules:(id)arg1; +- (void)saveSearch:(id)arg1; +- (void)searchScopeChanged:(id)arg1; +- (void)searchScopeWillChange; +- (BOOL)_hasSentScope; +- (void)performSearch:(id)arg1; +- (void)_updateSearchUIForSender:(id)arg1; +- (void)searchDidUpdate; +- (void)searchDidFinish; +- (void)searchWillStart; +- (void)clearUndoRedoStacksUnconditionally:(BOOL)arg1; +- (void)_updateSearchStatusWithDelay; +@property(copy, nonatomic) NSSet *initiallySelectedMessages; +- (void)filterMessagesToMoveOrDelete:(id)arg1; +- (BOOL)archiveMessages:(id)arg1 allowUndo:(BOOL)arg2; +- (BOOL)deleteMessages:(id)arg1 allowMoveToTrash:(BOOL)arg2 allowUndo:(BOOL)arg3; +- (BOOL)transferSelectedMessagesToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (void)messageDragDidEnd; +- (void)ensureMailboxesPaneIsVisible:(id)arg1; +- (void)messageDragMovedTo:(struct CGPoint)arg1; +- (void)messageDragWillStartWithEvent:(id)arg1; +- (void)messageWasDoubleClicked:(id)arg1; +- (void)selectedMessagesDidChangeInMessageList; +- (void)refreshViewingPaneSelection; +- (void)messagesWereSelected:(id)arg1 fromTableViewManager:(id)arg2; +- (void)_updateMailboxNameVisibility; +- (void)_updateMallboxes:(id)arg1; +- (id)_columnOrDetailMenuItemTitle; +- (void)_reallyUpdateWindowTitle:(id)arg1; +- (void)updateWindowTitle:(id)arg1; +- (void)_mailboxDisplayCountChanged:(id)arg1; +- (id)_countStringForType:(BOOL)arg1 isDrafts:(BOOL)arg2 omitUnread:(BOOL)arg3 totalCount:(unsigned long long *)arg4; +- (void)saveDefaultWindowState; +- (void)saveDefaultViewerState; +- (void)window:(id)arg1 willEncodeRestorableState:(id)arg2; +- (void)_restoreFromDefaultWindowStateDictionary:(id)arg1; +- (id)_defaultWindowStateDictionary; +- (void)_setupFromAttributes; +- (void)_findSomeDefaultsIfNecessary; +- (id)dictionaryRepresentation; +- (void)toggleSizeColumn:(id)arg1; +- (void)toggleAuthorColumn:(id)arg1; +- (void)toggleLocationColumn:(id)arg1; +- (void)toggleDateReceivedColumn:(id)arg1; +- (void)toggleDateSentColumn:(id)arg1; +- (void)toggleToColumn:(id)arg1; +- (void)toggleFromColumn:(id)arg1; +- (void)toggleMessageFlagsColumn:(id)arg1; +- (void)toggleContentsColumn:(id)arg1; +- (void)hideDeletions:(id)arg1; +- (void)showDeletions:(id)arg1; +- (void)selectNextInThread:(id)arg1; +- (void)selectPreviousInThread:(id)arg1; +- (void)selectThread:(id)arg1; +- (void)toggleViewRelatedMessages:(id)arg1; +- (void)toggleThreadedMode:(id)arg1; +- (void)closeAllThreads:(id)arg1; +- (void)openAllThreads:(id)arg1; +- (void)toggleInboxOnly:(id)arg1; +- (void)toggleAscendingSort:(id)arg1; +- (void)sortByTagOfSender:(id)arg1; +- (void)removeAttachments:(id)arg1; +- (void)_removeAttachmentsFromMessages:(id)arg1 fromStores:(id)arg2; +- (void)_handleAttachmentsRemovedFromMessages:(id)arg1 newMessages:(id)arg2; +- (void)_setupSearchParametersForTag:(long long)arg1; +- (void)clearSearch:(id)arg1; +- (void)_clearSearchByAnimating:(BOOL)arg1; +- (void)_updateSearchStatus; +@property(copy, nonatomic) NSString *searchPhrase; +- (void)startSearchForSuggestions:(id)arg1; +- (id)suggestionsGenius; +- (void)_searchForSuggestions:(id)arg1; +- (void)_searchForString:(id)arg1; +- (void)_hideSearchResultsInSearchView; +- (void)_showSearchResultsInSearchView; +- (BOOL)_canSearchSelectedMailboxes; +- (BOOL)_canSaveSearchWithTarget:(int)arg1; +- (unsigned long long)_searchResultCount; +@property(readonly, nonatomic) BOOL isShowingSearchResults; +- (void)searchIndex:(id)arg1; +- (id)mailboxSearchCriterionForScope:(int)arg1 containsSentMailbox:(char *)arg2 containsTrashMailbox:(char *)arg3 shouldExcludeJunk:(char *)arg4; +- (id)_criterionForMailbox:(id)arg1; +- (void)endPreviewPanelControl:(id)arg1; +- (void)beginPreviewPanelControl:(id)arg1; +- (BOOL)acceptsPreviewPanelControl:(id)arg1; +- (void)jumpToSelection:(id)arg1; +- (void)quickLookSelectedAttachments:(id)arg1; +- (void)saveAllAttachments:(id)arg1; +- (void)saveAs:(id)arg1; +- (BOOL)send:(id)arg1; +- (BOOL)_sendMessages:(id)arg1 forDraft:(BOOL)arg2; +- (BOOL)send:(id)arg1 forDraft:(BOOL)arg2 actualMessage:(id)arg3; +- (void)exportAsPDF:(id)arg1; +- (void)showPrintPanel:(id)arg1; +- (void)performTextFinderAction:(id)arg1; +- (void)speechSynthesizer:(id)arg1 didFinishSpeaking:(BOOL)arg2; +- (void)stopSpeaking:(id)arg1; +- (void)startSpeaking:(id)arg1; +- (void)rebuildTableOfContents:(id)arg1; +- (void)changeColor:(id)arg1; +- (void)clearFlaggedStatus:(id)arg1; +- (void)toggleFlag:(id)arg1; +- (void)markAsUnreadFromToolbar:(id)arg1; +- (void)markAsReadFromToolbar:(id)arg1; +- (void)markAsUnread:(id)arg1; +- (void)markAsRead:(id)arg1; +- (void)markMessagesAsUnread:(id)arg1; +- (void)markMessagesAsRead:(id)arg1; +- (void)markMessagesAsViewed:(id)arg1; +- (void)markMessageAsViewed:(id)arg1; +- (void)modifyFlaggedStatus:(id)arg1; +- (void)clearFlaggedStatusForMessageListSelection:(BOOL)arg1; +- (void)clearFlaggedStatus; +- (id)_flaggedStatusForMessages:(id)arg1; +- (void)_setFlaggedStatus:(id)arg1 withUndoActionName:(id)arg2; +- (id)_messagesWithoutFlagColor:(BOOL)arg1 fromMessages:(id)arg2; +- (void)toggleFlaggedStatus:(BOOL)arg1 forMessageListSelection:(BOOL)arg2; +- (void)toggleFlaggedStatus:(BOOL)arg1; +- (void)toggleFlaggedStatusInFullScreen:(id)arg1; +- (id)appliedFlagColorsForSelectedMessages; +- (void)_changeFlag:(id)arg1 state:(BOOL)arg2 forMessages:(id)arg3 undoActionName:(id)arg4; +- (id)_selectedMessagesWhoseFlag:(unsigned int)arg1 isEqualToState:(BOOL)arg2 action:(SEL)arg3; +- (void)copyMessagesToMailbox:(id)arg1; +- (void)moveMessagesToMailbox:(id)arg1; +- (void)_moveOrCopyMessagesToMailbox:(id)arg1 deleteOriginals:(BOOL)arg2; +- (void)renameMailbox:(id)arg1; +- (id)_displaySelectedMessageInSeparateWindow:(id)arg1 withModifiers:(unsigned long long)arg2; +- (id)_documentsToDisplaySelectedMessagesInSeperateWindowWithModifiers:(unsigned long long)arg1; +- (id)displaySelectedMessageInSeparateWindow:(id)arg1; +- (void)forwardWithParentAsAttachment:(id)arg1; +- (void)forwardAsAttachment:(id)arg1; +- (void)forwardMessage:(id)arg1; +- (void)redirectMessage:(id)arg1; +- (BOOL)showEditorWithType:(unsigned long long)arg1 forSelectedMessages:(id)arg2 settings:(id)arg3 completionHandler:(id)arg4; +- (void)showAccountInfo:(id)arg1; +- (void)focusMessage; +- (void)focusMailboxes; +- (void)focusMessages; +- (void)selectAllMessages; +- (void)_openMessages:(id)arg1 withModifiers:(unsigned long long)arg2; +- (void)openMessages:(id)arg1; +- (void)archiveMessages:(id)arg1; +- (void)deleteMessages:(id)arg1 allowingMoveToTrash:(BOOL)arg2; +- (void)deleteMessages:(id)arg1; +- (void)undeleteMessages:(id)arg1; +- (void)showComposeWindow:(id)arg1; +- (void)replyToOriginalSender:(id)arg1; +- (void)replyAllMessage:(id)arg1; +- (void)replyMessage:(id)arg1; +- (void)checkNewMail:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (BOOL)shouldDeleteMessagesGivenCurrentState; +- (BOOL)_atLeastOneSelectedMessageIsInDrafts; +- (BOOL)_atLeastOneSelectedMessageIsInOutbox; +- (BOOL)_messagesContainMessagesWithAttachments:(id)arg1; +- (BOOL)_messages:(id)arg1 containMessagesWithJunkMailLevelEqualTo:(long long)arg2; +- (BOOL)_messages:(id)arg1 containMessagesWithFlaggedStatusEqualTo:(BOOL)arg2; +- (long long)_messages:(id)arg1 stateForFlagColor:(BOOL)arg2; +- (BOOL)_messages:(id)arg1 containMessagesWithReadStatusEqualTo:(BOOL)arg2; +- (void)_setMailboxes:(id)arg1; +- (void)smartMailboxCriteriaChanged:(id)arg1; +- (void)_selectNextMessage:(id)arg1; +- (void)_mailboxesDidChange:(id)arg1; +- (void)_mallStructureDidChange:(id)arg1; +- (void)_mallDidOpen:(id)arg1; +- (BOOL)messageViewerIsFinishedLoadingMessages; +- (void)_updateUnreadCountQueries:(id)arg1; +- (void)mailboxSelectionChanged:(id)arg1; +- (void)_mailboxWasRenamed:(id)arg1; +- (void)swipeWithEvent:(id)arg1; +- (void)keyUp:(id)arg1; +- (void)keyDown:(id)arg1; +- (double)previewSplitPercentage; +- (void)selectMailbox:(id)arg1; +- (void)_moveMessagesToFavoriteWithMailbox:(id)arg1 andPosition:(unsigned long long)arg2; +- (void)_animateMessageSelectionToFavoriteButtonAtPosition:(unsigned long long)arg1 withCount:(unsigned long long)arg2 image:(id)arg3 fromPosition:(struct CGPoint)arg4; +- (void)outlineViewDoubleClick:(id)arg1; +- (id)messageThatUserIsProbablyReading; +- (id)currentDisplayedMessage; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (id)messageSelectionForPrinting; +- (id)messageSelection; +- (id)messagesTargetedByAction:(SEL)arg1; +- (void)_firstResponderIsViewingPane:(char *)arg1 isMessageList:(char *)arg2; +- (BOOL)outgoingMailboxSelected; +- (void)setSelectedMessages:(id)arg1; +- (id)selectedMessages; +- (void)setSelectedMailboxes:(id)arg1 scrollToVisible:(BOOL)arg2; +- (void)setSelectedMailboxes:(id)arg1; +- (void)didCloseContextMenu:(id)arg1; +- (void)willShowContextMenu:(id)arg1; +- (id)mailboxSelectionWindow; +- (void)revealMailbox:(id)arg1; +- (id)sortedSectionItemsForTimeMachine; +- (id)expandedItems; +- (BOOL)sectionIsExpanded:(id)arg1; +- (BOOL)mailboxIsExpanded:(id)arg1; +- (void)selectPathsToMailboxes:(id)arg1; +- (BOOL)isSelectedMailboxSpecial; +- (id)selectedMailbox; +- (id)selectedMailbox:(BOOL)arg1; +- (id)expandedSelectedMailboxesAllowingSearch; +- (id)expandedSelectedMailboxes; +- (id)selectedMailboxes; +- (void)_timeMachineRestoreFinished:(id)arg1; +- (void)_beginTimeMachineRestoreSheetIsForMailbox:(id)arg1; +- (void)_displayTimeMachineRestoreSheet:(id)arg1; +- (void)prepareForTimeMachineRestore; +@property(readonly, nonatomic) FavoritesBarView *favoritesBarView; +@property(readonly, nonatomic) MailBarContainerView *mailBarContainerView; +@property(retain, nonatomic) MailboxesSplitViewController *mailboxesSplitViewController; +- (BOOL)_shouldUseLayoutContraintsForWindow:(id)arg1; +- (struct CGSize)_minimumPreviewPaneSize; +- (struct CGSize)_minimumMessageListSize; +- (struct CGSize)minimumContentSize; +- (double)_sidebarAnimationDuration; +- (void)toggleMailboxesPane:(id)arg1; +- (void)_disableSplitViewAutosaving; +- (void)_enableSplitViewAutosaving; +- (void)_viewerLayoutPreferenceChanged:(id)arg1; +- (BOOL)_mailboxesPaneIsOpenWideEnoughToUse; +- (void)setMailboxesPaneIsOpen:(BOOL)arg1; +- (BOOL)mailboxesPaneIsOpen; +- (double)mailboxesPaneWidth; +- (struct CGSize)windowWillResize:(id)arg1 toSize:(struct CGSize)arg2; +- (void)windowWillMiniaturize:(id)arg1; +- (BOOL)windowShouldClose:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)windowDidBecomeMain:(id)arg1; +- (void)resignAsSelectionOwner; +- (void)takeOverAsSelectionOwner; +- (void)_setUpMenus; +- (void)_setupMailboxOutlineView; +- (void)_setUpWindowContents; +- (id)tableHeaderViewGetDefaultMenu:(id)arg1; +- (void)_setupUIAndOrderFront:(BOOL)arg1 andMakeKey:(BOOL)arg2; +- (void)_updateWindowMinimumSize; +- (struct CGImage *)newMessageViewerSnapshotForceNonFullScreen:(BOOL)arg1; +- (void)showAndMakeKey:(BOOL)arg1; +- (void)show; +- (BOOL)_isShowingMessage:(id)arg1; +- (BOOL)_isViewingMailbox:(id)arg1; +- (BOOL)_selectedMailboxesAreOutgoing:(char *)arg1; +- (void)setHighPriorityQuery:(struct __MDQuery *)arg1; +- (struct __MDQuery *)copyHighPriorityQuery; +- (void)setLowPriorityQuery:(struct __MDQuery *)arg1; +- (struct __MDQuery *)copyLowPriorityQuery; +- (void)_setMessageMall:(id)arg1; +@property(readonly, nonatomic) MessageMall *messageMall; +- (void)storeBeingInvalidated:(id)arg1; +- (void)_unregisterForStoreNotifications; +- (void)_registerForStoreNotifications; +- (void)_unregisterForApplicationNotifications; +- (void)_registerForApplicationNotifications; +- (void)_earlyDealloc; +- (void)dealloc; +- (void)_messageViewerCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithMailboxes:(id)arg1; +- (id)initPlainWithAttributes:(id)arg1; +- (id)init; +- (void)intializeLazyPopUpButtons; +- (id)initWithAttributes:(id)arg1; +- (void)awakeFromNib; +- (id)_mailboxesFromAttributes:(id)arg1; +- (void)showFollowupsToMessage:(id)arg1; +- (void)_cantFindFollowupToMessage:(id)arg1; +- (void)_displayFollowup:(id)arg1; +- (void)showCurrentMessageInMailbox; +- (void)revealMessage:(id)arg1 inMailbox:(id)arg2 forceMailboxSelection:(BOOL)arg3; +- (long long)viewerNumber; +- (void)setScriptingProperties:(id)arg1; +- (id)junkMailbox; +- (id)trashMailbox; +- (id)sentMailbox; +- (id)draftsMailbox; +- (id)outbox; +- (id)inbox; +- (void)setVisibleColumns:(id)arg1; +- (id)visibleColumns; +- (BOOL)previewPaneVisible; +- (void)setIsSortedAscending:(BOOL)arg1; +- (BOOL)isSortedAscending; +- (void)setAppleScriptSortColumn:(unsigned int)arg1; +- (unsigned int)appleScriptSortColumn; +- (id)allMessages; +- (id)objectSpecifier; +- (void)submenuAction:(id)arg1; +- (void)_synchronizeFullScreenFlagToolbarItem:(id)arg1; +- (void)finishedSettingFlaggedStatus; +- (void)searchFieldDidEndSearching:(id)arg1; +- (void)ensureSearchFieldVisibilityInToolbar; +- (void)_ensureItemVisibilityInToolbar:(long long)arg1 identifier:(id)arg2; +- (void)toolbarDidReorderItem:(id)arg1; +- (void)toolbarDidRemoveItem:(id)arg1; +- (void)toolbarWillAddItem:(id)arg1; +- (void)updateToolbar; +- (id)toolbarAllowedItemIdentifiers:(id)arg1; +- (id)toolbarDefaultItemIdentifiers:(id)arg1; +- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; +- (void)setupSuggestionsSearchFieldForSentMailboxIfNecessary; +- (void)setupSuggestionsSearchField; +- (void)_setPrioritySuggestionsWithHighPriority:(BOOL)arg1 withLowPriority:(BOOL)arg2; +- (void)_updateSuggestionsMailboxesListAndFlagNames; +- (void)_asyncUpdateSuggestionsMailboxesListAndFlagNames:(id)arg1; +- (void)_setupPrioritySuggestions:(id)arg1; +- (void)_updateSuggestionsFlagNames; +- (void)_asyncUpdateSuggestionsFlagNames:(id)arg1; +- (void)configureSegmentedItem:(id)arg1 withDictionary:(id)arg2 forSegment:(long long)arg3; +- (BOOL)validateFlaggedStatusToolbarItem:(id)arg1; +- (BOOL)validateToolbarItem:(id)arg1; +- (id)toolbarConfigurationDict; +- (void)clearToolbarItemsTarget; +- (void)setupToolbar; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewerLazyPopUpButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewerLazyPopUpButton.h new file mode 100644 index 00000000..061cce0f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewerLazyPopUpButton.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@interface MessageViewerLazyPopUpButton : NSPopUpButton +{ + BOOL _didLazyLoadMenu; + long long _menuToUse; +} + +@property(nonatomic) BOOL didLazyLoadMenu; // @synthesize didLazyLoadMenu=_didLazyLoadMenu; +@property(nonatomic) long long menuToUse; // @synthesize menuToUse=_menuToUse; +- (void)initializeMenu; +- (void)setMenu:(id)arg1; +- (void)dealloc; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewerSearchField.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewerSearchField.h new file mode 100644 index 00000000..39ab0261 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewerSearchField.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "SGTSearchField.h" + +@interface MessageViewerSearchField : SGTSearchField +{ + BOOL _focused; + id _focusDelegate; +} + +@property(nonatomic) __weak id focusDelegate; // @synthesize focusDelegate=_focusDelegate; +- (void).cxx_destruct; +@property(nonatomic) BOOL focused; +- (void)windowDidResignKey:(id)arg1; +- (void)_firstResponderDidChange:(id)arg1; +- (void)dealloc; +- (void)_messageViewerSearchFieldCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewerSearchFieldFocusDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewerSearchFieldFocusDelegate-Protocol.h new file mode 100644 index 00000000..71a3307b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageViewerSearchFieldFocusDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol MessageViewerSearchFieldFocusDelegate +- (void)searchFieldDidEndSearching:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageWebDocumentView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageWebDocumentView.h new file mode 100644 index 00000000..2a89af5a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageWebDocumentView.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MUIWebDocumentView.h" + +@interface MessageWebDocumentView : MUIWebDocumentView +{ + struct CGRect _exclusionRect; + BOOL _showRedundantContent; + BOOL _showRedundantContentLinks; + BOOL _hasBackground; + long long _currentClusterIndex; +} + +@property(nonatomic) BOOL hasBackground; // @synthesize hasBackground=_hasBackground; +@property(nonatomic) long long currentClusterIndex; // @synthesize currentClusterIndex=_currentClusterIndex; +- (void)linkAccessibilityView:(id)arg1; +- (void)_hasBackgroundChanged:(id)arg1; +- (void)toggleHighlightRedundantContent:(id)arg1; +- (void)generateSelectionParsedMessage:(id)arg1; +- (void)generateStyleInlinedParsedMessage:(id)arg1; +- (BOOL)shouldHandleClickForURL:(id)arg1; +- (id)view:(id)arg1 stringForToolTip:(long long)arg2 point:(struct CGPoint)arg3 userData:(void *)arg4; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (void)setWebDocument:(id)arg1; +@property(nonatomic) BOOL showRedundantContentLinks; +@property(nonatomic) BOOL showRedundantContent; +@property(nonatomic) struct CGRect exclusionRect; +- (void)dealloc; +- (id)initWithFrame:(struct CGRect)arg1 viewGroup:(id)arg2; +- (id)initWithCoder:(id)arg1 viewGroup:(id)arg2; +- (BOOL)_debugBundleLoaded; +- (void)_messageWebDocumentViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageWebDocumentViewGroupManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageWebDocumentViewGroupManager.h new file mode 100644 index 00000000..a95c4cdb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageWebDocumentViewGroupManager.h @@ -0,0 +1,25 @@ +/* + * 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" + +@class MUIWebDocumentViewGroup; + +@interface MessageWebDocumentViewGroupManager : NSObject +{ + MUIWebDocumentViewGroup *_viewGroup; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain, nonatomic) MUIWebDocumentViewGroup *viewGroup; // @synthesize viewGroup=_viewGroup; +- (void).cxx_destruct; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageWebHTMLView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageWebHTMLView.h new file mode 100644 index 00000000..9132faca --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageWebHTMLView.h @@ -0,0 +1,67 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebHTMLView.h" + +@class NSArray; + +@interface MessageWebHTMLView : WebHTMLView +{ + NSArray *_attachmentsForContextualMenu; +} + +- (void).cxx_destruct; +- (void)endPreviewPanelControl:(id)arg1; +- (void)beginPreviewPanelControl:(id)arg1; +- (BOOL)acceptsPreviewPanelControl:(id)arg1; +- (void)setSelectionFloat:(id)arg1 undoTitle:(id)arg2; +- (BOOL)canFloatSelectedElement; +- (void)floatNone:(id)arg1; +- (void)floatRight:(id)arg1; +- (void)floatLeft:(id)arg1; +- (BOOL)shouldDelayWindowOrderingForEvent:(id)arg1; +- (BOOL)acceptsFirstMouse:(id)arg1; +- (void)mouseDragged:(id)arg1; +- (void)mouseUp:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)quickLookWithEvent:(id)arg1; +- (void)keyDown:(id)arg1; +- (id)messageViewer; +- (void)fixWebArchiveAndRTFDDataOnPasteboard:(id)arg1; +- (void)writeSelectionWithPasteboardTypes:(id)arg1 toPasteboard:(id)arg2; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)insertList:(id)arg1; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (void)insertNumberedList:(id)arg1; +- (void)insertBulletedList:(id)arg1; +- (void)exportAttachmentsToIPhoto:(id)arg1; +- (void)importInvitations:(id)arg1; +- (void)chooseApplicationToOpenAttachment:(id)arg1; +- (void)openAttachmentWithApplication:(id)arg1; +- (void)viewAttachmentInline:(id)arg1; +- (id)editingDelegate; +- (void)saveAttachmentToDownloadsDirectory:(id)arg1; +- (void)saveAttachment:(id)arg1; +- (void)quickLookAttachment:(id)arg1; +- (void)quickLookSelectedAttachments:(id)arg1; +- (void)openAttachment:(id)arg1; +- (id)attachmentForEvent:(id)arg1; +- (BOOL)moreThanOneAttachmentSelected; +- (BOOL)allSelectedAttachmentsArePhotos; +- (BOOL)selectionIsOneAttachment; +- (id)selectedAttachments; +- (void)willShowContextualMenuForAttachment:(id)arg1; +- (void)_setAttachmentsForContextualMenu:(id)arg1; +- (id)_attachmentsForContextualMenu; +- (id)selectedAttributedString; +- (void)_updateFontPanel; +- (void)paste:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageWebView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageWebView.h new file mode 100644 index 00000000..584b0df3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MessageWebView.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "TilingWebView.h" + +@interface MessageWebView : TilingWebView +{ +} + +- (void)resizeWithOldSuperviewSize:(struct CGSize)arg1; +- (void)layoutResizingAttachmentViews; +- (void)keyDown:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ModalDimmingWindow.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ModalDimmingWindow.h new file mode 100644 index 00000000..bf7aecdc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ModalDimmingWindow.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface ModalDimmingWindow : NSWindow +{ +} + +- (void)dim; +- (id)initWithContentRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MouseTrackingWindow.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MouseTrackingWindow.h new file mode 100644 index 00000000..8cfbfeda --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MouseTrackingWindow.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface MouseTrackingWindow : NSWindow +{ + BOOL _forceDrawAsMain; + BOOL _preventBecomingKey; + BOOL _customFullScreenAnimation; + unsigned long long _fullScreenState; +} + +@property(nonatomic) BOOL customFullScreenAnimation; // @synthesize customFullScreenAnimation=_customFullScreenAnimation; +@property(readonly, nonatomic) unsigned long long fullScreenState; // @synthesize fullScreenState=_fullScreenState; +@property(nonatomic) BOOL preventBecomingKey; // @synthesize preventBecomingKey=_preventBecomingKey; +@property(nonatomic) BOOL forceDrawAsMain; // @synthesize forceDrawAsMain=_forceDrawAsMain; +- (void)_windowDidResize:(id)arg1; +- (void)_windowDidExitFullScreen:(id)arg1; +- (void)_windowWillExitFullScreen:(id)arg1; +- (void)_windowDidEnterFullScreen:(id)arg1; +- (void)_windowWillEnterFullScreen:(id)arg1; +- (BOOL)_isModalWindowPresent; +@property(readonly, nonatomic) BOOL isFullScreen; +- (BOOL)canBecomeKeyWindow; +- (BOOL)isMainWindow; +- (BOOL)validateMenuItem:(id)arg1; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (void)displayIfNeeded; +- (void)toggleToolbarShown:(id)arg1; +- (BOOL)makeFirstResponder:(id)arg1; +- (void)dealloc; +- (void)_mouseTrackingWindowCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithContentRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MultiImageCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MultiImageCell.h new file mode 100644 index 00000000..13b3bbaf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/MultiImageCell.h @@ -0,0 +1,55 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageCell.h" + +@class NSMutableArray; + +@interface MultiImageCell : NSImageCell +{ + NSMutableArray *_images; + NSMutableArray *_subcells; +} + +- (void).cxx_destruct; +- (void)setImageScaling:(unsigned long long)arg1; +- (void)setImageAlignment:(unsigned long long)arg1; +- (unsigned long long)hitTestForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3; +- (void)highlight:(BOOL)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)calcDrawInfo:(struct CGRect)arg1; +- (id)_firstImageName; +- (long long)compare:(id)arg1; +- (id)stringValue; +- (void)_addSubcellsWithImages:(id)arg1; +- (void)setObjectValue:(id)arg1; +- (void)setEditable:(BOOL)arg1; +- (BOOL)isEditable; +- (void)setTitle:(id)arg1; +- (void)setUserInterfaceLayoutDirection:(long long)arg1; +- (void)setCellAttribute:(unsigned long long)arg1 to:(long long)arg2; +- (void)setBackgroundStyle:(long long)arg1; +- (void)setUsesSingleLineMode:(BOOL)arg1; +- (void)setTruncatesLastVisibleLine:(BOOL)arg1; +- (void)setLineBreakMode:(unsigned long long)arg1; +- (void)setBaseWritingDirection:(long long)arg1; +- (void)setControlSize:(unsigned long long)arg1; +- (void)setControlTint:(unsigned long long)arg1; +- (void)setFont:(id)arg1; +- (void)setAlignment:(unsigned long long)arg1; +- (void)setHighlighted:(BOOL)arg1; +- (void)setSelectable:(BOOL)arg1; +- (void)setEnabled:(BOOL)arg1; +- (void)setControlView:(id)arg1; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)_multiImageCellCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initTextCell:(id)arg1; +- (id)initImageCell:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAccessibilityElement-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAccessibilityElement-Protocol.h new file mode 100644 index 00000000..b5207744 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAccessibilityElement-Protocol.h @@ -0,0 +1,17 @@ +/* + * 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" + +@protocol NSAccessibilityElement +- (id)accessibilityParent; +- (struct CGRect)accessibilityFrame; + +@optional +- (id)accessibilityIdentifier; +- (BOOL)isAccessibilityFocused; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAccessibilityGroup-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAccessibilityGroup-Protocol.h new file mode 100644 index 00000000..7117d4ce --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAccessibilityGroup-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAccessibilityElement.h" + +@protocol NSAccessibilityGroup +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAlert-MFErrorSupport.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAlert-MFErrorSupport.h new file mode 100644 index 00000000..e640b9bc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAlert-MFErrorSupport.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@interface NSAlert (MFErrorSupport) ++ (id)alertForError:(id)arg1 firstButton:(id)arg2 secondButton:(id)arg3 thirdButton:(id)arg4; +- (void)setKeyEquivalent:(id)arg1 onButtonWithTitle:(id)arg2; +- (void)setEscapeKeyEquivalentOnButtonWithTitle:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAnimationDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAnimationDelegate-Protocol.h new file mode 100644 index 00000000..31d9a069 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAnimationDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol NSAnimationDelegate + +@optional +- (void)animation:(id)arg1 didReachProgressMark:(float)arg2; +- (float)animation:(id)arg1 valueForProgress:(float)arg2; +- (void)animationDidEnd:(id)arg1; +- (void)animationDidStop:(id)arg1; +- (BOOL)animationShouldStart:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSApplicationDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSApplicationDelegate-Protocol.h new file mode 100644 index 00000000..8da120dd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSApplicationDelegate-Protocol.h @@ -0,0 +1,50 @@ +/* + * 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" + +@protocol NSApplicationDelegate + +@optional +- (void)applicationDidChangeOcclusionState:(id)arg1; +- (void)applicationDidChangeScreenParameters:(id)arg1; +- (void)applicationWillTerminate:(id)arg1; +- (void)applicationDidUpdate:(id)arg1; +- (void)applicationWillUpdate:(id)arg1; +- (void)applicationDidResignActive:(id)arg1; +- (void)applicationWillResignActive:(id)arg1; +- (void)applicationDidBecomeActive:(id)arg1; +- (void)applicationWillBecomeActive:(id)arg1; +- (void)applicationDidUnhide:(id)arg1; +- (void)applicationWillUnhide:(id)arg1; +- (void)applicationDidHide:(id)arg1; +- (void)applicationWillHide:(id)arg1; +- (void)applicationDidFinishLaunching:(id)arg1; +- (void)applicationWillFinishLaunching:(id)arg1; +- (void)application:(id)arg1 didUpdateUserActivity:(id)arg2; +- (void)application:(id)arg1 didFailToContinueUserActivityWithType:(id)arg2 error:(id)arg3; +- (BOOL)application:(id)arg1 continueUserActivity:(id)arg2 restorationHandler:(id)arg3; +- (BOOL)application:(id)arg1 willContinueUserActivityWithType:(id)arg2; +- (void)application:(id)arg1 didDecodeRestorableState:(id)arg2; +- (void)application:(id)arg1 willEncodeRestorableState:(id)arg2; +- (void)application:(id)arg1 didReceiveRemoteNotification:(id)arg2; +- (void)application:(id)arg1 didFailToRegisterForRemoteNotificationsWithError:(id)arg2; +- (void)application:(id)arg1 didRegisterForRemoteNotificationsWithDeviceToken:(id)arg2; +- (id)application:(id)arg1 willPresentError:(id)arg2; +- (id)applicationDockMenu:(id)arg1; +- (BOOL)applicationShouldHandleReopen:(id)arg1 hasVisibleWindows:(BOOL)arg2; +- (BOOL)applicationShouldTerminateAfterLastWindowClosed:(id)arg1; +- (unsigned long long)application:(id)arg1 printFiles:(id)arg2 withSettings:(id)arg3 showPrintPanels:(BOOL)arg4; +- (BOOL)application:(id)arg1 printFile:(id)arg2; +- (BOOL)application:(id)arg1 openFileWithoutUI:(id)arg2; +- (BOOL)applicationOpenUntitledFile:(id)arg1; +- (BOOL)applicationShouldOpenUntitledFile:(id)arg1; +- (BOOL)application:(id)arg1 openTempFile:(id)arg2; +- (void)application:(id)arg1 openFiles:(id)arg2; +- (BOOL)application:(id)arg1 openFile:(id)arg2; +- (unsigned long long)applicationShouldTerminate:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAttributedString-MailAttributedStringToHTML.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAttributedString-MailAttributedStringToHTML.h new file mode 100644 index 00000000..864d2601 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSAttributedString-MailAttributedStringToHTML.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAttributedString.h" + +@interface NSAttributedString (MailAttributedStringToHTML) +- (id)webArchiveForRange:(struct _NSRange)arg1; +- (id)webArchiveForRange:(struct _NSRange)arg1 fixUpNewlines:(BOOL)arg2; +- (id)webArchiveForRange:(struct _NSRange)arg1 signatureID:(id *)arg2; +- (id)webArchiveForRange:(struct _NSRange)arg1 signatureID:(id *)arg2 fixUpNewlines:(BOOL)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSCacheDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSCacheDelegate-Protocol.h new file mode 100644 index 00000000..fd487731 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSCacheDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSCacheDelegate + +@optional +- (void)cache:(id)arg1 willEvictObject:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSCoding-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSCoding-Protocol.h new file mode 100644 index 00000000..7bda0254 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSCoding-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCoding +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSControl-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSControl-MailAdditions.h new file mode 100644 index 00000000..89cf0719 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSControl-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControl.h" + +@interface NSControl (MailAdditions) +- (void)sizeToFitAndAdjustWindowHeight; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSControlTextEditingDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSControlTextEditingDelegate-Protocol.h new file mode 100644 index 00000000..41d1e729 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSControlTextEditingDelegate-Protocol.h @@ -0,0 +1,20 @@ +/* + * 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" + +@protocol NSControlTextEditingDelegate + +@optional +- (id)control:(id)arg1 textView:(id)arg2 completions:(id)arg3 forPartialWordRange:(struct _NSRange)arg4 indexOfSelectedItem:(long long *)arg5; +- (BOOL)control:(id)arg1 textView:(id)arg2 doCommandBySelector:(SEL)arg3; +- (BOOL)control:(id)arg1 isValidObject:(id)arg2; +- (void)control:(id)arg1 didFailToValidatePartialString:(id)arg2 errorDescription:(id)arg3; +- (BOOL)control:(id)arg1 didFailToFormatString:(id)arg2 errorDescription:(id)arg3; +- (BOOL)control:(id)arg1 textShouldEndEditing:(id)arg2; +- (BOOL)control:(id)arg1 textShouldBeginEditing:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSCopying-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSCopying-Protocol.h new file mode 100644 index 00000000..3275f717 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCopying +- (id)copyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSDatePickerCellDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSDatePickerCellDelegate-Protocol.h new file mode 100644 index 00000000..b41a16f0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSDatePickerCellDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSDatePickerCellDelegate + +@optional +- (void)datePickerCell:(id)arg1 validateProposedDateValue:(id *)arg2 timeInterval:(double *)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSDraggingSource-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSDraggingSource-Protocol.h new file mode 100644 index 00000000..9629eefd --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSDraggingSource-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSDraggingSource +- (unsigned long long)draggingSession:(id)arg1 sourceOperationMaskForDraggingContext:(long long)arg2; + +@optional +- (BOOL)ignoreModifierKeysForDraggingSession:(id)arg1; +- (void)draggingSession:(id)arg1 endedAtPoint:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (void)draggingSession:(id)arg1 movedToPoint:(struct CGPoint)arg2; +- (void)draggingSession:(id)arg1 willBeginAtPoint:(struct CGPoint)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSEvent-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSEvent-MailAdditions.h new file mode 100644 index 00000000..5cbc685e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSEvent-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEvent.h" + +@interface NSEvent (MailAdditions) +- (BOOL)_mv_isMouseEvent; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSEvent-MailViewerEvent.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSEvent-MailViewerEvent.h new file mode 100644 index 00000000..a7cef230 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSEvent-MailViewerEvent.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEvent.h" + +@interface NSEvent (MailViewerEvent) +- (void)_setModifierFlags:(unsigned long long)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSFileManagerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSFileManagerDelegate-Protocol.h new file mode 100644 index 00000000..b1fc717f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSFileManagerDelegate-Protocol.h @@ -0,0 +1,29 @@ +/* + * 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" + +@protocol NSFileManagerDelegate + +@optional +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtURL:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldRemoveItemAtPath:(id)arg2; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 linkingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 linkingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldLinkItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldLinkItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 movingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 movingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldMoveItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldMoveItemAtPath:(id)arg2 toPath:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 copyingItemAtURL:(id)arg3 toURL:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 copyingItemAtPath:(id)arg3 toPath:(id)arg4; +- (BOOL)fileManager:(id)arg1 shouldCopyItemAtURL:(id)arg2 toURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldCopyItemAtPath:(id)arg2 toPath:(id)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSFont-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSFont-MailAdditions.h new file mode 100644 index 00000000..bdab82ea --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSFont-MailAdditions.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFont.h" + +@interface NSFont (MailAdditions) ++ (id)validFontFamilyName:(id)arg1 fixedPitchOnly:(BOOL)arg2; ++ (id)fontWithBaseFont:(id)arg1 overlayFont:(id)arg2; ++ (void)setMessageListFont:(id)arg1; ++ (id)messageListFont; ++ (void)setFixedWidthFont:(id)arg1; ++ (id)fixedWidthFont; ++ (void)setMessageFont:(id)arg1; ++ (id)messageFont; ++ (id)prefsAddressFieldFont; ++ (id)addressFieldFont; +- (BOOL)isEqualNameAndSize:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSFontManager-ToReplaceWithOurOwn.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSFontManager-ToReplaceWithOurOwn.h new file mode 100644 index 00000000..375cee8d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSFontManager-ToReplaceWithOurOwn.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFontManager.h" + +@interface NSFontManager (ToReplaceWithOurOwn) ++ (id)allocWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSInspectorBarClient-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSInspectorBarClient-Protocol.h new file mode 100644 index 00000000..35747105 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSInspectorBarClient-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol NSInspectorBarClient +- (id)inspectorBarItemIdentifiers; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSInspectorBarDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSInspectorBarDelegate-Protocol.h new file mode 100644 index 00000000..6c82e82b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSInspectorBarDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol NSInspectorBarDelegate + +@optional +- (id)inspectorBar:(id)arg1 shouldLayoutItem:(id)arg2; +- (id)inspectorBar:(id)arg1 itemForIdentifier:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSInspectorBarItemController-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSInspectorBarItemController-Protocol.h new file mode 100644 index 00000000..2d8d9618 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSInspectorBarItemController-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol NSInspectorBarItemController +- (id)viewForInspectorBarItem:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSLayoutManagerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSLayoutManagerDelegate-Protocol.h new file mode 100644 index 00000000..0374eeed --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSLayoutManagerDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSLayoutManagerDelegate + +@optional +- (id)layoutManager:(id)arg1 shouldUseTemporaryAttributes:(id)arg2 forDrawingToScreen:(BOOL)arg3 atCharacterIndex:(unsigned long long)arg4 effectiveRange:(struct _NSRange *)arg5; +- (void)layoutManager:(id)arg1 didCompleteLayoutForTextContainer:(id)arg2 atEnd:(BOOL)arg3; +- (void)layoutManagerDidInvalidateLayout:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSMediaLibraryBrowserController-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSMediaLibraryBrowserController-MailAdditions.h new file mode 100644 index 00000000..f46a9ae7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSMediaLibraryBrowserController-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMediaLibraryBrowserController.h" + +@interface NSMediaLibraryBrowserController (MailAdditions) ++ (id)mv_sharedMailPhotoBrowser; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSMenuDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSMenuDelegate-Protocol.h new file mode 100644 index 00000000..41334b13 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSMenuDelegate-Protocol.h @@ -0,0 +1,21 @@ +/* + * 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" + +@protocol NSMenuDelegate + +@optional +- (struct CGRect)confinementRectForMenu:(id)arg1 onScreen:(id)arg2; +- (void)menu:(id)arg1 willHighlightItem:(id)arg2; +- (void)menuDidClose:(id)arg1; +- (void)menuWillOpen:(id)arg1; +- (BOOL)menuHasKeyEquivalent:(id)arg1 forEvent:(id)arg2 target:(id *)arg3 action:(SEL *)arg4; +- (BOOL)menu:(id)arg1 updateItem:(id)arg2 atIndex:(long long)arg3 shouldCancel:(BOOL)arg4; +- (long long)numberOfItemsInMenu:(id)arg1; +- (void)menuNeedsUpdate:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSObject-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSObject-Protocol.h new file mode 100644 index 00000000..ebf9f6c2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSObject-Protocol.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class NSString; + +@protocol NSObject +@property(readonly, copy) NSString *description; +@property(readonly) Class superclass; +@property(readonly) unsigned long long hash; +- (struct _NSZone *)zone; +- (unsigned long long)retainCount; +- (id)autorelease; +- (oneway void)release; +- (id)retain; +- (BOOL)respondsToSelector:(SEL)arg1; +- (BOOL)conformsToProtocol:(id)arg1; +- (BOOL)isMemberOfClass:(Class)arg1; +- (BOOL)isKindOfClass:(Class)arg1; +- (BOOL)isProxy; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2 withObject:(id)arg3; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2; +- (id)performSelector:(SEL)arg1; +- (id)self; +- (Class)class; +- (BOOL)isEqual:(id)arg1; + +@optional +@property(readonly, copy) NSString *debugDescription; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSOpenSavePanelDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSOpenSavePanelDelegate-Protocol.h new file mode 100644 index 00000000..eda955c7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSOpenSavePanelDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol NSOpenSavePanelDelegate + +@optional +- (void)panelSelectionDidChange:(id)arg1; +- (void)panel:(id)arg1 willExpand:(BOOL)arg2; +- (id)panel:(id)arg1 userEnteredFilename:(id)arg2 confirmed:(BOOL)arg3; +- (void)panel:(id)arg1 didChangeToDirectoryURL:(id)arg2; +- (BOOL)panel:(id)arg1 validateURL:(id)arg2 error:(id *)arg3; +- (BOOL)panel:(id)arg1 shouldEnableURL:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSOutlineView-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSOutlineView-MailAdditions.h new file mode 100644 index 00000000..92a83369 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSOutlineView-MailAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOutlineView.h" + +@interface NSOutlineView (MailAdditions) +- (id)editedItem; +- (id)copyOfItemAndDescendance:(id)arg1; +- (void)_collectDescendants:(id *)arg1 ofItem:(id)arg2; +- (BOOL)item:(id)arg1 isDescendantOf:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSOutlineViewDataSource-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSOutlineViewDataSource-Protocol.h new file mode 100644 index 00000000..2ea4628f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSOutlineViewDataSource-Protocol.h @@ -0,0 +1,29 @@ +/* + * 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" + +@protocol NSOutlineViewDataSource + +@optional +- (id)outlineView:(id)arg1 namesOfPromisedFilesDroppedAtDestination:(id)arg2 forDraggedItems:(id)arg3; +- (BOOL)outlineView:(id)arg1 acceptDrop:(id)arg2 item:(id)arg3 childIndex:(long long)arg4; +- (unsigned long long)outlineView:(id)arg1 validateDrop:(id)arg2 proposedItem:(id)arg3 proposedChildIndex:(long long)arg4; +- (void)outlineView:(id)arg1 updateDraggingItemsForDrag:(id)arg2; +- (BOOL)outlineView:(id)arg1 writeItems:(id)arg2 toPasteboard:(id)arg3; +- (void)outlineView:(id)arg1 draggingSession:(id)arg2 endedAtPoint:(struct CGPoint)arg3 operation:(unsigned long long)arg4; +- (void)outlineView:(id)arg1 draggingSession:(id)arg2 willBeginAtPoint:(struct CGPoint)arg3 forItems:(id)arg4; +- (id)outlineView:(id)arg1 pasteboardWriterForItem:(id)arg2; +- (void)outlineView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (id)outlineView:(id)arg1 persistentObjectForItem:(id)arg2; +- (id)outlineView:(id)arg1 itemForPersistentObject:(id)arg2; +- (void)outlineView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 byItem:(id)arg4; +- (id)outlineView:(id)arg1 objectValueForTableColumn:(id)arg2 byItem:(id)arg3; +- (BOOL)outlineView:(id)arg1 isItemExpandable:(id)arg2; +- (id)outlineView:(id)arg1 child:(long long)arg2 ofItem:(id)arg3; +- (long long)outlineView:(id)arg1 numberOfChildrenOfItem:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSOutlineViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSOutlineViewDelegate-Protocol.h new file mode 100644 index 00000000..7bd8626d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSOutlineViewDelegate-Protocol.h @@ -0,0 +1,49 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate.h" + +@protocol NSOutlineViewDelegate + +@optional +- (void)outlineViewItemDidCollapse:(id)arg1; +- (void)outlineViewItemWillCollapse:(id)arg1; +- (void)outlineViewItemDidExpand:(id)arg1; +- (void)outlineViewItemWillExpand:(id)arg1; +- (void)outlineViewSelectionIsChanging:(id)arg1; +- (void)outlineViewColumnDidResize:(id)arg1; +- (void)outlineViewColumnDidMove:(id)arg1; +- (void)outlineViewSelectionDidChange:(id)arg1; +- (BOOL)outlineView:(id)arg1 shouldShowOutlineCellForItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldReorderColumn:(long long)arg2 toColumn:(long long)arg3; +- (double)outlineView:(id)arg1 sizeToFitWidthOfColumn:(long long)arg2; +- (void)outlineView:(id)arg1 willDisplayOutlineCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (BOOL)outlineView:(id)arg1 shouldCollapseItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldExpandItem:(id)arg2; +- (BOOL)outlineView:(id)arg1 isGroupItem:(id)arg2; +- (id)outlineView:(id)arg1 dataCellForTableColumn:(id)arg2 item:(id)arg3; +- (BOOL)outlineView:(id)arg1 shouldTrackCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (BOOL)outlineView:(id)arg1 shouldShowCellExpansionForTableColumn:(id)arg2 item:(id)arg3; +- (BOOL)outlineView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; +- (id)outlineView:(id)arg1 nextTypeSelectMatchFromItem:(id)arg2 toItem:(id)arg3 forString:(id)arg4; +- (id)outlineView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 item:(id)arg3; +- (double)outlineView:(id)arg1 heightOfRowByItem:(id)arg2; +- (id)outlineView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 item:(id)arg5 mouseLocation:(struct CGPoint)arg6; +- (void)outlineView:(id)arg1 didDragTableColumn:(id)arg2; +- (void)outlineView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)outlineView:(id)arg1 mouseDownInHeaderOfTableColumn:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldSelectTableColumn:(id)arg2; +- (id)outlineView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (BOOL)outlineView:(id)arg1 shouldSelectItem:(id)arg2; +- (BOOL)selectionShouldChangeInOutlineView:(id)arg1; +- (BOOL)outlineView:(id)arg1 shouldEditTableColumn:(id)arg2 item:(id)arg3; +- (void)outlineView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 item:(id)arg4; +- (void)outlineView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (void)outlineView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (id)outlineView:(id)arg1 rowViewForItem:(id)arg2; +- (id)outlineView:(id)arg1 viewForTableColumn:(id)arg2 item:(id)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSPasteboardItemDataProvider-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSPasteboardItemDataProvider-Protocol.h new file mode 100644 index 00000000..5025525a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSPasteboardItemDataProvider-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol NSPasteboardItemDataProvider +- (void)pasteboard:(id)arg1 item:(id)arg2 provideDataForType:(id)arg3; + +@optional +- (void)pasteboardFinishedWithDataProvider:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSPopUpButton-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSPopUpButton-MailAdditions.h new file mode 100644 index 00000000..efadb434 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSPopUpButton-MailAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@interface NSPopUpButton (MailAdditions) +- (void)reloadData; +- (double)sizeToFitWidth; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSPreferences-ActiveModule.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSPreferences-ActiveModule.h new file mode 100644 index 00000000..9ccb17a2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSPreferences-ActiveModule.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferences.h" + +@interface NSPreferences (ActiveModule) +- (id)currentModule; +- (id)activeModule; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSPreferencesModule-ActiveModule.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSPreferencesModule-ActiveModule.h new file mode 100644 index 00000000..bd469d67 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSPreferencesModule-ActiveModule.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +@interface NSPreferencesModule (ActiveModule) ++ (id)activeInstance; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSScrollViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSScrollViewDelegate-Protocol.h new file mode 100644 index 00000000..ab2dfcba --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSScrollViewDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol NSScrollViewDelegate + +@optional +- (id)magnificationInflectionPointsForScrollView:(id)arg1; +- (void)scrollView:(id)arg1 didChangePresentationOrigin:(struct CGPoint)arg2 active:(BOOL)arg3; +- (double)scrollView:(id)arg1 pageAlignedOriginOnAxis:(long long)arg2 forProposedDestination:(double)arg3 currentOrigin:(double)arg4 initialOrigin:(double)arg5 velocity:(double)arg6; +- (void)didEndScrollInScrollView:(id)arg1; +- (void)didScrollInScrollView:(id)arg1; +- (void)didBeginScrollInScrollView:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSharingServiceDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSharingServiceDelegate-Protocol.h new file mode 100644 index 00000000..587baede --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSharingServiceDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol NSSharingServiceDelegate + +@optional +- (id)sharingService:(id)arg1 sourceWindowForShareItems:(id)arg2 sharingContentScope:(long long *)arg3; +- (id)sharingService:(id)arg1 transitionImageForShareItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)sharingService:(id)arg1 sourceFrameOnScreenForShareItem:(id)arg2; +- (void)sharingService:(id)arg1 didShareItems:(id)arg2; +- (void)sharingService:(id)arg1 didFailToShareItems:(id)arg2 error:(id)arg3; +- (void)sharingService:(id)arg1 willShareItems:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSharingServicePickerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSharingServicePickerDelegate-Protocol.h new file mode 100644 index 00000000..d025542c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSharingServicePickerDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol NSSharingServicePickerDelegate + +@optional +- (void)sharingServicePicker:(id)arg1 didChooseSharingService:(id)arg2; +- (id)sharingServicePicker:(id)arg1 delegateForSharingService:(id)arg2; +- (id)sharingServicePicker:(id)arg1 sharingServicesForItems:(id)arg2 proposedSharingServices:(id)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSpeechSynthesizerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSpeechSynthesizerDelegate-Protocol.h new file mode 100644 index 00000000..956747c7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSpeechSynthesizerDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol NSSpeechSynthesizerDelegate + +@optional +- (void)speechSynthesizer:(id)arg1 didEncounterSyncMessage:(id)arg2; +- (void)speechSynthesizer:(id)arg1 didEncounterErrorAtIndex:(unsigned long long)arg2 ofString:(id)arg3 message:(id)arg4; +- (void)speechSynthesizer:(id)arg1 willSpeakPhoneme:(short)arg2; +- (void)speechSynthesizer:(id)arg1 willSpeakWord:(struct _NSRange)arg2 ofString:(id)arg3; +- (void)speechSynthesizer:(id)arg1 didFinishSpeaking:(BOOL)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSpellChecker-AllocationOverride.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSpellChecker-AllocationOverride.h new file mode 100644 index 00000000..40065581 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSpellChecker-AllocationOverride.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSSpellChecker.h" + +@interface NSSpellChecker (AllocationOverride) ++ (id)allocWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSplitViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSplitViewDelegate-Protocol.h new file mode 100644 index 00000000..09b7bc4f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSSplitViewDelegate-Protocol.h @@ -0,0 +1,25 @@ +/* + * 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" + +@protocol NSSplitViewDelegate + +@optional +- (void)splitViewDidResizeSubviews:(id)arg1; +- (void)splitViewWillResizeSubviews:(id)arg1; +- (struct CGRect)splitView:(id)arg1 additionalEffectiveRectOfDividerAtIndex:(long long)arg2; +- (struct CGRect)splitView:(id)arg1 effectiveRect:(struct CGRect)arg2 forDrawnRect:(struct CGRect)arg3 ofDividerAtIndex:(long long)arg4; +- (BOOL)splitView:(id)arg1 shouldHideDividerAtIndex:(long long)arg2; +- (BOOL)splitView:(id)arg1 shouldAdjustSizeOfSubview:(id)arg2; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (double)splitView:(id)arg1 constrainSplitPosition:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMaxCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (BOOL)splitView:(id)arg1 shouldCollapseSubview:(id)arg2 forDoubleClickOnDividerAtIndex:(long long)arg3; +- (BOOL)splitView:(id)arg1 canCollapseSubview:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSStackViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSStackViewDelegate-Protocol.h new file mode 100644 index 00000000..b0d59b3d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSStackViewDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol NSStackViewDelegate + +@optional +- (void)stackView:(id)arg1 didReattachViews:(id)arg2; +- (void)stackView:(id)arg1 willDetachViews:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSStreamDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSStreamDelegate-Protocol.h new file mode 100644 index 00000000..9cc647a0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSStreamDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol NSStreamDelegate + +@optional +- (void)stream:(id)arg1 handleEvent:(unsigned long long)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSString-HTMLConversion.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSString-HTMLConversion.h new file mode 100644 index 00000000..f4d79a01 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSString-HTMLConversion.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@interface NSString (HTMLConversion) +- (id)webArchiveForRange:(struct _NSRange)arg1 signatureID:(id *)arg2; +- (id)webArchiveForRange:(struct _NSRange)arg1; +- (id)markupString; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSString-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSString-MailAdditions.h new file mode 100644 index 00000000..3e236e2e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSString-MailAdditions.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSString.h" + +@interface NSString (MailAdditions) +- (BOOL)matchesLocalizedDateIntervalFrom:(id *)arg1 to:(id *)arg2; +- (BOOL)doesMatchLocalizedDateName:(id)arg1; +- (void)drawEtchedInRect:(struct CGRect)arg1 withTopColor:(id)arg2 bottomColor:(id)arg3 shadowBelow:(BOOL)arg4 font:(id)arg5 centered:(BOOL)arg6 flipped:(BOOL)arg7 truncate:(BOOL)arg8; +- (void)_drawInRect:(struct CGRect)arg1 font:(id)arg2 color:(id)arg3 truncate:(BOOL)arg4; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTabViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTabViewDelegate-Protocol.h new file mode 100644 index 00000000..bfe33ce9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTabViewDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * 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" + +@protocol NSTabViewDelegate + +@optional +- (void)tabViewDidChangeNumberOfTabViewItems:(id)arg1; +- (void)tabView:(id)arg1 didSelectTabViewItem:(id)arg2; +- (void)tabView:(id)arg1 willSelectTabViewItem:(id)arg2; +- (BOOL)tabView:(id)arg1 shouldSelectTabViewItem:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTableViewDataSource-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTableViewDataSource-Protocol.h new file mode 100644 index 00000000..84b533d4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTableViewDataSource-Protocol.h @@ -0,0 +1,25 @@ +/* + * 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" + +@protocol NSTableViewDataSource + +@optional +- (id)tableView:(id)arg1 namesOfPromisedFilesDroppedAtDestination:(id)arg2 forDraggedRowsWithIndexes:(id)arg3; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (void)tableView:(id)arg1 updateDraggingItemsForDrag:(id)arg2; +- (void)tableView:(id)arg1 draggingSession:(id)arg2 endedAtPoint:(struct CGPoint)arg3 operation:(unsigned long long)arg4; +- (void)tableView:(id)arg1 draggingSession:(id)arg2 willBeginAtPoint:(struct CGPoint)arg3 forRowIndexes:(id)arg4; +- (id)tableView:(id)arg1 pasteboardWriterForRow:(long long)arg2; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTableViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTableViewDelegate-Protocol.h new file mode 100644 index 00000000..f2f1581f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTableViewDelegate-Protocol.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate.h" + +@protocol NSTableViewDelegate + +@optional +- (void)tableViewSelectionIsChanging:(id)arg1; +- (void)tableViewColumnDidResize:(id)arg1; +- (void)tableViewColumnDidMove:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)tableView:(id)arg1 shouldReorderColumn:(long long)arg2 toColumn:(long long)arg3; +- (double)tableView:(id)arg1 sizeToFitWidthOfColumn:(long long)arg2; +- (BOOL)tableView:(id)arg1 isGroupRow:(long long)arg2; +- (BOOL)tableView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; +- (long long)tableView:(id)arg1 nextTypeSelectMatchFromRow:(long long)arg2 toRow:(long long)arg3 forString:(id)arg4; +- (id)tableView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 row:(long long)arg3; +- (double)tableView:(id)arg1 heightOfRow:(long long)arg2; +- (void)tableView:(id)arg1 didDragTableColumn:(id)arg2; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)tableView:(id)arg1 mouseDownInHeaderOfTableColumn:(id)arg2; +- (BOOL)tableView:(id)arg1 shouldSelectTableColumn:(id)arg2; +- (id)tableView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (BOOL)tableView:(id)arg1 shouldSelectRow:(long long)arg2; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (id)tableView:(id)arg1 dataCellForTableColumn:(id)arg2 row:(long long)arg3; +- (BOOL)tableView:(id)arg1 shouldTrackCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (BOOL)tableView:(id)arg1 shouldShowCellExpansionForTableColumn:(id)arg2 row:(long long)arg3; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (BOOL)tableView:(id)arg1 shouldEditTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tableView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (void)tableView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (id)tableView:(id)arg1 rowViewForRow:(long long)arg2; +- (id)tableView:(id)arg1 viewForTableColumn:(id)arg2 row:(long long)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextDelegate-Protocol.h new file mode 100644 index 00000000..92a85312 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol NSTextDelegate + +@optional +- (void)textDidChange:(id)arg1; +- (void)textDidEndEditing:(id)arg1; +- (void)textDidBeginEditing:(id)arg1; +- (BOOL)textShouldEndEditing:(id)arg1; +- (BOOL)textShouldBeginEditing:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextFieldDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextFieldDelegate-Protocol.h new file mode 100644 index 00000000..20d66c6c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextFieldDelegate-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate.h" + +@protocol NSTextFieldDelegate +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextFinderAsynchronousDocumentFindMatch-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextFinderAsynchronousDocumentFindMatch-Protocol.h new file mode 100644 index 00000000..4d0acd63 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextFinderAsynchronousDocumentFindMatch-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@class NSArray, NSView; + +@protocol NSTextFinderAsynchronousDocumentFindMatch +@property(readonly, retain, nonatomic) NSArray *textRects; +@property(readonly, retain, nonatomic) NSView *containingView; +- (void)generateTextImage:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextFinderBarContainer-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextFinderBarContainer-Protocol.h new file mode 100644 index 00000000..b9a1ba9e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextFinderBarContainer-Protocol.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class NSView; + +@protocol NSTextFinderBarContainer +@property(getter=isFindBarVisible) BOOL findBarVisible; +@property(retain) NSView *findBarView; +- (void)findBarViewDidChangeHeight; + +@optional +- (id)contentView; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextFinderClient-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextFinderClient-Protocol.h new file mode 100644 index 00000000..03f1d867 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextFinderClient-Protocol.h @@ -0,0 +1,31 @@ +/* + * 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" + +@class NSArray, NSString; + +@protocol NSTextFinderClient + +@optional +@property(readonly, copy) NSArray *visibleCharacterRanges; +@property(copy) NSArray *selectedRanges; +@property(readonly) struct _NSRange firstSelectedRange; +@property(readonly) NSString *string; +@property(readonly, getter=isEditable) BOOL editable; +@property(readonly) BOOL allowsMultipleSelection; +@property(readonly, getter=isSelectable) BOOL selectable; +- (void)drawCharactersInRange:(struct _NSRange)arg1 forContentView:(id)arg2; +- (id)rectsForCharacterRange:(struct _NSRange)arg1; +- (id)contentViewAtIndex:(unsigned long long)arg1 effectiveCharacterRange:(struct _NSRange *)arg2; +- (void)didReplaceCharacters; +- (void)replaceCharactersInRange:(struct _NSRange)arg1 withString:(id)arg2; +- (BOOL)shouldReplaceCharactersInRanges:(id)arg1 withStrings:(id)arg2; +- (void)scrollRangeToVisible:(struct _NSRange)arg1; +- (unsigned long long)stringLength; +- (id)stringAtIndex:(unsigned long long)arg1 effectiveRange:(struct _NSRange *)arg2 endsWithSearchBoundary:(char *)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextInput-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextInput-Protocol.h new file mode 100644 index 00000000..64325b02 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextInput-Protocol.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSTextInput +- (id)validAttributesForMarkedText; +- (unsigned long long)characterIndexForPoint:(struct CGPoint)arg1; +- (struct CGRect)firstRectForCharacterRange:(struct _NSRange)arg1; +- (struct _NSRange)selectedRange; +- (struct _NSRange)markedRange; +- (id)attributedSubstringFromRange:(struct _NSRange)arg1; +- (long long)conversationIdentifier; +- (BOOL)hasMarkedText; +- (void)unmarkText; +- (void)setMarkedText:(id)arg1 selectedRange:(struct _NSRange)arg2; +- (void)doCommandBySelector:(SEL)arg1; +- (void)insertText:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextInputClient-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextInputClient-Protocol.h new file mode 100644 index 00000000..c9dc200c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextInputClient-Protocol.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSTextInputClient +- (unsigned long long)characterIndexForPoint:(struct CGPoint)arg1; +- (struct CGRect)firstRectForCharacterRange:(struct _NSRange)arg1 actualRange:(struct _NSRange *)arg2; +- (id)validAttributesForMarkedText; +- (id)attributedSubstringForProposedRange:(struct _NSRange)arg1 actualRange:(struct _NSRange *)arg2; +- (BOOL)hasMarkedText; +- (struct _NSRange)markedRange; +- (struct _NSRange)selectedRange; +- (void)unmarkText; +- (void)setMarkedText:(id)arg1 selectedRange:(struct _NSRange)arg2 replacementRange:(struct _NSRange)arg3; +- (void)doCommandBySelector:(SEL)arg1; +- (void)insertText:(id)arg1 replacementRange:(struct _NSRange)arg2; + +@optional +- (BOOL)drawsVerticallyForCharacterAtIndex:(unsigned long long)arg1; +- (long long)windowLevel; +- (double)baselineDeltaForCharacterAtIndex:(unsigned long long)arg1; +- (double)fractionOfDistanceThroughGlyphForPoint:(struct CGPoint)arg1; +- (id)attributedString; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextViewDelegate-Protocol.h new file mode 100644 index 00000000..8aaf3dfc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTextViewDelegate-Protocol.h @@ -0,0 +1,40 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextDelegate.h" + +@protocol NSTextViewDelegate + +@optional +- (void)textView:(id)arg1 draggedCell:(id)arg2 inRect:(struct CGRect)arg3 event:(id)arg4; +- (void)textView:(id)arg1 doubleClickedOnCell:(id)arg2 inRect:(struct CGRect)arg3; +- (void)textView:(id)arg1 clickedOnCell:(id)arg2 inRect:(struct CGRect)arg3; +- (BOOL)textView:(id)arg1 clickedOnLink:(id)arg2; +- (id)undoManagerForTextView:(id)arg1; +- (id)textView:(id)arg1 willShowSharingServicePicker:(id)arg2 forItems:(id)arg3; +- (id)textView:(id)arg1 URLForContentsOfTextAttachment:(id)arg2 atIndex:(unsigned long long)arg3; +- (id)textView:(id)arg1 didCheckTextInRange:(struct _NSRange)arg2 types:(unsigned long long)arg3 options:(id)arg4 results:(id)arg5 orthography:(id)arg6 wordCount:(long long)arg7; +- (id)textView:(id)arg1 willCheckTextInRange:(struct _NSRange)arg2 options:(id)arg3 types:(unsigned long long *)arg4; +- (id)textView:(id)arg1 menu:(id)arg2 forEvent:(id)arg3 atIndex:(unsigned long long)arg4; +- (long long)textView:(id)arg1 shouldSetSpellingState:(long long)arg2 range:(struct _NSRange)arg3; +- (BOOL)textView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (BOOL)textView:(id)arg1 shouldChangeTextInRange:(struct _NSRange)arg2 replacementString:(id)arg3; +- (id)textView:(id)arg1 completions:(id)arg2 forPartialWordRange:(struct _NSRange)arg3 indexOfSelectedItem:(long long *)arg4; +- (id)textView:(id)arg1 willDisplayToolTip:(id)arg2 forCharacterAtIndex:(unsigned long long)arg3; +- (void)textViewDidChangeTypingAttributes:(id)arg1; +- (void)textViewDidChangeSelection:(id)arg1; +- (id)textView:(id)arg1 shouldChangeTypingAttributes:(id)arg2 toAttributes:(id)arg3; +- (BOOL)textView:(id)arg1 shouldChangeTextInRanges:(id)arg2 replacementStrings:(id)arg3; +- (id)textView:(id)arg1 willChangeSelectionFromCharacterRanges:(id)arg2 toCharacterRanges:(id)arg3; +- (struct _NSRange)textView:(id)arg1 willChangeSelectionFromCharacterRange:(struct _NSRange)arg2 toCharacterRange:(struct _NSRange)arg3; +- (BOOL)textView:(id)arg1 writeCell:(id)arg2 atIndex:(unsigned long long)arg3 toPasteboard:(id)arg4 type:(id)arg5; +- (id)textView:(id)arg1 writablePasteboardTypesForCell:(id)arg2 atIndex:(unsigned long long)arg3; +- (void)textView:(id)arg1 draggedCell:(id)arg2 inRect:(struct CGRect)arg3 event:(id)arg4 atIndex:(unsigned long long)arg5; +- (void)textView:(id)arg1 doubleClickedOnCell:(id)arg2 inRect:(struct CGRect)arg3 atIndex:(unsigned long long)arg4; +- (void)textView:(id)arg1 clickedOnCell:(id)arg2 inRect:(struct CGRect)arg3 atIndex:(unsigned long long)arg4; +- (BOOL)textView:(id)arg1 clickedOnLink:(id)arg2 atIndex:(unsigned long long)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTokenAttachmentDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTokenAttachmentDelegate-Protocol.h new file mode 100644 index 00000000..26bce107 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSTokenAttachmentDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSTokenAttachmentDelegate + +@optional +- (id)menuForTokenAttachment:(id)arg1; +- (BOOL)hasMenuForTokenAttachment:(id)arg1; +- (BOOL)tokenAttachment:(id)arg1 doubleClickedInRect:(struct CGRect)arg2 ofView:(id)arg3 atCharacterIndex:(unsigned long long)arg4; +- (id)tokenAttachment:(id)arg1 shouldUseTokenAttachmentCell:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSToolbar-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSToolbar-MailAdditions.h new file mode 100644 index 00000000..5f878b39 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSToolbar-MailAdditions.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbar.h" + +@interface NSToolbar (MailAdditions) ++ (id)segmentedOrBorderlessItemForItemIdentifier:(id)arg1 withDictionary:(id)arg2; ++ (id)darkGrayItemForItemIdentifier:(id)arg1 withDictionary:(id)arg2; ++ (id)borderlessItemForItemIdentifier:(id)arg1 withDictionary:(id)arg2; ++ (id)segmentedItemForItemIdentifier:(id)arg1 withDictionary:(id)arg2; ++ (void)configureSegmentedItem:(id)arg1 withDictionary:(id)arg2 forSegment:(long long)arg3; +- (id)configureToolbarItems; +- (id)itemWithTag:(long long)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSToolbarDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSToolbarDelegate-Protocol.h new file mode 100644 index 00000000..edc8aa4f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSToolbarDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol NSToolbarDelegate + +@optional +- (void)toolbarDidRemoveItem:(id)arg1; +- (void)toolbarWillAddItem:(id)arg1; +- (id)toolbarSelectableItemIdentifiers:(id)arg1; +- (id)toolbarAllowedItemIdentifiers:(id)arg1; +- (id)toolbarDefaultItemIdentifiers:(id)arg1; +- (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSUserActivityDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSUserActivityDelegate-Protocol.h new file mode 100644 index 00000000..179efce4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSUserActivityDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol NSUserActivityDelegate + +@optional +- (void)userActivity:(id)arg1 didReceiveInputStream:(id)arg2 outputStream:(id)arg3; +- (void)userActivityWasContinued:(id)arg1; +- (void)userActivityWillSave:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSUserDefaults-FontAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSUserDefaults-FontAdditions.h new file mode 100644 index 00000000..47e2122b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSUserDefaults-FontAdditions.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSUserDefaults.h" + +@class NSString; + +@interface NSUserDefaults (FontAdditions) +@property double messageListFontSize; +@property(retain) NSString *messageListFontName; +- (void)setMessageListFont:(id)arg1; +- (id)messageListFont; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSUserInterfaceValidations-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSUserInterfaceValidations-Protocol.h new file mode 100644 index 00000000..31d81e4b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSUserInterfaceValidations-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSUserInterfaceValidations +- (BOOL)validateUserInterfaceItem:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSUserNotificationCenterDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSUserNotificationCenterDelegate-Protocol.h new file mode 100644 index 00000000..10ce7901 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSUserNotificationCenterDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol NSUserNotificationCenterDelegate + +@optional +- (BOOL)userNotificationCenter:(id)arg1 shouldPresentNotification:(id)arg2; +- (void)userNotificationCenter:(id)arg1 didActivateNotification:(id)arg2; +- (void)userNotificationCenter:(id)arg1 didDeliverNotification:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-AttachmentDragSession.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-AttachmentDragSession.h new file mode 100644 index 00000000..d7de6a59 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-AttachmentDragSession.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (AttachmentDragSession) +- (BOOL)isCurrentAttachmentDragSourceView; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-FavoriteButtonAnimation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-FavoriteButtonAnimation.h new file mode 100644 index 00000000..8ed22102 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-FavoriteButtonAnimation.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (FavoriteButtonAnimation) +- (void)resumeAnimation; +- (void)pauseAnimation; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-LocatingFrameViews.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-LocatingFrameViews.h new file mode 100644 index 00000000..895cc0f6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-LocatingFrameViews.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (LocatingFrameViews) +- (id)enclosingScrollViewIgnoringWebScrollbars; +- (id)enclosingWebView; +- (id)enclosingFrameView; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-MailAdditions.h new file mode 100644 index 00000000..639dca10 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-MailAdditions.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MailAdditions) +- (id)newRenderedSnapshotForLayerBackedView:(struct CGRect)arg1; +- (id)newSnapshotForLayerBackedViewInRect:(struct CGRect)arg1; +- (id)newSnapshotForLayerBackedView; +- (struct CGRect)rectInScreenCoords:(struct CGRect)arg1; +- (id)newSnapshotIgnoringSubviewsWithRect:(struct CGRect)arg1; +- (id)newRenderedSnapshotWithRect:(struct CGRect)arg1 allowAlpha:(BOOL)arg2 forceScaleFactor:(double)arg3; +- (id)newFullRenderedSnapshot; +- (id)newSnapshotWithRect:(struct CGRect)arg1; +- (BOOL)_testIsHIDPI; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-MailQuickLookAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-MailQuickLookAdditions.h new file mode 100644 index 00000000..7f9da893 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-MailQuickLookAdditions.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MailQuickLookAdditions) +- (id)quickLookTransitionImage; +- (struct CGRect)quickLookRectForFrame:(struct CGRect)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-MailToolbarBaselineView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-MailToolbarBaselineView.h new file mode 100644 index 00000000..788d437e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-MailToolbarBaselineView.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MailToolbarBaselineView) +- (id)toolbarBaselineColorForceMain:(BOOL)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-ResizingAnimation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-ResizingAnimation.h new file mode 100644 index 00000000..030c7ebb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-ResizingAnimation.h @@ -0,0 +1,13 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (ResizingAnimation) +- (void)setFrame:(struct CGRect)arg1 animate:(BOOL)arg2 repositionOtherSiblings:(BOOL)arg3; +- (void)setFrame:(struct CGRect)arg1 animate:(BOOL)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-SlidingExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-SlidingExtras.h new file mode 100644 index 00000000..c21c8139 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSView-SlidingExtras.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (SlidingExtras) +- (void)setFrameWithRedraw:(struct CGRect)arg1; +- (void)setSlidingFrame:(struct CGRect)arg1; +- (struct CGRect)slidingFrame; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSWindow-BetterDescription.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSWindow-BetterDescription.h new file mode 100644 index 00000000..f5a48332 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSWindow-BetterDescription.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface NSWindow (BetterDescription) +- (id)debugDescription; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSWindow-MailWindowAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSWindow-MailWindowAdditions.h new file mode 100644 index 00000000..2bc4ee23 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSWindow-MailWindowAdditions.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindow.h" + +@interface NSWindow (MailWindowAdditions) ++ (void)updateMailPreferredBackingLocationFromDefaults; +- (void)setMailPreferredBackingLocationFromDefaults; +- (void)_setMailDeferredBackingLocationFromDefaults; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSWindowDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSWindowDelegate-Protocol.h new file mode 100644 index 00000000..3ebfdce9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NSWindowDelegate-Protocol.h @@ -0,0 +1,64 @@ +/* + * 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" + +@protocol NSWindowDelegate + +@optional +- (void)windowDidChangeOcclusionState:(id)arg1; +- (void)windowDidExitVersionBrowser:(id)arg1; +- (void)windowWillExitVersionBrowser:(id)arg1; +- (void)windowDidEnterVersionBrowser:(id)arg1; +- (void)windowWillEnterVersionBrowser:(id)arg1; +- (void)windowDidExitFullScreen:(id)arg1; +- (void)windowWillExitFullScreen:(id)arg1; +- (void)windowDidEnterFullScreen:(id)arg1; +- (void)windowWillEnterFullScreen:(id)arg1; +- (void)windowDidEndLiveResize:(id)arg1; +- (void)windowWillStartLiveResize:(id)arg1; +- (void)windowDidEndSheet:(id)arg1; +- (void)windowWillBeginSheet:(id)arg1; +- (void)windowDidChangeBackingProperties:(id)arg1; +- (void)windowDidChangeScreenProfile:(id)arg1; +- (void)windowDidChangeScreen:(id)arg1; +- (void)windowDidUpdate:(id)arg1; +- (void)windowDidDeminiaturize:(id)arg1; +- (void)windowDidMiniaturize:(id)arg1; +- (void)windowWillMiniaturize:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)windowDidResignMain:(id)arg1; +- (void)windowDidBecomeMain:(id)arg1; +- (void)windowDidResignKey:(id)arg1; +- (void)windowDidBecomeKey:(id)arg1; +- (void)windowDidMove:(id)arg1; +- (void)windowWillMove:(id)arg1; +- (void)windowDidExpose:(id)arg1; +- (void)windowDidResize:(id)arg1; +- (void)window:(id)arg1 didDecodeRestorableState:(id)arg2; +- (void)window:(id)arg1 willEncodeRestorableState:(id)arg2; +- (struct CGSize)window:(id)arg1 willResizeForVersionBrowserWithMaxPreferredSize:(struct CGSize)arg2 maxAllowedSize:(struct CGSize)arg3; +- (void)windowDidFailToExitFullScreen:(id)arg1; +- (void)window:(id)arg1 startCustomAnimationToEnterFullScreenOnScreen:(id)arg2 withDuration:(double)arg3; +- (id)customWindowsToEnterFullScreenForWindow:(id)arg1 onScreen:(id)arg2; +- (void)window:(id)arg1 startCustomAnimationToExitFullScreenWithDuration:(double)arg2; +- (id)customWindowsToExitFullScreenForWindow:(id)arg1; +- (void)windowDidFailToEnterFullScreen:(id)arg1; +- (void)window:(id)arg1 startCustomAnimationToEnterFullScreenWithDuration:(double)arg2; +- (id)customWindowsToEnterFullScreenForWindow:(id)arg1; +- (unsigned long long)window:(id)arg1 willUseFullScreenPresentationOptions:(unsigned long long)arg2; +- (struct CGSize)window:(id)arg1 willUseFullScreenContentSize:(struct CGSize)arg2; +- (BOOL)window:(id)arg1 shouldDragDocumentWithEvent:(id)arg2 from:(struct CGPoint)arg3 withPasteboard:(id)arg4; +- (BOOL)window:(id)arg1 shouldPopUpDocumentPathMenu:(id)arg2; +- (struct CGRect)window:(id)arg1 willPositionSheet:(id)arg2 usingRect:(struct CGRect)arg3; +- (id)windowWillReturnUndoManager:(id)arg1; +- (BOOL)windowShouldZoom:(id)arg1 toFrame:(struct CGRect)arg2; +- (struct CGRect)windowWillUseStandardFrame:(id)arg1 defaultFrame:(struct CGRect)arg2; +- (struct CGSize)windowWillResize:(id)arg1 toSize:(struct CGSize)arg2; +- (id)windowWillReturnFieldEditor:(id)arg1 toObject:(id)arg2; +- (BOOL)windowShouldClose:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NetscapeEmailImporter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NetscapeEmailImporter.h new file mode 100644 index 00000000..cfc71b56 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NetscapeEmailImporter.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +@interface NetscapeEmailImporter : FilesystemEmailImporter +{ +} + ++ (id)explanatoryText; ++ (id)name; +- (char *)fromString; +- (id)pathExtensions; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NoSelectionPlaceholderView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NoSelectionPlaceholderView.h new file mode 100644 index 00000000..910e6713 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/NoSelectionPlaceholderView.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSVisualEffectView.h" + +@class NSTextField; + +@interface NoSelectionPlaceholderView : NSVisualEffectView +{ + NSTextField *_noSelectionTextField; +} + +@property(retain, nonatomic) NSTextField *noSelectionTextField; // @synthesize noSelectionTextField=_noSelectionTextField; +- (void).cxx_destruct; +- (void)layout; +- (BOOL)isOpaque; +- (void)_noSelectionPlaceholderViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/OofPanelController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/OofPanelController.h new file mode 100644 index 00000000..575212cc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/OofPanelController.h @@ -0,0 +1,72 @@ +/* + * 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 "AccountInfoTabOwner.h" +#import "NSDatePickerCellDelegate.h" + +@class ColorBackgroundView, EditingMessageWebView, EditingWebMessageController, MFEWSAccount, NSButton, NSDate, NSDatePicker, NSPopUpButton, NSProgressIndicator, NSString, NSView; + +@interface OofPanelController : NSObject +{ + NSView *_view; + NSButton *_oofEnabledCheckbox; + NSProgressIndicator *_getOofSettingsIndicator; + NSPopUpButton *_scheduleMenu; + NSDatePicker *_startTimePicker; + NSDatePicker *_endTimePicker; + ColorBackgroundView *_internalWebViewBackground; + ColorBackgroundView *_externalWebViewBackground; + EditingMessageWebView *_internalWebView; + EditingMessageWebView *_externalWebView; + MFEWSAccount *_account; + NSDate *_startTime; + NSDate *_endTime; + EditingWebMessageController *_internalController; + EditingWebMessageController *_externalController; +} + +@property(retain, nonatomic) EditingWebMessageController *externalController; // @synthesize externalController=_externalController; +@property(retain, nonatomic) EditingWebMessageController *internalController; // @synthesize internalController=_internalController; +@property(retain) NSDate *endTime; // @synthesize endTime=_endTime; +@property(retain) NSDate *startTime; // @synthesize startTime=_startTime; +@property(retain) MFEWSAccount *account; // @synthesize account=_account; +@property(nonatomic) __weak EditingMessageWebView *externalWebView; // @synthesize externalWebView=_externalWebView; +@property(nonatomic) __weak EditingMessageWebView *internalWebView; // @synthesize internalWebView=_internalWebView; +@property(nonatomic) __weak ColorBackgroundView *externalWebViewBackground; // @synthesize externalWebViewBackground=_externalWebViewBackground; +@property(nonatomic) __weak ColorBackgroundView *internalWebViewBackground; // @synthesize internalWebViewBackground=_internalWebViewBackground; +@property(nonatomic) __weak NSDatePicker *endTimePicker; // @synthesize endTimePicker=_endTimePicker; +@property(nonatomic) __weak NSDatePicker *startTimePicker; // @synthesize startTimePicker=_startTimePicker; +@property(nonatomic) __weak NSPopUpButton *scheduleMenu; // @synthesize scheduleMenu=_scheduleMenu; +@property(nonatomic) __weak NSProgressIndicator *getOofSettingsIndicator; // @synthesize getOofSettingsIndicator=_getOofSettingsIndicator; +@property(nonatomic) __weak NSButton *oofEnabledCheckbox; // @synthesize oofEnabledCheckbox=_oofEnabledCheckbox; +@property(retain, nonatomic) NSView *view; // @synthesize view=_view; +- (void).cxx_destruct; +- (void)datePickerCell:(id)arg1 validateProposedDateValue:(id *)arg2 timeInterval:(double *)arg3; +- (void)webView:(id)arg1 didFailProvisionalLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didFailLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)accountInfoWillShowView:(id)arg1; +- (void)accountInfoWillHideView:(id)arg1; +- (void)_updateWebView:(id)arg1 content:(id)arg2; +- (void)_setEnabledForInterfaceElements:(BOOL)arg1; +- (void)_handleOutOfOfficeSettings:(id)arg1; +- (void)showOutOfOfficeSettings; +- (void)scheduleMenuChanged:(id)arg1; +- (void)toggleOofEnabled:(id)arg1; +- (void)dealloc; +- (void)awakeFromNib; +- (id)init; +- (id)initWithAccount:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/OutlineViewProgressIndicatorsController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/OutlineViewProgressIndicatorsController.h new file mode 100644 index 00000000..b09f59fb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/OutlineViewProgressIndicatorsController.h @@ -0,0 +1,45 @@ +/* + * 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" + +@class NSMutableDictionary, NSMutableSet, NSOutlineView; + +@interface OutlineViewProgressIndicatorsController : NSObject +{ + NSMutableDictionary *_progressIndicators; + NSMutableDictionary *_fractionsDone; + NSMutableDictionary *_origins; + NSMutableDictionary *_roundDeterminateColors; + NSMutableSet *_scheduledUpdates; + NSMutableSet *_scheduledRemovals; + BOOL _updateScheduled; + NSOutlineView *_outlineView; +} + +@property(nonatomic) BOOL updateScheduled; // @synthesize updateScheduled=_updateScheduled; +@property(readonly, nonatomic) NSOutlineView *outlineView; // @synthesize outlineView=_outlineView; +- (void).cxx_destruct; +- (void)_removeProgressIndicatorForKey:(id)arg1; +- (void)_updateProgressIndicatorForKey:(id)arg1; +- (void)_processUpdates; +- (void)_scheduleUpdate; +- (void)_setNeedsToRemoveProgressIndicatorForKey:(id)arg1; +- (void)_setNeedsToUpdateProgressIndicatorForKey:(id)arg1; +- (id)_progressIndicatorForKey:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)_itemForKey:(id)arg1; +- (id)_keyForItem:(id)arg1; +- (void)setRoundDeterminateColor:(id)arg1 forProgressIndicatorForItem:(id)arg2; +- (void)positionProgressIndicatorForItem:(id)arg1 inRect:(struct CGRect)arg2; +- (void)removeOrphanProgressIndicators; +- (void)removeProgressIndicatorForItem:(id)arg1; +- (void)showDeterminateProgressIndicatorForItem:(id)arg1 fractionDone:(double)arg2; +- (void)showIndeterminateProgressIndicatorForItem:(id)arg1; +- (id)initWithOutlineView:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/POPAccountDetails.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/POPAccountDetails.h new file mode 100644 index 00000000..4c48329e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/POPAccountDetails.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "AccountDetails.h" + +@class NSButton, NSPopUpButton, NSTextField; + +@interface POPAccountDetails : AccountDetails +{ + NSButton *_deleteMessagesOnServer; + NSTextField *_bigMessageWarningSize; + NSButton *_removeSeenMessagesButton; + NSPopUpButton *_removeIntervalPopup; +} + +@property(nonatomic) __weak NSPopUpButton *removeIntervalPopup; // @synthesize removeIntervalPopup=_removeIntervalPopup; +@property(nonatomic) __weak NSButton *removeSeenMessagesButton; // @synthesize removeSeenMessagesButton=_removeSeenMessagesButton; +@property(nonatomic) __weak NSTextField *bigMessageWarningSize; // @synthesize bigMessageWarningSize=_bigMessageWarningSize; +@property(nonatomic) __weak NSButton *deleteMessagesOnServer; // @synthesize deleteMessagesOnServer=_deleteMessagesOnServer; +- (void).cxx_destruct; +- (void)_deleteServerMessagesStarted:(id)arg1; +- (void)_deleteServerMessagesCompleted:(id)arg1; +- (void)removeMessagesButtonClicked:(id)arg1; +- (void)deleteSeenMessagesNow:(id)arg1; +- (void)warnIfDeleteMessages:(id)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (void)setupAccountFromValuesInUI:(id)arg1 forValidation:(BOOL)arg2; +- (long long)_popDeletionPolicyFromUI; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (void)dealloc; +- (id)initWithAccountClass:(Class)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/POPAccountSpecialMailboxes.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/POPAccountSpecialMailboxes.h new file mode 100644 index 00000000..85efc5df --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/POPAccountSpecialMailboxes.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "SpecialMailboxes.h" + +@class NSButton; + +@interface POPAccountSpecialMailboxes : SpecialMailboxes +{ + BOOL _moveDeletedMessagesToTrash; + NSButton *_trashCheckbox; +} + +@property(nonatomic) __weak NSButton *trashCheckbox; // @synthesize trashCheckbox=_trashCheckbox; +@property(nonatomic) BOOL moveDeletedMessagesToTrash; // @synthesize moveDeletedMessagesToTrash=_moveDeletedMessagesToTrash; +- (void).cxx_destruct; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (BOOL)setupAccountFromValuesInUI:(id)arg1; +- (void)setupUIFromValuesInAccount:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/POPQuota.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/POPQuota.h new file mode 100644 index 00000000..0843fa45 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/POPQuota.h @@ -0,0 +1,62 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "Quota.h" + +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class NSButton, NSMutableArray, NSMutableAttributedString, NSMutableDictionary, NSPopUpButton, NSString; + +@interface POPQuota : Quota +{ + NSMutableAttributedString *_truncatedString; + NSMutableDictionary *_truncatedParagraphStyle; + struct QuotaSimpleSortDescriptor _simpleSortDescs[5]; + NSMutableArray *_messageIDs; + NSPopUpButton *_showMessagesPopup; + NSButton *_deleteButton; +} + +@property(nonatomic) __weak NSButton *deleteButton; // @synthesize deleteButton=_deleteButton; +@property(nonatomic) __weak NSPopUpButton *showMessagesPopup; // @synthesize showMessagesPopup=_showMessagesPopup; +- (void).cxx_destruct; +- (void)_deleteServerMessagesCompleted:(id)arg1; +- (void)_deleteServerMessagesStarted:(id)arg1; +- (BOOL)_updateMessage:(id)arg1; +- (unsigned long long)_addMessage:(id)arg1; +- (void)_resortMessages; +- (void)_syncSortDescriptors; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (id)_truncatedAttributedStringForString:(id)arg1; +- (long long)numberOfRowsInTableView:(id)arg1; +- (const struct QuotaSimpleSortDescriptor *)sortDescriptorAtIndex:(unsigned long long)arg1; +- (unsigned long long)numberOfSortDescriptors; +- (void)engineUpdated:(id)arg1; +- (void)engineDidFinish; +- (void)engineDidStart; +- (id)_account; +- (void)showMessagesPopupChanged:(id)arg1; +- (void)_updateUsageField; +- (id)_filterMessages:(id)arg1 showMessageType:(long long)arg2; +- (BOOL)_shouldShowMessage:(id)arg1 showMessageType:(long long)arg2; +- (void)deleteFromServer:(id)arg1; +- (Class)engineClass; +- (void)dealloc; +- (void)awakeFromNib; +- (id)initWithAccount:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ParentBannerViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ParentBannerViewController.h new file mode 100644 index 00000000..117fcc17 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ParentBannerViewController.h @@ -0,0 +1,42 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "BannerViewController.h" + +@class BannerImageView, NSButton, NSMutableArray, NSString, NSTextField; + +@interface ParentBannerViewController : BannerViewController +{ + NSMutableArray *_requestedAddresses; + BOOL _requestIsForSenders; + BannerImageView *_icon; + NSTextField *_messageField; + NSButton *_helpButton; + NSButton *_respondButton; + NSString *_childAddress; + long long _permissionRequestState; +} + +@property(nonatomic) long long permissionRequestState; // @synthesize permissionRequestState=_permissionRequestState; +@property(nonatomic) __weak NSString *childAddress; // @synthesize childAddress=_childAddress; +@property(nonatomic) BOOL requestIsForSenders; // @synthesize requestIsForSenders=_requestIsForSenders; +@property(nonatomic) __weak NSButton *respondButton; // @synthesize respondButton=_respondButton; +@property(nonatomic) __weak NSButton *helpButton; // @synthesize helpButton=_helpButton; +@property(nonatomic) __weak NSTextField *messageField; // @synthesize messageField=_messageField; +@property(nonatomic) __weak BannerImageView *icon; // @synthesize icon=_icon; +- (void).cxx_destruct; +- (void)rejectChildRequest:(id)arg1; +- (void)approveChildRequest:(id)arg1; +- (void)updateBannerContents; +- (void)updateWantsDisplay; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setRepresentedObject:(id)arg1; +- (void)dealloc; +- (id)initWithBannerContainerViewController:(id)arg1; +- (id)nibName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PassbookBannerViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PassbookBannerViewController.h new file mode 100644 index 00000000..3de42023 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PassbookBannerViewController.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "LoadRemoteContentBannerViewController.h" + +@class NSButton, NSMutableArray, NSTextField; + +@interface PassbookBannerViewController : LoadRemoteContentBannerViewController +{ + NSTextField *_messageField; + NSButton *_viewPassButton; + NSMutableArray *_passes; +} + +@property(retain, nonatomic) NSMutableArray *passes; // @synthesize passes=_passes; +@property(nonatomic) __weak NSButton *viewPassButton; // @synthesize viewPassButton=_viewPassButton; +@property(nonatomic) __weak NSTextField *messageField; // @synthesize messageField=_messageField; +- (void).cxx_destruct; +- (void)showPasses:(id)arg1; +- (void)updateBannerContents; +- (void)updateWantsDisplay; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setRepresentedObject:(id)arg1; +- (void)setWantsDisplay:(BOOL)arg1; +- (void)setContainer:(id)arg1; +- (BOOL)shouldDisplayToLoadRemoteContent; +- (void)dealloc; +- (id)initWithBannerContainerViewController:(id)arg1; +- (id)nibName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PasswordManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PasswordManager.h new file mode 100644 index 00000000..18a6ba11 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PasswordManager.h @@ -0,0 +1,44 @@ +/* + * 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" + +@class IAPasswordUIController, NSCondition, NSMutableArray, NSMutableSet, NSOperationQueue; + +@interface PasswordManager : NSObject +{ + IAPasswordUIController *_passwordController; + NSMutableArray *_pendingAccounts; + NSMutableSet *_suppressedAccounts; + NSCondition *_passwordChanged; + long long _lastUserResponse; + NSOperationQueue *_passwordChangeQueue; +} + ++ (void)resetSuppressedAccount:(id)arg1; ++ (void)resetSuppressedAccounts; ++ (BOOL)isShowingPasswordUI; ++ (BOOL)promptForPassword:(id)arg1; ++ (id)_passwordManagerInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, nonatomic) NSOperationQueue *passwordChangeQueue; // @synthesize passwordChangeQueue=_passwordChangeQueue; +- (void).cxx_destruct; +- (void)_accountsChanged:(id)arg1; +- (void)_accountChanged:(id)arg1; +- (void)_mainWindowChanged:(id)arg1; +- (BOOL)_waitForPasswordCompletion:(id)arg1; +- (BOOL)_isSuppressedAccount:(id)arg1; +- (void)_resetSuppressedAccount:(id)arg1; +- (void)_resetAllSuppressedAccounts; +- (void)_finalizePasswordResult:(long long)arg1 forAccount:(id)arg2; +- (void)_displayPasswordSheetIfNeeded; +- (BOOL)_displayPasswordSheetForAccount:(id)arg1; +@property(retain) IAPasswordUIController *passwordController; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PhotoExporter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PhotoExporter.h new file mode 100644 index 00000000..2d0d9c53 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PhotoExporter.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "GenericAttachmentFetcher.h" + +@interface PhotoExporter : GenericAttachmentFetcher +{ +} + ++ (void)exportPhotoAttachments:(id)arg1; ++ (BOOL)isPhotoAttachment:(id)arg1; +- (void)downloadedAllAttachments; +- (void)_exportAttachments:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PowerManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PowerManager.h new file mode 100644 index 00000000..63cf9a1e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PowerManager.h @@ -0,0 +1,34 @@ +/* + * 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" + +@class NSBackgroundActivityScheduler, NSObject; + +@interface PowerManager : NSObject +{ + struct __CFRunLoopSource *_powerSourceRunLoopSource; + NSBackgroundActivityScheduler *_applicationRefreshActivity; + NSObject *_fetchCheckPointTimer; + id _applicationRefreshCompletionHandler; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(copy) id applicationRefreshCompletionHandler; // @synthesize applicationRefreshCompletionHandler=_applicationRefreshCompletionHandler; +@property(readonly, nonatomic) NSObject *fetchCheckPointTimer; // @synthesize fetchCheckPointTimer=_fetchCheckPointTimer; +@property(readonly, nonatomic) NSBackgroundActivityScheduler *applicationRefreshActivity; // @synthesize applicationRefreshActivity=_applicationRefreshActivity; +- (void).cxx_destruct; +- (void)_applicationRefreshDidEnd; +- (id)_applicationRefreshShouldBegin; +- (void)_systemDidWake:(id)arg1; +- (void)_systemWillSleep:(id)arg1; +- (void)registerForPowerEvents; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingHTMLGenerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingHTMLGenerator.h new file mode 100644 index 00000000..5b248f50 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingHTMLGenerator.h @@ -0,0 +1,38 @@ +/* + * 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" + +@class ConversationMember, MessageWebDocumentView, NSImage, NSMutableString, NSString; + +@interface PrintingHTMLGenerator : NSObject +{ + NSMutableString *_headerTableHTML; + NSString *_senderImageHTML; + BOOL _shouldCollapseRedundantText; + ConversationMember *_conversationMember; + MessageWebDocumentView *_webDocumentView; + NSImage *_senderImage; + PrintingHTMLGenerator *_activeGenerator; +} + +@property(retain, nonatomic) PrintingHTMLGenerator *activeGenerator; // @synthesize activeGenerator=_activeGenerator; +@property(retain, nonatomic) NSImage *senderImage; // @synthesize senderImage=_senderImage; +@property(nonatomic) BOOL shouldCollapseRedundantText; // @synthesize shouldCollapseRedundantText=_shouldCollapseRedundantText; +@property(nonatomic) __weak MessageWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(nonatomic) __weak ConversationMember *conversationMember; // @synthesize conversationMember=_conversationMember; +- (void).cxx_destruct; +- (id)_newHTMLAddressStringsFromAddressList:(id)arg1; +@property(readonly, copy, nonatomic) NSString *senderImageHTML; +@property(readonly, copy, nonatomic) NSString *headerTableHTML; +- (id)_newPrintHTMLUsingPrintingData:(id)arg1 base64EncodedDisplayHTML:(id)arg2; +- (id)_javaScriptForPrintingData; +- (void)asyncLoadPrintingHTML:(id)arg1; +- (id)init; +- (id)initWithConversationMember:(id)arg1 webDocumentView:(id)arg2 shouldCollapseRedundantText:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingHTMLPrinter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingHTMLPrinter.h new file mode 100644 index 00000000..4802b602 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingHTMLPrinter.h @@ -0,0 +1,49 @@ +/* + * 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 "NSWindowDelegate.h" + +@class MUIWebDocumentView, NSMutableArray, NSPrintInfo, NSString; + +@interface PrintingHTMLPrinter : NSObject +{ + BOOL _hasPrinted; + NSString *_printingHTML; + NSMutableArray *_attachments; + NSPrintInfo *_printInfo; + NSString *_jobTitle; + MUIWebDocumentView *_printView; + PrintingHTMLPrinter *_activePrinter; + id _finishedPrintingCompletionBlock; +} + +@property(copy, nonatomic) id finishedPrintingCompletionBlock; // @synthesize finishedPrintingCompletionBlock=_finishedPrintingCompletionBlock; +@property(retain, nonatomic) PrintingHTMLPrinter *activePrinter; // @synthesize activePrinter=_activePrinter; +@property(nonatomic) BOOL hasPrinted; // @synthesize hasPrinted=_hasPrinted; +@property(retain, nonatomic) MUIWebDocumentView *printView; // @synthesize printView=_printView; +@property(retain, nonatomic) NSString *jobTitle; // @synthesize jobTitle=_jobTitle; +@property(retain, nonatomic) NSPrintInfo *printInfo; // @synthesize printInfo=_printInfo; +@property(retain, nonatomic) NSMutableArray *attachments; // @synthesize attachments=_attachments; +@property(retain, nonatomic) NSString *printingHTML; // @synthesize printingHTML=_printingHTML; +- (void).cxx_destruct; +- (void)printOperationDidRun:(id)arg1 success:(BOOL)arg2 contextInfo:(void *)arg3; +- (void)_runPrintOperation; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)run:(id)arg1; +- (void)dealloc; +- (id)init; +- (id)initWithPrintingHTML:(id)arg1 attachments:(id)arg2 printInfo:(id)arg3 jobTitle:(id)arg4; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingManager.h new file mode 100644 index 00000000..3038b391 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingManager.h @@ -0,0 +1,42 @@ +/* + * 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" + +@class MessageSelection, MessageWebDocumentView, NSString, PrintingProgressPanelWindowController; + +@interface PrintingManager : NSObject +{ + BOOL _wasCancelled; + MessageSelection *_selection; + MessageWebDocumentView *_webDocumentView; + PrintingManager *_activeDispatcher; + PrintingProgressPanelWindowController *_progressPanelController; + double _progressMaxValue; + double _progressValue; + double _progressIncrement; +} + ++ (void)exportSelectionAsPDF:(id)arg1; ++ (void)printSelection:(id)arg1; +@property(nonatomic) double progressIncrement; // @synthesize progressIncrement=_progressIncrement; +@property double progressValue; // @synthesize progressValue=_progressValue; +@property(nonatomic) double progressMaxValue; // @synthesize progressMaxValue=_progressMaxValue; +@property(retain, nonatomic) PrintingProgressPanelWindowController *progressPanelController; // @synthesize progressPanelController=_progressPanelController; +@property(retain, nonatomic) PrintingManager *activeDispatcher; // @synthesize activeDispatcher=_activeDispatcher; +@property(nonatomic) BOOL wasCancelled; // @synthesize wasCancelled=_wasCancelled; +@property(retain, nonatomic) MessageWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(retain, nonatomic) MessageSelection *selection; // @synthesize selection=_selection; +- (void).cxx_destruct; +- (void)_showProgressPanel; +@property(readonly, copy, nonatomic) NSString *progressMessage; +- (void)_generatePrintingHTMLForEnumeratedConversationMembers:(id)arg1 HTMLStorage:(id)arg2 attachmentStorage:(id)arg3 completionHandler:(id)arg4; +- (void)dispatch; +- (id)init; +- (id)initWithSelection:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingManagerForExportAsPDF.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingManagerForExportAsPDF.h new file mode 100644 index 00000000..ec445746 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingManagerForExportAsPDF.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "PrintingManager.h" + +@class NSMutableArray, NSPDFInfo; + +@interface PrintingManagerForExportAsPDF : PrintingManager +{ + NSMutableArray *_exportJobs; + NSPDFInfo *_pdfInfo; + unsigned long long _numberOfConversationsNotYetLoaded; +} + +@property(nonatomic) unsigned long long numberOfConversationsNotYetLoaded; // @synthesize numberOfConversationsNotYetLoaded=_numberOfConversationsNotYetLoaded; +@property(retain, nonatomic) NSPDFInfo *pdfInfo; // @synthesize pdfInfo=_pdfInfo; +@property(retain, nonatomic) NSMutableArray *exportJobs; // @synthesize exportJobs=_exportJobs; +- (void).cxx_destruct; +- (void)_generateJobTitleAndPrintInfoForExportJob:(id)arg1; +- (void)_getSaveURLFromUser:(id)arg1; +- (void)_runEnumeratedExportJobs:(id)arg1; +- (void)_generatePrintingHTMLForEnumeratedExportJobs:(id)arg1; +- (void)_generatePrintingHTMLIfAllConversationMembersAreLoaded; +- (void)dispatch; +- (id)progressMessage; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingManagerForPrinting.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingManagerForPrinting.h new file mode 100644 index 00000000..3fa72c11 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingManagerForPrinting.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "PrintingManager.h" + +@class NSMutableArray; + +@interface PrintingManagerForPrinting : PrintingManager +{ + NSMutableArray *_arraysOfConversationMembersToGenerateHTMLFor; + unsigned long long _numberOfConversationsNotYetLoaded; +} + +@property(nonatomic) unsigned long long numberOfConversationsNotYetLoaded; // @synthesize numberOfConversationsNotYetLoaded=_numberOfConversationsNotYetLoaded; +@property(retain, nonatomic) NSMutableArray *arraysOfConversationMembersToGenerateHTMLFor; // @synthesize arraysOfConversationMembersToGenerateHTMLFor=_arraysOfConversationMembersToGenerateHTMLFor; +- (void).cxx_destruct; +- (void)_printIfAllNecessaryConversationMembersHaveBeenLoaded; +- (void)dispatch; +- (id)progressMessage; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingProgressPanelWindowController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingProgressPanelWindowController.h new file mode 100644 index 00000000..9308b5f1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/PrintingProgressPanelWindowController.h @@ -0,0 +1,27 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowController.h" + +@class NSButton, NSProgressIndicator, NSTextField; + +@interface PrintingProgressPanelWindowController : NSWindowController +{ + NSProgressIndicator *_progressIndicator; + NSTextField *_progressText; + NSButton *_cancelButton; +} + +@property(nonatomic) __weak NSButton *cancelButton; // @synthesize cancelButton=_cancelButton; +@property(nonatomic) __weak NSTextField *progressText; // @synthesize progressText=_progressText; +@property(nonatomic) __weak NSProgressIndicator *progressIndicator; // @synthesize progressIndicator=_progressIndicator; +- (void).cxx_destruct; +- (void)cancel:(id)arg1; +- (void)awakeFromNib; +- (id)windowNibName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ProgressIndicatorCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ProgressIndicatorCell.h new file mode 100644 index 00000000..4740d31e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ProgressIndicatorCell.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageCell.h" + +@class NSProgressIndicator; + +@interface ProgressIndicatorCell : NSImageCell +{ + NSProgressIndicator *_progressIndicator; +} + +@property(nonatomic) __weak NSProgressIndicator *progressIndicator; // @synthesize progressIndicator=_progressIndicator; +- (void).cxx_destruct; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QLPreviewPanelDataSource-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QLPreviewPanelDataSource-Protocol.h new file mode 100644 index 00000000..3936dbb5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QLPreviewPanelDataSource-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol QLPreviewPanelDataSource +- (id)previewPanel:(id)arg1 previewItemAtIndex:(long long)arg2; +- (long long)numberOfPreviewItemsInPreviewPanel:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QLPreviewPanelDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QLPreviewPanelDelegate-Protocol.h new file mode 100644 index 00000000..343adb3d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QLPreviewPanelDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowDelegate.h" + +@protocol QLPreviewPanelDelegate + +@optional +- (id)previewPanel:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)previewPanel:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (BOOL)previewPanel:(id)arg1 handleEvent:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QLSeamlessOpenerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QLSeamlessOpenerDelegate-Protocol.h new file mode 100644 index 00000000..28dd37af --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QLSeamlessOpenerDelegate-Protocol.h @@ -0,0 +1,24 @@ +/* + * 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" + +@protocol QLSeamlessOpenerDelegate + +@optional +- (id)seamlessOpener:(id)arg1 transientWindowForItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 transientImageAtFrame:(struct CGRect *)arg2 forItem:(id)arg3; +- (void)seamlessOpener:(id)arg1 failedToOpenItems:(id)arg2 withError:(id)arg3; +- (void)seamlessOpener:(id)arg1 openedItem:(id)arg2 seamlessly:(BOOL)arg3; +- (id)seamlessOpenerTransientWindow:(id)arg1 level:(long long *)arg2; +- (int)seamlessOpener:(id)arg1 supportForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3 windowLevel:(long long *)arg4; +- (struct CGRect)seamlessOpener:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 sourceBubbleForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 sourcePreviewViewForPreviewItem:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QuickTimeAttachmentView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QuickTimeAttachmentView.h new file mode 100644 index 00000000..ff4c9025 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QuickTimeAttachmentView.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "QTMovieView.h" + +@class MFAttachmentViewController; + +@interface QuickTimeAttachmentView : QTMovieView +{ + MFAttachmentViewController *_attachmentViewController; +} + ++ (id)viewForAttachmentViewController:(id)arg1; ++ (void)initialize; +@property(nonatomic) __weak MFAttachmentViewController *attachmentViewController; // @synthesize attachmentViewController=_attachmentViewController; +- (void).cxx_destruct; +- (void)scrollWheel:(id)arg1; +- (void)mouseDragged:(id)arg1; +- (BOOL)shouldDisplayInline; +- (id)menuForEvent:(id)arg1; +- (void)viewWillMoveToSuperview:(id)arg1; +- (void)viewWillMoveToWindow:(id)arg1; +- (struct CGSize)desiredSizeWithMaximumWidth:(double)arg1; +- (struct CGSize)_naturalSize; +- (BOOL)performKeyEquivalent:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Quota.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Quota.h new file mode 100644 index 00000000..fa090557 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Quota.h @@ -0,0 +1,58 @@ +/* + * 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 "AccountInfoTabOwner.h" + +@class MFSizeEngine, NSProgressIndicator, NSString, NSTableView, NSTextField, NSTimer, NSView; + +@interface Quota : NSObject +{ + NSView *_view; + NSTableView *_quotaTable; + NSTextField *_usageField; + NSProgressIndicator *_progressIndicator; + NSTextField *_progressField; + MFSizeEngine *_sizeEngine; + id _compareUsingDescriptors; + NSTimer *_statusTimer; +} + ++ (id)quotaForMailAccount:(id)arg1; +@property(retain, nonatomic) NSTimer *statusTimer; // @synthesize statusTimer=_statusTimer; +@property(readonly, copy, nonatomic) id compareUsingDescriptors; // @synthesize compareUsingDescriptors=_compareUsingDescriptors; +@property(retain, nonatomic) MFSizeEngine *sizeEngine; // @synthesize sizeEngine=_sizeEngine; +@property(nonatomic) __weak NSTextField *progressField; // @synthesize progressField=_progressField; +@property(nonatomic) __weak NSProgressIndicator *progressIndicator; // @synthesize progressIndicator=_progressIndicator; +@property(nonatomic) __weak NSTextField *usageField; // @synthesize usageField=_usageField; +@property(nonatomic) __weak NSTableView *quotaTable; // @synthesize quotaTable=_quotaTable; +@property(retain, nonatomic) NSView *view; // @synthesize view=_view; +- (void).cxx_destruct; +- (void)accountInfoWillShowView:(id)arg1; +- (void)accountInfoWillHideView:(id)arg1; +- (const struct QuotaSimpleSortDescriptor *)sortDescriptorAtIndex:(unsigned long long)arg1; +- (unsigned long long)numberOfSortDescriptors; +- (void)engineUpdated:(id)arg1; +- (void)_stopProgress:(id)arg1; +- (void)_updateProgress:(id)arg1; +- (void)updateProgress:(id)arg1; +- (void)engineDidFinish; +- (void)engineDidStart; +- (void)_accountOfflineStatusDidChange:(id)arg1; +- (Class)engineClass; +- (void)dealloc; +- (id)init; +- (id)initWithAccount:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QuotaBar.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QuotaBar.h new file mode 100644 index 00000000..f6a18f16 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/QuotaBar.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSLevelIndicator; + +@interface QuotaBar : NSView +{ + NSLevelIndicator *_levelIndicator; +} + +@property(readonly, nonatomic) NSLevelIndicator *levelIndicator; // @synthesize levelIndicator=_levelIndicator; +- (void).cxx_destruct; +- (void)drawRect:(struct CGRect)arg1; +- (void)setQuotaUsed:(unsigned long long)arg1 limit:(unsigned long long)arg2; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)_labelFont; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RedundantContentIdentificationManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RedundantContentIdentificationManager.h new file mode 100644 index 00000000..58aecef6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RedundantContentIdentificationManager.h @@ -0,0 +1,27 @@ +/* + * 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" + +@class NSOperationQueue; + +@interface RedundantContentIdentificationManager : NSObject +{ + NSOperationQueue *_workQueue; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain) NSOperationQueue *workQueue; // @synthesize workQueue=_workQueue; +- (void).cxx_destruct; +- (id)_messageWithMessageIDHeaderString:(id)arg1 inConversation:(id)arg2; +- (id)mostRecentAncestorForRedundantTextComparisonForMessage:(id)arg1 inConversation:(id)arg2; +- (id)redundantContentMarkupForMessage:(id)arg1 inConversation:(id)arg2; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RemoteStoreAccountSpecialMailboxes.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RemoteStoreAccountSpecialMailboxes.h new file mode 100644 index 00000000..53282b8a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RemoteStoreAccountSpecialMailboxes.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "SpecialMailboxes.h" + +@class NSButton; + +@interface RemoteStoreAccountSpecialMailboxes : SpecialMailboxes +{ + NSButton *_keepDraftsOnServer; + NSButton *_keepSentMessagesOnServer; + NSButton *_keepTrashOnServer; + NSButton *_keepJunkOnServer; +} + +@property(nonatomic) __weak NSButton *keepJunkOnServer; // @synthesize keepJunkOnServer=_keepJunkOnServer; +@property(nonatomic) __weak NSButton *keepTrashOnServer; // @synthesize keepTrashOnServer=_keepTrashOnServer; +@property(nonatomic) __weak NSButton *keepSentMessagesOnServer; // @synthesize keepSentMessagesOnServer=_keepSentMessagesOnServer; +@property(nonatomic) __weak NSButton *keepDraftsOnServer; // @synthesize keepDraftsOnServer=_keepDraftsOnServer; +- (void).cxx_destruct; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (BOOL)setupAccountFromValuesInUI:(id)arg1; +- (void)setupUIFromValuesInAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RemoteStoreQuota.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RemoteStoreQuota.h new file mode 100644 index 00000000..d89ecc06 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RemoteStoreQuota.h @@ -0,0 +1,47 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "Quota.h" + +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class NSArray, NSButton, NSMutableArray, NSString; + +@interface RemoteStoreQuota : Quota +{ + NSMutableArray *_mailboxes; + struct QuotaSimpleSortDescriptor _simpleSortDescs[3]; + NSButton *_showMessagesButton; +} + +@property(nonatomic) __weak NSButton *showMessagesButton; // @synthesize showMessagesButton=_showMessagesButton; +- (void).cxx_destruct; +- (void)resortMailboxes; +- (void)syncSortDescriptors; +- (const struct QuotaSimpleSortDescriptor *)sortDescriptorAtIndex:(unsigned long long)arg1; +- (unsigned long long)numberOfSortDescriptors; +- (id)_iconForMailbox:(id)arg1; +- (BOOL)tableShouldIncludeMailbox:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)showMessages:(id)arg1; +- (void)engineUpdated:(id)arg1; +@property(copy, nonatomic) NSArray *mailboxes; +- (void)dealloc; +- (void)awakeFromNib; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ReplyButtonCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ReplyButtonCell.h new file mode 100644 index 00000000..2dc9ebb1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ReplyButtonCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface ReplyButtonCell : NSButtonCell +{ +} + +- (struct CGRect)imageRectForBounds:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageCellBase.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageCellBase.h new file mode 100644 index 00000000..e1e79ef8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageCellBase.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableCellView.h" + +@class MCMessage, MessageListObjectProxy, NSColor; + +@interface RichMessageCellBase : NSTableCellView +{ + NSColor *_textColor; +} + ++ (id)keyPathsForValuesAffectingIsSelected; ++ (id)keyPathsForValuesAffectingTextColor; ++ (id)keyPathsForValuesAffectingMessage; ++ (double)heightWithNumberOfSnippetLines:(unsigned long long)arg1; +- (void).cxx_destruct; +@property(readonly, nonatomic) BOOL isSelected; +@property(retain, nonatomic) NSColor *textColor; // @synthesize textColor=_textColor; +@property(readonly, nonatomic) MCMessage *message; +- (void)setBackgroundStyle:(long long)arg1; + +// Remaining properties +@property(retain) MessageListObjectProxy *objectValue; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageCellView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageCellView.h new file mode 100644 index 00000000..e19d8bae --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageCellView.h @@ -0,0 +1,139 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "RichMessageCellBase.h" + +@class NSAttributedString, NSButton, NSColor, NSImageView, NSLayoutConstraint, NSMutableArray, NSStackView, NSTextField, ThreadDisclosureTextField, _ToCCIndicator; + +@interface RichMessageCellView : RichMessageCellBase +{ + NSColor *_textColor; + BOOL _showToCc; + BOOL _showMailbox; + BOOL _showSize; + NSTextField *_senderView; + NSTextField *_subjectView; + NSTextField *_snippetView; + NSTextField *_dateView; + unsigned long long _numberOfSnippetLines; + NSMutableArray *_flagViews; + NSImageView *_photoView; + NSLayoutConstraint *_photoMargin; + NSLayoutConstraint *_photoPadding; + NSLayoutConstraint *_photoVerticalPosition; + _ToCCIndicator *_toCcIndicator; + NSLayoutConstraint *_toCcSenderAlignment; + NSLayoutConstraint *_toCcSubjectAlignment; + NSLayoutConstraint *_toCcSubjectSpacing; + ThreadDisclosureTextField *_threadDisclosureControl; + NSLayoutConstraint *_threadMargin; + NSLayoutConstraint *_threadDatePadding; + NSLayoutConstraint *_threadSubjectPadding; + NSLayoutConstraint *_threadSizeVerticalPadding; + NSImageView *_unreadView; + NSImageView *_flagStatusView; + NSImageView *_attachmentView; + NSButton *_replyButton; + NSStackView *_statusStack; + NSImageView *_statusView; + NSLayoutConstraint *_statusAlignment; + NSLayoutConstraint *_statusSenderPadding; + NSLayoutConstraint *_statusDatePadding; + NSTextField *_mailboxView; + NSTextField *_sizeView; + NSLayoutConstraint *_sizeDateAlignment; + NSLayoutConstraint *_subjectSizeAlignment; + NSLayoutConstraint *_subjectSizeHorizontalPadding; + NSLayoutConstraint *_subjectMailboxAlignment; + NSLayoutConstraint *_subjectMailboxPadding; + NSLayoutConstraint *_mailboxThreadPadding; + NSLayoutConstraint *_mailboxSizePadding; + NSLayoutConstraint *_mailboxDateAlignment; + NSLayoutConstraint *_threadSnippetPadding; +} + ++ (id)keyPathsForValuesAffectingThreadCount; ++ (id)keyPathsForValuesAffectingIsOpen; ++ (id)keyPathsForValuesAffectingSnippetString; ++ (double)heightWithNumberOfSnippetLines:(unsigned long long)arg1; +@property(retain, nonatomic) NSLayoutConstraint *threadSnippetPadding; // @synthesize threadSnippetPadding=_threadSnippetPadding; +@property(retain, nonatomic) NSLayoutConstraint *mailboxDateAlignment; // @synthesize mailboxDateAlignment=_mailboxDateAlignment; +@property(retain, nonatomic) NSLayoutConstraint *mailboxSizePadding; // @synthesize mailboxSizePadding=_mailboxSizePadding; +@property(retain, nonatomic) NSLayoutConstraint *mailboxThreadPadding; // @synthesize mailboxThreadPadding=_mailboxThreadPadding; +@property(retain, nonatomic) NSLayoutConstraint *subjectMailboxPadding; // @synthesize subjectMailboxPadding=_subjectMailboxPadding; +@property(retain, nonatomic) NSLayoutConstraint *subjectMailboxAlignment; // @synthesize subjectMailboxAlignment=_subjectMailboxAlignment; +@property(retain, nonatomic) NSLayoutConstraint *subjectSizeHorizontalPadding; // @synthesize subjectSizeHorizontalPadding=_subjectSizeHorizontalPadding; +@property(retain, nonatomic) NSLayoutConstraint *subjectSizeAlignment; // @synthesize subjectSizeAlignment=_subjectSizeAlignment; +@property(retain, nonatomic) NSLayoutConstraint *sizeDateAlignment; // @synthesize sizeDateAlignment=_sizeDateAlignment; +@property(retain, nonatomic) NSTextField *sizeView; // @synthesize sizeView=_sizeView; +@property(retain, nonatomic) NSTextField *mailboxView; // @synthesize mailboxView=_mailboxView; +@property(retain, nonatomic) NSLayoutConstraint *statusDatePadding; // @synthesize statusDatePadding=_statusDatePadding; +@property(retain, nonatomic) NSLayoutConstraint *statusSenderPadding; // @synthesize statusSenderPadding=_statusSenderPadding; +@property(retain, nonatomic) NSLayoutConstraint *statusAlignment; // @synthesize statusAlignment=_statusAlignment; +@property(retain, nonatomic) NSImageView *statusView; // @synthesize statusView=_statusView; +@property(retain, nonatomic) NSStackView *statusStack; // @synthesize statusStack=_statusStack; +@property(retain, nonatomic) NSButton *replyButton; // @synthesize replyButton=_replyButton; +@property(retain, nonatomic) NSImageView *attachmentView; // @synthesize attachmentView=_attachmentView; +@property(retain, nonatomic) NSImageView *flagStatusView; // @synthesize flagStatusView=_flagStatusView; +@property(retain, nonatomic) NSImageView *unreadView; // @synthesize unreadView=_unreadView; +@property(retain, nonatomic) NSLayoutConstraint *threadSizeVerticalPadding; // @synthesize threadSizeVerticalPadding=_threadSizeVerticalPadding; +@property(retain, nonatomic) NSLayoutConstraint *threadSubjectPadding; // @synthesize threadSubjectPadding=_threadSubjectPadding; +@property(retain, nonatomic) NSLayoutConstraint *threadDatePadding; // @synthesize threadDatePadding=_threadDatePadding; +@property(retain, nonatomic) NSLayoutConstraint *threadMargin; // @synthesize threadMargin=_threadMargin; +@property(retain, nonatomic) ThreadDisclosureTextField *threadDisclosureControl; // @synthesize threadDisclosureControl=_threadDisclosureControl; +@property(retain, nonatomic) NSLayoutConstraint *toCcSubjectSpacing; // @synthesize toCcSubjectSpacing=_toCcSubjectSpacing; +@property(retain, nonatomic) NSLayoutConstraint *toCcSubjectAlignment; // @synthesize toCcSubjectAlignment=_toCcSubjectAlignment; +@property(retain, nonatomic) NSLayoutConstraint *toCcSenderAlignment; // @synthesize toCcSenderAlignment=_toCcSenderAlignment; +@property(retain, nonatomic) _ToCCIndicator *toCcIndicator; // @synthesize toCcIndicator=_toCcIndicator; +@property(retain, nonatomic) NSLayoutConstraint *photoVerticalPosition; // @synthesize photoVerticalPosition=_photoVerticalPosition; +@property(retain, nonatomic) NSLayoutConstraint *photoPadding; // @synthesize photoPadding=_photoPadding; +@property(retain, nonatomic) NSLayoutConstraint *photoMargin; // @synthesize photoMargin=_photoMargin; +@property(retain, nonatomic) NSImageView *photoView; // @synthesize photoView=_photoView; +@property(readonly, nonatomic) NSMutableArray *flagViews; // @synthesize flagViews=_flagViews; +@property(nonatomic) __weak NSTextField *dateView; // @synthesize dateView=_dateView; +@property(nonatomic) __weak NSTextField *snippetView; // @synthesize snippetView=_snippetView; +@property(nonatomic) __weak NSTextField *subjectView; // @synthesize subjectView=_subjectView; +@property(nonatomic) __weak NSTextField *senderView; // @synthesize senderView=_senderView; +- (void).cxx_destruct; +- (void)setThreadDisclosureTarget:(id)arg1; +- (void)setThreadDisclosureAction:(SEL)arg1; +- (void)setReplyTarget:(id)arg1; +- (void)setReplyAction:(SEL)arg1; +- (void)_updateFlags; +- (id)_anchorViewForNewFlag:(double *)arg1; +- (void)_updatePhotoView; +- (void)_updateToCCIndicator; +- (void)_updateThreadControl; +- (void)_updateSizeLabel; +- (void)_updateMailboxLabel; +- (void)_updateReplyButton; +- (void)_updateAttachmentView; +- (void)_updateUnreadIndicator; +- (void)_updateStatusView; +- (void)prepareForReuse; +- (void)viewWillMoveToWindow:(id)arg1; +- (BOOL)acceptsFirstResponder; +- (BOOL)canBecomeKeyView; +@property(nonatomic) unsigned long long numberOfSnippetLines; // @synthesize numberOfSnippetLines=_numberOfSnippetLines; +- (void)setBackgroundStyle:(long long)arg1; +- (void)setObjectValue:(id)arg1; +@property(readonly, nonatomic) unsigned long long threadCount; +@property(readonly, nonatomic) BOOL isOpen; +@property(readonly, nonatomic) NSAttributedString *snippetString; +@property(nonatomic) BOOL showSize; // @synthesize showSize=_showSize; +@property(nonatomic) BOOL showMailbox; // @synthesize showMailbox=_showMailbox; +@property(nonatomic) BOOL showToCc; // @synthesize showToCc=_showToCc; +- (BOOL)isHighlighted; +- (BOOL)isValidMessageDoubleClick:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)dealloc; +- (void)awakeFromNib; +- (void)_richTableCellViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageChildCellView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageChildCellView.h new file mode 100644 index 00000000..94a11a41 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageChildCellView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "RichMessageCellBase.h" + +@interface RichMessageChildCellView : RichMessageCellBase +{ +} + ++ (double)heightWithNumberOfSnippetLines:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageListSortView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageListSortView.h new file mode 100644 index 00000000..6e1b576b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageListSortView.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSVisualEffectView.h" + +@class CALayer, NSPopUpButton; + +@interface RichMessageListSortView : NSVisualEffectView +{ + id _delegate; + CALayer *_dividerLayer; + NSPopUpButton *_sortButton; +} + ++ (id)_dividerColor; +@property(nonatomic) __weak NSPopUpButton *sortButton; // @synthesize sortButton=_sortButton; +@property(retain, nonatomic) CALayer *dividerLayer; // @synthesize dividerLayer=_dividerLayer; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (void)mouseDown:(id)arg1; +- (id)makeBackingLayer; +- (void)setSortTitle:(id)arg1; +- (void)awakeFromNib; +- (void)_richMessageListSortViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageListSortViewProtocol-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageListSortViewProtocol-Protocol.h new file mode 100644 index 00000000..206c9f87 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichMessageListSortViewProtocol-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol RichMessageListSortViewProtocol +- (void)sortViewDidMouseDown:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichTableRowView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichTableRowView.h new file mode 100644 index 00000000..8bc6818f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RichTableRowView.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableRowView.h" + +@class NSTableView; + +@interface RichTableRowView : NSTableRowView +{ + unsigned long long _rowStyle; + NSTableView *_tableView; +} + +@property(nonatomic) __weak NSTableView *tableView; // @synthesize tableView=_tableView; +- (void).cxx_destruct; +@property(nonatomic) unsigned long long rowStyle; +- (void)setEmphasized:(BOOL)arg1; +- (void)setSelected:(BOOL)arg1; +- (void)setBackgroundColor:(id)arg1; +- (id)_backgroundColorForMargin; +- (void)_drawBasicSeparatorInRect:(struct CGRect)arg1 withMargin:(BOOL)arg2; +- (void)drawSeparatorInRect:(struct CGRect)arg1; +- (void)drawBackgroundInRect:(struct CGRect)arg1; +- (BOOL)_isFollowedByExpandedThread; +- (BOOL)_isChildOfThread; +- (BOOL)_isLastThreadChild; +- (BOOL)_isExpandedThreadParent; +- (id)_rowBelow; +- (id)_rowAbove; +- (id)_threadBackgroundColor; +- (id)_separatorColor; +- (BOOL)shouldSetFontSmoothingBackgroundColor; +- (void)_richTableRowViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RolloverButtonCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RolloverButtonCell.h new file mode 100644 index 00000000..136e2cb6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RolloverButtonCell.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MessageListCell.h" + +@interface RolloverButtonCell : MessageListCell +{ + id _target; + SEL _action; +} + +@property(nonatomic) SEL action; // @synthesize action=_action; +@property(nonatomic) __weak id target; // @synthesize target=_target; +- (void).cxx_destruct; +- (BOOL)accessibilityPerformPress; +- (id)accessibilityLabel; +- (BOOL)isAccessibilityEnabled; +- (id)accessibilityRole; +- (id)accessibilityValue; +- (BOOL)isAccessibilitySelectorAllowed:(SEL)arg1; +- (unsigned long long)hitTestForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3; +- (BOOL)_mf_shouldSendAction; +- (BOOL)_sendActionFrom:(id)arg1; +- (BOOL)trackMouse:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3 untilMouseUp:(BOOL)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RolloverContainerView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RolloverContainerView.h new file mode 100644 index 00000000..892a99f6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RolloverContainerView.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSVisualEffectView.h" + +@class CAShapeLayer; + +@interface RolloverContainerView : NSVisualEffectView +{ + CAShapeLayer *_backgroundMaskLayer; + struct CGRect _highightRect; +} + +@property(nonatomic) __weak CAShapeLayer *backgroundMaskLayer; // @synthesize backgroundMaskLayer=_backgroundMaskLayer; +- (void).cxx_destruct; +@property(nonatomic) struct CGRect highightRect; // @synthesize highightRect=_highightRect; +- (void)layoutSublayersOfLayer:(id)arg1; +- (id)makeBackingLayer; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RulesPreferences.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RulesPreferences.h new file mode 100644 index 00000000..b6dcfd43 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/RulesPreferences.h @@ -0,0 +1,162 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "MailTableViewDelegate.h" +#import "NSTableViewDataSource.h" +#import "NSWindowDelegate.h" +#import "SoundPopUpButtonDelegate.h" + +@class AppleScriptPopUpButton, CriteriaUIHelper, MFMessageRule, MUIAddressField, MailTableView, MailboxesChooser, NSButton, NSMenu, NSMutableArray, NSPanel, NSPopUpButton, NSScrollView, NSString, NSTextField, NSTextView, NSView, SoundPopUpButton; + +@interface RulesPreferences : NSPreferencesModule +{ + NSMutableArray *_actionViews; + BOOL _colorPanelShouldBeHidden; + BOOL _isDuplicatingRule; + BOOL _hasPendingChanges; + MUIAddressField *_forwardRecipientsField; + MUIAddressField *_redirectRecipientsField; + MailTableView *_rulesTable; + NSButton *_editButton; + NSButton *_duplicateButton; + NSButton *_removeButton; + NSPanel *_ruleDetailPanel; + NSTextField *_ruleNameField; + NSButton *_ruleHelpButton; + NSMenu *_actionMenu; + NSScrollView *_actionContainer; + NSView *_soundActionView; + NSView *_colorActionView; + NSView *_transferActionView; + NSView *_makeCopyActionView; + NSView *_autoReplyActionView; + NSView *_autoForwardActionView; + NSView *_autoRedirectActionView; + NSView *_markDeletedActionView; + NSView *_markAsReadActionView; + NSView *_markAsFlaggedActionView; + NSView *_stopEvaluatingRulesActionView; + NSView *_runAppleScriptActionView; + NSView *_notifyUserActionView; + NSView *_sendNotificationActionView; + NSPopUpButton *_colorPopup; + NSPopUpButton *_colorStylePopup; + NSPopUpButton *_flagColorPopup; + SoundPopUpButton *_soundPopup; + AppleScriptPopUpButton *_appleScriptPopup; + NSPanel *_responseMessageTextPanel; + NSTextView *_responseMessageTextView; + CriteriaUIHelper *_criteriaUIHelper; + MailboxesChooser *_destinationChooser; + MailboxesChooser *_makeCopyDestinationChooser; + long long _currentlySelectedRow; + MFMessageRule *_ruleBeingValidated; + MFMessageRule *_ruleBeingEdited; +} + +@property(nonatomic) BOOL hasPendingChanges; // @synthesize hasPendingChanges=_hasPendingChanges; +@property(nonatomic) BOOL isDuplicatingRule; // @synthesize isDuplicatingRule=_isDuplicatingRule; +@property(retain, nonatomic) MFMessageRule *ruleBeingEdited; // @synthesize ruleBeingEdited=_ruleBeingEdited; +@property(retain, nonatomic) MFMessageRule *ruleBeingValidated; // @synthesize ruleBeingValidated=_ruleBeingValidated; +@property(nonatomic) long long currentlySelectedRow; // @synthesize currentlySelectedRow=_currentlySelectedRow; +@property(nonatomic) BOOL colorPanelShouldBeHidden; // @synthesize colorPanelShouldBeHidden=_colorPanelShouldBeHidden; +@property(retain, nonatomic) MailboxesChooser *makeCopyDestinationChooser; // @synthesize makeCopyDestinationChooser=_makeCopyDestinationChooser; +@property(retain, nonatomic) MailboxesChooser *destinationChooser; // @synthesize destinationChooser=_destinationChooser; +@property(retain, nonatomic) CriteriaUIHelper *criteriaUIHelper; // @synthesize criteriaUIHelper=_criteriaUIHelper; +@property(nonatomic) NSTextView *responseMessageTextView; // @synthesize responseMessageTextView=_responseMessageTextView; +@property(retain, nonatomic) NSPanel *responseMessageTextPanel; // @synthesize responseMessageTextPanel=_responseMessageTextPanel; +@property(nonatomic) __weak AppleScriptPopUpButton *appleScriptPopup; // @synthesize appleScriptPopup=_appleScriptPopup; +@property(nonatomic) __weak SoundPopUpButton *soundPopup; // @synthesize soundPopup=_soundPopup; +@property(nonatomic) __weak NSPopUpButton *flagColorPopup; // @synthesize flagColorPopup=_flagColorPopup; +@property(nonatomic) __weak NSPopUpButton *colorStylePopup; // @synthesize colorStylePopup=_colorStylePopup; +@property(nonatomic) __weak NSPopUpButton *colorPopup; // @synthesize colorPopup=_colorPopup; +@property(retain, nonatomic) NSView *sendNotificationActionView; // @synthesize sendNotificationActionView=_sendNotificationActionView; +@property(retain, nonatomic) NSView *notifyUserActionView; // @synthesize notifyUserActionView=_notifyUserActionView; +@property(retain, nonatomic) NSView *runAppleScriptActionView; // @synthesize runAppleScriptActionView=_runAppleScriptActionView; +@property(retain, nonatomic) NSView *stopEvaluatingRulesActionView; // @synthesize stopEvaluatingRulesActionView=_stopEvaluatingRulesActionView; +@property(retain, nonatomic) NSView *markAsFlaggedActionView; // @synthesize markAsFlaggedActionView=_markAsFlaggedActionView; +@property(retain, nonatomic) NSView *markAsReadActionView; // @synthesize markAsReadActionView=_markAsReadActionView; +@property(retain, nonatomic) NSView *markDeletedActionView; // @synthesize markDeletedActionView=_markDeletedActionView; +@property(retain, nonatomic) NSView *autoRedirectActionView; // @synthesize autoRedirectActionView=_autoRedirectActionView; +@property(retain, nonatomic) NSView *autoForwardActionView; // @synthesize autoForwardActionView=_autoForwardActionView; +@property(retain, nonatomic) NSView *autoReplyActionView; // @synthesize autoReplyActionView=_autoReplyActionView; +@property(retain, nonatomic) NSView *makeCopyActionView; // @synthesize makeCopyActionView=_makeCopyActionView; +@property(retain, nonatomic) NSView *transferActionView; // @synthesize transferActionView=_transferActionView; +@property(retain, nonatomic) NSView *colorActionView; // @synthesize colorActionView=_colorActionView; +@property(retain, nonatomic) NSView *soundActionView; // @synthesize soundActionView=_soundActionView; +@property(nonatomic) __weak NSScrollView *actionContainer; // @synthesize actionContainer=_actionContainer; +@property(retain, nonatomic) NSMenu *actionMenu; // @synthesize actionMenu=_actionMenu; +@property(nonatomic) __weak NSButton *ruleHelpButton; // @synthesize ruleHelpButton=_ruleHelpButton; +@property(nonatomic) __weak NSTextField *ruleNameField; // @synthesize ruleNameField=_ruleNameField; +@property(retain, nonatomic) NSPanel *ruleDetailPanel; // @synthesize ruleDetailPanel=_ruleDetailPanel; +@property(nonatomic) __weak NSButton *removeButton; // @synthesize removeButton=_removeButton; +@property(nonatomic) __weak NSButton *duplicateButton; // @synthesize duplicateButton=_duplicateButton; +@property(nonatomic) __weak NSButton *editButton; // @synthesize editButton=_editButton; +@property(nonatomic) __weak MailTableView *rulesTable; // @synthesize rulesTable=_rulesTable; +@property(nonatomic) __weak MUIAddressField *redirectRecipientsField; // @synthesize redirectRecipientsField=_redirectRecipientsField; +@property(nonatomic) __weak MUIAddressField *forwardRecipientsField; // @synthesize forwardRecipientsField=_forwardRecipientsField; +- (void).cxx_destruct; +- (void)_openAppleScriptDirectoryInFinder; +- (id)titleForSoundFile:(id)arg1; +- (void)_accountMailboxListingDidChange:(id)arg1; +- (void)actionPopupChanged:(id)arg1; +- (void)_actionPopupWillPopup:(id)arg1; +- (void)mailboxSelected:(id)arg1; +- (void)flagsToApplyChanged:(id)arg1; +- (void)responseMessageCancelClicked:(id)arg1; +- (void)responseMessageOKClicked:(id)arg1; +- (void)setResponseMessageClicked:(id)arg1; +- (void)colorStyleChanged:(id)arg1; +- (void)colorPicked:(id)arg1; +- (void)colorChanged:(id)arg1; +- (void)cancelClicked:(id)arg1; +- (void)okClicked:(id)arg1; +- (void)runRuleDetailPanelForRule:(id)arg1 inWindow:(id)arg2 withHelpButtonTag:(long long)arg3; +- (void)_validateActionMenuItem:(id)arg1 currentTag:(long long)arg2; +- (void)addAction:(id)arg1; +- (void)_configureActionsForRule:(id)arg1; +- (void)_configureFlagColorPopup; +- (void)_configureColorPopupForColorStyle:(long long)arg1; +- (void)_addActionForTag:(long long)arg1 atIndex:(unsigned long long)arg2; +- (id)_actionViewForTag:(long long)arg1; +- (void)removeAction:(id)arg1; +- (void)_setOtherColor:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)_validateDrag:(id)arg1 proposedRow:(long long)arg2 dragOperation:(unsigned long long)arg3; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (BOOL)mailTableView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (int)mailTableView:(id)arg1 highlightStyleForRow:(long long)arg2 inRect:(struct CGRect *)arg3 color:(id *)arg4; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)removeRule:(id)arg1; +- (void)editRule:(id)arg1; +- (void)duplicateRule:(id)arg1; +- (void)createRule:(id)arg1; +- (void)saveChanges; +- (void)initializeFromDefaults; +- (void)_validateButtonState; +- (id)imageForPreferenceNamed:(id)arg1; +- (id)preferencesNibName; +- (id)viewForPreferenceNamed:(id)arg1; +- (void)awakeFromNib; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SGTSearchFieldQueryScopeDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SGTSearchFieldQueryScopeDelegate-Protocol.h new file mode 100644 index 00000000..a149637b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SGTSearchFieldQueryScopeDelegate-Protocol.h @@ -0,0 +1,17 @@ +/* + * 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" + +@protocol SGTSearchFieldQueryScopeDelegate +- (id)searchFieldWidenScopeMenuSpinnerTitleString:(id)arg1; +- (id)searchFieldWidenScopeMenuItemTitleString:(id)arg1; +- (id)searchFieldWidenScopeMenuTitleString:(id)arg1; +- (void)searchFieldWidenQueryScope:(id)arg1; +- (BOOL)searchField:(id)arg1 hasResultsForQuery:(id)arg2; +- (BOOL)searchFieldUsesRestrictedQueryScope:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SMTPSettings.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SMTPSettings.h new file mode 100644 index 00000000..b483c6b6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SMTPSettings.h @@ -0,0 +1,70 @@ +/* + * 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 "AccountStatusDataSourceDelegate.h" +#import "NSTableViewDataSource.h" + +@class AccountStatusDataSource, MFSMTPAccount, NSArray, NSArrayController, NSMutableArray, NSMutableDictionary, NSPanel, NSPopUpButton, NSSegmentedControl, NSString, NSTableView; + +@interface SMTPSettings : NSObject +{ + NSMutableArray *_accountsInConflict; + NSMutableDictionary *_cachedAccountEmployment; + NSMutableDictionary *_cachedAccountEmploymentStrings; + BOOL _didRegisterForNotifications; + NSArray *_deliveryAccounts; + NSArrayController *_deliveryAccountsController; + NSPanel *_panel; + NSTableView *_accountTable; + NSSegmentedControl *_addRemoveAccountControl; + NSPopUpButton *_tlsCertificatePopUp; + MFSMTPAccount *_selectedDeliveryAccount; + AccountStatusDataSource *_deliveryASDS; +} + ++ (id)sharedPanel; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (void)initialize; +@property(nonatomic) BOOL didRegisterForNotifications; // @synthesize didRegisterForNotifications=_didRegisterForNotifications; +@property(readonly, nonatomic) AccountStatusDataSource *deliveryASDS; // @synthesize deliveryASDS=_deliveryASDS; +@property(retain, nonatomic) MFSMTPAccount *selectedDeliveryAccount; // @synthesize selectedDeliveryAccount=_selectedDeliveryAccount; +@property(nonatomic) __weak NSPopUpButton *tlsCertificatePopUp; // @synthesize tlsCertificatePopUp=_tlsCertificatePopUp; +@property(nonatomic) __weak NSSegmentedControl *addRemoveAccountControl; // @synthesize addRemoveAccountControl=_addRemoveAccountControl; +@property(nonatomic) __weak NSTableView *accountTable; // @synthesize accountTable=_accountTable; +@property(retain, nonatomic) NSPanel *panel; // @synthesize panel=_panel; +@property(retain, nonatomic) NSArrayController *deliveryAccountsController; // @synthesize deliveryAccountsController=_deliveryAccountsController; +@property(copy, nonatomic) NSArray *deliveryAccounts; // @synthesize deliveryAccounts=_deliveryAccounts; +- (void).cxx_destruct; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (void)_restoreMailAccountDefaultAccounts; +- (void)_recacheAccountEmployment; +- (void)_removeInvalidAccounts; +- (id)_defaultColumnSortDescriptor; +- (BOOL)_checkForConflicts; +- (void)_accountInfoDidChange:(id)arg1; +- (BOOL)_validateAccounts; +- (void)_updateTLSCertificateForOldAccount:(id)arg1 newAccount:(id)arg2; +- (void)_syncBindings; +- (void)dismissPanel:(id)arg1; +- (void)addRemoveAccountClicked:(id)arg1; +- (void)runSheetRelativeToWindow:(id)arg1 selectedAccount:(id)arg2 didEndDelegate:(id)arg3; +- (void)_updateEnableRemoveAccountControl; +- (void)_updateEnableAddAccountControl; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)awakeFromNib; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ScriptableMessageTextStorage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ScriptableMessageTextStorage.h new file mode 100644 index 00000000..4092d28e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ScriptableMessageTextStorage.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSConcreteTextStorage.h" + +@interface ScriptableMessageTextStorage : NSConcreteTextStorage +{ +} + +- (void)setAttributes:(id)arg1 range:(struct _NSRange)arg2; +- (void)addAttribute:(id)arg1 value:(id)arg2 range:(struct _NSRange)arg3; +- (void)replaceCharactersInRange:(struct _NSRange)arg1 withAttributedString:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SegmentedToolbarItem.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SegmentedToolbarItem.h new file mode 100644 index 00000000..2c744992 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SegmentedToolbarItem.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItemGroup.h" + +@interface SegmentedToolbarItem : NSToolbarItemGroup +{ + BOOL _disableWidthCalculation; +} + +@property(nonatomic) BOOL disableWidthCalculation; // @synthesize disableWidthCalculation=_disableWidthCalculation; +- (void)setMenu:(id)arg1 forSegment:(long long)arg2; +- (void)setToolTip:(id)arg1 forSegment:(long long)arg2; +- (void)setTag:(long long)arg1 forSegment:(long long)arg2; +- (void)setTarget:(id)arg1 forSegment:(long long)arg2; +- (id)targetForSegment:(long long)arg1; +- (void)setAction:(SEL)arg1 forSegment:(long long)arg2; +- (SEL)actionForSegment:(long long)arg1; +- (void)setPaletteLabel:(id)arg1 forSegment:(long long)arg2; +- (id)paletteLabelForSegment:(long long)arg1; +- (void)setInsideLabel:(id)arg1 forSegment:(long long)arg2; +- (id)insideLabelForSegment:(long long)arg1; +- (void)setAlternateLabel:(id)arg1 forSegment:(long long)arg2; +- (void)setLabel:(id)arg1 forSegment:(long long)arg2; +- (id)labelForSegment:(long long)arg1; +- (id)forwardingTargetForSelector:(SEL)arg1; +@property(nonatomic) long long segmentCount; +- (void)_controlAction:(id)arg1; +- (id)control; +- (void)validate; +- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)initWithItemIdentifier:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SegmentedToolbarItemSegmentItem.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SegmentedToolbarItemSegmentItem.h new file mode 100644 index 00000000..4e494850 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SegmentedToolbarItemSegmentItem.h @@ -0,0 +1,29 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@class SegmentedToolbarItem; + +@interface SegmentedToolbarItemSegmentItem : NSToolbarItem +{ + SegmentedToolbarItem *_parent; + long long _segmentNumber; +} + +@property(nonatomic) long long segmentNumber; // @synthesize segmentNumber=_segmentNumber; +@property(nonatomic) __weak SegmentedToolbarItem *parent; // @synthesize parent=_parent; +- (void).cxx_destruct; +- (void)setMenu:(id)arg1; +- (void)setImage:(id)arg1; +- (void)_setTag:(long long)arg1; +- (void)setTag:(long long)arg1; +- (void)_setToolTip:(id)arg1; +- (void)setToolTip:(id)arg1; +- (id)menuFormRepresentation; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SegmentedToolbarItemSegmentedCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SegmentedToolbarItemSegmentedCell.h new file mode 100644 index 00000000..eab047d5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SegmentedToolbarItemSegmentedCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "LazyMenuSegmentedCell.h" + +@interface SegmentedToolbarItemSegmentedCell : LazyMenuSegmentedCell +{ +} + +- (double)_menuDelayTimeForSegment:(long long)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SelfAnimatingProgressIndicator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SelfAnimatingProgressIndicator.h new file mode 100644 index 00000000..8f14ea07 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SelfAnimatingProgressIndicator.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSProgressIndicator.h" + +@interface SelfAnimatingProgressIndicator : NSProgressIndicator +{ +} + +- (void)setIndeterminate:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SignImageValueTransformer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SignImageValueTransformer.h new file mode 100644 index 00000000..0f34a8a1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SignImageValueTransformer.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSValueTransformer.h" + +@interface SignImageValueTransformer : NSValueTransformer +{ +} + ++ (Class)transformedValueClass; ++ (void)initialize; +- (id)transformedValue:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SignTooTipValueTransformer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SignTooTipValueTransformer.h new file mode 100644 index 00000000..ac45e589 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SignTooTipValueTransformer.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSValueTransformer.h" + +@interface SignTooTipValueTransformer : NSValueTransformer +{ +} + ++ (Class)transformedValueClass; +- (id)transformedValue:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Signature.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Signature.h new file mode 100644 index 00000000..4ca79ec1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Signature.h @@ -0,0 +1,55 @@ +/* + * 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 "NSCopying.h" + +@class MFSyncedFile, NSData, NSString; + +@interface Signature : NSObject +{ + NSString *_name; + NSData *_webArchiveData; + BOOL _isRich; + BOOL _isSavedAsRich; + BOOL _isDirty; + NSString *_uniqueId; + MFSyncedFile *_syncedFile; +} + +@property(readonly, nonatomic) MFSyncedFile *syncedFile; // @synthesize syncedFile=_syncedFile; +@property(nonatomic) BOOL isDirty; // @synthesize isDirty=_isDirty; +@property(readonly, nonatomic) BOOL isSavedAsRich; // @synthesize isSavedAsRich=_isSavedAsRich; +@property(readonly, copy, nonatomic) NSString *uniqueId; // @synthesize uniqueId=_uniqueId; +- (void).cxx_destruct; +- (id)signaturePath; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +@property(nonatomic) BOOL isRich; +- (void)setWebArchive:(id)arg1; +- (id)webArchive; +- (id)_sanitizeSignatureFileData:(id)arg1; +- (void)_makeWebArchiveDataIfNeeded; +- (id)webArchiveData; +- (void)reloadFromDisk; +@property(copy, nonatomic) NSString *name; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)dictionaryRepresentation; +- (void)removeContentFromDisk; +- (BOOL)saveContentToDisk; +- (id)initWithDictionary:(id)arg1; +- (id)init; +- (id)initWithName:(id)arg1; +- (id)initWithName:(id)arg1 uniqueId:(id)arg2; +- (id)objectSpecifier; +- (void)setSignatureContents:(id)arg1; +- (id)signatureContents; +- (void)setSignatureName:(id)arg1; +- (id)signatureName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SignatureBundle.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SignatureBundle.h new file mode 100644 index 00000000..bc27c3fc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SignatureBundle.h @@ -0,0 +1,67 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MVMailBundle.h" + +@class MFSyncedFile, NSMutableArray, NSMutableDictionary; + +@interface SignatureBundle : MVMailBundle +{ + NSMutableDictionary *_signatures; + NSMutableArray *_accounts; + NSMutableDictionary *_lastDefaultSignatures; + BOOL _isDirty; + MFSyncedFile *_syncedFile; +} + ++ (id)signaturesFolderPath; ++ (id)allSignaturesAccount; ++ (void)initialize; +@property(readonly, nonatomic) MFSyncedFile *syncedFile; // @synthesize syncedFile=_syncedFile; +@property(nonatomic) BOOL isDirty; // @synthesize isDirty=_isDirty; +- (void).cxx_destruct; +- (void)configurePopUpButton:(id)arg1 forAccount:(id)arg2 defaultSignature:(id)arg3 selectionMethod:(int)arg4 showAccount:(BOOL)arg5; +- (void)setPlaceSignatureAboveQuotedText:(BOOL)arg1; +- (BOOL)placeSignatureAboveQuotedText; +- (void)unsetShowsComposeAccessoryView; +- (void)setShowsComposeAccessoryView:(BOOL)arg1; +- (BOOL)showComposeAccessoryView; +- (BOOL)showComposeAccessoryView:(char *)arg1; +- (id)activeSignatureWithId:(id)arg1; +- (id)activeSignatureWithName:(id)arg1; +- (void)setSignatureSelectionMethod:(int)arg1 forAccount:(id)arg2; +- (int)signatureSelectionMethodForAccount:(id)arg1; +- (id)defaultSignatureForAccount:(id)arg1; +- (void)setDefaultSignature:(id)arg1 forAccount:(id)arg2; +- (void)_setDefaultSignatureId:(id)arg1 forAccountId:(id)arg2; +- (void)_signatureBundleChanged:(id)arg1; +- (void)_signatureChanged:(id)arg1; +- (id)_accountsMap; +- (id)_serializedSignatures; +- (void)saveChangesToDisk; +- (void)_signatureNameChanged:(id)arg1; +- (void)addSignature:(id)arg1; +- (void)insertSignature:(id)arg1 atIndex:(unsigned long long)arg2; +- (void)insertSignature:(id)arg1 atIndex:(unsigned long long)arg2 forAccount:(id)arg3; +- (void)removeSignatureAtIndex:(unsigned long long)arg1 forAccount:(id)arg2; +- (void)_removeSignature:(id)arg1; +- (void)removeSignatureAtIndex:(unsigned long long)arg1; +- (id)signatureAtIndex:(unsigned long long)arg1; +- (id)signatureAtIndex:(unsigned long long)arg1 forAccount:(id)arg2; +- (id)signaturesForAccount:(id)arg1; +- (unsigned long long)numberOfSignatures; +- (id)_fixAccountIdsInPlist:(id)arg1; +- (void)loadSignaturesFromDisk; +- (id)signatures; +- (void)_loadAllSignatures:(id)arg1 forAccounts:(id)arg2; +- (BOOL)updateAccountList; +- (id)signatureAccounts; +- (void)_loadLastDefaultSignatures; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SignaturePreferences.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SignaturePreferences.h new file mode 100644 index 00000000..58eee3a8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SignaturePreferences.h @@ -0,0 +1,134 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "EditingMessageWebViewDelegate.h" +#import "MVTerminationHandler.h" + +@class ColorBackgroundView, DeletingTableView, EditingMessageWebView, EditingWebMessageController, HyperlinkEditor, MFMailAccount, NSButton, NSPopUpButton, NSSegmentedControl, NSString, NSTableView, NSTextField, WebArchive; + +@interface SignaturePreferences : NSPreferencesModule +{ + BOOL _addingNewSignature; + BOOL _appIsTerminating; + BOOL _loadedInitialHTML; + BOOL _currentSignatureHasChanges; + DeletingTableView *_signaturesTable; + NSTableView *_accountsTable; + NSPopUpButton *_selectPopup; + ColorBackgroundView *_webViewBackground; + EditingMessageWebView *_webView; + NSButton *_textRichnessButton; + NSTextField *_textRichnessMessageField; + NSSegmentedControl *_createOrRemoveButton; + NSButton *_placeSignatureAboveQuote; + EditingWebMessageController *_controller; + MFMailAccount *_selectedAccount; + MFMailAccount *_allSignaturesAccount; + NSString *_defaultFontName; + WebArchive *_savedWebArchive; + HyperlinkEditor *_hyperlinkEditor; +} + +@property(nonatomic) BOOL currentSignatureHasChanges; // @synthesize currentSignatureHasChanges=_currentSignatureHasChanges; +@property(retain, nonatomic) HyperlinkEditor *hyperlinkEditor; // @synthesize hyperlinkEditor=_hyperlinkEditor; +@property(retain, nonatomic) WebArchive *savedWebArchive; // @synthesize savedWebArchive=_savedWebArchive; +@property(retain, nonatomic) NSString *defaultFontName; // @synthesize defaultFontName=_defaultFontName; +@property(nonatomic) __weak MFMailAccount *allSignaturesAccount; // @synthesize allSignaturesAccount=_allSignaturesAccount; +@property(retain, nonatomic) MFMailAccount *selectedAccount; // @synthesize selectedAccount=_selectedAccount; +@property(nonatomic) BOOL loadedInitialHTML; // @synthesize loadedInitialHTML=_loadedInitialHTML; +@property(nonatomic) BOOL appIsTerminating; // @synthesize appIsTerminating=_appIsTerminating; +@property(nonatomic) BOOL addingNewSignature; // @synthesize addingNewSignature=_addingNewSignature; +@property(retain, nonatomic) EditingWebMessageController *controller; // @synthesize controller=_controller; +@property(nonatomic) __weak NSButton *placeSignatureAboveQuote; // @synthesize placeSignatureAboveQuote=_placeSignatureAboveQuote; +@property(nonatomic) __weak NSSegmentedControl *createOrRemoveButton; // @synthesize createOrRemoveButton=_createOrRemoveButton; +@property(nonatomic) __weak NSTextField *textRichnessMessageField; // @synthesize textRichnessMessageField=_textRichnessMessageField; +@property(nonatomic) __weak NSButton *textRichnessButton; // @synthesize textRichnessButton=_textRichnessButton; +@property(nonatomic) __weak EditingMessageWebView *webView; // @synthesize webView=_webView; +@property(nonatomic) __weak ColorBackgroundView *webViewBackground; // @synthesize webViewBackground=_webViewBackground; +@property(nonatomic) __weak NSPopUpButton *selectPopup; // @synthesize selectPopup=_selectPopup; +@property(nonatomic) __weak NSTableView *accountsTable; // @synthesize accountsTable=_accountsTable; +@property(nonatomic) __weak DeletingTableView *signaturesTable; // @synthesize signaturesTable=_signaturesTable; +- (void).cxx_destruct; +- (void)setAllowsRichText:(BOOL)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)removeSelectedLink; +- (void)editLink; +- (BOOL)selectionIsInList; +- (void)insertBulletedList:(id)arg1; +- (void)insertNumberedList:(id)arg1; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (BOOL)allowQuoting; +- (void)splitView:(id)arg1 resizeSubviewsWithOldSize:(struct CGSize)arg2; +- (double)splitView:(id)arg1 constrainMaxCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (double)splitView:(id)arg1 constrainMinCoordinate:(double)arg2 ofSubviewAt:(long long)arg3; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (BOOL)control:(id)arg1 textView:(id)arg2 doCommandBySelector:(SEL)arg3; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (id)truncatingAttributes; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)_displaySelectedSignatureDetails; +- (id)_webArchiveForEditedSignature; +- (void)webView:(id)arg1 didFailProvisionalLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didFailLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didAddMailAttachment:(id)arg2; +- (id)webView:(id)arg1 shouldReplaceSelectionWithWebArchive:(id)arg2 givenAction:(long long)arg3; +- (BOOL)webView:(id)arg1 shouldInsertNode:(id)arg2 replacingDOMRange:(id)arg3 givenAction:(long long)arg4; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)_updateWebView; +- (BOOL)_validateValuesInUI; +- (void)placeSignatureAboveQuotedText:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)_updatePopup; +- (void)webViewDidChange:(id)arg1; +- (void)webViewDidChangeTypingStyle:(id)arg1; +- (void)changeSignatureRichness:(id)arg1; +- (BOOL)allowsRichText; +- (void)_removeSignature:(id)arg1; +- (void)deleteKey:(id)arg1; +- (BOOL)_endEditingOfSignatureOkayToReload:(BOOL)arg1 needsToReload:(char *)arg2; +- (id)_defaultSignatureContentForSelectedAccount; +- (void)_createSignature:(id)arg1; +- (void)createOrRemoveSignature:(id)arg1; +- (void)_defaultFontMayHaveChanged:(id)arg1; +- (void)_determineDefaultFontName; +- (void)awakeFromNib; +- (void)_accountsDidChange:(id)arg1; +- (void)_unregisterForNotifications; +- (void)_registerForNotifications; +- (BOOL)preferencesWindowShouldClose; +- (void)moduleWillBeRemoved; +- (BOOL)moduleCanBeRemoved; +- (void)moduleWasInstalled; +- (void)willBeDisplayed; +- (void)nowWouldBeAGoodTimeToTerminate:(id)arg1; +- (void)saveChanges; +- (void)initializeFromDefaults; +- (void)defaultSignatureChanged:(id)arg1; +- (void)_validateButtonState; +- (id)imageForPreferenceNamed:(id)arg1; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SingleMessageViewer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SingleMessageViewer.h new file mode 100644 index 00000000..45af5a5d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SingleMessageViewer.h @@ -0,0 +1,133 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MessageViewer.h" + +#import "MVSelectionOwner.h" +#import "MailFullScreenWindowDelegate.h" +#import "NSDraggingSource.h" +#import "NSToolbarDelegate.h" + +@class LoadingOverlay, MCMessage, NSArray, NSOperation, NSSet, NSString; + +@interface SingleMessageViewer : MessageViewer +{ + BOOL _nibLoaded; + BOOL _nextDeleteShouldMoveToTrash; + MCMessage *_initialMessage; + NSOperation *_proxyIconOperation; + NSOperation *_subjectLoadOperation; + NSArray *_selectedMailboxes; + NSSet *_hiddenCopies; + NSArray *_messagesToDelete; + LoadingOverlay *_loadingOverlay; +} + ++ (void)restoreAllViewersFromDefaults; ++ (void)restoreWindowWithIdentifier:(id)arg1 state:(id)arg2 completionHandler:(id)arg3; ++ (void)_mailApplicationDidFinishLaunching:(id)arg1; ++ (id)_createWithSavedAttributes:(id)arg1; ++ (id)_messagesFromDictionary:(id)arg1; ++ (id)_createWithMessage:(id)arg1 hiddenCopies:(id)arg2 showRelatedMessages:(BOOL)arg3 expandedSelectedMailboxes:(id)arg4 andAttributes:(id)arg5; ++ (id)newDefaultMessageViewer; ++ (id)toolbarIdentifierForMessageType:(BOOL)arg1 fullScreen:(BOOL)arg2; ++ (id)toolbarIdentifier; ++ (id)viewerForMessage:(id)arg1 hiddenCopies:(id)arg2 showRelatedMessages:(BOOL)arg3 expandedSelectedMailboxes:(id)arg4; ++ (id)viewerForPendingMessage; ++ (id)existingSingleMessageViewerForMessage:(id)arg1; +@property(retain, nonatomic) LoadingOverlay *loadingOverlay; // @synthesize loadingOverlay=_loadingOverlay; +@property(retain, nonatomic) NSArray *messagesToDelete; // @synthesize messagesToDelete=_messagesToDelete; +@property(nonatomic) BOOL nextDeleteShouldMoveToTrash; // @synthesize nextDeleteShouldMoveToTrash=_nextDeleteShouldMoveToTrash; +@property(readonly, nonatomic) NSSet *hiddenCopies; // @synthesize hiddenCopies=_hiddenCopies; +@property(nonatomic) BOOL nibLoaded; // @synthesize nibLoaded=_nibLoaded; +@property(retain, nonatomic) NSArray *selectedMailboxes; // @synthesize selectedMailboxes=_selectedMailboxes; +@property(retain, nonatomic) NSOperation *subjectLoadOperation; // @synthesize subjectLoadOperation=_subjectLoadOperation; +@property(retain, nonatomic) NSOperation *proxyIconOperation; // @synthesize proxyIconOperation=_proxyIconOperation; +@property(retain, nonatomic) MCMessage *initialMessage; // @synthesize initialMessage=_initialMessage; +- (void).cxx_destruct; +- (struct CGRect)nonToolbarWindowContentRect; +- (void)revealMessage:(id)arg1; +- (void)setShouldDisplayShowInMailboxLink:(BOOL)arg1; +- (id)messageStore; +- (id)currentDisplayedMessage; +- (void)selectMessages:(id)arg1; +- (id)selectionExpandingThreadsAndHiddenCopies:(BOOL)arg1; +- (id)selection; +- (BOOL)_replaceWithEditorForType:(unsigned long long)arg1 action:(SEL)arg2; +- (void)editorDidLoad:(id)arg1; +- (BOOL)send:(id)arg1; +- (void)redirectMessage:(id)arg1; +- (void)forwardMessage:(id)arg1; +- (void)replyToOriginalSender:(id)arg1; +- (void)replyAllMessage:(id)arg1; +- (void)replyMessage:(id)arg1; +- (void)archiveMessages:(id)arg1; +- (void)undeleteMessagesAllowUndo:(BOOL)arg1; +- (void)undeleteMessages:(id)arg1; +- (void)_reallyDeleteMessages:(id)arg1 allowingMoveToTrash:(BOOL)arg2; +- (void)fullScreenDeleteAnimationFinished; +- (void)deleteMessages:(id)arg1 allowingMoveToTrash:(BOOL)arg2; +- (BOOL)_displayingSingletonMessage; +- (void)deleteMessages:(id)arg1; +- (void)_noMessagesLeftToDisplay:(id)arg1; +- (void)_messagesCompacted:(id)arg1; +- (void)_messageFlagsDidChange:(id)arg1; +- (void)_messagesWereRemoved:(id)arg1; +- (BOOL)shouldDeleteMessagesGivenCurrentState; +- (BOOL)shouldDeleteMessageGivenCurrentState; +- (BOOL)_isViewingMessage:(id)arg1; +- (void)updateToolbar; +- (void)setupToolbar; +- (void)selectMailbox:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (id)selectedMessages; +- (void)resignAsSelectionOwner; +- (void)takeOverAsSelectionOwner; +- (void)saveDefaultWindowState; +- (id)dictionaryRepresentation; +- (void)_restoreViewer; +- (void)showAndMakeKey:(BOOL)arg1; +- (void)_setupFromAttributes; +- (void)_adjustNewSingleViewerWindowFrame; +- (void)_setWindowFrameFromDefaults; +- (id)_messageIDDictionaryRepresentationOf:(id)arg1; +- (void)_addMessageIDsFrom:(id)arg1 toDictionary:(id)arg2; +- (id)expandedSelectedMailboxesAllowingSearch; +- (id)expandedSelectedMailboxes; +- (id)messagesIncludingHiddenCopies:(id)arg1; +- (void)dealloc; +- (void)initFullScreenController; +- (id)initWithMailboxes:(id)arg1; +- (id)initPlainWithAttributes:(id)arg1; +- (void)_setUpForMessage:(id)arg1 showRelatedMessages:(BOOL)arg2; +- (void)setMessageToView:(id)arg1; +- (id)initForViewingMessage:(id)arg1 hiddenCopies:(id)arg2 showRelatedMessages:(BOOL)arg3 expandedSelectedMailboxes:(id)arg4 withAttributes:(id)arg5; +- (void)loadMessageWindowNib; +- (void)_openEnclosingMailbox:(id)arg1; +- (BOOL)window:(id)arg1 shouldPopUpDocumentPathMenu:(id)arg2; +- (unsigned long long)draggingSession:(id)arg1 sourceOperationMaskForDraggingContext:(long long)arg2; +- (BOOL)window:(id)arg1 shouldDragDocumentWithEvent:(id)arg2 from:(struct CGPoint)arg3 withPasteboard:(id)arg4; +- (id)filenameToDrag:(id)arg1; +- (void)_reallyUpdateWindowTitle:(id)arg1; +- (void)updateWindowTitle:(id)arg1; +- (void)_updateWindowProxy:(id)arg1; +- (void)windowDidMove:(id)arg1; +- (void)windowDidResize:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (BOOL)windowShouldCloseForDelete; +- (BOOL)windowShouldClose:(id)arg1; +- (void)restoreFrame; +- (BOOL)mailFullScreenWindowShouldClose:(id)arg1; +- (id)windowForMailFullScreen; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SlidingAnimation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SlidingAnimation.h new file mode 100644 index 00000000..4fdd725c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SlidingAnimation.h @@ -0,0 +1,38 @@ +/* + * 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" + +@class NSMutableDictionary; + +@interface SlidingAnimation : NSObject +{ + NSMutableDictionary *_views; + BOOL _isSliding; + BOOL _isPaused; + id _delegate; +} + +@property(nonatomic) BOOL isPaused; // @synthesize isPaused=_isPaused; +@property(nonatomic) BOOL isSliding; // @synthesize isSliding=_isSliding; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (id)_runLoopModesForAnimation; +- (void)resume; +- (void)pause; +- (void)stop; +- (void)stopView:(id)arg1; +- (struct CGRect)destinationForView:(id)arg1; +- (void)_sendViewToDestination:(id)arg1; +- (void)setDestinationForView:(id)arg1 to:(struct CGRect)arg2 duration:(double)arg3; +- (void)_showNextFrame; +- (void)_updateTimer; +- (void)_updateViewPosition:(id)arg1 forTime:(double)arg2; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SlidingAnimationDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SlidingAnimationDelegate-Protocol.h new file mode 100644 index 00000000..79085113 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SlidingAnimationDelegate-Protocol.h @@ -0,0 +1,14 @@ +/* + * 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" + +@protocol SlidingAnimationDelegate + +@optional +- (void)finishedSlidingAnimation:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SlidingViewsBar.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SlidingViewsBar.h new file mode 100644 index 00000000..c666d92a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SlidingViewsBar.h @@ -0,0 +1,76 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "SlidingAnimationDelegate.h" + +@class ClippedItemsIndicator, NSMutableArray, NSString, SlidingAnimation; + +@interface SlidingViewsBar : NSView +{ + unsigned long long _dropIndex; + unsigned long long _dragSourceIndex; + ClippedItemsIndicator *_rightClipIndicator; + NSMutableArray *_buttons; + SlidingAnimation *_animation; + double _draggedItemWidth; +} + ++ (double)buttonBottomOffset; +@property(nonatomic) double draggedItemWidth; // @synthesize draggedItemWidth=_draggedItemWidth; +@property(retain, nonatomic) SlidingAnimation *animation; // @synthesize animation=_animation; +@property(retain, nonatomic) NSMutableArray *buttons; // @synthesize buttons=_buttons; +@property(readonly, nonatomic) ClippedItemsIndicator *rightClipIndicator; // @synthesize rightClipIndicator=_rightClipIndicator; +@property(nonatomic) unsigned long long dragSourceIndex; // @synthesize dragSourceIndex=_dragSourceIndex; +- (void).cxx_destruct; +- (void)_ensureButtonIsInViewHierarchy:(id)arg1; +- (void)_mainStatusDidChange:(id)arg1; +- (BOOL)isFlipped; +- (void)viewWillBeginDragging:(id)arg1; +- (id)viewPinnedToOverflowIndicator; +- (void)moveSlidingViewToCurrentDropIndex:(id)arg1; +- (BOOL)isSliding; +- (void)draggingEnded:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (void)draggingExited:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (unsigned long long)updateDropTarget:(id)arg1; +- (double)slidingWidthForView:(id)arg1; +- (double)widthOfDraggingInfo:(id)arg1; +- (void)resumeAnimation; +- (void)pauseAnimation; +- (BOOL)reorderSlidingView:(id)arg1 fromMouseDownEvent:(id)arg2; +- (id)_lastDraggedOrUpEventFollowing:(id)arg1; +- (id)_lastDraggedEventFollowing:(id)arg1; +@property(nonatomic) unsigned long long dropIndex; +- (void)slideButtonsIntoPlace; +- (unsigned long long)dropIndexFromLocalPoint:(struct CGPoint)arg1; +- (unsigned long long)dropIndexFromDraggingInfo:(id)arg1; +- (void)refreshButtons; +- (void)draggedSlidingView:(id)arg1; +- (void)reorderedSlidingView:(id)arg1; +- (double)paddingBetweenButtons; +- (struct CGRect)_constrainProposedButtonFrame:(struct CGRect)arg1; +- (double)minSlidingViewX; +@property(readonly, nonatomic) double minButtonX; +- (double)maxButtonX; +- (double)maxButtonXWithClipIndicator; +- (double)maxButtonXWithoutClipIndicator; +- (unsigned long long)lastNonSlidingViewIndex; +- (void)dealloc; +- (void)_slidingViewsBarCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SmartMailboxEditor.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SmartMailboxEditor.h new file mode 100644 index 00000000..ace33cfc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SmartMailboxEditor.h @@ -0,0 +1,52 @@ +/* + * 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" + +@class CriteriaUIHelper, MFMailbox, NSTextField, NSTextView, NSView, NSWindow; + +@interface SmartMailboxEditor : NSObject +{ + BOOL _editedMailboxIsNew; + CriteriaUIHelper *_criteriaUIHelper; + NSWindow *_makeNewMailboxWindow; + NSTextField *_nameField; + NSWindow *_makeNewFolderWindow; + NSTextField *_groupNameField; + NSWindow *_notEditableWindow; + NSTextField *_searchStringField; + NSTextView *_mailboxesTextView; + NSView *_criteriaView; + SmartMailboxEditor *_me; + MFMailbox *_mailboxBeingEdited; + MFMailbox *_mailboxBeingValidated; +} + ++ (BOOL)mailboxIsEditable:(id)arg1; ++ (BOOL)isEditingInProgress; +@property(nonatomic) BOOL editedMailboxIsNew; // @synthesize editedMailboxIsNew=_editedMailboxIsNew; +@property(retain, nonatomic) MFMailbox *mailboxBeingValidated; // @synthesize mailboxBeingValidated=_mailboxBeingValidated; +@property(retain, nonatomic) MFMailbox *mailboxBeingEdited; // @synthesize mailboxBeingEdited=_mailboxBeingEdited; +@property(retain, nonatomic) SmartMailboxEditor *me; // @synthesize me=_me; +@property(nonatomic) __weak NSView *criteriaView; // @synthesize criteriaView=_criteriaView; +@property(nonatomic) NSTextView *mailboxesTextView; // @synthesize mailboxesTextView=_mailboxesTextView; +@property(nonatomic) __weak NSTextField *searchStringField; // @synthesize searchStringField=_searchStringField; +@property(retain, nonatomic) NSWindow *notEditableWindow; // @synthesize notEditableWindow=_notEditableWindow; +@property(nonatomic) __weak NSTextField *groupNameField; // @synthesize groupNameField=_groupNameField; +@property(retain, nonatomic) NSWindow *makeNewFolderWindow; // @synthesize makeNewFolderWindow=_makeNewFolderWindow; +@property(nonatomic) __weak NSTextField *nameField; // @synthesize nameField=_nameField; +@property(retain, nonatomic) NSWindow *makeNewMailboxWindow; // @synthesize makeNewMailboxWindow=_makeNewMailboxWindow; +@property(retain, nonatomic) CriteriaUIHelper *criteriaUIHelper; // @synthesize criteriaUIHelper=_criteriaUIHelper; +- (void).cxx_destruct; +- (void)_saveEditedMailbox; +- (void)cancelClicked:(id)arg1; +- (void)okClicked:(id)arg1; +- (void)_sheetDidEnd:(id)arg1 returnCode:(long long)arg2; +- (void)createNewMailboxGroup; +- (void)editSmartMailbox:(id)arg1 suggestedName:(id)arg2 isNew:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SnippetColorTransformer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SnippetColorTransformer.h new file mode 100644 index 00000000..87434e56 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SnippetColorTransformer.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSValueTransformer.h" + +@interface SnippetColorTransformer : NSValueTransformer +{ +} + ++ (BOOL)allowsReverseTransformation; ++ (Class)transformedValueClass; +- (id)transformedValue:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SortByMenuDelegate.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SortByMenuDelegate.h new file mode 100644 index 00000000..400cad60 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SortByMenuDelegate.h @@ -0,0 +1,32 @@ +/* + * 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 "NSMenuDelegate.h" + +@class NSMenuItem, NSString; + +@interface SortByMenuDelegate : NSObject +{ + NSMenuItem *_ascendingMenuItem; + NSMenuItem *_descendingMenuItem; +} + +@property(nonatomic) __weak NSMenuItem *descendingMenuItem; // @synthesize descendingMenuItem=_descendingMenuItem; +@property(nonatomic) __weak NSMenuItem *ascendingMenuItem; // @synthesize ascendingMenuItem=_ascendingMenuItem; +- (void).cxx_destruct; +- (void)menuWillOpen:(id)arg1; +- (void)menuNeedsUpdate:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SoundPopUpButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SoundPopUpButton.h new file mode 100644 index 00000000..e1460a10 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SoundPopUpButton.h @@ -0,0 +1,57 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class NSButton, NSMutableArray, NSPanel, NSString, NSTableView; + +@interface SoundPopUpButton : NSPopUpButton +{ + NSMutableArray *_userSounds; + BOOL _showNone; + BOOL _configured; + NSButton *_removeSoundButton; + NSTableView *_soundTableView; + NSPanel *_soundPanel; + id _delegate; +} + +@property(nonatomic) BOOL configured; // @synthesize configured=_configured; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +@property(retain, nonatomic) NSPanel *soundPanel; // @synthesize soundPanel=_soundPanel; +@property(nonatomic) __weak NSTableView *soundTableView; // @synthesize soundTableView=_soundTableView; +@property(nonatomic) __weak NSButton *removeSoundButton; // @synthesize removeSoundButton=_removeSoundButton; +- (void).cxx_destruct; +- (void)tableViewSelectionDidChange:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)doneClicked:(id)arg1; +- (void)removeSoundClicked:(id)arg1; +- (void)addSoundClicked:(id)arg1; +- (void)_addRemoveMailSound:(id)arg1; +- (void)selectSoundPath:(id)arg1; +- (void)_playSound:(id)arg1; +@property(readonly, copy, nonatomic) NSString *selectedSoundPath; +@property(nonatomic) BOOL showNone; +- (void)_appendSoundsFromDirectories:(id)arg1; +- (void)configureSoundMenu; +- (void)dealloc; +- (void)awakeFromNib; +- (void)_soundPopUpButtonCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1 pullsDown:(BOOL)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SoundPopUpButtonDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SoundPopUpButtonDelegate-Protocol.h new file mode 100644 index 00000000..d7280642 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SoundPopUpButtonDelegate-Protocol.h @@ -0,0 +1,12 @@ +/* + * 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" + +@protocol SoundPopUpButtonDelegate +- (id)titleForSoundFile:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SpecialMailboxes.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SpecialMailboxes.h new file mode 100644 index 00000000..0886b2e8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SpecialMailboxes.h @@ -0,0 +1,32 @@ +/* + * 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" + +@class NSPopUpButton, NSView; + +@interface SpecialMailboxes : NSObject +{ + NSView *_view; + NSPopUpButton *_sentMessagesAgePopup; + NSPopUpButton *_junkAgePopup; + NSPopUpButton *_trashAgePopup; +} + ++ (id)specialMailboxesForAccountClass:(Class)arg1; +@property(nonatomic) __weak NSPopUpButton *trashAgePopup; // @synthesize trashAgePopup=_trashAgePopup; +@property(nonatomic) __weak NSPopUpButton *junkAgePopup; // @synthesize junkAgePopup=_junkAgePopup; +@property(nonatomic) __weak NSPopUpButton *sentMessagesAgePopup; // @synthesize sentMessagesAgePopup=_sentMessagesAgePopup; +@property(retain, nonatomic) NSView *view; // @synthesize view=_view; +- (void).cxx_destruct; +- (void)postSpecialMailboxesDidChangeNotification:(id)arg1; +- (void)setUIElementsEnabled:(BOOL)arg1; +- (BOOL)isAccountInformationDirty:(id)arg1; +- (BOOL)setupAccountFromValuesInUI:(id)arg1; +- (void)setupUIFromValuesInAccount:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackController.h new file mode 100644 index 00000000..7a41d283 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackController.h @@ -0,0 +1,106 @@ +/* + * 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 "StackElementDelegate.h" +#import "StackRevealGroupDelegate.h" + +@class CALayer, NSArray, NSMutableArray, NSMutableDictionary, NSMutableSet, NSString, StackRevealGroup; + +@interface StackController : NSObject +{ + NSMutableArray *_stackedItems; + NSMutableSet *_stackedItemsSet; + NSMutableArray *_orderedItems; + NSMutableSet *_orderedItemsSet; + NSMutableDictionary *_stackElementsByItem; + NSMutableDictionary *_loadRequestDatesByItem; + StackRevealGroup *_revealGroup; + BOOL _isAnimating; + BOOL _animateStateTransitions; + BOOL _updateNeeded; + BOOL _loadingData; + BOOL _waitingForTransitionToStackState; + BOOL _isTerminating; + BOOL _isSuspended; + BOOL _preventReveal; + BOOL _preventStackBeforeOffscreen; + BOOL _abortingRevealAnimation; + id _dataSource; + id _delegate; + NSArray *_itemsToDisplay; + CALayer *_stackContainerLayer; + double _lastDisplayedItemsUpdateRequest; + double _lastTransitionToStackState; + unsigned long long _transactionCount; + struct CGSize _stackCenterOffset; +} + +@property(nonatomic) BOOL abortingRevealAnimation; // @synthesize abortingRevealAnimation=_abortingRevealAnimation; +@property(nonatomic) BOOL preventStackBeforeOffscreen; // @synthesize preventStackBeforeOffscreen=_preventStackBeforeOffscreen; +@property(nonatomic) BOOL preventReveal; // @synthesize preventReveal=_preventReveal; +@property(nonatomic) BOOL isSuspended; // @synthesize isSuspended=_isSuspended; +@property(nonatomic) BOOL isTerminating; // @synthesize isTerminating=_isTerminating; +@property(nonatomic) BOOL waitingForTransitionToStackState; // @synthesize waitingForTransitionToStackState=_waitingForTransitionToStackState; +@property(nonatomic) BOOL loadingData; // @synthesize loadingData=_loadingData; +@property(nonatomic) BOOL updateNeeded; // @synthesize updateNeeded=_updateNeeded; +@property(nonatomic) unsigned long long transactionCount; // @synthesize transactionCount=_transactionCount; +@property(nonatomic) double lastTransitionToStackState; // @synthesize lastTransitionToStackState=_lastTransitionToStackState; +@property(nonatomic) double lastDisplayedItemsUpdateRequest; // @synthesize lastDisplayedItemsUpdateRequest=_lastDisplayedItemsUpdateRequest; +@property(nonatomic) struct CGSize stackCenterOffset; // @synthesize stackCenterOffset=_stackCenterOffset; +@property(retain, nonatomic) CALayer *stackContainerLayer; // @synthesize stackContainerLayer=_stackContainerLayer; +@property(copy, nonatomic) NSArray *itemsToDisplay; // @synthesize itemsToDisplay=_itemsToDisplay; +@property(nonatomic) BOOL animateStateTransitions; // @synthesize animateStateTransitions=_animateStateTransitions; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +@property(nonatomic) __weak id dataSource; // @synthesize dataSource=_dataSource; +- (void).cxx_destruct; +- (void)stackRevealGroupDidFinish:(id)arg1; +- (void)stackRevealGroupDidReveal:(id)arg1; +- (void)stackRevealGroupWillReveal:(id)arg1; +- (id)stackContainerView; +- (void)stackElement:(id)arg1 targetStateDidChangeFrom:(int)arg2 to:(int)arg3; +- (void)stackElement:(id)arg1 currentStateDidChangeFrom:(int)arg2 to:(int)arg3; +- (void)stackElement:(id)arg1 willRemoveLayer:(id)arg2; +- (id)layerForStackElement:(id)arg1; +- (BOOL)stackIsTerminating; +- (void)cancelPendingActions; +- (void)cancelRevealAnimation; +- (void)updateIsAnimating; +@property(nonatomic) BOOL isAnimating; +@property(retain, nonatomic) StackRevealGroup *revealGroup; +- (BOOL)isAnyStackElementBeingStacked; +- (id)stackElementToReshowUnderneathStackElement:(id)arg1; +- (id)orderedStackedElementsAboveStackElement:(id)arg1; +- (id)orderedStackedElementsWithOrientation:(long long)arg1; +- (void)stackDataSourceDidLoadItemData:(id)arg1; +- (void)updateOrientationForStackElement:(id)arg1; +- (void)updateStackElement:(id)arg1; +- (void)updateStackElements; +- (void)setNeedsToUpdateStackElements; +- (void)endTransaction; +- (void)beginTransaction; +- (BOOL)isDataAvailableForStackElement:(id)arg1 loadIfNeeded:(BOOL)arg2; +- (void)removeStackElement:(id)arg1; +- (id)stackElementForItem:(id)arg1 createIfNeeded:(BOOL)arg2 withInitialState:(int)arg3; +- (id)stackElementForItem:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)keyForItem:(id)arg1; +- (void)removeStackedLayers:(BOOL)arg1; +- (void)updateDisplayedItems; +- (void)addStackedItem:(id)arg1; +- (void)setNeedsToUpdateDisplayedItems:(BOOL)arg1 immediately:(BOOL)arg2; +- (void)displayStackedLayersForItems:(id)arg1 animated:(BOOL)arg2; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackDataSource-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackDataSource-Protocol.h new file mode 100644 index 00000000..93135ab1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackDataSource-Protocol.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol StackDataSource +- (void)stackController:(id)arg1 loadDataForItem:(id)arg2 inLayer:(id)arg3; +- (BOOL)stackController:(id)arg1 isDataLoadedForItem:(id)arg2 inLayer:(id)arg3; +- (id)stackController:(id)arg1 layerForItem:(id)arg2; +- (id)stackContainerView; +- (id)stackContainerLayerForStackController:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackDelegate-Protocol.h new file mode 100644 index 00000000..76c9f2d6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackDelegate-Protocol.h @@ -0,0 +1,21 @@ +/* + * 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" + +@protocol StackDelegate + +@optional +- (void)stackController:(id)arg1 willRemoveLayerForItem:(id)arg2; +- (void)stackController:(id)arg1 willDisplayLayer:(id)arg2 forItem:(id)arg3; +- (void)stackController:(id)arg1 willStackLayer:(id)arg2 forItem:(id)arg3; +- (void)stackController:(id)arg1 dataLoadTimedOutInLayer:(id)arg2 forItem:(id)arg3; +- (void)stackControllerDidStopAnimatingLayers:(id)arg1; +- (void)stackControllerWillStartAnimatingLayers:(id)arg1; +- (void)stackControllerDidStopStackingLayers:(id)arg1; +- (void)stackControllerWillStartStackingLayers:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackElement.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackElement.h new file mode 100644 index 00000000..a2ca97f9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackElement.h @@ -0,0 +1,57 @@ +/* + * 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" + +@class CALayer; + +@interface StackElement : NSObject +{ + int _currentState; + int _nextState; + int _targetState; + int _previousState; + id _delegate; + id _item; + long long _orientation; + CALayer *_itemLayer; +} + +@property(retain, nonatomic) CALayer *itemLayer; // @synthesize itemLayer=_itemLayer; +@property(nonatomic) long long orientation; // @synthesize orientation=_orientation; +@property(readonly, nonatomic) int previousState; // @synthesize previousState=_previousState; +@property(readonly, nonatomic) id item; // @synthesize item=_item; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (struct CGAffineTransform)_onStackTransform; +- (struct CGAffineTransform)_offscreenTransform; +- (struct CGAffineTransform)_affineTransformWithTranslation:(struct CGSize)arg1; +- (struct CGAffineTransform)_fullsizeTransform; +- (void)_fadeInUnderneathStack:(BOOL)arg1; +- (void)_fadeOutUnderneathStack:(BOOL)arg1; +- (void)_moveOutFromStack:(BOOL)arg1; +- (void)_moveIntoStack:(BOOL)arg1; +- (void)_hide:(BOOL)arg1; +- (void)_animationDidStop:(id)arg1 finished:(id)arg2 animationInfo:(id)arg3; +- (void)_commitAnimation; +- (void)_beginAnimationToState:(int)arg1 withDuration:(double)arg2 beginsFromCurrentState:(BOOL)arg3 animated:(BOOL)arg4; +- (id)_operationNameWithState:(int)arg1; +- (void)removeLayer; +@property(readonly, nonatomic) CALayer *layer; +@property(readonly, nonatomic) double stackIndex; +@property(readonly, nonatomic) BOOL isAnimating; +@property(nonatomic) int targetState; +@property(nonatomic) int currentState; +@property(readonly, nonatomic) BOOL isVisible; +- (void)setNextState:(int)arg1 animated:(BOOL)arg2; +- (void)setNextState:(int)arg1; +@property(readonly, nonatomic) int nextState; +- (int)state; +- (id)description; +- (id)initWithItem:(id)arg1 state:(int)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackElementDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackElementDelegate-Protocol.h new file mode 100644 index 00000000..b85194dc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackElementDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol StackElementDelegate +- (void)stackElement:(id)arg1 targetStateDidChangeFrom:(int)arg2 to:(int)arg3; +- (void)stackElement:(id)arg1 currentStateDidChangeFrom:(int)arg2 to:(int)arg3; +- (void)stackElement:(id)arg1 willRemoveLayer:(id)arg2; +- (id)layerForStackElement:(id)arg1; +- (BOOL)stackIsTerminating; +- (struct CGSize)stackCenterOffset; +- (id)stackContainerLayer; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackRevealGroup.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackRevealGroup.h new file mode 100644 index 00000000..327731e4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackRevealGroup.h @@ -0,0 +1,41 @@ +/* + * 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" + +@class CALayer, NSMutableArray, NSWindow; + +@interface StackRevealGroup : NSObject +{ + CALayer *_layer; + NSMutableArray *_stackElements; + id _delegate; + NSWindow *_window; + long long _state; + double _revealBeginTime; +} + +@property(nonatomic) double revealBeginTime; // @synthesize revealBeginTime=_revealBeginTime; +@property(nonatomic) long long state; // @synthesize state=_state; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +@property(readonly, nonatomic) BOOL isAnimating; +@property(readonly, nonatomic) BOOL isRevealing; +- (void)_finish; +- (void)animationDidStop:(id)arg1 finished:(BOOL)arg2; +- (void)cancel:(BOOL)arg1; +- (void)beginRevealAnimation; +- (void)removeLayer; +@property(readonly, nonatomic) CALayer *layer; +- (void)removeStackElement:(id)arg1; +- (BOOL)containsStackElement:(id)arg1 isTopElement:(char *)arg2; +- (void)dealloc; +- (id)_window; +- (id)initWithStackElements:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackRevealGroupDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackRevealGroupDelegate-Protocol.h new file mode 100644 index 00000000..94834dee --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StackRevealGroupDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol StackRevealGroupDelegate + +@optional +- (id)stackContainerView; +- (id)stackContainerLayer; +- (void)stackRevealGroupDidFinish:(id)arg1; +- (void)stackRevealGroupDidReveal:(id)arg1; +- (void)stackRevealGroupWillReveal:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StarFieldController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StarFieldController.h new file mode 100644 index 00000000..d44df3eb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StarFieldController.h @@ -0,0 +1,77 @@ +/* + * 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" + +@class MTMMailbox, NSDictionary, NSMutableArray, NSMutableDictionary, NSTimer; + +@interface StarFieldController : NSObject +{ + NSMutableDictionary *_windowControllers; + NSMutableDictionary *_bufferedControllers; + id _activeWindowController; + NSMutableArray *_thumbnailUpdateQueue; + BOOL _isInTimeMachine; + BOOL _showChangedItemsOnly; + BOOL _timeMachineStarted; + BOOL _firstThumbnailUpdateRequest; + BOOL _hasAtLeastSentOneThumbnail; + BOOL _dismissed; + NSDictionary *_sharedDisplayState; + id _currentTimeWindowController; + NSDictionary *_mailDisplayState; + NSTimer *_updateTimer; + MTMMailbox *_pausedMailbox; + struct CGRect _mailFrame; + struct CGRect _initialFrame; +} + ++ (id)sharedController; ++ (id)allocWithZone:(struct _NSZone *)arg1; ++ (id)keyPathsForValuesAffectingIsInTimeMachine; +@property(retain, nonatomic) MTMMailbox *pausedMailbox; // @synthesize pausedMailbox=_pausedMailbox; +@property(nonatomic) BOOL dismissed; // @synthesize dismissed=_dismissed; +@property(nonatomic) BOOL hasAtLeastSentOneThumbnail; // @synthesize hasAtLeastSentOneThumbnail=_hasAtLeastSentOneThumbnail; +@property(nonatomic) BOOL firstThumbnailUpdateRequest; // @synthesize firstThumbnailUpdateRequest=_firstThumbnailUpdateRequest; +@property(retain, nonatomic) NSTimer *updateTimer; // @synthesize updateTimer=_updateTimer; +@property(retain, nonatomic) NSDictionary *mailDisplayState; // @synthesize mailDisplayState=_mailDisplayState; +@property(nonatomic) struct CGRect initialFrame; // @synthesize initialFrame=_initialFrame; +@property(nonatomic) struct CGRect mailFrame; // @synthesize mailFrame=_mailFrame; +@property(nonatomic) __weak id currentTimeWindowController; // @synthesize currentTimeWindowController=_currentTimeWindowController; +@property(nonatomic) BOOL timeMachineStarted; // @synthesize timeMachineStarted=_timeMachineStarted; +@property(nonatomic) BOOL showChangedItemsOnly; // @synthesize showChangedItemsOnly=_showChangedItemsOnly; +@property(nonatomic) BOOL isInTimeMachine; // @synthesize isInTimeMachine=_isInTimeMachine; +@property(retain, nonatomic) NSDictionary *sharedDisplayState; // @synthesize sharedDisplayState=_sharedDisplayState; +- (void).cxx_destruct; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)restoreFromURL:(id)arg1; +- (void)_showChangedItemsOnlyToggled:(unsigned char)arg1; +- (id)deactivateWindowForURL:(id)arg1; +- (id)_activateWindowForURL:(id)arg1 changedItemsOnly:(unsigned char)arg2 atFrame:(struct CGRect)arg3; +- (id)revisionIDForURL:(id)arg1; +- (id)_correctedURLForURL:(id)arg1 proposedQueryString:(id)arg2; +- (void)scheduleUpdateForURL:(id)arg1 withFrame:(struct CGRect)arg2; +- (void)updateNextThumbnail; +- (void)markSnapshotAsDirty:(id)arg1; +- (void)updateThumbnailForURL:(id)arg1 withFrame:(struct CGRect)arg2; +- (void)updateAllThumbnails; +- (void)_updateAllThumbnails; +- (void)timeMachineWasDismissed; +- (BOOL)startTimeMachine; +- (void)removeWindowControllerForURL:(id)arg1; +- (id)windowControllerForURL:(id)arg1 forDisplay:(BOOL)arg2 canCreate:(BOOL)arg3; +- (void)appHasExitedTimeMachineAndFinishedRestoring; +- (void)startExitTransitionOfWindowController:(id)arg1; +- (void)_enterTransitionDidEnd:(id)arg1; +- (void)startEnterTransitionOfWindowController:(id)arg1 fromFrame:(struct CGRect)arg2; +@property(nonatomic) __weak id activeWindowController; +- (void)showCurrentStateMailDisplayState:(id)arg1; +- (id)mainURL; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StartupManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StartupManager.h new file mode 100644 index 00000000..374cde71 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StartupManager.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface StartupManager : NSObject +{ +} + ++ (BOOL)setupAccountsAndSynchronize:(BOOL)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Stationery.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Stationery.h new file mode 100644 index 00000000..525c804d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/Stationery.h @@ -0,0 +1,73 @@ +/* + * 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" + +@class NSArray, NSBundle, NSDictionary, NSImage, NSMutableDictionary, NSString; + +@interface Stationery : NSObject +{ + NSString *_html; + NSMutableDictionary *_imageData; + NSImage *_thumbnailImage; + NSArray *_colors; + NSString *_defaultColor; + BOOL _isCustom; + NSString *_uniqueIDForBaseURL; + NSDictionary *_descriptionDictionary; + NSDictionary *_localizedDescriptionDictionary; + NSBundle *_bundle; +} + +@property(retain, nonatomic) NSBundle *bundle; // @synthesize bundle=_bundle; +@property(readonly, copy, nonatomic) NSDictionary *localizedDescriptionDictionary; // @synthesize localizedDescriptionDictionary=_localizedDescriptionDictionary; +@property(copy, nonatomic) NSDictionary *descriptionDictionary; // @synthesize descriptionDictionary=_descriptionDictionary; +@property(copy, nonatomic) NSString *uniqueIDForBaseURL; // @synthesize uniqueIDForBaseURL=_uniqueIDForBaseURL; +@property(readonly, nonatomic) BOOL isCustom; // @synthesize isCustom=_isCustom; +- (void).cxx_destruct; +- (id)description; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (void)setBundlePath:(id)arg1; +- (id)bundlePath; +- (void)_addValueToDescription:(id)arg1 forKey:(id)arg2; +- (BOOL)saveToPath:(id)arg1 error:(id *)arg2; +- (void)setValue:(id)arg1 forHeader:(id)arg2; +- (id)addImageWithData:(id)arg1 name:(id)arg2; +- (void)setHTML:(id)arg1; +- (void)setStationeryName:(id)arg1; +- (void)setMinimumWidth:(double)arg1; +- (id)headers; +- (id)setThumbnailImage:(id)arg1; +- (id)thumbnailImage; +- (id)thumbnailImagePath; +- (id)displayName; +- (id)folderName; +- (id)stationeryID; +- (void)changeFolderAndDisplayNameTo:(id)arg1; +- (id)fontsForColor:(id)arg1; +- (id)imagesInCompositeImagesForColor:(id)arg1; +- (id)backgroundImagePathsForColor:(id)arg1 previousColor:(id)arg2; +- (id)imagePathsForColor:(id)arg1; +- (id)nextColorAfterColor:(id)arg1; +- (double)letterWidth; +- (double)letterTopMargin; +- (id)defaultColor; +- (id)colors; +- (id)backgroundTile; +- (id)pathToBackgroundTile; +- (BOOL)hasImages; +- (id)_localizeHtml:(id)arg1 withTable:(id)arg2; +- (id)_html; +- (id)_attachmentsForImages:(id)arg1 typeIsBackground:(BOOL)arg2; +- (id)parsedMessage; +- (void)markAsUserCreatedCustomStationery; +- (BOOL)isUserCreatedCustomStationery; +- (id)init; +- (id)initWithPath:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryCompositeImage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryCompositeImage.h new file mode 100644 index 00000000..21186635 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryCompositeImage.h @@ -0,0 +1,53 @@ +/* + * 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" + +@class NSArray, NSData, NSMutableArray, NSString, StationeryCompositeImageView; + +@interface StationeryCompositeImage : NSObject +{ + NSData *_baseImageData; + NSData *_overlayImageData; + NSMutableArray *_userImages; + BOOL _isReadOnly; + NSArray *_masks; + StationeryCompositeImageView *_view; + NSString *_contentID; + NSString *_preferredFilename; + unsigned long long _index; +} + +@property(nonatomic) unsigned long long index; // @synthesize index=_index; +@property(readonly, nonatomic) BOOL isReadOnly; // @synthesize isReadOnly=_isReadOnly; +@property(copy, nonatomic) NSString *preferredFilename; // @synthesize preferredFilename=_preferredFilename; +@property(copy, nonatomic) NSString *contentID; // @synthesize contentID=_contentID; +@property(nonatomic) __weak StationeryCompositeImageView *view; // @synthesize view=_view; +@property(copy, nonatomic) NSArray *masks; // @synthesize masks=_masks; +- (void).cxx_destruct; +- (id)fileWrapper; +- (BOOL)isPlaceholder; +- (id)filename; +- (void)setFilename:(id)arg1; +- (unsigned long long)approximateSize; +- (id)filenameForCompositedImage; +- (id)mimeTypeForCompositedImage; +- (id)dataForCompositedImage; +- (unsigned long long)numberOfDropZones; +- (id)userImagesToSave; +- (id)userImages; +- (void)addUserImage:(id)arg1; +- (id)overlayImage; +- (void)setOverlayImageData:(id)arg1; +- (id)baseImage; +- (void)setBaseImageData:(id)arg1; +- (BOOL)isValid; +- (id)data; +- (id)initWithData:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryCompositeImageMask.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryCompositeImageMask.h new file mode 100644 index 00000000..218d2e64 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryCompositeImageMask.h @@ -0,0 +1,39 @@ +/* + * 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" + +@class NSData, NSImage; + +@interface StationeryCompositeImageMask : NSObject +{ + NSData *_maskImageData; + NSImage *_maskImage; + NSData *_placeholderImageData; + NSImage *_placeholderImage; + double _dropZoneAngle; + struct CGSize _dropZoneOffset; + struct CGSize _dropZoneSize; +} + +@property(nonatomic) struct CGSize dropZoneSize; // @synthesize dropZoneSize=_dropZoneSize; +@property(nonatomic) double dropZoneAngle; // @synthesize dropZoneAngle=_dropZoneAngle; +@property(nonatomic) struct CGSize dropZoneOffset; // @synthesize dropZoneOffset=_dropZoneOffset; +- (void).cxx_destruct; +- (struct CGSize)actualMaskSize; +- (struct CGRect)dropZoneRect; +- (struct CGRect)dropZoneBoundingBox; +- (void)discardPlaceholderImage; +- (id)placeholderImage; +- (void)setPlaceholderImageData:(id)arg1; +- (id)maskImage; +- (void)setMaskImageData:(id)arg1; +- (BOOL)isValid; +- (id)dictionary; +- (id)initWithDictionary:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryController.h new file mode 100644 index 00000000..6ec00d31 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryController.h @@ -0,0 +1,67 @@ +/* + * 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" + +@class ComposeBackEnd, EditableWebMessageDocument, EditingMessageWebView, NSMutableArray, NSMutableDictionary, NSString, NSTimer, Stationery; + +@interface StationeryController : NSObject +{ + Stationery *_stationery; + BOOL _stationeryLoaded; + NSString *_currentColor; + ComposeBackEnd *_composeBackEnd; + NSMutableDictionary *_fontElementsWithColors; + NSMutableArray *_colorsThatHaveBeenDisplayed; + BOOL _isLoadingStationery; + BOOL _isChangingStationeryColor; + BOOL _isLoadingResources; + BOOL _shouldAnimateTransitions; + EditingMessageWebView *_webView; + double _letterTopMargin; + double _letterWidth; + id _savedResourceLoadDelegate; + id _savedFrameLoadDelegate; + long long _numberOfResourcesNotYetLoaded; + EditableWebMessageDocument *_messageDocument; + NSTimer *_flushWindowTimer; +} + +@property(retain, nonatomic) NSTimer *flushWindowTimer; // @synthesize flushWindowTimer=_flushWindowTimer; +@property(retain, nonatomic) EditableWebMessageDocument *messageDocument; // @synthesize messageDocument=_messageDocument; +@property(nonatomic) BOOL shouldAnimateTransitions; // @synthesize shouldAnimateTransitions=_shouldAnimateTransitions; +@property(nonatomic) BOOL isLoadingResources; // @synthesize isLoadingResources=_isLoadingResources; +@property(nonatomic) BOOL isChangingStationeryColor; // @synthesize isChangingStationeryColor=_isChangingStationeryColor; +@property(nonatomic) BOOL isLoadingStationery; // @synthesize isLoadingStationery=_isLoadingStationery; +@property(nonatomic) long long numberOfResourcesNotYetLoaded; // @synthesize numberOfResourcesNotYetLoaded=_numberOfResourcesNotYetLoaded; +@property(retain, nonatomic) id savedFrameLoadDelegate; // @synthesize savedFrameLoadDelegate=_savedFrameLoadDelegate; +@property(retain, nonatomic) id savedResourceLoadDelegate; // @synthesize savedResourceLoadDelegate=_savedResourceLoadDelegate; +@property(nonatomic) double letterWidth; // @synthesize letterWidth=_letterWidth; +@property(nonatomic) double letterTopMargin; // @synthesize letterTopMargin=_letterTopMargin; +@property(retain, nonatomic) EditingMessageWebView *webView; // @synthesize webView=_webView; +- (void).cxx_destruct; +- (id)stationeryFromCurrentMessageError:(id *)arg1; +- (void)changeStationeryColor:(id)arg1; +- (void)userClickedOnStationeryBackground:(id)arg1; +- (void)_webViewDidFinishLoadingAllResources; +- (void)_timerDidFire:(id)arg1; +- (void)webView:(id)arg1 didLoadResourceFromMemoryCache:(id)arg2 response:(id)arg3 length:(long long)arg4 fromDataSource:(id)arg5; +- (void)webView:(id)arg1 resource:(id)arg2 didFinishLoadingFromDataSource:(id)arg3; +- (id)webView:(id)arg1 identifierForInitialRequest:(id)arg2 fromDataSource:(id)arg3; +- (void)webView:(id)arg1 didFailLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)_finishLoadingStationery; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)loadStationery:(id)arg1; +- (void)showColorOptions; +- (void)setColor:(id)arg1; +- (id)color; +@property(nonatomic) BOOL stationeryLoaded; +@property(retain, nonatomic) Stationery *stationery; +@property(nonatomic) __weak ComposeBackEnd *composeBackEnd; +- (BOOL)isUpdatingWebView; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryDynamicElement.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryDynamicElement.h new file mode 100644 index 00000000..4ca0f81c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryDynamicElement.h @@ -0,0 +1,26 @@ +/* + * 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" + +@class NSString; + +@interface StationeryDynamicElement : NSObject +{ + NSString *_dateFormat; + unsigned long long _type; +} + ++ (id)dynamicElementFromDOMElement:(id)arg1; +@property(readonly, nonatomic) unsigned long long type; // @synthesize type=_type; +- (void).cxx_destruct; +- (id)description; +- (id)fragmentToReplaceHTMLObjectBackEnd:(id)arg1; +- (void)_setDateFormat:(id)arg1; +- (id)initWithType:(unsigned long long)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryLoader.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryLoader.h new file mode 100644 index 00000000..8e717aa4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationeryLoader.h @@ -0,0 +1,68 @@ +/* + * 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" + +@class NSMutableArray, NSMutableDictionary, _StationeryThumbnailCreator; + +@interface StationeryLoader : NSObject +{ + NSMutableDictionary *_categoriesByDisplayName; + NSMutableArray *_orderedCategoryDisplayNames; + NSMutableDictionary *_orderedStationeryByCategoryDisplayName; + _StationeryThumbnailCreator *_thumbnailCreator; +} + ++ (void)purgeDeletedCustomStationery; ++ (id)pathForCustomCategoryResources; ++ (id)pathForCustomCategory; ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(retain) _StationeryThumbnailCreator *thumbnailCreator; // @synthesize thumbnailCreator=_thumbnailCreator; +- (void).cxx_destruct; +- (void)_synchronouslyPurgeDeletedCustomStationery:(id)arg1; +- (void)purgeDeletedCustomStationery:(id)arg1; +- (void)_reinsertStationeryWithInformation:(id)arg1; +- (void)deleteStationeryWithDictionary:(id)arg1 fromCategoryWithDisplayName:(id)arg2 undoManager:(id)arg3; +- (BOOL)installStationery:(id)arg1; +- (BOOL)_saveCustomStationery:(id)arg1 byMovingFromPath:(id)arg2 error:(id *)arg3; +- (BOOL)saveCustomStationery:(id)arg1 error:(id *)arg2; +- (BOOL)_recursivelyCreateDirectory:(id)arg1 error:(id *)arg2; +- (void)_addToFavoritesInPosition:(unsigned long long)arg1 stationeryWithPath:(id)arg2 inCategoryWithDisplayName:(id)arg3; +- (void)addToFavoritesStationeryWithPath:(id)arg1 inCategoryWithDisplayName:(id)arg2; +- (BOOL)customStationeryWithNameExists:(id)arg1 index:(unsigned long long *)arg2; +- (BOOL)stationery:(id)arg1 isInCategoryWithDisplayName:(id)arg2; +- (void)thumbnailCreator:(id)arg1 didCreateThumbnail:(id)arg2 forCustomStationeryWithPath:(id)arg3; +- (void)thumbnailCreatorDidCreateThumbnailForCustomStationery:(id)arg1; +- (void)thumbnailCreatorDidCompletelyFinish:(id)arg1; +- (id)_categoryTOCForCategoryFolderName:(id)arg1 company:(id)arg2 type:(long long)arg3 categoryDisplayName:(id)arg4; +- (void)_updateStationeryInCategoryWithDisplayName:(id)arg1; +- (id)_validatedStationeryDictionary:(id)arg1 withName:(id)arg2 categoryBundle:(id)arg3 needsThumbnail:(char *)arg4; +- (id)_validatedCompanyCategoryDictionary:(id)arg1 categoryFolderName:(id)arg2 companyBundle:(id)arg3 type:(long long)arg4; +- (id)_dictionaryForCustomCategoryForCompany:(BOOL)arg1; +- (void)_combinePartialTOCs:(id)arg1; +- (id)_companyTOCWithName:(id)arg1 type:(long long)arg2 isFromCache:(char *)arg3; +- (void)_updateCategories; +- (id)_cacheNameForCompany:(id)arg1 categoryDisplayName:(id)arg2 type:(long long)arg3; +- (void)_cacheTOC:(id)arg1 withName:(id)arg2; +- (id)_cachedTOCWithName:(id)arg1; +- (id)_pathForStationeryNamed:(id)arg1 inCategoryWithDisplayName:(id)arg2; +- (id)_bundlePathForCategoryWithFolderName:(id)arg1 company:(id)arg2 type:(long long)arg3; +- (void)createAppleUserCompanyBundleIfNecessary; +- (id)pathForFavoritesList; +- (id)orderedStationeryDictionariesForCategoryWithDisplayName:(id)arg1; +- (id)orderedCategoryDictionaries; +- (id)orderedCategoryDisplayNamesIncludingFavorites; +- (void)updateStationery; +- (id)_dictionaryForStationeryWithPath:(id)arg1 inCategoryWithDisplayName:(id)arg2 position:(unsigned long long *)arg3; +- (id)_dictionaryForStationeryWithPath:(id)arg1 inCategoryWithDisplayName:(id)arg2; +- (id)pathForStationeryWithID:(id)arg1; +- (id)stationeryWithPath:(id)arg1; +- (id)stationeryWithID:(id)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationerySelector.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationerySelector.h new file mode 100644 index 00000000..c372ce69 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StationerySelector.h @@ -0,0 +1,83 @@ +/* + * 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 "NSDraggingSource.h" +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" + +@class ColorBackgroundView, DocumentEditor, FlatTableView, NSArray, NSMutableArray, NSMutableDictionary, NSScrollView, NSString, NSTextField, NSView, StationeryLoader, ThumbnailMatrix; + +@interface StationerySelector : NSObject +{ + NSArray *_stationeryDictionaries; + NSMutableArray *_deletedStationery; + NSMutableDictionary *_scrollPositionByCategory; + BOOL _isFirstShowOfCategoriesForFavorites; + BOOL _isFirstShowOfCategoriesForExistingStationery; + BOOL _hasRegisteredForNewThumbnailImageNotifications; + FlatTableView *_categoriesTableView; + ThumbnailMatrix *_thumbnailMatrix; + DocumentEditor *_documentEditor; + ColorBackgroundView *_selectorPane; + NSTextField *_emptyFavoritesMessageView; + NSScrollView *_thumbnailsScrollView; + ColorBackgroundView *_bottomDivider; + NSView *_verticalDivider; + StationeryLoader *_stationeryLoader; + NSArray *_categoryDictionaries; +} + +@property(nonatomic) BOOL hasRegisteredForNewThumbnailImageNotifications; // @synthesize hasRegisteredForNewThumbnailImageNotifications=_hasRegisteredForNewThumbnailImageNotifications; +@property(nonatomic) BOOL isFirstShowOfCategoriesForExistingStationery; // @synthesize isFirstShowOfCategoriesForExistingStationery=_isFirstShowOfCategoriesForExistingStationery; +@property(nonatomic) BOOL isFirstShowOfCategoriesForFavorites; // @synthesize isFirstShowOfCategoriesForFavorites=_isFirstShowOfCategoriesForFavorites; +@property(copy, nonatomic) NSArray *categoryDictionaries; // @synthesize categoryDictionaries=_categoryDictionaries; +@property(readonly, nonatomic) __weak StationeryLoader *stationeryLoader; // @synthesize stationeryLoader=_stationeryLoader; +@property(nonatomic) __weak NSView *verticalDivider; // @synthesize verticalDivider=_verticalDivider; +@property(nonatomic) __weak ColorBackgroundView *bottomDivider; // @synthesize bottomDivider=_bottomDivider; +@property(nonatomic) __weak NSScrollView *thumbnailsScrollView; // @synthesize thumbnailsScrollView=_thumbnailsScrollView; +@property(nonatomic) __weak NSTextField *emptyFavoritesMessageView; // @synthesize emptyFavoritesMessageView=_emptyFavoritesMessageView; +@property(nonatomic) __weak ColorBackgroundView *selectorPane; // @synthesize selectorPane=_selectorPane; +@property(nonatomic) __weak DocumentEditor *documentEditor; // @synthesize documentEditor=_documentEditor; +@property(nonatomic) __weak ThumbnailMatrix *thumbnailMatrix; // @synthesize thumbnailMatrix=_thumbnailMatrix; +@property(nonatomic) __weak FlatTableView *categoriesTableView; // @synthesize categoriesTableView=_categoriesTableView; +- (void).cxx_destruct; +- (BOOL)_draggingPasteboardContainsStationery; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)_thumbnailImageIsAvailable:(id)arg1; +- (void)startDragSessionFromIndex:(long long)arg1 withImage:(id)arg2 event:(id)arg3; +- (void)deleteStationery:(id)arg1; +- (void)clearStationerySelection; +- (void)selectStationery:(id)arg1; +- (unsigned long long)draggingSession:(id)arg1 sourceOperationMaskForDraggingContext:(long long)arg2; +- (void)_setStationeryDictionaries:(id)arg1; +- (void)_displayStationery:(id)arg1 showDeleteButtons:(BOOL)arg2 beginningAtIndex:(long long)arg3; +- (void)_restoreThumbnailScrollPosition; +- (void)_saveThumbnailScrollPosition; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (void)selectCategory:(id)arg1; +- (void)_stationeryDidChange:(id)arg1; +- (void)_refreshStationery; +- (void)showStationery; +- (void)dealloc; +- (id)_mainContentConstraintsForView:(id)arg1; +- (void)_moveThumbnailsToScrollView; +- (void)awakeFromNib; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StatusCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StatusCell.h new file mode 100644 index 00000000..1675ee3c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/StatusCell.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageTextFieldCell.h" + +@interface StatusCell : NSImageTextFieldCell +{ + long long _statusType; +} + +@property(nonatomic) long long statusType; // @synthesize statusType=_statusType; +- (id)accessibilityRoleDescription; +- (id)accessibilityValue; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SubjectFormatter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SubjectFormatter.h new file mode 100644 index 00000000..c01688c8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/SubjectFormatter.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFormatter.h" + +@interface SubjectFormatter : NSFormatter +{ +} + +- (BOOL)isPartialStringValid:(id)arg1 newEditingString:(id *)arg2 errorDescription:(id *)arg3; +- (BOOL)getObjectValue:(id *)arg1 forString:(id)arg2 errorDescription:(id *)arg3; +- (id)editingStringForObjectValue:(id)arg1; +- (id)attributedStringForObjectValue:(id)arg1 withDefaultAttributes:(id)arg2; +- (id)stringForObjectValue:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TableHeaderView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TableHeaderView.h new file mode 100644 index 00000000..e7ace8fe --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TableHeaderView.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableHeaderView.h" + +@interface TableHeaderView : NSTableHeaderView +{ + BOOL _noSeparatorLines; +} + ++ (id)updateHeaderViewForTableView:(id)arg1; +@property(nonatomic) BOOL noSeparatorLines; // @synthesize noSeparatorLines=_noSeparatorLines; +- (BOOL)_drawingEndSeparator; +- (void)setDrawsSeparatorLines:(BOOL)arg1; +- (BOOL)drawsSeparatorLines; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TableViewManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TableViewManager.h new file mode 100644 index 00000000..cf44c27b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TableViewManager.h @@ -0,0 +1,426 @@ +/* + * 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 "MVSelectionOwner.h" +#import "MailTableViewDelegate.h" +#import "NSTableViewDataSource.h" + +@class ConversationPrefetcher, MFMessageThread, MailTableView, MessageListContainerView, MessageMall, MessageViewer, NSArray, NSCache, NSDictionary, NSFont, NSMapTable, NSMutableArray, NSMutableAttributedString, NSMutableDictionary, NSMutableSet, NSSet, NSString, NSTableColumn, NSTableHeaderView, TableViewScrollState; + +@interface TableViewManager : NSObject +{ + MessageMall *_messageMall; + NSMutableArray *_rawSelection; + NSMutableSet *_mouseTrackers; + NSFont *_font; + NSMutableAttributedString *_truncatedString; + NSMutableDictionary *_truncatedStringAttributes; + NSMutableDictionary *_truncatedParagraphStyle; + NSMutableSet *_selectedConversationIDs; + id _snippetLock; + NSMutableSet *_messagesBeingFetched; + unsigned long long _lastRequestedRow; + NSMapTable *_messageProxyObjects; + BOOL _isFocused; + BOOL _sortColumnOrderAscending; + BOOL _mailboxSortColumnOrderAscending; + BOOL _isInThreadedMode; + BOOL _includeDeleted; + BOOL _isShowingSearchResults; + BOOL _awaitingInitialScrollPosition; + BOOL _scrollFoundSelectionIntoView; + BOOL _awaitingInitialSelection; + BOOL _clearSelectionOnUpdate; + BOOL _threadOpeningIsInProgress; + BOOL _threadClosingIsInProgress; + BOOL _doubleClickThreadOpeningIsInProgress; + BOOL _animatingThreadOpening; + BOOL _animatingThreadClosing; + BOOL _dontUpdateTrackingRects; + BOOL _useBoldFontForUnreadMessages; + BOOL _clearingSearch; + BOOL _selectionShouldNotChange; + BOOL _selectingMessagesForTransfer; + BOOL _needsColumnSetup; + BOOL _keepSelectionWhenTogglingThread; + unsigned char _suspendChangesToScrollingAndSelection; + BOOL _isRichMessageList; + BOOL _didAwake; + BOOL _isShowingToCc; + int _nextMessageDirection; + int _searchTarget; + MailTableView *_tableView; + MessageViewer *_delegate; + MessageListContainerView *_messageListContainerView; + NSArray *_tableColumns; + NSMapTable *_storeStateTable; + NSDictionary *_messageIDsToSelectWhenOpened; + NSArray *_threadIDsToOpenWhenOpened; + long long _sortColumnOrder; + long long _mailboxSortColumnOrder; + long long _initialScrollType; + TableViewScrollState *_savedScrollState; + NSDictionary *_initialMailboxViewingState; + long long _windowWidthBeforeSearch; + NSFont *_boldFont; + NSArray *_draggedMessages; + NSArray *_filteredMessagesFromMouseDown; + NSString *_messageIDToReveal; + NSCache *_snippetsForMessage; + ConversationPrefetcher *_conversationPrefetcher; + NSArray *_expandedSelection; + NSArray *_expandedSelectionForTransfer; + long long _leftmostTextColumn; + long long _colorHighlightLeftEdge; + long long _colorHighlightWidth; + MFMessageThread *_threadBeingClosed; + MFMessageThread *_threadBeingOpened; + long long _lastMouseDownInUnreadColumnEventNumber; + long long _numberOfSelectedRowsBeforeTogglingThread; + unsigned long long _numberOfSnippetLines; + NSTableColumn *_richTableColumn; + NSTableHeaderView *_tableHeaderView; + long long _previouslyViewedMessageRow; + long long _currentViewedMessageRow; + long long _searchField; + struct _NSRange _filteredMessagesRange; + struct CGPoint _lastMouseDownInUnreadColumnPoint; + struct CGPoint _currentMouseLocationInWindow; +} + ++ (id)_getThreadBackgroundColorForThread:(id)arg1; ++ (id)_getDarkerThreadBackgroundColorForThread:(id)arg1; ++ (id)specialImageForMessageCount:(unsigned long long)arg1 offset:(struct CGPoint *)arg2; ++ (BOOL)isColumnValid:(long long)arg1; ++ (void)initialize; +@property(nonatomic) long long searchField; // @synthesize searchField=_searchField; +@property(nonatomic) int searchTarget; // @synthesize searchTarget=_searchTarget; +@property(nonatomic) int nextMessageDirection; // @synthesize nextMessageDirection=_nextMessageDirection; +@property(nonatomic) long long currentViewedMessageRow; // @synthesize currentViewedMessageRow=_currentViewedMessageRow; +@property(nonatomic) long long previouslyViewedMessageRow; // @synthesize previouslyViewedMessageRow=_previouslyViewedMessageRow; +@property(retain, nonatomic) NSTableHeaderView *tableHeaderView; // @synthesize tableHeaderView=_tableHeaderView; +@property(retain, nonatomic) NSTableColumn *richTableColumn; // @synthesize richTableColumn=_richTableColumn; +@property(nonatomic) unsigned long long numberOfSnippetLines; // @synthesize numberOfSnippetLines=_numberOfSnippetLines; +@property(nonatomic) BOOL isShowingToCc; // @synthesize isShowingToCc=_isShowingToCc; +@property(nonatomic) BOOL didAwake; // @synthesize didAwake=_didAwake; +@property(nonatomic) long long numberOfSelectedRowsBeforeTogglingThread; // @synthesize numberOfSelectedRowsBeforeTogglingThread=_numberOfSelectedRowsBeforeTogglingThread; +@property(nonatomic) struct CGPoint currentMouseLocationInWindow; // @synthesize currentMouseLocationInWindow=_currentMouseLocationInWindow; +@property(nonatomic) long long lastMouseDownInUnreadColumnEventNumber; // @synthesize lastMouseDownInUnreadColumnEventNumber=_lastMouseDownInUnreadColumnEventNumber; +@property(nonatomic) struct CGPoint lastMouseDownInUnreadColumnPoint; // @synthesize lastMouseDownInUnreadColumnPoint=_lastMouseDownInUnreadColumnPoint; +@property(nonatomic) __weak MFMessageThread *threadBeingOpened; // @synthesize threadBeingOpened=_threadBeingOpened; +@property(nonatomic) __weak MFMessageThread *threadBeingClosed; // @synthesize threadBeingClosed=_threadBeingClosed; +@property(nonatomic) long long colorHighlightWidth; // @synthesize colorHighlightWidth=_colorHighlightWidth; +@property(nonatomic) long long colorHighlightLeftEdge; // @synthesize colorHighlightLeftEdge=_colorHighlightLeftEdge; +@property(nonatomic) long long leftmostTextColumn; // @synthesize leftmostTextColumn=_leftmostTextColumn; +@property(nonatomic) struct _NSRange filteredMessagesRange; // @synthesize filteredMessagesRange=_filteredMessagesRange; +@property(copy, nonatomic) NSArray *expandedSelectionForTransfer; // @synthesize expandedSelectionForTransfer=_expandedSelectionForTransfer; +@property(copy, nonatomic) NSArray *expandedSelection; // @synthesize expandedSelection=_expandedSelection; +@property(retain, nonatomic) ConversationPrefetcher *conversationPrefetcher; // @synthesize conversationPrefetcher=_conversationPrefetcher; +@property(readonly, nonatomic) NSCache *snippetsForMessage; // @synthesize snippetsForMessage=_snippetsForMessage; +@property(retain, nonatomic) NSString *messageIDToReveal; // @synthesize messageIDToReveal=_messageIDToReveal; +@property(retain, nonatomic) NSArray *filteredMessagesFromMouseDown; // @synthesize filteredMessagesFromMouseDown=_filteredMessagesFromMouseDown; +@property(copy, nonatomic) NSArray *draggedMessages; // @synthesize draggedMessages=_draggedMessages; +@property(nonatomic) BOOL isRichMessageList; // @synthesize isRichMessageList=_isRichMessageList; +@property(retain, nonatomic) NSFont *boldFont; // @synthesize boldFont=_boldFont; +@property(nonatomic) long long windowWidthBeforeSearch; // @synthesize windowWidthBeforeSearch=_windowWidthBeforeSearch; +@property(nonatomic) unsigned char suspendChangesToScrollingAndSelection; // @synthesize suspendChangesToScrollingAndSelection=_suspendChangesToScrollingAndSelection; +@property(nonatomic) BOOL keepSelectionWhenTogglingThread; // @synthesize keepSelectionWhenTogglingThread=_keepSelectionWhenTogglingThread; +@property(nonatomic) BOOL needsColumnSetup; // @synthesize needsColumnSetup=_needsColumnSetup; +@property(nonatomic) BOOL selectingMessagesForTransfer; // @synthesize selectingMessagesForTransfer=_selectingMessagesForTransfer; +@property(nonatomic) BOOL selectionShouldNotChange; // @synthesize selectionShouldNotChange=_selectionShouldNotChange; +@property(nonatomic) BOOL clearingSearch; // @synthesize clearingSearch=_clearingSearch; +@property(nonatomic) BOOL useBoldFontForUnreadMessages; // @synthesize useBoldFontForUnreadMessages=_useBoldFontForUnreadMessages; +@property(nonatomic) BOOL dontUpdateTrackingRects; // @synthesize dontUpdateTrackingRects=_dontUpdateTrackingRects; +@property(readonly, nonatomic) BOOL animatingThreadClosing; // @synthesize animatingThreadClosing=_animatingThreadClosing; +@property(readonly, nonatomic) BOOL animatingThreadOpening; // @synthesize animatingThreadOpening=_animatingThreadOpening; +@property(nonatomic) BOOL doubleClickThreadOpeningIsInProgress; // @synthesize doubleClickThreadOpeningIsInProgress=_doubleClickThreadOpeningIsInProgress; +@property(nonatomic) BOOL threadClosingIsInProgress; // @synthesize threadClosingIsInProgress=_threadClosingIsInProgress; +@property(nonatomic) BOOL threadOpeningIsInProgress; // @synthesize threadOpeningIsInProgress=_threadOpeningIsInProgress; +@property(nonatomic) BOOL clearSelectionOnUpdate; // @synthesize clearSelectionOnUpdate=_clearSelectionOnUpdate; +@property(nonatomic) BOOL awaitingInitialSelection; // @synthesize awaitingInitialSelection=_awaitingInitialSelection; +@property(copy, nonatomic) NSDictionary *initialMailboxViewingState; // @synthesize initialMailboxViewingState=_initialMailboxViewingState; +@property(retain, nonatomic) TableViewScrollState *savedScrollState; // @synthesize savedScrollState=_savedScrollState; +@property(nonatomic) BOOL scrollFoundSelectionIntoView; // @synthesize scrollFoundSelectionIntoView=_scrollFoundSelectionIntoView; +@property(nonatomic) long long initialScrollType; // @synthesize initialScrollType=_initialScrollType; +@property(nonatomic) BOOL awaitingInitialScrollPosition; // @synthesize awaitingInitialScrollPosition=_awaitingInitialScrollPosition; +@property(nonatomic) long long mailboxSortColumnOrder; // @synthesize mailboxSortColumnOrder=_mailboxSortColumnOrder; +@property(nonatomic) long long sortColumnOrder; // @synthesize sortColumnOrder=_sortColumnOrder; +@property(nonatomic) BOOL isShowingSearchResults; // @synthesize isShowingSearchResults=_isShowingSearchResults; +@property(nonatomic) BOOL includeDeleted; // @synthesize includeDeleted=_includeDeleted; +@property(nonatomic) BOOL isInThreadedMode; // @synthesize isInThreadedMode=_isInThreadedMode; +@property(nonatomic) BOOL mailboxSortColumnOrderAscending; // @synthesize mailboxSortColumnOrderAscending=_mailboxSortColumnOrderAscending; +@property(nonatomic) BOOL sortColumnOrderAscending; // @synthesize sortColumnOrderAscending=_sortColumnOrderAscending; +@property(nonatomic) BOOL isFocused; // @synthesize isFocused=_isFocused; +@property(copy, nonatomic) NSArray *threadIDsToOpenWhenOpened; // @synthesize threadIDsToOpenWhenOpened=_threadIDsToOpenWhenOpened; +@property(copy, nonatomic) NSDictionary *messageIDsToSelectWhenOpened; // @synthesize messageIDsToSelectWhenOpened=_messageIDsToSelectWhenOpened; +@property(retain, nonatomic) NSMapTable *storeStateTable; // @synthesize storeStateTable=_storeStateTable; +@property(copy, nonatomic) NSArray *tableColumns; // @synthesize tableColumns=_tableColumns; +@property(retain, nonatomic) MessageListContainerView *messageListContainerView; // @synthesize messageListContainerView=_messageListContainerView; +@property(nonatomic) __weak MessageViewer *delegate; // @synthesize delegate=_delegate; +@property(retain, nonatomic) MailTableView *tableView; // @synthesize tableView=_tableView; +- (void).cxx_destruct; +- (void)hideDeletions; +- (void)showDeletions; +- (id)messageToSelectIfEntireSelectionRemoved:(id)arg1; +- (void)_recordSelectionHistoryForRow:(long long)arg1; +- (void)_resetNextMessageTracking; +- (BOOL)_goUpInsteadOfDown; +- (long long)_indexOfFirstNonDeletedNonSelectedMessage:(long long)arg1 withinRowRange:(struct _NSRange)arg2 goUp:(BOOL)arg3; +@property(retain, nonatomic) MessageMall *messageMall; +- (id)mailTableView:(id)arg1 rangesForBackgroundShadingInRange:(struct _NSRange)arg2 shadingColors:(id *)arg3 leftColumnColors:(id *)arg4; +- (BOOL)shouldTrackMouse:(id)arg1; +- (void)mailTableView:(id)arg1 gotEvent:(id)arg2; +- (void)_setButtonCellNeedsDisplay; +- (void)_callWillDisplayCellForClickedCell; +- (struct CGPoint)_mouseLocationInWindow; +- (struct CGRect)frameOfClickedCell; +- (void)mailTableView:(id)arg1 willDrawRowsInRange:(struct _NSRange)arg2; +- (id)mailTableView:(id)arg1 dragImageForRowsWithIndexes:(id)arg2 event:(id)arg3 dragImageOffset:(struct CGPoint *)arg4; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (void)mailTableView:(id)arg1 didMouseDown:(id)arg2; +- (void)mailTableView:(id)arg1 willMouseDown:(id)arg2; +- (void)mailTableViewDragWillEnd:(id)arg1 operation:(unsigned long long)arg2; +- (void)transfer:(id)arg1 didCompleteWithError:(id)arg2; +- (id)messagesToTransferIsMove:(BOOL)arg1; +- (id)_filterAndExpandMessagesForTransfer:(id)arg1; +- (void)mailTableViewDraggingSession:(id)arg1 movedTo:(struct CGPoint)arg2; +- (void)archiveMessages:(id)arg1 allowUndo:(BOOL)arg2; +- (BOOL)shouldDeleteMessagesGivenCurrentState:(id)arg1; +- (void)undeleteMessagesAllowingUndo:(BOOL)arg1; +- (void)deleteMessages:(id)arg1 allowMoveToTrash:(BOOL)arg2 allowUndo:(BOOL)arg3; +- (void)_redeleteMessages:(id)arg1 messagesToSelect:(id)arg2; +- (void)undeleteMessages:(id)arg1 allowUndo:(BOOL)arg2; +- (void)_undeleteMessages:(id)arg1 allowUndo:(BOOL)arg2 unreadMessages:(id)arg3; +- (void)_adjustScrollPositionForTransferredMessages:(id)arg1 isUndo:(BOOL)arg2; +- (id)_undoActionNameForMessageCount:(unsigned long long)arg1; +- (BOOL)mailTableView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (id)messageStore; +- (id)currentDisplayedMessage; +- (id)parentThreadForChildMessage:(id)arg1; +- (id)messageThatUserIsProbablyReading; +- (void)selectMessages:(id)arg1; +- (void)_selectMessages:(id)arg1 scrollIfNeeded:(BOOL)arg2; +- (id)actionMessagesForAction:(SEL)arg1; +- (id)selection; +- (id)selectionExpandingThreadsAndHiddenCopies:(BOOL)arg1; +- (void)deleteSelectionAllowingMoveToTrash:(BOOL)arg1; +- (void)deleteKeyPressed; +- (unsigned long long)_photoSizeForNumberOfSnippetLines:(unsigned long long)arg1; +- (void)_snippetsUpdated:(id)arg1; +- (id)_localizeSnippet:(id)arg1; +- (void)_updateRowsWithNewSnippets:(id)arg1; +- (void)_updateSnippetsForMessage:(id)arg1 ignoreExpected:(BOOL)arg2; +- (void)clearSnippetCacheForMessages:(id)arg1; +- (void)mallPrefetchedSnippets:(id)arg1; +- (void)resetSnippetCache; +- (id)_messagesNeedingSnippetsAroundRow:(unsigned long long)arg1; +- (void)_performSnippetFetching; +- (void)_cacheSnippetsAroundRow:(unsigned long long)arg1; +- (id)_snippetFetchQueue; +- (id)_snippetForMessage:(id)arg1; +- (void)_doubleClickedMessage:(id)arg1; +- (id)mailTableViewTopLineColor:(id)arg1; +- (int)mailTableView:(id)arg1 highlightStyleForRow:(long long)arg2 inRect:(struct CGRect *)arg3 color:(id *)arg4; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 dataCellForTableColumn:(id)arg2 row:(long long)arg3; +- (void)_resetObjectValueForCellView:(id)arg1; +- (BOOL)_shouldShowMailboxNames; +- (void)_prepareCell:(id)arg1 withMessage:(id)arg2; +- (id)_prepareProxyForMessage:(id)arg1 selected:(BOOL)arg2 createIfNeeded:(BOOL)arg3; +- (id)tableView:(id)arg1 viewForTableColumn:(id)arg2 row:(long long)arg3; +- (id)tableView:(id)arg1 rowViewForRow:(long long)arg2; +- (void)tableView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (void)tableView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (void)_setupRowView:(id)arg1 atIndex:(long long)arg2; +- (void)_setupRowViewAtRow:(long long)arg1; +- (void)tableViewColumnDidResize:(id)arg1; +- (void)tableViewColumnDidMove:(id)arg1; +- (void)mailTableViewDidEndLiveResize:(id)arg1; +- (void)mailTableViewWillStartLiveResize:(id)arg1; +- (void)tableViewFrameChangedDuringLiveResize:(id)arg1; +- (void)tableView:(id)arg1 didDragTableColumn:(id)arg2; +- (void)updateColorHighlightEdges; +- (id)_proxyForMessage:(id)arg1 createIfNeeded:(BOOL)arg2; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (BOOL)tableView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; +- (id)tableView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 row:(long long)arg3; +- (id)_truncatedAttributedStringForString:(id)arg1 message:(id)arg2 row:(long long)arg3 shouldIndent:(BOOL)arg4; +- (id)_colorForMessage:(id)arg1 inRow:(long long)arg2 withCell:(id)arg3; +- (id)_messageSelectionColor; +- (id)_attributesForTruncatedParagraphStyle; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)selectionStateLog; +- (void)_datesNeedRedisplay:(id)arg1; +- (void)mailTableViewDidResignFirstResponder:(id)arg1; +- (void)mailTableViewDidBecomeFirstResponder:(id)arg1; +- (void)_redisplayRowsAboveSelected; +- (void)tableViewSelectionDidChange:(id)arg1; +- (id)_normalizedSelection:(id)arg1; +- (id)tableView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (void)_selectOrDeselectMembersOfThread:(id)arg1 atIndex:(long long)arg2 select:(BOOL)arg3; +- (void)updateViewingPaneToSelection; +- (id)selectedThread; +- (id)_messageSelectionWithDataForPrinting:(BOOL)arg1; +- (id)messageSelectionForPrinting; +- (id)messageSelection; +- (void)removeAllMouseTrackers; +- (void)addMouseTrackersObject:(id)arg1; +@property(copy, nonatomic) NSSet *mouseTrackers; +- (id)_openThreadIdentifiers; +- (void)_rawSelectionIdentifiersForThreads:(id *)arg1 identifiersForMessages:(id *)arg2; +- (id)_mailboxViewingState; +- (void)removeAllRawSelection; +- (void)addRawSelectionObject:(id)arg1; +- (void)replaceObjectInRawSelectionAtIndex:(unsigned long long)arg1 withObject:(id)arg2; +- (void)removeObjectFromRawSelectionAtIndex:(unsigned long long)arg1; +- (id)objectInRawSelectionAtIndex:(unsigned long long)arg1; +- (unsigned long long)countOfRawSelection; +@property(retain, nonatomic) NSArray *rawSelection; +- (void)_updateSelectedThreadList; +- (void)_reloadDisplayOnlyForMessagesInSet:(id)arg1 highlightOnly:(BOOL)arg2; +- (BOOL)_isMessageInSelectedThread:(id)arg1; +- (long long)mailTableView:(id)arg1 shouldScrollRowToVisible:(long long)arg2; +- (void)scrollRowToVisible:(long long)arg1 position:(int)arg2; +- (BOOL)isSelectionVisible; +- (void)showSelectionAndCenter:(BOOL)arg1; +- (void)selectPreviousReplyToParent; +- (void)selectNextReplyToParent; +- (void)selectPeer:(BOOL)arg1; +- (void)selectFirstReplyToMessage; +- (void)selectParentOfMessage; +- (void)selectPreviousMessage:(int)arg1; +- (void)selectNextMessage:(int)arg1; +- (BOOL)nextMessageIsBelow; +- (void)selectOldestUnreadOrNewestMessageInThread; +- (BOOL)openSelectedThread; +- (void)stepOutOfSelectedThread; +- (void)stepIntoSelectedThread; +- (void)selectNextMessageMovingUpward:(int)arg1; +- (void)selectNextMessageMovingDownward:(int)arg1; +- (unsigned long long)_modifierFlagsForKeyboardNavigation; +- (BOOL)selectionIsExactlyOneOpenThread; +- (BOOL)canSelectNextReplyToParent; +- (BOOL)canSelectFirstReplyToMessage; +- (BOOL)canSelectParentOfMessage; +- (BOOL)canSelectNextThreadedMessage; +- (BOOL)canSelectPreviousThreadedMessage; +- (long long)_indexOfMessageNearest:(long long)arg1 numberOfRows:(long long)arg2 downward:(BOOL)arg3; +- (void)toggleThread:(id)arg1 ignoreModifierKeys:(BOOL)arg2; +- (void)toggleThread:(id)arg1; +- (void)unhideMessages:(id)arg1; +- (BOOL)hideMessages:(id)arg1; +- (void)closeAllThreads; +- (void)openAllThreads; +- (void)closeThread:(id)arg1; +- (void)openThread:(id)arg1; +- (void)invalidateSelectionCache:(id)arg1; +- (void)toggleThreadedMode; +@property(retain, nonatomic) NSFont *font; +- (void)_updateTableViewRowHeight; +- (double)tableView:(id)arg1 heightOfRow:(long long)arg2; +- (double)tableViewRowHeightForRichMessageList:(BOOL)arg1; +- (void)makeMessageListFirstResponder; +- (void)selectAllMessagesAndMakeFirstResponder; +- (long long)tableViewNumberOfColumnsToPinToLefthandSide:(id)arg1; +- (BOOL)mailTableView:(id)arg1 shouldAddTableColumn:(id)arg2; +- (BOOL)mailTableView:(id)arg1 shouldRemoveTableColumn:(id)arg2; +- (BOOL)tableView:(id)arg1 shouldReorderColumn:(long long)arg2 toColumn:(long long)arg3; +- (void)_setColumn:(long long)arg1 toVisible:(BOOL)arg2; +- (void)setColumn:(long long)arg1 toVisible:(BOOL)arg2; +- (void)_updateAttributesForMailboxes; +- (BOOL)isColumnVisible:(long long)arg1; +- (BOOL)_isAutomaticInsertionWhileSearchingOkayForColumn:(long long)arg1; +- (BOOL)_isColumnVisibleInSettings:(long long)arg1; +- (id)_unreadColumn; +- (id)_columnWithIdentifierTag:(long long)arg1; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)_updateTableHeaderToMatchCurrentSort; +- (void)_threadColorPreferenceChanged:(id)arg1; +- (void)_snippetLinePreferenceChanged:(id)arg1; +- (void)_toCcPreferenceChanged:(id)arg1; +- (void)_viewerLayoutPreferenceChanged:(id)arg1; +- (void)_viewerPreferencesChanged:(id)arg1; +- (BOOL)canSelectPreviousMessage; +- (BOOL)canSelectNextMessage; +- (void)readStoreSpecificAttributesFromDictionary:(id)arg1; +- (void)readStoreSpecificAttributesFromMailbox:(id)arg1; +- (void)writeStoreSpecificAttributesToMailbox:(id)arg1; +- (void)writeAttributesToDictionary:(id)arg1; +- (void)readAttributesFromDictionary:(id)arg1; +- (void)setupColumnManagerFromDictionary:(id)arg1; +- (void)_mallConversationsUpdated:(id)arg1; +- (void)_messageMarkedForOverwrite:(id)arg1; +- (void)prepareForWindowClose; +- (void)dealloc; +- (void)_configureTableViewLayoutWithTableColumnResizingMasks:(id)arg1; +- (void)_setupColumnsForTableView; +- (void)showFollowupsToMessageAtRow:(long long)arg1; +- (void)showFollowupsToMessage:(id)arg1; +- (void)richUnreadButtonClicked:(id)arg1; +- (void)_createTintedImages; +- (void)_configureRichMessageListColumn; +- (void)_configureColumnForRolloverCell:(id)arg1 alignment:(unsigned long long)arg2 action:(SEL)arg3; +- (void)_configureColumnForImageCell:(id)arg1 alignment:(unsigned long long)arg2; +- (void)_configureColumnForEndTruncation:(id)arg1; +- (void)_setupTableColumnWidths; +- (void)_setupColumnHeaderIcon:(id)arg1 inColumnWithIdentifier:(id)arg2 accessibilityLabel:(id)arg3 alignment:(unsigned long long)arg4; +- (void)userDidScrollInTableView:(id)arg1; +- (void)_tableViewScrolled:(id)arg1; +- (BOOL)respondsToSelector:(SEL)arg1; +- (id)tableViewGetDefaultMenu:(id)arg1; +- (void)_unregisterTableViewNibs; +- (void)_registerTableViewNibs; +- (void)awakeFromNib; +- (id)init; +- (long long)_columnForAppleScriptColumn:(unsigned int)arg1; +- (void)setAppleScriptVisibleColumns:(id)arg1; +- (id)appleScriptVisibleColumns; +- (void)setAppleScriptSortColumn:(unsigned int)arg1; +- (unsigned int)appleScriptSortColumn; +- (void)mailTableViewDidMoveToWindow:(id)arg1; +- (void)mailTableView:(id)arg1 willMoveToWindow:(id)arg2; +- (double)_scrollRectToVisibleAdjustment:(struct CGRect)arg1 visibleRect:(struct CGRect)arg2; +- (BOOL)_isRowVisible:(long long)arg1; +- (double)_getAnimationDuration:(unsigned long long)arg1; +- (unsigned long long)_indexOfMemberToSelectWhenOpeningThread:(id)arg1; +- (void)updateTrackingRects; +- (void)clearTrackingRects; +- (id)filteredMessages; +- (void)setIsSortedAscending:(BOOL)arg1; +- (BOOL)isSortedAscending; +- (void)setSortColumn:(long long)arg1 ascending:(BOOL)arg2; +- (id)sortByStringForColumn:(long long)arg1; +- (long long)sortColumn; +- (BOOL)isSortedChronologically; +- (BOOL)isSortedByDateReceived; +- (void)searchForString:(id)arg1 in:(int)arg2 withOptions:(long long)arg3; +- (void)searchForSuggestions:(id)arg1 in:(int)arg2 withOptions:(long long)arg3 fromSuggestionsSearchField:(id)arg4; +- (void)_updateInitialViewingState; +- (void)_searchForString:(id)arg1 orSuggestions:(id)arg2 in:(int)arg3 withOptions:(long long)arg4 fromSuggestionsSearchField:(id)arg5; +- (void)clearSearch; +- (void)messagesRemovedFromMall:(id)arg1; +- (void)_updateSearchDelegate; +- (void)mallFinishedLoading:(id)arg1; +- (void)_setupColumns; +- (void)mallStructureChanged:(id)arg1; +- (void)mallStructureWillChange:(id)arg1; +- (void)mallSortChanged:(id)arg1; +- (void)reloadMailboxes:(id)arg1; +- (void)setMailboxes:(id)arg1 isSettingUpUI:(BOOL)arg2; +- (void)_restoreScrollState:(id)arg1; +- (id)_currentScrollState; +- (BOOL)_debugThreadAnimation; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TableViewScrollState.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TableViewScrollState.h new file mode 100644 index 00000000..4b65e72b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TableViewScrollState.h @@ -0,0 +1,21 @@ +/* + * 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" + +@interface TableViewScrollState : NSObject +{ + long long _type; + long long _pinnedRow; + double _offsetFromTop; +} + +@property(nonatomic) double offsetFromTop; // @synthesize offsetFromTop=_offsetFromTop; +@property(nonatomic) long long pinnedRow; // @synthesize pinnedRow=_pinnedRow; +@property(nonatomic) long long type; // @synthesize type=_type; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TemporaryAttachmentOpener.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TemporaryAttachmentOpener.h new file mode 100644 index 00000000..170d9f15 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TemporaryAttachmentOpener.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "GenericAttachmentFetcher.h" + +@class NSString; + +@interface TemporaryAttachmentOpener : GenericAttachmentFetcher +{ + NSString *_applicationPath; +} + +@property(readonly, copy, nonatomic) NSString *applicationPath; // @synthesize applicationPath=_applicationPath; +- (void).cxx_destruct; +- (double)temporaryFolderTimeout; +- (void)didSaveAttachment:(id)arg1 toPath:(id)arg2; +- (void)_openAttachmentAtPath:(id)arg1; +- (void)downloadedAllAttachments; +- (id)initWithAttachments:(id)arg1; +- (id)initWithAttachments:(id)arg1 applicationPath:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TemporaryItemManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TemporaryItemManager.h new file mode 100644 index 00000000..99c4d4ad --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TemporaryItemManager.h @@ -0,0 +1,39 @@ +/* + * 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 "NSFileManagerDelegate.h" + +@class NSString, NSTimer; + +@interface TemporaryItemManager : NSObject +{ + NSString *_path; + NSTimer *_timer; +} + ++ (id)temporaryItemManagerWithRelativePath:(id)arg1 cleanupInterval:(double)arg2; ++ (void)cleanupAllItems; +@property(retain, nonatomic) NSTimer *timer; // @synthesize timer=_timer; +@property(copy, nonatomic) NSString *path; // @synthesize path=_path; +- (void).cxx_destruct; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtURL:(id)arg3; +- (BOOL)fileManager:(id)arg1 shouldProceedAfterError:(id)arg2 removingItemAtPath:(id)arg3; +- (void)cleanUpDirectory; +- (void)setExpirationDate:(id)arg1; +- (void)_setUpTimer:(id)arg1; +- (id)expirationDate; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TextButtonToolbarItem.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TextButtonToolbarItem.h new file mode 100644 index 00000000..cb587611 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TextButtonToolbarItem.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@interface TextButtonToolbarItem : NSToolbarItem +{ +} + +- (void)setLabel:(id)arg1; +- (id)control; +- (void)validate; +- (void)configureForDisplayMode:(unsigned long long)arg1 andSizeMode:(unsigned long long)arg2; +- (id)initWithItemIdentifier:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TextMessageDisplay.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TextMessageDisplay.h new file mode 100644 index 00000000..0c124d34 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TextMessageDisplay.h @@ -0,0 +1,51 @@ +/* + * 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 "NSTextViewDelegate.h" + +@class MCMessage, MessageTextView, NSAttributedString, NSString, NSWindow; + +@interface TextMessageDisplay : NSObject +{ + BOOL _showControlCharacters; + MCMessage *_message; + NSWindow *_singleWindow; + MessageTextView *_textView; + NSAttributedString *_rawSourceString; +} + ++ (void)_removeDisplayForMessage:(id)arg1; ++ (void)displayRawSourceForMessage:(id)arg1; +@property(nonatomic) BOOL showControlCharacters; // @synthesize showControlCharacters=_showControlCharacters; +@property(copy, nonatomic) NSAttributedString *rawSourceString; // @synthesize rawSourceString=_rawSourceString; +@property(nonatomic) MessageTextView *textView; // @synthesize textView=_textView; +@property(retain, nonatomic) NSWindow *singleWindow; // @synthesize singleWindow=_singleWindow; +@property(retain, nonatomic) MCMessage *message; // @synthesize message=_message; +- (void).cxx_destruct; +- (void)saveAs:(id)arg1; +- (void)toggleShowControlCharacters:(id)arg1; +- (void)showPrintPanel:(id)arg1; +- (void)setTitle:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)bringToFront; +- (BOOL)validateMenuItem:(id)arg1; +- (id)messageTextView:(id)arg1 willReturnMenu:(id)arg2 forEvent:(id)arg3; +- (void)_displayRawSource; +- (void)_prepareForMessage:(id)arg1; +- (void)_beginBackgroundLoad; +- (void)dealloc; +- (void)awakeFromNib; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ThreadDisclosureTextField.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ThreadDisclosureTextField.h new file mode 100644 index 00000000..97c5f1e9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ThreadDisclosureTextField.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextField.h" + +@class NSTrackingArea; + +@interface ThreadDisclosureTextField : NSTextField +{ + BOOL _hovering; + NSTrackingArea *_trackingArea; +} + +@property(nonatomic) BOOL hovering; // @synthesize hovering=_hovering; +@property(retain, nonatomic) NSTrackingArea *trackingArea; // @synthesize trackingArea=_trackingArea; +- (void).cxx_destruct; +@property(nonatomic) BOOL isOpen; +- (void)mouseExited:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)mouseDown:(id)arg1; +- (void)updateTrackingAreas; +- (void)_threadDisclosureTextFieldCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ThumbnailButtonCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ThumbnailButtonCell.h new file mode 100644 index 00000000..acaaa26d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ThumbnailButtonCell.h @@ -0,0 +1,31 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@class NSButton; + +@interface ThumbnailButtonCell : NSButtonCell +{ + NSButton *_deleteButton; + long long _trackingRectTag; +} + +@property(nonatomic) long long trackingRectTag; // @synthesize trackingRectTag=_trackingRectTag; +@property(retain, nonatomic) NSButton *deleteButton; // @synthesize deleteButton=_deleteButton; +- (void).cxx_destruct; +- (unsigned long long)focusRingType; +- (void)mouseExited:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (id)_textColor; +- (struct CGRect)drawTitle:(id)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (void)drawImage:(id)arg1 withFrame:(struct CGRect)arg2 inView:(id)arg3; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (struct CGSize)cellSizeForBounds:(struct CGRect)arg1; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ThumbnailMatrix.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ThumbnailMatrix.h new file mode 100644 index 00000000..0face0ad --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ThumbnailMatrix.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSMatrix.h" + +@interface ThumbnailMatrix : NSMatrix +{ + BOOL _shouldShowButtons; +} + +@property(nonatomic) BOOL shouldShowButtons; // @synthesize shouldShowButtons=_shouldShowButtons; +- (BOOL)_performDragFromMouseDown:(id)arg1; +- (struct CGRect)frameOfThumbnailAtIndex:(long long)arg1; +- (void)_addButtonAtIndex:(long long)arg1; +- (void)showDeleteButtons:(BOOL)arg1 beginningAtIndex:(long long)arg2; +- (void)highlightCell:(BOOL)arg1 atRow:(long long)arg2 column:(long long)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ThunderbirdEmailImporter.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ThunderbirdEmailImporter.h new file mode 100644 index 00000000..c1d871b3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ThunderbirdEmailImporter.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "FilesystemEmailImporter.h" + +@interface ThunderbirdEmailImporter : FilesystemEmailImporter +{ +} + ++ (id)explanatoryText; ++ (id)name; +- (char *)fromString; +- (id)pathExtensions; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TilingWebView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TilingWebView.h new file mode 100644 index 00000000..bb075d69 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TilingWebView.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebView.h" + +@interface TilingWebView : WebView +{ + BOOL _disableSizeToFit; + double _leftMargin; + double _minHeight; +} + +@property(nonatomic) double minHeight; // @synthesize minHeight=_minHeight; +@property(nonatomic) double leftMargin; // @synthesize leftMargin=_leftMargin; +@property(nonatomic) BOOL disableSizeToFit; // @synthesize disableSizeToFit=_disableSizeToFit; +- (void)sizeToFit; +- (id)initWithFrame:(struct CGRect)arg1 frameName:(id)arg2 groupName:(id)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TransparentImageView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TransparentImageView.h new file mode 100644 index 00000000..b901b03e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TransparentImageView.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageView.h" + +@class NSView; + +@interface TransparentImageView : NSImageView +{ + NSView *_backgroundView; +} + +@property(retain, nonatomic) NSView *backgroundView; // @synthesize backgroundView=_backgroundView; +- (void).cxx_destruct; +- (void)drawRect:(struct CGRect)arg1; +- (void)awakeFromNib; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TypeAheadWindow.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TypeAheadWindow.h new file mode 100644 index 00000000..970a40f8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/TypeAheadWindow.h @@ -0,0 +1,30 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "FullScreenModalCapableWindow.h" + +@interface TypeAheadWindow : FullScreenModalCapableWindow +{ + BOOL _sendsMouseDownNotifications; + BOOL _shouldFlushTypeAheadEvents; +} + ++ (BOOL)handleEvent:(id)arg1; +@property(nonatomic) BOOL shouldFlushTypeAheadEvents; // @synthesize shouldFlushTypeAheadEvents=_shouldFlushTypeAheadEvents; +@property(nonatomic) BOOL sendsMouseDownNotifications; // @synthesize sendsMouseDownNotifications=_sendsMouseDownNotifications; +- (void)performTextFinderAction:(id)arg1; +- (BOOL)canEnterFullScreenMode; +- (void)sendEvent:(id)arg1; +- (void)close; +- (void)_flushTypeAheadEvents; +- (void)becomeKeyWindow; +- (void)flushTypeAheadEventsWhenAppropriate; +- (void)startRecordingTypeAheadEvents; +- (id)initWithContentRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4 screen:(id)arg5; +- (id)initWithContentRect:(struct CGRect)arg1 styleMask:(unsigned long long)arg2 backing:(unsigned long long)arg3 defer:(BOOL)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UnfoldAnimationController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UnfoldAnimationController.h new file mode 100644 index 00000000..8ae0e843 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UnfoldAnimationController.h @@ -0,0 +1,44 @@ +/* + * 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" + +@class NSOpenGLContext, NSTimer, NSWindow, QCRenderer; + +@interface UnfoldAnimationController : NSObject +{ + double _foldHeight; + NSWindow *_window; + NSOpenGLContext *_glContext; + QCRenderer *_renderer; + NSTimer *_timer; + double _foldTop; + double _startTime; + double _duration; + id _completionBlock; + struct CGSize _size; +} + +@property(copy, nonatomic) id completionBlock; // @synthesize completionBlock=_completionBlock; +@property(nonatomic) double duration; // @synthesize duration=_duration; +@property(nonatomic) double startTime; // @synthesize startTime=_startTime; +@property(nonatomic) double foldTop; // @synthesize foldTop=_foldTop; +@property(nonatomic) struct CGSize size; // @synthesize size=_size; +@property(retain, nonatomic) NSTimer *timer; // @synthesize timer=_timer; +@property(retain, nonatomic) QCRenderer *renderer; // @synthesize renderer=_renderer; +@property(retain, nonatomic) NSOpenGLContext *glContext; // @synthesize glContext=_glContext; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +@property(nonatomic) double foldHeight; // @synthesize foldHeight=_foldHeight; +- (void).cxx_destruct; +@property(readonly, nonatomic) double overflowHeight; +- (void)_renderTimer:(id)arg1; +- (void)stopAnimation; +- (void)startAnimationWithDestinationImage:(id)arg1 completionBlock:(id)arg2; +- (void)prepareAnimationWithSourceImage:(id)arg1 foldTop:(double)arg2 contentTop:(double)arg3 contentBottom:(double)arg4 sideMargin:(double)arg5 screenRect:(struct CGRect)arg6 parentWindow:(id)arg7; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UserActivityHandler.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UserActivityHandler.h new file mode 100644 index 00000000..bbd80174 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UserActivityHandler.h @@ -0,0 +1,57 @@ +/* + * 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 "NSStreamDelegate.h" + +@class DocumentEditor, NSMutableData, NSOutputStream, NSString, NSTimer, SingleMessageViewer; + +@interface UserActivityHandler : NSObject +{ + BOOL _applicationHasFinishedLaunching; + BOOL _draftDataComplete; + NSString *_waitingForActivityOfType; + SingleMessageViewer *_viewerBeingContinued; + NSString *_messageURLString; + NSTimer *_timeoutTimer; + DocumentEditor *_composeWindowBeingContinued; + unsigned long long _continuationDataLength; + NSOutputStream *_continuationReplyStream; + NSMutableData *_continuationDraftData; +} + +@property(nonatomic) BOOL draftDataComplete; // @synthesize draftDataComplete=_draftDataComplete; +@property(retain, nonatomic) NSMutableData *continuationDraftData; // @synthesize continuationDraftData=_continuationDraftData; +@property(retain, nonatomic) NSOutputStream *continuationReplyStream; // @synthesize continuationReplyStream=_continuationReplyStream; +@property(nonatomic) unsigned long long continuationDataLength; // @synthesize continuationDataLength=_continuationDataLength; +@property(retain, nonatomic) DocumentEditor *composeWindowBeingContinued; // @synthesize composeWindowBeingContinued=_composeWindowBeingContinued; +@property(retain, nonatomic) NSTimer *timeoutTimer; // @synthesize timeoutTimer=_timeoutTimer; +@property(retain) NSString *messageURLString; // @synthesize messageURLString=_messageURLString; +@property(retain, nonatomic) SingleMessageViewer *viewerBeingContinued; // @synthesize viewerBeingContinued=_viewerBeingContinued; +@property(retain, nonatomic) NSString *waitingForActivityOfType; // @synthesize waitingForActivityOfType=_waitingForActivityOfType; +@property(nonatomic) BOOL applicationHasFinishedLaunching; // @synthesize applicationHasFinishedLaunching=_applicationHasFinishedLaunching; +- (void).cxx_destruct; +- (void)stream:(id)arg1 handleEvent:(unsigned long long)arg2; +- (void)_timeout:(id)arg1; +- (void)_libraryMessagesUpdated:(id)arg1; +- (void)_populateDraftWindow; +- (void)_showContinuedMessage; +- (void)_prepareWindowForActivity; +- (void)didFailToContinueUserActivityWithType:(id)arg1 error:(id)arg2; +- (BOOL)continueUserActivity:(id)arg1 restorationHandler:(id)arg2; +- (BOOL)willContinueUserActivityWithType:(id)arg1; +- (void)_applicationDidFinishLaunching:(id)arg1; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UserNotificationCenterController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UserNotificationCenterController.h new file mode 100644 index 00000000..99c38123 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UserNotificationCenterController.h @@ -0,0 +1,67 @@ +/* + * 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 "NSUserNotificationCenterDelegate.h" + +@class MFMailbox, NSMutableArray, NSMutableDictionary, NSMutableSet, NSOperationQueue, NSString; + +@interface UserNotificationCenterController : NSObject +{ + MFMailbox *_userNotificationMailbox; + long long _userNotificationScope; + NSMutableDictionary *_messagesInNeedingSnippetsInMailboxes; + NSMutableSet *_messagesSentBySelf; + NSMutableSet *_forcedNotificationMessageIDs; + NSMutableArray *_mostRecentMessageDates; + BOOL _isRichList; + BOOL _shouldLogUserNotificationEvents; + NSOperationQueue *_operationQueue; + unsigned long long _numberOfSnippetLines; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(nonatomic) BOOL shouldLogUserNotificationEvents; // @synthesize shouldLogUserNotificationEvents=_shouldLogUserNotificationEvents; +@property(nonatomic) unsigned long long numberOfSnippetLines; // @synthesize numberOfSnippetLines=_numberOfSnippetLines; +@property(nonatomic) BOOL isRichList; // @synthesize isRichList=_isRichList; +@property(retain, nonatomic) NSOperationQueue *operationQueue; // @synthesize operationQueue=_operationQueue; +- (void).cxx_destruct; +- (BOOL)_shouldSendUserNotificationForMessage:(id)arg1 inMailbox:(id)arg2; +- (BOOL)userNotificationCenter:(id)arg1 shouldPresentNotification:(id)arg2; +- (void)userNotificationCenter:(id)arg1 didDismissAlert:(id)arg2; +- (void)userNotificationCenter:(id)arg1 didActivateNotification:(id)arg2; +- (BOOL)userNotificationCenter:(id)arg1 shouldActivateForNotification:(id)arg2; +- (void)setUserNotificationScope:(long long)arg1 mailbox:(id)arg2; +- (long long)userNotificationScope; +- (void)_deleteUserNotificationWithKey:(id)arg1 object:(id)arg2; +- (void)_mailAccountsChanged:(id)arg1; +- (void)_viewerLayoutPreferenceChanged:(id)arg1; +- (void)_messagesWereReadOrDeleted:(id)arg1; +- (void)_sendUserNotificationForSenderName:(id)arg1 subject:(id)arg2 snippet:(id)arg3 messageID:(id)arg4 accountID:(id)arg5 mailboxPersistentID:(id)arg6 messageDate:(id)arg7 isVip:(BOOL)arg8 hasAttachments:(BOOL)arg9; +- (void)_postUserNotificationForMessagesInMailboxes:(id)arg1 withSnippets:(id)arg2; +- (void)_messageSnippetsUpdated:(id)arg1; +- (id)_snippetsForMessagesInMailboxes:(id)arg1; +- (void)_ruleWasMatched:(id)arg1; +- (BOOL)_shouldGetSnippetForMessage:(id)arg1; +- (void)_messagesWereAdded:(id)arg1; +- (void)_snippetLinePreferenceChanged:(id)arg1; +- (void)_setUserNotificationMailbox:(id)arg1; +- (id)userNotificationMailbox; +- (void)_mailboxWillBeInvalidated:(id)arg1; +- (void)_clearNotificationsForDeletedAccounts; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UserScriptGenerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UserScriptGenerator.h new file mode 100644 index 00000000..0769bc39 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UserScriptGenerator.h @@ -0,0 +1,21 @@ +/* + * 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" + +@class NSArray; + +@interface UserScriptGenerator : NSObject +{ +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +@property(readonly, copy, nonatomic) NSArray *userScripts; +- (void)dealloc; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UserStyleSheetGenerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UserStyleSheetGenerator.h new file mode 100644 index 00000000..9c963153 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/UserStyleSheetGenerator.h @@ -0,0 +1,25 @@ +/* + * 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" + +@class NSString; + +@interface UserStyleSheetGenerator : NSObject +{ + NSString *_styleSheetString; +} + ++ (id)sharedInstance; ++ (id)allocWithZone:(struct _NSZone *)arg1; +- (void).cxx_destruct; +- (void)_generateStyleSheetString; +@property(retain, nonatomic) NSString *userStyleSheetString; +- (void)dealloc; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/VerticallyCenteredTextFieldCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/VerticallyCenteredTextFieldCell.h new file mode 100644 index 00000000..2f93e29a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/VerticallyCenteredTextFieldCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface VerticallyCenteredTextFieldCell : NSTextFieldCell +{ +} + +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ViewTextAttachmentCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ViewTextAttachmentCell.h new file mode 100644 index 00000000..47baf1c9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ViewTextAttachmentCell.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewTextAttachmentCell.h" + +@class NSView; + +@interface ViewTextAttachmentCell : NSViewTextAttachmentCell +{ + NSView *_view; + NSView *_containingView; + struct CGSize _viewSize; +} + +@property(nonatomic) struct CGSize viewSize; // @synthesize viewSize=_viewSize; +@property(nonatomic) __weak NSView *containingView; // @synthesize containingView=_containingView; +- (void).cxx_destruct; +- (void)dealloc; +- (void)releaseView:(id)arg1; +- (struct CGSize)cellSize; +- (id)viewWithFrame:(struct CGRect)arg1 forView:(id)arg2 characterIndex:(unsigned long long)arg3 layoutManager:(id)arg4; +- (id)view; +- (void)setControlView:(id)arg1; +- (id)controlView; +- (id)initWithView:(id)arg1; +- (void)_viewFrameChanged:(id)arg1; +- (void)_viewFrameChanged; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ViewerPreferences.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ViewerPreferences.h new file mode 100644 index 00000000..5c3a470a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ViewerPreferences.h @@ -0,0 +1,92 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPreferencesModule.h" + +#import "NSTableViewDataSource.h" + +@class NSButton, NSColorWell, NSMutableArray, NSPanel, NSPopUpButton, NSSegmentedControl, NSString, NSTableView; + +@interface ViewerPreferences : NSPreferencesModule +{ + NSMutableArray *_filteredHeaders; + BOOL _isEditingHeader; + NSButton *_highlightThreadCheckbox; + NSColorWell *_threadHighlightColorWell; + NSButton *_loadURLsSwitch; + NSButton *_showUnreadMessagesInBoldSwitch; + NSButton *_useSmartAddressesSwitch; + NSTableView *_customHeaderTable; + NSSegmentedControl *_addRemoveHeaderControl; + NSPanel *_customHeaderPanel; + NSPopUpButton *_snippetLinesPopup; + NSButton *_classicLayoutButton; + NSButton *_toCcButton; + NSButton *_contactPhotosButton; + NSButton *_viewRelatedMessagesButton; + NSPopUpButton *_headerDetailPopup; +} + ++ (void)postSnippetLinesPreferenceChanged; ++ (void)postContactPhotoPreferenceChanged; ++ (void)_postToCcPreferenceChanged; ++ (void)postLayoutPreferenceChanged; ++ (void)postViewingPreferencesChanged; +@property(nonatomic) BOOL isEditingHeader; // @synthesize isEditingHeader=_isEditingHeader; +@property(nonatomic) __weak NSPopUpButton *headerDetailPopup; // @synthesize headerDetailPopup=_headerDetailPopup; +@property(nonatomic) __weak NSButton *viewRelatedMessagesButton; // @synthesize viewRelatedMessagesButton=_viewRelatedMessagesButton; +@property(nonatomic) __weak NSButton *contactPhotosButton; // @synthesize contactPhotosButton=_contactPhotosButton; +@property(nonatomic) __weak NSButton *toCcButton; // @synthesize toCcButton=_toCcButton; +@property(nonatomic) __weak NSButton *classicLayoutButton; // @synthesize classicLayoutButton=_classicLayoutButton; +@property(nonatomic) __weak NSPopUpButton *snippetLinesPopup; // @synthesize snippetLinesPopup=_snippetLinesPopup; +@property(retain, nonatomic) NSPanel *customHeaderPanel; // @synthesize customHeaderPanel=_customHeaderPanel; +@property(nonatomic) __weak NSSegmentedControl *addRemoveHeaderControl; // @synthesize addRemoveHeaderControl=_addRemoveHeaderControl; +@property(nonatomic) __weak NSTableView *customHeaderTable; // @synthesize customHeaderTable=_customHeaderTable; +@property(nonatomic) __weak NSButton *useSmartAddressesSwitch; // @synthesize useSmartAddressesSwitch=_useSmartAddressesSwitch; +@property(nonatomic) __weak NSButton *showUnreadMessagesInBoldSwitch; // @synthesize showUnreadMessagesInBoldSwitch=_showUnreadMessagesInBoldSwitch; +@property(nonatomic) __weak NSButton *loadURLsSwitch; // @synthesize loadURLsSwitch=_loadURLsSwitch; +@property(nonatomic) __weak NSColorWell *threadHighlightColorWell; // @synthesize threadHighlightColorWell=_threadHighlightColorWell; +@property(nonatomic) __weak NSButton *highlightThreadCheckbox; // @synthesize highlightThreadCheckbox=_highlightThreadCheckbox; +- (void).cxx_destruct; +- (void)viewRelatedMessagesClicked:(id)arg1; +- (void)contactPhotosClicked:(id)arg1; +- (void)toCcClicked:(id)arg1; +- (void)classicLayoutClicked:(id)arg1; +- (void)snippetLinesChanged:(id)arg1; +- (void)showUnreadMessagesInBoldChanged:(id)arg1; +- (void)threadHighlightColorChanged:(id)arg1; +- (void)highlightThreadClicked:(id)arg1; +- (void)headerDetailLevelChanged:(id)arg1; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (void)addRemoveHeaderClicked:(id)arg1; +- (void)cancelClicked:(id)arg1; +- (void)okClicked:(id)arg1; +- (void)_endEditingHeader; +- (void)_removeInvalidHeaders; +- (void)_headerTableEndedEditing:(id)arg1; +- (void)_headerTableBeganEditing:(id)arg1; +- (void)_editCustomHeadersClicked; +- (void)useSmartAddressesClicked:(id)arg1; +- (void)loadURLsClicked:(id)arg1; +- (void)initializeFromDefaults; +- (void)_updateCustomHeaderUI; +- (id)imageForPreferenceNamed:(id)arg1; +- (id)windowTitle; +- (id)titleForIdentifier:(id)arg1; +- (BOOL)isResizable; +- (void)dealloc; +- (void)awakeFromNib; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ViewingPaneView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ViewingPaneView.h new file mode 100644 index 00000000..20a9e7af --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ViewingPaneView.h @@ -0,0 +1,45 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class CALayer, NSHashTable, NSImageView; + +@interface ViewingPaneView : NSView +{ + NSHashTable *_topAlignedSubviews; + NSHashTable *_managedConstraints; + NSView *_singleMessageLoadingView; + NSImageView *_snapshotView; + NSView *_contentView; + CALayer *_edgeLayer; +} + ++ (BOOL)automaticallyNotifiesObserversOfContentView; +@property(nonatomic) __weak CALayer *edgeLayer; // @synthesize edgeLayer=_edgeLayer; +@property(readonly, nonatomic) NSImageView *snapshotView; // @synthesize snapshotView=_snapshotView; +@property(readonly, nonatomic) NSView *singleMessageLoadingView; // @synthesize singleMessageLoadingView=_singleMessageLoadingView; +- (void).cxx_destruct; +- (void)setLoadingOption:(long long)arg1; +- (void)updateConstraints; +@property(nonatomic) BOOL isVertical; +- (void)_showSnapshot; +- (void)_showSingleMessageLoadingView; +- (void)_hideSnapshot; +- (void)_hideSingleMessageLoadingView; +- (void)setContentView:(id)arg1 titlebarAligned:(BOOL)arg2; +@property(readonly, nonatomic) NSView *contentView; // @synthesize contentView=_contentView; +- (void)_createSnapshotView; +- (void)_createSingleMessageLoadingView; +- (void)_createBackdropView; +- (id)_buildEdgeLayer; +- (id)makeBackingLayer; +- (void)_viewingPaneViewCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ViewingPaneViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ViewingPaneViewController.h new file mode 100644 index 00000000..a1a9a73b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/ViewingPaneViewController.h @@ -0,0 +1,50 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +@class ConversationViewController, MailStackViewController, MessageSelection, NSView, NoSelectionPlaceholderView, ViewingPaneView; + +@interface ViewingPaneViewController : NSViewController +{ + BOOL _disableSnapshots; + BOOL _showMailboxNames; + NoSelectionPlaceholderView *_placeholderView; + ConversationViewController *_conversationViewController; + MailStackViewController *_stackViewController; + NSView *_snapshotView; +} + +@property BOOL showMailboxNames; // @synthesize showMailboxNames=_showMailboxNames; +@property(retain, nonatomic) NSView *snapshotView; // @synthesize snapshotView=_snapshotView; +@property(retain, nonatomic) MailStackViewController *stackViewController; // @synthesize stackViewController=_stackViewController; +@property(retain, nonatomic) ConversationViewController *conversationViewController; // @synthesize conversationViewController=_conversationViewController; +@property(retain, nonatomic) NoSelectionPlaceholderView *placeholderView; // @synthesize placeholderView=_placeholderView; +@property BOOL disableSnapshots; // @synthesize disableSnapshots=_disableSnapshots; +- (void).cxx_destruct; +- (BOOL)validateToolbarItem:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)_snapshotTimeout; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)setVertical:(BOOL)arg1; +- (void)_displayStackView; +- (void)_displayConversationView; +- (void)_displayNoSelectionPlaceholder; +- (id)actionViewController; +- (id)actionConversationMembers; +- (id)actionMessagesIncludingDuplicates:(BOOL)arg1; +- (id)currentMessageSelection; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +@property(retain) MessageSelection *representedObject; +@property(retain) ViewingPaneView *view; +- (void)loadView; +- (void)dealloc; +- (void)_viewingPaneViewControllerCommonInit; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebComposeMessageContents.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebComposeMessageContents.h new file mode 100644 index 00000000..3f686739 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebComposeMessageContents.h @@ -0,0 +1,34 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class NSAttributedString, NSDictionary, NSMutableArray, NSString, NSURL; + +@interface WebComposeMessageContents : NSObject +{ + BOOL _isMailDropPlaceholderMessage; + long long _composeMode; + NSAttributedString *_plainText; + NSString *_topLevelHtmlString; + NSMutableArray *_attachmentsAndHtmlStrings; + NSMutableArray *_urlsForAttachmentsAndHtmlStrings; + NSDictionary *_remoteAttachments; + NSURL *_imageArchiveURL; +} + +@property(nonatomic) BOOL isMailDropPlaceholderMessage; // @synthesize isMailDropPlaceholderMessage=_isMailDropPlaceholderMessage; +@property(retain, nonatomic) NSURL *imageArchiveURL; // @synthesize imageArchiveURL=_imageArchiveURL; +@property(copy, nonatomic) NSDictionary *remoteAttachments; // @synthesize remoteAttachments=_remoteAttachments; +@property(retain, nonatomic) NSMutableArray *urlsForAttachmentsAndHtmlStrings; // @synthesize urlsForAttachmentsAndHtmlStrings=_urlsForAttachmentsAndHtmlStrings; +@property(retain, nonatomic) NSMutableArray *attachmentsAndHtmlStrings; // @synthesize attachmentsAndHtmlStrings=_attachmentsAndHtmlStrings; +@property(retain, nonatomic) NSString *topLevelHtmlString; // @synthesize topLevelHtmlString=_topLevelHtmlString; +@property(retain, nonatomic) NSAttributedString *plainText; // @synthesize plainText=_plainText; +@property(nonatomic) long long composeMode; // @synthesize composeMode=_composeMode; +//- (void).cxx_destruct; +- (id)description; +- (void)addAttachmentOrHtmlString:(id)arg1 withURL:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebDocumentGenerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebDocumentGenerator.h new file mode 100644 index 00000000..d981440f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebDocumentGenerator.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class ConversationMember, MCActivityMonitor, MCTaskOperation, MUIWebDocument, NSMutableArray, NSOperationQueue; + +@interface WebDocumentGenerator : NSObject +{ + NSMutableArray *_asyncLoadCompletionHandlers; + MCActivityMonitor *_loadMonitor; + MCTaskOperation *_fetchOperation; + MCTaskOperation *_parseOperation; + BOOL _startedLoad; + BOOL _registeredForMessageDataAvailableNotification; + MUIWebDocument *_webDocument; + NSOperationQueue *_configurationSerialQueue; + ConversationMember *_conversationMember; +} + +@property(readonly, nonatomic) __weak ConversationMember *conversationMember; // @synthesize conversationMember=_conversationMember; +@property(readonly, nonatomic) NSOperationQueue *configurationSerialQueue; // @synthesize configurationSerialQueue=_configurationSerialQueue; +@property(retain, nonatomic) MUIWebDocument *webDocument; // @synthesize webDocument=_webDocument; +//- (void).cxx_destruct; +- (void)cancelLoad; +- (void)_messageBodyDataBecameAvailable:(id)arg1; +- (void)asyncLoadAllowingRemoteFetch:(BOOL)arg1 completionHandler:(id)arg2; +- (id)_dataDetectorsContextForMessage:(id)arg1; +- (id)_loadQueue; +- (void)dealloc; +- (id)initWithConversationMember:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebFrame-SizingExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebFrame-SizingExtras.h new file mode 100644 index 00000000..14aca4cb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebFrame-SizingExtras.h @@ -0,0 +1,15 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebFrame.h" + +@interface WebFrame (SizingExtras) +- (void)selectAttachmentView:(id)arg1; +- (void)adjustAttachmentView:(id)arg1; +- (void)adjustToDocumentView; +- (void)_setSize:(struct CGSize)arg1 ofElement:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebHTMLView-MailAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebHTMLView-MailAdditions.h new file mode 100644 index 00000000..66dcc98a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebHTMLView-MailAdditions.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebHTMLView.h" + +@interface WebHTMLView (MailAdditions) +- (void)changeDocumentBackgroundColor:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebHTMLView-ToReplaceViewWithOurOwn.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebHTMLView-ToReplaceViewWithOurOwn.h new file mode 100644 index 00000000..a7e733cb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebHTMLView-ToReplaceViewWithOurOwn.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebHTMLView.h" + +@interface WebHTMLView (ToReplaceViewWithOurOwn) ++ (id)allocWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebMessageController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebMessageController.h new file mode 100644 index 00000000..34168c7c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebMessageController.h @@ -0,0 +1,79 @@ +/* + * 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 "NSSharingServiceDelegate.h" +#import "NSSharingServicePickerDelegate.h" + +@class MFWebMessageDocument, NSString, NSView, TilingWebView, WebArchive; + +@interface WebMessageController : NSObject +{ + TilingWebView *_webView; + NSView *_mainFrameDocumentView; + BOOL _isForURLSharing; + id _delegate; + MFWebMessageDocument *_document; + id _parentController; + id _itemToShare; + WebArchive *_webArchiveForSharing; + struct CGRect _frameOfItemToShare; +} + ++ (id)webResourcesForAttachments:(id)arg1 urls:(id)arg2; +@property(retain, nonatomic) WebArchive *webArchiveForSharing; // @synthesize webArchiveForSharing=_webArchiveForSharing; +@property(nonatomic) BOOL isForURLSharing; // @synthesize isForURLSharing=_isForURLSharing; +@property(nonatomic) struct CGRect frameOfItemToShare; // @synthesize frameOfItemToShare=_frameOfItemToShare; +@property(retain, nonatomic) id itemToShare; // @synthesize itemToShare=_itemToShare; +@property(nonatomic) __weak id parentController; // @synthesize parentController=_parentController; +@property(readonly, nonatomic) MFWebMessageDocument *document; // @synthesize document=_document; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (void)_adjustSpellingAndGrammarMenuItems:(id)arg1; +- (void)download:(id)arg1 decideDestinationWithSuggestedFilename:(id)arg2; +- (id)webView:(id)arg1 contextMenuItemsForElement:(id)arg2 defaultMenuItems:(id)arg3; +- (id)webView:(id)arg1 plugInViewWithArguments:(id)arg2; +- (unsigned long long)webView:(id)arg1 dragDestinationActionMaskForDraggingInfo:(id)arg2; +- (void)webView:(id)arg1 didFailProvisionalLoadWithError:(id)arg2 forFrame:(id)arg3; +- (void)webView:(id)arg1 didCommitLoadForFrame:(id)arg2; +- (void)webView:(id)arg1 didStartProvisionalLoadForFrame:(id)arg2; +- (id)webView:(id)arg1 resource:(id)arg2 willSendRequest:(id)arg3 redirectResponse:(id)arg4 fromDataSource:(id)arg5; +- (void)webView:(id)arg1 resource:(id)arg2 didFinishLoadingFromDataSource:(id)arg3; +- (id)webView:(id)arg1 identifierForInitialRequest:(id)arg2 fromDataSource:(id)arg3; +- (void)webView:(id)arg1 decidePolicyForNewWindowAction:(id)arg2 request:(id)arg3 newFrameName:(id)arg4 decisionListener:(id)arg5; +- (void)webView:(id)arg1 decidePolicyForNavigationAction:(id)arg2 request:(id)arg3 frame:(id)arg4 decisionListener:(id)arg5; +- (BOOL)considerBaseURLsInternal; +- (BOOL)_isInternalURL:(id)arg1; +- (id)sharingService:(id)arg1 sourceWindowForShareItems:(id)arg2 sharingContentScope:(long long *)arg3; +- (id)sharingService:(id)arg1 transitionImageForShareItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)sharingService:(id)arg1 sourceFrameOnScreenForShareItem:(id)arg2; +- (id)sharingServicePicker:(id)arg1 delegateForSharingService:(id)arg2; +- (void)sharingService:(id)arg1 didShareItems:(id)arg2; +- (id)sharingServicePicker:(id)arg1 sharingServicesForItems:(id)arg2 proposedSharingServices:(id)arg3; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)_openLinkBehind:(id)arg1; +- (void)_openLink:(id)arg1; +- (void)setMainFrameDocumentView:(id)arg1; +- (id)mainFrameDocumentView; +- (void)adjustFontSizeBy:(float)arg1; +- (void)dealloc; +- (void)stopLoading; +- (BOOL)hasFinishedLoading; +- (void)documentResized; +@property(retain, nonatomic) TilingWebView *webView; +- (void)setDocument:(id)arg1; +- (id)init; +- (id)initWithDocument:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebPreferences-MessageDefaultsSupport.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebPreferences-MessageDefaultsSupport.h new file mode 100644 index 00000000..8008676d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebPreferences-MessageDefaultsSupport.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebPreferences.h" + +@interface WebPreferences (MessageDefaultsSupport) ++ (id)richTextComposeWebPreferences; ++ (id)plainTextComposeWebPreferences; ++ (id)_unrenderedUserStyleSheet; ++ (id)unrenderedMailWebPreferences; ++ (id)richTextMailWebPreferences; ++ (id)plainTextMailWebPreferences; +- (void)_configureFixedFont:(id)arg1; +- (void)_configureCommonRichTextPreferences; +- (void)_configureCommonPlainTextPreferences; +- (void)_configureCommonPreferences; +- (void)_configureComposeRichPreferences:(id)arg1; +- (void)_configureComposePlainTextPreferences:(id)arg1; +- (void)_configureRichTextMessagePreferences:(id)arg1; +- (void)_configurePlainTextMessagePreferences:(id)arg1; +- (id)_userStyleSheetURLIsForCompose:(BOOL)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebView-MailExtras.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebView-MailExtras.h new file mode 100644 index 00000000..036f8804 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebView-MailExtras.h @@ -0,0 +1,12 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WebView.h" + +@interface WebView (MailExtras) +- (void)setAllDelegates:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebViewEditor.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebViewEditor.h new file mode 100644 index 00000000..3e4746b6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebViewEditor.h @@ -0,0 +1,140 @@ +/* + * 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 "EditingMessageWebViewDelegate.h" +#import "NSUserInterfaceValidations.h" + +@class ComposeBackEnd, DOMHTMLAnchorElement, DocumentEditor, EditableWebMessageDocument, EditingMessageWebView, EditingWebMessageController, HyperlinkEditor, NSDictionary, NSMutableSet, NSString, WebFrame; + +@interface WebViewEditor : NSObject +{ + EditingWebMessageController *_messageController; + NSMutableSet *_largeFilesAddedWhileEditing; + BOOL _finalSpellCheckingIsInProgress; + BOOL _containsRichText; + BOOL _containsRichTextFlagIsValid; + BOOL _needToCheckRichnessInRange; + EditingMessageWebView *_webView; + DocumentEditor *_documentEditor; + WebFrame *_frameAllowedToLoadContent; + NSDictionary *_infoForRichnessTest; + ComposeBackEnd *_composeBackEnd; + HyperlinkEditor *_hyperlinkEditor; + DOMHTMLAnchorElement *_linkWhoseTextIsBeingEdited; +} + +@property(retain, nonatomic) DOMHTMLAnchorElement *linkWhoseTextIsBeingEdited; // @synthesize linkWhoseTextIsBeingEdited=_linkWhoseTextIsBeingEdited; +@property(nonatomic) BOOL needToCheckRichnessInRange; // @synthesize needToCheckRichnessInRange=_needToCheckRichnessInRange; +@property(nonatomic) BOOL containsRichTextFlagIsValid; // @synthesize containsRichTextFlagIsValid=_containsRichTextFlagIsValid; +@property(retain, nonatomic) HyperlinkEditor *hyperlinkEditor; // @synthesize hyperlinkEditor=_hyperlinkEditor; +@property(retain, nonatomic) ComposeBackEnd *composeBackEnd; // @synthesize composeBackEnd=_composeBackEnd; +@property(retain, nonatomic) NSDictionary *infoForRichnessTest; // @synthesize infoForRichnessTest=_infoForRichnessTest; +@property(retain, nonatomic) WebFrame *frameAllowedToLoadContent; // @synthesize frameAllowedToLoadContent=_frameAllowedToLoadContent; +@property(nonatomic) __weak DocumentEditor *documentEditor; // @synthesize documentEditor=_documentEditor; +@property(retain, nonatomic) EditingMessageWebView *webView; // @synthesize webView=_webView; +- (void).cxx_destruct; +- (void)webViewDidEndLiveResize:(id)arg1; +- (void)webViewWillStartLiveResize:(id)arg1; +- (void)largeFileAdded:(id)arg1; +- (id)largeFilesAddedWhileEditing; +- (void)saveChangedDocument:(id)arg1; +- (void)saveDocument:(id)arg1; +- (void)pasteAsMarkup; +- (void)replaceSelectionWithFragment:(id)arg1; +- (BOOL)_isOkayToInsertAttachment:(id)arg1; +- (void)insertAttributedStringOfAttachments:(id)arg1 allAttachmentsAreOkay:(BOOL)arg2; +- (void)addAttachmentsForFiles:(id)arg1; +- (void)redisplayChangedAttachment:(id)arg1; +- (void)viewAttachments:(id)arg1 inLine:(BOOL)arg2; +- (void)removeAttachments:(id)arg1; +- (id)directoryForAttachment:(id)arg1; +- (id)selectedAttachmentNode; +- (id)attachmentForEvent:(id)arg1; +- (id)selectedAttachments; +- (void)replaceRiskyAttachmentsWithLinks; +- (BOOL)removeAttachmentsLeavingPlaceholder:(BOOL)arg1; +- (void)webView:(id)arg1 willRemoveMailAttachment:(id)arg2; +- (void)webView:(id)arg1 didAddMailAttachment:(id)arg2; +@property(nonatomic) BOOL shouldAttachFilesAtEnd; +- (void)webViewWillInsertContentsOfWebpage:(id)arg1; +- (BOOL)webViewShouldReplaceSelectionWithContentsOfWebpage:(id)arg1; +- (void)webViewMainDocumentBaseURIDidChange:(id)arg1; +- (BOOL)webView:(id)arg1 shouldInsertAttachments:(id)arg2 context:(id)arg3; +- (id)webView:(id)arg1 shouldReplaceSelectionWithWebArchive:(id)arg2 givenAction:(long long)arg3; +- (id)_validRangeFromSelection:(id)arg1; +- (BOOL)webView:(id)arg1 doCommandBySelector:(SEL)arg2; +- (void)webViewDidChange:(id)arg1; +- (BOOL)webView:(id)arg1 shouldInsertNode:(id)arg2 replacingDOMRange:(id)arg3 givenAction:(long long)arg4; +- (BOOL)webView:(id)arg1 shouldInsertText:(id)arg2 replacingDOMRange:(id)arg3 givenAction:(long long)arg4; +- (void)appendAttributedString:(id)arg1 toDocument:(id)arg2 asQuote:(BOOL)arg3; +- (void)appendParsedMessage:(id)arg1 toDocument:(id)arg2 asQuote:(BOOL)arg3; +- (void)appendFragment:(id)arg1 toDocument:(id)arg2 asQuote:(BOOL)arg3; +@property(readonly, nonatomic) BOOL isSelectionEditable; +- (void)beginConvertToRichTextAlert:(id)arg1; +- (id)alertForConvertingToRichText; +- (BOOL)webView:(id)arg1 shouldApplyStyle:(id)arg2 toElementsInDOMRange:(id)arg3; +- (void)webViewDidInsertRichText:(id)arg1; +- (BOOL)webView:(id)arg1 shouldDeleteDOMRange:(id)arg2; +- (void)_checkRichnessForEditedRange:(id)arg1; +- (void)changeComposeModeInBackEndAndView:(long long)arg1; +- (void)invalidateRichTextCache; +@property(nonatomic) BOOL containsRichText; +@property(nonatomic) BOOL allowsRichText; +- (void)removeAllFormattingFromWebView; +- (BOOL)webView:(id)arg1 canInsertFromPasteboard:(id)arg2 forDrag:(BOOL)arg3; +- (void)setFloat:(id)arg1 ofNode:(id)arg2 inView:(id)arg3 undoTitle:(id)arg4; +- (void)_setFloat:(id)arg1 ofNode:(id)arg2 inView:(id)arg3 undoTitle:(id)arg4; +- (void)decreaseListNestingLevel:(id)arg1; +- (void)increaseListNestingLevel:(id)arg1; +- (void)convertToBulletedList:(id)arg1; +- (void)convertToNumberedList:(id)arg1; +- (void)insertListWithNumbers:(BOOL)arg1 undoTitle:(id)arg2; +- (void)insertBulletedList:(id)arg1; +- (void)insertNumberedList:(id)arg1; +- (BOOL)_selectionIsInEmptyListItem; +- (BOOL)selectionIsInListTypes:(id)arg1; +- (BOOL)selectionIsInList; +- (void)changeIndentationIfAllowed:(long long)arg1; +- (void)decreaseIndentation; +- (void)increaseIndentation; +@property(readonly, nonatomic) BOOL allowQuoting; +- (void)insertList:(id)arg1; +- (void)webViewDidChangeSelection:(id)arg1; +- (void)removeSelectedLink; +- (void)editLink; +- (void)editLink:(id)arg1; +- (void)_editLink; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (void)updateIgnoredWordsForHeader:(id)arg1; +- (BOOL)finalSpellCheckingIsInProgress; +- (void)setFinalSpellCheckingIsInProgress:(BOOL)arg1; +- (void)finalSpellCheckCompleted:(id)arg1; +- (void)endFinalSpellCheck; +- (BOOL)startFinalSpellCheck; +- (void)setCheckGrammarWithSpelling:(BOOL)arg1; +- (void)setInlineSpellCheckingEnabled:(BOOL)arg1; +- (id)webView:(id)arg1 resource:(id)arg2 willSendRequest:(id)arg3 redirectResponse:(id)arg4 fromDataSource:(id)arg5; +- (void)webView:(id)arg1 decidePolicyForNavigationAction:(id)arg2 request:(id)arg3 frame:(id)arg4 decisionListener:(id)arg5; +- (void)setMessageController:(id)arg1; +@property(readonly, nonatomic) EditableWebMessageDocument *document; +@property(readonly, nonatomic) BOOL useDesignMode; +- (void)close; +- (void)setUp; +- (void)earlySetUp; +- (void)dealloc; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebViewLoadOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebViewLoadOperation.h new file mode 100644 index 00000000..c9aacb37 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WebViewLoadOperation.h @@ -0,0 +1,48 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSOperation.h" + +@class NSData, NSInvocation, NSURLRequest, WebView; + +@interface WebViewLoadOperation : NSOperation +{ + BOOL _isExecuting; + BOOL _isFinished; + WebView *_webView; + NSData *_data; + NSURLRequest *_urlRequest; + NSInvocation *_loadInvocation; + NSInvocation *_didLoadInvocation; +} + ++ (BOOL)automaticallyNotifiesObserversForKey:(id)arg1; +@property(readonly, nonatomic) NSInvocation *didLoadInvocation; // @synthesize didLoadInvocation=_didLoadInvocation; +@property(readonly, nonatomic) NSInvocation *loadInvocation; // @synthesize loadInvocation=_loadInvocation; +@property(readonly, copy, nonatomic) NSURLRequest *urlRequest; // @synthesize urlRequest=_urlRequest; +@property(readonly, copy, nonatomic) NSData *data; // @synthesize data=_data; +@property(readonly, nonatomic) WebView *webView; // @synthesize webView=_webView; +- (void).cxx_destruct; +- (void)_webViewDidLoad:(id)arg1; +- (void)_end; +- (void)cancel; +- (void)main; +- (void)start; +- (BOOL)isFinished; +- (void)_setIsExecuting:(BOOL)arg1; +- (BOOL)isExecuting; +- (BOOL)isConcurrent; +- (id)description; +- (void)dealloc; +- (id)init; +- (void)_webViewLoadOperationCommonInitWithWebView:(id)arg1; +- (id)initWithWebView:(id)arg1 loadInvocation:(id)arg2 didLoadInvocation:(id)arg3; +- (id)initWithWebView:(id)arg1 loadInvocation:(id)arg2; +- (id)initWithWebView:(id)arg1 urlRequest:(id)arg2; +- (id)initWithWebView:(id)arg1 data:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WindowTransformAnimation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WindowTransformAnimation.h new file mode 100644 index 00000000..11c8191c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/WindowTransformAnimation.h @@ -0,0 +1,43 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSAnimation.h" + +@class FullScreenModalCapableWindow, ModalDimmingWindow; + +@interface WindowTransformAnimation : NSAnimation +{ + BOOL _cancelled; + long long _animationType; + FullScreenModalCapableWindow *_window; + ModalDimmingWindow *_dimmingWindow; + long long _dimmingFade; + double _maxScreenPosition; + struct CGPoint _anchorPoint; +} + ++ (id)windowTransformAnimationWithWindow:(id)arg1 dimmingWindow:(id)arg2 type:(long long)arg3; +@property(readonly, nonatomic) double maxScreenPosition; // @synthesize maxScreenPosition=_maxScreenPosition; +@property(nonatomic) struct CGPoint anchorPoint; // @synthesize anchorPoint=_anchorPoint; +@property(readonly, nonatomic) long long dimmingFade; // @synthesize dimmingFade=_dimmingFade; +@property(readonly, nonatomic) ModalDimmingWindow *dimmingWindow; // @synthesize dimmingWindow=_dimmingWindow; +@property(readonly, nonatomic) FullScreenModalCapableWindow *window; // @synthesize window=_window; +@property(nonatomic) BOOL cancelled; // @synthesize cancelled=_cancelled; +@property(readonly, nonatomic) long long animationType; // @synthesize animationType=_animationType; +- (void).cxx_destruct; +- (void)setCurrentProgress:(float)arg1; +- (void)cancelAnimation; +- (void)startAnimation; +- (void)setWindowMagnificationForProgress:(double)arg1 anchorPoint:(struct CGPoint)arg2; +- (void)setWindowFlyInTranslationProgress:(double)arg1; +- (unsigned long long)_animationCurveForAnimationType:(long long)arg1; +- (double)_animationDurationForAnimationType:(long long)arg1; +- (void)dealloc; +- (id)initWithWindow:(id)arg1 dimmingWindow:(id)arg2 type:(long long)arg3; +- (id)initWithDuration:(double)arg1 animationCurve:(unsigned long long)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_AccountDisplayCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_AccountDisplayCell.h new file mode 100644 index 00000000..246b0aac --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_AccountDisplayCell.h @@ -0,0 +1,38 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@class AccountPreferences, MFMailAccount, NSImageCell; + +@interface _AccountDisplayCell : NSTextFieldCell +{ + AccountPreferences *_accountPreferences; + NSTextFieldCell *_descriptionTextCell; + NSTextFieldCell *_activeTextCell; + NSImageCell *_imageCell; + MFMailAccount *_account; +} + +@property(retain, nonatomic) MFMailAccount *account; // @synthesize account=_account; +@property(readonly, nonatomic) NSImageCell *imageCell; // @synthesize imageCell=_imageCell; +@property(readonly, nonatomic) NSTextFieldCell *activeTextCell; // @synthesize activeTextCell=_activeTextCell; +@property(readonly, nonatomic) NSTextFieldCell *descriptionTextCell; // @synthesize descriptionTextCell=_descriptionTextCell; +@property(readonly, nonatomic) __weak AccountPreferences *accountPreferences; // @synthesize accountPreferences=_accountPreferences; +- (void).cxx_destruct; +- (void)drawInteriorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (void)willBeDisplayed; +- (BOOL)trackMouse:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3 untilMouseUp:(BOOL)arg4; +- (struct CGRect)expansionFrameWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)_accountDisplayCellCommonInitWithAccountPreferences:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initImageCell:(id)arg1; +- (id)initTextCell:(id)arg1; +- (id)initWithAccountPreferences:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_AllSignaturesAccount.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_AllSignaturesAccount.h new file mode 100644 index 00000000..538f81b1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_AllSignaturesAccount.h @@ -0,0 +1,17 @@ +/* + * 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" + +@interface _AllSignaturesAccount : NSObject +{ +} + +- (id)displayName; +- (id)identifier; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_AttachmentQueueEntry.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_AttachmentQueueEntry.h new file mode 100644 index 00000000..c587c56a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_AttachmentQueueEntry.h @@ -0,0 +1,38 @@ +/* + * 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" + +@class MCAttachment, MCMimeBody, MFAttachmentViewController, NSString, NSURL, NSWindow; + +@interface _AttachmentQueueEntry : NSObject +{ + MFAttachmentViewController *_attachmentController; + MCAttachment *_attachment; + int _reason; + NSWindow *_window; + MCMimeBody *_body; + NSString *_attachDir; + NSURL *_applicationURL; + NSString *_savePath; +} + ++ (id)newWithWindow:(id)arg1 attachment:(id)arg2 reason:(int)arg3 opSpecific:(id)arg4 attachmentDirectory:(id)arg5; ++ (id)newWithWindow:(id)arg1 attachmentController:(id)arg2 reason:(int)arg3 opSpecific:(id)arg4 attachmentDirectory:(id)arg5; +@property(copy, nonatomic) NSString *savePath; // @synthesize savePath=_savePath; +@property(retain, nonatomic) NSURL *applicationURL; // @synthesize applicationURL=_applicationURL; +@property(retain, nonatomic) NSString *attachDir; // @synthesize attachDir=_attachDir; +@property(nonatomic) int reason; // @synthesize reason=_reason; +@property(retain, nonatomic) MCMimeBody *body; // @synthesize body=_body; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +- (void).cxx_destruct; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +@property(retain, nonatomic) MFAttachmentViewController *attachmentController; +@property(retain, nonatomic) MCAttachment *attachment; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_AutomaticallyAdjustingScrollView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_AutomaticallyAdjustingScrollView.h new file mode 100644 index 00000000..886f17b5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_AutomaticallyAdjustingScrollView.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSScrollView.h" + +@interface _AutomaticallyAdjustingScrollView : NSScrollView +{ + double _additionalTopInset; +} + +@property(nonatomic) double additionalTopInset; // @synthesize additionalTopInset=_additionalTopInset; +- (void)_updateContentInsets; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)viewDidMoveToWindow; +- (void)viewWillMoveToWindow:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_BaselinePopupButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_BaselinePopupButton.h new file mode 100644 index 00000000..7a7e46b7 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_BaselinePopupButton.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@interface _BaselinePopupButton : NSPopUpButton +{ +} + +- (struct NSEdgeInsets)alignmentRectInsets; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_BorderlessButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_BorderlessButton.h new file mode 100644 index 00000000..72f51968 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_BorderlessButton.h @@ -0,0 +1,25 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@class NSImage; + +@interface _BorderlessButton : NSButton +{ + NSImage *_activeImage; + NSImage *_inactiveImage; +} + +@property(retain, nonatomic) NSImage *inactiveImage; // @synthesize inactiveImage=_inactiveImage; +@property(retain, nonatomic) NSImage *activeImage; // @synthesize activeImage=_activeImage; +- (void).cxx_destruct; +- (void)setEnabled:(BOOL)arg1; +- (void)dealloc; +- (BOOL)isOpaque; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_CellFindStore.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_CellFindStore.h new file mode 100644 index 00000000..fa4133c2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_CellFindStore.h @@ -0,0 +1,28 @@ +/* + * 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" + +@class NSArray; + +@interface _CellFindStore : NSObject +{ + BOOL _matchesAreValid; + NSArray *_matches; + struct CGRect _visibleRectInCell; + struct CGRect _cellRectInContainingView; + struct CGRect _visibleRectInContainingView; +} + +@property(nonatomic) struct CGRect visibleRectInContainingView; // @synthesize visibleRectInContainingView=_visibleRectInContainingView; +@property(nonatomic) struct CGRect cellRectInContainingView; // @synthesize cellRectInContainingView=_cellRectInContainingView; +@property(nonatomic) struct CGRect visibleRectInCell; // @synthesize visibleRectInCell=_visibleRectInCell; +@property(nonatomic) BOOL matchesAreValid; // @synthesize matchesAreValid=_matchesAreValid; +@property(retain, nonatomic) NSArray *matches; // @synthesize matches=_matches; +- (void).cxx_destruct; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ComposeAttachmentEnumerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ComposeAttachmentEnumerator.h new file mode 100644 index 00000000..946bdee4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ComposeAttachmentEnumerator.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSEnumerator.h" + +@class DOMNode, EditableWebMessageDocument; + +@interface _ComposeAttachmentEnumerator : NSEnumerator +{ + BOOL _acceptDeleted; + BOOL _acceptNonDeleted; + DOMNode *_currentNode; + DOMNode *_containerNode; + DOMNode *_endNode; + EditableWebMessageDocument *_document; +} + +@property(nonatomic) BOOL acceptNonDeleted; // @synthesize acceptNonDeleted=_acceptNonDeleted; +@property(nonatomic) BOOL acceptDeleted; // @synthesize acceptDeleted=_acceptDeleted; +@property(readonly, nonatomic) EditableWebMessageDocument *document; // @synthesize document=_document; +@property(retain, nonatomic) DOMNode *endNode; // @synthesize endNode=_endNode; +@property(retain, nonatomic) DOMNode *containerNode; // @synthesize containerNode=_containerNode; +@property(retain, nonatomic) DOMNode *currentNode; // @synthesize currentNode=_currentNode; +- (void).cxx_destruct; +- (id)nextObject; +- (short)acceptNode:(id)arg1; +- (id)initWithDocument:(id)arg1 options:(int)arg2 range:(id)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ComposeDraftProxy.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ComposeDraftProxy.h new file mode 100644 index 00000000..067162ec --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ComposeDraftProxy.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSProxy.h" + +@class ComposeDraft; + +@interface _ComposeDraftProxy : NSProxy +{ + ComposeDraft *_draft; +} + +@property(readonly, nonatomic) __weak ComposeDraft *draft; // @synthesize draft=_draft; +- (void).cxx_destruct; +- (unsigned long long)hash; +- (BOOL)isEqual:(id)arg1; +- (Class)class; +- (id)methodSignatureForSelector:(SEL)arg1; +- (void)forwardInvocation:(id)arg1; +- (id)initWithDraft:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ConversationFindMatch.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ConversationFindMatch.h new file mode 100644 index 00000000..106bdbbc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ConversationFindMatch.h @@ -0,0 +1,38 @@ +/* + * 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 "NSTextFinderAsynchronousDocumentFindMatch.h" + +@class ConversationViewFindController, MUICollectionView, NSArray, NSString; + +@interface _ConversationFindMatch : NSObject +{ + MUICollectionView *_containingView; + id _backingFindMatch; + unsigned long long _cellIndex; + NSArray *_textRectsInDocument; + ConversationViewFindController *_findController; +} + +@property(retain, nonatomic) ConversationViewFindController *findController; // @synthesize findController=_findController; +@property(retain, nonatomic) NSArray *textRectsInDocument; // @synthesize textRectsInDocument=_textRectsInDocument; +@property(nonatomic) unsigned long long cellIndex; // @synthesize cellIndex=_cellIndex; +@property(retain, nonatomic) id backingFindMatch; // @synthesize backingFindMatch=_backingFindMatch; +@property(retain, nonatomic) MUICollectionView *containingView; // @synthesize containingView=_containingView; +- (void).cxx_destruct; +- (void)generateTextImage:(id)arg1; +@property(readonly, nonatomic) NSArray *textRects; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_DeleteMailboxTransfer.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_DeleteMailboxTransfer.h new file mode 100644 index 00000000..be0bc95f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_DeleteMailboxTransfer.h @@ -0,0 +1,24 @@ +/* + * 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 "MessageDeletionTransfer.h" + +@class MCMonitoredInvocation; + +@interface _DeleteMailboxTransfer : NSObject +{ + MCMonitoredInvocation *_invocation; +} + +@property(retain, nonatomic) MCMonitoredInvocation *invocation; // @synthesize invocation=_invocation; +- (void).cxx_destruct; +- (void)beginTransfer; +- (BOOL)canBeginTransfer; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ExportJob.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ExportJob.h new file mode 100644 index 00000000..cfdbed81 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ExportJob.h @@ -0,0 +1,33 @@ +/* + * 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" + +@class NSArray, NSMutableArray, NSPrintInfo, NSString; + +@interface _ExportJob : NSObject +{ + BOOL _shouldCollapseRedundantText; + NSArray *_conversationMembers; + NSMutableArray *_printingHTMLs; + NSMutableArray *_attachments; + NSString *_jobTitle; + NSPrintInfo *_printInfo; + unsigned long long _sequenceNumber; +} + +@property(nonatomic) unsigned long long sequenceNumber; // @synthesize sequenceNumber=_sequenceNumber; +@property(retain, nonatomic) NSPrintInfo *printInfo; // @synthesize printInfo=_printInfo; +@property(retain, nonatomic) NSString *jobTitle; // @synthesize jobTitle=_jobTitle; +@property(retain, nonatomic) NSMutableArray *attachments; // @synthesize attachments=_attachments; +@property(retain, nonatomic) NSMutableArray *printingHTMLs; // @synthesize printingHTMLs=_printingHTMLs; +@property(nonatomic) BOOL shouldCollapseRedundantText; // @synthesize shouldCollapseRedundantText=_shouldCollapseRedundantText; +@property(retain, nonatomic) NSArray *conversationMembers; // @synthesize conversationMembers=_conversationMembers; +- (void).cxx_destruct; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_FavoriteButtonCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_FavoriteButtonCell.h new file mode 100644 index 00000000..83a48f64 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_FavoriteButtonCell.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface _FavoriteButtonCell : NSButtonCell +{ +} + +- (BOOL)_shouldDrawBezel; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_FavoriteMenuScrollHoverView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_FavoriteMenuScrollHoverView.h new file mode 100644 index 00000000..f83d5446 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_FavoriteMenuScrollHoverView.h @@ -0,0 +1,35 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSImage, NSTrackingArea; + +@interface _FavoriteMenuScrollHoverView : NSView +{ + long long _direction; + id _delegate; + NSTrackingArea *_trackingArea; + NSImage *_arrowImage; +} + +@property(readonly, nonatomic) NSImage *arrowImage; // @synthesize arrowImage=_arrowImage; +@property(retain, nonatomic) NSTrackingArea *trackingArea; // @synthesize trackingArea=_trackingArea; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +@property(readonly, nonatomic) long long direction; // @synthesize direction=_direction; +- (void).cxx_destruct; +- (void)mouseExited:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)drawRect:(struct CGRect)arg1; +- (void)updateTrackingAreas; +- (void)dealloc; +- (void)_favoriteMenuScrollHoverViewCommonInitWithDirection:(long long)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithDirection:(long long)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_IMAPMailboxEntry.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_IMAPMailboxEntry.h new file mode 100644 index 00000000..03553ad5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_IMAPMailboxEntry.h @@ -0,0 +1,41 @@ +/* + * 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" + +@class IMAPMailboxes, MFMailbox, NSArray, NSString; + +@interface _IMAPMailboxEntry : NSObject +{ + NSArray *_filteredChildren; + BOOL _subscribed; + BOOL _isNoSelect; + BOOL _hasEnabledDescendants; + NSString *_name; + NSString *_path; + NSArray *_children; + MFMailbox *_mailbox; + _IMAPMailboxEntry *_parent; + IMAPMailboxes *_controller; +} + +@property(nonatomic) __weak IMAPMailboxes *controller; // @synthesize controller=_controller; +@property(retain, nonatomic) _IMAPMailboxEntry *parent; // @synthesize parent=_parent; +@property(nonatomic) BOOL hasEnabledDescendants; // @synthesize hasEnabledDescendants=_hasEnabledDescendants; +@property(nonatomic) BOOL isNoSelect; // @synthesize isNoSelect=_isNoSelect; +@property(retain, nonatomic) MFMailbox *mailbox; // @synthesize mailbox=_mailbox; +@property(retain, nonatomic) NSArray *children; // @synthesize children=_children; +@property(nonatomic) BOOL subscribed; // @synthesize subscribed=_subscribed; +@property(retain, nonatomic) NSString *path; // @synthesize path=_path; +@property(retain, nonatomic) NSString *name; // @synthesize name=_name; +- (void).cxx_destruct; +- (BOOL)isValidForCurrentFilter; +- (BOOL)isPathValidForCurrentFilter; +@property(copy, nonatomic) NSArray *filteredChildren; +- (long long)compare:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMAccountMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMAccountMailbox.h new file mode 100644 index 00000000..48f46464 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMAccountMailbox.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMAccountMailbox : MTMSpecialMailbox +{ +} + +- (id)identifier; +- (id)subRestoreString; +- (id)restoreString; +- (id)recoverDisplayName; +- (id)displayName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMArchiveMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMArchiveMailbox.h new file mode 100644 index 00000000..4b7ca979 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMArchiveMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMMetaMailbox.h" + +@interface _MTMArchiveMailbox : _MTMMetaMailbox +{ +} + +- (id)defaultMessageColumnAttributesKey; +- (id)recoverDisplayName; +- (id)displayName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMBackupMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMBackupMailbox.h new file mode 100644 index 00000000..f3f4b644 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMBackupMailbox.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMBackupMailbox : MTMSpecialMailbox +{ +} + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMDisabledSubMetaMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMDisabledSubMetaMailbox.h new file mode 100644 index 00000000..2fa7e861 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMDisabledSubMetaMailbox.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMSubMetaMailbox.h" + +@interface _MTMDisabledSubMetaMailbox : _MTMSubMetaMailbox +{ +} + +- (BOOL)enabled; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMDraftsMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMDraftsMailbox.h new file mode 100644 index 00000000..13568253 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMDraftsMailbox.h @@ -0,0 +1,22 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMStoredMetaMailbox.h" + +@interface _MTMDraftsMailbox : _MTMStoredMetaMailbox +{ +} + +- (id)_severalMessagesString; +- (id)_oneMesageString; +- (id)defaultMessageColumnAttributesKey; +- (id)messageColumnConfiguration; +- (id)restoreMode; +- (id)recoverDisplayName; +- (id)displayName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMHeaderCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMHeaderCell.h new file mode 100644 index 00000000..f92b6cd1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMHeaderCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableHeaderCell.h" + +@interface _MTMHeaderCell : NSTableHeaderCell +{ +} + +- (struct CGRect)sortIndicatorRectForBounds:(struct CGRect)arg1; +- (struct CGRect)drawingRectForBounds:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMInboxMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMInboxMailbox.h new file mode 100644 index 00000000..617f15c4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMInboxMailbox.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMMetaMailbox.h" + +@interface _MTMInboxMailbox : _MTMMetaMailbox +{ +} + +- (id)restoreString; +- (id)recoverDisplayName; +- (id)defaultMessageColumnAttributesKey; +- (id)displayName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMJunkMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMJunkMailbox.h new file mode 100644 index 00000000..41d6b0a2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMJunkMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMJunkMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)enabled; +- (id)defaultMessageColumnAttributesKey; +- (id)displayName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMMetaMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMMetaMailbox.h new file mode 100644 index 00000000..237c7e95 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMMetaMailbox.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMMetaMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)_shouldSortMailboxes; +- (id)subRestoreString; +- (id)restoreString; +- (id)paths; +- (void)loadNextMessagesWithControllingMailbox:(id)arg1 andFetcher:(id)arg2; +- (BOOL)needsToLoadMessagesInBackground; +- (void)_loadMessages; +- (void)discardMailbox; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMRootMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMRootMailbox.h new file mode 100644 index 00000000..f4e275df --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMRootMailbox.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMRootMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)_shouldSortMailboxes; +- (id)messages; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMSectionMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMSectionMailbox.h new file mode 100644 index 00000000..d5b3a14e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMSectionMailbox.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMSectionMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)canCollapse; +- (id)displayName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMSentMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMSentMailbox.h new file mode 100644 index 00000000..654b0cae --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMSentMailbox.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMMetaMailbox.h" + +@interface _MTMSentMailbox : _MTMMetaMailbox +{ +} + +- (id)defaultMessageColumnAttributesKey; +- (id)messageColumnConfiguration; +- (id)recoverDisplayName; +- (id)displayName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMSmartMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMSmartMailbox.h new file mode 100644 index 00000000..6fbcd9cc --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMSmartMailbox.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMSmartMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)isSmartMailbox; +- (BOOL)enabled; +- (id)messageColumnConfiguration; +- (id)identifier; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMStoredMetaMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMStoredMetaMailbox.h new file mode 100644 index 00000000..774a038e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMStoredMetaMailbox.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMStoredMetaMailbox : MTMSpecialMailbox +{ +} + +- (BOOL)_shouldSortMailboxes; +- (id)restoreString; +- (id)paths; +- (void)loadNextMessagesWithControllingMailbox:(id)arg1 andFetcher:(id)arg2; +- (void)_updateMessages:(id)arg1; +- (void)_loadMessages; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMStoredSubMetaMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMStoredSubMetaMailbox.h new file mode 100644 index 00000000..fa37cc82 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMStoredSubMetaMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMSubMetaMailbox.h" + +@interface _MTMStoredSubMetaMailbox : _MTMSubMetaMailbox +{ +} + +- (void)loadNextMessagesWithControllingMailbox:(id)arg1 andFetcher:(id)arg2; +- (void)_updateMessages:(id)arg1; +- (void)_loadMessages; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMSubMetaMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMSubMetaMailbox.h new file mode 100644 index 00000000..597db683 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMSubMetaMailbox.h @@ -0,0 +1,28 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MTMSpecialMailbox.h" + +@interface _MTMSubMetaMailbox : MTMSpecialMailbox +{ +} + +- (id)messageListFont; +- (id)messageListColor; +- (id)_severalMessagesString; +- (id)_oneMesageString; +- (id)displayNameInMessageList; +- (id)displayNameForList; +- (id)defaultMessageColumnAttributesKey; +- (id)messageColumnConfiguration; +- (id)restoreString; +- (id)restoreMode; +- (id)identifier; +- (id)recoverDisplayName; +- (id)displayName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMTrashMailbox.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMTrashMailbox.h new file mode 100644 index 00000000..8c16a4f5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MTMTrashMailbox.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "_MTMMetaMailbox.h" + +@interface _MTMTrashMailbox : _MTMMetaMailbox +{ +} + +- (id)defaultMessageColumnAttributesKey; +- (id)recoverDisplayName; +- (id)displayName; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MVAlertInfo.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MVAlertInfo.h new file mode 100644 index 00000000..55f3a0ec --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MVAlertInfo.h @@ -0,0 +1,28 @@ +/* + * 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" + +@class MCError, NSString; + +@interface _MVAlertInfo : NSObject +{ + MCError *_error; + NSString *_firstButtonTitle; + NSString *_secondButtonTitle; + NSString *_thirdButtonTitle; + long long _returnCode; +} + +@property(nonatomic) long long returnCode; // @synthesize returnCode=_returnCode; +@property(nonatomic) __weak NSString *thirdButtonTitle; // @synthesize thirdButtonTitle=_thirdButtonTitle; +@property(nonatomic) __weak NSString *secondButtonTitle; // @synthesize secondButtonTitle=_secondButtonTitle; +@property(nonatomic) __weak NSString *firstButtonTitle; // @synthesize firstButtonTitle=_firstButtonTitle; +@property(nonatomic) __weak MCError *error; // @synthesize error=_error; +- (void).cxx_destruct; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MailNSFontManager.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MailNSFontManager.h new file mode 100644 index 00000000..96bdc307 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MailNSFontManager.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSFontManager.h" + +@interface _MailNSFontManager : NSFontManager +{ + BOOL _isMultiple; + double _fontSize; +} + +@property(nonatomic) BOOL isMultiple; // @synthesize isMultiple=_isMultiple; +@property(nonatomic) double fontSize; // @synthesize fontSize=_fontSize; +- (id)convertFont:(id)arg1; +- (unsigned long long)currentFontAction; +- (void)modifyFontSize:(double)arg1; +- (void)setSelectedFont:(id)arg1 isMultiple:(BOOL)arg2; +- (void)_postSelectedFontChangeNotification; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MailTableHeaderView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MailTableHeaderView.h new file mode 100644 index 00000000..4559a71a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MailTableHeaderView.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTableHeaderView.h" + +@interface _MailTableHeaderView : NSTableHeaderView +{ + BOOL _didLazyLoadMenu; +} + +@property(nonatomic) BOOL didLazyLoadMenu; // @synthesize didLazyLoadMenu=_didLazyLoadMenu; +- (id)menu; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MailToolbarSpace.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MailToolbarSpace.h new file mode 100644 index 00000000..536ea9ec --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MailToolbarSpace.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class MailToolbarSpaceItemWithPin; + +@interface _MailToolbarSpace : NSView +{ + BOOL _inPalette; + MailToolbarSpaceItemWithPin *_spaceItem; +} + +@property(readonly, nonatomic) BOOL inPalette; // @synthesize inPalette=_inPalette; +@property(readonly, nonatomic) __weak MailToolbarSpaceItemWithPin *spaceItem; // @synthesize spaceItem=_spaceItem; +- (void).cxx_destruct; +- (void)drawRect:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithSize:(struct CGSize)arg1 forSpaceItem:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MailboxPlaceholder.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MailboxPlaceholder.h new file mode 100644 index 00000000..0979d1f4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MailboxPlaceholder.h @@ -0,0 +1,49 @@ +/* + * 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 "MFUIMailbox.h" + +@class NSString; + +@interface _MailboxPlaceholder : NSObject +{ + BOOL _isContainer; + int _type; + NSString *_persistentIdentifier; + NSString *_displayName; + NSString *_accountURLString; +} + +@property(nonatomic) BOOL isContainer; // @synthesize isContainer=_isContainer; +@property int type; // @synthesize type=_type; +@property(copy, nonatomic) NSString *accountURLString; // @synthesize accountURLString=_accountURLString; +@property(copy, nonatomic) NSString *displayName; // @synthesize displayName=_displayName; +@property(copy, nonatomic) NSString *persistentIdentifier; // @synthesize persistentIdentifier=_persistentIdentifier; +- (void).cxx_destruct; +- (id)extendedDisplayName; +- (unsigned long long)displayCount; +@property(readonly, copy) NSString *description; +- (BOOL)isPlaceholder; +@property(readonly) BOOL isVisibleFlaggedMailbox; +- (BOOL)isDescendantOfMailboxWithType:(int)arg1; +- (id)children; +- (unsigned long long)numberOfChildren; +- (BOOL)hasChildren; +- (BOOL)isStore; +- (BOOL)isSmartMailbox; +- (id)account; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (id)initWithPersistentIdentifier:(id)arg1 name:(id)arg2 accountURLString:(id)arg3 type:(int)arg4 isContainer:(BOOL)arg5; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MessageViewerLazyPopUpButtonCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MessageViewerLazyPopUpButtonCell.h new file mode 100644 index 00000000..ba90d4f5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MessageViewerLazyPopUpButtonCell.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButtonCell.h" + +@interface _MessageViewerLazyPopUpButtonCell : NSPopUpButtonCell +{ +} + +- (void)_drawIndicatorWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (BOOL)accessibilityPerformPress; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MouseTracker.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MouseTracker.h new file mode 100644 index 00000000..dcdfb03e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_MouseTracker.h @@ -0,0 +1,32 @@ +/* + * 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" + +@class NSView; + +@interface _MouseTracker : NSObject +{ + BOOL _mouseOver; + NSView *_view; + long long _trackingRectTag; + struct CGRect _trackingRect; +} + +@property(nonatomic) BOOL mouseOver; // @synthesize mouseOver=_mouseOver; +@property(readonly, nonatomic) long long trackingRectTag; // @synthesize trackingRectTag=_trackingRectTag; +@property(readonly, nonatomic) struct CGRect trackingRect; // @synthesize trackingRect=_trackingRect; +@property(readonly, nonatomic) __weak NSView *view; // @synthesize view=_view; +- (void).cxx_destruct; +- (void)mouseMoved:(id)arg1; +- (void)mouseExited:(id)arg1; +- (void)mouseEntered:(id)arg1; +- (void)_updateMouseIsOver; +- (void)dealloc; +- (id)initWithTrackingRect:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_RolloverButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_RolloverButton.h new file mode 100644 index 00000000..05d7f6c8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_RolloverButton.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface _RolloverButton : NSButton +{ +} + +- (void)mouseDown:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_RolloverPopUpButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_RolloverPopUpButton.h new file mode 100644 index 00000000..147cdf0a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_RolloverPopUpButton.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButton.h" + +@interface _RolloverPopUpButton : NSPopUpButton +{ +} + +- (void)mouseDown:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_RolloverPopUpButtonCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_RolloverPopUpButtonCell.h new file mode 100644 index 00000000..6cf699ff --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_RolloverPopUpButtonCell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSPopUpButtonCell.h" + +@interface _RolloverPopUpButtonCell : NSPopUpButtonCell +{ +} + +- (struct CGRect)_indicatorFrameForCellFrame:(struct CGRect)arg1 inView:(id)arg2; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (struct CGRect)imageRectForBounds:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_RoundedCornersView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_RoundedCornersView.h new file mode 100644 index 00000000..8709db2f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_RoundedCornersView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSVisualEffectView.h" + +@interface _RoundedCornersView : NSVisualEffectView +{ +} + +- (void)drawRect:(struct CGRect)arg1; +- (BOOL)allowsVibrancy; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_SidebarButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_SidebarButton.h new file mode 100644 index 00000000..5f072143 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_SidebarButton.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "MailBarContainerButton.h" + +@interface _SidebarButton : MailBarContainerButton +{ +} + +- (unsigned long long)draggingEntered:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_SlidingView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_SlidingView.h new file mode 100644 index 00000000..c374ea5e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_SlidingView.h @@ -0,0 +1,24 @@ +/* + * 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" + +@interface _SlidingView : NSObject +{ + double _startTime; + double _duration; + struct CGRect _startFrame; + struct CGRect _endFrame; +} + +@property(nonatomic) double duration; // @synthesize duration=_duration; +@property(nonatomic) double startTime; // @synthesize startTime=_startTime; +@property(nonatomic) struct CGRect endFrame; // @synthesize endFrame=_endFrame; +@property(nonatomic) struct CGRect startFrame; // @synthesize startFrame=_startFrame; +- (struct CGRect)frameForTime:(double)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_StackContainerView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_StackContainerView.h new file mode 100644 index 00000000..19db6f32 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_StackContainerView.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "NSAccessibilityGroup.h" +#import "NSDraggingSource.h" + +@class MailStackViewController, NSString; + +@interface _StackContainerView : NSView +{ + MailStackViewController *_controller; +} + +@property(nonatomic) __weak MailStackViewController *controller; // @synthesize controller=_controller; +- (void).cxx_destruct; +- (void)draggingSession:(id)arg1 endedAtPoint:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (void)draggingSession:(id)arg1 movedToPoint:(struct CGPoint)arg2; +- (void)draggingSession:(id)arg1 willBeginAtPoint:(struct CGPoint)arg2; +- (unsigned long long)draggingSession:(id)arg1 sourceOperationMaskForDraggingContext:(long long)arg2; +- (void)mouseDragged:(id)arg1; +- (id)accessibilityLabel; +- (void)viewDidEndLiveResize; +- (void)mui_prepareToLayoutSynchronously:(id)arg1; +- (void)mui_performAnimation; +- (void)mui_prepareToAnimate:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_StationeryThumbnailCreator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_StationeryThumbnailCreator.h new file mode 100644 index 00000000..168bdb4a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_StationeryThumbnailCreator.h @@ -0,0 +1,51 @@ +/* + * 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 "MCActivityTarget.h" + +@class EditableWebMessageDocument, NSArray, NSBitmapImageRep, NSString, NSWindow, Stationery, StationeryLoader, WebView; + +@interface _StationeryThumbnailCreator : NSObject +{ + StationeryLoader *_delegate; + NSArray *_stationeryPaths; + unsigned long long _currentStationeryIndex; + Stationery *_currentStationery; + WebView *_webView; + NSWindow *_window; + EditableWebMessageDocument *_webMessageDocument; + NSBitmapImageRep *_snapshot; +} + +@property(retain, nonatomic) NSBitmapImageRep *snapshot; // @synthesize snapshot=_snapshot; +@property(retain, nonatomic) EditableWebMessageDocument *webMessageDocument; // @synthesize webMessageDocument=_webMessageDocument; +@property(retain, nonatomic) NSWindow *window; // @synthesize window=_window; +@property(retain, nonatomic) WebView *webView; // @synthesize webView=_webView; +@property(retain, nonatomic) Stationery *currentStationery; // @synthesize currentStationery=_currentStationery; +@property(nonatomic) unsigned long long currentStationeryIndex; // @synthesize currentStationeryIndex=_currentStationeryIndex; +@property(copy, nonatomic) NSArray *stationeryPaths; // @synthesize stationeryPaths=_stationeryPaths; +@property(nonatomic) __weak StationeryLoader *delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (void)scaleSnapshotAndSendToDelegate; +- (void)takeSnapshot; +- (void)performTakeSnapshot; +- (void)webView:(id)arg1 didFinishLoadForFrame:(id)arg2; +- (void)moveOnToTheNextStationery; +- (void)loadParsedMessage:(id)arg1; +- (void)createWebView; +- (void)createThumbnailsForCustomStationeriesWithPaths:(id)arg1; +- (void)dealloc; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_TextButtonCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_TextButtonCell.h new file mode 100644 index 00000000..0ef53946 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_TextButtonCell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButtonCell.h" + +@interface _TextButtonCell : NSButtonCell +{ + long long _buttonType; +} + +@property(nonatomic) long long buttonType; // @synthesize buttonType=_buttonType; +- (void)drawBezelWithFrame:(struct CGRect)arg1 inView:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ThreadDisclosureTextFieldCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ThreadDisclosureTextFieldCell.h new file mode 100644 index 00000000..bbb101d1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ThreadDisclosureTextFieldCell.h @@ -0,0 +1,32 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface _ThreadDisclosureTextFieldCell : NSTextFieldCell +{ + BOOL _threadIsOpen; +} + +@property(nonatomic) BOOL threadIsOpen; // @synthesize threadIsOpen=_threadIsOpen; +- (BOOL)accessibilityPerformPress; +- (id)accessibilityLabel; +- (id)accessibilityRole; +- (id)accessibilityValue; +- (BOOL)isAccessibilitySelectorAllowed:(SEL)arg1; +- (unsigned long long)hitTestForEvent:(id)arg1 inRect:(struct CGRect)arg2 ofView:(id)arg3; +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)textColor; +- (id)backgroundColor; +- (void)_drawThreadControlWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (id)_threadDisclousureImage; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (struct CGRect)drawingRectForBounds:(struct CGRect)arg1; +- (struct CGRect)_textRect; +- (struct CGSize)cellSizeForBounds:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ToCCIndicator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ToCCIndicator.h new file mode 100644 index 00000000..d0fe041c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ToCCIndicator.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextField.h" + +@interface _ToCCIndicator : NSTextField +{ +} + ++ (Class)cellClass; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ToCCIndicatorCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ToCCIndicatorCell.h new file mode 100644 index 00000000..8463e653 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_ToCCIndicatorCell.h @@ -0,0 +1,26 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldCell.h" + +@interface _ToCCIndicatorCell : NSTextFieldCell +{ +} + +- (void)drawWithFrame:(struct CGRect)arg1 inView:(id)arg2; +- (struct CGRect)titleRectForBounds:(struct CGRect)arg1; +- (struct CGSize)cellSizeForBounds:(struct CGRect)arg1; +- (id)textColor; +- (id)backgroundColor; +- (BOOL)_isInSelectedRow; +- (BOOL)_isInThreadParentRow; +- (id)_parentRow; +- (id)_darkBackgroundColor; +- (id)_normalBackgroundColor; +- (id)_lightBackgroundColor; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_TopDividerLine.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_TopDividerLine.h new file mode 100644 index 00000000..a3b37278 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_TopDividerLine.h @@ -0,0 +1,19 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface _TopDividerLine : NSView +{ +} + +- (void)updateLayer; +- (BOOL)wantsUpdateLayer; +- (BOOL)wantsLayer; +- (BOOL)allowsVibrancy; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_TransferOperation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_TransferOperation.h new file mode 100644 index 00000000..a3a59b14 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUI/_TransferOperation.h @@ -0,0 +1,41 @@ +/* + * 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" + +@class MFMailbox, MFMessageStore, NSArray, NSDictionary, NSMutableArray, NSMutableDictionary; + +@interface _TransferOperation : NSObject +{ + NSMutableArray *_sourceMessages; + NSMutableArray *_documentIDs; + id _messagesForGmailLabelsToRemoveLock; + NSMutableDictionary *_messagesForGmailLabelsToRemove; + BOOL _editableDocuments; + MFMessageStore *_sourceStore; + MFMailbox *_destinationMailbox; + NSArray *_unreadSourceMessages; + NSArray *_destinationMessageIDs; +} + +@property(readonly, nonatomic) BOOL editableDocuments; // @synthesize editableDocuments=_editableDocuments; +@property(retain) NSArray *destinationMessageIDs; // @synthesize destinationMessageIDs=_destinationMessageIDs; +@property(retain) NSArray *unreadSourceMessages; // @synthesize unreadSourceMessages=_unreadSourceMessages; +@property(readonly, nonatomic) MFMailbox *destinationMailbox; // @synthesize destinationMailbox=_destinationMailbox; +@property(readonly, nonatomic) MFMessageStore *sourceStore; // @synthesize sourceStore=_sourceStore; +- (void).cxx_destruct; +- (id)popMessagesForGmailLabelsToRemove; +- (void)addMessage:(id)arg1 forLabelsToRemove:(id)arg2; +@property(readonly, copy) NSDictionary *messagesForGmailLabelsToRemove; +- (void)removeSourceMessages:(id)arg1; +- (void)addSourceMessage:(id)arg1; +@property(retain, nonatomic) NSArray *sourceMessages; +@property(readonly, nonatomic) NSArray *documentIDs; // @synthesize documentIDs=_documentIDs; +- (id)sourceLibraryStore; +- (id)initWithSourceStore:(id)arg1 destinationMailbox:(id)arg2 editableDocuments:(BOOL)arg3; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/CDStructures.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/CDStructures.h new file mode 100644 index 00000000..1908a041 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/CDStructures.h @@ -0,0 +1,52 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#pragma mark Named Structures + +struct CGPoint { + double x; + double y; +}; + +struct CGRect { + struct CGPoint origin; + struct CGSize size; +}; + +struct CGSize { + double width; + double height; +}; + +struct WKPageContextMenuClientBase { + int _field1; + void *_field2; +}; + +struct WKPageContextMenuClientV2 { + struct WKPageContextMenuClientBase _field1; + void *_field2; + void *_field3; + void *_field4; + void *_field5; +}; + +struct WKPageFindMatchesClientBase { + int _field1; + void *_field2; +}; + +struct WKPageFindMatchesClientV0 { + struct WKPageFindMatchesClientBase _field1; + void *_field2; + void *_field3; +}; + +struct _NSRange { + unsigned long long location; + unsigned long long length; +}; + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/CNAutocompleteFetchDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/CNAutocompleteFetchDelegate-Protocol.h new file mode 100644 index 00000000..c192f177 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/CNAutocompleteFetchDelegate-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol CNAutocompleteFetchDelegate +- (void)autocompleteFetch:(id)arg1 didFailWithError:(id)arg2; +- (void)autocompleteFetch:(id)arg1 didReceiveResults:(id)arg2; + +@optional +- (void)autocompleteFetchDidEndNetworkActivity:(id)arg1; +- (void)autocompleteFetchDidBeginNetworkActivity:(id)arg1; +- (void)autocompleteFetchDidFinish:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/CNContactPickerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/CNContactPickerDelegate-Protocol.h new file mode 100644 index 00000000..108f47b4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/CNContactPickerDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol CNContactPickerDelegate + +@optional +- (void)contactPickerDidClose:(id)arg1; +- (void)contactPickerWillClose:(id)arg1; +- (void)contactPicker:(id)arg1 didChooseContact:(id)arg2 key:(id)arg3 value:(id)arg4; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MCCIDURLProtocolDataProvider-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MCCIDURLProtocolDataProvider-Protocol.h new file mode 100644 index 00000000..e030a378 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MCCIDURLProtocolDataProvider-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@class NSData, NSString, NSURL; + +@protocol MCCIDURLProtocolDataProvider +@property(readonly, copy) NSString *mimeType; +@property(readonly, copy) NSData *data; +@property(readonly) NSURL *cidURL; + +@optional +@property(readonly) long long fileSize; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIActionMenuFactory.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIActionMenuFactory.h new file mode 100644 index 00000000..0c5a8eeb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIActionMenuFactory.h @@ -0,0 +1,19 @@ +/* + * 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" + +@interface MUIActionMenuFactory : NSObject +{ +} + ++ (id)_menuImageForAction:(unsigned long long)arg1; ++ (id)_menuTitleForAction:(unsigned long long)arg1; ++ (id)menuItemForAction:(unsigned long long)arg1 action:(SEL)arg2; ++ (id)allocWithZone:(struct _NSZone *)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIAddressField.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIAddressField.h new file mode 100644 index 00000000..083d75fa --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIAddressField.h @@ -0,0 +1,177 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControl.h" + +#import "CNAutocompleteFetchDelegate.h" +#import "CNContactPickerDelegate.h" +#import "NSTableViewDataSource.h" +#import "NSTableViewDelegate.h" +#import "NSTokenFieldDelegate.h" + +@class CNAutocompleteResult, MUITokenAddressField, NSArray, NSButton, NSLayoutConstraint, NSMapTable, NSMutableArray, NSProgressIndicator, NSScrollView, NSString, NSTableView, NSView, NSWindow; + +@interface MUIAddressField : NSControl +{ + SEL _action; + id _target; + unsigned long long _style; + BOOL _ignoreCompletionForTextChange; + BOOL _isShowingContactPicker; + BOOL _shouldDrawFocusRing; + BOOL _isBoundToTokenField; + BOOL _isShowingSelectedCompletion; + NSString *_senderDomain; + NSScrollView *_scrollView; + MUITokenAddressField *_tokenField; + NSProgressIndicator *_progressIndicator; + NSButton *_addContactButton; + NSWindow *_completionWindow; + NSTableView *_completionTableView; + NSScrollView *_completionTableScrollView; + CNAutocompleteResult *_selectedResult; + NSMutableArray *_completionResults; + id _currentSearchRequest; + NSString *_previousPartialString; + double _completionStartTime; + long long _addressDisplayMode; + id _tokenValue; + NSLayoutConstraint *_addContactButtonWidthConstraint; + NSLayoutConstraint *_addContactButtonTrailingConstraint; + NSLayoutConstraint *_tokenFieldTrailingConstraint; + NSLayoutConstraint *_tokenFieldBottomConstraint; + NSLayoutConstraint *_addressFieldHeightConstraint; + NSMapTable *_representedObjectsCache; + NSMutableArray *_autocompletionOperations; + NSView *_progressIndicatorContainer; + id _tokenAddressDelegate; + struct _NSRange _completionHighlightRange; +} + ++ (id)_contactPicker; ++ (id)readablePasteboardTypes; ++ (id)keyPathsForValuesAffectingAddresses; +@property(nonatomic) BOOL isShowingSelectedCompletion; // @synthesize isShowingSelectedCompletion=_isShowingSelectedCompletion; +@property(nonatomic) BOOL isBoundToTokenField; // @synthesize isBoundToTokenField=_isBoundToTokenField; +@property(nonatomic) __weak id tokenAddressDelegate; // @synthesize tokenAddressDelegate=_tokenAddressDelegate; +@property(nonatomic) BOOL shouldDrawFocusRing; // @synthesize shouldDrawFocusRing=_shouldDrawFocusRing; +@property(retain, nonatomic) NSView *progressIndicatorContainer; // @synthesize progressIndicatorContainer=_progressIndicatorContainer; +@property(retain, nonatomic) NSMutableArray *autocompletionOperations; // @synthesize autocompletionOperations=_autocompletionOperations; +@property(retain, nonatomic) NSMapTable *representedObjectsCache; // @synthesize representedObjectsCache=_representedObjectsCache; +@property(retain, nonatomic) NSLayoutConstraint *addressFieldHeightConstraint; // @synthesize addressFieldHeightConstraint=_addressFieldHeightConstraint; +@property(nonatomic) __weak NSLayoutConstraint *tokenFieldBottomConstraint; // @synthesize tokenFieldBottomConstraint=_tokenFieldBottomConstraint; +@property(nonatomic) __weak NSLayoutConstraint *tokenFieldTrailingConstraint; // @synthesize tokenFieldTrailingConstraint=_tokenFieldTrailingConstraint; +@property(nonatomic) __weak NSLayoutConstraint *addContactButtonTrailingConstraint; // @synthesize addContactButtonTrailingConstraint=_addContactButtonTrailingConstraint; +@property(nonatomic) __weak NSLayoutConstraint *addContactButtonWidthConstraint; // @synthesize addContactButtonWidthConstraint=_addContactButtonWidthConstraint; +@property(nonatomic) BOOL isShowingContactPicker; // @synthesize isShowingContactPicker=_isShowingContactPicker; +@property(retain, nonatomic) id tokenValue; // @synthesize tokenValue=_tokenValue; +@property(nonatomic) long long addressDisplayMode; // @synthesize addressDisplayMode=_addressDisplayMode; +@property(nonatomic) BOOL ignoreCompletionForTextChange; // @synthesize ignoreCompletionForTextChange=_ignoreCompletionForTextChange; +@property(nonatomic) struct _NSRange completionHighlightRange; // @synthesize completionHighlightRange=_completionHighlightRange; +@property(nonatomic) double completionStartTime; // @synthesize completionStartTime=_completionStartTime; +@property(copy, nonatomic) NSString *previousPartialString; // @synthesize previousPartialString=_previousPartialString; +@property(retain, nonatomic) id currentSearchRequest; // @synthesize currentSearchRequest=_currentSearchRequest; +@property(retain, nonatomic) NSMutableArray *completionResults; // @synthesize completionResults=_completionResults; +@property(retain, nonatomic) CNAutocompleteResult *selectedResult; // @synthesize selectedResult=_selectedResult; +@property(retain, nonatomic) NSScrollView *completionTableScrollView; // @synthesize completionTableScrollView=_completionTableScrollView; +@property(retain, nonatomic) NSTableView *completionTableView; // @synthesize completionTableView=_completionTableView; +@property(retain, nonatomic) NSWindow *completionWindow; // @synthesize completionWindow=_completionWindow; +@property(retain, nonatomic) NSButton *addContactButton; // @synthesize addContactButton=_addContactButton; +@property(retain, nonatomic) NSProgressIndicator *progressIndicator; // @synthesize progressIndicator=_progressIndicator; +@property(retain, nonatomic) MUITokenAddressField *tokenField; // @synthesize tokenField=_tokenField; +@property(retain, nonatomic) NSScrollView *scrollView; // @synthesize scrollView=_scrollView; +@property(copy, nonatomic) NSString *senderDomain; // @synthesize senderDomain=_senderDomain; +- (void).cxx_destruct; +- (id)accessibilityChildren; +- (void)setAccessibilityTitleUIElement:(id)arg1; +- (void)drawFocusRingMask; +- (struct CGRect)focusRingMaskBounds; +- (BOOL)_addressFieldNeedsToBeScrollable; +- (void)_resizeFieldIfNeeded; +- (void)updateConstraints; +- (BOOL)_hasFocus; +- (void)contactPickerDidClose:(id)arg1; +- (void)contactPickerWillClose:(id)arg1; +- (void)contactPicker:(id)arg1 didChooseContact:(id)arg2 key:(id)arg3 value:(id)arg4; +- (void)_showContactPicker:(id)arg1; +- (void)_tokenFieldGainedFocus:(id)arg1; +- (void)_completeSelection:(id)arg1; +- (void)_selectTableViewRow:(unsigned long long)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +- (id)_completionTableView; +- (void)_presentCompletionWindow; +- (void)setFrameSize:(struct CGSize)arg1; +- (id)_completionStringForSelectedRecord; +- (BOOL)tokenField:(id)arg1 characterAtIndex:(unsigned long long)arg2 shouldTerminateString:(id)arg3; +- (id)tokenField:(id)arg1 readFromPasteboard:(id)arg2; +- (BOOL)tokenField:(id)arg1 writeRepresentedObjects:(id)arg2 toPasteboard:(id)arg3; +- (id)tokenField:(id)arg1 menuForRepresentedObject:(id)arg2; +- (BOOL)tokenField:(id)arg1 hasMenuForRepresentedObject:(id)arg2; +- (unsigned long long)tokenField:(id)arg1 styleForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 editingStringForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 displayStringForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 shouldAddObjects:(id)arg2 atIndex:(unsigned long long)arg3; +- (id)tokenField:(id)arg1 representedObjectForEditingString:(id)arg2; +- (id)tokenField:(id)arg1 setUpTokenAttachmentCell:(id)arg2 forRepresentedObject:(id)arg3; +- (void)objectDidEndEditing:(id)arg1; +- (void)objectDidBeginEditing:(id)arg1; +- (void)_objectDidTriggerAction:(id)arg1; +- (BOOL)control:(id)arg1 textView:(id)arg2 doCommandBySelector:(SEL)arg3; +- (void)controlTextDidEndEditing:(id)arg1; +- (void)controlTextDidChange:(id)arg1; +- (BOOL)becomeFirstResponder; +- (BOOL)canBecomeKeyView; +- (void)setNextKeyView:(id)arg1; +- (void)setTarget:(id)arg1; +- (id)target; +- (void)setAction:(SEL)arg1; +- (SEL)action; +@property(nonatomic) unsigned long long style; +- (void)autocompleteFetchDidEndNetworkActivity:(id)arg1; +- (void)autocompleteFetchDidBeginNetworkActivity:(id)arg1; +- (void)autocompleteFetch:(id)arg1 didFailWithError:(id)arg2; +- (void)_cleanUpOperationArray; +- (void)autocompleteFetch:(id)arg1 didReceiveResults:(id)arg2; +- (void)_tokenFieldCommitedEditing:(id)arg1; +- (id)_tokensWithGroupTokensExpanded:(id)arg1; +- (void)_addAddress:(id)arg1 contact:(id)arg2; +@property(retain, nonatomic) NSArray *addresses; +@property(readonly, nonatomic) BOOL isEmpty; +- (void)_refreshAddressDisplayMode; +- (void)_sharedPreferencesChanged:(id)arg1; +- (void)_showSelectedCompletionInField; +- (void)_cancelCompletion; +- (void)_startCompleting; +- (void)_updateTrailingConstraints; +- (void)_scrollerStyleDidChange:(id)arg1; +- (void)_configureConstraints; +- (id)_addContactImage; +- (void)_configureAddContactButton; +- (void)_configureProgressIndicator; +- (void)_configureTokenField; +- (void)_configureScrollView; +- (void)_windowDidChangeKeyStatus:(id)arg1; +- (void)_bindOrUnbindToTokenField:(BOOL)arg1; +- (void)viewDidMoveToSuperview; +- (void)removeFromSuperview; +- (void)viewDidMoveToWindow; +- (void)_registerForNotifications; +- (void)setEnabled:(BOOL)arg1; +- (void)dealloc; +- (void)_muiAddressFieldCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIAddressFieldScrollDocumentView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIAddressFieldScrollDocumentView.h new file mode 100644 index 00000000..a775762f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIAddressFieldScrollDocumentView.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface MUIAddressFieldScrollDocumentView : NSView +{ +} + +- (BOOL)isFlipped; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIAddressTokenAttachmentCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIAddressTokenAttachmentCell.h new file mode 100644 index 00000000..0b38fb33 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIAddressTokenAttachmentCell.h @@ -0,0 +1,21 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTokenAttachmentCell.h" + +@interface MUIAddressTokenAttachmentCell : NSTokenAttachmentCell +{ + BOOL _displayAsExternal; + BOOL _neverShowSeparator; +} + ++ (id)colorForExternalDomain; +@property BOOL neverShowSeparator; // @synthesize neverShowSeparator=_neverShowSeparator; +@property(nonatomic) BOOL displayAsExternal; // @synthesize displayAsExternal=_displayAsExternal; +- (id)tokenTintColor; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIBundleResourceURLProtocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIBundleResourceURLProtocol.h new file mode 100644 index 00000000..6ce0aead --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIBundleResourceURLProtocol.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSURLProtocol.h" + +@interface MUIBundleResourceURLProtocol : NSURLProtocol +{ +} + ++ (BOOL)requestIsCacheEquivalent:(id)arg1 toRequest:(id)arg2; ++ (id)canonicalRequestForRequest:(id)arg1; ++ (BOOL)canInitWithRequest:(id)arg1; +- (void)stopLoading; +- (void)startLoading; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUICollectionCellView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUICollectionCellView.h new file mode 100644 index 00000000..da89c21c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUICollectionCellView.h @@ -0,0 +1,46 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class NSLayoutConstraint; + +@interface MUICollectionCellView : NSView +{ + BOOL _emphasized; + BOOL _focused; + BOOL _selected; + unsigned long long _cellIndex; + NSLayoutConstraint *_widthConstraint; + NSLayoutConstraint *_heightConstraint; + NSLayoutConstraint *_midXConstraint; + NSLayoutConstraint *_minYConstraint; +} + +@property(retain, nonatomic) NSLayoutConstraint *minYConstraint; // @synthesize minYConstraint=_minYConstraint; +@property(retain, nonatomic) NSLayoutConstraint *midXConstraint; // @synthesize midXConstraint=_midXConstraint; +@property(retain, nonatomic) NSLayoutConstraint *heightConstraint; // @synthesize heightConstraint=_heightConstraint; +@property(retain, nonatomic) NSLayoutConstraint *widthConstraint; // @synthesize widthConstraint=_widthConstraint; +@property(nonatomic) BOOL selected; // @synthesize selected=_selected; +@property(nonatomic) BOOL focused; // @synthesize focused=_focused; +@property(nonatomic) BOOL emphasized; // @synthesize emphasized=_emphasized; +@property(nonatomic) unsigned long long cellIndex; // @synthesize cellIndex=_cellIndex; +- (void).cxx_destruct; +- (void)setFrameSize:(struct CGSize)arg1; +- (id)_enclosingConversationView; +- (void)prepareContentInRect:(struct CGRect)arg1; +- (void)prepareForReuse; +- (BOOL)isFlipped; +@property(readonly, nonatomic) id viewController; +- (void)_muiCollectionCellViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; +- (void)collectionView:(id)arg1 didEndScrollInScrollView:(id)arg2; +- (void)collectionView:(id)arg1 didScrollInScrollView:(id)arg2; +- (void)collectionView:(id)arg1 didBeginScrollInScrollView:(id)arg2; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUICollectionHeightStorage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUICollectionHeightStorage.h new file mode 100644 index 00000000..961817fb --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUICollectionHeightStorage.h @@ -0,0 +1,38 @@ +/* + * 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" + +@class NSMutableArray; + +@interface MUICollectionHeightStorage : NSObject +{ + NSMutableArray *_heights; + NSMutableArray *_yCache; + double _height; + double _spacing; +} + ++ (id)keyPathsForValuesAffectingCount; +@property(nonatomic) double spacing; // @synthesize spacing=_spacing; +@property(nonatomic) double height; // @synthesize height=_height; +- (void).cxx_destruct; +- (unsigned long long)indexAtY:(double)arg1; +- (double)maxYOfIndex:(unsigned long long)arg1; +- (double)minYOfIndex:(unsigned long long)arg1; +- (double)heightOfIndex:(unsigned long long)arg1; +- (void)setHeight:(double)arg1 ofIndex:(unsigned long long)arg2; +- (void)_invalidateCacheForIndex:(unsigned long long)arg1; +- (void)removeAllHeights; +- (void)removeHeightAtIndex:(unsigned long long)arg1; +- (void)moveHeightAtIndex:(unsigned long long)arg1 toIndex:(unsigned long long)arg2; +- (void)addHeight:(double)arg1; +- (void)insertHeight:(double)arg1 atIndex:(unsigned long long)arg2; +@property(readonly, nonatomic) unsigned long long count; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUICollectionView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUICollectionView.h new file mode 100644 index 00000000..2adcb875 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUICollectionView.h @@ -0,0 +1,137 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +#import "NSScrollViewDelegate.h" + +@class MUICollectionHeightStorage, NSIndexSet, NSMutableArray, NSMutableIndexSet, NSMutableSet, NSString; + +@interface MUICollectionView : NSView +{ + NSMutableArray *_activeCellViews; + NSMutableSet *_spareCellViews; + NSMutableIndexSet *_faultedIndexes; + NSMutableIndexSet *_lockedIndexes; + NSMutableIndexSet *_selectionIndexes; + struct CGSize _cellSpacing; + BOOL _emphasized; + unsigned long long _focusedIndex; + BOOL _adjustHeightForPinning; + BOOL _adjustScrollForPinning; + BOOL _inScroll; + id _delegate; + MUICollectionHeightStorage *_heightStorage; + unsigned long long _pinnedCellEdge; + unsigned long long _pinnedEdge; + double _pinnedHeightAdjustment; + unsigned long long _pinnedIndex; + double _pinnedOffset; +} + ++ (id)keyPathsForValuesAffectingNumberOfCells; ++ (BOOL)requiresConstraintBasedLayout; +@property(nonatomic) double pinnedOffset; // @synthesize pinnedOffset=_pinnedOffset; +@property(nonatomic) unsigned long long pinnedIndex; // @synthesize pinnedIndex=_pinnedIndex; +@property(nonatomic) double pinnedHeightAdjustment; // @synthesize pinnedHeightAdjustment=_pinnedHeightAdjustment; +@property(nonatomic) unsigned long long pinnedEdge; // @synthesize pinnedEdge=_pinnedEdge; +@property(nonatomic) unsigned long long pinnedCellEdge; // @synthesize pinnedCellEdge=_pinnedCellEdge; +@property(nonatomic) BOOL inScroll; // @synthesize inScroll=_inScroll; +@property(readonly, nonatomic) MUICollectionHeightStorage *heightStorage; // @synthesize heightStorage=_heightStorage; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +@property(nonatomic) BOOL adjustScrollForPinning; // @synthesize adjustScrollForPinning=_adjustScrollForPinning; +@property(nonatomic) BOOL adjustHeightForPinning; // @synthesize adjustHeightForPinning=_adjustHeightForPinning; +- (void).cxx_destruct; +- (BOOL)_scrollToNextCell:(id)arg1 contiguously:(BOOL)arg2; +- (BOOL)_scrollToPreviousCell:(id)arg1 contiguously:(BOOL)arg2; +- (void)scrollPageDown:(id)arg1; +- (void)scrollPageUp:(id)arg1; +- (void)scrollToEndOfDocument:(id)arg1; +- (void)scrollToBeginningOfDocument:(id)arg1; +- (void)moveDown:(id)arg1; +- (void)moveUp:(id)arg1; +- (void)moveLeft:(id)arg1; +- (void)moveRight:(id)arg1; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (void)keyDown:(id)arg1; +- (BOOL)performKeyEquivalent:(id)arg1; +- (void)scrollToCellAtIndex:(unsigned long long)arg1 constrainScroll:(BOOL)arg2; +- (BOOL)scrollRectToVisible:(struct CGRect)arg1; +- (void)scrollPoint:(struct CGPoint)arg1; +- (void)_scrollEdge:(unsigned long long)arg1 to:(id)arg2; +- (id)enclosingScrollView; +- (void)didEndScrollInScrollView:(id)arg1; +- (void)didScrollInScrollView:(id)arg1; +- (void)didBeginScrollInScrollView:(id)arg1; +- (void)_scrollViewDidScroll:(id)arg1; +- (void)_updateGeometryIfNeeded; +- (void)_updateConstraintsForCellAtIndex:(unsigned long long)arg1; +- (void)setFrameSize:(struct CGSize)arg1; +- (void)setFrameOrigin:(struct CGPoint)arg1; +- (void)layout; +- (void)updateConstraints; +- (void)noteHeightOfCellAtIndex:(unsigned long long)arg1; +- (void)_updateSelectionIfNeeded; +- (void)_updateEmphasisIfNeeded; +- (void)deselectCellsAtIndexes:(id)arg1; +- (void)selectCellsAtIndexes:(id)arg1 byExtendingSelection:(BOOL)arg2; +- (void)mouseUp:(id)arg1; +- (struct CGRect)adjustScroll:(struct CGRect)arg1; +- (struct CGRect)_adjustRectForPinning:(struct CGRect)arg1; +- (void)_pinToCellAtIndex:(unsigned long long)arg1 cellEdge:(unsigned long long)arg2 edge:(unsigned long long)arg3 offset:(double)arg4; +- (void)pinToCellAtIndex:(unsigned long long)arg1 cellEdge:(unsigned long long)arg2 edge:(unsigned long long)arg3; +- (void)_pinTo:(struct CGRect)arg1 edge:(unsigned long long)arg2; +- (void)enumerateCellViewsWithOptions:(unsigned long long)arg1 usingBlock:(id)arg2; +- (void)enumerateCellViewsUsingBlock:(id)arg1; +- (unsigned long long)indexForView:(id)arg1; +- (unsigned long long)indexForResponder:(id)arg1; +- (id)cellViewAtIndex:(unsigned long long)arg1; +- (struct CGRect)rectForCellAtIndex:(unsigned long long)arg1; +- (struct _NSRange)rangeOfCellsInRect:(struct CGRect)arg1; +- (unsigned long long)_indexOfCellView:(id)arg1; +- (void)prepareContentInRect:(struct CGRect)arg1; +- (void)_faultCellsAtIndexesInRange:(struct _NSRange)arg1; +- (void)unlockCellsAtIndexes:(id)arg1; +- (void)unlockCellsAtIndexesInRange:(struct _NSRange)arg1; +- (void)unlockCellAtIndex:(unsigned long long)arg1; +- (void)lockCellsAtIndexes:(id)arg1; +- (void)lockCellsAtIndexesInRange:(struct _NSRange)arg1; +- (void)lockCellAtIndex:(unsigned long long)arg1; +- (void)removeAllCells; +- (void)removeCellsAtIndexes:(id)arg1; +- (void)removeCellsAtIndexesInRange:(struct _NSRange)arg1; +- (void)removeCellAtIndex:(unsigned long long)arg1; +- (void)moveCellAtIndex:(unsigned long long)arg1 toIndex:(unsigned long long)arg2; +- (void)insertCellsAtIndexes:(id)arg1; +- (void)insertCellsAtIndexesInRange:(struct _NSRange)arg1; +- (void)insertCellAtIndex:(unsigned long long)arg1; +- (void)_updateCellIndexes; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)viewDidMoveToWindow; +- (void)viewWillMoveToWindow:(id)arg1; +- (void)viewDidMoveToSuperview; +- (void)viewWillMoveToSuperview:(id)arg1; +@property(readonly, nonatomic) struct _NSRange visibleRange; +@property(copy, nonatomic) NSIndexSet *selectionIndexes; +@property(readonly, nonatomic) unsigned long long numberOfCells; +@property(readonly, nonatomic) unsigned long long firstResponderIndex; +@property(nonatomic) unsigned long long focusedIndex; +@property(nonatomic) BOOL emphasized; +@property(nonatomic) struct CGSize cellSpacing; +- (BOOL)isFlipped; +- (BOOL)acceptsFirstResponder; +- (void)_muiCollectionViewCommonInit; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIContextMenuController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIContextMenuController.h new file mode 100644 index 00000000..877f1cb0 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIContextMenuController.h @@ -0,0 +1,55 @@ +/* + * 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 "NSSharingServiceDelegate.h" +#import "NSSharingServicePickerDelegate.h" + +@class MUIWKViewController, MUIWebAttachmentController, NSArray, NSDictionary, NSMapTable, NSMenu, NSSharingServicePicker, NSString, NSURL; + +@interface MUIContextMenuController : NSObject +{ + MUIWKViewController *_viewController; + NSMenu *_shareMenu; + NSSharingServicePicker *_picker; + NSDictionary *_applicationDictionary; + NSMapTable *_sharingItems; + NSArray *_clientMenuItems; + NSURL *_clickedLinkURL; + MUIWebAttachmentController *_clickedAttachmentController; + NSArray *_selectedAndClickedAttachmentControllers; +} + +@property(retain, nonatomic) NSArray *selectedAndClickedAttachmentControllers; // @synthesize selectedAndClickedAttachmentControllers=_selectedAndClickedAttachmentControllers; +@property(retain, nonatomic) MUIWebAttachmentController *clickedAttachmentController; // @synthesize clickedAttachmentController=_clickedAttachmentController; +@property(retain, nonatomic) NSURL *clickedLinkURL; // @synthesize clickedLinkURL=_clickedLinkURL; +@property(copy, nonatomic) NSArray *clientMenuItems; // @synthesize clientMenuItems=_clientMenuItems; +@property(retain, nonatomic) NSMapTable *sharingItems; // @synthesize sharingItems=_sharingItems; +@property(retain, nonatomic) NSDictionary *applicationDictionary; // @synthesize applicationDictionary=_applicationDictionary; +@property(retain, nonatomic) NSSharingServicePicker *picker; // @synthesize picker=_picker; +@property(retain, nonatomic) NSMenu *shareMenu; // @synthesize shareMenu=_shareMenu; +@property(nonatomic) __weak MUIWKViewController *viewController; // @synthesize viewController=_viewController; +- (void).cxx_destruct; +- (id)sharingService:(id)arg1 sourceWindowForShareItems:(id)arg2 sharingContentScope:(long long *)arg3; +- (id)sharingService:(id)arg1 transitionImageForShareItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)sharingService:(id)arg1 sourceFrameOnScreenForShareItem:(id)arg2; +- (id)sharingServicePicker:(id)arg1 delegateForSharingService:(id)arg2; +- (id)sharingServicePicker:(id)arg1 sharingServicesForItems:(id)arg2 proposedSharingServices:(id)arg3; +- (void)_itemClicked:(id)arg1; +- (void)_handleClickedItem:(struct OpaqueWKContextMenuItem *)arg1; +- (void)_addProposedContextMenuItems:(struct OpaqueWKArray *)arg1 toMenu:(struct OpaqueWKArray **)arg2 includeLinkItems:(BOOL)arg3; +- (id)_applicationNameFromIdentifier:(id)arg1; +- (struct WKPageContextMenuClientV2)contextMenuClient; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIFramework.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIFramework.h new file mode 100644 index 00000000..b81b033d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIFramework.h @@ -0,0 +1,16 @@ +/* + * 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" + +@interface MUIFramework : NSObject +{ +} + ++ (id)bundle; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIJavaScriptController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIJavaScriptController.h new file mode 100644 index 00000000..a9ae4279 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIJavaScriptController.h @@ -0,0 +1,28 @@ +/* + * 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" + +@class MUIWKViewController, NSMutableSet, NSPort; + +@interface MUIJavaScriptController : NSObject +{ + NSMutableSet *_pendingJavaScriptRequests; + MUIWKViewController *_controller; + NSPort *_javaScriptPort; +} + +@property(retain, nonatomic) NSPort *javaScriptPort; // @synthesize javaScriptPort=_javaScriptPort; +@property(nonatomic) __weak MUIWKViewController *controller; // @synthesize controller=_controller; +- (void).cxx_destruct; +- (id)evaluateJavaScriptSynchronously:(id)arg1; +- (void)evaluateJavaScript:(id)arg1 completionHandler:(id)arg2; +- (void)dealloc; +- (id)init; +- (id)initWithController:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUILinkEditWindowController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUILinkEditWindowController.h new file mode 100644 index 00000000..168da280 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUILinkEditWindowController.h @@ -0,0 +1,39 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowController.h" + +@class MUIWKViewController, NSButton, NSTextField; + +@interface MUILinkEditWindowController : NSWindowController +{ + NSTextField *_linkTextField; + NSButton *_okButton; + NSButton *_removeButton; + NSButton *_cancelButton; + MUIWKViewController *_viewController; +} + +@property(nonatomic) __weak MUIWKViewController *viewController; // @synthesize viewController=_viewController; +@property(nonatomic) __weak NSButton *cancelButton; // @synthesize cancelButton=_cancelButton; +@property(nonatomic) __weak NSButton *removeButton; // @synthesize removeButton=_removeButton; +@property(nonatomic) __weak NSButton *okButton; // @synthesize okButton=_okButton; +@property(nonatomic) __weak NSTextField *linkTextField; // @synthesize linkTextField=_linkTextField; +- (void).cxx_destruct; +- (void)cancel:(id)arg1; +- (void)removeLink; +- (void)removeLink:(id)arg1; +- (void)ok:(id)arg1; +- (void)showSheet; +- (void)awakeFromNib; +- (id)windowNibName; +- (id)initWithCoder:(id)arg1; +- (id)initWithWindow:(id)arg1; +- (id)init; +- (id)initWithController:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIMIMEDocumentGenerator.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIMIMEDocumentGenerator.h new file mode 100644 index 00000000..88018301 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIMIMEDocumentGenerator.h @@ -0,0 +1,28 @@ +/* + * 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" + +@class MUIWebDocumentView, NSArray, NSAttributedString; + +@interface MUIMIMEDocumentGenerator : NSObject +{ + NSArray *_mimeParts; + NSAttributedString *_plainTextAlternative; + MUIWebDocumentView *_webDocumentView; +} + +@property(retain, nonatomic) MUIWebDocumentView *webDocumentView; // @synthesize webDocumentView=_webDocumentView; +@property(retain, nonatomic) NSAttributedString *plainTextAlternative; // @synthesize plainTextAlternative=_plainTextAlternative; +@property(retain, nonatomic) NSArray *mimeParts; // @synthesize mimeParts=_mimeParts; +- (void).cxx_destruct; +- (void)asyncGenerateHTMLDocument:(id)arg1; +- (id)init; +- (id)initWithWebDocument:(id)arg1; +- (id)initWithWebDocumentView:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIRemoteImageCollector.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIRemoteImageCollector.h new file mode 100644 index 00000000..290ee5af --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIRemoteImageCollector.h @@ -0,0 +1,24 @@ +/* + * 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" + +@class NSMutableArray, NSOperationQueue; + +@interface MUIRemoteImageCollector : NSObject +{ + NSMutableArray *_attachments; + NSOperationQueue *_downloadQueue; +} + +@property(readonly, nonatomic) NSOperationQueue *downloadQueue; // @synthesize downloadQueue=_downloadQueue; +- (void).cxx_destruct; +- (void)fullResolutionDataDidBecomeAvailable:(id)arg1; +- (id)init; +- (id)initWithAttachments:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUISegmentedToolbarItem.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUISegmentedToolbarItem.h new file mode 100644 index 00000000..ffbd2e61 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUISegmentedToolbarItem.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSToolbarItem.h" + +@interface MUISegmentedToolbarItem : NSToolbarItem +{ +} + +- (void)sizeToFit; +- (void)validate; +- (void)setView:(id)arg1; +- (id)view; +- (id)initWithDictionaryRepresentation:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUISelectionAndClickInformation.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUISelectionAndClickInformation.h new file mode 100644 index 00000000..d141a342 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUISelectionAndClickInformation.h @@ -0,0 +1,29 @@ +/* + * 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" + +@class MUIWebAttachmentController, NSArray, NSURL; + +@interface MUISelectionAndClickInformation : NSObject +{ + NSArray *_selectedAttachmentControllers; + MUIWebAttachmentController *_clickedAttachmentController; + NSURL *_clickedLinkURL; + NSURL *_clickedMediaURL; + NSURL *_clickedImageURL; +} + +@property(retain, nonatomic) NSURL *clickedImageURL; // @synthesize clickedImageURL=_clickedImageURL; +@property(retain, nonatomic) NSURL *clickedMediaURL; // @synthesize clickedMediaURL=_clickedMediaURL; +@property(retain, nonatomic) NSURL *clickedLinkURL; // @synthesize clickedLinkURL=_clickedLinkURL; +@property(retain, nonatomic) MUIWebAttachmentController *clickedAttachmentController; // @synthesize clickedAttachmentController=_clickedAttachmentController; +@property(copy, nonatomic) NSArray *selectedAttachmentControllers; // @synthesize selectedAttachmentControllers=_selectedAttachmentControllers; +- (void).cxx_destruct; +@property(readonly, copy, nonatomic) NSArray *selectedAndClickedAttachmentControllers; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUISenderPhotoView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUISenderPhotoView.h new file mode 100644 index 00000000..af86b261 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUISenderPhotoView.h @@ -0,0 +1,14 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSImageView.h" + +@interface MUISenderPhotoView : NSImageView +{ +} + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddress.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddress.h new file mode 100644 index 00000000..38af1022 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddress.h @@ -0,0 +1,103 @@ +/* + * 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 "CNAutocompleteFetchDelegate.h" +#import "NSCopying.h" + +@class ABGroup, CNContact, NSString, NSTextView, NSTokenField; + +@interface MUITokenAddress : NSObject +{ + BOOL _shouldRefreshNameIfPossible; + id _delegate; + NSTokenField *_tokenField; + NSTextView *_textView; + CNContact *_contact; + ABGroup *_group; + NSString *_recentRawAddress; + NSString *_recentName; + NSString *_currentRawAddress; + NSString *_currentName; + long long _tokenStyle; + id _autocompletionSearchRequest; +} + ++ (id)_contactsCache; ++ (void)writeTokens:(id)arg1 toPasteboard:(id)arg2; ++ (id)keyPathsForValuesAffectingIsExternal; ++ (id)tokenWithAddress:(id)arg1 isRecent:(BOOL)arg2 contact:(id)arg3; ++ (id)tokenWithAddress:(id)arg1; ++ (BOOL)addressIsExternal:(id)arg1; +@property(retain, nonatomic) id autocompletionSearchRequest; // @synthesize autocompletionSearchRequest=_autocompletionSearchRequest; +@property(nonatomic) BOOL shouldRefreshNameIfPossible; // @synthesize shouldRefreshNameIfPossible=_shouldRefreshNameIfPossible; +@property(nonatomic) long long tokenStyle; // @synthesize tokenStyle=_tokenStyle; +@property(copy, nonatomic) NSString *currentName; // @synthesize currentName=_currentName; +@property(copy, nonatomic) NSString *currentRawAddress; // @synthesize currentRawAddress=_currentRawAddress; +@property(copy, nonatomic) NSString *recentName; // @synthesize recentName=_recentName; +@property(copy, nonatomic) NSString *recentRawAddress; // @synthesize recentRawAddress=_recentRawAddress; +@property(retain, nonatomic) ABGroup *group; // @synthesize group=_group; +@property(retain, nonatomic) CNContact *contact; // @synthesize contact=_contact; +@property(nonatomic) NSTextView *textView; // @synthesize textView=_textView; +@property(nonatomic) __weak NSTokenField *tokenField; // @synthesize tokenField=_tokenField; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +- (void).cxx_destruct; +- (void)searchForToken:(id)arg1; +- (void)removeFromAddressHistory:(id)arg1; +- (void)expandGroupAddress:(id)arg1; +- (void)openNewMessage:(id)arg1; +- (void)addToVIPSenders:(id)arg1; +- (void)removeFromVIPSenders:(id)arg1; +- (void)openInContacts:(id)arg1; +- (void)openPersonCard:(id)arg1; +- (void)addToContacts:(id)arg1; +- (void)copyAddressToClipboard:(id)arg1; +- (void)removeAddress:(id)arg1; +- (void)editAddress:(id)arg1; +- (void)changeAddress:(id)arg1; +- (id)_tokenForTokenAddress:(id)arg1; +- (BOOL)validateMenuItem:(id)arg1; +- (id)menu; +- (id)expandedTokens; +- (void)autocompleteFetch:(id)arg1 didFailWithError:(id)arg2; +- (void)autocompleteFetch:(id)arg1 didReceiveResults:(id)arg2; +- (void)_refreshToken; +- (void)_contactsChanged:(id)arg1; +- (id)_contactForEmail:(id)arg1; +- (void)_getAddressAndNameFromRecord; +- (void)_getRecordFromAddress; +- (void)getRecordFromAddress; +- (id)_contactsOperationQueue; +- (void)writeToPasteboard:(id)arg1; +- (void)_writeToPasteboard:(id)arg1 forceAddressOnly:(BOOL)arg2; +- (BOOL)writeToPasteboard:(id)arg1 type:(id)arg2; +- (BOOL)_writeToPasteboard:(id)arg1 type:(id)arg2 forceAddressOnly:(BOOL)arg3; +- (id)writablePasteboardTypes; +- (id)_suggestionSerializedRepresentation; +- (id)suggestionWithGenius:(id)arg1; +- (id)toolTipWithMode:(long long)arg1; +@property(readonly, nonatomic) BOOL isExternal; +- (id)displayStringWithMode:(long long)arg1; +- (id)formattedAddress; +- (id)_contactNameFormatter; +- (id)_formattedRecentAddress; +- (id)_formattedCurrentAddress; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)dealloc; +- (void)_muiTokenAddressCommonInit; +- (id)init; +- (id)initWithGroup:(id)arg1; +- (id)initWithAddress:(id)arg1 isRecent:(BOOL)arg2 contact:(id)arg3; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddressField.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddressField.h new file mode 100644 index 00000000..c97cee3a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddressField.h @@ -0,0 +1,36 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTokenField.h" + +@class MUITokenAddressTextView, NSView; + +@interface MUITokenAddressField : NSTokenField +{ + MUITokenAddressTextView *_addressTextView; + NSView *_parentAddressField; +} + ++ (Class)cellClass; +@property(nonatomic) __weak NSView *parentAddressField; // @synthesize parentAddressField=_parentAddressField; +- (void).cxx_destruct; +- (id)accessibilityParent; +- (id)designatedFocusRingView; +- (struct CGSize)intrinsicContentSize; +- (void)setFrameSize:(struct CGSize)arg1; +- (double)minimumHeight; +- (void)refreshField; +- (void)didAddSubview:(id)arg1; +- (id)_addressTextView; +- (id)textView:(id)arg1 completions:(id)arg2 forPartialWordRange:(struct _NSRange)arg3 indexOfSelectedItem:(long long *)arg4; +- (BOOL)textView:(id)arg1 shouldChangeTextInRange:(struct _NSRange)arg2 replacementString:(id)arg3; +- (unsigned long long)textView:(id)arg1 dragOperationForDraggingInfo:(id)arg2 type:(id)arg3; +- (id)tokenFieldCell:(id)arg1 shouldUseReadablePasteboardTypes:(id)arg2; +- (id)tokenFieldCell:(id)arg1 shouldUseDraggingPasteboardTypes:(id)arg2; +- (BOOL)becomeFirstResponder; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddressFieldCell.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddressFieldCell.h new file mode 100644 index 00000000..a6663eb8 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddressFieldCell.h @@ -0,0 +1,18 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTokenFieldCell.h" + +@interface MUITokenAddressFieldCell : NSTokenFieldCell +{ +} + +- (BOOL)_needRedrawOnWindowChangedKeyState; +- (BOOL)tokenAttachment:(id)arg1 doubleClickedInRect:(struct CGRect)arg2 ofView:(id)arg3 atCharacterIndex:(unsigned long long)arg4; +- (id)_fieldEditor; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddressTextStorage.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddressTextStorage.h new file mode 100644 index 00000000..3112774f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddressTextStorage.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSConcreteTextStorage.h" + +@interface MUITokenAddressTextStorage : NSConcreteTextStorage +{ +} + +- (BOOL)stripsFontAndColorFromAttachments; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddressTextView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddressTextView.h new file mode 100644 index 00000000..d209c4c6 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUITokenAddressTextView.h @@ -0,0 +1,24 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTokenTextView.h" + +@class MUIAddressField; + +@interface MUITokenAddressTextView : NSTokenTextView +{ + MUIAddressField *_addressField; +} + +@property(nonatomic) __weak MUIAddressField *addressField; // @synthesize addressField=_addressField; +- (void).cxx_destruct; +- (void)noteFocusRingMaskChanged; +- (id)designatedFocusRingView; +- (BOOL)performDragOperation:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWKView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWKView.h new file mode 100644 index 00000000..4e322fe9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWKView.h @@ -0,0 +1,98 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "WKView.h" + +#import "NSDraggingDestination.h" +#import "NSDraggingSource.h" +#import "QLPreviewPanelDataSource.h" +#import "QLPreviewPanelDelegate.h" +#import "QLSeamlessCloserDelegate.h" +#import "QLSeamlessOpenerDelegate.h" + +@class DDActionContext, MUIWKViewController, MUIWebAttachmentController, NSArray, NSDraggingSession, NSEvent, NSString, WKProcessGroup; + +@interface MUIWKView : WKView +{ + BOOL _isDragging; + BOOL _isDraggingAttachments; + NSArray *_attachmentControllersToQuicklook; + MUIWebAttachmentController *_mouseOverAttachmentController; + MUIWKViewController *_controller; + NSDraggingSession *_dragSession; + NSEvent *_attachmentMouseDownEvent; + WKProcessGroup *_processGroup; + DDActionContext *_lastDataDetectorsContext; + DDActionContext *_currentDataDetectorsContext; +} + +@property(retain, nonatomic) DDActionContext *currentDataDetectorsContext; // @synthesize currentDataDetectorsContext=_currentDataDetectorsContext; +@property(retain, nonatomic) DDActionContext *lastDataDetectorsContext; // @synthesize lastDataDetectorsContext=_lastDataDetectorsContext; +@property(retain, nonatomic) WKProcessGroup *processGroup; // @synthesize processGroup=_processGroup; +@property(retain, nonatomic) NSEvent *attachmentMouseDownEvent; // @synthesize attachmentMouseDownEvent=_attachmentMouseDownEvent; +@property(nonatomic) BOOL isDraggingAttachments; // @synthesize isDraggingAttachments=_isDraggingAttachments; +@property(nonatomic) BOOL isDragging; // @synthesize isDragging=_isDragging; +@property(retain, nonatomic) NSDraggingSession *dragSession; // @synthesize dragSession=_dragSession; +@property(nonatomic) __weak MUIWKViewController *controller; // @synthesize controller=_controller; +@property(retain, nonatomic) MUIWebAttachmentController *mouseOverAttachmentController; // @synthesize mouseOverAttachmentController=_mouseOverAttachmentController; +@property(retain, nonatomic) NSArray *attachmentControllersToQuicklook; // @synthesize attachmentControllersToQuicklook=_attachmentControllersToQuicklook; +- (void).cxx_destruct; +- (id)seamlessCloserTransitionImageForPreviewItem:(id)arg1 contentRect:(struct CGRect *)arg2; +- (struct CGRect)seamlessCloserSourceFrameOnScreenForPreviewItem:(id)arg1; +- (void)seamlessOpener:(id)arg1 failedToOpenItems:(id)arg2 withError:(id)arg3; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3 windowLevel:(long long *)arg4; +- (struct CGRect)seamlessOpener:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (id)previewPanel:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)previewPanel:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (id)previewPanel:(id)arg1 previewItemAtIndex:(long long)arg2; +- (long long)numberOfPreviewItemsInPreviewPanel:(id)arg1; +- (void)endPreviewPanelControl:(id)arg1; +- (void)beginPreviewPanelControl:(id)arg1; +- (BOOL)acceptsPreviewPanelControl:(id)arg1; +- (void)keyDown:(id)arg1; +- (void)quickLookWithEvent:(id)arg1; +- (BOOL)quickLookAttachmentControllers:(id)arg1; +- (void)_displayAlertForUndownloadedAttachments:(id)arg1; +- (void)mouseDragged:(id)arg1; +- (void)draggingSession:(id)arg1 endedAtPoint:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (unsigned long long)draggingSession:(id)arg1 sourceOperationMaskForDraggingContext:(long long)arg2; +- (unsigned long long)draggingUpdated:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (void)mouseUp:(id)arg1; +- (BOOL)shouldDelayWindowOrderingForEvent:(id)arg1; +- (BOOL)acceptsFirstMouse:(id)arg1; +- (void)mouseDown:(id)arg1; +- (id)printOperationWithPrintInfo:(id)arg1; +- (id)selectionAndClickInformationForClickAtPoint:(struct CGPoint)arg1; +- (id)selectedAttachmentControllers; +- (id)attachmentControllerForAttachmentInfo:(id)arg1; +- (id)selectionAndClickInformationFromSelectionContextDictionary:(id)arg1; +- (struct CGSize)intrinsicContentSize; +- (void)invalidateIntrinsicContentSize; +- (void)viewDidMoveToSuperview; +- (BOOL)autoscroll:(id)arg1; +- (void)updateLayer; +- (BOOL)resignFirstResponder; +- (BOOL)canBecomeKeyView; +- (id)defaultStringForToolTip:(long long)arg1 view:(id)arg2 point:(struct CGPoint)arg3 userData:(void *)arg4; +- (id)view:(id)arg1 stringForToolTip:(long long)arg2 point:(struct CGPoint)arg3 userData:(void *)arg4; +- (void)showWebInspector:(id)arg1; +- (void)scrollWheel:(id)arg1; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (void)awakeFromNib; +- (void)dealloc; +- (void)quicklookAttachment:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1 processGroup:(id)arg2 browsingContextGroup:(id)arg3; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWKViewController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWKViewController.h new file mode 100644 index 00000000..45a8a435 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWKViewController.h @@ -0,0 +1,119 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSViewController.h" + +#import "WKBrowsingContextLoadDelegate.h" + +@class MUIContextMenuController, MUIJavaScriptController, MUILinkEditWindowController, MUIWebDocumentView, MUIWebDocumentViewGroup, MUIWebFindController, NSMapTable, NSMutableArray, NSPort, NSString; + +@interface MUIWKViewController : NSViewController +{ + BOOL _editable; + BOOL _webInspectorEnabled; + MUIWebDocumentView *_webDocumentView; + NSMutableArray *_pendingDocumentInteractionRequests; + BOOL _ignoreKVOHTMLChanges; + BOOL _isEditing; + MUIWebDocumentViewGroup *_viewGroup; + NSMapTable *_attachmentControllersByAttachment; + MUIContextMenuController *_contextMenuController; + MUIWebFindController *_findController; + MUILinkEditWindowController *_linkEditController; + MUIJavaScriptController *_javaScriptController; + id _generateWebDocumentCompletionHandler; + id _cacheDisplayInRectCompletionHandler; + NSString *_bundleReplyMessageString; + id _bundleReplyMessageData; + NSPort *_bundleMessageReplyPort; +} + ++ (id)newReplyMessageNameForMessageName:(id)arg1; +@property(readonly, nonatomic) NSPort *bundleMessageReplyPort; // @synthesize bundleMessageReplyPort=_bundleMessageReplyPort; +@property(retain, nonatomic) id bundleReplyMessageData; // @synthesize bundleReplyMessageData=_bundleReplyMessageData; +@property(copy, nonatomic) NSString *bundleReplyMessageString; // @synthesize bundleReplyMessageString=_bundleReplyMessageString; +@property(copy, nonatomic) id cacheDisplayInRectCompletionHandler; // @synthesize cacheDisplayInRectCompletionHandler=_cacheDisplayInRectCompletionHandler; +@property(copy, nonatomic) id generateWebDocumentCompletionHandler; // @synthesize generateWebDocumentCompletionHandler=_generateWebDocumentCompletionHandler; +@property(retain, nonatomic) MUIJavaScriptController *javaScriptController; // @synthesize javaScriptController=_javaScriptController; +@property(retain, nonatomic) MUILinkEditWindowController *linkEditController; // @synthesize linkEditController=_linkEditController; +@property(retain, nonatomic) MUIWebFindController *findController; // @synthesize findController=_findController; +@property(retain, nonatomic) MUIContextMenuController *contextMenuController; // @synthesize contextMenuController=_contextMenuController; +@property(nonatomic) BOOL isEditing; // @synthesize isEditing=_isEditing; +@property(nonatomic) BOOL ignoreKVOHTMLChanges; // @synthesize ignoreKVOHTMLChanges=_ignoreKVOHTMLChanges; +@property(retain, nonatomic) NSMapTable *attachmentControllersByAttachment; // @synthesize attachmentControllersByAttachment=_attachmentControllersByAttachment; +@property(retain, nonatomic) MUIWebDocumentViewGroup *viewGroup; // @synthesize viewGroup=_viewGroup; +- (void).cxx_destruct; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)toggleAutomaticListInsertion:(id)arg1; +- (void)editLink:(id)arg1; +- (void)_didReceiveCacheDisplayData:(id)arg1; +- (void)cancelPendingCacheDisplayInRect; +- (void)cacheDisplayInRect:(struct CGRect)arg1 completionHandler:(id)arg2; +- (void)_noteFileSystemChanged:(id)arg1; +- (void)setAttachments:(id)arg1 asHidden:(BOOL)arg2 completionHandler:(id)arg3; +- (void)exportAttachments:(id)arg1 toApplication:(id)arg2; +- (BOOL)canExportAttachments:(id)arg1 toApplication:(id)arg2; +- (id)_imageAttachments; +- (void)saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3; +- (void)_saveAttachment:(id)arg1 toDirectory:(id)arg2 filename:(id)arg3 makePathUnique:(BOOL)arg4; +- (void)saveAttachmentsWithPanel:(id)arg1; +- (void)discardEditing; +- (void)commitEditingWithDelegate:(id)arg1 didCommitSelector:(SEL)arg2 contextInfo:(void *)arg3; +- (BOOL)commitEditing; +- (void)_endEditing; +- (void)_beginEditing; +- (void)_updateRepresentedObjectWithDocumentContents:(id)arg1; +- (void)_completeWebDocumentPasteboardType; +- (void)_didGenerateSelectionWebDocument:(id)arg1; +- (void)generateSelectionWebDocument:(id)arg1; +- (void)_didGenerateStyleInlinedWebDocument:(id)arg1; +- (void)generateStyleInlinedWebDocument:(id)arg1; +- (void)removeAttachment:(id)arg1 completionHandler:(id)arg2; +- (void)_documentSelectionChanged:(id)arg1; +- (void)_documentContentChanged:(id)arg1; +- (id)_stringByRemovingCharactersInSet:(id)arg1 fromString:(id)arg2; +- (void)appendAttributedString:(id)arg1 completionHandler:(id)arg2; +- (void)appendString:(id)arg1 completionHandler:(id)arg2; +- (void)appendAttachment:(id)arg1 completionHandler:(id)arg2; +@property(nonatomic) BOOL editable; +- (BOOL)performDragOperation:(id)arg1; +- (void)_ddExternalUIRequested:(id)arg1; +- (id)sendMessageToWebProcessControllerSynchronously:(id)arg1 messageBody:(id)arg2; +- (void)sendMessageToWebProcessController:(id)arg1 messageBody:(id)arg2; +- (void)receiveMessageFromWebProcessController:(id)arg1 messageBody:(id)arg2 wkObject:(id)arg3; +- (void)_runPendingDocumentInteractionRequests; +- (void)evaluateDocumentInteractionRequest:(id)arg1; +- (void)_didLoadMainFrameTimeout; +- (void)_webProcessDidPaintContent:(id)arg1; +- (void)_webProcessDidLayoutContent:(id)arg1; +- (void)browsingContextControllerDidFinishLoad:(id)arg1; +- (void)_updateDebuggingPreferences; +- (void)_updateFontPreferences; +- (void)_updateImageScaling; +- (void)reloadDocument; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)_fullResolutionDataDidBecomeAvailable:(id)arg1; +- (void)setRepresentedObject:(id)arg1; +- (id)representedObject; +- (void)setView:(id)arg1; +- (id)view; +- (void)loadView; +@property(nonatomic) MUIWebDocumentView *webDocumentView; +- (void)tearDown; +- (void)dealloc; +- (void)_muiWKViewControllerCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)initWithNibName:(id)arg1 bundle:(id)arg2; +@property(nonatomic) BOOL webInspectorEnabled; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebAttachment.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebAttachment.h new file mode 100644 index 00000000..8acc06af --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebAttachment.h @@ -0,0 +1,54 @@ +/* + * 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 "NSCoding.h" +#import "NSPasteboardWriting.h" + +@class NSFileWrapper, NSImage, NSString, NSURL; + +@interface MUIWebAttachment : NSObject +{ + NSString *_mimeType; + NSString *_uti; + NSURL *_fileURL; + NSFileWrapper *_fileWrapper; + NSURL *_cidURL; + NSString *_contentID; + NSURL *_remoteURL; +} + +@property(retain, nonatomic) NSURL *remoteURL; // @synthesize remoteURL=_remoteURL; +@property(copy, nonatomic) NSString *contentID; // @synthesize contentID=_contentID; +@property(retain, nonatomic) NSURL *cidURL; // @synthesize cidURL=_cidURL; +@property(readonly, nonatomic) NSFileWrapper *fileWrapper; // @synthesize fileWrapper=_fileWrapper; +- (void).cxx_destruct; +- (id)pasteboardPropertyListForType:(id)arg1; +- (id)writableTypesForPasteboard:(id)arg1; +@property(readonly, nonatomic) BOOL shouldAlwaysAutomaticallyDownload; +@property(readonly, nonatomic) BOOL isDataDownloaded; +@property(readonly, nonatomic) __weak NSURL *downloadDirectory; +@property(readonly, nonatomic) BOOL isAutoArchiveAttachment; +@property(readonly, nonatomic) NSString *filename; +@property(readonly, nonatomic) NSImage *iconImage; +@property(readonly, nonatomic) unsigned long long fileSize; +@property(readonly, copy, nonatomic) NSString *uti; +@property(readonly, copy, nonatomic) NSString *mimeType; +@property(readonly, nonatomic) NSURL *fileURL; +- (void)encodeWithCoder:(id)arg1; +- (id)initWithCoder:(id)arg1; +- (id)initWithFileWrapper:(id)arg1; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebAttachmentController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebAttachmentController.h new file mode 100644 index 00000000..da7ce300 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebAttachmentController.h @@ -0,0 +1,77 @@ +/* + * 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 "MCCIDURLProtocolDataProvider.h" +#import "QLPreviewItem.h" + +@class MUIWKViewController, MUIWebAttachment, NSData, NSDate, NSImage, NSProgress, NSString, NSURL, _MUIWebAttachmentIconPrintingDataProvider; + +@interface MUIWebAttachmentController : NSObject +{ + unsigned long long _displayState; + BOOL _canBeDisplayedInline; + MUIWebAttachment *_webAttachment; + MUIWKViewController *_controller; + NSString *_markup; + _MUIWebAttachmentIconPrintingDataProvider *_iconPrintingDataProvider; + NSImage *_cachedSnapshot; + long long _downloadedState; + NSURL *_alternateCIDURL; + NSProgress *_downloadProgress; + NSDate *_expiration; + struct CGRect _cachedFrame; + struct CGRect _cachedIconFrame; +} + +@property(retain, nonatomic) NSDate *expiration; // @synthesize expiration=_expiration; +@property(nonatomic) BOOL canBeDisplayedInline; // @synthesize canBeDisplayedInline=_canBeDisplayedInline; +@property(retain, nonatomic) NSProgress *downloadProgress; // @synthesize downloadProgress=_downloadProgress; +@property(retain, nonatomic) NSURL *alternateCIDURL; // @synthesize alternateCIDURL=_alternateCIDURL; +@property(nonatomic) long long downloadedState; // @synthesize downloadedState=_downloadedState; +@property(retain, nonatomic) NSImage *cachedSnapshot; // @synthesize cachedSnapshot=_cachedSnapshot; +@property(retain, nonatomic) _MUIWebAttachmentIconPrintingDataProvider *iconPrintingDataProvider; // @synthesize iconPrintingDataProvider=_iconPrintingDataProvider; +@property(nonatomic) struct CGRect cachedIconFrame; // @synthesize cachedIconFrame=_cachedIconFrame; +@property(nonatomic) struct CGRect cachedFrame; // @synthesize cachedFrame=_cachedFrame; +@property(readonly, nonatomic) NSString *markup; // @synthesize markup=_markup; +@property(nonatomic) __weak MUIWKViewController *controller; // @synthesize controller=_controller; +@property(readonly, nonatomic) MUIWebAttachment *webAttachment; // @synthesize webAttachment=_webAttachment; +- (void).cxx_destruct; +- (void)startDownloadingIfNeededWithProgress:(id)arg1 completionBlock:(id)arg2; +@property(readonly, copy) NSString *mimeType; +@property(readonly) NSURL *cidURL; +@property(readonly, copy) NSData *data; +- (void)setImageScale:(unsigned long long)arg1; +- (struct CGRect)frameForPreview; +- (id)transitionImageForPreview; +@property(readonly) NSString *previewItemTitle; +@property(readonly) NSURL *previewItemURL; +- (id)deletionScriptString; +- (id)creationScriptStringForDropPoint:(struct CGPoint)arg1; +- (id)creationScriptString; +- (id)registrationScriptString; +- (id)_couponAttachmentMarkup:(id)arg1; +- (id)_genericAttachmentMarkup:(id)arg1 downloadedState:(long long)arg2; +- (void)_generateAttachmentMarkup; +- (void)_refreshAttachmentMarkup; +- (BOOL)_displayedInline; +@property(nonatomic) unsigned long long displayState; +- (void)_handleDownloadFinished; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +- (void)dealloc; +- (id)initWithWebAttachment:(id)arg1 controller:(id)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) long long fileSize; +@property(readonly) unsigned long long hash; +@property(readonly) id previewItemDisplayState; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebDocument.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebDocument.h new file mode 100644 index 00000000..f3f5ed49 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebDocument.h @@ -0,0 +1,57 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class MUIRemoteImageCollector, NSArray, NSDictionary, NSError, NSMutableDictionary, NSString, NSURL; + +@interface MUIWebDocument : NSObject +{ + NSString *_html; + NSMutableDictionary *_jsDocumentContext; + BOOL _blockRemoteContent; + BOOL _hasBlockedRemoteContent; + BOOL _isEncrypted; + BOOL _isSigned; + NSArray *_attachments; + Class _webAttachmentClass; + unsigned long long _imageScale; + NSURL *_baseURL; + NSDictionary *_dataDetectorsContext; + NSError *_parseError; + unsigned long long _originalEncoding; + MUIRemoteImageCollector *_remoteImageCollector; + NSArray *_signers; + NSArray *_signerNames; +} + +@property(copy, nonatomic) NSArray *signerNames; // @synthesize signerNames=_signerNames; +@property(copy, nonatomic) NSArray *signers; // @synthesize signers=_signers; +@property(nonatomic) BOOL isSigned; // @synthesize isSigned=_isSigned; +@property(nonatomic) BOOL isEncrypted; // @synthesize isEncrypted=_isEncrypted; +@property(retain, nonatomic) MUIRemoteImageCollector *remoteImageCollector; // @synthesize remoteImageCollector=_remoteImageCollector; +@property(copy, nonatomic) NSString *html; // @synthesize html=_html; +@property(nonatomic) unsigned long long originalEncoding; // @synthesize originalEncoding=_originalEncoding; +@property(nonatomic) BOOL hasBlockedRemoteContent; // @synthesize hasBlockedRemoteContent=_hasBlockedRemoteContent; +@property(nonatomic) BOOL blockRemoteContent; // @synthesize blockRemoteContent=_blockRemoteContent; +@property(retain, nonatomic) NSError *parseError; // @synthesize parseError=_parseError; +@property(copy, nonatomic) NSDictionary *dataDetectorsContext; // @synthesize dataDetectorsContext=_dataDetectorsContext; +@property(retain, nonatomic) NSURL *baseURL; // @synthesize baseURL=_baseURL; +@property(nonatomic) unsigned long long imageScale; // @synthesize imageScale=_imageScale; +@property(nonatomic) Class webAttachmentClass; // @synthesize webAttachmentClass=_webAttachmentClass; +@property(copy, nonatomic) NSArray *attachments; // @synthesize attachments=_attachments; +//- (void).cxx_destruct; +- (id)attachmentForContentID:(id)arg1; +- (id)description; +- (id)_defaultDocumentHTML; +- (void)setValueInJsDocumentContext:(id)arg1 forKey:(id)arg2; +@property(readonly, copy, nonatomic) NSDictionary *jsDocumentContext; +- (id)copyWithZone:(struct _NSZone *)arg1; +- (void)encodeWithCoder:(id)arg1; +- (void)_muiWebDocumentCommonInit; +- (id)initWithCoder:(id)arg1; +- (id)init; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebDocumentView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebDocumentView.h new file mode 100644 index 00000000..a9cd5bae --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebDocumentView.h @@ -0,0 +1,101 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@class MUIWKViewController, MUIWebDocument, MUIWebDocumentViewGroup; + +@interface MUIWebDocumentView : NSView +{ + unsigned long long _loadedState; + struct CGSize _contentSize; + double _preferredMinLayoutWidth; + BOOL _preparingToLayoutSynchronously; + BOOL _supportsAttachments; + NSView *_snapshotView; + MUIWKViewController *_wkViewController; + id _prepareToLayoutSynchronouslyCompletionHandler; + id _delegate; +} + ++ (id)keyPathsForValuesAffectingEditable; ++ (id)keyPathsForValuesAffectingPageZoom; ++ (id)keyPathsForValuesAffectingViewGroup; ++ (id)keyPathsForValuesAffectingWebDocument; ++ (BOOL)requiresConstraintBasedLayout; +@property(nonatomic) BOOL supportsAttachments; // @synthesize supportsAttachments=_supportsAttachments; +@property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; +@property(copy, nonatomic) id prepareToLayoutSynchronouslyCompletionHandler; // @synthesize prepareToLayoutSynchronouslyCompletionHandler=_prepareToLayoutSynchronouslyCompletionHandler; +@property(nonatomic) BOOL preparingToLayoutSynchronously; // @synthesize preparingToLayoutSynchronously=_preparingToLayoutSynchronously; +@property(retain, nonatomic) MUIWKViewController *wkViewController; // @synthesize wkViewController=_wkViewController; +@property(readonly, nonatomic) NSView *snapshotView; // @synthesize snapshotView=_snapshotView; +- (void).cxx_destruct; +- (void)toggleAutomaticListInsertion:(id)arg1; +- (void)showWebInspector:(id)arg1; +- (void)reloadDocument; +- (void)exportAttachmentsToApplication:(id)arg1; +- (BOOL)canExportAttachmentsToApplication:(id)arg1; +- (void)saveAttachments:(id)arg1 toDirectory:(id)arg2 makePathsUnique:(BOOL)arg3; +- (void)saveAttachmentsWithPanel:(id)arg1; +- (void)quickLookAttachments:(id)arg1; +- (id)_attachmentControllersForAttachments:(id)arg1; +- (id)description; +- (BOOL)shouldHandleClickForURL:(id)arg1; +- (void)getSelectedText:(id)arg1; +- (void)selectFindMatch:(id)arg1 completionHandler:(id)arg2; +- (void)findMatchesForString:(id)arg1 relativeToMatch:(id)arg2 findOptions:(unsigned long long)arg3 maxResults:(unsigned long long)arg4 resultCollector:(id)arg5; +- (void)discardEditing; +- (void)commitEditingWithDelegate:(id)arg1 didCommitSelector:(SEL)arg2 contextInfo:(void *)arg3; +- (BOOL)commitEditingAndReturnError:(id *)arg1; +- (BOOL)commitEditing; +- (void)generateSelectionWebDocument:(id)arg1; +- (void)generateStyleInlinedWebDocument:(id)arg1; +- (void)removeAttachment:(id)arg1 completionHandler:(id)arg2; +- (void)appendAttributedString:(id)arg1 completionHandler:(id)arg2; +- (void)appendString:(id)arg1 completionHandler:(id)arg2; +- (void)appendAttachment:(id)arg1 completionHandler:(id)arg2; +- (void)setAttachments:(id)arg1 asHidden:(BOOL)arg2 completionHandler:(id)arg3; +@property(nonatomic) BOOL editable; +- (void)layoutSublayersOfLayer:(id)arg1; +- (void)mui_cancelSynchronousLayout; +- (void)mui_performLayoutSynchronously; +- (void)_readyToLayoutSynchronously; +- (void)mui_prepareToLayoutSynchronously:(id)arg1; +- (void)mui_cancelAnimation; +- (void)mui_performAnimation; +- (void)mui_prepareToAnimate:(id)arg1; +- (void)mui_didCacheDisplayInRect; +- (void)mui_prepareToCacheDisplayInRect:(struct CGRect)arg1 completionHandler:(id)arg2; +- (id)printOperationWithPrintInfo:(id)arg1; +- (void)prepareTilesInRect:(struct CGRect)arg1; +- (id)evaluateJavaScriptSynchronously:(id)arg1; +- (void)evaluateJavaScript:(id)arg1 completionHandler:(id)arg2; +@property(nonatomic) BOOL drawsBackground; +@property(nonatomic) BOOL webInspectorEnabled; +@property(nonatomic) BOOL shouldPaintToBounds; +@property(nonatomic) double pageZoom; +@property(retain, nonatomic) MUIWebDocumentViewGroup *viewGroup; +@property(retain, nonatomic) MUIWebDocument *webDocument; +@property(nonatomic) unsigned long long loadedState; +@property(nonatomic) double preferredMinLayoutWidth; +@property(nonatomic) struct CGSize contentSize; +@property(readonly, nonatomic) __weak NSView *contentView; +- (id)view:(id)arg1 stringForToolTip:(long long)arg2 point:(struct CGPoint)arg3 userData:(void *)arg4; +- (id)supplementalTargetForAction:(SEL)arg1 sender:(id)arg2; +- (struct CGSize)intrinsicContentSize; +- (void)_updatePreferredMinLayoutWidth; +- (void)resizeWithOldSuperviewSize:(struct CGSize)arg1; +- (void)viewDidMoveToSuperview; +- (BOOL)isFlipped; +- (void)dealloc; +- (void)_muiWebDocumentViewCommonInitWithViewGroup:(id)arg1; +- (id)initWithFrame:(struct CGRect)arg1 viewGroup:(id)arg2; +- (id)initWithFrame:(struct CGRect)arg1; +- (id)initWithCoder:(id)arg1 viewGroup:(id)arg2; +- (id)initWithCoder:(id)arg1; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebDocumentViewGroup.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebDocumentViewGroup.h new file mode 100644 index 00000000..d441128a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebDocumentViewGroup.h @@ -0,0 +1,55 @@ +/* + * 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 "WKConnectionDelegate.h" +#import "WKProcessGroupDelegate.h" + +@class NSArray, NSMapTable, NSMutableArray, NSString, WKBrowsingContextGroup; + +@interface MUIWebDocumentViewGroup : NSObject +{ + NSString *_userStyleSheet; + NSArray *_userScripts; + NSString *_processGroupName; + unsigned long long _maxProcessCount; + NSMutableArray *_processGroups; + unsigned long long _processRotator; + WKBrowsingContextGroup *_browsingContextGroup; + NSMapTable *_wkConnectionsByProcessGroup; +} + ++ (id)_defaultUserStyleSheet; +@property(retain, nonatomic) NSMapTable *wkConnectionsByProcessGroup; // @synthesize wkConnectionsByProcessGroup=_wkConnectionsByProcessGroup; +@property(retain, nonatomic) WKBrowsingContextGroup *browsingContextGroup; // @synthesize browsingContextGroup=_browsingContextGroup; +@property(nonatomic) unsigned long long processRotator; // @synthesize processRotator=_processRotator; +@property(retain, nonatomic) NSMutableArray *processGroups; // @synthesize processGroups=_processGroups; +@property(readonly, nonatomic) unsigned long long maxProcessCount; // @synthesize maxProcessCount=_maxProcessCount; +@property(readonly, copy, nonatomic) NSString *processGroupName; // @synthesize processGroupName=_processGroupName; +- (void).cxx_destruct; +@property(copy, nonatomic) NSArray *userScripts; +- (void)_refreshUserScripts; +- (id)_defaultUserScripts; +- (id)effectiveUserStyle; +@property(copy, nonatomic) NSString *userStyleSheet; +- (void)_refreshUserStyleSheet; +- (void)connectionDidClose:(id)arg1; +- (void)connection:(id)arg1 didReceiveMessageWithName:(id)arg2 body:(id)arg3; +- (void)processGroup:(id)arg1 didCreateConnectionToWebProcessPlugIn:(id)arg2; +- (id)processGroup; +- (void)dealloc; +- (id)initWithMaxProcessCount:(unsigned long long)arg1 groupName:(id)arg2; +- (id)init; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebFindController.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebFindController.h new file mode 100644 index 00000000..2fdfc5b1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/MUIWebFindController.h @@ -0,0 +1,67 @@ +/* + * 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 "NSTextFinderClient.h" +#import "NSUserInterfaceValidations.h" + +@class MUIWKViewController, NSArray, NSMutableArray, NSProgress, NSString, NSTextFinder; + +@interface MUIWebFindController : NSObject +{ + MUIWKViewController *_viewController; + NSTextFinder *_textFinder; + BOOL _findIsRequested; + NSString *_currentFindString; + unsigned long long _currentMaxResults; + unsigned long long _currentFindOptions; + NSProgress *_currentProgress; + id _resultCollector; + NSMutableArray *_findStringMatchesCompletionHandlers; + NSMutableArray *_getImageForMatchResultCompletionHandlers; +} + +@property(retain, nonatomic) NSMutableArray *getImageForMatchResultCompletionHandlers; // @synthesize getImageForMatchResultCompletionHandlers=_getImageForMatchResultCompletionHandlers; +@property(retain, nonatomic) NSMutableArray *findStringMatchesCompletionHandlers; // @synthesize findStringMatchesCompletionHandlers=_findStringMatchesCompletionHandlers; +@property(copy, nonatomic) id resultCollector; // @synthesize resultCollector=_resultCollector; +@property(nonatomic) BOOL findIsRequested; // @synthesize findIsRequested=_findIsRequested; +@property(retain, nonatomic) NSProgress *currentProgress; // @synthesize currentProgress=_currentProgress; +@property(nonatomic) unsigned long long currentFindOptions; // @synthesize currentFindOptions=_currentFindOptions; +@property(nonatomic) unsigned long long currentMaxResults; // @synthesize currentMaxResults=_currentMaxResults; +@property(copy, nonatomic) NSString *currentFindString; // @synthesize currentFindString=_currentFindString; +- (void).cxx_destruct; +- (void)generateImageForMatch:(id)arg1 completionHandler:(id)arg2; +- (void)scrollFindMatchToVisible:(id)arg1; +- (void)getSelectedText:(id)arg1; +- (id)documentContainerView; +- (void)selectFindMatch:(id)arg1 completionHandler:(id)arg2; +- (void)_addFindStringMatchesCompletionHandler; +- (void)_beginFind; +- (void)findMatchesForString:(id)arg1 relativeToMatch:(id)arg2 findOptions:(unsigned long long)arg3 maxResults:(unsigned long long)arg4 resultCollector:(id)arg5; +@property(readonly, nonatomic) NSTextFinder *textFinder; +- (void)performTextFinderAction:(id)arg1; +- (BOOL)validateUserInterfaceItem:(id)arg1; +- (void)observeValueForKeyPath:(id)arg1 ofObject:(id)arg2 change:(id)arg3 context:(void *)arg4; +@property(nonatomic) MUIWKViewController *viewController; +- (void)dealloc; +- (struct WKPageFindMatchesClientV0)findMatchesClient; + +// Remaining properties +@property(readonly) BOOL allowsMultipleSelection; +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly, getter=isEditable) BOOL editable; +@property(readonly) struct _NSRange firstSelectedRange; +@property(readonly) unsigned long long hash; +@property(readonly, getter=isSelectable) BOOL selectable; +@property(copy) NSArray *selectedRanges; +@property(readonly) NSString *string; +@property(readonly) Class superclass; +@property(readonly, copy) NSArray *visibleCharacterRanges; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSCoding-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSCoding-Protocol.h new file mode 100644 index 00000000..7bda0254 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSCoding-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCoding +- (id)initWithCoder:(id)arg1; +- (void)encodeWithCoder:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSControlTextEditingDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSControlTextEditingDelegate-Protocol.h new file mode 100644 index 00000000..41d1e729 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSControlTextEditingDelegate-Protocol.h @@ -0,0 +1,20 @@ +/* + * 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" + +@protocol NSControlTextEditingDelegate + +@optional +- (id)control:(id)arg1 textView:(id)arg2 completions:(id)arg3 forPartialWordRange:(struct _NSRange)arg4 indexOfSelectedItem:(long long *)arg5; +- (BOOL)control:(id)arg1 textView:(id)arg2 doCommandBySelector:(SEL)arg3; +- (BOOL)control:(id)arg1 isValidObject:(id)arg2; +- (void)control:(id)arg1 didFailToValidatePartialString:(id)arg2 errorDescription:(id)arg3; +- (BOOL)control:(id)arg1 didFailToFormatString:(id)arg2 errorDescription:(id)arg3; +- (BOOL)control:(id)arg1 textShouldEndEditing:(id)arg2; +- (BOOL)control:(id)arg1 textShouldBeginEditing:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSCopying-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSCopying-Protocol.h new file mode 100644 index 00000000..3275f717 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSCopying-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSCopying +- (id)copyWithZone:(struct _NSZone *)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSDraggingDestination-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSDraggingDestination-Protocol.h new file mode 100644 index 00000000..3197091c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSDraggingDestination-Protocol.h @@ -0,0 +1,22 @@ +/* + * 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" + +@protocol NSDraggingDestination + +@optional +- (void)updateDraggingItemsForDrag:(id)arg1; +- (BOOL)wantsPeriodicDraggingUpdates; +- (void)draggingEnded:(id)arg1; +- (void)concludeDragOperation:(id)arg1; +- (BOOL)performDragOperation:(id)arg1; +- (BOOL)prepareForDragOperation:(id)arg1; +- (void)draggingExited:(id)arg1; +- (unsigned long long)draggingUpdated:(id)arg1; +- (unsigned long long)draggingEntered:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSDraggingSource-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSDraggingSource-Protocol.h new file mode 100644 index 00000000..32c3a388 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSDraggingSource-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@protocol NSDraggingSource +- (unsigned long long)draggingSession:(id)arg1 sourceOperationMaskForDraggingContext:(long long)arg2; + +@optional +- (BOOL)ignoreModifierKeysForDraggingSession:(id)arg1; +- (void)draggingSession:(id)arg1 endedAtPoint:(struct CGPoint)arg2 operation:(unsigned long long)arg3; +- (void)draggingSession:(id)arg1 movedToPoint:(struct CGPoint)arg2; +- (void)draggingSession:(id)arg1 willBeginAtPoint:(struct CGPoint)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSObject-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSObject-Protocol.h new file mode 100644 index 00000000..ebf9f6c2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSObject-Protocol.h @@ -0,0 +1,33 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@class NSString; + +@protocol NSObject +@property(readonly, copy) NSString *description; +@property(readonly) Class superclass; +@property(readonly) unsigned long long hash; +- (struct _NSZone *)zone; +- (unsigned long long)retainCount; +- (id)autorelease; +- (oneway void)release; +- (id)retain; +- (BOOL)respondsToSelector:(SEL)arg1; +- (BOOL)conformsToProtocol:(id)arg1; +- (BOOL)isMemberOfClass:(Class)arg1; +- (BOOL)isKindOfClass:(Class)arg1; +- (BOOL)isProxy; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2 withObject:(id)arg3; +- (id)performSelector:(SEL)arg1 withObject:(id)arg2; +- (id)performSelector:(SEL)arg1; +- (id)self; +- (Class)class; +- (BOOL)isEqual:(id)arg1; + +@optional +@property(readonly, copy) NSString *debugDescription; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSPasteboardWriting-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSPasteboardWriting-Protocol.h new file mode 100644 index 00000000..cc7e4ba2 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSPasteboardWriting-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol NSPasteboardWriting +- (id)pasteboardPropertyListForType:(id)arg1; +- (id)writableTypesForPasteboard:(id)arg1; + +@optional +- (unsigned long long)writingOptionsForType:(id)arg1 pasteboard:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSScrollViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSScrollViewDelegate-Protocol.h new file mode 100644 index 00000000..ab2dfcba --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSScrollViewDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol NSScrollViewDelegate + +@optional +- (id)magnificationInflectionPointsForScrollView:(id)arg1; +- (void)scrollView:(id)arg1 didChangePresentationOrigin:(struct CGPoint)arg2 active:(BOOL)arg3; +- (double)scrollView:(id)arg1 pageAlignedOriginOnAxis:(long long)arg2 forProposedDestination:(double)arg3 currentOrigin:(double)arg4 initialOrigin:(double)arg5 velocity:(double)arg6; +- (void)didEndScrollInScrollView:(id)arg1; +- (void)didScrollInScrollView:(id)arg1; +- (void)didBeginScrollInScrollView:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSSharingServiceDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSSharingServiceDelegate-Protocol.h new file mode 100644 index 00000000..587baede --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSSharingServiceDelegate-Protocol.h @@ -0,0 +1,19 @@ +/* + * 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" + +@protocol NSSharingServiceDelegate + +@optional +- (id)sharingService:(id)arg1 sourceWindowForShareItems:(id)arg2 sharingContentScope:(long long *)arg3; +- (id)sharingService:(id)arg1 transitionImageForShareItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)sharingService:(id)arg1 sourceFrameOnScreenForShareItem:(id)arg2; +- (void)sharingService:(id)arg1 didShareItems:(id)arg2; +- (void)sharingService:(id)arg1 didFailToShareItems:(id)arg2 error:(id)arg3; +- (void)sharingService:(id)arg1 willShareItems:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSSharingServicePickerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSSharingServicePickerDelegate-Protocol.h new file mode 100644 index 00000000..d025542c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSSharingServicePickerDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol NSSharingServicePickerDelegate + +@optional +- (void)sharingServicePicker:(id)arg1 didChooseSharingService:(id)arg2; +- (id)sharingServicePicker:(id)arg1 delegateForSharingService:(id)arg2; +- (id)sharingServicePicker:(id)arg1 sharingServicesForItems:(id)arg2 proposedSharingServices:(id)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTableViewDataSource-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTableViewDataSource-Protocol.h new file mode 100644 index 00000000..84b533d4 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTableViewDataSource-Protocol.h @@ -0,0 +1,25 @@ +/* + * 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" + +@protocol NSTableViewDataSource + +@optional +- (id)tableView:(id)arg1 namesOfPromisedFilesDroppedAtDestination:(id)arg2 forDraggedRowsWithIndexes:(id)arg3; +- (BOOL)tableView:(id)arg1 acceptDrop:(id)arg2 row:(long long)arg3 dropOperation:(unsigned long long)arg4; +- (unsigned long long)tableView:(id)arg1 validateDrop:(id)arg2 proposedRow:(long long)arg3 proposedDropOperation:(unsigned long long)arg4; +- (BOOL)tableView:(id)arg1 writeRowsWithIndexes:(id)arg2 toPasteboard:(id)arg3; +- (void)tableView:(id)arg1 updateDraggingItemsForDrag:(id)arg2; +- (void)tableView:(id)arg1 draggingSession:(id)arg2 endedAtPoint:(struct CGPoint)arg3 operation:(unsigned long long)arg4; +- (void)tableView:(id)arg1 draggingSession:(id)arg2 willBeginAtPoint:(struct CGPoint)arg3 forRowIndexes:(id)arg4; +- (id)tableView:(id)arg1 pasteboardWriterForRow:(long long)arg2; +- (void)tableView:(id)arg1 sortDescriptorsDidChange:(id)arg2; +- (void)tableView:(id)arg1 setObjectValue:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (id)tableView:(id)arg1 objectValueForTableColumn:(id)arg2 row:(long long)arg3; +- (long long)numberOfRowsInTableView:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTableViewDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTableViewDelegate-Protocol.h new file mode 100644 index 00000000..f2f1581f --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTableViewDelegate-Protocol.h @@ -0,0 +1,41 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate.h" + +@protocol NSTableViewDelegate + +@optional +- (void)tableViewSelectionIsChanging:(id)arg1; +- (void)tableViewColumnDidResize:(id)arg1; +- (void)tableViewColumnDidMove:(id)arg1; +- (void)tableViewSelectionDidChange:(id)arg1; +- (BOOL)tableView:(id)arg1 shouldReorderColumn:(long long)arg2 toColumn:(long long)arg3; +- (double)tableView:(id)arg1 sizeToFitWidthOfColumn:(long long)arg2; +- (BOOL)tableView:(id)arg1 isGroupRow:(long long)arg2; +- (BOOL)tableView:(id)arg1 shouldTypeSelectForEvent:(id)arg2 withCurrentSearchString:(id)arg3; +- (long long)tableView:(id)arg1 nextTypeSelectMatchFromRow:(long long)arg2 toRow:(long long)arg3 forString:(id)arg4; +- (id)tableView:(id)arg1 typeSelectStringForTableColumn:(id)arg2 row:(long long)arg3; +- (double)tableView:(id)arg1 heightOfRow:(long long)arg2; +- (void)tableView:(id)arg1 didDragTableColumn:(id)arg2; +- (void)tableView:(id)arg1 didClickTableColumn:(id)arg2; +- (void)tableView:(id)arg1 mouseDownInHeaderOfTableColumn:(id)arg2; +- (BOOL)tableView:(id)arg1 shouldSelectTableColumn:(id)arg2; +- (id)tableView:(id)arg1 selectionIndexesForProposedSelection:(id)arg2; +- (BOOL)tableView:(id)arg1 shouldSelectRow:(long long)arg2; +- (BOOL)selectionShouldChangeInTableView:(id)arg1; +- (id)tableView:(id)arg1 dataCellForTableColumn:(id)arg2 row:(long long)arg3; +- (BOOL)tableView:(id)arg1 shouldTrackCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (BOOL)tableView:(id)arg1 shouldShowCellExpansionForTableColumn:(id)arg2 row:(long long)arg3; +- (id)tableView:(id)arg1 toolTipForCell:(id)arg2 rect:(struct CGRect *)arg3 tableColumn:(id)arg4 row:(long long)arg5 mouseLocation:(struct CGPoint)arg6; +- (BOOL)tableView:(id)arg1 shouldEditTableColumn:(id)arg2 row:(long long)arg3; +- (void)tableView:(id)arg1 willDisplayCell:(id)arg2 forTableColumn:(id)arg3 row:(long long)arg4; +- (void)tableView:(id)arg1 didRemoveRowView:(id)arg2 forRow:(long long)arg3; +- (void)tableView:(id)arg1 didAddRowView:(id)arg2 forRow:(long long)arg3; +- (id)tableView:(id)arg1 rowViewForRow:(long long)arg2; +- (id)tableView:(id)arg1 viewForTableColumn:(id)arg2 row:(long long)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTextFieldDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTextFieldDelegate-Protocol.h new file mode 100644 index 00000000..20d66c6c --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTextFieldDelegate-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSControlTextEditingDelegate.h" + +@protocol NSTextFieldDelegate +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTextFinderAsynchronousDocumentFindMatch-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTextFinderAsynchronousDocumentFindMatch-Protocol.h new file mode 100644 index 00000000..4d0acd63 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTextFinderAsynchronousDocumentFindMatch-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@class NSArray, NSView; + +@protocol NSTextFinderAsynchronousDocumentFindMatch +@property(readonly, retain, nonatomic) NSArray *textRects; +@property(readonly, retain, nonatomic) NSView *containingView; +- (void)generateTextImage:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTextFinderClient-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTextFinderClient-Protocol.h new file mode 100644 index 00000000..03f1d867 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTextFinderClient-Protocol.h @@ -0,0 +1,31 @@ +/* + * 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" + +@class NSArray, NSString; + +@protocol NSTextFinderClient + +@optional +@property(readonly, copy) NSArray *visibleCharacterRanges; +@property(copy) NSArray *selectedRanges; +@property(readonly) struct _NSRange firstSelectedRange; +@property(readonly) NSString *string; +@property(readonly, getter=isEditable) BOOL editable; +@property(readonly) BOOL allowsMultipleSelection; +@property(readonly, getter=isSelectable) BOOL selectable; +- (void)drawCharactersInRange:(struct _NSRange)arg1 forContentView:(id)arg2; +- (id)rectsForCharacterRange:(struct _NSRange)arg1; +- (id)contentViewAtIndex:(unsigned long long)arg1 effectiveCharacterRange:(struct _NSRange *)arg2; +- (void)didReplaceCharacters; +- (void)replaceCharactersInRange:(struct _NSRange)arg1 withString:(id)arg2; +- (BOOL)shouldReplaceCharactersInRanges:(id)arg1 withStrings:(id)arg2; +- (void)scrollRangeToVisible:(struct _NSRange)arg1; +- (unsigned long long)stringLength; +- (id)stringAtIndex:(unsigned long long)arg1 effectiveRange:(struct _NSRange *)arg2 endsWithSearchBoundary:(char *)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTokenFieldDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTokenFieldDelegate-Protocol.h new file mode 100644 index 00000000..eb631e51 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSTokenFieldDelegate-Protocol.h @@ -0,0 +1,23 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSTextFieldDelegate.h" + +@protocol NSTokenFieldDelegate + +@optional +- (unsigned long long)tokenField:(id)arg1 styleForRepresentedObject:(id)arg2; +- (BOOL)tokenField:(id)arg1 hasMenuForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 menuForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 readFromPasteboard:(id)arg2; +- (BOOL)tokenField:(id)arg1 writeRepresentedObjects:(id)arg2 toPasteboard:(id)arg3; +- (id)tokenField:(id)arg1 representedObjectForEditingString:(id)arg2; +- (id)tokenField:(id)arg1 editingStringForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 displayStringForRepresentedObject:(id)arg2; +- (id)tokenField:(id)arg1 shouldAddObjects:(id)arg2 atIndex:(unsigned long long)arg3; +- (id)tokenField:(id)arg1 completionsForSubstring:(id)arg2 indexOfToken:(long long)arg3 indexOfSelectedItem:(long long *)arg4; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSUserInterfaceValidations-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSUserInterfaceValidations-Protocol.h new file mode 100644 index 00000000..31d81e4b --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSUserInterfaceValidations-Protocol.h @@ -0,0 +1,10 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol NSUserInterfaceValidations +- (BOOL)validateUserInterfaceItem:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSView-MUIAdditions.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSView-MUIAdditions.h new file mode 100644 index 00000000..16dcbbf5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSView-MUIAdditions.h @@ -0,0 +1,20 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface NSView (MUIAdditions) +- (void)mui_cancelSynchronousLayout; +- (void)mui_performLayoutSynchronously; +- (void)mui_prepareToLayoutSynchronously:(id)arg1; +- (void)mui_cancelAnimation; +- (void)mui_performAnimation; +- (void)mui_prepareToAnimate:(id)arg1; +- (void)mui_didCacheDisplayInRect; +- (void)mui_prepareToCacheDisplayInRect:(struct CGRect)arg1 completionHandler:(id)arg2; +- (void)mui_cacheDisplayInRect:(struct CGRect)arg1 completionHandler:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSWindowDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSWindowDelegate-Protocol.h new file mode 100644 index 00000000..3ebfdce9 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/NSWindowDelegate-Protocol.h @@ -0,0 +1,64 @@ +/* + * 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" + +@protocol NSWindowDelegate + +@optional +- (void)windowDidChangeOcclusionState:(id)arg1; +- (void)windowDidExitVersionBrowser:(id)arg1; +- (void)windowWillExitVersionBrowser:(id)arg1; +- (void)windowDidEnterVersionBrowser:(id)arg1; +- (void)windowWillEnterVersionBrowser:(id)arg1; +- (void)windowDidExitFullScreen:(id)arg1; +- (void)windowWillExitFullScreen:(id)arg1; +- (void)windowDidEnterFullScreen:(id)arg1; +- (void)windowWillEnterFullScreen:(id)arg1; +- (void)windowDidEndLiveResize:(id)arg1; +- (void)windowWillStartLiveResize:(id)arg1; +- (void)windowDidEndSheet:(id)arg1; +- (void)windowWillBeginSheet:(id)arg1; +- (void)windowDidChangeBackingProperties:(id)arg1; +- (void)windowDidChangeScreenProfile:(id)arg1; +- (void)windowDidChangeScreen:(id)arg1; +- (void)windowDidUpdate:(id)arg1; +- (void)windowDidDeminiaturize:(id)arg1; +- (void)windowDidMiniaturize:(id)arg1; +- (void)windowWillMiniaturize:(id)arg1; +- (void)windowWillClose:(id)arg1; +- (void)windowDidResignMain:(id)arg1; +- (void)windowDidBecomeMain:(id)arg1; +- (void)windowDidResignKey:(id)arg1; +- (void)windowDidBecomeKey:(id)arg1; +- (void)windowDidMove:(id)arg1; +- (void)windowWillMove:(id)arg1; +- (void)windowDidExpose:(id)arg1; +- (void)windowDidResize:(id)arg1; +- (void)window:(id)arg1 didDecodeRestorableState:(id)arg2; +- (void)window:(id)arg1 willEncodeRestorableState:(id)arg2; +- (struct CGSize)window:(id)arg1 willResizeForVersionBrowserWithMaxPreferredSize:(struct CGSize)arg2 maxAllowedSize:(struct CGSize)arg3; +- (void)windowDidFailToExitFullScreen:(id)arg1; +- (void)window:(id)arg1 startCustomAnimationToEnterFullScreenOnScreen:(id)arg2 withDuration:(double)arg3; +- (id)customWindowsToEnterFullScreenForWindow:(id)arg1 onScreen:(id)arg2; +- (void)window:(id)arg1 startCustomAnimationToExitFullScreenWithDuration:(double)arg2; +- (id)customWindowsToExitFullScreenForWindow:(id)arg1; +- (void)windowDidFailToEnterFullScreen:(id)arg1; +- (void)window:(id)arg1 startCustomAnimationToEnterFullScreenWithDuration:(double)arg2; +- (id)customWindowsToEnterFullScreenForWindow:(id)arg1; +- (unsigned long long)window:(id)arg1 willUseFullScreenPresentationOptions:(unsigned long long)arg2; +- (struct CGSize)window:(id)arg1 willUseFullScreenContentSize:(struct CGSize)arg2; +- (BOOL)window:(id)arg1 shouldDragDocumentWithEvent:(id)arg2 from:(struct CGPoint)arg3 withPasteboard:(id)arg4; +- (BOOL)window:(id)arg1 shouldPopUpDocumentPathMenu:(id)arg2; +- (struct CGRect)window:(id)arg1 willPositionSheet:(id)arg2 usingRect:(struct CGRect)arg3; +- (id)windowWillReturnUndoManager:(id)arg1; +- (BOOL)windowShouldZoom:(id)arg1 toFrame:(struct CGRect)arg2; +- (struct CGRect)windowWillUseStandardFrame:(id)arg1 defaultFrame:(struct CGRect)arg2; +- (struct CGSize)windowWillResize:(id)arg1 toSize:(struct CGSize)arg2; +- (id)windowWillReturnFieldEditor:(id)arg1 toObject:(id)arg2; +- (BOOL)windowShouldClose:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLPreviewItem-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLPreviewItem-Protocol.h new file mode 100644 index 00000000..d022fbd3 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLPreviewItem-Protocol.h @@ -0,0 +1,18 @@ +/* + * 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" + +@class NSString, NSURL; + +@protocol QLPreviewItem +@property(readonly) NSURL *previewItemURL; + +@optional +@property(readonly) id previewItemDisplayState; +@property(readonly) NSString *previewItemTitle; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLPreviewPanelDataSource-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLPreviewPanelDataSource-Protocol.h new file mode 100644 index 00000000..3936dbb5 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLPreviewPanelDataSource-Protocol.h @@ -0,0 +1,11 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +@protocol QLPreviewPanelDataSource +- (id)previewPanel:(id)arg1 previewItemAtIndex:(long long)arg2; +- (long long)numberOfPreviewItemsInPreviewPanel:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLPreviewPanelDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLPreviewPanelDelegate-Protocol.h new file mode 100644 index 00000000..343adb3d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLPreviewPanelDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSWindowDelegate.h" + +@protocol QLPreviewPanelDelegate + +@optional +- (id)previewPanel:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (struct CGRect)previewPanel:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (BOOL)previewPanel:(id)arg1 handleEvent:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLSeamlessCloserDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLSeamlessCloserDelegate-Protocol.h new file mode 100644 index 00000000..df89ccaf --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLSeamlessCloserDelegate-Protocol.h @@ -0,0 +1,16 @@ +/* + * 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" + +@protocol QLSeamlessCloserDelegate + +@optional +- (id)seamlessCloserTransitionImageForPreviewItem:(id)arg1 contentRect:(struct CGRect *)arg2; +- (struct CGRect)seamlessCloserSourceFrameOnScreenForPreviewItem:(id)arg1; +- (id)seamlessCloserSourcePreviewViewForPreviewItem:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLSeamlessOpenerDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLSeamlessOpenerDelegate-Protocol.h new file mode 100644 index 00000000..28dd37af --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/QLSeamlessOpenerDelegate-Protocol.h @@ -0,0 +1,24 @@ +/* + * 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" + +@protocol QLSeamlessOpenerDelegate + +@optional +- (id)seamlessOpener:(id)arg1 transientWindowForItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 transientImageAtFrame:(struct CGRect *)arg2 forItem:(id)arg3; +- (void)seamlessOpener:(id)arg1 failedToOpenItems:(id)arg2 withError:(id)arg3; +- (void)seamlessOpener:(id)arg1 openedItem:(id)arg2 seamlessly:(BOOL)arg3; +- (id)seamlessOpenerTransientWindow:(id)arg1 level:(long long *)arg2; +- (int)seamlessOpener:(id)arg1 supportForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3; +- (id)seamlessOpener:(id)arg1 transitionImageForPreviewItem:(id)arg2 contentRect:(struct CGRect *)arg3 windowLevel:(long long *)arg4; +- (struct CGRect)seamlessOpener:(id)arg1 sourceFrameOnScreenForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 sourceBubbleForPreviewItem:(id)arg2; +- (id)seamlessOpener:(id)arg1 sourcePreviewViewForPreviewItem:(id)arg2; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/WKBrowsingContextLoadDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/WKBrowsingContextLoadDelegate-Protocol.h new file mode 100644 index 00000000..e7ed9b3e --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/WKBrowsingContextLoadDelegate-Protocol.h @@ -0,0 +1,24 @@ +/* + * 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" + +@protocol WKBrowsingContextLoadDelegate + +@optional +- (void)browsingContextController:(id)arg1 renderingProgressDidChange:(unsigned long long)arg2; +- (void)browsingContextControllerDidChangeBackForwardList:(id)arg1 addedItem:(id)arg2 removedItems:(id)arg3; +- (void)browsingContextControllerDidFinishProgress:(id)arg1; +- (void)browsingContextController:(id)arg1 estimatedProgressChangedTo:(double)arg2; +- (void)browsingContextControllerDidStartProgress:(id)arg1; +- (void)browsingContextController:(id)arg1 didFailLoadWithError:(id)arg2; +- (void)browsingContextControllerDidFinishLoad:(id)arg1; +- (void)browsingContextControllerDidCommitLoad:(id)arg1; +- (void)browsingContextController:(id)arg1 didFailProvisionalLoadWithError:(id)arg2; +- (void)browsingContextControllerDidReceiveServerRedirectForProvisionalLoad:(id)arg1; +- (void)browsingContextControllerDidStartProvisionalLoad:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/WKConnectionDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/WKConnectionDelegate-Protocol.h new file mode 100644 index 00000000..5e0ec09d --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/WKConnectionDelegate-Protocol.h @@ -0,0 +1,13 @@ +/* + * 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" + +@protocol WKConnectionDelegate +- (void)connectionDidClose:(id)arg1; +- (void)connection:(id)arg1 didReceiveMessageWithName:(id)arg2 body:(id)arg3; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/WKProcessGroupDelegate-Protocol.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/WKProcessGroupDelegate-Protocol.h new file mode 100644 index 00000000..67cba384 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/WKProcessGroupDelegate-Protocol.h @@ -0,0 +1,15 @@ +/* + * 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" + +@protocol WKProcessGroupDelegate +- (void)processGroup:(id)arg1 didCreateConnectionToWebProcessPlugIn:(id)arg2; + +@optional +- (id)processGroupWillCreateConnectionToWebProcessPlugIn:(id)arg1; +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUIAddContactsButton.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUIAddContactsButton.h new file mode 100644 index 00000000..232f95ec --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUIAddContactsButton.h @@ -0,0 +1,16 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSButton.h" + +@interface _MUIAddContactsButton : NSButton +{ +} + +- (BOOL)acceptsFirstResponder; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUIJavaScriptEvaluationRequest.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUIJavaScriptEvaluationRequest.h new file mode 100644 index 00000000..80b274c1 --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUIJavaScriptEvaluationRequest.h @@ -0,0 +1,22 @@ +/* + * 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" + +@class MUIJavaScriptController; + +@interface _MUIJavaScriptEvaluationRequest : NSObject +{ + MUIJavaScriptController *_controller; + id _completionHandler; +} + +@property(copy, nonatomic) id completionHandler; // @synthesize completionHandler=_completionHandler; +@property(retain, nonatomic) MUIJavaScriptController *controller; // @synthesize controller=_controller; +- (void).cxx_destruct; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUISnapshotView.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUISnapshotView.h new file mode 100644 index 00000000..aa15ac1a --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUISnapshotView.h @@ -0,0 +1,17 @@ +/* + * Generated by class-dump 3.4 (64 bit). + * + * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard. + */ + +#import "NSView.h" + +@interface _MUISnapshotView : NSView +{ +} + +- (id)hitTest:(struct CGPoint)arg1; +- (BOOL)isFlipped; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUIWebAttachmentIconPrintingDataProvider.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUIWebAttachmentIconPrintingDataProvider.h new file mode 100644 index 00000000..164f58ee --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUIWebAttachmentIconPrintingDataProvider.h @@ -0,0 +1,36 @@ +/* + * 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 "MCCIDURLProtocolDataProvider.h" + +@class NSData, NSImage, NSString, NSURL; + +@interface _MUIWebAttachmentIconPrintingDataProvider : NSObject +{ + NSImage *_iconImage; + NSURL *_cidURL; + NSURL *_markupCIDURL; +} + +@property(retain, nonatomic) NSURL *markupCIDURL; // @synthesize markupCIDURL=_markupCIDURL; +@property(readonly) NSURL *cidURL; // @synthesize cidURL=_cidURL; +@property(retain) NSImage *iconImage; // @synthesize iconImage=_iconImage; +- (void).cxx_destruct; +@property(readonly, copy) NSData *data; +@property(readonly, copy) NSString *mimeType; +- (id)initWithImage:(id)arg1 baseURL:(id)arg2; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) long long fileSize; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUIWebFindMatch.h b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUIWebFindMatch.h new file mode 100644 index 00000000..760188aa --- /dev/null +++ b/MailHeaders/Yosemite_10.10.2_14C68M/MailUIFW/_MUIWebFindMatch.h @@ -0,0 +1,35 @@ +/* + * 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 "NSTextFinderAsynchronousDocumentFindMatch.h" + +@class MUIWebFindController, NSArray, NSString, NSView; + +@interface _MUIWebFindMatch : NSObject +{ + int _matchIndex; + NSView *_containingView; + NSArray *_textRects; + MUIWebFindController *_findController; +} + +@property(nonatomic) int matchIndex; // @synthesize matchIndex=_matchIndex; +@property(nonatomic) __weak MUIWebFindController *findController; // @synthesize findController=_findController; +@property(retain, nonatomic) NSArray *textRects; // @synthesize textRects=_textRects; +@property(retain, nonatomic) NSView *containingView; // @synthesize containingView=_containingView; +- (void).cxx_destruct; +- (void)generateTextImage:(id)arg1; + +// Remaining properties +@property(readonly, copy) NSString *debugDescription; +@property(readonly, copy) NSString *description; +@property(readonly) unsigned long long hash; +@property(readonly) Class superclass; + +@end + diff --git a/Makefile b/Makefile new file mode 100644 index 00000000..f98ceb6d --- /dev/null +++ b/Makefile @@ -0,0 +1,12 @@ +PROJECT = GPGMail +TARGET = GPGMail +PRODUCT = GPGMail.mailbundle +VPATH = build/Release + +all: $(PRODUCT) + +$(PRODUCT): Source/* Resources/* Resources/*/* GPGMail.xcodeproj + @xcodebuild -project $(PROJECT).xcodeproj -target $(TARGET) build $(XCCONFIG) + +clean: + rm -rf "./build" diff --git a/PGP Partitioned Encoding Format Technote.txt b/PGP Partitioned Encoding Format Technote.txt deleted file mode 100644 index 6d3ea880..00000000 --- a/PGP Partitioned Encoding Format Technote.txt +++ /dev/null @@ -1,525 +0,0 @@ -Ref: - -PGP Partitioned Encoding Format Technote - -Copyright 2004-2005 PGP Corporation -All Rights Reserved - - -Introduction - -"Partitioned Encoding" refers generally to the way PGP software -encrypted email in the days before the PGP/MIME specification. No -equivalent specification exists for messages encoded with PGP software -from that era. Partitioned Encoding is a term given to the evolved form -of this method of encoding. The primary goals of all additions to the -Partitioned Encoding format are backwards compatibility and email client -compatibility. Whereas PGP/MIME represents "correct" Internet standard -behavior resulting in efficient but potentially incompatible behavior, -Partitioned Encoding holds as its only goal the ability for all that -came before to decrypt the format either automatically or manually. This -document describes the general format of such messages and details a -few special cases. - -Although the preferred encoding for new messages is PGP/MIME, Partitioned -Encoding is still in use, and in some scenarios is the most desirable -format. Because all PGP software can decrypt Partitioned Encoding -messages, this format is the best choice when backward compatibility is -important. Partitioned encoding has evolved over the years, the dialect -described here is the format used by current PGP products (PGP Universal). - -One other example where Partitioned Encoding is often the best encoding to -use is when sending PGP email to mobile devices. Because the two primary -standard formats for secure email, PGP/MIME and S/MIME, encrypt the entire -body of an email including attachments as one part, a mobile device is -prevented from downloading only specific segments of the message which -can be very desirable in low-bandwidth scenarios. - - -Partitioned Encoding Overview - -Each MIME part of a message is processed individually resulting in an -encoded MIME message much like the original but with encrypted/signed -content. The overall structure of a message is generally retained. A -text message with three attachments encrypts to an encrypted text message -with three encrypted attachments. An email follows Partitioned Encoding -via the following algorithm: - -For every MIME part in a message, starting with the first: - If the part is a multipart container: - recursively encode the sub-parts. - For all other part types> - If the part is text/plain - encrypt/sign the part. - If the part is binary or a text type other than plain: - encrypt/sign the part as an attachment - when encrypting, headers are X- prefixed to prevent mail clients from interpreting them - when clear signing, corresponding .sig attachments are created - -Each of these steps is further described below, with examples. For sake -of simplicity, not shown above is the special handling for the "Outlook -Plugin" dialect of Partitioned Encoding. This format is covered in a -separate section, below. - -Example 1 shows a simple RFC-822 message and the resulting messages -after signing and encrypting. The straight-forward method used to encode -the email should be apparent. In both instances, the message content is -replaced by the PGP SDK output. - - -Example 1. A simple message - -> To: dcokenias@xxxxxxx -> From: Damon Cokenias -> Subject: Simple Message -> Date: Mon, 1 Nov 2004 16:21:00 -0800 -> -> Soylent Green is PEOPLE! - - -Signed - -> To: dcokenias@xxxxxxxxxxx -> From: Damon Cokenias -> Subject: Simple Message -> Date: Mon, 1 Nov 2004 16:21:00 -0800 -> -> -----BEGIN PGP SIGNED MESSAGE----- -> Hash: SHA1 -> -> Soylent Green is PEOPLE! -> -> -----BEGIN PGP SIGNATURE----- -> Version: PGP Universal 1.2.2 -> -> iQA/AwUBQYwc3wNUXR15SGMCEQJQfACfYFtobpQgt7/U2FTsHyiLOVQB6tgAni3T -> +Es5k0Bz4RGryRpM7CqxLqnw -> =LC7J -> -----END PGP SIGNATURE----- - - -Signed and Encrypted - -> To: dcokenias@xxxxxxx -> From: Damon Cokenias -> Subject: Simple Message -> Date: Mon, 1 Nov 2004 16:21:00 -0800 -> -> -----BEGIN PGP MESSAGE----- -> Version: PGP Universal 1.2.2 -> -> qANQR1DBwU4DjrZ+IglRIpQQB/4gPDVMliQnlJDeQmCiYe1iP56nZ476z0MB9vbI -> OP3z0lypOxJ871vh2EXf3EGITSkay+KdEY2CpSV2alqiBf21S5GS0llZ61IvDGo1 -> gDyGiNGBkfNazAyNGYAYYkvNvjamPLmHfyqZqHEfCDDhqiIfXEIykUMImrFEHMsH -> UIvc1aPKxoaFsmzsSinIRYYSOZ/Gx29xXhrJhxJMXaSsnMp2Np/cOqcH6gK8wDrN -> FuurFRnW+up/O9iAw2moeOUqR2DocvRI7MJMkxArLCaGJL2zUxpIzRtedYlI8lRu -> ZE5ROP2rdinDnNf4JoI+2TMigA1R8GZiEKNcWIko+dQlMBqdB/4nghxYYW/PMm/B -> K47yrAqza8GxQEtzGDaOTsDioiH7bQThGG5qlna7odUTY4elHjNiT0qCHg0FCGZN -> iE+uIMBOBFFmZFzDOnmMtp9vuPLmI1+YpaHDfbwX3tQV3hdj2RFC2ofHB5Eh5Mzm -> 9T+5QPV9iUQDcDkus0/+3P/TPmtvAL/QB5WPUuNX7piZbsp7pvQn9BvT2i/ulZDn -> wPSoREhllnRjs3aTg5XrWkHFQ8I3QFfFhIVam9jHITwlAGkMmV7oK4flllAyK4Ui -> vJ+PsCVejuC1ZmSBbb97sw26+jSvr+PLO5ftvAi0FFb6Q2Dx1nYaE9UbAHX9JbC2 -> 0qneMzIS0lYBjO7LVgoBDD4ayRqwAuu3RXqAzm02/JSpsIbD5Gr3bcLdvdKVCrCT -> IsCV2QEMYx4wiy3HjarYEO+z5Pztwcdx7PiTF8GAvMyfhmVxBpdqROM+Y6Jx0w== -> =JZf0 -> -----END PGP MESSAGE----- - - - -The second example, below, is more complex, showing a multipart message -composed of a text part and two binary attachments. Each MIME part -in the message is signed/encrypted separately. The text portion is -signed/encrypted exactly as in the first example. The binary attachments -get special treatment, however. - -Signing/Encrypting Binary Parts - -If the binary attachment being signed/encrypted does not have a filename, -it is given one. The attachment's name is "Attachment" + a number + -an extension. The number is a simple counter, starting at one, used to -ensure uniqueness. The extension is a three letter code inferred from -the part's MIME type. An anonymous binary attachment with Content-Type -of image/jpeg might be named "Attachment1.jpg", for example. - -When a binary part is encrypted, the part's file name is hidden in -the encrypted data. The publicly-viewable name of an encrypted binary -part is always a generic name. Encrypted binary have a MIME type of -application/octet-stream. An encrypted part's headers are prefixed with -"X-Content-PGP-Universal-Saved-" to prevent them from being interpreted -by mail clients. When the part is decrypted, the process is reversed -and the original headers are reunited with the content. PGP products -before PGP Universal do not preserve these headers, but also generally -required manual opening of the attachments to decrypt them and thus no -functionality is lost for those scenarios. - -When a binary part is clear-signed, a new attachment is created -to hold the signature. The MIME type of this attachment is -application/octet-stream. The signature attachment has the same name -as the signed part with ".sig" appended. These "detached signatures" -are base64 encoded. - - - - - -Example 2. A more complex message - -> Mime-Version: 1.0 -> To: dcokenias@xxxxxxx -> Content-Type: multipart/mixed; -> boundary="BOUNDARY-0000-1234" -> From: Damon Cokenias -> Subject: New Products -> Date: Mon, 1 Nov 2004 16:01:00 -0700 -> -> --BOUNDARY-0000-1234 -> Content-Transfer-Encoding: 7bit -> Content-Type: text/plain; -> charset=US-ASCII -> -> All, -> -> Marketing materials for our new product line are enclosed. Please have -> feedback ready by Thursday lunch! -> -> --BOUNDARY-0000-1234 -> Content-Transfer-Encoding: base64 -> Content-Type: image/gif; -> x-unix-mode=0644; -> name="soylent-beige.gif" -> Content-Disposition: inline; -> filename=soylent-beige.gif -> -> R0lGODlhDgAZAOZ9AF6pzm2x02yx02Ks0GOs0Gqw0kadx7LW6HCz1HS11Weu0dvs9EGaxrTX6dLn -> 8ValzFmnzVemzE6hylimzXe31kedx12pzk+hykufyW+y01Kjy0ygydTo8t3t9XK01FSky9jq83G0 -> 1InA23i31luozkmeyGiv0czk8KTP5NDm8VqnzXO11fb6/PX6/HK01aDM4vL4+8Le7I7D3UugyaPO -> -> . . . (cut) . . . -> -> a40HBBk0LIYtewYMTllgQxU+hCIXGAZwT1JBfHZkgwMfZhtbQHNpOEU8gxYQL18bXDo9Am1hxgBe -> Dz9JJXUIUTuDCgRWVw8aEkwJDCmDAiYHRiQRchcUBkeDlgRoIKYLngkflMxwMIhDDgcFmoiYdscN -> mkJVMhQgMgAAog4JENhQ93HEFCH2EIEIMOJMiACIOKgoACWOB0Q1KkSQwYYCojF5UMRooKZRo0AA -> Ow== -> -> --BOUNDARY-0000-1234 -> Content-Transfer-Encoding: base64 -> Content-Type: image/gif; -> x-unix-mode=0644; -> name="soylent-taupe.gif" -> Content-Disposition: inline; -> filename=soylent-taupe.gif -> -> R0lGODlhDgAZAOZ9AF6pzm2x02yx02Ks0GOs0Gqw0kadx7LW6HCz1HS11Weu0dvs9EGaxrTX6dLn -> 8ValzFmnzVemzE6hylimzXe31kedx12pzk+hykufyW+y01Kjy0ygydTo8t3t9XK01FSky9jq83G0 -> 1InA23i31luozkmeyGiv0czk8KTP5NDm8VqnzXO11fb6/PX6/HK01aDM4vL4+8Le7I7D3UugyaPO -> -> . . . (cut) . . . -> -> a40HBBk0LIYtewYMTllgQxU+hCIXGAZwT1JBfHZkgwMfZhtbQHNpOEU8gxYQL18bXDo9Am1hxgBe -> Dz9JJXUIUTuDCgRWVw8aEkwJDCmDAiYHRiQRchcUBkeDlgRoIKYLngkflMxwMIhDDgcFmoiYdscN -> mkJVMhQgMgAAog4JENhQ93HEFCH2EIEIMOJMiACIOKgoACWOB0Q1KkSQwYYCojF5UMRooKZRo0AA -> Ow== -> -> --BOUNDARY-0000-1234-- - - -Signed - -> Mime-Version: 1.0 -> To: dcokenias@xxxxxxx -> Content-Type: multipart/mixed; -> boundary="BOUNDARY-0000-1234" -> From: Damon Cokenias -> Subject: New Products -> Date: Mon, 1 Nov 2004 16:01:00 -0700 -> -> --BOUNDARY-0000-1234 -> Content-Transfer-Encoding: 7bit -> Content-Type: text/plain; -> charset=US-ASCII -> -> -----BEGIN PGP SIGNED MESSAGE----- -> Hash: SHA1 -> -> All, -> -> Marketing materials for our new product line are enclosed. Please have -> feedback ready by Thursday lunch! -> -> -----BEGIN PGP SIGNATURE----- -> Version: PGP Universal 1.2.2 -> -> iQA/AwUBQZEXQmMQlGdKg9VZEQLl6QCgwFM2xtYzN0mJWcK9eYkU0ejiUqsAoOr6esBx8e1X -> mGBERfNK9ff0adY7 -> -----END PGP SIGNATURE----- -> -> --BOUNDARY-0000-1234 -> Content-Transfer-Encoding: base64 -> Content-Type: image/gif; -> x-unix-mode=0644; -> name="soylent-beige.gif" -> Content-Disposition: attachment; -> filename=soylent-beige.gif -> -> R0lGODlhDgAZAOZ9AF6pzm2x02yx02Ks0GOs0Gqw0kadx7LW6HCz1HS11Weu0dvs9EGaxrTX6dLn -> 8ValzFmnzVemzE6hylimzXe31kedx12pzk+hykufyW+y01Kjy0ygydTo8t3t9XK01FSky9jq83G0 -> 1InA23i31luozkmeyGiv0czk8KTP5NDm8VqnzXO11fb6/PX6/HK01aDM4vL4+8Le7I7D3UugyaPO -> -> . . . (cut) . . . -> -> a40HBBk0LIYtewYMTllgQxU+hCIXGAZwT1JBfHZkgwMfZhtbQHNpOEU8gxYQL18bXDo9Am1hxgBe -> Dz9JJXUIUTuDCgRWVw8aEkwJDCmDAiYHRiQRchcUBkeDlgRoIKYLngkflMxwMIhDDgcFmoiYdscN -> mkJVMhQgMgAAog4JENhQ93HEFCH2EIEIMOJMiACIOKgoACWOB0Q1KkSQwYYCojF5UMRooKZRo0AA -> Ow== -> -> --BOUNDARY-0000-1234 -> Content-Transfer-Encoding: base64 -> Content-Type: image/gif; -> x-unix-mode=0644; -> name="soylent-taupe.gif" -> Content-Disposition: attachment; -> filename=soylent-taupe.gif -> -> R0lGODlhDgAZAOZ9AF6pzm2x02yx02Ks0GOs0Gqw0kadx7LW6HCz1HS11Weu0dvs9EGaxrTX6dLn -> 8ValzFmnzVemzE6hylimzXe31kedx12pzk+hykufyW+y01Kjy0ygydTo8t3t9XK01FSky9jq83G0 -> -> . . . (cut) . . . -> -> Dz9JJXUIUTuDCgRWVw8aEkwJDCmDAiYHRiQRchcUBkeDlgRoIKYLngkflMxwMIhDDgcFmoiYdscN -> mkJVMhQgMgAAog4JENhQ93HEFCH2EIEIMOJMiACIOKgoACWOB0Q1KkSQwYYCojF5UMRooKZRo0AA -> Ow== -> -> --BOUNDARY-0000-1234 -> Content-Type: application/octet-stream; -> name="soylent-beige.gif.sig" -> Content-Disposition: attachment; -> filename="soylent-beige.gif.sig" -> Content-Transfer-Encoding: base64 -> -> iQA/AwUAQZEXQmMQlGdKg9VZEQKnbgCg5dMjmJEnqAHpUrCKP/Xu8pB8JCgAn2shn2AKp913 -> HAJt+LwN0AdtSDn3 -> --BOUNDARY-0000-1234 -> Content-Type: application/octet-stream; -> name="soylent-taupe.gif.sig" -> Content-Disposition: attachment; -> filename="soylent-taupe.gif.sig" -> Content-Transfer-Encoding: base64 -> -> iQA/AwUAQZEXQmMQlGdKg9VZEQKnbgCg5BusKlATEhfNiRbGhSlrUYlbPg4AnRLoX03Vo48H -> NoWukVfqSGyiQFV+ -> --BOUNDARY-0000-1234-- - - -Signed and Encrypted - -> Mime-Version: 1.0 -> To: dcokenias@xxxxxxx -> Content-Type: multipart/mixed; -> boundary="BOUNDARY-0000-1234" -> From: Damon Cokenias -> Subject: New Products -> Date: Mon, 1 Nov 2004 16:01:00 -0700 -> -> --BOUNDARY-0000-1234 -> Content-Transfer-Encoding: 7bit -> Content-Type: text/plain; -> charset=US-ASCII -> -> -----BEGIN PGP MESSAGE----- -> Version: 0 -> -> qANQR1DBwEwD42FWyEinTuQBB/wKGj60HNiMWCFZckprmNCIFSkfD0ZpRyYg0L65 -> bbydP5KnPo266C5CEy4T11E2Xp11tMh6WjvRqalV8FDONpFLhV89k2JvX+rQ6W+o -> nbd5cW5XiflO2+5t/IlMdzSrdpr2Wn9GgZss0T/5FA7E1ayj2SNjffIVfKuXHDEk -> -> . . . (cut) . . . -> -> Td3A+VZ7VWkJPQKruA+IMnShEUsaFcfVSkpylSzwrcL1g5M7We1LGHgtGXT/ejJ0 -> H3FeNtDw97dsmcc9oNFOHqwvQPt+h5dQfi3fGsT8Lw45VAePRjezZOn1zfVlf3Rc -> idkUaO2aW9A= -> =RqCL -> -----END PGP MESSAGE----- -> -> --BOUNDARY-0000-1234 -> X-Content-PGP-Universal-Saved-Content-Disposition: inline; -> filename="Attachment1.pgp" -> X-Content-PGP-Universal-Saved-Content-Type: image/gif; -> x-unix-mode=0644; -> name="Attachment1.pgp" -> X-Content-PGP-Universal-Saved-Content-Transfer-Encoding: base64 -> Content-Type: application/octet-stream; -> name="Attachment1.pgp" -> Content-Disposition: attachment; -> filename="Attachment1.pgp" -> -> -----BEGIN PGP MESSAGE----- -> Version: 0 -> -> qANQR1DBwEwD42FWyEinTuQBB/9yRpLW7rIulg2VxJTZps+MghHEaBptaYfA24Rf -> RvGv0y0xQDEpFYB5BY4BBbgUK+124K4c4ulaMGRMqsbqwTtzedUvqzuWEIqLdrhE -> 437c3hev2b3MiG/gVLz07O9S0FgZ1GxzTywWiCJSNIO1pKSRXN1BwDD2Yy7MLh9m -> 4uxYZzMMr0QTonzf1RoDCWm0tPL8n2sSR4D96yw+c0+FaFmPUEWtdHl43D1n752Y -> -> . . . (cut) . . . -> -> 1p5271ir9IBuQnHGd9azBhAxV+MndAcwhW006FF0H2Aw1DUWwJGA8ebXyVs8/Lp+ -> nQYVAc88tl6seKo3dPCMGlTaBbVbmSHoqJadhqf6zl5+6nnFAlT31UmPlfOz -> =h4y5 -> -----END PGP MESSAGE----- -> -> --BOUNDARY-0000-1234 -> X-Content-PGP-Universal-Saved-Content-Disposition: inline; -> filename="Attachment2.pgp" -> X-Content-PGP-Universal-Saved-Content-Type: image/gif; -> x-unix-mode=0644; -> name="Attachment2.pgp" -> X-Content-PGP-Universal-Saved-Content-Transfer-Encoding: base64 -> Content-Type: application/octet-stream; -> name="Attachment2.pgp" -> Content-Disposition: attachment; -> filename="Attachment2.pgp" -> -> -----BEGIN PGP MESSAGE----- -> Version: 0 -> -> qANQR1DBwEwD42FWyEinTuQBB/0bA0TCswweIaDGLJXpTsrlMpEhCmNjGh53qeek -> /4r1XEwYPRVho/lUAaxtDNJ3mcAXekdlLxAtxdDRpypdRUz7yjPtcEB7P9wN8uWf -> 7AylCYd7ABvFmerenRZZ7Bc9TjHJWxnuoUWDsKlfeaOxqNgeiSZY4Q20HY0YZnTI -> -> . . . (cut) . . . -> -> D0urDVE2fFlpxjLPrPBrKf7wbo1+3ZUHjOgeElQTgChMOF5SgizEJlk2OLZoq/IO -> Ktu7v7jcQGPsKEyOC0Dzzhn33AeB06cU1sJV7gha6vrn0qfIXZQmGk3mzf4= -> =N7Wi -> -----END PGP MESSAGE----- -> -> --BOUNDARY-0000-1234-- - - - - - - -HTML and RTF Encoding - - -PGP messages created by the PGP Plugin for Outlook (Windows) originally -defined a special attachment for storing HTML and RTF content for -compatibility purposes. PGP Universal has adopted this same formatting -for all HTML and RTF messages when using Partitioned Encoding. These -messages are readily identified by the presence of an attachment -called "PGPexch.htm.pgp", "PGPexch.htm.asc", "PGPexch.rtf.pgp" or -"PGPexch.rtf.asc". The attachment contains the encrypted RTF or HTML -portion of a multipart/alternative message. - -This encoding should be used when signing/encrypting a -multipart/alternative message composed of exactly one plain text part and -one HTML part. Doing so ensures maximum compatibility for Windows users -with older PGP software. A multipart/alternative part with plain/html -subparts will become a multipart/mixed with an encrypted plain subpart -and an encrypted HTML attachment. A special header ("X-PGP-MIME-Structure: -alternative") is added to indicate this transformation was performed. This -header is not required for proper decoding. - -When decrypting such messages, the "PGPexch.htm.pgp" or "PGPexch.htm.asc" -attachment will become the HTML alternative for the main body -text. Because RTF is not used for Internet mail, do not make RTF -attachments part of the message body. The RTF should be decrypted, but -should remain an attachment. The RTF attachment is useful only to Outlook. - - - - - -Example 3. A multipart/alternative message with html and text parts - -> Mime-Version: 1.0 -> To: dcokenias@xxxxxxx -> From: Damon Cokenias -> Subject: Outlook Encoding -> Date: Mon, 1 Nov 2004 16:21:00 -0800 -> Content-Type: multipart/alternative; -> boundary="BOUNDARY-0000-1234" -> -> This is a multipart message in MIME format. -> -> --BOUNDARY-0000-1234 -> Content-Type: text/plain -> -> Soylent Green is PEOPLE! -> -> --BOUNDARY-0000-1234 -> Content-Type: text/html; -> charset=US-ASCII -> -> -> Soylent Green is PEOPLE! -> -> -> --BOUNDARY-0000-1234-- - - -Signed and Encrypted - -> Mime-Version: 1.0 -> To: dcokenias@xxxxxxx -> From: Damon Cokenias -> Subject: Outlook Encoding -> Date: Mon, 1 Nov 2004 16:21:00 -0800 -> Content-Type: multipart/mixed; -> boundary="BOUNDARY-0000-1234" -> -> This is a multipart message in MIME format. -> -> --BOUNDARY-0000-1234 -> Content-Type: text/plain; -> charset="us-ascii" -> Content-Transfer-Encoding: 7bit -> -> -----BEGIN PGP MESSAGE----- -> Version: 0 -> -> qANQR1DBwEwD42FWyEinTuQBB/9KEBufHfz139ZuQCBushTxOenNzF5QzgqLkfTB -> h1a6y9XOfp1lox0Unx2s0cDcD1Vq2Ca/1kJvpYuPdnKyhwHSUZK9sE1RMSLM9sj/ -> ng1FMHemyNb5NN+8T5jYFEE8KQlrNwpJfHXTgOkmeBrH749I2oHV/yhezYI9YqKI -> -> . . . (cut) . . . -> -> yIbvwHvS6HJeLjUylmRX+hplo2k/31JVg4b52z9Od3XEPptMYpvEKkpJUve6b3P2 -> uLdxaT3vKep15UcdqitsbVVISxr6XZ+DZq4NKkrR73tt4eLhQlTWgZoYgac6QLuM -> Cg== -> =NOiI -> -----END PGP MESSAGE----- -> -> --BOUNDARY-0000-1234 -> X-Content-PGP-Universal-Saved-Content-Type: text/html; -> charset=US-ASCII -> Content-Type: application/octet-stream; -> name="PGPexch.htm.pgp" -> Content-Disposition: attachment -> X-PGP-MIME-Structure: alternative -> -> -----BEGIN PGP MESSAGE----- -> Version: 0 -> -> qANQR1DBwEwD42FWyEinTuQBB/467rWcjfuimgRk44ifIqog/CpjSlitDbv/T+Kr -> JZqgEBP5CxwiO8G/Bgf2PpYOz2iiTDRycfFgwOktmkBvAYSatipSCwAWJ/UPcXXA -> uqQEnKyq+tZIibE9fDrbzObvgIHbe2M7HofiobQ0UAVb3/KaQphRM2sJ0ATotIbp -> -> . . . (cut) . . . -> -> TjQiuNqJfYlyWUrPUg7dTeSdSOnIm/zqLVQxm/+NB9SWaY+G3eqqBg6M/ytNaUwd -> jjBHOHh+6wPfkegmWP/8wxI58n6SV9d5OQ== -> =aD+v -> -----END PGP MESSAGE----- -> -> --BOUNDARY-0000-1234-- - - - - - -References - -RFC 2440 OpenPGP Message Format -RFC 3156 MIME Security with Pretty Good Privacy diff --git a/README.markdown b/README.markdown deleted file mode 100644 index 9f579ce4..00000000 --- a/README.markdown +++ /dev/null @@ -1,13 +0,0 @@ -# GPGMail - -This is the source code for the GPG plugin for OS X's Mail.app. - -The latest version of the plugin can be found in the downloads section at [http://github.com/gpgmail/GPGMail/downloads](http://github.com/gpgmail/GPGMail/downloads). - -The project is currently in a heavy state of development. For the latest news and updates check out the web site [http://gpgmail.org](http://gpgmail.org) and the mailing lists at - -* [http://lists.gpgmail.org/mailman/listinfo/gpgmail-announce](http://lists.gpgmail.org/mailman/listinfo/gpgmail-announce) -* [http://lists.gpgmail.org/mailman/listinfo/gpgmail-users](http://lists.gpgmail.org/mailman/listinfo/gpgmail-users) -* [http://lists.gpgmail.org/mailman/listinfo/gpgmail-devel](http://lists.gpgmail.org/mailman/listinfo/gpgmail-devel) - -For instructions on how to build the code and further information have a look at the wiki: [http://wiki.github.com/gpgmail/GPGMail/](http://wiki.github.com/gpgmail/GPGMail/). diff --git a/README.md b/README.md new file mode 100644 index 00000000..70a42f90 --- /dev/null +++ b/README.md @@ -0,0 +1,66 @@ +GPGMail +======= + +GPGMail is a plugin for OS X's Mail.app, which let's you +send and receive secure, OpenPGP encrypted and signed messages. + +Important +------- + +GPGMail currently doesn't support macOS Sierra (10.12). We're actively working on it. +Follow us on [Twitter](https://twitter.com/gpgtools) for updates. + +Updates +------- + +The latest releases of GPGMail can be found on our [official website](https://gpgtools.org/). + +For the latest news and updates check our [Twitter](https://twitter.com/gpgtools). + +Visit our [support page](https://gpgtools.tenderapp.com) if you have questions or need help setting up your system and using GPGMail. + +Localizations are done on [Transifex](https://www.transifex.com/projects/p/GPGMail/). + +Prerequisite +------------ + +In order to use GPGMail you need to have GnuPG installed. +You can either build your own version, use one from [homebrew](http://brew.sh) or find a packaged version for OS X at [gpgtools.org](https://gpgtools.org) + +Build +----- + +#### Clone the repository +```bash +git clone https://github.com/GPGTools/GPGMail.git +cd GPGMail +``` + +#### Grab Dependencies + +In order to communicate with GnuPG we use our own Objective-C framework called [Libmacgpg](https://github.com/GPGTools/Libmacgpg). +It's necessary to clone the Libmacgpg repository first, before building GPGMail. + +```bash +cd Dependencies +git clone https://github.com/GPGTools/Libmacgpg.git +cd .. +``` + +#### Build +```bash +make +``` + +#### Install +Copy Libmacgpg.framework from Dependencies/Libmacgpg/build/Release/ to ~/Library/Frameworks. + +After that copy the GPGMail.mailbundle file from build/Releases/GPGMail.mailbundle to ~/Libray/Mail/Bundles, re-start Mail.app and enjoy. + + +System Requirements +------------------- + +* Mac OS X >= 10.9 (macOS Sierra is not yet supported!) +* Libmacgpg +* GnuPG diff --git a/Release Notes/2.0.3.md b/Release Notes/2.0.3.md new file mode 100644 index 00000000..1fc3b47c --- /dev/null +++ b/Release Notes/2.0.3.md @@ -0,0 +1,10 @@ +GPGMail v2.0.3 - Release Notes +======================================== + +Bugfixes +-------- + +* Certificate for recipients missing error. [#660 state:fixed] +* By default encrypt drafts. +* Further improve signed & encrypted rule applier. [#645 state:fixed] +* Key changes don't always update the settings in composing windows. [#663 state:fixed] diff --git a/Release Notes/2.0.md b/Release Notes/2.0.md new file mode 100644 index 00000000..3a8a9cb3 --- /dev/null +++ b/Release Notes/2.0.md @@ -0,0 +1,63 @@ +GPGMail v2.0 - Release Notes +============================ + +Features +-------- + +### Compatible with Mountain Lion 10.8 and Lion 10.7. + + +### Added a tool which automatically adds new OS X UUIDs if necessary. + + +### Update GPGMail to use the new and vastly improved Libmacgpg. + + +### Enable sign by default + + +### Keyboard shortcuts to toggle sign/encrypt. + +* Shortcuts are ⌘⌥Y for encrypt and ⌘⌥X for sign. + + +### Support different version types for updates. + +* Available version types: releases, pre-releases (alpha, beta), nightly development builds + + +### Support seamless switching between S/MIME and OpenPGP + +* Modified the security method indicator to allow to switch between S/MIME and OpenPGP +* Added background colors for sign & encrypt off (grey) and on (green). + + +### Adds the possibility to enable and disable list preview snippets. + +* Adds preference to enable and disable preview snippets. +* Create preview snippets if the option is not set, but passphrase is already cached. +* Introduces advanced defaults NeverCreatePreviewSnippets option to completely disable the creation, even if passphrase is already cached. + + +Bugfixes +-------- + +* Properly update keys if changes come in. +* If only one account is configured in Mail.app don't force the From: dropdown to be shown unless there are multiple gpg keys available for that account. [#642] +* Always prefer the security method used by the original message if keys for both options are available. +* Correctly show the error dialog instead of the signature panel if a key is not in the keychain. +* Add UUIDs for 10.8.5 dev releases. +* Converting GPGMail to use ARC. This is the reaaal shiiit! +* Fallback to english strings if no localized version is available instead of displaying the key. +* Display proper error message for too many bad passphrase attempts. +* Use public key of selected signing key for encrypt-to-self. +* Remove nasty sender automatically in BCC bug. +* Fullscreen: OpenPGP drop down sometimes on the left. +* Event invitations automatically sent from iCal are never encrypted nor signed. +* ::gpgmail-start-pgp-part:: sometimes not replaced. +* Default security method is now automatically set, based on the availability of keys. +* Mail preferences sometimes too slim. +* FlippedView message is no longer shown in Console. +* Version string is cutted in preferences. +* Correctly work with multiple secret keys for the same address. +* User choice for encrypt/sign status always sticks now. \ No newline at end of file diff --git a/Release Notes/2.0b6.md b/Release Notes/2.0b6.md new file mode 100644 index 00000000..e377dacd --- /dev/null +++ b/Release Notes/2.0b6.md @@ -0,0 +1,73 @@ +GPGMail v2.0b6 - Release Notes +============================== + +Features +-------- + +### Full support for OS X Mountain Lion. + +* Finally, the sandboxing issues are resolved and this version is + completely compatible with OS X Mountain Lion. + +### Added Sparkle update support on Mountain Lion + +* You'll be seeing an alert from within Mail.app if a new version of GPGMail + is available. +* You can choose between different types of releases: + - nightly: each development build will appear as an update + - pre-release: alpha and beta builds will appear as an update + - stable: only stable builds will appear as an update + (requires upcoming GPGPreferences) + +### Proper error handling of encryption or signing failures. + +* Each error message you'll see includes some hint on how to fix it. +* If GPGMail can't handle an error, you'll see some detailed information from + the underlying gnupg engine, which you can post on our support forum. + That will help us to find a solution much quicker. + +### Defaults, gpg.conf and gpg-agent.conf are now parsed again on Mountain Lion + +* Previously the OS X sandbox didn't allow GPGMail to access the config files. +* Config files are saved outside of the sandbox as they were on Lion. + +### Support seamless switching between S/MIME and OpenPGP + +* The security indicator on the upper right side of the composer window + allows you to choose between using OpenPGP or S/MIME. +* We've added handy shortcuts to switch between them quickly. +* When either sign or encrypt is enabled, the security indicator will change color, + from grey to green. + +### Support for groups in gpg.conf + +* You can use the groups feature of the gpg.conf to map a specific address (e.g. mailing list) + to a specific key. + +### Create list preview snippets. + +* Show a preview of your encrypted message in the Mail.app list preview (2nd column). +* Choose whether you want to create these previews in the GPGMail preference pane. + +### Support the selection of the secret key to use if more than one exists for the same address + +* Select the correct secret key to use from the "From: " drop down. +* For each available key the key id is displayed so it's easy to spot the right key. + +### Display hints why encryption or signing might not be possible + +* When hovering over one of the encrypt or sign buttons in the composer window, + a message is now displayed, explaining why encryption or signing is not possible. +* For example if the public key is missing, or no secret key for the from address + could be found. + + +Bugfixes +-------- + +* User choice for encrypt/sign status always sticks now. +* Better installation handling. +* Added all UUIDs since 10.7.0. +* FlippedView error message is no longer shown in Console. +* Version string is no longer cut off in the GPGMail preference pane. +* The signature view now shows the creation date of the signature. \ No newline at end of file diff --git a/Release Notes/2.1.md b/Release Notes/2.1.md new file mode 100644 index 00000000..4b845c64 --- /dev/null +++ b/Release Notes/2.1.md @@ -0,0 +1,20 @@ +GPGMail v2.1 - Release Notes +============================ + +Features +-------- + +### Fully compatible with OS X 10.9 Mavericks + +* Mavericks is here and so is GPGMail! + We are proud to announce that from today on GPGMail officially supports OS X 10.9. + +### Change "Encrypt/Sign by default" in GPGMail preferences. + +* Our most popular request: it's now possible to change "encrypt/sign by default" in GPGMail preferences. + + +Bugfixes +-------- + +* GPGMail updates should now work even if other Mail plugins are installed. \ No newline at end of file diff --git a/Release Notes/2.5.1.md b/Release Notes/2.5.1.md new file mode 100644 index 00000000..15e9159b --- /dev/null +++ b/Release Notes/2.5.1.md @@ -0,0 +1,11 @@ +GPGMail 2.5.1 - Release Notes +============================ + + +Bugfixes +-------- + +* 10.8 + 10.7: GPGMail setting to "Encrypt Drafts" could not be disabled. [#841] +* Correct save and display the update check state. [#842] +* Properly display messages with content-type application/pgp. [#838] +* Preserve rich-text formatting when continuing drafts. When drafts where re-opened all formatting was lost. [#835] \ No newline at end of file diff --git a/Release Notes/2.5.md b/Release Notes/2.5.md new file mode 100644 index 00000000..4f3aeecf --- /dev/null +++ b/Release Notes/2.5.md @@ -0,0 +1,57 @@ +GPGMail 2.5 Final - Release Notes +============================ + + +Features +-------- + +### 10.10 Yosemity support + +* This has been a long beta phase – we know. But we are very happy to announce 10.10 support is now ready for a stable release and hope you'll enjoy GPGMail 2.5 as much as we do. + +### Encrypt drafts by default + +* All drafts will be encrypted with your public key by default, giving you better security and preventing bad situations from the get go. This concerns all your accounts in mail.app, even if you do not have an OpenPGP key for all of them. Encrypt drafts can still be disabled in GPGMail preferences (which we do not recommend). [#648] + +### Show warning before sending an unencrypted reply to an encrypted message + +* Your security is important and sending an unencrypted reply to an encrypted message can pose a serious security threat since information might be leaked. +* We now display an informative warning message which explains the situation and gives you the chance to revise the draft you are about to send. + +### Intuitive security indicator for encrypted mails + +* Until now we showed an open lock to indicate that the mail has been decrypted. But actually there are only two states: successful decryption (which now shows a closed lock) or no decryption at all due to an error (which results in an error message). We think the new behavior is much more intuitive. The open lock for decrypted messages was irritating and did worry quite a few users who believed the messages weren't encrypted at all. [#777] + +### Auto-Updates + +* We think it's a good idea to keep our users up to date with the latest fixes and improvements. So now, the automatic check for updates is enabled by default. While working on this, we discovered a bug in the way auto-updates were implemented, so that is now fixed and updates for GPGMail should be much smoother in the future. [#774, #785, #822] + +### Warning about drafts stored on server + +* This warning serves a very specific case, but it is very important to understand the consequences, so we are happy to now provide the user with an informative message. IF drafts are stored on server and the GPGMail option to "Encrypt drafts" is being disabled, you'll see a message warning you that your drafts will be stored on those server as plain text, once you start typing a new message. [#819] + + + +Bugfixes +-------- + +* GPGMail on 10.10 no longer crashes when a new message creation is invoked via AppleScript. We heard you - this is a much used feature and we're glad this bug is fixed! [#768, #799, #804] +* Mail.app crash on 10.7: This crash was on 10.7 only and happened when a new message was created. [#783] +* Drafts: Sign and encrypt status for drafts were not always saved. [#761] +* Drafts: Signed drafts were displayed as empty messages on Mavericks. [#695] +* Drafts: A nasty bug was squashed which prevented drafts from being stored on OS X 10.8 and 10.7. [#776] +* Drafts: In some occasions, encrypted drafts or sent messages had missing header parts, which resulted in incorrectly rendered mails.[#782] +* GPGMail believed that for certain addresses S/MIME encryption was not available while it actually was. [#673] +* Updates: the installer no longer stays open when Mail.app was quit during the update. [#742] +* Displaying revoked UIDs when two keys for the same email address exist and one is revoked is a bad idea. We no longer do that. [#656] +* Coexist peacefully: No more duplicate headers when using GPGMail and MailTags plugins together. [#747] +* A broken signature was falsely shown as "Signed". [#714] +* Remove trailing white-spaces so that signatures no longer get invalidated. [#686] +* On 10.10 GPGMail failed to properly load messages with winmail.dat attachments. [#771] +* Correctly detect inline PGP in text/html messages. [#787] +* 10.10: ensure selecting a specific key in the "From:" menu when composing a new message is possible when more than one secret key is available for the same email address. [#809] +* GPGMail no longer clutters Console.app with "error CFBundle RegexKit.framework Data couldn't be read" messages. [#796] +* Attachments of weird inline PGP encrypted messages from Windows are now properly displayed. [#677] +* When selecting an email from the sent folder and using "Send again" from the menubar, the resent mail did not respect your default setting to encrypt / sign mails. [#813] +* Minor typo in an error messages about signature that cannot be verified fixed. [#816] +* There was an infinite loop (scnr) error when spell check on send was enabled and the user clicked "Send anyway". [#829] diff --git a/Release Notes/2.5b1.md b/Release Notes/2.5b1.md new file mode 100644 index 00000000..18897f1d --- /dev/null +++ b/Release Notes/2.5b1.md @@ -0,0 +1,27 @@ +GPGMail 2.5b1 - Release Notes +============================ + +Features +-------- + +### 10.10 Yosemity support + +* The first beta of GPGMail is ready for testing. If you run into trouble please provide feedback and we will do our best to get things streamlined. Let's make GPGMail 2.5 the best release so far. + +### Encrypt drafts by default + +* All drafts will be encrypted with your public key by default, giving you better security and preventing bad situations from the get go. Encrypt drafts can still be disabled in GPGMail preferences (which we do not recommend). [#648] + + +Bugfixes +-------- + +* Drafts: Sign and encrypt status for drafts were not always saved. [#761] +* Drafts: Signed drafts were displayed as empty messages on Mavericks. [#695] +* GPGMail believed that for certain addresses S/MIME encryption was not available while it actually was. [#673] +* Signing was mistakenly disabled for replies. This was due to new encrypt drafts code. But things are now working fine again. [#762] +* Updates: the installer no longer stays open when Mail.app was quite during the update. [#742] +* Displaying revoked UIDs when two keys for the same email address exist and one is revoked is a bad idea. We no longer do that. Another pesky UX bug down! [#656] +* Coexisting peacefully: No more duplicate headers when using GPGMail and MailTags plugins together. [#747] +* A broken signature was falsely shown as "Signed". Not any longer. [#714] +* Remove trailing white-spaces so that signatures no longer get invalidated. [#686] \ No newline at end of file diff --git a/Release Notes/2.5b2.md b/Release Notes/2.5b2.md new file mode 100644 index 00000000..49b5eaf6 --- /dev/null +++ b/Release Notes/2.5b2.md @@ -0,0 +1,11 @@ +GPGMail 2.5b2 - Release Notes +============================ + + +Bugfixes +-------- + +* Beta 1 expired after just a few hours of usage. Sorry for this, it is now fixed. [#767] +* GPGMail on 10.10 no longer crashes when a new message creation is invoked via AppleScript. We heard you - this is a much used feature and we're gald this bug is fixed! [#768] +* Support for 10.10.1 developer preview. [#766] +* On 10.10 GPGMail failed to properly load messages with winmail.dat attachments. [#771] \ No newline at end of file diff --git a/Release Notes/2.5b3.md b/Release Notes/2.5b3.md new file mode 100644 index 00000000..010607b2 --- /dev/null +++ b/Release Notes/2.5b3.md @@ -0,0 +1,17 @@ +GPGMail 2.5b3 - Release Notes +============================ + +Features +-------- + +### Auto-Updates + +* We think it's a good idea to keep our users up to date with the latest fixes and improvements. So check for updates now defaults to on. [#774, #785] + +Bugfixes +-------- + +* A nasty bug prevented drafts to be stored on OS X 10.8 and 10.7. Now drafts are properly saved again. [#776] +* Added UUID for 10.10.2. [#780] +* Drafts: In some occasions, encrypted drafts or sent messages had missing header parts, which resulted in incorrectly rendered mails.[#782] +* Crash on 10.7: This crash was on 10.7 only and happened when a new messages was created. [#783] \ No newline at end of file diff --git a/Release Notes/2.5b4.md b/Release Notes/2.5b4.md new file mode 100644 index 00000000..01619fe3 --- /dev/null +++ b/Release Notes/2.5b4.md @@ -0,0 +1,16 @@ +GPGMail 2.5b4 - Release Notes +============================ + +Features +-------- + +### Intuitive security indicator for encrypted mails + +* Until now we showed an open lock to indicate that the mail has been decrypted. But actually there are only two states: successful decryption (which now shows a closed lock) or no decryption at all due to an error (which results in an error message). We think the new behavior is much more intuitive. The open lock for decrypted messages was irritating and did worry quite a few users who though the encryption had been broken. [#777] + +Bugfixes +-------- + +* Assertion failure when using legary PGP inline mode: Creating inline PGP message works again as expected. [#788] +* Drafts were not saved if the signing key information was not available when saving a draft. [#791] +* Correctly detect inline PGP in text/html messages. [#787] \ No newline at end of file diff --git a/Release Notes/2.5b5.md b/Release Notes/2.5b5.md new file mode 100644 index 00000000..540c7c7e --- /dev/null +++ b/Release Notes/2.5b5.md @@ -0,0 +1,20 @@ +GPGMail 2.5b5 - Release Notes +============================ + +Features +-------- + +### Show warning before sending an unencrypted reply to an encrypted message + +* Your security is important and sending an unencrypted reply to an encrypted message can pose a serious security threat since information might be leaked. +* We now display an informative warning message which explains the situation and gives you the change to revise the draft you are about to send. + + +Bugfixes +-------- + +* 10.10: ensure selecting a specific key in the "From:" menu when composing a new message is possible when more than one secret key is available for the same email address. [#809] +* When a new message was created via Apple Script, Mail.app would crash under certain circumstances. Fixes this issue once and for all! [#799, #804] +* GPGMail no longer clutters Console.app with "error CFBundle RegexKit.framework Data couldn't be read" messages. [#796] +* Attachments of weird inline PGP encrypted messages from Windows are now properly displayed. [#677] +* Mail no longer raises an exception if the font information is not available when generating the security header. [#795] \ No newline at end of file diff --git a/Release Notes/2.5b6.md b/Release Notes/2.5b6.md new file mode 100644 index 00000000..40ad234e --- /dev/null +++ b/Release Notes/2.5b6.md @@ -0,0 +1,9 @@ +GPGMail 2.5b6 - Release Notes +============================ + +Bugfixes +-------- + +* Did we say auto-update? We did, but with b6 it should actually start to work as expected. GPGMail updates should be much smoother in the future. [#822] +* When in your sent folder and select Email > Send again from the menubar, the resend mail did not respect your default setting to encrypt / sign mails. Now it does. [#813] +* Minor typo in an error messages about signature that cannot be verified fixed. [#816] \ No newline at end of file diff --git a/Release Notes/2.6.md b/Release Notes/2.6.md new file mode 100644 index 00000000..aae1bb0e --- /dev/null +++ b/Release Notes/2.6.md @@ -0,0 +1,27 @@ +GPGMail 2.6 +=============== + +New +---- +### El Capitan stable +* GPGMail 2.6 stable is rolled out for 10.9 - 10.11. [#834] + +### VoiceOver support +* VoiceOver support has been made fully functional on 10.11. All GPGMail elements can be reached and worked with. Known limitations: 10.10 can not access the OpenPGP indicator, 10.9 as 10.10 and button state is not announced. We suggest all of our blind users to update to 10.11 and would be really excited to hear your feedback on this. + +Improvements +---- +* Change default so that version info is no longer attached to messages. [#837] + +Fixes +---- +* Drafts were opened in blank state when closing mail while working on a draft and not saving it. [#860] +* Respect Subkey key mapping. [#862] +* Sending a mail while in fullscreen view resulted in Mail.app getting stuck on a black screen. [#852] +* Disable the setting to 'Automatically check for updates' didn't stick. [#850] +* Mission control showed drafts despite them already being sent. [#853] +* Inline/PGP works again using BCC: recipients. [#869] +* MailTags and GPGMail can again peacfully co-exist. Thanks Scott from MailTags! [#849] +* Startup crash on 10.10 and 10.11 related to the MailTags fix. [#868] +* Mail.app was not starting correctly after closing it while an unsaved draft was open. [#871] +* Ensure draft state is saved and kept when re-opening draft. [#854] \ No newline at end of file diff --git a/Resources/Base.lproj/GPGAttachments.xib b/Resources/Base.lproj/GPGAttachments.xib new file mode 100644 index 00000000..51037236 --- /dev/null +++ b/Resources/Base.lproj/GPGAttachments.xib @@ -0,0 +1,567 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + encrypted + signed + error + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The signature could not be verified because the public key is not in your keychain. +Please download the key using GPG Keychain. + + + + Static Text - The signature could not be verified because the public key is not in your keychain. Please download the key using GPG Keychain. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The signature could not be verified because the public key is not in your keychain. +Please download the key using GPG Keychain. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + GPGFingerprintTransformer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Never + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + GPGFingerprintTransformer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Never + + + + + + + + + + + + + diff --git a/Resources/Base.lproj/GPGMailPreferences.xib b/Resources/Base.lproj/GPGMailPreferences.xib new file mode 100644 index 00000000..8630be93 --- /dev/null +++ b/Resources/Base.lproj/GPGMailPreferences.xib @@ -0,0 +1,265 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Resources/Base.lproj/GPGSignatureView.xib b/Resources/Base.lproj/GPGSignatureView.xib new file mode 100644 index 00000000..af997e25 --- /dev/null +++ b/Resources/Base.lproj/GPGSignatureView.xib @@ -0,0 +1,472 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + GPGSignatureCertImageTransformer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + GPGFingerprintTransformer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Never + + + + + + + + + + + + + + + + + + + + + + + + No signature + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + GPGFingerprintTransformer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Never + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + userID + self + name + validityDescription + email + + + + + + + + + diff --git a/Resources/GPGMail-Entitlements.plist b/Resources/GPGMail-Entitlements.plist new file mode 100644 index 00000000..852fa1a4 --- /dev/null +++ b/Resources/GPGMail-Entitlements.plist @@ -0,0 +1,8 @@ + + + + + com.apple.security.app-sandbox + + + diff --git a/Resources/GPGMailBundle.defaults b/Resources/GPGMailBundle.defaults new file mode 100644 index 00000000..666b717c --- /dev/null +++ b/Resources/GPGMailBundle.defaults @@ -0,0 +1,32 @@ +{ + /* + * Do not modify that file. Use the Terminal, and type: + * defaults write org.gpgtools.gpgmail TheDefaultName TheValue + */ + + /* Composing */ + UseOpenPGPToSend = YES; + OptionallyEncryptDrafts = YES; + EncryptNewEmailsByDefault = NO; + SignNewEmailsByDefault = YES; + UseOpenPGPInlineToSend = NO; + DefaultSecurityMethod = 1; /* OpenPGP */ + AttachKeyToOutgoingMessages = NO; + AllowSymmetricEncryption = NO; + ShowAccountNameForKeysOfSameAddress = NO; + EncryptToSelf = YES; + + /* Viewing */ + UseOpenPGPForReading = YES; + HideAllSignatureAttachments = NO; + CreatePreviewSnippets = NO; + + /* Completely disable generating snippets even if the passphrase + * is cached. + */ + NeverCreatePreviewSnippets = NO; + + + /* Used to check if this file is loaded correctly */ + DefaultsLoaded = YES; +} diff --git a/Resources/Images/CertLargeNotTrusted.png b/Resources/Images/CertLargeNotTrusted.png new file mode 100644 index 00000000..b2b4d919 Binary files /dev/null and b/Resources/Images/CertLargeNotTrusted.png differ diff --git a/Resources/Images/CertLargeNotTrusted@2x.png b/Resources/Images/CertLargeNotTrusted@2x.png new file mode 100644 index 00000000..96e5b4fb Binary files /dev/null and b/Resources/Images/CertLargeNotTrusted@2x.png differ diff --git a/Resources/Images/CertLargeStd.png b/Resources/Images/CertLargeStd.png new file mode 100644 index 00000000..41b0e11e Binary files /dev/null and b/Resources/Images/CertLargeStd.png differ diff --git a/Resources/Images/CertLargeStd@2x.png b/Resources/Images/CertLargeStd@2x.png new file mode 100644 index 00000000..d78e6d02 Binary files /dev/null and b/Resources/Images/CertLargeStd@2x.png differ diff --git a/Resources/Images/CertSmallStd.png b/Resources/Images/CertSmallStd.png new file mode 100644 index 00000000..9bd2ed48 Binary files /dev/null and b/Resources/Images/CertSmallStd.png differ diff --git a/Resources/Images/CertSmallStd@2x.png b/Resources/Images/CertSmallStd@2x.png new file mode 100644 index 00000000..55c2f18a Binary files /dev/null and b/Resources/Images/CertSmallStd@2x.png differ diff --git a/Resources/Images/CertSmallStd_Invalid.png b/Resources/Images/CertSmallStd_Invalid.png new file mode 100644 index 00000000..11525a51 Binary files /dev/null and b/Resources/Images/CertSmallStd_Invalid.png differ diff --git a/Resources/Images/CertSmallStd_Invalid@2x.png b/Resources/Images/CertSmallStd_Invalid@2x.png new file mode 100644 index 00000000..93dd1dac Binary files /dev/null and b/Resources/Images/CertSmallStd_Invalid@2x.png differ diff --git a/Resources/Images/GPGMail.iconset/icon_128x128.png b/Resources/Images/GPGMail.iconset/icon_128x128.png new file mode 100644 index 00000000..ebc43655 Binary files /dev/null and b/Resources/Images/GPGMail.iconset/icon_128x128.png differ diff --git a/Resources/Images/GPGMail.iconset/icon_128x128@2x.png b/Resources/Images/GPGMail.iconset/icon_128x128@2x.png new file mode 100644 index 00000000..9a4e2743 Binary files /dev/null and b/Resources/Images/GPGMail.iconset/icon_128x128@2x.png differ diff --git a/Resources/Images/GPGMail.iconset/icon_16x16.png b/Resources/Images/GPGMail.iconset/icon_16x16.png new file mode 100644 index 00000000..4c0465e2 Binary files /dev/null and b/Resources/Images/GPGMail.iconset/icon_16x16.png differ diff --git a/Resources/Images/GPGMail.iconset/icon_16x16@2x.png b/Resources/Images/GPGMail.iconset/icon_16x16@2x.png new file mode 100644 index 00000000..80ef6dea Binary files /dev/null and b/Resources/Images/GPGMail.iconset/icon_16x16@2x.png differ diff --git a/Resources/Images/GPGMail.iconset/icon_256x256.png b/Resources/Images/GPGMail.iconset/icon_256x256.png new file mode 100644 index 00000000..9a4e2743 Binary files /dev/null and b/Resources/Images/GPGMail.iconset/icon_256x256.png differ diff --git a/Resources/Images/GPGMail.iconset/icon_256x256@2x.png b/Resources/Images/GPGMail.iconset/icon_256x256@2x.png new file mode 100644 index 00000000..03fc90ee Binary files /dev/null and b/Resources/Images/GPGMail.iconset/icon_256x256@2x.png differ diff --git a/Resources/Images/GPGMail.iconset/icon_32x32.png b/Resources/Images/GPGMail.iconset/icon_32x32.png new file mode 100644 index 00000000..80ef6dea Binary files /dev/null and b/Resources/Images/GPGMail.iconset/icon_32x32.png differ diff --git a/Resources/Images/GPGMail.iconset/icon_32x32@2x.png b/Resources/Images/GPGMail.iconset/icon_32x32@2x.png new file mode 100644 index 00000000..9333c06d Binary files /dev/null and b/Resources/Images/GPGMail.iconset/icon_32x32@2x.png differ diff --git a/Resources/Images/GPGMail.iconset/icon_512x512.png b/Resources/Images/GPGMail.iconset/icon_512x512.png new file mode 100644 index 00000000..03fc90ee Binary files /dev/null and b/Resources/Images/GPGMail.iconset/icon_512x512.png differ diff --git a/Resources/Images/GPGMail.iconset/icon_512x512@2x.png b/Resources/Images/GPGMail.iconset/icon_512x512@2x.png new file mode 100644 index 00000000..1f82f85a Binary files /dev/null and b/Resources/Images/GPGMail.iconset/icon_512x512@2x.png differ diff --git a/Resources/Images/GreenDot.png b/Resources/Images/GreenDot.png new file mode 100644 index 00000000..8a3232a3 Binary files /dev/null and b/Resources/Images/GreenDot.png differ diff --git a/Resources/Images/GreenDot@2x.png b/Resources/Images/GreenDot@2x.png new file mode 100644 index 00000000..c842a1d9 Binary files /dev/null and b/Resources/Images/GreenDot@2x.png differ diff --git a/Resources/Images/InvalidBadge.png b/Resources/Images/InvalidBadge.png new file mode 100644 index 00000000..0141ab12 Binary files /dev/null and b/Resources/Images/InvalidBadge.png differ diff --git a/Resources/Images/InvalidBadge@2x.png b/Resources/Images/InvalidBadge@2x.png new file mode 100644 index 00000000..52cfcd79 Binary files /dev/null and b/Resources/Images/InvalidBadge@2x.png differ diff --git a/Resources/Images/MenuArrowWhite.png b/Resources/Images/MenuArrowWhite.png new file mode 100644 index 00000000..cd92f3fc Binary files /dev/null and b/Resources/Images/MenuArrowWhite.png differ diff --git a/Resources/Images/MenuArrowWhite@2x.png b/Resources/Images/MenuArrowWhite@2x.png new file mode 100644 index 00000000..f40af33d Binary files /dev/null and b/Resources/Images/MenuArrowWhite@2x.png differ diff --git a/Resources/Images/RedDot.png b/Resources/Images/RedDot.png new file mode 100644 index 00000000..2acc65d3 Binary files /dev/null and b/Resources/Images/RedDot.png differ diff --git a/Resources/Images/RedDot@2x.png b/Resources/Images/RedDot@2x.png new file mode 100644 index 00000000..0db3e304 Binary files /dev/null and b/Resources/Images/RedDot@2x.png differ diff --git a/Resources/Images/SymmetricEncryptionOff.pdf b/Resources/Images/SymmetricEncryptionOff.pdf new file mode 100644 index 00000000..8c0d240d Binary files /dev/null and b/Resources/Images/SymmetricEncryptionOff.pdf differ diff --git a/Resources/Images/SymmetricEncryptionOn.pdf b/Resources/Images/SymmetricEncryptionOn.pdf new file mode 100644 index 00000000..daca8806 Binary files /dev/null and b/Resources/Images/SymmetricEncryptionOn.pdf differ diff --git a/Resources/Images/ValidBadge.png b/Resources/Images/ValidBadge.png new file mode 100644 index 00000000..160717f4 Binary files /dev/null and b/Resources/Images/ValidBadge.png differ diff --git a/Resources/Images/ValidBadge@2x.png b/Resources/Images/ValidBadge@2x.png new file mode 100644 index 00000000..4c1201fb Binary files /dev/null and b/Resources/Images/ValidBadge@2x.png differ diff --git a/Resources/Images/YellowDot.png b/Resources/Images/YellowDot.png new file mode 100644 index 00000000..a1937129 Binary files /dev/null and b/Resources/Images/YellowDot.png differ diff --git a/Resources/Images/YellowDot@2x.png b/Resources/Images/YellowDot@2x.png new file mode 100644 index 00000000..e1b1d0a8 Binary files /dev/null and b/Resources/Images/YellowDot@2x.png differ diff --git a/Resources/Images/certificate.png b/Resources/Images/certificate.png new file mode 100644 index 00000000..a973403f Binary files /dev/null and b/Resources/Images/certificate.png differ diff --git a/Resources/Images/certificate@2x.png b/Resources/Images/certificate@2x.png new file mode 100644 index 00000000..b0d16469 Binary files /dev/null and b/Resources/Images/certificate@2x.png differ diff --git a/Resources/Images/encryption.png b/Resources/Images/encryption.png new file mode 100644 index 00000000..a973403f Binary files /dev/null and b/Resources/Images/encryption.png differ diff --git a/Resources/Images/encryption@2x.png b/Resources/Images/encryption@2x.png new file mode 100644 index 00000000..b0d16469 Binary files /dev/null and b/Resources/Images/encryption@2x.png differ diff --git a/Resources/Info.plist b/Resources/Info.plist new file mode 100644 index 00000000..1a2d740b --- /dev/null +++ b/Resources/Info.plist @@ -0,0 +1,94 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleDocumentTypes + + CFBundleExecutable + GPGMail + CFBundleIconFile + GPGMail.icns + CFBundleIdentifier + org.gpgtools.gpgmail + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + GPGMail + CFBundlePackageType + BNDL + CFBundleShortVersionString + AUTOFILL + CFBundleVersion + AUTOFILL + CommitHash + AUTOFILL + BuildNumber + AUTOFILL + NSHumanReadableCopyright + Copyright © GPGTools, 2013 + NSPrincipalClass + GPGMailBundle + GMOSXVersions + + 10.11 + 10.7 + 10.8 + 10.9 + 10.10 + + SupportedPluginCompatibilityUUIDs + + 71562B89-0D90-4588-8E94-A75B701D6443 + 1550C683-EA48-4036-B7CE-FB6F5D13EE02 + DAF41AB7-F9AD-4273-9934-C81C74705B69 + AB695A2B-4605-4A74-A99F-AF9F9C92C41B + 60D52D22-7491-4CA7-95BA-88215BD88F8E + 7C051997-F45A-4523-B053-2D262F94C775 + 800E5C92-87D3-429B-8740-5C6183CD13EA + FBD91264-8866-4DEB-AFBF-F08505810056 + E5B33C60-5574-47F5-8418-4CE37CCE16BE + D1EFE124-86FF-4751-BF00-80B2C0D6F2E4 + 427E6BAF-DE6C-4181-BB6D-1147337CD73A + 1A6064D1-D261-4A15-ACE8-C3743D5DF95B + 0C8D41E1-BE6E-44EC-AF91-5A08068B4359 + F4C26776-22B3-4A0A-96E1-EA8E4482E0B5 + 1CD40D64-945D-4D50-B12D-9CD865533506 + 88ED2D4C-D384-4BF5-8E94-B533455E6AAF + B9F62389-216B-4459-9F0C-2E379DB461C6 + FBE5B158-5602-4A6D-9CC5-8461B9B7054E + DAFFB2B4-77BC-4C25-8CE1-2405E652D54B + 04D6EC0A-52FF-4BBE-9896-C0B5FB851BBA + 2B98D2DD-000B-4521-83EB-7BFCB9B161C8 + 422F980A-6E19-4083-97A0-791EB6B06508 + 19B53E95-0964-4AAB-88F9-6D2F8B7B6037 + 45A0C9E7-264B-45A4-9A54-F9CE48806169 + 1B8BEB55-7CDB-44D1-A2D0-20C2D3449417 + 2183B2CD-BEDF-4AA6-AC18-A1BBED2E3354 + B3840429-B086-42FB-BBE9-03DD7273C94E + 608CE00F-4576-4CAD-B362-F3CCB7DE8D67 + 4C286C70-7F18-4839-B903-6F2D58FA4C71 + EF59EC5E-EFCD-4EA7-B617-6C5708397D24 + 6E7970A3-E5F1-4C41-A904-B18D3D8FAA7D + 2DE49D65-B49E-4303-A280-8448872EFE87 + 1146A009-E373-4DB6-AB4D-47E59A7E50FD + E71BD599-351A-42C5-9B63-EA5C47F7CE8E + B842F7D0-4D81-4DDF-A672-129CA5B32D57 + 0CB5F2A0-A173-4809-86E3-9317261F1745 + 2F0CF6F9-35BA-4812-9CB2-155C0FDB9B0F + 225E0A48-2CDB-44A6-8D99-A9BB8AF6BA04 + B3F3FC72-315D-4323-BE85-7AB76090224D + 2610F061-32C6-4C6B-B90A-7A3102F9B9C8 + 99BB3782-6C16-4C6F-B910-25ED1C1CB38B + 857A142A-AB81-4D99-BECC-D1B55A86D94E + BDD81F4D-6881-4A8D-94A7-E67410089EEB + 36555EB0-53A7-4B29-9B84-6C0C6BACFC23 + 9049EF7D-5873-4F54-A447-51D722009310 + 1C58722D-AFBD-464E-81BB-0E05C108BE06 + 758F235A-2FD0-4660-9B52-102CD0EA897F + 3335F782-01E2-4DF1-9E61-F81314124212 + 0941BB9F-231F-452D-A26F-47A43863C991 + + + diff --git a/Resources/ar.lproj/GPGAttachment.strings b/Resources/ar.lproj/GPGAttachment.strings new file mode 100644 index 00000000..837de7b8 --- /dev/null +++ b/Resources/ar.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Failed to verify the signature."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "The public key to verify the signature of this attachment is not in your keychain.\n\nPlease download the public key %@ using GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Failed to decrypt the attachment."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "The secret key to decrypt this attachment is not in your keychain."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "The attachment was decrypted successfully."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Open an attachment in the message view by double-clicking."; diff --git a/Resources/ar.lproj/GPGAttachments.strings b/Resources/ar.lproj/GPGAttachments.strings new file mode 100644 index 00000000..49739476 --- /dev/null +++ b/Resources/ar.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Window"; +"8.title" = "OK"; +"210.title" = "name"; +"211.title" = "Details"; +"239.title" = "Key"; +"240.title" = "Name:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Created:"; +"245.title" = "Expires:"; +"246.title" = "Algorithm:"; +"247.title" = "Ownertrust:"; +"256.title" = "Signature"; +"257.title" = "Created:"; +"291.title" = "The signature could not be verified."; +"293.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"382.title" = "The signature could not be verified."; +"383.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/ar.lproj/GPGMail.strings b/Resources/ar.lproj/GPGMail.strings new file mode 100644 index 00000000..27a855c7 --- /dev/null +++ b/Resources/ar.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Version: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Unable to decrypt PGP message."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "There was a problem decrypting this message. Verify that you have a valid key in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Unable to verify PGP message signature."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "There was a problem reading the PGP signature for this message."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP key for this message is not in your keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "The message has a valid PGP signature, but the PGP key is not in your keychain. Please use GPG Keychain to add it."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "No information is available for this PGP key."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "No additional information is known about this PGP key, because it's not in your keychain."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the message is missing."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this message."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This message could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted message is damaged."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted message is damaged and could not be decrypted.\n\nPlease ask the sender to re-send the message."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this message was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The key to this message signature is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The message could not be verified, since the key which was used to sign this message is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the message."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "The message signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This message could not be verified, since the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The signature of this message is invalid!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verification of message signature failed with unknown error!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this message's signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Message signature data error!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This message's signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Message signature's key is expired."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this message is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The message signature is expired."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d attachments failed to decrypt or verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d attachments failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d attachments failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d attachment failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d attachment failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the attachment is missing."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this attachment."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This attachment could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted attachment is damaged."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted attachment is damaged and could not be decrypted.\n\nPlease ask the sender to send you the message again."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The signature key is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "The attachment signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This attachment could not be verified, since the key to the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The attachment signature is invalid!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\n if you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Signature verification failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signature data error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This attachment signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "The key of the signature is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Partly Encrypted"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Partly Signed"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Encrypted"; +"MESSAGE_IS_PGP_SIGNED" = "Signed"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Invalid Signature"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signed with unknown key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signed with revoked key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Invalid signature"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signed"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No signature found"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "encrypted attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "encrypted attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signed attachments"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "This message can't be encrypted, since there are no public keys available for the following addresses: %@.\n\nPlease use GPG Keychain to search and import the keys for those addresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Encrypted"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signed"; +"MESSAGE_VIEW_PGP_PART" = "PGP part"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail is ready."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Your MacGPG installation is working with no errors."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Please check your installation and configuration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Found multiple installations of GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/ar.lproj/GPGMailPreferences.strings b/Resources/ar.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..9cc3061a --- /dev/null +++ b/Resources/ar.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Updates"; +"728.title" = "Composing"; +"733.ibShadowedToolTip" = "Frequently Asked Questions."; +"734.alternateTitle" = "Frequently Asked Questions"; +"734.title" = "Knowledge Base"; +"781.title" = "Encrypt drafts"; +"834.title" = "Button"; +"1051.ibShadowedToolTip" = "If you've any other question."; +"1053.title" = "Report Problem"; +"0PS-Wm-gKl.title" = "Check Now"; +"0Th-7E-Y7P.title" = "Version: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Automatically check for updates"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "Show Release Notes"; +"UhD-uR-dUs.title" = "Include beta builds"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/ar.lproj/GPGSignatureView.strings b/Resources/ar.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..0e32cad7 --- /dev/null +++ b/Resources/ar.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Signatures"; +"25.title" = "OK"; +"237.title" = "name"; +"251.title" = "Details"; +"252.ibShadowedNoSelectionPlaceholder" = "No signature"; +"365.title" = "Name:"; +"367.title" = "Key"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algorithm:"; +"378.title" = "Expires:"; +"379.title" = "Created:"; +"381.title" = "Ownertrust:"; +"436.title" = "Created:"; +"437.title" = "Signature"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/ar.lproj/SignatureView.strings b/Resources/ar.lproj/SignatureView.strings new file mode 100644 index 00000000..4470da3d --- /dev/null +++ b/Resources/ar.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "This signature is not to be trusted."; +"VALIDITY_OK" = "This signature can be trusted"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "The key of this signature was revoked."; +"VALIDITY_SIGNATURE_EXPIRED" = "This signature is expired."; +"VALIDITY_KEY_EXPIRED" = "The key of this signature is expired."; +"VALIDITY_KEY_REVOKED" = "The key of this signature was revoked."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Signature was created with unknown algorithm."; +"VALIDITY_NO_PUBLIC_KEY" = "The key of this signature is not in your keychain."; +"VALIDITY_UNKNOWN_ERROR" = "Unknown signature error."; +"VALIDITY_BAD_SIGNATURE" = "This signature is invalid."; diff --git a/Resources/ca.lproj/GPGAttachment.strings b/Resources/ca.lproj/GPGAttachment.strings new file mode 100644 index 00000000..620aa040 --- /dev/null +++ b/Resources/ca.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "No s'ha pogut verificar la signatura."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "La clau pública per a verificar la signatura d'aquest fitxer adjunt no és al vostre clauer.\n\nBaixeu la clau pública %@ utilitzant el GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "No s'ha pogut desxifrar el fitxer adjunt."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "La clau privada per desxifrar el fitxer no és al clauer."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "El fitxer adjunt s'ha desxifrat amb èxit."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Obriu un fitxer adjunt a la vista de missatges fent doble clic."; diff --git a/Resources/ca.lproj/GPGAttachments.strings b/Resources/ca.lproj/GPGAttachments.strings new file mode 100644 index 00000000..6fb35455 --- /dev/null +++ b/Resources/ca.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Finestra"; +"8.title" = "D'acord"; +"210.title" = "nom"; +"211.title" = "Detalls"; +"239.title" = "Clau"; +"240.title" = "Nom:"; +"241.title" = "Adreça electrònica:"; +"243.title" = "Empremta:"; +"244.title" = "Creat:"; +"245.title" = "Expira:"; +"246.title" = "Algoritme:"; +"247.title" = "Confiança del propietari:"; +"256.title" = "Signatura"; +"257.title" = "Creat:"; +"291.title" = "La signatura no s'ha verificat."; +"293.title" = "La signatura no s'ha pogut verificar perquè la clau pública no és al vostre clauer.\nBaixeu la clau utilitzant el GPG Keychain."; +"382.title" = "La signatura no s'ha verificat."; +"383.title" = "La signatura no s'ha pogut verificar perquè la clau pública no és al vostre clauer.\nBaixeu la clau utilitzant el GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Mai"; diff --git a/Resources/ca.lproj/GPGMail.strings b/Resources/ca.lproj/GPGMail.strings new file mode 100644 index 00000000..9eaab224 --- /dev/null +++ b/Resources/ca.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Versió: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "No s'ha pogut desxifrar el missatge PGP."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Ha hagut un problema al desxifrar el missatge. Comproveu que disposa d'una clau vàlida al GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "No s'ha pogut verificar la signatura PGP del missatge."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Mentre es llegia la signatura PGP del missatge hi ha hagut un problema "; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "La clau PGP del missatge no és al clauer."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "El missatge té una signatura PGP vàlida, però la clau PGP no està al teu clauer. Empreu el GPG Keychain per afegir-la."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "No hi ha informació disponible per a la clau PGP."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "No hi ha informació addicional coneguda sobre la clau PGP, perquè no és al clauer."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Falta la clau privada per a desxifrar el missatge."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "No s'ha pogut trobar cap d'aquestes claus secretes al vostre clauer (%@). Cal la clau secreta per a desxifrar aquest missatge.\n\nComproveu si el remitent ha utilitzat la clau pública correcta.\nComproveu qualsevol còpia de seguretat de la vostra clau, i proveu d'importar-la."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "S'ha produït un error desconegut a l'hora de desxifrar!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Ha ocorregut un error desconegut al desxifrar el missatge.\n\nContacteu amb nosaltres a https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Mentre es desxifrava s'ha produït un error desconegut!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Ha ocorregut un error desconegut al desxifrar el missatge.\n\nMissatge d'error GPG:\n%@\n\nContacteu amb nosaltres i inclogueu el missatge d'error GPG a https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "No heu utilitzat la clau correcta per xifrar el missatge."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "El missatge no s'ha desxifrat, perquè s'ha utilitzat una clau pública errònia per xifrar-lo.\n\nContacteu amb nosaltres a https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "El missatge xifrat està danyat."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "El missatge xifrat està danyat i no es pot desxifrar.\n\nDemaneu al remitent que us reenvie el missatge."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "S'ha revocat la clau de la signatura."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "La clau que s'ha utilitzat per signar el missatge ha estat revocada.\n\nHauríeu d'actualitzar la clau amb ID %@ al GPG Keychain per a comprovar si n'hi ha disponible una de nova. Si la nova encara es troba revocada, verifiqueu amb el remitent per què es va revocar."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "La clau de la signatura d'aquest missatge no és al GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "El missatge no s'ha verificat, perquè la clau que s'ha utilitzat per signar-lo no és al GPG Keychain.\n\nCerqueu la clau amb identitat %@ a GPG Keychain i importeu-la per a verificar el missatge."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "La signatura del missatge s'ha fet amb un algoritme no compatible."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "El missatge no s'ha verificat, perquè la signatura s'ha creat amb un algoritme no compatible.\n\nContacteu amb nosaltres a https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATENCIÓ: La signatura del missatge no és vàlida!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "El missatge podria haver sigut modificat després de crear-se la signatura.\n\nContacteu amb el remitent per assegurar-vos que el contingut del missatge coincideix amb l'original.\n\nContacteu amb nosaltres a\nhttps://gpgtools.tenderapp.com/\nsi esteu segurs que el missatge no s'ha modificat."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Mentre es verificava la signatura del missatge ha hagut un error desconegut!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Ha ocorregut un error desconegut al verificar la signatura del missatge.\n\nContacteu amb nosaltres a https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Error de dades de la signatura del missatge!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "La signatura del missatge no és vàlida i no s'ha verificat.\n\nContacteu amb nosaltres a https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "La clau de signatura del missatge ha vençut."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "La clau que s'ha utilitzat per signar el missatge ha vençut.\n\nProveu d'actualitzar la clau amb identitat %@ al GPG Keychain i pregunteu al remitent per què ha vençut la clau."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "La clau de signatura del missatge ha vençut."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "No s'ha pogut verificar la signatura perquè ha vençut.\n\nPregunteu al remitent per què ha vençut la signatura."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "El MacGPG no es troba instal·lat"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Ha fallat el desxifratge perquè el MacGPG no es troba instal·lat.\n\nBaixeu i torneu a instal·lar el GPG Suite des de https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "El MacGPG no es troba instal·lat"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Ha fallat la verificació perquè el MacGPG no es troba instal·lat.\n\nBaixeu i torneu a instal·lar el GPG Suite des de https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "Els fitxers adjunts %d no s'han desxifrat o verificat."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Per a obtenir més detalls, feu clic a la icona del fitxer adjunt que es troba a la capçalera de seguretat del missatge."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "Els fitxers %d no s'han verificat."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Per a obtenir més detalls, feu clic a la icona del fitxer adjunt que es troba a la capçalera de seguretat del missatge."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "Els fitxers adjunts %d no s'han desxifrat."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Per a obtenir més detalls, feu clic a la icona del fitxer adjunt que es troba a la capçalera de seguretat del missatge."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "El fitxer adjunt %d no s'ha verificat."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Per a obtenir més detalls, feu clic a la icona del fitxer adjunt que es troba a la capçalera de seguretat del missatge."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "El fitxer adjunt %d no s'ha desxifrat."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Per a obtenir més detalls, feu clic a la icona del fitxer adjunt que es troba a la capçalera de seguretat del missatge."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Falta la clau privada per a desxifrar el fitxer adjunt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "No s'ha trobat cap d'aquestes claus secretes al vostre clauer (%@). Cal la clau secreta per a desxifrar aquest fitxer adjunt.\n\nComproveu si el remitent ha utilitzat la clau pública correcta.\nComproveu qualsevol còpia de seguretat de la vostra clau, i proveu d'importar-la."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Mentre es desxifrava s'ha produït un error desconegut!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Ha ocorregut un error desconegut al desxifrar el fitxer adjunt.\n\nContacteu amb nosaltres a https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Mentre es desxifrava s'ha produït un error desconegut!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Ha ocorregut un error desconegut al desxifrar el fitxer adjunt.\n\nMissatge d'error GPG:\n%@\n\nContacteu amb nosaltres i inclogueu el missatge d'error GPG a https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "S'ha utilitzat una clau errònia per a xifrar aquest fitxer."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "El fitxer adjunt no s'ha desxifrat, perquè s'ha utilitzat una clau pública errònia per xifrar-lo.\n\nContacteu amb nosaltres a https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "El fitxer adjunt xifrat està danyat."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "El fitxer adjunt xifrat està danyat i no s'ha desxifrat.\n\nDemaneu al remitent que us envie el missatge de nou."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "S'ha revocat la clau de la signatura."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "La clau que s'ha usat per signat aquest fitxer adjunt s'ha revocat.\n\nHauríeu d'actualitzar la clau amb identitat %@ al GPG Keychain per a comprovar si hi ha disponible una nova versió. Si la nova versió també està revocada, verifiqueu amb el remitent per què s'ha revocat la clau."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "La clau de la signatura no és al GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "La signatura adjunta no s'ha pogut verificar, perquè la clau que s'ha usat per signar-la no és al GPG Keychain.\n\nCerqueu la clau amb la identitat %@ al GPG Keychain i importeu-la per a comprovar el fitxer adjunt."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "La signatura del fitxer adjunt s'ha creat amb un algoritme no compatible."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "El fitxer adjunt no s'ha verificat, perquè la clau de la signatura s'ha creat amb un algoritme no compatible.\n\nContacteu amb nosaltres a https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATENCIÓ: La signatura del fitxer adjunt no és vàlida!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "El fitxer adjunt podria haver sigut modificat després de crear-se la signatura.\n\nContacteu amb el remitent i assegureu-vos que el contingut del fitxer adjunt coincideix amb l'original.\n\nContacteu amb nosaltres a\nhttps://gpgtools.tenderapp.com/\nsi esteu segur que el fitxer adjunt no s'ha modificat."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "S'ha produït un error desconegut en la verificació de la signatura!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Ha ocorregut un error desconegut al verificar la signatura del fitxer adjunt\n\nContacteu amb nosaltres a https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "La signatura presenta dades errònies!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "La signatura d'aquest fitxer adjunt no és vàlida i no s'ha verificat.\n\nContacteu amb nosaltres a https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "La clau de la signatura ha vençut."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "La clau que s'ha utilitzat per signar el fitxer adjunt ha vençut.\n\nProveu d'actualitzar la clau amb identitat %@ al GPG Keychain i pregunteu al remitent per què ha vençut la clau."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "La signatura del fitxer adjunt ha vençut."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "La signatura del fitxer adjunt ha vençuti no s'ha pogut verificar.\n\nPregunteu al remitent per què la signatura ha caducat."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Xifrat parcialment"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Signat parcialment"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Xifrat"; +"MESSAGE_IS_PGP_SIGNED" = "Signat"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Signatura no vàlida"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signat amb una clau desconeguda"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signat amb una clau revocada"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Signatura no vàlida"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signat"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No s'ha trobat la signatura"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "Fitxer adjunt xifrat/signat"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "Fitxers adjunts xifrats/signats"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "Fitxer adjunt xifrat"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "Fitxers adjunts xifrats"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "Fitxer adjunt signat"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "Fitxers adjunts signats"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "El missatge no s'ha signat perquè no hi ha una clau secreta per a %@\n\nAssegureu-vos que la clau secreta per a aquesta adreça existeix al GPG Keychain. Afegiu una nova identitat d'usuari a la clau existent per a aquesta adreça si cal, o creeu-ne una de nova.\n\nSi existeix una clau per a aquesta adreça, assegureu-vos que l'adreça a Mail.app > Preferències > Comptes és correcta i coincideix exactament amb l'adreça de la vostra clau."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "El missatge no s'ha pogut xifrar, perquè no hi ha claus públiques disponibles per a les següents adreces: %@.\n\nEmpreu el GPG Keychain per a cercar i importar les claus de les adreces anteriors."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "El missatge no s'ha xifrat. Cal indicar com a mínim un destinatari."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Xifrat"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signat"; +"MESSAGE_VIEW_PGP_PART" = "Part de PGP"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "El GPGMail està llest."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "La instal·lació de MacGPG treballa sense cap error."; +"GPG_STATUS_NOT_FOUND_TITLE" = "El MacGPG no es troba instal·lat. Comproveu la instal·lació."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Baixeu l'instal·lador de GPG Suite a https://www.gpgtools.org per a instal·lar totes les eines del GPG Suite."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Reviseu la instal·lació i la configuració."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Baixeu l'instal·lador de GPG Suite a https://www.gpgtools.org per a instal·lar totes les eines del GPG Suite."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Advertència: Si desactiveu aquesta opció, es podria filtrar informació sensible al escriure un missatge"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "Si l'opció «Emmagatzema esborranys al servidor» està activada als vostres comptes, el Mail emmagatzemarà automàticament els esborranys al servidor de correu al escriure un missatge.\nSi desactiveu «Xifra els esborranys», aquests s'emmagatzemaran en text simple (sense xifrar) de manera que qualsevol amb accés al servidor de correu els podrà llegir.\n\nSi manteniu activada «Xifra els esborranys», aquests es xifraran abans d'emmagatzemar-se en un servidor de correu, i sereu l'única persona que els podrà llegir.\n\nEncara voleu desactivar «Xifra els esborranys»?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Desactiva el xifratge"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel·la"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "S'han trobat diverses instal·lacions del GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "El GPGMail ha detectat diverses instal·lacions en les ubicacions següents, que donarà lloc a un error de manera immediata:\n\n%@\n\nSuprimiu el GPGMail.mailbundle d'una de les ubicacions i reinicieu el Mail."; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Tanca el Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "No s'ha trobat el Libmacgpg"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "No s'ha trobat el Libmacgpg al vostre sistema. Baixeu i instal·leu el GPG Suite des de https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Algú ha manipulat la instal·lació de GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "Per a mantenir-vos segur, el GPGMail no es carregarà!\n\nReinstal·leu el GPG Suite des de https://gpgtools.org per assegurar-vos que teniu una versió original nostra!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "No s'ha carregat la configuració predeterminada de GPGMail!"; +NO_DEFAULTS_MESSAGE = "El GPG Suite no funciona com deuria.\n\nBaixeu i reinstal·leu GPG Suite des de https://gpgtools.org\n\nSi el problema continua, contacteu amb nosaltres a https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "La signatura del missatge ha fallat perquè un pinentry s'ha fet malbé!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, l'eina responsable de demanar la contrasenya, sembla que s'ha fet malbé.\n\nPer a corregir el problema, reinstal·leu GPG Suite des de https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Per culpa d'un defecte de l'agent GPG no s'ha signat el missatge!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "L'agent GPG, una part essencial de GPG, sembla que s'ha fet malbé.\n\nPer corregir el problema, reinstal·leu GPG Suite des de https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "El missatge no s'ha signat perquè ha hagut un error de comunicació amb l'agent GPG!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "És impossible contactar amb l'agent GPG per a sol·licitar la contrasenya.\n\nPer a corregir el problema, reinstal·leu GPG Suite des de https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "El missatge no s'ha signat perquè ha ocorregut un error desconegut"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Malauradament, no podem gestionar l'error en aquest punt."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "El xifratge del missatge ha fallat perquè hi hagut un error desconegut"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Malauradament, el GPGMail no pot gestionar l'error en aquest punt."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Heu introduït incorrectament la contrasenya massa vegades."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "La signatura del missatge s'ha avortat perquè heu introduït incorrectament la contrasenya 3 vegades."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nSi el problema persisteix, contacteu amb nosaltres a https://gpgtools.tenderapp.com amb la descripció d'error:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Heu interromput el desxifrat del missatge"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "El missatge no s'ha desxifrat perquè heu cancel·lat la sol·licitud de contrasenya."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Heu interromput el desxifrar del fitxer adjunt"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "El fitxer adjunt no s'ha desxifrat perquè heu cancel·lat la sol·licitud de contrasenya."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "El GPG Suite no funciona com deuria"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Ha fallat el procés de desxifratge del missatge.\n\nReinstal·leu el GPG Suite des de https://gpgtools.org.\n\nSi el problema persisteix, contacteu amb nosaltres a https://gpgtools.tenderapp.com/ i inclogueu la informació relacionada amb el mal funcionament del servei xpc."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "El GPG Suite no funciona com deuria"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Ha fallat el procés de desxifratge del fitxer adjunt.\n\nReinstal·leu el GPG Suite des de https://gpgtools.org.\n\nSi el problema persisteix, contacteu amb nosaltres a https://gpgtools.tenderapp.com/ i inclogueu la informació relacionada amb el mal funcionament del servei xpc."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "El GPG Suite no funciona com deuria"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "La verificació del missatge ha fallat.\n\nReinstal·leu el GPG Suite des de https://gpgtools.org.\n\nSi el problema persisteix, contacteu amb nosaltres a https://gpgtools.tenderapp.com/ i inclogueu la informació relacionada amb el mal funcionament del servei xpc."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "El GPG Suite no funciona com deuria"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "La verificació del fitxer adjunt ha fallat.\n\nReinstal·leu el GPG Suite des de https://gpgtools.org.\n\nSi el problema persisteix, contacteu amb nosaltres a https://gpgtools.tenderapp.com/ i inclogueu la informació relacionada amb el mal funcionament del servei xpc."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Ha fallat la signatura del missatge per un problema durant la sol·licitud de contrasenya"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "El pinentry, l'eina responsable de demanar la contrasenya, sembla que s'ha fet malbé.\n\nPer a corregir el problema, reinstal·leu el GPG Suite des de https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "La signatura del missatges ha fallat perquè hi ha un problema en la instal·lació del GPGMail."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Per a corregir el problema, reinstal·leu el GPG Suite des de https://gpgtools.org.\n\nSi el problema persisteix, contacteu amb nosaltres a https://gpgtools.tenderapp.com/ i inclogueu la informació relacionada amb el mal funcionament del servei xpc."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Ha fallat el desxifratge del missatge perquè un pinentry no funciona"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "El pinentry, l'eina responsable de demanar la contrasenya, sembla que s'ha fet malbé.\n\nPer a corregir el problema, reinstal·leu el GPG Suite des de https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Ha fallat el desxifratge del fitxer adjunt per un pinentry defectuós"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "El pinentry, l'eina responsable de demanar la contrasenya, sembla que s'ha fet malbé.\n\nPer a corregir el problema, reinstal·leu el GPG Suite des de https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Atenció: Esteu a punt d'enviar una resposta no xifrada a un missatge xifrat"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "És impossible xifrar la resposta, perquè falta la clau pública per al següent receptor:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "És impossible xifrar la resposta, perquè falten les claus públiques per als següents receptors:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Si decidiu continuar, la resposta s'enviarà sense xifrar. Per tant, podria filtrar-se informació confidencial, posant-vos a tots els implicats en risc."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nSi realment voleu enviar la resposta sense xifrar, suprimiu qualsevol comunicació prèvia inclosa en la resposta abans d'enviar-la."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Altrament, cerqueu i importeu les claus públiques corresponents utilitzant el GPG Keychain, per tal d'enviar la resposta xifrada."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Altrament, cerqueu i importeu la clau pública corresponent utilitzant el GPG Keychain, per tal d'enviar la resposta xifrada."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Envia igualment"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel·la"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Atenció: Aneu a reenviar una versió no xifrada d'un missatge xifrat."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "No és possible xifrar el missatge que aneu a reenviar, perquè falta la clau pública del destinatari següent:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "No és possible xifrar el missatge que aneu a reenviar, perquè falten les claus públiques dels destinataris següents:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "Si decidiu continuar, el missatge que aneu a reenviar s'enviarà sense xifrar. Per tant, podria filtrar-se informació confidencial, posant-vos a tots els implicats en risc."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Altrament, cerqueu i importeu les claus públiques corresponents utilitzant el GPG Keychain, per tal de reenviar una versió xifrada del missatge."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Altrament, cerqueu i importeu la clau pública corresponent utilitzant el GPG Keychain, per tal de reenviar una versió xifrada del missatge."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Reenvia'l igualment"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel·la"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Mètode de seguretat: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Signa"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "No ho signes"; + diff --git a/Resources/ca.lproj/GPGMailPreferences.strings b/Resources/ca.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..a7a5db61 --- /dev/null +++ b/Resources/ca.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Actualitzacions"; +"728.title" = "Composició"; +"733.ibShadowedToolTip" = "Preguntes més freqüents."; +"734.alternateTitle" = "Preguntes més freqüents"; +"734.title" = "Base de coneixements"; +"781.title" = "Xifra els esborranys"; +"834.title" = "Botó"; +"1051.ibShadowedToolTip" = "Si teniu cap altra pregunta."; +"1053.title" = "Notifica un problema"; +"0PS-Wm-gKl.title" = "Comprova-ho ara"; +"0Th-7E-Y7P.title" = "Versió: xxx"; +"2ul-d0-5ir.title" = "Signa els correus nous"; +"80G-ZN-hjm.title" = "Comprova automàticament si hi ha actualitzacions "; +"8oZ-YB-M9Q.title" = "Les compilacions beta es publiquen més sovint. Les noves funcionalitats i millores es troben menys comprovades."; +"D6D-o9-63C.title" = "Mostra les notes de la versió"; +"UhD-uR-dUs.title" = "Inclou les compilacions beta"; +"q0m-y8-baf.title" = "Compilació:"; +"yJs-2y-8Cb.title" = "Xifra els correus nous"; diff --git a/Resources/ca.lproj/GPGSignatureView.strings b/Resources/ca.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..57cb4c0c --- /dev/null +++ b/Resources/ca.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Signatures"; +"25.title" = "D'acord"; +"237.title" = "nom"; +"251.title" = "Detalls"; +"252.ibShadowedNoSelectionPlaceholder" = "Sense signatura"; +"365.title" = "Nom:"; +"367.title" = "Clau"; +"369.title" = "Adreça electrònica:"; +"372.title" = "Empremta:"; +"377.title" = "Algoritme:"; +"378.title" = "Venç:"; +"379.title" = "Creat:"; +"381.title" = "Confiança del propietari:"; +"436.title" = "Creat:"; +"437.title" = "Signatura:"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Mai"; diff --git a/Resources/ca.lproj/SignatureView.strings b/Resources/ca.lproj/SignatureView.strings new file mode 100644 index 00000000..50b9737b --- /dev/null +++ b/Resources/ca.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "La signatura no és fiable."; +"VALIDITY_OK" = "La signatura és fiable."; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "La clau de la signatura ha estat revocada."; +"VALIDITY_SIGNATURE_EXPIRED" = "La signatura ha vençut."; +"VALIDITY_KEY_EXPIRED" = "La clau de la signatura ha vençut."; +"VALIDITY_KEY_REVOKED" = "La clau de la signatura ha estat revocada."; +"VALIDITY_UNKNOWN_ALGORITHM" = "La signatura s'ha creat amb un algoritme desconegut."; +"VALIDITY_NO_PUBLIC_KEY" = "La clau de la signatura no és al clauer."; +"VALIDITY_UNKNOWN_ERROR" = "La signatura ha tingut un error desconegut."; +"VALIDITY_BAD_SIGNATURE" = "La signatura no és vàlida."; diff --git a/Resources/cs.lproj/GPGAttachment.strings b/Resources/cs.lproj/GPGAttachment.strings new file mode 100644 index 00000000..7f74ddaf --- /dev/null +++ b/Resources/cs.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Ověřování podpisu selhalo."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "Tajný klíč pro ověření podpisu zprávy není ve vaši Klíčence.\n\nZkopírujte si prosím veřejný klíč %@ pomocí Klíčenky GPG."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Dešifrování přílohy selhalo."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Tajný klíč pro dešifrování zprávy není ve vaši Klíčence."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Příloha byla úspěšně dešifrována."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Poklepáním otevřete přílohu zprávy."; diff --git a/Resources/cs.lproj/GPGAttachments.strings b/Resources/cs.lproj/GPGAttachments.strings new file mode 100644 index 00000000..ebeda2f3 --- /dev/null +++ b/Resources/cs.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Okno"; +"8.title" = "Budiž"; +"210.title" = "jméno"; +"211.title" = "Podrobnosti"; +"239.title" = "Klíč"; +"240.title" = "Jméno:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Vytvořen:"; +"245.title" = "Vyprší:"; +"246.title" = "Algoritmus:"; +"247.title" = "Vlastník:"; +"256.title" = "Podpis"; +"257.title" = "Vytvořen:"; +"291.title" = "Podpis nelze ověřit."; +"293.title" = "Podpis nelze ověřit protože vyřejný klíč není ve vaší Klíčence.\nZkopírujte si prosím klíč pomocí Klíčenky GPG."; +"382.title" = "Podpis nelze ověřit."; +"383.title" = "Podpis nelze ověřit protože vyřejný klíč není ve vaší Klíčence.\nZkopírujte si prosím klíč pomocí Klíčenky GPG."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/cs.lproj/GPGMail.strings b/Resources/cs.lproj/GPGMail.strings new file mode 100644 index 00000000..5f90f72d --- /dev/null +++ b/Resources/cs.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Verze: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Nelze dešifrovat PGP zprávu."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Vyskytnul se problém při dešifrování této zprávy. Ověřte že máte platný klíš ve vaši GPG klíčence."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Nelze ověřit PGP podpis zprávy."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Vyskytnul se problém při čtení PGP podpisu této zprávy"; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP klíč pro zprávu není ve vaši Klíčence."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Zpráva obsahuje platný podpis PGP, ale PGP klíč nen ve vaší Klíčence. Přidejte ho pomocí GPG Keychain."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Pro tento PGP klíč nejsou dostupné žádné informace."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Žádné další informace o PGP klíči nejsou známy, protože naní ve vaši Klíčence. Přidejte ho pomocí GPG Keychain."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Tajný klíč k dešifrování zprávy chybí."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Dešifrování zprávy selhalo z důvodu výskytu neznámé chyby."; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Vyskytla se neznámá chyba při dešifrování zprávy.\n\nObraťte se prosím na https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Dešifrování zprávy selhalo z důvodu výskytu neznámé chyby."; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Vyskytla se neznámá chyba při dešifrování zprávy.\n\nGPG chybová zpráva:\n%@\nObraťte se prosím na nás https://gpgtools.tenderapp.com a do e-mailu vložte GPG chybovou zprávu."; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Pro zašifrování zprávy byl použit nesprávný klíč."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Zprávu nelze dešifrovat dokud k jenímu dešifrováni bude používán nesprávný klíč.\n\nObraťte se prosím na https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Zašifrovaná zpráva je poškozena."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Zašifrovaná zpráva je poškozená a nelze ji dešifrovat.\n\nObraťte se prosím na odesilatele, aby vám poslal novou kopii."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Klíč podpisu byl zneplatněn."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "VÝSTRAHA: Klíč, který byl použit k podepsání této zprávy byl zneplatněn.\n\nMěl byste obnovit klíč ID %@ v GPG Keychain, pravděpodobně bude existovat nová verze. Jestliže nový klíč bude i nadále neplatný obraťte se na odesilatele."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Klíč k tomuto podpisu zprávy není ještě v GPG Klíčence."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Zprávu nelze ověřit, dokud klíč, který byl použit k jejímu podpisu není ve vaši GPG Klíčence.\n\nNajděte klíč s ID %@ v GPG Keychain a naimportujte ho."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "Podpis zprávy byl vytvořen nepodporovaným algoritmem."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Tuto zprávu nelze ověřit, dokud nebude podpis vytvořen některým z podporovaných algoritmů.\n\nObraťte se prosím na https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "VÝSTRAHA: Podpis zprávy je neplatný!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "VÝSTRAHA: Zpráva mohla být změněna poté co byla podepsána.\n\nObraťte se na odesilatele abyste se ujistil zda se obsah zprávy shoduje s originálem.\n\nObraťte se prosím na https://gpgtools.tenderapp.com, pokud jste si skutečně jist, že zpráva nebyla změněna."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Ověřování podpisu zprávy selhalo z důvodu výskytu neznámé chyby!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Vyskytla se neznámá chyba při ověřování podpisu zprávy.\n\nObraťte se prosím na https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Chyba dat podpisu zprávy!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Podpis zprávy je neplatný a nelze ověřit.\n\nObraťte se prosím na https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Platnost klíče podpisu zprávy vypršela."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "Výstraha: Platnost klíče, který byl použit k podpisu této zprávy, vypršela.\nMůžete zkusit znovu načíst klíč ID %@ v GPG Keychain a dotázat se odesilatele proč platnost jeho klíče vypršela."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Platnost podpis zprávy vypršela."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Platnost podpisu vypršela a nelze ověřit.\n\nZeptejte se odesilatele proč platnost jeho podpisu vypršela."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "Dešifrování nebo ověření příloh %d selhalo."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Pro zobrazení podrobností klepněte prosím na ikonu přílohy v hlavičce zabezpečení zprávy."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "Ověření příloh %d selhalo."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Pro zobrazení podrobností klepněte prosím na ikonu přílohy v hlavičce zabezpečení zprávy."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "Dešifrování příloh %d selhalo."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Pro zobrazení podrobností klepněte prosím na ikonu přílohy v hlavičce zabezpečení zprávy."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "Ověřování přílohy %d selhalo."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Pro zobrazení podrobností klepněte prosím na ikonu přílohy v hlavičce zabezpečení zprávy."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "Dešifrování přílohy %d selhalo."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Pro zobrazení podrobností klepněte prosím na ikonu přílohy v hlavičce zabezpečení zprávy."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Tajný klíč pro dešifrování přílohy chybí."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Dešifrování selhalo z důvodu výskytu neznámé chyby!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Vyskytla se neznámá chyba při dešifrování přílohy.\n\nObraťte se prosím na https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Dešifrování selhalo z důvodu výskytu neznámé chyby!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Vyskytla se neznámá chyba při dešifrování přílohy.\n\nGPG chybová zpráva:\n%@\nObraťte se prosím na nás https://gpgtools.tenderapp.com a do e-mailu vložte GPG chybovou zprávu."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "K zašifrování přílohy byl použit chybný klíč."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Přílohu nelze dešifrovat, dokud je k jejímu dešifrování používán nesprávný veřejný klíč.\n\nObraťte se na https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Zašifovaná příloha je poškozena."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Zašifrovaná příloha je poškozena a nelze ji dešifrovat.\n\nObraťte se na odesilatele aby vám zprávu poslal znovu."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Klíč podpisu byl zneplatněn."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "Klíč, který byl použit k podepsání této přílohy byl zneplatněn.\n\nMěl byste obnovit klíč ID %@ v GPG Keychain, pravděpodobně bude existovat nová verze. Jestliže nový klíč bude i nadále neplatný obraťte se na odesilatele."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Klíč podpisu není ve vaši GPG Klíčence."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Přílohu nelze ověřit, dokud klíč, který byl použit k jejímu podpisu není ve vaši GPG Klíčence.\n\nNajděte klíč s ID %@ v GPG Keychain a naimportujte ho."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "Podpis přílohy byl vytvořen nepodporovaným algoritmem."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Přílohu nelze ověřit, dokud nebude podpis vytvořen některým z podporovaných algoritmů.\n\nObraťte se prosím na https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "VÝSTRAHA: Podpis přílohy je neplatný!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "VÝSTRAHA: Příloha mohla být změněna poté co byla podepsána.\n\nObraťte se na odesilatele abyste se ujistil zda se obsah přílohy shoduje s originálem.\n\nObraťte se prosím na https://gpgtools.tenderapp.com, pokud jste si skutečně jist, že příloha nebyla změněna."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Ověřování podpisu se nezdařilo z důvodu výskytu neznámé chyby!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Vyskytla se neznámá chyba při ověřování podpisu přílohy.\n\nObraťte se prosím na https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Chyba dat v podpisu!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Podpis přílohy není platný a nelze ho ověřit.\n\nObraťte se prosím na https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Platnost klíče podpisu vypršela."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "VÝSTRAHA: Platnost klíče, který byl použit podpisu této přílohy vypršela.\n\nMůžete zkusit obnovit klíč s ID %@ v GPG Keychain a obrátit se na odesilatele, proč platnost jeho klíče vypršela."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Platnost podpisu přílohy vypršela."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Platnost podpisu přílohy vypršela a nelze ho ověřit.\n\nObraťte se na odesilatele, proč platnost jeho podpisu vypršela."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Částečně zašifrováno"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Částečně podepsáno"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Zašifrováno"; +"MESSAGE_IS_PGP_SIGNED" = "Podepsáno"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Chybný podpis"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Podepsáno neznámým klíčem"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Podepsáno zneplatněným klíčem"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Chybný podpis"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Podepsáno"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Nebyl nalezen žádný podpis"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "zašifrovaná/podepsaná příloha"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "zašifrované/podepsané přílohy"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "zašifrovaná příloha"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "zašifrované přílohy"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "podepsaná příloha"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "podepsané přílohy"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "Zprávu nelze podepsat, dokud nebude dostupný soukromý klíč pro %@.\n\nUjistěte se prosím, že soukromý klíč pro tuto adresu existuje v Klíčence GPG. Pokud je to nutné, přidejte nové UID k existujícímu klíči pro tuto adresu nebo vytvořte pro tuto adresu nový klíč.\n\nJestliže klíč pro tuto adresu existuje, přesvědčte se, že adresa v aplikaci Mail.app > Předvolby > Účty je správná a přesně odpovídá adrese ve vašem klíči."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Zprávu nelze zašifrovat, dokud nebude dostupný veřejný klíč pro následující adresy: %@.\n\nPoužijte prosím GPG Keychain pro vyhledání a import klíčů pro tyto adresy."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Zprávu nelze zašifrovat. Musíte nejprve zadat nejméně jednoho příjemce."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Zašifrováno"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Podepsáno"; +"MESSAGE_VIEW_PGP_PART" = "PGP část"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail je připraven."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Vaše instalace MacGPG pracuje správně a bez chyb."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Zkopírujte si prosím instalítor GPG Suite z http://www.gpgtools.org a nainstalujte vše z balíku GPG Suite."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Ověřte prosím vaši instalaci a nastavení."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Zkopírujte si prosím instalítor GPG Suite z http://www.gpgtools.org a nainstalujte vše z balíku GPG Suite."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Varování: Deaktivace této možnosti by mohla vést k úniku citlivých informací při psaní zprávy"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Vypnout šifrování"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Zrušit"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Nalezeno více instalací GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "Bylo nalezeno více instalací GPGMail na následujících místech, což může vést k nepředvídatelným selháním a pádům:\n\n%@\n\nOdstraňte prosím GPGMail.mailbundle z některých umístění a znovu spusťte aplikaci Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Ukončit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Knihovna Libmacgpg nebyla nalezena"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Někdo manipuloval s instalací GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "Z důvodu bezpečnosti nebyl GPGMail načten. \n\nNainstalujte si prosím GPG Suite z našeho důvěryhodného zdroje https://gpgtools.org."; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Nelze načíst výchozí nastavení GPGMail!"; +NO_DEFAULTS_MESSAGE = "GPGMail nepracuje podle očekávání.\n\nProsím přeinstalujte GPG Suite z důvěryhodného zdroje https://gpgtools.org.\n\nPokud problém přetrvává, obraťte se na https://gpgtools.tenderapp.com/ "; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Podepisování Vaši zprávy selhalo z důvodu selhání komponenty pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "Pinentry – nástroj odpovědný za vyžádání vašeho hesla je pravděpodobně poškozen.\n\nNainstalujte prosím znovu nejnovější verzi GPGTools z https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Podepisování vaši zprávy selhalo z důvodu chyby agenta GPG!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "Klíčová komponenta GPG agent je pravděpodobně poškozena.\n\nNainstalujte prosím znovu nejnovější verzi GPGTools z https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Podepisování vaši zprávy selhalo z důvodu chyby v komunikaci s agentem GPG!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "Komunikace s komponentou GPG agent selhala.\n\nPro vyřešnení problému přeinstalujte GPG Suite z důvěryhodného zdroje https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Podepisování vaši zprávy selhalo z důvodu výskytu neznámé chyby!"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Naneštěstí se nyní nelze z této chyby zotavit."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Šifrování vaši zprávy selhalo z důvodu výskytu neznámé chyby."; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Naneštěstí GPGMail se nyní nedokáže z této chyby zotavit."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Zadal jste několikrát chybné heslo."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Podepisování vaši zprávy bylo přerušeno, protože jste třikrát chybně zadal své heslo."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nPokud bude problém přetrvávat, obraťte se prosím na podporu https://gpgtools.tenderapp.com/ s následujícím popisem chyby:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Přerušil jste dešifrování zprávy."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Zprávu nelze dešifrovat, protože jste přerušil zadávání hesla."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Přerušil jste dešifrování přílohy."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Přílohu zprávy nelze dešifrovat, protože jste přerušil zadávání hesla."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite nepracuje podle očekávání"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Dešifrování zprávy selhalo.\n\nProsím přeinstalujte GPG Suite z důvěryhodného zdroje https://gpgtools.org.\n\nPokud problém přetrvává, obraťte se na https://gpgtools.tenderapp.com/ a přiložte informaci o tom, že služba XPC nepracuje správně."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite nepracuje podle očekávání"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Dešifrování přílohy zprávy selhalo.\n\nProsím přeinstalujte GPG Suite z důvěryhodného zdroje https://gpgtools.org.\n\nPokud problém přetrvává, obraťte se na https://gpgtools.tenderapp.com/ a přiložte informaci o tom, že služba XPC nepracuje správně."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite nepracuje podle očekávání"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Ověřování zprávy selhalo.\n\nProsím přeinstalujte GPG Suite z důvěryhodného zdroje https://gpgtools.org.\n\nPokud problém přetrvává, obraťte se na https://gpgtools.tenderapp.com/ a přiložte informaci o tom, že služba XPC nepracuje správně."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite nepracuje podle očekávání"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Ověřování přílohy zprávy selhalo.\n\nProsím přeinstalujte GPG Suite z důvěryhodného zdroje https://gpgtools.org.\n\nPokud problém přetrvává, obraťte se na https://gpgtools.tenderapp.com/ a přiložte informaci o tom, že služba XPC nepracuje správně."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Podepisování vaši zprávy selhalo z důvodu problému během zadání hesla."; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "Pinentry – nástroj odpovědný za vyžádání vašeho hesla nepracuje správně.\n\nNainstalujte prosím znovu nejnovější verzi GPGTools z https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Podepisování vaši zprávy selhalo z důvodu chybné instalace GPGMail!"; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Pro vyřešení tohoto problému, prosím přeinstalujte GPG Suite z důvěryhodného zdroje https://gpgtools.org.\n\nPokud problém přetrvává, obraťte se na https://gpgtools.tenderapp.com/ a přiložte informaci o tom, že služba XPC nepracuje správně."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Dešifrování zprávy selhalo z důvodu selhání komponenty pinentry."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "Pinentry – nástroj odpovědný za vyžádání vašeho hesla je pravděpodobně poškozen.\n\nNainstalujte prosím znovu nejnovější verzi GPGTools z https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Dešifrování přílohy zprávy selhalo z důvodu selhání komponenty pinentry."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "Pinentry – nástroj odpovědný za vyžádání vašeho hesla je pravděpodobně poškozen.\n\nNainstalujte prosím znovu nejnovější verzi GPGTools z https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Upozornění: Chystáte se odeslat nezabezpečeně odpověď na zabezpečenou zprávu!"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Nelze zašifrovat vaši odpověď, protože veřejný klíč pro následujícího adresáta chybí:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Nelze zašifrovat vaši odpověď, protože veřejný klíč pro následující adresáty chybí:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Pokud budete pokračovat, vaše odpověď se odešle nezašifrovaně. Výsledkem může být únik informací, který může vystavit riziku vás i adresáta."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nPokud si skutečně přejete odeslat tuto nezabezpečenou zprávu, odstraňte prosím ve vaší odpovědi před odesláním veškerý text z předchozí komunikace."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "V opačném případě, vyhledejte a naimportujte odpovídající veřejné klíče pomocí GPG Keychain, aby bylo možné odeslat odpověď šifrované."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Přesto odeslat"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Zrušit"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Zrušit"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Metoda: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Podepsat"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Nepodepisovat"; + diff --git a/Resources/cs.lproj/GPGMailPreferences.strings b/Resources/cs.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..7af401b8 --- /dev/null +++ b/Resources/cs.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Aktualizace"; +"728.title" = "Příprava"; +"733.ibShadowedToolTip" = "Často kladené dotazy."; +"734.alternateTitle" = "Často kladené dotazy"; +"734.title" = "Kniha znalostí"; +"781.title" = "Šifrovat rozepsané zprávy"; +"834.title" = "Tlačítko"; +"1051.ibShadowedToolTip" = "Jestliže máte nějakou další otázku."; +"1053.title" = "Nahlásit problém"; +"0PS-Wm-gKl.title" = "Ověřit nyní"; +"0Th-7E-Y7P.title" = "Verze: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Automaticky ověřovat aktualizace"; +"8oZ-YB-M9Q.title" = "Beta verze jsou vydávány častěji, ale nové vlastnosti a vylepšení nejsou řádně otestovány."; +"D6D-o9-63C.title" = "Zobrazit Poznámky k vydání"; +"UhD-uR-dUs.title" = "Včetně beta verzí"; +"q0m-y8-baf.title" = "Sestavení:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/cs.lproj/GPGSignatureView.strings b/Resources/cs.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..1170044f --- /dev/null +++ b/Resources/cs.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Podpisy"; +"25.title" = "Budiž"; +"237.title" = "jméno"; +"251.title" = "Podrobnosti"; +"252.ibShadowedNoSelectionPlaceholder" = "Bez podpisu"; +"365.title" = "Jméno:"; +"367.title" = "Klíč"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algoritmus:"; +"378.title" = "Vyprší:"; +"379.title" = "Vytvořeno:"; +"381.title" = "Vlastník:"; +"436.title" = "Vytvořeno:"; +"437.title" = "Podpis"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/cs.lproj/SignatureView.strings b/Resources/cs.lproj/SignatureView.strings new file mode 100644 index 00000000..2420545d --- /dev/null +++ b/Resources/cs.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Podpis není důvěryhodný"; +"VALIDITY_OK" = "Podpis je důveryhodný"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Klíč k tomuto podpisu byl zneplatněn."; +"VALIDITY_SIGNATURE_EXPIRED" = "Platnost podpisu vypršela."; +"VALIDITY_KEY_EXPIRED" = "Platnost klíče podpisu vypršela."; +"VALIDITY_KEY_REVOKED" = "Klíč k tomuto podpisu byl zneplatněn."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Podpis byl vytvořen neznámým algoritmem."; +"VALIDITY_NO_PUBLIC_KEY" = "Klíč k tomuto podpisu není ve vaší Klíčence"; +"VALIDITY_UNKNOWN_ERROR" = "Neznámá chyba podpisu."; +"VALIDITY_BAD_SIGNATURE" = "Tento podpis je neplatný."; diff --git a/Resources/da.lproj/GPGAttachment.strings b/Resources/da.lproj/GPGAttachment.strings new file mode 100644 index 00000000..e074b403 --- /dev/null +++ b/Resources/da.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Signaturen kunne ikke bekræftes."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "Den offentlige nøgle til at bekræfte signaturen af denne vedhæftede fil er ikke i din nøglering.\n\nHent din offentlige nøgle %@ med GPG Nøglering."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Kunne ikke dekryptere den vedhæftede fil."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Den hemmelige nøgle til at dekryptere denne vedhæftede fil er ikke i din nøglering."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Den vedhæftede fil er blevet dekrypteret."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Åbn en vedhæftet fil i beskeden ved at dobbelt-klikke."; diff --git a/Resources/da.lproj/GPGAttachments.strings b/Resources/da.lproj/GPGAttachments.strings new file mode 100644 index 00000000..0b918ce7 --- /dev/null +++ b/Resources/da.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Vindue"; +"8.title" = "OK"; +"210.title" = "navn"; +"211.title" = "Detaljer"; +"239.title" = "Nøgle"; +"240.title" = "Navn:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Oprettet:"; +"245.title" = "Udløber:"; +"246.title" = "Algoritme:"; +"247.title" = "Tillid til ejeren:"; +"256.title" = "Signatur"; +"257.title" = "Oprettet:"; +"291.title" = "Signaturen kunne ikke bekræftes."; +"293.title" = "Signaturen kunne ikke bekræftes, fordi den offentlige nøgle ikke er i din nøglering.\nHent nøglen med GPG Nøglering."; +"382.title" = "Signaturen kunne ikke bekræftes."; +"383.title" = "Signaturen kunne ikke bekræftes, fordi den offentlige nøgle ikke er i din nøglering.\nHent nøglen med GPG Nøglering."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/da.lproj/GPGMail.strings b/Resources/da.lproj/GPGMail.strings new file mode 100644 index 00000000..0ac2cbe9 --- /dev/null +++ b/Resources/da.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Version: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Kan ikke dekryptere PGP besked."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Der er problemer med at dekryptere denne besked. Kontroller at du har en gyldig nøgle i din GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Kan ikke bekræfte PGP-meddelelsens signatur."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Der var et problem med at læse PGP signaturen til denne besked."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP nøglen til denne besked er ikke i din nøglering."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Beskeden har en gyldig PGP signatur, men PGP nøglen er ikke i din nøglering. Brug GPG Keychain til at tilføje den."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Der findes ingen information om denne PGP nøgle."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Der kendes ikke yderligere information om denne PGP nøgle, fordi den ikke er i din nøglering."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Den private nøgle til at dekryptere beskeden mangler."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "Ingen af de følgende hemmelige nøgler findes i din nøglering (%@). Den hemmelige nøgle er nødvendig for at dekryptere denne besked.\n\nTjek med afsenderen, at de har brugt din rigtige offentlige nøgle.\nTjek en backup af din nøglering, og prøv at importere den hemmelige nøgle derfra."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Dekryptering mislykkedes på grund af en ukendt fejl!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "En ukendt fejl opstod, da beskeden blev forsøgt dekrypteret.\n\nKontakt os venligst på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Dekryptering mislykkedes på grund af en ukendt fejl!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "En ukendt fejl opstod, da beskeden blev forsøgt dekrypteret.\n\nGPG fejlmeddelelse:\n%@\nKontakt os venligst angående denne fejl på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Forkert nøgle brugt til at kryptere denne besked."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Denne besked kunne ikke dekrypteres, da den forkerte offentlige nøgle blev brugt til at kryptere den.\n\nKontakt os venligst på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Den krypterede besked er beskadiget."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Denne krypterede besked er beskadiget og kan ikke dekrypteres.\n\nBed afsenderen om at sende beskeden igen."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signaturens nøgle er blevet tilbagekaldt."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "VIGTIGT: Den nøgle, der blev brugt til at signere denne besked, er blevet tilbagekaldt.\n\nDu bør forny nøglen med nøgle ID %@ i GPG Keychain for at tjekke, om der er en ny nøgle tilgængelig. Hvis den nye nøgle stadig er tilbagekaldt skal du spørge afsenderen, hvorfor nøglen blev tilbagekaldt."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Nøglen til denne signatur er ikke i din GPG nøglering."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Beskeden kunne ikke bekræftes, da nøglen brugt til at signere beskeden ikke er i din GPG Keychain.\n\nSøg efter nøglen med ID %@ i GPG Keychain og importer den for at bekræfte meddelelsen."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "Beskedens signatur blev lavet med en algoritme, der ikke er understøttet."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Denne besked kune ikke bekræftes, da signaturen blev lavet med en algoritme, der ikke er understøttet.\n\nKontakt os venligst på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "VIGTIGT: Signaturen på denne besked er ugyldig!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Denne besked kan være blevet ændret efter signaturen blev lavet.\n\nKontakt afsenderen for at bekræfte, at beskedens indhold passer med originalen.\n\nKontakt os på\nhttps://gpgtools.tenderapp.com/\nhvis du er sikker på, at beskeden ikke er blevet ændret."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Bekræftelse af beskeden mislykkedes på grund af en ukendt fejl!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "En ukendt fejl opstod da beskedens signatur blev forsøgt bekræftet.\n\nKontakt os på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Datafejl i beskedens signatur!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Beskedens signatur er ugyldig og kunne ikke bekræftes.\n\nKontakt os på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Nøglen til beskedens signatur er udløbet."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "VIGTIGT: Nøglen, der blev brugt til at signere denne besked, er udløbet.\n\nDu kan prøve at forny nøglen med ID %@ i GPG Keychain og spørge afsenderen, hvorfor nøglen er udløbet. "; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Beskedens signatur er udløbet."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Signaturen er udløbet og kunne ikke bekræftes.\n\nSpørg afsenderen, hvorfor signaturen er udløbet."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d vedhæftede filer kunne ikke dekrypteres eller bekræftes."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Klik på den vedhæftede fils ikon i beskedhovedet for flere detaljer."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d vedhæftede filer kunne ikke bekræftes."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Klik på den vedhæftede fils ikon i beskedhovedet for flere detaljer."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d vedhæftede filer kunne ikke dekrypteres."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Klik på den vedhæftede fils ikon i beskedhovedet for flere detaljer."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d vedhæftet fil kunne ikke bekræftes."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Klik på den vedhæftede fils ikon i beskedhovedet for flere detaljer."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d vedhæftet fil kunne ikke dekrypteres."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Klik på den vedhæftede fils ikon i beskedhovedet for flere detaljer."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Den private nøgle til at dekryptere den vedhæftede fil mangler."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "Ingen af de følgende hemmelige nøgler findes i din nøglering (%@). Den hemmelige nøgle er nødvendig for at dekryptere denne vedhæftede fil.\n\nTjek med afsenderen, at de har brugt din rigtige offentlige nøgle.\nTjek en backup af din nøglering, og prøv at importere den hemmelige nøgle derfra."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Dekryptering mislykkedes på grund af en ukendt fejl!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "En ukendt fejl opstod, da den vedhæftede fil blev forsøgt dekrypteret.\n\nKontakt os på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Dekryptering mislykkedes på grund af en ukendt fejl!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "En ukendt fejl opstod da den vedhæftede fil blev forsøgt dekrypteret.\n\nGPG fejlbesked:\n%@\nKontakt os venligst angående denne fejl på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Den forkerte nøgle blev brugt til at kryptere denne vedhæftede fil."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Denne vedhæftede fil kunne ikke dekrypteres, da den forkerte offentlige nøgle blev brugt til at kryptere den.\n\nKontakt os på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Den krypterede vedhæftede fil er beskadiget."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Den krypterede vedhæftede fil er beskadiget og kan ikke dekrypteres.\n\nBed afsenderen sende beskeden igen."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signaturens nøgle er blevet tilbagekaldt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "VIGTIGT: Nøglen, der blev brugt til at signere denne vedhæftede fil, er blevet tilbagekaldt.\n\nDu bør forny nøglen med ID %@ i GPG Keychain. Hvis den nye stadig er tilbagekaldt skal du spørge afsenderen, hvorfor nøglen blev tilbagekaldt."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Signaturens nøgle er ikke i din GPG nøglering."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Signaturen på den vedhæftede fil kunne ikke bekræftes, da den nøgle, som blev brugt til signering, ikke er i din GPG nøglering.\n\nSøg efter nøglen med ID %@ i GPG Keychain og importer den for at bekræfte den vedhæftede fil."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "Signaturen til den vedhæftede fil blev lavet med en algoritme, der ikke understøttes."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Den vedhæftede fil kunne ikke bekræftes, da signaturens nøgle er blevet lavet med en algoritme, der ikke er understøttet.\n\nKontakt os på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "VIGTIGT: Signaturen til den vedhæftede fil er ugyldig!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Denne vedhæftede fil er blevet ændret efter signaturen blev lavet.\n\nKontakt afsenderen og tjek, at filens indhold svarer til originalen.\n\nKontakt os på\nhttps://gpgtools.tenderapp.com/\nhvis du er sikker på, at den vedhæftede fil ikke er blevet ændret."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Bekræftelse af beskeden mislykkedes på grund af en ukendt fejl!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Der opstod en ukendt fejl ved bekræftelse af signaturen for denne vedhæftede fil.\n\nKontakt os på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Datafejl i signaturen!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Signaturen for denne vedhæftede fil er ugyldig, og kunne ikke bekræftes.\n\nKontakt os på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Signaturens nøgle er udløbet."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "VIGTIGT: Den nøgle, der blev brugt til at signere denne vedhæftede fil, er udløbet.\n\nDu kan prøve at forny nøglen med ID %@ i GPG Keychain og at spørge afsenderen, hvorfor nøglen er udløbet."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Signaturen til denne vedhæftede fil er udløbet."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Signaturen til den vedhæftede fil er udløbet, og kunne ikke bekræftes.\n\nSpørg afsenderen, hvorfor signaturen er udløbet."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Delvist krypteret"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Delvist signeret"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Krypteret"; +"MESSAGE_IS_PGP_SIGNED" = "Signeret"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Ugyldig signatur"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signeret med ukendt nøgle"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signeret med tilbagekaldt nøgle"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Ugyldig signatur"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signeret"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Ingen signatur fundet"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "krypteret/signeret vedhæftning"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "krypterede/signerede vedhæftninger"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "krypteret vedhæftning"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "krypterede vedhæftninger"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signeret vedhæftning"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signerede vedhæftninger"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "Denne besked kan ikke signeres, da der ikke er nogen privat nøgle til %@.\n\nTjek at der findes en privat nøgle i GPG Keychain. Tilføj et nyt bruger ID til en eksisterende nøgle til denne adresse hvis nødvendigt, eller opret en ny nøgle til adressen.\n\nHvis der findes en nøgle til adressen, så tjek at adressen i Mail.app > indstillinger > Konti er korrekt og passer præcist med adressen i din nøgle."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Denne besked kan ikke krypteres, da der ikke er nogen offentlige nøgler tilgængelige til følgende adresser: %@\n\nBrug GPG Keychain til at finde og importere nøglerne til de adresser."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Denne besked kan ikke krypteres. Du skal angive mindst én modtager først."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Krypteret"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signeret"; +"MESSAGE_VIEW_PGP_PART" = "PGP del"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail er klar."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Din MacGPG installation fungerer fejlfrit."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Hent og gen-installer GPG Suiten fra https://www.gpgtools.org for at sikre, at alle påkrævede komponenter er installerede."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Tjek din installation og konfiguration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Hent og gen-installer GPG Suiten fra https://www.gpgtools.org for at sikre, at alle påkrævede komponenter er installerede."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Advarsel: Hvis du slår denne indstilling fra, kan følsomme oplysninger blive lækket, mens du skriver en besked"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Slå kryptering fra"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Annuller"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Der findes flere installationer af GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail har fundet flere installationer i følgende mapper, hvilket vil føre til øjeblikkeligt nedbrud:\n\n%@\n\nFjern filen GPGMail.mailbundle i en af mapperne, og genstart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Slut Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg blev ikke fundet"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Nogen har pillet ved din installation af GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "For at beskytte dig vil GPGMail ikke blive indlæst!\n\nGeninstallér GPG Suiten fra https://gpgtools.org for at være sikker på, at du har en original version fra os!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Kunne ikke indlæse GPGMail standardindstillinger!"; +NO_DEFAULTS_MESSAGE = "GPGMail virker ikke som forventet.\n\nHent og gen-installer GPG Suiten fra https://gpgtools.org\n\nHvis problemet fortsætter, så kontakt os på https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Underskrivning af din besked fejlede, fordi pinentry er i stykker!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, værktøjet til at spørge efter din adgangskode, lader til at være i stykker.\n\nFor at løse dette problem skal du geninstallere GPG Suiten fra https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Underskrivning af din besked fejlede på grund af defekt GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "GPG agenten, der er en afgørende del af GPG, lader til at være i stykker.\n\nFor at løse dette problem skal du geninstallere GPG Suiten fra https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Underskrivning af din besked fejlede på grund af en kommunikationsfejl med GPG agenten!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "Det var ikke muligt at snakke med GPG agenten for at bede om din adgangskode.\n\nFor at løse dette problem skal du geninstallere GPG Suiten fra https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Underskrivning af din besked fejlede af en ukendt grund"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Desværre kan vi ikke håndtere denne fejl på nuværende tidspunkt."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Kryptering af din besked fejlede af en ukendt grund"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Desværre kan GPGMail ikke håndtere denne fejl på nuværende tidspunkt."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Du har skrevet den forkerte adgangskode for mange gange."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Underskrivning af din besked blev afbrudt, fordi du har skrevet den forkerte adgangskode 3 gange."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nHvis problemet fortsætter, kontakt os på https://gpgtools.tenderapp.com/ og angiv følgende fejlbeskrivelse:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Du afbrød dekrypteringen af beskeden."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Beskeden kunne ikke dekrypteres, fordi du afbrød anmodningen om adgangskode."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Du afbrød dekryptering af den vedhæftede fil"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Den vedhæftede fil kunne ikke dekrypteres, fordi du afbrød anmodningen om adgangskode."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suiten virker ikke som forventet"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Dekryptering af beskeden mislykkedes.\n\nGeninstaller GPG Suiten fra https://gpgtools.org.\n\nHvis problemet fortsætter, så kontakt os på https://gpgtools.tenderapp.com/, og skriv at xpc servicen ikke fungerer rigtigt."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suiten virker ikke som forventet"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Dekryptering af den vedhæftede fil mislykkedes.\n\nGeninstaller GPG Suiten fra https://gpgtools.org.\n\nHvis problemet fortsætter, så kontakt os på https://gpgtools.tenderapp.com/, og skriv at xpc servicen ikke fungerer rigtigt."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suiten virker ikke som forventet"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifikation af beskeden mislykkedes.\n\nGeninstaller GPG Suiten fra https://gpgtools.org.\n\nHvis problemet fortsætter, så kontakt os på https://gpgtools.tenderapp.com/, og skriv at xpc servicen ikke fungerer rigtigt."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suiten virker ikke som forventet"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifikation af den vedhæftede fil mislykkedes.\n\nGeninstaller GPG Suiten fra https://gpgtools.org.\n\nHvis problemet fortsætter, så kontakt os på https://gpgtools.tenderapp.com/, og skriv at xpc servicen ikke fungerer rigtigt."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signering af din besked mislykkedes på grund af et problem ved anmodning om adgangskode"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, værktøjet til at spørge efter din adgangskode, virker ikke ordentligt.\n\nFor at løse dette problem skal du geninstallere GPG Suiten fra https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "SIgnering af din besked mislykkedes på grund af et problem med din GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "For at løse problemet skal du geninstallere GPG Suiten fra https://gpgtools.org.\n\nHvis problemet fortsætter, så kontakt os på https://gpgtools.tenderapp.com/, og skriv at xpc servicen ikke fungerer rigtigt."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Dekryptering af beskeden fejlede, fordi pinentry er i stykker"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, værktøjet til at spørge efter din adgangskode, lader til at være i stykker.\n\nFor at løse dette problem skal du geninstallere GPG Suiten fra https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Dekryptering af den vedhæftede fil fejlede, fordi pinentry er i stykker"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, værktøjet til at spørge efter din adgangskode, lader til at være i stykker.\n\nFor at løse dette problem skal du geninstallere GPG Suiten fra https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Vigtigt: Du er ved at sende et ikke-krypteret svar på en krypteret besked."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Det er ikke muligt at kryptere dit svar, fordi den offentlige nøgle mangler for følgende modtager:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Det er ikke muligt at kryptere dit svar, fordi de offentlige nøgler mangler for følgende modtagere:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Hvis du vælger at fortsætte, vil dit svar blive sendt i klartekst. Som følge deraf kan fortrolig information slippe ud, hvilket er en risiko for både dig og modtagerne."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nHvis du virkelig ønsker at sende dette svar i klartekst, så fjern al forudgående korrespondance i dit svar, før du sender det."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Alternativt, find og importer de manglende offentlige nøgler med GPG Keychain for at sende svaret krypteret."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Alternativt, find og importer den manglende offentlige nøgle med GPG Keychain for at sende svaret krypteret."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send alligevel"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Annuller"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Vigtigt: Du er ved at videresende den dekrypterede version af en krypteret besked"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Det er ikke muligt at kryptere den besked, du er ved at videresende, fordi den offentlige nøgle mangler for følgende modtager:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Det er ikke muligt at kryptere den besked, du er ved at videresende, fordi de offentlige nøgler mangler for følgende modtagere:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "Hvis du vælger at fortsætte, vil den besked, du er ved at videresende, blive sendt i klartekst. Som følge deraf kan fortrolig information slippe ud, hvilket er en risiko for både dig og modtagerne."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Alternativt, find og importer de manglende offentlige nøgler med GPG Keychain for at videresende en krypteret version af beskeden."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Alternativt, find og importer den manglende offentlige nøgle med GPG Keychain for at videresende en krypteret version af beskeden."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Videresend alligevel"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Annuller"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Sikkerhedsmetode: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Underskriv"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Underskriv ikke"; + diff --git a/Resources/da.lproj/GPGMailPreferences.strings b/Resources/da.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..c2b74523 --- /dev/null +++ b/Resources/da.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Opdateringer"; +"728.title" = "Skriver"; +"733.ibShadowedToolTip" = "Ofte stillede spørgsmål (FAQ)."; +"734.alternateTitle" = "Ofte stillede spørgsmål (FAQ)"; +"734.title" = "Vidensbank"; +"781.title" = "Krypter kladder"; +"834.title" = "Knap"; +"1051.ibShadowedToolTip" = "Hvis du har andre spørgsmål."; +"1053.title" = "Rapporter problem"; +"0PS-Wm-gKl.title" = "Tjek nu"; +"0Th-7E-Y7P.title" = "Version: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Tjek for opdateringer automatisk"; +"8oZ-YB-M9Q.title" = "Beta byg bliver udgivet oftere. Nye funktioner og forbedringer er ringere testet."; +"D6D-o9-63C.title" = "Vis udgivelsesnoter"; +"UhD-uR-dUs.title" = "Medtag beta byg"; +"q0m-y8-baf.title" = "Byg:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/da.lproj/GPGSignatureView.strings b/Resources/da.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..8c95d596 --- /dev/null +++ b/Resources/da.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Signaturer"; +"25.title" = "OK"; +"237.title" = "navn"; +"251.title" = "Detaljer"; +"252.ibShadowedNoSelectionPlaceholder" = "Ingen signatur"; +"365.title" = "Navn:"; +"367.title" = "Nøgle"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algoritme:"; +"378.title" = "Udløber:"; +"379.title" = "Oprettet:"; +"381.title" = "Tillid til ejeren:"; +"436.title" = "Oprettet:"; +"437.title" = "Signatur"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/da.lproj/SignatureView.strings b/Resources/da.lproj/SignatureView.strings new file mode 100644 index 00000000..3363c063 --- /dev/null +++ b/Resources/da.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Stol ikke på signaturen."; +"VALIDITY_OK" = "Signaturen er i orden."; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Signaturens nøgle er blevet tilbagekaldt."; +"VALIDITY_SIGNATURE_EXPIRED" = "Signaturen er udløbet."; +"VALIDITY_KEY_EXPIRED" = "Signaturens nøgle er udløbet."; +"VALIDITY_KEY_REVOKED" = "Signaturens nøgle er blevet tilbagekaldt."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Signaturen blev lavet med en ukendt algoritme."; +"VALIDITY_NO_PUBLIC_KEY" = "Nøglen til denne signatur er ikke i din nøglering."; +"VALIDITY_UNKNOWN_ERROR" = "Ukendt signaturfejl."; +"VALIDITY_BAD_SIGNATURE" = "Signaturen er ugyldig."; diff --git a/Resources/de.lproj/Credits.rtf b/Resources/de.lproj/Credits.rtf new file mode 100644 index 00000000..4decba09 --- /dev/null +++ b/Resources/de.lproj/Credits.rtf @@ -0,0 +1,11 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf350 +{\fonttbl\f0\fnil\fcharset0 LucidaGrande;} +{\colortbl;\red255\green255\blue255;} +\vieww9000\viewh8400\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc\pardirnatural + +\f0\fs22 \cf0 Kontakt: {\field{\*\fldinst{HYPERLINK "mailto:gpgtools-users@lists.gpgtools.org"}}{\fldrslt gpgtools-users@lists.gpgtools.org}}\ +Webseite: {\field{\*\fldinst{HYPERLINK "http://gpgtools.org"}}{\fldrslt http://www.gpgtools.org}}\ +\ +\ +Symbole ({\field{\*\fldinst{HYPERLINK "http://creativecommons.org/licenses/by-nc-sa/3.0/"}}{\fldrslt CC BY-NC-SA 3.0}}): Josef Sahlberg {\field{\*\fldinst{HYPERLINK "http://yusf.se"}}{\fldrslt http://yusf.se}}} \ No newline at end of file diff --git a/Resources/de.lproj/GPGAttachment.strings b/Resources/de.lproj/GPGAttachment.strings new file mode 100644 index 00000000..4e1ca4ca --- /dev/null +++ b/Resources/de.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Die Signatur konnte nicht überprüft werden."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "Die Signatur des Anhangs konnte nicht überprüft werden, da der öffentliche Schlüssel sich nicht im Schlüsselbund befindet.\n\nBitte lade den öffentlichen Schlüssel %@ in GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Der Anhang konnte nicht entschlüsselt werden."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Der private Schlüssel zum Entschlüssen dieses Anhangs befindet sich nicht in Ihrem Schlüsselbund."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Der Anhang wurde erfolgreich entschlüsselt"; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Doppelklicken Sie im Nachrichtenfenster auf eine Datei um diese zu öffnen."; diff --git a/Resources/de.lproj/GPGAttachments.strings b/Resources/de.lproj/GPGAttachments.strings new file mode 100644 index 00000000..2bd649f5 --- /dev/null +++ b/Resources/de.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Fenster"; +"8.title" = "OK"; +"210.title" = "name"; +"211.title" = "Details"; +"239.title" = "Schlüssel"; +"240.title" = "Name:"; +"241.title" = "E-Mail:"; +"243.title" = "Fingerabdruck:"; +"244.title" = "Erstellt:"; +"245.title" = "Ablaufdatum:"; +"246.title" = "Algorithmus:"; +"247.title" = "Vertrauen:"; +"256.title" = "Signatur"; +"257.title" = "Erstellt:"; +"291.title" = "Die Signatur konnte nicht verifiziert werden."; +"293.title" = "Die Signatur des Anhangs konnte nicht überprüft werden, da der öffentliche Schlüssel sich nicht im Schlüsselbund befindet.\nBitte lade den öffentlichen Schlüssel in GPG Keychain."; +"382.title" = "Die Signatur konnte nicht verifiziert werden."; +"383.title" = "Die Signatur des Anhangs konnte nicht überprüft werden, da der öffentliche Schlüssel sich nicht im Schlüsselbund befindet.\nBitte lade den öffentlichen Schlüssel in GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Nie"; diff --git a/Resources/de.lproj/GPGMail.strings b/Resources/de.lproj/GPGMail.strings new file mode 100644 index 00000000..818d0fcd --- /dev/null +++ b/Resources/de.lproj/GPGMail.strings @@ -0,0 +1,254 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Version: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "PGP Nachricht konnte nicht entschlüsselt werden."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Beim Entschlüsseln dieser Nachricht ist ein Problem aufgetreten. Vergewissere dich, dass in GPG Keychain ein gültiger Schlüssel vorhanden ist."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Signatur der PGP Nachricht konnte nicht überprüft werden."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Beim Lesen der PGP Signatur dieser Nachricht ist ein Problem aufgetreten."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "Der verwendete PGP Schlüssel befindet sich nicht in GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Diese Nachricht hat eine gültige PGP Signatur, der PGP Schlüssel befindet sich jedoch nicht in GPG Keychain. Bitte verwende GPG Keychain, um den Schlüssel hinzuzufügen."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Keine Informationen für diesen PGP Schlüssel vorhanden."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Es ist leider nicht möglich, detaillierte Informationen zu diesem PGP Schlüssel anzuzeigen, da er sich nicht in GPG Keychain befindet."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Der geheime Schlüssel zum Entschlüsseln der Nachricht fehlt."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "Keiner der folgenden geheimen Schlüssel konnte in deinem Schlüsselbund gefunden werden (%@). Der geheime Schlüssel wird zum Entschlüsseln dieser Nachricht benötigt.\n\nÜberprüfe, ob der Absender den richtigen öffentlichen Schlüssel verwendet hat.\nVersuche den fehlenden geheimen Schlüssel in einem Backup zu finden und importiere ihn von dort."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Unbekannter Fehler beim Entschlüsseln."; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Beim Entschlüsseln der Nachricht ist ein unbekannter Fehler aufgetreten.\n\nBitte kontaktieren Sie uns unter https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Unbekannter Fehler beim Entschlüsseln."; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Beim Entschlüsseln der Nachricht ist ein unbekannter Fehler aufgetreten.\n\nGPG Fehlermeldung:\n%@\nBitte kontaktieren Sie uns mit der GPG Fehlermeldung unter https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Falscher Schlüssel zum Verschlüsseln der Nachricht verwendet."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Diese Nachricht konnte nicht entschlüsselt werden, weil ein falscher öffentlicher Schlüssel zum Verschlüsseln verwendet wurde.\n\nBitte kontaktieren Sie uns unter https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Die verschlüsselte Nachricht ist beschädigt."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Diese verschlüsselte Nachricht ist beschädigt und konnte nicht entschlüsselt werden.\n\nBitte den Absender die Nachricht erneut zu senden."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signaturschlüssel wurde widerrufen."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "Der Schlüssel mit dem diese Nachricht signiert wurde, wurde widerrufen.\n\nDu solltest den Schlüssel mit Key ID %@ in GPG Keychain aktualisieren. Sollte der Schlüssel immer noch widerrufen sein, suche nach einem neuen Schlüssel und frage bei dem Schlüsselinhaber nach, warum der Schlüssel widerrrufen wurde."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Der Schlüssel zu dieser Signatur befindet sich nicht in GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Diese Nachricht konnte nicht verifiziert werden, weil sich der entsprechende öffentliche Schlüssel nicht in GPG Keychain befindet.\n\nSuche nach dem Schlüssel mit ID %@ in GPG Keychain und importiere ihn, um diese Nachricht zu verifizieren."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "Die Signatur der Nachricht wurde mit einem nicht unterstützen Algorithmus erstellt."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Diese Nachricht konnte nicht verifiziert werden, da die Signatur mit einem Algorithmus erstellt wurde, welcher nicht unterstützt ist.\n\nBitte kontaktiere uns auf https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ACHTUNG: Die Signatur dieser Nachricht ist ungültig!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Es könnte sein, dass diese Nachricht nach dem Signieren verändert wurde.\n\nKontaktiere den Absender und gleiche den Inhalt der Nachricht ab.\n\nSollte die Nachricht nicht verändert worden sein, kontaktiere uns bitte unter\nhttps://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Überprüfung der Nachrichtensignatur mit unbekanntem Fehler gescheitert!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Diese Nachricht konnte nicht verifiziert werden, da ein unbekannter Fehler aufgetreten ist.\n\nBitte kontaktiere uns unter https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signatur Datenfehler in Nachricht!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Die Signatur dieser Nachricht ist ungültig und konnte nicht überprüft werden.\n\nBitte kontaktiere uns unter https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Schlüssel der Nachrichtensignatur ist abgelaufen."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "Der Schlüssel mit dem diese Nachricht signiert wurde ist abgelaufen. Sie können versuchen den Schlüssel %@ mit GPG Keychain zu aktualisieren und fragen sie beim Absender nach, warum der Schlüssel abgelaufen ist."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Die Signatur der Nachricht ist abgelaufen."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Die Signatur ist abgelaufen und konnte nicht überprüft werden.\n\nErkundige dich beim Absender, warum die Signatur abgelaufen ist."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG ist nicht installiert"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Die Entschlüsselung ist fehlgeschlagen, weil MacGPG nicht installiert ist.\n\nLade und installiere GPG Suite von https://gpgtools.org erneut."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG ist nicht installiert"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Die Verifizierung ist fehlgeschlagen, da MacGPG nicht installiert ist.\n\nLade und installiere GPG Suite von https://gpgtools.org erneut."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d Anhänge konnten nicht entschlüsselt oder verifiziert werden."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Bitte klicke im Nachrichten Kopf unter Sicherheit auf das Anhang Icon, um weitere Informationen zu erhalten."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d Anhänge konnten nicht verifiziert werden."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Bitte klicke im Nachrichten Kopf unter Sicherheit auf das Anhang Icon, um weitere Informationen zu erhalten."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d Anhänge konnten nicht entschlüsselt werden."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Bitte klicke im Nachrichten Kopf unter Sicherheit auf das Anhang Icon um weitere Informationen zu erhalten."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d Anhang konnte nicht verifiziert werden."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Bitte klicke im Nachrichten Kopf unter Sicherheit auf das Anhang Icon um weitere Informationen zu erhalten."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d Anhang konnte nicht entschlüsselt werden."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Bitte klicke im Nachrichten Kopf unter Sicherheit auf das Anhang Icon um weitere Informationen zu erhalten."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Der geheime Schlüssel zum Entschlüsseln des Anhangs fehlt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "Keiner der folgenden geheimen Schlüssel wurde in deinem Schlüsselbund gefunden (%@). Der geheime Schlüssel wird zum Entschlüsseln dieses Anhangs benötigt.\n\nBitte überprüfe, ob der Absender den richtigen öffentlichen Schlüssel verwendet hat.\nVersuche den fehlenden geheimen Schlüssel in einem Backup zu finden und importiere ihn von dort."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Unbekannter Fehler beim Entschlüsseln."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Beim Entschlüsseln des Anhangs ist ein unbekannter Fehler aufgetreten.\n\nBitte kontaktiere uns unter https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Unbekannter Fehler beim Entschlüsseln."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Beim Entschlüsseln des Anhangs ist ein unbekannter Fehler aufgetreten.\n\nGPG Fehlermeldung:\n%@\nBitte kontaktiere uns mit der GPG Fehlermeldung unter https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Falscher Schlüssel zum Verschlüsseln des Anhangs verwendet."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Der Anhang konnte nicht entschlüsselt werden, weil zur Verschlüsselung ein falscher öffentlicher Schlüssel verwendet wurde.\n\nBitte kontaktiere uns unter https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Dieser verschlüsselte Anhang ist beschädigt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Dieser verschlüsselte Anhang konnte nicht entschlüsselt werden, da er beschädigt ist.\n\nBitte den Absender, den Anhang erneut zu senden."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signaturschlüssel wurde widerrufen."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "Der Schlüssel mit dem dieser Anhang signiert wurde, wurde widerrufen.\n\nDu solltest den Schlüssel mit Key ID %@ in GPG Keychain aktualisieren. Sollte der Schlüssel weiter widerrufen sein, frage beim Absender nach, warum der Schlüssel widerrufen wurde."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Der Schlüssel zu dieser Signatur befindet sich nicht in GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Dieser Anhang konnte nicht verifiziert werden, weil sich der entsprechende öffentliche Schlüssel nicht in GPG Keychain befindet.\n\nSuche nach dem Schlüssel mit ID %@ in GPG Keychain und importiere ihn um diesen Anhang zu verifizieren."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "Die Signatur des Anhangs wurde mit einem nicht unterstützen Algorithmus erstellt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Dieser Anhang konnte nicht verifiziert werden, da der Schlüssel zu der Signatur mit einem Algorithmus erstellt wurde, welcher nicht unterstützt ist.\n\nBitte kontaktiere uns auf https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ACHTUNG: Die Signatur dieses Anhangs ist ungültig!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Es könnte sein, dass dieser Anhang nach dem Signieren geändert wurde.\n\nKontaktiere den Absender und gleiche den Inhalt des Anhangs ab.\n\nSollte der Anhang nicht geändert worden sein, kontaktiere uns bitte unter https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Signaturprüfung mit unbekanntem Fehler gescheitert!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Die Signatur des Anhangs konnte nicht verifiziert werden, da ein unbekannter Fehler aufgetreten ist.\n\nBitte kontaktiere uns unter https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signaturdatenfehler!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Dies Signature des Anhangs konnte nicht verifiziert werden, da die Signatur ungültig ist.\n\nBitte kontaktiere uns unter https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Der Schlüssel der Signatur ist abgelaufen."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "Der Schlüssel mit dem dieser Anhang signiert wurde ist abgelaufen.\n\nDu kannst versuchen den Schlüssel %@ in GPG Keychain zu aktualisieren und frage den Absender, warum der Schlüssel abgelaufen ist."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Die Signatur des Anhangs ist abgelaufen."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Die Signatur des Anhangs ist abgelaufen und konnte nicht verifiziert werden.\n\nErkundige sich beim Absender, warum die Signatur abgelaufen ist."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Teil-Verschlüsselt"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Teil-Signiert"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Verschlüsselt"; +"MESSAGE_IS_PGP_SIGNED" = "Signiert"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Ungültige Signatur"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signiert mit unbekanntem Schlüssel"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signiert mit widerrufenem Schlüssel"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Ungültige Signatur"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signiert"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Keine Signatur gefunden"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "verschlüsselter/signierter Anhang"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "verschlüsselte/signierte Anhänge"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "verschlüsselter Anhang"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "verschlüsselte Anhänge"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signierter Anhang"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signierte Anhänge"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "Diese Nachricht kann nicht signiert werden, da kein geheimer Schlüssel für %@ existiert.\n\nBitte stelle sicher, dass ein geheimer Schlüssel für diese E-Mail Adresse in GPG Keychain existiert. Erstelle bei Bedarf eine Benutzer-ID mit dieser E-Mail Adresse in einem bestehenden Schlüssel oder erstelle einen neuen Schlüssel für diese E-Mail Adresse.\n\nIst ein Schlüssel vorhanden, überprüfe in Mail.app > Einstellungen > Accounts, ob die E-Mail Adresse korrekt ist und genau der im Schlüssel verwendeten E-Mail Adresse entspricht."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Diese E-Mail kann nicht verschlüsselt werden, da für die folgenden Adressen kein öffentlicher Schlüssel vorhanden ist: %@.\n\nBitte suche und importiere die Schlüssel für diese Adressen mit GPG Keychain."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Diese E-Mail kann erst verschlüsselt werden, wenn mindestens ein Empfänger angegeben wurde."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Verschlüsselter"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signierter"; +"MESSAGE_VIEW_PGP_PART" = "PGP-Teil"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail ist bereit."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Ihre MacGPG Installation weist keine Fehler auf."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG ist nicht installiert. Bitte überprüfe deine Installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Bitte lade GPG Suite von https://www.gpgtools.org herunter und installiere erneut um sicherzustellen, dass alle Komponenten auf deinem System installiert sind."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Bitte überprüfe deine Installation und Konfiguration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Bitte lade GPG Suite von https://www.gpgtools.org herunter und installiere erneut um sicherzustellen, dass alle Komponenten auf deinem System installiert sind."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Achtung: Wenn du diese Option deaktivierst, könnten sensible Informationen preisgegeben werden, während du eine Nachricht verfasst"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "Wenn die Option \"Entwürfe auf Server sichern\" für deinen Account aktiviert ist, speichert macOS Mail automatisch deine Entwürfe auf dem Mail Server, während du eine Nachricht verfasst.\nWird \"Entwürfe verschlüsseln\" deaktiviert, werden deine Entwürfe im Klartext (unverschlüsselt) gespeichert. Jeder der Zugang zum Mail Server hat, wird sie lesen können.\n\nBleibt \"Entwürfe verschlüsseln\" aktiviert, werden deine Entwürfe verschlüsselt, bevor sie auf dem Mail Server gespeichert werden, so dass nur du sie lesen kannst.\n\nWillst du dennoch \"Entwürfe verschlüsseln\" deaktivieren?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Verschlüsselung deaktivieren"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Abbrechen"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Mehrere GPGMail Installationen wurden gefunden!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail hat Installationen in folgenden Verzeichnissen gefunden, was einen sofortigen Absturz zur Folge hat:\n\n%@\n\nBitte lösche GPGMail.mailbundle aus einem der Verzeichnisse und starte Mail erneut.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Mail beenden"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg wurde nicht gefunden"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg wurde auf deinem System nicht gefunden. Bitte lade und installiere GPG Suite von https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Jemand hat deine GPGMail-Installation manipuliert!"; +CODE_SIGN_ERROR_MESSAGE = "Um dich zu schützen, wird GPGMail nicht geladen.\n\nBitte lade und installiere GPG Suite von https://gpgtools.org, um sicherzustellen, dass du eine Originalversion von uns verwendest."; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "GPGMail-Standardeinstellungen konnten nicht geladen werden!"; +NO_DEFAULTS_MESSAGE = "GPGMail funktioniert nicht wie erwartet.\n\nLade und installiere erneut GPG Suite von https://gpgtools.org.\n\nSollte das Problem fortbestehen, kontaktiere uns bitte unter https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Deine Nachricht konnte nicht signiert werden, da pinentry defekt ist!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, das Programm, welches für das Abfragen deines Passworts zuständig ist, scheint defekt zu sein.\n\nUm dieses Problem zu beheben, lade GPG Suite von https://gpgtools.org und installiere erneut."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Deine Nachricht konnte nicht signiert werden, da der gpg-agent defekt ist!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "Der gpg-agent, welcher ein wichtiger Teil von GPG ist, scheint defekt zu sein.\n\nUm dieses Problem zu beheben, lade GPG Suite von https://gpgtools.org und installiere erneut."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Deine Nachricht konnte aufgrund eines Kommunikationsfehlers mit dem gpg-agent nicht signiert werden!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "Es war nicht möglich den gpg-agent nach deinem Passwort zu fragen.\n\nUm dieses Problem zu beheben, lade GPG Suite von https://gpgtools.org und installiere erneut."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Deine Nachricht konnte aufgrund eines unbekannten Fehlers nicht signiert werden"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Wir können den Fehler an dieser Stelle nicht behandeln."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Deine Nachricht konnte aufgrund eines unbekannten Fehlers nicht verschlüsselt werden"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unglücklicherweise kann GPGMail den Fehler an dieser Stelle nicht behandeln."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Du hast zu oft ein falsches Passwort eingegeben."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Das Signieren deiner Nachricht wurde abgebrochen, da du 3 mal das falsche Passwort eingegeben hast."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nSollte dein Problem fortbestehen, kontaktiere uns bitte auf https://gpgtools.tenderapp.com/ und teilen uns folgende Fehlerbeschreibung mit:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Du hast die Entschlüsselung abgebrochen."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Die Nachricht konnte nicht entschlüsselt werden, da du die Passwortabfrage abgebrochen hast."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Du hast die Entschlüsselung des Anhangs abgebrochen"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Der Anhang konnte nicht entschlüsselt werden, da du die Passwortabfrage abgebrochen hast."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite funktioniert nicht wie erwartet"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Die Entschlüsselung der Nachricht ist fehlgeschlagen.\n\nBitte lade GPG Suite von https://gpgtools.org herunter und installiere es erneut.\n\nSollte das Problem weiterhin auftreten, kontaktiere uns unter https://gpgtools.tenderapp.com/ und gib an, dass der XPC Service nicht richtig funktioniert."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite funktioniert nicht wie erwartet"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Die Entschlüsselung des Anhangs ist fehlgeschlagen.\n\nBitte lade GPG Suite von https://gpgtools.org herunter und installiere es erneut.\n\nSollte das Problem weiterhin auftreten, kontaktiere uns unter https://gpgtools.tenderapp.com/ und gib an, dass der XPC Service nicht richtig funktioniert."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite funktioniert nicht wie erwartet"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Das Verifizieren der Nachricht ist fehlgeschlagen.\n\nBitte lade GPG Suite von https://gpgtools.org herunter und installiere es erneut.\n\nSollte das Problem weiterhin auftreten, kontaktiere uns unter https://gpgtools.tenderapp.com/ und gib an, dass der XPC Service nicht richtig funktioniert."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite funktioniert nicht wie erwartet"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Das Verifizieren des Anhangs ist fehlgeschlagen.\n\nBitte lade GPG Suite von https://gpgtools.org herunter und installiere es erneut.\n\nSollte das Problem weiterhin auftreten, kontaktiere uns unter https://gpgtools.tenderapp.com/ und gib an, dass der XPC Service nicht richtig funktioniert."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Deine Nachricht konnte nicht signiert werden, da es ein Problem bei der Passwortabfrage gab."; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, das Programm, welches für das Abfragen deines Passworts zuständig ist, scheint defekt zu sein.\n\nUm dieses Problem zu beheben lade GPG Suite von https://gpgtools.org und installiere erneut."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Deine Nachricht konnte nicht signiert werden, da GPGMail beschädigt ist."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Um dieses Problem zu beheben, lade GPG Suite von https://gpgtools.org und installiere erneut.\n\nSollte das Problem weiterhin auftreten, kontaktiere uns unter https://gpgtools.tenderapp.com/ und gib an, dass der XPC Service nicht richtig funktioniert."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Die Entschlüsselung der Nachricht ist fehlgeschlagen, da pinentry nicht funktioniert."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, das Programm, welches für das Abfragen deines Passworts zuständig ist, scheint defekt zu sein.\n\nUm dieses Problem zu beheben, lade GPG Suite von https://gpgtools.org und installiere erneut."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Die Entschlüsselung des Anhangs ist fehlgeschlagen, da pinentry nicht funktioniert."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, das Programm, welches für das Abfragen deines Passworts zuständig ist, scheint defekt zu sein.\n\nUm dieses Problem zu beheben, lade GPG Suite von https://gpgtools.org und installiere erneut."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Achtung: Du bist im Begriff eine unverschlüsselte Antwort auf eine verschlüsselte Nachricht zu senden"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Es ist nicht möglich deine Antwort zu verschlüsseln, weil der öffentliche Schlüssel für den folgenden Empfänger fehlt:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Es ist nicht möglich deine Antwort zu verschlüsseln, weil die öffentlichen Schlüssel für die folgenden Empfänger fehlen:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Wenn du dich entscheidest fortzufahren, wird deine Antwort unverschlüsselt gesendet. Dadurch könnten vertrauliche Informationen preisgegeben und du und deine Empfänger einem Risiko ausgesetzt werden."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nWenn du diese Antwort wirklich unverschlüsselt senden möchtest, entferne bitte vor dem Senden jegliche vorherige Korrespondenz, die in deiner Antwort enthalten ist."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Andernfalls suche und importiere den benötigten öffentlichen Schlüssel mit GPG Keychain, um diese Antwort verschlüsselt zu senden."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Andernfalls suche und importiere den benötigten öffentlichen Schlüssel mit GPG Keychain, um diese Antwort verschlüsselt senden zu können."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Trotzdem senden"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Abbrechen"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Achtung: Du bist im Begriff die unverschlüsselte Version einer verschlüsselten Nachricht weiterzuleiten"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Es ist nicht möglich die Nachricht, die du im Begriff bist weiterzuleiten, zu verschlüsseln, weil der öffentliche Schlüssel für den folgenden Empfänger fehlt:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Es ist nicht möglich die Nachricht, die du im Begriff bist weiterzuleiten, zu verschlüsseln, weil der öffentliche Schlüssel für die folgenden Empfänger fehlt:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "Wenn du dich entscheidest fortzufahren, wird die weitergeleitete Nachricht unverschlüsselt gesendet. Dadurch könnten vertrauliche Informationen preisgegeben und du und deine Empfänger einem Risiko ausgesetzt werden. "; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Andernfalls suche und importiere den benötigten öffentlichen Schlüssel mit GPG Keychain, um eine verschlüsselte Version der Nachricht weiterzuleiten."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Andernfalls suche und importiere den benötigten öffentlichen Schlüssel mit GPG Keychain, um eine verschlüsselte Version der Nachricht weiterzuleiten. "; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Trotzdem weiterleiten"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Abbrechen"; + +"MESSAGE_BANNER_PGP_DECRYPT_MDC_ERROR_TITLE" = "Die Entschlüsselung dieser Nachricht wurde abgebrochen"; +"MESSAGE_BANNER_PGP_DECRYPT_MDC_ERROR_MESSAGE" = "Der Code zum Erkennen von Änderungen (MDC) dieser verschlüsselten Nachricht ist nicht vorhanden oder wurde abgeändert.\n\nDas könnte ein Zeichen dafür sein, dass der Inhalt der verschlüsselten Nachricht von einem Angreifer verändert wurde.\n\nBitte lass dir die Nachricht erneut zusenden und informiere den Absender, dass seine Nachricht keinen Code zum Erkennen von Änderungen enthielt."; + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Sicherheitstechnik: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Signieren"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Nicht signieren"; + diff --git a/Resources/de.lproj/GPGMailPreferences.strings b/Resources/de.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..0888c403 --- /dev/null +++ b/Resources/de.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Updates"; +"728.title" = "Verfassen"; +"733.ibShadowedToolTip" = "Häufig gestellte Fragen."; +"734.alternateTitle" = "Häufig gestellte Fragen"; +"734.title" = "Knowledge Base"; +"781.title" = "Entwürfe verschlüsseln"; +"834.title" = "Knopf"; +"1051.ibShadowedToolTip" = "Falls du weitere Fragen hast."; +"1053.title" = "Problem melden"; +"0PS-Wm-gKl.title" = "Jetzt prüfen"; +"0Th-7E-Y7P.title" = "Version: xxx"; +"2ul-d0-5ir.title" = "Neue E-Mails signieren"; +"80G-ZN-hjm.title" = "Automatisch nach Updates suchen"; +"8oZ-YB-M9Q.title" = "Betaversionen werden öfter veröffentlicht. Neue Features und Verbesserungen sind weniger erprobt."; +"D6D-o9-63C.title" = "Versionshinweise anzeigen"; +"UhD-uR-dUs.title" = "Betaversionen einbeziehen"; +"q0m-y8-baf.title" = "Build: "; +"yJs-2y-8Cb.title" = "Neue E-Mails verschlüsseln"; diff --git a/Resources/de.lproj/GPGSignatureView.strings b/Resources/de.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..a5e10df8 --- /dev/null +++ b/Resources/de.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Signaturen"; +"25.title" = "OK"; +"237.title" = "name"; +"251.title" = "Details"; +"252.ibShadowedNoSelectionPlaceholder" = "Keine Signatur"; +"365.title" = "Name:"; +"367.title" = "Schlüssel"; +"369.title" = "E-Mail:"; +"372.title" = "Fingerabdruck:"; +"377.title" = "Algorithmus:"; +"378.title" = "Verfällt:"; +"379.title" = "Erstellt:"; +"381.title" = "Vertrauen:"; +"436.title" = "Erstellt:"; +"437.title" = "Signatur"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Nie"; diff --git a/Resources/de.lproj/SignatureView.strings b/Resources/de.lproj/SignatureView.strings new file mode 100644 index 00000000..bc7b1b62 --- /dev/null +++ b/Resources/de.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Diese Signatur ist nicht vertrauenswürdig."; +"VALIDITY_OK" = "Diese Signature ist vertrauenswürdig"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Der Schlüssel dieser Signatur wurde widerrufen."; +"VALIDITY_SIGNATURE_EXPIRED" = "Diese Signatur ist abgelaufen."; +"VALIDITY_KEY_EXPIRED" = "Der Schlüssel dieser Signatur ist abgelaufen."; +"VALIDITY_KEY_REVOKED" = "Der Schlüssel dieser Signatur wurde widerrufen."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Signatur wurde mit unbekanntem Algorithmus erstellt."; +"VALIDITY_NO_PUBLIC_KEY" = "Der Schlüssel dieser Signatur befindet sich nicht im Schlüsselbund."; +"VALIDITY_UNKNOWN_ERROR" = "Unbekannter Fehler mit Signatur."; +"VALIDITY_BAD_SIGNATURE" = "Diese Signatur ist ungültig."; diff --git a/Resources/el.lproj/GPGAttachment.strings b/Resources/el.lproj/GPGAttachment.strings new file mode 100644 index 00000000..48508e0d --- /dev/null +++ b/Resources/el.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Αποτυχία επαλήθευσης της υπογραφής."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "Το δημόσιο κλειδί για την επαλήθευση της υπογραφής αυτού του συννημένου αρχείου δε βρίσκεται στα διαθέσιμα κλειδιά σας.\n\nΠαρακαλώ κατεβάστε το δημόσιο κλειδί %@ χρησιμοποιώντας το GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Αποτυχία αποκρυπτογράφησης του συννημένου αρχείου."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Το κρυφό κλειδί για την αποκρυπτογράφηση του συννημένου αρχείου δε βρίσκεται στα διαθέσιμα κλειδιά σας."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Το συννημένο αρχείο αποκρυπτογραφήθηκε επιτυχώς."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Ανοίχτε ένα συννημένο αρχείο στην προβολή μηνύματος κάνοντας διπλό κλικ."; diff --git a/Resources/el.lproj/GPGAttachments.strings b/Resources/el.lproj/GPGAttachments.strings new file mode 100644 index 00000000..ef85e8b5 --- /dev/null +++ b/Resources/el.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Παράθυρο"; +"8.title" = "OK"; +"210.title" = "όνομα"; +"211.title" = "Λεπτομέρειες"; +"239.title" = "Κλειδί"; +"240.title" = "Όνομα:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Δημιουργία:"; +"245.title" = "Λήξη:"; +"246.title" = "Αλγόριθμος"; +"247.title" = "Εμπιστοσύνη Ιδιοκτήτη:"; +"256.title" = "Υπογραφή"; +"257.title" = "Δημιουργία:"; +"291.title" = "Δεν ήταν δυνατή η επαλήθευση της υπογραφής."; +"293.title" = "Δεν ήταν δυνατή η επαλήθευση της υπογραφής, επειδή το δημόσιο κλειδί δε βρίσκεται στα διαθέσιμα κλειδιά σας.\nΠαρακαλώ κατεβάστε το κλειδί χρησιμοποιώντας το GPG Keychain."; +"382.title" = "Δεν ήταν δυνατή η επαλήθευση της υπογραφής."; +"383.title" = "Δεν ήταν δυνατή η επαλήθευση της υπογραφής, επειδή το δημόσιο κλειδί δε βρίσκεται στα διαθέσιμα κλειδιά σας.\nΠαρακαλώ κατεβάστε το κλειδί χρησιμοποιώντας το GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/el.lproj/GPGMail.strings b/Resources/el.lproj/GPGMail.strings new file mode 100644 index 00000000..e0c56139 --- /dev/null +++ b/Resources/el.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Έκδοση: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Δεν ήταν δυνατή η αποκρυπτογράφηση του PGP μηνύματος."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Εμφανίστηκε πρόβλημα κατά την αποκρυπτογράφηση του μηνύματος. Βεβαιωθείτε πως διαθέτετε ένα έγκυρο κλειδί στο GPG Keychain σας."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Δεν ήταν δυνατή η επαλήθευση της PGP υπογραφής του μηνύματος."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Εμφανίστηκε πρόβλημα κατά την ανάγνωση της PGP υπογραφής του μηνύματος."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "Το PGP κλειδί για το μήνυμα δε βρίσκεται στα διαθέσιμα κλειδιά σας."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Το μήνυμα έχει έγκυρη PGP υπογραφή, αλλά το PGP κλειδί δε βρίσκεται στα διαθέσιμα κλειδιά σας. Παρακαλώ χρησιμοποιήστε το GPG Keychain για να το προσθέσετε."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Δεν υπάρχουν διαθέσιμες πληροφορίες γι' αυτό το PGP κλειδί."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Δεν υπάρχουν επιπλέον διαθέσιμες πληφοροφίες γι' αυτό το PGP κλειδί, επειδή δεν είναι στα διαθέσιμα κλειδιά σας."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the message is missing."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this message."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This message could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted message is damaged."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted message is damaged and could not be decrypted.\n\nPlease ask the sender to re-send the message."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this message was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The key to this message signature is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The message could not be verified, since the key which was used to sign this message is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the message."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "The message signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This message could not be verified, since the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The signature of this message is invalid!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verification of message signature failed with unknown error!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this message's signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Message signature data error!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This message's signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Message signature's key is expired."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this message is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The message signature is expired."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d attachments failed to decrypt or verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d attachments failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d attachments failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d attachment failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d attachment failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the attachment is missing."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this attachment."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This attachment could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted attachment is damaged."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted attachment is damaged and could not be decrypted.\n\nPlease ask the sender to send you the message again."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The signature key is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "The attachment signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This attachment could not be verified, since the key to the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The attachment signature is invalid!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\n if you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Signature verification failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signature data error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This attachment signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "The key of the signature is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Partly Encrypted"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Partly Signed"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Encrypted"; +"MESSAGE_IS_PGP_SIGNED" = "Signed"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Invalid Signature"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signed with unknown key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signed with revoked key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Invalid signature"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signed"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No signature found"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "encrypted attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "encrypted attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signed attachments"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "This message can't be encrypted, since there are no public keys available for the following addresses: %@.\n\nPlease use GPG Keychain to search and import the keys for those addresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Encrypted"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signed"; +"MESSAGE_VIEW_PGP_PART" = "PGP part"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail is ready."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Your MacGPG installation is working with no errors."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Please check your installation and configuration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Found multiple installations of GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/el.lproj/GPGMailPreferences.strings b/Resources/el.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..9cc3061a --- /dev/null +++ b/Resources/el.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Updates"; +"728.title" = "Composing"; +"733.ibShadowedToolTip" = "Frequently Asked Questions."; +"734.alternateTitle" = "Frequently Asked Questions"; +"734.title" = "Knowledge Base"; +"781.title" = "Encrypt drafts"; +"834.title" = "Button"; +"1051.ibShadowedToolTip" = "If you've any other question."; +"1053.title" = "Report Problem"; +"0PS-Wm-gKl.title" = "Check Now"; +"0Th-7E-Y7P.title" = "Version: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Automatically check for updates"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "Show Release Notes"; +"UhD-uR-dUs.title" = "Include beta builds"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/el.lproj/GPGSignatureView.strings b/Resources/el.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..8cc094c0 --- /dev/null +++ b/Resources/el.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Signatures"; +"25.title" = "OK"; +"237.title" = "όνομα"; +"251.title" = "Λεπτομέρειες"; +"252.ibShadowedNoSelectionPlaceholder" = "No signature"; +"365.title" = "Όνομα:"; +"367.title" = "Κλειδί"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Αλγόριθμος"; +"378.title" = "Λήξη:"; +"379.title" = "Δημιουργία:"; +"381.title" = "Εμπιστοσύνη Ιδιοκτήτη:"; +"436.title" = "Δημιουργία:"; +"437.title" = "Υπογραφή"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/el.lproj/SignatureView.strings b/Resources/el.lproj/SignatureView.strings new file mode 100644 index 00000000..4470da3d --- /dev/null +++ b/Resources/el.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "This signature is not to be trusted."; +"VALIDITY_OK" = "This signature can be trusted"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "The key of this signature was revoked."; +"VALIDITY_SIGNATURE_EXPIRED" = "This signature is expired."; +"VALIDITY_KEY_EXPIRED" = "The key of this signature is expired."; +"VALIDITY_KEY_REVOKED" = "The key of this signature was revoked."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Signature was created with unknown algorithm."; +"VALIDITY_NO_PUBLIC_KEY" = "The key of this signature is not in your keychain."; +"VALIDITY_UNKNOWN_ERROR" = "Unknown signature error."; +"VALIDITY_BAD_SIGNATURE" = "This signature is invalid."; diff --git a/Resources/en.lproj/Credits.rtf b/Resources/en.lproj/Credits.rtf new file mode 100644 index 00000000..f4118664 --- /dev/null +++ b/Resources/en.lproj/Credits.rtf @@ -0,0 +1,11 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1138 +{\fonttbl\f0\fnil\fcharset0 LucidaGrande;} +{\colortbl;\red255\green255\blue255;} +\vieww9000\viewh8400\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural + +\f0\fs22 \cf0 Contact: {\field{\*\fldinst{HYPERLINK "mailto:gpgtools-users@lists.gpgtools.org"}}{\fldrslt gpgtools-users@lists.gpgtools.org}}\ +Website: {\field{\*\fldinst{HYPERLINK "http://gpgtools.org"}}{\fldrslt http://www.gpgtools.org}}\ +\ +\ +Icons ({\field{\*\fldinst{HYPERLINK "http://creativecommons.org/licenses/by-nc-sa/3.0/"}}{\fldrslt CC BY-NC-SA 3.0}}) by Josef Sahlberg {\field{\*\fldinst{HYPERLINK "http://yusf.se"}}{\fldrslt http://yusf.se}}} \ No newline at end of file diff --git a/Resources/en.lproj/GPGAttachment.strings b/Resources/en.lproj/GPGAttachment.strings new file mode 100644 index 00000000..837de7b8 --- /dev/null +++ b/Resources/en.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Failed to verify the signature."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "The public key to verify the signature of this attachment is not in your keychain.\n\nPlease download the public key %@ using GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Failed to decrypt the attachment."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "The secret key to decrypt this attachment is not in your keychain."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "The attachment was decrypted successfully."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Open an attachment in the message view by double-clicking."; diff --git a/Resources/en.lproj/GPGAttachments.strings b/Resources/en.lproj/GPGAttachments.strings new file mode 100644 index 00000000..800eb18c --- /dev/null +++ b/Resources/en.lproj/GPGAttachments.strings @@ -0,0 +1,23 @@ +"2.title" = "Window"; +"8.title" = "OK"; +"291.title" = "The signature could not be verified."; +"293.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"382.title" = "The signature could not be verified."; +"383.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"6t7-dx-6mx.title" = "Key"; +"Gei-q9-4xZ.title" = "email"; +"MKa-KU-Fzx.title" = "Created:"; +"RGL-aT-6EF.title" = "Created:"; +"SAw-Gt-eUD.title" = "Fingerprint:"; +"Sf1-36-MTl.title" = "Signature"; +"VQR-px-dgf.title" = "Expires:"; +"XV6-yY-eN8.title" = "Fingerprint:"; +"dXj-nO-hbR.title" = "subkey.fingerprint"; +"e2W-4w-Zis.title" = "name"; +"nYo-ev-nmR.title" = "subkey.expirationDate"; +"rJX-tZ-dAy.title" = "Expires:"; +"v40-ci-zpL.title" = "subkey.creationDate"; +"yup-hd-kNW.ibShadowedIsNilPlaceholder" = "Never"; +"zYv-oF-108.ibShadowedIsNilPlaceholder" = "Never"; +"zcv-Sp-ytL.title" = "Subkey"; +"zu3-eu-Gbx.title" = "Created:"; diff --git a/Resources/en.lproj/GPGMail.strings b/Resources/en.lproj/GPGMail.strings new file mode 100644 index 00000000..886f462d --- /dev/null +++ b/Resources/en.lproj/GPGMail.strings @@ -0,0 +1,245 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Version: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Unable to decrypt PGP message."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "There was a problem decrypting this message. Verify that you have a valid key in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Unable to verify PGP message signature."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "There was a problem reading the PGP signature for this message."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP key for this message is not in your keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "The message has a valid PGP signature, but the PGP key is not in your keychain. Please use GPG Keychain to add it."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "No information is available for this PGP key."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "No additional information is known about this PGP key, because it's not in your keychain."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the message is missing."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys, required to decrypt this message, could be found in GPG Keychain (%@).\n\nPlease check with the sender that they used your correct public key.\nCheck if you can find the missing secret key in a backup and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this message."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This message could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted message is damaged."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted message is damaged and could not be decrypted.\n\nPlease ask the sender to re-send the message."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this message was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The key to this message signature is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The message could not be verified, since the key which was used to sign this message is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the message."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "The message signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This message could not be verified, since the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The signature of this message is invalid!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verification of message signature failed with unknown error!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this message's signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Message signature data error!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This message's signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Message signature's key is expired."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this message is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The message signature is expired."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d attachments failed to decrypt or verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d attachments failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d attachments failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d attachment failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d attachment failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the attachment is missing."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys, required to decrypt this attachment, could be found in GPG Keychain (%@).\n\nPlease check with the sender that they used your correct public key.\nCheck if you can find the missing secret key in a backup and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this attachment."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This attachment could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted attachment is damaged."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted attachment is damaged and could not be decrypted.\n\nPlease ask the sender to send you the message again."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The signature key is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "The attachment signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This attachment could not be verified, since the key to the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The attachment signature is invalid!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Signature verification failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signature data error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This attachment signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "The key of the signature is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Partly Encrypted"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Partly Signed"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Encrypted"; +"MESSAGE_IS_PGP_SIGNED" = "Signed"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Invalid Signature"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signed with unknown key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signed with revoked key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Invalid signature"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signed"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No signature found"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "encrypted attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "encrypted attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signed attachments"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new user ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "This message can't be encrypted, since there are no public keys available for the following addresses: %@.\n\nPlease use GPG Keychain to search and import the keys for those addresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Encrypted"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signed"; +"MESSAGE_VIEW_PGP_PART" = "PGP part"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail ready"; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG not found, reinstall GPG Suite"; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Click indicator bubble for further information"; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Problems found, click indicator bubble for more info"; +"GPG_STATUS_OTHER_ERROR_TOOLTIP" = "Click indicator bubble for further information"; + +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Found multiple installations of GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occurred"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occurred"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + +"MESSAGE_BANNER_PGP_DECRYPT_MDC_ERROR_TITLE" = "Decryption of the message was aborted"; +"MESSAGE_BANNER_PGP_DECRYPT_MDC_ERROR_MESSAGE" = "The modification detection code (MDC) for this encrypted message is missing or has been modified.\n\nThis could mean that an attacker has been trying to modify the contents within the encrypted message.\n\nPlease have the message re-sent to you and tell the sender, that their encrypted message didn't include a modification detection code."; + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/en.lproj/GPGMailPreferences.strings b/Resources/en.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..10b31a42 --- /dev/null +++ b/Resources/en.lproj/GPGMailPreferences.strings @@ -0,0 +1,21 @@ +"715.title" = "Updates"; +"728.title" = "Composing"; +"733.ibShadowedToolTip" = "Frequently Asked Questions."; +"734.alternateTitle" = "Frequently Asked Questions"; +"734.title" = "Knowledge Base"; +"744.title" = "Reading"; +"781.title" = "Encrypt drafts"; +"786.ibShadowedToolTip" = "See Preferences -> Viewing -> List Preview."; +"787.title" = "Create List Preview"; +"834.title" = "Button"; +"1051.ibShadowedToolTip" = "If you've any other question."; +"1053.title" = "Report Problem"; +"0PS-Wm-gKl.title" = "Check Now"; +"0Th-7E-Y7P.title" = "Version: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Automatically check for updates"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "Show Release Notes"; +"UhD-uR-dUs.title" = "Include beta builds"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/en.lproj/GPGSignatureView.strings b/Resources/en.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..cb29f971 --- /dev/null +++ b/Resources/en.lproj/GPGSignatureView.strings @@ -0,0 +1,20 @@ +"21.title" = "Signatures"; +"25.title" = "OK"; +"1vT-Be-sTQ.title" = "Created:"; +"34N-N7-cZe.ibShadowedNoSelectionPlaceholder" = "No signature"; +"3gD-Gj-5Yj.title" = "Subkey"; +"418-M7-8hR.title" = "Expires:"; +"56o-9r-2Ik.title" = "subkey.expirationDate"; +"7Gt-hf-1Lp.title" = "Key"; +"7QF-X1-YTw.title" = "Expires:"; +"ACy-br-I3A.title" = "Created:"; +"Cl2-oG-aDW.title" = "Created:"; +"EdN-HU-io4.ibShadowedIsNilPlaceholder" = "Never"; +"Me0-WW-wV0.title" = "name"; +"N5Z-7K-gGL.title" = "Signature"; +"RFq-iO-kLC.ibShadowedIsNilPlaceholder" = "Never"; +"Ul1-Sd-9fr.title" = "Fingerprint:"; +"g8g-fX-KTF.title" = "subkey.creationDate"; +"u60-9X-IF1.title" = "email"; +"xuz-dm-20o.title" = "Fingerprint:"; +"zWr-XG-9bS.title" = "subkey.fingerprint"; diff --git a/Resources/en.lproj/SignatureView.strings b/Resources/en.lproj/SignatureView.strings new file mode 100644 index 00000000..4470da3d --- /dev/null +++ b/Resources/en.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "This signature is not to be trusted."; +"VALIDITY_OK" = "This signature can be trusted"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "The key of this signature was revoked."; +"VALIDITY_SIGNATURE_EXPIRED" = "This signature is expired."; +"VALIDITY_KEY_EXPIRED" = "The key of this signature is expired."; +"VALIDITY_KEY_REVOKED" = "The key of this signature was revoked."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Signature was created with unknown algorithm."; +"VALIDITY_NO_PUBLIC_KEY" = "The key of this signature is not in your keychain."; +"VALIDITY_UNKNOWN_ERROR" = "Unknown signature error."; +"VALIDITY_BAD_SIGNATURE" = "This signature is invalid."; diff --git a/Resources/en.lproj/Special.html b/Resources/en.lproj/Special.html new file mode 100644 index 00000000..e7a9e679 --- /dev/null +++ b/Resources/en.lproj/Special.html @@ -0,0 +1,156 @@ + + + + + +
+

GPGMail 2.0 - Finally ... the final version.

+ +

After weeks without any sleep, food, water or
+ contact to the rest of humanity - blood, sweat
+ & tears have not been wasted. We proudly present
+ GPGMail 2.0, which is nothing less than the
+ best release in our history.

+

+ +

Credits:
+ Alex - Becalmed automation-master
+ Luke - The Master of GPGMail
+ Mento - GPGMail & Easteregg
+ Steve - Caretaker

+ +

Special thanks to:
+ Chris Fraire - Last minute performance enhancements
+


+ + + MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNZ7?????????7OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMMMMMMMMMMMMMD$$I=~,,..........,~+IIZNMMMMMMMMMMMMMMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMMMMMMMMMMMO$I,..,,::~~=====~~::,.  :7$8MMMMMMMMMMMMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMMMMMMMMNO7:..,,:~=++?????????++=~::,..~I8NMMMMMMMMMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMMMMMMM87 .,,,~=???++=~:::::~=++???=~,,,..Z8MMMMMMMMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMMMMMM+ ,::,~+?+=,...~+????++:...,=+?+~,::..7DMMMMMMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMMMMD?.::,:=?+~,.,=I?7ODNNN8OI?I=..,~+?~:,:: ,NMMMMMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMMMZ ,:::~+=:,.=$NMMMMMMMMMMMMMMMD7I.,:=?::::,.OMMMMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMM7.:~:::?=:..O8MMMMMMMMMMMMMMMMMMMN$..:~?::::,~ZMMMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMZ.::::=+~:.$NMMMMMMMMMMMMMMMMMMMMMMMD?.:~?=::~,.OMMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMM~~~::=?=:.?MMMMMMMMMMMMMMMMMMMMMMMMMMM~.~=?~~:~:?OMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMZ,=~~=I+=.~MMMMMMMMMMMMMMMMMMMMMMMMMMMMN7,=+I+~~=.?MMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMDI+~~=?I+=:ZMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM.=+II=~=~:NMMMMMMMMMMMMMM
+ MMMMMMMMMMMMM8+I==?II+~OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMI=+II?=~?~8MMMMMMMMMMMMMM
+ MMMMMMMMMMMMMOII=+?II+:NMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM8~?III+=II8MMMMMMMMMMMMMM
+ MMMMMMMMMMMMM8$I??III?IMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMIIII??+7$DMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMDO7?I?II7ZMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMZ7II?I?7ZNMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMDO7IIIIIZ8MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMO$IIIII$ZNMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMDO$IIIIIZ8MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM8ZII?II$ZNMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMD8$IIII7Z8MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM8ZII?II$ZNMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMD8$IIII7Z8MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM8Z7I?II$ZNMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMN8$IIII7O8MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM8O7III7$ZNMMMMMMMMMMMMMM
+ MMMMMMMMMD?+=~~~~===++???????????????????????????????????+======7$$$ODMMMMMMMMMM
+ MMMMMMMMM$+=~::~===++?????????????????????????????????????++IZ$777$$ZZMMMMMMMMMM
+ MMMMMMMMM$?==::~==+++?????????????????????????????????????ZO$$$777$$ZOMMMMMMMMMM
+ MMMMMMMMM$?==::~==++???I???III???II????I??????I?I???I$OOZZZZ$$$777$$Z$MMMMMMMMMM
+ MMMMMMMMM$?+=~~~==++????IIIIIIIIIIIIIIIII???II$ZOOOOZZZZZZZZ$$$777$$?IMMMMMMMMMM
+ MMMMMMMMMZI+=~~==++??IIIIIIII7$ZZOOOOOOOOZZZZZZZZZZZZZZZZZZZ$$$77+=?I7MMMMMMMMMM
+ MMMMMMMMMZI++~~==++??IIZO8OOZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ$$$+~=+?77MMMMMMMMMM
+ MMMMMMMMMO7?+~~=++7OZZZZZZZZZOOZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ?++=~=+?7$MMMMMMMMMM
+ MMMMMMMMMO7??===IOZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZOZZZZZZ$???++===$O$$MMMMMMMMMM
+ MMMMMMMMMO$I?=?$$$ZZZZZOOOOOOOOOOOOOOOOOOOOOOOOOOOOOZII777II?+?ZZ7Z$$ZMMMMMMMMMM
+ MMMMMMMMM8$I?Z7$$$ZZZZOOOOOOOOOOOOOOOOOOOOOOOOOOOZII777777II$Z$$7$7IZOMMMMMMMMMM
+ MMMMMMMMM8ZOZ$7$$ZZZZOOOOOOOOOOOOOOOOOOOOOOZ7I77777777$ZOOZZZZ$$7+77ZOMMMMMMMMMM
+ MMMMMMMMMD8OZ$$$ZZZZOOOOOOOOOOOOOOOOOOOO$$$Z$$ZZZOO88OOOOOOZZZZI+?7$OOMMMMMMMMMM
+ MMMMMMMMMN8OO$$$ZZZZOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOI???I7$O8MMMMMMMMMM
+ MMMMMMMMMND8O$$ZZZZOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOZ$IIII?I$ZO8MMMMMMMMMM
+ MMMMMMMMMND8OZ$ZZZOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOZ77$$777II7$Z88MMMMMMMMMM
+ MMMMMMMMMND8OZZZZOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOZ77$$$$$$777I7ZZ8DMMMMMMMMMM
+ MMMMMMMMMND8OZZZZOOOOOOOOOOOOOOOOOOOOOOOOOOOOO$77$$$$$$$$$$$$Z7777ZO8DMMMMMMMMMM
+ MMMMMMMMMND8OZZOOOOOOOOOOOOOOOOOOOOZZZZ$$7$$$ZZZZZZZ$$ZZZO88Z$$77$ZO8DMMMMMMMMMM
+ MMMMMMMMMND88OOOOOOOOOOOOOOOOOO8888OOZZZZZZZZZZZOO8888OOOOO7Z$$$$$OO8DMMMMMMMMMM
+ MMMMMMMMMND88OOOOOOOOOOOOOOOOOOOOOOOOOOO888888OOOOOOOOOOO$ZZZZZ$$ZOO8DMMMMMMMMMM
+ MMMMMMMMMND88OOOOOOOOO8O8OOOOO88OOOOOOOOOOOOOOOOO88OOO$$ZZZZZZZZZZO88DMMMMMMMMMM
+ MMMMMMMMMNDD88OO8OO8888888888888888888888888888O88O$$ZZZZZZZZZZZZOO8DDMMMMMMMMMM
+ MMMMMMMMMNDD8888888888888888888888888888888OZ$7$ZOOZZZZZZOZZZZZZZOO8DDMMMMMMMMMM
+ MMMMMMMMMMDD8888888888OZZZZZZZZZZZZZZZZZZZOZOOOOOOOOOOOOOOOOOOOOOO88DDMMMMMMMMMM
+ MMMMMMMMMMMMMMN$DMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOZDNNMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
+ MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
+
+




+

+ + + + diff --git a/Resources/es.lproj/GPGAttachment.strings b/Resources/es.lproj/GPGAttachment.strings new file mode 100644 index 00000000..d75240fb --- /dev/null +++ b/Resources/es.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "No se ha podido verificar la firma."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "La clave pública para verificar la firma de este adjunto no está en su juego de claves (keychain).\n\nPor favor descargue la clave pública %@ utilizando GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "No se pudo descifrar el archivo adjunto."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "La clave secreta para descifrar este accesorio no está en tu llavero."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "El archivo adjunto se descifra con éxito."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Abrir un archivo adjunto en la vista de mensajes por haciendo doble clic."; diff --git a/Resources/es.lproj/GPGAttachments.strings b/Resources/es.lproj/GPGAttachments.strings new file mode 100644 index 00000000..a843c1af --- /dev/null +++ b/Resources/es.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Ventana"; +"8.title" = "OK"; +"210.title" = "nombre"; +"211.title" = "Detalles"; +"239.title" = "Clave"; +"240.title" = "Nombre:"; +"241.title" = "Correo electrónico:"; +"243.title" = "Huella de validación:"; +"244.title" = "Creado:"; +"245.title" = "Expira:"; +"246.title" = "Algoritmo:"; +"247.title" = "Del propietario de la confianza:"; +"256.title" = "Firma"; +"257.title" = "Creado:"; +"291.title" = "La firma no pudo ser verificada."; +"293.title" = "La firma no se pudo verificar porque la clave pública no está en su juego de claves (keychain).\nPor favor, descargue la clave usando GPG Keychain."; +"382.title" = "La firma no se pudo verificar."; +"383.title" = "La firma no se pudo verificar porque la clave pública no está en su juego de claves (keychain).\nPor favor descargue la clave utilizando GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Nunca"; diff --git a/Resources/es.lproj/GPGMail.strings b/Resources/es.lproj/GPGMail.strings new file mode 100644 index 00000000..26066874 --- /dev/null +++ b/Resources/es.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Versión: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Incapaz de descifrar mensaje PGP."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Ha habido un problema al descifrar este mensaje. Compruebe que dispone de una clave válida en su GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Incapaz de verificar la firma PGP del mensaje."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Ha habido un problema al leer la firma PGP de este mensaje."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "La clave PGP para este mensaje no está en su llavero."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "El mensaje tiene una firma PGP válida, pero la clave PGP no está en su llavero. Por favor use GPG Keychain para añadirla."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "No hay información para esta clave PGP."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "No hay información adicional para esta clave PGP, ya que no está en su llavero."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Clave secreto para descifrar el mensaje que falta."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "Ninguna de las siguientes claves secretas/privadas se pudo encontrar en su juego de claves (%@). La clave secreta es necesaria para descifrar este mensaje.\n\nPor favor, compruebe con el remitente que este usó su clave pública correcta.\nCompruebe cualquier copia de seguridad de su juego de claves (keychain), y pruebe a importar la clave secreta desde allí."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "¡Hubo un error desconocido durante el descifrado!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Ocurrió un error desconocido al descifrar este mensaje.\n\nPor favor, contacte con nosotros en https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "¡Hubo un error desconocido durante el descifrado!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Ocurrió un error desconocido al descifrar este mensaje.\n\nMensaje de error de GPG:\n%@\nPor favor, contacte con nosotros en https://gpgtools.tenderapp.com/, e incluya el mensaje de error de GPG."; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "No se utilizó la clave adecuada para cifrar este mensaje."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Este mensaje no pudo descifrarse, ya que se usó una clave pública errónea para cifrarlo.\n\nPor favor, contacte con nosotros en https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "El mensaje cifrado está dañado."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Este mensaje cifrado está dañado y no se ha podido descifrar. ⏎\n⏎\nPor favor, pida al remitente que vuelva a enviarle el mensaje."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "La clave de firma fue revocada."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "ATENCIÓN: La clave que se utilizó para firmar este mensaje fue revocada.\n\nUsted debería actualizar la clave con ID %@ en GPG Keychain para comprobar si está disponible una nueva. Si la nueva clave también está revocado, pregunte al remitente por qué fue revocada."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "La clave para la firma de este mensaje no está en tu llavero GPG."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "El mensaje no pudo ser verificada, ya que la clave que se utilizó para firmar este mensaje no está en tu llavero GPG.\n\nBusque la clave con ID %@ en GPG Keychain e impórtela para verificar el mensaje."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "La firma del mensaje se ha creado con un algoritmo que no está soportado actualmente."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Este mensaje no se pudo verificar, ya que la firma se creó con un algoritmo que no está soportado.\n\nPor favor, contacte con nosotros en https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATENCIÓN: ¡La firma de este mensaje no es válida!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Este mensaje podría haber sido modificado después de que se creara la firma.\n\nPor favor, contacte con el remitente para asegurarse de que el contenido del mensaje coincide con el original.\n\nPor favor, contacte con nosotros en\nhttps://gpgtools.tenderapp.com/\nsi está seguro de que el mensaje no fue modificado."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "¡La verificación de la firma del mensaje ha fallado (error desconocido)!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Ocurrió un error desconocido al verificar la firma de este mensaje.\n\nPor favor, contacte con nosotros en https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "¡Error en los datos de la firma del mensaje!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "La firma de este mensaje no es válida y no se pudo verificar.\n\nPor favor, contacte con nosotros en https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "La clave con la que se firmó este mensaje ha caducado."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "ATENCIÓN: La clave que se utilizó para firmar este mensaje ha caducado. ⏎\n⏎\nUsted puede intentar actualizar la clave con ID %@ en GPG Keychain y preguntar al remitente por qué caducó la clave."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "La firma del mensaje ha caducado."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "La firma ha caducado y no pudo ser verificada. ⏎\n⏎\nPregunte al remitente por qué ha caducado por la firma."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG no está instalado"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "El descifrado falló porque MacGPG no está instalado.\n\nPor favor, descargue y reinstale GPG Suite desde https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG no está instalado"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "El verificado falló porque MacGPG no está instalado.\n\nPor favor, descargue y reinstale GPG Suite desde https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d archivos adjuntos no pudieron ser descifrados o verificados."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Para más detalles haga clic en el icono del archivo adjunto que se encuentra en la cabecera de seguridad del mensaje."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d archivos adjuntos no pudieron ser verificados."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Para más detalles haga clic en el icono del archivo adjunto que se encuentra en la cabecera de seguridad del mensaje."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d archivos adjuntos no pudieron ser descifrados."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Para más detalles haga clic en el icono del archivo adjunto que se encuentra en la cabecera de seguridad del mensaje."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d archivo adjunto no pudo ser verificado."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Para más detalles haga clic en el icono del archivo adjunto que se encuentra en la cabecera de seguridad del mensaje."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d archivo adjunto no pudo ser descifrado."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Para más detalles haga clic en el icono del archivo adjunto que se encuentra en la cabecera de seguridad del mensaje."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Clave secreta para desencriptar el archivo adjunto no se encuentra. "; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "Ninguna de las siguientes claves secretas/privadas se pudo encontrar en su juego de claves (%@). La clave secreta es necesaria para descifrar este adjunto.\n\nPor favor, compruebe con el remitente que este usó su clave pública correcta.\nCompruebe cualquier copia de seguridad de su juego de claves (keychain), y pruebe a importar la clave secreta desde allí."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "¡Descifrado se produjo el error desconocido!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Ocurrió un error desconocido al descifrar este adjunto.\n\nPor favor, contacte con nosotros en https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "¡Descifrado se produjo el error desconocido!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Ocurrió un error desconocido al descifrar este adjunto.\n\nMensaje de error de GPG:\n%@\nPor favor, contacte con nosotros en https://gpgtools.tenderapp.com, e incluya el mensaje de error de GPG."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Clave equivocada se utiliza para cifrar el archivo adjunto. "; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Este adjunto no se pudo descifrar, ya que se usó una clave pública errónea para cifrarlo.\n\nPor favor, contacte con nosotros en https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "El archivo adjunto cifrado está dañado. "; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Este archivo adjunto cifrado está dañado y no podía descifrar. ⏎ \n⏎ \nPor favor, pida al remitente que le envíe el mensaje de nuevo."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Clave de firma fue revocada."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "La clave que se usó para firmar este anexo fue revocada.\n\nUsted debe actualizar la clave ID de la llave con %@ en GPG Keychain para comprobar si una nueva está disponible. Si el nuevo aún está revocado, verifique con el remitente por la que se revoca la clave. "; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "La clave de firma no está en tu GPG Keychain. "; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "La firma de unión no pudo ser verificada, ya que la clave que se usó para firmar no está en tu GPG Keychain.\n\nBuscar la clave con ID %@ en GPG Keychain y de importación a comprobar el archivo adjunto. "; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "La firma fue creada con la unión de un algoritmo que no es compatible."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Este adjunto no se pudo verificar, ya que la clave para la firma fue creada con un algoritmo que no está soportado.\n\nPor favor, contacte con nosotros en https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATENCIÓN: La firma de apego no es válido!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Este adjunto podría haber sido modificado después de que la firma fuera creada.\n\nPor favor, contacte con el remitente y asegúrese de que el contenido del adjunto coincide con el original.\n\nPor favor, contacte con nosotros en\nhttps://gpgtools.tenderapp.com\nsi está seguro de que el adjunto no fue modificado."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "La verificación de firmas se produjo el error desconocido!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Ocurrió un error desconocido al verificar la firma de este adjunto.\n\nPor favor, contacte con nosotros en https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Datos de la firma de error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "La firma de este adjunto no es válida y no se pudo verificar.\n\nPor favor, contacte con nosotros en https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "La clave de la firma ha caducado."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "La clave que se usó para firmar este anexo ha caducado.\n\nUsted puede tratar de actualizar la clave con ID %@ en GPG Keychain y le preguntar el remitente por qué ha caducado la clave."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "La firma de la unión ha caducado."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "La firma de apego ha caducado y no pudo ser verificada. ⏎\n⏎\nPida al remitente que ha caducado por la firma."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "En parte cifrada"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "En Parte Firmado"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Cifrado"; +"MESSAGE_IS_PGP_SIGNED" = "Firmado"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Firma no válida"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Firmado con clave desconocida"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Firmado con la clave revocada"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Firma no válida"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Firmado"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No se encontró firma"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "cifrado/firmado adjunto"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "cifrado/firmado adjuntos"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "cifrado adjunto"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "cifrado adjuntos"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "firmado adjunto"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "firmado adjuntos"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "Este mensaje no se puede firmar, ya que no hay clave secreta (privada) para %@.\n\nPor favor, asegúrese de que la clave secreta para esta dirección existe en GPG Keychain. Añada una nueva identificación de usuario a una clave existente para esta dirección si es necesario, o cree una nueva clave para esta dirección.\n\nSi existe una clave para la dirección, asegúrese de que la dirección en Mail.app > Preferencias > Cuentas es correcta y coincide exactamente con la dirección de su clave."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Este mensaje no se pueden cifrar, ya que no hay claves públicas disponibles para las siguientes direcciones: %@.\n\nPor favor, use GPG Keychain para buscar e importar las claves de las direcciones."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Este mensaje no se pueden cifrar. Tienes que entrar por lo menos un primer destinatario."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Cifrado"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Firmado"; +"MESSAGE_VIEW_PGP_PART" = "parte de PGP"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail está listo."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Su instalación MacGPG está trabajando sin errores."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG no está instalado. Compruebe su instalación."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Por favor, descargar el instalador de GPG Suite https://gpgtools.org para instalar todos los GPG Suite."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Por favor revise su instalación y configuración."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Por favor, descargar el instalador de GPG Suite https://gpgtools.org para instalar todos los GPG Suite."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Advertencia: Deshabilitar esta opción podría llevar a la filtración de información sensible al componer un mensaje"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "Si la opción \"Almacenar borradores en el servidor\" está habilitada para sus cuentas, macOS Mail almacena automáticamente sus borradores en su servidor de correo mientras está componiendo un mensaje.\nDeshabilitando \"Cifrar borradores\", sus borradores se almacenarán como texto simple (no cifrado) de forma que cualquiera con acceso al servidor de correo puede leerlos.\n\nSi mantiene habilitado \"Cifrar borradores\", sus borradores se cifrarán antes de que se almacenen en un servidor de correo y sólo usted podrá leerlos.\n\n¿Todavía quiere deshabilitar \"Cifrar borradores\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Deshabilitar cifrado"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancelar"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Encontradas varias instalaciones de GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detectado varias instalaciones en las siguientes ubicaciones que dará lugar a un accidente de inmediato: ⏎\n⏎\n%@ ⏎\n⏎\nPor favor, retire el GPGMail.mailbundle en uno de los lugares y reinicie Correo. ⏎\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Salga Correo"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "No se encontró Libmacgpg"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg no se encontró en su sistema. Por favor, descargue e instale GPG Suite desde https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "¡Alguien manipuló su instalación de GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "¡Para mantenerle seguro, GPGMail no se cargará!\n\n¡Por favor, reinstale GPG Suite desde https://gpgtools.org para estar seguro de que tiene una versión original proveniente de nosotros!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "¡No se pudo cargar la configuración predeterminada de GPGMail!"; +NO_DEFAULTS_MESSAGE = "GPGMail no está funcionando como sería esperable.\n\nPor favor, descargue y reinstale GPG Suite desde https://gpgtools.org\n\nSi este problema persiste, por favor, contacte con nosotros en https://gpgtools.tenderapp.com"; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "¡El firmado de su mensaje falló debido a un pinentry estropeado!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, la herramienta responsable de pedir su contraseña, parece estar estropeado.\n\nPara corregir este problema, reinstale GPG Suite desde https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "¡La firma de su mensaje falló debido a un defecto del agente GPG!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "El agente GPG, que es una parte crucial de GPG, parece estar estropeado.\n\nPara corregir este problema, reinstale GPG Suite desde https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "¡La firma de su mensaje falló debido a un error de comunicación del agente GPG!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "No fue posible hablar con el agente GPG para solicitar su contraseña.\n\nPara corregir este problema, reinstale GPG Suite desde https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "La firma de su mensaje falló porque ha ocurrido un error desconocido"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Desafortunadamente no podemos manejar el error en este punto"; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "El cifrado de su mensaje falló porque ha ocurrido un error desconocido"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Desafortunadamente GPGMail no puede manejar el error en este punto."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Ha introducido mal la contraseña demasiadas veces."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "El firmado de su mensaje ha sido abortado porque introdujo mal la contraseña 3 veces."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nSi su problema persiste, por favor, contacte con nosotros en https://gpgtools.tenderapp.com con la siguiente descripción de error:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Ha abortado el descifrado de mensaje"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "El mensaje no se pudo descifrar porque ha cancelado la solicitud de contraseña."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Ha abortado el descifrado del adjunto"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "El adjunto no se pudo descifrar porque ha cancelado la petición de contraseña."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite no está funcionando como se esperaba"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "El descifrado de mensaje ha fallado.\n\nPor favor, reinstale GPG Suite desde https://gpgtools.org.\n\nSi el problema persiste, contacte con nosotros en https://gpgtools.tenderapp.com/ e incluya la información acerca de que el servicio xpc no está funcionando adecuadamente."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite no está funcionando como se esperaba"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "El descifrado del adjunto ha fallado.\n\nPor favor, reinstale GPG Suite desde https://gpgtools.org.\n\nSi este problema persiste, contacte con nosotros en https://gpgtools.tenderapp.com/ e incluya la información acerca de que el servicio xpc no está funcionando adecuadamente."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite no está funcionando como se esperaba"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "La verificación del mensaje ha fallado.\n\nPor favor, reinstale GPG Suite desde https://gpgtools.org.\n\nSi este problema persiste, contacte con nosotros en https://gpgtools.tenderapp.com/ e incluya la información acerca de que el servicio xpc no está funcionando adecuadamente."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite no está funcionando como se esperaba"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "La verificación del adjunto ha fallado.\n\nPor favor, reinstale GPG Suite desde https://gpgtools.org.\n\nSi este problema persiste, contacte con nosotros en https://gpgtools.tenderapp.com/ e incluya la información acerca de que el servicio xpc no está funcionando adecuadamente."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "El firmado de su mensaje ha fallado debido a un problema durante la solicitud de contraseña"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, la herramienta responsable de pedir su contraseña, no está funcionando adecuadamente.\n\nPara corregir este problema, por favor, reinstale GPG Suite desde https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "La firma de su mensaje falló debido a un problema en su instalación de GPGMail."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Para corregir este problema, por favor, reinstale GPG Suite desde https://gpgtools.org.\n\nSi este problema persiste, contacte con nosotros en https://gpgtools.tenderapp.com/ e incluya la información acerca de que el servicio xpc no está funcionando adecuadamente."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "El descifrado del mensaje falló debido a un pinentry estropeado"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, la herramienta responsable de pedir su contraseña, parece estar estropeado.\n\nPara corregir este problema, reinstale GPG Suite desde https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "El descifrado del adjunto falló debido a un pinentry defectuoso"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, la herramienta responsable de pedir su contraseña, parece estar estropeado.\n\nPara corregir este problema, reinstale GPG Suite desde https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Atención: Está a punto de enviar una respuesta no cifrada a un mensaje cifrado"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "No es posible cifrar su respuesta, porque la clave pública para el siguiente receptor está ausente:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "No es posible cifrar su respuesta, porque las claves públicas para los siguientes receptores están ausentes:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Si eligió continuar, su respuesta se enviará sin cifrar. Como resultado, podría filtrarse información confidencial, poniendo a usted y a sus receptores en riesgo."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nSi de verdad quiere enviar esta respuesta sin cifrar, por favor elimine cualquier comunicación previa incluida en su respuesta antes de enviarla."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "De otro modo, busque e importe las claves públicas correspondientes utilizando GPG Keychain para enviar la respuesta cifrada."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "De otro modo, busque e importe la clave pública correspondiente usando GPG Keychain para enviar la respuesta cifrada."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Enviar de todas formas"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancelar"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Atención: Está a punto de reenviar la versión descifrada de un mensaje cifrado."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "No es posible cifrar el mensaje que está a punto de reenviar, porque la clave pública para el siguiente destinatario está ausente:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "No es posible cifrar el mensaje que está a punto de reenviar, porque las claves públicas para los siguientes destinatarios están ausentes:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "Si escoge continuar, el mensaje que está a punto de reenviar se enviará sin cifrar. Como resultado, se puede filtrar información confidencial poniéndole a usted y sus destinatarios en riesgo."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "De otro modo, busque e importe las claves públicas correspondientes usando GPG Keychain para reenviar una versión cifrada del mensaje."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "De otro modo, busque e importe la clave pública correspondiente usando GPG Keychain para reenviar una versión cifrada del mensaje."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Reenviar de todos modos"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancelar"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Método de seguridad: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Firmar"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "No firmar"; + diff --git a/Resources/es.lproj/GPGMailPreferences.strings b/Resources/es.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..aa8b3686 --- /dev/null +++ b/Resources/es.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Actualizaciones"; +"728.title" = "Composición"; +"733.ibShadowedToolTip" = "Preguntas Frecuentes."; +"734.alternateTitle" = "Preguntas Frecuentes"; +"734.title" = "Base de conocimiento"; +"781.title" = "Cifrar borradores"; +"834.title" = "Botón"; +"1051.ibShadowedToolTip" = "Si tiene alguna otra pregunta."; +"1053.title" = "Informar de un problema"; +"0PS-Wm-gKl.title" = "Comprobar ahora"; +"0Th-7E-Y7P.title" = "Versión: xxx"; +"2ul-d0-5ir.title" = "Firmar nuevos correos"; +"80G-ZN-hjm.title" = "Comprobar automáticamente si hay actualizaciones"; +"8oZ-YB-M9Q.title" = "Las versiones (builds) beta se publican más a menudo. Las nuevas características y mejoras están menos probadas."; +"D6D-o9-63C.title" = "Mostrar las notas de versión"; +"UhD-uR-dUs.title" = "Incluir versiones (builds) beta"; +"q0m-y8-baf.title" = "Versión (build):"; +"yJs-2y-8Cb.title" = "Cifrar nuevos correos"; diff --git a/Resources/es.lproj/GPGSignatureView.strings b/Resources/es.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..7ae6922f --- /dev/null +++ b/Resources/es.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Firmas"; +"25.title" = "OK"; +"237.title" = "nombre"; +"251.title" = "Detalles"; +"252.ibShadowedNoSelectionPlaceholder" = "No firma"; +"365.title" = "Nombre:"; +"367.title" = "Clave"; +"369.title" = "Correo electrónico:"; +"372.title" = "Huella de validación:"; +"377.title" = "Algoritmo:"; +"378.title" = "Expira:"; +"379.title" = "Creado:"; +"381.title" = "Del propietario de la confianza:"; +"436.title" = "Creado:"; +"437.title" = "Firma"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Nunca"; diff --git a/Resources/es.lproj/SignatureView.strings b/Resources/es.lproj/SignatureView.strings new file mode 100644 index 00000000..e629c0e1 --- /dev/null +++ b/Resources/es.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Esta firma no es de fiar."; +"VALIDITY_OK" = "Esta firma se puede confiar."; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "La clave de esta firma fue revocada."; +"VALIDITY_SIGNATURE_EXPIRED" = "Esta firma ha caducado."; +"VALIDITY_KEY_EXPIRED" = "La clave de esta firma ha caducado."; +"VALIDITY_KEY_REVOKED" = "La clave de esta firma fue revocada."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Firma fue creada con algoritmo desconocido."; +"VALIDITY_NO_PUBLIC_KEY" = "La clave de esta firma no está en tu llavero."; +"VALIDITY_UNKNOWN_ERROR" = "De firma de error desconocido."; +"VALIDITY_BAD_SIGNATURE" = "Esta firma no es válida."; diff --git a/Resources/et.lproj/GPGAttachment.strings b/Resources/et.lproj/GPGAttachment.strings new file mode 100644 index 00000000..837de7b8 --- /dev/null +++ b/Resources/et.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Failed to verify the signature."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "The public key to verify the signature of this attachment is not in your keychain.\n\nPlease download the public key %@ using GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Failed to decrypt the attachment."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "The secret key to decrypt this attachment is not in your keychain."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "The attachment was decrypted successfully."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Open an attachment in the message view by double-clicking."; diff --git a/Resources/et.lproj/GPGAttachments.strings b/Resources/et.lproj/GPGAttachments.strings new file mode 100644 index 00000000..49739476 --- /dev/null +++ b/Resources/et.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Window"; +"8.title" = "OK"; +"210.title" = "name"; +"211.title" = "Details"; +"239.title" = "Key"; +"240.title" = "Name:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Created:"; +"245.title" = "Expires:"; +"246.title" = "Algorithm:"; +"247.title" = "Ownertrust:"; +"256.title" = "Signature"; +"257.title" = "Created:"; +"291.title" = "The signature could not be verified."; +"293.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"382.title" = "The signature could not be verified."; +"383.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/et.lproj/GPGMail.strings b/Resources/et.lproj/GPGMail.strings new file mode 100644 index 00000000..84498d52 --- /dev/null +++ b/Resources/et.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Versioon: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Unable to decrypt PGP message."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "There was a problem decrypting this message. Verify that you have a valid key in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Unable to verify PGP message signature."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "There was a problem reading the PGP signature for this message."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP key for this message is not in your keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "The message has a valid PGP signature, but the PGP key is not in your keychain. Please use GPG Keychain to add it."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "No information is available for this PGP key."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "No additional information is known about this PGP key, because it's not in your keychain."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the message is missing."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this message."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This message could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted message is damaged."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted message is damaged and could not be decrypted.\n\nPlease ask the sender to re-send the message."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this message was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The key to this message signature is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The message could not be verified, since the key which was used to sign this message is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the message."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "The message signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This message could not be verified, since the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The signature of this message is invalid!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verification of message signature failed with unknown error!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this message's signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Message signature data error!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This message's signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Message signature's key is expired."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this message is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The message signature is expired."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d attachments failed to decrypt or verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d attachments failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d attachments failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d attachment failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d attachment failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the attachment is missing."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this attachment."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This attachment could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted attachment is damaged."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted attachment is damaged and could not be decrypted.\n\nPlease ask the sender to send you the message again."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The signature key is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "The attachment signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This attachment could not be verified, since the key to the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The attachment signature is invalid!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\n if you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Signature verification failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signature data error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This attachment signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "The key of the signature is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Partly Encrypted"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Partly Signed"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Encrypted"; +"MESSAGE_IS_PGP_SIGNED" = "Signed"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Invalid Signature"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signed with unknown key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signed with revoked key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Invalid signature"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signed"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No signature found"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "encrypted attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "encrypted attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signed attachments"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "This message can't be encrypted, since there are no public keys available for the following addresses: %@.\n\nPlease use GPG Keychain to search and import the keys for those addresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Encrypted"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signed"; +"MESSAGE_VIEW_PGP_PART" = "PGP part"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail is ready."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Your MacGPG installation is working with no errors."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Please check your installation and configuration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Found multiple installations of GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/et.lproj/GPGMailPreferences.strings b/Resources/et.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..f00a9ead --- /dev/null +++ b/Resources/et.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Uuendused"; +"728.title" = "Composing"; +"733.ibShadowedToolTip" = "Korduma kippuvad küsimused."; +"734.alternateTitle" = "Korduma kippuvad küsimused"; +"734.title" = "Knowledge Base"; +"781.title" = "Encrypt drafts"; +"834.title" = "Nupp"; +"1051.ibShadowedToolTip" = "If you've any other question."; +"1053.title" = "Report Problem"; +"0PS-Wm-gKl.title" = "Kontrolli kohe"; +"0Th-7E-Y7P.title" = "Version: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Automatically check for updates"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "Show Release Notes"; +"UhD-uR-dUs.title" = "Include beta builds"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/et.lproj/GPGSignatureView.strings b/Resources/et.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..0e32cad7 --- /dev/null +++ b/Resources/et.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Signatures"; +"25.title" = "OK"; +"237.title" = "name"; +"251.title" = "Details"; +"252.ibShadowedNoSelectionPlaceholder" = "No signature"; +"365.title" = "Name:"; +"367.title" = "Key"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algorithm:"; +"378.title" = "Expires:"; +"379.title" = "Created:"; +"381.title" = "Ownertrust:"; +"436.title" = "Created:"; +"437.title" = "Signature"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/et.lproj/SignatureView.strings b/Resources/et.lproj/SignatureView.strings new file mode 100644 index 00000000..4470da3d --- /dev/null +++ b/Resources/et.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "This signature is not to be trusted."; +"VALIDITY_OK" = "This signature can be trusted"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "The key of this signature was revoked."; +"VALIDITY_SIGNATURE_EXPIRED" = "This signature is expired."; +"VALIDITY_KEY_EXPIRED" = "The key of this signature is expired."; +"VALIDITY_KEY_REVOKED" = "The key of this signature was revoked."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Signature was created with unknown algorithm."; +"VALIDITY_NO_PUBLIC_KEY" = "The key of this signature is not in your keychain."; +"VALIDITY_UNKNOWN_ERROR" = "Unknown signature error."; +"VALIDITY_BAD_SIGNATURE" = "This signature is invalid."; diff --git a/Resources/fa-IR.lproj/GPGAttachments.strings b/Resources/fa-IR.lproj/GPGAttachments.strings new file mode 100644 index 00000000..cd969cfd --- /dev/null +++ b/Resources/fa-IR.lproj/GPGAttachments.strings @@ -0,0 +1,123 @@ + +/* Class = "NSWindow"; title = "Window"; ObjectID = "2"; */ +"2.title" = "Window"; + +/* Class = "NSButtonCell"; title = "OK"; ObjectID = "8"; */ +"8.title" = "OK"; + +/* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "67"; */ +"67.title" = "Text Cell"; + +/* Class = "NSTextFieldCell"; title = "expirationDate"; ObjectID = "204"; */ +"204.title" = "expirationDate"; + +/* Class = "NSTextFieldCell"; title = "Expires on:"; ObjectID = "205"; */ +"205.title" = "Expires on:"; + +/* Class = "NSTextFieldCell"; title = "validityDescription"; ObjectID = "208"; */ +"208.title" = "validityDescription"; + +/* Class = "NSTextFieldCell"; title = "emailAndID"; ObjectID = "209"; */ +"209.title" = "emailAndID"; + +/* Class = "NSTextFieldCell"; title = "name"; ObjectID = "210"; */ +"210.title" = "name"; + +/* Class = "NSTextFieldCell"; title = "Details"; ObjectID = "211"; */ +"211.title" = "Details"; + +/* Class = "NSBox"; title = "Box"; ObjectID = "215"; */ +"215.title" = "Box"; + +/* Class = "NSBox"; title = "Box"; ObjectID = "221"; */ +"221.title" = "Box"; + +/* Class = "NSTextFieldCell"; title = "Key"; ObjectID = "239"; */ +"239.title" = "Key"; + +/* Class = "NSTextFieldCell"; title = "Name:"; ObjectID = "240"; */ +"240.title" = "Name:"; + +/* Class = "NSTextFieldCell"; title = "E-Mail:"; ObjectID = "241"; */ +"241.title" = "E-Mail:"; + +/* Class = "NSTextFieldCell"; title = "Comment:"; ObjectID = "242"; */ +"242.title" = "Comment:"; + +/* Class = "NSTextFieldCell"; title = "Key ID:"; ObjectID = "243"; */ +"243.title" = "Key ID:"; + +/* Class = "NSTextFieldCell"; title = "Created:"; ObjectID = "244"; */ +"244.title" = "Created:"; + +/* Class = "NSTextFieldCell"; title = "Expires:"; ObjectID = "245"; */ +"245.title" = "Expires:"; + +/* Class = "NSTextFieldCell"; title = "Algorithm:"; ObjectID = "246"; */ +"246.title" = "Algorithm:"; + +/* Class = "NSTextFieldCell"; title = "Ownertrust:"; ObjectID = "247"; */ +"247.title" = "Ownertrust:"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.name"; ObjectID = "248"; */ +"248.title" = "gpgKey.name"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.email"; ObjectID = "249"; */ +"249.title" = "gpgKey.email"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.comment"; ObjectID = "250"; */ +"250.title" = "gpgKey.comment"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.keyID"; ObjectID = "251"; */ +"251.title" = "gpgKey.keyID"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.creationDate"; ObjectID = "252"; */ +"252.title" = "gpgKey.creationDate"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.expirationDate"; ObjectID = "253"; */ +"253.title" = "gpgKey.expirationDate"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.algorithm"; ObjectID = "254"; */ +"254.title" = "gpgKey.algorithm"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.ownerTrust"; ObjectID = "255"; */ +"255.title" = "gpgKey.ownerTrust"; + +/* Class = "NSTextFieldCell"; title = "Signature"; ObjectID = "256"; */ +"256.title" = "Signature"; + +/* Class = "NSTextFieldCell"; title = "Created:"; ObjectID = "257"; */ +"257.title" = "Created:"; + +/* Class = "NSTextFieldCell"; title = "signature.creationDate"; ObjectID = "258"; */ +"258.title" = "signature.creationDate"; + +/* Class = "NSTextFieldCell"; title = "Expires:"; ObjectID = "259"; */ +"259.title" = "Expires:"; + +/* Class = "NSTextFieldCell"; title = "signature.expirationDate"; ObjectID = "260"; */ +"260.title" = "signature.expirationDate"; + +/* Class = "NSTextFieldCell"; title = "The signature could not be verified."; ObjectID = "291"; */ +"291.title" = "The signature could not be verified."; + +/* Class = "NSTextFieldCell"; title = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; ObjectID = "293"; */ +"293.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; + +/* Class = "NSTextFieldCell"; title = " "; ObjectID = "300"; */ +"300.title" = " "; + +/* Class = "IBBindingConnection"; ibShadowedIsNilPlaceholder = "No expiration is set on this signature"; ObjectID = "325"; */ +"325.ibShadowedIsNilPlaceholder" = "No expiration is set on this signature"; + +/* Class = "IBBindingConnection"; ibShadowedIsNilPlaceholder = "No expiration is set on this signature"; ObjectID = "353"; */ +"353.ibShadowedIsNilPlaceholder" = "No expiration is set on this signature"; + +/* Class = "IBBindingConnection"; ibShadowedIsNilPlaceholder = "No expiration is set on this signature"; ObjectID = "366"; */ +"366.ibShadowedIsNilPlaceholder" = "No expiration is set on this signature"; + +/* Class = "NSTextFieldCell"; title = "The signature could not be verified."; ObjectID = "382"; */ +"382.title" = "The signature could not be verified."; + +/* Class = "NSTextFieldCell"; title = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; ObjectID = "383"; */ +"383.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; diff --git a/Resources/fa-IR.lproj/GPGMailPreferences.strings b/Resources/fa-IR.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..20adcdc5 --- /dev/null +++ b/Resources/fa-IR.lproj/GPGMailPreferences.strings @@ -0,0 +1,69 @@ + +/* Class = "NSTextFieldCell"; title = "GPGMail"; ObjectID = "709"; */ +"709.title" = "GPGMail"; + +/* Class = "NSTextFieldCell"; title = "Updates"; ObjectID = "715"; */ +"715.title" = "Updates"; + +/* Class = "NSTextFieldCell"; title = "Composing"; ObjectID = "728"; */ +"728.title" = "Composing"; + +/* Class = "NSBox"; title = "Box"; ObjectID = "732"; */ +"732.title" = "Box"; + +/* Class = "NSButton"; ibShadowedToolTip = "Frequently Asked Questions."; ObjectID = "733"; */ +"733.ibShadowedToolTip" = "Frequently Asked Questions."; + +/* Class = "NSButtonCell"; alternateTitle = "Frequently Asked Questions"; ObjectID = "734"; */ +"734.alternateTitle" = "Frequently Asked Questions"; + +/* Class = "NSButtonCell"; title = "Knowledge Base"; ObjectID = "734"; */ +"734.title" = "Knowledge Base"; + +/* Class = "NSTextFieldCell"; title = "Reading"; ObjectID = "744"; */ +"744.title" = "Reading"; + +/* Class = "NSButtonCell"; title = "Encrypt drafts"; ObjectID = "781"; */ +"781.title" = "Encrypt drafts"; + +/* Class = "NSButton"; ibShadowedToolTip = "See Preferences -> Viewing -> List Preview."; ObjectID = "786"; */ +"786.ibShadowedToolTip" = "See Preferences -> Viewing -> List Preview."; + +/* Class = "NSButtonCell"; title = "Create List Preview"; ObjectID = "787"; */ +"787.title" = "Create List Preview"; + +/* Class = "NSButtonCell"; title = "Button"; ObjectID = "834"; */ +"834.title" = "Button"; + +/* Class = "NSButton"; ibShadowedToolTip = "If you've any other question."; ObjectID = "1051"; */ +"1051.ibShadowedToolTip" = "If you've any other question."; + +/* Class = "NSButtonCell"; title = "Report Problem"; ObjectID = "1053"; */ +"1053.title" = "Report Problem"; + +/* Class = "NSButtonCell"; title = "Check Now"; ObjectID = "0PS-Wm-gKl"; */ +"0PS-Wm-gKl.title" = "Check Now"; + +/* Class = "NSTextFieldCell"; title = "Version: xxx"; ObjectID = "0Th-7E-Y7P"; */ +"0Th-7E-Y7P.title" = "Version: xxx"; + +/* Class = "NSButtonCell"; title = "Sign new messages by default"; ObjectID = "2ul-d0-5ir"; */ +"2ul-d0-5ir.title" = "Sign new messages by default"; + +/* Class = "NSButtonCell"; title = "Automatically check for updates"; ObjectID = "80G-ZN-hjm"; */ +"80G-ZN-hjm.title" = "Automatically check for updates"; + +/* Class = "NSTextFieldCell"; title = "Beta builds are published more often. New features and improvements are less tested."; ObjectID = "8oZ-YB-M9Q"; */ +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; + +/* Class = "NSButtonCell"; title = "Show Release Notes"; ObjectID = "D6D-o9-63C"; */ +"D6D-o9-63C.title" = "Show Release Notes"; + +/* Class = "NSButtonCell"; title = "Include beta builds"; ObjectID = "UhD-uR-dUs"; */ +"UhD-uR-dUs.title" = "Include beta builds"; + +/* Class = "NSTextFieldCell"; title = "Build:"; ObjectID = "q0m-y8-baf"; */ +"q0m-y8-baf.title" = "Build:"; + +/* Class = "NSButtonCell"; title = "Encrypt new messages by default"; ObjectID = "yJs-2y-8Cb"; */ +"yJs-2y-8Cb.title" = "Encrypt new messages by default"; diff --git a/Resources/fa-IR.lproj/GPGSignatureView.strings b/Resources/fa-IR.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..35ed09f9 --- /dev/null +++ b/Resources/fa-IR.lproj/GPGSignatureView.strings @@ -0,0 +1,108 @@ + +/* Class = "NSWindow"; title = "Signatures"; ObjectID = "21"; */ +"21.title" = "Signatures"; + +/* Class = "NSButtonCell"; title = "OK"; ObjectID = "25"; */ +"25.title" = "OK"; + +/* Class = "NSTextFieldCell"; title = "signature.creationDate"; ObjectID = "233"; */ +"233.title" = "signature.creationDate"; + +/* Class = "NSTextFieldCell"; title = "validityDescription"; ObjectID = "235"; */ +"235.title" = "validityDescription"; + +/* Class = "NSTextFieldCell"; title = "Created:"; ObjectID = "236"; */ +"236.title" = "Created:"; + +/* Class = "NSTextFieldCell"; title = "name"; ObjectID = "237"; */ +"237.title" = "name"; + +/* Class = "NSTextFieldCell"; title = "Details"; ObjectID = "251"; */ +"251.title" = "Details"; + +/* Class = "IBBindingConnection"; ibShadowedNoSelectionPlaceholder = "No signature"; ObjectID = "252"; */ +"252.ibShadowedNoSelectionPlaceholder" = "No signature"; + +/* Class = "NSTextFieldCell"; title = "emailAndID"; ObjectID = "255"; */ +"255.title" = "emailAndID"; + +/* Class = "NSTextFieldCell"; title = "Name:"; ObjectID = "365"; */ +"365.title" = "Name:"; + +/* Class = "NSTextFieldCell"; title = "Key"; ObjectID = "367"; */ +"367.title" = "Key"; + +/* Class = "NSTextFieldCell"; title = "E-Mail:"; ObjectID = "369"; */ +"369.title" = "E-Mail:"; + +/* Class = "NSTextFieldCell"; title = "Key ID:"; ObjectID = "372"; */ +"372.title" = "Key ID:"; + +/* Class = "NSTextFieldCell"; title = "Comment:"; ObjectID = "373"; */ +"373.title" = "Comment:"; + +/* Class = "NSTextFieldCell"; title = "Algorithm:"; ObjectID = "377"; */ +"377.title" = "Algorithm:"; + +/* Class = "NSTextFieldCell"; title = "Expires:"; ObjectID = "378"; */ +"378.title" = "Expires:"; + +/* Class = "NSTextFieldCell"; title = "Created:"; ObjectID = "379"; */ +"379.title" = "Created:"; + +/* Class = "NSTextFieldCell"; title = "Ownertrust:"; ObjectID = "381"; */ +"381.title" = "Ownertrust:"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.name"; ObjectID = "383"; */ +"383.title" = "gpgKey.name"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.email"; ObjectID = "385"; */ +"385.title" = "gpgKey.email"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.keyID"; ObjectID = "388"; */ +"388.title" = "gpgKey.keyID"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.comment"; ObjectID = "389"; */ +"389.title" = "gpgKey.comment"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.ownerTrust"; ObjectID = "394"; */ +"394.title" = "gpgKey.ownerTrust"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.algorithm"; ObjectID = "395"; */ +"395.title" = "gpgKey.algorithm"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.expirationDate"; ObjectID = "396"; */ +"396.title" = "gpgKey.expirationDate"; + +/* Class = "NSTextFieldCell"; title = "gpgKey.creationDate"; ObjectID = "397"; */ +"397.title" = "gpgKey.creationDate"; + +/* Class = "NSBox"; title = "Box"; ObjectID = "425"; */ +"425.title" = "Box"; + +/* Class = "NSBox"; title = "Box"; ObjectID = "432"; */ +"432.title" = "Box"; + +/* Class = "NSTextFieldCell"; title = "signature.expirationDate"; ObjectID = "433"; */ +"433.title" = "signature.expirationDate"; + +/* Class = "NSTextFieldCell"; title = "Expires:"; ObjectID = "434"; */ +"434.title" = "Expires:"; + +/* Class = "NSTextFieldCell"; title = "signature.creationDate"; ObjectID = "435"; */ +"435.title" = "signature.creationDate"; + +/* Class = "NSTextFieldCell"; title = "Created:"; ObjectID = "436"; */ +"436.title" = "Created:"; + +/* Class = "NSTextFieldCell"; title = "Signature"; ObjectID = "437"; */ +"437.title" = "Signature"; + +/* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "483"; */ +"483.title" = "Text Cell"; + +/* Class = "IBBindingConnection"; ibShadowedIsNilPlaceholder = "No expiration is set on this signature"; ObjectID = "531"; */ +"531.ibShadowedIsNilPlaceholder" = "No expiration is set on this signature"; + +/* Class = "IBBindingConnection"; ibShadowedIsNilPlaceholder = "No expiration is set on this key"; ObjectID = "532"; */ +"532.ibShadowedIsNilPlaceholder" = "No expiration is set on this key"; diff --git a/Resources/fa_IR.lproj/GPGAttachment.strings b/Resources/fa_IR.lproj/GPGAttachment.strings new file mode 100644 index 00000000..b416bff2 --- /dev/null +++ b/Resources/fa_IR.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "صحت‌سنجی امضا با شکست مواجه شد"; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "کلید عمومی برای صحت‌سنجی امضای این پیوست در زنجیر کلید شما نیست.\n\nلطفا کلید عمومی %@ را با استفاده از GPG Keychain بارگیری کنید."; +"DECRYPT_ERROR_GENERAL_TITLE" = "رمزگشایی امضا با شکست مواجه شد."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "کلید محرمانه برای رمزگشایی این پیوست در زنجیر کلید شما نیست."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "پیوست با موفقیت رمزگشایی شد."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "یک پیوست در پیغام را با دوبار click مشاهده کنید."; diff --git a/Resources/fa_IR.lproj/GPGAttachments.strings b/Resources/fa_IR.lproj/GPGAttachments.strings new file mode 100644 index 00000000..30ba1257 --- /dev/null +++ b/Resources/fa_IR.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "پنجره"; +"8.title" = "تایید"; +"210.title" = "نام"; +"211.title" = "جزئیات"; +"239.title" = "کلید"; +"240.title" = "نام:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "تاریخ تولید:"; +"245.title" = "تاریخ انقضا:"; +"246.title" = "الگوریتم:"; +"247.title" = "Ownertrust:"; +"256.title" = "امضا"; +"257.title" = "تولید شده:"; +"291.title" = "امضا نمی‌تواند صحت‌سنجی شود."; +"293.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"382.title" = "امضا نمی‌تواند صحت‌سنجی شود."; +"383.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/fa_IR.lproj/GPGMail.strings b/Resources/fa_IR.lproj/GPGMail.strings new file mode 100644 index 00000000..27a855c7 --- /dev/null +++ b/Resources/fa_IR.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Version: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Unable to decrypt PGP message."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "There was a problem decrypting this message. Verify that you have a valid key in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Unable to verify PGP message signature."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "There was a problem reading the PGP signature for this message."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP key for this message is not in your keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "The message has a valid PGP signature, but the PGP key is not in your keychain. Please use GPG Keychain to add it."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "No information is available for this PGP key."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "No additional information is known about this PGP key, because it's not in your keychain."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the message is missing."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this message."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This message could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted message is damaged."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted message is damaged and could not be decrypted.\n\nPlease ask the sender to re-send the message."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this message was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The key to this message signature is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The message could not be verified, since the key which was used to sign this message is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the message."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "The message signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This message could not be verified, since the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The signature of this message is invalid!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verification of message signature failed with unknown error!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this message's signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Message signature data error!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This message's signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Message signature's key is expired."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this message is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The message signature is expired."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d attachments failed to decrypt or verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d attachments failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d attachments failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d attachment failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d attachment failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the attachment is missing."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this attachment."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This attachment could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted attachment is damaged."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted attachment is damaged and could not be decrypted.\n\nPlease ask the sender to send you the message again."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The signature key is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "The attachment signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This attachment could not be verified, since the key to the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The attachment signature is invalid!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\n if you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Signature verification failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signature data error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This attachment signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "The key of the signature is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Partly Encrypted"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Partly Signed"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Encrypted"; +"MESSAGE_IS_PGP_SIGNED" = "Signed"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Invalid Signature"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signed with unknown key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signed with revoked key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Invalid signature"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signed"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No signature found"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "encrypted attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "encrypted attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signed attachments"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "This message can't be encrypted, since there are no public keys available for the following addresses: %@.\n\nPlease use GPG Keychain to search and import the keys for those addresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Encrypted"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signed"; +"MESSAGE_VIEW_PGP_PART" = "PGP part"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail is ready."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Your MacGPG installation is working with no errors."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Please check your installation and configuration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Found multiple installations of GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/fa_IR.lproj/GPGMailPreferences.strings b/Resources/fa_IR.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..9cc3061a --- /dev/null +++ b/Resources/fa_IR.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Updates"; +"728.title" = "Composing"; +"733.ibShadowedToolTip" = "Frequently Asked Questions."; +"734.alternateTitle" = "Frequently Asked Questions"; +"734.title" = "Knowledge Base"; +"781.title" = "Encrypt drafts"; +"834.title" = "Button"; +"1051.ibShadowedToolTip" = "If you've any other question."; +"1053.title" = "Report Problem"; +"0PS-Wm-gKl.title" = "Check Now"; +"0Th-7E-Y7P.title" = "Version: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Automatically check for updates"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "Show Release Notes"; +"UhD-uR-dUs.title" = "Include beta builds"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/fa_IR.lproj/GPGSignatureView.strings b/Resources/fa_IR.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..233ace88 --- /dev/null +++ b/Resources/fa_IR.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Signatures"; +"25.title" = "تایید"; +"237.title" = "نام"; +"251.title" = "جزئیات"; +"252.ibShadowedNoSelectionPlaceholder" = "No signature"; +"365.title" = "نام:"; +"367.title" = "کلید"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "الگوریتم:"; +"378.title" = "تاریخ انقضا:"; +"379.title" = "تولید شده:"; +"381.title" = "Ownertrust:"; +"436.title" = "تولید شده:"; +"437.title" = "امضا"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/fa_IR.lproj/SignatureView.strings b/Resources/fa_IR.lproj/SignatureView.strings new file mode 100644 index 00000000..4470da3d --- /dev/null +++ b/Resources/fa_IR.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "This signature is not to be trusted."; +"VALIDITY_OK" = "This signature can be trusted"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "The key of this signature was revoked."; +"VALIDITY_SIGNATURE_EXPIRED" = "This signature is expired."; +"VALIDITY_KEY_EXPIRED" = "The key of this signature is expired."; +"VALIDITY_KEY_REVOKED" = "The key of this signature was revoked."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Signature was created with unknown algorithm."; +"VALIDITY_NO_PUBLIC_KEY" = "The key of this signature is not in your keychain."; +"VALIDITY_UNKNOWN_ERROR" = "Unknown signature error."; +"VALIDITY_BAD_SIGNATURE" = "This signature is invalid."; diff --git a/Resources/fi.lproj/GPGAttachment.strings b/Resources/fi.lproj/GPGAttachment.strings new file mode 100644 index 00000000..aea28f40 --- /dev/null +++ b/Resources/fi.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Allekirjoitusta ei voitu varmentaa."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "Allekirjoituksen varmentamiseen ei löytynyt julkista avainta avainrenkaastasi.\nOle hyvä ja lataa julkinen avain %@ GPG Keychain -sovelluksella. "; +"DECRYPT_ERROR_GENERAL_TITLE" = "Liitetiedoston salauksen purku epäonnistui."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Avainrenkaassasi ei ole liitetiedoston salauksen purkamiseen tarvittavaa yksityistä avainta."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Liitetiedoston salauksen purku onnistui."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Avaa liite viestinäkymässä kaksoisnapsauttamalla."; diff --git a/Resources/fi.lproj/GPGAttachments.strings b/Resources/fi.lproj/GPGAttachments.strings new file mode 100644 index 00000000..9944c08a --- /dev/null +++ b/Resources/fi.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Ikkuna"; +"8.title" = "OK"; +"210.title" = "nimi"; +"211.title" = "Yksityiskohdat"; +"239.title" = "Avain"; +"240.title" = "Nimi:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Luotu:"; +"245.title" = "Vanhentuu:"; +"246.title" = "Algoritmi:"; +"247.title" = "Omistajan luottamus:"; +"256.title" = "Allekirjoitus"; +"257.title" = "Luotu:"; +"291.title" = "Allekirjoitusta ei pystytty todentamaan."; +"293.title" = "Allekirjoitusta ei pystytty todentamaan, koska avainta ei löytynyt avainrenkaastasi.\nOle hyvä ja lataa avain GPG Keychain-sovelluksella."; +"382.title" = "Allekirjoitusta ei pystytty todentamaan."; +"383.title" = "Allekirjoitusta ei pystytty todentamaan, koska avainta ei löytynyt avainrenkaastasi.\nOle hyvä ja lataa avain GPG Keychain-sovelluksella."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/fi.lproj/GPGMail.strings b/Resources/fi.lproj/GPGMail.strings new file mode 100644 index 00000000..cdefd91d --- /dev/null +++ b/Resources/fi.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Versio: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "PGP-viestiä ei voitu purkaa."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Viestin purkaminen epäonnistui. Varmista että sinulla on oikea avain avainrenkaassasi."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "PGP-viestin allekirjoitusta ei voitu varmentaa."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "PGP-allekirjoituksen lukeminen epäonnistui."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "Avainrenkaassasi ei ole PGP-avainta tälle viestille."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Viestillä on PGP-allekirjoitus, mutta PGP-avainta ei ole avainrenkaassasi. Ole hyvä ja lisää se GPG Keychain."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Tästä PGP-avaimesta ei ole saatavilla tietoja."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Tästä PGP-avaimesta ei ole lisätietoja, koska se ei ole avainrenkaassasi."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Viestin purkuun vaadittava salainen avain puuttuu."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Salauksen purkaminen epäonnistui tuntemattoman virheen takia!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Tuntematon virhe salausta purettaessa.\n\nOle hyvä ja ota yhteyttä meihin osoitteessa https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Salauksen purkaminen epäonnistui tuntemattoman virheen takia!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Tuntematon virhe salausta purettaessa.\n\nGPG:n virheilmoitus:\n%@\nOle hyvä ja ota yhteyttä meihin osoitteessa https://gpgtools.tenderapp.com\nLiitä mukaan myös virheilmoituksen teksti."; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Tämä viesti on salattu väärällä avaimella."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Viestiä ei voitu purkaa, koska se on salattu väärällä julkisella avaimella.\n\nOle hyvä ja ota yhteyttä meihin osoitteessa https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Salattu viesti on vahingoittunut."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Tämä salattu viesti on vahingoittunut eikä sitä voida purkaa.\n\nOle hyvä ja pyydä lähettäjää lähettämään viesti uudelleen."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Allekirjoituksen avain on merkitty kumotuksi."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "Tämän viestin allekirjoitukseen käytetty avain on kumottu.\n\nTarkista GPG Keychain - ohjelmalla onko avainta (ID %@) uusittu. Jos avain on edelleen kumottu, on syytä tarkistaa lähettäjältä kumoamisen syy ja suhtautua viestiin varovaisuudella siihen asti."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Tämän allekirjoituksen avainta ei ole avainrenkaassasi."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Viestiä ei voida varmentaa, koska sen allekirjoitukseen käytettyä avainta ei löydy avainnipustasi.\n\nNouda ja tuo avain (ID %@) GPG Keychain - ohjelmalla ja yritä sitten uudelleen."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "Tämä allekirjoitus on luotu käyttäen algoritmiä jota ei tueta."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Viestiä ei pystytä varmentamaan, koska allekirjoitus on luotu käyttäen algoritmia, jota ei tueta."; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "HUOMIO: Tämän viestin allekirjoitus on virheellinen!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Allekirjoituksen varmistus epäonnistui tuntemattoman virheen takia."; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Tuntematon virhe havaittu viestin allekirjoitusta varmennettaessa.\n\nOle hyvä ja ota yhteyttä meihin osoitteessa https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Viestin allekirjoitus on vaurioitunut!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Tämän viestin allekirjoitus on virheellinen eikä sitä pystytä varmentamaan.\n\nOle hyvä ja ota yhteyttä meihin osoitteessa https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Allekirjoituksen avain on vanhentunut."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "Avain, jolla viesti on allekirjoitettu, on vanhentunut.\n\nVoit yrittää ladata avaimen uudelleen, tunnistetiedon ID %@ kanssa, avainrenkaastasi ja kysyä lähettäjältä vanhentuneen avaimen syytä."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Allekirjoitus on vanhentunut."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Allekirjoitus on vanhentunut eikä sitä voida varmentaa.\n\nKysy viestin lähettäjältä syytä vanhentuneeseen allekirjoitukseen"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d liitteen salauksen purku tai allekirjoituksen varmistus epäonnistui."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Ole hyvä ja paina liitekuvaketta otsakkeen turvallisuusosassa saadaksesi lisätietoja."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d liitteen allekirjoituksen varmistus epäonnistui."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Ole hyvä ja paina liitekuvaketta otsakkeen turvallisuusosassa saadaksesi lisätietoja."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d liitteen salauksen purku epäonnistui."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Ole hyvä ja paina liitekuvaketta otsakkeen turvallisuusosassa saadaksesi lisätietoja."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d liitteen allekirjoituksen varmistus epäonnistui."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Ole hyvä ja paina liitekuvaketta otsakkeen turvallisuusosassa saadaksesi lisätietoja."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d liitteen salauksen purku epäonnistui."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Ole hyvä ja paina liitekuvaketta otsakkeen turvallisuusosassa saadaksesi lisätietoja."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Liitteen salauksen purkamiseen tarvittavaa salaista avainta ei löydy."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Salauksen purkaminen epäonnistui tuntemattoman virheen takia!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Tuntematon virhe ilmeni liitteen salausta purkaessa.\n\nOle hyvä ja ota yhteyttä https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Salauksen purkaminen epäonnistui tuntemattoman virheen takia!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Tuntematon virhe ilmeni liitteen salausta purkaessa.\n\nGPG virheviesti:\n%@\nOle hyvä ja ota yhteyttä, https://gpgtools.tenderapp.com/ ja liitä virheviesti mukaan"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Liitteen avaamiseen käytetty väärää avainta."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Liitteen salausta ei pystytty purkamaan, koska väärää avainta on käytetty sen salaamiseksi.\n\nOle hyvä ja ota yhteyttä, https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Salattu liitetiedosto on vaurioitunut."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Salattu liite on vioittunut ja salausta ei voida purkaa.\n\nPyydä lähettäjää lähetämään viesti uudestaan."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Allekirjoituksen avain on merkitty kumotuksi."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Allekirjoituksen avain ei ole avainrenkaassasi."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "Liitteen allekirjoitus on luotu käyttämällä algoritmia, jota ei tueta."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Liitettä ei voitu varmentaa, koska allekirjoitukseen käytetty avain on luotu käyttäen suojausalgoritmia jota ei tueta.\n\nOle hyvä ja ota yhteyttä tukipalveluun osoitteessa https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "HUOMIO: Liitteen allekirjoitus on epäkelpo."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\n if you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Allekirjoituksen varmentaminen epäonnistui tuntemattomasta virheestä johtuen!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Allekirjoitus on vaurioitunut!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Liitetteen allekirjoitus on epäkelpo eikä sitä voitu varmentaa.\n\nOle hyvä ja ota yhteyttä tukipalveluun osoitteessa https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Allekirjoituksen avain on vanhentunut."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Liitteen allekirjoitus on vanhentunut."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Osittain salattu"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Osittain allekirjoitettu"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Salattu"; +"MESSAGE_IS_PGP_SIGNED" = "Allekirjoitettu"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Virheellinen allekirjoitus"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Allekirjoitettu tuntemattomalla avaimella"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Allekirjoitettu kumotulla avaimella"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Virheellinen allekirjoitus"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Allekirjoitettu"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Allekirjoitusta ei löydy."; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "Salattu/allekirjoitettu liitetiedosto"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "Salattuja/allekirjoitettuja liitetiedostoja"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "Salattu liitetiedosto"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "Salattuja liitetiedostoja"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "Allekirjoitettu liitetiedosto"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "Allekirjoitettuja liitetiedostoja"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Viestiä ei pystytä salaamaan, koska osoitteille %@ ei ole yhtään julkista avainta.\n\nOle hyvä ja etsi GPG avainrenkaasta oikea avain ja liitä se osoiteeseen."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Viestiä ei pystytä salaamaan. Sinun täytyy valita vähintään yksi vastaanottaja ensiksi."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Salattu"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Allekirjoitettu"; +"MESSAGE_VIEW_PGP_PART" = "PGP-osa"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail on valmis."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "MacGPG asentaminen on käynnissä virheettömästi."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Tarkista asennuksesi ja asetuksesi, ole hyvä."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Varoitus: Tämän toiminnan pois päältä kytkeminen voi mahdollistaa arkaluonteisen tiedon vuotamisen uutta viestiä luodessa."; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Kytke salaus pois"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Peruuta"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Aikaisempia GPGMail-asennuksia havaittu!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Poistu ohjelmasta"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg -kirjastoa ei löydy"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Joku peruutti GPGMail-ohjelman asennuksesi!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "GPGMail -ohjelman oletusasetuksia ei pystytty lataamaan!"; +NO_DEFAULTS_MESSAGE = "GPGMail ei toimi odotetusti.\n\nOle hyvä ja asenna GPG Suite uudelleen, osoitteesta https://gpgtools.org.\n\nJos ongelma jatkuu, ota yhteyttä tukipalveluun osoitteessa https://gpgtools.tenderapp.com."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Viestin allekirjoitus epäonnistui, koska avaintunnuslauseen kysely ei toimi."; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "Avaintunnuslauseen kyselytoiminne on rikki. Jos ongelma jatkuu, voit koettaa uudelleenasentaa GPG Suite -ohjelmiston osoitteesta https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Viestin allekirjoitus epäonnistui tuntemattoman virheen takia"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Annoit väärän salasanan liian monta kertaa."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Liitteen salausta ei purettu koska peruit salasanakyselyn."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite ei toimi odotetulla tavalla."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Viestin salauksen purku epäonnistui.\n\nOle hyvä ja asenna GPG Suite uudelleen, osoitteesta https://gpgtools.org.\n\nJos ongelma jatkuu, ota yhteyttä tukipalveluun osoitteessa https://gpgtools.tenderapp.com ja anna ongelmaraportissa tieto \"xpc service is not working properly\"."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite ei toimi odotetulla tavalla."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Liitteen salauksen purku epäonnistui.\n\nOle hyvä ja asenna GPG Suite uudelleen, osoitteesta https://gpgtools.org.\n\nJos ongelma jatkuu, ota yhteyttä tukipalveluun osoitteessa https://gpgtools.tenderapp.com ja anna ongelmaraportissa tieto \"xpc service is not working properly\"."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite ei toimi odotetulla tavalla."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Viestin varmennus epäonnistui.\n\nOle hyvä ja asenna GPG Suite uudelleen, osoitteesta https://gpgtools.org.\n\nJos ongelma jatkuu, ota yhteyttä tukipalveluun osoitteessa https://gpgtools.tenderapp.com ja anna ongelmaraportissa tieto \"xpc service is not working properly\"."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite ei toimi odotetulla tavalla."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Liitteen varmennus epäonnistui.\n\nOle hyvä ja asenna GPG Suite uudelleen, osoitteesta https://gpgtools.org.\n\nJos ongelma jatkuu, ota yhteyttä tukipalveluun osoitteessa https://gpgtools.tenderapp.com ja anna ongelmaraportissa tieto \"xpc service is not working properly\"."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Viestin allekirjoitus epäonnistui salasanakyselyn aikana ilmenneen ongelman takia."; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "Avaintunnuslauseen kysely ei toimi. Jos ongelma jatkuu, kokeile uudelleenasentaa GPG Suite - ohjelmisto osoitteesta https://gpgtools.org"; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Viestin allekirjoitus epäonnistui rikkinäisen GPGMail-asennuksen takia."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Korjaa ongelma asentamalla GPG Suite uudelleen, osoitteesta https://gpgtools.org.\n\nJos ongelma jatkuu, ota yhteyttä tukipalveluun osoitteessa https://gpgtools.tenderapp.com ja anna ongelmaraportissa tieto \"xpc service is not working properly\"."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Viestin salauksen purku epäonnistui, koska avaintunnuslauseen kysely ei toimi."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "Avaintunnuslauseen kyselytoiminne on rikki. Jos ongelma jatkuu, voit koettaa uudelleenasentaa GPG Suite -ohjelmiston osoitteesta https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Viestin salauksen purku epäonnistui, koska avaintunnuslauseen kyselyssä on virhe."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "Avaintunnuslauseen kyselytoiminne on rikki. Jos ongelma jatkuu, voit koettaa uudelleenasentaa GPG Suite -ohjelmiston osoitteesta https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Huomio: Olet lähettämässä, salattuun viestiin, salaamatonta vastausta."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Vastausta ei voida salata, koska ao. vastaanottajan julkista avainta ei löydy: \n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Vastausta ei voida salata, koska ao. vastaanottajien julkisia avaimia ei löydy: \n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Jos jatkat, vastauksesi lähetetään salaamattomana ja sen sisältö on tietovuodon sattuessa suojaton. Suojattoman viestin tietojen väärinkäytöstä voi koitua haittaa sinulle, viestin vastaanottajalle ja/tai muille asianosaisille."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nJos todellakin haluat lähettää vastauksen salaamattomana, ole hyvä ja jätä vastauksesta pois aiempi (salattu) kirjeenvaihto."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Muussa tapauksessa, nouda vastaavat julkiset avaimet GPG Keychain -ohjelmaan salataksesi vastauksen."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Lähetä joka tapauksessa"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Peruuta"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Peruuta"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Suojaustapa: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Allekirjoita"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Älä allekirjoita"; + diff --git a/Resources/fi.lproj/GPGMailPreferences.strings b/Resources/fi.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..8b8e8480 --- /dev/null +++ b/Resources/fi.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Päivitykset"; +"728.title" = "Kirjoita"; +"733.ibShadowedToolTip" = "Usein kysyttyjä kysymyksiä."; +"734.alternateTitle" = "Usein Kysytyt Kysymykset"; +"734.title" = "Tietämyskanta (Knowledge Base)"; +"781.title" = "Salaa luonnokset"; +"834.title" = "Painike"; +"1051.ibShadowedToolTip" = "Jos sinulla on jotain muuta kysyttävää."; +"1053.title" = "Ilmoita ongelmasta"; +"0PS-Wm-gKl.title" = "Tarkista nyt"; +"0Th-7E-Y7P.title" = "Versio: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Tarkista päivityksiä automaattisesti."; +"8oZ-YB-M9Q.title" = "Beta versioita julkaistaan useammin. Uusia toimintoja ja parannuksia on testattu vähemmän."; +"D6D-o9-63C.title" = "Näytä julkaisutiedot"; +"UhD-uR-dUs.title" = "Sisällytä beta-versiot"; +"q0m-y8-baf.title" = "Koontiversio:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/fi.lproj/GPGSignatureView.strings b/Resources/fi.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..6fbda156 --- /dev/null +++ b/Resources/fi.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Allekirjoitukset"; +"25.title" = "OK"; +"237.title" = "Nimi"; +"251.title" = "Yksityiskohdat"; +"252.ibShadowedNoSelectionPlaceholder" = "Ei allekirjoitusta"; +"365.title" = "Nimi:"; +"367.title" = "Avain:"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algoritmi:"; +"378.title" = "Vanhenemisaika:"; +"379.title" = "Luontiaika:"; +"381.title" = "Omistajan luottamus:"; +"436.title" = "Luotu:"; +"437.title" = "Allekirjoitus"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/fi.lproj/SignatureView.strings b/Resources/fi.lproj/SignatureView.strings new file mode 100644 index 00000000..d2f0726b --- /dev/null +++ b/Resources/fi.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Allekirjoitukseen ei luoteta."; +"VALIDITY_OK" = "Allekirjoitukseen voidaan luottaa."; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Avain jolla tämä allekirjoitus on suoritettu on peruutettu."; +"VALIDITY_SIGNATURE_EXPIRED" = "Allekirjoitus on vanhentunut."; +"VALIDITY_KEY_EXPIRED" = "Allekirjoituksen avain on vanhentunut."; +"VALIDITY_KEY_REVOKED" = "Avain jolla tämä allekirjoitus on suoritettu on peruutettu."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Allekirjoitus on luotu tuntemattomalla algoritmillä."; +"VALIDITY_NO_PUBLIC_KEY" = "Allekirjoituksen avain ei ole avainrenkaassasi."; +"VALIDITY_UNKNOWN_ERROR" = "Tuntematon virhe allekirjoituksessa."; +"VALIDITY_BAD_SIGNATURE" = "Tämä allekirjoitus on viallinen."; diff --git a/Resources/fr.lproj/Credits.rtf b/Resources/fr.lproj/Credits.rtf new file mode 100644 index 00000000..46a70a50 --- /dev/null +++ b/Resources/fr.lproj/Credits.rtf @@ -0,0 +1,11 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf350 +{\fonttbl\f0\fnil\fcharset0 LucidaGrande;} +{\colortbl;\red255\green255\blue255;} +\vieww9000\viewh8400\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc\pardirnatural + +\f0\fs22 \cf0 Contact: {\field{\*\fldinst{HYPERLINK "mailto:gpgtools-users@lists.gpgtools.org"}}{\fldrslt gpgtools-users@lists.gpgtools.org}}\ +Site web: {\field{\*\fldinst{HYPERLINK "http://gpgtools.org"}}{\fldrslt http://www.gpgtools.org}}\ +\ +\ +Ic\'f4nes ({\field{\*\fldinst{HYPERLINK "http://creativecommons.org/licenses/by-nc-sa/3.0/"}}{\fldrslt CC BY-NC-SA 3.0}}) par Josef Sahlberg {\field{\*\fldinst{HYPERLINK "http://yusf.se"}}{\fldrslt http://yusf.se}}} \ No newline at end of file diff --git a/Resources/fr.lproj/GPGAttachment.strings b/Resources/fr.lproj/GPGAttachment.strings new file mode 100644 index 00000000..3abd2ab9 --- /dev/null +++ b/Resources/fr.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "La vérification de la signature a échoué."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "La clé publique nécessaire pour vérifier la signature de cette pièce jointe n'est pas dans votre trousseau.\n\nMerci de télécharger la clé publique %@ en utilisant GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Le déchiffrement du fichier joint a échoué."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "La clé secrète pour déchiffrer ce fichier joint ne fait pas partie de votre trousseau."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Le fichier joint a été déchiffré avec succès."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Double-cliquez sur le fichier joint pour le visualiser."; diff --git a/Resources/fr.lproj/GPGAttachments.strings b/Resources/fr.lproj/GPGAttachments.strings new file mode 100644 index 00000000..dcf95aa2 --- /dev/null +++ b/Resources/fr.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Fenêtre"; +"8.title" = "OK"; +"210.title" = "nom"; +"211.title" = "Détails"; +"239.title" = "Clé"; +"240.title" = "Nom :"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Création:"; +"245.title" = "Expiration:"; +"246.title" = "Algorithme :"; +"247.title" = "Propriétaire:"; +"256.title" = "Signature"; +"257.title" = "Création:"; +"291.title" = "La signature n'a pas pu être vérifiée."; +"293.title" = "La signature n'a pas pu être vérifiée car la clé publique n'est pas dans votre trousseau.\nMerci de télécharger la clé avec GPG Keychain."; +"382.title" = "La signature n'a pas pu être vérifiée."; +"383.title" = "La signature n'a pas pu être vérifiée car la clé publique n'est pas dans votre trousseau.\nMerci de télécharger la clé avec GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/fr.lproj/GPGMail.strings b/Resources/fr.lproj/GPGMail.strings new file mode 100644 index 00000000..5b5c0fd0 --- /dev/null +++ b/Resources/fr.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Version : %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Impossible de déchiffrer ce message PGP."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Il y a eu un problème lors du déchiffrement de ce message. Vérifiez que vous avez une clé valide dans votre trousseau GPG."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Impossible de vérifier la signature PGP."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Problème de lecture de la signature PGP pour ce message."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "La clé PGP pour ce message n'est pas dans votre trousseau."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Le message a une signature PGP valide, mais la clé correspondante n'est pas dans votre trousseau. Utilisez GPG Keychain pour l'ajouter."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Aucune information n'est disponible pour cette clé PGP."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Aucune information additionnelle pour cette clé PGP car elle est absente de votre trousseau."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "La clé secrète nécessaire au déchiffrement de ce message est manquante."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Le déchiffrement a échoué sur une erreur inconnue !"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Une erreur est survenue lors du déchiffrement du message.\n\nVeuillez nous contacter à l'adresse suivante https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Échec du déchiffrement pour une raison inconnue !"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Une erreur inconnue est survenue lors du déchiffrement du message.\n\nMessage de l'erreur GPG :\n%@\nVeuillez nous contacter, en renseignant le message d'erreur GPG sur https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Clé erronée utilisée pour chiffrer ce message."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Ce message n'a pu être déchiffré car une clé publique erronée a été utilisée pour le chiffrer.\n\nMerci de nous contacter sur https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Le message chiffré est endommagé."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Le message chiffré est endommagé et ne peut être déchiffré.\n\nVeuillez demander à l'expéditeur de l'envoyer à nouveau."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "La clé de la signature a été révoquée."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "La clé utilisée pour signer ce message a été révoquée.\n\nVous devriez rafraichir la clé avec l'identifiant de clé %@ dans GPG Keychain pour vérifier si une clé plus récente est disponible. Si la nouvelle est également révoquée, vérifiez la raison de la révocation auprès de l'expéditeur."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "La clé de la signature de ce message n'est pas dans votre trousseau GPG."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Le message n'a pu être vérifié car la clé utilisée pour le signer n'est pas dans votre trousseau GPG.\n\nRecherchez la clé avec l'identifiant %@ dans GPG Keychain Acces et importez-la pour vérifier ce message."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "La signature de ce message a été créée avec un algorithme non supporté."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Ce message n'a pas pu être vérifié car sa signature a été créée avec un algorithme non supporté.\n\nMerci de nous contacter sur https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION : La signature de ce message n'est pas valide !"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Ce message pourrait avoir été modifié après la création de sa signature.\n\nMerci de contacter l'expéditeur pour s'assurer que le contenu de ce message est identique à l'original.\n\nMerci de nous contacter sur\nhttps://gpgtools.tenderapp.com/\nsi vous êtes sûr que le message n'a pas été modifié."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "La vérification de la signature du message a échoué à cause d'une erreur inconnue !"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Une erreur inconnue est arrivée lors de la vérification de la signature de ce message.\n\nMerci de nous contacter sur https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Erreur de la signature du message !"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "La signature du message est non valide et ne peut être vérifiée.\n\nMerci de nous contacter sur https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "La clé de la signature du message est expirée."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "La clé utilisée pour signer ce message est expirée.\n\nVous pouvez essayer de rafraichir la clé avec l'identifiant %@ dans GPG Keychain et demander à l'expéditeur la raison de son expiration."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "La signature du message est expirée !"; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "La signature est expirée et n'a pu être vérifiée.\n\nDemandez à l'expéditeur la raison de son expiration."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG n'est pas installé"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Le décryptage a échoué parce que MacGPG n'est pas installé.\n\nVeuillez télécharger et réinstaller GPG Suite à partir de https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG n'est pas installé"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d fichiers joints n'ont pas pu être déchiffrés ou vérifiés."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Merci de cliquer sur l'icone de la pièce jointe dans l'en-tête sécurité du message pour plus de détails."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d fichiers joints n'ont pas pu être vérifiés."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Merci de cliquer sur l'icone de la pièce jointe dans l'en-tête sécurité du message pour plus de détails."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d fichiers joints n'ont pas pu être déchiffrés."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Merci de cliquer sur l'icone de la pièce jointe dans l'en-tête sécurité du message pour plus de détails."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d fichier joint n'a pu être vérifié."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Merci de cliquer sur l'icone de la pièce jointe dans l'en-tête sécurité du message pour plus de détails."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d fichier joint n'a pu être déchiffré."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Merci de cliquer sur l'icone de la pièce jointe dans l'en-tête sécurité du message pour plus de détails."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "La clé secrète pour déchiffrer le fichier joint est introuvable."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Le déchiffrement a échoué pour une raison inconnue !"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Une erreur inconnue est arrivée pendant le déchiffrement de ce fichier joint.\n\nMerci de nous contacter sur https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Le déchiffrement a échoué pour une raison inconnue !"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Une erreur inconnue est arrivée pendant le déchiffrement de ce fichier joint.\n\nMessage d'erreur GPG :\n%@\nMerci de nous contacter en incluant ce message d'erreur sur https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Une clé invalide a été utilisée pour chiffrer ce fichier joint."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Ce fichier joint n'a pu être déchiffré car une clé publique invalide a été utilisée pour le chiffrer.\n\nMerci de nous contacter sur https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Le fichier joint chiffré est endommagé."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Le fichier joint chiffré est endommagé et n'a pu être déchiffré.\n\nMerci de demander à l'expéditeur de renouveler son envoi."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "La clé de signature a été révoquée."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "La clé utilisée pour signer ce fichier joint a été révoquée.\n\nVous devriez rafraichir la clé avec l'identifiant %@ dans GPG Keychain pour vérifier si une clé plus récente est disponible. Si la nouvelle clé est aussi révoquée, vérifier avec l'expéditeur la raison de sa révocation."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "La clé de cette signature n'est pas dans votre trousseau GPG."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "La signature du fichier joint n'a pas pu être vérifiée car la clé utilisée n'est pas dans votre trousseau GPG.\n\nRecherchez la clé avec l'identifiant %@ dans GPG Keychain et importez-la pour vérifier le fichier joint."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "La signature du fichier joint a été créée avec un algorithme qui n'est pas supporté."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Le fichier joint n'a pas pu être vérifié car la clé utilisée pour la signature a été créée avec un algorithme non supporté.\n\nMerci de nous contacter sur https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: la signature du fichier joint est invalide !"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Ce fichier joint a peut-être été modifié après apposition de la signature.\n\nMerci de contacter l'expéditeur pour s'assurer que le fichier joint reçu est identique à l'original.\n\nMerci de nous contacter sur\nhttps://gpgtools.tenderapp.com/\nsi vous êtes sûr que le fichier n'a pas été modifié."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "La vérification de la signature a échoué avec une erreur inconnue !"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Une erreur inconnue est survenue lors de la vérification de la signature de ce fichier joint.\n\nMerci de nous contacter sur https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Erreur dans les données de la signature !"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "La signature du fichier joint est non valide et ne peut être vérifiée.\n\nVeuillez nous contacter à l'adresse : https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "La clé de la signature est expirée."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "La clé utilisée pour signer ce fichier joint est expirée.\n\nVous pouvez essayer de rafraichir la clé avec l'identifiant %@ dans GPG Keychain et demander à l'expéditeur la raison de cette expiration."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "La signature du fichier joint est expirée."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "La signature du fichier joint est expirée et n'a pu être vérifiée.\n\nDemandez à l'expéditeur la raison de son expiration."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Partiellement chiffré"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Partiellement signé"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Chiffré"; +"MESSAGE_IS_PGP_SIGNED" = "Signé"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Signature non valide"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signé avec une clé inconnue"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signé avec une clé révoquée"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Signature non valide"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signé"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Aucune signature trouvée"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "fichier joint chiffré/signé"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "fichiers joints chiffrés/signés"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "fichier joint chiffré"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "fichiers joints chiffrés"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "fichier joint signé"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "fichiers joints signés"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "Ce message ne peut pas être signé car il n'existe pas de clé privée pour %@.\n\nMerci de vous assurer qu'une clé privée existe pour cette adresse dans GPG Keychain. Ajoutez si nécessaire un nouvel UID à une clé existante pour cette adresse, ou créez une nouvelle clé pour cette adresse.\n\nSi une clé existe pour cette adresse, assurez-vous que l'adresse dans Mail.app > Préférences > Comptes est correcte et correcpond exactement à l'adresse de votre clé."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Ce message ne peut pas être chiffré, il n'existe pas de clés publiques disponibles pour les adresses suivantes : %@.\n\nVeuillez utiliser GPG Keychain pour rechercher et importer les clés pour ces adresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Ce message ne peut pas être chiffré. Vous devez d'abord indiquer un destinataire."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Chiffré"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signé"; +"MESSAGE_VIEW_PGP_PART" = "partie PGP"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail est prêt."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Votre installation MacGPG fonctionne correctement."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG n'est pas installé. Vérifiez votre installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Veuillez télécharger et réinstaller GPG Suite depuis http://www.gpgtools.org pour garantir que tous les composants nécessaires sont installés."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Veuillez vérifier votre installation et configuration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Veuillez télécharger et réinstaller GPG Suite depuis http://www.gpgtools.org pour garantir que tous les composants nécessaires sont installés."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Attention : Désactiver cette option peut engendrer des fuites d'informations sensibles lors de l'écriture d'un message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Désactiver le chiffrement"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Annuler"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Plusieurs installations de GPGMail ont été trouvées !"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail a détecté de multiples installations dans les dossiers suivants ce qui va conduire à un plantage immédiat :\n\n%@\n\nMerci de supprimer GPGMail.mailbundle dans un de ces dossiers et de redémarrer Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quitter Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg n'a pas été trouvée"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg n'a pas été trouvé sur votre système. Veuillez télécharger et installer GPG Suite à partir de https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Quelqu'un a trafiqué votre installation GPGMail !"; +CODE_SIGN_ERROR_MESSAGE = "Pour votre sécurité, GPGMail ne va pas être chargé !\n\nMerci de télécharger et d'installer la dernière version de GPG Suite depuis https://gpgtools.org pour être sûr d'avoir la version originale depuis notre site !"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Impossible de charger les paramètres par défaut de GPGMail !"; +NO_DEFAULTS_MESSAGE = "GPGMail ne fonctionne pas comme attendu.\n\nMerci de télécharger et de ré-installer GPG Suite depuis https://gpgtools.org\n\nSi le problème persiste, merci de nous contacter sur https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "La signature de votre message a échoué à cause d'un problème avec pinentry !"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, l'outil responsable de la saisie de votre mot de passe, semble être cassé.\n\nPour résourdre ce problème, ré-installez GPG Suite depuis https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "La signature de votre message a échoué à cause de l'agent GPG défectueux !"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "L'agent GPG, qui est un composant essentiel de GPG, semble défectueux.\n\nPour résoudre ce problème, ré-installer GPG Suite depuis https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "La signature de votre message n'a pu avoir lieu à cause d'un problème de communication de l'agent GPG."; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "Il n'a pas été possible de communiquer avec l'agent GPG afin de récupérer votre mot de passe.\n\nPour résoudre ce problème, ré-installer GPG Suite depuis https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "La signature de votre message a échoué à cause d'une erreur inconnue."; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Nous ne pouvons malheureusement pas traiter l'erreur dans ce contexte."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Le chiffrage du message a échoué à cause d'une erreur inconnue."; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "GPGMail ne peut malheureusement pas traiter l'erreur dans ce contexte."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Vous avez entré le mauvais mot de passe un trop grand nombre de fois."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "La signature de votre message a été abandonnée car vous avez entré le mauvais mot de passe 3 fois."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nSi votre problème persiste, merci de nous contacter sur https://gpgtools.tenderapp.com/ avec la description d'erreur suivante :\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Vous avez annulé le déchiffrement du message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Ce message n'a pas pu être déchiffré suite à l'annulation de la saisie du mot de passe."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Vous avez interrompu le déchiffrement de la pièce jointe."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "La pièce jointe n'a pas pu être déchiffrée suite à l'annulation de la saisie du mot de passe."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite ne fonctionne pas comme prévu"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Le déchiffrement du message a échoué.\n\nMerci de ré-installer GPG Suite depuis https://gpgtools.org.\n\nSi ce problème persiste, nous-contacter sur https://gpgtools.tenderapp.com/ en indiquant que le service xpc ne fonctionne pas correctement."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite ne fonctionne pas comme prévu"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Le déchiffrement de la pièce-jointe a échoué.\n\nMerci de réinstaller GPG Suite depuis https://gpgtools.org.\n\nSi ce problème persiste, nous contacter sur https://gpgtools.tenderapp.com/ en indiquant que le service xpc ne fonctionne pas correctement."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "La suite GPG ne fonctionne pas comme prévu"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "La vérification du message a échouée.\n\nMerci de ré-installer GPG Suite depuis https://gpgtools.org.\n\nSi ce problème persiste, nous contacter sur https://gpgtools.tenderapp.com/ en indiquant que le service xpc ne fonctionne pas correctement."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite ne fonctionne pas comme prévu"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "La vérification de la pièce-jointe a échoué.\n\nMerci de réinstaller GPG Suite depuis https://gpgtools.org.\n\nSi ce problème persiste, nous contacter sur https://gpgtools.tenderapp.com/ en indiquant que le service xpc ne fonctionne pas correctement."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "La signature du message a échoué à cause d'un problème durant la saisie du mot de passe."; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, l'outil responsable de la saisie de votre mot de passe, ne fonctionne pas correctement.\n\nPour résourdre ce problème, ré-installez GPG Suite depuis https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "La signature de votre message a échoué à cause d'un problème dans votre installation de GPGMail."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Pour résoudre ce problème, merci de télécharger et ré-installer GPG Suite depuis https://gpgtools.org\n\nSi le problème persiste, nous contacter sur https://gpgtools.tenderapp.com/ en indiquant que le service xpc ne fonctionne pas correctement."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Le déchiffrement du message a échoué à cause d'un problème avec pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, l'outil responsable de la saisie de votre mot de passe, semble être cassé.\n\nPour résourdre ce problème, ré-installez GPG Suite depuis https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Le déchiffrement de la pièce jointe a échoué à cause d'un problème avec pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, l'outil responsable de la saisie de votre mot de passe, semble être cassé.\n\nPour résourdre ce problème, ré-installez GPG Suite depuis https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention : Vous êtes sur le point d'envoyer une réponse non chiffrée à un message chiffré\n"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Il n'est pas possible de chiffrer votre réponse car la clé publique du destinataire suivant est manquante :\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Il n'est pas possible de chiffrer votre réponse car les clés publiques des destinataire suivants sont manquantes :\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Si vous décidez de continuer, votre réponse sera envoyée non chiffrée. Comme conséquence, des informations confidentielles pourront être divulguées, vous mettant vous et vos destinataires en danger."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nSi vous voulez vraiment envoyer cette réponse non chiffrée, merci d'enlever toute correspondance précédente incluse dans votre réponse avant d'envoyer."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Autrement, rechercher et importer les clés publiques correspondantes avec GPG Keychain de façon à envoyer la réponse chiffrée."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Autrement, rechercher et importer la clé publique correspondante avec GPG Keychain de façon à envoyer la réponse chiffrée."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Envoyer de toute façon"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Annuler"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention : Vous êtes sur le point de transmettre la version décryptée d'un message crypté."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Annuler"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Méthode de sécurité : %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Signer"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Ne pas signer"; + diff --git a/Resources/fr.lproj/GPGMailPreferences.strings b/Resources/fr.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..b345e17e --- /dev/null +++ b/Resources/fr.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Mises à jour"; +"728.title" = "Composition"; +"733.ibShadowedToolTip" = "Questions fréquemment posées."; +"734.alternateTitle" = "Questions fréquemment posées"; +"734.title" = "Base de connaissance"; +"781.title" = "Chiffrer les brouillons"; +"834.title" = "Bouton"; +"1051.ibShadowedToolTip" = "Si vous avez d'autres questions."; +"1053.title" = "Rapporter un problème"; +"0PS-Wm-gKl.title" = "Vérifier maintenant"; +"0Th-7E-Y7P.title" = "Version : xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Rechercher automatiquement les mises à jour"; +"8oZ-YB-M9Q.title" = "Les versions beta sont publiées plus souvent. Les nouvelles fonctionalités et améliorations sont moins testées."; +"D6D-o9-63C.title" = "Afficher les notes de version"; +"UhD-uR-dUs.title" = "Inclure les versions beta"; +"q0m-y8-baf.title" = "Build :"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/fr.lproj/GPGSignatureView.strings b/Resources/fr.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..a62dd283 --- /dev/null +++ b/Resources/fr.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Signatures"; +"25.title" = "OK"; +"237.title" = "nom"; +"251.title" = "Détails"; +"252.ibShadowedNoSelectionPlaceholder" = "Aucune signature"; +"365.title" = "Nom:"; +"367.title" = "Clé"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algorithme:"; +"378.title" = "Expiration:"; +"379.title" = "Création:"; +"381.title" = "Propriétaire:"; +"436.title" = "Création:"; +"437.title" = "Signature"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/fr.lproj/SignatureView.strings b/Resources/fr.lproj/SignatureView.strings new file mode 100644 index 00000000..cfd38970 --- /dev/null +++ b/Resources/fr.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "On ne peut pas faire confiance à cette signature."; +"VALIDITY_OK" = "On peut faire confiance à cette signature"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "La clé de cette signature a été révoquée."; +"VALIDITY_SIGNATURE_EXPIRED" = "La signature est expirée."; +"VALIDITY_KEY_EXPIRED" = "La clé de cette signature est expirée."; +"VALIDITY_KEY_REVOKED" = "La clé de cette signature a été révoquée."; +"VALIDITY_UNKNOWN_ALGORITHM" = "La signature a été crée à l'aide d'un algorithme inconnu."; +"VALIDITY_NO_PUBLIC_KEY" = "La clé de cette signature ne fait pas partie de votre trousseau de clés."; +"VALIDITY_UNKNOWN_ERROR" = "Erreur de signature inconnue."; +"VALIDITY_BAD_SIGNATURE" = "Cette signature est non valide."; diff --git a/Resources/gl.lproj/GPGAttachment.strings b/Resources/gl.lproj/GPGAttachment.strings new file mode 100644 index 00000000..82ec5d80 --- /dev/null +++ b/Resources/gl.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Non foi posíbel verificar a sinatura."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "A chave pública para verificar a firma deste anexo non está no seu chaveiro.\n\nDescargue a chave chave pública %@ empregando o acceso ao chaveiro GPG."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Non foi posíbel descifrar o ficheiro anexo."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "A chave secreta para descifrar este anexo non está no seu chaveiro."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "O ficheiro anexo foi descifrado satisfactoriamente."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Abrir un anexo na vista de mensaxes por facendo dobre clic."; diff --git a/Resources/gl.lproj/GPGAttachments.strings b/Resources/gl.lproj/GPGAttachments.strings new file mode 100644 index 00000000..2effa216 --- /dev/null +++ b/Resources/gl.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Xanela"; +"8.title" = "Aceptar"; +"210.title" = "nome"; +"211.title" = "Detalles"; +"239.title" = "Chave"; +"240.title" = "Nome:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Creada:"; +"245.title" = "Caduca:"; +"246.title" = "Algoritmo:"; +"247.title" = "Confianza no propietario:"; +"256.title" = "Sinatura"; +"257.title" = "Creada:"; +"291.title" = "A sinatura non puido ser verificada."; +"293.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"382.title" = "A sinatura non puido ser verificada."; +"383.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/gl.lproj/GPGMail.strings b/Resources/gl.lproj/GPGMail.strings new file mode 100644 index 00000000..84a1d3bb --- /dev/null +++ b/Resources/gl.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Versión: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Non é posíbel descifrar a mensaxe PGP."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Xurdiu un problema ao descifrar esta mensaxe. Comprobe que dispón dunha chave correcta no seu chaveiro."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Non é posíbel verificar a sinatura PGP da mensaxe."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Xurdiu un problema ao ler a sinatura PGP desta mensaxe."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "A chave PGP para esta mensaxe non está no seu cheveiro."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "A mensaxe ten unha sinatura PGP correcta, mais a chave PGP non está no seu chaveiro. Empregue o acceso ao chaveiro PGP para engadila."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Non hai información para esta chave PGP."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Non hai información adicional para esta chave PGP, xa que non está no seu chaveiro."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Non se atopa a chave secreta para descifrar a mensaxe."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Produciuse un erro descoñecido durante o descifrado!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Produciuse un erro descoñecido ao descifrar esta mensaxe.\n\nPóñase en contacto con nós en https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Non foi posíbel facer o descifrado por mor dun erro descoñecido!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Produciuse un erro descoñecido ao descifrar esta mensaxe.\n\nMensaxe do erro GPG:\n%@\nPóñase en contacto con nós, incluíndo a mensaxe do erro GPG, en https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Para cifrar esta mensaxe non foi empregada a chave axeitada."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Non é posíbel descifrar esta mensaxe, xa que empregouse unha chave pública trabucada para cifrala.\n\nPóñase en contacto con nós en https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "A mensaxe cifrada está estragada."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Esta mensaxe cifrada está estragada e non é posíbel descifrala.\n\nPídalle ao remitente que lla envíe de novo."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "A chave da sinatura foi revogada."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this message was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "A chave para a sinatura desta mensaxe non está no seu chaveiro GPG."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The message could not be verified, since the key which was used to sign this message is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the message."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "A sinatura da mensaxe foi creada cun algoritmo que neste momento non está admitido."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This message could not be verified, since the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATENCIÓN: A sinatura desta mensaxe non é correcta!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Non foi posíbel verificar a sinatura desta mensaxe por mor dun erro descoñecido!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Produciuse un erro descoñecido mentres se verificaba a sinatura desta mensaxe.\n\nPóñase en contacto con nós en https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Hai un erro nos datos da sinatura da mensaxe!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This message's signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "A chave coa que foi asinado esta mensaxe esta caducada."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this message is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "A sinatura da mensaxe esta caducada."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d attachments failed to decrypt or verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d attachments failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d attachments failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d attachment failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d attachment failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the attachment is missing."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Non foi posíbel facer o descifrado por mor dun erro descoñecido!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Non foi posíbel facer o descifrado por mor dun erro descoñecido!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this attachment."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This attachment could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted attachment is damaged."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted attachment is damaged and could not be decrypted.\n\nPlease ask the sender to send you the message again."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "A chave da sinatura foi revogada."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "A chave para a sinatura desta mensaxe non está no seu chaveiro GPG."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "The attachment signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This attachment could not be verified, since the key to the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The attachment signature is invalid!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\n if you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Signature verification failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signature data error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This attachment signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "A chave desta sinatura xa caducou"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Cifrado parcialmente"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Asinado parcialmente"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Cifrado"; +"MESSAGE_IS_PGP_SIGNED" = "Asinado"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Sinatura incorrecta"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Asinado cunha chave descoñecida"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Asinado cunha chave revogada"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Sinatura incorrecta"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Asinado"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No signature found"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "anexo cifrado/asinado"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "anexos cifrados/asinados"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "anexo cifrado"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "anexos cifrados"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "anexo asinado"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "anexos asinados"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "This message can't be encrypted, since there are no public keys available for the following addresses: %@.\n\nPlease use GPG Keychain to search and import the keys for those addresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Cifrado"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Asinado"; +"MESSAGE_VIEW_PGP_PART" = "PGP part"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail is ready."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Your MacGPG installation is working with no errors."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Please check your installation and configuration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Found multiple installations of GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/gl.lproj/GPGMailPreferences.strings b/Resources/gl.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..944f5747 --- /dev/null +++ b/Resources/gl.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Actualizacións"; +"728.title" = "Redactar"; +"733.ibShadowedToolTip" = "Preguntas frecuentes."; +"734.alternateTitle" = "Preguntas frecuentes."; +"734.title" = "Knowledge Base"; +"781.title" = "Encrypt drafts"; +"834.title" = "Botón"; +"1051.ibShadowedToolTip" = "Se vostede ten calquera outra pregunta."; +"1053.title" = "Report Problem"; +"0PS-Wm-gKl.title" = "Comprobar agora"; +"0Th-7E-Y7P.title" = "Versión: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Comprobar as actualizacións automaticamente"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "Show Release Notes"; +"UhD-uR-dUs.title" = "Include beta builds"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/gl.lproj/GPGSignatureView.strings b/Resources/gl.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..d02cee77 --- /dev/null +++ b/Resources/gl.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Sinaturas"; +"25.title" = "Aceptar"; +"237.title" = "nome"; +"251.title" = "Detalles"; +"252.ibShadowedNoSelectionPlaceholder" = "Sen sinatura"; +"365.title" = "Nome:"; +"367.title" = "Chave"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algoritmo"; +"378.title" = "Caduca:"; +"379.title" = "Creada:"; +"381.title" = "Confianza no propietario:"; +"436.title" = "Creada:"; +"437.title" = "Sinatura"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/gl.lproj/SignatureView.strings b/Resources/gl.lproj/SignatureView.strings new file mode 100644 index 00000000..b5e05034 --- /dev/null +++ b/Resources/gl.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Esta sinatura non é de confianza"; +"VALIDITY_OK" = "Esta sinatura é de confianza"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "A chave desta sinatura foi revogada"; +"VALIDITY_SIGNATURE_EXPIRED" = "Esta sinatura caducou"; +"VALIDITY_KEY_EXPIRED" = "A chave desta sinatura xa caducou"; +"VALIDITY_KEY_REVOKED" = "A chave desta sinatura foi revogada"; +"VALIDITY_UNKNOWN_ALGORITHM" = "A sinatura foi creada por un algoritmo descoñecido"; +"VALIDITY_NO_PUBLIC_KEY" = "A chave desta sinatura non está no seu chaveiro"; +"VALIDITY_UNKNOWN_ERROR" = "Produciuse un erro descoñecido na sinatura"; +"VALIDITY_BAD_SIGNATURE" = "Esta sinatura non é correcta"; diff --git a/Resources/id.lproj/GPGAttachment.strings b/Resources/id.lproj/GPGAttachment.strings new file mode 100644 index 00000000..8941f675 --- /dev/null +++ b/Resources/id.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Gagal verifikasi tanda tangan."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "Kunci publik untuk verifikasi tanda tangan lampiran ini tidak ada dalam ring kunci Anda.\n\nHarap unduh kunci publik %@ memakai GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Gagal mendekripsi lampiran."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Kunci rahasia untuk mendekripsi lampiran ini tak ada dalam ring kunci Anda."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Lampiran sukses didekripsi."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Buka suatu lampiran dalam tilikan pesan dengan klik ganda."; diff --git a/Resources/id.lproj/GPGAttachments.strings b/Resources/id.lproj/GPGAttachments.strings new file mode 100644 index 00000000..a1f04e8f --- /dev/null +++ b/Resources/id.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Jendela"; +"8.title" = "OK"; +"210.title" = "nama"; +"211.title" = "Rincian"; +"239.title" = "Kunci"; +"240.title" = "Nama:"; +"241.title" = "Surel:"; +"243.title" = "Sidik jari:"; +"244.title" = "Dibuat:"; +"245.title" = "Kedaluwarsa:"; +"246.title" = "Algoritma:"; +"247.title" = "Ownertrust:"; +"256.title" = "Tanda Tangan"; +"257.title" = "Dibuat:"; +"291.title" = "Tanda tangan tak bisa diverifikasi."; +"293.title" = "Tanda tangan tidak bisa diverifikasi karena kunci publik tidak ada dalam ring kunci Anda.\nHarap unduh kunci memakai GPG Keychain."; +"382.title" = "Tanda tangan tak bisa diverifikasi."; +"383.title" = "Tanda tangan tidak bisa diverifikasi karena kunci publik tidak ada dalam ring kunci Anda.\nHarap unduh kunci memakai GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Tak pernah"; diff --git a/Resources/id.lproj/GPGMail.strings b/Resources/id.lproj/GPGMail.strings new file mode 100644 index 00000000..14e7183c --- /dev/null +++ b/Resources/id.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Versi: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Tak bisa mendekripsi pesan PGP."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Ada masalah saat mendekripsi pesan ini. Periksa apakah Anda memiliki kunci yang valid dalam Keychain GPG Anda."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Tak bisa memeriksa tanda tangan pesan PGP."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Ada masalah saat membaca tanda tangan PGP bagi pesan ini."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "Kunci PGP bagi pesan ini tak ada dalam keychain Anda."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Pesan memiliki tanda tangan PGP yang valid, tapi kunci PGP tak ada dalam ring kunci Anda. Harap gunakan GPG Keychain untuk menambahkannya."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Tak tersedia informasi bagi kunci PGP ini."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Tak ada informasi tambahan yang diketahui tentang kunci PGP ini, karena ini tak ada dalam keychain Anda."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Kunci rahasia untuk mendekripsi pesan ini hilang."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "Tak satupun dari kunci rahasia berikut dapat ditemukan dalam ring kunci Anda (%@). Kunci rahasia diperlukan untuk mendekripsi pesan ini.\n\nPeriksalah dengan si pengirim bahwa mereka memakai kunci publik Anda yang benar.\nPeriksalah cadangan ring kunci Anda, dan cobalah mengimpor kunci rahasia dari sana."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Dekripsi gagal dengan kesalahan tak dikenal!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Terjadi galat yang tak dikenal ketika mendekripsi pesan ini.\n\nHarap hubungi kami pada https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Pendekripsian gagal dengan galat yang tak dikenal!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Galat yang tak dikenal terjadi ketika mendekripsi pesan ini.\n\nPesan galat GPG:\n%@\nHarap hubungi kami, sertakan pesan galat GPG, pada https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Kunci yang salah dipakai untuk mengenkripsi pesan ini."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Pesan ini tak bisa didekripsi, karena kunci publik yang salah dipakai untuk mengekripsinya.\n\nHarap hubungi kami pada https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Pesan yang terenkripsi rusak."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Pesan yang terenkripsi rusak dan tak bisa didekripsi.\n\nSilakan minta ke pengirim untuk mengirim ulang pesan."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Kunci tanda tangan telah dicabut."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "PERHATIAN: Kunci yang dipakai untuk menandatangani pesan ini telah dicabut.\n\nAnda mesti menyegarkan kunci dengan ID kunci %@ dalam GPG Keychain untuk memeriksa apakah tersedia yang baru. Bila yang terbaru masih dicabut, periksalah dengan pengirim mengapa kunci dicabut."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Kunci bagi tanda tangan pesan ini tak ada dalam Ring Kunci GPG Anda."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Pesan ini tak bisa diverifikasi, karena kunci yang dipakai untuk menandatangani pesan ini tak ada dalam Ring Kunci GPG Anda.\n\nCarilah kunci dengan ID %@ dalam GPG Keychain dan imporlah untuk memverifikasi pesan."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "Tanda tangan pesan dibuat dengan algoritma yang tak didukung."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Pesan ini tak bisa diverifikasi, karena tanda tangan dibuat dengan algoritma yang tak didukung.\n\nHarap hubungi kami di https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "PERHATIAN: Tanda tangan pesan ini tak valid!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "PERHATIAN: Pesan ini mungkin telah diubah setelah tanda tangan dibuat.\n\nHarap hubungi pengirim untuk memastikan isi pesan cocok dengan aslinya.\n\nHarap hubungi kami pada https://gpgtools.tenderapp.com bila Anda yakin bahwa pesan tak diubah."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verifikasi tanda tangan pesan gagal dengan galat tak dikenal!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Terjadi galat yang tak dikenal ketika verifikasi tanda tangan pesan ini.\n\nMohon kontak kami di https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Galat data tanda tangan pesan!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Tanda tangan pesan ini tak valid dan tak bisa diverifikasi.\n\nHarap kontak kami di https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Kunci tanda tangan pesan kedaluarsa."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "PERHATIAN: Kunci yang dipakai untuk menandatangani pesan ini kedaluarsa.\n\nAnda dapat mencoba menyegarkan kunci dengan ID %@ dalam GPG Keychain dan menanyakan ke pengirim mengapa kunci kedaluarsa."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Tanda tangan pesan ini kedaluarsa."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Tanda tangan kedaluarsa dan tak bisa diverifikasi.\n\nTanyakan ke pengirim mengapa tanda tangan kedaluarsa."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG tidak terpasang"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Dekripsi gagal karena MacGPG tak terpasang.\n\nHarap unduh dan pasang ulang GPG Suite dari https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG tidak terpasang"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifikasi gagal karena MacGPG tak terpasang.\n\nHarap unduh dan pasang ulang GPG Suite dari https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d lampiran gagal didekripsi atau diverifikasi."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Harap klik pada ikon lampiran dalam bagian keamanan kepala pesan untuk rincian lebih lanjut."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d lampiran gagal diverifikasi."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Harap klik pada ikon lampiran dalam bagian keamanan kepala pesan untuk rincian lebih lanjut."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d lampiran gagal didekripsi."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Harap klik pada ikon lampiran dalam bagian keamanan kepala pesan untuk rincian lebih lanjut."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d lampiran gagal diverifikasi."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Harap klik pada ikon lampiran dalam bagian keamanan kepala pesan untuk rincian lebih lanjut."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d lampiran gagal didekripsi."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Harap klik pada ikon lampiran dalam bagian keamanan kepala pesan untuk rincian lebih lanjut."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Kunci rahasia untuk mendekripsi lampiran hilang."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "Tak satupun dari kunci rahasia berikut dapat ditemukan dalam ring kunci Anda (%@). Kunci rahasia diperlukan untuk mendekripsi lampiran ini.\n\nPeriksalah dengan si pengirim bahwa mereka memakai kunci publik Anda yang benar.\nPeriksalah cadangan ring kunci Anda, dan cobalah mengimpor kunci rahasia dari sana."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Dekripsi gagal dengan kesalahan tak dikenal!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Terjadi galat yang tak dikenal ketika mendekripsi pesan ini.\n\nHarap hubungi kami pada https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Dekripsi gagal dengan kesalahan tak dikenal!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Galat yang tak dikenal terjadi ketika mendekripsi pesan ini.\n\nPesan galat GPG:\n%@\nHarap hubungi kami, sertakan pesan galat GPG, pada https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Kunci yang salah dipakai untuk mengenkripsi lampiran ini."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Lampiran ini tak bisa didekripsi, karena kunci publik yang salah dipakai untuk mengekripsinya.\n\nHarap hubungi kami pada https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Lampiran yang terenkripsi rusak."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Lampiran yang terenkripsi rusak dan tak bisa didekripsi.\n\nSilakan minta ke pengirim untuk mengirim ulang pesan."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Kunci tanda tangan telah dicabut."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "PERHATIAN: Kunci yang dipakai untuk menandatangani lampiran ini telah dicabut.\n\nAnda mesti menyegarkan kunci dengan ID kunci %@ dalam GPG Keychain untuk memeriksa apakah tersedia yang baru. Bila yang terbaru masih dicabut, periksalah dengan pengirim mengapa kunci dicabut."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Kunci tanda tangan ini tak ada dalam Ring Kunci GPG Anda."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Tanda tangan lampiran ini tak bisa diverifikasi, karena kunci yang dipakai untuk menandatangani tak ada dalam Ring Kunci GPG Anda.\n\nCarilah kunci dengan ID %@ dalam GPG Keychain dan imporlah untuk memverifikasi lampiran."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "Tanda tangan lampiran dibuat dengan algoritma yang tak didukung."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Lampiran ini tak bisa diverifikasi, karena kunci tanda tangan dibuat dengan algoritma yang tak didukung.\n\nHarap hubungi kami di https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "PERHATIAN: Tanda tangan lampiran ini tak valid!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "PERHATIAN: Lampiran ini mungkin telah diubah setelah tanda tangan dibuat.\n\nHarap hubungi pengirim untuk memastikan isi lampiran cocok dengan aslinya.\n\nHarap hubungi kami pada https://gpgtools.tenderapp.com bila Anda yakin bahwa lampiran tak diubah."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Verifikasi tanda tangan gagal dengan galat tak dikenal!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Terjadi galat yang tak dikenal ketika verifikasi tanda tangan lampiran ini.\n\nMohon kontak kami di https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Galat data tanda tangan!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Tanda tangan lampiran ini tak valid dan tak bisa diverifikasi.\n\nHarap kontak kami di https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Kunci dari tanda tangan ini kedaluarsa."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "PERHATIAN: Kunci yang dipakai untuk menandatangani lampiran ini kedaluarsa.\n\nAnda dapat mencoba menyegarkan kunci dengan ID %@ dalam GPG Keychain dan menanyakan ke pengirim mengapa kunci kedaluarsa."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Tanda tangan lampiran ini kedaluarsa."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Tanda tangan lampiran kedaluarsa dan tak bisa diverifikasi.\n\nTanyakan ke pengirim mengapa tanda tangan kedaluarsa."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Sebagian Terenkripsi"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Sebagian Ditandatangani"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Terenkripsi"; +"MESSAGE_IS_PGP_SIGNED" = "Ditandatangani"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Tanda Tangan Tak Valid"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Ditandatangani dengan kunci yang tak dikenal"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Ditandatangani dengan kunci yang telah dicabut"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Tanda tangan tak valid"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Ditandatangani"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Tidak ada tanda tangan yang ditemukan"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "lampiran yang dienkripsi/ditandatangani"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "lampiran yang dienkripsi/ditandatangani"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "lampiran yang dienkripsi"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "lampiran yang dienkripsi"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "lampiran yang ditandatangani"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "lampiran yang ditandatangani"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "Pesan ini tak bisa ditandatangani, karena tidak ada kunci rahasia untuk %@.\n\nHarap pastikan bahwa suatu kunci rahasia untuk alamat ini ada dalam GPG Keychain. Tambahkan suatu ID Pengguna baru ke kunci yang ada bagi alamat ini bila perlu, atau buat kunci baru untuk alamat ini.\n\nBila suatu kunci bagi alamat ada, pastikan bahwa alamat dalam Mail.app > Preferensi > Akun benar dan persis cocok dengan alamat dari kunci Anda."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Pesan ini tak bisa dienkripsi, karena tak tersedia kunci publik bagi alamat-alamat berikut: %@.\n\nHarap gunakan GPG Keychain untuk mencari dan mengimpor kunci-kunci bagi alamat-alamat tersebut."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Pesan ini tak bisa dienkripsi. Anda mesti terlebih dahulu memasukkan paling tidak satu penerima."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Dienkripsi"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Ditandatangani"; +"MESSAGE_VIEW_PGP_PART" = "Bagian PGP"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail siap."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Instalasi MacGPG Anda bekerja tanpa galat."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG tidak terpasang. Periksalah instalasi Anda."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Harap unduh pemasang GPG Suite dari http://www.gpgtools.org untuk memasang semua GPG Suite."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Harap periksa instalasi dan konfigurasi Anda."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Harap unduh pemasang GPG Suite dari http://www.gpgtools.org untuk memasang semua GPG Suite."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Peringatan: Mematikan opsi ini mungkin mengarah ke kebocoran informasi sensitif ketika menyusun suatu pesan"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "Bila opsi \"Simpan draf pada server\" difungsikan bagi akun Anda, macOS Mail secara otomatis menyimpan draf Anda pada server surel Anda ketika Anda sedang menyusun pesan.\nDengan menonaktifkan \"Enkripsikan draf\", draf Anda akan disimpan dalam teks polos (tidak terenkripsi) sehingga siapapun yang punya akses ke server surel dapat membaca mereka.\n\nBila Anda tetap memfungsikan \"Enkripsikan draf\", draf Anda akan dienkripsi sebelum mereka disimpan pada server surel dan hanya Anda yang akan dapat membaca mereka.\n\nApakah Anda masih ingin menonaktifkan \"Enkripsikan draf\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Matikan Enkripsi"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Batal"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Menemukan instalasi berganda dari GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail mendeteksi instalasi berganda dalam lokasi-lokasi berikut yang akan mengarah ke crash seketika:\n\n%@\n\nHarap hapus GPGMail.mailbundle dalam satu dari lokasi-lokasi tersebut dan mulai ulang Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Keluar Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg tidak ditemukan"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg tidak ditemukan pada sistem Anda. Harap unduh dan pasang GPG Suite dari https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Seseorang meretas instalasi GPGMail Anda!"; +CODE_SIGN_ERROR_MESSAGE = "Agar Anda tetap aman, GPGMail tidak akan dimuat!\n\nHarap pasang ulang GPG Suite dari https://gpgtools.org agar yakin bahwa Anda punya versi asli dari kami!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Tidak bisa memuat parameter baku GPGMail!"; +NO_DEFAULTS_MESSAGE = "GPGMail tidak bekerja seperti yang diharapkan.\n\nHarap unduh dan pasang ulang GPG Suite dari https://gpgtools.org\n\nApabila masalah ini tetap ada, harap hubungi kami di https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Menandatangani pesan Anda gagal karena pinentry yang rusak!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, alat yang bertanggung jawab meminta kata sandi Anda, tampaknya rusak.\n\nUntuk memperbaiki masalah ini, pasang ulang GPG Suite dari https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Penandatanganan pesan Anda gagal karena agen GPG yang rusak!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "Agen GPG yang merupakan bagian penting dari GPG tampaknya rusak.\n\nUntuk memperbaiki masalah ini, pasang ulang GPG Suite dari https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Penandatanganan pesan Anda gagal karena galat komunikasi agen GPG!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "Tidak mungkin berbicara dengan agen GPG untuk meminta kata sandi Anda.\n\nUntuk memperbaiki masalah ini, pasang ulang GPG Suite dari https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Penandatanganan pesan Anda gagal karena galat yang tak dikenal telah terjadi"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Sayang sekali kami tak bisa menangani galat pada titik ini."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Penyandian pesan Anda gagal karena kesalahan yang tak dikenal telah terjadi"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Sayang sekali GPGMail tak bisa menangani galat pada titik ini."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Anda terlalu banyak memasukkan frasa sandi yang salah."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Penandatanganan pesan Anda digugurkan karena Anda memasukkan sandi yang salah 3 kali."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nBila masalah Anda tetap bertahan, harap kontak kami pada https://gpgtools.tenderapp.com dengan deskripsi galat berikut:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Anda menggugurkan dekripsi pesan"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Pesan tak dapat didekripsi karena Anda membatalkan permintaan sandi."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Anda menggugurkan dekripsi lampiran"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Lampiran tak bisa didekripsi karena Anda membatalkan permintaan sandi."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite tidak bekerja seperti yang diharapkan"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Mendekripsi pesan gagal.\n\nHarap pasang ulang GPG Suite dari https://gpgtools.org\n\nApabila masalah ini tetap ada, harap hubungi kami di https://gpgtools.tenderapp.com/ dan sertakan informasi bahwa layanan xpc tidak bekerja dengan benar."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite tidak bekerja seperti yang diharapkan"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Mendekripsi lampiran gagal.\n\nHarap pasang ulang GPG Suite dari https://gpgtools.org\n\nApabila masalah ini tetap ada, harap hubungi kami di https://gpgtools.tenderapp.com/ dan sertakan informasi bahwa layanan xpc tidak bekerja dengan benar."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite tidak bekerja seperti yang diharapkan"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifikasi pesan gagal.\n\nHarap pasang ulang GPG Suite dari https://gpgtools.org\n\nApabila masalah ini tetap ada, harap hubungi kami di https://gpgtools.tenderapp.com/ dan sertakan informasi bahwa layanan xpc tidak bekerja dengan benar."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite tidak bekerja seperti yang diharapkan"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifikasi lampiran gagal.\n\nHarap pasang ulang GPG Suite dari https://gpgtools.org\n\nApabila masalah ini tetap ada, harap hubungi kami di https://gpgtools.tenderapp.com/ dan sertakan informasi bahwa layanan xpc tidak bekerja dengan benar."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Menandatangani pesan Anda gagal karena masalah selama permintaan kata sandi"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, alat yang bertanggung jawab meminta kata sandi Anda, tidak bekerja dengan benar.\n\nUntuk memperbaiki masalah ini, harap pasang ulang GPG Suite dari https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Menandatangani pesan Anda gagal karena masalah dalam instalasi GPGMail Anda."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Untuk memperbaiki masalah ini, harap pasang ulang GPG Suite dari https://gpgtools.org\n\nApabila masalah ini tetap ada, harap hubungi kami di https://gpgtools.tenderapp.com/ dan sertakan informasi bahwa layanan xpc tidak bekerja dengan benar."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Dekripsi pesan gagal karena pinentry yang rusak!"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, alat yang bertanggung jawab meminta kata sandi Anda, tampaknya rusak.\n\nUntuk memperbaiki masalah ini, pasang ulang GPG Suite dari https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Dekripsi lampiran gagal karena pinentry yang rusak"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, alat yang bertanggung jawab meminta kata sandi Anda, tampaknya rusak.\n\nUntuk memperbaiki masalah ini, pasang ulang GPG Suite dari https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Perhatian: Anda akan mengirim suatu jawaban tak terenkripsi ke suatu pesan yang terenkripsi"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Tidak mungkin mengenkripsi jawaban Anda, karena kunci publik bagi penerima berikut hilang:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Tidak mungkin mengenkripsi jawaban Anda, karena kunci publik bagi penerima berikut hilang:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Bila Anda memilih untuk melanjutkan, jawaban Anda akan dikirim tak terenkripsi. Akibatnya, informasi konfidensial mungkin bocor, menyebabkan risiko bagi Anda dan penerima surat Anda."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nBila Anda memang hendak mengirim jawaban ini tak terenkripsi, harap hapus semua korespondensi terdahulu yang disertakan dalam jawaban Anda sebelum mengirim."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Bila tidak, cari dan impor kunci publik yang terkait memakai GPG Keychain agar mengirim jawaban terenkripsi."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Bila tidak, cari dan impor kunci publik yang terkait memakai GPG Keychain agar mengirim jawaban terenkripsi."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Kirim Saja"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Batal"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Perhatian: Anda akan meneruskan versi terdekripsi dari sebuah pesan terenkripsi"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Tidak mungkin mengenkripsi pesan yang hendak Anda teruskan, karena kunci publik untuk penerima berikut hilang:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Tidak mungkin mengenkripsi pesan yang hendak Anda teruskan, karena kunci-kunci publik untuk penerima berikut hilang:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "Bila Anda memilih untuk melanjutkan, pesan yang akan Anda teruskan akan dikirim tak terenkripsi. Akibatnya, informasi konfidensial mungkin bocor, menjadikan Anda dan yang Anda kirimi dalam risiko."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Bila tidak, cari dan impor kunci-kunci publik yang terkait memakai GPG Keychain untuk meneruskan versi pesan yang terenkripsi."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Bila tidak, cari dan impor kunci publik yang terkait memakai GPG Keychain untuk meneruskan versi pesan yang terenkripsi."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Teruskan Saja"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Batal"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Metoda keamanan: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Tandatangani"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Jangan tandatangani"; + diff --git a/Resources/id.lproj/GPGMailPreferences.strings b/Resources/id.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..029d51a3 --- /dev/null +++ b/Resources/id.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Pemutakhiran"; +"728.title" = "Menyusun"; +"733.ibShadowedToolTip" = "Pertanyaan Sering Muncul."; +"734.alternateTitle" = "Pertanyaan Sering Muncul"; +"734.title" = "Basis Pengetahuan"; +"781.title" = "Enkripsikan draf"; +"834.title" = "Tombol"; +"1051.ibShadowedToolTip" = "Bila Anda punya pertanyaan lain."; +"1053.title" = "Laporkan Masalah"; +"0PS-Wm-gKl.title" = "Periksa Sekarang"; +"0Th-7E-Y7P.title" = "Versi: xxx"; +"2ul-d0-5ir.title" = "Tandatangani surel baru"; +"80G-ZN-hjm.title" = "Otomatis periksa pemutakhiran"; +"8oZ-YB-M9Q.title" = "Build beta lebih sering dipublikasikan. Fitur dan perbaikan baru kurang teruji."; +"D6D-o9-63C.title" = "Tampilkan Catatan Rilis"; +"UhD-uR-dUs.title" = "Termasuk build beta"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Enkripsikan surel baru"; diff --git a/Resources/id.lproj/GPGSignatureView.strings b/Resources/id.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..f560de7d --- /dev/null +++ b/Resources/id.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Tanda Tangan"; +"25.title" = "OK"; +"237.title" = "nama"; +"251.title" = "Rincian"; +"252.ibShadowedNoSelectionPlaceholder" = "Tanpa tanda tangan"; +"365.title" = "Nama:"; +"367.title" = "Kunci"; +"369.title" = "Surel:"; +"372.title" = "Sidik jari:"; +"377.title" = "Algoritma:"; +"378.title" = "Kedaluarsa:"; +"379.title" = "Dibuat:"; +"381.title" = "Ownertrust:"; +"436.title" = "Dibuat:"; +"437.title" = "Tanda Tangan"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Tak pernah"; diff --git a/Resources/id.lproj/SignatureView.strings b/Resources/id.lproj/SignatureView.strings new file mode 100644 index 00000000..372f708a --- /dev/null +++ b/Resources/id.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Tanda tangan ini tidak seharusnya dipercaya."; +"VALIDITY_OK" = "Tanda tangan ini dapat dipercaya"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Kunci tanda tangan ini dicabut."; +"VALIDITY_SIGNATURE_EXPIRED" = "Tanda tangan ini kedaluarsa."; +"VALIDITY_KEY_EXPIRED" = "Kunci dari tanda tangan ini kedaluarsa."; +"VALIDITY_KEY_REVOKED" = "Kunci tanda tangan ini dicabut."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Tanda tangan dibuat dengan algoritma yang tak dikenal."; +"VALIDITY_NO_PUBLIC_KEY" = "Kunci dari tanda tangan ini tak ada dalam ring kunci Anda."; +"VALIDITY_UNKNOWN_ERROR" = "Galat tanda tangan tidak diketahui."; +"VALIDITY_BAD_SIGNATURE" = "Tanda tangan ini tidak valid."; diff --git a/Resources/it.lproj/GPGAttachment.strings b/Resources/it.lproj/GPGAttachment.strings new file mode 100644 index 00000000..09526a03 --- /dev/null +++ b/Resources/it.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Verifica della firma fallita."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "La chiave pubblica per verificare la firma di questo allegato non è presente nel portachiavi.\n\nÈ necessario scaricare la chiave pubblica %@ utilizzando il programma GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Decrittazione dell'allegato fallita."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "La chiave privata per decifrare questo allegato non è presente nel portachiavi."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Allegato decrittato correttamente."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Apre un allegato nella Vista messaggio facendoci doppio click sopra."; diff --git a/Resources/it.lproj/GPGAttachments.strings b/Resources/it.lproj/GPGAttachments.strings new file mode 100644 index 00000000..38cba72f --- /dev/null +++ b/Resources/it.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Finestra"; +"8.title" = "OK"; +"210.title" = "nome"; +"211.title" = "Dettagli"; +"239.title" = "Chiave"; +"240.title" = "Nome:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Creato il:"; +"245.title" = "Scade il:"; +"246.title" = "Algoritmo:"; +"247.title" = "Fiducia:"; +"256.title" = "Firma"; +"257.title" = "Creato il:"; +"291.title" = "La firma non può essere verificata."; +"293.title" = "La firma non può essere verificata perché la chiave pubblica non è presente nel portachiavi.\nÈ necessario scaricare la chiave utilizzando il programma GPG Keychain."; +"382.title" = "La firma non può essere verificata."; +"383.title" = "La firma non può essere verificata perché la chiave pubblica non è presente nel portachiavi.\nScarica la chiave utilizzando il programma GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/it.lproj/GPGMail.strings b/Resources/it.lproj/GPGMail.strings new file mode 100644 index 00000000..915e3aa7 --- /dev/null +++ b/Resources/it.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Versione: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Impossibile decifrare il messaggio PGP."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Si è verificato un problema durante la decifratura di questo messaggio. Controllare di avere una chiave valida nel portachiavi."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Impossible verificare la firma del messaggio PGP."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Si è verificato un problema durante la lettura della firma del messaggio PGP."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "La chiave PGP per questo messaggio è presente nel portachiavi."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Il messaggio ha una firma PGP valida, ma la chiave PGP non è presente nel portachiavi. Usare il programma GPG Keychain per aggiungerla."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Non ci sono informazioni disponibili su questa chiave PGP."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Nessuna informazione conosciuta su questa chiave PGP, perché non è presente nel portachiavi."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Non è stata trovata la chiave privata per la decifratura del messaggio."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Decifratura fallita a causa di un errore non identificato."; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Un errore non identificato si è verificato durante la decifratura di questo mssaggio.\n\nPer favore, contattare il produttore del software visitando https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Decifratura fallita a causa di un errore non identificato!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Un errore non identificato si è verificato durante la decifratura di questo messaggio.\n\nMessaggio di errore GPG:\n%@\nPer favore contattare il produttore del software visitando https://gpgtools.tenderapp.com, e riportando questo messaggio di errore GPG:"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "È stata usata la chiave sbagliata per cifrare questo messaggio."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Il messaggio non può essere decifrato perché è stata usata una chiave pubblica sbagliata per cifrarlo.\n\nPer favore contattare il produttore del software visitando https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Il messaggio cifrato è corrotto."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Il messaggio cifrato è corrotto e non può essere decifrato.\n\nPer favore richiedere un nuovo invio al mittente."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "La chiave utilizzata per la firma è stata revocata."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "ATTENZIONE: La chiave utilizzata per firmare questo messaggio è stata revocata.\n\nÈ necessario aggiornare la chiave il cui ID è %@ tramite il programma GPG Keychain, per controllare se è disponibile una chiave più recente. Se anche quest'ultima è revocata, contattare il mittente e verificare il motivo delle revoche."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "La chiave di firma di questo messaggio non è presente nel portachiavi GPG."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Il messaggio non può essere verificato, perché la chiave utilizzata per firmarlo non è presente nel portachiavi GPG.\n\nCercare la chiave il cui ID è %@ nel programma GPG Keychain, ed importarla per verificare il messaggio."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "La firma digitale del messaggio è stata creata con un algoritmo non supportato."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Il messaggio non è stato verificato perché la firma è stata creata con un algoritmo non supportato.\n\nPer favore contattare il produttore del software visitando https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENZIONE: La firma del messaggio non è valida!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "ATTENZIONE: Questo messaggio potrebbe essere stato falsificato dopo essere stato firmato.\n\nContattare il mittente per assicurarsi che il contenuto del messaggio corrisponda all'originale.\n\nSe si è sicuri che il messaggio non è stato alterato, contattare il produttore del software visitando https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "La verifica del messaggio è fallita a causa di un errore non identificato!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Un errore non identificato è avvenuto durante la verifica della firma del messaggio.\n\nPer favore contattare il produttore del software visitando https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Errore nel contenuto della firma del messaggio!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "La firma di questo messaggio non è valida e non può essere verificata.\n\nPer favore contattare il produttore del software visitando https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "La chiave di firma del messaggio è scaduta."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "ATTENZIONE: la chiave che è stata usata per firmare questo messaggio è scaduta.\n\nProvare ad aggiornare la chiave il cui ID è %@ nel programma GPG Keychain e chiedere al mittente come mai la chiave è scaduta."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "La firma del messaggio è scaduta."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "La firma del messaggio è scaduta e non può essere verificata.\n\nChiedere al mittente come mai la firma è scaduta."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d allegati non sono stati decifrati o verificati correttamente."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Per favore cliccare sull'icona di allegato nell'intestazione relativa alla sicurezza del messaggio per ulteriori informazioni."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d allegati non sono stati verificati correttamente."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Per favore cliccare sull'icona di allegato nell'intestazione relativa alla sicurezza del messaggio per ulteriori informazioni."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d allegati non sono stati decifrati correttamente."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Per favorere clicca sull'icona di allegato nell'intestazione relativa alla sicurezza del messaggio per ulteriori informazioni."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d allegato non è stato verificato correttamente."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Per favore cliccare sull'icona di allegato nell'intestazione relativa alla sicurezza del messaggio per ulteriori informazioni."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d allegato non è stato decifrato correttamente."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Per favore cliccare sull'icona di allegato nell'intestazione relativa alla sicurezza del messaggio per ulteriori informazioni."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "La chiave privata per decifrare l'allegato non è stata trovata."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Decifratura fallita a causa di un errore non identificato"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Un errore non identificato si è verificato durante la decifratura di questo allegato.\n\nPer favore contattare il produttore del software visitando https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Decrittazione fallita con errore sconosciuto!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Un errore sconosciuto si è verificato decrittando questo allegato.\nMessaggio di errore GPG:\n%@\nSi prega di contattare il produttore del software presso https://gpgtools.tenderapp.com/, includendo il messaggio di errore GPG"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "La chiave usata per crittografare questo allegato è errata."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Questo allegato non può essere decrittato in quanto per crittografarlo è stata usata una chiave pubblica errata."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "L'allegato crittografato è danneggiato."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Questo allegato crittografato è danneggiato e non può essere decrittato.\nChiedere al mittente un nuovo invio del messaggio."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "La chiave della firma è stata revocata."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "ATTENZIONE: La chiave usata per firmare questo allegato è stata revocata.\nDovresti aggiornare la chiave con ID %@ in GPG Keychain per verificare se ne esiste una nuova disponibile. Se anche la nuova è revocata, verificare il motivo della revoca con il mittente."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "La chiave della firma non è nel Portachiavi GPG."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "La firma dell'allegato non può essere verificata, perché la chiave usata per firmarlo non è nel Portachiavi GPG.\nCercare la chiave con ID %@ in GPG Keychain ed importarla per verificare l'allegato."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "La firma dell'allegato è stata creata con un algoritmo non supportato."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Questo allegato non può essere verificato, perché la chiave usata per firmarlo è stata creata con un algoritmo non supportato."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENZIONE: La firma dell'allegato non è valida!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "ATTENZIONE: Questo allegato potrebbe essere stato falsificato dopo essere stato firmato.\nContatta il mittente e assicurati che il contenuto dell'allegato corrisponda all'originale.\nPrego contattaci a https://gpgtools.tenderapp.com se sei sicuro che l'allegato non è stato modificato."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Verifica della firma fallita con errore sconosciuto!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Si è verificato un errore sconosciuto durante la verifica della firma di questo allegato.\n\nSi prega di contattare il produttore del software presso https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Errore nei dati della firma!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "La firma di questo allegato non è valida e non può essere verificata.\nPrego contattaci a https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "La chiave della firma è scaduta."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "ATTENZIONE: La chiave usata per firmare questo allegato è scaduta.\nPuoi provare ad aggiornare la chiave con ID %@ in GPG Keychain e chiedere al mittente perché la chiave è scaduta."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "La firma di questo allegato è scaduta."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "La firma dell'allegato è scaduta e non può essere verificata.\nChiedi al mittente perché la firma è scaduta."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Parzialmente crittografato"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Parzialmente firmato"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Crittografato"; +"MESSAGE_IS_PGP_SIGNED" = "Firmato"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Firma non valida"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Firmato con chiave sconosciuta"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Firmato con chiave revocata"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Firma non valida"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Firmato"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Nessuna firma trovata"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "Allegato crittografato e firmato"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "Allegati crittografati e firmati"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "Allegato firmato"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "Allegati crittografati"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "Allegato firmato"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "Allegati firmati"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Questo messaggio non può essere crittografato in quanto non ci sono chiavi pubbliche disponibili per i seguenti indirizzi: %@.\nPrego usa GPG Keychain per cercare e importare le chiavi per questi indirizzi."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Il messaggio non può essere crittografato. Prima devi inserire almeno un destinatario."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Crittografato"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Firmato"; +"MESSAGE_VIEW_PGP_PART" = "Parte PGP"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail è pronto."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "La tua installazione MacGPG funziona senza errori."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Prego scarica l'installer di GPG Suite da http://www.gpgtools.org per installare l'intera suite GPG Suite."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Prego controlla la tua installazione e configurazione."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Prego scarica l'installer di GPG Suite da http://www.gpgtools.org per installare l'intera suite GPG Suite."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Attenzione: La disattivazione di questa opzione potrebbe portare alla perdita di informazioni sensibili durante la composizione di un messaggio"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disattiva crittografia"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Annulla"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Sono state trovate installazioni multiple di GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail ha trovato installazioni multiple nei seguenti percorsi che porteranno ad un crash immediato.\n%@\nPrego rimuovi GPGMail.mailbundle in uno dei percorsi e riavvia Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Esci da Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg non è stato trovato"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Qualcuno manomesso con l'installazione di GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Impossibile caricare impostazioni predefiniti GPGMail!"; +NO_DEFAULTS_MESSAGE = "GPGMail non funziona come previsto.\n\nSi prega di scaricare e reinstallare GPG Suite da https: //gpgtools.org\n\nSe questo problema persiste, contattaci all'indirizzo https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "La firma del tuo messaggio non è riuscita a causa di difetti agente GPG!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "La firma del tuo messaggio non è riuscita a causa di un errore di comunicazione GPG agente!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "La firma del messaggio non è riuscita perché si è verificato un errore sconosciuto"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Purtroppo non siamo in grado di gestire l'errore a questo punto."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "La crittografia del tuo messaggio non è riuscita perché si è verificato un errore sconosciuto"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Purtroppo GPGMail non può gestire l'errore a questo punto."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "È stata inserita una password errata troppe volte."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "La firma del messaggio è stata interrotta perché è stata inserita una password errata per 3 volte."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nSe il tuo problema persiste, contattaci all'indirizzo https://gpgtools.tenderapp.com/ con la seguente descrizione di errore:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Hai interrotto la decrittazione del messaggio"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Hai interrotto la decrittazione del attaccamento"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite non funziona come previsto"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite non funziona come previsto"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite non funziona come previsto"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite non funziona come previsto"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "La firma del tuo messaggio non è riuscita a causa di un problema nell'installazione GPGMail."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attenzione: Stai per inviare una risposta in chiaro ad un messaggio cifrato"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Non è possibile crittografare la risposta, perché la chiave pubblica per il seguente destinatario non è presente:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Non è possibile crittografare la risposta, perché le chiavi pubbliche per i seguenti destinatari mancano:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Se scegli di procedere, la tua risposta verrà inviata in chiaro. Di conseguenza, le informazioni riservate potrebbero trapelare, mettendo a rischio a te e i tuoi destinatari."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nSe davvero desideri inviare questa risposta non criptata, rimuovi tutto il testo della mail a cui rispondi prima di inviarla."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "In caso contrario, ricercare e importare le corrispondenti chiavi pubbliche utilizzando il portachiavi GPG per poter inviare la risposta cifrata."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Invia comunque"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Annulla"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Annulla"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Firmare"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Non firmare"; + diff --git a/Resources/it.lproj/GPGMailPreferences.strings b/Resources/it.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..6fc070b9 --- /dev/null +++ b/Resources/it.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Aggiornamenti"; +"728.title" = "Composizione in corso"; +"733.ibShadowedToolTip" = "Domande frequenti"; +"734.alternateTitle" = "Domande frequenti"; +"734.title" = "Informazioni di base"; +"781.title" = "Crittografa bozze"; +"834.title" = "Bottone"; +"1051.ibShadowedToolTip" = "Se hai altre domande."; +"1053.title" = "Segnala problema"; +"0PS-Wm-gKl.title" = "Controlla adesso"; +"0Th-7E-Y7P.title" = "Versione: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Controlla gli aggiornamenti automaticamente"; +"8oZ-YB-M9Q.title" = "Le versioni beta sono rilasciate più frequentemente. Però le nuove funzioni ed i miglioramenti non vengono testati come nelle versioni normali e possono contenere difetti. "; +"D6D-o9-63C.title" = "Mostra Note di rilascio"; +"UhD-uR-dUs.title" = "Includi le beta"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/it.lproj/GPGSignatureView.strings b/Resources/it.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..c424ea4e --- /dev/null +++ b/Resources/it.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Firme"; +"25.title" = "OK"; +"237.title" = "Nome"; +"251.title" = "Dettagli"; +"252.ibShadowedNoSelectionPlaceholder" = "Senza firma"; +"365.title" = "Nome:"; +"367.title" = "Chiave"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algoritmo:"; +"378.title" = "Scade il:"; +"379.title" = "Creato il:"; +"381.title" = "Fiducia:"; +"436.title" = "Creato il:"; +"437.title" = "Firma"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/it.lproj/SignatureView.strings b/Resources/it.lproj/SignatureView.strings new file mode 100644 index 00000000..5f8e5fa4 --- /dev/null +++ b/Resources/it.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Questa firma non è attendibile."; +"VALIDITY_OK" = "Questa firma può essere attendibile"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "La chiave di questa firma è stata revocata."; +"VALIDITY_SIGNATURE_EXPIRED" = "Questa firma è scaduta."; +"VALIDITY_KEY_EXPIRED" = "La chiave di questa firma è scaduta."; +"VALIDITY_KEY_REVOKED" = "La chiave di questa firma è stata revocata."; +"VALIDITY_UNKNOWN_ALGORITHM" = "La firma è stata creata con un algoritmo sconosciuto."; +"VALIDITY_NO_PUBLIC_KEY" = "La chiave di questa firma non è nel portachiavi."; +"VALIDITY_UNKNOWN_ERROR" = "Errore di firma sconosciuto."; +"VALIDITY_BAD_SIGNATURE" = "Questa firma non è valida."; diff --git a/Resources/ja.lproj/GPGAttachment.strings b/Resources/ja.lproj/GPGAttachment.strings new file mode 100644 index 00000000..d33670ea --- /dev/null +++ b/Resources/ja.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "署名の検証に失敗しました"; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "The public key to verify the signature of this attachment is not in your keychain.\n\nPlease download the public key %@ using GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "添付ファイルを復号化に失敗しました。"; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "The secret key to decrypt this attachment is not in your keychain."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "The attachment was decrypted successfully."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Open an attachment in the message view by double-clicking."; diff --git a/Resources/ja.lproj/GPGAttachments.strings b/Resources/ja.lproj/GPGAttachments.strings new file mode 100644 index 00000000..b52175e1 --- /dev/null +++ b/Resources/ja.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "ウインドウ"; +"8.title" = "OK"; +"210.title" = "名前"; +"211.title" = "詳細"; +"239.title" = "鍵"; +"240.title" = "名前:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "作成日:"; +"245.title" = "有効期限:"; +"246.title" = "アルゴリズム:"; +"247.title" = "Ownertrust:"; +"256.title" = "署名"; +"257.title" = "作成日:"; +"291.title" = "The signature could not be verified."; +"293.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"382.title" = "The signature could not be verified."; +"383.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/ja.lproj/GPGMail.strings b/Resources/ja.lproj/GPGMail.strings new file mode 100644 index 00000000..5f234d25 --- /dev/null +++ b/Resources/ja.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "バージョン: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "PGPメッセージを復号化できません。"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "There was a problem decrypting this message. Verify that you have a valid key in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "PGPメッセージの署名を検証できません。"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "There was a problem reading the PGP signature for this message."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP key for this message is not in your keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "The message has a valid PGP signature, but the PGP key is not in your keychain. Please use GPG Keychain to add it."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "No information is available for this PGP key."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "No additional information is known about this PGP key, because it's not in your keychain."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the message is missing."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this message."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This message could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted message is damaged."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted message is damaged and could not be decrypted.\n\nPlease ask the sender to re-send the message."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "署名鍵は失効しています。"; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this message was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The key to this message signature is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The message could not be verified, since the key which was used to sign this message is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the message."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "The message signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This message could not be verified, since the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The signature of this message is invalid!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verification of message signature failed with unknown error!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this message's signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Message signature data error!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This message's signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Message signature's key is expired."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this message is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The message signature is expired."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d attachments failed to decrypt or verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d attachments failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d attachments failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d attachment failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d attachment failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the attachment is missing."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this attachment."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This attachment could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted attachment is damaged."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted attachment is damaged and could not be decrypted.\n\nPlease ask the sender to send you the message again."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "署名鍵は失効しています。"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The signature key is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "The attachment signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This attachment could not be verified, since the key to the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "注意: 添付ファイルの署名が無効です。"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\n if you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Signature verification failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signature data error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This attachment signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "The key of the signature is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Partly Encrypted"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Partly Signed"; +"MESSAGE_IS_PGP_ENCRYPTED" = "暗号化済み"; +"MESSAGE_IS_PGP_SIGNED" = "署名済み"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "無効な署名"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signed with unknown key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signed with revoked key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Invalid signature"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "署名済み"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "署名が見つかりません"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "暗号化済みの添付ファイル"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "暗号化済みの添付ファイル"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "署名済みの添付ファイル"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "署名済みの添付ファイル"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "This message can't be encrypted, since there are no public keys available for the following addresses: %@.\n\nPlease use GPG Keychain to search and import the keys for those addresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "暗号化済み"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "署名済み"; +"MESSAGE_VIEW_PGP_PART" = "PGP part"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMailが利用可能です。"; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "MacGPG はエラー無しに動作しています。"; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "すべての必須コンポーネントをインストールするためにGPG Suiteを https://www.gpgtools.org からダウンロードして再インストールしてください。"; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Please check your installation and configuration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "すべての必須コンポーネントをインストールするためにGPG Suiteを https://www.gpgtools.org からダウンロードして再インストールしてください。"; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "キャンセル"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "複数のGPGMailのインストールが見つかりました。"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "メールを終了"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "キャンセル"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "キャンセル"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/ja.lproj/GPGMailPreferences.strings b/Resources/ja.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..5919d6fc --- /dev/null +++ b/Resources/ja.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "更新"; +"728.title" = "Composing"; +"733.ibShadowedToolTip" = "よくある質問"; +"734.alternateTitle" = "よくある質問"; +"734.title" = "ナレッジベース"; +"781.title" = "下書きを暗号化"; +"834.title" = "ボタン"; +"1051.ibShadowedToolTip" = "If you've any other question."; +"1053.title" = "問題を報告"; +"0PS-Wm-gKl.title" = "今すぐ確認"; +"0Th-7E-Y7P.title" = "バージョン: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "更新を自動的に確認する"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "リリースノートを表示"; +"UhD-uR-dUs.title" = "ベータビルドを含む"; +"q0m-y8-baf.title" = "ビルド:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/ja.lproj/GPGSignatureView.strings b/Resources/ja.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..bea7d03d --- /dev/null +++ b/Resources/ja.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "署名"; +"25.title" = "OK"; +"237.title" = "名前"; +"251.title" = "詳細"; +"252.ibShadowedNoSelectionPlaceholder" = "No signature"; +"365.title" = "名前:"; +"367.title" = "鍵"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "アルゴリズム:"; +"378.title" = "有効期限:"; +"379.title" = "作成日:"; +"381.title" = "Ownertrust:"; +"436.title" = "作成日:"; +"437.title" = "署名"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/ja.lproj/SignatureView.strings b/Resources/ja.lproj/SignatureView.strings new file mode 100644 index 00000000..ca6864bf --- /dev/null +++ b/Resources/ja.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "この署名は信頼されていません。"; +"VALIDITY_OK" = "This signature can be trusted"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "この署名の鍵は失効しています。"; +"VALIDITY_SIGNATURE_EXPIRED" = "この署名は有効期限切れです。"; +"VALIDITY_KEY_EXPIRED" = "この署名の鍵は有効期限切れです。"; +"VALIDITY_KEY_REVOKED" = "この署名の鍵は失効しています。"; +"VALIDITY_UNKNOWN_ALGORITHM" = "Signature was created with unknown algorithm."; +"VALIDITY_NO_PUBLIC_KEY" = "The key of this signature is not in your keychain."; +"VALIDITY_UNKNOWN_ERROR" = "Unknown signature error."; +"VALIDITY_BAD_SIGNATURE" = "This signature is invalid."; diff --git a/Resources/ko.lproj/GPGAttachment.strings b/Resources/ko.lproj/GPGAttachment.strings new file mode 100644 index 00000000..8d682209 --- /dev/null +++ b/Resources/ko.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "서명을 검증하는데 실패했습니다."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "이 첨부파일의 서명을 검증하기 위한 공개 키가 키체인에 없습니다.\n\nGPG 키체인을 통해 %@ 공개키를 다운로드 해주세요."; +"DECRYPT_ERROR_GENERAL_TITLE" = "첨부파일 복호화에 실패했습니다."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "이 첨부 파일을 복호화 하기 위한 비밀 키가 키체인에 없습니다."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "첨부파일 복호화가 성공적으로 이뤄졌습니다."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "더블 클릭하여 편지안의 첨부파일을 열 수 있습니다."; diff --git a/Resources/ko.lproj/GPGAttachments.strings b/Resources/ko.lproj/GPGAttachments.strings new file mode 100644 index 00000000..e520216e --- /dev/null +++ b/Resources/ko.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "창"; +"8.title" = "확인"; +"210.title" = "이름"; +"211.title" = "세부항목"; +"239.title" = "키"; +"240.title" = "이름:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "생성됨:"; +"245.title" = "만료:"; +"246.title" = "알고리즘:"; +"247.title" = "소유주 신뢰:"; +"256.title" = "서명"; +"257.title" = "생성됨:"; +"291.title" = "서명이 검증되지 않았습니다."; +"293.title" = "키체인에 공개 키가 없어서 서명을 검증할 수가 없습니다.\nGPG 키체인을 통해 키를 다운로드 해주세요."; +"382.title" = "서명이 검증되지 않았습니다."; +"383.title" = "키체인에 공개 키가 없어서 서명을 검증할 수가 없습니다.\nGPG 키체인을 통해 키를 다운로드 해주세요."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/ko.lproj/GPGMail.strings b/Resources/ko.lproj/GPGMail.strings new file mode 100644 index 00000000..3367d826 --- /dev/null +++ b/Resources/ko.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "버전: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "PGP 메시지를 복호화 할수 없습니다."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "메시지를 복호화 할 수 없습니다. GPG 키체인에 적합한 키가 있는지 확인해보세요"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "PGP 메시지 서명을 확인할 수 없습니다"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "이 메시지의 PGP 서명을 읽는데 문제가 발생했습니다"; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "이 메시지의 PGP 키는 키체인에 등록되어 있지 않습니다"; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "메시지의 PGP 서명은 맞으나, PGP 키가 등록되지 않았습니다. GPG 키체인에서 추가해주세요"; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "PGP 키에 대한 정보가 없습니다."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "키체인에 없는 PGP 키라 자세한 정보를 알수 없습니다."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "이 메시지를 복호화 하기 위한 비밀 키가 키체인에 없습니다."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this message."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This message could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted message is damaged."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted message is damaged and could not be decrypted.\n\nPlease ask the sender to re-send the message."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this message was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The key to this message signature is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The message could not be verified, since the key which was used to sign this message is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the message."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "The message signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This message could not be verified, since the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The signature of this message is invalid!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verification of message signature failed with unknown error!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this message's signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Message signature data error!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This message's signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Message signature's key is expired."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this message is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The message signature is expired."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d attachments failed to decrypt or verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d attachments failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d attachments failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d attachment failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d attachment failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the attachment is missing."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this attachment."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This attachment could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted attachment is damaged."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted attachment is damaged and could not be decrypted.\n\nPlease ask the sender to send you the message again."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The signature key is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "The attachment signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This attachment could not be verified, since the key to the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The attachment signature is invalid!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\n if you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Signature verification failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signature data error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This attachment signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "The key of the signature is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Partly Encrypted"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Partly Signed"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Encrypted"; +"MESSAGE_IS_PGP_SIGNED" = "Signed"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Invalid Signature"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signed with unknown key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signed with revoked key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Invalid signature"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signed"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No signature found"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "encrypted attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "encrypted attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signed attachments"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "This message can't be encrypted, since there are no public keys available for the following addresses: %@.\n\nPlease use GPG Keychain to search and import the keys for those addresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Encrypted"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signed"; +"MESSAGE_VIEW_PGP_PART" = "PGP part"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail is ready."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Your MacGPG installation is working with no errors."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Please check your installation and configuration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "취소"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Found multiple installations of GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "취소"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "취소"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/ko.lproj/GPGMailPreferences.strings b/Resources/ko.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..788891c9 --- /dev/null +++ b/Resources/ko.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "업데이트"; +"728.title" = "구성중"; +"733.ibShadowedToolTip" = "자주 묻는 질문들."; +"734.alternateTitle" = "자주 묻는 질문들"; +"734.title" = "정보 베이스"; +"781.title" = "암호화된 초고"; +"834.title" = "버튼"; +"1051.ibShadowedToolTip" = "다른 질문들이 있으시다면."; +"1053.title" = "문제 보고"; +"0PS-Wm-gKl.title" = "지금 확인"; +"0Th-7E-Y7P.title" = "버전: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "자동으로 업데이트 확인하기"; +"8oZ-YB-M9Q.title" = "베타 빌드는 자주 올라옵니다. 새로운 기능들과 향상된 점들은 많이 테스트되지 않았습니다"; +"D6D-o9-63C.title" = "릴리즈 노트 보기"; +"UhD-uR-dUs.title" = "베타 빌드 추가"; +"q0m-y8-baf.title" = "빌드:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/ko.lproj/GPGSignatureView.strings b/Resources/ko.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..9cc37934 --- /dev/null +++ b/Resources/ko.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "서명"; +"25.title" = "확인"; +"237.title" = "이름"; +"251.title" = "세부항목"; +"252.ibShadowedNoSelectionPlaceholder" = "서명이 없음"; +"365.title" = "이름:"; +"367.title" = "키"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "알고리즘:"; +"378.title" = "만료:"; +"379.title" = "생성됨:"; +"381.title" = "소유주 신뢰:"; +"436.title" = "생성됨:"; +"437.title" = "서명"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/ko.lproj/SignatureView.strings b/Resources/ko.lproj/SignatureView.strings new file mode 100644 index 00000000..12992c15 --- /dev/null +++ b/Resources/ko.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "이 서명은 믿을수 없습니다."; +"VALIDITY_OK" = "이 서명은 믿을 수 있습니다."; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "이 서명의 키가 파기 되었습니다"; +"VALIDITY_SIGNATURE_EXPIRED" = "서명이 만료되었습니다."; +"VALIDITY_KEY_EXPIRED" = "이 서명의 키가 만료되었습니다."; +"VALIDITY_KEY_REVOKED" = "이 서명의 키가 파기 되었습니다"; +"VALIDITY_UNKNOWN_ALGORITHM" = "알 수 없는 알고리즘에 의해 서명되었습니다."; +"VALIDITY_NO_PUBLIC_KEY" = "다음 서명의 키가 키체인에 없습니다."; +"VALIDITY_UNKNOWN_ERROR" = "알수없는 서명 오류."; +"VALIDITY_BAD_SIGNATURE" = "이 서명은 효력이 없습니다."; diff --git a/Resources/lt.lproj/GPGAttachment.strings b/Resources/lt.lproj/GPGAttachment.strings new file mode 100644 index 00000000..ee1c99c7 --- /dev/null +++ b/Resources/lt.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Failed to verify the signature."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "The public key to verify the signature of this attachment is not in your keychain.\n\nPlease download the public key %@ using GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Nepavyko iššifruoti priedo."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Slaptojo rakto, skirto iššifruoti šį priedą, jūsų raktinėje nėra."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Priedas buvo sėkmingai iššifruotas."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Open an attachment in the message view by double-clicking."; diff --git a/Resources/lt.lproj/GPGAttachments.strings b/Resources/lt.lproj/GPGAttachments.strings new file mode 100644 index 00000000..d3989ec3 --- /dev/null +++ b/Resources/lt.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Langas"; +"8.title" = "Gerai"; +"210.title" = "name"; +"211.title" = "Išsamiau"; +"239.title" = "Raktas"; +"240.title" = "Name:"; +"241.title" = "Email:"; +"243.title" = "Kontrolinis kodas:"; +"244.title" = "Created:"; +"245.title" = "Expires:"; +"246.title" = "Algoritmas:"; +"247.title" = "Ownertrust:"; +"256.title" = "Parašas"; +"257.title" = "Created:"; +"291.title" = "Nepavyko patvirtinti parašo."; +"293.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"382.title" = "Nepavyko patvirtinti parašo."; +"383.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Niekada"; diff --git a/Resources/lt.lproj/GPGMail.strings b/Resources/lt.lproj/GPGMail.strings new file mode 100644 index 00000000..c164ffa5 --- /dev/null +++ b/Resources/lt.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Versija: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Unable to decrypt PGP message."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "There was a problem decrypting this message. Verify that you have a valid key in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Unable to verify PGP message signature."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "There was a problem reading the PGP signature for this message."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP key for this message is not in your keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "The message has a valid PGP signature, but the PGP key is not in your keychain. Please use GPG Keychain to add it."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "No information is available for this PGP key."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "No additional information is known about this PGP key, because it's not in your keychain."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the message is missing."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Iššifravimas nepavyko dėl nežinomos klaidos!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Iššifravimas nepavyko dėl nežinomos klaidos!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this message."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This message could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Užšifruotas laiškas yra pažeistas."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Šis užšifruotas laiškas yra pažeistas ir negali būti iššifruotas.\n\nPaprašykite siuntėjo, kad laišką persiųstų iš naujo."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Parašo raktas buvo panaikintas."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this message was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The key to this message signature is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The message could not be verified, since the key which was used to sign this message is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the message."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "The message signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This message could not be verified, since the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The signature of this message is invalid!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verification of message signature failed with unknown error!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this message's signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Laiško parašo duomenų klaida!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This message's signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Message signature's key is expired."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this message is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The message signature is expired."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d attachments failed to decrypt or verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d attachments failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d attachments failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d attachment failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d attachment failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Trūksta slapto rakto, skirto priedo iššifravimui."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Iššifravimas nepavyko dėl nežinomos klaidos!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Iššifravimas nepavyko dėl nežinomos klaidos!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this attachment."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This attachment could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Užšifruotas priedas yra pažeistas."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted attachment is damaged and could not be decrypted.\n\nPlease ask the sender to send you the message again."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Parašo raktas buvo panaikintas."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The signature key is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "The attachment signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This attachment could not be verified, since the key to the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "DĖMESIO: Priedo parašas yra neteisingas!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\n if you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Signature verification failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Parašo duomenų klaida!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This attachment signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Parašo rakto galiojimas yra pasibaigęs."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Dalinai šifruotas"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Dalinai pasirašytas"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Šifruotas"; +"MESSAGE_IS_PGP_SIGNED" = "Pasirašytas"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Invalid Signature"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Pasirašytas nežinomu raktu"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Pasirašytas panaikintu raktu"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Neteisingas parašas"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Pasirašytas"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Parašas nerastas"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "encrypted attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "encrypted attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signed attachments"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "This message can't be encrypted, since there are no public keys available for the following addresses: %@.\n\nPlease use GPG Keychain to search and import the keys for those addresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Šifruotas"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Pasirašytas"; +"MESSAGE_VIEW_PGP_PART" = "PGP dalis"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail is ready."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Your MacGPG installation is working with no errors."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Please check your installation and configuration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Atsisakyti"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Found multiple installations of GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg nerasta"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Vis tiek siųsti"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Atsisakyti"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Vis tiek persiųsti"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Atsisakyti"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/lt.lproj/GPGMailPreferences.strings b/Resources/lt.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..8fb0f513 --- /dev/null +++ b/Resources/lt.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Atnaujinimai"; +"728.title" = "Composing"; +"733.ibShadowedToolTip" = "Dažniausiai Užduodami Klausimai."; +"734.alternateTitle" = "Dažniausiai Užduodami Klausimai"; +"734.title" = "Knowledge Base"; +"781.title" = "Encrypt drafts"; +"834.title" = "Mygtukas"; +"1051.ibShadowedToolTip" = "If you've any other question."; +"1053.title" = "Report Problem"; +"0PS-Wm-gKl.title" = "Tikrinti dabar"; +"0Th-7E-Y7P.title" = "Versija: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Automatiškai tikrinti ar yra atnaujinimų"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "Rodyti laidos informaciją"; +"UhD-uR-dUs.title" = "Įtraukti beta darinius"; +"q0m-y8-baf.title" = "Darinys:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/lt.lproj/GPGSignatureView.strings b/Resources/lt.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..05ac035d --- /dev/null +++ b/Resources/lt.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Parašai"; +"25.title" = "Gerai"; +"237.title" = "name"; +"251.title" = "Išsamiau"; +"252.ibShadowedNoSelectionPlaceholder" = "No signature"; +"365.title" = "Name:"; +"367.title" = "Raktas"; +"369.title" = "Email:"; +"372.title" = "Kontrolinis kodas:"; +"377.title" = "Algoritmas:"; +"378.title" = "Expires:"; +"379.title" = "Created:"; +"381.title" = "Ownertrust:"; +"436.title" = "Created:"; +"437.title" = "Parašas"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Niekada"; diff --git a/Resources/lt.lproj/SignatureView.strings b/Resources/lt.lproj/SignatureView.strings new file mode 100644 index 00000000..962521e3 --- /dev/null +++ b/Resources/lt.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Šiuo parašu negalima pasitikėti."; +"VALIDITY_OK" = "Šiuo parašu galima pasitikėti"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Šio parašo raktas buvo panaikintas."; +"VALIDITY_SIGNATURE_EXPIRED" = "Šis parašas nebegalioja."; +"VALIDITY_KEY_EXPIRED" = "Šio parašo raktas nebegalioja."; +"VALIDITY_KEY_REVOKED" = "Šio parašo raktas buvo panaikintas."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Parašas buvo sukurtas su nežinomu algoritmu."; +"VALIDITY_NO_PUBLIC_KEY" = "Šio parašo raktas nėra jūsų raktinėje."; +"VALIDITY_UNKNOWN_ERROR" = "Nežinoma parašo klaida."; +"VALIDITY_BAD_SIGNATURE" = "Šis parašas yra neteisingas."; diff --git a/Resources/nb.lproj/GPGAttachment.strings b/Resources/nb.lproj/GPGAttachment.strings new file mode 100644 index 00000000..30921eeb --- /dev/null +++ b/Resources/nb.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Verifisering av signaturen feilet."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "Den offentlige nøkkelen for å verifisere signaturen til dette vedlegget er ikke i nøkkelringen din\n\nVennligst last ned den offentlige nøkkelen %@ ved å bruke GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Dekryptering av vedlegget feilet."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Den hemmelige nøkkelen som dekrypterer dette vedlegget er ikke i nøkkelringen din."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Vedlegget ble dekryptert."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Åpne vedlegg i meldingen ved å dobbelklikke."; diff --git a/Resources/nb.lproj/GPGAttachments.strings b/Resources/nb.lproj/GPGAttachments.strings new file mode 100644 index 00000000..965278c9 --- /dev/null +++ b/Resources/nb.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Vindu"; +"8.title" = "OK"; +"210.title" = "navn"; +"211.title" = "Detaljer"; +"239.title" = "Nøkkel"; +"240.title" = "Navn:"; +"241.title" = "E-post:"; +"243.title" = "Fingeravtrykk:"; +"244.title" = "Opprettet:"; +"245.title" = "Utløper:"; +"246.title" = "Algoritme:"; +"247.title" = "Eier-tillit:"; +"256.title" = "Signatur"; +"257.title" = "Opprettet:"; +"291.title" = "Signaturen kunne ikke verifiseres."; +"293.title" = "Signaturen kunne ikke verifiserer fordi den offentlige nøkkelen ikke er din nøkkelring.\nVennligst last den ned ved å bruke GPG Keychain."; +"382.title" = "Signaturen kunne ikke verifiseres."; +"383.title" = "Signaturen kunne ikke verifiserer fordi den offentlige nøkkelen ikke er din nøkkelring.\nVennligst last den ned ved å bruke GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/nb.lproj/GPGMail.strings b/Resources/nb.lproj/GPGMail.strings new file mode 100644 index 00000000..763ba3c6 --- /dev/null +++ b/Resources/nb.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Versjon: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Kunne ikke dekryptere PGP-melding."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Et problem oppstod under dekryptering av denne meldingen. Kontroller at du har en gyldig nøkkel i din GPG-nøkkelring."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Kunne ikke bekrefte PGP meldings-signatur."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Et problem oppstod med lesing av PGP-signaturen for denne meldingen."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP-nøkkelen for denne meldingen finnes ikke i nøkkelringen din."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Meldingen har en gyldig PGP signatur, men PGP-nøkkelen finnes ikke i nøkkelringen din. Vennligst benytt GPG-nøkkelring for å legge den til."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Ingen informasjon tilgjengelig for denne PGP-nøkkelen."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Det kan ikke vises mer informasjon om denne PGP-nøkkelen, da den ikke finnes i din nøkkelring."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Mangler hemmelig nøkkel for å kunne dekryptere meldingen."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "Ingen av disse hemmelige nøklene ble funnet i nøkkelringen din (%@). Den hemmelige nøkkelen kreves for å dekryptere denne meldingen.\n\nVennligst sjekk med avsender om de brukte den riktige offentlige nøkkelen din.\nUndersøk eventuelt en sikkerhetskopi av nøkkelringen din, og prøv å importere den riktige hemmelige nøkkelen derfra."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Dekryptering mislyktes med ukjent feil!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "En ukjent feil oppstod mens denne meldingen ble dekryptert.\n\nVennligst kontakt oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Dekryptering mislyktes med ukjent feil!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "En ukjent feil oppstod mens denne meldingen ble dekryptert.\n\nGPG feilmelding:\n%@\nVennligst kontakt oss på https://gpgtools.tenderapp.com, og oppgi GPG feilmeldingen."; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Feil nøkkel er benyttet for å kryptere denne meldingen."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Denne meldingen kunne ikke dekrypteres fordi feil offentlig nøkkel ble brukt for å kryptere den.\n\nVennligst kontakt oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Den krypterte meldingen er skadet."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Denne krypterte meldingen er skadet og kunne ikke dekrypteres.\n\nVennligst be avsender om å sende meldingen på nytt."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signatur-nøkkelen er tilbakekalt."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "MERK: Nøkkelen som ble brukt for å signere denne meldingen er tilbakekalt.\n\nDu bør oppdatere nøkkelen med nøkkel-ID %@ i GPG-nøkkelring for å undersøke om en ny nøkkel er tilgjengelig. Hvis den nye fortsatt er trukket tilbake, sjekk med avsender hvorfor nøkkelen ble tilbakekallt."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Nøkkelen til denne meldings-signaturen finnes ikke i din GPG-nøkkelring."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Meldingen kunne ikke verifiseres fordi nøkkelen som ble brukt til å signere denne meldingen ikke finnes i din GPG-nøkkelring.\n\nSøk etter nøkkelen med ID %@ i GPG-nøkkelring og importer den for å verifisere meldingen."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "Meldingssignaturen ble laget med en algoritme som ikke er støttet."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Meldingen kunne ikke verifiseres fordi signaturen ble laget med en algoritme som ikke støttes.\n\nVennligst kontakt oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "MERK: Meldingssignaturen er ugyldig!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Denne meldingen kan ha blitt modifisert etter at signaturen ble opprettet.\n\nVennligst kontakt senderen for å forsikre deg om at innholdet i meldingen matcher originalen.\n\nVennligst kontakt oss via\nhttps://gpgtools.tenderapp.com\nom du er sikker på at meldingen ikke er modifisert."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verifisering av meldingssignatur mislyktes med en ukjent feil!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "En ukjent feil oppstod under verifisering av denne meldingens signatur.\n\nVennligst kontakt oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Datafeil i meldingssignatur!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Denne meldingens signatur er ugyldig og kunne ikke verifiseres.\n\nVennligst kontakt oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Nøkkelen til meldingssignaturen er utløpt."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "MERK: Nøkkelen som ble brukt for å signere denne meldingen er utløpt.\n\nDu kan forsøke å oppdatere nøkkelen med ID %@ i GPG-nøkkelring og spørre avsender hvorfor nøkkelen er utløpt."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Denne melingssignaturen er utløpt."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Signaturen er utløpt og kunne ikke verifiseres.\n\nSjekk med avsender hvorfor signaturen er utløpt."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG er ikke installert"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Dekryptering mislyktes fordi MacGPG ikke er installert.\n\nVennligst last ned og reinstaller GPG Suite fra https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG er ikke installert"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifisering mislyktes fordi MacGPG ikke er installert.\n\nVennligst last ned og reinstaller GPG Suite fra https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "Dekryptering eller verifisering av vedlegg %d mislyktes."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Vennligst klikk på vedleggs-ikonet i sikkerhets-delen av meldings-hodet for ytterligere detaljer."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d vedlegg kunne ikke verifiseres."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Vennligst klikk på vedleggs-ikonet i sikkerhets-delen av meldings-hodet for ytterligere detaljer."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "Dekryptering av %d vedlegg mislyktes."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Vennligst klikk på vedleggs-ikonet i sikkerhets-delen av meldings-hodet for ytterligere detaljer."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "Verifisering av %d vedlegg mislyktes."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Vennligst klikk på vedleggs-ikonet i sikkerhets-delen av meldings-hodet for ytterligere detaljer."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "Dekryptering av %d vedlegg mislyktes."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Vennligst klikk på vedleggs-ikonet i sikkerhets-delen av meldings-hodet for ytterligere detaljer."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Den hemmelige nøkkelen for å dekryptere vedlegget mangler."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "Ingen av disse hemmelige nøklene ble funnet i nøkkelringen din (%@). Den hemmelige nøkkelen kreves for å dekryptere dette vedlegget.\n\nVennligst sjekk med avsender om de brukte den riktige offentlige nøkkelen din.\nUndersøk eventuelt en sikkerhetskopi av nøkkelringen din, og prøv å importere den riktige hemmelige nøkkelen derfra."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Dekryptering mislyktes med ukjent feil!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "En ukjent feil oppstod under dekryptering av dette vedlegget.\n\nVennligst kontakt oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Dekryptering mislyktes med ukjent feil!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "En ukjent feil oppstod under dekryptering av dette vedlegget.\n\nGPG feilmelding:\n%@\nVennligst kontakt oss, og inkluder GPG feilmeldingen, på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Feil nøkkel ble benyttet for å kryptere dette vedlegget."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Dette vedlegget kunne ikke krypteres, da feil offentlig nøkkel ble benyttet for å kryptere det.\n\nVennligst kontakt oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Det krypterte vedlegget er skadet."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Dette krypterte vedlegget er skadet og kunne ikke dekrypteres.\n\nVennligst be avsender om å sende meldingen på nytt."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signaturnøkkelen er tilbakekalt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "MERK: Nøkkelen som ble brukt for å signere dette vedlegget har blitt tilbakekallt.\n\nDu bør oppdatere nøkkelen med nøkkel-ID %@ i GPG-nøkkelring for å sjekke om en ny er tilgjengelig. Hvis den nye også er tilbakekallt, undersøk med avsender hvorfor nøkkelen er tilbakekallt."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Signaturnøkkelen finnes ikke i din GPG-nøkkelring."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Vedleggets signatur kunne ikke verifiseres, fordi nøkkelen som ble brukt til å signere, ikke finnes i GPG-nøkkelringen din.\n\nSøk etter nøkkelen med ID %@ i GPG-nøkkelring og importér den for å verifisere vedlegget."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "Vedleggets signatur ble opprettet med en algoritme som ikke støttes."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Vedlegget kunne ikke verifiseres, fordi signaturens nøkkel ble opprettet med en algoritme som ikke støttes. \n\nVennligst kontakt oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "MERK: Vedleggs-signaturen er ikke gyldig!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "MERK: Dette vedlegget kan ha blitt endret etter at signaturen ble opprettet.\n\nVennligst kontakt avsender for å forsikre deg om at vedlegget samsvarer med originalen.\n\nVennligst kontakt oss på https://gpgtools.tenderapp.com, hvis du er sikker på at vedlegget ikke var endret."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Verifisering av signatur mislyktes fordi en ukjent feil oppstod!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "En ukjent feil oppstod under verifiseringen av dette vedleggets signatur.\n\nVennligst kontakt oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signatur-data feil!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Dette vedleggets signatur er ugydlig og kunne ikke verifiseres\n\nVennligst kontakt oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Nøkkelens signatur er utløpt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "MERK: Nøkkelen som ble brukt til å signere dette vedlegget er utløpt.\n\nDu kan prøve å oppdatere nøkkelen med ID %@ i GPG-nøkkelring og spør avsender hvorfor nøkkelen er utløpt."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Vedleggets signatur er utløpt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Vedleggets signatur er utløpt og kunne ikke verifiseres.\n\nSpør avsender om hvorfor signaturen er utløpt."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Delvis kryptert"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Delvis signert"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Kryptert"; +"MESSAGE_IS_PGP_SIGNED" = "Signert"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Ugyldig signatur"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signert med ukjent nøkkel"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signert med tilbakekalt nøkkel"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Ugyldig signatur"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signert"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Ingen signatur funnet"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "kryptert/signert vedlegg"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "krypterte/signerte vedlegg"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "kryptert vedlegg"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "krypterte vedlegg"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signert vedlegg"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signerte vedlegg"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "Denne meldingen kunne ikke signeres, fordi det ikke finnes noen privat nøkkel for %@.\n\nVennligst sørg for at det finnes en privat nøkkel for denne adressen i GPG Keychain. Legg til en ny User ID til en eksisterende adresse om nødvendig, eller lag en ny nøkkel til denne adressen.\n\nHvis det finnes en nøkkel til denne adressen, sørg for at adressen i Mail-innstillingene er riktig, og at den stemmer overens med nøkkelens adresse."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Denne meldingen kan ikke krypteres, fordi det ikke er noen offentlige nøkler tilgjengelige til følgende adresser: %@.\n\nVennligst bruk GPG-nøkkelring til å finne og importere nøklene til disse adressene."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Denne meldingen kan ikke krypteres. Du må ha minst en mottaker først."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Kryptert"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signert"; +"MESSAGE_VIEW_PGP_PART" = "PGP del"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail er klar."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "MacGPG installasjonen din fungerer uten feil."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG er ikke installert. Sjekk installasjonen din."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Vennligst last ned og installer GPG Suite på nytt fra https://www.gpgtools.org for å sikre at alle nødvendige komponenter er installert."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Vennligst sjekk installasjonen og innstillingene."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Vennligst last ned og installer GPG Suite på nytt fra https://www.gpgtools.org for å sikre at alle nødvendige komponenter er installert."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Advarsel: Om du slår av denne funksjonen kan det lede til lekkasje av sensitiv informasjon når du skriver en melding"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "Hvis valget \"Lagre kladder på tjerner\" er skrudd på for kontoene, vil macOS Mail automatisk lagre kladdene dine på e-posttjeneren mens du forfatter en melding.\nVed å skru av \"Krypter kladder\", vil kladdene dine bli sendt i klartekst (ikke kryptert), slik at alle med tilgang til e-posttjeneren kan lese dem.\n\nHvis du beholder \"Krypter kladder\" påskrudd, vil kladdene dine bli kryptert før de lagres på en e-posttjener og kun du vil kunne lese dem.\n\nØnsker du fremdeles å skru av \"Krypter kladder\""; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Skru av kryptering"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Avbryt"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Fant flere installasjoner av GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail fant flere installasjoner på følgende steder som vil føre til en umiddelbar kræsj:\n\n%@\n\nVennligst fjern GPGMail.mailbundle på et av stedene og start Mail på nytt.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Avslutt Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg ble ikke funnet"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg ikke funnet på ditt system. Last ned og installer GPG Suite fra https://www.gpgtools.org"; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Noen har tuklet med din installasjon av GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "For å beskytte deg vil ikke GPGMail lastes inn!\n\nVennligst last ned den siste versjonen av GPG Suite fra https://gpgtools.org for å forsike deg om at du har original-versjonen fra oss."; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Kunne ikke laste standardinnstilligene for GPGMail!"; +NO_DEFAULTS_MESSAGE = "GPGMail fungerer ikke som forventet.\n\nVennligst last ned og reinstaller GPG Suite fra https://gpgtools.org\n\nOm dette probelemet ikke opphører, vennligst kontakt oss via https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signering av meldingen din feilet grunnet defekt PIN-oppføring!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, verktøyet som er ansvarlig for å be om passordet ditt ser ut til å være defekt.\n\nFor å fikse dette problemet, installer den nyeste versjonen av GPG Suite på nytt fra https://gpgtools.org"; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signering av meldingen din mislyktes grunnet defekt GPG-agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "GPG-agenten som er en avgjørende del av GPG ser ut til å være defekt på ditt system.\n\nFor å fikse dette problemet, installer GPG Suite på nytt fra https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signering av meldingen din mislyktes fordi det oppstod en feil i kommunikasjonen med GPG-agenten."; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "Det var ikke mulig å få kontakt med GPG-agenten for å be om passordet ditt.\n\nFor å fikse dette problemet, installer GPG Suite på nytt fra https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signering av meldingen din mislyktes fordi det har oppstått en ukjent feil"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Uheldigvis kan vi ikke fikse denne feilen på det nåværende tidspunkt. "; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Kryptering av meldingen din mislyktes fordi det har oppstått en ukjent feil"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Uheldigvis kan ikke GPGMail fikse denne feilen på det nåværende tidspunkt."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Du har skrevet inn feil passord for mange ganger"; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signering av meldingen din ble avbrutt fordi du skrev feil passord 3 ganger."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\nSkulle problemet vedvare, vennligst kontakt oss på https://gpgtools.tenderapp.com med følgende feilbeskrivelse:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Du avbrøt kryptering av melding."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Meldingen kunne ikke dekrypteres fordi du avbrøt passordforespørselen."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Du avbrøt dekryptering av vedlegg"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Vedlegget kunne ikke dekrypteres fordi du avbrøt passordførespørselen."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite fungerer ikke som forventet"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Dekryptering av meldingen mislyktes.\n\nVennligst installer GPG Suite på nytt fra https://gpgtools.org for å fikse dette problemet.\n\nSkulle problemet vedvare kan du kontakte oss på https://gpgtools.tenderapp.com/. Inkluder informasjon om at xpc-tjenesten ikke fungerer som den skal."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite fungerer ikke som forventet"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Dekryptering av vedlegget mislyktes.\n\nVennligst installer GPG Suite på nytt fra https://gpgtools.org for å fikse dette problemet.\n\nSkulle problemet vedvare kan du kontakte oss på https://gpgtools.tenderapp.com/. Inkluder informasjon om at xpc-tjenesten ikke fungerer som den skal."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite fungerer ikke som forventet"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifisering av meldingen mislyktes.\n\nVennligst installer GPG Suite på nytt fra https://gpgtools.org for å fikse dette problemet.\n\nSkulle problemet vedvare kan du kontakte oss på https://gpgtools.tenderapp.com/. Inkluder informasjon om at xpc-tjenesten ikke fungerer som den skal."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite fungerer ikke som forventet"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifisering av vedlegget mislyktes.\n\nVennligst installer GPG Suite på nytt fra https://gpgtools.org for å fikse dette problemet.\n\nSkulle problemet vedvare kan du kontakte oss på https://gpgtools.tenderapp.com/. Inkluder informasjon om at xpc-tjenesten ikke fungerer som den skal."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signering av meldingen mislyktes fordi et problem oppstod når passordfrasen ble forespurt."; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, programmet som er ansvarlig for å be om passordet ditt, ser ikke ut til å fungere som det skal.\n\nVennligst installer GPG Suite på nytt fra https://gpgtools.org for å fikse dette problemet."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signering av meldingen din feilet grunnet et problem med din GPGMail installasjon."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Vennligst installer GPG Suite på nytt fra https://gpgtools.org for å fikse dette problemet.\n\nSkulle problemet vedvare kan du kontakte oss på https://gpgtools.tenderapp.com/. Inkluder informasjon om at xpc-tjenesten ikke fungerer som den skal."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Kunne ikke dekryptere meldingen på grunn av feil i pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, verktøyet som er ansvarlig for å be om passordet ditt ser ut til å være defekt.\n\nFor å fikse dette problemet, installer den nyeste versjonen av GPG Suite på nytt fra https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Kunne ikke dekryptere vedlegget på grunn av feil i pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, verktøyet som er ansvarlig for å be om passordet ditt ser ut til å være defekt.\n\nFor å fikse dette problemet, installer den nyeste versjonen av GPG Suite på nytt fra https://gpgtools.org"; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Advarsel: Du er i ferd med å senden et ukryptert svar på en kryptert melding"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Det er ikke mulig å kryptere svaret, fordi den offentlige nøkkelen til følgende mottaker mangler:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Det er ikke mulig å kryptere svaret, fordi de offentlige nøklene til følgende mottakere mangler:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Hvis du velger å fortsette, vil ditt svar sendes ukryptert. Som et resultat av det kan konfidensiell informasjon lekke ut, og sette både deg og mottakerne i fare."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nHvis du virkelig ønsker å sende dette svaret ukryptert, vennligst fjern eventuelt tidligere korrespondanse som måtte være inkludert i svaret ditt, før du sender."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Ellers, søk og importer tilsvarende offentlige nøkler ved å bruke GPG-nøkkelring for å sende svaret kryptert."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Ellers, søk og importer den samsvarende offentlige nøkkelen ved bruk av GPG-nøkkelring for å sende svaret kryptert."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send likevel"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Avbryt"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Advarsel: Du er i ferd med å videresende den krypterte versjonen av en kryptert melding."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Det er ikke mulig å kryptere meldingen du er i ferd med å videresende, fordi den offentlige nøkkelen for følgende mottaker mangler:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Det er ikke mulig å kryptere meldingen du er i ferd med å videresende, fordi offentlige nøkler for følgende mottakere mangler:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "Hvis du velger å fortsette, vil meldingen du er i ferd med å videresende bli sendt ukryptert. Som et resultat, kan konfidensiell informasjon lekke, noe som medfører risiko for deg og dine mottakere."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Ellers, søk og importer samsvarende offentlige nøkler ved bruk av GPG-nøkkelring for å kunne videresende en kryptert versjon av meldingen."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Ellers, søk og importer samsvarende offentlige nøkkel ved bruk av GPG-nøkkelring for å kunne videresende en kryptert versjon av meldingen."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Videresend uansett"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Avbryt"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Sikkerhetsmetode: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Signer"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Ikke signer"; + diff --git a/Resources/nb.lproj/GPGMailPreferences.strings b/Resources/nb.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..674e5b3f --- /dev/null +++ b/Resources/nb.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Oppdateringer"; +"728.title" = "Skriving"; +"733.ibShadowedToolTip" = "Ofte Stilte Spørsmål."; +"734.alternateTitle" = "Ofte Stilte Spørsmål"; +"734.title" = "Kunnskapsbase"; +"781.title" = "Krypter kladder"; +"834.title" = "Knapp"; +"1051.ibShadowedToolTip" = "Hvis du har andre spørsmål."; +"1053.title" = "Rapporter problem"; +"0PS-Wm-gKl.title" = "Sjekk nå"; +"0Th-7E-Y7P.title" = "Versjon: xxx"; +"2ul-d0-5ir.title" = "Signer nye e-poster"; +"80G-ZN-hjm.title" = "Søk etter oppdateringer automatisk"; +"8oZ-YB-M9Q.title" = "Betabyggversjoner slippes oftere. Nye funksjoner og forbedringer er mindre testet."; +"D6D-o9-63C.title" = "Vis versjonsnotater"; +"UhD-uR-dUs.title" = "Inkluder betabyggversjoner"; +"q0m-y8-baf.title" = "Byggversjon:"; +"yJs-2y-8Cb.title" = "Krypter nye e-poster"; diff --git a/Resources/nb.lproj/GPGSignatureView.strings b/Resources/nb.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..6ed0ac80 --- /dev/null +++ b/Resources/nb.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Signaturer"; +"25.title" = "OK"; +"237.title" = "navn"; +"251.title" = "Detaljer"; +"252.ibShadowedNoSelectionPlaceholder" = "Ingen signatur"; +"365.title" = "Navn:"; +"367.title" = "Nøkkel"; +"369.title" = "E-post:"; +"372.title" = "Fingeravtrykk:"; +"377.title" = "Algoritme:"; +"378.title" = "Utløper:"; +"379.title" = "Opprettet:"; +"381.title" = "Eier-tillit:"; +"436.title" = "Opprettet:"; +"437.title" = "Signatur"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/nb.lproj/SignatureView.strings b/Resources/nb.lproj/SignatureView.strings new file mode 100644 index 00000000..25720ad8 --- /dev/null +++ b/Resources/nb.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Denne signaturen er upålitelig."; +"VALIDITY_OK" = "Denne signaturen er pålitelig."; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Nøkkelen til denne signaturen har blitt tilbakekalt."; +"VALIDITY_SIGNATURE_EXPIRED" = "Signaturen er utløpt på tid."; +"VALIDITY_KEY_EXPIRED" = "Nøkkelen til denne signaturen er utløpt på tid."; +"VALIDITY_KEY_REVOKED" = "Nøkkelen til denne signaturen har blitt tilbakekalt."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Signaturen ble laget med en ukjent algoritme."; +"VALIDITY_NO_PUBLIC_KEY" = "Nøkkelen til denne signaturen er ikke på din nøkkelring."; +"VALIDITY_UNKNOWN_ERROR" = "Ukjent feil med signaturen."; +"VALIDITY_BAD_SIGNATURE" = "Signaturen er ugyldig."; diff --git a/Resources/nl.lproj/GPGAttachment.strings b/Resources/nl.lproj/GPGAttachment.strings new file mode 100644 index 00000000..7f77f6bd --- /dev/null +++ b/Resources/nl.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Het verifiëren van handtekening is niet gelukt."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "De publieke sleutel voor de ondertekening van deze bevestiging te controleren is niet in de GPG sleutelbos.\n\nDownload de publieke sleutel %@ met behulp van GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Het ontsleutelen van de bijlage is niet gelukt."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "De geheime sleutel om deze bijlage te ontsleutelen staat niet in de GPG Sleutelbos"; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "De bijlage is succesvol ontsleuteld."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Open een bijlage in de berichtweergave door er dubbel op te klikken."; diff --git a/Resources/nl.lproj/GPGAttachments.strings b/Resources/nl.lproj/GPGAttachments.strings new file mode 100644 index 00000000..6274e994 --- /dev/null +++ b/Resources/nl.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Venster"; +"8.title" = "Oké"; +"210.title" = "naam"; +"211.title" = "Details"; +"239.title" = "Sleutel"; +"240.title" = "Naam:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Gemaakt:"; +"245.title" = "Verloopt:"; +"246.title" = "Algoritme:"; +"247.title" = "Vertrouwen eigenaar:"; +"256.title" = "Handtekening"; +"257.title" = "Gemaakt:"; +"291.title" = "De handtekening kan niet geverifieerd worden."; +"293.title" = "De handtekening kan niet geverifieerd worden omdat de publieke sleutel niet in uw GPG Sleutelbos staat. \nDownload de sleutel met behulp van GPG Keychain."; +"382.title" = "De handtekening kon niet geverifieerd worden. "; +"383.title" = "De handtekening kan niet geverifieerd worden omdat de publieke sleutel niet in uw GPG Sleutelbos staat. \nDownload de sleutel met behulp van GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/nl.lproj/GPGMail.strings b/Resources/nl.lproj/GPGMail.strings new file mode 100644 index 00000000..e194a4a2 --- /dev/null +++ b/Resources/nl.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Versie: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Ontsleutelen van PGP-bericht niet mogelijk."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Er is een probleem met het ontsleutelen van dit bericht. Controleer dat je een correcte sleutel in je GPG-sleutelbos hebt."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Handtekening controleren van het PGP-bericht niet mogelijk."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Er is een probleem bij het lezen van de PGP-handtekening voor dit bericht."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP-sleutel voor dit bericht zit niet in je sleutelbos."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Het bericht heeft een juiste PGP-handtekening, maar de PGP-sleutel zit niet in je sleutelbos. Gelieve GPG Keychain te gebruiken om het toe te voegen."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Er is geen informatie beschikbaar voor deze PGP-sleutel"; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Er is geen extra informatie bekend over deze PGP-sleutel, omdat ze niet in je sleutelbos zit."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Geheime sleutel om dit bericht te ontsleutelen ontbreekt."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Ontsleutelen mislukt om een onbekende reden!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Er is een onbekende fout opgetreden tijdens het ontsleutelen van dit bericht.\n\nNeem contact met ons op via https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Ontsleutelen mislukt om een onbekende reden!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Er is een onbekende fout opgetreden tijdens het ontsleutelen van dit bericht.\n\nGPG foutbericht:\n%@\nNeem contact met ons op via https://gpgtools.tenderapp.com en vermeld het GPG foutbericht."; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Een verkeerde sleutel is gebruikt om dit bericht te versleutelen."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Dit bericht kon niet ontsleuteld worden, omdat de verkeerde publieke sleutel is gebruikt om het te versleutelen.\n\nNeem contact met ons op via https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Het versleutelde bericht is beschadigd."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Dit versleutelde bericht is beschadigd en kon niet worden ontsleuteld.\n\nVraag de afzender om het bericht nogmaals te versturen."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "De sleutel voor ondertekening is ingetrokken."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "LET OP: De sleutel die is gebruikt om dit bericht te ondertekenen, is ingetrokken.\n\nVervers de sleutel met sleutel ID %@ in GPG Keychain om te controleren of een nieuwe versie beschikbaar is. Vraag de afzender waarom de sleutel ingetrokken is, als de nieuwe sleutel nog steeds ingetrokken is."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "De sleutel voor de handtekening van dit bericht is niet in je GPG Sleutelbos."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Het bericht kon niet worden geverifiëerd, omdat de sleutel waarmee het is ondertekend, zich niet in je GPG Sleutelbos bevindt.\n\nZoek de sleutel op met ID %@ in GPG Keychain en importeer het om het bericht te verifiëren."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "De handtekening van het bericht is met een niet-ondersteund algoritme gemaakt."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Het bericht kon niet worden geverifiëerd, omdat de ondertekening is gemaakt met een algoritme dat niet ondersteund wordt.\n\nNeem contact met ons op via https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "LET OP: De handtekening van dit bericht is ongeldig!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "LET OP: Het bericht is mogelijk gewijzigd nadat de ondertekening is gemaakt.\n\nNeem contact op met de afzender om er zeker van te zijn dat de inhoud overeenkomt met het origineel.\n\nNeem contact met ons op via https://gpgtools.tenderapp.com als u er zeker van bent dat het bericht niet gewijzigd is."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verificatie van de handtekening van het bericht is mislukt om een onbekende reden!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Een onbekende fout is opgetreden bij de verificatie van de handtekening van deze bijlage.\n\nNeem contact met ons op via https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Gegevensfout in de handtekening van het bericht!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "De ondertekening van dit bericht is ongeldig en kan niet worden geverifiëerd.\n\nNeem contact met ons op via https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Sleutel voor handtekening van het bericht is verlopen"; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "LET OP: De sleutel die gebruikt is voor de handtekening van dit bericht, is verlopen.\n\nJe kunt proberen om de sleutel met ID %@ te verversen in GPG Keychain en de afzender te vragen waarom de sleutel is verlopen."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "De handtekening van het bericht is verlopen."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "De handtekening is verlopen en kan niet worden geverifiëerd.\n\nVraag de afzender waarom de sleutel is verlopen."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d bijlagen konden niet worden ontsleuteld of geverifiëerd."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Klik op het icoon voor bijlagen in het beveiligingsgedeelte van de berichtkop voor verdere details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d bijlagen konden niet worden geverifiëerd."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Klik op het icoon voor bijlagen in het beveiligingsgedeelte van de berichtkop voor verdere details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d bijlagen konden niet worden ontsleuteld."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Klik op het icoon voor bijlagen in het beveiligingsgedeelte van de berichtkop voor verdere details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d bijlage kon niet worden geverifiëerd."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Klik op het icoon voor bijlagen in het beveiligingsgedeelte van de berichtkop voor verdere details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d bijlage kon niet worden ontsleuteld."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Klik op het icoon voor bijlagen in het beveiligingsgedeelte van de berichtkop voor verdere details."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Geheime sleutel om de bijlage te ontsleutelen ontbreekt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Ontsleutelen mislukt om een onbekende reden!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Er is een onbekende fout opgetreden bij het ontsleutelen van deze bijlage.\n\nNeem contact met ons op via https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Ontsleutelen mislukt om een onbekende reden!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Er is een onbekende fout opgetreden tijdens het ontsleutelen van deze bijlage.\n\nGPG foutbericht:\n%@\nNeem contact met ons op via https://gpgtools.tenderapp.com en vermeld het GPG foutbericht."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Verkeerde sleutel gebruikt om deze bijlage te versleutelen."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Deze bijlage kon niet worden ontsleuteld, omdat de verkeerde publieke sleutel is gebruikt om haar te versleutelen.\n\nNeem contact met ons op via https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "De versleutelde bijlage is beschadigd."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Deze versleutelde bijlage is beschadigd en kan niet worden ontsleuteld.\n\nVraag de afzender om het bericht nogmaals te sturen."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Sleutel voor handtekening is ingetrokken."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "LET OP: De sleutel die is gebruikt om deze bijlage te ondertekenen, is ingetrokken.\n\nVervers de sleutel met sleutel ID %@ in GPG Keychain om te controleren of een nieuwe versie beschikbaar is. Vraag de afzender waarom de sleutel ingetrokken is, als de nieuwe sleutel nog steeds ingetrokken is."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "De sleutel voor de handtekening van dit bericht is niet in je GPG Sleutelbos."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "De bijlage kon niet worden geverifiëerd, omdat de sleutel waarmee ze is ondertekend, zich niet in je GPG Sleutelbos bevindt.\n\nZoek de sleutel op met ID %@ in GPG Keychain en importeer het om de bijlage te verifiëren."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "De handtekening van de bijlage is met een niet-ondersteund algoritme gemaakt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "De bijlage kon niet worden geverifiëerd, omdat de handtekening is gemaakt met een algoritme dat niet ondersteund wordt.\n\nNeem contact met ons op via https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "LET OP: De handtekening van deze bijlage is ongeldig!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "LET OP: Deze bijlage is mogelijk gewijzigd nadat de handtekening is gemaakt.\n\nNeem contact op met de afzender om er zeker van te zijn dat de inhoud overeenkomt met het origineel.\n\nNeem contact met ons op via https://gpgtools.tenderapp.com als je er zeker van bent dat de bijlage niet gewijzigd is."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Verificatie van de handtekening is mislukt om een onbekende reden!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Een onbekende fout is opgetreden bij de verificatie van de handtekening van deze bijlage.\n\nNeem contact met ons op via https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Gegevensfout in de handtekening!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "De handtekening van deze bijlage is ongeldig en kan niet worden geverifiëerd.\n\nNeem contact met ons op via https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Sleutel voor handtekening is verlopen"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "LET OP: De sleutel die gebruikt is voor de handtekening van deze bijlage, is verlopen.\n\nJe kunt proberen om de sleutel met ID %@ te verversen in GPG Keychain en de afzender te vragen waarom de sleutel is verlopen."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "De handtekening van de bijlage is verlopen."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "De handtekening van de bijlage is verlopen en kan niet worden geverifiëerd.\n\nVraag de afzender waarom de sleutel is verlopen."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Gedeeltelijk versleuteld"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Gedeeltelijk ondertekend"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Versleuteld"; +"MESSAGE_IS_PGP_SIGNED" = "Ondertekend"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Ongeldige handtekening"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Ondertekend met een onbekende sleutel"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Ondertekend met een ingetrokken sleutel"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Ongeldige handtekening"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Ondertekend"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Geen handtekening gevonden"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "versleutelde/ondertekende bijlage"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "versleutelde/ondertekende bijlagen"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "versleutelde bijlage"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "versleutelde bijlagen"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "ondertekende bijlage"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "ondertekende bijlagen"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "Dit bericht kan niet worden ondertekend, omdat er geen geheime sleutel is voor %@.\n\nGa na of er een geheime sleutel bestaat voor dit adres in GPG Keychain. Voeg een nieuwe gebruikers ID toe voor dit adres indien nodig, of maak een nieuwe sleutel aan voor dit adres.\n\nAls er een sleutel bestaat, controleer dan of het adres in Mail.app > Voorkeuren > Accounts precies hetzelfde is als het adres van uw sleutel"; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Dit bericht kan niet worden versleuteld, omdat er geen publieke sleutels beschikbaar zijn voor de volgende adressen: %@.\n\nGebruik GPG Keychain om die adressen te zoeken en te importeren."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Dit bericht kan niet worden versleuteld. Voer ten minste één ontvanger in."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Versleuteld"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Ondertekend"; +"MESSAGE_VIEW_PGP_PART" = "PGP gedeelte"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail is gereed."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Je MacGPG installatie werkt zonder fouten."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Download het GPG Suite installatieprogramma van http://www.gpgtools.org om alle GPG Suite te installeren."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Controleer je installatie en instellingen."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Download het GPG Suite installatieprogramma van http://www.gpgtools.org om alle GPG Suite te installeren."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Waarschuwing: het uitzetten van deze optie kan er toe leiden dat er gevoelige informatie gelekt wordt tijdens het opstellen van een bericht."; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Versleuteling uit"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Meerdere installaties van GPGMail gevonden!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail heeft meerdere installaties gevonden op de volgende locaties, wat tot een onmiddellijke crash zal leiden:\n\n%@\n\nVerwijder de GPGMail.mailbundle in een van deze locaties en herstart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Verlaat Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg niet gevonden"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Iemand heeft geknoeid met uw installatie van GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "Uit veiligheidsredenen is GPGMail niet geladen!\n\nHerinstalleer de GOG Suite van https://gpgtools.org om er zeker van te zijn dat u de originele versie van ons heeft."; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Niet in staat om de standaard instellingen van GPGMail te laden!"; +NO_DEFAULTS_MESSAGE = "GPGMail werkt niet naar behoren.\n\nDownload en her-installeer de meest recente versie van de GPG Suite van https://gpgtools.org.\n\nMocht dat het probleem niet oplossen; neem dan contact up met https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Het ondertekenen van uw bericht is mislukt als gevolg van een gebroken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, de tool die verantwoordelijk is voor het vragen om uw wachtwoord, werkt niet meer goed.\n\nOm dit probleem op te lossen moet u de GPG Suite herinstalleren van https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Het ondertekenen van uw bericht is niet gelukt vanwege een probleem met de GPG-Agent utility."; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "De GPG agent, een belangrijk onderdeel van GPG, werkt niet meer naar behoren.\n\nOm dit probleem op te lossen, moet u de GPG Suite opnieuw installeren van https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Het ondertekenen van het bericht is niet gelukt omdat er een probleem was met de communicatie met de `GPG Agent' utility."; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "Het was niet mogelijk gegevens uit te wisselen met de GPG agent om zo uw wachtwoord op te vragen.\n\nOm dit probleem op te lossen, moet u de GPG Suite opnieuw installeren van https://gpgtools.org.\n"; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Het ondertekenen van uw bericht is niet gelukt vanwege een niet verder gespecificeerde fout."; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Helaas kan de fout die opgetreden is niet meer gecorrigeerd worden."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Het versleutelen van uw bericht is niet gelukt vanwege een niet verder gespecificeerde fout."; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Helaas kan GPGMail de fout die is opgetreden niet meer corrigeren."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Je voerde het verkeerde wachtwoord te veel keer in."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Het ondertekenen van het bericht is afgebroken omdat je het wachtwoord 3 keer verkeerd invoerde."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nMocht dit probleem zichzelf niet oplossen: neem dan contact op met https://gpgtools.tenderapp.com/ en geef de onderstaande foutmelding door:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Het ontsleutelen van het bericht is afgebroken."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Dit bericht kon niet worden ontsleuteld omdat je het opvragen van het wachtwoord afbrak."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Het ontsleutelen van de bijlage is afgebroken."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "De bijlage kan niet worden gedecodeerd, omdat u het wachtwoord verzoek annuleerde."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite werkt niet zoals verwacht"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Het decoderen van het bericht is mislukt.\n\nGelieve opnieuw de GPG Suite te installeren vanaf https://gpgtools.org.\n\nMocht dit probleem blijven bestaan, neem dan contact met ons op via https://gpgtools.tenderapp.com/ en geef aan dat de XPC dienst niet naar behoren werkt."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite werkt niet zoals verwacht"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Het decoderen van de bijlage is mislukt.\n\nGelieve opnieuw de GPG Suite te installeren vanaf https://gpgtools.org.\n\nMocht dit probleem blijven bestaan, neem dan contact met ons op via https://gpgtools.tenderapp.com/ en geef aan dat de XPC dienst niet naar behoren werkt."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite werkt niet zoals verwacht"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Het verifieren van het bericht is mislukt.\n\nGelieve opnieuw de GPG Suite te installeren vanaf https://gpgtools.org.\n\nMocht dit probleem blijven bestaan, neem dan contact met ons op via https://gpgtools.tenderapp.com/ en geef aan dat de XPC dienst niet naar behoren werkt."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite werkt niet zoals verwacht"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Het decoderen van de bijlage is mislukt.\n\nGelieve opnieuw de GPG Suite te installeren vanaf https://gpgtools.org.\n\nMocht dit probleem blijven bestaan, neem dan contact met ons op via https://gpgtools.tenderapp.com/ en geef aan dat de XPC dienst niet naar behoren werkt."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Het ondertekenen van uw bericht is mislukt als gevolg van een probleem tijdens het wachtwoord verzoek"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry de tool die verantwoordelijk is voor het vragen om uw wachtwoord, lijkt niet te werken.\n\nOm dit probleem op te lossen dient u de GPG Suite opnieuw te installeren vanaf https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Het ondertekenen van het bericht is niet gelukt door een probleem met de GPGMail installatie."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Om dit probleem op te lossen moet u de GPG Suite opnieuw installeren vanaf https://gpgtools.org.\n\nMocht dit probleem blijven bestaan, neem dan contact met ons op via https://gpgtools.tenderapp.com/ en geef aan dat de XPC dienst niet naar behoren werkt."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Het decoderen van het bericht is mislukt als gevolg van een gebroken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry de tool die verantwoordelijk is voor het vragen om uw wachtwoord, lijkt niet te werken.\n\nOm dit probleem op te lossen dient u de GPG Suite opnieuw te installeren vanaf https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Het decoderen van de bijlage is mislukt als gevolg van een defecte pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry de tool die verantwoordelijk is voor het vragen om uw wachtwoord, lijkt niet te werken.\n\nOm dit probleem op te lossen dient u de GPG Suite opnieuw te installeren vanaf https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attentie: U staat op het punt om een NIET versleuteld antwoord te sturen op een bericht dat wel versleuteld was."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Het is niet mogelijk om het antwoord te versleutelen omdat er geen publieke sleutel beschikbaar is voor:\n\n%@ "; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Het is niet mogelijk om het antwoord te versleutelen omdat er geen publieke sleutels beschikbaar zijn voor:\n\n%@ "; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Uw antwoord zal NIET versleuteld verstuurd worden als U verder gaat. Dat kan tot gevolg hebben dat vertrouwelijke informatie lekt; met alle risico's van dien voor U en de ontvangers van het bericht."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nAls U werkelijk dit bericht onversleuteld wil versturen; overweeg dan ten minste alle voorgaande correspondentie welke ook in dit bericht staat uit uw antwoord te verwijderen."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Of, gebruik GPG Keychain om de ontbrekende publieke sleutels te zoeken en/of te importeren. Dan kan het antwoord wel versleuteld verstuurd worden."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Verstuur alsnog"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Beveiligingsmethode: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Onderteken"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Onderteken niet"; + diff --git a/Resources/nl.lproj/GPGMailPreferences.strings b/Resources/nl.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..e6f36ac0 --- /dev/null +++ b/Resources/nl.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Nieuwe versies"; +"728.title" = "Schrijven"; +"733.ibShadowedToolTip" = "Veel gestelde vragen."; +"734.alternateTitle" = "Veel gestelde vragen"; +"734.title" = "Kenniscentrum"; +"781.title" = "Versleutel concepten"; +"834.title" = "Knop"; +"1051.ibShadowedToolTip" = "Als u nog een andere vraag heeft."; +"1053.title" = "Rapporteer een probleem"; +"0PS-Wm-gKl.title" = "Controleer nu"; +"0Th-7E-Y7P.title" = "Versie: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Automatisch controleren op updates"; +"8oZ-YB-M9Q.title" = "Beta's worden vaker uitgebracht. Nieuwe functies en verbeteringen zijn minder getest."; +"D6D-o9-63C.title" = "Uitgave opmerkingen"; +"UhD-uR-dUs.title" = "Voeg beta toe"; +"q0m-y8-baf.title" = "Gemaakt op:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/nl.lproj/GPGSignatureView.strings b/Resources/nl.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..67b0c720 --- /dev/null +++ b/Resources/nl.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Handtekeningen"; +"25.title" = "Oké"; +"237.title" = "naam"; +"251.title" = "Details"; +"252.ibShadowedNoSelectionPlaceholder" = "Geen handtekening"; +"365.title" = "Naam: "; +"367.title" = "Sleutel"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algoritme:"; +"378.title" = "Verloopt:"; +"379.title" = "Gemaakt:"; +"381.title" = "Vertrouwen eigenaar"; +"436.title" = "Gemaakt:"; +"437.title" = "Handtekening"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/nl.lproj/SignatureView.strings b/Resources/nl.lproj/SignatureView.strings new file mode 100644 index 00000000..370e8e74 --- /dev/null +++ b/Resources/nl.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Deze handtekening is niet te vertrouwen."; +"VALIDITY_OK" = "Deze handtekening is te vertrouwen"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "De sleutel voor deze handtekening is ingetrokken."; +"VALIDITY_SIGNATURE_EXPIRED" = "De handtekening is verlopen."; +"VALIDITY_KEY_EXPIRED" = "De sleutel voor deze handtekening is verlopen."; +"VALIDITY_KEY_REVOKED" = "De sleutel voor deze handtekening is ingetrokken."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Deze handtekening is gemaakt met een onbekend algoritme."; +"VALIDITY_NO_PUBLIC_KEY" = "De sleutel voor deze handtekening staat niet in uw keychain."; +"VALIDITY_UNKNOWN_ERROR" = "Onbekende handtekeningfout."; +"VALIDITY_BAD_SIGNATURE" = "De handtekening is ongeldig."; diff --git a/Resources/oc.lproj/GPGAttachment.strings b/Resources/oc.lproj/GPGAttachment.strings new file mode 100644 index 00000000..23f66aa2 --- /dev/null +++ b/Resources/oc.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Verificacion de la signatura fracassada."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "La clau publica necessària per verificar la signatura d'aquesta pèça junta es pas dins vòstre trossèl.\n\nMercé de telecargar la clau publica %@ en utilizant GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Deschiframent del fichièr junt fracassat."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "La clau secreta per deschifrar aqueste fichièr junt fa pas partida de vòstre trossèl de claus"; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Lo fichièr junt es estat deschifrat amb succès."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Doble-clicatz sul fichièr junt per lo visualizar."; diff --git a/Resources/oc.lproj/GPGAttachments.strings b/Resources/oc.lproj/GPGAttachments.strings new file mode 100644 index 00000000..2e81501c --- /dev/null +++ b/Resources/oc.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Fenèstra"; +"8.title" = "D'acòrdi"; +"210.title" = "nom"; +"211.title" = "Detalhs"; +"239.title" = "Clau"; +"240.title" = "Nom:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Creacion:"; +"245.title" = "Expiracion:"; +"246.title" = "Algoritme:"; +"247.title" = "Proprietari:"; +"256.title" = "Signatura"; +"257.title" = "Creacion:"; +"291.title" = "La signatura a pas pogut èsser verificada."; +"293.title" = "La signatura a pas pogut èsser verificada perque la clau publica es pas dins vòstre trossèl.\nMercé de telecargar la clau amb GPG Keychain."; +"382.title" = "La signatura a pas pogut èsser verificada."; +"383.title" = "La signatura a pas pogut èsser verificada perque la clau publica es pas dins vòstre trossèl.\nMercé de telecargar la clau amb GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/oc.lproj/GPGMail.strings b/Resources/oc.lproj/GPGMail.strings new file mode 100644 index 00000000..bc6915c4 --- /dev/null +++ b/Resources/oc.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Version : %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Impossible de deschifrar aqueste messatge."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Problèma de deschiframent d'aqueste messatge. Verificatz que avètz una clau valida dins vòstre trossèl GPG."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Verificacion de la signatura PGP impossible."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Problèma de lectura de la signatura PGP per aqueste messatge."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "Clau PGP per aqueste messatge absenta de vòstre trossèl."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Lo messatge a una signatura PGP valide, mas la clau correspondenta es pas dins vòstre trossèl. Utilizatz GPG Keychain per l'apondre."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Pas cap d'informacion disponibla per aquesta clau PGP."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Pas cap d'informacion addicionala per aquesta clau PGP perque es absenta de vòstre trossèl."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "La clau secreta nécessaire al deschiframent d'aqueste messatge es manquante."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Lo deschiframent a fracassat sus una error desconeguda !"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Una error s'es producha al moment del deschiframent del messatge.\n\nContactatz-nos a l'adreça seguenta https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Fracàs del deschiframent per una rason desconeguda !"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Una error desconeguda s'es producha al moment del deschiframent del messatge.\n\nMessatge de l'error GPG :\n%@\nContactatz-nos, en renseignant lo messatge d'error GPG sus https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Clau erronèa utilizada per chifrar aqueste messatge."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Aqueste messatge a pas pogut èsser deschifrat perque una clau publica erronèa es estada utilizada per lo chifrar.\n\nMercé de nos contactar sus https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Lo messatge chifrat es damatjat."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Lo messatge chifrat es damatjat e pòt pas èsser deschifrat.\n\nVeuillez demander a l'expeditor de l'mandar a novèl."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "La clau de la signatura es estada revocada."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "La clau utilizada per signar aqueste messatge es estada revocada.\n\nVos caldriá refrescar la clau amb l'identificant de clau %@ dins GPG Keychain per verificar se una clau plus récente es disponible. Se la novèla es également revocada, verificatz la rason de la revocacion auprès de l'expeditor."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "La clau de la signatura d'aqueste messatge es pas dins vòstre trossèl GPG."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Lo messatge a pas pogut èsser verificat perque la clau utilizada per lo signar es pas dins vòstre trossèl GPG.\n\nRecercatz la clau amb l'identificant %@ dins GPG Keychain Acces e importez-la per verificar aqueste messatge."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "La signatura d'aqueste messatge es estada creada amb un algoritme pas suportat."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Aqueste messatge a pas pogut èsser verificat perque sa signatura es estada creada amb un algoritme pas suportat.\n\nMercé de nos contactar sus https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION : La signatura d'aqueste messatge es pas valide !"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Aqueste messatge pourrait aver été modificat aprèp la creacion de sa signatura.\n\nMercé de contactar l'expeditor per s'assegurar que lo contenu d'aqueste messatge es identique a l'original.\n\nMercé de nos contactar sur\nhttps://gpgtools.tenderapp.com/\nsi vous êtes segur que lo messatge n'a pas été modificat."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "La verificacion de la signatura del messatge a fracassat a causa d'una error desconeguda !"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Una error desconeguda es arribada al moment de la verificacion de la signatura d'aqueste messatge.\n\nMercé de nos contactar sus https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Error de la signatura del messatge !"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "La signatura del messatge es invalida e pòt pas èsser verificada.\n\nMercé de nos contactar sus https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "La clau de la signatura del messatge es localizada."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "La clau utilizada per signar aqueste messatge es localizada.\n\nPodètz ensajar de refrescar la clau amb l'identificant %@ dins GPG Keychain e demander a l'expeditor la rason de son expedicion."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "La signatura del messatge es localizada !"; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "La signatura es localizada e a pas pogut èsser verificada.\n\nDemandatz a l'expeditor la rason de son expedicion."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d fichièrs junts n'ont pas pu èsser deschifrats o verificats."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Mercé de clicar sus l'icòna de la pèça junta dins l'entèsta seguretat del messatge per mai de detalhs."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d fichièrs junts n'ont pas pu èsser verificats."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Mercé de clicar sus l'icòna de la pèça junta dins l'entèsta seguretat del messatge per mai de detalhs."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d fichièrs junts n'ont pas pu èsser deschifrats."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Mercé de clicar sus l'icòna de la pèça junta dins l'entèsta seguretat del messatge per mai de detalhs."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d fichièr junt a pas pogut èsser verificat."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Mercé de clicar sus l'icòna de la pèça junta dins l'entèsta seguretat del messatge per mai de detalhs."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d fichièr junt a pas pogut èsser deschifrat."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Mercé de clicar sus l'icòna de la pèça junta dins l'entèsta seguretat del messatge per mai de detalhs."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "La clau secreta per deschifrar lo fichièr junt es introuvable."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Lo deschiframent a fracassat per una rason desconeguda !"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Una error desconeguda es arribada pendent lo deschiframent d'aqueste fichièr junt.\n\nMercé de nos contactar sus https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Lo deschiframent a fracassat per una rason desconeguda !"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Una error desconeguda es arribada pendent lo deschiframent d'aqueste fichièr junt.\n\nMessatge d'error GPG :\n%@\nMercé de nos contactar en incluant aqueste messatge d'error sus https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Una clau invalida es estada utilizada per chifrar aqueste fichièr junt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Aqueste fichièr junt a pas pogut èsser deschifrat perque una clau publica invalide es estada utilizada per lo chifrar.\n\nMercé de nos contactar sus https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Lo fichièr junt chifrat es damatjat."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Lo fichièr junt chifrat es damatjat e a pas pogut èsser deschifrat.\n\nMercé de demander a l'expeditor de renovelar son mandadís."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "La clau de la signatura es estada revocada."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "La clau utilizada per signar aqueste fichièr junt es estada revocada.\n\nVos caldriá refrescar la clau amb l'identificant %@ dins GPG Keychain per verificar se una clau mai recenta es disponibla. Se la novèla clau es tanben revocada, verificar amb l'expeditor la rason de sa revocacion."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "La clau d'aquesta signatura es pas dins vòstre trossèl GPG."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "La signatura del fichièr junt a pas pogut èsser verificada perque la clau utilizada es pas dins vòstre trossèl GPG.\n\nRecercatz la clau amb l'identificant %@ dins GPG Keychain e importatz-la per verificar lo fichièr junt."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "La signatura del fichièr junt es estada creada amb un algoritme qu'es pas suportat."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Lo fichièr junt a pas pogut èsser verificat perque la clau utilizada per la signatura es estada creada amb un algoritme pas suportat.\n\nMercé de nos contactar sus https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATENCION: la signatura del fichièr junt es invalida !"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Benlèu qu'aqueste fichièr junt es estat modificat aprèp aposicion de la signatura.\n\nMercé de contactar l'expeditor per s'assegurar que lo fichièr junt recebut es identic a l'original.\n\nMercé de nos contactar sus\nhttps://gpgtools.tenderapp.com/\nse sètz segur que lo fichièr es pas estat modificat."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "La verificacion de la signatura a fracassat amb una error desconeguda !"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Una error desconeguda s'es producha al moment de la verificacion de la signatura d'aqueste fichièr junt.\n\nMercé de nos contactar sus https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Error dins las donadas de la signatura !"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "La signatura del fichièr junt es invalida e pòt pas èsser verificada.\n\nContactatz-nos a l'adreça : https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "La clau de la signatura es localizada."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "La clau utilizada per signar aqueste fichièr junt es localizada.\n\nPodètz ensajar de refrescar la clau amb l'identificant %@ dins GPG Keychain e demander a l'expeditor la rason d'aquesta locala."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "La signatura del fichièr junt es localizada."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "La signatura del fichièr junt es localizada e a pas pogut èsser verificada.\n\nDemandatz a l'expeditor la rason de son expedicion."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Parcialament chifrat"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Parcialament signat"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Chifrat"; +"MESSAGE_IS_PGP_SIGNED" = "Signat"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Signatura invalida"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signat amb una clau desconeguda"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signat amb una clau revocada"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Signatura invalida"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signat"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Cap de signatura trobada"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "fichièr junt chifrat/signat"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "fichièrs junts chifrats/signats"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "fichièr junt chifrat"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "fichièrs junts chifrats"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "fichièr junt signat"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "fichièrs junts signats"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Aqueste messatge pòt pas èsser chifrat, existís pas de claus publicas disponibles per les adreças seguentas : %@.\n\nUtilizatz GPG Keychain per recercar e importar las claus per ces adreças."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Aqueste messatge pòt pas èsser chifrat. Vos cal d'en primièr indicar un destinatari."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Chifrat"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signat"; +"MESSAGE_VIEW_PGP_PART" = "partida PGP"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail es prèst."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Vòstra installacion MacGPG fonctionne corrèctament."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Telecargatz e reïnstallatz GPG Suite dempuèi http://www.gpgtools.org per garantir que totes los components necessaris son installats."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Verificatz vòstra installacion e configuracion."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Telecargatz e reïnstallatz GPG Suite dempuèi http://www.gpgtools.org per garantir que totes los components necessaris son installats."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Atencion : Desactivar aquesta opcion pòt engendrar de fugidas d'informacions sensiblas al moment de l'escritura d'un messatge"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Desactivar lo chiframent"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Anullar"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Mantuna installacion de GPGMail ont été trobadas !"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail a detectat de multiplas installacions dins les dorsièrs suivants ce qui va conduire a un plantatge immediat :\n\n%@\n\nMercé de suprimir GPGMail.mailbundle dins un de ces dorsièrs e de redémarrer Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quitar Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg es pas estada trobada"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Quelqu'un a trafiqué vòstra installacion GPGMail !"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Impossible de charger les paramètres per defaut de GPGMail !"; +NO_DEFAULTS_MESSAGE = "GPGMail fonciona pas coma esperat.\n\nMercé de telecargar e de reïnstallar GPG Suite dempuèi https://gpgtools.org\n\nSe lo problèma contunha, mercé de nos contactar sus https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "La signatura de vòstre messatge a fracassat a causa de l'agent GPG defectuós !"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "La signatura de vòstre messatge a pas pogut se debanar a causa d'un problèma de communication de l'agent GPG."; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "La signatura de vòstre messatge a fracassat a causa d'una error desconeguda."; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Podèm malurosament pas tractar l'error dins aqueste contèxte."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Lo chiframent del messatge a fracassat a causa d'una error desconeguda."; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "GPGMail pòt malurosament pas tractar l'error dins aqueste contèxte."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nSe vòstre problèma contunha, mercé de nos contactar sus https://gpgtools.tenderapp.com/ amb la descripcion d'error seguenta :\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Avètz anullat lo deschiframent del messatge"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Avètz interrompu lo deschiframent de la pèça junta."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite fonciona pas coma previst"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite fonciona pas coma previst"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "La seguida GPG fonciona pas coma previst"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite fonciona pas coma previst"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "La signatura de vòstre messatge a fracassat a causa d'un problèma dins vòstra installacion de GPGMail."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Atencion : Sètz a mand d'mandar una responsa non chifrada a un messatge chifrat\n"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Es pas possible de chifrar vòstra responsa perque la clau publica del destinatari suivant es manquante :\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Es pas possible de chifrar vòstra responsa perque las claus publicas des destinatari suivants son manquantes :\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Se vous décidez de contunhar, vòstra responsa sera envoyée non chifrada. Comme consequéncia, des informations confidentielles poiràn èsser divulguées, vous mettant vous e vos destinataris en danger."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nSe sètz segur que volètz mandar aquesta responsa non chifrada, mercé de levar tota correspondéncia precedenta inclusa dins vòstra responsa avant d'mandar."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Autrament, recercar e importar las claus publicas correspondentas amb GPG Keychain de façon a mandar la responsa chifrada."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Mandar cossí que siá"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Anullar"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Anullar"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/oc.lproj/GPGMailPreferences.strings b/Resources/oc.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..2f9bbdee --- /dev/null +++ b/Resources/oc.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Mesas a jorn"; +"728.title" = "Composicion"; +"733.ibShadowedToolTip" = "Questions pausadas frequentament."; +"734.alternateTitle" = "Questions pausadas frequentament"; +"734.title" = "Basa de coneissença"; +"781.title" = "Chifrar los borrolhons"; +"834.title" = "Boton"; +"1051.ibShadowedToolTip" = "Se avètz d'autras questions."; +"1053.title" = "Report Problem"; +"0PS-Wm-gKl.title" = "Verificar ara"; +"0Th-7E-Y7P.title" = "Version : xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Recercar automaticament las mesas a jorns"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "Show Release Notes"; +"UhD-uR-dUs.title" = "Include beta builds"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/oc.lproj/GPGSignatureView.strings b/Resources/oc.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..69b85f24 --- /dev/null +++ b/Resources/oc.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Signaturas"; +"25.title" = "D'acòrdi"; +"237.title" = "nom"; +"251.title" = "Detalhs"; +"252.ibShadowedNoSelectionPlaceholder" = "Pas de signatura"; +"365.title" = "Nom:"; +"367.title" = "Clau"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algoritme:"; +"378.title" = "Expiracion:"; +"379.title" = "Creacion:"; +"381.title" = "Proprietari:"; +"436.title" = "Creacion:"; +"437.title" = "Signatura"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/oc.lproj/SignatureView.strings b/Resources/oc.lproj/SignatureView.strings new file mode 100644 index 00000000..a4a96e35 --- /dev/null +++ b/Resources/oc.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Nos podèm fisar d'aquesta signatura."; +"VALIDITY_OK" = "Nos podèm fisar d'aquesta signatura"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "La clau d'aquesta signatura es estada revocada."; +"VALIDITY_SIGNATURE_EXPIRED" = "La signatura es localizada."; +"VALIDITY_KEY_EXPIRED" = "La clau d'aquesta signatura es localizada."; +"VALIDITY_KEY_REVOKED" = "La clau d'aquesta signatura es estada revocada."; +"VALIDITY_UNKNOWN_ALGORITHM" = "La signatura es estat creat amb l'ajuda d'un algoritme desconegut."; +"VALIDITY_NO_PUBLIC_KEY" = "La clau d'aquesta signatura fa pas partida de vòstre trossèl de claus."; +"VALIDITY_UNKNOWN_ERROR" = "Error de signatura desconeguda."; +"VALIDITY_BAD_SIGNATURE" = "Aquesta signatura es pas valida."; diff --git a/Resources/pl.lproj/GPGAttachment.strings b/Resources/pl.lproj/GPGAttachment.strings new file mode 100644 index 00000000..3f1a6b4b --- /dev/null +++ b/Resources/pl.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Nie udało się zweryfikować podpisu."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "Publiczny klucz służący do weryfikacji podpisu tego załącznika nie został znaleziony w Twoim pęku kluczy. \n\nPobierz klucz publiczny %@ używając GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Nie udało się odszyfrować załącznika."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Klucz prywatny służący do weryfikacji sygnatury tego załącznika nie został znaleziony w Twoim pęku kluczy."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Załącznik został odszyfrowany."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Kliknij dwukrotnie, aby otworzyć załącznik w widoku wiadomości."; diff --git a/Resources/pl.lproj/GPGAttachments.strings b/Resources/pl.lproj/GPGAttachments.strings new file mode 100644 index 00000000..27ccf7e9 --- /dev/null +++ b/Resources/pl.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Okno"; +"8.title" = "OK"; +"210.title" = "nazwa"; +"211.title" = "Szczegóły"; +"239.title" = "Klucz"; +"240.title" = "Nazwa:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Utworzony:"; +"245.title" = "Wygasa:"; +"246.title" = "Algorytm:"; +"247.title" = "Poziom zaufania:"; +"256.title" = "Podpis"; +"257.title" = "Utworzony:"; +"291.title" = "Podpis nie może być zweryfikowany."; +"293.title" = "Podpis nie mógł być zweryfikowany, ponieważ klucz publiczny nie znajduje się w Twoim pęku kluczy. \nPobierz klucz używając GPG Keychain."; +"382.title" = "Podpis nie może być zweryfikowany."; +"383.title" = "Podpis nie mógł być zweryfikowany, ponieważ klucz publiczny nie znajduje się w Twoim pęku kluczy. \nPobierz klucz używając GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/pl.lproj/GPGMail.strings b/Resources/pl.lproj/GPGMail.strings new file mode 100644 index 00000000..6ee7db34 --- /dev/null +++ b/Resources/pl.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Wersja: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Nie udało się odszyfrować wiadomości PGP."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Wystąpił problem z odszyfrowaniem wiadomości. Sprawdź, czy posiadasz odpowiedni klucz w Twoim pęku kluczy GPG."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Nie udało się zweryfikować podpisu PGP wiadomości."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Wystąpił problem z odczytaniem sygnatury PGP tej wiadomości."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "Brakuje klucza PGP dla tej wiadomości w Twoim pęku kluczy."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Wiadomość zawiera poprawną sygnaturę PGP, jednak brakuje klucza PGP w Twoim pęku kluczy. Proszę użyj agenta GPG, by go dodać."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Brak informacji dla tego klucza PGP."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Brak dodatkowych informacji dla tego klucza PGP. Klucz nie znajduje się w Twoim pęku kluczy."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Klucz prywatny niezbędny do odszyfrowania tej wiadomości nie został znaleziony."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Odszyfrowanie wiadomości zakończone niepowodzeniem z powodu nieznanego błędu!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Podczas próby odszyfrowania tej wiadomości wystąpił nieznany błąd.\n\nSkontaktuj się z nami pod adresem https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Odszyfrowanie zakończone niepowodzeniem z powodu nieznanego błędu!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Wystąpił nieznany błąd podczas próby odszyfrowania tej wiadomości. \n\nWiadomość błędu GPG: \n%@\nSkontaktuj się z nami poprzez https://gpgtools.tenderapp.com/. Pamiętaj, aby skopiować treść powyższego błędu."; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Do odszyfrowania wiadomości został użyty nieprawidłowy klucz."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Podczas odszyfrowywania wiadomości wystąpił nieznany błąd.\n\nSkontaktuj się z nami wysyłająć wiadomość na adres: https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Zaszyfrowana wiadomość jest uszkodzona."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Zaszyfrowana wiadomość jest uszkodzona i nie mogła ona być odszyfrowana.\n\nPoproś nadawcę tej wiadomości, aby ponownie ją wysłał."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Klucz dla tego podpisu został odwołany."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "Klucz który został użyty do podpisania tej wiadomości został unieważniony. \n\nPowinieneś odświeżyć klucz z ID %@ w GPG Keychain, aby sprawdzić czy jest dostępny nowy klucz. Jeśli nowy klucz jest dalej unieważniony to zapytaj nadawcy czemu tak jest."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Brak klucza dla tego podpisu w twoim pęku kluczy."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Wiadomość nie mogła być zweryfikowana, ponieważ klucz który został użyty do podpisu tej wiadomości nie jest w Twoim pęku kluczy GPG Keychain. \n\nSzukaj klucza z ID %@ w GPG Keychain i importuj go, aby zweryfikować wiadomość."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "Podpis został utworzony z nieznanym algorytmem."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Wiadomość nie mogła być zweryfikowana, ponieważ podpis został utworzony algorytmem który nie jest obsługiwany. \n\nProsimy o skontaktowanie się z nami na https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "UWAGA: Podpis tej wiadomości jest nieprawidłowy!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Ta wiadomość mogła być zmodyfikowana po tym jak podpis został stworzony. \n\nProsimy o skontaktowanie się z nadawcą, aby upewnić się, że treść wiadomości zgadza się z oryginałem. \n\nProsimy o skontaktowanie się z nami idąc do \nhttps://gpgtools.tenderapp.com\njeśli jesteś pewny, że wiadomość nie została zmodyfikowana."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Nie udała się weryfikacja tego podpisu z powodu nieznanego błędu!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Wystąpił nieznany błąd podczas próby weryfikacji podpisu tej wiadomości. \n\nProsimy o skontaktowanie się z nami na https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Błąd danych podpisu!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Podpis tej wiadomości jest nieprawidłowy i nie mógł być zweryfikowany. \n\nProsimy o skontaktowanie się z nami na https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Ważność klucza dla tego podpisu wygasła."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "Klucz który został użyty do podpisu tej wiadomości stracił ważność. \n\nMożesz spróbować odświeżyć klucz z ID %@ w GPG Keychain i zapytać nadawcę czemu klucz ten jest już nieważny."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Ważność tego podpisu wygasła."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Podpis stracił swoją ważność i nie mógł być zweryfikowany.\n\nZapytaj nadawcę czemu podpis już jest nieważny."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d załączników nie udało się odszyfrować lub zweryfikować."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Proszę kliknij na ikonę załącznika w nagłówku bezpieczeństwa wiadomości po więcej informacji."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d załączników nie udało się zweryfikować."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Proszę kliknij na ikonę załącznika w nagłówku bezpieczeństwa wiadomości po więcej informacji."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d załączników nie udało się odszyfrować."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Proszę kliknij na ikonę załącznika w nagłówku bezpieczeństwa wiadomości po więcej informacji."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d załączników nie udało się zweryfikować."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Proszę kliknij na ikonę załącznika w nagłówku bezpieczeństwa wiadomości po więcej informacji."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d załączników nie udało się odszyfrować."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Proszę kliknij na ikonę załącznika w nagłówku bezpieczeństwa wiadomości po więcej informacji."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Klucz prywatny niezbędny do odszyfrowania tej wiadomości nie został znaleziony."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Odszyfrowanie wiadomości zakończone niepowodzeniem z powodu nieznanego błędu!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Wystąpił nieznany błąd podczas próby odszyfrowania załącznika. \n\nProsimy o skontaktowanie się z nami na https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Odszyfrowanie wiadomości zakończone niepowodzeniem z powodu nieznanego błędu!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Wystąpił nieznany błąd podczas próby odszyfrowania tego załącznika. \n\nWiadomość błędu GPG: \n%@\nSkontaktuj się z nami na https://gpgtools.tenderapp.com/. Pamiętaj, aby skopiować treść powyższego błędu GPG do wiadomości."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Użyto złego klucza do zaszyfrowania tego załącznika."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Ten załącznik nie mógł być odszyfrowany, ponieważ użyto nieprawidłowego klucza publicznego do szyfrowania tej wiadomości.\n\nSkontaktuj się z nami na https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Szyfrowany załącznik jest uszkodzony."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Szyfrowany załącznik jest uszkodzony i nie mógł być odszyfrowany.\n\nProszę zapytaj nadawcę, aby wysłał Ci wiadomość ponownie."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Klucz dla tego podpisu został odwołany."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "Klucz który został użyty do podpisu tego załącznika został unieważniony. \n\nPowinieneś odświeżyć klucz z ID %@ w GPG Keychain, aby sprawdzić czy jest dostępny nowy klucz. Jeśli nowy klucz jest dalej unieważniony, to zapytaj się nadawcy czemu tak jest."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Brak klucza dla tego podpisu w twoim pęku kluczy."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Podpis załącznika nie mógł być zweryfikowany, ponieważ klucz który został użyty do podpisu nie jest w Twoim GPG Keychain. \n\nSzukaj klucza z ID %@ w GPG Keychain i importuj go, aby zweryfikować załącznik."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "Podpis załącznika został utworzony algorytmem który nie jest obsługiwany."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Załącznik nie mógł być zweryfikowany, ponieważ klucz do podpisu został utworzony algorytmem który jest nieobsługiwany. \n\nProsimy o skontaktowanie się z nami na https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "UWAGA: Podpis załącznika jest niepoprawny!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Ten załącznik mógł być zmodyfikowany po tym jak podpis został stworzony. \n\nProsimy o skontaktowanie się z nadawcą, aby upewnić się, że treść załącznika zgadza się z oryginałem. \n\nProsimy o skontaktowanie się z nami idąc do \nhttps://gpgtools.tenderapp.com \njeśli jesteś pewny, że załącznik nie został zmodyfikowany."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Weryfikacja podpisu nieudana z powodu nieznanego błędu!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Wystąpił nieznany błąd podczas próby weryfikacji podpisu załącznika. Prosimy o skontaktowanie się z nami pod adresem https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Błąd danych podpisu!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Podpis tego załącznika jest nieprawidłowy i tym samym nie mógł być zweryfikowany. \n\nProsimy o skontaktowanie się z nami pod adresem https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Ważność klucza dla tego podpisu wygasła."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "Klucz który został użyty do podpisu tego załącznika stracił swoją ważność. \n\nMożesz spróbować odświeżyć klucz z ID %@ w GPG Keychain i zapytać nadawcę czemu ten klucz jest już nieważny."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Podpis załącznika stracił swoją ważność."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Podpis załącznika stracił swoją ważność i tym samym nie mógł być zweryfikowany.\n\nZapytaj nadawcę czemu podpis jest już nieważny."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Częściowo szyfrowane"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Częściowo podpisane"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Szyfrowane"; +"MESSAGE_IS_PGP_SIGNED" = "Podpisane"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Nieprawidłowy podpis"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Podpisane nieznanym kluczem"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Podpisane unieważnionym kluczem"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Nieprawidłowy podpis"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Podpisane"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Nie wykryto żadnego podpisu"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "szyfrowany/podpisany załącznik"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "szyfrowane/podpisane załączniki"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "szyfrowany załącznik"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "szyfrowane załączniki"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "podpisany załącznik"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "podpisane załączniki"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "Ta wiadomość nie może być podpisana, ponieważ nie ma klucza prywatnego dla %@. \n\nProsimy o upewnienie się, że klucz prywatny dla tego adresu istnieje w GPG Keychain. Dodaj nowy ID użytkownika do istniejącego klucza dla tego adresu jeśli to konieczne, lub stwórz nowy klucz dla tego adresu. \n\nJeśli klucz dla tego adresu istnieje, to upewnij się, że adres w Mail.app > Właściwości > Konta jest prawidłowy i dokładnie zgadza się z adresem Twojego klucza."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Ta wiadomość nie może być zaszyfrowana, ponieważ nie ma żadnych kluczy publicznych dla tych adresów: %@. \n\nUżyj GPG Keychain, aby szukać i importować klucze dla tych adresów."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Ta wiadomość nie może być zaszyfrowana. Najpierw musisz wprowadzić przynajmniej jednego odbiorcę."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Szyfrowana"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Podpisane"; +"MESSAGE_VIEW_PGP_PART" = "Część PGP"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail jest gotowy."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Twoja instalacja MacGPG działa bez problemów."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Proszę pobierz i zainstaluj ponownie GPG Suite z https://www.gpgtools.org aby być pewnym, że masz wszystkie komponenty."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Proszę sprawdź swoją instalację oraz konfigurację."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Proszę pobierz i zainstaluj ponownie GPG Suite z https://www.gpgtools.org aby być pewnym, że masz wszystkie komponenty."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "UWAGA: Wyłączenie tej opcji może powodować wycieki poufnych informacji podczas tworzenia nowej wiadomości"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Wyłącz szyfrowanie"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Anuluj"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Wykryto kilka instalacji GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail wykrył kilka instalacji w następujących miejscach, które będą prowadzić do natychmiastowego błędu lub zamknięcia:\n\n%@\n\nProsimy o usunięcie GPGMail.mailbundle z jeden z tych lokalizacji, a następnie zrestartowanie Maila.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Zakończ Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Nie znaleziono Libmacgpg"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Ktoś majstrował przy Twojej instalacji GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "W trosce Twoje bezpieczeństwo, GPGMail nie włączy się!\n\nProszę pobierz i zainstaluj najnowszą wersję GPG Suite z https://gpgtools.org aby być pewnym, że masz oryginalną wersję pochodzącą od nas!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Nie udałosię załadować domyślnych ustawień GPGMail!"; +NO_DEFAULTS_MESSAGE = "GPGMail nie działa tak jak powinien. \n\nProszę pobierz i zainstaluj ponownie GPG Suite z https://gpgtools.org\n\nJeśli ten problem będzie się powtarzać proszę napisz do nas na https://gpgtools.tenderapp.com"; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Podpisywanie Twojej wiadomości nie powiodło się z powodu wady pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "PinEntry, który jest odpowiedzialny za pytanie o Twoje hasło nie działa poprawnie.\n\nAby naprawić ten problem, prosimy o zainstalowanie najnowszej wersji GPG Suite z https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Podpisywanie Twojej wiadomości nie powiodło się z powodu defektu agenta GPG!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "Agent GPG, który jest istotną częścią GPG wydaje się mieć defekt na Twoim systemie.\n\nAby rozwiązać ten problem, zainstaluj ponownie najnowszą wersję GPG Suite z https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Podpisywanie Twojej wiadomości nie powiodło się z powodu błędu komunikacji agenta GPG."; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "Próba połączenia z agentem GPG w celu zapytania o Twoje hasło nie powiodła się.\n\nAby rozwiązać ten problem, zainstaluj ponownie najnowszą wersję GPG Suite z https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Podpisywanie Twojej wiadomości nie powiodło się z powodu nieznanego błędu"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Niestety w tym momencie nie jesteśmy w stanie poradzić sobie z tym błędem."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Szyfrowanie Twojej wiadomości nie powiodło się z powodu nieznanego błędu"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Niestety w tym momencie GPGMail nie może poradzić sobie z tym błędem."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Wpisałeś nieprawidłowe hasło zbyt wiele razy."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Podpisanie Twojej wiadomości zostało przerwane ponieważ wprowadziłeś błędne hasło 3 razy."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nJeśli ten problem będzie się powtarzać, prosimy o skontaktowanie się z nami pod adresem https://gpgtools.tenderapp.com/ z następującym opisem błędu: \n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Przerwałeś odszyfrowywanie wiadomości"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Wiadomość nie mogła być odszyfrowana, ponieważ anulowałeś zapytanie o hasło."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Przerwałeś odszyfrowywanie załącznika"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Załącznik nie mógł być odszyfrowany, ponieważ anulowałeś zapytanie o hasło."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite nie działa tak jak powinno."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Odszyfrowanie wiadomości nie powiodło się. \n\nProszę pobierz i zainstaluj ponownie GPG Suite z https://gpgtools.org \n\nJeśli ten problem będzie się powtarzać, to prosimy o skontaktowanie się z nami na https://gpgtools.tenderapp.com/ dołączając do wiadomości informacje, że serwis xpc nie działa poprawnie."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite nie działa tak jak powinno."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Odszyfrowanie załącznika nie powiodło się. \n\nProszę pobierz i zainstaluj ponownie GPG Suite z https://gpgtools.org\n\nJeśli ten problem będzie się powtarzać, to prosimy o skontaktowanie się z nami pod adresem https://gpgtools.tenderapp.com/ dołączając do wiadomości informacje, że serwis xpc nie działa poprawnie."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite nie działa tak jak powinno."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Weryfikacja wiadomości nie powiodła się. \n\nProsimy o pobranie i ponowną instalację GPG Suite z https://gpgtools.org. \n\nJeśli problem ten będzie się powtarzać, to prosimy o skontaktowanie się z nami pod adresem https://gpgtools.tenderapp.com/ dołączając do wiadomości informacje, że serwis xpc nie działał poprawnie."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite nie działa tak jak powinno."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Weryfikacja załącznika nie powiodła się.\n\nProszę pobierz i zainstaluj ponownie GPG Suite z https://gpgtools.org\n\nJeśli ten problem będzie się powtarzać, to prosimy o skontaktowanie się z nami na https://gpgtools.tenderapp.com dołączając do wiadomości informacje, że serwis xpc nie działał poprawnie."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Podpisywanie Twojej wiadomości nie powiodło się z powodu problemu podczas prośby o hasło"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "Pinentry, który jest odpowiedzialny za pytanie o Twoje hasło nie działa poprawnie. \n\nAby naprawić ten problem, proszę pobierz i zainstaluj ponownie GPG Suite z https://gpgtools.org"; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Podpisywanie Twojej wiadomości nie powiodło się z powodu problemu w Twojej instalacji GPGMail."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Aby naprawić ten problem prosimy o pobranie i ponowne zainstalowanie GPG Suite z https://gpgtools.org \n\nJeśli problem ten będzie się powtarzać, to prosimy o skontaktowanie się z nami pod adresem https://gpgtools.tenderapp.com/ dołączając do wiadomości informacje, że serwis xpc nie działał poprawnie."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Odszyfrowywanie wiadomości nie powiodło się z powodu wady pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "PinEntry, który jest odpowiedzialny za pytanie o Twoje hasło nie działa poprawnie.\n\nAby naprawić ten problem, prosimy o zainstalowanie najnowszej wersji GPG Suite z https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Odszyfrowywanie załącznika nie powiodło się z powodu wady pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "PinEntry, który jest odpowiedzialny za pytanie o Twoje hasło nie działa poprawnie.\n\nAby naprawić ten problem, prosimy o zainstalowanie najnowszej wersji GPG Suite z https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Uwaga: Zamierzasz wysłać nieszyfrowaną odpowiedź dla wiadomości która była szyfrowana"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Nie jest możliwe zaszyfrowanie Twojej odpowiedzi, ponieważ brakuje klucza publicznego dla następującego nadawcy:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Nie jest możliwe zaszyfrowanie Twojej odpowiedzi, ponieważ brakuje kluczy publicznych dla następujących nadawców:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Jeśli zamierzasz kontynuować to Twoja odpowiedź będzie nieszyfrowana. W rezultacie Ty i Twoi odbiorcy biorą na siebie ryzyko, że informacje poufne mogą wyciec."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nJeśli naprawdę chcesz wysłać tą odpowiedź jako nieszyfrowaną, to prosimy o usunięcie poprzednich korespondencji dołączonych w tej odpowiedzi zanim wyślesz tą wiadomość."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "W przeciwnym razie, szukaj i zaimportuj odpowiednie klucze publiczne za pomocą GPG Keychain w celu wysłania szyfrowanej odpowiedzi."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Wyślij każdym razie"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Anuluj"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Anuluj"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Metoda bezpieczeństwa; %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Podpisz"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Nie podpisuj"; + diff --git a/Resources/pl.lproj/GPGMailPreferences.strings b/Resources/pl.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..ecc553b5 --- /dev/null +++ b/Resources/pl.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Aktualizacje"; +"728.title" = "Tworzenie"; +"733.ibShadowedToolTip" = "Najczęściej zadawane pytania."; +"734.alternateTitle" = "Najczęściej zadawane pytania"; +"734.title" = "Baza wiedzy"; +"781.title" = "Szyfruj kopie robocze"; +"834.title" = "Przycisk"; +"1051.ibShadowedToolTip" = "jeśli masz jakiekolwiek inne pytanie."; +"1053.title" = "Zgłoś Problem"; +"0PS-Wm-gKl.title" = "Sprawdź teraz"; +"0Th-7E-Y7P.title" = "Wersja: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Automatycznie sprawdzaj dostępne aktualizacje"; +"8oZ-YB-M9Q.title" = "Wersje beta są częściej publikowane. Nowe funkcje i ulepszenia są mniej testowane."; +"D6D-o9-63C.title" = "Pokaż notatki tego wydania"; +"UhD-uR-dUs.title" = "Dołącz wersje beta"; +"q0m-y8-baf.title" = "Wersja:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/pl.lproj/GPGSignatureView.strings b/Resources/pl.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..c857ae37 --- /dev/null +++ b/Resources/pl.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Podpisy"; +"25.title" = "OK"; +"237.title" = "nazwa"; +"251.title" = "Szczegóły"; +"252.ibShadowedNoSelectionPlaceholder" = "Brak podpisu"; +"365.title" = "Nazwa:"; +"367.title" = "Klucz"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algorytm:"; +"378.title" = "Wygasa:"; +"379.title" = "Utworzony:"; +"381.title" = "Poziom zaufania:"; +"436.title" = "Utworzony:"; +"437.title" = "Podpis"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/pl.lproj/SignatureView.strings b/Resources/pl.lproj/SignatureView.strings new file mode 100644 index 00000000..453982bc --- /dev/null +++ b/Resources/pl.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Ten podpis nie jest zaufany."; +"VALIDITY_OK" = "Ten podpis jest zaufany"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Klucz dla tego podpisu został odwołany."; +"VALIDITY_SIGNATURE_EXPIRED" = "Ważność tego podpisu wygasła."; +"VALIDITY_KEY_EXPIRED" = "Ważność klucza dla tego podpisu wygasła."; +"VALIDITY_KEY_REVOKED" = "Klucz dla tego podpisu został odwołany."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Podpis został utworzony z nieznanym algorytmem."; +"VALIDITY_NO_PUBLIC_KEY" = "Brak klucza dla tego podpisu w twoim pęku kluczy."; +"VALIDITY_UNKNOWN_ERROR" = "Nieznany błąd podpisu."; +"VALIDITY_BAD_SIGNATURE" = "Podpis jest nieprawidłowy."; diff --git a/Resources/pt.lproj/GPGAttachment.strings b/Resources/pt.lproj/GPGAttachment.strings new file mode 100644 index 00000000..34d15433 --- /dev/null +++ b/Resources/pt.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Falha ao verificar a assinatura."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "A chave pública para verificar a assinatura deste anexo não está nas suas chaves.\n\nUse o GPG Keychain para transferir a chave pública %@."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Falha ao decriptografar o anexo."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "A chave secreta para decriptografar este anexo não está nas suas chaves."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "O anexo foi decriptografado corretamente."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Clique duas vezes em um anexo ao visualizar a mensagem para abri‑lo."; diff --git a/Resources/pt.lproj/GPGAttachments.strings b/Resources/pt.lproj/GPGAttachments.strings new file mode 100644 index 00000000..6a3f87a1 --- /dev/null +++ b/Resources/pt.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Janela"; +"8.title" = "OK"; +"210.title" = "nome"; +"211.title" = "Detalhes"; +"239.title" = "Chave"; +"240.title" = "Nome:"; +"241.title" = "E‑mail:"; +"243.title" = "Impressão Digital:"; +"244.title" = "Criação:"; +"245.title" = "Vencimento:"; +"246.title" = "Algoritmo:"; +"247.title" = "Confiança:"; +"256.title" = "Assinatura"; +"257.title" = "Criação:"; +"291.title" = "A assinatura não pôde ser verificada."; +"293.title" = "A assinatura não pôde ser verificada porque a chave pública não está nas suas chaves.\nUse o GPG Keychain para transferir a chave."; +"382.title" = "A assinatura não pôde ser verificada."; +"383.title" = "A assinatura não pôde ser verificada porque a chave pública não está nas suas chaves.\nUse o GPG Keychain para transferir a chave."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Nunca"; diff --git a/Resources/pt.lproj/GPGMail.strings b/Resources/pt.lproj/GPGMail.strings new file mode 100644 index 00000000..62d03fcd --- /dev/null +++ b/Resources/pt.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Versão: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Não foi possível decriptografar a mensagem PGP."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Houve um problema ao decriptografar esta mensagem. Verifique se você tem uma chave válida no GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Não foi possível verificar a assinatura PGP da mensagem."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Houve um problema ao ler a assinatura PGP desta mensagem."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "A chave PGP desta mensagem não está nas suas chaves."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "A mensagem tem uma assinatura PGP válida, mas a chave PGP não está nas suas chaves. Use o GPG Keychain para adicioná‑la."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Não há informações disponíveis sobre esta chave PGP."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Não há informações adicionais sobre esta chave PGP porque ela não está nas suas chaves."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Falta a chave secreta para decriptografar esta mensagem."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "Nenhuma das seguintes chaves secretas foi encontrada nas suas chaves (%@). A chave secreta é necessária para decriptografar esta mensagem.\n\nVerifique se o remetente usou a sua chave pública correta.\n\nTente importar a chave secreta a partir de um backup das chaves."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "A decriptografia falhou com erro desconhecido."; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Ocorreu um erro desconhecido ao decriptografar esta mensagem.\n\nContate o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "A decriptografia falhou com erro desconhecido."; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Ocorreu um erro desconhecido ao decriptografar esta mensagem.\n\nMensagem de erro GPG:\n%@\nInclua a mensagem de erro GPG ao contatar o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "A chave errada foi usada para criptografar esta mensagem."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Esta mensagem não pôde ser decriptografada porque a chave pública errada foi usada para criptografá‑la.\n\nContate o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "A mensagem criptografada está danificada."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Esta mensagem criptografada está danificada e não pôde ser decriptografada.\n\nPeça ao remetente para reenviar a mensagem."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "A chave de assinatura foi revogada."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "A chave usada para assinar esta mensagem foi revogada.\n\nAtualize a chave com o ID %@ no GPG Keychain para verificar se uma nova chave está disponível. Se a chave continuar revogada, verifique o motivo com o remetente."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "A chave de assinatura desta mensagem não está no GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "A mensagem não pôde ser verificada porque a chave usada para assiná‑la não está no GPG Keychain.\n\nBusque a chave com o ID %@ no GPG Keychain e importe‑a para verificar a mensagem."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "A assinatura da mensagem foi criada com um algoritmo incompatível."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Esta mensagem não pôde ser verificada porque a assinatura foi criada com um algoritmo incompatível.\n\nContate o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "Atenção: a assinatura desta mensagem é inválida."; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Esta mensagem pode ter sido modificada depois da criação da assinatura.\n\nContate o remetente para assegurar‑se de que o conteúdo da mensagem corresponda ao original.\n\nCaso tenha certeza de que a mensagem não foi modificada,\ncontate o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "A verificação da assinatura da mensagem falhou com erro desconhecido."; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Ocorreu um erro desconhecido ao verificar a assinatura desta mensagem.\n\nContate o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Erro nos dados de assinatura da mensagem."; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "A assinatura desta mensagem é inválida e não pôde ser verificada.\n\nContate o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "A chave de assinatura da mensagem está vencida."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "A chave usada para assinar esta mensagem está vencida.\n\nAtualize a chave com o ID %@ no GPG Keychain e pergunte ao remetente porque a chave está vencida."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "A assinatura da mensagem está vencida."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "A assinatura está vencida e não pôde ser verificada.\n\nPergunte ao remetente porque a assinatura está vencida."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "O MacGPG não está instalado"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "A decriptografia falhou porque o MacGPG não está instalado.\n\nTransfira e reinstale a GPG Suite de https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "O MacGPG não está instalado"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "A verificação falhou porque o MacGPG não está instalado.\n\nTransfira e reinstale a GPG Suite de https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d anexos não puderam ser decriptografados ou verificados."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Clique no ícone do anexo na parte de segurança do cabeçalho da mensagem para obter mais detalhes."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d anexos não puderam ser verificados."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Clique no ícone do anexo na parte de segurança do cabeçalho da mensagem para obter mais detalhes."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d anexos não puderam ser decriptografados."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Clique no ícone do anexo na parte de segurança do cabeçalho da mensagem para obter mais detalhes."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d anexo não pôde ser verificado."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Clique no ícone do anexo na parte de segurança do cabeçalho da mensagem para obter mais detalhes."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d anexo não pôde ser decriptografado."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Clique no ícone do anexo na parte de segurança do cabeçalho da mensagem para obter mais detalhes."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Falta a chave secreta para decriptografar o anexo."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "Nenhuma das seguintes chaves secretas foi encontrada nas suas chaves (%@). A chave secreta é necessária para decriptografar este anexo.\n\nVerifique se o remetente usou a sua chave pública correta.\nTente importar a chave secreta a partir de um backup das chaves."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "A decriptografia falhou com erro desconhecido."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Ocorreu um erro desconhecido ao decriptografar este anexo.\n\nContate o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "A decriptografia falhou com erro desconhecido."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Ocorreu um erro desconhecido ao decriptografar este anexo.\n\nMensagem de erro GPG:\n%@\nInclua a mensagem de erro GPG ao contatar o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "A chave errada foi usada para criptografar este anexo."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Este anexo não pôde ser decriptografado porque a chave pública errada foi usada para criptografá‑lo.\n\nContate o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "O anexo criptografado está danificado."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Este anexo criptografado está danificado e não pôde ser decriptografado.\n\nPeça ao remetente para enviar a mensagem novamente."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "A chave de assinatura foi revogada."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "A chave usada para assinar este anexo foi revogada.\n\nAtualize a chave com o ID %@ no GPG Keychain para verificar se uma nova chave está disponível. Se a chave continuar revogada, verifique o porquê com o remetente."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "A chave de assinatura não está no GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "A assinatura do anexo não pôde ser verificada porque a chave usada para assiná‑lo não está no GPG Keychain.\n\nBusque a chave com o ID %@ no GPG Keychain e importe‑a para verificar o anexo."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "A assinatura do anexo foi criada com um algoritmo incompatível."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Este anexo não pôde ser verificado porque a chave de assinatura foi criada com um algoritmo incompatível.\n\nContate o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "Atenção: a assinatura do anexo é inválida."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Este anexo pode ter sido modificado depois da criação da assinatura.\n\nContate o remetente para assegurar‑se de que o conteúdo do anexo corresponda ao original.\n\nCaso tenha certeza de que o anexo não foi modificado,\ncontate o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "A verificação da assinatura falhou com erro desconhecido."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Ocorreu um erro desconhecido ao verificar a assinatura deste anexo.\n\nContate o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Erro nos dados de assinatura."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "A assinatura deste anexo é inválida e não pôde ser verificada.\n\nContate o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "A chave da assinatura está vencida."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "A chave usada para assinar este anexo está vencida.\n\nAtualize a chave com o ID %@ no GPG Keychain e pergunte ao remetente porque a chave está vencida."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "A assinatura do anexo está vencida."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "A assinatura do anexo está vencida e não pôde ser verificada.\n\nPergunte ao remetente porque a assinatura está vencida."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Parcialmente Criptografada"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Parcialmente Assinada"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Criptografada"; +"MESSAGE_IS_PGP_SIGNED" = "Assinada"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Assinatura Inválida"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Assinada com chave desconhecida"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Assinada com chave revogada"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Assinatura inválida"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Assinada"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Nenhuma assinatura encontrada"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "anexo criptografado/assinado"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "anexos criptografados/assinados"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "anexo criptografado"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "anexos criptografados"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "anexo assinado"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "anexos assinados"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "Esta mensagem não pode ser assinada porque %@ não tem uma chave secreta.\n\nCertifique‑se de que este endereço possua uma chave secreta no GPG Keychain. Se necessário, adicione um novo ID de Usuário a uma chave existente deste endereço ou crie uma nova chave para este endereço.\n\nSe este endereço tiver uma chave, certifique‑se de que o endereço em Mail > Preferências > Contas esteja correto e corresponda exatamente ao endereço da chave."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Esta mensagem não pode ser criptografada porque não há chaves públicas para os seguintes endereços: %@.\n\nUse o GPG Keychain para buscar e importar as chaves desses endereços."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Esta mensagem não pode ser criptografada. Você deve digitar ao menos um destinatário primeiro."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Criptografada"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Assinada"; +"MESSAGE_VIEW_PGP_PART" = "Parte PGP"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "O GPGMail está pronto."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "A instalação do MacGPG está funcionando sem erros."; +"GPG_STATUS_NOT_FOUND_TITLE" = "O MacGPG não está instalado. Verifique a instalação."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Para garantir a instalação de todos os componentes necessários, transfira e reinstale a GPG Suite de https://www.gpgtools.org."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Verifique a instalação e configuração."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Para garantir a instalação de todos os componentes necessários, transfira e reinstale a GPG Suite de https://www.gpgtools.org."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Aviso: se você desativar esta opção, informações confidenciais poderão ser vazadas ao redigir uma mensagem."; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "Se a opção “Armazenar rascunhos no servidor” estiver ativada nas contas, o Mail armazenará os rascunhos no servidor automaticamente enquanto você estiver redigindo uma mensagem.\n\nAo desativar a opção “Criptografar rascunhos”, eles serão salvos em texto simples (não criptografado) e qualquer um com acesso ao servidor poderá lê‑los.\n\nSe você mantiver a opção “Criptografar rascunhos” ativada, eles serão criptografados antes de serem armazenados no servidor e somente você poderá lê‑los.\n\nAinda deseja desativar a criptografia de rascunhos?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Desativar Criptografia"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancelar"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Várias instalações do GPGMail encontradas."; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "O GPGMail encontrou várias instalações nos seguintes locais (o que levará a uma falha imediata):\n\n%@\n\nRemova o GPGMail.mailbundle de um dos locais e reinicie o Mail."; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Encerrar Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg não encontrado."; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "O Libmacgpg não foi encontrado no sistema. Transfira e instale a GPG Suite de https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Alguém adulterou a instalação do GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "Para manter sua segurança, o GPGMail não será carregado.\n\nPara certificar‑se de que você possui a versão original, reinstale a GPG Suite de https://gpgtools.org."; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Não foi possível carregar os padrões do GPGMail."; +NO_DEFAULTS_MESSAGE = "O GPGMail não está funcionando devidamente.\n\nTransfira e reinstale a GPG Suite de https://gpgtools.org\n\nSe o problema persistir, contate o suporte em https://gpgtools.tenderapp.com."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "A assinatura da mensagem falhou devido a um defeito no pinentry."; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "O pinentry (ferramenta responsável por solicitar a sua senha) parece estar com defeito.\n\nPara corrigir este problema, reinstale a GPG Suite de https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "A assinatura da mensagem falhou devido a um defeito do agente GPG."; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "O agente GPG (parte crucial do GPG) parece estar com defeito.\n\nPara corrigir este problema, reinstale a GPG Suite de https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "A assinatura da mensagem falhou devido a um erro de comunicação do agente GPG."; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "Não foi possível comunicar‑se com o agente GPG para solicitar sua senha.\n\nPara corrigir este problema, reinstale a GPG Suite de https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "A assinatura da mensagem falhou devido a um erro desconhecido."; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Infelizmente, não é possível lidar com o erro no momento."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "A criptografia da mensagem falhou devido a um erro desconhecido."; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Infelizmente, o GPGMail não pode lidar com o erro no momento."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Você digitou a senha errada muitas vezes."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "A assinatura da mensagem foi cancelada porque você digitou a senha errada 3 vezes."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nSe o problema persistir, inclua a seguinte mensagem de erro ao contatar o suporte em https://gpgtools.tenderapp.com:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Você cancelou a decriptografia da mensagem."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "A mensagem não pôde ser decriptografada porque você cancelou a solicitação da senha."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Você cancelou a decriptografia do anexo."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "O anexo não pôde ser decriptografado porque você cancelou a solicitação da senha."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "A GPG Suite não está funcionando devidamente."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "A decriptação da mensagem falhou.\n\nReinstale a GPG Suite de https://gpgtools.org.\n\nSe o problema persistir, informe o funcionamento indevido do serviço xpc ao contatar o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "A GPG Suite não está funcionando devidamente."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "A decriptação do anexo falhou.\n\nReinstale a GPG Suite de https://gpgtools.org.\n\nSe o problema persistir, informe o funcionamento indevido do serviço xpc ao contatar o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "A GPG Suite não está funcionando devidamente."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "A verificação da mensagem falhou.\n\nReinstale a GPG Suite de https://gpgtools.org.\n\nSe o problema persistir, informe o funcionamento indevido do serviço xpc ao contatar o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "A GPG Suite não está funcionando devidamente."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "A verificação do anexo falhou.\n\nReinstale a GPG Suite de https://gpgtools.org.\n\nSe o problema persistir, informe o funcionamento indevido do serviço xpc ao contatar o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "A assinatura da mensagem falhou devido a um problema durante a solicitação da senha."; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "O pinentry (ferramenta responsável por solicitar a sua senha) não está funcionando corretamente.\n\nPara corrigir este problema, reinstale a GPG Suite de https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "A assinatura da mensagem falhou devido a um problema na instalação do GPGMail."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Para corrigir este problema, reinstale a GPG Suite de https://gpgtools.org.\n\nSe o problema persistir, informe o funcionamento indevido do serviço xpc ao contatar o suporte em https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "A decriptação da mensagem falhou devido a um defeito no pinentry."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "O pinentry (ferramenta responsável por solicitar a sua senha) parece estar com defeito.\n\nPara corrigir este problema, reinstale a GPG Suite de https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "A decriptação do anexo falhou devido a um defeito no pinentry."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "O pinentry (ferramenta responsável por solicitar a sua senha) parece estar com defeito.\n\nPara corrigir este problema, reinstale a GPG Suite de https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Atenção: você está prestes a enviar uma resposta sem criptografia a uma mensagem criptografada."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Não é possível criptografar a resposta porque falta a chave pública do seguinte destinatário:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Não é possível criptografar a resposta porque faltam as chaves públicas dos seguintes destinatários:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Se você optar por prosseguir, a resposta será enviada sem criptografia. Como consequência, informações confidenciais poderão ser vazadas, colocando você e os destinatários em risco."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nCaso realmente deseje enviar a resposta sem criptografia, remova correspondências anteriores incluídas na mensagem antes de enviá‑la."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Para enviar a resposta criptografada, busque e importe as chaves públicas correspondentes no GPG Keychain."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Para enviar a resposta criptografada, busque e importe a chave pública correspondente no GPG Keychain."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Enviar Mesmo Assim"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancelar"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Atenção: você está prestes a encaminhar uma versão decriptografada de uma mensagem criptografada."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Não é possível criptografar a mensagem prestes a ser encaminhada porque falta a chave pública do seguinte destinatário:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Não é possível criptografar a mensagem prestes a ser encaminhada porque faltam as chaves públicas dos seguintes destinatários:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "Se você optar por prosseguir, a mensagem prestes a ser encaminhada será enviada sem criptografia. Como consequência, informações confidenciais poderão ser vazadas, colocando você e os destinatários em risco."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Para encaminhar uma versão criptografada da mensagem, busque e importe as chaves públicas correspondentes no GPG Keychain."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Para encaminhar uma versão criptografada da mensagem, busque e importe a chave pública correspondente no GPG Keychain."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Encaminhar Mesmo Assim"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancelar"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Método de segurança: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Assinar"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Não Assinar"; + diff --git a/Resources/pt.lproj/GPGMailPreferences.strings b/Resources/pt.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..ab63a671 --- /dev/null +++ b/Resources/pt.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Atualizações"; +"728.title" = "Redação"; +"733.ibShadowedToolTip" = "Perguntas frequentes."; +"734.alternateTitle" = "FAQ"; +"734.title" = "Base de Conhecimento"; +"781.title" = "Criptografar rascunhos"; +"834.title" = "Botão"; +"1051.ibShadowedToolTip" = "Se você tiver alguma outra dúvida."; +"1053.title" = "Comunicar Problema"; +"0PS-Wm-gKl.title" = "Buscar Agora"; +"0Th-7E-Y7P.title" = "Versão: xxx"; +"2ul-d0-5ir.title" = "Assinar novos e-mails"; +"80G-ZN-hjm.title" = "Buscar atualizações automaticamente"; +"8oZ-YB-M9Q.title" = "Fases beta são distribuídas com mais frequência, mas novos recursos e melhorias são menos testados."; +"D6D-o9-63C.title" = "Notas da Versão"; +"UhD-uR-dUs.title" = "Incluir fases beta"; +"q0m-y8-baf.title" = "Fase:"; +"yJs-2y-8Cb.title" = "Criptografar novos e-mails"; diff --git a/Resources/pt.lproj/GPGSignatureView.strings b/Resources/pt.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..b328f1fb --- /dev/null +++ b/Resources/pt.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Assinaturas"; +"25.title" = "OK"; +"237.title" = "nome"; +"251.title" = "Detalhes"; +"252.ibShadowedNoSelectionPlaceholder" = "Nenhuma assinatura"; +"365.title" = "Nome:"; +"367.title" = "Chave"; +"369.title" = "E‑mail:"; +"372.title" = "Impressão Digital:"; +"377.title" = "Algoritmo:"; +"378.title" = "Vencimento:"; +"379.title" = "Criação:"; +"381.title" = "Confiança:"; +"436.title" = "Criação:"; +"437.title" = "Assinatura"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Nunca"; diff --git a/Resources/pt.lproj/SignatureView.strings b/Resources/pt.lproj/SignatureView.strings new file mode 100644 index 00000000..93eb9bf6 --- /dev/null +++ b/Resources/pt.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Esta assinatura não é confiável."; +"VALIDITY_OK" = "Esta assinatura é confiável."; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "A chave desta assinatura foi revogada."; +"VALIDITY_SIGNATURE_EXPIRED" = "Esta assinatura está vencida."; +"VALIDITY_KEY_EXPIRED" = "A chave desta assinatura está vencida."; +"VALIDITY_KEY_REVOKED" = "A chave desta assinatura foi revogada."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Esta assinatura foi criada com um algoritmo desconhecido."; +"VALIDITY_NO_PUBLIC_KEY" = "A chave desta assinatura não está nas suas chaves."; +"VALIDITY_UNKNOWN_ERROR" = "Erro de assinatura desconhecido."; +"VALIDITY_BAD_SIGNATURE" = "Esta assinatura é inválida."; diff --git a/Resources/pt_PT.lproj/GPGAttachment.strings b/Resources/pt_PT.lproj/GPGAttachment.strings new file mode 100644 index 00000000..405ab009 --- /dev/null +++ b/Resources/pt_PT.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Não foi possível verificar a assinatura."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "A chave pública necessária para verificar a assinatura do anexo não se encontra no porta-chaves.\n\nDescarregue a chave pública %@ utilizando Porta-chaves GPG."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Não foi possível decifrar o anexo."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "A chave secreta necessária para decifrar o anexo não se encontra no porta-chaves."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "O anexo foi decifrado com sucesso."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Faça duplo clique na vista de mensagem para abrir o anexo."; diff --git a/Resources/pt_PT.lproj/GPGAttachments.strings b/Resources/pt_PT.lproj/GPGAttachments.strings new file mode 100644 index 00000000..b56b62f9 --- /dev/null +++ b/Resources/pt_PT.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Janela"; +"8.title" = "OK"; +"210.title" = "nome"; +"211.title" = "Detalhes"; +"239.title" = "Key"; +"240.title" = "Nome:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Criado em:"; +"245.title" = "Expires:"; +"246.title" = "Algoritmo:"; +"247.title" = "Ownertrust:"; +"256.title" = "Assinatura"; +"257.title" = "Criado em:"; +"291.title" = "Não foi possível verificar a assinatura."; +"293.title" = "A assinatura não pode ser verificara uma vez que a chave pública não se encontra no porta-chaves.\nDescarregue a chave através de GPG Keychain."; +"382.title" = "Não foi possível verificar a assinatura."; +"383.title" = "A assinatura não pode ser verificara uma vez que a chave pública não se encontra no porta-chaves.\nDescarregue a chave através de GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/pt_PT.lproj/GPGMail.strings b/Resources/pt_PT.lproj/GPGMail.strings new file mode 100644 index 00000000..da383ce8 --- /dev/null +++ b/Resources/pt_PT.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Versão: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Não foi possível decifrar a mensagem PGP."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Ocorreu um problema a decifrar a mensagem. Certifique-se de que tem uma chave válida em GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Não foi possível verificar a assinatura da mensagem PGP."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Ocorreu um problema a ler a assinatura PGP para a mensagem."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "A chave PGP para esta mensagem não se encontra no porta-chaves."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "A mensagem tem uma assinatura PGP válida mas a respetiva chave PGP não se encontra no porta-chaves. Adicione-a através de GPG Keychain."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Não existe informação disponível para a chave PGP."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Não há informação adicional sobre a chave PGP uma vez que esta não se encontra no porta-chaves."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "A chave secreta para decifrar a mensagem não foi encontrada."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "Nenhuma das seguintes chaves secretas se encontra no porta-chaves (%@). A chave secreta é necessária para decifrar a mensagem.\n\nVerifique com o remetente que foi usada a chave pública correta.\nVerifique cópias de segurança que tenha feito do porta-chaves e tente importar a chave secreta daí."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Falha a decifrar a mensagem devido a erro desconhecido!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Ocorreu um erro desconhecido a decifrar a mensagem.\n\nContacte-nos através do site https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Falha a decifrar a mensagem devido a erro desconhecido!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Ocorreu um erro desconhecido a decifrar a mensagem.\n\nMensagem de erro GPG: %@\n\nContacte-nos, incluindo a mensagem de erro GPG, através do site https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Foi usada uma chave errada a cifrar a mensagem."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "A mensagem não pode ser decifrada visto que foi cifrada com uma chave pública incorreta.\n\nContacte-nos através do site https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "A mensagem cifrada está danificada."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "A mensagem cifrada está danificada e não pode ser decifrada.\n\nPeça ao remetente para proceder ao seu reenvio."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "A assinatura foi revogada. "; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "A chave que foi usada para assinar a mensagem foi revogada.\n\nActualize a chave com ID %@ na aplicação GPG Keychain para verificar se existe uma chave mais recente. Se a nova chave ainda estiver revogada, verifique com o remetente a razão da revogação."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "A chave para a assinatura da mensagem não se encontra em GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "A mensagem não pode ser verificada visto que a chave que foi usada para a assinar não se encontra no seu porta-chaves GPG.\n\nProcure a chave com ID %@ em GPG Keychain e importe-a para verificar a mensagem."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "A assinatura da mensagem foi criada com um algoritmo não suportado. "; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Esta mensagem não pode ser verificada visto que a assinatura foi criada com um algoritmo não suportado.\n\nContacte-nos através do website: https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATENÇÃO: A assinatura da mensagem não é válida."; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "ATENÇÃO: A mensagem poderá ter sido modificada após a assinatura.\n\nContacte o remetente de modo a garantir que o conteúdo da mensagem coincide com a original.\n\nSe tem a certeza de que a mensagem não foi modificada, contacte-nos através do site https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "A verificação da assinatura da mensagem falhou com um erro desconhecido."; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Ocorreu um erro desconhecido a verificar da assinatura da mensagem.\n\nContacte-nos através do site https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Erro na assinatura da mensagem!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "A assinatura da mensagem não é válida e não pode ser verificada.\n\nContacte-nos através do site https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "A chave da assinatura da mensagem caducou."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "ATENÇÃO: A chave que foi usada para assinar a mensagem caducou.\n\nPode tentar atualizar a chave com o ID %@ em GPG Keychain e perguntar ao remetente a razão da chave ter caducado."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "A assinatura da mensagem caducou."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "A assinatura caducou e não pode ser verificada. \n\nPergunte ao remetente a razão da assinatura ter caducado."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "O(s) anexo(s) %d não puderam ser decifrados ou verificados."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Clique no icon de anexo na parte de segurança do cabeçalho da mensagem para mais detalhes."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "O(s) anexo(s) %d não puderam ser verificados."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Clique no ícone de anexo na parte de segurança do cabeçalho da mensagem para mais detalhes."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "Falha a decifrar %d anexo(s)."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Clique no ícone de anexo na parte de segurança do cabeçalho da mensagem para mais detalhes."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "Falha na verificação de %d anexo(s)."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Clique no ícone de anexo na parte de segurança do cabeçalho da mensagem para mais detalhes."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "Falha a decifrar %d anexo(s)."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Clique no ícone de anexo na parte de segurança do cabeçalho da mensagem para mais detalhes."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "A chave secreta necessária para decifrar o anexo não foi encontrada."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "Nenhuma das seguintes chaves secretas foram encontradas no porta-chaves (%@). A chave secreta é necessária para decifrar o anexo.\n\nVerifique com o remetente que foi usada a chave pública correta.\nVerifique as cópias de segurança que tenha feito do porta-chaves e tente importar a chave secreta daí."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Falha a decifrar a mensagem devido a erro desconhecido!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Ocorreu um erro desconhecido a decifrar o anexo.\n\nContacte-nos através do site https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Falha a decifrar devido a um erro desconhecido."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Ocorreu um erro desconhecido a decifrar o anexo.\n\nMensagem de erro GPG: \n%@\nContacte-nos, incluindo a mensagem de erro GPG, através do site https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Foi usada uma chave errada para cifrar o anexo. "; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "O anexo não pode ser decifrado visto que foi cifrada com uma chave pública incorreta. \n\nContacte-nos através do site https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "O anexo cifrado está danificado."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "O anexo cifrado está danificado e não pode ser decifrado. \n\nPeça ao remetente para lhe enviar a mensagem novamente. "; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "A chave da assinatura foi revogada."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "ATENÇÃO: A chave que foi usada para assinar este anexo foi revogada.\n\nAtualize a chave com ID %@ na aplicação GPG Keychain para verificar se existe uma chave mais recente. Se a nova chave também estiver revogada, verifique com o remetente a razão da sua revogação."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Esta chave de assinatura não está presente no seu porta-chaves GPG."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "A assinatura do anexo não pode ser verificada visto que a chave que foi usada não está presente em GPG Keychain.\n\nProcure a chave com a \"Key ID\" %@ na aplicação GPG Keychain e importe-a para verificar o anexo."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "A assinatura do anexo foi criada com um algoritmo não suportado."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "A assinatura do anexo não pode ser verificada visto que a chave que foi usada foi criada com um algoritmo não suportado.\n\nContacte-nos através do site: https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATENÇÃO: A assinatura do anexo não é válida."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "ATENÇÃO: Este anexo poderá ter sido modificado após a criação da assinatura.\n\nPor favor contacte o remetente e certifique-se de que o conteúdo dos anexos corresponde ao original. \n\nPor favor contacte-nos através do website https://gpgtools.tenderapp.com\nse tiver a certeza de que o conteúdo dos anexos não foi modificado de qualquer maneira."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Falhou a verificação da assinatura, com um erro desconhecido!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Um erro desconhecido ocorreu aquando da verificação do anexo da assinatura GPG.\n\nPor favor contacte-nos através do website https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Erro nos dados da Assinatura!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "O anexo da assinatura GPG é inválido e não pode ser verificado.\n\nPor favor contacte-nos através do website https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "A chave da assinatura expirou."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Partly Encrypted"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Partly Signed"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Encrypted"; +"MESSAGE_IS_PGP_SIGNED" = "Signed"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Invalid Signature"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signed with unknown key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signed with revoked key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Invalid signature"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signed"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No signature found"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "encrypted attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "encrypted attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signed attachments"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "This message can't be encrypted, since there are no public keys available for the following addresses: %@.\n\nPlease use GPG Keychain to search and import the keys for those addresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Encrypted"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signed"; +"MESSAGE_VIEW_PGP_PART" = "PGP part"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail is ready."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Your MacGPG installation is working with no errors."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Please check your installation and configuration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancelar"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Found multiple installations of GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancelar"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancelar"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Método de segurança: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Assinar"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Não assinar"; + diff --git a/Resources/pt_PT.lproj/GPGMailPreferences.strings b/Resources/pt_PT.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..68d40d29 --- /dev/null +++ b/Resources/pt_PT.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Atualizações"; +"728.title" = "Edição"; +"733.ibShadowedToolTip" = "Perguntas frequentes."; +"734.alternateTitle" = "Perguntas frequentes"; +"734.title" = "Base de conhecimento"; +"781.title" = "Rascunhos cifrados"; +"834.title" = "Botão"; +"1051.ibShadowedToolTip" = "If you've any other question."; +"1053.title" = "Relatar um problema"; +"0PS-Wm-gKl.title" = "Procurar agora"; +"0Th-7E-Y7P.title" = "Versão: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Procurar atualizações automaticamente"; +"8oZ-YB-M9Q.title" = "A publicação de versões beta ocorre com mais frequência. Novas funcionalidades e melhorias são sujeitas a menos testes."; +"D6D-o9-63C.title" = "Show Release Notes"; +"UhD-uR-dUs.title" = "Incluir versões beta"; +"q0m-y8-baf.title" = "Compilação:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/pt_PT.lproj/GPGSignatureView.strings b/Resources/pt_PT.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..ebcaf737 --- /dev/null +++ b/Resources/pt_PT.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Assinaturas"; +"25.title" = "OK"; +"237.title" = "nome"; +"251.title" = "Detalhes"; +"252.ibShadowedNoSelectionPlaceholder" = "Sem assinatura"; +"365.title" = "Nome:"; +"367.title" = "Key"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algoritmo:"; +"378.title" = "Expires:"; +"379.title" = "Criado em:"; +"381.title" = "Ownertrust:"; +"436.title" = "Criado em:"; +"437.title" = "Assinatura"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/pt_PT.lproj/SignatureView.strings b/Resources/pt_PT.lproj/SignatureView.strings new file mode 100644 index 00000000..050890e9 --- /dev/null +++ b/Resources/pt_PT.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "A assinatura não é fiável."; +"VALIDITY_OK" = "A assinatura é fiável."; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "A chave da assinatura foi anulada."; +"VALIDITY_SIGNATURE_EXPIRED" = "A assinatura expirou."; +"VALIDITY_KEY_EXPIRED" = "A chave da assinatura expirou."; +"VALIDITY_KEY_REVOKED" = "A chave da assinatura foi anulada."; +"VALIDITY_UNKNOWN_ALGORITHM" = "A assinatura foi criada com um algoritmo não suportado."; +"VALIDITY_NO_PUBLIC_KEY" = "A chave desta assinatura não está no seu porta-chaves GPG."; +"VALIDITY_UNKNOWN_ERROR" = "Erro desconhecido na validação da assinatura."; +"VALIDITY_BAD_SIGNATURE" = "A assinatura não é válida."; diff --git a/Resources/ro.lproj/GPGAttachment.strings b/Resources/ro.lproj/GPGAttachment.strings new file mode 100644 index 00000000..837de7b8 --- /dev/null +++ b/Resources/ro.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Failed to verify the signature."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "The public key to verify the signature of this attachment is not in your keychain.\n\nPlease download the public key %@ using GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Failed to decrypt the attachment."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "The secret key to decrypt this attachment is not in your keychain."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "The attachment was decrypted successfully."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Open an attachment in the message view by double-clicking."; diff --git a/Resources/ro.lproj/GPGAttachments.strings b/Resources/ro.lproj/GPGAttachments.strings new file mode 100644 index 00000000..49739476 --- /dev/null +++ b/Resources/ro.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Window"; +"8.title" = "OK"; +"210.title" = "name"; +"211.title" = "Details"; +"239.title" = "Key"; +"240.title" = "Name:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Created:"; +"245.title" = "Expires:"; +"246.title" = "Algorithm:"; +"247.title" = "Ownertrust:"; +"256.title" = "Signature"; +"257.title" = "Created:"; +"291.title" = "The signature could not be verified."; +"293.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"382.title" = "The signature could not be verified."; +"383.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/ro.lproj/GPGMail.strings b/Resources/ro.lproj/GPGMail.strings new file mode 100644 index 00000000..27a855c7 --- /dev/null +++ b/Resources/ro.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Version: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Unable to decrypt PGP message."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "There was a problem decrypting this message. Verify that you have a valid key in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Unable to verify PGP message signature."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "There was a problem reading the PGP signature for this message."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP key for this message is not in your keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "The message has a valid PGP signature, but the PGP key is not in your keychain. Please use GPG Keychain to add it."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "No information is available for this PGP key."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "No additional information is known about this PGP key, because it's not in your keychain."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the message is missing."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this message."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This message could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted message is damaged."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted message is damaged and could not be decrypted.\n\nPlease ask the sender to re-send the message."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this message was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The key to this message signature is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The message could not be verified, since the key which was used to sign this message is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the message."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "The message signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This message could not be verified, since the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The signature of this message is invalid!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verification of message signature failed with unknown error!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this message's signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Message signature data error!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This message's signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Message signature's key is expired."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this message is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The message signature is expired."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d attachments failed to decrypt or verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d attachments failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d attachments failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d attachment failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d attachment failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the attachment is missing."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this attachment."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This attachment could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted attachment is damaged."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted attachment is damaged and could not be decrypted.\n\nPlease ask the sender to send you the message again."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The signature key is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "The attachment signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This attachment could not be verified, since the key to the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The attachment signature is invalid!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\n if you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Signature verification failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signature data error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This attachment signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "The key of the signature is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Partly Encrypted"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Partly Signed"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Encrypted"; +"MESSAGE_IS_PGP_SIGNED" = "Signed"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Invalid Signature"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signed with unknown key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signed with revoked key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Invalid signature"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signed"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No signature found"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "encrypted attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "encrypted attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signed attachments"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "This message can't be encrypted, since there are no public keys available for the following addresses: %@.\n\nPlease use GPG Keychain to search and import the keys for those addresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Encrypted"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signed"; +"MESSAGE_VIEW_PGP_PART" = "PGP part"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail is ready."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Your MacGPG installation is working with no errors."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Please check your installation and configuration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Found multiple installations of GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/ro.lproj/GPGMailPreferences.strings b/Resources/ro.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..9cc3061a --- /dev/null +++ b/Resources/ro.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Updates"; +"728.title" = "Composing"; +"733.ibShadowedToolTip" = "Frequently Asked Questions."; +"734.alternateTitle" = "Frequently Asked Questions"; +"734.title" = "Knowledge Base"; +"781.title" = "Encrypt drafts"; +"834.title" = "Button"; +"1051.ibShadowedToolTip" = "If you've any other question."; +"1053.title" = "Report Problem"; +"0PS-Wm-gKl.title" = "Check Now"; +"0Th-7E-Y7P.title" = "Version: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Automatically check for updates"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "Show Release Notes"; +"UhD-uR-dUs.title" = "Include beta builds"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/ro.lproj/GPGSignatureView.strings b/Resources/ro.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..0e32cad7 --- /dev/null +++ b/Resources/ro.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Signatures"; +"25.title" = "OK"; +"237.title" = "name"; +"251.title" = "Details"; +"252.ibShadowedNoSelectionPlaceholder" = "No signature"; +"365.title" = "Name:"; +"367.title" = "Key"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algorithm:"; +"378.title" = "Expires:"; +"379.title" = "Created:"; +"381.title" = "Ownertrust:"; +"436.title" = "Created:"; +"437.title" = "Signature"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/ro.lproj/SignatureView.strings b/Resources/ro.lproj/SignatureView.strings new file mode 100644 index 00000000..4470da3d --- /dev/null +++ b/Resources/ro.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "This signature is not to be trusted."; +"VALIDITY_OK" = "This signature can be trusted"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "The key of this signature was revoked."; +"VALIDITY_SIGNATURE_EXPIRED" = "This signature is expired."; +"VALIDITY_KEY_EXPIRED" = "The key of this signature is expired."; +"VALIDITY_KEY_REVOKED" = "The key of this signature was revoked."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Signature was created with unknown algorithm."; +"VALIDITY_NO_PUBLIC_KEY" = "The key of this signature is not in your keychain."; +"VALIDITY_UNKNOWN_ERROR" = "Unknown signature error."; +"VALIDITY_BAD_SIGNATURE" = "This signature is invalid."; diff --git a/Resources/ru.lproj/GPGAttachment.strings b/Resources/ru.lproj/GPGAttachment.strings new file mode 100644 index 00000000..2ad2507c --- /dev/null +++ b/Resources/ru.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Не удалось проверить подпись."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "Открытый ключ для проверки подписи этого вложения отсутствует в Keychain.\n\nПожалуйста загрузите открытый ключ %@ используя GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Не удалось расшифровать вложение."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Секретный ключ для расшифровки этого вложения отсутствует в вашем Keychain."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Вложение было успешно расшифровано."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Откройте вложение в письме для просмотра двойным щелчком мыши."; diff --git a/Resources/ru.lproj/GPGAttachments.strings b/Resources/ru.lproj/GPGAttachments.strings new file mode 100644 index 00000000..07eb9cfb --- /dev/null +++ b/Resources/ru.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Окно"; +"8.title" = "OK"; +"210.title" = "имя"; +"211.title" = "Подробности"; +"239.title" = "Ключ"; +"240.title" = "Имя:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Создано:"; +"245.title" = "Истекает:"; +"246.title" = "Алгоритм:"; +"247.title" = "Доверенные:"; +"256.title" = "Подпись"; +"257.title" = "Создано:"; +"291.title" = "Подпись не может быть проверена."; +"293.title" = "Подпись не может быть проверена, потому что открытый ключ не находится в вашем Keychain.\nПожалуйста, загрузите ключ с помощью GPG Keychain."; +"382.title" = "Эта подпись не может быть проверена."; +"383.title" = "Подпись не может быть проверена, потому что открытый ключ отсутствует в вашем Keychain.\nПожалуйста загрузите ключ, используя GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/ru.lproj/GPGMail.strings b/Resources/ru.lproj/GPGMail.strings new file mode 100644 index 00000000..063522e0 --- /dev/null +++ b/Resources/ru.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Версия: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Невозможно расшифровать PGP сообщение."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Возникла проблема при расшифровке сообщения. Убедитесь, что у вас есть правильный ключ."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Невозможно проверить PGP подпись."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Не удалось прочитать PGP подпись для этого сообщения."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP ключ для этого сообщения не найден в вашей связке."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Сообщение имеет действующую подпись PGP, но ключ PGP не находиться в вашем Keychain. Пожалуйста, используйте GPG Keychain для его добавления."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Не удалось найти информацию о PGP ключе."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Нет подробных данных о PGP ключе, поскольку он не добавлен в связку."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Секретный ключ для расшифровки сообщения не найден."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Невозможно расшифровать. Неизвестная ошибка!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "При расшифровке этого сообщения произошла неизвестная ошибка.\n\nПожалуйста свяжитесь с нами https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Невозможно расшифровать. Неизвестная ошибка!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "При расшифровке этого сообщения произошла неизвестная ошибка.\n\nСообщение ошибки GPG:\n%@\nПожалуйста свяжитесь с нами, приложив сообщение ошибки GPG на https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Зашифровано неправильным ключом."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Это сообщение не может быть расшифровано, так как использовался неправильный открытый ключ для его шифрования.\n\nПожалуйста свяжитесь с нами https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Зашифрованное сообщение повреждено."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Это зашифрованное сообщение повреждено и не может быть расшифровано.\n\nПопросите отправителя повторить отправку."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Ключ подписи аннулирован."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "Ключ, который использовался для подписи этого сообщение был аннулирован.\n\nВы должны обновить ключ ID %@ в GPG Keychain проверьте наличие новой версии. Если новый до сих пор аннулирован, проверьте вместе с отправителем, почему ключ был аннулирован."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Ключ к этому сообщению не найден в связке."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Сообщение не может быть проверено, так как ключ, который использовался для подписи этого сообщения, отсутствует в вашем GPG Keychain.\n\nНайдите ключ с ID %@ в GPG Keychain и импортируйте его, чтобы проверить сообщение."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "Подпись к сообщению создана неподдерживаемым алгоритмом."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Это сообщение не может быть проверено, так как подпись была создана с помощью алгоритма, который не поддерживается.\n\nПожалуйста свяжитесь с нами https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ВНИМАНИЕ: Подпись сообщения не верна!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Это сообщение может быть изменено после того, как подпись была создана.\n\nПожалуйста, обратитесь к отправителю, чтобы убедиться, что содержание сообщения соответствует оригиналу.\n\nПожалуйста свяжитесь с нами\nhttps://gpgtools.tenderapp.com/\nесли вы уверены, что сообщение не было изменено."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Неизвестная ошибка! Проверка сообщения невозможна!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Произошла неизвестная ошибка при проверке подписи этого сообщения.\n\nПожалуйста свяжитесь с нами https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Ошибка цифровой подписи!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Подпись этого сообщения недействительна и не может быть проверена.\n\nПожалуйста свяжитесь с нами https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Ключ подписи просрочен.."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "Срок действия ключа, который использовался для подписи этого сообщения, истек.\n\nВы можете попробовать обновить ключ с ID %@ в GPG Keychain и узнайте у отправителя, почему срок действия ключа истек."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Подпись сообщения устарела."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Подпись сообщения устарела и не может быть проверена.\n\nСвяжитесь с отправителем, что бы узнать причину."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d вложений не возможно расшифровать или проверить."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Пожалуйста, щелкните на иконку вложения в заголовке, что бы узнать подробнее."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d вложений не возможно проверить."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Пожалуйста, щелкните на иконку вложения в заголовке, что бы узнать подробнее."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d вложений не возможно расшифровать."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Пожалуйста, щелкните на иконку вложения в заголовке, что бы узнать подробнее."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d вложение не возможно проверить."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Пожалуйста, щелкните на иконку вложения в заголовке, что бы узнать подробнее."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d вложение не возможно расшифровать."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Пожалуйста, щелкните на иконку вложения в заголовке, что бы узнать подробнее."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Нет секретного ключа для расшифровки вложения."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Неизвестная ошибка! Расшифровка невозможна."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "При расшифровке этого вложения произошла неизвестная ошибка.\n\nПожалуйста свяжитесь с нами https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Неизвестная ошибка! Расшифровка невозможна."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "При расшифровке этого сообщения произошла неизвестная ошибка.\n\nСообщение ошибки GPG:\n%@\nПожалуйста свяжитесь с нами, приложив сообщение ошибки GPG на https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Неверный ключ использован для шифрования вложения."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Это вложение не может быть расшифровано, так как для его шифрования был использован неправильный открытый ключ .\n\nПожалуйста свяжитесь с нами https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Зашифрованное вложение повреждено."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Зашифрованное вложение было повреждено и не может быть расшифровано.\n\nСвяжитесь с отправителем, что бы получить сообщение ещё раз."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Ключ подписи был аннулирован."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "Ключ, который использовался для подписи этого сообщение был аннулирован.\n\nВы должны обновить ключ ID %@ в GPG Keychain проверьте наличие новой версии. Если новый до сих пор аннулирован, проверьте вместе с отправителем, почему ключ был аннулирован."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Ключ подписи не найден в связке."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Подпись вложения не может быть проверена, поскольку ключ, который использовался при подписании, не найден в вашем GPG Keychain.\n\nНайдите и импортируйте ключ с ID %@ в GPG Keychain для проверки вложения."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "Подпись вложения создана неподдерживаемым алгоритмом.."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Это вложение не может быть проверено, так как подпись была создана с помощью алгоритма, который не поддерживается.\n\nПожалуйста свяжитесь с нами https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ВНИМАНИЕ: Неверная подпись вложения!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Это вложение может быть изменено после того, как подпись была создана.\n\nПожалуйста, обратитесь к отправителю, чтобы убедиться, что содержимое вложения соответствует оригиналу.\n\nПожалуйста свяжитесь с нами\nhttps://gpgtools.tenderapp.com/\nесли вы уверены, что вложение не было изменено."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Неизвестная ошибка! Проверка подписи не удалась."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "При проверке подлинности подписи этого вложения произошла неизвестная ошибка.\n\nПожалуйста свяжитесь с нами https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Ошибка данных подписи!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Подпись этого вложения недействительна и не может быть проверена.\n\nПожалуйста свяжитесь с нами https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Ключ подписи просрочен."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "Срок действия ключа, который использовался для подписи этого вложения, истек.\n\nВы можете попробовать обновить ключ с ID %@ в GPG Keychain и узнайте у отправителя, почему срок действия ключа истек."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Подпись вложения просрочена.."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Подпись вложения просрочена и не может быть проверена.\n\nСвяжитесь с отправителем для уточнения причины."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Частично зашифровано"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Частично подписано"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Зашифровано"; +"MESSAGE_IS_PGP_SIGNED" = "Подписано"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Неверная подпись"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Подписано неизвестным ключом"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Подписано аннулированным ключом"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Неверная подпись"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Подписано"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Сигнатуры не обнаружены"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "зашифрованное/подписанное вложение"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "зашифрованные/подписанные вложения"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "зашифрованное вложение"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "зашифрованные вложения"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "подписанное вложение"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "подписанные вложения"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "Это сообщение не возможно подписать, так как отсутствует секретный ключ для %@.\n\nПожалуйста проверьте, что ключ для этого адреса на самом деле существует в ключевой связке GPG. Добавить новый идентификатор пользователя в существующий ключ для этого адреса, если это необходимо, или создайте новый ключ для этого адреса.\n\nЕсли ключ этого адреса существует, убедитесь, что адрес в почтовом клиенте > настройки> учетные записи правильный и точно совпадает с адресом вашего ключа."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Это сообщение не может быть зашифровано, так как нет никаких открытых ключей, доступных для следующих адресов: %@.\n\nПожалуйста, используйте GPG Keychain для поиска и импорта ключей для этих адресов."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Это сообщение не может быть зашифровано. Вы должны ввести хотя бы одного получателя в первую очередь."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Зашифровано"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Подписано"; +"MESSAGE_VIEW_PGP_PART" = "Элемент PGP"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail готов."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Установленный MacGPG работает без ошибок."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Загрузите и повторно установите GPG Suite с сайта https://www.gpgtools.org, чтобы убедиться, что все необходимые компоненты установлены."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Пожалуйста, проверьте установку и настройки."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Загрузите и повторно установите GPG Suite с сайта https://www.gpgtools.org, чтобы убедиться, что все необходимые компоненты установлены."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Предупреждение: Отключение этой опции может привести к утечке конфиденциальной информации при создании сообщения"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Отключить шифрование"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Отмена"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Найдено несколько установок GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail обнаружил несколько установок в следующих местах, которые приведут к аварийному завершению:\n\n%@\n\nПожалуйста, удалите GPGMail.mailbundle в одном из мест и перезапустить Mail."; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Выход из почты"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg не найдена"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Кто-то вмешался в вашу установку GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "Для вашей защиты GPGMail не будет загружен!\n\nПожалуйста переустановите GPG Suite из https://gpgtools.org, чтобы бы была оригинальная версия то нас! "; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Невозможно загрузить стандартные настройки GPGMail!"; +NO_DEFAULTS_MESSAGE = "GPGMail не работает, как ожидалось.\n\nПожалуйста, скачайте и установите GPG Suite с https://gpgtools.org\n\nЕсли эта проблема не устранена, пожалуйста, свяжитесь с нами https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Подписка вашего сообщения не удалась из-за повреждённого кода"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "Pinentry, инструмент ответственный за запрос вашего пароля, кажется, сломан.\n\nЧтобы исправить эту проблему, переустановите GPG Suite с сайта https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Подписание ваше сообщение не удалось из-за неисправности GPG агента!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "Агент GPG, критический элемент всего GPG, кажется, сломан.\n\nЧтобы исправить эту проблему, переустановите GPG Suite с сайта https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Подписание ваше сообщение не удалось из-за ошибки связи GPG агента!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "Не возможно связаться с агентом GPG, чтобы запросить ваш пароль.\n\nЧтобы исправить эту проблему, переустановите GPG Suite с сайта https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Не удалось подписать ваше сообщение, потому что произошла неизвестная ошибка"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "К сожалению, мы не можем обработать ошибку в этой точке."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Не удалось зашифровать сообщение, потому что произошла неизвестная ошибка"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "К сожалению, GPGMail не может обработать ошибку в этой точке."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Вы ввели неправильный пароль слишком много раз."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Подписка вашего сообщения была остановлена, так как вы 3 раза ввели неправильный пароль."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nЕсли ваша проблема не устранена, пожалуйста, свяжитесь с нами https://gpgtools.tenderapp.com/ со следующим описанием ошибки:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Вы прервали расшифровку сообщения"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Сообщение не было расшифровано, так как вы сбросили запрос пароля."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Вы прервали расшифровку вложния"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Вложение не было расшифровано, так как вы сбросили запрос пароля."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite не работает, как ожидалось"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Расшифровка сообщения не удалась.\n\nПожалуйста переустановите GPG Suite с сайта https://gpgtools.org.\n\nЕсли эта проблема останется, свяжитесь с нами через сайт https://gpgtools.tenderapp.com/ прикрепя информацию, что xpc-сервис не работает как надо. "; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite не работает, как ожидалось"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Расшифровка вложения не удалась.\n\nПожалуйста переустановите GPG Suite с сайта https://gpgtools.org.\n\nЕсли эта проблема останется, свяжитесь с нами через сайт https://gpgtools.tenderapp.com/ прикрепя информацию, что xpc-сервис не работает как надо. "; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite не работает, как ожидалось"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Проверка сообщения не удалась.\n\nПожалуйста переустановите GPG Suite с сайта https://gpgtools.org.\n\nЕсли эта проблема останется, свяжитесь с нами через сайт https://gpgtools.tenderapp.com/ прикрепя информацию, что xpc-сервис не работает как надо. "; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite не работает, как ожидалось"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Проверка вложения не удалась.\n\nПожалуйста переустановите GPG Suite с сайта https://gpgtools.org.\n\nЕсли эта проблема останется, свяжитесь с нами через сайт https://gpgtools.tenderapp.com/ прикрепя информацию, что xpc-сервис не работает как надо. "; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Подписка вашего сообщения не удалась из-за возникшей во время запроса пароля проблемы "; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "Pinentry, инструмент ответственный за запрос вашего пароля, кажется, работает не в штатном режиме.\n\nЧтобы исправить эту проблему, переустановите GPG Suite с сайта https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Невозможно подписать сообщение из-за проблем с установкой GPGMail."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Чтобы исправить эту неполадку, переустановите GPG Suite с сайта https://gpgtools.org.\n\nЕсли эта проблема останется, свяжитесь с нами через сайт https://gpgtools.tenderapp.com/ прикрепя информацию, что xpc-сервис не работает как надо."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Расшифровка прикреплённого файла не удалась из-за повреждённого кода"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "Pinentry, инструмент ответственный за запрос вашего пароля, кажется, сломан.\n\nЧтобы исправить эту проблему, переустановите GPG Suite с сайта https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Расшифровка прикреплённого файла не удалась из-за дефектного кода"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "Pinentry, инструмент ответственный за запрос вашего пароля, кажется, сломан.\n\nЧтобы исправить эту проблему, переустановите GPG Suite с сайта https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Внимание: Вы собираетесь отправить незашифрованный ответ на шифрованное сообщение"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Невозможно зашифровать ваш ответ, потому что открытый ключ для следующего получателя отсутствует:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Невозможно расшифровать ваш ответ, потому что открытый ключ для следующего получателя отсутствует:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Если вы решите продолжить, ваш ответ будет отправлен в незашифрованном виде. В результате этого может произойти утечка конфиденциальной информации, ставя под угрозу вас и ваших получателей."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nЕсли вы действительно хотите отправить этот ответ в незашифрованном виде, пожалуйста, удалите предыдущую переписку в вашем ответ перед отправкой."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "В противном случае, найдите и импортируйте соответствующие открытые ключи с помощью GPG Keychain для того, чтобы отправить зашифрованный ответ."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Отправить в любом случае"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Отмена"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Отмена"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "метод защиты: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "подписать"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "не подписывать"; + diff --git a/Resources/ru.lproj/GPGMailPreferences.strings b/Resources/ru.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..6ef155f0 --- /dev/null +++ b/Resources/ru.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Обновления"; +"728.title" = "Составление"; +"733.ibShadowedToolTip" = "Часто задаваемые вопросы."; +"734.alternateTitle" = "Часто задаваемые вопросы"; +"734.title" = "База знаний"; +"781.title" = "Шифровать черновики"; +"834.title" = "Кнопка"; +"1051.ibShadowedToolTip" = "Если у вас другой вопрос."; +"1053.title" = "Сообщить о проблеме"; +"0PS-Wm-gKl.title" = "Проверить сейчас"; +"0Th-7E-Y7P.title" = "Версия: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Автоматически проверить наличие обновлений"; +"8oZ-YB-M9Q.title" = "Бета сборки публикуются чаще. Новые возможности и улучшения менее протестированы."; +"D6D-o9-63C.title" = "Показать Заметки о выпуске"; +"UhD-uR-dUs.title" = "Включить бета сборки"; +"q0m-y8-baf.title" = "Сборка:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/ru.lproj/GPGSignatureView.strings b/Resources/ru.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..987b75e4 --- /dev/null +++ b/Resources/ru.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Подписи"; +"25.title" = "OK"; +"237.title" = "имя"; +"251.title" = "Подробности"; +"252.ibShadowedNoSelectionPlaceholder" = "Нет подписи"; +"365.title" = "Имя:"; +"367.title" = "Ключ"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Алгоритм:"; +"378.title" = "Истекает:"; +"379.title" = "Создано:"; +"381.title" = "Доверенные:"; +"436.title" = "Создано:"; +"437.title" = "Подпись"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/ru.lproj/SignatureView.strings b/Resources/ru.lproj/SignatureView.strings new file mode 100644 index 00000000..d96dda14 --- /dev/null +++ b/Resources/ru.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Этой подписи не следует доверять."; +"VALIDITY_OK" = "Доверенная подпись"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Ключ этой подписи был аннулирован."; +"VALIDITY_SIGNATURE_EXPIRED" = "Дата этой подписи истекла."; +"VALIDITY_KEY_EXPIRED" = "Ключ этой подписи истек."; +"VALIDITY_KEY_REVOKED" = "Ключ этой подписи был аннулирован."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Подпись была создана неизвестным алгоритмом."; +"VALIDITY_NO_PUBLIC_KEY" = "Ключ этой подписи отсутствует в вашем Keychain."; +"VALIDITY_UNKNOWN_ERROR" = "Неизвестная ошибка подписи."; +"VALIDITY_BAD_SIGNATURE" = "Эта подпись недействительна."; diff --git a/Resources/sk.lproj/GPGAttachment.strings b/Resources/sk.lproj/GPGAttachment.strings new file mode 100644 index 00000000..7e2ce8dc --- /dev/null +++ b/Resources/sk.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Overovanie podpisu zlyhalo."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "Verejný kľúč na overenie podpisu tejto prílohy nie je vo vašej GPG databáze.\n\nStiahnite, prosím, predmetný verejný kľúč %@ pomocou programu GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Dešifrovanie prílohy zlyhalo."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Tajný kľúč na dešifrovanie tejto prílohy nie je vo vašej GPG databáze."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Príloha bola úspešne dešifrovaná."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Dvojklikom otvorte prílohu v zobrazení správy."; diff --git a/Resources/sk.lproj/GPGAttachments.strings b/Resources/sk.lproj/GPGAttachments.strings new file mode 100644 index 00000000..fab67d9a --- /dev/null +++ b/Resources/sk.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Okno"; +"8.title" = "OK"; +"210.title" = "meno"; +"211.title" = "Detaily"; +"239.title" = "Kľúč"; +"240.title" = "Meno:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Vytvorené:"; +"245.title" = "Exspirácia:"; +"246.title" = "Algoritmus:"; +"247.title" = "Ownertrust:"; +"256.title" = "Podpis"; +"257.title" = "Vytvorené:"; +"291.title" = "Podpis nebolo možné overiť."; +"293.title" = "Podpis nebolo možné overiť, pretože sa vo vašej GPG databáze nenachádza zodpovedajúci verejný kľúč. Stiahnite ho, prosím, pomocou programu GPG Keychain."; +"382.title" = "Podpis nebolo možné overiť."; +"383.title" = "Podpis nebolo možné overiť, pretože sa vo vašej GPG databáze nenachádza zodpovedajúci verejný kľúč. Stiahnite ho, prosím, pomocou programu GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/sk.lproj/GPGMail.strings b/Resources/sk.lproj/GPGMail.strings new file mode 100644 index 00000000..880a5812 --- /dev/null +++ b/Resources/sk.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Verzia: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "PGP správu nie je možné dešifrovať."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Nastal problém s dešifrovaním tejto správy. Overte, či sa vo vašej GPG kľúčenke nachádza správny kľúč."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Podpis PGP správy nie je možné overiť."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Nastal problém s čítaním PGP podpisu tejto správy."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP kľúč pre túto správu nie je vo vašej GPG databáze."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Správa obsahuje platný PGP podpis, avšak vaša GPG databáza neobsahuje korešpondujúci PGP kľúč. Použite, prosím, program GPG Keychain na jeho pridanie."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Pre tento PGP kľúč nie sú dostupné žiadne informácie."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "O tomto PGP kľúči nie sú známe žiadne ďalšie informácie, pretože nie je vo vašej GPG databáze."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Chýba tajný kľúč na dešifrovanie správy."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Dešifrovanie zlyhalo pre neznámu chybu!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Počas dešifrovania tejto správy nastala neznáma chyba.\n\nKontaktujte nás, prosím, na https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Dešifrovanie zlyhalo pre neznámu chybu!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Počas dešifrovania tejto správy nastala neznáma chyba.\n\nGPG kód chyby:\n%@\nKontaktujte nás, prosím, na https://gpgtools.tenderapp.com a vo vašej správe uveďte kód chyby."; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Na zašifrovanie tejto správy bol použitý nesprávny kľúč."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Túto správu nebolo možné dešifrovať, pretože na jej zašifrovanie bol použitý nesprávny verejný kľúč.\n\nKontaktujte nás, prosím, na https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Zašifrovaná správa je poškodená."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Táto zašifrovaná správa je poškodená a nie je možné ju dešifrovať.\n\nPožiadajte, prosím, odosielateľa o jej opätovné zaslanie."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Podpisový kľúč bol zrušený."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "POZOR: Kľúč použitý na podpísanie tejto správy bol zrušený.\n\nPomocou programu GPG Keychain by ste mali obnoviť kľúč s identifikačným reťazcom %@, aby ste zistili, či nie je k dispozícii nový. Pokiaľ nie je, alebo bol zrušený aj ten, kontaktujte odosielateľa."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Kľúč patriaci k podpisu tejto správy sa nenachádza vo vašej GPG databáze."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Správa nemohla byť overená, pretože kľúč použitý na jej podpísanie sa nenachádza vo vašej GPG databáze.\n\nPre overenie správy vyhľadajte pomocou programu GPG Keychain kľúč s identifikačným reťazcom %@ a importujte ho."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "Podpis správy bol vytvorený pomocou algoritmu, ktorý nie je podporovaný."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Táto správa nemohla byť overená, pretože jej podpis bol vytvorený pomocou algoritmu, ktorý nie je podporovaný.\n\nKontaktujte nás, prosím, na https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "POZOR: Podpis správy je neplatný!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "POZOR: Táto správa mohla byť pozmenená po vytvorení podpisu.\n\nKontaktujte, prosím, odosielateľa, aby ste sa uistili, že obsah správy zodpovedá originálu.\n\nAk ste si istý, že správa nebola pozmenená, kontaktujte nás, prosím, na https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Overovanie podpisu zlyhalo pre neznámu chybu!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Počas overovanie podpisu tejto správy došlo k neznámej chybe.\n\nKontaktujte nás, prosím, na https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Chyba informačného súboru podpisu správy."; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Podpis tejto správy je neplatný a nie je možné ho overiť.\n\nKontaktujte nás, prosím, na https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Kľúč k danému podpisu správy je exspirovaný."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "POZOR: Kľúč použitý na podpísanie tejto správy je exspirovaný.\n\nMôžete sa pokúsiť o obnovenie kľúča s identifikačným reťazcom %@ pomocou programu GPG Keychain, alebo kontaktovať odosielateľa."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Podpis je exspirovaný."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Podpis je exspirovaný a nie je možné ho overiť.\n\nKontaktujte odosielateľa."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d príloh nebolo možné dešifrovať alebo overiť."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Pre ďalšie informácie, prosím, kliknite na ikonu prílohy v hlavičke správy."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d príloh nebolo možné overiť."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Pre ďalšie informácie, prosím, kliknite na ikonu prílohy v hlavičke správy."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d príloh nebolo možné dešifrovať."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Pre ďalšie informácie, prosím, kliknite na ikonu prílohy v hlavičke správy."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d príloh nebolo možné overiť."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Pre ďalšie informácie, prosím, kliknite na ikonu prílohy v hlavičke správy."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d príloh nebolo možné dešifrovať."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Pre ďalšie informácie, prosím, kliknite na ikonu prílohy v hlavičke správy."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Chýba tajný kľúč na dešifrovanie prílohy."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Dešifrovanie zlyhalo pre neznámu chybu!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Počas dešifrovania tejto prílohy nastala neznáma chyba.\n\nKontaktujte nás, prosím, na https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Dešifrovanie zlyhalo pre neznámu chybu!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Počas dešifrovania tejto prílohy nastala neznáma chyba.\n\nGPG kód chyby:\n%@\nKontaktujte nás, prosím, na https://gpgtools.tenderapp.com a vo vašej správe uveďte kód chyby."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Na zašifrovanie tejto prílohy bol použitý nesprávny kľúč."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Túto prílohu nebolo možné dešifrovať, pretože na jej zašifrovanie bol použitý nesprávny verejný kľúč.\n\nKontaktujte nás, prosím, na https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Zašifrovaná príloha je poškodená."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Táto zašifrovaná príloha je poškodená a nie je možné ju dešifrovať.\n\nPožiadajte, prosím, odosielateľa o jej opätovné zaslanie."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Podpisový kľúč bol zrušený."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "POZOR: Kľúč použitý na podpísanie tejto prílohy bol zrušený.\n\nPomocou programu GPG Keychain by ste mali obnoviť kľúč s identifikačným reťazcom %@, aby ste zistili, či nie je k dispozícii nový. Pokiaľ nie je, alebo bol zrušený aj ten, kontaktujte odosielateľa."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Tento podpisový kľúč nie je vo vašej GPG databáze."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Príloha nemohla byť overená, pretože kľúč použitý na jej podpísanie sa nenachádza vo vašej GPG databáze.\n\nPre overenie správy vyhľadajte pomocou programu GPG Keychain kľúč s identifikačným reťazcom %@ a importujte ho."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "Podpis prílohy bol vytvorený pomocou algoritmu, ktorý nie je podporovaný."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Táto príloha nemohla byť overená, pretože jej podpis bol vytvorený pomocou algoritmu, ktorý nie je podporovaný.\n\nKontaktujte nás, prosím, na https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "POZOR: Podpis prílohy je neplatný!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "POZOR: Táto príloha mohla byť pozmenená po vytvorení podpisu.\n\nKontaktujte, prosím, odosielateľa, aby ste sa uistili, že obsah správy zodpovedá originálu.\n\nAk ste si istý, že správa nebola pozmenená, kontaktujte nás, prosím, na https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Overenie podpisu zlyhalo pre neznámu chybu!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Počas overovania tohto podpisu prílohy nastala neznáma chyba.\n\nKontaktujte nás, prosím, na https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Chyba informačného súboru podpisu."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Tento podpis prílohy je neplatný a nie je možné ho overiť.\n\nKontaktujte nás, prosím, na https://gpgtools.tenderapp.com."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Kľúč k danému podpisu je exspirovaný."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "POZOR: Kľúč použitý na podpísanie tejto prílohy je exspirovaný.\n\nMôžete sa pokúsiť o obnovenie kľúča s identifikačným reťazcom %@ pomocou programu GPG Keychain, alebo kontaktovať odosielateľa."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Podpis prílohy je exspirovaný."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Podpis prílohy je exspirovaný a nie je možné ho overiť.\n\nKontaktujte odosielateľa."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Parciálne zašifrované"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Parciálne podpísané"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Zašifrované"; +"MESSAGE_IS_PGP_SIGNED" = "Podpísané"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Neplatný podpis"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Podpísané neznámym kľúčom"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Podpísané zrušeným kľúčom"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Neplatný podpis"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Podpísané"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No signature found"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "zašifrovaná/podpísaná príloha"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "zašifrované/podpísané prílohy"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "zašifrovaná príloha"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "zašifrované prílohy"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "podpísaná príloha"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "podpísané prílohy"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Táto správa nemôže byť zašifrovaná, pretože pre adresu %@ nie sú dostupné žiadne verejné kľúče.\n\nNa ich vyhľadanie a importovanie použite, prosím, program GPG Keychain."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Táto správa nemôže byť zašifrovaná. Najskôr musíte zadať aspoň jedného adresáta."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Zašifrované"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Podpísané"; +"MESSAGE_VIEW_PGP_PART" = "PGP časť"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail je pripravený."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Vaša MacGPG inštalácia pracuje bezchybne."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Pre nainštalovanie všetkých modulov GPG Suite stiahnite, prosím, inštalátor GPG Suite z http://www.gpgtools.org."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Skontrolujte vašu inštaláciu a konfiguráciu, prosím."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Pre nainštalovanie všetkých modulov GPG Suite stiahnite, prosím, inštalátor GPG Suite z http://www.gpgtools.org."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Boli nájdené viaceré inštalácie GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail objavil viaceré inštalácie v nasledovných lokáciách, čo vedie k okamžitému ukončeniu programu:\n\n%@\n\nOdstráňte, prosím, súbor GPGMail.mailbundle z jednej z uvedených lokácií a reštartujte program Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Ukončiť Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/sk.lproj/GPGMailPreferences.strings b/Resources/sk.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..7717b8e1 --- /dev/null +++ b/Resources/sk.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Aktualizácie"; +"728.title" = "Kompozícia"; +"733.ibShadowedToolTip" = "Často kladené otázky."; +"734.alternateTitle" = "Často kladené otázky"; +"734.title" = "Knowledge Base"; +"781.title" = "Encrypt drafts"; +"834.title" = "Tlačidlo"; +"1051.ibShadowedToolTip" = "Ak máte akékoľvek iné otázky."; +"1053.title" = "Report Problem"; +"0PS-Wm-gKl.title" = "Skontrolovať teraz"; +"0Th-7E-Y7P.title" = "Verzia: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Automatická kontrola dostupnosti aktualizácií"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "Show Release Notes"; +"UhD-uR-dUs.title" = "Include beta builds"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/sk.lproj/GPGSignatureView.strings b/Resources/sk.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..06cb4688 --- /dev/null +++ b/Resources/sk.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Podpisy"; +"25.title" = "OK"; +"237.title" = "meno"; +"251.title" = "Detaily"; +"252.ibShadowedNoSelectionPlaceholder" = "Bez podpisu"; +"365.title" = "Meno:"; +"367.title" = "Kľúč"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algoritmus:"; +"378.title" = "Exspirácia:"; +"379.title" = "Vytvorený:"; +"381.title" = "Ownertrust:"; +"436.title" = "Vytvorený:"; +"437.title" = "Podpis"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/sk.lproj/SignatureView.strings b/Resources/sk.lproj/SignatureView.strings new file mode 100644 index 00000000..d8f052cc --- /dev/null +++ b/Resources/sk.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Tento podpis nie je dôveryhodný."; +"VALIDITY_OK" = "Tento podpis je dôveryhodný."; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Kľúč k tomuto podpisu bol zrušený."; +"VALIDITY_SIGNATURE_EXPIRED" = "Podpis je exspirovaný."; +"VALIDITY_KEY_EXPIRED" = "Kľúč k tomuto podpisu je exspirovaný."; +"VALIDITY_KEY_REVOKED" = "Kľúč k tomuto podpisu bol zrušený."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Podpis bol vytvorený neznámym algoritmom."; +"VALIDITY_NO_PUBLIC_KEY" = "Kľúč k tomuto podpisu nie je vo vašej GPG databáze."; +"VALIDITY_UNKNOWN_ERROR" = "Neznáma chyba podpisu."; +"VALIDITY_BAD_SIGNATURE" = "Tento podpis je neplatný."; diff --git a/Resources/sv.lproj/Credits.rtf b/Resources/sv.lproj/Credits.rtf new file mode 100644 index 00000000..0bbac5ee --- /dev/null +++ b/Resources/sv.lproj/Credits.rtf @@ -0,0 +1,11 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf350 +{\fonttbl\f0\fnil\fcharset0 LucidaGrande;} +{\colortbl;\red255\green255\blue255;} +\vieww9000\viewh8400\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc\pardirnatural + +\f0\fs22 \cf0 Contact: {\field{\*\fldinst{HYPERLINK "mailto:gpgtools-users@lists.gpgtools.org"}}{\fldrslt gpgtools-users@lists.gpgtools.org}}\ +Website: {\field{\*\fldinst{HYPERLINK "http://gpgtools.org"}}{\fldrslt http://www.gpgtools.org}}\ +\ +\ +Icons ({\field{\*\fldinst{HYPERLINK "http://creativecommons.org/licenses/by-nc-sa/3.0/"}}{\fldrslt CC BY-NC-SA 3.0}}) by Josef Sahlberg {\field{\*\fldinst{HYPERLINK "http://yusf.se"}}{\fldrslt http://yusf.se}}} \ No newline at end of file diff --git a/Resources/sv.lproj/GPGAttachment.strings b/Resources/sv.lproj/GPGAttachment.strings new file mode 100644 index 00000000..0dd22b11 --- /dev/null +++ b/Resources/sv.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Det gick inte att verifiera signaturen."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "Den publika nyckeln som behövs för att verifiera bilagans signatur finns inte i din nyckelring. \n\nHämta den publika nyckeln %@ med GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Det gick inte att dekryptera bilagan."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Den privata nyckel som behövs för att dekryptera denna bilaga finns inte i din nyckelring."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Bilagan dekrypterades."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Öppna en bilaga i meddelandet genom att dubbelklicka."; diff --git a/Resources/sv.lproj/GPGAttachments.strings b/Resources/sv.lproj/GPGAttachments.strings new file mode 100644 index 00000000..7db481a6 --- /dev/null +++ b/Resources/sv.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Fönster"; +"8.title" = "OK"; +"210.title" = "namn"; +"211.title" = "Detaljer"; +"239.title" = "Nyckel"; +"240.title" = "Namn:"; +"241.title" = "E-post:"; +"243.title" = "Fingeravtryck:"; +"244.title" = "Skapad:"; +"245.title" = "Går ut:"; +"246.title" = "Algoritm:"; +"247.title" = "Ägarförtroende:"; +"256.title" = "Signatur"; +"257.title" = "Skapad:"; +"291.title" = "Signaturen kunde inte verifieras."; +"293.title" = "Signaturen kunde inte verifieras eftersom den publika nyckeln inte finns i din nyckelring. \nHämta nyckeln med GPG Keychain."; +"382.title" = "Signaturen kunde inte verifieras."; +"383.title" = "Signaturen kunde inte verifieras eftersom den publika nyckeln inte finns i din nyckelring. \nHämta nyckeln med GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Aldrig"; diff --git a/Resources/sv.lproj/GPGMail.strings b/Resources/sv.lproj/GPGMail.strings new file mode 100644 index 00000000..627a0887 --- /dev/null +++ b/Resources/sv.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Version: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Kunde inte dekryptera PGP-meddelande."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Ett problem uppstod när meddelandet skulle dekrypteras. Kontrollera att du har en giltig nyckel i din GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Kunde inte verifiera PGP-meddelandesignatur."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Ett problem uppstod när PGP-signaturen i detta meddelande skulle läsas."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "PGP-nyckeln för detta meddelande finns inte i din nyckelring."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Meddelandet har en giltig PGP-signatur, men PGP-nyckeln finns inte i din nyckelring. Använd GPG Keychain för att lägga till den."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Ingen information finns tillgänglig för denna PGP-nyckel."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Ingen ytterligare information finns tillgänglig för denna PGP-nyckel eftersom den inte finns i din nyckelring."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Den privata nyckeln för att dekryptera meddelandet saknas."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "Ingen av följande privata nycklar kunde hittas i din nyckelring (%@). Den privata nyckeln behövs för att dekryptera detta meddelande. \n\nKontrollera med avsändaren att de använt din rätta publika nyckel.\nKontrollera en säkerhetskopia av din nyckelring, och försök att importera den privata nyckeln därifrån."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Dekrypteringen misslyckades på grund av ett okänt fel!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Ett okänt fel inträffade när denna bilaga skulle dekrypteras.\n\nKontakta oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Dekrypteringen misslyckades på grund av ett okänt fel!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Ett okänt fel uppstod när bilagan skulle dekrypteras.\n\nGPG-felmeddelande:\n%@\nKontakta oss på https://gpgtools.tenderapp.com, och inkludera GPG-felmeddelandet."; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Fel nyckel användes för att kryptera meddelandet."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Detta meddelande kunde inte dekrypteras eftersom fel publik nyckel användes för att kryptera det. \n\nKontakta oss på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Det krypterade meddelandet är skadat."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Detta krypterade meddelande är skadat och kunde inte dekrypteras.\n\nBe avsändaren att skicka meddelandet igen."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signaturnyckeln återkallades."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "OBS: Nyckeln som användes för att signera detta meddelande har återkallats.\n\nDu bör uppdatera nyckeln med ID %@ i GPG Keychain för att se om det finns en ny. Om den nya nyckeln också är återkallad bör du kontakta avsändaren för information om varför den återkallats."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Nyckeln till detta meddelande finns inte i din GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Detta meddelande kunde inte verifieras, eftersom nyckeln som användes för att signera inte finns i din GPG Keychain.\n\nSök efter nyckeln med ID %@ i GPG Keychain och importera den för att verifiera meddelandet."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "Meddelandesignaturen skapades med en algoritm som inte stöds."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Detta meddelande kunde inte verifieras, eftersom signaturen skapades med en algoritm som inte stöds.\n\nKontakta oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "OBS: Signaturen för detta meddelande är ogiltig!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Detta meddelande kan ha ändrats efter att signaturen skapades. \n\nKontakta avsändaren för att kontrollera att meddelandets innehåll stämmer överens med originalets. \n\nKontakta oss på\nhttps://gpgtools.tenderapp.com/\nom du är säker på att meddelandet inte ändrats."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verifiering av meddelandesignaturen misslyckades på grund av ett okänt fel!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Ett okänt fel inträffade när signaturen för detta meddelande skulle verifieras.\n\nKontakta oss på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Datafel i meddelandets signatur!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Detta meddelandes signatur är ogiltig och kunde inte verifieras.\n\nKontakta oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Meddelandesignaturens nyckel har gått ut."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "Nyckeln som användes för att signera detta meddelande har gått ut. \n\nDu kan försöka att uppdatera nyckeln med ID %@ i GPG Keychain och fråga avsändaren varför nyckeln gått ut."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Meddelandesignaturen har gått ut."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Signaturen har upphört och kunde inte kontrolleras.\n\nKontakta avsändaren och fråga varför signaturen upphört."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG är inte installerat"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Dekrypteringen misslyckades eftersom MacGPG inte är installerat.\n\nHämta och installera om GPG Suite från https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG är inte installerat"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifieringen misslyckades eftersom MacGPG inte är installerat.\n\nHämta och installera om GPG Suite från https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d bilagor kunde inte avkrypteras eller kontrolleras."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Klicka på bilageikonen i brevhuvudets säkerhetsdel för mer detaljer."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d bilagor kunde inte verifieras."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Klicka på bilageikonen i brevhuvudets säkerhetsdel för mer detaljer."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d bilagor kunde inte dekrypteras."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Klicka på bilageikonen i brevhuvudets säkerhetsdel för mer detaljer."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d bilaga kunde inte kontrolleras."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Klicka på bilageikonen i brevhuvudets säkerhetsdel för mer detaljer."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d-bilagan kunde inte avkrypteras."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Klicka på bilageikonen i brevhuvudets säkerhetsdel för mer detaljer."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Den privata nyckeln för dekryptering av bilagan saknas."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "Ingen av följande privata nycklar kunde hittas i din nyckelring (%@). Den privata nyckeln behövs för att dekryptera denna bilaga. \n\nKontrollera med avsändaren att de använt din rätta publika nyckel.\nKontrollera en säkerhetskopia av din nyckelring, och försök att importera den privata nyckeln därifrån."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Avkrypteringen misslyckades på grund av ett okänt fel!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Ett okänt fel inträffade när denna bilaga skulle dekrypteras.\n\nKontakta oss på https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Avkrypteringen misslyckades på grund av ett okänt fel!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Ett okänt fel uppstod när bilagan skulle dekrypteras.\n\nGPG-felmeddelande:\n%@\nKontakta oss på https://gpgtools.tenderapp.com, och inkludera GPG-felmeddelandet.\n\n"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Fel nyckel användes vid kryptering av bilagan."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Denna bilaga kunde inte dekrypteras eftersom fel publika nyckel användes för att kryptera den. \n\nKontakta oss på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Den krypterade bilagan är skadad."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Den krypterade bilagan är skadad och kunde inte avkrypteras.\n\nBe avsändaren att skicka meddelandet igen."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signaturens nyckel har återkallats."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "OBS: Nyckeln som använts för att signera denna bilaga har återkallats.\n\nUppdatera nyckeln med ID %@ i GPG Keychain för att kontrollera om ny nyckel finns tillgänglig. Om även den nya nyckeln är återkallad, kontrollera med avsändaren om varför den återkallats."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Signaturens nyckel finns inte i din GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Bilagans signatur kunde inte verifieras, eftersom nyckel som användes för att signera inte finns i din GPG Keychain.\n\nSök efter nyckeln med ID %@ i GPG Keychain och importera den för att verifiera bilagan."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "Bilagans signatur skapades med en algoritm som inte stöds."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Denna bilaga kunde inte verifieras eftersom signaturens nyckel skapades med en algoritm som inte stöds. \n\nKontakta oss på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "OBS: Bilagans signatur är ogiltig!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "Bilagan kan ha ändrats efter att signaturen skapades. \n\nKontakta avsändaren för att kontrollera att bilagans innehåll stämmer överens med originalet. \n\nKontakta oss på\nhttps://gpgtools.tenderapp.com\nom du är säker på att bilagan inte har ändrats."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Verifieringen av signaturen misslyckades på grund av ett okänt fel!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Ett okänt fel inträffade när bilagans signatur skulle verifieras. \n\nKontakta oss på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signatur-data felaktig!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Denna bilagas signatur är ogiltig och kunde inte verifieras. \n\nKontakta oss på https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Signaturens nyckel har upphört."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "Nyckeln som använts för att signera denna bilaga har gått ut.\n\nDu kan försöka att uppdatera nyckeln med ID %@ i GPG Keychain och fråga avsändaren varför nyckeln gått ut."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Signaturen i bilagan har gått ut."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Bilagans signatur har gått ut och kunde inte verifieras. \n\nFråga avsändaren varför signaturen har gått ut."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Delvis krypterad"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Delvis signerad"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Krypterat"; +"MESSAGE_IS_PGP_SIGNED" = "Signerat"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Ogiltig signatur"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signerad med okänd nyckel"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signerad med en återkallad nyckel"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Ogiltig signatur"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signerad"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "Ingen signatur hittades"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "krypterad/signerad bilaga"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "krypterade/signerade bilagor"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "krypterad bilaga"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "krypterade bilagor"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signerad bilaga"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signerade bilagor"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "Detta meddelande kan inte signeras, eftersom det inte finns någon privat nyckel för %@. \n\nSe till att en privat nyckel för denna adress finns i GPG Keychain. Lägg till en ny UID för en befintlig nyckel för denna adress vid behov, eller skapa en ny nyckel för denna adress. \n\nOm en nyckel för denna adress finns, se till att den adressen är korrekt i Mail > inställningar > Konton och att den överensstämmer helt med din nyckels adress."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Detta meddelande kan inte krypteras, eftersom det inte finns någon publik nyckel för följande adress/er: %@.\n\nAnvänd GPG Keychain för att söka efter och importera nycklar för dessa adresser."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Detta meddelande kan inte krypteras. Du måste ange minst en mottagare först."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Kryperat"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signerat"; +"MESSAGE_VIEW_PGP_PART" = "PGP-del"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail är redo."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Din MacGPG2-installation fungerar utan fel."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG är inte installerat. Kontrollera din installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Hämta och installera om GPG Suite från https://www.gpgtools.org för att försäkra dig om att alla komponenter är installerade."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Kontrollera din installation och konfiguration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Hämta och installera om GPG Suite från https://www.gpgtools.org för att försäkra dig om att alla komponenter är installerade."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Varning: Att avaktivera det här alternativet kan leda till att känslig information läcker ut när du skriver ett meddelande"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "Om alternativet \"Spara utkast på servern\" är aktiverat för dina konton kommer macOS Mail att spara dina utkast på e-postservern automatiskt medan du skriver ett meddelande.\nGenom att avaktivera \"Kryptera utkast\" kommer dina utkast att sparas i klartext (inte krypterade) så att alla med tillgång till e-postservern kan läsa dem.\n\nOm du fortsätter ha \"Kryptera utkast\" aktiverat kommer dina utkast att krypteras innan de sparas på en e-postserver och endast du kommer att kunna läsa dem.\n\nVill du fortfarande avaktivera \"Kryptera utkast\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Avaktivera kryptering"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Avbryt"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Hittade flera installationer av GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail upptäckte fler installationer på följande platser, och detta kommer att leda till omedelbar krasch:\n\n%@\n\nTa bort GPGMail.mailbundle på en av dessa platser och starta om Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Avsluta Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg hittades inte"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg hittades inte på ditt system. Hämta och installera GPG Suite från https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Någon har mixtrat med din installation av GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "För att skydda dig kommer GPGMail inte att läsas in! \n\nHämta och ominstallera den senaste versionen av GPG Suite från https://gpgtools.org för att vara säker på att du har en version som verkligen är från oss!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Kunde inte läsa in standardinställningar för GPGMail!"; +NO_DEFAULTS_MESSAGE = "GPGMail fungerar inte som väntat. \n\nHämta och installera om GPG Suite från https://gpgtools.org \n\nKontakta oss på https://gpgtools.tenderapp.com om problemet skulle kvarstå."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Det gick inte att dekryptera meddelandet eftersom PIN-inmatningen är defekt!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "PIN-inmatningens hjälpprogram som ansvarar för att begära ditt lösenord fungerar inte som det ska. \n\nLös detta problem genom att hämta och ominstallera GPG Suite från https://gpgtools.org"; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Det gick inte att signera ditt meddelande eftersom GPG-agenten är defekt!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "GPG-agenten, en nödvändig del av GPG, verkar vara defekt.\n\nLös detta problem genom att ominstallera GPG Suite från https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signeringen av ditt meddelande misslyckades pga. ett kommunikationsfel hos GPG-agenten! "; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "Det gick inte att kommunicera med GPG-agenten för att begära ditt lösenord.\n\nFör att lösa detta, ominstallera GPG Suite från https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signeringen av ditt meddelande misslyckads pga. ett okänt fel."; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Tyvärr kan vi inte hantera detta fel just nu."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Krypteringen av ditt meddelande misslyckades pga. ett okänt fel."; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Tyvärr kan GPGMail inte hantera detta fel just nu."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "Du angav fel lösenord för många gånger."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signeringen av ditt meddelande avbröts eftersom du angav fel lösenord 3 gånger."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nOm ditt problem kvarstår, kontakta oss på https://gpgtools.tenderapp.com med följande felbeskrivning:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Du avbröt dekrypteringen av meddelandet."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Meddelandet kunde inte dekrypteras eftersom du avbröt begäran efter lösenordet."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "Du avbröt dekrypteringen av bilagan."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "Bilagan kunde inte dekrypteras eftersom du avbröt begäran av lösenordet."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite fungerar inte som det ska"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Meddelandet kunde inte dekrypteras. \n\nHämta och ominstallera GPG Suite från https://gpgtools.org\n\nKontakta oss på https://gpgtools.tenderapp.com/ om problemet skulle kvarstå, och inkludera informationen att \"xpc service\" inte fungerar ordentligt."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite fungerar inte som det ska"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Bilagan kunde inte dekrypteras. \n\nHämta och ominstallera GPG Suite från https://gpgtools.org.\n\nKontakta oss på https://gpgtools.tenderapp.com/ om problemet skulle kvarstå, och inkludera informationen att \"xpc service\" inte fungerar ordentligt."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite fungerar inte som det ska"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Meddelandet kunde inte verifieras. \n\nHämta och ominstallera GPG Suite från https://gpgtools.org.\n\nKontakta oss på https://gpgtools.tenderapp.com/ om problemet skulle kvarstå, och inkludera informationen att \"xpc service\" inte fungerar ordentligt."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite fungerar inte som det ska"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Bilagan kunde inte verifieras. \n\nHämta och ominstallera GPG Suite från https://gpgtools.org.\n\nKontakta oss på https://gpgtools.tenderapp.com/ om problemet skulle kvarstå, och inkludera informationen att \"xpc service\" inte fungerar ordentligt."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Det gick inte att signera ditt meddelande då ett problem uppstod vid begäran av lösenordet"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "PIN-inmatningens hjälpprogram som ansvarar för att begära ditt lösenord fungerar inte som det ska. \n\nLös detta problem genom att hämta och ominstallera GPG Suite från https://gpgtools.org"; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Det gick inte att signera ditt meddelande pga. ett fel i din GPGMail-installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "Lös detta problem genom att hämta och ominstallera GPG Suite från https://gpgtools.org.\n\nKontakta oss på https://gpgtools.tenderapp.com om problemet skulle kvarstå, och inkludera informationen att \"xpc service\" inte fungerar ordentligt."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Det gick inte att dekryptera meddelandet eftersom PIN-inmatningen är defekt"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "PIN-inmatningens hjälpprogram som ansvarar för att begära ditt lösenord fungerar inte som det ska. \n\nLös detta problem genom att hämta och ominstallera GPG Suite från https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Det gick inte att dekryptera bilagan eftersom PIN-inmatningen är defekt"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "PIN-inmatningens hjälpprogram som ansvarar för att begära ditt lösenord fungerar inte som det ska. \n\nLös detta problem genom att hämta och ominstallera GPG Suite från https://gpgtools.org"; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Obs: Du kommer att skicka ett okrypterat svar på ett krypterat meddelande"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Det är inte möjligt att kryptera ditt svar, eftersom den publika nyckeln för följande mottagare saknas:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Det är inte möjligt att kryptera ditt svar, eftersom publika nycklar för följande mottagare saknas:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "Om du väljer att fortsätta kommer ditt svar att skickas okrypterat. Detta kan leda till att hemlig information läcker ut, vilket kan leda till att du och dina mottagare hamnar i fara."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nOm du verkligen vill skicka detta svar okrypterat, ta bort all tidigare korrespondens från ditt svar innan du skickar det."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Sök efter och importera annars de aktuella publika nycklarna med hjälp av GPG Keychain för att skicka svaret krypterat. "; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Sök efter och importera annars den aktuella publika nyckeln med hjälp av GPG Keychain för att skicka svaret krypterat. "; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Skicka ändå"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Avbryt"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Varning: Du kommer att vidarebefordra den dekrypterade versionen av ett krypterat meddelande"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "Det är inte möjligt att kryptera meddelandet du kommer att vidarebefordra, eftersom den publika nyckeln för följande mottagare saknas:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "Det är inte möjligt att kryptera meddelandet du kommer att vidarebefordra, eftersom publika nycklar för följande mottagare saknas:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "Om du väljer att fortsätta kommer ditt meddelande som ska vidarebefordras att skickas okrypterat. Detta kan leda till att hemlig information läcker ut, vilket kan leda till att du och dina mottagare hamnar i fara."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Sök efter och importera annars de aktuella publika nycklarna med hjälp av GPG Keychain för att skicka en krypterad version av meddelandet som ska vidarebefordras."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Sök efter och importera annars den aktuella publika nyckeln med hjälp av GPG Keychain för att skicka en krypterad version av meddelandet som ska vidarebefordras."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Vidarebefordra ändå"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Avbryt"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Säkerhetsmetod: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Signera"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Signera inte"; + diff --git a/Resources/sv.lproj/GPGMailPreferences.strings b/Resources/sv.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..36629916 --- /dev/null +++ b/Resources/sv.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Uppdateringar"; +"728.title" = "Skriva"; +"733.ibShadowedToolTip" = "Vanliga frågor."; +"734.alternateTitle" = "Vanliga frågor"; +"734.title" = "Dokumentation"; +"781.title" = "Kryptera utkast"; +"834.title" = "Knapp"; +"1051.ibShadowedToolTip" = "Om du har andra frågor."; +"1053.title" = "Rapportera problem"; +"0PS-Wm-gKl.title" = "Kontrollera nu"; +"0Th-7E-Y7P.title" = "Version: xxx"; +"2ul-d0-5ir.title" = "Signera nya e-postmeddelanden"; +"80G-ZN-hjm.title" = "Leta efter uppdateringar automatiskt"; +"8oZ-YB-M9Q.title" = "Beta-byggen publiceras oftare. Nya funktioner och förbättringar är mindre testade."; +"D6D-o9-63C.title" = "Visa versionsinformation"; +"UhD-uR-dUs.title" = "Inkludera beta-byggen"; +"q0m-y8-baf.title" = "Bygge:"; +"yJs-2y-8Cb.title" = "Kryptera nya e-postmeddelanden"; diff --git a/Resources/sv.lproj/GPGSignatureView.strings b/Resources/sv.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..405c914e --- /dev/null +++ b/Resources/sv.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Signaturer"; +"25.title" = "OK"; +"237.title" = "namn"; +"251.title" = "Detaljer"; +"252.ibShadowedNoSelectionPlaceholder" = "Ingen signatur"; +"365.title" = "Namn:"; +"367.title" = "Nyckel"; +"369.title" = "E-post:"; +"372.title" = "Fingeravtryck:"; +"377.title" = "Algoritm:"; +"378.title" = "Går ut:"; +"379.title" = "Skapad:"; +"381.title" = "Ägarförtroende:"; +"436.title" = "Skapad:"; +"437.title" = "Signatur"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Aldrig"; diff --git a/Resources/sv.lproj/SignatureView.strings b/Resources/sv.lproj/SignatureView.strings new file mode 100644 index 00000000..d5c1b896 --- /dev/null +++ b/Resources/sv.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Den här signaturen är inte betrodd."; +"VALIDITY_OK" = "Den här signaturen är betrodd"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Nyckeln för den här signaturen har återkallats."; +"VALIDITY_SIGNATURE_EXPIRED" = "Den här signaturen har gått ut."; +"VALIDITY_KEY_EXPIRED" = "Nyckeln för signaturen har förfallit."; +"VALIDITY_KEY_REVOKED" = "Nyckeln för den här signaturen har återkallats."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Signaturen skapades med en okänd algoritm."; +"VALIDITY_NO_PUBLIC_KEY" = "Nyckeln för signaturen finns inte i din nyckelring."; +"VALIDITY_UNKNOWN_ERROR" = "Okänt signaturfel."; +"VALIDITY_BAD_SIGNATURE" = "Den här signaturen är ogiltig."; diff --git a/Resources/tr.lproj/GPGAttachment.strings b/Resources/tr.lproj/GPGAttachment.strings new file mode 100644 index 00000000..541455b9 --- /dev/null +++ b/Resources/tr.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "İmzanın doğrulanması başarısız oldu."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "İmzanın doğrulanması için gereken açık anahtar, anahtar zincirinizde değil. Lütfen %@ anahtarını GPG Anahtar Zinciri erişimini kullanarak sisteme dahil edin."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Dosya ekinin çözülmesi başarısız oldu."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Dosya ekinin çözülmesi için gereken gizli anahtar, anahtar zincirinizde değil."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Dosya ekinin çözülmesi başarılığ"; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Dosya ekini açmak için mesaj görünümünde öğeye çift tıklayın."; diff --git a/Resources/tr.lproj/GPGAttachments.strings b/Resources/tr.lproj/GPGAttachments.strings new file mode 100644 index 00000000..f6f40f0e --- /dev/null +++ b/Resources/tr.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Window"; +"8.title" = "OK"; +"210.title" = "isim"; +"211.title" = "Ayrıntılar"; +"239.title" = "Anahtar"; +"240.title" = "İsim:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Oluşturulma:"; +"245.title" = "Son Geçerlilik:"; +"246.title" = "Algoritma:"; +"247.title" = "Otorite:"; +"256.title" = "İmza"; +"257.title" = "Oluşturulma:"; +"291.title" = "The signature could not be verified."; +"293.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"382.title" = "The signature could not be verified."; +"383.title" = "The signature could not be verified because the public key is not in your keychain.\nPlease download the key using GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/tr.lproj/GPGMail.strings b/Resources/tr.lproj/GPGMail.strings new file mode 100644 index 00000000..bf1a263f --- /dev/null +++ b/Resources/tr.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Sürüm:%@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "PGP mesajı çözülemiyor."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Mesajın çözülmesi başarısız oldu. Öncelikle geçerli anahtarın GPG Anahtar Zinciri'nde var olduğundan emin olun."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "PGP mesajının imzası doğrulanamıyor."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Mesajın PGP imzası okunamıyor."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "Bu mesaj için gereken PGP anahtarı anahtar zincirinde yok."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Mesaj geçerli bir PGP imzasına sahip ancak gereken PGP anahtarına ulaşılamadı. GPG Anahtar Zincirini kullanarak söz konusu anahtarı ekleyin."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Bu PGP anahtar hakknda fikrimiz yok."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Bu anahtar hakknda baka bilgi yok nk anahtarlkta yok."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Mesajın çözülmesi için gereken özel anahtar yok."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this message.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this message."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This message could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted message is damaged."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted message is damaged and could not be decrypted.\n\nPlease ask the sender to re-send the message."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this message was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The key to this message signature is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The message could not be verified, since the key which was used to sign this message is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the message."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "The message signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This message could not be verified, since the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The signature of this message is invalid!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Verification of message signature failed with unknown error!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this message's signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Message signature data error!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This message's signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Message signature's key is expired."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this message is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The message signature is expired."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d attachments failed to decrypt or verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d attachments failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d attachments failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d attachment failed to verify."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d attachment failed to decrypt."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Please click on the attachment icon in the message header security part for further details."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Secret key to decrypt the attachment is missing."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Decryption failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Wrong key used to encrypt this attachment."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This attachment could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "The encrypted attachment is damaged."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted attachment is damaged and could not be decrypted.\n\nPlease ask the sender to send you the message again."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Signature key was revoked."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "The signature key is not in your GPG Keychain."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "The attachment signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This attachment could not be verified, since the key to the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "ATTENTION: The attachment signature is invalid!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\n if you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Signature verification failed with unknown error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Signature data error!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This attachment signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "The key of the signature is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Partly Encrypted"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Partly Signed"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Encrypted"; +"MESSAGE_IS_PGP_SIGNED" = "Signed"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Invalid Signature"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Signed with unknown key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Signed with revoked key"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Invalid signature"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Signed"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No signature found"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "encrypted/signed attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "encrypted attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "encrypted attachments"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "signed attachment"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "signed attachments"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "This message can't be encrypted, since there are no public keys available for the following addresses: %@.\n\nPlease use GPG Keychain to search and import the keys for those addresses."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Encrypted"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Signed"; +"MESSAGE_VIEW_PGP_PART" = "PGP part"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail is ready."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Your MacGPG installation is working with no errors."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Please check your installation and configuration."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Please download and re-install GPG Suite from https://www.gpgtools.org to ensure all required components are installed."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Found multiple installations of GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/tr.lproj/GPGMailPreferences.strings b/Resources/tr.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..84500104 --- /dev/null +++ b/Resources/tr.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Güncellemeler"; +"728.title" = "Oluşturuluyor"; +"733.ibShadowedToolTip" = "Sık Sorulan Sorular"; +"734.alternateTitle" = "Sık Sorulan Sorular"; +"734.title" = "Knowledge Base"; +"781.title" = "Encrypt drafts"; +"834.title" = "Buton"; +"1051.ibShadowedToolTip" = "Başka bir sorunuz mu var?"; +"1053.title" = "Report Problem"; +"0PS-Wm-gKl.title" = "Check Now"; +"0Th-7E-Y7P.title" = "Version: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Automatically check for updates"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "Show Release Notes"; +"UhD-uR-dUs.title" = "Include beta builds"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/tr.lproj/GPGSignatureView.strings b/Resources/tr.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..b9fa3dfe --- /dev/null +++ b/Resources/tr.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "İmzalar"; +"25.title" = "Tamam"; +"237.title" = "isim"; +"251.title" = "Ayrıntılar"; +"252.ibShadowedNoSelectionPlaceholder" = "İmza Yok"; +"365.title" = "İsim:"; +"367.title" = "Anahtar"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Algoritma:"; +"378.title" = "Son Geçerlilik:"; +"379.title" = "Oluşturulma:"; +"381.title" = "Otorite:"; +"436.title" = "Oluşturulma:"; +"437.title" = "İmza"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/tr.lproj/SignatureView.strings b/Resources/tr.lproj/SignatureView.strings new file mode 100644 index 00000000..3691966c --- /dev/null +++ b/Resources/tr.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Bu imza güvenilir görünmüyor."; +"VALIDITY_OK" = "Bu imzaya güvenilebilir"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Bu imzanın temel aldığı anahtar yürürlükten kalkmış."; +"VALIDITY_SIGNATURE_EXPIRED" = "Bu imza ömrünü tamamlamış."; +"VALIDITY_KEY_EXPIRED" = "Bu imzanın temel aldığı anahtarın kullanım süresi dolmuş."; +"VALIDITY_KEY_REVOKED" = "Bu imzanın temel aldığı anahtar yürürlükten kalkmış."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Bu imza bilinmeyen bir algoritmayla oluşturulmuş."; +"VALIDITY_NO_PUBLIC_KEY" = "Bu imzanın anahtarı, anahtarlıkta değil."; +"VALIDITY_UNKNOWN_ERROR" = "İmza tanınmıyor."; +"VALIDITY_BAD_SIGNATURE" = "İmza geçersiz."; diff --git a/Resources/vi.lproj/GPGAttachment.strings b/Resources/vi.lproj/GPGAttachment.strings new file mode 100644 index 00000000..0dd1c00d --- /dev/null +++ b/Resources/vi.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "Thất bại trong việc xác nhận chữ ký này."; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "Khóa công cộng để xác nhận chữ ký của phần đính kèm này không nằm trong chuỗi khóa của bạn. Vui lòng tải về khóa công cộng %@ sử dụng Chuỗi Khóa GPG Keychain."; +"DECRYPT_ERROR_GENERAL_TITLE" = "Thất bại khi giải mã phần đính kèm."; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "Khóa bí mật để giải mã phần đính kèm này không nằm trong chuỗi khóa truy cập của bạn."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "Phần đính kèm này đã được giải mã thành công."; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "Mở phần đính kèm trong mục xem tin nhắn bằng cách click hai lần."; diff --git a/Resources/vi.lproj/GPGAttachments.strings b/Resources/vi.lproj/GPGAttachments.strings new file mode 100644 index 00000000..46351c36 --- /dev/null +++ b/Resources/vi.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "Cửa sổ"; +"8.title" = "Đồng ý"; +"210.title" = "tên"; +"211.title" = "Chi tiết"; +"239.title" = "Khóa"; +"240.title" = "Tên:"; +"241.title" = "Email:"; +"243.title" = "Fingerprint:"; +"244.title" = "Được tạo:"; +"245.title" = "Hết hạn:"; +"246.title" = "Thuật toán:"; +"247.title" = "Người sở hữu:"; +"256.title" = "Chữ ký"; +"257.title" = "Được tạo:"; +"291.title" = "Không thể xác nhận phần chữ ký dữ liệu."; +"293.title" = "Không thể xác nhận phần chữ ký dữ liệu vì khóa công cộng không nằm trong chuỗi khóa của bạn.\nVui lòng tải về khóa sử dụng Chuỗi Khóa GPG Keychain."; +"382.title" = "Không thể xác nhận phần chữ ký dữ liệu."; +"383.title" = "Không thể xác nhận phần chữ ký dữ liệu vì khóa công cộng không nằm trong chuỗi khóa của bạn. Vui lòng tải về khóa sử dụng Chuỗi Khóa GPG Keychain."; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/vi.lproj/GPGMail.strings b/Resources/vi.lproj/GPGMail.strings new file mode 100644 index 00000000..714dced0 --- /dev/null +++ b/Resources/vi.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "Phiên bản: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "Không thể giải mã tin nhắn PGP."; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "Xảy ra lỗi khi tiến hành giải mã tin nhắn này. Hã chắc rằng bạn đã có khóa hợp lệ trong phần GPG Keychain."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "Không thể xác nhận chữ ký tin nhắn PGP."; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "Xảy ra lỗi khi đọc chữ ký PGP dành cho tin nhắn này."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "Khóa PGP dành cho tin nhắn này không nằm trong chuỗi khóa mà bạn có."; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "Tin nhắn này có chữ ký PGP không hợp lệ, nhưng khóa PGP này không nằm trong chuỗi khóa mà bạn có. Hãy sử dụng chuỗi khóa GPG Keychain và thêm khóa này vào."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "Không có tin tức hiện có cho khóa PGP này."; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "Không có thông tin bổ sung hiện có về khóa PGP này, bởi vì khóa này không nằm trong chuỗi khóa mà bạn có."; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "Khóa bí mật để giải mã tin nhắn hiện đã thất lạc."; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this message. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "Giải mã thất bại và hệ thống chưa nhận định được lỗi này là gì!"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Lỗi xảy ra khi giải mã tin nhắn này và hệ thống hiện chưa rõ về lỗi này.\n\nHãy liên hệ chúng tôi để được hỗ trợ tại https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "Việc giải mã thất bại với lỗi mà hiện hệ thống chưa rõ!"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "Đã xảy ra lỗi trong quá trình giải mã tin nhắn này.\n\nLỗi GPG:\n%@\nXin liên hệ chúng tôi, kèm theo nội dung của lỗi thông báo về GPG tại https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Sai mã khóa để mã hóa tin nhắn này."; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Tin nhắn này không thể giải mã được, vì mã khóa công cộng được dùng để mã hóa tin nhắn này.\n\nvui lòng liên hệ chúng tôi để nhận được hỗ trợ tại https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Tin nhắn mã hóa bị lỗi."; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Tin nhắn mã hóa này đã bị lỗi hoặc không thể được giải mã.\n\nVui lòng liên hệ người gửi tin nhắn này để gửi lại tin nhắn."; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Khóa chữ ký đã bị hủy"; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "CHÚ Ý: Khóa này đã được dùng nhằm gắn cho tin nhắn này đã bị hủy.\n\nBạn nên cập nhật lại khóa với chỉ số khóa %@ trong GPG Keychain để kiểm tra khóa mới hiện có. Nếu khóa mới vẫn bị hủy, hãy xác nhận với người gửi là khóa đó đã bị hủy."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Khóa dành cho chữ ký tin nhắn này không nằm trong GPG Keychain của bạn."; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Tin nhắn không thể được xác nhận, vì khóa được dùng gắn cho tin nhắn này không tồn tại trong GPG Keychain của bạn.\n\nHãy tìm khóa với chỉ số %@ trong GPG Keychain và nhập vào khóa này để xác nhận tin nhắn."; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "Chữ ký tin nhắn đã được tạo với dạng thuật toán hiện chưa được hỗ trợ."; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Tin nhắn này không thể được xác nhận, vì chữ ký được tạo chứa thuật toán mà hiện không được hỗ trợ.\n\nXin vui lòng liên lạc nhà phát triển tại https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "CHÚ Ý: Phần chữ ký của tin nhắn này không hợp lệ!"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "CHÚ Ý: Tin nhắn này có thể đã được chỉnh sửa sau khi chữ ký được tạo\n\nXin vui lòng liên hệ người gửi để chắc chắn rằng nội dung của tin nhắn trùng khớp với nguyên văn.\n\nXin vui lòng liên hệ chúng tôi tại https://gpgtools.tenderapp.com nếu bạn nghĩ rằng tin nhắn này đã chắc chắn chưa được chỉnh sửa."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "Xác nhận chữ ký tin nhắn thất bại với lỗi chưa rõ!"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "Một lỗi chưa rõ đã xảy ra khi xác nhận chữ ký tin nhắn.\n\nXin vui lòng liên hệ chúng tôi tại https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Lỗi dữ liệu với chữ ký tin nhắn"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Chữ ký của tin nhắn này không hợp lệ do đó không thể được chứng nhận.\n\nXin vui lòng liên hệ chúng tôi tại "; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Khóa của chữ ký tin nhắn đã hết hạn."; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "CHÚ Ý: Khóa này đã được sử dụng làm chữ ký cho tin nhắn này đã hết hạn.\n\nBạn có thể cập nhật lại khóa này với Chỉ Số %@ trong GPG Keychain và hỏi người gửi tại sao khóa này lại hết hạn."; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Chữ ký tin nhắn đã hết hạn."; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Chữ ký đã hết hạn và không thể được xác nhận.\n\nHãy hỏi người gửi lý do vì sao chữ ký lại hết hạn."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "Decrypting failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "MacGPG is not installed"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "Không thể giải mã được hoặc xác nhận được %d phần được đính kèm theo."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "Vui lòng click vào biểu tượng của phần đính kèm theo trong phần an ninh của header tin nhắn để biết thêm chi tiết."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d phần tính kèm theo không thể được xác nhận."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "Vui lòng click vào biểu tượng của phần đính kèm theo trong phần an ninh của header tin nhắn để biết thêm chi tiết."; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "Không thể giải mã %d phần đính kèm theo."; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "Vui lòng click vào biểu tượng của phần đính kèm theo trong phần an ninh của header tin nhắn để biết thêm chi tiết."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "Không thể giải mã %d phần đính kèm theo."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "Vui lòng click vào biểu tượng của phần đính kèm theo trong phần an ninh của header tin nhắn để biết thêm chi tiết."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "Không thể giải mã %d phần đính kèm theo."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "Vui lòng click vào biểu tượng của phần đính kèm theo trong phần an ninh của header tin nhắn để biết thêm chi tiết."; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "Bị thiếu khóa bí mật để giải mã phần tập tin đính kèm."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "Việc giải mã thất bại với lỗi chưa được biết đến!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "Lỗi xảy ra khi giải mã phần tập tin được đính kèm này và hệ thống hiện chưa rõ về lỗi này.\n\nHãy liên hệ chúng tôi để được hỗ trợ tại https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "Giải mã thất bại và hệ thống chưa nhận định được lỗi này là gì!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "Đã xảy ra lỗi trong quá trình giải mã phần đính kèm này.\n\nLỗi GPG:\n%@\nXin liên hệ chúng tôi, kèm theo nội dung của lỗi thông báo về GPG tại https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "Khóa dữ liệu được dùng để mã hóa phần đính kèm này đã bị lỗi."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "Phần đính kèm này không thể được giải mã, vì sai khóa dữ liệu công cộng được dùng để mã hóa.\n\nXin vui lòng liên hệ chúng tôi để nhận hỗ trợ https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "Phần mã hóa đính kèm bị lỗi."; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "Phần mã hóa đính kèm đã bị hư hại và không thể được giải mã.\n\nHãy yêu cầu người gửi đến bạn tin nhắn này gửi lại một lần nữa."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "Đã hủy bỏ khóa chữ ký."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "CHÚ Ý: Khóa dữ liệu để ký lên phần đính kèm này đã bị hủy.\n\nBạn nên cập nhật lại khóa này với chỉ số khóa %@ trong GPG Keychain để kiểm tra hiện có khóa nào mới không. Nếu khóa mới vẫn bị hủy, hãy kiểm tra với người gửi lý do tại sao khóa này lại bị hủy."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "Chữ ký khóa dữ liệu không nằm trong GPG Keychain của bạn."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "Phần chữ ký đính kèm không thể được xác nhận, vì khóa này đã được dùng để ký không nằm trong GPG Keychain của bạn.\n\nTìm kiếm chỉ số khóa %@ trong GPG Keychain và nhập dữ liệu từ khóa này để xác nhận phần đính kèm này."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "Chữ ký của phần đính kèm đã đợc tạo với một thuật toán vẫn chưa được chương trình hỗ trợ."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "Không thể xác nhận phần đính kèm này, vì khóa được dùng để ký đã được tạo bằng một thuật toán hiện không được chương trình hỗ trợ.\n\nVui lòng liên hệ chúng tôi để nhận hỗ trợ từ https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "CHÚ Ý: Phần chữ ký đính kèm này không hợp lệ!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "CHÚ Ý: Phần đính kèm này có thể đã được chỉnh sửa sau khi chữ ký được tạo.\n\nXin vui lòng liên hệ người gửi để chắc chắn rằng nội dung của tập tin được đính kèm là trùng khớp với phiên bản gốc.\n\nXin vui lòng liên hệ chúng tôi tại https://gpgtools.tenderapp.com, nếu như bạn nghĩ rằng phần đính kèm này không được chỉnh sửa."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "Xác nhận chữ ký thất bại với lỗi chưa rõ!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "Một lỗi chưa rõ đã xảy ra khi xác nhận chữ ký phần tập tin đính kèm.\n\nXin vui lòng liên hệ chúng tôi tại https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "Dữ liệu về chữ ký bị lỗi!"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "Phần chữ ký đính kèm không hợp lệ và không thể được xác nhận.\n\nVui lòng liên hệ chúng tôi để nhận hỗ trợ tại "; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "Khóa của chữ ký đã hết hạn."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "CHÚ Ý: Khóa này đã được sử dụng làm chữ ký cho phần đính kèm này đã hết hạn.\n\nBạn có thể cập nhật lại khóa này với Chỉ Số %@ trong GPG Keychain và hỏi người gửi tại sao khóa này lại hết hạn."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "Chữ ký của phần đính kèm đã hết hạn."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "Chữ ký của phần đính kèm đã hết hạn và không thể được xác nhận.\n\nHãy hỏi người gửi lý do vì sao chữ ký lại hết hạn."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Mã hóa từng phần"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "Ký nhận từng phần"; +"MESSAGE_IS_PGP_ENCRYPTED" = "Đã mã hóa"; +"MESSAGE_IS_PGP_SIGNED" = "Đã ký"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "Chữ ký không hợp lệ"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "Đã ký với một khóa chưa biết rõ"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "Đã ký với khóa bị hủy"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "Chữ ký không hợp lệ"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "Đã ký"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "No signature found"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "phần đính kèm được mã hóa/đã ký"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "phần đính kèm được mã hóa/đã ký"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "phần đính kèm được mã hóa"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "phần đính kèm được mã hóa"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "phần đính kèm đã được ký"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "phần đính kèm đã được ký"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "Tin nhắn này không thể được mã hóa, vì hiện không có khóa công cộng nào dành cho địa chỉ: %@.\n\nVui lòng sử dụng GPG Keychain để tìm kiếm và nhập dữ liệu từ các khóa dữ liệu cho những địa chỉ này."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "Tin nhắn này không thể được mã hóa. Bạn phải điền vào ít nhất là một người gửi trước tiên."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "Đã mã hóa"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "Đã ký"; +"MESSAGE_VIEW_PGP_PART" = "Phần PGP"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail đã sẵn sàng."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Phần cài đặt MacGPG của bạn đang hoạt động và không có lỗi nào xuất hiện."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Vui lòng tải về phần cài đặt GPG Suite từ http://www.gpgtools.org để cài đặt toàn bộ phần thuộc về GPG Suite."; +"GPG_STATUS_OTHER_ERROR_TITLE" = "Vui lòng kiểm tra lại phần cài đặt và cấu hình của bạn."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "Vui lòng tải về phần cài đặt GPG Suite từ http://www.gpgtools.org để cài đặt toàn bộ phần thuộc về GPG Suite."; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "Disable Encryption"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Đã tìm thấy một vài phần cài đặt thuộc về GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "Đã phát hiện một số phần cài đặt liên quan đến GPGMail ở những địa điểm sau đây, điều này có thể tạo nên lỗi:\n\n%@\n\nVui lòng gỡ bỏ GPGMail.mailbundle ở một trong những địa điểm trên và khởi động lại Hộp Thư.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Thoát Hộp Thư"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail is not working as expected.\n\nPlease download and re-install GPG Suite from https://gpgtools.org\n\nShould this problem persist, please contact us at https://gpgtools.tenderapp.com/."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Việc ký nhận tin nhắn của bạn đã gặp lỗi vì mã GPG đại diện gặp sự cố!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "The GPG agent which is a crucial part of GPG seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Việc ký nhận vào tin nhắn của bạn gặp lỗi vì giao tiếp đại diện GPG gặp lỗi!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Việc áp dụng chữ ký vào tin nhắn đã thất bại vì một lỗi chưa được nhận dạng đã xảy ra"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Xin cáo lỗi, chúng tôi hiện không thể xử lý lỗi này."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Việc mã hóa tin nhắn của bạn đã thất bại vì một lỗi chưa biết đến đã xảy ra"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Xin cáo lỗi, GPGMail hiện không thể xử lý về vấn đề lỗi này."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "You entered the wrong password too many times."; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "Signing your message was aborted because you entered the wrong password 3 times."; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nXin vui lòng liên hệ chúng tôi tại https://gpgtools.tenderapp.com kèm theo mô tả về lỗi bạn gặp phải để nhận trợ giúp:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The message couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "The attachment couldn't be decrypted because you cancelled the password request."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "Sign"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "Don't sign"; + diff --git a/Resources/vi.lproj/GPGMailPreferences.strings b/Resources/vi.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..8e0624fe --- /dev/null +++ b/Resources/vi.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "Cập nhật"; +"728.title" = "Biên soạn"; +"733.ibShadowedToolTip" = "Các câu hỏi thường gặp."; +"734.alternateTitle" = "Các câu hỏi thường gặp"; +"734.title" = "Knowledge Base"; +"781.title" = "Phần rác của mã hóa"; +"834.title" = "Nút"; +"1051.ibShadowedToolTip" = "Nếu bạn có các thắc mắc khác."; +"1053.title" = "Report Problem"; +"0PS-Wm-gKl.title" = "Kiểm tra ngay bây giờ"; +"0Th-7E-Y7P.title" = "Phiên bản: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "Tự động kiểm tra cập nhật"; +"8oZ-YB-M9Q.title" = "Beta builds are published more often. New features and improvements are less tested."; +"D6D-o9-63C.title" = "Show Release Notes"; +"UhD-uR-dUs.title" = "Include beta builds"; +"q0m-y8-baf.title" = "Build:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/vi.lproj/GPGSignatureView.strings b/Resources/vi.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..e5c85cb8 --- /dev/null +++ b/Resources/vi.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "Chữ ký"; +"25.title" = "Đồng ý"; +"237.title" = "tên"; +"251.title" = "Chi tiết"; +"252.ibShadowedNoSelectionPlaceholder" = "Không có chữ ký"; +"365.title" = "Tên:"; +"367.title" = "Khóa"; +"369.title" = "Email:"; +"372.title" = "Fingerprint:"; +"377.title" = "Thuật toán:"; +"378.title" = "Hết hạn:"; +"379.title" = "Đã tạo:"; +"381.title" = "Người đáng tin:"; +"436.title" = "Đã tạo:"; +"437.title" = "Chữ ký"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/vi.lproj/SignatureView.strings b/Resources/vi.lproj/SignatureView.strings new file mode 100644 index 00000000..57c28ee1 --- /dev/null +++ b/Resources/vi.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "Phần chữ ký này không đáng tin tưởng."; +"VALIDITY_OK" = "Phần chữ ký này không đáng tin tưởng"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "Phần khóa dành cho chữ ký này đã bị hủy."; +"VALIDITY_SIGNATURE_EXPIRED" = "Chữ ký này đã quá hạn."; +"VALIDITY_KEY_EXPIRED" = "Phần khóa dành cho chữ ký này đã quá hạn."; +"VALIDITY_KEY_REVOKED" = "Phần khóa dành cho chữ ký này đã bị hủy."; +"VALIDITY_UNKNOWN_ALGORITHM" = "Chữ ký đã được tạo bằng một thuật toán không rõ nguồn."; +"VALIDITY_NO_PUBLIC_KEY" = "Phần khóa của chữ ký này không nằm trong chuỗi khóa của bạn."; +"VALIDITY_UNKNOWN_ERROR" = "Lỗi chưa xác định về chữ ký."; +"VALIDITY_BAD_SIGNATURE" = "Chữ ký này không hợp lệ."; diff --git a/Resources/zh_CN.lproj/GPGAttachment.strings b/Resources/zh_CN.lproj/GPGAttachment.strings new file mode 100644 index 00000000..761fd4d6 --- /dev/null +++ b/Resources/zh_CN.lproj/GPGAttachment.strings @@ -0,0 +1,13 @@ +/* + GPGAttachment.strings + GPGMail + + Created by Lukas Pitschl on 03.12.11. + Copyright (c) 2011 __MyCompanyName__. All rights reserved. + */ +"SIGNATURE_ERROR_GENERAL_TITLE" = "验证签名失败。"; +"SIGNATURE_ERROR_NO_PUBKEY_MESSAGE" = "用于验证此附件的公钥不在您的钥匙链中\n\n请使用 GPG Keychain 下载对应的公钥:%@"; +"DECRYPT_ERROR_GENERAL_TITLE" = "加密附件失败。"; +"DECRYPT_ERROR_GENERAL_MESSAGE" = "解密该附件的私钥不在您的密钥链中。"; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE" = "附件被成功加密。"; +"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE" = "双击消息查看按钮可打开附件。"; diff --git a/Resources/zh_CN.lproj/GPGAttachments.strings b/Resources/zh_CN.lproj/GPGAttachments.strings new file mode 100644 index 00000000..42ab6efb --- /dev/null +++ b/Resources/zh_CN.lproj/GPGAttachments.strings @@ -0,0 +1,19 @@ +"2.title" = "窗口"; +"8.title" = "好"; +"210.title" = "姓名"; +"211.title" = "细节"; +"239.title" = "密钥"; +"240.title" = "姓名:"; +"241.title" = "电子邮件:"; +"243.title" = "数字指纹:"; +"244.title" = "创建:"; +"245.title" = "有效期:"; +"246.title" = "算法:"; +"247.title" = "\n所有者信任:"; +"256.title" = "签名"; +"257.title" = "创建:"; +"291.title" = "该签名不能被验证。"; +"293.title" = "由于该签名的公匙不在您的密匙链中,该签名不能被验证。\n请使用GPG Keychain 下载密匙。"; +"382.title" = "该签名不能被验证。"; +"383.title" = "由于该签名的公匙不在您的密匙链中,该签名不能被验证。\n请使用GPG Keychain 下载密匙。"; +"n4z-o9-sgL.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/zh_CN.lproj/GPGMail.strings b/Resources/zh_CN.lproj/GPGMail.strings new file mode 100644 index 00000000..69be01c3 --- /dev/null +++ b/Resources/zh_CN.lproj/GPGMail.strings @@ -0,0 +1,253 @@ +/* Description of version prefixed with */ +"VERSION: %@" = "版本: %@"; + +/* PGP preferences panel name */ +"PGP_PREFERENCES" = "GPGMail"; + +/* Message Error Banner messages. */ +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_TITLE" = "未能解密信息。"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_MESSAGE" = "解密当前信息时发生错误。请确认您使用了正确的密钥。"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_TITLE" = "无法验证信息签名。"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_MESSAGE" = "读取 PGP 签名时发生了一个问题。"; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_TITLE" = "该信息所需的密钥并未包含您的密钥串中。"; +"MESSAGE_BANNER_PGP_VERIFY_NOT_IN_KEYCHAIN_ERROR_MESSAGE" = "该信息签名有效,但密钥并未包含在您的密钥串中。请使用 GPG Keychain 添加。"; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE" = "无此密钥信息。"; +"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE" = "没有关于此密(公)钥的额外信息,因为它不在您的密钥串中。"; + +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_TITLE" = "缺少用于解密该信息的密钥。"; +"MESSAGE_BANNER_PGP_DECRYPT_SECKEY_ERROR_MESSAGE" = "未能在您的钥匙串中找到可以用于解密该信息的密钥:\n%@\n请与发件人核对公钥信息。\n如有钥匙链何备份,可以试着从备份中回复私钥。"; + +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_TITLE" = "发生了未知的错误导致无法解密。"; +"MESSAGE_BANNER_PGP_DECRYPT_SYSTEM_ERROR_MESSAGE" = "解密时发生了未知的错误。\n\n请联系我们:https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_TITLE" = "发生了未知的错误导致无法解密。"; +"MESSAGE_BANNER_PGP_DECRYPT_GENERAL_ERROR_MESSAGE" = "发生了未知的错误导致无法解密。\n\n错误信息: %@\n请联系我们并附此信息。联系地址:https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "解密此信息时使用了错误的密钥。"; +"MESSAGE_BANNER_PGP_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "此信息加密时使用了错误的公钥,故无法解密。\n\n请联系我们:https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "此加密信息已损坏。"; +"MESSAGE_BANNER_PGP_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "此加密信息已损坏且无法解密。\n\n请联系发件人重发此信息。"; + +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "签名密钥已被吊销。"; +"MESSAGE_BANNER_PGP_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "注意:用于签名的密钥已被吊销。\n\n请您在 GPG Keychain 中刷新此钥,并检查是否有新的可用公钥。若新的公钥依然被吊销,请质询发件人原因。"; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_TITLE" = "此信息签名中的密钥不在您的钥匙串中。"; +"MESSAGE_BANNER_PGP_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "无法验证此信息,因为用于签证此信息的密钥并不在您的钥匙串中。\n\n请在钥匙串中使用 %@ 作为关键词搜索此密钥并导入,然后您才能用它来确认信息!"; + +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_TITLE" = "不支持本消息所用的签名算法。"; +"MESSAGE_BANNER_PGP_VERIFY_ALGORITHM_ERROR_MESSAGE" = "无法验证此信息,因为不支持其使用。请在 https://gpgtools.tenderapp.com 联系我们。"; + +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "注意:该消息的签名不可用。"; +"MESSAGE_BANNER_PGP_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This message might have been modified after the signature was created.\n\nPlease contact the sender to make sure the content of the message matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\nif you're sure the message was not modified."; + +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_TITLE" = "由于未知错误,消息的签名验证失败。"; +"MESSAGE_BANNER_PGP_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this message's signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "消息签名数据错误!"; +"MESSAGE_BANNER_PGP_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "信息签名无效且无法认证。\n\n请与我们联系 https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "消息签名的密钥已过期。"; +"MESSAGE_BANNER_PGP_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "注意:用于签名的密钥已过期。\n\n请您在 GPG Keychain 中刷新此钥,并检查是否有新的可用公钥,并质询发件人原因。"; + +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "消息签名已过期。"; +"MESSAGE_BANNER_PGP_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "签名已经过期且无法认证。\n\n请质询发信人原因。"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE" = "没有安装 MacGPG"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE" = "因为没有安装 Mac GPG 而导致解密失败。\n\n请下载并重新安装 GPG Suite: https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE" = "没有安装 MacGPG"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE" = "Verifying failed because MacGPG is not installed.\n\nPlease download and re-install GPG Suite from https://gpgtools.org"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE" = "%d 附件加密或验证失败。"; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE" = "更多信息请点击信件头安全部分的附件图标。"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE" = "%d 附件无法认证。"; +"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE" = "更多信息请点击信件头安全部分。"; + +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE" = "%d 附件无法解密。"; +"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE" = "更多信息请点击邮件头安全部分的附件图标。"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE" = "%d 个附件无法验证"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE" = "更多信息请点击邮件头安全部分的附件图标。"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE" = "%d 个附件无法加密"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE" = "更多信息请点击邮件头安全部分的附件图标。"; + +/* Message Error Banner Attachment messages. */ +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_TITLE" = "解密该附件的私钥不在您的钥匙串中。"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SECKEY_ERROR_MESSAGE" = "None of the following secret keys could be found in your keychain (%@). The secret key is needed to decrypt this attachment. \n\nPlease check with the sender that they used your correct public key.\nCheck any backup of your keychain, and try to import the secret key from there."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_TITLE" = "发生了未知的错误导致无法解密。"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_SYSTEM_ERROR_MESSAGE" = "解密时发生了未知的错误。\n\n请联系我们:https://gpgtools.tenderapp.com"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_TITLE" = "发生了未知的错误导致无法解密。"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_GENERAL_ERROR_MESSAGE" = "An unknown error occurred while decrypting this attachment.\n\nGPG error message:\n%@\nPlease contact us, including the GPG error message, at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_TITLE" = "使用了错误的钥匙解密此附件。"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE" = "This attachment could not be decrypted, since the wrong public key was used to encrypt it.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_TITLE" = "加密附件已损毁"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE" = "This encrypted attachment is damaged and could not be decrypted.\n\nPlease ask the sender to send you the message again."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE" = "签名密钥已被吊销。"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE" = "The key which was used to sign this attachment was revoked.\n\nYou should refresh the key with key ID %@ in GPG Keychain to check if a new one is available. If the new one is still revoked, check with the sender why the key was revoked."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_TITLE" = "此信息签名所用的密钥不在您的钥匙串中。"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_NO_PUBKEY_ERROR_MESSAGE" = "The attachment signature could not be verified, since the key which was used to sign is not in your GPG Keychain.\n\nSearch for the key with ID %@ in GPG Keychain and import it to verify the attachment."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_TITLE" = "The attachment signature was created with an algorithm which is not supported."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ALGORITHM_ERROR_MESSAGE" = "This attachment could not be verified, since the key to the signature was created with an algorithm which is not supported.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_TITLE" = "注意:附件签名无效"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE" = "This attachment might have been modified after the signature was created.\n\nPlease contact the sender and make sure the content of the attachment matches the original.\n\nPlease contact us at\nhttps://gpgtools.tenderapp.com/\n if you're sure the attachment was not modified."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_TITLE" = "由于未知原因,签名验证失败"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SYSTEM_ERROR_MESSAGE" = "An unknown error occurred while verifying this attachment signature.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_TITLE" = "签名数据错误"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE" = "This attachment signature is invalid and could not be verified.\n\nPlease contact us at https://gpgtools.tenderapp.com/"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_TITLE" = "该签名的密钥已过期。"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_KEY_EXPIRED_ERROR_MESSAGE" = "The key which was used to sign this attachment is expired.\n\nYou can try to refresh the key with ID %@ in GPG Keychain and ask the sender why the key is expired."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE" = "The signature of the attachment is expired."; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE" = "The attachment signature is expired and could not be verified.\n\nAsk the sender why the signature is expired."; + +"MESSAGE_IS_PGP_PARTLY_ENCRYPTED" = "Partly Encrypted"; +"MESSAGE_IS_PGP_PARTLY_SIGNED" = "部分签名的"; +"MESSAGE_IS_PGP_ENCRYPTED" = "已加密"; +"MESSAGE_IS_PGP_SIGNED" = "已签名"; +"MESSAGE_IS_PGP_SIGNED_INVALID" = "错误签名"; + +/* Security Header signature related. */ +"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE" = "使用未知 Key 签名的"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE" = "使用已吊销的 Key 签名的"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE" = "错误签名"; +"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE" = "已签名"; +"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE" = "无签名"; + +/* Security header attachments related. */ +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE" = "已加密或签名的附件"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE" = "已加密或签名的附件"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE" = "已加密的附件"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE" = "已加密的附件"; +"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE" = "已签名的附件"; +"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE" = "已签名的附件"; + +/* Compose Window encrypt/sign button tooltips. */ +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN" = "This message can't be signed, since there's no secret key for %@.\n\nPlease make sure that a secret key for this address exists in GPG Keychain. Add a new User ID to an existing key for this address if necessary, or create a new key for this address.\n\nIf a key for the address exists, make sure that the address in Mail.app > Preferences > Accounts is correct and exactly matches the address of your key."; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT" = "此信息无法被加密,原因是没有与 %@ 对应的公钥。\n\n请使用GPG Keychain 搜索并导入对应的公钥。"; +"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS" = "This message can't be encrypted. You have to enter at least one recipient first."; + +/* Message view pgp part. */ +"MESSAGE_VIEW_PGP_PART_ENCRYPTED" = "已加密"; +"MESSAGE_VIEW_PGP_PART_SIGNED" = "已签名"; +"MESSAGE_VIEW_PGP_PART" = "PGP part"; + +/* GPGMail Preferences strings. */ +"GPG_STATUS_NO_ERROR_TITLE" = "GPGMail is ready."; +"GPG_STATUS_NO_ERROR_TOOLTIP" = "Your MacGPG installation is working with no errors."; +"GPG_STATUS_NOT_FOUND_TITLE" = "MacGPG is not installed. Check your installation."; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "请从 https://www.gpgtools.org 重新下载安装 GPG Suite 以确保已经安装了所有必要组件。"; +"GPG_STATUS_OTHER_ERROR_TITLE" = "请检查您的安装配置。"; +"GPG_STATUS_NOT_FOUND_TOOLTIP" = "请从 https://www.gpgtools.org 重新下载安装 GPG Suite 以确保已经安装了所有必要组件。"; +"DISABLE_ENCRYPT_DRAFTS_TITLE" = "Warning: Disabling this option might lead to the leak of sensitive information while composing a message"; +"DISABLE_ENCRYPT_DRAFTS_MESSAGE" = "If the option \"Store drafts on server\" is enabled for your accounts, macOS Mail automatically stores your drafts on your mail server while you're composing a message.\nBy disabling \"Encrypt drafts\", your drafts will be stored in plain text (not encrypted) so that anyone with access to the mail server can read them.\n\nIf you keep \"Encrypt drafts\" enabled, your drafts will be encrypted before they are stored on a mail server and only you will be able to read them.\n\nDo you still want to disable \"Encrypt drafts\"?"; +"DISABLE_ENCRYPT_DRAFTS_CONFIRM" = "禁止加密"; +"DISABLE_ENCRYPT_DRAFTS_CANCEL" = "Cancel"; + + +/* Multiple GPGMail installations. */ +"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE" = "Found multiple installations of GPGMail!"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE" = "GPGMail detected multiple installations in the following locations which will lead to an immediate crash:\n\n%@\n\nPlease remove the GPGMail.mailbundle in one of the locations and restart Mail.\n"; +"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON" = "Quit Mail"; + +/* No Libmacgpg. */ +"LIBMACGPG_NOT_FOUND_TITLE" = "Libmacgpg was not found"; +"LIBMACGPG_NOT_FOUND_MESSAGE" = "Libmacgpg was not found on your system. Please download and install GPG Suite from https://www.gpgtools.org."; + +/* Code signature invalid */ +CODE_SIGN_ERROR_TITLE = "Someone tampered with your installation of GPGMail!"; +CODE_SIGN_ERROR_MESSAGE = "To keep you safe, GPGMail will not be loaded!\n\nPlease re-install GPG Suite from https://gpgtools.org to be sure you have an original version from us!"; + +/* GPGMailGPGMailBundle.defaults can't be loaded */ +NO_DEFAULTS_TITLE = "Unable to load GPGMail defaults!"; +NO_DEFAULTS_MESSAGE = "GPGMail 出现异常。\n\n请从 https://gpgtools.org 下载并重新安装 GPG Suite.\n\n如果问题仍然存在,请联系 https://gpgtools.tenderapp.com."; + +/* Errors while trying to sign a message. */ +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE" = "Signing your message failed due to a broken pinentry!"; +"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE" = "Signing your message failed due to defect GPG agent!"; +"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION" = "作为 GPG 关键部分的 GPG 代理看起来出了点问题。\n\n自 https://gpgtools.org 重新安装 GPG 套件来修复该问题。"; + +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE" = "Signing your message failed due to GPG agent communication error!"; +"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION" = "It was not possible to talk to the GPG agent in order to request your password.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE" = "Signing your message failed because an unknown error has occured"; +"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately we can't handle the error at this point."; + +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE" = "Encrypting your message failed because an unknown error has occured"; +"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION" = "Unfortunately GPGMail can't handle the error at this point."; + +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE" = "你输入错误的密码次数过多。"; +"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION" = "因为你三次输入了错误的密码,已终止签名信息。"; + +"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE" = "\n\nShould your problem persist, please contact us at https://gpgtools.tenderapp.com/ with the following error description:\n\n%@"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the message"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "因你取消了密码请求,信息无法被解密。"; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE" = "You aborted the decryption of the attachment"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE" = "因你取消了密码请求,附件无法被解密。"; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE" = "Decrypting the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the message failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_TITLE" = "GPG Suite is not working as expected"; +"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_XPC_DAMAGED_MESSAGE" = "Verifying the attachment failed.\n\nPlease re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE" = "Signing your message failed due to a problem during the password request"; +"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION" = "pinentry, the tool responsible for asking for your password, is not working properly.\n\nTo fix this problem, please re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE" = "Signing your message failed due to a problem in your GPGMail installation."; +"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION" = "To fix this problem, please re-install GPG Suite from https://gpgtools.org.\n\nShould this problem persist, contact us at https://gpgtools.tenderapp.com/ and include the information that the xpc service is not working properly."; + +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the message failed due to a broken pinentry"; +"MESSAGE_BANNER_PGP_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE" = "Decrypting the attachment failed due to a defect pinentry"; +"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE" = "pinentry, the tool responsible for asking for your password, seems to be broken.\n\nTo fix this problem, re-install GPG Suite from https://gpgtools.org."; + +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to send an unencrypted reply to an encrypted message"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt your reply, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt your reply, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, your reply will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE" = "\n\nIf you really wish to send this reply unencrypted, please remove any previous correspondence included in your reply prior to sending."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to send the reply encrypted."; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Send Anyway"; +"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_TITLE" = "Attention: You're about to forward the decrypted version of an encrypted message"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR" = "It's not possible to encrypt the message you are about to forward, because the public key for the following recipient is missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_MISSING_KEYS" = "It's not possible to encrypt the message you are about to forward, because public keys for the following recipients are missing:\n\n%@"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_EXPLANATION" = "If you choose to proceed, the message you are about to forward will be sent unencrypted. As a result, confidential information might be leaked, putting you and your recipients at risk."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS" = "Otherwise, search and import the corresponding public keys using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR" = "Otherwise, search and import the corresponding public key using GPG Keychain in order to forward an encrypted version of the message."; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY" = "Forward Anyway"; +"UNENCRYPTED_FORWARD_OF_ENCRYPTED_MESSAGE_BUTTON_CANCEL" = "Cancel"; + + + +/* Accessibility */ +ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL = "Security method: %@"; +ACCESSIBILITY_SIGN_ON_IMAGE = "签名"; +ACCESSIBILITY_SIGN_OFF_IMAGE = "不签名"; + diff --git a/Resources/zh_CN.lproj/GPGMailPreferences.strings b/Resources/zh_CN.lproj/GPGMailPreferences.strings new file mode 100644 index 00000000..fa83f4e5 --- /dev/null +++ b/Resources/zh_CN.lproj/GPGMailPreferences.strings @@ -0,0 +1,18 @@ +"715.title" = "更新"; +"728.title" = "编写中"; +"733.ibShadowedToolTip" = "经常被问及的问题。"; +"734.alternateTitle" = "经常被问及的问题"; +"734.title" = "知识库"; +"781.title" = "加密草稿"; +"834.title" = "按钮"; +"1051.ibShadowedToolTip" = "如果您还有其它问题。"; +"1053.title" = "报告问题"; +"0PS-Wm-gKl.title" = "现在检查"; +"0Th-7E-Y7P.title" = "版本: xxx"; +"2ul-d0-5ir.title" = "Sign new emails"; +"80G-ZN-hjm.title" = "自动检查更新"; +"8oZ-YB-M9Q.title" = "测试版本发布更加频繁。新的功能和改进经过更少测试。"; +"D6D-o9-63C.title" = "显示版本说明"; +"UhD-uR-dUs.title" = "包含测试版本"; +"q0m-y8-baf.title" = "构建:"; +"yJs-2y-8Cb.title" = "Encrypt new emails"; diff --git a/Resources/zh_CN.lproj/GPGSignatureView.strings b/Resources/zh_CN.lproj/GPGSignatureView.strings new file mode 100644 index 00000000..e7ab15dc --- /dev/null +++ b/Resources/zh_CN.lproj/GPGSignatureView.strings @@ -0,0 +1,16 @@ +"21.title" = "签名"; +"25.title" = "好"; +"237.title" = "姓名"; +"251.title" = "细节"; +"252.ibShadowedNoSelectionPlaceholder" = "无签名"; +"365.title" = "姓名:"; +"367.title" = "密钥"; +"369.title" = "电子邮件:"; +"372.title" = "数字指纹:"; +"377.title" = "算法:"; +"378.title" = "有效期:"; +"379.title" = "创建于:"; +"381.title" = "所有者信任:"; +"436.title" = "创建于:"; +"437.title" = "签名"; +"yCR-I5-KP1.ibShadowedIsNilPlaceholder" = "Never"; diff --git a/Resources/zh_CN.lproj/SignatureView.strings b/Resources/zh_CN.lproj/SignatureView.strings new file mode 100644 index 00000000..c3d9f64f --- /dev/null +++ b/Resources/zh_CN.lproj/SignatureView.strings @@ -0,0 +1,20 @@ +/* + SignatureView.strings + GPGMail + + Created by Lukas Pitschl on 30.07.11. + Copyright 2011 GPGMail. All rights reserved. + + Defines the strings used in the signature view. + */ +"VALIDITY_NO_TRUST" = "该签名不被信任。"; +"VALIDITY_OK" = "签名可信"; +/* Signature view key status. */ +"VALIDITY_KEY_REVOKED" = "该签名的密钥已被吊销。"; +"VALIDITY_SIGNATURE_EXPIRED" = "该签名已过期。"; +"VALIDITY_KEY_EXPIRED" = "该签名的密钥已过期。"; +"VALIDITY_KEY_REVOKED" = "该签名的密钥已被吊销。"; +"VALIDITY_UNKNOWN_ALGORITHM" = "签名被未知算法创建。"; +"VALIDITY_NO_PUBLIC_KEY" = "该签名的密钥不在您的钥匙串中。"; +"VALIDITY_UNKNOWN_ERROR" = "未知签名错误。"; +"VALIDITY_BAD_SIGNATURE" = "该签名非法。"; diff --git a/Source/BannerController+GPGMail.h b/Source/BannerController+GPGMail.h new file mode 100644 index 00000000..130c6ec4 --- /dev/null +++ b/Source/BannerController+GPGMail.h @@ -0,0 +1,43 @@ +/* BannerController+GPGMail.m created by Lukas Pitschl (@lukele) on Thu 06-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import "BannerController.h" + +@interface BannerController_GPGMail : NSObject + +/** + Mail.app calls this method, when a error banner or other banner should be shown + above the message content. + This is where GPGMail will force the error banner to be shown, if there was an + error decrypting or verifying a message or attached file. + */ +- (void)MAUpdateBannerForViewingState:(MessageViewingState *)viewingState; + +@end diff --git a/Source/BannerController+GPGMail.m b/Source/BannerController+GPGMail.m new file mode 100644 index 00000000..64ff7655 --- /dev/null +++ b/Source/BannerController+GPGMail.m @@ -0,0 +1,71 @@ +/* BannerController+GPGMail.m created by Lukas Pitschl (@lukele) on Thu 06-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "BannerController+GPGMail.h" +#import "MessageViewingState.h" +#import "MFError.h" + +@implementation BannerController_GPGMail + +- (void)MAUpdateBannerForViewingState:(MessageViewingState *)viewingState { + // First off, we'll call the original method, which will set the banner + // Mail.app finds appropriate. + // Now this works perfectly for PGP/MIME and PGP/MIME encrpyted (?) messages + // since they look to Mail.app just like S/MIME signed/encrypted messages. + // (Internally, Mail.app checks if the sign flag is set on the message.) + + // For inline, we have to help Mail a little. + // If no banner was set yet, but [viewingState error] matches error domain MFMessageErrorDomain + // we'll force displaying the certificateBanner. + [self MAUpdateBannerForViewingState:viewingState]; + + // Now, let's check if a banner is already shown. + NSView *bannerContainer = [self valueForKey:@"_bannerContainerView"]; + BOOL bannerAvailable = NO; + for(id view in [bannerContainer subviews]) { + if([view isKindOfClass:NSClassFromString(@"BannerView")]) { + bannerAvailable = YES; + break; + } + } + + // A banner is already available or there's no error needed to be displayed, + // let's not mess with that and out! + if(bannerAvailable || ![viewingState error]) + return; + + // Otherwise remove the current banner and display the certificate banner. + if([viewingState error] && [[[viewingState error] domain] isEqualToString:@"MFMessageErrorDomain"]) { + BannerController *this = (BannerController *)self; + [this removeCurrentBanner]; + [this _showCertificateBanner]; + } +} + +@end diff --git a/Source/CCLog.h b/Source/CCLog.h new file mode 100644 index 00000000..057f0058 --- /dev/null +++ b/Source/CCLog.h @@ -0,0 +1,25 @@ +// +// CCLog.h +// gitVersions +// +// Created by Koenraad Van Nieuwenhove on 26/08/08. +// Copyright 2008 CoCoa Crumbs. All rights reserved. +// +#import + +// idea from http://www.borkware.com/rants/agentm/mlog/ + +#define CCLog(s,...) \ +[CCLog myLog:__FILE__ \ +lineNumber:__LINE__ \ +format:(s), ##__VA_ARGS__] + +@interface CCLog : NSObject +{ +} + ++ (void)myLog:(char*)file + lineNumber:(int)lineNumber + format:(NSString*)format, ...; + +@end /* interface CCLog */ diff --git a/Source/CCLog.m b/Source/CCLog.m new file mode 100644 index 00000000..7fb69f72 --- /dev/null +++ b/Source/CCLog.m @@ -0,0 +1,86 @@ +// +// CCLog.m +// gitVersions +// +// Created by Koenraad Van Nieuwenhove on 26/08/08. +// Copyright 2008 CoCoa Crumbs. All rights reserved. +// +#import "CCLog.h" + +#define USE_NSLOG + +@implementation CCLog + ++ (NSInteger)currentThreadNumber +{ + NSString *threadString; + NSRange numRange; + NSUInteger numLength; + + // Somehow there doesn't seem to be an listOfArgumentsI call to return the + // threadnumber only the name of the thread can be returned but this is NULL + // if it is not set first! + // Here is a bit of code to extract the thread number out of the string + // an NSThread returns when you ask its description to be printed out + // by NSLog. The format looks like: + // {name = (null), num = 1} + // Basically I search for the "num = " substring, copy the remainder + // excluding the '}' which gives me the threadnumber. + threadString = [NSString stringWithFormat:@"%@", [NSThread currentThread]]; + + numRange = [threadString rangeOfString:@"num = "]; + + numLength = [threadString length] - numRange.location - numRange.length; + numRange.location = numRange.location + numRange.length; + numRange.length = numLength - 1; + + threadString = [threadString substringWithRange:numRange]; + return [threadString integerValue]; +} /* end currentThreadNumber */ + ++ (void)myLog:(char*)file + lineNumber:(int)lineNumber + format:(NSString*)format, ... +{ + va_list listOfArguments; + NSString *formattedString; + NSString *sourceFile; + NSString *logString; + + va_start(listOfArguments, format); + formattedString = [[NSString alloc] initWithFormat:format + arguments:listOfArguments]; + va_end(listOfArguments); + + sourceFile = [[NSString alloc] initWithBytes:file + length:strlen(file) + encoding:NSUTF8StringEncoding]; + + if([[NSThread currentThread] name] == nil) + { + // The thread has no name, try to find the threadnumber instead. + logString = [NSString stringWithFormat:@"Thread %li | %s[%d] %@", + (long)[self currentThreadNumber], + [[sourceFile lastPathComponent] UTF8String], + lineNumber, + formattedString]; + } + else + { + logString = [NSString stringWithFormat:@"%@ | %s[%d] %@", + [[NSThread currentThread] name], + [[sourceFile lastPathComponent] UTF8String], + lineNumber, + formattedString]; + } /* end if */ + +#ifdef USE_NSLOG + NSLog(@"%@", logString); +#else + printf("%s\n", [logString UTF8String]); +#endif /* USE_NSLOG */ + + // cleanup +} /* end myLog */ + +@end /* implementation CCLog */ diff --git a/Source/ComposeBackEnd+GPGMail.h b/Source/ComposeBackEnd+GPGMail.h new file mode 100644 index 00000000..7936233f --- /dev/null +++ b/Source/ComposeBackEnd+GPGMail.h @@ -0,0 +1,278 @@ +/* ComposeBack+GPGMail.h created by dave on Sun 13-Apr-2004 */ +/* ComposeBackEnd+GPGMail.h re-created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import +#import +#import "GPGConstants.h" + +typedef struct { + unsigned int type:4; + unsigned int composeMode:2; + unsigned int hadChangesBeforeSave:1; + unsigned int hasChanges:1; + unsigned int showAllHeaders:1; + unsigned int includeHeaders:1; + unsigned int isUndeliverable:1; + unsigned int isDeliveringMessage:1; + unsigned int sendWindowsFriendlyAttachments:2; + unsigned int contentsWasEditedByUser:1; + unsigned int delegateRespondsToDidChange:1; + unsigned int delegateRespondsToSenderDidChange:1; + unsigned int delegateRespondsToDidAppendMessage:1; + unsigned int delegateRespondsToDidSaveMessage:1; + unsigned int delegateRespondsToDidBeginLoad:1; + unsigned int delegateRespondsToDidEndLoad:1; + unsigned int delegateRespondsToWillCreateMessageWithHeaders:1; + unsigned int delegateRespondsToShouldSaveMessage:1; + unsigned int delegateRespondsToShouldDeliverMessage:1; + unsigned int delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients:1; + unsigned int delegateRespondsToDidCancelMessageDeliveryForEncryptionError:1; + unsigned int delegateRespondsToDidCancelMessageDeliveryForError:1; + unsigned int delegateRespondsToDidCancelMessageDeliveryForAttachmentError:1; + unsigned int signIfPossible:1; + unsigned int encryptIfPossible:1; + unsigned int knowsCanSign:1; + unsigned int canSign:1; + unsigned int shouldDownloadRemoteAttachments:1; + unsigned int overrideRemoteAttachmentsPreference:1; + unsigned int editorHasInitialized:1; + unsigned int isEditing:1; + unsigned int isSendFormatInitialized:1; + unsigned int isAppleScriptMessage:1; + unsigned long long encodingHint; +} mailFlags; + +@interface ComposeBackEnd_GPGMail : NSObject + +- (BOOL)setupSecurityPropertiesQueue; + +/** + Is called by Mail.app when the user clicks on the encrypt button in the + compose window. + + When a message should be saved as draft, the encrypted and signed flags are + not send along as arguments to the _makeContents method and there's no way + to access the information since it is internally stored in a struct, which + unfortunately can't be easily accessed on runtime. + + This entry point allows GPGMail to save the encrypted status in a dynamic ivar, + which can later be accessed when the message is saved as draft. + */ +- (void)MASetEncryptIfPossible:(BOOL)encryptIfPossible; + +/** + Is called by Mail.app when the user clicks on the sign button in the + compose window. + + See -[self MASetEncryptIfPossible:] for further information why this is an important + entry point. + */ +- (void)MASetSignIfPossible:(BOOL)signIfPossible; + +/** + This method is called by Mail.app when a new message is to be sent or a draft + is to be saved. + Based on the message contents it creates all necessary mime parts, signs + and/or encrypts the message and creates the outgoing message which is then returned. + + If the message is neither to be encrypted or signed, the original method is called + and the resulting outgoing message returned. + Otherwise Mail's original method is used too, since internally it calls the methods + for signing and encrypting the message (see MimePart.newEncryptedPartWithData:data recipients:encryptedData: and MimePart.newSignedPartWithData:sender:signatureData:). + Unfortunately S/MIME uses different mime parts, so the encrypted data is retrieved + from the created outgoing message and a new message with the PGP MIME/inline + mime parts is created and the encrypted data added. + + The same happens for only PGP signed messages. + */ +- (id)MA_makeMessageWithContents:(WebComposeMessageContents *)contents isDraft:(BOOL)isDraft shouldSign:(BOOL)shouldSign shouldEncrypt:(BOOL)shouldEncrypt shouldSkipSignature:(BOOL)shouldSkipSignature shouldBePlainText:(BOOL)shouldBePlainText; + + +/** + Creates a new message with pgp-keys attached on it. + */ +- (Subdata *)_newPGPBodyDataWithOriginalData:(NSData *)originalData headers:(MutableMessageHeaders *)headers keysToAttach:(NSData *)keysToAttach; + + + +/** + Creates the new gpg message data which will replace the original outgoing message + body data and sets the correct headers. + + shouldBeMIME decides whether the returned message data is a inline gpg message or a mime + gpg message. + */ +- (Subdata *)_newPGPBodyDataWithEncryptedData:(NSData *)encryptedData headers:(MutableMessageHeaders *)headers shouldBeMIME:(BOOL)shouldBeMIME keysToAttach:(NSData *)keysToAttach; + +/** + This method adds some info to the original method headers which is relevant + for the encryption and signing methods. + + Unfortunately within MimePart.newEncryptedPartWithData:recipients:encryptedData: and + MimePart.newSignedPartWithData:sender:signatureData: there's no way of knowing + whether the message should be S/MIME signed/encrypted or PGP signed/encrypted, since + only the relevant email addresses from the original headers are passed in. + + To guess the method to be used within these methods, the email addresses are prefixed + with 'gpg-flagged--::' if the OpenPGP checkbox is checked. + + In addition this prefix is used to distinguish bcc recipients from normal recipients. + GPG allows to add bcc recipients which receive the message, but the encrypted + or signed data contains no information that these recipients exist. + As it seems it's not necessary for S/MIME to treat the two types of recipients + differentely. + + Based on what operations are performed (signing, encrypting, encrypting+signing) + different info is added to the original headers. + forEncrypting and forSigning decide which headers are added. + */ +- (void)_addGPGFlaggedStringsToHeaders:(NSMutableDictionary *)headers forEncrypting:(BOOL)forEncrypting forSigning:(BOOL)forSigning forSymmetric:(BOOL)forSymmetric isDraft:(BOOL)isDraft; + +/** + Is called whenever a recipient is added to the message and decides + whether or not the encrypt button in the security view is activated or not. + + If the OpenPGP checkbox is not checked it calls the original method for S/MIME support. + Otherwise each recipient is checked against GPGMail's internal list of + recipients a public key exists for. + Only if public keys for all recipients are found it returns true. + */ +- (BOOL)MACanEncryptForRecipients:(NSArray *)recipients sender:(NSString *)sender; + +/** + Is called whenever the 'from' account is changed + and decides whether or not the sign button in the security view is activated + or not. + + If the OpenPGP checkbox is not checked it calls the original method for S/MIME support. + Otherwise the sender is checked against GPGMail's internal list to find + a matching sender with a valid private key. + If a matching sender and valid private key is found, returns true. + + The email address might include the name which is extracted using uncommentedAddress. + */ +- (BOOL)MACanSignFromAddress:(NSString *)address; + +/* + Is called whenever the user clicks on the encrypt button + in the security view. + + If it doesn't return an empty list, an alert panel is displayed telling + the user, that no public key was found for a recipient of the message. + + If the OpenPGP checkbox is not checked it calls the original method for S/MIME support. + */ +- (id)MARecipientsThatHaveNoKeyForEncryption; + +- (Subdata *)_newPGPInlineBodyDataWithData:(NSData *)data headers:(MutableMessageHeaders *)headers shouldSign:(BOOL)shouldSign shouldEncrypt:(BOOL)shouldEncrypt; + +/** + Determines whether or not the -[MailDocumentEditor backEndDidLoadInitialContent:] method was already called. + When a new security method is set, this flag is first checked, so that no notification + of a security method change is sent, before the editor was fully initialized. + */ +@property (nonatomic, assign) BOOL wasInitialized; + +/** + Holds and sets the security method to be used. + If the security method is changed, it sents a SecurityMethodDidChangeNotification, + so the Account list and the security method hint accessory view can be updated + appropiately. + */ +@property (nonatomic, assign) GPGMAIL_SECURITY_METHOD securityMethod; +@property (nonatomic, assign) GPGMAIL_SECURITY_METHOD guessedSecurityMethod; +@property (nonatomic, copy) NSMutableDictionary *securityProperties; +- (void)updateSecurityProperties:(NSDictionary *)updates; + +/** + Sets the flag that the user has chosen a security method. + From this point on GPGMail will no longer automatically select + the best method. + */ +@property (nonatomic, assign) BOOL userDidChooseSecurityMethod; + +/** + Returns if the user writing a reply to a message. + */ +- (BOOL)messageIsBeingReplied; + +/** + Returns if the user is continuing to edit a draft. + */ +- (BOOL)draftIsContinued; + +/** + This hook is necessary to determine whether or not a user continues editing a draft. + Unfortunately the -[ComposeBackEnd type] doesn't reflect that. + */ +- (void)MA_configureLastDraftInformationFromHeaders:(id)headers overwrite:(BOOL)overwrite; + +/** + Posts the SecurityMethodDidChange notification. + */ +- (void)postSecurityMethodDidChangeNotification:(GPGMAIL_SECURITY_METHOD)securityMethod; + +/** + Checks the contents of a message and tries to determine, whether the sent action + was invoked by iCal, in which case, the message is not to be encrypted nor signed. + */ +- (BOOL)sentActionInvokedFromiCalWithContents:(WebComposeMessageContents *)contents; + +/** + Helper method to access the encryptIfPossible flag. On OS X before Yosemite, this flag + is set in a _flags struct. On Yosemite, there's a bool property which is used. + */ +- (BOOL)GMEncryptIfPossible; + +/** + Helper method to access the signIfPossible flag. On OS X before Yosemite, this flag + is set in a _flags struct. On Yosemite, there's a bool property which is used. + */ +- (BOOL)GMSignIfPossible; + +@end + +/** + Under Lion GCD Dispatch Queues are not represented as Objective-C objects, which leads to + massive problems and a crash when trying to store a dispatch queue as associated objected. + In order to fix that issue, we simply wrap the dispatch queue in an object ourseveles. + Let's see how well that goes. + */ +@interface GMDispatchQueueObject : NSObject { + NSString *_name; + dispatch_queue_t _dispatchQueue; +} + +- (id)initWithName:(const char *)name queueAttributes:(dispatch_queue_attr_t)attributes; + +@property (nonatomic, readonly) dispatch_queue_t dispatchQueue; + +@end diff --git a/Source/ComposeBackEnd+GPGMail.m b/Source/ComposeBackEnd+GPGMail.m new file mode 100644 index 00000000..67bec8a7 --- /dev/null +++ b/Source/ComposeBackEnd+GPGMail.m @@ -0,0 +1,1250 @@ +// +// ComposeBackEnd+GPGMail.m +// GPGMail +// +// Created by Lukas Pitschl on 31.07.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import "objc/runtime.h" +#import +#import +#import <_OutgoingMessageBody.h> +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import "MailAccount.h" +#import "MessageAttachment.h" +#import "CCLog.h" +#import "NSObject+LPDynamicIvars.h" +#import "NSString+GPGMail.h" +#import "NSData+GPGMail.h" +#import "MimePart+GPGMail.h" +#import "Message+GPGMail.h" +#import "GPGFlaggedString.h" +#import "GMSecurityHistory.h" +#import "GPGMailBundle.h" +#import "HeadersEditor+GPGMail.h" +#import "MailDocumentEditor.h" +#import "MailDocumentEditor+GPGMail.h" +#import "ComposeBackEnd+GPGMail.h" +#import "ActivityMonitor.h" +#import +#import "NSData-MessageAdditions.h" +#define restrict +#import + +#define MAIL_SELF ((ComposeBackEnd *)self) + +@implementation ComposeBackEnd_GPGMail + +- (BOOL)setupSecurityPropertiesQueue { + if(![self getIvar:@"GMSecurityPropertiesQueue"]) { + GMDispatchQueueObject *securityPropertiesQueue = [[GMDispatchQueueObject alloc] initWithName:"org.gpgtools.GPGMail.securityPropertiesQueue" queueAttributes:DISPATCH_QUEUE_CONCURRENT]; + [self setIvar:@"GMSecurityPropertiesQueue" value:securityPropertiesQueue]; + } + return YES; +} + +- (dispatch_queue_t)securityPropertiesQueue { + GMDispatchQueueObject *securityPropertiesQueue = [self getIvar:@"GMSecurityPropertiesQueue"]; + return securityPropertiesQueue.dispatchQueue; +} + +- (id)MAInit { + id ret = [self MAInit]; + + /** On El Capitan initCreatingDocumentEditor no longer exists, instead we'll setup our securityPropertiesQueue in init. + */ + [ret setupSecurityPropertiesQueue]; + + return ret; +} + +- (id)MAInitCreatingDocumentEditor:(BOOL)createDocumentEditor { + + id ret = [self MAInitCreatingDocumentEditor:createDocumentEditor]; + + /** On Yosemite, if Mail was invoked via AppleScript, this queue might already have been setup. + */ + [ret setupSecurityPropertiesQueue]; + + return ret; +} + +- (void)MASetKnowsCanSign:(BOOL)knowsCanSign { + // In Yosemite, this is reset if the sender changes, + // so let's also reset GMKnowsCanSign. + if(knowsCanSign == NO) { + [self updateSecurityProperties:@{@"GMKnowsCanSign": @NO}]; + } + + [self MASetKnowsCanSign:knowsCanSign]; +} + +- (void)MASetEncryptIfPossible:(BOOL)encryptIfPossible { + DebugLog(@"[Main thread: %@] - Set Encrypt: %@", [NSThread isMainThread] ? @"YES" : @"NO", encryptIfPossible ? @"YES" : @"NO"); + NSDictionary *securityProperties = self.securityProperties; + if(securityProperties[@"SetEncrypt"]) { + encryptIfPossible = [securityProperties[@"SetEncrypt"] boolValue]; + } + + // Force Encrypt contains the user choice. + // It overrides SetEncrypt, which is checked when + // displaying the correct image, so it has to + // be reset, if ForceSign is set, otherwise the wrong + // image could be shown. + if(securityProperties[@"ForceEncrypt"]) { + encryptIfPossible = [securityProperties[@"ForceEncrypt"] boolValue]; + [self updateSecurityProperties:@{@"SetEncrypt": @(encryptIfPossible)}]; + } + // If SetEncrypt and CanEncrypt don't match, use CanEncrypt, + // since that's more important. + if(![securityProperties[@"EncryptIsPossible"] boolValue]) + encryptIfPossible = NO; + + [self updateSecurityProperties:@{@"shouldEncrypt": @(encryptIfPossible)}]; + + [self MASetEncryptIfPossible:encryptIfPossible]; + [(MailDocumentEditor_GPGMail *)[((ComposeBackEnd *)self) delegate] updateSecurityMethodHighlight]; + + HeadersEditor_GPGMail *headersEditor = ((MailDocumentEditor *)[((ComposeBackEnd *)self) delegate]).headersEditor; + [headersEditor updateSymmetricButton]; +} + +- (BOOL)GMEncryptIfPossible { + // On Yosemite or higher there's a property to read the encryptIfPossible flag. + // otherwise, we have to access the _flags struct. + BOOL encryptIfPossible = NO; + if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_9) { + encryptIfPossible = [[self valueForKey:@"_encryptIfPossible"] boolValue]; + } + else { + mailFlags backEndFlags; + Ivar flags = class_getInstanceVariable([self class], "_flags"); + + CFTypeRef cfSelf = CFBridgingRetain(self); + backEndFlags = *(mailFlags *)((uint8_t *)cfSelf + ivar_getOffset(flags)); + encryptIfPossible = backEndFlags.encryptIfPossible; + CFBridgingRelease(cfSelf); + } + + return encryptIfPossible; +} + +- (BOOL)GMSignIfPossible { + // On Yosemite or higher there's a property to read the signIfPossible flag. + // otherwise, we have to access the _flags struct. + BOOL signIfPossible = NO; + if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_9) { + signIfPossible = [[self valueForKey:@"_signIfPossible"] boolValue]; + } + else { + mailFlags backEndFlags; + Ivar flags = class_getInstanceVariable([self class], "_flags"); + + CFTypeRef cfSelf = CFBridgingRetain(self); + backEndFlags = *(mailFlags *)((uint8_t *)cfSelf + ivar_getOffset(flags)); + signIfPossible = backEndFlags.signIfPossible; + CFBridgingRelease(cfSelf); + } + + return signIfPossible; +} + +- (void)MASetSignIfPossible:(BOOL)signIfPossible { + NSDictionary *securityProperties = self.securityProperties; + NSMutableDictionary *updatedSecurityProperties = [@{} mutableCopy]; + if(securityProperties[@"SetSign"]) { + signIfPossible = [securityProperties[@"SetSign"] boolValue]; + } + + // Force Sign contains the user choice. + // It overrides SetSign, which is checked when + // displaying the correct image, so it has to + // be reset, if ForceSign is set, otherwise the wrong + // image could be shown. + if(securityProperties[@"ForceSign"]) { + signIfPossible = [securityProperties[@"ForceSign"] boolValue]; + updatedSecurityProperties[@"SetSign"] = @(signIfPossible); + } + + // If SetSign and CanSign don't match, use CanSign, + // since that's more important. + if(![securityProperties[@"SignIsPossible"] boolValue]) + signIfPossible = NO; + + updatedSecurityProperties[@"shouldSign"] = @(signIfPossible); + [self updateSecurityProperties:updatedSecurityProperties]; + [self MASetSignIfPossible:signIfPossible]; + [(MailDocumentEditor_GPGMail *)[((ComposeBackEnd *)self) delegate] updateSecurityMethodHighlight]; +} + +- (id)MASender { + // If a message is to be redirected, the flagged from string, + // which might have been set in -[ComposeBackEnd _makeMessageWithContents:isDraft:shouldSign:shouldEncrypt:shouldSkipSignature:shouldBePlainText:] + // is replaced with this value, which of course is a simple string and + // not a flagged value. + // So in that case, they from header is checked and if it is + // a flagged string it is returned instead of invoking the MASender + // method. + // This way the flagged from string makes it through to the newSignedPart method. + + // Not a resend? Out of here! + if([(ComposeBackEnd *)self type] != 7) + return [self MASender]; + + // Fetch the from header from the clean headers to check + // if this message should be pgp signed. + NSDictionary *cleanHeaders = [(ComposeBackEnd *)self cleanHeaders]; + id sender = cleanHeaders[@"from"]; + // Not a GPGFlaggedString. Out of here! + if(![sender respondsToSelector:@selector(setValue:forFlag:)]) + return [self MASender]; + + // Now emulate what -[ComposeBackEnd sender] does internally. + // At least part of it. + MailAccount *account = [GM_MAIL_CLASS(@"MailAccount") accountContainingEmailAddress:sender]; + // Not sure what to do in this case, so let's fall back. + if(!account) + return [self MASender]; + // IF we're still in here, return the flagged sender. + return sender; +} + +- (id)MA_makeMessageWithContents:(WebComposeMessageContents *)contents isDraft:(BOOL)isDraft shouldSign:(BOOL)shouldSign shouldEncrypt:(BOOL)shouldEncrypt shouldSkipSignature:(BOOL)shouldSkipSignature shouldBePlainText:(BOOL)shouldBePlainText { + GPGMAIL_SECURITY_METHOD securityMethod = self.guessedSecurityMethod; + if(self.securityMethod) + securityMethod = self.securityMethod; + if(securityMethod != GPGMAIL_SECURITY_METHOD_OPENPGP) { + id ret = [self MA_makeMessageWithContents:contents isDraft:isDraft shouldSign:shouldSign shouldEncrypt:shouldEncrypt shouldSkipSignature:shouldSkipSignature shouldBePlainText:shouldBePlainText]; + // If a message has been successfully created, add an entry to the security options history. + if(ret && !isDraft) { + [GMSecurityHistory addEntryForSender:((ComposeBackEnd *)self).sender recipients:[((ComposeBackEnd *)self) allRecipients] securityMethod:GPGMAIL_SECURITY_METHOD_SMIME didSign:shouldSign didEncrypt:shouldEncrypt]; + } + return ret; + } + + NSDictionary *securityProperties = self.securityProperties; + // The encryption part is a little tricky that's why + // Mail.app is gonna do the heavy lifting with our GPG encryption method + // instead of the S/MIME one. + // After that's done, we only have to extract the encrypted part. + BOOL shouldPGPEncrypt = shouldEncrypt; + BOOL shouldPGPSign = shouldSign; + BOOL shouldPGPSymmetric = [securityProperties[@"shouldSymmetric"] boolValue]; + BOOL shouldPGPInlineSign = NO; + BOOL shouldPGPInlineEncrypt = NO; + BOOL shouldPGPInlineSymmetric = NO; + + // If this message is to be saved as draft, force encryption. + if (isDraft && !shouldPGPEncrypt && [[GPGOptions sharedOptions] boolForKey:@"OptionallyEncryptDrafts"]) + shouldPGPEncrypt = YES; + + // It might not be possible to inline encrypt drafts, since contents.text is nil. + // Maybe it's not problem, and simply html should be used. (TODO: Figure that out.) + BOOL shouldCreatePGPInlineMessage = [[GPGOptions sharedOptions] boolForKey:@"UseOpenPGPInlineToSend"] && !isDraft; + + + // If this message is a calendar event which is being sent from iCal without user interaction (ForceSign and ForceEncrypt are NOT set), + // it should never be encrypted nor signed. + if(!securityProperties[@"ForceSign"] && !securityProperties[@"ForceEncrypt"] && + [self sentActionInvokedFromiCalWithContents:contents]) { + shouldPGPEncrypt = NO; + shouldPGPSign = NO; + shouldSign = NO; + shouldEncrypt = NO; + shouldPGPSymmetric = NO; + } + + // At the moment for drafts signing and encrypting is disabled. + // GPG not enabled, or neither encrypt nor sign are checked, let's get the shit out of here. + if(!shouldPGPEncrypt && !shouldPGPSign && !shouldPGPSymmetric) { + OutgoingMessage *outMessage = [self MA_makeMessageWithContents:contents isDraft:isDraft shouldSign:shouldSign shouldEncrypt:shouldEncrypt shouldSkipSignature:shouldSkipSignature shouldBePlainText:shouldBePlainText]; + return outMessage; + } + + // Save the original headers. + // If isDraft is set cleanHeaders are an NSDictionary they need to be a NSMutableDictionary + // though, since Mail.app otherwise complains. + // The isDraft flag is removed before calling the makeMessageWithContents method, otherwise + // the encrypting and signing methods wouldn't be invoked. + // Mail.app only wants NSMutableDictionary cleanHeaders if it's not a draft. + // Since the isDraft flag is removed, Mail.app assumes it creates a normal message + // to send out and therefore wants NSMutableDictionary clean headers. + id copiedCleanHeaders = nil; + copiedCleanHeaders = [[(ComposeBackEnd *)self cleanHeaders] mutableCopy]; + + [self setIvar:@"originalCleanHeaders" value:copiedCleanHeaders]; + // If isDraft is set the cleanHeaders are an NSDictionary instead of an NSMutableDictionary. + // Using mutableCopy they are converted into an NSMutableDictionary. + copiedCleanHeaders = [[(ComposeBackEnd *)self cleanHeaders] mutableCopy]; + [self setValue:copiedCleanHeaders forKey:@"_cleanHeaders"]; + + // Inject the headers needed in newEncryptedPart and newSignedPart. + [self _addGPGFlaggedStringsToHeaders:[(ComposeBackEnd *)self cleanHeaders] forEncrypting:shouldPGPEncrypt forSigning:shouldPGPSign forSymmetric:shouldPGPSymmetric isDraft:isDraft]; + + // If the message is supposed to be encrypted or signed inline, + // GPGMail does that directly in the Compose back end, and not use + // the message write to create it, yet, to get an OutgoingMessage to work with. + // Mail.app is instructed to create the Outgoing message with no encrypting and no + // signing. + // After that the body is replaced by the pgp inline data. + if(shouldCreatePGPInlineMessage) { + shouldPGPInlineSign = shouldPGPSign; + shouldPGPInlineEncrypt = shouldPGPEncrypt; + shouldPGPInlineSymmetric = shouldPGPSymmetric; + shouldPGPSign = NO; + shouldPGPEncrypt = NO; + shouldPGPSymmetric = NO; + } + + NSMutableAttributedString *plainText = (NSMutableAttributedString *)contents.plainText; + NSMutableString *plainString = [plainText mutableString]; + + // If we are only signing and there isn't a newline at the end of the plaintext, append it. + // We need this to prevent servers from doing this. + if (shouldPGPSign && !shouldPGPEncrypt && !shouldPGPSymmetric) { + if ([plainString characterAtIndex:plainString.length - 1] != '\n') { + [plainString appendString:@"\n"]; + } + } + if (shouldPGPSign) { + // Remove all whitespaces at the end of lines. But don't kill attachments. + RKRegex *regex = [RKRegex regexWithRegexString:@"[\\t\\f\\r\\p{Z}]+$" options:RKCompileMultiline]; + RKEnumerator *rkEnum = [plainString matchEnumeratorWithRegex:regex]; + + NSMutableArray *ranges = [NSMutableArray array]; + + // Get all matches and reverse the order. + for (NSArray *match in rkEnum) { + [ranges insertObject:match[0] atIndex:0]; + } + // Removed matched characters. + for (NSValue *range in ranges) { + [plainString replaceCharactersInRange:range.rangeValue withString:@""]; + } + } + + // This is later checked, to determine the real isDraft value. + [contents setIvar:@"IsDraft" value:@(isDraft)]; + [contents setIvar:@"ShouldEncrypt" value:@(shouldPGPEncrypt || shouldPGPInlineEncrypt)]; + [contents setIvar:@"ShouldSign" value:@(shouldPGPSign || shouldPGPInlineSign)]; + + if(isDraft) { + // If there's a public key available to encrypt the draft, + // it's encrypted, otherwise we disable encryption. + GPGKey *encryptDraftPublicKey = [[[(ComposeBackEnd *)self cleanHeaders] valueForKey:@"from"] valueForFlag:@"DraftPublicKey"]; + if(encryptDraftPublicKey) { + // Drafts mustn't be signed, otherwise Mail creates duplicate zombie drafts again. + shouldPGPSign = NO; + shouldPGPSymmetric = NO; + shouldPGPEncrypt = YES; + } + else { + shouldPGPEncrypt = NO; + shouldPGPSign = NO; + shouldPGPSymmetric = NO; + } + } + + // Drafts store the messages with a very minor set of headers and mime types + // not suitable for encrypted/signed messages. But fortunately, Mail.app doesn't + // have a problem if a normal message is stored as draft, so GPGMail just needs + // to disable the isDraft parameter, Mail.app will take care of the rest. + OutgoingMessage *outgoingMessage = [self MA_makeMessageWithContents:contents isDraft:NO shouldSign:shouldPGPSign shouldEncrypt:shouldPGPEncrypt || shouldPGPSymmetric shouldSkipSignature:shouldSkipSignature shouldBePlainText:shouldBePlainText]; + + // If there was an error creating the outgoing message it's gonna be nil + // and the error is stored away for later display. + if(!outgoingMessage) { + if (isDraft) { + // Cancel saving to prevent the default error message. + [self setIvar:@"cancelSaving" value:(id)kCFBooleanTrue]; + [(MailDocumentEditor *)[(ComposeBackEnd *)self delegate] setUserSavedMessage:NO]; + + // The error message should be set on the current activity monitor, so we + // simply have to fetch it. + GM_CAST_CLASS(MFError *, id) error = (MFError *)[(ActivityMonitor *)[GM_MAIL_CLASS(@"ActivityMonitor") currentMonitor] error]; + [self performSelectorOnMainThread:@selector(didCancelMessageDeliveryForError:) withObject:error waitUntilDone:NO]; + } + // Restore the clean headers so BCC is removed as well. + [(ComposeBackEnd *)self setValue:[self getIvar:@"originalCleanHeaders"] forKey:@"_cleanHeaders"]; + return nil; + } + + // Fetch the encrypted data from the body data. + NSData *encryptedData = [((_OutgoingMessageBody *)[outgoingMessage messageBody]) rawData]; + + + // Search for an errorCode in encryptedData: + NSRange range = [encryptedData rangeOfData:[gpgErrorIdentifier dataUsingEncoding:NSUTF8StringEncoding] options:0 range:NSMakeRange(0, [encryptedData length])]; + if (range.length > 0) { + GPGErrorCode errorCode = 0; + char *readPos = (char *)[encryptedData bytes]; + char *endPos = readPos + [encryptedData length]; + + // Extract the errorCode. + readPos += range.location + range.length; + for (; readPos < endPos && *readPos <= '9' && *readPos >= '0'; readPos++) { + errorCode = errorCode * 10 + *readPos - '0'; + } + + if (errorCode == GPGErrorCancelled) { + if (isDraft) { + // If the user cancel the signing, we cancel the saving and mark the message as unsaved. + [self setIvar:@"cancelSaving" value:(id)kCFBooleanTrue]; + [(MailDocumentEditor *)[(ComposeBackEnd *)self delegate] setUserSavedMessage:NO]; + } + } + [(ComposeBackEnd *)self setValue:[self getIvar:@"originalCleanHeaders"] forKey:@"_cleanHeaders"]; + return nil; + } + + // And restore the original headers. + [(ComposeBackEnd *)self setValue:[self getIvar:@"originalCleanHeaders"] forKey:@"_cleanHeaders"]; + + + + BOOL attachKeys = shouldPGPSign && [[GPGOptions sharedOptions] boolForKey:@"AttachKeyToOutgoingMessages"]; + NSData *keysToAttach = nil; + + if (!shouldCreatePGPInlineMessage && attachKeys) { + // Get the signer key and export it, so we can attach it to the message. + GPGKey *key = [self getIvar:@"gpgKeyForSigning"]; + if (key) { + GPGController *gpgc = [[GPGController alloc] init]; + @try { + gpgc.useArmor = YES; + keysToAttach = [gpgc exportKeys:@[key] options:GPGExportMinimal]; + } + @catch (NSException *exception) { + GPGDebugLog(@"Exception during exporting keys: %@", exception); + } + } + + } + + + // Signing only results in an outgoing message which can be sent + // out exactly as created by Mail.app. No need to further modify. + // Only encrypted messages have to be adjusted. + if(shouldPGPSign && !shouldPGPEncrypt && !shouldPGPSymmetric && !shouldCreatePGPInlineMessage && keysToAttach.length == 0) { + if(!isDraft) + [GMSecurityHistory addEntryForSender:((ComposeBackEnd *)self).sender recipients:[((ComposeBackEnd *)self) allRecipients] securityMethod:GPGMAIL_SECURITY_METHOD_OPENPGP didSign:shouldPGPSign didEncrypt:shouldPGPEncrypt]; + return outgoingMessage; + } + + + + Subdata *newBodyData = nil; + + // Check for preferences here, and set mime or plain version + if(!shouldCreatePGPInlineMessage) { + + if (shouldPGPEncrypt || shouldPGPSymmetric) { + newBodyData = [self _newPGPBodyDataWithEncryptedData:encryptedData headers:[outgoingMessage headers] shouldBeMIME:YES keysToAttach:keysToAttach]; + } else { + newBodyData = [self _newPGPBodyDataWithOriginalData:encryptedData headers:[outgoingMessage headers] keysToAttach:keysToAttach]; + } + } else { + newBodyData = [self _newPGPInlineBodyDataWithData:[[contents.plainText string] dataUsingEncoding:NSUTF8StringEncoding] headers:[outgoingMessage headers] shouldSign:shouldPGPInlineSign shouldEncrypt:shouldPGPInlineEncrypt]; + } + + if (newBodyData) { + // AND NOW replace the current message body with the new gpg message body. + // The subdata contains the range of the actual body excluding the headers + // but references the entrie message (NSMutableData). + [(_OutgoingMessageBody *)[outgoingMessage messageBody] setValue:newBodyData forKey:@"_rawData"]; + // _rawData instance variable has to hold the NSMutableData which + // contains the data of the entire message including the header data. + // Not sure why it's done this way, but HECK it works! + [outgoingMessage setValue:[newBodyData valueForKey:@"_parentData"] forKey:@"_rawData"]; + } + + if(!isDraft) + [GMSecurityHistory addEntryForSender:((ComposeBackEnd *)self).sender recipients:[((ComposeBackEnd *)self) allRecipients] securityMethod:GPGMAIL_SECURITY_METHOD_OPENPGP didSign:shouldPGPSign didEncrypt:shouldPGPEncrypt]; + + return outgoingMessage; +} + +- (BOOL)sentActionInvokedFromiCalWithContents:(WebComposeMessageContents *)contents { + if([contents.attachmentsAndHtmlStrings count] == 0) + return NO; + + + BOOL fromiCal = NO; + for(id item in contents.attachmentsAndHtmlStrings) { + if([item isKindOfClass:GM_MAIL_CLASS(@"MessageAttachment")]) { + MessageAttachment *attachment = (MessageAttachment *)item; + // For some non apparent reason, iCal invitations are not recognized by isCalendarInvitation anymore... + // so let's check for text/calendar AND isCalendarInvitation. + if(([[[attachment mimeType] lowercaseString] isEqualToString:@"text/calendar"] || attachment.isCalendarInvitation) && + [[attachment filename] rangeOfString:@"iCal"].location != NSNotFound && + [[attachment filename] rangeOfString:@".ics"].location != NSNotFound) { + fromiCal = YES; + break; + } + } + } + + return fromiCal; +} + +- (BOOL)GMShouldDownloadRemoteAttachments { + // On Yosemite or higher there's a property to read the shouldDownloadRemoteAttachments flag. + // otherwise, we have to access the _flags struct. + BOOL shouldDownloadRemoteAttachments = NO; + if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_9) { + shouldDownloadRemoteAttachments = [[self valueForKey:@"_shouldDownloadRemoteAttachments"] boolValue]; + } + else { + mailFlags backEndFlags; + Ivar flags = class_getInstanceVariable([self class], "_flags"); + + CFTypeRef cfSelf = CFBridgingRetain(self); + backEndFlags = *(mailFlags *)((uint8_t *)cfSelf + ivar_getOffset(flags)); + shouldDownloadRemoteAttachments = backEndFlags.shouldDownloadRemoteAttachments; + CFBridgingRelease(cfSelf); + } + + return shouldDownloadRemoteAttachments; +} + +/** + makeMessageWithContents:isDraft:shouldSign:shouldEncrypt:shouldSkipSignature:shouldBePlainText: sets the encrpyt and sign flags + internal on the message write. For drafts however, these flags are not set, which leads to unencrypted, unsigned drafts. + Our workaround forces drafts to be encrypted and/or signed by disabling the draft setting. + The problem is, while that works for normal IMAP accounts, it doesn't for GMail, which creates a new message for each + draft if "Store drafts on server" is activated. + We hook into this message, to force the draft setting to be on for drafts, AFTER the encrypt and sign flags are set. + This way, the messages remain actual drafts, and GMail is satisfied as well and behaves as it should. + + On Mavericks the method is called: newOutgoingMessageUsingWriter:contents:headers:isDraft:shouldBePlainText: + On (Mountain)Lion the method is called: outgoingMessageUsingWriter:contents:headers:isDraft:shouldBePlainText: + + GMCodeInjector makes sure, that the correct method is overridden by our own. + */ +- (id)MAOutgoingMessageUsingWriter:(id)writer contents:(id)contents headers:(id)headers isDraft:(BOOL)isDraft shouldBePlainText:(BOOL)shouldBePlainText { + if([contents ivarExists:@"IsDraft"]) + isDraft = [[contents getIvar:@"IsDraft"] boolValue]; + if([contents ivarExists:@"IsDraft"] && isDraft) { + [headers setHeader:@"com.apple.mail-draft" forKey:@"x-uniform-type-identifier"]; + + + // Prevent hang on 10.10 when restoring drafts. + // Mail on 10.10 needs the "x-apple-mail-remote-attachments" header in every draft mail. + // See: https://gpgtools.lighthouseapp.com/projects/65764-gpgmail/tickets/871 + [headers setHeader:self.GMShouldDownloadRemoteAttachments ? @"YES" : @"NO" forKey:@"x-apple-mail-remote-attachments"]; + + + // Mail doesn't pass in the sign status, when saving a draft, so we have to get it ourselves. + // For encrypt we also use the state of the button, shouldEncrypt is overriden by our own + // logic to always encrypt drafts if possible. + BOOL shouldSign = NO; + BOOL shouldEncrypt = NO; + + NSDictionary *securityProperties = self.securityProperties; + + if(securityProperties[@"ForceSign"]) + shouldSign = [securityProperties[@"ForceSign"] boolValue]; + else + shouldSign = [securityProperties[@"shouldSign"] boolValue]; + + if(securityProperties[@"ForceEncrypt"]) + shouldEncrypt = [securityProperties[@"ForceEncrypt"] boolValue]; + else + shouldEncrypt = [securityProperties[@"shouldEncrypt"] boolValue]; + + + [headers setHeader:shouldEncrypt ? @"YES" : @"NO" forKey:@"x-should-pgp-encrypt"]; + [headers setHeader:shouldSign ? @"YES" : @"NO" forKey:@"x-should-pgp-sign"]; + + // MailTags seems to duplicate our mail headers, if the message is to be encrypted. + // This behaviour is worked around in [MCMessageGenerator _newDataForMimePart:withPartData:] + // by removing the duplicate mail headers. + // We should however only interfere, if a draft is being created, since this workaround might not be suitable + // for every type of message. + // In order for the MCMessageGenerator instance to know if a draft is being created, + // we add a flag to it. + [writer setIvar:@"IsDraft" value:@(YES)]; + } + else { + [headers removeHeaderForKey:@"x-should-pgp-encrypt"]; + [headers removeHeaderForKey:@"x-should-pgp-sign"]; + [headers removeHeaderForKey:@"x-uniform-type-identifier"]; + [headers removeHeaderForKey:@"x-apple-mail-plain-text-draft"]; + } + return [self MAOutgoingMessageUsingWriter:writer contents:contents headers:headers isDraft:isDraft shouldBePlainText:shouldBePlainText]; +} + +- (void)didCancelMessageDeliveryForError:(NSError *)error { + [(MailDocumentEditor *)[(ComposeBackEnd *)self delegate] backEnd:self didCancelMessageDeliveryForEncryptionError:error]; +} + +- (void)_addGPGFlaggedStringsToHeaders:(NSMutableDictionary *)headers forEncrypting:(BOOL)forEncrypting forSigning:(BOOL)forSigning forSymmetric:(BOOL)forSymmetric isDraft:(BOOL)isDraft { + // To decide whether S/MIME or PGP operations should be performed on + // the message, different headers have to be flagged. + // + // F̶o̶r̶ ̶s̶i̶g̶n̶i̶n̶g̶ Always: + // * flag the "from" value with "gpgKey" = GPGKey. + // + // For encrypting: + // * temporarily add the flagged sender ("recipientType" = "from") to the bcc recipients list, + // to encrypt for self, so each message can also be decrypted by the sender. + // (the "from" value is not inlucded in the recipients list passed to the encryption + // method) + // Also flag all bcc recipients with "recipientType" = "bcc". + // + // For symmetric: + // * flag the "from" value with "symmetricEncrypt" = YES, + // if forEncrypting isn't set flag additionally with "doNotPublicEncrypt" = YES. + // + // Is draft: + // * flag the "from" value with "isDraft" = YES. + // + + + GPGFlaggedString *flaggedString = [headers[@"from"] flaggedStringWithFlag:@"recipientType" value:@"from"]; + if (forSymmetric) { + [flaggedString setValue:@YES forFlag:@"symmetricEncrypt"]; + if (!forEncrypting) { + [flaggedString setValue:@YES forFlag:@"doNotPublicEncrypt"]; + } + } + GPGKey *key = [self getIvar:@"gpgKeyForSigning"]; + if (key) { + [flaggedString setValue:key forFlag:@"gpgKey"]; + } + + if (isDraft) { + [flaggedString setValue:@YES forFlag:@"isDraft"]; + // If this message is saved as draft, check if we have a gpg key which belongs to the + // specified sender. If it's not available, try to find any secret key available. + GPGKey *encryptDraftPublicKey = key.primaryKey; + if(!encryptDraftPublicKey) + encryptDraftPublicKey = [[GPGMailBundle sharedInstance] anyPersonalPublicKeyWithPreferenceAddress:[headers[@"from"] gpgNormalizedEmail]]; + // Store the appropriate public key to encrypt. + if(encryptDraftPublicKey) + [flaggedString setValue:encryptDraftPublicKey forFlag:@"DraftPublicKey"]; + } + headers[@"from"] = flaggedString; + + // Save the original bcc recipients, to restore later. + [self setIvar:@"originalBCCRecipients" value:[headers valueForKey:@"bcc"]]; + if (forEncrypting) { + NSMutableArray *newBCCList = [NSMutableArray array]; + // Flag BCCs as bcc, so we can use hidden-recipient. + NSArray *bccRecipients = [headers valueForKey:@"bcc"]; + for(NSString *bcc in bccRecipients) + [newBCCList addObject:[bcc flaggedStringWithFlag:@"recipientType" value:@"bcc"]]; + + [newBCCList addObject:flaggedString]; + [headers setValue:newBCCList forKey:@"bcc"]; + } +} + +- (Subdata *)_newPGPBodyDataWithOriginalData:(NSData *)originalData headers:(MutableMessageHeaders *)headers keysToAttach:(NSData *)keysToAttach { + + if (keysToAttach.length == 0 || originalData.length < 100) { + // If originalData's length < 100: No boundarys! (Should never happen) + return nil; + } + + + // Find the MIME boundary. + NSData *start = [NSData dataWithBytes:"\n--" length:3]; + NSData *end = [NSData dataWithBytes:"--\n" length:3]; + + NSRange searchRange = NSMakeRange(originalData.length - 30, 30); + NSRange endRange = [originalData rangeOfData:end options:NSDataSearchBackwards range:searchRange]; + if (endRange.length == 0) { + return nil; + } + + searchRange = NSMakeRange(endRange.location - 70, 70); + NSRange startRange = [originalData rangeOfData:start options:NSDataSearchBackwards range:searchRange]; + if (startRange.length == 0) { + return nil; + } + + searchRange.location = startRange.location; + searchRange.length = endRange.location + 3 - searchRange.location; + + NSData *bounddary = [originalData subdataWithRange:searchRange]; + + + // Build the message. + NSData *headerData = [headers encodedHeadersIncludingFromSpace:NO]; + + NSMutableData *mutableBodyData = [NSMutableData data]; + [mutableBodyData appendData:headerData]; + [mutableBodyData appendData:[originalData subdataWithRange:NSMakeRange(0, endRange.location)]]; + [mutableBodyData appendBytes:"\nContent-Transfer-Encoding: 7bit\nContent-Type: application/pgp-keys\n\n" length:69]; + [mutableBodyData appendData:keysToAttach]; + [mutableBodyData appendData:bounddary]; + + + NSRange contentRange = NSMakeRange(headerData.length, mutableBodyData.length - headerData.length); + Subdata *contentSubdata = [[GM_MAIL_CLASS(@"Subdata") alloc] initWithParent:mutableBodyData range:contentRange]; + + return contentSubdata; + +} + +- (Subdata *)_newPGPBodyDataWithEncryptedData:(NSData *)encryptedData headers:(MutableMessageHeaders *)headers shouldBeMIME:(BOOL)shouldBeMIME keysToAttach:(NSData *)keysToAttach { + // Now on to creating a new body and replacing the old one. + NSString *boundary = (NSString *)[GM_MAIL_CLASS(@"MimeBody") newMimeBoundary]; + NSData *topData; + NSData *versionData; + MimePart *topPart; + MimePart *versionPart; + MimePart *dataPart; + MimePart *keysPart; + + Class MimePart = GM_MAIL_CLASS(@"MimePart"); + + if(!shouldBeMIME) { + topPart = [[MimePart alloc] init]; + [topPart setType:@"text"]; + [topPart setSubtype:@"plain"]; + topPart.contentTransferEncoding = @"8bit"; + [topPart setBodyParameter:@"utf8" forKey:@"charset"]; + topData = encryptedData; + } + else { + // 1. Create the top level part. + topPart = [[MimePart alloc] init]; + [topPart setType:@"multipart"]; + [topPart setSubtype:@"encrypted"]; + [topPart setBodyParameter:@"application/pgp-encrypted" forKey:@"protocol"]; + // It's extremely important to set the boundaries for the parts + // that need them, otherwise the body data will not be properly generated + // by appendDataForMimePart. + [topPart setBodyParameter:boundary forKey:@"boundary"]; + topPart.contentTransferEncoding = @"7bit"; + // 2. Create the first subpart - the version. + versionPart = [[MimePart alloc] init]; + [versionPart setType:@"application"]; + [versionPart setSubtype:@"pgp-encrypted"]; + [versionPart setContentDescription:@"PGP/MIME Versions Identification"]; + versionPart.contentTransferEncoding = @"7bit"; + // 3. Create the pgp data subpart. + dataPart = [[MimePart alloc] init]; + [dataPart setType:@"application"]; + [dataPart setSubtype:@"octet-stream"]; + [dataPart setBodyParameter:@"encrypted.asc" forKey:@"name"]; + dataPart.contentTransferEncoding = @"7bit"; + [dataPart setDisposition:@"inline"]; + [dataPart setDispositionParameter:@"encrypted.asc" forKey:@"filename"]; + [dataPart setContentDescription:@"OpenPGP encrypted message"]; + // 5. Append both parts to the top level part. + [topPart addSubpart:versionPart]; + [topPart addSubpart:dataPart]; + + + // 6. Optionally attch the OpenPGP key(s). + if (keysToAttach.length > 0) { + keysPart = [[MimePart alloc] init]; + [keysPart setType:@"application"]; + [keysPart setSubtype:@"pgp-keys"]; + + [topPart addSubpart:keysPart]; + } + + + + // Again Mail.app will do the heavy lifting for us, only thing we need to do + // is create a map of mime parts and body data. + // The problem with that is, mime part can't be used a as a key with + // a normal NSDictionary, since that wants to copy all keys. + // So instad we use a CFDictionary which only retains keys. + versionData = [@"Version: 1\r\n" dataUsingEncoding:NSASCIIStringEncoding]; + topData = [@"This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156)" dataUsingEncoding:NSASCIIStringEncoding]; + } + + CFMutableDictionaryRef partBodyMapRef = CFDictionaryCreateMutable(NULL, 0, NULL, NULL); + CFDictionaryAddValue(partBodyMapRef, (__bridge const void *)(topPart), (__bridge const void *)(topData)); + if(shouldBeMIME) { + CFDictionaryAddValue(partBodyMapRef, (__bridge const void *)(versionPart), (__bridge const void *)(versionData)); + CFDictionaryAddValue(partBodyMapRef, (__bridge const void *)(dataPart), (__bridge const void *)(encryptedData)); + if (keysToAttach.length > 0) CFDictionaryAddValue(partBodyMapRef, (__bridge const void *)(keysPart), (__bridge const void *)(keysToAttach)); + } + + NSMutableDictionary *partBodyMap = (__bridge NSMutableDictionary *)partBodyMapRef; + // The body is done, now on to updating the headers since we'll use the original headers + // but have to change the top part headers. + // And also add our own special GPGMail header. + // Create the new top part headers. + NSMutableData *contentTypeData = [[NSMutableData alloc] initWithLength:0]; + [contentTypeData appendData:[[NSString stringWithFormat:@"%@/%@;", [topPart type], [topPart subtype]] dataUsingEncoding:NSASCIIStringEncoding]]; + for(id key in [topPart bodyParameterKeys]) + [contentTypeData appendData:[[NSString stringWithFormat:@"\n\t%@=\"%@\";", key, [topPart bodyParameterForKey:key]] dataUsingEncoding:NSASCIIStringEncoding]]; + [headers setHeader:contentTypeData forKey:@"content-type"]; + [headers setHeader:@"7bit" forKey:@"content-transfer-encoding"]; + [headers removeHeaderForKey:@"content-disposition"]; + [headers removeHeaderForKey:@"from "]; + + // Set the original bcc recipients. + NSArray *originalBCCRecipients = (NSArray *)[self getIvar:@"originalBCCRecipients"]; + if([originalBCCRecipients count]) + [headers setHeader:originalBCCRecipients forKey:@"bcc"]; + else + [headers removeHeaderForKey:@"bcc"]; + // Create the actualy body data. + NSData *headerData = [headers encodedHeadersIncludingFromSpace:NO]; + NSMutableData *bodyData = [[NSMutableData alloc] init]; + // First add the header data. + [bodyData appendData:headerData]; + // Now the mime parts. + MessageWriter *messageWriter = [[GM_MAIL_CLASS(@"MessageWriter") alloc] init]; + [messageWriter appendDataForMimePart:topPart toData:bodyData withPartData:partBodyMap]; + CFRelease(partBodyMapRef); + // Contains the range, which separates the mail headers + // from the actual mime content. + // JUST FOR INFO: messageDataIncludingFromSpace: returns an instance of NSMutableData, so basically + // it might be the same as _rawData. But we don't need that, so, that's alright. + NSRange contentRange = NSMakeRange([headerData length], + ([bodyData length] - [headerData length])); + Subdata *contentSubdata = [[GM_MAIL_CLASS(@"Subdata") alloc] initWithParent:bodyData range:contentRange]; + return contentSubdata; +} + +- (Subdata *)_newPGPInlineBodyDataWithData:(NSData *)data headers:(MutableMessageHeaders *)headers shouldSign:(BOOL)shouldSign shouldEncrypt:(BOOL)shouldEncrypt { + if (!data) + return nil; + // Now on to creating a new body and replacing the old one. + NSData *topData = nil; + MimePart *topPart; + + NSData *signedData = data; + NSData *encryptedData = nil; + + Class MimePart = [GPGMailBundle resolveMailClassFromName:@"MimePart"]; + + topPart = [[MimePart alloc] init]; + [topPart setValue:@"text" forKey:@"type"]; + [topPart setSubtype:@"plain"]; + [topPart setContentTransferEncoding:@"8bit"]; + [topPart setBodyParameter:@"utf8" forKey:@"charset"]; + + if(shouldSign) { + signedData = [(MimePart_GPGMail *)topPart inlineSignedDataForData:data sender:[headers firstAddressForKey:@"from"]]; + if (!signedData) { + return nil; + } + topData = signedData; + } + + id newlyEncryptedPart = nil; + if(shouldEncrypt) { + NSMutableArray *recipients = [[NSMutableArray alloc] init]; + [recipients addObjectsFromArray:[headers addressListForKey:@"to"]]; + [recipients addObjectsFromArray:[headers addressListForKey:@"cc"]]; + [recipients addObjectsFromArray:[headers addressListForKey:@"bcc"]]; + newlyEncryptedPart = [topPart newEncryptedPartWithData:signedData recipients:recipients encryptedData:&encryptedData]; + topData = encryptedData; + } + + if(!topData) { + return nil; + } + + // The body is done, now on to updating the headers since we'll use the original headers + // but have to change the top part headers. + // And also add our own special GPGMail header. + // Create the new top part headers. + NSMutableData *contentTypeData = [[NSMutableData alloc] initWithLength:0]; + NSString *topType = [topPart valueForKey:@"type"]; + NSString *topSubtype = [topPart valueForKey:@"subtype"]; + + [contentTypeData appendData:[[NSString stringWithFormat:@"%@/%@;", topType, topSubtype] dataUsingEncoding:NSASCIIStringEncoding]]; + for(id key in [topPart bodyParameterKeys]) + [contentTypeData appendData:[[NSString stringWithFormat:@"\n\t%@=\"%@\";", key, [topPart bodyParameterForKey:key]] dataUsingEncoding:NSASCIIStringEncoding]]; + [headers setHeader:contentTypeData forKey:@"content-type"]; + [headers setHeader:[topPart contentTransferEncoding] forKey:@"content-transfer-encoding"]; + [headers removeHeaderForKey:@"content-disposition"]; + [headers removeHeaderForKey:@"from "]; + + // Set the original bcc recipients. + NSArray *originalBCCRecipients = (NSArray *)[self getIvar:@"originalBCCRecipients"]; + if([originalBCCRecipients count]) + [headers setHeader:originalBCCRecipients forKey:@"bcc"]; + else + [headers removeHeaderForKey:@"bcc"]; + // Create the actualy body data. + NSData *headerData = [headers encodedHeadersIncludingFromSpace:NO]; + NSMutableData *bodyData = [[NSMutableData alloc] init]; + // First add the header data. + [bodyData appendData:headerData]; + [bodyData appendData:topData]; + // Contains the range, which separates the mail headers + // from the actual mime content. + // JUST FOR INFO: messageDataIncludingFromSpace: returns an instance of NSMutableData, so basically + // it might be the same as _rawData. But we don't need that, so, that's alright. + NSRange contentRange = NSMakeRange([headerData length], + ([bodyData length] - [headerData length])); + Subdata *contentSubdata = [[GM_MAIL_CLASS(@"Subdata") alloc] initWithParent:bodyData range:contentRange]; + return contentSubdata; +} + +- (BOOL)MACanEncryptForRecipients:(NSArray *)recipients sender:(NSString *)sender { + // This method is never supposed to be called on the main thread, + // so let's check for that. + if([NSThread isMainThread]) + return NO; + + // To really fix #624 make sure the backEnd is alive till the end of this method. + ComposeBackEnd_GPGMail *bself __attribute__((objc_precise_lifetime)) = self; + + if(![((ComposeBackEnd *)bself) delegate]) + return NO; + + DebugLog(@"Recipients: %@", recipients); + + BOOL canSMIMEEncrypt = [(ComposeBackEnd_GPGMail *)bself MACanEncryptForRecipients:recipients sender:sender]; + + // S/MIME addresses are treated in a case sensitive manner, so the normalizing (uncommenting and lowercasing) + // is only supposed to be done, AFTER the S/MIME canEncrypt check (#673) + sender = [sender gpgNormalizedEmail]; + + DebugLog(@"Can S/MIME encrypt to recipients: %@? %@", recipients, canSMIMEEncrypt ? @"YES" : @"NO"); + + NSMutableArray *mutableRecipients = [[NSMutableArray alloc] initWithArray:recipients]; + NSMutableArray *nonEligibleRecipients = [NSMutableArray array]; + [mutableRecipients addObject:[sender gpgNormalizedEmail]]; + + for(NSString *address in mutableRecipients) { + if(![[GPGMailBundle sharedInstance] canEncryptMessagesToAddress:[address gpgNormalizedEmail]]) + [nonEligibleRecipients addObject:address]; + } + BOOL canPGPEncrypt = [nonEligibleRecipients count] == 0 && [recipients count]; + + DebugLog(@"Can PGP encrypt to recipients: %@? %@", mutableRecipients, canPGPEncrypt ? @"YES" : @"NO"); + + NSDictionary *securityProperties = self.securityProperties; + BOOL canSMIMESign = [securityProperties[@"CanSMIMESign"] boolValue]; + BOOL canPGPSign = [securityProperties[@"CanPGPSign"] boolValue]; + + GPGMAIL_SIGN_FLAG signFlags = 0; + if(canPGPSign) + signFlags |= GPGMAIL_SIGN_FLAG_OPENPGP; + if(canSMIMESign) + signFlags |= GPGMAIL_SIGN_FLAG_SMIME; + + GPGMAIL_ENCRYPT_FLAG encryptFlags = 0; + if(canPGPEncrypt) + encryptFlags |= GPGMAIL_ENCRYPT_FLAG_OPENPGP; + if(canSMIMEEncrypt) + encryptFlags |= GPGMAIL_ENCRYPT_FLAG_SMIME; + + // If a message is replied to which is S/MIME or PGP/MIME signed, + // automatically set the appropriate security method. + BOOL canEncrypt = NO; + BOOL canSign = NO; + + GMSecurityHistory *securityHistory = [[GMSecurityHistory alloc] init]; + GMSecurityOptions *securityOptions = nil; + + if(!bself.securityMethod) { + if(bself.messageIsBeingReplied) { + Message *originalMessage = [((ComposeBackEnd *)bself) originalMessage]; + securityOptions = [securityHistory bestSecurityOptionsForReplyToMessage:originalMessage signFlags:signFlags encryptFlags:encryptFlags]; + } + else if([bself draftIsContinued]) { + Message *originalMessage = [((ComposeBackEnd *)bself) originalMessage]; + securityOptions = [securityHistory bestSecurityOptionsForMessageDraft:originalMessage signFlags:signFlags encryptFlags:encryptFlags]; + } + else { + securityOptions = [securityHistory bestSecurityOptionsForSender:sender recipients:recipients signFlags:signFlags encryptFlags:encryptFlags]; + } + bself.guessedSecurityMethod = securityOptions.securityMethod; + + if(bself.guessedSecurityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP) { + canEncrypt = canPGPEncrypt; + canSign = canPGPSign; + } + else { + canEncrypt = canSMIMEEncrypt; + canSign = canSMIMESign; + } + if(bself.guessedSecurityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP) { + DebugLog(@"Security Method is OpenPGP"); + DebugLog(@"Can OpenPGP Encrypt: %@", canPGPEncrypt ? @"YES" : @"NO"); + DebugLog(@"Can OpenPGP Sign: %@", canPGPSign ? @"YES" : @"NO"); + } + else if(bself.guessedSecurityMethod == GPGMAIL_SECURITY_METHOD_SMIME) { + DebugLog(@"Security Method is S/MIME"); + DebugLog(@"Can S/MIME Encrypt: %@", canSMIMEEncrypt ? @"YES" : @"NO"); + DebugLog(@"Can S/MIME Sign: %@", canSMIMESign ? @"YES" : @"NO"); + } + } + else { + canEncrypt = bself.securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP ? canPGPEncrypt : canSMIMEEncrypt; + canSign = bself.securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP ? canPGPSign : canSMIMESign; + if(bself.messageIsBeingReplied) { + Message *originalMessage = [((ComposeBackEnd *)bself) originalMessage]; + securityOptions = [securityHistory bestSecurityOptionsForReplyToMessage:originalMessage signFlags:signFlags encryptFlags:encryptFlags]; + } + else { + securityOptions = [securityHistory bestSecurityOptionsForSender:sender recipients:recipients securityMethod:bself.securityMethod canSign:canSign canEncrypt:canEncrypt]; + } + } + + NSMutableDictionary *updatedSecurityProperties = [@{} mutableCopy]; + + updatedSecurityProperties[@"SecurityOptions"] = securityOptions; + // On Yosemite, there's a new method which is responsible for handling the correct + // button state -[HeadersEditor setMessageIsToBeEncrypted:]. + // This method is called, after the check for canEncrypt is run. + // Since canEncrypt checks the preferences the user has set, SetEncrypt + // is set to Yes, if EncryptNewMessagesByDefault is enabled. + // The problem is, in that case messageIsToBeEncrypted is also set + // to true, even though the message can't be encrypted yet if no recipients + // are set. Due to that wrong state, the buttons are later not properly + // updated, when recipients are actually added and the test can be properly run. + // So if no recipients are available, we simply don't set SetEncrypt and everything + // should be fine. We might consider doing that on other OS X versions as well. + if([recipients count] > 0 || (![recipients count] && ![GPGMailBundle isYosemite])) + updatedSecurityProperties[@"SetEncrypt"] = @(securityOptions.shouldEncrypt); + + updatedSecurityProperties[@"SetSign"] = @(securityOptions.shouldSign); + updatedSecurityProperties[@"EncryptIsPossible"] = @(canEncrypt); + updatedSecurityProperties[@"SignIsPossible"] = @(canSign); + + if ([[GPGOptions sharedOptions] boolForKey:@"AllowSymmetricEncryption"]) { + updatedSecurityProperties[@"SymmetricIsPossible"] = @([GPGMailBundle gpgMailWorks]); + } + + [self updateSecurityProperties:updatedSecurityProperties]; + + return canEncrypt; +} + +- (BOOL)MACanSignFromAddress:(NSString *)address { + // To really fix #624 make sure the backEnd is alive till the end of this method. + ComposeBackEnd_GPGMail *bself __attribute__((objc_precise_lifetime)) = self; + + if(![((ComposeBackEnd *)bself) delegate]) + return NO; + + // If the security method is not yet set and the back end was not yet initialized, + // check S/MIME and PGP keychains to see if either method has a key + // for signing. + // For some reason, we're running into zombies if we don't do + // this. + BOOL canSMIMESign = [bself MACanSignFromAddress:address]; + NSMutableDictionary *updatedSecurityProperties = [@{} mutableCopy]; + updatedSecurityProperties[@"CanSMIMESign"] = @(canSMIMESign); + + DebugLog(@"Can sign S/MIME from address: %@? %@", address, canSMIMESign ? @"YES" : @"NO"); + + NSDictionary *securityProperties = self.securityProperties; + BOOL canPGPSign = [[GPGMailBundle sharedInstance] canSignMessagesFromAddress:[address gpgNormalizedEmail]]; + updatedSecurityProperties[@"CanPGPSign"] = @(canPGPSign); + updatedSecurityProperties[@"GMKnowsCanSign"] = @(YES); + + [self updateSecurityProperties:updatedSecurityProperties]; + + DebugLog(@"Can sign PGP from address: %@? %@", address, canPGPSign ? @"YES" : @"NO"); + + // Now, here's a problem. If canSign returns NO, canEncrypt is no longer + // checked, since for some reason S/MIME works like that, or maybe it's + // only Apple's implementation. + // So to avoid this, always return YES here if the security method is not already set. + // The correct status is stored for later lookup in canEncrypt. + return YES; +} + +- (id)MARecipientsThatHaveNoKeyForEncryption { + if(![((ComposeBackEnd *)self) delegate]) + return [NSArray array]; + + GPGMAIL_SECURITY_METHOD securityMethod = self.guessedSecurityMethod; + if(self.securityMethod) + securityMethod = self.securityMethod; + + if(securityMethod == GPGMAIL_SECURITY_METHOD_SMIME) + return [self MARecipientsThatHaveNoKeyForEncryption]; + + NSMutableArray *nonEligibleRecipients = [NSMutableArray array]; + for(NSString *recipient in [((ComposeBackEnd *)self) allRecipients]) { + if(![[GPGMailBundle sharedInstance] canEncryptMessagesToAddress:[recipient gpgNormalizedEmail]]) + [nonEligibleRecipients addObject:[recipient gpgNormalizedEmail]]; + } + + return nonEligibleRecipients; +} + +- (NSDictionary *)securityProperties { + __block NSDictionary *_securityProperties = nil; + dispatch_queue_t securityPropertiesQueue = [self securityPropertiesQueue]; + + ComposeBackEnd_GPGMail __weak *weakSelf = self; + dispatch_sync(securityPropertiesQueue, ^{ + ComposeBackEnd_GPGMail __strong *strongSelf = weakSelf; + if(![strongSelf ivarExists:@"GMSecurityProperties"]) + [strongSelf setIvar:@"GMSecurityProperties" value:[NSMutableDictionary new]]; + + _securityProperties = [strongSelf getIvar:@"GMSecurityProperties"]; + }); + return _securityProperties; +} + +- (void)updateSecurityProperties:(NSDictionary *)updates { + // We create our own copy of the securityProperties, + // since it's very much possible that they'll be overwritten with new + // ones, + NSMutableDictionary *securityProperties = [self.securityProperties mutableCopy]; + + NSMutableDictionary *propertiesToUpdate = [@{} mutableCopy]; + + for(id key in updates) { + if([updates[key] isKindOfClass:[NSNull class]]) + [securityProperties removeObjectForKey:key]; + else + propertiesToUpdate[key] = updates[key]; + } + + [securityProperties addEntriesFromDictionary:propertiesToUpdate]; + self.securityProperties = securityProperties; +} + +- (void)setSecurityProperties:(NSDictionary *)securityProperties { + dispatch_queue_t securityPropertiesQueue = [self securityPropertiesQueue]; + + ComposeBackEnd_GPGMail __weak *weakSelf = self; + dispatch_barrier_async(securityPropertiesQueue, ^{ + ComposeBackEnd_GPGMail __strong *strongSelf = weakSelf; + [strongSelf setIvar:@"GMSecurityProperties" value:securityProperties]; + }); +} + +- (BOOL)wasInitialized { + return [[self getIvar:@"WasInitialized"] boolValue]; +} + +- (void)setWasInitialized:(BOOL)wasInitialized { + [self setIvar:@"WasInitialized" value:@(wasInitialized)]; +} + +- (GPGMAIL_SECURITY_METHOD)securityMethod { + return [self.securityProperties[@"SecurityMethod"] unsignedIntValue]; +} + +- (void)setSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod { + // Reset SetSign, SetEncrypt, SignIsPossible, EncryptIsPossible, shouldSign, shouldEncrypt. + [self updateSecurityProperties:@{@"SecurityMethod": @((unsigned int)securityMethod), + @"SetSign": [NSNull null], + @"SetEncrypt": [NSNull null], + @"SignIsPossible": [NSNull null], + @"EncryptIsPossible": [NSNull null], + @"shouldSign": [NSNull null], + @"shouldEncrypt": [NSNull null], + @"shouldSymmetric": [NSNull null]}]; + + // Don't reset ForceEncrypt and ForceSign. User preference has to stick. ALWAYS! + + // NEVER! automatically change the security method once the user selected it. + // Only send the notification if security method is not reset to 0. + // otherwise some serious shit happens. + // Also only begin posting if the back end was initialized. + if(securityMethod && self.wasInitialized/* && !self.userDidChooseSecurityMethod*/) { + [(ComposeBackEnd *)self setHasChanges:YES]; + [self postSecurityMethodDidChangeNotification:(GPGMAIL_SECURITY_METHOD)securityMethod]; + } +} + +- (void)setGuessedSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod { + [self updateSecurityProperties:@{@"GuessedSecurityMethod": @((unsigned int)securityMethod), + @"SetSign": [NSNull null], + @"SetEncrypt": [NSNull null], + @"SignIsPossible": [NSNull null], + @"EncryptIsPossible": [NSNull null], + @"shouldSign": [NSNull null], + @"shouldEncrypt": [NSNull null], + @"shouldSymmetric": [NSNull null]}]; + + // Don't reset ForceEncrypt and ForceSign. User preference has to stick. ALWAYS! +} + +- (GPGMAIL_SECURITY_METHOD)guessedSecurityMethod { + return (GPGMAIL_SECURITY_METHOD)[self.securityProperties[@"GuessedSecurityMethod"] unsignedIntegerValue]; +} + +- (BOOL)userDidChooseSecurityMethod { + return [[self getIvar:@"UserDidChooseSecurityMethod"] boolValue]; +} + +- (void)setUserDidChooseSecurityMethod:(BOOL)userDidChoose { + [self setIvar:@"UserDidChooseSecurityMethod" value:@(userDidChoose)]; +} + +- (void)MA_configureLastDraftInformationFromHeaders:(id)headers overwrite:(BOOL)overwrite { + BOOL draftIsContinued = [headers firstHeaderForKey:@"x-should-pgp-sign"] != nil || [headers firstHeaderForKey:@"x-should-pgp-encrypt"] != nil; + [self setIvar:@"DraftIsContinued" value:@(draftIsContinued)]; + // If the "Send again" method is used, this method is called as well, even though it's not a draft. + // To really figure out if this is a draft or not, we're going to check for our own, + // is draft headers. + + [self MA_configureLastDraftInformationFromHeaders:headers overwrite:overwrite]; +} + +- (BOOL)messageIsBeingReplied { + // 1 = Reply + // 2 = Reply to all. + // 4 = Restored Reply window. + NSInteger type = [(ComposeBackEnd *)self type]; + return (type == 1 || type == 2 || type == 4) && ![self draftIsContinued]; +} + +- (BOOL)draftIsContinued { + return [[self getIvar:@"DraftIsContinued"] boolValue]; +} + +- (void)postSecurityMethodDidChangeNotification:(GPGMAIL_SECURITY_METHOD)securityMethod { + if(!securityMethod) + return; + /* Post notification that the security method has changed. */ + NSNotification *notification = [NSNotification notificationWithName:@"SecurityMethodDidChangeNotification" object:nil userInfo:@{@"SecurityMethod": @((unsigned int)securityMethod)}]; + [(MailNotificationCenter *)[NSClassFromString(@"MailNotificationCenter") defaultCenter] postNotification:notification]; +} + +- (BOOL)MA_saveThreadShouldCancel { + if ([[self getIvar:@"cancelSaving"] boolValue]) { + [self setIvar:@"cancelSaving" value:(id)kCFBooleanFalse]; + return YES; + } + return [self MA_saveThreadShouldCancel]; +} + +@end + +#undef MAIL_SELF + +@implementation GMDispatchQueueObject + +@synthesize dispatchQueue=_dispatchQueue; + +- (id)initWithName:(const char *)name queueAttributes:(dispatch_queue_attr_t)attributes { + if(self = [super init]) { + _name = [[NSString alloc] initWithCString:name encoding:NSUTF8StringEncoding]; + _dispatchQueue = dispatch_queue_create(name, attributes); + } + return self; +} + +- (dispatch_queue_t)dispatchQueue { + return _dispatchQueue; +} + +- (void)dealloc { + dispatch_release(_dispatchQueue); +} + +@end diff --git a/Source/ComposeHeaderView+GPGMail.h b/Source/ComposeHeaderView+GPGMail.h new file mode 100644 index 00000000..c2f46336 --- /dev/null +++ b/Source/ComposeHeaderView+GPGMail.h @@ -0,0 +1,47 @@ +/* ComposeHeaderView+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +@interface ComposeHeaderView_GPGMail : NSObject + +/** + awakeFromNib is called as soon as the nib for the compose header view is loaded. + GPGMail uses this method as entry point to add the OpenPGP checkbox, which decides + whether S/MIME or PGP should be used for encrypting and signing messages. + + The PGPEnabled variable is used to check the status of the checkbox internally. + */ +- (void)MAAwakeFromNib; + +/** + Is called by Mail internally to know the frame that is needed + to draw the security view in. + */ +/*- (CGRect)MA_calculateSecurityFrame:(CGRect)frame;*/ + +@end diff --git a/Source/ComposeHeaderView+GPGMail.m b/Source/ComposeHeaderView+GPGMail.m new file mode 100644 index 00000000..00f2a576 --- /dev/null +++ b/Source/ComposeHeaderView+GPGMail.m @@ -0,0 +1,52 @@ +/* ComposeHeaderView+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import +#import +#import +#import +#import "CCLog.h" +#import "NSObject+LPDynamicIvars.h" +#import "ComposeBackEnd+GPGMail.h" +#import "ComposeHeaderView.h" +#import "ComposeHeaderView+GPGMail.h" + +@implementation ComposeHeaderView_GPGMail + +- (void)MAAwakeFromNib { + if(![[GPGOptions sharedOptions] boolForKey:@"UseOpenPGPToSend"]) + return [self MAAwakeFromNib]; + ComposeBackEnd *backEnd = [(DocumentEditor *)[[((ComposeHeaderView *)self) delegate] valueForKey:@"_documentEditor"] backEnd]; + [backEnd setIvar:@"PGPEnabled" value:@YES]; + + [self MAAwakeFromNib]; +} + +@end diff --git a/Source/ComposeWindowController+GPGMail.h b/Source/ComposeWindowController+GPGMail.h new file mode 100644 index 00000000..ec91cb30 --- /dev/null +++ b/Source/ComposeWindowController+GPGMail.h @@ -0,0 +1,44 @@ +/* ComposeWindowController+GPGMail.h created by Lukas Pitschl on Tue 22-09-2015 */ + +/* + * Copyright (c) 2000-2015, GPGTools + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface ComposeWindowController_GPGMail : NSObject + +- (void)restorePositionBeforeAnimation; + +@end + +@interface ComposeWindowController_GPGMail (NotImplemented) + +- (void)_performSendAnimation; +- (void)composeViewControllerDidSend:(id)composeViewController; +- (void)cancelSendAnimation; + +@end diff --git a/Source/ComposeWindowController+GPGMail.m b/Source/ComposeWindowController+GPGMail.m new file mode 100644 index 00000000..1a12fc92 --- /dev/null +++ b/Source/ComposeWindowController+GPGMail.m @@ -0,0 +1,106 @@ +/* ComposeWindowController+GPGMail.m created by Lukas Pitschl on Tue 22-09-2015 */ + +/* + * Copyright (c) 2000-2015, GPGTools + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "NSObject+LPDynamicIvars.h" +#import "GMSecurityMethodAccessoryView.h" +#import "ComposeWindowController+GPGMail.h" + +@implementation ComposeWindowController_GPGMail + +- (id)MAToolbarDefaultItemIdentifiers:(id)toolbar { + id defaultItemIdentifiers = [self MAToolbarDefaultItemIdentifiers:toolbar]; + + // Appending the security method identifier to toggle between OpenPGP and S/MIME. + NSMutableArray *identifiers = [defaultItemIdentifiers mutableCopy]; + [identifiers addObject:@"toggleSecurityMethod:"]; + + return identifiers; +} + +- (id)MAToolbar:(id)toolbar itemForItemIdentifier:(id)itemIdentifier willBeInsertedIntoToolbar:(BOOL)willBeInsertedIntoToolbar { + if(![itemIdentifier isEqualToString:@"toggleSecurityMethod:"]) { + return [self MAToolbar:toolbar itemForItemIdentifier:itemIdentifier willBeInsertedIntoToolbar:willBeInsertedIntoToolbar]; + } + + // Make sure our toolbar item was not already added. + for(NSToolbarItem *item in [toolbar items]) { + if([item.itemIdentifier isEqualToString:itemIdentifier]) + return nil; + } + + // The delegate of GMSecurityMethodAccessoryView will be the current composeViewController. + // At this point it's however not yet set on the ComposeWindowController, so once the + // compose view controller is ready, it will set if self up as delegate. + GMSecurityMethodAccessoryView *securityMethodAccessoryView = [[GMSecurityMethodAccessoryView alloc] initWithStyle:GMSecurityMethodAccessoryViewStyleToolbarItem]; + [self setIvar:@"SecurityMethodAccessoryView" value:securityMethodAccessoryView]; + + NSToolbarItem *item = [[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier]; + + [item setView:securityMethodAccessoryView]; + [item setMinSize:NSMakeSize(75, 23)]; + [item setTarget:nil]; + + return item; +} + +- (void)MA_performSendAnimation { + // Store the the current frame position, to restore it in case of an error. + NSPoint currentOrigin = [(id)self window].frame.origin; + [self setIvar:@"WindowFrameOriginBeforeAnimation" value:@{@"X": @(currentOrigin.x), @"Y": @(currentOrigin.y)}]; + [self MA_performSendAnimation]; + return; +} + +- (void)restorePositionBeforeAnimation { + NSDictionary *originBeforeAnimation = [self getIvar:@"WindowFrameOriginBeforeAnimation"]; + if(!originBeforeAnimation) + return; + [self removeIvar:@"WindowFrameOriginBeforeAnimation"]; + [[(id)self window] setFrameOrigin:NSMakePoint([originBeforeAnimation[@"X"] floatValue], [originBeforeAnimation[@"Y"] floatValue])]; + [[(id)self window] makeKeyAndOrderFront:0]; + return; +} + +- (void)MA_tabBarView:(id)tabBarView performSendAnimationOfTabBarViewItem:(id)tabBarViewItem { + // This is ugly as fuck, but for the time being it has to do. + // We simply don't do anything with the tabBarViewItem or the view controller, since we might still need it + // and only run the animations. + // After we receive confirmation that the email has in fact been send with success, we'll run this method. + id viewController = [tabBarViewItem viewController]; + if([[viewController getIvar:@"GMAllowReleaseOfTabBarViewItem"] boolValue]) { + [viewController removeIvar:@"GMAllowReleaseOfTabBarViewItem"]; + [self MA_tabBarView:tabBarView performSendAnimationOfTabBarViewItem:tabBarViewItem]; + return; + } + + [[(id)self window] invalidateRestorableState]; + [self _performSendAnimation]; +} + +@end diff --git a/Source/ConversationMember+GPGMail.h b/Source/ConversationMember+GPGMail.h new file mode 100644 index 00000000..8ef59c2e --- /dev/null +++ b/Source/ConversationMember+GPGMail.h @@ -0,0 +1,45 @@ +/* ConversationMember+GPGMail.h created by Lukas Pitschl (@lukele) on Thu 18-Oct-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "ConversationMember.h" + +@interface ConversationMember_GPGMail : NSObject + +- (void)MA_reloadSecurityProperties; + +/* Selectors no longer available on Yosemite, so let's add them here + to shutup the compiler. Not good of course, but no better workaround + is known to the author. + */ +- (void)setIsEncrypted:(BOOL)isEncrypted; +- (void)setIsSigned:(BOOL)isSigned; +- (void)setSigners:(NSArray *)signers; +- (void)setSignerNames:(NSArray *)signerNames; + +@end diff --git a/Source/ConversationMember+GPGMail.m b/Source/ConversationMember+GPGMail.m new file mode 100644 index 00000000..73b4d1d6 --- /dev/null +++ b/Source/ConversationMember+GPGMail.m @@ -0,0 +1,50 @@ +/* ConversationMember+GPGMail.m created by Lukas Pitschl (@lukele) on Thu 18-Oct-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "ConversationMember+GPGMail.h" +#import "MCMessage.h" +#import "Message+GPGMail.h" + +@implementation ConversationMember_GPGMail + +- (void)MA_reloadSecurityProperties { + /* Doesn't seem to be used under Yosemite. */ + MCMessage *message = [(ConversationMember *)self originalMessage]; + if(((Message_GPGMail *)message).PGPSigned || ((Message_GPGMail *)message).PGPEncrypted) { + [self setIsEncrypted:((Message_GPGMail *)message).PGPEncrypted]; + [self setIsSigned:((Message_GPGMail *)message).PGPSigned]; + [self setSigners:((Message_GPGMail *)message).PGPSignatures]; + [self setSignerNames:[((Message_GPGMail *)message) PGPSignatureLabels]]; + return; + } + + [self MA_reloadSecurityProperties]; +} + +@end diff --git a/Source/EAEmailAddressParser+GPGMail.h b/Source/EAEmailAddressParser+GPGMail.h new file mode 100644 index 00000000..909fa25b --- /dev/null +++ b/Source/EAEmailAddressParser+GPGMail.h @@ -0,0 +1,34 @@ +/* EAEmailAddressParser+GPGMail.h created by Lukas Pitschl (@lukele) on Thu 17-Oct-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +@interface EAEmailAddressParser_GPGMail : NSObject + ++ (id)MARawAddressFromFullAddress:(id)address; + +@end diff --git a/Source/EAEmailAddressParser+GPGMail.m b/Source/EAEmailAddressParser+GPGMail.m new file mode 100644 index 00000000..0f5dec66 --- /dev/null +++ b/Source/EAEmailAddressParser+GPGMail.m @@ -0,0 +1,48 @@ +/* EAEmailAddressParser+GPGMail.m created by Lukas Pitschl (@lukele) on Thu 17-Oct-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "EAEmailAddressParser+GPGMail.h" +#import "GPGFlaggedString.h" + +@implementation EAEmailAddressParser_GPGMail + ++ (id)MARawAddressFromFullAddress:(id)address { + // If address is a GPGFlaggedString, keep it a GPGFlaggedString. + NSString *rawAddress = [self MARawAddressFromFullAddress:address]; + + if([address respondsToSelector:@selector(setValue:forFlag:)]) { + GPGFlaggedString *flaggedString = [[GPGFlaggedString alloc] initWithString:rawAddress flags:[[(GPGFlaggedString *)address flags] mutableCopy]]; + + return flaggedString; + } + + return rawAddress; +} + +@end diff --git a/Source/GMCodeInjector.h b/Source/GMCodeInjector.h new file mode 100644 index 00000000..c981bda4 --- /dev/null +++ b/Source/GMCodeInjector.h @@ -0,0 +1,38 @@ +/* GMCodeInjector.h created by Lukas Pitschl (@lukele) on Fri 14-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface GMCodeInjector : NSObject + ++ (void)injectUsingMethodPrefix:(NSString *)prefix; ++ (void)injectUsingMethodPrefix:(NSString *)prefix hooks:(NSDictionary*)hooks; ++ (NSDictionary *)hooks; + +@end diff --git a/Source/GMCodeInjector.m b/Source/GMCodeInjector.m new file mode 100644 index 00000000..19f43f65 --- /dev/null +++ b/Source/GMCodeInjector.m @@ -0,0 +1,533 @@ +/* GMCodeInjector.m created by Lukas Pitschl (@lukele) on Fri 14-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "CCLog.h" +#import "GPGMail_Prefix.pch" +#import "JRLPSwizzle.h" +#import "GPGMailBundle.h" +#import "GMCodeInjector.h" + +@implementation GMCodeInjector + ++ (NSDictionary *)commonHooks { + return @{ + @"MessageHeaderDisplay": @[ + @"_attributedStringForSecurityHeader", + @"textView:clickedOnLink:atIndex:" + ], + @"ComposeBackEnd": @[ + @"_makeMessageWithContents:isDraft:shouldSign:shouldEncrypt:shouldSkipSignature:shouldBePlainText:", + @"canEncryptForRecipients:sender:", + @"canSignFromAddress:", + @"recipientsThatHaveNoKeyForEncryption", + @"setEncryptIfPossible:", + @"setSignIfPossible:", + @"_saveThreadShouldCancel", + @"_configureLastDraftInformationFromHeaders:overwrite:", + @"sender", + @"outgoingMessageUsingWriter:contents:headers:isDraft:shouldBePlainText:", + @"initCreatingDocumentEditor:" + ], + @"HeadersEditor": @[ + @"securityControlChanged:", + @"_updateFromAndSignatureControls:", + @"changeFromHeader:", + @"dealloc", + @"awakeFromNib", + @"_updateSignButtonTooltip", + @"_updateEncryptButtonTooltip", + @"updateSecurityControls", + @"_updateSecurityStateInBackgroundForRecipients:sender:" + ], + @"MailDocumentEditor": @[ + @"backEndDidLoadInitialContent:", + @"dealloc", + @"backEnd:didCancelMessageDeliveryForEncryptionError:", + @"backEnd:didCancelMessageDeliveryForError:", + @"initWithBackEnd:", + @"sendMessageAfterChecking:" + ], + @"NSWindow": @[ + @"toggleFullScreen:" + ], + @"MessageContentController": @[ + @"setMessageToDisplay:" + ], + @"BannerController": @[ + @"updateBannerForViewingState:" + ], + @"Message": @[], + @"MimePart": @[ + @"isEncrypted", + @"newEncryptedPartWithData:recipients:encryptedData:", + @"newSignedPartWithData:sender:signatureData:", + @"verifySignature", + @"decodeWithContext:", + @"decodeTextPlainWithContext:", + @"decodeTextHtmlWithContext:", + @"decodeApplicationOctet_streamWithContext:", + @"isSigned", + @"isMimeSigned", + @"isMimeEncrypted", + @"usesKnownSignatureProtocol", + @"clearCachedDecryptedMessageBody" + ], + @"MimeBody": @[ + @"isSignedByMe", + @"_isPossiblySignedOrEncrypted" + ], + @"MessageCriterion": @[ + @"_evaluateIsDigitallySignedCriterion:", + @"_evaluateIsEncryptedCriterion:" + ], + @"Library": @[ + @"plistDataForMessage:subject:sender:to:dateSent:remoteID:originalMailbox:flags:mergeWithDictionary:", + ], + @"MailAccount": @[ + @"accountExistsForSigning", + @"completeDeferredAccountInitialization" + ], + @"OptionalView": @[ + @"widthIncludingOptionSwitch:" + ], + @"NSPreferences": @[ + @"sharedPreferences", + @"windowWillResize:toSize:", + @"toolbarItemClicked:", + @"showPreferencesPanelForOwner:" + ] + }; +} + ++ (NSDictionary *)hookChangesForMavericks { + return @{ + @"Library": @{ + @"status": @"renamed", + @"name": @"MFLibrary", + @"selectors": @{ + @"replaced": @[ + @[ + @"plistDataForMessage:subject:sender:to:dateSent:remoteID:originalMailbox:flags:mergeWithDictionary:", + @"plistDataForMessage:subject:sender:to:dateSent:dateReceived:dateLastViewed:remoteID:originalMailboxURLString:gmailLabels:flags:mergeWithDictionary:" + ] + ] + }, + }, + @"HeadersEditor": @{ + @"selectors": @{ + @"renamed": @[ + @[ + @"_updateSignButtonTooltip", + @"_updateSignButtonToolTip" + ], + @[ + @"_updateEncryptButtonTooltip", + @"_updateEncryptButtonToolTip" + ] + ] + } + }, + @"EAEmailAddressParser": @{ + @"selectors": @[ + @"rawAddressFromFullAddress:" + ] + }, + @"MimePart": @{ + @"status": @"renamed", + @"name": @"MCMimePart" + }, + @"MimeBody": @{ + @"status": @"renamed", + @"name": @"MCMimeBody" + }, + @"Message": @{ + @"status": @"renamed", + @"name": @"MCMessage", + @"selectors": @{ + @"added": @[ + @"setMessageInfo:subjectPrefixLength:to:sender:type:dateReceivedTimeIntervalSince1970:dateSentTimeIntervalSince1970:messageIDHeaderDigest:inReplyToHeaderDigest:dateLastViewedTimeIntervalSince1970:" + ] + } + }, + @"ComposeBackEnd": @{ + @"selectors": @{ + @"renamed": @[ + @[ + @"outgoingMessageUsingWriter:contents:headers:isDraft:shouldBePlainText:", + @"newOutgoingMessageUsingWriter:contents:headers:isDraft:shouldBePlainText:" + ] + ] + } + }, + @"MessageCriterion": @{ + @"status": @"renamed", + @"name": @"MFMessageCriterion" + }, + @"MailAccount": @{ + @"status": @"renamed", + @"name": @"MFMailAccount" + }, + @"MailDocumentEditor": @{ + @"status": @"renamed", + @"name": @"DocumentEditor" + }, + @"MessageRouter": @{ + @"status": @"renamed", + @"name": @"MFMessageRouter" + }, + @"MessageContentController": @{ + @"status": @"renamed", + @"name": @"MessageViewController", + @"selectors": @{ + @"replaced": @[ + @[ + @"setMessageToDisplay:", + @"setRepresentedObject:" + ] + ] + } + }, + @"MessageHeaderDisplay": @{ + @"status": @"renamed", + @"name": @"HeaderViewController", + @"selectors": @{ + @"added": @[ + @"_displayStringForSecurityKey", + @"textView:clickedOnCell:inRect:atIndex:", + @"_updateTextStorageWithHardInvalidation:", + @"toggleDetails:" + ], + @"removed": @[ + @"_attributedStringForSecurityHeader", + @"textView:clickedOnLink:atIndex:" + ] + + } + }, + @"BannerController": @{ + @"status": @"removed" + }, + @"ConversationMember": @{ + @"selectors": @[ + @"_reloadSecurityProperties" + ] + }, + @"WebDocumentGenerator": @{ + @"selectors": @[ + @"setWebDocument:" + ] + }, + @"MCMessageGenerator": @{ + @"selectors": @[ + @"_newDataForMimePart:withPartData:" + ] + } + }; +} + ++ (NSDictionary *)hookChangesForYosemite { + return @{ + @"HeadersEditor": @{ + @"selectors": @{ + @"renamed": @[ + @[@"updateSecurityControls", + @"_updateSecurityControls" + ] + + ], + @"removed": @[ + @"_updateSignButtonToolTip", + @"_updateEncryptButtonToolTip", + @"toggleDetails", + @"_updateFromAndSignatureControls:" + ], + @"added": @[ + @"_updateFromControl", + @"setMessageIsToBeEncrypted:", + @"setMessageIsToBeSigned:", + @"setCanSign:", + @"setCanEncrypt:" + ] + } + }, + @"ComposeBackEnd": @{ + @"selectors": @{ + @"added": @[ + @"setKnowsCanSign:" + ] + } + }, + @"HeaderViewController": @{ + @"selectors": @{ + @"removed": @[ + @"_displayStringForSecurityKey", + @"toggleDetails:" // TODO: Implement again? + ] + } + }, + @"ConversationMember": @{ + @"selectors": @{ + @"removed": @[ + @"_reloadSecurityProperties" + ] + } + } + }; +} + ++ (NSDictionary *)hookChangesForElCapitan { + return @{ + // Insert the security method switcher into the toolbar as a toolbar item. + @"MailToolbar": @{ + @"selectors": @[ + @"_plistForToolbarWithIdentifier:" + ] + }, + @"ComposeWindowController": @{ + @"selectors": @[ + @"toolbarDefaultItemIdentifiers:", + @"toolbar:itemForItemIdentifier:willBeInsertedIntoToolbar:", + @"_performSendAnimation", + @"_tabBarView:performSendAnimationOfTabBarViewItem:" + ] + }, + @"ComposeBackEnd": @{ + @"selectors": @{ + @"added": @[ + @"init" + ], + @"removed": @[ + @"initCreatingDocumentEditor:", + ] + } + }, + @"DocumentEditor": @{ + @"status": @"renamed", + @"name": @"ComposeViewController", + @"selectors": @{ + @"removed": @[ + @"initWithBackEnd:" + ], + @"added": @[ + @"setDelegate:", + @"backEndDidAppendMessageToOutbox:result:" + ] + } + } + }; +} + ++ (NSDictionary *)hooks { + static dispatch_once_t onceToken; + static NSDictionary *_hooks; + + dispatch_once(&onceToken, ^{ + NSMutableDictionary *hooks = [[NSMutableDictionary alloc] init]; + NSDictionary *commonHooks = [self commonHooks]; + + // Make a mutable version of all the dictionary. + for(NSString *class in commonHooks) + hooks[class] = [NSMutableArray arrayWithArray:commonHooks[class]]; + + /* Fix, once we can compile with stable Xcode including 10.9 SDK. */ + if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_8) + [self applyHookChangesForVersion:@"10.9" toHooks:hooks]; + if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_9) + [self applyHookChangesForVersion:@"10.10" toHooks:hooks]; + if([GPGMailBundle isElCapitan]) + [self applyHookChangesForVersion:@"10.11" toHooks:hooks]; + + _hooks = [NSDictionary dictionaryWithDictionary:hooks]; + }); + + return _hooks; +} + ++ (void)applyHookChangesForVersion:(NSString *)osxVersion toHooks:(NSMutableDictionary *)hooks { + NSDictionary *hookChanges; + if([osxVersion isEqualToString:@"10.9"]) + hookChanges = [self hookChangesForMavericks]; + else if([osxVersion isEqualToString:@"10.10"]) + hookChanges = [self hookChangesForYosemite]; + else if([osxVersion isEqualToString:@"10.11"]) + hookChanges = [self hookChangesForElCapitan]; + + for(NSString *class in hookChanges) { + NSDictionary *hook = hookChanges[class]; + + // Class was added. + if(!hooks[class]) { + // This check is necessary on older systems. 10.10+ has an additional check for nil value. + // If hook[selectors] is nil, it would call removeObjectForKey instead of setObject:forKey. + // Interestingly enough, this is done in the arclite implementation of the sdk this code is compiled on. + // Setting hook[class] to hook[selectors] would crash on previous version if the code was compiled on 10.9 or lower + // since no nil check was added in the arclite implementation of setObject:forKeyedSubscript: + if(hook[@"selectors"]) { + hooks[class] = hook[@"selectors"]; + } + continue; + } + // Class was removed. + if([hook[@"status"] isEqualToString:@"removed"]) { + [hooks removeObjectForKey:class]; + continue; + } + // Selectors were updated + if(hook[@"selectors"]) { + for(NSString *action in hook[@"selectors"]) { + for(id selector in hook[@"selectors"][action]) { + if([action isEqualToString:@"added"]) + [(NSMutableArray *)hooks[class] addObject:selector]; + else if([action isEqualToString:@"removed"]) { + NSMutableArray *tempHooks = [hooks[class] mutableCopy]; + [tempHooks removeObject:selector]; + hooks[class] = tempHooks; + } + else if([action isEqualToString:@"replaced"]) { + [(NSMutableArray *)hooks[class] removeObject:selector[0]]; + [(NSMutableArray *)hooks[class] addObject:selector[1]]; + } + else if([action isEqualToString:@"renamed"]) { + [(NSMutableArray *)hooks[class] removeObject:selector[0]]; + [(NSMutableArray *)hooks[class] addObject:selector]; + } + } + } + } + + // Class was renamed. + if([hook[@"status"] isEqualToString:@"renamed"]) { + hooks[hook[@"name"]] = hooks[class]; + [hooks removeObjectForKey:class]; + } + } + + +} + ++ (NSString *)legacyClassNameForName:(NSString *)className { + // Some classes have been renamed in Mavericks. + // This methods converts known classes to their counterparts in Mavericks. + if([@[@"MC", @"MF"] containsObject:[className substringToIndex:2]]) + return [className substringFromIndex:2]; + + if([className isEqualToString:@"DocumentEditor"]) + return @"MailDocumentEditor"; + + if([className isEqualToString:@"MessageViewController"]) + return @"MessageContentController"; + + if([className isEqualToString:@"HeaderViewController"]) + return @"MessageHeaderDisplay"; + + if([GPGMailBundle isElCapitan] && [className isEqualToString:@"ComposeViewController"]) + return @"MailDocumentEditor"; + + return className; +} + + ++ (void)injectUsingMethodPrefix:(NSString *)prefix hooks:(NSDictionary*)hooks{ + /** + This method replaces all of Mail's methods which are necessary for GPGMail + to work correctly. + + For each class of Mail that must be extended, a class with the same name + and suffix _GPGMail (_GPGMail) exists which implements the methods + to be relaced. + On runtime, these methods are first added to the original Mail class and + after that, the original Mail methods are swizzled with the ones of the + _GPGMail class. + + swizzleMap contains all classes and methods which need to be swizzled. + */ + + NSString *extensionClassSuffix = @"GPGMail"; + + NSError * __autoreleasing error = nil; + for(NSString *class in hooks) { + NSString *oldClass = [[self class] legacyClassNameForName:class]; + error = nil; + + NSArray *selectors = hooks[class]; + + Class mailClass = NSClassFromString(class); + if(!mailClass) { + DebugLog(@"WARNING: Class %@ doesn't exist. This leads to unexpected behaviour!", class); + continue; + } + + // Check if a class exists with _GPGMail. If that's + // the case, all the methods of that class, have to be added + // to the original Mail or Messages class. + Class extensionClass = NSClassFromString([oldClass stringByAppendingFormat:@"_%@", extensionClassSuffix]); + if(!extensionClass) { + // In order to correctly hook classes on older versions of OS X than 10.9, the MC and MF prefix + // is removed. There are however some cases, where classes where added to 10.9 which didn't exist + // on < 10.9. In those cases, let's try to find the class with the appropriate prefix. + + // Try to find extensions to the original classname. + extensionClass = NSClassFromString([class stringByAppendingFormat:@"_%@", extensionClassSuffix]); + } + BOOL extend = extensionClass != nil ? YES : NO; + if(extend) { + if(![mailClass jrlp_addMethodsFromClass:extensionClass error:&error]) + DebugLog(@"WARNING: methods of class %@ couldn't be added to %@ - %@", extensionClass, + mailClass, error); + } + + // And on to swizzling methods and class methods. + for(id selectorNames in selectors) { + // If the selector changed from one OS X version to the other, selectorNames is an NSArray and + // the selector name of the GPGMail implementation is item 0 and the Mail implementation name is + // item 1. + NSString *gmSelectorName = [selectorNames isKindOfClass:[NSArray class]] ? selectorNames[0] : selectorNames; + NSString *mailSelectorName = [selectorNames isKindOfClass:[NSArray class]] ? selectorNames[1] : selectorNames; + + error = nil; + NSString *extensionSelectorName = [NSString stringWithFormat:@"%@%@%@", prefix, [[gmSelectorName substringToIndex:1] uppercaseString], + [gmSelectorName substringFromIndex:1]]; + SEL selector = NSSelectorFromString(mailSelectorName); + SEL extensionSelector = NSSelectorFromString(extensionSelectorName); + // First try to add as instance method. + if(![mailClass jrlp_swizzleMethod:selector withMethod:extensionSelector error:&error]) { + // If that didn't work, try to add as class method. + if(![mailClass jrlp_swizzleClassMethod:selector withClassMethod:extensionSelector error:&error]) + DebugLog(@"WARNING: %@ doesn't respond to selector %@", NSStringFromClass(mailClass), + NSStringFromSelector(selector)); + } + } + } +} + ++ (void)injectUsingMethodPrefix:(NSString *)prefix { + [self injectUsingMethodPrefix:prefix hooks:[self hooks]]; +} + +@end diff --git a/Source/GMComposeKeyEventHandler.h b/Source/GMComposeKeyEventHandler.h new file mode 100644 index 00000000..e2871dd2 --- /dev/null +++ b/Source/GMComposeKeyEventHandler.h @@ -0,0 +1,19 @@ +#import + +@interface GMComposeKeyEventHandler : NSView { + NSArray *eventsAndSelectors; +} + +/* + * eventsAndSelectors + * Contains NSDicionarys with these keys: + * NSString keyEquivalent + * NSNumber keyEquivalentModifierMask + * id target + * NSValue selector + */ +@property (strong) NSArray *eventsAndSelectors; + +- (id)initWithView:(NSView *)view; + +@end diff --git a/Source/GMComposeKeyEventHandler.m b/Source/GMComposeKeyEventHandler.m new file mode 100644 index 00000000..a47d04f0 --- /dev/null +++ b/Source/GMComposeKeyEventHandler.m @@ -0,0 +1,37 @@ +#import "GMComposeKeyEventHandler.h" + +@implementation GMComposeKeyEventHandler +@synthesize eventsAndSelectors; + +- (id)initWithView:(NSView *)view { + if (!(self = [super initWithFrame:NSMakeRect(0, 0, 0, 0)])) { + return nil; + } + // Hang into the responder chain. + [view addSubview:self]; + return self; +} + + +- (BOOL)performKeyEquivalent:(NSEvent *)event { + for (NSDictionary *dict in self.eventsAndSelectors) { + NSString *keyEquivalent = dict[@"keyEquivalent"]; + NSUInteger keyEquivalentModifierMask = [dict[@"keyEquivalentModifierMask"] unsignedIntegerValue]; + + if ((event.modifierFlags & NSDeviceIndependentModifierFlagsMask) == keyEquivalentModifierMask && [keyEquivalent isEqualToString:event.charactersIgnoringModifiers]) { + id target = dict[@"target"]; + SEL selector = [dict[@"selector"] pointerValue]; + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Warc-performSelector-leaks" + [target performSelector:selector withObject:self]; +#pragma GCC diagnostic pop + return YES; + } + } + + return [super performKeyEquivalent:event]; +} + + +@end diff --git a/Source/GMKeyManager.h b/Source/GMKeyManager.h new file mode 100644 index 00000000..a3d60a14 --- /dev/null +++ b/Source/GMKeyManager.h @@ -0,0 +1,118 @@ +/* GMKeyManager.h created by Lukas Pitschl (@lukele) on Wed 13-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface GMKeyManager : NSObject { + // Key caches for quick access. + NSSet *_secretKeys; + NSDictionary *_secretKeysByID; + // All secret keys also holds keys that are disabled, since + // those keys are still able to decrypt messages. + // If only enabled secret keys are checked against the keys + // which passphrase is in the gpg-agent cache, there's a chance + // that a pinentry request might pop up even though not all keys + // necessary are in the agent cache. + NSSet *_allSecretKeys; + NSDictionary *_allSecretKeysByID; + NSDictionary *_secretKeysByEmail; + NSDictionary *_secretKeyMap; + + NSSet *_publicKeys; + NSDictionary *_publicKeysByID; + NSDictionary *_publicKeysByEmail; + NSDictionary *_publicKeyMap; + + NSDictionary *_groups; + + dispatch_semaphore_t _keyCacheLock; +} + +/** + Returns the matching secret key to a given key ID. + */ +- (GPGKey *)secretKeyForKeyID:(NSString *)keyID; + +- (GPGKey *)secretKeyForKeyID:(NSString *)keyID includeDisabled:(BOOL)includeDisabled; + +/** + Returns the public key to one of the available secret keys. + The public key to a secret key matching the passed preference address, will be returned + first if available. Otherwise, any secret key's public key will do. + */ +- (GPGKey *)anyPersonalPublicKeyWithPreferenceAddress:(NSString *)address; + +/** + Return all secret keys which are available for a specified address. + */ +- (NSMutableSet *)signingKeyListForAddress:(NSString *)address; + +/** + Return all public keys which are available for the specified addresses. + */ +- (NSMutableSet *)publicKeyListForAddresses:(NSArray *)addresses; + +/** + Returns the key or subkey matching the given fingerprint. + */ +- (GPGKey *)keyForFingerprint:(NSString *)fingerprint; + +/** + Returns whether or not there's a secret key matching the given address. + */ +- (BOOL)secretKeyExistsForAddress:(NSString *)address; + +/** + Returns whether or not there's a public key matching the given address. + */ +- (BOOL)publicKeyExistsForAddress:(NSString *)address; + +/** + Returns a key which matches the given hint. User ID's, fingerprints are checked + if they match. + Only secret defines that only secret keys should be searched. + */ +- (GPGKey *)findKeyByHint:(NSString *)hint onlySecret:(BOOL)onlySecret; + +/** + Loads the keys in the background and returns immediately. + */ +- (void)scheduleInitialKeyUpdate; + +/** + Contains all GPG keys available. + */ +@property (nonatomic, strong, readonly) NSSet *allKeys; + +/** + Contains all secret GPG keys available. + */ +@property (nonatomic, strong, readonly) NSSet *secretKeys; + +@end diff --git a/Source/GMKeyManager.m b/Source/GMKeyManager.m new file mode 100644 index 00000000..f727d6dc --- /dev/null +++ b/Source/GMKeyManager.m @@ -0,0 +1,648 @@ +/* GMKeyManager.m created by Lukas Pitschl (@lukele) on Wed 13-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import "CCLog.h" +#import "GPGMail_Prefix.pch" +#import "GPGMailBundle.h" +#import "NSSet+Functional.h" +#import "NSString+GPGMail.h" +#import "GMKeyManager.h" +#define restrict +#import + + +const double kGMKeyManagerDelayInSecondsForInitialKeyLoad = 4; + +@interface GMKeyManager () + +@property (nonatomic, strong) GPGController *gpgc; + +// Key caches +@property (nonatomic, assign) dispatch_queue_t keysUpdateQueue; +@property (nonatomic, strong, readwrite) NSMutableSet *allKeys; +@property (nonatomic, strong, readwrite) NSSet *allSecretKeys; +@property (nonatomic, strong) NSSet *secretKeys; +@property (nonatomic, strong) NSDictionary *allSecretKeysByID; +@property (nonatomic, strong) NSDictionary *secretKeysByID; +@property (nonatomic, strong) NSDictionary *secretKeysByEmail; +@property (nonatomic, strong) NSDictionary *secretKeyMap; +@property (nonatomic, strong) NSSet *publicKeys; +@property (nonatomic, strong) NSDictionary *publicKeysByID; +@property (nonatomic, strong) NSDictionary *publicKeysByEmail; +@property (nonatomic, strong) NSDictionary *publicKeyMap; +@property (nonatomic, strong) NSDictionary *groups; + +@end + + +@implementation GMKeyManager + +@synthesize secretKeys = _secretKeys, +secretKeysByID = _secretKeysByID, secretKeysByEmail = _secretKeysByEmail, secretKeyMap = _secretKeyMap, publicKeys = _publicKeys, publicKeysByID = _publicKeysByID, publicKeysByEmail = _publicKeysByEmail, +publicKeyMap = _publicKeyMap, groups = _groups, allSecretKeys = _allSecretKeys, allSecretKeysByID = _allSecretKeysByID; + +- (id)sharedInstance { + static dispatch_once_t onceToken; + static GMKeyManager *_instance; + dispatch_once(&onceToken, ^{ + _instance = [[GMKeyManager alloc] init]; + }); + return _instance; +} + +- (id)init { + if(self = [super init]) { + [[NSDistributedNotificationCenter defaultCenter] addObserver:self selector:@selector(keysDidChange:) name:GPGKeyManagerKeysDidChangeNotification object:nil]; + _keyCacheLock = dispatch_semaphore_create(1); + } + + return self; +} + +#pragma mark - Public API + +- (GPGKey *)anyPersonalPublicKeyWithPreferenceAddress:(NSString *)address { + GPGKey *key = nil; + + // The best match would be the public key of on of our secret keys, with address + // as UID. + for(key in [self publicKeyListForAddresses:@[address]]) { + if(key.secret) + break; + } + + // If we don't find a key, any of our secret public key's will do. + if(!key) + key = [[self secretKeys] anyObject]; + + return key.primaryKey; +} + +- (BOOL)secretKeyExistsForAddress:(NSString *)address { + return [[self keysForAddresses:@[address] onlySecret:YES stopOnFound:YES] count] > 0; +} + +- (BOOL)publicKeyExistsForAddress:(NSString *)address { + return [[self keysForAddresses:@[address] onlySecret:NO stopOnFound:YES] count]; +} + +- (GPGKey *)keyForFingerprint:(NSString *)fingerprint { + // If the fingerprint length is 16, we assume that a key id is given + // instead and search all keys. + GPGKey *key = nil; + if([fingerprint length] == 16) { + for(GPGKey *tempKey in self.allKeysAndSubkeys) { + if([[tempKey keyID] isEqualToString:fingerprint]) { + key = tempKey; + return key; + } + } + } + + return [self.allKeysAndSubkeys member:fingerprint]; +} + +- (GPGKey *)secretKeyForKeyID:(NSString *)keyID { + return [self secretKeyForKeyID:keyID includeDisabled:NO]; +} + +- (GPGKey *)secretKeyForKeyID:(NSString *)keyID includeDisabled:(BOOL)includeDisabled { + if(includeDisabled) + return (self.allSecretKeysByID)[keyID]; + return (self.secretKeysByID)[keyID]; +} + +- (NSMutableSet *)signingKeyListForAddress:(NSString *)address { + return [self keysForAddresses:@[[address gpgNormalizedEmail]] onlySecret:YES stopOnFound:NO]; +} + +- (NSMutableSet *)publicKeyListForAddresses:(NSArray *)addresses { + NSMutableSet *normalizedAddresses = [NSMutableSet set]; + NSMutableSet *keys = [NSMutableSet set]; + for (NSString *address in addresses) { + if ([address isKindOfClass:[GPGKey class]]) { + [keys addObject:address]; + } else { + [normalizedAddresses addObject:[address gpgNormalizedEmail]]; + } + + } + [keys unionSet:[self keysForAddresses:[normalizedAddresses allObjects] onlySecret:NO stopOnFound:NO]]; + + return keys; +} + +- (void)scheduleInitialKeyUpdate { + [self scheduleInitialKeyUpdateAfterSeconds:kGMKeyManagerDelayInSecondsForInitialKeyLoad]; +} + +#pragma mark - + +- (void)scheduleInitialKeyUpdateAfterSeconds:(double)seconds { + // The keys should loaded after a specified period of time, + dispatch_time_t delay = dispatch_time(DISPATCH_TIME_NOW, (int64_t)seconds * NSEC_PER_SEC); + dispatch_after(delay, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void){ + [[GPGKeyManager sharedInstance] allKeys]; + }); +} + +- (void)keysDidChange:(NSNotification *)notification { + [self rebuildKeyCaches]; +} + +#pragma mark - Getters for lazy key cache loading. + +- (NSSet *)allKeys { + dispatch_semaphore_wait(_keyCacheLock, DISPATCH_TIME_FOREVER); + // Rebuild the key cache if allSecretKeys is not yet set. + if(_allSecretKeys == nil) + [self _rebuildKeyCaches]; + + dispatch_semaphore_signal(_keyCacheLock); + + return [[GPGKeyManager sharedInstance] allKeys]; +} + +- (NSSet *)allKeysAndSubkeys { + return [[GPGKeyManager sharedInstance] allKeysAndSubkeys]; +} + +- (NSSet *)secretKeys { + // Load all keys if not already available. + // This will also rebuild the caches if the keys + // are not yet available. + [self allKeys]; + return _secretKeys; +} + +- (NSSet *)allSecretKeys { + // Load all keys if not already available. + // This will also rebuild the caches if the keys + // are not yet available. + [self allKeys]; + return _allSecretKeys; +} + + +- (void)rebuildSecretKeysCache { + NSMutableSet *allSecretKeys = [[NSMutableSet alloc] init]; + + NSSet *secretKeys = [[[GPGKeyManager sharedInstance] allKeys] filter:^id (GPGKey *key) { + // Only either the key or one of the subkeys has to be valid, + // non-expired, non-disabled, non-revoked and be used for signing. + // We don't care about ownerTrust, validity. + if(key.secret) + [allSecretKeys addObject:key]; + if(key.secret && key.canAnySign && key.validity < GPGValidityInvalid) + return key; + + return nil; + }]; + self.secretKeys = secretKeys; + self.allSecretKeys = allSecretKeys; +} + +- (NSSet *)publicKeys { + [self allKeys]; + return _publicKeys; +} + +- (void)rebuildPublicKeysCache { + NSSet *publicKeys = [[[GPGKeyManager sharedInstance] allKeys] filter:^id (GPGKey *key) { + // Only either the key or one of the subkeys has to be valid, + // non-expired, non-disabled, non-revoked and be used for signing. + // We don't care about ownerTrust, validity. + if(key.canAnyEncrypt && key.validity < GPGValidityInvalid) + return key; + + return nil; + }]; + self.publicKeys = publicKeys; +} + +- (NSDictionary *)publicKeysByID { + [self allKeys]; + return _publicKeysByID; +} + +- (void)rebuildPublicKeysByIDCache { + NSMutableDictionary *map = [[NSMutableDictionary alloc] init]; + for(GPGKey *key in _publicKeys) { + [map setValue:key forKey:key.keyID]; + for(GPGKey *subkey in key.subkeys) + [map setValue:subkey forKey:subkey.keyID]; + } + self.publicKeysByID = map; +} + +- (NSDictionary *)secretKeysByID { + [self allKeys]; + return _secretKeysByID; +} + +- (NSDictionary *)allSecretKeysByID { + [self allKeys]; + return _allSecretKeysByID; +} + +- (void)rebuildSecretKeysByIDCache { + NSMutableDictionary *map = [[NSMutableDictionary alloc] init]; + for(GPGKey *key in _secretKeys) { + [map setValue:key forKey:key.keyID]; + for(GPGKey *subkey in key.subkeys) + [map setValue:subkey forKey:subkey.keyID]; + } + self.secretKeysByID = map; +} + +- (void)rebuildAllSecretKeysByIDCache { + NSMutableDictionary *map = [[NSMutableDictionary alloc] init]; + for(GPGKey *key in _allSecretKeys) { + [map setValue:key forKey:key.keyID]; + for(GPGKey *subkey in key.subkeys) + [map setValue:subkey forKey:subkey.keyID]; + } + self.allSecretKeysByID = map; +} + +- (NSDictionary *)publicKeysByEmail { + [self allKeys]; + return _publicKeysByEmail; +} + +- (void)rebuildPublicKeysByEmailCache { + NSMutableDictionary *map = [[NSMutableDictionary alloc] init]; + NSMutableDictionary *userIDEmailMap = [[NSMutableDictionary alloc] init]; + + for (GPGKey *key in _publicKeys) { + for (GPGUserID *userID in key.userIDs) { + NSString *email = [userID.email gpgNormalizedEmail]; + if (!email || userID.validity >= GPGValidityInvalid) { + continue; + } + + if (!userIDEmailMap[email]) { + NSMutableSet *set = [[NSMutableSet alloc] init]; + userIDEmailMap[email] = set; + } + [userIDEmailMap[email] addObject:userID]; + } + } + + // Loop through the entire map and if an email address has multiple + // matching user ids select the one that is best (newest or most trusted.) + for (NSString *email in userIDEmailMap) { + NSSet *userIDs = userIDEmailMap[email]; + if ([userIDs count] == 1) { + GPGKey *key = [[userIDs anyObject] primaryKey]; + map[email] = key; + continue; + } + GPGKey *key = [self bestKeyOfUserIDs:userIDs]; + map[email] = key; + } + + self.publicKeysByEmail = map; +} + + +- (NSDictionary *)secretKeysByEmail { + [self allKeys]; + return _secretKeysByEmail; +} + +- (void)rebuildSecretKeysByEmailCache { + // Checks for public keys which share the same email address and returns + // a dictionary only including the most trusted and newest key with the email address. + NSMutableDictionary *map = [[NSMutableDictionary alloc] init]; + + for (GPGKey *key in _secretKeys) { + for (GPGUserID *userID in key.userIDs) { + NSString *email = [userID.email gpgNormalizedEmail]; + if (!email || userID.validity >= GPGValidityInvalid) { + continue; + } + + if (!map[email]) { + NSMutableSet *list = [[NSMutableSet alloc] init]; + map[email] = list; + } + [map[email] addObject:key]; + } + } + + self.secretKeysByEmail = map; +} + +- (NSDictionary *)groups { + [self allKeys]; + return _groups; + +} + +- (void)rebuildGroupsCache { + NSDictionary *groups = [[GPGOptions sharedOptions] valueForKey:@"group"]; + NSMutableDictionary *cleanGroups = [[NSMutableDictionary alloc] init]; + + for (NSString *email in groups) { + NSArray *keyHints = groups[email]; + BOOL allKeysValid = YES; + NSMutableSet *keys = [[NSMutableSet alloc] init]; + for (NSString *keyHint in keyHints) { + GPGKey *key = [self findKeyByHint:keyHint onlySecret:NO]; + if (!key) { + allKeysValid = NO; + break; + } + [keys addObject:key]; + } + if (allKeysValid) + cleanGroups[[email gpgNormalizedEmail]] = keys; + } + + self.groups = cleanGroups; +} + +- (NSDictionary *)publicKeyMap { + [self allKeys]; + return _publicKeyMap; +} + +- (void)rebuildPublicKeyMapCache { + NSMutableDictionary *keyMap = [[NSMutableDictionary alloc] init]; + [keyMap addEntriesFromDictionary:_publicKeysByEmail]; + [keyMap addEntriesFromDictionary:_groups]; + [keyMap addEntriesFromDictionary:[self userMappedKeysSecretOnly:NO]]; + + self.publicKeyMap = keyMap; +} + +- (NSDictionary *)secretKeyMap { + [self allKeys]; + return _secretKeyMap; +} + +- (void)rebuildSecretKeyMapCache { + NSMutableDictionary *keyMap = [[NSMutableDictionary alloc] init]; + [keyMap addEntriesFromDictionary:_secretKeysByEmail]; + [keyMap addEntriesFromDictionary:[self userMappedKeysSecretOnly:YES]]; + + self.secretKeyMap = keyMap; +} + +- (void)rebuildKeyCaches { + dispatch_semaphore_wait(_keyCacheLock, DISPATCH_TIME_FOREVER); + [self _rebuildKeyCaches]; + dispatch_semaphore_signal(_keyCacheLock); +} + +- (void)_rebuildKeyCaches { + self.secretKeys = nil; + self.secretKeysByID = nil; + self.secretKeyMap = nil; + self.secretKeysByEmail = nil; + + self.publicKeys = nil; + self.publicKeysByID = nil; + self.publicKeyMap = nil; + self.publicKeysByEmail = nil; + + self.groups = nil; + + // First the two main key caches have to be rebuilt. + // All other caches are based on these. + [self rebuildSecretKeysCache]; + // Rebuild the public key cache. + [self rebuildPublicKeysCache]; + + dispatch_group_t cachesGroup = dispatch_group_create(); + + typeof(self) __weak weakSelf = self; + + dispatch_group_async(cachesGroup, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ + [weakSelf rebuildSecretKeysByEmailCache]; + }); + dispatch_group_async(cachesGroup, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ + [weakSelf rebuildPublicKeysByEmailCache]; + }); + dispatch_group_async(cachesGroup, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ + [weakSelf rebuildSecretKeysByIDCache]; + }); + dispatch_group_async(cachesGroup, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ + [weakSelf rebuildAllSecretKeysByIDCache]; + }); + dispatch_group_async(cachesGroup, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ + [weakSelf rebuildPublicKeysByIDCache]; + }); + dispatch_group_async(cachesGroup, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ + [weakSelf rebuildGroupsCache]; + }); + + // The secretKeyMap and publicKeyMap are based on all the previous + // caches, so they have to finish to be rebuilt. + dispatch_group_wait(cachesGroup, DISPATCH_TIME_FOREVER); + + [self rebuildSecretKeyMapCache]; + [self rebuildPublicKeyMapCache]; + + dispatch_async(dispatch_get_main_queue(), ^{ + [[NSNotificationCenter defaultCenter] postNotificationName:GPGMailKeyringUpdatedNotification object:nil]; + }); +} + +#pragma mark - Key helper methods + +- (NSMutableSet *)keysForAddresses:(NSArray *)addresses onlySecret:(BOOL)onlySecret stopOnFound:(BOOL)stop { + Class regexClass = [RKRegex class]; + Class setClass = [NSSet class]; + Class arrayClass = [NSArray class]; + NSDictionary *map = onlySecret ? self.secretKeyMap : self.publicKeyMap; + NSString *allAdresses = [addresses componentsJoinedByString:@"\n"]; + NSMutableSet *keys = [NSMutableSet set]; + + for (id identifier in map) { + if ([identifier isKindOfClass:regexClass] ? [allAdresses isMatchedByRegex:identifier] : [addresses containsObject:identifier]) { + id object = map[identifier]; + if([object isKindOfClass:setClass]) + [keys addObjectsFromArray:[object allObjects]]; + else if([object isKindOfClass:arrayClass]) + [keys addObjectsFromArray:object]; + else + [keys addObject:object]; + + if (stop) + break; + } + } + return keys; +} + +- (GPGKey *)findKeyByHint:(NSString *)hint onlySecret:(BOOL)onlySecret { + GPGKey *foundKey = nil; + if (hint.length == 0) { + return nil; + } + + NSSet *keys = onlySecret ? _secretKeys : _publicKeys; + for (GPGKey *key in keys) { + if ([key.textForFilter rangeOfString:hint options:NSCaseInsensitiveSearch].location != NSNotFound) { + foundKey = key; + for (GPGKey *subkey in key.subkeys) { + if ([subkey.textForFilter rangeOfString:hint].location != NSNotFound) { + foundKey = subkey; + } + } + break; + } + } + + if (foundKey && (hint.length & 7) == 0 && [foundKey.fingerprint rangeOfString:hint].location == NSNotFound) { + // Only check subkey fingerprints if a key is found and the hint looks like a keyID/fingerprint and the hint is not in the key's fingerprint. + + for (GPGKey *subkey in foundKey.subkeys) { + if ([subkey.fingerprint rangeOfString:hint options:NSCaseInsensitiveSearch | NSAnchoredSearch].location != NSNotFound) { + foundKey = subkey; + break; + } + } + } + + + + return foundKey; +} + +- (NSDictionary *)userMappedKeysSecretOnly:(BOOL)secretOnly { + NSMutableDictionary *mappedKeys = [[NSMutableDictionary alloc] init]; + BOOL needWrite = NO; + GPGOptions *options = [GPGOptions sharedOptions]; + + NSDictionary *oldMap = [options valueInStandardDefaultsForKey:@"PublicKeyUserMap"]; + if (oldMap) { + needWrite = YES; + [mappedKeys addEntriesFromDictionary:oldMap]; + [options setValueInStandardDefaults:nil forKey:@"PublicKeyUserMap"]; + } + oldMap = [options valueInCommonDefaultsForKey:@"PublicKeyUserMap"]; + if (oldMap) { + needWrite = YES; + [mappedKeys addEntriesFromDictionary:oldMap]; + [options setValueInCommonDefaults:nil forKey:@"PublicKeyUserMap"]; + } + + + /* "KeyMapping" is a dictionary the form @{@"Address": @"KeyID", @"*@domain.com": @"Fingerprint", @"Address": @[@"KeyID", @"Name", @"Fingerprint"]} */ + [mappedKeys addEntriesFromDictionary:[options valueInCommonDefaultsForKey:@"KeyMapping"]]; + + if (needWrite) { + [options setValueInCommonDefaults:mappedKeys forKey:@"KeyMapping"]; + } + + Class stringClass = [NSString class]; + Class arrayClass = [NSArray class]; + + NSMutableDictionary *cleanMappedKeys = [NSMutableDictionary dictionary]; + for (__strong NSString *pattern in mappedKeys) { + id keyIdentifier = mappedKeys[pattern]; + id object = nil; + + if ([keyIdentifier isKindOfClass:stringClass]) { + object = [self findKeyByHint:keyIdentifier onlySecret:secretOnly]; + } else if ([keyIdentifier isKindOfClass:arrayClass]) { + NSMutableArray *keys = [NSMutableArray array]; + for (NSString *hint in keyIdentifier) { + GPGKey *key = [self findKeyByHint:hint onlySecret:secretOnly]; + if (key) { + [keys addObject:key]; + object = keys; + } + } + } + + + if ([pattern rangeOfString:@"*"].length > 0) { + NSString *regexString = [NSString stringWithFormat:@"^%@$", [[NSRegularExpression escapedPatternForString:pattern] stringByReplacingOccurrencesOfString:@"\\*" withString:@".*"]]; + pattern = [RKRegex regexWithRegexString:regexString library:RKRegexPCRELibrary options:RKCompileCaseless | RKCompileMultiline error:nil]; + } else { + pattern = [pattern gpgNormalizedEmail]; + } + + if (object) + cleanMappedKeys[pattern] = object; + } + + return cleanMappedKeys; +} + +- (GPGKey *)bestKeyOfUserIDs:(NSSet *)userIDs { + // First check if any trusted keys are in there, if so, sort them by date. + NSMutableArray *secretUserIDs = [[NSMutableArray alloc] init]; + NSMutableArray *trustedUserIDs = [[NSMutableArray alloc] init]; + NSMutableArray *untrustedUserIDs = [[NSMutableArray alloc] init]; + for(GPGUserID *userID in userIDs) { + if (userID.primaryKey.secret) { + [secretUserIDs addObject:userID]; + } else if(userID.validity >= 3) { + [trustedUserIDs addObject:userID]; + } else { + [untrustedUserIDs addObject:userID]; + } + } + + NSSortDescriptor *dateSorter = [[NSSortDescriptor alloc] initWithKey:@"creationDate" ascending:NO comparator:^NSComparisonResult(id obj1, id obj2) { + return [(NSDate *)obj1 compare:obj2]; + }]; + + NSArray *sortedUserIDs = nil; + if (secretUserIDs.count) { + sortedUserIDs = secretUserIDs; + } else if (trustedUserIDs.count) { + sortedUserIDs = trustedUserIDs; + } else { + sortedUserIDs = untrustedUserIDs; + } + + sortedUserIDs = [sortedUserIDs sortedArrayUsingDescriptors:@[dateSorter]]; + + + return ((GPGUserID *)sortedUserIDs[0]).primaryKey; +} + +#pragma mark - Cleaning up + +- (void)dealloc { + @try { + [[NSDistributedNotificationCenter defaultCenter] removeObserver:self]; + } + @catch (NSException *e) { + } +} + +@end diff --git a/Source/GMMessageRulesApplier.h b/Source/GMMessageRulesApplier.h new file mode 100644 index 00000000..560d5c3e --- /dev/null +++ b/Source/GMMessageRulesApplier.h @@ -0,0 +1,43 @@ +/* GMMessageRulesApplier.h created by Lukas Pitschl (@lukele) on Fri 14-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@class Message; + +@interface GMMessageRulesApplier : NSObject { + dispatch_queue_t _rulesQueue; + NSMutableArray *_messages; + NSMutableDictionary *_rulesDict; +} + +- (id)init; +- (void)scheduleMessage:(Message *)message isEncrypted:(BOOL)isEncrypted; + +@end diff --git a/Source/GMMessageRulesApplier.m b/Source/GMMessageRulesApplier.m new file mode 100644 index 00000000..f653cf08 --- /dev/null +++ b/Source/GMMessageRulesApplier.m @@ -0,0 +1,92 @@ +/* GMMessageRulesApplier.m created by Lukas Pitschl (@lukele) on Fri 14-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import "CCLog.h" +#import "GMMessageRulesApplier.h" +#import "Message+GPGMail.h" +#import "MessageStore.h" +#import "NSObject+LPDynamicIvars.h" + +@interface GMMessageRulesApplier () + +@property (nonatomic, strong) NSMutableArray *messages; + +@end + +@implementation GMMessageRulesApplier + +@synthesize messages = _messages; + +- (id)init { + if(self = [super init]) { + _rulesQueue = dispatch_queue_create("org.gpgmail.rules", NULL);; + _messages = [[NSMutableArray alloc] init]; + } + return self; +} + +- (void)scheduleMessage:(Message *)message isEncrypted:(BOOL)isEncrypted { + id messageID = [message messageID]; + + // EWSMessage seems to be a special type of message related + // to exchange. Don't apply rules for those messages, not worth + // it. Don't even have a message id. + if([message isKindOfClass:[NSClassFromString(@"EWSMessage") class]]) + return; + + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + _rulesDict = [NSMutableDictionary dictionaryWithDictionary:[(GPGOptions *)[GPGOptions sharedOptions] objectForKey:@"MapOfMessagesWereRulesWereApplied"]]; + }); + + dispatch_async(_rulesQueue, ^{ + if(!messageID) + return; + + // Check if the rules were not already applied to this message. + if([_rulesDict objectForKey:[(NSString *)messageID description]]) + return; + + // Apply the rules for the message. + [message setIvar:@"OnlyIncludeEncryptedAndSignedRules" value:@(YES)]; + [[(Message_GPGMail *)message dataSourceProxy] routeMessages:@[message] isUserAction:NO]; + + // Add it to the rules dict, except if the message was encrypted and couldn't be decrypted + // because in that case, it's not possible to check if it was encrypted AND SIGNED. + BOOL saveRulesApplied = [(Message_GPGMail *)message PGPEncrypted] && ![(Message_GPGMail *)message PGPDecrypted] ? NO : YES; + + if(saveRulesApplied) { + [_rulesDict setValue:@(YES) forKey:messageID]; + [[GPGOptions sharedOptions] setValue:_rulesDict forKey:@"MapOfMessagesWereRulesWereApplied"]; + } + }); +} + +@end diff --git a/Source/GMSecurityControl.h b/Source/GMSecurityControl.h new file mode 100644 index 00000000..75c5962d --- /dev/null +++ b/Source/GMSecurityControl.h @@ -0,0 +1,113 @@ +/* + * Copyright (c) 2000-2012, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY GPGTools Project Team AND CONTRIBUTORS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL GPGTools Project Team AND CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#define ENCRYPT_LOCK_UNLOCKED_IMAGE @"NSLockUnlockedTemplate" +#define ENCRYPT_LOCK_LOCKED_IMAGE @"NSLockLockedTemplate" +#define SIGN_ON_IMAGE @"SignatureOnTemplate" +#define SIGN_OFF_IMAGE @"SignatureOffTemplate" + +typedef enum { + SECURITY_BUTTON_ENCRYPT_TAG = 1, + SECURITY_BUTTON_SIGN_TAG = 2 +} SECURITY_BUTTON_TAG; + +/** + GMSecurityControl replaces the NSSegmentedControl which is used for the + sign and encrypt button in the composer window in order to completely + control when the status of the buttons as well as the information of when + to encrypt and when to sign a message. + + By definition GPGMail should sign messages if replying to a message which + was signed and encrypt to a message which was encrypted. + + Mail itself chooses the options to use, based on the last selected option, + so we have to change the status ourselve. + + -[ComposeBackEnd signIfPossible:] and -[ComposeBackEnd encryptIfPossible:] + is called, once the user clicks on our control. Those methods internally + check the image of the control and based on that decide whether to enable + or disable encrypt and sign. + They call imageForSegment on the control to find out which image is used + (SIGN_OFF_IMAGE, SIGN_ON_IMAGE or ENCRYPT_LOCK_UNLOCKED_IMAGE, ENCRYPT_LOCK_LOCKED_IMAGE) + and set the inverted status. + + When a compose window is first loaded, the enabled status of the control is set + by Mail. We also control that status, since otherwise there was a small delay the + user was seeing, about a second after they opened a new editor the image would switch + to the right state. + + This way we can check the ComposeBackEnd EncryptIsPossible and SignIsPossible + ivar which is set by GPGMail based on the values of canEncryptForAddresses and + canSignFromAddress and set the enabled status based on that information and avoid + the delayed image status change. + + YES, THIS IS ALL FOR TOTAL CONTROL AND GREATEST USER EXPERIENCE! HA! +*/ + +@interface GMSecurityControl : NSObject { + NSSegmentedControl *_control; + SECURITY_BUTTON_TAG _securityTag; + NSString *_forcedImageName; +} + +/** + Set the NSSegmentedControl to delegate calls to. The tag attribute decides + whether this GMSecurityControl replaces the sign or encrypt button. +*/ +- (id)initWithControl:(NSSegmentedControl *)control tag:(SECURITY_BUTTON_TAG)tag; + +/* Forward any selector to the control which is not implemented. */ +- (id)forwardingTargetForSelector:(SEL)aSelector; + +/** + Override the incoming enabled flag by checking ComposeBackEnd EncryptIsPossible + and SignIsPossible. + */ +- (void)setEnabled:(BOOL)enabled; + +/** + If this is a reply set the image based on the signed and encrypted status + of the message which is being replied. + */ +- (void)setImage:(id)image forSegment:(NSInteger)segment; + +/** + Sets the image which is set on the next call to setImage:forSegment based + on the fromImage image. The forced image is the opposite of the fromImage. + + Mail.app doesn't completely know how to deal with the GMSecurityControl + so this image has to be set by GPGMail to display the right status + (on|off for encrypt and sign) + */ +- (void)updateStatusFromImage:(NSImage *)image; + +@property (nonatomic, strong) NSSegmentedControl *control; +@property (nonatomic, assign) SECURITY_BUTTON_TAG securityTag; +@property (nonatomic, strong) NSString *forcedImageName; + +@end + diff --git a/Source/GMSecurityControl.m b/Source/GMSecurityControl.m new file mode 100644 index 00000000..25f2eaaf --- /dev/null +++ b/Source/GMSecurityControl.m @@ -0,0 +1,161 @@ +/* + * Copyright (c) 2000-2012, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY GPGTools Project Team AND CONTRIBUTORS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL GPGTools Project Team AND CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "NSObject+LPDynamicIvars.h" +#import "Message.h" +#import "GPGMailBundle.h" +#import "ComposeBackEnd.h" +#import "MailDocumentEditor.h" +#import "Message+GPGMail.h" +#import "ComposeBackEnd+GPGMail.h" +#import "GMSecurityControl.h" + +@implementation GMSecurityControl + +@synthesize control = _control, securityTag = _securityTag, forcedImageName = _forcedImageName; + +- (id)initWithControl:(NSSegmentedControl *)control tag:(SECURITY_BUTTON_TAG)tag { + if(self = [super init]) { + self.control = control; + self.securityTag = tag; + } + return self; +} + +- (id)forwardingTargetForSelector:(SEL)aSelector { + return self.control; +} + +- (void)setEnabled:(BOOL)enabled { + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:[self.control target]]; + NSDictionary *securityProperties = ((ComposeBackEnd_GPGMail *)backEnd).securityProperties; + + if(self.securityTag == SECURITY_BUTTON_SIGN_TAG) { + enabled = [securityProperties[@"SignIsPossible"] boolValue]; + } + else { + enabled = [securityProperties[@"EncryptIsPossible"] boolValue]; + GPGMAIL_SECURITY_METHOD securityMethod = ((ComposeBackEnd_GPGMail *)backEnd).guessedSecurityMethod; + if(((ComposeBackEnd_GPGMail *)backEnd).securityMethod) + securityMethod = ((ComposeBackEnd_GPGMail *)backEnd).securityMethod; + if(securityMethod == GPGMAIL_SECURITY_METHOD_SMIME) { + // Encrypt is for some reason only possible with S/MIME + // if signing is also possible. + enabled = enabled && [securityProperties[@"SignIsPossible"] boolValue]; + } + } + [self.control setEnabled:enabled]; +} + +- (void)setImage:(id)image forSegment:(NSInteger)segment { + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:[((NSSegmentedControl *)self.control) target]]; + NSDictionary *securityProperties = ((ComposeBackEnd_GPGMail *)backEnd).securityProperties; + // forcedImageName is not nil if the user clicked on the control. + // In that case always change the control to the forced image. + // NEVER! ignore a user decision! + // EXCEPT in the case that a user wanted to encrypt/sign but that is no longer + // possible, due to missing pub keys or secret keys for recipients/sender. + + // Determines if the represented button could be enabled. + // Basically, if this is the encrypt button, and EncryptIsPossible is true, + // the enabled state is possible. Same goes for the sign button. + BOOL enabledIsPossible = self.securityTag == SECURITY_BUTTON_ENCRYPT_TAG ? [securityProperties[@"EncryptIsPossible"] boolValue] : [securityProperties[@"SignIsPossible"] boolValue]; + if(self.forcedImageName) { + // The force image should always be applied, unless it's not possible, + // which is, when the enabled state is not possible, but the image would + // show the enabled state. + NSString *imageToForce = self.forcedImageName; + if(([imageToForce isEqualToString:ENCRYPT_LOCK_LOCKED_IMAGE] || [imageToForce isEqualToString:SIGN_ON_IMAGE]) && + !enabledIsPossible) { + imageToForce = [self imageNameForOppositeOfImageName:self.forcedImageName]; + } + [self.control setImage:[NSImage imageNamed:imageToForce] forSegment:0]; + return; + } + + NSString *imageName = nil; + + if(self.securityTag == SECURITY_BUTTON_SIGN_TAG) { + BOOL setSign = securityProperties[@"ForceSign"] ? [securityProperties[@"ForceSign"] boolValue] : [securityProperties[@"SetSign"] boolValue]; + if(setSign && ![securityProperties[@"SignIsPossible"] boolValue]) + setSign = NO; + + imageName = setSign ? SIGN_ON_IMAGE : SIGN_OFF_IMAGE; + } + else if(self.securityTag == SECURITY_BUTTON_ENCRYPT_TAG) { + BOOL setEncrypt = securityProperties[@"ForceEncrypt"] ? [securityProperties[@"ForceEncrypt"] boolValue] : [securityProperties[@"SetEncrypt"] boolValue]; + + if(setEncrypt && ![securityProperties[@"EncryptIsPossible"] boolValue]) + setEncrypt = NO; + + imageName = setEncrypt ? ENCRYPT_LOCK_LOCKED_IMAGE : ENCRYPT_LOCK_UNLOCKED_IMAGE; + } + + [self.control setImage:[NSImage imageNamed:imageName] forSegment:0]; +} + +- (NSString *)imageNameForOppositeOfImageName:(NSString *)imageName { + if([imageName isEqualToString:ENCRYPT_LOCK_LOCKED_IMAGE]) + return ENCRYPT_LOCK_UNLOCKED_IMAGE; + if([imageName isEqualToString:ENCRYPT_LOCK_UNLOCKED_IMAGE]) + return ENCRYPT_LOCK_LOCKED_IMAGE; + if([imageName isEqualToString:SIGN_ON_IMAGE]) + return SIGN_OFF_IMAGE; + if([imageName isEqualToString:SIGN_OFF_IMAGE]) + return SIGN_ON_IMAGE; + return nil; +} + +- (void)updateStatusFromImage:(NSImage *)image { + // setImage is gonna be called a lot of times from the HeadersEditor after + // -[HeadersEditor securityControlChanged:] was received, but always tries + // to change it to the old status (before the click). + // That's why GPGMail forces the right image to be always set regardless from what the HeadersEditor + // wants. + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:[((NSSegmentedControl *)self.control) target]]; + NSMutableDictionary *updatedSecurityProperties = [@{} mutableCopy]; + + if(self.securityTag == SECURITY_BUTTON_SIGN_TAG) { + self.forcedImageName = [[image name] isEqualToString:SIGN_OFF_IMAGE] ? SIGN_ON_IMAGE : SIGN_OFF_IMAGE; + BOOL forceSign = NO; + if([[image name] isEqualToString:SIGN_OFF_IMAGE]) + forceSign = YES; + + updatedSecurityProperties[@"ForceSign"] = @(forceSign); + } + else { + self.forcedImageName = [[image name] isEqualToString:ENCRYPT_LOCK_UNLOCKED_IMAGE] ? ENCRYPT_LOCK_LOCKED_IMAGE : ENCRYPT_LOCK_UNLOCKED_IMAGE; + BOOL forceEncrypt = NO; + if([[image name] isEqualToString:ENCRYPT_LOCK_UNLOCKED_IMAGE]) + forceEncrypt = YES; + updatedSecurityProperties[@"ForceEncrypt"] = @(forceEncrypt); + } + + [(ComposeBackEnd_GPGMail *)backEnd updateSecurityProperties:updatedSecurityProperties]; +} + +@end diff --git a/Source/GMSecurityHistory.h b/Source/GMSecurityHistory.h new file mode 100644 index 00000000..b4d5158a --- /dev/null +++ b/Source/GMSecurityHistory.h @@ -0,0 +1,86 @@ +/* + * Copyright (c) 2000-2012, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY GPGTools Project Team AND CONTRIBUTORS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL GPGTools Project Team AND CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import "GPGConstants.h" + +#define GPGMAIL_SECURITY_OPTIONS_HISTORY_FILE @"security-options-history.data" +#define GPGMAIL_SECURITY_OPTIONS_HISTORY_DOMAIN @"org.gpgtools.gpgmail" + +@class GMSecurityOptions; + +@interface GMSecurityHistory : NSObject + ++ (GPGMAIL_SECURITY_METHOD)defaultSecurityMethod; + +- (GMSecurityOptions *)bestSecurityOptionsForSender:(NSString *)sender recipients:(NSArray *)recipients signFlags:(GPGMAIL_SIGN_FLAG)signFlags + encryptFlags:(GPGMAIL_ENCRYPT_FLAG)encryptFlags; +- (GMSecurityOptions *)bestSecurityOptionsForReplyToMessage:(Message *)message signFlags:(GPGMAIL_SIGN_FLAG)signFlags + encryptFlags:(GPGMAIL_ENCRYPT_FLAG)encryptFlags; +- (GMSecurityOptions *)bestSecurityOptionsForMessageDraft:(Message *)message signFlags:(GPGMAIL_SIGN_FLAG)signFlags + encryptFlags:(GPGMAIL_ENCRYPT_FLAG)encryptFlags; +- (GMSecurityOptions *)bestSecurityOptionsForSender:(NSString *)sender recipients:(NSArray *)recipients securityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod + canSign:(BOOL)canSign canEncrypt:(BOOL)canEncrypt; + +- (GMSecurityOptions *)_getSignAndEncryptOptionsForSender:(NSString *)sender recipients:(NSSet *)recipients securityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod + canSign:(BOOL)canSign canEncrypt:(BOOL)canEncrypt; + ++ (NSSet *)_uniqueRecipients:(NSArray *)recipients; + ++ (void)addEntryForSender:(NSString *)sender recipients:(NSArray *)recipients securityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod + didSign:(BOOL)didSign didEncrypt:(BOOL)didEncrypt; + +@end + +@interface GMSecurityOptions : NSObject { + GPGMAIL_SECURITY_METHOD _securityMethod; + BOOL _shouldSign; + BOOL _shouldEncrypt; +} + +- (id)initWithSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod shouldSign:(BOOL)shouldSign shouldEncrypt:(BOOL)shouldEncrypt; ++ (GMSecurityOptions *)securityOptionsWithSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod shouldSign:(BOOL)shouldSign shouldEncrypt:(BOOL)shouldEncrypt; + +@property (nonatomic, assign, readonly) GPGMAIL_SECURITY_METHOD securityMethod; +@property (nonatomic, assign, readonly) BOOL shouldSign; +@property (nonatomic, assign, readonly) BOOL shouldEncrypt; + +@end + +@interface GMSecurityHistoryStore : NSObject { + NSDictionary *_securityOptionsHistory; + NSString *_storePath; +} + +- (id)initWithHistoryFile:(NSString *)historyFile; +- (void)openHistoryStoreAtPath:(NSString *)historyFile; +- (void)saveHistory:(NSDictionary *)history; ++ (GMSecurityHistoryStore *)sharedInstance; + +@property (nonatomic, strong, readonly) NSDictionary *securityOptionsHistory; + +@end diff --git a/Source/GMSecurityHistory.m b/Source/GMSecurityHistory.m new file mode 100644 index 00000000..6d18c3de --- /dev/null +++ b/Source/GMSecurityHistory.m @@ -0,0 +1,471 @@ +/* + * Copyright (c) 2000-2012, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY GPGTools Project Team AND CONTRIBUTORS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL GPGTools Project Team AND CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import "CCLog.h" +#import "MutableMessageHeaders.h" +#import "NSString+GPGMail.h" +#import "Message+GPGMail.h" +#import "GMSecurityHistory.h" + +@implementation GMSecurityHistory + ++ (GPGMAIL_SECURITY_METHOD)defaultSecurityMethod { + GPGMAIL_SECURITY_METHOD securityMethod = (GPGMAIL_SECURITY_METHOD)[[GPGOptions sharedOptions] integerForKey:@"DefaultSecurityMethod"]; + if (securityMethod < 1 || securityMethod > 2) { + securityMethod = GPGMAIL_SECURITY_METHOD_OPENPGP; + } + DebugLog(@"Default Security Method is: %@", securityMethod == GPGMAIL_SECURITY_METHOD_SMIME ? @"S/MIME" : @"OpenPGP"); + return securityMethod; +} + +- (GMSecurityOptions *)securityOptionsFromDefaults { + GPGOptions *options = [GPGOptions sharedOptions]; + BOOL sign = [options boolForKey:@"SignNewEmailsByDefault"]; + BOOL encrypt = [options boolForKey:@"EncryptNewEmailsByDefault"]; + GPGMAIL_SECURITY_METHOD securityMethod = [[self class] defaultSecurityMethod]; + + return [GMSecurityOptions securityOptionsWithSecurityMethod:securityMethod + shouldSign:sign + shouldEncrypt:encrypt]; +} + +- (GMSecurityOptions *)bestSecurityOptionsForSender:(NSString *)sender recipients:(NSArray *)recipients signFlags:(GPGMAIL_SIGN_FLAG)signFlags + encryptFlags:(GPGMAIL_ENCRYPT_FLAG)encryptFlags { + + GMSecurityOptions *defaultSecurityOptions = [self securityOptionsFromDefaults]; + + BOOL canPGPSign = (signFlags & GPGMAIL_SIGN_FLAG_OPENPGP); + BOOL canPGPEncrypt = (encryptFlags & GPGMAIL_ENCRYPT_FLAG_OPENPGP); + BOOL canSMIMESign = (signFlags & GPGMAIL_SIGN_FLAG_SMIME); + BOOL canSMIMEEncrypt = (encryptFlags & GPGMAIL_ENCRYPT_FLAG_SMIME); + BOOL SMIMEKeyAvailable = canSMIMESign || canSMIMEEncrypt; + BOOL PGPKeyAvailable = canPGPSign || canPGPEncrypt; + + GPGMAIL_SECURITY_METHOD securityMethod = defaultSecurityOptions.securityMethod; + + // Select the security method based on the availability of keys. + if(SMIMEKeyAvailable && !PGPKeyAvailable) + securityMethod = GPGMAIL_SECURITY_METHOD_SMIME; + else if(PGPKeyAvailable && !SMIMEKeyAvailable) + securityMethod = GPGMAIL_SECURITY_METHOD_OPENPGP; + else if((SMIMEKeyAvailable && PGPKeyAvailable) || (!SMIMEKeyAvailable && !PGPKeyAvailable)) + securityMethod = defaultSecurityOptions.securityMethod; + + GMSecurityOptions *finalSecurityOptions = [GMSecurityOptions securityOptionsWithSecurityMethod:securityMethod shouldSign:defaultSecurityOptions.shouldSign shouldEncrypt:defaultSecurityOptions.shouldEncrypt]; + + return finalSecurityOptions; + + + /* + GPGMAIL_SECURITY_METHOD securityMethod = 0; + NSDictionary *usedSecurityMethods = [GMSecurityHistoryStore sharedInstance].securityOptionsHistory; + NSSet *uniqueRecipients = [[self class] _uniqueRecipients:recipients]; + sender = [sender gpgNormalizedEmail]; + // Now we're good to go. + BOOL canPGPSign = (signFlags & GPGMAIL_SIGN_FLAG_OPENPGP); + BOOL canPGPEncrypt = (encryptFlags & GPGMAIL_ENCRYPT_FLAG_OPENPGP); + BOOL canSMIMESign = (signFlags & GPGMAIL_SIGN_FLAG_SMIME); + BOOL canSMIMEEncrypt = (encryptFlags & GPGMAIL_ENCRYPT_FLAG_SMIME); + BOOL SMIMEKeyAvailable = canSMIMESign || canSMIMEEncrypt; + BOOL PGPKeyAvailable = canPGPSign || canPGPEncrypt; + + + // First, let's check if the user can do any of the things. + // If not, no security method is set. + if(!signFlags && !encryptFlags) { + // No security method is not an option. Set to OpenPGP by default. + return [GMSecurityOptions securityOptionsWithSecurityMethod:[[self class] defaultSecurityMethod] shouldSign:NO shouldEncrypt:NO]; + } + + // We have both, PGP key and S/MIME key. This is a bit tough. + if(SMIMEKeyAvailable && PGPKeyAvailable) { + NSDictionary *signHistory = [usedSecurityMethods objectForKey:@"sign"]; + NSDictionary *signSMIMEHistory = [(NSDictionary *)[signHistory objectForKey:sender] objectForKey:@"SMIME"]; + NSDictionary *signPGPHistory = [(NSDictionary *)[signHistory objectForKey:sender] objectForKey:@"PGP"]; + NSDictionary *encryptHistory = [usedSecurityMethods objectForKey:@"encrypt"]; + NSDictionary *encryptSMIMEHistory = [(NSDictionary *)[encryptHistory objectForKey:uniqueRecipients] objectForKey:@"SMIME"]; + NSDictionary *encryptPGPHistory = [(NSDictionary *)[encryptHistory objectForKey:uniqueRecipients] objectForKey:@"PGP"]; + NSUInteger didSignSMIMECount = [[(NSDictionary *)[signSMIMEHistory objectForKey:uniqueRecipients] objectForKey:@"DidSignCount"] unsignedIntegerValue]; + NSUInteger didEncryptSMIMECount = [[encryptSMIMEHistory objectForKey:@"DidEncryptCount"] unsignedIntegerValue]; + NSUInteger didSignPGPCount = [[(NSDictionary *)[signPGPHistory objectForKey:uniqueRecipients] objectForKey:@"DidSignCount"] unsignedIntegerValue]; + NSUInteger didEncryptPGPCount = [[encryptPGPHistory objectForKey:@"DidEncryptCount"] unsignedIntegerValue]; + + // If there's a encrypt history, there has to be a sign history, + // because for any account that has either an S/MIME or PGP key we record + // the status of any email. + if(!encryptPGPHistory && !encryptSMIMEHistory) + securityMethod = [[self class] defaultSecurityMethod]; + else if(encryptPGPHistory && !encryptSMIMEHistory) + securityMethod = GPGMAIL_SECURITY_METHOD_OPENPGP; + else if(encryptSMIMEHistory && !encryptPGPHistory) + securityMethod = GPGMAIL_SECURITY_METHOD_SMIME; + else { + // There is an encrypt smime history and an encrypt pgp history, + // now it's again tough. + // Let's check first which was used to encrypt to the addresses more often. + // Count is equal, check sign history. + if(didEncryptPGPCount > didEncryptSMIMECount) + securityMethod = GPGMAIL_SECURITY_METHOD_OPENPGP; + else if(didEncryptSMIMECount > didEncryptPGPCount) + securityMethod = GPGMAIL_SECURITY_METHOD_SMIME; + else { + if(didSignPGPCount >= didSignSMIMECount) + securityMethod = GPGMAIL_SECURITY_METHOD_OPENPGP; + else { + securityMethod = GPGMAIL_SECURITY_METHOD_SMIME; + } + } + } + BOOL canSign = NO; + BOOL canEncrypt = NO; + if(securityMethod == GPGMAIL_SECURITY_METHOD_SMIME) { + canSign = canSMIMESign; + canEncrypt = canSMIMEEncrypt; + } + else if(securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP) { + canSign = canPGPSign; + canEncrypt = canPGPEncrypt; + } + + if(!securityMethod) + securityMethod = [[self class] defaultSecurityMethod]; + + // Now we've got the security method, and it's up to find out whether to + // enable signing and encrypting for the key. + return [self _getSignAndEncryptOptionsForSender:sender recipients:uniqueRecipients securityMethod:securityMethod canSign:canSign canEncrypt:canEncrypt]; + } + // Next, check if signing from S/MIME is not possible. That automatically means + // S/MIME can't encrypt either, due to implementation details of Apple's S/MIME. + else { + BOOL canEncrypt = NO; + BOOL canSign = NO; + if(!canSMIMESign && PGPKeyAvailable) { + securityMethod = GPGMAIL_SECURITY_METHOD_OPENPGP; + canEncrypt = canPGPEncrypt; + canSign = canPGPSign; + } + else { + securityMethod = GPGMAIL_SECURITY_METHOD_SMIME; + canEncrypt = canSMIMEEncrypt; + canSign = canSMIMESign; + } + return [self _getSignAndEncryptOptionsForSender:sender recipients:uniqueRecipients securityMethod:securityMethod canSign:canSign canEncrypt:canEncrypt]; + } + + return [GMSecurityOptions securityOptionsWithSecurityMethod:[[self class] defaultSecurityMethod] shouldSign:NO shouldEncrypt:NO]; + */ +} + +- (GMSecurityOptions *)bestSecurityOptionsForSender:(NSString *)sender recipients:(NSArray *)recipients securityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod + canSign:(BOOL)canSign canEncrypt:(BOOL)canEncrypt { + NSSet *uniqueRecipients = [[self class] _uniqueRecipients:recipients]; + return [self _getSignAndEncryptOptionsForSender:sender recipients:uniqueRecipients securityMethod:securityMethod canSign:canSign canEncrypt:canEncrypt]; +} + +- (GMSecurityOptions *)_getSignAndEncryptOptionsForSender:(NSString *)sender recipients:(NSSet *)recipients securityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod + canSign:(BOOL)canSign canEncrypt:(BOOL)canEncrypt { + return [self securityOptionsFromDefaults]; + + /* + NSDictionary *usedSecurityMethods = [GMSecurityHistoryStore sharedInstance].securityOptionsHistory; + NSString *securityMethodName = (securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP) ? @"PGP" : @"SMIME"; + // First check if the method was already used to encrypt to these recipients. EncryptCount should be > 0 if + // so. If the DidEncryptCount is equal to the DidNotEncrypt count check which was last used. + // If only the last one would always be considered, this could make a wrong assumption if + // it was only a one time thing. + BOOL encrypt = canEncrypt; + if(canEncrypt) { + NSDictionary *encryptHistory = [(NSDictionary *)[(NSDictionary *)[usedSecurityMethods objectForKey:@"encrypt"] objectForKey:recipients] objectForKey:securityMethodName]; + NSUInteger didEncryptCount = [[encryptHistory objectForKey:@"DidEncryptCount"] unsignedIntValue]; + NSUInteger didNotEncryptCount = [[encryptHistory objectForKey:@"DidNotEncryptCount"] unsignedIntValue]; + BOOL didLastEncrypt = [[encryptHistory objectForKey:@"DidLastEncrypt"] boolValue]; + if(didEncryptCount == didNotEncryptCount) + encrypt = didLastEncrypt; + else if(didEncryptCount > didNotEncryptCount) + encrypt = YES; + else { + encrypt = NO; + } + } + + BOOL sign = canSign; + if(canSign) { + // Let's play the same game now for signing. + // Signing is a little bit different though, since it might matter who you're sending to. + // You might sign to some people but not to others, so if any addresses are given check + // again how often you signed for those addresses or didn't. + // If no addresses are given, simply check how often the key was used for signing, not signing + // and what was last used. + NSDictionary *signHistoryForRecipients = nil; + NSDictionary *signHistory = nil; + NSDictionary *signHistoryToUse = nil; + + signHistory = [(NSDictionary *)[(NSDictionary *)[usedSecurityMethods objectForKey:@"sign"] objectForKey:sender] objectForKey:securityMethodName]; + if([recipients count]) + signHistoryForRecipients = [signHistory objectForKey:recipients]; + + if(signHistoryForRecipients && signHistory) + signHistoryToUse = signHistoryForRecipients; + else + signHistoryToUse = signHistory; + + NSUInteger didSignCount = [[signHistoryToUse objectForKey:@"DidSignCount"] unsignedIntValue]; + NSUInteger didNotSignCount = [[signHistoryToUse objectForKey:@"DidNotSignCount"] unsignedIntValue]; + BOOL didLastSign = [[signHistoryToUse objectForKey:@"DidLastSign"] boolValue]; + + if(didSignCount == didNotSignCount) + sign = didLastSign; + else if(didSignCount > didNotSignCount) + sign = YES; + else { + sign = NO; + } + } + + return [GMSecurityOptions securityOptionsWithSecurityMethod:securityMethod shouldSign:sign shouldEncrypt:encrypt]; + */ +} + +- (GMSecurityOptions *)bestSecurityOptionsForReplyToMessage:(Message_GPGMail *)message signFlags:(GPGMAIL_SIGN_FLAG)signFlags + encryptFlags:(GPGMAIL_ENCRYPT_FLAG)encryptFlags { + + GMSecurityOptions *defaultSecurityOptions = [self securityOptionsFromDefaults]; + + GPGMAIL_SECURITY_METHOD securityMethod = 0; + BOOL canPGPSign = (signFlags & GPGMAIL_SIGN_FLAG_OPENPGP); + BOOL canPGPEncrypt = (encryptFlags & GPGMAIL_ENCRYPT_FLAG_OPENPGP); + BOOL canSMIMESign = (signFlags & GPGMAIL_SIGN_FLAG_SMIME); + BOOL canSMIMEEncrypt = (encryptFlags & GPGMAIL_ENCRYPT_FLAG_SMIME); + BOOL canSign = NO; + BOOL canEncrypt = NO; + BOOL SMIMEKeyAvailable = canSMIMESign || canSMIMEEncrypt; + BOOL PGPKeyAvailable = canPGPSign || canPGPEncrypt; + BOOL messageIsSigned = message.isSMIMESigned || message.PGPSigned; + BOOL messageIsEncrypted = message.isSMIMEEncrypted || message.PGPEncrypted; + + // Message is not signed, check the defaults on what to do. + if(!messageIsSigned && (canPGPSign || canSMIMESign)) { + canSign = defaultSecurityOptions.shouldSign; + securityMethod = canPGPSign && canSMIMESign ? defaultSecurityOptions.securityMethod : (canPGPSign ? GPGMAIL_SECURITY_METHOD_OPENPGP : GPGMAIL_SECURITY_METHOD_SMIME); + } + if(!messageIsEncrypted && (canPGPEncrypt || canSMIMEEncrypt)) { + canEncrypt = defaultSecurityOptions.shouldEncrypt; + securityMethod = canPGPSign && canSMIMESign ? defaultSecurityOptions.securityMethod : (canPGPSign ? GPGMAIL_SECURITY_METHOD_OPENPGP : GPGMAIL_SECURITY_METHOD_SMIME); + } + + // If there's a signing key, and the message was signed, enable signing. + if(messageIsSigned && (canSMIMESign || canPGPSign)) + canSign = YES; + + // If there's a encryption key and the message was encrypted, enable encrypting. + if(messageIsEncrypted && (canSMIMEEncrypt || canPGPEncrypt)) + canEncrypt = YES; + + // Keys for both methods are available + if(SMIMEKeyAvailable && PGPKeyAvailable) { + if(message.isSMIMESigned || message.isSMIMEEncrypted) + securityMethod = GPGMAIL_SECURITY_METHOD_SMIME; + else if(message.PGPEncrypted || message.PGPSigned) + securityMethod = GPGMAIL_SECURITY_METHOD_OPENPGP; + // Not signed or not encrypted is already handled above. + } + else if(SMIMEKeyAvailable && !PGPKeyAvailable) + securityMethod = GPGMAIL_SECURITY_METHOD_SMIME; + else if(PGPKeyAvailable && !SMIMEKeyAvailable) + securityMethod = GPGMAIL_SECURITY_METHOD_OPENPGP; + + return [GMSecurityOptions securityOptionsWithSecurityMethod:securityMethod shouldSign:canSign shouldEncrypt:canEncrypt]; +} + +- (GMSecurityOptions *)bestSecurityOptionsForMessageDraft:(Message_GPGMail *)message signFlags:(GPGMAIL_SIGN_FLAG)signFlags + encryptFlags:(GPGMAIL_ENCRYPT_FLAG)encryptFlags { + GMSecurityOptions *defaultSecurityOptions = [self securityOptionsFromDefaults]; + + GPGMAIL_SECURITY_METHOD securityMethod = defaultSecurityOptions.securityMethod; + // If the message was signed or encrypted, we know what security method was used + // and will re-use that. Otherwise, use the default setting. + if([message isSigned] || [message isEncrypted]) + securityMethod = [message isSMIMEEncrypted] || [message isSMIMESigned] ? GPGMAIL_SECURITY_METHOD_SMIME : GPGMAIL_SECURITY_METHOD_OPENPGP; + + BOOL shouldSign = [[((GM_CAST_CLASS(MutableMessageHeaders *, id))[(GM_CAST_CLASS(Message *, id))message headers]) firstHeaderForKey:@"x-should-pgp-sign"] boolValue]; + BOOL shouldEncrypt = [[((GM_CAST_CLASS(MutableMessageHeaders *, id))[(GM_CAST_CLASS(Message *, id))message headers]) firstHeaderForKey:@"x-should-pgp-encrypt"] boolValue]; + + return [GMSecurityOptions securityOptionsWithSecurityMethod:securityMethod shouldSign:shouldSign shouldEncrypt:shouldEncrypt]; +} + ++ (NSSet *)_uniqueRecipients:(NSArray *)recipients { + // Apparently mutable sets are not a good choice for NSDictionary lookups, + // so let's make a non mutable first. + NSMutableSet *uniqueRecipientsMutable = [[NSMutableSet alloc] init]; + for(NSString *address in recipients) + [uniqueRecipientsMutable addObject:[address gpgNormalizedEmail]]; + NSSet *uniqueRecipients = [NSSet setWithSet:uniqueRecipientsMutable]; + return uniqueRecipients; +} + ++ (void)addEntryForSender:(NSString *)sender recipients:(NSArray *)recipients securityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod + didSign:(BOOL)didSign didEncrypt:(BOOL)didEncrypt { + + // Disable history logging for the time being. + return; + + NSDictionary *securityMethodHistory = [[GMSecurityHistoryStore sharedInstance].securityOptionsHistory mutableCopy]; + NSString *securityMethodKey = securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP ? @"PGP" : @"SMIME"; + NSSet *uniqueRecipients = [[self class] _uniqueRecipients:recipients]; + sender = [sender gpgNormalizedEmail]; + if(!securityMethodHistory) { + securityMethodHistory = [[NSMutableDictionary alloc] init]; + } + // Building the dictionary for non existing keys. + if(!securityMethodHistory[@"sign"]) + [securityMethodHistory setValue:[NSMutableDictionary dictionary] forKey:@"sign"]; + if(!((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender]) + // No entry exists, initialize one. + [securityMethodHistory[@"sign"] setValue:[NSMutableDictionary dictionary] forKey:sender]; + if(!((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey]) { + [((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender] setValue:[NSMutableDictionary dictionary] forKey:securityMethodKey]; + [((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey] setValue:@0U forKey:@"DidSignCount"]; + [((NSMutableDictionary *)((NSMutableDictionary *)(NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey] setValue:@0U forKey:@"DidNotSignCount"]; + } + // Now increase the existing one. + // Out of frustration I gotta say this. I FUCKING HATE DICTIONARY SYNTAX IN OBJECTIVE-C! FUCKING! HATE! IT! + NSString *countKey = didSign ? @"DidSignCount" : @"DidNotSignCount"; + NSUInteger count = [[((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey] valueForKey:countKey] unsignedIntegerValue]; + count++; + [((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey] setValue:@(count) forKey:countKey]; + [((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey] setValue:@(didSign) forKey:@"DidLastSign"]; + + if(!((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey])[uniqueRecipients]) { + // If there's not entry for sign from address to recipients, add it. + ((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey])[uniqueRecipients] = [NSMutableDictionary dictionary]; + [(NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey])[uniqueRecipients] setValue:@0U forKey:@"DidSignCount"]; + [(NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey])[uniqueRecipients] setValue:@0U forKey:@"DidNotSignCount"]; + } + count = [((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey])[uniqueRecipients])[countKey] unsignedIntegerValue]; + count++; + ((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey])[uniqueRecipients])[countKey] = @(count); + ((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"sign"])[sender])[securityMethodKey])[uniqueRecipients])[@"DidLastSign"] = @(didSign); + + if(!securityMethodHistory[@"encrypt"]) + [securityMethodHistory setValue:[NSMutableDictionary dictionary] forKey:@"encrypt"]; + if(!((NSMutableDictionary *)securityMethodHistory[@"encrypt"])[uniqueRecipients]) + ((NSMutableDictionary *)securityMethodHistory[@"encrypt"])[uniqueRecipients] = [NSMutableDictionary dictionary]; + if(!((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"encrypt"])[uniqueRecipients])[securityMethodKey]) { + ((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"encrypt"])[uniqueRecipients])[securityMethodKey] = [NSMutableDictionary dictionary]; + [((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"encrypt"])[uniqueRecipients])[securityMethodKey] setValue:@0U forKey:@"DidEncryptCount"]; + [((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"encrypt"])[uniqueRecipients])[securityMethodKey] setValue:@0U forKey:@"DidNotEncryptCount"]; + } + + countKey = didEncrypt ? @"DidEncryptCount" : @"DidNotEncryptCount"; + count = [((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"encrypt"])[uniqueRecipients])[securityMethodKey])[countKey] unsignedIntegerValue]; + count++; + ((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"encrypt"])[uniqueRecipients])[securityMethodKey])[countKey] = @(count); + ((NSMutableDictionary *)((NSMutableDictionary *)((NSMutableDictionary *)securityMethodHistory[@"encrypt"])[uniqueRecipients])[securityMethodKey])[@"DidLastEncrypt"] = @(didEncrypt); + + // Dang, this is some seriously fucking code. But if anyone knows how to do this + // nice, please clean it up! + DebugLog(@"Security Options History: %@", securityMethodHistory); + + [[GMSecurityHistoryStore sharedInstance] saveHistory:securityMethodHistory]; + +} + +@end + +@implementation GMSecurityOptions + +@synthesize securityMethod = _securityMethod, shouldSign = _shouldSign, shouldEncrypt = _shouldEncrypt; + +- (id)initWithSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod shouldSign:(BOOL)shouldSign shouldEncrypt:(BOOL)shouldEncrypt { + if(self = [super init]) { + _securityMethod = securityMethod; + _shouldSign = shouldSign; + _shouldEncrypt = shouldEncrypt; + } + return self; +} + ++ (GMSecurityOptions *)securityOptionsWithSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod shouldSign:(BOOL)shouldSign shouldEncrypt:(BOOL)shouldEncrypt { + GMSecurityOptions *securityOptions = [[GMSecurityOptions alloc] initWithSecurityMethod:securityMethod shouldSign:shouldSign shouldEncrypt:shouldEncrypt]; + return securityOptions; +} + +- (NSString *)description { + return [NSString stringWithFormat:@"Best Security options: {\n\tSecurity Method: %@\n\tShould Sign: %@\n\tShould Encrypt: %@\n}", + self.securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP ? @"OpenPGP" : @"S/MIME", + self.shouldSign ? @"YES" : @"NO", self.shouldEncrypt ? @"YES" : @"NO"]; +} + +@end + +@interface GMSecurityHistoryStore () + +@property (nonatomic, strong) NSDictionary *securityOptionsHistory; + +@end + +@implementation GMSecurityHistoryStore + +@synthesize securityOptionsHistory = _securityOptionsHistory; + ++ (GMSecurityHistoryStore *)sharedInstance { + static dispatch_once_t gmshs_once; + static GMSecurityHistoryStore *_sharedInstance; + dispatch_once(&gmshs_once, ^{ + _sharedInstance = [[GMSecurityHistoryStore alloc] initWithHistoryFile:GPGMAIL_SECURITY_OPTIONS_HISTORY_FILE]; + }); + return _sharedInstance; +} + +- (id)initWithHistoryFile:(NSString *)historyFile { + if(self = [super init]) { + NSFileManager *fileManager = [NSFileManager defaultManager]; + NSString *historyStoreDirectory = [[NSString stringWithString:[NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject]] + stringByAppendingPathComponent:GPGMAIL_SECURITY_OPTIONS_HISTORY_DOMAIN]; + if(![fileManager fileExistsAtPath:historyStoreDirectory]) + [fileManager createDirectoryAtPath:historyStoreDirectory withIntermediateDirectories:YES attributes:nil error:NULL]; + + NSString *historyStorePath = [historyStoreDirectory stringByAppendingPathComponent:historyFile]; + _storePath = historyStorePath; + [self openHistoryStoreAtPath:historyStorePath]; + } + return self; +} + +- (void)openHistoryStoreAtPath:(NSString *)historyFile { + NSDictionary *root = [NSKeyedUnarchiver unarchiveObjectWithFile:historyFile]; + self.securityOptionsHistory = root; +} + +- (void)saveHistory:(NSDictionary *)history { + self.securityOptionsHistory = history; + [NSKeyedArchiver archiveRootObject:self.securityOptionsHistory toFile:_storePath]; +} + + +@end diff --git a/Source/GMSecurityMethodAccessoryView.h b/Source/GMSecurityMethodAccessoryView.h new file mode 100644 index 00000000..e20d85a5 --- /dev/null +++ b/Source/GMSecurityMethodAccessoryView.h @@ -0,0 +1,134 @@ +/* GMSecurityMethodAccessoryView.m created by Lukas Pitschl (@lukele) on Thu 01-Mar-2012 */ + +/* + * Copyright (c) 2000-2012, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import "GPGConstants.h" + +#define GMSMA_DEFAULT_HEIGHT 17.0f +#define GMSMA_DEFAULT_WIDTH 80.0f +#define GMSMA_FULLSCREEN_HEIGHT 22.0f + +typedef NS_ENUM(NSInteger, GMSecurityMethodAccessoryViewStyle) { + GMSecurityMethodAccessoryViewStyleToolbarItem, + GMSecurityMethodAccessoryViewStyleWindowAccessory +}; + + +@class GMSecurityMethodAccessoryView; + +@protocol GMSecurityMethodAccessoryViewDelegate + +- (void)securityMethodAccessoryView:(GMSecurityMethodAccessoryView *)accessoryView didChangeSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod; + +@end + +@interface GMSecurityMethodAccessoryView : NSPopUpButton { + BOOL _fullscreen; + BOOL _active; + GPGMAIL_SECURITY_METHOD _securityMethod; + GMSecurityMethodAccessoryViewStyle _style; + + id __weak _delegate; + + NSRect _nonFullScreenFrame; + NSImageView *_arrow; + NSTextField *_label; + + NSMapTable *_attributedTitlesCache; +} + +@property (nonatomic, assign) GPGMAIL_SECURITY_METHOD securityMethod; +@property (nonatomic, assign) BOOL active; +@property (nonatomic, weak) id delegate; +@property (nonatomic, assign) GMSecurityMethodAccessoryViewStyle style; + +- (id)init; +- (id)initWithStyle:(GMSecurityMethodAccessoryViewStyle)style; + +/** + Configures the popup menu with the given security methods. + */ +- (void)_configurePopupWithSecurityMethods:(NSArray *)methods; + +/** + Is called if the user changes the selection of the popup. + Calls the delegate to act on it. + */ +- (void)changeSecurityMethod:(NSMenuItem *)sender; + +/** + Configures the custom arrow. + */ +- (void)_configureArrow; + +/** + Prepare the accessory view for full screen mode, by updating positions + of the view, menu and background colors. + */ +- (void)configureForFullScreenWindow:(NSWindow *)window; + +/** + Prepare the accessory view for normal screen mode, by updating positions + of the view, menu and background colors. + */ +- (void)configureForWindow:(NSWindow *)window; + +/** + Allows the MailDocumentEditor to automatically update the security method + and reflect the changes in the popup menu. + */ +- (void)setSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod; + +/** + Returns an attributed title including shadows and the correct color based + on the highlight status for a menu item. + */ +- (NSAttributedString *)attributedTitle:(NSString *)title highlight:(BOOL)highlight; + +/** + Return the different gradients and strokes based on method + and fullscreen mode. + */ +- (NSGradient *)gradientSMIMEWithStrokeColor:(NSColor **)strokeColor; +- (NSGradient *)gradientPGPWithStrokeColor:(NSColor **)strokeColor; +- (NSGradient *)gradientNotActiveWithStrokeColor:(NSColor **)strokeColor; + +/** + Changes the active status based on the ability to sign or encrypt. + Update the background color based on the active status. + */ +- (void)setActive:(BOOL)active; + +/** + Center the menu item within the accessory view, taking the arrow into + consideration. + */ +- (void)updateAndCenterLabelForItem:(NSMenuItem *)item; + +@end diff --git a/Source/GMSecurityMethodAccessoryView.m b/Source/GMSecurityMethodAccessoryView.m new file mode 100644 index 00000000..4c9da86e --- /dev/null +++ b/Source/GMSecurityMethodAccessoryView.m @@ -0,0 +1,438 @@ +/* GMSecurityMethodAccessoryView.m created by Lukas Pitschl (@lukele) on Thu 01-Mar-2012 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "CCLog.h" +#import "GPGConstants.h" +#import "NSObject+LPDynamicIvars.h" +#import "NSBezierPath+StrokeExtensions.h" +#import "NSBezierPath_KBAdditions.h" +#import "NSWindow+GPGMail.h" +#import "GMSecurityMethodAccessoryView.h" +#import "GPGMailBundle.h" + +@interface GMSecurityMethodAccessoryView () +@property (nonatomic, assign) BOOL fullscreen; +@property (nonatomic, assign) NSRect nonFullScreenFrame; + +@property (nonatomic, strong) NSImageView *arrow; +@property (nonatomic, strong) NSTextField *label; + +@property (nonatomic, strong) NSMapTable *attributedTitlesCache; + + +// cell defined as NSPopUpButtonCell to need no casts. +@property NSPopUpButtonCell *cell; + +@end + + + +@interface GMSecurityMethodAccessoryCell : NSPopUpButtonCell +@end +@implementation GMSecurityMethodAccessoryCell +- (void)selectItem:(__unused NSMenuItem *)item { + // Do not select the menu item when the user clicks on it, only notify the delegate. + // -setSecurityMethod: changes the selection. +} +@end + + +@implementation GMSecurityMethodAccessoryView +@synthesize fullscreen = _fullscreen, active = _active, arrow = _arrow, + nonFullScreenFrame = _nonFullScreenFrame, securityMethod = _securityMethod, + delegate = _delegate, label = _label, attributedTitlesCache = _attributedTitlesCache, style = _style; +@dynamic cell; + ++ (Class)cellClass { + return [GMSecurityMethodAccessoryCell class]; +} + +- (id)init { + return [self initWithStyle:GMSecurityMethodAccessoryViewStyleWindowAccessory]; +} + +- (id)initWithStyle:(GMSecurityMethodAccessoryViewStyle)style { + self = [super initWithFrame:NSMakeRect(0.0f, 0.0f, GMSMA_DEFAULT_WIDTH, GMSMA_DEFAULT_HEIGHT) pullsDown:NO]; + if (!self) { + return nil; + } + + + self.autoresizingMask = NSViewMinYMargin | NSViewMinXMargin; + + // The arrow is hidden, since it's strangely aligned by default. + // GPGMail adds its own. + self.cell.arrowPosition = NSPopUpNoArrow; + + _attributedTitlesCache = [NSMapTable mapTableWithStrongToStrongObjects]; + _style = style; + [self _configurePopupWithSecurityMethods:@[@"OpenPGP", @"S/MIME"]]; + [self _configureArrow]; + + return self; +} + +- (BOOL)isFlipped { + return NO; +} + +- (void)_configurePopupWithSecurityMethods:(NSArray *)methods { + NSMenu *menu = self.menu; + menu.autoenablesItems = NO; + menu.delegate = self; + + for(NSString *method in methods) { + NSMenuItem *item = [menu addItemWithTitle:method action:@selector(changeSecurityMethod:) keyEquivalent:@""]; + item.target = self; + item.enabled = YES; + item.tag = [methods indexOfObject:method] == 0 ? GPGMAIL_SECURITY_METHOD_OPENPGP : GPGMAIL_SECURITY_METHOD_SMIME; + item.keyEquivalent = [methods indexOfObject:method] == 0 ? @"p" : @"s"; + item.keyEquivalentModifierMask = NSCommandKeyMask | NSAlternateKeyMask; + } + + // Add the initial label. + NSTextField *label = [[NSTextField alloc] initWithFrame:NSMakeRect(0.0f, 0.0f, self.frame.size.width, self.frame.size.height)]; + label.backgroundColor = [NSColor clearColor]; + label.bordered = NO; + label.selectable = NO; + label.editable = NO; + + [self addSubview:label]; + self.label = label; + + + if (self.style == GMSecurityMethodAccessoryViewStyleToolbarItem) { + self.menu.font = [NSFont systemFontOfSize:18.f]; + } + + // Update the label value and center it. + [self updateAndCenterLabelForItem:nil]; + +} +- (void)_configureArrow { + NSImage *arrow = [NSImage imageNamed:@"MenuArrowWhite"]; + NSImageView *imageView = [[NSImageView alloc] initWithFrame:NSMakeRect(60.0f, 4.0f, arrow.size.width, arrow.size.height)]; + imageView.image = arrow; + + // Add the arrow as subview. + [self addSubview:imageView]; + + self.arrow = imageView; + NSRect arrowFrame = self.arrow.frame; + arrowFrame.origin.y = 6.0f; + self.arrow.frame = arrowFrame; +} + +- (void)configureForFullScreenWindow:(NSWindow *)window { + DebugLog(@"Enter fullscreen: move security method accessory view"); + self.fullscreen = YES; + + // Add the accessory view to the window. + [window addAccessoryView:self]; + + // Center the view within the window. + [window positionAccessoryView:self offset:NSMakePoint(200.0f, 0.f)]; + + // Adjust the height to match the other fullscreen mail buttons. + NSRect frame = self.frame; + frame.size.height = GMSMA_FULLSCREEN_HEIGHT; + // Align it vertically to match the other mail buttons. + frame.origin.y = frame.origin.y - 16.0f; + self.frame = frame; + + // Center the arrow vertically. + NSRect arrowFrame = self.arrow.frame; + arrowFrame.origin.y = 6.0f; + self.arrow.frame = arrowFrame; + + // Set optimal font size. + self.menu.font = [NSFont systemFontOfSize:12.f]; + + self.needsDisplay = YES; + [self updateAndCenterLabelForItem:nil]; +} + +- (void)configureForWindow:(NSWindow *)window { + DebugLog(@"Exit fullscreen: re-add security method accessory view"); + self.fullscreen = NO; + + [self removeFromSuperview]; + + // Add the accessory view to the window. + [window addAccessoryView:self]; + + // Adjust the height to the default value. + NSRect frame = self.frame; + frame.size.height = GMSMA_DEFAULT_HEIGHT; + self.frame = frame; + + // Center the arrow vertically. + NSRect arrowFrame = self.arrow.frame; + arrowFrame.origin.y = 4.0f; + self.arrow.frame = arrowFrame; + + // Set optimal font size. + self.menu.font = [NSFont systemFontOfSize:10.f]; + + self.needsDisplay = YES; + [self updateAndCenterLabelForItem:nil]; +} + +- (void)changeSecurityMethod:(NSMenuItem *)sender { + // Only tell the delegate if the current method is not the new method. + if (self.securityMethod == sender.tag) { + return; + } + + [self.delegate securityMethodAccessoryView:self didChangeSecurityMethod:(GPGMAIL_SECURITY_METHOD)sender.tag]; +} + +- (void)setSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod { + if (securityMethod == self.securityMethod) { + return; + } + + _securityMethod = securityMethod; + // Update the selection and center the menu title again. + [self selectItemAtIndex:securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP ? 0 : 1]; + [self updateAndCenterLabelForItem:nil]; + self.needsDisplay = YES; +} + +#pragma mark - NSMenuDelegate is repsonsible for adjusting the color of the menu titles. + +- (NSAttributedString *)attributedTitle:(NSString *)title highlight:(BOOL)highlight { + // Title must never be nil! + if(!title) + title = @""; + + NSString *cacheID = [NSString stringWithFormat:@"%@::%@::%@", title, @(highlight), + @(self.fullscreen)]; + + NSAttributedString *cachedString = [self.attributedTitlesCache objectForKey:cacheID]; + if(cachedString) { + return cachedString; + } + + // Create the white shadow that sits behind the text + NSShadow *shadow = [[NSShadow alloc] init]; + if(!highlight) + [shadow setShadowColor:[NSColor colorWithDeviceWhite:1.0 alpha:0.5]]; + else + [shadow setShadowColor:[NSColor colorWithDeviceRed:0.0/255.0f green:0.0f/255.0f blue:0.0f/255.0f alpha:0.5]]; + [shadow setShadowOffset:NSMakeSize(1.0, -1.1)]; + + NSFont *font = nil; + NSColor *color = nil; + if(!highlight) + color = [NSColor colorWithDeviceRed:51.0f/255.0f green:51.0f/255.0f blue:51.0f/255.0f alpha:1.0]; + else + color = [NSColor colorWithDeviceRed:255.0f/255.0f green:255.0f/255.0f blue:255.0f/255.0f alpha:1.0]; + + // Font size is 12.0f for Fullscreen, 10.f for normal. + font = !self.fullscreen ? [NSFont systemFontOfSize:10.0f] : [NSFont systemFontOfSize:12.0f]; + + NSMutableParagraphStyle *mutParaStyle=[[NSMutableParagraphStyle alloc] init]; + [mutParaStyle setAlignment:NSLeftTextAlignment]; + + NSMutableDictionary *attributes = [[NSMutableDictionary alloc] initWithObjectsAndKeys: + font ,NSFontAttributeName, + shadow, NSShadowAttributeName, color, + NSForegroundColorAttributeName, mutParaStyle, NSParagraphStyleAttributeName, + nil]; + // The shadow object has been assigned to the dictionary, so release + // Create a new attributed string with your attributes dictionary attached + NSAttributedString *attributedTitle = [[NSAttributedString alloc] initWithString:title + attributes:attributes]; + + [self.attributedTitlesCache setObject:attributedTitle forKey:cacheID]; + + return attributedTitle; +} + +- (void)updateAndCenterLabelForItem:(NSMenuItem *)item { + item = item != nil ? item : self.selectedItem; + + NSString *title = item.title; + + + // Set the string for accessibility. + NSString *accessibilityLabel = [NSString stringWithFormat:[GPGMailBundle localizedStringForKey:@"ACCESSIBILITY_SECURITY_METHOD_POPUP_LABEL"], title]; + if ([self.cell respondsToSelector:@selector(setAccessibilityLabel:)]) { + [self.cell setValue:accessibilityLabel forKey:@"accessibilityLabel"]; + } else { + [self.cell accessibilitySetOverrideValue:accessibilityLabel forAttribute:@"AXTitle"]; + } + + + + NSAttributedString *attributedTitle = [self attributedTitle:title highlight:YES]; + self.label.attributedStringValue = attributedTitle; + // Adjust the label frame to fit the text. + [self.label sizeToFit]; + + NSRect frame = self.label.frame; + // Center vertically. + frame.origin.y = (self.frame.size.height - frame.size.height) / 2.0f; + + // Now center the new label. + frame.origin.x = roundf((self.frame.size.width - (frame.size.width + self.arrow.frame.size.width)) / 2.0f); + // And position the frame. + NSRect arrowFrame = self.arrow.frame; + arrowFrame.origin.x = frame.origin.x + frame.size.width; + self.arrow.frame = arrowFrame; + + self.label.frame = frame; +} + +- (NSGradient *)gradientSMIMEWithStrokeColor:(NSColor **)strokeColor { + NSGradient *gradient = nil; + + NSUInteger redStart = 20.0f; + NSUInteger greenStart = 80.0f; + // Start for full screen. + NSUInteger greenStartAlt = 128.0f; + NSUInteger blueStart = 240.0f; + NSUInteger redStep, greenStep, blueStep; + redStep = greenStep = blueStep = 18.0f; + + if(!self.fullscreen) { + gradient = [[NSGradient alloc] initWithColorsAndLocations:[NSColor colorWithDeviceRed:redStart/255.0f green:greenStart/255.0f blue:blueStart/255.0f alpha:1.0], 0.0f, + [NSColor colorWithDeviceRed:(redStart + (redStep * 1))/255.0f green:(greenStart + (greenStep * 1))/255.0f blue:blueStart/255.0f alpha:1.0], 0.13f, + [NSColor colorWithDeviceRed:(redStart + (redStep * 1))/255.0f green:(greenStart + (greenStep * 1))/255.0f blue:blueStart/255.0f alpha:1.0], 0.27f, + [NSColor colorWithDeviceRed:(redStart + (redStep * 2))/255.0f green:(greenStart + (greenStep * 2))/255.0f blue:blueStart/255.0f alpha:1.0], 0.61f, + [NSColor colorWithDeviceRed:(redStart + (redStep * 3))/255.0f green:(greenStart + (greenStep * 3))/255.0f blue:blueStart/255.0f alpha:1.0], 1.0f, nil]; + } + else { + redStep = greenStep = blueStep = 8.0f; + gradient = [[NSGradient alloc] initWithColorsAndLocations:[NSColor colorWithDeviceRed:(redStart + (redStep * 2))/255.0f green:(greenStartAlt + (greenStep * 2))/255.0f blue:(blueStart + (blueStep * 1))/255.0f alpha:1.0], 0.0f, + [NSColor colorWithDeviceRed:(redStart + (redStep * 3))/255.0f green:(greenStartAlt + (greenStep * 3))/255.0f blue:(blueStart + (blueStep * 1))/255.0f alpha:1.0], 0.13f, + [NSColor colorWithDeviceRed:(redStart + (redStep * 4))/255.0f green:(greenStartAlt + (greenStep * 4))/255.0f blue:(blueStart + (blueStep * 1))/255.0f alpha:1.0], 0.27f, + [NSColor colorWithDeviceRed:(redStart + (redStep * 5))/255.0f green:(greenStartAlt + (greenStep * 5))/255.0f blue:(blueStart + (blueStep * 1))/255.0f alpha:1.0], 0.61f, + [NSColor colorWithDeviceRed:(redStart + (redStep * 6))/255.0f green:(greenStartAlt + (greenStep * 6))/255.0f blue:(blueStart + (blueStep * 1))/255.0f alpha:1.0], 1.0f, nil]; + } + + *strokeColor = [NSColor colorWithDeviceRed:redStart/255.0f green:greenStart/255.0f blue:blueStart/255.0f alpha:1.0]; + + return gradient; +} + +- (NSGradient *)gradientPGPWithStrokeColor:(NSColor **)strokeColor { + NSGradient *gradient = nil; + + NSUInteger greenStart = 128.0f; + NSUInteger greenStep = 18.0f; + + if(!self.fullscreen) { + gradient = [[NSGradient alloc] initWithColorsAndLocations:[NSColor colorWithDeviceRed:0/255.0f green:greenStart/255.0f blue:0/255.0f alpha:1.0], 0.0f, + [NSColor colorWithDeviceRed:0/255.0f green:(greenStart + (greenStep * 1))/255.0f blue:0/255.0f alpha:1.0], 0.13f, + [NSColor colorWithDeviceRed:0/255.0f green:(greenStart + (greenStep * 1))/255.0f blue:0/255.0f alpha:1.0], 0.27f, + [NSColor colorWithDeviceRed:0/255.0f green:(greenStart + (greenStep * 2))/255.0f blue:0/255.0f alpha:1.0], 0.61f, + [NSColor colorWithDeviceRed:0/255.0f green:(greenStart + (greenStep * 3))/255.0f blue:0/255.0f alpha:1.0], 1.0f, nil]; + } + else { + greenStep = 8.0f; + gradient = [[NSGradient alloc] initWithColorsAndLocations:[NSColor colorWithDeviceRed:0/255.0f green:(greenStart + (greenStep * 6))/255.0f blue:0/255.0f alpha:1.0], 0.0f, + [NSColor colorWithDeviceRed:0/255.0f green:(greenStart + (greenStep * 7))/255.0f blue:0/255.0f alpha:1.0], 0.13f, + [NSColor colorWithDeviceRed:0/255.0f green:(greenStart + (greenStep * 8))/255.0f blue:0/255.0f alpha:1.0], 0.27f, + [NSColor colorWithDeviceRed:0/255.0f green:(greenStart + (greenStep * 9))/255.0f blue:0/255.0f alpha:1.0], 0.61f, + [NSColor colorWithDeviceRed:0/255.0f green:(greenStart + (greenStep * 10))/255.0f blue:0/255.0f alpha:1.0], 1.0f, nil]; + } + + *strokeColor = [NSColor colorWithDeviceRed:0/255.0f green:greenStart/255.0f blue:0/255.0f alpha:1.0]; + + return gradient; +} + +- (NSGradient *)gradientNotActiveWithStrokeColor:(NSColor **)strokeColor { + NSGradient *gradient = nil; + + NSUInteger greyStart = 146.0f; + NSUInteger greyStep = 18.0f; + + if(!self.fullscreen) { + gradient = [[NSGradient alloc] initWithColorsAndLocations:[NSColor colorWithDeviceRed:greyStart/255.0f green:128.0f/255.0f blue:128.0f/255.0f alpha:1.0], 0.0f, + [NSColor colorWithDeviceRed:(greyStart + (greyStep * 1))/255.0f green:(greyStart + (greyStep * 1))/255.0f blue:(greyStart + (greyStep * 1))/255.0f alpha:1.0], 0.13f, + [NSColor colorWithDeviceRed:(greyStart + (greyStep * 1))/255.0f green:(greyStart + (greyStep * 1))/255.0f blue:(greyStart + (greyStep * 1))/255.0f alpha:1.0], 0.27f, + [NSColor colorWithDeviceRed:(greyStart + (greyStep * 2))/255.0f green:(greyStart + (greyStep * 2))/255.0f blue:(greyStart + (greyStep * 2))/255.0f alpha:1.0], 0.61f, + [NSColor colorWithDeviceRed:(greyStart + (greyStep * 3))/255.0f green:(greyStart + (greyStep * 3))/255.0f blue:(greyStart + (greyStep * 3))/255.0f alpha:1.0], 1.0f, + nil]; + } + else { + greyStep = 8.0f; + gradient = [[NSGradient alloc] initWithColorsAndLocations:[NSColor colorWithDeviceRed:(greyStart + (greyStep * 4))/255.0f green:(greyStart + (greyStep * 4))/255.0f blue:(greyStart + (greyStep * 4))/255.0f alpha:1.0], 0.0f, + [NSColor colorWithDeviceRed:(greyStart + (greyStep * 5))/255.0f green:(greyStart + (greyStep * 5))/255.0f blue:(greyStart + (greyStep * 5))/255.0f alpha:1.0], 0.13f, + [NSColor colorWithDeviceRed:(greyStart + (greyStep * 6))/255.0f green:(greyStart + (greyStep * 6))/255.0f blue:(greyStart + (greyStep * 6))/255.0f alpha:1.0], 0.27f, + [NSColor colorWithDeviceRed:(greyStart + (greyStep * 7))/255.0f green:(greyStart + (greyStep * 7))/255.0f blue:(greyStart + (greyStep * 7))/255.0f alpha:1.0], 0.61f, + [NSColor colorWithDeviceRed:(greyStart + (greyStep * 8))/255.0f green:(greyStart + (greyStep * 8))/255.0f blue:(greyStart + (greyStep * 8))/255.0f alpha:1.0], 1.0f, + nil]; + } + + + *strokeColor = [NSColor colorWithDeviceRed:greyStart/255.0f green:greyStart/255.0f blue:greyStart/255.0f alpha:1.0]; + + return gradient; +} + +- (void)setActive:(BOOL)active { + _active = active; + self.needsDisplay = YES; +} + +- (void)drawRect:(__unused NSRect)dirtyRect { + NSRect rect = [self bounds]; + rect.origin = NSMakePoint(0, 0); + float cornerRadius = 4.0f; + KBCornerType corners; + + if (self.fullscreen || self.style == GMSecurityMethodAccessoryViewStyleToolbarItem) { + corners = (KBTopLeftCorner | KBBottomLeftCorner | KBTopRightCorner | KBBottomRightCorner); + } else { + corners = (KBTopRightCorner | KBBottomLeftCorner); + } + + NSBezierPath* path = [NSBezierPath bezierPathWithRoundedRect:rect inCorners:corners cornerRadius:cornerRadius flipped:NO]; + + NSGradient *gradient = nil; + NSColor *strokeColor = nil; + + if(!self.active) + gradient = [self gradientNotActiveWithStrokeColor:&strokeColor]; + else if(self.securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP) + gradient = [self gradientPGPWithStrokeColor:&strokeColor]; + else if(self.securityMethod == GPGMAIL_SECURITY_METHOD_SMIME) + gradient = [self gradientSMIMEWithStrokeColor:&strokeColor]; + + [gradient drawInBezierPath:path angle:90.0f]; + [strokeColor setStroke]; + + [path strokeInside]; +} + +@end diff --git a/Source/GPGAttachmentController.h b/Source/GPGAttachmentController.h new file mode 100644 index 00000000..5aa2feb7 --- /dev/null +++ b/Source/GPGAttachmentController.h @@ -0,0 +1,60 @@ +// +// GPGAttachmentController.h +// GPGMail +// +// Created by Lukas Pitschl on 08.11.11. +// Copyright (c) 2011 __MyCompanyName__. All rights reserved. +// + +#import +#import "GPGSignatureView.h" + +@class MimePart_GPGMail; + +@interface GPGAttachmentController : NSWindowController { + NSImageView *__weak errorImageView; + NSMutableArray *attachments; + GPGSignature *signature; + NSDictionary *currentAttachment; + NSSet *keyList; + NSIndexSet *attachmentIndexes; + CGFloat initialHeight; + + + IBOutlet NSView *scrollContentView; + IBOutlet NSView *infoView; + IBOutlet NSView *subkeyView; + IBOutlet NSScrollView *scrollView; + IBOutlet NSView *errorView; + IBOutlet NSView *decryptOKView; + IBOutlet NSTableView *tableView; +} + +- (id)initWithAttachmentParts:(NSArray *)attachmentParts; +- (void)beginSheetModalForWindow:(NSWindow *)modalWindow completionHandler:(void (^)(NSInteger result))handler; +- (void)sheetDidEnd:(NSWindow *)sheet returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo; + +@property (weak) IBOutlet NSImageView *errorImageView; +@property (strong) NSArray *attachments; +@property (nonatomic, strong) NSIndexSet *attachmentIndexes; +@property (strong) NSDictionary *currentAttachment; +@property (nonatomic, strong) GPGSignature *signature; +@property (strong) NSSet *keyList; +@property (strong, readonly, nonatomic) GPGKey *gpgKey; +@property (strong, readonly, nonatomic) GPGKey *subkey; + + +/** + Returns the correctly signed or signature failure image, depending + on the part status. + */ +- (NSImage *)signedImageForPart:(MimePart_GPGMail *)part; + +/** + Returns the encrypted or decrypted image, depending on the part + status. + */ +- (NSImage *)encryptedImageForPart:(MimePart_GPGMail *)part; + +@end + diff --git a/Source/GPGAttachmentController.m b/Source/GPGAttachmentController.m new file mode 100644 index 00000000..e5e817e1 --- /dev/null +++ b/Source/GPGAttachmentController.m @@ -0,0 +1,450 @@ +// +// GPGAttachmentController.m +// GPGMail +// +// Created by Lukas Pitschl on 08.11.11. +// Copyright (c) 2011 __MyCompanyName__. All rights reserved. +// +#define localized(key) [[GPGMailBundle bundle] localizedStringForKey:(key) value:(key) table:@"SignatureView"] +#define localizedAttachmentMessage(key) [[GPGMailBundle bundle] localizedStringForKey:(key) value:(key) table:@"GPGAttachment"] + +#import "MimePart.h" +#import "NSObject+LPDynamicIvars.h" +#import "MimePart+GPGMail.h" +#import "MFError.h" +#import "GPGAttachmentController.h" +#import "GPGSignatureView.h" +#import "GPGMailBundle.h" + +@interface GPGAttachmentController () +@property (strong, readwrite, nonatomic) GPGKey *gpgKey; +@property (strong, readwrite, nonatomic) GPGKey *subkey; +@end + + + +@implementation GPGAttachmentController +@synthesize errorImageView; +@synthesize attachments; +@synthesize attachmentIndexes; +@synthesize currentAttachment; +@synthesize signature; +@synthesize keyList; +@synthesize gpgKey=_gpgKey; +@synthesize subkey=_subkey; + +- (id)initWithAttachmentParts:(NSArray *)attachmentParts { + if (self = [super initWithWindowNibName:@"GPGAttachments"]) { + attachments = [[NSMutableArray alloc] init]; + for (MimePart_GPGMail *part in attachmentParts) { + NSMutableDictionary *attachment = [[NSMutableDictionary alloc] init]; + + [attachment setValue:@(part.PGPEncrypted) forKey:@"encrypted"]; + [attachment setValue:@(part.PGPSigned) forKey:@"signed"]; + [attachment setValue:part.PGPError forKey:@"error"]; + [attachment setValue:[part dispositionParameterForKey:@"filename"] forKey:@"decrypted-name"]; + if(part.PGPSignatures) { + [attachment setValue:(part.PGPSignatures)[0] forKey:@"signature"]; + } + + BOOL decrypted = part.PGPDecrypted; + [attachment setValue:@(decrypted) forKey:@"decrypted"]; + + + + if (!part.PGPError) { + [attachment setValue:@YES forKey:@"showErrorView"]; + if (decrypted && part.PGPVerified) { + [attachment setValue:@NO forKey:@"showSignatureView"]; + [attachment setValue:@YES forKey:@"showDecryptedNoSignatureView"]; + } + else if (part.PGPVerified) { + [attachment setValue:@NO forKey:@"showSignatureView"]; + [attachment setValue:@YES forKey:@"showDecryptedNoSignatureView"]; + } + else if (decrypted) { + [attachment setValue:@YES forKey:@"showSignatureView"]; + [attachment setValue:@NO forKey:@"showDecryptedNoSignatureView"]; + [attachment setValue:localizedAttachmentMessage(@"ATTACHMENT_DECRYPTED_SUCCESSFULLY_TITLE") forKey:@"decryptionSuccessTitle"]; + [attachment setValue:localizedAttachmentMessage(@"ATTACHMENT_DECRYPTED_SUCCESSFULLY_MESSAGE") forKey:@"decryptionSuccessMessage"]; + } + } + else { + [attachment setValue:@YES forKey:@"showSignatureView"]; + if (part.PGPSigned) { + [attachment setValue:[NSImage imageNamed:@"certificate"] forKey:@"errorBadgeImage"]; + [attachment setValue:[[(MFError *)[attachment valueForKey:@"error"] userInfo] valueForKey:@"_MFShortDescription"] forKey:@"errorTitle"]; + [attachment setValue:[[(MFError *)[attachment valueForKey:@"error"] userInfo] valueForKey:@"NSLocalizedDescription"] forKey:@"errorMessage"]; + } + else if (!decrypted) { + [attachment setValue:[NSImage imageNamed:@"encryption"] forKey:@"errorBadgeImage"]; + [attachment setValue:[[(MFError *)[attachment valueForKey:@"error"] userInfo] valueForKey:@"_MFShortDescription"] forKey:@"errorTitle"]; + [attachment setValue:[[(MFError *)[attachment valueForKey:@"error"] userInfo] valueForKey:@"NSLocalizedDescription"] forKey:@"errorMessage"]; + } + } + + // Set the correct images at their correct positions. + // 1.) signed && encrypted -> first icon = encrypted, second icon = signed + // 2.) only signed -> first icon = signed, second icon = nil + // 3.) only encrypted -> first icon = encrypted, second icon = nil + + if (part.PGPSigned && part.PGPEncrypted) { + [attachment setValue:[self encryptedImageForPart:part] forKey:@"firstIcon"]; + [attachment setValue:[self signedImageForPart:part] forKey:@"secondIcon"]; + } + else if (part.PGPSigned) { + [attachment setValue:[self signedImageForPart:part] forKey:@"firstIcon"]; + } + else if (part.PGPEncrypted) { + [attachment setValue:[self encryptedImageForPart:part] forKey:@"firstIcon"]; + } + + + + [attachments addObject:attachment]; + } + } + return self; +} + +- (NSImage *)signedImageForPart:(MimePart_GPGMail *)part { + // If the attachment has pgp signature set and no error, display the + // signature on icon otherwise the signature off icon. + if(!part.PGPSigned) + return nil; + if(part.PGPVerified) + return [NSImage imageNamed:@"SignatureOnTemplate"]; + + return [NSImage imageNamed:@"SignatureOffTemplate"]; +} + +- (NSImage *)encryptedImageForPart:(MimePart_GPGMail *)part { + // If the attachment has decrypted set, the part has been + // successfully decrypted and the open lock image is returned. + if(!part.PGPEncrypted) + return nil; + + if(part.PGPDecrypted) + return [NSImage imageNamed:@"NSLockUnlockedTemplate"]; + + return [NSImage imageNamed:@"NSLockLockedTemplate"]; +} + +- (void)windowDidLoad +{ + [super windowDidLoad]; + + // Implement this method to handle any initialization after your window controller's window has been loaded from its nib file. + self.errorImageView.image = [NSImage imageNamed:@"encryption"]; +} + +- (void)beginSheetModalForWindow:(NSWindow *)modalWindow completionHandler:(void (^)(NSInteger result))handler { + [NSApp beginSheet:self.window modalForWindow:modalWindow modalDelegate:self didEndSelector:@selector(sheetDidEnd:returnCode:contextInfo:) contextInfo:(__bridge void *)(handler)]; +} + +- (void)sheetDidEnd:(NSWindow *)sheet returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo { + ((__bridge void (^)(NSInteger result))contextInfo)(NSOKButton); +} + +- (void)setAttachmentParts:(NSArray *)attachmentParts { + +} + +- (void)setAttachmentIndexes:(NSIndexSet *)value { + if (value != attachmentIndexes) { + attachmentIndexes = value; + NSUInteger index; + if ([value count] > 0 && (index = [value firstIndex]) < [attachments count]) { + self.currentAttachment = attachments[index]; + self.signature = [self.currentAttachment valueForKey:@"signature"]; + } else { + self.currentAttachment = nil; + self.signature = nil; + } + + + + if (![self.currentAttachment[@"showErrorView"] boolValue]) { + [subkeyView removeFromSuperview]; + [decryptOKView removeFromSuperview]; + [infoView removeFromSuperview]; + + [errorView setFrameSize:NSMakeSize(scrollContentView.frame.size.width, errorView.frame.size.height)]; + [scrollContentView addSubview:errorView]; + + CGFloat height = 0; + for (NSView *view in scrollContentView.subviews) { + height += view.frame.size.height; + } + [scrollContentView setFrameSize:NSMakeSize(scrollContentView.frame.size.width, height)]; + [errorView setFrameOrigin:NSMakePoint(0, 0)]; + } else if (![self.currentAttachment[@"showDecryptedNoSignatureView"] boolValue]) { + [subkeyView removeFromSuperview]; + [infoView removeFromSuperview]; + [errorView removeFromSuperview]; + + [decryptOKView setFrameSize:NSMakeSize(scrollContentView.frame.size.width, decryptOKView.frame.size.height)]; + [scrollContentView addSubview:decryptOKView]; + + CGFloat height = 0; + for (NSView *view in scrollContentView.subviews) { + height += view.frame.size.height; + } + [scrollContentView setFrameSize:NSMakeSize(scrollContentView.frame.size.width, height)]; + [decryptOKView setFrameOrigin:NSMakePoint(0, 0)]; + } else if (![self.currentAttachment[@"showSignatureView"] boolValue]) { + [decryptOKView removeFromSuperview]; + [errorView removeFromSuperview]; + + [infoView setFrameSize:NSMakeSize(scrollContentView.frame.size.width, infoView.frame.size.height)]; + [scrollContentView addSubview:infoView]; + + if (self.subkey) { + if (self.window.contentView.frame.size.height == initialHeight || initialHeight == 0) { + NSRect frame = self.window.frame; + CGFloat height = subkeyView.frame.size.height; + frame.size.height += height; + frame.origin.y -= height; + if (initialHeight == 0) { + [self.window setFrame:frame display:YES]; + } else { + [self.window.animator setFrame:frame display:YES]; + + } + initialHeight = CGFLOAT_MAX; // The window will never be that height, so this if branches only the first time. + } + [subkeyView setFrameSize:NSMakeSize(scrollContentView.frame.size.width, subkeyView.frame.size.height)]; + [scrollContentView addSubview:subkeyView]; + } else { + [subkeyView removeFromSuperview]; + } + + CGFloat height = 0; + for (NSView *view in scrollContentView.subviews) { + height += view.frame.size.height; + } + [scrollContentView setFrameSize:NSMakeSize(scrollContentView.frame.size.width, height)]; + + [infoView setFrameOrigin:NSMakePoint(0, 0)]; + + if (self.subkey) { + [subkeyView setFrameOrigin:NSMakePoint(0, infoView.frame.size.height)]; + } + } + + + } +} + +- (void)setSignature:(GPGSignature *)value { + if (value == signature) { + return; + } + signature = value; + + GPGKey *key = signature.primaryKey; + GPGKey *subkey = signature.key; + + if ([key isEqual:subkey]) { + subkey = nil; + } + + self.gpgKey = key; + self.subkey = subkey; +} + + + + + + + +- (id)valueForKeyPath:(NSString *)keyPath { + if ([keyPath hasPrefix:@"signature."]) { + if (signature == nil) { + return nil; + } + keyPath = [keyPath substringFromIndex:10]; + if([self respondsToSelector:NSSelectorFromString(keyPath)]) { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + return [self performSelector:NSSelectorFromString(keyPath)]; +#pragma clang diagnostic pop + } + if ([signature respondsToSelector:NSSelectorFromString(keyPath)]) { + return [signature valueForKey:keyPath]; + } + } + + return [super valueForKeyPath:keyPath]; +} + +- (NSString *)unlocalizedValidityKey { + NSString *text = nil; + + switch (signature.status) { + case GPGErrorNoError: + if (signature.trust > 1) { + text = @"VALIDITY_OK"; + } else { + text = @"VALIDITY_NO_TRUST"; + } + break; + case GPGErrorBadSignature: + text = @"VALIDITY_BAD_SIGNATURE"; + break; + case GPGErrorSignatureExpired: + text = @"VALIDITY_SIGNATURE_EXPIRED"; + break; + case GPGErrorKeyExpired: + text = @"VALIDITY_KEY_EXPIRED"; + break; + case GPGErrorCertificateRevoked: + text = @"VALIDITY_KEY_REVOKED"; + break; + case GPGErrorUnknownAlgorithm: + text = @"VALIDITY_UNKNOWN_ALGORITHM"; + break; + case GPGErrorNoPublicKey: + text = @"VALIDITY_NO_PUBLIC_KEY"; + break; + default: + text = @"VALIDITY_UNKNOWN_ERROR"; + break; + } + return text; +} + + + +- (NSImage *)validityImage { + if (![signature isKindOfClass:[GPGSignature class]]) { + return nil; + } + if (signature.status != 0 || signature.trust <= 1) { + return [NSImage imageNamed:@"InvalidBadge"]; + } else { + return [NSImage imageNamed:@"ValidBadge"]; + } +} + +- (NSString *)validityDescription { + if (!signature) return nil; + + NSString *text = [self unlocalizedValidityKey]; + if (text) { + return localized(text); + } else { + return @""; + } +} + +- (NSString *)validityToolTip { + if (!signature) return nil; + + NSString *text = [self unlocalizedValidityKey]; + text = [text stringByAppendingString:@"_TOOLTIP"]; + if (text) { + return localized(text); + } else { + return @""; + } +} + +- (NSString *)keyID { + NSString *keyID = self.gpgKey.keyID; + if (!keyID) { + keyID = signature.fingerprint; + } + return [keyID shortKeyID]; +} + +- (NSImage *)signatureImage { + if (![signature isKindOfClass:[GPGSignature class]]) { + return nil; + } + if (signature.status != 0 || signature.trust <= 1) { + return [NSImage imageNamed:@"CertLargeNotTrusted"]; + } else { + return [NSImage imageNamed:@"CertLargeStd"]; + } +} + +- (IBAction)close:(id)sender { + [self close]; + [NSApp stopModal]; + [NSApp endSheet:self.window]; +} + +- (CGFloat)splitView:(NSSplitView *)splitView constrainMinCoordinate:(CGFloat)proposedMinimumPosition ofSubviewAt:(NSInteger)dividerIndex { + return proposedMinimumPosition + 20; +} +- (CGFloat)splitView:(NSSplitView *)splitView constrainMaxCoordinate:(CGFloat)proposedMaximumPosition ofSubviewAt:(NSInteger)dividerIndex { + return proposedMaximumPosition - 90; +} +- (void)splitView:(NSSplitView *)splitView resizeSubviewsWithOldSize:(NSSize)oldSize { + NSArray *subviews = [splitView subviews]; + NSView *view1 = subviews[0]; + NSView *view2 = subviews[1]; + NSSize splitViewSize = [splitView frame].size; + NSSize size1 = [view1 frame].size; + NSRect frame2 = [view2 frame]; + CGFloat dividerThickness = splitView.dividerThickness; + + size1.width = splitViewSize.width; + frame2.size.width = splitViewSize.width; + + frame2.size.height = splitViewSize.height - dividerThickness - size1.height; + if (frame2.size.height < 60) { + frame2.size.height = 60; + size1.height = splitViewSize.height - 60 - dividerThickness; + } + frame2.origin.y = splitViewSize.height - frame2.size.height; + + [view1 setFrameSize:size1]; + [view2 setFrame:frame2]; +} + +- (void)awakeFromNib { + // Get attachment for row. + NSDictionary *attachment = attachments[0]; + if ([attachment valueForKey:@"error"]) { + [scrollView setBackgroundColor:[NSColor colorWithDeviceRed:1.0 green:0.9451 blue:0.6074 alpha:1.0]]; + } else { + [scrollView setBackgroundColor:[NSColor whiteColor]]; + } + initialHeight = self.window.contentView.frame.size.height; +} + +#pragma mark - Table delegate + +#pragma mark - Table data source + +- (NSInteger)numberOfRowsInTableView:(NSTableView *)aTableView { + return 1; +} + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + id value = nil; + if([aTableColumn.identifier isEqualToString:@"encrypted"]) + value = [NSImage imageNamed:@"NSLockUnlockedTemplate"]; + else if([aTableColumn.identifier isEqualToString:@"signed"]) + value = [NSImage imageNamed:@"SignatureOffTemplate"]; + else if([aTableColumn.identifier isEqualToString:@"name"]) + value = @"gpgmail.png"; + + return value; +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldSelectRow:(NSInteger)rowIndex { + // Get attachment for row. + NSDictionary *attachment = attachments[rowIndex]; + if([attachment valueForKey:@"error"]) + [scrollView setBackgroundColor:[NSColor colorWithDeviceRed:1.0 green:0.9451 blue:0.6074 alpha:1.0]]; + else + [scrollView setBackgroundColor:[NSColor whiteColor]]; + + return YES; +} + +@end diff --git a/Source/GPGComposeWindowStorePoser.h b/Source/GPGComposeWindowStorePoser.h new file mode 100644 index 00000000..0609f290 --- /dev/null +++ b/Source/GPGComposeWindowStorePoser.h @@ -0,0 +1,26 @@ +/* GPGComposeWindowStorePoser.h created by dave on Sun 14-Jan-2001 */ + +#import + +#import + + +@interface GPGComposeWindowStorePoser : ComposeWindowStore + +// The following actions are forwarded to the GPGMailComposeAccessoryViewOwner +- (IBAction)gpgToggleEncryptionForNewMessage:(id)sender; +- (IBAction)gpgToggleSignatureForNewMessage:(id)sender; +- (IBAction)gpgChoosePublicKeys:(id)sender; +- (IBAction)gpgChoosePersonalKey:(id)sender; +- (IBAction)gpgChoosePublicKey:(id)sender; + +// Some menu validations are forwarded to GPGMailComposeAccessoryViewOwner +- (BOOL)validateMenuItem:(id )menuItem; + +// The following notification methods are forwarded to the GPGMailComposeAccessoryViewOwner +#ifndef MACOSX +- (void)textDidChange:(NSNotification *)notification; +#endif +- (void)textDidEndEditing:(NSNotification *)notification; + +@end diff --git a/Source/GPGConstants.h b/Source/GPGConstants.h new file mode 100644 index 00000000..5d5e1d31 --- /dev/null +++ b/Source/GPGConstants.h @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2000-2012, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY GPGTools Project Team AND CONTRIBUTORS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL GPGTools Project Team AND CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +typedef enum { + GPGMAIL_SECURITY_METHOD_OPENPGP = 1, + GPGMAIL_SECURITY_METHOD_SMIME +} GPGMAIL_SECURITY_METHOD; + +typedef enum { + GPGMAIL_SIGN_FLAG_OPENPGP = 2, + GPGMAIL_SIGN_FLAG_SMIME = 4 +} GPGMAIL_SIGN_FLAG; + +typedef enum { + GPGMAIL_ENCRYPT_FLAG_OPENPGP = 2, + GPGMAIL_ENCRYPT_FLAG_SMIME = 4 +} GPGMAIL_ENCRYPT_FLAG; diff --git a/Source/GPGConstants.m b/Source/GPGConstants.m new file mode 100644 index 00000000..45946b8a --- /dev/null +++ b/Source/GPGConstants.m @@ -0,0 +1,13 @@ +// +// GPGConstants.m +// GPGMail +// +// Created by Lukas Pitschl on 25.08.11. +// Copyright (c) 2011 __MyCompanyName__. All rights reserved. +// + +#import "GPGConstants.h" + +@implementation GPGConstants + +@end diff --git a/Source/GPGDefaults.h b/Source/GPGDefaults.h new file mode 100644 index 00000000..3e4379d9 --- /dev/null +++ b/Source/GPGDefaults.h @@ -0,0 +1,64 @@ +/* + * Copyright © Roman Zechmeister, 2010 + * + * Dieses Programm ist freie Software. Sie können es unter den Bedingungen + * der GNU General Public License, wie von der Free Software Foundation + * veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß + * Version 3 der Lizenz oder (nach Ihrer Option) jeder späteren Version. + * + * Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, daß es Ihnen + * von Nutzen sein wird, aber ohne irgendeine Garantie, sogar ohne die implizite + * Garantie der Marktreife oder der Verwendbarkeit für einen bestimmten Zweck. + * Details finden Sie in der GNU General Public License. + * + * Sie sollten ein Exemplar der GNU General Public License zusammen mit diesem + * Programm erhalten haben. Falls nicht, siehe . + */ + +#import +#import + +@interface GPGDefaults : NSObject { + NSString *_domain; + NSMutableDictionary *_defaults; + NSLock *_defaultsLock; + NSSet *_defaultDictionarys; +} + +@property (retain) NSString *domain; + ++ (id)gpgDefaults; ++ (id)standardDefaults; ++ (id)defaultsWithDomain:(NSString *)domain; +- (id)initWithDomain:(NSString *)aDomain; + +- (void)setObject:(id) value forKey:(NSString *)defaultName; +- (id)objectForKey:(NSString *)defaultName; +- (void)removeObjectForKey:(NSString *)defaultName; + +- (void)setInteger:(NSInteger) value forKey:(NSString *)defaultName; +- (NSInteger)integerForKey:(NSString *)defaultName; + +- (void)setBool:(BOOL) value forKey:(NSString *)defaultName; +- (BOOL)boolForKey:(NSString *)defaultName; + +- (void)setFloat:(float)value forKey:(NSString *)defaultName; +- (float)floatForKey:(NSString *)defaultName; + +- (NSString *)stringForKey:(NSString *)defaultName; + +- (NSArray *)arrayForKey:(NSString *)defaultName; + +- (NSDictionary *)dictionaryRepresentation; + +- (void)registerDefaults:(NSDictionary *)dictionary; + +@end + + +@interface GPGAgentOptions : GPGOptions {} + ++ (void)gpgAgentFlush; + +@end + diff --git a/Source/GPGDefaults.m b/Source/GPGDefaults.m new file mode 100644 index 00000000..f61fcfc7 --- /dev/null +++ b/Source/GPGDefaults.m @@ -0,0 +1,288 @@ +/* + * Copyright © Roman Zechmeister, 2010 + * + * Dieses Programm ist freie Software. Sie können es unter den Bedingungen + * der GNU General Public License, wie von der Free Software Foundation + * veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß + * Version 3 der Lizenz oder (nach Ihrer Option) jeder späteren Version. + * + * Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, daß es Ihnen + * von Nutzen sein wird, aber ohne irgendeine Garantie, sogar ohne die implizite + * Garantie der Marktreife oder der Verwendbarkeit für einen bestimmten Zweck. + * Details finden Sie in der GNU General Public License. + * + * Sie sollten ein Exemplar der GNU General Public License zusammen mit diesem + * Programm erhalten haben. Falls nicht, siehe . + */ + +#import "GPGDefaults.h" + +NSString *gpgDefaultsDomain = @"org.gpgtools.common"; +NSString *GPGDefaultsUpdatedNotification = @"org.gpgtools.GPGDefaultsUpdatedNotification"; + +@interface GPGDefaults (Private) +- (void)refreshDefaults; +- (NSMutableDictionary *)defaults; +- (void)writeToDisk; +- (void)defaultsDidUpdated:(NSNotification *)notification; +- (void)setGPGConf:(id)value forKey:(NSString *)defaultName; +@end + + +@implementation GPGDefaults +static NSMutableDictionary *_sharedInstances = nil; + ++ (id)gpgDefaults { + return [self defaultsWithDomain:gpgDefaultsDomain]; +} ++ (id)standardDefaults { + return [self defaultsWithDomain:[[NSBundle bundleForClass:[self class]] bundleIdentifier]]; +} ++ (id)defaultsWithDomain:(NSString *)domain { + if (!_sharedInstances) { + _sharedInstances = [[NSMutableDictionary alloc] initWithCapacity:2]; + } + GPGDefaults *defaultsController = [_sharedInstances objectForKey:domain]; + if (!defaultsController) { + defaultsController = [[self alloc] initWithDomain:domain]; + [_sharedInstances setObject:defaultsController forKey:domain]; + [defaultsController release]; + } + return defaultsController; +} +- (id)initWithDomain:(NSString *)domain { + if (self = [self init]) { + self.domain = domain; + } + return self; +} +- (id)init { + if (self = [super init]) { + _defaults = nil; + _defaultDictionarys = nil; + _defaultsLock = [[NSLock alloc] init]; + [[NSDistributedNotificationCenter defaultCenter] addObserver:self selector:@selector(defaultsDidUpdated:) name:GPGDefaultsUpdatedNotification object:nil]; + } + return self; +} + +- (void)setDomain:(NSString *)value { + if (value != _domain) { + NSString *old = _domain; + _domain = [value retain]; + [old release]; + } +} +- (NSString *)domain { + return _domain; +} + +- (void)setObject:(id)value forKey:(NSString *)defaultName { + [_defaultsLock lock]; + [self.defaults setObject:value forKey:defaultName]; + [_defaultsLock unlock]; + [self writeToDisk]; + [self setGPGConf:[value description] forKey:defaultName]; +} +- (id)objectForKey:(NSString *)defaultName { + [_defaultsLock lock]; + NSDictionary *dict = self.defaults; + NSObject *obj = [dict objectForKey:defaultName]; + if (!obj && _defaultDictionarys) { + for (NSDictionary *dictionary in _defaultDictionarys) { + obj = [dictionary objectForKey:defaultName]; + if (obj) { + break; + } + } + } + [_defaultsLock unlock]; + return obj; +} +- (void)removeObjectForKey:(NSString *)defaultName { + [_defaultsLock lock]; + [self.defaults removeObjectForKey:defaultName]; + [_defaultsLock unlock]; + [self writeToDisk]; + [self setGPGConf:nil forKey:defaultName]; +} + +- (void)setInteger:(NSInteger)value forKey:(NSString *)defaultName { + [self setObject:[NSNumber numberWithInteger:value] forKey:defaultName]; +} +- (NSInteger)integerForKey:(NSString *)defaultName { + return [[self objectForKey:defaultName] integerValue]; +} + +- (void)setBool:(BOOL)value forKey:(NSString *)defaultName { + [self setObject:[NSNumber numberWithBool:value] forKey:defaultName]; +} +- (BOOL)boolForKey:(NSString *)defaultName { + return [[self objectForKey:defaultName] boolValue]; +} + +- (void)setFloat:(float)value forKey:(NSString *)defaultName { + [self setObject:[NSNumber numberWithFloat:value] forKey:defaultName]; +} +- (float)floatForKey:(NSString *)defaultName { + return [[self objectForKey:defaultName] floatValue]; +} + +- (NSString *)stringForKey:(NSString *)defaultName { + NSString *obj = [self objectForKey:defaultName]; + + if (obj && [obj isKindOfClass:[NSString class]]) { + return obj; + } + return nil; +} + +- (NSArray *)arrayForKey:(NSString *)defaultName { + NSArray *obj = [self objectForKey:defaultName]; + + if (obj && [obj isKindOfClass:[NSArray class]]) { + return obj; + } + return nil; +} + +- (NSDictionary *)dictionaryRepresentation { + [_defaultsLock lock]; + NSDictionary *retDict = [self.defaults copy]; + [_defaultsLock unlock]; + return [retDict autorelease]; +} + +- (void)registerDefaults:(NSDictionary *)dictionary { + if (!_defaultDictionarys) { + _defaultDictionarys = [[NSSet alloc] initWithObjects:dictionary, nil]; + } else { + NSSet *oldDictionary = _defaultDictionarys; + _defaultDictionarys = [[_defaultDictionarys setByAddingObject:dictionary] retain]; + [oldDictionary release]; + } +} + +- (void)setValue:(id)value forUndefinedKey:(NSString *)key { + [self setObject:value forKey:key]; +} +- (id)valueForUndefinedKey:(NSString *)key { + return [self objectForKey:key]; +} + + +// Private + +- (void)setGPGConf:(id)value forKey:(NSString *)defaultName { + if ([defaultName isEqualToString:@"GPGPassphraseFlushTimeout"]) { + GPGAgentOptions *agentOptions = [[GPGAgentOptions new] autorelease]; + + NSInteger cacheTime = [value integerValue]; + if (cacheTime == 0) { + cacheTime = 600; + } + [agentOptions setOptionValue:[NSString stringWithFormat:@"%i", cacheTime] forName:@"default-cache-ttl"]; + + cacheTime *= 12; + if (cacheTime <= 600) { + cacheTime = 600; + } + [agentOptions setOptionValue:[NSString stringWithFormat:@"%i", cacheTime] forName:@"max-cache-ttl"]; + + [agentOptions saveOptions]; + [GPGAgentOptions gpgAgentFlush]; // gpg-agent should read the new configuration. + } else if ([defaultName isEqualToString:@"GPGDefaultKeyFingerprint"]) { + GPGOptions *gpgOptions = [[GPGOptions new] autorelease]; + [gpgOptions setOptionValue:value forName:@"default-key"]; + } else if ([defaultName isEqualToString:@"GPGRemembersPassphrasesDuringSession"]) { + GPGAgentOptions *agentOptions = [[GPGAgentOptions new] autorelease]; + + if ([value boolValue]) { + + NSInteger cacheTime = [[agentOptions optionValueForName:@"default-cache-ttl"] integerValue]; + cacheTime *= 12; + if (cacheTime <= 600) { + cacheTime = 600; + } + [agentOptions setOptionValue:[NSString stringWithFormat:@"%i", cacheTime] forName:@"max-cache-ttl"]; + } else { + [agentOptions setOptionValue:@"0" forName:@"max-cache-ttl"]; + } + + [agentOptions saveOptions]; + [GPGAgentOptions gpgAgentFlush]; // gpg-agent should read the new configuration. + } +} + +- (void)refreshDefaults { + NSDictionary *dictionary = [[NSUserDefaults standardUserDefaults] persistentDomainForName:_domain]; + NSMutableDictionary *old = _defaults; + + if (dictionary) { + _defaults = [[dictionary mutableCopy] retain]; + } else { + _defaults = [[NSMutableDictionary alloc] initWithCapacity:1]; + } + [old release]; +} + +- (NSMutableDictionary *)defaults { + if (!_defaults) { + [self refreshDefaults]; + } + return [[_defaults retain] autorelease]; +} + +- (void)writeToDisk { + [_defaultsLock lock]; + [[NSUserDefaults standardUserDefaults] setPersistentDomain:self.defaults forName:_domain]; + [_defaultsLock unlock]; + + NSDictionary *userInfo = [NSDictionary dictionaryWithObjectsAndKeys:_domain, @"domain", [NSNumber numberWithInteger:(NSInteger)self], @"sender", nil]; + [[NSDistributedNotificationCenter defaultCenter] postNotificationName:GPGDefaultsUpdatedNotification object:@"org.gpgtools.GPGDefaults" userInfo:userInfo]; +} + +- (void)defaultsDidUpdated:(NSNotification *)notification { + NSDictionary *userInfo = [notification userInfo]; + + if ([[userInfo objectForKey:@"sender"] integerValue] != (NSInteger)self) { + if ([[userInfo objectForKey:@"domain"] isEqualToString:_domain]) { + [self refreshDefaults]; + } + } +} + +- (void)dealloc { + [[NSDistributedNotificationCenter defaultCenter] removeObserver:self]; + [_defaults release]; + self.domain = nil; + [_defaultsLock release]; + [_defaultDictionarys release]; + [super dealloc]; +} + +@end + + +@interface GPGOptions (hidden) ++ (NSString *)homeDirectory; +@end + + +@implementation GPGAgentOptions + ++ (NSString *)optionsFilename { + return [[self homeDirectory] stringByAppendingPathComponent:@"gpg-agent.conf"]; +} + ++ (void)gpgAgentFlush { + system("killall -SIGHUP gpg-agent"); +} + +@end + + + + + + diff --git a/Source/GPGException+GPGMail.h b/Source/GPGException+GPGMail.h new file mode 100644 index 00000000..c274fb76 --- /dev/null +++ b/Source/GPGException+GPGMail.h @@ -0,0 +1,28 @@ +/* + GPGException+GPGMail.h + GPGMail + + Copyright (c) 2012 Chris Fraire. All rights reserved. + + GPGMail is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + */ + +#import + +@interface GPGException (GPGMail) + +// Returns TRUE if the error code qualifies as "corrupted data" +- (BOOL)isCorruptedInputError; + +@end diff --git a/Source/GPGException+GPGMail.m b/Source/GPGException+GPGMail.m new file mode 100644 index 00000000..05943632 --- /dev/null +++ b/Source/GPGException+GPGMail.m @@ -0,0 +1,37 @@ +/* + GPGException+GPGMail.h + GPGMail + + Copyright (c) 2012 Chris Fraire. All rights reserved. + + GPGMail is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + */ + +#import "GPGException+GPGMail.h" + +@implementation GPGException (GPGMail) + +- (BOOL)isCorruptedInputError { + switch (self.errorCode) { + case GPGErrorUnknownPacket: + case GPGErrorChecksumError: + case GPGErrorInvalidPacket: + case GPGErrorInvalidArmor: + return TRUE; + default: + return FALSE; + } +} + +@end diff --git a/Source/GPGFlaggedString.h b/Source/GPGFlaggedString.h new file mode 100644 index 00000000..af0b046a --- /dev/null +++ b/Source/GPGFlaggedString.h @@ -0,0 +1,128 @@ +/* GPGFlaggedString.h created by lukele on Thu 09-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +/** + GPGFlaggedString allows the MimePart->newEncryptedPart and MimePart->newSignedPart + methods to determine, whether the message should be PGP or S/MIME encrypted|signed. + + Before creating a message, some header values (from, bcc, to) are replaced with + GPGFlaggedStrings. + In MimePart->newEncryptedPart and MimePart->newSignedPart, it's checked if the sender + or recipients are GPGFlaggedStrings or simple strings. + In the first case PGP encryption and signing methods are used, in the latter S/MIME methods. + + For classes that don't know about GPGFlaggedStrings it looks and presents itself + as a standard NSString. Even for isKindOfClass:[NSString class] checks, it returns true. + This is necessary, since Mail.app would otherwise discard the object when using it for header values + due to the fact, that it only allows NSData, NSArray and NSString. + + Unfortunately subclassing NSString is everything but easy (see Apple Documentation for NSString), + so the best option is to forward any non found selectors to the underlying original string. + */ +@interface GPGFlaggedString : NSObject { + NSString *string; + NSMutableDictionary *flags; + GPGFlaggedString *_uncommentedFlaggedValue; +} +@property (readonly, copy) NSString *string; +@property (readonly) NSDictionary *flags; + +/** + Create a new GPGFlaggedString. + GPGFlaggedStrings behave exactly like strings, since all + methods are forwarded to the underlying string, but the ones + that are needed to modify the string. + */ +- (id)initWithString:(NSString *)string flag:(NSString *)flag value:(id)value; + +- (id)initWithString:(NSString *)theString flags:(NSMutableDictionary *)theFlags; + +/** + Sets the value for the given flag. + */ +- (void)setValue:(id)value forFlag:(NSString *)flag; + +/** + It's necessary to implement uncommentedAddress, since it's + called before the addresses are passed into the signing and encryption + methods and the flagged value would be replaced with the simple string. + */ +- (id)uncommentedAddress; + +/** + Returns always true, but since this method is also implemented + on NSString using a category, it can be used to check if a string like + variable is indeed a flagged value or a simple string. + */ +- (BOOL)isFlaggedValue; + +/** + Return the value saved for flag. + */ +- (id)valueForFlag:(NSString *)flag; + +/** + Returns true for [NSString class] so Mail.app doesn't discard it. + */ +- (BOOL)isKindOfClass:(Class)aClass; + +/** + Every non-implemented method is forwarded to the + underlying original string. + */ +- (id)forwardingTargetForSelector:(SEL)aSelector; + + +@end + +/** + Category adding some of GPGFlaggedString methods + to NSString so they can be used interchangeably. + */ +@interface NSString (GPGFlaggedString) + +/** + Creates a new GPGFlaggedString with the given flag and value. + */ +- (GPGFlaggedString *)flaggedStringWithFlag:(NSString *)flag value:(id)value; + +/** + Returns always false, since a simple string is never a flagged value. + */ +- (BOOL)isFlaggedValue; + +/** + Return always nil, but is necessary so NSStrings and GPGFlaggedStrings + can be used interchangeably. + */ +- (id)valueForFlag:(NSString *)flag; + +@end diff --git a/Source/GPGFlaggedString.m b/Source/GPGFlaggedString.m new file mode 100644 index 00000000..c1c1abac --- /dev/null +++ b/Source/GPGFlaggedString.m @@ -0,0 +1,114 @@ +/* GPGFlaggedString.m created by lukele on Thu 09-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "CCLog.h" +#import "NSString-EmailAddressString.h" +#import "GPGFlaggedString.h" +#import "NSString+GPGMail.h" + +@interface GPGFlaggedString () +@property (copy) NSString *string; +- (id)initWithString:(NSString *)theString flags:(NSMutableDictionary *)theFlags; +@end + + +@implementation GPGFlaggedString +@synthesize string, flags; + +- (id)initWithString:(NSString *)theString flag:(NSString *)flag value:(id)value { + return [self initWithString:theString flags:[NSMutableDictionary dictionaryWithObject:value forKey:flag]]; +} + +- (id)initWithString:(NSString *)theString flags:(NSMutableDictionary *)theFlags { + self = [super init]; + if (self) { + self.string = theString; + flags = [theFlags mutableCopy]; + } + return self; +} + +- (void)setValue:(id)value forFlag:(NSString *)flag { + flags[flag] = value; +} + +- (id)description { + return [string description]; +} + +- (id)uncommentedAddress { + // Don't autorelease it here, otherwise the object is overreleased, + // after the message is sent. + // Only create once. The NSString uncommentedAddress behaves the same way. + if(!_uncommentedFlaggedValue) { + _uncommentedFlaggedValue = [[GPGFlaggedString alloc] initWithString:[string gpgNormalizedEmail] flags:flags]; + } + return _uncommentedFlaggedValue; +} + +- (BOOL)isFlaggedValue { + return YES; +} + +- (id)valueForFlag:(NSString *)flag { + return flags[flag]; +} + +- (BOOL)isKindOfClass:(Class)aClass { + if(aClass == NSClassFromString(@"NSString")) + return YES; + if(aClass == NSClassFromString(@"GPGFlaggedString")) + return YES; + return NO; +} + +- (id)forwardingTargetForSelector:(SEL)aSelector { + return string; +} + +@end + +@implementation NSString (GPGFlaggedString) + +- (GPGFlaggedString *)flaggedStringWithFlag:(NSString *)flag value:(id)value { + // Don't autorelease it here, otherwise the object is overreleased, + // after the message is sent. + return [[GPGFlaggedString alloc] initWithString:self flag:flag value:value]; +} + +- (BOOL)isFlaggedValue { + return NO; +} + +- (id)valueForFlag:(NSString *)flag { + return nil; +} + +@end + diff --git a/Source/GPGMailBundle.h b/Source/GPGMailBundle.h new file mode 100644 index 00000000..fbaffdc4 --- /dev/null +++ b/Source/GPGMailBundle.h @@ -0,0 +1,175 @@ +/* GPGMailBundle.h created by dave on Thu 29-Jun-2000 */ +/* GPGMailBundle.h re-created by Lukas Pitschl (@lukele) on Fri 14-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import + +extern NSString *GPGMailKeyringUpdatedNotification; +extern NSString *gpgErrorIdentifier; // This identifier is used to set and find GPGErrorCodes in NSData. + +@class Message, GMMessageRulesApplier, GMKeyManager; + +@interface GPGMailBundle : NSObject { + GMMessageRulesApplier *_messageRulesApplier; + + NSMutableArray *_bundleImages; + + dispatch_source_t _checkGPGTimer; + + GMKeyManager *_keyManager; + + BOOL accountExistsForSigning; + BOOL _warnedAboutMissingPrivateKeys; + + GPGErrorCode gpgStatus; +} + +/** + Checks for multiple installations of GPGMail.mailbundle in + all Library folders. + */ ++ (NSArray *)multipleInstallations; + +/** + Warn the user that multiple installations were found and + bail out. + */ ++ (void)showMultipleInstallationsErrorAndExit:(NSArray *)installations; + +// Load all necessary images. +- (void)_loadImages; + +// Returns the bundle version. ++ (NSString *)bundleVersion; +// Returns the string used for the x-pgp-agent message header. ++ (NSString *)agentHeader; + +- (NSString *)version; ++ (BOOL)gpgMailWorks; +- (BOOL)gpgMailWorks; + + +/** + Returns the NSBundle for GPGMail. + It's a bit faster than [NSBundle bundleForClass:[self class]]. + */ ++ (NSBundle *)bundle; + + +/** + Return if we're running on Mountain Lion or not. + */ ++ (BOOL)isMountainLion; ++ (BOOL)isMavericks; ++ (BOOL)isYosemite; ++ (BOOL)isLion; ++ (BOOL)isElCapitan; + +/** + Schedules a message which should have rules applied. + While the app is running, each message should only have rules applied + once. This is assured by performing the check if the message was already + scheduled using a serial queue. The actual applying of the rules, is performed + on the background. + */ +- (void)scheduleApplyingRulesForMessage:(Message *)message isEncrypted:(BOOL)isEncrypted; + +/** + See GMKeyManager. + */ +- (GPGKey *)anyPersonalPublicKeyWithPreferenceAddress:(NSString *)address; + +/** + Returns the secret key matching ID. + */ +- (GPGKey *)secretGPGKeyForKeyID:(NSString *)keyID; + +/** + Also includes disabled keys when looking for the secret key. + */ +- (GPGKey *)secretGPGKeyForKeyID:(NSString *)keyID includeDisabled:(BOOL)includeDisabled; + +/** + Returns the preferred secret GPG key. + User can set this via gpg.conf + */ +- (GPGKey *)preferredGPGKeyForSigning; +/** + Returns the key matching fingerprint. + */ +- (GPGKey *)keyForFingerprint:(NSString *)fingerprint; +/** + Checks if MacGPG2 is installed and is properly working. + */ +- (BOOL)checkGPG; + +/** + Returns a list of public keys matching the given addresses. + */ +- (NSMutableSet *)publicKeyListForAddresses:(NSArray *)recipients; +/** + Returns a list of secret keys matching the given addresses. + */ +- (NSMutableSet *)signingKeyListForAddress:(NSString *)sender; +/** + Returns whether or not a message can be encrypted to an address. + */ +- (BOOL)canEncryptMessagesToAddress:(NSString *)address; +/** + Returns whether or not a message can be signed from a given address. + */ +- (BOOL)canSignMessagesFromAddress:(NSString *)address; + ++ (NSString *)localizedStringForKey:(NSString *)key; + +/** + On Mavericks most Mail classes have been prefixed. + This method receives the old name and tries to find the matching + new class. + */ ++ (Class)resolveMailClassFromName:(NSString *)name; + +/** + Returns the ComposeBackEnd which is linked to a given object. + */ ++ (id)backEndFromObject:(id)object; + +@property (readonly) GPGErrorCode gpgStatus; +@property (readonly, strong) NSSet *allGPGKeys; +@property (nonatomic, assign) BOOL accountExistsForSigning; + +@end + +@interface GPGMailBundle (NoImplementation) +// Prevent "incomplete implementation" warning. ++ (id)sharedInstance; +@end + + diff --git a/Source/GPGMailBundle.m b/Source/GPGMailBundle.m new file mode 100644 index 00000000..aafad51e --- /dev/null +++ b/Source/GPGMailBundle.m @@ -0,0 +1,600 @@ +/* GPGMailBundle.m created by dave on Thu 29-Jun-2000 */ +/* GPGMailBundle.m completely re-created by Lukas Pitschl (@lukele) on Thu 13-Jun-2013 */ +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import +#import +#import +#import +#import +#import "CCLog.h" +#import "JRLPSwizzle.h" +#import "GMCodeInjector.h" +#import "GMKeyManager.h" +#import "GMMessageRulesApplier.h" +#import "GPGMailBundle.h" +#import "GPGMailPreferences.h" +#import "MVMailBundle.h" +#import "NSString+GPGMail.h" +#import "HeadersEditor+GPGMail.h" +#import "DocumentEditor.h" +#import "GMSecurityControl.h" + +@interface GPGMailBundle () + +@property GPGErrorCode gpgStatus; +@property (nonatomic, strong) GMKeyManager *keyManager; + +@end + + +#pragma mark Constants and global variables + +NSString *GPGMailSwizzledMethodPrefix = @"MA"; +NSString *GPGMailAgent = @"GPGMail"; +NSString *GPGMailKeyringUpdatedNotification = @"GPGMailKeyringUpdatedNotification"; +NSString *gpgErrorIdentifier = @"^~::gpgmail-error-code::~^"; +static NSString * const kExpiredCheckKey = @"__gme__"; + +int GPGMailLoggingLevel = 0; +static BOOL gpgMailWorks = NO; + +#pragma mark GPGMailBundle Implementation + +@implementation GPGMailBundle +@synthesize accountExistsForSigning, gpgStatus; + + +#pragma mark Multiple Installations + ++ (NSArray *)multipleInstallations { + NSArray *libraryPaths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSAllDomainsMask, YES); + NSString *bundlesPath = [@"Mail" stringByAppendingPathComponent:@"Bundles"]; + NSString *bundleName = @"GPGMail.mailbundle"; + + NSMutableArray *installations = [NSMutableArray array]; + + NSFileManager *fileManager = [[NSFileManager alloc] init]; + + for(NSString *libraryPath in libraryPaths) { + NSString *bundlePath = [libraryPath stringByAppendingPathComponent:[bundlesPath stringByAppendingPathComponent:bundleName]]; + if([fileManager fileExistsAtPath:bundlePath]) + [installations addObject:bundlePath]; + } + + return (NSArray *)installations; +} + ++ (void)showMultipleInstallationsErrorAndExit:(NSArray *)installations { + NSAlert *errorModal = [[NSAlert alloc] init]; + + errorModal.messageText = GMLocalizedString(@"GPGMAIL_MULTIPLE_INSTALLATIONS_TITLE"); + errorModal.informativeText = [NSString stringWithFormat:GMLocalizedString(@"GPGMAIL_MULTIPLE_INSTALLATIONS_MESSAGE"), [installations componentsJoinedByString:@"\n\n"]]; + [errorModal addButtonWithTitle:GMLocalizedString(@"GPGMAIL_MULTIPLE_INSTALLATIONS_BUTTON")]; + [errorModal runModal]; + + + // It's not at all a good idea to use exit and kill the app, + // but in this case it's alright because otherwise the user would experience a + // crash anyway. + exit(0); +} + + +#pragma mark Init, dealloc etc. + ++ (void)initialize { + // Make sure the initializer is only run once. + // Usually is run, for every class inheriting from + // GPGMailBundle. + if(self != [GPGMailBundle class]) + return; + + if (![GPGController class]) { + NSRunAlertPanel([self localizedStringForKey:@"LIBMACGPG_NOT_FOUND_TITLE"], [self localizedStringForKey:@"LIBMACGPG_NOT_FOUND_MESSAGE"], nil, nil, nil); + return; + } + + // Start the beta expired check. + if([GPGMailBundle isElCapitan] && [self betaExpired]) { + return; + } + + /* Check the validity of the code signature. + * Disable for the time being, since Info.plist is part of the code signature + * and if a new version of OS X is released, and the UUID is added, this check + * will always fail. + * Probably not possible in the future either. + */ +// if (![[self bundle] isValidSigned]) { +// NSRunAlertPanel([self localizedStringForKey:@"CODE_SIGN_ERROR_TITLE"], [self localizedStringForKey:@"CODE_SIGN_ERROR_MESSAGE"], nil, nil, nil); +// return; +// } + + // If one happens to have for any reason (like for example installed GPGMail + // from the installer, which will reside in /Library and compiled with XCode + // which will reside in ~/Library) two GPGMail.mailbundle's, + // display an error message to the user and shutdown Mail.app. + NSArray *installations = [self multipleInstallations]; + if([installations count] > 1) { + [self showMultipleInstallationsErrorAndExit:installations]; + return; + } + + Class mvMailBundleClass = NSClassFromString(@"MVMailBundle"); + // If this class is not available that means Mail.app + // doesn't allow plugins anymore. Fingers crossed that this + // never happens! + if(!mvMailBundleClass) + return; + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated" + class_setSuperclass([self class], mvMailBundleClass); +#pragma GCC diagnostic pop + + // Initialize the bundle by swizzling methods, loading keys, ... + GPGMailBundle *instance = [GPGMailBundle sharedInstance]; + + [[((MVMailBundle *)self) class] registerBundle]; // To force registering composeAccessoryView and preferences +} + +- (id)init { + if (self = [super init]) { + NSLog(@"Loaded GPGMail %@", [self version]); + + NSBundle *myBundle = [GPGMailBundle bundle]; + + // Load all necessary images. + [self _loadImages]; + + + // Set domain and register the main defaults. + GPGOptions *options = [GPGOptions sharedOptions]; + options.standardDomain = [GPGMailBundle bundle].bundleIdentifier; + NSDictionary *defaultsDictionary = [NSDictionary dictionaryWithContentsOfFile:[myBundle pathForResource:@"GPGMailBundle" ofType:@"defaults"]]; + [(id)options registerDefaults:defaultsDictionary]; + + if (![options boolForKey:@"DefaultsLoaded"]) { + NSRunAlertPanel([GPGMailBundle localizedStringForKey:@"NO_DEFAULTS_TITLE"], [GPGMailBundle localizedStringForKey:@"NO_DEFAULTS_MESSAGE"], nil, nil, nil); + NSLog(@"GPGMailBundle.defaults can't be loaded!"); + } + + + // Configure the logging level. + GPGMailLoggingLevel = (int)[[GPGOptions sharedOptions] integerForKey:@"DebugLog"]; + DebugLog(@"Debug Log enabled: %@", [[GPGOptions sharedOptions] integerForKey:@"DebugLog"] > 0 ? @"YES" : @"NO"); + + _keyManager = [[GMKeyManager alloc] init]; + + // Initiate the Message Rules Applier. + _messageRulesApplier = [[GMMessageRulesApplier alloc] init]; + +// if([GPGMailBundle isElCapitan]) +// [self runBetaHasExpiredCheck]; + + // Start the GPG checker. + [self startGPGChecker]; + + // Specify that a count exists for signing. + accountExistsForSigning = YES; + + // Inject the plugin code. + [GMCodeInjector injectUsingMethodPrefix:GPGMailSwizzledMethodPrefix]; + } + + return self; +} + ++ (BOOL)betaExpired { + NSDictionary *gme = [[NSUserDefaults standardUserDefaults] dictionaryForKey:kExpiredCheckKey]; + NSString *build = [GPGMailBundle bundleBuildNumber]; + if(!gme || !gme[build]) + return NO; + + NSArray *e = gme[build]; + if([e count] != 2) + return NO; + + if([e[0] boolValue]) + return YES; + + return NO; +} + +- (void)runBetaHasExpiredCheck { + NSDictionary *gme = [[NSUserDefaults standardUserDefaults] dictionaryForKey:kExpiredCheckKey]; + BOOL shouldCheck = NO; + if(!gme) { + shouldCheck = YES; + gme = @{}; + } + NSString *build = [GPGMailBundle bundleBuildNumber]; + if(gme && !gme[build]) + shouldCheck = YES; + + if([gme[build] isKindOfClass:[NSArray class]]) { + NSArray *e = gme[build]; + NSCalendar *c = [NSCalendar currentCalendar]; + NSDateComponents *dateComponent = [[NSDateComponents alloc] init]; + dateComponent.weekOfYear = 1; + + NSDate *d = [NSDate dateWithTimeIntervalSince1970:[e[1] doubleValue]]; + NSDate *w = [c dateByAddingComponents:dateComponent toDate:d options:NSCalendarWrapComponents]; + + NSDate *t = [NSDate date]; + NSComparisonResult r = [t compare:w]; + if(r == NSOrderedDescending || r == NSOrderedSame) { + shouldCheck = YES; + } + else + shouldCheck = NO; + } + if(shouldCheck) { + NSURL *url = [NSURL URLWithString:@"https://gpgtools.org/api/beta-check"]; + NSDictionary *info = @{@"build-number": build, @"version": [GPGMailBundle bundleVersion]}; + + NSData *json = [NSJSONSerialization dataWithJSONObject:info options:0 error:nil]; + NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; + request.HTTPMethod = @"POST"; + request.HTTPBody = json; + + NSURLSessionDataTask *task = [[NSURLSession sharedSession] dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) { + // We can simply ignore errors. If an error occurs, the check will be performed the next + // time Mail.app is launched. + if(!error) { + id result = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil]; + BOOL expired = [(NSNumber *)[result valueForKey:@"expired"] boolValue]; + NSMutableDictionary *gmen = [gme mutableCopy]; + NSArray *e = @[@(expired), @([[NSDate date] timeIntervalSince1970])]; + [gmen setObject:e forKey:build]; + [[NSUserDefaults standardUserDefaults] setValue:gmen forKey:kExpiredCheckKey]; + // Display warning dialog if the beta has expired. + if(expired) { + dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(8 * NSEC_PER_SEC)), + dispatch_get_main_queue(), ^{ + NSString *message = @"Please download the newest version from\nhttps://gpgtools.org\n\nGPGMail will continue working until you quit Mail.app"; + NSRunAlertPanel(@"Your GPGMail beta has expired", @"%@", nil, nil, nil, message); + } + ); + } + } + }]; + [task resume]; + } +} + +- (void)dealloc { + if (_checkGPGTimer) { + dispatch_release(_checkGPGTimer); + } +} + +- (void)_loadImages { + /** + * Loads all images which are used in the GPGMail User interface. + */ + // We need to load images and name them, because all images are searched by their name; as they are not located in the main bundle, + // +[NSImage imageNamed:] does not find them. + NSBundle *myBundle = [GPGMailBundle bundle]; + + NSArray *bundleImageNames = @[@"GPGMail", + @"ValidBadge", + @"InvalidBadge", + @"GreenDot", + @"YellowDot", + @"RedDot", + @"MenuArrowWhite", + @"certificate", + @"encryption", + @"CertSmallStd", + @"CertSmallStd_Invalid", + @"CertLargeStd", + @"CertLargeNotTrusted", + @"SymmetricEncryptionOn", + @"SymmetricEncryptionOff"]; + NSMutableArray *bundleImages = [[NSMutableArray alloc] initWithCapacity:[bundleImageNames count]]; + + for (NSString *name in bundleImageNames) { + NSImage *image = [[NSImage alloc] initByReferencingFile:[myBundle pathForImageResource:name]]; + + // Shoud an image not exist, log a warning, but don't crash because of inserting + // nil! + if(!image) { + NSLog(@"GPGMail: Image %@ not found in bundle resources.", name); + continue; + } + [image setName:name]; + [bundleImages addObject:image]; + } + + _bundleImages = bundleImages; + +} + +#pragma mark Check and status of GPG. + +- (void)startGPGChecker { + // Periodically check status of gpg. + [self checkGPG]; + _checkGPGTimer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)); + dispatch_source_set_timer(_checkGPGTimer, dispatch_time(DISPATCH_TIME_NOW, 60 * NSEC_PER_SEC), 60 * NSEC_PER_SEC, 10 * NSEC_PER_SEC); + + __block typeof(self) __unsafe_unretained weakSelf = self; + dispatch_source_set_event_handler(_checkGPGTimer, ^{ + [weakSelf checkGPG]; + }); + dispatch_resume(_checkGPGTimer); +} + +- (BOOL)checkGPG { + self.gpgStatus = (GPGErrorCode)[GPGController testGPG]; + switch (gpgStatus) { + case GPGErrorNotFound: + DebugLog(@"DEBUG: checkGPG - GPGErrorNotFound"); + break; + case GPGErrorConfigurationError: + DebugLog(@"DEBUG: checkGPG - GPGErrorConfigurationError"); + case GPGErrorNoError: { + static dispatch_once_t onceToken; + + GMKeyManager * __weak weakKeyManager = self->_keyManager; + + dispatch_once(&onceToken, ^{ + [weakKeyManager scheduleInitialKeyUpdate]; + }); + + gpgMailWorks = YES; + return YES; + } + default: + DebugLog(@"DEBUG: checkGPG - %i", gpgStatus); + break; + } + gpgMailWorks = NO; + return NO; +} + ++ (BOOL)gpgMailWorks { + return gpgMailWorks; +} + +- (BOOL)gpgMailWorks { + return gpgMailWorks; +} + + +#pragma mark Handling keys + +- (NSSet *)allGPGKeys { + if (!gpgMailWorks) return nil; + + return [_keyManager allKeys]; +} + +- (GPGKey *)anyPersonalPublicKeyWithPreferenceAddress:(NSString *)address { + if(!gpgMailWorks) return nil; + + return [_keyManager anyPersonalPublicKeyWithPreferenceAddress:address]; +} + +- (GPGKey *)secretGPGKeyForKeyID:(NSString *)keyID { + if (!gpgMailWorks) return nil; + + return [_keyManager secretKeyForKeyID:keyID includeDisabled:NO]; +} + +- (GPGKey *)secretGPGKeyForKeyID:(NSString *)keyID includeDisabled:(BOOL)includeDisabled { + if (!gpgMailWorks) return nil; + + return [_keyManager secretKeyForKeyID:keyID includeDisabled:includeDisabled]; +} + +- (NSMutableSet *)signingKeyListForAddress:(NSString *)sender { + if (!gpgMailWorks) return nil; + + return [_keyManager signingKeyListForAddress:[sender gpgNormalizedEmail]]; +} + +- (NSMutableSet *)publicKeyListForAddresses:(NSArray *)recipients { + if (!gpgMailWorks) return nil; + + return [_keyManager publicKeyListForAddresses:recipients]; +} + +- (BOOL)canSignMessagesFromAddress:(NSString *)address { + if (!gpgMailWorks) return NO; + + return [_keyManager secretKeyExistsForAddress:[address gpgNormalizedEmail]]; +} + +- (BOOL)canEncryptMessagesToAddress:(NSString *)address { + if (!gpgMailWorks) return NO; + + return [_keyManager publicKeyExistsForAddress:[address gpgNormalizedEmail]]; +} + +- (GPGKey *)preferredGPGKeyForSigning { + if (!gpgMailWorks) return nil; + + return [_keyManager findKeyByHint:[[GPGOptions sharedOptions] valueInGPGConfForKey:@"default-key"] onlySecret:YES]; +} + +- (GPGKey *)keyForFingerprint:(NSString *)fingerprint { + if (!gpgMailWorks) return nil; + + return [_keyManager keyForFingerprint:fingerprint]; +} + +#pragma mark Message Rules + +- (void)scheduleApplyingRulesForMessage:(Message *)message isEncrypted:(BOOL)isEncrypted { + [_messageRulesApplier scheduleMessage:message isEncrypted:isEncrypted]; +} + +#pragma mark Localization Helper + ++ (NSString *)localizedStringForKey:(NSString *)key { + NSBundle *gmBundle = [GPGMailBundle bundle]; + NSString *localizedString = NSLocalizedStringFromTableInBundle(key, @"GPGMail", gmBundle, @""); + // Translation found, out of here. + if(![localizedString isEqualToString:key]) + return localizedString; + + NSBundle *englishLanguageBundle = [NSBundle bundleWithPath:[gmBundle pathForResource:@"en" ofType:@"lproj"]]; + return [englishLanguageBundle localizedStringForKey:key value:@"" table:@"GPGMail"]; +} + +#pragma mark General Infos + ++ (NSBundle *)bundle { + static NSBundle *bundle; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + bundle = [NSBundle bundleForClass:[GPGMailBundle class]]; + + if ([bundle respondsToSelector:@selector(useGPGLocalizations)]) { + [bundle useGPGLocalizations]; + } + }); + return bundle; +} + + +- (NSString *)version { + return [[GPGMailBundle bundle] infoDictionary][@"CFBundleShortVersionString"]; +} + ++ (NSString *)bundleVersion { + /** + Returns the version of the bundle as string. + */ + return [[[GPGMailBundle bundle] infoDictionary] valueForKey:@"CFBundleVersion"]; +} + ++ (NSString *)bundleBuildNumber { + return [[[GPGMailBundle bundle] infoDictionary] valueForKey:@"BuildNumber"]; +} + ++ (NSString *)agentHeader { + NSString *header; + if ([[GPGOptions sharedOptions] boolForKey:@"emit-version"]) { + header = [NSString stringWithFormat:@"%@ %@", GPGMailAgent, [(GPGMailBundle *)[GPGMailBundle sharedInstance] version]]; + } else { + header = @"GPGMail"; + } + return header; +} + ++ (Class)resolveMailClassFromName:(NSString *)name { + NSArray *prefixes = @[@"", @"MC", @"MF"]; + + // MessageWriter is called MessageGenerator under Mavericks. + if([name isEqualToString:@"MessageWriter"] && !NSClassFromString(@"MessageWriter")) + name = @"MessageGenerator"; + + __block Class resolvedClass = nil; + [prefixes enumerateObjectsUsingBlock:^(NSString *prefix, NSUInteger idx, BOOL *stop) { + NSString *modifiedName = [name copy]; + if([prefixes containsObject:[modifiedName substringToIndex:2]]) + modifiedName = [modifiedName substringFromIndex:2]; + + NSString *className = [prefix stringByAppendingString:modifiedName]; + resolvedClass = NSClassFromString(className); + if(resolvedClass) + *stop = YES; + }]; + + return resolvedClass; +} + ++ (BOOL)isMountainLion { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wselector" + Class Message = [self resolveMailClassFromName:@"Message"]; + return [Message instancesRespondToSelector:@selector(dataSource)]; +#pragma clang diagnostic pop +} + ++ (BOOL)isLion { + return floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_6 && ![self isMountainLion] && ![self isMavericks] && ![self isYosemite] && ![self isElCapitan]; +} + ++ (BOOL)isMavericks { + return floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_8; +} + ++ (BOOL)isYosemite { + return floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_9; +} + ++ (BOOL)isElCapitan { + NSProcessInfo *info = [NSProcessInfo processInfo]; + if(![info respondsToSelector:@selector(isOperatingSystemAtLeastVersion:)]) + return NO; + + NSOperatingSystemVersion requiredVersion = {10,11,0}; + return [info isOperatingSystemAtLeastVersion:requiredVersion]; +} + ++ (BOOL)hasPreferencesPanel { + // LEOPARD Invoked on +initialize. Else, invoked from +registerBundle. + return YES; +} + ++ (NSString *)preferencesOwnerClassName { + return NSStringFromClass([GPGMailPreferences class]); +} + ++ (NSString *)preferencesPanelName { + return GMLocalizedString(@"PGP_PREFERENCES"); +} + ++ (id)backEndFromObject:(id)object { + id backEnd = nil; + if([object isKindOfClass:[GPGMailBundle resolveMailClassFromName:@"HeadersEditor"]]) { + if([GPGMailBundle isElCapitan]) + backEnd = [[object composeViewController] backEnd]; + else + backEnd = [[object valueForKey:@"_documentEditor"] backEnd]; + } + else if([object isKindOfClass:[GMSecurityControl class]]) { + if([GPGMailBundle isElCapitan]) + backEnd = [[object composeViewController] backEnd]; + else + backEnd = [[object valueForKey:@"_documentEditor"] backEnd]; + } + + //NSAssert(backEnd != nil, @"Couldn't find a way to access the ComposeBackEnd"); + + return backEnd; +} + +@end + diff --git a/Source/GPGMailPreferences.h b/Source/GPGMailPreferences.h new file mode 100644 index 00000000..a8d1a1ff --- /dev/null +++ b/Source/GPGMailPreferences.h @@ -0,0 +1,66 @@ +/* GPGMailPreferences.h created by dave on Thu 29-Jun-2000 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import +#import "NSPreferencesModule.h" + +@class GPGMailBundle, GPGOptions, GMSpecialBox; + +@interface GPGMailPreferences : NSPreferencesModule {} + +- (IBAction)openSupport:(id)sender; +- (IBAction)openDonate:(id)sender; +- (IBAction)openKnowledgeBase:(id)sender; + +- (IBAction)openGPGStatusHelp:(id)sender; + + + +@property (weak, readonly) NSString *copyright, *versionDescription, *gpgStatusToolTip, *gpgStatusTitle; +@property (weak, readonly) NSAttributedString *credits, *websiteLink, *buildNumberDescription; +@property (weak, readonly) GPGMailBundle *bundle; +@property (weak, readonly) NSImage *gpgStatusImage; +@property (weak, readonly) GPGOptions *options; +@property BOOL encryptDrafts; + +@end + + +@interface NSButton_LinkCursor : NSButton +@end + +@interface GMSpecialBox : NSBox { + NSMapTable *viewPositions; + BOOL working; + BOOL positionsFilled; + BOOL displayed; + WebView *webView; +} +@end diff --git a/Source/GPGMailPreferences.m b/Source/GPGMailPreferences.m new file mode 100644 index 00000000..f9239e64 --- /dev/null +++ b/Source/GPGMailPreferences.m @@ -0,0 +1,364 @@ +/* GPGMailPreferences.m created by dave on Thu 29-Jun-2000 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "GPGMailPreferences.h" +#import "GPGMailBundle.h" +#import "MailAccount.h" +#import "ExchangeAccount.h" +#import + + +#define localized(key) [GPGMailBundle localizedStringForKey:key] + +NSString *SUEnableAutomaticChecksKey = @"SUEnableAutomaticChecks"; +NSString *SUScheduledCheckIntervalKey = @"SUScheduledCheckInterval"; + + +@implementation GPGMailPreferences + +- (GPGMailBundle *)bundle { + return [GPGMailBundle sharedInstance]; +} + + +- (NSString *)copyright { + return [[GPGMailBundle bundle] infoDictionary][@"NSHumanReadableCopyright"]; +} + +- (NSAttributedString *)credits { + NSBundle *mailBundle = [GPGMailBundle bundle]; + NSAttributedString *credits = [[NSAttributedString alloc] initWithURL:[mailBundle URLForResource:@"Credits" withExtension:@"rtf"] documentAttributes:nil]; + + return credits; +} + +- (NSAttributedString *)websiteLink { + NSMutableParagraphStyle *pStyle = [[NSMutableParagraphStyle alloc] init]; + + [pStyle setAlignment:NSRightTextAlignment]; + + NSDictionary *attributes = @{NSParagraphStyleAttributeName: pStyle, + NSLinkAttributeName: @"http://www.gpgtools.org/", + NSForegroundColorAttributeName: [NSColor blueColor], + NSFontAttributeName: [NSFont fontWithName:@"Lucida Grande" size:9], + NSUnderlineStyleAttributeName: @1}; + + return [[NSAttributedString alloc] initWithString:@"http://www.gpgtools.org" attributes:attributes]; +} + + +- (NSString *)versionDescription { + return [NSString stringWithFormat:GMLocalizedString(@"VERSION: %@"), [self.bundle version]]; +} + +- (NSAttributedString *)buildNumberDescription { + NSString *string = [NSString stringWithFormat:@"Build: %@", [GPGMailBundle bundleVersion]]; + NSDictionary *attributes = @{NSForegroundColorAttributeName: [NSColor grayColor], NSFontAttributeName: [NSFont systemFontOfSize:11]}; + + return [[NSAttributedString alloc] initWithString:string attributes:attributes]; +} + + +- (NSImage *)imageForPreferenceNamed:(NSString *)aName { + return [NSImage imageNamed:@"GPGMail"]; +} + + + +- (IBAction)openSupport:(id)sender { + // Find gpgPrefLauncher inside of GPGPreferences.prefPane. + NSString *path = @"/Library/PreferencePanes/GPGPreferences.prefPane/Contents/Resources/gpgPrefLauncher"; + if (![[NSFileManager defaultManager] fileExistsAtPath:path]) { + struct passwd *pw = getpwuid(getuid()); + if (pw) { + NSString *home = [NSString stringWithUTF8String:pw->pw_dir]; + path = [home stringByAppendingPathComponent:path]; + } + if (![[NSFileManager defaultManager] fileExistsAtPath:path]) { + path = nil; + } + } + + BOOL success = NO; + if (path) { + success = [GPGTask launchGeneralTask:path withArguments:@[@"report"] wait:YES]; + } + + if (!success) { + // Alternative if GPGPreferences could not be launched. + [[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"https://gpgtools.tenderapp.com/"]]; + } +} +- (IBAction)openDonate:(id)sender { + [[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"https://gpgtools.org/donate"]]; +} +- (IBAction)openKnowledgeBase:(id)sender { + [[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"https://gpgtools.tenderapp.com/kb"]]; +} + + + +- (IBAction)openGPGStatusHelp:(id)sender { + [[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"https://gpgtools.tenderapp.com/kb/how-to/gpg-status"]]; +} + + +- (void)willBeDisplayed { + [[GPGMailBundle sharedInstance] checkGPG]; +} + +- (NSImage *)gpgStatusImage { + switch ([[GPGMailBundle sharedInstance] gpgStatus]) { + case GPGErrorNotFound: + return [NSImage imageNamed:NSImageNameStatusUnavailable]; + case GPGErrorNoError: + return [NSImage imageNamed:NSImageNameStatusAvailable]; + default: + return [NSImage imageNamed:NSImageNameStatusPartiallyAvailable]; + } +} +- (NSString *)gpgStatusToolTip { + switch ([[GPGMailBundle sharedInstance] gpgStatus]) { + case GPGErrorNotFound: + return localized(@"GPG_STATUS_NOT_FOUND_TOOLTIP"); + case GPGErrorNoError: + return nil; + default: + return localized(@"GPG_STATUS_OTHER_ERROR_TOOLTIP"); + } +} + +- (NSString *)gpgStatusTitle { + NSString *statusTitle = nil; + switch ([[GPGMailBundle sharedInstance] gpgStatus]) { + case GPGErrorNotFound: + statusTitle = localized(@"GPG_STATUS_NOT_FOUND_TITLE"); + break; + case GPGErrorNoError: + statusTitle = localized(@"GPG_STATUS_NO_ERROR_TITLE"); + break; + default: + statusTitle = localized(@"GPG_STATUS_OTHER_ERROR_TITLE"); + } + return statusTitle; +} + ++ (NSSet*)keyPathsForValuesAffectingGpgStatusImage { + return [NSSet setWithObject:@"bundle.gpgStatus"]; +} ++ (NSSet*)keyPathsForValuesAffectingGpgStatusToolTip { + return [NSSet setWithObject:@"bundle.gpgStatus"]; +} ++ (NSSet*)keyPathsForValuesAffectingGpgStatusTitle { + return [NSSet setWithObject:@"bundle.gpgStatus"]; +} + +- (GPGOptions *)options { + return [GPGOptions sharedOptions]; +} + +- (BOOL)isResizable { + return NO; +} + + +- (BOOL)validateEncryptDrafts:(NSNumber **)value error:(NSError **)error { + if ([*value boolValue] == NO) { + NSArray *accounts = (NSArray *)[GM_MAIL_CLASS(@"MailAccount") allMailAccounts]; + for (id account in accounts) { + if ([account respondsToSelector:@selector(storeDraftsOnServer)] && [account storeDraftsOnServer]) { + + NSWindow *window = [[NSPreferences sharedPreferences] valueForKey:@"_preferencesPanel"]; + + if (floor(NSAppKitVersionNumber) >= NSAppKitVersionNumber10_9) { + NSAlert *unencryptedReplyAlert = [NSAlert new]; + unencryptedReplyAlert.messageText = localized(@"DISABLE_ENCRYPT_DRAFTS_TITLE"); + unencryptedReplyAlert.informativeText = localized(@"DISABLE_ENCRYPT_DRAFTS_MESSAGE"); + [unencryptedReplyAlert addButtonWithTitle:localized(@"DISABLE_ENCRYPT_DRAFTS_CANCEL")]; + [unencryptedReplyAlert addButtonWithTitle:localized(@"DISABLE_ENCRYPT_DRAFTS_CONFIRM")]; + unencryptedReplyAlert.icon = [NSImage imageNamed:@"GPGMail"]; + + [unencryptedReplyAlert beginSheetModalForWindow:window completionHandler:^(NSModalResponse returnCode) { + [NSApp stopModalWithCode:returnCode]; + }]; + } else { + NSBeginAlertSheet(localized(@"DISABLE_ENCRYPT_DRAFTS_TITLE"), + localized(@"DISABLE_ENCRYPT_DRAFTS_CANCEL"), + localized(@"DISABLE_ENCRYPT_DRAFTS_CONFIRM"), + nil, + window, + self, + @selector(disableEncryptDraftSheetDidEnd:returnCode:contextInfo:), + nil, + nil, + @"%@", localized(@"DISABLE_ENCRYPT_DRAFTS_MESSAGE")); + } + + if ([NSApp runModalForWindow:window] != NSAlertSecondButtonReturn) { + *value = @(YES); + } + break; + } + } + } + return YES; +} +- (void)disableEncryptDraftSheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo { + returnCode = returnCode == NSAlertAlternateReturn ? NSAlertSecondButtonReturn : NSAlertFirstButtonReturn; + [NSApp stopModalWithCode:returnCode]; +} + + +- (BOOL)encryptDrafts { + return [self.options boolForKey:@"OptionallyEncryptDrafts"]; +} +- (void)setEncryptDrafts:(BOOL)value { + [self.options setBool:value forKey:@"OptionallyEncryptDrafts"]; +} + + +@end + + +@implementation NSButton_LinkCursor +- (void)resetCursorRects { + [self addCursorRect:[self bounds] cursor:[NSCursor pointingHandCursor]]; +} +@end + +@implementation GMSpecialBox +- (void)showSpecial { + return; +// if (displayed || working) return; +// working = YES; +// +// if (!viewPositions) { +// viewPositions = [[NSMapTable alloc] initWithKeyOptions:NSMapTableZeroingWeakMemory valueOptions:NSMapTableStrongMemory capacity:10]; +// } +// +// NSSize size = self.bounds.size; +// srandom((unsigned int)time(NULL)); +// +// webView = [[WebView alloc] initWithFrame:NSMakeRect(0, 0, size.width, size.height)]; +// webView.autoresizingMask = NSViewWidthSizable | NSViewHeightSizable; +// webView.drawsBackground = NO; +// webView.UIDelegate = self; +// webView.editingDelegate = self; +// +// +// [NSAnimationContext beginGrouping]; +// [[NSAnimationContext currentContext] setDuration:2.0f]; +// [NSAnimationContext currentContext].completionHandler = ^{ +// [self addSubview:webView]; +// +// [[webView mainFrame] loadRequest:[NSURLRequest requestWithURL:[[GPGMailBundle bundle] URLForResource:@"Special" withExtension:@"html"]]]; +// displayed = YES; +// working = NO; +// }; +// +// for (NSView *view in [self.contentView subviews]) { +// NSRect frame = view.frame; +// +// if (!positionsFilled) { +// [viewPositions setObject:[NSValue valueWithRect:frame] forKey:view]; +// } +// +// long angle = (random() % 360); +// +// double x = (size.width + frame.size.width) / 2 * sin(angle * M_PI / 180) * 1.5; +// double y = (size.height + frame.size.height) / 2 * cos(angle * M_PI / 180) * 1.5; +// +// x += (size.width - frame.size.width) / 2; +// y += (size.height - frame.size.height) / 2; +// +// frame.origin.x = x; +// frame.origin.y = y; +// +// [(NSView *)[view animator] setFrame:frame]; +// } +// positionsFilled = YES; +// [NSAnimationContext endGrouping]; +} +- (void)hideSpecial { + if (!displayed || working) return; + working = YES; + + for (NSView *view in viewPositions) { + [view setFrame:[[viewPositions objectForKey:view] rectValue]]; + } + [webView removeFromSuperview]; + + displayed = NO; + working = NO; +} +- (void)keyDown:(NSEvent *)event { + unsigned short keySequence[] = {126, 125, 47, 5, 35, 5, 17, 31, 31, 37, 1, USHRT_MAX}; + static int index = 0; + + if (!displayed) { + if (keySequence[index] == USHRT_MAX) { + [super keyDown:event]; + return; + } + if (event.keyCode != keySequence[index]) { + if (event.keyCode == keySequence[0]) { + index = 1; + } else { + [super keyDown:event]; + index = 0; + } + return; + } + if (keySequence[++index] != USHRT_MAX) return; + + index = 0; + [self showSpecial]; + } else { + [self hideSpecial]; + } +} +- (void)viewWillMoveToWindow:(NSWindow *)newWindow { + if (newWindow == nil) { + [self hideSpecial]; + } +} + +- (NSArray *)webView:(WebView *)sender contextMenuItemsForElement:(NSDictionary *)element defaultMenuItems:(NSArray *)defaultMenuItems { + return nil; +} +- (BOOL)webView:(WebView *)sender shouldChangeSelectedDOMRange:(DOMRange *)currentRange toDOMRange:(DOMRange *)proposedRange affinity:(NSSelectionAffinity)selectionAffinity stillSelecting:(BOOL)flag { + return NO; +} + + +- (BOOL)acceptsFirstResponder { + return YES; +} +@end + diff --git a/Source/GPGMail_Prefix.pch b/Source/GPGMail_Prefix.pch new file mode 100644 index 00000000..f4bcd7be --- /dev/null +++ b/Source/GPGMail_Prefix.pch @@ -0,0 +1,34 @@ +#ifdef __OBJC__ +#import +#import +#import +#endif + +extern void instrumentObjcMessageSends(BOOL enabled); +extern int GPGMailLoggingLevel; + +#define DebugLog(...) if (GPGMailLoggingLevel) {CCLog(__VA_ARGS__);} +#define GMLocalizedString(key) \ +[GPGMailBundle localizedStringForKey:(key)] + +/** + * Allows to annotate methods and calls with the correct class, + * but uses the cast_class to be actually used. + * This is necessary for Mavericks, where the mail class names have been + * prefixed. + */ +#define GM_CAST_CLASS(class, cast_class) cast_class +#define GM_MAIL_CLASS(class) [GPGMailBundle resolveMailClassFromName:class] + +/** + NSAppKitVersionNumber10_8 is not available in the 10.8 SDK, + but comes with the 10.9 SDK. As long as that is not released, + we'll define it if it's not available. +*/ +#ifndef NSAppKitVersionNumber10_8 +#define NSAppKitVersionNumber10_8 1187 +#endif +#ifndef NSAppKitVersionNumber10_9 +#define NSAppKitVersionNumber10_9 1265 +#endif + diff --git a/GPGMail/Source/GPGMessageEditorPoser.m b/Source/GPGMessageEditorPoser.m similarity index 86% rename from GPGMail/Source/GPGMessageEditorPoser.m rename to Source/GPGMessageEditorPoser.m index 02281576..98a88e90 100644 --- a/GPGMail/Source/GPGMessageEditorPoser.m +++ b/Source/GPGMessageEditorPoser.m @@ -1,7 +1,7 @@ /* GPGMessageEditorPoser.m created by dave on Sun 13-Apr-2004 */ /* - * Copyright (c) 2000-2008, Stphane Corthsy + * Copyright (c) 2000-2011, GPGMail Project Team * All rights reserved. * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: @@ -11,14 +11,14 @@ * * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * * Neither the name of Stphane Corthsy nor the names of GPGMail + * * Neither the name of GPGMail Project Team nor the names of GPGMail * contributors may be used to endorse or promote products * derived from this software without specific prior written permission. * - * THIS SOFTWARE IS PROVIDED BY STPHANE CORTHSY AND CONTRIBUTORS ``AS IS'' AND ANY + * THIS SOFTWARE IS PROVIDED BY THE GPGMAIL PROJECT TEAM ``AS IS'' AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL STPHANE CORTHSY AND CONTRIBUTORS BE LIABLE FOR ANY + * DISCLAIMED. IN NO EVENT SHALL THE GPGMAIL PROJECT TEAM BE LIABLE FOR ANY * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND diff --git a/Source/GPGSignatureView.h b/Source/GPGSignatureView.h new file mode 100644 index 00000000..42cb4495 --- /dev/null +++ b/Source/GPGSignatureView.h @@ -0,0 +1,18 @@ +#import +#import + +@interface GPGSignatureView : NSWindowController + +@property (nonatomic, strong) NSArray *signatures; + ++ (id)signatureView; + +- (NSInteger)runModal; +- (void)beginSheetModalForWindow:(NSWindow *)modalWindow completionHandler:(void (^)(NSInteger result))handler; +@end + + +@interface GPGSignatureCertImageTransformer : NSValueTransformer {} @end +@interface GPGFlippedView : NSView {} @end +@interface GPGFlippedClipView : NSClipView {} @end +@interface TopScrollView : NSScrollView {} @end diff --git a/Source/GPGSignatureView.m b/Source/GPGSignatureView.m new file mode 100644 index 00000000..f64e18b0 --- /dev/null +++ b/Source/GPGSignatureView.m @@ -0,0 +1,415 @@ +#import "GPGSignatureView.h" +#import "GPGMailBundle.h" + +#define localized(key) [[GPGMailBundle bundle] localizedStringForKey:(key) value:(key) table:@"SignatureView"] + +@interface GPGSignatureView () { + BOOL running; + NSIndexSet *signatureIndexes; + GPGSignature *_signature; + CGFloat fullHeight; + CGFloat listHeight; + CGFloat subkeyHeight; +} + +@property (nonatomic, weak) IBOutlet NSSplitView *splitView; +@property (nonatomic, weak) IBOutlet NSView *parentView; +@property (nonatomic, strong) IBOutlet NSView *subkeyView; // Must be strong, because it's removed from its superview. + +@property (nonatomic, strong) NSIndexSet *signatureIndexes; +@property (nonatomic, strong) GPGKey *gpgKey; +@property (nonatomic, strong) GPGKey *subkey; + + +@property (nonatomic, readonly) NSString *unlocalizedValidityKey; +@property (nonatomic, readonly) NSImage *validityImage; +@property (nonatomic, readonly) NSString *validityDescription; +@property (nonatomic, readonly) NSString *validityToolTip; +@property (nonatomic, readonly) NSString *keyID; +@property (nonatomic, readonly) NSImage *signatureImage; + +@end + + + +@implementation GPGSignatureView +GPGSignatureView *_sharedInstance; + + + +#pragma mark Properties + +- (NSString *)unlocalizedValidityKey { + NSString *text = nil; + + switch (_signature.status) { + case GPGErrorNoError: + if (_signature.trust > 1) { + text = @"VALIDITY_OK"; + } else { + text = @"VALIDITY_NO_TRUST"; + } + break; + case GPGErrorBadSignature: + text = @"VALIDITY_BAD_SIGNATURE"; + break; + case GPGErrorSignatureExpired: + text = @"VALIDITY_SIGNATURE_EXPIRED"; + break; + case GPGErrorKeyExpired: + text = @"VALIDITY_KEY_EXPIRED"; + break; + case GPGErrorCertificateRevoked: + text = @"VALIDITY_KEY_REVOKED"; + break; + case GPGErrorUnknownAlgorithm: + text = @"VALIDITY_UNKNOWN_ALGORITHM"; + break; + case GPGErrorNoPublicKey: + text = @"VALIDITY_NO_PUBLIC_KEY"; + break; + default: + text = @"VALIDITY_UNKNOWN_ERROR"; + break; + } + return text; +} + +- (NSImage *)validityImage { + if (![_signature isKindOfClass:[GPGSignature class]]) { + return nil; + } + if (_signature.status != 0 || _signature.trust <= 1) { + return [NSImage imageNamed:@"InvalidBadge"]; + } else { + return [NSImage imageNamed:@"ValidBadge"]; + } +} + +- (NSString *)validityDescription { + if (!_signature) return nil; + + NSString *text = [self unlocalizedValidityKey]; + if (text) { + return localized(text); + } else { + return @""; + } +} + +- (NSString *)validityToolTip { + if (!_signature) return nil; + + NSString *text = [self unlocalizedValidityKey]; + text = [text stringByAppendingString:@"_TOOLTIP"]; + if (text) { + return localized(text); + } else { + return @""; + } +} + +- (NSString *)keyID { + NSString *keyID = self.gpgKey.keyID; + if (!keyID) { + keyID = _signature.fingerprint; + } + return [keyID shortKeyID]; +} + +- (NSImage *)signatureImage { + if (![_signature isKindOfClass:[GPGSignature class]]) { + return nil; + } + if (_signature.status != 0 || _signature.trust <= 1) { + return [NSImage imageNamed:@"CertLargeNotTrusted"]; + } else { + return [NSImage imageNamed:@"CertLargeStd"]; + } +} + +- (NSIndexSet *)signatureIndexes { + return signatureIndexes; +} +- (void)setSignatureIndexes:(NSIndexSet *)value { + if (value != signatureIndexes) { + signatureIndexes = value; + NSUInteger index; + if ([value count] > 0 && (index = [value firstIndex]) < self.signatures.count) { + self.signature = self.signatures[index]; + } else { + self.signature = nil; + } + + } +} + +- (void)setSignature:(GPGSignature *)value { + if (value == _signature) { + return; + } + _signature = value; + + GPGKey *key = _signature.primaryKey; + GPGKey *subkey = _signature.key; + if ([key isEqual:subkey]) { + subkey = nil; + } + self.gpgKey = key; + self.subkey = subkey; + + if (subkey) { + // Set the width of self.subkeyView to the parents width. + [self.subkeyView setFrameSize:NSMakeSize(self.parentView.frame.size.width, self.subkeyView.frame.size.height)]; + + // Add the self.subkeyView. + [self.parentView addSubview:self.subkeyView]; + + // Calculate the required height for the parent. + CGFloat height = 0; + for (NSView *view in self.parentView.subviews) { + height += view.frame.size.height; + } + // Set the parent height. (The parentView is set to fill it's superview). + [self.parentView.superview setFrameSize:NSMakeSize(self.parentView.frame.size.width, height)]; + + // The self.subkeyView should be on the bottom. + [self.subkeyView setFrameOrigin:NSMakePoint(0, 0)]; + + [self resizeForSubkeyAnimate:YES]; + } else { + [self.subkeyView removeFromSuperview]; + CGFloat height = 0; + for (NSView *view in self.parentView.subviews) { + height += view.frame.size.height; + } + [self.parentView.superview setFrameSize:NSMakeSize(self.parentView.frame.size.width, height)]; + } + + +} + +- (id)valueForKeyPath:(NSString *)keyPath { + if ([keyPath hasPrefix:@"signature."]) { + if (_signature == nil) { + return nil; + } + keyPath = [keyPath substringFromIndex:10]; + if ([_signature respondsToSelector:NSSelectorFromString(keyPath)]) { + return [_signature valueForKey:keyPath]; + } + } + return [super valueForKeyPath:keyPath]; +} + + +#pragma mark Helper methods + +- (void)resizeForSubkeyAnimate:(BOOL)animate { + // The method increases the window size, if the user did not resized it and + // there is not enough space to show the subkey details. + + if (!self.subkey) { + return; + } + + CGFloat currentHeight = self.window.contentView.frame.size.height; + CGFloat defaultHeight; // The default height of the window. It's only required to detect, if the user changed the window size. + if (self.signatures.count == 1) { + defaultHeight = fullHeight - subkeyHeight - listHeight; + } else { + defaultHeight = fullHeight - subkeyHeight; + } + + if (defaultHeight == currentHeight) { + // The user did not change the window size manually. + + // Calulate the new window size. + NSRect frame = self.window.frame; + frame.size.height += self.subkeyView.frame.size.height; + // Change y so the window (sheet) stays attached to the main window. + frame.origin.y -= self.subkeyView.frame.size.height; + + if (animate) { + [self.window.animator setFrame:frame display:YES]; + } else { + [self.window setFrame:frame display:YES]; + } + } +} + +- (void)prepareForShow { + running = 1; + [self willChangeValueForKey:@"signatureDescriptions"]; + [self didChangeValueForKey:@"signatureDescriptions"]; + + if (self.signatures.count == 1) { + [self.splitView setPosition:-self.splitView.dividerThickness ofDividerAtIndex:0]; + + NSSize size = self.window.contentView.frame.size; + size.height = fullHeight - subkeyHeight - listHeight; + [self.window setContentSize:size]; + } else { + [self.splitView setPosition:listHeight ofDividerAtIndex:0]; + + NSSize size = self.window.contentView.frame.size; + size.height = fullHeight - subkeyHeight; + [self.window setContentSize:size]; + } + + [self resizeForSubkeyAnimate:NO]; +} + + +#pragma mark Public methods + +- (NSInteger)runModal { + if (!running) { + [self prepareForShow]; + [NSApp runModalForWindow:self.window]; + return NSOKButton; + } else { + return NSCancelButton; + } +} +- (void)beginSheetModalForWindow:(NSWindow *)modalWindow completionHandler:(void (^)(NSInteger result))handler { + if (!running) { + [self prepareForShow]; + [NSApp beginSheet:self.window modalForWindow:modalWindow modalDelegate:self didEndSelector:@selector(sheetDidEnd:returnCode:contextInfo:) contextInfo:(__bridge void *)(handler)]; + } else { + handler(NSCancelButton); + } +} + ++ (id)signatureView { + static dispatch_once_t pred; + static GPGSignatureView *_sharedInstance; + dispatch_once(&pred, ^{ + _sharedInstance = [[GPGSignatureView alloc] initWithWindowNibName:@"GPGSignatureView"]; + }); + return _sharedInstance; +} + + +#pragma mark Delegate and Actions + +- (IBAction)close:(__unused id)sender { + [self.window orderOut:self]; + [NSApp stopModal]; + [NSApp endSheet:self.window]; + running = 0; +} + +- (void)windowWillClose:(__unused NSNotification *)notification { + [NSApp stopModal]; + [NSApp endSheet:self.window]; + running = 0; +} + +- (BOOL)splitView:(__unused NSSplitView *)aSplitView shouldHideDividerAtIndex:(__unused NSInteger)dividerIndex { + return self.signatures.count == 1; +} +- (CGFloat)splitView:(__unused NSSplitView *)aSplitView constrainMinCoordinate:( __unused CGFloat)proposedMinimumPosition ofSubviewAt:(__unused NSInteger)dividerIndex { + if (self.signatures.count == 1) { + return -self.splitView.dividerThickness; + } else { + return 60; + } +} +- (CGFloat)splitView:(__unused NSSplitView *)aSplitView constrainMaxCoordinate:(CGFloat)proposedMaximumPosition ofSubviewAt:(__unused NSInteger)dividerIndex { + return proposedMaximumPosition - 90; +} +- (void)splitView:(NSSplitView *)aSplitView resizeSubviewsWithOldSize:(__unused NSSize)oldSize { +// if (self.signatures.count == 1) { +// return; +// } + + + NSArray *subviews = aSplitView.subviews; + NSView *view1 = subviews[0]; + NSView *view2 = subviews[1]; + NSSize splitViewSize = aSplitView.frame.size; + NSSize size1 = view1.frame.size; + NSRect frame2 = view2.frame; + CGFloat dividerThickness = self.signatures.count == 1 ? 0 : aSplitView.dividerThickness; + + size1.width = splitViewSize.width; + frame2.size.width = splitViewSize.width; + + frame2.size.height = splitViewSize.height - dividerThickness - size1.height; + if (frame2.size.height < 60) { + frame2.size.height = 60; + size1.height = splitViewSize.height - 60 - dividerThickness; + } + frame2.origin.y = splitViewSize.height - frame2.size.height; + + + if (self.signatures.count != 1) { + [view1 setFrameSize:size1]; + } + + [view2 setFrame:frame2]; +} + +- (void)sheetDidEnd:(__unused NSWindow *)sheet returnCode:(__unused NSInteger)returnCode contextInfo:(void *)contextInfo { + ((__bridge void (^)(NSInteger result))contextInfo)(NSOKButton); +} + + +#pragma mark Init + +- (instancetype)initWithWindowNibName:(NSNibName)windowNibName { + self = [super initWithWindowNibName:windowNibName]; + if (!self) { + return nil; + } + [self.window layoutIfNeeded]; + + fullHeight = self.window.contentView.frame.size.height; + listHeight = self.splitView.subviews[0].frame.size.height; + subkeyHeight = self.subkeyView.frame.size.height; + [self.subkeyView removeFromSuperview]; + + return self; +} + + +@end + + + + +@implementation GPGSignatureCertImageTransformer ++ (Class)transformedValueClass { return [NSImage class]; } ++ (BOOL)allowsReverseTransformation { return NO; } +- (id)transformedValue:(GPGSignature *)signature { + if (![signature isKindOfClass:[GPGSignature class]]) { + return nil; + } + if (signature.status != 0 || signature.trust <= 1) { + return [NSImage imageNamed:@"CertSmallStd_Invalid"]; + } else { + return [NSImage imageNamed:@"CertSmallStd"]; + } +} +@end + +@implementation GPGFlippedView +- (BOOL)isFlipped { + return YES; +} +@end + +@implementation TopScrollView +// When the view is resized, the content would normally stay at the bottom. +// The TopScrollView inverts this behavior, so the top of the contents stays visible. +- (void)setFrameSize:(NSSize)newSize { + NSClipView *clipView = [self contentView]; + NSRect bounds = [clipView bounds]; + [super setFrameSize:newSize]; + bounds.origin.y = bounds.origin.y - (bounds.size.height - [clipView bounds].size.height); + [clipView setBoundsOrigin:bounds.origin]; +} +@end + + diff --git a/Source/GPGTextAttachmentCell.h b/Source/GPGTextAttachmentCell.h new file mode 100644 index 00000000..286a987b --- /dev/null +++ b/Source/GPGTextAttachmentCell.h @@ -0,0 +1,44 @@ +/* GPGTextAttachmentCell.h created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + This class is used to create clickable text attachments, just like the default + S/MIME signed icon. + + On click, an action is performed. + */ +@interface GPGTextAttachmentCell : NSTextAttachmentCell + +/** + Returns no, so the text attachment cell doesn't track mouse movement + but only mouse clicks. + */ +- (BOOL)wantsToTrackMouse; + +@end diff --git a/Source/GPGTextAttachmentCell.m b/Source/GPGTextAttachmentCell.m new file mode 100644 index 00000000..b4921849 --- /dev/null +++ b/Source/GPGTextAttachmentCell.m @@ -0,0 +1,23 @@ +// +// GPGTextAttachmentCell.m +// GPGMail +// +// Created by Lukas Pitschl on 31.07.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import "GPGTextAttachmentCell.h" +#import "GPGMailBundle.h" + +@implementation GPGTextAttachmentCell + +- (BOOL)wantsToTrackMouse { + // Apparently, Mavericks wants YES here. Mountain Lion and older wants NO. + // Well... whatever. + if([GPGMailBundle isMavericks]) + return YES; + else + return NO; +} + +@end diff --git a/Source/GPGTextDocumentViewerPoser.h b/Source/GPGTextDocumentViewerPoser.h new file mode 100644 index 00000000..42bedbdd --- /dev/null +++ b/Source/GPGTextDocumentViewerPoser.h @@ -0,0 +1,31 @@ +// +// GPGTextDocumentViewerPoser.h +// GPGMail +// +// Created by GPGMail Project Team on Mon Sep 16 2002. +// + +/* + * Copyright GPGMail Project Team (gpgtools-devel@lists.gpgtools.org), 2000-2011 + * (see LICENSE.txt file for license information) + */ + +#import + + +@interface GPGTextDocumentViewerPoser : TextDocumentViewer +{ + +} + +- (void)gpgShowPGPSignatureBanner; +- (void)gpgShowPGPEncryptedBanner; +- (void)gpgHideBanner; + +- (BOOL)gpgValidateAction:(SEL)anAction; + +// Actions connected to menus +- (IBAction)gpgDecrypt:(id)sender; +- (IBAction)gpgAuthenticate:(id)sender; + +@end diff --git a/Source/GPGTextDocumentViewerPoser.m b/Source/GPGTextDocumentViewerPoser.m new file mode 100644 index 00000000..5aa9d60f --- /dev/null +++ b/Source/GPGTextDocumentViewerPoser.m @@ -0,0 +1,529 @@ +// +// GPGTextDocumentViewerPoser.m +// GPGMail +// +// Created by GPGMail Project Team on Mon Sep 16 2002. +// + +/* + * Copyright GPGMail Project Team (gpgtools-devel@lists.gpgtools.org), 2000-2011 + * (see LICENSE.txt file for license information) + */ + +#import "GPGTextDocumentViewerPoser.h" +#import "GPGMessageViewerAccessoryViewOwner.h" +#import "GPGMailBundle.h" +#import +#import +#import + + +@interface NSObject (GPGTextDocumentViewerPoser) +- (void)gpgSetClass:(Class)class; +@end + +@implementation NSObject (GPGTextDocumentViewerPoser) + +- (void)gpgSetClass:(Class)class { + isa = class; +} + +@end + +@interface GPGTextDocumentViewerPoser (Private) +- (BOOL)_gpgBannerIsShown; +- (GPGMessageViewerAccessoryViewOwner *)_gpgMessageViewerAccessoryViewOwner; +@end + +@implementation GPGTextDocumentViewerPoser + +static NSMapTable *_extraIVars = NULL; +static NSLock *_extraIVarsLock = nil; + ++ (void)load { + NSEnumerator *anEnum = [[MessageViewer allMessageViewers] objectEnumerator]; + MessageViewer *aViewer; + + _extraIVars = NSCreateMapTableWithZone(NSObjectMapKeyCallBacks, NSObjectMapValueCallBacks, 3, [self zone]); + _extraIVarsLock = [[NSLock alloc] init]; + [GPGTextDocumentViewerPoser poseAsClass:[TextDocumentViewer class]]; + while (aViewer = [anEnum nextObject]) + [[aViewer gpgTextViewer:nil] gpgSetClass:[GPGTextDocumentViewerPoser class]]; +} + +- (NSMutableDictionary *)gpgExtraIVars { + NSMutableDictionary *aDict; + NSValue *aValue = [NSValue valueWithNonretainedObject:self]; + + // We cannot use self as key, because in -dealloc this method is called when invoking super's + // and thus puts self back in mapTable; by using the NSValue and changing the dealloc, + // it corrects the problem. + + [_extraIVarsLock lock]; + aDict = NSMapGet(_extraIVars, aValue); + if (aDict == nil) { + aDict = [NSMutableDictionary dictionary]; + NSMapInsert(_extraIVars, aValue, aDict); + } + [_extraIVarsLock unlock]; + + return aDict; +} + +- (BOOL)gpgMessageWasInFactSigned { + return [[[self gpgExtraIVars] objectForKey:@"messageWasInFactSigned"] boolValue]; +} + +- (void)gpgSetMessageWasInFactSigned:(BOOL)flag { + [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"messageWasInFactSigned"]; +} + +- (BOOL)gpgMessageHasBeenDecrypted { + return [[[self gpgExtraIVars] objectForKey:@"messageHasBeenDecrypted"] boolValue]; +} + +- (void)gpgSetMessageHasBeenDecrypted:(BOOL)flag { + [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"messageHasBeenDecrypted"]; +} + +- (BOOL)gpgMessageReadStatusHasChanged { + return [[[self gpgExtraIVars] objectForKey:@"messageReadStatusHasChanged"] boolValue]; +} + +- (void)gpgSetMessageReadStatusHasChanged:(BOOL)flag { + [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"messageReadStatusHasChanged"]; +} + +/* + * - (void)_displayHTMLDocument:fp12 + * { + * NSLog(@"WILL _displayHTMLDocument:%@", fp12); + * [super _displayHTMLDocument:fp12]; + * NSLog(@"DID _displayHTMLDocument:"); + * } + * + * - (void)displayAttributedString:fp12 + * { + * NSLog(@"WILL displayAttributedString:%@", fp12); + * [super displayAttributedString:fp12]; + * NSLog(@"DID displayAttributedString:"); + * } + */ + +- (void)gpgMessageStoreMessageFlagsChanged:(NSNotification *)notification { + if ([[[[notification userInfo] objectForKey:@"flags"] objectForKey:@"MessageIsRead"] isEqualToString:@"YES"]) { + NSEnumerator *anEnum = [[[notification userInfo] objectForKey:@"messages"] objectEnumerator]; + Message *aMessage; + Message *myMessage = [self message]; + + while (aMessage = [anEnum nextObject]) { + if (aMessage == myMessage) { + [self gpgSetMessageReadStatusHasChanged:YES]; + break; + } + } + } +} + +- (void)_updateDisplay { + GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; + Message *aMessage = [self message]; + BOOL shouldAuthenticate = NO; + BOOL shouldDecrypt = NO; + BOOL compareFlags = ([aMessage messageStore] != nil && ([mailBundle decryptsOnlyUnreadMessagesAutomatically] || [mailBundle authenticatesOnlyUnreadMessagesAutomatically])); + BOOL readStatusChanged = NO; + +// NSView *originalCertifBanner = [certificateView retain]; + + if (compareFlags) { + [self gpgSetMessageReadStatusHasChanged:NO]; + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(gpgMessageStoreMessageFlagsChanged:) name:@"MessageStoreMessageFlagsChanged" object:[aMessage messageStore]]; + } + +// [super _updateDisplay]; + if (aMessage == nil) { + if ([self _gpgBannerIsShown]) { + [self gpgHideBanner]; +// [originalCertifBanner release]; originalCertifBanner = nil; + } + } else if ([aMessage gpgIsEncrypted]) { + [self gpgShowPGPEncryptedBanner]; + if ([mailBundle decryptsMessagesAutomatically]) { + shouldDecrypt = YES; + } + } else if ([aMessage gpgHasSignature]) { + if ([mailBundle authenticatesMessagesAutomatically]) { + [self gpgShowPGPSignatureBanner]; + shouldAuthenticate = YES; + } else { + [self gpgShowPGPSignatureBanner]; + } + } else if ([self gpgMessageWasInFactSigned]) { + [self gpgShowPGPSignatureBanner]; + [self gpgSetMessageWasInFactSigned:NO]; + [self gpgSetMessageHasBeenDecrypted:NO]; + } else if ([self gpgMessageHasBeenDecrypted]) { + [self gpgShowPGPEncryptedBanner]; + [self gpgSetMessageHasBeenDecrypted:NO]; + if ([mailBundle authenticatesMessagesAutomatically]) { + shouldAuthenticate = YES; + } + } else if ([self _gpgBannerIsShown]) { + [self gpgHideBanner]; +// [originalCertifBanner release]; originalCertifBanner = nil; + } + + [super _updateDisplay]; + + if (compareFlags) { + readStatusChanged = [self gpgMessageReadStatusHasChanged]; + [[NSNotificationCenter defaultCenter] removeObserver:self name:@"MessageStoreMessageFlagsChanged" object:[aMessage messageStore]]; + } + + if (shouldAuthenticate && (![mailBundle authenticatesOnlyUnreadMessagesAutomatically] || readStatusChanged)) { + [self performSelector:@selector(gpgAuthenticate:) withObject:nil afterDelay:0.]; + } else if (shouldDecrypt && (![mailBundle decryptsOnlyUnreadMessagesAutomatically] || readStatusChanged)) { + [self performSelector:@selector(gpgDecrypt:) withObject:nil afterDelay:0.]; + } +// if(originalCertifBanner){ +// certificateView = originalCertifBanner; +// // [self setCertificateView:originalCertifBanner]; // Has side-effects: resets other attributes +// [originalCertifBanner release]; +// } +} + +- (void)dealloc { + [super dealloc]; // Will call -gpgExtraIVars! + [_extraIVarsLock lock]; + NSMapRemove(_extraIVars, [NSValue valueWithNonretainedObject:self]); + [_extraIVarsLock unlock]; +} + +- (void)gpgForwardAction:(SEL)action from:(id)sender { + id target = [self _gpgMessageViewerAccessoryViewOwner]; + + if (target && [target respondsToSelector:action]) { + [target performSelector:action withObject:sender]; + } +} + +- (IBAction)gpgDecrypt:(id)sender { + [self gpgForwardAction:_cmd from:sender]; +} + +- (IBAction)gpgAuthenticate:(id)sender { + [self gpgForwardAction:_cmd from:sender]; +} + +- (BOOL)gpgValidateAction:(SEL)anAction { + if (anAction == @selector(gpgDecrypt:) || anAction == @selector(gpgAuthenticate:)) { + id target = [self _gpgMessageViewerAccessoryViewOwner]; + + if (target && [target respondsToSelector:anAction]) { + return [target gpgValidateAction:anAction]; + } + } + + return NO; +} + +- (BOOL)validateMenuItem:(id )menuItem { + SEL anAction = [menuItem action]; + + if (anAction == @selector(gpgDecrypt:) || anAction == @selector(gpgAuthenticate:)) { + return [self gpgValidateAction:anAction]; + } + + return [super validateMenuItem:menuItem]; +} +/* + * - (void)viewSource:fp12 + * { + * NSLog(@"WILL viewSource:%@", fp12); + * [super viewSource:fp12]; + * NSLog(@"DID viewSource:"); + * } + * + * - (void)reloadCurrentMessage + * { + * NSLog(@"WILL reloadCurrentMessage"); + * [super reloadCurrentMessage]; + * NSLog(@"DID reloadCurrentMessage"); + * } + */ +#ifdef PANTHER +- (void)setMessage:fp8 headerOrder:fp12 { + [self gpgSetMessageWasInFactSigned:NO]; + [self gpgSetMessageHasBeenDecrypted:NO]; + [super setMessage:fp8 headerOrder:fp12]; +} + +- (void)_setMessage:fp8 headerOrder:fp12 { + [self gpgSetMessageWasInFactSigned:NO]; + [self gpgSetMessageHasBeenDecrypted:NO]; + [super _setMessage:fp8 headerOrder:fp12]; +} +#else +- (void)setMessage:fp12 { +// NSLog(@"WILL setMessage:%@", fp12); + [self gpgSetMessageWasInFactSigned:NO]; + [self gpgSetMessageHasBeenDecrypted:NO]; + [super setMessage:fp12]; +// NSLog(@"DID setMessage:"); +} +/* + * - (void)_setMessage:fp12 + * { + * // NSLog(@"WILL _setMessage:%@", fp12); + * [super _setMessage:fp12]; + * // NSLog(@"DID _setMessage:"); + * } + */ +#endif +- (void)_gpgAddAccessoryView:(NSView *)accessoryView { + NSRect aRect; + NSRect originalRect; + float aHeight; + +#ifdef PANTHER +#if 0 + // Works only for MIME signed, because Mail thinks it's (S/MIME) signed + certificateView = accessoryView; +#else + NSView *resizedView = [[contentContainerView subviews] objectAtIndex:0]; + NSView *currentBannerView = nil; + + if ([[contentContainerView subviews] count] > 1) { + currentBannerView = [[contentContainerView subviews] objectAtIndex:1]; + } + originalRect = aRect = [resizedView frame]; + aHeight = NSHeight([accessoryView frame]); + aRect.origin.y = NSMaxY(aRect) - aHeight; + if (currentBannerView) { + aRect.origin.y += NSHeight([currentBannerView frame]); + [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) - aHeight)]; + [currentBannerView setNeedsDisplay:YES]; + } + originalRect.size.height -= aHeight; + aRect.size.height = aHeight; + [accessoryView setFrame:aRect]; + [[resizedView superview] addSubview:accessoryView]; + [resizedView setFrame:originalRect]; +#endif /* if 0 */ +#else + NSView *resizedView = _currentView; // [[self textView] enclosingScrollView];//(NSView *)messageScroll; + NSView *currentBannerView = junkMailView; + + originalRect = aRect = [resizedView frame]; + aHeight = NSHeight([accessoryView frame]); + aRect.origin.y = NSMaxY(aRect) - aHeight; + if ([currentBannerView window] != nil) { + aRect.origin.y += NSHeight([currentBannerView frame]); + [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) - aHeight)]; + [currentBannerView setNeedsDisplay:YES]; + } + originalRect.size.height -= aHeight; + aRect.size.height = aHeight; + [accessoryView setFrame:aRect]; + [[resizedView superview] addSubview:accessoryView]; + [resizedView setFrame:originalRect]; +#endif /* ifdef PANTHER */ +} + +- (void)_gpgRemoveAccessoryView:(NSView *)accessoryView redisplay:(BOOL)flag { + NSRect originalRect; + +#ifdef PANTHER +#if 0 + // Works only for MIME signed, because Mail thinks it's (S/MIME) signed +#else + NSView *resizedView = [[contentContainerView subviews] objectAtIndex:0]; + NSView *currentBannerView = nil; + + NSAssert([accessoryView ancestorSharedWithView:resizedView] != nil, @"Trying to remove unattached view!"); + if ([[contentContainerView subviews] count] > 2) { + currentBannerView = [[contentContainerView subviews] objectAtIndex:2]; + if (currentBannerView == accessoryView) { + currentBannerView = [[contentContainerView subviews] objectAtIndex:1]; + } + } + originalRect = [resizedView frame]; + originalRect.size.height += NSHeight([accessoryView frame]); + if (flag) { + [accessoryView removeFromSuperview]; + } else { + [accessoryView removeFromSuperviewWithoutNeedingDisplay]; + } + if (currentBannerView) { + [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) + NSHeight([accessoryView frame]))]; + [currentBannerView setNeedsDisplay:YES]; + } + [resizedView setFrame:originalRect]; +#endif /* if 0 */ +#else + NSView *resizedView = _currentView; // [[self textView] enclosingScrollView];//(NSView *)messageScroll; + NSView *currentBannerView = junkMailView; + + NSAssert([accessoryView ancestorSharedWithView:resizedView] != nil, @"Trying to remove unattached view!"); + originalRect = [resizedView frame]; + originalRect.size.height += NSHeight([accessoryView frame]); + if (flag) { + [accessoryView removeFromSuperview]; + } else { + [accessoryView removeFromSuperviewWithoutNeedingDisplay]; + } + if ([currentBannerView window] != nil) { + [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) + NSHeight([accessoryView frame]))]; + [currentBannerView setNeedsDisplay:YES]; + } + [resizedView setFrame:originalRect]; +#endif /* ifdef PANTHER */ +} +/* + * - (GPGMessageViewerAccessoryViewOwner *) _gpgExistingMessageViewerAccessoryViewOwner + * { + * if(_accessoryViewOwnerPerViewer != NULL) + * return NSMapGet(_accessoryViewOwnerPerViewer, self); + * else + * return nil; + * } + */ +- (GPGMessageViewerAccessoryViewOwner *)_gpgMessageViewerAccessoryViewOwner { + // WARNING: this limits us to 1 accessoryView per viewer + GPGMessageViewerAccessoryViewOwner *accessoryViewOwner = [[self gpgExtraIVars] objectForKey:@"messageViewerAccessoryViewOwner"]; + + if (accessoryViewOwner == nil) { + accessoryViewOwner = [[GPGMessageViewerAccessoryViewOwner alloc] initWithDelegate:self]; + [[self gpgExtraIVars] setObject:accessoryViewOwner forKey:@"messageViewerAccessoryViewOwner"]; + [accessoryViewOwner release]; + } + + return accessoryViewOwner; +} + +- (BOOL)_gpgBannerIsShown { + return [[[self _gpgMessageViewerAccessoryViewOwner] view] superview] != nil; +} + +- (void)_gpgShowBannerWithType:(int)bannerType { + GPGMessageViewerAccessoryViewOwner *anOwner = nil; + + if (![self _gpgBannerIsShown]) { + anOwner = [self _gpgMessageViewerAccessoryViewOwner]; + [anOwner setBannerType:bannerType]; + [self _gpgAddAccessoryView:[anOwner view]]; + } else { + anOwner = [self _gpgMessageViewerAccessoryViewOwner]; + if ([anOwner bannerType] != bannerType) { + [self _gpgRemoveAccessoryView:[anOwner view] redisplay:NO]; + [anOwner setBannerType:bannerType]; + [self _gpgAddAccessoryView:[anOwner view]]; + } + } +// [anOwner setMessage:[self message]]; +} + +- (void)gpgShowPGPSignatureBanner { + // gpgMessageWasInFactSigned: special case where message has been encrypted and signed in one operation + [self _gpgShowBannerWithType:([self gpgMessageWasInFactSigned] ? gpgDecryptedSignatureInfoBanner:gpgAuthenticationBanner)]; +} + +- (void)gpgShowPGPEncryptedBanner { + // gpgMessageHasBeenDecrypted: special case where message has been encrypted + [self _gpgShowBannerWithType:([self gpgMessageHasBeenDecrypted] ? gpgDecryptedInfoBanner:gpgDecryptionBanner)]; +} + +- (void)gpgHideBanner { + if ([self _gpgBannerIsShown]) { + GPGMessageViewerAccessoryViewOwner *anOwner = [self _gpgMessageViewerAccessoryViewOwner]; + + [self _gpgRemoveAccessoryView:[anOwner view] redisplay:YES]; +// [anOwner setMessage:nil]; + } +} + +- (void)gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner replaceViewWithView:(NSView *)view { + NSAssert([self _gpgBannerIsShown], @"### GPGMail: banner should already be visible"); + [self _gpgRemoveAccessoryView:[owner view] redisplay:NO]; + [self _gpgAddAccessoryView:view]; +} + +- (void)gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner showStatusMessage:(NSString *)message { + if ([[[[self textView] window] delegate] respondsToSelector:@selector(showStatusMessage:)]) { + // Delegate can be a MessageViewer, or a MessageEditor (for standalone viewers!) + [[[[self textView] window] delegate] showStatusMessage:message]; + } +} + +- (void)gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner displayMessage:(Message *)message isSigned:(BOOL)isSigned { +#ifdef PANTHER +#if 1 + // Works, but headers are not up-to-date + // [inViewer clearCache]; +// ///////////////////// [self setMessage:message headerOrder:[[self viewingState] headerOrder]]; // If this line was commented out, no header would appear at all! +// [inViewer _setMessage:decodedMessage headerOrder:[[inViewer viewingState] headerOrder]]; +// [inViewer _fetchContentsForMessage:decodedMessage fromStore:[decodedMessage messageStore] withViewingState:[inViewer viewingState]]; +// [inViewer viewerPreferencesChanged:nil]; +// [inViewer _updateDisplay]; + + MessageViewingState *viewingState = [NSClassFromString (@"MessageHeaderDisplay") copyViewingState:[self viewingState /*ForMessage:[self message]*/]]; + [viewingState setHeaderAttributedString:[[message headers] attributedStringShowingHeaderDetailLevel:[self headerDetailLevel]]]; + NSLog(@"HeaderAttributedString = %@", [viewingState headerAttributedString]); + if (/*[message numberOfAttachments]*/ [[[message messageBody] attachments] count] == 0) { // numberOfAttachments not up-to-date! Wrapper's + [viewingState setAttachmentsDescription:nil]; + } else { + [viewingState setAttachmentsDescription:[NSClassFromString (@"MessageHeaderDisplay") formattedAttachmentsSizeForMessage:message]]; + } + NSLog(@"AttachmentsDescription = %@", [viewingState attachmentsDescription]); + [viewingState setValue:[message messageBody] forKey:@"mimeBody"]; + [self cacheViewingState:viewingState forMessage:message]; + [self setMessage:message headerOrder:[viewingState headerOrder]]; +#else +// id viewingState = [NSClassFromString(@"MessageHeaderDisplay") copyViewingState:[inViewer viewingState]]; +// id viewingState = [[inViewer viewingState] retain]; + +// [inViewer->headerDisplay displayAttributedString:[MessageHeaderDisplay copyHeadersForMessage:decodedMessage viewingState:viewingState]]; +// [inViewer setMessage:decodedMessage headerOrder:[viewingState headerOrder]]; +// inViewer->_message = [decodedMessage retain]; +// inViewer->textDisplay->messageBody = [decodedMessage messageBody]; +// inViewer->textDisplay->needsSetUp = YES; + [inViewer->headerDisplay setUp]; +// [inViewer->headerDisplay display:[[decodedMessage headers] attributedStringShowingHeaderDetailLevel:[inViewer headerDetailLevel]]]; + [inViewer->headerDisplay displayAttributedString:[[decodedMessage headers] attributedStringShowingHeaderDetailLevel:[inViewer headerDetailLevel]]]; +// [inViewer->textDisplay displayAttributedString:[decodedMessage attributedString]]; +// [MessageHeaderDisplay setUpEncryptionAndSignatureImageForMessage:decodedMessage viewingState:viewingState]; +// [viewingState release]; +// inViewer->_viewingState = viewingState; +// [inViewer setMostRecentHeaderOrder:[viewingState headerOrder]]; +// [viewingState release]; +#endif /* if 1 */ +#else + [self setMessage:message]; +#endif /* ifdef PANTHER */ +#ifndef PANTHER + [self gpgSetMessageWasInFactSigned:isSigned]; + [self gpgSetMessageHasBeenDecrypted:YES]; +#endif + // Now update messageView content + // If we want to add a fade-out effect, we'll need to wait to the fade-out effect + // being done before we call [viewer _loadMessageIntoTextView]. + // Fade-out effect is launched by [viewer fadeToEmpty] + [self reloadCurrentMessage]; +#ifdef PANTHER + [self gpgSetMessageWasInFactSigned:isSigned]; + [self gpgSetMessageHasBeenDecrypted:YES]; +#endif + /* if([[message messageBody] isHTML]){ + * _messageWasInFactSigned = isSigned; + * _messageHasBeenDecrypted = YES; + * [self showFirstAlternative:nil]; + * } DOES NOTHING... */ + // Will post MessageWillBeDisplayed notification; we need to call this method anyway, + // to be sure that URLs are parsed by textView and clickable +} + +- (Message *)gpgMessageForAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner { + return [self message]; +} + +@end diff --git a/Source/HeadersEditor+GPGMail.h b/Source/HeadersEditor+GPGMail.h new file mode 100644 index 00000000..5fcfa90b --- /dev/null +++ b/Source/HeadersEditor+GPGMail.h @@ -0,0 +1,82 @@ +/* HeadersEditor+GPGMail.h re-created by Lukas Pitschl (@lukele) on Wed 25-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +@interface HeadersEditor_GPGMail : NSObject + +/** + Is called whenever the user clicks on either the sign or encrypt icon + in a message composer. + For the signed and|or encrypted drafts to work, it's necessary, to tell + the back end it has changes, every time the user changes the encrypt, sign + options for the message, so it saves a new draft. + */ +- (void)MASecurityControlChanged:(id)securityControl; + + +/** + Is called whenever the From NSPopUpButton is filled. + We need it to add the different secret keys. + */ +- (void)MA_updateFromAndSignatureControls:(id)arg1; + +/** + This is called asynchronously from updateSecurityControls on a invocation queue. + */ +- (void)MA_updateSecurityStateInBackgroundForRecipients:(NSArray *)recipients sender:(id)sender; + +/** + Adds or removes the secret keys to the From NSPopUpButton. + */ +- (void)updateFromAndAddSecretKeysIfNecessary:(NSNumber *)necessary; + +/** + Is called whenever the user select a account in the PopUp. + Is used to set the GPGKey in the back-end. + */ +- (void)MAChangeFromHeader:(NSPopUpButton *)sender; + +/** + Norification handling. + */ +- (void)keyringUpdated:(NSNotification *)notification; + +- (void)updateSymmetricButton; + +- (void)_updateSecurityControls; +- (void)updateSecurityControls; +- (NSPopUpButton *)fromPopup; +- (void)_setVisibilityForFromView:(BOOL)visible; + +@end + +@interface HeadersEditor_GPGMail (NotImplemented) + +- (id)composeViewController; + +@end diff --git a/Source/HeadersEditor+GPGMail.m b/Source/HeadersEditor+GPGMail.m new file mode 100644 index 00000000..3048b472 --- /dev/null +++ b/Source/HeadersEditor+GPGMail.m @@ -0,0 +1,895 @@ +/* HeadersEditor+GPGMail.m re-created by Lukas Pitschl (@lukele) on Wed 25-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import +#import "CCLog.h" +#import "MailAccount.h" +#import "AddressAttachment.h" +#import +#import "MailNotificationCenter.h" +#import "Message+GPGMail.h" +#import "MailDocumentEditor+GPGMail.h" +#import "HeadersEditor.h" +#import "ComposeHeaderView.h" +#import "HeadersEditor+GPGMail.h" +#import "ComposeBackEnd.h" +#import "ComposeBackEnd+GPGMail.h" +#import "GPGMailBundle.h" +#import "NSString+GPGMail.h" +#import "GMSecurityControl.h" +#import "NSObject+LPDynamicIvars.h" +#import +#import "GMComposeKeyEventHandler.h" +#import "OptionalView.h" +#import "GMSecurityHistory.h" + +@interface HeadersEditor_GPGMail (NoImplementation) +- (void)changeFromHeader:(NSPopUpButton *)sender; +@end + +@implementation HeadersEditor_GPGMail + + +- (void)symmetricEncryptClicked:(id)sender { + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:self]; + NSDictionary *securityProperties = ((ComposeBackEnd_GPGMail *)backEnd).securityProperties; + NSMutableDictionary *updatedSecurityProperties = [@{} mutableCopy]; + + BOOL oldValue = [securityProperties[@"shouldSymmetric"] boolValue]; + BOOL newValue = !oldValue; + + if (![securityProperties[@"SymmetricIsPossible"] boolValue]) { + newValue = NO; + } + + updatedSecurityProperties[@"shouldSymmetric"] = @(newValue); + if (newValue != oldValue) { + updatedSecurityProperties[@"ForceSymmetric"] = @(newValue); + } + + [self updateSymmetricButton]; + [(MailDocumentEditor_GPGMail *)[backEnd delegate] updateSecurityMethodHighlight]; +} + +- (void)updateSymmetricButton { + if (![[self getIvar:@"AllowSymmetricEncryption"] boolValue]) { + return; + } + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:self]; + NSDictionary *securityProperties = ((ComposeBackEnd_GPGMail *)backEnd).securityProperties; + NSMutableDictionary *updatedSecurityProperties = [@{} mutableCopy]; + + NSSegmentedControl *symmetricButton = [self getIvar:@"_symmetricButton"]; + + GPGMAIL_SECURITY_METHOD securityMethod = ((ComposeBackEnd_GPGMail *)backEnd).guessedSecurityMethod; + if (((ComposeBackEnd_GPGMail *)backEnd).securityMethod) + securityMethod = ((ComposeBackEnd_GPGMail *)backEnd).securityMethod; + + + + NSString *imageName; + if ([securityProperties[@"SymmetricIsPossible"] boolValue] && securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP) { + NSNumber *forceSymmetric = securityProperties[@"ForceSymmetric"]; + if (forceSymmetric) { + updatedSecurityProperties[@"shouldSymmetric"] = forceSymmetric; + } + + [symmetricButton setEnabled:YES forSegment:0]; + if ([securityProperties[@"shouldSymmetric"] boolValue]) { + imageName = @"SymmetricEncryptionOn"; + } else { + imageName = @"SymmetricEncryptionOff"; + } + } else { + imageName = @"SymmetricEncryptionOff"; + [symmetricButton setEnabled:NO forSegment:0]; + } + + [symmetricButton setImage:[NSImage imageNamed:imageName] forSegment:0]; +} + + +- (void)MAAwakeFromNib { + [self MAAwakeFromNib]; + + [(NSNotificationCenter *)[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyringUpdated:) name:GPGMailKeyringUpdatedNotification object:nil]; + + NSSegmentedControl *symmetricButton = nil; + OptionalView *optionalView = (OptionalView *)[[self valueForKey:@"_signButton"] superview]; + + + if ([[GPGOptions sharedOptions] boolForKey:@"AllowSymmetricEncryption"]) { + symmetricButton = [[NSSegmentedControl alloc] initWithFrame:NSMakeRect(24, -1, 38, 24)]; + symmetricButton.segmentCount = 1; + [symmetricButton setWidth:32 forSegment:0]; + symmetricButton.segmentStyle = NSSegmentStyleRounded; + ((NSSegmentedCell *)symmetricButton.cell).trackingMode = NSSegmentSwitchTrackingMomentary; + symmetricButton.target = self; + symmetricButton.action = @selector(symmetricEncryptClicked:); + + NSRect frame = optionalView.frame; + frame.size.width += 44; + optionalView.frame = frame; + + for (NSView *view in optionalView.subviews) { + if (![view isKindOfClass:[NSButton class]]) { + frame = view.frame; + frame.origin.x += 44; + view.frame = frame; + } + } + + + [self setIvar:@"_symmetricButton" value:symmetricButton]; + [self setIvar:@"AllowSymmetricEncryption" value:@YES]; + [self updateSymmetricButton]; + + [optionalView addSubview:symmetricButton]; + [optionalView setIvar:@"AdjustedWidth" value:@YES]; + } + + + + // VoiceOver uses the accessibilityDescription of NSImage for the encrypt and sign buttons, if there is no other text for accessibility. + // The lock-images have a default of "lock" and "unlocked lock". (NSLockLockedTemplate and NSLockUnlockedTemplate) + NSImage *signOnImage = [NSImage imageNamed:@"SignatureOnTemplate"]; + if (signOnImage) { + [signOnImage setAccessibilityDescription:[GPGMailBundle localizedStringForKey:@"ACCESSIBILITY_SIGN_ON_IMAGE"]]; + } + NSImage *signOffImage = [NSImage imageNamed:@"SignatureOffTemplate"]; + if (signOffImage) { + [signOffImage setAccessibilityDescription:[GPGMailBundle localizedStringForKey:@"ACCESSIBILITY_SIGN_OFF_IMAGE"]]; + } + + + + GMSecurityControl *signControl = [[GMSecurityControl alloc] initWithControl:[self valueForKey:@"_signButton"] tag:SECURITY_BUTTON_SIGN_TAG]; + [self setValue:signControl forKey:@"_signButton"]; + + GMSecurityControl *encryptControl = [[GMSecurityControl alloc] initWithControl:[self valueForKey:@"_encryptButton"] tag:SECURITY_BUTTON_ENCRYPT_TAG]; + [self setValue:encryptControl forKey:@"_encryptButton"]; + + // Configure setting the tool tip by unbinding the controls toolTip. + // We will update it, after _updateSecurityStateInBackground is run. + if([GPGMailBundle isYosemite]) { + [signControl unbind:@"toolTip"]; + [encryptControl unbind:@"toolTip"]; + } + + GMComposeKeyEventHandler *handler = [[GMComposeKeyEventHandler alloc] initWithView:optionalView]; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wselector" + handler.eventsAndSelectors = [NSArray arrayWithObjects: + @{@"keyEquivalent": @"y", @"keyEquivalentModifierMask": @(NSCommandKeyMask | NSAlternateKeyMask), @"target": encryptControl, @"selector": [NSValue valueWithPointer:@selector(performClick:)]}, + @{@"keyEquivalent": @"x", @"keyEquivalentModifierMask": @(NSCommandKeyMask | NSAlternateKeyMask), @"target": signControl, @"selector": [NSValue valueWithPointer:@selector(performClick:)]}, + symmetricButton ? @{@"keyEquivalent": @"Y", @"keyEquivalentModifierMask": @(NSCommandKeyMask | NSShiftKeyMask), @"target": symmetricButton, @"selector": [NSValue valueWithPointer:@selector(performClick:)]} : nil, + nil]; +#pragma clang diagnostic pop + + +} + +- (void)MASecurityControlChanged:(id)securityControl { + GMSecurityControl *signControl = [self valueForKey:@"_signButton"]; + GMSecurityControl *encryptControl = [self valueForKey:@"_encryptButton"]; + NSSegmentedControl *originalSecurityControl = securityControl; + + + securityControl = signControl.control == securityControl ? signControl : encryptControl; + // The securityControl passed to this method is an NSSegmentControl. + // So the only chance to find out what the new status of the control is, + // is to check its current image. (I really thought I was crazy writing this code, + // now it all makes sense again. WHAT A RELIEF) + // It's possible this is not necessary on + //if(![GPGMailBundle isYosemite]) + [securityControl updateStatusFromImage:[originalSecurityControl imageForSegment:0]]; + + [self MASecurityControlChanged:securityControl]; +} + +- (void)MA_updateFromControl { + // _updateFromAndSignatureControls: was renamed to to updateFromControl on Yosemite. + // Unfortunately updateFromControl doesn't take any arguments, which means, + // that we have to define a new method to hook into it. + // This method has to be run on the mainthread. + if(![NSThread mainThread]) + [self performSelectorOnMainThread:@selector(_updateFromControl) withObject:nil waitUntilDone:NO]; + + [self MA_updateFromControl]; + [self setupFromControlCrossVersion]; +} + +- (void)setupFromControlCrossVersion { + // Adjusted to work on Yosemite as well. + + // Thanks to Hopper (YES, it's fantastic) it's now clear that + // _updateFromAndSignatureControls calls setAccountFieldEnabled|Visible + // and configureAccountPopUpSize on the ComposeHeaderView. + + // If there's only one account setup, Mail.app chooses to not to display + // the "From:" field. That's alright, unless there are multiple secret keys + // available for the same account. In such a case, GPGMail will fill the + // popup and force it to be displayed, so that the user can choose which + // secret key to use. + NSPopUpButton *fromPopup = ![GPGMailBundle isYosemite] ? [self valueForKey:@"_fromPopup"] : [(id)self fromPopup]; + if([[fromPopup itemArray] count] == 1 && + ![[[fromPopup itemArray] objectAtIndex:0] attributedTitle]) { + [self fixEmptyAccountPopUpIfNecessary]; + } + else { + if([GPGMailBundle isYosemite]) { + [(HeadersEditor *)self _setVisibilityForFromView:YES]; + } + else { + [(ComposeHeaderView *)[self valueForKey:@"_composeHeaderView"] setAccountFieldEnabled:YES]; + [(ComposeHeaderView *)[self valueForKey:@"_composeHeaderView"] setAccountFieldVisible:YES]; + } + } + + // If any luck, the security option should be known by now. + // It's not, but it still works as assumed. + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:self]; + GPGMAIL_SECURITY_METHOD securityMethod = ((ComposeBackEnd_GPGMail *)backEnd).guessedSecurityMethod; + if(((ComposeBackEnd_GPGMail *)backEnd).securityMethod) + securityMethod = ((ComposeBackEnd_GPGMail *)backEnd).securityMethod; + + if(securityMethod == 0) + securityMethod = [GMSecurityHistory defaultSecurityMethod]; + + [self updateFromAndAddSecretKeysIfNecessary:@(securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP)]; +} + +- (void)MA_updateFromAndSignatureControls:(id)arg1 { + [self MA_updateFromAndSignatureControls:arg1]; + [self setupFromControlCrossVersion]; +} + +- (void)fixEmptyAccountPopUpIfNecessary { + // 1. Find the accounts to be displayed. + NSArray *accounts = (NSArray *)[GM_MAIL_CLASS(@"MailAccount") allEmailAddressesIncludingFullUserName:YES]; + + // There should only be on account available, otherwise we wouldn't be here. + NSString *onlyAccount = [[accounts objectAtIndex:0] gpgNormalizedEmail]; + BOOL multipleKeysAvailable = [[[GPGMailBundle sharedInstance] signingKeyListForAddress:onlyAccount] count] > 1; + + if(!multipleKeysAvailable) + return; + + Class AddressAttachmentClass = NSClassFromString(@"AddressAttachment"); + + NSPopUpButton *fromPopup = ![GPGMailBundle isYosemite] ? [self valueForKey:@"_fromPopup"] : [self fromPopup]; + // 3. Construct the style of the menu. + NSFont *font = [NSFont menuFontOfSize:[[(NSPopUpButtonCell *)[fromPopup cell] font] pointSize]]; + NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new]; + [paragraphStyle setLineBreakMode:NSLineBreakByTruncatingTail]; + NSDictionary *externalAttributes = [[NSDictionary alloc] initWithObjectsAndKeys: + [AddressAttachmentClass colorForExternalDomain], NSForegroundColorAttributeName, + font, NSFontAttributeName, nil]; + NSDictionary *normalAttributes = [[NSDictionary alloc] initWithObjectsAndKeys:font, NSFontAttributeName, + paragraphStyle, NSParagraphStyleAttributeName, nil]; + [fromPopup removeAllItems]; + [fromPopup addItemsWithTitles:accounts]; + if([accounts count]) { + NSUInteger i = 0; + for(id account in accounts) { + NSDictionary *attributes = normalAttributes; + if([AddressAttachmentClass addressIsExternal:account]) + attributes = externalAttributes; + NSAttributedString *title = [[NSAttributedString alloc] initWithString:account attributes:attributes]; + [[fromPopup itemAtIndex:i] setAttributedTitle:title]; + [[fromPopup itemAtIndex:i] setRepresentedObject:account]; + i++; + } + } + + // Set the field visible so the layout will be adjusted accordingly. + if(multipleKeysAvailable) { + if([GPGMailBundle isYosemite]) { + [self _setVisibilityForFromView:YES]; + } + else { + [(ComposeHeaderView *)[self valueForKey:@"_composeHeaderView"] setAccountFieldEnabled:YES]; + [(ComposeHeaderView *)[self valueForKey:@"_composeHeaderView"] setAccountFieldVisible:YES]; + [(ComposeHeaderView *)[self valueForKey:@"_composeHeaderView"] configureAccountPopUpSize]; + } + } +} + +- (void)MAUpdateSecurityControls { + // Do nothing, if documentEditor is no longer set. + // Might already have been released, or some such... + // Belongs to: #624. + // MailApp seems to call S in Yosemite to cancel previous updates. + // That's highly interesting!. + // DocumentEditor no longer exists in El Capitan. Seems to have been replaced by ComposeViewController. + if([GPGMailBundle isElCapitan]) { + if([self respondsToSelector:@selector(composeViewController)] && ![self composeViewController]) + return; + } + else { + if(![self valueForKey:@"_documentEditor"]) + return; + } + + [self MAUpdateSecurityControls]; +} + +- (void)MA_updateSecurityStateInBackgroundForRecipients:(NSArray *)recipients sender:(id)sender { + [self MA_updateSecurityStateInBackgroundForRecipients:recipients sender:sender]; + + // Do the same as _updateSecurityStateInBackgroundForRecipients and update the + // symmetric UI part on the main thread. + typeof(self) __weak weakSelf = self; + + [[NSOperationQueue mainQueue] addOperationWithBlock:^{ + typeof(weakSelf) __strong strongSelf = weakSelf; + if(!strongSelf) + return; + + // Update tool tips. + [strongSelf updateEncryptAndSignButtonToolTips]; + [strongSelf updateSymmetricButton]; + }]; +} + +- (void)MASetCanSign:(BOOL)canSign { + // On Yosemite the button state of the sign button is bound to + // this canSign property. Since canSignFromAddress always returns true in GPGMail, + // because otherwise, canEncrypt would not always be evaluated, we have + // to set the real value here, which is contained in SignIsPossible. + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:self]; + NSDictionary *securityProperties = ((ComposeBackEnd_GPGMail *)backEnd).securityProperties; + if(securityProperties[@"SignIsPossible"]) + canSign = [securityProperties[@"SignIsPossible"] boolValue]; + [self MASetCanSign:canSign]; +} + +- (void)MASetCanEncrypt:(BOOL)canEncrypt { + // Only on Yosemite. See MASetCanSign for explanation. + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:self]; + NSDictionary *securityProperties = ((ComposeBackEnd_GPGMail *)backEnd).securityProperties; + if(securityProperties[@"EncryptIsPossible"]) + canEncrypt = [securityProperties[@"EncryptIsPossible"] boolValue]; + [self MASetCanEncrypt:canEncrypt]; +} + + +- (void)MASetMessageIsToBeEncrypted:(BOOL)isToBeEncrypted { + // On Yosemite, the encrypt and sign button states are no longer directly set + // in _updateSecurityStateInBackgroundForRecipients, but instead in setMessageIsToBeEncrypted. + // So we set our preferred state in here. + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:self]; + NSDictionary *securityProperties = ((ComposeBackEnd_GPGMail *)backEnd).securityProperties; + + // It's possible that SetEncrypt is set to true, since that only reflects the defaults + // set by the user. + // If EncryptIsPossible (based on the availability of a public key) is true and + // the user set the default for EncryptNewMessagesByDefault to true (which is reflected by EncryptIsPossible) + // the message is in fact being encrypted and thus isToBeEncrypted is set to true. + // ForceEncrypt however reflects the user choice and is thus not questioned. + if(securityProperties[@"SetEncrypt"] && securityProperties[@"EncryptIsPossible"]) + isToBeEncrypted = [securityProperties[@"SetEncrypt"] boolValue] && [securityProperties[@"EncryptIsPossible"] boolValue]; + // ForceEncrypt overrides SetEncrypt since it reflects the user's choice. + if(securityProperties[@"ForceEncrypt"]) + isToBeEncrypted = [securityProperties[@"ForceEncrypt"] boolValue]; + // ForceEncrypt must be ignored if EncryptIsPossible is set to NO. + if(securityProperties[@"EncryptIsPossible"]) + isToBeEncrypted = isToBeEncrypted && [securityProperties[@"EncryptIsPossible"] boolValue]; + + [self MASetMessageIsToBeEncrypted:isToBeEncrypted]; +} + +- (void)MASetMessageIsToBeSigned:(BOOL)isToBeSigned { + // On Yosemite, the encrypt and sign button states are no longer directly set + // in _updateSecurityStateInBackgroundForRecipients, but instead in setMessageIsToBeSigned. + // So we set our preferred state in here. + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:self]; + NSDictionary *securityProperties = ((ComposeBackEnd_GPGMail *)backEnd).securityProperties; + + if(securityProperties[@"SetSign"]) + isToBeSigned = [securityProperties[@"SetSign"] boolValue]; + // ForceSign overrides SetSign since it reflects the user's choice. + if(securityProperties[@"ForceSign"]) + isToBeSigned = [securityProperties[@"ForceSign"] boolValue]; + // ForceSign must be ignored if SignIsPossible is set to NO. + if(securityProperties[@"SignIsPossible"]) + isToBeSigned = isToBeSigned && [securityProperties[@"SignIsPossible"] boolValue]; + + [self MASetMessageIsToBeSigned:isToBeSigned]; +} + +- (void)updateFromAndAddSecretKeysIfNecessary:(NSNumber *)necessary { + BOOL display = [necessary boolValue]; + NSPopUpButton *popUp = nil; + if([GPGMailBundle isYosemite]) { + popUp = [self fromPopup]; + } + else if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_9) { + popUp = [self valueForKey:@"_fromPopup"]; + } + else { + popUp = [[self valueForKey:@"_composeHeaderView"] valueForKey:@"_accountPopUp"]; + } + + NSMenu *menu = [popUp menu]; + NSArray *menuItems = [menu itemArray]; + GPGMailBundle *bundle = [GPGMailBundle sharedInstance]; + + Class AddressAttachmentClass = NSClassFromString(@"AddressAttachment"); + + // Is used to properly truncate our own menu items. + NSMutableParagraphStyle *truncateStyle = [[NSMutableParagraphStyle alloc] init]; + [truncateStyle setLineBreakMode:NSLineBreakByTruncatingTail]; + + NSMutableDictionary *attributes = [NSMutableDictionary dictionary]; + [attributes addEntriesFromDictionary:[[menuItems[0] attributedTitle] fontAttributesInRange:NSMakeRange(0, [[menuItems[0] attributedTitle] length])]]; + attributes[NSParagraphStyleAttributeName] = truncateStyle; + + // Also use the proper styling for external addresses. + NSPopUpButton *fromPopup = ![GPGMailBundle isYosemite] ? [self valueForKey:@"_fromPopup"] : [self fromPopup]; + NSFont *font = [NSFont menuFontOfSize:[[(NSPopUpButtonCell *)[fromPopup cell] font] pointSize]]; + NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new]; + [paragraphStyle setLineBreakMode:NSLineBreakByTruncatingTail]; + NSDictionary *externalAttributes = [[NSDictionary alloc] initWithObjectsAndKeys: + [AddressAttachmentClass colorForExternalDomain], NSForegroundColorAttributeName, + font, NSFontAttributeName, nil]; + + + NSMenuItem *item, *parentItem, *selectedItem = [popUp selectedItem], *subItemToSelect = nil; + GPGKey *defaultKey = [bundle preferredGPGKeyForSigning]; + BOOL useTitleFromAccount = [[GPGOptions sharedOptions] boolForKey:@"ShowAccountNameForKeysOfSameAddress"]; + + // If menu items are not yet set, simply exit. + // This might happen if securityMethodDidChange notification + // is posted before the menu items have been configured. + if(!menuItems.count || (menuItems.count == 1 && ![[menuItems objectAtIndex:0] representedObject])) + return; + + menu.autoenablesItems = NO; + + NSUInteger count = [menuItems count], i = 0; + NSDictionary *currentAttributes = attributes; + + for (; i < count; i++) { + item = menuItems[i]; + parentItem = [item getIvar:@"parentItem"]; + if (parentItem) { + [menu removeItem:item]; // We remove all elements that represent a key. + } else if (display) { + NSString *itemTitle = item.title; + + NSString *email = nil; + if (useTitleFromAccount == NO) + email = ![GPGMailBundle isYosemite] ? [itemTitle gpgNormalizedEmail] : [item.representedObject gpgNormalizedEmail]; + + NSSet *keys = [bundle signingKeyListForAddress:![GPGMailBundle isYosemite] ? item.title : item.representedObject]; + switch ([keys count]) { + case 0: + // We have no key for this account. + [item removeIvar:@"gpgKey"]; + item.hidden = NO; + break; + case 1: + // We have only one key for this account: Set it. + [item setIvar:@"gpgKey" value:[keys anyObject]]; + item.hidden = NO; + break; + default: { + // We have more than one key for this account: + // Add menu items to let the user choose. + NSInteger index = [menu indexOfItem:item]; + + for (GPGKey *key in keys) { + NSMenuItem *subItem = nil; + if (i + 1 < count && (subItem = menuItems[i + 1]) && [subItem getIvar:@"parentItem"] && [subItem getIvar:@"gpgKey"] == key) { + // The next item is the item we want to create: Jump over. + i++; + index++; + } else { + NSString *title; + if (useTitleFromAccount) { + title = [NSString stringWithFormat:@"%@ (%@)", itemTitle, [key.keyID shortKeyID]]; // Compose the title "Name (KeyID)". + } else { + if([GPGMailBundle isYosemite]) + title = [NSString stringWithFormat:@"%@ - %@ (%@)", key.name, email, [key.keyID shortKeyID]]; // Compose the title "key.Name - E-Mail (KeyID)". + else + title = [NSString stringWithFormat:@"%@ <%@> (%@)", key.name, email, [key.keyID shortKeyID]]; // Compose the title "key.Name (KeyID)". + } + + currentAttributes = [AddressAttachmentClass addressIsExternal:email] ? externalAttributes : attributes; + + NSAttributedString *attributedTitle = [[NSAttributedString alloc] initWithString:title attributes:currentAttributes]; + + // Create the menu item with the given title... + subItem = [[NSMenuItem alloc] initWithTitle:title action:nil keyEquivalent:@""]; + [subItem setAttributedTitle:attributedTitle]; + [subItem setIvar:@"gpgKey" value:key]; // GPGKey... + [subItem setIvar:@"parentItem" value:item]; // and set the parentItem. + [subItem setRepresentedObject:item.representedObject]; + [menu insertItem:subItem atIndex:++index]; // Insert it in the "From:" menu. + } + if (item == selectedItem) { + if (key == defaultKey) { + subItemToSelect = subItem; + } + } + + } + item.hidden = YES; + break; } + } + } else { // display == NO + // Restore all original items. + [item removeIvar:@"gpgKey"]; + item.hidden = NO; + } + } + + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:self]; + + // Select a valid item if needed. + if (selectedItem.isHidden) { + NSUInteger index; + if (subItemToSelect) { + index = [menu indexOfItem:subItemToSelect]; + } else { + index = [menu indexOfItem:selectedItem] + 1; + } + [popUp selectItemAtIndex:index]; + [popUp synchronizeTitleAndSelectedItem]; + + [popUp setIvar:@"CalledFromGPGMail" value:@YES]; + [self changeFromHeader:popUp]; + } + else if ([popUp selectedItem] != selectedItem) { + if ((parentItem = [selectedItem getIvar:@"parentItem"])) { + selectedItem = parentItem; + } + [popUp selectItem:selectedItem]; + [popUp synchronizeTitleAndSelectedItem]; + + [popUp setIvar:@"CalledFromGPGMail" value:@YES]; + [self changeFromHeader:popUp]; + } else if (![backEnd getIvar:@"gpgKeyForSigning"]) { + id gpgKey = [selectedItem getIvar:@"gpgKey"]; + if (gpgKey) { + [backEnd setIvar:@"gpgKeyForSigning" value:gpgKey]; + } + } +} + +- (void)MAChangeFromHeader:(NSPopUpButton *)sender { + BOOL calledFromGPGMail = [[sender getIvar:@"CalledFromGPGMail"] boolValue]; + [sender setIvar:@"CalledFromGPGMail" value:@NO]; + + // Create a new NSPopUpButton with only one item and the correct title. + NSPopUpButton *button = [[NSPopUpButton alloc] init]; + NSMenuItem *item = [sender selectedItem]; + NSMenuItem *parentItem = [item getIvar:@"parentItem"]; + + // On Yosemite, the representedObject contains the fullAddress (name ) of the + // menu item. If we use addItemWithTitle, the representedObject is no longer set, + // and mail receives nil when querying the address and thus can't properly set the sender. + // In order to fix this, we simply use addItem: on the button's menu instead. + if([GPGMailBundle isYosemite]) { + // Since according to the documentation, a menuitem must not belong to another menu, + // we have to create a new version with the same properties. + NSMenuItem *baseItem = parentItem ? parentItem : item; + NSMenuItem *fakeItem = [[NSMenuItem alloc] init]; + fakeItem.attributedTitle = baseItem.attributedTitle; + fakeItem.representedObject = baseItem.representedObject; + [[button menu] addItem:fakeItem]; + } + else + [button addItemWithTitle:(parentItem ? parentItem : item).title]; + + // Set the selected key in the back-end. + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:self]; + [backEnd setIvar:@"gpgKeyForSigning" value:[item getIvar:@"gpgKey"]]; + + // Only reset the status if this method is called from a user generated event. + // Otherwise there's a notification loop, because the security method is set and reset again + // and again. + // Also don't reset it, if the user chose the security method beforehand. + if(!calledFromGPGMail && !((ComposeBackEnd_GPGMail *)backEnd).userDidChooseSecurityMethod) { + ((ComposeBackEnd_GPGMail *)backEnd).securityMethod = 0; + } + + [self MAChangeFromHeader:button]; +} + +- (void)keyringUpdated:(NSNotification *)notification { + // Will always be called on the main thread!. + if(![NSThread isMainThread]) { + DebugLog(@"%@: not called on main thread? What the fuck?!", NSStringFromSelector(_cmd)); + return; + } + + ComposeBackEnd *backEnd = [GPGMailBundle backEndFromObject:self]; + GPGMAIL_SECURITY_METHOD securityMethod = ((ComposeBackEnd_GPGMail *)backEnd).guessedSecurityMethod; + if(((ComposeBackEnd_GPGMail *)backEnd).securityMethod) + securityMethod = ((ComposeBackEnd_GPGMail *)backEnd).securityMethod; + // It seems calling updateSecurityControls at this point is most reliable. + if([GPGMailBundle isYosemite]) { + [self _updateSecurityControls]; + } + else { + [self updateSecurityControls]; + } +} + +- (void)updateEncryptAndSignButtonToolTips { + // This method is currently only used on Yosemite, since Apple + // switched to a ValueTransformer which is not really adequate for + // our more advanced tool tips. + ComposeBackEnd_GPGMail *backEnd = [GPGMailBundle backEndFromObject:self]; + GPGMAIL_SECURITY_METHOD securityMethod = backEnd.securityMethod; + if(securityMethod == 0) + securityMethod = backEnd.guessedSecurityMethod; + + if(securityMethod != GPGMAIL_SECURITY_METHOD_OPENPGP) + return; + + NSString *signToolTip = [self signButtonToolTip]; + GMSecurityControl *signControl = [self valueForKey:@"_signButton"]; + [((NSSegmentedControl *)signControl) setToolTip:signToolTip]; + + NSString *encryptToolTip = [self encryptButtonToolTip]; + GMSecurityControl *encryptControl = [self valueForKey:@"_encryptButton"]; + [((NSSegmentedControl *)encryptControl) setToolTip:encryptToolTip]; +} + +- (void)MA_updateSignButtonTooltip { + // This was replaced by a ValueTransformer in Yosemite. + // The NSSegmentedControl encryptButton and signButton have a binding for toolTip + // which can be queried like this. + // [[[self signButton] control] infoForBinding:@"toolTip"]; + // Basically replacing it with our own value might suffice. + // Or we could simply unbind it and call our own methods which will set the + // tooltips directly. + // Seems to be the easier way. + // So basically. + // [[[self signButton] control] unbind:@"toolTip"]; + // [[[self signButton] control] setToolTip:@"Whatever we want to be written here."]; + // The binding listens to messageIsToBeEncrypted and messageIsToBeSigned, so maybe we should as well. + + ComposeBackEnd_GPGMail *backEnd = [GPGMailBundle backEndFromObject:self]; + if(backEnd.securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP) { + NSString *signToolTip = [self signButtonToolTip]; + GMSecurityControl *signControl = [self valueForKey:@"_signButton"]; + [((NSSegmentedControl *)signControl) setToolTip:signToolTip]; + } + else { + [self MA_updateSignButtonTooltip]; + } +} + +- (NSString *)encryptButtonToolTip { + ComposeBackEnd_GPGMail *backEnd = [GPGMailBundle backEndFromObject:self]; + NSDictionary *securityProperties = ((ComposeBackEnd_GPGMail *)backEnd).securityProperties; + + NSString *toolTip = @""; + + if(![securityProperties[@"EncryptIsPossible"] boolValue]) { + NSArray *nonEligibleRecipients = [(ComposeBackEnd *)backEnd recipientsThatHaveNoKeyForEncryption]; + if(![nonEligibleRecipients count]) + toolTip = GMLocalizedString(@"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT_NO_RECIPIENTS"); + else { + NSString *recipients = [nonEligibleRecipients componentsJoinedByString:@", "]; + toolTip = [NSString stringWithFormat:GMLocalizedString(@"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_ENCRYPT"), recipients]; + } + } + + return toolTip; +} + +- (NSString *)signButtonToolTip { + ComposeBackEnd_GPGMail *backEnd = [GPGMailBundle backEndFromObject:self]; + NSDictionary *securityProperties = ((ComposeBackEnd_GPGMail *)backEnd).securityProperties; + + NSString *toolTip = @""; + + if(![securityProperties[@"SignIsPossible"] boolValue]) { + NSPopUpButton *button = [self valueForKey:@"_fromPopup"]; + NSString *sender = ![GPGMailBundle isYosemite] ? [button.selectedItem.title gpgNormalizedEmail] : [button.selectedItem.representedObject gpgNormalizedEmail]; + + if([sender length] == 0 && [button.itemArray count]) + sender = ![GPGMailBundle isYosemite] ? [[(button.itemArray)[0] title] gpgNormalizedEmail] : [[(button.itemArray)[0] representedObject] gpgNormalizedEmail]; + + toolTip = [NSString stringWithFormat:GMLocalizedString(@"COMPOSE_WINDOW_TOOLTIP_CAN_NOT_PGP_SIGN"), sender]; + } + + return toolTip; +} + +- (void)MA_updateEncryptButtonTooltip { + ComposeBackEnd_GPGMail *backEnd = [GPGMailBundle backEndFromObject:self]; + + GPGMAIL_SECURITY_METHOD securityMethod = backEnd.guessedSecurityMethod; + if(backEnd.securityMethod) + securityMethod = backEnd.securityMethod; + + if(securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP) { + NSString *encryptToolTip = [self encryptButtonToolTip]; + GMSecurityControl *encryptControl = [self valueForKey:@"_encryptButton"]; + [((NSSegmentedControl *)encryptControl) setToolTip:encryptToolTip]; + } + else { + [self MA_updateEncryptButtonTooltip]; + } +} + +- (void)MADealloc { + @try { + [(MailNotificationCenter *)[NSClassFromString(@"MailNotificationCenter") defaultCenter] removeObserver:self]; + [[NSNotificationCenter defaultCenter] removeObserver:self]; + } + @catch (id e) { + } + [self MADealloc]; +} + +@end + +/* ORIGINAL SOURCE OF MAIL.APP FOR LEARING. */ + +//- (void)configureButtonsAndPopUps { +// WebViewEditor *webViewEditor = [[self valueForKey:@"_documentEditor"] webViewEditor]; +// [webViewEditor updateIgnoredWordsForHeader:NO]; +// [webViewEditor updateSecurityControls]; +// [webViewEditor updatePriorityPopUpMakeActive:YES]; +// +// ComposeBackEnd *backEnd = [self _valueForKey:@"_documentEditor"]; +// long long messagePriority = [backEnd displayableMessagePriority]; +// +// if(messagePriority != 3) { +// if([[self valueForKey:@"_priorityPopup"] isHiddenOrHasHiddenAncestor]) +// [[self valueForKey:@"_composeHeaderView"] setPriorityFieldVisible:YES]; +// } +// +// [self _updateFromAndSignatureControls]; +//} +// +//- (void)changeHeaderField:(id)headerField { +// NSString *headerKey = [self _headerKeyForView:headerField]; +// if(!headerKey) +// return; +// +// if([self valueForKey:@"_subjectField"] != headerField) { +// NSString *attributedStringValue = [headerField attributedStringValue]; +// NSString *unatomicAddress = [attributedStringValue unatomicAddresses]; +// [[[self valueForKey:@"_documentEditor"] backEnd] setAddressList:unatomicAddress forHeader:headerKey]; +// +// if([self valueForKey:@"_toField"] != headerField && [self valueForKey:@"_ccField"] != headerField) { +// if([self valueForKey:@"_bccField"] == headerField) { +// [[self valueForKey:@"_documentEditor"] updateSendButtonStateInToolbar]; +// [self updateSecurityControls]; +// [self updatePresenceButtonState]; +// } +// else +// return; +// } +// else { +// [[self valueForKey:@"_documentEditor"] updateSendButtonStateInToolbar]; +// [self updateSecurityControls]; +// [self updatePresenceButtonState]; +// } +// } +//} +// +//- (void)changeFromHeader:(id)header { +// ComposeBackEnd *backEnd = [[self valueForKey:@"_documentEditor"] backEnd]; // r15 +// NSString *title = [header titleOfSelectedItem]; +// if(title) { +// NSString *sender = [backEnd sender]; +// [sender retain]; +// [backEnd setSender:title]; +// [self updateCcOrBccMyselfFieldWithSender:title oldSender:sender]; +// [sender release]; +// [self updateSecurityControls]; +// [self updateSignatureControlOverridingExistingSignature:YES]; +// [[self valueForKey:@"_documentEditor"] updateAttachmentStatus]; +// } +// // And some more stuff which shall not be our concern currently. +// +//} +// +//- (void)updateSecurityControls { +// ComposeBackEnd *backEnd = [[self valueForKey:@"_documentEditor"] backEnd]; +// NSArray *recipients = [backEnd allRecipients]; +// NSString *sender = [backEnd sender]; +// NSInvocation *invocation = [NSInvocation invocationWithSelector:@selector(_updateSecurityStateInBackgroundForRecipients:sender:) target:self object1:recipients object2:sender]; +// +// [WorkerThread addInvocationToQueue:invocation]; +//} +// +//- (void)_updateSecurityStateInBackgroundForRecipients:(id)recipients sender:(id)sender { +// BOOL canSignFromAnyAccount = [self canSignFromAnyAccount]; +// +// BOOL canSignFromAddress = NO; +// BOOL canEncryptFromAddress = NO; +// if(canSignFromAnyAccount) { +// ComposeBackEnd *backEnd = [[self valueForKey:@"_documentEditor"] backEnd]; +// canSignFromAddress = [backEnd canSignFromAddress:sender]; +// if(canSignFromAddress) { +// canEncryptFromAddress = [backEnd canEncryptForRecipients:recipients sender:sender]; +// } +// } +// [[NSOperationQueue mainQueue] addOperationWithBlock:^{ +// [[self valueForKey:@"_composeHeaderView"] setSecurityFieldEnabled:canSignFromAddress]; +// if(canSignFromAddress && canEncryptFromAddress) { +// if(![[self valueForKey:@"_composeHeaderView"] securityFieldVisible]) { +// [[self valueForKey:@"_signButton"] setImage:@"" forSegment:0]; +// [[self valueForKey:@"_encryptButton"] setImage:@"" forSegment:0]; +// [[self valueForKey:@"_signButton"] setEnabled:NO]; +// [[self valueForKey:@"_encryptButton"] setEnabled:NO]; +// +// [[[self valueForKey:@"_documentEditor"] backEnd] setSignIfPossible:NO]; +// } +// else { +// BOOL sign = (BOOL)[NSApp signOutgoingMessages]; // r15 +// BOOL encrypt = (BOOL)[NSApp encryptOutgoingMessages]; +// +// NSImage *signImage = nil; // some image. +// NSImage *encryptImage = nil; // some other image. +// if(sign) { +// signImage = nil; // different image +// } +// +// [[self valueForKey:@"_signButton"] setImage:signImage forSegment:0]; +// [[self valueForKey:@"_signButton"] setEnabled:YES]; +// [[[self valueForKey:@"_documentEditor"] backEnd] setSignIfPossible:sign]; +// +// if(!canEncryptFromAddress) { +// [[self valueForKey:@"_encryptButton"] setEnabled:canEncryptFromAddress]; +// [[self valueForKey:@"_encryptButton"] setImage:encryptImage forSegment:0]; +// +// [[[self valueForKey:@"_documentEditor"] backEnd] setEncryptIfPossible:NO]; +// } +// else { +// [[self valueForKey:@"_encryptButton"] setEnabled:YES]; +// +// NSImage *encryptImage = nil; // some image. +// if(encrypt) +// encryptImage = nil; // some other image. +// [[self valueForKey:@"_encryptButton"] setImage:encryptImage forSegment:0]; +// [[[self valueForKey:@"_documentEditor"] backEnd] setEncryptIfPossible:encrypt]; +// +// [self _updateSignButtonTooltip]; +// [self _updateEncryptButtonTooltip]; +// +// [[self valueForKey:@"_documentEditor"] encryptionStatusDidChange]; +// } +// } +// } +// }]; +//} + + diff --git a/Source/JRLPSwizzle.h b/Source/JRLPSwizzle.h new file mode 100644 index 00000000..ccaa472f --- /dev/null +++ b/Source/JRLPSwizzle.h @@ -0,0 +1,14 @@ +// Copyright (c) 2007-2011 Jonathan 'Wolf' Rentzsch: http://rentzsch.com +// Some rights reserved: http://opensource.org/licenses/mit-license.php + +#import + +@interface NSObject (JRLPSwizzle) + ++ (BOOL)jrlp_swizzleMethod:(SEL)origSel_ withMethod:(SEL)altSel_ error:(NSError**)error_; ++ (BOOL)jrlp_swizzleClassMethod:(SEL)origSel_ withClassMethod:(SEL)altSel_ error:(NSError**)error_; ++ (BOOL)jrlp_addClassMethod:(SEL)selector fromClass:(Class)class error:(NSError **)error; ++ (BOOL)jrlp_addMethod:(SEL)selector fromClass:(Class)class error:(NSError **)error; ++ (BOOL)jrlp_addMethodsFromClass:(Class)aClass error:(NSError **)error; ++ (BOOL)jrlp_swizzleMethod:(SEL)selector newMethodName:(SEL)newMethodName withBlock:(id)block error:(NSError **)error; +@end diff --git a/Source/JRLPSwizzle.m b/Source/JRLPSwizzle.m new file mode 100644 index 00000000..f0de44a2 --- /dev/null +++ b/Source/JRLPSwizzle.m @@ -0,0 +1,179 @@ +// Copyright (c) 2007-2011 Jonathan 'Wolf' Rentzsch: http://rentzsch.com +// Some rights reserved: http://opensource.org/licenses/mit-license.php + +#import "JRLPSwizzle.h" +#import +#import "CCLog.h" + +#define SetNSErrorFor(FUNC, ERROR_VAR, FORMAT,...) \ + if (ERROR_VAR) { \ + NSString *errStr = [NSString stringWithFormat:@"%s: " FORMAT,FUNC,##__VA_ARGS__]; \ + *ERROR_VAR = [NSError errorWithDomain:@"NSCocoaErrorDomain" \ + code:-1 \ + userInfo:[NSDictionary dictionaryWithObject:errStr forKey:NSLocalizedDescriptionKey]]; \ + } +#define SetNSError(ERROR_VAR, FORMAT,...) SetNSErrorFor(__func__, ERROR_VAR, FORMAT, ##__VA_ARGS__) + +#if OBJC_API_VERSION >= 2 +#define GetClass(obj) object_getClass(obj) +#else +#define GetClass(obj) (obj ? obj->isa : Nil) +#endif + +@implementation NSObject (JRLPSwizzle) + ++ (BOOL)jrlp_swizzleMethod:(SEL)origSel_ withMethod:(SEL)altSel_ error:(NSError**)error_ { +#if OBJC_API_VERSION >= 2 + Method origMethod = class_getInstanceMethod(self, origSel_); + if (!origMethod) { + SetNSError(error_, @"original method %@ not found for class %@", NSStringFromSelector(origSel_), [self className]); + return NO; + } + + Method altMethod = class_getInstanceMethod(self, altSel_); + if (!altMethod) { + SetNSError(error_, @"alternate method %@ not found for class %@", NSStringFromSelector(altSel_), [self className]); + return NO; + } + + class_addMethod(self, + origSel_, + class_getMethodImplementation(self, origSel_), + method_getTypeEncoding(origMethod)); + class_addMethod(self, + altSel_, + class_getMethodImplementation(self, altSel_), + method_getTypeEncoding(altMethod)); + + method_exchangeImplementations(class_getInstanceMethod(self, origSel_), class_getInstanceMethod(self, altSel_)); + return YES; +#else + // Scan for non-inherited methods. + Method directOriginalMethod = NULL, directAlternateMethod = NULL; + + void *iterator = NULL; + struct objc_method_list *mlist = class_nextMethodList(self, &iterator); + while (mlist) { + int method_index = 0; + for (; method_index < mlist->method_count; method_index++) { + if (mlist->method_list[method_index].method_name == origSel_) { + assert(!directOriginalMethod); + directOriginalMethod = &mlist->method_list[method_index]; + } + if (mlist->method_list[method_index].method_name == altSel_) { + assert(!directAlternateMethod); + directAlternateMethod = &mlist->method_list[method_index]; + } + } + mlist = class_nextMethodList(self, &iterator); + } + + // If either method is inherited, copy it up to the target class to make it non-inherited. + if (!directOriginalMethod || !directAlternateMethod) { + Method inheritedOriginalMethod = NULL, inheritedAlternateMethod = NULL; + if (!directOriginalMethod) { + inheritedOriginalMethod = class_getInstanceMethod(self, origSel_); + if (!inheritedOriginalMethod) { + SetNSError(error_, @"original method %@ not found for class %@", NSStringFromSelector(origSel_), [self className]); + return NO; + } + } + if (!directAlternateMethod) { + inheritedAlternateMethod = class_getInstanceMethod(self, altSel_); + if (!inheritedAlternateMethod) { + SetNSError(error_, @"alternate method %@ not found for class %@", NSStringFromSelector(altSel_), [self className]); + return NO; + } + } + + int hoisted_method_count = !directOriginalMethod && !directAlternateMethod ? 2 : 1; + struct objc_method_list *hoisted_method_list = malloc(sizeof(struct objc_method_list) + (sizeof(struct objc_method)*(hoisted_method_count-1))); + hoisted_method_list->obsolete = NULL; // soothe valgrind - apparently ObjC runtime accesses this value and it shows as uninitialized in valgrind + hoisted_method_list->method_count = hoisted_method_count; + Method hoisted_method = hoisted_method_list->method_list; + + if (!directOriginalMethod) { + bcopy(inheritedOriginalMethod, hoisted_method, sizeof(struct objc_method)); + directOriginalMethod = hoisted_method++; + } + if (!directAlternateMethod) { + bcopy(inheritedAlternateMethod, hoisted_method, sizeof(struct objc_method)); + directAlternateMethod = hoisted_method; + } + class_addMethods(self, hoisted_method_list); + } + + // Swizzle. + IMP temp = directOriginalMethod->method_imp; + directOriginalMethod->method_imp = directAlternateMethod->method_imp; + directAlternateMethod->method_imp = temp; + + return YES; +#endif +} + ++ (BOOL)jrlp_swizzleClassMethod:(SEL)origSel_ withClassMethod:(SEL)altSel_ error:(NSError**)error_ { + return [GetClass((id)self) jrlp_swizzleMethod:origSel_ withMethod:altSel_ error:error_]; +} + ++ (BOOL)jrlp_addMethodsFromClass:(Class)aClass error:(NSError **)error { + unsigned int methodCount; + SEL currentSelector; + Method *classMethods; + for(unsigned int i = 0; i < 2; i++) { + classMethods = class_copyMethodList(i == 0 ? aClass : object_getClass(aClass), &methodCount); + DebugLog(@"Number of methods found for class %@: %u", aClass, methodCount); + + for (unsigned int j = 0; j < methodCount; j++) { + currentSelector = method_getName((Method)classMethods[j]); + DebugLog(@"%d: Adding method %@ from %@", i, NSStringFromSelector(currentSelector), i == 0 ? aClass : object_getClass(aClass)); + [i == 0 ? self : object_getClass(self) jrlp_addMethod:currentSelector fromClass:i == 0 ? aClass : object_getClass(aClass) error:error]; + if(*error) { + DebugLog(@"failed to add method: %@", NSStringFromSelector(currentSelector)); + free(classMethods); + return NO; + } + } + free(classMethods); + } + + return YES; +} + ++ (BOOL)jrlp_addMethod:(SEL)selector fromClass:(Class)class error:(NSError **)error { + Method method = class_getInstanceMethod(class, selector); + if (method == NULL) { + SetNSError(error, @"method %@ doesn't exit in class: %@", NSStringFromSelector(selector), [self class]); + return NO; + } + class_addMethod(self, selector, method_getImplementation(method), method_getTypeEncoding(method)); + return YES; +} + ++ (BOOL)jrlp_addClassMethod:(SEL)selector fromClass:(Class)class error:(NSError **)error { + return [object_getClass(self) jrlp_addClassMethod:selector fromClass:class error:error]; +} + ++ (BOOL)jrlp_swizzleMethod:(SEL)selector newMethodName:(SEL)newMethodName withBlock:(id)block error:(NSError **)error { + NSAssert(self && selector && newMethodName && block, @"Pass the correct arguments"); + + if([self respondsToSelector:newMethodName]) + return YES; + + Method origMethod = class_getInstanceMethod(self, selector); + + // Add the new method. + IMP impl = imp_implementationWithBlock(block); + if(!class_addMethod(self, newMethodName, impl, method_getTypeEncoding(origMethod))) { + SetNSError(error, @"Not able to swizzle method %@ on class %@", NSStringFromSelector(selector), [self className]); + return NO; + } + else { + Method newMethod = class_getInstanceMethod(self, newMethodName); + method_exchangeImplementations(origMethod, newMethod); + } + + return YES; +} + +@end diff --git a/Source/Library+GPGMail.h b/Source/Library+GPGMail.h new file mode 100644 index 00000000..b392e19a --- /dev/null +++ b/Source/Library+GPGMail.h @@ -0,0 +1,43 @@ +/* Library+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 13-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface Library_GPGMail : NSObject + +/** + This hook is necessary to prevent the plist serialization error (ticket #606). + In the case that the user is sending a OpenPGP signed or encrypted message + the sender and to value passed to this method might be GPGFlaggedStrings, + which can't be serialized into a plist. + To fix this, they are converted to normal strings first. + */ ++ (id)MAPlistDataForMessage:(id)message subject:(id)subject sender:(id)sender to:(id)to dateSent:(id)dateSent remoteID:(id)remoteID originalMailbox:(id)originalMailbox flags:(long long)flags mergeWithDictionary:(id)mergeWithDictionary; + +@end diff --git a/Source/Library+GPGMail.m b/Source/Library+GPGMail.m new file mode 100644 index 00000000..f3f89425 --- /dev/null +++ b/Source/Library+GPGMail.m @@ -0,0 +1,54 @@ +/* Library+GPGMail.m created by Lukas Pitschl (@lukele) on Wed 13-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "Library+GPGMail.h" +#import "GPGFlaggedString.h" + +@implementation Library_GPGMail + +/** ONLY FOR Mavericks and then on MFLibrary. */ ++ (id)MAPlistDataForMessage:(id)message subject:(id)subject sender:(id)sender to:(id)to dateSent:(id)dateSent dateReceived:(id)dateReceived dateLastViewed:(id)dateLastViewed remoteID:(id)remoteID originalMailboxURLString:(id)originalMailboxURLString gmailLabels:(id)gmailLabels flags:(long long)flags mergeWithDictionary:(id)mergeWithDictionary { + if([sender isKindOfClass:[GPGFlaggedString class]]) + sender = [(GPGFlaggedString *)sender description]; + if([to isKindOfClass:[GPGFlaggedString class]]) + to = [(GPGFlaggedString *)to description]; + + return [self MAPlistDataForMessage:message subject:subject sender:sender to:to dateSent:dateSent dateReceived:dateReceived dateLastViewed:dateLastViewed remoteID:remoteID originalMailboxURLString:originalMailboxURLString gmailLabels:gmailLabels flags:flags mergeWithDictionary:mergeWithDictionary]; +} + ++ (id)MAPlistDataForMessage:(id)message subject:(id)subject sender:(id)sender to:(id)to dateSent:(id)dateSent remoteID:(id)remoteID originalMailbox:(id)originalMailbox flags:(long long)flags mergeWithDictionary:(id)mergeWithDictionary { + if([sender isKindOfClass:[GPGFlaggedString class]]) + sender = [(GPGFlaggedString *)sender description]; + if([to isKindOfClass:[GPGFlaggedString class]]) + to = [(GPGFlaggedString *)to description]; + + return [self MAPlistDataForMessage:message subject:subject sender:sender to:to dateSent:dateSent remoteID:remoteID originalMailbox:originalMailbox flags:flags mergeWithDictionary:mergeWithDictionary]; +} + +@end diff --git a/Source/LibraryStore+GPGMail.h b/Source/LibraryStore+GPGMail.h new file mode 100644 index 00000000..f54622e2 --- /dev/null +++ b/Source/LibraryStore+GPGMail.h @@ -0,0 +1,37 @@ +/* LibraryStore+GPGMail.h created by Lukas Pitschl (@lukele) on Thu 26-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +/* +@interface LibraryStore (GPGMail) + +//- (id)MASnippetsForMessages:(id)messages; + +@end +*/ diff --git a/Source/LibraryStore+GPGMail.m b/Source/LibraryStore+GPGMail.m new file mode 100644 index 00000000..f87d5327 --- /dev/null +++ b/Source/LibraryStore+GPGMail.m @@ -0,0 +1,90 @@ +/* LibraryStore+GPGMail.m created by Lukas Pitschl (@lukele) on Thu 26-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import +#import "NSObject+LPDynamicIvars.h" +#import "NSData+GPGMail.h" +#import "Message+GPGMail.h" +#import "LibraryStore+GPGMail.h" + +//@implementation LibraryStore (GPGMail) + +/** + Whenever a list of messages is supposed to be displayed, + the library store is checked for already available snippets. + + A dictionary is returned which contains the snippet for every message + a snippet is available already. + For every message from the original list not included in the returned + dictionary, the snippet is re-created. + + In case of S/MIME encrypted messages, the message is not included in the dictionary, + which forces the snippet to be re-created. The re-creation process decrypts the + message and correctly returns a snippet for the decrypted message body. + + In case of PGP encrypted messages, Mail.app includes them in the returned dictionary. + To force the re-creation of a snippet from the decrypted message body, each message + is checked for PGP data and if found, it's removed from the dictionary. + + And voila! + + P.S.: This fixed the snippet generation, but somehow something I changed apparently made this unnecessary... + Let's see what others report. + + */ +//- (id)MASnippetsForMessages:(id)messages { +// // This seems to be the best place to remove the additional attachments, +// // since it's called whenever the user selects another mailbox. decodeWithContext is too late. +// // This might be heavy, but the information should be cached, so theoretically no biggy. +// id ret = [self MASnippetsForMessages:messages]; +// +// if(ret) { +// CFMutableDictionaryRef snippetDictionaryRef = CFDictionaryCreateMutableCopy(NULL, 0, (CFDictionaryRef)ret); +// NSMutableDictionary *snippetDictionary = (NSMutableDictionary *)snippetDictionaryRef; +// NSLog(@"Return dict: %@", ret); +// for(id key in ret) { +// NSData *bodyData = [(Message *)key bodyDataFetchIfNotAvailable:YES allowPartial:NO]; +// BOOL containsPGPData = [bodyData rangeOfPGPInlineEncryptedData].location != NSNotFound || +// [bodyData rangeOfPGPSignatures].location != NSNotFound; +// +// +// if(containsPGPData) { +// // Check if the message was not processed. +// if(![key ivarExists:@"PGPMessageProcessed"]) +// [snippetDictionary removeObjectForKey:key]; +// } +// } +// ret = [snippetDictionary autorelease]; +// } +// +// return ret; +//} + +//@end diff --git a/Source/MCMessageGenerator+GPGMail.h b/Source/MCMessageGenerator+GPGMail.h new file mode 100644 index 00000000..3c3b1547 --- /dev/null +++ b/Source/MCMessageGenerator+GPGMail.h @@ -0,0 +1,40 @@ +/* MCMessageGenerator+GPGMail.h created by Lukas Pitschl (@lukele) on Sat 04-Oct-2014 */ + +/* + * Copyright (c) 2000-2014, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface MCMessageGenerator_GPGMail : NSObject + +/** + MailTags seems to duplicate headers when a draft is being created that is supposed to be encrypted. + In order to work around this bug and remove the second set of headers, we hook into newDataForMimePart. + */ +- (id)MA_newDataForMimePart:(id)mimePart withPartData:(id)partData NS_RETURNS_RETAINED; + +@end diff --git a/Source/MCMessageGenerator+GPGMail.m b/Source/MCMessageGenerator+GPGMail.m new file mode 100644 index 00000000..56d504db --- /dev/null +++ b/Source/MCMessageGenerator+GPGMail.m @@ -0,0 +1,82 @@ +/* MCMessageGenerator+GPGMail.m created by Lukas Pitschl (@lukele) on Sat 04-Oct-2014 */ + +/* + * Copyright (c) 2000-2014, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "MCMessageGenerator+GPGMail.h" +#import "MCMessageGenerator.h" +#import "MimePart.h" +#import "NSObject+LPDynamicIvars.h" + +@implementation MCMessageGenerator_GPGMail + +- (id)MA_newDataForMimePart:(id)mimePart withPartData:(id)partData NS_RETURNS_RETAINED { + // MailTags likes to duplicate the headers of the mime part for some reason. + // It looks like it's easily detectable by checking for the header and body separator \n\n. + // If we find two header separators and the two headers look exactly the same, + // we can assume that a duplicate header was added and will remove the first one. + // + // It's crucial that the first two part headers are identical, otherwise we're simply dealing + // with a normal multipart message and would remove too many headers and thus mangle the original + // message. + + NSData *newData = [self MA_newDataForMimePart:mimePart withPartData:partData]; + // If MailTags is not installed, let's get out of here. + if(NSClassFromString(@"MailTagsBundle") == nil) + return newData; + // The bug has only been seen in combinations with encryted drafts yet, so in any other case, + // we'll just call into the original method and return the result. + if([mimePart parentPart] || ![[self getIvar:@"IsDraft"] boolValue] || !(BOOL)[(GM_CAST_CLASS(MCMessageGenerator *, id))self encryptsOutput]) + return newData; + + [self removeIvar:@"IsDraft"]; + + NSData *NL = [@"\n\n" dataUsingEncoding:NSUTF8StringEncoding]; + + NSUInteger messageSeparatorsFound = 0; + NSData *firstHeader, *secondHeader = nil; + NSRange firstHeaderEndRange = [newData rangeOfData:NL options:0 range:NSMakeRange(0, [newData length])]; + // One header separator is found. Expected, so on to the next check. + if(firstHeaderEndRange.location != NSNotFound) { + // The first header is found between location 0 and the first occurence of \n\n which is firstHeaderEndRange.location + firstHeader = [newData subdataWithRange:NSMakeRange(0, firstHeaderEndRange.location)]; + messageSeparatorsFound++; + NSRange secondHeaderEndRange = [newData rangeOfData:NL options:0 range:NSMakeRange(firstHeaderEndRange.location + firstHeaderEndRange.length, [newData length] - firstHeaderEndRange.location - firstHeaderEndRange.length)]; + // Oh oh, a second one has been found. + if(secondHeaderEndRange.location != NSNotFound) { + // The second header is found between firstHeaderEndRange.location + firstHeaderEndRange.length and spreads until secondHeaderEndRange.location. + secondHeader = [newData subdataWithRange:NSMakeRange(firstHeaderEndRange.location + firstHeaderEndRange.length, secondHeaderEndRange.location - (firstHeaderEndRange.location + firstHeaderEndRange.length))]; + messageSeparatorsFound++; + } + } + // Two header separators and the headers are equal? Let's only keep the data after the first one. + if(messageSeparatorsFound > 1 && [firstHeader isEqualToData:secondHeader]) + newData = [newData subdataWithRange:NSMakeRange(firstHeaderEndRange.location + firstHeaderEndRange.length, [newData length] - firstHeaderEndRange.location - firstHeaderEndRange.length)]; + return newData; +} + +@end diff --git a/Source/MMStopwatch.h b/Source/MMStopwatch.h new file mode 100644 index 00000000..8f07eeca --- /dev/null +++ b/Source/MMStopwatch.h @@ -0,0 +1,45 @@ +// +// MMStopwatch.h +// MBMLibrary +// +// Created by Matt Maher on 1/24/12. +// Copyright (c) 2012 FedEx. All rights reserved. +// + +#import +// - - - - - - - - - - - - - - - - - - - +@interface MMStopwatch : NSObject { + @private + NSMutableDictionary *items; + +} ++ (void) start:(NSString *)name; ++ (void) stop:(NSString *)name; ++ (void) print:(NSString *)name; +@end + + +// - - - - - - - - - - - - - - - - - - - +@interface MMStopwatchItem : NSObject { + @private + NSString *name; + NSDate *started; + NSDate *stopped; +} +@property (nonatomic, strong) NSString *name; +@property (nonatomic, strong) NSDate *started; +@property (nonatomic, strong) NSDate *stopped; + + ++ (MMStopwatchItem *) itemWithName:(NSString *)name; + +- (void) stop; + +- (NSTimeInterval) runtime; +- (double) runtimeMills; +- (NSString *) fullDescription; +- (NSString *) runtimePretty; +@end + + + diff --git a/Source/MMStopwatch.m b/Source/MMStopwatch.m new file mode 100644 index 00000000..e94c9864 --- /dev/null +++ b/Source/MMStopwatch.m @@ -0,0 +1,217 @@ +// +// MMStopwatch.m +// MBMLibrary +// +// Created by Matt Maher on 1/24/12. +// Copyright (c) 2012 FedEx. All rights reserved. +// + +#import "MMStopwatch.h" + + + + +// + - + - + - + - + - + - + - + - + - + - + - + - + - +#pragma mark - +#pragma mark MMStopwatch +#pragma mark - +// + - + - + - + - + - + - + - + - + - + - + - + - + - +// =================[ PRIVATE ]================================== +@interface MMStopwatch () ++ (id) sharedInstance; +- (MMStopwatchItem *) get:(NSString *)name; +- (void) add:(NSString *)name; +- (void) remove:(NSString *)name; +@end +// ============================================================== +@implementation MMStopwatch +- (void)dealloc { + [items removeAllObjects]; +} ++ (void) start:(NSString *)name { + [(MMStopwatch *)[MMStopwatch sharedInstance] add:name]; +} ++ (void) stop:(NSString *)name { + MMStopwatchItem *item = [[MMStopwatch sharedInstance] get:name]; + [item stop]; + [self print:name]; +} ++ (void) print:(NSString *)name { + MMStopwatchItem *item = [[MMStopwatch sharedInstance] get:name]; + if (item) { + if (item.stopped) { + NSLog(@"%@", item); + } + + else { + NSLog(@"%@ (running)", item); + } + } + + else { + NSLog(@"No stopwatch named [%@] found", name); + } +} + + +// ---------------------- +// INTERNALS +// ---------------------- +- (MMStopwatchItem *) get:(NSString *)name { + // bail + if ( ! name) { + return nil; + } + return (MMStopwatchItem *)[items objectForKey:name]; +} +- (void) remove:(NSString *)name { + // bail + if ( ! name) { + return; + } + [items removeObjectForKey:name]; +} +- (void) add:(NSString *)name { + // bail + if ( ! name) { + return; + } + + [self remove:name]; + [items setObject:[MMStopwatchItem itemWithName:name] forKey:name]; +} + + + + + +// + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +#pragma mark - +#pragma mark SINGLETON PATTERN +#pragma mark - +// + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +- (id)init { + self = [super init]; + if (self) { + items = [[NSMutableDictionary alloc] init]; + } + return self; +} +static id _sharedSingleton = nil; ++ (id) sharedInstance { + + // return before any locking .. should perform better + if (_sharedSingleton) + return _sharedSingleton; + + // THREAD SAFTEY + @synchronized(self) { + if ( ! _sharedSingleton) { + _sharedSingleton = [[self alloc] init]; + } + } + return _sharedSingleton; +} ++ (id) alloc { + NSAssert(_sharedSingleton == nil, @"Attempted to allocate a second instance of a singleton."); + return [super alloc]; +} + +@end + + + + + + + + + + + + + +// + - + - + - + - + - + - + - + - + - + - + - + - + - +#pragma mark - +#pragma mark MMStopwatchItem +#pragma mark - +// + - + - + - + - + - + - + - + - + - + - + - + - + - +@implementation MMStopwatchItem + +@synthesize name; +@synthesize started; +@synthesize stopped; ++ (MMStopwatchItem *) itemWithName:(NSString *)name { + MMStopwatchItem *item = [[MMStopwatchItem alloc] init]; + item.name = name; + item.started = [NSDate date]; + return item; +} +- (void) stop { + self.stopped = [NSDate date]; +} +- (NSString *) description { + NSMutableString *outString = [[NSMutableString alloc] init]; + [outString appendFormat:@"Stopwatch: [%@] runtime: [%@]", name, [self runtimePretty]]; + return outString; +} +- (NSString *) fullDescription { + NSMutableString *outString = [[NSMutableString alloc] init]; + [outString appendFormat:@"Stopwatch: [%@]\n", name]; + [outString appendFormat:@" started: [%@]\n", started]; + [outString appendFormat:@" stopped: [%@]\n", stopped]; + [outString appendString:@" --------\n"]; + [outString appendFormat:@" runtime: [%@]\n", [self runtimePretty]]; + return outString; +} +- (double) runtimeMills { + return [self runtime] * 1000.0; +} +- (NSTimeInterval) runtime { + // never started + if ( ! started) { + return 0.0; + } + + // not yet stopped + if ( ! stopped) { + return [started timeIntervalSinceNow] * -1; + } + + // start to stop time + return [started timeIntervalSinceDate:stopped] * -1; +} +- (NSString *) runtimePretty { + + double secsRem = [self runtime]; + + // 3600 seconds in an hour + + int hours = (int)(secsRem / 3600); + secsRem = secsRem - (hours * 3600); + int mins = (int)(secsRem / 60); + secsRem = secsRem - (mins * 60); + + if (hours > 0) { + return [NSString stringWithFormat:@"%d:%d:%f", hours, mins, secsRem]; + } + + if (mins > 0) { + return [NSString stringWithFormat:@"%d:%f", mins, secsRem]; + } + + return [NSString stringWithFormat:@"%f", secsRem]; +} +@end + + + + + + + + + + + + diff --git a/Source/MailAccount+GPGMail.h b/Source/MailAccount+GPGMail.h new file mode 100644 index 00000000..227135ea --- /dev/null +++ b/Source/MailAccount+GPGMail.h @@ -0,0 +1,46 @@ +/* MailAccount+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface MailAccount_GPGMail : NSObject + +/** + This method decides whether or not the security view, being + the sign and encrypt buttons in the mail compose view are displayed. + + Mail.app's implementation calls the MFKeychainManager method + canSignMessagesFromAddress: to determine whether or not there's an account + available which can be used for signing. + If GPGMail is installed, the security view of course should always be displayed, + so it's necessary for this method to always return true. + */ ++ (BOOL)MAAccountExistsForSigning; + +@end diff --git a/Source/MailAccount+GPGMail.m b/Source/MailAccount+GPGMail.m new file mode 100644 index 00000000..268d9391 --- /dev/null +++ b/Source/MailAccount+GPGMail.m @@ -0,0 +1,95 @@ +/* MailAccount+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import "MailAccount+GPGMail.h" +#import "GPGMailBundle.h" +#import +#import "MessageRouter+GPGMail.h" +#import "GMCodeInjector.h" + + +static NSString *GPGMailSwizzledMethodPrefix = @"MA"; + +@implementation MailAccount_GPGMail + ++ (BOOL)MAAccountExistsForSigning { + BOOL PGPAccountExistsForSigning = ((GPGMailBundle *)[GPGMailBundle sharedInstance]).accountExistsForSigning; + if(PGPAccountExistsForSigning) + return YES; + + return [self MAAccountExistsForSigning]; +} + + ++(void)MACompleteDeferredAccountInitialization{ + /* + * MFMessageRouter will load rules in its +initialization method -- which is inadvertently called during injection. + * Because Rules often include mailbox information this try to load mailboxes prior to accounts being loaded, leading + * to undetermined effects. + * + * A further conflict occur with MailTags because MailTags will swizzle the loading of rules and a deadlock may occur + * ( a race condition as far as I can tell ) + * + * The resolution to this situation is to defer code injection until after Account initialization is complete. + * When GPGMail is loaded, it swizzles the completeDeferredAccountInitialization -- which then performs the + * injection for MessageRouter methods + * + */ + + [self MACompleteDeferredAccountInitialization]; + + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + if (![GPGMailBundle isElCapitan]) { + NSString *messageRouterClassName = nil; + if (NSClassFromString(@"MessageRouter")) { + messageRouterClassName = @"MessageRouter"; + } + else if (NSClassFromString(@"MFMessageRouter")) { + messageRouterClassName = @"MFMessageRouter"; + } + // No MessageRouter class available? bail out. + if(!messageRouterClassName) { + return; + } + + NSDictionary * deferredHooks = @{ + messageRouterClassName: @[ + @"putRulesThatWantsToHandleMessage:intoArray:colorRulesOnly:" + ] + }; + [GMCodeInjector injectUsingMethodPrefix:GPGMailSwizzledMethodPrefix hooks:deferredHooks]; + + } + }); + +} + +@end diff --git a/Source/MailDocumentEditor+GPGMail.h b/Source/MailDocumentEditor+GPGMail.h new file mode 100644 index 00000000..281f7650 --- /dev/null +++ b/Source/MailDocumentEditor+GPGMail.h @@ -0,0 +1,98 @@ +/* MailDocumentEditor+GPGMail.h re-created by Lukas Pitschl (@lukele) on Sat 27-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "GMSecurityMethodAccessoryView.h" +#import "ComposeBackEnd+GPGMail.h" + +@interface MailDocumentEditor_GPGMail : NSObject + +/** + Is called if the user exits fullscreen. + Calls the method to re-configure the security method accessory view for normal mode. + */ +- (void)didExitFullScreen:(NSNotification *)notification; + +/** + Re-configures the security method accessory view for normal mode. + */ +- (void)configureSecurityMethodAccessoryViewForNormalMode; + +/** + The backend calls this method from setSignIfPossible and setEncryptIfPossible + to reflect the chosen security method and sign and encrypt status. + + Updates the security method accessory view, the sender selector to add + additional keys for OpenPGP if necessary. + */ +- (void)updateSecurityMethodHighlight; + +/** + Updates the security method accessory view to show the new security method. + YEAH, this doesn't make sense. Let's investigate! + */ +- (void)updateSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod; + +/** + Is injected to setup notifications and security method accessory view + once the document editor almost finished loading. + */ +- (void)MABackEndDidLoadInitialContent:(id)content; + +/** + Setup the security method accessory view and add it to the theme frame. + */ +- (void)setupSecurityMethodHintAccessoryView; + +/** + Called from NSWindow toggleFullScreen: to hide the accessory view. + */ +- (void)hideSecurityMethodAccessoryView; + +/** + Delegate method which is used by the security method accessory view to inform + the delegate that the user changed the security method. + */ +- (void)securityMethodAccessoryView:(GMSecurityMethodAccessoryView *)accessoryView didChangeSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod; + +/** + Inject to un-observe any notifications. + */ +- (void)MADealloc; + +- (void)_updateSecurityControls; + +@property (nonatomic, retain) GMSecurityMethodAccessoryView *securityMethodAccessoryView; + +@end + +@interface MailDocumentEditor_GPGMail (NotImplemented) + +- (id)delegate; + +@end diff --git a/Source/MailDocumentEditor+GPGMail.m b/Source/MailDocumentEditor+GPGMail.m new file mode 100644 index 00000000..084a8318 --- /dev/null +++ b/Source/MailDocumentEditor+GPGMail.m @@ -0,0 +1,373 @@ +/* MailDocumentEditor+GPGMail.m re-created by Lukas Pitschl (@lukele) on Sat 27-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import "NSObject+LPDynamicIvars.h" +#import +#import +#import "ComposeBackEnd.h" +#import +#import +#import "GMSecurityMethodAccessoryView.h" +#import "NSWindow+GPGMail.h" +#import "Message+GPGMail.h" +#import "HeadersEditor+GPGMail.h" +#import "MailDocumentEditor+GPGMail.h" +#import "ComposeBackEnd+GPGMail.h" +#import "GPGMailBundle.h" +#import +#import "ComposeWindowController+GPGMail.h" +#import "ComposeViewController.h" +#import "ComposeWindowController.h" + +static const NSString *kUnencryptedReplyToEncryptedMessage = @"unencryptedReplyToEncryptedMessage"; + +@implementation MailDocumentEditor_GPGMail + +- (id)MAInitWithBackEnd:(id)backEnd { + /* On Yosemite, when Mail is invoked from an AppleScript the backEnd is not fully initiated at the time when the security properties queue is first used. + This method however is called in between, so it makes sense to setup the queue in here, if it's not already setup. + -[GPGMail_ComposeBackEnd setupSecurityPropertiesQueues] takes care of checking whether the queue needs + to be setup, so there's no need to perform a check here. + */ + [backEnd setupSecurityPropertiesQueue]; + + return [self MAInitWithBackEnd:backEnd]; +} + +- (void)didExitFullScreen:(NSNotification *)notification { + [self performSelectorOnMainThread:@selector(configureSecurityMethodAccessoryViewForNormalMode) withObject:nil waitUntilDone:NO]; +} + +- (void)configureSecurityMethodAccessoryViewForNormalMode { + GMSecurityMethodAccessoryView *accessoryView = [self securityMethodAccessoryView]; //[self getIvar:@"SecurityMethodHintAccessoryView"]; + [accessoryView configureForWindow:[self valueForKey:@"_window"]]; +} + +- (void)setSecurityMethodAccessoryView:(GMSecurityMethodAccessoryView *)securityMethodAccessoryView { + [self setIvar:@"SecurityMethodAccessoryView" value:securityMethodAccessoryView]; +} + +- (GMSecurityMethodAccessoryView *)securityMethodAccessoryView { + if([GPGMailBundle isElCapitan]) { + return (GMSecurityMethodAccessoryView *)[(NSObject *)[[((MailDocumentEditor *)self) window] delegate] getIvar:@"SecurityMethodAccessoryView"]; + } + else { + return (GMSecurityMethodAccessoryView *)[self getIvar:@"SecurityMethodAccessoryView"]; + } +} + +- (void)updateSecurityMethodHighlight { + GMSecurityMethodAccessoryView *accessoryView = [self securityMethodAccessoryView]; + ComposeBackEnd *backEnd = ((MailDocumentEditor *)self).backEnd; + NSDictionary *securityProperties = ((ComposeBackEnd_GPGMail *)backEnd).securityProperties; + + GPGMAIL_SECURITY_METHOD oldSecurityMethod = accessoryView.securityMethod; + + BOOL shouldEncrypt = [securityProperties[@"shouldEncrypt"] boolValue]; + BOOL shouldSign = [securityProperties[@"shouldSign"] boolValue]; + BOOL shouldSymmetric = [securityProperties[@"shouldSymmetric"] boolValue]; + + GPGMAIL_SECURITY_METHOD securityMethod = ((ComposeBackEnd_GPGMail *)backEnd).guessedSecurityMethod; + if(((ComposeBackEnd_GPGMail *)backEnd).securityMethod) + securityMethod = ((ComposeBackEnd_GPGMail *)backEnd).securityMethod; + + accessoryView.securityMethod = securityMethod; + + if(shouldEncrypt || shouldSign || (shouldSymmetric && securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP)) + accessoryView.active = YES; + else + accessoryView.active = NO; + + if(oldSecurityMethod != securityMethod) + [[((MailDocumentEditor *)self) headersEditor] updateFromAndAddSecretKeysIfNecessary:@(securityMethod == GPGMAIL_SECURITY_METHOD_OPENPGP ? YES : NO)]; +} + +- (void)updateSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod { + GMSecurityMethodAccessoryView *accessoryView = [self securityMethodAccessoryView]; + accessoryView.securityMethod = securityMethod; +} + +- (void)MABackEndDidLoadInitialContent:(id)content { + if(![GPGMailBundle isElCapitan]) { + [(NSNotificationCenter *)[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didExitFullScreen:) name:@"NSWindowDidExitFullScreenNotification" object:nil]; + } + + // Setup security method hint accessory view in top right corner of the window. + [self setupSecurityMethodHintAccessoryView]; + + GPGMAIL_SECURITY_METHOD securityMethod = ((ComposeBackEnd_GPGMail *)((MailDocumentEditor *)self).backEnd).guessedSecurityMethod; + if(((ComposeBackEnd_GPGMail *)((MailDocumentEditor *)self).backEnd).securityMethod) + securityMethod = ((ComposeBackEnd_GPGMail *)((MailDocumentEditor *)self).backEnd).securityMethod; + [self updateSecurityMethod:securityMethod]; + [self MABackEndDidLoadInitialContent:content]; + // Set backend was initialized, so securityMethod changes will start to send notifications. + ((ComposeBackEnd_GPGMail *)((MailDocumentEditor *)self).backEnd).wasInitialized = YES; +} + +- (void)setupSecurityMethodHintAccessoryView { + // On El Capitan there's no more space on top of the title bar, so + // the security method accessory view is inserted as toolbar item in + // -[ComposeViewController toolbar:itemForItemIdentifier:willBeInsertedIntoToolbar:] + GMSecurityMethodAccessoryView *accessoryView = nil; + if([GPGMailBundle isElCapitan]) { + accessoryView = [self securityMethodAccessoryView]; + } + else { + accessoryView = [[GMSecurityMethodAccessoryView alloc] init]; + } + accessoryView.delegate = self; + + if(![GPGMailBundle isElCapitan]) { + NSWindow *window = [self valueForKey:@"_window"]; + + if([NSApp mainWindow].styleMask & NSFullScreenWindowMask) // Only check the mein window to detect fullscreen. + [accessoryView configureForFullScreenWindow:window]; + else + [accessoryView configureForWindow:window]; + [self setSecurityMethodAccessoryView:accessoryView]; + } +} + +- (void)hideSecurityMethodAccessoryView { + GMSecurityMethodAccessoryView *accessoryView = [self securityMethodAccessoryView]; //[self getIvar:@"SecurityMethodHintAccessoryView"]; + accessoryView.hidden = YES; +} + +- (void)securityMethodAccessoryView:(GMSecurityMethodAccessoryView *)accessoryView didChangeSecurityMethod:(GPGMAIL_SECURITY_METHOD)securityMethod { + ((ComposeBackEnd_GPGMail *)((MailDocumentEditor *)self).backEnd).securityMethod = securityMethod; + ((ComposeBackEnd_GPGMail *)((MailDocumentEditor *)self).backEnd).userDidChooseSecurityMethod = YES; + if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_9) { + [[(MailDocumentEditor *)self headersEditor] _updateSecurityControls]; + } + else { + [[(MailDocumentEditor *)self headersEditor] updateSecurityControls]; + } + +} + +- (void)MADealloc { + // Sometimes this fails, so simply ignore it. + @try { + [(NSNotificationCenter *)[NSNotificationCenter defaultCenter] removeObserver:self]; + [(MailNotificationCenter *)[NSClassFromString(@"MailNotificationCenter") defaultCenter] removeObserver:self]; + } + @catch(NSException *e) { + + } + [self MADealloc]; +} + +- (BOOL)isUnencryptedReplyToEncryptedMessageWithChecklist:(NSMutableArray *)checklist { + // While Mail.app internally removes objects from the checklist, we instead add one + // if the user explicitly told us to continue with sending. + // We have to handle it this way, since sendMessageAfterChecking is called for each failing + // check and we can't determine which one is the first call, to correctly add our own item to the checklist, + // and later remove it, when the check has cleared. + // So instead we add an item. + + // If there is no checklist, we have nothing to check. + // If we would still check, we head an infinite loop. + if (!checklist) { + return NO; + } + + + ComposeBackEnd *backEnd = (ComposeBackEnd *)[(MailDocumentEditor *)self backEnd]; + NSDictionary *securityProperties = [(ComposeBackEnd_GPGMail *)backEnd securityProperties]; + + BOOL isReply = [(ComposeBackEnd_GPGMail *)backEnd messageIsBeingReplied]; + BOOL originalMessageIsEncrypted = ((Message_GPGMail *)[backEnd originalMessage]).PGPEncrypted; + BOOL replyShouldBeEncrypted = [(ComposeBackEnd_GPGMail *)[(MailDocumentEditor *)self backEnd] GMEncryptIfPossible] && [securityProperties[@"shouldEncrypt"] boolValue]; + + // If checklist contains the unencryptedReplyToEncryptedMessage item, it means + // that the user decided to send the message regardless of our warning. + if(isReply && originalMessageIsEncrypted && !replyShouldBeEncrypted && ![checklist containsObject:kUnencryptedReplyToEncryptedMessage]) { + // Warn the user. + return YES; + } + + // Isn't a un-encrypted reply to an encrypted message or + // the user decided to send the message regardless of our warning + return NO; +} + +- (void)displayWarningForUnencryptedReplyToEncryptedMessageUpdatingChecklist:(NSMutableArray *)checklist { + NSArray *recipientsMissingCertificates = [(ComposeBackEnd *)[(MailDocumentEditor *)self backEnd] recipientsThatHaveNoKeyForEncryption]; + + NSMutableString *recipientWarning = [NSMutableString new]; + for(NSString *recipient in recipientsMissingCertificates) { + [recipientWarning appendFormat:@"- %@\n", recipient]; + } + + NSMutableString *explanation = [NSMutableString new]; + if([recipientsMissingCertificates count]) { + NSString *missingKeysString = [GPGMailBundle localizedStringForKey:@"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS"]; + if([recipientsMissingCertificates count] == 1) + missingKeysString = [GPGMailBundle localizedStringForKey:@"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_MISSING_KEYS_SINGULAR"]; + [explanation appendFormat:@"%@\n", [NSString stringWithFormat:missingKeysString, recipientWarning]]; + } + + [explanation appendString:[GPGMailBundle localizedStringForKey:@"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_EXPLANATION"]]; + + NSMutableString *solutionProposals = [NSMutableString new]; + [solutionProposals appendString:[GPGMailBundle localizedStringForKey:@"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_REMOVE_PREVIOUS_CORRESPONDENCE"]]; + + if([recipientsMissingCertificates count]) { + [solutionProposals appendString:@"\n"]; + if([recipientsMissingCertificates count] == 1) + [solutionProposals appendString:[GPGMailBundle localizedStringForKey:@"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS_SINGULAR"]]; + else + [solutionProposals appendString:[GPGMailBundle localizedStringForKey:@"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_SOLUTION_IMPORT_KEYS"]]; + } + [explanation appendString:solutionProposals]; + [explanation appendString:@"\n"]; + + NSAlert *unencryptedReplyAlert = [NSAlert new]; + [unencryptedReplyAlert setMessageText:[GPGMailBundle localizedStringForKey:@"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE"]]; + [unencryptedReplyAlert setInformativeText:explanation]; + [unencryptedReplyAlert addButtonWithTitle:[GPGMailBundle localizedStringForKey:@"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL"]]; + [unencryptedReplyAlert addButtonWithTitle:[GPGMailBundle localizedStringForKey:@"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY"]]; + [unencryptedReplyAlert setIcon:[NSImage imageNamed:@"GPGMail"]]; + + // On Mavericks and later we can use, beginSheetModalForWindow:. + // Before that, we have to use NSBeginAlertSheet. + if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_8) { + id __weak weakSelf = self; + [unencryptedReplyAlert beginSheetModalForWindow:[(DocumentEditor *)self window] completionHandler:^(NSModalResponse returnCode) { + id __strong strongSelf = weakSelf; + + if(returnCode == NSAlertSecondButtonReturn) { + // The user pressed send anyway, so add the kUnencryptedReplyToEncryptedMessage item + // to the checklist, so the next time around sendMessageAfterChecking: is called, + // we no longer check if the message is sent unencrypted. + [checklist addObject:kUnencryptedReplyToEncryptedMessage]; + [strongSelf sendMessageAfterChecking:checklist]; + } + else { + // Seems not to be necessary on El Capitan. + if(![GPGMailBundle isElCapitan]) { + [[strongSelf headersEditor] setAGoodFirstResponder]; + } + + } + }]; + } + else { + NSDictionary *contextInfo = @{@"ThingsToCheck": checklist}; + NSBeginAlertSheet([GPGMailBundle localizedStringForKey:@"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_TITLE"], [GPGMailBundle localizedStringForKey:@"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_CANCEL"], [GPGMailBundle localizedStringForKey:@"UNENCRYPTED_REPLY_TO_ENCRYPTED_MESSAGE_BUTTON_SEND_ANYWAY"], nil, [(MailDocumentEditor *)self window], self, nil, @selector(warnAboutUnecryptedReplySheetClosed:returnCode:contextInfo:), (__bridge_retained void *)contextInfo, @"%@", explanation); + } +} + +- (void)warnAboutUnecryptedReplySheetClosed:(NSWindow *)sheet returnCode:(long long)returnCode contextInfo:(void *)contextInfo { + NSDictionary *_contextInfo = (__bridge_transfer NSDictionary *)contextInfo; + if(returnCode == NSAlertAlternateReturn) { + NSMutableArray *checklist = _contextInfo[@"ThingsToCheck"]; + [checklist addObject:kUnencryptedReplyToEncryptedMessage]; + [(MailDocumentEditor *)self sendMessageAfterChecking:checklist]; + } +} + + +- (void)MASendMessageAfterChecking:(NSMutableArray *)checklist { + // If this is an unencrypted reply to an encrypted message, display a warning + // to the user and simply return. The message won't be sent until the checklist is cleared. + // Otherwise call sendMessageAfterChecking so that Mail.app can perform its internal checks. + if([self isUnencryptedReplyToEncryptedMessageWithChecklist:checklist]) { + [self displayWarningForUnencryptedReplyToEncryptedMessageUpdatingChecklist:checklist]; + return; + } + + [self MASendMessageAfterChecking:checklist]; +} + +- (void)restoreComposerView { + ComposeBackEnd *backEnd = ((MailDocumentEditor *)self).backEnd; + [backEnd setIsDeliveringMessage:NO]; + [(ComposeWindowController_GPGMail *)[self delegate] restorePositionBeforeAnimation]; + + ComposeWindowController *windowController = [self delegate]; + ComposeViewController *viewController = (id)[windowController contentViewController]; + HeadersEditor *editor = [viewController valueForKey:@"headersEditor"]; + [editor setValue:viewController forKey:@"composeViewController"]; +} + +- (BOOL)backEnd:(id)backEnd handleDeliveryError:(MFError *)error { + + NSNumber *errorCode = ((NSDictionary *)error.userInfo)[@"GPGErrorCode"]; + // If the pinentry dialog was cancelled, there's no need to show any error. + // Simply let the user continue editing. + if(errorCode && [errorCode integerValue] == GPGErrorCancelled) { + if([GPGMailBundle isElCapitan]) { + // Cancel the send animation, the window is gone and can't be restored. + [(ComposeWindowController_GPGMail *)[self delegate] cancelSendAnimation]; + } + return NO; + } + + return YES; +} + +- (void)MABackEnd:(id)backEnd didCancelMessageDeliveryForEncryptionError:(MFError *)error { + if([self backEnd:backEnd handleDeliveryError:error]) + [self MABackEnd:backEnd didCancelMessageDeliveryForEncryptionError:error]; + + if([GPGMailBundle isElCapitan]) + [self restoreComposerView]; +} + +- (void)MABackEnd:(id)backEnd didCancelMessageDeliveryForError:(MFError *)error { + if([self backEnd:backEnd handleDeliveryError:error]) + [self MABackEnd:backEnd didCancelMessageDeliveryForEncryptionError:error]; + + if([GPGMailBundle isElCapitan]) + [self restoreComposerView]; +} + +- (void)MABackEndDidAppendMessageToOutbox:(id)backEnd result:(long long)result { + [self MABackEndDidAppendMessageToOutbox:backEnd result:result]; + // If result == 3 the message was successfully sent, and now it's time to really dismiss the tab, + // in order to free the resources, Mail wanted to free as soon as it started the send animation. + // Unfortunately, if let it do that at the point of the send animation, there's no way we could + // display an error. + if(result == 3) { + [self setIvar:@"GMAllowReleaseOfTabBarViewItem" value:@(YES)]; + [[self delegate] composeViewControllerDidSend:self]; + [self removeIvar:@"GMAllowReleaseOfTabBarViewItem"]; + } +} + +- (void)MASetDelegate:(id)delegate { + [self MASetDelegate:delegate]; + // Store the delegate as associated object, otherwise Mail.app releases it to soon (when performing the send animation.)! + // Will be automatically released, when the ComposeViewController is released. + [self setIvar:@"GMDelegate" value:delegate]; +} + +@end diff --git a/Source/MailToolbar+GPGMail.h b/Source/MailToolbar+GPGMail.h new file mode 100644 index 00000000..1a00e4af --- /dev/null +++ b/Source/MailToolbar+GPGMail.h @@ -0,0 +1,34 @@ +/* MailToolbar+GPGMail.h created by Lukas Pitschl on Tue 22-09-2015 */ + +/* + * Copyright (c) 2000-2015, GPGTools + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface MailToolbar_GPGMail : NSObject + +@end diff --git a/Source/MailToolbar+GPGMail.m b/Source/MailToolbar+GPGMail.m new file mode 100644 index 00000000..a2fd7a0c --- /dev/null +++ b/Source/MailToolbar+GPGMail.m @@ -0,0 +1,48 @@ +/* MailToolbar+GPGMail.m created by Lukas Pitschl on Tue 22-09-2015 */ + +/* + * Copyright (c) 2000-2015, GPGTools + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "MailToolbar+GPGMail.h" + +@implementation MailToolbar_GPGMail + ++ (id)MA_plistForToolbarWithIdentifier:(id)arg1 { + id ret = [self MA_plistForToolbarWithIdentifier:arg1]; + + if(![arg1 isEqualToString:@"ComposeWindow"]) + return ret; + + NSMutableDictionary *configuration = [ret mutableCopy]; + NSMutableArray *defaultSet = [configuration[@"default set"] mutableCopy]; + [defaultSet addObject:@"toggleSecurityMethod:"]; + [configuration setObject:defaultSet forKey:@"default set"]; + + return configuration; +} + +@end diff --git a/Source/Message+GPGMail.h b/Source/Message+GPGMail.h new file mode 100644 index 00000000..5154652d --- /dev/null +++ b/Source/Message+GPGMail.h @@ -0,0 +1,138 @@ +/* Message+GPGMail.m created by Lukas Pitschl (@lukele) on Thu 18-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "MimePart.h" +#import "MimeBody.h" +#import + +@interface Message_GPGMail : NSObject + +/** + Mail.app uses -[Message messageFlags] to gather various internal information + about the message, including whether the email is encrypted and|or + signed. + It's also used to determine whether or not the message error banner + should be displayed in the event that decrypt or verify of a message + fails. + Unfortunately PGP messages are not recognized as signed or encrypted + and hence, the error banner is never shown. + + To fix whenever a PGP encrypted and|or signed message is encountered + a call to this method temporarily adds the signed (0x00800000) and + encrypted bits (0x00000008) to the current flags. + + This way the banner is shown for PGP messages as well, since Mail now believes + this message is indeed encrypted and|or signed. + + N.B.: Previously setIvar was used. messageFlags is called a bazillion times + which caused getIvar to deadlock. DON'T USE setIvar FOR METHODS + which are called very often. + */ + +- (void)fakeMessageFlagsIsEncrypted:(BOOL)isEncrypted isSigned:(BOOL)isSigned; + +- (void)collectPGPInformationStartingWithMimePart:(GM_CAST_CLASS(MimePart *, id))topPart decryptedBody:(GM_CAST_CLASS(MimeBody *, id))decryptedBody; +- (void)clearPGPInformation; + +/** + Determines whetehr or not the message should be processed with PGP operations. + + Always returns false if OpenPGP for reading is disabled in Preferences. + Returns true if the user actively selected the message. + Returns false if the user didn't select the message and NeverCreatePreviewSnippet is set. + + This allows GPGMail to avoid processing every message on startup which leads to + many annoying pinentry password entry dialogs, if the user didn't choose to store + passwords in the keychain. + */ +- (BOOL)shouldBePGPProcessed; + +/** + Determines whether or not the preview snippet for the message should be created. + Always returns true if the Create List Preview preference is set. + Also returns true if the Create List Preview preference is NOT set, BUT the + passphrase for the message is already in cache. + */ +- (BOOL)shouldCreateSnippetWithData:(NSData *)data; + +/** + Checks whether dataSource (10.8) or messageStore (10.7) is available + and calls the correct method. + */ +- (id)dataSourceProxy; + +/** + Returns whether the user did in fact actively select the message or not. + */ +- (BOOL)userDidActivelySelectMessageCheckingMessageOnly:(BOOL)messageOnly; + +@property (assign) BOOL PGPInfoCollected; +@property (assign) BOOL PGPEncrypted; +@property (assign) BOOL PGPPartlyEncrypted; +@property (assign) BOOL PGPSigned; +@property (assign) BOOL PGPPartlySigned; +@property (assign) BOOL PGPDecrypted; +@property (assign) BOOL PGPVerified; +@property (retain) NSArray *PGPSignatures; +@property (retain, readonly) NSArray *PGPSignatureLabels; +@property (retain) NSArray *PGPErrors; +@property (assign) NSUInteger numberOfPGPAttachments; +@property (retain) NSArray *PGPAttachments; + +/** + Check if the message is genereally signed or encrypted, either S/MIME or PGP/MIME + by checking the flags. + */ +@property (assign, readonly) BOOL isSigned; +@property (assign, readonly) BOOL isEncrypted; + +/** + Check if the message is S/MIME signed or encrypted. In case the message is not PGP/MIME + but still encrypted or signed. +*/ +@property (assign, readonly) BOOL isSMIMEEncrypted; +@property (assign, readonly) BOOL isSMIMESigned; + +@end + +@interface Message () +// Prevent instance method not found. +- (id)dataSource; +@end + +@interface Message_GPGMail (MailMethods) + +- (id)subject; +- (id)dataSource; +- (id)messageStore; +- (id)messageBody; +- (id)messageBodyIfAvailable; + +@end + diff --git a/Source/Message+GPGMail.m b/Source/Message+GPGMail.m new file mode 100644 index 00000000..bc06f514 --- /dev/null +++ b/Source/Message+GPGMail.m @@ -0,0 +1,599 @@ +/* Message+GPGMail.m created by Lukas Pitschl (@lukele) on Thu 18-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import +#import "NSObject+LPDynamicIvars.h" +#import "CCLog.h" +#import +#import +#import "LibraryMessage.h" +#import +#import +#import "MFError.h" +#import "MessageRouter.h" +#import "MimePart+GPGMail.h" +#import "Message+GPGMail.h" +#import "GPGMailBundle.h" +#import "NSString+GPGMail.h" +#import "GPGFlaggedString.h" + +@implementation Message_GPGMail + +- (void)fakeMessageFlagsIsEncrypted:(BOOL)isEncrypted isSigned:(BOOL)isSigned { + unsigned int currentMessageFlags = [[self valueForKey:@"_messageFlags"] unsignedIntValue]; + + if(isEncrypted) + currentMessageFlags |= 0x00000008; + if(isSigned) + currentMessageFlags |= 0x00800000; + + [self setValue:[NSNumber numberWithUnsignedInt:currentMessageFlags] forKey:@"_messageFlags"]; +} + +- (BOOL)isSigned { + return ([[self valueForKey:@"_messageFlags"] unsignedIntValue] & 0x00800000) || self.PGPSigned; +} + +- (BOOL)isEncrypted { + return ([[self valueForKey:@"_messageFlags"] unsignedIntValue] & 0x00000008) || self.PGPEncrypted; +} + +- (BOOL)isSMIMESigned { + return ([[self valueForKey:@"_messageFlags"] unsignedIntValue] & 0x00800000) && !self.PGPSigned; +} + +- (BOOL)isSMIMEEncrypted { + return ([[self valueForKey:@"_messageFlags"] unsignedIntValue] & 0x00000008) && !self.PGPEncrypted; +} + +- (void)setPGPEncrypted:(BOOL)isPGPEncrypted { + [self setIvar:@"PGPEncrypted" value:@(isPGPEncrypted)]; +} + +- (BOOL)PGPEncrypted { + NSNumber *isPGPEncrypted = [self getIvar:@"PGPEncrypted"]; + + return [isPGPEncrypted boolValue]; +} + +- (BOOL)PGPSigned { + NSNumber *isPGPSigned = [self getIvar:@"PGPSigned"]; + + return [isPGPSigned boolValue]; +} + +- (void)setPGPSigned:(BOOL)isPGPSigned { + [self setIvar:@"PGPSigned" value:@(isPGPSigned)]; +} + +- (BOOL)PGPPartlyEncrypted { + NSNumber *isPGPEncrypted = [self getIvar:@"PGPPartlyEncrypted"]; + return [isPGPEncrypted boolValue]; +} + + +- (void)setPGPPartlyEncrypted:(BOOL)isPGPEncrypted { + [self setIvar:@"PGPPartlyEncrypted" value:@(isPGPEncrypted)]; +} + +- (BOOL)PGPPartlySigned { + NSNumber *isPGPSigned = [self getIvar:@"PGPPartlySigned"]; + return [isPGPSigned boolValue]; +} + +- (void)setPGPPartlySigned:(BOOL)isPGPSigned { + [self setIvar:@"PGPPartlySigned" value:@(isPGPSigned)]; +} + +- (NSUInteger)numberOfPGPAttachments { + return [[self getIvar:@"PGPNumberOfPGPAttachments"] integerValue]; +} + +- (void)setNumberOfPGPAttachments:(NSUInteger)nr { + [self setIvar:@"PGPNumberOfPGPAttachments" value:@((NSUInteger)nr)]; +} + +- (void)setPGPSignatures:(NSArray *)signatures { + [self setIvar:@"PGPSignatures" value:signatures]; +} + +- (NSArray *)PGPSignatures { + return [self getIvar:@"PGPSignatures"]; +} + +- (void)setPGPErrors:(NSArray *)errors { + [self setIvar:@"PGPErrors" value:errors]; +} + +- (NSArray *)PGPErrors { + return [self getIvar:@"PGPErrors"]; +} + +- (void)setPGPAttachments:(NSArray *)attachments { + [self setIvar:@"PGPAttachments" value:attachments]; +} + +- (NSArray *)PGPAttachments { + return [self getIvar:@"PGPAttachments"]; +} + +- (NSArray *)PGPSignatureLabels { + NSString *senderEmail = [[self valueForKey:@"_sender"] gpgNormalizedEmail]; + + // Check if the signature in the message signers is a GPGSignature, if + // so, copy the email addresses and return them. + NSMutableArray *signerLabels = [NSMutableArray array]; + NSArray *messageSigners = [self PGPSignatures]; + for(GPGSignature *signature in messageSigners) { + // Check with the key manager if an updated key is available for + // this signature, since auto-key-retrieve might have changed it. + GPGKey *newKey = [[GPGMailBundle sharedInstance] keyForFingerprint:signature.fingerprint]; + signature.key = newKey.primaryKey; + NSString *email = signature.email; + if(email) { + // If the sender E-Mail != signature E-Mail, we display the sender E-Mail if possible. + if (![[email gpgNormalizedEmail] isEqualToString:senderEmail]) { + GPGKey *key = signature.key; + for (GPGUserID *userID in key.userIDs) { + if ([[userID.email gpgNormalizedEmail] isEqualToString:senderEmail]) { + email = userID.email; + break; + } + } + } + } else { + // Check if name is available and use that. + if([signature.name length]) + email = signature.name; + else + // For some reason a signature might not have an email set. + // This happens if the public key is not available (not downloaded or imported + // from the signature server yet). In that case, display the user id. + // Also, add an appropriate warning. + email = [NSString stringWithFormat:@"0x%@", [signature.fingerprint shortKeyID]]; + } + [signerLabels addObject:email]; + } + + return signerLabels; +} + +- (BOOL)PGPInfoCollected { + return [[self getIvar:@"PGPInfoCollected"] boolValue]; +} + +- (void)setPGPInfoCollected:(BOOL)infoCollected { + [self setIvar:@"PGPInfoCollected" value:@(infoCollected)]; + // If infoCollected is set to NO, clear all associated info. + if(!infoCollected) + [self clearPGPInformation]; +} + +- (BOOL)PGPDecrypted { + return [[self getIvar:@"PGPDecrypted"] boolValue]; +} + +- (void)setPGPDecrypted:(BOOL)isDecrypted { + [self setIvar:@"PGPDecrypted" value:@(isDecrypted)]; +} + +- (BOOL)PGPVerified { + return [[self getIvar:@"PGPVerified"] boolValue]; +} + +- (void)setPGPVerified:(BOOL)isVerified { + [self setIvar:@"PGPVerified" value:@(isVerified)]; +} + +- (void)collectPGPInformationStartingWithMimePart:(GM_CAST_CLASS(MimePart *, id))topPart decryptedBody:(MimeBody *)decryptedBody { + __block BOOL isEncrypted = NO; + __block BOOL isSigned = NO; + __block BOOL isPartlyEncrypted = NO; + __block BOOL isPartlySigned = NO; + NSMutableArray *errors = [NSMutableArray array]; + NSMutableArray *signatures = [NSMutableArray array]; + NSMutableArray *pgpAttachments = [NSMutableArray array]; + __block BOOL isDecrypted = NO; + __block BOOL isVerified = NO; + __block NSUInteger numberOfAttachments = 0; + // If there's a decrypted message body, its top level part possibly holds information + // about signatures and errors. + // Theoretically it could contain encrypted inline data, signed inline data + // and attachments, but for the time, that's out of scope. + // This information is added to the message. + // + // If there's no decrypted message body, either the message contained + // PGP inline data or failed to decrypt. In either case, the top part + // passed in contains all the information. + //MimePart *informationPart = decryptedBody == nil ? topPart : [decryptedBody topLevelPart]; + [topPart enumerateSubpartsWithBlock:^(GM_CAST_CLASS(MimePart *, id) currentPart) { + // Only set the flags for non attachment parts to support + // plain messages with encrypted/signed attachments. + // Otherwise those would display as signed/encrypted as well. + // application/pgp is a special case since Mail.app identifies it as an attachment, while its + // truly a text/plain part (legacy pgp format) + if([currentPart isAttachment] && ![currentPart isType:@"application" subtype:@"pgp"]) { + if([currentPart PGPAttachment]) + [pgpAttachments addObject:currentPart]; + } + else { + isEncrypted |= [currentPart PGPEncrypted]; + isSigned |= [currentPart PGPSigned]; + isPartlySigned |= [currentPart PGPPartlySigned]; + isPartlyEncrypted |= [currentPart PGPPartlyEncrypted]; + if([currentPart PGPError]) + [errors addObject:[currentPart PGPError]]; + if([[currentPart PGPSignatures] count]) + [signatures addObjectsFromArray:[currentPart PGPSignatures]]; + isDecrypted |= [currentPart PGPDecrypted]; + // encrypted & signed & no error = verified. + // not encrypted & signed & no error = verified. + isVerified |= [currentPart PGPSigned]; + } + + // Count the number of attachments, but ignore signature.asc + // and encrypted.asc files, since those are only PGP/MIME attachments + // and not actual attachments. + // We'll only see those attachments if the + if([currentPart isAttachment]) { + if([currentPart isPGPMimeEncryptedAttachment] || [currentPart isPGPMimeSignatureAttachment]) + return; + else { + numberOfAttachments++; + } + } + }]; + + // This is a normal message, out of here, otherwise + // this might break a lot of stuff. + if(!isSigned && !isEncrypted && ![pgpAttachments count] && ![errors count]) + return; + + if([pgpAttachments count]) { + self.numberOfPGPAttachments = [pgpAttachments count]; + self.PGPAttachments = pgpAttachments; + } + // Set the flags based on the parsed message. + // Happened before in decrypt bla bla bla, now happens before decodig is finished. + // Should work better. + Message *decryptedMessage = nil; + if(decryptedBody) + decryptedMessage = [decryptedBody message]; + self.PGPEncrypted = isEncrypted || [(Message_GPGMail *)decryptedMessage PGPEncrypted]; + self.PGPSigned = isSigned || [(Message_GPGMail *)decryptedMessage PGPSigned]; + self.PGPPartlyEncrypted = isPartlyEncrypted || [(Message_GPGMail *)decryptedMessage PGPPartlyEncrypted]; + self.PGPPartlySigned = isPartlySigned || [(Message_GPGMail *)decryptedMessage PGPPartlySigned]; + [signatures addObjectsFromArray:[(Message_GPGMail *)decryptedMessage PGPSignatures]]; + self.PGPSignatures = signatures; + [errors addObjectsFromArray:[(Message_GPGMail *)decryptedMessage PGPErrors]]; + self.PGPErrors = errors; + [pgpAttachments addObjectsFromArray:[(Message_GPGMail *)decryptedMessage PGPAttachments]]; + self.PGPDecrypted = isDecrypted; + self.PGPVerified = isVerified; + + [self fakeMessageFlagsIsEncrypted:self.PGPEncrypted isSigned:self.PGPSigned]; + + if(decryptedMessage) { + [(Message_GPGMail *)decryptedMessage fakeMessageFlagsIsEncrypted:self.PGPEncrypted isSigned:self.PGPSigned]; + } + + // The problem is, Mail.app would correctly apply the rules, if we didn't + // deactivate the snippet generation. But since we do, because it's kind of + // a pain in the ass, it doesn't. + // So we re-evaluate the message rules here and then they should be applied correctly. + // ATTENTION: We have to make sure that the user actively selected this message, + // otherwise, the body data is not yet available, and will 'cause the evaluation rules + // to wreak havoc. + if(!self.isSMIMEEncrypted && !self.isSMIMESigned) + [self applyMatchingRulesIfNecessary]; + + // Only for test purpose, after the correct error to be displayed should be constructed. + GM_CAST_CLASS(MFError *, id) error = nil; + if([errors count]) + error = errors[0]; + else if([self.PGPAttachments count]) + error = [self errorSummaryForPGPAttachments:self.PGPAttachments]; + + // Set the error on the activity monitor so the error banner is displayed + // on above the message content. + if(error) { + [(ActivityMonitor *)[GM_MAIL_CLASS(@"ActivityMonitor") currentMonitor] setError:error]; + // On Mavericks the ActivityMonitor trick doesn't seem to work, since the currentMonitor + // doesn't necessarily have to belong to the current message. + // So we store the mainError on the message and it's later used by the CertificateBannerController thingy. + [self setIvar:@"PGPMainError" value:error]; + } + + DebugLog(@"%@ Decrypted Message [%@]:\n\tisEncrypted: %@, isSigned: %@,\n\tisPartlyEncrypted: %@, isPartlySigned: %@\n\tsignatures: %@\n\terrors: %@", + decryptedMessage, [decryptedMessage subject], [(Message_GPGMail *)decryptedMessage PGPEncrypted] ? @"YES" : @"NO", [(Message_GPGMail *)decryptedMessage PGPSigned] ? @"YES" : @"NO", + [(Message_GPGMail *)decryptedMessage PGPPartlyEncrypted] ? @"YES" : @"NO", [(Message_GPGMail *)decryptedMessage PGPPartlySigned] ? @"YES" : @"NO", [(Message_GPGMail *)decryptedMessage PGPSignatures], [(Message_GPGMail *)decryptedMessage PGPErrors]); + + DebugLog(@"%@ Message [%@]:\n\tisEncrypted: %@, isSigned: %@,\n\tisPartlyEncrypted: %@, isPartlySigned: %@\n\tsignatures: %@\n\terrors: %@\n\tattachments: %@", + self, [self subject], self.PGPEncrypted ? @"YES" : @"NO", self.PGPSigned ? @"YES" : @"NO", + self.PGPPartlyEncrypted ? @"YES" : @"NO", self.PGPPartlySigned ? @"YES" : @"NO", self.PGPSignatures, self.PGPErrors, self.PGPAttachments); + + // Fix the number of attachments, this time for real! + // Uncomment once completely implemented. + [[self dataSourceProxy] setNumberOfAttachments:(unsigned int)numberOfAttachments isSigned:self.isSigned isEncrypted:self.isEncrypted forMessage:self]; + if(decryptedMessage) + [[(Message_GPGMail *)decryptedMessage dataSourceProxy] setNumberOfAttachments:(unsigned int)numberOfAttachments isSigned:self.isSigned isEncrypted:self.isEncrypted forMessage:decryptedMessage]; + // Set PGP Info collected so this information is not overwritten. + self.PGPInfoCollected = YES; +} + +- (void)applyMatchingRulesIfNecessary { + // Disable this feature for the time being. + // We have to find a better and more reliable way to implement this. + return; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wselector" + if(![[self dataSourceProxy] respondsToSelector:@selector(routeMessages:isUserAction:)]) + return; +#pragma clang diagnostic pop + + if(!self.isEncrypted && !self.isSigned) + return; + + // isEncrypted has to be re-evaluated again, since it might contain a signed message + // but didn't have the key in cache, to correctly apply rules the first time around. + [[GPGMailBundle sharedInstance] scheduleApplyingRulesForMessage:(Message *)self isEncrypted:self.PGPEncrypted]; +} + +- (MFError *)errorSummaryForPGPAttachments:(NSArray *)attachments { + NSUInteger verificationErrors = 0; + NSUInteger decryptionErrors = 0; + + for(GM_CAST_CLASS(MimePart *, id) part in attachments) { + if(![part PGPError]) + continue; + + if([[(MFError *)[part PGPError] userInfo] valueForKey:@"VerificationError"]) + verificationErrors++; + else if([[(MFError *)[part PGPError] userInfo] valueForKey:@"DecryptionError"]) + decryptionErrors++; + } + + if(!verificationErrors && !decryptionErrors) + return nil; + + NSUInteger totalErrors = verificationErrors + decryptionErrors; + + NSString *title = nil; + NSString *message = nil; + // 1035 says decryption error, 1036 says verification error. + // If both, use 1035. + NSUInteger errorCode = 0; + + if(verificationErrors && decryptionErrors) { + // @"%d Anhänge konnten nicht entschlüsselt oder verifiziert werden." + title = GMLocalizedString(@"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_TITLE"); + message = GMLocalizedString(@"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_VERIFY_ERROR_MESSAGE"); + errorCode = 1035; + } + else if(verificationErrors) { + if(verificationErrors == 1) { + title = GMLocalizedString(@"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_TITLE"); + message = GMLocalizedString(@"MESSAGE_BANNER_PGP_ATTACHMENT_VERIFY_ERROR_MESSAGE"); + } + else { + title = GMLocalizedString(@"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_TITLE"); + message = GMLocalizedString(@"MESSAGE_BANNER_PGP_ATTACHMENTS_VERIFY_ERROR_MESSAGE"); + } + errorCode = 1036; + } + else if(decryptionErrors) { + if(decryptionErrors == 1) { + title = title = GMLocalizedString(@"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_TITLE"); + message = GMLocalizedString(@"MESSAGE_BANNER_PGP_ATTACHMENT_DECRYPT_ERROR_MESSAGE"); + } + else { + title = title = GMLocalizedString(@"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_TITLE"); + message = GMLocalizedString(@"MESSAGE_BANNER_PGP_ATTACHMENTS_DECRYPT_ERROR_MESSAGE"); + } + errorCode = 1035; + } + + title = [NSString stringWithFormat:title, totalErrors]; + + GM_CAST_CLASS(MFError *, id) error = nil; + NSMutableDictionary *userInfo = [NSMutableDictionary dictionary]; + + [userInfo setValue:title forKey:@"_MFShortDescription"]; + [userInfo setValue:message forKey:@"NSLocalizedDescription"]; + [userInfo setValue:@YES forKey:@"DecryptionError"]; + // The error domain is checked in certain occasion, so let's use the system + // dependent one. + NSString *errorDomain = [GPGMailBundle isMavericks] ? @"MCMailErrorDomain" : @"MFMessageErrorDomain"; + + error = [GM_MAIL_CLASS(@"MFError") errorWithDomain:errorDomain code:errorCode localizedDescription:nil title:title helpTag:nil + userInfo:userInfo]; + + return error; +} + +- (void)clearPGPInformation { + self.PGPSignatures = nil; + self.PGPEncrypted = NO; + self.PGPPartlyEncrypted = NO; + self.PGPSigned = NO; + self.PGPPartlySigned = NO; + self.PGPDecrypted = NO; + self.PGPVerified = NO; + self.PGPErrors = nil; + self.PGPAttachments = nil; + self.numberOfPGPAttachments = 0; +} + +- (BOOL)shouldBePGPProcessed { + // Components are missing? What to do... +// if([[GPGMailBundle sharedInstance] componentsMissing]) +// return NO; + + // OpenPGP is disabled for reading? Return false. + if(![[GPGOptions sharedOptions] boolForKey:@"UseOpenPGPForReading"]) + return NO; + + // Message was actively selected by the user? PGP process message. + if([self userDidActivelySelectMessageCheckingMessageOnly:YES]) + return YES; + + // If NeverCreatePreviewSnippets is set, return NO. + if([[GPGOptions sharedOptions] boolForKey:@"NeverCreatePreviewSnippets"]) + return NO; + + // Message was not actively select and snippets should not be created? + // Don't process the message and let's get on with it. + return YES; +} + +- (BOOL)userDidActivelySelectMessageCheckingMessageOnly:(BOOL)messageOnly { + BOOL userDidSelectMessage = NO; + // In some occasions this variable is not set, even though the user actively selected the message. + // This issue has been seen with drafts. The reason seems to be, that the message object does + // where the flag has been set, is not necessarily the same we're seeing in here. + // As it turns out, while the message object is re-created, the messageBody object remains the same. + // So let's check on the messageBody object as well. + // Lesson learned: using messageBody forces the message body to be loaded. + // Since we're only interested in the messageBody if it's already available, we use + // messageBodyIfAvailable instead. + // Another lesson learned: this leads to terrible problems, since the some body + // methods, call shouldBePGPProcessed, which in turn calls this message again. + // So in order to avoid a recursion, we don't check the body in all circumstances. + // Update. Don't check the body, it still causes recursions sometimes. + if([self getIvar:@"UserSelectedMessage"]) + userDidSelectMessage = [[self getIvar:@"UserSelectedMessage"] boolValue]; + + return userDidSelectMessage; +} + +- (BOOL)shouldCreateSnippetWithData:(NSData *)data { + // CreatePreviewSnippets is set? Always return true. + DebugLog(@"Create Preview snippets: %@", [[GPGOptions sharedOptions] boolForKey:@"CreatePreviewSnippets"] ? @"YES" : @"NO"); + DebugLog(@"User Selected Message: %@", [[self getIvar:@"UserSelectedMessage"] boolValue] ? @"YES" : @"NO"); + + // Always *create snippet* (decrypt data) if the user actively selected the message. + if([self userDidActivelySelectMessageCheckingMessageOnly:NO]) + return YES; + + // Since rule applying and snippet creation are connected, snippets are + // created in classic view as well, but always only if the passphrase is in cache. + // * none of the above and CreatePreviewSnippets preference is set -> create the snippet + // * none of the above but passphrase for key is available (gpg-agent or keychain) -> create the snippet + + if([[GPGOptions sharedOptions] boolForKey:@"CreatePreviewSnippets"]) + return YES; + + // Otherwise check if the passphrase is already cached. If it is + // return true, 'cause the user want be asked for the passphrase again. + + // The message could be encrypted to multiple subkeys. + // All of the keys have to be in the cache. + NSMutableSet *keyIDs = [[NSMutableSet alloc] initWithCapacity:0]; + + NSArray *packets = nil; + @try { + packets = [GPGPacket packetsWithData:data]; + } + @catch (NSException *exception) { + return NO; + } + + for (GPGPacket *packet in packets) { + if (packet.tag == GPGPublicKeyEncryptedSessionKeyPacketTag) { + GPGPublicKeyEncryptedSessionKeyPacket *keyPacket = (GPGPublicKeyEncryptedSessionKeyPacket *)packet; + [keyIDs addObject:keyPacket.keyID]; + } + } + + NSUInteger nrOfMatchingSecretKeys = 0; + NSUInteger nrOfKeysWithPassphraseInCache = 0; + GPGController *gpgc = [[GPGController alloc] init]; + + for(NSString *keyID in keyIDs) { + GPGKey *key = [[GPGMailBundle sharedInstance] secretGPGKeyForKeyID:keyID includeDisabled:YES]; + if(!key) + continue; + nrOfMatchingSecretKeys += 1; + if([gpgc isPassphraseForKeyInCache:key]) { + nrOfKeysWithPassphraseInCache += 1; + DebugLog(@"Passphrase found in cache!"); + } + } + + BOOL passphraseInCache = nrOfMatchingSecretKeys + nrOfKeysWithPassphraseInCache != 0 && nrOfMatchingSecretKeys == nrOfKeysWithPassphraseInCache ? YES : NO; + + DebugLog(@"Passphrase in cache? %@", passphraseInCache ? @"YES" : @"NO"); + + return passphraseInCache; +} + +#pragma mark - Proxies for OS X version differences. + +- (id)dataSourceProxy { + // 10.8 uses dataSource, 10.7 uses messageStore. +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wselector" + if([self respondsToSelector:@selector(dataSource)]) + return [self dataSource]; + if([self respondsToSelector:@selector(messageStore)]) + return [self messageStore]; +#pragma clang diagnostic pop + return nil; +} + +- (void)MASetMessageInfo:(id)info subjectPrefixLength:(unsigned char)subjectPrefixLength to:(id)to sender:(id)sender type:(BOOL)type dateReceivedTimeIntervalSince1970:(double)receivedDate dateSentTimeIntervalSince1970:(double)sentDate messageIDHeaderDigest:(id)messageIDHeaderDigest inReplyToHeaderDigest:(id)headerDigest dateLastViewedTimeIntervalSince1970:(double)lastViewedDate { + // Replace the GPGFlaggedString with an actual NSString, otherwise Drafts cannot be properly displayed + // in some cases, since plist decoding doesn't work. + NSString *newSender = sender; + if([sender isKindOfClass:[GPGFlaggedString class]]) + newSender = [sender string]; + + [self MASetMessageInfo:info subjectPrefixLength:subjectPrefixLength to:to sender:newSender type:type dateReceivedTimeIntervalSince1970:receivedDate dateSentTimeIntervalSince1970:sentDate messageIDHeaderDigest:messageIDHeaderDigest inReplyToHeaderDigest:headerDigest dateLastViewedTimeIntervalSince1970:lastViewedDate]; +} + +- (NSString *)gmDescription { + + return [NSString stringWithFormat:@"<%@: %p, library id:%lld conversationID:%lld mailbox:%@\n\t" + "MIME encrypted: %@\n\t" + "MIME signed: %@\n\t" + "was decrypted successfully: %@\n\t" + "was verified successfully: %@\n\t" + "number of pgp attachments: %d\n\t" + "number of signatures: %d\n\t" + "pgp info collected: %@>", + NSStringFromClass([self class]), self, (long long)[(id)self libraryID], (long long)[(id)self conversationID], + [[(id)self mailbox] displayName], + self.PGPEncrypted ? @"YES" : @"NO", self.PGPSigned ? @"YES" : @"NO", + self.PGPDecrypted ? @"YES" : @"NO", self.PGPVerified ? @"YES" : @"NO", + (unsigned int)[self.PGPAttachments count], (unsigned int)[self.PGPSignatures count], + self.PGPInfoCollected ? @"YES" : @"NO"]; +} + +@end diff --git a/Source/MessageContentController+GPGMail.h b/Source/MessageContentController+GPGMail.h new file mode 100644 index 00000000..6a2309e5 --- /dev/null +++ b/Source/MessageContentController+GPGMail.h @@ -0,0 +1,62 @@ +/* MessageContentController+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface MessageContentController_GPGMail : NSObject + +/** + This method is called when the encrypted icon is clicked in a message view. + It's only used in the case, when encrypted messages should not be decrypted automatically, + but manually by a user interaction. + + It adds some information to the message, so decodeWithContext knows it should return + the decrypted body. + + Calling MessageContentController.reloadCurrentMessageShouldReparseBody: reloads the current + message in a separate thread, showing a spinner animation while the body data is retrieved + using decodeWithContext which returns the decrypted message body. + Upon receiving the decrypted message body, the spinner animation fades and the decrypted message + is displayed. (All done automatically by Mail! that's how I like it!) + + TODO: Only decrypt the message, if it's not already displayed decrypted. + */ +- (void)decryptPGPMessage; + +/** + Invoked by Mail.app if the user selects a message. + + It's important to intercept this call, to set an internal variable UserSelectedMessage which + is checked by -[Message shouldBePGPProcessed]. + -[Message shouldBePGPProcessed] needs to know whether a message was selected + by the user or if Mail.app tries to process it for generating the snippets. + */ +- (void)MASetMessageToDisplay:(id)message; + +@end diff --git a/Source/MessageContentController+GPGMail.m b/Source/MessageContentController+GPGMail.m new file mode 100644 index 00000000..efaa985f --- /dev/null +++ b/Source/MessageContentController+GPGMail.m @@ -0,0 +1,76 @@ +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY GPGTools Project Team AND CONTRIBUTORS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL GPGTools Project Team AND CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import +#import +#import "CCLog.h" +#import "NSObject+LPDynamicIvars.h" +#import "MimePart+GPGMail.h" +#import "Message+GPGMail.h" +#import "GPGMailBundle.h" +#import "ActivityMonitor.h" +#import "MessageContentController+GPGMail.h" +#import "ComposeBackEnd.h" +#import "MessageViewController.h" +#import "HeaderViewController.h" + +@implementation MessageContentController_GPGMail : NSObject + +- (void)decryptPGPMessage { + [[((MessageContentController *)self) message] setIvar:@"shouldBeDecrypting" value:@YES]; + [((MessageContentController *)self) reloadCurrentMessageShouldReparseBody:YES]; +} + +- (void)MASetMessageToDisplay:(id)message { + [message setIvar:@"UserSelectedMessage" value:@YES]; + [[message messageBody] setIvar:@"UserSelectedMessage" value:@YES]; + [self MASetMessageToDisplay:message]; +} + +/** + MessageContentController was renamed to MessageViewController in Mavericks. + The following methods only apply to Mavericks. + */ +- (void)MASetRepresentedObject:(id)representedObject { + // Reset the details hidden value, if a previous PGP processed message + // forced the details to be shown. + if([self getIvar:@"RealDetailsHidden"]) + [self setValue:[self getIvar:@"RealDetailsHidden"] forKey:@"_detailsHidden"]; + if([self getIvar:@"RealShowDetails"]) + [self setValue:[self getIvar:@"RealShowDetails"] forKey:@"_showDetails"]; + + [[representedObject originalMessage] setIvar:@"UserSelectedMessage" value:[NSNumber numberWithBool:YES]]; + // In some occasions the message is re-created during the parsing process and the UserSelectedMessage + // flag is no longer available. Apparently, the messageBody however is not re-created. So set it on + // both objects to be save. + [[representedObject messageBody] setIvar:@"UserSelectedMessage" value:[NSNumber numberWithBool:YES]]; + [[representedObject originalMessage] setIvar:@"LoadingStage" value:[NSNumber numberWithBool:YES]]; + [self MASetRepresentedObject:representedObject]; +} + +@end diff --git a/Source/MessageCriterion+GPGMail.h b/Source/MessageCriterion+GPGMail.h new file mode 100644 index 00000000..3a7303d5 --- /dev/null +++ b/Source/MessageCriterion+GPGMail.h @@ -0,0 +1,59 @@ +/* MessageCriterion+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 10-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import "MessageCriterion.h" + +@class Message; + +/** + It's necessary to hook into this class, since Mail.app only checks + the message flags, to determine whether a message is signed or encrypted. + In some occasions though, for PGP processed messages, the message flags are not + yet set correctly. + + For that reason, _evaluateIsDigitallySignedCriterion and _evaluateIsEncryptedCriterion + use GPGMail's own variables to determine the signed and encrypted status of a message. + */ + +@interface MessageCriterion_GPGMail : NSObject + +/** + Return YES if either the message flags have the signed bit on + or [message isSigned] returns YES. + */ +- (BOOL)MA_evaluateIsDigitallySignedCriterion:(Message *)message; + +/** + Return YES if either the message flags have the encrypted bit on + or [message isEncrypted] returns YES. + */ +- (BOOL)MA_evaluateIsEncryptedCriterion:(Message *)message; + +@end diff --git a/Source/MessageCriterion+GPGMail.m b/Source/MessageCriterion+GPGMail.m new file mode 100644 index 00000000..bd0581f2 --- /dev/null +++ b/Source/MessageCriterion+GPGMail.m @@ -0,0 +1,43 @@ +/* MessageCriterion+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 10-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "MessageCriterion+GPGMail.h" +#import "Message+GPGMail.h" + +@implementation MessageCriterion_GPGMail + +- (BOOL)MA_evaluateIsDigitallySignedCriterion:(Message *)message { + return [self MA_evaluateIsDigitallySignedCriterion:message] || ((Message_GPGMail *)message).isSigned; +} + +- (BOOL)MA_evaluateIsEncryptedCriterion:(Message *)message { + return [self MA_evaluateIsEncryptedCriterion:message] || ((Message_GPGMail *)message).isEncrypted; +} + +@end diff --git a/Source/MessageHeaderDisplay+GPGMail.h b/Source/MessageHeaderDisplay+GPGMail.h new file mode 100644 index 00000000..a64c5c22 --- /dev/null +++ b/Source/MessageHeaderDisplay+GPGMail.h @@ -0,0 +1,91 @@ +/* MessageHeaderDisplay+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +@interface MessageHeaderDisplay_GPGMail : NSObject + +/** + Is invoked whenever either the encrypt or sign icon is clicked in + a message view. + + Based on the link the signature panel is displayed or the message is decrypted. + */ +- (BOOL)MATextView:(id)textView clickedOnLink:(id)link atIndex:(unsigned long long)index; + +/** + Creates and displayes the signature panel. + */ +- (void)_showSignaturePanel; + +- (void)_showAttachmentsPanel; + +/** + Starts the decryption of a message. Invoked when clicking on the decrypt icon. + (Only used if automatic decryption is disabled.) + */ +- (void)_decryptMessage; + +/** + This method displays the S/MIME security headers. + If a message is encrypted a encrypted icon is displayed. If a message is signed, + a signed icon is displayed, accompanied by the email address(es) of the sender. + It also is the entry point for the new message view GPGMail UI. + + It checks if the message is pgp encrypted and adds the encrypted icon and encrypted + string. + After that it checks if the message is pgp signed and adds the signed icon and message + signers. + */ +- (id)MA_attributedStringForSecurityHeader; + +/** + Create the signature part based on the found signatures and errors. + */ +- (NSAttributedString *)securityHeaderSignaturePartForMessage:(Message *)message; + +- (void)setShowDetails:(long long)showDetails; + +@end + +@interface MessageHeaderDisplay_GPGMail (NotImplemented) + +/** + This method no longer exists under Yosemite, but we need to make sure it's defined, otherwise + we'll have to deal with compiler errors. + */ +- (void)_updateDetailsButton; + +@end + +@interface NSAlert (NotImplemented) + ++ (id)alertForError:(id)error defaultButton:(id)defaultButton alternateButton:(id)alternateButton otherButton:(id)otherButton; ++ (id)alertForError:(id)arg1 firstButton:(id)arg2 secondButton:(id)arg3 thirdButton:(id)arg4; + + +@end diff --git a/Source/MessageHeaderDisplay+GPGMail.m b/Source/MessageHeaderDisplay+GPGMail.m new file mode 100644 index 00000000..e5b7a8ce --- /dev/null +++ b/Source/MessageHeaderDisplay+GPGMail.m @@ -0,0 +1,501 @@ +// +// MessageHeaderDisplay+GPGMail.m +// GPGMail +// +// Created by Lukas Pitschl on 31.07.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import +#import +#import +#import +#import +#import +#import +#import +#import "CCLog.h" +#import "NSObject+LPDynamicIvars.h" +#import "GPGSignatureView.h" +#import "GPGAttachmentController.h" +#import "GPGMailBundle.h" +#import "Message+GPGMail.h" +#import "MimePart+GPGMail.h" +#import "MimeBody+GPGMail.h" +#import "NSAttributedString+GPGMail.h" +#import "MessageHeaderDisplay+GPGMail.h" +#import "MessageContentController+GPGMail.h" +#import "EmailViewController.h" +#import "HeaderViewController.h" +#import "ComposeBackEnd.h" +#import "ConversationMember.h" +#import "MCMessage.h" + +@implementation MessageHeaderDisplay_GPGMail + +- (BOOL)MATextView:(id)textView clickedOnLink:(id)link atIndex:(unsigned long long)index { + if(![link isEqualToString:@"gpgmail://show-signature"] && ![link isEqualToString:@"gpgmail://decrypt"] && + ![link isEqualToString:@"gpgmail://show-attachments"]) + return [self MATextView:textView clickedOnLink:link atIndex:index]; + if([link isEqualToString:@"gpgmail://decrypt"]) { + [self _decryptMessage]; + return YES; + } + if([link isEqualToString:@"gpgmail://show-signature"]) { + [self _showSignaturePanel]; + } + if([link isEqualToString:@"gpgmail://show-attachments"]) { + [self _showAttachmentsPanel]; + } + return NO; +} + +/* In Mavericks the above message was renamed and works differently. */ + +- (void)MATextView:(id)textView clickedOnCell:(id)cell inRect:(struct CGRect)rect atIndex:(unsigned long long)index { + if([[cell attachment] getIvar:@"ShowSignaturePanel"]) + return [self _showSignaturePanel]; + + if([[cell attachment] getIvar:@"ShowAttachmentPanel"]) + return [self _showAttachmentsPanel]; + + return [self MATextView:textView clickedOnCell:cell inRect:rect atIndex:index]; +} + +- (NSWindow *)modalWindow { + NSWindow *window = [GPGMailBundle isElCapitan] ? [[(id)self view] window] : [NSApp mainWindow]; + return window; +} + +- (void)_showAttachmentsPanel { + NSArray *pgpAttachments = nil; + if(![GPGMailBundle isMavericks]) + pgpAttachments = [(Message_GPGMail *)[(MessageViewingState *)[((MessageHeaderDisplay *)self) viewingState] message] PGPAttachments]; + else + pgpAttachments = [(Message_GPGMail *)[(ConversationMember *)[(HeaderViewController *)self representedObject] originalMessage] PGPAttachments]; + + GPGAttachmentController *attachmentController = [[GPGAttachmentController alloc] initWithAttachmentParts:pgpAttachments]; + attachmentController.keyList = [[GPGMailBundle sharedInstance] allGPGKeys]; + + [attachmentController beginSheetModalForWindow:[self modalWindow] completionHandler:^(NSInteger result) { + }]; + // Set is an an ivar of MessageHeaderDisplay so it's released, once + // the Message Header Display is closed. + [self setIvar:@"AttachmentController" value:attachmentController]; +} + +- (void)_showSignaturePanel { + NSArray *messageSigners = [self getIvar:@"messageSigners"]; + if(![messageSigners count]) + return; + BOOL notInKeychain = NO; + for(GPGSignature *signature in messageSigners) { + if(!signature.primaryKey) { + notInKeychain = YES; + break; + } + } + if(notInKeychain) { + NSString *title = GMLocalizedString(@"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_TITLE"); + NSString *message = GMLocalizedString(@"MESSAGE_ERROR_ALERT_PGP_VERIFY_NOT_IN_KEYCHAIN_MESSAGE"); + + // The error domain is checked in certain occasion, so let's use the system + // dependent one. + NSString *errorDomain = [GPGMailBundle isMavericks] ? @"MCMailErrorDomain" : @"MFMessageErrorDomain"; + MFError *error = [GM_MAIL_CLASS(@"MFError") errorWithDomain:errorDomain code:1035 localizedDescription:message title:title helpTag:nil userInfo:@{@"_MFShortDescription": title, @"NSLocalizedDescription": message}]; + // NSAlert has different category methods based on the version of OS X. + NSAlert *alert = nil; + if([[NSAlert class] respondsToSelector:@selector(alertForError:defaultButton:alternateButton:otherButton:)]) { + alert = [NSAlert alertForError:error defaultButton:@"OK" alternateButton:nil otherButton:nil]; + } + else if([[NSAlert class] respondsToSelector:@selector(alertForError:firstButton:secondButton:thirdButton:)]) { + alert = [NSAlert alertForError:error firstButton:@"OK" secondButton:nil thirdButton:nil]; + } + + [alert beginSheetModalForWindow:[self modalWindow] modalDelegate:self didEndSelector:nil contextInfo:nil]; + return; + } + GPGSignatureView *signatureView = [GPGSignatureView signatureView]; + signatureView.signatures = messageSigners; + [signatureView beginSheetModalForWindow:[self modalWindow] completionHandler:^(NSInteger result) { +// DebugLog(@"Signature panel was closed: %d", result); + }]; +} + +- (void)_decryptMessage { + [[[((MessageHeaderDisplay *)self) parentController] parentController] decryptPGPMessage]; +} + +- (id)MA_attributedStringForSecurityHeader { + MessageViewingState *viewingState = [((MessageHeaderDisplay *)self) viewingState]; + GM_CAST_CLASS(Message *, id) message = [viewingState message]; + GM_CAST_CLASS(MimeBody *, id) mimeBody = [viewingState mimeBody]; + + if(![message shouldBePGPProcessed]) + return [self MA_attributedStringForSecurityHeader]; + + // If no viewingState is set, return an empty string. + if(!viewingState || viewingState.headerDetailLevel == 0) + return [[NSAttributedString alloc] initWithString:@""]; + + NSAttributedString *headerSecurityString = viewingState.headerSecurityString; + if(headerSecurityString) + return headerSecurityString; + + // Check the mime body, is more reliable. + BOOL isPGPSigned = (BOOL)[message PGPSigned]; + BOOL isPGPEncrypted = (BOOL)[message PGPEncrypted] && ![mimeBody ivarExists:@"PGPEarlyAlphaFuckedUpEncrypted"]; + BOOL hasPGPAttachments = (BOOL)[message numberOfPGPAttachments] > 0 ? YES : NO; + + if(!isPGPSigned && !isPGPEncrypted && !hasPGPAttachments) + return [self MA_attributedStringForSecurityHeader]; + + NSMutableAttributedString *securityHeader = [self securityHeaderForMessage:message mimeBody:mimeBody]; + + NSMutableAttributedString *finalSecurityHeader = [[NSMutableAttributedString alloc] init]; + [finalSecurityHeader appendAttributedString:securityHeader]; + [finalSecurityHeader appendAttributedString:[NSAttributedString attributedStringWithString:@"\n"]]; + [finalSecurityHeader addAttribute:NSParagraphStyleAttributeName value:[(MessageHeaderDisplay *)self _paragraphStyleWithLineHeight:16.0f indent:19] range:NSMakeRange(0, 1)]; + [finalSecurityHeader addAttribute:@"header label" value:@"yes" range:NSMakeRange(1, [finalSecurityHeader length] - 1)]; + [finalSecurityHeader addAttribute:@"key" value:@"security" range:NSMakeRange(1, [finalSecurityHeader length] - 1)]; + + viewingState.headerSecurityString = finalSecurityHeader; + + return finalSecurityHeader; +} + +- (void)MAToggleDetails:(id)target { + // Make sure loading stage is removed, so the detail view + // can be toggled on and off, otherwise it would be always forced to on. + Message_GPGMail *message = (Message_GPGMail *)[(ConversationMember *)[(HeaderViewController *)self representedObject] originalMessage]; + if([message getIvar:@"LoadingStage"]) + [message removeIvar:@"LoadingStage"]; + [self MAToggleDetails:target]; +} + +- (void)MA_updateTextStorageWithHardInvalidation:(BOOL)hardValidation { + [self MA_updateTextStorageWithHardInvalidation:hardValidation]; + + // If hard validation is set, _displayStringsByHeaderKey is emptied, + // before readding the NSAttributedStrings for each header key. + // In order to insert our own security key, we'll overwrite whatever + // Mail itself stores under the x-apple-security key, and afterwards + // run _updateTextStorageWithHardInvalidation:NO. + // As a result, Mail will recreate the header display, but without emptying + // _displayStringsByHeaderKey first, thus, using our own security string. + // This way we don't have to use the loop-through-attributes-and-insert-after-the-to-header-trick. + if([GPGMailBundle isYosemite]) { + if(hardValidation) { + NSAttributedString *securityHeaderString = [self MA_displayStringForSecurityKey]; + if(!securityHeaderString || [securityHeaderString length] == 0) + return; + NSMutableDictionary *displayStringsByHeaderKey = [self valueForKey:@"_displayStringsByHeaderKey"]; + displayStringsByHeaderKey[@"x-apple-security"] = securityHeaderString; + [self MA_updateTextStorageWithHardInvalidation:NO]; + } + + return; + } + else { + // Force details to always be shown on Mavericks for PGP processed messages. + // Works differently on < 10.9. + + Message_GPGMail *message = (Message_GPGMail *)[(ConversationMember *)[(HeaderViewController *)self representedObject] originalMessage]; + // If we set _detailsHidden too early, it's ignored as it seems, + // so we check the PGPInfoCollected flag, to know whether or not the message + // has already been processed. If is has, and this method is called, force _detailsHidden to be + // false and update the details button. + + if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_9) { + [self setIvar:@"RealShowDetails" value:[self valueForKey:@"_showDetails"]]; + [self setShowDetails:1]; + } + + if(message.PGPInfoCollected && (message.PGPEncrypted || message.PGPSigned) && [message getIvar:@"LoadingStage"]) { + if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_9) { + [self setIvar:@"RealShowDetails" value:[self valueForKey:@"_showDetails"]]; + [self setShowDetails:1]; + } + else { + [self setIvar:@"RealDetailsHidden" value:[self valueForKey:@"_detailsHidden"]]; + [self setValue:@(0) forKey:@"_detailsHidden"]; + [self _updateDetailsButton]; + } + [self MA_updateTextStorageWithHardInvalidation:YES]; + return; + } + + [self MA_updateTextStorageWithHardInvalidation:hardValidation]; + } +} + +- (id)MA_displayStringForSecurityKey { + GM_CAST_CLASS(MCMessage *, id) message = [(ConversationMember *)[(HeaderViewController *)self representedObject] originalMessage]; + GM_CAST_CLASS(MCMimeBody *, id) mimeBody = [(ConversationMember *)[(HeaderViewController *)self representedObject] messageBody]; + + if(![message shouldBePGPProcessed]) { + if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_9) + return nil; + else + return [self MA_displayStringForSecurityKey]; + } + + // Check the mime body, is more reliable. + BOOL isPGPSigned = (BOOL)[message PGPSigned]; + BOOL isPGPEncrypted = (BOOL)[message PGPEncrypted] && ![mimeBody ivarExists:@"PGPEarlyAlphaFuckedUpEncrypted"]; + BOOL hasPGPAttachments = (BOOL)[message numberOfPGPAttachments] > 0 ? YES : NO; + + if(!isPGPSigned && !isPGPEncrypted && !hasPGPAttachments) { + if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_9) { + return [[NSAttributedString alloc] initWithString:@""]; + } + else { + return [self MA_displayStringForSecurityKey]; + } + } + + NSMutableAttributedString *displayString = [self securityHeaderForMessage:message mimeBody:mimeBody]; + + NSMutableParagraphStyle *paragraphStyle = [[NSParagraphStyle defaultParagraphStyle] mutableCopy]; + paragraphStyle.baseWritingDirection = [NSParagraphStyle defaultWritingDirectionForLanguage:nil]; + paragraphStyle.alignment = NSLeftTextAlignment; + paragraphStyle.lineSpacing = [GPGMailBundle isYosemite] ? 0.0f : 1.0f; + paragraphStyle.tighteningFactorForTruncation = 0.0f; + paragraphStyle.minimumLineHeight = [GPGMailBundle isYosemite] ? 0.0f : 15.0f; + paragraphStyle.maximumLineHeight = [GPGMailBundle isYosemite] ? 0.0f : 15.0f; + paragraphStyle.firstLineHeadIndent = [GPGMailBundle isYosemite] ? 6.0f : 4.0f; + paragraphStyle.headIndent = [GPGMailBundle isYosemite] ? 6.0f : 4.0f; + + NSFont *font = [(NSTextView *)[(HeaderViewController *)self textView] font]; + if(!font) { + NSLog(@"No font info available. Would usually crash when creating the dictionary later."); + font = [NSFont systemFontOfSize:12.00f]; + } + if([GPGMailBundle isYosemite]) + font = [NSFont systemFontOfSize:12.00f]; + NSColor *color = [NSColor blackColor]; + if([GPGMailBundle isYosemite]) + color = [NSColor performSelector:@selector(labelColor)]; + + NSDictionary *attributes = @{@"HeaderKey": @"x-apple-security", NSFontAttributeName: font, NSForegroundColorAttributeName: color, + NSParagraphStyleAttributeName: paragraphStyle}; + [displayString addAttributes:attributes range:NSMakeRange(0, [displayString length])]; + + return displayString; +} + +- (NSMutableAttributedString *)securityHeaderForMessage:(GM_CAST_CLASS(Message *, id))message mimeBody:(GM_CAST_CLASS(MimeBody *, id))mimeBody { + // This is also called if the message is neither signed nor encrypted. + // In that case the empty string is returned. + // Internally this method checks the message's messageFlags + // to determine if the message is signed or encrypted and + // based on that information creates the encrypted symbol + // and calls copySingerLabels on the topLevelPart. + + // Check the mime body, is more reliable. + BOOL isPGPSigned = (BOOL)[message PGPSigned]; + BOOL isPGPEncrypted = (BOOL)[message PGPEncrypted] && ![mimeBody ivarExists:@"PGPEarlyAlphaFuckedUpEncrypted"]; + + NSString *securityHeaderLabelKey = [GPGMailBundle isMavericks] || [GPGMailBundle isYosemite] ? @"SecurityHeaderLabel" : @"SECURITY_HEADER"; + + NSString *indentation = @""; + if([GPGMailBundle isMountainLion] && ![GPGMailBundle isMavericks]) + indentation = @""; + else if([GPGMailBundle isMavericks]) + indentation = @""; + else + indentation = @"\t"; + NSMutableAttributedString *securityHeader = [NSMutableAttributedString new]; + [securityHeader beginEditing]; + + NSMutableString *securityHeaderString = [securityHeader mutableString]; + + if([GPGMailBundle isYosemite]) { + [securityHeaderString appendFormat:@"%@:", [[NSBundle mainBundle] localizedStringForKey:securityHeaderLabelKey value:@"" table:@"Encryption"]]; + } + else if([GPGMailBundle isMavericks]) { + [securityHeaderString appendFormat:NSLocalizedStringFromTableInBundle(@"MessageHeaderLabelFormat", nil, [NSBundle mainBundle], @""), NSLocalizedStringFromTableInBundle(securityHeaderLabelKey, @"Encryption", [NSBundle mainBundle], @"")]; + } + else { + [securityHeaderString appendString:[NSString stringWithFormat:@"%@%@", indentation, + NSLocalizedStringFromTableInBundle(securityHeaderLabelKey, @"Encryption", [NSBundle mainBundle], @"")]]; + } + + // Add the encrypted part to the security header. + if(isPGPEncrypted) { + NSImage *encryptedBadge = [NSImage imageNamed:@"NSLockLockedTemplate"]; + NSAttributedString *encryptAttachmentString = [NSAttributedString attributedStringWithAttachment:[[NSTextAttachment alloc] init] + image:encryptedBadge + link:nil + offset:0.0]; + if([GPGMailBundle isMavericks]) + [securityHeader appendAttributedString:[NSAttributedString attributedStringWithString:@" "]]; + else + [securityHeader appendAttributedString:[[NSAttributedString alloc] initWithString:@" " attributes:[NSAttributedString headerAttributes]]]; + + [securityHeader appendAttributedString:encryptAttachmentString]; + + NSString *encryptedString = [NSString stringWithFormat:@" %@", [message PGPPartlyEncrypted] ? GMLocalizedString(@"MESSAGE_IS_PGP_PARTLY_ENCRYPTED") : + GMLocalizedString(@"MESSAGE_IS_PGP_ENCRYPTED")]; + if([GPGMailBundle isMavericks]) + [securityHeader appendAttributedString:[NSAttributedString attributedStringWithString:encryptedString]]; + else + [securityHeader appendAttributedString:[[NSAttributedString alloc] initWithString:encryptedString attributes:[NSAttributedString headerAttributes]]]; + } + if(isPGPSigned) { + NSAttributedString *securityHeaderSignaturePart = [self securityHeaderSignaturePartForMessage:message]; + [self setIvar:@"messageSigners" value:[message PGPSignatures]]; + + // Only add, if message was encrypted. + if(isPGPEncrypted) { + if([GPGMailBundle isMavericks]) + [securityHeader appendAttributedString:[NSAttributedString attributedStringWithString:@", "]]; + else + [securityHeader appendAttributedString:[[NSAttributedString alloc] initWithString:@", " attributes:[NSAttributedString headerAttributes]]]; + } + + [securityHeader appendAttributedString:securityHeaderSignaturePart]; + } + NSUInteger numberOfPGPAttachments = [message numberOfPGPAttachments]; + // And last but not least, add a new line. + if(numberOfPGPAttachments) { + NSAttributedString *securityHeaderAttachmentsPart = [self securityHeaderAttachmentsPartForMessage:message]; + + if([message PGPSigned] || [message PGPEncrypted]) + [securityHeader appendAttributedString:[NSAttributedString attributedStringWithString:@", "]]; + [securityHeader appendAttributedString:securityHeaderAttachmentsPart]; + } + + return securityHeader; +} + +- (NSAttributedString *)securityHeaderAttachmentsPartForMessage:(GM_CAST_CLASS(Message *, id))message { + BOOL hasEncryptedAttachments = NO; + BOOL hasSignedAttachments = NO; + BOOL singular = [message numberOfPGPAttachments] > 1 ? NO : YES; + + NSMutableAttributedString *securityHeaderAttachmentsPart = [[NSMutableAttributedString alloc] init]; + NSTextAttachment *textAttachment = [[NSTextAttachment alloc] init]; + [textAttachment setIvar:@"ShowAttachmentPanel" value:@YES]; + [securityHeaderAttachmentsPart appendAttributedString:[NSAttributedString attributedStringWithAttachment:textAttachment image:[NSImage imageNamed:@"attachment_header"] link:[GPGMailBundle isMavericks] ? nil : @"gpgmail://show-attachments" offset:-3.0]]; + + for(MimePart_GPGMail *attachment in [message PGPAttachments]) { + hasEncryptedAttachments |= [attachment PGPEncrypted]; + hasSignedAttachments |= [attachment PGPSigned]; + } + + NSString *attachmentPart = nil; + + if(hasEncryptedAttachments && hasSignedAttachments) { + attachmentPart = (singular ? + GMLocalizedString(@"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_ENCRYPTED_TITLE") : + GMLocalizedString(@"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_ENCRYPTED_TITLE")); + } + else if(hasEncryptedAttachments) { + attachmentPart = (singular ? + GMLocalizedString(@"MESSAGE_SECURITY_HEADER_ATTACHMENT_ENCRYPTED_TITLE") : + GMLocalizedString(@"MESSAGE_SECURITY_HEADER_ATTACHMENTS_ENCRYPTED_TITLE")); + } + else if(hasSignedAttachments) { + attachmentPart = (singular ? + GMLocalizedString(@"MESSAGE_SECURITY_HEADER_ATTACHMENT_SIGNED_TITLE") : + GMLocalizedString(@"MESSAGE_SECURITY_HEADER_ATTACHMENTS_SIGNED_TITLE")); + } + + NSString *encryptionString = [NSString stringWithFormat:@"%li %@", (long)[message numberOfPGPAttachments], attachmentPart]; + if([GPGMailBundle isMavericks]) + [securityHeaderAttachmentsPart appendAttributedString:[NSAttributedString attributedStringWithString:encryptionString]]; + else + [securityHeaderAttachmentsPart appendAttributedString:[[NSAttributedString alloc] initWithString:encryptionString attributes:[NSAttributedString headerAttributes]]]; + + return securityHeaderAttachmentsPart; +} + +- (NSAttributedString *)securityHeaderSignaturePartForMessage:(Message_GPGMail *)message { + GPGErrorCode errorCode = GPGErrorNoError; + NSImage *signedImage = nil; + NSSet *signatures = [NSSet setWithArray:message.PGPSignatures]; + + NSMutableAttributedString *securityHeaderSignaturePart = [[NSMutableAttributedString alloc] init]; + + for(GPGSignature *signature in signatures) { + if(signature.status != GPGErrorNoError) { + errorCode = signature.status; + break; + } + } + + // Check if MacGPG2 was not found. + // If that's the case, don't try to append signature labels. + if(!errorCode) { + GPGErrorCode __block newErrorCode = GPGErrorNoError; + [[message PGPErrors] enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { + if([obj isKindOfClass:GM_MAIL_CLASS(@"MFError")]) { + if(((NSDictionary *)[(MFError *)obj userInfo])[@"VerificationErrorCode"]) + newErrorCode = (GPGErrorCode)[((NSDictionary *)[(MFError *)obj userInfo])[@"VerificationErrorCode"] longValue]; + *stop = YES; + } + }]; + errorCode = newErrorCode; + } + + NSString *titlePart = nil; + + switch (errorCode) { + case GPGErrorNoPublicKey: + titlePart = GMLocalizedString(@"MESSAGE_SECURITY_HEADER_SIGNATURE_NO_PUBLIC_KEY_TITLE"); + break; + + case GPGErrorCertificateRevoked: + titlePart = GMLocalizedString(@"MESSAGE_SECURITY_HEADER_SIGNATURE_REVOKED_TITLE"); + break; + + case GPGErrorBadSignature: + titlePart = GMLocalizedString(@"MESSAGE_SECURITY_HEADER_SIGNATURE_BAD_TITLE"); + break; + + default: + titlePart = GMLocalizedString(@"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE"); + break; + } + + if (errorCode) { + signedImage = [NSImage imageNamed:@"SignatureOffTemplate"]; + } else if (signatures.count == 0) { + titlePart = GMLocalizedString(@"MESSAGE_SECURITY_HEADER_NO_SIGNATURE_TITLE"); + signedImage = [NSImage imageNamed:@"SignatureOffTemplate"]; + } else { + titlePart = GMLocalizedString(@"MESSAGE_SECURITY_HEADER_SIGNATURE_TITLE"); + signedImage = [NSImage imageNamed:@"SignatureOnTemplate"]; + } + + + if(message.PGPPartlySigned) { +// TODO: Implement different messages for partly signed messages. + titlePart = GMLocalizedString(@"MESSAGE_IS_PGP_PARTLY_SIGNED"); + } + + NSSet *signerLabels = [NSSet setWithArray:[message PGPSignatureLabels]]; + NSTextAttachment *signedTextAttachment = [[NSTextAttachment alloc] init]; + [signedTextAttachment setIvar:@"ShowSignaturePanel" value:@YES]; + NSAttributedString *signedAttachmentString = [NSAttributedString attributedStringWithAttachment:signedTextAttachment + image:signedImage link:[GPGMailBundle isMavericks] ? nil : @"gpgmail://show-signature" + offset:-2.0]; + + [securityHeaderSignaturePart appendAttributedString:signedAttachmentString]; + [[securityHeaderSignaturePart mutableString] appendString:@" "]; + + NSMutableString *signerLabelsString = [NSMutableString stringWithString:titlePart]; + // No MacGPG2? No signer labels! + if(errorCode != GPGErrorNotFound && [[signerLabels allObjects] count] != 0) + [signerLabelsString appendFormat:@" (%@)", [[signerLabels allObjects] componentsJoinedByString:@", "]]; + + if([GPGMailBundle isMavericks]) + [securityHeaderSignaturePart appendAttributedString:[NSAttributedString attributedStringWithString:signerLabelsString]]; + else + [securityHeaderSignaturePart appendAttributedString:[[NSAttributedString alloc] initWithString:signerLabelsString attributes:[NSAttributedString headerAttributes]]]; + + return securityHeaderSignaturePart; +} + +@end diff --git a/Source/MessageRouter+GPGMail.h b/Source/MessageRouter+GPGMail.h new file mode 100644 index 00000000..75318d87 --- /dev/null +++ b/Source/MessageRouter+GPGMail.h @@ -0,0 +1,48 @@ +/* MessageRouter+GPGMail.h created by Lukas Pitschl (@lukele) on Fri 29-Jul-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface MessageRouter_GPGMail : NSObject + +/** + This method usually returns all rules that apply to the message + as the method name already says. + Since PGP encrypted &/| signed messages are not properly handled + automatically, GPGMail has to re-evaluate them. + The Re-evaluation is tricky, since normally all rules are re-applied which + are related to a message, but we only want to re-apply those rules + related to signed & encrypted messages. + + To get that behaviour we hook into this message and remove any non signing or encryption + related rules when GPGMail re-evaluates a message. +*/ ++ (void)MAPutRulesThatWantsToHandleMessage:(id)message intoArray:(id)rules colorRulesOnly:(BOOL)colorRulesOnly; + +@end diff --git a/Source/MessageRouter+GPGMail.m b/Source/MessageRouter+GPGMail.m new file mode 100644 index 00000000..a95c05a5 --- /dev/null +++ b/Source/MessageRouter+GPGMail.m @@ -0,0 +1,70 @@ +/* MessageRouter+GPGMail.m created by Lukas Pitschl (@lukele) on Fri 29-Jul-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "MessageRouter+GPGMail.h" +#import "MessageCriterion.h" +#import "NSObject+LPDynamicIvars.h" +#import "NSArray+Functional.h" +#import "MessageRule.h" + +@implementation MessageRouter_GPGMail + ++ (void)MAPutRulesThatWantsToHandleMessage:(id)message intoArray:(id)rules colorRulesOnly:(BOOL)colorRulesOnly { + [self MAPutRulesThatWantsToHandleMessage:message intoArray:rules colorRulesOnly:colorRulesOnly]; + + // Not triggered by ourselves to handle encrypted and signed message related rules? + // Out of here! + if(![message getIvar:@"OnlyIncludeEncryptedAndSignedRules"]) + return; + + // Only keep the rules which evaluate the encrypted or signed flag. + NSArray *encryptedOrSignedRules = [rules filter:^MessageRule *(MessageRule *rule) { + BOOL criteriaMatches = NO; + for(MessageCriterion *criterion in rule.criteria) { + if(criterion.criterionType == 18 || criterion.criterionType == 19) { + criteriaMatches = YES; + break; + } + } + + return criteriaMatches ? rule : nil; + }]; + + // Usually it might be dangerous to remove all objects + // Remove all rules and only re-add those that are handling + // encrypted and|or signed messages. + [rules removeAllObjects]; + [rules addObjectsFromArray:encryptedOrSignedRules]; + + [message removeIvar:@"OnlyIncludeEncryptedAndSignedRules"]; + + return; +} + +@end diff --git a/Source/MimeBody+GPGMail.h b/Source/MimeBody+GPGMail.h new file mode 100644 index 00000000..b6a91daf --- /dev/null +++ b/Source/MimeBody+GPGMail.h @@ -0,0 +1,81 @@ +/* MimeBody+GPGMail.h created by stephane on Thu 06-Jul-2000 */ +/* MimeBody+GPGMail.h re-created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface MimeBody_GPGMail : NSObject + +/** + This method is call by Mail internally and it's not exactly clear + what it is used for, but if not replaced, Mail crashes, if PGP signatures + are found for this message, since Mail doesn't know how to deal + with GPGMail's GPGSignatures. + + TODO: Should probably check, if one of the signatures matches a mail account + configured in Mail. (Not necessary at the moment though) + */ +- (BOOL)MAIsSignedByMe; + +/** + It's not exactly clear when this method is used, but internally it + checks the message for mime parts signaling S/MIME encrypted or signed + messages. + + It can't be bad to fix it for PGP messages, anyway. + Instead of the mime parts, which due to inline PGP are not reliable enough, + GPGMail checks for PGP armor, which is included in inline and PGP/MIME messages. + */ +- (BOOL)MA_isPossiblySignedOrEncrypted; + +/** + Returns true if the PGP encrypted data armor is found in the message body. + */ +- (BOOL)containsPGPEncryptedData; + +/** + Returns true if the PGP signed data armor is found in the message body. + */ +- (BOOL)containsPGPSignedData; + +/** + Returns true if either the PGP signed data armor or the PGP encrypted + data armor is found in the message body. + */ +- (BOOL)containsPGPData; + +@end + +@interface MimeBody_GPGMail (NativeMailMethod) + +- (GM_CAST_CLASS(Message *, id))message; +- (NSData *)bodyData; +- (GM_CAST_CLASS(MimePart *, id))topLevelPart; + +@end diff --git a/Source/MimeBody+GPGMail.m b/Source/MimeBody+GPGMail.m new file mode 100644 index 00000000..34b6d152 --- /dev/null +++ b/Source/MimeBody+GPGMail.m @@ -0,0 +1,115 @@ +/* MimeBody+GPGMail.m created by stephane on Thu 06-Jul-2000 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import +#import "CCLog.h" +#import "NSObject+LPDynamicIvars.h" +#import "NSData+GPGMail.h" +#import "Message.h" +#import "MessageStore.h" +#import "MimeBody.h" +#import "Message+GPGMail.h" +#import "MimeBody+GPGMail.h" +#import "MimePart+GPGMail.h" + +@implementation MimeBody_GPGMail + +- (BOOL)MAIsSignedByMe { + // This method tries to check the + // signatures internally, if some are set. + // This results in a crash, since Mail.app + // can't handle GPGSignature signatures. + NSArray *messageSigners = [[self message] PGPSignatures]; + if([messageSigners count] && [messageSigners[0] isKindOfClass:[GPGSignature class]]) { + return YES; + } + // Otherwise call the original method. + BOOL ret = [self MAIsSignedByMe]; + return ret; +} + +/** + It's not exactly clear when this method is used, but internally it + checks the message for mime parts signaling S/MIME encrypted or signed + messages. + + It can't be bad to fix it for PGP messages, anyway. + Instead of the mime parts, which due to inline PGP are not reliable enough, + GPGMail checks for PGP armor, which is included in inline and PGP/MIME messages. + + Apparently + + */ +- (BOOL)MA_isPossiblySignedOrEncrypted { + // Check if message should be processed (-[Message shouldBePGPProcessed] - Snippet generation check) + // otherwise out of here! + if(![[self message] shouldBePGPProcessed]) + return [self MA_isPossiblySignedOrEncrypted]; + + return [self MA_isPossiblySignedOrEncrypted]; +} + +- (BOOL)containsPGPEncryptedData { + if(![[self message] ivarExists:@"containsPGPEncryptedData"]) { + // This might be expensive, but heck... + // The problem is, for messages with large attachments Mail.app doesn't return the complete + // body data for -[MimeBody bodyData]. + // To get the complete data, the message store has to be asked directly. + NSRange encryptedDataRange = [[[[self message] dataSourceProxy] fullBodyDataForMessage:[self message]] rangeOfPGPInlineEncryptedData]; + if(encryptedDataRange.location != NSNotFound) + [[self message] setIvar:@"containsPGPEncryptedData" value:@YES]; + else + [[self message] setIvar:@"containsPGPEncryptedData" value:@NO]; + } + return [[[self message] getIvar:@"containsPGPEncryptedData"] boolValue]; +} + +- (BOOL)containsPGPSignedData { + if(![[self message] ivarExists:@"containsPGPSignedData"]) { + NSRange signedDataRange = [[self bodyData] rangeOfPGPSignatures]; + if(signedDataRange.location != NSNotFound) + [[self message] setIvar:@"containsPGPSignedData" value:@YES]; + else + [[self message] setIvar:@"containsPGPSignedData" value:@NO]; + } + // In case of a inline decrypted message body, the decrypted data doesn't contain the signature + // but only the top level part of the decrypted message body. + return [[[self message] getIvar:@"containsPGPSignedData"] boolValue] || [[self topLevelPart] PGPSigned]; +} + +- (BOOL)containsPGPData { + if([self containsPGPEncryptedData]) + return YES; + if([self containsPGPSignedData]) + return YES; + return NO; +} + +@end diff --git a/Source/MimePart+GPGMail.h b/Source/MimePart+GPGMail.h new file mode 100644 index 00000000..258861c9 --- /dev/null +++ b/Source/MimePart+GPGMail.h @@ -0,0 +1,394 @@ +/* MimePart+GPGMail.h created by stephane on Mon 10-Jul-2000 */ +/* MimePart+GPGMail.h re-created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import + +@class MimeBody; + +#define PGP_ATTACHMENT_EXTENSION @"pgp" +#define PGP_PART_MARKER_START @"::gpgmail-start-pgp-part::" +#define PGP_PART_MARKER_END @"::gpgmail-end-pgp-part::" + +typedef enum { + /* This error describes any error but a non found secret key and NO_DATA 1 (No armored data). */ + GPG_OPERATION_DECRYPTION_GENERAL_ERROR = 100, + /* This error describes the lack of a secret key, if no decryption okay is received. */ + GPG_OPERATION_DECRYPTION_NO_SECKEY_ERROR, + /* This error describes a no armored data error, if the data armor was modified or corrupted. */ + GPG_OPERATION_DECRYPTION_CORRUPTED_DATA_ERROR, + /* This errors describes if on verification a signature was expected but not found + (data might have been modified.) + */ + GPG_OPERATION_VERIFICATION_CORRUPTED_DATA_ERROR, + /* This error describes the lack of the public key used to sign the data. */ + GPG_OPERATION_VERIFICATION_NO_PUBKEY_ERROR +} GPG_OPERATION_ERRORS; + +typedef enum { + GPG_OPERATION_DECRYPTION = 200, + GPG_OPERATION_VERIFICATION +} GPG_OPERATION; + +enum { + GMSaveClearMessage = 30754 +}; + + +@class MFMimeDecodeContext, _NSDataMessageStoreMessage; + +@interface MimePart_GPGMail : NSObject + +@property (assign) BOOL PGPEncrypted; +@property (assign) BOOL PGPPartlyEncrypted; +@property (assign) BOOL PGPSigned; +@property (assign) BOOL PGPPartlySigned; +@property (assign) BOOL PGPDecrypted; +@property (assign) BOOL PGPVerified; +@property (assign) BOOL PGPAttachment; +@property (retain) NSArray *PGPSignatures; +@property (retain) MFError *PGPError; +@property (retain) NSData *PGPDecryptedData; +@property (retain) MessageBody *PGPDecryptedBody; +@property (retain) NSString *PGPDecryptedContent; +@property (retain) NSString *PGPVerifiedContent; +@property (retain) NSData *PGPVerifiedData; + +/** + Creates the parsed message (content of the emai) which is then + displayed to the user. + It's called for every mime part once. It might return a string, an instance + of parsed message or information to an attachment. + + For each part also decryptedMessageBodyIsEncrypted is called, which returns + the message body of the decrypted message, which is set by either the S/MIME + methods of Mail.app or the GPG methods. This also allows Mail.app to cache + the decrypted body internally. (GPGMail might, but does not interfere with that + cache at the moment.) + + GPGMail uses this method to implement support for GPG related mime parts, being + pgp-encrypted and pgp-signature for the moment. It's also used for text/plain + to support inline gpg encrypted messages. + */ +- (id)MADecodeWithContext:(id)ctx; + +/** + * Loops through all mime parts and runs a block on them. + */ +- (void)enumerateSubpartsWithBlock:(void (^)(MimePart *))partBlock; + +/** + Calling topLevelPart on the mimeBody forces the parts to be regenerated. + This way it's possible to access the top level part by walking up + the mime part tree avoiding the regeneration. + */ +- (MimePart *)topPart; + +/** + Is called for every text/plain part. Firt checks if it contains any encrypted or + signed data and if so operates on it. + */ +- (id)MADecodeTextPlainWithContext:(MFMimeDecodeContext *)ctx; + +/** + Is called for every text/html part. text/html is not easy to parse, so + if any PGP data if found the text/part is used instead, if it exists. + */ +- (id)MADecodeTextHtmlWithContext:(MFMimeDecodeContext *)ctx; + +/** + Is called for every application/octet-stream part which might contain + a PGP encrypted/signed attachment. + If any PGP data is found, decrypt is called on it. + */ +- (id)MADecodeApplicationOctet_streamWithContext:(MFMimeDecodeContext *)ctx; + +/** + Detects if the attachment is the PGP/MIME encrypted attachment. + Important to exclude from the attachment count. + */ +- (BOOL)isPGPMimeEncryptedAttachment; + +/** + Detects if the attachment is the PGP/MIME signature attachment. + Important to exclude from the attachment count. + */ +- (BOOL)isPGPMimeSignatureAttachment; + +- (id)decodePGPEncryptedAttachment; +- (id)decodePGPSignatureAttachment; + +/** + Adds the filename of a signature attachment which should not be displayed. + */ +- (void)scheduleSignatureAttachmentForRemoval:(NSString *)attachment; + +/** + Returns a list of all filenames of attachments scheduled for removal. + */ +- (NSArray *)signatureAttachmentScheduledForRemoval; + +/** + Checks the extension for known PGP Data extensions and sets the values + */ +- (void)attachmentMightBePGPEncrypted:(BOOL *)mightEnc orSigned:(BOOL *)mightSig; + +/** + Is called by GPGDecodeWithContext if a multipart/encrypted mime part + is found. Performs the decryption and returns the result. + */ +- (id)decodeMultipartEncryptedWithContext:(id)ctx; + +/** + Fixes an issue with a very early alpha of GPGMail 2.0 + which sent out completely fucked up messages. + The encrypted part of those messages doesn't contain any encrypted data + but the plain data of the message. + Returns the plain data. + */ +- (id)decodeFuckedUpEarlyAlphaData:(NSData *)data context:(MFMimeDecodeContext *)ctx; + +/** + Decrypts the data and sets all important PGP information for the mime part. + */ +- (id)decryptData:(NSData *)encryptedData; + +/** + Helper method which calls either errorFromDecryptionOperation: or errorFromVerificationOperation: + based on the operation. + */ +- (id)errorFromGPGOperation:(GPG_OPERATION)operation controller:(GPGController *)gpgc; + +/** + Checks the GPGController for decryption errors and returns the appropriate + error message. + */ +- (MFError *)errorFromDecryptionOperation:(GPGController *)gpgc; + + +/** + Checks the GPGController for verification errors and returns the appropriate + error message. + */ +- (MFError *)errorFromVerificationOperation:(GPGController *)gpgc; + +/** + Helper method to process GPGController NODATA errors. + */ +- (BOOL)hasError:(NSString *)errorName noDataErrors:(NSArray *)noDataErrors; + +/** + Reads the charset of a PGP message from the armor headers. + No charset is found return UTF8. + */ +- (NSStringEncoding)stringEncodingFromPGPData:(NSData *)PGPData; + +/** + Return the charset found in the current mime part or top part. + */ +- (NSStringEncoding)bestStringEncoding; + +/** + Checks for a signed message begin marker. + */ +- (BOOL)hasPGPInlineSignature:(NSData *)data; + +/** + Returns the signed data with PGP part markers, if the message is part signed. + Otherwise the input data is the output data. + */ +- (NSData *)signedDataWithAddedPGPPartMarkersIfNecessaryForData:(NSData *)signedData; + +/** + Creates a new message similar the way S/MIME does it, from the decryptedData. + */ +- (MimeBody *)decryptedMessageBodyFromDecryptedData:(NSData *)decryptedData; + +/** + Returns the complete part data but replaces the encrypted data with the decrypted + first or leaves the encrypted data in, if there was an decryption error. + */ +- (NSData *)partDataByReplacingEncryptedData:(NSData *)originalPartData decryptedData:(NSData *)decryptedData encryptedRange:(NSRange)encryptedRange; + +/** + Calls decryptData: for either PGP/MIME or PGP/Inline encrypted data. + */ +- (id)decryptedMessageBodyOrDataForEncryptedData:(NSData *)encryptedData encryptedInlineRange:(NSRange)encryptedRange; + +/** + Calls decryptdData: but doesn't try to further process the decrypted data if isAttachment is set to YES. + */ +- (id)decryptedMessageBodyOrDataForEncryptedData:(NSData *)encryptedData encryptedInlineRange:(NSRange)encryptedRange isAttachment:(BOOL)isAttachment; + +/** + Verifies the passed data and sets the PGP information for the part. + */ +- (void)verifyData:(NSData *)signedData signatureData:(NSData *)signatureData; + +/** + For signed messages Mail.app automatically calls verifySignature. + After first checking if the verification has not already been performed, + using the MimePart.needsSignatureVerification method, this method + verifies the signature, and stores all found signatures in MimePart._messageSigners. + + Unfortunately verifySignature understands that the signature + is no MIME signature, hence never calls _verifySignatureWithCMSDecoder, + therefore we have to hijack this method and re-implement it for our own. + To decide whether or not the original method should be called, we'll + use the protocol information. + */ +- (void)MAVerifySignature; + +/** + Is used to verify PGP/inline signatures. + */ +- (void)_verifyPGPInlineSignatureInData:(NSData *)data; + +/** + Strips the PGP SIGNED markes from the part HTML string. + */ +- (id)stripSignatureFromContent:(id)content; + +/** + Is called internally from Mail.app by verify signature. + Needs to be overridden to allow application/pgp-signature parts + which ensures that the PGP/MIME signed message is actually verified. + */ +- (BOOL)MAUsesKnownSignatureProtocol; + +/** + Adds markers for encrypted/signed parts which are later replaced + by the HTML to display the markers in the message. + */ +- (void)addPGPPartMarkerToData:(NSMutableData *)data partData:(NSData *)partData; + +/** + Replace the markers with the appropriate HTML for display. + */ +- (NSString *)contentWithReplacedPGPMarker:(NSString *)content isEncrypted:(BOOL)isEncrypted isSigned:(BOOL)isSigned; + +/** + Checks if the data contains markers. + */ +- (BOOL)containsPGPMarker:(NSData *)data; + +/** + Is called by Mail.app to check if a message is signed. It's not yet entirely + clear how Mail finds out whether a message is signed or not, but GPGMail uses + the MimePart.PGPSigned variable. + If message signers are available, this returns true. + */ +- (BOOL)MAIsSigned; + +/** + If a PGP/MIME message is sent through an Exchange Server the + message headers are being modified. + This method checks for those modified headers. + */ +- (BOOL)_isExchangeServerModifiedPGPMimeEncrypted; + +/** + Checks if the message is PGP/MIME Encrypted. + */ +- (BOOL)isPGPMimeEncrypted; + +/** + Create a new message text/plain message for decrypted pgp inline data. + */ +- (Message *)messageWithMessageData:(NSData *)messageData; + +/** + Is called when the decrypted body is supposed to be cleared. + Mostly happens when a message is deselected. + In that case all data added to the message has to be removed. + */ +- (void)MAClearCachedDecryptedMessageBody; + +/** + This methods is called internally by Mail's MessageWriter. The MessageWriter + class is used to create outgoing messages and has various flags among them shouldSign + and shouldEncrypt. + If shouldEncrypt is set, this method is called the data to encrypt and returns the + mime part which will contain the encrypted data. + + The actual encrypted data is stored in the pointer *encryptedData. + */ +- (id)MANewEncryptedPartWithData:(NSData *)data recipients:(id)recipients encryptedData:(NSData **)encryptedData NS_RETURNS_RETAINED; + +/** + Like newEncryptedPartWithData (see above), this method is called from MessageWriter + too when creating the outgoing message and shouldSign is set to true. + + Only the data to actually sign is passed in (some transformation necessary, to help + with signature verification problems?) + + Again, the mime part containing the data is returned and the signature written + to the *signatureData pointer. + */ +- (id)MANewSignedPartWithData:(id)data sender:(id)sender signatureData:(id *)signatureData NS_RETURNS_RETAINED; + +/** + Get the (autoreleased) data for a new PGP/Inline signed message. + EXPERIMENTAL! + */ +- (NSData *)inlineSignedDataForData:(id)data sender:(id)sender; + +/** + Uses the ActivityMonitor to display an error message if the signing process failed. + Analog to what S/MIME uses. + */ +- (void)failedToSignForSender:(NSString *)sender gpgErrorCode:(GPGErrorCode)errorCode error:(NSException *)error; + +/** + Uses the ActivityMonitor to display an error message if the encryption process failed. + Analog to what S/MIME uses. + */ +- (void)failedToEncryptForRecipients:(NSArray *)recipients gpgErrorCode:(GPGErrorCode)errorCode error:(NSException *)error; + +@end + +@interface MimePart_GPGMail (MailMethods) + +- (MimeBody *)mimeBody; +- (MimePart *)parentPart; +- (NSData *)bodyData; +- (id)dispositionParameterForKey:(NSString *)key; +- (BOOL)isType:(NSString *)type subtype:(NSString *)subtype; +- (id)bodyParameterForKey:(NSString *)key; +- (NSArray *)subparts; +- (id)decryptedMessageBody; +- (void)setDispositionParameter:(id)parameter forKey:(id)key; +- (BOOL)isAttachment; +- (NSData *)signedData; +- (NSString *)type; +- (NSString *)subtype; +- (id)contentTransferEncoding; + +@end diff --git a/Source/MimePart+GPGMail.m b/Source/MimePart+GPGMail.m new file mode 100644 index 00000000..b283a29d --- /dev/null +++ b/Source/MimePart+GPGMail.m @@ -0,0 +1,2506 @@ +/* MimePart+GPGMail.m created by stephane on Mon 10-Jul-2000 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY GPGTools Project Team AND CONTRIBUTORS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL GPGTools Project Team AND CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import +#define restrict +#import +#undef restrict +#import "CCLog.h" +#import "NSData+GPGMail.h" +#import "NSArray+Functional.h" +#import "NSObject+LPDynamicIvars.h" +#import "GPGFlaggedString.h" +#import "GPGException+GPGMail.h" +#import "MimePart+GPGMail.h" +#import "MimeBody+GPGMail.h" +#import "NSString+GPGMail.h" +#import "Message+GPGMail.h" +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import "ParsedMessage.h" +#import "GPGMailBundle.h" +#import "NSData-MessageAdditions.h" + +@implementation MimePart_GPGMail + +/** + A second attempt to finding messages including PGP data. + OpenPGP/MIME encrypted/signed messages follow RFC 3156, so those + messages are no problem to decrypt. + + Inline PGP encrypted/signed messages are a whole other story, since + there's no standard which describes exactly how to produce them. + + THE THEORY + * Each message which contains encrypted/signed data is either: + * One part: text/plain + * Find data, encrypt it and create a new message with the old message headers + * Setting the message as the decrypted message. + * Multi part: multipart/alternative, multipart/mixed + * Most likely contains a text/html and a text/plain part. + * Both parts might contain PGP relevant data, but text/html data is + very hard to process right (it most likely fails.) + * In that case: ignore the text/html part and simply process the plain part. + (Users might have a problem with that, but most likely not, since messages including HTML + should always use OpenPGP/MIME) + OLD METHOD + * The old method used several entry points for the different mime types + * and tried to find pgp data in there. + * This method often failed, due to compley mime types which needed + * manual searching and guessing of parts to follow. + * Useless to say, it wasn't failsafe. + + NEW METHOD + * The new method performs the following step: + 1.) Check if the message contains the OpenPGP/MIME parts + * found -> decrpyt the message, return the decrypted message. + Heck this was easy! + 2.) Check if the message contains any PGP inline data. + * not found -> call Mail.app's original method and let Mail.app to the heavy leaving. + * found -> follow step 3 + 3.) Loop through every mime part of the message (recursively) and + find text/plain parts. + 4.) Check each text/plain part if it contains PGP inline data. + If it does, store its address (or better the mime part object?) in a + dynamic ivar on the message. + 5.) Check for each subsequent call of decodeWithContext if the current mime part + matches a found encrypted part. + * found -> decrypt the part, flag the message as decrypted, build a new decrypted message with the original headers + and return that to Mail.app. + + Since Mail.app calls decodeWithContext recursively, at the end of the cycle + it comes back to the topLevelPart. + + 6.) When Mail.app returns to the topLevelPart and no decrypted part was found, + even though GPGMail knows there was a part which contains PGP data, this means two things: + 1.) Something went wrong (sorry for that ...) + 2.) The message was a multipart message and contains a HTML part, which was chosen + as the preferred part, due to a setting in Mail.app. + In that case, decodeWithContext: is never called on the text/plain mime part. + + If the second thing holds true, GPGMail fetches the mime part which is supposed + to include the PGP data, processes it and returns the result to Mail.app. + + * The advantage of the new method is that it completely ignores complex mime types, + making the whole decoding process more reliable. + + NEW METHOD 2 + * Well, NEW METHOD is not really suitable, since it completely replaces multipart/mixed + messages with only the decrypted part, which wouldn't allow to have non-encrypted + attachments. + + The steps which actually make sense are the following: + + 1.) Directly in decodeWithContext: only check for multipart/encrypted. + If found, proceed decrypting the application/octet part and replacing + the whole message with the decrypted data, which must contain a valid + RFC 822 compliant message including all relevant headers. + + 2.) Use the hook in decodeTextHtml and decodeTextPart + + 2.1) Check if the part is decoded with base64. If so decode it. + 2.1) Check the part data for PGP signatures or PGP encrypted data. + 2.2) Decrypt the part data. + 2.2) Replace the encrypted data with the decrypted data (for either the html or text part) + 2.3) Cache the complete data just like the decrypted message body would + be cached. + 2.4) DON'T REPLACE THE MESSAGE BODY but + return the complete data + 2.5) Let Mail.app work it's magic for the rest + of the message. + + */ +// TODO: Extend to find multiple signatures and encrypted data parts, if necessary. +- (id)MADecodeWithContext:(id)ctx { + Message *currentMessage = [(MimeBody *)[self mimeBody] message]; + + // _calculateSnippetForMessages doesn't attempt to decode + // attachments. That's a problem, because once a message is displayed + // the PGPInfoCollected flag is already set on the message, + // but attachment were never taken into account. + // Resetting PGPInfoCollected on each decoding might solve + // this issue. (doesn't completely fix it, read on, fixes it better, but might cause other problems.) + // If the message is already selected when Mail.app is opened, the message doesn't seem + // to be reparsed, but the info from _calculateSnippetForMessages is somehow reused. + if(![self parentPart]) { + [[[self mimeBody] message] setPGPInfoCollected:NO]; + ((MFMimeDecodeContext *)ctx).decodeTextPartsOnly = NO; + } + + // Check if message should be processed (-[Message shouldBePGPProcessed]) + // otherwise out of here! + if(![(Message_GPGMail *)currentMessage shouldBePGPProcessed]) + return [self MADecodeWithContext:ctx]; + + [self importAttachedKeyIfNeeded]; + + // Check if this is an exchange TNEF attachment and. + GM_CAST_CLASS(MimePart *, id) tnefPart = nil; + id ret = nil; + if(![self parentPart] && (tnefPart = [self mimePartWithTNEFAttachmentContainingSignedMessage])) { + MimeBody *newMessageBody = [tnefPart decodeApplicationMS_tnefWithContext:ctx]; + ((MFMimeDecodeContext *)ctx).shouldSkipUpdatingMessageFlags = YES; +#warning It's no necessary, maybe even harmful to use parsedMessageWithContext here. + // parsedMessageWithContext should be replaced with [[newMessageBody topLevelPart] decodeWithContext:] + ret = [[newMessageBody topLevelPart] decodeWithContext:ctx]; + GM_CAST_CLASS(MimePart *, MimePart_GPGMail *) newTopLevel = [newMessageBody topLevelPart]; + self.PGPSigned = [newTopLevel PGPSigned]; + self.PGPError = [newTopLevel PGPError]; + + [(Message_GPGMail *)currentMessage collectPGPInformationStartingWithMimePart:self decryptedBody:newMessageBody]; + if(!ret) + ret = [self MADecodeWithContext:ctx]; + } + else if([self isPGPMimeEncrypted]) { + MimeBody *decryptedBody = [self decodeMultipartEncryptedWithContext:ctx]; + // Add PGP information from mime parts. + ((MFMimeDecodeContext *)ctx).shouldSkipUpdatingMessageFlags = YES; + ret = [[decryptedBody topLevelPart] decodeWithContext:ctx]; + [(Message_GPGMail *)currentMessage collectPGPInformationStartingWithMimePart:self decryptedBody:decryptedBody]; + // If decryption failed, call the original method. + if(!ret) + ret = [self MADecodeWithContext:ctx]; + } + else if([self isType:@"application" subtype:@"pgp"]) { + // Special case application/pgp seems to be inline PGP with a weird content type. + // In order to handle it, it's treated like any other text/plain message. + ret = [(id)self decodeTextPlainWithContext:ctx]; + } + else { + // Set a flag that this is not a PGPMimeEncrypted message + // and thus snippets should not be created. + // Snippets should never be generated for inline PGP messages, + // since they are never deleted unlike with PGP/MIME messages. + ret = [self MADecodeWithContext:ctx]; + } + + // Loop through all the mime parts that have been processed and set + // all necessary flags. + // This is pretty much crazy, in case of mailing list emails, the multipart/encrypted + // part is NOT the top part. So at this point all the information found for the message + // would be overwritten. To avoid this, a check is performed if the PGP info was already + // collected. If that's the case, skip the collecting + if([self parentPart] == nil && ![(Message_GPGMail *)currentMessage PGPInfoCollected]) { + [(Message_GPGMail *)currentMessage collectPGPInformationStartingWithMimePart:self decryptedBody:nil]; + } + + // To remove .sig attachments, they have to be removed. + // from the ParsedMessage html. + if([ret isKindOfClass:[GPGMailBundle resolveMailClassFromName:@"ParsedMessage"]]) { + // If this is a PGP-Partitioned message, PGPPartitionedContent is set, + // so return that. + if([[[self mimeBody] message] getIvar:@"PGPPartitionedContent"] && ![self parentPart]) { + NSMutableString *completeHTML = [NSMutableString stringWithString:[[[self mimeBody] message] getIvar:@"PGPPartitionedContent"]]; + if([((ParsedMessage *)ret).html length]) + [completeHTML appendString:((ParsedMessage *)ret).html]; + ((ParsedMessage *)ret).html = completeHTML; + } + + if([[self signatureAttachmentScheduledForRemoval] count]) { + DebugLog(@"Parsed Message without objects: %@", [((ParsedMessage *)ret).html stringByDeletingAttachmentsWithNames:[[(MimeBody *)[self mimeBody] message] getIvar:@"PGPSignatureAttachmentsToRemove"]]); + ((ParsedMessage *)ret).html = [((ParsedMessage *)ret).html stringByDeletingAttachmentsWithNames:[self signatureAttachmentScheduledForRemoval]]; + } + } + + return ret; +} + +- (MimePart *)mimePartWithTNEFAttachmentContainingSignedMessage { + MimePart * __block tnefPart = nil; + + [self enumerateSubpartsWithBlock:^(MimePart *part) { + if(![[[part type] lowercaseString] isEqualToString:@"application"]) + return; + + if(![[[part subtype] lowercaseString] isEqualToString:@"ms-tnef"] && + ![[[part bodyParameterForKey:@"name"] lowercaseString] isEqualToString:@"winmail.dat"] && + ![[[part bodyParameterForKey:@"name"] lowercaseString] isEqualToString:@"win.dat"]) + return; + + // Last but not least, let's look into the body, to find multipart/signed. + NSData *bodyData = [part bodyData]; + // Yosemite seems to do the base64 internally already, so let's rely on that. + if(![GPGMailBundle isYosemite]) { + if([[[part contentTransferEncoding] lowercaseString] isEqualToString:@"base64"]) + bodyData = [bodyData decodeBase64]; + } + + NSData *searchData = [@"multipart/signed" dataUsingEncoding:NSASCIIStringEncoding]; + if([bodyData rangeOfData:searchData options:0 range:NSMakeRange(0, [bodyData length])].location == NSNotFound) + return; + + tnefPart = part; + }]; + + return tnefPart; +} + +- (id)decodeApplicationMS_tnefWithContext:(id)ctx { + // TNEF decoding is inspired by tnefparser python extension. + NSData *bodyData = [self bodyData]; + + NSUInteger (^bytesToInt)(NSData *) = ^(NSData *data) { + const char *bytes = [data bytes]; + NSUInteger n = 0, num = 0; + + for(NSUInteger i = 0; i < [data length]; i++) { + uint8_t byte = bytes[i]; + num += (NSUInteger)(byte << n); + n += 8; + } + return num; + }; + + // Some TNEF constants. + NSUInteger tnefSignature = 0x223e9f78; + NSUInteger tnefAttachmentRenderingData = 0x9002; + NSUInteger tnefAttachmentData = 0x800f; + NSUInteger tnefLevelAttachment = 0x02; + NSUInteger offset = 0; + + // Verify the signature. If it doesn't match, out of here. + NSUInteger signature = bytesToInt([bodyData subdataWithRange:NSMakeRange(offset, 4)]); + if(signature != tnefSignature) + return nil; + + NSMutableArray *attachments = [[NSMutableArray alloc] init]; + offset = 6; + + NSUInteger dataLength = [bodyData length]; + /* Temporarily store the data of an attachment. */ + NSMutableData *attachmentData = nil; + + // For some reason, the internal objects might not all + // be complete objects. So it might happen, subdataWithRange receives + // an invalid range and raises an exception. + // We'll simply catch that exception and ignore it. + @try { + while(offset < (dataLength - 7)) { + NSData *tnefObject = [bodyData subdataWithRange:NSMakeRange(offset, dataLength - offset)]; + NSUInteger internalOffset = 0; + // Get the object level. + NSUInteger level = bytesToInt([tnefObject subdataWithRange:NSMakeRange(internalOffset, 1)]); + // Get the object name. Only attachments are of interest. + internalOffset += 1; + NSUInteger name = bytesToInt([tnefObject subdataWithRange:NSMakeRange(internalOffset, 2)]); + // Get the object length. + internalOffset += 4; + NSUInteger length = bytesToInt([tnefObject subdataWithRange:NSMakeRange(internalOffset, 4)]); + // Get the object data. + internalOffset += 4; + NSData *objectData = [tnefObject subdataWithRange:NSMakeRange(internalOffset, length)]; + + // Length of the entire tnefObject. + internalOffset += length + 2; + NSUInteger tnefObjectLength = internalOffset; + + // Forward the offset to the next tnefObject. + offset += tnefObjectLength; + + // Only attachments are of interest. + if(name != tnefAttachmentRenderingData && level != tnefLevelAttachment) + continue; + + // Now name matches tnefAttachmentRenderingData, initialize + // a new attachment data. + if(name == tnefAttachmentRenderingData) { + if(attachmentData != nil) { + [attachments addObject:attachmentData]; + attachmentData = nil; + } + attachmentData = [[NSMutableData alloc] init]; + } + else if(level == tnefLevelAttachment && name == tnefAttachmentData) { + [attachmentData appendData:objectData]; + } + } + } + @catch (id exception) { + if(!([exception isKindOfClass:[NSRangeException class]] && [exception isEqualToString:NSRangeException])) + @throw exception; + } + + if(attachmentData != nil) + [attachments addObject:attachmentData]; + + NSData *signedAttachment = nil; + NSData *multipartSignedData = [@"multipart/signed" dataUsingEncoding:NSASCIIStringEncoding]; + NSData *pgpSignature = [@"pgp-signature" dataUsingEncoding:NSASCIIStringEncoding]; + + for(NSData *signedData in attachments) { + if([signedData rangeOfData:multipartSignedData options:0 range:NSMakeRange(0, [signedData length])].location != NSNotFound || + [signedData rangeOfData:pgpSignature options:0 range:NSMakeRange(0, [signedData length])].location != NSNotFound) { + signedAttachment = signedData; + break; + } + } + + // If attachment data doesn't contain multipart/signed nor application/pgp-signature, + // return nil; + if(!signedAttachment) + return nil; + + // Otherwise let's create a new message now. + Message *signedMessage = [GM_MAIL_CLASS(@"Message") messageWithRFC822Data:signedAttachment sanitizeData:YES]; + [signedMessage setMessageInfoFromMessage:[(MimeBody *)[self mimeBody] message]]; + MimeBody *messageBody = [signedMessage messageBodyUpdatingFlags:YES]; + + // It's necessary to temporarily store this message, so it's retained, + // otherwise it will be released to early. + [[(MimeBody *)[self mimeBody] message] setIvar:@"TNEFDecodedMessage" value:signedMessage]; + + return messageBody; +} + +- (void)enumerateSubpartsWithBlock:(void (^)(MimePart *))partBlock { + __block void (^walkParts)(MimePart *); + __block void (^__weak weakWalkParts)(MimePart *); + + walkParts = ^(MimePart *currentPart) { + typeof(walkParts) __strong strongWalkParts = weakWalkParts; + + partBlock(currentPart); + for(MimePart *tmpPart in [currentPart subparts]) { + NSAssert(strongWalkParts != NULL && strongWalkParts != nil, @"BUG! strongWalkParts should not be nil"); + strongWalkParts(tmpPart); + } + }; + weakWalkParts = walkParts; + walkParts((MimePart *)self); +} + +- (MimePart *)topPart { + MimePart *parentPart = [self parentPart]; + MimePart *currentPart = parentPart; + if(parentPart == nil) + return (MimePart *)self; + + do { + if([currentPart parentPart] == nil) + return currentPart; + } + while((currentPart = [currentPart parentPart])); + + return nil; +} + +- (id)MADecodeTextPlainWithContext:(MFMimeDecodeContext *)ctx { + // Check if message should be processed (-[Message shouldBePGPProcessed] - Snippet generation check) + // otherwise out of here! + if(![[(MimeBody *)[self mimeBody] message] shouldBePGPProcessed]) + return [self MADecodeTextPlainWithContext:ctx]; + + BOOL userDidSelectMessage = [[(MimeBody *)[self mimeBody] message] userDidActivelySelectMessageCheckingMessageOnly:NO]; + + // 1. Step, check if the message was already decrypted. + if(self.PGPEncrypted && self.PGPDecryptedData) + // Inline PGP will never return the decrypted data, unless the + // use explicitly selected the message. + return self.PGPDecryptedData && userDidSelectMessage ? self.PGPDecryptedContent : [self MADecodeTextPlainWithContext:ctx]; + + if(self.PGPSigned && self.PGPVerifiedContent) + return self.PGPVerifiedContent && userDidSelectMessage ? self.PGPVerifiedContent : [self MADecodeTextPlainWithContext:ctx]; + + // Check if the part is base64 encoded. If so, decode it. + NSData *partData = [self bodyData]; + NSData *decryptedData = nil; + + NSRange encryptedRange = [partData rangeOfPGPInlineEncryptedData]; + NSRange signatureRange = [partData rangeOfPGPInlineSignatures]; + + // No encrypted PGP data and no signature PGP data found? OUT OF HERE! + if(encryptedRange.location == NSNotFound && signatureRange.location == NSNotFound) + return [self MADecodeTextPlainWithContext:ctx]; + + if(encryptedRange.location != NSNotFound) { + decryptedData = [self decryptedMessageBodyOrDataForEncryptedData:partData encryptedInlineRange:encryptedRange]; + // Fetch the decrypted content, since that is already been processed, with markers and stuff. + // In case of a decryption failure, simply return the decrypted data. + NSString *content = nil; + if(self.PGPDecryptedContent) { + content = self.PGPDecryptedContent; + } else { + content = [[decryptedData stringByGuessingEncoding] markupString]; + } + if(!userDidSelectMessage) + return [self MADecodeTextPlainWithContext:ctx]; + return content; + } + + if(signatureRange.location != NSNotFound) { + [self _verifyPGPInlineSignatureInData:partData]; + return self.PGPVerifiedContent; + } + + id ret = [self MADecodeTextPlainWithContext:ctx]; + if(signatureRange.location != NSNotFound) + ret = [self stripSignatureFromContent:ret]; + + return ret; +} + +- (id)MADecodeTextHtmlWithContext:(MFMimeDecodeContext *)ctx { + // Check if message should be processed (-[Message shouldBePGPProcessed] - Snippet generation check) + // otherwise out of here! + if(![[(MimeBody *)[self mimeBody] message] shouldBePGPProcessed]) + return [self MADecodeTextHtmlWithContext:ctx]; + + + // HTML is a bit hard to decrypt, so check if the parent part, + // if exists is a multipart/alternative. + // If that's the case, look for a text/plain part, check if + // it contains a pgp message and decode it. + MimePart *parentPart = [self parentPart]; + if (parentPart && [parentPart isType:@"multipart" subtype:@"alternative"]) { + for (MimePart *tmpPart in [parentPart subparts]) { + if ([tmpPart isType:@"text" subtype:@"plain"]) { + if ([tmpPart.bodyData mightContainPGPEncryptedDataOrSignatures]) { + return [tmpPart decodeTextPlainWithContext:ctx]; + } + break; + } + } + } + + // Check if the HTML contains a decodeable pgp message, + // if that's the case decode it like plain text. + NSData *bodyData = [self bodyData]; + if ([bodyData rangeOfPGPInlineEncryptedData].length > 0 || [bodyData rangeOfPGPInlineSignatures].length > 0) { + return [(MimePart *)self decodeTextPlainWithContext:ctx]; + } + + + return [self MADecodeTextHtmlWithContext:ctx]; +} + +- (id)MADecodeApplicationOctet_streamWithContext:(MFMimeDecodeContext *)ctx { + // Check if message should be processed (-[Message shouldBePGPProcessed] - Snippet generation check) + // otherwise out of here! + if(![[(MimeBody *)[self mimeBody] message] shouldBePGPProcessed]) + return [self MADecodeApplicationOctet_streamWithContext:ctx]; + + // Check if the message is PGP/MIME encrypted and the PGP info was already collected. + // In that case, this is no encrypted attachment. + if([(id)[self topPart] isPGPMimeEncrypted] && [[[self mimeBody] message] PGPInfoCollected]) + return [self MADecodeApplicationOctet_streamWithContext:ctx]; + + BOOL mightBeEncrypted; + BOOL mightBeSignature; + [self attachmentMightBePGPEncrypted:&mightBeEncrypted orSigned:&mightBeSignature]; + if(!mightBeEncrypted && !mightBeSignature) + return [self MADecodeApplicationOctet_streamWithContext:ctx]; + + // It's a PGP attachment otherwise we wouldn't come in here, so set + // that status. + self.PGPAttachment = YES; + + if(mightBeEncrypted) + return [self decodePGPEncryptedAttachment]; + + if(mightBeSignature) + return [self decodePGPSignatureAttachment]; + + // Should not come here, but if it does... well. + return [self MADecodeApplicationOctet_streamWithContext:ctx]; +} + +- (BOOL)isPGPMimeEncryptedAttachment { + // application/pgp-encrypted is also considered to be an attachment. + if([[self dispositionParameterForKey:@"filename"] isEqualToString:@"encrypted.asc"] || + [self isType:@"application" subtype:@"pgp-encrypted"]) + return YES; + + return NO; +} + +- (BOOL)isPGPMimeSignatureAttachment { + if([self isType:@"application" subtype:@"pgp-signature"]) + return YES; + + return NO; +} + + +- (id)decodePGPEncryptedAttachment { + if(self.PGPDecryptedData) + return [self.PGPDecryptedData length] != 0 ? self.PGPDecryptedData : [self MADecodeApplicationOctet_streamWithContext:nil]; + + NSData *partData = [self bodyData]; + NSData *decryptedData = nil; + decryptedData = [self decryptedMessageBodyOrDataForEncryptedData:partData encryptedInlineRange:NSMakeRange(0, [partData length]) isAttachment:YES]; + + // If this a PGP-Partitioned PGPexch.htm attachment, store the decrypted data + // to be returned as the main content of the message. + NSString *filename = [[self dispositionParameterForKey:@"filename"] lowercaseString]; + if([decryptedData length] && [filename isEqualToString:@"pgpexch.htm"]) { + NSString *decryptedContent = [decryptedData stringByGuessingEncodingWithHint:[self bestStringEncoding]]; + + [[(MimeBody *)[self mimeBody] message] setIvar:@"PGPPartitionedContent" value:decryptedContent]; + // Also reset PGPAttachment, so this is not treated as an attachment. + self.PGPAttachment = NO; + // Since the paritioned content is encrypted, we have to correctly set the status + // for the top level part of the message, which the paritioned content replaces. + ((MimePart_GPGMail *)[self topPart]).PGPEncrypted = YES; + if([self PGPSigned]) + ((MimePart_GPGMail *)[self topPart]).PGPSigned = YES; + if([self PGPSignatures]) + ((MimePart_GPGMail *)[self topPart]).PGPSignatures = [self PGPSignatures]; + } + + return decryptedData; +} + +- (id)decodePGPSignatureAttachment { + MimePart *parentPart = [self parentPart]; + MimePart *signedPart = nil; + NSString *signatureFilename = [[self dispositionParameterForKey:@"filename"] lastPathComponent]; + NSString *signedFilename = [signatureFilename stringByDeletingPathExtension]; + for(MimePart *part in [parentPart subparts]) { + if([[[part dispositionParameterForKey:@"filename"] lastPathComponent] isEqualToString:signedFilename]) { + signedPart = part; + break; + } + } + + if(!signedPart) { + // If there's no signed part, there's a good chance, this + // attachment isn't really signed after all, so let's reset + // PGPAttachment. + self.PGPAttachment = NO; + return [self MADecodeApplicationOctet_streamWithContext:nil]; + } + + // Now try to verify. + [self verifyData:[signedPart bodyData] signatureData:[self bodyData]]; + + // Remove the signature attachment also if verification failed. + BOOL removeAllSignatureAttachments = [[GPGOptions sharedOptions] boolForKey:@"HideAllSignatureAttachments"]; + DebugLog(@"Hide All attachments: %@", removeAllSignatureAttachments ? @"YES" : @"NO"); + BOOL remove = removeAllSignatureAttachments ? YES : self.PGPVerified; + + if(remove) + [self scheduleSignatureAttachmentForRemoval:signatureFilename]; + + return [self MADecodeApplicationOctet_streamWithContext:nil]; +} + +- (void)scheduleSignatureAttachmentForRemoval:(NSString *)attachment { + Message *message = [(MimeBody *)[self mimeBody] message]; + if(![message ivarExists:@"PGPSignatureAttachmentsToRemove"]) + [message setIvar:@"PGPSignatureAttachmentsToRemove" value:[NSMutableArray array]]; + + [[message getIvar:@"PGPSignatureAttachmentsToRemove"] addObject:attachment]; +} + +- (NSArray *)signatureAttachmentScheduledForRemoval { + return [[(MimeBody *)[self mimeBody] message] getIvar:@"PGPSignatureAttachmentsToRemove"]; +} + +- (void)attachmentMightBePGPEncrypted:(BOOL *)mightEnc orSigned:(BOOL *)mightSig { + *mightEnc = NO; + *mightSig = NO; + NSString *nameExt = [[self bodyParameterForKey:@"name"] pathExtension]; + NSString *filenameExt = [[self dispositionParameterForKey:@"filename"] pathExtension]; + + // Check if the attachment is part of a pgp/mime encrypted message. + // In that case, don't try to inline decrypt it. + // This is necessary since decodeMultipartWithContext checks the attachments + // first and after that runs decodeWithContext apparently. + if([[self topPart] isType:@"multipart" subtype:@"encrypted"]) + return; + + NSArray *encExtensions = @[@"pgp", @"gpg", @"asc"]; + *mightEnc = ([encExtensions containsObject:nameExt] || [encExtensions containsObject:filenameExt]); + NSArray *sigExtensions = @[@"sig"]; + *mightSig = ([sigExtensions containsObject:nameExt] || [sigExtensions containsObject:filenameExt]); + + // Sometimes attachments with .asc extension might contain either encrypted data + // or signed data, so it's best to test the actual data as well. + if(*mightSig || [[self bodyData] hasSignaturePacketsWithSignaturePacketsExpected:NO]) { + *mightEnc = NO; + *mightSig = YES; + } + // .asc attachments might contain a public key. See #123. + // So to avoid decrypting such attachments, check if the attachment + // contains a public key. + if((*mightEnc || *mightSig) + && [[self bodyData] rangeOfPGPPublicKey].location != NSNotFound) { + *mightEnc = NO; + *mightSig = NO; + return; + } +} + +- (id)decodeMultipartEncryptedWithContext:(id)ctx { + // 1. Step, check if the message was already decrypted. +#warning this lookup should be locked as Mail.app does it in decryptedMessageBodyIsEncrypted:isSigned:error + if(self.PGPDecryptedBody || self.PGPError) + return self.PGPDecryptedBody ? self.PGPDecryptedBody : nil; + + // 2. Fetch the data part. + // To support exchange server modified messages, the first found octect-stream part + // is used as data part. In case of exchange server modified messages, this part + // is not necessarily the second immediately after the application/pgp-encrypted. + // The data might also be included in the application/pgp-encrypted part if available. + MimePart *dataPart = nil; + for(MimePart *part in [self subparts]) { + if([part isType:@"application" subtype:@"octet-stream"]) + dataPart = part; + + // application/octet-stream still takes precedence and will overwrite + // the dataPart store here. + // In the same way, application/pgp-encrypted is only used, if no previous + // application/octet-stream part was found. + if([part isType:@"application" subtype:@"pgp-encrypted"] && !dataPart) + dataPart = part; + } + + MessageBody *decryptedMessageBody = nil; + NSData *encryptedData = [dataPart bodyData]; + + // If encrytedData is nil, rangeOfData returns 0 instead of NSNotFound. + // Makes sense probably. + if(!encryptedData) + return nil; + + // Check if the data part contains the Content-Type string. + // If so, this is a message which was created by a very early alpha + // of GPGMail 2.0 which sent out completely corrupted messages. + if([encryptedData rangeOfData:[@"Content-Type" dataUsingEncoding:NSUTF8StringEncoding] options:0 range:NSMakeRange(0, [encryptedData length])].location != NSNotFound) + return [self decodeFuckedUpEarlyAlphaData:encryptedData context:ctx]; + + // Yosemite seems to already do the right thing in bodyData, + // so no need for use to do anything. Any they've removed decodeBase64 and isValidBase64Data + // from NSData. + if(![GPGMailBundle isYosemite]) { + if([[dataPart.contentTransferEncoding lowercaseString] isEqualToString:@"base64"] && + [encryptedData isValidBase64Data]) + encryptedData = [encryptedData decodeBase64]; + else if([[dataPart.contentTransferEncoding lowercaseString] isEqualToString:@"quoted-printable"]) + encryptedData = [encryptedData decodeQuotedPrintableForText:YES]; + } + + // The message is definitely encrypted, otherwise this method would never + // be entered, so set that flag. + decryptedMessageBody = [self decryptedMessageBodyOrDataForEncryptedData:encryptedData encryptedInlineRange:NSMakeRange(NSNotFound, 0)]; + + return decryptedMessageBody; +} + +- (id)decodeFuckedUpEarlyAlphaData:(NSData *)data context:(MFMimeDecodeContext *)ctx { + // This data might contain a signature part. + // In that case it's a little bit more complicated since it's necessary to add a + // top level mime part. + if([data rangeOfData:[@"application/pgp-signature" dataUsingEncoding:NSUTF8StringEncoding] options:0 range:NSMakeRange(0, [data length])].location != NSNotFound) { + NSMutableData *newData = [NSMutableData data]; + NSString *boundary = (NSString *)[GM_MAIL_CLASS(@"MimeBody") newMimeBoundary]; + [newData appendData:[boundary dataUsingEncoding:NSUTF8StringEncoding]]; + [newData appendData:[@"\r\n" dataUsingEncoding:NSUTF8StringEncoding]]; + NSRange boundaryStart = [data rangeOfData:[@"--Apple-Mail=_" dataUsingEncoding:NSUTF8StringEncoding] options:0 range:NSMakeRange(0, [data length])]; + NSRange boundaryEnd = [data rangeOfData:[@"\n" dataUsingEncoding:NSUTF8StringEncoding] options:0 range:NSMakeRange(boundaryStart.location, [data length] - boundaryStart.location)]; + NSString *partBoundary = [NSString stringWithData:[data subdataWithRange:NSMakeRange(boundaryStart.location+2, boundaryEnd.location-3)] encoding:NSUTF8StringEncoding]; + [newData appendData:[[NSString stringWithFormat:@"Content-Type: multipart/signed; boundary=\"%@\"; protocol=\"application/pgp-signature\";\r\n", partBoundary] dataUsingEncoding:NSUTF8StringEncoding]]; + [newData appendData:[@"Content-Transfer-Encoding: 7bit\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]]; + [newData appendData:data]; + [newData appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", partBoundary] dataUsingEncoding:NSUTF8StringEncoding]]; + data = newData; + } + + Message *newMessage = [GM_MAIL_CLASS(@"Message") messageWithRFC822Data:data]; + ctx.shouldSkipUpdatingMessageFlags = YES; + // Skip PGP Processing, otherwise this ends up in an endless loop. + // Process the message like a really encrypted message. + // Otherwise the decoding is creates a loop which is really slow! + [newMessage setMessageInfoFromMessage:[(MimeBody *)[self mimeBody] message]]; + // 3. Call message body updating flags to set the correct flags for the new message. + // This will setup the decrypted message, run through all parts and find signature part. + // We'll save the message body for later, since it will be used to do a last + // decodeWithContext and the output returned. + // Fake the message flags on the decrypted message. + id decryptedMimeBody = [newMessage messageBodyUpdatingFlags:YES]; + // Check if the decrypted message contains any signatures, if so it's necessary + // to unset the attachment flag. + BOOL isSigned = [decryptedMimeBody containsPGPSignedData]; + // Fixes the problem where an attachment icon is shown, when a message is either encrypted or signed. + unsigned int numberOfAttachments = [(MimePart *)[self topPart] numberOfAttachments]; + if(numberOfAttachments > 0) + numberOfAttachments -= 2; + // Set the new number of attachments. + [[(MimeBody *)[self mimeBody] message] setNumberOfAttachments:numberOfAttachments isSigned:isSigned isEncrypted:YES]; + // After that set the decryptedMessage body with encrypted to yes! + MFError *error = [[(MimeBody *)decryptedMimeBody topLevelPart] valueForKey:@"_smimeError"]; + if(error) + [(ActivityMonitor *)[GM_MAIL_CLASS(@"ActivityMonitor") currentMonitor] setError:error]; + [decryptedMimeBody setIvar:@"PGPEarlyAlphaFuckedUpEncrypted" value:@YES]; + self.PGPEncrypted = YES; + self.PGPSigned = isSigned; + self.PGPError = error; + [[self topPart] setDecryptedMessageBody:decryptedMimeBody isEncrypted:self.PGPEncrypted isSigned:isSigned error:error]; + self.PGPDecryptedBody = self.decryptedMessageBody; + + // Flag the message as process. + [[(MimeBody *)[self mimeBody] message] setIvar:@"PGPMessageProcessed" value:@YES]; + //[[[self mimeBody] topLevelPart] removeIvar:@"PGPEncryptedPart"]; + //[self removeIvar:@"PGPEncryptedDataRange"]; + // I could really smash myself for ever introducing this bug!!! + // For the security header to correctly show the signatures, + // the message has to be flagged as specially encrypted. + [[self mimeBody] setIvar:@"PGPEarlyAlphaFuckedUpEncrypted" value:@YES]; + + return decryptedMimeBody; +} + +- (id)decryptData:(NSData *)encryptedData { + // Decrypt data should not run if Mail.app is generating snippets + // and NeverCreateSnippetPreviews is set or the passphrase is not in cache + // and CreatePreviewSnippets is not set. + if(![[(MimeBody *)[self mimeBody] message] shouldCreateSnippetWithData:encryptedData]) + return nil; + + + NSData *deArmoredEncryptedData = nil; + // De-armor the message and catch any CRC-Errors. + @try { + deArmoredEncryptedData = [[GPGUnArmor unArmor:[GPGMemoryStream memoryStreamForReading:encryptedData]] readAllData]; + } + @catch (NSException *exception) { + self.PGPError = [self errorForDecryptionError:exception status:nil errorText:nil]; + return nil; + } + + + // Find key needed to decrypt. We do this to lock until last decyption using this key is done. + __block NSString *decryptKey = nil; + + [GPGPacket enumeratePacketsWithData:deArmoredEncryptedData block:^(GPGPacket *packet, BOOL *stop) { + if(packet.tag != GPGPublicKeyEncryptedSessionKeyPacketTag) { + return; + } + + GPGPublicKeyEncryptedSessionKeyPacket *keyPacket = (GPGPublicKeyEncryptedSessionKeyPacket *)packet; + GPGKey *key = [[GPGMailBundle sharedInstance] secretGPGKeyForKeyID:keyPacket.keyID includeDisabled:YES]; + if (key) { + decryptKey = [key description]; + *stop = YES; + } + }]; + + + GPGController *gpgc = [[GPGController alloc] init]; + NSData *decryptedData = nil; + + if (!decryptKey || [gpgc isPassphraseForKeyInCache:decryptKey]) { // + decryptedData = [gpgc decryptData:deArmoredEncryptedData]; + } else { // Only lock if the passphrase is not cached. + @synchronized(decryptKey) { + decryptedData = [gpgc decryptData:deArmoredEncryptedData]; + } + } + + MFError *error = [self errorFromGPGOperation:GPG_OPERATION_DECRYPTION controller:gpgc]; + + // Sometimes decryption okay is issued even though a NODATA error occured. + BOOL success = gpgc.decryptionOkay && !error; + + // Bug #980: If the message doesn't contain a MDC or contains a modified MDC, + // GPGMail currently believes that the message is non-clear-signed and + // ignores the failed decryption. + // + // Libmacgpg has since been patched to no longer return the decrypted content + // if no MDC or a modified MDC is detected, so if data is returned and no DECRYPTION_OKAY + // status line is issued, there's a high chance, that the message was non-clear-signed instead of + // encrypted. In addition a check is added, to see if BEGIN_DECRYPTION wasn't issued either. + BOOL nonClearSigned = ![gpgc.statusDict objectForKey:@"BEGIN_DECRYPTION"] && + ![gpgc.statusDict objectForKey:@"DECRYPTION_OKAY"] && + [decryptedData length] != 0; + + // Let's reset the error if the message is not clear-signed, + // since error will be general error. + if (nonClearSigned) + error = nil; + + // Part is encrypted, otherwise we wouldn't come here, so + // set that status. + self.PGPEncrypted = nonClearSigned ? NO : YES; + + // No error for decryption? Check the signatures for errors. + if(!error) { + // Decryption succeed, so set that status. + self.PGPDecrypted = nonClearSigned ? NO : YES; + error = [self errorFromGPGOperation:GPG_OPERATION_VERIFICATION controller:gpgc]; + } + + // Signatures found, set is signed status, also store the signatures. + NSArray *signatures = gpgc.signatures; + if (signatures.count) { + self.PGPSigned = YES; + self.PGPSignatures = signatures; + + // If there is an error and decrypted is yes, there was an error + // with a signature. Set verified to false. + self.PGPVerified = !(success && error); + } + + // Set attachment filename if needed. + NSString *filename = gpgc.filename; + if (!filename && self.PGPDecrypted) { + filename = [self dispositionParameterForKey:@"filename"]; + if (filename) { + filename = [[filename lastPathComponent] stringByDeletingPGPExtension]; + } + } + if (filename) { + [self setDispositionParameter:filename forKey:@"filename"]; + } + + + + // Last, store the error itself. + self.PGPError = error; + + if (!success && !nonClearSigned) + return nil; + + return decryptedData; +} + +- (id)errorFromGPGOperation:(GPG_OPERATION)operation controller:(GPGController *)gpgc { + if(operation == GPG_OPERATION_DECRYPTION) + return [self errorFromDecryptionOperation:gpgc]; + if(operation == GPG_OPERATION_VERIFICATION) + return [self errorFromVerificationOperation:gpgc]; + + return nil; +} + +- (MFError *)errorForDecryptionError:(NSException *)operationError status:(NSDictionary *)status + errorText:(NSString *)errorText { + + // Might be an NSException or a GPGException + MFError *error = nil; + NSArray *noDataErrors = [status valueForKey:@"NODATA"]; + + NSString *title = nil, *message = nil; + NSMutableDictionary *userInfo = [[NSMutableDictionary alloc] initWithCapacity:0]; + + BOOL isAttachment = [self isAttachment] && ![self isPGPMimeEncryptedAttachment]; + NSString *prefix = !isAttachment ? @"MESSAGE_BANNER_PGP" : @"MESSAGE_BANNER_PGP_ATTACHMENT"; + + NSString *titleKey = nil; + NSString *messageKey = nil; + + if([operationError isMemberOfClass:[NSException class]]) { + titleKey = [NSString stringWithFormat:@"%@_DECRYPT_SYSTEM_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_DECRYPT_SYSTEM_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + } + else if(((GPGException *)operationError).errorCode == GPGErrorNoSecretKey) { + NSArray *missingKeys = ([(GPGException *)operationError gpgTask].statusDict)[@"NO_SECKEY"]; //Array of Arrays of String! + NSMutableString *keyIDs = [NSMutableString string]; + NSUInteger count = missingKeys.count - 1; + NSUInteger i = 0; + for (; i < count; i++) { + [keyIDs appendFormat:@"%@, ", [(NSString *)missingKeys[i][0] shortKeyID]]; + } + [keyIDs appendFormat:@"%@", [(NSString *)missingKeys[i][0] shortKeyID]]; + + + titleKey = [NSString stringWithFormat:@"%@_DECRYPT_SECKEY_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_DECRYPT_SECKEY_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + + message = [NSString stringWithFormat:message, keyIDs]; + } + else if(((GPGException *)operationError).errorCode == GPGErrorWrongSecretKey) { + titleKey = [NSString stringWithFormat:@"%@_DECRYPT_WRONG_SECKEY_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_DECRYPT_WRONG_SECKEY_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + } + else if(((GPGException *)operationError).errorCode == GPGErrorNotFound) { + title = GMLocalizedString(@"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_TITLE"); + message = GMLocalizedString(@"MESSAGE_BANNER_PGP_DECRYPT_ERROR_NO_GPG_MESSAGE"); + } + else if(((GPGException *)operationError).errorCode == GPGErrorCancelled) { + titleKey = [NSString stringWithFormat:@"%@_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_DECRYPT_ERROR_PASSPHRASE_REQUEST_CANCELLED_MESSAGE", prefix]; + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + } + else if(((GPGException *)operationError).errorCode == GPGErrorEOF) { + titleKey = [NSString stringWithFormat:@"%@_DECRYPT_ERROR_PINENTRY_CRASHED_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_DECRYPT_ERROR_PINENTRY_CRASHED_MESSAGE", prefix]; + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + } + else if(((GPGException *)operationError).errorCode == GPGErrorXPCBinaryError || + ((GPGException *)operationError).errorCode == GPGErrorXPCConnectionError || + ((GPGException *)operationError).errorCode == GPGErrorXPCConnectionInterruptedError) { + titleKey = [NSString stringWithFormat:@"%@_DECRYPT_ERROR_XPC_DAMAGED_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_DECRYPT_ERROR_XPC_DAMAGED_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + } + else if(((GPGException *)operationError).errorCode == GPGErrorNoMDC || + ((GPGException *)operationError).errorCode == GPGErrorBadMDC) { + titleKey = [NSString stringWithFormat:@"%@_DECRYPT_MDC_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_DECRYPT_MDC_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + } + else if([self hasError:@"NO_ARMORED_DATA" noDataErrors:noDataErrors] || + [self hasError:@"INVALID_PACKET" noDataErrors:noDataErrors] || + [(GPGException *)operationError isCorruptedInputError]) { + titleKey = [NSString stringWithFormat:@"%@_DECRYPT_CORRUPTED_DATA_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_DECRYPT_CORRUPTED_DATA_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + } + else { + titleKey = [NSString stringWithFormat:@"%@_DECRYPT_GENERAL_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_DECRYPT_GENERAL_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + message = [NSString stringWithFormat:message, errorText]; + } + + userInfo[@"_MFShortDescription"] = title; + userInfo[@"NSLocalizedDescription"] = message; + userInfo[@"DecryptionError"] = @YES; + + if([operationError isKindOfClass:[GPGException class]]) + userInfo[@"DecryptionErrorCode"] = @((long)((GPGException *)operationError).errorCode); + + // The error domain is checked in certain occasion, so let's use the system + // dependent one. + NSString *errorDomain = [GPGMailBundle isMavericks] ? @"MCMailErrorDomain" : @"MFMessageErrorDomain"; + + error = [GM_MAIL_CLASS(@"MFError") errorWithDomain:errorDomain code:1035 localizedDescription:nil title:title helpTag:nil + userInfo:userInfo]; + + + return error; +} + +- (MFError *)errorFromDecryptionOperation:(GPGController *)gpgc { + // No error? OUT OF HEEEEEAAAR! + // Decryption Okay is sometimes issued even if NODATA + // came up. In that case the file is damaged. + if(gpgc.decryptionOkay && ![(NSArray *)(gpgc.statusDict)[@"NODATA"] count]) + return nil; + + return [self errorForDecryptionError:gpgc.error status:gpgc.statusDict errorText:gpgc.gpgTask.errText]; +} + +- (MFError *)errorForVerificationError:(NSException *)operationError status:(NSDictionary *)status signatures:(NSArray *)signatures { + MFError *error = nil; + + NSArray *noDataErrors = [status valueForKey:@"NODATA"]; + + NSString *title = nil, *message = nil; + NSMutableDictionary *userInfo = [[NSMutableDictionary alloc] initWithCapacity:0]; + + BOOL isAttachment = [self isAttachment] && ![self isPGPMimeSignatureAttachment]; + NSString *prefix = !isAttachment ? @"MESSAGE_BANNER_PGP" : @"MESSAGE_BANNER_PGP_ATTACHMENT"; + + NSString *titleKey = nil; + NSString *messageKey = nil; + + BOOL errorFound = NO; + + // If there was a GPG exception, the type should be GPGException, otherwise + // there was an error with the execution of the gpg executable or some other + // system error. + // Don't use is kindOfClass here, 'cause it will be true for GPGException as well, + // since it checks inheritance. memberOfClass doesn't. + if([operationError isMemberOfClass:[NSException class]]) { + titleKey = [NSString stringWithFormat:@"%@_VERIFY_SYSTEM_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_VERIFY_SYSTEM_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + errorFound = YES; + } + else if([self hasError:@"EXPECTED_SIGNATURE_NOT_FOUND" noDataErrors:noDataErrors] || + [(GPGException *)operationError isCorruptedInputError]) { + titleKey = [NSString stringWithFormat:@"%@_VERIFY_CORRUPTED_DATA_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_VERIFY_CORRUPTED_DATA_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + errorFound = YES; + } + else if(((GPGException *)operationError).errorCode == GPGErrorNotFound) { + title = GMLocalizedString(@"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_TITLE"); + message = GMLocalizedString(@"MESSAGE_BANNER_PGP_VERIFY_ERROR_NO_GPG_MESSAGE"); + errorFound = YES; + } + else if(((GPGException *)operationError).errorCode == GPGErrorXPCBinaryError || + ((GPGException *)operationError).errorCode == GPGErrorXPCConnectionError || + ((GPGException *)operationError).errorCode == GPGErrorXPCConnectionInterruptedError) { + titleKey = [NSString stringWithFormat:@"%@_VERIFY_ERROR_XPC_DAMAGED_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_VERIFY_ERROR_XPC_DAMAGED_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + errorFound = YES; + } + else { + GPGErrorCode errorCode = GPGErrorNoError; + GPGSignature *signatureWithError = nil; + NSString *signatureKeyID = nil; + NSString *signatureKeyIDString = nil; + for(GPGSignature *signature in signatures) { + if(signature.status != GPGErrorNoError) { + errorCode = signature.status; + signatureWithError = signature; + signatureKeyID = [signature.fingerprint shortKeyID]; + signatureKeyIDString = [NSString stringWithFormat:@"0x%@", signatureKeyID]; + break; + } + } + errorFound = errorCode != GPGErrorNoError ? YES : NO; + + switch (errorCode) { + case GPGErrorNoPublicKey: + titleKey = [NSString stringWithFormat:@"%@_VERIFY_NO_PUBKEY_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_VERIFY_NO_PUBKEY_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + message = [NSString stringWithFormat:message, signatureKeyIDString]; + break; + + case GPGErrorUnknownAlgorithm: + titleKey = [NSString stringWithFormat:@"%@_VERIFY_ALGORITHM_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_VERIFY_ALGORITHM_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + break; + + case GPGErrorCertificateRevoked: + titleKey = [NSString stringWithFormat:@"%@_VERIFY_REVOKED_CERTIFICATE_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_VERIFY_REVOKED_CERTIFICATE_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + message = [NSString stringWithFormat:message, signatureKeyIDString]; + break; + + case GPGErrorKeyExpired: + titleKey = [NSString stringWithFormat:@"%@_VERIFY_KEY_EXPIRED_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_VERIFY_KEY_EXPIRED_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + message = [NSString stringWithFormat:message, signatureKeyIDString]; + break; + + case GPGErrorSignatureExpired: + titleKey = [NSString stringWithFormat:@"%@_VERIFY_SIGNATURE_EXPIRED_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_VERIFY_SIGNATURE_EXPIRED_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + break; + + case GPGErrorBadSignature: + titleKey = [NSString stringWithFormat:@"%@_VERIFY_BAD_SIGNATURE_ERROR_TITLE", prefix]; + messageKey = [NSString stringWithFormat:@"%@_VERIFY_BAD_SIGNATURE_ERROR_MESSAGE", prefix]; + + title = GMLocalizedString(titleKey); + message = GMLocalizedString(messageKey); + break; + + default: + // Set errorFound to 0 for Key expired and signature expired. + // Those are warnings, not actually errors. Should only be displayed in the signature view. + errorFound = 0; + break; + } + } + + if(errorFound) { + userInfo[@"_MFShortDescription"] = title; + userInfo[@"NSLocalizedDescription"] = message; + userInfo[@"VerificationError"] = @YES; + + if([operationError isKindOfClass:[GPGException class]]) + userInfo[@"VerificationErrorCode"] = @((long)((GPGException *)operationError).errorCode); + + // The error domain is checked in certain occasion, so let's use the system + // dependent one. + NSString *errorDomain = [GPGMailBundle isMavericks] ? @"MCMailErrorDomain" : @"MFMessageErrorDomain"; + error = [GM_MAIL_CLASS(@"MFError") errorWithDomain:errorDomain code:1036 localizedDescription:nil title:title helpTag:nil + userInfo:userInfo]; + } + + + return error; +} + +- (MFError *)errorFromVerificationOperation:(GPGController *)gpgc { + return [self errorForVerificationError:gpgc.error status:gpgc.statusDict signatures:gpgc.signatures]; +} + +- (BOOL)hasError:(NSString *)errorName noDataErrors:(NSArray *)noDataErrors { + const NSDictionary *errorCodes = @{@"NO_ARMORED_DATA": @"1", + @"EXPECTED_PACKAGE_NOT_FOUND": @"2", + @"INVALID_PACKET": @"3", + @"EXPECTED_SIGNATURE_NOT_FOUND": @"4"}; + + for(id parts in noDataErrors) { + if([parts[0] isEqualTo:[errorCodes valueForKey:errorName]]) + return YES; + } + + return NO; +} + +- (MimeBody *)decryptedMessageBodyFromDecryptedData:(NSData *)decryptedData { + if([decryptedData length] == 0) + return nil; + // 1. Create a new Message using messageWithRFC822Data: + // This creates the message store automatically! + Message *decryptedMessage; + MimeBody *decryptedMimeBody; + // Unfortunately the Evolution PGP plugins seems to fuck up the encrypted message, + // which renders it unreadable for Mail.app. This is frustrating but fixable. + // Actually even easier than i thought at first. Instead of messageWithRFC822Data: + // messageWithRFC822Data:sanitizeData: can be used to make the problem go away. + // BOOYAH! + decryptedMessage = [GM_MAIL_CLASS(@"Message") messageWithRFC822Data:decryptedData sanitizeData:YES]; + + // 2. Set message info from the original encrypted message. + [decryptedMessage setMessageInfoFromMessage:[(MimeBody *)[self mimeBody] message]]; + + // 3. Call message body updating flags to set the correct flags for the new message. + // This will setup the decrypted message, run through all parts and find signature part. + // We'll save the message body for later, since it will be used to do a last + // decodeWithContext and the output returned. + // Fake the message flags on the decrypted message. + // messageBodyUpdatingFlags: calls isMimeEncrypted. Set MimeEncrypted on the message, + // so the correct info is returned. + [decryptedMessage setIvar:@"MimeEncrypted" value:@YES]; + decryptedMimeBody = [decryptedMessage messageBodyUpdatingFlags:YES]; + + // Top Level part reparses the message. This method doesn't. + MimePart *topPart = [self topPart]; + // Set the decrypted message here, otherwise we run into a memory problem. + [topPart setDecryptedMessageBody:decryptedMimeBody isEncrypted:self.PGPEncrypted isSigned:self.PGPSigned error:self.PGPError]; + self.PGPDecryptedBody = self.decryptedMessageBody; + + return decryptedMimeBody; +} + +- (NSData *)partDataByReplacingEncryptedData:(NSData *)originalPartData decryptedData:(NSData *)decryptedData encryptedRange:(NSRange)encryptedRange { + NSMutableData *partData = [[NSMutableData alloc] init]; + NSData *inlineEncryptedData = [originalPartData subdataWithRange:encryptedRange]; + + BOOL (^otherDataFound)(NSData *) = ^(NSData *data) { + unsigned char *dataBytes = (unsigned char *)[data bytes]; + NSUInteger length = [data length]; + for (NSUInteger i = 0; i < length; i++) { + switch (dataBytes[i]) { + case '\n': + case '\r': + case '\t': + case ' ': + break; + default: + return YES; + } + } + return NO; + }; + + NSData *originalData = originalPartData; + NSData *leadingData = [originalData subdataWithRange:NSMakeRange(0, encryptedRange.location)]; + // Only add surrounding data, if we have plain text. + [partData appendData:leadingData]; + NSData *restData = [originalData subdataWithRange:NSMakeRange(encryptedRange.location + encryptedRange.length, + [originalData length] - encryptedRange.length - encryptedRange.location)]; + if(decryptedData) { + // If there was data before or after the encrypted data, signal this + // with a banner. + BOOL hasOtherData = otherDataFound(leadingData) || otherDataFound(restData); + + if(hasOtherData) + [self addPGPPartMarkerToData:partData partData:decryptedData]; + else + [partData appendData:decryptedData]; + } + else + [partData appendData:inlineEncryptedData]; + + [partData appendData:restData]; + + BOOL decryptionError = !decryptedData ? YES : NO; + + // If there was no decryption error, look for signatures in the partData. + if(!decryptionError) { + NSRange signatureRange = [decryptedData rangeOfPGPInlineSignatures]; + if(signatureRange.location != NSNotFound) + [self _verifyPGPInlineSignatureInData:decryptedData]; + } + + self.PGPDecryptedData = partData; + // Decrypted content is a HTML string generated from the decrypted data + // If the content is only partly encrypted or partly signed, that information + // is added to the HTML as well. + NSString *decryptedContent = [[partData stringByGuessingEncoding] markupString]; + decryptedContent = [self contentWithReplacedPGPMarker:decryptedContent isEncrypted:self.PGPEncrypted isSigned:self.PGPSigned]; + // The decrypted data might contain an inline signature. + // If that's the case the armor is stripped from the data and stored + // under decryptedPGPContent. + if(self.PGPSigned) + self.PGPDecryptedContent = [self stripSignatureFromContent:decryptedContent]; + else + self.PGPDecryptedContent = decryptedContent; + + if([self containsPGPMarker:partData]) { + self.PGPPartlySigned = self.PGPSigned; + self.PGPPartlyEncrypted = self.PGPEncrypted; + } + + + return self.PGPDecryptedData; +} + +- (id)decryptedMessageBodyOrDataForEncryptedData:(NSData *)encryptedData encryptedInlineRange:(NSRange)encryptedRange { + return [self decryptedMessageBodyOrDataForEncryptedData:encryptedData encryptedInlineRange:encryptedRange isAttachment:NO]; +} + +- (id)decryptedMessageBodyOrDataForEncryptedData:(NSData *)encryptedData encryptedInlineRange:(NSRange)encryptedRange isAttachment:(BOOL)isAttachment { + __block NSData *decryptedData = nil; + __block id decryptedMimeBody = nil; + __block NSData *partDecryptedData = nil; + + BOOL inlineEncrypted = encryptedRange.location != NSNotFound ? YES : NO; + + NSData *inlineEncryptedData = nil; + if(inlineEncrypted) + inlineEncryptedData = [encryptedData subdataWithRange:encryptedRange]; + + // Decrypt the data. This will already set the most important flags on the part. + // decryptData used to be run in a serial queue. This is no longer necessary due to + // the fact that the password dialog blocks just fine. + partDecryptedData = [self decryptData:inlineEncrypted ? inlineEncryptedData : encryptedData]; + + BOOL error = partDecryptedData == nil; + + // If this a a pgp encrypted attachment, there's no need to further handle it, + // then return the data. + if(isAttachment && inlineEncrypted) + return partDecryptedData; + + // Creating a new message from the PGP decrypted data for PGP/MIME encrypted messages + // is not supposed to happen within the decryption task. + // Otherwise it could block the decryption queue for new jobs if the decrypted message contains + // PGP inline encrypted data which GPGMail tries to decrypt but can't since the old job didn't finish + // yet. + if(inlineEncryptedData) { + + // This part serachs for a "Charset" header and if it's found and it's not UTF-8 convert the data to UTF-8. + NSStringEncoding encoding = [self stringEncodingFromPGPData:inlineEncryptedData]; + if (encoding != NSUTF8StringEncoding) { + // Convert the data to UTF-8. + NSString *decryptedString = [[NSString alloc] initWithData:partDecryptedData encoding:encoding]; + partDecryptedData = [decryptedString dataUsingEncoding:NSUTF8StringEncoding]; + } + + // Part decrypted data is always an NSData object, + // due to the charset finding attempt above. + // So if there was an error reset it to nil, otherwise + // the original encrypted data is replaced with an empty + // NSData object. + if(error) + partDecryptedData = nil; + + decryptedData = [self partDataByReplacingEncryptedData:encryptedData decryptedData:partDecryptedData encryptedRange:encryptedRange]; + } else + decryptedMimeBody = [self decryptedMessageBodyFromDecryptedData:partDecryptedData]; + + if(inlineEncrypted) + return decryptedData; + + return decryptedMimeBody; +} + +- (NSStringEncoding)stringEncodingFromPGPData:(NSData *)PGPData { + NSString *asciiData = [NSString stringWithData:PGPData encoding:NSASCIIStringEncoding]; + __autoreleasing NSString *charsetName = nil; + [asciiData getCapturesWithRegexAndReferences:@"Charset:\\s*(?.+)\r?\n", @"${charset}", &charsetName, nil]; + + if(![charsetName length]) + return NSUTF8StringEncoding; + + CFStringEncoding stringEncoding= CFStringConvertIANACharSetNameToEncoding((CFStringRef)charsetName); + if (stringEncoding != kCFStringEncodingInvalidId) { + stringEncoding = (CFStringEncoding)CFStringConvertEncodingToNSStringEncoding(stringEncoding); + } + + return stringEncoding; +} + + +- (void)importAttachedKeyIfNeeded { + GPGController *gpgc = [[GPGController alloc] init]; + + [(GM_CAST_CLASS(MimePart *, id))[self topPart] enumerateSubpartsWithBlock:^(MimePart *part) { + if ([part isType:@"application" subtype:@"pgp-keys"] && ![[part getIvar:@"pgp-keys-imported"] boolValue]) { + + NSData *unArmored = [[GPGUnArmor unArmor:[GPGMemoryStream memoryStreamForReading:part.bodyData]] readAllData]; + + if (unArmored) { + NSDictionary *keysByID = [[GPGKeyManager sharedInstance] keysByKeyID]; + + [GPGPacket enumeratePacketsWithData:unArmored block:^(GPGPacket *packet, BOOL *stop) { + if (packet.tag == GPGPublicKeyPacketTag && !keysByID[((GPGPublicKeyPacket *)packet).keyID]) { + *stop = YES; + [part setIvar:@"pgp-keys-imported" value:@(YES)]; + [gpgc importFromData:unArmored fullImport:NO]; + } + }]; + } + } + }]; +} + + +#pragma mark Methods for verification + +- (void)verifyData:(NSData *)signedData signatureData:(NSData *)signatureData { + GPGController *gpgc = [[GPGController alloc] init]; + + // If signatureData is set, the signature is detached, otherwise it's inline. + NSArray *signatures = nil; + if([signatureData length]) { + + // If the signature is type 0x00 and the text doesn't contain a \r\n, convert \n to \r\n. + // This is needed because Mail converts \r\n to \n. + NSArray *packets = [GPGPacket packetsWithData:signatureData]; + if([packets count]) { + GPGSignaturePacket *packet = packets[0]; + if(packet.tag == GPGSignaturePacketTag && packet.type == 0) { + if([signedData rangeOfData:[NSData dataWithBytes:"\r\n" length:2] options:0 range:NSMakeRange(0, [signedData length])].location == NSNotFound) { + signedData = [[NSData alloc] initWithDataConvertingLineEndingsFromUnixToNetwork:signedData]; + } + } + } + + signatures = [gpgc verifySignature:signatureData originalData:signedData]; + } else { // Inline + NSUInteger location = 0; + NSRange range = [signedData rangeOfPGPInlineSignatures]; + BOOL hasOtherData = range.length != signedData.length; + + // Is it partially signed? + if (hasOtherData) { + // Yes, it's partially signed. + NSMutableData *signedDataWithMarkers = [NSMutableData data]; + NSMutableSet *allSignatures = [NSMutableSet set]; + + // Loop through all signed parts. + do { + // Append the unsigned data. + [signedDataWithMarkers appendData:[signedData subdataWithRange:NSMakeRange(location, range.location - location)]]; + + // Get signed data. + NSData *subData = [signedData subdataWithRange:range]; + + // Unarmor and get cleartext. + GPGMemoryStream *subDataStream = [GPGMemoryStream memoryStreamForReading:subData]; + NSData *cleartext = nil; + NSData *sigData = [[GPGUnArmor unArmor:subDataStream clearText:&cleartext] readAllData]; + + + // Verify signature and add the GPGSignatures to our set. + [allSignatures addObjectsFromArray:[gpgc verifySignature:sigData originalData:cleartext]]; + + if (cleartext.length) { + // ... and add it with markers. + [self addPGPPartMarkerToData:signedDataWithMarkers partData:cleartext]; + } + + // Calculate new location and range. + location = range.location + range.length; + range = NSMakeRange(location, signedData.length - location); + + // Find next signed part. + } while ((range = [signedData rangeOfPGPInlineSignaturesInRange:range]).length); + + //Append trailing unsigend data. + [signedDataWithMarkers appendData:[signedData subdataWithRange:NSMakeRange(location, signedData.length - location)]]; + + + //Replace markers. + NSString *verifiedContent = [[signedDataWithMarkers stringByGuessingEncodingWithHint:[self bestStringEncoding]] markupString]; + verifiedContent = [self contentWithReplacedPGPMarker:verifiedContent isEncrypted:NO isSigned:YES]; + + // Set results. + self.PGPVerifiedContent = [self stripSignatureFromContent:verifiedContent]; + signedData = signedDataWithMarkers; + + signatures = [allSignatures allObjects]; + } else { // Not partially signed. + signatures = [gpgc verifySignedData:signedData]; + } + } + + MFError *error = [self errorFromGPGOperation:GPG_OPERATION_VERIFICATION controller:gpgc]; + self.PGPError = error; + // If MacGPG2 is not installed, don't flag the message as signed, + // since we can't know. + self.PGPSigned = [gpgc.error isKindOfClass:[GPGException class]] && ((GPGException *)gpgc.error).errorCode == GPGErrorNotFound ? NO : YES; + self.PGPVerified = self.PGPError ? NO : YES; + self.PGPSignatures = signatures; + + + self.PGPVerifiedData = signedData; + +} + +- (NSStringEncoding)bestStringEncoding { + NSString *charsetName = [self bodyParameterForKey:@"charset"]; + // No charset name available on current part? Test top part. + if(![charsetName length]) { + charsetName = [[self topPart] bodyParameterForKey:@"charset"]; + if(![charsetName length]) + return NSUTF8StringEncoding; + } + CFStringEncoding stringEncoding = CFStringConvertIANACharSetNameToEncoding((CFStringRef)charsetName); + + if (stringEncoding != kCFStringEncodingInvalidId) + stringEncoding = (CFStringEncoding)CFStringConvertEncodingToNSStringEncoding(stringEncoding); + + return stringEncoding; +} + +- (BOOL)hasPGPInlineSignature:(NSData *)data { + NSData *inlineSignatureMarkerHead = [PGP_SIGNED_MESSAGE_BEGIN dataUsingEncoding:NSASCIIStringEncoding]; + if([data rangeOfData:inlineSignatureMarkerHead options:0 range:NSMakeRange(0, [data length])].location != NSNotFound) + return YES; + return NO; +} + +- (NSData *)signedDataWithAddedPGPPartMarkersIfNecessaryForData:(NSData *)signedData { + NSRange signedRange = NSMakeRange(NSNotFound, 0); + if([signedData length] != 0) + signedRange = [signedData rangeOfPGPInlineSignatures]; + + // Should never happen! + if(signedRange.location == NSNotFound) + return signedData; + + + NSMutableData *partData = [[NSMutableData alloc] init]; + + // Use a regular expression to find data before and after the signed part. + NSString *regex = [NSString stringWithFormat:@"(?sm)^(?(\r?\n)*)(?.*)%@\r?\n(?[\\w\\s:]*)\r?\n\r?\n(?.*)%@.*%@(?(\r?\n)*)(?.*)$",PGP_SIGNED_MESSAGE_BEGIN, PGP_MESSAGE_SIGNATURE_BEGIN, PGP_MESSAGE_SIGNATURE_END]; + + NSStringEncoding bestEncoding = [self bestStringEncoding]; + RKEnumerator *matches = [[signedData stringByGuessingEncodingWithHint:bestEncoding] matchEnumeratorWithRegex:regex]; + + NSMutableData *markedPart = [NSMutableData data]; + __autoreleasing NSString *before = nil, *signedText = nil, *after = nil, *whitespaceBefore = nil, + *whitespaceAfter = nil, *headers = nil; + + while([matches nextRanges] != NULL) { + [matches getCapturesWithReferences:@"${before}", &before, nil]; + [matches getCapturesWithReferences:@"${signed_text}", &signedText, nil]; + [matches getCapturesWithReferences:@"${after}", &after, nil]; + [matches getCapturesWithReferences:@"${whitespace_before}", &whitespaceBefore, nil]; + [matches getCapturesWithReferences:@"${whitespace_after}", &whitespaceAfter, nil]; + [matches getCapturesWithReferences:@"${headers}", &headers, nil]; + + [self addPGPPartMarkerToData:markedPart partData:[signedText dataUsingEncoding:bestEncoding]]; + } + + if(![before length] && ![after length]) { + return signedData; + } + + [partData appendData:[whitespaceBefore dataUsingEncoding:bestEncoding]]; + [partData appendData:[before dataUsingEncoding:bestEncoding]]; + [partData appendData:markedPart]; + [partData appendData:[whitespaceAfter dataUsingEncoding:bestEncoding]]; + [partData appendData:[after dataUsingEncoding:bestEncoding]]; + + return partData; +} + +- (void)MAVerifySignature { + // Check if message should be processed (-[Message shouldBePGPProcessed]) + // otherwise out of here! + if(![[(MimeBody *)[self mimeBody] message] shouldBePGPProcessed]) + return [self MAVerifySignature]; + + // If this is a non GPG signed message, let's call the original method + // and get out of here! + if(![[self bodyParameterForKey:@"protocol"] isEqualToString:@"application/pgp-signature"]) { + [self MAVerifySignature]; + return; + } + + if(self.PGPVerified || self.PGPError || self.PGPVerifiedData) { + // Save the status for isMimeSigned call. + [[self topPart] setIvar:@"MimeSigned" value:@(self.PGPSigned)]; + return; + } + + + + [self importAttachedKeyIfNeeded]; + + + + + // Set the signed status, otherwise we wouldn't be in here. + self.PGPSigned = YES; + + // Now on to fetching the signed data. + NSData *signedData = [self signedData]; + // And last finding the signature. + MimePart *signaturePart = nil; + for(MimePart *part in [self subparts]) { + if([part isType:@"application" subtype:@"pgp-signature"]) { + signaturePart = part; + break; + } + } + + if(![signedData length] || !signaturePart) { + self.PGPSigned = NO; + return; + } + + // And now the funny part, the actual verification. + NSData *signatureData = [signaturePart bodyData]; + if (![signatureData length]) { + self.PGPSigned = NO; + return; + } + + [self verifyData:signedData signatureData:signatureData]; + [[self topPart] setIvar:@"MimeSigned" value:@(self.PGPSigned)]; + + return; +} + +- (void)_verifyPGPInlineSignatureInData:(NSData *)data { + // Pass in the entire NSData to detect part-signed messages. + [self verifyData:data signatureData:nil]; +} + +- (id)stripSignatureFromContent:(id)content { + if([content isKindOfClass:[NSString class]]) { + // Find -----BEGIN PGP SIGNED MESSAGE----- and + // remove everything to the next empty line. + NSRange beginRange = [content rangeOfString:PGP_SIGNED_MESSAGE_BEGIN]; + if(beginRange.location == NSNotFound) + return content; + + NSString *contentBefore = [content substringWithRange:NSMakeRange(0, beginRange.location)]; + + NSString *remainingContent = [content substringWithRange:NSMakeRange(beginRange.location + beginRange.length, + [(NSString *)content length] - (beginRange.location + beginRange.length))]; + // Find the first occurence of two newlines (\n\n). This is HTML so it's

(can't be good!) + // This delimits the signature part. + NSRange signatureDelimiterRange = [remainingContent rangeOfString:@"

"]; + // Signature delimiter range only contains the range from the first
to the + // second
. But it's necessary to remove everything before that. + if(signatureDelimiterRange.location == NSNotFound) + return content; + + signatureDelimiterRange.length = signatureDelimiterRange.location + signatureDelimiterRange.length; + signatureDelimiterRange.location = 0; + + remainingContent = [remainingContent stringByReplacingCharactersInRange:signatureDelimiterRange withString:@""]; + + // Now, there might be signatures in the quoted text, but the only interesting signature, will be at the end of the mail, that's + // why the search is time done from the end. + NSRange startRange = [remainingContent rangeOfString:PGP_MESSAGE_SIGNATURE_BEGIN options:NSBackwardsSearch]; + if(startRange.location == NSNotFound) + return content; + NSRange endRange = [remainingContent rangeOfString:PGP_MESSAGE_SIGNATURE_END options:NSBackwardsSearch]; + if(endRange.location == NSNotFound) + return content; + NSRange gpgSignatureRange = NSUnionRange(startRange, endRange); + NSString *strippedContent = [remainingContent stringByReplacingCharactersInRange:gpgSignatureRange withString:@""]; + + NSString *completeContent = [contentBefore stringByAppendingString:strippedContent]; + + return completeContent; + } + return content; +} + +- (BOOL)MAUsesKnownSignatureProtocol { + // Check if message should be processed (-[Message shouldBePGPProcessed]) + // otherwise out of here! + + // It looks like, among other things, Mail.app uses this method to determine + // whether the message is S/MIME signed, in order to then decide, + // HOW the message body should be fetched from the server, which + // is pretty significant for signed messages. + // See ticket #600 to find out more. + // In order to force Mail.app to fetch PGP/MIME signed messages the exact + // same way as S/MIME signed messages, return YES if the protocol + // of the mime part matches application/pgp-signature. + // shouldBePGPProcessed is ignored at this stage, since the mimeBody + // nor the message are yet available. + + if([(MimeBody *)[self mimeBody] message] && ![[(MimeBody *)[self mimeBody] message] shouldBePGPProcessed]) + return [self MAUsesKnownSignatureProtocol]; + + if([[[self bodyParameterForKey:@"protocol"] lowercaseString] isEqualToString:@"application/pgp-signature"]) + return YES; + return [self MAUsesKnownSignatureProtocol]; +} + +- (void)addPGPPartMarkerToData:(NSMutableData *)data partData:(NSData *)partData { + [data appendData:[PGP_PART_MARKER_START dataUsingEncoding:NSUTF8StringEncoding]]; + [data appendData:partData]; + [data appendData:[PGP_PART_MARKER_END dataUsingEncoding:NSUTF8StringEncoding]]; +} + +- (NSString *)contentWithReplacedPGPMarker:(NSString *)content isEncrypted:(BOOL)isEncrypted isSigned:(BOOL)isSigned { + NSMutableString *partString = [NSMutableString string]; + if(isEncrypted) + [partString appendString:GMLocalizedString(@"MESSAGE_VIEW_PGP_PART_ENCRYPTED")]; + if(isEncrypted && isSigned) + [partString appendString:@" & "]; + if(isSigned) + [partString appendString:GMLocalizedString(@"MESSAGE_VIEW_PGP_PART_SIGNED")]; + + [partString appendFormat:@" %@", GMLocalizedString(@"MESSAGE_VIEW_PGP_PART")]; + + content = [content stringByReplacingString:PGP_PART_MARKER_START withString:[NSString stringWithFormat:@"
%@
", partString]]; + content = [content stringByReplacingString:PGP_PART_MARKER_END withString:@"
"]; + + return content; +} + +- (BOOL)containsPGPMarker:(NSData *)data { + if(![data length]) + return NO; + return [data rangeOfData:[PGP_PART_MARKER_START dataUsingEncoding:NSUTF8StringEncoding] options:0 range:NSMakeRange(0, [data length])].location != NSNotFound; +} + +#pragma mark MimePart property implementation. + +- (void)setPGPEncrypted:(BOOL)PGPEncrypted { + [self setIvar:@"PGPEncrypted" value:@(PGPEncrypted)]; +} + +- (BOOL)PGPEncrypted { + return [[self getIvar:@"PGPEncrypted"] boolValue]; +} + +- (void)setPGPSigned:(BOOL)PGPSigned { + [self setIvar:@"PGPSigned" value:@(PGPSigned)]; +} + +- (BOOL)PGPSigned { + return [[self getIvar:@"PGPSigned"] boolValue]; +} + +- (void)setPGPPartlySigned:(BOOL)PGPPartlySigned { + [self setIvar:@"PGPPartlySigned" value:@(PGPPartlySigned)]; +} + +- (BOOL)PGPPartlySigned { + return [[self getIvar:@"PGPPartlySigned"] boolValue]; +} + +- (void)setPGPPartlyEncrypted:(BOOL)PGPPartlyEncrypted { + [self setIvar:@"PGPPartlyEncrypted" value:@(PGPPartlyEncrypted)]; +} + +- (BOOL)PGPPartlyEncrypted { + return [[self getIvar:@"PGPPartlyEncrypted"] boolValue]; +} + +- (void)setPGPDecrypted:(BOOL)PGPDecrypted { + [self setIvar:@"PGPDecrypted" value:@(PGPDecrypted)]; +} + +- (BOOL)PGPDecrypted { + return [[self getIvar:@"PGPDecrypted"] boolValue]; +} + +- (void)setPGPVerified:(BOOL)PGPVerified { + [self setIvar:@"PGPVerified" value:@(PGPVerified)]; +} + +- (BOOL)PGPVerified { + return [[self getIvar:@"PGPVerified"] boolValue]; +} + +- (void)setPGPAttachment:(BOOL)PGPAttachment { + [self setIvar:@"PGPAttachment" value:@(PGPAttachment)]; +} + +- (BOOL)PGPAttachment { + return [[self getIvar:@"PGPAttachment"] boolValue]; +} + +- (void)setPGPSignatures:(NSArray *)PGPSignatures { + [self setIvar:@"PGPSignatures" value:PGPSignatures]; +} + +- (NSArray *)PGPSignatures { + return [self getIvar:@"PGPSignatures"]; +} + +- (void)setPGPError:(MFError *)PGPError { + [self setIvar:@"PGPError" value:PGPError]; +} + +- (MFError *)PGPError { + return [self getIvar:@"PGPError"]; +} + +- (void)setPGPDecryptedData:(NSData *)PGPDecryptedData { + [self setIvar:@"PGPDecryptedData" value:PGPDecryptedData]; +} + +- (NSData *)PGPDecryptedData { + return [self getIvar:@"PGPDecryptedData"]; +} + +- (void)setPGPDecryptedContent:(NSString *)PGPDecryptedContent { + [self setIvar:@"PGPDecryptedContent" value:PGPDecryptedContent]; +} + +- (NSString *)PGPDecryptedContent { + return [self getIvar:@"PGPDecryptedContent"]; +} + +- (void)setPGPDecryptedBody:(MessageBody *)PGPDecryptedBody { + [self setIvar:@"PGPDecryptedBody" value:PGPDecryptedBody]; +} + +- (MessageBody *)PGPDecryptedBody { + return [self getIvar:@"PGPDecryptedBody"]; +} + +- (void)setPGPVerifiedContent:(NSString *)PGPVerifiedContent { + [self setIvar:@"PGPVerifiedContent" value:PGPVerifiedContent]; +} + +- (NSString *)PGPVerifiedContent { + return [self getIvar:@"PGPVerifiedContent"]; +} + +- (void)setPGPVerifiedData:(NSData *)PGPVerifiedData { + [self setIvar:@"PGPVerifiedData" value:PGPVerifiedData]; +} + +- (NSData *)PGPVerifiedData { + return [self getIvar:@"PGPVerifiedData"]; +} + + +#pragma mark other stuff to test Xcode code folding. + +- (BOOL)MAIsSigned { + // Check if message should be processed (-[Message shouldBePGPProcessed]) + // otherwise out of here! + if(![[(MimeBody *)[self mimeBody] message] shouldBePGPProcessed]) + return [self MAIsSigned]; + + BOOL ret = [self MAIsSigned]; + // For plain text message is signed doesn't automatically find + // the right signed status, so we check if copy signers are available. + return ret || self.PGPSigned; +} + +- (BOOL)_isExchangeServerModifiedPGPMimeEncrypted { + if(![self isType:@"multipart" subtype:@"mixed"]) + return NO; + // Find the application/pgp-encrypted subpart. + NSArray *subparts = [self subparts]; + MimePart *applicationPGPEncrypted = nil; + for(MimePart *part in subparts) { + if([part isType:@"application" subtype:@"pgp-encrypted"]) { + applicationPGPEncrypted = part; + break; + } + } + // If such a part is found, the message is exchange modified, otherwise + // not. + return applicationPGPEncrypted != nil; +} + +- (BOOL)_isDraftThatHasBeenReEncryptedWithoutBeingDecrypted { + // Problem: + // + // When a user continues composing a draft, the draft should always be automatically + // decrypted, so that the detail that the draft is encrypted is invisible to the user. + // Under some circumstances, the automated decryption of the draft fails. + // If at the same time Mail's autosave of drafts kicks in, the still encrypted draft, + // is saved again as a multipart/related message with a text/html part for the actual contents + // and two attachments: the PGP/MIME application/pgp-encrypted version part and the encrypted.asc + // data part. + // Now if the user tries to continue working on the draft, GPGMail no longer recognizes + // the draft as PGP/MIME encrypted, and fails to properly decrypt it. + // + // Solution: + // + // The solution is to teach GPGMail the structure of those falsely encrypted not automatically decrypted + // drafts, in order to recognize that it should still treat them as normal PGP/MIME encrypted messages. + // In order to do that, the following facts have to be true: + // + // - Must have a multipart/related part + // - Must have an application/pgp-encrypted attachment + // - Must have an application/octet-stream attachment with filename set to encrypted.asc + // + if(![[self topPart] isType:@"multipart" subtype:@"related"]) { + return NO; + } + + __block MimePart *versionPart = nil; + __block MimePart *dataPart = nil; + __block MimePart *htmlPart = nil; + [(MimePart_GPGMail *)[self topPart] enumerateSubpartsWithBlock:^(MimePart *mimePart) { + if([mimePart isType:@"application" subtype:@"pgp-encrypted"]) { + versionPart = mimePart; + return; + } + if([mimePart isType:@"application" subtype:@"octet-stream"] && [[[mimePart dispositionParameterForKey:@"filename"] lowercaseString] isEqualToString:@"encrypted.asc"]) { + dataPart = mimePart; + return; + } + if([mimePart isType:@"text" subtype:@"html"]) { + htmlPart = mimePart; + return; + } + }]; + + return versionPart && dataPart && htmlPart; +} + +- (BOOL)isPGPMimeEncrypted { + // Special case for PGP/MIME encrypted emails, which were sent through an + // exchange server, which unfortunately modifies the header. + if([self _isExchangeServerModifiedPGPMimeEncrypted]) + return YES; + if([self _isDraftThatHasBeenReEncryptedWithoutBeingDecrypted]) + return YES; + + // Check for multipart/encrypted, protocol application/pgp-encrypted, otherwise exit! + if(![self isType:@"multipart" subtype:@"encrypted"]) + return NO; + + if([self bodyParameterForKey:@"protocol"] != nil && ![[[self bodyParameterForKey:@"protocol"] lowercaseString] isEqualToString:@"application/pgp-encrypted"]) + return NO; + + // While the standard says there are to be exactly 2 child parts, + // there are some services like Microsoft Exchange (what a surprise) + // and MyMailWall which like to add parts. + // Also most iOS solutions are not able to create fully PGP/MIME compatible messages. + // So let's show some leniency for the greater good. + // IF we can find both parts, the version part and the data part, let's pretend + // like everything's fine. + + // Past me believes FireGPG < 0.7.1 included the actual encrypted data in a pgp-signature + // part so let's check for that as well. + + __block MimePart *versionPart = nil; + __block MimePart *dataPart = nil; + // It appears that Avast antivirus doesn't like the pre-amble of PGP/MIME message, which is + // often placed before the application/pgp-encrypted part, and creates a second application/pgp-encrypted + // part, using that pre-amble. + // Unfortunately this moves the PGP/MIME version marker from the first version part, to the second and causes + // the old check to fail, which only assumed one version part. Now each version part is checked + // for the PGP/MIME version marker. + __block NSMutableArray *versionParts = [[NSMutableArray alloc] init]; + [self enumerateSubpartsWithBlock:^(MimePart *part) { + if([part isType:@"application" subtype:@"pgp-encrypted"]) { + [versionParts addObject:part]; + if(!versionPart) + versionPart = part; + } + else if([part isType:@"application" subtype:@"octet-stream"] || [part isType:@"application" subtype:@"pgp-signature"]) { + if(!dataPart) + dataPart = part; + } + }]; + + BOOL hasVersion = NO; + for(MimePart *part in versionParts) { + if([[part bodyData] containsPGPVersionMarker:1]) { + hasVersion = YES; + break; + } + } + // Should we check the version...? + if(versionPart && hasVersion && dataPart) + return YES; + + return NO; +} + +- (BOOL)MAIsEncrypted { + // Check if message should be processed (-[Message shouldBePGPProcessed]) + // otherwise out of here! + if(![[(MimeBody *)[self mimeBody] message] shouldBePGPProcessed]) + return [self MAIsEncrypted]; + + if(self.PGPEncrypted) + return YES; + + // Otherwise to also support S/MIME encrypted messages, call + // the original method. + return [self MAIsEncrypted]; +} + +- (BOOL)MAIsMimeEncrypted { + BOOL ret = [self MAIsMimeEncrypted]; + BOOL isPGPMimeEncrypted = [[[(MimeBody *)[self mimeBody] message] getIvar:@"MimeEncrypted"] boolValue]; + return ret || isPGPMimeEncrypted; +} + +- (BOOL)MAIsMimeSigned { + BOOL ret = [self MAIsMimeSigned]; + BOOL isPGPMimeSigned = [[[self topPart] getIvar:@"MimeSigned"] boolValue]; + return ret || isPGPMimeSigned; +} + +- (Message *)messageWithMessageData:(NSData *)messageData { + MutableMessageHeaders *headers = [[GM_MAIL_CLASS(@"MutableMessageHeaders") alloc] init]; + NSMutableString *contentTypeString = [[NSMutableString alloc] init]; + [contentTypeString appendFormat:@"%@/%@", self.type, self.subtype]; + if([self bodyParameterForKey:@"charset"]) + [contentTypeString appendFormat:@"; charset=\"%@\"", [self bodyParameterForKey:@"charset"]]; + [headers setHeader:[contentTypeString dataUsingEncoding:NSASCIIStringEncoding] forKey:@"Content-Type"]; + if(self.contentTransferEncoding) + [headers setHeader:self.contentTransferEncoding forKey:@"Content-Transfer-Encoding"]; + + NSMutableData *completeMessageData = [[NSMutableData alloc] init]; + [completeMessageData appendData:[headers encodedHeadersIncludingFromSpace:NO]]; + [completeMessageData appendData:messageData]; + + Message *message = [GM_MAIL_CLASS(@"Message") messageWithRFC822Data:completeMessageData]; + + return message; +} + +- (void)MAClearCachedDecryptedMessageBody { + // Check if message should be processed (-[Message shouldBePGPProcessed]) + // otherwise out of here! + if(![[(MimeBody *)[self mimeBody] message] shouldBePGPProcessed]) + return [self MAClearCachedDecryptedMessageBody]; + + /* The original method is called to clear PGP/MIME messages. */ + // Loop through the parts and clear them. + [self enumerateSubpartsWithBlock:^(MimePart *currentPart) { + [currentPart removeIvars]; + }]; + [[[self mimeBody] message] clearPGPInformation]; + [self MAClearCachedDecryptedMessageBody]; +} + +#pragma mark Methods for creating a new message. + +- (NSMutableSet *)flattenedKeyList:(NSSet *)keyList { + NSMutableSet *flattenedList = [NSMutableSet setWithCapacity:0]; + for(id item in keyList) { + if([item isKindOfClass:[NSArray class]]) { + [flattenedList addObjectsFromArray:item]; + } + else if([item isKindOfClass:[NSSet class]]) { + [flattenedList unionSet:item]; + } + else + [flattenedList addObject:item]; + } + return flattenedList; +} + + +- (id)MANewEncryptedPartWithData:(NSData *)data recipients:(id)recipients encryptedData:(NSData **)encryptedData NS_RETURNS_RETAINED { +// DebugLog(@"[DEBUG] %s enter", __PRETTY_FUNCTION__); + // First thing todo, check if an address with the gpg-mail prefix is found. + // If not, S/MIME is wanted. + NSArray *prefixedAddresses = [recipients filter:^id (id recipient){ + return [(NSString *)recipient isFlaggedValue] ? recipient : nil; + }]; + if(![prefixedAddresses count]) + return [self MANewEncryptedPartWithData:data recipients:recipients encryptedData:encryptedData]; + + + // Search for gpgErrorIdentifier in data. + NSRange range = [data rangeOfData:[gpgErrorIdentifier dataUsingEncoding:NSUTF8StringEncoding] options:0 range:NSMakeRange(0, [data length])]; + if (range.length > 0) { + // Simply set data as encryptedData to preserve the errorCode. + *encryptedData = data; + MimePart *dataPart = [[GM_MAIL_CLASS(@"MimePart") alloc] init]; + return dataPart; + } + + BOOL symmetricEncrypt = NO; + BOOL doNotPublicEncrypt = NO; + BOOL isDraft = NO; + + GPGKey *senderPublicKey = nil; + + // Split the recipients in normal and bcc recipients. + BOOL encryptToSelf = [[GPGOptions sharedOptions] boolForKey:@"EncryptToSelf"]; + NSMutableArray *normalRecipients = [NSMutableArray arrayWithCapacity:1]; + NSMutableArray *bccRecipients = [NSMutableArray arrayWithCapacity:1]; + + for (NSString *recipient in recipients) { + NSString *recipientType = [recipient valueForFlag:@"recipientType"]; + if ([recipientType isEqualTo:@"bcc"]) { + [bccRecipients addObject:recipient]; + } else { + // If encryptToSelf is disabled, don't add the sender to the recipients. + // Of course this has the effect that the sent mails can't be read by the sender, + // but that's exactly what this option is for. + if ([recipientType isEqualToString:@"from"]) { + + // The from recipient can be flagged to indicate symmetric encryption. + if ([[recipient valueForFlag:@"symmetricEncrypt"] boolValue]) { + symmetricEncrypt = YES; + // The from recipient can be flagged to indicate no public key encryption. + if ([[recipient valueForFlag:@"doNotPublicEncrypt"] boolValue]) { + doNotPublicEncrypt = YES; + break; + } + } + + + senderPublicKey = [recipient valueForFlag:@"gpgKey"]; + + // Drafts are only encrypted with the senders key. + if ([[recipient valueForFlag:@"isDraft"] boolValue]) { + isDraft = YES; + [normalRecipients removeAllObjects]; + [bccRecipients removeAllObjects]; + senderPublicKey = [[recipient valueForFlag:@"DraftPublicKey"] primaryKey]; + [normalRecipients addObject:senderPublicKey]; + + break; + } + + + if (!encryptToSelf) + continue; + + // In order to fix a problem where a random key matching an address + // is chosen for encrypt-to-self, the senderKey is queried for its + // public key and the from address is not added to the list of normal + // recipients. (#608) + if (senderPublicKey) { + continue; + } + } + [normalRecipients addObject:recipient]; + } + } + + NSMutableSet *flattenedNormalKeyList = nil, *flattenedBCCKeyList = nil; + + if (!doNotPublicEncrypt) { // We need no keys, if only symmetric is set. + // Ask the mail bundle for the GPGKeys matching the email address. + NSMutableSet *normalKeyList = [[[GPGMailBundle sharedInstance] publicKeyListForAddresses:normalRecipients] mutableCopy]; + if(senderPublicKey) + [normalKeyList addObject:senderPublicKey]; + NSMutableSet *bccKeyList = [[GPGMailBundle sharedInstance] publicKeyListForAddresses:bccRecipients]; + [bccKeyList minusSet:normalKeyList]; + + flattenedNormalKeyList = [self flattenedKeyList:normalKeyList]; + flattenedBCCKeyList = [self flattenedKeyList:bccKeyList]; + } + + + GPGController *gpgc = [[GPGController alloc] init]; + gpgc.useArmor = YES; + gpgc.useTextMode = YES; + // Automatically trust keys, even though they are not specifically + // marked as such. + // Eventually add warning for this. + gpgc.trustAllKeys = YES; + @try { + GPGEncryptSignMode encryptMode = doNotPublicEncrypt ? 0 : GPGPublicKeyEncrypt; + encryptMode |= symmetricEncrypt ? GPGSymetricEncrypt : 0; + + *encryptedData = [gpgc processData:data withEncryptSignMode:encryptMode recipients:flattenedNormalKeyList hiddenRecipients:flattenedBCCKeyList]; + + if (gpgc.error) { + @throw gpgc.error; + } + } + @catch(NSException *e) { + GPGErrorCode errorCode = [e isKindOfClass:[GPGException class]] ? ((GPGException *)e).errorCode : 1; + [self failedToEncryptForRecipients:recipients gpgErrorCode:errorCode error:gpgc.error]; + if (errorCode == GPGErrorCancelled) { + return [NSData data]; + } + return nil; + } + @finally { + gpgc = nil; + } + + // 1. Create a new mime part for the encrypted data. + // -> Problem S/MIME only has one mime part GPG/MIME has two, one for + // -> the version, one for the data. + // -> Therefore it's necessary to manipulate the message mime parts in + // -> _makeMessageWithContents: + // -> Not great, but not a big problem either (let's hope) + MimePart *dataPart = [[GM_MAIL_CLASS(@"MimePart") alloc] init]; + + [dataPart setType:@"application"]; + [dataPart setSubtype:@"octet-stream"]; + [dataPart setBodyParameter:@"encrypted.asc" forKey:@"name"]; + dataPart.contentTransferEncoding = @"7bit"; + [dataPart setDisposition:@"inline"]; + [dataPart setDispositionParameter:@"encrypted.asc" forKey:@"filename"]; + [dataPart setContentDescription:@"OpenPGP encrypted message"]; + + return dataPart; +} + + +// TODO: Translate the error message if creating the signature fails. +// At the moment the standard S/MIME message is used. +- (id)MANewSignedPartWithData:(id)data sender:(id)sender signatureData:(id *)signatureData NS_RETURNS_RETAINED { + // If sender doesn't show any injected header values, S/MIME is wanted, + // hence the original method called. + if(![@"from" isEqualTo:[sender valueForFlag:@"recipientType"]]) { + id newPart = [self MANewSignedPartWithData:data sender:sender signatureData:signatureData]; + return newPart; + } + + GPGKey *keyForSigning = [sender valueForFlag:@"gpgKey"]; + if (!keyForSigning) { + //Should not happen! + keyForSigning = [[[GPGMailBundle sharedInstance] signingKeyListForAddress:sender] anyObject]; + // Should also not happen, but if no valid signing keys are found + // raise an error. Returning nil tells Mail that an error occured. + if (!keyForSigning) { + [self failedToSignForSender:sender gpgErrorCode:1 error:nil]; + return nil; + } + } + if (keyForSigning.canSign == NO && keyForSigning.primaryKey != keyForSigning) { + keyForSigning = keyForSigning.primaryKey; + } + + GPGController *gpgc = [[GPGController alloc] init]; + gpgc.useArmor = YES; + gpgc.useTextMode = YES; + // Automatically trust keys, even though they are not specifically + // marked as such. + // Eventually add warning for this. + gpgc.trustAllKeys = YES; + + [gpgc setSignerKey:keyForSigning]; + + GPGHashAlgorithm hashAlgorithm = 0; + NSString *hashAlgorithmName = nil; + + @try { + *signatureData = [gpgc processData:data withEncryptSignMode:GPGDetachedSign recipients:nil hiddenRecipients:nil]; + hashAlgorithm = gpgc.hashAlgorithm; + + if (gpgc.error) { + @throw gpgc.error; + } + } + @catch (GPGException *e) { + if (e.errorCode == GPGErrorCancelled) { + // Write the errorCode in signatureData, so the back-end can cancel the operation. + *signatureData = [[gpgErrorIdentifier stringByAppendingFormat:@"%i:", GPGErrorCancelled] dataUsingEncoding:NSUTF8StringEncoding]; + + [self failedToSignForSender:sender gpgErrorCode:GPGErrorCancelled error:e]; + } else { + [self failedToSignForSender:sender gpgErrorCode:e.errorCode error:e]; + return nil; + } + } + @catch(NSException *e) { + [self failedToSignForSender:sender gpgErrorCode:1 error:e]; + return nil; + } + @finally { + gpgc = nil; + } + + if(hashAlgorithm) { + hashAlgorithmName = [GPGController nameForHashAlgorithm:hashAlgorithm]; + } + else { + hashAlgorithmName = @"sha1"; + } + + // This doesn't work for PGP Inline, + // But actually the signature could be created inline + // Just the same way the pgp/signature is created and later + // extracted. + MimePart *topPart = [[GM_MAIL_CLASS(@"MimePart") alloc] init]; + [topPart setType:@"multipart"]; + [topPart setSubtype:@"signed"]; + // TODO: sha1 the right algorithm? + [topPart setBodyParameter:[NSString stringWithFormat:@"pgp-%@", hashAlgorithmName] forKey:@"micalg"]; + [topPart setBodyParameter:@"application/pgp-signature" forKey:@"protocol"]; + + MimePart *signaturePart = [[GM_MAIL_CLASS(@"MimePart") alloc] init]; + [signaturePart setType:@"application"]; + [signaturePart setSubtype:@"pgp-signature"]; + [signaturePart setBodyParameter:@"signature.asc" forKey:@"name"]; + signaturePart.contentTransferEncoding = @"7bit"; + [signaturePart setDisposition:@"attachment"]; + [signaturePart setDispositionParameter:@"signature.asc" forKey:@"filename"]; + // TODO: translate this string. + [signaturePart setContentDescription:@"Message signed with OpenPGP using GPGMail"]; + + // Self is actually the whole current message part. + // So the only thing to do is, add self to our top part + // and add the signature part to the top part and voila! + [topPart addSubpart:self]; + [topPart addSubpart:signaturePart]; + + return topPart; +} + +- (NSData *)inlineSignedDataForData:(id)data sender:(id)sender { +// DebugLog(@"[DEBUG] %s enter", __PRETTY_FUNCTION__); +// DebugLog(@"[DEBUG] %s data: [%@] %@", __PRETTY_FUNCTION__, [data class], data); +// DebugLog(@"[DEBUG] %s sender: [%@] %@", __PRETTY_FUNCTION__, [sender class], sender); + + + GPGKey *keyForSigning = [sender valueForFlag:@"gpgKey"]; + + if (!keyForSigning) { + //Should not happen! + keyForSigning = [[[GPGMailBundle sharedInstance] signingKeyListForAddress:sender] anyObject]; + // Should also not happen, but if no valid signing keys are found + // raise an error. Returning nil tells Mail that an error occured. + if (!keyForSigning) { + [self failedToSignForSender:sender gpgErrorCode:1 error:nil]; + return nil; + } + } + + + GPGController *gpgc = [[GPGController alloc] init]; + gpgc.useArmor = YES; + gpgc.useTextMode = YES; + // Automatically trust keys, even though they are not specifically + // marked as such. + // Eventually add warning for this. + gpgc.trustAllKeys = YES; + [gpgc setSignerKey:keyForSigning]; + NSData *signedData = nil; + + + @try { + signedData = [gpgc processData:data withEncryptSignMode:GPGClearSign recipients:nil hiddenRecipients:nil]; + if (gpgc.error) { + @throw gpgc.error; + } + } + @catch (GPGException *e) { + if (e.errorCode == GPGErrorCancelled) { + [self failedToSignForSender:sender gpgErrorCode:GPGErrorCancelled error:e]; + return nil; + } + @throw e; + } + @catch(NSException *e) { +// DebugLog(@"[DEBUG] %s sign error: %@", __PRETTY_FUNCTION__, e); + @throw e; + } + @finally { + gpgc = nil; + } + + return signedData; +} + +- (void)failedToSignForSender:(NSString *)sender gpgErrorCode:(GPGErrorCode)errorCode error:(NSException *)error { + NSString *title = nil; + NSString *description = nil; + NSString *errorText = nil; + if([error isKindOfClass:[GPGException class]]) + errorText = ((GPGException *)error).gpgTask.errText; + else if([error isKindOfClass:[NSException class]]) + errorText = ((NSException *)error).reason; + + BOOL appendContactGPGToolsInfo = YES; + + switch (errorCode) { + case GPGErrorNoPINEntry: { + title = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_NO_PINENTRY_TITLE"); + + description = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_NO_PINENTRY_DESCRIPTION"); + break; + } + case GPGErrorNoAgent: { + title = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_NO_AGENT_TITLE"); + + description = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_NO_AGENT_DESCRIPTION"); + + break; + } + case GPGErrorAgentError: { + title = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_AGENT_ERROR_TITLE"); + + description = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_AGENT_ERROR_DESCRIPTION"); + + break; + } + case GPGErrorBadPassphrase: { + title = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_TITLE"); + description = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_WRONG_PASSPHRASE_DESCRIPTION"); + + appendContactGPGToolsInfo = NO; + + break; + } + case GPGErrorEOF: { + title = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_TITLE"); + description = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_PINENTRY_CRASH_DESCRIPTION"); + + break; + } + case GPGErrorXPCBinaryError: + case GPGErrorXPCConnectionError: + case GPGErrorXPCConnectionInterruptedError: { + title = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE"); + description = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION"); + + appendContactGPGToolsInfo = NO; + + break; + } + default: + title = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_TITLE"); + + description = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_UNKNOWN_ERROR_DESCRIPTION"); + + break; + } + + if(errorText.length && appendContactGPGToolsInfo) { + description = [description stringByAppendingFormat:GMLocalizedString(@"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE"), errorText]; + } + + // The error domain is checked in certain occasion, so let's use the system + // dependent one. + NSString *errorDomain = [GPGMailBundle isMavericks] ? @"MCMailErrorDomain" : @"MFMessageErrorDomain"; + MFError *mailError = [GM_MAIL_CLASS(@"MFError") errorWithDomain:errorDomain + code:1036 + localizedDescription:nil + title:title + helpTag:nil + userInfo:@{@"NSLocalizedDescription": description, + @"_MFShortDescription": title, + @"GPGErrorCode": @((long)errorCode)}]; + + // Puh, this was all but easy, to find out where the error is used. + // Overreleasing allows to track it's path as an NSZombie in Instruments! + [(ActivityMonitor *)[GM_MAIL_CLASS(@"ActivityMonitor") currentMonitor] setError:mailError]; +} + +- (void)failedToEncryptForRecipients:(NSArray *)recipients gpgErrorCode:(GPGErrorCode)errorCode error:(NSException *)error { + NSString *title = nil; + NSString *description = nil; + NSString *errorText = nil; + if([error isKindOfClass:[GPGException class]]) + errorText = ((GPGException *)error).gpgTask.errText; + else if([error isKindOfClass:[NSException class]]) + errorText = ((NSException *)error).reason; + + switch (errorCode) { + case GPGErrorXPCBinaryError: + case GPGErrorXPCConnectionError: + case GPGErrorXPCConnectionInterruptedError: { + title = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_TITLE"); + description = GMLocalizedString(@"MESSAGE_SIGNING_ERROR_XPC_DAMAGED_DESCRIPTION"); + + break; + } + default: { + title = GMLocalizedString(@"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_TITLE"); + + description = GMLocalizedString(@"MESSAGE_ENCRYPTION_ERROR_UNKNOWN_ERROR_DESCRIPTION"); + + break; + } + } + + if(errorText.length) { + description = [description stringByAppendingFormat:GMLocalizedString(@"CONTACT_GPGTOOLS_WITH_INFO_MESSAGE"), errorText]; + } + + // The error domain is checked in certain occasion, so let's use the system + // dependent one. + NSString *errorDomain = [GPGMailBundle isMavericks] ? @"MCMailErrorDomain" : @"MFMessageErrorDomain"; + + MFError *mailError = [GM_MAIL_CLASS(@"MFError") errorWithDomain:errorDomain + code:1035 + localizedDescription:nil + title:title + helpTag:nil + userInfo:@{@"NSLocalizedDescription": description, + @"_MFShortDescription": title, + @"GPGErrorCode": @((long)errorCode)}]; + + // Puh, this was all but easy, to find out where the error is used. + // Overreleasing allows to track it's path as an NSZombie in Instruments! + [(ActivityMonitor *)[GM_MAIL_CLASS(@"ActivityMonitor") currentMonitor] setError:mailError]; +} + +@end diff --git a/Source/NSArray+Functional.h b/Source/NSArray+Functional.h new file mode 100644 index 00000000..566ffa69 --- /dev/null +++ b/Source/NSArray+Functional.h @@ -0,0 +1,34 @@ +/* NSArray+Functional.h created by Lukas Pitschl (@lukele) on Wed 07-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +@interface NSArray (Functional) + +- (NSArray *)filter:(id (^)(id))block; + +@end diff --git a/Source/NSArray+Functional.m b/Source/NSArray+Functional.m new file mode 100644 index 00000000..0103e76d --- /dev/null +++ b/Source/NSArray+Functional.m @@ -0,0 +1,44 @@ +/* NSArray+Functional.h created by Lukas Pitschl (@lukele) on Wed 07-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "NSArray+Functional.h" + +@implementation NSArray (Functional) + +- (NSArray *)filter:(id (^)(id))block { + NSMutableArray *array = [NSMutableArray array]; + for(id obj in self) { + id ret = block(obj); + if(!ret) continue; + [array addObject:obj]; + } + return [NSArray arrayWithArray:array]; +} + +@end diff --git a/Source/NSAttributedString+GPGMail.h b/Source/NSAttributedString+GPGMail.h new file mode 100644 index 00000000..8f7f2de6 --- /dev/null +++ b/Source/NSAttributedString+GPGMail.h @@ -0,0 +1,51 @@ +/* NSAttributedString+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +@interface NSAttributedString (GPGMail) + +/** + Creates an icon just like the S/MIME sign icon, which performs an action + on click. Based on the given link a different action is performed. + + It's not possible to use the SignedTextAttachment which is used by mail for the + signed icon, because it calls a hard coded method, which can't be changed. Instead + this behaviour is emulated using an NSAttachment with a GPGTextAttachmentCell and + the NSAttributedString link attribute. + + A click on the icon calls the method - (BOOL)textView:clickedOnLink:atIndex: on the delegate + of the view displaying the attributed string. + */ ++ (NSAttributedString *)attributedStringWithAttachment:(NSTextAttachment *)attachment image:(NSImage *)image link:(NSString *)link offset:(float)offset; + +/** + Returns an autoreleased attributed string based on a given string. + */ ++ (NSAttributedString *)attributedStringWithString:(NSString *)string; + +@end diff --git a/Source/NSAttributedString+GPGMail.m b/Source/NSAttributedString+GPGMail.m new file mode 100644 index 00000000..342929c0 --- /dev/null +++ b/Source/NSAttributedString+GPGMail.m @@ -0,0 +1,42 @@ +// +// NSAttributedString+GPGMail.m +// GPGMail +// +// Created by Lukas Pitschl on 31.07.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import "GPGTextAttachmentCell.h" +#import "NSAttributedString+GPGMail.h" + +@implementation NSAttributedString (GPGMail) + ++ (NSAttributedString *)attributedStringWithAttachment:(NSTextAttachment *)attachment image:(NSImage *)image link:(NSString *)link offset:(float)offset { + GPGTextAttachmentCell *cell = [[GPGTextAttachmentCell alloc] init]; + cell.image = image; + attachment.attachmentCell = cell; + NSMutableAttributedString *attachmentString = [[NSAttributedString attributedStringWithAttachment:attachment] mutableCopy]; + // Now this is unusual but comfortable. + // Set a link attribute on the attachment, so we get an event + // when the attachment is clicked in the MessageHeaderDisplay. + // See textView:clickOnLink: + // If link is nil, just create the attachment with the image. + if(link) { + [attachmentString addAttribute:NSLinkAttributeName value:link + range:NSMakeRange(0, [attachmentString length])]; + } + [attachmentString addAttribute:NSCursorAttributeName value:[NSCursor arrowCursor] + range:NSMakeRange(0, [attachmentString length])]; + + [attachmentString addAttribute:NSBaselineOffsetAttributeName + value:@(offset) + range:NSMakeRange(0,[attachmentString length])]; + NSAttributedString *nonMutableAttachmentString = [[NSAttributedString alloc] initWithAttributedString:attachmentString]; + return nonMutableAttachmentString; +} + ++ (NSAttributedString *)attributedStringWithString:(NSString *)string { + return [[NSAttributedString alloc] initWithString:string]; +} + +@end diff --git a/Source/NSBezierPath+StrokeExtensions.h b/Source/NSBezierPath+StrokeExtensions.h new file mode 100644 index 00000000..d7d07f78 --- /dev/null +++ b/Source/NSBezierPath+StrokeExtensions.h @@ -0,0 +1,14 @@ +// +// NSBezierPath+StrokeExtensions.h +// By Matt Gemmell +// and Rainer Brockerhoff +// + +#import + +@interface NSBezierPath (StrokeExtensions) + +- (void)strokeInside; +- (void)strokeInsideWithinRect:(NSRect)clipRect; + +@end diff --git a/Source/NSBezierPath+StrokeExtensions.m b/Source/NSBezierPath+StrokeExtensions.m new file mode 100644 index 00000000..2d25d43b --- /dev/null +++ b/Source/NSBezierPath+StrokeExtensions.m @@ -0,0 +1,45 @@ +// +// NSBezierPath+StrokeExtensions.m +// By Matt Gemmell +// and Rainer Brockerhoff +// + +#import "NSBezierPath+StrokeExtensions.h" + +@implementation NSBezierPath (StrokeExtensions) + +- (void)strokeInside +{ + /* Stroke within path using no additional clipping rectangle. */ + [self strokeInsideWithinRect:NSZeroRect]; +} + +- (void)strokeInsideWithinRect:(NSRect)clipRect +{ + NSGraphicsContext *thisContext = [NSGraphicsContext currentContext]; + float lineWidth = [self lineWidth]; + + /* Save the current graphics context. */ + [thisContext saveGraphicsState]; + + /* Double the stroke width, since -stroke centers strokes on paths. */ + [self setLineWidth:(lineWidth * 2.0)]; + + /* Clip drawing to this path; draw nothing outwith the path. */ + [self setClip]; + + /* Further clip drawing to clipRect, usually the view's frame. */ + if (clipRect.size.width > 0.0 && clipRect.size.height > 0.0) { + [NSBezierPath clipRect:clipRect]; + } + + /* Stroke the path. */ + [self stroke]; + + /* Restore the previous graphics context. */ + [thisContext restoreGraphicsState]; + [self setLineWidth:lineWidth]; +} + + +@end diff --git a/Source/NSBezierPath_KBAdditions.h b/Source/NSBezierPath_KBAdditions.h new file mode 100644 index 00000000..0384ab55 --- /dev/null +++ b/Source/NSBezierPath_KBAdditions.h @@ -0,0 +1,28 @@ +// +// NSBezierPath_KBAdditions.h +// -------------------------- +// +// Created by Keith Blount on 06/05/2006. +// Copyright 2006 Keith Blount. All rights reserved. +// +// Based on Andy Matuschak's PXRoundedRectangleAdditions, but with an added 'flipped' option. +// + +#import +#import + +typedef enum KBCornerTypes +{ + KBTopLeftCorner = 1, + KBTopRightCorner = 2, + KBBottomLeftCorner = 4, + KBBottomRightCorner = 8 +} KBCornerType; + +@interface NSBezierPath (KBAdditions) ++ (NSBezierPath *)bezierPathWithRoundedRect:(NSRect)aRect cornerRadius:(float)radius; ++ (NSBezierPath *)bezierPathWithRoundedRect:(NSRect)aRect + inCorners:(KBCornerType)corners + cornerRadius:(float)radius + flipped:(BOOL)isFlipped; +@end diff --git a/Source/NSBezierPath_KBAdditions.m b/Source/NSBezierPath_KBAdditions.m new file mode 100644 index 00000000..5f6cabff --- /dev/null +++ b/Source/NSBezierPath_KBAdditions.m @@ -0,0 +1,89 @@ +// +// NSBezierPath_KBAdditions.m +// -------------------------- +// +// Created by Keith Blount on 06/05/2006. +// Copyright 2006 Keith Blount. All rights reserved. +// + +#define MMIN(A,B) ({ A < B ? A : B; }) + +#import "NSBezierPath_KBAdditions.h" + + +@implementation NSBezierPath(KBAdditions) + ++ (NSBezierPath *)bezierPathWithRoundedRect:(NSRect)aRect + inCorners:(KBCornerType)corners + cornerRadius:(float)cornerRadius + flipped:(BOOL)isFlipped +{ + NSBezierPath* path = [self bezierPath]; + float newRadius = MMIN(cornerRadius, 0.5f * MMIN(NSWidth(aRect), NSHeight(aRect))); + NSRect rect = NSInsetRect(aRect, newRadius, newRadius); + + if (corners & (isFlipped ? KBTopLeftCorner : KBBottomLeftCorner)) + { + [path appendBezierPathWithArcWithCenter:NSMakePoint(NSMinX(rect), NSMinY(rect)) + radius:newRadius + startAngle:180.0 + endAngle:270.0]; + } + else + { + NSPoint cornerPoint = NSMakePoint(NSMinX(aRect), NSMinY(aRect)); + [path appendBezierPathWithPoints:&cornerPoint count:1]; + } + + if (corners & (isFlipped ? KBTopRightCorner : KBBottomRightCorner)) + { + [path appendBezierPathWithArcWithCenter:NSMakePoint(NSMaxX(rect), NSMinY(rect)) + radius:newRadius + startAngle:270.0 + endAngle:360.0]; + } + else + { + NSPoint cornerPoint = NSMakePoint(NSMaxX(aRect), NSMinY(aRect)); + [path appendBezierPathWithPoints:&cornerPoint count:1]; + } + + if (corners & (isFlipped ? KBBottomRightCorner : KBTopRightCorner)) + { + [path appendBezierPathWithArcWithCenter:NSMakePoint(NSMaxX(rect), NSMaxY(rect)) + radius:newRadius + startAngle:0.0 + endAngle:90.0]; + } + else + { + NSPoint cornerPoint = NSMakePoint(NSMaxX(aRect), NSMaxY(aRect)); + [path appendBezierPathWithPoints:&cornerPoint count:1]; + } + + if (corners & (isFlipped ? KBBottomLeftCorner : KBTopLeftCorner)) + { + [path appendBezierPathWithArcWithCenter:NSMakePoint(NSMinX(rect), NSMaxY(rect)) + radius:newRadius + startAngle:90.0 + endAngle:180.0]; + } + else + { + NSPoint cornerPoint = NSMakePoint(NSMinX(aRect), NSMaxY(aRect)); + [path appendBezierPathWithPoints:&cornerPoint count:1]; + } + + [path closePath]; + return path; +} + ++ (NSBezierPath*)bezierPathWithRoundedRect:(NSRect)aRect cornerRadius:(float)radius +{ + return [NSBezierPath bezierPathWithRoundedRect:aRect + inCorners:KBTopLeftCorner|KBTopRightCorner|KBBottomRightCorner|KBBottomLeftCorner + cornerRadius:radius + flipped:NO]; +} + +@end diff --git a/Source/NSData+GPGMail.h b/Source/NSData+GPGMail.h new file mode 100644 index 00000000..cb63dab7 --- /dev/null +++ b/Source/NSData+GPGMail.h @@ -0,0 +1,101 @@ +/* NSData+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 24-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#define PGP_BEGIN_PGP_PREFIX @"-----BEGIN PGP " +#define PGP_MESSAGE_PREFIX_TAIL @"MESSAGE-----" +#define PGP_SIGNATURE_PREFIX_TAIL @"SIGNATURE-----" + +#define PGP_MESSAGE_BEGIN @"-----BEGIN PGP MESSAGE-----" +#define PGP_MESSAGE_END @"-----END PGP MESSAGE-----" +#define PGP_SIGNED_MESSAGE_BEGIN @"-----BEGIN PGP SIGNED MESSAGE-----" +#define PGP_MESSAGE_SIGNATURE_BEGIN @"-----BEGIN PGP SIGNATURE-----" +#define PGP_MESSAGE_SIGNATURE_END @"-----END PGP SIGNATURE-----" +#define PGP_MESSAGE_PUBLIC_KEY_BEGIN @"-----BEGIN PGP PUBLIC KEY BLOCK-----" +#define PGP_MESSAGE_PUBLIC_KEY_END @"-----END PGP PUBLIC KEY BLOCK-----" + +@interface NSData (GPGMail) + +/** + Returns the string representation for data by trying + to decode it using different encoding. + */ +- (NSString *)stringByGuessingEncoding; + +- (NSString *)stringByGuessingEncodingWithHint:(NSStringEncoding)encoding; + +/** + Finds inline pgp signed data including the signatures. + Starts with -----BEGIN PGP SIGNED MESSAGE----- + and ends with -----END PGP SIGNATURE-----. + + Returns the range of the signature or NSNotFound. + */ +- (NSRange)rangeOfPGPInlineSignatures; + +/** + Finds all PGP signatures, not only inline. + */ +- (NSRange)rangeOfPGPSignatures; + +/** + Finds inline pgp encrypted data in the current part. Unlike isPGPMimeEncrypted, + only the current part is checked for inline data and the range returned. + */ +- (NSRange)rangeOfPGPInlineEncryptedData; +- (NSRange)rangeOfPGPInlineSignaturesInRange:(NSRange)range; + +/** + Checks if the data might contain PGP encrypted data and/or sigs + by looking for the ----BEGIN PGP MESSAGE---- header. + + This method detects the data even if the header is prefixed + by other chars. (important to detect the header in text/html parts) + */ +- (BOOL)mightContainPGPEncryptedDataOrSignatures; + +/** + Finds public keys in the data. + */ +- (NSRange)rangeOfPGPPublicKey; + +/** + Finds "version ?: \d" + */ +- (BOOL)containsPGPVersionMarker:(int)version; + +/** + Checks the pgp packets for a signature packet. + Use for recognizing non-clear-signed messages in decrypt. + In some rare cases if packets are found which are not yet supported + by libmacgpg, no packets are returned. In that case return + signaturePacketsExpected. + */ +- (BOOL)hasSignaturePacketsWithSignaturePacketsExpected:(BOOL)signaturePacketsExpected; + +@end diff --git a/Source/NSData+GPGMail.m b/Source/NSData+GPGMail.m new file mode 100644 index 00000000..a26a413b --- /dev/null +++ b/Source/NSData+GPGMail.m @@ -0,0 +1,206 @@ +/* NSData+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 24-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#define restrict +#import +#import +#import +#import "NSData+GPGMail.h" +#import "NSData-MessageAdditions.h" + +@implementation NSData (GPGMail) + +- (NSString *)stringByGuessingEncodingWithHint:(NSStringEncoding)encoding { + if([self length] == 0) + return @""; + + // Attempt to convert with hint encoding. + NSString *string = [NSString stringWithData:self encoding:encoding]; + if(![string length]) + return [self stringByGuessingEncoding]; + + return string; +} + +- (NSString *)stringByGuessingEncoding { + NSString *retString; + + if ([self length] == 0) { + return @""; + } + + int items = 10; + int encodings[10] = {NSUTF8StringEncoding, + NSISOLatin1StringEncoding, NSISOLatin2StringEncoding, + NSWindowsCP1251StringEncoding, NSWindowsCP1252StringEncoding, NSWindowsCP1253StringEncoding, + NSWindowsCP1254StringEncoding, NSWindowsCP1250StringEncoding, NSISO2022JPStringEncoding, + NSASCIIStringEncoding}; + + for(int i = 0; i < items; i++) { + retString = [NSString stringWithData:self encoding:encodings[i]]; + if([retString length] > 0) + return retString; + + } + + @throw [NSException exceptionWithName:@"GPGUnknownStringEncodingException" + reason:@"It was not possible to recognize the string encoding." userInfo:nil]; +} + +- (NSRange)rangeOfPGPInlineSignatures { + return [self rangeOfPGPInlineSignaturesInRange:NSMakeRange(0, self.length)]; +} +- (NSRange)rangeOfPGPInlineSignaturesInRange:(NSRange)range { + // Use the regular expression to ignore all signatures contained in a reply. + NSString *signatureRegex = [NSString stringWithFormat:@"(?sm)(^%@\\r?\\n(.*?)\\r?\n%@)", + PGP_SIGNED_MESSAGE_BEGIN, PGP_MESSAGE_SIGNATURE_END]; + NSRange match = NSMakeRange(NSNotFound, 0); + @try { + RKRegex *sigRKRegex = [RKRegex regexWithRegexString:signatureRegex options:RKCompileNoOptions]; + match = [self rangeOfRegex:sigRKRegex inRange:range capture:0]; + } + @catch (NSException *exception) { + // Ignore... + } + + return match; +} + +- (NSRange)rangeOfPGPSignatures { + NSString *signatureRegex = [NSString stringWithFormat:@"(?sm)(%@.*?%@)", + PGP_MESSAGE_SIGNATURE_BEGIN, PGP_MESSAGE_SIGNATURE_END]; + NSRange match = NSMakeRange(NSNotFound, 0); + @try { + RKRegex *sigRKRegex = [RKRegex regexWithRegexString:signatureRegex options:RKCompileNoOptions]; + match = [self rangeOfRegex:sigRKRegex]; + } + @catch (NSException *exception) { + // Ignore... + } + + return match; +} + +- (NSRange)rangeOfPGPInlineEncryptedData { + // Use the regular expression to ignore all signatures contained in a reply. + NSString *messageRegex = [NSString stringWithFormat:@"(?sm)(^%@\\s*\\r?\\s*\\n(.*?)\\r?\\s*\\n\\s*%@)", + PGP_MESSAGE_BEGIN, PGP_MESSAGE_END]; + NSRange match = NSMakeRange(NSNotFound, 0); + if([self length] == 0) + return match; + + @try { + RKRegex *sigRKRegex = [RKRegex regexWithRegexString:messageRegex options:RKCompileNoOptions]; + match = [self rangeOfRegex:sigRKRegex]; + } + @catch (NSException *exception) { + // Ignore... + } + + return match; +} + +- (BOOL)mightContainPGPEncryptedDataOrSignatures { + NSString *signatureRegex = [NSString stringWithFormat:@"(?sm)(-----BEGIN PGP (?MESSAGE|SIGNATURE)-----" + ".*-----END PGP \\k-----)"]; + BOOL isMatched = NO; + + @try { + RKRegex *sigRKRegex = [RKRegex regexWithRegexString:signatureRegex options:RKCompileNoOptions]; + isMatched = [self isMatchedByRegex:sigRKRegex]; + } + @catch (NSException *exception) { + // Ignore... + } + + return isMatched; +} + +- (NSRange)rangeOfPGPPublicKey { + NSString *signatureRegex = [NSString stringWithFormat:@"(?sm)(%@.*?%@)", + PGP_MESSAGE_PUBLIC_KEY_BEGIN, PGP_MESSAGE_PUBLIC_KEY_END]; + NSRange match = NSMakeRange(NSNotFound, 0); + @try { + RKRegex *sigRKRegex = [RKRegex regexWithRegexString:signatureRegex options:RKCompileNoOptions]; + match = [self rangeOfRegex:sigRKRegex]; + } + @catch (NSException *exception) { + // Ignore... + } + + return match; +} + +- (BOOL)containsPGPVersionMarker:(int)version { + NSString *versionRegex = [NSString stringWithFormat:@"(?smi)(version[ ]?: %d)", version]; + BOOL isMatched = NO; + @try { + RKRegex *versionRKRegex = [RKRegex regexWithRegexString:versionRegex options:RKCompileNoOptions]; + isMatched = [self isMatchedByRegex:versionRKRegex]; + } + @catch (NSException *exception) { + // Ignore... + } + + return isMatched; +} + +- (BOOL)hasSignaturePacketsWithSignaturePacketsExpected:(BOOL)signaturePacketsExpected { + NSData *packetData = [self copy]; + + NSArray *packets = nil; + @try { + packets = [GPGPacket packetsWithData:packetData]; + } + @catch (NSException *exception) { + return NO; + } + + // Parsing packets failed due to unsupported packets. + if(![packets count]) { + return signaturePacketsExpected; + } + + BOOL hasSignature = NO; + + for(GPGPacket *packet in packets) { + if(packet.tag == GPGSignaturePacketTag) { + hasSignature = YES; + break; + } + } + + return hasSignature; +} + +- (NSData *)dataPreparedForVerification { + return [[NSData alloc] initWithDataConvertingLineEndingsFromUnixToNetwork:self]; +} + +@end diff --git a/Source/NSObject+LPDynamicIvars.h b/Source/NSObject+LPDynamicIvars.h new file mode 100644 index 00000000..803e5619 --- /dev/null +++ b/Source/NSObject+LPDynamicIvars.h @@ -0,0 +1,71 @@ +/* NSObject+LPDynamicIvars.h created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + The following methods extends every object to support additional + variables to be added/removed/checked at runtime. + + Internally uses associated objects to add this functionality. + + TODO: support class variables. (might work already, using objc_getClass(self)) + */ +@interface NSObject (LPDynamicIvars) + +/** + Add a variable with value to the object. + */ +- (void)setIvar:(id)key value:(id)value; + +/** + Add a variable with value to the object. + If shouldAssign is set to true, the value is only assigned, not retained. + This is for example necessary under 10.7 to store a dispatch_queue_t object + as associated object. + */ +- (void)setIvar:(id)key value:(id)value assign:(BOOL)shouldAssign; + +/** + Retrieve the value for a variable. + */ +- (id)getIvar:(id)key; +/** + Remove an existing variable. + */ +- (void)removeIvar:(id)key; +/** + Check if a variable is set on an object. + */ +- (BOOL)ivarExists:(id)key; + +/** + Removes every added ivar. + */ +- (void)removeIvars; + +@end diff --git a/Source/NSObject+LPDynamicIvars.m b/Source/NSObject+LPDynamicIvars.m new file mode 100644 index 00000000..a1d8a00a --- /dev/null +++ b/Source/NSObject+LPDynamicIvars.m @@ -0,0 +1,41 @@ +// +// Category.m +// GPGMail +// +// Created by Lukas Pitschl on 17.06.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import "NSObject+LPDynamicIvars.h" +#import + +@implementation NSObject (LPDynamicIvars) + +- (void)setIvar:(id)key value:(id)value { + [self setIvar:key value:value assign:NO]; +} + +- (void)setIvar:(id)key value:(id)value assign:(BOOL)shouldAssign { + if(shouldAssign) + objc_setAssociatedObject(self, (__bridge const void *)(key), value, OBJC_ASSOCIATION_ASSIGN); + else + objc_setAssociatedObject(self, (__bridge const void *)(key), value, OBJC_ASSOCIATION_RETAIN_NONATOMIC); +} + +- (id)getIvar:(id)key { + return objc_getAssociatedObject(self, (__bridge const void *)(key)); +} + +- (void)removeIvar:(id)key { + [self setIvar:key value:nil]; +} + +- (BOOL)ivarExists:(id)key { + return [self getIvar:key] == nil ? NO : YES; +} + +- (void)removeIvars { + objc_removeAssociatedObjects(self); +} + +@end diff --git a/Source/NSPreferences+GPGMail.h b/Source/NSPreferences+GPGMail.h new file mode 100644 index 00000000..28ebb84d --- /dev/null +++ b/Source/NSPreferences+GPGMail.h @@ -0,0 +1,73 @@ +/* NSPreferences+GPGMail.m created by Lukas Pitschl (lukele) on Sat 20-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface NSPreferences (GPGMail) + ++ (id)MASharedPreferences; + +/** + Returns the window size necessary to fit all toolbar items. + */ +- (NSSize)sizeForWindowShowingAllToolbarItems:(NSWindow *)window; + +/** + Is called when the preference pane is first shown, or the user + resizes the preference pane. + If a use resizes the preference pane, the original method is invoked. + If the preference is first shown, it calulcates the size needed to fit + all toolbar items using -[NSPreferences(GPGMail)sizeForWindowShowingAllToolbarItems:] + and returns that value, so the window is correctly resized. +*/ +- (NSSize)MAWindowWillResize:(id)window toSize:(NSSize)toSize; + +/** + Helper function to resize the preference pane window to fit all + toolbar items. + */ +- (void)resizeWindowToShowAllToolbarItems:(NSWindow *)window; + +/** + Is called whenever the user clicks on a toolbar item. + This also resizes the window, which is why internally + -[NSPreferences(GPGMail) resizeWindowToShowAllToolbarItems:] + is called, to force the window to resize again to fit all toolbar items. + */ +- (void)MAToolbarItemClicked:(id)toolbarItem; + +/** + Is called whenever the preference pane is displayed. + This also resizes the window, which is why internally + -[NSPreferences(GPGMail) resizeWindowToShowAllToolbarItems:] + is called, to force the window to resize again to fit all toolbar items. + */ +- (void)MAShowPreferencesPanelForOwner:(id)owner; + +@end diff --git a/Source/NSPreferences+GPGMail.m b/Source/NSPreferences+GPGMail.m new file mode 100644 index 00000000..07c02a1c --- /dev/null +++ b/Source/NSPreferences+GPGMail.m @@ -0,0 +1,156 @@ +/* NSPreferences+GPGMail.m created by Lukas Pitschl (lukele) on Sat 20-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * Credit for the re-inserting toolbar code when preference pane is restored + * no re-opened (Lion restore feature) goes to Adam Nohejl. + * + * http://nohejl.name/2011/07/21/mail-preferences-modules-in-mac-os-x-10-7/ + */ + +#import "CCLog.h" +#import "NSObject+LPDynamicIvars.h" +#import +#import +#import "NSPreferences+GPGMail.h" +#import "GPGMailPreferences.h" +#import "GPGMailBundle.h" + +@implementation NSPreferences (GPGMail) + ++ (id)MASharedPreferences { + static BOOL added = NO; + + id preferences = [self MASharedPreferences]; + + if(preferences == nil) + return nil; + + if(added) + return preferences; + + // Check modules, if GPGMailPreferences is not yet in there. + NSPreferencesModule *gpgMailPreferences = [GPGMailPreferences sharedInstance]; + NSString *preferencesName = GMLocalizedString(@"PGP_PREFERENCES"); + [preferences addPreferenceNamed:preferencesName owner:gpgMailPreferences]; + added = YES; + + NSWindow *preferencesPanel = [preferences valueForKey:@"_preferencesPanel"]; + NSToolbar *toolbar = [preferencesPanel toolbar]; + // If the toolbar is nil, the setup will be done later by Mail.app. + if(!toolbar) + return preferences; + + BOOL gpgMailPreferencesToolbarExists = NO; + // Mail Preferences is not able to restore to the GPGMail preference module + // if it was last open. + // That's why GPGMail saves the information of the last open one and restores it + // on its own. + NSToolbarItem *lastSelectedItem = nil; + NSString *lastSelectedItemIdentifier = [[GPGOptions sharedOptions] valueForKey:@"MailPreferencesLastSelectedToolbarItem"]; + int i = 0; + for(id item in [toolbar items]) { + if((!lastSelectedItemIdentifier && i == 0) || [lastSelectedItemIdentifier isEqualToString:[item itemIdentifier]]) + lastSelectedItem = item; + + if([[item itemIdentifier] isEqualToString:preferencesName]) { + gpgMailPreferencesToolbarExists = YES; + break; + } + i++; + } + + // If the GPGMail Preference toolbar item doesn't exist, + // add it. + if(!gpgMailPreferencesToolbarExists) + [toolbar insertItemWithItemIdentifier:preferencesName atIndex:[[toolbar items] count]]; + + // Make sure the preferences window shows all toolbar items. + [preferences setIvar:@"makeAllToolbarItemsVisible" value:@YES]; + // If the preference window wasn't closed before Mail.app was shutdown + // and the last preference module to be shown was GPGMail, + // Mail.app doesn't show it automatically after restarting and restoring + // the preference pane window. + // In case of GPGMail being the last item, it's not in the toolbar yet + // since it was just recently added. Use _selectModuleOwner to select it. + if(!lastSelectedItem && [lastSelectedItemIdentifier isEqualToString:preferencesName]) { + NSToolbarItem *toolbarItem = [[NSToolbarItem alloc] initWithItemIdentifier:preferencesName]; + [preferences toolbarItemClicked:toolbarItem]; + } + else + [preferences toolbarItemClicked:lastSelectedItem]; + // Force resizing of the window so that all toolbar items fit. + [preferences resizeWindowToShowAllToolbarItems:preferencesPanel]; + + return preferences; +} + + +- (NSSize)sizeForWindowShowingAllToolbarItems:(NSWindow *)window { + NSRect frame = [window frame]; + float width = 0.0f; + NSArray *subviews = [[[[window toolbar] valueForKey:@"_toolbarView"] subviews][0] subviews]; + for (NSView *view in subviews) { + width += view.frame.size.width; + } + // Add padding to fit them all. + width += 10; + return NSMakeSize(width > frame.size.width ? width : frame.size.width, frame.size.height); +} + +- (NSSize)MAWindowWillResize:(id)window toSize:(NSSize)toSize { + if(![[self getIvar:@"makeAllToolbarItemsVisible"] boolValue]) + return [self MAWindowWillResize:window toSize:toSize]; + + NSSize newSize = [self sizeForWindowShowingAllToolbarItems:window]; + [self removeIvar:@"makeAllToolbarItemsVisible"]; + return newSize; +} + +- (void)resizeWindowToShowAllToolbarItems:(NSWindow *)window { + NSRect frame = [window frame]; + frame.size = [self sizeForWindowShowingAllToolbarItems:window]; + [self setIvar:@"makeAllToolbarItemsVisible" value:@YES]; + [window setFrame:frame display:YES]; +} + +- (void)MAToolbarItemClicked:(id)toolbarItem { + // Resize the window, otherwise it would make it small + // again. + [[GPGOptions sharedOptions] setValue:[toolbarItem itemIdentifier] forKey:@"MailPreferencesLastSelectedToolbarItem"]; + [self MAToolbarItemClicked:toolbarItem]; + [self resizeWindowToShowAllToolbarItems:[self valueForKey:@"_preferencesPanel"]]; +} + +- (void)MAShowPreferencesPanelForOwner:(id)owner { + [self MAShowPreferencesPanelForOwner:owner]; + [self resizeWindowToShowAllToolbarItems:[self valueForKey:@"_preferencesPanel"]]; +} + +@end diff --git a/Source/NSSet+Functional.h b/Source/NSSet+Functional.h new file mode 100644 index 00000000..0e4aef6a --- /dev/null +++ b/Source/NSSet+Functional.h @@ -0,0 +1,39 @@ +/* NSSet+Functional.h created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +@interface NSSet (Functional) + +/** + Returns a subset of the set for which block(obj) + returns true. + */ +- (NSSet *)filter:(id (^)(id))block; + +@end + diff --git a/Source/NSSet+Functional.m b/Source/NSSet+Functional.m new file mode 100644 index 00000000..d167e4c0 --- /dev/null +++ b/Source/NSSet+Functional.m @@ -0,0 +1,23 @@ +// +// NSSet+Functional.m +// GPGMail +// +// Created by Lukas Pitschl on 15.06.11. +// Copyright 2011 __MyCompanyName__. All rights reserved. +// + +#import "NSSet+Functional.h" + +@implementation NSSet (Functional) + +- (NSSet *)filter:(id (^)(id))block { + NSMutableSet *set = [NSMutableSet set]; + for(id obj in self) { + id ret = block(obj); + if(!ret) continue; + [set addObject:obj]; + } + return [NSSet setWithSet:set]; +} + +@end diff --git a/Source/NSString+GPGMail.h b/Source/NSString+GPGMail.h new file mode 100644 index 00000000..1f951dd5 --- /dev/null +++ b/Source/NSString+GPGMail.h @@ -0,0 +1,67 @@ +/* NSString+GPGMail.h created by dave on Mon 29-Oct-2001 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + + +@interface NSString (GPGMail) + +/** + Return the lowercase and uncommented version of an email address. + + If the email address is using the commented form, being + "Some Comment ", the commented part "Some Comment <>" is stripped + and only the actual address (e.g.: address@me.com) returned. + + The comment part might be a name of the owner of the email address. + */ +- (NSString *)gpgNormalizedEmail; + +/** + Removes any known pgp extension if any is found. + */ +- (NSString *)stringByDeletingPGPExtension; + +/** + Removes elements with filename matching the given filenames. + */ +- (NSString *)stringByDeletingAttachmentsWithNames:(NSArray *)names; + +@end + +/** + The methods in this category are available at runtime, but might + have been removed in newer releases. + */ + +@interface NSString (NotImplemented) + +- (NSString *)uncommentedAddress; + +@end diff --git a/Source/NSString+GPGMail.m b/Source/NSString+GPGMail.m new file mode 100644 index 00000000..b0e3d851 --- /dev/null +++ b/Source/NSString+GPGMail.m @@ -0,0 +1,105 @@ +/* NSString+GPGMail.m created by dave on Mon 29-Oct-2001 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#define restrict +#import +#import +#import "NSString+GPGMail.h" +#import "GPGMailBundle.h" +#import "EAEmailAddressParser.h" + +@implementation NSString (GPGMail) + +- (NSString *)gpgNormalizedEmail { + if([self respondsToSelector:@selector(uncommentedAddress)]) + return [[self lowercaseString] uncommentedAddress]; + + // 10.7 and 10.8 have uncommentedAddress. + // 10.9 uses EAEmailAddressParser to perform the same operation. + Class AddressParser = NSClassFromString(@"EAEmailAddressParser"); + + if(AddressParser) + return [[AddressParser rawAddressFromFullAddress:self] lowercaseString]; + + NSLog(@"[GPGMail] Attention: uncommentedAddress no longer exists."); + return [self lowercaseString]; +} + +- (NSString *)stringByDeletingPGPExtension { + NSArray *PGPExtensions = @[@"pgp", @"gpg", @"asc"]; + NSString *extension = [self pathExtension]; + if([PGPExtensions containsObject:extension]) + return [self stringByDeletingPathExtension]; + + return [NSString stringWithString:self]; +} + +- (NSString *)stringByDeletingAttachmentsWithNames:(NSArray *)names { + // Attachments in parsed messages have the following format. + // + // So best is to look for tags which have a type of application/x-apple-msg-attachment and a .sig in the filename. + // Let's hope normal attachments don't have that. + NSString *attachmentRegex = @"(?sm)(?]*)name=\"(?[^\"]+)\"([^>]*)application/x-apple-msg-attachment([^>]*)>)"; + + RKEnumerator *matchEnumerator = [self matchEnumeratorWithRegex:attachmentRegex]; + + NSMutableString *withoutAttachments = [self mutableCopy]; + + while([matchEnumerator nextRanges] != NULL) { + __autoreleasing NSString *all = nil, __autoreleasing *name = nil; + + [matchEnumerator getCapturesWithReferences:@"${all}", &all, @"${name}", &name, nil]; + + if(![names containsObject:name]) + continue; + + [withoutAttachments replaceOccurrencesOfString:all withString:@"" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [withoutAttachments length])]; + } + + return withoutAttachments; +} + +- (NSString *)SHA1 { + unsigned char digest[CC_SHA1_DIGEST_LENGTH]; + NSData *stringBytes = [self dataUsingEncoding: NSUTF8StringEncoding]; + if (!CC_SHA1([stringBytes bytes], (CC_LONG)[stringBytes length], digest)) + return nil; + + NSMutableString *sha1 = [NSMutableString string]; + + for(unsigned int i = 0; i < CC_SHA1_DIGEST_LENGTH; i++) { + NSLog(@"%02x", digest[i]); + [sha1 appendFormat:@"%02x", digest[i]]; + } + + return (NSString *)sha1; +} + +@end diff --git a/Source/NSWindow+GPGMail.h b/Source/NSWindow+GPGMail.h new file mode 100644 index 00000000..c487f687 --- /dev/null +++ b/Source/NSWindow+GPGMail.h @@ -0,0 +1,64 @@ +/* NSWindow+GPGMail.h created by Lukas Pitschl (@lukele) on Mon 27-Feb-2012 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@interface NSWindow (GPGMail) + +/** + Allows to add an accessory view to a NSWindow which will be + added to the top right. + */ +- (void)addAccessoryView:(NSView *)accessoryView; + +/** + Positions the accessory view at the top right of the theme frame. + */ +- (void)positionAccessoryView:(NSView *)accessoryView; + +/** + Positions the accessory view at the top right, but allows the set an offset. + */ +- (void)positionAccessoryView:(NSView *)accessoryView offset:(NSPoint)offset; + +/** + Centers an accessory view horizontally in the theme frame. + */ +- (void)centerAccessoryView:(NSView *)accessoryView; + +/** + Is called by Mail.app whenever the user clicks the fullscreen toggle button. + This method is injected for immediately hiding any accessory views in any document + editors, so there's no glitch in the fullscreen to normal window animation. + */ +- (void)MAToggleFullScreen:(id)sender; + +- (id)titlebarView; + +@end diff --git a/Source/NSWindow+GPGMail.m b/Source/NSWindow+GPGMail.m new file mode 100644 index 00000000..b40b5991 --- /dev/null +++ b/Source/NSWindow+GPGMail.m @@ -0,0 +1,87 @@ +/* NSWindow+GPGMail.m created by Lukas Pitschl (@lukele) on Mon 27-Feb-2012 */ + +/* + * Copyright (c) 2000-2011, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "CCLog.h" +#import "GPGMailBundle.h" +#import "MailDocumentEditor.h" +#import "MailDocumentEditor+GPGMail.h" +#import "NSWindow+GPGMail.h" + +@implementation NSWindow (GPGMail) + +- (void)addAccessoryView:(NSView *)accessoryView { + NSView *themeFrame = [[self contentView] superview]; + [self positionAccessoryView:accessoryView]; + if([GPGMailBundle isYosemite]) + [[(id)themeFrame titlebarView] addSubview:accessoryView]; + else + [themeFrame addSubview:accessoryView]; +} + +- (void)positionAccessoryView:(NSView *)accessoryView { + [self positionAccessoryView:accessoryView offset:NSMakePoint(0.0f, 0.0f)]; +} + +- (void)positionAccessoryView:(NSView *)accessoryView offset:(NSPoint)offset { + NSView *themeFrame = [[self contentView] superview]; + NSRect c = [themeFrame frame]; // c for "container" + if([GPGMailBundle isYosemite]) + c = [[(id)themeFrame titlebarView] frame]; + NSRect aV = [accessoryView frame]; // aV for "accessory view" + + NSRect newFrame = NSMakeRect( + c.size.width - aV.size.width - offset.x, // x position + c.size.height - aV.size.height - offset.y, // y position + aV.size.width, // width + aV.size.height); // height + + [accessoryView setFrame:newFrame]; +} + +- (void)centerAccessoryView:(NSView *)accessoryView { + NSView *themeFrame = [[self contentView] superview]; + NSRect c = [themeFrame frame]; // c for "container" + NSRect aV = [accessoryView frame]; // aV for "accessory view" + aV.origin.x = floorf((c.size.width - aV.size.width) / 2.0f); + + [accessoryView setFrame:aV]; +} + +- (void)MAToggleFullScreen:(id)sender { + // Loop through all document editors and remove the security method + // accessory view, so there's no animation glitch. + DebugLog(@"Toggle fullscreen: remove security method accessory view"); + for(MailDocumentEditor *editor in [NSClassFromString(@"MailDocumentEditor") documentEditors]) { + if(editor.isModal) + [((MailDocumentEditor_GPGMail *)editor) hideSecurityMethodAccessoryView]; + } + [self MAToggleFullScreen:sender]; +} + +@end diff --git a/Source/OptionalView+GPGMail.h b/Source/OptionalView+GPGMail.h new file mode 100644 index 00000000..b168ee23 --- /dev/null +++ b/Source/OptionalView+GPGMail.h @@ -0,0 +1,37 @@ +/* OptionalView+GPGMail.h created by Lukas Pitschl (@lukele) on Wed 03-Aug-2011 */ + +/* + * Copyright (c) 2013, GPGTools Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Project Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Project Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +@interface OptionalView_GPGMail : NSView + +/** + Defines the width of each optional view. + */ +- (double)MAWidthIncludingOptionSwitch:(BOOL)includeOptionSwitch; + +@end diff --git a/Source/OptionalView+GPGMail.m b/Source/OptionalView+GPGMail.m new file mode 100644 index 00000000..4fd9be77 --- /dev/null +++ b/Source/OptionalView+GPGMail.m @@ -0,0 +1,30 @@ +// +// OptionalView+GPGMail.m +// GPGMail +// +// Created by Lukas Pitschl on 31.07.11. +// Copyright 2013 GPGTools. All rights reserved. +// + +#import +#import "NSObject+LPDynamicIvars.h" +#import "OptionalView+GPGMail.h" + +@implementation OptionalView_GPGMail + +- (double)MAWidthIncludingOptionSwitch:(BOOL)includeOptionSwitch { + double width; + if ([[self getIvar:@"AdjustedWidth"] boolValue]) { + width = self.frame.size.width; + if (!includeOptionSwitch) { + width -= 22; + } + } else { + width = [self MAWidthIncludingOptionSwitch:includeOptionSwitch]; + } + + return width; +} + + +@end diff --git a/Source/PrivateHeaders/TextDocumentViewer.h b/Source/PrivateHeaders/TextDocumentViewer.h new file mode 100644 index 00000000..3a133b46 --- /dev/null +++ b/Source/PrivateHeaders/TextDocumentViewer.h @@ -0,0 +1,135 @@ +/* TextDocumentViewer.h created by stephane on Tue 04-Jul-2000 */ + +#import +#import +#import + + +@class NSImageView; +@class NSScrollView; +@class NSTextView; +@class Message; +@class MessageTextView; +@class MessageTextContainer; +@class HTMLView; +@class NSTimer; + + +extern NSString *MessageWillBeDisplayedInView; +// Object is TextDocumentViewer +// UserInfo: +// MessageKey = Message +// MessageViewKey = MessageTextView +extern NSString *MessageWillNoLongerBeDisplayedInView; +// Object is TextDocumentViewer +// UserInfo: +// MessageKey = Message +// MessageViewKey = MessageTextView + + +@class MessageViewingState; +@class ActivityMonitor; +@class ObjectCache; +@class InvocationQueue; + +@interface TextDocumentViewer : NSResponder +{ + Message *_message; + MessageViewingState *_viewingState; + ActivityMonitor *_documentMonitor; + NSScrollView *messageScroll; + MessageTextView *textView; + MessageTextContainer *specialContainer; + NSImageView *imageView; + NSView *contentContainerView; + NSView *junkMailView; + HTMLView *_htmlView; + NSView *_currentView; + NSTimer *_fadeTimer; + ObjectCache *_documentCache; + struct __CFSet *observedHTMLDocuments; + InvocationQueue *invocationQueue; + NSString *_messageIDToRestoreInitialStateFor; + struct _NSRect _initialVisibleRect; + struct _NSRange _initialSelectedRange; + int _fadeStepCounter : 30; + int _attachmentsMayBeLoading : 1; + int _textViewHasBeenInitialized : 1; +} + +- (void)awakeFromNib; +- attachmentContextMenu; +- (void)readDefaultsFromDictionary:fp12; +- (void)writeDefaultsToDictionary:fp12; +- (void)_setupUI; +- (void)dealloc; +- (void)stopAllActivity; +- (void)_messageMayHaveBecomeAvailable; +- (void)_cancelBackgroundAttachmentLoadingIfNeeded; +- (void)_switchToNSTextView; +- (void)_switchToHTMLView; +- (void)fadeToEmpty; +- (void)fadeOneNotch:fp12; +- (void)_stopFadingTimer; +- (void)_pushDocumentToCache; +- (void)_backgroundLoadFinished:fp12; +- (void)setMessage:fp12; +- (void)_setMessage:fp12; +- (void)_fetchContentsForMessage:fp12 fromStore:fp16 withViewingAttributes:fp20; +- (void)_startBackgroundLoad:fp12; +- message; +- (void)_removeCurrentMessageFromCache; +- (void)reloadCurrentMessage; +- (void)viewerPreferencesChanged:fp12; +- (void)showJunkMailHelp:fp12; +- (void)_addHelpButton; +- (void)_showJunkMailBanner; +- (void)_hideJunkMailBanner; +- (void)_updateJunkMailBannerForLevel:(int)fp12; +- (void)markAsNotJunkMailClicked:fp12; +- (void)_messageFlagsDidChange:fp12; +- (void)_updateDisplay; +- (void)highlightSearchText:fp12; +- textView; +- currentSelection; +- (void)clearCache; +- (void)_updateSendersImageToMatchSender:fp12; +- (void)_displayHTMLDocument:fp12; +- (void)displayAttributedString:fp12; +- (void)_addressPhotoLoaded:fp12; +- (void)_unregisterForHTMLDocumentNotifications; +- (void)htmlDocumentDidChange:fp12; +- (void)initPrintInfo; +- (int)headerDetailLevel; +- (char)showingAllHeaders; +- (void)setShowAllHeaders:(char)fp12; +- (void)keyDown:fp12; +- (char)pageDown; +- (char)pageUp; +- attachmentDirectory; +- (void)textView:fp12 clickedOnCell:fp16 inRect:(struct _NSRect)fp20 atIndex:(unsigned int)fp32; +- (void)textView:fp12 doubleClickedOnCell:fp16 inRect:(struct _NSRect)fp20 atIndex:(unsigned int)fp32; +- (void)textView:fp12 draggedCell:fp16 inRect:(struct _NSRect)fp20 event:fp32 atIndex:(unsigned int)fp36; +- (char)_handleClickOnURL:fp12; +- (char)textView:fp12 clickedOnLink:fp16 atIndex:(unsigned int)fp20; +- (void)targetHtmlView:fp12 followLink:fp16; +- (char)htmlView:fp12 clickedOnLink:fp16; +- (char)currentlyViewingSource; +- (char)_validateAction:(SEL) fp12 tag:(int)fp16; +- (char)validateToolbarItem:fp12; +- (char)validateMenuItem:fp12; +- (void)showAllHeaders:fp12; +- (void)showFilteredHeaders:fp12; +- (void)viewSource:fp12; +- (void)toggleShowControlCharacters:fp12; +- (void)showFirstAlternative:fp12; +- (void)showPreviousAlternative:fp12; +- (void)showNextAlternative:fp12; +- (void)showBestAlternative:fp12; +- (void)changeTextEncoding:fp12; +- (void)_makeFontBigger:fp12; +- (void)_makeFontSmaller:fp12; +- (void)makeFontBigger:fp12; +- (void)makeFontSmaller:fp12; + +@end diff --git a/Source/TextDocumentViewer+GPGMail.h b/Source/TextDocumentViewer+GPGMail.h new file mode 100644 index 00000000..fceab259 --- /dev/null +++ b/Source/TextDocumentViewer+GPGMail.h @@ -0,0 +1,32 @@ +/* TextDocumentViewer+GPGMail.h created by stephane on Tue 04-Jul-2000 */ + +/* + * Copyright GPGMail Project Team (gpgtools-devel@lists.gpgtools.org), 2000-2011 + * (see LICENSE.txt file for license information) + */ + +#import + + +@class GPGMessageViewerAccessoryViewOwner; + + +@interface TextDocumentViewer (GPGMail) + +- (Message *)gpgMessage; + +- (void)gpgShowPGPSignatureBanner; +- (void)gpgShowPGPEncryptedBanner; +- (void)gpgHideBanner; + +- (BOOL)gpgValidateAction:(SEL)anAction; + +// Actions connected to menus +- (IBAction)gpgDecrypt:(id)sender; +- (IBAction)gpgAuthenticate:(id)sender; + +- (void)gpgForwardAction:(SEL) action from:(id)sender; + +- (GPGMessageViewerAccessoryViewOwner *)gpgMessageViewerAccessoryViewOwner; + +@end diff --git a/Source/TextDocumentViewer+GPGMail.m b/Source/TextDocumentViewer+GPGMail.m new file mode 100644 index 00000000..d7c6d446 --- /dev/null +++ b/Source/TextDocumentViewer+GPGMail.m @@ -0,0 +1,455 @@ +/* TextDocumentViewer+GPGMail.m created by stephane on Tue 04-Jul-2000 */ + +/* + * Copyright GPGMail Project Team (gpgtools-devel@lists.gpgtools.org), 2000-2011 + * (see LICENSE.txt file for license information) + */ + +#import "TextDocumentViewer+GPGMail.h" +#import "GPGMessageViewerAccessoryViewOwner.h" +#import "GPGMailBundle.h" +#import +#import +#import +#import "GPGMailPatching.h" +#import +#import +#import +#import + + +@interface TextDocumentViewer (GPGMailPrivate) +- (BOOL)_gpgBannerIsShown; +@end + + +@implementation TextDocumentViewer (GPGMail) + +static NSMapTable * _extraIVars = NULL; +static NSLock *_extraIVarsLock = nil; + +// Posing no longer works correctly on 10.3, that's why we only overload single methods +static IMP _updateDisplay_IMP = NULL; +static IMP dealloc_IMP = NULL; +static IMP validateMenuItem_IMP = NULL; +static IMP setMessage_IMP = NULL; + ++ (void)load { + _extraIVars = NSCreateMapTableWithZone(NSObjectMapKeyCallBacks, NSObjectMapValueCallBacks, 3, [self zone]); + _extraIVarsLock = [[NSLock alloc] init]; + _updateDisplay_IMP = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(_updateDisplay), [self class], @selector(gpg__updateDisplay), [self class]); + dealloc_IMP = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(dealloc), [self class], @selector(gpg_dealloc), [self class]); + validateMenuItem_IMP = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(validateMenuItem:), [self class], @selector(gpg_validateMenuItem:), [self class]); + setMessage_IMP = GPGMail_ReplaceImpOfInstanceSelectorOfClassWithImpOfInstanceSelectorOfClass(@selector(setMessage:), [self class], @selector(gpg_setMessage:), [self class]); +} + +- (NSMutableDictionary *)gpgExtraIVars { + NSMutableDictionary *aDict; + NSValue *aValue = [NSValue valueWithNonretainedObject:self]; + + // We cannot use self as key, because in -dealloc this method is called when invoking super's + // and thus puts self back in mapTable; by using the NSValue and changing the dealloc, + // it corrects the problem. + + [_extraIVarsLock lock]; + aDict = NSMapGet(_extraIVars, aValue); + if (aDict == nil) { + aDict = [NSMutableDictionary dictionary]; + NSMapInsert(_extraIVars, aValue, aDict); + } + [_extraIVarsLock unlock]; + + return aDict; +} + +- (BOOL)gpgMessageWasInFactSigned { + NSNumber *aBoolValue = [[self gpgExtraIVars] objectForKey:@"messageWasInFactSigned"]; + + return (aBoolValue != nil ? [aBoolValue boolValue] : NO); +} + +- (void)gpgSetMessageWasInFactSigned:(BOOL)flag { + [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"messageWasInFactSigned"]; +} + +- (BOOL)gpgMessageHasBeenDecrypted { + NSNumber *aBoolValue = [[self gpgExtraIVars] objectForKey:@"messageHasBeenDecrypted"]; + + return (aBoolValue != nil ? [aBoolValue boolValue] : NO); +} + +- (void)gpgSetMessageHasBeenDecrypted:(BOOL)flag { + [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"messageHasBeenDecrypted"]; +} + +- (BOOL)gpgMessageReadStatusHasChanged { + NSNumber *aBoolValue = [[self gpgExtraIVars] objectForKey:@"messageReadStatusHasChanged"]; + + return (aBoolValue != nil ? [aBoolValue boolValue] : NO); +} + +- (void)gpgSetMessageReadStatusHasChanged:(BOOL)flag { + [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"messageReadStatusHasChanged"]; +} + +- (BOOL)gpgDoNotResetFlags { + NSNumber *aBoolValue = [[self gpgExtraIVars] objectForKey:@"doNotResetFlags"]; + + return (aBoolValue != nil ? [aBoolValue boolValue] : NO); +} + +- (void)gpgSetDoNotResetFlags:(BOOL)flag { + [[self gpgExtraIVars] setObject:[NSNumber numberWithBool:flag] forKey:@"doNotResetFlags"]; +} + +/* + * - (void)_displayHTMLDocument:fp12 + * { + * NSLog(@"WILL _displayHTMLDocument:%@", fp12); + * [super _displayHTMLDocument:fp12]; + * NSLog(@"DID _displayHTMLDocument:"); + * } + * + * - (void)displayAttributedString:fp12 + * { + * NSLog(@"WILL displayAttributedString:%@", fp12); + * [super displayAttributedString:fp12]; + * NSLog(@"DID displayAttributedString:"); + * } + */ + +- (void)gpgMessageStoreMessageFlagsChanged:(NSNotification *)notification { + if ([[[[notification userInfo] objectForKey:@"flags"] objectForKey:@"MessageIsRead"] isEqualToString:@"YES"]) { + NSEnumerator *anEnum = [[[notification userInfo] objectForKey:@"messages"] objectEnumerator]; + Message *aMessage; + Message *myMessage = [self message]; + + while (aMessage = [anEnum nextObject]) { + if (aMessage == myMessage) { + [self gpgSetMessageReadStatusHasChanged:YES]; + break; + } + } + } +} + +- (void)gpg__updateDisplay { + GPGMailBundle *mailBundle = [GPGMailBundle sharedInstance]; + Message *aMessage = [self message]; + BOOL shouldAuthenticate = NO; + BOOL shouldDecrypt = NO; + BOOL compareFlags = ([aMessage messageStore] != nil && ([mailBundle decryptsOnlyUnreadMessagesAutomatically] || [mailBundle authenticatesOnlyUnreadMessagesAutomatically])); + BOOL readStatusChanged = NO; + + // NSView *originalCertifBanner = [certificateView retain]; + + [[self gpgMessageViewerAccessoryViewOwner] messageChanged:aMessage]; + if (compareFlags) { + [self gpgSetMessageReadStatusHasChanged:NO]; + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(gpgMessageStoreMessageFlagsChanged:) name:@"MessageStoreMessageFlagsChanged" object:[aMessage messageStore]]; + } + + // [super _updateDisplay]; + if (aMessage == nil) { + if ([self _gpgBannerIsShown]) { + [self gpgHideBanner]; + // [originalCertifBanner release]; originalCertifBanner = nil; + } + } else if ([aMessage gpgIsEncrypted]) { // Do not get cached status from accessoryViewOwner, because it is not yet up-to-date! + [self gpgShowPGPEncryptedBanner]; + if ([mailBundle decryptsMessagesAutomatically]) { + shouldDecrypt = YES; + } + } else if ([aMessage gpgHasSignature]) { // Do not get cached status from accessoryViewOwner, because it is not yet up-to-date! + if ([mailBundle authenticatesMessagesAutomatically]) { + [self gpgShowPGPSignatureBanner]; + shouldAuthenticate = YES; + } else { + [self gpgShowPGPSignatureBanner]; + } + } else if ([self gpgMessageWasInFactSigned]) { + [self gpgShowPGPSignatureBanner]; + if (/*![self gpgDoNotResetFlags]*/ YES) { + [self gpgSetMessageWasInFactSigned:NO]; + [self gpgSetMessageHasBeenDecrypted:NO]; + } + } else if ([self gpgMessageHasBeenDecrypted]) { + [self gpgShowPGPEncryptedBanner]; + [self gpgSetMessageHasBeenDecrypted:NO]; + if ([mailBundle authenticatesMessagesAutomatically]) { + shouldAuthenticate = YES; + } + } else if ([self _gpgBannerIsShown]) { + [self gpgHideBanner]; + // [originalCertifBanner release]; originalCertifBanner = nil; + } + + _updateDisplay_IMP(self, _cmd); // Call original implementation + + if (compareFlags) { + readStatusChanged = [self gpgMessageReadStatusHasChanged]; + [[NSNotificationCenter defaultCenter] removeObserver:self name:@"MessageStoreMessageFlagsChanged" object:[aMessage messageStore]]; + } + + if (shouldAuthenticate && (![mailBundle authenticatesOnlyUnreadMessagesAutomatically] || readStatusChanged)) { + [self performSelector:@selector(gpgAuthenticate:) withObject:nil afterDelay:0.]; + } else if (shouldDecrypt && (![mailBundle decryptsOnlyUnreadMessagesAutomatically] || readStatusChanged)) { + [self performSelector:@selector(gpgDecrypt:) withObject:nil afterDelay:0.]; + } + // if(originalCertifBanner){ + // certificateView = originalCertifBanner; + // // [self setCertificateView:originalCertifBanner]; // Has side-effects: resets other attributes + // [originalCertifBanner release]; + // } +} + +- (void)gpg_dealloc { + id originalSelf = self; + + dealloc_IMP(self, _cmd); // Call original implementation; warning: will call -gpgExtraIVars! + [_extraIVarsLock lock]; + NSMapRemove(_extraIVars, [NSValue valueWithNonretainedObject:originalSelf]); + [_extraIVarsLock unlock]; +} + +- (void)gpgForwardAction:(SEL)action from:(id)sender { + id target = [self gpgMessageViewerAccessoryViewOwner]; + + if (target && [target respondsToSelector:action]) { + [target performSelector:action withObject:sender]; + } +} + +- (IBAction)gpgDecrypt:(id)sender { + [self gpgForwardAction:_cmd from:sender]; +} + +- (IBAction)gpgAuthenticate:(id)sender { + [self gpgForwardAction:_cmd from:sender]; +} + +- (BOOL)gpgValidateAction:(SEL)anAction { + if (anAction == @selector(gpgDecrypt:) || anAction == @selector(gpgAuthenticate:)) { + id target = [self gpgMessageViewerAccessoryViewOwner]; + + if (target && [target respondsToSelector:anAction]) { + return [target gpgValidateAction:anAction]; + } + } + + return NO; +} + +- (BOOL)gpg_validateMenuItem:(id )menuItem { + SEL anAction = [menuItem action]; + + if (anAction == @selector(gpgDecrypt:) || anAction == @selector(gpgAuthenticate:)) { + return [self gpgValidateAction:anAction]; + } + + return !!validateMenuItem_IMP(self, _cmd, menuItem); // Call original implementation +} +/* + * - (void)viewSource:fp12 + * { + * NSLog(@"WILL viewSource:%@", fp12); + * [super viewSource:fp12]; + * NSLog(@"DID viewSource:"); + * } + * + * - (void)reloadCurrentMessage + * { + * NSLog(@"WILL reloadCurrentMessage"); + * [super reloadCurrentMessage]; + * NSLog(@"DID reloadCurrentMessage"); + * } + */ +- (void)gpg_setMessage:fp12 { + // NSLog(@"WILL setMessage:%@", fp12); + [self gpgSetMessageWasInFactSigned:NO]; + [self gpgSetMessageHasBeenDecrypted:NO]; + if (fp12 == nil) { + [[self gpgMessageViewerAccessoryViewOwner] messageChanged:nil]; + } + setMessage_IMP(self, _cmd, fp12); // Call original implementation +} +/* + * - (void)_setMessage:fp12 + * { + * // NSLog(@"WILL _setMessage:%@", fp12); + * [super _setMessage:fp12]; + * // NSLog(@"DID _setMessage:"); + * } + */ + +- (void)_gpgAddAccessoryView:(NSView *)accessoryView { + NSRect aRect; + NSRect originalRect; + float aHeight; + NSView *resizedView = _currentView; // [[self textView] enclosingScrollView];//(NSView *)messageScroll; + NSView *currentBannerView = junkMailView; + + originalRect = aRect = [resizedView frame]; + aHeight = NSHeight([accessoryView frame]); + aRect.origin.y = NSMaxY(aRect) - aHeight; + if ([currentBannerView window] != nil) { + aRect.origin.y += NSHeight([currentBannerView frame]); + [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) - aHeight)]; + [currentBannerView setNeedsDisplay:YES]; + } + originalRect.size.height -= aHeight; + aRect.size.height = aHeight; + [accessoryView setFrame:aRect]; + [[resizedView superview] addSubview:accessoryView]; + [resizedView setFrame:originalRect]; +} + +- (void)_gpgRemoveAccessoryView:(NSView *)accessoryView redisplay:(BOOL)flag { + NSRect originalRect; + NSView *resizedView = _currentView; // [[self textView] enclosingScrollView];//(NSView *)messageScroll; + NSView *currentBannerView = junkMailView; + + NSAssert([accessoryView ancestorSharedWithView:resizedView] != nil, @"Trying to remove unattached view!"); + originalRect = [resizedView frame]; + originalRect.size.height += NSHeight([accessoryView frame]); + if (flag) { + [accessoryView removeFromSuperview]; + } else { + [accessoryView removeFromSuperviewWithoutNeedingDisplay]; + } + if ([currentBannerView window] != nil) { + [currentBannerView setFrameOrigin:NSMakePoint(NSMinX([currentBannerView frame]), NSMinY([currentBannerView frame]) + NSHeight([accessoryView frame]))]; + [currentBannerView setNeedsDisplay:YES]; + } + [resizedView setFrame:originalRect]; +} +/* + * - (GPGMessageViewerAccessoryViewOwner *) _gpgExistingMessageViewerAccessoryViewOwner + * { + * if(_accessoryViewOwnerPerViewer != NULL) + * return NSMapGet(_accessoryViewOwnerPerViewer, self); + * else + * return nil; + * } + */ +- (GPGMessageViewerAccessoryViewOwner *)gpgMessageViewerAccessoryViewOwner { + // WARNING: this limits us to 1 accessoryView per viewer + GPGMessageViewerAccessoryViewOwner *accessoryViewOwner = [[self gpgExtraIVars] objectForKey:@"messageViewerAccessoryViewOwner"]; + + if (accessoryViewOwner == nil) { + accessoryViewOwner = [[GPGMessageViewerAccessoryViewOwner alloc] initWithDelegate:self]; + [[self gpgExtraIVars] setObject:accessoryViewOwner forKey:@"messageViewerAccessoryViewOwner"]; + [accessoryViewOwner release]; + } + + return accessoryViewOwner; +} + +- (BOOL)_gpgBannerIsShown { + return [[[self gpgMessageViewerAccessoryViewOwner] view] superview] != nil; +} + +- (void)_gpgShowBannerWithType:(int)bannerType { + GPGMessageViewerAccessoryViewOwner *anOwner = nil; + + if (![self _gpgBannerIsShown]) { + anOwner = [self gpgMessageViewerAccessoryViewOwner]; + [anOwner setBannerType:bannerType]; + [self _gpgAddAccessoryView:[anOwner view]]; + } else { + anOwner = [self gpgMessageViewerAccessoryViewOwner]; + if ([anOwner bannerType] != bannerType) { + [self _gpgRemoveAccessoryView:[anOwner view] redisplay:NO]; + [anOwner setBannerType:bannerType]; + [self _gpgAddAccessoryView:[anOwner view]]; + } + } + // [anOwner setMessage:[self message]]; +} + +- (void)gpgShowPGPSignatureBanner { + // gpgMessageWasInFactSigned: special case where message has been encrypted and signed in one operation + [self _gpgShowBannerWithType:([self gpgMessageWasInFactSigned] ? gpgDecryptedSignatureInfoBanner:gpgAuthenticationBanner)]; +} + +- (void)gpgShowPGPEncryptedBanner { + // gpgMessageHasBeenDecrypted: special case where message has been encrypted + [self _gpgShowBannerWithType:([self gpgMessageHasBeenDecrypted] ? gpgDecryptedInfoBanner:gpgDecryptionBanner)]; +} + +- (void)gpgHideBanner { + if ([self _gpgBannerIsShown]) { + GPGMessageViewerAccessoryViewOwner *anOwner = [self gpgMessageViewerAccessoryViewOwner]; + + [self _gpgRemoveAccessoryView:[anOwner view] redisplay:YES]; + // [anOwner setMessage:nil]; + } +} + +- (void)gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner replaceViewWithView:(NSView *)view { +#if 1 + if (![self _gpgBannerIsShown]) { + NSLog(@"### GPGMail: banner should already be visible"); + } else +#else + NSAssert([self _gpgBannerIsShown], @"### GPGMail: banner should already be visible"); +#endif + { [self _gpgRemoveAccessoryView:[owner view] redisplay:NO]; } + [self _gpgAddAccessoryView:view]; +} + +- (void)gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner showStatusMessage:(NSString *)message { + if ([[[[self textView] window] delegate] respondsToSelector:@selector(showStatusMessage:)]) { + // Delegate can be a MessageViewer, or a MessageEditor (for standalone viewers!) + [[[[self textView] window] delegate] showStatusMessage:message]; +#warning CHECK that it is not needed on 10.2 + } +} + +- (void)gpgAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner displayMessage:(Message *)message isSigned:(BOOL)isSigned { + [self setMessage:message]; + [self gpgSetMessageWasInFactSigned:isSigned]; + [self gpgSetMessageHasBeenDecrypted:YES]; + // Now update messageView content + // If we want to add a fade-out effect, we'll need to wait to the fade-out effect + // being done before we call [viewer _loadMessageIntoTextView]. + // Fade-out effect is launched by [viewer fadeToEmpty] +// if([[message messageBody] isKindOfClass:[MimeBody class]]) +// [(MimeBody *)[message messageBody] setPreferredAlternative:0]; +// [self showFirstAlternative:nil]; + if ([[message messageBody] isHTML]) { + [self gpgSetDoNotResetFlags:YES]; + } + [self reloadCurrentMessage]; + /* if([[message messageBody] isHTML]){ + * _messageWasInFactSigned = isSigned; + * _messageHasBeenDecrypted = YES; + * [self showFirstAlternative:nil]; + * } DOES NOTHING... */ + // Will post MessageWillBeDisplayed notification; we need to call this method anyway, + // to be sure that URLs are parsed by textView and clickable +} + +- (void)gpg_showFirstAlternative:(id)sender { + [self gpgSetDoNotResetFlags:YES]; + [self showFirstAlternative:sender]; // Performs -_updateDisplay invocation, delayed! +// [self performSelector:@selector(gpg_resetFlags:) withObject:nil afterDelay:0.1]; +} + +- (void)gpg_resetFlags:(id)sender { + [self gpgSetDoNotResetFlags:NO]; + [self gpgSetMessageWasInFactSigned:NO]; + [self gpgSetMessageHasBeenDecrypted:NO]; +} + +- (Message *)gpgMessageForAccessoryViewOwner:(GPGMessageViewerAccessoryViewOwner *)owner { + return [self message]; +} + +- (Message *)gpgMessage { + // On MacOS X, [self message] sometimes returns zombies! +#warning Is it still true on 10.1? + return _message; +} + +@end diff --git a/Source/WebDocumentGenerator+GPGMail.h b/Source/WebDocumentGenerator+GPGMail.h new file mode 100644 index 00000000..2a487b59 --- /dev/null +++ b/Source/WebDocumentGenerator+GPGMail.h @@ -0,0 +1,52 @@ +/* WebDocumentGenerator+GPGMail.h created by Lukas Pitschl (@lukele) on Thu 03-Apr-2014 */ + +/* + * Copyright (c) 2000-2014, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import "WebDocumentGenerator.h" + +@class MUIWebDocument; + +/** + On Mavericks using the ActivityMonitor to display PGP errors when displaying + a message in a thread does no longer work reliably. + [[MCActivityMonitor currentMonitor] error] might return the error which belongs to the + currently viewed message, but it might also return the error from some other message in the thread, + depending on when the request is made and what other message is parsed in that moment. + Mail.app creates a WebDocument for any message which is being displayed and sets the currentError + on the WebDocument. + In order for the WebDocument to always show the error belonging to the message being parsed, + setWebDocument of the WebDocumentGenerator is overwritten. setWebDocument is called, when the + message parsing has completed in is thus the right moment to overwrite the set error with the + appropriate error. + */ +@interface WebDocumentGenerator_GPGMail : NSObject + +- (void)MASetWebDocument:(MUIWebDocument *)webDocument; + +@end diff --git a/Source/WebDocumentGenerator+GPGMail.m b/Source/WebDocumentGenerator+GPGMail.m new file mode 100644 index 00000000..1b46201e --- /dev/null +++ b/Source/WebDocumentGenerator+GPGMail.m @@ -0,0 +1,54 @@ +/* CertificateBannerViewController+GPGMail.m created by Lukas Pitschl (@lukele) on Thu 17-Oct-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "WebDocumentGenerator+GPGMail.h" +#import "ConversationMember+GPGMail.h" +#import "MUIWebDocument.h" +#import "MCMessage.h" +#import "GPGMailBundle.h" +#import "ConversationMember+GPGMail.h" +#import "NSObject+LPDynamicIvars.h" + +@implementation WebDocumentGenerator_GPGMail + +- (void)MASetWebDocument:(MUIWebDocument *)webDocument { + /* On Yosemite, the message selector no longer exists, but is encapsulated in a conversation member object. */ + MCMessage *message = nil; + if([self respondsToSelector:@selector(message)]) + message = (MCMessage *)[(id)self message]; + else if([GPGMailBundle isYosemite]) { + message = [(ConversationMember *)[(WebDocumentGenerator *)self valueForKey:@"_conversationMember"] originalMessage]; + } + id error = [message getIvar:@"PGPMainError"]; + if(error) + [webDocument setParseError:error]; + [self MASetWebDocument:webDocument]; +} + +@end diff --git a/Source/plistutil.m b/Source/plistutil.m new file mode 100644 index 00000000..41763c69 --- /dev/null +++ b/Source/plistutil.m @@ -0,0 +1,115 @@ +/* + * Copyright (c) 2000-2011, GPGMail Project Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGMail Project Team nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGMAIL PROJECT TEAM ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGMAIL PROJECT TEAM BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +static void usage(const char *progname){ + fprintf(stderr, "%s: property-list file utility\n" + " -read plist key\n" + " -write plist key value\n" + " -delete plist key\n" + , progname); +} + +int main(int argc, char **argv){ + NSAutoreleasePool *localAP = [[NSAutoreleasePool alloc] init]; + NSArray *arguments = [[NSProcessInfo processInfo] arguments]; + BOOL displayUsage = NO; + int terminationStatus = 0; + NSString *operation; + + switch ([arguments count]) { + case 4: + operation = [arguments objectAtIndex:1]; + if ([operation isEqualToString:@"-read"]) { + NSDictionary *plist = [NSDictionary dictionaryWithContentsOfFile:[arguments objectAtIndex:2]]; + + if (plist == nil) { + terminationStatus = 1; + } else { + id value = [plist objectForKey:[arguments objectAtIndex:3]]; + + if (value == nil) { + terminationStatus = 1; + } else { + [(NSFileHandle *)[NSFileHandle fileHandleWithStandardOutput] writeData:[[value description] dataUsingEncoding:NSUTF8StringEncoding]]; + } + } + } else if ([operation isEqualToString:@"-delete"]) { + NSString *filename = [arguments objectAtIndex:2]; + NSMutableDictionary *plist = [NSMutableDictionary dictionaryWithContentsOfFile:filename]; + + if (plist == nil) { + terminationStatus = 1; + } else { + // Deleting a value for a key that doesn't exist is not considered as an error + [plist removeObjectForKey:[arguments objectAtIndex:3]]; + terminationStatus = ![plist writeToFile:filename atomically:YES]; + } + } else { + displayUsage = YES; + terminationStatus = 1; + } + break; + case 5: + operation = [arguments objectAtIndex:1]; + if ([operation isEqualToString:@"-write"]) { + NSString *filename = [arguments objectAtIndex:2]; + NSMutableDictionary *plist = [NSMutableDictionary dictionaryWithContentsOfFile:filename]; + + if (plist == nil) { + // Writing a key-value pair in a file that doesn't exist is not considered as an error + // File will be created + plist = [NSMutableDictionary dictionary]; + } + // Value is written as a plist if possible, else as a string + @try{ + id aPlist = [[arguments objectAtIndex:4] propertyList]; + + [plist setObject:aPlist forKey:[arguments objectAtIndex:3]]; + }@catch (NSException *localException) { + [plist setObject:[arguments objectAtIndex:4] forKey:[arguments objectAtIndex:3]]; + } + terminationStatus = ![plist writeToFile:filename atomically:YES]; + } else { + displayUsage = YES; + terminationStatus = 1; + } + break; + default: + displayUsage = YES; + terminationStatus = 1; + } + + if (displayUsage) { + usage([[arguments objectAtIndex:0] cString]); + } + + [localAP release]; + exit(terminationStatus); + return terminationStatus; +} diff --git a/Test/Issues/600_modified_message_by_mail.eml b/Test/Issues/600_modified_message_by_mail.eml new file mode 100644 index 00000000..5c77524f --- /dev/null +++ b/Test/Issues/600_modified_message_by_mail.eml @@ -0,0 +1,12548 @@ +Return-Path: +X-Original-To: lukele@leftandleaving.com +Delivered-To: x9948084@homiemail-mx2.g.dreamhost.com +Received: from mail-ee0-f48.google.com (mail-ee0-f48.google.com [74.125.83.48]) + (using TLSv1 with cipher RC4-SHA (128/128 bits)) + (No client certificate requested) + by homiemail-mx2.g.dreamhost.com (Postfix) with ESMTPS id 1C84744813F + for ; Mon, 3 Jun 2013 14:05:53 -0700 (PDT) +Received: by mail-ee0-f48.google.com with SMTP id e53so390966eek.35 + for ; Mon, 03 Jun 2013 14:05:52 -0700 (PDT) +X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; + d=google.com; s=20120113; + h=from:content-type:message-id:mime-version:subject:date:references + :cc:to:x-mailer:x-gm-message-state; + bh=1bcdoI/wvuuv33vTtKHF6u5Q9SfxPxDkiY5gTW/JqAo=; + b=HfS8kVE32jok0Fo0xoOTbqOp/0fDYzxVH5WJUsT4mAXebhVcwq5DMp9Df9SZXTNPmg + Sj2O7G5s6uvK1O0/1i51qEm7nvR/KKcmcYD1aMQ9bgzZX4n7VPh+yFDO/a268mIfMEI0 + 2bRmmA4mw6/tmylcVjVjDmO9DAW3E2B2/X09ME374TSXRUIGOhgPIs/7eVh+pheFglwq + ECTwQCmurDrDN8nHUoB147GH/PHJLAHptqFfzX2AsCJGBuwl0RCabBolFMn6ujdz3WhW + K3BQumSy1x+QcafNgxnmgoaHxnv2GEr9CPHVH5qzipZeWC8ovecBSo9siJj3OCTH6jlN + 4Hfw== +X-Received: by 10.14.88.130 with SMTP id a2mr24310716eef.53.1370293550985; + Mon, 03 Jun 2013 14:05:50 -0700 (PDT) +Received: from [192.168.5.10] (chello213047070033.1.14.vie.surfer.at. [213.47.70.33]) + by mx.google.com with ESMTPSA id b14sm16486407ees.16.2013.06.03.14.05.44 + for + (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); + Mon, 03 Jun 2013 14:05:46 -0700 (PDT) +From: Lukas Pitschl +Content-Type: multipart/signed; boundary="Apple-Mail=_DE28DB41-A56D-40AC-BF02-D9E5C62F2877"; protocol="application/pgp-signature"; micalg=pgp-sha512 +Message-Id: +Mime-Version: 1.0 (Mac OS X Mail 6.3 \(1503\)) +Subject: Should fail to verify +Date: Mon, 3 Jun 2013 23:05:39 +0200 +References: +Cc: Lukas Pitschl +To: Lukas Pitschl +X-Mailer: Apple Mail (2.1503) +X-Gm-Message-State: ALoCoQn/ljT0VLCa3w6CnWKpTi7p+AG2DzyF0QETDfHkDp4zCIECRXJuggVBmgxUfK+yRng+qW7I + + +--Apple-Mail=_DE28DB41-A56D-40AC-BF02-D9E5C62F2877 +Content-Type: multipart/alternative; + boundary="Apple-Mail=_FA35638F-D64D-4ED4-889D-75BE5D17E6E8" + + +--Apple-Mail=_FA35638F-D64D-4ED4-889D-75BE5D17E6E8 +Content-Transfer-Encoding: quoted-printable +Content-Type: text/plain; + charset=us-ascii + + + +Begin forwarded message: + +> From: "Stack Overflow Careers 2.0" +> Subject: Done anything interesting lately? Add it to your Careers 2.0 = +profile! +> Date: 03. Juni 2013 21:36:52 MESZ +> To: lukas.pitschl@gmail.com +>=20 +> Thanks for being a member of Stack Overflow Careers 2.0! +>=20 +> We noticed that you have not edited your profile in a while. Have you = +changed jobs, read any good books, written any blog posts or contributed = +to any open source projects lately? Keeping your Careers 2.0 profile = +current and complete is the best way to be found by great employers. +>=20 +> Update your profile now +>=20 +> Best, +>=20 +> The Careers 2.0 Team +>=20 +> If you found someone great, or found a great job, we'd love to hear = +your story. Email us at careers@stackoverflow.com to let us know how it = +went! +>=20 +> This mail was sent by careers.stackoverflow.com. Questions? Comments? = +Let us know on our feedback site. +> Stack Exchange Inc. 110 William Street, 28th Floor, NY NY 10038<3 +>=20 +> If you would like to opt out of future emails, please click here. +>=20 + + +--Apple-Mail=_FA35638F-D64D-4ED4-889D-75BE5D17E6E8 +Content-Type: multipart/related; + type="text/html"; + boundary="Apple-Mail=_DFB76792-9186-414D-9967-BF0B2DE95C41" + + +--Apple-Mail=_DFB76792-9186-414D-9967-BF0B2DE95C41 +Content-Transfer-Encoding: quoted-printable +Content-Type: text/html; + charset=us-ascii + +

Begin = +forwarded message:

From: "Stack Overflow = +Careers 2.0" <do-not-reply@stackoverflow.= +com>
Subject: Done anything interesting lately? Add it to your = +Careers 2.0 profile!
Date: 03. Juni 2013 21:36:52 MESZ

+ + +

Thanks for being a member of Stack Overflow Careers = +2.0!

We noticed that you have not edited your profile in a while. = +Have you changed jobs, read any good books, written any blog posts or = +contributed to any open source projects lately? Keeping your Careers = +2.0 profile current and complete is the best way to be found by great = +employers.

+

Update = +your profile now

Best,

The Careers 2.0 Team

+

If you found someone great, or found a = +great job, + we'd love to hear your story. Email us at careers@stackoverflow.com = +to let us know how it went!

This = +mail was sent by careers.stackoverflow.com. = +Questions? Comments? Let us know on our feedback site.
+Stack Exchange Inc. 110 William Street, 28th Floor, NY NY 10038<3

If you would like to opt out of future emails, = +please click here.

+
+ +

= + +--Apple-Mail=_DFB76792-9186-414D-9967-BF0B2DE95C41 +Content-Transfer-Encoding: base64 +Content-Disposition: inline; + filename=130521FranziskaFrowin.jpg +Content-Type: image/jpg; + name=130521FranziskaFrowin.jpg; + x-unix-mode=0644 +Content-Id: + +/9j/4AAQSkZJRgABAQECWAJYAAD/4REARXhpZgAATU0AKgAAAAgABgESAAMAAAABAAEAAAExAAIA +AAAuAAAIYgEyAAIAAAAUAAAIkIdpAAQAAAABAAAIpJyeAAEAAAA0AAAQxOocAAcAAAgMAAAAVgAA +AAAc6gAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAE1pY3Jvc29mdCBXaW5kb3dzIFBob3RvIFZpZXdlciA2LjEuNzYwMC4xNjM4NQAy +MDEzOjA1OjIxIDE0OjEzOjI3AAAB6hwABwAACAwAAAi2AAAAABzqAAAACAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxADMAMAA1ADIA +MQAgAEYAcgBhAG4AegBpAHMAawBhACAAKwAgAEYAcgBvAHcAaQBuAAAA/+E0rGh0dHA6Ly9ucy5h +ZG9iZS5jb20veGFwLzEuMC8APD94cGFja2V0IGJlZ2luPSfvu78nIGlkPSdXNU0wTXBDZWhpSHpy +ZVN6TlRjemtjOWQnPz4NCjx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iPjxyZGY6 +UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5z +IyI+PHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9InV1aWQ6ZmFmNWJkZDUtYmEzZC0xMWRhLWFk +MzEtZDMzZDc1MTgyZjFiIiB4bWxuczpNaWNyb3NvZnRQaG90bz0iaHR0cDovL25zLm1pY3Jvc29m +dC5jb20vcGhvdG8vMS4wLyI+PE1pY3Jvc29mdFBob3RvOkRhdGVBY3F1aXJlZD4yMDEzLTA1LTIx +VDE0OjEyOjMwLjcwNDwvTWljcm9zb2Z0UGhvdG86RGF0ZUFjcXVpcmVkPjxNaWNyb3NvZnRQaG90 +bzpMYXN0S2V5d29yZFhNUD48cmRmOkJhZyB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5 +OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6bGk+MTMwNTIxIEZyYW56aXNrYSArIEZyb3dp +bjwvcmRmOmxpPjwvcmRmOkJhZz4NCgkJCTwvTWljcm9zb2Z0UGhvdG86TGFzdEtleXdvcmRYTVA+ +PC9yZGY6RGVzY3JpcHRpb24+PHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9InV1aWQ6ZmFmNWJk +ZDUtYmEzZC0xMWRhLWFkMzEtZDMzZDc1MTgyZjFiIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3Jn +L2RjL2VsZW1lbnRzLzEuMS8iLz48cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0idXVpZDpmYWY1 +YmRkNS1iYTNkLTExZGEtYWQzMS1kMzNkNzUxODJmMWIiIHhtbG5zOmRjPSJodHRwOi8vcHVybC5v +cmcvZGMvZWxlbWVudHMvMS4xLyI+PGRjOnN1YmplY3Q+PHJkZjpCYWcgeG1sbnM6cmRmPSJodHRw +Oi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj48cmRmOmxpPjEzMDUyMSBG +cmFuemlza2EgKyBGcm93aW48L3JkZjpsaT48L3JkZjpCYWc+DQoJCQk8L2RjOnN1YmplY3Q+PC9y +ZGY6RGVzY3JpcHRpb24+PHJkZjpEZXNjcmlwdGlvbiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9i +ZS5jb20veGFwLzEuMC8iPjx4bXA6Q3JlYXRvclRvb2w+TWljcm9zb2Z0IFdpbmRvd3MgUGhvdG8g +Vmlld2VyIDYuMS43NjAwLjE2Mzg1PC94bXA6Q3JlYXRvclRvb2w+PC9yZGY6RGVzY3JpcHRpb24+ +PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAK +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAog +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAK +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAog +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +PD94cGFja2V0IGVuZD0ndyc/Pv/bAEMACAYGBQYHBwcHCAwKCAkJDAsLDA0UGh0UDxMSGSQgHBwa +HR4fHCMsIiAnLjAsKTcoHB80NDQxOD05Jy48MjQzMv/bAEMBCQkJDAsMGA0NGDIhHCEyMjIyMjIy +MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMv/AABEIDrgJcAMBIgAC +EQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAA +AX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4 +OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaan +qKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQAD +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 +jtR3ooAKKKPSgQUUZooGFFFFABRRRQAUUY5NFAgFFFL60DEooooAKOKPWigQUUUtADNxHUUo5Gac +BSUDCiloNACUUtJQAelHeij1oAKKWkoAO9Heij3oAKKWigBKKKKACiiigA7UUUUAFFFFABRS0lAB +RRRQAUYoo7UAFFFFAB2ooooAKKBRQAGilpKACiiigAooo+lABRS0lABRR7UUAHailpOtABRQaKAA +d6O9FHvQAHrRRR2oAOlFB7UUAFFFFABRRRQAlFLRQAUUUHpQAUUi5wKWgAooooAKKKKACiiigA9a +KKBQAUd6KKADvRRQKACkByBRS0AJRxzS0mM0AFFLQKAEpaO9FACUtFFABRR6UdqAEpaKKAA+lJSm +igBKDS0UAJR2paKAEPSijtigUAHpS0UUAJR3paKAGvu2nb160gcFS3QUrMq9TioJ5RhVAzk0wH+Y ++c7eKkU5Gaji8wD5qmGKQBRRk80DpzQAUUUUAJS0UGgAoo60UAGKKKKACiiigBKWig0AJRS0lABS +0UUAJRRS0AJQelAooABRQKDQAHpRjtS0UAJRS0lABSjpRRQAlFFLQAUUUUAJRS0UAJig0tFACUUt +FACUtFFACetLR3ooAKaV5+tOooAbj3pjLs5/h71LRQAwAcGnVA3mI+AMr1FSCQjGVNAD6WkBBFKK +ACig0UAFJS0UAJRS0UAAooooASjFLij1oASkAIzk9+KdSGgAFL3pMGloATFLRRQAUlLRQAUUUUAF +FFFACUUtFACUtFFACUtFFACUtHeigAoopKACiijnvQAtJS0Y5oASilooADSUtFACUUtIOKACiloo +ASilpKAE4zSijFLQA2lopaAGnAB9qKST7p/DP070UALRQKKADpR2petJQAlFLRQAlFLSUAJRS0lA +CVVvf9RL/umrR6VWvP8AUyf7pprcTPnHx4T/AGgAevzVyVdd4/GNSH/A65GnLcSPsqg0elIakYtJ +S0lAxpHzA/nTqKKACiiigAooo96ACjmiigAooooASloFFABRRRQAUUUUAFFFFABRRRQAUUUUABoo +ooAKO9FFABRRRQAUUd6KBBRQRRQMKWkooAKKKKAAZxzS0UUAJRzRQaACilo9aBCdKWik70DCiiig +AoopaBCGilpKBhRRRQIPWl70UUDEFFKKKAENFHc0UAIaWijigApe1J70tAhKKU0UDEpaKSgQtFFF +AxKMUpooAO4ooooAKKKKAEopfakxQIWiikoAWjtRR6UAFGBRRQMKSlooAKKO9FAB70UUUAFB54o9 +aKAEpaSloASjijrzQKACilNFAhKWiigYlLQKKACjiijrQAlFLSUAFHpS0lABS0GigAFJ3paKACko +peKADvSUtJQAtFHHNFACUtFJigBaTvS0UAFFFFABRRRQAUlHeloAKSlpPegAopaSgA70UGl7UAJR +2xRS0AJSdee1KehoHAoABmiiigAooo4oAKKWigBKKWigBPUUCigUAGRkjNFN2KGLY+Y9TT6AEoop +aAEooooAO9FFFABRRRQA1yyqSBnHalByAfanYpOKACiig0AFAoooAKO1FLQAlFFFABRRRQAUY6ii +igBACABkn3NKKKBQAUUUUAFFFFAEciMSGXqMjFQEMrgsowB296t0x0J5BweaYDlIK8UvpTI02DFP +pAAooooAKDS0GgBKO9HaigAooNFABRS0n1oAKKKBQAUdjR70UANU5HuKd1oAH50UAHNFFFABRRRQ +AUHvRRzmgAooooAKKKMUAFFFFACY5paKPWgAooo7UAFFFHrQAe1HeiigAo9KKKADijFA96PSgAoF +FFABiiiigAoo96KACiigUANZdwx+VOAoooAOvNFFFABSikxzmigAoFFJ3HvQAvrRQaWgBKKWkoAK +PWigUAFFFAoAKKO9FABRRRQAUUo6UlAAaKKKADrRR3FKOtACUUetFABQaKWgBKKKKADtQKKKAGuC +VIBwfWmeVjoxqWigBPSloooAKD1oFFAAaKWk96AD0oooNABRRQaAFpKBQaACiij3oASl7UUUAFJS +0lAAQCKYFI4zkdqkpKADpRSntSCgApKWigBKKOKKACkpaSgApKWkoADVW84hk/3TVqqt7zBJn+6a +a3Ez5z8ff8hBT/v1yLAAkA5GeDXXePh/xMAf96uRpy3Etj7JoooqSgoFFFAhKKDRQMKO1FFABRRR +QAUdKKKACiiigAooooAKKKBQAUUe1FABRS0lABRR2oPOKACilpKAClPSjtSdqAFpKKKACilooAKP +WkHOMUpoASloooAKKSloEJkcZoqNVYtufr2FS0DCj1oooADRR70UCENLR2ooAQUUCloGJ7UtJS0A +JRRiloAKSlpKBCjpSA8kUUUDFpBS0UAFFHqKPSgBKWiigAoooNABRRRQAUGiigA7UnfFLRQACiii +gBOc0tFAoADRRRQAUUUUAAINFIAAcCloATGCT60tLSUCDmijvRQAUUdqKBh3oooNABRRRQAUUCig +AooooAKKSloAMUUUUAFFFFABRRRQAUUUUAFJ0zS0UAFFFFACd6WiigAooooAOaKKKACiiigAoooo +AKKKKACkpaKACiiigAooooEFFAooGHtRSd80tABRRRQAUevtR0pOf0oAUc0UUd6ACkz1paKAE570 +Uc0UAFLSUvagBBS0UUAFHakpfagAooooAKKKSgAopaKACiikoAWkNFLQAUlLRQAlL60UlAC0lLRQ +AUnNLxRQAlBo70tACUtFJQAUUtIQe3rQAe1FJjmloAKKPSigBaSiloASiiloAKKPaigBKO1LRQAn +alFFFACUtJSigApGYAAHucUU2VN6FRwex9COlACqadUFtJ5i5xg5II9CKnNABSdzS0hoAKKWgUAJ +RRR6UAFFHTFFABRR1ooAWkpaSgAopaSgAoopp3gjHIzQA6iiigApfWiigBKDS0nagAoNHpQaAClp +KWgAoopKAD1opaSgApaSloATmlpDxS0AJRRRQAtFFFABRRRQAh60tJRQAtFJS0AFJS0UAFJRTSrk +n5vyoAHkVR6n0py8jNMWNQc96fQACgUYoFABS0neigApRRSc0AFLQaKACk70tFABRRSUAL6UlKaK +AEFLRgUUAIKWgcUCgBKWkNLQAUUUUAFFHej2oASlpDS0AJRS9qOtABSUtJQAUd6KKAFoooFACUtI +eKUUAFJS96KAEooo96ACiiigAooooADRRRQAUnWiigAOaKWkNABRRRQAUnOKWkoAKKKKADNJS0lA +CVVvP9RL/umrLdOKq3vFvL/uGmtxM+dPHxzfgehfmuRyefeut8dFvt3QbSSfxrlvOcKFAXA/2Rn+ +VN7iWx9jUlL2pKkYUUUUDA0lLRQAlFFGOaAFpKWkoELRSUtACUUUtAxKKKWgBDS0lHPFAhaKKKBi +GloooASlpKWgAooo7UCCiijvQMKKKKACkPelo60CIoJopk3xnK5I/I1LTVRUGFAHJ6U6gAo70Ud6 +ACjvRRQMSloooAKKKKACijFFABRRR1oABRzR2ooAKKKTrkUCFopPanUDEopMjOKUUAFFJmloAKKK +KACiiigAopTRQISg9aPeloGJS0lL2oASiiigAooooEHpS0lKaBiUUd6KAFpKXtSUAFFFFAB70UUU +CDNFFFAw5oopaAEGaKX0oNACUUp4pKBBRRRQMOhoo70HpQIKKB1PtRQMQ0popaAE5pPanUlAB3oo +70UAFFFFABS0gooAKKWkoAWkpaSgBaSiloASg0UtACUUUUAIc9hmlFFHegAopaDQAlFKaKAEoooo +AKX6UlFABS0UlACikoooAKMZoNAoABRQaWgBKDRR60AFFBwKKACijtRQAUUp6YpBQAUUUUAFAyMZ +60UvY0AJRQKXFACUdqPeloASiiigAooooAKOeaKBQAdqKKKAFpKKKACiiigAooooAKKKKACiijpQ +ACiiigBPpS0mOaWgBMUUtFACUtFFAB70dqKDQAUUCigAooooAKKKKACkpec0hoAKUUCjvQACkpTR +QBWgOJLgdMSf0FWBUTwKx3AlW4yR3psTyB3jc5ZeQfUGmInJA60A5FRSnLxoOucn6U5WK8EdOM0g +JKKQHOCKWgYd6KKWgBKQnFP6DOM1XkY5J7UASil9aZGcin0AFFFFABSUoooASilooAO2KSl9aKAC +gUCigAooPApBQAtBzRRQAUUlLQAUGiigAooHegdTQAlLSD1paAD3oo70UAFFFFABRRRQAUUCigAx +RRSA5P0oAUd6KKKACiiigAPNHeiigAooooAKKKKACiiigAooooAOaKKKACijvRQAUUtJQAelFAoo +AKKKKACg0CigAooooAPeilpOlAAOKKD04ox0oAD0pKX2ooADSZNKaKACjpRRQAUUUUAFFFHegAoo +o60AFFAooAKSlooAKPSkpaAE96KKWgBKO1FFABSUvtRQAUlKaKACiiigBKQ06k9KAEoopaAEpKWk +oASql+D5Eo/2DVs1Uvv9RL/ummtxM+dfHbgXvl453E5rkK67x1s/tH5sgZOSPrXJjytpJJ3c8D9K +ctxI+x6WikqRhR60tHegYlHSikIB6+tAC0UUCgQUUnSloGFFFBoEFFHFFAwooooASiiloEFHaigU +DCjvRRQAUUUUAFL7UhooAKKKWgQgooooGIBgYpaKKBBRRR1oGFFFFAB2opGycAevNOoASiiigApa +KKAE5ooooELSUe1LQMKSiigQUUdqKBh3opaSgBOBzS9qKKADFIeCD606koAKXtRRQISlpKD0oGLR +RQe1ABR2oooASilPpRQISilpKBi0lLRQAnSiil9KBCUtHeg0AFFFFAw9qKKTvQIWijjmkoAWj1op +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 +lLQIKKSloGJR3opaADiiiigQU09RinfWk70DFHcUnSl96KACg0UUCD3o70UCgYUUUUAFFFFAgooo +FAwooFFAgooo70AFFFFABRRRQAe9FFFABRRRQAUUUUDCiiigAo6UUUCCgUUUDD0pB1OOlLQaBBii +iigY1huI9jmnCj1ooAKKO9FABRRQKBB7UUUe9Aw9aKSlNABxgUCjmigA5oopPUUCAjrUa/ugEI+U +dDUtJjNADfMT1FG9M4yKUorDBFJ5aY4UUAOBHWiq7s1uQf8AlkTg+2f6VYBBoAWiijigYUUUUAFF +FFABRRRQAUCjtRnHNAB7UUUUAFFFFAgooooGFHeigUAFFFFABRRRQAUUelFAB2ooooASlPTFFFAB +iiiigAo7UmecUtABRR3ooAKKKO1ABRRRQAUUUUAFFFFABQKKKACiiigQUUUUDCiiigAooooAKSlo +oASilooAM80d6THNLzQAHpRRRQAUUUUAHSij2o7UAFHSiigAooooEFAoo6ZoGAFHrRRQAUUUUAFF +FFABR1pBS0AFFFHpQAUUUUARNCpbcOG9RTwMACnUUCCiigUDEpaPWigBO1LQaKACikpaAEoopaAE +pMfMT6gCnUUAHSig0UAHeg0UUAHSiiigAo70e1B60AFFFFACUtHfiigAooooAO9FHSigAooooAKK +SloAKKBRQAUUUcDmgA4opKWgAoopOeaAF60UCgUAHtRRRQAUdaKO9ABj9KKKKACig8UmcUALRRRQ +AUUUUAFFFHWgAooooABRRRQAdKBzRRQAUUUUAFFAo70AFIcmlooAKKKKACiiigA9KKOaKAD3o64p +aSgAoFFFAB60DrRRQAdzSd6WigAooooAKSlo60AFJRRQAUhAIweaU8UdqACkpRSUAGKKWigApMUU +ZGKACiiigBKKWkoASilpKAGmqt7/AMe83+4atHvVPUA3kSY/ummtxM+dfHSf6cXHQEiuR711njhX +a/Y543MetcmBnJweBk+1N7gj7KzSHpS0GpASloooAKSloFACUtJS0DEpaQUUCFpO9LSUALRRSDpQ +AUUdKWgYlHalo9qBCCilo9KAEoopaACiiigAooooGHaiij0oEFFFFABRRQaBgaKKKACiiigQCiii +gYUUUUCDjNFFFAAKKKKADmiiigYlLRRQAUUUUAIfWlpKWgAooooAKKKKBBRRRQMKKDRQIBRRR3oA +DRQ1B7UDCiiigAooooAKKKKACiiigAooFFAgooPpR2oGFFFB7UCCiiigYUUGigQUUUUAIKWiigAo +7UUUDDtRRR0oAKKKKACiiigQd6D2oooAKKKKAA9KKKDjGaACikU5GfUUtABRS0negYdqOoo7Uo6U +AJRTUBGcnPJP506gAooooAZIiurI3Qgg0yDzANjjleM+tTUcUCCijvQetAwooooEFFHGKKACiiig +YUUUUCCiiigYUUdqKADviiij1oAKKKOlAB60UGigAoNFAoAKSlo9qACiiigAooooAOKOlFFAB3oo +ooEFFFFAwooooAKKKKACiiigA70etHvRQAUUUHrQAHtRRRQAUUUUAHXmij2oPAoAKKKKACijpRQA +UUUUAFFFFABRRQKADvg0UdTRQAGijrRQAdKKKKAA0UmKWgAoPSg0UAHaiiigAooooAKO9BooAOlF +HWigA60UUdqACj1oooAKKQ5yKWgAooo9KACiiigAooooAKKKKACijvRQAUUUUAFFHPFFAB39qKAB +RQAc0UUUAFBoo60AFFBo9KACj0oooAKKO9FABRR7UcUAHpRQe1BoATmlo7CigA/woxRR7UAFFHei +gAozRRxQAUUUUAFHvRRQAUUUcUAAooooAKKKKADtSUtFABRRRQAUUUUAFAoooAKKKKACiiigAo70 +tJQAUd6KX3oAKSjvRQAUUUUAFFLSY6UAA5opaSgAoopaAEoooPr6UAAooFFABRRRQAUUUdqAA0Ud +6O9ABRRRQAUlLRQAlJTqSgBM80UcUuO9ABQKKKAE60daKKACjiiigApKWkoAKSiigBtVb3/USf7p +q1VW9P7iX/dNNbiZ85+PMi/IBwDuz781yJ7cYxXZ+Npo49Tidow6pvBU9+a40huSR+NN7iR9kkE4 +opaSpGFFHajtQAmc0tJil6UDCijtR2oAaoC4Ap1FHpQIKSlooGFFFFABSGl70d6BBRRR3oAKKKKA +CiiigAooooGFFHFHrQIBSUtFAwooooAKKPeigAooooAKKOlFAg70UUtAxKKO9FAgooooGFFFGKBB +RRRQMDRQaOtABRRR3oAKKKWgBKKKKBAaKKKBhRRRQIWkFFLQMSlpOPzo9KACjsaKWgQlFFFAw7UU +UtACUUtFACUUtJQIKKWkoGFL/WjvRxmgBOnFFFFAgooooGFFHejvQAUUtJQIKKWkoGFFLSUCCilp +KADvRS8UUAFJS0lAw5oo4pfWgQlFFLQMSjjFFLQAgAopelFACUdzR3ooAKKWigBO1FBzxR3oAOaK +WkoABTGYhlGODxT6Dg9aBBR3zS0lAwoPQ/SlpPagQgxgUtFLQMSilpKADij3o+tHagQUUUUDCigU +UALSUUtACUUUdqACiiigAxRRS0AJRS0CgBKBS0UAJS0lFABS0lFABRS0UAJRS0lABjvR1pe1JQAo +pO9FLQAlLSUtACUUtJQAUjMBj3OKdSYz19aAF60npS0hoAO9FBpaACkxS0UAJRRRQAUUUetABRQe +lLQAnFHrRS0AJR3o60UAFFFFABRxRR2oAWkpv7zeORtx096dQAvFJRRQAUUUtACUUGjNABRRS0AJ +QaAeKKAGpu2jd97vinUUtACUdqWkoAO1FFFABRS0lABRRRQAUUUGgAFFFFABRRRQAUUtIKACjtRR +QAdqKKKACigUtACH0oFHU0UAFHFFFABRRR2oAKPeiigAooooAWkpaSgAoNLRQAnpSmmjPfrTqAEo +oooAPeilpPSgAo70UcUAAo4oFHvQAUUd6PegAo46Ud6O9ABRRR2oAPeijrS0AJS0lFAC+9JS0UAF +FFHWkAlHelo70wE55opaB1oAKSlooAKKKKACkpaKACiiikAUUUe1MBKKXuaBQAUUGigBD1paKKAE +PFBpT2oNACUUtBoASj3o7UUAHpRnkCkxRhRyKAFFFFFABkUUYo9qACiiigApDS0e1ACYzRS0lABR +RR2oASilooAQ0UppKAA0006jrQAlJ60tFADap3/+ol/3TVw1Uvv9RL/ummtxM+dPHZUX2PUN27g1 +yTPvMjMoy3pxg59BXV+PD/pwz6tjjrXJ7dxYICQMn8BTluJH2TRRRUjDtRRxRQMKO1FFAgFFFFAw +NHaiigApKWigBD2pe1IaWgQelJS9qKBhRRRQIKKKKACiiigYUUCigAooooEFFFFABRRRQMKKKKBB +RRRQAdMUGigUDClpKDQACiil7GgQlFAooGHvRRRQIKPSgd6KAEx0paKWgYlFIy5xyRSBSMHcTQA6 +ijFHagAooo9qBBRS0lABRRS0AJSNkDjrTqSgAoopaAEooooGFHSiigQUGiigYUp4NA6UUAFJS0lA +BS0UUCEopaKADikoooAWkoooGFFFFAgooooGFFLSH+dAhaSiloASlpKKBhS96KSgANFHej1oAa2F ++YfjTgaD0waAAMY7UAFL2o7UlABS0gzzRQAUd6KWgBCcEe9FAUZ96KACilpKACiiigAooooAKKKW +gApKDRQIKKKKBi0lFLQAUgpaSgAopeKPSgBuKWlooASj2pfekoAWg0UUAJnpRRS0AFGOtFFACDvR +S9KTvQAUtJS0AFJS0lAC0lLSUCCj3opaBhSUtJQAtHaijtQAlFFLQAUUmOaWgBKKWkNABRRRQAHP +NHaiigApaKO1AgooFFAwoopKACk70760g60AFHrRRQAUvtSUvegBKWkHpS+tACdiKD2opaAEPSii +g0AFFFFAAaKKKAAUUUUAH9KKDxRQAUClpKAClopKACilooATvRS0hyBx1oAKKKPegAFHOaBRQAc5 +paT3ooAKKKKADrRRRQAdKKWkoAO9FBooAKKWkoAKPSlpKACiijtQAUUUdzQAUUtIKAFpD2paKAEo +o/pR2oAKKKX2oASj1oooAOtHailoASlpKWgBpHNLRiloAKKSigApaSloAKQnH40UUAHY0CilxQAl +ApaOlACZFFBUNSAEHk5oAWg+lHSgjnFABS0lLQAUUUUAFJRS0AFA6migUAFFHc0lAC0nrRS0AFHr +RRQAUlLSUALRRQKAEopaKAEFLR2PtQOlAB1oooGKACgUnQ0o70AHek96WigAoooOMUAFHrRR3oAS +ilooASjtQKWgBBQaO9FAC0lFGBQAUUUUAFFFFABRRRQAlFFFABRRRQAneilpKACiig80AJSdKWg+ +tADaqX3/AB7y/wC6att7VUv/APj3l/3TTjuJnzn49ZzfqOoXfg/U1yIOM4JHBHFdX47J/tDHYlj+ +tcqTkDgDAxx3pvcFsfZPpRR6UVIB60UGigAoooFABRRRQAUdqKKACg0neloAKKKOtACUtFFAwooo +oEFFFFABRRRQAdKOlFFABRR15ooGHrRRS0CEoooNABRR0ooGFHeiigQCiiigYUUUUCCiijvQMPpR +70UUCCiiigAooooAKKKKACilpKAA0UUUDFpKKKBC0hpRSY60DF7UgpaKBBRSUtAxKKO1HOKBC0Un +eloAQGilpKAFpKKWgBKWkpaBhSUvaigQUdqKBQAgopaSgApaKKBiUUvek70AFLRSUCCilooGFJ1I +paSgQUtJS8UAJS0go5oAO9FFB6H1oGBoooNAC0dqPWigQlLSUtAxKWkpaBCUtFFAwpKWkoELSUpp +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 +urFgP4Tg0+iigYlLRRQAUd6KKACiiigAooooAKPSiigAooooASl70UUAFFFFABQKKKACiiigAooo +oAQUtFFAg9KQ0UUDFPaiiigQUUUUAFFFFAxKWiigApOcUUUALQKKKAA0UUUCCiiigYUc4oooEHrS +d6KKBi0lFFAC96O9FFABR1oooAMdKSiigBaKKKACiiigApDRRQAUtFFABR3oooAKT1oooELR60UU +DExk0UUUABOKQZ6miikAtLRRTATtS0UUAFHeiigBDQKKKAD3paKKACkPNFFABwRigDAxRRQAUtFF +ABRRRQAgpaKKACiiigAooooASloooAKP60UUAFHaiigAFFFFABRRRQAlLRRQAUlFFAC0HrRRQAUU +UUAFGKKKACiiigAo60UUAFAoooAKKKKACiiigAooooAKKKKACj1oooAKKKKADpRRRQAUd6KKAF60 +UUUAHTik60UUAHIooooAKKKKACkzzRRQAuOKOaKKAFpKKKQB3zRRRTAKKKKQB60UUUwCiiigBGZV +BLHGe9AORRRQA6k70UUgCiiimACjvRRQAUUUUAJRRRSAKKKKYBSetFFABRRRQAlFFFACdqKKKAEa +qd9/qJR/sGiimtxPY+cPHmP7RHH97+dcoeeaKKb3BbH/2Q== + +--Apple-Mail=_DFB76792-9186-414D-9967-BF0B2DE95C41-- + +--Apple-Mail=_FA35638F-D64D-4ED4-889D-75BE5D17E6E8-- + +--Apple-Mail=_DE28DB41-A56D-40AC-BF02-D9E5C62F2877 +Content-Disposition: attachment; + filename=signature.asc +Content-Type: application/pgp-signature; + name=signature.asc +Content-Transfer-Encoding: 7bit + +-----BEGIN PGP SIGNATURE----- +Comment: GPGTools - http://gpgtools.org + +iF4EAREKAAYFAlGtBSMACgkQ5YJxMm+fSTcQagD8D4xN4U/xRYkP0RWZQElWo1TG +bNRDzTAD3fFnokDOiOAA/3CZZZjpypON2Bdw5yrJ0/m76rGvcn6lbHlLIX3+roqJ +=G/Gr +-----END PGP SIGNATURE----- + +--Apple-Mail=_DE28DB41-A56D-40AC-BF02-D9E5C62F2877-- diff --git a/Test/Issues/600_original_imap_message.eml b/Test/Issues/600_original_imap_message.eml new file mode 100644 index 00000000..6a41099f --- /dev/null +++ b/Test/Issues/600_original_imap_message.eml @@ -0,0 +1,12549 @@ +Return-Path: +X-Original-To: lukele@leftandleaving.com +Delivered-To: x9948084@homiemail-mx2.g.dreamhost.com +Received: from mail-ee0-f48.google.com (mail-ee0-f48.google.com [74.125.83.48]) + (using TLSv1 with cipher RC4-SHA (128/128 bits)) + (No client certificate requested) + by homiemail-mx2.g.dreamhost.com (Postfix) with ESMTPS id 1C84744813F + for ; Mon, 3 Jun 2013 14:05:53 -0700 (PDT) +Received: by mail-ee0-f48.google.com with SMTP id e53so390966eek.35 + for ; Mon, 03 Jun 2013 14:05:52 -0700 (PDT) +X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; + d=google.com; s=20120113; + h=from:content-type:message-id:mime-version:subject:date:references + :cc:to:x-mailer:x-gm-message-state; + bh=1bcdoI/wvuuv33vTtKHF6u5Q9SfxPxDkiY5gTW/JqAo=; + b=HfS8kVE32jok0Fo0xoOTbqOp/0fDYzxVH5WJUsT4mAXebhVcwq5DMp9Df9SZXTNPmg + Sj2O7G5s6uvK1O0/1i51qEm7nvR/KKcmcYD1aMQ9bgzZX4n7VPh+yFDO/a268mIfMEI0 + 2bRmmA4mw6/tmylcVjVjDmO9DAW3E2B2/X09ME374TSXRUIGOhgPIs/7eVh+pheFglwq + ECTwQCmurDrDN8nHUoB147GH/PHJLAHptqFfzX2AsCJGBuwl0RCabBolFMn6ujdz3WhW + K3BQumSy1x+QcafNgxnmgoaHxnv2GEr9CPHVH5qzipZeWC8ovecBSo9siJj3OCTH6jlN + 4Hfw== +X-Received: by 10.14.88.130 with SMTP id a2mr24310716eef.53.1370293550985; + Mon, 03 Jun 2013 14:05:50 -0700 (PDT) +Received: from [192.168.5.10] (chello213047070033.1.14.vie.surfer.at. [213.47.70.33]) + by mx.google.com with ESMTPSA id b14sm16486407ees.16.2013.06.03.14.05.44 + for + (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); + Mon, 03 Jun 2013 14:05:46 -0700 (PDT) +From: Lukas Pitschl +Content-Type: multipart/signed; boundary="Apple-Mail=_DE28DB41-A56D-40AC-BF02-D9E5C62F2877"; protocol="application/pgp-signature"; micalg=pgp-sha512 +Message-Id: +Mime-Version: 1.0 (Mac OS X Mail 6.3 \(1503\)) +Subject: Should fail to verify +Date: Mon, 3 Jun 2013 23:05:39 +0200 +References: +Cc: Lukas Pitschl +To: Lukas Pitschl +X-Mailer: Apple Mail (2.1503) +X-Gm-Message-State: ALoCoQn/ljT0VLCa3w6CnWKpTi7p+AG2DzyF0QETDfHkDp4zCIECRXJuggVBmgxUfK+yRng+qW7I + + +--Apple-Mail=_DE28DB41-A56D-40AC-BF02-D9E5C62F2877 +Content-Type: multipart/alternative; + boundary="Apple-Mail=_FA35638F-D64D-4ED4-889D-75BE5D17E6E8" + + +--Apple-Mail=_FA35638F-D64D-4ED4-889D-75BE5D17E6E8 +Content-Transfer-Encoding: quoted-printable +Content-Type: text/plain; + charset=us-ascii + + + +Begin forwarded message: + +> From: "Stack Overflow Careers 2.0" +> Subject: Done anything interesting lately? Add it to your Careers 2.0 = +profile! +> Date: 03. Juni 2013 21:36:52 MESZ +> To: lukas.pitschl@gmail.com +>=20 +> Thanks for being a member of Stack Overflow Careers 2.0! +>=20 +> We noticed that you have not edited your profile in a while. Have you = +changed jobs, read any good books, written any blog posts or contributed = +to any open source projects lately? Keeping your Careers 2.0 profile = +current and complete is the best way to be found by great employers. +>=20 +> Update your profile now +>=20 +> Best, +>=20 +> The Careers 2.0 Team +>=20 +> If you found someone great, or found a great job, we'd love to hear = +your story. Email us at careers@stackoverflow.com to let us know how it = +went! +>=20 +> This mail was sent by careers.stackoverflow.com. Questions? Comments? = +Let us know on our feedback site. +> Stack Exchange Inc. 110 William Street, 28th Floor, NY NY 10038<3 +>=20 +> If you would like to opt out of future emails, please click here. +>=20 + + +--Apple-Mail=_FA35638F-D64D-4ED4-889D-75BE5D17E6E8 +Content-Type: multipart/related; + type="text/html"; + boundary="Apple-Mail=_DFB76792-9186-414D-9967-BF0B2DE95C41" + + +--Apple-Mail=_DFB76792-9186-414D-9967-BF0B2DE95C41 +Content-Transfer-Encoding: quoted-printable +Content-Type: text/html; + charset=us-ascii + +

Begin = +forwarded message:

From: "Stack Overflow = +Careers 2.0" <do-not-reply@stackoverflow.= +com>
Subject: Done anything interesting lately? Add it to your = +Careers 2.0 profile!
Date: 03. Juni 2013 21:36:52 MESZ

+ + +

Thanks for being a member of Stack Overflow Careers = +2.0!

We noticed that you have not edited your profile in a while. = +Have you changed jobs, read any good books, written any blog posts or = +contributed to any open source projects lately? Keeping your Careers = +2.0 profile current and complete is the best way to be found by great = +employers.

+

Update = +your profile now

Best,

The Careers 2.0 Team

+

If you found someone great, or found a = +great job, + we'd love to hear your story. Email us at careers@stackoverflow.com = +to let us know how it went!

This = +mail was sent by careers.stackoverflow.com. = +Questions? Comments? Let us know on our feedback site.
+Stack Exchange Inc. 110 William Street, 28th Floor, NY NY 10038<3

If you would like to opt out of future emails, = +please click here.

+
+ +

= + +--Apple-Mail=_DFB76792-9186-414D-9967-BF0B2DE95C41 +Content-Transfer-Encoding: base64 +Content-Disposition: inline; + filename=130521FranziskaFrowin.jpg +Content-Type: image/jpg; + x-unix-mode=0644; + name="130521FranziskaFrowin.jpg" +Content-Id: + +/9j/4AAQSkZJRgABAQECWAJYAAD/4REARXhpZgAATU0AKgAAAAgABgESAAMAAAABAAEAAAExAAIA +AAAuAAAIYgEyAAIAAAAUAAAIkIdpAAQAAAABAAAIpJyeAAEAAAA0AAAQxOocAAcAAAgMAAAAVgAA +AAAc6gAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAE1pY3Jvc29mdCBXaW5kb3dzIFBob3RvIFZpZXdlciA2LjEuNzYwMC4xNjM4NQAy +MDEzOjA1OjIxIDE0OjEzOjI3AAAB6hwABwAACAwAAAi2AAAAABzqAAAACAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxADMAMAA1ADIA +MQAgAEYAcgBhAG4AegBpAHMAawBhACAAKwAgAEYAcgBvAHcAaQBuAAAA/+E0rGh0dHA6Ly9ucy5h +ZG9iZS5jb20veGFwLzEuMC8APD94cGFja2V0IGJlZ2luPSfvu78nIGlkPSdXNU0wTXBDZWhpSHpy +ZVN6TlRjemtjOWQnPz4NCjx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iPjxyZGY6 +UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5z +IyI+PHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9InV1aWQ6ZmFmNWJkZDUtYmEzZC0xMWRhLWFk +MzEtZDMzZDc1MTgyZjFiIiB4bWxuczpNaWNyb3NvZnRQaG90bz0iaHR0cDovL25zLm1pY3Jvc29m +dC5jb20vcGhvdG8vMS4wLyI+PE1pY3Jvc29mdFBob3RvOkRhdGVBY3F1aXJlZD4yMDEzLTA1LTIx +VDE0OjEyOjMwLjcwNDwvTWljcm9zb2Z0UGhvdG86RGF0ZUFjcXVpcmVkPjxNaWNyb3NvZnRQaG90 +bzpMYXN0S2V5d29yZFhNUD48cmRmOkJhZyB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5 +OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6bGk+MTMwNTIxIEZyYW56aXNrYSArIEZyb3dp +bjwvcmRmOmxpPjwvcmRmOkJhZz4NCgkJCTwvTWljcm9zb2Z0UGhvdG86TGFzdEtleXdvcmRYTVA+ +PC9yZGY6RGVzY3JpcHRpb24+PHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9InV1aWQ6ZmFmNWJk +ZDUtYmEzZC0xMWRhLWFkMzEtZDMzZDc1MTgyZjFiIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3Jn +L2RjL2VsZW1lbnRzLzEuMS8iLz48cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0idXVpZDpmYWY1 +YmRkNS1iYTNkLTExZGEtYWQzMS1kMzNkNzUxODJmMWIiIHhtbG5zOmRjPSJodHRwOi8vcHVybC5v +cmcvZGMvZWxlbWVudHMvMS4xLyI+PGRjOnN1YmplY3Q+PHJkZjpCYWcgeG1sbnM6cmRmPSJodHRw +Oi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj48cmRmOmxpPjEzMDUyMSBG +cmFuemlza2EgKyBGcm93aW48L3JkZjpsaT48L3JkZjpCYWc+DQoJCQk8L2RjOnN1YmplY3Q+PC9y +ZGY6RGVzY3JpcHRpb24+PHJkZjpEZXNjcmlwdGlvbiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9i +ZS5jb20veGFwLzEuMC8iPjx4bXA6Q3JlYXRvclRvb2w+TWljcm9zb2Z0IFdpbmRvd3MgUGhvdG8g +Vmlld2VyIDYuMS43NjAwLjE2Mzg1PC94bXA6Q3JlYXRvclRvb2w+PC9yZGY6RGVzY3JpcHRpb24+ +PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAK +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAog +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAK +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAog +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg +ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg +PD94cGFja2V0IGVuZD0ndyc/Pv/bAEMACAYGBQYHBwcHCAwKCAkJDAsLDA0UGh0UDxMSGSQgHBwa +HR4fHCMsIiAnLjAsKTcoHB80NDQxOD05Jy48MjQzMv/bAEMBCQkJDAsMGA0NGDIhHCEyMjIyMjIy +MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMv/AABEIDrgJcAMBIgAC +EQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAA +AX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4 +OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaan +qKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQAD +AQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEG +EkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpT +VFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4 +ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APZ1Argv +i6oOj2Q/6eCf0rvlrgvi8F/smxJ/57t/Kmuvo/yLh8SPC5NozmqcmNxxwMnGauThSSQfeqrYyeeO +cVzxOyYzNITxTuePTHFMznrVEdA7dOlLxxSKAWHOAacPXrTEgHXBo6fjTmR12kgjcuRnuKTaf60i +txFHNP4x+lN+nWnDHOaTKQvUn3p49vSmLjnHb1qQdDipZrETrnOaXoR+tIB/OlApDSHoPWpNuV47 +8mmgd8jmnLnB96zZqloCjj6elIQOnrTwpA4OADmkz6fjSuAjFs5PsPypy8njn5TTGxzxk9qEbk9j +g07aCdyQc456dakx09hTQFx3yetPwgwc5rNjQhAxkVTuCPp6VdkPAA7CqFxx+VXT3InsVv1pyglg +BzSf40qkg4966Wcy3LJB2HHTBzVOQjk1bf7gHXiqjipgOqmkQd6kiGW5OBgmoz1qSIc1s9jkgveJ +XJGBUe0q5UgggnIPapHySaYPvZPUnmoWxtJalhOccVOVAC+uOKhUcfrUucN9e1ZS3OlLQAAevTvU +Un/1qkBwQSMgEEg1G36UIUhnHOc5FNAJzTyO1GOMZ5x0q7mdhrkfKRySMn65pDtwMc9KQ84pQRjI +/KmSIxBx6gYpCCOvUUmfWgc/lTJEJwKQ7cnHTPGaD1xRTJYcCjnFJRkYpiAAj1qQYwKiByTnmrCD +IwBk9R+FTIuGo4DkAY60vYZ6UAcA08jjqazZ0pDPal+tAUDOfQ0oBJ9+1ACgkkk9+tLnB60Anj8q +TA7+lIoAB1NOwueueaBjHryCKX3xgcYzSZWgwhQevrT1x1xigrn+lP8ALIUs2SAQD9TSbFsw3nG3 +jGTj6mo25HTuaecHnpS7C2D+lLYe4i42nHFNfhGOeal27Rz9KZN8q9c55NCd2NrQpEsxJPGTmmvw +eDnFODFSenQjpTG5NdHU4notCeEkDvSSHOV6nsfapYFBQg1DLtHSoW5o1aJDyCwwBwKnhXJXv7VX +5zz7VPASrKw7HirlsZ0fiNolvIHfb0rImCBuDkevvWs2Rbj6VkSDB5965qJ1VES2+Cwwfar2cKB6 +dBVG3HIPbNW2yQMdxRUWppT+EDjJ45J60D/JoJHAAwaYCckAnOakZYixtNGcdPempuCe9O5zjgd6 +hrUZIGyPfNOycjI78UBQcAd+tO+VuDwQOtZ6FicgHGeakIXaWHXOMU0AHnvQSSOT3yalghAFyTmj +C9ufrSY5z6808YJxx3zTAY2FwR26VA69DnIxmrJXI4561C6NyePwqosVimxyNuOhNKojyBJwhYbi +AM49v/109kGcUkpPJ4yeK3TM2ipIDuIBJAJAPtUZGOce1WBGTk89/wAaYUwDWqkZOAwbRk457U5e +GB6AUiKORmpggPv/ACobHGIjE98dsH2qFmOMZ44qVsDioiOCO3FEQkCZzxSsoOV/iyBTlHAGajbj +p0p7slrQRevSpUyOO3rUSjHPvU24EAUpBEGYkjHHAoJx0B9CaXnIHPvT9mM4xjFTdIqw1gQfmHbj +FMbA44z/ACpXyBxwaj27jnNUiWP4AFQPjnFTMduRntUYOMEdjmqXciWuiIuT1p2V596XavH0JqP9 +eKrczehLGR+VExG3PeowQDxz0NJNkjmi2onL3SAnNJS4OCccUntWpzWFHSinKpJCgZJ4AHemUAwp +2AB159KQMwBAOAeDSUCHZbBA6cZFIB1pcHFJQNj48bs4q5FjBzVOPrV2NT2rKodVHYeCF/GlcDaf +1pB1HHbrSvhhxx2NZdTe2hTUkNx2qZOCPQVC4Kn61LE56GtJbGMNHYtbQw4Hamqv8XOM1KhBUc9+ +tRupDFffrWRuO+XgMarSqwbIzk81PkbQMdyaVlDrnrxQnZg1dEcePLJAG4HOSece1TrHuOcZyCai +x0x19amj54JxmiTuEUVmwDnFTbuxGAGJx6ZpkkfPHQChCAQPx5oeqEk7j5F/Hmm8EHn04qRiWwB6 +Y4qNh8zZPWkimh6ZOB6mg9MsM4OOvWiMZHOBTjswaXUYJ5Kocrlux7U1Rkn3zSDPX1x1p3ofpzTA +RwMc9sU3aPXnoBUu1tmRznIz70xR13HpSTCw8ZKgevrQSWJ3dcnpSnleD0J4+tIgzz654pXKtqSK +DxyQe/rT8tkZzkcUDKgfoKcmc+5rNu5Vh2FZcYyccUiYUjincE8dKcBn8Cam6HsNJ44A60hPO3k0 +HGRnvS4z6ccGkVYYOTg9vSnoCO3Wm4xjPenZx260xMMAHJprYzj0pfmzn15pD/n2poTIywzg9ql6 +jqcccVCYjnB9asbSflJH49qbBEkRPAHvUvPp2qFKmGDwO9RYCCc4FYrgbj3FbVxwrE/hWK33z2Pp +W1IiSBcZI9604FYR5PTFZig7/wDCtWPIhwSAadQI7GdPjJOCM1QkHNXp8jcMDORVBxzjrmt6exzV +2TW68jnOa3rT5UJxkVhWwJIHvXQ2q5jJ6Z6VjXepvQXuGTdEFiffFVE5I7c1dvAoYg1ViGXFXD4R +SV5GpF9zJ69KkMb7c9N2SCe9CqNo47dalIOOx64rlv1NisI2zg9KiljHXOByP0q5nr06cVG0ecdC +PSqUrEtXM8RLkd6ZKpPXNXQgUjH1qGZPmNbKWpDjpYgSPjkdqdtw2V79alVP0ApwUBhxzRzE8pGY +t2DjoKj+zeWEclW6Er6cmrmzv9KYwbvx70KT2BwV7lErkknqSSTUmxTyBUm35s4wo6U4IeDxjsPe +rchKAiAFufxNTuOMA4DcEUm3scfLkDFK559scVk3dmsY2QzbnnOTgA59aQrlvXA5p4UgHHrmnhSD +xwKXPYrk0K5iHHr3pNnQegqxgA5IHTvSAHIY+tNT0IdNDVj+UnHbFJ5R2nHPHNSuTycd88UgLHcA +McinzEKNiMqu7Pbt60hUcdcVIoYcEDnvTGVlIGfX8qYuVjFXGc5PajHA9hjipeCTnOSSabsByO1F +wtYiIwB196coyck+wqRlXp04pNgGPalcdiSIAMG+nWpdpPNMVfQdxzUhGMA84PFLqFhOMHPXPBFM +cnDemKm28HHQVFKo2Mw/CnfUdtDBl/1h+tJyTinyDLn60ijnkdq60zha1NGzACEnvVO6xuP1q9ZK +NufTjP41RuwAzD0rKL1NZp2KhoFJTgSTmtzl6k8PJxSyrg4pIuoFOkABOcgjjBrLqdK+EiyQc/lU +6FmLEnliSarnrxVuFFCKxPJJyPYf405OyFBXY8Z6Y5HapcZ5HsfzpqD5sH15qVQpJDNwfSsjUQKG +Cr2pzIucevNIikjj72KdtBGT1weaB6EGD+tOCj5gMjgGhgfXJNCF+h6gc0mMNoB454xR8udoBJ4/ +OmsxXn9KNxHzAnIzg0B0JFLYz1561MmAxI+lVlBP4+napUZweAD1pNDRMRnBHPGadkBsfw46mmgE +jOc9elJjAA7k1JY8jADHPPFPlaSX535OAKjfHbjOBT2OefpU3K0EA4UHBU88dqDlQcYORigM6hAM +FQcgGn8/LkdMfjVMQw5/i7DjFJjgt2J4FSbSFBU43DoPY0hHKjpzwT3oEyIRbgcDnrTlQYUhsEbh +j/69O2sp3A9KXoox7nmi4DCNnBHFO25xgZJPPvUbc8tnBNKh4+n603YOpLtX1z0BFBVcDnvScnJG +D059zTsBlOSAQAAPXmpsMTbkZ657UAZzz170iJnA9OKXPJxwaCgfA3dDjjNRnnAGfepCwAYY6mms +FOSARRtoTuVpGBBGDnj8qoSnaSVODgjj3q/ICGx3Gc/hWdNnOfWtYLUxqbDUwTx04q5EuQMd+lU4 +RzzV+FckBeSTjHrRUZpQTsTKB9enSnO3GBn60hyAox35p3BJwKwNwQbufpTgMduSaag7DvUgBxx1 +pMaF28ZppzyDUqYwQTgY6/hUbAE5FQnqUMyOtNbPAxzTiOnTrTGOMgdhVIRGQASAaB0A/nS9CQp9 +eaTocetWFiRQcj86kRTnB9elMUjg5p4clhj1qGMUjHIGTmk29TzzUiq2PbrTWB5788VKYWITxkAc +07bznPJpGUA80gwSAOwqhD+P14p6NgZ4zg9fpUZ5PpThyOTwaTGSD7oHOeOlJgkcdqF4A+hFPUEZ +K9jUAD428+lV+AKsSdM55NV26YpxGGBkZ70pCjnH+TSMP6U48jjqOKonQVdg2/jipBk/0qNR645F +SqD+NTIYgPGCPTFXLXJlTjA9apD73TNaVgB5kYOMZxVw3Ma/wm/C2RyPpTh1yPWljGOAOlKM810K ++x5lyePAX3rH11gIGJOOtbChcevFYPiM/wCjt2HNWt9Cdzz6f/WOfeoyScDsKV+pA96aQR1GOAa3 +QmJS0UUxBSUtGRjGPxoASilpKACilooEGOM+9FFHpQMKDk9aKKAAY547UYXBOecjikooAXvzRzSU +tAAKUbcNkZOOPakp5WIRKwY+YXYFccBRjBz78/lQAyiiigA47UdjRxn2ooAVSVIKnBByKQkkk+tF +HFABTjtVjtIYAnB9ab2/EUUAKGIDDsaANxwMDrSkjp1AH600dqAHHlRj15FJxn2pxzu59AaRgoJ2 +nIzQA2pYAjTRhvulwMVHxj3p8RAkVsZwwO098UCauj7GUZIrgvi8P+JPZen2k/yrvl61wvxcA/sW +0/6+v/ZTSXX0f5Fw+JHg0uMnrVYgVbnB9h7VVODnPGK5onoNEcu3cdowvb6U3jFKec5pBkVoYvcM +DjGR60oPIOBxjj6Uo5yTQdvGM9OaB20Eyccnp0pRu259DSYFHNAIX60c4waQU4ZNIpagCTjHrUqg +joe1MUdxUgP8qlmsVpcVeCSB25puOaMkGnpzUlJD1DE57e1SAEcgZ4pgILKOccU88DA9eKzZpoLk +Ec/SmEYA5xxS8Y/HmkyG4FIAYYPXkntTdpyccU5hnJ9KejlckehH507g9hEHXnipMYGedvTNRAGp +0zgjP51LERkE8ZPAzVO4PQCrzDA/D86o3HUVdPcmpsV8dadGMtSDvinR8tj3rd7HOlqi06fIG6VR +mwDgcitKVf3fQdOtZsgOTU0x1diA9/0qaFcMR79qhPBqzbDc3HFay0Ry0leYrggnNRDqKszD5jUA +BU88Gpi9DaS1LCg4qXAwCSe3FNjRSDyAcZFSbWzkH8RWTep020IwowdxNNbv/KpirbVPuaiOB6UJ +iaGgg9R3zkdqjbqafjHAprHt6frVoykR8YAz2pAzc44pe/WmnpzmrMmKRzjOcZ5FLjHHtTR6U7jG +SaAQ0jr70wg085AxnPNMzmmiJACmB/eyc/SmnJPFOCkikApk6ihTxU6A8A9jUSjNTqMZz6Gokzam +hyDnk1IVYqxAJCgbsdhTVGSKU4xge9Zvc6VsMGScmpPulSG+Y8g+lNBIBA7jmldChAYYOM0CHLhc +5GeCMHtSM3mOCxOMKpPsOKF/h4yOhpPlx935uMHNIYnSnZyOlNPPPrUmwjODle5FACAbh7ily3TJ +OSP0oAbGQenFPJJUoVBOBg+gpDE3DOCTtznFSIARlW5GKiAGCOpJp5GAQcc9/T/9dSytiRgccn/J +qCcYU9cDpU+6NlAUEEYzz7VDcj5BjngGlHccvhKOOaRgoYYOeOfanZz0oOGI679xyT0xXSjklsWI +iBGaryE9/epYxkHnAwTk1C9SlqXLYiDMhypIJBB+hqxCDlTjvVcHn8MVZgwWFVPYyo/Ea0n/AB74 +J5ArIcnPX6VrXAIgBPBrIOQf5ZrCjsdNQsQ84AyADVrC475zxVWDv2FWtznGfTGame5rH4QxtH5d +aaASxP0xUjcA8DJximB2yoBwB0xUofUmUADHtxSAEt1xThhlHbilweM+uai4x4XnGcYpxGKFAPvn +v604v+7Kbc5YHPfio6jGDODg9etP9j2poHYU84JIBxSYxMDP4U4Kc4zTcbTyeKfvOQeKTuAnYrzx +zUcu7njg1JJIpAwOfWo33bQTwMkCnG4iszD7pziomXJ6kYq0Ihg+hyRTTGQMe9aqSFykIjI7E471 +GynGWHXmrfIwR1xioZk3ZJ6nrTUtRSRAsaGTcRhAR0607AXAJOCCOPWpTFtzke3HfHHWo5F+XoQM +cVfNfQm1iNkxzyOmaaI+fc9alB3AA8Yo2fL6FST9aq9ibETIFXIOcjp6VCcnJJ79KnfLFyxBJ6Y9 +ajCrx3POR6VSZD1Ewcf4UAd/env8wUADgdu9Io5AzinfQLaj0L5JzgHg08n+Ed+9KA3U9f6UxzyR ++FRuytkNcqcDHc0bdqn65pUjY5I7Gkc8Hv60/InzIn+9gHcKQZznoaXqQPzqQJ7dRVt2JUSIgHtU +ZBHXOCDmpyNrEjjFRvn8KaZMooZGOQG6Hmkn6fpU8YGM+xqG6Xbx6U07yM5q0CqOh5/CjOKVhIu1 +WBHGQD702tjl1JMcEnuOKZnHT0qUSYXbxgZwPrURxk96SKlYSlFDoUZlP8LEGgAkgDucUyEPHSmc +Zp2CMim0im9CWEfMB71f28Dn0xVCLrWgnK5H0rGpuddH4Rp44OaUDPHrTMZY+nWpQw44A4A4qGao +rTx8Aj8ajj61blVWUc5qqAAauLujOUbSuW4+mB0A/KnFeOD3qKI9cd6s5Zwd3XGTWb0ZqtUVzz3/ +ACqVckYI/Go9vI9KkXOT0oYIQ46HkY609W7EHPQc9KRhnmmAAc8jrSGSH5hx6VGOOepFSjhcimhc +5HfBNJMB0ZPXrwaHGCcZ5p0WMY6U5hnHotK9mURAADjgdeakXeoJXIBGKbxmn5kCbQfkZunbIpXC +xHgrzTgWAYc4OCB60uG4FJgkjcQTRcdhcAjjPvTXBzjPAPH1qVRwV984pHQgA9zSTBoSNd2QBSlS +GO3IGeKaobj6VKCAeelJlJEgDFcY9OaTjcOMU+I5wpyV64p53AoRzjGKhsuw3odp4/pSB+eARjHX +1pdhB2kYbAPPpSsnOD3pN2FYaecEilUcfU9aMEKTn2xSKQcigbE2gsp9hSn2pfUY7jkUY7g0CRGN +yj6U8ZIx607BzzTdmT+fFNMAA5I9sUoGCSe4A+lP2k+wxTcZOKLtgB6HGakQtt6U0Yz/AI1KvAYD +kkHGP60X6ElWcsUYVk8bj9a2LmMhT/I1kc5bv9a2p7XE1qImS3HrWqBmIHknisyMZbGOcitNd/lA +ZpVd0NXsZdx1Oapvy2c9TVy5GC3eqTjketdFPY5a5YthhwPeujtf9Tx6Vztv94e/eugtziHA9Kwr +fEb0vgMi8xuY556VWh5cY/KprskseeM/zqGAHeMY6itI/AS/jNoD5V+lSdFGe+ahH8Jz19am2gqO +/JrjNwXoM9qa3OT0HoKcox16Uq7B255FNgViDle9RyjPJqfHzn3qOXBIGOvpVpu5LSItoHP4ce9A +Qs2M9Kl2jHTnrTFQc896pMLDtpznJzzUZBOPSpSG4UdPWnAKV6dDSuHKQ+X8oz0JwKQxKCQOODir +Cx/Xr09KjYfMM9qLha41VIHQ5pMKFGRz1p+Tz2560mcDaVBJIOe9K+paQhwCVDHb1z60q/OeeMKA +PoOKY4+7jk81KiK2zBHIGaHsVYRxwM9cZpD8zckgVLjlcgBRxxQFAHGATxihESGDJOMkDkgUu1VG +BT9qkjaOgFIV+bB7mm2iUhi7utRsuc5q5JHtDYOR61V2MeCcGnzInlGgADkdOaVU/iHIp/OABT1R +dh4ycZBHanzA4kBRm+nal2AHGelSKApx709lG45596VxJCKAQPp1pyg4Bzk0nABFPAYqPTPFAApY +A5FNlUbDnjjOKsBcKTxUFwV8pzk7hwKI2uD2OdfdvJHTpTc8+uQBz2xT2BxnsT/KmqT9zOQTn8a7 +TitqalnuEbYXOOc1Quvvt+NatgrCI88Vl3Y+dj71lDc1qLQo05RzgHPWkPWlXrXR0OJbk8XJ6USk +5p0QORikkzmsup1W90iLMT+lW7fOOQaqmrlv0CnqDwD70S2FBak6KSeB0pdu48+lO5yx4GSKOMqf +UYrM1YuAOQRzThjIU9M9PWkULuA7U9gD16mkykkRbWOSOgHNMQckGp2wxdgAASTgdBUf3SccY4pN +3QWGybW2r3z1qJjgClIJPX1occYpoQ6PJ6cZNPGclTzmhUxx9f50qg7wM9aQyZFwPXH6U/AHBOel +KoVRhe5FRnbzwfap1L6Dm6Y6EgUoByR2pvLMOPxp4GevHTmpKSBvvAgf/Wp27K+2c03qc5+ntTjg +gcZ5ouA4HIGKiZGVyD2qUDy25X7pwymmEktjOTTWwgG4Aj8aTgKQep/SnjB7U1iRnt3NCBirz8ue +2T+FNWMHgHtkik3E/M3OTzT1YCEncNxfpjnp1zVbkikHgHpxQ3zHJ4561H+8PzH7vr64p6BmIHT3 +NJ7lIdu5zjAAwKZuj6kHBGOKkJZAcYwec0zaxBOM45pIbIxJlW+np70jE5BHHJOKVggzt74P1qPc +3IHORTYiIkZb68GqE3U/Wrj5JPPtVKXknjrWsDGpsLDndV2MDHGcjvVSBSQWx0OM+5q4mAM+tTUZ +tR+EmyeM5HtRzz2pMFhxyKU9PTisTXqKvXGc4qVeRwevSoFIJxUoUgY9aUhpkiDHvkdfSnkKc46Y +70hV4sowwynBHvSZOM85qGxojIK55pgG/PbgnJp7YPTk/wAqZxg4Ipooj2nB9TTDjdz0qbaMEnnI +qMrz16VaYD0wSeemTTl7n1FRruDA/j9KkB4PHTrSZKZIpbZj3pBu75JFEakDjoaPUHrUdShME5bk +45NIuM5pSF4yaUYGadxDCctgnHoKl/hA79aiClmOeO4qXGWxSkMXGcU8sBnHekYjtxntScdh3qQB +wTjHHFQuBn1OamY46+1Rv/kU4gRtzt5xxTwcBRz0zTWXkfrUgHTFUxdRQOlSKCOfXpTFHOB3FSgg +Yxj0rNjGxAbq07NV80fhWcvyvjjitSzOZF9KqL10May91m8nTnvzSjrgUyMfLmnRjOSOtdaPLZKM +7eO4rB8SqfsrH0FboQdu1ZGvhfsrHbnHOPWrvYS3POYp3t5TIgBOx0+YdmBB/nUJ/wD1U5xhiO+a +bXQQ9wHQjHvmkp2UzyuflI49cUmSKAFGwBs53dqbRRQAvy4GM7snNJRRQAtHFJRQApzRSUtABSUv +FJQAtJS0lAC9OKSl70lABUrwzxxxSOpCSAlCe4HWltphbyrL5auU5UN0z2JHtTZpprh2klYs7Ekk +0CGAAnGce5oH0zSUUDClpKXP5elACUUUtABShWIYgEhcE+1Npw4652n070AJT1jYozgZA4+lMo47 +UAO6dDngdKB0BNGVwRjnPFJSADjtT0jYSrG3ynfsPtTMmlC5OFyeKAPsletcN8Wv+QLaHv8Aacf+ +Omu5WuI+LGz+xbXP3vtPH/fJpdH6MqHxL1PB5ixIHHBOKqv/AFq5OSWYL3qo/B/GuWJ6bSSIW5FG +F+XaSSQSfalz+lGcAkVoYsZQc4z607HOKcshCtGxwjEE8DqAcfzpi6AU52n+7njvxTBnH0oywOR1 +7UcmgOo7NHrSc0p7CkWhRnOfWn9aYB096fx0/CpZaAjpThgf1ppwT8vHSnLkjp14pMtEoI5xx3pc +n+lRjPf8KeOPxzUNFi57daOOneg5Jz1pc8dKQ9Rwyw6U3ByTT1OPof50Y4GV6HrUjsN9PzFSLkHA +Pao8YII96kUHoec0Mljmz1x16is+4Bzk96vvnAI/OqFySTx2qqW5nU2IBT4eHBpozg0+BS7cVu9j +GK1RoTNiI/TrWTKev61qT/LH06jFZUhyTU0kKs9CHnNW7P73NVO9XrL74961qfCYUF7wtyFDkDnq +Krip7rKufWq6nmpjsayfvFuMA4qUcngVHFjGcelTZFYyep1JaDST0PTtTCeWzjpint1ppBGQe44o +QWIT36imkHnFSYzTScfd9MfnWiZk0RGm445NP4HPvyKYWHbirRi7CqMEkUh60ooIA5NAugwnt6Uw +cEmpOCSKTA55+lUjNoTNHOAKbnmnjk0AndiirKP8m0EjJ5FQqQMdiD1qaIleRyaiWxvBdBRjvTgM +8HntTQMt9ealjKxklkBz1/8ArVmzZIjUYJPoKUhuG5Oc5NSu6gMkfzLk4JAqLlsHpwBQFrhllIxw +RyMdqbls7iAcEHBpxPtzik6fWgbQq9CO/GKepOCPpxTAGDeuDT1B7nuOaTAdGGwxGMDk5puR82eD +wRTid2e5BpjKOvqaQ0KueDxUm/O30FGDtGB7UbWJ47ZqWxhznHrTZx+7PqKkwe3pTLjOzHTPWhbj +ktCiM9cVct10omJZWkBMmHbjaU9u+ap59Kb3ro3OZm5rVxYzSxLbop8tCrsvRj2+uKx5ipyB6k9K +ljB2ZqvJ0pXuxuPLEg74q5a/6xPqOtVO/NW7bhhzVVNjOh8Rr3bDys/3gelYzszEA9F4A9BWteNi +Nc9MCsc5JP1rCjsdEy1Ap4LA4PNWVXn096htlB68Z7VPxnH61E3qbpWQN83yggDPeocZxzinufwp +qN0yOKFsT1LJRlZkLA7P4l5FSLtOM8epHpUKn72PepCSMfrms5FokU+h475pQTjOKBtXB4YZpQSc +Y6dKzY9AXjJFKuTwenemjsR6U/PAHbOcUmNC8Bs9cdqRRgZHt+BpCTjGKepQBTgnOaV3aw7DVxnk +Z4qNxxzg9OKmAHUepzTH4IoT1JsRjnOaa5754GeKnIXB3fmKY44A6dKpMLEGRnjoKCAwOacU/ioA +6Z5q7hYQKmeTxg4zUE2WwFGNox9frU7qy/kD+FRdzj1qou2pDSIUGwj+dPfpyOxp4UZJ6cDimtg5 +HA5qr3YW0KpySTzigADjPNSbMsSKGVlHH1rS5FiMjgDn2FORDkVG27PTjipkyMDpxTewkh75Ufyq +LqcevNWG2mPOfmB6e1VlyzY9sg0o7CluS5UDgdqjboeKeQe3amk8lT0NCBojEZB3YyAacXIA59am +IXaR+VVJenFNPmJasgZuM9qSPkGmbSQPapo8Ac9at6IhavUVFIqC7K8AfSrKZOcehziqlyecU4fE +TV+ErEk9TmgjH1pQDikwK3ucdmHNCgswUdyBSnpSKSCcDJIxQJ6DpSGbeP4iWx6c00c0lApsEP7U +3nNLzSVKGyWLrWigAXnI46VQRiWyQA3HStCFf3UkhxkYxk8n1x9KxqHXS0Q18knB9vwpOOPelfPO +O1MRhwOeetQtjYkxkZHSoGTn61aUAjPTFDqvU80lKzG0miONRwD+VWM5Axx/Wooz8x7dakJAGOlR +Lca0IzlDkcEjH4GmrkHnv2p05wOBmo42bG3sSDn6VS2uJ2uTttwCD0HFMBBJz2qUBcDjrTMEH0B6 +1KZVhyjAz9aCpwD79KcCOg5p23ilewWG8Lg+oNSdvzqPblh+lTBTjA7ZqWNELYDcnIoO485+lO2f +gaABj+lO4W1JLeGS43BBlhGWx6gVEexx16Vc0+YW06TLk4DDGeoIxVm71C1lt0t0s442Xgtknimm +nuErp6GcNx+b2FDZIBP5VIFwARz3IpzgAHP4Vm3qWkV8Zx04Oal6D36UxQc49akPGAfeh66DJEHy +9ORWnpbWKTZuhkEgqSMgfUVlRnBPrntUhLZzngCo2lcGro0tbltLi4imgwZNoD46YXgfjWc+DzyK +B37cdKQ7cgtmqnLnlcUI8sbDWyQB2px8ovIUUrGWO0E5IFNkAHzDnuaQYx0x61PQoUlc9cCmrke/ +NIQO/rSgAk+lUkrCHA55xzQCxznjmngA9OMdabuwSAccYBpbgKOSe2KQD73ODTA5D4x+JqYAHket +O1hCquME/lTh1x/Kj36inBe+Mc1N9Rla4LOrFiSeTnvWP39q17pTsbqPeslRgnI71vTempNh0a5b +rWoFHlA1mwAmQZ9a1X4iz+dTUeo0tDFnJ3EY9apNnP41dn+8apN96uqnsclcs2/UZGeldBHt+ztk +9utYVsMkAda3vuW1c1b4kdNP4DAuSd55pLXJlUYzSTElj9aW1/1g9jW/2DL7ZtAfdNTgcduKgQZA +qYDpnpXDc6WAOM469KY4PPPFSrjpTX45HQ5oTYiuM5PfmmSEq3WrB3YB4OBiq8mGb3NWhB2yT0pD +gU7vgcUg+Zj6Gncdhp65HQ44qXC7T2pucgD0p2erfXrSbHbQVf1GTR8u4k9SCPpTTn86TI46k96W +oWQSc54xnP4U0fOVBOABtGfenvyM+1N+YgDPygnihbFgV2Ngjqox7Z5p4wpGD9aj5/WpM9ARQ2CA +A5OaRyVZQOcdqVeMjPoaRg2N4U4Pf3pksfuYrleARnFRAtuwevGCe1SIcg/Q1ET83HGKL6hYssTs +I6H1NVlJJPqOlPZuCKahGc+tAh5XBVlP4U/BA9BUZXvUybTgHPCnH1p3E0RmM7N5+7nGf6UgI79c +09gSNgyeh/GkRCRkHHPNO+libailR2GDmn7TyvXmlYDoeooU84H50X6E26juSB+WKr3WBG+OoBqw +2ACH7VVvTiI80o/ED2MAgkn60IvzYHP0oGSx96VfvCu7ociV2blltEGT36Vk3gVZDg5Gc1qWhIgb +j8KyLgrluO9Z09zSrsUznJzSqORSHqacnUV0vY4Y7luHAO7HTFNkDBmB45NSQY5Jzk1HJnJrDqdj +WhEccVbgyefaqhxkVbhxwO9OexMFqWMjIwOeaf0OemKjQkEkcnHepQPbmsmaWAqMA+nSlaQDnPzA +jpQCOAaVolbkdc5p30Gl0GqeAB3FNwf+AmnbNo4PTpSHO7Ge+KT8gV7jWXkAD3HvTSMfe604jv8A +WhgGC5HPegLCr/OnKMc0gGBx0qX90I1YNmRmOQOgFIoeMgZp3HHHNNiyuaUYYkDtSbK8hSTlcjKg +4pc9j3p2CDzwD196bjLHBqegWG4B6cHpThhSB0oCEcfjmjpg8cmkUKcl8EYyBSbVB60pLfeJPSmg +5J4x6fSq1FoPblc/jTdh56elO7AjsOtNzgEmha7iYwgkMAOfQUBcgjJOe1OByHPoKeu3pnGcc+lN +u2gCEIR0wQeMdBSbuBgYwDS8NkAdehqPGeBnFK9xkrFSFJ44603jaCPcfWkPuTjpSkrxjp1+lDGJ +Iy8EDHHNRNsZ8kYUkcCnkcdc9ahJIOO1MWgybywzbAdmflz1NZ85BJx+dXpOmT0x+tUJOvStYbmN +TYfB61ejAxg5HBqnBir0a4GeazqvU3pL3SwZP3ZjMa7i+/fj5v8A9VREY/Kn849MimnJyDyfWs0x +sjAK8+vNT8AFs59KiP60qk9CPwokrjTJ0I4BNOx2HSohgE46e9PyAvpWbWpaZFIdp+tNUnBqYR+Y +PlGcfnQtsw4p3Q7kGDjj0pp6AY4/rVqRQpAFV8Ddz0HNNMLipwQDg8U/nHTPPSk43AdBT0cx5I64 +4NDBbEyxsuN2EHvUbjBPINIXHoT604MjBh0PY+tSkHqRluMHnNLg4OMe9DqyY3KRnpkUoPUgkHrQ +wuNUYOfzqTpzjA4qNW6gipF24B7jrzSYwwSQe1P25wR9BSKORmnt97gZ4qbgMZckL3zULH58VOzY +xk4NQnZuIByckU4gNPLD0p2SFyBSFgDgCg5GParExyYOSeCafnK89aZ2/CpFwV5B49PWoYCx5Ygc +dTWvZKvmLisdAAwwT+NbmmjkmqitTGv8JtYXYMfrTlGMEccc0zICgdqeoB74rqSPMY4dMjuayfEG +Pscx9sVsAYNZGuLm1lGRgiq8xLc8xf7x+tNqW4AEr4+7k4+lRV0LYl7iUUp4J70dDTEJRzRRQAoy +OR1oB6+4pKKACil4pKACiiigApaSigBQCce9JRRQAUUtKzFmLHAye1ADaWkpe2aAEooooAKWijHA +Oe54oASiiigBeKSiigApaSigB7KyhCcYZcjB9+9Noo570ALxjHUnHPpU1mQJ1J6AE49eKg56Cpbd +1RwWHrz7Y6U1uI+xk61xHxZAOjWg7/ahz+BruE6iuI+LP/IFtF9bofyNR0fozSHxL1PCpgfU1Tcc +9cVeaJpZBEgyzNgD3qi+Sx+uBXHA9N2FtxbGVVuGZYT94ryRUHAbjOM0855xTcrn5s9+BWqMmNOa +QgHnNO59e1IMg+h6c1RIlKMUELj37UAd6AQvOMmk/rT+CQM9cZ9qbjGKRaHDOfwpzdqaN1ObPU85 +71LLFXINP6cZ/GmKe9O7dM81LLWw8HB56DpTuCeOh7U0kkYI6d6Fx361IzYtLXSxpl3d3bkSFjFb +qvUOBnLD0PSsrjk9/Q0o3jd2B6+9D8kn1NJvRIEmm2OAfIGDzjH40rqy5VsgjtStJNKQzMW2qqj2 +CjAoO5iWJ3Mck1L3KQm1ecZUEkgegp49CT0pEAz7U9iW3H+8e1S2DWhCzFsjtmqU/HHpVgD73YCo +LgYIB49K2grMyqbEIBxmpIPvVHxipYAC6j3rV7GUd0Xbo/IuayZMdM1r3eVjArJl6VNIVbYhzz6e +lXLMfNmqX9auWmdwrWp8JhRfvBc43HnNRJjPtmprjOcGoo+tSvhNZfGXIsAjNSfMOR61HGAcE9M1 +YPzQDH3kkPHqG/z+tYPc6WQtuOePamnPAFO571PZy2kUwa4iMkJV1ZR1+YYyPcdRTQPYqfLzTCoP +TpT8Yyc0Iqu8YdtqEgE+gqyGV2zzjNMwRUmOvrzSYHAOK02MZK4JgYzyBTW744AoY4/CmnJNCIk9 +LDcnpnpQcGgA0GqM2R8g0qnmnxuiSKzoHUdVPf8AKoxVGezJ15qyhGCW5zn86gtyqsCwDAA8Hpmp +x057Z4rGZ2UtiQbs5HfNNbj8elCsacRkn696z6m1kNGcHv6UDOf6UAZ49SacccnPPA/OhgNxnnOD +15pQrHj8aTvx2oA/Pr+dAx5479cHFOBDc4zxTVx1B57/AEpRn/69JgOwFwfc0zafWnkkE4zyKYcd +jxnvSQ7olUAHj0HFHHTvRHjrmlzk8cVL3GLxuqO8Hy8d+1Oxz7+tNuwSgPpRH4kKWxRHSmDr9TTu +eaavBrqOZ9C1Gfk+tVpTVkL8lVpTmpjuXU+EhXk8Vdth8y/WqSdav2gy6D1NOrsZ4ZXZfvQfLX6C +sk5B4rYvwVjGOwFY5rKj8JtNF613EADqTirDDPUYxVW3XgE1aXq35Csp7nQtiKUA4PtTcMPpjFTM +B0PWohnqetCegWRMg9D3JqQg98niol5C4z0/SnqORmoY0SDd+GacpwAB+NBGFGOtLgY47ms2Ow4n +5j2Ap5XPI54zxTF5YA1JjaCOx44qZMaGHPBpecc/jSAehPApcdc9KQwXdwPekYc5J9aeu2kcDOGo +AZ3yTQ3Ix/KhlwBjBpB8pBpgIFbBJ44pOcYqfrwenpUbDOcDtTuIide45qHZyMHp2qzjsB0ppXBy +atSFZEZTv1xUTg8kH1qxg85pkqqCcHqAeKqLEyoBg59hUz7SPlOR2zSYI5OcmlIPOODVt3JsQqvI +z04qQrzx6UIHJPtU2DjB47UOQJER3BWUdxtPvTIoyM59alOOh6fypAg/DrRfQVtSAkBqULk5zjNO +dMe9CLxz7c1VybCPkA4FVXJP51ckGeR+YqDaASTwSKqLJkiOJARk96VsZwanwFX5cd6gdDw2Rz0q +k7sgsWKK4kz2qhdghyKv2YZd/uDVK9xu4q47mVRaMq0nNLnigHNanOIRTOhqyy/KD3quacXcU42E +p4XgHI6kY9KZT0FNkR3HEDGentUdPbpTMUkXLcmiHIq+jBQB61SiVlfaRggkEH2qZnIxzzWU1dnT +TdolojgYPNQj5WyCc/40+ElgSTjkD3qTyxuyR0rLZ2NrXHKBgY6Y6U8g4HOeP5UAYAwMcc05s4FZ +t6l20IRio23ZHpUrrjd37GhRnGeo4qr21Ieo7aCnI5FQnKn9KsAnaRiq3zbju6ChFEwYkfh2pSo4 +PfNKoBxUm3iouUMQdPb9al6g4/A1CqnJ/SpUxwPekxoTaAcc+1ShT/WgqBz2pV4GalsdhjqO3FIv +6CpscZz61HwufcihDBFY854oIbP0pU2k5p7YJOBwT0pXDccueMUYDg5oT7vPSgjpip6j6EaoM88c +0/aoOBkc8Gm4OcH61Iw2gYGfWqARAO549qkkIH3c4xSICR70rgAAnHK8AfWpaGMB3Ak+lNBCsM+v +FSIoIz3NMKEkA/nTsIe3fnOKhXJbrxUhUfL6eooCqWGTwDyaS3H0GOgzkHr2o6DikbHbnmlU5HBq +risLuYKcdqF3cUoAUHjnHNKmM4x2peQWGmLBDHrT06k1LK/AAAyCMmme3rRqA/b0wcipEIxiohnG +fb8qAfmoYiG9b5TWQAT/AJ6Vp3xzGSfeqESxufnkVF4yTn+gNbQ2AdbA7sds4rUnAEfy88Vm2pUO +RnPNay281y0cEQy8jBVHuazqfGV9k564JyapHO6r92jRPJG4w6MysPQjrVHjdXbBWRw1tWrF60GG +U1uSEC2OfTNYlr19OgrYuGAtwoHO3Brlq/GdUdIHPy43HGamtkKyAEg4x0qvJ94mrNn9+t5fAYw+ +M2AcYA9BU6gEde1RJ0BqRTwcda4TqHKoB+lNZVJ+92NPXoPwpsnvzikIjAXDD0J/GoZAmBj72Tz7 +VL1HNRycMPyq0FhnzAZxmkGDjnpzUp96aFGT7UrlW1GsDkD1oUE5zmkcDIx609QccjIoew7CZODn +tSAsowOc07rnaMDPSm4OaB9AGASTn8KTAA60456HrTl6ggdx1ouBCwZeDx3+tO6jg00hyS2O4Gal +4APam2A1SB1705n5AXhOoFN2c4FKUYevA/lSDQU9GPPSo+dxqYjIPuOBUS8HPpQgEO7C+9OGMYAJ +bsPalky3QYA5oCttBqiREznngZ6+lSL0Iz0xSL8wOSST3NPXgkHsOKGSLg9CemcmhQFOBSuOAeOt +IWH3cUlsFhVU5Zse9OjI3Ajj2pBzwMAetKnBp9CdR7d88kmqV+T5bE9+uauZOAD1znNUr8AxNVRt +clrQw+9KmN2BxSdyaeowRzXY9jnitTZgANq2eCe9YlxySN3cn61tbilqcen86w5+WJqKRVbZlcin +BWVsMCD6H3ph9acldHQ4V8RchHU0j89sU6JC3I9Ka24ZPNY31O23ukLABiM5AOMjvV2EMcHGAeao +8butaMGCo/A0T2IhuTEHk9zQvytSj19McGlx83qKzVrGrEI5Azn0FSpyPwNRPnp0x1pUUjOTkYoe +wluO7En0NQKDuPNTE5z6UxVxk9OKLjsrgSARmkPcfrSMRu47UHpQJjhzj0z+tOVQf6URoAobkZGR +TlU55z9amRaJCDtHoKfERgjpzSnGOe4zTOf/ANVHkPqD9aXcOxx0ppKDKkfjTmA4Oc9KWgdR2SRt +A/GmuCSAe3WnLjpnk+lNI5NJsaQDOASfrSKx38cHg0fT0p8fy5zzxS6DsNcdweajweQTU3yDr3HU +UEJgevOaafUTItvI5qZQh4zjApm3G09uacTuwQRxii4DhhVwD0PBFR4K+vIzUoAxj25pOVTBAxuB +z/SjqBCcj6g5oAPOevQ0NncNv3jjH1pQzY55Zj1NNbANPfbyKjYHv0pSMk8Uc5A/IUdQsRSjAYnH +Ss1ySSR0BrRn2kY6Vmt1rWmY1bk8IGADV+PqMVStxnH61oQhSeeP/wBdZVXqdNP4SSTOB2xVd88d +h3NTSsfp0zUBIyRuOOM+hqIbBIFwSAOScAfU1II2BLbk6dmFV+c4GRg1KqEjI/KtNCEmSDnGTwaV +gxYgdutNQPnB45pRkuQazLTJoZvKIyeBU7XKMhIHXvVGVXZWKDoMsfQVGCUXntii10O3Umd8tkHF +RnB+bNA3ONx64pBwSe1BSQ9cnkd6eUPB5+lNB6fL0qZWz1H41LG2IcgdOw5pmRwPSpCeDSeXxSVh +ajfNlTau44GeKcxLHcW3MQM+1NIXvn605RlQapvQSWo0AHJHWnAnnPWhTgnOBmgYJxnFRuVsSDHD +UobJ/lTT/KlB6nvUWHuNm3ZGO5qvnBx+dWHIJGfSouSfaqjsNjQQT+tL1x9aCv3hnFOAxjB6CrJH +LkfnUwDGN3BAClc59/aovmJOPWnbSRioAFbleuelbulkA49qwo+GBHGDxW/piEuW6k85rSC1OfEX +5TWOdvAzT0BOMUnYe1OTHHvW6R5zJuCKwfEB22cnuMVunAUDr61z3ifIsZM4HPAq7CW55y+SST60 +2lPU0ldCIe4lFFL6e9MBKKKKBBRSqrMcKMnBP4CkoGFFFFABRRRQAUUoyePqaSgBSCODSUUUAFFL +R8u0dd2Tn0xQAZGefTtSUUUAFO+UE9GHIpCCKSgBT9MdKSiigAooooAXrzSUUtABRRxzn0oHWgAp +ece2elIPUUvrQAnPX8qenljO7J44x6+9Mpyn5gfagD7JSuK+K+TotqP+nof+gmu2WuK+KwP9i2p6 +AXQz/wB8mpez9GXT+Nep4VKpyw7HjjvVJ+W5Har0xUk89KqOAWyOM+tcUGeq1oQsOPxqPHPOKnJN +RHOelapmUkMpDk07dTOvB45qzJhTwD/WmYx71IORQyooQ0AHI70uO1LyDUl2HijKnp70n+c0oIB/ +KpLFVRz29KeAOB06UhA6jqaQnPPrxU7lLQcW4IPWgbf8KQ9adgjr1oGPGTzTm2YHP/1qiBYewFO9 +KlodyRc98fWnZ7d+aaM7c9SPSnIo5IqGVcfjjNPhVernIz07mm9RnpT1zgYNRfQGiJxgH3rOuPvY +6VqNyM8elZVyPnNbUXd6mNVaCbUMRy3z7gAvtT7UfvAO9Q5GKntV+de1bS+EzgveL96FwrHoMZA7 +1jvkZ9wa2r0NsBPPHSsWappMmrsV+5q7Z9fwqn3rQslyTj071rU2MKKdyK4+9zUcY5FSXHDNnnJq +OPtSXwmv2y6mCOKmJZcgcZFRxggds+lPJfrjmud7nUMGc8/5xQORzQxyPekUEHgUxCkLgfWo3UD6 +dxUpB456iomPOKaBkJ4puBUjZ4/OmetaoxkiM4+lBUrtJBwwyp9aXHrTemc/hVGLEJ44pDnpS47U +bDjNMlpsZgZz604AdKDwfSgA0xJakkXUGp8nuM5zUcYwfpUhGOeue1ZS3OmCtEcAPrUigHJyB9aj +wwAp/PtUM1G7uMUgxxTynzY5pu38xRdCsw28ZFKp7UYb146U4KO3bmlceoDGce1SgKFzyPQGohgH +A4OKfu+X1qWGw1jk4HUcUwqTS53fmM09VH8qew0riRhk+napcqeg5PWnLhgAeaZjnA/Govcpqw5d +3XrioLonH59ascharXWcDjHWqh8RMr2KY70ijLD3oPFJHyRXT0OVvVIunhBVKXrWg4/djis+TNRT +ZpWXukSda0LM4kWqCZJrRsRmQU63wsnDIuag3ygd+4rK6kVqal0UD0ArLxzWdL4TWW5dt+mcHtVl +Rx781FD0XjtU3asZPU6LEb8g9KjA7d6exUhh1bPWmDORx7U1sJbkyklVxwOBUqKzFQOT2HrUUYx1 +H0+lTROY2V0YhlII9sVDGSlcZB4I7UL2pXZ3ZnYlnYkknuaQFdowfmycismh+ouBknkUuGpvUY96 +XJwMe1JlIMn5gBzin5II9hTFLN+dOO4n2HSl5AOC5zx2zTW+XoMcYp6Zx65FI6nvwSOlJMCPnAP6 +UcnOfrTmAxx1oAyPf0qkAm7HNM3YIPUU9lbjil2rgiloIiDENQcsT6GghvTIoUHnPA4qgQ1xg8Z9 +KY43VMygg5FN29x1qkxDMLggj/61Rnp+dTkYJpm3PPQEU0xWI1DLnggHg+9KSMAAY65qXaWGRUe3 +PPfOKdwsM2E8+lP2HjNChucd+Kcwbr6YobFYhlU5IbgjjFJtx+GakJyfftTQMDn6CruSRhlGR3zU +LNz29sdKkfAzg9KaqnPHHFWiWhHPy4+tQZI4qVgxakVSx5GB7Va0M2ie1lli3iMkb0KtjuD2qjfg +bhirsPyjJHbBqjeOGY4xxVU/iM6qtEqHgevahetBoXrXQcnUnLjaB+lV271I44qOlFDqO+jG44z2 +p64zTKlTrjvTZMFqK2OvSowec9amkXAqEbcHOc5GKSehU1Zk0Z44qTlqbEucZ46Zp+FDsoOVzwfW +oe5vFaItRABee4zU/A+7noM1DCxUdAevWp1z1PSueW50RE+YdeKeGy2O2O9Nzzg0q7uDUlCsBjOS +KAowMdakwWHFQkuM9qSCwvPf1prKASe3Wn9cDHOTUrneBnGQAKYyujKPlz1PUVP1XH86gRNsm7HG +elWCOeOM0pCV+pGgXOGJxg/yqSJTgZ9aaCpI3Z684qSIE8+wpPYpDmDEHtTe4qZ0kjYBsAlQfwNM +C9uKgaYYbbnHJqM5zVjJ6VCc5wTQmOwiKenSpD/QUqjBU8EdaUrgZo6gCjgDHFLgsCeuMYFNVjzi +n84DfhS8mAwEU854B796QZ4PHTHFI/Xj0osPcljx1PtilLR7HQpljja2fu0xVyuPSh/lPSktwsOA +ABOCBkCo2IYnFPweCRTOp5FNCD7q4P1o3Hk+nWlwD24oJPHTpzS6jImBOBjrzS8/pg0OWJGCenep +Ewc+tO/cYm4kksckjqaRT0J60HK544zT0H6CgQpw2adgcGlIUcj2pecf1pdQEwMGlwEA9TTwA3Pr +TXU/U4piKF7koRjNZ6xsSqoCWZgqj1JrQvs7eOgrMBJGPfNbQvYCxaDD9M84rUkd4lV0bDIdykdj +WbaIRIMMCCRyPer94riMYAxis5q8x9DEundmkd23M7FiT1JNUv4h2q1OOTVUda7YbHFW+JGhZ43A +1oXcmItp6gVQslJI71o324RL7Cuab/eHUl7iMRyMnNWrEZbj86qP7Vd08FnHOAOta1PgM6fxmqAQ +uamwGximFcDJ9uKkAHHuK4eh0MXJH0xTWA/xp6qD3ppXH3uQDQlqIjUYBz+VMk27sDJ4GSfWpR1x +imPnd0z2pjWomMjNRqCOwqVxgGowGGASD/SkWhr5z/KnhflOT2HNKe4Pp1oGdpJ6YobAbywBFRAs +DnGcipwAF4/Ko8MT+NCYNCtgAH86M4xxjrzTz3AHAH600dOaLjGKp53fe/lT2HHNIQepPXvQM8+1 +MAVSfw7+lMPUj14qT5cDvyeaiGSfQ00KxJtYDnrTFOD9aedx4z2pyoVAyOvQnvQhPQY4wR3BoAcd +OeOKkIG7mhwAOOcU7k7DYgOSalXvwDn1pi5AJ9adHxxT0JFK7u3Hak2/Mo9B1p4OcD35oc7elJJX +1ATocDvUxhUKuHyzEcD/ACKgRW6k5qfex2bcDaOMUxMjYRhwFJOF5PvVPUOITx+NWz8p+lVdSIMI +AJ71UUnIHsYS8n8aenJFMAp0Y5xXWzCO5pZxb88isl1LsFUZJOAPU1ryLtt1PXIrJlCksRyABUUR +19iswIOCMc0qdaac5qSPHpya6XsefFe8aNtwjGq7nJqzbqfLbsaqv3rnj8TO9/CRDaSc1o233fx4 +rOGSwzWpBwgHHNVU2M6etyRRjNIN2/nj2pRwf88U/aeuM1Fixp5OcdaeqnHt60Y3EA8E/pTyDjAH +ORipbHYhbGfekULnk05o8mnAAL93pTb6AQkDf8v6049cMO/P0pyjLHAwMng01twJ7UkFhQCox7Yz +Srknp1NPAJHPQ96VY+R61LfYpIlJOMenFKF4P86Ydy+9OVic8dqRRFgM+enWldCRnoKRGHmfQ1IR +z6+1F9RMauVP4CkJPvUq4AOO9RlcY70rspIQ57Z5xTkLY45IpduOB3pFBU/XmgGOHzHB4pCB0Pt0 +p+1l4I5FMcyEgj0JpiuKT29O9AGccdKAcgHoaUbgD9KYw54I4FMkI4JFOY4FMJOMd6WoDSpdvlHP +SlYkEYxgdKEyjgqcEcg0uCCH4wrDrz+lAhgkKBgACGGDkVGxHPfFOAyDn6VF5hHB/KqsK5HMcg1n +OeavTlTk9MDp71RwXYj2P6VrT2MKjLVucY+taEJORnvVCEjIyetXUyc/hWNXc66fwlpoi4JPOBnP +1qq0YOasqW9evWkMYPNZJtFPUrFTkEetKGzmnlG59hmlRV75xjqPWqENXA47+lOAUE4+9jigLtII +qXBOKluzHYRVC4zxximvGCjeoFPwzc9s1Jn5fbGOam9mUyrsATjrTVTrUwU4JB4BqLd2PXJFUmAu +CB64pRuPOKRc/XNPHBX5uO9ArBjHXmkLccVY8iSSKSVWUBSPlJ5OT6VAc89McUmuo0xN3XPXNLk4 +ye9MfjnjtT85OfpQMQN2I6dKcoH0NM5I/GpVyO2aTAQjk+3epAAR9RTB19SKcCVKketSwGyAZH06 +1Dggg1M/zH29Kj2nOO1UgAc5yMDAFORRk/zpvzcgHnpxTgQD+tMTHZJBp2cHuOKbh+SO5FOZSQB7 +c1LBCqOc/Suh0tG2bveudjzkGuj0ttqDvWlO7kc2JfummzHA+tLuyf0ppzxjvT0U5ya6Y6nnMfwe +/Nc34tkC2u314rpSvSuQ8YuSsadyarqOOrOHPWm040ldBmxKKKXJ59+tACUUvekoAVWZTlSQcEZH +oetJRRQAUUvGPekoAKUbcHI7cUlKAT0GaAEopQcUlABRS/LtHXdk59MUUAJRRRQAUUUUAFFFLk8+ +9AhKKKXpQMSnxiNnQSNtQkBmxnA+lNpKAHOoVmUHIBIB9aTjjH40UUCWiCiijgkdvegYdfzoopKA +Fp0a7nA9abUkA3Sxr/eYD86BN2Vz7IXqK4r4r/8AIGtR/wBPOT/3ya7ZOtcV8Vh/xJbU+l0P/QTU +PZ+jNaXxo8MkRN3zcAkZNVWwWYKcqvAOMZGe9XLmORNxYYwcHNUpB6VwwPVaGOv61ARmpy3HX2xU +RBzitomckRY79KQDkZ6U89fWnYOAPzFXcysI+4k7jngD8qAuRzQADg+9OBxg0ikhFBwQe1GORxTv +U8e9NJJJpFDxtI4HFBFN74p2e3tSKQoIxyeRSj5iB0GaQKMEn2xSDtSGiaREHkqBhgvznj5jk9Pw +xTM8/TmkA6+3anLtxzSY1oG3aASetKwPUd6cBwR+NLgKOKm4+g6Ppj261IBjaD69qZGAQKkwARyO +tZyepSHBNo7HIHSngdiOKRNtL1z+VQyhG756Vl3YPmdvwrTK7sDqTxWZPnfg1tR3MampCeBVmywX +XimwQxyGQyMVjjTexHpkDH45qWwUEk5IYEYA71rN+6yI/EW75SFAHQ1iyd/pW1fEkZPbjFY0o/Gi +kRVWhABWjY9/cVnggZBxz39K0rMfI39a0q7GNBasr3BG9vrUcfLDjvTpwQ5B6ikj60L4S1rIvIMC +ngE89/ao1HAOepqU+grnZ1XIyO/0pR+X0pFbNO6nr17UMSEbnpkEVEwAP9asGGXbuI4zVdupyacX +cbGHJ6dR1phzzipNp7VGwJJrRENDDnFBicRrKcbSxXrzkUu3pSECrTMHFkYNP6ZpNuDmnAAnrQyU +iM8k04KTyKMHOfzqWM4zjuKG9Bxjd6j0TGM1Iy/nTQCBn/IpzbioJ9aye50rRDWwAO/rSxnOBzim +89Bz3pUAA64oexN9SQDIOOKAv5Zpy5C8/hQAOMc1FyxoA/Q0cinL1IpBgk/SgBwXBz6Yo259+acM +Hp060oyMEUrlJEZjx1HH604dB09Kf160h54pXHYevXpjNNdTnPfNPjBbpxgdacQciovZjIgBwc1X +u2GOMelWivbpmqd5yQRWlPWRE9im3ApsfWnkDFEONw+tdV9DlafMi8+PJDfpVCbNX5VIVRng1Rmx +kis6ZpV+EjTrWlp4/eCs1Ota2mDL89O9Ff4WLDok1LAIHrWYPvCtLU8F8is5eoFTT0iaPVovw8IO +KmXIDHGaigUlRg+lWGHHrXPJ6nRYgwOf89KaMg47daVuuD9aVUBPNV0EOAxwMkGpY8l8Y4qNcY5q +ZFwN38qiTGPbgccc0hzx680/g45pOpH1rIYoHAp7YBxR1Ax260rbT05yKkZGp5waeM9KaByc9ulS +cHH0psBccjt7UyRm4B5qbA7+tRHGcVKYDCSMY545py9vpSlRkE9O9OGDg5/CmwQzLE4xxQR+ppxB +Vsn7ue3pTecDtzQA04x06Cm4wc560pBIpQFxk+lMBRkjNRcA5609c849aQqvUjGaYmBwwz3qEkk4 +HFPPX27U3Zk/UmrQrDwD0BprKcNgdOtSADb1pj55GeD2pJg0NCtjOecZpTwvvT1XjmmyDg9Mc81V +9RMgC55HrmlKhuDmngbcd6YWGSTx7VfUl2sV2LAkHn3pw+73pxAY+1OKDjHT1qmxIhKnn6c1FyOK +sOMZ5qNVBPPWqTIaHxng5APyn9RWZdrtkIHHetYbQGJ9OKyLti8hNa0tzCutCE9OlKlJ16mnKMGt ++hzJag/rUZqxLlyWbksSSfU1XbAoiKaaG1KlR4IwfUZp6DJpvYmG5JIQfyqAe1TNg98YFRAc0o7F +1NWWoASOKeVO7mltkzirTW+0gZB4B496xlKzOqMfdCEFzj2qyBxg1EqgDI61Mn/6q55bm0dCMo3X +16UvPP4VIQRgnpQAMGlfUbQ9S3A7VEQpPFTRxySEquScE49hzUTjHehaCY0Db+NSgAjBFR5wSRyD +TwQScHqKNQGY5+lPwQpIIppXnIPQYp6hlGDQUNAOQSe1PXK4pQFzg88Y/OnFlG3jBC4P1pALueQk +scnAGfpSZYHA9aMcfLx9aZySfakPYm561E/3gR3qVAD0pCvJPcGkxoRePpT8Y96AoIJ/KlOMEEfj +SB7iKuTj1qcgYx6cVEnHepSD1+tJ6PUZD0Ppmmkknj0qQFQSxGRg4phwTz3oGSp8ij1puCT+dOAX +HXtQATjHSldIQYJ/Co26554zVhgenpULgkjPUYH5VSENUsuGAGRnijkD8OaU4UfpSYzyDii9xjWO +PmFOjOT7imbcnBqWNRnn3FJ7ajF4z7UsY+bB7UZ9TQnP3epo2EKRlsn36VKvCgfp6U0A09VPXGaG +JoUjHT0zTG3beemeakIPH9KjI9Twab0AzL04BHTNUAQoXHB5z9Ku6hwCM+1UWAwO2a2h8IGhavG7 +L7Grd4dyAAVnafkSD2q9e/IuAfSspK0xvYwrjqSDmqvG4+lWJt2TVdfvV3Q2OKrrI1LALkVf1D/U +4z2yPeqNgPmH1FXNRGIwMiuSX8Q7Psowmxmr+nkK1UTjNaWmgE5xW1Z+4ZUl7xqjcQB2qTYSP50i +AZBx1IqZBxtrhT0N2MVeevamvnBwOvrUmDyM49Kafn4P1B9ad0Ih2nGaTncPyzUoGKiIJbjsKGho +c549OlV/f61M4OOKjCnHHeki0IVzx3yKftO3p0pGJDDFSMfk49TSYEPQUKvOfUninAYA4685p7yl +pC4RVyBkL0pobGFcA85zSgZ/nTwq/NnPI4pCzhCASB3HrQrX1E9tCFhinds5pvf2JzTzgAD1qmgu +QA/MR69KkWPo3GaaVbOQafz93getAPYfswo549aeGG1V3EqoOB6Z60gGFwaaoyQPSpTJeo0rnt1p +duBzz6U7cuQM07t14GadwIg2cA561IMAFh3FCoOtOxxVX1JGHcCRikbP5inOOe9R/NgDn0qhEyZX +BBwQc5qRmQhXVcE5DD39vrUaAgYIHapioCADOScn8OlHkJkJGSx46VR1IlYwPWr5wATWdqS4iGev +WqgveVwexlBQGYdcZpyffHNIgHenKDu4rqZnFNWNaeEm13KRgDOPasB+G5roWZ1iXaRkgqc9CD1z +msCXy95C5254J9KmjaxFYr8Zwe5HNPj7VHxk1LH1roexxU/iNWFmWEEcEd6z5O/41fTb5BFUXOaw +hudsvhI1HzcjkHFa8QBGcY46elZMYywHvWxGCFGPSnUJprS4oXJpwXAwOn86EUBTk8AfnTwRnJ7G +s9UXuMIOSCcVIVbI20gUbiR+NPAI56dRih6AiNv8KCcD5RmpHBBCjnNMddopaWBDEA5I4yaRx0z3 +9akh2k5PXtSFAzfyoug1EUcYp6HBJ9qGRsZHbvT41IxnpU9LlW1A7jz1pdoA3DGTSM5APtTwDtGK +GFiHbg5PXNPkXBGOvFOxg5JpzY3dKSGyML170nzdMdTjj1p5TcGPYdqcUAUHqaBkeDjPUetAUNj+ +9mht2OPrQjMMccDge9IZIEIPOc0OoAB4wQcUq7iOce1IQO2TVEjCFz17ZpBkDGc04nAOcEngUi7e +f50ugxHO4kDjOKjYtls8n1pzDuOemTSyYwM96aaAYu7kqpPOOO2aTYSBihNwNK3JKgihKzBsFUAE +ZycfrUJUZJx1qZeNuz72DuNBEXlhs5fcQwPp2ppdSWZ9yAFOBzWd/Ea0bnuAcHBrOPDcVvT2Oeru +W4Bnmr0Wc8VRt2x17g1fhJAzwR61jVOum/dLKk8ZpRnBOegpvOAaeSOmPSskhsiwxJ/GkH3ip6Y5 +qQA9/TrTCeg+tFxhnk/zqVOCSfTvUYBGaemOnU9qlooXce4+lK2NvA7c+9DqFGelMbg9+BU2GMJA +yM01izMWySSetKSfY5oA+bn8qrYYpXA/r60qg7gPSnhRkAnoOKcgANTcGByO/rULDBFWSqjkc1A2 +CaEK5G4yMdqcN5A4wMdadjOM8Zp3bA7U76AMwOAKkQcdOlR7OeueKlXpg+lJgAXggD5qAPm44xgC +lUc8n8KXbgsR9aTGMc8VGoznPGQakIYjJ9+KiXOW/KhbAIv3yRTsgnNN6c/pTuMg98c1bFYfjjno +O1OcEAD1FIFOR/WnNzyc+lRfUBIgWZfTNdDpuAoHfNYduG38/hXQWCDArWnLU5cQtC8CwdR7VOqm +mY+fPSpQvSuleZwPYUgn2ArhPGb5mjHtXdlevPHSvPfGDf6WF9BVK9wRy/TpSVKYJ8bvLbbjOcHp +UddBmPAjCA7vnLdPQeppnvRSUCCilJBxxjA/OkoGFFFLxg+ueKAEpcHGaSnxFlkjZcbg4Iz0/Ghg +hoGSB61L+/tJEdSVcAMpH+fwrf1uTR7fT7XT4Y0+2REGVlH3TghgT3Of5ViFPNCsdzZh+QL2K8YP +4DP40W7gVaKUYwfXtS7eAcjk9O9ACUlFFABRRRQBIY1ESSBwSzspTuMY5+hz+lR0vFJQAtJRRQIX +tSUoHvjrRxQAAEnHfpQCRyOOCPzpKKACiiloGFJS0UAJS4pcJsLbvmBAC47etJQAVNZhTcwBvu+a +ufzqGnLgcn04oE1dWPspO1cd8UhnRLc+l0v/AKCa7CNh0Brj/ilk6FCR2u1/9BNQ9n6M0p/Gjw26 +fJOST6Zqm+B0PWrc7Ek8VUwc5PcVwI9ciIzkHpTD71I/XA6Y5qME1qiGQnrT+OQBwelKcDIH40qg +d+MVbehnbURT2/nQ20kAUpGDx+FJ746HmkOwoGenWmkAZxk9KcpPf0pxIXICjPBB9KOo2RcilwMj +mjDAYIHpS45pgh5IKgDAOTxSDrz070EgDHetUQaKmlGVpWa+cjCD+Hnvx6e9SlcbdjL6Dr1peT04 +pSoPI/Gg5yKRVhwJPBqTbnqcjtSwMvmRmQZj3KW9x3pVxxg9KzYxqgfpmpByR704hMKAT0O7Prnt +SAHI7ipYx6Ak57VLjC57d6aMYGKcRnP51k3qURP1I+tZdxjeexrUf+VZVwMufrXRR3Mqmww9OKvW +H3/l55/OqJzitDTcBgfxrSp8JMV7xNfHuRWLMa2dQIJPGKxZB1qqRnVb5bES9a1LIgRuc9qy161r +WgzExq6uxlQ2ZSnILmki60k2Sxoi7UfZKT98vDhR/KpBzwOtRIQQOKk5AP1rnZ0dLiZXHA7dKU9e +vHWmnqTSMCeTxQF7F1b5lgaBgCpAxxyKz25PNOAYjI6007d3PWnFJbFXuxwUYznI71Hj17ipOMAd +AKQ9eaaG0RnFRNkHNTEHnvTWUn3NWmZTWhCOhzR3FPxj60hNUZWGkGpIj+R70zBPtUyKfpSk9C4R +1JcA/hSZJ79P1o5Wgn261mbMAv6UIMfWlDADAFHoB60E2HgYGPelUAU0Dgk/nTjjbjrj+VQyhDwS +c8nikQ5zjpiggkHNKpHpyafQXUmjA69expSFB+UEUqrheO3BpuT+PrWe7NbaCMBgnNNHUc07jGR1 +pp46elNEslQkClznA9aagDDB604Agc/WpZSGsOAB1z1qncLnfyBtGcHvWiSWxwCBWdekbuBxWlJ6 +mdTYqtnFLbgFxn1pD0p0AO4Yroexz295F2bAUY61ny8nk5q/MF2qc9jWe/U1NMqrsNTGa19LGX5r +KStjSx8xqa/wjoLQbqXDnH3fSs4csKv6gRvI7CqK/eoh8Jp1Row5CqelSnOMe9NjClB3GKexPQdh +muZvU3Im2nnOexpVB9/XNMPUjv3JqWPkHPSm9EJCEYz3pyHcPTgUjYHHT1/CnR8n2zxS6AyYdqds +GT+dIQFOc85qQcgY9ayKDDBmDcYOD9RS7WPHSgAk5H5U9umeahsCMdakAAYfTNQgnP0xU5J5PBoY +wYgY4qLgtUuRtBPWo2yMcdTQkIVxkAZyMURrikAPORT0wBkjmm7WAHIII6//AFqiHQZ6+lSMVAwO +D61EM7iD0zzmmthC4IHp70zAAqTApu0kentQA1R1wKTB6mpBnGMcU3hjTBkTYyaRR+FSbDmkUNjo +frV3ANpHOeMUwg5Jqf3x680wAE88EmkpAxeSqnoAMVGcEsD6H86mOQOeBUZHOT0NNMVhgC7TgYOO +BUbx7hz1FWMHqe1RuwHU1UWyZbkCx4Iz19qnEWcKmSScADuaQKMAn1IqT95/APmXBFNvURSbqRxw +aVFBJ6VMba4yC0ZGc4pvlPF8si4OO9XrYlakUjFQRWVOQW6YNa0gBBJ61lTgb+K2onPXWhAaclBF +SRAkgVu3oc8Y+8K/CjNVyPXoe9W7jZhAvPHP1qmeaICq72G1IlMp61TM4bivTRTn5/CmqKXQp/EX +7U9M/hV/GetU7RemfXitAKSMDqK5Zv3j0I/Chu0DI6471Ii/MB0pnXPtxUiL/n1rFstIV8YDdc1E +p6jGamIU/J1HqKhA2FgRyOKYiZCwIGOaiuMKRjpUoByoxg8GmSA9+tCEyMbeoPSpUUZBP40xBjkj +rUqbjnvSbGkMdVBwPrT1PTHQUOgyD3AoG85yeSSaNbDFK5IYU3Bbk9qlI45z1poJI4HGKSAVFPrx +jmopAABirEYxluOaQhTnPQ9xS6jGwEFTzSncTgdutIiBT+OalAXqPxpN62GKq/pSNuxjFSIox9aj +fOTQA9VHT9aedwHX2piH5cD2OalJOw/WkBXPKkHnmmgYPTPHFOC5GTxS7R1z0oQxwGT04Hanq3r6 +9aTPIx6YoOc0APZh35wTULY6/jUueCM1XbfnGOO9NIkU45A6mkRgPfNLjK46GhV7YzxTtYoa23Jq +SMg03GOvanRqeaWlhCMMHgdafFjB4OaQ+30pyLgGouUP7etPHI9KXaDxzSovDHbwByatK5LYuPxP +NRsMkADvgVJnJ46GkYYJJ7GizAxtQXB549azz271oalgtgc81RPTp0raGw7F3TVO8YGan1LBx7cV +HpwyRz2qW/OCQemKzv77G1rYwpu+arLndVqcDJ29KroemPzrthscVX4zV04En8uat6mDs45qvp2C +R+dWNSJ2j3Fcb/iHW9kYbVqaauOSOlZjda1dNBxWtb4CKS941QBjA7/pUuGxkdeMUxfu4qTGBXFe +xqxMH0pjA/WplHr2pjKxXIxnPShNgM5xn9arjGeenerQGeB1NM2kZ+tV6giNwOe/pUQ3fh61K6YA +OaijDN1qbloRs7s9aX+E56UOGDfjSsCOfUUwGqCelL3HPPpSoOopwGD+tK+oxcnGRTGbI9qcT29a +QgUKwiPI69+1OIUgcimuo3D0oAJyatggReetOYtjj3zQAcMabtwQf0oQmhwNLnb9KReADinqy9T1 +pWu7iYxtpJ5xUuVxg1EADyeSe1TY2ZHBYZBoECgdfShepzyTQvXFI3TPc9KpCElyT/nimbh0JpSR +xnqajYEtkVW2qAmGQBU3GBjqarhiRz0qUfMP51Ku2JiINzHPvVHVCPLA64NaABBPAHoBWdqxO1fr +WkE+YXQyV7mnRcuv1pgzj9algAZl4710vZkrdGjeP+4UdsDFYUnetu/2iBQKw3PWlR2Mq+xCcfWp +Y9xOSetQsckn1NTxK/BwccV0PY4qfxGigIgz7Yqmw61ebi3HbIqg5I/D0rCG52zasEGS49q141O0 +kcnFZNvkuCOtbMakKGzzSqbih8A5Rk8jg04Koyc9O1N7fjzStnkAcHOPapsPYI1yfannDMBk1Egc +HJGBUv3hk9c0O40Gfm+lK4DcgcZppwDg9qc+R0NMBVAUDFJy3Qd8mlUZXpzmlyQajfYoU8gUu0AE +jvRhuTwad12g9M9aTGVnUs3tVjb5ZI3E7cjNH8XA6UvGf1paj0EQAnJ4xxSnO7k8GpAp9MdiajJw +319KAEJKjIxzmhec8ZAGKWQMMKVI4yBSxrvBP0FICPy8vn8hQFckBeWHYd6mYlSAgPpj61AN+7IO +MYxTuInXZsORljjaRUeCpO8Y70vzYXcv096c0sjqc8djinuHmQOQRTfU9Mk8CnYBUk8EEcU5lIBJ +OcnAI6HFHTUZGAc4PSo3bGB+tTnH8PaoG3HHFT1H0FC4x0+tBGPzBzSD1A6CnM5YKuACoPIHJ+tU +risIFwCR1qLbuznjnNSsM5zTWb5WAFMl9ylcYAJ61mEEsTWjcSAjtWfksST3Nbw2OepqyxDxWhF9 +wfWs+HtWgmABx271jVOqnsWBuC88jinbWK8d6aT8o7Uo3bTnioQ2KcZAHYUwjkZ7U4Fse9K23qP1 +NJq2o4sYoHJ+lSqVxwelIg5JFKACcdKlooNwIH0pjZzx9Key449c1JHFG0crtIFZFBVT/FkgUkFy +sFI5xT8DcCKFz17+9KBl/TvgUih64J+lO+UHPWoz97C9KQNnheuakCQ5P1FMK8nn3qQA4596UIMj +PancREOMZ7Uj7RjtUmw556U3qc/lTTAF2E5PfrmngdMHpQFIHAA96coyOaTfUYBSSacFHOe1NOR3 +60LuPpUPuCGHGTUIG09SParSj1qIrlvpTTGQkc59qk+ViCc8jmmkYIHU0fMRVtCHrxjPSpGxwc8d +KjAOBnp608k7QBU7MZLbj5uoHHFdHYqUUE8muftVw+D2PNdJbY2rj0rSkrs4sS7Fkbuc1KnOKjGT +k1JF1x19a6kjhbHOBjIrzXxYQ19j869LkAC8eleXeJyft8nNWt0EdmY3myByyMV+bIwelSO6zIXZ +R5ikZYcbh7j1qCpHkURiJPu8MxPUnH8hW5BFS0YPWkoAKKKUBmIUDJJwBQACkqw9zutILbaP3U0s +mfXeFH9KgwTwKAEpTwSKSl5NAASScnk1JHNJDnYflYDcp6H6io6SgCSR4ycxIY8jDDOR+Ht+JqOn +IjOSFBOFLHHYCm0CClx2pKWgYlFFFABRS8Y6856UlABRRTgjFS4HyggE+5oAbS0lFABS0lFABS44 +znueKPmPPJwBSUALSUoJHI4p3lt5Yk42liuMjOR7df0oEIFLYCgkgEn8KSjJHQ4o68CgYdMZHUU5 +VY9B7U2p7XHnxem4UCex9iALxxXH/FBcaFDg4H2pf/QTXYqASPauO+KIP9hwHOALpf8A0E1L2foa +U/jR4bMOTVQ5JwO/erkkcshO1ScZPFVHUqxDjaw7GvPSPWuhrKD096iK4Bz94YFSnnP61H9atMbV +0RYJI9xQzYH55qQjgkjoajI61aZk1bQMHHqDV6S1d4bYQ7VgdAzSFhgv3z9PT/Gqi9CCAxK457U6 +VYjt8vcPlGQfXv8AnQmDRFk4x2xQSx59v5Uh3Ac0gJ/KmAuCTk/WnLimnJ5+lLnJoBDn2bUwSTzk +elLjp29aY3HINAyRk9qRY/JYnHWnAdxSDB5pcYHX0qWOwu4AY71ID7UwIT2pwQg++al2KsScfKKe +vYelMCkqGxjnFPQZPYD0qGtBX1Jl656ACnfMeR070ADHfilGSfbFZFkEoxuNZUpy5+ta8g6g9KyZ +wBIfeuigZVRpHFaGmgE1nngD61pad39+M1dT4RINQ5Oc8VjS962b8DJGfwrHkA596ukY1fhIlrXt +B+5Y5rIT+tbNqR9nb19KdXoZ0dmZkwO4n0NLDRMcs3HenRDpVfZKivfLS4GMdakLcDFMVMjHT3pW +BDAN1HrWDVza/QTLf/XpPqfwqaGC4upPLhUu21mwPQVAdx5ppE36Cgk4xxmkOcnsKXOCRnPvUbnB +/rQlqO4/BAHOR/jS5B6U3I7HinLjOe9BakG1QDnr6U1h+dTBFI6dBzTXXaRST1HJlfb+ZNNOKmdT +jOMVGQB1q0zOw0dferEeSPrUSpk4qZFIH0pSZcFZCkL3ph6gCj5RnNJ3z6ikkK4p+U569aVC3Wm4 +zipFGeDQ9gW47acepIpGGM5BpxwMEmg4OBmoK6jTjbz68UIpJz2pzL09BTo8Ln1ob0Gtx4yOOxpX +CheAScjBpFYfh/Op/MQwmPb82QQ1ZXaZfQrHIGD9TTOeh5qTDDOfXFG0YNWmIco6GpQCefSoU+Xi +p1GBzzWchoZycAVn3mS57c1p7Rk9c1l3X+s61rR3M6mxWYYFOt/vj60PwKfbAZ5rofwmNvfsTzhg +MH0qlL1q7cEcZOapSZNKnsOrsNTqDW3pXBJNYqA5ra03O1h61Nf4R0V7rK+okeaT61UQnNT3e4yN +k1DH98CiPwlrdGkgygHfGaXI9ccUo+6M9SKCBgnHOK5TchwM5H0qZdox7io+R0+tSLtI56VTF1Gy +fNT485U+lJIMgnp6U+LA70nsCJ+nNPXHQ0xRn2BNSKp4rF7FCoMc9KH6cDvTlAGCefpQwUZHpU7O +4EYHf3p3y9OaTnnHpTk5Xr+NAxSFGO/GKRsCngL1/WmkKWB96ESMyT29eacAOKMelSDbgE9aHqBG +wJB5qIg5GBUzY7cUwksF4GBnnuaaATjHPQU04JxRtXtQePx5poYcZGOKUqFwfxoC5GT0pxA7HoKV +wY1cZzx0FLyenA9abjGCacnU80xDCcZHpSAZHvz+FOfG70oQgEc8U3YEHO3B6ZpmBkZqRhx601dz +H3FC7iBvp1qtIuDjBPpVog8/yqFwvftVxZLQ2JTwTxint0z1ojKngdBTyo/Kht3ArFR1H0oxnPep +cZFKcAiquBWm4Q8Vky9c5Ocnj2rXuT8pAPpWS+M/jXRRMKquQuCMVJBkkADJ9qSYYJGQcHqO9SQI +SwxWzfumKXv6CzKOTVFwP8a07pCi4PGaznxTpu6M66GCpUqMCpVAq5GUEMc0inkU5hufC8ZOBmkU +ZNPoLeRp2ZJC57VpqvAFZ1qhwOa0QCffrXDU3PSirIYdwJ/Onqg5zQVxwec/pT05rO/YsUK3Y55x +mmsnOSamCDoKYV4554NG4WAIDgj0/OmOpY4NSqeme2aYzDqKeoiPaM5HSnxZ5I4FJuAyc/ShG7Hp +QA5+o9KFA96GUnr0NNI545ovoMkwW5PGM/nTegqTChcZPPNRgDOOoAFDegh65I+nSlypA454pykB +R7cU0gA+5qCgCDA603tx2zmn4Y4GeBShMDP50APTbjJ44pnCk5GacH//AFUH1IotpoAiLj86lyCp +BpOmAadsBGQc8ZpagRZB/CgAHOfXNBQdRwT2o6Lg1QDguAO5JpWGDxQrHB56GmtnJIJz6UJ9AYvP +HPrTD3xyO1SAEqe1RJuLY/SpuOw7C7e9IM5NSYxw3Wmtnnjp0oAjbAGO2Oaeh4+oprKcZ7Yo+XJ6 +03qgQuGPPpT0JBH6ZpoyeM07PHPXtS3Ak3HGc96crcc9OlMwCBzT0AI65FNEknBGaQrkMMc8UYz9 +O1KcjGaHcDD1FMSYPriqTE5GPQirupEtJz64FUiOlbR2LWqNPTByMijUSu79KTT8DpSX3U59KxT9 +8b3MWfPrVdM5qxNjtUCDJruj8JxVfjNvS13GptTBUe1N0kAMv4VY1cDHfrXHf94dT6HPnk9K19OH +ymspuufetnTlzGOvvWld+4FNas040XHPpUyL61HGGxxxxUwNcbKYzBDE49KRgSOnSnE4NNOefpTW +jsIiGQcZpjBs/h0p6g7uO1JICT2GKHvoUiJsDIIyMYpkYXOM9amZT0+lNxycdam+hREx+bjtT3I2 +juMUxgGBI+8nf1H+NNYHA/maqwWFXlvQ5605SScdeaamPwp6gAjGaGrhcc6Dbjv61GykcYqZ8AAj +vUJJIpLQNxuTuwfSnEYHtg0xiMjP51KoGM1TQluNXBH4VHkEjjvU+wZ9BTdu1h3700IVY22EikER +IBqxuB5HpxTd3pQ3dh0IfLIwRUhBVR1pP0FKTkDPPSmkIYBy1OA9cUiqCCf0pVxzzzTERsuWwenY +ikI2kfSpOmR60jHPSgQ3aduamTIGO1HygY9adg4BoXYGMIPesvVsfLg9BWq2TkH1zWTqwAKitYfE +S9jNTJ4HertvY3YdSE3f3lU5Zf8AeA5FQrceTGRANjEDMh+905A9B+vvTbUEyKD1zXQ9mQrtmjqy +pHEqk4k4+X/GsUTywxSxhV2zAZLKCcD0J/pWrqQ+UKO3SsR6dLYyrp21Ie9WoZHZUjJyqkkfjVXv +Vm3+8B61tLY5aXxGlMD5QzkjHFZzitOYfuFJPUVlv6/pWFM66mxJbA7xitkEBMDseKyrJSXHBNaz +AHHf+lKpuOC90cgYrmlC/L6UbWABBpSTxST7DYiLknNOI55OAKenGcUq4JI9s1Mu4xkig9u46U0+ +n0xUnGQB6U3nuPWktNwJMKBx600hic+mKB8wH41JH33dqG0NDEyDUz4BIxwaYUOc89Kk4IwRg1Ld +9BkWwgYHenDH41IFwB7Uu1eM0rsY0HPJpgVfMUkEjIJA9Kk2rtPY+tCDnJNFgQyVy2C3UAA5psDB +ct706UDpTcdAe9DGrEmdx3evIqJkI5B59KdkDAHY4puCSRn3pLRBuHHGOlKdoB6nB6UEYHB7Um0j +huc1SEHUDJGF7UrvGMU0rgjHqaY6nPpjtRYBwxhu1MAXBz+FAcH6ZNPjYIScZ4PH1o0AgZipOOna +mchvapVUFjx3pCgDN69qYDGLdvemHOOR+dP3Y60EFvpVEsz7he3r2rP5BzjjtWredC3HGBxWXzyS +uQeM+lbw2Oae5ahUFsdcE81d3H5VBOBmqlsoBByOxFXF2tIxXgZyB6VhPc6obFiNuo609gwBXIwD +ihpGmmeQqoLtkhRgUjcBj2qdAuxg3DnPWjaR06dTVjEQKtGcDCn6HHNI24r8zfdx+lDQRYzIOc9s +c0oU8EdM4zQoGKeq84J61m1Y0QFsDnmhCrI2e1Bxgj601F65FKyAXj72fwqPkseOlSEY/Co1Lluv +JJHNJXY7i8k4PpUkKDLEijypFLB1ZZARwR61JEO2KHoF7rQbjJPPtS8Z57DJNK6EsQv1pSo6HsKW +gEZyWprBl2gfkKkwBgH14NSxRJLIgdwq8ksfQU1dj0RDhucqcDg05V4zjFSTlAcRtmPscYzTDkjj +rUydh30DGe3QZpV6YIwc09cke9Js4yaT1AYQgHHUcUw4JJPXFTBQQSc0zYoGe/ShCuUznedtS7Mf +XvQQuefqacvzEHPeruFyRUOBjkAVYitWnRj129hUayfIFAHJ60n70ElSeOW9veo6g7ss28MpcDYR +jqSOgretlIXBxwK5+2bzJV7+prpLUbhj2xW9NJbHFiL9SQHg461JGD9KaiDH41MigHgGuhHIxs5I +U8dq8q8RHdfyn3r1W6OEYnpivJ9cIN5N3+birh8QlszLo6UAkEEHBHNFbkC7mAwOMjB96bS0H14w +aAEooooAKWkooELzjPaikpcmgYAAnk4q9qulXmkTRw3O3c8QkG09iao1Yvr661CRZrhtzrGkYPso +/wAmjqHQgR5IzuRirYIyPQjBptFFAgoopeKBiUUtJQAUUUUAFFLSUCFoo4wOmc0Y/OgYlFFFADgr +MGI6KMn86bS0lABS0lKaAD2/WlABB9hmm0tAAfrnpU9kAbmDPIMig/iagqa1ZEnjdz8qsG/KgmSf +K7H2Olch8UOdCi6f8fSf+gtXXpXHfFI40KEY63S8/wDATUvZmlP40eFz78n68VAXY/ebPbmp5s5J +71W3cnjivP1PWVh7bHBwoV+vHQgVAMcVMkmxkfb90gjPf603AA+vFO5SREOh5wCehqJhg9asHOPa +oduKtMlxGDvT+eOtGOfalG3nnj0p3CwhHA4zURPOcVMuD1yecVE2CSPWmiWhVbpSjrnFNHHenAhV +69KGNCsc9vSm8YFLwc4pQB2PAyaBoUY9aliCuQN2Bnk1EAT0PNTKMY9utRIuKJAvHPXFKw4Oabnv +mnZY8Gsyxqjb/j9anaGSLZvGPMAZeeoqNuvtQvXOOaV9CXoy0nA4NSKQPxqKPI5PftUuQCR1wcVi +0NFab+I1lTYznIzk8egFa8xVgcetY02PMI9OldNAyqpCHpWrpe3IrJODWxpCZyD0IrSr8IR6kWpY +3EcHisaXvW3qK/MQO1Ysw61VJ3May90jQVsW/Fu1Y6dRW1b4+z1VboZ0fhZlzffOPWnwDJHpTJhl +zjpmpYAfrTfwlR+I0bW6Nu24RxudsifOMj5lx+naqxBAGe44x2pwJGR+lIehzWPkW0Otri4tXEsD +lJF6EVCzH1pwHfPNNIAOT1qkyRMnOR+NNzk8/SjjJx+tKV5PXjvTQX7CLgnA5FPz81NQshDKxBHQ +ikywx+dDQJllScYpW+Yg9ec1GhJPHPSpdp61k9DZaojkU7iKiwD7fWpjz179aZsOfaqTCwqLjH5V +KQAPQ06MBR7+tEp2gjp3qG7svRIgc9veowVpynrx+NNwMkY71ojJ+Q5QefTtUg4H4imKCMVJxgCk +wQvX8ePrRjv1pMccHFOGRwSMVBSDnoR0p45+6PpUWRjjmpNwCg9xQ0VEcoPpSgZPrTQ2SOgqUdjU +MsGKlSD69aYDnI/OnHJ7UKBz7UlsAgVf61Nt4468c00joevFSYOPfvUtlCccCsq6wJSBWoc8jrWV +OP3hxWtHcymQv0qS2BLADn2pjkrgg4PrUloDvGOtdD+EzXxj7jJOPTrVNzVy5655qk2CTn3op7E1 +dhUHPFbulZ2k8YrCQZNdFpePKJwc/wA6zr7FUvhZmXmPMY+5qGD74qxegeaeMDJqCIDcKa+E0S1N +EZwOD0pWyAOaQehxipNowTXLc1IT1564p8Y6Zppzk09TkcCqewgYDIB+tOQKCcUxiaeh9TxSa0An +BJYVLj/69Qqw9qmbBxn0rJ9hofgcHoBSOFYZFA/yKdg4OOMVm9xkag80fMvXp7U8Ec9s0wnoDycV +SBj+WHP400qfpmjkAmjliO1C0QhQDg4p25QuAaY6sFzk0o6An0psQ0+3Q80FA3bFPwMCo93U0hje +VwaRccmlbJAI6UiMBkEfSmMB1IxTyB+dBx1z+FA/l3piGsF4HvR5ZHPvSuAPypy7sdqVwGOuee46 +0w4BFP6kj1oAXGTTBCEgjntTVyOQfWlbPSlXr7U1awMDzxjHpTHCmnPnAOeaiGcg+lUkKw8ARrz6 +UpII96Dg4z1p/AHqaLiIgnFG0DP4AU/29T+VKQSD7Ypt6gU7vARhj05rHcYY/Wt64UBT39axZhtc +getdFF6GNRakDnPFT2pIkX61XJOfpV2yUGQVvPSJlDWVyW/yUBrHfOa3dQVduKw5MilR2M8Quo1e +uKlANRr1qdcda1kzKmtCFxzkUsY5p0lESHOe2etF9A5ffNizAwDxnHWr6gYIHU1TtFO0c4q8oOeK +4JPW56NtCNly34U9VAAAIzSsFz0wKcFz0HGakQq5wvYdzUMmc596nBI6e9RNx2HrTVhsbzye5pdo +xjsSCaRQTTuegFD0FuNKqMg8Y/SlQf7NGCeD609dqjBpJtlARwMe9MxhivfOKkO3oOKRcBvagnqP +ZML16Aio8Y45x6mp/l2nI70w4I/lRsxoMZ5HYUjFOnQ4p20hcVH0xn17U9AsOOV44GaFLHgc0ELg +epp6KMY71K7DYbMnI7U/HOOnHWgbc0px1Bo62EKcGmFiNw9qeuDznnNRuRk8HNN7ghjNnH1FP445 +7U07cgjrk1IdpHq2KL6DGjDfL6UoQZBzQqgcjNO96NxPcUDjJPfmiL5JBIR905IpWzgHpxmkPmSS +MSSzucn3JotoFx908UkhdFwpqAggc08jqB3GaXaw5P5VL1GiAfLuzTsBuRxmkYNuHORzT1C8U7XA +MAfhTlVSM98U3AJ4NPAUcihIQu0BQAacgAJ75pp7e1PUkcHFIBQewHelJGM9cdKNoJGO5pHO0bcU +3oCMS+I82qbbg3erV4MynFVXJyCT04FaxNOhqWKnGRzUN6xL4Yc1Z07O1vcZqre53nPr0rGPxD6m +PPxkVDGCTU05yMe+ajhHNd6+E4pq9Sxv6QpLD8qsasOgPPFN0kHj0o1ZzuIrhvebOprUw2HIHvW1 +YAqoH0rFd8kDsDkVuWCHYoIrSv8AChx6mmnK08ccHtQAoQBaQDqTyK5kriuIFy3HJNNK4zntTiDn +IFNJGDmny9QuNXHYdDRIADnAzinICc9vemurcH1NSktxkJBLc0rAdPQU7awGfU0w7Rz+dJlrUh3b +GDBc88j2pX8kodu4N6Hp/n8KbIwH3qX5WAx2qlew2hsCk9eAalA56+9LEqAHPIo5D5/M0Ce4kp4H +0qAZBx2qZ+vHSq7fLjHvQtdAEdlL1KkikAH8KqOcEGpomz9TV9ALnXNMIA6U8AEDHrTWBHHWkiSR +QMAenWkxtP6UiBwM/QmnDnNGl7CI3A4I9OaXkKOnSkcHpTSW2jFXbqIWP0z3pQvU560wNgdcGlBw +PzxSAOBnmlGB+XNNOD14Gadwp45yaVgHLkHHY1IT2P1xUZJGM/hUqq31GKaQmNUHOcDryKxdW+/+ +tbfQdfxrE1Ykyda1p/EJ7Gb1Bqewx5qgjvUIHGasWC5mXtjmt5fCzOK965d1cBQoGOawXPWtzWGJ +wueAKwnqqWxjXehGOtWrQZdfqKq96uWg+cYrSp8JhRV5GpdriJQeSRWO/Wtm9yFUZ7VkOOaxpHXV +WhYsR8+TWuAvzBh2x7Vl2C5bntWqcA9iDjFTJ+8xpaIk2YC5pCFAyfwpyZI9cGnMhqVpuDEVBj6m +hF3Mc8dhUu35T+gpgIGe3FDQIRhk5IphLdMZ9KeDnkcUqqSRQCFCgqM9Qacgxj+tDkhefWlViwJO +eKVx2DIzgjipCDj6U0KcFj3p67jnsM4zUvVjuKSMKKQZOcDrzSKT0zgCnqR0x3oAZxsP94kcUxc7 +v9mpmGeF4pMYHHNTd2KRC/z9Bg01wUOw44GcindCc+vWkYd+KLhYjYnrml7fSnCMnnFBUgZxn+tN +vUEg6npQy85HHanAdfbGfSgjqf8AJp9A6jRx09M1G+c/jUo2EYP/AOqkK/rSuBAV4PHNBJwMGpGB +zgDj3qNxzxTARc5wRQVPXvS5yOfzoJH1p9BdSP5D97oSORSEDBxTiePlHfgUnPTpjoKpMTRTugNh +7HFZGTnGTjrWpeEjOe/FZYPPTP1rogc1TcuwNjvwTuwKuIeD+lUYMgH2FW4+WAz6VhNanRHYuR5A +BGO+fxoYM/A4oRMKeSc9KdgZ9BSQMk27OgGcdu9NY5UVJtz09jSOMYB5zUt63KsImzGCOe1HQimq +c+/ang5Jzzipbe5SDjt1GaOgHqaGA5H50qE+nTip1QEeD1/So8P5ny4G3nJqwuM5IzSDDNuOB1o6 +DtqK8880heRyzYAJPfAp8Tc5/SoDlidvWpohxn1qZeY9kOwdzMOe1GCxyKeO49aVd1DWgiLDbuae ++DyOOTwKFzu6cnP4UPnOR9aVtB3EIyBilGFOO3rTctjI/CpACVz7VNxhHyDUmPkx0pCNqD3pykbQ +DwRS8wGOPl79qiOApzipnYYPFQttGQe1NICHg54yMZpoPJ9M09QvIB9KTAXHGasBUyD+tK5OPbrS +DdnkUrliMAVN3cbLdjzIuBXSQZCkVzenk7wD2rooDxgc10U1c4cS9S4vQ05D2po5Xn1qRAAM1ucZ +DfYEbY4+WvI9WObyb/eNeuaht8l/92vIdSz9qmz2YirgveF0KdFFB6+lbkhSUUUAOKkMVYEEZBHu +KTB59utJRQAUUUUALjGPekopRgEEjPPQ96AEopWIJJAABPQdqmuJbV9qwQ7FX+InLN9e3+etAEFF +FFABRRRQAUUUUAFFFL2oEJRRSjJ4oGJS5NJx2pfrQAlKAScDkmikoAKKKWgAooo4oAVhjA79x6Gk +60UUAH14qSFd8irnrn+VR1PaZ8+HHPzZxTW+onsfYy9a474pLnQ4D6XS/wDoJrsB2+tcf8Uc/wBh +Regu0/8AQTUPZlw+JHhlyg5YEck/pVPpj5sd6uz7cE+lUzg9Me1cB6opC0w9B6U5yOn8qOuABn1o +KQnX2HeoTzmrG3bzjrUewc00xoYMZwfSl4IJx3pemaQ8qPbNMHsN6LyOtRfX8KczY7DNN4zWiRi3 +qAPTincHn86TjqBSjJHAoKQYYk45PNKPUd6THNKq4pMaHovOT696lz0xyTTEyBg8mpMFgKze+pqK +MDBPPJqYY44qNV6emOaeo6+9ZsYr9vzoTjrQ2eKRdp9jSWwnqWUbOadkZ56dqZFu/DFPIOazdrgM +m27Tj8qxJOZG+prZcKA2PSsd/vke9dFDqRUAqcD0NbWkg7Dj61i+lbemZVfY1VV6IS6lTUid/wDn +mseXvitXUcmQk/hWRKcGtaRjWdojU6itmH/j2J7dayAwYrhQuABx3xWwuBaj8M06u6M6Pwsy5Mbj +itCF7QwIqqRJn5jWfJ941Lb4BpTV4lwbUi77jrTSc4BFP2gim4HXNZIsjHU/ypCDkCnNnPTmgYxx +x607isR/KP1pr+3TrUjD+I8UzAI+mapMTGDNHf1FOzgAADgmkA6+tUSiaPA59aeWPI49qr5KnGf/ +AK1SdOvJwKhrU0i9CQsSScYJzxT48EZPaoweMHqaVTioaLiyYlccCoJORTy3THSoX2qp+f5g2Nvr +15zRCIqkhqt7cetLgg/jTATg04Nnj860aM0yUDrTsN/Wo1PGBRuxwQahoq5IWxx780cN05pmcHOe +MZp6ttYMAD32npSasUnoKFON3GAcc04cg4GDUYySSTg1KvUYPFKRURyqcZ98VITj3pq+3fGKcdwB +Hr6d6zZoJuB5FC5zn1po49iKeDyPQc4pMCQdeRj0qTACk0zkqDjpnrTgCBj16ms2O4zGcnvWTcEG +U5/Gtraoz2GKxp8CU10UdzOZBIO9WLMYbjmq71dshzn9K2m7RIWshl1wxBzjNUGIrSvQhyehrMYc +1VLYzrXHxEdxwa6LTCBCflzxXOx9RXSWAYQZA/hrKv0NKXwMybxyzn6mo4Pv5FOuWBkbPTmktQd/ +b8araBpHcvk9Kl+U45xnr7VHtOAadghPpXKzS5G/HQ1JF83tTG5FOQEdG6gVT2EK6c0+JCT7U0hv +rTlLCpYWJVHI6Y61LxniolIzmps8A9+uazYxeP8AGnMWwB+tNQ56U44YEVFtR3I87cA08DJyB8vF +NIzjPTGKUAj8uaLgObgYpnPbrUjLn64poQ/iOtNCAZwAaVVwSKcccetCg7jRcAIHbv3qGQFcADk/ +pUxBHSo2B4oumBH0PTPUfjQvOc1JsyAevtUZGD0qvIBQy5IqQKDg9DUW3ue9OGcgD60NdQFbkgYp +hz+lTyINind8xJBGOgqIhuB7UtA6kYzwT6U4Hg560Hv65pMckH86fQAyep7/AKUoxnjIxSjPTPAp +33QrYHBFAiJ+v41EWU1K5A+UD1qJRk57VegEjH1HGKUZIB704qCOAeBTcN09BSvpYBq5yRT0Gc9c +96T5uBj1xQDjJqtxCTRhgAeRWJdDMzDjjA49q6Ecqd3ORxXP3h/fNXRSMpJXKbKc1qaZFlsnnpWc +eorb0qMtyPSqqv3SYRV2yvqgYZzxzWHJnmt7Vldev5VhvWlHYxxC0GL1NWkX5c9sVXTAq9Gp8snn +6VU2TRjoU5OuKdGnIxTJPvfjUtvywz603ohQSc7G3aD5RkdqurnHAFV7UKF6dasgcc9K4G9ztGMD +z+NOQHBx9KcR2HWgZxQAZPIqGYjBJp5V854qCUbiMURV2D2Hw5xn1qbaCB68UyPpz6VJ8uOPypy3 +BbEeAOtSKo5x3ppHv0NKoIP4UbgKwXjBzntSAH070pZs05VPfoTQ9BIbJk4A7Ck2nOalcqCBSlCe +/wBalspDCCV5HNR98n8amIIU0zjke/WnZiF+U/UU5cA+nFNHGAaf8xYe9FtQuOwv3j60zB7d+eaX +kcf5NGOfp2otYAUYGfWmsrbuakXOaHBOMdKAIQnf3p5UAYH0pygEihwc8d6AuKPu4HWowNze/WpQ +Pl64pFx1ouA4g8Ln8aZ0yemKOQeKcDnIzSBAFAOO9NYt0/OnhTnIPSmEsM54zS22GRE5JzTlyfpn +mg9fXNA4xx1pgOIA7ZFLnOB0oIOPpSqoPHpTEO27uv5UY5555oAJJx07U5R17mq3JHKOOOnFK4+X +PsaVDgfyomI2celZvco567GZCcd/yqvgFlA57VYuMs7c/dOTVeJ1SVScHhlJPuMZrWOxpsbNhHtQ +8c4Oao3v3271qWKmJQQQccgjvWVqB+diBtrOG4L4jIm6n2psOMiny4PNNhHIrt+yczX7w6TScgAm +odXK78VLprFVAHIOScVW1bDPkfQmuKC99m8tzJbBcY9hXSWBHlJx6VzKn5x9a6mxA8sfTNaYnZIm +nsy+BuGBxTV5464qRCdh/CmAgNn0Fcy2KEO7I7/SmNkDkfhTyxznPekYMc49KrqGwxGHPfFNkfcR +7UKpB96V1xgnvUvyGhByCKiJIyQOtWCibjsyRjvUMmRlfSpt0KRUk24IIoUNg8/SlcFuTximJkZH +41XQomQ9QOtHJOc9OKdGoPIpwHPPOKQmxhGCT3qJxlcd6nYBhSAds9O1CYGe69jzmpoQV+U/hUsq +jjHBpuwkjPrmr3WoXJ1JIXHSnZA7dOaavI29MVIcAjP1pozYqjAz1zTCcDj61InK/ToKYR0JFFlf +UXQjOcHd+lMYkjjj2qSXkACjAx8vQU2ykQoGIzTlHGDTlXaOO/Jp4HPvQkhMiAyOhwKcvPPpS880 +5FUZBHPWmwFwWwT6ipwWA4pgztp6lmWlfWxIzace1YGp5805PSulx8p+lczqmfOIHpWtNah0KO0E +dccGrenZ80DvVTtWhpSKZRmtp/CTHcdq3UZ9KxH71u6ztEnFYUnWrpbGFfYiFXrIfvF+vaqQ61oW +PDr9aur8Jjh1eRo3o4UegrJkxWrfbhtB7jg+tZb8nFY0jsnsW9OHP1rUEeW+lZ+nL371pr3bvzUS +fvMFohwGMAfjT27D17UIrcHv6U8feAPX3o6aEvcXkqCeBUZXJqZj8o+tR9AT1NPpqBCAR7VIOgwa +cFB/GgLnA9KSsAoIx2JNHbgcd6VVI460/a2T6ZqOoxAO2ad0GKbu9sdhS4GT1Kmm0xoQKx6djU3O +ApPGSfzpAvAPtQSPx5qEN6jWIwcUi4H40Koz9c0pBAIOB70+oDMA89Rmjbzx06U1S3JPSnA4Ge1D +Qx+zJ69KYQcfiak6qD3NNDAbtyhiwIAz+tCVwIcbif5UEEj0NSYbjAx60EEfL2HP5U7poLEWApAJ +P1oYAZJpWI6dveo3kB4PrS0GgON2T+NMLcHntTmwR9RiouR296olsVQBnP4mkyvJp2OPem7Sc47C +mAoXvjvxTHp5xyM9OlRuCc46UxdDOvGyCDWaOorRvMDOazl25OR61vT2Oap8RahwcCrsPyn8KpRY ++oHSr0BHpkmspm62LeRlT6jj6VIucE1GB0qZMdvxqLjAbsrmlYA9TxTgoHJ9KQkhQB0z0oeu4xi4 +PH1o4XHrmjDL04pSAMe9TbTQpMccgj3GaRjyB+dIN24evPFJz1PbNG4CqOTSFf8A61P5x6c8UzJP +BpWGN2oqnvipoTwKYVXJ7Yp6YGSMVNimTqFxk9TmlGAPXPrTVII469KX5j070Mm+pG7MCSOKQHcQ +SaeeOT1o+6QM+lDVwuKm77p7kH8qecjAxTdp4Oc5pW+Y59+KmzWg73YOxyMCkZ8Dd60wnJAqW6t5 +4dqyJtyMg+v40raBoJndt+nWo5R7fjTtu0DBFEmP5Ukh3K5Bzx1pqq2Qe1Tfhx3pmRng1dtAuLhu +tJI3pxQppuc9frULcou2IXeO3TNdFbkbR9a5/TwN+a6G3HKnHeumnoefiNy4MmpFx0PWk/yaI+W+ +tdCdzkaK+oBjC56fKa8h1Ak3MpPUsea9g1H5beXH90149fEm4lz/AHjVQtzB9kq0UUVsSLRQCVOQ +cGigBKKKKACijk8migAoopcnGM8DtQAlFFL1oASiilGO/oaAEooooAKKKKACiiigBaSiloAAcEH0 +ooNJQAUUUuT07UAWII7Jre7eaQrMgTyVH8RJ5/T6VXpKKAF9eKKKKADijikpaACpIS6vGycvu4FR +1LbEiaMjghhihbiex9jj+orj/ikT/YUC+t2n/oJrsE5/rXH/ABSyNBiPpdp/6Cal7P0ZcPiR4XOf +8iqjAbqvSsxPYjGB7c1Sc/NXAtz1B5AYUwE4Oaf5nbqKb1/pQUmAyenTFOTG1uB93j86Yv408HAY +EnGAOPrSaKV2RNg4zx2pj4xxTmJ+maik7EfpVxRM5aDSjhd+MjOM+9NLKelWCrRQuHGDKF2g9cdc +/l0+tVsDH6VqY82o8c9f0pwAA5pnQGnc45qWWmJnoD1pwJyMZ/Ckxzn04p20ZH16UFJMlVQeSepx +UiA5/M01ACBUgxjBrFs1Q8A4HPal+8f8KFOaBnnHasx3AgYApAqqRindKXHOB6UXAnX6Up9Omaar +MAQe1OyTxWbERyDC/hWLKrCVg2c5ramJ2nHPrWXujkYJJ8rDgP8A4+3+ea6aGzIqdCJTtdWGCQQc +HpxW/paAoT2wMCsGRGR9rDDKcEemK6DTRiH+dOr0EtmZmp/fYdP8KyHBZgFBJPHHetXUcb2+tVtM +u7azvFknBMeMEgZI5ralsc9bYz0+9gjHNbXAtsetZXmGed5SMGR2Yj6mtiVNtqrDgcgH3p1fisRR ++C7Mdup+tSw4yBULnk1ND2NOWxUfiNBCu3HJ70ck4piuSKUkAA5ziufU10I3I6+maExkj8qa5PTN +Juwau2hNx3UENnrSABhTSQceuaFfAosJsaeGGRnmnEAH8qYxxyOvehWzyT0NVYm6HMu0j0FTYjGA +Oagc5HrRvbHX0pWbKUkiRmye1OUnB78VCGJH40u7vRyjUtR2/Gc1ASX6etSEg8E0z7pwO5qkrEt3 +F6D/AApykE8etNBBBXvT0wMUmC1JMAfXPSkOD680E8gjqKYD+lTYbY9AAakxx39AaiQAkmpQ2c49 +aTLiwGOD361MCen51Giqc+tTgHrWcmjSKHKOBilzyFxTkX8qCAOT271ncu5GR1yeaVOuO/agYHOK +eFX+9jvQ9gHqv+NSgLznOccYqLIPGcnrUvXpxioZQMVAwuSCuTx3rCuOZSa3TjYTWHP/AK01vRWp +nPcgfsKu2PXPtVF+oFXrPgE9q2qfCTH4mR3ZyxxVFutXbgDcecdetUjVU9jOr2JIRkj3NdPZ4S2Y +eo61zUAyw+tdJb/LbkHnisa795GkF+7MK7b962O5pbU/MOvWmXPLnB7mnWwyfxq38A435jSySAOw +pQSQQO/NNJGPSnAHpng965TUjbpzT48D+lNfOcdSeKeo5ANPoA4KhOGbbwSCfYUkbD8aVsex96RR +2xS6ASqMkVMMryDz2NRKU4FTD3rOQ0KmR0pz4PJHWmAN1HrUvBXntUWAiCjt604cY96QYyvb1pzc +9KBki4we5pjZ79aVR8vFJw3U4Io1uIUgHqelDADp604Ko59aQntTQAAT1HtTZAB06CnAgHHakxuH +GRg0WsDY1ACO/GTTSuT+oqTcBkAdaQeppttARHGSafHsGfWn4U9O9IgUHnnNFwAluMVGQ2M/lU7q +TgjtUbDrUgRhR37dqCg5Hp0p1OBBxuHWncCPsQOxpTj0pXVVwQPakBLZBHSmBEyk8mmqoDDHapNo +YnqDTkQgkmquArcD603HXvUm0YHuabwO3TNJXuIZwRyPpShVx+eKQ549e1PQ92q/QQuMA+wrn7v/ +AFrZroAcq/0xXP3O7zGz6muikZvcrHGf0Fbujg4/WsLv710ekfdAx1FXV2SJj1Kmr4LVgSAZrd1f +O/09qw5etXSMqy90aPmb8BWlAR5RHpms6PrWig/dHHBx1p1RUVoZ0o+Y4qW2A3DPPSmSjn3qazUl +waqT90mEf3hv24ChGHBwKtLnow696it1wBU5GSWrg0OtkfPHHehiOAaVuW9B6UrYJ57dKdru4iM9 +Pxpjx/L6VKUGRjNRMexJIxVKK3E2CZVQCMZNObjp6c0iu7538kAD8hS56Hp7UmNAOOpqRc5Axn1p +nPAPOM4qQeg60tEh7jXyMg+vaplZNm3GWJBz6YqBiQfepEJOD2p2EDDpnrmgOx+vpQ2Mg5pMYI54 +xSY0Pbp7gVFtyec+1SNu6dhnmmjqMDPNDdgQEdPpUu0/L6D9aQ8HPSlO6nqKxI6DKj/YBz9aQIOl +PUeYgH/LRQePUVCpJznpmhq4JigA9vxoBzyfTFS7DtGODUJwcqc5GaQDAMHI6U4rkjn/AOvSAngC +pFVmYBevahtDG4AU59KQA4J60rngkU0ZIGe/WnoApO7HOB3oVQRTGG35e+RT48DihrQQ7H4U0+h9 +KeMEkfQ01lHzE1DWpSZGTweeMUITjmjbT1GBg0+gDhz1oO7NJgluDmngceuKfoSLwtCMrEjH0NMf +PamxqQc4xmqSe4iwF5yKinyqEZ5wamRSeefpUM4+Vj6A5pPVjRz8/L4PTJqFQS4x61LNzIW/WmAD +eB9KtbGxu2alYDjr6VlXrfO3fnFa9sQsBJ64xWNd53NWVPcXVmZJg5p0OAQT60MAMgjIx+XpRAMk +YrsfwnPH+IdFpoBVepyDxVLUwd5+prR03BQdcg5NUtUxvJ6HpXHCXvG0lqYoxvHHeupsMeXgelc2 +gDSDHHNdNa4VNwAAPHFViXshQVkzQRsgZH1poC96WM/Kc5pu3J7j0rnsO40gryRSkHAIye1BIY47 +UpOFPt0ql5iZHkZyKR+mO9LGdxOfWh9xo2GhFyDx370yQcfWplxjH41HJjg96lFFZoyBg803yjx6 +VZ7Zx2oQDafzqrMLkKjaMH1NJls5zUuF6Y601o+VAqWMAAR9KjOedoqYqoHGce1QkAnHOBQgGkZH +NPCgAH8qZhs4/KpFDAZNWIUhgxXHQinbc9fSkXJznin5HT1pkiKODsoYMqgYzzTwvcetBZS3I56U +rgQMMc44pqjC/wBae47dTTADtwB2p9NQHDaeTSjvjrzSRrvGM0Dv9Ka1BjRktz1qTYFpqAZz71K/ +AHoTTT1JYi8GpAcH9OKaNox0oBxkrmgVxxDiub1EYlYeldNu3AnviuX1FszN9a0p7j6FPAxWppMe ++Q81mnOM1raHxISa0qfCKOjZBqylZcHnHSsZ+tbesg+ac1iv6VrS0RhX1REOWJx3rTsArSgqMc8C +s1RWvpS5lH0p1n7pGGWtyzqBJI+gFZT1q6km08mshyAeaypbHTPY1dOzs3dfrWnGox9azNOBKYzw +a1UBA78dKh6MOg8KR1/Ckwd/zDsCPcU4KeCelSySySmLc2VjTYv0oTsrMnqQsMkZ96Q8549qkdPX +pjpTenQfQ00lYTEAKg4oXJHSnscDBHJpowBzSBjk56dqc2ccn60RhVUnoec0cZHapluNDPlHHUe9 +OUA896R8Y9KWMccildsomJLAZORjb+VMXnOc4pTxwOBilQYB54oERjj8eRSttOB2Hb1pzEd+B0pq +xh+R6VLYyMjP+FKeAOOKXyiuSaCcjb79avRrUYvy4/OmEgkbc9KcV6ZOKYRjGaVuorjwemepxS43 +EjH40KmQc55FPKqi4oYFcpjPSoyvXj6GrO3j+VQNkDb2H86fUCKT7ue9QqCc5AJIx9KtMFKkVXUB +Sce9Nah6gowCCee9OC46/pQNpxnJ7U/rxjAosgImAx+lMYKR+FTMqncB1qFzgfpV6EmVft796ztx +ZixPJJJq/entmqCgA1vD4TmqfEW4sY5HersG0e4NUlBU7TwQcEGr0SgEentWUjdXLyYPPapAxQZA +xUIIAwAam6hSfpWdtStxyncM0EnaRjvTgQRSheM+ualNt3HYh5PGO+aDgEYGcU/nqBQMFSBg5NUw +SGA55oC9RjApxX5fXFAyRzUMoQhccdqQZ3Y70pHzZPSlA+bj3oBMNp5Jpyf/AFqQFyenGelPC9B9 +KVhj92EC5+XOQKkx8uB94U1lXp6etOwuP9rGafqSRHIHPJyKQMD1ORmiQ4Unr3zVOOdC23HAJBpW +uMvoxYlsfKOBTJJASADTFuP4RwBxSFCFRsfeBI/lT5RJjgASMjpUhJIAJyB0qPGCT7U4kHI6d6k0 +HDB/mBTXyeCaFA4PTFTbFMbuWAC7cA9Tn0pJaibKzdSO1NwAQw70Pk5A4xSErtAzyKpCFUk0HrSR +7ufTFAxmsnoyy9Y8MK6G2JJHtWDZAblGK6G2UMSOnSt6Zw4jctckZp0Y59s0bcfSnx4rpRyFLVcr +bTc/wmvH7r/XSf7xr2DWOLaQ/wCya8fusedJ/vGrgveD7JDSUtHGPetiBKWkooAKWkpc+2aAEpeO +MUlFAgopcHGe1JQAUUUUDCinEKAuGySMkehzTaBBRRRQMKKKKACil7AUlAC0DHekooEFFO2sFDdi +SB+FNoGFLRRQAHGeOlJSglTkUUAFJS0UAJS0UlAC1LakrPCf+mi/zqKprPH2m3zyPNTI/Gi9tRPR +H2LHxXH/ABTIGhQf9faf+gmuxXrXF/FYf8SK3PcXa/8AoJpdH8yov3keHzMOR61UYktmpJi2Tg55 +qsxJ79elcXLqejzMkZu59aTdgDmmryCMjHf3ph9vrTSG5EqvwMcmnlwFXOcnJ/DpVXcQTnjipXYK +w5P3VPPuM0co1MJD1J5pIGHmI5XKxsHcH0BqOR2OPWkR4xwwypIziqjHuTKVxZGYlmYlmPOTUanp +706UNHIyN1VivHTj0pMEHnjFVaxCd9hRj8akUHv161GOozzT+hHrUstADx7dqfH8vWmY3dKlB4FS +zSLJVIB6/jUgGRxUS4qaMg8VjI1QuGGD3qzbhpGWMKpYngn/AD0qIAZyalVmXleM5H51ncq2gjS8 +8omPpUr3CvjEUajbtIA7+vr+tQHb2FCKSemafMyeW48fd/GnbSevY4owAfenEjjb0zUdB9SObaI2 +4rFZfnPetq45RifSsQ5DGuijsyZbks4PmJk5Plx/+giug09QYSfaufuGLTAnqEjXH+6AK6PTVxbn +PpTq3TimT9lsw9TUhj7mseUdq2dTB3nHvWPJW9LY5660CLhhWxc8W6/SseLG4Z61qTMDAo5xiifx +Imn8BlnJJ9M4zU8XQZ98VXOQcdqsxhiB74qpbChq2Tq47nPSpKgVSOacrEkZ6Vk0XcVm4qLlcHPa +piFOCPxqFwD74pomVxc5HvTRjPJ7Ugxk+xpMkVVibjmB4IPFA2gdTnNNLAr+NLg4U5wDQFxQ3OCO +KZIeR057U5hhVO4EnIwOox603g8nqRTXcGx6jIz+lGPypowvSngjYxyOoGO9IpBlRjvTGPzcc9DS +E805AOvfNGwLUdgcnnNSxoc/1pgUnrxzUm7CjHPWpZaB/lyDio8Ht0yKkODz1Jo+bjnGaSYuo5QO +nt/KnjGDnpUWcH6inq3GKl3KTJkAySfapl4IA6VEOQP5VNhQPf3rKRsmPweSOnPNNBP3cZxzSA8E +E05Sq496mw7iZBH5U4bO5xRtUnjHJoBXvSKFGc+hqRAOQTTMjOfU0oJB9ahoZOVG0jt1rAuMeYfr +W8T+7cn0rn5eZDj1regiJMhbqBWjZqWTA4IJ/Gs1vv8AtnitWyB2Ej0rWrpEiDu2VLn7xGKpsCCM +9+RVu4ILNVMk5rSnsRWZNBwwrpUC/Zj6kZrmoCNwwcV0hGLX8K566vJGsfgMCfG8/U1LaAbj78VX +lOXOTVmzBJzitJaQHG1y/tbAH0xSqev5UowOlNJ65rlsW2NPXAp6gdKacYBH60+MHPamwQuFINKg +Bz9aV8DkkUwZUg4pDJxGq8jk1IAMfqKYjZ4NPz0wazlrsNAGOeeae+SARxmo+O5+lS8EYPIqWBGB +3qRULe1MGM/X9KlXPGeKkbHBOOtMbrin7hyBUb5Jp2FceGyBntSAAk8/SgHjFJ3oQMSReh6UnJI7 +DPNSN84z0qH7jAChMCXGOe2MUgYdulJk4OeMetA6Y9etF2wBgByKRW496eFGMZ9KQhQfu1SQXDJI +x3pOOQaPlx6e9IGxnPNILAy8e9Iozz1NOPOCKUEcD9KAGlc5B9qjyN3X2qwQe44xzUexevYUBcj/ +AIgakXuOvUZpNopyEc/lVXBin0qPA6VKTtP1prYGGH0prYQzaOvFIVPQ0pIIz+NKpyCaqLd7gxMH +YfpXP3H+sYV0TA+WSB681z1xjzWropszS1K5xu9K6TSdnlHB61zeDkV0WmIVj47CnU6Ctoylq23e +frWFIK2NSJLde9Y8vXFa0jKvpEI8ZGa1UVTD7YrLiGTW0AohBxjpSrPVBQWhjyjk1PZBjIKil+9x +0q1Y8PnNOb9wcI/vDfgUhR9Kn2sT7GoYydtSIQM5OCTxXEasawOfpQAC3I7UrcEZ4yKXaOcEVfQX +qIwHXPNVJCoPHU1c7H2rPm5kJwcg1SvbUTJwowSMbS3A7ilxlgPSnKu3BPpin7eRngc4pSuxoaR0 +J5qRVOCe9Own8VPCkDpUBcgZMkZHenqCPwpCuTj3qRQME49OtO9wGFeRmjaCPfHFDZY1JjnPcUmC +I3GABQmOoFObGM8UJhsU79B2FwOQRTlwQaUEZPHQ04bOoo6gNx0wSD6048nPUnqaX5RxSqw6GlcQ +mTyKjYd6kZRnGe+c1A/HAOe9FrggA+bp1qYBQaYoOOeafzyKEDuMdBimDkn0xzUmcdacFQ9BVPsB +VkIz7nFMDEcdKnnjHJqNUB49aF2DzHK6cjv61IfmBz3xxUJ2qR7DFSnGCR6UOyEiNlOc9qcMkk5q +MNzT129DQkNtju2aeNv04pjHoMdacBx9OaTT6AOAP196Plx7mhSO30oDcn+tNIHoSL90H2qC6O2I ++9WNvc9OlV7wAxn0Apbbgc9LgN1zn0pE5fB9aGPLAd6bF/rAO3FadDVM6CLH2b9axrjY8m0HBJxk +9BmtlCEtiMdqw7kjcemKxpLUV9ynepFHK6RyCRRxuHQnvj29KS3PI+tRS4zzxzzT7fPHUjIrufwn +NF2qHWaaqmJjnsKzdRILMauWLkR4qjqLAs351wwvc6epmR/61frXT2ygxKD7VzcIzIv1zXU2w/dr +x2FVXeqEtiyi5QAdOtJg4z6ZqSJgBjpQCBke9Y2JIW2jpS9s4ocAN2601iQDiq1GNReTn1oY96bH +knnqDUpB/I1LuVoNUgdenrSYGakCjaf0pgAB69aTAY6g4HvTokADE9KVgOT3pQvDYNWIgcYZj14o +yTyeO1OcEEd/WkdTnNQ1qV0Bsniox3wR9ak+bbTUAxnHU0LQCFgc8VKi52j1NIVXnHXNPXvVoTYr +pxgdaYCcYpd5zgjt1qNjgbvTiqZJMrcqPWmOTuPQdqdHlgDSMAxJ9KVh3I26HHrRHkqc1Iygjjmm +hQP5076CBe5HpQDjqKOW4JoKgE5NHQBwwDxxQ4Y5z60m4D+VSsVKjA5p21EyBTg9z71NjIyc49Ki +4H07VKpJGSeDQ0A7Axx6Yrl7/b9ofHPNdUcbG+hrlLz/AF7Y9a1p/ELoVzWxoow5Oe2KyOcDrW1o +oOSRwRV1NhpblHVv9e1ZMmM1q6mwMzY9ay5cZJHTtWtPYwrLQjXrW1o/+tFY6DpW1pB/ekk0q/wi +w6JNV5kOPxrIZc44rY1Nh5nrxWQd27AqKWxtU2NfT12xZ46ZrWjGVx361l2Y+QVqxn5cnj1qL3YN +NDTw34VIoZfpnP407qfy4pynJJ6Ck+xLI25GT6UgwTyOM4+lSEAtjtTTH8xA6VSRIMwzj1phGCc1 +NtGRnrTT6nqRSQwUMOCODQVBJ46UqdhT9uec8mpeupRGI+Bnqe1AU5JqRvagfNt+lLoFxHHHA9M0 +BSPz5FKcEDHWjp15zxSbsxoaRyc8kGnrtReO9BXBJ7YpcnK56bRj3p76iGP9OTVbMmfzq4wyRg9K +hdOp6Y6UIZCzknBoYZIPpSlTjNOWNc89+KqwaD0IX+dRu+78DUmwqQPSmENjp7VPqA7IKjP4VA4Y +Gp96gZIzjtUDctkd+tNAMc549aiUAZ71NIuTkHvUe0Y5/Cq6XDyGr94ce9Stk9u3WkAGTzQ3FAmM +kcZH5VVlyQT61MeDnvnNROwAPHrVCexlXnT+dUUyWq7dsCOKpL1reHwnNP4i3DknNaUAHcVmxAnA +HGOtaUTlSB+FYz3N1exdjUEE4FSBM4JPGO1VN8m8DotX4m6cDOOKzvbYqzE2hcEDkUjE5AqyAFz+ +PFRHlsmlcojKgHk803AAIHSn7dzHP0pQB0GD60vMdxgUnijk4GecCnc89qcYymCR1AIP1osBGQCC +T27UzgY47VIcgdOKQZ29MGnYQ2ISHPoKlTAPPbpTYxz1qRAuT9aTGOYZPXj1obcB7Uwluo6GngEs +O+OKaRJDKv7s5OMio7e2i2M2c1PJEXwCegPNOWPy4zx1BrORZQ2FHOOfSno0rsS3PFWxGhUk9fSm +4VetClIbSGQg7jStgN7U+IY7j6U1ipJ3etDF1FVlDYxQQWOBxikhBYkgcAUvQkCgZHIvamYIGQOg +qaQHjjpUZbPA/SgLjQcDGKEz1xx6Uu3Az0zSp1549KRV9C/Z/M4Pqa6Ozxiudsz84wMV0VrjHJra +mtTgxDuy4eB7URehpr4GD1qROcEiuj1OUzdcYC0m/wB015DMcyOfc16v4mkEdlNn+7XkznLE1dMT +2GkEEg8EUlLSVsQLSUoJGcdxg0UDCiiigApKKKACiiigAoopRtzyccGgBKKKKACiiigBaSl47Uf0 +oAOKOOP1pKKACil4pKAClpKXnpQAlLUzwvt3gj5Rhlz8ykccjrUNAMSlz7UlKOaACij19qKAEpaK +KAClXPUduaSnRMUkRwMlWBA9cUCZ9lpXFfFdv+JFbr63an8lNdpH1z6muL+Ky50KAnoLtRj/AICa +S6/MpfEjwO435P6moc+9TXHVueKrEYcjIIB6jvXLY7b2FbK4I5600FetK33SRzxUO5ic/hVJA3Ye +RjkH3p25XKlyQQMZHoOnpSfeHFIASKZN9QJXJ9COPakGMZJFBIxz0pBjjmgbZJJJ5jKxPO1Qfw4o +yBk/zqIEjn3p+QfzoaCLFUknPPXNPbDfWmrgc0/ioe5omNyw47VNHtpgADA8HI79qmUYxxiplsaR +uSL36dKeuQRmm44P0qQAnHt3rFmyJB1BHvTsnNMAxjFOyOprNjHYHJ/KnRHAH8qaMnJqWMZOcAds +VLYwbA5HrzQuck+tKy56e9SIoHNK4Fe5z5WMc1i5G8/Wtq6bKEdM1iDO4565roofCyHuPGGk9cmu +ps1Atc+1csnMgHrXVW5xbevy80qnxITtynP6iTvYe9ZEp5rW1EjfWPIPmrpo7HPXeg6EfMMVpz48 +kZPbFZsAG4Z9a0rggRD1xjFOfxIiHwmUQMmrUTYxnnNVT1q3bjPaqnsKG7JwMg+lRNuVvYVOANvJ +xSMh/SsUzSSGKygc9STTDyeacThsnpQMd+1UiGRFefwpjdMe9T4THIqMY4z0qkyGiMjByacG3f0p +TtPfpTDkn8KoXoOIwM1GXYcVLlec+9QyEZ4oQMcCCTTufSoVzxVgE46ZND0HHVDQvINTBV+XnqO1 +IAABng9KUcA5/CobuaJC+5NSDaOe1Q56jNP57DpSaHcXg+1DEjgnml4yD+lGQ3PoakBOMcflUyqC +RnNEce9uBipSAvHBqWyoruIu0cgmnoxBOM5PcU3HBOelSIp7VDZokTAJkcHPIc0quQu3YGA7t1FM +J5Jz1NKAV+lRdl2E9z69KVepz2xij0PpRg9T2FK47DgCck8VIf8ACmKctUoz9eakdwc/u3rn5fvn +3recYjYk+1YMg+Zue9b0SZMix8wrWt/lhI/2ayl+8PrW1bD9wWOeAetVW6CgtzMn5Y1UYCrM7Dce +3tVUkE1tDYyqtEkX3hXQyTBbXHtXPRY3D61oyzHywmeMVlVV5IqPwlFjksffNW7I8+1Umq1Z5B9j +VTXulRepp4A59qQ9OfrSjGARTSx7VzLU0GnbipEyTkVDzk5NPTdn60NBcsOBj3xUOeR+dOfnpwab +74+lJbWGTL0yO4qRTwRTExxjpUnbI4rKW40KOuAvJ6VIw4APBHWosnkevWpXYDgY5UZ/Kh7AtxvT +3OKf8hHDYIAOD3+lVi2T+NSfX8KF2G0SjjPv0oPr2pAQQKcSODUtO+oDs8+tRH/WDjIqUYY47A80 +7Ck8DnNF7CBQApOOtQuq7uB3FWW+7g8VDjnJ/OiIdRAowaTbgfSnDIzkcUgKng880WC4g4ye/rSh +ec8dc0rbSePxp6kDGPXHNN+YCFMn25pu1ckVIAOvXHemcZJI4qbdQGbSBnrTfmL8cU9j6GgDJznH +pmqtoO4Etjn0pADjA5yMUdOnrUiljmlsIiLEE5FCEBunfinuCx59abyMfT0qrdAuOYDqetRkD6c1 +KMHk9qY6ehxmhWAZhiDz0FIARnPSn9CMGl+UAE1S7ibEcDyX7Vzkp/eNXQSF/LY57GufkBLtnrXR +TJvqRjLMQAcZ/Kul06ICDOe1cynD8HHNdXYh/s/GOmKdTdIm7sYOo8SNjpWPJ1rY1HiRuayJOtbU +jKvqh8A+ZfrWu7YgA74yM1lW55UHGM5rZnAEK44wMVFV+8i6K90xpfvVc0/G8ZqpKOvrVzTx81Op +8AQVpm4ijb6VIgU9u9Mj6YqdAB25rkRoxjDdjnpSKMDPanbSSeacQNvHaqvZkjCCeBxVMxsZOPWr +25No/IVCE5J71a02EPaOWBzHIMOoGfxFKuD1NJknPOSetIMZ57VLvca2HcsRUjNj68E+1RpgnJFO +YgncRz70aC1IySSe9TfLx2qMKck9vSpwoHXtR1BjApJxTsDBB9KQ4B3HvTgu78aW4yBjyQOmKcmc +YFPKIATjJyM0qgbfegBC20DPNOGB35oKevNKFG0cd6aExMc8c0AMKs3kNtAYVicsxjVn9OfSq5ye +1OSaBNNXAHnn1pjsAadSOpPbJ4qUhjQT16cU7jOTSLnPPHHFSptxg80gGHGM1JEvftSNj6g09cYP +502wI5hjOAc1EEz9cVIx5JycUj5Az7UaCIdm4kk4p7YVQOvFNQ8n1FJM4Cgj86FqMiOHI5p4xnPp +UPGBk4pwbjJq0tNCWyVmHbOaVW+Xr3qAOSDg08MwGB0oeoInQj3xindKhV8DjJ9akDAn6Unoh7ko +5AqvfAiJsc8VOjDjNQ35HlN29KVgT1OaZiGIz0NPg3GRT2z1pkmFycde9LbSgPwBliPwrVr3dDW6 +TsdKVzbc/nXPXZG5h2roCw+zAnjIrm7xwWbH51jRTuRzblCXJ/Oprc4Priq0jc4qaB1BGfWu2S90 +5oSXtDprQgRZ9elZ962S3PSrUFwiRAbu3NZt7cIWbnvXHCD5jp9pFDLb/XKPeuqhI2Lg9ua5CzlQ +Tgk11EVxFgcjGKK8LyRKqJovr0zShd3PoaYJUKcEZpokx3rHlaKvfYVwdwzS4ABHpTWfzGAHapDj +9KaQEK4yvr3pZO+KkG049aSRdoGB3pPYa3EUEY9xTSrEnnNSJwOfwqMtyPYVD3KEZc5A49TSKdn5 +U4k9KUjgGraYrkYyQD60hBNLt49sUmalbldB2OOewpqgZx+IqUDjt60iMvfrTsK5Cy7Qe3Wmrx0z +xVhulMRMc9qaXcLjCPbrTdmePWpnGKQHHXk1S3JewkWV4OfSnOAG46dTSAMT17U847/U09biGMAB +xz1qAk8j1qcr6fjTdq8npileyGiFeCQelGCWOBwKMgNz+VOBGQM9RQ9EMQ9cD0yBT23FR61G33jg +/Sl5YYFUthWAA/gc1Mi4HbtUOcYHYcmrAHA5ptoQrkeU2PQiuSuf9a2Tzk11sm1YWOc8VyVyB5rE +dyaule+o+hH16V0Giou1/TFc6dytg54rptGwIXYnnFXU6E3umY2p4E7jsKynPXmtLUmBmfHrnNZb +kVrSWhlXegsec5rf0RQWPqM81gqRk46Z4zXR6EF+Y1OIfuhh9iDUhukfHbFZWPmArU1Qr5z47nFZ +a8txU0vhuay6G7ZL+7XB9K00HHIqhZIoRSOM4rTUrsqPNClciG3qOtSx7eSeuaE2Bg23ODnB6Gno +o4Io1RIhCdaYM7s+lSEM2MU5UzjP1pgM+Vm59aR4xndmpMAHcKa4yCSR06UiREVTn60YAbjsaWNe +2eopxC7eOTSaKRG/Boz056mnHORn170BVbAodhgp+U0jdflPU0PjoKAMnBFRuxgxPIp23jOeRTPl +z2GKkyQcjuKNguMAxzmkb5segpcgDnPXmmueOaFuMi53YIqQkEY/Wo3IULipEdW6j0rRXYmNR+uR +zjNOwGAzyMUHaBupuWIz064o3F6DTkHI6U0gHG38qUtzzSsQB709AdyAsmSORzimuykk8njvTXYE +5796VwpXPX2p3CxGnpSu2/IPFIpC5wfwprOFoXcHqxQORzTJEJDZoXLH2pzNlCKasSzDuxgsM96p +L16VdvT82B61Wjxn8K3j8Jg1eRYiYoAetaFtiXBJzk1UiTeFAA7VfgjABAzmsJSR0KOhZORtPBHG +DVqFs/4VX+X5QO3UVYhZfmA61PQOhMecAUFAeadg8Z7UK3UYrNlEZjUA9jTDtiG7uanwCPwpGRXK +5ovqBXVtxIxing8Y7ZqY26gAgjPWjygcGncNCFlyGG3AJJAqE5IPNXtuRgjoMCoGiPVewpNu41sM +gUZDHt2qYKDnPQ0uwIqnjkZ+nNKh696EhNjEVQWyTnsPegD5uOvpUmBkAd8kmgKA22qv2EMAy1TO +IPKB3HzM/d7YqIqd/Ap+w9+KXQBjFPLVQBkEnPrmoCOgPQVNKMEVG67uh5paLQaBQFBNRsetW4Eh +ZkWdyiMfmYDOPwqCZQrEK25QxAb1H0pW6jT1sMQ4HrQgPJ7mndiOMU9DxU7FETcn+lN2cc9anUKZ +AT6miUHd+FK+oFcYxz6UxAWPp1p7kDIxTIjzz3NUM07NfmVjiuhtACv61z9gjM2e2a6K0U4APpWk +Nzgr7k54ABqaL5qifIPSp4emTXR0OZnL+NJAlmy9zxXl56mvSPHLr9nVQe9ebnqa1p7ClsgooorU +kCCOD6A/nRRSUALSUUUAFFFFABRRS0AAAIYlsYHA9aSiigAooooAKKKKACiiigApaSigBeKSiigA +ooooELSUUUDCl5PNJS0AFFFJQAtLj5d2R1xjvSUUAFTWmDcQDn/Wp0+tQ8VPaGRLiLaAW3qMH60E +z+Fn2IhPPsa434qEf2DAD/z9p/6C1dgWWP5j3NcP8UH3aHHkkj7apHt8ppdGXH4keG3SgtxxVTy+ +vB46VdmwDnr1qDjoetcl+h3WRD7np6UzHOR7058EHFQjcOuatEvQeRjH41GWbJ9s4p5YY6jrUbEH +GKpESYpwcnrQPlwfWkHPSkznj6U7CuBYA09eAKaVX60YHQGgFuTBj0FPRSeahG1cHr7dqnjIx/MV +nJWRtF6j9pzU3zZpgx+NLkA571kzdEykYHBp4JwPrTFbAx608YJH1rNotMeFI696l29P1pgXo35V +INv44FZyLQi8ZqVBgnr9aYMHPFPWs2Mcc5A9elAyaVvXpzSJz9aAI5PLDR+cP3e4b8emeaztSjsE +vZFspN9v8pQjPGRz1x3q7fMChHSsZM5+tdVH4WZte8mSLguldNCStsR7VzMYzIo9xXVRIBa5PpRL +40E9InNagcueKyn61ragPm6Y5NZT9a3pbHNX2JLbl1+taF3hUGPpVC1H7xfrWjflSgI9MUT+MIfA +ZPerUa5Wqo+9VyEcY/WqmTT7kitt607czE46YqI4FKOOe1ZtDbG9e3SjewOSecCl6ZHWmNgdqpEs +C2c03OM8UHoPX1o/niqJuxuRk8Z6U4D1o2rgE9acPzwaGCWojrx0yaidT6dAKsE9Tx6UhXgcdQaS +diuUhiUj6VIDTgOB6UFevFDdx2sIWXsO2c0hbcaPlw3Xik46+posK49RzkilzwMZHPamrkn2xTsF +s46Uhi/eBP0qSNCw/rTR0AA7UobPTt2qWOKNBRFDbs2cueAKgLdxyKhXnAqZcBcVm9DVagoz24NT +Lnj60zgdRUyMMcVEmXFEgGSTjnPSn7FPJFC5wG71KsMjgEDO8kADqcVj10NCAgk5A4FIuOOOaeUc +ZB6jrSAZ4BxTbGLgcZHJqRAMZ/GlAwP6VGOO/SpTuDG3J/dMMf8A16wnOWJrduOYjwfrWA3U/jXT +R1uRLQQH5q24H22+McEc1hxjLDPqK6SJFFr0zwaqruiY6xOauCS5xUHerVwPmbtzVfoa6IPQ56kf +eJI+1WZnQnCZ25OM+lVk7VLLkdfQH86mS1NI6IibNW7QjP8AnmqTE1cshk/SlU+EcJe8avAUdOai +O4nGM570uc5pG3BQ38OcZrmRqhMr1HBpyscEqKhJwMd809N7kKnJIo3GSjLc4IGKQNyAfU0oPy89 +qYpBJ6ipsBPG5+oqYMCAD6ioowucnjFOOCSR2qJIpMeT29RTt2VwecHg1XLEk5NO3gjB4+lS0A5S +u7H8OKk4Wq+7v9KlUggA00rILkwJBxStuPTjFMGR+dLu6DHNLQZOikAfnTuQdwxSIykD1zTjjI5q +G1cBX5HfPamtgD3NSnoBn61CVOaVwDnHSozlQP5elTYJA46GmlOTTTuCI5GwV2kHIyR6c05Xz9aQ +oASR2pyxrTsA/dxye2KYPn4FKyEH8qauFbB71IINvPOOtG3n6CpAFP05pPWqWwdRmSSBTgegPGTS +n5R6U3GTQgFyAaGUkg0hwDmnY6Z7U3oxDQGFDY7jIHNIwfk0buvHamrXAZj5twHFL0wMUKc54xRu +55ByKpeYmNmYCJuOg61zkmWdvxro7liLc4HaubOCTjnNdMdiI7kcefMA46119iuLUE/3a5KJV8wZ +9a6+0OLYfSieskhaqJzWpbfNb61kueTWrqJzK31rLfrWtLYyr7E1su5h9RWxcIREMelZVj/rF+ta +9052AjuKyqv3jSkvdMaTrV3TshqpzbS3AwOK0NOXPPpjiqqfAOPxGwnHQd6nj3E8+lV0JzzVpGP0 +4rlSKkMcMpwPpmnbVI+lIQcmlG4DPbPNVckjIPfgAUzAA/OpWBIz71BhuSPWquCHpjAPalkxxQgw +D6dqOpz+VKOo2KCFB6daXcQM4yeabw3B5zTmBXp6UbgIhy3HHap+fXmq6cNgdzUy7ue3NFrCEb0p +/IXJHHIFKI8+5pSvIFJDI9xxSrnsKTy2zkdBxTlUjketIAH0qQDcvoRQIzt3vxk/KPWn4jwSNyt+ +YP8AL+tWiWRupwaZzke4qTk5zzRgAZ6DsKnm0GkIVGCOeKXAIzmk57mos4JAbNK4+oOR0HanKzYB +7YqvNKgXPQ5qMXBIOKpR0C9y8GVv50F1A471mNdlCetI11kfeHOcj0qlHXUm5fL9z2NMkmDHAOBx +wap/aeByOtRvPjJHWi3QRdL4yVqpLMQMt0qEzkg7arSybuCaaiDY/wC1E9uM1J9oK4HaqLMAetKJ +FAGOTWliLmkk2eOmKnWTIx1rOibPfBqdZMfkKm2pRZSYcjHfFTq/cVQ8xACTgVGL6GPIB5HemoXJ +dRI2UcNx3qvqUg8o/SsttVVR8vUVSuNSluAVPGauNBmbrpbDGm5ZcblbjFRQSYcGoMqeSetTJInb +2rZUtLGMq8r6GjNqzGLy1GKypJZZDnGadkENn1pCVTgVSpxWiCUpNEOxzyaT5uCPypS/U+tSLLGo +HHrVpIwlJrYcn2k9M0pt5SeT1pyzA45wKlMygYH0q404GMqtS5V8mVDnNTrLOvIcgUGTdnFQyFgO +tKVOJUakr6lyLULtfl3kiryX9xkZJrCTIORV6Dfxx3rkqQj2PSw0m3qzXTUZ0IJGasf2smACCKyg +2Rz0FMaRMHH5+tYclz0ZKCRuR6pb9zirH22OQqQ3XNcqdnXOCacpkBBDY5qvq/Mc7lFHXq8ZGd2S +OKaGy3SuZTUZ4upB64zViHXEGA/BzWUsNJbE+1XU6FiOox06UKMA1nw6jBN0YHNaCOjjAIzWcota +Malcjz68Uw8H+tSN6+gqvvbdzU8poWSDgEYpkYHJ96b54AOafGwJ+tLW4dBr8D61JFjofyqKVuOD +To8ADPJ6VTAfJj8KapU4HFJLnPSmkben0oSEPUjceBxSkk9aiRiCc+tSBuoxVaCEI2A+/OKiOScn +vUrYbAH3un51Cqk5xxmovqVcF+Y5PU07YR19DiiNMEk9ulKV4z0B5p6CuRfLuJoZz1HakZRuAB5p +xUGmkDFjUkE96lGRgVGN3AHNSru44FPdiYsv+pYdCAa5OZisrYJByeRXVzYELn2NclKf3jfWtaW4 +LYazM7FmJLeprotI2/Z2yD0Nc3xuGetdNphC2rHrx0qql9BfZdjB1D/XOAKzJOtaV/jzW+tZknU1 +tS2OfEbD48V0miqyF9w6Z4rnIwBgda6LRwxDH65rPEbGmH+EraoxeUnFZ0f31rQvwPMbPrVGLHmK +Pepp/AayWqOitRlFHtWgFG0Z5qlaK5VAemK0WUKo+gqIu5Mhi/dx0NPUYUAd+aYVJqVBheBzVMkA +uBkfjTVJ3VJyOvGeKB8oIHQHNLoSNAJ4x0pHBPHY9qeBycGmScHHSneyDqKoIPAoYbDk8e1OVxio +yQ7c1D1KG5U4pVIJxjgZoKkA4GMUi55FKWo0O4yccjJ+tR5O7vTxlRTUJxlhj3oW1xjRlmIHSntn +qOtGMn5eP60oBzz0oAaM9D1pWUEEdxSHBI6fSlORg470vMZXYvk8cVMqYQY60fLnp6U8k7fxrSPZ +CZAUNIivnb2qU4/wNIMg7h0FF9BW1CSMKozVdiQAPepHZycc+pqJ+o9qLjsQMoySPWjAKgdKl67s +Dk1BJ90+vamhDGX5highi33aeij5eDmnhvmGfaqSJbI9u3oDioWLbT+lW5F3AkcVSc8H6U2uwm9N +THu8Fz9eahReamuvvGmxDJGa0vaJEY3kaFogA+vStKJQATkHqKowD5e5Iq7BnjPBzXK3dnS1oO8p +uW6VPFESM+tSMoKD6dKkRTszWjaMkmLjaoBpQpOMAnmn7eFBpxB4Has210KIlGCMAHilC/NyM1KE +AwPWnbAPyqW7FXGAZIP6UKmckg1IRyMfSlQHGPr1oe4AEGD6cUxohjNSgHpjg0jht3PbpUvzF1IJ +IyVJFQQo/O735q8WO3pUbKD0FHMmx9CJFBHNOGQeO3SnhW54OO30pABz2qiSNfvtkdTTgAXA5wTz +SgYOSOaeMc8ZNPoGpWkQ7gKaYyGGec1O65bJPWmspz3wKmLKYkYt84nyFIblfpx+tQFe+Km8skg4 +4FBTc30FNvRIS3uQyAcccd6eqKMcdRQ6gtj8qkMZAx3qfIoEUdf1qN+pBHtU4VwOnaomDs2D0FTr +cSKkvHb2zUcUZ5x1zVicYGO/WowQoyD9atajdzSsG2HH410Fs5ODiudsVJcc8V0kC4x9K2h5HBW+ +IlOSx9KnQgjjjioV5apU3c4rboYM4jxzjYo75rz813XjiQHaue9cLW1PYUtkJRRRWhIUUUUALSUt +B5PpQAc/lSUUUAFFFKOeM4oASnyIY22kq3AOVORyM03ikoAKKUYyM8ikoAUEjp9KSlpKAFJJOTya +UeXtfcDu42kdPxpKKAEooooAWkoooAWikooELRjrSUUALSUUvagYYP59KKKKAEpaCCpKkYIOCKKA +CprYnzkJyTk1DU9qQJ0x3yoz7jFOO6E7W1PsJlDj3HIrifigwfw/bPjG+5Q/mpruMbhgHGR1riPi +riPQbVAOBdL+imkv8xrRr1R4RcNhsc9arhjnFTTgbv8ACq4znnjiuWx2psH2gnnAoIU9OnSo3JJw +OmCTUQZwRg9s1SiJyHsrLgEds0w4xkVJvDgbvpTducYpk2AEY+tRjrUm0n69abjnGDTQNCZ4HrTl +GSPwpSucgdaXOAB3Hei4JWHbewqVAR3pigYzznFLznJ61mzVK2pMGB460obPse1MAHUDipVx1xUM +1VxVBI569anG75fSmLt4qQKeRmspM1SJFb/69SDBPBquMg1NFk81m0WTKBmpEAAJFRZOVHFPAzj1 +rKQ0Pz8uKbnHA4NLtGBSYwDQgKl6SYzjvmspD81al5/q+mOtZkX3q6qXwk/aJYgTKM8ciusB2Wft +iuXgUeaB711UkZ+yZHYUpazRNTSJyl8wZyM55rLk+9Wje5DVmOcmumktDmxDRYtAd61evuVUD6VQ +tThwKt3vSlL4wi/cM8qVkKnAwcGrkRUDGR7Ed6pjk1bhAxiqnsRTJsBdpznPWkIBHTIzQc4HfmpA +pb8BWV7F2uVmGMelNAyfr61ZaE0xosDI9apSRLiyLaMgZ4z3owOMZqQITnA6mjZhumKdyeUYFy23 +gZ5yTxRkU/YehoEZbOKV0PlI8Ec+9O81c/XikYcYJ/GoGzmqSuPYtbcgkCmkngdO1QJIw4qdJADu +2hsAjB96VrDunsRdz2OaVQMNu3dOPrSqB1HenEZ49KdwtcdEMDn8qU4zgcilVMEZ4pwUkknFQ2Ow +ig8Uqrz9e9OABPrTgApJ/KpbLSHqEGe9OAzgfjxSIBjPSplVQQQc1m2UhAjFefyqREfvnik5HTnk +VOpJGKht2NEKmQuT+VTb5SmwMdg6LUeAaeoxz61m2ytBnPSjbx6U4qOvUZpQfap1QwXcMk4/wppG +D0NTDBprLzRcZDct+5/CufYAmty7H7r8OlYgGSa6qOxDQQgGQZ6ZrpFDC2yPSuetxmUDHGa6OT5b +bA9KKr95CXwnOXOCzVTIGat3GMk+5qoeDiuinsY1tx69ae27FEIy1OlGBQ3qCWhXbritCzHy8daz +D1rV08F8KMZbjmlV+Emk7tlnI70jyyGMRliUDEgds1K6ZXn0zVcsoHPFc5t6jrd4BNGZ1LJn5hSj +Zk7chcnAPXFQYYsSKfkAL2phcnGfwxTRgA4+uKajkjnrjinAH9KnYpskWQ55x7in+ZgYBquYz1/G +ngHpjripaRSuSZOaUHOOMU5F3HkdaUpjIP5+lTdDQz5cE55qSPrTMc4xxU1sVjkDMuRyMUdAYZIb +HbuKeGyMmkmwSWAAyelIozn6VLQE0ZPGBVg5wDjNQqpAWpg3GO+OKzaTGKu7rQS3IHNNBbr3pUYD +B6UrJbjHAsOMHjrTMgN7ipeAMnuelRHaST05piYh6HikH3hUm0lelIEwcdatiFb+VQM3Occ461O2 +enTPNMwpwfQVOo0Nzjr1NPQjA7c80xlHXPUU9MZ5HUU2tNAGSuN386UEEcU2fZzgYNNjPQjtRoCJ +SCSKcO1NDNx0qTqB2quhLGsCBg+3Woz+gqZhkEE+9ROuP5U7JgRruz9OlSHkjimLg1IuT16YotqD +K95gQkda55hhnBGME8V0V+AImx1rnP731NdENiYvUItpcfWutt8/ZCcc4rk4BukX6118ZVbT8KJ2 +50KV+U5O9BMjZ55rOfritO/I8xiBWY3WtqWxjWLVl/rFHrWrdg7R1xisux/1i/Wta84QEelY1fjN +qXwmLJ96tTT+gz6Vlufn5rW08DaOOpp1vhCG7NSPacH0qeN9pyRnB4BqCNME81Oq5rGwMaWPHpRu +4pTgn0pRGMgknFAhpGRmmBfxqwV4HTpTFO05HWqugEAI4FIUboeh/Sp/VgOp6UjITuHTBIP4Unpq +BFGBnHXIpr5H0zU4iZVRj90kimMMgDHeiwxqK1TovJpE+ZQCMBQcU9VI6d6BXHKM8H6ZpCCSB6d6 +l47+lMxmlcEJtHTrTFC5Oc9e1SY70q+4qdw2EdywACgDAAqM7h14p24sTgdDxRgHIx0NU+wIavem +s/ykdQTxUjK20Y6d6hZe360bIEMMnUVEGA4PXtUvlEc01kxwRxng0O1xlKcM30zUWdny+tXJIicG +oDCWOapMCvhmJ9KZIhPTFXXjBwBxjrUJRQc44zxTTFZWKxDquScVCzt0x+NW5EZv/rVH5IAyRVX6 +ktEIJU5+tMMiIW8xN4KMAM4wSOD+FTiPJ44qvcgLwec9aqL1JlsVWfqB6gn8KljAP+FREKTkVYh2 +7cnk5q3sTBNsc0nlcjpUZuXHQ855NRzk/nVdSxIBxzkg1pSgnuYYiUobE7SyueCcUzaS2OcipeF6 +1D5jJv2sQGHOO4967uSETzeecmSSBEGT/wDrqg7ljxxSyyM556elNBGPc1lOaeyNqcGviYAmlHGK +MjsKXJ61kbIlTPU02QEnj0pPMI70vmDHrS1uXzJqxFg0lPLe1N3Dv61Wpm0gHepXWRFjJ4WRSy+4 +yR/Oosig+tArIXe4GKaWZupoJOMU3imrk2RInqatLMQACelUwRRux0qXG5vTqcmxde6PQGovtFVc +mihQSCWIm2TtOWORR9ocHioSR2pM1SVtjN1JMlMzN1prPmmUU3qTzMlSeSMjaSK0bbWrmE/NyKya +KiVOMtyo1JR2Out9YhmHoT2pzzq54bvXJK7L0NWYb2WNuTXNPD63R108StmdQpJG7NT2+9iPSsq1 +v45RtJArSt2JyB0rkcHF6nYpprQtN8v0p0fPTpim8EYp0fGQaVtRX0FPIx3xUb8cc8VI+T0qKRWx +79arzBEZbB4/GpASRnrmo1XqfanggcflSaHceyqRnnpUa5+anMzcFaIwSCD1wDRbQQzndz6U8nIA +NIAAWFBHPFVZWEhmFB9/WlIOM5560nzEkDOe/wCFKSuzBHPb2pLVjuEYIPTrVoEYx+VVAemPyq2M +cdKLXQmRXZAt2B69K5KXiRvrXW3oXyG+lck/3z9TWtMa2GfxYxXS2Kj7I3uK5oD5hx1rqLQD7IR7 +U6vRCWxzl5zI3es9vStC8H7xvrWe/U1vS2MMQSR9q6XSARGzDPSuaiySK6nSUb7O/wBKyxOxpQ+E +zr05Zh156+lUov8AWL9auXYAc/WqsK4kAI78VMPgN5rU6S0LbFAzV/BIFUrUEIv0rQZiVTHpUrQx +kRuGAGKeueo49qNjNj2p6rgnPbih6aEjcUo44x1PWl4AIoXDZOOBVLYTGoMNk8daYy87jT+DnnnN +MJw3POcUeQDwAQMcUFAQT7Uhx29aVfm5/CpbsMZjjHpTFHJ9DipGGOh7U1I25PrUtMq6FKrg56kU +gxgg/hijoQfShSpPp1oQ+gq4UjtmkLcnHcU7AGT3ApmTz9aLdwEXA69zTiV7d80h+nTFNY4oQCcg +/WpOcZqLBPT060o3qCOtVcGheDkGkXIJB5oxtJJPvigEsTSARgeSKrSHHvmpJGdSAPXj3qNgcfN3 +ppDE6KR3NQS7l6cEgVIMj6e1RFSzHPTHetFsQLkgZPX2pzBeCKds6d6GUqMiqSIb1I2BwDyO9VXJ +IOasEk/SoJgCpAI6U7aXJbMa6PznOeuBToFGRn2qK4OZD9alt+opy+EujrI1IkB6VpW8BYVQhzxj +3rXsvlBzg1xp6nRJFkW42qR1wOKQwsMe5qypBFKvzDmi7MiARAc+9SMgqUJQy9Oc9qL2AgMZyD1o +ZTuqcoWwPSkdCpGDnkUWuO9iJk4B5wKcCABxT2UKAT37UjAAD096YIZyuT3NJyee/XNKeNw/LNPi +GV/SoaKImQlQR0zS4IB9BUuAOvbpTCAy8cGp2Fuxi5HI45qLGWx2FWUXd8rZ460wx4JOOM01Ju4N +akaAM3INSADdjpUijnpQFXcxqkJjCq5FR7WyRjtU7c7aTGG6ZzVdbiIdpBHHHejb8x+tSyKNwz2G +aaoyTmpfYaKzRsWp7DgfpQ2PMYfhTypH0qGyhRuCnvxUIXLEjp0qxtwCD3qPYF6Dr2qY3Ao3PHvy +agC8jPQirF3gN7npUGCfwra+g0aliPnQYwK6SMEKK5qwJ3qMDHrXSqfkGa6IJHn1viHD6VMPumoF +YAirAAKk4rU5zzjxsf3w9642uw8Z/wCvP1NcfWtPYc+glFLSVoQFFFFABS0lLQAlFFFABRRS0AJR +S8YIxzkc0lABRS0UAJRRRQAv0pKU4ycdO1JQAUUtJQAUUtJQAUtFJQAUtJRQAUuSQB2oooAVkdAp +YEBl3D3FLFK0LrIvVTTSzHGSTgYHtRQAUcUUUAFOQsrBlOGByD9KbT4lDuqk4Hc0JXdgPslcVw/x +a/5Atoe32of+gmu5WuN+KUXmaDG//PO5U/mDQuvzBatHgEv3j+NQHvzV2dOcYPWqsiHJrjvqd/K7 +FRuvSos888VYZRke3pULjk/gK2izKSYzcRUiMMjJ+lREGnDcKbRKdmT/AHeaZuLHJpobnFO4wam1 +jS99g7+5zTgvXikUHIqdU4wPpSbsVGLBBxinID3qREFOC4rJyNlEQbsDv2pwyTzS7PbtQAMjdkmo +bL2JEBPanYAJFCrzxS85FZtmiJNnTvmlTg460L2oPDA1HkUSqvP1708g8YpE5xnoDTyc9uKh9wEB +IBoDBiBS7entQu3OfwobQJFa+X93n0FZMYAb6Vr3zZQgVkxDkk100/hJS1LEBJlU4711coxagZ6r +XMWZPmCLjBYH34966q5TFuCP7tL7enYmpsjjr7lyfWsp+prTvc7mz1BrOJTLbgSccY7Gumlsc2IJ +7JQZFzVjUAV49eagss7xU+oHPah/GT9goJ1q/COD0NUF61oQ9B+FFQdK9iULkcinYxjH6VLhcZP4 +CpDFcui4VyikkYHGTWFzUiHzdenvUbKMkds1O0bJ95TnqM0sKoSSy71UZP8Ah+NLYfQrhVUEnrUe +8KTmpXiYkqOKheFlA71Sae4mmO82LdyaXcnOD/8AXqmYpO1EayZ5zV8i7kJvaxO6kggc1WZD71a7 +gdqQhCT6A0KVinBMo8g05WYHipXUZqIrWt7mTi0TRvxzxzT8kEY/Oq65/Lmp0K9Dwahopa7kiAnF +T7Bxgc9KYqjBp6NuGO9ZM0SGdD708jIGacVWnmMYGKV0NIYM8Y7CpVHcUmwZwPSpQDwBWbZSVhFX +vjrUyZHOfwFMTPepVUVL2LJVIHWnZGOKj7YqQbQM1kMOcCkIx/8AWp2Bxj2zS7RikxoFIxwaJDkc +E5ApQvBx0NMbjP5U7AU71mEbDHYVjZ68e1bN6P3ZJ544rGNdVHYT3JrTbvU85zXQXGPs+eelYFjz +Kv1zW9cgNbnnAAqavxi+yjm5jyfTNVsCrU/U/XpVYAk10w2MqquyzaoSwGOtOvE2/lVnTot7cU/V +ItoAxWXP+8sXKNo2MI9a07LcRxWcwO6teyj+QH861rO0TmpJ3ZaZsqB1OKpSF8f7ucVcYL2HSm+W +pzn0rC9je1yGLDDOKU4Y49KUDacU5vypPcY5V7+nSnD5SBgVGnHHY1IzxERhc78Hfn9MVLVyrkiq +GxipRCxA49qSNVwDznNTPNHCOazbeyK2Hxx+vPFPMJOTVQalCvp1xUi30T/xUuWS1DmTFaIj8aAu +ORwTTxNE2OQelTqE6mgaZX2FiATng05E2k9hmrO2NcEc0z5ST6e1S5DHdeD0xQAcH161IhwuBjrS +beSCcVHQBmDjH1zTtoHNSFQBimON2PegAUbh15ppXkk9qdGAvNKcN1HQ0WAE5BHTuKa3DcU9eo/Q +05gG7dBTTaEMK/L69hTAo7g9+KsAAAZ71FJjJOaL6jI9obNAB3ACngfl1pQBkkdDR6AV5RnPr2pq +qeBnnuKsvtzkjrxTNgB60+moDVVsnsKlXHU0BQKUDrjp1FUIRlY5OeKhIbOc+tSuCBkHiol3ZwTV +R1EIqkEA96cGIx3AOaQA5znvUiJxn/JoTu7A9irf4aFiK53jkVv6iwEZA9MGsEdx75rpWwQuSWan +zB9QM11TrstD9OK5a24lX2NdPLITacjqKh/HcmeyOTvMB26ms8kk1fvPvNVDHNdNL4TCvukX9PA3 +jPatG8PGBnGPzqnpigyc+lXb5SAe+Bk1z1HeZvBWijGYfN75ra09TsrHx8wre09RtHoadZ+6hxVr +s0Iojj+dS7do45PGKVBjHpS8DJ9axJvqRgAtyMU9QCcdetN5L57VPGF4/nVXQmhrK3Q8c0wR9qmc +g8dx3poBPNGmwIjUHj61KxwQ5TlicnsTTH7c4zinBR0FK4WA5YcDhTkD+dR7WPuKnKcdBzmlWMUO +Q0MVBjHbJqVUUjnkjNO4wfWmjINK9xWFOwZX9abwM/Sldk4xzTdu8c5zUNDI2POBTnB2cimgENU8 +8gMQUDtVK17CZWQgcVIVOSfWoYwcjvmp3BAAJ4qvUHuCgkH6UhQfWnrgE0xyRnnPNLl6iuNf7uKi +ALDNKz8daVWUA59aajcL2GMozwOlCxoRzSEg4x+NISMYzzV8ouYYyLk8dOajeMADIpSG2k578VDL +IMbe+KdguwPlDJpVjQ5I5zVbceccUnneWRzVct0Q5W1ZLJCV3HHArHvJE3Ee5qxdai5BA71ju8kh +JOeuK3p0GtWctXE30iKXA6fjU8M3y7SaqOGX8aljzGBkc4B/OtZU09CcPVadyxIQVGPpUPyoc015 +R261Gzk/UClGPIzatNTHPIx/OoGcmlJJppHerbvuctkthKM0lFBIuaMmkoosFxc0mTRRTAXNGaPe +h2LszEAbiTgcAfSkAUoNNooGLxSUtBoASiilFMQlGKdik5pAJRRg0UwCiiigAooJNFABmlGO9JRQ +A9WZCCOK1dP1RoztlORWTSZPWolBS3NIVHHY7iG7ikwRyOCKtI4Iz9K4a3vZ4CMMSBxg10dhqUMy +qM4bjOa5KlFx2OynWUtzYJGQR6UMeOO9RbwRgHr0NO7ZH4iseXub37ERLZPal9D6fzpRgkHPX1pW +A4qWrjTF4H+FIvAbryad069KTAwfamtNQEUK3J4PrS4bqD3qNOTkn2qUcEgdKLNaBciOdwzwKWTb +xgUrrljj0qMo3A9+c0rWAeo4HtVsr8uM9u1VkGBgDnirK+nQ5p2aFe5W1D5bYk9ccVyh++x/nXV6 +of3DZ9K5M8s341pSKWwLy44xzXTQHFnkVzSYMg+tdQE22O72pz3F0OXuWy7fjVJ+vPerlwRubHrV +Fuv410U9jDEMmh5xjrXV6aWFq+O61ykXt611+nACyY9Tisa5pS+AxLtgXbPuKr2x/fLxxmprzBck +epqKz2+coI+tKPwGs9zqbcdvQCrqr69BVS34x36VcwM1C3MpCFgM+9KQQM0bTk+1PCnHPrzVOzI2 +IipIBzgU6PGCOlOYA444oAGDijoDIjgfWgBTk0h79/SnKQoAxzTsArBOMDmlXG0mjAOcc1IBwRUb +DI1xnJ70EdR2FOwMZpvKfiOKlspakD5Ofr0pUXinFec9xSqo47ChFMQjK56Zpiqdx5qcBTkd6j2D +PBxRfQSGsCvHWmkKevfvSsFOecYGM007Vx0IouUBPGBwKQDjrSbc8A0/y2ximnqJoDjGSTimEHAI +4GTTn+7j0pO2AaO4kQsvYnmkcgAd6R95bI+7SEA8Z6UJroUMLDHSmcMTUjLyTntyKiB5+nWtIruQ ++48EDAzz60yRi2OeMHiiT17VXLMeM45q9kZ7u49x8vAxVKZmVTnirBLciqt2Bt9zQJmS75cng9at +QDDYPBHBqkRljVm3zn6Vc1oFF+8bdvg4Le1akHA46Vk2pJCgcVqxjjnvXFazOqTuXlZR06VIrZJq +qvygdvapYpFNK1yS31xk9OtO4B5qJW7DrT8+vtVWshWJAeNwpspd23MSTRkAAZp3BKkdaI+YmRMf +ujpQwAAz3qRkHWk27wGI6UOwEJAJ46k1IigD5elHlg9BT0UD24qdR3E2hsk4qF1yMVPtOcjvTHXg +e9ZSvcaET5Fz60xVZzzQWAKqaliGRx3pWaQxFXkj09KcFAJz70igByQcipxH1I64q4vqS0V1iXPX +GDSFfn4qcRMTQYzu596tMRWZSSPUUnzYJHcVLj5uaFCHPt3qZMaKSod5Y5zmpW3AqKmCnOe3amOp +ZwajQq4jj5QBzUIPT1watNGFTvUaxnnindIRlXY+YetMG0YBNT3IIfGOfWmYYhV9CT+daRuimy3Z +cSZz8tdChygIrBsoyGGR3ro4IxtwWCrjnNdFNnn1viGIMsO3ergwEOPeoEAyOeoqZgBG1apu2pzy +PNvGBJmb9K5Cur8VbpLhiOwJ/KuUransOYUlLSVoQFFFFABRRRQAUUUUAFLSUtACUUUUALkmiiig +BKKKKACiiigAoopaAAe/FJRSmgAoBxSUUAKdvYGiiigAooooAKKKKACiijmgAp8TBHRiMgEEj1FM +A5A45pRzRcTV0fZi9a5b4kRb/D0jDjZPG2PXORXUrXK/EydYfDsgPHmTxqP1P9KF1Gt16o8Fn4P4 +1WbBB4pl3cndwe5xUKTbz1xXC4Pc9OM03YjmwCefpVcnr0qaYsegxjPNRZyMelbR2M5b6DeDRjin +YFL2qrk8pCcZpyt0pWU5zSCN8MwBIXlj6U9GRZpk69jVpcccdu9Uo27VcTke9YzR0Q1JAfTvTvlG +ceuaEQdTUgjx1H41i2kbJDCc0oXuKQjA/GpASABUjsPXv6+tOwAARyaFxjBHOKXaSOtQ3qUhE3A5 +P5U889KQDNP7cfWpZQ5COAal5FV1I71OCCv4VLEOz2OMGkwAcD1oXBwCOnrTsAMQvfpSasMo6lyv +FZsPc+lat+o2H+9WUmRkV1U/gElqXLEE3A+tdTeN/o2M9BXMabg3Cgcc9K6m9jH2bA9KmOtR+hnV +6HF3h3MazHzmtO7zuYcZzWa/WuqlsYVy1Yf6wZp98WJpLBSXPqKS+JDEE/hR9sh6RKsfUVfiJ4zx +VCMEkCtGI7e/NKoOnsX7by9xdwGRE3EH/PrSve3bnLSnGBhR0x6Y6VVBLHnpjPFNfPNZLaxppe5d +lvyyxmMeWyZzjHNJdan9p4WNI1GDtXuRWYzkNgdcZ/Coy5NXZsz5kjRWVcc/nQXQ8gd6pKzcA1Yj +kGQAOOlZuFtTVSvoPUAnHSlaOPnGKeCm44HTmkcEcCovqWkVJVKVAzcZFX3VX4qjIqgjB681tB9y +JETM2RSA881N5RINM2EdK0uiWmBGR/OlXj/GgL2+makxU3HYlib15qZVXjP4VXXKgjnqCPpU8RBV +iWHGBjuSaykuqLTJlKjgdamVBg56VU6du1WEYkdeuKzaKQ8jJwOxpygjt701RtOTUqZ7ioYxQgOK +dt5GKcAMH1p4Ug/WpbdikRnHGKFDHNSbeM03pmlokA7k4HSpFAwBTUwwGaeOBzildbARuSpwO/U1 +HnnilkLNTVPIptaDTK1793nvWPIck1s35+QjpWKwLV00bWE7lix/1i1uXRxBjtisjTE/eqPpW5qC +ARYHHFRPWoJuyRzM3U5FQc5qeTgkelQLya6Y7Ey1Zt6RGWIqbWkVVHY8VHpO7ORTdZkJwDkVyxV6 +jLqbowSPmGK2rRCY17VkquSD71vWkZKDj0ratLRGcI7saUwcewoCN0zVzy+MnpVaVlTLZ79aw1bK +2ICBuOeKiPOFzjNNMpZuTScZ61sosyciQEDIpUVfXOeahZiQKBIVytNoFIvKwAx3xVOcXEz7VI3E +8AnH86BNmpv3Ljk9ahLld7FX5tDFkEiMyngg4PtSLI4xzWtLaxMDtrNlgaI10RnGWhlKDjqixb3U +itjPpWmt6VAyeeKwkO0/yq4pyOT71nUgrlwk7Gst/nGamiuVbNYSEg9eKmjmZT1rGVJdDVSN+OVc +nkH0qwGBP4VhxXPAx09KspO2dw6msnCxRrhR19aTCjIqKKViAGI6VI7k4GOtZSXUrqKR0I6UFVOM +dqUVIAvPpSAhUDeoPHPNS3EYglaMOr4AIZfekAG7HanbQMnA5NO+lhdSNSD7YpkvJ/pUw/IelRtg +mjYOoixgUMoUAD0p6bexx60j9R7UhjGxgY7HNMzzzz6GpGUcE+tAwc9vSqurWAAgxk0KARjpg0qE +ninFRmr9BEcm0IRVJWYE571oOoIOBVVgBniqSFcEz3/CpBkDmo15PtU4UnIzii9mBl6oSEIHpWIA +cZI9K29X4Xbj8aznNkbSBUUi5DyeaT0I424/WuiL0CFxlgA0y9OTXTXI2WoHtXOacp80d+a6W8jY +2x/3ahv3xTWxxt1gyHFVMc1cuPvN9TVbGTXVB6GNWN2aWmffFWb8gnrUekpknHWpdRUhu3TtXLJ3 +qHRFaIy8AsPeugsIyUU9KwF++PTNdJp+Aq/hSrvYa2bLyjAIzk1JtG3mlCcZ6d6cenPNTvuYkUYX +v1xTgCOlCoSwxwKmEfXB70bDZEV6n8aCMcYxxmpWQqM0zHGOuKL2EhHji2xujZLA5XupFIqcA57c +05VG71OaeVPOabBDVx9RTztPOeaMKOB0NIFOc4qWCEYMcY608KCPUjFHy4Gabu7r1NC3B7DSo3cd +DSgdfpQdvP50xmwCe4pX6DDufXpTJORSFjjP8VBZiBmrjHQlsRRt9qUvu6ZIpGx17dqZnaCBjrVc +thXHbxjnr6UyR8LnFMbqScd6azDnHpV2Qr9hpYbc5/Cmb2yAPSlPT9aEVeO9FuwrjxkZz6cVEGYs +QvepDu/wpI0O4A8+tOwJg6E4wartC3PpWgVULnjiqV1cxxryRkc0JNvQUppK7KNwyw5JNZUl0JmI +DcetJe3Ty7ucCs8Fgc9PeuuEeXc4ak3U2LrYbv8AWmrtTv14NV/MfGRSbmz3rZzXY51RfclmboOp +JqsXY/hTuT1o2HtUOV2bRg4qyG5OKMmjBpOaAH+tG0nP1pMjJxwM1KmGHHWpehS1Iih9KNuM8VfE +W6MewqF4WxuAzUqaY3AqleuKTBpzZHrSZrQzYlFOGTxTgrZxjvSuNIYOtDDFOcEc008j6CgGN5op +wyeAKCtO4rCUlOFBGKAG0tJS0CHhR1pxAyMexqMVNGjdfapZaIypphqywCjA61XYGmmDQ2iiiqIC +ikooAWiiigApc02loAKcjshBU4xTaKQJ2OgsdV3BVc89MVuQyhhkHIPWuFGR0rW0/UmiwjniuapS +W6OunW6M6VutKCevrUEMyyqCDnvUw/PNcj3OtMmBzndTAQwbH5Uj5BA9e1NDYyPXIotYe4igZIHT +NSAAZqMDPcZzUgVsZb0poBueeT9BUnyfjioeMgdalx8ueOKGne4Chewx0H4VNz8vGe2ahHBP0qZO +SOeKe5LKep5FuRXMDAJzXUazjyOOMVyx+Yt0zjtWkFuWnoOhI81frXVnmwxjjFclAp81c/3hXUzn +y7ID2oqWuStUcpOTuYCqTdauzcs2fyqk3Wuinsc+I3J4TyK62wY/Y2PtXJ2/JFdjbxhLAn2rmxG5 +vS+EwLsjcahtAPNU56GpLg4Y1ZgtjDFAZoiksr7kPPKY6+nOeKcV7hrNq5u2vQYq8vqao2yn8quA +5IwOelQu5jJg5JOR+FSpjbg8k5qByc49DUyYqr9BAcBetJxtI704gY5+lAX5enSly2BsiHzdcU7A +K5/GlwAuRx1pqYwc/jTb7ghVwCPSpVUt9wE57UnB4AyTxgVI5wu1Twcbvc1Nl1C5CVZQSRkE460x +2OQe9BGOh6HFR85HH5VLtfYpC5OffjNPUMxyeBSbecnnilU57c0XGO2Zz9Ki2NgnH4VLk4460mTn +r25o6AVnUk/zpJADjPQU8/M5xSOOcEUtihE2nH50/c5wOoHFQ5Kg4p8RyPTpxTuIVuhB9elQEEci +rLAcmonUgDNGtg6ld5AWPHBPSmEbm+U0OTuFKPXgHmhK42A6AH05piqC3PSpCvH1FCJxkdxWyuzJ +6FeQ8gE8DtUQQZBqaWMkk9+tR4O0dqbEiJxjJ+tUZiSSAc8EitGTOBms264zVpIh7GS33zj1q1AW +yB6mq2TuI9SKtxYyMc+v1q57Cpb3NqzQ/KfStZByPwrOsTng+nFaiI3b8649Op0NjjhscdqkjU4A +xz60KnX8KmQAdfSny66E3sOX5T60pIxx3NNLA8j1GacMfpUpNajvccM4IznFIC2RjrTuAMjqaZuA +JI7GpeuhVywpUrhutAI6Y4qFXyD796Y0uFzmqaJROSo7+1BIwPSqwfcQD1qYMuDk1DKHhuBxxSDB +J9qZvHpgZp4YZyPxqJXY0V5lO4EdhToiACO9Pf5y3pUA+8B1qLaFXuToRvAJ9KuqAMc1SVdrAnpV +tDk57dqcbX0JktCTAznrxUZJyc1MSAw/lTH68Vpe25KRWkU5yKRY+DxU5ANCnrWbLRWCHnPSmmPJ +71aIJPpTWTLcVA7kD7ug79qaWbacVK68YPFMK4znr71UdBGVPu8zk02PlxnpVuVBuqALh+elXF9h +vY0rdCSD2FbAI24+lUYYUEEUocE5wV7irSsCBz3rqhdHnVNywFHGPxp02RET7GmRndwKW7LCBvXB +rZbGLPLvE77rhvT0rnK6XxNPA5jjjhCOpYu+eWrmq3hsKe4lFLRVkhSUUUAFFFFABRS0lAC/1pKK +KACiiigQUUtJQMKKWkoAKKKUUAJRSngkdaSgQUtJRQAUtFJQMKWjJFFAASTj2GKSlpKBC0UUUDCi +g8migAp0YDOqk4BOM02nwjMiA+vP0prcT2Psta5X4nW6zeGLlznMUsTj8Tj+tdUlc58RGC+GL73a +ED/voUo7j6r5HzLdxtvNMiVgRWrcwxF8981ScIucdK5ee+h3xgou7IZs8Cos8U+SVT0qIYq4rQly +V9B2Qafg80IgJ9uKlwopNlxQzacZNC71DbWIDcHHcU7cx4xn0pVUH881NymkR7O4qeIDoaQKccjr +6VIqY/8Ar1MpaFRjYtooGOeM1IcgAGmQggfhUo9+tc0tzdEbKD93vTQMDntUxXBzjtSFRjr1pJjs +ImGHFS89O9R8Z9MVMoGFNS2MAMHHbHNIVYdO9PwMdcGlyc4qbgRYGeOpqyi/Lz6VHgA596kUvt4F +O72ENG0Hr0qRfUVGNxOO/epF44YUnYEVdRwV46Y71kjua0r8kjHUVm9Ax6Guin8IJF3TceeuO5Fd +NqDEW+Paub0gZmTjvXS6mf3G32pL+I2Zz6HG3X3j71nNya0bvAZhWc2d3NdNLYyr7mhpq/MTxgVF +qK4cmp9OOM+wNRX+WJz0FKL99kT+GxSizke9asajaMjPFZ0AyfyrUXhAB1zRVeo6a90cAvaoJXG0 +04yAHHaoGAYHHtnNZpalN9ivLIM+/akQgmo5Pv0BWwK6LKxzXd7lkEY96kR1T6jmokbA5IpyqSea +hou73LKSrkd6nEu4EjnFUWIWj7QQOBj1qHC+xaqWLMknUe1UHZic+9KZy2D6imlg3Q1cYcpLnclj +lPA/OnM644HTtVYdxzkVMOaHFIpSbHDJ5PPFSAggZAqEtt4HSkU8dOalotSLaBSCe1M27SD+NSwk +MBin+WDk1lezLtcdDhgM1NsIHB571EFKcjtVhOaiXcsT5jgY7VOvPB4pgGfoalXAOPeodhkqqcHP +404DOPyzSID64A4NPz1xUy3AMLjg9KYVHQ9ak/X2pGIqGNMagCn2NSEZ/Co+gyBxUqdzkc9qfXQG +QSDuKjTPJwMVO6sQfYVGoVcCq6AtylqBGznv6Vk5GCO+a1NSHFZBz+ddNLVBexf00kTBh2Na2pSZ +ix7VlaWpaQYrT1UBYx9Oal/GxStoc9KRk1An3qklJ7VCvWuiK0Mpv3kdFoxHPTpUOs7mcBck5qTS +MqM47VV1dy0p7Vz0177ZVR6lGI/MuMVv2xCoDnoOa5pHwwNaK3b7ML2q6sLtAqnumnPc4XC9hzWW +9wWJzTZJ2wQeSag83dnA5ohAylIkLLkUvmDkVXD8dPWms+7n24rVRMnMs+ZwPXNDMvWqnmhevXPN +PUhxx+FPlsLnuTbjmnAkc/lUPsOop4Yng1LRSkWUlxkGkuMSrlfSosDHGeKfHlTzk81DWtzWMuhT +8l93SpAsqitWFYmHTmlktA4O1eopOr3LUF0MuPG09DnmjdhsA85qR43jz+VV2wDjrVqzE3YtvHLb +StFKu2RDyp7VZjk+6cjNZm48E8+tWY5Tg9qicLlRl0ZsR3BAJqxHPk9ayIJ16E9xV2JlyD1+lcso +20NU0agcEHHrT1Jzn2qvG4IxU6leO3WsUrjJdwb8OKlA4qJQM896lB9aVtQZAecimFckg1PjJ6c0 +x1PaqWugDUXnHenEcjB5BNAxtyDQT1yPoaFG+wNjeCPQ0g4OO1KMkHFKoz1GCBRZBcUdsUuBn8aa +xOOPqaRGbdg9KvcRK2AOewqpJ14H1qyxYjkfhVZiN1NXTEIg9ParCgAYJGc1CPu5FTowYjimhMy9 +ZO1c9zWD1HpzW7rWAo96wgOK6EVT2LumD98vHcV0V+dtv+FYWlIPNGemRW9qhHkEdsVF/eYqm6OM +uTlmqsOtWLrh24xmoFwSPrXTD4TOduY3tLi2bMOrbkDfL2z2PvTdQJ3kYp+jYwc1FfcykjpzXK/i +N1uUAPnH1Ga6Gwyu2sBMmRf6V0liDtA7Uqz1QnsaAzjkdaDgDIHWpMAKD7VG+ABj1oRiwQ4OMdea +nOenpUCFuPSrGVYcc9qat0EyJiTkGlwMZHWhvm6DGBg0fripYwC0hIIGc0/CgZ7kU1+DihAJjPFK +AcE9DxRnuOoNN5PFFm2A1n7HvTenHvQ4Kn1FRlmOQB361ST6gPLEYFNbJHPbvTc5H+NOGNpHtVKK +JuR8ZH0oLY4Izz1pCwyM0MOAR/8ArqkrC3YF1FNcqcEfSm45DZ9eKV/YVXUnYV04TPfJB9agbAPY +mpOce+ai2EnFFnuAjfdFJFnFTiPI9ackBDD0piEVMkYHHFObbGcnj3pLqeO2UZ64rBvtXOCoPXpT +UebUmU1FF+8v1TcAc1z8s8srEk9aRZjKCWNRthVIrtpU1FXPOq1XKViOVgxA9uagcDJoJOSelJgm +k2XFD1Ixj3pQQeCPahUPfvUgjY/zrNtGqTERFbjNPMDDkVIkWOoq2kYIz7VnKdjVRKgtwwORgikN +l8uR9c1prCXHI59akSHnaeaz9q0DijnJI2Q4NIjEGtq7s1IPGDWRJA8bV0RmpIwcWndGlCGePIHa +g/ICOuaSzkCja3TFLM+DxzWFtTUz7hMEn1qvVyYggVUI5rpg9DGa1J7fBcVJMqqQQMVXhfYwNTzS +BlGKlr3hp6ETkuWJIycn60xRzg0vfigfeqhD44zmkkQg4q9FHnB9qSaJOe3FZ8+pfLoZw605hTnG +3ijblc1pcixGB2pMVLjr+lMII600xNAuMe/NTrx0qvwD64qZc8D1xSkOI5gAahcH8qtpCCPrTJI/ +/wBdQpFNFQjFJTiOcUuK1uZ2GUlOxSUxCUtFFABRRRQAUUlFAC0uaSigDUsL1oiAW4rfjnRgrA5B +rjQcVo2N+0XyOfl4rmq0r6o6qVa2jOpLZA7nNC4yc1BBMkqLg/jVhPu5xXNytHXzIQHGQfwqUEYx +n8arO+5uAeO1PP8ADtbPGT9aWpQ9cbhjtT8H14qBcZ9M5qck4OBSWgEvRcDk09FXioFyeSPwqxD1 +BHfFNEsp6wu2DpiuXVRn2rq9dH7jBHUVyqnqK0irXLi9CS1SN5cscYIwB3rpL7b9jUrxxxXN2YzO +vueldVqCqLLkdqJ7k31RxcuNxqoxy2KuT43Ej1qofvGuiGxz4jcsW4+YCu0UbLDnuvJrjLX76/UV +2j4/s9T3xXNX+I2p/CjlrnGWI9TVrS707XtpgHQnchPVWxjiqdzxkHrRY8zD61a+AuesrHX2qHAY +egq2q9OeRiqlqp2Lz2q0c5qI2M5PURVBbJ5qWmqB24ozzS8wCTACgGnbsKPwqOTqPyp+VOB6DpTS +uJgeUzx1qMdz0qTacHjigJwfai2oJjwoVNwPJyBj9aZz+NLzjJ6DtSAEnNKS0sNMY2fzNIoyeadJ +x065pq7fb/8AXUvQoJNynaPrSpyDk4NAXk96MbTk8AikMQkHj0pr9wD2oJBNDhcZFG6uMagAJJpk +jcnjnNOH3eMe9NfkjFLyATgD9aVPm7dKeQAMGkUKMduKaBiZbk/hUb5xg+tTOVAzjk1GfuEjg03b +lEtysUG0+3FR4bOD0q0uMe9QyNGOvahLuNsZz1zUgKINzHtnNZ11fwwA5PTpWHdavPKcIcCumnC5 +zVKiib9xeRKWww5qKOeJs81y7XEzdWJpUuZ05DVp7JGKrnUuQ6nH4Vl3mVGf0qG31AnhjzT55FYN +zzzipcbM0500Zq8tWlax7+2RWan3q2NPA3A0qztEvDmzZxhdvy1pxHg+/aq0O7A4FW1BPIH0rkWq +Npbk68D9Kazjnr05pCrBevFR9cDOK1UbkMkUjAx1qRmAGar7wg2jimeYDwT0pOOoJlhnJAB7A00n +ABqFmP504cnrUNFIlD460MoYgg9qFj3AgnkVIi8EN2qJXTLQ1cAAU8sNoA/WkKev4UuNvale4DCW +609XZee1M55P51GxAAGae+4FpCWBbA5qHcBJ75pyttQEUMvzIw9axmrlImO7aD7ipY2AApkmCB7U +0Atg89amHdB0LIYMc5zT8jPtUarhfengcZqru2oWQhHJ5powWHan44/CgL8w6VLGhemB0pDsDDIp +75yBTZMDrUvsIgdeeeaaRxUsnKj1qLIGcjtxTvskBTePczMOcVEqfNycY5q2SXGD0BNRmPqCKuLs +xvYuWxU4x2q7tDMMVnWwwRjitOLOT7CuuLuedPcsIMEAVDqL7bZyfQ1Mo6VV1fP2Zue1bLYx+1Y8 +s1t90zfU1jVqawf3ze5rLrpjsKe4UlLjJA9akubeW0mkglx5kZwwBBwfqKokiooooAKKKKAFGOc+ +lJRRQAUtFFACUUtFACUUtFABQRg4zmkpaBCUUtFAxKKKUAnpzwTQAlLRRQAUpUgKT3zx3pyuqggI +pP8AeOf/ANX6U13eRizklieTQANtDEKSVzwTTaWigBKWiigAoooP50ABBHXiiiigAGMHnGP1qW2G +Z4gehcA1FSgkHg4prRiaumj7NXNcz8SePDF3x0khP0+aumXrXJ/FF3Twxc46GaHP50QV2DdrP0/M ++ebu4ALY555rMlndySWzk5J9amu2Bdh3qmayjFI2lNsNxIp6nH4VFS56YqrEp2ZcikUfjVg7G49R +WcOMHNTpJzzWUo9UdMKnRlgoB3peAR0JIp8bhgAeOtS+QDj8hWLdtzotdCIB6fjUxQDp+VRhQp6Y +5qwACM+g6VlJ2ZrHVDU3ZAzjFWowrYyahA28ipkNYz1RaQj9CD1pqqeDTyuW49aVcYA+tTcpIaRg +57Zp6Hnnp6UuOBmhR/PrR0Ak2g/1pGAzxTu3PagrknFIVhPlbHtUqRjb1xxTYxx71IoIovpYGN8s +DnpTiucAehzSnBxmngfrQ+wkZd6oAIx9TWWB1Ga1b/HI6ms09D9OtdFPYOhf0QDz09jXRauf3P4V +z+ir++X2PWtzU2Ai5oT9+RnUTujj7rIPPrVA5zWhdY571nnrXTS2Ma25pacuc59Kr3rDeRV3TE3I +xqjfcSMKI/EyJ6Ijt/vCtLdgAVm255FWy5bj0qaivIqL90UqCQ3SmsQvHtUgTj8KhMRJ59aSaBp2 +0I2h5BH5VIyDHrUjhVU8dO9VmkwcGqV2S7IjYbW5OKUzbRgdqZLKDVcsTxWqjfc55TSehKZ26daj +Mjc4plS+Q32f7RuTb5nl7dw3dM5x1x71oooycmM3mlVyOuaYRiinYSkycSjvUwcYH1qmKlQjiolF +GsZssK4NSqy8571CgzjFTKqkt1rGSR0wbZYgkRSOOavpsf7vp0rLRPm45xV2BXGM8ZPesJpXujaD +exOygYwOvenxjnHpTgM9fSjAFY3ujQmAz179Kfsx2zxSIAetPbtzUrRjFCjoKkwc4HSmjHvTlAJB +PHWpAOuSKNuSP1pT9ce9PA4xih6ARsFB69OtOHI4HeoyC34VIpwMHtTasPcXbuHHQ1GynIGOAcZq +0FHAx71Gwy2B+NL0AxdUIHHrWQVzmtfUx83T1rKIABzzXVS0Q7aamjo6Hfx+NaOsY8sY+uapaMMs +BV3WAAAD6dKjXnbFJao5qQc4AqIYqeQc4Hv0qAYJ/GuqL0MprU2NMk2j5qq6kxZ29Ku6cgZMkAcV +naiT5pHes6esmKbsUM4NTxN6c1XwCTU6/IeeOK3lsYRbuXXj+UduBVSSdlhMBUECQMp9PX86vwnc +p3ckjFUriIjPHfrWVOVpWKqxurldZOMH86VQGJ7461Cw70mWBroscrk1uWHjDUBJFAI7iohOc1cj +cFQex6e+Kl3QKzKxZkOPWpUYYzkUk0ak7hUStg4o3RV7MsiQjr1p32hRVdmXH1FV956D1pclynUs +asE3IwevGa2IZSyjPpXKxyMMc1tWcvyrk85xWFamb0qlye8jDc+9Y75Bwa6FlWVAB61mz2eGJ/Gp +pzSdmayVyhz0wanjztpjArzx9KWMsx+hrR6oS3HKzbxx0FW4ZXUjJPJ/CqqK+/px6/WrkaNkZ9qy +qWNIpmpBJwDirUfPzelUo1OBj2q5EMjFcj0NLFhHPHGMEVZPPP0qmq/N96rSBsc4qb3YmhNvOT60 +P06U5iRx79qV/ug/nT30EQhMdqa4OcHoKlXDHk8UMFNJbDGdBwKF5PTk07AGTSDJ5z3ppdRMO3P/ +AOukyhY7QBntS/MM1GAd3HFV00Akck8Cq5U9T36VZK/LmoG5JINVHbUQ0AknHSpoyFK5HNNTHJP0 +p4Vc5GM9qFuD2MbW2yRngYrFCjnrWzrABOKyABjiuhMunsaek8uvHGa2tW/1HXkCsrRlBcCtHV3/ +AHZXuaxWsmTP4kcjcjnn1NV1HIqefO4g9BUS4Jrsj8JMleRv6MAFY1Xv/wDWNg5BzVzSYv3Z+hNU +7ziQ47ZrlT95mnUpwnMvp7109kBsXPHFc1bkebk9PWuoslDKMDg0qvxIHsXs5/wqKZinNTkYH9ag +lGcZPQ0lexj1FhYkc81ZRcLn15qKJdoBxgVMTgfoKaeoMYAM5/SkPByB1p21tpbjqAfxppJPWnYk +Tkr+PSkI59cUvTpQcD8aSjqNsQjnj6imHOc+lSAjGR2pmQfeh2uCGtkqag4J+WppjjPtioV4561S +WgDgVCsCuSQMH0puSMk0rN/PNDYKgnjNUiWQHqc9D0p3OAB9aQKc81IVG32Bqna90K5Hs6H3pFJw +A3PNSKAeT2PFNKKGyO1NEsNuePU0ghIbPeplQHj2HNTDZGoLd6bERKny5H41Vu74QDA/Cm3OoJHu +Arm7+9Zg3zZyTirjFsiU7Emo6gzisSSVn69hRJIXOTUddEY2OWc7snjm2jGKV5CR09qhUZNT+UMZ +PWqc7KxCp3dyILnmpFH407CgU5VHbrWbkbqNhygYGR3qxGOjde1QfN0I/KpoywGCMVlI0RZRVkOO +1TeWFOPSqy/e3Crq/OKxaKTJ0UFeKYcZ9PSmyGaLBUcd6iZ/MG5eopJXQmy222SMAnsaxrhAGOR0 +q7FOBwR14pbiMMuQB0yKpNxYrXM+VURVYelV/OyMHOasTj05wTVBsgmt4K6Ieg5iCciompwJ4p+0 +MDj8a02IauQDipM5GKDGc0bD2p3TFysZ3qWNSW45pgXmrltCSVx3pSlZDjEuxpsQMfSq5Jc89PWr +sqlAAegFVEHOa50zaxTuFG7inKoIAxT5VLyFvyqSONm6fStHLQjlZCYvlz6VBIOtXnX+Hriqk3rT +i9SWtCuAe9WI1H/16iCnrUqtjgetXISRbQKq/NUT/McilyxwDUo2ueABjj61jsWVTbnuM054dici +roRckkdO9V5iXfA9cU1JsLFJkwPembfwrQMCkgmmPB34C1amieS5RKnFBGBVl1AU8Z4qsRzz3q07 +kONhtHXilxSVZAlFLRQAlLSUtABSg4pKKANWwvmXbGelb9vL5i8Hj1rjUYqQa3tNvMqFPJrlrQ6o +7KNTozZwoIOPfNPTBOfaq4kLe3OKsKY1GBzxXPdXOoZjY341IGIyKjOMnvzTuvA64oSuxt6EyP29 +ecVYhLA8L171UQfMMVdt/lPXJp7EMzddlcqFI7VzigYNdF4gOFB44rmxzmqjd7mkdFoT2Bb7QmMd +a6nU2ItAOnGCK5nS1BuFB9a6bW/3dsAOhFE92QnqjjJ/vE1SPWrcx5NUz96umGxz4h6ly1P7xPqK +7W6KjT0C88c1xVoB5kffkV2F8yrZqB6VzV/iN6V+VHL3RyafpoBmUVHcnJ5qTTP9bkf5zVfYKl8Z +2NoAEFWFGc1FbgJHn1AqYHis09CHqwTCkZHenshP50IM5xUh45zzihK+4rld15GRSd8+1PkJY4H5 +0xVzweeapCJCdwxkjIpBuA4PoKXvTuGAA96LBcbuxkdeaQNk4P1pxQ4yPWo2wRUXKB+ecVEDzyOK +kcnHHQDmmDaRgdqT13GgZyCAOppXJbA9aYSM7iPoKPNB4FJK6G2OwoI9qQ8cGmjrjNOO3OCaFoh3 +GDHUDrSEbm9jTxs7UwcsFXqeKQx+V6e1AXipJoGjUM2OetRBiRjHHSqXkSNlYjoKjzlQT+VOk3MV +VOeeB60x0dBngjpwRS3KGnocdqybu5CHg9u9XZ5WRGxXN38xO7PrWkI3ZE3yq5RurhpnJJ4qvSnm +krvSsjzJO7uFGDU8casMmonXaaBDQSDkVY813Q/7K5JqvRQ0NNoljOTW5pqZYfWsSHrW9pmMjHGK +5cRsd+FWlzoIB0B6cVobo1AA64qjbAcVYf29q54mstwd3Y4X8aiw4J/U1LHgE96cRzwKq9iSuV9c +803ywuRVhxuApGj4GDntTT7gNReCT26U9Fz1608KO4/CpFAGKT7DFQc/UVKBxtpqe/XNPDE5IrKT +tsUG1cH261E5BOBT9wB571FIQDx1ApdAW40EYb2poRWG5hT1U4Y+9KuCMZwal3HezDbxn07UuAME +delSPGFQZPNNUAAE+tJRHckyCPmFPG3Gc1FnglqcuMdOKLJbCJgfl68U7cABioQT0zxTj8w4FAyR +XPJP5U5fvcVEnHvT0wTkVPQCRiSwpsvTmnMT19KZIQVxjpS1BDH+b6VEwbt0qbII9BTOeeaWlhlZ +jgnHAxSjDDIFBCsxxipRGuzjFVBX1HJqw2Dl1/GtWBcZ9cVn2qAvz61rRLycV10tUedV3JFByKp6 +t/x7P9DV9RyMVT1UfuH9gea20sYrc8h1Vttw5wO4wecZrMrT1gILh9ue+azK6Y7CnuJS0UDgg9ao +kSiiigAooooAKKKKAClo4ooAKDjjH40UUAH0pKWkoAWkpaSgBaKczRlUCphgDuOfvU2gQlLSUUDC +ilwePejpQAlLSUUALSU7adu7jGcdeaTnoKAClCOwZgpIUZYjsPegMwDAEgMMEetKssqJJGrEJIAH +Hrg5FADaKSloABjIyce9Bz09KKKAClFJT2keQqXOdqhR9B0oA+zFrjPizHM/hosh+VLmJn+mCP54 +rsl61yPxVkMfha5H9+aFf1zVU9yZOy+4+bLlvmbvVQ9atXLZY1WrNGjG0ZpcUUxAGNSBuwJ65qKl +zjFJoakW4ZeRWlFLuA5rGQnPFXIZNv5VhVhc7KNTuX3A7cVLGSQD0qu0gKgZ5xzSQuN2BXM46HVG +WpeH6UnI59+KeoGOPWkYbc9KxRo9xw568e9Kc7hgdqYp5GeOKkwaTKQ7pzRtwcA59qbyPWl57etQ +BMOgFK3qRUY6D604tnH86GhIcMHHPepFB+oHFQr8xGMcVYjIz7VLeo3sOAPBNL0pTkHjoetNfBU0 +yTLv354FZ24YOetXr4nzMe351RIOK6qa90EjX0JcygDjvWtrG0RnHXFZuhcyD6dK0NYBCUofFIzq +fEjj7n7xHaqX8VXLlmyfSqg6110/hMausjb0oYjb0rMvx++b61qWBIiPvWdeDLsexNRB+8OcUyvb +8HpWhDGHIznk81UtkLsAOST2rWiiCrnpU1ZWYQhoQuuMAfTNR4x26GpZGYNgH1qHPIx0J71ERuw2 +UfLg9OtZ0rgZHTPertzJhazHYknNdNKJy1p20Q0ncaQ0vejNbnKAx35oowTS/wBaBiUUuKbj0oEL +nPbApQaQ0UDLEbAEVciYYxntWdGSCP0q3GTwQetYzidNKRqWyDOCKmYkEdvaqsDjvVphkqQRXHNa +nbGzRNH82M1Ky7evNJHHwDUjIcdRxWPMrlsWEKf61JjoQajjyKnX6dKeiYgXd1zzTiMnHrSc4B7f +zpRjJFS7dBjcAkCn5IHApmQO/GakA4o3QDQuDmlQA8HnNNYEZp6D8KUrsaJ8ArkdhUBOckenNTY4 +64FRSBKjzAw9UbBB7HFZ30rQ1LBbjtVEDjFdsPhKS0NjRFy5JqfWjgge1RaOMGm6u2Tz26VnHWTJ +lfmRhSHk+tQrjdU0uOajjyG49a6o7ESV2bunKdnFZWpL++YZHJ69q3NLyIiP8msbVgPNOPWsaT94 +mruZgJGT0pxkOfWmHNNzXZY472LsE5U/jU8x85MjqKzg2eKswPuwh71lKGvMaxldWKxHPPemHvxV +q4gZCCO561CB2zWkZJq5hODTsRbRQJCnSp9uaZ5DPuPA2jJycd6u5lqHnEj8aYDk0GMjmkQjvRZB +d9QYkcelR5qYgscKMnk8VEAOc00JgvWtK0kxj0HQVnqOa0LcDH9azqbG9FM1IrjkCpZ3Qp7msxJQ +rGnvcbxmuVw1udkZX0I5Rn8+lJE+0FQeD1FG7dnA6nrQLeQkEfWrW1mV5omQ88elW1cYFV4LOY9R +irq2RHWsJ2uaqRLHIcDFXrfLDk/SqUduykdcCr8LDkAdMVhLUZOAcgj6VY+Yg+1QLkn371OADgVm +DEUkHH0pzk9D3NIAM0vXjpinbS5IxUxzQ4OfcCnjbnA59KWRenehajuRjOORTVBzjBFS7T9KMBeD +VqwhnOenWmgYPpkVI3Q4z6U3DE+oFCEBHHGagOCT2qyw+X39Kh2r/wDWq1qGg5MEcdKVl4/ChFHF +S5OCT6HNOPa5LOZ1bf5gHPFZwyBk1o6w/wC9OD7VmfMR+VbI2hsbuhqS4P61Z1zgAD0pnh9cnr9a +d4g68VlFbsiXxpHJzkZOfwpseD1p0oySaao9K618JLTUjp9JC+ScntWZekea/celaWmjFucjtWVd +E+Yfqa5I7mq3ZFBzIo57CuptNyqPfFcxaffBI711VouQtKr8QpaIuqMrzzxUUnBAOasDjHHBFVLg +jIz600Y9SZDuXFOwcY7U2ELtFPLDlTxQtUD00GMuQPrSjGB1p4VjyabtI6jNF9QEBBpr+9SAY6dx +SFSR/KmJka8jB9Kbt3Zx0xT+QOlINoHFICOTjj19aiAbAFSTKHIOeRSbTgDHetEndC6EILYOexoI +JHH4VLtXnJ6GkK+nTNAhI1x972p0oJOQacvuKTAznsK0WxL3IQDg+1LtC9cmpCgzxTWBHX1pImxJ +HwOOtUNSuzEpAPGKtmTylLHkVzeq3Ucp4qlHXQlsoT3MjFiT1zWbLIzdfU0+WY4Kiq9dUV1Zyzlf +QKeikmhFzU25UAC9abfQUY9WKojQEHr6+lBbP58Cosljn1p6Z4x61FjRMmjTdzjFWBDgEnPNLGjM +ox1BqysRON3GOtYSkaWKmPXtTzxg094mXnGaQKWXkHIApXT1CzANu4yBVmGU9D3zxVCRZFJYURzM +vJHP9afL1RNzZG5hzyKpOHjcsOnShJ2IO0/hUu5WADdetZ2aKRUfGQy96fDdspw3TPSleEp05FQt +CScj8arTYdiy6JKpYHBqlNayY37Tj1qYCRfxqcSNt2tyM9KE+XYfK9jGaNl7YpFBrV8qNug60wWe +4nA7Vp7VdSfZlNSMjIz61P8AZ1cZWpFtWU8jjk1cjiyox1qZT7FKBl/ZyDyPrV+0iwVPNTGFWHPX +NT2qsp6VnKpdFcg6eEMen4VRkgYE8YroHixggdcZqvJAoHIrPmsylFWMLym6YqRY2Qcd/wBK0Ras +xyORSC3zyRgdPrVc4OBmNGfzqjcKN2BW9JbjaSOuOKy5oGBPFaU56mcoFEqMcdaeE2YJqURADkc+ +lOdAwGMmteYhwsQ5OCe5qxDkEfiKZGhXgjtxUyDaPftUyY1ElYccd6BBtG48n/GnxLxgnrjNPbJb +aDjFZ3CxXkB4xxUcnIxgntU02SwUc+9OEQUY9eaq+grGdMMADpVYoc/yrQlhLvweOaheJVPqfWtY +yJauVGGB0xUZFWnVjgdaaYiOvatFIhwuVqKeRTcVdzNoSinMoAUgg5GfpTaBCgspJUkcEce9JRRT +AM1atJijjnrxVWlViCDUyV1YqErO51UL+YBg/hVlWPOKw7S5wBz1rTjmAUrnJrhnBo9OMoy2LCuC +cdOKnBUAH2qnE65/Q1IeSBkYqVuW0W42ycj/ACatQA9M1QjIBA65rQg7AVT0MzK11zgA+tYWRjGe +1bWuZyBxkc1hZO0/SqijS9ol/SCPtCY556Vva6c26duOlYOi589frW3rzjyk7DFKT1aJW6OQl6mq +hxnirUveq3euqGxyV9y5Zf61AfUV1t9j7IgIPSuV075p0+orqtSIW3QYrlrfEdVJe6jmLk5p+m58 +5cdc1FckZNT6YMy5Hbmr+wD+M7OAnyx6kCpgp2+gqG33bAR2AqznCkGosZtijjH9Kf8Aw9aZH83O +cjIp7cA+lHLbVAyFgMkHinKue/SkZQ3OelOSPAzuoV2Ia35ntSBiopT97Pqc0rAducihjsBc9B7V +ERjPtTwMcmmFiMkEdalbj2EZgFx3qIOOfSnFWbr3ppTB+lEkVEaeelRBDnPvxV6KzlliDxlCSxG3 +IBpg2ADOMmqjotUJ2bIkPHfrxSHPTvmn7D26UwnuOKh2vYpAFOOKI96n3HNNJdBUiHqfWlYYrsz4 +3tnvUbLxmgg5GKcykKPpSe1gSsR7iCCP/wBVRTMc4x05FOO4kYFMkU9e+aFcehTvD+7Jz+FcxesC +SOprob1mVSOtczctlj9a6aK1MK7tErUoz2pKmiXNdTZwJXBQ54FEitnkfWr0ajbnHpiq85XHHWoT +dxtFOiiitCSe35OK6Gxj6EGsG0GWrqbCMccVw4p62PUwq9w1rZSRVhlzjjvSW6cAfjVoQZIP5Vgn +oOVrlYRkbsd6URnIwTxVoxnv0oCgZx0FU2mtCSuYwM560MoUDjmrBXOMimuoJH5U7gRKpznPSnjI +Pf2pCvBx1pUBOOtJblWJRtAIPNHBU+9GDtz703jOBU6AhpXbtJ564pgUMxJqXDE8+lCr1WlZWGyL +BUYHekBwuO1SSABfWoGyBkjtSGP3MfepBjBHeoo/un2NWUUEZPpSaVhobgkHrgUsecZbp2p4QgEU +5AMU7oQwAYNKc447071xxTW6YpSsHQTJVR2FSLzz3qJvu4z1qSIHIH50rWGyf0FRsc5A69BUhBwG +9+tNZe470mkIjw238Kjww5qZVcj2ppB5FRYdymxKuMfjVpPuiqs3zOfY9RU8bKVAzWkYik9CzEoB +GK0rcrg/SqECgjir8AArpgrI4JtXJgD1NUtXbFs/bKmrqkdOtZuuOBbNjjitEtTPqeT6sB5rseuT +WXV7UpmeZ17KxqjXWlZES3CkpaKYhKKKKACilowME/pQISilpKBhSikooAWjJIA54oooAKKSl4x7 +8UAJS0HikoAWiikoAWiikoAWikpwOM8A5GPpQAlHPWiigAoyOOKSigBaKUsxCgkkKMAelJQAUcd6 +SigBaKVgFJG4HHcUlAC5J4H1/KnwIJJEQ8bjio6ltxmaL5tvzD5vShbky0TZ9kp2rkfipE8nha5K +gnZNC5x6Zrrlrl/iazL4T1Db3MIP/fQqqfxBPY+Z7gcmqpzmrlxuJ+maqsOfTtWKZtYbg02nmm4/ +GqE0IaQdaU8UlMkkX0qwCAevaqy9QanBOOelZyN4FgEbcZqWDqCOearKc1Zttu8fXqaxnojqpu7N +aLaijPGcUMD1PenLtwBTwRz61wXszsexBjB45FSg4zx1NMfAPrTl6U3qSh3HQenNIegwaQ8cHjIp +ccHJzipKHpgrg+tKQoyDxSRg5H605wOvf1pNjW4sQIz9KlQcn+VMTsD1qdR/KloJi9s0pUduBgmm +5ABp2RggelO9yTFvuG4qnnNXb/AbP6VRxwOfpXVHYI7XNzQQDJ06Cr+s7imB0qnoJG/jirWtMSD9 +KiP2iKnxo4+5+81VB1qzPkMwquvLV2w+E56nxG9p67oG7Dmsy74dh71tWOFtzxWHe/6w49axp2bL +noOs1ye3atcbdo7HpWbYjB/WtPOBgjpWdXWRcdIlSZcEmqeTznvV+QjqfWqcmBkjtVwehnOxRuCS +e9VjU0rZNQnFdkVocE3dgOSBQBngUU5RVMhIcAc07bQo5qYgEVDepoloVyBgUjAcY9Oal2nGBzio +2JHFNCaGYpKWkGaogevU1ZQE9c1WCtgtg7QQM1OhGMdKzka0y1DnOauK5UgcmqcRG7PTPFXI1y31 +rlqeZ3U+xr2pLqM9andFwv6VHaghQOnSrDqx7da4t3c2ZXCEZ9M1MpqPoc+9S/yqpK2wIdjI+goA +9ulPjHHPFO6Dn04pX6gQEZ/Cj0zTnGcgdqTaSfahSe4WFZVIyT15NCHAPGaeVHP4YpoB6d80r3Gr +EvBWoWU881OdowQeSBnI6VC/3Se+KTA5/UceYcdelVOMA1b1EFpDVPsAeMV2Q2LWxv6Km4H6VX1o +bGrQ0AZRjVPXR8x/Ks6aWr8zOTfPY51uRkUR5yB70khOcU+AbmH15rq2QlrI6GxVhAT0HasXUQS7 +E+prqbBB9nIOCAM1zWqZ81hjHNc9F6ikrtmSQBTCBVkICD61Gy4B/SuxSOWdMh7ipYj8wqFhzT0b +BBzVPYyi7M1lj81MdhVea02fMPWpLefaMVdUiRNuOTXJzSgztcVJGKfkINJv7GtG4scDIHGazpIW +Q5rojJSOSpTaYhKgnmonx1Heggg0nStEYtDMmgZNSbc05YyOcU20Cg7ksMW7k+1XQqhcA1XjlVVx +inF8gEHrWErt6nRGyWgN15qzaxo+c96qKSc55wa0bbBC1E9EbU1qW47KIcnvVkwQooPpSRNnp2OK +seTuGT6Vyt6m+g2NY846UMOamjiVQDQqfOcjgHvUORSGYYj0qaKMfrTvLB56VMiDIA4xz9azbGOW +MKKkXCkAe1NO4Hinjpk+tOwmLkHg9aUqoGc0ADPp0pzDioAjUAnNKVJzk4xTolFPZSe/emrhci5O +KABmndQO9IvuKeohuCC2PXpSDHTucVJsOCAetNCndz+FaPVXJuRyDGRUABOatSDrjoKrZ5IqlogH +rtGMnpUwxtODUMe0nBqcxjaacVdiltqctquTL+dUhjHA61f1TiXHpVPkADpWlzeHwnQ6CmBUfiDg +888VY0FVC5Jqv4hcE9eOlZ03dP1Mn/EOVkJ79TSKPmFK+KRPv+1dfQb+I6mxGLYsfTpWNdfeYmtq +ywLT/gNYdyfnP1NcsEUt2LZ4Mg+ua6uzA2jFcxYqPMU++K6iAHauOOKU7OQTehdVAw/KoJkQEZ55 +qdfuZGenaonBzTjormHUciZxgU/aM5pEOBinHOOtEQYgIGQRUZJJIpx7+9MwQc+9En2GSGPoc01g +RjFP3rjOPSjG6krITGErtHHaoWHQYqy6HANIIyRnvTTApkNnFLtPTvVoxhDikKjBOOeapOwrlXy+ +T9RTwobj0qdVA96btwfzpp33ExpVRyOc1Htx0qyQMdaYYxgY+tU3qLoV5AAM/nUDsO3YVeKAiqU4 +5wOlVfSxKMy/nVYyue1cvcSjk5zW1qhwW9q5yZssa1oxuY1nZEZJNKq5pADT+AMV0M5l5jjhR/Om +ck07OcZ5FKg7YpbF2uKiAnFWEQgkYzmkiwOg5q9BEzHPSsZzsaxiPgjbHNWcY5I4p8aYwOvOKfxx +mua7ZZXO4n9KYgJz696tlU/OmnYGOB260wsQmKLBB6VEbRMZWrYUcdTipPKJwORTbsFjOFu0RPar +AjBHTmrJVxjcvenbflBHrik5FKJVKPtA61KkCnOMHpVgKp7ZNSJCP4e9Z81yrFX7IGwGHOKX7AAP +WtKKGTirCoO4ovdjsYf2IjjpUsdvsHTit37PGwye9ILZPTildjTMn7HuGTgCnfY1HQVq/Z15xgU7 +ylxyOf50X6BYxjalTkj2qRLeP7wrQdB+VM8kDnt2oUlcLCBAyr7d6CoI5FSxfLx2p5XBPaldj5Sq +IFUNn0qNosjJHSrjD39KQBSOvNF+jKsZU0fXtVCaDj6963XhTriq7W5bjHWnewKJz7QNkemKXyj9 +3Hatv7CBzimm2bgqpFP2gnBGKluRzJTtgzWo8B7jqagaHB+Wmp3JcCrjaAFFRuXHbrVzyGJ57Uvk +8ZK5xT5ieQqwIWbJ/WlkVw5A96vrEV+YLioptrHL9qalcnkM8xMBk+naqrD5u9aRKOCeBjjGaqSt +t4UHOK0i2JoYsSY+YjoKguHiLuY12oSSBnOB6U5mcYyDmo/Kdj0rSPmQ4srELz19qNh27h0BAqyI +XU525yD196kS2LDPpWjmkRyFEpjHrUZNXZ49oI74qkVINXF3M5xsJRRRVmYUUUUAWraQA4PatJJD +g4+tYgJHStCCXIHr/OlNKUbFU3KM7rYvxs2ec9Kto+B9aopMg4qwJAeAcYrzmmmerFpo0IGQketa +tsvr0rGtZU6DrkVr2rJ37099yZeRja798AelYjY21sa84Zxj0rFYkIM+taQVim/dNLRubhPTNamv +NhF5wQM/Ws3QuZxV/XmJwBzgVnL4xx1aOXk7iqvercuD0GOlVe9dkNjjr/EX9OJE8eDzurptUfMS +D6VzWmc3EZ9xmuh1QAIgz2rkrfEdNHZHN3GN1XdKP7wY5qjcY3ZrR0b/AFgJHFav4A+2zsLdSsaZ +6nGBUrK2059eKZCRgcGrGST8w61NjP1EhXgEinsowaeoGOKaeAe9S0hIhOG47+tPAAWm4+XingZU +jmjqN7EIODnFP7gimBecntTj6djzTfYQ1mHt1xRhecCmMu8+mKcVIx1qF3KZGzcgDAqNxnp941Jt +UnJ+tMYjnPWpZaQqxr8pNJIM47UJkjjjihxwMc45o1sA3fjr2qMjuKeQGXPIppFCKGKd3HpUyEqv +POaj+6eKcz4HPHFJC3H8YHbvQQDwfSmKMhT1z3qUbsZp3uGxVK8kjtUdycKOeTirL4HTvVOfntVK +y3FuZl+w2HIzXN3HWt+/YYYH1rn5s8GuiitTDEP3SKrdpHvYd81TrQ09grgk8d62nsckNzRktyqc +elZN0ApwOnvW5LdR7Dt71h3bgseO9Z079Sp2KlFFFbmRcsx8w+uK6ux4AxzxXLWXUfWuqsMjb9K8 +7FP3j1sOv3RvWykAHrV0IuR3qpbZZfSrWD+NRDTcmQ7bncoprDA5pwcjim9Tz9avQkYcMBz0pMZb +J9sVIwXApu0jNQ0h3G7AM+9P8vApV5ApzNih6ajRGVG3NMCdKmHIpAoByTzUvYaGhVyT6GgqBkjO +O1Oxkn0p+3j6VEXoUypKM4OB9KbIFEZx1pupXKWsZesWXXI3iYjgirSuTdo2Iz8gwe/SralMD1rn +NP1M3I2jORW5bMWA3UnFrQpPS5M2eT0z2qROQMjpUb429enNPjYkfjUW11H0HNtXmomOO/0qWRV2 +1ATwc1TgkguJzg1LCCOe1Q7lPAqxGeAO5pWsgZYwcD0pp6cdqUk4AWmO2FpWJQ4EbevPaoWJ5H4U ++PkHvzTH+UmpY0UZQUz781LbguAQMdabKxPbmpI8KgIzmtYWkKbtEv2/IFaKIAox6VQtMFR2zitH +HFdUUedJ6ioBnNZHiNglsw9RWwh9K57xVIfIPrVuyFHc8puzmZ/qar1LOcyN9airpWxEtwoz0pKW +mISiiloASil4wc/hSUAFFL7UDHfjg0AJS0UUAHFFFFABR2PtRRxxj8aAEpaKOnBoAKKB1FGKACij +sRj8aKAAHBz6UZIzjuOaORwaKACiiigQcjpR70UUDCkpaKACkpaKACigdR3pzlGZii7VJOATnA+t +ACYGM55HalUZz6gE00Yzz0pQcUAfZq1yvxPZl8K3mOhkhBHqN1dWvWuV+JwT/hF7ovnaJYScdfvC +nDcmW33fmfNVxu3H0zVXnPXtVq56t/niqZJrJGzY7+fOaQfypATk0E++cUwuDc8mmUpz60CqJe49 +etSHFNQelKSKh7msdCYfzq1a9QfeqaHPA6VctVOc/pWNTY66WrNdBhc+1Ly3TrTUDbM/Sl5ByK4E +tTqew1twPp70q5HPPakYrkntSr+eap7BEc2MjvmnqpPQd6RRz/KplHHPArJssRVYcCldHI/KpFUD +J+lD8KSMYPrSuLUjQEHnnmrI524quuOPTtVqMBhx9KFroDY0jH1o7E9wOlOJIJxSHJHzVdrEPUyb +0Rktk8gVntnHHrVy9/1h7VUO716mt4lR1ib3h8HJbtU2tkhTtpvh9Vyfema4QMr9ammviMpv30cp +cfzqCP7wx61NMPXqKhjGW/Gu2PwnPP40dRZqfsufaufuwwkbPrXRWxZbQHtiucuzmQ/WsqS6lze5 +aszgDFXwdwxgdaz7MYAz0zWoq5Xj61lUdpGq1RWlQsORVaYBQcDtWi6BiD1xVO6UgemacGZzRizD +5jiouammDA5NQ13x2PNluAFOA5pBTsnFDBDg2OKep3YzUQ64+tSZAPv3qWWmSfJt+tRyAZ4GBS9y +M80xjuxjPTFJA3oRfTmlozil9T6k1ZmSrPcLFJAGxFIyMy+pXOP505RgZqBeuPWrAGBgHFTI0gOR +2HvWjZyE8c9RgVnJ8p571p2KAsvHNc1a1juoI3Lfdt5/CrBxUUSbfwFS9QfUVxLVm0iImphgrnvU +BbnAp4OVxTeoImV0PT0p5zjj071FGF4PoKkUgY9jzSaSGMx3POetNXIJFSHaRg+tRjr/ACqb6DHs +N2MZxgUKwBweoNB4FAGTk+lClZjtoObIBP0qNlJVh04qUnjGKiO4BsdOaV9RHO34IlPsarMfu9s4 +FWL7iVsfhVPncByea7YrQd9DrdCBWMk9x1rO1w7pDWnogPkf1rK1ofvTj6VlSvZ+pLf7wwH7/pU1 +qPnFRNjNWrIfOv1rom7QKiveOwskxbZPpXLaohMjk+tdbacWxX2rmdS5kcd+lctF2iiLXmzLgTJ5 +pZoeTjkc1btIwzAd81cktcjoK1dW0hygrWOceMjPrUWMc1q3VuUJ471nMmMEfjXVCd0cdSnbYlt3 +I44rWt9uMisRCVOfetG2uOADj3xWdWN9Ua0pWVma3DLgd6pPZsxJIzk1YScBQwp32yPnjsawXMjV +2e5kyWiqearm3AP5VqmWN3xjrSyRRhc8VoqjW5m6aZlCJenrUoRAuBRIveogHJ4yM4rTci1tBskY +LcdKbtdfpVlIxjn6U8xHpg445o57C9mVlz6c5q9bynoOTUaW/JyKv21sH7cVE5KxpCDLFvlxmr0Y +bgE+nFQxxhMgCponYthuxrnbNiwOmPelTaetNkYAgDrT0A/HispDRMgyQKtfY5cbtp6VDbMkcql+ +QMV0cNxZuvysORTp0nN72JnPlRzpjK/KakxgLxWndwwLues527UTpOD1CMuZEaMc884oLkngYpcr ++tN+UDJrMocnDfrTiTgj3qNWz836U8so/EU7AGMflSEgjFJkUjHaM4zVRvsJsUswHFNDE9ajO9yM +jC+lBJz04zTauhDmPJqs/wAzYNWG5x2qA4B4HNXoCFjBBxVoEFMn0NQKBuAHp3qw/wDq+B0qqd0y +ZbHJaoW8/n8KrEnP8qn1Fszt+NQA4AAzVs6IfCdDpBIXg1T1suTg9Par2kDEee1UNZIBK+5qKexm +/wCIc6x5606EMWVR1LYpJMHNOgxvX69K6X8IL4jpLdWFtkelZFwMsc+prfiQizyPTpWLcfZ/KPDG +fzCT6BQP55rkplp6sXT8bvUZFdVb4wOPwrltMA3hRzzXVQZABNTJ++Kexaz+FMf1HvT/AEFMIJOO +2a2SVjn6iqMYz0pQSaXAx74HFKwIA7HNK1mAxtv+FRBXYn61K65HrxQpwQcVLQ0xQCOCMU4MvP6U +EgkevSnAKOooSEO+XaCaUbec00Hj6UzcrZHehaITEYhiB70bDj2px27uB0p24HjHUVSAYEwPSmBS +SfSpGPGBQoPXNCV2F7IjXrihjt989qcSOexqCRmUdsnHNXqQ2hXk2j2xWXdSAZOeKdJLJjLc4JwR +7GsbULsEMM4ptt6AtNShq06HIB+Y1hEkmpriQyMT6VGqk11048sTjqPmkKBgZ9abkk05s9u1Koq7 +k2uwVTU8cbNj0pIvlYH0qVSScLWUmbRRZiiUbf51dhUgcjGPSqsELsd3T1rUhRV4PauWctTZKyFW +JjzU6woBk0m4sdq9xxSMr4xjp1x3pBqI/lcj2pAiDnHFPEfH3fSpEtz+dK6Ww7XIVRcHsanVOmOt +TrAmMY+tSrbdSe9LmsFkQCLIGeQvelEKseBVpIl5yM0qrgkYpSaexSRXFsBjFSrAVI71Oo4xgVIq +561m5FpMRIPXipBFinISBg04stDmNRGbf/1UpxxjpTXb0600liOOM1POWoASM4J4oOAMdaQYJyTm +g7mBI7c8dqOdj5Rp6c80gXII7Cncc5+7S4/unNLmHykYU5Jp75x096MAcE9aXYcE0XaWgcpFgkfh +xSBCBzUwUnIP1oK4wfWi73HYjVNxAIp4RB19eKcuOo7U75RkmnuTykZjU5AFNMQ6e1WQOQ36U9Y1 +JzjtVbkNGe1sGGfzqu1oRkKK2Sgxiq7oMkUeYlcyGtCuc9xTRbMvP6VrOi5welRMgz9aeozLKtnA +xg1Va1aTK1rmIA8CozGQ2cc07tBZGO9sF6Doah8pfvMDW88Kvz+lQmz455quYmyMkRQnOBnjn8af +9mUfdGM4xV1rVkzg4zwaRMx8v2qou5MloUhbFuWHSo5VCA8DPpWh5kZwBwTVS5RWDY7CheZDVzMe +NGOcg47VRlTrjtxVx0bJ4qnIGBJNdUDGSK5FJxTiKTGea3OdrUQ0lOptNCYVdtsPgfxCqVTW7qjD +NXHexMm0rou8gkdwanjbBxmoXwy7lHvTYyOvvXPXp2Z14atzI1LYhjwcGta1kK5zz2rDgfoc4Pet +e3kG31yK43ozs3Rm6sSZR9Kzn5X6Vd1A7pDjsapMDtzjFawB7WNPQc+cPWrmvNhgD0xUHhwAynNT +eISN5APpUS+Icd0c3JjBqqOtWJOc1AME11x2OStrI09IGblO2DW/q+Nqjr8tYGlD9+vGa3NTI+XH +YVyVX751Uk7I5u4J3GtTRB8xHuKy7j7xra8Px5bPqa0l8BP22dXAMDrzxU4GW561BCcYzU4yDn1p +dNDMcGXig5xzQwXqBSjnHSpa1C6IiCDx09KdlgCRSOh70/oKrqIrsfbmnn7o9aYSc9KlUZH0pOwy +IL9ac/A9T2p7BRx361Gz4GD07UlLQe7IOTmmscg+vNSBeuOKa20cfrUWvsaIbGDt49KGIPFP24wT +0qM4z7Ubbg9yRQMVEwbOQKkHbPJoYj8RSdr6AQkP3FIFLA5+lP3bsjt2oA6Z6U7D2FjXaoFPOemc +ZxRjHHYUpByD+NDQrkbADOe1U5GGT2qxOTjI6VUJDIfpxVWEY2pdzjtXPTda3L9s7u9YUv3jXRRV +jnxD0GjrV+0AyMn8qoL1H1rRt4wVyRmtKj0OeBLK6Ywp5zWfKck+3SrskLAE44qjMMGlAUiGiiit +SC/Y/eXiuqsR93P1xXM6ep3ZrqrIfcry8U/ePYoL90dBaAeWDirW0YBqK1RQg/WrDbRThtYyk9SF +9oHTgVEG54qWRc5qILtP04qnexK3Hn+ECnAGmqRmnjnNLdldAwxA7Um3qT1qRcYGaU+3elIaGqpK +596XyxkH8qkXaFx704gcAcVnJqxSIMYJFPCjGAcEnGT2ode49TUMjMFzSTCxm6/ZXCq0R5OAQR0I +PpXHmxnXOQcZruZJDIE3EttGBnsKq3EcRI4xT5nF+7sUkmrMxtHsnj/eY4NdDGWUKAMe9RxxMiAc +YzzVgLgfTkU9W7sWwsmNoyafGPl5FQt/9eplJ2465FLRA9URyk4pnUYzzU+AAenWojjsKla7DREV +IGR+tWYRwOPxqAgtx6VPEfkxnp2ok7IZYIKrnOai5Yc84FPHqaAvBzxS3ROwQjj6+tMkA3HvipYR +kUSKORUPYa3M6Q4LVKmNgOecdKZIuG69c09SoA45zWtPRk1NjQtc4APetMA4xWdaHkVpHG011w2P +OluIvAxXLeLmYW7+uK6cAYznBrk/FjEQsAB0qgjueYyZ3N9aZUknJJNR11LYzluFFFFMQlLRRQAl +FLRQAlKACQCQMnqe1FFACUUUtAgooycY7HmigYUcUUUAFFFFABSgkdPcUlFACoQrAlQw9DSUUUAK +23J25x2zScd6OKcscjh2VSVRQzkdhnHP40ANooooAKSlooAKKKKACkpaKACiiigA6UoOM/Q0nXqa +VcE8nFAH2atcd8V+fC8g9bmL+tditcj8VEVvC8xJxtnhI9+aqnv9/wCRM9vu/M+brgfM2TVMjmrd +wMsT9aqng1kjVjegpc+9HFJVEhSgevApAKkVe1JjSuSJjaBTW+Y08KQcd/Sp4oGkPPWs3K250Rg5 +aIjhQ4rRt43XB7ClS2VACasRADgYwa5alS+x2whylgHCdabknBAHFIemBShAvSudGrELcninqAec +e9MxyMDPvUiLwPzokER68sP0qQg4Bz3pqAMQf51OE9axZb0CMZ/Dt606QE0Bcc9DSHd0HX3qlG+p +NxAowBUqKenTvTRnGDxzUqA5+lNITdxHHYUoI2kn0xTWJB69acgBU9+KaWpL2MS9AZ6q4GB1q3eN +iXdwQD0NVj05rdM0jsdDoAADfzqprbfM2fc1c0RdqHHpzVHW8lmBqaT0ZjNe+cvOeT+NRQ5LjmpJ ++vNRQH5x9RXcvhOST/eI6+3H+hfga5a54kOPWupTIsufSuWn/wBY31rKjsaVNWy7Yg4+vStRMkCs +2xzitNATj071hUfvHQthDgD36VWucleB6VdK59KpXCPjn1pRZMlcxrhG/DORVQgjj0rRmxkjGKpS +KB0rvpvQ86rGzuRinDpzSAU75asyG9OKVScH3oIH50vGO1Axd3HWm5Y/SjHWj3oAQnmgZpME81Io +455oBK4KpJ68VOqEkY/GkVMGrESE/wCNZSkb04ajkt2bFa1jCIyCehxUEELtWjAmMA9q46km9Dug +ki4uD0455p45GMYqOMYPHftT2yBgcVhqimVzgNyakPQdqaQpzkcZFPO0ADGap7AiWLcRx3qXoDwO +ajixhV6VMPfjis5DGOMdPSol+915qR2AX3FRoTneRUq25SHNggUqn7p7044AzjrmheQT+VNK4XH8 +YyOwqGQkKT+NSZ44NRSsQhJ96qL1FbQ5q+YGZiDxnNUg2XB6c9BVq8wZW9DUEa/Mv1rtj8INM7fQ +1/0fPTisTXAvmE5re0RQtrjpxWBro/eMPrWNP4PmR/y8MB85I9Ku6cMyDjNUG64zWlpg+cEdq1ra +U2XT1kdjAMWucdq5a/GZWrrVyLbPoK5S9yztnHXtXJTfuoIL32JYoQQfetiOEHt2rN08bmFb0cfG +PbpSclzalTuZN/aJtJH4Vz9xBhiTXYXSDB74rFuLfJJ6VpTqWZnypqxgmA9RS7Sg59avSoUPTp1q +ufnOAO1dSm2ZuKT0JIbhUHzHPankoxJBHWqvln+lNO+Mj2NLlT2E5Nbl+OEnBBqSRWxz0plpdR4A +Ix2qy4WT7ves3dPU0TT2Kn2Zm4Hag24UirixkYJ9Ke6AkCjmHYrw22eCOtT/AGXj3zViNNoFSM3P +8qm9xlQQAcY4q3CqKMUEDPoO9AxjB/CpuIdvGSAKchx160gVRimkgkD05FL1Hcn4PHtUgY8n2FQq +VA6c5pwdTx3qWgJo2fJJqwsuCCKqo/y+5qQNn7vryKVrahctieRhgnIpC2Rx9Kizj60ob16Gk2+o +egpIAOTTCy4FOcggg4wKjGDnPrRoBMjLgikaQcVHIQMYOOKkklSXylVAoROcdzTSutRCFiMccGly +Wpj4xx0p0Y4HtTSYh64PB4pDjJApzY7dajViM560wHY4Oai25b+tTZwMH0qMLz1/GlbQY6Prn0qa +RSEYjOcUz7tJLMPLb2q4bkS1OS1Ejzz9agXH+NS3m4zNmq6k7lH6VodMdEdRpCny/pWXrW3e3Udq +29LRhACOOO1YOsNmU/XpUw+EyveZhv71JbH94PrUbDPPFTWyAyJ35AreXwjXxHXI2LMA8YFc3cY3 +MB0rpZE22X/ARXMzZJNc0NkVHdl7TOWGPaunhwF5rmtJAzkc10sS8c1FrzYVNib71Jkg+tOwAKCB +Wy0ObqKjg5FBG7v/APWphBAP0pFkGWodtwDLj/GlRuORTGc4NNEhA57ULsDLDMM59cU1pBjioixY +ZphJOP5UugyTzyuc01JUOe1MZlUdKg8wA46UPULFxpdufWl+0DHv0qurFhTTIqEjvSTsJos+YAQW +OAc0/eMcVSZ8gE0zz9mc+lWnqJrQdcXIizz064qo+pR4POaqXk2Q3BNZgkYkgnIzmrbEkupemv40 +PyjGc5rGv2L/ADDnJq08aj5jVUgO30zTT1uCjzPlRmiByaeY9g6dq0toB6djUEwUL71oqjbLlhVC +NzPJ603OKc45poFbo4He9h6ljn3rRtoVA3H61TiQDBJ/CrgfICKT9axqO+iNYIurKqD5ee1WYFeQ +jqAarWVs8hBI6nvW/awKv8PNckmk7I2tbcbFbYx2GM1N5AUE9c1aCY9qZJ0wKSJKZAU8Cnom45zg +U/ySxA/WpooRkemMUtEXbqMEY+8DUyA45qQQ8GnBAABUSbGkMDIBjHbmlYqThcdOaDEM5BpuOODS +cjSMBeeooUtnBo5xx9KUZyKjm1NLDwOMmkOcjHY0hY5BoJ5PpSbuykhpI5amcnjP505+eP8AIpu3 +nHPApIqwnKnp9KkSWSIt5bY3KVPuDTME9OaXHOaSlZ3Q2hVVhznPbFOAGeOOKeoAAIpwU5HAxTWo +iLZkdKcvyjnvUoBJzS7Bn+VFgIwoINNYMDntUpApNpY/QU79xEOMdRilAIX9alIHORTcE5zRq9WM +apOQMdO9ODksQDTcMMketAPJP1zVXsS1cc0rZx2oLrwep70zGaa2afNchxJGZVOe9MIQnikbGOvI +pkZI5NNaBYk2gE+/WholFKCeuM9c05mBFK99RNEJi3DgcVE0LACra8UpHH51TV9hWsZckb8g8YHF +VmznBXPFbbRg8mqktuD82Oo607snTqZLQA8g1XeMng9Mc1qG2wOPTiqjodxyKalqDRmGLkYFZ1zD +gsSPpWzIu45BBwar3EO5RxzzWsJ2ZlKNzAZG5puMcVckiYEDFVpBtJznJ9a7Yyuc042ImxwBTaKK +0RzsKASKKKYF61fepQ1K+1TgeuKpW8hRvY1blywBHfmqmlKFzOm3Cpp1LcbBl9BV+GXYOehrIimw +Apq9AxIyegPSvOnA9WMmyO7bc5I9art90ZPIqa4B3ZHrUMijAxzTjsjRu6Nzw4PmJpPEO0Se/FSe +HA2evGah8QjMxH60ra38wi/esc4/eoRj8c1NJnpUA611R2Oar8Rs6GAbhSa09VOGwOOKytGyZxit +LVMbjk1x1V752U9kYM/3vxrofD0ZK5BFc7N94iul0AqsfHqa2lsjLW7N+IYf8Ksj0FV4gSSR1Iq3 +wRgDmpTM2tQyACaQ5XvQAM4HFKQSfxppa3YMQNk/SlbHSgAZoc8evtVCIGHOOnpUg4I9KaVORTjj +1qXYq5clgt4YAZCHklGVx29/pWbIFU/Wp9vvUThTz1xUyd0EVZlfc2OOlHp78VMVBWkwAPas+hoR +FifypuAWH0NKxPPNNBJYDvTeoyV0OM+ozULnFWGbauO9VnJJAFJ72BDIyCenrU27b27VFtcEYHQ0 +5VY/Shdhsesme1TEkjimogAyRSuWXtVpmbKtxkDH51Uk2qrevTmr8hyuTiqE8Z2EmqSe4c2ljnb9 +skge9Y0v3jWzcKJpVi3KpLBdzdBnuapaxps2lXbW0jBm2q2fr61vSRzV2Ul4ORWpaHj6Cstetadt +lV6U6iuZQL1wVMWOPasO4xuzWpI25ay5yckGnCNkKTuyClHWkqSIREt5jMPlO3Azk+/I4qyFuaem +qSRxXVWSqoXmua0tec11NohbaAcV5OJf7w9ymv3SN+1UCMVK+PSiFcRj6YpCPm/pW0NrnLLcaOOt +RMQCasbSQKa0IwaN9AId6tjt71Im3qKZ5eDxTjxj25p2QIkGeuO9SkAn0pEw2KmANZPcsaIwFpoX +5s1LtbHNKEbdnFS7XBXGOMA1WeMbatvu5BppTK+tTuxmTJHkkjg5qB0+YGtJolBJxUDQFiG7VWhS +bEKkKpP1p0iMRnpnpUrI21SR7U5h8g9qq9ySvt+UZHQYp6YOc1JtylNVMd8VL2GiMhgCQM5FJEDt +JPWrCjII68UeWAtRdWuMriPvjrSooXJ9+asbflPFM8rOR71LehQ5ADmlbIU8daeikYHpTnPahbXI +e42AAAg06UY4NOh6ZIpZunAqZXQ1uZkiY5pVQlemKkccnFAX5Qw9cVrRauRW2L1omBmrw6HJqtbc +oOKt5AWu1XPPkRlARwa5HxYSsTDuRXaKFK5ri/GTKEbFUtxRPNZR8x+pqOpJc7iD1zzUddKIe4UU +UUxCUtFJQAvaikpaAEoopfXmgA5pKKWgAooooASnA4zkZ4NJRQArHLE4AyScDtSUUUAFFFFABRRR +QAUAkZweowfeiigAoH1opKAFooooAKKKKACijml5APHDcZoASiiigApVBJAHfjikqW2/18Xf5xxQ +hN2TZ9kqRXJ/E/DeGZ13YzNF+PNdWmK434pnbokHp9qXP/fJoTtd+pSV2l5o+eLqIBiOuWzmqZQZ +xW9cQLKcoDWfJZOO1cyqLqdboPoZxWgJVloWUDNNCHOK057mXs2nqMEfSpRDwMdacuB1FWYlBzWc +p2N4U0xIrfgZ/OrscQjII70ijAqaMjGCPwrlnNs64QSGyD8sUxX5xTppFGccU2JNxBBqempS1ZZQ +A4p/HQd6IhjvT2Ctn2rO+tymMAA/OpMe/XFJnpUirkjNS3rcESJHkDOakHGDScgewpeTjHNZ7sbA +YalPy+nPSlUDt9KHXKgY6VdmSISPxqRDkDsark8+4qaI4wcZp2dwewswOelO2t5Zwe2TQxPJPPen +fwEnjim07k30Oeu/vn69ajyAFHvUt2uZD+PFRMeF454rU1jojpdEXdEW9qz9cAByOBmtPRmAgzjq +OtZWtsGZvrTpW5H6nPJv2hytx94022H7xfqKfcdSKS1IDqfQ12/YOZr96diwAss4x8vSuRmHzn61 +0z3C/ZNuecd65lzukJ9+tZ0/hRo1qzSslOBWgoAHHryapWe5VFXlAx7iuOo/eOm2g4E9M8fzqOVV +Zec01yQc8jFIkocEdOOaEnuSZ1xAd3FUJIv0rblTI49qpPEF47Zrpp1LGFSncymQqab+FXJYiOcV +XMZrpU7o4p02mRHgj1peuaeyNQE61V0TysZx0oqTaRxjmjYc8/hRcOUYqmp40J59+aRVUHJFTjC9 +MVEmawiLgZAPpVu1gLc9jUES72Via2rZEXsK5qtS2iOylDqS20QXGePSrKogPU9elOQRjBPpTpNm +Mj61y3ubCphaHPX0NRxljyBxUrAdDU311E0QAHOSTjPFOG4kj60uRgg8UkZHB6+tXbqCLEac5Oan +4I/Co1PTHYU9eee2KzkxoifGTUaDPHvUkzAnFIPudKS2sUiQdMHsaAeDn1pqk+lOOcc0biDsahuC +PL5A6VMVXBOao3j7UOT1ycVUd9QOduSfMamQ8yL9cUkz5c0kJ/eLXbb3R3O70psWoHtXN6026U59 +66bTFP2T2xXM6wR5rdaypr3EZx/iMwWB3Vq6UuZFHvWYV5z+lbGkKvnISPSqxD/ds1pR1bOxEbC1 +59OlcneZ81h056V2MvFrx6Vxd4wMjZ65NcsF7qFT+JlvTQuQT2roEAwp7kVh6YqHr3reAGAB6Vld +czKqbkM6IeDxms+S3HXqMVpuM8ZqFowRjpWqauZaowbiDfkAVXNgck4xnOK22txuBpxgAGAMj1q1 +JrRDZzUsTRgjFVHjZuSK6qSw3dqzbixKdup/KtY1GiXG5iLlec8g1YhuHU1ZaxZScrxiovs5Bxjm +rc4yFGDRoW86Pt3Gru2Ej5Tk1hrG6/h3qaKeVCM9O9ZOPY01NUoQakEe0ZqGC53/AHquqPM25HFR +zMVipJxnHSkRHPOauG1HTNRyRMuFHeqTAjY/Lx1FNRTknFTeTkEn1o2FfrSurAMGfwp23DHBpyry +RSkDPP4UNXAdnoO/TinLgcdaaoY5OQMD8/pT+Mc9KXqA8NyAO1KGOeT1qJcA/hTyePzqXqGw5yOD +TRxyfXmkPI/TijoMHmiysC1FI3EHOamUAH6AVBGehHrU+eDQtwZG+5m/GpYgev6VFtJOcVKm4A4F +W0rkiuDkY6UzJGcjpT8k4FOKZGffpSswuN4Kjd2oHHem8jNKDyaG7sEKULcZ5qK4iIjbPocVKhLd +DReNiI5q4LUTOPuMmYj0JqFRhx3JqafPnNj1pFXLr7kVV7I6baI6vSj+4/DFc9rIInfPrXU6dEBb +A+2a5fVz+/YN2JqafwpmEdZsxWxng1YtB+9TtyKgkxnirVgAZU6dRW0/gLitTqrl/wDRBj+7XMzf +xHI6j610d45W2wRxgYrl5H5Pfn86wp6jj1NbSODjFdNHwox0rm9JGcGujjK4HPaoXxsmqPO4Um7J +7+lSKRikI9O1bRRg2MVieMduKjkHvzU4KqQD+VRSgEFh70PYLkG49CaeV3KCMVXbzO9SqSqYHWha +6AOXIHJqNyRkg1HJPsBGRkDiokmDdTgjNNxuCFaV1OD0zimSScDHSoppMnrg54qPztqkZzU+Rdi5 +HcIg56+poeZDySOKw5ZZA5+Y4JqSNjg5J5HSmtBW6mylzF0HPFQTTLngdqpQkhhirjEMAD2FCaRL +KkuHU84as9VKtnoK0JVySB6VTmBRee1CtsTJlW4kULgsc54quuByOlNnyWB9zzQnSt7aGuGWtyUF +uvpUEx5A6CpxtwcVBLjn1pR3OmuvdKbDnmmginPSD+ldC2PIluSr1HPOOtX7WFnOfQZqjAu84/Cu +h0+1G0FuM1z1pcqsawRoWMG1eBWoqhME1DBGqgY496nbb0JrkWpTG7mbAA/GnbDgGm7lGAOasr84 +FX00EkRqueTUwUDHPajb0NLk9O9RI1SGE4PU0jc9DzTuTz6U057Vm9y0hGBC5J6UzrkdKUjOAaT2 +BNLfctCnt7Cjn71B3ULnp1NZyZokByCM5obPTinbTn+lOC+vXpQhke0fpTQp5J7VORt/Lmk2nHvT +06DuRhR6d6cqg84p4TAwaeqHHriklqFyMbcc0qtuBwMCpVBTJ4ywxS7Bu4ziqaWgnuIDwM/nSgZG +akCDGKcQynGKdraiuQ7CM0u0Y2jrUmGxmg4GCPrTSuFyFlOfpzTSuSfapj0pu3GSOlK1wTICp5H5 +Uixk1OUPJFLjkHFPlbYcxVIHHtzUZIPPQCrxQc1X8sZIIyKVrAiAg5yPrQo9etSEDdx0oK4ziqFY +TJIBo3Z79BTsfKPrSFe4oWwWFViT/WlyBjJ59KFHFJgE/SmmyWh+4t8tJ82DH/CTSHjHvT1YDPHG +ehqk+5m0VnhAOemKqzRJjpkd60T93B5qrMnB54xVWJ1MKaDqV61UO5AVY9K23TPPQiqM8C9aE3cb +VzHmQnPsaz5oTkk981tlCCQV5JqCa3BHTIrohUszKUbmCy803FXJ4thOBgVXOK64yujknCzI8UlO +JptWjJ2JEXke9X4lYrj24rPVsVctn3MOcCtI2sZSTvckEe7jo3pVyAlFIanwxhmyR0NSzxDoOAa8 +6q7Ox6dLWKZAwVyT29Kglwpx7VNH8rANUk8G4blqU7PU06GpoOxRnNUtabdOx7CptOiuAvycVR1F +XWQ7uueaemxUL8xkyk81EBwGyOSRjvxUkp61EvJrpjsc1TWZu6DHumz7Vb1barkUzw2G81j2Ap2r +n963vXFP+IdsDAk+8Oa6nRAnlj3Fcu5y/wCNdRo6/u1P+RW872RkranQ24HFT8gj9KggORxxxVhe +uetNamT3E53ZpWGDmnsF4pMHcSfwprsIauSSaaSS2BStu7UbeMim97CRGck5z1p5ToaTbghqld9+ +MDkAZqWu5RHtOAarSZBODirJ3Y9qhLDdg+lS9RxI1HH50MxxjtT2wOBTWRupPUVCWpZH1z3piHnj +8TU5Q7cjimIoU49aV9dShHVj1PWk28etSMGxzTSCOnftUANyOKcRgA03AzxxTyvHrVoTHrt2jNKw ++lLDbmRMDO4scH+lM5IH0rRLqZ31IJOWGaqXWNrCrrKCeR+FUb75AcVSBs5W9wrnFZtzNNPIzysz +OcDLHJrVu1BZuPWsaThiK2pnLUdwTgg1oRsAo684rPXrWjbI0gwvPpTmRHYlUDacHis2c/NWr5Tx +qwIrJmyCc0RdxWIqcvWm05Ooq2Jbm7pXUD6V1tohG38Oa5LTRgqTXY6cpYBvpXi4pXqHvR0pm7CM +pzTHVs8VPAp2AGmOhDHmuqnscUhvYZ4odgB1/Km+hoYDjHXrWjSRI1YyeaV4wMk1Mo5ApZV4rN9S +0NhBHA6VZ29CDVeJfu1ZBrMqwbSAB+tO28/pTvrQpJapaEMk44NM2/LxU7qCeaQRnBppahcpugHe +o26D0q3KlQmI5p27DTGkbkA60nl8ZqxsIHtxRsOB2FU1dBcr4GPpRtU9qlZCBxQiN3qXroNESoRQ +69PrU+zg4pm3p2rF6KxY3aMZpu3AJHAqwRhRxUeM8Un2ERqM9Pxp0gTAXnPc1IiYBNNdcj8ad7IT +3ETp9KbMSelSKrY5qN/c1Em9hoqvzwO9DBkjH1pzDg89DSMDsXPrWtBau5lX2sX7U4jHfip91Q24 +AQVYOCODXacDHqc1xHjQgI3NdyijaTXDeMtrA5PSq6hHc83brTae45PemV0ozYUlLSUwCiiigAoo +ooAKWkooAKKKKAFopKWgAox0NFFAEjpCI42RyzHO9SPu/j71H7UDilVtpJwDkEc+9ACUUUlABS0U +lAC8Y96SlooAKKKSgBaKKKACiiigAo9qKASCCDgg8UABBBweKKV3eR2dyWZmLEnqSaSgQcVNa486 +M4ydwxUI6+lSW5CyxsTgBgSfSmtxS2Z9lL1rivivxoduf+ntP/QTXaZwRXHfFEK2iwZ7XS4/75NT +0foaQ+JHiUJHJI4qSURkH6VHMNvSoGLHvg15klrc9dPoQzxKQWHbFVUjXPJx61ZlbkDp6mq25wee +laRvYmSQpiXj3z+FSoqKeTxUSkscClkVxjAz/Wqd3oSrLVE2/Azk8ZFMa8x09MCoFSQjBpDB83PI +pKEeo25PYk3tJz71ftx0J4Oe9Uo/LWrUbkkD6ZqJmkC+uNv60N64xSRnj3702Q9hXP1KHJtzkipk +HRuOKgi9OtWB9KTKJlY4xmnKp6+tQKBnJ6VZGcHH4VKjdksOmKGIHU9etNHmEGkPI56iqAb7e9SJ +yMVEOuBUoXAyelNPUTQmeecdae7/ALtjzTPLJbIOc9KWTJjYDjHWq6itoYVx80vfr2qNhuCj86dO +B5hxz7005yMnvWhqtjp9K+W36dRWNrDks3tWzpUbNCSfSsXVl/eMKVJ+6YP42c5Pgk02HIYVJLjn +FMjxkY9a7l8JzSXv3NKSU+Tyeo4rOVuasuzEDJyBUAHzVEFZGjve5rWn3BUzzbCOelQ2w+Td1xSX +MW5c55rksnPU3m3bQsfaEdTg+tUnlZHznAzzVISyQt6095POUfTJrdU7M5/aXNWJ3aMSbTtYkAkc +E0MgIz7VQj1K8FtHZFx5EcjSKAB1NTrMCoBNTKHK9DSMubcZJEe3c1F9kc8KuT14qcyZx0/GpEIP +J6UKTQOKkUPJYnkUv2cnoOR1q7Kh4wO1KuQOeKr2jIdJFI2+OTiq7cZxWyYlI5xUTWsZXA796I1d +dROjcxyW/KnKrHnpV82sSk/WkKKOMdO9X7VdAjRtqyOI7GGavwzudoHXNUvLYnGfWrtvCePX0rGo +1a5vFGtbseM9ambax9qqiRI8D0HJNPjm754rnSb1G7FmNQo70rDPIqDzwTgH2qUPkYpPRgRupPTu +afEpGCaikLFhjpT4yeKHoNItg49jSNIFB5xUbM5ANRPuI+tTuAoYs3rmp8FV9qgiVlwferJJxzU3 +GGWWg7u3FJycfXNOK8feHXkU7a2EMAHzfyqjfKCmOc1oDvjr1qhf4VGJ5q0tUK5zMgG5hTrb5pVH +vTZCSxPc1JYg+auOhNdktIgt0egacoW0X/drktab9831rrrVSLNfZa43V9wlb0BrOnrBER/iNmVu +yea2dIBLqR0zzWGCN1b+iYLg9OanFaU2b0nc624Yraf8BrjrjBlY471117n7NjpxXIzgh8N6nFYx +0SJpLVmppiN90j61sjP6Vk6V90H3rXXHQ81z/abZc9wK4Jz3pCBzinsuelIFAFUrGbISg4JpGUZ/ +LGKlYEd6YVDDBNaJ2JGEgnAphiVicjOR1qTYCKcqYp9QWhWa2RuMVC2nI2eOtXvmyfQ0oJNC8x3Z +mvpqe1QPYL2H41sOOSaaEyCPWgaZkrZFMY4rQgQgc1KYwRjjinohUYqd2EnoQNkk57Gk+U81YMY4 +Pr1pPJ7gcVb3sTcgOBhV4pmzBzUzrg8Ugj3ZPT0pO5SGY2gn1quwbIz9auMjEYNNECqd2cjFUvIR +XIOM/WkBbr2qx5YIP4UnlrjHehBuMCj/AAp2OME4NSKuOvahlAyTQu4MiJAX0OaXBP0pxXDDHNOw +MYodrANjQ81YC7e1Mj7kDFSY6+tEezEyMKeTT+nPTinIwHU01yrHgU2K41R82BmpCCe/ehVPBPB9 +abISM+lUIY20njrSYOTzSKD1xQfc/lSs0MmiXBwPxpuo/wCoOOuDT4mGQPypuoKfJzVw62Ie6OMk +ZvMP1p0LHzACO9FwFWUgEHjk0tty4HuKT+E61sdtaH/RRj0rjtTO6dznvXYW522mO+2uM1AsZXz6 +04L3EzCHxszHzu49TV7Tl/fJ7HNUmJB9av6ZzKmB3FaVfgZcHqdLqIAtR9K5WUAkZ/Cuk1Nj5Cjj +tXONk8/lWMBw21NjRifxrcXPGOc1j6SOOvfpW1wn9KiOsmTU3JNwAFOXJz9aYGVuvbpS5x90962V +upzsawc5JNRMWUZPTNTNnjIxmmHByKd2tR2GI0eefwqR1XAaoXGMECnBiBtPIp+YjMvlkHK+vSqH +myhiTnr1rUuZAoyexxWd5sJPzdcmondO5pDYY0jSYOccEUwFskZxmrPlRsNy4FVjG6sc0KxXURlU +HPvipE6A4B+tIUzux+FVw8qnk+1Ai6HJIHQipd54z0xVWAOc5qab5U5PNCfYzk7DZZlXjj2rOnkD +n6dKklbdg96rPvHbrVpWM0rspvuZzTgDTsYPNLjnj8q1bO2nScSQcLzxmqzyYO4cEdCO1WDjGPaq +kvpRBaixEmkV25JpVXkUnepU25rZuyPNSuy/aRDOcVv2SNIBjtWLbKWCjpk102nxfuzjqRjNcFV3 +ZutEXlXYmaiwSST3NTyFQu3vTIY2kIyPzpJWRKFjj31aWNgBUixhQAAKVvk5PeixY0IcjJA5qJsA +g5B+namvIT060KBz1zWUn0NYrqHzdabk59gaVs9P0oC46dDUstIQ4Gcjk0gHQDqRT9pJHNSY9KL3 +RSIcDoTigIONtTFBgcd6Nm08VJQgyO3QUEMelPxnNO2t8tFuwEYGRS+WfSpCo/Kn88CgLkOxj/Kn +qg4x2qTbye2aXy8DihJBcaFB607HNPUAkCpAoP4VqkS2RhcU8DNSACl25PP4U2rMVyLaOvWo3TcR +Vhk5OKj2HOc0JKwEXlninlVOaeAvSl29zSs7XC5D5YwKMAfnUw2+nWl25GDSV0rBcrMueahKMODV +0oB0qJoxzTs3uFyntB9zUbq3sKtshHSozGT9alqxSZBtyOeKTbjGeanMeBmk2Hp60hkP6UYH8qlK +D0pCNx4oER55oOQDT9pxnsKb39hVbENDM9+uOtKQrA5pSMU3GTj2qrkNFSRCDx9aqyJntWlKQMDv +moSgK/mTTS7CuYs9uTk96agXhWHatdo1I6c1Tlix8wGOtUvMl2Zg31twSvNY8ikcGurmi3KQeR1r +CvLbaeOnWumjU6GM4XRl45oxUrL1NNwK67nK4WGc1etVVTlziqm4D86BI2RT3M5bG55xyCg4A5qe +OYS5B5OKyYHdh+BFWY2K5weTXPVgk9DooybjqWynOR1qzGmQFIyO1Vo3IPzHj1qcSEOMdK5WdKeh +r2KBEP0JrntWbMzH9K37eUbevbkVg6km6VuvXmrirMqL1MaSo161YmUjgjmoVFdSehhNe8dN4cDM +Wx6U3WDiVweoqXw1xvPtUGqsTM5Iya45L3zsizDYjf8AjXVaU5EIGOcVymMv+NdbpCnykzxmtqnQ +zj1Ny0LMvPrV1AAM1DCAi49amXPA7U/MxYmMnrUihienHrQqHjNPHOcDpVCI2+XIqPd2xT8kE545 +4qNvnPT1qhXGueAKPm6dqawPFHIFRrcpEgywxUIC7znrmnD5QR3pnBIpS3KQPtz+tMy2R6VNtHXH +saRlVcemKz3ZXQYcMenQU5IiTTQOc+lTxkbu3Sk9NB3IpExx9agJcn2q5cMh6djVX64pPTYEyM8A +ce9PDDv1oOT3qNsEgVSWoNlhbpohtVVPJPIqIvnnPJpwjLAEdxTRFjnFU29iLIiBOc5qhqL/ACkZ +rSKEHJ4FZGop1PcU4uz1FI56dmyfxrIc5Yn3rXmVvn9BWO3U/WuiG5yT2sKvJFb+lxrjNYCfeH1r +orE7V4Ham9yVsXp41MTnAyM4NcncZ3nPrXWSsVgPGCQa5W6x5jD3NNWEV6fGCzKAMnPSmVJCWV1Z +SQwIII7U3sOO5tWBI2keozXZ6YwKxjNcfp6Ebe/1rq9LADr3B4rx69nUPc/5dnUIwUAe1I4JOfXt +TkUFR60OMGuiDORkRQDGKY+44wOKsHJIAo2cgAZrR7E9RFU9T9aGXdUxQgenamhCeBWMty0MRSPp +S4IOaeq4pSNvXmkhjwMjPahBzmnrjbwM00YOccUktBXFIyevenPxgUhGOajeX5wo5pAK65xTCuQM +VNwtGAQSKpLUVyPbnAPWgoSKmRcjJ60rKMAGqauF0VttOCfhT2UgZpRg8e2ahjGlVwfpxUDcdqsk +AZqCQE9PSs93cpAPmXGKYFIB9afFwCD0p23NKyGMAypphTpU4U80xs8Ck00K4w4Heq8h5OBU5Xrz +UDjOallIqux/M1K2cIO1V5Sc8eoqxySqnHGCK3oK6Ma7sXoR8oBqdUwOfyqOLHy4qcgnpXWcLHjO +088V5/4xYBmFegEDae1edeMD8zj9apO71HE4SRssTUdSOQSfrUZxXSZMKKKKADmkoooAKKKKAClo +pKACiilAJBIHQZPtQAlLSUvagA+tFFFABRRSUAFLRRQAYON2OM4ooooASilooAKKSloAKKKKACii +igAoooGO/pQAUUUUAFSQqHkVT0PFR06Ntrq3oQfyprcTvbQ+ywAQQea434mjy9Di5OPtaf8AoLV2 +S9a4v4qtjQYf+vtP/QWqejLh8SPFbiQbjk1U3BmxngUy4Zyck9jxVNptpBrj5ex6HNYvybcHPfvV +VuTxVc3TvwcdqQTgZoVNor2iuXhEow5YAgg4HXmkYj5jxyTxVM3XQVEblj0701Bsh1Io0RIqdTiq +80+TgVT81ycU5AzHiqVO2rF7Xm0RMhZiOea0IVA2kmqcEZ3DP61dHAwKyqO+h0QTSLaydwO3NIWy +eOKSNCwH0pQCOOnesLI0JUB21KuQfSmKTj/d4o3buB1qGBZj3ZHp2qfdgY6GooTxk9BUpbIGeKVt +NAYpI/HNRsAQCT70mVJ9D0oYBsY6Ci/QBApzn8qm+6Bk81GQc5zwKdkHryaOuonsSK3JFJLgxmkQ +nPtTpgdhI/KmlrYTOfnU+YcH1qLoy/yqSVWMhPYmoznevGNpxWqNtkddpXFt+FY+ozRw3CSvGJFV +8lG6MPStzTdq2gJ/u5rm9Ycs7djmlS+BHM9Zswbx0klkZF2Kxzj0qGJckd6dNknNTWce5x7kV2OV +o3MlG87DpFKpz6VVUkNWrexlY8kelZK8tn3pU3eNxSdpGxaAlBVlwMDioLXhQRVolfrXHJ+8dT2M +24iXlh61TyU+laj5B5HHTmq8kUTH0HpW8J20Zi4X2KDNupyPjv8AnSyQNyVHFRbXHattGjLWLLiM +CR7VJuPtWeHYVKkvNS4GkZplwXLocE8A0faSQT0quy7ufzqEhwMdqlQTBtosm5kHHXmj7Se30qtk +ikzyOarkQuYtiRmyemKsRIx6/WqMb45NXIrhR17is5p9DWMlYuRwKeTT5ZYYRjgYqg+oIAccEHiq +Ely8jHmpjRbd2ROqlojU+0GQ/e4Boa4yAPfis1JGPerUILscjOKpwURwlzGjau2c9cVqx4Kgmsy2 +Rc4z1rSDhUAzwOtcc9WbsQgVNCvAxyKg3A5NSxvkYxipYrFjp0GPeq8pHTPvU5b5eT0qjI+5vxxT +S6gWIsbR781MxOKhibb17VMMMM072E0IrYHvTGc4NLhiMkcdqh3c88in5oOpKjk8Vn6k3y8/lWgM +dAetZeq5K1dNe8SzC43dfwqxZczL9eKre9WLAfvV9yK6J/Cy09TvY5CLRc8fKK4rVH3SMPc11jFl +tBnjC1xd8W3sPc1NP4UjKGjbKQwWro9EU71PvzXNoDurqdBUl1z9ajGaQNaPwtnR3i4t/YCuUnA3 +Yz3rrdRYCHaPSuRnX58isLWaHR1ua+m4249a1RwQDWVpgIA44rWw3Wua2pUtw5PFOC4BFNU81Nz+ +B61cb7mbIjls9Dim7QTkd6l9fU0m3NO12K5XZWHTml5H86ldR2phGOM1okBGTk4P1pw2jFIFOc/n +UhxigGNO3nvS9RzxQBnnPrxR2zVOwkNG7ODUoAI54NJsBIP51IFxk1Mb3BkZyaDngZpxBPTNI3A5 +96u2pJCyqT9cikCnGPwpwPtSZFJ7lIjYkfLTwvy8+lIevTmnrwPepeoyIrz0pT07c08nHP61Ex5A +qmJDkAB/nTW5wRxxTlyMfrmnFenp3ppdh9RgXoTTWbmpWwwAHFRMDn6VPQQ9M4P6U4ZzyM01DwM8 +VOvfinHUH3ImbGffrUY5OecVYwDnimheuPWr2RIoyF4qOTBA69e1S4wD71E+cED0pvUENwh4pMgE +DrSgY/KmY5yetStRk0TBm4/Ko9RYCE5znFPiUk5HeodUV/KbOenWto6kNanISnMhwepp1qpMq4Pf +FRPjex96nssmZPQGlPSLOtbHaINtoAT/AA1xt8SZXOehNdhhvsp91rjbvPmODxycGiPwowp7soNj +J65zxWlpQHmr9azG+9xWnpIHmr6A1dX4Co2TZvapnyB/OuabGSOcjNdDq8n7hQPQVzLNknA7Goiu +w4bHSaL90ZPettgMZB6dawdGLBQcfnW27HuPTFYx0kyampGoBJ5qdMACq24jnpU8WTmtlYyY7jkm +kXaO3Skcc+lG3PIJ4FNKxIyQ/kDRnjJqQp2Ipkqhec0XdhaFOVVbKkcGs5rZQxyO+KvyliRioXBA +2jrUtmiKbWzAZB71FIsmMk9KuETdxTWUsMH8aV7F9Cou45UnvTnixg/pT40BJBNK6HPWle5L0EUB +FqBi0re3vUshI4Bpsad/TpT6Gb3GlVXnvWXdzjzCo7mtO6chTXM3EpMpJ7GtqMeZtmM58jTNJuAD +60zPrkelQxThkAPNOBPXHWrUHsd6xKa0H7jjr7VUmJzipXZhnnpVcndya0jGzOWtV5lYZyT1qzbx +5fJ6CokAJxV+JFUepJoqSsjGnDqXrKNXkAHtXVWuxRx2rn9MT5ga6BcRxnPBNedPWRu9FYccyyAY +71pQR7QB7dap2sZJ3n0rQRfl64rRamdheBx+RqvM2M1JJkYNVWYtn86ibNIINvejcQPftSg8AnvT +ec1nobIQZJP05qYAcADPQUiDJ59ualwMZ9am12VcTHPAp2OMmhQcE1IB8o+tO/QBioT1p4j447VI +qAdutOC4zxStoO4zYOKAnTHUGpwp/LmgDmr5VYVyAqQcYpQufwFTFRu6U4KR6c0JDuRKmKUrzUoX +86eBxV2QrkSrwacEAOakXPpSBaaWlibjQB3p2KeUzxSBCOv4VQriBRzmmkU4Bi3FGw96dgIii/jT +gM4BqQrngU4L7dKmzHciKEDik2kCrDLxTdu3AoWgrkJTOTULoRVz5elRMpJIoUQuU2GBjvUW1s1a +KfN60hTk1Ni0yttPek29cVYwOf50wjGMdam2g7kOw8jvTdoB4qzgnA70xkxRYLkHQmmZJPTn1qdo +9p+tMZec0raiICp4NMbg1MQ2RSOuaFcTK5GR781EMqfXOalLEHjvQFwueKtJEMgwxY55A5pkkYcH +AqygHOT+FGADVoyZmrEc4IrNvrVuWx16V0BQcHHFVbuNXUj2NCJ5tTiLhSrccVUY1uXtuASOprFk +jKn8a7aUroxqx6oi5zxRnp7UcikroOUt28pyFqcsFOTnk9aoRHawq8/zgEVnUOihsy1C+4YqXJyB +zxVW0co4B4HfPvWoYcqGX0Fck9HY6IvQmt3fbzx71DdAdcnpWnawRtAc9qz7jnI9OtZ2ZSavoYs6 +g47VEoyMVNOpLHHao0HBzzXTF+6S/iOj8PjYkh7YqhqTZlftWnoa4hYn0NZepYMj+orD7RtHRsyM +nd+Ndhox/dJjqa5IRusnzDByDzXY6QpCIQc8dq3mZx2bN2NBxzxU3A7VHGOQDUrHAx2pJaGbHg4B +Oc0rXQ2/KKjB4qTywR26VoiHZlXLucnipVHt2p5UADPajco7UARspzioyvPNBnVn2r1FOO48VDLu +DgMuKaibRyMetP2nBqJt2M5PWpk9RxHkMenTNKRkAHriiMNx9c09weTUdblkexcZ/CmlR159KFJA +/GrBTCZI61Vr6CehUcEtgUmR09qmK5bOKhdST+NLQdxo27sGlKrnNMdec1IFNO9yRVbaQPepsqah +CdMc4PNSgdaFuJlSR+SKy9Qk4IHvWnLnJPasO+zzz0pvXcasZM8iiN+OoxXPt1P1rZu8hDgj3rFP +U1vSOWqrMfF94D1Nddpce9AtclB99frXb6LECOT1FVLchOyFv4iIjgcY61xVznzGz613eqM6wuox +jFcHcf6w0JiZDUkP3hUdSwAlxinLYdP4kbtqTn5ciur0ksSua5eyUnZx711ulKMqe9eRU+M9yXwH +TRdFpZCufQ01CcUEZ610LQ42rgoJbNSBaaoPSpVB71V9BMXGRz6UzOCB61OVIFRlRjI61lqMQDml +PFKuMDPepCo69qbsBGOVPapIl/GlI4xT405x+NDsISWMcVAIvm3d6sSg54pq8jkVOlwu7EL9RTgM +j+tLIvI9KeBgLVLcG9ByqB171FJlcGrGCq1E/UDGatslEWeee9POO2KaQu71NK2AOlZssaeVqCQ4 +5AqwQMCoJfTFZtMpCxruQnFLjjBpVHyZzQp3Ag07AKcBRULHA9c1MwwMVWcMOnc0mJBkfnVWU88G +pznJB9OKruMdu9ZWLRUbeTkj5gccVbTl17VCnLjP4Ve2KCpHXvXVR2MK1i0vGMVJk5A7VGp6fnUn +XrWyRyMl5KmvN/GRO4ge9ejE4Rq8y8ZMfNIB+taR+JCjszjHIJOBjJ4FR07mm10mYUlLRQAlLxRS +UAFLQSTgccDFJQAtFGCelJQAtFJRQAUtJSg4INABRSUtABRRRigBKWiigAPBI9DRRRQIKKKKBhRT +pJJJXeSRizuxZie5NMoAWgEgEDuMGiigAooooAKKKKACpIYJrlvLhQtIeQB6VHRQAEEHB4NSQqGl +jVujMAfxqPnNS22zz4i4yodSR6jNHoTL4WfZK9jXFfFRc6FCT2u0/wDQTXarXE/FgAaDA3TF2o/8 +dNLoy4/Ejwa52rkn1/OsyVs5q3dMC2feqLZJNYQR2TlcZ3owaUKaeEFaXMrNkfbpQF5qULipFTHN +S5Fxp3IgjVbhRuFxxnNCKCeamUfy61lKVzphBIlwO3anL7/WmLncKlG0cnrWDNizE2APpS5JbB6G +lQKR74p2BnrxWNy2KD2HpTlU/jimAFj0qVAQDkc470AWLflSDRJJt4HXtT4hgcHrUUqgE9eDSWrE +MViCT3qwCcA4wahjUE8VO+4DHYClLcBD1/GnbM0yPGec8VM2MY7k9adxACQeelOmI8s89RSnB4NR +3GBFxwBTjvYTMOZju9+1RL/rFPrSysC5HuabCoaROau1ka9DsbLK2gyMcGuX1Y/vG9zXVW3FqM+n +FclqhzI/1NVSXuI5/tsxZP61c01cyr654qlLjPHermmsBKp6c9a3qfATB++aer7RD7jsa51PvVt6 +xdK8eBWEhyw+tVTVoGEpe8dBbBfLA9ulScAf1qGzcbR6YqZyDnt71xtO7Oy4x1DgnP0qnIhySOex +qwSVqNyTkHvVxuJ2K+SOGokKMpwBTiRj+tMJBBxWqE9So6Y6U0cc1KxXJxUcmOMVsmYSSWqJUkA6 +mlaRD+VV4kLkY5q79jYpnP4VMuVPUIuTRWYoc4FM+Uc5pskTxnnpUWT0rRLTQxc2nqS78dKQymox +j1pQKdkTzNjssacFoRckVcjtGYZqZSUdzSEHIZDETzWjHHtxkVLb2eBz0qZlUDjtXHOpzM7YR5UO +izkDsRVocDmq8PXP41YYqcAVj10LYm4rwfwqwh4681UJII7dqtRAYyelSwFmYopxzkVVUljkj3q0 ++059O5qv8qnFGrBMmVjk88d6sIc9Peqit/hUquMjHajqD2JyRjFQjgjjPWlJ4zSBj2oQh+f0qjqS +MY89BirS8swPQVX1KVQhHbpWtPchnOhRk89Ktaan79enWo1A5P1q5pa7rlfrWlSXus1tY6q4BW2H +HVa4u8++2feu8u4/9F9gK4S9/wBY3s1NaJGNJ3uUVA3cDvXV+HwNw4561yyDLda6rQM7gf5VljH7 +htBe6zc1Vv3OOnFclLnfn3rqtUbEXPp1rlpPvAVlfUVH4Tb0xcqCTxitXmszTflQd61Ax3D/ADmu +dDluM7/yqUZ4z0pp5I/OnHPHfFXEhgcdxUbHoR0pckg0gI9M05OzEloJn2pG24/Cl4zgUpUnjHNX +fQER46inAEZ47VIB+dO2k49qLu24EQTBzSFQfpUxz07VGBgHNVpuxAoA4FPIde3bIqNlK8inglhk +jtSi03YUiMMxOT2ok57VIF9fxFMkBbParF1KwBOTml2Nz3zUgXA5pRkHNKyKuRhO1PZcDrzSoD0p +0gJ/pQkthNlc84J7UAgnpk1JsPXvQQB0FFkAgUEZpWAIA/On7Bgc9e1MYZ6ZNPUYAKOMZprAEnsR +S/8A6qXknI5qbAMweMCrCKcE5psaHvU4TimgZBjIpygcVJsAHFARsDtVqJNxhXgD2qMqvBHUVKSD +nPFRvjJx0zxSDW5CVY5pnfB69qmPy496aRuPHehbD6ksA71Fq/8Ax7sc84qzFGQcnvzWbrjt5JX1 +raC0M3qzj2B3Mamst3nLz0NRjGWz0yetS2RHnZHBJ4qZfCzrOxdz9kyP7tcdeEFz65NdPcOy2wxx +8tcrdHliTQuiMaatdlEg5+tbGkA+YorHP3iM5963NEx5i881Vb4CodS9q+FjFc6cZycdRXS62AEH +4VzJxuHPFKCHH4To9Iwq1ql8kZPHasvSdpjArW2huGrCO7JqbjODgg1aiGFz6VD5OOQM+lWIwQMV +qtdTJoV0zzihVA6+tSEnFNAOarZEjmVSPeqkq54FWSPTNN8pjzVdNBGd5W08+lMZe/1q+6kg5H41 +AU4J9OazasWmU5F4BxVZvvHirjlj2603YvOe9J6FX0KhAGCfWmk4xUjD5cVXmJVQKXkS3oRsd749 +KkOEGPSoU3Z9DgU2aQ9aLdCNSrfNkHn1rnZPvH61s3bnY2O5rEJyTmu7DqyOSs9RyMVPFX4Xyozz +ms6pFldehroS1M4TsTzkjj3qBT6UjSFutCDJFJ2HzczLtvGzkYHWtJYc4UDnaPzpthCNoPetSO3J +xx+NebVq6nfFWRNp8G0L3Na5G7CnkcVWtYwg6Y61YRtxOeMVh1E3dl6IBelTg4HFVUYkgipd+Og+ +tWrkpCSMSDVdTn6VIW6CmHC5OOtRLVm8VoOHBA/EU4AcfWmrjlsU/JH0qG9S0PXAqZVz0qJFxg54 +OOKtKncUb6DEVADUgT2pUqXAAz7U7aiGqBTsDinKpz7GlKjjFaK9ibjcN9KMYxxTx70oU1NirjVA +JHFSAD0pQvbNOVatIlibM0gXGc1MMd6NpNUK5GExzinbVI6c5qYIMCk2EVVhXI1Uk59KXavUVIEJ +OKdjBxjpQl0JuQ7eOKXYAOPxqTGOfWkIJBoSY72ISvYGl2mpNlG0cU9GFyLnJoK+lTbMmjGB+FTY +dyuRg0xvapytMK800gK59qbjJ5qZk7imFSOtJoq6IGU859aTbjkipyBSFRjpmokhpkOP0pjY71YK +j8aZgflU2Y7lcr6VGU9Pyq0VzjFRsppNCuVth61DIWOcVaxz7VDJGck0PYOpWbAoXG1vpTyveoDu +HT8aq4mgULgeuakCgk+1RBtvA609GySB3FaRtYykmOZVwRiqt2qheBV7HHv61WuwShPpVt6WMepz +N+udzBfrWFcDOBgDAxkd/rW/ORlgR1rFu05J7VVJ6lS2M1hzTKkcd+lNxkV2pnG1qIvUVpxLlFrN +AwRWpCDsUj0FZ1Wb4dXuKEO7LHkYGK2LQh1Ve2Ko7C6dMHrUllcNFJg+9c0tTRG3DHJHG2enNZM6 +lpDj8a3I3Voz3rEuCySMDnBrNNmiKF1F/EtVkAJq6zdVY9etV2iw/TjNbRloK2p1GjoPszYPbk1g +anu81/qa6HSjttnKrgEdq5/UeWc+/Ws47o0XW5TjMrbEZsqrEgfWut0pSESuRtcmTHoa7DTAdq49 +K0lrKzEvhNlSCRUnzHtUSVOBnjHFXexiBPTFSgkAA0zaAacMk1V+xNhXI4phCbeKeyDIzTWHGBVW +EVhbKJAwH4087kNThRnmmuvXvU2HcauByailBLAjj2qRmAAHtTU549KllIcgOM+1LIMjcakVeOaS +XgYHFZqJVysq4OasOTtAHSmIMnJPFSOAygDrTtbUGyFQTTWwDmnrle/ekbBJJpvUZEwDDNIpGTR8 +2Sv6UgAGc+hoskIepyaVm+Un6VEM8c092BUAHFGyuIjfBU8DJrAv8Bj1I6VuSEBcE+tYF8G5Ocjm +hgjCvPuk9iDWMeprYviNh96x63pbHNW3JbcZkWuy0mUKikg8CuNtxl1+tddYKfKHqcVT3IWqsP1W +53RnB6iuOmyXNdNqu4IDzXMSnLEmn1E9FYjqa3+/UNTW/wB8US2HS+NHRWIGQa7DSkyAeK5HTQCR +3zgV2empt2gccV5LV6h7VR+6bKnApQwJpmCAKcqjPFb3OUmA7VLjbj1qAHn6VIJPm/rT1ETE5UEm +mnAozgD3NB7YrPUELwcUvJ+lJtANKPamgAcgVPHx+VRgDBNSoML/AFppaib0EkOTShOPQU8L/Onu +Qq01HqS5GfcOBj2pBcx4UE81Q1y7a0hLiuSGr31wwZTgA80RtfUpptaHozOrKMelMOM1kaReTXMK +lxzWwmTg4xTe5K0QwryMUrr39KcRyPSlcZNJ6lXIyABzioHXdxVh145qL6d+azaKTI+xAoACjNSK +FAJp23gcUW1HchkbioGIA5+tWJVxVVySalhETAyTjmoZMk8+lTr3IqGU5yDUNWLWrK4wrAkfjVtP +mYcfLxiqgAZgPfpV1F29utb0n7tznrlj+YqUDvUChgFJPPephg10KzON3Q+QAIfpXlvjDJnPWvUp +D+7avKvF3/HyeauPxDj1OTbrTac2M8UnFdBmJRRTozGrAupZR2BxmgAeN4yoYY3KGHuDTakmmady +5AXgAKOigdAKjoASiiigByO8bq6HDKQQfQim0UtABRRSUALSUtFABRSUtABRRRQAUUUUAFFFFABR +RRQAUUUUAFFFFABRRRQAUoIAYEZyMA+lJTlCkOSwBABA9eaAG0UUfjQAVJAVWWNm6BgTUdAoEfZy +1w/xaydAt8f8/if+gtXcLXGfFJFfRLfPa7X/ANBNK9k/mVFXkj58uIuSeaq7Dn/PFbk0CZNUpETP +T/69cimeg4IppHnrTjGOfan8A4+lLzn1/pTuxWREq8H608beRnFKV6e/WkxnpxihstKwA4PfrT1O +enU0m0556nrQqjP40mWTopxkVNtxyTUUR4HrUvoQfzrF7mqLMWSMetSbVH16UxTtBxQgYk59qytc +bZNninrywxyOlRbu1SxSFSpDbSpByO1J7AWkyfpTXGD9achU5I64qM55Ge/NLqA+MHknt6VI3ygk +U2NiVHtSO7Y9KnqJ3Gh1yT71MvzVnbmL4GetaEO7aPp1NW4gSyxlAhzkMMgj+VQXCsYz9Kl7gdcd +qklAEXPcU7e9dEp2RzUqBSe5z0pYRlxjqKWYZcjHTmlhOJAMdSKb2Og6+DP2QDHRa5PUlG5z9a62 +LP2Qf7tchqO3e/rmtIfw4nJH42Ycw+bA9TU0B2AMKhl4bBPepok3ACuiXw6kw+JkF3O0hwe1QRE7 +sVPdxhGx3qGHrzWsbcuhyO/tDXhcqmR1Apj3ZXjH1pglRFAqtI+8+lc8YXep0ylbYti7UnkUGcEH ++VUN23j8aQyMeSck9av2aJ9rYtNL05wOKh84AHFQFz0phzVqCM5Vn0JvMBqazg+2yiEyxxcFi8hw +ABVQHHUA5FJ61fKZubZZhdUbOa0orvIVAvJ4AHeshM557VYVR3rKpBN6m9OUraBO4fJHQ1VYVYdT +nAqPGTVR0RE1dke2pUiJ/GpI4s1bSNQM+tKVSxdOj3G29uvUjitaKJQAMdKoh1BAHHNW4ZCwJ3fS +uWbb3OuKS0RcbbgBTx7UgQEYI96iRhgfWpg3BrBlCBTzjj3obcD75pDJ3qMsW5o5R3JOOB371Zjb +gDmqe4Y681IhY49KGOxZOCCBmo9nSpAOnelyB6ZNJNWJG7Rg9aVcYFKWXgbadhAB+dDktkCHbRjp +x1o+6DQZAcdaQMuSKVmAKvJJrK1Mk5HpWuCOmazNQRepPStaa6kN6mYq8HAq7pIxOv1zVMFcEAdq +vaQuZ19/0p1PhZszq72UfZx3+WuHuzl2z15rtdSXZb5HpXB3jHe341qrto56eibRGn3vpXXaBhSf +zrj4c7hXY6CFxkdawxeiR0Rd4GjqxHl1yrYMgFdNqxG0d/auaKBpBWV9WFJe6dHp6AwrV9VI4FU9 +PBEY+gq2ScjHfrWEbPYUtxx96k3AgDv3qLvUoAwMda2Wr0M2tBuMdPrTQME4FOfNC1DTbGhpXnI9 +KceAD1Pej6fjSAljgdKskeu306UpPPFCrnrxipAoHJqrOwXIeeKbjtUxAz/Km7Oc5oewDWKgY9aQ +ZI9qjlZg2ACfpUq9BkdRR1F0EAPemkAGpV6Y7VFJuz+FaJWRN9RpU5BprKevvTwCabzmk3pdDBQT +07UN2zU0cbYz+NNZOTzikkO+pEQRyPpTDnIFPzyRTtuSKYCDHf8AOkK4JqTbx7U1lz19Kb2DqRgD +uaUL3pwj46807gDFQkFxY+KkYtihACKVumO9VYRGrZJz2NSlTt4oUD0oJyPpR1AZg85qJ1Y9Klzk ++lMZuh7U20kHUhKHGTzigJzxTi2PpRkkjFLd2GWIyDx3FZWuo/lZ64FacCjeMnOao68MRHHpXRDZ +mT3RxZ7jn1qSyH71cVDJxnvVnTBuk49RxUSdoNnab9w/7jb2wM1y12Rk/WupvlUQdeK5W5xu/GiG +6MlsyoOoFb+hffHesN/s+4eVu991dJ4eQMeBVYj4SaezZLrzDCjpXNr9707V0fiEIMY61zaAbxx6 +UQ2ZUdjqNKjygPqK2PLIGazNKXagzWvuyPw61zwe4qm4wb8YPapURgc5oRB+NWI05Ga0V2ZMaBu4 +PalOAc1Jtwc/yphyeOM+taJakDSDgYpqEjOeakAJGKAo5BHSquJorTM2e9QYY7s8Zq1KoOMjpUDK +Vy2eKloaZSlVgxANJlduKmdSwJHeoXj2gZ9Khoq+hWlwDgcVQnYc49auXJwCe9ZmWBJPWpAfkBRj +v1qvI5APbHalZ2LDI61C+W604omRTu+V3HqKyT1rWvRhDjpWYFzz2ruov3TkrK8rDOv6UVJtUdaa +wHatrmLjYbU9uhZhUFXbQEOKmbsi6SvI6KwRQFGM1pjPHbHQVn2jAID3xVxJN5Az7V5Et7s7y3E5 +wO3apiBxj8agXjg1NH1600SywpIA5qXJJ/CoOCQKkz2HYYNHUpD8dfekYZpy4A45pDzznoaiW5pE +VMdKf7Y70wKRn1p6ZPXsah3bNETJjAqdckVGvsKlTOKcdwZKBxT8HOKiU45PbvUycjJ71otSRyg8 +DpTwKFXvTgMYzVdRCbacqsAacFyTzTsde1UkIbjuKkAxjHSgAU5VOKroJsUKO9LtIpaUVXqSJ0NL +ilGaUA0dRAqAZpSKUA9aUZNNKwmxmF9KQqfwpzAdfyppLfKKYDQPWkKkc0/Hel65GelK6uO5GuDk +9KDzTyDjNNbOKXUER4OSe1NYdPWpCDzj0qJsg80+gxpphGTUhPTimH3qXuUiMgUnY5pWx170xffm +plo7FC4yKTZipBgDHX1phOelLS1xDNuKjccVLzxTCOc9qGgIG+UcCoSTn8qsNnn6VA364qQKzjrn +jNVn4564q3Jkj0qo/PXtR5jInZifrToeCKjbkfL25NEb7duO9UtromSLy4IAqG5xtIHpSo55FVbt ++Dz+VaI55LU5+9bDN6nNZcu09fWtTUcde5FY7sVOB65q4K+oylKME1EKtS7TzVcle1dUXoc81Z3H +hAcetakCoiDdWfEVrQUfID6Csqr6HZQgmm0XY1UDPXiq0isjhgMjqB6VJbOduGPHerbojKT7CsL2 +djNlmyuC0QyMCqt+OQw71JBKgiKg8iqrz+Y21vek42dyosqzjJB6cVEjbsL+dSuyksKrRkB60Wwd +bnX6aSlsc9MVhaouSx9617CYfZiM/wANZFyQ5dSe9Zp6o0XVmVbHbKPY12WmMQi5rkI4v3uAK6zT +eVAGRxWsrN3JXwm7GQQAB61Mu7I/lUUGCB61IoG7rnmrRkyUnn5hzSoAWqNmBNSRcEVXkSLKuB9K +iBOeanf5jxUWOeadhIeQeDionZlyMdql5ximSLxmkmOxXA3HnrUgUKcr1NLtIPrQ3TP5VLVykyUH +GKZKSc0seTgHr2pJMpnNRZ2HdEB3YwDUisUWkHIz3phOeKp7ASqUKnP1qBjzim5bBHTFMYnOTwKQ +xzEqRimswbHam8sev41EWO6nuSyUNjmo5ZOM5o3H0xUE7dhTaQh7SZU/Ssa9cKDk9asvKVJ54rJu +5gc59eKrlE5WMm/YEGs2rt3Ju4qlWlNWRz1JXZPaDMq/Wux0/bgAAYxXHWrBJVJ6V2Fl5TxLIHAO +BT6i6FbWiuDxjNcpJ1P1rf1e5Vs/N9BXPMTk5ppMm4qGMEh1JBGMg8irds1tG4MYLtxguBgfhzn/ +ADxVKp7X747e9Eti6Xxo6XTtzspPXiu10xfu59K43TE3FSOOa7SwZVC9+leVe9Q9eppE1wAeaToT +ilTJyR6U7bnAxXTZI5REyTzT/lU80z5geOlSgDgkUnoFxeuD6U0nNOYkLxUUROeRUdBonB6CpODg +U1KcWyeeKaEx4GPyqRAW4qJM8k1OvC5NBLJWwB71WnkG0VI0g29ahfkU2+iEl3MPV7aW8iMYGc1z +qaHcKwXpzXcFAT0oMCE9Ky95s2UklYz9MtHtYwvt1rWjyevamhAKmjxzWqM5O4w4LelKwFOI+b2p +GHzA03axJHIuaiZQDxViTOBmom61m0Whu30709Q2aa/GD2pVIziloDIJgdw5qqwOcCrco5/CoCCO +tRLYuJEoOOaimwDnvVlVz1/IVXuFG5tvQHjNRK9rlJ6kMOPMX2NaHes6LLSDHHrWmQRiuilrE56+ +4DOcU/b3zigZJzTsZHNbI5SObcsR9MV5V4qbddNnrXqtycRN6YNeT+KSPtTAe9XDcaejObODSUpx +SV0mQlFFFABRRRQAUUU5MHcO5U4oENpKKWgYUUUUAFFFFABRRRQAUUUEEdaACiiigAooooAASOh9 +aKKKACjiiigAooooAOOOaViCxIAAJJwO1JRQAUUUUAHTII9vpRRRQAU6NC7qg6sQKZU1qUFxCXOF +8xcn0GaCZNpNo+yVrjfiixXQ4f8Ar6X/ANBNdktcd8Uf+QHDxn/S0/8AQTSezNIfEjw+6k69s1mO +3LVpzoetUzEgI9q4U0ek4lbyzjNOA796snaB+OagJIyDg89fWne4WsNZcjccHtihc0/IP+FIjflQ +NKwEkDpnNIyFcf7uT7VMFTbgjn2okCv84z0AP4cUrjBNh7cD1p6bA3J4702FVAyAff8ACpMA8Yyc +1D3NESAjG1Sdv9KkVgM84pFjKp6d6jO4nFRuyix1I7nmnYKkEio436k04nce5xS9RlmJzng/TNSb +SetRouBk8setWBgAZ69ai1mIQdOPypshGP61IQuCaiOTkUtBbjYowTuY9KtOyqD6dcVBEecVNIGI +4HQDiqBkKzEsPSrM8pEJ+nWoI4wCP72as3MeICSO1EdxSsc7IcswPWnW5LTIOnNI2QxyMEUtpj7Q +ufWh/CzfQ7EAragHutcZqKsHfvnOK7RmAth9OK43UmOT9TWsVaMUci+JmFL96prdwp5xUMhyc+9L +jjI611NXVjJOzbQl44Y1DH1J9KJt2eRSICa0StE595k7FscUzk4pTnv2pRx0OelT0LerGHd0NNqY +0Rx+YyqOd2BT5hcupCFJpdhPGK1L7TLrS7hrW4ChwM/Kcgg1A0a9QMe1JzsxqCauVBESKPKOBirW +NvfqOajzyCefc0uZj9mhqoR9KlAbtzQvbOOasRqCM/xetRKRtGKKbDBOT3oVfUcVNKuW4pY0J7d6 +fNoChqSJFgbsHrTge5I6dKf0UjsMVHzzk+1Y3ubLQVSCTx3qxEV2kjtUCg4FTqO2MAAVMikTAsAO +Dg5GamDcZFRIuRg9MGnEBazbQx/H3qa7DkCmE56H8KfGh6HFJ6ajSFUE1YhHqOhqPZ2qxAF6dql6 +odyyAAPcVE2QSRzUpJAwTVd5Ofx5pJEhuYZB/AU/ccD2/WoN+7g9akDZoSQ2O3DbSDvyaQKCB65p ++GGQenah72EIpYnAqHUVwo74q1GMnNU9RbjGenerixdTIJUA/rWt4fAecdMjpWO6kjPrW94YUG4w +RVVPhLlfU39ZXZbsfavPrrl25r0TXBi3b6V51cr87HoK6OqOal8LI4eTXZaCCB9MVx9vncK7LQlb +aD7VyYx7HTD+GWdW+6M+lc6DmUL71vawxwB69awIz+9GPWs31Y6Wx1NiP3Q7VaVef5VWsuIl+nSr +IJz1rGK0JluBByMGn87eKQc/UcU8jA+orRb6EMhySee9PFLtXNJtJ6UrNsBOR/jTlAP1puCeaeh/ +lzVJg0OQt3oyetKTwDikzuIqmSSCPIzTdoT3zUmdoHao2YEcVelhEMgBOelOTBWo3JJzUiYYcVN9 +Sugo6ZpuM9ac/C8UiGqdyQC496glznAFT461EwDMOamS6IaJElPH0prsfxpyR8cHmkdB2q1oTpci +Kgfyp4xj+tIVJ4NPAwopehTExnP86aR6daeTgcdaYd3PviqduhKuGDxTec+tL6ZpyoOT61N9BoUF +sAnp0Ap2SeKQg/4Uqg8YoGOXihxgCnKAKRznrRYQ0Y2+9MbGc4zUoU9e1MkXGQKUthogIP4elKin +BJFA54p445pq4iW3Vd/Pes7XtgQKW2gkZPpWjAeTmsTxIxKnit6bvFkPWSMTUIfD8dv/AKHNLJcb +uSwwCPYf/XP0pmkRhpQOnNZhJyen1rY0IfvVPvU1n7h0xXL1NjU4/Lhz7VyNwMk12WsA+T04rlNT +tPsjxgHKyQRyj/gQ/CqgtTOMlaxmj71dX4bXJPpXKpnca6/w4mASKWI2SHD4WQ+JMqQBzXORqwdV +PB4PPvXQ+JXO/wDSufgBLg+4FUtEwhqkdjpYPkjPNaIIXr3qlpKnygTz0q843HOK5YPQU9x6Pk47 +VYU88dqrouOtWAAo/CtlexkyUZwTTCccYpQ27p6UbCT+NadCbjgBjnHSm7QMmpMAYHQUwlQRTtZk +3IXXPNV5SBxjirEvHNVZCTyPwpMCtJy27H4DtUUpJUGpyRkH6VVum2qAKl7FFG5DGNnyABwPc+gq +ix2rVy5YKsaHhuWP0PSqMhK5A+XGRWUlZ2Li9CEtjJ7mmorMScUzNW7aNsbjyap6Ikzr1MKQTVOO +JCvvWpfIvX8KoLxXRCXulUaSlK7G/Zg3QVFPamMZq/G3OTSXxGynGcuaxvXw8FBuxjAd6vWed498 +VU9qu2vBz3rao/dPMpRSZtRMFXk9O1W7fLcjHXNZQlA45rRsmOAT09q86SsdKNLO4gZqygwcnpVe +IBhu+lWwBxSjqIf15PNPQcHNN4OCOD3pemOaTKiO5wPrTjn8qTPJGOOKUE9DUGkRyg5OTxU0eKYu +O3apVBAqOpZKAMCnjk8UxAc1MBgA5p26jJFHA/WnjbxTI85qQdzVx2JY9eT7CnHuB1po6DAqT+IV +Vr6iHr0HrinDnmkHFKOatakigHpUgznFR+9OB71VwZJ1o6cUgzR0/GnqSO7cUvIGTTVz1p2CetP0 +ExVz2p3TnvTRweaX1ouJgwHWm9vrQS3PpTe9O4JBgdO1KoweO9KAeMUdOTQwFJqJiR0p+QelNamw +Q3cOR3qJ/mINOY4JFMLAnHtSLQZGKjIOcU8hfyqNjk46YqbaAiOTA4pgyOTT2Xdzn2pdvAz2qW2W +hMkd6TJGcUhzRn0pNisKDkc9qa33aXP601sbc0dNREJx+FQv1z27VMx4NQH271FxkD45qlL8x69K +uPjnP0qo55+tJ9iiCQEAUxXAJ6U5zxn9Kh4HX1ppiZaDnaWqrcMCD245pzSfL+FU5WO05/WtW7bG +DV2Zd22489qyZDjOMVoXROTgcZrMlYZ/StqWpE1YZIAQaqtwasFuMVXcHNdUDnqbCxsQwrVRjsHo +ax+9XIphsx0qakbm2Fq8t0yzHM0ZHOe1aKT5GD0rHyCM1JE5yBWUoX1DmuasowMj7pqg8jB+fWrk +UysuwkZqrcR9SetZR0dmapkbOCQR2pi8sBwOaj6HGMYqRMbl9zW1rIS3Ons49ttkemKxrlikuBxn +NdBbogtOPSsG9Qq4auaPxGvcZEuJOa6ayHyLj0rn4l3lWHX1roLQHCg+1WnfcT2NaFiq5PNO3Nuy +KjhAxipVCDIFXHVGTQ4HJ5qWMnn1qNSO9SqvU9q0V73JaHEZP1FABWk5GacARt96bJQ4c8UjD5sU +BgDxTie/eq0AYYzw3rUb4GKkkbiovvsOKhrQpEigYqGQOd351YC4FRSEVNykiH5gCOtCLwc++KUg +9felCnkA89RUt2GkV2zkgc0wgEY6YpX3Bj9aaxbg4xVJdxMCGHIFQyA5BxU7E49qr7yTgetOyJuB +Y9OM+tU5pBnGelWHIHIrNuWwcj0q1HoS2V55GJ68Vl3Z+Q845q7NlsAcetZs+SCPrV2MZSuZcrZP +41HT5cbjimVaM2SRRvKwVOTWibfUo0AXIUjtU/h0W/2jM3IPFdVdwWxj3RgdKnV6oaaWjPP5hOrE +SE5BqE1paljzG4GKzST0qlfqJhU9scODVerNrjfz60p/CaUf4iOq0xd34Cuy06IFVzXIaSg+XFdp +p4yoP8IryI/GevVWhpKAAacpwT6UEDGPxpB1z2rstc49hcZ596fjoPWkAUkGnEjP40ndIAI5waai +8nPSn/e/KkTng1mmMlFLjJFIo6e1GQOlUIkQAHGadNu249KjXg81Ow3LRewupSMh4zUgfNPaFTjP +rSGMjpU3K0BeWBqbbk1HGvUntTycHNONiWxdoz9KVAM0hxjrSxngmqsLoOI5zUTE7qkBySaYPve1 +FtLAhrmmsAcfrUjYJqMtyfSoKEYKR9Kbk+lDEE4FAGKTGRuCT3qB2x371O2ANoqvLjPTNZtlIMFh +x3qCZW5HSpfmUdaZI2RzUuzKW5VjYI/pWir5UGqOVcgAVaWRCq7SGAJBx610Utjnr7k6ZyKe/Qel +R7sAVG8pIx6Vqk7nMyS45gb6V5X4kt3eZ29K9Olk/ctnrg15tr91GskqHqTWsF71g6M5IgZ5FJxU +smMnvnpUVb2MxKKKKACijr0ooASlBxgjqDwaKSgBTgngYFFGaKACiiigAooooAKKKKAFBwCPWkoo +oAKKP6UUAFFFFABRRRQAUUA4IJAPPQ0UAFKCQGAxyMGkooAKKKOpoAKKOmaKACiiigAqa1XfNGPf +P5c1DT4Q7SIqfeY4H1NCE7W1Psta5L4ljOiQg/8AP0n/AKCa61a5X4kZ/sWL/r6T/wBBNTLZmlP4 +0eH3A69qz5BjP5VrXCknNZ7oOfrXAj0mVj6ehFR/KeOvNSSAcHoe9MUDJPpVCDj+HIOMUiLt6/nT +wOQPWnkgAA880r6D8xRgdMH3pdp24PG/p7ioiwFSjLHI6YHWk9ClroOjRwQO1SrGAe3WnxJx81OP +H5dKzvcvYkxkDioWRd2RU6EsKifAOMc1KKuIoAx65OakwoOR1qI5HPTPpS+ZgChhcvKQwHb1qXAx +x9Kgtzzz0qyFwDmlcTInPBx25xUOSCT39aezcnHr0pdgVckdRSTQxkJ3N7Va2tjP4VHbxDOfWrhU +YGcegpN66ARwx/MD71avcJB17U2IY+vFR6m/7rHtyK0p7mctWjm5Tl2pbQnz1x65ppwSx/GpbD5r +hR3zUvSLOk6tg32Ydfu1x2pffPtkV3M0ZFrj1FcLqYIdsHqa1htG5yx3ZiuPm4qzAu78qrt97rVm +GumexEFqyG7jUHIqGAc598VJdE5/nTbfBaqXwGGntCdkRZAcblB6HjIpdm9jjnoOmOlPkC4X24p8 +TY656VHM7GnKrlZ0K7uKjUYIP5VcZgc4qs3XIpp3E0lqSGRmYsxLMepY5JNJv5H61H+HPvTsE0NI +SD3HvSHOc96dnbQc96ZVhY8Z/nVxBxxjmqiHmrCy4GTxWc7msdtSORRuxjHNWoohj1qr5iHrnfkY ++nOavW+XB2ZOFLfQConew4W1GvGAOfTFRJGfwzUj8nPPSkGcZHbrUp6FjVXacdhVlBnkd+tRdRgc +n2q5bR54I61MmNDwgHI9KiccHPbjmrhUgYAqGSPPI/Gs72Gisq8c1KgYYPanIg49jVjywoycYOKT +lqUQ/MDViLJGe9QPyeOT0IFWYRnvxxQ2LoObdjDVUbAfBIHOM1akYAn9KpthmJP1poQuduMClBLE +885FJwQc96QHBAPsaEPQtqRjOeaGYjB9OtICfQYpEwTzzmkrCLMRHFZ+qIPwA5xWnDGo5FZurYFU +txR3MdumVHpXQ+GQfOzjr3rntpP0xmun8MsFb1p1dUkaTejNnXziAg+ledXDfMa7zxDN+7x7VwVw +fmJ710v4kc1HSLEhzuA75rtNE3BAfYVxttksK7TRflQ56YrjxerSOn/l2M1nJP1FYUQ/eitnV23N +64rIhAMi44Oah9R0/hOpszmIZ/OrWR36dqp2ufKWrGOck1C+EzluSKPT1qTgDk0xfrinEHoKpbEv +UZjJBJ4qbjH4VFt6Z7087cfjVRExFIJAp5HpxUI4PXpU0bZ60IGR7nB+maXLZGOKc64INOUEmiXk +CHgggA9ahYDkVMRxjjIqIkZPrV7IkrtweKli3ACozyfWpV5AwKjqV0HEkjGKZJuAQDqzYqfaOvfB +qKXICtjO1s1rFGbBh2zUYUBqmwTjHek285xg1NrlIcOQCPxphqX7tMIB/KqexJD3Oe9SKM0HGM0v +QH6UrFEbAknHFAXGO9OIPBzRgY796LANYDnFCnFPwc49qd5YAycUNCI8ZNORW6elNbNSxj1pJDFA +GeaYykN61MFbGT+dRlfQ0/MQdOKiOe9SkVCSc8UaAMCncakIKjA70BWzk9KlOOvpVdAFgQ45rn/E +pwuMmulQ4HpXIeIpSWIz9TWkLcrJ+0jm/m5Pet/w9AWPmbl+/t2556Zzj0rDCEDNb/h1wsgXA4qK +jujqlsautqUhIPTFcTcbtxJ5P9K7jXmDQke1cNcfKTk1ppzaGFN+6QL9+ut0HcqE4z0rkYz82TXZ +aESqelZ1+hqvgM3xAxaT0xxWPbBt454rX8QNvl7+hrKtwySDIIw2Kv7LCGyO00sfuwOue9XmU5ql +pZ/dqT0IrUKjA71z0mZ1NyIBqsKCQKT72OcnvUqjGMVuo62MmxmcHGKeOvPtTT3pUHvVJ2Jeo9gA +M1CRjOanz2qCRguc1e+5JDIpI/Cqp3Y5NWi28AiqzKScdQKT0Giudw4/KqF42OP1rSlOzJP0rKuf +mb8axloiluUJ3ZiWbJZiSSfeqspOOKs3BGR9KqTbcH9Klasp6EEeGcjHpWsi4iXHXHNULWISSAgd +O1a7IFX1A7UpyvKwuhkX3vyO9Z+MVbvXbP0qp29q6IrQ6MM1qSKDwfSq90zEVajbA/Cq10S3FXBe +8XiJXgyiOtW4VI5J96qAc1YB2jHf2raZ5cC5GxJPqCBWtbOoAz9axYWyeOOlaUb9BmuSqjeOxtW7 +A8Zq8jjArIt3HGa0IWzge9YXsOxbz0x6UobPXt1qMODmlQgnOPSpuralRRP9elKmMc1EzNniljz1 +NQ3c0SLEfNWFAHPU1FBj0qcAbs9aTWhQ9OOTUo5x6daiA71Ng00BIop454/OmISQcdalUL+NWtRC +gc1J0xTUwaXuaaESADP1p2KYCRzTjiq0FYcOpzTwcH2poHJIpc8mmIfnkGlxmmgUZPSqT6CHrwPe +k3EZFC9KX5ae4hCQaeORTcCl6ChsQY60YHIoyO9HrVbAO+lNOWoBAJpuTmh6gKFwMCmleKfux70x +z1xQ7Aiu/BNNJwPfFOYE0FeKXoWMINJgcnnNO4NM9qltjGmg4xzTiOfrTfpSfcY05AJHWmnkcetP +IAwT3pnH49qVtQE/pUZYj6UrdeaaQD+dJARk8E9ahfHbvUjk81A/THWpfYBjgYPqapynjnqKsOTz +61BJhRz3qXYdiswOG96rnBIJ/GrL+pPBFVZO+PWqSQDZG/XjFQTcoc/Q0889KjkPymruzNoxbv7z +Dkis2TGefyrTuuDn1rNmK56V1UjCehCajbNTEE5waaVIAI9a6EzCSIMHinqDnFGCcAdasxxbfvDH +FNvQyVk9RUyBjqKMFSKmwM596CocEj8BWFzdCKzZDD8asiTzAB3quikEDp2qRVYEgVLszRaEbxjN +KAAyDGOlTYJ6Zzmh4ydp7mlzdzRK50MDMLYYIArHvupHer0UmIAvpVC5Iz1+uKyW5pbRktnuZF56 +Gt2zBG0E9cVjadGSOK3YFIAHoBVdRPY00wBj16U5Qc5/SmISQM1JkcVcVZGYq4GDVlBkVWIwATzn +9KsJkKK1iQxzZ6Ckxnv+dOyAOaQAdetLW4hETjJp6kDrSrxRkZFOPmJ7jGUmowpzx2NSu2en0pq8 +8AVEtNi0iZQduTUDbQcdamzhcVWYEn27UWVhjZBken0pqE9fQU9wBkD0oUDbz3pNXY72RXcA81CV +PRelTsrBsU0Ac1Wy1JuQy5IxzVbYwI6k1ccbefaoVPzYPNNWJbIJOFwe1Zk2cnjrk1sTKGBFZ80W +ODT2JauZMykA4rOuAcda1ZhklfbOazblCFPbNXzGTiYsnBpop0n3jSCtOhl1NfSI9zj3PaupfKQA +HJwK57Rc5XjuMmulnUBOecg1MWOW5xWpEmRvzFZ9aWqRsj5wQGyVJ7is2qQMKsWmNwzVerFrjcPr +Uz+E0ofxEdppIQADvxk11+nhtoA71xulcBck89TXa6eNqAk+1eTTX7xnrVtjQPy5poBxS5yTSByM +getdpyDkWn45qJS+72FTKRx9aiQdSXHHtTAOOKk7Uq7ehqVbqAqAYJFN2gk8U8A44oycHPWmthDV +APFTAdKiXrU2Djrii4mgI+bFBUHNNPUVJ2osBEFGDRjFOwOTRg0rML3E4I/lRHkA57UpGBTVcYNP +YXQARziiMg7hikTOGP1p0XU1TegCHvUWOf1qY4JaoDnJ9qz6lIjJO/H5VIo9RUR5fmng80NlDZSO +lQHrkc0+Q885pjHOMVk2UhWUYORz1qrIpxkdKtOR0JqB+eKllIrQqxcjtV1Ik/hAAyTxVaLAZiet +XFOOc1vT0VjnrbjCGzgDnilMWGHFTR9aecbvcVtA5pFG+QJEx9q8m8Q8XbketeuamCYj6V5F4gGb +p/XNa01qHQxTzQeaU0h9K6DMbRRSgZIA7nFIBOh4/CiiigApKWigAoAyQMgZ7miigAo4oooAKKKA +M9PSgAooooAKKeUURq+8FizLs7jGOfxphye/tTAKKKKQBRS4pKACiiigAoGO9FFABRRQAzEKoJJO +AB3oAKKMUUAFFHSigAooooAKkjk2zLIoC4fcAO1R05DtZTjOCOPWgTV1Y+zB1rlfiPj+xos/8/K/ ++gmuqWuT+Jf/ACBIf+vpf/QTUy2ZpT+NHi9yeTWbKSG6nir9zyTzjNZ0wz05FcCWp6TIiys3P4Uo +TjPakWN+SfWplVvTNNvoCTIPlBznjNPT52woJ3dKl+zHGQOvepI4Npzmk2VbuQCBt2SM8VMqlceu +RVlUzj0pGjKHj1rPmuWOiGeo7c0rIOcCnIGHHNPKsBnHHpUp23AjUKuCaYyliT+NTHHAI6011HHu +KXUZBsDduMCk2jOD+VTMOCM+1CKf89qrYaLMEZ4z+VWiOMUkO0AfkalYLj1rPqJlNlXd6U8biMAe +lIRyewzTj8oGKbY0SJHtOOmQDmpGYce3XNJG25VXsM4Hpmgkfd/Wo6iJQSCCtU9RfMfNXFAA5PIF +UNTIKnaMYrWOxK3MOQk5+o59KsaVuNynGOaqu3JGav6KgM6/WlPSDOg6+7JW1467a4K/b52PuRXf +Xyt9n9ttcBqPDN0/H1rZL4UccN2ZLcsc1PD2quT81WYR6+1dEthR6lW6+8aSDginXYw1JbjJq/sn +Ov4hLIzDAJ6U+Nh+OOtNkGeTTY9wJPpUdDTqSv0qPng09myKbkZFCGOwOB2ow2PWkBPelZse/SkU +rDR70pAzikHYVIo4J/ChgkKikinmMt+XSnoBke9WQigZ9qycrM0UboorA+Rj1qwsbJxxUijLU9xk +598VMptlJJIi7c/rS8cU9U5AP1p5AI5FTcoWFRuIx371oRKFHA71VhU5xx1rQRSqgg9qzd2xsaQe +v51GygZ9M1KzEH2qNjknAqXYFe4+FQMfLTpOWwe1CEAUEA5PepXcOpGVQDPGak3KEHHtURDM2KnE +ZIAHOetWBWf5jxmoXXdgE8VeMJxioJEwMKPxoTGRqm7pyOlOEQBAI71NEgAHt1qQqC36mnrYCELh +QB60qDB/GrRUFTkDnpTI4wCO9JMRagQ56cdqydZXByBit23GMZ6YrC11/m29M1UCV8Rj5A64rpPD +qktkdq5xRwMetdb4aVMcilUe3qaz+FjvEC/JzwSO1cLMBnFd34jdVQetcJLjefY11/aOel8JJbD5 +uPau30ZD5Weua4m1++PQGu70gDyAenFcWKV5pHQ/4Zn6vlX571kWoYyjBxzzWrrGGkAzwKzbX/Wj +Hr0qHomOHwo6m1QCNRUu3rUNsfkGOc81Yzn60LYye49M9B+dLhgM+9IpNKOR83WncTGs2Dz2qPLE +/jTmHNORc9qQDM8kU+Mk5xmneWRxinKhUZzVRg0S2MyTx+lSx+lNPY++KmQcDtRZ30AMYH4VXfJY +4HHerTdKgZegBpyeyYIhVQTUyr6dqQL3HWp48YpoGwxwAetAQk4xmnMV9KJCpbCZK4HX171otEQV +twhyjq3GcHHanptbkZqXrw3PH5UqbWJ/Ci6YbETKc8cYpu0EZNWHXH5VFgZAzQ1Zhe5Hs5x6U4qB +1p+VGT6UjfMuBU3sxlckE47A04+uOlKUAOTSde3NN3QxV5OakBHIIzUZ+X+opw3HFJMBoVc1Iv05 +zQARlqeo/OmIdnA9qrttYkCpHPGBTAtD2sCGYIxmkCYOakfGBTRzU2VgHY9eKTHNPPANRgtn0FUw +JsALnsBzXH+ICm8+tdf/AAnvXFa8f3p5xzWsV7oQfvmTuGPStfReJN/rWIW9K2tHfqehNZVFodMt +i7rFwSu0nrXIXBJJJPeul1LBByDiuauVXJ571tTd5GDVo6Dbf76+ldvoiboiSMcVxNr98YHNegaC +oNvkissR8cUWn+7uczrwPnnHHNZtrgSLnnmtLxB/x8MKoWYQumAfetHpFjh0Oz00YRMelaoxjA5z +WZp/+rXFaag47Vz01oZ1NxVB3c9qmxj8aYgG4E1PjAroS1MWyLqfenKMg54qMZ3VNzjpV6EEeeoH +ApssaOOaCMHNOaQYFC3sgZVZdvGKh79KsEFjx7U3YB8x/CjoBRmGQSc8VjynJOK3bzAU/SsOQZDM +fesZ9i4mfc43e/FUpvU81Znzu+gqpIDnjrmlBWKZo6WgJ3H61cuG25x05pmmxBYwSCCQDS3bDc2K +hXcmTIxLpl5BHr+NQLGGBIqW6zznFEAAAIPWutaLUvD63GhHwPaqt0TnGe1axChfyrMuthbpjk1s +opK4VZO1ijjHWnd6ftQH0Gaeqpx3puRyWJYRxk+9W4On8jVdQMAVZgHrXNNm0S/bt/nvWjE4HzdK +zFbbjHsKtwknnvXM79DRGkHBAI9c1PHjqKqRDkZ9KuR4wcVFih/TOaVCBwDTGzxn9KRcZPHWpk+h +cYlyLFWlHQiqsTCrcfFSkimSAYFSbvTpimc+lPQDNWttBDlJBzUq4xUeM4xxT8459Ka01Ex6nPFT +fLiolxUqlf0qo3ExQM/QUoAJxSZPHvTl61VhC4Ip4GTmkxz708dKpJMQmcUpxQcc+1CgZ60xCrjv +S+vpSZ9qcvpQIQDIHrTsd/Sl5o5ppCeo3jFLxjik4FAJxVAJxk03pSscU0kE/nSYwJNIeetKT1pM +jmmgGMR0phYHihsAmjgrQ2UM4pD0pxA4xTT3NRYYwZ5ApPlXtzS5I9qBz3pWGJz1phPI71JjnOaj +c9h2pLYOpG3Oajb5Rx3p5YfnUTt3FJ6DGMT6/WoCQTx2qYk4qFv5VnJ9BkUij71QuMjB/OrDYbHt +zUDA5J9P1pXAqydMDtVKTk4q83Oc8VSkBzntmncCIq3AHXNMkXAOakIJJ5pkuQODzWkSJGPe8Z9K +x5MZNbN70ORWJMMEiuuictTYYWOaaWJpppM11WOZyJYm+cE81daQBeaz1IzxVlmbaOOPWrsuVmDv +zolB3qOe/IpMvnJOfrTEyCMVJjkkcVyvQ7FsSLJ0B7cVMrI3TGapsw4pQ5B4PfNS43LTLuzaVJqQ +OS6g4+U0kbhlXkYxUhiDbSKxfmapl6YqLcMB8xrLmYFMj1OasyswTaeM1RbJBHXHP0FEIl30NTSG +5I6Z7VuwdSaxdLAxmtu2yWp33YrGlH0PGOKdtJxUYYjgU8MePrmrRn1JwDgfnUoUgA0wE4GOlTBk +wK0jsQyI56UmTkjOKVzye3PSkweDQnqHQnUMB7UuFyc+lIrHGKazqxx3FP0ENcAE0iA9hTWJDe3a +p4dv0qbFXDAxjHpimOgU/SpWODTHJ+tO/QCux55H0p3HalKE9aUjAApebKexXm6A0xflOD6U9huw +OtGFBANNWZLIpFB7VAQFIP8AFVlw2enSo2Ax7mh7giNlHHSq1xGWq6AAAD1qOfABFCJZhPFk9Ova +s69j/dNwOK6BoUbJHHFY+pYRWyM8UX6BZM5F/vGminScsfrSJjcMjPPSujocr3Oj0Ijcozjp1rfu +ziIkflWJoMIPPfFdHeIq2x9SMUoilozh9SmDAxkcq5ZT6A9RWZVzUP8AWmqdNAJVuy++D71Uq5Zq +WYAetTU+E2w6/eI7XSkVkTHPSuwsvuBfSuR0kFVQdcADNdhZD5QeorzKNnNnp1nZFtVJBFL5YGKl +SnkDHrXQjlbIkx0qRUBIyKeiDHTtUirzSYXEOAB+tRYJOakkU54oUZx7VKGSKDt59Kj78fjU3O3B ++lRsoFVYSBVqbHAzTVHtT+aS1Fci/iwKk6CkVRk0j45AqhCKR+tOI4pi4zU4AxSQMhYDGaYBwcGp +m6cUwYAPrTDoMywGO9KhIU+9K3K8UBTsPFDfQYxWGT603IPSiMcNn1pBjJx1qeoxnVuaG4+tA+8c +/jSMVJOD7VEikQuvPNRNlDkVPkA/yqOTBPNZvcsj3FhQDk8+lBAUcU5MnPHSpTbY3sQOrKc1aiXK +jJpJEyKchIGMV0Q0Oaq7koU8U8AbhUcRP8VPZua1TOZog1Xb9nYDrzXjuuLi7kz/AHq9e1EEwk+1 +eT60nmXcp6fNW0LsOhhybSflXaMAY9wOfzNR47mpHGGP16UBcgjvkYrbyIZFRiphC57duaUwSYzi +kFivRU3kS+lBgkHai4WIcUVN9nl/umgW83pRdBYhoqb7PL0xR9nlHai6Ahoq1FaSSSLH0yRk+g7m +ptTzLeTsFGFcqCP4sHGeKLgZ9FPKNSFSKYWG0opdpNJg0XADRzS4P40mDigBKXDcHB56Uc0c0ADM +WOTjoBx7UlPbDKGz83Rvf3pmKAClxRRQAlFOpKYhKKWikMSlIAPXNFJQIKKUgjr6A0ueMYFAxtFL +RxQAlOjO1lb0INJT0VSQDmmkI+yhXJfEs40SI/8AT0n/AKCa61a5T4kru0WIf9PSf+gmoezLh8aP +Dp8ljz3qFYyeR6YNaEsIzjpzUZRcfnivPctT1UioyMDx61JFEc1IV6E/WpkHA/lUN2KQ1U/IU4Qj +H1qYL1AFSKvX6VLlYaREIlHbtTCgbNWscHHWqkrHPAqU7gPWIjHfNPKggAj2NNic/wD1/SpiCQAK +XoN+ZHsHao2TpxirO0YBpjDvT6h0KxXcDjoKeic57U7aB1qSMHOBTYE6DAGaZKwI9qlGO361FIp7 +96hW3YEQPOKfJ0HP40ioQac+3HBpsB6EBBjv1oXJbFNXO3j8adCQG560JaAWlHGMVm6qBg1poS3b +is3V9u3GcAg9auLJW5z/AARx1HatXQQPtK59aygvXH0rV0QfvlPvSq/CzoZ12pFRb159qOze2PU1 +2+qSEW/4VwV65LMTW9ryRyU9EzNP3u1XIfu49Capjk1pWcRYZxngVrUdkEFe5nXQy/v3pbUcipb9 +QHxiktAMj1q2/cMYx98mdF9BSxRBs0+VWz7VJbqwxWLdomiWpFLbHGfeq/lEEdK1nCkYJ6VWdUyM +HPelGbsPlRSCMe1P8voPWpdnIye9Ok8tCNp3DaOT645FVzMLJEKpj045+tSeWyna67cgEAjtTN8n +QHHIP407Pc9epodwJY1DfL1xVpEP4D1qpAfm9eavAMV+orKejNVsQhTuBFTLHJJwqltqlmwOgHem +bXHuPSnqsiklWK5BFS7BZkZ9BUwiIG7rnt6UsaNuye9XBHkAZqHJbFFeJWznGPerqgYPB7UghI6H +NWEjZRgiobBlWQHcMUmxuCetXRByC1NkjwOnFO9xXIF5B9aTaVyB0qVI+QR0JpHGOnWi2g7ka5B5 +78VaUjbtUdBzVXBGM9TVy3C4yec0MTGMDwarSZJ/WrzL171Tcdc9acRIYPTvkU9Mk01c4+tSALjN +GpQpLEZFPiYDrwKbu+UZ70isp49KTAvRng89q57V8eb71vR4IwOTXP6tnzcVpEUV7xRHQA8V2vhi +MGPpzXFK3K5r0DwsgFvSkrzih1naDM/xRsUHiuBkxvOO9d74uc4Ixz2rz9s7q6/tMwpfAW7MDePc +13+k8W/bGK4OyHzKcnqDiu900YgB68VxV/4sTpn/AAzH1jAkP41mWoPmDitLVfmkP41StVO8EetZ +S0TLp/CjooOEBX0qyo4qC3IKj6VbjGecd6ILSxjJ6i54HT3pR93mg5zTwP8A61Vy3JuRAEkDrirC +AKBTeB2pxzjpVxSE2BIoXBoCkjntS4AqvIQwjP51IoJxTARu9qmU4GBS6gI3XjpiotuT0xU5Ud+l +M2hT1olvcERYIzUqHI6YprAkjApRkDNJLUBW+bigY6Y6U4qeDRxn2rSxIrJyKjwyMD2qYnHfpUTH +Joe4BndTMHNLg04kc0PVajREc5p2D1obrj1pRnp1pLyGRuy5HNCqSSTSMhzmpE4BpNtPUBNv5mlA +I4oA5zTsdf50k+rEAGOKeoFIF5FPxjPrVqwmRYyaawwc+tSgY+tNcY/GiVwRDIc4pUTjFIVbOKlT +A69amKbGyNzgYNKME5HSiTk8ULxgdKdwsTKBsbPpXFeItnmMB1rt+NnvXEeICPNP16VsvgFD4znC +OcDkZroNGjJAIrn8jcP5V1Wip+79KyrN2SOlv3WV9XbAI9K5WXLNnFdNrJ5YA55rmnY9MDg9a2pL +Uwl8JLagbx/Ou+0f5bbOe3SuEskLyoAM+1d5pySx22COgrGrZ1EaWtTOU1xibhgfXrVbTgDIB16V +Pq53Tvnvmm6WqiQfWnN/u2XBHZ2aEIuOlXkzVW25jU1aRlAFRSWhzz3JAMsKn46Z6d6hAIIIqTBx +yK6FqYsj6H61LuGOKjxzg4FO6DAo1uPQZJjqOopoUsOac2O1CZ5HaqRDGEBATiouXH41JJkU0Z7U +WWwrlG9yFIIrJlQLGw/WtTUM9Pasy5LeUB61zVd7GsNjImXqD3qvhS+R69qs3APOTVeMDdjqDSWx +bN+1MpgBZi2BgZ9KpzgM7Z4FaFvjyQM44qhOuWc5FFO7MZdTC1DA71HZuCOvSk1M4rOt7gxHrXaq +d4aE0a3s56mxLIw4OMVUnKn0ppnV+fWkXY7KJG2ozAM2M4HripUWtzsq1IzWhW5JqZFxUeFDMF5G +44Jp6jcRz1NayOFalhSeOOKtRYjxn2qFUPBJqwij+KuabNYosJk8jn3q9E20ZHeqsQUEY61cjTOP +zrBmsUW4tzHrjFX0XavXnFUoVJHFWg/yAVm3qXYkdduGHJNMHJp2c4xQAGwKh6lrQsR4xx3q3HtG +KqxgZFW0xUjLA5GRUgxgVEvIx0qVe2apCY85AxTgKUdu9OCkmtF5k3G4OfapF/8A1UgGTSjJJA/G +qsIcORz2qRBQo6g809FyaaViWAznrTxjHFGznj0pwUAcVpawmxmOKB+VOHPSjAzjpRYLhg9aUcUh +OOnc0HIx9KNBEgPXNNJGDn1pN2BTSciqsrCFyKQbuT2xTCSKMnB5otqMUtn8qQDnNJzmgkLmlcYE +468UwScUMcjmo+4+lO47Dyfam8dKAScfnRkUm2CExxRzTgT07U5vWkgK7LSAdsVMRnJFNIxg0aDu +ROcDjmoWzyfWrBwTULAc96l2YJlc1Gxqdl9qiKioadi0yBixPsKa4J6elSlec+9IyHnHTNTZbjK7 +ngAVG3I461OwJJGM88VA3y5B6VIFWbjPvVCUnJ96vzAHkDqeKpTDjmiwEC8Nx0zSuSecUz0HeplB +YEelaR1IkYmoLkk+nSsSU9c9a6HUl6jua5yX7xrsobHJU2IsZPbof0ptKabXWjjY5Bk9KmZxx2qK +I4NK/LVX2SPtEqy9OgqUnd+NVBmpw2QDWMkdEWP4IGaCACCKOe3anbTioNESQyFcAVo28gBHqTWb +GuD+FXAcDpyaxqJG0TSu4Y2jD8cisSQbTjPWtNZN0e0nI96pNjOSO/FTB6mjWhqaX8q/yrctjk1h +6aQSQe1bcG0e9K+omaGemf0pwPIxzUe4H04pykE1exBdjwQM8VMRwfaq8XGBVgN+VaozZGAO9O2j +H5UYw3rRnOc07BceoGD6UwKAWNSKuFPNIQMGmvMCspUvzVpAADgd6rp97JqcbgMVGzK6ChVJ96dg +4P6U2PDMCeMVKSCcCmkJlRyyml+Ujk9afMOtR4AHFJvQaGsODjimAg9e1SNjHvSbQRRsAz5Gzjmq +0pKtUpXYxOaXYr8nmi/cRCGzj2qvcNnoKtugVQB71WeNj9KpNITWpVzWbqaR+UxPateSPYo9s1ja +k48l89Klsdji5Rh2HvSR8kUSffb60sX31+tdHQ5PtHW6Eypt49M1t6qyeRkVj6ehRFZRnIqxqE0r +Q8jjb1pRsEk1qcdfMGlY1Vqe5LGRs1BVLYTEq/YAbxmqFaemoGZazrO0GdGFV6iOy0zLKuO2Oa7L +TwPLA71yumgfJt9q66yUlefSvOw7V3Y765aCt2pwxj6UoLKvPagetdRykiEkc1IKEUEfhQAOtJoQ +jc/Wmx9eRSnrQN2eaXUfQmJBAHtUO07s5qQjj60mORSauJMeg4pGJHSnLxSP696YDVPB+tBUgUse +DkU5+BxSvoA0Bfxp4zj2pEwak2imgZExwKaATzT2x0puTij0AYc4p6Y2fhUZYk46CpvLZU3djSGQ +rgZpq45NOG09e9Jzg1K3AgOAxqJiCam2nk5qFsIw96iWxpHcYfy7U3bk1ISKaO5rMsZIpxSRM2ce +tScsKI0+bIpxExzKQpPvzShQRzxTtjbeT70h6DrW8dTlqXF2nbSKWLbaercCnKP3n1q0rMxZS1Ml +YGHfFeT6ypFy5B6mvW9XQiDj0ryvVF3zyZ9a3poXQw/KeTgd+a1LTR5pRkKT9av6TpQmI967vT9G +RVAC8VTu9jJyscbB4dYgZFX4vCpcDjrXoFtpMfGR0rTi0yMHoKTXQV2zzWLwd0+XPrVgeDVPBQV6 +atgg7CpFs09KXKh+8eaL4LiHVAad/wAIXET9zivTBaJ6UotU7ilyIep5n/whsKg/ug2fXtTR4Ntl +/wCWRP1P/wCqvTjap6U02aelNRSDU8vbwqsYPlR7Sf1+tZs3gxyOAc17AbGP0pp0+I/wim15i948 +Wk8GTnoD+VVn8GXeOBmvbjpkR7Co/wCyouy0uV9x8zPD28J3yhkCg5IPTniqr+Fr5P4a91bSIic7 +Rmon0WFs5QU+WXcOZng0vh++Q8Rk1Xk0i7Tqh69K94fw9A38NV5PC9s3O0UPmQKR4S2nXI/hPFMN +lP8A3T0r3F/CluQcIKrt4Ptj/AM0uaY+ZHihtZR2OKabeQfwnHNe0N4Ntj0QVXk8FW5z8g60Kcuw +cyPHfJf0o8pueK9Xk8Dx/wB3rVV/A69QDyelNzY7o8wMZFGw5r0aTwOwzhTzVZvBcoOADihVfIND +gijnknPajZxXbSeDbhaqv4TuhyB0NP2isGhyWKTFdM/he7UDA4qB/D12P4KfOgsc/ijFa76NdoRl +D7mo20u4Xqp4o50FjNHHajGcAe1Xzps4/hNNOnz4ztNPmQWKODT0FWvsMvZTToLVlljLAhd67vpm +nzIGrH18tct8Rcf2NHn/AJ+V/wDQTXUrXL/EMf8AEnj/AOvlf5Gpl8LKp/GjxqfAyc+tVt3H6Vck +5yvbrUGznGK8x2PVSKzZzgVYi7E0bBk9qft4B/OiTuiiQHAJxk8HPpUi8jB61Eu4nHWplGDUTsCE +PGRmq7x8jp1q0RyeOnNRFSSMcYrOLsygRQcgcYqQDn1poOO3epQuOT3pqVkJ6iFcDio3GeKmILcG +muv60XuPYrkY61JH6imM3JGOvFPiBJBGcVQFpBxz6VHITUg4FQvk59+1FkSOiVA3zc4psiZdio47 +VLEnGD6UrKARRddAuMEeRQkZJyOMVKWUphRjNEKnuceopbK4yyqEY6Vj6yVK4HXpW0V6Ac5rC1hc +HAJ9c1UXqyUtUYZG0cda1tDI85eM8msnj/69a2hqPOGO1FT4Td7G/qxAtz9K4K+IJ4rvNXX9wfpX +n903zkGupLVHJB+6ypHjdzzWtZthSeKyFzmtW24T29qqstB09ipqIUsNtMteCM0l4xL/AKUW/wD+ +ur+wZL4y0xJOc8dqmicDH6VAVBxgfhUkaOBwM81k7WLW5NI2CaaApHb608I5wT1xSY2nkE9s1DfY +uzI2AHGeTUMm3OR2qwfmYdaZKoHGP/r1SeoNXIfoe2aco7VHnmrEYznd6U3ogSuLGmDxmr6IWH9a +hiGTyMjjIrUjgcRo+OGYqB3yKwm2aKyREkPTNSeUucKM81O8ZiIVuo6j0z601cZOal76he+xAIzn +GOM1YEfpzipAhJGM+9PChR05FQ22FyFck59DVteoJ6VCoAOP0qyiE47CnYljc7iOBSMucinbPnA+ +tKUOfenewJFfpioypJ59aueV1z602RFA4+tTvoVco4OeeOTV2AKAM/lUG0E+lWEyOBQ9w6CyYPtV +eRRz61aK8cZJqGXGBgE1dtCUU8c4py4HBpSMt0qUoduR1xU7vUvoV+uAOgNSLGeMUiqQaswxlmwO +lDfQCzBGFQk+lc1rD/viB+ddW8fkrg+ma5HUjmYn3rSLRMPiKQwCvrmvQvDWRbjnqK86HMie5xXo +3h75bUc54zTa/eRHXfuMxvFzKTjPPNcM+N2Peuy8VyDfx16Vxj/erq+0zGCtBGhYY3gfSu+09SLZ +fpXBaaRvXjvXeWrFbYfSuCt/GR0z/hnP6q371uwqvZ/NIPTNO1Ni0r59aZp+SwOOScVM/hZcNInT +wBQo7Y71aWq0IGwfSrUakAZogm2YTHhTyMU7AHFAFOxTd07EkfJx9aeue9KFHU0oHcU1foAA9hSt +60g68Chs4Oa0s7k3GADPFTDiosc8dalGajrYdxScDAqAls57VZ24XNQv1IxxTkrpAgVl61Jjjmos +YPHSpCScAd6aBjuABTQDn+lBA60o9BVX6EisAajKkdPWpCP1qM8cVPUfQABgmjAxkUHpT8DbmncC +PGc5pcbakwKTAOM0RXULkQOc5o6ZpwC5IFN/pQwDr3p+BxTB6jipPSluA9c0pH60qn5QTQw5zVWQ +hCDgcVE+c81P/DVd87gO1NoSYmRgGm55pTx70nHPrWZQg5Ip2BmkAzTvl+WmrAxzAhDz2rgtdYGZ +gWJ5/KvQHBaJvYV55r4C3DE9SeK2jsKHxGQCN4HXmuu0chYcntXIJy6nkc11OnH90eT0rOr8UTd6 +xZnaw+XYD1rCfryOnWtzUASxJ/OsOQ7Wx71tDVmb0iaekvBE+5z9K7KO6zbkr0IrgrMguuK7K2J+ +y4/2a5qitVuaS1gctqRzMxzjk1JpQXzRuOearXzKZ2+uasaUN0g56EVrUX7sqDO8QRHb5W7btH3q +mVc/SobYARrwOlWFBB49aiGxzSJlQ4AqQLgUxSc5NPJ710paGDZCQcn+VIAxpXOCR9aQNwKVtxgO +nr60oGPoDQHAGaQvn600JiSYxUQIHfpUkgP4VEwwuf0p21EZl6zM3tWbcbiAPpWjPgSelUbnqfSu +Oq/fNobGVLu+btVdVO/IzyetXZuPXpUCjnihNlM2rcZhB9qozoxyQepq3ESIQM44qAjcGq4I55HM +6oOp96xj1rb1RSH24GM8VjONpIr0Ke1jmmiSJwDg1YByMjtVICp1faME05RLp1GlZjx145NWY4cA +MfTpVeLk8emasGUnvnBxWUr7GiZOrEge1TIQeBVRX7D0xU8WDj8KxlE0RoReoxmtO2Ukg/jVC0hJ +2k+tbMaKoyOOK5Zbm62HqFAznBpy9QDSE96VdtZPc0SJR6ClVT1FKqjHP4VIgJAFTbUsljXP1qyp +KkDvUEf8qsKAaduiETIOnNToBnHpUcYqwMACqUSWx4XHH5U8YzUYOf0p6Ed61SIYDrj1p+3HSk3I +KQydfSra7k3Jl461JxjNVBKOKd5oOBnimtBO5bBHr0FL261T87HWnLP700FmWQccdKblc59Kj8wH +ikDrnrQCRKRyD1pc8EUxWH0p2RTAbnsKOQPel4BHvSNQ9ADrTT1+lHGME0HjHFKwxRg9aRtuKQDn +OeKa+BmmOwEimY5pG9aQPgkGhsdtAxj8qQe9BcdKMgDIpWAdntSk9MVHvGPemmQAdae7EybOetJx +gZquZcflSedxzRpcLOxMx64qLHNRPK2Dj1qPzyBzSQWJiuW9qjIOab54H8qcJOMZpOwJtCMg/Kon +z0FSbjj601yuKhxuNSInKkVUlI/GrBK5PNQyAYqXcopS5PsOtVJuh9qvSe9U5F4PfOajYopHOQfT +NSxt0APXNMZcYNIjc/QGtIvUmS0M3Ugcv9Otc7MOTXRXrbgxrnp85PpXZQOStsV6Sl+tJXWcTFCn +rS04Z2+1MoEmPXirEWKrqRU6EZ4rORtElwMD8akXAGKbkEZp4VR+PrWLNgQLuBFXUC5waojO8Y7A +VegXBUnpWczSLJnj2DA9+TVGTO49q1JwrAEdhWVMcEEcnNTDctvQ09NyOnfrW9bgNgd657Tnbb0w +TW9A+MfTrRbUfQ0AeAKfGDnNV1OR9M1PG2D61W5BZiyTVoEDrVaNjwQKmB/GtkzNokIJGRQq8npS +rkjigYB460xDjwAKbg9vWnHBAyaXggegp7iRFs5Jz9alQqAaTGfajGORzUvRjGoAWbPFTbQBkVCh +AZs9akMmD0oVxsryZzg0vyinvg8kd6jJBI9qXUAkxtyOaYjbsilkJYfSoSCvPvRcYXKkcio4mYLt +NSZZ8emKMbQcj1pN6gLs5zSGNTz+YoR801mHOaYrFW69BXM6tIPLcgcYrobl2BwOBXOa0AI3+lDe +th20OSbqakgGXX61G3WprbHmLnmuh7HGviO70QIYwD1GKdrZRYCoGD1pNFQFVG7rjFN8QxlYt2eO +lTFXQ5aM4O4OZG+tQ1LMQXYj1qOrRDAda2NLXLjHUnpWOK2dMUbh61jiPgZ2YJe+drpWQV49K7W0 +QCMfSuP0ocLx9K7G2D7B6cVwYbqdeIZIe3FG0t0p7Y4FKFAOK6vM5R8fSgHkjvQoBH0qQADJpN9Q +ITnd04p4GW6UuMmnIuaQCnAI9KOGFI2CadQIQnGAKQkd6Bjd1pHBJ4pO40OXA5pGbjNOCgDrTCPW +k2ND0BOKlIxxUceccVJxjJpp6CZE461Gehx1qVvSomBAzSV2MiBOR7VYMjmMDPFQrjPrUnGBzSbA +ZjrTgMLgU7oM0hxjiiw7kHTNVpCM9KsucA4qs2KiRaIeeT0pyqTyaCpwee9SRgbajcoZjnAqVAem +KZznAqb5uwppEsWQ/LUWeRn0pr+Zxnj1o/wrZLqc8+w8A9RT13Zpik4qePDCtImLKWqEmBs15peW +5luTgE/Pz+Nel6vxAcelcMIla6CsvO7O6t6d2mTLSJvaDpyhVx0xXbWdoFUVkaLbKFXbXUwRAYq3 +oc8dQigA7VaWMU5VqQCpubJDQgpQtPxSgUhjNoo20/FGKAG7aTbUlGKAI9tG2pMUYoAi2Ck2CpsU +mKdwsRbBSeWKmxRigLEHlCk8lasYoxRcLFbyV9KTyF9KtYpNtFxWKn2dfSkNsh7VcxSbaAsUmtEP +amfYo+4rQwKNtAWM02MR/hph06H+6K1dopNgoCyMZtLhOPlFQto8JH3RW8UpNlAuU5ptDgOflFV3 +8PwHnbXWeWKb5Q9KA5TipPDcLfw8mq7+F4GyStd2YV9Kb5CelFkKzODbwvBz8g/Kon8KREfdFegm +3T0pptkPahpBZnnTeE4sEBBTD4PhOSUGMV6P9kT0oa2Ta3HY0WQam+tcz8QP+QRF/wBfC/yNdMvW +uY+IZK6PFj/n4X+Rpz+FmtP40eRSAZJxUe3qfxqxgnqOKYwByMV5PNZnr20KwHNPwcE+/NO2jPSg +rwD3pOQ7Dkj3YNO2c4zTk+YYoPykGpkwGMO3GRSADOcVIQOSe9MOc/Skmx2FCrRjkknpSLkHJyal +6gZFJvQdtRpAznqc1GW6+op5DdOvNG0n2oW4nsQBc8nuetTJx8uMikZCDnHSliGSD34rTVoVyZFz +kGkKANz0qZVHXH4VE+DnjkUk1bUQ/oMjv0prDccUsYJHP4U/C5pDGqvXnNSKBk4GOKcicDHXrmnD +jGKjmGOwcDBrD1bvkVvcH6mue1fJYY61pDuiV8RjuRyOvBrX8PrmUGsV884Fb3hz/WdPSqn8JtLZ +mzrAAgIPYV55ef6xjxXf64f3J57GuAuh8x78muqOkkccfhZVTqPetO2U7G6nsBWYow1a0EiLHg+9 +VVKg7RZl3f8ArCBng8Zp1uGxxSXmC+RU9om4Y/H8BVydoGUFeRbhHGD68Grcca7c5wKhRQB0608F +sDFcz12NtUWVRSDUMqKcgY9amjYgZNOwD1WoWjKKZXGOMkVVmU4OT9K0XAGfpVOUNkfSri9QaK8c +Y6gVchhBohj44FaFvF1zjilOTGkkiOO3ZTnFaCJ8q8/dORTo0ByanWLuaxbYESwjr2p20dvyqyEG +Bj0poTk46UufS7BIZEn50sqHirEagDJFRysm7GOvFQpa6D8iBEYNmrOTxihQpwO3apAAc+1Wm7ks +RemWHeggdM9TUijFNcDPy/rQxIaW496gcFunrUj7vyowfQ+tMdupWMf58VKinn27VIR0+lSCMFfw +pJ9xsrxk/hTJshQvarHlKTUMuOBQndgVlAzkdKm2s+O1OVBgZqRRjOKbGRGIDmnxDadwPvT8Dv8A +gKeiZwMUCuSXlwJIBjsOtcVev+9YN61186fu39xXG6j/AK45HOa0hq9Rw3GRbTIp6816Hop22gxx +xXnUGfMVQO9ekaUuLRT0wtN/xYirfAcr4lbdLjuM1yrD5q6nxFgyn1Ga5ct81dC3ZMbcqNLTDudV +I4yK7uBR9mH0rh9LA8xT713kKN9lyeDiuGetexrV0gjktTA81sHvTtOTLg9Ki1HJmf2NTaXjcMnp +US0iax+E6WIfLVlRnr2qCIAr/KrCg9f8mtE2kcz3HquAPWnd8UDd0704KOeMVPXQQ3AHGafs4HNN +5zRz+FWkIMYP9KDk0HI6fnRyar0ENXHX3qVgoHWkUe1OKgihasGAOR1ppXJoA5HsKk47UMNiEjFK +vJweKU54+tC9T9aBj3wMDGaExx2NB9etJ3zVEgRxwaickEVITj8aYQGNS97DQmSTg0/2pNueKeOn +NVZhcAOCM0hzyKM9qTk4JoS1sJkeMCgDqDzT+DSYx/OptZ6juMPGfrUqkkCmlSaVcg9KaXUOhKcd +6XPYUbRgU0AZ54qnuSOxjr0xVd85q03Q1XcDPvSdxoiyTkelIvYnvTscnNIcA1mmUSnGKRVBIPpS +DJPBp6cN61sktyNSwwURH6HpXnOv/NcsPevQ5yRC3bg151rB3XLnryau/uhS+MzY1AcdK6iwVPJw +OCRXMpgOO+TXR2efK49KwnrNHVP4TN1LgvzXPSt85HvW5qJ2s2c9awpOWPauijuYT2RcsQNwAzni +uzjGLXP+zXHaeP3g9eBXZABbM/7tYVP4qNZfAjjLzHnv7k1oaOo3jI7is27DCV+3NamjDLrk9Kqt +8A4HbwBdgGKnVTnI6GoYACo9hVpRkcUU1ojmnuPUfLjvRwBjPemkGowrZya6FsZdRZvWmrkipDyK +bjp6VPW7AZtweOtOHWkx1z+tAYDjtVCHOflwKqSMy8VZYk4/nUMqZUk8mgWhlTD95uI96pT5ZvTm +tF8Nnvis6525xXFN6s1iyjcdML1xVVT2qxOeDn3qvxgUR2KZs2yloCT+dQ/dJ9MVLZj9zTLhQqMS +a0i2zCSOY1HbJMfrWXKoBP51rXu3dkACsm4PzV203cwnsQmjNKelIBzWxmSoxXFSKxHNQipUyegq +GbRJoxknitC3XcQfwzVSNTgDtV+1HPT0rmqM3hubVjGMD04rQOcY7Cq1omAP1q6+0Aelccrm8dyL +5iv0pyYz9e9M5B59KcijHfJrLY2RZQZxxmpVA4pIhkcVMMZB9KPNAKnbFTrg1CDz1pyNyDnAFUth +MuRvg1L5mPzqorDP1qXDE1ce5DJt5H5UB3bNMEbHAqwsLCrW9yWN5OOaXHbPanGJhkg80CImqQrj +AVHFKSBQ8LjBFIEYc+tCQXI338nJxQGBHJ7ilYMeBTNpwOKLjJ0kz9KfuJ59KrDinK2Kd0wJ1k59 +DUyucVVU9zU6nOBVAyb+dO4600ADoaUnnFG25IYGaTrx704EDk0ZHNLQYw+1RuTnjmpSPfFRFR69 +6ZSGZY9aYcZyalPTFQtj60gB9p579qjdsfSlYjkelQMTxn1p3EK0h4xTd/AFIeelN5zUlCl+vrSh +80gTjPenKpwCB1oFcQseAT3pCATzUixjoPWpREB2pryE2VGCdhzg1CDJlq0xEp7dqTyE9KJJ9BKS +M3LYyOtJubPz8ccVfkgAHGOaryRAj1qWmh3RRlY/wiohKT/WrMkXXHfmqUi4HFR11KQkjKM1Tcc+ +1OZsHHvTNwPBHFRZFWIn6HPrxVRyw6VckPH+eKquO/XFNAZt0SOvvxWJcYLHHSty+UbTxWDIck5r +toHLWK5pKU0ldiPPZKxAX1zUVGaWm2JKwq1On9KgH6VKmRyelRI1gXI+fwp7DHqKiQ8A4/CrHUZN +c0tzpWxEgIb2HJrQUg49u1UVAyPWryAsBj2rObNIk5DMvPTpVCRFMoX/ACa08YTJqg/DE5qIPU0Z +dtyq7QK2YNuBkY9KwrQszittMhRx26VUXbcGi6h4Ofzp6lh071HHkYHPTFTRsCc1cddzOSLa9Mj0 +4p6kmmKN3P0qVF2kmtUZkynGKkAU/MRUAJ5qVH4FVuTsOcrxijnApHCg0hLZ9KAQ9Ryc0nfrT1BP +PbFMcE9Kmw+pHgFsj1pzRnrmkUc4NSupxxSVymQybhj6VHsfPHrVgYI560gxmnZiuROOMEdaTYME +1LKRxmm78jiiyY1chbCgYFNYEgfrT2yWAWl2cZOc9ql+YWI4060NHu7dKnTgetSAJjJ44pryE2YV +6jGub1tgtuy9+BXWXoU55ridfY7TjpnFHLqO7sc2etT2qkuD74zUBqxacSIfeuiWxxx3PQNFhKwq +T1xVXxEzBMc9Km068YRqqgnGKqeIHkkj3HgkUorS4pPU4mX77fWmU6TJYk+tNqkJijrW3pSbmHes +ReoroNHBBH51z4p2gzuwPxHb6QhynsK7G3GIwPauT0fll9K62NQqj6VyYbWNzfEfEIVJbjtUu05F +IAMin57iuhnMB4HFPTkGm5yKcD8p+lTpewxvGTmlGeAKb1pyngigBzLRjmkJPbmnAZoYEZBDCgNy +ak2+tJ5ZJ4FIYckcUxt341KF461G2AfrSBD4hgDNSswApqdqe+MVSJe5EcY60xwCvWnNtHUdaRiu +0/SpGQAnPFSYPWo0Jxml3nOKVyrakvAHNJkYJqPPBHakdsKaL9AsROcZIquPmOakZuCfaoFYc1lL +Q0SHyZAzToiSCajZwRipIiAhqVuN7ArBm9KlRvmA7etRjBqSIc1SIZYnWMJkVTbHIFWJycAVVYel +bLU5pE0C5U1KvBOO9RxcAA8VIgBNXHaxnLcoazn7PXIWqFrs89663WWPlEVz2mQ5ucdOa6aSMquk +TuNIiUImK6GNeKytPi2qvbithOgqpbkU1oSKKeBTRTxUGocUuKKWgZE7NlUXgnkn0AqQVG0W5twY +jgDipAMDFAC0UUUAHFFFFABRRxRQAYooooAMUYpaKAEopaSgAxSYpaKYhOKOKWikAmKTFOopgNxR +ilooAbRincUYpAMxRtp1FADcUbadRTAZgUjj5G+hqTFJJ9xvoaEDNFeormfiF/yCIf8Ar4X+Rrpl +zmua8f8AOlQj/p4X+RoqfA/Qul8aPKGzULAZ4zU8mckYzioHBwfrXjS13PYTG7R+XJp3G2m/MvWn +AE/SmriHLhcL3zTiue3Hem4HXFOHzD/Gpv0AiPNAz3qUDAJppxtpJlBj5cDpQegA607AK4FIemaU +gTGggkZHB7U8njNNUHr+tOA4Ipx3FIRkJxjrinRRkDkU9UYYJqRQQDWj7kj0VOh9KjKcn3NSDHBp +dtS32Cw0KCMkdO1OAUqOOc0vGQKRlIbIpXYxy/KAOlINrHOfalz+lNGOhGKl2AlGOcVz2sMFLEdR +XR4AXPHSsLXzCrRmNw0bZJjHVcdc/wBP5V0U1dakXtJHOyMxHpzXR+G/vdO/JrmpShYbQdvHB6/0 +rqPDWCCRSqqyXqby+FlvX2CwMT0rgZ2G4kn14ru/Eh/ct9K85mZt5+td0Y3ZwqXLEevJq2vCYOfp +VOEkkdq2IoA8ZJHAqajszaCvG5lTnJFWrPOKrzqFcgVctBheOpNE37ooLVsuKFAAqVFzg8mo1GD1 +qynzEfXJrnbSLJljAB9aQoSDz3AqVVLelPRVbrUhcqvEc4NQmBmbGK1PLBA4qWKFA2MAD1qXJpFJ +6lKCyI6irSwNHyMjFXwi9lpdg6c81PP3BlNeW9OKthRgH2pFVd3TvU2BgjpzSlK+wiPav1xTxH0P +WkVOoNSqvGMVLeoEbEAcd6rODkkYq4ynafU1XdGxxTiARqepGcVYCjbz1qNAdvAqT1+tUkJjc8HP +WhgCOvPpTgvr3pxVRwafS7EQn9aAQpxUjEDgCkCjPSi+oyFjzgVLz+lIYzuGD3qXYQoB796VtQId +px6cVWYYbJFWzkD6VDjLdO9JeRVyEZGTg05SSMqOlTbAVOByKI1A4FD2sBGmS3Iqyqj3qILj/CrK +jP0xVIlla54jYVxt5zM2fX8a7W6CiJ/cVxd0w+0Nx3q4FU9wgRRKnpmvSNOAFov+7XnFqC80Y6ci +vSLFD9kHrtpxV6yFiPgOJ8S4EzdveuXZtzV0fiUnzmHpXNDO7p3rqju2Zp6I3NIPzqDz0ruxlbYA +f3a4bRlHmr25Fd0//Hrg9cVw/wDL9m1b4UcbqGPNbHPJFWdKzvFU70kTEcdau6SPmB9Kiexqn7p0 +0I2gZHFTrzx6VEm0qMj0qdB+Wa1TVjle5IAMUEUmCSKk2/L6UluIiG7vS+3tSjPek4NOIwxxQqnN +KFOKdiqe6ZIp4HFDYIx3pccUhHbvRISHKoHJphIHNSHdgHGajIB+oolsNEbdeKkjHU0gA6+tPTjp +SS7jYODjFN7D2p+RzSY9KppC6ELnGaQdBTmBx+NJnFRbXUfQXaMjHencijg4FOwRzVPugGEck+lP +yvHFJg0bcUJ63QmRscYxSHNOII5NPVAwJNFm2GxECTxinIvI5qQIKEX880O4DjkDihRnB9qPr706 +MDPTNMBWwF+lVGyWqzIQc1ACOopu9rCiMYdP1pm2pGXI4600DFSrLQoTOKcp+bGe1RMeRUsSAn2z +TuDWhJcMPIbr0NedakSbmQA8Zr0a8wkDf7tec35UzyHpzWsn7iFRXvlNR+8B7VvWsuyP14rERQ0i +10ltFGsByB0rnm/eR0z+E53UJi7MTz6VkE5b3rX1FV3Nt96x8YNddPYwl0NHTxiRSa61ptttt6/K +a5XThlx6Zrpp1X7MTnnb0rmk/wB6a1PhRylycuc9QTz61qaKp3r6HB+lZMwO9l6c1s6IuWFVU+Ap +bHZ2/wBwYq4vrVS3GABVwLgcelXBaHHJiZJ6elIoOTmlGBSDr9a1sZsceMCoiexqY4I9aYyjH86J +CIskk01gBS5GaRuvsaT2GKOFFV7l+CBU28AEelU2y5JPrxRJ2V0JK7IFX5SDWdcghjjnFarKNpPa +sq7IAP1Nccrtm0WZsoVjj2qFBhiMYB5qY5ZjTkVdwHbPNOPYpmhYfKn0pLvJVhinWmeR2pLoZyO1 +OLaRi0uY5i8Ugn2NY0uCQe9b+oKeTnnJxWHKvJ9q7qTOepuQHJpFzmnKpZsYpCpQ1uYrcUZ4q1Ev +c+lQICTU5wBms5PodEFbUmRmzgGtOyB+8B1rKj4OQBk1r2g24Geormq7G0NzctySo4HNWzkgY4qp +b/KB3q0D3PTtXIzoiNUDPOcjpUqJyDTC4zxU8dZWsa3JkBX15qRR8uTSR454qYLntQkJsgBJJA5q +zHEfwNPiiGQQvWrAQ1UY3E2RrEvTB96nVV6H1o246VIAO/WtVoyG7j1HBqwCuBmq4cA+negzqKpE +MnJGaQsFqhNfxpjcRWdd63BFklxxWlibm8zjHPSmF09a5N/EsByA1QTeIwnTvVcvcm+p17SL1HJq +Pepx2rkIdblc5Bz7VdTULj5SeR3qJaalo6LIJPNGeQazYb1XAzVoS+lR5lalsdDjmnqw/Gq4cdM0 +9WAOKq/UZaRhxzUy7cZqqhBqwhFLqBKADxSFewp64+nFP2iqiTcgIOMH0zUbZ6irDLngVC64BzRe +240yuWxnNRluOPWlbGTUT+1JvsUNd+TUDHk80rv61CzZ60k3uBICeppQU71X80AVXmuljHWhasTN +IyAfKDQsyLwT1rnZL+Ttx71Rl1by2OX6Voo3M5StudotxEO9O+0rmuAbX5P4TTh4jKqAW5qlBrYj +nR6AJkPeguMjng1x1r4gjkABbmtqG/jkH3u1TJNFRZqs+R1qI4wc1XS4Vu9SBg30qOpohHRcZqnM +Bz8vFWpCeB+lVmyTg1OhZnzxf3fWqpUhmGOa1WQcmqk8IHIHXrUS0KTuU+RwRmq0o5PvVx1GM9Pe +qso4+napSBmTf4VfXNc/L1NdBfgDPbiuel+8a78Pscdd6EZ6ZoRC1FTINqFh3rsijgm7FfoaKU5z +S4pDSAZqRSTgVGKkWpZpEsxZPT8BVkbhwcjHGKrx7sZ4qQb849ea55bnSmSp8p/GtGGPgGs+IYYb +uea048gAdMYrCoaRHTfKOPpWVPKFYAdQea05iSh+tYsvzSGnSWpUjZ0tWbDemK2gOh6daydJDKgI +HpWynoeaS3ZTJVYhefxqaEk4qPGfpipY1OcCrJLq8DrUgII4PWoiDtBNPj5AFap2MXqTDpzxTwoP +SlA4x7UBTVXJG4bPWpdm7HrUag7ufSrGO4p3drBbUYDtGCfpTTyKc7DkYpoyBU6rQokRMkcVK6Dp +TEyfapXA9e1K2gr6lZ1OT6U3bs4xUzkdO/pTOPzp27BcikUEZpNoAFPZVAIPWmggUne5a2GkDORS +vlRTSwBxikJ59KkByNnBolYbTmmrjP0NOkRWBJ/KqVyWY14x+Y9etcZrjDHvmuzvcDIPA5rite6j +tzSiveQ5aRZg1ZtQS4+tVqvWC7mGK6ZbHHHc7rRIVZFJHOKp+Jcqhx0Ga1NJTZEp74FZPihsIcUP +YXU4d/vHHrTacSQ2c85ptNCYq9RXRaQDkYrnk6iuk0XGVBrlxfwHfgd2dzoeN65GDXYBTtGK5bRU +UlT6Yrq1xtFYYfYvEayG4I6U4DjNOyPSngDrWr3MhhxikxxT2Ax0puMipeg0NA/GngUgwKfxTExm +MmpAMc01R81SkClowGnjJpIj849CaG4piZzmjyDoTSLsYjt2qu2MirEj7hn0FVzgmlJ6DRYUEKKG +pACVFI27OKHqhEUrHI9qjcnA4qR05Gaa4AFTYpDQoAzTDxxUowVqKRMClIaEJwKZ1UjNBI4z1oGM +EGnYaIG6HmouMZqeVcDpVZmKnFYzWppHVCSMQBtqeJSU5HNQyBTjFXbdcJxRGOopPQaiEVNGpBGR +TkHUmlUneB6VcV1M2xbhQNuOtVTwRVm6f5lA9KrSVr1OeQ9cY71IuAKbHjA/Wn4zVrQyZm6qcr+N +U9JhXzwcdDUuqPhgvarGjRLuBHPNdVJe7cwrdjq7QYArQQVTt1wBV1BihlR2JBT6YKdUmg6iiigA +ooooAWkpaSgBaKKKACkpaKACiiigAooooAKSlooEFJRS0DCkpaKACkxRS0AJRS0lABRRRQAUlLRQ +AlFFFAhKST7jfQ06mv8Adb6GmtwZorXN+PgTpcPtcD+RrpE61znjz/kGQj/puP5Gip8D9C6Xxo8r +lVcnFVW+8RVuTIyR71WMbkF8HZkAn0rxz1xmVHX2pwwenejBGPzpyKOvShIAIyOKAcD2oI5ODxzm +nKvA9Kmz3Q7jeeeKbwTzx6VKcAA+lRt1zUO9xrYcF/nTGOW2+tSA8e9R4+bJqtL3BIev3TxTgvII +79aFyD6cE0+MEZoWuwm7EmB3pVHOKTHqacme/IrS11YhD1A647UDBHtTt3Ge9N71NrD3FwtNbAY8 +Zp3OCfSo+aWttQvqPHBye9JjLH0zQcdcYFNU4z3qXcZOMbST6Vy2sEM2cdD+ddQT8p9q5XVzmRhn +iuiHwkx+IxyVyBnvXWeHF+lcmFY/TOTXW+HT8mOlOrbQ1k3yMf4kdfLK+1efzKATj1ruPEZYg88Z +riJyck9sV1xfvHHb3LsLYZIHrXQwhRAfTFc9bDLe1dFGCsBwccVnWfvo2h/DMC6wZW+tXrMDbwKo +z5Mp781pWYBWnVdooKa3JwGJxircCDGe4qNEzz3zVtFbgcVg3cqxIBgcDpTlXGSe9SIqhQD+FPRO +vr71F+giIttxgU9JORk0kin8s1EMr370dbDRpxSAgLUmSetUoJMtgdutXsZHPWs3psFxgABPHBzU +gXv2qMZB/rUvYY6Ur9wY1T81TAdaYAOM1Iue1S9xoawGMiqz/WrcvANUnGTVwTsTuTIwI65NSL1G +RzioohgA1MAe4rRCaHc9hSADJz0pyjgc9aCCMmnJ6CQwgZoUYpSpHNN69azaGOwc5FOIIGDzmmKx +B9RT27c81YXIW6GoMfNkVOwwDjrUCjnH60khpj1OAc8Um4AkD86HGOc1G3GAOtO1mBOg3HmrAAAy +BzVeHB+bNWV55HaktxMq3vER+lcTdAiVjx1rtr4/umB9K4q5H7xsHo1aw0RVP4iawA89D7ivTrRF +FmM/3a8x01czpx1Ir02Mstng/wB2in/GJxPwI868S4+0OeK53ac/yrc14sbiQdsmsReorpW7sKK0 +Ru6IP3q+ueK7a5Yi1x6iuN0NG81fqOK7O9XFtn/ZrhX8aXoa19kcTebfMPPetPSFBK8ZzWTdZMxP +ua3NFTpxUVNka/ZOiQYUCpFzjNMHY1IMdu9arbU5WOBIwaf94dajJ96XGBxSuKwp4OOlIR6UnOaf +kYB701sDBSMUowCTSD1FLinJ7AOBycUuPSkHBpxJHFMQm49OtRnnJIqQ4/OmZ6U9wE29xS0ZwOlO +VcjOaVgvoMHvTwfWggjg00c9aH5ADYHOKZgU/JIFJwKNL6AM+YHGKk5zik6nmpMAcGqQDDxmkyCe +aeVpmO5pWAcRn8qQcelO3D0qNuOaE2A4tkcUKT1plSoOtDvewAW6Yp4zTM4xUgYY5prUlkcjcYA+ +tVwGLH0qw5OOar5OfY0pFRJOgPvTMd6XsRSHODSe4ELKC1TR/LwKjG5j6VZjUBRTilcG9Cvfs32d +vcV53eHM7jFeiai2IH+leeXPMzsfWqloXQV2xlun7wV0cQHkc/3a56AfOMdcmtomQQgAEcc1i9ai +NqnwmLfAFmz+lZLL81a9xnJyay3AU1002RJaIvacuZQB69q37vKW+eR8tYemLmVeOOK6PUEAtcn0 +rG/7xlVdkcjIcsSeua3tCQEj0zWE6gufrXSaDgdBRVash/ZOrhUYGR2qz0H8qrQgcZqZz2HNbQOK +W47dk4oYgVDz17inDd+YrW+hnbUVnHbvRuyOv4U1gcZ701QwGfWpbuwtoO4NMc4H40gzk0SNmmxk +ePlqGQqoOOv9Kn3DG04qrcYINRLQSGbvlJrJu8biw6VpnCxisqdsnHbNcjd2bJFML8xyMCljVix/ +KnnPJxSwk4OOvNCdhyLVm24lR1qSdCCcioLMHeWHFXDlia0bszK2pzepxMMn2rDaMkkD3rqdSiPa +qVpprzSA9BW0aiUbi9k5sw4LWVn5UjrU13abACB2rsY9HijXIHpWRrUIhHFEcQ27FSw0Vqcyvy/W +gtSPnJJ9aaOa67dTDrYuW4yV9q17UNuGfWsm1UEj2/Stm2wOn4CuSs9TeBsQdAe1W4wvf9ap22cd +KtJnJGelcku50RHFBuJ75zU8YbGD601ff2yanQcg9eKzZoTxRj8KtpHwKjhXGKuIg4FaRRnJjRHx +wOlOHbNTYPSmbTVsm4gGCTSngAntRt689KrTSMoOKrbcAmnCdTisq61HbnaaZdz4DFnx7Vz09zJO +5jj+lUtdRNDNS1SVycNyOmKwXu7qVipYmuhGjSGNpZPTNVrLTkMpPBGcV0wV0ctSoloZ1tazu3Q1 +f/syVgCe1dAtnboy7mCjjmtBbG0KMUlUnFaKnLoc8qy7nH/Y5omXHHPaumsYHWNQ4yKrzwYYAdq6 +LRIUmi2N2qZUy4VXuyibUY3L6UqO8Zw35Vr3VmYeV6VRaBZAfUVyVIuJ2wmpD0fIBqVDk+uKrRoQ +RzU4+Udayi3uassqTkkVaRuOeKopJViNtwqtBNF9DkVKoqujDFTI4xzWiM2POAPpVSWRand+tUZm +6ik2EURSOpziqryY4680kkuCQaqmTBIzUuVkaJDpJF61XLEfjSud2KZyFPHPap1uMhlkPQdTVc28 +j/MfTpVqKLzHHr1rat7ABNxHUVpTi5GVSfIjhdRS43iMcZ9KrJo0soySST1robqCL7Y3mYCgmrYn +0y1+aTlR1rs5HtE4pVbHINoUgBwD61lXNhPGWwDxXobaroE8ZWLhj2rInt4ZA7A8Vfs5R3I9rc46 +DzRIpRSMda37LUimFk/M03T7aKS8K7cjOK1b7Q0ZS0YwwFZTTOinNdSxb3O/lXrTgnJrh45Lmzkx +ycGuj0+8WcAdK5Zqzudai7G6cvyKibvx0qWEkKPQ05488+vpUPYaZU6kYqJkzk+lWTHg9eKaVHPp +is09RmXcDqfWqhXjNaVwqgE1nP0OPWqvfUOhhajkk1gS/eroNTU4Prjmuecc5rvobHFW7DArEgVe +MMgi4HapdNsjcN9K6NdHHl7cduc1U66i7ELDOVmzjWjK9e/SkOP8a3r/AEdo9zLWI0LA4NOFSM0O +dJwIwDUiA9+9IBg1ImO/OSBxVNkxiSLnGKlQtnjgnjiolGeBU8Y/HpWUjaJNEu4rgdSM1pxxlSoJ ++tUbcHzVHXvWhHuL+3pXNPVm0UV7kEbv0rJwzSc+ta93uU/WqdtDly56Crg7ITVzXs/3aIOM9zV6 +Nvm2g81n20m4j0q/EAWBHWpii2W1LZFToTu2/rUadR0qzGFzWiWpD2LQwV5qSPYpAqBsqvFOhbdg +1p5GRcUjPBobj2pFGF9KccY5qmxIRDyB1qct09BUQUKMipMHBOOtPzFYCobPrTee/QdqkQZ9qjkx +k81Oi1GhVPPFSbz0NQq2OtPQ56UX0BoVmGc0ow3PTHFNf5jxSqpGKa0ERTcZqFOTzxUk+enrUSc1 +D0Zoth0hGeKiYk49acxxz1quzgsBSvdjtZEqPz9Ksn7ue+Kqpgg0+RmC+lUmS0ZF8xLHFcVr3367 +W8O7IA61w2u584gmnDWRM9IMyK0NMH70DPUis+tLShmVceoreWxyRPQLFgkKn2rnPE8iuPXFbseR +Dg+nSuV11mPX1puzRKvc540hoNHH40xjk6ium0RM4B+tc0nJUYxXWaGn3a48Y/cPQwO7Z3WiDBFd +Mpzge1c7pHG0H0roUrmo/CXW+IlUHFKPSgdDSrxW9zEeSAOaiLDtT3BPOaj9RSb7AkSYyBQRjFIu +eKe3bvTT01AYDzxUvoKauM05iDRtqAj4xUQ79vWnkg5pgBxxU2Gth3bimhcsKcOBTUzuppXAnwRx +TT7U/kdab3osSQucnFRvyMVMQMio5B1+tIpDOVANIeetOLDAFN49allIiIyc0jjj0qSo5OgzUjI2 +bIANQSbB70+TqM8VG4OPxrOZpFDFwSBitCM4jHrVADOMcVdiHy4NTTYqhMn3TuoiGX60Ajb6U2Bj +vx+tdETJizgiQCoXzmrE5O6q5b5iM96drMwkOXjrUilRnNNOMUxmIB+lWZsytQG+cDtmtnSoQu2s +NyXuBnkA11FggVV+ldkFaJz1dZGxCOBVsCq0PQVZWpZcR4paQU4UixM+1OopaAEpaSigBaKKKACi +iigAooooAKKKKACk3DOO9LSYBOaAFooooAKKKKACiiigAooooAKSlooASiiigAooooASloooASkb +7rfSlpJOEb6GmtxM0FrnfHZA0uH/AK7j+Rrol61zfjznS4f+vgfyNFT4GXS+NHl0uTkCouxQE7ch +iPpU8gGTjrUJ+vWvHtroesRNk4785oweTSkcnJ5pRk8CgYqqAB15p+3OKMk8flSpnpRa4EZXk+1I +ee3NOfPbvTT2/lSa1C4Dr7ijbk+vPWgnAJ6e1Nj/AE6VPWwybv8AhTt2fl6ZpgHPXPQU9QM+mapX +3JY4Ko708HOADUR64H0qTnj1q7iJQQVxTOe1Kc5pAWxzSeurAceMVGfanMSOKaSAcUWvoCYpyF56 +0oxjPSmHtTh2HWptqMc5ZQcdMZrk9UbEhz69a6xiSrewrkdUB80+preMdLsmL94oByrZAB4I5966 +bQJCI+K5fHSuo0FcIT7UqivZG0vhZD4hcleOa4yfO412muMmxgcZrjLgpxydxJ4xwB2rrg7yOSXw +EloCWAHrXURw5tuRn5TXMWXEi/Wu0GFs/wDgNZVNaqRpe1M424UiZgRwDWnZhVUH9KzrkjzmPvWp +ZDKr06Uqz91GlPY0IVBNWkXqRzwKZB5cYJZA+Vxz296kQ4I9MVjdWF1JgAFANCr17c0pPFKoGfXN +R6h6DXHUdagdeM1Yk6lSMHpTHHBzyKrl7iTIIGORzxmtNTuArL3DK7VAI6kd6vQEvkemKmWjGWlH +X86eA34U1QfmyKlAPQVk9WMaenHU4p8YP45pMDHPrTkwGyOaGIbPvwSMVUYHg54q5LyM9Kq7evOK +1V7Eolh9+napfmzTIzgDFScH61S2F1HLn0peKTGATnmm5yPeqewgfGO9R5Pp0odmxgU1SevrU2Vx +jgVzx6UE5/Kk2gdabyAeOneqt2FcbKTkZqNT940rkHIpu4gYzRYLg75Wmq2cZ/CmvmiMMcZNO1x3 +LMbY/kasIV4x6VVQHJqdTwQPxqXGyC9yHUmzEw5HBNcTNnzGxnk12OqSFYjwelcTMxLsea1SLpaM +09IBe5jA6ZFelPhbPn+7Xmehs32lCOma9AuJyLQ5/u0qOlZ3M8VdpHnet5+0yfU1igHdWrqpJmc+ +5rMXlq3XUuK2Ok8PhfNj+orsNQyLf8K5HQB+8Ujmuq1FsW/4Vww/iSZdZao4244lJPrW7onTPYVg +zf6wnrW9o+7jjisqnQ2fwnQfKBSgAcUxeAPepVrqWqucYqjI4p4xjFJkgYoXpSsugCbeeetO28Uh +z+dO9aLIBAG7dKkPNIo608AkUxDVHPNJjJNLtIb6UmSSaGAY4FIeuKMjmjFNCGs3tUqAEVHgYqSM ++1Uriewxs5o5p0gz34phNJjWwhGOlHc8UYowc4pddChMGlJzgD8aXHOKXaRzQhBzim46Z9akOCOa +YBTtoK4Y/OkPJ/nTsDPFKFGc0dAE24pBxmlJx9KOP0obQAo7mn4pExkjrTyvFCEyu5pgwakce9RA +4qXoykDZBP1pFJ570p5pwAAJpta3AUL396lXGRVcOxb8KlVvSnG1xNaEGqhTA/PRTXnNw+2Rh716 +DqpIt3P+zXndyB5rH3q5paGmH3ZPaAvKDXQSKPKx7VgWLYlAwO9dDkGL8K5r2qG1TY5u9yu72rKY +gsK1b35i2enNZZA3V00yZdDa0JEaUD8q6bVYl+yMT2Fc5oRxIoIH3gc9+K6PWpl+y7RjleKyj/Ek +TV6HDchzj16V1Wgrxn3rlgMt+NdZoKjHFTW1sjV/CdJEOBipsce9MRTipME4rpjscEtyNwTgAUwb +vx7VYwBimMueelUSIvPWmswAxmn7ccdahkBAOKdkL0GjrTJHycfWnKDjNN2biT1pNgNwQCxqpIC7 +cdKtyggccVVbI6evNRIaCZGEWccVhyj5uOc1uysdhB7CsSbmQ4rka6m0GM2nbg9TSQlUPzLkYI4q +RlJGAetHl4Qk9qSfQbJrU5ycVdVMjPes+zfnH4VrhCE3e1W9jNqzMi9hLY96msUSJckU65HXPvVd +pSseBxxQ+xvTV0W7i/hjGM9Kx7wpeqSBnNNkillbcc1LHa4xih6bGzgrHJ3kJhkZfeoEXPsa29Xt +HVt5HFZUcfI4rvp1LwucM6dpFmBcAdj61rW+QO5rOjVlwB6Vp2ikkZ7Yrlqu5pGNjWtoyAD7VYBY +URLhVpTjIxXPLXQ1gTJk+vNW0xjkVTQ9KuRbjjNZtFl6IYxVuPtmqkRJH0q1GO9bRMpE3TjFM+c5 +p+aaWxye9PYlEbbqpXG7qOtaAG78TTGhUnFU5OxSOXu7G4uGznAqCDTGtm3lc8iusaBO471G8C4w +RUxvuynK6sZbmOSFk6HBrmNz28zL23E11k9jJklDWTPpTFtxzmuuFZdTknQTKV0JZ4htYg1Ts7e9 +jf5pTjPStcWco2jnpzTms5lIYCt/avo7HOqMloEe7C7iSxrrdDt2RNzd65q2gZpF38Lmust7qGKF +VXqKPaXH7FpbF65VGQisMqElZR3q/JdlzwCarGJmbeRisa0k0dFGDjuR+UMDiomHFWScZzVeX0rj +OhDFznNTxyc4FVh6U5WAJPpSuXYvrIw4zUonqgkhx1qUZNUpCcS09wPTtVSWYUrgkY5qnLuwT1qm +3YSiiKZ8npVdm56UMzHr1pmckc1lJpl2HclgKm8rIzUSkA8VYVhxS5mJoSEbZVyOK6KMoYwAccVj +CBn2kdas7p0GM9K7KVRJanNVp8+xi61b7Zi4HHesi5t/MQg81000ZuOHqA6bGSCK1dVdDL2Hc5GD +TRG5fnrUty7JGQufeupOmIBgVTfTEJwR+NKNVh7BPcxNFURSNI/GSDW7Pc+auyMdRTU0kqcg/LxV ++G0jQD2rOVZ7I2VGCdzAbRnlO5gOe9XLTSzFyByK3vKG3pQseK55Jt6m/NpYpxwumBnjFTEHbxzU +xXr6UxgVzT1JISuetV5QAQassR2qrLuznPXtUtWAo3J3A4FZjEr9DWjcZ5x0rNdjuwenehJjMrUI +ywz1rnpF2tgdK629iDIWFc3PGNxPYGuui7aHPUVze8MxIwJat+6uoIFC7gK5nSpjbxnHGcc0y9km +nP3vesmrzbNoRbSNae5jkiYZB4rlroKGPb0qyHlUYPPWqM5JY881rSjaRFXRWIDyfxpwJpo709QK +6WcqQ9c9atQsCffFVDjoKnTdj8ayktDRbmlZgbsmtK3AZiw6Vn2ikITnOe9admvyHIxnpmuSWrNl +sVLiMu1VLqVYgIk9ea0L5hECw681zTSvJNluea1pwuS2dBZY2AnvWrbkF6zbEDy1OPStGFWByOhN +C0ZcjQjXv71OvD5qGL1/SpkBY9KpK5m2WDgj+tPhXBpFx1PanLk5IrVLQkmGTgelP7Go1yKkwCMd +6ESPVT61IcsFpgUgVKG4oTug2AcAiq7nrmrORjFROvJIotbQFuMGCOamhRQPrUO2rKLxn2pDY3gH +pQwyMihuTmkJIBqtySvLuP8AKo1jwamYEmowpGSajqadBrAVWcLu4+lWCCeR0zimqgzjHNTYYyJe +5pJTkHFS7QDkdKinXg4Hbmn0DqZU/JIPvzXCa2c3BruZWxvFcJrLZuGqqfxGdX4WZtaujAecDWVW +xowUSjJ6kCuiXkciO3i2tCCeuK43X+JDj1rrlKpERu6iuM1tl80ruzg02rEp3Zj0UUUxkkQO4V2G +hocL2rj4vvCu00NeF/CuDGv3T0sEtGzttNUqVwK6GMnArE01c4P0reiU4qKStEKu5LjigCnAcUnP +Sra6mIODULcdO9TnpUOORS3KQ5cgUvSjB4pcetNCY5RmmyZGKkQelDLk/Sm9hLcgJOacu7GKbzzU +gHyiklqMQ0IOc0/HHFMBANFrBclpmeaXk9Kj2tk0MSBupqM5NPFMwAaW5Ww3nOKMYpSv50nPSoe4 +0MJAzj1qKQjgVIynio25waGyluQv6VA5bNTsCTUMvLegFYS02NUCcmr8RXb17Vnp61dhBK/hTg7E +zQ12Prxmn23L81E3Gc1JasM8VqtzOS0FuWAkqsXOakum3SVFtFaLXU55k6sGGKrXcsq4Veh71ZRO +BUdynyZrRaGfkVLaA+cGbmumtMcdvasC1bLAegretO1dcfhOaT981ou1WFNV4jxVgVDNUPFOpBTq +RQUUUtABSUtFABRRRQAUUUUAFFFFABS0UlABRS0lABRS0lABRRRQIKKKKBhRRSdsUAFLRSUAFFLR +QAlApaSgApKWigBMUPyjfQ0tI33T9Ka3Ey+vWud8eDOmRf8AXwv8jXRL1rnfHef7Mh/67j+RoqfA +yqXxo8sl+97moiAOR1p1zu3H0qJCwHI+leQ0eumLkZ/ClQLg84703PTtUi7cZHSlZBcU5wOxpFkP +Q0jByf1FNweuaS0AU5LDHfilPBpBkHj3zRjGCM5p6hoIykjrQi05vqKavb0otdjHDryakAXjmoyR +Tl6HP4VVibkgz2p4zUSk5/wqQEgdeKaQri7u1BHvmm5yfalAzxnpQAr5/Ko2J3ZH1qV9iqe9V+T7 +c0kmA8seAOc96f8AQc1EOuCec4qTcBj2p2V7oCUsFRifSuO1Vt8p+tdbMWMZNcfqAAlPetY6RCHx +lMHLDjvXSaSX8rjvXNDG4dsV02izKqENUz+JGs2uVlHVxKckn61zE/3q6rXJFbJX8a5OU5Y1001r +oc0vh1LFmPmB9CK6oOTaHnjFcvYqS69PxrqHQra++KyqfxDR/Ajl5SDKela+nj5c9KyJM+ceO9bd +gAcE9+tTW+FFw2NDqMDn1qeIAg5quuM1bQEg1l5CHE4UY6dqIyCSDSnAGCabxjiiy6iHMvU5pjId +pGae2NuKYdyqc9x1qVq7sa2IQhJz61ftlwP6VRQYYY5rQt85BPpRPYZZGKfgUxVwfapCOPSs4oTY +3uR2pVx2/GkHvS8cVVkFxk/Iz6VWA3EVakAIquFPSqSJuTRjgigEhvpRjGKAQOvOatLTUlkuRimZ +AJ460uMmmscDPWrYhOoNJx+QoLfLgCmZ644qLaXHcefXPtTGLKMHn3p4I2gEVA74/CrQiNgck5pw +JAz1prSA8YpVO7oOaXoHQiY569qfG68e2aY5XnPUUxTjpVvQC0rnPtUqtz04quDx6VKhHB9uKl+Y +FbVGHknr0ri5SNzHsK7DVn/dNzxiuOkbLN3960iXA09CK+eh967e7mxbEdeOK4TSW/erj1FdNfXS +i3Az1FTBfvGwrK6RyWpMS7fWqCDLD61cvCGY469qqxj5uK1i9CktUdRoA+dfQ10OpkiDnsKw9AUk +qa3NYz5H1FcEHeUy6vxI5KTBkx6mui0lcICa5s58zk8dK6nSAPLGaiSu0jWekTUHfNTqBxUIK5qa +MnOK6Y6I43uSECkAyKcOeMUuAOM0+XqK4xRz9KdtpAOeKfj9aaBiFemOKcoJFAOeKd7A4xRZdBXG +nuDURAzxUpyevembf/rUrXGhGXmkO4cZqQc5zQcAnNMRFipkK5xTDjHFKnXjrT2Ex7Y/wqJgetS7 +cnmo3yuKb2GhgyelP4/EUBfSlCj8e9CBjckdeBSnNDZOBS4A6mk0AmcikGeRTlUc0u0cetCd0An1 +pp96dySMU1vwpgADEdKUx0q56U7HXNDQEcYw2D2qRuRSKoJJpT7UgIZDximgdaV15JxSdBzQwQ3j +9acMHOKRsEcUwnb19KTethjtuKcmM0xX3D6U+MCqEyhrcm23YD0rz6XJc/XNd1rxxC3fPFcFKTuI +Hc4q5b2NaCsmyza/K4I655rokz5HsRXP2KlnVcegrpHiaO3yD2rna940m9DmdQIBYZrMU5bqK0L4 +5Lc85rNVSCAOa3pr3SXe6N3R1/eKQOO1a2tcxDn8KqeHozLKqkDj0rY123RIAcVhG/NJoqb95JnF +Dh/UHiuy0JcqCfvZzXIhsSHvzXYaFgIPwoqbq5U1aJ0Sr0p3ygjNPT7ozTTySMV09Dz3qwbHSkVO +DnpS7T16gUqAnOauxIzaMVFLGAMirIHbiop8BTRYVypuA+XrTlwoxTFDbsnvT3IUZqVqOxFKd2Qa +rSJzntUkhJBPemEnaAe9Zt3KWhFLtCc1kEfvMjitSXBjIPWqGzriuaejNYDHzninso2HPPFQ87h3 +qViwjP0oVmwewy1DEg8da3kUmLHtWJY9PU5NbkY/cnHpV9SWZF4McdKhVd68fSpLuQAkN6mlgAdc +j0qXqdFLa437PhR71JGgBAp5zg8U1GAYZoept0K+p2QmjzjtXNmzaJzkccV3QUOmO1Zd1aDPC1XM +0tDLlT3OcWLkVq2MODk8Uv2QhulXreIDA7Um+bQiaSJkXAyOaRxz71OqgA8VXcHccVnJaBAfH15q +/FWcnWr9sT37VNtdDRmhH6e9WEI4qsmPzqfPTFarXUzZIDmngkg1Cucmp1wKHuA9EHFSbVH4UxTy +KdvXkCtESG1eR60nkqeopPNUce9N80t0o0CzA2xOcGq0tkxOKsiVwM00zMeaaasKzKwtAOq80rwJ +txtqRp2xxURmbGKfOh8pWe156AVIpCjntSMztmmFWPB59qXNYtItR3CgjHNOa6duKqCPjAp6pgc0 +lIXKhS7NnNMY96ftzTDjpWbZaRGSe/OaXnAFBHPFKoPB7VLLQ+PA/pVlMA1AFIxU6KelVFESY84K +1SnyM9hV4jaDiqVxk1b2JW5QYnNRYHQdakdWOcUzaQM9xWfM9jQPT071IHwRio8dPSkXdkVLkFjU +t5sdatGUMMEVlRPtwKtI+a3hK6MpRsyztQ9KURgkAHFMwT0NN+de9aXsItCHJHzU42qnk4OaqLM6 +8HNOW5bHNF0Diyz9mQZzR5KDPpUH2ljSiUkVLsHKyXCrTKQHNKAP0qbhYaQPzpjDtUhwKiZh096L +hYgkUjpVOXn2q3KwzxVSVuuKyY7FC4BPtWcfvAj8a07hsjFZsu3PHX2q0AskZaNlxlcVzdzAAxJ7 +munQMUI9KzJ4l38rzng1tFvcztdla0jIjOevSpTEG5PrTk+U4HapeAMnvUN6m8VYzZkVc8dM1ky9 +T0rYudpz+NZUwAbr1P5VvRZjXK+DmnDmncUc/XFdFzlsC9atRgHjvxVUckVctRyPrWc9i47mlGWS +NUBxmta3/wBX7hay1XGWP8PSr1tcDy2yPbNckbPU0l5GXqkz4IHTNYsGWlAq9qEjMz56ZqhB/rR9 +a66atFmc37yOqtQRGo6itO3U4B68VnWm7y1+grTtmCjGO9ZrY0ZcQHoOKsRY+n1qKPpnOOnSnLww +ppakNlojj60+MDd1pACRyacikc9K0t2JH7R0p20gjHrQhWpEUEg0+gh+Dj3pORUgUjrTXAzmkAYx +j3NNbqQKcmSDjnrTGyD60MEC549anVtoqsGAPNTdRmi2g2JuycetJjtyeaMDHNPHC4HaiwiE5XtR +g4PpT3IGKRckc1NupRXK8HtSKNwPODUxXAz61Gign8aVuo7jCAOPao33AeuamcfNntUcp4GeaFto +DuY14D83FcBq64nYnrXol2Fw3rivP9aGJzxWkFaRnU+Ey6vWKXLMBH61RrSsLlYyA3Y9fSt2chs7 +dSWMEkkAc1zt68rSsX9a6htUhEDDPSuXvJllcketDTW4k0ytRRToxk0DSJYR8y/Wu40IBgoXqMVx +UYHmDHPNdxoOMLjjgV5+M2R6uEVoM7bTI3AGa3IgMVl6ZyorW2ilB6Izqbj24GKYCeKGyKACTVt3 +M0h27PFMIOaeVPakwQaGhihTz6UgXmpVTINIU5pkjkH4UpwaVABzS8UxFcgA07nAOKaw5x70pPap +vqUKx9OKaAKUgYpFGDTuIcTimlsjinHOabjnFJvsFhpWkwvNPHHGKj696VxgelMJFO5UetRHk1Ei +kIxwaY1NYNuxng0rCkmUREEEelRTFOgFTENxVeUAA9qzdjRCRbSMHOK0Lf7pHsTWfF0zmrKbscHG +OlKGgT1ElHPtnmnW7ZY4FNfHTOada/KTW0dzKXwjJvmc1GuS2D61O/JY02NMHJq0c8iZVIAxTLrA +iJPTFPGTxUdyuYmGatGdjKs5Sbg88V1FkScVyNmhSZvrXV6c2VHtXcl7qOSf8Rm5DwKsLVeLpVha +yZsiQU4U0U6kWFLSUtABRRRQAUUUUAFLSUUALRRRQAlLRRQAUUUUCCkpaSgAooooGFFFFAgxRRRQ +MKKKKAEpaKQnFABRRS0AJRRRQAlFLQOQ3+638qaEy8tc94650uH/AK7j+RroV61z/jj/AJBkXvOP +5GlU+Bl0vjR5a/UjGMetQ4JOBip5hycnFV2JC4HWvJbaPV6DMAN9Keq539sDOKauT14605FIDc/e +xTWoMBu6mjHQdu1SqvHTvyaXbnDenFAEeMVGyjPHb1qU5AIpOO4q9xEbqGxjvTXBGBUjZAyKb2NT +oO4wnIxTgfWm85NLkZwegxVJCdiUYB4NPJ4HvUORwc5qRcYyeaq6RI45pyHHB7VHuz+dLuBPsKi2 +t2Mkb5gahIwRk0O+ANv51FvOeabEPPBqQMTn6VESB3p6nH5UkMW4bERFcdfybpGz3OBXWXBHlmuR +vtgdq2iOG5VBJbqe1dDpcTlM+tc4Dhx0rrtHZPJBbHNE1qhyfusx9VDKWBzzXPucN+NdFrkiF22n +vXOs7fMuflJBI9SK3jGzZhKTcUXtOAMiZOOa6i4H+i555FcvpykyL9a6m6x9lx04xWD1qm8/gRyn +Bl4zW1aKwUZ9KyguZcKMDPU1u2cTFQPpWdeSVrmsU+UtRp3xVpAdpx0qSG3yBUgj28Y4rBzVyLEW +3Kk5FNVVzmpyO2KPLOT/AD9KpS7CITjGB2pDs2k8ZFSkc4/DNMdAFbPFN7gV0UFz3xWjAAuCe9UY +kBbv1rQGdoPpRLUG7FgsCAKZu655qPPOaeM1NrCF+vakLcmj14pvIzxRYBWyRgGoeQRmpznH9aYU +/GqS1EwyMY7UgHzcdKcBkEY7Zpp4BxWsVdEMlBzx04pjZ6UAjFISSc0mrAN4xk96OOlMZsc00P14 ++lFh3FlJUAiq28mrTbSv9Kruu0jmnbQQz1z36U8Njp0poI9uKQsoB45AqrBcjl5PP509eAOe1MYr ++NPQgDnvVaCH4bBAwO4pymo2Y/1pykDHvUJDKertmEn2rk3I5I7npXS63IBHiuUZvTrWsYji7Gnp +XMikVtalkRDH4Vz+mMfNFa9/IyxYHTFTa0mOTvYwJn+Yg59aSE5bn2FRzZLE06AfMB61pZcpUW3I +7HQByD9MVraw2YyDwKytB524H/1q0dXbEY+lebF/Ea1PjRy//LUehrqtLVtgOa5ccuMeorrNNTEa ++p5oeskXU+E0MYzU0RxxUOD171NHgCupanGyXpyKUHnOO1MJ5zSijS4MfgZODS8kVHgZqXB420Ls +JibSMU/APWmnninjAGKb8hDTx71H3xUmDTeAealsaHAcCmMBzTi3OBSGmhkTfLT4hz7Ukg70+IcH +tT6iew8kdqif1qQgDnFRsecU73VhIXgCkyeMUEjFOiOT0ot2AafpRtz+NSFOeKUjGKGmgTGBcUh4 +/GllcL+FRK4bkUrPYNyVd2M1CcsfTmpxwKZ1anYEOC4xQ/pTl461G+CcZobBDk6U49cdKWMgClPO +TS9AK7gZJqJu3PSrEn0qu2fzp+bGhBnPNNfaadz3prAk4qPMY1MAmpFPBFMKnipYlHJNUJmF4gZh +CeccVw5b5zz1Jru/EWPJNcESd5FX1NqWxpacR5oPcGuiu5cQqueozXOacuXGOta14T5YzxxWH22V +UWxgXuAzdMnmqKqN2BirdyCG+YHJGefeqqZ3YNdENh21R1nhkfvM9wK1fETfuCD6VkeHGCtV/wAQ +ylowD6VlS2lczqX9ojkoyN4+uDXaaKAIxXGKvzAjua7XRM+UuRUvWaNanwnRJ90YpmMnIpVOBx0p +3bJrpR57FUjoelK2MfLTRntTcnvx2q35EhkDPNVpSx61YbaozULYbJpaAQqDxk4pHIxinBu31qNz +k8YxUX00KRHtAGT0pjIMZpzuVG2mnOz8KWlhFKY/L9KrJzk/pU0hJJBHFQ5wMCuWors3jsQEKXPa +nSZKbeM4qMYL9DmnMx+Ye9SlqNjrAfOM+vNbhIWJtvFYdjneWrXeQLGc4qla5EjCvjyxzUulyZBS +ql62S2OhJqPSrgLKV/KnbQ6ab0sb2wcioWUhsY4q+FXIPt1qK5RcgjpTWxomSwDK4p3kBs7qfapw +AOlWmXC59KWrMpOxjXSxxcY5PFJbruHSoNQbMn0NWLHhQaHZOyIkny3ZOVwMY6Cqkp5PHFab/MPe +s2YYOR+tEkKAxfvDmr1v6HpVKPBI7VehHr6CsmuhqXUyQOehqUHnNQocYqTceKu6FZlhTUi/pUKE +jNTryMkU0rsTJFz1pCoBzT12tnNP4x0qrXAr7FOSaYUZTx0q0FA69xSlEIqvQdykSRk9KTOfrVox +flULRjdS1uPQi4P1puw5z2FTlByRSrETQIg2A0qRZOasiMD3pCuKVmwINgGajY9gKmINRlDn2o2Q +0RlyOPpUeMjJqzsXBNM2dPzqWNMiAyfpTip6UpWlP0pWC45AasxgnpVYNkipklZBkVUboloe/Tmq +U2MHPNWHlJB9TVV23dsYNU7dASZSYAZph68HHHNSyFQTiogoYg1nuyxNgPANCoykj1qXZtzin7Mg +e9FtQTGBDkVZj29+tRhCelSouBTimgbJVYjp2pxbNMXPSpVC7cdTWibJsM4600hccVKY8c9qDEQM +CldjSRFxzilU809YccZpxi20ndj0E3HjFPBxSpEOtTBOMmqJdiux/lUTjkc1O6iq7DGaTXURXlPO +KqyHqKnkYZJqozjJzU+oWIJgOc5H0rNmXDcH860pDlf6VQfGQx7U46EtjoPlU564qtONzc1ZTcxL +dKqzk5PfmtCEtSpJywC1I4wue54pI1DHP8Ip0pU4A6Umupsn0M64I9vWsuYc496vzsGbbWfNnJFb +01ZmFV3Ix97vTuD170xQc1JgEDpWzMENAY/StG2UAZz0qnGuWx0wav2+M81lVehcETztsj69RVuw +y0DNx0rKvJUOF/CtTTiTbED0rOKskU2YN8/zt9TVa3x5gzVi/GJX+tQ2mfNWuiPwGb+NHVWRIRRW +rAvGetZFnuJXPqDW1ACcEenSslpoaSLKAFQM/nUqDp6g01QoIFSDO8Yqo3Rm7FhF4BqZccHPGagG +elTqARiqVriHbQWGD9asRgVEi496sLgDNV0JYo759Kgc8496eZGHbrUBbL7ulLYpEi5zgcUvII4p +0YB6UjZzilYBjANxipF4GKB6GnjGDigGR85xT+g55pCfmHrSk8Cna4rkT9hSjPWlI46VImGXjilY +dytKeoB6UkSkg0+Yfhk0sZ4xRYZC4INRtHkH9KsS4GMd6YQMUWQGTLEST3BJrivEVmYnLds9a9Ga +HIzj61j6tpsN1CykYbFPVaoh66M8tpQxHSrt7YTWzshHCk1Swa3jJPU5pRcR5lkYYJqOjBpQrHtV +XJsxUEZDbid2PlA7n3/yakhQ554q5Z2LOQWU+tOa0YOygEEVk6i2N1SdrsrouJgPeu50JFwhrikQ +rMB15Fd3oG0hfQVw4t3sehhk1BncaaPlBNalUNP27MVohaqK0Oeb94dgY96XAFLilz2qlG5Fxh96 +cqg8nmkbFPQHNOwXHBQKjY81ORniomGTzTYkKnSkJ60oOOKR8Y96TAiOCaY2RUgB5pCOuallDA3Q +d6ep703aKeMd6Igw4pF560/aCKQjihgRsOaMDOPanZBoAHNJgiI8io8Ddmp2HpUbA5FTuyloV3Cl +hnrSE/pT2A3UxgufrUt2RSGNjn+dU5wSDirhHB96qyrk8VnJGkSOMsOvpVqM8YqFVxU8OBwamNrh +PYCM1LbqOSKhkIzVmADaSPSt6ZlPYhYHJpcdKGHU+9CtwSa0uc0h/AIFFyF8o460KuWBpl3kRNgV +pDzIZgRuFuGwcc8Cup0okqMmuPiTfM5PUGur0k8KPSu77KOOf8Q6WHBAqwtVYKtLWLN4kgp1NFLS +LFpaSloAKKKKACiiigApaSloAKKKOKACiiigAooooAKSlooAKSlooASlpjEgjAzk06gQUUtJQMKK +KDQAUUUUAJS0UUAFJS0lABQfut/ut/Kikf7p+lNbiZfSue8df8gyL/ruP5GuhWud8dZ/syD188fy +NFT4GXS+NHmMmTzULAf1qaVSe5qE9+uK8d7nrdBmcdaenIzimAd/SnhwFxVIQ4bu+MU7OMH86YOT +nNL2Heml3ExjlenrSBgTjHApZFwD6Uijge9PYSDqcU1h60Ekcdz3pCT3FCVwGHPBx3pGIB6U454F +Rtg55yapaOwEitztxUnbA+tQIQM1LvHA70CAg55OKblhgL6UMc9aaBxQA8sMelR/eJ470uMimZxz +T8wQ44Hv61IDz+VRfzqUP5mWb7xNFrahcZdsFibJxxXG3jHzG465rrb5v3JU9cVyFwNzOfTPf3rW +NtwTKwZtw71rWt5IiYGcfyrH53YHFbmn26Sx5PvV1EtBKWjM+7n8xiT7Vmnr+NaeowpE+BWYc7vx +rSCsZTd7G1paDfGQRz1HcGujvF/0Ynviud0cZkWumv8APkEY/hrjbtVZ1TV4o5WMYlHfmup05QVU +EVy8YXzsds11mnj5Rj0HNc+LdrG6+E00Xb0HNK4UDvSZ4460o5ya5kZsjwf1oGBxjNPf1HNMyO9b +RkS0MOOtMfnhgCKdjH50xt2Tj1rdEWCIDOT3FWCBjFQxpg9e9S55FKzQXBVx0p6kCnL0II4NLhMU +bgNyM89KTOce9KeeKT2J5otqIUleMetDBiDt9KjOAcGnhgM+hp6XAaAw9R70zOc1I+McGo85IFWi +Ry5yBTWz0qRgMHFR8+nWh9g0IGOOM/WkD8kd6c5xniqzkE8HvVbAWjtxxyarMQDyacG/lmoZMjPO +aAsNy2ePxp5bI/GoQ/QClLHJwPxqkA7I3GjLE1GGGeaN56+lPURN249KVW7dajWUY5HHSlV8EnFK +4mZetOdnPTBrm5GHr0roNbOUA6Vzb+veuiKRLbSL+mP+8z3zxWlfSHYMisWx3eaoHNbF2G8vJ9Ki +StJlRd0jFl3A8/xc1LbAlhUch9Kktc7h9aqXwmtNPnO00BTkfTmrusjMY4+lVvD44yatayw2ECvM +gtJM1n/ESOajz5gFddpw/dL9K5KLPmgj1rsLD/VL9KSV5l1fhLw96cgz+FREk9OOamUYFdaehxvc +Oc1JjAz2pnzjB61IDlc/nRfUYgGTUvPaok61NQhMbjJAp+3HvimjIyMU85oYiMkjrSHHFK2cik4x +mpsMXHbFIwORTsjGaQ8jJ4p21Aa1LHioyfQ06IkU92HQnfioW/U1KScc9qjXJNMSGMrCnpxg1L5e +7kUnlkVSQmwUkmnOBgikUKBSn2FNxF1KsyluKSKMrnipn5yPSlQKvSoZSF5wPWmYOelTdTnikxT3 +AbimMB3qQjPOelNwO5oaBAu3pSnHWl2jrQoGDmiK0EyNznpUWM84qfA61C2RTaGhpA79aibPbilY +NnrgUqjNRqyhmQO9SJz070zZyTT1HWmkSzC8Q7vKbHBAriGU7zj3rtfEX+qbFcfsJY4GBTm7M6KK +90t6auJAfetK/Zth9cVU0wKZBnmtDU0Xy+OuOKxi25Mqpa6RzM7Mclvpk9qrR5DD61an3A5HBBB4 +qCBfmB98YrdP3Rrc6rw+mTnHarOvEBQSPwpPDqHGfajxFxgVhTXuyZE3+8sczGMSrnPWu20jAiHo +RXGRoTIvTnvXbaSuI0z6Um/fRdX4TaRQQCKdnGRSLxjjihhn2rrSPPbFXimtkcHpnNKCVApjuCcV +p0JQ2Rlzim4IGetKo3HJFOdkAI9qjd3H5FYgE1G3y0smRzUbSALSYET5dvTFLK4RTnvSx7skkcUl +0o28VK1G2Z82CCaqxkksO/rU02frUEOd5J9K5qm5tHYb0c/Wkcjn1xUjH5gcd8Ux1/iH0pJiHWTf +Me1WriUBD2xVG1LKx9amu2wv4UktRsxr2TOcVRs5ik4YHuKden72O/Wqdu3z5rpjH3S07M9DtCJY +lPXgU2UnoPWqWiXRKhD+Ga07pD1FZo1W5bsgCgp9xlVNJp/TjntU10uVPFKOpD3OauEPmD61etgA +AfamyIrOR1AqeEKFAHSlbUdTYkPIzWdMPmzWmFGCPWs+4XqPSiesTKG5DH8ox+lXISv+NUwB1q3D +gYxWOnU3LqkAGlDmmLkgU7jOaa2ETRk55qyhOABVUH0qxGT1PeqjvYbJ068Hipt/rVdc8544qUKc +VrYlku8VGS+fanbafsprUWhHhiCDQVqTYx6UojI59qdguQ7cU7HpTwh/CnbePpTSE2RYJFM27sg1 +Z25FLgdxU8oXKuzsKTyvX86tBQOSOaQ7QD9KEtdSeYqvGApquQasu+7Iqo7dR3rOUdS0xr+lR7sk +/lQW5qIZLE54qLu5aRKCSeKerN39aYuT2qdEBHSq1HpYawPYVDJwvFXCpAxUDqMc1TEZ0mB/jUY9 +fSpp0yf0quflwCOaz8hku/pk1ZiGcCqKsWOO2auxkZ4OKpK5LLCx56DvUnlfpToiMYzVlU3AYxWi +ikRzdyqIzSqhU1a8vjHek8v19KaViuYYB604r3p2wZzTgpbJprQLkG3jI7UhParRj4xUZjBp2BMj +GM5p2/qDQIsH070x1A/CjVINBGweB0qtJmpGLc471C5PT1FQ3cLFSXr/AFqlIBVuc9B6VSlPBGOl +Zsojf0NUZgVIPbNWmY4x9aqycnB5qkZtAm7jntUU68HjOaljHPHakuBkbQOPWrvclbmch644qO4b +auT6VaEfaszU5UTKg5NVBNuxUpJIp7yzk5OarysC3UURlmXPfNI6EEk966UrM5W7jRnggdaeBwe+ +aRfXpU6hSFxRJjSCJCDyKvr8ik4qsi81KxKgn0rCerLWiKVzky57VvWGRasR3GK56VgxB966G1b/ +AEIgelaSWiIOfvWHmH8aLby2kVkBGTkj0+lMuuGb2NJZg+aPrWiXuC+2dXY7SFJ7VtxdAAMZrHtF +wgOK1oPujNZxKkW125OBzT4tpb6VF2z0pYScjPHPNXoQWsHOe1TKc4qLjAqVF+Wq0ETIWPAqdVOP +m7VWhZs4x3q3k/pTJInbAqIYLdcCkuZkjUk8Y61Qtr+OaQqD0qdC1c14uhoZhu/nSRYPSnsozx6U +W7BcZuAzikAPSg44/WnR9DntSsA0sAcjnpT0w3XvTRgnoMc1IAR0o12FoOcDaMc8UkS9RQTkcdaW +Nj3oAjkjOTSRp2xUz4JxUeSDxR0GRyQt+tQyKVwPxq0xOP51XLfNgii3ULvYfGAQM+lEtqjoeKnj +VeCKn2jaR61RDOSvdFiuQ2EznvXN3nhOYZZFyT2r06OFT0HamvbCQ9Knl6ofNrZnkQ8OXhOChFal +h4VlYgsvPvXopsUzkgCpI7dEzgUuWb3Y+eK2Ry1tokUSbGGT61zeq23kTsAOCK9JmiXBPtXC66ga +Zsc4pOFtS4zb0OUjGZ+f71dnoWECj1NccFxOcDODXZ6Gm7BPtXPiNWjspq1M7/TwCgxWiCO1Zmm4 +2Adq1FANax2OKe4rHjimgt1p+0Gm4IHrT1J0DJzUq5BpiKalUUK4MdxjNRswJzTznHSmbQRTZKFA +zg0jCpFAIHpTXxSY0R546U2lJ5NAU0rFDRnk05QcUoBGaBmhPoJocMAU0jIp3ag9OKHqBBgZxSjq +aFHJNAIqLlAfQUxlP4VISAR3pN2Vwe1NoEVGQbiaYyfNVkdagcHfWTNEyMoAKrcZq244OaqEbSSB +nms5FxHADg9KegoUAgHvUijvSW4PYgwSauwjCH6VXB+Y4HFWlUCMkelbwtYyqFGViPpmnRsp4pso +AUk0kabsEVpFs5pFtSAajuyDEw9BUiAdKr6h8sLH2rVGZzluV86TnvXS6S+evrXGCfbJIRwSa6nQ +XLBOc137xucc9JnYw5xVtapwHgVbWsGdEdiUUtIKWpLFpaSloAKKKKACilpKAFooooAKKKKACiii +gAooooAKKKKACkpaKAEoopaBCUUUUDCiiigAooooAKKKKAEooooAKST7jfQ0tI/KMPY01uJl9etc +945z/Z0GD/y3H8jXQpXO+O/+QZD/ANdx/I0VPgZdL40eYyk7vbPNRN93j1qWVufaomx37V47ij1W +yPIyCaccHjpTOWOQfWnqOKauhMc2AB70mcDig5AHpSKT2wM8VaELhj9KQ/y70u6mZpryAb1744pA +eo9qUkbeMZxSbvamlqJjCzYzUTsM8HNStuwccZqJkIzTGIG69s9ak4656cVC2MDJzzU67cAccUN9 +QFx0HWo9xDbccVJkKKiycsQaS3AkPABHTvUTinAgcU2RgeBxT8hDlwMHvUqnnOKroSQBnmphwRk+ +1MGivqL7YjnjIrkJcF2IrrNT+aFjjkVyUiqGbH6VtHRCjuViec1qWE0irgZrMb71WreXZVzV0KC1 +Y++d3Y57mqGDuq1cSbsVU/iqo7EzN7Q1HmA9cEV02qAiD8K5zQVJlUj15ro9XZRAQfTFca1qyOip +0OVjUmUketdRp+SgWuXg5m/HFdXYqVQH1xXNiVqrm/2TQ2nOOtSAYGB6UKDx9KU8DiuZGbI84NRn +JOcdsVLgZpNq/pXRTV0Q3YjA5yec0x+M4HUU52A6fnTNzE8VtG61JYxSVqYdRTF9cZqUDrmqb0Ey +Rc8CnZPbmmY6HNOGB0qIobYEd+nFR7huPanscgVHt5+tU7piF5xSKx59aGPGPypm0g/1pPYBzNzx +1pi53DjingAc0Y5zmmthMVmzTCf16VIcEcUwjrWjEVnyc1AynPH41Zfv2PrUB4zt/GmkAAkCoZAT ++PNSbsc0MwYdPWlYZVbAPuKN4IPNJJjg+9Rnrn2q1sSKzopwrbhjNM8xz9O9LgcZ4FMPfNPyAmBJ +GTTopCCBjNRAn8MU4kDkelK4GbrTZ4rnm71r6uxyBishhwK3p7Gctizp5/eCtm+y0YC+mTWLZg7x +jtWrPI2zafSpn8VyqaukY7kg4qa0J3ConwSeDVi0ALLRN+6b01753GgAiPNP1kkLj1zTtBA8scdq +br7AKMCvNp6wbRpL+IYEP+sGODmuxsAwjGehFcjb+X5qbW3EgFuOhrsrMYjU+1C/iJFVfhJjhT7V +MhHTtUBbceKnjyK7LHIKcZwKdjgj1NJznOKexyKgBE61NjjNRqF7mnpIki5U5Ge1NaCYvHNKT+tK +BjmkPOaYhhIPFGOKbgg04HjFSUCj9KY7ZFSgjH6VDKDnii1gQzqMiljPPPamkEdKdGpLZ9adrATu +Rj17U2PqaUqfWgcVWrJvoWFKgUhbIzUBbilDZAq07EtC7hgim5bHtRjsTTiMilIaIcknj8aeo5xT +BwSKlAFZlj+CKacflRkZ4pMk1ZIY4pAOmakx0IoC+vFS9wuLjimHBqTjbUY7+tO7QCNgDJqFySfr +U7j5feq4XJJqr6AiJt2SDT4x0NIw64qRMbahIpjGPbHNA5NDfNmpI1wtVYT2OZ8RghDjv1rk+f8A +Gup8TMeM1yu5QKmpudND4DS0z5pAP1rS1SMrGCfSqGkABwetXtVkZ4wO1YwtzMKl+ZHMXGQTmoYs +56dDUs/XJIqGEHPtW6+E0W52nh5sKc4+tReIm3Gp9BjzHn0AqnrqsJOtYwb5DJ61bmLCv7xcc13G +lj92h+lcTbqfNAB7122mgCNe3SlG/OVW+E204WjAzSRgYyaGPau2MdTz2xpxk1XcEn1qQ5/ClRT3 +psSGhduCDSMA3epGGOKgfilbQEVpyeg9aj8s9/wp8nzNTsDoaiRYqIAKhuvlXjmrK4wap3fCntVJ +JIi9zHuWJHvUUbljgflTLt259O1V4JfmwBXHOzOmK0LZcZIbpS9RxioWYgj1PFSLLHGhJGWJwB6e +9SlfQT7hCjFm2gkD0ovn/d98dKesh+R1ATBzx61Uv5PlK59adlfQFdmDdvknPSq1uwLdfWpbvgk1 +ThfD812wj7hMnZnRaZeCOZVJwM12ygTxbhzxXmCysjgqcY6Gu88P6gk8IRj82KycbM0Uro2bA7GN +W5kYrzVJWCS+xq68mVqUkiutzImjwxIpIzU03LED9ah2up5qLa3HPVFgEbTxzWdPuLeg71f3YU+4 +qi/LU57XMobkQVeamjLBh3pmMcHrUsQ557Vg7G9y4oyB2pwBNMU8e1Sf4jik11BEyqMCriRnODxz +VaMAYq3ECOnNXFgx4Q8jFThAKEUcVKo9a0SZm2J5eOaNvHvUmODTlxxVoVyMKcEEU7YCKlwaR1wM +iqiS2Q7RjFIe1OZh071CXPSiwyQkdabuHX3qEucmlU8E02xWHuw6g1UlmAp00nGKoyMXb2qHIuMR +Xm6EVA8tSGMnimGE8k1lzGiSIAxLcdKsKvp3pqwnt3qzHHnA7VPKNuwsaDoRVhI+KVI6srCeOKtL +oQ5IrFeOlRSRitT7PntVeWAgVXLclTRkSxDqazJ8hu9bk0fWs6eIYNTKNtjRSM5GwxxzU6OcDgik +ERHP0qXy24IH41CbSK0JoJzu2n1rVhkyBisAfK3vWpbSjaK2TM5o0weRipNgBqpG7DHerCyAjBrR +Iy1F288Uuwilzk04A45pW1KuNwSP60FWp/sOlKentQ0O5AcflUUg4zVrFQScjmkNblSRciqkmeSe +1X3GearyjIOazZaZnShjnPeqLg5ODwK0psjj1qhLjJ9u1QhlKTqR+tVnyTxVqUchsVXZRxirhbqZ +yJI1BGRTLoBE9zVmBMgZqrfEMSM8CqIRntOI4yzcZzXM3k3nSlveruq3ef3ak9ax85I712UoWVzn +rVLuyLkJVQSaR3Z+ppseSOKdsORx1pu1xJXQ+Nc8etXIowPyFV1DDB9qtRHcPcYrGozWKJAowP1q +vdsEUirgT5eay9QYBgKmkryCbsiNFLBc+orejOy0wOmK563Ylhk963d4+zlR6VrPexEXdXMSf7x+ +tOsh+9XFRy9an08YlBxyDVv4RL4zqLVvlHateAHC1mWoVtvuM1rxt5YA71KTtoOT1LBUAZ60RgE0 +m7dkmnqMAkU7diCZSp6VYQDFVY+oOcVZQ80LcC3Eir1p8inBx6U2ImlLcnNVoSYGsSSBG/KszSIW +MpPoa19XG5eOKbpNsEXPqe9YSTcjojJKBswjgewpzNilQY60rAY6VotNzO4wqSM0gO0fWnBifl60 +5l4oAZGN2AasheDUKHHNSB8U07iY3bzxS5FBI61GemfSk7DQ9iM/ypjDoQaTdnFLk80wG5PNMwN2 +e9PweD6UA0XdwJkzgYqwTgEmq0RyRV/arLj1qnczZFEe+KcrNu9qn8tVSoGwBQLRj3KlarNN2HWl +b7uKaE3n3qrk2RE5JVvpXF6pjzZcjpXavG4DfSuK1gYll56Cs5M3pnIgZuGx3auy0GPCjOa4+Ebr +gn3zXdaEoPXnJrjrStJHoRX7s7OwQhFx6VpocYFVLJCsY+lXFNbR2PPk7sU0oHHNLwacORVEglOU +HnikAIp65zRcQuBimlOOKl7U2mxIiAOKY3pU2DUZ6moZSIsHNPFFKKRTAA07HFFBFVZEjccU0tgG +pWXioiOKl3GhqYJNKF5OKcqUAEUrDuRMME1Gp5OamfkelQY561JSDHNRY+Y+tS4J5puB9KlsaIXG +Qaq4O4j9atsx5xVUdSfesmtTRDlVvXvUybRTFHfpTwuaElcTehGMF+D3q5jEfPTFU9hD1bkYrFW0 +NDOZQnAK57VJbD5RgVDJk8LVmBdqjNaQOeeiH/xZ6GqmpsBA+PQ1c6ms7VxiB+ccVtbUzOHeYeYw +A/iOa6/w6xKqa4F3IuSAT1ru/DZ+Rc+oruUk4HJWVpnc2xyBV1elUbY8CryVhI2jsSCnUgp1SaC0 +UlLQAUUtHFACUtFJQAtFJQABQAtFFFABRRRQAUUUUAJS0UUAFFFFABSUtFACUcUtFAhKKKKBhRRR +QAUUUlABRRRQAU1/ut9KdR1ST/rm38qa3E9i8tc547/5BkJ9Jx/I10a1zfjv/kGwf9dx/I0VPgZd +L40eXvu3fjTHxz6elSyHPQ96gbJI55FeUz1BBjJ9DUmQBgDtUG7PHvUm1uvpQtwFJH50blxgmoTu +z1oye9U9WIlIPJBpmMZPWmiRu1POO/NGgCBQTyetOKkDjpSZxj1o3DHsM1SEMZcDPoagbJNTuN2M +DFQjqc0WQXImyaenbv7UFc9eCT0pu7b0GKqysFybls9KYenIxSqcfUUjZIyOMDFSkAgYAHnmkOMA +mmnjnPWnEggY6imlqAilhjHSrIxwSO1Vs4wR9KnRi3HrU21H0KOpviMmuUY/M2fyrp9WyEYY6CuW +OdxNdMNiVuRsSTT183HTikQDfz3rdgtoTCX4ziqlKzSISe5gvmox96rN0qiRh6VXX71WthPVo6PQ +T+8U9OtbersBBWLoC/vAT65rX1sERfhXCtakjqqbo5215l/Guv0/JQDjFcnaDEgHvXWWeQg59BXN +idZGz0iairyAe4oIxn+dNRuMZpWxWEUr6GTZHwCRSMfSlPXI7UjDvnrXVTREiHbmgrgU7Yc8dacV +HT2rXoTcjXrxgetOyO30qPGCRmnjAFLcLj1yc04k5OKbGxOc+lKDnOD3pLYGHPHtSDJ+lPyM896T +HNVe4DD+NGDj68mnEelHAXnmi2uorkRAHI696lRQQDTDj3qROB61VtRX0GkKuajOcg9v5VI2Cc+t +Rc49QKFuIikUc4xUBzjA6gVOy5Oai2gHmriFyIj0HUYpGHHbmn4AJxxUblcYPoaHuBXfJJBHSo3O +D1+tTbSfzqFlbnI9arSwEYbtzSEnIAp23nntTtgAPHNDEIDjkU5sHkfiKjJA7c05TlT6ik9A3MLV +AS1ZRrT1N/nxWWzc810QvYzk0aVgo+9U9069OM9hUOn7m7H2pl5vRjyTms7XbNVKxWkIzxVqz++M +/WqZOau2QBZadTSJtR1nc7zRHAiH0qDWjv3duKm0cYj59Kraqx3H6V5cG1D5mj/iGZZR4lU+9dnb +ZES/SuNsstMv1rs7dcxr9KqC5p6hW0Q45zUybsc1EVOanjXiuvyOYcFbHpSEtgnGcVIOP8KaenFJ +JITZG7MFyvWpbdCiYbr3pViRsZFTFSBRYm4EnoKZyKQnb0pcHGfWmA0DNL0GKSngDFLcbGgYppHU +mn8dzimk560XAjxnpTkUhqM7OlPBDH0pgKQcEUxgc9KkGefpTST0pxYiNxxTkUjvSkAD86RCM47V +W4MkI9vxpecU0ntR1IpPYSGMAevWheepoYAk805BgfhU7sroLgdBQB1JpdvUj0pvIqtxDxu4FKQ2 +QKAKeDzRYRGQQMHim4PrUkuelM6/Wk0NMVh8vpUAXqKsOBtxmojx+FUtEJFdhSqrbM07GT7U4ZxS +S1sVchIA6VMh6jpioXUk9akhVgDT2Ynscp4nyMd+tcvgN1/Cuo8Tcke2eK5gc9azn8R2UfgNTSkO +8DPFW9VBRR3qLR0G41Lq2CP61nHqyZfEkc1PjJwfamW+GYADnvTrg9abbFtwYcdDmtkvdNE9Tu/D +zZi6AYFUvEQG7P61c0DaIQelZ/iCTdIRWNN3pmP/AC9Ma3/1q+5rt9PBCL19q4q0JMq49a7axyEW +iL94qtsayk4xSdfrSqDjPWjHpXWjgYmOgHNO6cU9UH3vSkkqluSQnrUUvSpGOajfB4oY0VwvJJFL +tBOacw2gUAZGc1mlrYYqgd+KoXyNhvxxV7laqXeCMVTWlhLe5zFyzYIqtAMNkmrt4nJ75rPU7Xwe +1cc+x1QehdlPKt+dRO5xUjlQitmqcsvBxwc0oXEzQjJMeelUrxj3q3bMXiyeuKz73OGznmmrXEtz +Hun5IqmvB/rU9wSDk1WzzmvQgvdMpvUnyPX6Vo6ZqL2cyc/LkZrKU8H16U2RsY45ocb6C57anqUF +2lxGrqeRVyK4DDaTXnuh60YXWKQ/Ka6+OUSKHiOeK5ZwcXY3jJNaGpjc3rSXCYA46VVt7hg4Bq3O ++5azb0HqVmb5T9Kp5DH6VMxNVDnceO/Sok9AitSYmrEY6E1XUBiBjmracADnNYt62ZqSoTyB07ip +096rqB61NHk981SelmCLaAccVchAHNVI+lWou3NaITLWO4qRQe9RKQDUwIrRamQc9BSjijvSP61c +dQH7zio2c8g0xiR3qBpBzk1XoHKSPJ6VWMhPB71G8h5xRGpk5NSyrEig5qXGKciACl281NySpPmq +sa5bBrQkj3DmqLAxvnoPWlLbU0WxaSEY4+lP+zg/Soo7iNep7U8XsJP3hxTUFa5DciM2+wk9qEAy +O1SPcRsCM1GGBHB6UcqQcze5YRh2q7Ey1lhnPTtVqJyoxVLQlq6NAyKBVWdwwpGkyOO1VJXYg1bJ +SIZm4xxVN+T9allY8mq5kC4yahx1NEO8pWoaPYp9KFuIwOSKa9zGwIzzUcq3KTZQmYBgPertqQRV +JgZG/Gr0CFQPpSVjSWxejY4qQEjk/lUUf9Klxkc1adjFk0bZ+tTKTzVVDtP6VKsnNUIn5OKUk49K +ahFOI7099wGZPcVE5BzUrZPFQkYqbFIiYGq0m4girLk469qrt/Wpe9ykUpsY4qhIq4rQl4JqjMue +lZNFoz5MgnPfoKrnII9atTY5PpVOQnr2qoJkTZYWcov0rH1a+Eatg84NWJ7kKh5rk766MzsByMk1 +1U4czOapPlRWlkMjFj3poHNIKeOorr2ONau5ZiUY9xU+0d/Wo4gQM4qblvyrnk9TrjoOPIHNWY1x +z6dRUEag84NW0HyHtzWMn0LuIzsoJzWLdyb261oXcoRT3NZDMWOa2oQ6mFafQkhYBwfStRZdy9ax +lPIq5BIynjv+taVI31JpsZOMOatacN0q+majnVSN3rU+mqd2Mc+lS37prFWkdPaIAw5PFayc4yKz +bUFQD3OK1IDxk00tCZbkwUADFSIOxqLf6c1JjcB60S1JTHgDkd6ljOCDTBxn2p8PzMM5oSC5dVsL +9acHBNM6CiPk4poRUvrcOPxqWzgCIAakkHPtToeM0uXW5V3YkKkcDmkwe9SblHT8qZndSa7jQ1QQ +386kyelABByKdyetTYdyNScYo8zGRTsKKYV5o2Afndx+lNcelOQKMZ60koGODyKLagRnGCfQUI2R +zSKdwpAm05HrVJWBi7izYHFSbCMGosENx61MG5FCtcTHxjkHHetOAetUYxmtGIYHrVJESFkTjatV +HRgeaukk1Djk5p3IKEpIxTkkVR81TzxArkVV8tmODSvqUrMWWXMbEHtXA6y/7yXd0r0CVI0ibPpX +n2tIrNMQeQTxWdR6aG1K1zmbXmcn3rvdCGNgIrhLNSZjjpmvQNDXha5K3xo79qZ29qCUUD0qyi81 +VtOEH0q6DXRFaHnS3FA5qTHFMHWpCRVIligHrTcEGnKTipFFKwrgo4ppWpeMUw8U2JDRULZzxU30 +qMjmoZSGbeKQA5qQ4xzTcUFCAfhThik96UZpokcelMdRjipO1MbjihghACBTQxDU6m55pOwyGXLZ +qJQAasuvy5z9Kr4xWbLWwm7HFRnIzmlOc0N92ok7opEEuOcVWAYNVhzniohwah2uaLYep61IpI61 +CCfpUm8EU09SWhoYlvTnirE5Ai5FQqoZxVi6UCKtYp2ZEmtCkuMCrC9BiqmTxirkQ+UH2rSnsc09 +xQDnmsvV2Ahf6VrD7xrF1ojYymtVqyEefbf9KcnH3jXfeH1GxfwrghtS6fPTdXe+HijKoB9MV2RX +unLX+I7S2AwKvJVG2BwKvpWcjWGxIKeKYKfUGgUtJS0AFFFFABRRRQAUtJRQAUtFFABRSUtABRRR +QISlpKWgYUUUlAhaSlooAKSiigAooooAKKKKACkpaSgYUUUUAJSn/Vyn0jb+VFKf9XMPWNqa3E9i +6vWub8d4/s6DP/PcfyNdGtc547/5BsH/AF3H8jRP4WVS+NHmDv8ANg9BULZySO1TMoGT3qBlyeK8 +t6HqgiknHapTlQR2oTjHGDTiBgYqUmxsgYYOaY4HYd6nYEZGKjUAj8cVdhIiKgc+p6Um5iSOMZ4q +Ypwc8CoORznjpT8gHg45znjmmhgCOuKTIzk/WkBUjJppO5LHsxI4piggZbrThnoKdtzzT2FddSIt +yTxxUTbuoPWpmA4FRyAYx3xVdQI1fb9TUhIPNVyME4qRHODn9KjzKCTofaolYgk+tSHccnNM4PXq +KfmJoerFsZ/Opo3IyfWoVH+NO4FNoVynrLN5Zwc9ea5YEkmui1ZyY8Vzo7jtW8NiF8QiD5xW1FcM +sRHpWTEMyDitjy0EI9cZpTfvIaVkY102XJ61Ah54qa4PzNUMfLVqvhIfxI6zw4oLA960tdOEHPrx +Vbw1GCck9BVzxEqhAOtcVNXlJnVUfvpHN2Rbzj9a66zGFBPtXJ2AJk/GuttDkAdgK5a/xmz2Lo+b +nHSgnnNB6jBoPHXFZR7GbEOe3pTOnXrTgT24phzn1rpgjNi85Hcmgk96apO6kdhiqvd2FsJgZNBx +SCl6tjtVpWVgv1HL2qUAA1Eue+MU8ZwSDREW47GTkUc03J4pckn9KnQY4jnpTGA6j8qfnnHX1pSB +3ptiIDu74p3IXNOZRSAevNVYkjfPA696M7RzxTztGfyqtKxXkcimlqF9AZgQf0qE54z2pNzHgetO +A65ySapAMcc1XY+nPNWJRx75zVaTOeKVgGjdxjpSOh71Ki9aSQZz9KcWJkGMkcfWgnj8qXkHr2pA +PQ1SBjDxkGlxxkfWmuOTk05ctGTnoKb3F0Oa1Nt0h+tZp9au6lkznPrVF66YbHPJmtpkqqCSM02+ +lViRUFhKqHJpt4VY5HFQl7xrzaXINwzWlYH514rKHJrUsQA656cVNZe6bYVtyO+0kfugO2Koasct +j61oaSB5Ab2rM1fPmV5cP4Z0/wDLwraeP3wJ7nrXZW4yi1x2mA+aDXZwAhBmqpL32KvsPwc1Imc0 +3qcVKq+9dMtjmHN933pqjJ5qRunSkG0UkA9BxTmPHSmjgCnE8VRJAck08EgA0mDnJNLkUbgJ3+lL +2puRu5oyCTQkApIHWkPc0DBOKMYpPcY3G4U5UOc0ox2pwOOnWnZCuOxxjvUXPI96HZs5pVPJJqkt +LCWg1uKEFI5zgU5M4zTC4/5cUh9c0zH86fkY4okCIx1zUqBaZgcUqhqkp7DmOM4pgOaew9Pxpg6i +jYSJh09KBweaVR0zTsDJp2JGseKRRzzTieRRmjWwDH6cdqi6ip25Bqs2cn0p26jRGzYPFAJpWwOt +NAzzRZjAjcamT5VI9qhbC4pwyUNNLUT2OS8SOBJXNg8E8Hnn0rd8ROfNxWHgcEnHrWM17zO2l8CN +OyIXnPXnin38pZQG5qraknA70+9yoBNZxurg0uYxrj8qbbZzgdc0XG7Jp9pyy10bQKXxHaaKCIfT +isnWn/fEdcVv6PDttwT6Vz+uf69vasYL92ZJ3qFXTvmlAPUV21njantXE6ZkSrkV3FmCUGPxpR+M +K2xqpjbxUbk5pVGF601Tueuu5w9SygGKjm5BxUuQBUEjE1S2J6lb5g3NBIZvpSs3PtQMDp0qfQoh +cgEZpFYE4p84GOKrAlT9aQIlZsH1qrcFdpPWpWy2TVaY4U59KL2AxLv71ZM7Ycn3rSuW+c4rHuX+ +YDmuZq8jojsaPDQ9e1Zzg/hVmB/3eKhkAyB2qY6BJamjYMTGV45qje7iTn3q5ZhQ2O2Kp6jwTTju +BhXRGf51VU4PTqCKmuGyxqt3r0YLQ5aj1H5xTZGJIp3BqN+atLUzk9BoYqQR1roNH1yWEhJT8p4r +nqFJBzRKCkiYVHFnp9veRzYdSO3NakLCRcg15rpmpyQkIxO2u10q/SVMhs5FcFSLi9TvjJSV0X7h +FXkcYqiDycnvWjKd6Fh1xWZyTzjr0rCTSWhcdy7AParIAGahtxwM1ax3rK1y2MANTx4zioPb3qdM +ZqloNFpAcirUYzz0qtFjoRVkEDitIq2pLZMDyOamVqrpgkGp+MDpVxRDHl8f0pN3amk8VGzgdO1W +lYQ2R8VWaQYxT5ZOD61UwWIouWiaNCx68d6uxoqgACoIgAMVYBGPWh9yJMccUnHA60pGelMxzS6A +hxPrUMtusg+tSY5FPGB+NJrQd+xnSWTc4OcVELZc4YYrY2A8jimtAp60kg5zN+yxYyD1qLZJHnBy +K1hbKOT0pDaBgaoOYzo5TnB4q2HGOtMlsm5IquwlXjB4qool67Flpl45qJ5VwSTVXEpJ60GGZ+o4 +qrqwWKt3cEbgvNUP9IkI3Gtk2Hc0LYqprNtmkWkjM+z7lyMk1IllLWstuq9hUhUYwOKVm0LnsZ8F +pt5NWlXb0FScdMUwnH9aaikgvcUGpgRxUXTk1IBina4MkxwO1RnI5/Sgt2HWmsSM07WJRZjfgCp9 +2QO2KpwuCQD2q5wQKL6Axp74qJvepD1NRy8ZqLtDRAx/Wq8nHFTSEVWf3oLRXl45qlIwwasylu34 +1RlyBzzWbWpRVlAxnpVOTaASR7Yq3Icr6YNZt75ixOw7Amri9SJbGBql6clEP1xWL1OTT53Z3Yn1 +qPJr0oR5UeZUlzSHZ7CpIl3MM9KiAzV62h5BPSibSQ6cW2WFTGcDinHgAY5pxYIMd+1NJH3ie3Fc +m51jlYgYx0qzv4HYbeaqxZkbqKnnaONG5GQKl72FeyMq8kYuVzVSnSNuYn1NMruirI4pSuxR61Mj +Ec+lQ0q0NXHF2ZoeYJIwOpH61a08Ddk9R3rLjfBwO9alky7g3esJKx0wdzpLZyAM9614yBGB61hx +spUFTzgZrSgl3Ko704iki4ilRwaerPnmnKMJnvSAenY03uSiwMYye1SQEbqrNnbwamtc556VQi+7 +Lj8KRMKKgkOTwfSpkyFJ7UWFuKx9aSPjimiQZNKGHNK2pQ535pA56Dio36j3pygVPqWrEyM2ealb +A59arb+eKcZD6Y9KLC6kueTTcgE4pgOOe9JjkE9M0mkMk3HPHemSE5+tSkdD9KhlBNF7DEBGMDrU +iCmpGMU8KeBQkJsUqN3uKY2cjFSyLtxUXHXvVJE3LMRIxzWgj9AKz4/4e9acKDANUkRNiMxFQEkm +rMi1CVoehKGlwBioXB5xTnYKMVCGLHFDQ0NnO2Bs+lcBq4IEpB5ya9AvIyYTj0rhNejCQyEdeRms +pm9Pc5iwYmbgdTXouhx5WOvPNOBMvGK9I0ENtUdOK5an8Q7pfwzrYFKoKsrkZqGHOBU6j0roR5zH +JyaewpsajmpWxxVWJb1HDGKeAMU0dKPShoQ802j0pDxSBCewqMjvmnj1pDioepSGMDSKDTs4pVxR +ZDExmjHrQ3HSjqBTEO4ApjlSQKO1MZctQMcw460w81JyRimEDGKTBETHg1H1HNPYYFN+XHNSy0RH +ANNdsD2xTiOeaY6is/QoiKgjio22ipj09qhOOMc1nI0QLim8Zo6fSmE4NNKwFiI/OMVPen92BVSJ +suoqzeEbVFaxXumM9GVIRljxmrYG0fhVaLAP1qcuTgCtoKyOWW4IxLGsXXP9Wx74NbKRkbjWLrX+ +qfv1zWi3Etzz2Zl8/IIOCc13fhx/lj/CuElUmY49e1dp4abiMAYwAD711xbtY566W56JbHKiryVn +WhwoHtWinaspFx2JRThTRTqksWlpKKBi0UUYoAKKKKAExznvS0UcGgBaSiigAooooAKKKKBBRRSM +SASBnAzj1oGLRTUJZVYgqSM4PanUAFFFJuXIXPJycUCFooooAKKKSgYUUUtAgpKM0UDCkpaKAEof +7jj/AGG/lRQ3CPj+6RVLcTL61zXjzP8AZ0OP+e4/ka6Va5zxyM6dD/12B/Q0p/CyqXxo8wcHHPeo +QPQ1aly2QKgKkCvK9D1Rq7ganXHeowMDHfipB0z0HrSi9dRtaEb9c/Wk+XOPapGAI/DioQuT71Te +hI5+R7elV5NvSp2UcfpURAz+NJbgRN0NRjGMn8KeSP8AGkznHP4Vcdx2AbiKkG0EDNRnpx9aAx6f +jV2vqSPYDrUTDk8dRUwORg0hA5qbgVCBk8VHnaQMcdastn5scVA4Jzn0p+QyQkHlajZfTv3oR9uQ +OKGKnGRSQmNV+cZxxUrYxkGq4GT9OalDDt6VSbuJmTqpOGHXtWF9PatnV2xxng1iAnpXTBaGaepJ +DkyAe4rZ/wCWHXoKx4F3Nkdq13U+T7EcVMviRSWhizHLGmRfeFLMDuNJDy3Na/ZIXxo7jwyCBk1L +4gZSCcdPWk8Lqpj9qPEnTA64rhoK/M/M6KrtURiadzIM11toAAPbiuT0xQX7gdq6y1yAPSuStb2h +0P4S6ACOe1MIUnnk1KOnrTX9azSu7GdyM9OOtMIwePSnYxyDyeaTJIrpg9DN6EYOCf1pHY8gCn44 +xTSvT1FVDuxMZyKcuMnJ60Ec4NKFOfwqr3AcoXnPJp4z0HvTR3FPUAk89qd1cBDkAetOXHXtRkUu +AOe1TbW4CjvnvQR14oAwaCcnHtVNXZNyMgHAFOwAM0Z607Hy8dDVJXEyBuahZRgn0qZ1J696jYYG +PWmBCAvJ9KTd6fSlwO3Y0nGMAUuoxjHrmqrYB/GrrqpXPtVVlAHJ5zVKV9AsOQYHbmmyqQKVRwKS +RsjA70LRgyqdw6jmhjnFKykn3pi/Kxzke9USMcg+1MLlUbsMHNPc5yDVeZgFJHIrRWuQ3oc9qDHz +SKosatXnMrH3qq1dEUc0myW361LI3UdarxEg5qRiTnPrSa1Kg9BFHNalgPnXPPSsxTzWpp4BkTPr +0rCv8LO3C2ud9puPIXJrH1Vv3pPpW1p6gW49cVz+qt+9YHPWvPjH92jeP8Rkml5aYYFdlFwlcfop +HmDNddGRt+tFJWkxV2OB5/rVhOetVwcHp0NWI+prq6HOyQhiCaYOtSHAApmPyqLCH8dqdxijaMDH +YU05qkSHB4PakI4oxgc+tJk9qdtAGEetKF7etL9aX5sZpeZQij1pzYxSAHOTSNyaLCFBHSngeppq +jGKdTsA1sZpoVWIp7DgmowTniqv3EKw7enSnKQeKU9KEXJzTExhAzS8AUpwD9aG9KUthojJHQ81N +Hg4+tQgE1Kny1KY2PKkCo15+lTNyB6VDxnHrVAiYAYBo+lCAYp3ekJiMvrScZp7HHJqPOTQxCt04 +5qAgg1MScHFRHnNFxkJHWkC5PtS85296eMEH24p3YETj1qwiqYzVcnkZ6VY3KIzVrViexwfichZT +trCzkdjmtrxC264OOaxx1HoKwn8TO6l8CLlkpLBiMVJfFeM56HNWLBFIzjPFQatjIA4xWcdVcPtW +MCc5JqW0yGX6iopDzxyKs2XLqPpW0tIDS949A0lSbVc+lcvrjHz2xz1rsdMRRaA/7NcfrePtLc9T +UQX7pGEH+9ZX0z/XDOa7ezwFXHpXF6WuZUHvXc2gUKCfSlTXvjrvQtnJWnRJ0NN64FSDAIIrpscb +JG27ahK5yamcggYqF+laaWJRXZeaRQKkYnFR5GRUFXGyLkVCY6nlbAA/Wo88e1DsIaBgYNUL3aEY +irryAkD2rPvSNpOelS7DOeuJDub6VhzuS/PT1rbvAMn3zWDcn5j161jDWR0bIvWsoC4PapmCswPF +ZkMn3cnpWrHsZQ1ROPKx7k8BIYY9Oaq6oOvv2qzAS0gHp6VBqpxxRD4iTmpj8xPrUBqxcck+3aq/ +1r0o7HJPcM45prHJp5xUZqkZyuIaSlpKozJEJFbej6iYHCs2BWEtOBINZzgpKzNac3E9QhvIpIuG +zkVXQqZMd81x2nahNH8m704rqLBxJtY9+tedWhyHfRfNqb9r0yeasMBUVuo24PrU7Y7VzxWhq9xg +UCnrnINLspQrAcelUgRMhqwhJ/OqqZ4qwDwOataAyyGwKeDxk1ArZ+lS5HTNaLuQyQtkVXc804kk +cVXmIGcHmqBEcjMeKfCjDk96iQFjmrqp0+lCBuw4Djp1qVQcCjace1O9e2KGRcUkdfzpncHFO4p3 +GCO1KwrjcU4LnFA5HFSADgU92K40+meKUU4r3pQozVWJuAGalQDkU0CnijdiHbEIxULwxsOlTZFI +fSqsiUVhaxjPFL5CjtVg01ulK1mVcqyQj0qEoBVpj+dVyRgilYauQMpJJ7VC2P1qwx7VA4FLRMrU +bx1zxTCVzxT+gphx+tFhphnpmlDkfyprcClwMcU/QdxdxzSgjnNNyR2py0DuM37HA9auxuGA9KpS +KVGaktpAetJ72G9i/wAHmoZM808H0qKUkZOaHsJFZxiq8pAGM5qw7Ag9j6VUkzz+lTYsqyn8KpTE +4PrVuT8aruoPb1rJ76lFEkk9TgCqV6MRsPatR0XntxWdekbGA9MU47kyODuOJG+pqJamuT+8f6mm +Rxu7BQK9VaI8tq8iSIBiABmtFQUTjt1FLbWgiG5uTUV1Oq8A1zylzysjpiuVaiMSOc/SovMZzhqj +Ejtj6VIgG4DGarltuCdzQtlwhb6DNUL+XJIHrV8yLDDtHfmsaZtzE1NJXlcmrLSxGXfbs3HbnO3t +mm5oNFdZyDs5pVZl5BI4I49D1ptFIY4MRWjZzEMoNZlPRyCKiUbo0hOzOrglP1zjpWlbsdwweO9c +9p9yHXaetbtrz+Vc7djpRuxPlBz2qSE5bNURJsG3OKngJPU/WtFqQ9C1Ow/h5Ap8BAA+lQMV45qe +M/L9BVaivoSBvm61OHIXrxVMDcanyqgUtwtoPXGcEdOc1Iq4JNMQg1JIOBtoQCkdCaReSaZuIxmh +WGaT1Gh3fNTfKQM1Ep6mlLdqGhjm6cUq7jzmmDc2aXlamyYyxxt96hYd6BIO/FOVgwzQrDYwAjoa +kQnOOPrUZLdu1TxjJyRTWiJYTEsMGosdu9W2TOMVXcFSaoksWzCtaPAArHtwe1a0AJUZ7VRnMc5A +quzdRVkpmoZAOlJsSM98MfagCMcZqVkHNQMBnjtUvY0Q6cgxkZrifEyqIWxXWzucH0rivFTPt4PU +UT2LgveOe01d0gz68V6boMfyg+wrzbSF/er3r0zQ3KhQfTiuJ61Tvq6Uzq4k4FTqBUEDgirKiupb +Hmsb3pc4xTgKYxxyaewiVcYpQKYjDFOBPFIB5A71GTTmaoi3IoYIdTW607Ipj81DKQ0nvT0OeaYA +T1qQAAUk7jYGm44pTSDPSmIKZ3qXjFM4yTR1ACcUxzxTmxUb8UPUaIWJGaj54qdtmMDr3qA1m/Mt +ASPTpUZYU7J2nNR4NQ9S0NcnBwOtRfdBFPbgd6jyOc1BY0kdaaSM4pxAzgCmZHSpe4yWAfMD71Je +E8CkgB3cUXI+cVsnaJhPVkOT0FW4VyBVNTyBV6PAAram9DmmtSSUqqEVyuuSkKw9e1dNOwKcVzGs +LuBI7VoviErWOOMTLJuI+Wuq8PsqsuK5+4nV8IvXOK2tCLblzmupdjnq7Ho9k2VWtNKyNPPyr9K1 +46mQ4bEopwpop1QaC0UUtAwpaSigAoopaAEopaSgAooooAWiikoAKKKKACiiigAooowDwaBBRRRQ +AUUtJQAcUUUUAJRRS0DEooooAKKKKAEob7j/AO6aKH/1bn0UmmtxMvr1rnfHPGnQ/wDXYfyNdEtc +945ONNh/67j+Ron8LKpfGjzRwcn1qBuD+NWWzmoDnf6V5TPWQAEYJqUAkDpg1Hg5wMmngHpSuBG5 +KggDrTVxgk9eKlZSRmmY5z7dKqKERNuPQ1C2AalfOSQKaM/hTt0EQMDnihUwKeRlj605QSKaYMjO +P/rUhPPpUjbe/rUe0kkDk1UdBMRSOT3zT+Dn36VERjgDPNPXtgZxTe4DWDDmoGAA7Zq0Pmye/eoJ +FwTxn1pLXUCDIU5P1qNn3Hg1Iz9hUDblJNC2AfyAc80w7x079KVHyORzTlIxn06U0IxdVye1ZABF +a+sEZPrmsgE8muqOxl1J7bO4fWteZ8Qc+lZFs2HHUCta4+aDPTHas5O0y0/dMKY5YntRB94fWmyn +5jTrf74+orZ/CZxd6iPQfC8bCP8ArUHiUnOK0fCsf+j5qj4oGGOOlcVH4JM6J/xbGLpY/eDHFdfb +LlVJ9K5HTAd645rr7TlQR1HGK4q/xnU9i30AHrTWX1p57Zpj4/TpUJ9zKxCw5NNxnrT8k8UwEZxn +vW0XdEjvQD0603rnAGaU8UfzrWBDGkUYPf1zS7s8nnvSAFuTwewq2IlAGOeKTjnFHakUEE0NBccB +zk8cdKfxwB3poODn2p4wKUnoAADn3pNvXipFC5yKRvQDmmk7CuR4BwfU4xTjjAHSjI4Hp2peCOKp +MTRA3tUL5xk1ZfHP1qFl4p6XBFYhuTimjqM9KmfjJqEHcQfSpeox0gXjHpmq7DJ6dBVnrzUJT5sn +6iqiJlfcRx2pw2kc460yQ84HPNGducgc09gepG64ORkVG4P1z2p7tk4qCaTAIzWhJHLledpxgfrU +EhBQ9uKkLo4568Y+lRyKNjN09qcdyXsc5d4809KqHOcVZuuZGqqe9dSOWbLMCbvoOtNkyGNELMv6 +0khyTU9Sk9Aj+97ZrX084dcdzWMpwa19O5deO4rHEL3WdmDd3Y7yxcrbjvxWHqTAy8DpW3af8e4+ +lYF8xMpNedH4EdUF77Lej53/AI11qEBR9K5XSAGkB9O1dQpG0U6OsmRX3JAw5NSrJwKrhhnpUgIw +K6tDnLGR1pQwJxUOcjFKuARU2sHQs5bFNJOeaUN1pudx4607dSR2VI96bwMgGjpmm7hjGKYxQRTx +yOKh3YNSISalAwYHNHIp59aYSM802hIdg8Z7U4+1MU96cCOnpQkMM8dKYSAQe9PYE9KhbII+tN7C +RMzKPypqN1prYI96WP8AnVK72EKze9N3/wA6WTA7YqEEUS2GiyhpN3PpTVI/OjPIqWMmOSB6VGeM +ZpwPBNN6kfrQ32AnQ96UnnikUHFAJHFBIMeM0wdTUhwRUanmhgOOQORUTVK+SM1G2CMelMCHinDI +FCDmpCOMUPcbIHxkVK5Xyj64qMj5qdMp8liD2rSK1uQzz3Xm3XLY4Gay0zuHHXGava2W+1NnpzVF +DggCuep8TPRp/AjcsGCgY4qnqxycnqK0tLtWlG41n60myQjrWcE+W5N/fMCXNWbFiZV68VA6jB+t +W9PC+cpP96tZtcjL6no1gCLMdvlri9Yz9pfHqa7SzkT7J/wGuK1fBuJCvc0l/CRzU/4jE0ph5wz9 +K7a0J2Ke2K4zSEVplJrtYsKqqPSpptqTsOuXovX2p/QmiMLtFKSM11Ru1c43uNDn0pr5wSacSAMi +mEjHNO+gEYOSKbIyg+9OBUfhVaVuTzSAR2yfxobGMdqgaXByelIZWYfSloMJAOuazLqTqM1beRjk +Vn3GSTis5MpbmNeynn1zWDcMzNyMGtq/IXOevSslhuJPUUoWTua9CJVOMjitO0yeM8daoLyNua0L +Vdp/ClVehSNC2T98COah1hB29Ks2jrvz7VX1YjBPXvWMPiJZy0wAYjjrVbnNWJvvVXNepHY5Km4N +nH4UylNJVowY7qOtIR1oFLQPcQCl70AiigC3ZAb1J6ZrsNPfIXFcfakq2e3eup0p92PQYrhxJ34f +Y6m1J4NX9ucVQtCQAM5rSi54PNcKudLE2nkilw1TKp9OPWlKcVpZk3IlHSnqCOKdt6CpFUZ471SC +4iEjpUgOSc0qpzk07b+dUiWRMccZ/GqsoJOKumM80xISW57VTlrYS0QkEWAM1YBApThVz3qu8nFU +tjO7bLW/mkLDuapGcCka6XFCCzL+8DrQJBWYbxACC1MbUEX+IU72Wg+Vs2EYU8SDNYiaonQHt1pD +qqevNCsP2cjfMi9KPNXoe1c6NVBPXpThqXfNV5j9izoBKPWpUcHpXOrqDVbh1AAncCRiklqJ0mja +3il3L3rF+38fjmk/tNelXpcn2Ujb3pTWkXFYjamF5Jqu+qM3Q0rpAqMmbMkqVWeQZzWQ+oS9hUDa +iwOCai+poqLNwOvJNQl1Ofasf+0yoziozqqnNPRh7Jmyzr+FMZxishtVj5yelMOqRH+LHpRoLkZr +CQdKcHHQ1lpfwMT83zVYS5RvunNJrqFjQ3AinIc9Kqo4PerKc4odriHuueD6VBEdrkelXVjJ61Xa +AhuKzkVEsoQQO1NY8nmlRTtpHUgEmmtgtqV2HXFVJiR1q4/fHSqc2cHNJ3KRTk5OccUm1SMEVKFL +nmpPLCipkr6juUZo8dqw9S4jY9Dg10M/3Tjiue1Ujy2+hpR31Jexw0wzK31NaOmwZIbb0qtHbtNK +QOcmuhSGGyty78NiuytUslFHHGNm5Mo6hOsC4HUjAFYJZnOTU17cGeVjnjPAqFBzW1OCjEylJylY +lQVbgxuyenFRqYxHjHzZ61KhA9uOtZzdzdKyC5JcYHA9KznBzV6X7vFUyDzV09EZT1ITRSt1pK2O +dhS0lApgLzQMigUUhk8E7xsCDXUaZd7gvvxXIr1rT0668t1HSsqkepvTlfRnZ+aGI71YifYM9KzL +aQSheRV3jHPUYrNPqjWxeUk4zz3qZJOOKpQvkD2PFWVGT1q1LTUlqxZU45NDTBiBTCTtx2psf3sn +v0poRcUkY5p4kJODULEAcelMRgTzQItEg/Wk3AH2qM9cE9KOWNJu2w0WVIIJFOYE81CONvtUofg5 +/Cpae4x6kD6UrMGqHPFKGPHuaFYY4qtOXpUbHmpkKlfQ0coXE9xU0ecCoh19qmiPShAywM7feqkm +ATVw4wKrtHuJNUQOtmAHFa1u2FBrDjcRvg1qQO5xgcVS8yJFxjUE5wMj0qfCgZNQSYP0oaEiuFyM +nvUTqQasMwUGoHY9R3NR0NEylN0IPavPvFMjLIVzwTxXoE5LBq4PxNbgNuY96mT0Naa94z9DQM4z +3PWvStGg+7nngc151oo+dc4xmvTdE5Vf1rjjZ1Wdle6gdBCm3Bqz2NRoOAakOccV2pHmt3AH1oYA +0ynZxQIFGKkAoAp4UUtAYwpk5qFsbjVk8CoB941LGhpNIST1p5QdaaRzUssVelPxgU0Din0WEMOB +SE8084prdqOoCHO3io1Bx9aec4pAKNAQmaicg4p/OfemMpxmkykRNjnmmHIFKQRn601vmHFZNlob +1prnbyKNwU1HI4qW7ooSQgio2xSb1PA60hDDmoLQ0E0hwDikzUirkH3oW4PQmsyN5Wkvfv0tsu18 +mo79yH61svh1MJfFoV487/ar6sMc1QiPzYFWVbFaU3Y55kkrDy+a5vUJVBZSO1dDOf3Zx6Vyl/Ju +n2jrzWsb3CPws547RcE9Oa6HSQDIGGAM1i3FviTOOK19J3K6j3rpic9W9j0PTiCq/StiOsTTT8i5 +9K2Y6mQQ2JxT6YKdUmotLSCigBaOKKOKAFopKKAFpKWigAooooAKKKSgApaSigAooooAWikooELR +SUUALRSUUAFFFFABSUtFAxKWkooAKKKKAEpWPySe6EUlKThX/wB1qa3Ey8tc945/5B0P/XcfyNdC +ma5/xvzp0P8A13H8jRU+BlUvjR5s2eagPVj3yasyA5NVTu3e3pXkeh6yHjPftTwfXvSKOg+lOIOR +jpSS6jYmB1PamHnPannIBpn09KqJLIig5JqJixqzx3qJgFOcd6uNhEGMU9Qcj0NDEZwOtIOOOoNU +9QBx2pm3pUr8jjnJppRjmiPkJkbBQDnrTBnGR0p7R9MmjaMY6EZxTuw0Id2Ac0xmJz606fnkVVLN +k56U0uoXuLtOc/lTGX5cnvTxJntilYqVxk4p2uxFf5Vz/eo+bBPekddvI+lPRSwx/k03oCuzD1Vh +u561mAZBrT1kbXrMUHaCemcV0LYyT1JLcHfWhPMRGAfTpVG3xkd81YuSSuPbpUv4iuhmORk1LbYL +iopOtTWg+dR71pL4TOl/EPT/AAuMW4rN8U/fHNafhkgWp4rI8TNmQDrzXFR/hM6JL98ZmmAFxXWW +mdgz7Vyul5LAY5zXU2+4AD9a4aivNnXLRF4cjNV5Cefap+Rj0xUUmKleZkQg0mATS464peprboSJ +nlc96MDOKUClwOvpWsbNaEvcbxjB9KTdzTmIOfTtTFBPXpV9LEok6Ec9utCg0m3r7U4YxihbAOwc +07b680wcHA609i1JpXAXPJA/KjJNKMdqbnk5qhBgdTSqlICM1MMbeRS6j6EDkdKhbOc4qdup70zG +4HmrdyUQPtNVyvzA46VakXjIqDaW7njpStZARM/UevSkwSDTnQj+tR5wMZ5Ip26gROp3DHaoHYAk +VZbBGQe1U3DDmqWwhBj8RVO53nOB37VaCv8A1pjpg5681atYRSiVgehp027ymGOlWQoGcH8ahuiV +ibA6inHRilqjlbkjzG/WoOM1LOD5jdzUPeupHHJlyGMOvPpUEq7WIzmnwuyjI+lMkOSalXuW2rCK +Oa2NN++nOOax0PNbWlgGReM9KxxPwM7MFudxb8W34da5y9JDn34rp0XFsAT2rmb775B9a86Pwo6o +P3maGj43DHSuoGcVzGjZ3cD0rosHpTo7smtuTZOB/OgHt2qMGlVupro2MCwGwMUA85PeoQxJqZRm +k2BMG4p65/Wo4+uKlJxxVq9iGI+6oxntzUm4kUmdq4FFhIaQR+dSRkc00MDnNKpHQUkxsUvjIppw +3P50wqS1SDPIFMLDgPQ9qQjH50CkLYNLoBN/DmoiB1pdxI9KbnGatWtYnW45hx+FJHkHFNyTTlJ5 +96aVgYP8xqPaaexPSlB4B96HsNAowvPWnKR1NMY4qMPyQagZYJ4pFDE9aZnjipIetICUbgMUoPel +OKF707EgelMC4JNPbBxUbcHFN6ISHHkfSmN0p27oKRulJDIcGp8HH4VCpOcVL71QPYhKndmluARE +xHpUgHJNMu2CwsR6VcSWeaa1zdsD61SiUbxzV3WSWuXPvVS3BLrXNJ7nox+BHX6OhWHPtWFrZBuC +TXS6YrLb8jsRXL643785HeiC/dmMHeoYcpBq5p4zIv1FUmC9fwrQ0zDTJjkg96dTSB09Tv7ZQLT2 +xXGamVa4YZ5BNd0seLPP+zXB6gD58hJ7ml/y7Ry0vjZa0XHnZ7iuygAJU/pXH6Mv7wH6DNdhbhvl +9aKaTFWepoj5Rx6VHk7s04ElSKb2rov2OWwyTBIHpSH7tKVPXvUZbsBTAjYnd14qu4Ltj1qZz1Jq +FWJOfSkAktvhNw7daqnheOvpVma4BUr6VQeQAmlJ9hoieQgk9qoz3O3JzUs8pb24rGvZ+SmKybNF +Eo3s3msR71XAXnPcVMEyRnrTGQgj1pp9DSwyNSCPetKGPA9c1UiTcyjqRWkBhcDg1lUlqO2hLbgK +cg8dqramSQQT+NXrdMKM1V1RPl6dqlP3iWctMuCT71Wbmr1woGapsMV6UHoclRakXFJS0lbHOxRS +0gp+KTGkM4oFKQc4pP8AGgRZt2wfpW/os+1yM+1c5GcAmr+lXHlTr/tEVzV4Xi7HXQlZpHpFo4Kg +jmtSEZx61hWMuVUitu3OQOa86J2suL0xT8GkXoKmUA4rSz2IuQHIpyVMyD86QL7U7dAuOQZ56VKs +femKKsJnFXZEt2G7KbsxkVY25FNKEA0NE3KMgOcCqN15iBiB0rUK/NQ9usi4IpLyGrJnKzXUoJ4P +0rNuNRuIxwCc11F1YBQSBWNPaxZYFetVc6Icr6GB/aF27Y5HarnlXpCtngimXcCRDeg+YVq6ZeW0 +sQWQAEcUlCUmTUn7PVIqw292QD7VY+wXLAEHtW1bJbzKQnOKv2tqpBDUODRP1jQ5mDTZicE4NaUe +jtgEk1sizVZM44q+lurKKSj3FLE9jAi0sbsd6vRaYo7ZrQS32PWhHGMdKtIynXZj/wBmwFeVwaoP +piBz9a6vylINUprUbs1fLoTCu7mI2iRzAdcipY9CiRQD2rfghVF5FOZRScL6ideWyZy11pC4O3tW +Z/ZRZu5rsp0BGKrx2qrlu5qWi4V2lqcnNpDhM46dqzZNO65J6V3NxECrAVh3MJRGJqVFmkK7Zxd5 +bSx5KtwKxriadSeT9K6e6QtuANc1qSMJAAOKqKuzV1VaxXivLwnCscVs6fe3YIVs1R0yBWbnr1Nb +0NvGSMjBolJ3sjVJW1NK0uyxGfat22LMKyLGyUsGAzXRW8W0AelRdnPUUUTRKCMU2SIFs4qZFpzL +mhroZLRkPlYqKVeR6VaP0qCUnFOyRSZRl46dBVKbmrs+cHFU3Qk0maIZCoJzUzDg06GIjmll6etJ +JkNmXdAAcVy+rsSjD1rpryQqK5i/cMx5yPQ01uDehQsLRY1M0nGOaztU1Brhiqn5BxUl9qRIMaHA +9qxWJJNdlOnrzM4JzEqaMVEoyRVnCqBitpMmC1uOUAnB4qdccdagFPXOc9hWMjoLEmDltoAdicDt +mqUvU1eBLAccdKrXCkH2NKD1JktNCiw5ptSOuOajrpRyyVmFFFFMQUtJmlpDCnxtgg1HTgcUmhxd +mdHpV7yAT0roo3DAcjnvXB2szRup966uwuRMFz2rnkuVnUnzI2QBtBFTxv69KrBnxjPFOWTaVz0p +pgXmcYH16U+POMkdKpGfcQKuxbtufzqupLQ9juIx0p0aBSSetR5z+FO3nJFMRJkHP40oIQ5qI5U5 +qUKNuaHYaHqxJ4HFObf1qFcjpVncCtTuh7MYnzZ5qUEKCarZ2njvUrMdv40WGP8AvEGpM46dahRu +5qQuOKYibGealQYNRoeOlP5yKEu5LZPtJ4pdp5pYSDwalyuDTsK5QdQXBxzWxZoNuDWX96YADjPN +bkKhUBHWlEUxHQ1A/YVO241AQSelUyEyrKGPtzUDK2KtSfLzVWVznAqTSJEwBBDelcP4pZAPfOBX +bvkL79a4TxWy5Hrmon8JtSfvmfpH3lx616boIO0GvNtHC7lxXpmgg+WtcNPWqduJfuHRqegqXtUS +jipAeK7zyxCMmjnNPABppHNIY9acCajFSA0XEKckVDjBqbNR9zSY0JQcZpcUnFSxhTsUimlzQA09 +aRulLzmg0ARtwKTOBmhyelGCal7lEZPNIxGKG4Jqu8mMClokUlcU4NRyHANIZcZNN8xWHBzWTdy7 +FKaRlYcmm+cxOKmlVWYU0RKPesm2jVWECg/MvUU8DcPpTkTHPY9aiLNG3saLaai9BxX1pVJzRu3G +lAGc1aQm+5Mn3hiql8w3epqyBxkVn3G8yfStW/dMLaksBGOanOCOKpp1wTU2SF69KqnqYzEnkIjZ +c9q5a5P+khia6a42+Xk8VgzwGV9y1qrpiTVhhS3nI7EVZs7cLLxVL7LIpBzg5rX06Nkbnmt4zRjU +jodVph+VR7VtR9KxrHgCteNuBVPUmGxOB3zUlRA08GoNB9FNzS5oGLRRRQAtFJQCaAFooooAWkpa +SgBaKKKAEooooAKKOaKACiiigAopO+aWgAoopKYhaSgcUUhi0lFFAgooooGFFFJQAUj/AHW+hpaR +uh+hqluJ7GilYHjb/kGw/wDXcfyNb6dqwPG2P7Oh/wCu4/kaU/hZdL40ebydyP1qqeuavSAcAelV +XGPrXkbHqoEAxk1JjvTQOlO6ZPahAxrEHgUzB696k4ySe9MPH501HW4rjT6cCojg5HankHr27U3j +0HNaIkiK5IIo2jmnAGlwOSamyW47jQuOtOOOStKRkZFIG+lUtNRDHRgc1DIT2qeVwRx+VVST1qri +RWkYnPFRgDP9asOnHHeojG3OapPQLDRtzkc004z0yKdsIIHQelDAqRzwaOug9CJlG7p3qSPHPr1q +NmI4o34zge1K1nqHTQwtbIL5xWUPcVf1hj5mB0JrPHSuxWtocy3Zattu/nvip7zCKB3xUFrksKmv +VYKCfSs/tFyfu6GWxqzZYLr9RVZqtWi/Mv1rSfwk0E/aI9M8PZFr7YrH8RPmQgVs6CAtoO5rn/EG +TOee/auKkv3R0/8AL4ZpQBPH5100OfT2rnNJPIz3rpYR3H41wy+JnTMs9cZqJ+eg75pWyuDmkLZy +fSklrqZEYx+J6UpB5pOKXcelaLRAC4x0pSo6+/SlXnP50uDWtOxEtxpx6fhQjJ3FOJGM45qIHnPS +ttyCTHPFHfNIGwM9TSDJIxU6SY2PGep60rE8fShQDT9g4pN2BDee1BHUntTsYJpSuRQnpYGRqf8A +Jp4YDr3pmO1OIAppiAjP5UbMcYpM/MSegFKx757U+oitIeSB3qM5wQetTuqkZ+tQYPY9ap3sJMif +rzVc8nPpViQfL0qo2M81Qx3y8kVH5e7JOMUoPfOKNxB4oEM2jkDvTNm4/SpSQufWoi4GcHiiwEDI +M/Lx7U27jBhb6VIcBvaobyTbC3TGKqO9hS2OPn/1jj3qDAzVifl2PvUGcGutHJJW3LKqNlVm6n0q +wrEJgdxVdupoiKQR/erc0r/WqfcVhoOa2tMYCRfrWGJ+BnZgtztjM3k+wFc7duXk59a15J18nHTj +pWDPIC3PXJrginodsEtWbejEhuPzrowCQOa5jR5eQK6ISDAwcU6OjZlW1ZJyMYqRCce9RAg96mUD +HBra/UyDgkYqxHyMCocc8VPGoHepV2DHZwRT+SM96Y3FKOnFXcmw4HtSEDHPSm5GcUrHIp36CsOT +bSqAKizjFSD1/GlvsArHNCn/APXTSeMgU0MaLdwRJkY69KYWznFROxFAJxT6WCxYUkUmTSIcj+VN +ZjTS0F1HrjH40BucD1pqkkYpSCpzV9BEjMAMim5yQPSo2JxTAzDpUsaRI+e9NHJFIzEUg3GlfoMl +yc/rTlfBHakGMYpvcUkrjLoORTlIqNOAM0d+tUtTNj2NN70oPIpSuaTVxoQhetRtuxUjD8qYcdDR +awEaj+dSZyKYByae42AfjTAEBJqK/wCIW+lTREjjtVbVciFiPQ1Ue4ranm2pEfaX55zzUUBw49aW ++y1w2PU5psSneK5ZHppe6jtdOfNv+FctrmPPP1rcsJvKgxntXP6sxeZj65pxl7iRhCPvsyGxnH86 +1tFi3XEf1FZeAOtbegqTcR59aVZ2ganfugWzP+7XnGoE/aHyf4iK9LukP2Jh/s15je7hO+T/ABda +1kvdRy4f4ma+h4Zh/KuztwMDoK5DQI8tkV2EOMAdDU0lqwr7lgZoIFJnApGIY8dq6dWcojCq7jrx +Ukm4Cq7MxPFOwEcpbaap7mHFW5W46ZqjISCMjvUO412Gyk7Saz5pRn5iatXFwEGD1xWTLJI7e1RK +ySLincjnuG+6KptCWJZuauJBlsnmpHjypx0xWDd2bXSMzyT94elMeNSwPerTFkyO1NCGQ59xU3aK +GQwEtnFXCgUj2pYo9nI61KoMkgGOnFRcTJYx0FVNWUhMAdRWkqYdap6wvy5PSqXxGZyVwuc5HWqU +i1qyqDnv1qjMveu+nIynG5RNGKcwweKSuk5GtRU608Zpo705Oallx7DGGCcU2pH96iqkRLRkgbAp +YJCkisOxqPPFIOtHLdDUrNM9G0e5Dwod3pXR2zEgVwfh264EbHkGu2tpOBjtXjyi4TPVUlKNzXj4 +A9KsoPXpVOKTgYq0ufWmSywoUik280Ju/OpKogjw2anTPFQMcHB5zU0XTIqkxu9iYc0p5FNUUv1q +jMhZPm9qlRcDmnBcjNLjHX0qUlcGyKWJWHFYt/aDJIFb/BBNVbiLeDxVNKxVObTOKubcZIbpTIrG +GRSqnDGtjULJ+SB61i/voGyCQRTi7PU65QVSOhbiN5pS5HzKea1tM1gTElwV9qxkvWnZY5uAOK3r +a2szGAuOa2bWyOKdJw+I01vInI+b6VowOrCsRdJDYZGINWUW8tyBjIqVuZOKtozVLruqwjDFY4ad +nDHpVyOfGA1NNXIknY0A1Nfaeapy3aRjOap3Gqhduzk5qtCVGTehsbgMUwsKzP7SUKpIPNKL+Njj +PWldD5JFqZ1AOah89NuM1napcyiFjGCTg4riJ9e1aGTyzxz3ovEuFKUldHoE0yY61galfQhSvWsf +7fqcsW4nNRxF5Pml59c1DnFbFxpNblGc3c8rCJTt55+tR3OmlowW+8K6a2a22YAAIrM1OaLIVecZ +zRfTU0hFylZIxbaExZ6ZrVtEMjj61SjV2bPY4rf0636E1i7npStCJsWMW1BxWkgAxVSAbBx0q0nN +VqefJ3ZOq8U7AxilA4zSZoRBCxP6VWduuasuO9VZBgE0JFoqTZJGKgCknpVhhk5FOCCptqW2CKAM +j0qvMQAasOSPpis+4frk8VT20IRkahIBu/HiuJ1i72swU4JNdNrNyIlb1xXAXcpmkZjWlCF5XMq8 ++WNiHcTyTSGjNFdxwk0QHU1IB3pqZAzT2+UelZPc6IrQQuAfxqdQNue1UWbn8a0LYB4ifSlNWQRl +dkitkflTZ1JXNPjXacGllPykDnArFPXQ1eqMuQYzUNWJgc81Xrrjsck9woooqiAooooAWiiikMcp +Irb0m5CNg96wxViCRkbIOKzmrm1N2O+ilDBcd+1WCF9K4611mSFlV+RXR22oQzrlT1rKz6mt0WkB +D/QnitNHwgB4rOjwTnirZf5cVUV3BlpNm0n1pCB2qGIkDjmnK2efpVMiw8vnPtUqPx0quzDNO3cc +UupRNlv61IuSKiDgkDPWrXyqo4piuRbXyCKdu4wO9Sbl2Gqu4bvahgWEXjmgD5qj83jFSJUgy0Dg +cUhkxgVEHNLvBOTWi2JZaikb+lI87K2PyquHIOfyp4G4AnmlqLS5r6Xp7XAMxPGeK1mgeJeelY+m +6i1uPLBG0Gtdr8SoRjrQlYmT1IVdc4qN9gJqFzsbIqC4nyhweaZNiK4lG6q0kqiomZiSc1CzknHv +Uto1SLMmWXg5GOlcD4pG2VSfWu1eXYmAT0rhPE8geVB3zUVFoa0fjF0RcuvFem6OCEWvOtAT7rCv +SdFQGMZrgpfxGduKfumwhOMVIp7UqJTyneu485iimN96n9BTOM0EoeKdjmm+lPANIYpAqPBqXpUR +IosgQvGKQjIoHNL2qWMYuRS9aXFLjikgY3NIeacRjpSHAp6gRP3pvNK+M0dRUMtEZByc1A8Y61YK +momOciokikyhdREocGs63eYSda3WQMMVnSxpATxyayasbRd1YrySPvyKtQ5deeoNQwq0jHjjrVnG +wGlYG+g6PqRQ0an04piPjNG7JyKOgtRvCnFHBpD1OaQHac04sTJN3FU3RmkYip2dd4yacXi6A81t +bmVmYSdmVBFIr5NOlcxj0qaSeBFyWGaxr3UvM3JGuacVyEP3iW4u0dNo61BAhY4JqlBaXUx3Fsc5 +xWzBYMu0kntV87toLlSIDaq5yp571egtigXB5FWYrZVBGKmEQGMU02J22H200sXU5xV6HUcHBqiV +96ETpWiqWI5EbS6ghAqVb+E8ZrF5GKaevBp+0TQuU6EXcP8AeFP+1Rf3hXNZkz1pyl+m40+dBY6P +7VF/eFOFxGf4hXOZbu1IHlGfmNHOgszpvNT1pfNT1rmPOuBxuNKZ7nH3qfNELM6bzF9aPMX1rmDd +XfADU77TdgD5qTnFBZnTeYvrR5i+tcw19cgMeTtBOB1NPW8uSPvU+aIWZ0vmL60nmL61zn2y5/vU +03twTw2KOaIWZ03mL60nmL61zgu7js3Wo3urwnhqOZDszpvNT1o81fWuXF5cZ5JqaO7lx940cyFZ +nR+YvrR5i1z4upiSMmg3NwM4NHMgszod4o3rXP8A224AHNIL6fPWndBZnQ7xRvFc9/aFxnrxTv7Q +m7GlzILM3yw9aNwrA/tGf1o/tK471WgtTf3CjcK5/wDtS4A6Ui6rOTgjildDszodwoyKwjq0gPSm +HWmU8rQrBZnQZFGaxF1qM9aeurwnpTEbGaG5Vvoay/7Vh9akj1GF1l55EbH8qa3B7HQJWD41x/Z8 +P/XYfyNby1g+NMf2fAD/AM9h/I0qnwMul8aPPJQMVTbJbH4VdbAyaqvjrjmvJaurHqocucY7U72p +q7yOfrSljgCle6AYV6EdaZj86kccCmYxj0q472JexG7HB9ugqMng5+tP2HOTTW4xzTAb7g0oz378 +0dM/lSYOM96LJ7gKTjkdM004PNIc4Gai+Y8dQKv1JCZsjjtUZyRx0FOfaD74pvzc8UX6jGZ55pOg +5p+wdR3NK68UbMOhGxHBPaoXwetSNwTt71H1DZouOxEydDTW+7lasMm7vnimiPjHsaakgtocnqSt +5hz61WMbBVJHDVo6tGBJjnjOTVaLAUK6hlByBXVzKxjGndslso8uOat38QCAd8c0WJj352hcdvrU +mpSKV7Csou8mW0lZGC6YOO9WLMEOB6mq7vVmy+Z1z61pP4ApW9poek6KcWi59K5vX2JnOD3ro9JU +/Y8+3FcrrW77QR6muai/3Jf/AC+LmkruwSO1dHCTXPaSeMd+K6KIgivPk/fZ0zJjUT9eelTcd6jd +Q3t3ppmViPavapMce2BUa7snnvUpOOfWqXcYi9P60Clwx6+lJt9elaQdkRIaSM4PU03aT1p/vRtH +HNbrVakMMdhzShf60KM4qZQeKQxqjb2608cD6Up4pBnnHeovqDGENnnjHNK2aUg5BpSVI5qgIiDm +n4A5pRxwOaa3rT3JEypJJ9DiomODjsKkwOKRlIBFHTQGQFu36UHBOPyoYd6jyR6Vpq9RaDHTINVX +Q4/PNWXB7d6iw3HHvQtNgIFTg56c0wrtYDOelTnfgnio8Ek8U0u4NleTcenQ0gVvvZ4qYqRmmEAD +GOtOSEiIZyRkVW1BQISf51aCbTk1S1KQiEjtThvYJbXOXkwWPpmoCvzVKTyfrTVBZgO+a6Voc89S +dYmKbjVNwQa6SG3Att23oKxJ4T5jH3NEZaXJcJPYrx5zWpZEhwaoKmGrQtFJYAdyKzrNWOnDRaNp +rghMZyDWXNLyR69K0JLeRY8gHGKxpiQxFctON2dbdkb2kuwII5rpI2ZgM1zOjuBjNdTAUbBPapUd +WZyepOD3qaNjmnRxe2QRUnl4xgYosSx+OlSLTF9DUq8nAqkSxT1/Ckzt/KnNx0puBj8aFqSJ9etI +xA96VuOaZuJ46VS03AcrCnkg9aiBxQzHIot1ES5GKaF700N+dJv9elPzHYGPJpVNMLDNKDg5NOwE +oIFKwUr9aj35I/GnA5p9BWJUC/iKHApEO3qKSRj27VS1JZGwGOuaTHSk3jJHSmnk8VL7jQ5sUqcZ +J5pMfLQuallIl3cc0gODTM8076UdALak4GKApyCajhY4welTZBpkMcOfypWOOtN3BRTd2TzQBIRl +aifJBzT9wApjcnnvQCALinsMjmmK4GKfkHp3osDBF5qpqpHkt9KuJxkelZ+sPiFvpVJ6aCWrPN7v +JuHPvUkCBnUmmXWPtEvOfnOMVJbFmdAK5JHp/ZR0McREOQMVzl+T5rfWu0ghY224jotcXqWfPkz6 +mnGNkmzKm7yZmM53etb/AIdwbmPNc8wJbj/9ddF4eG24Q9eRTrW5C3sz0C+OLFiOu2vMLol53GO9 +el6ix+wt2+WvNmH79x1y1dFS3Ijjw2jbOh0GPaob1FdVDGSAa53Rl2IvHNdNGcLWdJCrPUHGKEx2 +prt60zzMDFdGxgSSbdp9aqFc5NSM/aoxIACPWna4tipNuBNUZCTk571ZuHJJFVdpbj1rKXkXEoTq +WI96iKKDgdatzRFR6n1qspAJBFZtdzRMULsBPrTMkgg1KRuXgUyTCAjoT1qGrDKckY3HiliXYOnt +TxnnIxTkQsuazbLRKkeVBzU8EY7jkmnRRAhRVpUAXIHSo3JbIvlEgXvVDW/uDFXx80uaztcPHB/C +tIrUlbnPBQ/OKguo2UcdKtRkliPaprmAvED19a2UrSBq6ObkHOaYBzVqSLDEdqh28+1dqloczjqN +IIFOjH/6qWRSOPpUkAGQOvtQ3oCWpHIB+lVyOtXZY8A9qqGnB3RNRDCTSUppK0MWaGl3bQTICx25 +r0bTblWVTnORxXlSsVIIrsfDmoBgEc8iuLFU/tI7cNU05WegW7LjPeriEk89aybSUFQcjmtKNs4r +lR0F1COlS9cYqqhPNWYyaZLHGMY9zT0XAwKBz9KkXHeqW4m9B6ilx60oz2p4Ap69CLjOKTjmpMYp +pX0oaC4zmmuARTuc/SmE8UIbKFzHvzntWFd2p3EiundciqVzAGBwKb1RtSqWOTZCrHjpU0N3NDgK +eBV64tGyeKpNAy9Bikro7LxktTotO1qEqBIcEVoG/gkIwwNceIQBx1NKgnU5ViB2FVztI5pYWDd0 +dokiMKXCMQa5eG9ukIBNX49TZQNw5NPcxlh5LY3fJRgMjIprW0AIIUVnx6onGTU66hC/Vqehk6U0 +y6sMOBlRUTW0OchRTRewgfe7VH9uh5+YUJLsTySJnijK4I4rm9c0y3kKsFGa2ZNRgAOGHFZV3qMT +N64pNJmlOnO90QW1tHHbhXHaoRFbqSTgCmzahvG1B1rPfzGbk+9TZHTGhJ6sddSqrbYTjtVEIWJL +ZPrU2wjIA61PDCH25oasdUYqCG2kQZhxxW/bRhAKgt7cIORzV6PHfmixy1alywrDgCrkIB5qjHkk +Vfg7UbmD0RYwccUwjI5qUUxs09iEQSY7+lV5QD7VZeq0hoaLRDsBzQFVRTge1RyOMYoQEUz4BrFv +JgAQTjitC4kAB5z1rmNWvUjV8ntRa4zndeveditk5Ncwx5NWb2cyysc5GaqmuylDlicVafMxKUda +SnoCTWrMoq7LCAgZpJCcGnAkAjrUEjZrJas3loiPNW7KXacE9ap0+N9rA1co3VjGMrO5rvkfN0pc +ggEjmlB82IN+dLCQ2Rj6Vxs6kUJlwSCPxqk3BNadyM81nyda6abujGoiOiilrUwEooopgLTqQbce ++adipZaQDjsDkY+lOWm805R396TLW4jk9RUkF3PCwKMRjtTGXiouRQrMmV0zs9I1lJsJKQrDvW28 +ykcdK80jleNgVOK6XStUM22KQ89qlqxcZXOuhfIp/IyQeKhsyGU4qb7ox1peZbGq2W/nU43Bah27 +jmpQwxtpDYiN82T2q+XRkGDVEKQ2fzqZvlGRxVIloV3IBqBc55oLZAzTGfGO1S0xlpCM47VOrY5q +nCxJBPUmrJZegpoG7EuARmmhxyM/SgHGahcjmqt2J0JvMyQM1IZCoGOlZ/nbWAz78VL54PfNMkvW +7/Pye9bUEgIGPSuYE6jp1q9ZXbEgU7XJkzclb5TWTcyhRx1q3JcDZis+Z15JqdiolSS4KA+hqv8A +aAxLZJxVK/uACVB7Gs/7ZsGM4NK2pfS5sT3uFb5ulcZrNwZJ1HccVpyXcZVizdK5qZi055zhuKia +0NaPxnWaCSQv8q9K0YERivOdAX7v4V6XpeAi8V51C7qM68Xsa6U45NMHtThnINdyPOFCio2BzxU3 +NNxzQ0JCID3qWkXFONACGq75B/Gp2bANRYzyaUioirjGaDQKCDUXGLTs8elM5pTzTTuIOtNOMUuK +OlFwICMn3pxWg8tmlLCoKI2xyKruB2qw+DUWzPNDKRDnn6VDKqydanaPrUTLWckaJlGa7t7MfMwH +NPiuI7hcqcg1heIbO5nUeVnINWtFjkhtMN1FTzRsU46XNQRsMjtTo0XJOe1JE7FdxpYtxY471PkD +2GMuSTTSr1ZVPm5odQDgVdrakcxi3Tyo/XFMeRiv3u3arOoxlh8o5qfTdO3KPMHWmr7ImVt2ZHly +vwSTU0dkpGSOa6j+zbcDhaPskI/hq+WXUjmXQwYYWjIABq8gGPetIW0Qx8vFO+zx9QKIRkiG0ykq +HOaeAvcfjV9YVApTAh7VtZkaFDGRSquBV0W6+lJ9nWk0wKgBJpDHV4QAUvkiizDQzyhPIpu1hitP +yV7CkFuvU0rOwaGfsJpdjHvWh9nX0o+zinqg0M/YQKNrEc1omCk+z80dAM7a3akO7PStL7MKT7MK +NmFjPwaACKv/AGUUv2XrS1sBn4J7UhUY6Vf+zEdqPs5pgUgOKUgdcVc+z+1Kbf0ouFigVz2pFG2r +3kEHpSeR7UAVRwc04kdOasNb9wKTyD1Io2Arc84pGC8kVb8gZ4pv2fkmlfQLFUqMZpABVpoOMU3y +iBTukBXxikxVnySaQQjmquFivjmm7R2qy0Jpvk4FHMKxXxngVE0LFw2fl6Yq4IsH60pjRetLcZSM +I7UCJQathFboaRogKdw1KxU9KeowjkdxtP41IYjS+Vw3+6T+Qqk7WEzukrB8bf8AIPgP/TYfyNby +9qwfGuf7Oh/67j+RrWp8DCl8aPO5TnpVeppB1NQ4yc15LfY9VDxmgqD1puSOKUFuelCVgeo08kCo +2JHXmnNn60wNnqMYqknckCGbnoKYcZ/CnjJ+lNbG44FVqAxVIyTUiqDkUYJ6Cn9AOOahvXQdiIqB +xzUbqAuamJJBFRkVotiepWJJPT86UKc59amKjgkUmV6ULXQaIjxlQKjOTnPrVsRnkevrUMic8dDR +awmyAhlyR3pvl5LHjFSBPU8+9OMZCk0NjK7hUWovMHIB5qK6cjI+tQRnK5qkhbmZqjDzMNyapb8L +z0qbUSDIcetVGYbOa3tcFLRktvMd/wCNPvZQV681ShJ3dqLktxWqirnG5sgZs8Gr+nA+Yn1FZnU1 +raWP3iH3FKtpBmmFd6h6dpoC2Sj/AGa4zWv+Ptsdc12Vm7fY+P7tcTq5Ju29c9a5aL/co3V/as0t +IHTNdJCAMEDrXPaOvA9a6OHoO1ee92zqmSmonOAalJPA/OoWGSRSizMjjI5H51KFJGTTUSpxjGDV +2sFxuOM+lMHcd+1Sk5FRr3rWnYhjMkfeFIQc5pzEdaAOfrWrEPXuTUoGR6UxdpPA+pqQcUpAJwDi +k6Hp1pTj86XkCkrAIe1JtBp4U8ntTtp4ptCI++OhqNlOOOanKnr2ppBp7CIlAIzSN0p/QVG27NNa +DIXHPFNZT19KkY4wcUxsY9arpqSyE/r0xUTcGpiD0HpTCM54qkuoiI4waaqc8VIVwCMcUo6dKd7a +A0V5AFH0FQbsnFTyg/w/nUZVVGcetDd2CQmwevvWNrDbUweOtaQdi2B0BrF1lmYnP0pxtccrnPt3 +xU9lEZJVAGeaiKk1e0s7ZlHvW83aLsYxj72p1yWTJZgkZ+XpXJXS/vWHbPSu6ku4Vs8f7NcLfSxN +KShPfP1z2rNR91M2pS1dyqqndW5pUI8xNw4zWNETniui0qNiV9sCscRKyOimlZtG1qAt0tjtwPlr +hbhiX68Z4rstaGy3PsK4Z3Jc5PetKUOpzSqWRvaWDtBFdJYSneoJrC0NQ8eR1rWi/dzKfepcdLgp +3djq7cAgVOyLtqraNlAe9W+SDmslqimR7cZpc7aX5iTSHjrTsK4uQRzzUZb5qdjj3NR8g9KeqEPY +8Co+tO600Hkk1V9LgMYEfnQxH1pZMYGahDA8UK4D9+D+tJvOSKiLYz70oIIwOtD3GiT+dKDUW717 +CkLA4o9AJc4Oc1Ijk1AWXAqRGGOKa1EWQxx/KkLDBJ9KYWxjimb8mrWxAh65p/PrUZZQfpS7wakr +oSBhijcBnmoWfOaQE4ouFiR36VOpGwZ61TO78amiZskVAywjHHtTixpmOB2NBzVWsIlVt/6VJtPU +1DE1Sh88elMTHkdKRx+VAOcUuT3pCGccVJwPyqM9akXJxTW2ghygVm6znyWPsa0wcYGKytc4tnKn +sapK6BbnnE3EzH1Jq3p4UypkdxVGUkyvn1zWhpCF7hP94VyTWh6Teh3yIosjx/DXnGqkC4kGe/Wv +TZU8uxJHZK8s1Vz58jf7Vb8vuxOWhL3pFBWJaun8OZM6D0rkkLbuveuw8MBjMv51niFoaqV4s7HV +ty2bf7teeKc3B7c816LrJ22TH/ZrzuHLXJz6mtKukUc+Htqdbpu0KuOeK3Y8AVg6ccY7mtVpdq80 +6MUlczq7k0mGOc1CXGQM1XNwefrTPMyTWzMydyMZ7VHuXHFM8zIx2qOV1UdaT2GQzsAGIqp9oGQc +8Uy7n4IrImufLB571km+hokramncXSkcEcGqqyLJ09azlleXIFXLbKjkVOrdh2SVy6rADHtUb8sK +dGGbOKQjaxNRKPYEyNwQcCp4o8qOPSouprRtkyFyOMVnJK5V9CSODai8U9yI0NTLnJyOOgqldSMB +tpRtczlqMg5ct2rH12X5gBW3br8prmtaYeaep5rSKuwW5St8bueK11iDRYI4IrLtB8w3DvW9EFCL +Snfm0L6anLX1uY5GwOtUimGHrW/q1u2d4/OsuVN2CPxrphJ2VzNq7Kky4weOlFvncPrU1wo2Kfao +4Rk9ORWl7xJtqXZ4Pkzjkg1kuoBIrZlm3Q49Kx5yQ1OkZzepWPWkpTSV0HOFWrG5e3lVgSBnmqtA +pSSasxxk4u6PTtIv1nRSD1roopVIUfWvK9D1Q20gRydpIr0CyvFlCsD1ANeZOn7OVmejCamro6ON +uOe9WUIArNgkBxV5GoWo2Wk5qXiqyt17VIpPWnsSWozUtVlNSg0EsmwDTcUKc0GqZJEwqNgKlNMb +nOahosjOMVFgc1J6UhAxTQyvJbq4PFZ8to3p71tIBjmholb6Ve5UajTMAW3rTxZIRmtdrYdQKb9n +Iprsa+1MlrHAyBzTPs7g8g1srHIBgioyvOCvFWooaqsyDE3UimbX7ZrYaJW6jGe9RNboDU8tilUR +nDzD0JprJIx78VqLbIM8UpjjH4U+W4e0XQxTG/oaaYdxPB4/Wtlli5xVaRTn5V4qWtdClMx2iIb8 +KaYyTz68VpeQzHB71ItkwPIqC/aJGVHbEseK0oLTZj86tR2wQ5NOJGcCq5TCdVvRDVXnFPGR9KeF +JGcUoQ96TMiWI8iryYGKpqMGrUWTSWrIkWhjjFMc4p61FIQMgc0yERvyKruwyBT2c1BIQcUkWNY1 +UncduKfJJgH2rOurgKp+lUBVvZwAee3NcFr1/vby1b61uazqXloxDfhXDXErTSM7dSa0pQu7szqz +srEJySaXtTacBmuw4kAUmpkGO1EajJyM5BFOY7B71DdzWKtqNdscVCx5oJJNNNUlYiUrgRjHuKBR +RVEGpYyhlKevSpwHjbjpWXbOUcEHvWzlZUz7VyVI8rOmDuirKhP1rOlBDHNapwfYiqNyBn261VKW +o6iuipRj9afjmgit7mFhmKOaftOKMUXDlEANOApVFSbeals0jHQZjNC9cVIVP9aFU5PFK5fLqAXJ +APtTZfulNijkHd34zxUqrg04xFxlRnFTzWY3DmRTMTBBIOV6MfQ+lPtvP8weUpZ+wUcmpV8y3YkA +FSMMrdGHoaie4fDLGBHGScqvce56mtL3Rg04s7bSb4bdk8iLKONoOT+mR+tbUbEkdxXmdncNBIrA +4Ga73Sr+G4jU5zx0qHpoarXU1eN2KG6YFIDuJPapAu4jjvS0sPYcgI6/hTHz1qyY8jP503ZxTB7l +IyEdfemfKeTUkqAE56dRUUhXaaL9RieeQw5wBVhLhcAk5FU0iM3KjpU32W4xwvFCkluJxbJpbwYG +Kz7vUSi5FWZLS4KfdNZN1bXK5BUjFPmtsJRKz6xKWyMYxVmDVC4wc5BrGuV2n7uKtWoRlyRyapSI +aNZ9RCY56Cp7XV8HJPGaxJYw5JHOKkhX5cUKXUTidX/aqMn3h0rMudY25w3GKyHiuMEpms2ZblWY +v1FS3qVFWReudR3kk8ck1Qnuw+D2qo5bPPJ7VDJLtBHagq9iSadwCCaggbc4J65qvLKzd6ns8F14 +x60pq0S6D/eI73w8D8p6DivSdMA2A9a830HjYBXpOlf6tTXm4Ze8zsxjNVadjpTR2p+a7jzgpMZp +TmkU5NADsYpadikNADGAIpgBxT2waB0qRjRxQaKCRnFTYYUNS+mKQ0gEGKDSj0pD05p3sBGcZphp +205pD3qLFkXG403kE4NKxIJxTCc0rlWF3DBqFsGnYY00xtU3uVsMMEbqciq5ijhUgetW9kmMZqJ7 +feOalpAmQq6otLC2/Jxin+WkQwecUiSKQSOBSQ3sPQgk02bcOmaE+U5pJZAKu9zO2pSJJkw3rWxa +MABWQ5BbdirEF9GuF7inB2FU1NssKYWVqp/agVpvmk8itOZMy5S/lak47Vl+cwxVmO5AHNWtyWXO +BSZ55qH7QtL5qGqJuTbqUYqs0q+tKswHemBZ4pcVXFwlP89MdakCUDnFLgEYNQ+cKcJQehpjJ8dq +OBUQkGeaeHB70CHcUuBTNw5o3gUdAH4FLim7hxTtwoACBSYo3A0u4YpgIRQAKM0CkAlAxRkUZoGB +Ao20uc0o470WEAVec0zaKk+tJQA3YtIUWnUc0WAZ5YoMS1JQaLDuReUMYppjFTGopWCijlC40xLR +5Ip0Z3AGpMUWQXK5g46VC9mX71eo4NHKFyklsFpxt1zVrFJilypBcqfZ6f8AZxsc4/hI/OrHFKf9 +XL6bapLUTehvr1rC8aHGnQ+vnj+RrdXrWD43ONOh/wCu4/ka1n8DCn8aPO3B5IqJlHHNSnJPoDUT +EAEV5Sir3PVbGdM0oxjPc03kqQKFLAH1pPRggJA3CoznmnnJ5P40mMjJHFXHuJiLgDnrTGPH407I +zg+lNxuz2x2pvRAtxyFsipOc0iLxmnlRn61im7lSIirHGBzSFadg5pxBxgVqm1uSQOnYULEvT0qU +gACgKuM9KAGdsfrUT9eB0FTdc49c01kByM+9MVithieRSzEBenannap+Y1DKwKsAanW5VtDBvH+c +5zgUxXG3Az0pbxTvPHeqoJUA8gCujR7E7IzrwjzGxVWQ/LUlyV3nFQNkgV0RRhOVlYWHrmlnPr1o +h6jNNuWBPFadTmK/etbS+ZFHuKyO9bOkAmVBWeI/hs3wf8Q9Ns0Ish/u1xGqc3bD3rvLbC2YH+zX +BaqD9rfHdq5YRtRR0U3+9ZraT0HrXQxEcZ61zukhmUV0MIPHavPS1dzqqbljAIOaik4qbbSNGOvp +QlqZsiTqT+NSdvrTRgGnlT09a1a0JGNntUY4OKlA4NNYe1XBCZHuxknn0pVyTzQMZ5708cGr6iFX +16VIueh70g296emAKmfYaEYEjPcUID3pwbr7Uq8/XpUp2AUnH50Z70p70fKKtPWxID5hioyRzxTi +TzTCCeCad3sAhHBNRkAinNjOBTetHNfQLDCOlRFcZOKsN0qM+orS+mhJAEbkmkIBqYA8imsgApqV +hWIcc0xs84/Cp8DH6UFN3sRSjqNmayvu6U2YkKOMGtBocAn1rPuHGcZ71VwI4YurEZrJ1mIbTgY6 +1vRSJgdu1ZWs7GXPpT21Kjq7HLFeDntU9gCJQcd6Ycc5q7pSBp14/i4q5S91jmkmbF2zi1B6cfnX +JSsSxJ9a76/tU+yHPpXn85HmOB0BNaxXuo5VNaj4D8w+tdVorfMM9q5WAZPPtXQ2DlMHPaubEq52 +0fgLfiK4Pl7Qa4wjJGOa3NYnaQ8msYcmumD0ucU462Oo0GZYkwa241EsoYCuf0mNmAAB5Arq7G2Y +EVhOouWxpCm1K5r2fAFXeMVDBEQo4qwR7c1mlYtu5EODilIGM+1PH0700gmiyEMXOKjbOc1KOMgV +FLnsetNLQOo5QCKifg5qWNJWDFRnapY+wFRSAkAmqs7C6kLNnODUfINOIHNRZO48/hU3ZQ+TGaZy +enFOx0P+TURbGfrT3BEnb3qJmO705oLkVH8xPNT5DsWFK7QQetSq2CPSqW4rz6EVPHIW4qxWLRbK +8VGWAPBpm40yTINWrWI6is5ye2KVWySag3Ac0zzcHANS1qUWy/oKlVlwapNJ05xUkMgyOaTeoW0L +W0etPQgHrVdm6EGnxv3+lFgLm8Y60hYEVAHycU/tT30E0SxvzUuV5qkCRUqscfzpaLQRaVs45qQ5 +6VUVsd6lD5HvTW9xNEm4AgdKeh7CoGI5p0THNNbCaJ881j+IJMWz/Stg9KwfETj7Ow7YqkJbnnZI +8xifXFb2ghTcJ9etYJHzEZ+lbugFfPUDnBrkq6o9GT909Cu8CxP+7XkGrMPPlz13HFer6jLssmH+ +zXkWpuGnc47muu3wo46DtzFNOtdn4ROZwDkiuJTG6u28JDMqt7VliNEjSDvFnY+IXRbNuccV51bk +G4JH96u58TMxtCB6VwliP3zE+/WrraxSMqGiZ1+nsoAPc9atzTBQVrJs7hFyc8VYknR/untShaxE +73EkuQD1p6zggYNZ0mGbr3qWFxnBPNaaJitoWzMRniq885KkdRSzK22qTOBUybFGxFPvYZz3rNlX +J55q7cTbQT2NUZXDD5fx9qhXNCW2THOKsBjnB4Gar27sF4qxEwVgSMg9Qe9FtAb1LsLBVyO4okOS +ccVGSEPy/dK7lPtT48uMVlJ2Y13HQx7mAP51rKoQAY7c1Vtogo3nrVtTk56Vm9AbJCyqp7VlysXk +68VbuWKgnPrWdbtukJPOKFaxKV2aK4SFiB2rkdTJklbHrXTXk5WEjpxXLTOrFj7mtFpsEF1EhI+U +DrW5F/qgD2rm4JAJwK6iHa0II9KGtbBJlW/j8y3JHasJI1wwxXSPtMLoeuDXPqrJIwb1NXfQI6sq +TKQmCOh71BHuHFaE0QYP9aqxxgHNXGXuhJERY5Iz1qlcY3VbbCsc981UnzkVvDcwmtCCkxS4orYw +sNoOO1FJVEigkHNdRoOs7CsMhPoK5anqzKQQcEVnUpqaszSnUcGew2V0koUg5HFa8UnTBrzPw9rb +ArC5J4wK7m1ug6gjvXnuPI7M71LmV0b8Z4zU6lcCsyKY9KuJJxRcTRaVj3qRX7GoFf1pc0CLitxR +uyarq+eDUoYdqaYrDzjNMIpxOfrTc0MEN57CmFc/WpiPSm5pWsMYARShhSnJNG386pPsFh2RS/Lx +TOc4p6jitF5kNC7RjPWmGNc9OtS4pcHpTbDUrmEUzyl6Yq5im7eTRcabKnlc0jWwbHGKuYGc0YoQ +c7KX2ROTij7JF6c1c4FRscUcoc8iobdAc4phVQDVhjnPFVnBOce9S7FJt7kTEHkdaaEzk4qRY88m +pljqXuUQorcCpCuBmpNmBmopH4x71DAFyzVdT5RVaBMc1Y3AYFESZMezgdOuKrtJ15od+arSSCqf +dAkEkjDJFVnc9aHlHPt0qrNMvNK/QoZPcYBrA1O+EaMD+VWL26CKxJxXGalqDTuURvlz+dVFN7ib +sZ+pXLTueeKzGq5ICc1VIzmuyGisclTXUZT0XPFN2knirMYVBnviqkzOMdR2AgHTNV5w6uQwweDw +fWnyMTUBPWlFFTfQSiikrQyFopKWgBV4IrVs5QVwayhVm3J3D3rOoro0ps0SDkn1NU7rBGfersZI +ZScZBHXpVS5MTM2wHbuO3PXFYQ3OiWqKoFOEfanouciphH8y9uRWjkJR0KzIV600rV25jUAECoVj +3DJ7UKWlxcpGgqdE45zSxxEj8auR2+QePas5zSNYxKhj4FJt21otbcDr+HamyW4+X0rNVUXyFMIT +x7VbtYsjH41Klqe61NCmxvoaiVS6silGxDJaK4I28msS5t2hcg8V1ZUBjx0rK1O2BG4daqjUadmT +VgpLQwgDWppl+9q3B4z0rO2HPFPUMMV1y1OWCaPRNMv1uUHvWug5HcVxOiS5AwcEdq6y0uWJGeM1 +lFmso9TUA45qCQovepcfLn2qnKzsSB+daEWGXBRwR0rNlSZPunj0q5HbTu/zdBV06fuXpzUjWhhx +3skHJHAq4uu24XB9qWXTmIOe9ZN1prpwPxqtBOzNFvEcCHinwatZ3/ynAIzxXJ3dtKhxyOuKjtd8 +LA80aPcl6bHQahb28rFVxkVklPIz9amjllYkt1Iplx8+c80KNtUNyvoxiSFm9yauRAdc8Yqva2jO +AelaEdoFBBPIFXboZ3tqW7eOJ+lNls0d8FQQMVDCJIycc1ejlBXHeszX0MC/0lkJZRkc1z9zA8bY +I6V6CmyTKvxnvWFremKBvTkGhXWonrozjHHarVkRvXPrUM8bI2CMVPZrlh9QMU5/CVh1+9R6DoCZ +QHPTFejaXwgrzzw8o2p+HFejaehWNa83DaSZ2Ys0gTSjOaauacODmu7c88eaRetKelIKXUCSkNKC +KRqYhhAoOMUjU0tgVJQopmfmpA1A+9UtlIlHalxSrQetMkbSHml5pCeMihgMFRnvUgNMI5PvWbbs +aIiwM1E/GcVNioyvJqHsUhq1NtGM0yNQDjpUxx0ppaA2QbTk1FI23rU0r7RVaRxgcdaTsNEdxyhI +NV4EYD5vrVkjdjPSlO3tWbKW1iBj1x6VB8zEipZN65xUKt82D6VN3exdtBisA5VulKbQM29T1qK9 +KqMg8061uH2ZPTNbKKaszCV07osgeWMHmrNum4c1Q+0I5FaltjaDU01eViJ6LURoevFJsOeKsnmm +10a3MiIoeKCDjipiM0mMU9REe2l2Gn4GeaXrxT6iGbM04IR9Kk6UZGKErDuQlXHNOAYc5p+CaAMd +aWoxPn/OgM46VJxigCjUBod6DLJS4owDQ2Aomk/Cg3DimkHHFRZJODRdhYl+0v6U4XDjrTAoxzQA +KOZhZEv2hqPtJpm0HmkwKab2FZEhuqQ3eKiwDR8uKLsdkTpd+tSfalqpgdaOMGncVi39qSk+0rVP +jpTcj1xTvdCLwuVpftC+tUMjpRzmk2xmj9oT1pTcIB1rM3DNOAPrmi7AvmcdaqzXBkOwfnUbblUC +qjSSKScd6LsDWjkCKMmpRKprEFw2KkS5fvTuhWZrl1o3is0TH1pRI+KLgaO+jzBVBZH7mkMsgNF0 +OxohhildwI3z3U1m+c+ac9w3lv8A7pqo76iex2C1geNv+QdD/wBdx/I1vrWF40x/Z0P/AF3H8jWl +T4GFP40eeAcE+lVZODk81dJUBsVRn68V5kUepfUUdOKDwPU5pkZI70jEgUnoPcQZB6UpPH9abn3p +N2T6LTt2ExR3I5pqnDGlycDFN4HHSm9gW5ZTDfhTmPbrTY+BTm9ehrJMpjeM4zSkf40znPFSc4Pc +Ve4thvWk554p3Hem+ppbCYm3nJ+tBToaXI9ad2PrVWEUZh8xGeDURQkHvxmp5Qe9M6KRUv4rlrYw +7xdxG44xWRdSYBwTW3fjn6VhXS5zx2renvqRUdomTK2WJ5qPORj8akuJA21cYxUPJHFdq2OCUrsm +h5PFNnIyKRWPfpUcrEkcdqpIhyGDrW5pH+tjx681hjrW7ooJmQe9Y4n+Gzpwfxnp0S7bMY67a4HU +f+Ptu/PNegc/YR/u15/fY+0N7sawWlFHRS1qs3tGUFB+FbsKHNYukD5QRW9HzivPj1Z01NyUDIpr +4HHepOajlyaFuZsh/wA4qQc9elNHUCpB3rVbEjSDmo39KmfAANQtyMYzVRstBMiUfMfrxUgHOfwq +MErmnr82MmqsBIR7cZqTgYApBnvS9TnBoqOyCIp6gZpVGe9NIPc09MAcVmtWUw5ByeaRuKdwenpQ +cYq0iSPdzyKXkg0zBJ+lGTg07oVhpznigbqOM4HNO7fWhWAjIJ6n6UwA4NSc5/GnBPSrTXQVhgXj +Pp0prKTn2qdhgY9qjIPBpPcCLaDTlQY5qTYKAGwab30DoVbkYB5rn7yUK9b12xAxXN6iQD+FWots +lysieO43Jx34rM1Utg5JqOK5KkjpVe9uVkwK1cdBUaibKB5ycdK09CTfcr9c1nou4HnH9KvaWsiz +gx+oqZWasa1fI63WpY0s2B9K81mYF2I9TXa6155tju7iuHfOSfeuvSysedFNXLNtiugs1dgCPTiu +ftsbhXa6FZedxiuDFOx6dD+Gc7qMBU1mxJuYD3rtdc0hkBI6Vz9vZ4lHFUqnJGzEoc75kdBoFgdo +Zvwrrre3UAfXmszR4gkS44raT5Kwh7yuxVHroTgBc457Uo5qHzD0p6yDpVtmdiUAYxUbL1+tSLz1 +pWGBxRfoIrhcZxUUiA9asHtUcgZulUNEK5GfemycL9KcBg0jDg04gymc5/Go3GCD1OamkJ6Zxzmo +iCTRZDJE5X9ahkUnkdc1LGCCAegp0yrihdguUyQB83Wk3dqVhzQODzzSKuNPA/WljbHWgtgYpvfJ +NCESszH1pQdwwc1CCM9eaeHHOcVabvYljHVQcZxUbAc0XEu1gT0xUPmg+5py0egIkJJHfFTIu3Gf +pVcSYIx0NW0wfSoauxkqjcADSqWGarrIQ2Pc1YUjqaE+gNEiFgc1LvY9KjTnj1pwBx6U1YTHZzxU +qggVEoIbNSkdu1N6sXQCvIqePJGf0qID1qYZA46YosJjC2MA05M8VG2Sealjx0qkJlgHIJFcz4kd +hCwz1rpEHFc54nAEVO+jFH4kcGcgnPrzmug8PjEykDNYoUMSffn3rofD0X70Y9q5JvQ75bHT6u+L +Ns/3a8q1DHms3ua9T1sqlmfda8rv2Uu3euvscdP4WyrEm5q7rwnHhxn04rh7cjNd74QBZsmsq+rS +ZpH+G2jZ8SuVtsY7VxcKfK79DXZ+JQ3kgdjXItuiQZ71VbojOgvdLFlFLJjmtJrdo1Bqpp8jAVYn +nlPApU0rXYTbvYhKlvlPrU8UBXk+lJCrHlgM5qxKwVSAea0jG71M5S6Iqz3A+7VAuMgd6WQkueai +LDr6UpscVZEV1gAY9arx8jmnSOHYgnjtTDhRwamw76aliMqRgCp8Kq/Nk89BVSFhn3q0MuAB1oej +ESRvkqDkKo2j881o2kak5PQVThgkbGRWgg2AKo5xg1zzepZaznAUcCpOQABxTYYsc0sjbck9qz3Y +noipdkt8tMtrfBzjr1ppcvJ9avxrsQsewrRITdkZGqyBBtArCdQAT054rT1KdGl557YrJvZAFx0p +7ysWtIlJP9f0711lsQIFzXKW3zv7giuntmHlL1xitJfERLYhmm2vjOM1nTACXtgmp7/5X3D1FQSf +Mit7UpDiSPErISD1rNI8ssc1qQYaLnHFZl6PLOB3pU9XYcynJjd61WnKnJqckNzzVeQcGuyG5zy2 +IKGFOCg0jnoMAYGPrWvUxasiOiiirMxKWiigCxaSGOVGU969B0q83RrzzjvXnUZ+YV2ekPujXp0F +cWJ0aZ24bWLR2MFxnGTWnFLnHWuahkZQMnvWpBMcDmudO+5s0bivmpM8Vnwz571aV802TYmV8Gpk +bmqpbPFKsmKNgLxPIpRjNQrJ0qRec4osIkB5p22mjNOFOwDSvNLgdqcc4qIsPyov0GiQKOKeEqJX +/WpN9aKwmmSY7YpMDNJvo3Zpk2Y/imjFJuoLYGRRcVgYA+1LgYpu7NIWouh2YjDqKibOKkLY5qIv +nPrQ2NIhIJ4ppQD8afuBJFO28iobLRHtp6r3p+3HWmPwDUARyk9KhCk9ae5yR3puRigCYMFFRySc +1G8mMDNVpJgMc1dkIkeZs81Cz9qi3nIqCWfBx7UXGOmmCjn0rHvL5Y880Xt7HEGLNjFcXqesmZmR +D04zTjHmZLkkT6pqhkLIrdQc1jjc3OODUO4kZPrVmMjZWtrLQzu2QynrjAwKqEDNXJsbc59aoseT +WlPYzmO3KCKC+6o6dnitLGdxGIJ4ppoNJVEMKSlopiCikpaACpI32kGo6UUmhp2NeA+avA5xzUEi +Hcc+tT6aQQRxTpoSJAB0rkvaTR1x1Q2CAMQamkhw3HQGrUFvhhjNW2teCp6kdqxdS7NuWyMmZAU/ +SktYcg4q3LGdmD1B6in2UXzYxnNNytESWpVWDDYx3q7HCwNWns8EEd6spBt5x2rCVRs1SRAsG4D1 +FP8AsoIIPUZq/FAcZ6cd6kSDn0NZiuZ4t128DpURtSpUnpnGa3Ps6gA9M0SWo25/HFMFIyHhyoOC +e9Z9xGXUj8K6BouCKzpYduR0rSOiuCdzlZbc7j9aPJxx75rUnt9rn6077OCoIGa39roQ4K5TsJGg +lBzgZ6V2VsVkjRxXIvbmNsmui0aclBGTnFPn10E1ob0UzhQG71ZVUxnrVVUyBzzVlMqBWsZN7mbS +voWI1j7DrT3yoGKIVyuTRMcqQK0W2hm9ynJICcVHKqsOnamE/Oc9jTnYgHvV2IkZN3Zxvnjms42C +Jg4z71tvyGPpWNd3hjYqKqyuTd2K80kKDaPvDiqZnVW3daglYs5bPBJoCBsjOKNEK99CYag6E7PS +htRuOOvvVRo8Hirf2U4UgcelO76C9SxDqcg4Iq7HqCAgsKzBblmGRg1K0DDjFLTqGxuw3FrK2Fcc +HFLfW7PEdpyuK5kmSNjtO05rVsdSYbYpCSpXFDUWtClKSOb1OzeNixWotOUGZQa6PV443jZvUDFY +Vh5YfBX594IbPb0rmq6RaOzDWc00eg6FHygxXoVkNsYz6Vwmgof3R+ld9aj92K4cItLmuLeti2tO +zTVBFLXcjhFzQo5pccUKKLgOHFJk0ppuKAGOTkU1wcU9qYxOKkaI+KfGBmmEmlQ4qepROKGPFNB7 +0uaokQEmgijPFAPFADe1NIqT3ppOBUSKRETUQBJqZgcUzFSWhFGDSyZCGnDOTQ4yCKSWgXKDScc0 +jOmFqeSLIxULQ9Aah6blqwwOM0uM800x84qTAXArNdimQyYP5VV2Hnsaty5FRdM0nuNbGZexv5Zx +SWp2w4zV268vyyT6VkQs+SP4c1pKVrENXRNAMynPc1uxP5a+orNt4RnfjtVtQcEetXShZXMKsrss +i9j5HelF3EejCsN42EjEMSM0xyUOQ1dSg2YNo6UTJgc0eavTNcs+pLCAGkxVGbxIsfSSq9kTzHce +cnPIpBIhPUVxNrrr3ByjcZ69q0EvnkxhsUpU3YakdR5qetMMyetZ9tvkAO6r6WZYDmk4OwKSJVkU +jFI8qoKljsT6086WG6mly2KuURdxk4zU/mgjIok0bkMn404afMB70KI2uwwzAU3zhjJqb7FP6VC9 +hddhxRy6gBmDYwaTdg5pBZXKj7pzT/styeq9KOQeoglxS+Zmj7JOP4aPs84/hNHJYQ4Sdqa8mOlK +IJf7po8iXuho5QsyLzCDzS+YcUGCTPKGgRS/3TRyhZjfMxTDMeRmntDJx8ppPs59D1p8g7MTzRTW +lB4zUnk8YwaaYDycUWE0M34AOaQzkDOaf9mbgc1FLbPjgGk0AqTMefrVlJCaqrbvtAp4jkHGaaih +alksCKhcZzQVfA70YfvSaC5Dsx0607BHahgwagtgdKLdQuOBAqVZAaqO+On5UxWkPPrTsIv7xnig +/McYxVVJGHapPNOQP1osMk5BGaWTmNx7GoGanhm2t7qRQk7iex3aVheM/wDkHw5/57D+RrdWsLxn +xp0X/XYfyNaz+Fjp/Gjz49cDpmqNzkHjirbk596ryqGHP0rzFvdnqFZGOBn3pxP3vanBVBI/WmlS +3elYdwXBNIVHbtSgYPpihgQcCmhMaP60hyTnrx/Kl5xim85JB+lPfQESo/IH0qZmwDnvVZMHmpSc +/lUW6lXEyo5p+75ah3fypVYYbJBqrEkit396cSSBUKNuJA+tOJPWluDH7ccmmMwGcU1pARzVeSXs +DirEEsozio+Ccmq7ygc98VGLkGk1oUiK+UDgc/WsG5U4J9STXQzjeufrWPcoFBzV03qE1danNyD5 +j9aDtC4qeRMueO5qORSK7UzilTaVxEUlc9qhkBz61YiXcD7CoZcbjVpmEkRr1FdBoP8Ar4/qK59e +orodB5uI+ucisMV/DZ1YP4j02TizAzj5a8/vRm6YccNXoEwYWYJ/u1wNyP8ASG5/iNYSVqSOjD/x +GdBpfCD8OK2o+2axtMXCDPatdeMVwwWhtUepcTG3moXyTTkdhikcnmrIGdKcPemA1JknrVdBDGwT +UbZ7ccVI2Kikx2pLfQHqMYDg+9Phxmm4JGadGOeeuetaLuIlYkf4UoPQ0cc+9B6cetVLbUSFJxS5 +44qP5jz2pwIHNZxRTJFHWmscGlJOPrSFfWq2WhI3Pp+NIMYyaaQRx60Djrz1obsxiDIJNPzkZppz +j8Kd1UChWENABx61IBjvTAdv1p55IoeuoAelMbtUjECozg80a7gAOcijHpSY7ij1PpVq6EU7oElg +K5/UrfarMehFdBO+0msfUd8qnFaU5WdzOaujl3kUEgdsCqckm5v0rRlsznIGT3rNuUMbAYxzXRdM +yhFxd2TRngY9K2dBKGXkZ5rCifPGBWpo8wSfDcdKy5dToqy901/ElwqwlQK4VuSa6/xBcRSx7Rye +2K4/Oa7JdDz4PSxbtPvL9RXpvhKLcgJHavNbIAuoxXqvhJQsQrzcR/Eij0o6USbxDCojPHauNhTE +nvmu28ROuw59K4+35mAznmssV8VjTDfAdNp/+qX27VfzxzVSyUCPmrDEgY9adJWiZz+IduGQDUi4 +HT1qopbOSc81chGeap2ETrmpB0wab90YFC9+eaV7Eht9KYy4qwBkVG4BqkxFNu5pDz3p8oHIpoBP +FVcZUkXnmo04PsauyqehqtswaOo+g0nnpSuMrz1pSh4pxXjmmtxGe4KkjtTec471NJGck1AQ24np +6VDvfQpCPnHUdelMJboKUq2c+tOVWz64qtQYxUIx6mnMo65xTC77uMVOcFTx2q0SynN8ynnmqwUg +8HgCrErHNQs2WYjgEnHtQxokwTj2qxE3aqyyDg+gqRWOc+9J7DJzw3FWEKlfpVIy9fXkU9JcDnrm +l1CxoQtz7VNjcapW8wJx+NXNwJHuKE7kvQeq45qZVY80JggenXipVUYOKokaijNSsAASKRV5yKfI +G2/Si+omViealRTximBcn6mrEaEU76XBjwMda5jxR/qjiur2ALzXIeJWbaVpv4WFPWSOQRtvNdH4 +c+eUY5rnCvHFdH4WISTFcbs7HdU2Z0PiKMCzb6V5LfMd5HvXq3iWUi0P0ryq7ILZru+0jih/DZHb +g7vSvRPB/wAp5rz22PzD616H4SyeTWFd+8jZL90zV8S48quLunOFA7V2HiF/l21xMzs0gB9a0rbm +WHWhs2DLtFXXVCfpUen2ylAcdRVx4Of0pU/h2JqfEQBQFyKpzyMcjtWsYsp+FZ08QGa26Ga3Midi +GJqu0mA2fwq3OgziqcsXUism9TVIhViCSf8A9dMLHPtSEsrdKj3k5/nVJEvUso3fOK0LYdCeuazI +ck8itm1QcMOgrOTSKWprQqiRk9zT4F3Md1VtxbbjpWhbooArmlLoNLQnAABPTNZ97JgYHrVuaVF4 +FZLyFnP16UJCWo+1Qu/NaNyyxRevFR2cIXn2qpqtwV+UU431uKSu7I5+5KvMT71SuyDVtlYszH86 +p3Idj9KuPxGjWhBaKfNGPWuijb92B2NYNptEwB6ZFdAgzHgelXJ+9chrQoXvIohAaMAjin3ETMMn +PWlgUBQMfSobTQ0RRcEoO/TNUNTQjk9a1HUo+ccVDfxB4t2OlKErSHJXRzy4HFNfFDblY+xxTgoI +4Hua7vM59yvgDP0qFqsS8VXNaRMp9htFFL1PHpWhiJRRS8Uh2HJ1rrdDYlAMelctGMmul0U7WHOM +4rkxWsTswysdTEpNWELIaZB8y5q15QIGB1riTOlksUh45q/DLkdaysMp4qxHI1aRZDNZXFGcEntV +RZTxz0qZWzintuSWEk5FXI5ARWZlgcjpViKXgCmD1NEHI/lTlOKro/v+FTA5ptEk3BqNlNOWn0Wu +NOxX24zThk08jrQFwKLW0KuKBTsUiipAoq0QxgBpxAp+KTijYREQKjapsVG645pMpMrszVFuPNSs +owwqHG2ovY0Qo9qmU9KjXtUnHSjUTFY8VCzde9OY9RUL465p2uSRuSP6VC0mM+tLLKvPrVCaYnPP +4UWYEsso5OagLkmoSxbmmvJtA/nRfWwyR5gv4VlX19FGpJbpSXl2EBOa4zWNRkk3KDxnFVCLkTN2 +VyLVtYluGZFPy5IrITcx55qLJJqaMY5rr5VFHKm5MkPbipkcAD1zzUfJp4jP07VDsbJDJGZ+BVcj +B5q66KikHrVB23HNVDUzqNCZpD0o+lLJ5e4bOm1fzxz+tamLY2koooJCiinbvk2bR1zu70wG0UUU +AFFFFAGhp8/ltg4rVjCySKfxrn4GIcfWup0tA+O+K4sQrO510XdF63t8spHercsGDnHarcEGMEdq +luouAe9cad3obyZzN1E0e4euKdZr8w5znk1NqalBknGajsMEe4rZ/CSmagjBAqwsSuPemW7qcqRV +iEgMVI61m4t6hzDo48DHWp1hGQaeiDII5p4wAeaqNNCcg8nkelOZAB0qRGTAzTZJB0q1TSI5zPmA +VjxxWdcGM5/PFX7qVACD1rndQlcfdOKSj0NIskkRW560qphRge1UbW6MjBG5atqCIlSD7VLg7lOR +QmhJ6jBHrU1irRsT0OelXnt8AZA5pkUQViKbTQlJM1I5dyj1qfzWwM1SiYpgflQ83HUYrogrozlu +bMNwpXAqU4YVzf2swHdnjNaNvqSOuAc1stjN3THzR/NnNQtknjmrvySqSDzjiqTbomJq43IkUbmY +xKwB+ornLicF+vIre1DLAle/WucuUYHp1q2QV3kKsc45/SmedhuOc9qc0LSLkDnpTPJcHBFJysCj +cvW6JL1Iq26tHyvIqjbh1K57mtcqTHnr3ouraBymRPeS5BUYOa0bK7WVcOvNVPLXfgrUinyy20Yx +0oUrsTjYS4VfMPemRFlck4AzzSmNid2c5p2xuhBzmk0axWhJfsWgyp4xWLYj96Mj+Kte5jdLZiT1 +FZenKWlAPc1zVn7rOrCL3z0nw7ghPbFd5bkKi1wnh7jyx2OK7q3A2D6VyYVe6XiviLIbNODc4pi4 +zUmBXYcY7PFC0cUCjqSP4pmaU1GTg0MYNTWpGbmkLCkMQ4GaYKSR+CAaZCdw5peRRaU8UmTmhelJ +im0SSDkc018AZ75Apw6UhFAB0GKaelKetIT2qGhoQjio+9PbjmmHPOKllocAM0pHFMFGT3pAGBTW +Cnmlzzio3qWxoiYAnPamntQWyetMO6oZaElFIUBWmy7uBTl3BcVK3H0M7UVZITWZZkMxB61s36h4 +iKzrSL5gffrSkryVkJv3TYgjURjtTZUIBqdANopZE3D8K74x0OJvUwbiVodxPTmue1LViBiM10ur +QDyX+hrzrUN8bsD1B4raD6MlpWuVr/UJ2HL5NZf2iXcGzkZGRzUku5yTTAm0jNU7sESrf3XmKd2A +OFUcAfSt3TtYuNyqSetc64Unj8a0NLjPmD27+lUpPYiaVrnpOlXksm3NdbasWVfeuM0VM7SR25rs +bMcCrkc8HqakeKsCq8fSrC1izpQ7FLtFFLUlCbRRsWnUtAyPy1o2L6VJSUAM2L6UeWvpT6WgRH5a ++go8tPSn0tAyPyk9BSeSg7CpaKLAReTH6UnkRf3RU1FAXIPs0X90UhtIf7oqxRRZBdlU2kOPu0hs +oT/DVuiiyC7KB0+LsMUw6cmeK0sUYpWsPmZm/wBnrSHTx1rTxSYosFzKbTgc1C+mMRgVt4FJiiwX +OfGjyZyTUn9l447VuYpNoosHMYR0xhzSHTXz0reKik2j0o5QuYX9nOetD2Egjf2U1u7RSSKPLf8A +3SKpLUTehprWL4wz/Zsf/XZf5GtpaxfGJxpqf9d1/kaJ/Cx0/jR50wBJ5qJx0BxUhIycU1xu6da8 +yWjPUK7qV6c1HknrVkhe/XpULq3X3pICHndikJGeeakIwRnvUUi4PHatFYVxwxt+nemZ4NPAJH6m +mHFJDFB7etBPB59abt5JPtikfJ9qURPUYZCPpTfNHQ9ahlLD6CqyyHuc1VlYpI00fjJOKcZOOlVE +cYB9s0SS9cUkkwe4+SXHSqk8vt3pskpB69e1V5Jh24JFUCQ13J6HIqt5gzn3pzye9VzgH+lNIZfj +nJwM8GmXaqUPYDNVQxUjBwtSyOShyeKEveFLYxHwXNV5QT+dTSnMhHvQYtwB/lXRezM7c0bIW3iy +CDVO7Qo+Ca3LO2bYCBxjisjUFYTMD1q6ck9TlqQsUl610Xh8E3CD3Fc+o5rpfDoxcxn3FZ4t/u2a +4Nas9HncC0AH92uDuiTcv9a7e8J+y/hXDSAGc59axqv92jfDr3mdFpmQo47VqoDkZ6Vm6cAFWtZR +zkVxwaszWe5MFHBxTHJwfrS7zjA/GmnGMinZMjYZ71Mo455zUK45qQHoBVbIBDgkjHSmOoxz2qTj +GPemtnGKUfMCLb2qVenpTacAcitkkSyRhhQKhJIzTnbjBP51XdjjFVZEosZyOaMgdKiRvlz+dIWP +rUJWdimTqQKGYHvxVcSZGKTdjIzVWugZMWHWmgjvioWfPT8aN68ClKK3BE+cj8KAegNQB8GlMg59 +6m1yh7HuKeH6VAXGBSqTg80+XW5JIZR0NJ5gJqEsOaYX71SXcLltWOPWgNmqSzDPWnrMM4puN0K+ +ol3wPrVNl3IR2FWZ2U1nzSFfl689KI9xWKv2YDORWFq8YznHtXUR4KknrXOa0w3EfrWsO4O1zFQ7 +T0ra0e286UZHvWTGu7pzXSaCCH45oqSsNw0K/iK3WNAQMVyWDnFegeIoo3gJPBxxXCMvJrr5tDgV +Mt2IO5fqK9R8L58ocdq8xsQdwxXqPhfAgB9BXn19asT0dqJD4mZsHFcxaMTKPY10Xidxgg1zdhu8 +wH0rPFLVmmGvyHY2TYQZ6VO0gqnahygA9KuCId6dPWJlLccmDirUeFquMDipEOOlU4k3Le7PFKCD +VfeR7VLG6nFS9ALCn2pSB+dRhjipUPHvVakEEkXtVcIyZrRbBWq7oOtA7kGOxHaqsi4bFXdhJ4qG +RCCD60DRDzik5qYJ/wDqprqaeoys6g7s1SkXg4rRdR3qlKnPFLzGiFfL6NkNnqKhlDrg5BXPB9am +ETknFAidSQeVPUGqurB1uVwrMQcdTirIXAwRUywA8oP+A96Xy221aTRF0zPeHHbvULRZwPrWjJED +ioDEeRQO5nCPaw7VN8uOOtTG3fI4p4tyecUmh3KYDHBxjmpGzg8YzVtLTvUjW/tkVNh8xXthxzVt +CdwzUaRsOgI5qZEbPQ1Qr6mhb46VdVV4FUYcqMmpDdxr1bGKauZstlVzSu0eOvase51i3iHLVj3X +iNMHacjNO1tydWdSJIgc5qQ3MI7ivPz4gn9ahbWrpsncak05Gz0Q3kOD8w6VyfiWeIjKnvWXb6nd +SnlvwrK126uCRubrWlk1YmK5ZXZGZV2HB5q/ol4IpRz1Ncx5z9MnmrVrLIrAjpnNZSo2R0OqpHaa +7f8Am2+0MDxXBXBJY+ma0rm7Zxy2ayZjkk1rTu3qZy5VCyJICAw+tdt4cvorYc8DFcRARkV0Fkyg +AjqKzr7pl07OnY6PWNQimXg1zrkmQEetNuZju5pqOjFcetRNtu44RUVY6zT5MRLnHQVokByKytPH +mRIBWoiFFO41tSvY5am5KqL90VBd2pwTjrT0mCsO/NWpJo2j5HNa2M07HH3iMrEVQYMv0NdFcQCR +y2OKz7uBQrY9Kx2ZtfQwJzyeOKg+brjmrskIO71BqNYzwMU2xWHW6s5HHWt63TCBQMcjNUbGEDJY +CrqhicD1rnm7u5fkX4VG7jtV4ABc4qtbR9AammkEacGsN5XG+yKV3IBkDuarwoC+PSmyuzHPWrun +wZG4896qUuwWsi5v8uD04rmr+Ys59c1u6hMFRlGBxXNPtZ600SJgru4g+5kjrVSccEirrqMAVBLF +lT+NQnqaPYz7cM0h+tbsQKx1lW8Q3/j3rV3Hy8dOK2bTM2NyHOG5z3pWCpx2qCOTaw+tLOTkD1Oa +XKuoa9CYDcMfjmo5oy0Tr7UyAlTg1Z2hunesW7MtbHLzx43evNQYK844rTvYWSQ44/rWdLnkY5rt +hK6MZKzIJW3EZqBselSuB+VRHmumJzzI6KUilCk1ZlYAOKB1p2MCm0iti3CnzAevXNa+mEibA7Gs +m3+YBfStKxBEn4iuWtszro7nc2bZA4xWii4x9Ky9POUB9q10GQK4LnQLszz7UwxkEnFWwuAKVo8n +itNiSopwasI46/lTTEw59aaMjgVSfcTXYtbjx+tAZhzUSnPWpa0tqRexNHMe5q9HKDjmskqRyKli +mKnBosI2FkFShqzo5weDU6y88UAXRjvQQKgWQGpBIGp2AkWnjFRhqXcKa1ESZpOvSkLcCmbxmmBJ +jApjAGl3A01mFDQEDjGTUPGc1O/NRHHSoaLTGZI7UbwBntSMwXjNV3k6iklqF7jjIGzg1BNJtHJp +rybRx1qlO5bPP4VSXUBtxNkkdarjnGadt67jzUbNtyc0n3AHfaKz7qc4IBp88pYYGaoSseh5NZyk +loWo31Mu+eQ7h9a5q84PNdFfuEViTzg1y9wTI/c1vQu3cyrPQgAyeKtRxtjOOgpbeAsMmp8YPpW0 +562M6cbaixRhuo4pZ3WMcfnUg+RCT+FZtxIXye1ZxXNIqbsiOSRnPNN2mljUk59KlfaBkHpmui9t +Ec9r6srtxim0p5oqzNiUUuKSgQUUUUwCiiigAAGDzjH60UUlADlJBrqNBcPge9ctW7oEpEyr61hi +I3ib0JWZ6BAg2KfYVLKpZenaktiWjH4USyADaTXHCKWjNZSfQxtTiV05HIrFsm2O6n1rfumWRGJy +a5yX93Lu6Ak1dhp9DcDhdrL3FXBKuFJ61ix3KtHjPTGKT7ZxzQ7JBZs6VZV25zUclyByayIL5Tlc +0y4uwOp7GhyEomkL07gKe12vODWB9px8wPsKFunbOSRUN3ZfIXLy6LnjntVGSVTnPPFMll9T171V +8wAH37ULcpKyJ4o081SvrXRRMu1WPXHNcupKupFaxu0WLlsYHStotXM6hoNdRkgE09GRuR+dc015 +8+d1atndKwHPbrSaRCubbgFQV9KzLrerqfU1ZFwpGAajkVJhj1pqyehpG9tTPnkLoR0Iz0qpBOye +oxxWm1ntBA9KoNbkNjBquYbXYuWmseW+1jxW3DcR3K8HJ7Vxc1u6vzng5NTWmoyWjKCeAa2jJMyn +HS6OnvIJNh49axJbUsw3D8a2F1WCVF3MMkUoEMw4OarVGa2MiCBFbBHrUlxbRnaRjOKvNZEH5ary +QyKTxmndWFyu+hmyKIzkgZrRs3hMR3emKqTW8hYk9KmitZ1j3YwCaLoHGRVmwjnGcGoWLsCSKvS2 +FwNrZyBSQ2xHB+oFQy0tClGSAM59q1LWEEBsVJ/ZqE7u3FaNvaLGuCMcUXDoYWtOvlFQoFYWmnEw ++tb2voEj+vSsHTQfNXHXNc9d3izswi1PS/D6khT2ruLcfKPpXHeHVyie1dpCCFFYYZe6TiX7xMOl +OHNMxUi11I5GBFKBSE0c0CFJ4qLvT84HNMJoGgZVqM4FSjpTGA60hlOQnJxRCakfGDimRrjBqS7l +kHimGTmlzxUQ+8c1XQlInElO3ZqEkYz6U5HBGfWkFiQk5App68UHFJnNDADSHmnPjim1mykKMUhp +3GKacUhjRyabIBilyM1HI/BpPYpblZjz7Um5ehNROxzSZ7Vjc1sSsV6/hSZHSoifWnKwzihLW4ns +QX27yjVW324B71avy2wAVWt1GcGq2mZyfumjADnNWs8461Xj4HFTICTk12rZHE9zM1nYsTE+leZa +rh5Hx2Jr0LxG5SFs15pcs7sx5xk1pB3Q7FE4U8mo2yxqRwP5Um316Gq2QhiLzj1rc0qAnBHrWMq5 +YdCK6bSRgKPp+FVHczq7HYaQmFXtg11Vr0Fc1pq8KR2rpbboK1kjCD1NKPtVharR9KsLWDOiJKKW +minUixaWkopALSUtJQAtJRRQAUUUUALRSUZpgLRSUtIAooopgFFFFIAooooAKKKSmAUUUUAFJS0U +gEoopKYC01/un6UuaRvun6U1uJ7GktYvjEf8S2P/AK7L/I1tL1rF8XnOmRk8fvl/kaU/hZdP40ed +7SDQwGDj8acOT/WmvjketeV1PUIe9MbB/CpDg9ulMYkcijyY0REcn0qJgMZNSHbn360wj1q0Jig9 +xzkVCcBs1IMAY6mo2OO3er8hIRmOeOlITkHtQGyeajkODgHrUxXYGRyKOeM8VRkRgcD8KvMe9QOw +bHpVIYgYhF7cYpkjrjAoOSKrzEjjHNEbAxskmMfrVPfyRxzxRJIcfhVfcSSfWqaQ0TElvrSKuRnN +Q7iDUqOMrkdamw0SIOxqZ4x5frgVH64HvU5ZhGSeOKafvaCl8JzMxxKQOmeKmhbLAd+KbcAGVjgd +TTrZcuMeuea3m9CaaaOs062jMGSO1ctrkYS5YCu001R9nyeuK5TX1H2hulKg1yXMaibm0YIHP410 +/htR56H3ArmgOa6nwwB56euRU4t/uy8NGzZ3moAC19PlrhTlrkgN/FXcaocWpH+zXERBRck9eazr +K0EzTD7s6rTowqKTWkq4HTrVGyyEX6VpIOO9cUHaJpPcTYRnsaYw+XH61Z7HPWq8gPTtmri0zNkI +61Kue1MxyMdc1KuB9K0nboCADrxTGYdKefSmYNSnroMZyM/pTlHr1IqQKpo28fStbNIkikXjmoGU +5xVh+QfaoSdxBNVbQQi8YobB5p2RSEgjHeiwERAHI7VCZRznk0+U8VSZjz7mktBltHprMc7h2qAS +fjinlzg4o3YCtMRjmjzgeAc45qtJzwT75qP5g2c0PyA0BICvpmoWmK8Z61X88BSD17VUmn54PNUk +FmzVSUMCd3QVFLOoHHPOKzop+W/nSSTg0KzBxLT3IG386QXWPx5rNaTJ68mmrKwxzVR7C5bG0Ji2 +Ofeq8/zYOcd6rQzljT2mJOPSlJdBxeogm2grmsHVX3sDW6IS3IrE1WIqSemadJu9mE1poZsLqprq +NAliDZJ6CuSAOcYrY0xpFzirqJaMmPM1Y0/E1yjrtQ1xz5DHPXPNbWrMxOCaxOM/jXRe5y2srGhY +DLr9RXp/hwOIBxjivM7AfMp969X8Ox/6OD7VwVda0TulpRMPxMzFtp9ax9MXMgGO9bXicfvOlZem +DEnpUYp6l0L8h1lqmEGKskdqitsbBxUrZ5HrVU9EYy3Im47UoIA5prtjpTDIe9VuIeX9etOjm5xV +J2O7rSq5U5PFSykjXWXipUl5rMjnHPNP88Hv0oTvoKxrCQHilcAjA/Gs+KfpVtJc9aem5DVhyxk8 +0xoyeasqQFzTCcnin0FcreXjmmbT+dWmUniosY5pJ6lXK7IcZqu0GTV4nqT0qm9wqNjjIptXBMb9 +mx2o+zk9uTT/ALQG6VY3LtBz2q4rsJsg+zgYPcUvlgAg4ye9Sh16mq006IfWtN0RfUGiTnOKj8mP +p+FVmu2btSpKSRnjFS3rZFJFj7OmeKckUZpiyqRnNJ5voapdxalgRR+lMki4psUjU7ecnnrRbUm5 +GIu9WEiXHvTA27ihZCCMdKOUbkwnDKpArmtRmugWxnFdU0isAPas+4tI5cjjmiUWtgi77nCXDXDk +7ievSonjGzOeevNdPcaPnOFrKvNOljH3TWd31NtOhgs5GSTQsxOB3qV7V+Rjj19qiWHa/wAw6VSa +E+ZGrZAgD6Vl6zPucDoRxWrDny+OuK5/Ug3mnNbQSMJOVykWGanimKrVY9aepq2rozUnckeU5zmo +WbNDZFIBk00khOTehLGwGK17G5CY3ViYxxVqNuBis5wUjSNRpWNC+uUc/L3p9tIrKmDnnGKypZOe +DwRVqy+Yr9aicFy3NITbO+0niIZrQklOOKztLz5SgZ6CtJojinT+EyqfEV0Zsk4qUuzYT1oVBuAx +zVxYYxg1TJTK/wBkZl/Cs28s5UBNdMqrgDtiq95GjrihR6BznA3KHcdvHvUaI27NdHJpwlc8UyTT +liHAFZNPVGqkrFCJdij61dt4iME0ixKxH1q9GoyMdqwnGy1KTuTRhY+ao3cu4kCrszhEx3rIkcsS +fQmsbaFLViKCzBe/etqELFECfSsywi3tvb1q5dzKiEDtTirsJvoZeoTmRyueKoJGN9Okk3uSe9Pj +HO71ok7spKyGPtVto71FJhSF7mpZQWk44x3qOZMspx3/ADoVmPUWGE7qlcDo3FSxqBgn0pJkypx6 +VpHYzk9TPk+V889akJEpX2NMk4BHseajgb5gCetDAkfCSY6A1bhKsAM4JqpMD5ymrcYCEYNTOOg4 +sq6nDg7hwa5uZjuIzyK6/UUEkQIz6VyVzHtc8VrhmthTWlysTnrULdan4BqN1JI/Ku6JyzRGBzUq +gAUqRnGe9A64obuKKsRt1ptSSKQc+9IqkkU76EtNsu2UWckelalouJOPao9Pt2WMHFaEUJVgR3Nc +NWd2zvpxsjoNNJwOPpW/FggAVg2CkY+lb1vzjFctnc0di0F6GpAMDiiMcdKk2mr2dyCMoGFRNDxV +wJxShBiqJuZvltk+lPUletXzBxUDwHt2qkwdiEOjUEUhjZTnFNyec1onchocrsp/rU6XG3rVfII/ +Ck2+lVoLUvrcDHFTJcCsjLr9KcJmAzTSC5tCftUgmBrFW5YHBqVLk5ptWQjW83JpDIorN8/pz3p4 +m3EUrBcviXNBkwKpCUDvSmYciiwXJ2lFQmYZNQlyTxUZb1NDjqNSQ4ucnmo2Y9aR3ROarSXSdOtK +yW47t7Dnbcc9BUMrKpyelV5Lh2OFqEq7n5zxWbqJFqDe4+SbOdtQOzNnNSeWVPHYc1G4z9O9YuTa +NFFFd8Dn9Kz52AyKuzfKD39Kz59361K1K2MW9LuSKzkgBfp/9etiWPLH68VC0axjPQ9zXRCVloYz +VyjIVhGFHJNEMLN8xp4jMr8Z9q0be2c4AX2qnLoSlYy5Yi5CKMCkk03ZGWbg84rorfTTuyetVtWV +Io8H7wBrSF7GMnqczsEYPPNQSHr6GrBw7CoJxzito7kyVkQcGnGlAxyaa1aGVrITpSUUUyBWIYkg +AD0FJRRTAKKKKACikpaACr+lT+TcxtnviqFPjYqwI7VMldFRdmer6fcxvEOc5FV76YDJB/CsDSNR +yoG70q7cz785xjFccrJaHTBO5Xa85wT3xVO6KyBunFQTttbjjBpYZoy37zJHfFStS7WI0lCHae9I +0zAkH8M1XujiQ7c4H9KjeTfjk1SiFy7HcYPXHSpJZ+ME54rOEgwowBjjI71J5gdQe4pOOoJkplLD +A9eKkjnIGM+9UwwB5oEgNDh0HcvFwy7genWq2/LZ9+9NDE8A1Czn8qcYj5i0ZSnPXjnFLNdblA/C +oY3Vhg8cc1XnKg49PSqjHWxEtrkokH61o2twQB2yKww4B65q1HMwX0qpRJTOjhuVJHPXpWqhBCn+ +VcpbTnzBn8a6O0fcozWOqZqtjQUgjBqtLFubKjirCDqKmSMMTWl9STLks94IxzjrVKTRZXBI611S +WmR7VKtrtYehqrahzWOG+yzxOVbII4qxbXMsLjJzXRXmmGV9yDmoBojEhwO1WpNMlpND7G7VyRJx +mruyJzUEmjSBVK8HjNXbaykC4bkiquieWxWexWRuOlWRYfugMcCplgkVq0Vx5fPpzSTJZgSxAIQR +VRYkzWxcbJD71VW25J703uGyK8KM0iqMgcZ960biNUj9wODUUcTKSQKrXs8pXbQn1YmrvQ5jX58j +YaytMGZB9al1lnywfOc1HpYBZenXrXPX+FnfhV7x6j4bHyJXax8r+Fcd4bXEaiuwi4UVlh/gMcT8 +ZJg04GkFO4HFdCOYTHNKc0ZoyaGBG57UKpocZp6jihDDpUL8ZqwRVd1piRAwJFOjXjmpNmBmnAcc +8VJRGaiA5z1qZ1GOKjVcE0AI4O3A4pUIQAe1IxJzQCNvNIB5bNIr5NRMT1FJGx6mjqOxYZqQMScC +omc0+NqVkNbEtRt6VJzUbCs2NDCearTMO1TOapyZYmobZpFER68UjFuKUg5pduCD9KzNBuOtSRqC +PcUx+CKdExzVRSvYmTIL/GADUdvliMetLqT5ZR6U+yQHGKdvfMpfCXo0xgmpxwMimjHFSMvy5rrO +Q5TxKWKMAa4CaPduI7Gu58TNhG54rgpZgGI7VtBaXB7FJxyAfWnBOfTFO3ByWPU0YC9Pu9qYD40V +SPrXR6Ui4GPriufXhgBzzXTaWoGzinBXZlV2Os08DAroLc8CsKxUACt227YrZ7HPHc0Y81ZWq0dW +FrFnRElFOFMBp9SaBS0lApAFFFFMApaSigBaKSigBaKSigBaKTNFAC0ZpKKAFopKKAFozSUUALmk +oooAMnNFHFFABRRSUAFFJRQAUknCN9DS0kn+rb6U1uJ7GmtY3jD/AJBij/psv8jWytY3jD/kGJ/1 +2H8jSn8LLp/GjzzcAcD1qKTOR/OlYnJqPdmvMcT0xGOOKjYnPsKViMnmm5HPvSskymQ8Akmo3Od3 +I9qdKVzx1qBiCRmrVkLdkgPXJpOuSc9qaD64OTT2ZccdqfKK4zjB2mq0kgBzmpXbHtVVivJb8KpL +TQBTLn6mot2SMCoyWyT6mjq3HpS2HYmBHHrUM68H6U4uEGe9V5ZxtGO9CvcCpImOexqqzbeCallu +V6cdRVV3DHOavlC5KGBxTw6jpg+tVN6g460u9uBTsF0XRKOhqxIzeUcfnWbGxyOfxq674ibNJaSB +v3TFkPzt9alhIVlPaoCQ0hJ9e1SqRkYrSS6CpvQ7bTGBt/wrl9dI89vxrSsbwxQYPasPU7jzpWOa +KUbQM5fG2Zwxurr/AAxC3mxnK4OO4rlH8lZSsbF0B4Y8ZrrvCwBmUDrxWeK+E0w/wtnX6vn7KfTF +cREMT8/3q7bWnxan0xXEwEG49ecmpxC9xDw27OusRhUzWmhNZ1krbEbnBrSUZAxXDHaxpLccD/Ko +pD/jUrJwP1qBtwrWHmZsb0PFS44FQqGyM85NWeo9ac9rAhhUjqetNJ7VIc/0qFuOgqUtRj1xSEnt +SAkY9KQ9CRXQrEMY351F3p5DE+wpFA/Kq1YthrZA4pmSe1TH6daj+6T0oa00BMrzHANUc5zxmtGV +QTz3qo8fPHFD8ykRD8OKbuxzTyv4Y60w4waSGI7859KjY/xU1iRzULMRnnvxQtQsJI5+lVCzEk4q +SSTccHp2qszL06Cm2UhxmH0qGSY55NMkNVZXzkelCuDLazbjTzkf41QVzgHPSrKS569ScVp1IZbj +fHy+tWkiZzmqCOSRWjE5Cjnk0m3cLWLMYZAMntWBrMmWxW55mevOBWDrG0uuODVxJvqZ0aAnjmt3 +SLdGbA61iQyInXrXQ6M67uKzle5o3poR69YBYi4wDXIkYPPUGu18QTMYsZFcX3rqStscW+5q6Z/r +EHuK9Y0HC2w+leVaUP3i/WvUtG4tgPauCT/fo7qq/dGJ4kYGTis/TI28wdPWrmulfObJ5BqDShmR +TisMT8bNaKtTOpgUiMZ60PmpIhhRnnio5c461vBe6cr3IJSO1Qk9DSyZNNAPrVdRihQ/J4qKVwOB +271KWKg1m3MrAnnFJjWpKLnbnNNN4Fb7341QM3akG1znB/CpVkVY3LW6L4+tacEvzc9KwbQqvArS +ikORQrktG6rgr1pVAzg1nrcFR1qRJ8kVW5lZlxzjkc1AxHIoMuRzVd5DyfUVLvcaIry6WFCa5mfU +Wdzg96s61d7QVBrnYcyMTnuDWz0Q4q7udLZXDtgVso/FYFgNo/GtWOUjjmphLUc4k0khGQKqSZ65 +zSyyN0HvUbFiK1euxmtCDHXBo3uh9qRnVG5oE0ZIB5pJMbY9ZnxxUnmZxn61XZ04waYZBniqvbQL +XNSGTp7mns+eaz4ZCfrU5dtv1qo23IaJ/OxkDqRTDMcDFVQTnJNPLgZGaptbEpE6uSRzinh6peby +KXeWI5xzU3fUdjRTa3WoriCKRSMZqKOXBOal3nGO5p8qYczRkzaTG5O0day5tFfcSFzXWL+FKBGx +5FZOi+jNFWOSbT5Yl5HauW1WErMc16tNbxGMkdhXnevxoLggdeauN4rUFabsc2V/nS4Papni5FKI +iRWnMiHSaZVIpozmpJFIJFNU4PNWnoYOOonJIq2ikCoUVXcfWujsNJ+1RggY4rOc7WRcYX1OfeJt +xyK09JiDuo9xS6jZ/ZX2HtTtKkCSp26VnNtxN4xjE9D0+2CxL9KsysIxg/jVO0uSIlIPamvLI7En +pWlNe6mc83dlqIoGyfwqTfk1Q8znANTCTA9adiWy+Jwi5NQNciUnHSqc1xuG3OB6VU85ox1qrpaM +mzZpl0QkmqV1OrCqEt82cCoZJicEms5zijWMHe7LkJGc+9XFwB+tZ9s289elXzhE561wzl0N7WK1 +xLnk9MVnt94DPU81YkJyc9OtQRgSSDvis3tdFxNOAeVH+FZ19NgYJ5OatyOFQj2rHlbzZDzxmqjs +StxkY55q0nCHj6VEi8mpSTtx2OKXUpkAXnOetTNCrAMTSKmT15q0qjZj0pWuwb0GDgY/WmsM5qaJ +eoP4VG5HzDvmteVWsZtpszLlc8DjPWq3CsvPQ9Kt3bCMdayw7GUe9VFaDNSdDhWHpTWJIBHWpZmV +Ikz1wKrlyVJAwKUlfYImjnfAO9YF7bgsTgHNbmnsJYivUiqV9ARms6fuyNLX0OadPmqVYM4OM8VY +ktznPfIqeFCRjHau3nutDncLMgFpxxzVGaJkcg10cds45IpmoWKvH5gHQc04NrUl9jmj83HenxJh +lPvS7QrYI705RtPritW9BKJ0FnKPLC4rUtkEhGfwrAtGJ9fat+zPIz1rgna51xWhs20ar0rYgB4P +esuA59+la0BBH0rNK7AuJngVYVR17VFEMkVOBzTRLDaakTjrxQPapdoqkSNAyaQoCRT+BTgQaqwi +BoVPaqz2WQSK0se1GyiwXMR7WVc8VEUcDpit8w5qJrZW7U9UPm7mIGwORRuj71qyWCsM45qu+nAj +A4qlJrcLRZTXyz3pwVB3p5sJF4FNNnMD1p+0DkXcXavrQu1QecUxrWb1xUbW0uOSalVLD9mn1LBk +Rf4qYblAOtV/srnqe9O+xnofwo9r2H7NdQa+HQAmoGup3zgVMLQr2qQWwBqfaSZShFFHNw2cmlED +feNaBhGcYppj7VDTbsytOhUWIDrTSmD7VbK44NMIABpcoFQp0qF1681bIz071C6HBpNa3AzpQc/y +qq8G773rxWp5e7imfZJZeNvFOMbicjDa3y2fSqN2hY7AK67+xbhl4U9Kmt/DLM2+StlF3MZTXU5K +w0qRtpPFdBHYIqgYFbn9nwwAIqjis+/k8hcL1NbqmupjKo3sZl9JDaRkk/NXH6lctcBicjJGD7V0 +UttPdsWc1garF5ZVN3AJOPQ03JbIUYrruZcYxyahnUk1Z2/J+VMZA20+tCety2uhUKkVE2KtSgqa +rN1raLuYzVhhpzuzkFuTtVfwAwKQ80lWYhRRRTAKXoMDHPP0pKKAEpaKSgBaBRQKANCxndXRV65x +W39qMkY6ZxXMrha0LebjBNctWHVHVTkT3DlgagjmyevNTSDOCOMd6ouCpzUwSasaS3uWpWGRnvxU +T8fMvFIW3IvHSmBsd+DVKJDYBlPucf1pyOemKhfKtkdKFcHqavl0J5iUntSK5B4obafmFRk9xilY +bZcyAvrmoZgAfXigPnb7YpWIYZpJWYXG89Rwe1RyuSDmhTg4psoAq0tRSehGpqwG+QdKqZq9ELOS +La8jRydQ2Mr+OOf0NVJEQZJDIAy9sGulsZsqo/GuajtbgtiMpJgZG1hkj6Zz+lbNizrtGCGXjHpW +E463N4SudLG3HPNW7U5JB9azEkIAJq5aSfzoW4+htRhcDFTSDCniqUbNuyO9XHclBzVWZCGx7TyR +zVmIDNV4lzVqCM+tNBIHdd2MVX8wqxHarDRFmNRmMHg1XkShgPOR0p7yLs471JGEUFT6dap3CEOC +M4pqwiFlbfxVhIty56HFIm7ILDgip1YA/L0NMlke3GQfwrE1Lcm4H866OTy1UN+Nc7rcsTRlVHPt +RK1tRx3OD1ZyZCD61Po+d2M4BIzVPUC3nHuMmtHRYyZE7BulceI/hs9PDLU9P8Pjai8V1sf3a5jQ +lAVfpXUp0pYf4TlxHxjselHNFLzmtzmCjHNKBmloATApwHpSdaUZosIU1EQMZp5JpuaBobjjFN6V +KMGkxRYZCQTTCuDU5HNRsM8UAQN3NMJJAqbb1FVmdUbB4qXoVa47OAaiEnXHWnsR19aj+7+NNAP3 +jGDUiMKqMxyaakxHJosBpBqTdnNV45g3NSb/AErGV7lobJnmqnO7Jq0+SKgINQWiNqTr/hUnrTSO +TjrQ9dh3GuPWiMDNJJziljDdvSjqDtYo6kRvUVNZtjBqtfn95ipLRgSAO1KHxmdT4DXQ7jgVNICE +qKIcippyAnNdljkOD8Vv8rDpXCSfxHrzXb+KmHzYriJjxmtYJ2G9iupqQFe5PWo+vtVi1it5HxNL +5alHO4DPIHA/E0CsOhwWH1rqdLTlSDXMwbA3XgH8+a6jSz93+VaRTuYVXodfYjgVuQ44rBs2IC46 +VswP0rRpmMWaUbVZU1RjfirKMKyaN4ssg07NRA0/NSWPozTaXNIYtGaSigB2aM03NGaAHUlJRQA6 +im0c0AOopKKAFopKKAFopKWgAopKKAFopM0UAFFFFABQaSg0AFFFFACZol/1bewNFIwLI4/2WNNb +g9jUXrWN4x/5BiZ/57D+RrZWsXxhg6ag/wCmy/yNE/hZdP40ebSYB4powST0qV1B61DnaK85npjW +XoRUTM3FSM2faoJcjj1pJARNtyWzn0qAnLHse1NkJDYPAqMsAc/WqSGTbwOB2oDk5zUO/PbFN3YH +1p6CHSvwRjtVRnZjT53yDg4qruOSO1FtLDRMzBQB1qMHHA681G78AAnOeaUOM+xpvQAYnJyKzbqR +14rQZjziqE43Z7mnHzE9jNeRicE5FNDMMdakaP5vXrQIuta3RnZibs4zS72ySx5z1oIHGcVGWxx6 +0biZbjOWHfPersoJizWXDJzx+FaDMRB1qGmmVze6YxzvP1qaNssB+FQfxHPqalizuGT3FaS2FBm4 +kRMXtjiuevDiVu/NdAJSkB+nWuduSWlb60UfhM6rdyOMktxXaeFo28xTz61yNvEWNdv4ZULIo+lY +YuWiSN8OmoO5v68xFufpXHWmTcD/AHq7HXz/AKPz6VyVhkzYP97rSxT9y5eF6nX2Odi5rUijwM1Q +stoUE1px9PrXnQ1Vy57jSrY59aqyZ3EVecYFUpcA/StomZEm4Mep561ZzUJ9qmHI4q5RsFxGPeoX +4INSN1PrUbjB9KI6jG5o+73pMgjimggHJrZWIHtgDI9KhJ2kHuetOZzn0qE7myTV3TE0S5xzSEio +9y7ePxpAw59qEIHYdjURHAOOtKTnkd6TnGDz3pbjImXHTvUTxDsalbr7DvQACM9hRa4XKbxjgVWl +jIOTVyYgGq8hB68inboUmZ8ikCqT7mPNXp2GarPzz3ApNaloqtwCTyagfnrnPYCrEx6kdarHknnG +apKwmwHQfzqZASAetRcdfengk57U3sSWI9w5HFTifYvWqoakkGPX6U0kTJstpeZJ561nX7b3yefe +pYI2ZuOBmoL9SHAHaqTu9Bx8ykR8wI+lbukyMgOKw1GWxXR6XACucY70S1aQm9GUNaui+QawgcnN +bWuptYketYUfWuho5FLU3dIH71OO9ep6WMWw+leX6PkyIMeleo6cALYf7teY3/tB6Fb+GjmdcYmZ +setLowO7kd6j1pszt7HtU2i4Zx+Fc+Jbcjemv3Z1cafIKhmXH41cjUbOKikXr3rrj8JxPczmiNNZ +Qoq6Y+uKqzDHANCRVyq5wvOKx7uXaWA6ntWlcMVGKx50Z3/Oi+mpSWpCn7w+47VZC7B7daZFEqdS +M06VvlAqF7xb0JIZWDetacMvQ57Vz3mlT16VYhu2GQapKxL1N43SgnNSW9wXPXvWCZyxyau28wUD ++tVJ6E8tjcMvGc1FJLxmqguAR6U15+CDwKEuxDMTWJcv7Z61StlHU+tT6gd8nHTNR2+AwzjGaqRc +NjWtMjaO1aitge9Z9rhsEdqtkHbx1qIvUJCs4zzUckvbionYryaiEm7g966I6GL1GSyE9agye1Sy +r1+tV87SdxoauVFom+bilD5NR7yCMUueme9Q9yvMtwyEZ71MZW456io41TaT6UmSfb0rWOiMnqyX +cCMUNgDJFRRnLnJ5qW4YFOOtLcWxCTyT070LIfXvUW5m9qenPB/Oky7E3mEHrUscxPcVW4BPtSbw +p4/KquQ0aKyHH16U8NznPWqaS5IHpU5fAzWy21MXoSTSlY2GexrzjXJi10cEcGuzvbk7G5xnivP9 +RctcMc96iyaLi2mLEFcjPetu30+No88dKwYmPBzium06QeVuY8YrnnFto6lUXKc9qNp5L1lsD1rd +1eVXZgKxGRieAea6IXWjOWrZ6ofb4Lr9a9N8N26m3zjsK8+0+xmlYHbxXoejOLa32PxxUyjz1FYl +zUadjnPFaRJccHBxWFaybWHrmt/xHGbiXemTWRbWb7gWHANXWjYKM7x1Oo0+7d40FaIkXqT61l2o +REAHBxU48xj9aiCaWoptN6ErzgPxU7z4QGqRgKncxxxVa6vVjUru6U9WxaGiC0gLCs68vHjGKorr +kkfygcVnXV3PcycZoe17lRTvsXPtryMdvWpkldjg/hVS2tHC7zkHHerduuZAM965Jy3Z0xRt6fGQ +uT3FWLhyBjqKSHEaAH0qvNKDkHtXMmmN7lW5kHQHk1Ja4VS/tWe8heTA6VeDbI1CkgjBzQ77Iq1k +MuZiM7TnOc1SVuc+9LM5Oc1HBuY57ZrQEtC4q5AzVgqgQY5qJVznFTSHCYBwRS0ZLK6nDsetXrcC +RSPSskNtYnt61q2DZ+hoegNDnXbiqs398VduABz6VkzTbdwrWKZkUbqRZGK1WiiJlz6UTHLHHrVi +GRUXJ703sXEnvDlE9AKiyBD7U+6b9wGFUo58pgnjNKOwMvaRL87J71dvI92R7ZrIsZNk4K9DXQGP +zU3Hmsqi94uLMhbUHkirC6c2A4HSrcUJ37fWtVYP3RBHatqSctjOrLlKFtAs8e0jkU5rEOCrjIFS +WoaGfB6HrWlJGAQe5roSurHO3Znm+rWf2ac44Gc1WiAdRXTeI7VWIbpzyay9HtRcMU6HGBSlKyNY +a6j7JAuNwrdswpwR61CdNkt+MH61ctoim0etcktTqTVjRt+CPrWvbnArJiX5jjOM8CtOHIGM0baE +mnDwKtIuapwkfLmry5FOyIY7aBThSjHSngcUE3DC4oCjOaMjFKDzVAPxRg0DtUgxzVIkZg0uKdgU +4jimIZgUm0GnhcUYosBEY1NNMK+lT7CTTtlOwXKZgWmNApGCKulaQoKnlK5ih9lUdqjMAyeK0iop +hQcmp5RqRnGDFR+SfStBh1phXiixSkUWj4OKrutaDJyTVZ0II470rMpMrbTjiozGefetFLVm5Aq3 +Fphc5NUoNkyqJGCIGY4AqWPTZ5TyvFdRDpsKds1aWCNeAAK0jR01MZV+xzMOijcCwrQj063ixhRW +sY1qMoM1sqcUYSqSZUFvGBwKhnCopxV1yFBrE1O52IcHntWiRGrZl394sO7afmNZaQS3J82XpV5b +Xzj50x461R1O+VFMcRx24qXr6GiVtFuVNRu4LZSiYziuMvGa5djWpd+bLIAxPzVXlg2DisJy10N4 +QSWpmGH92AM8U9Icx5xVkx5IX1p8imGMVnzXLasYVyCCQapGrt4ylz+PNUjXbT2OWo9Q6U2lNGDj +PatDISiiimIKKKKACgcEGiigAp6j0poBJqwq4AJqZOxcI3IzgfhUsT4NRsOaeqfLk1LtY0WjL+4s +owahkXPNQwyEHk1YOHGRnp0rG3KzVO6IGLHr3PPvTcrxT5UYYzj8KgzjnpWi1RmxzdyajzgkVJxi +on61SIZMhDDFI2aiRtv51PlGyAcnjn0oaswUgTJp5BOc8VHuwcinb8gc9u1S0O4jnbnb17moncMB +x0HNOLnBqE4qoolsKcGGAPSmUoNXYhMlVuR74zXS2Dxtcsq8oNqg+oUYz+Nc/a20k7hQMiuu0/Sz +CFY/jSVJz0RTqxhqzSKBl4FWbJRkBuxoiTDAHpWgkCYDLitHhGkZLHJuzLMajIFWJFUJ74qh57oT +xTHvGYEdMVHsJbGv1iNrl6NwuM1pW5DDFc2LluOcVbg1BoyAeh703QkifrEZG4F+Y1FKp3dKW3uF +kXOanUb1rFppmykmVWVQc0yZEkUkc4q00ZwagiYfvEPvg0raDuV4ow+7JxtFO8tlBI5p0eN7DoOa +Qu6MVP3Sau1hehDO7bDj0rk9TdizEHviuuuQEjJ9RXF6s/zGomzSktTmLwnzSVyDzkj3rU0QfPH0 +9KyLs5fA9a3NAQO6k+orkxL9w9DDdT0/RFwifhXTpjFczoxPyj6V0yDinQ+E4q/xC45p1IBQ3St0 +jAQZpc1HuNOByKAFzS7jTCcU4cjFADXkAphkFJKpqrIzrSuUlct+YM9acrgms4SuAfWpYGcjJoiw +cS9nmmnBNR7yKA2eRTESMuBmsbUN/LL25rWZwQRWRdOBuB6VlUNKe5nvfTKgPpU6aijxgk8gVC0c +TxtjFZ/kbFbBzWXtJx0ZvyQkjVFysi5FMV3zz0qjYszZX0q9Jx+Va811dEOFnYmimIY+lW1nHesg +SndgdqesxyKN9xONjbDBhTGA5qvDOCKlBHPPrWco6ghPpSA8jNIG9aB1psBkvHPanxc9ahnIzgVJ +BmiOrFLYzb1MzH61LZLtYCm3rnzSKtWa9DUq3tCJv3DRjByMUtznZSpxjFJcn5a7LHKedeK2Zc9+ +a4qRx0I711/iyXEjL2zXILGZ3CL3yeauK0uW3orjVwf8KUMePXHSkeJoAwLc5piscn8OaqxBftUa +RsKM4Ga6XTWC45x0rmbO8kh3CP8Ai4NbVnKy7Q/B4P51rAxqanY2k4wBmtmCUHHOa5S2uAOnPFbF +rc471q1dGGzsdDHKeKuI/SsSGer0M2e9ZtGkWayuDUgaqCS1YWSs2jRSLIalzUAel30rFXJt1G6o +d9KGosFybNGah3jNO3UWC5JmlzUW6jdSsO5LRmot1LuFFguS5pM1Huo3UWC5LmjNR7qN1FguSZoz +UeaN1FguSZpajzS7qLBcdRTM0uaLBccTRTM0ZoC4/NFMzRuoGPpM0mabmiwDqGPyt/umm7qM/LJ7 +Ix/SmlqJs1lrF8Yc6anb98P5GtpaxfF+Bpyf9dh/I0p/CzSn8aPN5ielQkjjHbrUs55JFVzjt+de +bY9MRm/+vVaRsmpZDwMc8VUdwOtPWwiGZkzk9ewquZcnGOcYqfYH5+lHkAnj86q47EQYbfQ0hkHz +VKYRjvVVoySQaaeghjMMfjxVfdz6c1K8TnntUJgbPPvRokMjYgH6809QTjini3Oc9KsIgXjNFxsg +aNm4PpUBgOeRgVoLtOc9qilMaimkxXM1oF56VXaPqBz1q1K4DEjuOahLZIIoRWjRScfeHtUBQnP0 +q3ICc5HU1EynP4VomYyRHCxBA565q7K+IgvqM1BFCSRirktuRDk9aHuKzsZCrliR0qaIZY8gEdvW +osbWIz0qWPhwSOtVIcUayJmHn0rCnCiUgjjPat0MfJ/CsO4DNIx9zRT0RNTVktu4B6c9K7Twuu5g +eK4q2jOQfeu58LggjHpXLirXXqdFK/s22a3iDAgI9q5XTo8zjtzXTeIiViOPSuZ0st5w4BGaeKso +BhVoztLRflxjHFakajFZ1pyoz1rSjYYGfauCK0KluLJgjmqUmM1ZlOM471VPfPrmtE+hCQzALCpg +ODUO4Z4qQN0yOK0krgmByee9QSZOKkY8k9qhZjnmnFW3GFNJ60Mdo+tN5I46961W5JGXzxSNQRzS +H1qtBDSDjrim5xtpZGK9ai3ZHWnoIkOD3ximsy9BUe4nj8KjZyPajZAOaRcEHuaQOVGKjL8gg80x +pQc/TJoa1BEcrNjJ9aqSNxjv3qSRzyPxqu7Dn9aV3ctIpyvknnPPT1qJ32jANPkHzGq0x7irSYm0 +hkkuc4qvkcjvmiTPPsc1GM9atLQjm1JkIzn2qVC2SRnsc1Cp9BxUw/pUtalXDcRjjINSF1yRg81G +e+MkZ4zRJwoxnNCRLloX7R9uSemOtZ+pMGcYPXtUtszYP1xVG9b94R71cEhORFGQpB9+ldNpbYjr +mM4IOa3tPkIjxyKUlqg+yyjrbMXIPrWNH94fWtPUyS5571mxj5q3voc6XvI6HRR+9Ue4r1G0wLUf +TrXmWhxlpY8+tenW6kWvH92vNT/2g9CuvcSOM1diZ3zzzV3QQM5+lUNWBFw+OMmtLQQeB7iueu1z +fM2iv3Z18ONmKQr1z6U+IDaKCMmupKyOF7lZwQBiqUyd60XXg1RmDAGr0BGZOMnHrVaS2wM1oiPL +AkUyZRUSRrexjsg9OnNU7hmz0wK0pgBu4PNZ8oZunUULQoptgtzwDinjAI9KY4wcDtTd7CqXmMub +h1qVJj9MCs7zdp5NPSTcQc07aEtXNeKYkDd0qR5eDn0qhDIBwTUhkHemrkNWKl0SW59ahRjninzN +v3Ee9VkLbhjtTaGjoLGQBRx7VohgQCBmsa3c7QB6Vowu2PoeahKzCQSLuqNlC8D0qzsDDPvkmoZU +4xWxl1KsrBRn8aq53HdVhx1yM/WqrttwP0qktNRdSUHB59qkGOarK/TPNPMo6ChxQXLSNjj1qdVy +uep5qiJF3LirkUikEUknuDZEQ4Y44JqUq205PakHzNjFTsDjHb1pq17MTZT6Ej3p6YBz1pHUZ4py +jC5A5qdLj6DH+9xTgopjcnJ9KUN0xR1F0JQACB3FPZ+KhZsAH2qJ5a05rEWuNvApic9+a4C/b/SG ++tdzeEmBs+lcFdZ858+prWOxlLcfE7cfyrorHcYcCsGyt2mYKPXpXd6Vp3lxLvHPWpUby0HKfLHU +wJNHubmTcBwa1LHwrGSC9dEqJHgAVIJGUkj1rq9hF7nE8RNMgg0O3gUbVHFNltCucH8KsfapBnrV +eWeRgQoP1raNJIxnVctUZE0R3lWGeaa1tEi5xVuXOR61G5Vxg8VUoJahCrKWhQ80oc5xihNTjif5 +zVbUnWENtrBd3lbn8K5qsoLS2p1U4Stds6DUNZ88BYeuKp2lrc3j/MetVLQRKRvNbcV1DFgoRgda +5anPLyOiHLFaE48ORrgsaq3FpDauCMcVYudZkVcA9hWJNfSynJbvWcoxsXFyb1NQ3CstT6dGWbce +MVlQuXGBW5ZII4yfWuOpJ7HSkkrlqVti8GqE8rc5PU81NMxJwDVCd1Y7QcVmkth26jo1wQTx2qR5 +ME4+lRchRnoajZienal1NBkknY9Sadb5A5qvIHLA9s1ct1yAp61dkQy3Dt61PIFK7h6VEF2qKV2P +lHr0otqS2UHIyQvr0rU08jAFYyk5y3r0rYtGUR03YJbFm/OI8j0rnZdzc/jW9ORLEQOuKwbw7AQM +jFUn0Rmtin/rHNOlYZC9BSRFQC56moZHLMT2FaW1KuXrwgWiYOTisqAsVOetXpJRLbhR16VBbpmM +gjPNOOkRPctWwO5G247ZrprcGSPA9KxLGHJFbtpxx3rGpHqUmR/6uQHpjvWxbMs0Q9cVnXEXAqXT +pdu5T2q6ErOxnWjdXEvFEUinv0q/ErTKpHaqGokFx9a0rJdsa5OARXXf3rGFvdMjxBbHyCcDpWJ4 +diP2oA9M11GuqDbt9K57QQ32sYPAPNRUsa0W+VnexabDOmGHUVRudBkiO5OQK6OxiBRT7VoiEHqK +fs01cyVRxZwQtJomGVI5q2m7PNdZNYRSKRtFZEulyRsSo4rF0WtTeNZPchiwMe1X4mUiqSRspGQa +sqV4HSo5Wim7lkYzUinPAqEMtPVvwosxXJNtLgUzePWl3j2ppPcVx/NOGKj8xelG4dqdguTDJp1R +B6duFUibjxS9+aZuGKM0wH5pcmmgmgc0AKT6U3NP2tSCJjSswuiIk0nJqwLdj1qVbbHWqUGJzSKG +0mnC3Y9q01gQdqk2L6VSpEur2MoWbHrT105CckVpbRS4FV7NEe1ZXjto0HA6VMEAp9FaJGbbY3Ao +xTqQ0wGmoHIFTNgVTmkHNAitdyhFJ9q5yYGeQsx+UGr19cGRyi9utZ07AAIvWolI0jEqXtyV/dp0 +rMa23ZduSfWtVbYscsO9V71THGQPSpvzFbaGCYA0jE9B0qtOnJx6Vpjaqnd19az5CXc46E1hJa3N +otlNokzk/hVO/bHfpVy4winJ5BrCvJ2LNiinHUJMz52BYmq9SMS3NMxiu6OiOWWrE9qSgmgfnVkB +RRRQAUUUUAFFFFAD41JIq2ylRUUAA5I71Z2u2ecKcCsZvU3grIiWJnwQOlSMU8sjjPNTwMF+Ujmk +uIgFLimk92RKetkUFBqZGYEUqQselPEb7gMc0NFJjpFBAPWq5jAY5zir7KcYxjnFQyAkjA9alRkk +HOikRtYjtSYBzVloieQKrmKTPQ1aEyIg+nYUK2MVP5ZHBFMaFh0FO5AvHbpxTc4OaVVYHBp4jJoS +BsjbnJH41GalMbjI5qM9+Bz+lUkK40Yzz09qsWdrJcyKqj61CkbuwUdTXb+HtMS3QPKPmPrWkIOT +MqlRQWpd0fR44VGVGcVu/Z4Exxj1oheID5f0pzlW712RionDPmn1GeSqjg5qeA8VCueTSxEh8dKo +z16liSJWBOOtVGgPIx2rSQA4FEkWDn1qb6lptxMyOJGOzAPFSvYsBkU4x7JNwq4sgIwetKSvsXCS +RSikltyMk4rbsp1kSs2VEIwahina2bHYmuapT6nVRrX0Oj4waosqhzjjNOiuFdQQetNk25BNczR1 +xIyrI1PKtle9N/jXmrbw/uwRQ0O5lX7MUIPYVyOpRlyT6V1l+zANXL3WTu5z1rOSvobQdtTkLrPm +H61v+HiA4yMHNYl8ribB79BW7oCnKtmuPE/AehQ2Z6Xoozj2rpQeAK5nQ+gPvXTrjFa0vhOGv8Qo +96UijikatTAbj1pcYoyMU3mhAL15pytTA3anKATQAj4qu4BzmrJxUbY5oaGmUXiOCRToyUAzUsg7 +UeWMDFSXcazDgU4sFFQuDu+lQvKSQpp37iSuPknwpOaxbu43Zwc81pXRXZg9xWFOMEnrWU3robU0 +iGS9MY25xzQLsKMHvVByJHz3FMmfIGDWS5rm7SNa2uI1bd0zVk3Jbj1rmftPlsATWpaXaOqg/eNa +Q1ZE1bU0R1zRk5OKaGHQdaqSTNGSM8Vqo9DJvQ00mZasJN/+useO6B4zVmKUEnmnKJKZpeYCTUqs +Kzlk+bNWBJ+dYPcsfKcN9e1SwkjoarPyQe9WLcn0px3FLYoXTgXHNadkVZRisfUD+/OK0LCb5QtR +F++Z1F7prDg1HPgqxz2oXcxBptzjy2+ldi1OU8w8YMFkPuTXIbmB4JB9q6bxW5NwRmuUbcQcc4rS +O2hclsS5J6mgdTTAxxyOcUqvgmqSvqQWosYHPU1qWzqsXJ+bOAKxo3PHfmrCyNxz0px01JkrnT29 +1gDk1sWlznBBriYbl1JyevWti2vQq9e9dCd9jnkrbnZW1yeOe9aUFyG6GuOgvhgc9a04L4IR83Oa +djO9jrI5/erSzDiuZivl7t71ZXUlGOalwGpnQ+ePWgTgng1hf2hH13d6DqCjoe9LkH7Q3fPXPWn+ +ctc+NQTBOalW/TH3hRyAqhuCbmnGUetYi3q/3qf9tX1pcg/aGx5o9acJQaxlvh0zTvtikdaXIP2h +reb70vmVlC7X1zS/agO9LlDnNTzaXzO+ayxdL69KX7WPWjlDnNTzKXzBWYLketO+0r2NHKPnNLf7 +0bx1rPFxnvTvtHqaXKPnL+8Ub6o+cOuaUTj1o5R85d38Uu+qX2hPWgTjOB0o5Q50Xd4pN+MVT84E +8Ued70uUOcub6XfVPzh60GYetHKPmLm+k31U88etIZ1PejlDnLfmUu8bX5/gf+VUfOX1oacFG/3T +/Kmo6iczqVrF8Yf8g5P+uw/ka2l7Vi+MCBpyf9dh/I1nP4WdNP40eb3HXFVCw7VZnJyaqNkZ9zXn +vyPSGStnpxVOQgAgdTVhsjr0NVZeHppjQsf0NTAAZwKiRulTZGeaFYGNlGMHNV1QFyT61aYDaO/e +oSO49abegkIyKo4qCRQByO/FTSMevTAqhJLyc81SVybg0gUHPc1GJRyKglcgdaYjfXmjRbFLUsiR +h+eaguJODk8UrOQm4Hn0qlLMDj3poTepFI7bSc801SRTT83t3pyAgnJoHcGJOfxoVM4470A4YfpU +vUDp60W0Jv2H26/MuPT+VXroItvg8Z71QgGX5FXb05g9BikviB7HPhcuamijYuPrSJtY8n6Vbthm +RcY605ysaKOhc8rbCfSsK4wHP1rrWT90RjPFcpegiRj0OadN6GUt2T2wGB68V23hgDd0wK4GCUkh +ee1d/wCGOVB9q568XzL1N4u8Gy14lZRGR7VzmkgmUduelb3iMgrisTSh+8BI708Xa1gw3wnZW+Ao +5rRiwRzWbBnaDWjD0+lciXuhLcdJ7/hVJ+OlXJAD9apyjrVxJRXOQRUiOMVDIe/p2qOM88mtWhXL +THgn0qFyRzT3JxnHaoSzcAiiO4wbHH86i8zv2p8nA6VXG4HnoOa0YkTsVIz3ppIIzS4VhzSnGPwp +WEQSYNR8DJHpUzBetV2bBIAqvQkidgOp71EXXPPQU2V+3UVWMoGRT5dbspEjTLnFKXDoWIwQpyc/ +0qm7jPWm789RTV0Mc0gJxzxTM8Y9KiJJJPanADbk96nqV0K8rqM4qkz7eo5zirMwUkg9uarOOcDn +mtFsZkLZIJzTFXnPrU4TIxgCnLFweadxWGIvGO/TFPA6DuKOQApFG4g88+4os9xDlznilaMkHI4p +0fPIzSyMyj+lLW4NpIfbRkA5FZt6mJCfWtOCQtk5PArNvstKaqC1E2tCpnaa27BsRg561iYIPNal +qxWPNVJXaFd2ZV1Ftzkj1qnGAGHFTXT7nOc1DHksCK06ER+JHU+HwplSvTYgBa8cfLXmXh9T5yfU +V6UrbbYn/Zrzaf8AHZ24j4UcXqwBnYj1rV0BfxrH1Fw9w31rb0AHA/OueorzNtqZ1KdAKXHNOT7t +HHOK6kjgbIpAO9UpV6/yq+2SSPpUDx5q9xplMRhVzxVS4AIJrRZcDiqcqHnNNr3dSk9TJlQ9c5qh +InWtiSP1qlKg6YqElcu5jyqc8VFgnnjjir0sOPaqsgVQRTa1KuVJFUMTzTUlC9e1EwA+boDkD1NV +nGDlWJB45q7Et2NBJdzDFSs7YK1QiYgLmriSKKaBg2Qv1qAEhqsPJnbjjNV2P9RTepJajuDngVrW +T7hzXORuVbnocCtyylQAY74pNAja8wrE8e37+AT+NQyKuKejpt/CopmJHAqkzNrUpy5H4VSm+Y/T +mrsmB9arMmecfjTEQLkLjgDimEnp+tTHhfxxULHFaRSaJbsSIy5HatGJo9pPfFZAzu+tWEdsYHFU +kZybZcFwqMSamlnDRqQc5rNPzU5Y29ehqXoy1qWVkycipV5HXFVxgNgVaTke9S4g2KI8e5qNgF5x +U2SMetMeQHiiyWoXZGXXBznFV3AzxVjHGT3qFsDmq3Wgloyrftst2+lcRP8AvJSe+a6/VmxCwPp1 +rkYYnlnx1+bFaLSJk9zpdAsSSJMdK69PlG0D0rM0i28mBQRzjJrWjC7gTXRRjaNzjrS5pEyocZ9R +yKjbbg9qmLge+aqTSbjtA610x01OWXvOwhCngVMsQ29arbWB4oMlxg8VV7k8q2Q64t4yvHU1i3Km +EHk49a1DK/cc+lULva6MT71MlfY1pvlOXvpQ5IzmoIIAeuaSdN0zAHjNTxI8YBrk5Oaep2Sk+XQR +wiKMdhVd52wAM1JNvOeOKqkke2BTrRSClJjxOzNgk0oBz1qGJSSWNWY0LkY68VxSOuJoWQJ21vJh +UA9KzLODaFB69q0W4Tg9q4Zu7OlbEUsmOazHJZywPFWZ32qeRzVLPGT3oiUkTCZhjJp7yptPHaqa +sfrTiTjGeTT5dRvYtQ7JAOfm5q3CuOe5FZ9vuBANaYJwvr0NOyuQ2Su2RjPaoi+RspHfZzjkVWln ++cYFKyEgK4Pfg1YDMBgHpVcgZzR56jimo6g3oaNszMrqaw9RfMuytazmXPXANZ+pQsJSxHHaqhuR +1KLsqDHtVSRgF+tSSbtxBqncE52jp7VtCOopOyL1uN0OR681dgiYL0qtYDdGFxW3DBtQY61nJ+9Y +roWLGA7RxWrBDt561BZLyBjNa6x/LVwjd2MpSsVWAI4qp9yQEVp7UBwRVG4jKvkDrXOrxnY13iQ3 +Db2Xv61t2i7olwO1YmNzj1robBQEGfSu1O8jnkrRMrWSViZfasfw/t+1e+a2tcHBzWV4ejAvATzk +8UppbF0/hZ6dp6/u1+grRC1Us1wi49KvCtktDle4beKY0YNTZpKYrmfNZI4OBzWe+nyr0roMU0x5 +qXFFqbSOeEMydRQWcda3zAjdRUMllEwPFNRj1E5SMeMSS9BUjwyqOlakNqkfSp2iQjkUckb6C55W +OcLSA0omYdadquLc/LWSt07HpW6wykrmEsW4aM1hP3pTdDIrJacqMHNCOzc+tH1NE/Xn2NkXK0G5 +X1rP3sFqFpGIJNT9UNFjNTpLcCRMirMcOOTWVpd2hUKTzW4uCM1k6XKaqrzAFWnBRTenWpFxRYLg +FpcU4UUwEopaKBBikpaKAEooooGJzTTTjTSKBEMrYBrJu5toNacxwDWFetubFKTsioq7M6RjlmA5 +NJBAzksRUypufGOM1dWJYxxWSVzSUrFcRBR06VjasAox61uSMQOlc/qjbjzVP3UTDVmLMRggVTYB +eOTnmrkuMH3rOlZlyxP41yPVnUtEZmoyYya5yWQsxrW1GUMSSfWshzn2FdVGNjKoxg6j60smMDHS +koOcVuZPYixRTu/FGKq5nYSkpaSgApaBS0ANqREycUgHerES57e2amTsXGI9EIAxVhPmIBHGKYAe +g9KuWtuTg9zzUQi5sqc1FE8Nqr44zUN5GQ2xe1a8cYReaqrEJZN5HQkV1yjaKijjhO7cmRW9moi3 +MKhS33zAD1xW60SpDjoccVTsIlafcR3qZ09kXTqaORMuls65C1HJorD+Hk84rpIwmBjFWfLB981t +7PTUwdXXQ41tHnXopyaYdHuDxsrufJHAA6U/yE3fd5qfZJh7eRwo0GY9UIqZfDs5ABXiu0KKD0qR +QmPu1SopEvEyOPXwr+tTL4XQcd+ldaNpxgfjUmExyKPZJB7aTONfwrCRVC48KKASGI713bKo/Gqt +wqgEj070/Ypk+3kcLY6KbeYu/IHSumgyQFAxS+T5j5Hc1rWVgAMkVvFKmrGM71HdlSFWUgHoe9XQ +gOCKtPaqASB2qCMbCR7ii9zNqUWPRFAwe5qKVBnIq0QOD+VMbByPapehpF30EtmwcGrBIbrVOEjr +6VYDZ/Ck9yto2I5NobNN3gHjmkkOWyKZg7s9KexC1JGLMenaoHQnNShueKVs8+9RLVGsHyjbW4KH +b6VakuDuXjg1lSEq2RVtH3gHv6VyVFbU9KlJNF0v8y471eMpWIA+lZOTkGrLzmRAOnFZ3NGipdOs +gasG5izu7YFart8xFUrofKxHXBqJa7G0dNDiNTB+0Ee/Fb2gheh9awNROZ2GOS3XuK39BXOPWuDE +6xR6ND4WelaLtCKB2roVORXP6KhVFzW6CAK2pJqKPPrayZL3oamqaa74HNamIZGacelVw/zfWpSc +96YwyKcp5qItg4NPSkDJGxURNOqFmPNJ6AkRyP0qVWFQSdsUgcg4NK5ViRwDk1ScDfmrG/qTVVzk +nFS1cqJXuC0nA6isuchQd3U1pSMRuxWbcKZM8HrWU0bwK8ccTcmopLVMnA4qUo0YAFT267+SOOc0 +R2sVJtamFdWLH5sGo4I7gMNvFb1zH1x0OajtIRuyR0pq6bsG61FhaQffHpUsiJIvuafOoVSR1rPN +xL0xitIyvuZuPYQ2rh9y1YQMhGc545pIZwSMjmr3ySL0x6VfM7WIcFe4Kwx7461IjNwe1RIjEHir +CxcA9OKxk2aaWsCMSauxdPwqmoAYVdQrtJHpSTuZzVjDvXJufxq/ZtyDWfeEefn3q5aNghRz0rKL +9/QU/hN+EggHNRagQsTn0Bp9sSwHFVdYbED844ruT0OS2p5P4klEkzEcnNc1M+OB1NbmvACZsknm +udlIJJH1rWOw5bj1JPuBU2MAVVVgoyevpTvOPQ1a0IZaDHp+NSBgxClto7n0qmkhU5PPHFOMnI7U +Jgy5HJggZ6VOLt1/Cs+MqzY6ZHWnGU4wMYzwapMlxRrpqBUEFscA1aj1bGPmJIrAVgcfQ9aWfdbu +0bEbkODtIIz9RV87W5m6SZ041tlX71M/t9lH3s1ypmbPBwRUbSkUvaMHQTOqPiRx/EacPEx4BPOK +41pDnrTN5znNL2rD6vE7qPxIcYLHjrmp08Trn71efea2c5oEsnrVOqR9WXc9GTxMjE5ap08SRE43 +V5n50nr2pwupf71HtQ+reZ6iviKLu/vzUy+IIv72a8q+1zf3qkF/cAghse1P2qJ+ryvuer/29F13 +VINcjIJ39K8oGp3IP3vSnrrFwBjJNHtEwdCR6oNcQchgaf8A22nUnivKl1icDbnrT/7bl6FqaqRJ +9jM9SXXI8/e9qsLrMR/iryptYnQAtn5hkUq6/IOATVc8BexqHrSaxH03DpUo1WM4y2K8mTxDN13V +J/wkL8fMcDtU80bhyVD1n+04+PmzThqUePvCvKV8TSKfvZp58TyDq3OafNEOWp2PVf7Qizy1KNRj +H8VeV/8ACUMB9/tTR4pfu2T2ovHuFp9j1YanHk/Nig6jGR94CvJz4pl9aa3iqYHr/wDWofL3Fy1O +x63/AGlFx81NOqR5HzV5I3iifPD0h8TTHHzGlePcfLU7HrJ1WIH71MOrR8/NivJj4mnJHzUHxHKe +Nx57U+aAKFQ9X/tiH+9QNagAf5gfkcfpXkn/AAkUwPDUsGtzyuy7sfu3P5CkpRuV7Koz6nWsLxmc +abH/ANdh/I1urWF40/5Bsf8A12H8jXNL4Wd9P40eazMQTVdiOT0HarE3rVVgSD7V57Wp6SIJWJyR +VOV8tweRVmXIHTv0qi5HUDnNUrWDqTRMCR37VKGySc9KrxMeDjFS85paDY53O04NCNuBH45qCTrS +RuV49TRZCHzE9+lZsnU4q5OwxkmqLZz7GtehKI5QWXA5PWo0XZnIqb5SDTXXIGOalvoV5jHPGOg9 +aqyKCDzmrLgge1QMD0PSnawvMgxwOO9GCCDUpwf0qN2GTjmn1C4wsMkehpwcYP4VWc05SSQPWqsQ +XLd9r4z3FXb4kxDvhapWqEvyO9X75dsIIOaSV5A3oYQDA8VdtDtkX61TRjnjitG0B3gAdcVnUOhb +GvJKxi49K5q/Vd7HtmunlRkiJPAxxXL3hBdqqPQy7lW2Hzj616N4YXCcenWvO7YfOPrXpPhlQIwR +6cissRrOKLgrUmQ+Jsjgd6yNI/1grU8UE9KzNHxvA61OM1ReG+E6+DlQK0ITwPrVCDG0VbhYAcc5 +rlhflFLcnkINUZyDkCrLnue1VHwx5rRMhIqSbs4FQr1GDU8uOeM1ACARWu+4ybeemfShmDDimb8j +kc5obIGRTW9xCsxOM1HgnPPFNckDPeno2R+FF7jDOMCjcORTXIGc/hUPmHPuKtaokkkIxiqcz7d3 +P41LLJncSfwrOlkbk5701sJLUZLJk9eaqM3J/I1Kw3cn1zTNmevrRzF2IDuzz604A4z3qXygfcZq +ZIGI+lDd9R2SKYjJwF59aleMhAKsJDtye1NmU7c/XNStWDMtlz149qhK45J71Yduc49qrSPwwPvi +rS6EvYax2jOaRZVHv/Sq7yNkdevSmZPXt61okZORczub170oCn/PWq8bEjJyferCkdDjNLVDVieI +YUgDpUE57GrSNxntUMib24ojoKWuw23DY46VQuv9YTXQW9ugiNYV8AsrDrVRC1ispywOa1oQPJ+o +rJTaSuB061twKPI6fSiW6D7LMW6HzmmQgZqW6wHb69Kjh+9WjehNNLmR1Xh4fvUx7c16E+Ran/dr +gvDSZmXrXoM4xak/7NeZC/tZWOyvbQ4O83NM3Peuj8PqdvzH8K5+7AM7DpzXSaCrFRxXPJ3mkbT0 +pnSqPlp2BQo+UYqRSMZruSsjzm9SMqRUDAirRPNQOQODVXArsu4e9VZE65q+QTz1qCSPcelIpGY8 +XNVZYcA8ZrVeIZ57VXkjosVcw5ouCT0rLnRehbgda6C5j7AVlzQZPrQi0zFlVnb09AKh24yrEhSe +SP51qvAAORVOaMdQMYoUh2KSuykjg46U9ZGJB70jQtn0xTdvlnJ5FV6C1W5PvOPxoYlgcdfSmGUD +HHBGakjYPgetUmIgAYEZ61o2MpJHXFRywKqFl71Vt53SQA9O9K7aE9GdbbklQKe3FVbW4RkX1GM1 +Y3hqQhjQhgW61WaPb9BV3pgDgVHLHke2K0W5DM5uCc9KidARu/SrEsZ6AdKgPAwQTVJkNETHt75q +RMY603Zk5/HmlXdjkcVpYyDDZHPvU6SY6/WoVVj7eoqQBT09KRSdiQOvJPWrUcihc89KqbcKBwcd +6lQN39aGgvcn8wN1qF/UcUp354/Goyccmi3Qewm5880oweSfwpMjg+4NBAYjH40W7Bco6oN0JweS +Ky9DsPNuN5HQ5rTv/u4wTzVzRYBFHu24zzWqi3ZHPOdrs2UiCIAKeo49MUzJfntTtwUZ967YLoef +UYrbjkCkSIqQTyTTlZTU42nBBrUySutyPKjPHenIYiORTsLznmoXwM8GqsmYtuJK1tEw46ms26sv +3bHpxVpZ2Xgc0tzcgxFSO1Q4tbHRTkmtTz6eELckH1q4RHt9sVLc2++ZmA71TlkZcjHSsYR95tnR +KV0rEc4UL/KqDrgEnmpJZWY5HT0pJdqxj19KxxDu7I2oRaREh4PGO1WrJWaT8aqhfk44ya1dMiXB +c/hXBN2R2w3NW3U4yammJ24FJBk5IH1pLrIGRzXFLc6EzNuG+bHqaruVA2g06RizdOKib52HtVpF +gWI5FNLElaWQc+uKiV9zD2q0tCWatqmQCe3arR3KfQVFaAtGSGAx1zTZ5iuF596lLUhu7EmlDE5y +WzVIyEyAjJwamaRCCRwTjrVUN89CL6GmrAx5/OqbsNxxQ1z5S4pBscbxjpVJaGT3Jo5tg688c1cu +1823D+3NYnnYfB/Kti3l8yLb1GKTiNvqYcq7QT71nsdzn61r342ZXj8Ky4V/ec10U9rkPV2NrSou +AO59a6WOIYHHNY2lxDcB7V0sUYIUd6zik5Nim+hPYwgkMfetVY+DTLOHCc1bVeMVvFNIxm9TLkUq +9NuI1Zcn0qe4T56cYw0JrjmrTOiPwmNEmZQPSuitVCoMVlw2+X3e9a6JhR9K6qSdjCq1sYeuNhT6 +4qv4YjDTqfepNbY/NkVJ4WjPm7u2aJrXUqHwM9EthhB9KsgZ61Xts7RVla36HMKBTsUoFLQAlLRi +kY0AISKYzCmSzJENznFY9/rdvCrbTk1cYOWxEppGt56gmq9zqMEKnLCuMfX76Rm2A7arSSXt02WY +geldMcP3OadextXt9FdN97iqRaJehzVdLPgZJqT7ODXRGKRyymnuBuIs0gueRx+NSC2TOfzqRYY/ +TvT0I1Imu25AFNW6bGSKt/Z4+Tjmk+zx4IIpXQ07MqQ35jkDdADzXZafexzouD2rkDbLk4GMGtPS +CY5QM/hWNaCaudNGo72OrkBZTt61HbvL0cYxU0bAgUyVhHg1xndcnFLUcbhhUgNSMKKKMUAHNFFF +ABSUtFACU1qdTHoAp3DDBrFlBZjWtdtgGs5QWYVnN9DSOwyKILzinsTU5UKOKgcVSWhLd2VJjgGs +C/Q7iTXQtG75JrK1CA4rOexcNGc5c4VS3pWDd3JAJH41taiSFI7VzN9gBgDyawVmzpS0Mq8kDsPp +VMjNTurcA/hTAhNdcXZGbjcjxxSEdKmKkEg1G2BVJkuJGabTjTeatGLEoGRTsdxQM9KLisAB60bS +TTsVIiYHNJuxSjcRFGOasxRbiMZFEEW4itm0sWOMjrilGEpuyCU4wWpXhs2ODtNa1vbKpBP0q9DB +HFHgrmiUqFJ9u1dVKjyM46tXnWhTuCoIVfWpYYACCe9Mt7ZpX3HnnjNXiCgweK2tdmUnZWKt58iE +DPPFSaVA6rzwrNn61DcFppVQc4rcsoQqqMdqzs5S1NZSUKdl1JVVeAfaraKuzFRmPJ/WpFVhx1Ar +eyONyZMgQYqRsdqgXOcAVNGrN1qWtbl8+liCXdngU6JeSTUzIepApyriquZ9Ryrk5HFPdRioxuHI +pC5PHeptqaKWliKQY61n3OSDjvWi6BhzmqEyHcMdKuJm31ILVNrAN0zW3DIoXnvVSGBHUHFPDbTt +pySZKk0W5pBt49KovIvamzShVxVNWkZsc04xSFJykaEcwPDcGhnx3qq0b5BB5qWPlSG6ihpC1QFt +vNPEoUc1E4IzUe9qixu22rlpBnmlbI4qGOUdOlOLkk+1K2oaJCj2p74x/KmjOMiml6Egk9StOOw9 +KZHMUIB+lSyEMTiq8yAAkDntWU46WOqjPU0lYMMilOQOKhsCkkRycMKlkDAMBXDJNbnoRZWLruOa +huQuw/SpSnzZPpVO9kKxvUK2xbOJ1Hb9rYDpmt/w+SCuRzxXPyTbLp2CqxwR8wz/ADrofDse5gM9 +OTXLW6I9Gj8DPT9IH7ta1tvesrSuI1Fa2a2S0PPqfEOGaglPapg1RSDmmQiE5GMUvmEUuCaNlACF +8n8KlibNQdyKsQAgZpoGKwYUzHepn5BqPtUtagiB85ppHBPtT2GTTTnaaCiE521VfIBq04OB9Kik +X5SPWod+haKDOcEfrVNw+cGr0iNio2XOB61m9jVFQoWGPapYV2KSamEOMU9kAAGKErDbKkiblJ9a +LeMhSxq2EXABHWnuoVDirt1JcuhRkwwI55rPljddwrW2HgkZpptvMGam9hoyraNmJYjHpWjGDwKn +it4xxirCxJnpRzJbCsQqrcY6YOalCHHfFWAi4AxRijmuGxVKHOakw4Q/pUmASae4Cxk+1SkTJ6GD +KN8h+taNhB8wrPzmXHfOc1u2Sg8nvU043ZnUlZGhCgUVla62IW+lbC9MVg+I2xA2PSu5I5ep5Hrr +fvmA9TWAxHBJBzg8VraxKrSMCM4PPrWIeOfU8VtG1tAle5KWx26d6YWHX1pOSOaaeDTJH7+1P3E4 +BboP0qLd0Az1yKGyDgjB60AWQxAP60ocdPWq+GC7uxJGaAcYJ69aALYY4xnrSPIu3AyRx1qtv6Ug +bHXpmgCYvvbk8nk1GzZ49qaW9sUwk5oGOJGT146e9MJzRQeB6HmhAKSASASRnqe4puTU1pb3N1Ms +VuMyfeHOOlQ0CF70A0M25mbAGSTgdBTaBjgePeikpM0BcfyaOTwP1ptGe1AhT25oz60mevv1pKAH +ZoG3nJxgce9JRmgBd1Lmm0UDHBjxTicdDngdKazFguewwKTmgQu40mecmk7UUAPDYpC2fyptAxQA +4flS5Kk5HPIINNx9KSgBwxzk49KeOuAw6iohSg0AOJOfeprZisn1R/5Gq4PfrV2zWOVyqLgrbzlu +fRCaNiloz6/TrWF40/5B0R/6bD+RrdSsPxkM6dH/ANdh/I1E/hY6fxo80mOT6VXK8GrEy4Y1ASRk +DivPd3uekU58YIrNfOTjmtGcEkkDmqEinc2Par0tYa3HRcFR6VY9fpUMSEGp+cE+gpaDZXcc8daQ +jOSMVIUBwc4NNZcDHtmmr7ksryk1TcnOOlW3YkEDoDUIjLMeOpq3LQSQwKzDHfFSJGuOmM1OkIUc +dhik+7kHpUDdipMiAdcn0qlIf6VfeKR9xVdxqqUY54q1YV+hWcZ6ZqFw2cdzV0RZ5PalMAIPpimK +xnGPIOBipIoRgn6VOyKvapI8HHqaLisiS2UDHtipdRJWLipIIeKi1MEJx7U4pXuJvoY8Kj5s9c1p +WON4Hoaz4sg8/jWhZDD8E9axmdK2Nm4OYe3TNcjeZ8xsjvXXTqfKbPTFctfphifTrWkZLRGNtGyv +acuvGea9K8NrthHbgV5raKRIvPPFem+HyfIXPHFZVv4sS1/BM/xOScqT3rO0bG8e1WvExzIBnmqm +i7hIv1qcW9LovD6QOwjA2j6VPEccelQRj5RRuw2K54JNCb1LLMT0quwzUuQBUO7J/GrS1JIWByag +KZIPpVlyTntVZixOa2SEKuOcU4qMZzTBTm+7x1oQMpyONwFPjkBzj0qKWNic96bFG/Oe9DQywxLD +NVzlTmrSpj+lRSDnFNRuS2V2OFINU3VueOKv7QeT+VQyAH5QSBVoLlLyySM/jTtijinuzCoXc9cd +aLXHzEgKDA4zUoIx6daoNKdwB6etTCUbcdqaXQkc0gGKqzTfe46/rSl+efwFV5QT24oSXQbKb9cA +1Wl4/WrbjHHX1qlKTnINWkRJ6ELYx701eeKUqx6ZJqWND3zmq2RnZ3Fjbrjtmp1jLkGmhQDx3qdA +QazbLSJ4V2jBPSmM+G/madkHINQPnPHSmkNs1oGzA1c5eYMrd624XYwn6Vg3J/eMaqCFfUiRQWA9 +63YlYQ56cZrFiwz10UcY+zH/AHaHrJITtynN3Wd7Z55pkI5GfwqW5+8QeuTTYPmYcdMVo9hU1eSO +08LLmRfbFd9dhfshHH3a4Xwsv7wEV3N8B9lP+7Xm0V78mdWI3SOEuAPOb/erqtE+4uK5Wfd5x/3q +6vQwNgrmS99G9T4DoAOAKXigA4owa79tTzwJqJsU8gmo+d3rRuAu305pmzqakGetDZpXApup3cc1 +C8eRkirjKc80yRRiquVcyLiMDNZ8kOa2Zk7Ee9U3Tn1FSrl3MWWLJxVV7cA55rXkjUkkDrUJi64p +9SkzFlgJ6cVnXMEqDPQH0ro5oxtIPJrLnR2JU5wKpOyHuY/PGf4RUkcvIwelTy2x59qqOrJnPbpT +vcmzRoibcuCapuArZ4xVcTSLVhW80c8e9MW5p2Fxkda11fC7q5qImM5FbFncBxhuKTQGhG4Y81Mx +FQooONvFOZXTr6ZpJ6iaI5FDZx3qnJGQfx61oLyMGo2hVuv4VpGSZm0Z7AihenPQ1YlhA5quc9PS +tomMtCRTH91s/X0oKYYDsRkYpsYJzn2p24jC0iugocBsYq1GBgZqmNqnoCx9c1ZjYjJIABPSiwti +1hCKrtH+tSB8jjjFKOtJ6K40yhKxTIHvUKTHIBNXp4Cct61T8gFu4NF7jsSCMTkDtWjDFsQKvQel +QWsW1QTWgiZziuyitLnnV371gRSTUskJZeB9Ks28AxzjkVKyADFdMXqcdRGL+8BGTxnpViJ2GR6V +YktN5zTRGsZwa2vdGK01BNxPNWdiMKjCEYNITJ2qWyrdWNeBDnA57VlXJkQPnp2rSkaRfvd6o3JM +isAMcU1ewXV7GHI+d3NZV0F5Iq5cu8TN+tY1zc59hWMmknc64p3uiGV9rYHJpGLSKPpUakuw9zWn +FbiRVAXPrXBUd3od0LLchtrYsFAHNbEUaRIRjHFOjt0gVTjnFI7HOe9cc13OmDXQtRP8vFQ3EhAz ++lTQDauTVW75571y9TdFJyCcjoc81CNu73pxAGcZqP6e9apaDHsQ1MiRS1HKrTrYvkrn5WO7FUlZ +Etl+M+WuTUEs5kf6Co55z0HYVXDgnOTyaSiQtyYFhnv3qMM2c9KcuSDjrTX7GmipMiuZG4FEc7xp +g9CKguNxYH9KillO0AVso3SRi2TjDvuXnmtiykGNtc/byFW+tbFs5UFqmrGxUXoRaoCXJx3qtaIJ +GHFXrsecu8d+tO0+2G9fTNF/dEtze0u1wgOOwroLSHcQPSq9pbjylI9BWtYQnqRVQhZamU5dS5FF +tAxVnZgfhSrHwKfgjNbqxg7mReJhs0kYLJip70ZqK2U5we9cdW3MdUPhHw24HIqdxsU56Yp6IU5q +G7YhCK6KdkjGbbZyutyMzYGetbfhi3KRq3rWFe7ppwvvXYaLF5cMY6cCpesjR6UzpIOFFWVNVYTV +lc10I5iUGlFNpc4pAI7hRzTA4YZpJU8wYNU7u6jtIiT2FWlfRESlbVmf4gn2wEA8kVxUNy3mlZhl +M9avapqkt65AyADVJUJAG3r613QppRszjnUfMayQWzgNFjkUpjCe/vVKGOVPuGtCF16SD8alylDc +XLCY35m4FSKmamKQ4yKblcZFUp3Rm4cr2BUUUoC9KAVpMDtQK/kSALS/IRyaiOeKbkc560WHfyHO +EqJZ/KYFTg5pHJzUMi07aagpW2R1Gm6gJgFPWtVlWQVxVjcG2kB7V1dldJcLkGuSpCz0O6lPmQ6S +YW2B2q1FJvAI71DParOOaWILFhM1izUtUUi06kMKKKWgBtFLRQA2onPFTGoZO9AGddk1BElTXAya +SIdP1rLTmNNoiODUBQmrbCm7RWiMyv5XFZ95ADurX29c1SvMBWI9KGrocXZnn+soA5AHA61yt3Gz +PxXWauu93x71gy2wyCRXC3Z3PQgvdMYwA9aiaFUP1rWkjALYHOKoz8Hn05qozbY2rIoybc8VXbkm +rTAZPXGOKhKsxH410xZjLUr4pNvrxU5Tqabtzj6VpcycSM9BxSgY5p20dvpUnlgAHpRcVhqoTzUn +A49KiL7OAaRJPmGenPSizYm+xftGzIMjArrbSJPLBBzjpWBa2oZA45PetXT5yjbGGK6qPuqzOOqu +fY0yq464qsY/ObZ2q0xVgasW0Cr8xrfcxUeXcYtukSgCqlyVRTzya0Z3WNWbPQVkRpJdzZ/gz1ov +ZBGDbuyxptnv/eN1PSt6GBVXimW0KoqgCrwAC/QULREVNWRoqd6eQoGRQAp70c+lUZMI1OTUyqVG +KZHkYqTDHGaAuhdvrSlCaTBHNPGaWw00M2ntTRnqRmp+lNyuMUBZEbhSPrVCUIDg1osRVGVC7nAq +osTiOj3FTtNL5LMAT15pYeOOlPYkGi4pJWuinLDjr61LDHDgHFSSYZenTBqJMgD9RVbolS5XcndI +wOKiCqpzRkjBPQ013GTgg0khynca6fKTVR2VeKusdygY5qhLG27k9KLa6lxd1ZAr5OatJ0JJ69Kq +xx5zVtVIUUSYRTFYqoAz71HhsD3NKgLsQecVaCKMUuaxXJd3Kggxn3FJJDgHvxVjad3tSyJlcg1D +1LWhmxO0BIFXQzFcnvVSRNpyemanWT5APauStFo9ChNSQzd82TWZqrfI2D2zWgDyaydYz5TH24Ar +lvY61qzjZGDTt9a63w2DuBA9M1yOD5p+tdt4aXjrxmuat0R30/4bPRtNX92v0rTBwOaz9NU+UtaJ +xW0fhPOm9Q4xmo2INOPSojycVRCGs3PFGWxSlByaYM0DAcnmrMYwKhHJJqdPujNK4McTkUw9qfwQ +agdulDBDiBUTdDT92cCmuOOKnzKREw+UVCQSv0qwy5HFRkDBqZFIqupPFRtGcgVOaRsZGah7FjRG +B0pJIwcAVOqkfjSkDg0WuK5VERyM0ky4Aq0FDEZolQEUx31KKjIAFTBMKRinKgBHtUzL8tJbXGyr +jaelPjGSDQwoj4rGTLSLAGeKjdTzjipFyCKVgSacdiXuV1GDS3PEJI6Cn45pLmP9yR6itFoiJanP +Jkyk+prorDO0A1lxWRzu9TWxaxsgGaKKszKs7l7jFcx4nkIhcZ7Gul3HFcp4oB8mQ8fdNdWhhHc8 +i1DbJK4JA6cn1FZTjGOK0bxyXcj1NZxyfc1uthS3E7cUZ56d84pxxtA24OTzSc8470xAoU7stg4G +PzpuT3pSfT0pKYgyaCc49hSUUgHByDk980m6ko4oGLmkzmjHekpiFzSUUUAKCw6HHBFJRUjAGJH6 +sXZT9ABigCOiiigAoopaAEopzBQxCtuUE4PrTaACinKuTzwuRk+maaaACiiigApwOD+dIdvb0FJQ +AtWLO8kspGljUFyhUZ6DPt0P41XpSVOMDHAB+tIBMik6Uc0UwF56UCj6UUAHGAfrxRxg+tFFABRS +q23PGcgikoAXtmr2lKrzTgtjFrcMD7hDVH6+lWLMOWl2g58pzkdsDmkNaH2ItYvjDH9nR/8AXYfy +NbS9qxPGGTp0YH/PYfyNRP4WVT+NHm1yvP0qowOOKuyAk/jVZlIPFee2emVJVOM1Rx82e/StSdBt +5rNYfMR04p9AJIlGakZQBg96ZEegP51OwB+uKtdxMgKDioimcCp2BqaKIEZbsaLu1gKiWfQnn2pP +IRSTitPy+OmMiq7qBweuaSWlwuUXU5HFV2UE9M+lXJMkED6VCiFsjHFMRAYgVz07fSqrx+mQRV9g +FyKhVC5JxwT3pu1hoqrGTyRTpFAU4q8IwOKhkQnNKINmW0ZP07VJDCS2enpVvyQOvFPhjIbpTbYK +xJApz71W1aM7Pr1rSiXLDA4qtrCMI/5VS7kdbHNxLjPHOa1dOiLuDWdCOp6itrSVG9c1zzep1taG +ndpiBsdl5rjb/O8jt3rur0AQke1cRfKdx9M1utLHNBXuVLPHmj616ZoS/uFPX5a82sh++Ue9em6G +uLdT7VjW1qxNNqRgeIyRL70zQwdwOOtO8RgiU896NCzuqcXoiqHwnWR5C8dKYw5/GpY8YApGA9el +Y01oS3qGCRUbAjBPvUnPA5phz3rVJ31JIGZqryHHHvU0mAfwqvn8q0u7XCxInUHtSSNkjHtQNxBp +OKNwI3JwRUatj8DUjKTz0pvl4GTTuAeYSaY5BJ96jIbJzxTC4B5p2JFLAZFRlh60x23HpULkKcE1 +S7CGySAHFVXfOc9ulSnD5yeOaqzBcH0pse24zeOTTlI55qtuAOPepI9zE4zzSd9wTLG4H6Y4odgV +PqDnNCxN3HFPK4GCB0pLcq2hnzK2eO9U2T1+taMxUH3xVFyxOO1aRbMpJESqATThnoPxFNHFSqox +xTYkCk5OO1WUXvjpTERc4xyDzU5ATAzx7d6hblMfGuR/hVedCrZHWp4zjvSOgds01puTIYm8RP8A +TmsaU/MR3ya6Z49sJ+lc1LxI1VBB1Ftz+8HvXRruEBHbFc7bD5wSO9dOqHyM9OM0X98b+E5e6B3s +R0zTLfJYCprsfO1MgGWGf0qpPQqnH30d34UGSPrXZakcWxx6Vx/hQDeMd8V1uqti2bHpXBQ3kzXE +fGjhpCfPwfWuw0QDy1+lcg2DN6812ejYMS/QVzLWaOir8BtdqOcCk54pRzXajz2HGPrUYwelSUwA +Amnd7gIaKdSNnrSAY2T0qNlyPepDSEZxjimMpyQlvwqnKh5ArVdTg1TkSmNMy3jwfWoSuQeO/StC +VevrVYqPzpPQtMzLlSBwKomMHnGec5rTuR1WqZUZwf8A9dNlJlSWLPBGayrqHGT6VuTdz0rNkBbJ +PSi9hrUxnTn8ealhwpFSzR9SOvWoQzJ0Gcdaq7E1YuqMnH6VYjJUjjgVWtn3j3q0egPU0X7iNWyn +yQGxWm0fmLmuZt5HRx0AzxXTWMqSqAT0FDVhMrmJ0x9aeq8EntWg8S4NVCuDjrU3tsFrlGXBwAKr +OmckCtFlA5xgVEUXnPetIT6kOBRA2DFN2sxzjjFXGgU9qjaPkfWr5iOUrEEfnUynIGetBXvionJX +pWi1MpE4LDg81Mrniqscm4DJ59aewPaqdhXLXnLjFViVZ8DvVGSVwx5q5ZKGYEjmpSV7A3ZXNGNQ +q9O1WISOlRqhPQdatww4GSK9CCseVVmWYjx9am2buT2qKLYeM8U9pEHQ1rY53O4uDwB9KY9uvXvT +xPEo7ZppuIick80rMei1IzGSaDHtHvU/mJjPFNGDnNNEylczZ1Zj0qnKpQHNbbwoVrPuo1VDmrUu +gez6nF6yCMkHHNc5OSc8c10OsyfMw681z+7c2MfWuTEO0j0KC9zUfZRSPIAOTxXVW1oIkDH24qho +9uSA+3titeckKE9KxjB/EaOd2oogmII4quASQD+VT8cZ61ESHcVw1nc76SLS4VAOvtVK8JxjFXuC +v0qhd5Jx+tcttTdFFiMfhUeVAOac4A571AW3d+p/OtUguDvjIpIGIPH3s4FQyMR/PNMMuIiM87gf +51soXRlKRJLPvY+tAfsPxqmpwxP41YRjj8uKuUbEQld6l6E8c9O9JIe45GOai8zauBz9KN2c+9Y2 +1uaNleU88dOaqO5zVq6G3HvVHNdNNaHNN6k8HJq55zxoAKpw5Bz6VYf5xjpUzWpcdjR0+QzB0fHP +StvSrRlfB6ZrnLElJE+td1pduTtftisJRTlYtuyNq3jCxKMVq2ceFBqnAgAUVr28fGAK3S2OaT0J +UQGo5cKpq2iYFV7pVVTmrIMW5bLYqW2xVaYhn4NWbfjFcc0+c6l8JakYAVk383ykZ7VoTE7TWDqc +uFIzW+yMUrsq2kfn3AJ7HNdnZJhVAFc1okBY5xXY2cXApUtW2VV00L8CYAzVnFRoAKl6c1uYCgYp +rk1VluisioO9TM3yZNVYlsz7zVIrb5Sea569vJr47R92pdVYSTEe9MtUA7V2wgoq5wzqc0rMqrpw +HLD3p3kRrWqTGQaqSRqTnv1qot9TOol0IVjUYHrVqOAMOcVAq4YHmrUcm1sflRImDs9Rr2uANpqZ +IY1T5sZqXzFIFROc8ZrncHe6OxzjazI2Rc8UoiyQMVJbRPNIAfwq3JHHbkbqPaW0e5Ko82qK5tkA +5FVpYgOlajIZIwy8iqbDnFEKlyqlKy0IIrUyA8VL/Z4wM1ct1wuKsbNqEk1E6sr2RUKUVHUxJbSN +WOelWNPuUt325wDUN04BIz3qhJIRyK0hSbXvEuqlsdtFMsgyDUNwsu9WX15rL0a4DLgtzW8CrCsZ +R5XY2jLmVx0WcDNSVCHAbFSiszQdSUtFACUUUtADTUTjipTTG6UAZ06/NSIoxipp1pkQJNZ21L6D +XGKYKsunFVSSDWiIHMOM1kakxCNitVmAFYmpOCrAGpm7Iqmrs5S8GScDn1rMlh2/M3p0reeNPmJ9 +6zJ0BbjnrivNlK7O+JjSRDd71nT2/JOK3ZrdickY4qpcQLz9KpOxW5itDGahaLGcitVoV/Wq5gJJ +HUGtYyZLsjP+dQ3T5l29BUIiJFbK2ErAEqakWx4xjnmumCk9jnnOKMTytmc9arSvzW5dWjR/w1hX +CsGx0xWig1uZOd9iHJPP4UsZAOaQjtSDNWQdPo0/mHYTjiteW32kOvUc1y+lb1lU5711+792CTk1 +0U5XjY5qseWfMhtu+TtJ71oiTYvUcViO3ktvB+UjpSRtc3bY5C5Aq1PlVmQ6fNr0Lrl7+XYmdo61 +rWtnHCoA9KhsbYxgEcHpmtBYsAHOaqO+pFR3VlsTIuAMGpl24xmoAvHXpT1KkfSrsc/UUlF6GnBm +PbtSxxK9WvKAHHpQ3YqMborKXHWneYx69qWTI6VCj5OPeqWpm0WA7HtTg+TyOlSQJ79amMC+lZuS +vY0jBtXKwlUHHagsh6GnOir19ai2rnjrVKxD7DjwDVZSCT60994BIqvGzI+T3ppCuSZINSFSwFJI +MjgU2NiDzTY4PoxQOx7VGyBTmp3HcdOtGwMpoTFJWdiBxuGAahRHB+lWFHOPSpvLUrkHJHUUN2CM +XIqZP4VHKgPJ61M4AP400jOc/hRuXDR2K69M561Jk4FM2hSRSkn60ty3ohybl/HvUnmkgVGmW+lP +A6n3odiVJkq9QKHyBSL9aRiTwOaktXsU7hCQGzTEGUHOMCtFov3ZyKzgNjEZoaUlZjUnHYapBzVD +VlUxMRnpWh/EazdWmxEwI6151SNnY9elJySZxgyJmznrXa+GmG4D2yK4pTulbjG5jxXZ+HABJH+t +efXaUkepBfuz0ywGI1+lXDziqtjgRL9KtV0RWh5snqBxjmoQMtU3BphGDVMlMa/Apg24pWORyaF6 +UtGMFOKnBG0VCFqXZ0prYGHbionGCKlIwtRMC9RIpDE5Y85pz5oVdtKanoPqI33QKicEipJe2Kjf +nFDY0QMCaaMZ5qc89agP3+Kh6MtEwGRg80wnBp2/j0qLqxx2piJhgNSSNzjpTe4prnkd6Td9hpDl +UGpGGAKjQ8g96e5qVsN7lZ859qZHnOKc5OcE0xSVY1nI0RbjzUpGajjxgetTLjrVRSsZyZFjmnXa +gQ/hT/l3VHekeURVv4WQ9ypA2cCr8eeKz7fIxV+PPHtV0mc9TcsY4rkPFshWCXHoa68Ala4vxgSI +Hx6HmtiY7nkl1uLMcetUyO3fg5zV27yS2B/9eqWT/wDXrdCe4uAQf0ppHfFLlj24zzTv1xQIZtyQ +B1PQDvTcfzqTO48ZpQh49+1MCI8ZptTFaaRwcii4rEdFTNBKsUczAbJCQuCO3qBz+lMXaCcgEEYy +e3vTCwygE8gdxg0UGmISiiigApwdgjJxhiCT34ptFABRRRQAUUUUAFFLQcZOBgZ4FACUUUUAFFFF +ABSgZIHrSU7Ax17UANopaSgBe1JS0cUAJRSnI/EUlABzTsjBBAPGAfTmko9KAE60tApSSTyPSgBP +erdi7K0uMfNEy8nHXiq6YJw3QZP1p8WCWUKec+5AFJjPsdaxfGAJ06PH/PYfyNbS1jeL8/2fGP8A +pqP5Gon8LKp/GjzqQZOPrmoioqy6n86hbA/CvN2PUK0icEGqEyAHA5NacnrVGQHOetCYEKKd2KcR +z609OD0qRYyOccVaYiuUYnNW4VGBTSgLc9KmQDtnpTe4ugNjtVSXqcdj1qy7EVWYgnHegSIdm4kE +c0CPaCO9TAc9O1G05NUhsz5FJwBxSxRj61aaPNRAKG/XNG4ttiMq23iopFOB6dKsvgdDUchBoSC5 +XboPWpIlzg9KRE3ckVZiUYB/Skxj4oyGHuKoa0vyda1o1+bNZmt4wKq/usUdZI5+JcAnHatnSUPm +LWZCikVv6MgLjtiuVyuzpnoi9fqRCfpXFXwBZj79a73VQFi/CuDviC7c+tdc9OU56LumVbNT5y/W +vUNGXFsv0rzGwG6ZRnvXqGk/Larn+7WMlesjSppTOV8SL+/+pPFS6EnQmovEJzcY4xVrQsAe/FY4 +x9DSgv3Z0y8LSYAxSrlgKNuT9KVNpIyY1sgE/hVd2YZqy3Sq8v8AKtbCK7tmoDgdvwqdx36dqYke +QT35ovoA1M9M9OadgnP51JGq5qXaCeKbuthFUq2cHuKTLAFauFBtBqsdoOD71XK0hXKsi8HtzWdO +XDd605Bwaoyldvqaq/QLFYFjgehqGY4wasEqvU8iq82z6U1cCsJcMSTVeZ88DPXmnspLGnpAxIyO +1XzCcblSKJ3ODx71qW0CqBmnJbKo59qeOKTuG2xIw2jI4qtKeOKl3MOtRvyCRSbEmZ0ofqPWqk3t +x7irszYz61QkYtn6GtFqZshyfu9T1qwpJGO/GagUD29qsxqenah6CjqSxrzk+mcVIyhveljiYAZ6 +VL5YHA7mkn1KY2ONuB2qQBRj1zT0B2nNROckc1Vuorlid18lx0ODXMyDc7fWugmT9yf1rn24J9M0 +J6DS1LNkhaQcZrqGixagg4+XrXOaex80H3rqpebfpjjpUR1nqOWkTjLrHmMO+abb9efX8qfeA+Y5 +I5yabbht6/WqlszWj8SO+8Khcj1ro9YbEB7jFYPhYcKa3dZBEP4Vw0FpJout/ERxq5MuTnrXb6Rx +EMelcZF80v8AwKu10gfux9K5o/xDet8JrdVFJ0pfTFH1rvV0eeN4AFNwDg96e3HNRKxJFNgh/PSk +65pwIINIB61IxrDAqMHmpTk8VGU5ptK4IXgioJYsirKgd6jkxzRrYOpRaEMce1VZINorT28H1qGS +M1RSZhSxZy1UnQD5sZ61tyw8k9qoyw881LRaZmSpuB9aoyRgDP51t+SM5rOvIiDkduDTWo72ZjuO +T2qq0eSSOlXpkIPTj0qLb1ppaF7leIMp5rSg2nGapN3x2pYpdjDnFG+wrWLs6BBvWrunXZUgGq6F +JUwOSe1RoFiZuxAyPehaoho6ZboOMe1MB+brWRDdnI5xV3z845p2ROqLpClPUjrVQg5x6VPATJ0x +Q8ZDc96WxQgC9CKayqR0pAM+1PK4wc0r9gaKkkRzxx6VWmiZea0GbHvTHCuefStYydjCUUZQJHFP +MvByfpVt7XgsKoSIV3Z/Cto6owkiNyrsv1rZ0+AZHvWLCpZ1GOldTp0eNua0px94yqysi3HbBeaZ +cSEYVa0G2hareUpbNehT0Wp5FZ8z0Km6QjgHNG2XHNXvKQkDHSpHjGOlW5EQj1MoQu3XNBt5CwGT +kVpCMLz6UqqMk/lT5tCXqyOOzbgljT3t5UUFT0qwkg6GmyyrjHpWetzfmjyma0syEg881Wu3d4mJ +4rQIVjkjvVLUAAhA6YrTS5mm7HA6uHVz75rNtojLIMjitXVQTJwcjNP0qAFgeMdzXDX1nY9OlZQ1 +NvT4RHEMCluBjtzVxEAUAVBOhJonpCwqaTlczZRsTPWq0ZYMOc4q1cnjAH0FUsbfxrypvWx6kEX0 +w6YAxVO54BAGe9TWz4U/TNRz4PzHv3rFtGiRkzZ5FQqHYNgEhRuYjsM1PccMce4qm249K6IaoTIp +MH3NQTEjAII71NISDkcHvVaV2Ygk5wMc10wRz1HYVSM1YT8aqqeasJnr2pyQoPQmZyBgVJAwJHFV +y3qeKdB9/OcCsmtDS+oakVDBRVECrV8wLnpxVXpW0PhRzy3J4farUZB6/h71Vhz1qYZyOaiW5rHY +0bKPc4HPWvSNEt2MSgiuD0eLzJkAHcV6xpVrthQY7CsI6zHUdoiLbhWBArTtkwKDDg1Kh28V0Wdz +mbJDtUVi6jcjJUGrd7eLCpyexrnJpjM5aiclFDpx5mSRfO5NaMKjrWfbITitFSFHNccW5SOmeisR +XJ2qTXNT+ZdTbB0zWtqFzlSqVHpNlK772Het5aKxEFb3mauk2flooxXSW8W0DiobO12AZFaKqAK0 +hGyMJSuxAtDMo4p5wBVZgSxYnpWqRDDyI9289ap6heCFCoNLdahHAME1z93ctcuT/DW9Km27s5a1 +VJWRGziR8sec1Kp4wO1NjVM8irCBOuK6mcW7I/MxxS5FPwhPSjC+lIN9xnQg456UvANOyB2pnXmg +dh4YdKcexpFwaeSO1SVbQtWUqpIM8VavsOARWWjY5p0tzJjg8e9YTg+a6OqlUXLZmpbzRJFtPX0r +OkZhITggE1Sh1FIZQZGBGauz6pZyrhBzXLaXOdf2bgbqRCAnSke8nkG3pxVUS5J9KcCe1dsaaR58 +6km7ETh39arPDIau+YQCO5qF2at1cwGW0k1s+R2610lhfLMoB61y7B+tTWt09u4J6elZ1KfMrm1K +o4ux120lwwNWkYGsm1vY5wMHmrasQ31rjcWtzuTLwNLTFNPqCwopKWgBKYwp9IaAKk68VFDyasyj +INVEbYxBqWV0LLAYrPnODV1pFx1rJu5wM80N2ElcinuCAQDWRPufJanzXBZhUB3tnniuepO+h0wh +YqSpuBGcVUeFR2rRfA4461A4Fc7iaqRkzxE5rPeEsea3WiJzjvVCePZyBVKmxe0RnC0ZyQB14qWO +1SE5cVet+30p72ksjgnpXbh6EXqzkr1mlYrMBIMIMY4qNYAGywq+tq6A+9Oe3fb2zXpRpxR5sqkj +DvowynA7YrmL20ZTurtrm1J7cVk3tixRuOgqasI2NaVSTZxjKc4pyoepq/LZsrc+/wCFIsCKfmPS +uFzR6CgLY+aGUjpXQxzSOgUcnGMVlWojDbV5+lblrFjkD0rWgpNmFdxitQjspJhmTOM9KswQPbtg +8CtG2ifA4wKttZ+Yp/nXb7NI891ZN67CWrLw3Wru5McVmxQSwEj+HNWRuYdelPluxudkSFCeR+NO +WM4POM0LuwBU4Xueau5g1cdGduOalEqnjNRqik0pRBg4qbaj5mkDMDUYVFb61JsQg4pAg7etMktQ +sAas+YpFUlDDpyaeN3pUOKZpGbSsEu0knNVgDuJHSrB96Z8g6/hVozbYhVSPaqzgFuB3qd2wDiq+ +9c9aaTE5KxMhTbg9u1R7l3cHpVeSRgeKkT5wG9+aqxKdy4m1k9TTScHpwaIyBxT3Ax9KjqavVXIJ +ARyO9CyA5705hlarZOT2otclNokk20zBPajeGB9asKuQc9hQ9C07spSJjJ6VEF3EYq9JHkGq6hV7 +Uky+XoM+73Ip46UjfMeKf7029CYrUXj1p0e3OfeoyCAcUqkDpSsVzWZbkYFQPas6aPBJ96tbsj60 +11DDBpWsClzMzmJDVj6yT5ZxjpW242tWNrWDET7Vw4iOtz1cNLSxyMO7zD9c122gfKVJHpXGWgJm +59a7rw/FuK8Y6V5dXWaR7MdKR6BYTKY1FXNwqpaQqiCrWBXWkeY9xcjFJkUhDYOKYDg80XFYRjxS +KTSMaWkOwobJq0CCv4VWQDvUqk0XExT2qNjhqcx3Y9aa465qXuNDQ2SaUcnFNHSl7g0muoxs3GM1 +Hg5GamfnGaQrzxU9Sk9Bjjjiqpzuq2zDOO1QkKz1MkrlRGspAB9KjB+arDKaj2DPvQ+4IjcsGBHv +SgA/XFKVOaVV5P6VJQqinNxmhQQae2D0oihMoyZB96Rc96kkXBqPac1DRoizG3Yip8gCoo04zTi3 +HpVLRXIerHgjPNQXrDYKeDzzUN8PlXmm37uhPUZbAsR+FaO3biqEBGFxV8sSgJrWktDmqPUmU/LX +D+M2xA/cV26/crivGKjyHI962JhueSXBGWH1qofxq9dKOcH0qicfWtUJjl5HuKVc88dhTV9akXIH +XkUBceoyuzAxuBz3oIx0z6cUbs/nTgd2T9BzQhMgYY+tJzkde1TsAefbmo3AB4/CncdrgdixEb23 +HgAdMdear4NSEHNJjrjjimIYep4xTcU4ikNMQhyOPekp1JTEJRRThkHI+tADaKXFJQAUtGKOe1AB +Ti5KKmAApJz6k0nIyPXrSUAJS0Ue1ABSU4EYPAOe/pRQAmKXjHfORilH+NJzQAZ4x+OaTFO5H1ow +TSAbxj3oHUYOOetLilUHDEHHHPuKAG0YNKB0z7cUZOaYA3YA5HX8T1pACead6Y7UmKAACj1wPwpV +BY9cY9aVd69OMjGfrQAilkcHHKkcGrMDZuCQQNyyH0AyD+lQrGSQCygEgZJ6VNBIXcb/ALscUmMe +ynFJlR3PsJaxvF4/4l8X/XYfyNbK1j+Lf+QfF/12H8jUT+Fjp/GjgHNVWznjvVl+T0qEpj3rzWr7 +nqIhcZ6/nVdk65/CrbDI9KhKjOOtS9xkEaEkfrVjaKcFA56e1Hpiqv0E0RlfalXtzUhAPTimlcVV +76CIZMA4NVgpznFXZFyue9RBCOlMSDgYzUZBB3DpUhDfzoUcdKav0BleQgDA6ntUG09asOBuyKiK +leRVLYRA2BzmmAFzz61I2Dn86VEYCi9tGOw3aBT4wDn+dDY4BHNSR4IAFDV1YRLGDn+dZWtnHB6V +tRAdqx9cxRsmOHxIxoACFwMcYOO9dHoaAsOMH1rAtlUcepNdPoi4b6Vy3946Kq0LerjERA67a8+v +1IZu3Oa9A1n5YiR2Brz++JJY++K7Ju8lY56Hwsj00ZmB75r07TFItlz/AHRXmml8TJ6k16fp+Bag +j+7WD/jo0qK1M5HxAp+0HHPNWtEQcevWqut83B+taGhpwPbmscXq9TWl/DOhXAXPU0qseaACBmhQ +f1pR8jFjGNRMOPWpX+lQE5JHWtr6CRGyg/jTQOOOBUrKMgUFQBQ/IBi55J6VInJAxTQOwqRMg4pJ +tg7BKpwcVVkB6Y61dcErx0qjMSM+la7kFKbOdvSs+UnpnpWg43E55qFbdpCMCi9kUkZjF8k4NReX +K3HOK3jYrjOKg8kA8U1eQNpFKOzxg1IYlSrm0gegqEq3HBpqJN2V2IxxURz0qcqwyeOTUZUkdO9V +dXAjCZ/CkZAoxjirCL0z0p7ICDSvoJ7mHcpzmqLhhxnvWvPCc4+tVhancOParUrInluVYYGY5Par +iQYK49auR2qqvOAKjI5+Xr0FLVhotB2NoIPX+VV5CwxiraAEHPWomQAkGhWBoarseoPSm7NzAjsK +fxipLdN7Z6AVpeyISuyG6R/J544rnznc2K7DU12W5wMHFcewOSemTSvoXEu6apMoHXmuuljP2bI9 +K5nR4t0q/XNdhOrLb/8AAamGs2KpokcHep+8I9+tR2qEuv1qW/yJW9c0y0GXHPpSl8LOml8SPRfC +6gKOOa1dbfER+lZfhcnYDV/XiPLOfSuOhfkkFX+KcxEw88DsTXcaV/ql9q4O1AMwzzk13ulDEage +lc8U/aaGtf4DTAoPAp3YU2u9bnAI3NMCr9DTzx70mDQAY4+lNxUgzmk2jOakdxvPWk4zT+OaaBmi +6GJjIzTGTipypNNI4p2Fcr7B2pjx8e9TgY5oKk5qhtmc0QPFUpYxnJrYaPnpVWWDk/rSQ0zJ8s5O +aqXMPDcVryRBeRVGZM59aEXcwJbfk571UlhIHI5NbkkR6jmofIDnJxSbd7FpnPPGygGonHrW9JZq +egyBVG4ttq5ApIsgtJihHOK0TH5oJXuKxyhQjFathOMhT2qpO2xNu5EyPEQCMVMk2OOtX54I5QD1 +xWa6lCQauN5GcnY1LG5CHkgVptIki5rmEkI6ccjNX4rrGAT6VLjqCZcdsN+NPBJPrSRhHG49Ksoq +gYxUpO9x3IWRTiq7xHqOlW3G01BIxPT8apaMljVbjmoZVR+Kn8tmBwOaz5hNEfWtoS0sYTjqOhts +PkCt6zR9orNs8yEGt62j2qK76Curnl4qVtB+GxinohxzSdW+lS4zXUeehyKDg0PjmpOAvvUO4E81 +K11NJe6rDXQ468Uz7qjPenNICRSFlPBqkZEPzL24zTW5INSOwPFMUqMZpha5C2Rx61RvlYxnmtOQ +Z5AqjdY2nPoapO43pocNqUZ3nNXNJQIBu5yaTUowWNXNMhBUE+tclSPvnoxd6asailCKr3TjkjsK +urEqjNZt+eDxjFZ1vhLoxaZmTuNxGcmq0zHbwcU/kvg96bcx4UDNeZUtex6UFoFrliB6jpTrnpgd +KhtioYVZuVyvHasPtGxkTc5HfNVOat3HciqJzkD3rqprQzZG+OO3FV5SxYsTknkmrEoqq1dEDnqg +nWp84wM1AmKl3VUiYbEjEECpYGXgVWZuhHb0pUbb3xUON0ac2ot6QJOKgFSTtubJ5qIYq4q0TF/E +WYAOjHrTw2Dgd6gTNW44nYeYTjj9aiW5pE6jwxFunQkeleu2K4jUe1eQ+F5glwufUV61aXEflrg9 +qimtWKs9i1MQtULi8WEEk4xS3t5GoOTiuY1TU1YbVOea1k1FamMYuTJL2/8APkIBohTcBWfZwPK2 +5q3FhjjRAGy55PsP8a4Zzc2diioqxJBHt7028uBGmKUybFzVHbLdS7cHk1VPREtNsjtoJLuUHHy5 +rsNPsUiReKg0vTFhQEjmtxIwBgVtCPVmVSfRCKMdKczBRk07G2oZXDAit0jBsgS73yFB0FOuJkjQ +nPaoD5NuC3Gawr+/aYlEPFbwp8zMKlRRViC7mNxKQDxmnwxkgZqpH1z3q9EzAV1NWVkcbcWTCIY4 +pRHgGojIwx6UGUngGlZivEm2jrSfKBg1AZWGe2BUXmMTzT5WHOuxZLR5x1pMjNQKam3LnkUmhqRM +GUcCnZQ1AWXjJpruq9DUtWLi3LRE5MeODVa4cBSKPNQjNQTOrCsJVY23N4U5XV0Zx2sxB5qZVUdK +YAgzkZqVCOK81SfOeg17pZhbABqwJOOBUUZToKk3qAfevXjKNjypqV9hd1NOSM46UgYc0EnoBxWh +jdkbE5qJic1PhjnAqNkc54qkhc7JLG7MMq56E4rq7eaORQQc1xJWQHpzVyw1CaB8OTtrKrSvqjel +WtoztkbNSA1m2l1HMAytV5XBxXG1Y7U7ktLTaM1JQtIaXNISMUAMbkVl3Z2NmtCSVUBzWTfzBh8p +qZLQcXqQy3o2kZxWNPdb24NNuZTjGepqqpGea5ZVG9DqhBLUlUZJJ5qQ4xk8UxFOc0SA45qbDZXk +kRc1WaYu2B0ouDt61Wj8zJPrV01eRE9FcstNHD97ms65u1lbaBirTRsxO7NR/ZVzyOTxXqxpK1zz +nW11JLWBTtNaXljA4rOi8yIgVfSYYwfSs3Bwd0Vzqe4nlDOelNkjXmpC2eR2FVpXYZraMmzKUIrU +rT4CkjtWTeMMVfndsHFYd48mD9ac43Wo6UlzaGFfyy7jtqkFkOOua0mj3nmiG3YsQF7gVwWu7I9C +9lqWdJtWZl6jHNdPDb8L29qoadZug5wDitmKKQkGu+lBpHn15xbLVvEAMdcVejjGBVeJGA+tWFz3 +/CttTlbiEtvkVR2vE2DWruJ49qqywl8npQNSjsxkRViBn3q+qJgVmRo0TYar0ZJH8qTC6RZESA5z +xSFUyfemDd0zzSNu70rMm67EbJg5FA3ZppYinxtk/Sr1F7rJU3VNlqYhUnFScHntiobK5V0EYoTj +FRtGjdOM08qDyDSbSDzTuJxZUkjbnH41XEJ3cCrc24ZPNJEQT061d9CErsrGLk570sXHy+lSyle1 +QruDBqa1QpJJlgDHX1qUAEEUzsKVTyAahlwethdvHFUZjtJ2+tXmOOlUbkfODTQutiNF5Gepq4uc +de9QIPu1ZQGk2PqRu2049qqSA7jjirrKCSelVnHP40LYu/vWIlBz6jvUwAzmo1IyMCpQV6A5NDQb +aiHhhUbhs+1SKrM3FS+WB1p7Cs2rkMYwMGpAO1BVs05ehzSeoQMu8yr9cDGa5/WX/ctjoBXSX8Zw +STiuP1mb5GU8VyYiOh6GFlqZNnzIB3Jr0Hw4eUH0rgLAfOK9C8OKSV9sV49R/vFY+gtakd5APkXN +TDFRwj92B7VL711rY8tiGoytTHpTACc0PYCu69KcvfNOkUjGKaBnPakMcOMU9SMUzaeKeAaQB3GK +YxJJ4p3ekJx1pDGcgdKN3IpeopuPmBpXGhSwLAUN94UHAbP4UmfmpDEKnJNRgDdgVM1NUAtmotqP +oKy4AqPYM5qduRUaocmm0JETDrTcVMVOacY8j0qWtSkyBSc4PQ1I4GOKQqQAfwpG6DFC0G9Ss/B5 +pq4H1ol6/SmCoctTRLQuRNxzTiAckVFDzxUuRyKe5DGnAwaqajKdq461b4qlegBkBq9kQ9WNsjIS +M1sKvygmqFug4PHNaaDC81rTVkc03diNkJXDeMnYwsB2ruJPun3rgvGEmI2B71b1aFDc8zuOhHv1 +rOcDJxWpdKvYYH86zH9u1bkgp/8ArU9QTjmox1qwMYA29Bj6/WgQgUjHbnNOGeQf0qRV4A680oQ5 +PX0o6XDqQqWRtwxwe4pMZHqTVlbckY9T1qRbRyM81LY7lDbzn9KYUatYae7YAFI2nSYxjPGaaYXR +kbaQp+Van9nSen0pp098nIxinzCujMKntR8wyB3GDWg1lKNw5xnketQNaSjqvWndAVMUAVZa3fGc +Y4FNW3fk07iIWGCQDnBxmj61N5EmOlAgfjcMU7gQdKUZqUQkn604wMKm4yDmjBqx5LYxj0o8l/8A +Ci4Fcg/SjFWfIOBx60nkntRcLFbBpeam8hvSl8ls0wsQ4pdrcVZS3LEKTjJxk9Kd5GGYZyAevrSb +sOxW2NxThG5OMcn1qcQnPSnmFicnknOc96LgUyhz/KnCPK8jpV5bUkZIyM0PbsFwAKnmQ+UzihX3 +5pAp4z0q59nJbpx/Wk+zsOcUcyDlK2Dgn86ZyTVrynxik8h6rmCxAF60pBbOT+FWUiZTyOMUskRJ +OB2pXFYqhTjcPWrOn7hLIdu7/R7j/wBANN8uTpg9atacknmy8ZAtrjj6oabYWPrdayPFozYRf9dR +/I1rrWR4sz9gj/66j+RqZ/Cx0/jR57JkE49ajwxFSycmm9h9a81nqIhcEVF/Pmp5uPyqqpLNiosP +cmzxzSfUU/oKaCKas9BB+uKMDAJzjFLyBmjGBg1aaQhjAbeajPbHGKkYnpUTHHWm3oCHdcCk+XpU +iA4z7UjACqV92Sys6ruzUT8d81LICc1C+CfSnshoi8r8eeamRAB606NRjnpUpXkY5qbjKcqc05Bt +HHXtT3VsgGnqp4GKu/UkkhD96xNcyG56V0cQYDp2rn9cwzGpexUPiRmWoyOK6rQ1XiuYtVIwAK6z +RAM8Vxxfvm9bZhro/dHsMV53efePpk16Lr/+qbPYV57ejkn1Nd837yMKC91i6V/rlPbIr0yyUraj +6V5ppQHnL1616baDFr/wEViv45pW/hnH6vIDctn1rT0bBVWz+FZWqpm5bPrWxowGwAetYYqV2XTV +oG8BxxSqMdaTlgMcU9ehpJmTIJcc5qDHPAqzKD+dRp+lbRaexIwggZoIBHNTMBwPSmYz0ole40M2 +EHIoT73en7TRgA+lJAOK5Wqc0WN3HFX1zimPGGOK0i9CTMWDJwB1qdYNvJFWVj2ml2ZOKYXKjrni +qxiBya0ZEA+tV3xzVq70JKLg8KKrSMFJz9KvSLj86pspbNPYERHb2GaNnQYp4TkfWpPLwOc07jsQ +7Bk5pCoIxipsnHH6UjDcRj86nqIoyW/Jz71BsCH8a1Sjc1m3QIOR0BqkhXEdtoAqFQHbp3prucdM +81JCpyG9e1N7WBEpXA49M1Wfg4PNW2PAGPm7imeWr5PpxQrWJIFTcDVy3i2kZpihV9ORUsON3FDv +sMTVf9QSPSuUVASc+5rqNVY+QT7Vzac5BHeiTsa01obGhoDMPrXU6gCtueP4a5zQEJmHtzXT6mGE +Bzz8tKg/ebMa+6POr5R5jk+tNtAN4x61Jfn539zTbIHevbnmlN+6zrp/Eej+Gl2xKcflUuvyNsIx +TvDY/cr9KZ4h+6fpXNR/hMietY56yCtMD2yK73TQRGPoK4OwH75Qeld5YcRr9Kwh/ENa/wAJo/rT +T1xTgc0h9fSu1PQ4RuMUAGndRSnA6UMBMd6ac04UhBpWYDTkUA0YNGcUhjlzihulID/+qlOTTAjA +608ZpcZpOOafqAxlNQunGasc4prLn+tCfYDPljB4qlLDnPFajxnOQajaMEY9aFuWmYslv8vSoBBj +mtqSHg1TeM4+lND5rmc6Ko6VQuY93y44I4rVlSqbqCeTyKRaZiy2xPQdqrBHjfI4NbzRjnHNVXhQ +ZJAo1KugtJ2OAx61JcW6zZYHmqTExZxRFfENgnPemk0Q3cY0EkPJzjtTPM+ce9aokSdMEc9qrPYv +u3Cq5tCbdSa3uGXHPtV6O+Bx2rBkZoSAeM1JDMMkk0xXOhRvO5PrU/lqBjFZFve7SBnr0rSjuFcd +amwXJDtUVXkiSTk1JI5PSovM52iqhDUzqSsie0iVWGOMmtjBRaxoXKstawbfjFerSjyo8XESUh6Z +4Pajfg5NOUHoKGj6itjlS6kTSuwIHSojJJ0qwVC8e1KI1POKd7CerKwEpOTxUgQ9akb5QaYJVAxR +qxaCrEME1GyH8qPMOMU5WBFHUr7IzJ6d8VXnhJRjzT5A4O7tSGcFNpqlpsSrX1OT1KMZJ5pdLb+H +9K0b+EMC1ZlqSkvTvXJVT5rnpQa5NDe38AHms+9i35xVxAahmB9KiqtB0pHNyqUk+lE6sQG9amvI +283vgdaWQfIv0rzKqtI9ODTRQTbk461fCh4s9TiqXlYct2NXLZwSY89axl3NTIulCk44qg/J9q2d +QiwG+tYzcNj1rek7omRBL6VWerMn1qu+K64HNUGipsHBDZGBwKgFScsMk/NmqZnFitxSrjgUx8cE +EcgUgIpW0HfUJBSxqDTWyaTNVbQhvUmVlXrzT/NY/WqwNSqRn271LRcXc3NGujDKpJ6mvRLLVz5Y +ANeV2+/dkdjXY6czmNe5xXO5ckrmrhzI3tQ1NnGATmqdvayXDKWzjrVu1sTJhpBmtVIo4QMVhObm +y48sFZCwW6xKBUjjaC1RPcqeB19KVRJLwKajYWpE2+Rgq1t6Zp4BDsKbYaeCQxFb8USoMVpCDbuZ +TnbREkaBQAKlyBTAQKrzTMOBXUkc7ZYdsisjUL4WoJHWp57yOFCSe1cpqN010/XjNb0qd3dnPVn0 +Q641SSfI3Yqskq7vXiofLUEU7GCeOvau5JW0OGo31LiunGO9S+cAOKoxh27VdhiyMn0pOyJimx3m +lhkjpTDK2cCrARPSozDk5AqU0U42EVXfkmrMNqDg5psSEDJq1G20VMm+hcEr6gYFAzioHCgkHtVp +pRjnvVOYFuPWpjfqVUt0G4U9KrzjbjFTIhUjNTCBXwT1qaq92yKoNKV2UNzDHH4U3rWibRD3qncQ ++WeDmvInTkj1I1IvYqPgEjHNRgsOlSttHJPWnwwGY4HSs7amnQbF2yasZHABqT7Cw71ILUgV0UVJ +NGFSUbDUYMcVMEyeKYsLDoRUiKQc+lev0PJe5YSFdvSmSRIOnWpFkAGCaY7hulQr3NXy8pRmC1CU +496sujMaTy2Xg9cVrc5/MS1uJrdupresdSSUhSeelc6wIzmmJJJE4ZeMVnOmpHTSqpLU7xXzTt1c +1a64g+WTitKHU7eXowrllSkjqjUizRd9ozUaSmQnik85GHWmfaIU7gVNirobcwNIDhiKxrtGjBGa +25LqELncOlczqepQByuc/Sk4Sew1NJmZMGzn0psZGaJLu1kHHUVVaRv4a55UWtzdVbrQ0TIqgfSn +BSylj9az0LSdexrSjJ8v6VEqdlYqMzJvlB7Zwajg2lRxzVy4UNu4qtEhzU0laVi6msRxB6d6AGJw +cU9gVIppzu4Fe1T2PHrLUcIyR1pBFIvPUdqnQk/hxViMK3Bq2jOLaZUG9eCKgnUla1HWPHSqF0hb +IWs1BXNpS0sY9yDg4rHnQknvW9JE4JDD8arG0MjilUu9EVSstTAS0kcnFalpp2Occ1rwWSKvI5q2 +kAUZArOFLW5dWrpZFGK2kXBGB61fjRsAUqqQcY4q1EnHFdZwyESKTgipfLkGM8VbhRCMdKdKB0FR +zamnIuW5S+cHFB832pZX2ngd+achU9OpqzArSRu4PrTUM0fB6VoJHk/WiaEDrUOWptGF1cprJJ1p +fObvSyALj8ajHPPpVrUyla4vnKSaljKEZqFULHJFTCHaMih9gUXuTR96lyeRVSMyZxUpLACk0JMm +5XGadnNQLKTw1SqwpWKUmhkvzCqRZlLCrkgHb1qu6c7uoq4kSlcrl+cmpk+YZ61HJt6ipYsAU2Tu +SI38PpTsc5xTeAQcVNtBGR3qWUhcKRmqssYcHtirOccdqa4yMUi3rqZqMVfB7GriNk8VXuI2TkZw +Tk06E88U3sPqTuM1XYdc1Y571A/Rj+VC2Je5WU/NipRwCcc8GqxZlcnHFWN2R9RQaPbQmiOM+ppZ +X+XA4qJSQAaaSWNK2o3KysSIWAyeQeKkP3ePWmFWAAHSnbiBjrQxR7lS8Uuprg9eGxyO3NegzYIr +iPE8O07qxrK8Tqwr98ytMUFhntXovhwEYNed6YQpr0jw4Fwh614M7+1PpJfwTto87BTucUkeCoqT +aa6zzLhnj3pgJp54HIpuDQAhw1NxTzgUzJ6UX1GL6UoPWlAJ4NLg0m2gGgk5GKawHen80xs9+azv +dFIbt4pOc1IOmaTjnimgIxy1GPmpyDmnY9KSQEbHiooj85AqWRCORUKFt3Soe5S2J2JpUGKQYPWl +QEE1VxClO9I3SpQc0xgKGgRXGT16dqUgfSlAOaU8ZNSkUUpUwaYFGM1YlG7603bWTWponoJHlefW +nYalAxxipBxVJWE2Rrkmql4GaRQO1Xsc1XlO6Rc1o1dGTZLbqVCirw6VUUdParAY1pB2OaQ2Y4GK +8+8YHJwc9a7+U5+tcB4qIZyO9a7tBDc4G6Q7enbvWYynJIrcu1yOKzTCMnPXNa+pJUVd2BzU8cZ+ +XHUnAp/lgZ7VZt4Cx6U3sSMit+RxV2GyZ8cYFXLa2LH+dbNrZccD0FNK5DkY0OmsSCBkVpQ6Upzn +0yK2YLQAg46VoQ2a/WrVNGbmYCaWR0XrUv8AZa+nXpXSi0Axx1qZLLPOPpT9miednKf2QgHSmPpA +5+Tk967IWKnkjrTjY0cqsK7OGfR/lIx1OcVE2iDgFa7ltPHpTXsFI6U+RbC52cE2hg5BHXpVc6Hz +jBr0H+zh6VE+nL1280vZoftGcCdF7Y6CmHRJCCNvbiu//s1QOgzR/ZY4IFHswVRnn8eikEr6d6cN +Cb+7XenSkJyFxT10wZzjim6aQ/aM4IaEf7tPGicDK/jXff2aoPK04aevI21DpoftJHn7aET0Wj/h +H+Rx0r0EaYvXbR/Zo64qfZDVRnnn9gOG+YcHpTToDenHNeiHTAccUjaWMfd5oVMftGefDQ2AyBTx +oW3B213g0tT/AA44pw0xee9HswVRtHBroZ5OKcNDAP3ciu5+wLnAFOXTl5460/Zi9q9jil0XGCF4 +9KR9G5xt9q7j+z14BFOOmocEis/Y6mqquxwR0MdNvNNbQs5BHbNd/wD2aD2pP7NU9RQqNmHtWee/ +2Cc8Un9gn5eOpr0E6amOncUz+zEz0qvZE+1ZwY0M5zt+tNOh5/h5zXoI0wA5wMUn9lg4OBzVez7i +9q7nnzaG23IHcZFLFozxCRwMHy3XjvkYrvjpS+nWnf2XFskG3gRv/Kl7LUftT1RO1Y/i3/kHx/8A +XUfyrYTtWP4sx9gj/wCuo/kamp8DN6fxo4B+CcetMz0zT2AJpn9K8po9QinYEgVAoXOakkOOT60x +Oc/WnZjJgBjmmEAc07IHXmmt1z6DimuwgyeKdnio15ODUgDY/WqbsKxEx55puznJqZowTShPmOaX +NcdiPJHSmsO+TUzYFR8HtWisSV3BzmmhQRz1q0yrxUYj9OOaTuNBHEOMilIAzUoXAGe1NfkE/hS1 +6MGVmxnIp68cEcUmATg1KuNtO/YLEicr9K53WRlhzxmuhBG04zmua1jJkyCetKbfKyqavNENsFGC +O9dXoyrxgdq5a2BKj2rrdHAC8+lctO7kjWvsyr4hZQjZ6Y4rgLtTyT6133iEgqR7Vwd4xAPbmu2p +fnRlQtyD9IAMq89CM5r0mDi2H0rzfSM+eucbc16LDn7NnPasou1Ydb4EcnqXNw31rW0f7uR61lai +cXBIGcnitjRx8gJ7VjX1ZpG6gbfT60qZHHqaT8Oop4AB96IpmLGSEdBUPIPFTS9sc1E2AK0SYkxx +5HNNGc8U0P8Azp6saGxoXsDimEDoOtPJOcjpSj+dEXcAGcc0uAMZ4pRjGPensOc1ZLI2AwMdqTaB +mnckcGmnv35q1YRFJnbVZl7irJByajIA700BUdc5BqvtXJAq24HaoygA/WmhFdk54po3DrzUufyo +A/Q1Wgiq6vjI6UqDjmrEig1EASTiptcYP8owPSs6dBkjGc1psveqxi659TTWwupn+SBzUiKFAGO1 +Tuo/GljQnBFUwKvlZOTTsDJH5Vc2qO3eoHQ5/HpTihNork7jipY+2PXmm7HB9KenX0zim0K5V1Zm +EXvWHGM9a3dWx5QFYqE4IqKuh0UV7rOj8NKDMM+tdPrCj7Ocelc94ZQ+YD0ro9aO23P+70p4fVu5 +y1/iR5jf481h70lmPnUepp92AZG+tSWAxIoA4BrKpK0WehTjZnpHh1AIB9BVbxATg1e0EHyR9Koe +IvQVnRt7Ewf8YxLAfvkHuK7mxI2LXEWCnzFz2NdvZAhF+lYQ+M1r7GguPWl4xSDpSc11I4x3ajnF +Jk4FLmjoIdjNMOaevvTTimwE55pjZHSn1GTg80mMeuMc9aXJoWlOOmaaAVfWkxzzS4NBNFgEx26U +1uTinZHrTTnk0k7ARFRk5pm0dTUozyTQBnrRuxldkGD3qo8XFajKMHNVHA7dabEmYt1GQDWdIu08 +1vTR7iaozRDkY7U2axZmdRx0qKUcfU1dChc49KqTBt3HGKSdyjMuImCkgZzVJY8Nnv71veWrpg9a +ifT9w3AZoTvqFjOW7aMgCrsV/vXnoarSafIhz7UwKY+AOaq9xaCX2JDkVTMpTjNTySHkEVXIMgNU +7olJMQXxU89a1rO9ZgOeDisB7aQP8ueelXYMw4yfwptpmbTW51CTp5fJwTUcRLPurCa9kztzWzpo +kdATW9KOqOetK0Wy8Tgcdq0LSQHGTVMgYIqaD5SPavUS0PFm7s2YQuCc0SNg1BBIR34xSyMSwPWp +tqDdoAzZIqxEUxVFpADzxUMl8Y6bg3sRCST1Ll2ygcVnJKCSCaglvTKSueajgyX55rSMbIick5aF +4HualiIK461CFJz2qeHj+VJ7jT0sPYDbWdKp3nFaZSRulVniPQ0RYOLWpTmgDR+tZTRLHJ0xXReU +ShBFULq2AIbvWNSx2UWxsZ+UVFKpOcVZt1G0g02VAMisJu60N4R5dznbwYcg8c010yo+nWp9TXb8 +wPOagjYvFz1HFefiFqd9F6FQrgnuah3mKUEevWrjLyPrVO64OenNcp1IsXCLIgbtiufnGxuPWugh +mSWAgn5gSMVmXkIwcdauk+V2ZEkZLgfjVaQ1ckUj3qpIvX613QZz1VoRCng8c0wUtas507DjSfyo +pBSGxe1Np1NxQhMcqkmr1vaPIRgUy1lijwWHNXv7XSLHlxgelZTcnojWCUdzV0/R84aTgcV01otj +aBeRn0rhG127fHOB7UqanOSCzk1zuk73Zte56YuoREYTpUb327hTXBw6xMvGa07XV14MnIJIz9Km +WmwKJ19qpkYFq6GytlOCa4u01uzUqA3XFdBa6/a/3hWsKd9zKbl2OtiCRjtSvcBRwa5z+3YSMbqZ +/awbpXTGKOeXMb4vDn5jxVO71WJAQDzWI95K5OGqLYZeTzXRCC3ZhOTFuLue4LehqBYHPXPNXI48 +dqsCMV0LQ5ZSb2Ki2/tTltiTnHNXQtPGRRzGbV9yskByOKmEbAVLkjBAp/vSbY0iuEfqRinrGxxT +wTxmngkUmxpEex8fSja+KlO7GPWmfNjBpXBojAfp2oKMT9KmUMKCSKLg1oQ7D6UDcKl57UhzgcdK +dwtYjJbHeqVwdxxWiM45qB7cOc9DWFZXidFBpSuzJ2EmrkClTx0qX7C3JzUscDR981yUab59Tqq1 +Fy6DwW4oIbtS4c89KXLDNegoo89tjSjgcUoV+admQ035x+NURYQq3H1ppjfk1JhutB3ZwKLhYhKP +z2pfLY4qXYx60YYDBp3DlK7xE9+vrUbWzdjVplOeKbhs+1O4rMoPaSEe9RCG5iPyMRWnzSMnp3ou +PVFUXmpIu0NVeWbU5DksRWhspCopaFc8ig8uosMFzjFU3tpnOWyc1tbPQU1ouKegc0jG+xyLggU/ +YyYyK1PLzwKY8Qx81ZyimaQqSRRVTkH35rSUfJxVMphuPWp1YhcE1yVKd2dsKmlxrKCah8rD+1WA +Dnn86Vlz0rllDklc6Iy5lYjkjPB9qYkZ6Yq4IwQOtKIgOlelSmnE86tTdyqIXzxzUqxOCT71aWIZ +xUgj4rbmOfkZSMT5qKSNsnitBkOOnSozGaEwaZlvbE9RTEtipPFa3ln0pPIOeO9NC1M9YX9KmMfy +gYwaueSRS+WcUXB3aKKx9M1Kgx0FTFSTzSgEEUNiSIhIyGje1SEA5JFNAXvQhNjdiHrQI0U1KEX+ +VIYhng07iBTjkUO5elMWehpPKbPWpsi1JpWRXdGOMUzYV4PSrOx6hk3DrVIgdCUJ5qeQA9Koq+0k +Cp/ONDi7lKatZjd4QkVLwcYqEx5JbP0pykp1pmZMse8/pTzFt5p9uwIqV8VHM7myguUotvzg0YXG +DzTn6+1MYcg1ZityGRF7UQqC2etSOgK1HGGGcU+gLR6lgrxikjZgdp7UpLAYPem5IOTSKla+hJtH +U08qCvHajORxQucYqWOL6FaZd6kelUoHYMwPYmtNk6+9Z0yCOTcPWqWw46PUnyMGkUMwwajBDZwa +niwOfWh6IFqyvNGoWq5I9avz4K59KoH72B3pJmjQ1pT0BqVCWwPzpxjXGcUJgMcCne6IknfUnRuc +daBjJI70o69KaTjmkg2QzgkiuT8UqBGfrXVk4ya5HxTJlB0rKt8LOvDW5kYWn7c816T4ZVdi9q85 +0tWYjj6V6X4aBCKD6V4Ure1Po5/wjsIh8oqdahjHA+lTDjFdPQ8xisvFMAAqRjxUeKGCI260Bc9O +tPIoXikMQZ707GfxpaUUMBpGOhpjLkA1LUTE1GxSAL0oI9KWjGaYEadTTl7mgYBOakGMcUkmkNkM +ikg1DEvNWXPUVGoxzWcldlJ6C7BgmiMcGlLZFKoyKpCYdOaTG7PFPHTmgZpvURCy4puBipW44puO +9Sl0KK7qDmm4HSp3HaozUtWdykxoHcU88Ckxj8etOYjbST7jY1cHNU5MicelXU45NVGwZ81b2M2W +4xuIJqchQKhUgYNSsdy1tA5pFbJYtXE+JY/3hJ5xmu4VMBia4nxK375gKtP3kOHU4y4UEtgcVRMf +P+FbFwgIOPyqps657Vo5a6kWKfkLjPYVatYvmHXFDKeMd+1Wrf7y1SeupD20NK1hjONvetu2iwAO +vrWfZoMc89K3bZB8oFbRMGyaCAelX4oB1FJCmBir0SHIpvUlEaQ881YEVTKntUyx0mxpFcQDjjGK +eYBVkJ61IIxSuVYoG3pDbc5xWj5YpDGPSjmFymd9mGc0z7MB2rTMfWk8v2p8wuUzfsynORQbUDoK +0vKpPK5o5g5TPFuuOlL9nHTFaHlCl8qjmDlKH2YccU77MnYVe8ugR1NyuUpC2HTFL9mFaAjpNgPN +K4+Uz/sozTTbjNaPl0eWDT5g5TPFvjtSG2X0rR8uk8ulcOUzfsoGeOtL9nX0rR8v2o8r2p8wuUoC +3HpThbir3l0eXSuNIo+QB2pPs1aGwUeWMUXHYzjbj0o+zL+NaHljFHlAUXFYz/swoFsOOOa0PL4p +uFBxT5g5Sl9lHWkeACKbjny3/lWhtWmXCDyZMf3Gz+VNS1Bx0OlWsfxX/wAeMf8A11H8jWwucisj +xXzYx/8AXUfyNY1PgZ00/jRwD8ng4qIkAkVO6j0qBuK8rqeoVZWJJGPwpY8gU192TT1UgU2NLQfx +x3pjcH2qTA69KQgU1e1xDAOc9eKlQjGaaB709VAxSvYBT603OevWnHPYYxUffvQ9wFwTTSuOlPJ/ +Om8ck96tWQiJiRQnXJpxXH1pduOlN6aDQ/HB7VE/Xr9an4I/nUL8ZIpPa4iLZ6U7B2gHrmnKCcZp +xPeqVugmIcYOPSuZ1UjzRXTHGDXNanxNSqP3WaUfjEtkyBj2rp9K3Ktc5asTgV0+lgBB6Yrko6yR +dd6Mz9fYFW78VxN2ODx3zXYeIG6getcfdZwT3rrq/wARE0fgJNH5mQ9t1ehIf9GA/wBmuA0Rf3yk +jvXoBG22GOPlqYa1WKt8KOUugGuG9jW5pf3AOnFYN0x+0NjjJ7Vu6WQUyOeBzWFZami+E2e3FKpy +M0gOF5p+M8/SqjfoYMhkPNR4p8nJNN4q0MaVGKcCKTGTzS4GDmhpsB3GOelOAx9Kbxx704belVCw +mAPPNOYjAwaZjHWgDvT3EO5HT8qaVIGfSngcd6Bxx2qtBEDetQfNyasEfMfSmEbc079wICM5GKay +VJjnFLt4Jppgym0fIpSm0dasEHoOvrUTrwc0c2grWKx5Oe9GB2ODUoUmggCjcZCRnGDTWTGT3xUm +Du4ocVorE6lcorY45p6xqopSncdqcwAXGcmp62H0K5GOvGM1EVyamZQ3vxUPI+p71p5GY0qfSiOP +LY9akUdeetTQxndnrTewGXq42R9M5rEjDeldBrecY+tYcK49/wClc9R62OykvcOr8Mpkg1t68o+z +Nn+7WZ4YQFs9q1vEJX7O30rXC7M46/xo8xuMbzx3qawH75ew71HOGZ2zzzU9gn71M88iuaq/dZ6c +FZHpWhbRbg98Vj+ImIbitjRyFtx9KxNeYvIfSlTdqJyJXrGbpx3TLxXc2ONi1xOmjEoPfNdtZHCD +6VjTvzmlfYvjJFBwKVemaRh7117I4+ocd6MelJTifzpdACkOMUZz1pjN6UDFFNbOeKcOaU5pNB1B +QcU49M0i+9Ox+lCBgCaafengDFIe4p3EN9BSnpzSClY8c9aQyM4zQOtLjJxQM96dwEODVd1Iq0B1 +NRumaEwRTdOCehqhNFmtZhyRUDRg8jmqe1yosxGiYGqskJGT61uPCDk4qrNCcHFJX2LvrcxsbSQe +3NXoAGHNQSQENnmp4PlqXe+g+hLJbow4A6ViXloUYn6mt0zYHI61BIkcwOa0WhF9TlHjfOSKYBEh +znnI47VuT2inOBWbcWZB4FNWGJE1uxBOBUN4iqMrg0w2zgelSpFkgOTjtS2eiBq+5TtIWdxnmuss +YvKRR3rOtLWPcCK3IlGBiu3Dpt3Z52KaSsh+3jFOCFSPSg5/KpNwOO9egjy3ZoniPQU6Q4qMOBjP +FRTytzmmlqT9kbO2BnPes6ctL93mpixcMC1LCig47VqtDC1yGCA8E8+tWVQBh2q9FEm3mopI1D5x +j0pc1ynTsEfX6d6tRKuahhXGM1KzBTUvUSdi5uVV46VUcgt60gdyMe9OG36VKjYtz5hz7gmMVVMe +7OatM44FRsy1LV0aRm0Udu0kUx17E5qecbuR1quyvjJNc9rOx1qV9TK1KIMhA5qhbRcYrdljV0rO +EZjYg9Ca48TC+p3UJaWKUse08Cqd4ispA6itqaJWXd6VlzpnI9a4LWOuLuZMDmNwCfwqe5BK7hVe +UFJOR1NWQdyA/pVPe5TMqdB1FZ8y4J/nWzdRYHH1rKnwa6qUrmFRaFOgUrA0ldRx9RaKOaSgY4Ck +oGKU9vakMUBqUg0q89aVkNK5VtAUZp4DDGDTAGz0qdMkjNRJmkSZEYgVYjV8+1EKOQCKtRo64+Xv +XNKRskTW6HGT6VrWqv2qjArHtWvaKO/XFKMXLRCnJRLcayfL34q7FG5wc/WoEJAqZHk7ZrupUW9z +hqV0ti4kRODuq1GoWqcbPUySN78V1xpW6nHOvfoaCKuKnVUFUVZiARUyO1Vysy512LgEYpw8uqxJ +4p/J6Hmk0NT8ibKdKX5O1RLx35pwpWDn8h48v9KTK5xTDgZ5oJ70WDnH5HGKfwO1RLgfjT+AOtFh +847cKPkqLctJwDkmjlF7Qk+QcUmF4qM4OSDTdwHOaLBzk4ZaaWXioiR2NCkDqeaOUPaMl3DrS7kx +URZfWm70GaFFC9oyYstISmKj3pg5PNJvXFPlD2jJg6igyL6VErx5oLxZo5Q52SGReDim7+tRmSMe +9R+cnIp8oudlnzRml84dxVXzQRSGXjOKOUOeRYMqjrUZlXJAqu0xI6U3c3OOtPlJ52WCx4xR5hAz +TEWRxml8p+aNB2k9RDIfwpu7PemuuDilRVPemRd3HqSKXJPSnCLPFSC36dqV0WlJrQr8Aj1pflbI +NSSRAcVHtANFriu1oxhhXqfWo/KXOferITPFP+yEjIPNTJI0hJlcIMjNGVGRStBIp601lboa56tJ +SWh1Uqri7MVWwcCpFyahAP5dKlGcY6VjRk4vlZrWjzK6HknOc04O3fmoTuB70BzXerNHnSbTJ95p +N9R+Ycj0pN43ZAp8pPOyXdjpThITUJcdO+KVHGfrQ0CmyXeB1pfMX0qIuvBpCy4570coc7JQUPam +/J0xUYYdc0Z75o5R+0HsiGkEa96ZyTxSbiODRZhzRvsSNHkcUFDjNNGcj0o3nuaNQ90MH3pCG7Zo +DnFP3Z+lGoJRGkEVUnZ1b1FWpHP+FVGkVifanETSYi7WHSl8teQOKVdvanEEE1VyXBixq+CRTZBI +p9asIDjpTHODzQmJobHLtAqwZAR+FQYUjjrS7WQeuaTQcztYjMpDYI6084OPSoZATyOtOTLfhV2I +uDFhxRGVanEcYqq2+M4HSkkW9VclkMmfxqZenrUcZ3nmrQTA4oYkhYipHvTu9RqME1IcY6DqOahl +JiuvFUbtARwK0SNyVBJGGUj2pRdiprXQyVxtI6VNEx28moph5bHPTPSml2wNv5VruR1LUh3D61Vd +cEGpEY4PrSOM1D0NYt3F3Ar+VCZI+lQ4bOKnThcZzmhbDndslGAM00kbc9M0YzxnrRIM4FC3JZXm +faMeorivE8vzKOvNdnOOPwrg/EhYzBBzyKyrfCzowq/eITRuoBr0vw+o2qK810hOVr07w/tEa+uB +Xg71T6WrpSOqj6D6VIM1HGcgVMOldR5o0j9KSlZSRR2pDE4pMCk70q8mkMeBSdafSADOaTAaRioy +DUz9OKTbnFJjQzBpjnaOOMnFT4AqMgGh6AmRqoKke4pyo5IZuB6D+tPVT2pegoTBkUnHNMU5FOla +hAMVN9SughXilXIGKD3pQeBQtQFpoPOKXIxTGODkUN6gkPam/Wms+aTNDAR81Cc5AqZyagJ5rNvU +tIeKR+lOGDTW9Ka1EC9DmqeczEdKtrnBqpHlp29jTlZEvZlsZ4FWEximqoI96eFKnFbR0OZiyKvl +sa898Qtunb2r0GfiI/SvOdef/SGHua0W44LRnP3JYD69KrAcgnp1NT3PBwOeKg64zWj7EpA3UEAd +qmgBY5pgjOMnGM9KsQLtwemaSJktLG1ZoQBmt606A45rDtOQDnBxW7aA4Ga6Vsc0kuhqRDoa0IsH +FUIOQtaEPSglFlFBqZVqJCeKsJUs0Q4KOlPC+tCinelSWJto2in0UgG7KNtPpKAI9lGwVJQadxWG +bKNop4pfWkMZto20+gUANxRtFPooGN20m3mpKKLhYj20bakxRigLEW2l21JijFAWI9tG2lJCmlzz +igBu2jbStu7HinCkOwzbSbakxTCKLisQu652e/NQq43NxkcA1maxcT6e5kSNnVjuJXsB1z+FUbDx +TpNwUTztsjcANxmm3YLX2OjjdtxDDGDTpf8AVyn/AGGqGOaOUB0OR6ip5QDDL/uGmnqDVkdCuc1k ++Kv+PKP/AK6j+Va69axvFZ/0KP8A66D+VRU+Fm1L40cO4BzntVCdiDgfnV9j8pNUJj3FeYtj0upA +AWPtU4AAP1qJPUVMfalLUYpIxSDk8gUZ6UoHenfQLCgDjFLg/jTe4wOKeMcVFxjScdeKZjmnnABz +TM9KaQgOFpQjFSwB2jqaaSM/Wnec5jMXG0kHpzxWqt1FqMHXJpQo47ikAY8c04cDI60gY7HHHSoy +APepV5AOO1MIJHTFJ7AtxFGB9elDDA604ADPBpDyaI3Bke3r16Vzuq483FdKWABrmdTbM/rU1Ze4 +a0l74WnUZ711OmkBR7CuZtRnBPHNdPp4Hl9OcGuej8SKxGxja8Msxrjr0Hn8812OuHBJrj7zJPPT +Ndcn+8JpfAW9CyZkB4xivQJAPs34VwehAecp967qZh9nwPSii/3rFiNkcfcgm4b3JroNJ4RawLg/ +vySckmuh0wjYorCpfmL+yauQcCn4x0Oai64p2QOKu9jBoR8VCcHPrUjn9aZnuaN1qNCrkAnrSNnn +n6U8EHoKQqDz+lXqlYBI9zAetPIwaamQadyaajoLqOyNvtSAjk4pSoNIAc07iJDwBS7R39KXoM03 +P4UnuIicDpURx1qWTPIqDdg802NCMDxilHI54o3A5NG7pTuFiNuDwetRMCamYZ+uaYcHnpRHXcGM +28VEVzwe9S/L0HNNC8mmmJkQjINOA4OfxqQjNNbd25FUgGYycUrRZ60oHIxzU5PHSmhMzXTGSKrs +G6Cr0g5PpmmbA3AGOK0RmyGJSfSrUAw1Q/dwKtQduMk0X00GZGvDI46msSNTt9/WtzXc4ArFj4A/ +CuWt8R2Uf4Z1vhkkdR3q54lkPkke1QeF8Yyak8TEeUc9xW+G0g2cVXWqkefTZycepq1puTICe5FV +ZRyauacpMi49RXJVfuM9WJ6Npe1bYfTrWBrbjzCMVv6eMWyg+lc3rAHmNz3pr+Cjkgv3jI9Mw0oJ +zXaWYyo+lcdpCjeo967S1GFArOlbmbKrl1cYpHNKvA96Y3X1rqd7HItxBilzRwMUimlcBeaY2Kk/ +CmkDNAAOMZpcjpSZpegpNgPAzmlxSc4zTh0ppq4AM5pCBmncigjJoYiPikxxmnMfzqPmk9BgetAB +NGOaeOlAC8YxTCB1p1Jx0ppisMZCaiKdulWSDgVGVptjRSdT0qOSP5elXCgakaPrihbjuZDW2Oop +otsVpNGPpTVTmmVcypbZyCaoSmRDgV1DQZX8Kyri1bJwKpEpmQJecNTmSNxjAqeWyflsVVZSueCa +VyzOvF2A7e1Zp87OPetWX5ztPrSxWy56ZJq0J7aj9KR2HzHmtqNSO9VLaEIBtq6qn0r0aKfLqeRi +J3loJISPwpY+etOIDAClCEDPpXUjgkPbG2oiNy8npSljjFRKzZwelVbQiMtbEa/f59cVP5eDmlEf +OetSnoRiqbJa5RVk28GjO9xUEobgd6mgUEZPWk1ZCUmydBgnvTnUHHapI4wacY/51F0PlbRXCleS +aeAMe9Ky9qXb3piSYqxluetSG3G2liIHFThhjFZybudMIxsZroqjBqqUHNaE6KxxVcxAA0pRTHCd +nYplQMgiqFzGV5AzmtGUdKikTzE+lc9SndHXSq2ZnKAykAc4IrPuIihzj2q4WaOQ8d6mmUSpnHvX +lzjZ2PRg7anL3cJHPfOaiT7oBP0rWuoQwOBWUUZGYEcVmuxvurjZtrL2zWPcL19q0Xfa4B6VXnUN +luua2g2mZy1VjIcEU0fLtIPPX6VZljb0qsRXbF3Rx1I2YdaSlpcZpk2EGacATSYp6gk0mVFD40bO +e1TiNvTNSW0Z6Y64rSS0YjOO9JQctgdVQ3KEUIOcgVbSzBIPtVyO1Yj7uSDU4tXxyuD1pSw0xwxE +XsNjtox6DFXYYrZcBhmqRhlHTNSRJP8AKM5OaxWGknqU66aNOOOH+ECrGwADZVe3jlyM9K1Yrbgd ++9dtOmo9DlqTcupDGHIqxGJQcDoe9SiDaBjinxI27pnBrsjscE3roPRJPx9KsJHIODU0agEZq4qx +kUnK2gRgpalEeYODxUg35+tSSAHgCofnDU1qQ9HYkHmd+KmXzOcU1B0zVmMoMk1MmXBXIcMBSGU8 +c1JM684qiVfkihakyVnZFkOT3p6BzgGq8YwPm61ajkAHND02CKu9RH3Co/MYggtT3kBOarOTyRzQ +vMclZ6EuWOOaeNx71VRyD81WUcUO6FHVjyrke1Rcg4zUzTL9MVVdt3I4oiVNJbEnHr1pwQEjBqsN +45OakRyDTZC3LPlAjk1CyoM5pzTEjFQsSetJXLly9BS6dPwpVwcd6gKVMny8UyLak4jGB61G4C5p +TIcUhVmqVct2toVHkbdgd6lQccjrUhi9qesbY6VVyLCxqveldVxS7GFKQfTip6luWlinJE3bpT4o +zxmrG0kZpQCOoqr6EWHxYTg1IzLg1CNxNBL81FjTnaRHIobmo0Q5HapCX9OtO564qloZsmQ4wKn3 +jAqrnpxSiSoauaRny6BKAc4qsBuYcnip5GBPFNXFWtiHqx6qoxVtCu2qZYCgSHt0qWrlwkoksw6+ +tVOmc1M0lRkK2DQloEp3YwJzk0/K49KU4HSm8HFYVKN9UdNOtbRgCDnNNJGaUnjFNIyKqnzR0ZFV +xlqgBVjipUjDH6dKiVQnJqWNsYOa3e2hzKyepN5C1BIqg9ak83vUbnfnFKN+pU+VrQh3JUnysKhK +EEGnbiDVsyJDESoxUe0r1NW1ZQtVpmXt1zUp9DWUUlciZiDnNN3uajfdn1qZcFR1zVmPUVZGGKGk +9qmijUimyIACam6uaODsQrJzzUnmqKrMwo4YVVrmZM7qR96qx27uKR1OOKiUOrdzzVJAy4o/XFKX +w3PaoRIRxTlkVn5pNApNbF6ORAPWo22MxzQAMZqLBDc1Ni+e+5Jsx06UOSBzQjkHnpRLIrUK9xPl +6FWaRl4pIJApx1pJo2bkVGsbpgj1rToZPRl047etRyxgj8aliwRn1pTj86i5cSlFLscBulaayoy8 +VmzRYPvTIpmQ4JpuN9ilKy1NIj5s9M1IeQDVUSK/IqzGQV9alkqzJ4+mKjdWBzSq2DSueeajqat3 +iZt3EDyByaqhNzL7VqSgFTjk1R4DdK0voTFXE2gUSBdoIpzFfxppJxgnjI4pMpaMqZO6rKYwKhlw +DT4mHSpRpJXJiQTS43HimHIGaRGHWq6GfXULhcITXnOvMGu8ZzzXoF9MRGea841RzLekj+9iuevd +QdzvwiXtFY0dMQfKa9J8PIfLXPtXnOnDAUDrxXpXh7/VqO/FeDDWo2e/X0pnSoowKmWo15AqQEjp +XYeaBNJilOTSjpSAZtzSgYFLxRSuAdaWikGKABqQNSk0EVLv0GFMOKcQe1NC+tMAU8Uo6UoWkbih +6AQyJnFAUgYpzt0oJ4FR1LGEUpzilbkUhPGDTAiyRSMTipCB1NMcioZSIyelAJzTuwpMigYMai71 +KcbelMCDk1DTuNDV45ok6ZFLt4xSMOnHFVEGLHnFVI2/fMPfNW+dpx6VnwKxnf61T30M3szUVzkD +Han7zkZFNiUkrmp2QYrando5pWuR3P8AqWPfFeaa4zfaHA7nrXol4xWFvYV5rq8padxnHWtY/ENf +CzIl7HuetRDA70PKS23tmos/M2BWmlxJaFgHOB+lWYMM3P3QOlUg696twNyPQGmtCJLQ3LTHBPSt +62bAHPFc9aNn2retXBrWOxztGvAeAR3q/Eaz4OMd60IuxFN7EotoDVhfSq6dqsLUFolFOFNFPFSW +h1FFFAwoxRxRQISj2pfrScUAHNFFHFABzS02l5oAdRSUooGLRRRmkAtFApKBhRRRQA3aO9LS0UAF +FFFABSUtFAFe6iEiFcZPSvNvEnhSaMSzwDh3DlVGSPcV6iRVaeASY4zjtRug2ZzXhi1vraxijuC2 +/wBG6geldFOD5Lj/AGG/lRFCQwIGBnmppYwYJvaNqIRtoOTvqbq1i+LR/oUR/wCmo/ka2lrG8Wf8 +eUQ/6aj+VKp8DLp/GjhZMY4qlKMt7VblyM+9U2Yc15lj1ECdcDpT8nnimjBIxT8cUgE7Z70oyTg0 +3jHpSgjP86Haw0Kc89xmlB4P50U7sM8+tSA0nv3pmVJpxzg0iqepqtRCMo/GmgYGe9SbSTz0pGA5 +p8wDRkDNKo6mjAx1Ipy471QhRn1pr9RT8DGRTTk1FxiDnNMwetPIGKQgZrSKbJI2XKH2FczfKFl5 +9TXVMCEOa5TUcCZj0rKovdN6PxFi1GQua6ewP7sY7CuYs26fga6iz/1WfasqOkkFfZmHrYyWOO9c +fdjJINdbrkm0t3rjbpyWYd66Gv3g6fwGroOfOWu1uBiA/SuL0AfvFNdldki3x6iijrUkRiN0cnNj +zyOvNdFpoIRcelc2xPnnd1rp9OGEU56VzzS5zRv3TSA4HtRnAOetAHv1oY1srnONY0zjNI5wTmmj +OfrTauMl5PSnn1qMH/8AVT8n8KGIODTsZIJ9aRPTNLuAHvVJdRAcZxmnZPB64NN4OaACKAJNx70c +HrTcj8+9LkdBQrgRvz37YqEgDjFTHGc00VLlqVbQhGSeOlHTtTyOSfTpTcHk0J30BojbnnPFR4yT +UzAYNRD5SSK0UdCbjMc4p46Z64pDySKVccD1o1Cw1t3agHrmhs5xSDAPWhdhEgAppOKkFIRnj1FU +gZAQG5FJ5ZAJqfA4ppFaK7IZUZeas2qDNII85+tWYEx+VN2WgjA18kED2rEjO7apz1xW34gbDcVl +WyKcE1y1vjOuk/3Z1/hyIhAQaZ4oz5ZB9Ks+H2wmMfSqnik/Ia3oxtSZyPWsjhnAzV3SyPNXuCRz +VN9uTVzSiDKMZ61xVPhPUR6HZ/8AHsOe1ctqpPnMfeuptVC2v4VyWpn982T3rR/wkclP+Iyxo3zS +Cu0t87RXG6N98fWuyg+6MVjRTTY65ZBPWkJpw96YwPIrsRyijnmlGTTU3YxS5pIOo7ikwKQUp9TS +6gNweaeuajDnmnjpQwH4pwzimgmnrzTXcTDrSk4o70GhgRuMmm44/rT2BpBzwakYzPanrzxQRjmg +UJWAXFMIwakPSkNVZdAF5ximYGeKVuaAB1NNvSwhgUZoKipCKTHFIbK7oD1qJVAbmp34qLqRQA/F +RtEGPIqbnFKMVaEZ08AAPpWZNApH41vyqCKzZI8sSOlDvsOJgz2LYJA71VjDK+0j610c0aBCD1xW +UbcB81pCNxTloTRL04q1ggZFRovAPpUwf5cV6tPY8OrfmGKpLA9KnMXyn3FRoTmrBlUL+Faa3M9G +tTMkOxttCHJ6Uy5ZS2RT4AWwRW3Q5lvoX0UsAfakIyDSwk4xSNnJrPqaT1VyJgCMVPEuFHrUKZ3Y +qwvFNkLYnjbbT2cYNVGk2n1pQ5PNLlKU9B5JzTh8wxQgBpwXGaQLcZuKmpFk9OahkBOO9SxKKTsN +PUHDMeKjKNznpVpj0AFRspxigOpRaLJNM2Ljpirmw555pksajrUtI2hfcxL22GSw/SqscmzKNzWz +KImBHpWZPbjrXn4ilbU9OhUurMqXCjnjrWZcW4KkjrW1hXUAjpVWeLBPGQQa86UbbHbGRyt2jAn+ +lV0c42kcVuXVmG5rIkhMbEGtISTVirFaWPcMj8qpSRsuTjNabAg4qGSMcgjPpW0J2MpxuZu00u0i +ppEUYI4NOjXeQPWt+Yx5SDYTxU8MTZBxVqK1LMOwPStKLT3wCuKFeWwm4rcis4h3HNbsEIOB9Kr2 +1mVIyB1rZihVcHvXdQhZWPPxE03oPt7OP096tfY4yuAKI3CjbVpDnFbOOtznjUdrFL+zlYdKjXSy +h9a2I1J4qVYRnBNJk8zMxLIgVbjhK4rRSBMVJ5aDtSdh8zKAhFTpEBzirAjXOcVOqrgACk2JK5TC +9MZp+WXPFWSvtSegxRcdmiDB6mjZnnFWQjGk2HJpXDlIeR/DSfvDwKmKtTlQii47MrbX7im7T24N +WmUmmiI5z6Zppi5WyDY3OaUKelWhFml8kZGKXMNQZUMTDnNN8rvVxovWkEQ9aOYfs2VPLz1p3l4P +Bq4Il/GkMa9qXMPkZTaMsetKIumauLGvU07YtHMHs2Umi4pRGOOKuBENBVADRzByMqeV3oEWTVtd +p604BMH2pcwezKvlL0xThGecirA20vGMUuYfsyt5WKApzxVjKYxSDb1p3YchFtB60oz6VL8tHy5p +XDkI8E5owal3LR8lFw5CEqaT5qsfIRTcL2ouDgRjgA0hy3apflIpcKadw5GVznPNKpOOlSlUzxSE +KKdyeV3I8g03Iz0qXCUYU0rhysZ8uOnWm/IM8VIFUd6YyrnP5UwcWN2o3NNKLg1Ls/WjYcdaLi5W +Q7FH4UmFz71PswM0hQdadxcjISopdietO2n86UpwBmi40mR7VA460BFp4TJp2zHSgLMhKD1oVT61 +L5Z60BPSncXKyIoTTNrAirBRs0wxN1NO4nFkWD6Uz5s9KnCk9BTSGzyKLk8pEWYCo2Ib2NWCD0Iq +LaN3IpiYzCn60ZI6VKUXtTStMLDklK0jS560wpxwaYRJz6UrIrmdrDZRxwOvemKduOmKkbdjoahk +Y9KpE7EpKHimyHbjvUEbksRU7AGlazKlJNEe8YwetOhjLNmoijBs1fswCSfzqpOyIhG8hxjdRnPF +Vi7qeelacm3GKzpSobae9RF3LnDl2JEljI/2jTDkscUxVUDINLFI24giqsZEwAIpDGvUUrKx5H40 +zdjigq6HxMFNPdTkVCCcg1Pw3ekxXK0ynG6qD9TWlIC24VRlXaee9VEcu4trISDn1rRgftnmstEK +dD+FWkk2sD70SVyUaXJp+3IziolbPNSo+7ismbQtsR7TzVGdME+ua0GwDVadRnPNUiXoZztg4NOX +JpZ1Cc9jTI2zQ9i1vcjnHWiJgBzUkq5GR61XTKt0yM1LNVqmWQwKkHv0pp+UAih8cUyTPArRbGDK +eoSfumrz2eQ/a2x1JrutTPlwuT6VwDEPcMR13Vx4r4T08BG87nQ6fwU9cjmvStBB8tCPSvN9PjOV +49K9N0EERLxXhUv4jPdxPwHQLUq8io161MOldqPNY3NLQcUlJgIRQCaXijAqeox4FNAB5pd2KQHj +FUIQ0dKbk5pRyDUjFppyBSgUD0NGoxAxpx5pjZFOBpXCxHJjj2pvYU5gDSEEVJSACkkFPFMbrTtY +XUj6AUFeKdijFQy7kC9TmkPWpdg5pjLjpU9B3EJ4pVbIx0ppH8qaOKNR9CQAdqjfnipV9T6VE/3v +pWiRFx33UNUrYjzXye9W3b5DWdZuDM4460PdEvZm7GBxUnBqKE9Klzk8V0ROZmdqeVhfHPBryzVZ +P3759a9S1Y7YH+hrybVGzPLn1NOG9zSPwmVM4DYzimh8c89aqySAv3wTU24gADoOlWnqU4lpHBPz +fWrCPjBz6cVnoQeD9RTkkOSPQmi7J5Tp7KQYGepNdBaP0rk7KThQT0xXS2j9BxW0GctSOp0Nu3QV +pQ54PWsm15ANasOcCrZlYuR1ZWqydMirKVDZSJVFPFNFOqSxaKBRQMXFFFFIAIpMUtFMBtFBooEF +BozRmgBRS0gpaBhzS0lLSAKKKOtAwo5oooAOaWiigAooooAMUUUUAJRilpKAExSS/wCon/65NTqb +Nnypf+ub/wAqa3B7GwvWsfxVn7FF/wBdR/I1srWP4qGbKL/rqP5VNT4GaU/jRwk+SCPSqEige1aM +3fHpVB8E815h6aCOnknim44yKFAIz7Ut9BjT05pwxjrSHB6Uox+RoaBDs+9OBAzUfQjFSL0GanW4 +xDyaUDHB5oPWlGCRj8arS4rhx+NNKkfjTyvB55zTcY4zUvSWqH0GHnpTtuM0oUZoI5yO9WnZ6itc +McY9KZ05HJqYAUzPXFJa6h5CYJBppHzGn5xgU5V9PWrUkxEM3yxn6Vyd+wMxJ9a7GYHYxNcffDMx +J7ms6rXKa0fiLFpEeD1ya6qy2+SMVz9kFKr+FdFbACIkelZ4de8mFd6HMeIchjzxXG3Z+Yn3rsNd +ILEelchOp3Z7Zrp09owp/Abeg8SKD1rrrth5H4VyWgj94MV1t6P9HOOuKij/ABJCxGtjlOPNOT3r +qLHbsUDuK5VQfO5556V1VgPlX6VnNXloVL4TQUHI+lIwFPUY4pjflWsVrZnO2QPkZ/SkT345oOO9 +PRc9aU29i0iTGOaTIyOcUe1NOM09LE6junTvT8DGTTf6cUvXoetUAoJ4xUm0kcVEvfNSr04qRsAu +D+FJ8o5FKck800ggelHUBnXkUDGeOwpQPWkOOnSo03KGkbjgUm08/SlHP50jdP6UlYGMKg0wqOhp +/ORSlcitHOy0JSICuCee1IAOtSOozTCCOaFIBvFIAc5/KnHikT5jzWidhEoPSlfoOKRcjGOcetSE +cA560J2EQ8jpTTz+VSke1CIDVJu4OwxQ3H86sRj09KUxgCiPaoP0pt6isczr2BJzWTEWUjHfFauv +EGT8qzYgCQfeuaq7TOqn/DOy0EN5YxVLxOG2nvxWp4fAEX4cVmeKXXBFdNN/umzkX8ZI4mTGfrWj +o65lU89azpD2P4Vq6KoMq9cVw1PgPTex3kWRbfhXH6mR55+prslXFrx/drjdQAW4Y9ea2kmqaRyU +fjZoaKCzDiuvgzgCuS0QAY47118HAGaxodbhXepOAQKQingZzSMtdZyiAim96XtR6Z70bgJ6Cg5x +RigmktNAYxRzUqkY9KYoGacAQfalfQY/0p4po608UJCYHORQM0daQ8d+aYgINNOKdnjNJjpSfkAm +R0NJ3pxApoyKLDHgDtS4HPekXpTsDFNCYwrxmgA0tL2oAQAGlIHShcE4obNC0QiJxxioAh3VZfGO +OtRLjPNNbDQjDPFAHH0p7YpuBVLUTIZWIBqoOSasTHqO1QZIFOw0VbpgBis0hiTirtxyearYHWui +jG8jDEStAkXbtA74p0Yx15quZQOPep4mJwa9K1jym7jmyuTUE8rAe1WXBbkVWkVTWsTmkVs5XB61 +PbkDgfjSiGl2FCMVd1Yjla3LkZGcdqdIuMGol+XBqVmBArN7lrVWGxKeTUmPWiMgCpY0DEZouTa+ +iK5j3ZzShcAVcaMAVXIyfxoTuEoNbkigAcelPCkUq8KAacQcVLZcURmPNSJGetEeM49KlZscCpbe +w1FbsQqAMmkJUDFNLl+KTb1osPnXQhZiSTUTgsTnpSu+GIphLMfaqsSpsrtGu6q80ZINaHlgmiWE +BTWdSKejN6UmtTBdPLPy/jTXwy81auYiGNVypHBFefWouJ6NOrzIoSouSKzrqzUktg461utECCCM +dagaAKOckV57jJM7VJNHKyQNyaiMRwOOa6Ge0j+Ygc1ny2uOR0rRMbsYrwryOfWkjhAI5rRmtdvP +5VSkUrwODW8ZXMmi9boueeTWvbdgPWsKzdt2Gz1rqbKHeBgcda76G1zz6+9h8cTE88Yq5HEx4Y1Y +jtWxVqO3QYrrUjjcXcrxw47VaWPptGMVYSJamCIOlHMS4rqRxoasJDyDSquMYqZS1S2wSiOWLGM0 +/wAoU0b80vzCo1KvEcETHNKqoOtR80pzxRYfMuxIduKQGM54pmPem45+lFg5ywHGMCmMy5qMtj3F +NLAHrRyi5yXcPSkL4qMyr2NIZBwafKL2g8uaTzCMYphdTQXC0JA5slVzSFmBqMOeuKcXPWiwczHF +nINJ82famh3PalBbriiwrtj/AJzShWzTRIR2pDI9FguSbWpdhPNQiR+lPEj0WY7j9uCAKQgnHamF +5PQ0hdulFhXJAKDnkVDvfPSl3Pk0WFcmUZ/CnFeM5qEeZ1oLSiiw7jyvNNAPamF37Ck3OelFhXJQ +KACc80zL9aaxcUWG9CYDikycnFQ7349KUu45FFhXJDuppJqLdKcjFHzjORTsGpMM8ZoyQRzVcvJT +TI9HKLmLWTnrSZPSqwkkzkUu6XNFh3J/m9aDmog8lBkcY9KLCuSc9jTctu5pnmNnpxS7n4OKdg3J +Pm65pMuKYXfoelNLv+tKw7sk3ORzS7jUPmP0pwaQinYSbH7mzxSAsetMxIBn0pBI46CiwXfUl+YY +p24gVEJH7jNG8ntRYV2PLPS7z0NR+YfTgU3zvanYfM0Tbz1xR5jE/wA6jEoxk0nmg5pWD2jJVYg5 +pTIuelRb1PtTdymjlH7RkuVNN2gmm4HY0oz1FFg50+g/y++ajZCSaQuwPXmkMhGT9aNQvFkbqwGK +Yu8Yx+NOaU55p6OhNO7Fyx6MYxI61BMUPJ71bfYeKqyoMjBzTTE4MhjiGQVPXtU2yTtSxxEKD0qV +dw5p3IsyqzYPzCp7c4HBFRy7SfmqSGNAAQab2BabFlpGxzVGb5j71ZcOBnqKrbiG59KSQ5SbGJlR +z1qWMd6ikGTwalhBxnNUyEyYPjgmonGTkZwacefwqT5dtIdiBBkkZqxH0x6VAvDe5NTx8Pz3oYkh +rjBBFVp05NX3QDn8qrzLkE4oTLS0KKZz83rUnHXvTHBHI44pM5HJxVWJ5laxo27Ar16VOrfzrNhc +hsZ4q8pBxUSQRkWHUkZqCQEjGeanzlRUWA1QmaT7lOSNXUg9aqhWQkVe+6xFLJAGXcKpsqnuUnUg +fSq7cEYqeXOcd6qvgcVLWhpB2diVSGOKsFBtzVWMjIbvVjfhTmqCyRi66VEL+wPSuAj5uCeuGruN +eZjE2O/FcRCAJj9a4cW9D0svWp1ulNgLkfSvRtGx5S/SvNdMb7o7+tej6IcxKa8ailzs9fE/CdCh +GBT81EpHUU7dXb0POHnmlxTRmjOKnS4AQaM0ZpDg9KNhjuDRzmjij1oAUU0nrinDkU3ApAANBoxT +jjFAEdLinAYpW6VIxmMijgil7UhzQwEx6VG2QTUlRsOaTvYaE69aX0oJwaBk0aDGtjHFREVORUeO +allIjbOKj6VMwGMVC3+RUtFIlToKY45pFYgdaXcDWiZLRDJwjVm2QImYj1rSuCVjJHPFUrHBdmI7 +1MtyXszZgJ71KXAPFVVY1OiknJrogzmkUNYb/R5CR2ryHWJVE8gHvmvW9dbbbv8ASvG9WOZ5Mc8n +mnGSTN6UboxXbL808zcAj0qNgS3TBNJtq7mjiybzR07ipI5CCKrhcjj8fen/AC4UAc80XBxN6zny +Qc4B7DtXU6fJkL6VxNk21gDXXaYdyitab1OatCyOrsySM59K14MnArGszwOa2Iccc1szjL8Zqypq +slWI6hjRMKcM01acKksdRRR0pALSOHKtsIDYOCemf0pRS0DEHvSUtFAhKKU0lMBOKKWigQUc0Gig +YvpS0lHFIYtFFFABRRRTAWkoopAApaKKAA5ooooAMUUUUAJTJv8AUzf9c3/lT8U2fHkTn0jamtwe +xsLWN4sz9ih/66/0raWsTxfxYxf9dR/I1M/hZpT+NHCuxfJ9DVV+W4FTPnpULdc15tj0xFLccUhY +84FHIphfJ6e1NJbsBcE1KAah46jrUyn1pO19Bhx2pQTyDSkZwaTIxxUrR6gG4np+dOXrgU0fhinK +MZqugiTGR700jHPrQzccU3PNT1sPoLyeacq4pFwT7VIoU9aUtQGnofpUf1qVgMH2pgwTS2AMgYxT +l4yPyoA56etKFFXFITGTY8sg+lcfektOQOma667ysTn2rj7ks9w7ZyS2airbkNqHxF6yLcAdM11M +AHkd+lczY4ytdRDt8k/SssPfnFXtY5LWwTIQRxXL3YAPP1rqNaYGQgda5W6JLfzro/5esqHwI2/D +4AkXHfFdTfsBAfpXMeHFJcDH410mpgiE46Yp0V70jOvujl4yDPx611FgG2CuUhDefx2NdbZEbFHt +WbXvlSful3OBTHJPencdaacdOOla7IxGKPWpVHANNQAjmnjg1GpQFajIHFS9ajOeAapPqIdgYpfb +8aaOhFO2/jT9BXHAjBNOUEjg1GBjg1NGABU6XC+gHNMYnOf51Kec5qI7eoptAhmcAmmsQR9Kdwet +NPeosWIScUw8il60nHOfWkkrh0EyeKfnNR9TipOo4NN2QIjcbc800ZNObPpzSqOKhPUCIg9OtCr6 +U9gBzSp1NbXJsAUjNSDtmgmjGad0A078mnoD+dJxTwAD2q+ghW4Apg7n2pZMBaanqazbfMO2hy2t +g+dzVOA/MvGKua3kTEZyM1WtRgocd8VFR+8dEf4aO10YFYQfasPxM+WA+tdDo4XyPwrm/E2DJx75 +roj/AAWcsFescq+Ca1tGwJVxmsh8K2D69K2dEAEqj3riq/Cei9juORa9T0ri79j9oOT3rtHJ+zf8 +BrirzBmbPUGuiatBHHR+JmzomQc11sJ+UZrldEGQM11cAwKxophX3LAzQetKtNc811Kxyht601si +nc9qY3vQAgPNKeaBil470W7jI0yDmpxz9ahHGalXkUugDxxTsjFIopOaLiDJppNOYU0DB5peox2A +RRyKO1A5FMQvSmjH406md6HoNEo6UpPFNHQUdOtAhvX2p2M009af2o8gG9KCaXimnNKzAY5pq/ep +zZIpqZzz0prYAao3OBUrYNQzYVSRVICo75OKYxwv1pm7L8+tSMAQRTW5TVjNnJJxTNpxUs0ZBJqP +PQV34ZdTz8XLoQNGdw+tWbdRUZBNSwgDiu17HAPbIBwM1WL8475q6SAKzpPvk+laQ1OaTsyyGXAA +o4bHtUBJGMCpI807CcmycHPWlBzgDoKiGe9TxBTUsaJAMAe9Toyrgmomz0pHbB96VrivZltpARxV +UZ3A0ilj16VLGNx5otYcpczJQecUrEDntQAKZIccVJS0Q0Pg8VJuqDetOCs2fSqsRdjt4AqSEo7A +SsVjOckdRUOMCnqe1DBPUrSJySORk4J7imbyOKsHBOKQxBvbFFwsNjI4JNSuylcVDgChctSaNIzs +irNGCarvASOK1PJHU80bI+gqZRUlYuM3F3MJ0dcg03YGAB6VrzQK2eKpNAV4rhqYdNnfTxF0ZskB +6jpVaSDgnGa2fJzn9ajMAGa5nh2tjp9smjnpbXvjNVZbFX5xjBrpTApOSKZJaAg4Faxo30M5VrHL +m2CuCO1dJpMilQoqhcWTg5/Gi086Fhj15reC5HZkzaqRujq0AxxU6JVKzkkdVGPStBY5Otdis0eZ +NST1JFRV6nNOXZxSbMYyacqp6UzPqSqy9qd5g7CiOMN9KkMSqKltXNFFtXIjKe1L5jfjUbHaaRZA +3SnYglDNzRufoe1Oj55qUqKls1jC6KvmNnB4pCSO9EyN1FRKxzg1Rm7rQnRN3enmHv6URAZq0duK +htpmsIpooeVyTQFXvU0vQ4qBQw5PrVoza1JETt2qwIVPWo4iKsgjvUSbNIJWIjCFzios8gVPIQel +VmDZJA4oWu5MrX0Jdo7VKsYNV4yx/OrSNgUpFQs2NaJcelQlkBOe1WGcEVTlBY8U46inZPQk4JqZ +EH51VjDZ59atI/6USFC19R7IMVXcAYzU7OGqvLlhxSje5dS3QFwaei561AAwIqdGGc1TREbXJ/LA +HNVpsLzUxlFVpiH9qmKfU0qONiJZQxqVcZFQeXjkHpTlY5BPatGYLRl0KpHSoZFApfOGKjkcMBis +0nc2lKNiBpjkipUwwqExA855qRRgA5zWjMEWEQYoYD8qYr0jODwOtRZ3NuaPKVppNhpUfd2pJEDH +nmkRNnOeK06GJZRV71KygCq4fHWn+ZxjvWbTubQlFKw2TAGahWTOM09vm60zy1zWiMW9SVfmqcRj +FQDIxT1lqGmaQcVuI6qBk1W3nOAKss2+ofLWnEmTTYKM1ZiQYNV9u3gVLHIB1odwg0nqTOqhapP8 +pqxJJu6VAyqxyacdNwm03oAYnAqZUzzUKIQalSTHUcUPyFG19Sbyxiq0iBTzVjzeOKgmO4GlG99S +qnLbQiG1qVU5xUahkYZHFTqcYNWzJLUX7MDzUbxbauqyYwfSoJttQm7m0oJRuil8+cZ4p4ZwKiLn +cVqUdBk1oYEfmOCKd5ynjpUqRq3JFMlijB4FK6uXyNK5CWUnNKFyahKfNgE1KMgcVRAkmccHFQiR +i2DSzO4GTUUcg3cinYXM0Xlc7QKcGQ5BqDcp78+lKBnqamxancc4VjgfSp4o9qjFUgSGxV5JCFFD +vYd4sbJkfTNQPtIwcVZLow5qCRVIJHIpJg49iowIYjPFSwccE1F/Fg1JvRenrWhj1LJGDmpEAPFR +q4dRxzUg4rNmltLkZADUpPQ+9LJgc0xcEGqE3oTZ3Cm4GCO9OjICYpB1yKQR3Kcy9R6VSck4A7Vp +zKOKpbBuNXF6EyWpHE2ME+taSNkDB6iq/lL8uOBSw8Er09KJaitY0YzkGgrtOSKjjYjHpU7EY5rF +6M2WsStKBnNIHOCvQU6TkZFRjHSqsSnbYq3C4O4etUXPzZrRmyaovGBkn04pNWRtCV9xgcKMVMrq +V4OQagZQRxwMUqJtWnG1gqfEYuvMREwPccVx0OfO/HNdTr7t5ZHfmuWtSfMJOCc15+L6nr5etEdV +pQHy56g16PovzRCvOdIzuAPqK9I0ldsYHtXj0H77PUxPwmwKeMZqNakxXZscBICCKQ4pgpe9IVhw +zS4pBS0wA5pRnGKOMUADNIAIwKADS0A0gEOQaDSmjHrTAKaTT8U0ilYBtI+adwDTSc0mUIM03BNS +cYpg4oew0NIFJyO9OI60zrUajFPSm89KeelGBQ1pcBp6Gq0g5qw/6VAwyeKmXmVEaVOOKYCwOam4 +ApMCqSbBsr3UmIjn0qjpkgdnHoas6lxC2KytIEjyNjj5uaf2iGvdbOniQEc1OABxTYlwop+Oc10x +Vkcr3MHxA37px2wa8i1MZmkPP3q9b8QDMb57CvL9UhIdj+FQ9GddB6HOMuDkg96Yc9xjirbIcg4z +UtpbLNKEPTtT5rI6eUphXKlgMc4xSbT6c1pXVpDBwrfN3FU9pz09qFK4nGxYsh84z19a7DTCdq/W +uVs4xu/Kuu01BsFaUnqc1fY6SzJ4rag5rHs14ArYh6V1HnMvRmrSZ4qrHxirSnNSwRMKd9KatOqS +h1FFFIY7iikHFLQAUlLRQAnNJTqbQIOaKXiimAlBNHPNFABRRS0gClpKKBge360tJS0AHNFHeigA +paSloAKKKKBhSUtJQIKbP/x7XJ/6ZnFOqO5/495h/sNTW4PY2kFYvjA4sIv+uo/ka21rD8Y/8eEI +9Zf6UpfCzSn8aOA5bd3yaYVBqU/LnpUb57V5up6ZGSvJHamHGRmpBjrTMZ6UWYCKOcjpUi56jvTc +DGBSgYNS1ZjJO9IAeg6UfXig9ePSkkAoHWpAeKjUjmjt96q1EO6EClHH0pByPypDnj1NLWwEigH8 +akQAA1GvHNO3DI4pNdQHn3pgUDmlJGMUKcYFJbWYCjb3pfY8U08nikUHOKLjIL3PksO+K46TPnMD +6119+SIm56g1yDj96c+tTW+E2w+5p2QO9R0rqI1/ce+K5iyILiunQ/uR9Kzwq9/UnEbHJawoEjY4 +9a5a7HzDkYJrpdbdvMIyO9czcElgRxk1ul+8ZcH7iOi8OD5l710Opj9wwHpWD4cyWHetvVv9UfpV +UF8RjWfvo5iIN5oOeCa6iyJ8sA9cVzNtnzeR3rprUHaMHpis1bn1LnrEvgDApjLk1JkYAHWm7T2r +R3WxiGcYozjOetIRzjvSjnmpasyhw6U0inKc5JxxUbHJ+tUthD1GPTFLk8d/emAj8Kcp60xD+nPe +njGQKjyKcKSuDHGmnn2oJPpTCetD2GhpPPWm5pxwR9BTeeBUa3KAAdqacdKMgHj1ppJzSWjEKp6+ +lKcjoO1NU+lOzRNXGhhJzg0qkc0MAaQUrah0FNAXBzmjaTT1HH1q5biVrC9eaM8EUhGKAOaa0YMF +6c04A5znNAAB5pRgnArR26kjZjlOOtMiU4OTT5FXHXPFNRWCsfas/tFfZOX1jBnIzg5qC2RsqOnt +T9Uw9yQKltMFkBHcVnUl750x+BHW6aWSDpjiuV8QyZl4PWu1sY1Fv+FcT4jAE7H9K6lf2Jy0rOsY +Hynr71t6IAZV3VirGTkgVuaGMyLn1rhqPQ75bHY3DqLb8Oa4u5YtOfQ5rrb3It/YiuOcnzePXFdN +R+6kclBas6TRBgA9a6mDkCuZ0ZcKv4V0cJrOjsTW+Itk4qM+uaXOajYc8V0I5hwIwcGkbpg0gx+N +OJoGNTnipDjFMFKxOMUtRsQU9SaaKcFpagSCn9KYo6U40xDTnFJxTjTeCDQtBB2oXrRntSAnPNLc +Y/imFTmn5GKQd6bWggHJp3egUmDmhABApRwDSYPfil9DT03AUcUxuuKd0ppIHIoauBG/ekjxjikk +bjrSxEAYo2DoDjLVBckbTU5Izk1VuicU9gS1KsIBarEiqBxUNuOTipJ2wKpWCV7mfcckkVFgYz+V +PlbOSaiJyK9OgrRPLxGshRjmnoApquW+bg1ZiZTjNdByt6CyEYquyBxnvViRehPSq7E9BWkdjCa1 +HoitjPWp0jXB9apxkhufWr4lQKRRK6HTipblcpgkZ71ZhUAVFkM3FWUG1elTe4TSjohCMk+1NePd +709QSc1ZEQxxQ3YlQcioEIBHanRBuakkUCnIMCi+grWY9AMZNQynJIqdTgH+dV5TzmpW5cvhIgp3 ++1XECqPWqaFt9TzMQBjj6VTVybpCupPIpAp25zSRyAj1qQg49qBFR3we55qWMlhzUZQZwealBzxQ +2CQhUcU+OM46UKOeash1AGKls1jFW1I/JPSjyVB5p7SmoyzHODU6le6hjKgzVVosnpVkhepNNZ17 +U0ric+xVNv60xoFNXSHYAdKYY1GNxo5UHPJGcYMHgU5YHPOKvbFJGOlThEApNJFRk5GO9opGWFRR +WEe7IGRWu6bugpY4MdqbimtRc8o6Iba2gXGK0NiKKjAKAU/dkc1NivaXVitID2ojz0NTfKeR60hx +jIFaXMWiVCEp7OpHFVxvPalKsTmptqWpNKwyTDmmom0mpNhpQg9eKd9CNQXK0rSnoadsHXNJsHpm +kVd20GlgaAE+tSBVxSqF9KAsMHP+NODkYFSDHHFIcdaQxoxyMUhHangjPFP3DvQBGBilye9P3D0p +Nw6UhjRkgg0fhTt2OKTeSKYhOgxTQxyfSnbsfWjd6UDGFmJoJY44p4Iz0peD0ouKxFkjGBS5Ydqd +yeaMmgLBub0ppLjPFOyaMFqAIzuPQUh31Jhu1KEYjNFw5WR4kNN2vU+CRik2EUXDlZXKt0zSFSBn +NTFSajZGpphysiBY96dtOOtOWM0FGx7Ci4uRgEz1NSeWBTQG4xUig0XGoDNnqaaUGanKZ5pAnBzS +uPkZBtXvR5YFTGKl8rgU7oXIyuYwaQJg9asbCKay4pXDkaI/KHXNG1SMVJtHNN2A07hyMZtA70qo +Kmj8pc+YuQcY9qYBRcORoQxrTSgNPIpcY6UXDkZHsQdTS7E7Gn+WMc0oQDii4crGCMYFHlL0zUoQ +dM0hXrRcXIyLy/em7D61NsOaayufancXKyJtwJPpTAWz04qUoaaQw5p3JsyNiTjim7znnNT4PXFJ +njpTFZjRJ0pjPup+B3HSkKAn04o0DUrlFyc96UDaKeYxzmk2Ed+tMWpIkm0VFPIOoNMZWHI6VC7Z +JBHHelyq5fO7WI0di5J6VaUhgOagCoRUybVH0q2Qh0qDb61D5ajnpStOOnvTXf5T+dSky5OLjoNb +C5qMNIBkUwNuY5P4VZRA2MVb0Mkm3YjilO7mtBGVlFVRGN3IqTaVBxU6MprlYsmecVHuIyDUbSSL +96lQhxTsJStsRODkkGq53EBs9Gx+dSuxG4E8806IBo2BxyOD6c1eyFbnZJC7DA6+tX0BYA1nJj0r +Qt+V/Cs5FwXQWUZXrzVWN8sRVuQDBzVZIgGyaFsS0SKRuAqXpUbL0xxUg54pAI65X6VRkTBBFaWM +CqsqgZ4pxZU1pcYhBXHemEYOaYGIPpT1YHPFO1hOSZYRsYq4uGUVSQgr71ZhOOtRJFU3rYNvJFQO +pz9Ksv1z61BIADn9KEKS6EflbjzUM0IxwKtJlhxTpIuOcUNlRi7XMV0xgDt1pGYYx14q3JEOSKpS +LgGhGjfMczrrEh8/hXM23+s/Guh1hjl/yrBtV/eV5mJerPcwKskdRpR2tHjr3r0rSnAiX6V5npYb +evPUivR9KyIl+leVR0kzvxK0NpWz0p6sahT2qVc116nAx/FLmm9aAcdaYD+2aUHNNFLjpipd7AKR +S5PFA5606ncQe1J7UtJ3oAX60pIphNAwOtADs03jNHFIetK4wIpOKUmkBzS0GBIpg7088jpTQCM0 +nuNCCk47UtMPWpGO60cCm5pDyM03awATTCKVcZpp64qRiHvSKyjk0rYxzSDHrVITKepf6lselUNE +dU3AjkmrupD9y30rK0ndv79aLtSE1eB1qtkDFOzzUEZ+Uc1MOa6YnKzB1wgo4Ned6mgYnGK9C135 +lIFcJfKfTvSex00tDnDEM5P1ojUowYZDZq6ybmJbjjGKVY+VwOaxOy5VkV5SWbkmo/KBOMVoiEkn +IpPKIPTOaokjsockDH4+tdXYIABgccViWkIyK6KyXpntW9LRnHXNmz7Vrw9BWZaqBWpCoGK6Tie5 +bizVlRUEefxqytJiRKOKcKaKcKkoAacKSloAWlFIKWkMKP0oooASilooAQ0mKdSUxCdKKWkoAUCi +iikMKKWkoAWiiigAo5oozQAUUlFAC5opO9FAC0UUlAC4FR3H+ol/65t/KnVHccQTH0jb+VNbg9jd +WsLxl/x4w/8AXX+lbq1geM8/YIP+u39KU/hZpT+NHBnOT9aa5AwD60MSDj1qN2yMntXnPQ9IbntS +j2pBg/8A16OnWhXtoNju9PxzwajXnkU8YznrSAU45pmemKcQfWmdxSb1BDxS/WkT365p4zincBoO +RkUuRkd6Pp6UY5pPsBJzjFBx2oBoxjvmkIAccGng8VEetPUnApdCh2f0pQxyPamH5Tz3pVyCM9KX +2QKupEiJvpXHu2JSRnrXW6kf3R9hXIMMytzUVVZG9A1NPfLjjHNdUvEH4Vy+mpiRfTOc11ZK+Rj2 +qcL8bIxDOL1kje2OtczLw4zXTauh8xz71zkyDeCOprdaTZcPhR1HhtOAx5wMZrV1hgsRz0xWV4dI +2/7NX9YYGLA/KqoLSRjW1qIxLbHmA+/NdLa8qOwrmLMbpOveuntxhQPasd53ZpPRFxcZqQMo4qNT +j8KQnJzitW9TAeSM/WjORgetM4PWjoeKlt3GOxUfHNOZuRSkimgGjGPanqB1po68dKePWrWqEx2c +09O9RCpAO9JdwEIz1PemnBGKeeuMUwnnPamBG5wM0h3HpSNyetHGOeKiRSDGOTTTznFPI71Gx28C +lfsDEXj+lPyMZ9KjLDpTs5HFOSBAD2pRx+JpMdxTsZzUJXdxth/Onrn61GGGRUoIP1q5O7BIU44p +fp3o4/SlGCfeovqA3qcYp2Bil4BPrSE1roSkNkxTQRtaiRuDTRwjd+KUbcysD2OR1Mr9pODnJqa1 +LCRfqKgvhm5PrnpVi1zuTJ4rGa95nV9hHa2khFv+FcVr7lpzmuugO2DjsK4zWXVpmHvXVe1HU5qK +/e3MzJFbuhDLg/lWCcAfTiug0E/MoH0zXDPY7ZbM6HUiVtvTIrjWOZCfeuu1Q/uDn0rkcBpAPeui +q7xSOegtzqtGPyr710kY4Arn9HH7tRiuiiGBUUfhsZ1viJFpHz2FOz2ppJFdHQ5+o0UpOaUUHFAC +IBk0uOaavWn96SY2AHFODUmV7UcUxEikU4mo1qTg8UIGNYjpTeac1IKTBCUUppccAU73AOvSjBFK +Bijk0raiFWg8Uc8YoxmmAmRQDQR2pD096EAp9qjOacARSHNGoFeXHOafDkDmopmGRUsZG2qH0Ezz +VW6dTgd6nYgEms6eQl8ZpDS1LUCg025wBToBhAaZOCauJEtzKnIzzTVOQR2xTriIgmmIDg5r1qfw +o8mo/eZE33xgVaiHTFQcZ46mpkYdK2Oaa0JT0x19KgI55qUbieOlOZM9OtUtDO90QsqqM+lN8xTx +706QZBBqsgO8Zq+hC3L0ALHNX+AmKrwIQBViQggCs+pcyOPK4zVoOm3Geaq7vwpUJJNJq+pMZW0Q +5zkj681KAABimBQTmpRkDnj0oYbscOFNVZTnOKtHGMVWfqaUS6nYrLw2T1qwy7lz7VA+dwq2g/d8 ++lU3YiMbkEAVc5Oatk5HFVEAEhFXgFA570pMcYtlUpk80vC9OaJH9KZuAGTRqx3UdhQTuzVhdmMk +1T3knipOcc0NCv1JXlXBqLeegHFKihmqZkAXpQ7LQpRbVysBnipY4wTVdyQR1qeN+AaGKO5Z8tdt +UZs5NWGmG3FVjuc8+tKKsXNp7CRscCpdzHGKWONR1qwgQdBQyURBXx0qQRnr3p5Pt1pPmpXHZsds +4waTag/CnqrUBMcmlcrkY0FOwoyDxineWoNL8gPFFw5bbjDnFIAx5NP3qKPMHSi4WXcb5bHtThEc +0FzxQHajULRH+WMU5YwAAaYWbApu40rMq8SbYtG1BioN5PSkJc0WYcy7Exxim/L+NR4Pc0bT68UW +FzLsSAr2pfkqLA+tLtz3osHN5EvyCk/d9Kjx70g9aLD5vIm+QCm4U1GT2pCOetFhc/kSfJmgbBUY +9KODRYOYmBSkyo57VFxwKUHHfiiwc5JvU9qCyj8ab8tI209KLD52SEqAKAwqPjA9aMr+FFhc7Hlx +S7gKiJUGlDqDzRYftGSF1oL5FRlkHU0glXPWiwc7HEnv60xm4pzSCmeanTFCQnJke49qXcxxxSM6 +dqeGXA4qmieZgu6n5NJ5g6UhkFId2OyxGKN7dKYZgOlBlHWiwuZj959aQyPiojIRjFG9qdhXZIWY +00k4IFRmU5pDK2eBRYTkScinc/nUHmP1x1p4ZzTaBSY7kdaTkk1G0j8jbTQz5z0osF3cnw3TvS4a +o0LkipcSGga1AZ6HrQSwphMimkLNiiwmyQO1BLZqLzDR5h7iiwczJNxyKUyHFMLjimlhRZBzND/M +pfN9hUQZM0pC9aGkCqMm3oe1J8nWoRtPFGcHrRYHPuT7Y8ZprIG6celQljRuYUWY1OL6D2iGBio2 +jPpRvYdTS+YcjjNPUXuMidWGKgbdyMVbkdeh9Ki3KWqkw5F0ZANuOnSnbU9e3NSlAx4ptxBsUEEH +IzxRdCcJIouG3YHSpeNoDCkUEHnmpCdw5HFXcyaK5Eec1KhCjjrQUjPPSoWVxyD36Ubgrp3LispB +z1xUbzYbApkR4yajmU/eHFJLUqUmyRsuCOtR+U0ZyPan25B4NWZF+X8KG7Ow1C8bmYWBDetCyhVx +7UskRy22qXmbG2t64xWqSaMneJqQfNjA4Iq9B8pI9aowD5VxVpcqQfas5FQlZ3Lb8H69KI1U01jk +D6VGjYPX8Kz6G2iZPIq0i9OO1BfcKYrHfii2hnJq+hOuD1qGde9SD72e3pRJlhzS6lbxMmUgMfpx +TI2bI/GrFynINMjQZra+hlbUmiY8g8VajIqoBtOasKeQaiRUXZk7e9McLt96lBDCm8sCPSoRpJal +dH2k1K7gr9aiK7WNIzbRk9KdhczSsMx8xHrVO6i4bHTGau53bcUSqpUj1FKRUHZnnWtZDPWLa8OR +XUeJLNlDOo4rmYEIY8fQV5eIW9z6LBtO1jo9J3Fk7816PphIiUH0rzjRTiVfrXpFgQYVx6V5lL4m +duJ2RpqcVYVqpKTViNutdJwtE9KMUxTS54qhEgpaaM0uTQIfS5pgbnFKelK4WHGk5pFyaWjcQHsa +Q806mmh7DQox2pD60dqCeuadgEIzSKDk04DvR34pNAI5wOlNByM09hxTeKljQw5phODUhqMjJqSk +Icg0/sKQDJzTmAxTtcBhAqI96kph61PSwxjHNMyV4xTj1NNYZqkgKWpufIPeq2irwTUuqnZDim6J +nbu9TRf3yX8Bvoo2ingYpFPQU4ntXQrHKzmtfkChiRXF3h3HOK7HxARXIXR5IqXszpp9DMEe4t+m +alSIDafSpFANTLt44571FkdDk9iIRjkjvSOm3jvzVpYzj1pTGB+Bqr3JuNto8Yx2rdsgAB71lxDG +0Ada2LLgjNa0zmqmtbL0OPwrUhIzyKz7fnFaMQrpONluPtVhelV4z0qwopMCQdaeM0wU+kMXiijt +RSAWlpKWgYUUUUAGaKKKAEzRRRQAUlFFAgpaQUe1MYtLScUUgFooooAKSlpKAEpaQ0UALxRTTRmg +Bc0hPekNIaAHZqO5b/Rbr/rkaCaiunAtbn/rmaqO4nsdEtYPjIE2MPp5v9K3lrD8YjNjB7S/0qZ/ +CzWn8aPPDnJ7VG2eanZeajIFec9T0xgHA9aDnmnYOM9Pak/woWgbsVBzin8Zxjg0L0xRg/lUvV6A +KBTT3xUgPSoipOTx9PWhaaAxRTweT2qPHHWnjGB61XoIU0FqCcdKYTj86SGSLnPPSpSAcZqvvz0F +TBsjg80NIQ0jngU8DA5NIOe9OwOKh6DQHGKQZ/UUpx25PaoBJlsZxVLRBuQangRNjmuTGfMOffiu +o1L/AFR+hrmM/OfrjNY172Oiga+nACRe/Sunb/U/hXL6ZlpFFdTJxB+GKWE+JmeI6HF6s37xu3Nc +9Mfnzit7VgfMfsK5+T731NaK3MzWPwo6fQQNtS6uxwR7Uzw/92na4VC/zrTDq8ZGFX+IjO0/JkzX +T24woIrmNMOXGK6qAYUZrK15FzehN0xS7uv86AAeaQ1pYyEz6etKeaTjpSfMCOKLgO44pMA9aU4P +0pR39PWhAJnFKM9aNoyacB1+lV6iFX164qRemaYgwDT1xQgDAIqNugp5Jz7VGzZOO4709AGOAD70 +zmgk96Xsaiw7j0BchR1pkgK5z2pFJAyD70jOSSCetJW3YMTKjBozzxTT1wKd2AqXJMpIBkU8Y20z +jNO6DrQtWD0Db2p4AA5pq5yTUgGQKHtcQnPanKTjnvTQBzSjHOOlOLvqDHntSnGAelNBBPNKxAH1 +oGQuCTRMdkPbPNJks3FMu8iI1VN6ikchcuWuGyM4Jq/ZoGkXPHSs6THnsc9TWnY7t649axnrJs63 +pFI62GMfZ/wrhdYGy4bB75rtwz/Zjj0rhdVYtcOWPOegrplb2SOWgn7Rmee3Ymuj8P8AUVzWQTj3 +rqPDw5H0rjqdDsn8LNvVEJg98VyCqTMeh5xXYasdsXPpXIocy/jXRWWiOag9Dr9IHyL/ADrdXNY2 +kg+WgrZXHGamj8JlV+IlHpTSKU80xjit3YxHikIxmhT0pWNIAUilJyaYCBzS7jSuOw79KDScinAA +4zQAqmn9ajeljbPegBWbBxSr60yTOadH0pdRdB2c0YORQBSmnuAGmqeaccYpMccUwH57U3JBoANL +RqxCMaaSetKQfWk7c0DELZprEUuKa5qhFd+uKlQYWoerVYPC0n3K6EDA8k1mSoXfI9a0pWO1j1qk +gO7n1pPYqJZiG1RnrioZCc9c1Y6pxVMnD885q1sZvqVZ1JJPpUAqzOPmqvnmvWpO8bHk1lZ3Gg4b +kYqTIzkDpURJwTQrFj1610Rjqc05aWLOSRx1p24bTnk1ErYBFBdRVWME9RjP0H60QoC+cd6hkYs2 +BVyzU9/aiWxUI2kXUIwMcUjnLEU5QBUXJY1KJm3cfsyBTljKmp4ogQKWRCOvalzaj5GlchQ8hany +MgGooxzUgyTQwiDECoGPap5ATxVd85GaSHPca0Z6+lTQjK80u9dvSiI5BFDehaikV5H2OMetS72Z +ahuFG4Gm+aAuBV2uYuT2FZnzgc+tOVC/Wq/mHdzVqNwcfrQ0Na7h5WORxUbsQMGp2ftmoWwamJc0 +lsPiYcGp3kDCqqkAYXmnYfHPei2olJpWFO3v1pmcHAqQAc55o8vf0ouNRvsNUE/hUyxZqRFRMZp+ +5e1S5MtQXUasLVIEUUwymo97HNLVheKLJZBURkHQVHu5xSFgPenYHN9CdXPNKSxqDzD2pfMYkYo5 +Sea5Lyee9I3FMAlahkfqTxQLWw75RSBlFMGO9OC5amIUODnvRv8ASpkiBFK0YHSpurl8jtchLswx +SDeaRnwcU9WzVEgFc0FXqzGvFK6io5tTX2ehTO7pmkHmHjP0pZQw5FNiJzzV9DLqPVH7ml8uTFTI +ATmpTtA4qHI2jBNFEo4703DetSzKzHg4qDLZxVIyasx21z3qRY3PenRjtVtVQCplIuEUyiysvOaa +PTOKszKDVRgU6GqTuRJWY/ac1IkTNTI3zyatxstKTaKppMgaNh3qPBPFW3II4qnKNvIoi7jmkhQm +cc1IkOetRREk8mrUcgok2KCTYwwjFQlVXrVxmXnFVJsMKUWyqiS2I/lNSLErdKhQMDk1ZjIFUzOO ++o8QACoHVV61ZL5HWq8uH4qVe5rNJLQhymcVKgU1AIyGyanXINUzJE6RLjNRSqqjIqUS4BxUUjCp +V7msuXlKxkj6U5Gz06VFImTkcU9OOM1p0OctIm4CiRR6U1JNo5oeUYrOzub3jYqyHacCmpIWNPcb +h6GkVMdK06GDWpNEFJzU5jWqwbbT/MbHpzUNM1jJJajJlx0qFWbcAasEk0nlgcjrVoze45BtxxVx +FXGap/NxUiyMBxUyTLhJLcfKvGQKpuzDqKtGUkYqu6hjnPenG4ptPYRMnGfWrSxbhxUEYxVhH28E +0pDppdRHgAFVHCg7TVx5genWqcw3ZbvTjfqKpboMVQD7U8RnPFQxbt1XYcZwap6ERV3YgMTjnnOK +hIkGa1HVSBVGYYyRzSjK5c4WRX3sOMU8Ocd6j3/NjHWrCKGxVsySI9+RSh1z6VZ8gbelVZotvfFS +mmVKDirjWK560z171Gyt60wGQH8eatIzuWN5AwBUbTHpSGb1qMshPXFKxak0TRlGyDjrStGOx49K +YEwBtpNzg4ot2Hzp7oR1foB3phypqRpRhABgjOT60i7XNCutw5YvYliRCmcVUug4BIrRSMhcCqF3 +5i5I6U4vUmcWlYqwTENgdzV15crzWcq7m3LxVhZBt2nrVtakRk0rDBMOe9ZcxJm27uprUMY54xms +adT9oGDzkVpGxnK/MdFbjEYHYYq4Omfaq1sv7tfpVpQCtYyZpFWFU5Wmc859aXO0UgOaktu4m45A +HOalBweaiWMg5FTlSFzQxEwUYye9SbQyYqJTwKlXJU1DNIb2KMy8Gq8LDoe1XZRkmqMilWwtaLVE +P3WSsAR64pyngd6rB8cGpYnycU2iW7svRENxjFLkKTUMTYb8KnPIz3rJ7mu8bkMw5z2qKRN44qxI +pK5qNBu4HFUTa5FGjL707HGD2qz5ecVXcbSfrU3uXytGZqlkt1C647VwFxZyWszAjjPFeoMMiue1 +nTFYeao+btXHiqblG6PUwFfkkosx9GTdMDjIXmvRLPd5S+4HNcDpCMk3Jxng+9d3bv8Au1A9K8Sn +8TParu5fViatIwxVBGINWQ2FrpTORotqQe9OyMVWRyRU4ORQmS0SpxinEjFRqSKXIpisOpwPemc8 +U8ChCYuR6UdaSgYoAd1pOvWlHSm7uaAFo60opKAEyaXFIKXNIYUync03ik9QGnimZBpznvUIfqKW +xRLuxSMTTA2SKecml0GJ0ph/nT+lJkYpXAiGM0MMUmDmlwW61SQMyNZb92APepNFRhGMjFR6uv3B +71o6coWJPpRFe9cib9yxpKOKMZzQpOKcfuk11LY5mcj4iYDg/WuRmYH2611HiByWP41yMhySO+az +eqOumgV93A9KmQcDvjioQRkVNERxUO9rGpY9qXikUrjr06U8A5JNUkQPj5xWtZk4Gayo8Hgetatr +jIrSnvqY1NUbVuTwD3rRi4xWdb54NaUXHFdK7nG9y0mKsLmoE5qwnFAkiQZNLSDNOpDDHQ0uRSUY +OKAFooopAOpKMntRQMKKSigA5opaKAENFFJQIWik5paBhS0nJpRQAtFJRQAtNNLSc0AJmig0maAB +iFGaaGBGRQTTeB09aWoDiaYWNBIxULsR3piFL1Xu5ALa5/65NSSS4rOv7jFtN/uNVJpMTO+SsPxj +n7FD/wBdP6VuLWF4z/48YPaX+lTP4Wb0vjRwBOD61CX+apZBz1xUO38681rQ9JMUt2oU8mmn9aB+ +NCutw3Jec89BTjjgjimq2OKeMDHelFAw4J+lIeaUc0hGKOoNDARjH6U8c0xVHXFSKDTWgCFeMUwg +gc9qkbimk7qasIRcfnTgfwpoBHvTqGlfUCTKnpThnBx61EDj604k5AzSauhhIcA1TR8yVNM20E57 +VQgfMufek1oEdyfU/wDVECuaXaXPPX0ro9Sz5BPXIrm0+8T2rGvsjoodTW0tSHX69a6ac/uPwrmt +MLbx9a6S4z5P4UsKtWZ190cXqrDe2RXPOcycdK39UzvfNc6TmU4Hc9a0hq2zVPRHW6EDs68U3Ws9 +x61Loe0R89cVDrBHQVpRXuMwnrUKWmqd4rqoB8ormtNHzDj8a6aHO0VEdyqhYHT+VMIJ6dqXA9aX +dx7elXcyG8/L9aeF7mk4/wDrUoB/SkMRuMClB9uKQgHrSjiqVmIcOeD68UvQ49qaCM/SjcCffFJj +HrgkjNOA6iolbGfWpV7UIQhX8qbsGCakyADmmnnOOlJgiswpCCMZqQ9z+VNbqM+lKMu42hoxjpUe +OakIxkUzmle247BlfxJpc4HSm8HOKU8DipkkNBlaXOaYMfhS8mnBITZIMkjn2qQZ5H6VGuODmpMj +PvQ1cdwO0UnFNJ5pwPpTSdhD1XJolBAGKA2OlNdzye9Jodxsa85qO/P7liPSpkziqmok+Uw+vNVD +bUXU5Bj/AKQcnua2NOwZVFYZYmY+ua2tLyJVrKe51S+E7PYotSeny155qwxcvjnmu/dz9l/CvPtT +O64fjua6an8NHNh177M3k8nj0rrfDwxiuUPJHbFdVoBKgelck90ddT4Wa+skLDk88YrlIced+NdH +rMpMeK56EHzQffpWtd6GNBWR2mlf6tfpWwF71kaVjYtaynn+lKkvdMKvxDh70hx6U44xTM1ujFDg +cimtntTlPHFA560egxoFOU+tGKAoqdUAE7ulPFNx3pQfypoTHMpPNIqkVIMkcUdKbQXIjyeaePlF +Jk54peOhpWAcCM073qL+XSpDjFVYQEg0lJ1owadgHg0fSgelNyQaljFPakpCT3oXJHNC3EIckcVG +1SEUxhjmmmMi28g1MeRUZJFKWODQ9xsguCADVEFS3Wp7h2IIFVoslsGh9kXFWRcXIU1BtBJJqboK +rs4z15q0jNla6G05qqDuIq3c/MKqKhGc16lD4TyMQveBxgetEajORxSnIx3qeFVYZHWulOyOWSbZ +Xc4OefSmEMck1PcxleRVZGyDmtE7q5hazsyVQvB9a0rdRtzVCABjWgo2rxWct7Gyelx+AQaYgw3W +k5xShadjG+ty7HIoxiiVwwqnu7Z5qbBIIJqOWzL9o2rDoh1OOKkVSWpsQKjGeKlUk0McFdjHHNVJ ++M1ab71V5gScU4kz3KomPTNWYG96qNGM5ParFuOPxpysOA26BbHNRJwOasSrwQe/Sq24gY71a2MX +uBCk8VKoAHHeq245461ajXK4JpMoazE4FPSMdzTOrcVJGjNnNTsUk2OwB0FBY0/ZtHJqMtSL5bbj +gQOtLuPReKYMYzTjIoosLn6D9x7+1LuxUO/070i7m70WErtkryDio/MY5FDAgU2PJYZ6ULYbVmWI +4zI3JqZoQoNLFgc1M7r09qht3NVFcpRLAZ9qfEQ3NEiqTxQilau+hlsy3EopJtuDio1lIFNaQsCD +UJO5q5rlsQOH5wakiJxg0ntSg88CrZki4jqAMUx3FQAtS4dutRy6mjm2rCOoI4oU7RQVegI3HPFU +ZkqSHtTmkzgUxY8A0oQVNlcu7tYQ4PvQqKvNPCJRtWi4rBu5oLHPFNOwUYU0FJsRjzTcJnNPwrcd +6QqooEIpANP86mfL1pox6UPUFdbDmcnvUZCk80/avFOwvXFArEY2inCTjinYXuKPl9KNB6h5lMYj +OTTjtx0pAA3agHdjNyjpShiKXHPSnc+lMQ0ufc0hO7oKkAJowQM4pXHYjyaPmxwKkAJFJzmncViP +LjjFIdxqUg0m0/rRcdmMIfFNG8mpmRvWhYz+NK4cruRhX/GmujipwrdM80hVue9Fx8rsV/LY9etO +WI81NsNKIz2p8wcjK5jYd6TYe5q15fHNN8vnOc0cwcjIfLU9TSCNQetT7fWlER60XFyMg2DpzQYx +x3qz5QxQIx1NHMDgyFUXinbFp4SnFOOaLgoshAXp3o2qO9S+UaTZmi4uVkYjBPWmtH15qYR4oZSB +xRcOV9SHay9KCHqTacUzLAd6YrWIwGA5pC3UYqQk0mexFMRFuXNOV9pzmnBU6kUMiHpT0JQ0zMKY +x3Z5pfLB6GkMZHOaFYbbe5AEGSalRgppojemkt3FVuTtqaCSZTk1Wn5yBUauQPTNMLZ6VKjZlyqX +ViuWYHA5GakRT370/C0owO9VcyW5G8OQcis91Kucdq05JOPcVmTswYntThfqa1LW0J1kdep6UvnH +gEVVjm39asKhYAmqdkZRTewhdecdakTAI5qrMgTOD3p9rKc4ahrQWqdjT81gKpXDeZ061NI67cVQ +Zv3gwalLqaqfcUAqcfSnbA+SO/NOwHOPUU9RjC+lVcmUO2w1IyVI9qx7mEpcqccZ710sUag59RWZ +qkQQq/TmiMtbDjBXuy/Bt2D6VMhG01UtJkkVenTnFWhjdjpipasRe7uhAvJPrS/xA4ppzyDS88c0 +iuhbii3DNPkj2jmmQSBVGDUrOrCs7u5raPKRoDjmpEwKiA5OKlA5HNNkR3I5VG72qhONpPvWlIuV +yKpTgbQT61UGKotTOO8OPTIqzGoBDClEW7p1oKsmOelaNmfK9yYBt3X3qyPumqwbgE1ZTBWs5GkO +w47iu0VChKtj3qZOCRn6VEeGOaSAm31TmZd2RUzYAPpiqEznd+NJRL529CdSDUc8QlQg+lNRuKmL +Ar160pRurMtSs1YwBbiCbcBgZrorOQsoFUpod3OKsWTBc14tejyTufQUKyqUzVjK5AFT4Y/SqsPJ +HsaubumKxTKaHqtTKSBioucc1IDVIhkoPrQfWkC04DFOyESr0o3dqRSaDQ9ESOJzRtIpnIqQHpQM +XGaYRzT+Tmm4wKfQQD3objkUciijoAZpKXikHNJ2YxMnFIac2O1MPGDUsY05yRUe0ZqQkkGk5PQU +mUNAWnHI7Ugp2etFgGnmmkU81GTzUsBmetIG96Rj1pqnB5q4t3B7Gbq2S8YAzyK1LIERKPYVn3pV +p4wfWtWBcIKqOrZlUeiLC4oc/I30pKJT+7OPStk9DDqcP4gm2uQPWuSmkAY+9dJ4iYmZvSuTlcAl +WP1AqHsd1JaFiJy2d3XirEXQ5/Cs6NxwQenarSvgAHrSRpJGghJHPpUoBwGHaqaSAc5+tThuOtNb +GbTLUfQetadm3Q5rIV+Bj1rSsG3HB4xVR1ZjUWh0dt0BrSj5wazbXG1a04Qe5rqRxstRCrAqBPyq +daBEgp1NFOpABopKSgBxopP50UwHUlHNFIYtJRRQAUtJzRQAGkoOKSgBaWkooAWgZNJS0gFopBRm +mAtIc0ZoJ9aAGmm0pzTc0MANNNBNMJHNIQMcVWlfFSs1VJWouBWnl29ax9QnH2a7wesJP6irt078 +msDUWJhm5/gbj8KlvVGkYo9kWsPxh/x5Qf8AXT+lbi1h+Mf+PGH/AK6f0qp/CyqXxo8/fGaiJwQB +0qaTg/WoOM1578j0RkhI4xQpLD6UrDg4NJCSBQthkijvUlMA4/GnBckD86gBQO4NKQMe9IM5zStj +p6UaXuMaq9eaeMj2pBnP604g9adxCEBuO9Mx2qVFLEDv0xTHBDHtin5gMGfzpQVxmjt+NJsB4ou9 +xWAtkU5RkZpvTgcinKcZpX6jK94cIcH61mWb/vcehzV+9J2Gsq1/13Tqapr3bhDc0dRfMXB7Vz27 +DDHet3U2Ih47iufBXNc9ZXOmjszZ0zG4GuguWIg9sVzmknLrnr6V0V5gQ/hTw6s2ZVt0cNq0vzPn +1rBjfdIMdmrW1kHc9YVtnzB9a3pxXK2VzapHdaKf3eeKj1MBm570/RgPKz3qvqTtvINKkkoGcv4g ++wX5h9a6KPOAPpXN6WckH1rpI8bRUW94ciRcnIpp70/t04pg7fiau3czEUg9eKeSSRTenvT8gHns +KbSsAm7HT05pVYUxgDQmM4pLyGPOOpNAxkZ/Sl4wKQkAU7iHAc5qRMYqIHPH0p4oT1uDA0Yx/Onc +cU1gSOO1DSBDSuaicEEVOM1GwPPek0rDRGx4570zIpzEnnHSmqD6Vnpcqw5V601/SpAvIFBx+tOS +QkQDcAVp+RgfrTWAJNKqkDnvRBpMJbDgBx6CnZJpEHA96fgDNErt3DoMJ5HNOB5yfyppU9TSelXF +XEyTPPB6UxiC3Jp2DTCnIqKisUiwqjHBrP1TAhbmrvI6VmaqW8s1otEStWcsq/vWYetbmm4Ei57m +sKMN5hrf0pN0g5ziuaW52T0R0dxKFtuPSuDvmzM5x3Oa7u8hxbHntXn96MSOPeumovdRhh7XZWz8 +2T611ugKCFJrkY87smuz0IDaDXNPdG8/hZJrfC8dqwLYqZQeeTit3XjhT9K56zdzMPTNbVUramNK +9jutN4RcVpA4wKzbA/IprRU55PWiklymFTcmGSKTApF4p4961aMhcYpBjvSk00YY0kMc2OMGgA0m +zk08DHWpu76gNx1pwxjFHagYPNV5iHjilIpFANOpAM60pxS4pDwafQBAetO96b3pcUbCFAHehsc0 +mcUhyaEA4cU3v9KUZxSc59qBgeacmaCAaBx1o6gNYDimnFPNRuafmIa5AFMPCmklY0iHcMUXKS0K +sik59e1RRABsmrrIKrSbU4FO13qVfSw9nGDiqJPz8/Wricj8KpTZ8zFVpYlIbPg89sVDgAHJ6VLI +TwTUTY6fjXpYbWJ5WJXvDef0qSJtvBPAqInn2prZA4rrSOGTa2LE8gI9qpjaGwKYTKSOcgmnKpyD +WiSSMrtyuy9bx+laG07RmqloORV1+BWTbuadCM4A9aF6fWhh8tSQJnFNuyMkruwwxkkGnZIxVsxj +bVZgN30pKVypQcSROgqeMYBNRKB0qwANmalmlNaldjg1Cx3NUjEc1GNuaaIe5DNEAMimwkr0qxMU +2nNVYsg+1PdFNJPQml+ZfcVRyCSO9XnxzWazYcj3rSOxg9yUBFNTxjPTpVPdhqtxSrjjrSexcY9W +ShAvJpfMAPFRNKSBUZIHWp5b7l86WxM8hJyemKiMy9utRMxPSmfKp5qlFGcpMsIWfmpRGetRQFSR +j8avZTbUydmXCF1cqFwOOlSxspwfxqKQDJoXIoa0BOzLDY60mF4pArEZ7UuF9aSE22yRHApzOxNN +UAHpUvGM4pMa2GYbHFKFcnOe1P5NLsPSlcrlG7B+NKqKM55p6x9qf5YpXKUGQ7VPTpQOOgqYIv5U +4BBRcPZshGe1GGzgVMfLHIo3rSuPlXVkeCRilCdqk3rRvxRdhaIgjPNBjNHmGkMjGjUfujhHijaO +tM3npSFmxRqF4isi/jTdtJ8+c0DdzmmK8R+1RSFV4NJg07B4pBddhuwZpVRetLtzTtooY012DatI +dlKwHOKTZxSsHMuwmEOeaUBM03bj3pOcnn607BzLsSERgUz5OcUzafWlwACc0WDn8h5C8U3j2pOO +9N465osHP5EgIFLkYqMY9aOPyosLnHbxTS3emgrzzT9yU7C5mw3ClDjpTS6ClBTk0rBzMXcelGSO +aYXXPvSFhxRYfOx+STTgcGoTIB0pfNB4p2FzseX5xSeYaYG7gUbj1osHMx5LAZpuSaUPn8qZu9KL +C5mP+bOaUM9NLmkDtnpTsK7Jd7UfNTPMHel83pSsO4oLUuWzimlwfrS+ZjFArsdubtRlqaJRgUGZ +egosPmHbzzQXyKi85KVXU+1OwudjweKQ4FNJXoD0pGxiiw+Yf8hGabhCabimkEZIosLm8h2B0ppX +nim5aguRinZheIojP6VEytzmpPMbFJvGPrT1FaLIfm460c96k8xOhFL+7Jp3FyJ7MZ8p7cDFNKR8 +4qyETFIYl7UuZB7NlQrg9ajkR1wQatGNgfpUEgIJqkyGmU5Gk6Y5xVUkEkH8avSt61AyxsPTNaJk +tFfy1U5X8asxyjGKjkjYDjoagLEHnjnFHxIafKx103AxTrRtwPOaiZcgc0+1QRtgn3quhD1dy1cZ +C5Xis9XG7B6k1pSBdvFZMoy+Qe9ECpxsrlyNtpqzGQx9vWs+N8rz1q3bEZHapki4SurFxXKkCqep +lZIjk1ZYHcCOOKqXSnawYdc0RSvczlJrQi00Njr3rWzg5qhp0YVBxV88ADvRPcEmHOakwMe1R4JO +OamAzUM0WwiHbn9KcHYnFRjbSDeT06UrEk6kqwqfvn1quc8H0qZSWU5pMaHscjAqrKoIq2gzUUgG +SKUdzSequVEIB9OaSZlIz1pXXBxUT4wau2pHNZWYRkEY65qyhHas8ZVvQdatwsOKcloTF6lobsim +svOadngUSZK59qzRbWpBNnYcGs5gS2G9a0iN4xVOVQrD1p3KgtbiBGbAFLyp56UqnvSv156Uwe4M +4YYp8exBx161X5LfLUwBOPeuXE0+aB2YSrySsXreTJq7nOM1lQttbFXkbcQa8R3Tsz23rqXATilV +iKYBxkU4YFUnqQTLIwqQMSagGakXNVcllgHpmpBzUa8ipOMVS1JENOxxTRzSikIPmpeuKQnrTc80 +7uwDjSdaXtTQeTSQwOaXI6Uox3owO1LZgIQKY3vT2NMOKT3Ghme1Ge9Kc0YBFK4yDecsPSm+ecgY +qbaMmmGMdalXK0I2lbIApru4FThB1pm0E0luO6K7M3FOU8AU58ZxTSAOauKdyZbFaRTJOvtWqgwo +rOiGZq0eccVpAwqDlOaJiEjY+1OVeM1FdnETfStrWRknqefeIZAZ2HrXIXDfOQfwrpNebMzenNcn +cuQxGenpUPY9CmtCZXHHtVmN8D61nJJkdasKx4Ofc1mkzVmnG+0VKkhY4FZ4cAdakSU49Kd9rE27 +mmshyK19PZVwM965tJyTzxitnT5Ock9a0i9TCrHQ7C0PArUhPTJrGsjkA5rXiIwMV1I8+W5fToDU +6mq8Z4FTgUCJRS0wU7tSGHFLSdaKBC0UmaXpQAUGjIooGLSA0Zo4oELRSZooASg0UmaQx1HNJRTA +WjNJRSGKDQaSl4piCkOaWmmgBDTTS01s0CEOMVGSOacTxULtikBHI3eqc0gA61LJIBWfcS54qWxp +EFzKADXP38iNBctwSsZA/Gr17Njn61h3c6vaXoB5Kr/OsXL3kjopw0PeFrD8Zf8AHlB/11/pW4vW +sLxl/wAeUBz/AMtT/Kuifwsil8aOAfIyO9QZOc+lSuTk/wA6iByfevOWh6QHp70g+8AKXgMfWlXb +zwd3Y0LYY/BFOx/OkHv3p/HSl5gJ0OBS9AeKUJ6Ueuam3cAHpSnvjpSgjIPNKcc0W7CY08DdnHem +HvmpMDBz+FMORTQCY96fs70gHr9acWpgRFMfnSYIqUgPjHao5CqjnsKTQXKF+SFNZtowEg96mv7s +DODVC1n/AHgxjrWj2CLszR1Rv3XTtxWEvzE8e9aeozqY8A84rJiYcisKy2Oijszc0cfOD3robwjy +fqKwdHUgg9STW3fKfJx7UqFlczrbo4PVwWZh15rDhUiTJ65rf1LHmPnt1rHjwZfxrWm7RaNLbHX6 +SGMI5PSqepglz361p6SFEKgVT1IKXwMdeKdN+4ZP4xmkg7vpiumi5XFYOmqoI/nW6n6VnH4h1Nh5 +4pvpz2obg5/Chdp71qZDiAQKQYxg96Tk/jQcACh+Yhxxnj0pVBpAAR608A96SSGHbOKbj9aeQBxU +eabGh/AxTvrUY7U8FTx3oshD/rSLyaAaCR2pMBxAGfWopBzmpCRgUhAOBSeqGtys2eKco44/GpSi +4I71H0yDUJa3KbEyc+lIcDv3oxyD+FDqoFJtgNPf6UcnFA5NLjFOGjEx6c4p5A4piYOOakOD09Kt +y1AjfnFNxjkU5s0zrVwtuyGOVvyoMig8/SmDnHtTxHu5NEhrYeCre1Z2r7VgP0rS8sKgckjLYArM +1bmAjjvVJ6BFanKRklzn1roNJ4kFYUCguw45re0tMyDv71yOSTOua0Ogv5B9mwPSvP77mRyMcGu4 +1CNxbk+1cLdf61h2ya6KuyMsOtytGDu78V2mhY2rjoBXHx/eGa7PQwfLH0zXLN3mjep8LDWxwRWD +aIPNHTrW5rRwBmse0GZVz61pXM6XwnYWORGtaKkAc96oWWCij2q6ue9a0vhRy1NyUHFOBzTM09eB +mrbIHYzilUc0nWlDAmkIfkUU3IP+FKcUmNAelKuOlN46UA807CJhigZpB0peQMUragITjNJ1oI70 +LgZ9aADnNLj1pvGaWiTAcemKME8UnNLnrVCADr6Uh9qAeaXg1IwHSkPX6UvHIpPUetOwhhJzSEZp +xFIeKbuMrTK3Y0sQOKJzhabCSRTK6DmzVO4zV0mq1xgg0MERRtx+FVnGXz71YjIwRVaY88Ule2o+ +pFNlcDrVbJzntVuRhVdkOcjp1r1cK9DyMZ8Q4LkZx2qJ1YflUyHFEnKnNdiepwS1RVXjmpUG4iom +O09antxlhk05Cila5pW69ParDg5pkCmpGGTwaz6j+yRkVLEdv4UxlApu7bTtczTsy75gK1XbBfNR +I7k+1O6NihKxUp3LCYqw2Aufaq0Y5BqaQ/LzUPc0h8LZWbnJqAnFTswBqBlLDNWjFkEj5p0TDvUT +p60+A4yOtU1oEXqWTjBxWRc7o5CeOa1hzms2+Qls9hVQ7ES3uVHmAUc1NbS7h7dKozK2M0W0gJx+ +dU46FuXRGv5ijgdTTGbnmmKuRkc4qCR2VuelJInY0YlRqZLDhuaghuVHU1I1xu5PNTytMvmi4jo0 +ZGz61Y3N0qskueTUocnik9QTsP8AlNJuA4FCxk8/nUoRRyaV0hqLY0FsHBqVIywpVMa08P1xSbfQ +pQityRIx3qXaq9agDMeaf8xAzU2ZXMlsiXco6U3zKZx0oDKv0pWDnfQcJcninb2qAuoJpwkp2J52 +PJfingtUQZjRueiwXY85zT1285NQZY9acA3PNDQrkuRmkLqM80gjLUGHHWloVZ2AstIZBkYpuADz +0FLgdqZIGTFKJCaekYbFS+QBUto0UHuVy57Uhd/rUjBVOTximqVJ4pkCDfxT/nHapFANTiPvSci4 +xuUwXBoy3appRjkVBvAOKa1Jas7DvnxxSfvT71JnPSp0WpbsVGNyptkppVh3q66riqcj4pp3CUbD +CJPWk2yHvTlYNjFWkC027CjHmZT8uXHWmFG7nGDWiwGDVObI6URlcc4pEW33p6ox4pkbZ4NXISgx +TldERV2R/Z8DNMMYWrx24qtP0O0VCbZrOKS0IQFNOCAmolGCM1ZjA9KtmSFFuCM96RoVFW1ZcelR +SkYNZpu5tKKSKhCg04KpqFt27PYGpkPStGjElSEdKV4wop0cgAoZwRUXdzZKNis+BTPvGibk8UyI +vkhhirsYvcsxIGNT+UAKijbaanMgIqJN3Noctiq6jNMJGPapJTkcVX+Yds1aMZbkwUdqlSHuajQj +vVhJBipk2XTSe5E8QquwT9auSOCKzZd+8EdKcdRVLJkuxTyRTlhUnjpTEfJxVqIgGm20TBJsj+z4 +5JqEg5q/JtxmqE7bcmlFtjqRURhLjGOaTL85pqtk/wAqmVd3vzV3sZpNke5u4pDKAOlXDENucVVl +jUUJplSg4q4wSA+1ISh6Go2UDpTGDdVNVYzuObqCDmnJnGahZZMZBpgkdTz2NOwbMvbjil3sO9VR +cYODUhlGKnlHzMc0xqF5R370x3U5A61XkfjPeqUQ9o+o5tjE4qNk71AGfsac0h5qrMfNF7iNvzwa +aTkdMn0p3mY696nihSQ9aL23DkT2ZQYSdvXmpUdeB3xU9ygQYHWs5xIGBHWrWplJNF55PlIrP3Zk +I6Amp1bI5zTViBfd78U0rBzOWghVkIH0q7bEjH0qC5wq8YxT4HMijBxS3Q5LlZoBuRSzKjo3GTik +hUHGTT58gccdajqJ66jbIJjHSp5VGRVG1kIYirchyPek1ZluaaHN1p4OM4qNcbc04MDj0qWOLFIX +cMVPHHxUJxwRViJxj3pSvbQqCTeokqbRwaSPJGKdIwNMjyf8KS2FJK+hKh5xTJOCcGl5DAZomBIy +OtLqNaxKsoOSc8Gq0u7jH5ValHAJqNY95NapmTK2Cw57VMvy4pXQA9KRRlcelO4WsW1O4U7+EioY +jhcZqRTkkVnY0fciBxxVK5b5quNkMfeqNzxlqdhxlZiRykfhR5hY+tUXn2LUlu+effir5bK4t2aA +UYpVPPJpvmAjNJG+8n61m1c0+F6E/FWreQdPeq2Nwz7VPEAuMV42Kp8srnt4WpzwszTUinYGc1Ap +GB61KW6etc1zexIpz3pwJzUanNTR4ORQgZPHUlMTjFSHBq0ZsKUCmjinZ4p7iEJIoGOtIzdqUdOa +TGL2ptOzR70IBAKPpSjNHahgI2DUTZqUmomNSykJuzSEnigDmlxzz0qdxiJg9adxRx2pjZ9aNgHc +YqI47Uu7JpCRSuOxAwO6kc9qe3rTGAbBq4gyO2wZGPoa00AwKo26AMT71eXrWsDmqbktVb/iFvpV +rt71T1IkQke1aS2IjueY64x89h1HWuTuTl2NdRrTDzn55zXJ3Rwxxjmp6WPQghsbkHBFTCTBHfmq +aMRipN+Bzzmk0aXLwk6GpA+OvcVQD8dee9PEnSpYGkr5wc5INbemSngE1y8chxnPetnSpvmxnv1o +jozOotDvLCQ4XJ6VuwnIHvXM6c+QDmuigYYFdaeh5klqacRxirCmqcRq0tMknFLTRS0ALmkopM4o +AWikzRQA7IoNNzQaBC5xSEtuGANuDmjNGRSAdQaQGg96GNCdaUUn1ooAdRSUUAKaaeQRS0zev1pg +OUbQBnOB1p1NDqelLQAtNNLmkJoAaTTScUp600mkIYxHOKryN61M3cVUmP6UmNFWdsE81nXLHacV +amJNULkgKazKSMS+lKg5NYVyzGJwMcg/rWpqLZJHfnis2RC1tM3GEAB/Gsra6HbBWifQ69awvGIz +Z247eb/St1awvGP/AB5wc/8ALT+ldcvhZyU/jR59KOcGosYBqxICTgiq0rKAR6V5vkemthofPNPX +BPWsp7kh8H1q7byq+ADTkkkNalwDgDinKBz9KYOakAIJJFZ3Cw4Z6+lIO+acDxj05phPcetDAcDj +tS7jSD270AHvzTsIXv0pSBSZAp3BOT+FD8hoTgYpSB260uAQKUrznsKWwiNm2g1i6nfeWpwa2JyN +rEVymrEtntWsF3JkZFxdOzE561LBKQQQQPU1QMbEnjpzShiq9e/St3FPQw52i7d3Yyqnkd6rQTnI +HrVOVnZsjnHarFtExI9O1Y1Uup20G3G52WhDcQa3dQQCEn25rB0DKgcc1tanIfJPHGK58PbVirfE +jg9VcBmOe9ZEGDLnrzVrV3LOw7ZqlYjMnI4BraMbQbNIv3kju9KXEIA9O9Ur/YJeeSp6Vo6Yv7gc +YOM1maicSn61nTv7MzfxljTsYx3FbcYOKw9MUZGMVvJ8oxipg/eY6iBsc8U0Y69PanYPNN471s3c +xFz+VKGA603nv+FKMkc0W01HcfnuKdz2po6cU7mizQDuOMnmmtjinLjBz601s/WgBCQCMdqcmP1p +mMfjTl6ZovqA8nvSjNHWnDkAUgE20u0flTlyBTWzml5oY0nH51Fg8k055Nrc07KsnUGnGN9BNlfk +cml3Zp2FINM2tjNZNa6FigHNDE0gBGKVjkY7mqjuDBelS4I98imoMe9O5zxUy3uAwjmmjrjFSkE/ +WmEY6itFJ6WJaFCrSjAHHWozKq5zxVO5vUUfKea01eotix54z1OFPAqjqsoMLc9ulV0ujI24+tU9 +VucJgECrjHQI7lK25Zscc10GlHDj8K5u0kXJz3ro9I+/1zXFy3Z1VGrGtqkoFuR2xXB3LAsx9zXb +asyiAg+lcX5QuJWQyInU5kOB+ddFa90iMNZJsrxn5lxXa6GR5Y9hxXExALIRkHBPI9q7XRQfKHHp +XNJWqI2q6wI9cKtj61lWXzTDHrWhrQJORVCxB81frVV9WyKS907C0PyLx2q4CRVS24RfpVkE10U/ +hRyT3JAc1ID2qJD7VKBzVMgeAKXApOeadU9RC9MU7rTc47UZNS3qNAw6UKB6UpoAxx2qlqDJAVAp +c5poxxTgae5I33xRQfak3cYPrSGN75p4HvTaUUgHgCmk0E96Q5p9BCA807kUxeetPY0rjF9qTpQt +BBzRfQBpZhTWP4UHO6kaq1uBDN+dRxtngVM4yDUUYAJFJtlq1gzzzUU3TNTNwcnvVedwBVNgkRIe +DVWRvmxTwWJOOlMYEHmkpXKtYbIDkUKMinN0BNNjkA4r0sLe2h5WMWowfKTSE5FEpBPAppIPFdx5 +nkQOPTvVq1QZFV264q5AD1FVLYm1jSg6dKeWAbNRRkhaUEHOaztqNv3RzMpzSBMimr94Yq0sfFNu +xMYtkAULQAW5p0q7T+NOQAKM0dBO97EkPXFOlPaiMg9KbIxY8VHU12gQN0pAhIpzkdKcnTB9at7G +cVdlOZCOtNjwM8VYuQpGaroPSmndA42kWEIIqrdouaspVa8yQfanDciZmXiN5ecVnQEqefWtQyK6 +bD9KzpomjcleldC+Gxmm+ZGrBKqrk1DcMj1WRztxnNIXJOAe9ZqOtzWT0sKo3HHbNX0iPGearQ7Q +fxq/G6gZNE2FOKYJGT1FSDC9aY0ueB0pFAJzUJMq6TLO/OAOlKN/emqUUetBlJzipsVdskwBnJp6 +sB71XwzY5qzHCTQxK72HedxgDvR5jmlaMJUSuu73pCd1uPw5PtUgibGTToyCanYgCpbNFFWuVCAD +T0x0HSoptxJxT4iQBxT6ELcuRIuOlLIgA4piSgd+lEku7ios7m148pWZsNj3qRDk0wxgnmnooX3q +2YotR4wKWTGDUQbHSkMmetZ21N+dctiCQkEnmhDkjNSEKeKUAA1ZiWIiBUjuuDiqm4il3NiocTVT +srCSjcOO5qJVZelTfN6UAHriqvoQ1dj4+CN1TmUVX59KXDHtUtXLUmhZGyKrMhByKlIftSFXHvVI +h6ioSBzxUyS8VCQ+Kbh+gpNXGpNEzy5qvIN5yaf5betHl8daashNtkagL3zUyNxTBEeuads680Ow +JskMlRHBzmjYeOaUJSsDbe4wIoNPBweKAnPWneWD3p3EkHmGjIPWjYtAUA80tCtRhCnrTsgdKftS +k2oTTuKwnmelDSZpxCDpSfLjpSHqRnFAYHjFSEDvSDA6incmxHuam+ZnipuD2pp2gnigCLcMDim8 +nP1qbp1FOwBTuFrkOfWnhmNP4/SkzjmkMb049aTOO1S555FM65z0oExmefY0vmADipBj0pDgdqLh +awxmJ70wkYqb5f0poC9xTuDRADUqsBTtq56cU4xx07iSGmTIxULrv47VKY0PQ0mzHQ80lZDd2VTH +t4HSpEbYeKeY2IPOaYVdcd6rRkJNO5Z83IxVa4kGDmg7sZqJiT1pRWpcptqxUEjbjnvVhdpNMIU0 +zdtPtWj1MVoy0duOPSqsoAJJxUglGMCqsrs+cURTuaTcWiRcHqKftBqorFDjGc1bhZSeTTehmtXY +hlgI5BwKpXG8dO1a8m0gH2rJnYMSMU4O45x5diss+04I61IkiNkk9aFjEnBpjwbOenWrbRCTtcsh +E6jnnirMI2jOKzk8wHg/SrUUzoORUtAu466PJOKouN3I7dqs3EwcYxzVJHOTmqSsNST91gr5Gc5I +PSpEcD6dqrh1Egx0J6VORzkY9aozd09Bk7sT3IpbEkSYPeopyF+bpipLEhiGp9Bt31ZvJwadOf3Z +PfFRxsdo45pXPykNWDWpcH0KELurZ7ZrQX5wCfSq9tHk5PNXdu0ZpyYuWww9MCnKMimkHGfWnIT0 +qGXHckbG3Apodu3WnEgjHSogcEgUA9x4k5x3NTITuz2qmN271zVpcgLnihoSJmHT1pdoZaPfNOVh +jFQzWHYgkGVqKLjipTnnNVgzBiKtbEXsyeQKV4qmmRu9qnZ+gzURyTxTSdglJNkkfvUucHIqFQc1 +IcjFJgnoMmB+tUrkF1Aq/ICVBAqnICRTQluYdxkMfRTTYbgZA9DUt3BIeF4yarCELgHr0raNrCkm +maaykjHr0q1GOgrMgYuwx0FaMbliB6Cs5Kw43bLqN8vFSRseMVV3t2qaJ8H2rixNPmgehhqvLOxo +xHJzVgDOaoJJzx1q5GSB9a8Rq2h7O+pKp25qaNgarlqmhAI96qPYTLainZ7U1KUjmqIFpwzxSAUv +SmhAwoBxxR1o96GmAtOGaZ6mgOO1FwH80HpSAmjikA01Ee4p5PU1EzEVJSHil4pi807ilfQYtMcY +FOXPemPnBob0BIavrSUJnHFBxSuMhcgGmdTT3wKiZsc1UWEkT2vf61aWqVlyT9auj0raOxyz3JVI +zj0qlqzZiIHpVtc1n6sxWNvpWjJjueZaqh82Qjjk1yd2P3mDwM811+qNukkNchdsBI3B60rHfBlY +Zz6GlOQBmm/KTntQ2M4zTLuLkjvzTlJ659qj2j1p3Jx3oC5Msh5XtWxpz7SNvHIrCXGfbNaVi+Dx ++AqHoD1R3+mTfKp710ts+4CuP0l22rj0rqbR8KKuMtDz6kVc3IWFW1NZ0B6Vdjb1rW5jYtClzTAR +S7jRcB2abmjIpOaLiHUZpM0cU7hYdRTc0vFAC0goooEOFLzSA0UDFxR2pKKQwpaKM0wA8imgAdOK +dikoEBAOOKODRmk5pgFITRk0wmgQvvTDQTTGY0gGuapSnrVmQ8cVRmJNS9hoqScmqF2Rtzmrz5yf +Ss29IwQKLFx3OevhuaoFUi0vgBn90GP4MKtXKk4qE5W3mOPvRMDWSWqOtPQ98WsPxfzaQD/pp/St +xaw/F/8Ax6Qf75/lXRP4Wc1L40cHIcE+3Ws27kCqSfWrs5IJPasLUpyFYDsa4LI9B6GdLcbpCoPe +tWydu4rmVJ83OcYNdNp2CgPPrRUuEJGrETjH61OTxUKt0AqVTx71nyoq4vy549KTBBoyM0p5paXs +MRW/Klz3z16Co8nNOOSCBQA5icUoY4waiJ4xnpT155PWnboIcrE8VITUHIPWpByOfWiwEUhBzXL6 +wpHI966iVeDj0rB1OIsCelXFaEPc5jLBiVHU80xiueKtmAgkepqHydpNbQktzGSd7FcoAV96u26o +SPfvWbcTbXx+FWbecYGKwrxb1O6g1y2O20RQNuCD71o6mB5TZ9Kx9BmLYrT1NwYmB9KyoaJk1V7y +OC1KMGR88c5qlaBfN9OlXNUf5znk5qlZFWdcZySePStFdwbNU9Ujv9OA+zjHpWVfpmUgc81radxb +Kfasi/kIkJ96UFanqY/bZa0xACDitoHP5Vi6Y2RnrW1GCcCs6Wlx1NxH68UgUA81KUPrTCpB9a1u +iBwXim4weB0p/oBQo6+9ADBnpmngH8aQJknk9acMjpT16gLuOMHtQcnp3pcHFHPagBuDjJFNEi5x +nvRNMqLnNZDXgEhGepppXWhN9TdVgSRTu2aq20oZeKtYNQyhQW601s/pTgPWkajZAVZlLce3Wmxh +wCpqyV7mm7ccjvST1uMYBjHtSjJ69Kk2jrRgZ+tJBchJ+YAUpTPOe1RzEq2BUkR3LzTTS0C3UVBt +HHrT8nGaTgH8KN2eKh6sY4HpUUzACnhTkVFco201cFrZkyMm+ucA4bmsKa8cseeKvXoZXYZ96wp3 +GTgV1pXWhk3ylyO7ccd+9Ur26MnBPIxUBZlJ7HrVK4lYsAOpPQVXK2iY1EmadmzFuDxmuv0dT3rh +9OdiRn1ru9GIO3HGQK5KkbM6nK6JtaP7rb7VxkpwWzXaa0o8rNcTOASc9adZe8jTDP3WJERuA967 +jR+IRj0rhYThx7Gu10Zx5QHoKwa99GlX4CDWeePeqOnEeaoPOas6w/zH2qrp3My/WlVSuTB+6dnb +/dHpirGDjjpVaAnaKsA+tdNNKxyT3Hqe1WFIqoDg+9WY/eqfYgk60hY07g1GT/OpYkSZ70opin16 +U8UnYYvPSlGe9HWm55/GjbUB5yOaUZpvWnCm32FYaSM80beh64oK560q0Ju+oCHNKoo4GBzSiiwA +aAc0cUvvQnbcQmMHFOx60nU0pPrQ7ANo9TS5Ham+9JIY1uDUbgngdKexOaaSO9OzHcYSdpqKNvmx +T5PunFU0bD80my0rotS1TnBIAFTyMAKrO+V/CqbCKIYyFY02XnntSBvmqSTBTNKNrFSIC4PFM5Bz +Ue87iKkxxxXoYJu9jy8etCJ2JJFAJ4p+w+lMOQfrXqHj6jzyAB19atW68e9U1zu46VoQDipZUrNF +pPu0mTk0q5C+lOwMEmoQT2Gxj5v5VeDDb2qgG209Jd3GabVxQnbQlmbdQM7cHtUW45xU3zd6XkDd +3cmiXg1G5qQEhfrUZGelSty57WIW61E0mzipWU5NRPHuY+laKxi7kMj5P1pVNDRgd/pQFI6U3awK +9yVCeKiuSQpx1xUgboOuajnx37iiO4pmAzFJD7mp3+ZckVBdACYADGTVk48sBeTiuhmKbKJ+VsCp +Qy4x3phUljnINC+/NJl3uTx5zVgEgD3quJBxk1I8mRgZqdWzSSUVoTBwOM1KN5HtVaNOhc1dU/Lg +dxUSdthwjfcEBzVjytozVeNxu5q35gK8Vm27msbW1IVf5sYxV6A8ZqgVyc+9TJJgEUNXIjLlZbmI +IIFUgjbiRUm9j70qhz2oWg5Su7j1dlqTzCRUYj9aeFQUtATewg54NO57CnDHpTxjNIEiHEnpT9j1 +LgkUgRs9aLj5RoiJH3qUJ71KqN60vlkHilzD5WMCgdacFTNLsalEZzzSuPlY0qvpQAvpUpRqTYc0 +rj5GRn1xTsjHSpPLFKY16UcyHyMi3ZOAKcHxTtiijatFw5WRbj6Uu49KdhaX5M0xcpHk0nzGpvkp +cpSuPl8yDByKUKc1KSlJuAouHKhmGzS7KfvX0pN9GoWXcbsOaTY1SbwBRv70XY7RIgjfrS7HqTzB +SeZRditEZsanBTS+ZijfxRqO0Q2EUhU0vmcUnmd6NRe6HlnrR5ZxSiQmgyNijUfuh5eTQUA6UwSG +lMjE0aheIpWkKetBZu9MLPinqK8SRUFIY1yKapPrQXODzRqF42H7AaCg5GahLtjikMjnvxRZi5ok ++xaNig1BuYUb2NFmHNHsTlVFN2+lQ7zxzil3MKLMOZdibAApNqkVGCxFLhgMUWDmXYeUWkCCmgt6 +0fNQF49h23tQUJpN5FG9qNQ90b5bAmkKEdak3kCkMmRRdhaJDhs+lNO4HFT70zQStVcnlXcgOTUb +YwQR3q0yrng1GY1NNSQOD6FFwvIqExehq40RyagdGU8VaZk4sqyLIOhqFmdOo61bcECoW54ParTI +aIN/PpUisV5o+QdRSOsYwRT3JSV7khl3jFUZkYEsD17VMVbGRz6VG/mHkimkkOTchIW5FNuXBBxT +c4JH86ichsgninbW5SlaNh9sSSM9avFQq1Qt8IT9eKnmuPl47UndyKXKo6jJEUknpVWSN1BK+nFT +RTl2weeatGMFeeKd2tzNR5tjn2l2uN3oK0YZDInHXFV7y2VmLL29KZbyGM/Nx9K06aGcnqF65UYH +XjNXtMiYICe/61l3e15FHv0robCHbGv0pTdkOMHLUuwnAIPakmbKmkBKN9ajuWKglayS1KbsT6co +PXrWjIFxWRYTNwTWgZCw5rOSfMbqceUrSQo7jOenqaQ2wz1YfQmntgFT+dSHHbNMzuQ+TIekjAUI +nlnAyc1OBnpSbdpBpXKa1JYogeT1pWUgD2NSKflAxRIwx+HFTfUuUUlcdkMvvimoc8DnkU1PmGKV +QQaTQovURlOTVOQMr/Wrz5HNVZQx5q4sia1K0hYHJ6UAn5e9SGIseeaRk2j6VdyLDs8DHrU/bj0q +BCDirC52kjiokaQG8sMHjvVUjls9O1WuSarzAq1CFszPuSiZzWVcEHGDzWnfDGT7VknJZiRwK0gV +UlfQktz5ZwO/XNaMLDINZyDnirayADb6U5ahTVtWX9y4yOtKsgGKrKwKgH86m255rKS0Li9bluJ8 +Nk960lYlQc1kovB9hVyFiBg14eKp8s9D3cLU54F5M/WrUPFVYeR6VOnWudPU3ZfXpQzU2MkgUrDn +NWZ9RVPY07IpijP5U/b0zTQmKKKSl5p3AKbtpecUtLQAJ6UuMim4zzT+cVIyLGKZIPSpCajYVBSE +XinFqYME4p5GMUdBhmmt0pw9KR+n0olsCI0IpxI6U1e1KwNJXG9yB+pxUZQlT64qZ1yKaBhTmqjY +THWgwMVbqpamrf0rojscs9yVBzWTrZxG59q10GKxdd/1bfStHqTHc84vCpaTPcnFcjdtucn0PWuu +vefM45zXIXfLtj1NPojqjLUgBHU+1IaQA80pwRx3pWL5hAeMAUozzSADuaf0H170DUgU49a0LEEs +AfX9KpBT0rU05Mbcc1Eh8x1mlqw2k109qzYHfHeua06MgLjvXSWwKqKUbnJUszagPAq7GRVCDoKu +x4xWiZgyyDT81CDxTg1O4h+7FG7rTM0mT1ouA/dTs1FmnZxzTuBJmjNMBzS1VxDs96UYNMzTxQId +RTQaWgY6j3pKUGgYtFJR2piDNJk0UmaBi5pMmm5NBNAgJNMY0ppp60NiG54pmePelOaYSaTAikJF +UZSSTVqZsCqR3Fs1JRG1Zl2pINaxU45rPu16/pTa0HDcwJQckY+tQzri2nI4AQ/rV+VCcnHeqV2w +W0uQeMoCPzrBtp6HWtj3ZawfGA/0WD/fP8q3lrA8ZMRaW+Opc/yrql8LOel8aPPbk9R6Vzt8MsRn +iugmyxIrF1CJgzMBxk9K4Ueg9WYnlAOCPpW9YPhBWIu7f1rWtVYAHoD2ok7sFGyNqN8gY9KkDEGq +cTFQKmD55J71PUaLORikyfWow3FKSpNTbXUYob1705T69ajxnpxUoAx70O+6AXbzx070c5pVB70o +Xk+lLoA0dakQYpQBQF59s0SYJA6dPSsfUow3UVu4G3ms68jVgeO1ClbQTRx1wwUke9Qfe/Kp9QjZ +ZD6ZqKCFic9ea1S00IWr1Mi9QI2OmTnFNtt2cds1d1KLBA6+tRQREAcVVSSSsbUovc6vQiQRWrqb +YiPNZehIeGPSr+qsBEee3WueirpjqfEjjNQwWaq1lsEq47Glvn+ZvUVFp5YyL9RVqNqbNV8R6DZN +/o6+mOKxNQYbz9a1bZ8WoI4wO1Y9yRI/tmkrezRgl77NDTAQo5rdiHQ9qxdOThQP1rbXAGPpWML3 +LnuPz1FNxjnrS9eeaAMkitVczDqaUe1IFpcUru4wIxQoB5ofg80KccCmpCsPOeuaaSvAHFLgYPao +z3+tP0C5UviwVttcw5l84/XmunuirAg1jNEnmk8c9a3Wxl1NXSydig9cd61+wrOskCIMelXC34YF +YtGjJsgYzSN2x0qEPnrUuQRk0pIEK44FR4wTg04njrSZC9qQxwFITzTctjNO+U4yanUZXlTJGPwp +8a7eOlPI+b2p6qOfTFN3C4wqSKAhH1qYqTgHilwASDUpahfQRVFQXDDaasnjFVblARWsVroQ2clq +rNubbz1rFUIx+bkk963dWXbuxXNNvViRXTFWWjOeTdyeVIwOKx7sMDkHoeKv7nYZbNUbjrj0OK1V +jKzb0LGnZJAz3rvtBQkAHsK4GwUhvyru9CJUA+orirP3kd1NNQL+uKFgJz2rhZyScAV2muSExc+l +cTNneRRVfvJHRh17oQr86muy0sbYvl5rjovvqR612WmAmEHrxWP20VVehn6qx3kY981HphPmqPen +aqTvI6jmmaUCZhSqCjpE7K3PyAVPnPNVoPugHsKmIIHB4rohtocstxwIB4q0hwMVRBwe9Txsxxmq +tqSy329qKap4607t7VLJQ4Y6U/timDnApRxSbQx3amY5p5xg009sUW0AeBTvamrTiD+NGghOlJ17 +0Gm0bgOzQDnimkjgdaA1MEOPFBakNKB60nuAoPalPTmmZp+Rj1outgGgYpCcUu4ZqN800gFOaRlJ +WkLcelHOKTY7ETA4OKoEEMW96vNycVRmO0kUmjSI+TJXrVcOoytS7/l5qkWO/J9aq+l0Ul0HS4By +KcrFhiopTnBpkTdc1Ket0NrQZMpRqmTkD361DK43AkZGQTU0W0525A7A13YV+8efjY3gPTB69eaZ +MiZBFOyB7c004OMmvU8zxbq1hi9KvW+MDNUyMYIq1CDjih6kMu8YxmmluOPemnO0ZprZA9qSQTFA +yKeiAdKbEpfHtUpXacdqd+guV2uEfLVZHPFVkB3e1WV4qZDgSsBgVCOOae7YxTCQBmpRc9xoUk56 +01om71JGwz+NWXC4obaYRgpK5lS/KR9aaDUk4BYioypzWvQytZijrSSrmmk4bHalZ/xoSFIxNRgw +wYcYqa0VXFS6j9wkdaisHTArVv3SY076ofcQKFOOCKxw7K5BPTNdHNGCufauavhsckU4O6Jfuy1J +EJkJIPerUI5GTyap2JEqtUxR1OcdfSjyLle9zXKrtHtSq2Bmqtu77QDUwBY4rFroa300HgjcTU6l +jnHrTFVV96nU+lIkQI2PSpERRyetGG4qRU4pNjUWxBhW4FSjdQsa9ak3IKlvsWoW3GhGapFi9aTf +jpShiaWo/cRII1xS4UUzJ55pAMdTSsNyXRFgMnpS7lyahGKdxSsh87JBIM0u/IqL5etLuUZosg52 +P3mjfzUW8etG9RTsLnZLvNG5iQai3gcineYuOnNFg5mO3Nk0oLVDv/OneaaLC5iTk/SkwelM8xvS +gM/PpRYLjsEGkwaTLU0lqBEg3dKWo9z/AKUDceaLDHEYpRyaYUfrSfOOtMRLhfWlwtQ5J708KTnB +pWGmKcGk3LzSiIkVG6EUaCaY87expCwHSo+O5ppUetOwiYMvrRuUdajERYdaR0KmjQdmlclLp+FI +ZEFVj16004z1p2Jci0JkAoMykVCqBqdJGuPpRoWlJoPOFL5wFVXkVSRSRurnFVymdy2Z8jFN805I +pqKpOBnGeKlMa1F0jRRbGGRgeKVi4GTUbHa3c0/7SH+QCnYgZ5p6Yo3N2pQm6rCwgChtIqMHIqF5 +KUSP6VLLHgHjvVYOR1prUmSsyfLEClBcnmkQggVZjizSbsOMWyIMR1FJ5hqy0YFVpMKeaSaY5RaD +zMUolFMDBse1PVcmmT10Hb060GROvWneSMZxUUigcUlZlNNDtyn6UjFfWoSooKn1qrEXJOOx70mD +mk2OKjYuposGw9t2abvfnmmGXB5pnnAZzTsK44yNnmkMvPIpPMQkmmsUZuKdg52hrOvOaiYKelLI +gqI7hzjIH61VgVToxREvJ7mo3TGaXcwxTS9PUHyMjwwHoKPMx8tO3g5FNAH0yKYci6MhdoyeVBFV +XjUkkHB9avPCMEj0qts6+3erTM3BlX94ppzOpAzxTgpBJPrRIAxGeoqjP1FiwjZFTyzjYADyPSqA +EitwTjnrTg79GFFgU2lZEiFpWYnuc4qrfJ5SsRx3Iq4hA59qr3vzpgdKa3BtWdzBjuXa4UZ4B6V2 +9hLmJfpXBOvk3OCc5IrrrCVVjTk9KdSN1cUanK7I1pDkgj1qG4KtGcelOVt3P5VXmJAIJ9ayitQb +uSWhAGPT9atef/DVS1JYVbWIknNKVr6lRWmhNwyingjbxTUTA9qAMjHSoZaJFzjIofIpig8jtTju +x7VPUu7aFV2PGacGJ4JqL1IpsZOeTTsK7LKEZxTxxioVb5wKl4JHPSpY0x74IqCUZGKsbcjimMBg ++1JFzV9SCEBu1JKqgED86arhSaHYtz7VdtSeZctiujYYirUbHp2qpg781KjMDVNERepO/DA1DcDI +BJ6VMeQDTHX5TUouRl3g3Lx6VkkHge+M1sSoWzxWeYgGJPrVp2BRciJUKrTkx/F9KT5dxHbNEh4C +j8apBJq9iaOQNx2zWgnKgisdWEffpV6GXcCAelTNDpyRoJ3z61YU8VTiYAZ/WpxksM15uMp80T0s +FPllY0oH/lVmMkmqMDAZB61ehUda8tLQ9RlyMnipqgjNS5xVLUzYoyCKfk4qMDJzUnOMVSExucGn +84zTCKcpOKQCUvGKMDr70dzTYCig5FITijmoGRknNIac+Kj70mUhehzT88U3AajGOO1JgHPNNcGn +DvTXOBUjEUUrdOaYhNKc4zRcZE5PSkxlTz2pWJpGOFb6VSRMmNtM5bPAycVdGTVO05Gavcdq2hsc +89yVDxWDr7fumrcjrC14/I2K1voQtzgrtBtfA5Nchdxne2BjFdjd5Cv+NcvcqzOfTPSrkaQkZyRn +7wzweakSBncIMZOetW44B3zz1qwY7VQdsLMxH3nP9Bj+ZqUW5GSsLbnzxsGT60uw4FaEjzylgSFV +sfKvA4/z71GYeMDvmk7FKRAkeQMe9a2nJyM1TjhAIrZ06LrxUPUHKx0FgBwB1rft1IxWPZJtwDW5 +b544ppaanLKRow5q2nYVWhBwM1ajFVcglyaXik4ooELmjIo96TFAC0u49aYM5p3FCGOyaXNMFOFV +cQ+njtUWKkpgOozSDmnYp3QAOtOpMGlwaBhRRjmg1QhppM0ppv8ASgA4pDmnU0mgTGmmEmnNTeM0 +CuNNRtmpSKikqWNMpyZOc1EFBqeSmBcU0tRNkZU1n3Kk5BFajCqUqZLECnK5UGY7wNg9uazdQhX7 +PP7x8fnXRtCP6VQvrYG2uCRnCGueUW2bKZ66lc/4yIFrb5/vn+VdAnWue8aDNtbezt/KumXwsVL4 +0cI65rLvojgkdq02yDxVO8UspAxzXndT0kc55J8z6kVrQoFAPTioPJwRjkjiraIQBnpipTbkVIev +8VPXdnFNXIGfapM8jjmtOhnsPGTjFPIAAH50xTgU73JpKL3HckQkfyqTPBJqFW9OpFPDHGKS0YPY +lXHUetS9elV1bPFWVP5VMhjWpy44/lQRQoqWguPPQflUEq5B4qxjOPpUUgwpPtTQHI6pGTJjpzTr +O24Gan1BN8o471atI8JnuBVNu5S2Od1aEhs46c1ViReOOBV/V3bzMH3qpCM9Kis3c3pfCdHo+Me1 +O1rJj4qTSFAQfSo9a+6QO9VQfuMxqfGcJesu45/AU3T/APWrz3ovEbcelLYY3qetav8Ahl/aOzjk +C2+Kxpph5h+vSr4kPkY9qx5Mlzz0NS17iM4fEzpdLYYBxwa2VPTH0rC0stgccYrcTpWUNhz3JfpR +nAzTN5FNLHNacqtoZkoY5p4cVBk9R2qNnxz3qXG+g7losD15Gab2qFZMil35H0qorQTJuwyaib5u +lKCfzo2k8CjbdAyjdfdIFZiB94HcGtqaM8VXWBST61rfQlIktyTwe1WlYnPpUKRBak45rO+pQ8AU +7djp+VIuDQeKaEPzgUgYN/So9wA5oycrSa0GiYNQWFJuAxTSR2qLaD6koHQU8AdqgU7sVYQAH8KT +emoDwQRn3p+Ce+KQDseKXPbtQt9RMUgAcdqglXKk1NuDcelRyLuH4Va0JOb1CDzcgLXNz25DkEd6 +7iWHJOa57UIFWQ4+tVzMbSZhm33Djj2rMvLdkc5/CuthtNy7iOMVi6pGqyY/CtIzdhKmrlCzjckD +3rvdCj+QfSuQs1Bxn1GPeu00b5Yx3wK55O80dElaLItdQhM1xshGTnjmux1yTKkCuInkG8jOea0q +R97QKL90kh5kB6c5FdxpYPkjntXDWQ8yVfqK7zTyFgGfSsdqiQ6j90ydVXLk4z1qLS8iQfUdafqk +h8w4qPTsmUY5FKpFDi9DsIiNo+lTZqrEx2L3qfPHHet4NJHLLcUgk8VLH1FRjpUkQx1qm0IsipRt +xUagdKmVeOKhu+ghnuKeMUjYpV96SetgYuM0e1LjvTVz3o6gSKKU8ikBpxORQIbimnqc07mkIovc +BuKTOKfTfpVAKxGKQZxmg0L0x0o1AQdRT/amE+lOUjFDDUTuaYSM8dKfjk01sU0tAGsPyqM5GcU/ +OKiYmlZMaGM4HWqtyQefSnyuAQc1DIdw4NNLoaIhWQYINQSbt2acuFb2pzgAE4qWuhpoGDtqrIzI +TVhDkYqG4jIyRST0CwxjuGasQ9MYqqpPGatW5OcV1YaXvHHi43gTeXxim7DyanHNIUOO9esnoeA1 +roQA8c1YgGcVAR0NWrcDH8qbEywegpG5H0pzKaYc0Ime5LDjv3p7kFeKq+YQcVOpGOlJx1uNT0sL +EMc1OnXNRqOKliXgk0mOG42Tk/SmkcfjUjYJqF+tCFN6huVaeJSVxUTKCKFG36U7Im7Q1/mNNZSa +cxO6kGCaewLVkTKM00rzinucHApoOW5qkTJalHUCRG/FYtjdFZCvYHmuiu4RJGa5eSJracnsTXRC +0o2MXJwlc6HzCy8Vmalb5jLDv3q1ZyeZtHerF7HmFunQ1K92Vgb5ldnMWEjRORjFawlz2rGjYxyt +xitCMl8EZqpLUuMnbQ0Yju5q2uSMVWhUcYq0pCjFc7ZvGOhKkZJqcbVFVg56DipFLHJPepd2VdLY +sBxjikDsTimZUdOTQJRj3osS5Nk+D3pdyDqagDO1PELNR6i1exKJUBpfNPYUzZtHzU4MucUWFqSB +3bnBpcSHNSQgEVY2DH4VDlY2jC6uVNp65o2570S7g3HamoxzT6Gb3Jljzx1qQQgUsZHGasfLUNs2 +jFWKRQA035Samm2n61X2+lUjNqzsWEVTiphEMVBExHFWxIoWok2awSa1K8ihag3g8VZcg1WZDniq +jtqZzWuhKnOKsLH3qqoIqdXOcUpX6FQa6iugFU5C6k4q20gqB035ojpuKprsQxPk9Ktx7arLGFxm +plJTFOWooaPUsHGOapT7s/LUzSZqJju60oqxVSSehAGYHFWYz0qIqmaTcF6GrepmtC6rDFQTP71X +M7CmGQtSUbMuVS6sRSl16HOacjtxmkJPcUzJx0rQx1L6SqFxTJJV9etVcu1Bidu9Qoq5q6jasI7F +uR2poyOtTpCccmneRnqelVcysxI5cYApS5NOWFBT/KFToXeViq0Yc8inrEqc1Z8tOKXylp8wrECt +g1Jvz1p3lpzS+WuRik2hq6IX5yKaqJnnrVjylz6UeUKLisxgwOakV+Md6PK96QxnqOaTsyk2hHO7 +PFQmPcamMb0m189PxprQTuxFUAe9TJLjr2qLDjtSEP3otcabWxYaQEVVlyw96dlvSmsTnHQ0JWCc +myNIyDzxVlGweahDZ7U7eemKb1Ji7FtpQVxVaXDU3eelNLE0lGxcql0V3LbhzVmMgjBNRkAnpSqw +FU9jJaMtqFI57VDPgDjmmCUDio5Jc9KlRdzVyjykJlHOaQMCKikzninRkcA1rYwJhFkdKjMJXPar +kbLgVFOV2k96hSd7Gzpq1zPdGB4NREyDsae8jhsEdaeoZsdhWvQw6kJlIHNRiSMn0rQ+zgpnFUJY +gpOO9CaY5Ra3GyFDwD+FRncACPyqBllyTSb5VHIq7GV2Tszge2Kj8xlx3zTftPPzDtQWjfkdqLFK +b6E+Y2/KopI1bOKRhxkVEzsv0pcr6Fe1X2kNeBuAKDkfeG7J6mpklGADTiivwR2p3tuHJGWsSsyA +gY471A6ShcAZA9auvGR0quzFQc9K0TMKkLPU567RxKCQc5rorHDxAjk1h6hMDKF9+tbWmGNVQcjN +XJ6GUeiNeBW796jvUPBHXNaEEYKjAqG8jHFcyl7x1Ok7XILRWXAPGa2oVQgetZS4V129MDr61ejl +xx0qampdJqL1LEqqMYqoc7iMVO0inmoScnNRFOw5tN6CinEjBprZOMdRSnpxT6gthIxnipVjwM45 +qOPcG5q7/DnrUydi4QTWpW2gEZqXj9KbKf5UqHK9KOhDVnYmTkdKjwcmnoT07U07tx9KnqaP4UUp +PlaoJjJxjp3q5OpzkVH5e/FapmDRXXpmpRtPX86V4WHHQVHHkAg09waZaTbtx1owOahRyDipgSTU +NWNN0UXBVjms+6UjnpmtS6CIQ1Z13jbnFWt7jTaVjNchV/HtToQWXJphxIwPSrSRhV461o3ZEQjz +MqtE27rmp4F+YDkDvTpUYBWxgHIHvipYhtGO5pN3QWtIvRenap+eOKrwgkj06VLIRkYP1rjrq8Wd +1B2ki1bDccmr8TYIFUbZ1IrQjQZFeG42Z7d9C7DUnFMVflFPC9vWnsQOB5qQGo1UipOaaExfejij +miquIQg0lHOTSc96GAoY96Dmk5zS1mMYx5ox3FDD0oBouUAAo4GaXPak96TWgCYpk3SpOKik64Pe +k9hrcEwBQTQvAFKeetSttRkbDP4VFJwjVKSAarythTVRJY6xYfMPetJcYFZNjnP41qqeK3p7HPPc +kGK53XWwr1vh/wAq5/WyrAitNyVucbdfcceo61zzIC755BrortTscjpWIEO48d60m9kOHVkaRNjA +HX0qXyflIPerUMRZQR1z0qykOCCR8o5NRcpmV9m4wexpGtxx+dahXceeTTfJBPNRLfQpXM8QgEED +r1rXsIhgGoBAO/c1qWcYGKa13ImatlFkDNa1uhGDVK0U4H0rUiFPyMGWYwetWEHFRIvap0HSgQ+l +9aSjHWgBRSHFGaOaYCZ+bHtS0Ac5paEAUowBRzSgGjW4xRTx2pg9KkGKoB2BTttNFPzTAWkozQaY +wNNPTNLSUyRKTFLSdaAEprU7FIcUyWMNNNOPFMJAoYhCagkPpT3YVXd6ljRGe/rSDNN35JpFYk00 +T1JTjHSotueMdafuHP0pVplIhaMVVvYf9EuTjpH/AFrRK81XvlP2Wc/7GKErsq5361geMs/Zbfv8 +5rfWsPxcM20H+8acvhZrS+NHn7dTVWfnrVybavJHeqUpcknHy15/mz0Sqq881NgCmgANTtwHGOtQ +ty2PVMjnmlK9DTkb5RSn255qkSxgOOBTieO2aYxxzS54GO9U2KwuSOfzpPNP60EHtyKjfGRU6AWB +IuQRnip0kzz71m7+fxqzEwOOabSYJl4sD36U9GGcD8arBv8A9dSI2aiyYFoPnikmxtPtTATTZXwB +RFIGYtzFukJHHpVhI8R4pXTe5PbNThTsOewpbyK6HI6vjzcDnmq0AyR7GrOtHEpqvaI8hAHPtUVt +WdFL4DqdK4QEnoKq685CMR9KuaajIu0jpWdr2duD0q8PbkZhU+M4253bifrS6arGUe55ptyTz7VP +pKjzk+taSf7tmq1kdP8AZm8gbfSsN12yke9dZs/0fgc7a5idf3x92qW/cRnD4mbemodi+tbS8L+N +ZWmZ2rgdq1Vz3rOmE9w+lABGfwp/Q5pSwBxitN9yBjZFQtkYyO9T9/rTSATmjURBk5xUw6E03byS +B2pwU4qloAuRUyY4NQ46Ec0+NhzxmhiHSgsDVXYV/PmrbMCKiyCDQMYOeD6UvGaUcUKeaHYESDNB +xnNOxxkd6YR68UX6IBhz0FDE5HNLnBpDyRR0EKN2MUoGRS5GMGmAkHjpUq5RMgBxirCL3qvGV6D1 +q1H2NJbCbHkE/hTJGwMd6k3Dv0NMcKRkUIGNTPWpGxTI1wakZeM09LiZUkUYbFYN9GGk/Guhm4Vh +7VgyczDPrzVdAW5PFFiM8dBXL6zGPO4rr1HyH6Vyur7VlOamN+W5pG3OVLZRwce1dno6ERD864+1 +ILL0FdvpQzEpHpWa1mjSq/dZk69wpPtXDThjK2D3rufEIODXFSD5yfWuqWkiaWsSfTkxKvBzXfWY +Itx9K4jT8eavHIxXcW7D7Pk+lcyd6o6mkTntSP70noKfpQJcdOtU9UuFExGe9W9DkRpPanKOuo+b +3TrIlOwVMobNMjPyipk/PNb2VjmuPVT3qULk5oQZ4qULjp1qZMQgGKlBbj6UzBHWng81NwsHPPpS +8dBSMaAR+NLqA85FANOUAikxg0mriHDGKUH0pgwc04ZHWmgYo96axOacMUxsU7hYU88UgoWl9KN1 +cBD3zTcYxUp6GmelVcQzBzTh0xQQaeoHFJWC4ykfBzT2GKYcY96AITmoJTjpVjIqvMQBVKw1uUpi +CCajRwwxSuwORVUMwYD3qWzdLQWU7CeelOjfzEPNRXALLTICVAU1T3BEudhzmnyYZM98VHIV5NQe +f29RSSswZC8oVquQPnHNZk5/D1qezmzgdq6KWkjlrr3TaUnIH41M7KF9M1VR8mnOx6HpXqpXR4Td +nYhdiOB61ctmziqLVatztABquhD3L7N+VMJpnmZOM06NA560LYh3bF25OacfSpvJIGRUR5bBpJg4 +tbjwSBVhSNpqHBwBU2Nq1LLh1ZHk5qPOW6U7jk9qavLe1UQ9WSiMsOKYwIGKuLt21WnHNSndlzhZ +XK2DkmnKO+Kev3TQoJBNUyILUrSfe4pmPm+tSPkmmLgGr6Gb3JfLLLXPatbBXziuoVlC4FYmtbSu +adKT5jScYqNzP044YZ7VqzYkQiufs5/3gxwM1vwlWHua1mrO5zr3tEcpfIYrjJ9atW7nA6VLrcUY +O7uDxVCykO4A1o9Y3EnZ8pvwn5R61OpqGIIFBpxl7CuY6fIsB0H1pd7E8dKijBY81YxspaXBRe4+ +ONj1p7KU5xSwsO4p8hBHFTfUpxXLcZG+7AFX4dtZqkjg1YWYgYokhQmkTzBT1qqEbfUrPu98Uqn0 +5oWiFJ3ZPE5XFTmYdKqAuadtkOKlxVylNpWJGINMCc5pdrmnbW4zQIcGxT/NpojB70vlgdTU6FK6 +EZwTzRkc07y1PelVBTDUYCB3pfMxT9i0bVHakBHvzSjPOKcMZ6U/twKBkOXo3P0xUvNNJxTExmH4 +4pQsnel3NTlyaQJDSrZpMGnMSAah3HkmgY7BHemHHc0FvWomJpisKRg8mkO3saaDng0EelUKwnej +B7DFOVD6VIIyMfSi4WREFZjjHSn+SSKmRSO1PBwMVNyko2IBA1SiE96kFISfwpNsa5UIIhg04RUg +ZhTwzYpO41yCeVml8ujc1G80aheIeXRsNG4ml3H8qNQ0GbDnijFP3nFJuB60ah7o0qTQQRTt3NO8 +xSKNQtHuMwetNAbtT94xzSb1pisgxxim80/ctG5fWi4+VEdKfSn5SjKE0XFykWeeaDj8v1qTCZzQ +VSi4chDxRx6VPtXmmFB1zRcORkfBpDtHWn7aayjYTu5GOPWncnkZGUQ81CyFSCDmpTmomL9hVohj +Sr/pUJ3DqKmLtjHNMz3qkSyF896TeKmJHemeWhzxTuTYekhA6015M8U7y9o/CoGjkPKmhJDbZHIu +WBzT48Aik2uM5FNB5OfWq8iety+zqUwOlZl3k8g9KmeXAwKgf5hUxjYudS+hSjyx55qdo/l+gpCu +3OBUhOVwfwrR7ihZrUz3AZsDvSCAg/L9aWYEPwOM1ZiIK/UU3JpCjBORUbzY8E8im+cG69KfdOwb +aBUexdpxznvVGbjZkitGxG1sGpPmAJz+NZ+HVsg4A7VYW4ZflYZ603EhSJ2kwPYcVXlkBHPccCnm +RG74xzUcgDg9PSmkOVVmFfwnzFfsTzitWwbKqeuOKr3ULFWA5INT6eNqlf8AIq+hDkpWsjqLS4AU +CmXcwZwM1Ut3yDz+NNkZnlAA4FYcqvc19pK1i8vIBqXdgc0xB8lCknj0qRjll5x2qX3qGJSTyMYz +U5HH4VLGOHT1p6jjimRjIxTh6VLLiK2QwIp4lYA1FJnimgkc+tFrhzWJ8hv60+L7p/SoISaspUsa +1BTzmntmmkYNSnGMn0qWy4q6ZXlUkUQ7e9S9VOe1QhqrdWJWjuTTAEe1ZzDDdKus/HtVSQ/iacVY +JyTEUEGps8ZFRnNTKflxjmm2KG1itMNy+tUJoy64PatQjgiqbg8qe+aEwS1MIgoxB6CnJIxVsGm3 +wkRzkHGaSMKF+tbaNXIleLsWIw7MM/d7VY2EkbaI4xtX6VPGo2mobLgm2PjIVcE4wM1JhW5FV+Sc +9qmiYHn3rCqvdOmk7zsWoPlOPcVqw9AR2rKgOWGfWtWId1rwpfFoe90LangZqUfyqJM9TUvNIkeC +TTqRTSmrJDNOx3qPqakwRUoBhJzSkgUEd6ODTYDd1BpD3palFDT60KRQeKAKQBxmjPBpR1pM1LGF +QuMmps5qNh6UnYaBeKGwKMYprkUdBjHxzmqkobOAOKtFiaicdKe4noTWqKBVlulRwAAVN25reKsj +lk9REGQa5zW/4vTNdOMAGuY1w8MB61rbYUTlbsfJWWFBbPvWneP8mKzoQC2KUtGawWhbhi6c8Crm +C+QxJwO9QQjDD37VdCflUuVkVbUqiLml8sHr2q4IxknvR5ZJ460gaKflkH+VX7RCMVEU6e1WrfGR +6VSSM5o1rYYwK0YugxVK2XAHrWhGCMU76mLRYj7VMM5qNOnFSrQ7Eju9FLmk7UAHr+lGaM9qTNIQ +vIpcdKTJIpcUIYU4YxTacDTuOwop4NN4pRmncB4NOBqME5pwINO4DqWk5oqkMKQmkJpCc0yRc0lI +aCaYgJpmeSBSmmHpxTJYjN61C7+lK5xVV5AM0XRLHNJVR5ME0ks3B56VRlmPSluMnMmDwaej45FZ +4mFKtwPwq0idTUDqetTLis+OUY61aSWlYotDnHeob4N9knP+zSpIBxTL182cxz2xVRWo+h3q9awv +Fw/0a3/3mrdXrWH4vx9ltyf75qZ/Czel8aOCnUuVHYZNVZAT0q5Jtqq/Ga89noorFcnmmleePXFS +eoqPvg5pK25VidV+WkGcU9eRTsZxkVKYNEJGOT1oHT3qZkH503G3rTv3EhgDAcVE/c+9TEkk+/ao +5B1OKSkrjsyoxOSB+lTwvkgDtVG5kaMnHfNRWt5uk2nk1XQmzudCozUigZqG3bcoIqfp0qJO+w0i +T/JqGZjxUwyTVW4J3Y7ZpXsCQ1Ac+tTsp2GmxjjipJfufUULcbOL1kYm+hNQWZdGQqcEVPrAxKce +vSorTKupwM9eaivudFP4DqdNDlSTyTWbrq5Q5981r2ByucYJ5xWT4gbhsjFa4f8Ahs55/GcPcnBP +p61d0ZAZRVG5wGP9K0dDP7xR781VX+EbRfvHbFcW3/Aa5mcDzjnrmuofi29eK5iYDzSOeueamWkE +Zw+Jm5py5UGtReMD+dZunA7B9K0l461NN6CqbhzwelLjOaeSOCaRj0xWtr7EDcHI+tKR1NA6U77w +FRdDIwuKcVbPbFOCHnmlI71UREbDPbpSgenFJz/WlPSquAxzxTRSnLd6UJ+VLzEhMcjvinDB4Ipu +cCloa1GTLjrSPkc4zQvQUrHoKkZF3pRj9KQg5yaXJ5B69qolgc/4VGwOOO9PJPFNbJAz2qV2QwjJ +GM1djOaor9KtxMOnfFOwMnfGKYWGOKeQTwe9RlaEk2K45G6mpS/AFRouKJFIGaUlqFyKc/Kc9TWM +EzMO/vWtJyKrLGA/TPND2sNAylUP0rkNYbMxHTmuzmBCH3FcVqf+vwetXdcpdLWZFbLkjPau30p8 +QA+1cfbHBUAZNddp4xAPpWMFeaZdZ6GZr7qc/nXHTBSSeBXTa6zbse9cvIwJbPrW0/jHS+Ataep8 +xScda617pIrY887a422l2EfWr1zdSGLaDxjmlShepdmWIlaJnX9yJJmOeM1t+HmBb3rlmdixOSMm +t/QnKNxWtSKRlCdzvYSGxzVtAcjmsq2nGK1IHVh15oewFoDmplA61X3gDFPSTJ4rNgTHjk0mR0qJ +nJOM0A81IEhyaRB0oyDThx60kBKvpQelGeAaY5oS7CFyKdk4qAHnGamGcUncYoPrSEetC+tPxmhg +NGKUUw8GlBOaSBkpBxSAU9TxzSYNWQMIpKcwbpTe2Ke4xGyeKYcinHjtUZJougGbhmoJ8YBFSSHG +T2quzgjFUmhpGe7MpOaicYINPnVy2e1ORAy4p21NU9CNTuGD0quwCtmrPl7DntTJkyM96Ldx3IXb +eOtUy2GPt3qyAcEelV5R3FGrYNgcMOmcVFb5RvxpybtuD2pBncO3pW0EYVNjXjJKipccGobXJAHb +FTyce1enB3ieHVjaRGQfwpUYjk0wsQevWnDkCtYmE2r6E4fJq5bMAeay2LA1JDc4IUmhxuib2dzd +81cYquuC+ajict1/OpEBzketSlYblzMnI54pzZ249qYMZp0hAAqepS2bI9pxTemakJ+WomzjmqM2 +OWf+EUjuWxTEjGc0/uPSnoDb2HEcc96XGFpxUYBpr5C1JUUVzwTUKnJJqY5PNRKAWrRGTF83bmsz +Uw0kRwK0mjzyOlQXUYKMPaqg7MieqsclDujlOfzro7J1Kgn0rEeIeY3tWjaOcY/CtqmpNFWE1WPe +hKjmsCFvKkPcV09zGGjP0rlLhdk3phqqGsbGc21O6N+KQuoANWUHAzWfYtujU1eDLxWEjshrqydM +qwNWt4OKphv51MN/biosW2WFkAOKUsahCEEFqlDrgCixncDvyMCpUj3HJ4pgbOMU8K56dqGKxKFR +eCanQpgYHaqwRjirEakcVDsaRjJkq57UvzU5QBTwFIqbl8hGuaeAetPG3tS7kpXGoruM2nNKEbPN +SKQaduFK7HyoaI6UIehpd/FJvNLUfui7KQp3o3mml2o1D3RwUc07YKi3NQWfrRZhzRJSopu1eTUR +c85phkI6U0mLmRNgZ60hZRVYzGo2mJzinysXP2LEsqjpUBmFQszHpzSbXJq1FIhyY7cSaMZI5pRG +c9alSHmgWrIwtSYUVZW3GKY0YBqea5Tg0Rqy96eGTFNKr0pVUYAp6E6j96dqNwxT0iHUUPEMVN0a +crsM3rgigSKPemlQOKaFHUU7EXH+auacJV4qNUBP41KYeM0Ow0m9UBkXFMEi80MgApgRaEkJtkwl +WlDp371EIxTxFSdildjy6U3cvekaPAqPaR3oSQm2SnbQNuDURB65pdsmODTDUlO3FMwuc9qZtkA5 +6VGN9CQmybGec0g+tM+bpSBZCeKdhDyCelJhqTbKDzTSZBxQDJ8H1pD9aiLyYHrSbn70WC5MSRTc +sKieUrUP2k0JA5EzSMO/FN8xvrUJuA3HFN8xOcVXKTzsm87tR5qgVXOOuaXcvfrT5UNVH1Jt0Zwf +WkKoajAJPXilAOfalYftPIeY1pVh6nNNJb6CpAxUUahzRe4x0YCoirBas+ZnORSZQihNhyxezKZJ +pcLjkVP5aN1pTGpFPmRPs2UZfLPbFQlAQdpqWZGFQHcAa0RDi+o0xuOnOOaa+8DFTpuP1oPXkU7i +aKLDcBntSKdo68VcZYn4xUL269jTvclXTuipcYkB9uagXABGauyW8gGBzmqkkTpng9KtWFd7kIzv +OTnmnS4ABxnFMIPGc0jOSCvrVW1JumhyRlyT7UhSRTgdKWFiOuadLJsIzT1uRyq1ytJ5oLAjIplk +cSNnjqK0I0EiEmquBHIQKfNfQFTsrmjCwXnpUsWTJkmoMfJuHNT2RDvUS2uVTXvWNRFypHtUIIVj +161MAy4x3qOZGXkVijVlqHYetOfaBxVNGKYqRZWOM1LTuac0eWxNEQuRTu9MjJ3c09j83SkxIG4y +etIg38UhJ5qWDGRnii+g0ruw9YSpzT1BBFTgDHFRuuDWadzSUOUGUjmnYynFITx9ach4xQwhvYi5 +6d6hPytU7Zziq0uQc1SM5DZC+T6VCMkA55qwVZ8GnPFtHpVXJtdEIPAqSNieKjQHpTlDBuOhpPYq +LaY5g3t9aryIFOc1aYMR1qCdQy5PJoQ3ozKuk3E8cVUVF3jA4zV64yBk9qpRZ5+ua0jsKe5dTZjB +9al6CoE7fShpDk0Naji2kPZhjGKejbRj2qoGJNWIiTXPX0g7nThk3NFy33EjBzWvAzDtWXaoRg1r +Q5x0rwm9T3nsW1ycVOuMVAv1qQGmZkgoHWlHAoxnmgAB5p2RTcUHFGohCeRR0PFGKCeaGMMUuDSA +tS5JpdQGkgGm8jNBYZpcA0ihOTSkHtRijNIApp4PPancc0wnmobGgPqKiYmpCTUbgUmMZ9ajPofW +n4PNRHIOapCkX4B8tS1HEQVFScGumOxyPcUcKa5PX3OfxrrD901xniFju2471Y4LU5y+bMeR0rPg +Y5Aq5fOpRQKowsdwx9KU9zqpx9017fjGevHNaKYwM1mwZOOcVoxDIAqAa1Jwuc45pVTGeKevYU7k +Ypp2JaIGjzg1PAgVqRsdKkhHKkjvTuRJGnAAAK0Is4qnCOAatoD0FO5hJFlSamHTpUK54qYUXIsL +n9aSlxSc0MQnFFJRzUtsLDgaUGmZNL/KmA/jGaTrSZIFGTTvYY9Sadmo8mlB9KLjJBSg4qLdinBq +aAm3UZFR7vSk3GncCQkU0mm5zSZqriaHZ4ozTc0E+lNMQpNMc4pajcgU7k2IJnH4VQmfmrM7cVl3 +UmM0xWIZrgDcMYqi8+SeelRXdxtyayZr9VbOeRUttFxhfY1TPjnPelScHvWGt6rNjNSLdnOKqMyv +Zs6OO4HA7VZWfHeucivtpz/kVONQBIOa05l0I5GdGlxnvUl3J/oExHr1rBjuzkc1cmut1lMM+mPx +oixuLPV161heLxm2t/8Afat1awvF+fs9tj++38qifws0o/GjhnA5+tVpAeasuTz+lQOCeMV597o9 +IrbTk0wAbqsYxTQoHPrUvTYY9R6elKc4xQAOgp4GcVAxu3NNK5/A1KQQDjpTQDnANCuBHtH4UyRM +1MevNRSPgGtOVNCuZd5ENpz6VhwK3nkgkYPStu7beGGeaowQnzM+/wCdVL4RQ+I37LPlriroHIPe +qlohAXFXQtYXbLY7BAFVZs5q3/hVZ8Z96WrYh0eVGadL9xj2FIoOARSzcxke1Wo+9YmT0ON1Ukzf +Q1Db4BHvT9VYmc5NR24yyY61nWWp1UvgR1+mjEY+lYuvsuCrHBB61taeD5Qz6Vg+ITyfXNb4dfuz +ml/EONuBkk98mtPQwRKv1rNmJJOc1q6GB5qn3FOr/DNo7s7SZv8AR/8AgNcxJ80uffmulumCwevH +SuYZlM3AOM0qnwIypbnRaeMIK0gMHNULADYO1aGDkDtWcNtAluGOlDAY60uOfahhntx0rVPQz6jV +75p2cdKTsKUZI96kYo56+1Bzx6U4YPFDce1Oz6DImA6ClHSl2k9+9KF4z7U2wsR7cflSt04NPK00 +9TS1EQEtThkD1zTiM4o29KY0SKMjijGBThx35oxx61IEXfmmkDpjvT39KTbgCq6iE+9gUOvFKoHW +g9DUoZGjdQamjbPPvUBJB/Dmm7+gq0SaSPu6inEAkVVifjmrO4HGKmVgFGQeO3Wnt8wpg5+lP5xx +QFiDaT1pPLwRUpyM5pOCOTTbQFa6BCMR6Vw2pH/SW9u9d1dg+WfpXDagF89u/NEn7ppRXvjrQElT +0yegrs7AAQfhXKWaqWXHHTiuttVIh/Cpp/Eh1tjmtexuNcnMVySM11uuD5mxXJzjDN7Vo2nMcF7g +2F2447jmr8pUxHntWanXHvVyTd5RI7qR+db0o+9c5cRIzd/OegBre0TBPWue6knpzW7ou4ng45p1 +VczpM6yKQjGK0bSY9c1mpgAetWIGbIxxmlKLsaJm7uJApwYj2qvbsxWnyNtHNZMqw8Pk81MMYOKz +TPtOc1NHcluP1qWrFWZfUk/hUo3jJqGM5GexqbcOlZpaEsNxFNkI/HFMLY60wnNUkAofmpwxxVcb +cc04N0osBZWnA4OKgjf1qQOKhoCRlB5pADmnrgjmlxzS9AuKueadx+FA4pcVaJY0jiowKmIHrTDT +uBG2e1REdanK+lRNkYpLUCrMpwcVS5BNabjcKoyJsNO9i4kMkQ61AMqcdquAqwxVeRDnitE7lDWX +cM1A2DwatIflxVSf5T+ND1QLcqykr+dQ5DCppd1VhJzgURvYbIGYo56gVITwDUcxH3sUCZAODWqT +2MZO6NaxfgZ4q5Mwasq0lyRzV4txxXoUdY6nk19JMiIbcPSrSYPFRKNx/Gpdu3BrqRwSuJInfpVd +Qdwz61cIUr1qsvDj68UwjroaUJYIKsR5AFV0xtFWogMD0qOhNtbE0ac80jdcU9DjNMbrmo6mr+EG +Hy4oCEjFITuOM1YjwPehuwoxTZXZCoHFNVTu56Vak21CvJzQnoEopSHODgU1wNlPAyRRJ0xQNbNl +TsaiCbzwcGrDLhT61HGQpq+hktx/knGe9VriP5T7ir4kXFVJ+R1oi3cqcY20OYvovLckcZFRW0wB +C5q9qyfLntWTEV3ZH412LWJx6puxtth1PeuY1JVEvJ43YNdGj/uuOuK5vVTtY/XnFFMTtdGlYYEY +PrVwYLfpWbZS5hXrjpWrDGW5zWUtDri77FiJOcmrBNNReMdKX5e5rO5XKx2S1OWPNR7wOQKaJW9a +NQtGO5cRUXFSb17VT3MxqRW70rDdRLZFgzYxTlmaqpYdzTftCrkClyk88jREjGplPvWWLrjipo5p +DScWNSNMDvninYFVI2c4561YUMcVDVi07kuAMc0vHXNNKHFNKtS3G9B5wO9IGFR4bnJowO9Owrkg +Yd6a0ijNIUNQSALyaErg7olMyimtcelVDIuetKCXINVykptj3mk7cVEZJDVkRrioJIic4oTQ5Rsi +EEkkZqxFESQDUYhYYNXIuBRJijuOWAAU0x46VPu4pvU81CuaTaexXTgnNWE25FMMaZ4pwwOBTepC +0LYxioZAOaTccZpu7J5qUrM1lO6sVW+9ip0NB29cUCr3MloWY2GKVmWq+WHFG496jlNOfQjmyxyK +jVmHFTkpjGOaaNtX0M2SxYzzU5K1Uzt5FKXY1DVzSM7KzC46HFVo3IHNWD83U00oo4q1tYzlqx6M +DVtQCtURhelSrNgVMlcuEktySQcVVYkmpGk3VCVU5600rEyabJR2zVhQDjFVACuM84qRZCKUkOEk +tyZwMYqrIcGpjJkZFV3G404oJtN6D0+bipo0GarojKetSo+1qH5Ci1fUndOKqygqM1ZMoI5qCXLd +KUb3LqWaIQ26lxmk2MO9ISy1ZiOZBjNU5FUE1P52RzVeY7gSKcb3KmlbQZtHUUqR5qJWIwDmrkAD +cmrbsZxjd2IjAQM81E0bKetaMmOlZ87BeRSi2ypwtsMy/apY3fFV1lUmrkQBApsiKbYhlJPNPEgp +Si1GQmKWjBprckOMZoyCOKiKsRgGhd4HNFgHEnH5UhdgKbvIPIpXkXFFgTZVnkI561XEq55FSSyR +njP4VUA3E81oloHPJF5SOnFDBGzg4FQge9AyOlKxSmnuiRkAqPYR05p284FKXGR3pag+RkR3cioW +PUEdKsFkzTTsY1SZDhfYpSRox6VC0CkcccmtBoQSKQw84HQVSkS6bMl4nQ5znPNRt83Xr6ntWlLC +uPftVV4MEn2rRSMZRYQyBRgkcVSeUfaD9amZAO9QtEVcMf73U1SS3FzN+6asOGjIPpUlkCr1WhcY +z69KvW20n3qHsVHc1MHANI43qfanoMpzRwMg8Vzo3kupROQPekikXcVxzTphgnHQ1DGrb8+1abox +6mihwy1I315NQdhjipSMgGs2apgB2708HB96YAQfrR0bjpSGXUm4weKVm4zVQv8AKfWnRyErj2qe +Urnb3LQYEc0Lww+lQo5xg04Ehs5+lJoqL1JH4NRzrkA1I/OCaZIcpx6UIJKzH2+3vUsqLg1UhcrU +zSZGM0mncqM1y2ZUOA5HTtSsAtLIO460bcr15qzIePm60x1BDU9On86CP1qTSWquY9ynUYzVXCoe +laVxGC/ArNlQqw9K0TWw1FtEmcAmom9D3pu9gaeiFmyelPYXWxIkeQMdqsxqOhp0W1VxxTkZWb6V +w4qT5D0cHT965egQ4zWhCOBVaAYU47qRVyLAAryj02SA81ItMOO1PXjGaSJJQfWlJIpnNLmmxDw3 +rSHrxQo70uM0mwFyKbx1p3FNI9KHqAgYU447U3HGaOAaLaajGEc0o7Uj98UwMScZqdtCrEpz2pp4 +pQTSNjr6UriQpIxTKccEU00nqUhMA02QGnCjaelJpARYAGKibAZc1OwzkGqczESID601sJmnHjaM +U81HDygpxOK6FexyvccfumuK8QE+Z+NdoDlSa4rXTmYj0NXsVT3OYvWIHpVaD+9+GKsagBleearQ +khhnPtUT3O2Hwmra9cnoO9akZA6c5rKt2zgHitSHkdKEiHuWkyMjv1p4bFRqfSnjHHPOcGn0JaHE +ZNSw+/ao+AfrUsH3gaEiJGrD90Yq2vSqcPQdqupzVWOdkydqnFQhe9SDpTIY+m0UlSAgzmlNFFIQ +nNLjik7UUIY4Z/KjuKAKMd6LhYKXJpKWhAJ7UdOlLxSGmMWlzTeKQck0XCw/PvRk0ylGKakDQ7Pa +jPajg0nSrJEJNQyN61MelV5jxRcLFO4bGcVj3soAYk+9aNyzetYN/KADk0czGomPqNxwSTXOTXDF +jlgKtancgMwz2NYbyszGs1K7ud9OlZGis4PX26VNHcP+OKyg+c4/ziplnGD83WrUinTNhLjsfanC +6wSpPuKx2um69wP6VH9rbOAOlPnIdI6iC8IwG9jWmbofYpxzzt5rjIL8jHuDitNdSVrK4TvlD9Oa +uM1cznSPo5KwvFxIgtz/ALTVvL1rC8WgG3t/95qqp8LMKPxo4hwCcmq7564qy/JxUTqMcdK8ttnp +Ig6f4004GOOlScVGSelDGh4HAp6jsPWmr6U8ALRcALYJHamAClOfzoXknPpQtwew0ng5qrKQM1bO +MHFVZwMGtYqxDMyRN7kUQxBT93pVpINzbqtJAM5Iok1YcVbUkt1wucVaT+tQBdpwOnpUy59awl5F +D3zyarsPm9asMTgZ5qA5yfwpt9BIeucYNMuR8jZ9OtSAcc1FOcRt9DQm3IHscRqRxO3rmnWPLjpn +NR6mw898cnNLYtlxz/8AXqaqZ00/hO0sFxF+Fc14iAJNdPZEfZ8Adq5fxCeWz61rQ/hHM/4hyUoO +ck5ya19DwZB25FY8+C36VtaHjzV796qt/DNorc6u7+WD8OTXMAMZv+BV0l4+IfXiudiyZsn15pVG +uUzo7s6mw2hFJ9KvgA4IqjZKvlrj0q76H2qKewpbjivIP5UHnilBHf6U1iBj2q9EQhBjkU4EZBpo +GPoacAAfapd7FDxjNIRmkJHHancHBqlcRGQQ31p2O/akHzHvmn8AYNGwMaO/ORRtyPwoQc4p1JsB +mKaqmpCAeKaD19KTYx4C85zSkDHA60o6ZPpQT60PYXUjIHbk004zUn1pmOlF7DsKigUxxgVIcZxQ +R+lF77CKhGelQOcH2Jq4Y8YqOWEYziqhITQls+W7YrRB/Ksi3B31qjIQU5bh0H+lP525FRKS3WpD +04qUJkZJJINLgcE03knJ7VIMHNDGireECM1wt5uNyxz1NdveD92/PauIusmc49aJ/Ca0V7xessb1 +HuK7G2AEH4VyNkPmXP1rq4D+4GPSpo350Ktscvr5UMa5KdueO1dNrjHe3WuXl6kDk1s/jHH4CONt +p5q5LJGIMZ96pFcHio5S23AJ966aT1OHEJ3EB3f41saPnIOR1rDVj+dbukdvwpzIgdREWIHPSr8P +GaoW5XjPBq/EOPfvUydzWJpWzgDHrTbh+DzTIjjHQVWupDzjmsupoQyS4YjJxVm0fLAn2rIlc5z7 +1bsmPUdKh+ZaOlicEAVIWGKoQN0qxv4xUpEsl3A8VGccnNNLEfN26VGZATTaBEm7A9KFk561G5yK +jVhuFVeyAvb/AHp6tk9arbhwKUSelKwjQRxxzUu8cVRWQYFSq5J61KjYTLYOetPzVcN0qTf0o6Ek +hNIRTN1ODDNKwwwOlQTDjNWeDUUig5oYIgXBxUFwmQatqoFRSrkGiPmV1Mv7rY6Usm0AmiVSHNPd +MpjrxT62LKCy/vCBSzYOfpUL7kkJx3p8jDbmnGVnqVylWbG3FZ27BPtVqWQDPfNVCpOWNWnoJogu +WbqD2qrFvfrnrVyV0wRUCSxpnp1rVSe5k0i/aBkYc9a2IiGXnrisGK5QkDPWtCO5wB6124Zu1jzc +WtbmpAADg1YlUbc1nRS5O7NWlmLDFdijrc82U0lZgpBBBqBshs+9Tj73SoZeDg9KuxnB2ZdjbIFX +0yqisy0OTjrWnzgVmx9bkq4xxUfO7FSfdX61ESM59KlGkthuSDx60+KYA9aizySKj2knIqrXM07b +F15MiiI9TVckheamjIC9am2g7tu5Mn3jSSknpSx9KYx5NT1NG/dsQyHA5qBuOamk64puwMK0Ri9S +EM3WhwTtPrTxEVNI2AcVRJmanGWQ5rm2AT25rrb1dyn6Vyd98jEY4561vTeljNxV2y7HNlVUVmaw +ASOoqxZSFgR3zxTNQjMmMc1pHRmEtWhNMJZQuOlb0TFAKytKhEa5J4NaryRrz1rCerOyL5R5kYmk +LN64qubhR0Hejc7k89RQog5NlkNjqRSiSPmofK6HOacgB4IpMCXzm7UB3apBGuKj3FWwRx60k0wc +Wh6xueTmmvEB1q3AQcA064RSuRS5tSuT3blWMLxjpVlTtHFUo96nGOM1bDZGDRLccbW1LlvJu49K +0YsVkW6sGzmtOMkYOaxmXCyLu3iopFxml81QKhklqEmaTkrFd5CD7UCRc1DKQc/WkVTWph1LvmjB +qrM5bpTtj4pBC3ekkkaSldFYQE9anRdvAqcRL1p4WMU3IhRIhuoVTU/yenNKCOgFTcdrkJQ8cVIi +HPNOyc0o34ouNIXy+KNg7mlwSKQoaRVmBUDvTTt60YOMU3B4zQKzHZTikyuabtBGM80Y4phZjxs7 +0ZjpuAaAOeaQWZINvcUfIOabj3pcUh2YHYecUBU44pdoOKULzTuHKxpVPSm7VzU2wGjygaVw5WQm +Nc0FE9al2HPtR5ZouHKyEonemmIepqfy6BESMU7i5GQCPHegRipmQ9BSbGA96d7i5SPZjvSbPWpN +ppChHtSuHKRbegzRsbOaeQT09aUK2adxWGgMOMUhVjzT/mzR81A7DcMO1Id2elPy2KQ5IBoEJ82O +hqKTcRjFWFJxzQcUXC2hkyF17Go9/HPFaciA9qqtGMnitVJGbRDhSAalRtvIpwRT2pwVemKLhbUb +5oJzVeZQ45qby1BpjoPWhWuDbe5nEFGqzDOVxzxTJ4hng1WbzF5HNaaNExk4s1GlUjrUKSfOATVA +SsQCc1aiCMATU8thyldmkgU4GasCIYqnEeh9KuecNtZSTNKbj1IXiQdqqTKuMdKuOwI461mXBO7n +IFXC5E7X0KkqLnIzVUqwOVJq4xQg/SqgcbsZrVMm2g5Gmwven+cy9R7VKseeegqJ8KxXrRe4nFpD +xOo600zDnBxTlQORxSy268HABo0DlbVyMuuOD7UoGO9R7M8YqQQsen50yU77AzFevajzSScUxxID +6impIFOCKLC5mmShlPDCnMkTL0puImyc80rBEUkHJpNFqpfcpTQAZYdjVG434X0zitGRuD6Vn3Mi +AVomybRexNASIzn8K0NPBAJ681jwSjGzNbWnspG0YOe9EtERZN3RqRMeMdKcRk801MJ16VKShUGu +d6M2WsdSvOnGR0AqvGUDYNW+WXrWfOCj59DVrXQhOzNBgNuR9akXLLzxiqcEm9cE1cj5SpasPd6C +8DFBxu5oC5pSBwakt7A0WemelIsTgdxVuEDPNTOqYOKlysXGndXMxNysRSl2706RcOP0oKg+1Xcy +tYkMhK1GZCVqZIwy0gjAyPzqVY1mr6lZJG/OlNwVJGKUoA5xS/ZyzZqrozsxRLvA9amjGR6iovK2 +9KfCCCRUsa8yVANxyO1LIMcjpSjI6U98FPwqOpql7tjMuSBg1Qmj389qv3XfFU93Y1Q4Xs0VSu3t +npUox+GKRvmbPSk8ticVpfQys2ydcGpLeMl8+9RLkAA9q0LZAAGH5V5WMneXKj28FBxhdl+3xtwa +uBR1FVIzx9KsoSTXE7HWyYLk5p4HbtTM44pwOanQWo/ikI9O9NwQc0oPNIB44zThimZ5oJoAcc8e +1HNMO4jjrSg5OKbAUgmkxTxTH60mCGEUzGGz71LTdq5qWikxRk0powBTabWgBmkPNLn2oGATWYwQ +dPalPXFOXoaRttNi6kTVQuMeavpV9ic1m3JJmQe/NF0BqxH5BTjimx42gU8jFdKWhyvcdjCH6Vw+ +vEeecV3TcIfpXBa63+kMPetLO6HT3OZ1And9arRHBHHIxUl+43kGqsZHX0rOZ3QXumxC3TGa0YZC +O9ZED8Ljt1q9G5HB6Urvclo01kOB3qZWHGaoLIOOeKmSXJ56UyWi3kHHNTwvyKohhy1WISMjJ75o +TIaNyFuB71ej5rMt2HHetCIgYrRnOy2MdKkHNRKc1ItJkDiKQZpfSk9akQECkpevWjB5xS3GJxQK +XFOA70xBgUcZpaSkMTvR1paKLWAaaOSKd0ppGaNRiCk6UtBA60h2Ck/GkzzSE+1NMLD80q8jmmgj +PFPBqkxNCMKqzH1q01VZSKtNEmXdHr6VzOqNgPzzzXTXZGGrj9XfAYntmoqSsjakrs5HUZTvP5Gs +7zDVi7bLFgP4qp88VMFoeklYuveSSQRWxChImZlIHzEt6moCwAzjimA8+2aCcjiqHbsP35DAn5jT +QfftzSho9vK5bpmmthTkDjpQSyWIbnVUBLEgADrzV2AzJFcMODGEJz2O4VS87ExlixGdwKhf4T7V +cgYGxvmdvnZoh7nLZNUiJXsfUy1h+Ls/ZrfH95v5VuJ1rC8Xf6i2/wB5q2qfAzzqPxo4luP8KawO +DnpmpGYAEGoieDXm6HokJ2g8dKb35pQeQKTHNG40P9CKMnrSKcnFKcZIpNX3HcRm7UlNOCaXPTHS +nYBTimOgP408DORjtShOnerJsMiiANWFHTvQqgcdad8ueKibuNDGB5zSDPA/KpDznvTVG6peqGhw +BPXriosc881KfTrTTwMd6dlYQhGBVe4yUbPvU9V7rhG/GhasTOH1UN5zc96fp2C65yTUWoEmdhz3 +qXTv9Yo9xU1djrh8J29mP3OPauX8Q4LkflXWWn+o/CuQ8RkliBW1Ffujk/5eHKyod345rd0JT5gN +Ycgy3pW9oOSy/WprP3DdbM6LUAfIPHOKwIVPmZ966HUM+Uc+lYEIHmH64zRVtaxFE6Wz+4uPSrgY +4OOap23CD6VaX0NTT2JnuShgKDjH1poxn37U81dyBPpzSZyf50pAwaXk81LTY0J6U7Ixx1HakC5H +NLgKTxVLYBACc44qQKCCT2po657U/sMcCkwG/LkkcU7txSYB/GnN2qWr6jG7T7UmwZ/GnEAige1S +wQoPGMZFDEnA9KUA8j86QqKpCYwgnr1pQo555xTwAcZ60BecikxjQoxSbcipOe1BDU0gbIiqjAqK +U8cVMynpTGTPFVFWEVIQd+cda0B92oFj2nPaps4NVJoEKpwRxSliAaBzTZBgZqUxMRSSalGQKii5 +61MAQCcUSAoX+RG2D1FcVOymdsnoa7XUWxE36Vwk3M7HP8Rol8JrR3NayJd1wc11UKkQYHpXLacA +rqR3xXVpxD9RRTfvpE1tjkdfAya5Njzg102vN+8PNcw/3hjNbu3MEPhJ1jBA96r3EWBx0rUtIs44 +4qLUINo46ZopTd2Z14J6mOgJO2um0eENg9q56NAWGfwrrdGiYRhvbkVc5amMYpK5rxRqPrVyMEYx ++NVYyAcdasq23gUFJFkOFHPas65m+Y8/SpnlGDWTczZJqOpdhwcOfxzWjbAKorBilwcVrW9wp2jN +S9y9kblswxz1qwW/OqMDrgZ61I8ualLuJosGQFRk8g1GGBY1EGXr3p8ak89KLgPZscU1CSRSSA9a +IuBVWETZPfimNJjoelJ161GSOtMSLKyd/WrEcnOe9UIyTVgEDpSa1A0BIeKd5mKpLMKkEnQ+tKxN +iyZeKVZQT65rOlmxxTreUGpsx20NZX4oJFVfO4+lKJc4oaFYsDNMcURyKTTmIxSsHUzpk5zSnAXN +OlK7setNl4XHtS6l30Mm827s4qjNKdnHap7xjv8AxqAoGWtGrFp3RWUGQ4PHpTZvu4U9Ks+Q34U1 +4CBj1ogxSRiSF88ZqjM0mSe1bdyojHyryRUC2scq/MMGt1NJGDi2ZEMkgcAdK34WDoOueKyLm3EM +gK9O1X9PbccMa6KM7SOWvTbgbVvuwKvxxcZ9aq2wBx+la0UQKg16KlZHjSi2yq25TTZBkZqxKNoq +rI/GPerWpj8LLFn94c1qFuRgVk2gPUVoIx4rOS1NE9Sy+MCoTjBokYVA0gxSih1HqSKTjp1p+3AF +RxMMjNWzs25PpQ3ZjjBNXKjZJAqdOmKgPX8am602QlZloYC1H1NL91aYCTz3FQkayYkgBOKkSIba +iLcmp0mUDHpTlcUOW+pFImOaqnG4561bmkBFVQecinG9iZ2voQTFXU/lXG6xmOQk12TIxdiMEHrX +K+IYOp5HvXTRfvWOerdRuijp7biQK1jDuA4BrC0ot5uBnFdGXG36dquo2mOlCLVxixlOnFL7mkEn +PNK+Dgis9S2kkSosZHTk08qUPSoYwAAc9KujY4GfSpbsXox0QVkxUUg2NkU8AIcL0prMOpFJbg5I +mjdcc96bKATxxUAY9QDUiq8g6UWsJybJImZam8zIOajSLB5ap1jTFJtArkII9KeA2Bgd6lARTT1H +NS2UkPhjk9Me9XlV8VXQnirAYms2UgbcBUJyRyalIbmlRPai9h2uQrGvGakAHpTttLgDrRcORick +U7k8GkDIDSmVBSK5V1YbT2o2Gk84UGQ09QfKiRUHel2qKh3sabucnmlZhzR6IsLsHWnblNVctnBp +w470WDn7FsFaYzjtUQbFKHXvSsPnYHJFJg0GROlJ5yjpTJuL5bHpTSDQZWA4pjMxwadiWx2MUnPN +MG/P4U7ZL1FMNw3N608MajKvim7mGM0WC7RPvb1pyu1Vd59Kd5o6EUOIKTLQkNL5jdKrCUd6eJUq +eUrnZMJPWl82oDKnNKrpRYOdk2+jc1NDpSllxSsPmYGTB4oL03KZpDtNFkHMx3me1DSjimjbjmm4 +Xt+dOyDnY7ctAdaT5emaTAHeiwc7JA6Ub04H51DilwDj1osLnZL8po+TpTMe9NPQYoSG5eRLlaCF +NQ84pAWzRYOddibYO9RGFc5zTwSRSYPSjUV12IjD3pDFgVMykCmFWwTTTYO3YgaMYqJ0NTYfJBqK +UuKtXIbjbYpzRnHNU23DirUzsM5qsGBNaK5NosacMORUsajPBowpPFAVlIqrkuDRdTeOlO3tnpTI +/u9KlBGeelZgHmVXuSuCO1WvkbtVO7RStC3E9jMlPLYFQKg3bm4qV4W3fe4NOW3bueMVsiNSeOQl +QM5qORGJyKTy5AVx2p5WTmlZIfM2h8RKnBPFOnbjPtUIZgAPSjeT+NHLrcFPSxBE7bsN61fULjg1 +QYhTnpUizHaM05K4oTUXqSSsgOKZ5av2qu7FmBHPSrkLZ609kSrSkVpkZOh6Cq7TOhJ6ir94VVTj +mqiIX9waE+rKlCzshqyxyAZHNYuryeUQRzz0HatW5hKZxWNd28s2ea1jbczs27Etgd7ZzzXS2kew +KRxXOWERjdM9R1rrIdrRgDjjioqsKULIsc7eKcvpTYgMYJ6U7OD+NYM1T1HfKpGKqXsZcbhVt+VB +qB8lWHtTiwmrMpWcvO3vWnERkg1mQRosmB3rSi4bPXNOZML21JBkcVOqhl96hA55zU0bAVkzZbDw +2wYHpSebkHNMPyseOtRyPj60WuHM0SMvIJ5ocqoyKQHK9e1QTOcU0haEi3JFC3ILc96qxHmhsbs0 +cquW37tyy0q7sVagaM4rFndsjHSnx3LAD2olC6JhJJm1K0WOMVXUjdxWabs5xn0p8dwwcf3aFBpD +nNNmtuXrTmIKHFUhMKm3hlI9qhqxdOV9ClP3ycVS4LHHerVxzketVUXHXvRIumtAjUO3HFWTERz7 +VFHhWz6VYdyVyKJysrlQgm7ESJlhWhGm0YzVa3AJzV5R0rw6tTmnc92lDlgkWIsEVYXg1Xj24qyn +PWoGx1PUY703byPan+goQmP9u1JihfelzQ9RBijBpc+gpaPQBoz0NAAFLijFK3UBe1IcEUp4oPSj +cBjYxTOtSYzmm7aRSF6jmm85qTAxTduKTAQik6Up603FQ9xki4GaaxzRnio2ND1EhrkVmzn9+g96 +vOeazpGBuV9jxQNmzFnA+lPJ5psWdop5AyK6kuhyMfIcRH6V59rhBncjtxXoMuBE30rzjW2zcOPe +tepVI5a/J38/iaro7A8GnXzAPjPNQBs9axZ6MVoaUMnHrzV+ObkE1jJIVwT7VcSUZXv/AEqeoOJq +ifcSQR9KnSXuT2rKWbDA8VOsxIyOgodzNxNISt+FWoXGRznFY6TA+lWoJsEfXFOLfUiSOntpBwM1 +qQuCKwLOUnbzWxC6nAq2zmkjUTFSLxUEbZ6VOCKZiPpDSimnipYCilFIM0tOImKM5peetCggAHkj +vTsUO9x2EFBFHNLS6DExSYp2KQ0ANJpue1OIpOaWtxiHtTe9Ox3pMUMYlIRnrS9qX60ahYT6UtJR +mn1EI3AqrIfWrLMMZqpKepp8yCxlX7EZxXH6weGHrmusveQSa5PVgCGJrGrI6KMdTirkMXPOATVU +nrVu6Q72IqrjjB4xW8NjuBSQc+lO+n5VJLDAsMTpMHkfO5AD8n41GB2qmhJh39cCnF8gA9jTW6nn +qMUhBwDg4IyKQxV6CrQY/ZpEAyGZPwwaqqpbGPc1ag3CK4GAcoo57fMKd9SXqj6wXtWD4v8A9Rbf +7zVurWD4uz5Ft/vNW1T4GeXR+NHFSDn1FMfG3NSttHX1qE4IINeaz0iDocUuAMtR60KSTzSVrAKv +Bz0pTnvQBnn0oKseau4DQpPNKBzinZpOeoqbjHA04ADGe9IOeop+0Y9aPQQDGaefYAc0wKcn2p2Q +KiWwDaUcUpIPSk9vapWgxD2puDnNO/GjBxV7iGYPpVe7yIn9cVZz1qreD92w9RTi0DODvebhh71b +05SJB25qvef68nqc1e05cuprOs7bHXD4TtLb/UfhmuM8RZLt+NdnbyFLfGM5FcVr7KXbPeuml/CO +NfxDl5CcgDp7V0mgAFlFc3Ly3HGDXT+HhyvsKivpFG8dmb2o/wCqP0rFgVfM/GtnVGxFz6Vi2jZk +9eadW1tTKlc6O1UbAatjFV7UYQYFWck9utZR2sEtwHXNLkYoCkdKac9K0uSOHJz2pelM4H404dCP +WiTAXcDQSOBQuAfagYJ+tNaoBe9OHpTTgY/lTgCfape4wBGadikHXNKQ3WhiDrxRyoApVHHvSsSO +lS1oO+ouBikwPyoG44BpwBAo6AN/nR0pc5/Cl+tIBnGfxpdxJ5pOSaXHORQgF9qCBjIpoPNPP+RV +3JsMAyelLgGlA7Un4Um0MAMfnTHqXhuKhk4b8aaaQmLFjipSxzxUSHmpD0GOtOWoGdqf+pftxXDP +gTHPqa7fVWIhbPoRXDSZ84/73NOa902o7mzpoy6fWuuIxBn2rldKUeYvOeldTJxb8ntTo/HqZ13o +cLr5zKw4x3rnWBzyOMit/XGJkJ44rAZgGrV/EykvdRtaYR8uetGrOuzCjp1pmnAtntkUupQMBn8a +mi7N3Iq3ZjRH5hn1rqNKlIQDpkVzSDLAYz3rp9Lt225IxVSlqiYxdnc1FkIapgWqARlTUrTBFGet +DkJRK9zLtFY88wLYNXbuUOD2rKkYZHP196RfqSh+eDWlYEnGeayoV8w8dRW1ZRkY7VLGbMI4GO1S +MpNRRcDmps8Zo5epIqDkVcRcCqkfJFXRjaMdaSCRFKueaYoxU7DI5qLpyKtIkaxxVdiTyKlkOOtQ +kfNgdKHoNEsZPBqQtx71GoAFDGmhMertnrirIcjmqqd809pPlp2YmMuJDnPvxSwOQOaqvJ1HWpEk +wtZvcpLQvGfAoSZiazmnJOKswuSAKYrGlHJUrSHFVFPApJJeODS5OpI8sGb3pkknymolk3EjvVW6 +mKg1NncsqXfzOTn8KaudnFVpZ2Y+lOiuMZX2rSSbsEXYswuSTu9allCtytZ/mkE896mS43Db1pKJ +TdyrPl2x2qMgJnHFTyEFqhmHHvVLcloqyxCXrgmnW8SxnA70sQ3NirZgwAR61admS43jYv22BtI9 +q04pioFZluMAelTF3UHn6V69L3oo+exD5JstztwSKqEgkjHJponYnDZxim+Yyt04NbqNkcjleRdt +sZIq9GRms+3PH1q0hwazkaR3RLOTnrVc52052JOKMcCmtEKfxDQxXGKmSUsMZqLYfWpVjI5odiYt +jgcsAasA5I4qFVyfarKDkcVDZpFXY5jximjoc0jmms2O9JIc3qB9RUTM3NSBjj61Gy85qkQxOdvN +CdKbuHT0qQfLg02JCCPJJrA1+APE3qK6PPBNZmoRiVGHqDVU5WlcVVLkscVpcLrKQeeTW2QemOKh +sLUpM4681qvDxjFbSldkJWRREben41KkLZHpVhYTnpUqxHgYqHItJsrrCCeTUyRDHWneWQSDT1Qn +ipuXZ2AIoHXNN8tD2zUgjyeeKl8vBpXDlbKpGOAKfHv6VZES9aVQg7UnIpU+4wITg1JtA604Nik5 +PGKm7Y7RQ4BKlGwfWotjcYpyBs4IosHtLdCypUUvmqDUP1NGUpWD2hY84EcCk84jgfnUWUGDTWYc +4o5UDnIl8xzTSzHvUIds0vzN3p2I5myXIA603eOcmmrG560NGVHNCsDTHiRQM0vmjmq4K85qaNR+ +FFgWo4SdMLSGVuwq0IRtqtMjDJxUpplyi0hu9+DTh5hNQhyDzVqIgkdhVMmOrsGHxTGyDyeaufIR +xVWVM9DUJmko2G7geKnRARVQAqTkVajkxjNVLyIi1fUdImBxVNpSp6d6vM4IqnIM0o+Y5rsSQtvP +pV1EFZ0IZauxvxmlNDptLckeMYqjKjA9KumQmoW5pRuiptMq7+xFTIoPvTTFzk05SwxVvyM476kp +hXGaidFWpPNqN2J6VKuaT5bDD5fFSKgPSqkgbOferULcVT2M1qyZYeOKRkweasKy4qKXpWabubSg +ktCLHvQFPrULO461PETwTVsyDy2boaRonXvVyMDgUkig1HMaez0uUcH1pCGPOafIrA8VGGbNWZMc +Fel2yA+1TRYPUVOVWpcjSMLoo5kGaYS9TzKRyoqsWOelWtTOWgpZ+gFPDMMcdacoDVOIhgZpNpDj +FsgEhFL5vHSiRNvSoy6g46Ubg7ol80nt0oMvHtSLtNSqgIpOyGrsrlmzUMjMeCKvOgHQVVcrnHcU +4sUotGbcZ9PrVA7d3NbUiK4IqjLb55AraL0MralQll6c1Kkh7+lQyJKnHYUxpSMcfWqtcesTUSRS +MZ/CrMYQ1jxy4wBVuOUqQc1DiPnXVGgUAHFULtXAqwJ2xk1UuJsnFKKdwbgygY3ZvxqVUYEU7IHb +ins4FaXZPLDuRNvBzSiRgCMc04yhh0oDRNwOtArLuNEhxyKDsPOKG+Xr0zSqAaGxez7ETLG3UYNQ +vDgdRUrrg5BpAparTM3BlbayHJHGOacJ+pHQ1KwwCOoqIIGzkYqr9yHdbCSSeYAucmnwME6nqaZ5 +aqcg00jB9aLKw+eS1LE/lSDHf1rLkjKt6g9a0AqdyeahaENkbs046Ck22Z8ciLNjOK6C2kXYPpXP +TQssocZHate3k2oMj/IpzSaIhKSdjUUlWB7GpWHQ1BG2VFTLgrjnNc7N0SKTgg1HJkAkCnKMH8af +IqsOKWzNPiiZq8Sbj1q/Cw3DFZ8/yEirFq5O0nvVSV0Qmi+ThgKljHIqIjJzUqZrJmq2FmGDnpVc +qJTzVmXlaIEUkfWi9kFruyI/JKLVKUtkitqRMKax5jhyexohK5U4cpFHnPNOdckdqaDyB61MBnOa +vqT9kglg3Dr0qBoGIKrmtIgsvTtSRRg9aOaxCV3YyzbSY5pCGTGR0rakhQDiqE6j2604zuXOHKNE +jDGKtRyfLn2qsEyBmpE4zSkrhTdmNlO7Ppio0XGBT2JzjHFRgnBI71nJG1NjfOVXKipwdy+9U2Qs ++70q9bqxx7c1zYufLA7MHT5p3J4EYCraZ70ioCPSnqSDgeteNrc9hkyqe1WI+DioRjAxUydcVRDJ +evSnLTAOn1qQZzSJFGKccYJpOtBpgKop1IDSjHegBDxSjmg80dKV7ADUlL2NJSQAcUlIT6UooYwG +D+dI3FLSEUtQGkU0cU5utRmoehSAk8moC9SsagBzxihajsMZxmqGQboc8A1ddeT7VmowF3z60wex +0Eb8CnrIGbFQxKWH4U5YnEme1bxvc5HYsTn9y30rzTW2Jnk5xya9KuTiBifSvMNYbM0mR3NbNal0 +TlLzHmH8Kh3D15FS3DDzCT2PSoOM5HvWTPSitCZDkfSpxKBjmqmQP5UF+uTmpBmgJuOvSpVuBzzW +Z5xIx0x3pUnIPJ/GlZisbCzjOMirVvLhhmsES9MkCrsN1tyTye1Mlx0OvsJs9637ZiRXI6XOCRnG +a6e1k4Bq22cVRG1CcAVbVhWbFJkA+lW0kOKa2Odotc9RQeRTFan5FLUQoApfpTc0qmgCQE5xS9aa +DS01cYopaTFKKOow6U3FPNJ3oYDTmkpe9JSYCcU0040046daBhx3oo9qTnpSAKQ0tJzRYCNzxVSX +kGrb96pSkAc9aT3Ayb3dtYDtXJ6pkq+T+FdZe9DiuV1NThgcc1lKJ0U2cfOQkjFuQapyurNxjHIw +as3p+crVGuimtDsHY4pUwM5ppPWl/SrAcQScccnFJkHj2pd5I5HPHP0pBjr7ZoGOU46fWrsG7yLg +kAhlVc+nzrVAf0rStXCWVwpP33ix+DD/AD+FImTsrn1QtYXi4Dybb6tW6tYXi0Aw2/1at6qvBnl0 +fjRxMg7GoiM1K+Tu7VFzwPevL2PSIyNpFKNv+FK2M0oA9PpTuAvPNJn0o5xTlAoGNx+VLtAB/OnE +YpOPXilcA49KcMjilx+HFJg1TYhAx9aUH2ppUg5BpeBUtaDHrmg5wRSDFBYYI9akBv8ADkDjNP46 +iocmpE6DNNPoFhB1yfxqtegeWx9qtZqlf58lsdAKqO4mcPdjM7emav6ZneAR1rPnI84j3rU0zG4E +VhWbOuPwnVR58j8K4zWxmUg9q7NCfJH0rj9bx5jcV1U9KSOWN/aM5mQAP9eK6bw+BuXHQCuccAP7 +5rpvD4zioru8UbJWTNfU/wDV4x2rGtlAlUj15rY1M4UgnPFZNpjzByetKs3YikdLbZC81Y6Ee1Qw +coCTUvH1FKC925EtyVehqNvvU8E8DFMbhtp65wavVakgCTnijmj7pH8qcvXFG+49hRz1pcY4HSnc +cUnQ80/UQBc5OacMHrmmsOABilGaUnrYdtAJBbipVIK471FjBAqReDn0pXEAPWkPTNSY49qMZPtR +qFxq5H40p4Apccmm5601YBCcDmjdSZYjBH0pvU1L8hjhzk085Api9acemaT0AZjBJp455I6U3PSl +HTg1XXQTF55xR2oycgY4peg56UNAJUMvJzmpugzUDAk01toHUkjXIp7Dt3pY+AKQkGknqMzNV4hY +deK4ZgPNPOOa7fWsiBsehriVUlyzHC5xn1rSeyLo9Te0nG9e/NdRcMDB+FcxpaAuu3jFdFdl47fB +7inQ+IzrHB6ywMrisJuoGc1sal88z5wB1JPSsvETn7zDn0qk9WaWvFI1tKxx06cVd1NPk6VX0qHk +c54GMVd1EBlGR2qF1YvtJHNqAJAMV0VhcBFA6Vg7Sr5rQt2GKau2OeiNtrwZ+tVp7rjNUzIARzmo +ZnZgB6GtOQx5gnuS2faoEQuQaesRySamiTbkj1obGlcmtoWBHati2bgD0rOjY496u2wIP9Ki3cpm +nGS3WpcgdKhUnbjpilB5FGwty3Dg1bB2jiq9uvHPrVgY60ImQ1smmM3GMVNwc4qu/DcU09RDW9Pe +mdye1SfL1pCVx701YYY4prevvTuo59KFwTTuIcowKhmJwRVnAxVOcheR600IqtuLYzTi7BQOaXOc +E1XeXt71m7NlrQmQ5Ix2q7ExSqNvzwas5x+FVETLgnBFQyTCqnnbTjNPH7zrTvckswNu+aq94SRh +anTCLjtVGWbcxB9aSVkVfUqmNhkmmKOetXCRtqo/B49atakscyZPFKhVP8ajy5o5OM+lD12KWgSv +k8UzaWQlqeqgnmrYhXaKzbsX0M2IFX4q4ZAB1pzQAEn8qo3DFBjP40Ru5XE0rGtbPuUYHSpJMg5w +cVT0iUSALWhOpXJr28M046HzmNhadyqZMdPWkSUO3PSq1w7Z+X15p1nyfmrqexxxSbNuHG3ipY1I +NRwAbKtRoMGsmXFe8MxyfWnEdKcFw3FKQCc0hMljiDDOOtI6BOKsRFQBUUzKTwahNtmkorluJECB +k1Mhx1qNThakBG2hhDRjGwWIqKTjFO5LUxySQKpENksSZHNOeE4yKSNtuM1K0gI4qXe5quXlKewZ +wetSEACm4y3SnEc1RikB+7VOZcg8dquS8CqczjbTgOr2KFrGgkc471e/dgcCq0AGSas4A6mqe4lK +yE/d5yBSFhnimsVpm5aSiHOxHbr69KRZCOlI7xUK6CnYfOx4dmqRS5qNZI/xqZXHak9ATbHfNQaY +ZRnFWI1Dc+tSykrlYu4oDy+nNSTLg1HGzMcVS2uQ73sSBpDUitLUkQB5IqYoM8VLZSjdXKpY45pV +w1Okj7U1E20+hOzLCRZApxhABpiMRyKk3g8God7micbFV1YZpYutTbFP50oVR0qrmetyaPbx7USB +WqPIHSnBielTY157qxDJAD0p6Jt60/5qcFai5FhwcgVG53cU8Ixo8rmloi221Yr+Up/CnKCp9KnM +XvSBB0NVzE8owMRihsdaeY1pMRjiloPUj3/KQMc4pAw4qXCdhTfloFZjMkjFJg9CKfzkACnAE8Gn +cLEaI3WrKxHHWmqhB4qbBqWylGw3acUeW2frTgD3pwJqblWIWhPrTRERmpzSYzRcXKVjEwzSeW9W +dhoCU7hylRoj3po3L0FXTHmmGHkU1IXIyt50gpTcZBzUxh5qNrfOaLxDlkR7gTkipFam+SRRtano +KzRZSbHU9KXzg3SqnIBpV7c0uVFcztYmYhsimBKTv1p3Izg9qZA8NtNSiQVAFPWnBWyalpFJtCsc +1XdKn2tSeWxpp2E7sYpxipRIQKBCR+FHlnqKHYcboY75qsy7jVho2pAhpqyJd2xiZXFWEk71FsPJ +NJ83pQ9RxbTLJdarSBTkgc0EnvTTnjApJWHKdyJUYE5HWnGLIp/JpCxPSqI2Kk9urA/SsqWBwTxk +VunJ45qB7dj261cZWFJtmMsZ69KerPGcnn3q+9kxx2FQmzfBzzV8yZNhiXS9Dxio5ZFYk0ksDqRx +2qHyjnFUrEWJVdCMGhni7mq5TaajJbdkDPNO1xO6LokhAqPzFVs4qGMr1PHPSpHC4JHNGg1FtEjS +pg/SoPNw3HTpSbsYyPSgBSR6c4osLW4GQZ9RmgS4/HtSuiY/KoJfkGPSmrMTUosn84beR9aaZVYj +aKgTJ69KkaMINwNPRD95oeSuaaPLquXalDPxxTsRd3JyYxjFKipkk81XEkbMVNGHB+XtRYObuhLq +PByO1T28Sso5qrLLnG498VYtHKsORjNN3sJqLZsW8eABUnzI2e1NgmXIFSuwOe9c93c3cUldCDOR +T1IaogSwxTkBBOKGKLsyhfDbk0lq+ClT3se5Tuqtb/IR6A1otYkuNpGzn5RU0Z3AVAp+VSDmrMXS +ueRtBNuw4r8hqKFihqXJwQagJAb0oDZ3RNNP8p71jzSKWz2qzdyhFPNZAlZmz2NaQhpcmdRy3Lik +tiriLkCqsY6GrqEbeKUhw10FPA+vSmK+BkUjsRxUStgGixDdnoStKTxVZ1Lc1HJMVIUd6CWGDn61 +aViZTb3LcaqQBUvlKoJqG2LNirEjbUPNZvexpT2uUnP3s1XPellkOe/NJzkZ9KUtDelqSqo4NWYB +t471XjI4z61eiQcEV42MqOUrHuYWmoRuTqTtBpy7evrTsYXFMGe9ca1OkspirCAVXQ8A96sIScZ4 +q/QzZLg8U8HimdKeKNbkihjmgkUnpS4xQgHDkUdDzTeKXqKAHds0hP60wEg0/ijcAIoxRupN3FLQ +Y3OKUHkGgn1oOAKOgC5phNLng1GxpX0GkKDnrUbEUZ49KiZiM1LRSHMw+tR5xzUbOxpoZulFhkp2 +kVlxoTcn61pbgAao2+1p2PvTlHYhvRnQWwG0VNgfjVeA4UDNWARXXFqxxvcr3+Rbv9K8r1hyJJMV +6pqZxbvj0ryvVsB3J9TQ3qdFA5efJbI7U0bsevanyBcn0JpNo9KzbR6C2Gdsge9M7fnVjBI9eKjZ +eDhepqblMrnI470m9gOP/wBdSODx+HFQ7SMVoiSQOTjvVmGT3z7VTAPUHjtUqk8dzSkhnT6VOCy+ +3NdXaz4APrXC6bIVx+HFdTaznC1Cfc5KsTp7ackAGrqSc1h20nIya0Y5iarmOVxNVJKk3jvWcsvF +SrJnvRzKxDRc3ilVyDg9OxqsHOOakEgprfUVi1uFODVW8wYpwcEcUXGWQaXNRBvWlLjFNPuOw/dm +lzgH1qHfS7qAJM0mc0zcMUc/hSAXIpOBScd6Qk0WAdkUZPOaZk04MaqwATSZxRmjiiwhrd6qTquD +71bfjOKqS5IoaGjIu1A59ulcrqgBDV1l50Ncpqi53Eds1E46G9Pc4q8Uh3OOaot0H16VoXhxIfas +9hyefce9VDY7eggx/FSE47UvQg9aAM9TWgDuCF7cE0DGD2BwPwpvTinxvtbdjPXFIYiKzkgDJwT+ +laMGGsZ1ONyzQED2yR/Ws8t028YGDVq2dEjkznLiMD8HU0m7Ez2Pq9awfFh/c2x92reXnNYHi3iG +2Hu9b1PgZ5dH40cXKcHIFRE8U+Tg57VExzn2rzGekhNw4HrTx145pihetPU4P4UajFwPoacCQcfW +m55oJ6UNoQEg0g6npSnH5Gm5HbioT1uUyYc/gKD+tRhsECnF+Mde1WiLCtgD60w9KUn8KQHPSk+w +0PA496XAxmhO+aGwoNRIZESATxThuABNN4/OnYPHpR5jHYWqWofLC30q5zg1R1A4ibPpVp2JZw1w +D5x9CcVrabwwBz0rLl+ac9uSa19PXlfwrGszrXwnUBk+z8DmuN1nPmN36115H7nj+7XHasT5jfXk +V0p/u0csPjMCU/ODzycV1Xh4A4+lcq+fM6cE11fh0YQVNTobP4WXtXI24Pp2rKtceYMdq19WGUOP +UVl2akSjjqc06yujOjsdFF90HrU6jHFRwbdo5qUdaiOisTLckOAc1Duy3405vWmL972rTUSJ+xOO +aTpz60vb+VM9qWoDs9cUlKflFL8p69aOXTULgCO9OboDSY/nTsjipaGMOaep4+tIcc+tCdcUxEy+ +lOyMUwClwAM0O9tBDiT+lIfWjNGO5ppsCPqc0jZp2D07UmDyagY1Q2eDmnhhg55pFzSY4NFgGsQO +cUoORxTWBBoXK4I/KqTDcmB4AxzSsRgimKe9PJHNDQhjZxj2pihjyPWlJODTou9UtgHEkJmmhlPe +pSBg4qJo0POOT3qVe49DK1pgIWz0xXF5DTHHCgnA9K7DWl2wt9DXIJy59TVzbsa0VudFo+0uo+ld +HfqGtiO2K5zSB86mt+/Yi349KrDv3mY1+h57qyDewXnkEjuMVlxZL4I+tX9RLea3XqaqQl3cd/Um +m3ozdLY6PSICxTp3q1qUB2mpNEhACk+nFXNTQ4wPxrGMlZil8aOQmiIPHrT40fAAFWZossBViG3J +AwDVU5aiqq6Kwt3bjv6U/wCzHPPftWokDKM4pxg3HIFdLlc50rGMYipweMcCnbcY4zg1pvbAjOKj +FqAOlQ3YtMhiQEjP6VpQJtPFQpFt9qtxjIHtQgZK3AGKWJSW70Y3YFXIY1GCalq4XJ4QRjNSsR6U +wcUZY00SCv1BprjNLjBwKTnFGoEWDmmk44NKxGeajkzimMA/JFAlAPNRhSfc0xlbPpSBJF0SBs1B +IuWxSRFuD71YCZ59qE7g9CrIAi5ArNdsvmtS4BwR6VmKmX/WhgieFiq1KJPzqEqaRdwPNO9kDVyV +1DDIp6SLGBTWKgc9KqOzZ46VWxNi893xjis8uzy1C0jMdvr0qxFG2Q1NbEbMs5G3mq7gHpzzTpmG +CB6VDERuPrRbQtMN2BikLHPHTirOxCCR1qBgBkEU00GqAPtwamW5XAwaqNls4PSo0B3YzUuPUpPU +vmQt0PFZ92GwcitFQqryB0qrdBWU1km76FvYqaRdmOfYTxXTzESRkj0rgPtHkXi9huHNdvaSCWFT +1yK9fCyR4eYRsyjLweKsWyYAOKglX5+P71aMKbVUgY4r0JPoeZGNtS9Ao25q2gwv4VShcAc1cWQb +eKxZUdxVpGOOai8xRUbSEimkZtkqz846UGTJqsCFHNRm4UECnyiv0NLzMKBmnmfCj3rHa5+b5TxT +2uDgA0nA0g3ZmisozS7wxNZ8cpIz7VLG7U7EXLZcjino2BzUK/PTuAMUg1JFYbs5qQYLZqOMJipB +xzUsuG5DORnFULphtNXZSCTWbdNzt+taQRFR3YW+7GambOOTTLPOMHpUtwMdDRfUdrRuR+WTk1G0 +aj61PA2evWknA6ii+o+XS5XMKkfSmeXz1qzDjvzTmiy2RxRzWDl0IkjHH86sjYBxUbRsO9MAkz0p +bgnbQeVBzU8UoXFVwsgPNO8tuoosrCUmnoTs4amqoyKasZA5NTxoD1paIG2xw4wKeN3anhEHvS7g +OgqSiLbIx6UeW9Sqx7UYbOaLhYRY8cE0/wApOpNKA1O2GpuVyiLEo6mnBUFIFanrH60mylFiYGeB +Sj6VJs45pVUClcrkZGFNPwRUuFFIxQClzD5CIg03mnmRBk1C0wFNXE0kPOaTpURmJ7UM5P407MV4 +jyeKbtHWmgM1PCGnsF4i4FOCikEfvTtp5pMLrsOSNc1IqJ+FRg8UoNTYpSRMPLFG5MVADQc+tLlH +zkpdAKNy9qhwOppfpTshc7JcijeoqLI70wn3osLnZYDg0vmDtVfPpQCM8mjlHzsnMi03zAeKj4oy +vWiyFzsk3AU3dSZWmllp2DmYrHj60xhmnF1pPMFMlyYwqcU3afSpjIuOlM3gmhXBkJyCaN7etPc5 +xUJPfFNakt2JlepAxJ4qpuqRH20NDTRaNKCe1Q+bTlmXNTZl2RMC1HPamrItO8xaRVl3EOabg1Jv +QUb0JouLlXciKsKTB6VYDJxQSjUXDkRX2HpRg+lT5WgstO4uVFZgRwOaTBxUxK+lI22ncXKiIkcU +vXinfL0pQVxRcOVEDKSRTXiqz8tOLLjGKLsORGXJAT2qtJatWycYJqu/NWpMlwijGa3IFVzCR271 +rSKBVdgvOa0UmZtR6FARL1xTNvJHarTY6j1xRtjPpVXFy9in5ZPzZ71GUbrWj5ceOKiMafrVcxLp +3KeJPlOaayuT9atSRc8Uxvl9OKObsDg1uVt2w46GnNMMD8qeRG+Seo71BINg9cU9xarYbhS3Jxuq +x+7CZ68dapiQYOT60NKeg702gg0txzKrknuaa0hiyx9OtRmUqMA1QuL0Snyx1NWk2ZSsiQXXnSle +uDWtEnyKR25FZdvabSGA64rYVSFH06VMmtiuV7kkUxTk1fimU4BPJrGkd+nTHWp7Rnd1B6DFJx6k +82tjXywbA6GphVclgMjnFTxuWAPXFZM0QyYFlPGapYAz25rQfODVBx83HTNOJV7xNCBsxrxircJP +TNZtvuwRnpirUUgVsZ6ms5Iqm7MvYA61WmAHIp7SCq08nyUooqpoypcqZDjrSQ2oxyuKkh2k5NWJ +CoFU5NaCjBWuVxtUYqeEgVWGCxNTKdvNDRMXZizA5yKgy+D+VTu/5VEo3NgetNPQJL3iJYWY7m7U +rjnGKtb4owM9arbwzs3amm2E4WSJ4sKBio7iYngc1FJcAA461XabaRmla7uXHSNgd1yB3qQZbbiq +fmtktj15qzFv25rKu1CNzpwq55WLsMak81cjBXtVWDJALVdHC5HNfPt8zufQJWViTPAoXPApnJFP +TOOlRbUCymKn5qsnA96nDHitLaEEw5FPBpoxxmnDrSEO4xSdjSEE8il+tPcQoHrQTilGKa/PFIBv +U08Z/CmLmn9BRewwOO9NJ7U5iMVEW9KAFPHNKTSU0+1J7DHMfSo2P505icCoc5JzTsMGaqzuCCKk +cnmqb7t3Wpa1KRKWIWhelIv3acM9+lNgIxIUn2qtYfNKfY5qxIR5bfSoNMbMjZ9ah6tEvZm9EBip +UwTxUKnIwKniU967InGypq7FbZz/ALJry/UiGLk9ea9N1tgLZ8+hry6+Ybn+poN6OxiOqljgZpu3 +cR+FW0uJ40kiVgEckMMDnPv1pnlgHP6Vk7HemyHyhyelIyZGMVb2HOMc0hjPpjml6DuZ7RjByucd +KgdD09elaLp6CofK6gDntQnYNGUljPIHapEjPGKs+Sw609Yjjj1zVXbB2H2oZTzXQWUhbAPWsm3j +ORgfWte1jZWzikzCepuW9aEbEY7VnWxIx9K0Yl3cmpatscrZcQnAFPVsYqIelP6CkiGTByTT9/pV +UE5xTgzU03ckth8/hTlcgdaqBzx6Gnh+Kq4F9Xz17UeZ2qoGxinByeKdxlkPT89KrhsHmneZz7U0 +mBYyKNwqDeKb5gz1quUROWpC1Q+ZgdaTzB61SVwJs9c0u7FV9+KPNGTmnYRY3Y6mjcKreYOxpPMO +aOW4E7tVeZjRJIMdaqTSnkZ7UNDRVuycGuZ1LO1sVvXUx249a5vUXIBweMVEkb09zlL4BWJx+VZh +43DGSeAfStK9kPI6561l7j1HXmlE7VsBPOSME88U4Bcd80w4JpwYrj8asYhz09KdtyobHfGaDzSh +uD8pPofekO1hg64qdfuxjOf3i/zqHHNaEMO+zeXoVuYVH0Oae5MtIn1UlYPi7/U231b+lb6VgeL8 +eTbA9Mv/AErar8DPKo/GjhpcdB3qHHQVYk29Ki4A49K83TZnpCDHTtRuApvQ0vf+lRIaHk8flxQM +cZ9KaD2/WnDpinuAE4+tIAaT+dLk59qErABxml3D+tNB70jHd0ovd3QEm5cetKCuCR61D3yfxpyu +AaGBYUjtTXxg0isc8dKVucVGgDFUcmnjt60gx0NLkA0mrMAbPWs/UceST7VonBGD2rM1IgQv9DWk +BHGMV80jqQTW1pzZKg9TWKDmY/WtzTxlwe1c9W7Z2bROgZsQn6Vxuqth27812UwxDx6Vxmq7i5x/ +errtaCTOWn8TMNs+YBnvXWaB0GPxrk2zv645rrNA5QHofWpqK7iay+BlnVWABA61SsgQ696takTk +57VVsmy4PbP51NcmktDooVO0dqm4qKInaKmxnk/jRBaXM3uISOlRoeSPSpCo6+tMXrV8ysJIlA4y +KaSM8U/tio+NxAFCtbQGOJHX3pOppe1KCBg1QhQe3rTl+tM7806s5eY0O4zxSjjk9qQYzxS+n1pr +cCVe1K2TQMYzSkiktxC47mmtThtwec01s09hDM80pPXNIMc9aQ5AqVuUHA5pjtzjtS55wOlNJPSj +rYYvPWjjOaZz0pwDdK0SViRwNOUg559aTHFAAHtST7gGOMU5OtJ3pUyelAh+RjHrQQBS01jQkBz+ +vNiI81ykGDIfrXT6/jy29K5q2B8z6UTR0UvhOj0kAMK1tTLCAn2rN0pcNWhqpHkMPatMO9WYVd0c +Bf8A+sJHvVa1ALjsM1au1O5smordcMABUyejOqKOz0YDah45qfVMbcioNHztBFT6mQQRjNYU03Bm +UvjOf2hpevOa27S2XaCRWVEFMynFdLaINi59Kul8Vgqv3SMQD0ppgFXitIFzya6klc5rme0C46dK +gaLFajR8cYFQlOKLDTuUNo/wqaOPjOKl8rnJ9amRAe3FSiiNYskVbUBRz0FKq4HFOIzgelKNriY3 +OeKeOcelNA5HpUuAvIq0SNPAOOlV5JMdKsPjvVdlBPqaT8hoZgtzilC+tSqgA5pDRbuO5HgZ4qNw +D1qwq54qKVfwpMYxCKtcBeKrxrxzVn+GiL1CRQnJzUCIMkmrcw6j1NR7BwPah2BbEMi88UKinJP4 +VMYiaZICgNO2gEE5UcVCwBApJH3H+VG7GD1pX1HbQgeLBzUizYBXPTFErDBPtVPc2c1WqJsi47jq +D6UgKjnvUGT+VKzg8VS2JSsXImL8etLLA/UVDC43Dmr3npjBpId9TNYY4pFxkGrcsAk5WqTIUbBo +8ha3NFUyo57VTukKg/pVq3lG0AnNR3nKnvxUJamqZw+oSFJjz3NdJ4f1USRiNjyOK5vVFPmsOxJp +2nEwkNu/irroy5ZXOLFUueNjuJ2UlWXvzWtbFWiXPpxXMW16koCkjNbNpcHAWvV5lJXR4rg4e6zR +/iI7U4PwRnFRq3IPWntg0GaEyeafFg9ajLYU5pnn7QSDVboyVk9SW42gE1lfOzmpZLl5M1NYwNK2 +WFUlyrUJWctCJYXLCrPlbRyK1IrVR2okgFRz3Zpa0TN+6MelSRMnerDwZWovsz4OBRciO5YWRAuM +96jMnPUc1W2yKec9aQZLD0zSSKm7mih461Ofu5NUg3QVZZztAzUsIFdznNZtw2W96vTsVUmsky7n +59a2ijGTVzQgIUZp8jhuO9RomFBzQyDseanS5bb2BCi5x607Jk4FRiJjzmrEShaGOPmCRFetObg4 +qQOSOnFAYVF2aPl7kfJ60uBUnB4FNOQaZGgmMZ96cqZ4pcnAp6n06UAkhjIRT4xjBpTuPFIN4OKW +o/dLUadyak2oOtVQzcCnEuAKmzL5kuhMSgNJ5qjioOSOTTeSetHKHtLbFxXXrR5tQJj1pRt9aXKh ++0ZN5macHNRAqO9O3pSsHOyTe1JueozKKYbjrRyi5iwW45NRMxINQNKzdKeqv1FOyQK7EZ8DrzTA +wP0pxUdTUkcYOKdydbjFBNPw3pVuKJSOlSNEoHSo59TX2btcqLwcUo3U9yAaRWDc0yBAWpctUyDP +apDGKluxag2il83enfNUki4qLcBxVbkNW0FANPEbcUiZNXEUY5qZOxcI8xTZSKbtPrV11FU5CUPF +EXcJqzECZOc04Q5pyHNToAMUNhGKZB5NR7MZq822q0uB0oTuOUbDMcUBM0xZPWp42XIpvQlbjfIJ +FRNHir+5cVVnYBSRSjJsucEkQFR2pwQEfjVYOQ2T3qzG4YVbRktyVYQetNMQH4VOrDFMdh0qE2bO +KsV2CdKNox0qNw27pkVIjZ9sVZjpcVYQR0pGtxjNWY2XFK20io5nc2UVYzGUg8Gky2BUs45OKjjx +yDWqOZ7j1yafu47inIvSpWjGKhvU1jG6K/mDBBpQ/vTJF2moQ/WqSuZvRltXGetPVh61TXBPWrAj +PHNJjjdkxNNz79KjO4fSo9wyRSSG3Ysbl9aAQeAaq5JPBqRVb1xVWJTuT/LRlRUBDDvSZz3pWKbs +WTtpuV71D82OtOUE5FFgvceduOaibaak8s96YVC5oQNMqybOapylAavSICM1UeAHmtImTRVOxgag +CNnr3qy1vioJIyDkHArRMlxsGcfLmo5M4PPbikZHJ61DIzj8KolXHebjHNBdW4qsX3HA/GlBccUW +NIztoxWLCq7yNxjJ6VZ3DvRtVuBT23E0pLQr+UD06monQpgn6VYIKsT7UhKnr+VWtDnlroULhl2n +nk8VQji2yKevqa1ZYVJOPfFMSEoOnerTSIakyxBvKAHAJxVyBznFVYlY8HipWDIwK1nJXNISZPLb +q3zAVDbEpIc+1aVoySgBhTriyy25B71nz9GbOmr8xbi2sg9SKQAo2B0qnF50ZAOcVZV9wyRUWHJL +oLOQATWf5w3YHrV+Zd0ZxyazkjbfggjmrjaxCvexZRzux6ipt7BxmmGIDBqUJkVLsNXRJvJ/Cm8s +TmpUXIqMq2TmpRrPVJkO7DECnsxK89utI4wwIp2C3SmyLsRUDAkCpNvGafEvY0/hcgilcHEgxwM1 +GSRkjimzSNvwPu0yU5U4ppDk9CpcTMz7d3cYqyi4jA6mqUEDNLuPIFaYXGOeKubSVjOC5nqVGQqS +KiKNI2B64qW4lALDn2qS1C43ZqelzRv3rDRBtH0NTxhQDSsSxIHSkZSB1rzcdU92x6+BprmuWYcY +qyhxVKJvlx61bQ8CvITues0SZ6ipUHHtUeBxUiA/1o9RdCxGABzzUi4qNeBUqjitDMlFOGetNAIq +RcDAqbCF60ZoJ7UDLU9hASeaazDBp7YAqFuuD0pDQ5TTs8U3j/CjBAp2sAjN2pgYZocE5pgBo3GS +ZFJk9qYeKXPIHemArf1qFiOtSOwHWoHPNJoaEJz0qLbk4FSquO/XmlK4OajqUMZOPSjAwadntRxm +hgVrhtsT1FpOGJzzUt5gRPj0qHScAntzQtyZ/CdFEnFWFGKjixtBqXNdsdjhZj+ID/ozfSvM7lQz +NmvSfELbYGA9K80umAZgvrUvVs6qGxnkAljxgGnqg7UKCx4/CrUaZ4x0qLHXcTy88fSnNGuM444q +yqA49akMZ4xQ0RzGa8I54qFoADx+larRYz09qh8kc1PKUpFAQnofzpywbTkHrV4wFefXinCLHA/K +qSQnIS2tznPqa1ooh6cVXtYxgVqRxnjFNoxlLUlgQZ4q7GrKaSCIDBqztx1qGZN3E5608YIxTtgN +AQ4x0zWTJaRGGOaNw7dKXY2DURUikmTYk8wDNL5gx+tQdCT2xSZPWqugLQlzxVhSMdeaz0c449ak +84AVqkxF0yDoKY0w4Gaomc4yD0qMzk/NWttBmj5/vSeePxrKa72gjNMN2McmqSHY1/OzzSiYcn0r +FF6fWg3wHenYVjYFwPzoMw7Gsb7aDyDxzSi868+lNIHE2PO460hmxgmsoXic89aDeL1zTSCxovOO +T2qtLODnHaqbXS464zVeS5wPwoaKSH3M2Rnv2rm9SuByB71eurvCk57Vzd9c7gQCPrWM2r2OmlC+ +pm3LZZsdMdKpsCrFSCCCQR6GpJGyfTvUXPaiKsjpY4A9vejHQE47GgA/jmlIGD6ZFMAznH160uT1 +FCnP3vQ4o57ds5pFCdznvWvb/wDHksYztMySfiGUf1rJznORya0rMsYJQR8oeAA+mWH88UO/Qzqf +CfU69awPGH+ptcer/wBK6Be1c94x/wBVbe2/+lb1fgZ5dH+Ijinyc9qhbgYqRsZI79ajIwK8x9z0 +9hoJJp3BPNA6Y/Ggg9c0W0Aadwo3YFLn8qZkce1DVgQ45zk0q88npTGanjotDAUDJpCevFOI4zmm +A8+1DYDSeOBQDSnAxilCn8zSvZATRHg5HWhwcntg0AbaV8nFQ0Awd6lO3qBTAFJFOOAOKGtRjSwx +z1rM1biJvcVokgc1l6kwMLZ7g1SkCRyKk+aw61v6b1GRWIgBmY+9b2nDDL7+tYT+I6pfCbdxnyev +auL1Q/O2a7K5x5J+lcVqjLuIzzXZJe6jkp7sxWbc3Priuv0EYj55zzXHIQXGfpXZ6Hyg+lTUXvRR +rL4GGp7d2c1BYkbwRT9VxuaotOb51qcQKkvdOkhIIA61aWq8Y+UYqZMnFKN0jN7g2Ap4pg7+pp74 +681GpOarqCJs9BjrUZxn2qUHioSec0khDsjPFLjgmmgAg4pwAINaXtuITJBpwzTe/sKVQB071nLX +VFIkHfigdcUA9yOaAewoV+giX0xSD1NL1FNHFJbgPU9cUpOKbnAz60mRznvV30EIevWhsACmk8e9 +MLA8VFih4A5ppxmmgnpS8k801YA55Io3BTSjFJgZ96oRID3pRxzTOBQWPbpiqtoSKxJNPTjFQqTn +8anXPFKSQIU5zQwG0jFID81K3THtSSGzmNfzs56Vz9rnzOldBr5+XBrDslUt7iipub0vhOk0oHOS +Ks6s58k1DppH5nil1kMYyPataNkmzGeskcdcBSxPrUduMyKPenzfKWB69qS1Ubwa53szrO00n5kQ +YxhcVDrD7OvFT6R90fSqesgFiPWlQaVMwmr1DOtW3yjHJzXVW33APauWsoz5gxXX2qfKDinTnzTC +quVWH4BH0pu3BNWCKNldVzmKjdDxzTCrelWiozml4PNO4FBgRjIqaJcilkAB5qSLGAcUmMbjHFO7 +cc1KpQsu44Gc1F0Wpsx3BQKPagZobr+FVYQw8im7eQe4pe/tTlAJ55pIYpBwRUTDjjtVgjgDvUZQ +k03YSIwdn5VC5J4xViRRioQASMVPQpDo8gc1Kx447UFcAUjdKa0YmVgNzZNKRyPpUwUgcVE3LfjQ +O4gHr3qC46cVc5x0qtKpPamthdTMZST0qTZhcVJs5o6HHrSW5TKzx54qIwcfhWiqDHNQyKBjB60N +6iKB4IBHWon4YgVbdDz9KqiJmYnHarT1JY6JsAGn+b196iK7c+tRMXOOxqtybdTSgnKkZp84VzkV +QQngHjGKmWTnGaJQaV0OLuOXKMP0q22GjJ9qqOy5H0qXzfkbPpUPUtOxxutfLOarWu5gcmrGrsWl +PtVOBtp4Oc1UdEVNFyJ5omBBPXNdPpE7S7R1NcsrNjI5Fdb4RjWWbL/lW8Krijhr0YyV7HQKjooJ +HSl3MO3NdG2nJKgxUS6Kc8iu+NZNanjypST0OckWY/dGai8uTbhhXUvpRQcCqU1k3I281rGqmZTp +tIxYoMnGOta1pCyDp0pI7cqcbcVeRNo6U5SIjEcnA5701sE4p7HAwKiY4FZmktFYUqM8VLHGMVV8 +0Dk05LkkYFNp2JhJJhdW4GSMVnqmGPtWjJLkcmomVcZqk2lqTNpu6Ky5zk9KSWXYABUxXaCTVKaQ +DJpxV2EnaNiC6n+Q/Ws6LMkgbrzkVPI3mNjqDSwIqkHuK1vZWIjHmd2aAU7RSOjn61IjrjmnZ3Hi +s7s05IsSPaBzU3yY4qIRE+tTrCMUrieggKYIoyq9alWAGkaILkY5FK6E4u1xiFQeakzGTmmqik8V +YjhB7UNjjG+gwFOhHFJlR0qcxogAqLam71pJjasCMtKXGOlSJEp7YodUX0pXVyuV2Idx4OOlKZTg +gCjcueDUiBT1psmKuyuWc9qTD/jU8u1OlQiTLfSmnoJqzHIkn0p3lsOalWRNtMlkGOKV3cvl0uJi +nhO9VBI+4HHFWFfrQxRs9xzVVZ8sRVhsmmCIdcfjQtAdrk0CjAyKuYUjpVSMbamDHoaiS1NIzsrE +ckdEZZeMVL16c0Yp36Ek8TAVK7AiqwyO1LlqiyNFN2sJKAajRGB9qed3Q0o344qiOpKhIxUu8d6r +AvmlO7rUtFqTQ98E1A0YzkU4k9KPmprQlu4qAipBKBwagJNNwcdaLXBNrYstMtV3wTnNMIOMmjGR +1ppWE23uKDtPFSCbGKhKjIoxnPaiyEm0WTPmomcNUYUGlEfvRZIbk2IQBzSqyrnmlZBR5a0xDvPp +jybuO1Hlj8aUIOmKWgNtkXy5xT1I6elS7E9OaXCjHFO4JDNzD8aTd61N8tIdoHSpG7kRxjNIGWnk +oRxTfkGeKol7gJBkYp3mc0z5D2pePShgmDbTUZAzmpG2GmFVoQmPDAdaeJOKi2A4waMAZGaVkUpN +CyYaoPIzUmG9aBkd6paEvV6jUjKmrCkKKhy4NG9jSauOL5SSXJ6DrVNlYEmrG5u9NIGKcdAk7kKM +c8irkWCOar9O1SIw5olqhQdmSsF5qnIxQ8VMXPSmMAetEdBzdxEk5q3ERVYBKd5gBHWiSuEXysuE +5qrOcAnpSif0NRyNvHNSk0XOaaKiyMWIJp/GTTvLTIokwBxWhktCGRVIJFZ027IAHerbTD071FhX +Jz2q4poU5JlUY6H1qO4CjjrU7oASQfpVac7qrcIWsUGG08UvmMMZHepnC7QR96oo2G7afpWi2MpL +Ww3zD8zEGk3n+HIqcwq2fpxUPlSKcZziqTRDi0SbXkwfSmMWRvmqzBuyc8Ussav26GpvrYtpcuhH +FEJMH8KfJbsnOOM1JApTk9u1W8BgM9KlvUatYzIgASDWvY28MvDDJqhPGqsCKuaZLtkGe9Kpdxui +qfLexu2+kQ9atjTFLAdqZBexIcE1eS8gDAFhXDKU7nbGMGiBtIiI6c1ANGVuK2lmjI6ilWWIk4Iq +faTRbpQZhy6MVU7eaZBohJDOK6EsnelVk7Ue1lYFRhe5hT6McfLTI9Hl6HiuhaSNRyaYskTdDR7W +VhujC5hnSHQZHNQNpkzfw4rpWkiXqRQvlsOKFVkgdKLVjkbjTZ0BO33qGK2nBwVOK7J0ibg4poto +ewFUq7tqZvDLocz5LAcjFVpkJB/Suskso2FQ/wBmQ9xmmqyG6F9jhbpZQcLnJIpzhwgBHUCuxm0i +BjkKM0z+x4e4rX6xGxh9Wlc5W3g8sbj3omaQA4B9sV0r6Qu4Z+7T20eAgHFL266lLDtM4n7PcyNu +YEDNXktpQBgV1f8AZ1uFA2ilFnAvGBSliLqyKjh1e7OcW0mxu28VDIP4e9dNcmKFD24rnJWVpCw6 +V5GMlfc9nBxsh8S8cCp44yOtJEMA+lTIua5Io62xQCKnjAxSCPI461OiYwDVIzbHgALTlIP1o4FO +QAHNaMgcMg81NgYpgp/pUJAxpFC8GlY0o6U/IAY5GahPUVKRUZGOvrSs0CE5p5xik4NBB6UDIjmk +HpTyo70jL37U7DGDnmkwacMg0vOaL20Aa445qA4/Kp29qixkmk9hoQGgnJwaeF46U3aOTUXGDBcD +FMI68dacR0oyKTYIp3YHlnNN0tcnNOvs+U1GkDgAUJXaJn8JvxkYFSiol4FTLkV3xWhws5/xGxEL +fSuESPS5PNN3O0eM4AHXjrn+mK7fxKf3bCvObrBdsc4zSXc6qSurEKckgElQeM+lXYwCB71TQVdh +A42+lS7G7ZaQDjP/AOqpQvAyMHPamx7e3XFTLlsA02rmdyJkHP40wI2OR361Z2jkUzDDk81FmO5E +ydPQU+KPDZHPBIHvipVUA5wPTmpB5asGUn1x/n/CrS6kt9BLdMEcVqxRnjA6VQhAyM/WtS3Ixx61 +TXYzky3EufwqyEzUKMtWVasmnuZ3Ax8ZpQnBzUmRxT9oxUSiFyuUFRlAM8VbIpuzPFQ0K5RMeKQx +54xVzyiTzT1hFNK+gc1jP8kjtUckYwSO1abpVSVBzW0QTMtw3XFVpGwBgnNXZx1qjIcDDda2VrGi +K8jE4xmoXY+v1olmVBk9KzZ75RkA5qnJIqKbLbTFcnP41C12M8tWVJeZ5z3qBrgFtowx3EDFRzo2 +VM2Vu8E896X7bnPNYv2jlRjIHUetL9pxjB59KSYOBt/bTkDPenNfDGM+1Yfnq2eTTHuCBjPpVOXQ +FTvubTX/AB71Wl1AjvWS92cYBPPBqk85PU4rNzkaRpI0Lu+LD72aypp9x60xnzznvnmoWOaSV3dm +tlFWDJPJNIATRSj1qxIfuG3BXnIwaQhlODwe+aSnH5uuc59aRQgyTx2pcnGPWkGaKQxfeta12ppq +yHB330SlT3C81k4GRnIFaUErNYLCByt7FJn65FHX+uxnU+E+qF7Vz3jEZitfq/8ASuhSud8YH93a +f8D/AKVtW+Bnl0f4iOKbIOetMPzc05zyc1Gckda821nY9MOBTeecUUEmnYQhHHWkxjqaXjPBoIOc +1LvYYnBp+fT6UgFLRcY7Pb1ppAwTml9MU0HFDENI5p3I5pMYbg9RTucUaAPU5GDxSgg5pq44J7U7 +qeKm4xcUoAIpMZIx6U44xgUpbgRS4xgflWVquBCwPXBrUcg1j6wSIm9MU4vULHN2xXzST64xW9p2 +Swz07Vz9v8zg+9dBY43D61jP4jqlsbNz/qPwNcJqrEE549a7e7l2wke1cNqeWkYHua7HZJHLT1bM +iMIZOTiu50MfuM+2K4pEUSD1yK7rRFxb49s0pv34mkk+Qo6oT5uO1Lp4+6abqePNxUlgMFR1qK+4 +U/hN+PIUE9KmUkcjvUK/dHWplzxmlG7RkxrH/wCvSL8xpW6mkj5+tXsInA4wfTioj1+tScgA+tRt +yQKUVcAwR+NOXAHHWkwQaU+n602Ag5/Cnr14pozyO1PUfnUtjH7hjHpTFABzS5GVOOM8igcnFEdh +EmcfpSbgAe1G4cZqJ27etF76BYcGoJJqEE8D3qYD+VVYBrECm7ulPIphwTn0pXsA9aOST6Ui9OaX +1qUrsfQb6UoyOaG6fWkX/arR+6SPPI4phPFOGPpSHk00riAAk+3apsHA7+lQjgjPapgfWlIA5pXP +yZpOCc+lLJjaeaVgOU8QPkY4rJ0/GSTxmtHxAQDwO9ZdjuYcU52udEPgOn01Ruz1qxq3+rqHSQQA +KfrLEREdaqn8LZjL40cZdfeao7U/OKkueM57n8qbaD5198VjL4WdkTttJH7tT7VV1YZOauaQMR49 +qp6pu31nH+EY/wDLwq2Q/eDviuotiCo9cc1zNjzIAeua6a24UHFFG99BVtiz7UdKXIpCP0rtRysh +fH9KarZ/CklBzjtSLxxVNKwIG5J9KeqccdKQ9fSngHAqbjDZnpTSMZzU2R0FRsB0oVxEGZCTilLH +vUoXvTSooKItuTmpVUdaYFb8KeCf6U1oIecdRSdaQ84FOHA9cUPXUCGUHGKZEgBqV8nk0LnqKTV0 +NEhQYFNKj8aepI680YoEV36YFViDuq1KrZz0pkacg9eaHtYaEOQuKjYZFTuAAagP90U15iKzBQTx +3qMxknd61K3PWkXrmkihWXagxVQ5OatSNxiqwBJwemaAGiLdgnmmyRhOlXFUAVWnJrREmdIcHBpj +4OMDtTpfmY84ph9PSiQ4kTsVqSIk4Jz1pNgNORTwPSmrsT0LAwetLJlYywpifeHSpbhf3LD2pqOt +ieY5C+2ySMffFVVhIYUXMm2dgefmqaN0fGeuaiV4nSnGSLkMabMmtDRNVWxu1z90msxsqnHTFV7W +My3Cj/aqo6oxqJWZ7np+qQTxoQe1bEbowBFeeaWHhiQBuQOlbsWoTouCea7lSbR4kqqTsdQQppPs +0TckCsOLVZBjfWlb6jG+MnFDhJBGpCRI9hGxyBTW09McVP8Aa4vWphKhGc1PNJD5YMxnsZN1RSWM +g7VubkJpSEq1VZDoxZyk1vJkjBqHy3iPPYV1jQROelVbjTo5RwMGtY11szCWHfQ5kyMzDHrVgBiK +1odHRTk80T6c38HFV7WLehKoSSuzDmYAEe1ZVwSxrqP7HZuSaoXOhSknByK0jUiRKjJnNSukS49a +LWZXfrV++0WdVHGcVn21u8T7WBFbc0ZR0MlGUZGwgVhgU4YQ49arqNoApS5yOayZslZF8cKTSJIc +8nFQpMuOakDK3TFJIUmnsXonUimTyZBxUKFsZWlAZiaVraj5tLDIwwPNXUfaKrANTsMRQ9RRdth0 +sjMOKiTcDzTtrZpyrgcmjYLtkglIqN23ZzSiMUuxPxpaDu2iBRgnvUu/bTlRRQwGenFMWxDIzvwK +RYm96sgCnDjii4WuQCOTHFJ5TZxVn5qQBiaVwsReSelSCEYqTYetLtai47DBEKlEa0qoakCEVLZS +gxioBT9o9KeE96XbU3KURox9KMU/aKXaOhpXRXKxmaTJqTaBTcJRcOVkeSadk4p2FFL8mKbYlEjG +aMtT8gUBlouPlRHtY0m1qnDDtTc9qLsOVEWwk0piJqTcBzTfMPUUrsVoiCHjBpfJA4pPNbtTWlan +qF4jjGO1J5YqNZGp4c5p2YrxHeUBTvLFJuNAZv0qdR+6L5Y5o8oUm8kU4NRqO8Q8petKY1HNJls9 +aRnPSjULxF2im4FMZ2pnznPNOzE5LsSlRSELUZ3nrQUc4p2FzLsBAo2rmjYfypdrUybrsJtUCkOB +xTsc5NBXuKAbRC3GDTPmDVZ2qRSbcU7k2IcvxSMHzU/y5oIBouBV+fvSfOKs7R+dLsGMU7isVPMf +IoEjelWfLpBF047U7oLEHmMaeJRT2i6jGOaaYuKV0Ib5yelKHQ+1RtHzxSLH707ICX5Cacdh6VGF +GMClKbaQ7CkKabtXOSajxySCeacR6UwsSBEHINIVU45pFQ8d81OkQpN2KUWyMRjrUcqBh9KuiMVF +KhAIFJS1BwdjHmgwTzUXltjk1cmByRVQkjIrVMy5WQPHJ0qvIknp0q8owfWncc5FVzWFymKyOMgi +mhQckjDVruqHnAPFR7E6kdBVc4uUoAn6YpVyeQD1q4UXPSkEbHgCnzC5WQp6dKdsfGeoqbynPane +WfwouJkKpJUqq+AD6ipRERxT/LOOetK6DlZXkhUnJqs5MJyrYxWg0ZAx7VRuVAViPTNCZSiyv9su +c5LHirMF5O5GWOawTO5b5AevQ1YtZLkPgqapxQ+dI66C9uhgFjirKXUynhvmwDWFbXDHGegzn8K0 +IZSBk/ebqa55R1NVNdzU+3zsuM06K9uF6msoyMCMVPDI5460nTVh+013L73079eBTUupV6Z61CpB +OcdaUFQanlXYam31JZLm4fnkYqSG+mjGPSod6EYpMoeKVl2HdrZlhtRlJFXbfU1I+asfCZqTb8vH +FJwiyoymjYOpRZGKnS7iYZzXPBDS7pAOKh0o9C1Wl1RvNeQ5xkUNdRKpbNc6Wfv2pjzStxR7FB7d +9jdGoQnOTULapECRWECwJ5pjE8VaoxJ9tI15dWQE4qEarms3y91RtHtx7U/ZxGpTZeubszLjPWqC +J83IzT25H1pYs5xXk4xJTPZwjfIWY+OKsoFqGMdzVhB0Ncu2xuyaPHWpAAaYqnA5qVcc5ojfqS7C +U9eTSHHak5BFaEkq8VJkVED2qTHFSIGpw4FJkU4Y6UagNYgVCWqZxUG0nrS6jQ8CndqQcUp6UPew +yMjnilxxS59vxo+ai9mBHtwaCQacTUff8aBisMiox6Y5qY+lMAwaTY0JtOBTDx+NTZ4qF3C9aze4 +0ISKYQPpTGkGaAS3TtQxla/yI+O9WdIiCpkjk1Wvs+XgDvV/TQRGua0pq87syqu0TTAxipRnFRZH +FTKc12RONnL+Jj+7PevObnAkPvmvQ/FJO04rzq7JLNmnZWOim7CRdM/pV6HIxWfEe3Tmr9uyFhuH +THHrQoGjkXowF+ap+MCoFIOcAAE8AVKpB5/Cly9URzD85PpRt6kflS8YzSBgOlFr7i5hentjmkCl +lyuD6gdRTC4/Ko2Y544OapIL3LETgHA61oQSkYwfwrI80lhk8+vrVmKXAJyOD0700rktm7HJnHrV +pJB61jxXO7BPXpxirkU64FZuLIuaivUoY1npMOOamWbANZy1JLobjnrSZqqJvSniTnioSBssjn3q +RehqASVJ5nWq5bbEpg4BFVJgeRU7SVVmbNUky7mfcbV9uc1j3kqjOK1Llic5rCvATn0qy4vUyru4 +IyAc5NZM9wDnPp1q1d7z1z1OKypfMByO36VMrs7adrDWkzuGTzSKwJHOMkZI7UzHPI6ilxgj0oRp +dEwPOWNKzjotQ4B4FGcCgSaJQ465xTHkHr170w4PTsKjbOf50DVgZwSCeKhZvzqRx/KoyCaEXcac +duabgU48A0nIB9KoTsBwBSAkZA70uex6daXGAD60C3JHjjQIUkDFl5GOVPoajFO2E/WneWQDxSbR +SVhABxk+xx6UhVd2ASVPQ+1P2Htxgk0hjYfhSuNiHjGT0GfrVu0UNG+OGE0P5bv/ANVVtnPTtV63 +jaNFl24V540/UH9KejM5u0T6oWud8Y7vLtcf7f8ASuiQ5rnfGP3LX/gf9K2rfAzy6P8AERxT5z9K +j5608ncTTCTivMWp6bG8k80ACnZ+UgimnI5q7p6iDAByab82e1HvTSec9KnRvQY8Hj1PrTxz7VES +QBipM8fWlsxi8jAFNPHb3oDc4FNOfWhbiYAgkVIo71EKkQ5A5xijcB3POOlCk7iaUgdaZkdqz+0M +eCcn2pc8ZFNznpTu1PZgMbFYmtPsib6VtSZPT1zWDrRPlMaqK1BbowLY5fHTFdBpqgsAea523+9k +9zXR6ZgkY4rJ7nVPY0b1f3RJ9K4u/wAFznB5NdrfD9317Vxl9gOfWumfQ5qfUzIfv8j/AOtXb6Qu +2AH2riosmQHvmu30pf3GT0xUSf7yJpP4DN1RsS59+1Sab94H1qPU8eb8xxUmm9valVauKHwm6hOB +mp+TVaMeverHQflTjsZMY5wOaWI9qRs8ZP4U5eGx2qnoJEw3bc/hUZyDmpMDFQvkHr+FSnYY4Z7H +NOPYUwCn8VSuIXHpTwCKb3NOBYngVL7DEZec0o4oJHOKbnpTWi0JJGx1pm0euaXcO9IO9C7jECYO +O1PwfwoGAKTcelDYDW9qaQB6c0uBmg4qRhHwTTzx+NMUc9aG5zSjuDD8Kfzn2qMk4py9OvWtehIp +45pME/NSsc4Hp3pV9M07IQAZ71IuMfjTRTlOeO1JgBzTJOmTUoHtTZ1G00o2A47XWBbHrVKxxjIq +1r2d/WqlnjFKavI6YP3DqdL9ai1pvkPNO0ssRkGoNbJ29ema1hpBowfxnK3JzzgdaLMneDjnNMuC +xHPapLHmTp1PSueWkWdiO10riMHuRVbUgS5wat6dxFj2qnqBw3pxwahfwzBfGVrMfvRxXTW+cCud +sj84xzXRQg4GD1qaSfMFVlmlI9KYOtO6967b3OVkezJ5ppTmpsU3B5zVJ2BkPtTl6UFBn2qRcUB0 +G9OaTk08haZz+FAC5OBTME5p/HFJgd6EMTAxUZ69Kl6+1IFXg09BDOMin9BS7B1pGyKd9QGHHFSK +vGRUeDgZqVeBilcBG45FKvzc1GxGacrjnFJj6DZBnOKagxmnFgSBQw2im0gIJu1RYPWnSbiaaelS +3rYpIry47cUxVJ7U98E0BaezH0IzwfamqCxp0mAKkiWi2thDscYqrMmRVtgQc5qGQDH1rRqxKMiS +MBvxqE4zjpirk6NuJ9KqMnWlZt6lJiKRk09nPA6ZqEHaQaC+cc9M072E1fcniJLc1NcygRN9MVVi +ZjjBp1y48pt3pVxepEkcTfk+e56c9KZbysGFLespkbHPNRRdR7VbSsZptPQ31KvDk0/R4d90MdjV +VW2wda1NAAeUnuKVOOwVZ+67nYQblC4q2pYAGq0R2gZq4jKR7V6idjwpRT1HiUrgGrUMqkjPFVSq +nnNSRxgEc03axCi1saCsezVMss/QNVWOM8VYCMADWbsV7yJBNMpzmnNeTYqE5ozzg0WQc0izBfsv +DVZF+lZxC9aQhSetS4RZSqyRsJcxtzml+0RE4yKxCW6K1R5kXncaXskV9YZ0BkTrURlhbjNYT3M4 +Bwaq/arhDnJpqgJ4hHRyxwuDnFYF9ZQxsZFFVZtZnjHeoH1bzlwTya1hSnEzlVjIrzSAZqtJOy8C +idy7AetVZZduRxxW6iZuVy3HM5wSeKvwyx4HPXtXOfaCDjOM1PHNLx1qXEe6OmjmGCAanjYmsCCd +1AJNadtdgnHpUNFKJogHrRge9CSAjinF6jULIbtJNO2ZpA9I0rCnqHuodtx7UBB1qIysc5pvmnjn +vRysHKJZ2jPWj5apl3Jo3kd6fKL2i7F7MYGaN8dUPMJ6mjdjoc0uQftV2LwdKUyKOlU4yTz6U5nA +xRyi9oy0JhQJ1qqrg0/Io5UHtGWvPx24pRMarBlp4dMUuVD55FgSNRvb1qAOtODg0uUOZk+5vWgM +e9V/NNOEvSjlDmJ8mk5qPzDjik8xsZpWHcm/GgVBvel3MTxTsK5YxikABPWo/nODSBXFKxRN8opC +QO9QlWPekAY96LCuT5FNDIKFjLGnNDxS0Ks9yLzBk9qa7qaa4CHbTdwq7GdxpkAyDSpKAaCqtik8 +sfjT0BJ7lgSr1pS44qHI6GnDa1TYdyUOvSl3ChEpxi4xU6FpNjTIMVG0vNOKgcelM2pVKxDuHmDn +vSeae1SLGvWni3XrSukUot7EBlNBmbFOlTZzUDMvWqVmRK6Jd7cUb3PakGGqxGi/jSbSKimyAl6b +ucD2qy64FU33L15FNaimrDgz5GelP+Y1DG4arMfB+tD0FFXIGWUUhaQY5q6ygg1VlQgcUJ3KlCxH +5j0vmP0FRbm3Y7VLGMmqZmtXYeGk60nmPn61OEGMVBKQnSpTuaSi0riGU5pBNzUZlBpyjJzVWM9x +d4bPFGR34qfyxtyKgcBSaSdxyi0hhYdBSEmlwpzTvKFUQRg+9Ljd3qQW/pQIypz1pXQ7McqEd6kG +R3qMlhzTPNdaVrj5rE4dgeKbLNgdKar9Sar3Ey880uXUvmaRXlmBNVHcbicUyab5uBmotzvz3rZR +Jc3sT7znIppY5/pUf7xcUgm55FVYjnfUkJxyPSkXceaPOVucYp6laLC52IcjBqRHA5xTG2k4puV4 +osLnZOZEPOKQyKOgqMleB7VExJxilyg5yLRlHYelMeQ+tVtzjrxSESE5zwarlQudvQfLK2MZ7VmX +UpRWJPbpVpxIPwrF1a7CDb0701YLSKZuV3lcU+G52uB0ANQWyJMNx/SrWyNW5HU5xXQmnoc84Si7 +mrbXeMZ4zWvBNkDNY1mI3C5FdBbwpsGawqWRrSi5q6Heag7daeso6/pTGjVPm7U1GT8Kz0K1T1Lq +zDFO82Nh6GoUVG4qX7KeoqHY0im9h+5SAAaUAdqrtG6Hk03Eo4BosK9iWTf2NOBlxwarFpVPenLL +MM+gosNSJy8oA9aUySduRVf7Q+eaPtXtRyj533JS7ke9RgvnmkNwgHIHSmfaV64osPnZIxOKgLPn +Jp32pSOR1phlVicdqdg52yVGOKikLZzTBLtP0przZ6VLiXGTJlweTUkW1WP4VWSR8AVJGXBHvXlY ++Olz2MDLSxojHarSYwKrxKCoJHNWFGK85M7mTCnimKRUoAqkiWJ1yKcAaNvSlHpV3sSPCin44pFB +p1IRH3xTwKYQAd3fgZp2aG7DFaozTyc03tSQBkUEZ5pNufrS89KSYxuKbmnGmlc81L3uMODk0nej +HFIadhiOcU0HBJoY5JFKFGKWjHsKMd6gnG4GrGBgUwgc5qOo0ZLb1c849qmhZjUk0SE7qaqheRVP +YbZFegsFHvWlYriNe/ArPm5KA+vWtS2AAUVtBJM5qr0JzuzU6E8imheBUmBiuiKsjmbOR8UFgD3r +zu6O5jknrXoHilyO9ed3DAucjHNaRWhonoOjYZ9quRNk5Hes6Nl5+tXIJOfqOKuzYc6NSNhjHFTq +3cVTibpxxU+4Zx2o5SedFjeB060wsOvGRUDM2cdqaHxlfrRy2DmJGkwMfyqJ5/eoZZAx49OtVZZR +34os0HMW/O565pyXJAySMnj8KyGmIbhutJ9pYkmlyu+o+bQ6SG6UY5q/FdoR171xy3pXqeSTVlNR +IP3ulJxa0IbOzS7U4GeanF0OPauPi1QZ61cTVEI5aocNRXOnW5561ILnB61ziX6HjNTC97g9ankJ +bOkS5HBz9KsecAOtc5Hd5xk1dju84GaORgmarSjPFQO3Wqvn5NMabjrVKN9ymyO6bOQKxbrdtfHS +tGabr61lXT5Bwa15CosxboZY/jWXICDj3rWuEBJI681SMWQT0qHDodUZ6FAjkUYA6+lPkBGPXrim +FSobOeT0qVGxXtBn3egwaAuRke1Ltx17ngU5VOef0pWZXMR9zjtSgEg59ualwO3BxzS7SVB+tDhY +Ocrso4J70zyz1weMVaMZ9akS2Z9wVhkfwk8n6VKix+0sUNnAo8sdMVe+zlT8wP0qwkKw/My5cjKg +/wAzVcjuL2qM8WzBsMuGGCc1ILbLFR2zWmluGPX5iSST1NXIrQDDbQeRRyMXtbGQllvGe9TjT+K2 +YrVdoGM1ZS0Bx3o9ldCdY5/+z8jIGBS/2b1+XPBrphaDFKLNaXsxe3Zy/wDZwHbtmrBsFSzjduWF +7H+QroDZLnpSXloFshx0uFNUqVhSrXR7mtc74x/1dp/wP+ldElc74y+5a/8AA/6Vdb4Gc1D+IjiW ++U9KbxnNS/gKibIry0ux6gje9RkHPWn9eT6UL6etWSMOBRjIHGaewwOaZuwallIXHcjHSjnpQDuF +KRz6UXuIbkcH6UFic/yoJHHfpTDu5o6jHj26U8Y7VEmSOamwB/jUtvoAEMOvQ1H3qRumajAJyfao +e41sAJyB0wamP55qNQSc0p3ZAq33JYjcVz+tsBGwFb7Drmuc15gEIqo3GtzEts7x+VdHpmAfauct +AWJx6muj0tRkZ61jL4jqnsaN78sR+lcXqDfOee9dnqLhYm+lcNeOWdvfpXTLVo5qfUr2/MuCe9d1 +puVth7CuFtATNznqOa7vT8LbL6bRUT/iI0qfAZN/zIx71PYBhxVe9K+cfrVmyAO3j0qKu4o7GtCT +xjtVoYIOe1VowBwOnWrQwAKak9jNjCB3pRgUuPSgflim23YRJuOOahP3uak37Rx2qHqaa2F1JFx6 +07A/WmL70/nGMU1YBwx65pwIHGOTUa55p7MOKiTuOwrYHIpnBpGHekBP+FX00EP44o56ZoPalXkn +9KlJDF2kYwaaSemfpTjkcU1weuaskaTk4ppJPejPOcU04JFTJFIkB6D1FH+TSL19KDnI9alDEPXG +acnXP4UhA60gHI9K29SCVSAeenrRgZODnmmnkcUq07CHcE808cYqPALZqQZFTLyAeDngdqbNgKef +WnIMHimT4C5pLUDjNdI8zPpVW0PGSam1tv3vFQ2uNoHrRNWZ0Q+A6TSztTIqprTLgjpmrenZ2YPp +WbrhPargv3bM38ZzVwxHerOnt8y5HeqFwW3Vb0774B4rKovcOmO53mnMvkjgdKztRcbz9au2eBDj +2rKvizMf61k9YIxj8bJLHJcGujgJ2j2rndNQlxXRw4Axmijo2KsS7hmpByKqNIqkg1C+oRRg5cCu +nXc52aJwOhqJnIPWs3+1bc8bxg9KeL6JujCqTFY0AQeaATk46VWSaNhwalDgd6pO4EhyByab1qJp +R60xrhOmcUgJ80tUZLxFHBqodVjJxu70N21Gk2azOAMChXyfSqAvY3AwRU0cikZFO9wL2eOKaT2q +OOTtT2YUXEC08kY7VGpyaHYDH1oAjkyDkdaVTxz1xSsBUeR3o3KJBy2RRKflxTVYAH3psjZHWne4 +iEHmnSAbcd80RKc5pZSKi/UqxT2nPWnZIAx1o70PxkinvohsiK5b8c1YUbMZqGLlverTbQAcdqrd +kjGA4qMpnnNLn9aOlOwFaaJOneqEsTE8flWi/fvUJU55HFU0Iz2gzVV4n3YHY1qSKv3qjVEPGOlA +79StChUCoNQLeSxFaHliqWpDEDA56VcdyJbXOImO6RvqaRPkIpsmfMPpmpEU8Y71bMk+YviUeUB3 +rb8P5DMe9YCQsQB9K6vw7BhTWlJaowru0WjoIXPAYfjWhEYyBVUxZxgVMkTH2r0EeRO9y0uDn07U +9UOc1AiOO9Tq7LTZBZiLqRmrazcc1Sjk45FS716VDjcpTaLO5W9qdtSok24p/HrU2KUu4pTnApjI +adyKC1AtBoj4qKRW5AqfzABzUZlGDxTTYnGJUk+Qc1FneDkVOzK2c03bGPatLmfKZl3GrcY45rNc +JGentW9KqNWRexqFOK1hLoZyg+hCXQjis+dNxPvU8ecYJ79KbMpHWq2LSvuUkTc/rWrDGAASM1mo +TvH1xW1a4YDNTPQcHzDCjHGBSxiRGznAq6VAOPWkmTCZFSmnoVytItW0wIAJ5q7uTHBrDiLcHpV6 +PJHWpcSbl35KYzrwKSNCeM5qU24qdEOzexX81ckU1nJ7U6SPYCcdqhDcjNWrEPsKS/pR82OanXac +VI6KVpXLULq5RO7NOEbH+KkYMp9iasQhe9NslK71I1WRepoKk85q06rjiqbFgce9JO5Uo2JERiet +TeWQM5otyO9WDtwalt3HGF0VflGcmnrg4qOReeDSRMQeaojZl1UBFDALRHIMYpXIrPW5tZWItwqW +PBqsy88VLFnAqnsZp6lxUUimyLtHSkSQ4pzEkVmr3N3y20KxkxxipY9pqGQD8c0+LpVvYxW5dQKR +Q4GKhVjTnLYrK2pvzKxXLMC2aIpASfrTiM9aZtwa03MNmXYm45qVtpFVFY8YpxZsdazcdTZT0CSN +W/CqrRjPFWC5A5qB3ParVzOVhmSGAFTr05qsC2anXd6U5BF6CPHzmmICDU27PakOcdKAsTowAFSF +wRVQE9DQWfFRy3LVSyJJSDkVU+fcPapjuxTd2e1WtDOWrJo3IxmrG9SOtUfmFGZD0zUuNy4zsi1K +ysMGqUkeTxUgZyDkUzc/TFUlYiUru4+NdlTK+D7VB85oG8Ck1calYsPIMcGoHwwwabhzTsMBQlYG +3IZ5aDGOtSKecUgVs0oUimSiQvio2OT1pCGo2H6UtCnJshMfzE04ZBp7I1JsPrVXIsOEvvUUjA9a +Ty2zTTHJ1NNJDcm1ZkO0kk1Mhx1pu1x2pW6d8mmyF3LYlAXH4VXlKsaiDNj6EU0sc1KjZlyqXVhu +59/sKvQsDgmqfy1IrelU1ciLszSATFQTA44pgm4A9qTcXGKzSaZtKaaKzyn7pqWNNwFV5ozvyKtQ +MFXmrlotDOCu9R8qqq1i3DhiQDV2+uscL1rKILnNVBaalVGlsQvnPBqxAqk+9NEIPXk0/hBx1rRm +ClrcneLjj8qpkjPIq2soIAqCUKx/GiPmVUs9hEjU/jUpt++OKanyjFTeaFHJpNvoKHKtysyqp+lM +GwsOOasttbpULRgMOapMiS7FiMK2KSWIYNRiXAprTcdeKmzvoaxkuWzKswkVgO1Tw5OB2ppw5FPj +UjI/GqeqIjpK5HcjaD+NcbrPm+btHTiuvuS5GF61yur7g+COfWrpqzKm03oRWOAnXjFWmIY4A71l +w+bkAjg960reQjA29DxW1rHLUk27GzpykEBvwro4GBABxwK5+0y2Dg8HNbUPTvXPUV2b0ZOKsWJQ +rD+dV2iORt7VNh/Snqj96zTsU7yYkR24z+NX45l281S2N0xTwj4xg1EkmXCTiWJWjbNV2UE5BoCP +k5o8uXqKErBKTkwCgEE8int5YpdjmmeS/B9aNwWhXdhzUeQwzjmrT25PBNQvbkDAOKtNENMFRGxn +FI0cYAIGeKqOZkOefpQJ9w684osVdWJ8x96kWONh+NVDhl64p8bsoXn6UPYSWpZlt41GQOtU22A4 +xzVp5tw/CqmzLE+lQmzptEm24GfanoeRTfmxihVOVPpXnY1Xhc9PBtc2hpQnIFWlqpbDFXk9q8k9 +BjwpxmpeQM01c9Kk28cVSt0JYgPFOAFM6Y9KlXBFUSOUk0pFAwKVjzRYQw5p3y0lIDzRsMUk03NO +pvc0LUYD1oYd6dwBTWBzSAb60HAFHOaQgVLY7CUY7gUlO/xpp3QxhTGTSYPFPYjkU3I6GlbQLhj1 +pnenseB70wdcVmmrlEMnuKYqg9akkP6VDuIrSImQz48xRjrWta9FrIZ98yg9a2YBjH0reKOaqXOK +dgYNRhuaeT8pNdCOc4fxVklgOuDXnc+S7YwCT7133ip23Pg46153O+JDn1rWmtByZNEmTyw5x0q7 +ECu3vj09qoRkcHI5FWA5BOa0sRfQ00JxkgipAQOScY5qnFKRkZ4wKcZyeje9NiRYY4Oc1E8v8PGf +WojMDnK5HrUMkiclf/1UmmFx0kuQfp1qpLKOx4GetJM7bc9j3FUZZW4GfaiwXFlm43VAZckkH8ah +kkbJwai3HkihgtyzJcOQuWJCjA56Uxbl/Xiq4OM5NN6n6DpSGy6t1IOhqaO7mBBDcVQO5REezDP6 +mnA4GT60rIRsx379Catxapzg+lc+rE9SM4qRZCv+NFg3Ott7/cQc8Vow3oJ69RxXERXLqTg4q7Bf +OCD7cUOKtoTqjuo7lWGN3ans/vXK2+oSDkmtKC9LqSTTjEOZl6VuM1Qm2tx7U9p1Yde1VnIPfvVl +qRSlxu+lUnyQx/Cr042sSfuntVR13HAHp+FS49UaKZUZO/FNKhsAcjIOfSpmUk4x0FM2sp/Sk49B +qfUjKcjFLsHXjmpNrDrx1pQgHJ9alwKVQYI8/wCFORADwOMdKkKAHIHUA5pwQ5H5UOOuglUImiG7 +I9elP8sdTnnrVgQrncO1PWPJ2gHjmhQE6hEiNjCkgj0qcRE8/eOeSasLGFwGHUZ/CrEMIJ6VSgTK +oMit844x71ehtyDjHepYoT2GRxV2KL9KOW4vaECW3NWUtgATirccWf6VZ8rtjg07WFzXKaW4wOKe +LYHtzWgsXAwKXyQMVNg5jO+zqDnp61HqEKixbI6zoR9BWqIVweKi1SELY/8AA6aQXPS0rnfGP3LX +t9/+ldElc54y+5a46/P/AErKt/DZpQ/iI4xiC3XoKjYg5pWXk5pmBnHY9K8vY9QMMOaVs9fzpwP8 +Pb2qNsVa2JBiMeuKjyD0pSTg49aYARzUtlD1ALdelSdQc1CuSRU+R07ChJCZF074pMc9adg5J/Wk +Gc5PQClbUAHA4p/XBpvHNO4FKTY0D9aF296a3SkUnJqG1cfQkXgUhJ4OKcD6UpIIFW2SRN0PNc3r +pwDg+tdK2CcCuX14nBH5VcRrVoyLN+w65rptJY9P1rmLMcjtXUaWNoHvWUviOipsSas+2ImuLnI3 +t35rsdWYmPA9DXGTjLt25roe+pjT2H2v+sHpmu1ssfZ+eoFcVZ4Eq98V2tqP3GR6Vn/y9RdT4DGv +OZWOCeau2PGAapXePNIBPWr+n44rOrvZgl7prRj0x1qwOagQDNTj3PvVWexiwA5pQO4pvNSDNVoA +1wPoah6EAYqVjxTFw3PQU1oIcvfHrSmgEYAH0pxH48UxjQCc04tjH5Ug7ClI5FQxiHkCkGeO1Pbp +QufrVtEi4HFKAc0KDyTQMZqbJAHGaQ0/ABzTSetPoK5CzY7dKjBGc9vSnydqjHWkk1qyyYYxz1zR +kDr+FNGKaTz0oSuxMeTzzSgjvTBjODT19OwrRkj8DpSDAPNDcUhNGpJIQDyKXOe9MBGM+tOG0ilL +YaJU9aZOw2nPNODA8dqinYbDVR3EzidafM5+tR2jLtANO1n5rg49aitQvFKbXMdMF7h1Nh/q8+1Z +Wtck5rWsSDCO3FYmtMMn3q1pAyXxnNSkK/IOM81e08qGB5+lUZMFxk/LnnFX9NxuU59Kxq/AdMWd +naNtg/Csa+l/eHnvWvH/AMe49hXNXpYS5HqaiK9xXME/eZs6Y65zmtia5jgQZbnbn8K5eyuFjGc8 +1X1HU3YFFPWnTjqKrqyzqOu/MVQ+2RWHLeX02dpan2lnJdSbyDjNdDDYIi4KDpW3Ok7Ii1kcpvvl +O4s2Klh1O7jIBYjmuql06B48BRWBqGktH8wHGOBVK0iOaxo6fq4P3mraGoo2Oa8+V2jcDkYrWjuZ +GQckmlytMbkmdJJqMYzlulU5dbiXv3rm7q5mGRmqQkduOeveq5SU0dLLqizHhqhNwpBI9axkV8HB +q3E3ZvSkkrlX00LyXx3bQ2K2bLUQPlJ4rnGgUruB5qGO8aFgrUNN6oSkj0OG5RxkGrKyA964yw1h +AQC3BroIbjzQrI3Xmn5MLdUawK9aCAT1qmJ26HvUiycjmi66BYssPlqsc5qfzRg1Snuoo2HNFhdS +0egxUZy3yqMk9hSpKsiAjpTAzK2VJB9RST0GkThTHhWGGxnFQS471Io+U569c1BIQc00luO+o1QC +ac2AKRCM4pWOCc0kNiRptOac549sUi9M01z196paCepHwabuycGn7ahYHPWqXcB2BgmomIOak7Yq +J/ahdxET4IBqIKM8etT9jSADNMewu0du9ZuqELAwPXBrSzg4BrO1hT9nf6VcNzKexwMxG9setPRy +cD3qKXIdvrUkS5IxWktjOG5u6bC1yyLzXb6bZi3jHHOK57wzbZw5B4rtkRdoGK3w6ujhxU7OwwEY +BqVCo6U9YhgUvkkV2WR5zmydFTApkgAPtSLkUoIJNCCUk1YkjK4AqdY91VkXB4q7E4xzUy0CCTdh +PJIHHam/vFqyzLg1UlkIPtSi2yppRFMr9qYJ+aZv3U4JuwaqyM1dsUzLk5pvmqe9DwnFVmBXIppJ +ildbkxKHvTOOeagwScilKv61diL3B8c85rMvAW6GrkiSKOtUJFYkg1pFGcmVdojXLVBK5cZq21rI +5AqT7H5anPerdhRcjFzt68HOa27HlVJ9qxrlWWQAeta9q4CLioqG1Jl8tkinMQRg9qiUM2Kl8rjk +9ayNHJsZwOQQB601ZTvZl4UsSPpUpiTGDUTIi8DtVIhvoaNrJnntV9XUrWTbugAANX0bIGBWckXG +VhZdpFU2Vc1cdTgmqjIc9acSZtgCq0vm54zSeTx1qMx7ehqrJiu0O2g96fgACmKnvxU4jU9+tJsE +RPJ2PFIADUjW4HU81GUUUK3QHfqTA4Apxc9KiUr0NSDbSKTGk8/hSrtPWkxznFO4z70Ek6AdulOb +HGTUQY9qcM1Ni09BrDnilUkU/Z3pGU07k2sSBwMU/wAwEcVEsfHWnbAOKnQu7sMOD7UoIWnhVxya +btH1pkirKBTvN3cUiqvFLhQc0tBpsQuKaxqTCUbVouFrjFcjpTxIM0bUFAVKWg1dCM4JpvFPManp +ShFFPQLO4xQB71KHXFJtXtSBBS0GroXenYUjMKClJsPrRoF2AB604U3ax5ow45xQCJClMK0bnpNz +UA2GPWkHpS54oBWgQdeKb5ZycVLlRzSh1ouOye4zbQVJ/OpCy0pYdqVy7Ih2N6UoUmpAQetGRmi4 +uVEe05pTkU/IAyabuoBpDAp70FTSlxS7xT1FaI0g0hUnpTt4pfMFGo7RItppjZqfcmKQ7B1p3E4o +r5NIx6Cp/wB0e9JtXmncnkZXyOcjjFNypOCOanKA9KY8R4IPNNNCcGRFF6ikCjin7Tg/SmhW6U7k +uLHY9D0pw6ZzUbArQMnimLUad7HPaoZrgr8q1KxPQelQ/ZmZtx70adR2ZVMZlOTTlt8dSau+QVHN +Bip8wnCV7ldYBnrTWgU5GauiM4GBUTRHmjmE4NFQRBGxzTzEp71MYWJoMbdBTuLlZB5S560jRj16 +VZEWB0phjPOaLj5WQBFPekaNc5BqXyzTTGwOaLhysiES8gmmPAvXNTFWpuxuKdw5X2I0gAPWnmJg +cg1MkZPWphG2OaVw5WjPnidRkGuU1iJwS1drMpINc5q8eVJPatKcrMUldHOQhz1/Kr0JcdeOgqKB +o1cgjrV9PK4OOvNb83kYezTfxFm1uZI8Z+6a1o72suLyzxVpWj6YrKVn0NFFJbmvFc7gOatIzHgV +hrMRjb64q5DPLlaycWaR5e5rqjn61KFkHaooZGIzVjzcCsXc2SgMETHmnBDS/aAM003Kgc0tR2h0 +FKkA8U08cUhuQaj87PNNXE1HuDBjwOtRsrZ5p+9iRgU4E+lO7QuWL6lSSDd2qo0LKeBmthicfdqB +hnPy01Jhyx7mb5agcnBzTjGMcNVh41OQBzUByPzp3uFkthvlvkntRtcCngsRT9rY9aTLjchG8mpF +7A0uCPWjbnArgxlnCx6ODupmhADgVej461Tth8oBq5jGMV4yPUZYUr171IM1CnapuccVa7mbGvSo +eKQjP0o2+lW2IlFBB7UgB4pal6gNB9aG9adgUnHSl0GITTQaVqaOtCGPHNFKKShoQhx3pPWjtSc8 +ipuUHy0hGOlHuKTLZx6mhKzARuRnNGKU8UelDARsgc1HwcmnsTzUWSKjS5S2GSfMBUDAgkVN1pu0 +E8nFXEClFG5uQTW7GPlAFUo4wXDAVoxISK6Keuhy1XqINwqYH5GpQvWmy4EbfSt1ojDdnn3iiTa0 +vAOQRk9q8/mxvz1rtvFcmXcDrXBzOQ/51vBaCkyym0AZNSZHY5zg1SSQjGfXFTrMgI3fdyM4qydC +4s4xgDtS+dzx6Ac1SMoyQOR2qNpcDFVcmyLzTspPNV3mI9jVV5zxg+tV5Js/eJpXQbk8s55IOOO1 +VpJmbk+lQtJn+X0qEsMZ5JNJsLE24EnHI6mmFx3+tRBypyDg9OKcW3cnngDNIofknpjA6mnKrHpy +aiVlA65+tWtPlSO6t3kHyrMhP0zT2Qiy9kYpBFPMiCJPnwckcZwPU54+tUQx75qWWVHVV3M2C3J9 +P/15qucetVpaxK3JQ5wKlEh9arbhnqaNw/KlYoshhmp1k2nI44qkrg8HOakDjHvQrA0a8E0W1slg +4xtPb3q/DPwMnGecVhRybcdqtpOVwQxOetVHsiGjaMwIDZ6Dmj7QpIB5rMFweKXz+Bjr60J6jSRf +eZXPqKgeReoNVGn+8Ogphl3Yz36CpZSRPvUn9KcNueTx1qsrrnvUiHdwTgep7UJ3YWsi40TeWGAO +Dk59aaAuMHsKabpzGEZvlUYAphkGRt707XFdlhdufXPNSbAc+vWoEkA3A45GKlRzxk9/0oEWEiHb +0HFWI4kGcde9VkYcjPQ1PHIMnH4U7WAsxoCST+NWYo8GoFdeDVuJlbGeBmmT1LcCAZq7HEMcVTjI +DVfhk4AoFctRx8Yqwqe3FQxOD+NWlYDFQykSLHxS7OPrTlYU9StSykR+V6VBqqD+zX9RIDV3PTpi +q2rsPsDKP7+aa3E3od2ma5zxlnba/wDA/wCldIlc54xGRa84wH/pWNb+GzoofxEcWwANRkDk1JJ+ +nSoyVHFeYemLuwAB+dMYEinjGaRuOlFmAzaQPrTdpqU5AA61G2RSsAgB/GpMcVGOM4qTHBoQ2NLN +xngU0cknNOOMYpg4OKpIQ/binZ9abycY708ZA5xms3e4xjBj9KQYp56Y9qQDJHt1qeox4AI4pGOK +UDnjpQ1aMkibHNcrrrD1711EhIBrkdcOXIPrVx2HH4inZhc8djxXS6aR069q5izPNdJp/C1hJe8d +NR6D9WwYzzXG3HU89663VnAj96465cBm966bXdzGnoiWw5lXHrXcWu77MP8Adrh9NBMi59a7mE7b +cY6Faj/l8VU+AwrwjziAe9aWm8gA1kXXMx+ta2ncAe9ZVPiH9k2EHfHSphnpTI/QVIc1qn0MGCjA +OakxxkGoqfg4B60OwdCJz+NMHY09yc4NNGMYoYDxmncnj2pq5xincjp+VVIEKMZoABPFIBxz3p4P +BwKyYxrZ49qVaaxpwIwK06aEDj0AzTeASKXPPFG7t3qdLjHbsUxjR1yc0x8dhVaCIJS3akUg8UPx +g+tIMUeg0TBl+mKQ5z7UD3ozkdKhN3Gxe9OBJ6etRljmnbgMZrUkVjjrS8Dkmmkg4FIc01ohEqkd +qdkDiowwzx+NOHIPSiSAkRu1R3B+RvcU6Mc/SmXPEbfSlG9xM4bVD+/b6/nSWp5A9qj1Rj9oai1z +kdyccelKdm7nVH4TrrJgIfwrA1ogt+ddDafLAM+lc5rBBkYD1rRfwzBfxDn3yW+hq9ZFgwI7VTfb +v21fsmG4D1PFY1PhOhM6WK6PkYI7cGsa5O5iT3rUVQIfoOlY15Kqk+wqFdxSM7pNshkl8tSc4zVF +JRPPj+dMup9+Ap6U/T4cPuIwQa3jG0dTNyvI6zS44o0HA6VedwTwcYrLimRAuD25qwsqMSSccVnF +WJk9SdrhF3c4xWfcXaspB6etPlaLkd+lZNzKAWCngGtkmiNynNGjM20dTU9vE4yDxxSxsm9T2PWr +RMXDU9WS2jNu1VTz1qjgAkj2rYvEilBPf1FUVgwMnnHaqBESmReTU9s5clehqNynJzjtUaTCMnFK +1wuTTzGFDz7Vkz3DOc5qxfT7gAPX86y2JzzW9OKsYykXI7plxz0710ml6wAqqW5rjS1SRyuhyvrR +OipIIVraHpsOqg4ycitCG5jcA55rzW21SWIrnJ55rprLVbeQAbtrGuZxlHc6U1LY6x5AfumsbUfM +yPrUsN0jLw2ahuZBKVB60+bQNmX9NkPl49KuDG7OaoWuI1FXIzkZBqYuysx3u7k7yALjpVbzBkjN +LIwx61DjODjFUMmVh2p3U+tRK23ip0zjJql5kiO4UcUwEsabL70RZIzQOxJzxUTrmpWBFR5FK4WI +yAe1REZ47VZwvc4qMrj3qtRELbQKiQipnUY5qAbg3HTNNMCcIOuKzdZ+W3cHjitRMjmsvXmHkNj0 +rSGrM5Hn8uS554yeKmt0yw+tQOBuNXLRBuU+4zTk9BQWp3vh+ICJPpXV28YcD6VzWi/6pB3wK6e0 +O3rXZRXuHlYmSc3cn8huCKCpAIwasq46Uvy88VtdnLyxZSwOnSmlO4q0yLmmeWOlVzEODIQGHIpw +Yg5NKyNwfSjHqKCbNEgkYigjcDTRjHpT0BpbA9SIKR2qVGC8GnbGxUbIw5FPcavHUleQY7ZqlMAc +kU9g+elNbcaqKsTOTkRRjHJ6VYAWqxNL5mBj3ptXFGSW465VSOKy3jffn14rS3B6Tywevaqi7Ez9 +5kEaAYJ9KjupI1BNSTusYPPSsHUL8HKj6VSi2JSSKV1MjT1sWZUoDjtXKO7NNu7Z611GnEGIVVRW +RVPVuxoJn6VJhqapQfhUplUCsLs2cI9WIqE8+tDQM2eaQTHmnB2PIqtSfcGqnlsPrWjC4qictg45 +FWYHx161MthpJvQsyFiKqSA5q35ikGq00g7daUWxyhHqxoJ7UjrzkmmCTnmld92KrUzdhuSOhqRG +I57UwcnpTghpk6jmkLVGWPWpNg71IoXHApXSB3ZANxPAp4VjUgHPSnhT2pNjURqKcc1IFXqKeEOK +UJ61Ny1BicDAxQc/hUhAGBQu2lcrkGruo5NSbhSbhRcOVDVVjTtrdOlL5gxSGX8qWo7RQFCcUuDT +d5oD0aivEeEPWlCc9aaHYUjMe1FmO8SQp6UeXnqaj3N3pdzYxRZhePYeU9KQKfrRk4o3NS1C8RwQ +0eW3amhzTldqNR+6Gwj60hVqXzCTS+Zjn1o1D3RmGHalw3pTvMHpSl1696NR2XcaNwzS5NPG00fL +1HalcfKiM/Sjin4WmlaLi5RMA9uKNqc04L+tBSi4uVkZVT0NGz0NKVIoBOaYrCbCT1pCHFSDPNIc +4NAWGAnnNLuNHSnAjjIoAjLsc+1NL1K205ppWM8U1Yl3It2aAw6GjYOxppjYYqtCdR+VphdRTSHH +SmHf6U7CbJc5ppPPWm7sfhSCTmiwXFJwadu7CmFwTzSFj2piuO3MDk00u/WmGQ8Z5pdwosF2HnnJ +z3pRLyaiJUmmMVB607IOeRLJMMYHWhZMD3qEbSTmnF1osHOxwbnJp/mgYNQeYDSFl7miwc8iwZuc +9qQzDjAqtvUUvmIBT5UHPIn88ikMvqKrbwTQzg/hRyoOeRY87im+dg/jUIkFNEhyeKOUOeRbWcGm +eYarb+eKlDqRRyjU5D/N5xTGfmmB4wST1oLoetFkNTdhC+ec0gZuuKjLoDxSxuv60WE5suRseKse +YMZ9apo61IppNCU2LLtIJrE1GASI2OgzW4ylhWddR/Kw6cU46FKV9GcTIBHIcfjVuN14B55qK9gx +K3cZqOEBjtJwTweK7U00cVSDUr9zRieLK89hz61eV1AwvOf0rOht2J9Rya0LdV3Y7iobQ1BrcsRn +djj6VpWygYJWltLZWxxnpWoLZQMe1c86i2OmnTbRD5qAY6cUn2lRxTpIgOtQ7VJxUKzKacR/mg01 +nqxHbqQBVlLNcZPapckilByM9Cc9KlUcnFXGiQYwKgOBRzXBwtowUrgZFO3oO1GV6U1hmpbQ1FvY +UyxjOartNGeQahmwD1xiolQEmnoOzLBZDntUe2M9akWHdz7UNCV4ppocoNaldhGp+tNMnoae8OQT +nkVC0DdQaUkiqcnexIshIxT4wSwyc4qBfl4IqeFvmrz8ZL3bHqYRPmuacIAUVYXPWq0RJ25FWlry +Uz0GSpzTwcZpisBT+1X00IHccU7tTRk05e/FAhRmlPSk9cU7qKYhuTRSDINKeaQxrU3IzSsDikUd +RQ2MdR2xS4xTT1pXAKb05pee1MJPShjQ40hB60oJpTmnbUBpI6UvammlXFZt62GMfjpUWT0FSyGo +s8Utiugzrz0pOppcE0gBzxVRsJlqAdDWhEABVCMGr0TZFdVJ9zjq7kmOtRXPETfSpeagvG2wt9K3 +6GJ5V4rlHmycdG61xDtuc811vik7pXJ9TiuNYnJ5FbR20B76koYDPUUuemDUAOB708NgfhVEEu7G +ajZ1+uKYzZPpzUDuRyKt2S0F1HySYzhutV3kJA59qYzZPpTCam4x5bNM7ZpM0etAxc0c9exptFAD +qUMR+dMpzOzszMcsSST60CHbvel31FS807hYkLZ47UoPYVFRk0gJQTnrUikDqar5IJ9c07PTtg80 +MC6rEHOeKnEnoaz0bt2zUwkxx+dO4F/zQVI3c9qPN2kZbII61TEgIHPrSb+o6/Sl0GX2cHp+NIHI +7gk1UEh/TrR5gzmi76jLqyAD2PWnB2HA9aoiU5zwcHvUskyOS3ClmY4UYAyelO4rIsiU9DThKc/L +z35qj5xz9TzTvO+XHGOTRcTLvn9+etWUm4HPFZQkG0565GBUqTgjHTODTuJmskwB57irMU69+3es +dZs4HNTpOOm7vVJkm1FN71djnBB7elc+k5GCCMDirkVyT16cUMLnQRynir8c+AB0z1rn4Lnpzz1q +9HcZxk0utgN+KbIBq1HKDWFFcVcS5I4/EUnrsM2ElHOO1S+bkVlJcZ5qT7QPypWC5qJLVfU5f9Fc +ZqutwMcVHqcv+hE5/wCWijFGwj09a5zxh922Hs/9K6JDzXOeMT/x6gej/wBKwrfw2dND+IjipB1B +/CmYAIqVwP1qLbXm8vU9MUfKSCec0Hk+tIwA96CeR296chIRzTOTwTzT2po4+YHDA8GoGIo5wetS +ZyKjAANPOR0/GmtQY055yab0x3pTmkPXii1gJE5P+FPznr61ChHpmpBgjntU9RsR8Chcd6a570q9 +Rmh6MOhIT+VITu79KaeOaTd6VTemgrEcp4PtXH65lXbI4zXYvjac4rj9aIZyRnrVRdxx+IpWXUcY +rptO6DPpXM2YAIPOOtdPYZwM1k/jOipsQayflIHpXITRlmOexrrtYI2nA5rlZu+2ulv3jGHwk+mo +Q4H0rtUyLYH/AGa47S1LMuM5yK7Eg/ZwPaudv96XU+FHOT4aX8elbOnrwD1zWPLt84jvngmtrT+F +XPpUTvcf2TVjB4OamxTIj+lSDHStLK5gxCBS9hzShec0jDAxRZ3AgYnP9aVAaGwMU5D3p6gKFwc0 +4c/WjnNLkCr9BAMcCg9MUDnFIe/rWfUYzJP504Dj61GM55qVfSqeiAXB4oYZoznjvT/bAHvSuIYO +AaQkU480xhwKEtAIJKAPxpTxk+tIPUfhTeiAUY/Ol4xxSDJH8qTPOKUdxsRjQBuHJpdtOUflWtlY +i4oGKdjtQOad3zStZAN24yKTJB/Wn5GCaZxT3Aljb1qK6IZGOe3FOXioLx9sbY9KEtRM4jURm4OP +WpbSMgqW4pLt085ieuetOhmDMB2B61ErtnQnaKOlhcCHnjiuc1NizHHvW2JoxBz2WuZvZtzmtVb2 +Zin7zM53G7gZq/aMFIJ4rMdgpBqeCUZHvUyjdGikdLNqEMcGM4OK5S8vA7nB6mkvbp+V7dazC5Y5 +962pUtLs5qlSzsi0sikghj3Jq9bT4IO4VklscDipI5cEVcoXRnGZ0S3LqAetSpey5zzWVDJlRmtK +NSVyvpWVjTmHT3jYB+uazbi5L8jirMhByrDFZ8qx8jrmqS6kOegqXRAznoeKtpdb1AzzisSR9uQP +XmmrdMKv2b3RHOuptG7Ktg1FLeY7Vl+czZJ601pWPWn7MftNCeW6YjFNSRic4zVYnJBqeJ9vUZq3 +FJaEqVxksjHrUBJNWJWDdqgxVR2M5bjMGnpwRTgAeMUoU4HFU2JRsyynkEc9aXeYiGRuKr7SBS9q +y5TVSNa11eRCAScVpxagzbXP1rkd205q9DfbVAbsMVMqS3Rca19GdxaalHIME84rSiuNo9RXB213 +8ww2Oa6G2uWZRzn3rBqzNY2tc2XugCfepkkUr1rNiUSHk1Pt2YJqb66F6WLQOTj3q2uVGPas5G4y +DzUwucABquyJ1HTsCeuKfEx2iqjPvb2q0hUKAeSKHqxrYlY56moeS2OwpruAfeljG40ugIm4wM0h +HPtTscUhzVXFYidD2qALzzxU7tiohlj7U+ox5+7kVia4xWAg/hW32rC1sZjJ7VSdiGrnEMoLE9Ku +2f3l+tVXwGP41csvmkVQOtVLYaVjvNHVhGp9q37eZxWRpqiOFfYCtSBwSK9CirQVzw8RrN2NOOUk +VYVh3qmmABzUwbtWhzO6ZOR3pCpHSmKWPSn7mHWgLiDpQQmPelyKTigdxuwdqciGm4YdDSh2o1Fp +1JOelNfdinBx3px8silew7X6kBPrURwCas7Y+c1GyIwq0yXBlRwvpTNi5zVlogeM00Q1V0Z8jGJE +vWlm2qpOamKbVqjcltpFC1YOLSMq+kGCQ1c/MN8hLdzxWtdxuSeetURASSTXVFpIwlCTM0om7nvz +XQ6fwgUc4rFFtmQEeta1uTCoxzSqWa0LoxktWaYyevWl3Lj73SqpkkbFCROTyaysaPexaEi9qkSZ +eneoo4ByRT0j25NJ2BJ9SznIyOtJufNNU/nUixtgH1pDfkO8w9KacselS+WoAoOOoFITuNWM0/Yq +0qhiM0vlk80rjUW9hAFzTtp7VIFQUoZRSuXyLqRhCSKlCAU0yZ6UhZhRqwvFEqqnOTS+Yqmq+5s8 +0oZe9LlF7TsT+aBxSGRqhLrzimh27U1FCc5Exck04HrVYs56U4BzTsJO5YLgUnnLUZibHJqLbtOD +SSQNtFkSrTTKKiXaTU6xBvwo2BXew0ynApPNP41OYh6VBINpGKFZjlFoUSNxSmRuKapycYqxHEpx +mh2QJNvQhEkmOlOEjc8Vb8gVC6BTxUcyZbg0MEjkcik8xhSbx070oAOM1RA4O2aeHxjipI4gaJIs +dqi6ua8jSuQ+YOe1IH5pG25xR8p6dqozY7eppxYZFNEYNOMJPtSdhpMfkYpozk0z5hxmm5bvRYGy +bcc4pWOag+fNG6T0osHMWAzYo8w5qHzGpd/NFiuZku7NKGqASAUodaVg52T7lFLhWqDcDTgSO9HK +NTJCq0mzPI7U3JPNIWYUWYXQFTmmlHznNKW6UB26Uai91jMHHSkwfxqXctJkGncOVdyLHNJmpgFp +jRjk07i5GRnb6VGUXNTFe4phQ00yHFkLR45BphDL0qVgwNMYMKpMlohYsMDFAY8g1I2KMB8ZFURq +RHb1NJhTzUhVD2phRaBiECm4GetOKHtTGRgaYhxQc4pPLUjnmo23g+tAducijUd1ceYlAyKiCgki +nFyBTlZcZxRqDtcdHEG4p7QIopqy7eBStLnqelJ3uWnGxCwjBxTlCjpzmoSGZie9PQkHmm9iVa5O +Ilxmq7so46VZaUYqnIjMT9aUfMqdughUMQRTmhbGacgVQOKnaRdtNthBJ7mc0JzgmrEFtx+NMJyx +Aq3BwOe9DbsCSvqAi5zVlIkxRtyp7etKjbeB2qW2LS4SLtUgVjXJlJIxWxKcjms6fBNCZrCF9TmN +ShdFLDuao2cb7gTzXR30aeWd1Y8KyBsAd+DT+sRiveNPqs5/CX40LjA4qe3tZNwao4Ipjg4rTg8w +YytT9ahsgeAqPVmnZoQFzV8lRWfFIQB8tWA7EcCueVaDd7m0MNUitiQpvqIW7BsipFeTsKk/edhS ++sRQ/qk29REV1PWrCyYGDVbZPzUZimJ+8ayeIizWGEkupadl9aoyBs596cYLjPWnC2mOM0lioocs +G31I1Mgpx3461Oto3FSrbc81MsUmVDCqJlyQs/5806OMJnIrVFuvpTvs6YPFQ8TI1+rwKCPFjA/K +mygYq49omOlV5LZgOCaqGJtuRPDKWxTCMetO8sYz2pJPOizxnvVOW+lTgpkVt9Zg0Yxwkou45wN1 +OiwGBH41BHcxTHOOaniGXwK4sXLmSsd2Fi4t3NOM9MVZSqsaEAVZGa4EdTJlWpMdKj7cdaf2wad0 +SxwyDTxmmrmn4NUyRRmlbFC01utFxAMZpDkmgD0pR1osMaQaSnHNM5zUlDyTTSKXNIc9qE+4Bikb +gZpB3oPvRuAgNPH6UwFfxp59qa0BoQr603pSsaTrUyGiOQE9OlQkVNNuHApg6Y9azb1K6DO3NIoO +6n/ypqjJqo6sT2LcfQCrcQwKpJ2q9H90V2UziqDxnFV74fuW+lWQKq6idsDfSuhrQyW55D4qYea+ +PeuLc4bHrXV+JWX7Q4z3Ncm+c59+a1je1hyAMeg460gfr1p4yBtIIViOaY6ujYxg4BqutiBrSdBU +DseeafIrKeeOe9QHvTYrASKOuB60lFAwooooAKKBzxRQAUUUUAFFABJAAOT0FFABQCQc0UUAFKPe +k560UAPDEU7dUVOBOaQiXeTShyKbug8kjY3nb8hs8bcdMev40zNFhk+/Hf8AGm7jyfeos/Wjdx1o +GWN4PGaXev8AiKrZxxijcelAifzMYpfMGeuKrbqUNQ0BaWXJwPrUiuxbPPpxVIMRnHejzD6mntsK +xoLOBjP0qQTqP6GssSMOKk3vs3HoWwPwp30JaNaO5xxntVqO5Cgc1gpN+HHWpROFAOevam2hWZ0s +V2R361chvMDr1rlEvCD1yPWrMd/jrSuFjsYbw4GT7Z9atpdfNy3FcYuoKMHP/wBari6mvXPQ01YV +zr47wcjOKmW84J9TXJJqiYLZzUq6sW6HijQLnWLeUt9dhrGNc8tOK5Qap0GasNfeZFA2c5nRcfWl +oCfQ+hVAzXNeMTg2uB/C1dMlcx4xzutvTY1YVf4bOqh/ERx0nP0qHvUkmcnHrUXPb15rzb6Hp2Hd +Dil29yKQU/J60roBj42jHXnNRH7vPFTMOOaZj1qWNDVODgVKcHP0qMAc1J3p3fQGiNvypuMVI46Z +pjd6V2Fh6Dn0p9MQE4xUuBj/ABolqIhf6UnJwKeQabz071OtyhW6DmoyMHinMfbNJkg1TkKxHKcI +fpXHaww80jORXYTN8pPtXGawSZiQOK0hsEfjGWeB1FdJp/IGB75rm7Lcfrmuo05fk/Cs18Vjeo9C +lq+COa5aYckV0ussAfoK5iZsnPT3ra3vGcPhL+lYEg9c1175Fv74rktIKtKvbFdbNn7OPpWP/Lxs +qpsjm5Avnc8810FioCLz2rnn/wBYeP4q6GxxsX6VLu5Dl8JqRrgVMBxUUfAFS8VbOcUcn6UyQ4A9 +akHQepqKQnNO+oEJGSaeMhcehpoI707kc5ptdRignFO7HvTOacpOD60WbAVe9KT6U0cYowOcVL3A +bzkU9WpmCM5pwHFVa4hQCSTRk0gIoJx0pWGOyQM0xmPJ9qeoB59qY+7t3pkkLNgUAg4wKVhTRjAx +3NErbsok/DOabjJNLik7Uoq4mIeRinoGOKjBqeL+laPsSBAHWkyaV803NMQpzUZb16015Bio2fmj +qBYDYqpfMfLcn04pRLxxVLUJiI39MGmmugM5O8b96x/Ci2mCnHJqrdvmXPrn8KktAGxnihrS5qma +kl7+7x61kXExY4APPNak0cQQHHXvWO8iFm9B0FNLQhtEJBIP501SVPBzg0ksvHHQcVUaRux49K2j +FtGE52LM4eXkVW8tweRTRNIvQ1YiugQA4BFaJOKMm0yIAHg9aliRMjd0FSmGKTlD+FNeCRPpile4 +F2Hb6cdsVpRyKq8/jWDFM0ZHPfmrBvAV5PNZ8ruNvQsXEoGcZ5rKllpZ7s/0qoZywIP4VrGDM3MR +3LEmmjGTmgcg/wAqsW9u0rAY4xmtXZIhK4sYUgj24prIOmK03jihT5etZsrEkms4u5ZFg5qWNCSB +g1JbRGQjitWCzCjn0pSn0KSMwwP/AHetL9l3dq1zEmOmMVC0Uh+6CaV2Pcz1twKeLc4A61O0Tc4z +7moWZkOScUrthoNljRM+4qmxC8A5qy85fO4DpVWRd2SKuO2pEtNiJjmmgkGgg+lN5raxk27lhJ2U +jBrTtdVkiwKxKcHIqJU1IuNVo6+31nkEnGBV5NbhfAJ7Vwoncd6eLhxzurL2Jsqy6nex6lExBDcV +Z+2xyccZFeereTL/ABGrMWrTL/EazdGSdzVVYM7pJHOce1TiV0XOenauNg12VTyauNrquOtRyO+p +akuh0fnuxzmrMNwmevNccmrM7fKetWY759y5JwTmk42KTOxSUMevFOJP0rOtZNyBgck44q2Hzg9q +ExBIAePxpqd8CklbHTmkR9uO9UBKeBisPWTuhfnjFa0jN9RWLrjhYjTv0BI4+TOTx1q1ZNskQnti +qrsc4HrUkBJOKpr3QurneWmq2yxLuYDirsWr2W7iQZPvXAXEjrGOSOMVlm5mVgVYjBrspVmo2Z5t +bDx5ro9pgvopAMMM9KtwyHua8h0vWL+NlAcnpXdabq8zKu/npk1SxEU7Mxng5yXMjs4sECrKxgis +a21FGA7Vpx3cbDhqv2ieqMvYuOjQ5owOBUbD0NSPIrdKgBfJ9K0iznmtbC803cR2qdUzipDCMU+Z +CUGyoXGfapFIprxqDUfIprUh6PUlOD3qMjB+lIAfWmtvpiAhqYWYEdaa0jqTTHl9KqxNxZJnAxmq +E0rknFTyseTiqhZuSatJE8zuZ9x5gz684qsN+D144q1dSOMkCqSyv3HBrZbGbk77jArhyfyq5CDt +yxqszsOo69qkikDgk9aJ7F0m27GgCCM9TT429R3qpBJ82M5xWimCMisb9DdpbkinC8U4Ak8UIp6m +pVUdR+VJsl6iKu080/LGgDnJqQbRUtjUO4AE4zUmxRyaYWJB20gJPU0tSrxRKWVcY9KaZD1FRSOo +6GozL6U1Ezc2WAc5yaTzEHWq+ZGzQIznJNVYm7JjKOq0nmv6UJGmeKsrCNtJtIpRcitucn60BGPe +ldNp4p8XJ5p3JsSxxZFLIuznH4VNGyetMlYN3rO7ubOKUSqWOeaswjODULISTUi5Qd6p7GUdGWzt +xVKdQ3IqXzODmoySetTFWLnJMhjBzVtHKio8DtRtY1TsyY3WpZ82oXIOaaA+KMPUpWKlJsRetTrK +BxUWGWlVV6mmyU7Fv7QMVG0gJqLC0hHTFTypGjm2NfrkU9KRkzSKjDFMjW5bSTaKWSUMMVWAY0pV +qnlVzXndrEUnHSkjPepPLal8phzVXRnZk0TrjmpiVxVMLIB0pQZDxUNGqlpYWQnqKi3etSbJM1GY +ZM1SaM3FslTtirAjGOarojqM1OGIxUyZrCPcY6YqAtzVh3J5qswJ5FOJnUVnoOwpGacsY61GgNWE +IFNiirsYY29aZh+cVbLDFV3J7UkypRtsMLutJ5jEUYOOacAuKZnqxoc5pxYUhwBzTcDNMNh4KGly +oGKjwB7UnBHWlYB5JHQ0ws2cCnEDHWm7W6imgdxvmMKcJfWmurZzUbblHPGadkw5miRnXPNNypqA ++9Jk+tNRF7R9SzsUik2A5qEMcZzS7yD1pWZXNHsSGI44qNoyB0pfNZaQz4HNPUTcBgDZxTeckVKs +ymm5Q807i5F3Ij14FKeOMVKFjzkUjBcmi4ezZHhGHIxSMkZyOlS7OOO1NeMnBouJwaIfKX1pPLbs +c08qw5pjb+1UTaxCwcbuKRJDkZqQsw60wsDxiqEh5fFIWyaZgHOODTG8wHPakUSln6AU3J5zTVkp ++QaAGIpLcdTWjFGVX1qtAOeat/dHXg0mCTHF+goLKq4NM8xV6nPFV5ZElzg4qRpCSTHPXpxVeSQf +e96rXMwhBy3ArBuNYJfYjZFZVJqKudlGm5aGpczeY20dKmtLdCRkVm2ZL4Y1vWqjC15tWd3c9anD +lVi5FbxjAxVtLeP0psIH61cVKyu7FCJAh7VaWBOmKRB0qYcdKTfcBghTNO8sCnjHWlovoKxHsGel +IUXnipTmm4brU3KsR7KeEWlxilApiYBR6U7FKAaDml0BDduaTb606kJoHYafSoXWpqY/NF7oEihM +q81m3MSN24rWlHX1qnKoFQ3qWjEEOyTI461fthyDUUoCnOKkt29Kwm2bpdTWi+YA1MoJNQRNwMVa +TGalK5DHhelOPTFHBPFP2giq1ZILTwaaFxTsHFVr1JBWDEgdRSsDSADOe9OPtQA0HHFLxTe9O4ov +qA08dKaKVjSAnHvUMpBjGDQCD1oyelIRjml10AOKZkHrT+1N4NNjEI9KcucetNPSlTimmAHrQAKG +60hwDSYDZOeM1FkYxSyZzTc57VHUroHNEf3qRiegp0Qyc96umtSZ7FtRnGKsRk4xUEK5Iq4FxXbT +V9TimxRVPVMCB8+hq5iqGsEi3k/3TW72sZrc8X8SMPtD465Nc0xOQPrXSa9zcMRzzXPSKQxHQitU +tAe5EDgjNNd8k8dT1qXyyeccZ6VC4x64NV0JuRO56ioyc1IeOeOMHHrUXPekAhx2o9OaKKYBRRRQ +AoDMQqgkk4AHekIwSD2qSD756ZCORn6H9ajoF1CgEjOPQijt0/GigYUq7MndnGDjHr2pMtjGeBzi +jBoAKKCCOD6A0dv60AHPTPFFL1py8kLwM0ANwTn2p2McZH4U7y8ruJAAZVJPvRhhx3BIp27iAIeS +OQOuKR1I4HIyeRU8ce5c+5BqQRjOWz0/pxVcqZPMUgeeg4PSk6Hn0qZ0IOffmo2XBwc9jUNWL3G4 +pKU8cd880cUAJRRR3zQAUZOMUY/lS4bsDxzQAlFAx06c9aKAAkdulGTRRQA4MRTvNf3qOlBI6HFI +CQTOO9PadlYhGJAJ5I61Bxj3zR0IyM47UWFYsi8kAxThfzjvxiqjMWJY8knJpMmiwWReXUZs9cDm +tKwv3lMEZ/5/ID+HNYGOla2mxqn2SfPLX0cePTGDSaBJXPrhK5jxj9+2/wBxq6he1cv4xJ8y3/3D +/Os638OX9dTeh/ERxsmMntio+T9KlkX8c0xQSOfSvN1ejPS2GjPapB703r14p/BH0p20EIcc0w4x +kCnkBsnvSAAL+NRYaY0D5s+1PBHp/Caao60pOKcUA09OtRgZ4/Wn5BPpmk57fpRuMcnA4qQYxzUQ +LA0pYUtBMa9IoOaSSlT9amzTK6AwJNA29+1K2cD1o6kVViUyGc/K3sK4vVSWkY49a7acZVq4rVzi +XjpWkPhHD4yOzbBXtnFdZYAGPn0rk7GuosCPLPvWUWlM2q7GPrrZYgVzchPriug1khnz9a5ubcM5 +7106ORktImxpALMB9K66X/j2/CuT0YAMvIPTOPeusuCPs3vtrnS99lzeiObb/W8euK6GyGFXjtWB +Ef3xPB54FdLar8in1xWb+IqXwl+PGBxUikZqMHjFSKP8K1TMLDvfNQOcnGKmfjvVd/b6U0IYBnip +QBtx70xRzTlwM03uMcvqOKUYxSZHanZGOetGohMbeaBg0AEj1oOAKnS+oxrEZpQvXJ4pCoOPal3j +nA61TEGB2pecetJyBmnDOBUjEBzjtSMO9OAycCh+mPWmSQNxyMUwfNj60O3zYFKvGMUlqUPzx+lM +bPpUnOPemOcjFVETI8frVhMgDHaq68808HPANNvUQ9mGaiL+hpHJJ+lR4HrTZKB2yKz5rlwSPerV +y4UDmsuRxzzRewJFmK4LA1S1G4+Uj2qPztvfmsy8vGIbjtTirja6mezKznPerKbEC84yAaoFwDkc +Zpwm9fSrcbi5i/cSuVKqw6VjyBic+9TSSjkrxVJ5n5+tawizKcrA2TxnpUOSDSscnJ9aZg1ukc8p +MAeRnp3pw68HrimZBHejNVYi5ajkIHB5qb7ZwQeazsmnA596lwRSmTyOGORUJY+tH0qMk1SRLYp5 +NAFIOtSJt4BHem9BLUngVSfm5zxWpG8EajgAis1NqgECkaUVi027mt0lYnupdx46VAvPBwaaAWPr +UwRhwBRsrDLEJ28gVfhvEPyvjpWYDtBDcVE0g/h7VHLcbZ0UYiJycVf8u32DpnFcgL6RFwD0NPXV +JsYJqlB3uyG77G5MIRu6YrMuIwSSp9agF4z85pfN4PPJql5i1Kzwvyaiww4qYzkH8aUMkhOBg9KL +tDKzIxGetQFSOorXijCkBuQaku7CNk3JTVTWxMo9TCoqSRChxUdbGQUUUUAFAoooAkRvWrSLnvVI +VLGxBrOSNYTNSC1ZyMetbNtZOeW7d6ytPlIPauit5xgCuSbd7HbHYvW+UjwfSrSuSOfyqGIo6g04 +suetQVuPMgJx3pctjk854qIYPX61JjGP50PUoUHn1rG13mM+9bAwp65z1rI1plKemKfUEcewOTU9 +uCGGajcZbFWbZcn2rWT0Eo6i3TEoeOKyX61r3wATFZO3mtYaI56mpo6RCZJV47ivRLG1UInHUVyX +hy25Dlc4Nd/ZoNoOK4qk71DeKtCxMlsu0cVMsbg/LU8SnirCqvar52jGSTK6+dwc1OJSPvCpwgHa +neWD2rWNeSMZUYPoRx3C59OatC4jPeq5t1I6UxrY544rZYhtamP1aK2JJTnJFVQG3YNSeVL2PFIU +kHQVvHFR2OeeDk3oPVc4IqXAxiq480DGKdmbGMVTrxCOFkiCbHNVtwBq20Upydpqu1rKegrSOIhY +xlhJtkWCx6Uslv8ALkelWVglA6U2RJ8YwaPrMW9Clg2lqc/dRkdKhijUjkVrz2UjnOKqNZSgY5FU +8ZFIUcA29SjdiEAdOKpxzoXPTp2q5PYyNwx7GqRszG2an62mrG31FXuaFuFJrTjHfvWVZkhwp7Vs +x7eprZSvqctSDTsSqhIGfWpPlXgGow9AZc809WZtqOw/k/jS/KMZNRlzn5aTa5ppEN3JvMGaZuZu +gpB1q1Ci7eaHoCXM7FMqT971qRFANOnVRmmxnFO90TazLaRDZnA5qpKjjPNWPNwAKhdweamKdypu +NtBsJI61c3jbxVPcOPeneY1Nq4oT5SU5JpBtApmWbk0qgAnNFibj9/HFKGZsYzSfLjgU5SRSBMdh +jSEMKNxz3FLhjQUIFznmnjHpSqrY5FPCCk2NRYzgdBUiuMUeWtLhAMUrlqDGMxPQUnzdKk+SlBSl +cOVdWRYbrShGOMVNuVabu7ii7C0UIsZ6mn+XTd5IoDN+FGoXih+FpQEyRTOtGe9KxXMuxJ8opcr7 +VEGXqTSGROmaLBzkpYdKQyLUIkUmmtJzRykubJvMXNHmDPFQZBpynqcU7ApsnDZpQ3NQGV+wpnnP +g8UuUftC5uHegOnSqnms1LubmjlGqjLDOv5VCWHamEsKhaRx0FNRIk2Whxml5NVY5WJ5qdZKGhpX +0JMMaaVPrTJJioyKqPflM5BoSbKdluXyueKTZVFdQU85qRboNjmnyyRHNEsbM9aaUODikExpS4I6 +9+lLUd4ke1u5ppytSHNRMT3HWqVyHyi7uKXecVCc54px4p2FoL5knWneZkcimMx7c1E27gdqdgui +RjE3XiomjJ5Vs00hqjIk6jNUkQ2hxEgxmlDHBpAZMHPNKpyORQFxBKTx1oIDZph2ZPam7sdKZJLs +IHFMbcO9IJmPFHmA9aFcA3uvrQHfPWn5jI6U3aueDQNNjhK/NOMrflUa807dgE+9Jo0jMPNI69KP +OXuKCVYdKMRnOaRd0+o3zoz1oDRNSGNDxTPJP5UaFW0HYi3HFKoQDHBqu8cnWmbZMU7XJ5kuhJKk +Z5BxUeWUZqIiTNKGbGDVWM5TT6FlJyvJqQTu/wAoNU96/d96cJ1i5xSaCLJp5HXrWbc3vkoWz61o +yS+bDnHWuR8QztbxMVOM1Gi3N0nLYytZ16SQmNG4qtpjGVsscjOawHdmcluua3NGG4j3NefXm3qe +ph4KOh21gg+XPORmt62XgVi2CEKoPoK6C2XGPpXE9Ts0L0QA61ZXNQIAatIoo0sSSpxUopqinj3p +CHLS8UZ4pwxihAIORQelLSGjoBGRmlUUuBTh60lpoNhzSmkzikLU7iDPGaZkGigAZqShM0xj607j +JprH8qV2NFeUZ6VTlXnFXZCfyqpIc5zWcmaRMy4zyPSooGweeRVi4UZNVIiN/wCNZT2NYm1AeBV1 +CpFUYgmOTzU6ZBGDULREvUuoOakqujHp1qYHnmrTM2PBp/amA08nirJAAUdaWkzTYBtFHSjJoJqd +EA1jkVGM0403kdqllIXNFID3p2QelMBvfig0HGKTqaWtxhmgYApSOeabxj3p+oAfak4ooJ5qZDRE +x5x2o29aa+Nwx61IOnNSiiIjd1pIlcPweKecVJEMkVdNakz2LUI6VcHSqsSncD6Va7Cu+nscE9wy +Ky9bYC3fP901qdTWZrmPsz/Q1ctiVueM6vkzv/vHFZJWMS5ZAynnA7Z9PpW/q8ZMjke5rFdOT+Vd +C1FIplCajZFweO449avNEQeOuKgkjJ69zVNWRBmuDzURB/nV2RZNpQZwxHFVih9PrUjItppMGpdp +FNwT70wGYNLjj37UoFBx2z0HWgAQujK68MpBB96aAc++aeBzz6UY7mgBmKMGn4BpNuaAExx07nmk +56dqeB17UoTJ6UWAZt4zxySMfSjacZA4qbySCR+RHenJGT1osxERhkVUcqdrfdPrjr+VGGBDAD1x +9KtBGyc8juTTvLHTHeqUWJsqlW7mlwcY9KtrHzx6YpywHn6dadmK5XjR+cd6mRT39BU6RHrjNSeU +cAD8qryRJUZQQQB0qpIrLkj3H51rLCCPT1pktqMDAqZpspMxeaTBFXJbchulQmFyelZ3KuQ8c05j +nH05qYWzEng04WzqKLhoVfp2qxbO9vNFKcBedwPdT1B9iOKT7PIT0P0o+zS5wBzSumMiUR5O45GG +x9ccfrTamFtJzxz296cbWUDp6VTabuIr0VMbab+6aPs8vICn8aV0MhwcZo5qc20oPP8AdB+tN8l/ +Q0XQEWDSgE/hT2RsnAOM0gDjjkUXAZTsADnO7jH0pzxlSBg9Oc0FcFscjPH0p3AaSzbQf4RgVt2L +RfZdOQ/f/tJSMfhWIFPNa1ky7NNXaS324HPp04pP+vuA+uF7Vy/jHh4Dxjyz/OuoXqK5bxl/rIP+ +uZ/nWVb+G/66m1D40cfI3WmbsdutK+OtMPTmvOvZ3PSHKeT34p4PX61EuTT9xGaF5CAnHPT2pM5G +RTGY8ZpAx7VLSBD9zZGO9Bfmk68HFNyOlNDA+vrQG5545pQvFJnjB9SaSBjkxnnoaaCeT2J4FPXJ +3HHAxTWyRkdKT2ARvmx7UqnGCeOaQKaeByPQVKQxWIPJ9eKbjHFKe9IMd60JIZz8hwa4nVyBKc+t +dxNja2cDiuD1Q/v275JqlFl0/iJbPB246109lgxfSuWsyAVzxXTWjfJ+FZxXvGtXYxda5Y4+tc3c +D5h1966PWGy5A5rnJ/vD+dbxVpGb1gbGiKdy445rq7kD7Pj2rl9FB3D866W6b9x+FY/abHPoYMXE +/wCOK6az+4M+1cxC2J+TiuotSNgx261i17xcvhLy4x65qdVOMnFQoeB1qUsT0rVGDGSfWq7ZNWDg +DpUZzV2ERjJ6U9ugpuMU8HtUrcbEGe+aXGTQCOf0pQeKoQ7jHHcUh44pR60EDqaVtQuMJGeKUUw8 +HNKpzxTvfUB9OB4pMU0sAakCQEcVHKemKUEkZpj/ADcij1BbkbL370e1KT69qiJIPtikn2GPLYGa +YSCMmnLhgBUbEjgVS2ELnPfmk3AHnrTC20e1RSSbTnPWna4rlkYOeeKRgOtUxPg9ak8/Ix29aq/c +krXTqQfaseVucnPrV95AxbnvVSZocYJoe407FWaXJGMA4xxWTcudxXrnmrsr4JI+mKy7gk7iATzV +xWpLZXds/nzURlKkc4pkjH6c1AWya64wOeU7Ery5zg9eai3fWkpQgq7JGLbYCQDGaUSLnJFNKdut +NxTsmK7RMzRn7oxUR7kUg4pw64otYV7jfSnAmnBVNO2kZ4ouNIYaQqO3NPADcd6k8vv0/rSvYdrk +AXH41IuOn0oKEc0gHUelF7hsyYs2MgdMVH16g9qDkYFSJuYjcegA5pbFLVj4VyRitiGDevI5xWYN +keOR16Vej1BI1+Y9qxeupXQrX6bCQKzGbBx3q9d3iS5xWc5yc1tFGcmITzSqeMGkxSjNWSiaJWyC +KvR4cYI5qirMACKspKQo471ky0h8lm2SQKjEZjIOQati53cHtxS4R+R1qeYqzQ6IswwRTjLgbCe1 +RbZIx9agaU1NiiK8jB+YVQ79KvuxIOeneqjdT9a3i9LGMkkyM4pOKeVyTtFM2kVZDQoHFG3mkpyk +UmNWEx/OpAhyKTr0q3DEWAqZSsaRjcmtNyc+9dDZMCoOKxrVMMAwrftQijiuaSuzdOyLYLAHacU3 +zip+Y/WpCoA3E4GKpTsjH5TScTSM0y8syMeozUhlGM5+lY/mMOB2pVuXyAfzrKxqbEb5GPSsnXDt +TjpWhA429eKydbfcMU47j6nPOWznOat2jYwRVJjzVqz+8Ca2ktCb6kl/u2jJrOiXc4A9avXzKcAG +o9PhMky8d6fNaN2Ry3kdj4etvkU4rroVwAB6VjaTD5ca/St2McVwx11NJsnIZo2VW2kqQG9DVi1R +o40RiWYDknvUCHt+tW4yeK2MGT9aeMUwHiniqtYkUYBpevakPtSqRQnqKwbaTaDTzSDGc0DAIvcU +7YppRilAqk9SbCeWvSk8pM9Kk+lLiquSReWo4pjRrzVgjio2FUgKcsK84qnLGOa0ZKpy4wc0PQaM +i4jBFZ0ydc1r3GOR0rNmxg+tK+pdinAcSVqqxwPpWZDjzPxrQGSBXo4dtnm4tJPQkDU8IT1pIo+e +tWmAC8V1XPP5bkce2pyq7c1VG4N7ZqUy8YpNME1YYOvSpxKAKg3ZyBSYZh6VTVyOaxI7g803dmkV +QOpp4x2FGhOrEIY4oKDvTyWxSBSaLj5WwAUCl5pwQY608bB1pXK9m3uMUNjninovPNOLL0FIrelL +Uq0USiNB1NOwgqBmYnilBPc0rMfNFbIm3J1pDIKjHvSFlFHKL2jJPMyKUsSOKgLrTllAFFhczZJ8 +3rS/WmeYzDim5lz0osFmTZHSkyvY0wxSH8aVbeQ0aD5WO81R1NIZ0py2bHrT/seO1F4hyyIfOOQQ +OtPDO1Srbe1SLH7Um0CiyDbKaDDIehqzsIpwTvS5h8pTEDY5Jpwt/wA6tYx0pRk0uZgolUQFRSmL +86sUgBouHKVwhz0pQpHarVNxRcOUr7T6UhQ+lWfwpKLhylXaR2p2DVnC5ppIBwBRcOWxVYNTSvFX +doPakYD0p8wuUobacMjmrQjXrQUTNHMCViqzCoZIUY5q6Yk4NN8kd6adhNN7md9mVTTxEKu+UtJ5 +a81XMLlKfIGeajMsgOKutEuDUTQimmJkP2ph1FJ9qHQ1IYhUbRgdqasKwvmr1pGulHFNK8dKY6LT +SQnsP+0A8jrSeczDPpUAQA1OoFPRE7gZTio2kfHFT4j6VXlQjkGhDkrITzHPUUm6TtUe5ieeKlXc +1PYlXehGBK2e3NCxyZwTmplIxjvSMJP4aLlcowKwwKGwOtNeZ14K9KhlllbGBihIbSWxOu096TJX +ODmooNw6053CjpR1Dldh4lZRTxcLj5qpG4IJBBx705ZUbqOabRJeDoaQ7OucZ4qupUjrijH+1+NK +wyfBH4UBzyahLtSecFxkGiwJtErSGjKY5qLzUJ44qT922MHFKxaqMcQjVE0Y7ClKt0WkORjOaWqK +Uoy3RC8ePrQAMYYVKGByKikI5NDZagug6Ahg0faud8TWwNtIT1Arcik2OD71i+L2YQHHQ1nJ6GkI +2kebHgmtvRs5XnuKyoY4ZHJlmEagjJIJPPoB/wDWrX0ryBLsjcuv94jGfw5rzqmx6lLSR3un9F5r +oLTjg1zemN0FdHbHoe1c62OlmpGFxVlBxzVZMEVZU8VNiCVak4qMY61ItNqwDqUUlFTYBTTcjNKR +SYpMYcdaM0hpD0GKdkMCe9AYU3mkxxzSCw7OaMcUg6cUbql6DGtxTDTyaY1T5FELniqsmR2q2wHf +1qvIMZzUFooTqSM1nt8jZrTuMms2UevFZS0Nol23kyBzWjGelYVvJ0UGtaBj0znmob1BovxtUqnJ +FV1B6e1TKRnHerWxmywuPWn5ANMTin+1WZsXjFJmnCmtgc1XQQmc0HNL2zQelQ0O4w+9BwSKG5oG +MD6UhjR3FGOfSn4BHvSDNFhhgGkIAIo5zTc/NRd3AXj60Y4pOc0/PFF1cBnGDTMcU85pCcA1MtRo +rsMPntT+1DdqRiQKlaFMaakiIyKgepbcEnJrSFroma0NGEg1YNVoeCKs13w2PPluIOtZ2t/8e7/7 +prTHWsrXP+Pd/pWjFHc8q1OIvKx6c4wayXjwMfyrc1AEyEe5rPZGbHAreKJkUWTgVXZWQdSMnnFa +LAYOPTFVJBweelU0SjNeJu+DVd4zjOfSr8q5AGB359qrsPXpUtW2HcqeWnBwT6+9MZcMeOOwq30D +jAIZcZ9Kj2HORTC9ysEz7Um05zVraOQKTy+/OKAIPLIbacgjOaTafT0qwyZyaaAdxI9Ofxpu4hir +jt3wKcI25z3HHvzUoQEg81L5WQMdqaixXKyQnjPc1IkbKwxkEYq0VdtoY5A6ZqZIOM9+aaWoPbUq +pC3pn3qUW5bnoavJbE/N7VYEIGfcZq+Ui+pmLCR2wehp/wBnHG3v1NaPkjBzSCEjkjiiQkymsGee +4p3lttCj1Parqwjb05PSniE565NDC1yksBzjORjtQY1BI6kd6vNEV/HrURj5yBn1oux2RXESenI6 +e9O8v5T79qsxxEgZHGae0XAwvGKHK4amS8IbIxmkW0GCSOtav2ZientUy2uAAV46ZqLIepkfZMnm +nLZEgErzittLbBB28VKltznGRTsnoLYwl08Aghc4qUaeXYnbknmt5LX29qspajGCOcUnFBdnODTB +z8ucj8qlGlAgZFdGtn7VOtoDxiiyJRzA0lepFKNIQj7tdUtmPTtUn2Q8DHFTZMo5A6MGyQo60DQ1 +5yvFdn9hGBgUfYeOlTyoNTijoCE/doPh9WY8cE5rtxZKRnFIbIE9KORA11OIOgLjGAM80yTw8m3h +R2rujZAc4HFJ9jHYZ4p8iQHAf8I8vUZ5HNPOivALJwflW5BA9+K7g2I/u1Ff2SraQv02zYIoVMLs +9pSuW8YkCWDJ/wCWZ/nXUpXK+McedAP+mZ/nWVT4H/XU66Hxo459u7rTSeQKHPJPcUxMnH1Nedc9 +Ecuc0pBYenNKFI607HWhLoDZFjJxSkKx9MUvyrk9aX9aS21AbwOfakADGntznHpTSODgUW0C4Fjy +Aaj5px45700fe3H16UAPHT607BBwehFIuTzTl3mlIA6jrSLx1o6GghwM44PT3qeVjEJ4pOhGKcP1 +xTOOc1oIiuMCNq4TUxumPTgmu4u8mJsdMVwt+QJyD3NUXT+ImtAMCuhtXAj+vauetcZGOOldBb/6 +vPTFYK/MjWpsYurkljWHIACD71tamSzNx0NYrnLgV0q9ybe6b+jYDL71u6g2Ise1YejYypHNbWoE ++VjrxWEH7zuKa1Rh2wLS/jXU2owgwc9K5aD/AFw+tdbZj5Rz2FZOznoVP4S2m4D+tOVuoFNB7GgY +zWttTBju4FNzk80rD05qPpzmq6gKcEj6Uu0DvTfU0p9qTATjNPGCM5pg75pxZQOOKaBjs8YPamtK +oB5qnLepHnnNZ0txczcKMA96L66iNKW7hXvjFNivYjwprFaLOQ8mDiqM8/2cna+aWr2Hodj9oTHB +oMiuD0rjYtdIO01Y/t08ECkk1uNrsdaHXjmmO69j3rll12brjNXINYjlxkdabXcVma7SgnJ71F5h +zz68VC0+V/LFZt3qJh6DnHSjd2QGu1yqg1CbsZx+tctJrUzHpyDUlvqisRv4J70cslqCOl83Kn5s +kVWmkAI3Vmf2gnY96gub8EAg59aYrGp5qkkhuO1NeZQAue2a57+0pRkCh79nAG7Bq7MWhrS3CIOt +ZlxdL68461mT30gzg1TN1KwOTjNaxpN6mbmi9JdrnHpURuFPHrWczk96Qsa2VJIy9qTSsjHOKgbH +ajJNMatUrGMncKMmjFJirM9R680u0mkTFWY1UnHr3qG7FpXRVIPpSgGrptmxu28ZqGRAoNClcOUb +CgZgCcDPX0qysBwcjrUKYUAjHvVuO4TG08Y71Emy0iD7MAeKkkxGOO3WppWULkc8ZNZ8ryO2T36U +JX3E/IR5cnOMUzeM80FSaYB61okiG3cl81BgbexzmjzAOlQ0U7C5iRpSc+9M3mkpOaEkhNsdnPWk +GKKKAHcZpQQKZkUmaLBcsrIMgY4q3GiMOorMVsGpUmYHrUSi+hakjTEOD+FWI7duq9cdKzlvm46H +irNvqGw8/wD6qzaaKuTyOyDaeDiqcm1uQBitJprS6Uk8NWdNE8OduCtUloK5WkyMg1WJGeasuS6+ +hHWqjDFXEmQ4HvUqkNhSOtV6cjlTiqaEmOdMHjpUdWSVdfwzUJHNJMGh6YFXrRgpwehqlGoPeriA +4HGCBiokaRdjWEcYG4dsVeikXGPSsiKVemeaUXTRZ9xWXKy+boazX6Rghjleaz5ruMtuQ8VnzzHP +1HSqjSY5FXy6WC9nc3FvY2woPOOaVLheS1YSyle+DUomZjUOkjRVeh01tdIfl3VR1WRWBwc1mxTO +rfep1zMCuM5rNQtI1VS5VbGatWw7g/SqLEEirMDEcVrJaCi9RbvlsfyrW0K3y+70xWVsaWQCuq0e +3Ear9K5687Rsa047tnT2I2gVrIBxWdagYFaMfIrGKdiZ7ki/WrKE1Ag5BFTop61rExZOD2qUdKgU +GpQTTdhEvFAGKYCalBoBiZpQMikIBpV9DTW4h4FOA9aTPpSgnpVW1JbH4FIPeloxVEiE1GxBFSEd +aiYZpgV5M1Sl9auS1UmBpWuWjOn75rMnbjmtSbBzWVPnmmiuhUUkSCta3QHqetYwOZB9a14iVVSB +1ruw/Y87Fq2rJ2+Q8VJv4qIMGOacCMiu1I81yFALcg0u1QMk80vP0pdo49KZPK3sA4OQKXBOKeux +cik3AHjrSuPlS3YojPWnBYx3poZj06U3aSeaLMOaK2JSVAphfHAo+6eaa8iD3osJzfQcN3Wm855N +R/aO2KNznGKdiXdk4x3NLvVenIqEK7HpUgjwKAFEtKHb0pVjHANTLGvrSbQWIPnOKd5ZPNWQi07a +oqeYqxWWHmpvKGOKm+UCnblpNlIiWMAZxUqbfQUZB6UoKYpMabQ7I6inhhjpTMrTgVqbFqTHhxS7 +1NM+Wk49aLIOdknmrSblzUJwce2aeMUrBzsl3KRzRvQio+PWmnGOtFh87JxsPSlASoF3DpTvmosH +OTFVxTdgpozjrSfNSsO47GDzS7VNRsxpN+KdhcyJdtGxah3n1pPMPrSsw5kTbBSGMfjURkx3pnnE +ZyadmLmiWNoo2iqpuO+aabo0+VhzRLe0CmMvvVQ3ZzgU37S5zmnysOaJYYkCmF8VHvZ/rRgnvTJd +h4bPNHzdqbtb1o+emK6JNnFR7KCXFN3tn0oswbiNaI1G0TZz71KZWPalEnHNO7E1FkJRvwqPbVoM +KCqMOOtPmFyJ7Mo7FpjLjgGrMseOnWoNkmapNGbi0MG/mmZPepypFMODwapEsrkjpipYCAcUeUnr +inIhXk021YUbp3EnXGWFOhORzTJicDvRHkCl0NG9R0qLnPrULxjPHTFSOSeh6UwF9vPPNFguhjDb +ggcU0qCTnrUm449aQ4o1Q7p9Su6KetNSFeccGre1cc0wxMc46U+Ylwe5A0bqMCmxs65DetTlHHHY +GkKc5P0qrku5EZqdvUgZ+tKUDDGOcUzYBijQQfI3TjFKUYfdpuwZyDinYZe+aAQbpUPrUnmhR83Q +1GrjOD0qeSLeuRzSaLRGJImzg4xSMN3SoTFg8GkLTRkdxUtXNE2hrrt6VQ1WMXVjIp5IB61oM6vx +3qnMwBaM9HGBWbR0KWh5dOnluynqCau6W5WVcdafrNr5Fw+AME5qtYsFlX6159Vbo9Gk7tM9C02T +hc11FmxxXI6Uwbaa6uzYgCuU6zZi7VZHSqkJ4q2hFK5JMvSpFqNaeOOaCWSinYFMBPanZNACGmk5 +oO6ipZQmKQmlpp4pMoXAwKaabuI60uaQC5pD3oz6UVLWo0NxTTnmn9qaQetSyiIjIJ9Kgk5qwT94 +eoqBs1PQpFKZTj3qhOoPX1rSmy3Ss6VSTzWbNolWNdj/AFrUgbbjms2TOeO1WLaQjGaiW2hW5txO +Dz6Cp1xVG2PWriMCeKcdjKS1LSnpT+9QqecVLnNa2uZMeDSN1/Gm5I/Glzmi19BDhjFBwaZuwKTd +xRcLCmmetBfJpRUlDlJNIcD2pQRSMM5osAEjGRUYByakGRxTW4qWtRoTmnZ4qPJzTwaaSQAelNJ4 +NOPSo29qmTsNEfOaRhx9KXPODTZGxUXSKGkgiprc1VyQOB1q3bA9TWtNu5FTYupj8qnU5xVVTzxV +hDg5rvgcMicGsbXW/cMOnFa/JrB8QEiE1oSjzu7XMjexqkyj6gCrl5nc2c5NU+eOwrpVkiJbkT7e +TiqsoXk+1W5Tx8vU1SlPXNVuTchkWLylYMWfuuOn41S27+vHNWWBGR1quX5qbgMZPlx/ETTNn50/ +eCPxpeT6U0GqGLHkgZApyoQQTg45wakQc8/nTiAM4p7g2QeV6njpijygOo981a4wvHftT1jZ8nPf +pTSJciBYlOc4xjv2qRIweMVZWBWPPBFTCJVzj1ppC5iskHzfSrKQ/Nk9MEipo4VPftUqwgEE84q1 +FpEuVxwhXCgUbMZ+lTqOfUUrKSQBxRuSReSuPTJ5pywnBxxU4Tj2FPC/jjNIpEHlBfQCmmID86tB +GbPy8DrS+UMA4/Okh7lTyiScDIz1pphzyAMirgBG7jrTtnHHek9yiqsa8Y9Mmn+URgkcHIqyVJYZ +P3QBTljcgg84oWgrlVY/x9qsCEEYPTtU0cXTHWrCwk4pDepCkPQdulTJbj9asLF0qZYl4FFguQpB +ngVOtvk1Yii5571Zji6HHWp1uLQrJb+3NTrbqMcVcWIe1SLGPrQMqiAYOBTxbA8frV0RjsKkWLtU +3HYpi24pfs/bFXhGKf5eaQWM4W+O1AtwO1aQipDHQOxnfZgAeOTSfZgO3WtIxZINHl4xTuKxmG2B +qjqsAFq+R0wa3/KOaztbtmFkzEk8niqT1E1ZHoqVyvjE/voOP+WX9a6pK5Xxj/roP+uf9a5638Nn +Xh/jRxr8luOKavBFPfPYetRqCeD36V59z0LEuS3X1o5HNJggGjJwKV9RNDTgmgEE56UhB6ikXvQt +xj+tITgMvGT39KTOBx3oYkEZxQ7AR5pRjIHpQQPSnHbjilEGKOhzTun4imgq3FPAGPanuAwA8elO +57Ume3alyOahLUbGnGM5+tM5p7DtUZKjrWib6iIrvmM471wWoMPOb14rurpsRtzxiuDvwDM5z3NW +tUVT+Ins3yRj6V0VvhovTiuctByAOOa3YHIj+Y8VkvjNamxj6n8sjY6VlFYyc7vmPBGK09QfLH1y +ayuCw4rWPUVnZHSaIpOO9aeoA+Wc+lZ+i4GAeKv6nkIR2xxXLF6sc1qjJtUXzVPvXVWuQo57Vy9m +wEg4711VvgovHFKOsh1NETc/rT0z1pPanLx0rZnODZAzmoyckDtUj/d5pu3gUWfQQ0HtS9DSAY+l +NJ4Ap2Yxz4GDms68vggKqfmqS9uBGpwe1czdXZLZJyc8VeyEtTRjmQEtI1V7vU1T5Yu/pWehuJyA +M9ccVoQ6WGwWrHRM0a7ma01zMwyTTvsYl5ZjnpW9Hp0K8FRzipGtIfuqKrmuK6OPuLMQOCDkVNCi +kDJxzXQXOmxyIcjkc1mQwJHIY3HHY03J21FGxRuJDCAFwQalsnDOCanvrMFcp0xWNG8sEgU5FXy8 +0dBKSTOwjYkZzWXqqSkZHb0otr7KDJxgVBealBghjn2qKaaYpdzMDJnkdqhnb+Jccc1WnuV3ZQ9z +URuHbAJrqjTe5k6iLSTSDuaeZcr1+tZ+85zUiyE/XpVOmT7QmaRR65qu8hp/ls3vxzSeQSoPSqVk +TJtkBJPWm8irPkYwSaQxx9c9RVqSMmrkKxgimlDgntnGatKI1zgk0FVxkDijmFylTnFLjI7VKYwR +zkUhQAc9DTuFiLaKd5a5POefzpnPNSgevpTbJSuIoAb8asRttb2z0qvwPc1KvWplqVHQ3IntpYsE +AEgYNZl4qqxIGaQOyDAqCaZmPJzUxQPuQMR3zTQTnims3pSpliBWttCL6l2NXZAPU8UvkE8nsM1d +soGJAI4AqzNCAMqcZrn5neyN7LqZLQbRn8qpyDBOOavXL4BXOe2Kz3OTWsE+pjJjaQ075NpznfkY +PbHemVqZi0tJRnFAC9aCaKSgAzmkopwVmDEDhRk/nimIbRRRQAtOVj64ptLjFIaLMbnseasCSXbz +0NUg2OlTRTEDH1rKUTS4MynI71Xc1YkwxJPFQMvpzmqjYT1I/WgUpHcUDNWQPBOKTI/SjJHFNzzm +kVcsIFXB71ahcFgM8dKoqc/pT8kcnOfaoaKuX2+XkEZ/pTX3PkdeaprcMetWonBGQcZNS1YaBkOR +x1qOSA4yPSrqjcAadtBXGOlSpFWMjYRwetOCNzir0kAxx2qHy9uCfeq5gSIwshpXVgOtTBR6c9hU +UpJ47VKd2XsQ8dKnjycYPIqv35qeH7wFVLYqDuzT0+Iu4zzXXWKhdqjpxXO6ZHhvqK6e1Tv7V5tW +V5HatEbFuMYxV+MnjnjvWbEeBir0fbNOPYyki7EB1qyBwKqxEnrVkPnitUzJokUU8CmA9qeKfoSP +AzTgaQZozzxRYQ+mnrTvSkOTVdBAGqUGoApFSKTVLzJZMCTS96Ypp1MQHmonbqKlPSonGeaa3Aru +OtVJeM1bkNVJcdKCkZk+Rms2fFaVwOaybgnPWmkUysEJbI7VZFxjaoNVi+3j1qW3XnJGTXpYeCUb +nl4qd5WexoQls81MWA6VXTpTwpPBNdKRxSlFPQmEuaeGY0xEUDmn7lGQKNCG5Mdgg075AOetRFie +M0nzUybE6yKKaZGPSkCnvxTlCDrSC6GfOcUCJmPWntLGOlRtcAAYzuz+GKFcG7EggQZzUhWMAVXW +R5PapAjY+Y0eor9iTzFHApPMJNNZTnIqaFM5zQ7IcU5OwiByamVTmgLtNGeam9x2sSBGPFP8pu/e +pIQOKtlFK8Vm5WZtGndGfsx70YBGO9SS/ITiokbJxVLYzejJUiz0pxhwakiwKmbBqHJ3NVBNFHbg +04ZzwaJTtJxUSP61W+pm9HYn2k9DRtJFOjZeBmllkULwam5oopq5WZ3HGc0CT3qvJISTio9z561o +kY31L2c9KQF6gSXnmpvMFJ6FxSY7zCtN89qhdmOcVXYy00iW2i99qIB70v2hiOKoqG71OoHSk0hx +bZK1wwqFrls0/aCKjaDJFCsEhRdNS+a7fWmLAo61OiKDmm7CXmNxKaa6SetW1285prbTUpu5ckra +FIKWPWpxDnigRlTxU8Z6ZptkpajRaA8mmyW4Aq+pXFQT42nB5qFJ3NZQSjcp4x0prFu1NEjZ5qZA +GrQwRHvkx60hkcEelW1jXvTJFjUfSkpK5Tg0rkHmnHNG/I57Ux5EGfaohJmqsZ3ZaDIecUhCdjVf +J6DgUu0jvRYe5NgdAelNJIGajwc9aMHOc0CEZmPSnxxtjmhAo/CpvNA4ApM0g11K8y8elQBc1clG +78qqlD2NVHYibVx6QqTVn7Ku2o4ff1q4ZFC1Em7mlOKa1M57deRUMibAauTN1IqhJKS2Ca0jdmUl +qVW3luKPMZcA1cWNSMioJY1ye1WpJicWkIsiEnNDKG+lRMPQ9KYPPByORmnYzvqTlWz1pysQOuah +83bjfSieLpRYanYl3g9ad8h5qDKduhp3OeKVivaMftX1o8oEU1RjFKzPzSsx80XuhTAo4prQt0xT +g7nBoeRl6mnqHulV4iCB71ch+VMMartLnpUqtlefSm79QSXQhnMe7jg5qBjkcU6RB1zk1EwbAA/G +lYtN2BkVuR1rH1eRoQjA/dat1FHQ+lZes2zSwPgcjpWUkzppNX1Oc1+BbiBLhR1XrXMQHbIK7G0j +N1YywSA7kz1rkZ08mdlPGGrlrR6nZRdvd7HZaO/yr2OK7Cybha4TQ5VymTkA13FtOJWXA2qvCj0F +efszvNyLcKuR8iqMLdPpV6Pmgm5YSpOKiWpAaOoiQYoz2qLJp3Wkxoec00k80uD+dHHNJlIaKOaC +KKkY0jPNGOetKc0uBSW4DKQ8GnMCKTHrSZSEJJHvTfmxT+tMb0qWMaRULjrUvOetMfkGpehSKUq9 +6pSgA+ua0JAT1qpMpzWUmbIzpQeaLZsPj3FSOvP0qvkq4I7mpktCkbkTDHFWY2YsMCqMRG1T7Veh +9qUdNCGXEBqTNRKQMU4YJrdGDH5/lSAjOKSkHXNNiJKQ4NISRQTU6IpDSKOw+lO9aTGSBmp6DFXp +S5I/CgDg0uBihCDmmHJp3NNYkUmMTbTtvFRhjmn71x+NNMHcOKYacSuDTGI28cEH9Kza6DQ3bUT4 +Bp43Zz602Tb+dZlohOc1ctuRzVHDEk1dtRXRT3M6vwmjEgxmn4weKWLGKdjrXelocDFTGKwPELfu +yPat0d65nxHJhSK0S1JRwt2w3HryapF+Tx9KsXLHJ5xVJuOldCIYO/HA7VSkIHBqV2bmqk0hDemR +VXsS9SKQ8nFVy5Vtynnt7U529v8A61V2f+dTcq1iQ0oGMD17ikh8lt+9ioVQVwM5NIpORj86oROO +PcCpgnIOB0zUMWDuDNjg4PvU0YIPrxVKxLHooY84qyIiOTxjtTLdNw5HOc1ZOf8A69aNEPUaoRjy +OKm2r1qEHBHcVIG3gAfeFArMmXAPtUg3AZByD1qCNgSd5I5604NSY+XUsDdkkZz0qUNtwF4Yfxd6 +rBsAHtzTw/zDGfSl6gTKzZ5z6VL06Z96jRh0HOBUiPt+tCuNpCHenRuDxTiSMU6GWKMSF4w2QQAa +hDnkE8nGKASJwwxg/hSgj0zjpVcuM5Bp4bNSNomBNOXpzUAbsealUn86LCRcTHB4qwu3oOKpocAf +yqypHGMUgLUYU1YjUcDriq0bYyBVhDz+FNgW1VcgirKqtVI26etWQ4Wp1GWEUcVOqDjFV0fPWrKG +oY1qSKmORUoUcVGp6VIOaTGOEYzTtlJ3A/Wn5qblAFo2UoyKXJpgJsFIUGadzRmkA3y6z9fXGnn/ +AIEa0c1Q18/8S1yeoJH4Yq47ky2O1Q1yvi/meHP/ADzP866tOorlfF+ftMGP+eP9TWNb+GzqofGj +j5G5qMEZBqSX72KiHHFefqj0SQk4puDzzTh6GmdCalsQnJpecDPFN4zmlIP/ANahLQB2Vz2pjEH8 +OlA69KD+VN+YAMdPQ01uKXk5OO1NPvSWwMcB+dPy2B/Ko1OPrxT/AK8etCaQCk4pGJBFKQRTWPf1 +qebUqwpOaYZJER1UkBvvCnllC+9QMQe/atFckq3jYhP0rh7vmY5PeuzvyBCfpXEzsTMw/WtEvdLp +/EXLYDK9jxWuqN5XrxzisWBmOOfSttHHknuSKw+0jSpsYN0+GYGqIYlxz3qe+fErcd+KqIWL/jiu +hRshJ3sdZoh6emM1o6pgqMngVQ0UKcYA5q7qjAR4NccF8THN+8jMtCN2R+tdJaOcAVz1mdzgAcVv +wAqBz6Uo/EFTY0Bjqadn9ahU5OPapQ+OldFr6HODLUec9OlPZs+xpvTn8adrAITxVd3IGDU278qr +XD8HFTuMxNUuD83PtisW3glnf5uwq9fM0kp+vSrlpEoAOO1TNuKsi47XJLSzWIKTg471o5A4xzVe +IkNz0qWWaNeMjNZxT6imxwmywBGfehnUNk45ql5+D14J4pGlCjr3q7a6E9C08uR14NYl+JEYsO1W +3uQxHHHY1XnYsDuHFWmha7lOO838NwfeqN9Gjnep5pbpBDuK49qz2kY4I4GK1hCzuiJSTGNPKoKh +iOKqyNIw5zzzWhbok5A796S9tFQZQ/hW8Wk7GM2zIOelPXpRgg5NBNbmKFBOR0qVZGUYCjn1FQDJ +p+CRmk0NMkWcrx696DOegHFRCl2YP0pcqC7JDKGHSot9PCpzzTzECB34o0QCR5JAFaEEKbfmHHes +9RtOPetGKePGPyrOZSehObaNsYAAFVZ7XCFvyFTecCeG7UecCCM5pKWomjHaPpjjmj+lWZto6fWq +TMR0P1rZambdh5PXtUsZPHH0qsr4Oc08S46fnTcRcxZd9gzxz2qq8gbrSSSliccD0qI01ETkOJqa +2xvBPbrVfmp4Dg05bBF6nQQTLGgBqG5nJU4PU8Vnm4wODnpTC5bisFCxre+pHM7MT9ahwc+lSkdz +1q/a6ollbFI7dGmLcu4BDL3BBH4da1RDMnFJWn9o0V8eZYsjcZ8uQgfqGpuo2tjHHHcWrMqy8+S5 +BZeT0I6jjrgVZmzNopaSgQtFJRQA402nZPGabQMKKKKYhwFSpGD17U2MAnBq7HAxK46H0rKUrGsY +3K3l46+lCbQRnitKW0+XI6Cs54WXd+tKMuZA1YbIxOcVFuPINSANyOopjqR2q0SwDHv2oyabzS5y +MUxCZOadtjwdzYPYAf8A6qaDtYHrg5pDjtTEO3elO3kgg85qKnUNDTHLzx0qVGKkc+9Qc5p65yB7 +1LQ0zSjl6fyq5GA3Oayog5Iq5BIQQGFYyWpqnYsSKwqFgO/Wp2bd0HaoJc5+lJ7lLYrS7lzg9Kpl +2ya0H6fhzVGSIkkitIWIldEW81IkzDBzUTAjNAANaNJmak0zZsdV8kjdXV6dqUMw4Yda4BIi3Q1d +tzPanKtiuSrQi9VudlOs/tHqFtKHIxWih4we1cboOqCUhHbmuuhfIrks07G7L8bdKspVOMgGrKNW +iM2WBnuakHrUKkE81ID6VSaIZMCaUelRjJ9qcKdySWgCkGKfTWomJilxSj3pcUxWAU8ZpKUVSExp +3EVGSRmpTUTEdKb0AryGqkpq3IRVOdgKSWpRm3B5PrWXOCTWjcHk1myt1FX1GyttDMBmr0aoAKzg +x8wAdK0ExjI616GGeh5mMirkwKjFSq3rUAbH+NG8dzXZa55r3JyW/h5qeJSRk1XWSLPFOe4YcL3p +WYOViwVQd6QyoOB1qi08meehqRQW61XL3M07vQke4Y8DimqZW6nrTih4NNU7Wwaeg7O+pJ5LYBpC +uMZq3FtIxTZUB6d6hS1KlBWuMgxkdqt7QRmqUcbJVpX28VMtyoNWsRy7lNSxSAAUjlDnNM4PSh6g +nYtBg2Kfs4JqvCGJqwQwHNSN6kkbbOtWDcADFZ5Zs9elMaRjxmk4pjjNosyyhs81XMgBzUeTkE00 +tHu61SRD1ZaS6qT7ZwazzItHmR//AFqHFMpTsWJLndUImJNMLr1FEfXmnayJvdkvnyg4Bp4MjYya +XCYzSGRRnHUUhpscIzz70eXxUQuCcinCYAUWYXQ9Y+eakKAd6rm4A5qP7anrRysL2Lm3jim7B61G +l1Gw5ppuogcA55pWY2WBCp605YwKiScHoacJgD1pWYXRYWNTgGnPEq9DVYToD1FO+0L1JpWZXMh3 +lgnk0Bfeq73IA60LPxuNOzFcslSBTMsODUX2gEYzS+YpHWiwDxJ6il8wDFRb1HOaY8q+tFhXLX2j +HANMefd1qp5ic0vmxgdetPlHzNqw5iOopVkcVCZUHNKk8Z4Bp2JLglfFNbzHqNZ1pTcoKmxXPfQa +1vk04QqOKBMvHNMNwuarUhk4hFHlDkZqFbgetOaceuKWo9B3kimmMA5zQsw55oMitnmnqKwbAM47 +0m09qaJB0NO39OaNQArIM1FlgeRU/mDGai35ahCdhQ/rTGl7VIeR+NRlBjNMGIr5znmq8irnNWY4 +1zn1qC4iOcqcYpp6k2CNwOtV7n5jwe9SLHIOvpUZGD8wNUtGU22rEQA+7nkVOFAA7cUSop5xSBgR ++FDCNupXm25A4+tRCPcff1qW4XJBHUVHbltwzVpuxm4rm0HiFl5JNKN3PPNWyoZc1AwKj5etSpXK +lAYGkVx3p5lKknFR+Z8wyeasDBHWmJRI/P2jpUbXAkJGKkePI4xSeUtGgNPYWFVHJHX1p8rIFwKa +N2OnGKgk8wHODU2uy07LQbyWx2psmQw470Ek9uKeAxI49qqwOWggYjJNNYrIMEZFTeSScnv3pfK2 +rhRk9qTsxqTM6KyiEj7QPm4NcT4j097e5ZgvynnNejLGcgjPPNUde02O7tydvzAZFYVYXR10alpX +ZwujylHUE13dhKMD1rz6NXt5yGHIY12OlTghQTXlVIWlc9iLujsLduBWlE3AzWFaycCtSGTioHY0 +FPTmpR61WRhgc1KvHek2KxKvTmnDiowacO1IB+aO1N70tJjEzzS/hRnmjdU+ZQh4pVx1pv1p3GOK +PQYhNJSkUVPqAmBzUZXvUhNNyaTKRF/OmHPOalIPXNMPepaLRVfpj3qpKMe9XH71WkC9O9Qy0yjI +vPpVSX5W+hrRlX3qjKB+IqGuxoi1aS5ArVhbJBxWDayc4FbFvIOcfhUx3JktC+D0qRSKgRw1SZGQ +K1TuYslPSmgkUoORig1diR+6mtyaaOadUz2GhBuFOB5pDnvSAE81BRIGB6mk3Z4zTQPWg460rsVi +SjFNBpc073AawWholIFITzmnluKHYNSMx/LimGPAzUm6mFs8VDKVxqqahmVqs5/+vUMxPeoaKW5X +GQRV6IjHpVHOKngYmuikjKrsa0TjFSbuaqw5IqfkV2w1OGQ9mwprkPEZJBx1wa61+V9OK43xE20k +deK0+0JHEXRYvn1NVSzYO7tVq4BLZqlKSoPpXRfS5FiCRz69qoytljippTkH61RkY/jSbCwjNnp6 +1X3sDzT2yQx7Dk1GwA5U5HSkhjwcipUbPHTPGarhuvPFPQ8ZzzVXJaLygK2FO5SSBV2JMgZwazI5 +F7/nWjayLnkgcHk1rB33IluXApXpjpTTk4yeOlPymOKiyCQT0JzVdSdkSEe3akyBk44zkUqFTjJo +2dc9KTAakhBIFTx4KnP0qoqMvGDU65yME9O9NXvcOhZPChcDpuBoViMA+vNQqTjoeKkUgk+wFF77 +h6FhWAwc96eZFIU571TeRVBAOOKiE+R+FTfUfKy75hzj26+lLvJHI6VSMuCMNk7eaRZgh5PWlzMd +i6JOSM9OlPDbeR0qiJORg07zsqRk0XvsCuXlkQjmpkkPy5P/ANeswSA4xwcVOJgMc5NMDTSTPQ1Z +jkPT0rKSTqRx7Vbil4/Ci4Gor8Z9KsRScdayVmPGatLN0waTYWNOOYD61ajcd6yElUGrUcuAcVN2 +DNVHGetWUbGBmslJs8nirSTe9DQI0lkPGO9Sq/Ss6OXODUwlwTmoGaAcVIGFUFlGBzUolHalYZb3 +Cl3Z6VVEvFKJfWgZZyKCwqv5uaQvmnYRY3Dn61n6+y/2XIe4Y/yqfeO5rP1+T/iWTD1P9DTitSZv +3WehJxXJeMs/aYO37ofzNdalcj4xbF3AP+mI/maxrfw2deH/AIhyUnJqHcFPuankBJOKrnvng156 +dj0STJzSn/JqEE5xnipM5HXpRawhrtzwPxpVBao8nJzUg6DNSMdnGM8YpBg5pfl6dqbyD7dqLisB +46VGxGDUmTnjmmnOOn1oGCdOfwp2RzzTFPGKeccj1oXZgPU7hxUZAPAOM0qnAwOKQnFD3DYY3Qio +iwqRyOagb/8AVVWEU9ROInHfBriZR+8OfWuy1EjyWrjXz5p5NaK9rGlP4i1DkY46mtqPPkkk9P0r +HtzyOe9abZMWenHSslumVIwr3aznHSqkI+cZ7mrF0x3vmoYsmTp161utgS1R12i5+Un0FWNWxjPt +UOjMdo7cVLqpB71xUn8Q6i99FbTQCw4zXQoOM1z2mt+8478V0IPy1MdZ6hV2JY8npU/4VBDipgOT +6Gum9jndhjUn40r0DOKAGNwCR1qlcuFU1YlYJ9Koz3NvgozDJqbWDc525nIlJ9+lXba8jJC57VQ1 +JNsm9cEHoazRdbee9U4OWqKTVjrpbmNYyV64Nc/caqQ+0nAzzVJ9RYpt3HPQ1QciQ9cmtIUtNTJz +sbn2wsMhhxTDqJPynqelYyzMhAapXkQ9DR7Kw/aI1479P4j2GKgub9QuVbjNY0sjEZGagLN1Jz6V +cKPUiVUuzXhkJwagMoHFVunejdjrW6gkYubZajfaQy9ecUS3bSDrVbdhc5qInmqUFcmU9CY8mkK5 +zimhscHjIzUkZA5FN3RN0yMIakEZPWpMY5Hc8UhJB79M1PNcexCwI+hp4bdgZpj7skcEeo70zIHN +Xa5NyZlcAn8qZvcfWhZsEc8d6GZGGQeaVu4XE8w96US44/KoDRk1XKRz2LAmPZjml84g5zVcsSc8 +DgDj2pM0ciHzslkmLZ96hooqkrEN3D096BxRRTEFGDRRQAU4EjpTactJgidEZvYVJtA6ilgGcCny +Kx/AVi3rY6ErIYWUj0qJ8HNKcioz3qkiWNOM8Us0007BpDnau0egH0FISvb0pma0RkxKKKKYgpRS +UopAFLtPpTlGf1qQRsTx7VLdi1G5CVI4puKvbARyM9elRSQlSOKFMTjYYiEgEVs2R3gI34VkJntV +2GbywMdRjFZz1NIaG+sAIPes24tNjkEZBq1bXq7eTnFPupFkTcCOBUx00HIzHgiUArwaoyKucMOx +qWaVwce1U2Yk/jWiRA1kI5zxTMVJv4phOc/lVokaaKSimSLRS/Sk9aBhUqHA5pqrk0rggUnroNaF +qGdAccCrhaJiCvcVjcg1YSVlwefSocexSZqMxwuM+9DLnrzUdu/mL83XrUoO5+D0FZbGqIwAetUz +vLHHrWt5PygAdqy2DI/PToKcX2FJ6jJIcjOO1VCrLzWyANo3e1V7u2/iTkGrjJ7MzkupRjkKHrUz +3O4YxVVgQcUlW4pu4udpWNKyvWglVl45r0bR9SSeNRuycV5QGINbOk6nJbSJzxmuavRv7yOmhVv7 +rPX42U1ZRulYmmXYniRs9a1lbIHrXPHXU2l2Lav6U9Wx161XRgKlUjPNVsTYshs04E5FRDHY09Sa +ExWJgaetQhqlBGKslknFOBqEGngjFCBknajNNzSFsVSIHFqhb1NOLGo3bP507AiF8c96pTH19Ktu +wzVOcg9aY0ZlyR3rNm5BrQuD1rMmYcjNAyONAWBNX1AK8c1QgcZq/HyCa9HD7Hm4u7YZBApkgOOl +NJdHyenSrCDeK7tjzE09CrE3JGcHpVyJQVGeTUb2vO5etTQxOpIpt9SdtGI8TY+WiLzE6irYXjmk +2juKi47W2HK2R0pPLUnpSgheKeGX17VJTu9xwUDpQfeovNCjmk84N+FICYKDzTiicVUEjdqXzGUZ +NOw7aFghB1NOEsQxWfJOD3pquzYHvT5QW5pfakU8UNdFh+FU0UginMQOlKyG/Ic0rnpTDMwHNIoJ +5pkvAPHSmrE3Dz2b1qNXd346Cmhh349KtQRYXcO9PYTldiFtopq5Y571MsRZiT61IYgvNF0K1iHB +6elTIGUc09AKVwTSbGnYAzGgxk84pyYA56U6SZQue1Q2+hcUupRmcRrzxQrhlGaguZDIcds1JGu1 +M1dtBJXEdm6VSm3lgBVkhmbA5FDxAAk1SFJ2KpuDGME4OKZDcl2OT9KhvG2jg0zTomkbnpnNaWVj +O7Zuw7sZzUm8DvUTExpxUHnY49aySuVfoSvIexoM7cCkXBH51WZDuPX2pqzHKNi4cvgjmppJ44oM +Y5qGDIHFRag2ExU7uxcVdXQRyvIAQatjIAzVGwwRV7iiW4XshC2PxqGZzipDgnFMkUE5PSglXKwn +JGDxUL3ZBwDnFSTqoBI4wDWOjs8xA9a0ik0S27mv5pwDntRFKecHNIq4j59Kht2++PrU6FtO1y6L +gdPanwuzHBrLXzA5+taNu3IzTkrIzT1NBYxtpkiYx6UedwKQvurJJ3NW1YgkMijikSRnxUjZ6Glj +Udqq+hKVxxY4Apnm7TUrLtNVpCGFC1B6PUd5ozwakSRjnms9MgnnvVxT8uabQtywJc8HtTRLnOO1 +V+S3HXFKMg0rCJTPtNKLhSMVA/8A+qmdBRZDW5pI645pkhDHiqwYooOe1RrOXztPNCQMug461GSr +H3FQ+a1AcgjjrSsBOyKy4xUXkAZxUwbjmjK8npRcLNblGaFhz1FRKrDPFXGdScZoCrg+9XcjqMUt +sHFMYSN/SrSLgetKw4qblWZmyQyA8VNGjEDPWrJAxn2pox0qr3JEjQDrUjIq9qjLBCc05WDnmkPo +IGxwBx60yQFu1SvxjHNKFGPrSuUk2VdvQYp23JFTbTnGOKbIjjkdKdwafUXZxQqjJDcU+DOMGpmj +VhkHFTcpxaICojz6GmHZIpU81JyODzUD5BJHFFrgnY5PX9IO5poRj1AqppcjRkA9a6iYM5ZTzmsC +7tTbzZHAJrlxNL3bo9PB17vlkdFZy/KOa2IJARXLWk2QPat22mzivMe9j0UbKMOMmrKkVnRvwCat +K2RS2AthuaeGJqurVIpOM0hE1OHFMVgadQwFINIaTnNOpDEIo70c4oApehQDIpcY60ZpaG7gNxnN +NIp/TpTTmoYxh6VEwFTEVER/Kobdy0QMO9VZF5zVxsVXdefWkr9S0ynLjrVCVOTWjKM1VmTmoepo +ilEdj1rW7cZrGkypJ7VftZCVFToDRsRkNirAFVoMAc1YVgc1Rix+7HWnZ3VH1wakXjBrQkcoo6HN +P7ikfH1qWxojI3jB9QadyDTGboccUbyc44xWdyrEvbNNBwaRc4pOeaLtisOyeacCKYDwaAe3rVK1 +gY7IP0p3HApn+NLmgBTjFRsvOadxzzSE1EmmNDT8o3VWlYmrXaqshLHioZUSIEZ5GRVyEAjNVEU5 +znir8WMCt6exlWLcI4qb61HHwKlxXdDscMhHbCn6Vw/iGT52rt5sBD9K4LxCxLvjk9K1iveJ6HIX +Em5iPrVFzu6c85xVm4b5m9+apP8AKeDxzWrY7FaRj9OtUZTxViZs+1UpWJPXrUa3BoYWUcd6YWbp +6U1iMHn6Uz8atCHr6U4MePrUXOM9uRS7vQ0xFlHAIP51dt5k456dKzAykEk4IIwKeJCOh70J2FZG ++kwx25ppnQMeTjtWQlw4wCTTjcDJH5U+YXKaP2naeD+dKL3oc98YrOSRHO1nC5HU9vrURZ0YqeCO +tHMPlNlrwEZ/OiG9B4xjHesbzT07CnCXbzmnzaiUeh0aXMZGM4x0qOS72EhTk9zWILlhxnjFL5x7 +miUxKBotcl89zQJulZ/nDoD3oMvO0c/SpuVZmgJPm4/KnCY4IHfiqBeVckoy46k0Cf8AXkUcwWNF +ZcYyeuacsnQHgZrNE+CAak+0Fug6U1K2gWL4lx0OaekwyWPNZ7XCbgUBHygHJ70ouCDRz2WonE14 +5/m5PYcVZS5wOvfGKxI51HVuccVILn1POKpSTFZo3kuOc+1TpcAnGelYH2rBBzUqXODg0cyE0dIl +wD3qeOfnk1zsV5jvxViO7BYc8c0aBqdKk/HBqdLjgD0rnkvACADyKnS7APLd+lJMGdCl16mrKzqe +prnVuhng1Mt30y3vTtcV7HQCbpzmphcKuOetYCXfU5xUn2rOOc1LBG+s4Ip3mjFYS3fIGfpUousg +80NAa4m7UomrJW6Hc0ougRwaEBq+cAKztbmB0+UE4Gcn8jUYuOxNUtauA2nyr3Of0FXFakzfunsC +dq4/xpn7VD/1wH8zXYJ1Fch4zIF1D/1wH8zXLW/hs7cP/ERyLHng0wgE9aeQOlRENyRXArHojT1p +2e/rSDB60HaenpTkxJCfL1p2cr17mmA8mnrgkHtUJMY7jHNKANv4Uw5570objB702lYQDB56f0pG +zzn8qXgU1gTgg96UbobBT0oIIb2pAQeacTT0EA25waOcYpvPBp271pW1uMhJJJz0zVeRs/SrDDk1 +XcEkmrSJZn6i6pGT1xzXHNgy8njPWuv1IfuT9K45iplPI64rW2hdP4jQt8jBB69603ZfJJ9qx0bG +AO3rWkZB5GMDOeT/AErOK1LmzFuMlsA96jgP7welOmb5yQe9EHLgHOK0eiKi9UdZo4wu4kmnaoTz +kU/Rzlc4xTNXIyAfeuOlsxz+Mr6dkN9DXRISV5rA04AtxW+mdo/Cppr3m2TVJ4yKlP61CgFTZzg5 +roT11MOgwnApN4Azn3ockD1qjdzhVznGKFuDI7+7jhRjnmuTu5ZJt7KxBo1jUTnAY46YrDN7OQQD +1raMGyOZIsSX80ZKuc9qpyXJPSmMssh55pfs74Ge9bRjFGUpSYxZWNSBhgdveojGw7U5VzkHgVbS +M9RSScmnjIUZ4zTchVOfpURfOPrRa4XsODDOT0yM4phYE+lNJzTT61aRDkSblHHXNMpFxmlOR+FB +N2wNNOe1O4pBTExn86crkdDRgUmKe5OqJVmIx7VZEkUqhScNVEAk04KQRUuKK5nYmkV/XIJquc1N +uYepHvUTcnPSnEUhlKM0hoqiBaSiigAooopgFFFFABRRRQAUUUUAGDjNFOB7dqc0ZxkUrgT2xxmr +jdM+orPhYggVbeXP8X41jJe8bxehWlJyah3cYJ71JKdzdc1FWkdjOTEPNFFJVEBRRRTAWnICTim0 +qEgik9hrctLGBjNXIog2AeppttslHbJq9HanPHeuaUnc6UtCMW+FHH1FQSwDkjPetZYH5BHSoJ4y +o46ZzQtxNGIAFJOcetLlSc9KnlUEsCKjVMDJyT2q7k2JFlRB8vU81KLpSCtUZBkimrnrRyiuSznc +RVVlwetSOTn8KZnPX6VaJZHSVIUoCLnlsDB/OquQMopeOmaAuTTAQdaOKXaeabQA/I7Z7VIm09ef +SoADShiDxSaGmSso/WnopI/xqLfnrU0ZPWpdxo0IUAHbipLY/viD0NV1kVI+vWpoHAG496zb0sWu +5fk4BI9KzJ0DE9TjvVqa5CxnHesz7UcnODz3px2E3cuR4ZQuelKoOQh5pkLRnkdfSrKoGYGgad9D +OvLXnco6is8g966WaIlSOOKwrmHaxIq4yIkitT4yVII9abgilXk496p7Cjueg+Fr8tGqMenSuzjl +BA+leeeGV2jIrubeQ4Fea9JOx6T1VzTRxjBqVG5FUkcd6sRSZHNU9yLFtWxT1IyDUAY08EDFCYFl +eafnpUSE1JuGOKZLH8HmngioN1OD1ZJNkDFNzmm7qbuoJHM9Rsw701365qBnJ4phYZK3JxVKWU9+ +KsSOecVQnfIzVDRTuHHU+tZlw681duDwT6Vk3DFjimlcHoEMwD9epragIZQR0rFtrVpGB9Ola8UZ +TC16WGi7XPKxs1eyLDRhzUqAIOBRHGODUoGK6m+h58Yrcb1/Cl3jjmo5HYHagz71EiyFstkUWDUv +Bg1SCLcMmqwdIhljUf24tlUzU8r6Fqa2ZO4HQHPtSAnHFMiO5iSfrUkhCrQFluROQetNx6UgBJ6c +GnFWUU/ILdSSMAc4qO4kGMCozIw4FKBvIJ5zTtbUXM9ivHEzNnqKvRx7RTkiI5qTGOPrSbuVeyI2 +bbzUOSzZ7Z5pZCScD1pVyvFPoZLcmWo5l4qVCDQU3HHrSW5TeljIeR92AOK0bN3ICnvUv2EYyalt +YVRqqUlbQiMXfUsoqqPemvwOlSniom61ki2Ea0OBmnoaZJn8aAsV5ZMcDmq+5iCDVjy88moXTnNW +hNNEcce5+amkjY8AVJAmOalGM8mlfU0SsrldIQpzTJwCMCrrbQM1SuSuDQndkuKtcwL4/NsHWr2n +RbVBqrIheYk44NasAVUAH1raT0sYq42eQg4PSquS7cc80+5kJJFS2sJODj3qdkVGNx0SPjJpdpzm +rZQKMVGE9alMpqwiMQAMVBejeMVYI61XkfJ5NC3Li+VEduGUYq4Aw71BDycireMLmhmbd2MX1NJK +wxigsAKrNICxz+FKxSZUvpGVD78Vm2h/eZNWtTZjwKTT4QQD61slaJnfXQvGT5AtQwL8zAd6syQ4 +Xiq0R2SY79KhbaFNtrUa2UkqeJzwc1JLErqCOtRohzVXTRlqmXUwwHNThTxxVWLIIBNXVdQOeayk +bwsyGUY5qAThG561ZkYNmqEqfP7U0r7ibtsXvNDA49KozORmpowyjj0qvOMgnrTirMlu5FEwfp1J +q4C+Bx2rPhbadvPJrViwQMU5DiriIr4/lS55watYUKKqS53AioTuU42Bh0amSsqpmpMHbVW7B8s5 +qktSb6D45hIpGc1HEDHIc9zUNmDjnmppZNjAHrmm1Zjg09C4QMg+tIdo5pu/Kr+FNkJAx0qLFJ9C +ff8ALxxRuAXmqwY45NTLtYAUctgcrjCC3IoOQuKkKbVOPWm9s9aoye5F57xL609LgyISKYSrgjio +bd9jsmKdluPmdrFyJ92QajmBTJ9Kcp2t9alYK64xU7DKsb+YvByc4FSxht34VTGbWT/ZJq4sg4br +Q/IaS6j5UYDNJCzE4qUzI4/CqwdVfjiktUVonoWyqnnvSH0qPzQwJz0qJpulCQpvoyVhIpyvSnxM +T3qJbjsaceCGXpTaFGdizgNxUE0WMkc1KHVlHalBB4NTsU11RluuCe3NZerIPJLdxXQT24YErzWT +qMTeQ698UTs4mlF2kmYFnMBwT0NdFaTrwK46LdHKfY10NlKDivEqLlke/F3Vzpo3zirkbnODWVby +Zwc1ejfgc81nZldDQDDFSK1VEfPvU6vxTexJaRxT8g1XU8c1KKQyQdBS/SmZwVHsadmh6gOPSkWj +OcUYpWVxju9J0IoGc0HOakYhJNIM0FqTmk9xoQmmEjGKeTjpUZGOaTKRC68GoTnntVhhmoGGBUWL +RWdc5qpIMbvSr749cVUkHBNSy0Zs45NOtX4FOmAxzUUGATjpms5al9Dbt2z+lW1x61QgYY69qtxd +uelEWrmckWl5GacD0FMQjpThnNaIzH5IOaU85phbmlyKh+YxGU/hSJ94j2o384penzfpU9bldB1J +mlzxS4B5FNaskTPFJz+tHel470wFzR+NGKQ47UmwDjvzTfw607DHNIeBiplqxoYc9Peq8g5/HmrD +krUDYNRbUtDUwDxV5egqio55NXoucV0wMKxaToBUwqNRxmpF7V2xRxSEuTiM/SvPddZS7evNd9et +iI/SvNtYlzM+fU1qviEtjmp3yx/vVRc/nwKuTKCWwwJGcAjk1Rdxk+5zWrGitcDJ4HrVCQenc4q9 +JkiqUoxkkdah3Aqv/nFJxinHnmmc1aJYpyOPUUmKX5jycngUccfXrQgL2laZPqt0lpE6IzKxLN0A +AyelRXVs1lcTW7lWZDjcM4/Cl06/uNNuUu4QpdN2A3Q5GDReXct9cSXMgVWcg4XoOKED3K4z15FK +c/iKUEYwOePzpmTmgBwIweM5PWpJJjJHGjDLJkb/AFXsD9O1RcdaXsOetAC4YdqT3pOfWl56D6Uh +jxFMRnY3PI4603LDg/jU25HxkYcjAPuPwpDJHJgynkY+ZeuPfpTExqkc5IHHQ0LIyHpyMHPpTMgn +rxRjgn0OKVhlzICS3UbYBYIU/ulwfzFVllOD6cdakaSEWwjTIZmDN74zUDBR905GBRa4bEgcg9ac +JWJAPFRA5xn6/SgE5yD2pWGTeZnjPNAlI7/TNRbeM+1J0GM80ATi4w3cdKcZzyeucVU9PpSjJ4p2 +FYui5IPvTxdN1J54qhyO596d83HvSswsaK3h9e3WpkvsHr+FZA3AkGnKSOemabuLlRurqBBHzY4q +ePUvmyWArni7HBxjAPT60hdz0/GlZ20E4nUx6oP73fFTRamO7ZHFciJJFP1p4lk7HoM1T5hch2Y1 +aPI5qQarHz81cWtxIeBx6mnC7mwRmpuw5DuF1NMZ3e1Sf2mAMbutcMt5IOhPvUi3srEjOKachch3 +I1JD1bNL/aKjHzcCuHW+lB6n6Gl/tOXBGad2g5Wd0dSUgYaq2p3itZthjkq4/SuSTUZAMZxzU0+o +mSGBA2cl8gfSrjJ3RE4e6z6kTtXH+NM/a4f+uIH612Cda5HxkcXUJ64hGB+Jrnr/AMNnXh/jRyRx +UfUEfpUhHcnrTCBzjivPiz0SFiBxSLkUrDB55HemZOKq19RXHc5xS9B9abuBHrRzkVCfcY/noaOR +1NKpXnPJHSm5zz79KbWgdRfm6Z6UEnoTRg4ppUMOaS0AFOM0hHNGOeaCc8UegCg/hzSZzkHim56Z +9qXiq6CuNYgDPWoGIOalLDGD+dRvwCKpLqIydTY+SxzjiuPUgyH3NdZrDKIyoPY1yikCTJ9a1ei0 +LpasuRgZAx34FX8Hyz24qlFkkY7HNaR5hYH0rKLsy5q5zs4G4n3p1scyD8OaS5HzNzxT7T747eta +SfuDgveOx0jOwY71FquCam0oHYSPSoNTwXxXDD4WVL4xNNHKmt5crisXTl5A7VtDA2iin8TJqk64 +IzTgecUxScc0hOMnvWzTMRJnCBj25rkdY1BlJVTjPFdBfzeXGSep6CuL1Dc7s2e9axirGbeplSu8 +rknnmrdvYK6j1NQRRlpAMd63YY1VAcYxV1JtaIcYrdkMVlGFJIxiobiCFW+UfnVt3ODj1rPnkdc/ +Woje4SsyJomcPsTIVdzH0HSqjgKKfJcEcYqtI+/6CumKZzyaGORUfSlJPWm5GM1skYtiNxg03PWg +mj5dp67s/hVJGbYZz0pwzTKcDQxpjsZoVVByfQ0A1MqA1Ldi0rjVQMKPJY81OsffnrUrYxx+NQ5F +cpUEI5odVXFSMdoFVpG5IzkA9R3qldmbdgLjpTCetN96K0sQ2LScU4YNIaAsIcUUUUxBRRRQAHFF +FFABRRRQAUUcUYoAWngj8aAhIFNI5xU7lbEilAQx5weaC2QTnuBimc0o5osNAfrSDrTsUAKcA0rj +sMwDSYqRlx0/OmEnpTTJaG0UtJVEhRRRQBZtpjGRW7Z3iHAPWubTqPrV+KeOIACsKkb7G0JaHVLL +DtB6VXmeEhs9DWSt95i4Bw3pUT3rAkHtUxi7DdiW5EY6VQaVwcDoKlaXze/OOtQsrZ9+KpeYhww+ +c+1SNb4xt71JAkRxk8iraWwPIfOO1Q5WZSSsZrQse3Sqx+8MityWPYMBeOayp1PX1FaRZEkQ4Bz6 +U3aOxpVJzjikJ5qyRm3/AOvTl6il3k4Bp8QXPI9aG9ASEMbEdKj2etWy4QkdsVC+08ikmxuJExHa +mU44pnerRDFp6vt601FLsFBAJ9TgfnQwKMynGQSDiiwEplLHHpU6XAGBVOl3VLjcpMszXBbiqu40 +Z5pO9NIknimdTwe9aEN03BY9KyVbH/16kWRqmUblxkdCtwJI/fpVG6iMgyOtR2pznntVvZgc96y2 +Zb2MYqRwRQFANXbi1dPmqqMqf51pcElc6vwywwciuwilUYxXE6JLs2jHeutifIGK86Wkmd3RGtG2 +aniJyc1nxOcACraE44q0xNF5WyOtTIe3rVNG5wKl3ntTJsXd+OtAfkVXViak3VViSffml3LUOe9J +uoQrE+45oLVFvpGmFUSDMO9V3cAZod+pzzVd3BpiB5DzWfMxzjNTsxOarspY1pGN9CZSUdWU5tzc +VTa0ldgQtbSwoOTUqKg7Cu6nh9NTgq41J2RRtbR0UbhzVtY+cmpHlSMdulVfOdsnoK64QsjzalVy +dy0XQdaTc0nC9KpYeV/atO3jEag1UkkTF9ySK3AXLdcVDPIkQNPnuggxWc2+c5JpRi92Ock9ENPm +3LcdDUxt9i8cE1PbxbBk+lJJIC+PSqvqDikiKPMfX8akdtwFIwPU0EbhSe4ookg29TUkjqcgVVG8 +cU8IzED35pW1uXz9BhUk1NHGRipkixgdamCBaHIEhgBHJqNiDS3MmwZqmsrMfbNCj1IlK7sWUhLN +xUot9p9adB61Yc/KfpUuTuWoqxWICCnx9iRUJYscU9WIGKdjN6EzOelSwxjrVVc/WrqcLUyLiIyn +NRNle1Slxmm9TSGR5/CjB/ipGPPFJkmmJOzByB0qADJ4qWT9aI4wxBp3sg3YH5EJNVGmIb2q9NkK +RWawwTjmqgrhUdtCVpyQBUMpz3pp65NNc8VVrMzvdEaW5Yl+wPSpmOFx7VHGW6g8U2V2A9c1Vncl +tFRnJlrWtpMAVjDc7sRWpCHwKJoqErIuSOCPrSKSBUGSCBmpR2zWdrDvcbI+FNZsjFifQ1fuQNhx +WcAc4rSInsX7VAqjvVt3Crj2qvbAgYNPlIwah6sIkErE8VAoJJPvUjtzSR5xTHZWKV8mRUtkUGPU +DpS3akg1FD2xV7xIe5qSMuwj2rID7Z8e9WXkfGKohiJgTzniiMSpTuaytwPenDA59KSBcj2pzqVF +R1GleIFsGjzJDx6U1wSoNPiXJBFPoT1sNV2zTmXuasrCDyKhnDJzUXuacttWAHFQSID3p3mcAGjq +OetUkTOxnSApIOO9aMDHaD+dQSxE/NVi3XKYxVS2JW5J5jHgGo5CcgjrVkQ45xzUTxNuPNZ3ReoL +u20yVSympQpGcelJgnrTFYqW6ANg9qddw55703eI5efWpJZA68cU9blS5UOhBAUH0p8ig1FG+4qa +sNgikySHZkVYjicjNRjGRViM4J9KUmXFIHjO2qvOSBVuadTx3xVBmw9EdtSZ2T0I2OHI7VA+UkVh +0qxLk/N61FKu9eB0rRMztrcvQFXAxyRUpGKyrS52naa1VO4Bs9qiSaZrBpqxVuYvMQ56jpVa2lIJ +Q9q0JazblSjCRR+FNaoPJlp0fGV4zVcpJ1zUltceYBu5pZevHQ09USLADjBPFTNGB2+lQxE/rViT +7ual7laNEKrlutXI1DLtNVrfJOauY2fShvoJxtqirIxibrkVMrBgMVWu2B+7UdvLn6ijlurhGbWj +L2914PNV7iFZVarXDjPemFSoNSXs7o4LU7SWC4LAcGp7CZcjn2roNSsvORuOcVziQ/Z5dpHevPxN +KzuexhavNGzOitZduOc1pxPnnNYNrJwuK1YZc8VxbHWakbjsasqwxWdEcHNXIz3qALaMcc1YDCqi +nFTITRcLEvOcn8KcCe9MDA04EUXGPB5p4JNRrT6VwHDpSUd6OaQxhHOaQk5qQ03AqWUMOeKZz0qU +5HSozSsNETnFQv0qYjBNRE5qWWiqy5OTUUgAHPSrDDJJ6VXkycgDtS0LM6dTzjpUCcMPTNW5AcHN +Unyp9OaztYs14cYzmrkfAzWdbNuUdulX48gAHkVLepLLSPgAVKrZIx61WHzdKmj45q4u5m0SZyeK +cFJ60mO9OU5/Oh6sQ3FISMc+tKT1FIQcfrUNajF5yMU/pTFzxSndTXmDDg0pxTQaeMUboBe1AHei +k/SgQp6VGeKec5xTGFQ2UhG6c1A4A6VYb3qu55FIpAq5IrQhj4zVSIHIzWjHwK6aGpzV2PAp61Gc +inoK7Y7nIyvqPELfQ15frDZmcD14r03VCfJb6GvK9akHnNjrk1cPiBbGLc8Z+mapSvuLMepYnH+F +Wrh9xPvVB2PJ+nNaMIruMlbgcGqUpGT9and8YJ61Wbk9cZ70bsbIyQEIGOevFR8U7gfe5GeaaeP8 +KpEsTiikNLxQIUelO/TmkH4+tO4B5GKYAMD86PL3AsvYZPtT+CMmo84IzyKGAg4o6UmDxR9cUgHC +nKdrA4Bweh6GmZ5NJnn60DJeQcNkEHGPekY7mY8ZOTTSzvuZiSeSSepzSBhxQGgoHGego470HIC5 +4DDj3pMnp60AFPI/WmDHOaX8KQIkwNuRj/CgY/lSDHrSjCn1/wAaQw54HYUZXBJ4PBFKWJJJA5xS +Fgeo6k9PemA0nJ9RSnA+ue1Ck9scjmlHt6igQfKcAdec0o4IzxTKeMY5yTQMejDI+XIHP1pevamg +g8DjI6U4A9uaNRCkDOKQkE+vrShTgdPxpCByOvpT1ATd/D2HAoORxk03145pw5z7AUgHLuyBj606 +QbAqk5BG4VGDn60oDYxx1NADh3xmnsxC4PbuKaMnGB6YAppbgn2zTQnqO3AgZ696eqJkEH5cZGar +jB6A9qkDYz1zTQMmOCR61cSBTDBNk/61hj/gJqkCSRjnParkTPJEFHCFyc+jbWprzFL4XY+rk61x +/jPP2qL/AK4j+ZrsErj/ABof9Lh/64j+ZrCv8DNsP/ERybZOPaomYDr3NPZjk1E3JFcGx6Ijknjv +TAv5inHAIFAK/iabtYSAgikxntT+hyabkjn2rPrcY4dP60zgc07NM/iwa0uIcWxjFKxJHFGO9NOc +1C1eowU80r/dz2qP5d3XtSyZxgntTtqA0MCcnNOxlaYMjjvUi8jmnJ31C1iPioHPUdqlbGahfb/W +qT6CZiay2IyK5hPvc4rpNcIx71zCPzj1NbWdiqe5p245FaUpUQnHPFZULA7R0561bl/1eB3rFXTL +lYxJmbzD65qazz5mKgl4YjPWp7Llh9a1n8AU/iO00ziMD8TVPUnHmduOlXNMA2VR1IDzGFcFP4S5 +fGWdNzxWwkZODWTpa84rd2nGe1FN+8yKoAevWmPjGPelDLk/hTWJNdBiY2qk4wO9c9cxx+X6nJrp +b+Pc3IyCKxL224wM4A5q1uQ9jIs9gck9jWqHRgADjNZYiAOMkZNG9lxg++aGru5SeljTlRYxnGeM +1lzyK+QKnt3uJeMnHSrDWq4JPpVQRnNpGBLF3FVmBXitO4iOTgHHrVEwyEjiumL7mEtdiv7Gk61K +0TcjPNR5dMqCRng471qncyY04FJx2pc5pD0pkCUopDSUxEgxU6HGMcetVuRU0UmDzyD2qJIuLNO2 +QSDb3omj2kgHjuafZtG2McHtTrmJucZ56VikaszLn2qmcnmrMwKkjHIqsa3jsYyE5xiiincVRAg4 +oNHeigYlFPHJ5p5jwN3UUXCxFS85p4GRx1p2wn60rlcpCaTmrIgLc4pjwsvIFCkhOLIaBS7TS7WH +UGmTYQYpwpvNKKBkyHt2pso5zSpmkk7j1NR1Lew0DPepI0ycEVADzU8LjcCacr2FHcsrBuBFMMBG +SK0IIw/t7054SOQOKw5nc2a0Md/lx3qDvVu4Qhvx4quQR2rdGLGUlOJ7U2qICiilAOM0wAd6eM0z +pShiKljRcgV1+Y47jketE6DBI+tMS72jpTZbouDxjIqUncptEO5hxS+a2c5NMzmkq7E3JUlZTkGr +UV5IuOcVQzS1LgmUptG6tw8i8HIxzUNwmQeMVQt52QgHkVo71kQbcYrK3KaXuZrAg9Kj61akHzdP +xqApycVomQ0MANTxKCRUQQnrxxmpY8j5vSiQRJXiDKTnnmqrcHjntUskvb61B1PPelFdwY05NNxU +m000itLktDaKWigkKKQ0UwJAABnFJkc8A8Ypufegn8KQxKcDg02igRaiuBH27VbS/Vsbjz61lGgE +ipcEylI3fPSZMHnFUpuyhf4ic/WqscjAgZqzlWCnv3qLNGqabOg0VA0YNdBC8ucdq57RZflK100O +Ao964Ki1O6L0NC3HA55q3Gx6ZqjE3AxVuNu9OKBlpWP61OpxiqiuuealU8A1SvYlltWC04MT1quC +cmnbqe+xLLO4jim76i39KYX5JqrEljzMVGXJNQmQUwS4NNLURI7ckVXdzkikeTnOeT0qHdk5NbQp +uTMpzUVdkmCevSl2ZHHFNBAGT0oB3GvSo0VBHkYjEObsh4XAFQS3AU7R1pbifyhgGqkOJPmPrXUo +6XZwOd2TBDJy3WplgLYx0pqKxOB0rQjKqoFJto0TiyDykQZxzUgPyYpH+bIpAQnBpEXImjJPPJpu +wKRUv3j7Ux+M96bY4iNL5YOT2qpFI0shPXmq97MU4PWnacC2T+tVa0bjTuzTOcDFSiMYqPOOtPEg +x1rI1ukhNozipEQd6jUFiDVhQBQyByJjmlkbAp68Dniqd1J/CDikldlSdolW6ZmPFJEuOe9SRRhi +c81aWDA5FaN20MuV7hEeKHkbkZpThRTOMZqSokbNilRiSM1G7ZNSRD1qnsRe7LUeNwqyzjGBVaIZ +6VY28CsnuaLYRFy1SmPAzRGBUrkbTUN6lpaFBgcmnopPWnFDnIPepVUVTYKNys+V47mnxg4ocEn6 +U9eBQwitSCcmqTAZq3KQc+1U3IzWkTGbuxriqshyADVhmODVcHe2PSrQMfGuFGe9MnxyKsEbarzM +DQndk2sMtoc8960lj2r6VBakAelWS4IOKmTdzaKSRGqFjmnkEYFCAHmpQoNJsndlOZiOKqgcg1cn +VQDmqiElsVcdhS00L8SgAfSopmBJHSpEOFquzbianqC1INp3GrMabQAeaRVTgd6mG2m2OxXuY8pn +9Kzohh8E8VtSR5U1lMmyTn8KcGOcdCxIgKZFUZAoft1q67/JWXPOqMB9KuKZHNFam3bklVqZxkc1 +RspAyDBq8GGPespXTLi0MI4KmkjyDxT8ik6HBpkW1LccigYz2qC6IKk96gd2B/SglmXnOalRs7lu +basV1IJ/GrCgZOahjVcmrEfWrZmtWMkGB1qe25A46VDcED8KfbMQPSk9gVlI1Ailc1XZN3Apwnwu +KFbNY6o6k1JEO3HHWoiDzVzaME1XdOeKtMwZlXCN5nFI4bYc8cVcMeWOR9KrzrtGPXg1qpXIlB7j +rYHg9qss2FI71BDxtGKmkHAFJ7gtxYzxTi+3PHamxDApH56VPUvaJWlndmGBiggkj6VIIwSDUxjX +HPWrukRyt6kZVWjqJUfBGOD3qZBwRzUbSMpA/hzSFYqyR+W2V69atQXBUDNT+Wj4Jxiq08ajpxii +6ehSjJal0FXAxUNzCGU8VUguWB21pI+9cHuKlpxNU1NGNGTHIB2q3K+QCKbcw4bgd81HKQI+fSq3 +JmtLofBLjnHfirAkMg49KyIpsmtG3+bpTkrEU272HxSFGPtViWc+XxVZ49rHj1qEyHBXt2pWvqVf +7LGSzFs8/hSW8u1gPWq0rckAdcU5CVIJrS2hhfU2o2wOasbtwAqlDKrgCrCkrjHNYNHRCVtAkRSC +MViX9irEuvUVvZzVaaPr3zWU48ysdVGbpu5z1uSoxjoa0oGBx61VuISrbgMD2p1uxyOa8qrTcZWP +XpzU1dGvE+eauo/FZcL5NX4yAKxsal1GzVhGOKpRkZqypHf1pNoCwCKkHIzVdWFSIaAJwcCnZJNM +FOUjrQrDHil59aYTilBNS7AKcjFJzSnNHXpU2GJz0qNgak47000DIHBNQN6j16VYbmonweBUSVi0 +VpMmq7Z/OrTc1XlBGaRoipKADnPXrVCWtB8cZqjOMnis2Ui3ZcritFCcVjWLtyB75rYiPTNZ2tsJ +llTipY+SagBOR6U9CQ3HNVfSxDRYz1zSqQabnmjJxxTvYVhTxzRkk4pDmkU5P0o1GO5zxTwDjmm9 +waXdwap2JEJpc9qY1PAyOtTYY7J6UgGfwpo3DjvTdz5x2pPQLEmPekwelNDA9O1OJzUvcYjYxyar +uvPFTOeOarOxB4NQmUixC3PNaUeMcdKyosbhzWlCa76Opy1yVhnFSIMUzqakWumDORmdrJxA2PQ1 +5Rre7zGOCOSa9T119tu30ryfWJxlse9XHVlrSJhPKc5PXmqshOSOx5pXfJODUO/g/iK01ENZsZ9a +ikJXOfWnM0gyR6c1DISW5PU0JCbGFs/nQNuRuztzzijjnFJxg8nORVEiZpT69ARSjbySelIwA6ZP +APNMRIs8qrtBHAwMgZH0OM/rUZJyaMn+dJmgBwY4x70u3IGOpbGPrTAcU9pGcfPyeME+1IYm7I+l +IcUlHpTEFLSAUtIY4iQIDjCsTgnvSxQtIWPRUG5z/dFI8sshUyMWKqFGewHSk3nZ5Y4ycn3Pb8qA +HSuHb5MhAMKpOcCmEnAFJmj0oAWnjnHFMz0pelA0P4+tKCMfWm5/l+tHpikkO48ZoA5zt/DNL9ad +jtj35p2EN2gYA6800qBnFSZxinFeSD19KEguQ54GBxTlx1704ICGJxwKMcfWlYLiqSOR0zT/AGHc +U0EAYxzxzTx6+n8qroCDnjOaaQv9akGSSfTFNK8fnQDZGCR6UDG7j15pD3pVGaTQCDvxg08HHpmj +GOtI2M5z6/hQkAu45GPWkJOPwpCBgnpTiSc5POAPwFCFcQYzup/JIB49aawO0HOaUY4HOSetMESA +bWyvHPBrQEcaWcTnhnnkH4KhqgCpBAB4AP0rRk2DT7QcZEtzn/vinHcl/Cz6pSuN8a/8fcI/6YD+ +Zrsk61xnjQj7XD6+QP5msa3wM3w/8RHJuAaa20Y+lK57A9aiYg4rz7a6HpCkDOaB6gcChfcYppPX +bRdvcmw88n6UcE57UzJHNSAjPSpa1GBxjFQkjIzUrUxyM4qr9BD1xj3pH9T6YpobAo3BhU9dBkTM +OTSZ57nNOxz06U04zgmiztqMeuc5/WkyAWHekVh0pW29u9UhMjfPXFQSemKmcNj05qGQNx39K0im +tSWYGsghSTnpXODGTgYroNdLYyK5wEg+1bNOwU2XYWP4mrTklTnsKqQZ3A1akfCe9ZW1NLsyJyd5 +zVmyPzrzVS4J3EmrGn8uPfirmv3Yqb9+x3Gmf6oY9Kpalkyc9auaYMRVQ1H/AFpNcMH7hs/jNDSQ +uR2rf2qQK5vSzjjHet9ZB+VZ0/iZFUYyrn05qN5EQU6eQKpb0rm7/U23FV9K6tWrmO+heu7gcHNU +HCyA81nfaJ5eDwBR50iDJPA5p3exLVkLdLGg9+1ZbPECeec1Fe3zMThs8mqqSs3bNdCp6XMOfU3L +W6VTg81otPCRnpWJCyKnTk0NOT3PSiKsJ6svs0e4ntVae6gReAOKpPNICeeRVSdmbnuOaqK1uTIj +uJy3A6VVLEmnPTOa6IpJGEm7hTgCelIMmrMeFobsCVyHymA+tJ5ZJxwKuggnpxjrTH8vP0qVNj5S +nsIp4JJUHnaOPans8bf0po7mqvdCS1NKzk2gkYqae8OAM9az43GMZI9RQ7t6dKx5dTXmuhssm481 +WYDtTnY59aZk1tFWMpMBSntTM04E1RKYmKXHJxyM8VIq5qwtqX+4efSpckiuUp4PWpFyKnktXQnd +71Hgr+FLmTGlYWM9KtIA3GOlVlILdMGrEfrms5Fpk8cLbuRVhUUZ3VFFMvc845qcsDkjmpVwYxrO +M9AP8apy2rx5yOKu7n42n3pspfA7jNUpMTijHkiYE00RNxVxwzHpTNhBPIq+YmyIhGQv1qBs1akJ +x1qo2c046iloJ9aeGPGO1Mpapko3NLuADtJ4xzV+YKVLDoRXN27srA5Na6Tb+56YxXPJWZunoVLt +TnJOCARVFmXnjr0rQnPJB5zms+VT+ANaxMmaOlXekwxXEOoxtLFKy7VX7yHB+YH8qjvLPQYoHltd +QaaUldkRjIIB65J449qzKStEQLS5ptGTQApo60UZNABikpaOTQAlFFLzQAlFLT4wDke3FDY0rjQS +M1KkrL3pGRh2xTADU6MrVFwMHFGR71WDFdpzxU5J4qGrM0TuMZv50m73pHzgmo8+9UloQOPNGCQM +U3knNaOn2jzvjB6Zok7IaVyutuxGeaZIGHB/Cujk0/ykJxjisie3bdxyuazU9dS3FGbg803mrUkZ +XOe9V24ByOTjmtYyuZSViOiij8asgKKKKACiiigAoopcGkAgq1H04qsM1YjBI4qZFwNbTJCsg+td +bBKWAB7CuHtJCsgzXU2k+EH0riqqzO+m7xNuJxnrVyNxWTBJwKuo5xms79CmaKselSLLVFZDtwe9 +SIw79a0SJuXQ+ehp6ucYz0qqHAHFKG5+taRgyHJW1LO8DjNNMh5phBI9KVE45Nbxw7aOeeIjHcQu +etMw5ORVnEePX1pCDjjgV0Qw1tzlqYxJe6VxA7c0rARKSeamaVUU/SqhaSc4HSuunRUdTz62JlU0 +IlMkrZzxVrIRcd6csaopOKrSOPmA7VutTlbKszebJtPNWoYQMAdKjigy2feraKQPf1pyl0Qku5Mu +yOm+ZuPtUbhznNQgunFTYepaMoXpURfPzHr6UznBA5zULFh0oSG1bctCQetDOAp5qpuIwTwKpXt+ +oG1OSfSmot7FRlFbkdw7TTY9Diti0j2IPWsjT4Wdi7VvRocYpTfQ0UdRhBY4qUDGABzTimORTowW +bJqLktWdiRFwBUoXHemY29KeCQMmpY4jJXwOtUW/eN1qS4YtwKij78VolZGbldl63UDr6VLI4xVa +OTjvRuLGotqac11ZC8Mc0PwMU/AQZqFnyaaJltYVU31KsRGKdCKmx0+tJsLIliQKucVJyKcuNtJx +WZohNopGJHSnZ9KjIbtQgYxnA71H5hOaHUnIpuMCqsJyZImSafIcA02EY5pZgSM0uo9olWRutUSN +zGrUxO3r0qspTPJxWq2MkrsjlIXmootrHNRXMvzbatQKMA4/GqeiGlqS7OMmq02GarbnahJqoqs7 +HFKPcc10ERWJwD9atAECnxQYBzTypBFDd2QotIfEpwKcwPNANDE4xWZpHcoztUduMtmnTgHNFqe3 +pWi2JnuWZSFTiqmQe1TzHqKaietLoEVcEHSpgpGMUwDn2qVPvUMLajsHBrNuQVbgZrVPIqnJEOtK +DsXUKZGYznrWbPA5yeorUfaQQOKg+UrtNbJ2MIxTEsuAAa1YwCKzYANxxWpD2rOZcVaQhGDx0pjn +kYqwy5qN1AAqUxzVmNCbgBRKgVT9KmhwOtLchQhpczuUoe7cz0B5z0qyhHWqZLfrzVmOrZEdwmx+ +VJCQKbNkGlhycU+hm9yVmYnHUVahHy1CVz0FWY145rOR0wVkTKeKidck1IOKByfapJ3KUiqhzWdc +tlhjmtG94Gayslm7+1aw7k1HZWLcC/dNWWAxzUUIXaM9ancAAUm9RRRHGBQ2Qc9qWIjnFPk5X3ov +qXKyRV8w7vpS+bvYgVCwOTToYieaqyMuZvQlTIbmm3IAGe1SMu3BpJVLqcUluLoU/tO1c9AKrtK8 +vTgU2RWEmzNWoY0AGRVuy1KinLQrSQnaGGc9KtWc3ZuoqZ1UrjtVdVCN070r8yE/cZdkG5T9Koz4 +8pgRzirccu7j2qvdbccVK0Z0fFG5hQErKwrdtHGM96wGxHPxwDWlBMOBW01ockJWka0rgrx71nvg +H8atn5o/Sqwy2T+tZx0NKq1KbEhue1Tr84z7dKR4gfmPamIdrHFWZu7VydcJg9CKvQy9Bms8MTwR +UwJI46ipauO5d3HP4095ARVWJ+eanbHBHSs5I1hJoqSKHBBFZrAxNj8K1ZAc8VBPCrDd6Vy4impR +uejhqrjLlFtyCAc1oxP2rIjwCBV6E4IrymmmeondGkpBqZTjFU435qyhzUlFlfrUyHBquh61OtDs +wJ1YcCpVx2qAdqlDAVPUB+B3pOh9qAe9KR0oYwzQOtJkjtS9R70hgaj3daec5ph45AqWNDTioWAz ++FTE88/nULdfWoexSIGPX3qF8Gp3+lQufUVBoim4OTVOVcZweavyiqUuKlpLYtEELMH/ABrUjlyB +mspB+8/GtJBwp9qzncZejJwanjz1FVYSf0qyp444oTIZMuSDQOKYm7mnZ5p+ZI6kTk0o+YUigZ5p +gSUhJobrTDk9OtPqIf2oAOTTFPSpPSm7AOBFO+U9qhUnc49DTgT2obadhbjlQAmmlGzSqTk0uecV +m7DIHJHWqzEk1dkAI9qqSIC1K2paZJbHLYNakS4HFZ9uoB6VpxgkV20locld6ju9SpiolHNSriuq +OxyvcwvEp/cMB6V5FqpIZgOhPUmvVvE7kQsPavIdULb2H1qoblfZMdnOW9ahLHkZ605jy2OQOtVy +ST1xWomPYtwTTDyaCeKTK45JznmgQ3mjNHNHOOKokevPWmkY96AaPTFIBtLR9aTJx1pgHH6UpPrS +Uc96AD/Ciij1FAB6UUnNLzQAUvApOaKAClO7NBzQM8EHkUDD+dO4/Gm5I5FLznmkA8dMHtTsscDI +6ZpmTinDIOPWgY/jtwaUsx6nvim4PYUucg/lQDHjJAzk46U5h1Apqg9akDHJ/SmhCJjP4U8jgcdB +jIoAzjFC53euO9NAAQDoMZFOYKcZp4Knk8U1s9vam0K4zA/GmE/MCOxzT88Y71HnLCkMM7h0xilG +3AwKVsYGOtIP50uoClsHHXgVHgnAPSnfN3PQUm8Zz16/hRYLilTjO0kdPpSc88c0Lvcnnj1+lLzg +9venoLUMNxz0FN3cg46U4scY7UmGOMA9CfwpASpurTdCLG25+9cTfh8lZI3VsnH9n2YP8Utyyj/g +OKcdJIJfCz6mXqK4rxrj7bDz/wAsR/M12qdRXFeNv+PyE+kI/maxrfAzbD/xEci33j7VGcDqo9Km +yMn3pjrwCRxuxmvPW90ekxgP68U49TSYFOO30oExm7jAA60ucA8004J6d6VeTjHNTKVgQuecU1yO +nYUE4yOlMODTVgED+tKD/wDWqLvmpM9D2FO2lwH8YJqI8nmnnJHYZppxmp8hjgF5NJ0P40DPGKCe +v860iJjGbnIqtJ0PPTpUzEjmo3GVz61Sk9iWc3rTMAM5rnlXOa39bHynOOOlYK5ya1Ww4LUvWw9T +gg1PdEqnBFQWmN3Tp2qxdAEEnjtWS+ItmNP8xz6VZ0xcyDjvVWUcn61c0zAcE9a0q/w2Kkn7Q7rT +8CAA9xWTf5aY88ZrUsSPJ59KzL3/AFhHXk159O7gbX98u6apOPWtkKRz7Vk6WrYrWzx0opWV7mdX +cztQkZY2A9K5U/M53+veuq1AL5ZB5PWuZlwr47c810xV0Yc1hHmiRTx2xWZcTFzjkA54qxczwxHB +PeqYuEkyMDoa2jG3Qyk7lFxuY/Wrlrblhx7Z96WO0MhDdPer21IEH9a0lLTQhKxGYlQDJ6ZNV3lC +jtTZ5znB6mq/DDrzQo2Fe4pO4k9MVG7AKfU05RyaJVJGQKtbkSKpGaZinMKYa1RkwzinhuMUykp2 +FexKXI4FN3E9aZS0WC4/bk9aXbjrTBTxz17UmUhRxQ7H+VKEbk4pjg0kNiOjKFYjAYcVHSkmkq0j +Nu4UZoopiHK5Wpo7l0bI9ar0UnFMabRrC7WZcNxVWVV7HPNVVJzVrJC57Vm1Z6GiegkY21LwWA6V +Chw3PNSgBiCOo9aTGMdijHnH0pPtTjvTpyDmqh61SSZDdi6l2wwSSac123NUAR3qVACKHFIadyyJ +iee+KYFfbuPIyRUkcYIHTmrC2xKcj/69SO/UoMD3qFxir0kJU5PfmqLjmqiKQylpKSrIHqcHirUc +5AwTmqVPWplFMqMmXmfPJPOKqTZyc47H86cjuuCvtUbtvJJAGT2pRVhy1IzRTjSAVZFhKKdt9u1G +0ii4WExSgGlOOMenNAzmlcdhNtGOamVS1Pe3OARS5iuTsVsetOVc9utO2YNTJFuIAochqBE8RHNL +CMuK0RbZQAjn2qDygjAgc1CndFctmSyW5x65GRWfIAhIzWznzYl7HHX1rKu4mVvrzRB9CJIr5OeK +lVsVFThVsEOJ4pmM/WnYzgVIick4+lK9gGxJubFdTo0MVuATyTzXMA4YfXpWta3Um0Ad+KznruXF +aHQXkkc6kJ6dqofYZSuavaZBvdS31NbE0Eaox6DFTrId1HQ4a+t/KBJArGlx0FbeuToZGUdvSsRu +frWsI8pnJ3IqXFFKK0MxKSlIpCMEg9jQAUUUUwFAp+04zTV61ZEYZRjrUSdi4xuQKOatwxkrkdqh +WPD4I4rWsI0YEEdaiTLitDO+ZHBPHNbun3CsAO4rNvbfYxIospNjcn6VnUjdXNacrOx1aSAYq3FP +0zWJHPnjrWrZRSSgZGOKmFJyZpKoorUvq+RntU8XmP60kUPAAq/FEVA47V2wwnc8+pjUvhEigbHz +GrXlqq4HWmnPGO1SR4brXTGkonLPEykiJlc8CnLE+OashBS4VBlq1OWU7kOzAyeKrzzhBgGluboc +gHpVFVabnmtIx01Mt2Khllb2zWhHHtAPektodoHap2wATSbuO3YgncIpz3rNzucgdzmrVwWkyP5d +qS3to4+QMnuTVJ2RE1qPAwAKuRx5A4qsuGcAdq0I0+UCok7FRVyBosVXeL16VptHgVUlABNJMuSs +ilnYcAZpSucnHarKRBjnFOlCIhY1XNqJQurmFqEphU44zWPCjzyDPOTVnVJzMxUH5an0u3Iw3Wuj +aJik/aWZq2sSogwKtA44pq8DGKVUJOTXMdLdtiUtuGBUsakCkjTODVlY80mRuyMDJ5qOZ9tWiAq5 +/Ws6ZstiiOrHLREZy54qeKPB5XPtSxRH5c1ZYIoFOUuhMYaXKzDA4HPpRGB1pCctxUxAC5oYRXUH +ZSMVVYYPbr0704seceuM1JHbZAY0bCauSQtVpMZGarLGUOPXvUsZIbmpY0WxzRjFMUnPFO5IqDRC +E7cmlWmuCRUkS4GDQ9hxV2DRg1Rk4bHvWlIQBxVBgC2TRBjmlsSw9OajmbGcnvUn3QapTyZJppXZ +MtI2K8z8n3qlPJsUnOKlkJJ5rLv5T9wV0RVzBuyGK7SS1sQDgDtVG1sJY40mJGWrRRSB1om10Lhe +92E7AAKKS2wTzUcmetNWQpx60ktCXPU1gyBahO0tmqsc5brU0bHdUcti3K5YGCMimyN8pHrTgcYx +9ajlO7gVI0ynIjVLGoFNfIxmpUK7a0Zne5C+d3NOXGOKjfIPHrzUiAgEmky72Vhy7ualUHrSIuel +PUHmk2CWo8ggc45qFwMYqSQn1qMnIPtSQ6j1sUJzsyOKy3mIY1q3OMEVQFtlixreLVjGzvoLZu28 +j1rZi4FZUSBJBWtHgKCOlRN3KSa3JDkA96hJJOM8VKW4NQsMnioRc9yQNimTyrsINIQccdaqzZwc +01HUjnaQ1CCfariDHIqlDg/hVxN2AB2pscXqJMB1IpYMY6U5huyKQAx0dCNpFkEEirQCkVRiyzDF +aA6Y9qyludV/dGnoaj8wflUknCnFVmyATTSMWyC7YN055rMbIPPWrcrMrH86gdS43enatoqxnNst +xP8AKpp0kg28VWhYlQD2qXBYVLQ0SRHIzTypIzUUYIPWp+Kk1nsU35ardug21VlJD9KsxTYUc1Ur +2Ip2vqLMDjmhTEYye/aopJd5Pemrg8d6VtAZn3ziE7sYqCG7MnTtVnVoSYs+gNZWnfN8v0rZJONz +O7vobMUjOMEGhwQRirMcPy8DtUUqYrNNFyi92MQkHOKdcIWUkelIo4qVfnTB60PuOnJ7HNXilJM4 +p9q+WDGpdWjAyR1Gap2bfMqn8K3TvExlBwkdOmPLwO9VQSsm09zU1tyg+lQzqQ+70NYrextU1RJI +gKn8xVVl5yOfWrO4snuKYmMZP0qtjOLTViIEY+nFTqDuBHQioZxggip4GJAPpQyoxSdmS7W7U5JG +Aw3rTWkPQVIi7hkioexXUaxz0703GF/nSNlePypgcZAJ61m0dEJERBVianjbPNNlQYz1psJ5/GvJ +xELSPYoT5kX4jVhWOQaqoccmplY9a5vM6EXkfrUqnJzVVDnGanUg9KnYaLQPSngjOKhB7VIhHegC +wrj8qdmohjrTqHoApzg0BsYzSZGcUuMikxilhimnFGOgpTjGDUtjImwaib6dalbg+1Rnk1LKREwJ +7VA/Q+1Ttk8CoZOKhloqygZ4qlKOtXX9/Wqc4PJHWpZoiqBh85q9FISBz2rPOM9DmrVvyAc9Kifw +3HY0oXGMVaTkGqMbYVWq6mdhzULsSycMAKYCec0xeRzmngZqlditYmQ5AowM0KMflQAckGqIDIzR +gYFJgE5pTikMQU4YpMUoXHemA4Y54+tIODQDngUnLVMgQA4JFOzTR6Uc81L0YA9QMwzUrHjFQc8d +6uNhos22DyetakQG2su1AyMVpoflrspLQ46+4ucMPripR61EBmpgOK6Y7HO9zkvFbfum9MGvIdSk +JZx7mvV/F8mIyPrXkt+CXf8A3jn2q4Mt6JGQ3G7tzURPoamkwePeoCFq0QwOPWjpSUVRIf40c0vG +PfPFJxQAetFHFLx+NACUGj1ooAUcdfSkooNACUUvpmigBKUZpKWgAopKevlB03AsgYFgOCR355/l +QA3mnK2Aw2jk9T2ptJQA7jnpS859zTaUY6dqAHc880q4H1pvHPSnZ4pDJQvByQPWnYycZqMHjH40 +4ZxTSC7FxjkfjUnBGcdqjHSn8Y601dMLjk65PFSKTnioskYGeaeMqP0ourgSjYeT6UEADjH4VGD2 +9epoyT16YptiAjJpMLgY4wKTOCRkdP8AIppcY4paIBzFB9KbuH5cCm5z6HFICvHcUXHYVhkH1NIC +RyOvNDfeP5ikHJAzjnvQgHAEfrS7iBj1ppx0Jz6UAgcgfNjmlsIdnOM9/WgkNuPrnp2phbI6U7gj +n16UDH7m2hC3AOcfWtVjG9haL0ZJbjn1yorLRQMEjPPOK0nJSxtsHG+SfI/4DTinzCk7RZ9WJXFe +Nj/pkQ/6Yr/M12qda4jxt/x/xf8AXBf5msK/wM2w38RHKY705nYRvHgYYqT+FBGKa33SO9efFnos +YANrENznpTCxNHAIHrRgc+tVey0DqHIGfWlRgQT36UhPQe1NUDp0qFqAp6U1uBhaedoFREnIODVK +2wWA9OmKMtgDFKxyBUa8Z5oaurAtyU46EULjPNNyePrSHH4CkkMf8uOKiJ9aUg55PvTWYc8VotCW +B+7kVEwGMU7eccdqjbvTVnoTc5zXSADgcZrAQjOfwrc8QbSDzxmsFCcjHetraDg9S/aELj05qxds +vlZqtaqWbnp6VYvABEc9M8VmtynsY7nOcetXtNU7xms/qa1tLZS4U9T0p1tIMqh8VzsbMhoM+1ZF +6QJj9a17f5YPw61iXbDzjnnBrjj8Bf22bGnHCg9T61oeaB2rJ04ttB5q9KwVSfas47kVChqd0cOP +WuQ1C6cH5Tg+1bmpTZBHrXJztvkPpXpUoo45sjZ5Zjk5NW7OBi2D3pkYReRzzVq1kO7NXOWmhMVq +aaoqAD061TujuHXnmlkuMBupyKqSykk89s1nG5TSKjqd2M5NC5JxTiS3XkmnBQOnetrmQoyBuP0o ++Yrz0p6IT1HrTnG0Y7d6nqDZQlUc1Fj1qzJjFQMBzitosyaIjSVJjvTdtXciw2loxRQAoqZUH8qj +UHir9vavMQMH0qJOxpGNyIRtgDjmoJSeh9a3l0iQjJziqN1ZCLJOelTF9QaWxkmkp7YFMrUzYUUU +UxBRiilAJNADlHPFXEIYHNQInGcdasordvasZM2jEZ5fSnKrjjGRVmOB3NSrA/OR3xmp5imjOkBI +wPeqjKRW1JDngelZ8sLKTkVpFmcolVBuYDIGT1NSo3f+dRlcU5c1TFG9zUtwuV78Vb3Lg4rLjd8+ +9Tea2Md+tY9TTlC6lHTI4FZ7ck1PKxOc9c8VD1rREWGYFIUJ/GpAAOaf8pHSncOUgCZp23FTKhJH +f2qeO1Zjxz9alzKUCoEP5UCMtnFaC2b5AxUwtRG2SD06VLqFchjOhHUU0DmtW4hjKnA5zWcVwfxq +1K6M+XUkRQVAwPrQ0TZ6VPbx7sAjvWpFZhgeKzlUszRQ0MQwMegpBAw68V0aacpIwO1RXFgEB4Jx +3pe0Y+VGVDGO9aCW5ZMDGar4CHnpWlBKu0YHaok3cpIy3ttpYHrUkFuTjjGa0ZY0c570+GAsc0m2 +UloLFZ/ICRziqFzbspYgcVuq4VcMOlNkto5VZh6VSlbQze9zngGUADjFV5k3xsW6g1evEWEn3qjI +2VwOc1UXZktXM8g5qRUJH40vlk9BzVqGBuD+daSlZCjHUrbDux3qfa2MHp61q2mmPMQxXjFJf2Rt +xgDHrWand2KcUkYLnnirNs5VlI4571EVBYilGFPp0q5aqxMdGdXp16U4NXbzVEWFjntXL21xt+bJ +GB0pt5dtLgDgYqIK0tSp2sVb12nfd6mq3lletWIssw4zk1PJA7Lu9atysyeUzCppAtWWix14pRAe +armRPJqVwvFMIIOKuJCW/M1XkjKMc01K7FKNiKil6ds8GjHSqIHRjJFaMULAfrVSBNzoMfjXQxWR +8vPOD0rCrKx0U1oYrqd2cVoWG7IJ9aLq324qxYxg8VEndFxVmGoquwlfSsNZMP171t6krIpA9KwA +Pm/GtacfdMnK0jq9HhFwQTXW20CqMdK57w7APKU+tdVGhGB+ld9Gmkrnn4ms+axZhgWrQt8r6Z6V +HB71eEgAAxxitG2jmSTV2UzCV606OMDP1qZyDUbOFxVK9jJ6MczqgPqKpyyFhyaWaUMarncx2jmq +SF6ldl3ngHrV23hZB0p9vbFSCwFXUj/KnKQJX2I0Tuar3EoA2jrVueQIpxWeMyvyO9KOurKdlohq +g96kUEDmpvLUUxyB0qr3MpRs9RsSHdmtSBPWqFtkmtWPAUVlUZtTiRy+1UnUHrV2SqkoYg4oiKer +IfNCD6VlajqAYGMdTxxRfzvEGB4rJhR5Hyxz3rojBbsy5pdCJLeR2yw4NbdjBsUVCsYAwKvQrtA5 +onLQqKLQiJwakVe2KdGRgYp6rk1jc0lbYcmBgVKvtUZKgqpPJ4FOOUGaliihs74XtWeM7iT+VOuZ +8nb70xNzVpFWRE5XZZR8dKWVz0NRKrDmnYLttpWVxXb0JI0PX0FDMx47VIkeBS7FpGmysMt7cbs9 +QT+laSxqEA71BFtUVL5gOazlds0i4pEMwA6UyIbiaJNzE+lSxLwKroZbsctPUYo2gCm7yOlSWtBX +xkCjft6VHuLGmsOadhX6jnlNQodx5okHpTFyDTtoK92TyMMe9ZkzDOTVieUgc1nyHdVRQ5PUimmV +VP0rCnm82YEcgGreozMikA84xVLT4mlly3TNdMUkrmF7s6C2laWNExgKMVbA2r74qK2hCgAVYkxt +PtWD1ZttErsN1MERPWnLnJ+tWRtAp3aJUU9SsEKgDFTxYNNkcHgVLGpAFJvQVrbEmcAYqFyd2akb +oR61AxxmkiuhGXLNipMgA4qmjN5nfrVhnHA71TRA5E31LtwBUUTc1OTmp6mrskKvTipB0pi54NSq +OtSwgveImDVGcjNWJARULgBTTRM9zOnb1qMSLwPWmXbqM54xmqiGQ42963SVjJSaLuUDcc81oxt8 +oFZcUbZGa1IwNoAqJ2Lu3uOyaYDk04gikXAbpUrYqS1J1jLCq1zGQDV2PnjpUd0uFx1qU9R8iaM6 +3T86uogxVWIYY1ZU5PFWyFuLtPPNI3SpcDGDTJeBSJ3YWwOeav8AIqrbLkZq4cDrUPc26DDwOfrU +PJp8jGmjkfhQRuzOuxg5NVlkODxVu76t9KzZM44Nbw1RlUVi5bcg/WrG0jntioLP7hNTyEjtUS3L +iLGMU4hetNjGenSlcHnFSaT2K0xyT7U1NxGBzRKSp45qa12sRx1rR6IyirsfHEeCakSPDGrixDGa +jICtWXNc0lCxUu4hJGy+1c7bRGKdh711M3Q1hyoEuCR1rWD0sZPRmlDJtAGabM6EHFVcydqcik53 +Ura3K521YSNscGrEfH41WZSGweM9anPQY9Kb1EtHcxtaYYPrWbYKWfcParmtuc4HQ8VV0sE8jmto +fCFbVnT2uAgPYjNR3GDj1zS26MRtzTpowODzWOzK3gVt+z5T3poDA+1NfqB6U8sWH4VZhqhWG45H +QcU5TtOcjFIhAB9xSZIPtSZtzc0blpNrEY9KtxqoGOgrMSTa2BwKvJJ8tZyTHCaI7peCV7VVU5xu +HNTszc5HFVz8pzQkXe+pZBDLg9ahVdrZp47YpxWuTEU7xud2Fq2diwnOD1qwoIqpC23qatK2a8pn +rImTAxxUqE8Gq4bt61MhqLFIshuARUqHI5quhPYVMuaXQZYU8U7NRjOKcCeKEIeADinUwZ7U/jik +7dBhz1ppB/KnU0ntUtajQxqjbNSstRml1sUiEg85qFhnrUr80xxgetZstFRlwDVR8c1ceqcgqbmi +Kb/LyelS28noOlRy4OaSE7TipeqsM0oCSefWtFCdtZMLgY+taMbHaPzrJMJIl344qUA9RUBweanj +B281S1Iew9DzzTycHimqO3enHir6EjUL56cU5hmk3YprN6Uk9AHLS5FIOmaUc0MBV4zik55p3rim +nJBpNAGaaSc0opneoe40DMe9VywycVJJxUPJaqTsVYvWwOa00zis22xWjH2rvpbHDW3JB1xUnIU0 +mKH4U/SuhbHOcN4uPysT715TfH5yRnGea9K8XynJHbmvNbtlLP8AU1cNi2tDKl56YqA81PIRyPSo +1MYb94CRtYcHvjj9a0RmxmBSHrS0daYg9qciA/M2RGCAzY/zzSAkYx1zxSUAP3QZPyELn17fl/hS +yoq7WRtyMOOOR7Go/rT5PlEaf7IY/wDAuf5YoEM4pKWigYopCc0Dk4zik6UALj3pDRRQAccUdqXF +FACUetH1paADjFGeuCaOozRQAAZOKUjB4NJ70c9qAF59ad2NMB5pQTQA/wBfpTlzgc1GD1HrTt3G +KQyTOWPSndR17VCGIOe9PDgfiKAJlYbc5p3pg+9RhlNPQKcnd6CmAuDgdzS52988UhcAcfnTDnrT +eiAV25yfwqM9R9Kex6c8Dio2ODgd6m4xT68d6TnkHrTTnI9qCcnd3zTESNyRyenT6Ug4poOfyp3Y +evekAZxyeacvzsQBlj0xTe2OmDSjcPmGQfUU+oC9Bnr2qTAxnpkUzkY/HNOy2NqnAI5pBYeWUfcz +jjOT371dlz9ktJB13zjP0GaoAlhuPXOK02AFjZEYID3X4HYKqO4PZn1YlcP42x9vj9oF/ma7hOtc +P42Gb5B/0xX+ZrCt8DNcP/ERy2eRxSPgj0NHbNJJ05rzl2PSZDuwcUnfOeTTAfzp2DjFU/IAZjya +YrrzzSycCoFU/ShWtqLqWsAjk03np6d6B0HbApjA9anroMGXg45603GOacccd6X39arfVCHBQw47 +U0kZxzSjuB0zTGH5VOzGB3HFDLkdabnoR9KXJ+grTfYlkX3SRTJMZ4qU9T6VG+3HSrV7ks5XXSN2 +D0rFjBz1+la+vMpfGORWRGa2a0FB6l63baQR+dOum3LjJ5pbdN2c8gAU25BXPp71ild6GrfRmYwK +t+NaWl5Minn8KznPOa0tKxvBPaqr/wANjoq09DsYWxbkt6dKxbnDSHHfmtxAv2YY9K5+ZtspxxzX +FH4FYvTmZqWTlAOeKdf3ZC4Gfes+G8RRyQKbcTxSxnDU6as9TOrqyjdv5i+/865+YbX9q2mYZYHo +ao3EIY52+ld9N2OOaKQfHH51ctGDE5544FVvJPpmpLXcG44q5WaJjcnnfAx165qFipGcc1YmjLA4 +5qowdOfWlFIL6ERY9+1OVyetNPU4pA2Mdq0sQaCbdo55psqHt+FQJKy8VJ5mST+VRZobK7qSCMdK +rk9qvkbhz0qnIACfStEzMjJA4pM4pCTSVdiLjsg0oUZGO9MFSxgYyaGNak8cK5Ga2bGRIipwMe9Y +5K/Lg4wKcly645rGUXI0Tsdh9qj2jp0rD1OUODiq8NzK3PWo5ixDFgenHPSqi+hLiZT9aZUjg5NR +1qjNhQKKKYg604cU2lBxSY0WYyBjNXopIh1rMWTGMVJ5uR+OaylC5qpI2xcxAAKOlHnjHTqM1iiQ +5z0qyk7tgZ4AqOWxV7mgWVgB371BJGrnnpioxKygZXIHb1prTl3JOFB7L2oSaDcr3MKociqoOK05 +QHHHOD3rOkXaa0g7oh6MkSTGOlDTkZx3qOPBIB5qyLXcMjrjNJ2T1KV2tCsZC1KuanW1PGasrbhV +555oc10BQfUplcY46UBTmp5QAeePao1yeelK5aiSRBSwJFbWmwwSNg9e1ZMQAI3dM1pWsqRsD75r +KWpdjbh01S7NnPNF1pyAHGM4zT01KAR4yMmqtxf5B+bp0oTVrmdpNmLcwhWI96ovbZxtFackglb8 +KIUywyOpo57F8tyCzt+2K24olUD0plvaopB/nWgI1Ax71PLzajbsNCopGfWq900RBB9DTro7FODy +BxWFPdMTgt3quVpELUr3TBWwORk0+CVWwCfaq8rbvemRNyMevFO2hadzbCnYD+FSwzCPO78KZAN0 +XPsKp3MpQntjNZ7jZZubsZwDioY9UYDb6ZrKlnZ2yTUIkIyelbKOhjoXbu5E/XvSwReYMYzWeNzn +j2rZ09SoUkZzRPQEuxCtrhicYq7BCM896viJGGStVpVCEtxkdKh+8UtDe0/yFTGAMVk+IWjYEL6V +UW+kjHynOetULy5aTBY9etOn7rJlFt3KCKMsxpHUrir0EaOp7d6rzggkn1wKtSuxaogVmyMd6vR2 +byrnBIplrEsrqMcV1unWSFQvBqZS10K9TBg0psbsH61cWz4xjoK6prOBFxgdKpG364/Ooae7GpKx +xl1bFXPHHNJHCD+WK6O40/fyB3qOOwUtt24NJyKSVjEW1YZIqhqMBiIJ711q2IVtp7Vj63bgYOOl +XSd5GdSxzVApxGDTa6jAs2jqkik/lXe6csE9uo74rz1DhgfpXW6RdMka88be9YVI+8maxfu2LGp2 +iDB96WxsxgkUy9uQ4xkevNXNOkQJuB5qWrod2kZOuKYlXORXMKw34966zxI6PEvQcGuTtxmVR6tz +XTBaIybbPQ/DsQEEf0FdFgkL7VnaJAFt0H+yK2QmMY9K76b0PKrL3gjLdDUys/Hp0pqKDzUyp0Iq +jEbuOKrzPt6mrZXAOay7qTc20c1UdQatuMaTccCrttCoALVVtoT94+tXl4OOlOXYV2y4ig8YqR8I +DUEchXAzSTy7hWVrs10iihdzAtjNJBxyPyqGUfOSelSwq2fQVvZWObmdy1uyO9QS8EDip9u2oQpe +Tk9DUIrW+pbtFGBnir69KrQrgZFTSMApNYy1Z0QGk5pk+xIy3tUfmjGc1m397kbAapRbY047GXe7 +rqU46CnJb7AMVLCg4JHWrG09QOM1vfoYzUVsRIqdMcmrUajOKjVPmOB1q3FHt5qZMUVZXJFUYxUi +RMTy5pyICRU23bWbZQiQop479zTLpgikZ7VKCQKzbuQuxX1oirstuyKyqZZD6VcWHABpIIlGParR +wBxVt9DNRVrldyAMe9PgXJzUTnc2PSrcK7VpPYIrUVyBim9896c65pqqSanoN7js4HJo384p/k7q +PKAxS0CzAZOBUy8AUxVGRUuPSkxpB2ppAAJpdtRzNtGKS3KY0A5+tP2E896ZGRU7MoWm2EYp6lZy +AMGqzSBe9LPJ8xFVGLE5NUkLrcJGDHHrUMmFXPpSl8HOeaq3lxsjPvWkU2yZSVjBvmeeXaG4zWtp +1uFUHvWdBGJJA3vXQWseABWtR6WM4x1LkXAFJL0zT1XAwKawbGKwW5rLRWKTyYIpwlLDFNaHc2O1 +TRQFferujNp7giFmq4qnbUcMeDVrFQ2NIrS9qqzfcPParkuPzrPucqpxVRCWxDBy5zU7bSeOarwN +61cjiBxinIUVcSNWznFWtnFSLDgdKVht9qzvc0cWhFjIAzUyoelNVsgA1JkGpY4aMjkHtVWUcEGr +MjAGq0rriqiRPVmPcxbmxngmr1nYoUyRzUTKpbJ5rQt2AWrk3YIySRG0CJmnKoA+nepnAIBqMdKk +OoMuKiIXr71Pj5aiZB+VCKmOR8d+lMmnB4oPFVJmIOPWqSTZCbWhIg3E4q3GuAKrQDnnvV0Y4pMH +oKcce9QuM8CpCw3fSmDO6kKO5PbrgCpGY5xSxY24qJ+CandmsthjvzjNRmYLxTZB83WoZRnFWkjF +tkVzKCDWY8hJCVPcnhh+NUlznB65reKsjKTu9Tass7Mc9KfI2CBTbQ4jGPSnHBYVi9zWK0JoTgCn +yYApEReOaWUKo981PU2S92xTl+bNS2YwRUTDJNWIBgVb2Mloy95oAxURbmoG3cZqTBrPlsU5N7iy +/drJuI2VlYelabkEYFVplUg/Sri7CjG92RQKHxn8asvGijI7VTWRYyOaSW7z8o/Cm02wg4oJG+bJ +6ClDfKO/WocswzTmdQpxVWJbu9DD1diWwPWotNbbIBmnag26TH1p1oFDAjmt18JlNWZ0cWQoPao5 +pxgjNN83ZGp+lUGlaSQfXisLdTWMlsTEndu9e1IGYOB61MAg+8elRSsCCfarTM5Rsr3HZAwBz605 +iGwBUSEMPQ1LFgEA80MVN62ZGcqPSrMMv8J4pJI1+96UwfM2OmMYNJtNF8riy/gMhwOMVQlbBI5z +VyJiBtJqtNGd24Hj0rLZm8VeIRSYIDVPuHQ+tVguQT709CeM/hSkkyo3TuTKSCMVbiOaqDpmpY3x +xmvHxNPllc9vD1OeJb9MVNGDgVXB71OjDiua50osJ2FTrVVT71YQge9S+4ydc45p2MYpit6U4Ek5 +peQEg5NL3poJBp/vRYBcZ69qZjnFP4FNx3FK1xjTkGo2GTUjDjNRZPY8VD3KQwp1OahkBxxUxPWo +ieDUyLRWcHH1qrKB3q25HO2qshJzmolYtFCb5fpUMZw2exqeQAnmocbWzUPUstxjAHvWlGTtH0rN +jcEAGr8RIAxWA2WOmPzqwjHioBzjNPGRWkdiHqWAxFOU5zmowQeD2FKp59qu92RYe2O1MOART84/ +E0hw1NWEKuCMml+lChcYoODSYCj+lNyQDnpQSABikyDxSuMTce1JnJox3pOQagYyXiohyPenu3NN +UVaQy1AMHitKHcaoWwyR6VqooAGK7qK6nBWeo7npRLwh+lOqO4OI2+ldLOc818YsAxHXivN7nk59 +a7zxjIDIR35rg5yuT6inG9jWVrGc5/xqP5cD1yakk61FWqMmFGaKKYheKOmRSUcUAJTizMQWOTgD +8hSZGaKAHRyeW24KrZVlwwyPmGPzHam+lFL1oAGABIHOPWk/+tQSTyaSgAooo4oAKKKPpQAUUUtA +Bijp70Cj3oAKOKPSlIIOD1zQADrRRwB9RQODQMO9LnjA74pKVcdDSATjpTvTI6UnTB6UDPWgB+ce +nNOUkHio/wDOacOmKBpEu4HNGffntTBS5596AFO4cGm5H5UEnqT7ZoHBOeMDFABkGj5aTHORyKUA +DqeDQkIPTinALikAB4NOKovT8KLANwKdnJ9SeaByc+nagH+dMNRRg+3X8KeMFsnCg9cf5PWkU/KR +24pypkqAudzbeKWgAACeM496vMJhawIwwh+0Oh9fkwaggiRpCDwMkflWhcjNlaY/g+2L/wCOU09Q +6H1QlcT40/4/k/64r/M120fWuI8aHF8p/wCmS8VjX/hs1w/8RHLYz2pr4A4p/PAH5U1gMV51nc9I +psMHHc08AdQaGI3HNCjNNoOgSGoQvQVM6lhimBMevWqvoStw9KSTHHHGKcduc0hB9alplIYMijJO +aVsjg1ETt5ppvoJonXpimNmmRvkgetSuD2oa6gR8jkUoBIJBxTSTwKFZunvWkbbEsbjk/Wo5sbf8 +Kmbk8VC5GMfXmnqJnIa2TvNZce7itPXB+94rKjz19q36Ew3NrT1yAD3qLUU2nA7ZNLp8gVgeh+tO +1NlOT7VnDRsuWtmYjZzWrpY+ZevWsvg961tMXLqP1pV/gZpR+K51JkUQH2Fc3O5aVsZxk1u3AP2Y +gfexWAEJdieTnFc1Ne5djv7zJ44kbaOmTU/2KDBy3Sqx3RKGFRyah8mO+OKqKbehE7DZITC7HOQD +xUJKHOelUZ7uV269/wA6iE7cZNdKps5XJF9RETtboRTXiCYKjIPpVHz3zx61Ml1KflPSq5JIhstR +zDG1hgiop1Vck4JIqB2c9BjBoWQkbWHWnZoVyF2JOQD0pqn1FWGji6j1qIIuOv5Vd1YiwqjPQdqk +AY/iMYqMELx196nt9rNk4x6VMnZXKS1J47Vtg3DrVS7t2jHSt+1ZCu1hjjAqpqOwDpShK7JkrHPE +FTyOlNqd1zyeKYQBW6ZnYYKlU/Limjyz1pyxlj8uTgE/gKGxoYXOetCksRQ8ZQ/yp8JCsGODih7A +tzc0+2GwbutJfhFUkdaiW8VV+U4x0rPu7mSUnJ6VjBNlyK82CeKhp/PNGzg1utDJq4yinEYptMmw +UUUUwClyaSigB4Y1PG4HXvUIFWUjLAY5rOVjWJbToPpTJAhBOMHtSxh16+lMmbDdaySdy2xI3w2D +zUNzuJ+mcUbwCPenk+YelUtGK1yrHuGcY54NXoZWGM9qBYSMoKilFpOo5U0pSjIuEGixvU4Pc1aC +rgY9KpwwvuAParnK4B6CsXvoaMzbkHecU2NXIx71ZZSxPfmprW3LcAVTmkhxg3qMRCceop7IyjIG +PetqLSyVBx2p7aS7KflqVJdCuU50yv3PajzCc8mtC40uVOQKz/IdH57U7oOXUkRGbJGfrVhY3HPt +U9pbs+MDvWgbYoOlZuWpdtCvDP5agHrUrXY4Ge1QPCQB7VQnLo3FOLZEoIsXdyScHj1FYtw5Ykjp +zmppZGbnNU3Y8itYIxasNDNnrVq1j3MCMVUG4nnsa0bc9AvX1qpuwRNiFdsRzWNfOcnn61suwWIY +44rn7sMXOM4qYIHqVXfjHr1pi8n1pxRiPWnJE2c4ra6SI5W2WLaAEhjWzCyRqDxxWPEJExnPtUpk +k4HPBrGWrNVGxti9RcHPAqhdXWckd+KovJJ0zTEWQn1BojoS1ck8wuSBUVy2DgilKEMDziq87Mxq +orUUtCRLllBFI828gnrVQsacnJGa05UtTO99DYsGAOfT0roLW+WJRk81y8LlVqYzsuOfaudrU2to +da2rI3y7s/1qWCbzMY71yELSsQ2TjrWvb3rQgKxp7slxVtDpI40bOcUnkL5mR2qpZahEVZiRUkd6 +jyDaaqysRqmWfsxxmue1yHKnA6GupSRWQmud1vbhiD61cIpK5LldnDXEe1iPeodpq3OCztg85zTP +KPXrxV3sK1yDoa1rS4ZI8DsOKzGXGKkSQgUpaoI6GjNclsVoWlwViGDXOO/SrcNyVQDpjvUuLKvc +t6rcmRSB26GsuyVnuIx7ii4nZzg+1XNDiaW6XjOK6KavZGE3ZNnpmknFugPpWwo4rPsItqJ9K00X +gg12pJI8qTcmKq56VN8qjNNDBfrVeeUmmk2xaRVxl1Pwdv5VQhieVyWH41MQzEcfjViNQK0WisZO +7dx4TaMCnooHJp6rxnvSO/aoNEuVXY1yOgOKhLE/jQ5CBsnnBqGJizZ7VSWhHNd6lgWxbBPSpFjC +kcd6mVgEoXDVN2OUV0GuoxUEahXzViRuPwqIbRmjoKxZVhgVDNJu4ppkHQVBNIqDJNJLU0voVbmc +xZrPjzM+5uRmppczse4qeGBUUDHWtlZIjVD4o1wKfIQowKkAVVxUP3z+NJEPsTWo3HmtHauORxUN +pEAKueWMdKyk1c2V7WGInf8AKnY/EU4rtU4PtTBnrUjS1I53CqcdaywDJJn0qxdyEkhTSRKdufWt +Y6Izm7semOgp7sACAaQJimSYpbskbGpc5zV8cKKrwJ371YbpSbuy4qyGMc0+FdzVCc1YgOMUpbDj +vqXkjUCoZQM8VJ5oxzUMpDYNZRTubTatoMBwee1KX5xTBinbRVmSuSKeKrTHJq0AMVUkxkntRHcJ +Ee/H4VG9xk4BolPynmqeMt1rRJbkqTJS2c5qN+aAe1LgMaGWldFUp3rG1G4O7YDxjpW9PtRDz0rl +528yY49a2pdzCotS7YICVJFdDAOKytPj2qGrbiCkZqKjNKeruO7UwkAHNPbFRS4AqEOT1FRUPapN +igVVik5xmrIOcDNDQOXQkQc5qVSeaaBgcdacucc9aljjuQzbe9ZN4Rg44z3rWl5ArIvOcCrgRN6i +W4zgmtCLHGfWs+IKcYPTFWVZhzVSVwhKzNPeoFQSPmoFkJ607nNZqNi3Nsm3HGB1pwfA5qEe9Kci +hocBrMxNRSYx71LjPPWmSbARk1SIkrsrbfTv1qeFCDntSogJGO9WljGB2obJ5GJnimnGcetK4btT +ePxpDQe1NbBpQc0YHWhDkIiEjnmo5YsnI4q5EFwM0yVUBo5tS401uQIoUCngsKMrzilZgRxTRlPc +YTj2oi5NMcknpU1upzQ9giWwnyj6VCw65qycBTVZuvXtUI1mV3UE0eV1pXIyfagzKFzmqdyIpdTG +vAELGqCM24cZ5q1fy73IHc1XhGGUD16V0x0RzTd5G1bAhAfahyQwIp8GPLz7VGT83HSsXubR2LMZ +yMmnuQV+tRo3yY9aAxIINSzSD1sIgy34VYAC1Ei85H41I2OBQyXuTKAw59aSUBVNSRgbar3TYBA6 +1KepfI7FcyAce9VLi4wwXPSlclVLE1gT3v78gt3raMbkuXKrGpMQxFSwRKTk46VRScOAPyq7BIyr +71Uk7GUJK+pdMaheBWZdNgEA4zV7ziRzxxWXdt8xz07UoLXUJsxrksZRjmtC2UCP8KpPBIzB271p +RRbI/wAP1reTVrHNFSlrYDPwwzj1pttveQE5xVaZ9hx0OTVuw2kiolojakrsmuGKMATx2oRdyk8k +5qxLCrkdsGpI4QBxU8ysNwb0KI+VuOBVnIABHNMuIeppkRbjn0p6NENOLsyzu3KBn2NNVWUjnpil +QjPP4VM6KQOxrN6Ox0r3oXJFBxuHpURYc1NAcgg1XnwjH2rN6sqm7IcrLT3VSuaqebg896e0j+ne +jlL53sWEI6HqTTxkGoFJPXr1qXaeD+Nc2Jp80TrwlTllYuRk5HNTLwTVSNlGAetWFYYrx5I9hFpN +pqZc9D68VVjIFTqcnOallIsqR0qVarJxVgHIFIZKCO9O7YqMZp2fSkIeBx1pPlxSDB+ho+lJ6DGk +nB71GcEGpDntUTYzwKl3LQ09Md6hOMGpeO9ROMZqdSkV3IxgdarOexq04z0qnL1/GpLRUnxniqx4 +OfQ1ZlwD9RVY4J/GsnvcsnRumavxSYC49KzEJfir0S/d/CsZaNlLY01ZTinlSeRVZG59qsq2eM1U +HoQ0SgdMmnrwKYgz1qQLWq2uZsO/NBxj0oJA69qBzQIFOB7UpOaAV6U48ULUCJywGDSZIxUjY6mm +gZ70nYdw5ppqbjHpTcK2aLILlNzz9KI3yafIuOBUPCkGnHcroadseRWmjZFZ1mN2K00WvQpbHm1f +iHd6huyBE30qbviqt+cRMfatnsZrc8o8XsfNb2zXDzs25sfSu38VzQu5H8QzXCz5Ut0zinDVGk7l +RySaj6U9iSc/rTK1Rkw5oopKYhSCMHHFGDRTsfyoAafWkpSCKSgApaSjigQtFJRQMWko9qKADilJ +Y4zjsOKCrDBPcZFJQAdKXJzxR3pKAF55o5/Cl5Xt+dJQAUuWOASTgce1J2ooAcV6H1NJmpVDSQvj +AEXzZJ5OSBxUNAxe9HPpQM5qTbnpzxQIaece1J07U4gj8OKbQMcM568U7JdmJ6nn2qMA9KePpSAe +gJwfepkjKnJ6VEmfrmrABPaqQPcjaPnOKiIA9qtqFxtP51DMAp/WhoEyAk4H50oB4PYdRSHnk96c +u3ByOetLYBOntzTvm449hTcjHH5UYIx7UtwHEj3z0NKACBnNN/8A105c9+PSmA/1z79KcMAhlOQC +Dg1H6YP5U8lTkHOBkDH9aQbji5TpyP1rUOf7NhJPzFrzA+kdZHPODmtVyP7Nt17j7Vk/8AqluJ7H +1YtcP4zb/iYJ/wBcV/ma7hK4bxtxfrj/AJ4r/M1hW/hs2w/8RHMZ5prZxgd6N2KaTjp05rztb2PS +ZCy8880KTxn1o3AtntTsDOR0oa1BD+SaYRTiU60oIPFNS1FYhbb0Gc00cHjninvjtxzUQPaqvqIU +85zVduD9TUxIBOaj4PNQmUJGOd3apcgjmo8EDIpwJ79auNmJiMcEA0gJGaRxTA4weOapaMlkjNjH +PWq8hA4+tTEAj3qtPwrewrSKVyXsclrTlZsDjrWahPy+1XNXYPLx71TiycexrZqyIg9S9b791Pu9 +2wnPals0PBI5NF7twRzWUd9DTYyuQa3NKwCCKwzgN7Z4rb0kgFfWpxPwGtDdm9cMfI247c1hLuLE +e/St+dN0YGeSKyTCUc+lYQvyCv7wXKfufoK5qWU7+veunuNpiYA546Vy9z8jk4w3SujD9mc9bRkZ +ZeQBURek3U2uxROOUiRTk/hVmNDjOM1SUmrUIbHFTJDjqWUZuh6GmNuQ5HFTqgIOcUNGCMgjFZXL +sVC8jDHoKi8w/j6VaeJhn5eCKpSA5zWkbMhuw4lfXrUyPsI6dunvVPJ4pytjGKpxuhKWpspdfKOw +FVrm4Lkk9KqiZgPT2qJnLGojCxTkSAqDzzT8Kwx9KZGAepqyY125X06U3uBVZFBOM9Bj60xHZGyp +IPI496ldSe3PeoSuDzVLUl6Ejvu257cVGDg0uO2aYSaaJbJN7dOlIvJ+tM//AF1LDjcKHohrVkwh +HXtTXAXPHXpUxePHbmqztu6VCuyiM9aYRUu09aawrRMhojopcGl207k2G8U5RzSY4peehoBbkgbp +ntVuKZUGaojNPB6Z6e1RKNzRMuPcKQccGq7Pk8/jTCG60oQ81KSQ0LwelW7YA8evWquCoqxbMAee +3NTPbQ2prU3LWHgEGrTRNgAjn1qtauoAP4VeDEkdK40+502IVtVIBIxTZ4AFGK0YthBU9aguIz07 +U1LW5NruxRgs1c5xW3p2l5P3RRp9oX28YrqbK3CADFZt3epq9EVodPAHSrQskIHy1qLDu7VJ9nOK +tJpmLZzN1piuCQvPNYc+gTMeF+tehC2HcUGzU84FWw5rHE2mjmPbxV06USvIrpvsYGMCn/ZsjGKh +R11CUzhbvS2jDY6Vzl9AyMeK9SurHcOlcxquk7gWAwwFacoRnfc86mXZVZsE/wCNa+pWkkRbI6Zx +WV5R/OtobGU1qIYzng9au2oKkZ7VWVTj14wau24HAI49BRNhBXLDSM4I7Gq/2dmY4X6VpQwqwwet +adrp2R0rJzsa8hgW2mtIcbea1I9F4GR2FdFBpQUggelXlsn3HjjOQKnmctx2S2OJudN8kH5elZTR +jcRXoV5p29SdvNcZqNhNbsxCn2pq4b6Gc0R4Jq/p9uknGKqxrK+Bg1rWNvLGysV4ok3YOVEk+j70 +JUYNczfWUkLnKnmvRbZ0ZAG4qjq1hbzIemea1pyVjmldOx5q2cmheDmrl9ayQyNxxnrVI5FdCd0Y +PRlyKQDr0pTKGOCfrVQN2pQSTmpcDVTNyB4wnPPFV57g7uGwDVRZyi7TUZcOy4+X1PrzWagynI14 +Lto1wD1qzZ3jeaW3cDrWGJGwRmp7ZwpPPIpNWQHXpqe1OtYuoagZT5ZPWqZuGOQDxUB+dxzmnFvq +TyoiETO5x6mtFLIGLOORVmyst/zDmtRbPYp49aXM2waSVjjbmIoagU45/WtrUbfB6d6x5VKg9hnr +WqdyHsQkgnPfPSpQcDmoeM0pbjFW0RcaSSc966nwjbNJMW64rl1GSBXpXgywMcIlI681vTWtzGq7 +ROttoQEGamc7OlDOqrzUDOX5FdUVc8yclEDJUTNkhRzzQ57DrT409a02MtR6R4FSqmMU6NQcYqRi +AOuazbNYx6sYzKoxVZmUc9qfI3Ge1VJ5CRhe9XFGc5Nsgubjkj3ot5COtJ5Dfxd6UbYyfpWmlrIy +d4vUvrITirIZQnvWfFLmpyzsMD1rNo0jcHl9aRGDHmnGIkc1FIUiU/ShalX5R0sqoMk1l3MkkrBe +hz09qWV2lJwe9JBEwYE/StFGyIUtSxBGAAMdqtKMUiAd6ec444NQym2yNufrUlvAc5IqW3gaRwfz +rUFuFHSolNLQ0jTe5DFGFGKlXOTmkII4pRwKzZSB+ailKoh9afmql2+ARTitQbsikcvJ7Zq9HCdo +NUYMF61A6hQParm2iIpMhcBRVXG5qsSuGqOMfMOKa2JaVyxApqRweacvyjFG7JrO+tzRrSxAEOam +G0DmkAyakMeRim2SkRlsnANBLHjIoMRB61BKBGhIJL9AT60eg/JljIAp65ODTeMCnqM1LKitRzn5 +Sapu27Ip1xKVBFUvOBJ5q4oiTuyWUADPtVKRiOBU7S5BqLaG5qkDiiIOelS71IXjBAwSO9MIwTSE +YGTxVWE5WRT1K4CoRntWLAm98j1q5qL7nC1Np8I64rZe7Exvc0LWMqF4/CtNQNtVoQQKs5IHFc8t +WdELKIGq82enpU4NQybjn60IzepBGuc1biByKrqpyaniByCapsVtS1ngUMeM4pVwTTZSQD9ayNo9 +yGRsisi5AZ+K0ZGxk1nj95KBjqcVtDTUyerHwJ+VXEjB4qGDy8dDnqKvpt44wBUykVCCaGCID61E +RhqtOQKrMRuqU7lSilsLmnKM49KaAM5FTDpQxx2IsYNQTelWOmeaqz8ZqombZJbt2NaOV2isiKQK +eTV1ZhjOaUolRnZDpCCSahzzT2cE/WmkmixKd2NI7/pQWGeKXOTTCTuwKEEiZZNvWmFyxNRyZGDT +FkIHPWnYqMrIkG8tnPFOPc01XBBNIXJFMyuL7H8KtQdaqo28gGrkfGKlmiLLAAVVbBq11XNQcHNQ +i5lR1B+lULlmQEjPFarbCD61nXqrtJ6VrF6mLTexzs0jea2fWrFvyy85qtNxLnpntVyzw5GOoxXT +J6GEI+9Y24OUANV5jg8dBVpBgVXfkn6Vzrc3WiFikJGDUyYYg1UjOGwexq9EvINEhxdmShCBuFQO +5ByfWrMrbVrOkk5NTHUqatqXBOFXrVeScSMaovcEtjnGafvCjNVyWY4z0uRXs6xxtn0rm1VpHPfJ +q7q90rfKMZqCxRiR1x6VvFWRjKWly9axEPk81qRRA5IFVkXaVz+ValuFIFRORNON2QyKVQmse7G8 +45Nbt0E2kVklOT3pQZdSFiGGI45qdiqqc9qj+YDI+nNVbmeQAqOtXytslVVGNrFe5G5zx3q/Y4Xa +e+ay0lPmbs/dxitW1IGw+wyKua0sZU6mt0a7LkBgOKjDhc5qeIho8darzIM4rnWujOqb5dUQPLvJ +z+FQM2x+uOMmrotwRUFxE21scGtE1sYSjLcFcnBqZX3kVUt8g4POKsR8MB6mlJIqlJp6lyNME4PW +qt38hOavIucY7VUv4zjcayvqdDjYqKuST2xUyYJAqOFgQQfSpVHOenFN6MI6rQsAALQpZc5zilQj +B5GadlSOaykro2ptLUQMM57VYRgfyqm+c8U9C2BXj14csj2qM+aNy+hJ6VYjYdD3qpGflqYHrzXP +0uboto3IzU4bpVWI+tWVOaT1GTKTTs1GDUg5pJgSLig4zQDSMRSAD8tRnBGRTz796aeDx0oa6lIj +IqNwB1qUk1E+Tms2Uiu/B9KpyKQautnrVWSoepaKE3Jz0qq3y5HtV2XGapSqc/SolozRbElsAfxN +aK8EZ/Csy2f5wuO9ag5IrCohomQMcVPF1qKNsPgipRnmrjYmRYTjPpUoJAqBAcGpFLE4rS9jNq48 +gc0nP5Uoxk0HnpTuITkVJ1x9KZ0I3U/r0oQMCjEUwIR1qUNxTC2W46Gk7Ari9sU04FPIBNNbNK/Y +CFqr7Rnmp2yDUQOWBHNXHe5XQ1bMbRWitUbReM1fXFehBaHm1NxOhqhqbjyW+lXXz2rI1gsImx6G +rexEdzyXxMf37bT3rkJs98/Wun8RP++bJ/irm7jae/TpVx2LmVc03IwKPxorQzEopaSmIUU5aZTx +0oAGxTeeKU0lAAaSijigQdqKXFHNAxKKXvxSUCF54pSV2gYO7JJNJRQMQUpyOvX3o70daAFJyMED +tSdaO9SK4X5sBscc96AIx1oxRzxQRigAGTxTsNgn0OKbSjHegY5cDtmpRjuOoHFRqSeB0qVg0TMp +xkEg49qLiDacEHr6motvJ79ak3E8Y5NM4NDATGf5U7GeSe1KpApeM5z0pFDlJB/HNWdynbxVQ+xz +kVMnPA7d6pEk2QCOelQzc++afknGfWopSMj2GaLsCNuppBkdKXrkU7bnp0zSGJxnikx61Js4JHHv +QV2jOetLUBmMYp3y7wSMrjmmjGKcu09cgYNCQ9h2SAcnjijrjjGBQcgjJxwDmnK7IpXA5IwT1GKA +EBHANacqMNPt/reHj2jFZvBIOMcCtSUbNPtgOpS7c/RkwP5U47/12FfQ+q06iuH8a5+3qP8Apiv9 +a7hMZrhPGmTqI/65JWNb+GzXD/xEcv8ALyD1pj9Djke1PPXA5oI6156XU9JlbocfWpV7Z496aVBI +I71IFGMGiWodBCM/SkyQfpTi1AB5PrUoCKTDY6c1FsYNzkVZKqODTW68VegiBl9s0xhjAFSkY46c +03pkHnjrU7MfQiBPf0oCnJOafgcc85FJtOeeDWi7sQyQsQKhyV5HrU7ck9eQRURj4Ap6kiAknB6U +yfbtJxx2pRxnNRyH5QetXFEs47V4ysv1qlFtyDV7WGLTdMcmqMYHGa3buiYaGxZjjp2qvqBx04qW +zbgfqah1DBOBWUC29TM71t6WuSo5FYmQG6Zre0n5ioPrmpxPwGlDdnQOMR564HSs6WRSx4Oa05vl +i/4DWJK3zgehrnpv3Qaux0inyyR+Oa56+UMxI49K6RgDE209qxJrd3c962oOzuYVtdDFZCtIKvTQ +EcEd6rmIiu5TTRxSg0xqLmrduDUSIe4qwpWM59BUTdy4qxYI9eMCnIobpVVpwfr0pVuvL5NRZlXL +EpAU7j1rMm25PrU892HGMVTZ91aRRm2hhpKU0lamQoP40d6KSgB6nnIzVqLe3AIx3qsn61fgVfbv +WU3Y2iLtYg8ZqlIuDWu6gLgAfWs6ZCWPFKImVxjB5prAZz604qaaa0RLQypo+AfpxUNSJk05CjuS +/wAqVYwcDvUkSg4rQgs1bDcZFYSmom8Y3M14n9O9RbckVtXFuFHSs4xEMT0FOM9Lg4kCxMSOKnW0 +dgCFODU0SAY4+tblisG3DLUSqahyaXOZe2ZOvpUPlHk11V3awNyvesGeEIcds1rzEJJlMJ0BpRHz +68VKIj171IsbLzSci1ARUGDj6UHAApwyeG4pxiDHjpxU37lKPYrtz0pw+Qg98dKsrZSSFcD8a0od +Cll2nGM1LqRNI02UoJ5Fxg1oRXOMVdi8MyHGO1XV8NyLg5rGST2NU0tGVrVy+Ce9aMUBlIyKfb6Y +6NjHet+z04DHFQ2xq25HYWeNuBzXQW9pwCadbWaR4q+igDiqjEznPsRCMKOKcAe9S7TS7Qaqxnch +C5p+0dKXZjpRtalZjG7RRtxTsUfShITInXPFULuyWRSMVp8ZpCgI+tNC2PO9c0VmDEDua4+TTpFJ +yBwcc17RdWaSggrXNXugI5O1epq1pqWpX0Z5qbVw3HQ54qza20mRgV2P/COAMSRxVy20ONOcDpWb +k2aLliYVhp7vjcMV0dpYFACR2FXYNPEeMDpWgsAGKhRfUTmVY4FUDFTiIGpdmOKfjGKpaEsrNbqR +gAVn3Wk284O5Qc1tY9aayiqvZEnLf8I9bJkhAakXTEUY29K32QfrTDEOpo0KuzmZ7V0ztFUbh22l +Wrq54VbNY93ZhsgDFUkiX5nC6hbh92K5+eDaxrstTtHjyRXMXQXccjFawbRnOKauZuOtHSnsPbOa +jOQcVutTnegpagEU2lXHqKLCvqPJNSxsRnFV8inqealrQtPUuLLk84q3aKHkFZYYd6v2M6owPSs5 +KyLTOy0+KJEGcA1Ymli2YyPSsRL8hOo6Uz7crAAHrSTsibNsluoUlPA49RXPapCqMApzit+e7jSI +kHk1zF5KZZCTVx3uIpYptPPFIBk1qjNotadbmedFxkZFev6PCtvbRqPSvOfDVkZrqM9QDXqMSrHG +B6CuulHQ4sTO2g9sHOagdlBwPSkkkJBA96SJC5ya6UrHn7j4om3ZNWkUZNMCEYNTIu3r6VLZcY3J +VCpionPJ9DQ7E9KillCqc+lSkOclsVrmVVGBVSKQNJz0qG6lJJxUcJbdxxXRy6GCk0zWaRNvPb9K +pykyHA4z3pwV2z6GnRwPuG4VKVi5Pm3HwREfnWiiqij1qFEKn8OlKzMazepalYWSQk4FULhWkG31 +q2eme9MC7jnFUtCH7zK6W7LgYqdEx1qyAoApjAE8cUuZsppLYaAOaFXe2MdDS7ckAGrcEY6nrSbs +OKLVsoUZqw7joKrlgo4pCwIFYct3c359LCkkmnH0pgYU8EHrTJWpFJ8oz7Vk3EpZjWhduAp5rH3E +u3Petqa0uZ1HbQsxHuKshyaqIcAVPGD1pszRNjimr1yKk7CnKMYqblpakininhSKjJGR2xSs/FSU +2PRecVZVRjmqKy4NS/aQMVMky4NdSWQKBmqZ2k9utElxmo0Yd6qKsiJSTehbTnrUhHFRRsM/hTnk +wKl7lrRFG8PbvWbvOf0q1cyhmbmqyKGNbLRGO7JEUtUuFA4NKqqtQyyYGAe9Ipsmwveo5cBSfY0x +ZQR9Kr3UoCYB600ncHaxkyqXmz2z2rWtUVQOO1UIY8tz1zxWrCOlazZlboizFn9alzQgxTscmsDd +6IQ4x6VA7YHrUrGopFYiqRkRhj0Pc1Zj4ANVEOGwRV5AMCiQImX3pkx9KcpPWopW6ioW5rtEpznI +PaqkI/eoR/eFT3RwM1Db7t2SO9bLYxW5ND90EelWBKQQKjRBj8af5RJyKh2KVyRpPWoup4pZQFFM +Q96OgyaMHqamJqNATUjLn3NS9y0rRIyTjiqlwCScVcIIzVaTk9apGT1K6qSB61YiGKekORU4i7im +5IOV2IwKM8mnFcHNJgZqSorUbwcHvQV5FJznB9acMZoE9RJFGPeqTAliM1oSbduKqELk1UWKSVhB +uC0c4B709gOBRtbpTItqOiXkZNX0X8qqxJkjtV5eAKzkaxD7vFRsyinSNxVOSTrzSSuVN2BpFyRV +C/lRUIJxmnmbBOTWNqE5d9o6Ctow1M+dIqSHzH47GtPTkPFZMWXcgevWt6yjOPbjmtamisZ0rybZ +og4FQlc85pzfJmoPOGfrWFr7Git1DYA341cThRVXqM/jStPtU59Kpk3Q+4uAflJqgXGSAc81A9wG +c801Vcsc881SjZDlK+xOiZY59aZezLFEfXFTj5AST2rG1Wcldo7GnFczIk7RsZEr+dKMk9c4rbs4 +mCLxjiseyiDyBq6GCMsFB7VrN20C11oWVQZX0Aq2jbPpUfk/Ln0pWHyGsHqCuhs0ofIFVgG3EUEk +ORmnZOc+tC00NZaxuRtF1JqlPDknB61oueh7VXkZPxFaJtHO4xbMnygrAnuea0rSLI9qrhVkJ5z6 +1bt3C4Ueuc1bbsRaPMatv8qj1FE+0niq3m4I9TVgAuoJrnejuda96HoAIXHPSq08qk80+QEZIqAI +ztk1SS3M+ZvREeGXDDjJqZeQD6DmpDEMAVXR/mC9Oaq9yOVp6mhbyg4FOvNpU5qCDgj61PchihJ7 +VjJanVCV1ZmYMIx5yDUyHdzVcYJINTRuFGKcldEwdpFlMZxSybsZHrUSuc5FTghl9TUGjS3QwEkc +96ROGpxHT2qOQ9xXFiad1c9DCVGnYto9WUJbGKzonyCT61dhY4wK8x72PU6FxSwAqzG3SqasMZqZ +DUMpF4YqTiq6spqUNkUtAJADSk9KQN0pcrx7Um2Ahpp4GfWne5ppAahspDMgjjrUUgqVu1RSdOKh +2tqUQNVZ+DxVlhwcVWkA+tZmiKkowc1TlBq7KuaqSA4ODUyXUoigGHX61po+CPpWQHKv6YrQhJcA +isp7DRcU85q0khIx+tUot2cdeauoMClFaaBInjPTmpAcc1Cv1qYEcVpqZsdnrSnjBptOAPFIQpwR +zQGFBJGVxyR+VNUHIqkxDiRx9aBjOeKdwODSAg8inKwIf1prYoFIzDoKQEMmPWq6Z3j3NTSZz+Ha +mRDLinHVj2RtWmNuKujFU7QHaM1dFelTXunm1NxCBWJrnywufatzFYev5Fu+PSnIUdWeL+IHIuXw +ec8VzcrHoc5rc8QvunfPqawGOT+Vaw2KnuM60fr70rLtYqcZBI49qQVoZB/WjAoooAAOeaehjDqX +BK5GQOuKaMUp4/woAmu5beUxiCPy1VeR6nPXNVvSnHFNz2oAUUUlFAC/ypzRSI2x1KttDYPoRkfm +KI45JWCouT/KllkldyZWLOuFyTngcUAR0po44pKADFFHFFABRS0lAC84zjgnrQcdB170UUAAA9uu +KKKKAAUUuKBxjvQAoz2pxYt1Jz60zjpSnkknHrQA9SRj6jmjA70gJHIxyDSt6gdRmiww2j8KXnFK +o5xjFP8ALHJFFgI+fyqaJtvf8KbtAHFNUc5NPYCxuTaTnDZHHrTHw1MyeQKATtcFQcjGfSi4huMg +jpipVxkVF938SaljYbTSQMew25+gP50zA28nNLnIx3NJ29aTsNaDMHIxxSDjHOKUjHPftSckkdqa +2Gx5zg9DjFKMZIxz0FNKkY+tOUD3yc9KQEkZdSQCcEYI9ea0DL5tksX/ADyW5P4FDWdGGaQKBuOc +f56VeCBbJZBndILoHPtH/wDXprcT2PrBMZrhfGX/ACEOP+eS13SVwfjPjUv+2Smsa/8ADZthv4hy +/fPcUh5wPWlPJphJzivP63PRF4BHtTsjkYqMZznrTxzSne4C7eM9+lOHSm559qdkc+tStGBG5NNP +Pelf+VM3cDNUn0AR845NNxg4PpTjjH40gBJzQxjduWApGXoTTiCvzU3JJB9atMl7De9JIvcelPIH +Q0uBjpVWuJsz5AefbvTSdyHJzxVhwo5I5NVJTsBx71a3IexyGr484n3qmmcD+dXNUw0zcVVQ8Y4z +61s9iY9S7bnBz2pt4dw4qa0QlOeCar3nyk55xULyK16lAD5q6LRk5XI4J61zy8sB710ujj7ik+9Z +Yt+4bYdbmxeAJEOe3SsJsk/WugvVVkP4CsGTEbc9u9YR2EP3fLgjjHNQN5OM/wARqKW5GSvTPaiL +DdutbRTSMZq5BIgJAx0qrJEByRWq9qygMO47VVmjbBOCOtapu5nJXKIKgDjPUVBJJkYHXNTumFqq +QCelaxSMpNgAT2A5FSeUSvHahVDDkc5q1GpCYqnIixnMpHXtUeD1xWhKn+zn1qo4H0xVpkWIsUlP +2kjIHQc03bVXE0J3pRzS7eKQE5oDYlReQK0baLp+eaz0kUdatw3QA4rGombQsaRj2r1qhcADOe9P +F4Txn60xlMgyMEGojfqNlFiNowKiNWJIwOKr7a3Rk7idqegoAz/SnJuobHFalu3TnJ6CtyyXcBj1 +/KsmBkYBSK1LYgEBWPtXLN9zpSL17bqUBA5x0rBliCtjrzXQsxlTDMFx3NZM0PJwOvNNPQmK11Ki +IeMetXY3ZKRIunHWpQh5/rWbZry6EM8rAGs2RgT0rWkh3Kaz5bbBJxVqSM3DsVUOeR64q6qBl5HW +kS1bIbpV6KAvwfqaU5o0jAyzCcnaKt2dqGIBwPetWHTg4+7zV1dKkXGAfas3UbWhaikS2OnIADgH +ArctbWJQOOaz7ZJogFIPWtGKZ14xWY2jRjtkABHFOkRKgSeRuADU6JJIeelaxkjPlfUjig+b61sW +0QwKZb2orRjgAos7ik1sKsYAp6qakVKeEAq7GdxMDHNNNS0mD3qibkW2lwKdSYqShpApjCpaT8qB +EO3nNOwacaOKWwyNh1qJog3arBAFNPHNAFV7VPSo/s6j61bpretLoNNlYIVpcc9KmI4pn0pDGFaQ +LTx9aQ1QCZFM5pxH50zqR70IY0gUjYxj0qXAqJlPWgCCRM4zVOWIk8VoHkVXccVSEznr62DA7lrj +dS0zmRlHFeh3Uecn64rn7+BWBGBWisjJnnU0M0WeuKqmuj1G3I3EcgZzWBKpU8jGelbxdzGasRUU +UVZmFOBIptORJHztHQZJ9KQ0x7BlIB7gGnoxB+lNZiFSPJO0kkdgTQp6VLRcWXRcNtFItwQ2R+FV +Wb0qPcc1PLcpysXprtnyM8VWPNR7s/WrVtE7nAFGyGtSvt56U5IjkVqLp7YyRiojHGDgVUHdkyVj +q/CFsqqZD17GuucseBWB4biC26sBXQpGWr0aasrni4h802MijdquxxbelPjiCLn2qRVBxnpVOVyF +EUIoXNRSNnIqSRwBVRieSTxSS6jk7KyFaQJnNUJZGZjzxTbm6HIqsjsx4rZRsrmCd5ErQlscZqxF +aKx4HNPjjyAx9KvQgLz3qXJ2NnGKdxq24RaQhcjHWpXYmo1XnJNSiZNN6DghYc8UjhVFOL4PFROW +bigVrld2PQU6FiM5+tP8nPzUYUE073CziPLbhQAWPFNjBJx19KvwQcZqW7FRjcjht+5FWFQL2qYD +aKesYI5rJyNVArkbs1GQ2eauNGFqJgCaEwlG25Fg0ZwCTUhGKguHCqcelPcFpqZt7ORn0qrEN3X8 +6ZcN5jEe9T2qHjNdFrROfeRbjiJxxU6JjrSpwtSAE/lWbZbSRG2QRinKTRjrmkPAOKRUV1EJqMyc +4o3HBzUX3mOapIh6khk28ioHlZiB71MIzxTPI+bNCaG00hm5iamAPFKkPerHle1DYkrhFnFJM+0H +J5ppOzmqdxMSMCpSuy29LEEmC3FSKQuKgBYninjIz61bEo9SSR+MVXYMxqTBY5zT1QE5ovYfLdlX +BRSazp5TI20Vo3rKiGsmMGR889a1htcxmmmaFqnQ45Faca9D61Vt0CjJ6nk1fhXGKzky4aslA44p +pFSYxTWzis0XMh6mnP0ppGKieRsYqrEJ2BeW6VcQYH5VThOTVuPniiQ+pLxiq7tzzVllAXiqUpIz +SirlTdkVLkqzfzpkaelNc/NnNSRsRWvQyRbhBOBVkAY5qkspHSnNOx7/AErJpmsWkLNgjrSRL7U0 +FnNTqpwKYmx6ce3NP478UigEc0j9cVPUu9ojZCKqk5cVNMSFNUSSD16VcVoZXszUh2tUhwAcVnxz +kdKsq5I61LjZmnOmrCMeTSLilIFAFMiO4w8GmB23HjrUmDmmPwc00TJakbv0BoQDPHSq8jNv4qWE +sDVW0JuTADdUwjycj2qMcnirEZAGKhmkLDUG01Yz8vNQ4y1SZwOtJgNlbAzVByWOKtTsNuarxYZu +aa0RTjzMrzQlUJPXtXP3J3OTXQ6nIsUfWuZLpI3v2ram3uZziloSW0Jzu5OTXRWcbbR9Kz7SIYH1 +rbhTC4HpSqyuFFJJoimHGKqCElue1X5EA+tQDIP0qE7IFq7MNpAIHGKyb6425A/GtS4mVEPPaucu +GMzn61dPXccoWJICXbdWlGAQPWqdnFtAGK0hH0NOTRCWhDOMLj61hXycEdc5zW9Pgr9BWJcRkv14 +9KukzOtFpEdlCc9O9b0MXAz0qhaxLlRjmtmEKFFKo9SqK90nRPkP06VA4OGBqdWIyKrXD7BmslqX +sUZAwepEDH5ajkbcRirMQ6cVT0KjZ3Qx14weMVnzht3HHJrYZGIOPTpWbOh3YIq4yMJxKUUbBuec +1O26M7uwA4qzFEh7dqrXR/h7Cq5ruwOlZXJrVvOcZrZVV2YPasjTlIPJz0xW2q5UDPWsqj1NqPw2 +KjDPBHFRqEQ1bkjxVJlbcc8Z6ULUn4XcJZBjAqsUP3jUojOeTUjR/KcelO9gd5aklv8AN2qxMfkO +RVa2O04z9asyldhBqJblw3MOV8NhegNTorNhyPSopY/mOKlgZuFB4q+gppxlqTLgHuc1Kpxge9Nw +VyD0ppJHFZNam0ZXRZfI6fdpjpwfSkBYjBpAzepxWU43VjopS5WRoSp/pVyJycVRclTntmpYZTxz +1rxai5ZWPbpvmjc00bt0FWE7frVBGbjHSrkZ7Vmy0XIm65FWFPFVFNTbumKnYZOCKcM1GuR+NPBy +eaTCw44pmTT/AK03GKTQ0ML+1RMe9SkVE/8ASp6FoifpVeQDBPep3z61A4zkVL8ykU371Vk6VckQ +9apyE9BUMu5TckEdzV61fAAHeqjkof6VLAf51lUslcpamrEB171bBwAaoRPgDFX4zlBSunsS1YeG +9alU+hqIDsakA54pp9SWS8AUqPmm4yKaoINN3JJWP60gJoyOtJ15FF9QsPHOc0ikg4xTdxXrTg2R +mmA44yRTHo+tMJORTe1gQjdPelhUB6ac4JpY2wQf1rSna4pbG3BgKKsA84qjbS8AVbVs13wd0edP +clFYviHi1kPsa2hWNr5AtZPoaqWxMdzwfXjm4f6msInmtzX8faXx6msNs559jWkFoXU3G0U7DBOv +ytz9SKbWhkFLxSUtACrS8ZpAOfSloAGGTxTSOcU8EcfzpD/PpQAyilooAe77R5ajAGNx7k1HRS8Y +FACUZpeOlFACc0oPGMUlPRygcA8Ou1h6jOaAG4zQalji3nA9Ke9uyjNGu4FekpSMZFJQAUvIOD7U +bWGCQeRke4oFAC84z/Dk4pKM0DtQAvv0yaXpg03NHv6UAP8AelP8qbknPQU7sPWgY8NgD61ICDxU +OeaeMqSCOQeaaB2JWQcE96Z8ueTwTTi2R1yKaoUH5s4xx9aBAduMUKf4etI3A+tMVsHNTqMVj2/O +lTjtwelK6OwZ1UlVwGbHAzUYPQ/nQBJnBJ9OaUN7YzTU3MQq5JPQUvKlgRyOKTGP4Jx7UzkZFAYE +g4xjijHAJPWjqA4ZB5HanMfujGCOM+tMIwSPxp74yQwHUDPbFADkaWNgeRyP1q+fMa0jQpkhLojH ++1HntWdnHPbrmtb7tpbhSQ7pdvycdVwOfwqluJ7H1WlcJ4zOdRx/0yWu7SuD8Zf8hI/9c0rGv/DZ +thv4hy5Bz0pvuO1PIODz1qPJ6Hoa81M9JoTnIx9adj0o2jnB/Cl5wccU5CQueB1NL0PvSqPl/lRk +YJPWpbuxkLFjmmkE4qTGSQaNuMY4FDd9gI8EHmlAAHvUxC1Ht55pvYRFJnIA+ppCM4NSvGuPWmsB +gfrTV3uA0Lye9NxxyakyB0qIn0PFbK9yGRTKMZzVCcfITmtNwGFZ9ypCuFpxutCdzir85mbj1qsC +e3WrN+uJz6c1EIzjPr0rfYEronguSMDpUd1IJDxUXluM4z61GwKmhRRCm72EX72a6TSiflxwTiub +QfMK6TSOSp+lc+K+E6aGzN65H7rJ44rmrxxu49a6a9bES/SuRv5AWOOOtZU47EydkyrIx3Zz3q7a +PnAI6VkrLlgG71dt5gma6Jx0MYyNpyoUDp2qpK0Z6gVWluz2bBNR+aT15xUxixSaKl1IwLDI7VS3 +ZOe9XbiDOWH41TAYE4GTXVFJI529S3Aq8NWxbW9uVx6gc1gRtJnHbvVyOdl4GaiV7ha6Lt3FCi8d +qxZ8Z6de9WZ5WbO5u/SoBzyRngYq0ybdyDBWpk/ecY6Dioy3OKkhBDKTTewLcf8AZ3IxjvUMsAXJ +Fb1vAsq56cVT1G18obgamMm2E0jF5qWMkflTGHNPH3cVqyI6Di5B4q5aHsepxWfg5GKswFgeuDUT +WhpF6lq6izllHOKoFCM5rTDZPJyBUE0YPTkc1EZdBtalRUOcHirEcPQc/WlSIdfWrcMecAClOZcY +3Fgh+bn8K04bf3+ai0t9zA1opAV6j8a55O5ukUHDqDnpmoASDmtWWNQBxVJ4c5x60011Fy2FhZGx +wDUpjTJwQM1SCyIc0ouXU5I/Cpdy0idtoqJhGzc01rhXJ4wc0kaO74pXtqVyk1rZzXcyRQKWkc4V +a07fT5I5njkUbo3Ktj1FR2sDphlJB9a17WLaBiok1Ya0JobJVGQKuLC3pwKfDknBq4gWmkrEsijs +0I6VZSwXj5R60oIXBFWopQQM1asZu/QbFZKOcVbS3QdqkiZTVlQvarSRDkwjiHFWBtCkEHJ6Uxen +FSYq0jNsRe5p+BRiimIWmlacM0GgRGcUmKeQKTApNFIjIpCOlSECmc1Nh3GMtJjHWnmmGk0NCGkO +TRSGmMacU0+1KSc0ws1JsaA1E2R0NOYmoXfnFJjSFyc/WlJYY71CWoD8CpHYlBzzQQKZu5yT0oLZ +71XQQ/3phpoYmlJ4oQ9hjCoXx3qdsEZqAtzTtoIrTKDkEVg6hFtBI610Egz1rNuoA4Peri+hEkcR +fgNuBFcxdRbGJ9+K7vVLI4Y4rir5HRiDzW8U0YyszOpOKU9aStTBhUjvNIN0jlsk9TTKUKaAEFP9 +KbjFGaRS0FLU2g0KOaYbsnt4zIyiuo06yiRQz9hxWBZKQwIGPet6Iyhc88CuebvI3SaiSajcpHGV +X3rBWUmQcdWq9crJID1OKowJ++AAzyK2pK7Iloek+HIwbWPtgV0EKAZJ9KytCj22sQPoK1zzXoR2 +PFq/GxcnO0UpbbTeVqPduJ571W5PwoGJP0qndzEA49KnklCjk9Ky5T5zYHrWsV1MXroV1R5X455r +UtdPwAxqSztY0wTWjvQLgVMqjeiNVCKRGluF71IypjFRmbAqNphkZqUmQ2SMowc1E0gqGSc8ioGl +JPBqkgtqWSwPNOjYDrVHexP0qeHc3XihrQpOzLjEY4qpISWGKnIwPrURXJ696S0Jd2TQIcrzn2rU +jIxxVKFQAKmDgHrWctTaPuotBhnmrCkCs8SgnripBOo4zWbiXGaRYlYYqHdnmoXm3cikDE9DVKNi +ZSuyY4rJ1GYqpC1oMSqkk1hX0hZyM1pTWpFSVlYqr87BueTzWlBgAetUYYulaECEDnmtpGES5GAe +9WCPlFQxAjFWwucelYM1WpBt71A/cZq8ygA1WMWTmkmaPRWKcm4U6KMt1qZostg1KiAdO1XcyW4I +gwKGUH2p5YdBSEjuagtu4kYA5xTix5pCwA61AzEE07CQkxBqk5Xdg1K7HnmoG/U1SVg63G8ZOKa2 +cUoOAaYwZulUkDkNMm08VMshxUIiyeR0olZYlODVWuRzWKl2/mNgetFvAV/GoFbc5z61owDIAIq3 +oJtMtRRnC81bVajiQYFTgACsGy4K2ohpDjFKOT6CmvigTIzk5qu0bck1eSPI+tRzpgU1IfK9ytBk +HrVuM8+tVACD6VYjbbRIS3LTYxiqU+BmpnkqvOflpRQ5soPjdUqgkYFVz98g+vFWk7YrVmUR+xjj +1p/lkYqVAOM809sdKzubRjpqQKMH6VOMnFR4G6pVGaTJJFximSquBtbk5J9qkAOMVFIMHipW5pJ+ +6VZmOKqAgmrFwQajgjDfnWq2MXcIkNW1BUA05IRjvTtuBScrj5WIAaUkjgU4cYNI2evSpKjuR555 +qNzkGpDg1E/f0qkTLcqMCTzVhANoFRcE8etWFXNUyOoq8GhZDnAp3l8HFMVSpyaQLQsRvk806R1H +SolZQc1XuJSeAaVtSrjZ5ieBUazhAcUCMtgkVUvJFiU461aSegTlYpareFztDetVbCIu2e5pgRp5 +MmtWytcMuBwMVtpFGcm3uaFvBjn2FaKbQuTUUUWAKe5CiuZu5rDRDJXBBzWfJc7MkcVYuJgoOKwb +243dD1rSELmU5W1HXV2XJUGooISWDGq0YMjAnrWrbLwM/hWklyounU5nZliFNgGBVntTApAFBb8K +wvctrUpzCQtx0qi4w1bLBcZzVC4WPcCema1hIxqwe4kAAAIOT6VqRexqgiKoG3pWjCMAGpqMuiug +7PNULtiTx1q/INox1rOuMtn2pR3CREvzDPerkOdoGaqwjKsMVdhXB5qpbBTdpDi5AwKoXCkscDgi +tFwMcd6qTqAM5pRFNalYMQvXBx0qi7EtyMirbqxqJoj8pxWqsjK7aLtkcqpH41rRMSvvWLaNj61q +xngCspo2ptJk+ARzVWZcHpVgk4BqOX5uKziy5xKyLzntSlgO2KacjAz9KjYSMeOgrSxKlZWJoQNx +PrU74K/hUccZxmnZIB9KhspK25nSkFiDRGozmmXHDkipIMNgDpV7FN86t1LWOAR04qIjnvjvViJe +KJFFSzON0RRnjGaVckYPemBWBzT++azkjpiyOdflOKgRmH6VbcZB71TxhjivKxdNbnsYWd1Y0YH4 +FW43Yms6Jvu1diIxmuM7Ei/GW45qygwapxspxiradM1NmFyfmnjk1EDjp3py9KAJhimt/OjOaaec +VI0NJpj5PA6U8ioz+lSWiNvT3qu/OSPWrBHOaryZUYqWrlldhu4qlMOpq4+Rkiqk2fm54rOWhSKT +5znrU9uucZ64qNx3p1ucZ9azlrG4+poKpAyKtQOeKr2xypU1Pnb0rOG10N9i3kcZFOV+SRUAbpTg +2c+9aXuQ0XOCAajyQTmlQnAp2CenWrtcgNy9BSgtg1D05qUH5T64qUtRvYjdv0qSM8VCc8VYTAUZ +qknYGBHeoztJzmpWO7I9Kq5bcQelGwkOdiRxSRhzgdaDn8Ks28Y+XFa0ldkzdkXLWJgoyavIp4oh +QYFTEAV3qKWx50ndgPSsLxCD9nf6GtzNYXiFh9mkH+yaJbBHc8M14MLiQg9z0rCP61v60V+1PvGR +k9KxXQ1tHYJbkNJT9lIQeTgAdcDtVXIsJRzx7UuDgn3ApD6UwHA+tIaTmjmgB3b9aM5PPWm804e9 +ACfhSgZ6DNFPRgp5oGMKMB0ppqZ3B6elR4yeaBDfWjilK8GkoAKFBJwBknjFLjjNS2oBlwcZKOBn +1KnH456UAxIpCuKnluMjHr2qoOtB4oDzFPr3ptL0Pb1pOaAYrK6YDAg4BGfQ0mKM8dBS8cYGOOTQ +AnSlw2ATnB5HvSVJDE88iRJgu5wMnHNAyPk07HTipro2ZMItlYAQoJCepf8AiP8AT8KgBPJoEmGa +fxg479BTeD1qVVGPf0oGM4zQMZpSM/nScD60ASq3PA9sU9ieP6VCsm3g1IxHanuhdRpAIH603Bzn +nFOHvTWHYc4qWxolFxNHDJCpHlylSRjuP61GD909McYobpnpTAeRQMsIjOHIYLhc8nr9PemHPJH5 +UnYHPHSlxnGfSlYYwAdTThliB6nANBBOBUqSGJH24y3BJAJH0oAj+ZD6GpA2Rt7MOB6VGSxxzx0p +y5IB9MCmBJjawB9e9aTs720Y/uRXOCO25T+lZe7cV4Hy8cd60xhrEHPIW7GPT93RHcUtj6uTrXC+ +MedRYD/nmtd0nWuF8Yf8hJ/+uafyrKv/AA2a4b+Icq9NJ6CnvnJpgJxgCvOW9j0nsAznHvT19D0p +oHp260qkZGeeaJaCQ8HHA70EHOB1NLxyaTkn2rLW2oxNnPJ5NO4GBSgYOc9qTjrVpBcbjkfnTSyc +dQ2T9MVKxAHvULAHGR71cbIkU9OB1qJuM1Jn5TSEZXPShLsDIQDjnuajdMGrAU9DTWTGeK0iSyvu +A49McVXuyChNTujAevWqs5O0j2qk1uJnF6mpE7ehJ5qGIZGKsagM3BGajiT5hnnvWknoXFaFuOD9 +2TWfdIFYkVtxLiJie9Y10SkjHg9eCPWqhdx1MpKzKKsdwHvzXSaQx+XuTXNj7wzXSaOOV9O9Y4v4 +DXDdTYvnbysHsK5O7bLNxxXVX6ny8+1czdQksTU0laxM9UZu0Fs/WpMtjqKcU9PfmjZ0FdN7nO1Y +Vev1p6+YDk9BTowM4/CpcqAQeOOahvUq2gx5AVFVQqlmPQ5pXb5uvX9KaHI69atLQydrk4Cp1wah +edF+7UUjs3PbFQ57HrmrjHuZt2Y9pC5x2zUpAAGeSe1QR4zz+lWYk3HA75olZBqyu3DcVPHnI9u9 +TG1zzjjPNPjtzyxpOV0UlYvWMpUZHWnXzxuu7viqeZIhlRnsQKjlnLpzx2qY3ixSVzMlBDHvT1Jb +Az7USLn+tLGNrCtW9CYrUQqQc9qmjG7GBzVhU+TjBppKoCCOc9Kzc7mnKSJjGO4pZD0A/Sq4lXp3 +GeKmiBY+pqGralLUcuW4qxFuQkDipba37+tXFs9xGF6VjKa2NoxsWbFl4zWpsDgEdfSqFtZuCPUV +swW/ygtkYrO5TXVFN4vXoKqyKoPbpW0bZiPY81n3Noc/jxVPUcSiIUPbNObT0YfrUqW8i4GasrDL +zzxU3ZbXYyhaKpxgAVdtbFSRxUptzn5vWr9sqx9aTeoO5NbWSnGBwKvrYN1xipNPCN+dbAjUAYq0 +k9TLmadjIjsyv1qwsD4rR8tfTmnBAeMU+UOdmesBxyKsxJs4NWhHxjFL5Xeml0FzDB14qzGxHBqP +yxUiRt3pkstoc4qSoI+DU6gmtVcyY4YoxmlApwFMkQUU7ikNMQwim4qSkwKmw7kZx0ppqQgCmNmi +xSI2ApjU9sDk1EzYpNFITdTSwqN2HrVd5tnFTqVa5YLCkZgOfWqLXaZ64ppuVIxuosOzLbSLVWRx +nNQySZHDCqUkkpJo5dCkXTJ83NODKx4PSswPKeO1WUU4yTRboVYub+aUsCKqq3uanQ9KTSJasSrg +/wBKcQBzSDHWl60loS2AII9qhcA8VJt4wKjkBxTvoMgPcelVpQoBx3q3ioJ48013FIw7xeueRzXJ +avZRtlk6mu0u0PIxXMalB95smtloYSRw0qlGKn1qOrl4oEjeoJqma6E7mDQVMjDGD6VDUiDOPrSY +RJChIyB1qNo2HUV0ejWC3O3eOBV++0aBAWAxWPtdbG3s9DjNpz6VPb2zyMOOOKszW8aOQOgNamnw +LwSMCqdTTQSgky5p+nxgDjn3rbXTlKcCm23lIo6cVPLdrHGcelZLUcmzndVVbYFR1rIsldrhCwxk +1oX5kuZOv40ywVVnTp94ZropaPQid7anpmlIFt0GOwq6BzUGncwpj0qxIx6Cu+Ox48tHdjHPb1qG +Z1iXNPdlQZPas+e4kYhQxxnpW0UYSd9COZ2fnBpYI8EnHNTw28kh3Ek/WrJh2dBgU3LoHLYjEhQU +0zMfbNSGE9qTyPzpXQJNkQdsc0wyMwx6VP5WCfemFFJp3GQ/M3FWYLVm5Ip8Uakir6BEHHWolJ9D +WCTWpVFqqnpSlFUVZkdcGqMknGfahXZlO19BrsecU+LA5NRKVcjNT5C8U2EV1LO5QtRO3pUTSelC +gk89am1i9ZaDg5H9KbvYnOam2DGaYq80Jg42HJuJ61ZVSOopIkFTcKCTUtjiindyhVPNYTHfIW6n +NaGoygggd6oQpuOe9bwVkYzd5WLdvGTj2rRjQYFQ2qqAPwq33rOT1LUVYfGEqwvaoEXJzVpFFZyZ +cFqDAEVGF6+lTEZxQwwMVKZckQBAc0x1I6e1WEXvTyox0p8xPJcobSDTXORip5htzVRmFWtSGrOx +G0hXNRmTmhh1qBmwcYqgih7EZzTGPFJvBpCxPFBTdkRnG41ZjQGqp4NSRTcdatp2IUlctPEgGcVj +6i+OBWq867eayJsSP14Jp09HqE7NaFaADdn2rYtk4FU4rcbsitGJSBjmqm7mKTTLUWBjNTnbUcSk +4zT2x2rne50rSJGRj6VFnn+lSOc1ATirSMmWUkUUyZwwqsd45oYnAGeaXLqVzOw4AEc+tPCe9MQD +AqbHHFNhHUgkLA4qpcMcVdcdaoXA5q4mcyFSp61ajxj0qpjnAq1Ejd6qRK0LQcAc0u8VX2vk5qQA +Cs7I1uyVduamXrVeIe9WV7CpY0S8AVXlY4yOtWP4aqTEc4pRLnoUZmJNTWox+NVpmywx3NWIWwK1 +exinZmom3bUT47daiSbtTt2ay5bGrmnsPUjFDYwaRelOIytDJjuQNtCnHFVJGPQVYfj6VTnb0rSK +InuPiqwmCRiqsZOBVqEnNDEtWWVizTXQDtU0bAdaiuJEArNN3NXFcpSkJGagU5bjpmmzTAng9RSR +OFIzW1tDJOz1LzbUjJNc1qMxkkIWtHUL9VXaDyRWTDBJM+85IqqcbasqbTWhYsIScH25NbdrGNwz +Va2tmRR2rSt1C54pTZkr9SwMD8Kr3DBeM1JKwXrWdcyYzk1nFXZpfQp3k+VYDtWK25nz78VoyAkk +9Rmq7RLu9MmuqDSMKkXuSW8YK56/0rUhUYxVeGMKoFXIgFArKo7m1BWJF6Ed6rzDuKsc1G6ck9/S +oRTd2VRu6VHKoIx71ZKuDnHFMdMDJqk9QnG6uEO0AA1ow4CgVRgGetWk+Uc0pip6MS4baPSsszDc +w61ZumDZGaqRQsXOelOC01FUfYmgUls1dTdkZquilWXH0q0AQaGTEcduKrzAbat7Rt3Cqc+eR6Uo +7l1O5UHHftimyMu0+lIxJ/A5qBlkZiBWtjFSsrJD7d9sgHTNbEeSoIrHEZUjPY1pQyfLjuKmY43L +q4obHOKjgbPXtU7AEVi9GdV7xuUnQg8+lKABgVadRtqmd27jtVJ3Rls7lncgXjtUchJAOO1RKSxx +ipWVtv4UrWKb5jOmABOetR27qGA/lReSFTnvVaI4bPXvWqV0Zyk4yN1QSBinEAgZqC2kLryfarOO +nFZeRrKz95EYA6Z60zCnIPanum3OfzqFmw386louM7xsOOOAKo3IKNxxV4gdarXMe4Z9K5MTC8T0 +MLUsxlvIecn6Vown371jRvsbBrThfjj2rx9meutTTRhgAdato2eKoROAMVajbmhvQLFoHFPBHaol +6VKtSMkXJanHn2pAcUc96n0AaeKa2PpUmBUbYNGpSImx0NVpAT+FWnxUD4qXctFSTgmq0nI/Hmrs +icVSlU8gVnLzLRRmLDp60QSAHHtSyZORjoKiQc+9ZvaxRpwuRz71dzu2n0qhHgKMVfjxxmsYIciX +5ePWnKAR9KTbyPSlA4OD3q7kEgk27asJ8wJHaqWS3FTROwOK0hLuTKJMQDxTWbZwKeDkE02QZHNU +49SUyJznGPXNTofl96qybgQcdqmVuBTb0HYlXHPvTJF707OeaQ9B60rCIGPNaFnzg1RZMGrNnIFO +3NbU1qZVX7pvpgKKMg1CjggVIDXetTgY41zPiJ2MbKORXSN0Nc7rPzqQKmWug4nk2s6dIXaRV61z +8kLpkEHvXqElkZAwK1i3OhCQkBeSatN7DbOMgis/Kn84SedhfJK4x15z+FVjH1rsh4cJOCKil8NT +kHaOlaXRJxrJj370wqfzrppPDl3gnaaqPpGoBTHtOAc9KYjEweOO9Jg1r/2VdgY2HP0qJ9OuF4KG +nYLmbjv709I2c4zj1J7VcNnNxlT71KbVkiAHWRjkegH+P9KLAZz84wuABj3P1pgzjvVw2z+n500w +H05osIq/40vOR7Va8g7aYYG6ge9FgIRT1jBbn1p/lYPpSrx05xQMsrablqjPEYmI71oJM6rUMiGU +lj1602tLiRn804nNStbyYJxTNjAnPGKQxhGKMVKF4PY0m05waQWIyDSVMUPb9ajKkc4oAb9KX2/y +KXHpS4GAQSTjmmIQdx7UFdpK56HGaMU4A8+tIdhpziposng1GN35Gnxkhsn1oGSBT9Kayjk9u9S7 +VyDmn7SYwueASadhFI559qkBUjrzTXBDUKOlIYZPTvQc+vagAbsU7uck8dPpRuAdqaYnVVfqrDOa +ey/L15pm+TC8k4bIHvSAUdM5707PUDp6ikTbgA0uCTjnFFxgcZBP6UmTggU5geP6UzvihASxfMcc +ZAJ56cUjMpIIXC/4U0bQwIORwfxpzBMD8c0BqSbkZF+XDcAkdKvrEwtAw6ulyNvrhO1ZwK4Iwdxw +Rg1qM4+xW2CchL1eP9wGhbiezPq1K4TxjzqDj/pmn8q7tK4Hxi3/ABM5AOuxf5VnX/hs2wvxnNHB +zmmDjinHBNJgjNeakeiLyueQxOCce9CAZxTOeT609TnPFJgSFeBTce9PyeMjIqMt7UuoK48knPGO +p+lHXHNMxnJ/KncA4p+oDjyPYVEcZHpUlNI7etOIhh7e9SMDgY9hTOh5p+4npQtGA/7LJj/a9KhY +Amn+Y4bhmH0NMOc1s5JrQiz6kLqMGs29BVH54xWwQDmsy+jPlt6YNKF0wOEvuZ24/ip0Qbgk0XoT +zDjhtxyKWHpkd+K0k9DWGxdSYhT6VkXUgMmB6Vo7GZDjr71k3CFG561dNaGNRu5EuNwrp9GwCCa5 +hPv9Qea6XSs/IfzrLGfAa4bZm3egGPisPy8sQRkZxW3dsPKyD2rNgwXx1yTiudS90qxVn01FG4dc +VnywsgPGeOa6G63BPTNY0rBMg4FbwndHNOJSVCKbcMVHXBqUuudw7cCqczMx9c1tFXZm2kiHJ5+t +KS/JFO+XgdOKYcYx+dbGLGkkcA03A7/XFOzjNNzwc1SIaFVgpwrEZrStlAABPOc1lrjIrStSB25F +Z1Ni4bF9ipX0GOlQSyJHwOOKZPKAQF9Kz55M96mMWwbsPkuWDHaT3ppn3AZGKhA3YFGwnoK1sidR +e/ykdaXaffOaVYpOqitC2iL4BHQgGplKxUYkdu0qjB5FTSQLJ064zWmtlHsyOuKqzxquQD82Kz63 +KZnfYpAfWrltEF+961UeaWM4J6VJFPIfzpTu0XBG3CoUgjG2ta3RG2kGsK2Z2yPWta3SaMKVOQa5 +nvodHLobMNucc96uCFwoPaqtncKQFbg+9akZVgADmhPQm1iFY/l5HaqdzEM+laMgAAAqjMNxotZW +GimsT59s8Vcit8jpT4LWQnuea1YLXbjI7UlF3LbVjGnt26gVB93qK6C5gIVhjtXP3DmMsCB7VUo9 +SYu5qaWx3V0MeSBnNctpMgMo56110ABUUqbbJqqzHbDjNJtINThcUFM1s0Y3Ih6VIM0qpT9pzxTS +C41VqUKc0ihs1OB600iWxFTFSYxRjFLVohu4opaAKWmSxKKWkzTASmmnEimM2KVhiHNMZqa8ygGq +sl0oosNEkki1WkkHaq814uCaoPqKA9aVjRIvSSVSlfmoHvlblT1qJZHkbqc0uhSQksTu3Bo+zzEd +auJbStzVxbIkAmi3cfM0YLR3Sngk1LHb3b8Gt4WUeORTxEFGAKA9oZEdo3AIqRoD6Vo+UajeN+oo +SFzameUIPTvUsYGAOmKlMbE81IqfjUtalORF/EKfTgvNO281IrkZFRsw6VO61XcFTQMjPrUb05iR +imECnZgULlCenNc7qsG5Se+K6t0yTisq+hUhsjNXF2M5I8t1CJ1dieuazzXVaxZDcxHTmuZdNpxX +TGSZzTi0MAzV21tnkYYqmKv2bsGGDjmpqN20KpLU6/SkWABehHanarcHY2OmKZYIzqG74xUWq/Kh +B4rkW9zraRzrDdJlvWraXQX5QeBxWfIxBJ6VEJWzx9K2UWzNtXOjt71mwP1q+m+VcdqxtNiaTGR6 +da6OExxoFI6UluQ/Ixri3ZGbHPvTbKBvOQn1FXpdkr8fjT4EEcyDHcc1vS12Ilsd1p2RAv0FTSHk +1FZ58lfpTbiXHSvRprQ8OtK7Ks8hOVHSkgh3EMRSABjz61ahIXFat6GcbItxhUHAp5xUPmDtUi84 +rI0vcaQTxTcAcVP7YphFNA9EQsM1H5feraxEnNK0Jwaq5HK3qUslcAZHNWFY4FNZSKjLheO+ae5G +wsr44zVY8nHqacxLdOaliiJOcU9ioxuxqR4xxT2U55qcigrkgVFymVghJBqZVFTCMYp6xP2/ChsS +uRbcYHtUiJjtTggJqYIQBU3K3GKAKZcv8pAqZgBzWdeSkA/SiKuwk7Iyrlyz4680+ADioOr596tR +c5rpexz3L8RUCphkniq0QPA7VciABArFmidywg4qzHUKDnipt2BWMjeC6gx54prk8UtRs3NCBsmQ +jFI0gGahMoXH0qrLcZyBQo3H7RJCzyZNVCabI5Peo9x6GtkrGDd2OLc1BIWyT2qQsMdahySeKdi1 +aw3gjinHj/Gl4H50gPP1pkOSAJu7U3y9pPFXY1GKZKoUGjmDk0uZtxJtwKiTB60Tgs3sO9Phj9DW +uyM9UWIc5HFX0B71BboOKthe9ZSZUdyVCMUMR0pwzjmo2rNG09EMkOelMCZ5oJ+bmpoytVsQkm9S +No/0qBhjr+daDhduaoy9aIscopCJzip8EAk1DEDzVgkBOaHuEdiu4zzWfN8zYFaLuMY6AHOazpT8 +/FaRMpWGop5q3EOKrpjOTnmrSEUSKjYkCHFMbinrIKa2c8VGpbatoLF/WrIHeoUHSpRkZFJhHcVj +iqszdfepmbHNVZXBFEUOZUcHPrzU0bELg9aixuq1EmRxya0ZjqOjBPPSpgMAU9U44pjBhx0qL3Ks +1uOGT+dSdvwqMDin8BT7UmVDcqT9apNgnHSrMzHJGaqNndk1pEznuTAcelTI23FVPMPY1IZSVz7U +7Mm5ca4VV61n3d2OgqtLctnB71U3PI4HXGMVUaa3YOb2Ret0aTnmn3AEaZ9qsWwCR5PFZt9M0p2K +aSd5FyjZXM2RWmlwOa6DT7TCrkVk2MG5yx65rpICEAAqqrtoiaUl1JWiA9KaCAac8melQlxjPrWK +RU2ug25lG305rCu52yeau3kvBHTNY8rFwSfXit6cTGc+hYjdiP6UOTuzjNVIXkDDPtV9UJI74q2r +EKbloWbb5uoq9x+FV4FA5qwemT+Fc8tzrpr3QBwTTfmzn0oTJBoGckUEXJ0RW60yaFSpxSCXsKez +jaamzua86tYrQoRwe1OkbaDTxjBOarysccVW7M/MhYhzxVlIjtyOapI2SKupKBgZ4xTkmVGUXuNI +KkGrGQQKhlKkDFORvlHNBm2k9CZmIBA9KoSF2bHvVonOCOaqP96iOhcvhuRFQDzzmnxopPPX1pWU +leDSKcd81fQyTs7iTbenp3qKFsOc9MikbzC+B0pmCD+Ip20FKTbukasb8g1cHzDiqEAyvXNW0Y7e +OtZSRtTfQUnHFVnTBLVYkycGm7crzSWgPcSFCRUzIdvNRxMBipmfK4B61Mr3NKdtmYeoRjkY981n +W/JKk4wa2bxQ2T1rHKMjEn1rem9DGstTTtm24rTHzDPpWVCDJgr6VpwEgYFZzXUdJ3VhJORjpVSR +W3ZFXJVfr2quwU5pdC1dMRCCoU9jRIqkHH5UBWJpc5/rWFRaHXSdnqY8oKyE1btJeeTVa+Uq4OeP +SkiccV41aPLI92m+aKN2GSrsbHgVkW7ZIPP0rTicYFYmhfUg9D2p8bZ46VXjfrU8YOck8U2IsZPF +Oz2pnFKMZFJsQp5pjCpOgqPHepKQzHrUTjBNSsR1A4qF2qW0WkV5etU5hV1zwaqP0qJGiRQkGD/O +oNyg+9WpsdvWqm0bs+9ZW3KL8LDYPWraucLVGMLwRVpHzjFczTWhW5fjYMOakBAU1AjAYwcmpd5x +0pxbtqS0ICcj61JxnFM9DTwa1iSyWNsHBp7Hj61AnB9ascFQa0TuQ1ZkD84FOGVHTgdKeUPTpzRI +cYFU0K4gPWnK2TTVI6GkYqnNJAPfDcjtTo0CketQRzBj+NWhyeK6KK1MKuisXEm2YBq5E+4A1Shg +ckE9KvKEQYzXZc4rD2OQRWXeWRl5FXWf0NNzU31HYy/7N6kCojpeTytbq4NP2qapO+otUc8NJ5zU +o0lD/DW2FGTRgdqoV2c3PpCk/dqH+xFx9wdK6koD1FN8v2p3Ecg+hr02dKrS6CpyNg7812/kjuKa +bZT2p8zA87k8PAYHl9Pao28Nhz9zr3r0Y2aHqOKPskeBwKOZjPO18MwlcMnI71BL4Wi/ue1ekfYo +uTimGzgPbvQpMWh5ifCgwflNM/4RQkfd9a9RNpF/dpn2KL0FNTYM8rfwhJzgVB/wh9x1r1v7FF1w +OKPskPPFPn1uF2eRN4TuxzioT4avVzkV7F9hiHVRTf7PgOcqKakhanj3/CPXeOV7VWl8PXXOFOK9 +nOmW552iozo9vj7ooU+4aniDaLfKfuHrUbaTe55Q17W2gW7HO0VG3h6A/wAAourjuzxY6ZdqP9Wa +Y2nT90PSvam8PWxxlRUD+Grf+4MU9GLmZ4ubGbn5f0pjWsg4wfxr2VvC1qc5QYNVZvCFqy4CCjQF +I8g8mTPTigRt1I4FepS+CoiD8vNUZ/BODlR3osNTR51sPPpTgHI29gdwz6127+DZuw7dKifwfdAZ +o5epXMjlAuB75xUqr+Rrol8MXS8FTz3qT/hGp8dD1ppXE2cjMjA/rUBBxjtXY3Hhu4ZRxzWVJoF6 +hI2HANS1bUpO+hiICT71MUB69av/ANk3QbHlkZqz/ZM+3IU00mxPcx9jKp5xlelQsp5xyB19q159 +OuVXO01SNrKM4U496TH6FZFY59Byad04xwamFu/XHfpUghPO5cCkFisVJzjGCeM1GRyKvfZpB1BH +196hMLA5ND1YEChz0ycjt3p75fLnO4t83+P1NOVGHHTvTirZ59hml1AjUDPNXEB8pyTwIrnHv8lQ +eW2ct1POT3rQkQLYW3HLJfE/98CmtwezPq1OtefeMiP7Tkx12IP0r0FO1ef+MgBqkv8AuJ/KssR/ +CZrhf4hzOQOc+1KentTD1FOJ/nXmrU9JjhgjrimqV6UhwAeaRSM1T2JRYzkVEck/QU/K8Cmkk81n +cYqjp7dqDnI/Gkp3I9qLX2AVeM46UhxxSn0zS7eQRTvbYBpAPWkUdh+NK3egY9xRJ2YWFCsTmlZe +4pyDJ4pzLyKfNoIi29v1qjeqdj+hrRKZ5FUr0YjbPSri7Es8+v0xcN65p0MZJX8KnvVBlJqW3UDH +FVKpodKhaJPFA3l8gd6xr2MFzmuo2qIj9K568UbmPU5qoS2M1G5lLGNwrotMXAGOvFYe1Q4x25ro +dKAwtRi5PkNKMeVM0bvb5Q65A61QtUy+RwQavXjcYPHWqNmf3gGaw+yKJo3sLNCCvYciuMvHkSVg +T616HHHvjKnuK5rXNFA3SRnnrXRh6iejOSqnc5fz8cU0MD83pUUsbo2CO9Ny2Oa71FdDj5nfUmZw +afGARg+lQmN0YB8AlVYfQjIqUOF570muwJ33HNEvY9agZDmniTd1NPUAnHai7QWuRRr3IOBU8RZC +etTumFUD2qH5gTU81ykrEr/Mgx1ziqbxkEqRjmrkbDHzL6Usqt24pRlbQGiqkfXNWooF4B6EUIgG +AfvZzVy2KthffFTOTsVGJNDZKR+lTGz8gq68gda0baLAB68cU64+VTx61MGpbildPQqCeMqM9qz7 +raWJH5in3JAz5ZAas55nYkNVWEDxbxmmRxsDzkY7VJE2Pzq9BGkg+7zUylY2pomsUbcB29a6izt9 +6qG54rKs7fGCBnpXR2cRXBx+Fcr1Z0vYU6aMgrUsVpOp+VjWnCpYAHrVqO3HpWiSZk5NaGT9luTw +TUkemPkE1sCIAcipljzTsLnKdvaBSPpV5IRUiR1IqVSWhm3cqzW25TXJ6tZshJAPeu78vIxWde6e +JgRirsrBGdmcVpRZJyfoK7a1k3KO1ZkWh+UxbHWtWC3MYArBQcXc2qTjJF1eakAqNUIxUozW/Q5m +IVpwFOCmnAU7E3EC08CjFKKpCDFLRRT2EGaM8U0moy4HWmFibcKYziq0lwqjJNZt3qsUXGaQ+U1H +nVepqjPqKJnmsKfXQQQCM1h3WpzyMStPoWoHUTasBnNUJdWU+1YcUk8wA5Jq3DpdzMfmo8ilFdR8 +t/uyF5NRRCeU8g1qW+ileWFasWnxoOmKltlXSMSKyl4GOtalvp4XBIwa00t417dKlAHpRcXMRRQq +o6VNgUtITSIG9KaR3p5OaDTuBHio2GeDUxxURzmlsOxFs7UoUYp9KBzSYyMoKNoqUqKQKRSAgcVX +kXuausnGarSq3btS0KRQk69ajLCmzMQ57ZpuSQOOaH2NOUfu5IqtdRLIOR1qb09qbKpI4oiyJI5f +UbBWzkVx+paeIXJFekzwh1I71yurWBVjnJBB6VtFmUo3ON8tQSDWpplsjkNUE1rImScEHkVqaOhG +PSlVl7oU4q501hB8q+wrL1yCQDJrpbKJSBj0pNX01ZoTxzisoFt6nl9xgEjtTIgGYY/CrmoW7RSM +COhIqrCpBBxW+yM2tTpNM2BMk4NWZ5WUEZ4JrAW9aNVUcbeM+tWUvGkIDfSpSJlvobFuoChz7mo4 +boPdoo7MKrPeBI8KecUmkAyXYbrzXTRSWplUb1PSLeQCFfpUUgZ2JoiJ8tQPQVMEBHvXfF2R47jd +3ZW8upUDdKnWLcc1Yjt16mq5iLakccJNTqmKsKirS7O9Zc1zVqyIdgFGwMaewxxTc46GqM35kqqt +K+MVEZKjkm4qbNmnOkitOwBJqiWJP41PM+c1DGjOw7Ctlojn3ZJCpJ9auqpApYoQoB9alAqG7s2+ +FWGBCevpUscORzQuBirSYqJNjhFNkXkgDnrSAY4FTsc1G3tSTHKKWw0L60KCOTSngcdKSmTYjmYb +TWHeyZyBWpdOVBxWHcNuat6cTCrK7sNiTPNaMFuen61VtRkgHtW3boNuadSVh04JkSRbanjpX7Y/ +GlUHH1rG9y7WZMjDNPJqBDgkU8tU21NFsKrdahd+TSs+AfWqrvyTVJGbfQbPKRwKqGXOc06Y9x71 +ScsfatYozdycSZ/pTs1WU+tTDBoehcVcDQAVzipFRaGxilcbRG3T601SBwfrTxyCKaFOeKoyZMJg +OKZPKSMCmOGWoAxZ8H1oUepcZa2Yqws3X2qVYSCBU6KuAKdtyaLhJIfCmKtxpkfSoIxVtGwu0d6z +kyqa1GsOMVA4I71M5zUTk4xSQTepAfelWTB60nWk2HOT3qzNPUlMpIxVdmJapWGBVfnORQkNtssR +jilcjpQhODxQwzz3xS6lvSJBKeCKz5GBJ9quzk4qkU5yO9axMHd7CRs7HBqyoPAFMWPBB9KtpHkC +k2XysZ5TLipQMVYWLgZqN1IFZ3uW4sVQAPfmn81GnHSn54pMcSKWqMx5x2q5ITzVJhuJAqoikIh4 +FXIBwKqqgAyasRSqABTZMZJPU0FXAqGUU5ZRio3bNQkaTkmg7UjngmnKQRUcp44pkRZTnbAJ/CqR +kOcVPcORxVTPOTW0UZSZIWOfp6U5nYLVUOCT2xQ9wudoNU0TBXZFMwY/WprSLGGaq6AyPjmtARlI +wR0xTb0sXKKTGT3JjBAOKzVdpXyafcvvO0fjUtpaNkHrn1qkklczlOWxdtYDntV1SykDNOgiIUDF +SNGOTWMpXY4xtqIzYA561C0mM57Urt71UuJMZ9DQkNlO6lLZ5qps34B+pqSQZ796kt4hk57djW+y +M9ZOxH5AAHHerUR4x2FSyIMcGnQxAVDldFqnysniTnI6YqY5/KiJNopxBzwaxvqdFrRGjgk04BWO +BTsZANLGvOfehshIi8sihhxVtoxjrVR2wT6Uou5UoWIWcqCaqlnPHr2qaY5AxUIBB5rRESVkRoDk +/wA6cWdeOwpwUBifWpljDAZ71TaIUW3oRIxxnn6U+ORsY79qlkjCdPxqucK+KSdxuLjuTqWJ9KjZ +SOakjU+vHWlkUlam+pcdVYgU5yDUZA7U5OvNK4ANXcytoNjhJw1LJCApPcc1KjqnFMkkEjAClq2a ++6o6D7RuNtW4iASKoR9SOnNX4hk8HtUyJi9dCcrkDFATsaegJAzSNwazTN5LS5FjaTUcu4Dj8qll +9RURLMKZmtypM42kN3rMkZXDdOtaN18gz7VjMxZzxgVrTsTWvaxZs5nRwpxitqNsYNYUSjKkHmta +3fenGaJrW5nTlZF37y/WoGiXpmpoTntSumf61lsdL1SZXB2jAqPdzgHrT5ww6VXXOSD65pNaGkJO +5W1CMbd3pVGJlH1rWuIw8Z+lYW8rIQfWvJxa1PbwkrxsbNq/PvWpEwOMViW0gwMcVpxOcVwXR2Gr +ERVgHnjpVKF+RVtQM5zTEWFPNSDnNRIBjinBjnFSxj+efekbpQOpHpStijcCF/Y1GR1PtUzZPNRt +0PFR1LRAwLVUlAHFW2BFVpdvX61LehaM6Ycmqzqd2RV6UMaoyggnsKyLJ4W3KMdsCrK5DLWfAzAg +VoDJK/SsJpdCkXItvFW0AKVUhPbHarqY24pxXciQzBGcU5V60p60KCK0VhCqBUgYdKj+alJA6mtI +xIepZUhqjlHzUgdR0FSEh8c8irs3oRsVNxFNZievSpLhQOnBNUiTjJ+lEYMrmQ9W+fKnitqyCuAT +WBGx6CtiwEoAJNdFLQ566ujZdlReKoPLJnParwAZRmoXgBNbNdTlKvmt+NQT3phUnvV4WopsmnxS +A5FHLfRDW5Xsr0zZJrS8wbc+1VobJIj8o4q0YuBRCLQpNMjSZmap6iVNvapAwxWpA8c0pxTVYUpN +ABRzTC31pd1FgHUcUmRSc0gAjrSbKdmlzTAjKCm7KmxmlC0gINmeKBFzmrGyl20BYrmOm7DVnFG0 +U7hYrFDTdrZq1tppj/OnfsKxXCml2mphGRQUoAhxQR61Nso20BYg2ik2r6VNsOaNh60AQ7EPBFNM +ETdqm2mgKadxFb7LCewpDZQnqBVvaaNrUXYWKB02A9qadLhPYVo4NJhqL6hYzDpcX90VXk0SGT+E +VtgGjmlcDm/+Ebg9O9K3h+HGAtdJiginzMZyUvhmJgRtHNUX8KRg5AzXcYHcUm1D2p8zA88fwgpJ +ITANMPhIYIKcHpXo3lp6UnlR9xRzC1POG8JjHCmq0nhPccYOc/zr08wxZ6VG1rF6U1JBqeVnwa5Y +4z7U1/CNyMgDLHqfavVfssXpzR9ji64ppxDmkeR/8IjejjBqPVtGuLOygaQFUjhu1Yjtlfwr2FbN +PSue8eW0aaFcsBz9nm/lVKzdhSk7Hqkdef8AjIj+1Jf9xP5V6Ama898Zn/iayj/YT+VYV/4bOrC/ +xDmWzmkU8c+tI2c4HJ6UA4yD9a8w9IU8jrSRn8xSHpxSfNuyKeyQiwOgJpM5JpFPQdjSnB4HbvUt +MaHcdhS+1NGRn0pc/rUasB6gcE04k4yKaoPFPxnrTt0QmRNSqDxjmlfAzjOMnFNBwaclcESqCMcc +08qe9NDHPHrTs/rVITEOBiqN/jYfpV4jis+/z5beoqlcRxtyP3zA9OangQHbVadiZm+uTV61QHGa +zlozs+yXCmE5PGK5y8wHf68V0lxlYvQYrlr542YYJzg7vrmt4p6GMWrlZT8+M9P1rpNKQnb9K5hW +y4/Kup0fHyjHb8ajFaJGkHoyTUzt29zUFmwLqR3NWdVAOAD0qpYgluKh2Ubmcdjprfbt65qHUIlk +jYU6HeFxjimXVxGqNu9DRG6ehhNHAanAsc75x1rObHIrX1d45JGIPXpWM2S2FHJOAK9KnqjjnoKM +flTioNQklTjOfpU8Rz1rRqxmrMj2OOewqaIlTk9iKsqqkYYdRULxMrHA4OKjmvoNKzLQYNjIFO8o +EE4wSTUVoskjDHb1q6YX5BPQVi9GbdCn5fU4zVnG+POM47GpYIQSUYUlxG8IyOnSm9WSyvtGcDr1 ++lWraIHGOoOao7myMVIk8iEHnrSaKsdBHMY1wTk1BeXYZCPTNZv2qTpk4qpcXDt9PanFdiGrjZrh +9xNQbt5yO9IcNnApVXHatCkrlu2i3988VuWdsRgnpxWTaA8H8a3bMFsc+lclSWp1RhY3bC2XjFb1 +vbrgcVkWJ2kZroLbntUxFJstRW6jFXEiCjio4hxVgdq1Rg2xvlA8VIIgMU4YqTHFVYm40LTwhpVF +PxTSJbGgetLgGlFLxTEM8pfSjywKlpadhXIwgxS4p3ak4pDHCnYpq06qQgxRRxSE02hBTS2KQtVe +SUCgaRI8mO9Z91fJEDk1Bd3uwHmueup5pycGla5pGJYvdZPKg1z9zd3ExJXOKka1mdstnk8VbhsM +AZFPYvRGMqzZ+bJ9Ku2tg8rDGa2I9NRmBxWvaWUcXQUnIPMqWOmIgX5RmtiKBVHTpTkRRxU3SkiX +qIEFOK0uOKUAnrQSN9qXBFO20u2mFyOkNOOKaWWoQ7jTuyKPmo3LnrRkdulFxiGkxzTx60Y70JgM +K+lKFFOxTsH86Qhu0U0rU2KYVFMCFgcVXlXrVthUEo44qdikZE0QLZ9Kj27a0JEB/rVWSPpSfc1v +0K5pp5B5pzJg80zdg49DRsDRWkjPUVmXluZFJIrZdqpzKSCB3FUmQ0cnNp6SdsY6VYs9OEJ/HrWh +LEQTx1NEY6GiTvuC0Nax42g81tm1WaPGM8Vz9s4DD2NdNZSblANKOjImtDgPEvh85eSMY65riTE8 +bFWOCMivcdTtUlibjsa8n1y0FvO5Axkk1u3cmOqMGQhSBnp60+KTDA88daglbLGliycD8sVXLoZt +6lxpWc4Hriuj0G1fzFfnA5rI0vTpLqVeDgGvQtN02OFAMYrspQ0OWvU5UXYFbaMVdSI9xSRRAYq+ +kYxXQ3Y83cjjjUDFWI0AH0oWM5pxIWobuXFW1ZG2O1JvPTHSkcjNMzu5ppEN6i53E5qFid3HSrax +ZFRyxjrTTVxSi7XKu5gSTUUnOR2qaTAFVzitEYsi25b61ZgiwM1EmCasr8opSfQ2gktSXI4p3FRg +560bucVNhN3YuTuqVZh0zUDtgVCTnkUWuJOxfL+9JuyarI5I608MBSsVzFg5PSmudtND9M1HM4AN +CWo27K5Ru5iAay1XeffNWLtySabCucV0rRHK3cs2qDgnrmtNGA6VRjUgVMrHNZSVzSLaLZIPPSn8 +4qJegqXBxis2WtRoB6imtnNTAACoH60Lct6RI5DUDvxTpGPSq0jZ4zVpGTYrnIqBoQSeaf0HWkOa +taE7jPLA/Gn4FC9adtpM2S0DdSk8U0j0pM0JESkKqjOBVhYwBVfcqipBPxQ0wi0RXQIzVFA+8kVa +llV+KkhhBGQKpOyIkru6CLOKsxAk80wxYx61LGpHJpNiVyUAD61MtQrnPNSnAFZs3hsNbGahfrSt +1zUZ7U0Zt6jkTJzUrR4GcU1CuKk3jFJt3NIqNitJkDFQgZOanc5JB71Eo5x2q1sZ9SdAtMbqaeAc +cUx+vFStypbFeYjHNVjt6CpJs9j2qozDOK2SMk7MtJg4q3GcYqjDnAqzzj3qGjRPqXPNJGKhZs1E +pPHcUp655xUpWKlK5KMdacRgZNCLwPWhxxSFFFWYkZqoCWY/Wp5885qBAM1pHYmZKeRTdpz9akIq +REGKLkWuNTeMVLlsj3pdnemjrzSCzW5MB0qOYjBxUh7emKrzMBnmki0ZtwTnFU5ZPlIqa5cZNZdx +LjJzx6V0wRzVXYVpnQEg4yar+Yztnmq5mLHGT1q9Y2+5+eh5rR2RnDVmrYQcBj3q3cEABR9KlghV +VAFP8gMDkVzN6ndBK2plRWrSNyO9akdttx+FTxQqvNPYDNDlcyaV7kkcXSmy4Uc08OAPwqtcTDGP +Ws1e5rpYrvwDWfKwY4/SrjupU54qoV59a2iYsgZABxinRsFHPemz4AAzTFz2ya06GUXZ6FnfuIq1 +F0BqrEmT6VfRMDB5rJnRvqydRkUu0ZpUwoAxQcHvWRo9hrdOOKbuKcmlOOBTX6YqjND/ADh271Ul +bJyDSt8mc/hVUyqwwPWmkEpD1yx9cVKEz2FRQ9zVr5QAfWm3qabwIGXaBxTkbAHt2onZdtQfMVwO +vana6Mb2ehZeVSBnrVeQcg1FtZjhqseWcA+1CSQ5SciULhQfamOzVImNvNQucsAB3pDi7MZyGpTG +cAnnmpAgz/OnKA2QetO4pLUi8vd2oSEjOamHBx71KAo68mk5McYIpsh+90qzbN0pJdpBA61HBlWI +NG6E1ZmjE3btUjLkdagBPBFT5yvvWT3No6qxARzg0zafyqxtxmo2A4p3JSsyheJuUisxbY529q17 +nGCcdKrJtJ/Cri7IU4pyVyJLXBU1bgQxtt6ipVCbaTgcjjFF2wlGMdUWlXinbS2frUcMgcY9Kk+6 +cVDQ4SRXkGTyDVQx8knitCVTtzVRl/vd6FsVbllYiGSCDWBeoUnz05rpCvf8qyNWiGPMrhxEVJHq +YWXLKxBavzgite3YACuatn5xk89627aTAHPOK8qSsetubUTDr7VcRyR61lwuCeKvxHAGOanWwF5D +gVMAOarLk4qynSgQ7FGAKTOKXNA0MNRMcZ96mIIFRkZ9jWZSIXxiqsgHNW3XjrVaRMDNQzRFGUfh +VKdT161ek+bNUpQOeelTy2KuRRY3DHUmtOLqKzY+Hwe5rUjwCOKxnbmGnoTr39Kto2FBqsgz/OpM +HHHrSVhMnGc+1O3YzUZJAA70Agqe5FWrInclGCBmmSqRgihScAHtUx2sMGtIyJasVlJDLVkugUEE +7uagdQCBTdrcEnitHInluTSqZFyPSoBCSpHSpVLLnHcUBgMk96cZXRLTRXjtvnGfWt2EJEg+lY5k +5DDtUU+qMg21tF2RhUd3Y2TfBG60/wDtCM965CbUH3dTSw6iA3J61SkZuyO0hvEc1bR1bmuNTUo0 +wQ3Wpl1wqevSqUnclpdDsPlpeK5dfEigc1LD4kgckE4q+dEcrOhKAmlKLWOmvWjH74qf+17Q/wAY +p8yFZmkEWnbFqkmo2zDIcUj6nbJ/EKfMgs2Xdi0eWtVEv7d+QwqcXEZ53DFO6CxIY1pnl0n2iP8A +vUnnxD+IU7gOKYpQtNFxEe4oE8frSugsyQgCmhhnFNMsZ701dpOQaYE4zTqYCKcppALilwKTIopg +G0Um0daQtSgk0XEBWk20pzTfmoAXZSbDS7jS5oAbso2mpKDigCLbSbKk3LRuWgLDNooIp/FNO0UA +M20baC4zTsjigdhmyk2VKFzSlaBEAWl2Zpx+WlVs0JhYiMZzSbOlSswWgEGncLERU0mw1PgUDFK4 +WIPLPWkKGrOBSFRQBV2mlAbNWdgpNgpisQfNXMePi50K6HX91N/Kuu8sdq5f4gKU0G4K8ERSnP0F +XD4iZrQ9MSvPPGWP7Umz/cT+VehJ1rz/AMYgf2nMf9hP5VliP4bOvCfxDl84OaU8jjqaCDkZFL+F +eWnY9FjB1/CkIYZJ6U73PWnnBxnvVbgIoAGRzxSA8HPJp+FGTTSM/wBKm4WHjpz6UcfkKTAwAetH +Xntmk3YZIme9Se2eKjUDFPwfrTT1JZHjJ96XZg+496RiQSAfrS/w896qyEL93rShzxTW456elMB5 +68U1pogJix55qhqBBhb1x2qd5AvHeql9J+6Y89K0S1JOLuHInb61pWbbiO2cVk3BzO2Mda0LN9uB +1rOpG51p+6a19nyMA87a4u7Yh67C5cCLB9K5K8GXYdeTzXTTVkjm1d7FVCSwxXUaTuBB9sGuWjB3 +iuk0x2GMdhjArPFbI1o/Cy5qTE8+2DUFgSDT709j6c02xyZAOtc87cuo4o6SIgR/QVgamZXYhc4J +reiXMY/Cs+7hbJ/madO6RhLc5K5sVJOSeEdsD1ArI288iutubc7ZZGBVRE+CeMkjjHr+FcwwYHaT +XfSl7pyVI+8VpB3xz3pqllNXAoP3qjmtyvI5WtlJPQxcbaoVZskYOMVZjPmjaTzms0AqR9avQMMq +fpUzVtio6mtpluEZif4R1qa8KR8im2s+FODyaiuA0uO3XJrCNm7stp6CRyDOR7VPI4dSpPUVRaNk +H600S4wWJzT1RVkyX7KcbuuDURQLxWjFcRbCD6VQuZMEkAd80ldi6llYIZV4qndWzRnv1ojlePkH +3qSS68wHdVX11DlfQzRkEgCpRggdc0oiDEkd+cU4RE9qbaLgnsXbYE8duOK6CwjyBxzWLYx5YCuj +sI9uM/jXHN6nWtEbdpGm3/Gtm0bAxWTCcACtK0c5xVRM5I2IzmpgarxcirAx2rZHOyRSM1MOeKhV +alXirsSx4FLntSUHNMkdTuKjBNO+lCE0P96Wmg08U0Ib1NIQM07gUhosFxRS5plLmkAU0mlzUbmm +MjlcgVRebJIqzIciqTJ8+aTLRSu42cHv6VThtsE8VseXzz0poiVSTQ2yr9CkLRSAMVILcDtVwCkI +ANQ29wQyONRirAGOlQ7wtNFwoODSTuOxeXtUmKqJNu6VMpJ71S7IlonyKXeKiBp3FWiGKZKY03Bp +ZCgHWqkk0SjJNOwKxI0hPeq5ZyetVZb6NSeaz59XRM7TUtGsUza3e9ToVwK5iLVi5rUtrtnx1rG5 +bps2FxUoxVSNiasrkU0ZtWH4FOxSZpN3OKomzHHFMalzSE+1G4IjYVFIKmNNYDrR0Gik4qq+OavS +AD3qlJ1NItFd1HWoHx1HWp35FQvxkUIohqvJ1qw+3HHWq7NnipkHmULgenHNVVbBNX5lz1qkwwPe +mK/QkilIIPaui0y5BxzXJhiua1NNuMMoJokraoN0dVdyL5RPtXlPiiVWmbHavR7ybNu2P7teX6vF +cTTtwTk1vBXRiluc2cs1amlWL3EiqFzzzUcdjMZghQ5NdzoGlC3RSw5PNddOFzlq1FBXZo6PpcUA +UY5NdCsaoBiq0QVcY4xUwcsQK61E8ypV5ixGQSMVbTniqSsARVqM0pEQJ2AFQN1qYh8A9qgbvUou +bIpD2p0RxgVFjnJNMMwU4rS2hinZ3NJGWo5mU1WWbvmmSS54BqVHU0lUuiKVuahPzHAp0jds0kQO +7PatdjFK7JI0C4zzTjjP9Kd2IphXPNSXJ9EKWxxmlQc1E3Jyaer7cHNOwla+pYKqVzVZxtJFSeZk +cVG3JPekrlSt0Gq2KcrM3FIAakVRimyYq4u7FQTyjae1Pc4GKo3EnG2nFCm7lRmDPjOeatxD5QP1 +qqigkcVcjA4rWRirtliIEgGrUajByKII1xUzbQOewrBy1N1B2uIu0VIGB4/Kq6sC3WpQQaTBEh6c +VXYdQanLADmqzyDmlEqbK7+9V5AetWMhic1FMwxxWiepHLoVCcZFKCSKb94inqCDkVTCMe44DsKX +nrTkpSPxpFsbnHHtTe5pxYUDBPPbimZWuRspI61E2VB/SrjIPwrOvG2t8pxx0qou+gnFrUdCVZua +04gABWPbt0JrUjc4+tKaKjJWLFSIOKiUNVgYA9KzY9xNvelJzxQMnjrSE80i9kMI2c1Cc9RU0nIx +61FsOKpGTGbmzmnAtT/LPpQfagNSM9aRRzxTs5JHtThimNaj+oxUbdOKfntUeNuTmkhzKUv3iaq7 +ctkVcc8n3qA7c+9apmaV2LHnOPSrixhuarR4zmrsQ6VEjSKDy8CmFSCPSrORgVGcZqUypJdB68ji +o5CelOBP0qCV+DSSBEEuD0psS/pQoPfinrn1qxTFxz9KnjIHFVz1HvR5uw/Wm1czjKxbOAOKg/i9 +6csitx3pmeeKlIuUrkpJx+FUrltoJ9atE1QvHAU5qo7krYx7ycjODg5rCuLgkkL1JqzqNztZh6ms +qItNLgn6V1wVkczjzSuzTs4WkweTXS2UAjHI6iqWmWyooGK24Y8KcjpWVSRUYkyDoasLt7VV3AEZ +qwjA1gzpekbE3ygHjmq7MQcjpUzmoXGRQjNkTyNVZzu5qaTIGBUOcritEQ30IXBJPNM6cE0/oTzV +eVgT1qkD0jcZMRyeuRTIkPXrz0oyCQKsRqFGB6U27ImMU9SaEcirqgjGDUEC81aUDisZM3Q4Dnmm +nIz3p/bimNmpRc9BnWn9FOajZhTGmAG0mqtclPuQTSLyOtURnzD7c1acEnvUYXBFWtCJb2Y5DtIH +rVvPB/GqxXJBqwoGOaUiqezRCwLE45pq5zj0qYbQSKjK7WznmmZkyIpxkdKkKAA+lRq2KTzc5A6V +Nne5tzK1gyASuaaeTntSOB1pcgj9Koy6jwFOMdxT1GDg+lEajGT6U3LZ5qTWWqTB9mc9KYzk5206 +QcZHWgDgcU0Z6kQDd+hFLyCMCrQjXA9qCqY5NHMU42Hwfd5qymCRmq0PSpweR61m0VF2ZKwHTFQy +AY461OeBUL8jIqEXJWZnzEjIx1qmSQ2BV24OM/zqi5WtqZlVWg95wqg5p0E+8cmoWXcOOeamij6Y +GMVppYxuy1ExVvSrQZjz6iq3lnbmpY24IrNlrQnBBGDVeTaCakVsHBpXRSDxis7WZunzIqEnoap3 +6B4mBGTVuTg4FQyDeprKrG6OqjM5Q5jlxWnaTfd9aoajE0UpIFSWEucE+1eNWhY92nK6udNA2cVo +RH3rIt3bg+1acL7uKyWqKNGMkf0qwpwKpxngZqwvpS2AnBBHFKMVGpOaf06UMBWNRtn86ecYphJI +qHctETg/nUD4I/SrB44PSq0gx0qGWilKCOAaoyr1q/KF4znOefpVSXaPpWbuWiqPkbOfpWhE7fL6 +ms18AjHtV+AghcVlUjrcpGjCd3NTqV9KrQkA1Mo7ilHaxDJduf8ACk4QZNPzgDPBpMgjA5q76CFU +BqcDgYFMXABNSArjNPyEwO3vTHHH0p524ppwQaYDA2B79KQAEjJp3H5UxgBVQQmWDBGVyKz7iyVs +t04q6spC+wqKScEGu+FrHnVU0zn7i2KHI6VV8k+/FbkgV1JNUmCg5FS463Iu7FIxsoyDVUySKepr +VdHZSAtVZLd8EEcihxdhpspm4b1xTBI5P3iMVOLY8ZFBgKj7p69ahRe5V+hD50yjIYkmmi8udxAY ++tTm3Poaga3YN0+lPVATLqV2gGGPtSnUbk4y5NV/IY+tHln06UNNgmW01S7QgByDVpPEF+FIDdKy +Nj7vWgKck478UrvqM1/+Egvj/Ec0N4ivf7xrJCHNJsOTxj0pK42zXj8Q3a5G8kVZXxJcY681g7Bn +kZzgkGmhX49Kd30EdGPElx3ar9r4lIA3muO2MTg5po3r0PFHM+g7I9DXxJCQPm7Vaj1+3b+IV5oG +k65J4qZbqVOAav2jFyo9Qi1e2cffFT/2jb4++K8n+33SnKsRUjapegEBjxVe10FyK56qLy3P8Qp4 +u4B/EK8nXWL5eRIcdqnGsXxHLn3pe2YezPVFuYm6MKDcRA/eFeZR+IbyMY3E07/hIL1mBLVXtRch +6aJEbvTg6+tecweJ7scMas/8JTKDT9qg5Gd9uHrS5WuEHittw9DUq+KwTgmn7VC5GdoVVu9N8vHe +sG18QwSjluaunWLZRy4qrq1xWd7Gjs96QoT3rJbXrUfxCkXX7Nv4xU+0i9CuSRpmE5608KQKzDrd +qP4xSprNq38YpqUROLNUMRS76zjqtoBkuKb/AGvac/OKfMibM0Sy96BsFZh1S0bBDihdSgPRh0o5 +kPlZplUagIBWd/aMPTdUqX0b9DTTTFZl7C0bRVXzz1BoEjnvRcLFrAoIFQB2x1pjySg4AP1p3Cxa +xTQDmq/mygdKcsx78UBYsgVy3xE40C6/695f5V0iyg9+K5n4iEnw9d/9cZKuHxGdT4WelJ1FcB4x +z/acv+6n8q7+PrXn/jAkarN/up/KssS/3bOrC/xDmm755NIpHf0oznr3pBnHtXlo9NgCQSD9KcvO +T6dKaff60ZGD71Qh/wAvJ/Ojbx8tR8DrT0yeBUpjH44OaTPanA8HvTDx09aHrqBKgAp/Y+vaokPH +vTmfjFNPUTQ1hk5J+tIAecUErzjtRnHP4VVm2GyGknvURcfrTmYfjVd5NorSKIuDyYP0qneyEwnH +oTSu/PWql8xMLEcY7Vry6EnMS5Mh55zWhar8wOPes1mxKe2TWnZMCw+tZVLo601yl27LeUfYVzU5 +BzziunvkPkHHpXKTnBPX0xXQtUjmi7XuRIvz8V0OmDkEVz0XL+tdHpgGQfassR0NqfwuxLfY/Xmp +NOILDAA6UXqhjt9c0unqBJ6H0rmqpNaFQ2OiiX5eKbLEGUjFSRghR9Kc3APFTG62MJI57ULb5Pu1 +yd5CVYkd69Au0V4ziuH1hWjZs9M110XqYVFoZmSc557CpImkBK9QabCELDPOat42/c9K6m1sc9mV +Zoh1xyTTUcL8v0FWm3MBkfjUTW5HIB4pKV1ZglZly2cYGOtX/kGPcck1jROUwRxirQkldeOayaaZ +o9USXckfAH51ms5DHHqanbeGy696qydelaLUlaE4uMADOKTzhIc/zqkT65oDetV7NC5y+hBOAehq +UpnhT0qmhJ6cd6twZzg1nLQ0jqSQRkH86spCOmRzViG3DMtaEem7sMBWDlc3WhDY2/NdFaRcDiq9 +pZbTg8VswwhVwajdj5h0MZ7VftlKkn14psUII49KspGy4NWkTzFyHgVYU1XjPSrK4rRGTJQaeDUY +xinr2qyLEueKQk5oFKO9MkBk07BpucUuaAHU4Go89aPejULEueKOtRhueaXdRfQVh3FGaBzSGgBG +FRsM0pJxTCegoY0QPxUTYqZhnNQPU3sWhrHjFR89Kdznmk6VN7jsHSmMSBT2IxVZ3OaXQpIhlmbO +BUCMS3zVI6HOarTzxwLzQjTRI0UmRAOad/aMKdWFcbea265WMk4rBu9WvepLDJ4qoq2hLiup6a+r +REfI2aWC/a5+4eh5rzKy1O7Y8k8112h3Mpcbu9aXsZyjZaHVbZmBHqOKqTWM0nQkVswqrKp9qe4U +A1rdHNGTucfc6bcKc9aoHTpWY5yK7WSNX4xUf2FD2rOUr7HVGbS1OattK24yK2rez2YzV9LZFHAq +YRAAcVi4jdRshSMLipxgU8IeKXaaLWIbGGjFOIoA4xVJCuR80E04im0hjSKYafnmoXxnNGg0Rycj +gVVdc5q23FV5O9KxSKLqRVWR+auS85rOkDh/UUmi0I/PSom704vjtSE5696SBlWXmqsi96tzcZI5 +qrK3GO9XYyZQkODgdBS202yQEHnNQ3LbTmqqTEMD7iiWqLidtDKJowp5zVc6Rbu5YqMms3T7tsqC +eK6W3k3qpFVTbvYia5dUZD6HbiQOFGc5rRihEeB+FXdoPamkAYr1qSsjxMTNtjAtSomBTlXNSBR1 +rVs40hAM4NTowFMGMe9MLY5qWrmt1FGg8qLFjqTVPcTmo9x71IhyaSVhXcmNIJFVZIzzxWgQoFVp +SuKqMiZwsitv2jFM34pknXPSm5ZuB61pYyuSqu5qtJGAKihQdTVg8dKiTN4pJXI2GTikPXmlLDNI +vNBG7IyDn2qEq27irmwU0gU0xOLWpAM9KeCQQetOCr1pcHjFAtRBkU7cFU5pwAAOagkdfWjcvZDJ +H4JFZ8u5m/Gp3kJJxUBPetIozk7IdFtHXtUyEZz+VRZAWljGMHNUzJM1YpAFoecHIqkJelKXyPes ++XU2dRtWJw2KkSXA61T8zHFMabacdeKOW4k9S684A61Ue6Xmqsk5OcVVaRuT1qlAcpGgLgetQvNu +JxVQFj2qVFOc89KLJDi29CWPmrCr6VFGpB4qyualloVVCimHPOKfn9KccYoREnfQgxjk0gZQakZT +niodhByeMVRF9SSWVVXrWc4MjZHrT7hmyAKltYcnJqrKKuF3LQZHbsMGtCNcDmpkh44HFDKFqHK4 +cthUznNT4FQJU4OTUMqI4ADmomYA1K/AqueSfaki5voNck4qaJc1WJ5FTxvjrxTa0Ji1cueWNtVJ +gBipjNxxVeR8mpimaVGrERA9KcKDijBxVmUdwJ/SmseM0McVDIWbgU0gkyGRl5zVQkk8etWJBlcd +KhVTkdcVoiLMni55NWFfBBqBMjAqwkRIJxUMpb6EquSaCcnNKqFR0poUEnNSUwJ4OaqSsc8VYkIA +69qos5YnmnEaZMuG60oHWmoeKeOevT1poVR3I3ppQsakIDECpkj71V7Gai2yJBtNScZFS+X3qJhg +5qbjcWtxJGHXvWNqU21GxWnLIADmuZ1uf5CAa0pxuxSb5Tn7yVpZDj1NXtLsnchiD1qjYxmaUFvU +12enWyIvQdBW85cqsRNW0RbtbYqoPpVxiFTApUB7Dtiobg9vxrm3ZcdCPed1TRS4PNVQ3TFBbZk/ +Si3QuburmmhLe/HFSNGNvPUVn2s/qaumUbKmSaYQs0VLjjkiq5YKmTUlxIM8VTkl4I6itIoxm7bC +s5Iqs7c4HXNHmZxjoOtRrvdue1WkNu8R+DniriZxyKbbwjOWGfarGBnGMc1MmmUotIkiwB0+tWox +ntUCKCPSrKrgcVlJlxWor5A4qKQ4XNPZm79qhkcYpIqe5WkYnmoASTyakkbdkCoMHcc1qloZXsy2 +iIQPaoZBhs+lNEzIRmiR9wz60kmmVOSkhwdSMmpY2DYxVaMBqniBBAAoaFTlqSFDux+JpsoGBUrA +5NMZcke1JDmkmRKrcjtUiQ8E9c0ileBVuMpjAok2ghFN6lV0IAxUaLnIq3KyVUDBWPXmmtUKSSJ0 +YDihsHgcGoyx/wAKfyRSaKi7qw5Rkc80zkH6dqVD8xpzD5uKCBpdgRjv1p2Cw5oCKSM1MqfL0pNp +FJNoYmVOKsKRgGq5UjGamQjBpPUCbJOajbjg09OnvUbjGc1Bruinccg8dKz+53DvWhKCc55qlnBI +xWkCJruCjFXYQOKq7crxwRUsLsMg1T1RnG0Zamh5fynuKrHKEEDvT/tAC9cc1C8m4Z9alJl1JJ7E +xcHkYzUivuGD1qismCQetWIjj60NCg2mJIoPXtUJAAzVpwx5FV8ZyOlZSOunYwdZhON61j2sgUqM +/Wumvo/MiYY6VyfKTHPY15uJhZ3PWws7qx1NrJlR61qwNyCO1c7aS5C1tWznFefsztNeFjVyI1nW +7DPNX4yOCOh5ot1BlgAZpT2xTeKcaAA9BSdOlLQwxmpY0Qyc1BIvf0qw2CPaoWzg9s1GhaKUoJPN +U5lzyO2K0HqjL82cVnItGdLjNWLRzkdailU7vbFPtD82P1rGonYs1kI7CrMbdKrp2qQdRis1pqJl +onoPam9AR6U0kAZpvPPerUtCbEmRwPWnEYAxUK/rUq8r74q4sGLnjFN55pTnFN3g8USegJEgXNMZ +SSRUiNyaViOpqqb6EyIn+RO9Y1xM+8qD3ranIMZI5FYzIAzE+tdsNDgq7lctPgnnFCbm2jGcVYJD +DFTWkILVqmkYpXFyETJFVJbmPPOBWpexqISR2FcRqM7o3BPBxTj72xsrRWpuieHdjNSGWLmuOW9k +DZ3E4NWU1J+rGtfZk+0idT5kRP1ppSJuwrmG1grxk/jQfEAHIzxUum7Fc8Tp/KQg8CoWiToRWJD4 +gDfXNOk1oE5681KpsfPA1jBGeRTfs8X/ANasf+1xg4OAab/axySOehJ9KfsXcFKBuC2UnHrTjaJ9 +ax11geverK6qmCc84pezYXiaP2RAAT1ppsVIyOgqoNUjYH5u1KNSUY+bmk6b7DSiWjZHoKgayYHF +NGoliMHvTzqSDk0ciuHKuhE9nIvNRfZ5MYxzVs38cgwOakjnjz0H1qHTTYclih5LqMEdaTySck1q +M0bY6VGRH2xSVJMTizOMJyKUDZ1GDWgUjwR3qIxIehFJ02TyspeWcnvk0oi4ParxhGM9Kj8teRSd +NhZlXY2Mj9KaA+7DcGroQcj1PWg2xbt+NTyi1KBD5xmkJYflV8W53UNZ/wA6ORsdyvDNKgJDHrxU +5u7ruT25qSC1+fBHGa0TaxYxgdK0tpZiSfQxGmuSOWNR+dOOrH1rSe1wT+lV3t3ycipcWO7K32uf +BO49MCnJeXI5LHinG2xgGovLAHHY0rNC5ieO8uHOC55py3c2CCxBzVUOFzgc9qcHJ68ZNK6QXZaF +3cISAxqVb+4HVjzVEsM0Bixwc8U+ZBdmidRn67zxT4tZuEPDdKzTwDim8jNLmaY32N4eILjCgMas +HxHPGWVsgrgEVzPIxtPHWk/eEs2TznJPvTU2K2p2dr4mQ8SHmrf/AAktrx82cVwP45OOtIN2OPWn +ztBZM9Ih16ylGdwqx/aVm38QrzRJHQ4DGpvtFx2Y/SrVVkuKPRkv7PAG4DFc949vYZdCuVVg37uT +A/CuaN5MMYY1S8QXckmmyKTkbJ8j/gIrSnUfOkRUiuVn0TH1rz7xj/yFJv8AcT+Vegx1574wYjVZ +v91B+lViP4bNsL/EOdjlRPMDRht8ZXnsT3qPHTjqaCf1pQSMDrmvM6HpW1EI6GkUjgdDTwM5z+dI +RnHpRZ30GOwMGlT0ximjP5UE4ziqfcQ7kH2pGc5x2xTSfzpjH0pR1AmRjj8aUkkZqsGIOOwqVWD5 +6DA/OqS1Ex2eevSk3AnGaTIwaYSRmqs0J7EdwxUHH51VLg1NIyuP55quACSa2W1iHuN2jGO+arX4 +UREc96sthD35qnqEhEeOvFWlcVzl3P71vTNaNkxVlzWdgtIcD8q1LWM/KeOuKxqHStEad0VaAg+l +cleKQx44rqbnKxNnuK5i4HLZ6+law0SMLXTK9tkt6etdJpvQZ9K523XDjB+bNdPpqjjPescS9Ub0 +b8mpLdryM9faiwDbxj17069+UjuKLE/P0rnqXsVHVHQR7sAe2akYnFQRsSufangmiCurmMtyGRdw +Irl9bsGlDMgya6wkYK96p3EAdTmtac7O5lONzzcrJCxzkVKkjnFb99p0eWbHvWNJCI3IPHtXYpqR +g4taMlikK4yOO9WCyOPu8im2qjK9K0Tbxdcce1SnqKSsYUoYNkDgU+C6RQc9+1X57aNvu9uCKy5r +dlJIxV2TIUh8twsh9u1QSkMvPrTUyrZbmpJVUrx+NPZj6FTOc1GSRilbI/lQwJ+tbIybY6OYirlt +K5bPvVAIRU8LYOKicU0aUpO+p2WmsjqM+vWuiijBCnHSuS0aQMVBrsbcttHpXnW96x2NksQ56Vfh +Uccdqqx9RxWnbLnHHWrVxMsRIFGanHPSlUDGKcF7Vql2MrigdKmUcc1EuBT/ADFFUJslHTFPBqDz +FIpwkFOyJJ92KVZAarmVeRSK4zxSHYt5pM1CJKeGzTJsS5NJu7VHvFKDSHYkFOUmmDFPAOM0xEgN +JSDpinDmmSNaoTxUpGTTCO1K1xldjUD8ip3BqBuOal3LRH+FJ6HtQfX1pRyCKSYyJs9OlCxFucVI +EyRmrUcajFFim7IzpocKfpXN3yl22nucV195HlcDrXPy2m+TOeabWhpSd9zn59Gk3GRRx1qhPYhh +grzXbxwuF2nuKrS6Sr896ejXmS731OMttP8ALYEdOuK6fSrd1dSBxxV+DRo881rQWUcQUAVOrd2K +TWxbtpSEAPpVjlqgWIVaTiteZmNkhBHTwlPHSnClcm5GFp2yn4pwpBcj2mgrUhpKqwXIiDTcGpTT +D1pDRGeKbTzTD7UhkbDrUZwBUjZqNlJqC0RnaTVeUZqcg85qJsGhXKKMxwKz5Dk1qSqMEVmzYBoa +KTK5GTzTH5HHFDMOfamk+vepW42QsfvA1SlOTx6VdlPBxxmqM2B+VaJGTM26ySTVBpCGx/KrtwcZ +GcZzWc2cn9KtRuPmNOwlZnXiuz08kopPpXHaTA7up7E812tsAqADjFdVGjrdnHiq/KrIvLgCo2Gf +zoDHoOtOHXNdqVjx5y5hyeh/OpVG2o0xwae8gFD3CKsrsQ4phIAxTd2Oc0wndzVJGbdxSwz7U9JQ +oqF89u9RjdmqsmJNplsznnNV3lzntUbEkcVHzjNNRQObYSMWNSQqx5NRRoztk1eiXaKUnbQcFckU +ADmmu2OlKWqJ3OKhIqT6DHYcVJHtqBh3FIrsDVtEJ2ZeYgCqzPk0u/NRZOc+lJIuUrk4xxmnLzTF +wxFSEFaTCK6kUpxmqM0hPFTXEuDVTIfP1rSKsiHrIZk8mgDPzHrUiIG61IUVatGc3cr7SxFTqhAx +UsMQOSasiNamUhxp3RW24GT1FMLGppsLVMucnFC1BqzFdyc4quzk8VLzULVSQ3oMIJPXIpwXPNOA +qVV6HHak2CTbGBCBTxT+Mc0zHIqTW1kTrzjFTY44pkaniphUsOg0LilXBNBbjmmB+fxpmd9ScR5q +GWPANTLIKbO2RSTdy+VNGUVJfp0q/bLjFQrHkk+tWYwFxVy1RnqmXUI21FIQc4pBIKbkkis0i3K+ +g5OADUygVEGI61Ih6UMcLEjgYGKgfODUhPvUbYIpRCe5X6E5oySTinFSaeI8DNXdEcrGqzUud1Lt +x7U0ZzSAfj2p2ARigHNOI4pGkdiFx2qvJx0qywHfiq02e3SqRmyu54IPWowpJzSOegH0p0eT71ew +X0LMSg1ejAHFUYieatpJgAVnIuDRM4AzVZyBUrSAqfWqrsc/SlFDm0R3HQ4qiAd2fep5ZMt9KYvz +HmtFsQydQBTwewpFBPanj1pBIbgFvSrCMBiq+dpJpPOxim1cmMlEuMwxVeQrgj1pokJ/pTJCc1KV +ipSuUbp8Z+n51x+qTGSTaPXpXRapMQrdveudghe4nJPIzXTBWVyYLW5c0iybIY11trGFRQRiqdha +gKOPpWsE2gVnOVzO15XFC4Bqhck81ogEjmqN0MZ9KmO5bTWpVQkfhTZmIXOelJnAzmo5CTgCtEtS +XL3QinZWNWvtZYYqp5fHHWkXKqc9R0qmkzJSY+aUlqiLEgDrmojJuP0pC4zjt3osCkmxxUgmpIRt +IxUPLEY71YQNwBSZtoXUYVIBuPNQRK6mrEedwrNormuWEAqwmADmo1UcEUpIGayZpAbKw6dqqS9P +l706aUdKZ1UHP4VSWgrpsiAHTHNNxyQalI6nIpH7HvVpkyWuhXMRY57VJ5RxTwRUwwVzQ5MUaafU +qIDGwFWV65FQzDnIqeL7tDEtHYsKOvFQv8pz71KrHH86Y4Geahbmk9VdEO0luKUllxT37baVVyee +Kq5mkyH5jksKiYEEHt3q80RINVZRgH2ppjlF7sZu6Y6VMhQjA9elQIQwx6VIgIxim0KDsyZVwcY6 +05hkcUbWOCPSnqoPBHNRcuSsxseBjNTGVQOKh2kcUhTt0pWuCdtCQuGHSlj4OKSNCMU/kGgRIG54 +pkmcZ9aeOgzTXzg1DNobFVuB0qq6AMcVYduSKhbJOOhq4kVJEK5z6VKPlyfUUm3inBS3T0qzN9yO +Yngg01M9SakI6A/jT44w3B9ad7IlRbdkQkMH3DPAq3Cc8ZpHiA+YVCpKMD2pXuU48peOMYqs46ip +gdy1E55rGSOilK6K0q8MCOo6VyGoReROfTOa7KRuOlcxrseDvHfgmuatFuB34efLOwyxn6Ct+1kD +de4rkrKQgjPXNdFZyg7QfrXkT3PXWx0MDcDFaETDism2kHGK0YeVY5yBg1mtUNl5GWnSY8vAGWJH +PpzUEbZwRVkdMGnewhykcZFI/SlAHrSOc0mNEJFRuOtSt04qJumKhotFV+mKpS47etXnX73NU5QM +8VnI0RnzjIJFNtiVcZqaVTnGKhjOJQCO9Zy2sUa6HJFSocjOagibI46mpUPWsWwJGOcVInv2qI4B +BqSMnmnHzF0GbsEn3qZGBXNQsQDShhjNCY2iZSCCOtNYADj1pFYAGlUjJzVadRaixg9ac9AJwMUj +lsYFXB9yWOZf3Z9Kx7lgHyDWsWPlkGsecZYn3rsjLojirLUWNR1q9axuOelU41JAJ7VqWzDaM1to +kYQ1ZFqDEQt9K861QtvY9s816HqbL5DE+lea6tMdz49elOja90bVPhMt7koSB0phu8+tVpXJFQby +OvrXUjmZpzXNm1smA4uvMbeT93b2x71XMjEcVX3KUJJwwIwPWgSHg8DAp30ESrM8fP4Uv218kZ+l +QE/rUTcH0oAu/a2Kj6mmfbZeRu4PHHeq2Tg5ppPPAp3Yi+l+696cdQkB3Ake9Zm6nb2IC54GTQM0 +f7TkH1anLqjjuc4rKyT+FHPWjULm4NWYbc0HVnI61h5NO3cUBc2k1d171Yj11lHXPaud3A96N1Kw ++ZnVx6+3T3/Kpf7eOAO4rk1m98cVIJlzk0cqH7SR1X9uNkfhxR/bXcfrXM+ap/kKesvBGfXFLlQ1 +Ulc6pNbBXGfaj+1l5ORj1rmN/wAowepJpxcsBS5NSlUZ0yaugYBj1q1DrcG3k1xbuc8HmgTFVP04 +pOKH7Q7V9atV53VCdcjPGRXHGVz3oLNzu9DS5ENVDtI9bjJxuFWBraEj5q4USsikdGypBPYUC5cc +Zz7/AEo9milWR3n9rRnGSDTv7SjbGcVwa3kgOC+OaG1C4BOScg0vZtbB7WL6Hcm5ifoaj3pg81xq +arcIcZNPXVrnJ5qeRibg9jriEGMnPPSpI9prkl1ubODxjg1Yh11uD2qfYq5DaOm2DpT0ROMGuf8A +7d5GOOKUa9GMg+tCpJMas+p0fkjGO5qNocYFZcWtwthifpQ2uREjnuabppdC4xT6mp5DcbfzpPIk +Pb1qiuuwY681NHrNrwCwqJQXQOQmMLbehpnlkkdfpTjqVs38QoF5bnA3CocEJ05AEZeRn3oct8pH +vUiz27Yyw5oeSAdGBocHfQnlZAATk1T17H9ncddk+fyFaIkj3AZ+lUtdUCxuMHpHMP0qqMGpq5nU +1i15H0anWvPfGBH9qzj/AGU/kK9CT3rz3xbzqtx9E/kK1xP8M1wn8Q5rbznoadyCKMYNBwQRXltp +s9MXjHFM5/WnDIHvTcnI4quohTwMU0kfiKVgfWm4B57iqTvoAvGB7CmMfU0u75ScVGzHr+GKaBgS +DwDz3oB29/YU0etJ6H3piJd/brTHcHv9aQn061EzYz7mtIJt3IbGE8dOKSIDBz1zTCSeO5qQE461 +pbTQkhmPzECs+/8A9WRnoDir0zjPT3yao6hkw7sYpt2COpz0ZJcn3rTslZ3RepJ4rMj5c1p2qrke +xrCe51PYvXe3yTz1FczcH5jn1rprsAwgdK5qdSSR7nmtk9jCPUjgG589ycmuo0xTtz1461y1sDvr +rNMwVHsOKwxG6N4fAF7y3tRp6/vPrilvRnp3pbH5WU9a56l7DjsbigYA9qFBzz1PFCL8poUnPqKc +H2MXuK3TFRFcDB96mYelQye/FWkSzKvkwG+lcbfyjziBng12GqMViYg9jiuGlbzJiPfFddFdTCp2 +NGx3EZHWr/muO9QWcRSPdwCOah+0DzD9cE0lq2wmrKw+6uZlX09azTcs2Qa0p41dSd3WsmRDk/jW +8UmrnM3qJkcnPWn7jgjqKrkHJyacO3WqaGmKVJ4pFU5wacWdTjrTlBJ49KdxNDm8tVqEMuR7VI8R +YdDmqxDLxRFXQm7Gzp915cileld9ptx5sYJ74ry2CXawzXa6BekqFLVyV4cr5jrpzUonZJgVp2zr +gVipLkDJ61oW8g61CvccrWNYMO1AlA61Ra7VO9U59RVQTuraOxkzZedM9azbnUEjOdwxXPXuvFch +TXPT6vcTyY3fLTGl1O6OtRIPvCozroJ68VxkbtN8wY8VbjjkJwGpeheh1cesqxOTV6PUFfB3VxkU +VxnPatS3SZQDk8iod9h2idVHdA4+YGpxP71zsUki/hVj7Uw9TR5i5TdWYGpVcGsOO9PfpVyK6GM9 +jSvqJxZqBhUwY+tUEmRuhqzG2cVSZDRYzTt3rUYxSkE4qkybDsimMcUoU0x6NQsQyNVd2FSyE81V +ckHNQ2aKIuT+NSx84qoXzUsb44oQ2i4qAmpVXFRK4p/mUyHcjmjL5HrVNbDBJNaQZaCy9KrfcFJr +YomEIajZFxV1sGo2ip2KT7leNDxirKA8ULGRUyoamwNocqnFSBKRVYVKF6VVjNsQcU8A0oUUop2J +bFxS44ozS0yRvTmkpxptAxpqNql4qNhSZSIzTDUhFMNIpEZHpTDjtT2HBqLmkWNYHNQPxxUxYnmo +n71NxlWXoc81lXKk5NakmTms64FGo0ZjHaSKXcMDtTZ87uKaMY49PypPRlMa7cnNVLjZ9KsSEAE1 +SnbOapbmT8jMuSvX0qqsZZl96sTAs2OuKu6ZZGaQZ5FdNKNyJySVzZ0ayKICQOa3woAHFR20AiQD +pgVZC5xXowVkeHXqc0rgq/rT9op3YUuAKpmSVxjMFHFQO5JpXPJqFyKpImUr7D946E1Km2qZkFKs +2DxTaCNupbcDFVySDTDce/4Uqsp5zQkxTtfQQnn0pCckjtTmxmlRM802xRiPiXH0qweB1pijFPzn +rUbs02Q0mmYpXZc4p0QB5o2JSuxvlsRUezZwaucAVXlxkGmmOUUkRjrinEUIATyKmCgjH6UNkJDI +s55p0z7RQ2E9qpXEpNCV2U3ZaFWeQs5FEQCj1oVdzfMOnQ1OkYx6e1avsZrRXBV/U09iO9OVQo5/ +CmEq2cdRSIHiQLQ02MYqq2ST9Kjyf4jT5UxqbLDSF+Kh8s5Bp0JXJqfAIz6Um7FLXUjKD8ajaPGa +myopvDE+1IogUfhUmNoJzTzj8RUTtRuVETIzT4lziolXceelXYUIpPYaepKqkY9BSnHNP4xTCccG +pQpPoRHrTDkdOalwDThF7VVyEisrsO9L5pbgmnSLtJquMbs+tUkmJtosom45/KpGQjnninW6hl3Z +57VZ8sYxUOVilBspgsP8aepOakdAKYo5p3Js0yRcnjvUg460iVIcYNQzWKIsjJphNOOF+tM700S9 +x6AnGan2riqwfBqTzeopNMuMlYHwAfamKuck96RmDHFOGQBTRDd2OUCh3xginKoPJpjr36il1K2i +RyMduapyE8gVZfkEdKqsOcVojLdkJXnmpI1HpTWHOKlTb0FNsY5OCcCnjJp0a5qcQjHFQ2VGLIMh +etQymrLoAM1TmJ5poTXcqOQT75qaHGarYLP6VaiA4q3sK+pZXBFAAA9qFyOV9KOAMVBc7ETEt06U +0ITkU8YLYFTrHnpVXsZxjdkJUKOKqSuRzmr8y7Qax7uQrnNEdRzjymRqUhdtoOcnmpNLtVVt1RBB +NKT1rZs7fao4xWsnpYe0TTt0wtTsRkCmoihRiopHCc1juSTlto56YrOuSGzzT3myOuRUTKX68VUV +YqUrqxUZWY8HinBOQMVMFCg5FQu+DgcVqjmb1He3pUEpChs0x58cDt1qtJKTnvTUWPnikG07sg9a +QLkmlicHI5/GpE6+9U7kJJyuSxRZH41ft4hxmq8QHbrV2NwOKwk2dUbEgip8Sc+1DMT04p6DFSDa +uSAKKryyBc1Mz46daoXDE5pRV2VeyIXYu1TLjOD7VXCkNVxU6c1bM+oFVPam4yD6CpipwcVEFYZp +Iupci6D6U3zWx7d6kZByB+NNSLOc1WhCvewjcqMU6FjjHvTyhVajVSrc9TRo0JpplxeRxQUPJpEz +jNTdufwrNm0dVYhA4pqkrUmKZJnPHemZ6imZRVV2BzmnOhb2NM8rHv61SSQXlJWIo8Bsdu1WhjII +71VOA3FWQVC8U5EpllDxTu9Rw85OalZWHNZdTZu6uMfg5pybSabwy59aEYLwafQnS+paVBg5qF05 +4qTzcAZ6VG7bulSr3NJNWHLnAz0pJM9aRMClYjGaTCnuUpVOeeOaaQRippM9qgOc5q4smpF3JCoA +zSqCOlCMCvSngAg07iitCvKoyGB7U1XI5HpTpMj5O1VW3ocdiTVJGTbRMbgAlT0p6FJD9aq8sR3q +5ChGKHZDu5E8fA2HtUcoAPFSEEYzTHA696zkbU3ZlZ+mBWNq8QkhJ9K3Cv4VSvYwysuODWTV00dX +NyyUkcRE+yQjPFb2nzBsc5rBuUMM7DB4bitDTpAGHpxXj1o2Z7dKXNE663bAB9RWrDIcDnrWLaOC +FNa0GOK5ramqNKPGOKnwarQkYqypp+YDwCaDnv06UoJPShhmpvdAiJlxUUn07VOwGOe1Qtnmp8i0 +Vm5yaqSYwR3q63XFVZkznPvUNJ7FopSZAqoxwQe+auSL69zVR1PPSpsMuQO2OfSrMbf1qnbkEAel +WoyMkfnXNK6ZSJldT1qdB1+lV9vQ09S2cetJNgxf4vagc/TmnKCTipFRcetXZdQuRohIzT124waR +CRkAYpq5By3endCJ1KYweKHPTHFMGSc0rAjHvVJvYloZKzAH0rMY5J5rTmB249qynU5/Gu6lGyuc +NeV3YmTgYBq/bYCgVnoDwBV62GRWz2MKe5BrBIt2wegzXlupSkysvXJNenazgQNmvK9TIWV+2Cad +HVm9T4TOm9Kh9e9Ocg5qMmuo5Rxz60ooG08+1LkcAUAhW5B9uvtTCe9OYAdKbx9fagBMHH1pv1qT +OM/rTMAmmIbRSkUYoAcHAR12qd2PmPUY9KblcYxznrU0yiJFieHbJkOWz1VgCP8AGoDjt0oAKOKU +HAPA5GKSgQppAM0tHFAwxziilNNoAerc8VKG49yKgFPBpNFIlDtj1pRJ0+vIqLpz2zSjsaQ7km7j +n9KPMJ/SmlSOCOmCaaf73NAEoPIPSlYjGPQ1GpPHPNOzn86YhWY8Fu9N3gk8YFIxzx3pMqQeeaLg +wZgc4zjtSBu9N5pDn060xEhdcAYwcdfWgFQwPYVEaUbuRk80AP8ApnFP3AABT/8ArpmMAZoPByPp +SGS7zjJOfWhjzk+tQ56mnluMEcHmjQLlhZiG+Vs4AHNNaRz3wKgDAGnP/Ce+OaQJ2HCZxnv70olc +c5qInr3zSB+aLD5iz9pcBSGJzy3tUqXU5wA2OOTVLKj+opwb/GlZD52Xkvrk8bunv6U8ajckgBiS +TwKzweOOP6U7g7Txnb+VLlQc7NaHUrjOS2Oat31681nKrn70c4+pAGKw4yeBV66lLWij0hmXj6g/ +1q4xSaIqTbTv2f5H1hHXnvi441S49AE/9BFehpXnPjD/AJCs/wDwD+QrDE/wzfC/xPkc91PApw25 +96aOOKXj8q8q2uh6QrEdKao5+tByOcUAA9Kb3H0FJGaY4Jzj60uTkUhLfnmqXcRGSwwO1R5ycHrk +9KkLHHNQk55960Vr6E6jm4+lB4AA7849KTJPUUN2IrRCYx2Aqs7HI96kkLDoc+1Qc5/GtLW1J3JF +XODQ5+UelPROCe9RPnkLSvqFiHKu3tUOoxjymPoKsRqu/pTNSGYSO1EmmOKOYjGX/GtS0jy6qeM+ +tZ8SfP8AQ1q2x+YH9a55PU6WtCzdgeUxHpXLzbQxHXJPNdLeH93xxx1rnrnCtgY471ve9jGC3ILY +HzPx5xXUacCoGc9OlczbBt49M11mlxiXOWAyOprCvrJG0dIDLog5z1os1YMM5yDUt0ixfM3DkfKP +b1/wpLIgkZ596xqLQIvQ2E+ZfwoYLnjj2pIjwBSn73saIrQyYZAFMcGkZiOlOPIz14rVEtGTqcZa +E/jXBSgRzNn1r0qeMPGwPp0rh9YsnilLKOpNdOHmtjnqp3uiCTUZBGUXPQg1QWWQtk+tSorngd6e +sD7vet0ox0MpOTdyb7QWTHrUZbK4YfianjtnYcgVOlgxOWHFTdIVjLeM8belNVJBx+Nb66eoHOOl +RNbGMnjHFUpOxLWpleTITirlvaycArUgkVcHjirdvchjjFRKTsUlci+wbgcnGBxVC8sdgzXSwxF+ +uAKq6jEgDcg1cGROxyTBlP8AKtLSr14JV5PWqU4IY/Wmwthx25q5xUo2YU5OMj0e0v8Aeq5btV0a +kVPWuOsp2CjBxVs3TevPSuOMTrZvT6wVy35Vh3msynIzgntVCWeZ+Bzg9qWHS7u4bcVPJrRK25Ni +NriSY45NSwWcztnnkVuafoB+UsMn0ro7XSIYyDt5xii4aIwLLTJtoHY9627bSxjJHNa0VsigADpV +tYccii4NmatiAOlTJa44wK0RB0qTy179aVri5jNEOO1O+zg84xWgYxjpTdmKWoXM/wCz4PAq5H5P +lFCMEd6kEIo8gg89KOXW476WKMcrxuR2zWpbzg4qnJbfnUcfmxNg1MlYrSRvIwOKnB5rOgkyBVtX +pxkZSiTE4qB2zTic1C9UwSI3NVnIJ96mc4zVZ8ZqNDRIacdacDjHrUOeRUi8/hSuVYsI5FSgiqo/ +WpfM6U0yXEl3H1oDc81Hk9aXnkmq5tRcpMBmpAtQo1TLzxVJkMftqQCmLUgIqtCWPAFO4puRSU7o +mxJTgQKhyaaXNK9g5SbjcW9QBS5qJWp1MLDutHNHpR+NADelIaU000hoY1MIp5NMxSuURmmkYqQ9 +ajY0iiB881C57VOcd6hcAUmUVJRiqE4OCa0JuaozcDmiwzHn6ZqFWIB96s3HU+9UydpqWBHK4BxV +GZ13VZnIwcVQc7ifXFaRjdkMaULNgV0ukWm1VJHJ61ladamZgT25rqYF8tQAK9KjA83F1rLlLI4A +HNTL6GoQAcVKvB69K6DzNWyb5VH4VG8ielI8g59aqs4oUblzlbRCucdOhquc88VMMkZpGAHWrRny +3KzqcdetN28U6Q84FKqZqkZvciGe9Lz1GeKsGIHpSAY4NFxxi3uNj3E5NWowPzqONcnnirIUKOKi +TNkgHUUj7QDzQzAVGxycUkTN3GNk0gkKHFPKEqeaiEbc5q9CNUWRNkUzJPFMAK1IoHJpWsDbYqri +pkx1qPBNLkL3pPUqKsR3bqOfasxsuxFWLly3y5qOJRnnnFaRVkRJ8zJIo2A6VNj9KAwCkCmlwBS1 +YSstBXdcYqPHGe9QNKuaXzRinZkxs9xsvFVmLE4qV33A/WkVRnniqWwmlfQkiwAPpVgHaM1XBC05 +nx0NSW9BXPSmAnPHFMZmPOPpTs+tDHFEnbmoWxu4pTKMcUsQLH2qUaNIliQ8HrV+NcCookqxj0qW +wj3Gk4AFRseKdk8g1Gxz9KaM2xY8cZqfIxxVXcFpfNGOtFrlRkkJOaqKBu44qR5Nx64pFxk1aIk0 +y5AcD8KtBlxms8MRUiyk8VDiVGdkTynvTVBPNRscmpVYUW0E3dk68UNkDApooZqjqa3shh+lRqTz +UhwfakVMk/SqMtbkRBBzSgmrGxe9NaMAcUXG4tEJ5IqVT+NMAzzUgWmxIeDUbE856VNjAqtISCal +Fy0RDI/HFUpHJPFTTE9qhIHXFarQz6Au48mrKhfxqFM8CpwCooYE0eRxVpGUcGqanjmlEhz14rNq +5pGViaYis2Y9asSynbxVF5Gyc1UVYG02R8k1ajXoarIASfWrka1TIt7xIGz0pOW4HSkIA6UElR7V +KHMNnOanjbb1qBGHI9TTJJdpJptXJUuUddTDBrn72QuTirt1OTnBxWbgyvzWsI2RLlzOxLYQhiDj +k81vQpgVVsoNoDY6cVoAcVEnqXLYRnCg1QnkZmwKnuHx9arAbjz604oyYsUZOM/WrBXaKciDtxii +U7QKV7stL3SpKOCcVUYHOR9anll3e1VA7Z55Faq9jnaTYwxkk56EVDMqpirZZQCaqXLbuQOneqTb +ZUoRSGxjv6mrEKKcZ61DbKSNoq5CmCOegpSYoInSMnpVpIsGkhj5BFX1i+XNYylY6YwbIFHrUi8U +rgA4FMOcHmp3Fa2hEx681ASrH3zTpGHfrTI/vZP1p2K0WgOhHIqReAOaV8Ec0i4yO9PoRLclU+9B +UDOKRRzQ+Rkil1K+yRy4BpyEY/CkID8kU05A4pkp2dx7P0pr4OCKjUFuvpUyqejcDFGiBu5KOF4q +ZcEYqKIADBqZRkHNQy4XuMfjkVDJk4ParEmMVEVGAD0ppimtSIe9NcqAM96ViBnFV33N06ZqrCUr +aDWK9OtSwhWA71GImJwamjKpVPYn1J4+CR2IqXl+CeOlQg9KsRjjpWUkbQbtYjxtB46CoxkYJqww +GSTTHXpTTMmhvXgU4KehqVEzTygAzSuWotogTv7UhNP+6ajkI596TKirPUi3Ddk1HK6MTt4qOVjn +H1qk0xDcdjTjG5dSdtC2suw7SalEvOOlZ5OctnnINTo+cetW4mCnZ6FiQN1P51EVEnHepUYsOaNv +PFJMucL6ohjQhgDV+JVHFV9gI3AYNPUkADPND1FB8upYdFPeoJGGB9KPN461GcZqbFcychvfnrUV +woYc9qkY8Z9qgc5OCamK1N5PQ5DXIgkhYDrzVWylXIrc12NWh3dxXL2rhZOTxmvOxUNT08HUvFXO +409yyLituA8Cua0yQcenFdFbkEA5rzeXU9C5qQ84zV1MVSh6Zq5GR3oTEyYL2obFOAJxSFd1JgiL +iopBjntUzKM1G4/SlYtFVlPJqB/THNWHzUD9ay2ZoVJEU8ntVWRVxnFXZcYqs2ChyQDkDHrQ9wGQ +cduauIANx6VUiHzcdKsJIcnisqiW40+hOuRzT1YA1EWyo5ph3FuKxu3sUWFb5jT1YjNV0JzjvUqh +uSapJg7Dw2Tig5qME5NSLzxU311AVWOeakYn5QPWmhQSaU+h61auiWOuE+UVky5BxmtWSQiPmsi4 +Ybq76Uro8+tGzLUOCOatQ4A/Gs63kwOTVyFs10S2MKW5T15h9nbnBwcV5Xehppyi8kk5/wA+1em+ +ImAt2B615ndsG899w3EhSPbOcilQWp0VPhMyTaGOzO0dCaYck/U1KQi5HfmmzSI53BQvHOO5rrOU +Fkj8vYYwXMgbfk5A9MdKt6isA1C8W2AEJnk8sL0Ck8D8KoVIp4yff8aADg0hwDSH9DTf1oAcTxik +H07UnOaUfWmIdyMdwKXaOwpv0pf6UANbJ684ptPOME0wigAwRx6UZo4weOaKBBRT0heRZHGAsags +SfU4496ZTAXNJzQaXFIYUuaQZ60uMGgaF9qdxximd6Vj36duKQyY88jk+tBHH51GHxxTi+4cigAC +nOMEcUE4PP50iMOMjI9qduJGMjHp60rgNJHOB3OKT+tHFNxxx2poAzTgpOQFOR2powacOgOe/FUi +WHynjnrTkBzmkwNxB7cHFWAiIQAwZSFJI7f/AKqVhkXfjtzSMBjIGCKnwHy38Rz+dRzIVHNK1gK/ +/wBengAryTuBAA7YpCCFBPQ84pSdxyRjrQAhB47U7J4yMUEYJzz/AFo6daAGsMdOaTn+lSHcpIxg +im4JAGOaAGinAjnHtzSnK8H1xSAHn6Uhj8rkFgcc0DLe2eKBtx0oOSTgZzQBKnOMfSr86t9jBP8A +FFOw/Mf4VQj9xj1rRvxsgQc8Wr9f981a6ET2f9dD6wjrzrxdn+1bjnsn8hXoqda868Xf8hW5+if+ +giuXFfwzpwn8T5HN5Of0p1MY8Z96FJHuK8pt3PUJM/U0gJHNNBPzZzntSq2O1PmCwue9JhifrTwM +0x8jihbXYiNuDnr6imNyRwOaf7deaCvTAqlILDWXgGoHwM5/CrQA4BHWmSRnmtoyTIasUpOeeKaq +8jirDIeOO9KIyV5rRvsSNBOKglAbnpVzy+1QSIcEURvcGRRIeMcVDqhKx4HpzV2IHIqjq4IQjvSl +JMpbnOp97j16itCAnd14FUIVbca04I8EVg/iOmew6+I2YBrn5lOT71v3oVYyOnBrDkVmByfpW/Nq +ZRVkRQZ3gdOTXX6XthiVpMbmGVX29T/SuTtHeJ8AAgkHkZFdNYhmQsTknkk9TWdVrmRSu4BfyAsW +Yknrk0WBJINVrwtubParGnjOCDWNTuONrG2gbGRSE4NOT7vsaQjoDUq5m9xGo5C5/Gl+96UjhuB2 +rYgjYZyaz76zWdMEVonjikwr571KnbYOU4+40d423IvWoRZyg5YYIrsniyDgcVVntkI4Hze9bqrc +ycDnVWWKPPcdqgk1KSMZ2jA4Nal1FIq8DJwcVy907KxBB61tT94wmuUttqrPjGRk0v2zevWsg4JO +KcpYVs6aM1IuSSgt6eoqWGYoc9ao4kapo1dTzSlHQpM1lvpl+UHOeajklmf73emQmMY3Gpz8w+uQ +azT6A0ZU0RJJNVCpQ4ranTv+VZtwDn/CtovoZtF/THLkIT3roF013A2jqK5SxlEMqntmvQ9Lljkj +Tbz61zVPdn5HXHWKZXsdG5G5frXRQWMSAfKKdCwHFTbicntVR2B3ZLFHHHj1qYDFUzNzipElwc54 +pSethcpejQHmrC7RhaoR3Gc4qxG/c1KuxNFnGakVOM96rNcxRg8iqrazbpxvFaKy3I1exqgDvS/J +is+O/E2NnNWY1lkq7diW7bkvyA04bKeLYkc1XuImiO4E1LiyotPQnCoc5qCaFTyBVT7QwPyk1Mkz +sOaxcmtGacjWoQ5RuavRtkZqjuyRxViNjwKOo3qizuqKQmnZ9KZITV9NSUQM3WoWyTUrg9ahbpUN +GqImyKdG3rSknGemaTHQmpa1GSLuzmpCKYpzS/MSfSgViRD+NSDFMXgVIu01a1JYoAqUChdpxT8V +SRDYnIpQ5FOUUu0U2SJvOKUOaQoKTBosGg7dSjGKZ04pc80wsSZAp2R0qLJ4pwzTFYlFLmot9OBN +NMlodTTyKC1NzSY0hjZzTckU/OKYfWhlAf6VE1SE8VE1SNDHqF+mKkY1E5FJ9x2Kkig/WqU44NX5 +ABzWfcZ6+9BRmXC4yewrMlI6VpXBzmsqZsNQ49gRVmkYsPemxpvYcdcUs43YwKvaVbGRwccCuilE +yqySVzY0+1EcYJHJrQOARinRIFUDHGMUMu016VNWR4NaXPK4bhTXlamdDzTWrSxlewjSNjiow5zk +0YPSmMpFWiHcspJ2qN3JPFQrn6VMq9PrStYOZ2BU3HP41KoBpAjZAFS/dHShsIq4gIFNClmppY7v +rU0at2qWabD41p5GAc+tOUEcmmuRzU7g9ERPnpSIuTz60O2SKBJ2qyFa5Y2jHNROoHSlWQbajaQm +pSdy5SVhvU1MoOKjBqVehqmZrUOMYqtPIAOtPlfYKzpZCx9qcY3CUrIdzIasRptqvFnNWlPBzVMm +PcY5wcCoHkPK5qQsP51XkbcaqKIldsrOwyeaRWbkVLIo+91pojAIJq7oSi0SR5K5NPyOBTRwKCQK +ze5qtBQ2DS43daiLDIqVDkUMdkx3bmonY/mKmLcdqjwG6VJSREoJI+tXolHGBTI0PersceACBSbD +cenFOaTHApCDUbE1KQ27IC4NMAzn0zS96mRemOlO9jO1ytJHUDgrnNaMijHNZ83XHbPSqi7hKNiE +fN07Gpox2pg4PtVmFc9KpshJtjHQ0qAgc1YEZHNIwXnjHQYqOYtwaWo1ealVVFMRcc1MCDikwihw +6UnTrTxx2pp/WpNJbDG605DUTmmmXZVNEJ2Zczx71FI4HSohLnH06U1nJ9+KSiW53JFI61IsnPNV +weKcp6+9NomO5M0nFQsTI2MgUjHAqCRyKEhyY2QbWIPOKjbHNIz7iKaT2q7CuSDqPQVMRkc1DGwx +k/hU/UA96TECrgc0hWpk5GaVgMZqblKBRmYAH2qgzHdjPWrtye3eqmwk59K0iRJNE0AHQ9atjPaq +cJ5q8pJ5+lJjjuG096aQdpFSn0pjZ6VKHMiXcOtRy9zU4GTmmyJkZPYEn8Kq5Ki3sYV18zH17U6z +gJOe5wakmaSRioOEz93tWhaxcDIrRyshRirliFAq4PFPY4ByaQ5UZ61Vlk564rNK45PUR9pOetOR +cYNMUZqwBlarYhu6FU4qvcsSOOtSMxAIHJzVWVifpQlqVJ+4VXY/Wq7ybc+tTSFeo5NQkB+R0rZH +NZ9CJnJyfXsKZ9/g+tS7ODmljR3IXHJ4oukVyvqTQpjAA9KtonU/SmxIU+VhhgcVZUDP0rJs1skT +w7RgHtV1XXFZ4B7HvUoLjms2rmkZtIlkxmq8rYxipN2T1qCShBuV3OeuaUkooxTsE5zSiPJqyXcY +GcmnK+DipBGF7VA2QxNG4rMnEmWAp5z0quDu6dasKTilIum7poAME56GmsBn608Nzj2pr5BHtQiW +h8a+tSsFOPeoA54pwlYnpSaNE1YUZLEVMMjFRDrTwSRSZKHNzn6dKiOalAJphGDmki5rS5WcbW5z +Sgd+1PlGRUW4DBI7VfQyWjJGAwDTCuDmojIWYAdKmO7bnrRYqTTHR4POc1ZjzVaEjp3z0qyOM5qZ +ChoyRqa23FOJ4pnakXJakiMOM08sMetVRJtOKY8jg8UuUalYfIcNURbdmkZzt5pf4c02tAT1KcnL +EGq7RKxNWJh82QaaDntzVRdgqJsgEbYwOgFLHlW54zV6ODOCKjliI6DOKpTvoZypcuo+PpmpwoI6 +c1DEwCYI7YqWPmpkOEujE5B/nTT97B4qYoeo60kgyOnNCYpJplYx4bI6U8qBUkY3Urp/Ok2OEW9S +ueePSomQdT1qYg4Ix1oCKwAxzWa0Z1NcysjJv7cSwSD2zXCSBopyp9elem3EAKMMdq8+1qHyLk8d +Dmsa65lc6cK3F2NfSpjtGK6qzckDNcTpMjAgA+ldhaMDj614sk0z2Iu6N2FmODV+MZrPt24FaMec +ZqRsnU4AApQO9IuCBTxgcChiI3GDUTY/OpnHbrUDD25qWWivIPvcVA3pVpxxVdgTk46VMjRFSRDk +ZzxVWRcHNX5Q2M+oqo4745qLDuQYIIParEYJBPtUOD0NWYmGPQ0OLaJvYjAcnHT1qwiEHnpSKMZa +nKSW46Vjfl0L3BB87EdKcCSaVdgJx170quvIHPrSbAYDyaerA8GmMfTrQhGOah6sroTqQTTztznN +QJ14oIO+rinclj7kbVyKyJTlua2bjiOsRs789cV3wskebVbbJIhgnpV2Agf41SiJOOK0IlOB6Vs/ +hIp/EYXidiIGwecGvL7lyXbHqa9I8VtthIB4NebzKCxx706CNar0ICTTeTTjSYOAexyK6jmY2nDO +cA4pKT1piHZz1NJxxg9qSigLi+tKCRTaOfwoAkpKaCaUszHJJJwB+AoAVVdjtUZJPA9abzRTh0zm +gBlFPwTxxyaZigQc9Kcdqkgc8Dr2Pf8AKmUtABSqSMEcEEEGk5paBhz/AFpaSncYJzzkcUhiZoNJ +RzQAoOO1LzmkpQMkDOMkde1ABnpRkimj0paAHZz0pp5pxfJyQB06U3NAChsdOuQc/SngF2Jxz1qM +eladr9nCbm64qkJsgERHbrSHC5B4x2NWrieAHCZIwOvrVCR8ljzzSe+g1d7i7+dynv0oLPIOTnFR +jOc1Ip+lIBMA44pxUHqtOUcH2oYjIwew5oAQfmMYpACcnp7UobgYB+tLnH9Ka2Ab15Iozzx196Xc +emKUKueOOP1pANK9MdP500RsdxAzj9Kk/wDrk05c559e1ADAjY55z0pUHzZOcDHSnjt2YdKQjHTn ++tOwhVJ3D1q9d7mt4cL/AMukg5/3qpqnGf0q7eJILOAlsr9jkIx2y/emt/uJlt9/5H1ileceLyBq +tzn/AGP5CvR0615p4xJOrXQ/3MfkK5sT/DOrC/xPkYJIOaaGAwO9MGOhqQEdeK8p7HqAcn86AQc0 +1iRxSA9/ek9gRMNo4ob0x1pAw/Okc8ZprTRAyPgN7HmlL1Hu6DFPC+vSocnsh2JBjGaaxBOBS8FT +imqoJ71rB6WE0N8s7qdt6ipNhwM9aPbvV85NiqzFXAP3T0NKV3MffOaneMEnNCRKOAKOcXKRiMKC +cVn6qmUOfStjaQKzNTH7s9aTleI4rU52OLa2Cc8ZyPetG2TDrx9RVWBRuwfetSFeckc1hzq7udMk +VNQhO0EjisSVDgnOa6K+TKgE1kSxfK1a89miEtDMgUeZ9evtXUWAHlnn3Fc5GMyj69K6SwzszTqv +3kFvcKt6AW+nWp9PXBGOvpTLpfmPPTmp7FQCSOwrKUgWxrJnbjFKcCmp8wGacwA/KqtfYyG5Gf50 +BgcmogVVvmB2mpBjOR3rSysSNYYPHelABwKCe559qUY4FZ7MYmGI4GOKrTxFwcHBq0ScgCgFeRxV +Ju5LRzVyt3CSDkrXM6mCXLYx1zXo1xbh15XnBrk9YtkCtlcHsa6aErSMasbxOUBI4py4yDSugBPe +kXdmu84kmmTZAxj1qRC2etRIBuFWVUZx0rOWhpHUsKV5qzBzgd6SG3UgFq04oYk5OM9awui2tCnN +bl1rJuYWXn610UjQhecCsW/niAIUg1tEyZlFip69K6HQ9X8lwjnjoK5lySaVJGQgiqqUlONgp1uV +67HsVpcxyoCDn3q6rgj2rzPRtdkgxGzfLXd2d/FcIrKeorjvKD5ZHZZNXRoNjHHeqk0rCrQO/wDp +VW4hDg89Kpu+wr2JIr2JAMtjFQXWvww9GrndTmliYqGOO1ZUkNxOoIyacbhy3VzUvvFEsm4IetY8 +Wq3ksuSxqH7I2TuHOe9WLezYEHByDTcklqCvfQ7Xw7fSs6q54OK9CtlRlB9q8x0fCyIMY5r0K0ug +EUe1OnMxrQd7mmxVRzVC6lU8etEk5boaqud2KtzFCFtWJHBHnJqR9qim5AA96ikLc9ay8zV3bE35 +arMJzWeWIIq3CSQKhsu2hdyQOaDyKjByBTuaq90TYicHtUDg9asduajYg9KCkV8U7r+NKcZNIAc0 +rdyhQMdqkx60gzxT8A80WuK4KeuakUjimKmcU8Lg07CZKmanGKhXOKkUVUWZslGBTqaq1IBVWIY1 +lJFNANTYFNI6VQkyEjmlxUm30pNlTYq4gpe9KAaOaBDcHrTuaKXrTAaRTCcU88cU1ulIENJ4puaM +9qOCKVyrCE01h70ppDiiwEDdTUDnmrD4NQP9KGlsMgkHFULgDBFaDk1n3GOaOgIyLjvWPdD5v5Vr +XTDOe9ZcnJ60RGQIofiuk0q3CICO9Y9nB5sgHXnrXWW1vsVQK76MbHn4ubtYkAwKY3X61YKMBULc +da60eXLQrsBUI64PSpXOMmogQeK0RlckCjFQSAE1aA/lTfLBOTQtGOUroijiU4zUu0D6UuMU/GAM +0NkpXFAAqJnGf0pxNMC7myKRfkhyKM5qzGtMjXiplOBUsqKQ5goqu/tUxJxmmYzj3oWhMtWQ7f8A +9dRsvWr4hBHpULIATVKQnBoqrnFPVSxoIHSp/LEaqwbO7PHpVNkJdRuBnilLYGaGzVa4lCjFJK7L +WhDczVWVCT9aYZGd8dVqxH2rW1kYN3ZKkYAzSySKvWnMwAJqhcTHJFSldlvSI6WYAcVAJBnIqFsn +g0qqeMVpYzu0S/fPtT1XikVQPrTzipbLS6gTgEVC75GV61K2SCB3qMRUDabIg5HBqzEQc0zyQeO+ +alWPbwaTaZUYtbikHtT4lI7ClUHp2qQKKgt6E8aj07VOuQKjjAxUi46etSxLVjmxio2A/KnE44pj +GhBJkYxmp0YLUDHpimbyCapq5Cdi48gxWe/zMTTnl+Wot2cGmlYcp3Q9QM4Pep48CoATTvM28Gmy +E7F4MKY+2oI5M0rEk1CWppKVyUYPFShRxUKjjnrUyjABNDCO45mxURJH+NPf2qNs4zSQSd2MbOaY +yZ/CpFUnmp0iyM072BQuU9jLSc5qzKMDJFVxjOaadyZRsx+Vp2eMU3aBilZlpFRGsQcVDIAQae5U +jjimZ9aYbsg2dDScZ5qfAAqIkHiqWomrDowCBVlVAqCPFWDipYxykUySQAH2pkjYAqtJKD1o5RqQ +SEsfakEYxgiolfnI9asK4Ip2aKbTERBn6VYGOlRoepxUwC8GhmS3HDge9MOcmpjjbUTEAGpRcyI4 +qOSYY64yMUy4lC1RMpc4zWijciM+VknlDeGHer8WB+VVrcHGD061YPHSh66Dv1Flbjg1UdWZuanX +LH2qXysnpQnYlpsiUYHNPY4FNdSD7VHJkDNFrkDWYjmq0jk8Hipd3vVZzg5z9KtIcnoQTMO3pUQI ++gpZj0x3qszMOK1sYXs7lpJBnHrVmJFDBhwao20TqcnkZrTjAx061nJWOiMnJEyAE81MgyR9KYNo +HSpYVG6oYE6xAgCiQYGB1qePA4NRz45wazT1NfZq2hWJAJ71Ezbqc2M1HxkiqJWgoJpynByKaF79 +6aWKnPpTsQ5WLRKEZ9aqzKByKaZC3TijO4UJWKlJNCopx71PGQRg1Xj3An0qZeopsUNHdEpHBpGU +sOOtPHIpw7j8qi5cl1IAD0Papkj6HFJjBNToUpNhFIhkXaMgUqNx709+QfxqJeKaYSVnoSqc/Whg +PxpF6088g0uo1rEruvp3quyt6Va4xioHPb2qkZNDIoeeRzVnYcYNQo5BHvUnnDOD1NDuaR5bDPlV +uanBzz61XPzHPvUynIB6UMm5OozQRz17U5cYpSO9Z31NGtCDGCe5pNoJzUrjuKRc1VyIxuys6sMi +hif0qWVcZqBt4P4daE7luNitL1+lM3bSD1xT5ByDn8KaPmFNBP4SysnHoBTBIGJGaiAfBHbFEIO4 +8fjVpIxc21YnTCtirAXBqHAqeMZFJhFjhhlzTOhORUo9KRgKhGsldXGKQpx71I7JtqNl4BNRSyKo +oauOEraDGOcimkhcUbtw3A+9QzkjBqUtdTXm00JWlDKQa4/xNbZHmjtXSO52kjv2rM1iJp7VwRyB +kUVIe6FGq+dHNaS4DgEn1rtrF0IUdOK4Ky+SfHoa7nTiGVfwrwq6sz6Ck7xOgt24xWnC2RisuBW+ +WtKE+1ZW0NGXVpwBFMTjmpciixNyNgTmoXWrRx0qCTrxUyXcuLIDyKgdT6datEHpUTD+tQy0yg4b +nFV5BzzV+RepHeqcq4IGaUttCkytgZJ561InHPamlSBSYzz2pppkvcsZGw5pA3zDFMySvtS7jXFP +WRrHYl5yfpmlTPJqKNgxI9qfHxmk7J6jHjHOaRQWJwaQnnJpUPpS9R2JExmn4DEZ9ahyd3FTAgYP +pW0W7kSFumCx49qw2+9+Nal4+V49KzOuT3rtprSzPPrE8W3NXEfPAqlDjHP41fiA25xW7sRSRy3i +lhsIIrzuYcnPY16H4n2kH1xXn1wCCx7Zq6K6lVisevPFNzS4LHGex6+1Ia6DnCj+tAox1piEoo4o +oAKPxoooASlpKKYh2fypcjsTTe1L0wT39KQxwAPPrTWAHQ9e1SqBldpzxz7UMoboCTQBDRQRiloA +B70UlLQAA4BGByMc9uaKKB3oGFBFFLnOM0AJz2pRRg0euKQCUYpeh9aUBcjOQvGcelMBCKOOuaOR +1paQCYqVWYAbW+tRgU4EAD1zzQMdkUZ9cdCOabn8qO31oAcvfHSnL1HpTQOMA9RUo+TqO2OtIBQP +mGc9jSbQufekBHXPTpTuec033AQjt/F707lTng8MMUhXbwePrSiPjPrRbsAxgAeKVQSpfaSuQD7E +9KUANkdeOtNPy5X1xxTYh2RkEdqAfTnmjkq2R/8AWowevPahAL8zYwMdqcFYcn60gBxTiTgAjpTE +HA71alcmzkAY/wCqkUj23KaqDIOcZBNW7lVSCZR/zykI+hYULdfIUvhfzPrRK8z8YgHVbrHX5f5C +vTE7V5j4vLf2vd/Vf5CubE/wzpwn8T5HPDOcdaeMAdKiBPfqKfkcV5EvM9UU4JGe3aj+VMz7880o +DACk29wJQQAfeo2Jx7UvfPtSEj9KauA0Yz+NPB6gGmDJPT1p3Tnpipeox/QYoHB9qYSTzSjnvVpu +ysInDbsY7UbeOuMUxD+dPHtSb0EKAW/CnqP/AK1RgnOPQ1MOBRFgxjYxxWZqbfKfpWm2OvpWNqbg +qc029BwWpkxDLHmtS23E59eKoWgySTj0rTgXJHaufqdEyG+XOOenesqXIQ81r3uNvPY1jTN8pwfa +tH8SI+yUIsrNnvXSWAxEK5qMZk9SDXTWWPKBHp0rap8SB/CQXBBY54qazxgDH1qrMG3HJ71ZsQT0 +5NZydxdDURTtFSn+lRo3T60vB5rSNkYMhfORxTk5PPbrTsdQOabjb1FXfUQPwTjvxQG7DtSHtQAP +0qJaDsP44B70cDtQCOP0obBII64oWomhd27INUbzT47hSCPWro6cimMcfSmnZ3E1c4u90RY3ITJ5 +NZdxYPDnPauyuThiSO9cvq1x8+3tXXSqSk7GE4RSuUEhLdOTmpeYxyOcdKfYh2OQeBUl46AHIFbX +vKzMZKyuMS9RMYJpx1R8EDr2NZBYbjjpVq1ETnB/WqdOK1IU2x73k8mfSqspZuTW4lhFtB9RVG8s +dmSpyOeKuNuhnJmUaSnMpBxTa1MhyMVOa6XQ9XaJljZjiuYqSGRo2DDisqtJTjY3o1XB26Hr9rep +IoP61NPNGEJz1rktB1AyxqhPzV0qQNOoyciuCPNsztlFGHer9pbCjPNWrGy2n5h+Jrch0uNSGxVg +WSjnHFV6hzK1kY82kQzLlRhjUcGiyI2T0rfEPGOmKkWJ+/pWrs1qRqtiraafFEQQMVtRAKOKhhhA +q2sZqdth+ocmnbBxzTwgpDx0ppCuNYAVG/SnsT36UxsYpX7AU5GxVmF1wMVWmGOafAeRWbRqtUac +Z4FOqJT8oFSDdVIhjXqEnFTsP5VWb3pvuNCA0o9aZkZxS5bn0pNDH5NPB9e9RA4x6U8EE0ATKTUm +QargjinbwKdyWi1H1qdRVBZCDxVyKTI5ppkSTLAUU8D1pqkU+tEZMPpRRRigQ2k5p5opjuNxRinU +HFArjcU05qSmmgdxuOlNYcU/HFNOaVhkW2mkVIaY3tSsirjOc0x8c08nFMYA0mMiJziom96mK8VE +9TsNlaQgA1nTk81em75rNnJ7UwSMi76k5qhs3EYrTuVXvUUFuWZRj7wyPpnFbQiTKSSL2k2mMMwr +pIowBVOzhCoMda0kBAFd0VZHkVZ80hroOMVXkhJ4q4aZgHk1onYxcbmTPAwyarbcda2JkBBrPkj6 +5rWMrmM4JEaNU2QRUAXFPHy96pkpEnSmtgimMxA61G0tFhtpC7uT6VJHx0qEckGrMQyD7UmKKJkx +ipODiohjmjdipsW3ZDm44pYzzg1EHB6mneZjvTsRezJ9/FQSv1ApPMz0qM5JoSHKbeg1eTzUuRTF +HJpcjv2qmQgZgqnmsy5kLHr61ZnmABArP+8341cI9RTlpZEkKE8kVYAAxTY/5UpOM+1UzOKvqMkk +wMGq+C7c4xSTNuahTgZFO1kVe7GPHz14qSNBjp260L84B71YUACk2CV3cj2GmkEHmpW3AfSoHPU9 +aSG+wZHal3iomJFMUuTtP502hxepaQ81OAelQxKVA71Z4496zZrcVF45qQCkU8D1p4z6Ugkxw4GB +Ts0nFJ0pE7DieKYdpOc0EjFJlRTsRfUXbmmOmAalQ5olxjFF9S+VNFBwfwpVXHPrT2A6UAelXcxa +sxyqCKUxE1KidKsJHkVLlY0jC5WWPApdoJ+lWGTiowtK4ONmLg8VIAT+VNGM1JkAHmkyooYc9PSo +2NOZvSoXY800iWyRX9anEqgdaoMxGKFdv0ocRxnYsySA5qEAD8ajJNSr707WE3zBQxxQajkJNBSW +gyQ4BqPzOKcwyM1EV6+9UQrpilzwRTRycimjPQ1KgHAHtT2BaksQPSpsGmoPSngnNQPcjkU4J7Vn +ykr74rSlYBTWdKfmIpxY7WRCpb6VYjJ6496YihjgVYWMiqbJ1HxmpxzUKLzzU+MY96lghcgDFQua +lboTVWWTAwaSLmUrpiTlahhQls09mBerMcY4rW9kYcrHJletSN7U08HBpfepK2ViWFQeTVpgAvFU +llxj60/zz61LTuXGdkMmYBsVXZmPSieUNgCoNxGea0S0Mm9QY4z9DVORs9O1WnI2setUWbnPIFXA +VTRWIpdx9+tEabucYJPeg8nmrEaAde9W3oZxjqTwpgAd6tIpAApiKverAWsG9TotoKBleRUqYGCO +KQKenrT1SkxIeJ8VHLIpFNYc/hULEkGlYtSAngZ704J3qJck7anjztoYLViYxUb1K3BNQt8w+nWm +iZCIhJ4FSiHGM8deaWPbgcj8KkZhxg0Nu5UYxsU2yOvFTJnApknUgHNSQ5x703sQtGTjpmnikQAA ++tOz6+9Zm26I2U5qMsy1K3I96Zt3Hp0ql5mfoCszDFA3KT+lSiM9QKawx370kxtNbjxuODTmzx3p +qnjFJuJzzSaKgNZec5qKTGPxqYgnmonIwapETVmV/QmnKu45NA9PQ1YjRabegoxuxu3HQVKnpSsA +O9NTg81NynGxOoIOKec4poIPSn4GKgtLQi57U3eQTnpT8gGq8hYZAqtydhHYEn3qMk7eaZuJzRyw +6+tFi7tkMgLZ7U2IfMc0r+9EXB69afQkkAIPFTpGB261Fg5Bq3Djg029CIxTYwofToKbEWDYNW5N +n0qlI21gfekncqcVFlobc1IVBWoUBwG+lTpyKmRVN30IWGQapzJuPStBwoFVXBJFNMlrUgUFeKgn +OQwqy4zyOKpXDHcPSiO5rLSIRDK0XcIeBh6ikjYq3+zVpsOuPaqnsZ0rXPOZE8i8IHZq6/SCWVa5 +/WrfyrostbWiZCA/hXi4mNnqfRYd3idbb/dBPrWhDisu3JwK1IQDj61yX0N2WxnFPGKYoGBT8Uai +Q7IpjDNSY4pD3qWu40QEZ61G4GPpU7cdarv61m0i0QuOCapTDHNXmPWqc/c0mtCkVGHHPHpUQqaT +gmomFCsnqDJMjFGcHnuKRTgHNNY5IPtXNWWuhpAkVvmyKlXrjtVZc5689qnXdk1jqtzQcAGPWgY3 +YoOTxnrTQ3zH1oiIkVct1qUnjmo0604kGtYJNkS2Ibk5Ss4MM/hV66DbSKoqOcntivSjrqebU3J4 +2GQa0EOFIHQ1mRffHpmtID5T9KuewUdzjfFLgZ55rhpmznFdj4qbLcGuJc4OPwrSgrRHW3IjgfXI +pKc3rTWYk/0rpOYO1JRnFLwfrmgBKUUnFFAAaSiloEJRRRTAWkoooAkUrjpznrS5Iwc4+lMBxSg8 +0mMGO49ugpoPp70pDA8+xpMmgQvFGeAOwzQBQBzQMDjtQKQ0vFABRR3oOKAFowMnB7UA9aVXZCSp +wcEZHvxQMQ+31pRyQAOvam0A4oAcVKkg9jRj8KUtkj6UA4ycdQetIBKD2pPpS5PFAw6Hke2KT5uu +OAcGlKsp54OBQAM0xdBwbaMA9akDLg59OPeolA5B4xzSkj1zSGPXBOSPSpVLE59DUAPcfjmngrjO +ecigCTbn9afymQcZGQQajVuM844o3KecdKLiH7T97pnjimuM5qSIk8HAAokUZ4psERAYRst6UoYg +MevbmkYdeeB0pFPYUeoEhO4ceuaccgYNQgncOlTBSRQn0Exyg4B9MmrF1uMG4/xWZ7ej4qKNV+QM +eOM1b1KJooQpOR9hDL9GbpTW/wB35oT+F/10Pq6OvMfF+P7Wux7r/IV6dH1FeY+MM/2td/7y/wAh +XLiv4R1YT+J8jnMA8dzS/MP5UnPXuKGYADFeQ3qeoI2eaVSfWmnJyc01Cd3TjrSdtBlnKlQRknoa +iYngUu/HIwAaYWbNVYQLjn2NSc9D37Uzn+VC7jUyGSYBHHrThgcVEGJNKp4y3rWsY3WhDdiyucE/ +lSg5GOhzUKyA5Hp0qUEEflRJWEgx3FTISeBUB4zUkfrms5WKHSDjFYWqDAIrblP6VkaijOD296Vy +obmda+9aMWdwOfpWdDG0ZU84bP44rQiLbqx6m8iO9ORk1jzg7W7VtTq0pCDkt096ypVLKa12kjPo +ZcI+cc4Oa6WzH7v8K59I1WT8a6K2P7kfStajTkg15CrNksas2PAHHXnNU58lzk9au2Y4A9OM1m27 +g1oaaLjPNOwaRBngngU/kDv6VqrHOyPv70EHA57U4dQaax7UW0uMiPUk0Ag/4UkhLcHrimKQDilc +CYHihuoxSLwPxNK+5ySew4xQtwY9QKbImRikUke5NSHkZ9Klt3ugsZF3FjJPPGa43U0/elj0zXoM +8QkGDXK6vp55ZRx6104ednqY1Vcx7ORY+9U7ycs7AHipCGjJ/GqcnJJ9a7oQXNc5astLENTw7ww2 +moauWsRcg1tN2RhBamzZrcOoy2Pb1pt7F8vJ5q9a+THH8xHArJ1K7G4hWyPSuend6mk2rmRN941F +TmbJzTa6kYPcKUGkpcUCNbSLp4ZVwcV6VpVws0aEHOcV5LC+xga7jwzqO/8Adk968/Ew5Zc6PRoy +5oWPQ4QCBmrAjWqNq+4A5rRjPSpSuDIzbg8jilFvVoY/GpFT8quxNyCOLHXtUwAAxT8DNBFGwXGn +pUZ5609jiozmi7GhMDvTGA5pTuGKGBxipKKE55x2ogPINJcg5z70yEkMPakaR2NeLnFT44qvCxNT +DOaohiP0qs/pVlzxVdxwT6im7DRXzingjFMdTxzSDI/Cl5FMkYkCkD4+vWojuIOaTcKQIm87PAFI +JDmq+W6CmeYQeaB2LqSc1fgkzjmsLziDweKngu2VuaQShc6VDkVIKoW1wrgYNXA2a1UrnJKLTJKQ +033oznvVXFYdnOKKbnFHWgLD80EjvTaKBWFzSUUnNCGKTTDTqQimBG1NNSYph4qGrFJjCM1GR3qR +iBTCwoYyJ81BJnrVhqgfPOKl3GUZj1zWZMcE1pTng1ly/MTiqSGUpfnzVzTbbDbiKiihLvg+tbNv +AIwMV20o3OLE1OVWLUSgVZVsgCoFGD7VIuTXSzzU9RxbrTNxwc0pB7VE5YcU0iW2MfJ6VA6HrVgD +Jpjqfwq0S1creWPSoiuBUrHn6VEzDGKtEydtiB92eKAM4p475qVFFNsUV1BIs81OibRTkX0qbAwK +hstLqQ496jfkipyBzUe0E5oRL1GBGPGKQpirSKO9RyoKalqDhZEAIHegDIJppHNKMj6VRlcXvxUU +77RxzTpHVaozzZyOtNK5SRVlkdmxU8S5GRUO3J6VaRSv5VqzB7jwFAqFyMcVISoHWoGOcgUkWloV +3yG+tKF4AOetSeWD161IiqD04ptiSsIibRkc1LkkewpxCgdOtQliM81G5p8OgOxApmO4pTzgZpwB +7UC21IipftTlj2n6VZVQBScUXHbUQDmpBgZzSKlShPX0qSmNTHbrUy5pgjxUoXHSlcLDiPWmkc04 +nA5pmTSQSEY5471FyDT2PNIVJq0ZsEcgUhYsaawxQKRSExzRtGc+hqQrkU08dKZLJFYCp0mHaqRy +DSgtxik43KUmi28mabziot2alXNK1g5rjgc0p96QDPSlYYz7Ui1sRHrxUZGTn8KlIPamZH61RnYU +RE0jR7anRh0pkmO1Td3NHBWIBxTu9NOBSE+9UZ2HluKhLdcU8nioWODTSHJ6WFGSMUpXGRUQek3s +TjNOw00OAUmpFGMfWolHvUyA5BpMZOoApKcOBzUMrHHHBpIm+pDM/J56VU+8xp5YlsUxQQT9auxV +9CzCgByas7cVWjbsamWTP4VLTBSQ/oakyOKhJGeDxTuaVibiO+KzriTk1cmJ5NZkrfNj9auCFPYI +gWYGtEADFU7WM5BrQVc05bkrXQjIBoxTyo4x1pGFSOSIypOBUEm5DjrV7GAMVWnVepqlLUTg2ikz +HnNISG4HWmu/JPamK4GefrWliF8Q+T7pGapuTk++amkfg81EgLkZojoVUs3YakZJzirkceMZ7dKV +Y1Xk/hU6qeCD360mxKNkSRrnGatIozx0xUUa461OgArJmttB4AFOAFNb7uaRW9aQl5iyLjJqi+4H +8OlXZH+XFUHJBz70RLlZCoCTmrSAAVWjOCO9WVGabJi9QZQaibnIA+tTHFRsTwKEKotSHJBNKd55 +pcAHFTIoYAelU2TBNsr7Se1SRccdzVhkH5VD908Ur3G4WJV5zmnlRioQ46dKnUjHNSy4bDCD09aF ++XrTvamMOeTx2oFsycSADtTH244xUJBBpfmxSSG5XQ5CDnNOHB5qNQc57U89RTYluPIyPaoXH8I7 +1OB71E/HXrSRc11ISuDThIFAprZxmmYLc/pV7mV2tiUSA9acM5A9KiWHpU+zHvSY9SRemakD5OKi +CnAx+FSKpqGXB62EJFQyDPWp2AAzVdyRQgtqQ7dvNIKlI4P6VEAc0NmqiiGUdaZGQcA/Wp5VyOO9 +VVyufrVLVE7MtqMipYiwBxUMDHB96l5z7UzF6MfLIQp7moS4cUyXcT7UigjHPWqSJcmy1FJ8u096 +mTcCcdKpg7WzniraNwKmSKi7Ml+YgA1WkyDketWwRj61Xm64qEaPuV8dazp2y5B6etXycZrLuGw5 +Hc04/EaSV4kiHOCe3WrQbIz2AzVO3Kng1bwoHTHatZI5IaM57XIhIQ4FTaLwFA/KrOowM8bcVW0t +SjAGvJxsep9BgZ3hY6y1xitGItwKzrX7oPc1owjGM152x3X0LkdTLUAx0FTJ0pslBnsKXmlwfSkw +ai1kWQsQMioWHXrVllzzUL9s+tS7blorMBVSVW7mrzd6qTkYzWTui0UX+nFRkjAx+NSNznmoQeDx +Sjq7g0Kozn9KeNoxTFIVenencE5rkqt89jWC0HADcSKkU570xCMnNLnkilzDsKXOT+NG08U0dalA +96G7oQLjP4VLGMsKjI2nNPiPP0rWluiJ7Db1Nq1ljJJHrWjfSBhz1rOUc/WvRp6qx5tbcnt03OPa +tCQBYyO+Ko2rFXwauTsdh+lOptoXRXU8/wDE7Hc3PfmuOkJye/NdV4nkPmOD0BrkieTW+H+AWI3D +NNPWig10HMJSg4oGO/vSUCHZB7U8LCYnYuRIHQKmOoIOTn24/OoqWgAooz09qM0AJSg4we+aSjj1 +zTAUkkknvzQCQQR1FJRQAtLzSUvFAATnOe9JxS96TikAoNKP1ptOyKBhmko9qfKsaPiN964U5xjq +OePagBmfWlOO2e1JS0AJ6UUvFJ3oADQBn8qMCgZ7d6AFBAPPuKTPFBz9KPSgBQcckZo4pOKXjqaB +jhnvRQ4xggfKRkVOkETwPN56K6EDyjncRntxj9aQyDJo9fSrCRDgdPU+tRyoF5FMQwEkfhTwOMmo +wSOR9MU8Ed8/UUgFBoyACc0m0k04gck+1CGOEmAT3xxS+aQOh5qLgfmKeGHQ9PT607CY3cSc9qlB +yPr3qMlMHApcrwR1xzQHqKcZz09MU8Sc81CT2/yKD146dqEBYWY5B9609VcPCj7sg6ZHj/vsA1iK +w/pWlKX+xENggWjbR/20FO+q+X5ie1j61jry7xiSdYuvqv8AIV6lHXlni/8A5C95/vL/ACFc2K/h +/M6cH/E+RgB2PvTX5yfWn427CCDknI7imOwOMCvHktT1RmegHIzRkhqYSR3704HcDxUpdxj2Kkgf +SkzuyPSmfzoTvmrTVria1Hg849qlUYA7cVHwOvelBPJ/Sp32ExWG3OD71TlumXIz1q1Jll49O1ZE +wYOQRxzmu2jTujmqVLMsx3fXnvitCCcOPrWIkJwfc8Vo24KHAB29s1VWlbUKdTm0NLIPPpUkRxmo +RyMAcVMv64rjmk2brYUsDkd6zL5lx1rSdDjdxWHqj9R2zSa0sXDcqQsGJPqc1egBZutZ1qQWxWlG +QCPrWKWpvMW4byyGXqCCD7is2dyATjvmr90ePTNZdwSAQOaveWhn0KqFTJiugtTmL6DpXOR8v2zm +ujtMCMEDtWk9JIb+Eo3GA/A71fs8EfhVO4xvOOeau2eMD2qJJtivoX09KmJyoFMTPWlPFXqtTBje +MZ9KacgHPXpS5BBpvP51V7iGc8nikCqKdkHHpR6/Woe5VhMDGe1NOcjntT+cEU3jOPwodhi9h9am +xkUwKuMdcVIPQdqmzuJiOOgIqpcW0ci8irpwQKgcYHFaRumSzktV0+KNC6gdzXLOg5xXfazCrQsA +OcGuDk3K7AjjNejQd0cVValYjFPSeSPBUnipjGHGRjmoWicHBBzXTdPc5mmnoSG9n7NUDMznml2N +2FSIuCART0WwayIljY1PFaTS4wD9auW8SErngZFa9uLdQQKylVd7IpU9DGXSZiOajks2iPPT1rop +JoRkDoBWdcyxuT/KmpsOUxvLwa1tHmaGZW7cUyOGOTg8d6sCOGMgoaidpqxrTfI7npej3PmxqTW5 +Cw7Vwnh+7OFQmu1tWyBXHB2dmdMo9TRGKlHSoEx61OK2sZAc9aYSD1NObIFR5BpNMaQhNNLdqQnr +TQTmkXYfg0jDg07jilKgjihbgzNuPQcVDHndjPerN0vXHWqUbEMPrSki4mvCeAas7sjNUoG4q0oJ +ojcloRieQagYt0NWSAOtQuBVMaKxzzTfpRLnkjtVcs3bjNJF2JWYk4NREnrmomZgck0oPFAJE6nN +MI5PvQGJwPzqYLxzTVh7FNwe1MyRzVpowBzUDYGfehoaZdsrlgwGeDXQQuGUc1yMbBGHtW/Yy7lF +JaMzqxurmsMUmKahzT61SOXYTrRmjim0rgPzS8VGDTg1CYNDwKQ8UZzzRTuIKaaKDQAnamEU8im0 +DIWAqPvU5FRMBSaKTGNyKqyEDip34FU52J6emKAKlwRis985OO9WpWboaropZh9a0pxuKTsie0hA ++Y1oxjApkUYVQKsIBXfTVkeTXnzSHKvTNKTjpTl68UGrMeghOajZTUi+hpzLxRewKN0VwKjkytTY +pkqggmqW5LVkZ0jHPHqarEknp3q+YSSeKjNvjkCtU0ZcjK6hsiraR0JFirKR1LZSQirgUo5NSHAF +MJwpFSipaaELHFJnnFIxqNiQa0SMbljzMcVHI/8AWot5oznrSsNzbEHFDMoBoJAqvLJgVdiCG4l2 +96o+Zubr3ptxKWfv9KIRuA4+tbKNkZzky5EhGO9T0iLhRSscDipYrET456VGMjHvTZWpiSEkDrQa +aIsgc04LyPemLnvUgIOM1LKQ3Bz9KURZ5PU1JEAfpVgKBipbsVy3KRh5yaaeuBVqXGT7VCF5p30J +cRBuxShSTS5zUsSevepbLSVh0ceBkmpR7UYwMU3OAfakJbge9KtN5Jp/agfURhTT6UvbrSHFNESY +ItTbBt4FRoQKmDjFJlRsVpFxTQOlPlOc4pijimhvQCSBTQC1OIODSoMVRla7E2E4PpRtNWVUECmS +YANTctxsiFTjOalTn2quvJqUEAimyETDIxzxQTSBuoqLdkHNKxo2khZXx0qHJBzSsc8Ck2FutUZ6 +3HrJSluBzSeWR2pu3mkPUBn8qQ4qQelMO3kdaYLe40kdBTHpeKD2NA/iKxXmgJzzU5Ax0pAvODxT +uHKSRx5/KplX0pEGBzU4xiobLtoNbgYqtKOvNWnIHWq8gB60Im1yiwAY4pMnNSPgk0gAqxyTQm1h +zUibu/fmpEQNUvljHFFyLOxEOvPWns3FKFAzmoZSAKW7EiK6YhVNUQC3NSTS78KTnFOiXnGK0Ssg +ky1bKAOlWgOM1HFwvpUwOeD6VnIcEMxzxULMc81OMDNVpWXNNEyYpmA4ziqk84AOOajuJPTpVQux +Jz0rRQ6kuo9gaTOTSrz+NQ479KUMRwatrQiLvIc4H+FCcMCfxprbjj61PFEQAaXQ1l8RKDn61PHk +4/pURXHPep4ARwaiT0Er3LKx1KoK9aYm7OPSpOtZmrBj+VRNJtP9aeVGagkHvTSJ6jSxPHrTNgcY +/Wm55xUkZB5oLVrDdpQg+lWVIxULcmnDsfQU9yL2ZLTOpzT0560hUBqlaMuWqIpDjpQj4706QDv0 +qMIM+xq9LGV2SeZmmkZOackNPZAOKV0Vq9WAUAA9c1NGAVJqJemKmQ8YqWOGjEPWo3DZz2qZsZGK +jPekmVNagFJFSeWAD64qNTjmn+coGKHfoONhjDHQ0c4prMpBP401WbpzTIZYTkYpsgHSlXHA6nFK +y8Gp6mm6K5AORTIxzUmCMkio88/zrQx6lmLbT2wOKhRto9M04Nxk81FtTVSTQ5GA4PWpVI6VADuP +pTx1FJolOzHOMgYqrKSDxVo8jFU5M5PFES5IN4P9abyetRBiCe9PHXNNocWNctkAVA3c9DzVqTGf +eq5UZJz6nFERT3JIf/1VZOdq+veqceeoq2mSvvVESG4LHFSCM846VH6fWpRICoApMKaj1GOuOTTo +37CmyNxx0xTYiFxziq6EyteyLmTUcucEilBzSN05rN6M0i7opSZ75FY0zjzCffFbco4JrnLkjzye +2elVBXZfNyrU0EIGOOtXkOV3dx3qhHl1U+2Kv2/pWnQ55pxkRyoXUis+FNkgA6Z5rWkG01QdR5hP +rXBi43ierl8raGzZvnArVi96x7I4ANa8TDg15D30PXLijkc1MBjioY8VYHNIQ7tQSMYpw6A00rmk +7giNqgcDFTt6VEwyKzZois49apygHrV+RcjmqUqDn0qJJlxKL9eOmTUIzk1ZkHBx24qLpjFJaMp7 +ELHjFKpHQ0sijPPeo+rcfSuWrD3jSD0JuMjHpQD8x5pvJJFAAByKxSZZICA1TKQTjpUI5I9qkTk1 +WomStmlTHTvTA+CQfpS7h2ropJMxnoVb1uwquuQp71Jc5zUIJ4zXfBWPNqO7J7VSz5PWrtwQEP0q +pZ53kjpmp7liFb6UqmiNaKPNfE0m6Z89j2rmT1rofEDAzvxnk1z5zXVQ+Azr/EN5FFHtS1uc42ii +imAUUUUAKMijjFBOQMDoOfekoAWko6UvpQADt296SiigBaPmPJzxgZooB9enpQAYoo5pQKAEpaXg +DH6+lIKQxM0UpHWkoAXlicD1NH9KSlweooAOKOtGcUc0AB60lOzwRik5oAOKXFNFLQMXil5Az1Bz +xTfrR6UCHZopv170uTn0oHcspIw5OfrTm5XcDntVPmnh34pAP2kZpcdPSljkCnc6hl54PenAqQSv +OASaAHqMqRTCpyMjPNPjYf0FTAo/U/Nk07BexXKjB+tIsbkOwGVUAtjtk4qyYScd+1I0WzBPPfBp +8rFdXK3fp060mewHBFSkL9KY2D+NT1GhAAQaAPwpKX+VNK4mIPmIGOavSNmzYY6WzAfTeKpLkEds +Vp3sey1TgENpwb/yLTW/3fmga0bPrKOvLvF+P7XvB6sv8q9RUZBA44PNeUeKW36teNn+ID8hXLi/ +4XzOrBr958jA6E0E5/Chi3I6imEj8O9eNfU9UTngdqMHjBFMLDIAp524B/KqvoA/5eRmmMc8Dsea +OSP1FLyRj3zQlcQoc4U5xxTi3Bb1pm7IwRSgHke9OKTExQ2Tjp71m3+cjbzzWiM/XNV7iHP512UZ +WOSrG5Qt5nBxkjHStWFsjPfFUVt9rZxmr0MRABJx7U6z00HSiWlLnvgdanDYGRUKkYGaecEYz0rh +k0dKQhc4PPWsbU5OMYzzWoSfWsXUSdxxUw1NEtSC36CtSEn8sVmWvIxWnbqAf1pM0kMumUjn1rOm +A2H8av3h5zWdN90471T0kTvEpRZ3gCumtuIxj0rnUjZJBu74roIP9T04q52ckJ/CVZipY5q7a8dD +2FUJcs2B2NaFnjbUMXQuoxx+NRXM6r36dafkYx6Vi6tPsU44Fa043MJPUe+phXxu4zV6C5WRcg5z +XFPNJuySa2tLuHOB15FVOm0rjhJS0OjAXB+lAAwPamoQRx+FOzkfjWegwyDTWIOffpTgvOc0x++T +UWGKGwB7VKGy3UVCqg85/Cnqy5pNu42TEGmtgginDHPvSEgcVpFkPYo3sRkjZSM5rz/U7doJmyOC +civSXAINc9rmmiRDIq811Yeok7HPWjc4hHZDntVtJIpcButMkgIyCDxUBRkOR09a7tJHLqtzRjt1 +yMY9KtCzhkUdBWbBcyKVB5A9a0YbgNjcMc9qyldMdkSGzCLkY6UwRkd8GrgZWHWqc+FPFOLYmQsp +5BNVJiqHg5qWaZtvBOc81Rk3k8nNXHXcl6DmuHHAPfNJHPITyTUB9zzSowWr5VYlSdzq9DuGSVNz +Y7V6PYyllQg9cV43a3xjdcV6Z4c1AXEKHPIwDXBVjySu+p3wfNC6OxiPHtVhTVOBsgVZB4rSO5DH +k5NMOBxS5AqM80XsNDDTgfWmDOeamCg4pdSmOGMUpxg0AYFKVNVYgqSoG5qgUAb3rVdQMg1RlUbs +++KhouG5NBjAH4VbXpVa2UVcCYFKKYSsNIzTGUjpU4TikK+1WkK5QYckVXlQ9K0GiGfrUTx8mhpI +tMzCjUCM9KumMUBB3qbalcxVVSCKtLH39aTy6njGFqkDehC8XWqksfpWoEDnGfeqUuMFh6UxRkUN +uDmtbTm+UCs3qRitaxj2qKl2uVP4TVjbpU4PFQJjAqTgVZxsfxSEUAiihiGkUgp+BTaLjAEdKeKQ +ClpoTFptLSdaGITOaYaecU0gGlqMYahbipiMVCfWi4yBzwaz5m5ODV6U45rPmPf1otcaKcpPepLV +ctk8imMNzVdt4gi++K6qMbnNiJ8qJ1wOKkAzTRyAalX9a7djyt2O6ZpjMRTiajbGaEgkxynOM9qc +z1AWA4FKCTRYFLoOb1ppNOGelNwKAYBRnNNZRUgNNbDd6OoN6EYXJFSDAoxjpTW4zTEtBHfB5qEs +c05vSolyW9qpIzbuxwTNNZBz7VOpUUjFKd9RuCsVW6U1Vx1qRsHketIxOKsxZXc9aozyMfwqzM4A +qi5DNgGtIoRWKlmzirdvGeKETrkVaiUCqctDNx1H9PpUEhKkVM52g1Wkck5NIcdys24k0+NORxUm +0HBx2qRQDx69KGzTlAcAZp+R2o2HofSnqmM1IAhC/WleYEConVs0IhOQaVkUpC5LEHtT+Dx3p6Rc +dKXZzxSuNbiImSPerSJtFJEvep+APwqLldCCQ4qHJyKlk6ioRzTJVyTg07imDinDGeKBt2DGRUbd +al7Y6U3bntTRk0RE4PHQUplbGOlP8siomHNPQeo4HvS+x6VGBUqjigGxG4+lIHIpWOTjvTHBwaaJ +6kizECkdi1QAHpUnT607IfM9hVGeM1LtqOM96lz6VLHHUQ56Uxs08n1prc5oQ2RgDIqzGoxjvVdc +556VKJQOKHcINIlZRj6VWbripi+V4qtk7uKUblTaY4nHPamk9aGJbigADk1QloQscYqNnOOOtTyV +XePJyKaJFD+tToA2M1CqMuKsRDvQ/Iq/RlhR+VKAcU5B3p3asypELtjrUDHNPmJ5/nVNmI6mqSJT +1HHGPxoXBIHpTAe/SnnBIppDky1Fjp7VNhSOKqK+0Zp3mnkc8daTTEpKw+TGeKo3B4I7VLJL1FVX ++fGPxqkrCtcq4ywNWoMk47Uixg1ZjUDA71o3oZOLuWE6AfrT8gUgokYYrJmsdEMY9cVQlcZIqzI/ +XFZ7yZJJrSKMm9RCOCT0xUMmASPUVI0q4x/OqskxJxVpNg2ktAYYGPWhSDzjpxUYPGakj5Oc8Gqf +YzjL3rkqLlhmr8arzVZAABUyvj2PSsmbqSvckYCnRgjB/KoidxxU8eTik9hp3ZOpGOalxTFAwOKf +0ByagqRGxGeewqF/8mnM2DzUbMCOaaCOpC2PekG7oakbtinKv68VV9BPcjG481MhOad5fFAA7de9 +FzN3JV4pGycU5RyM81JtXHSo6my1iVz0xUafKSD0qZlFRHgnFUY63Lce3vSSBTnFQCTAH0pplIPH +Sp5dTXnTQ9TzipemP5VW3DdmpdxIFDRK7k/UCoyetPXAFMapW5rJaEeTyBUZVt2KeSd3FPUbjn61 +TdiIq7GFTjHpTQ3zf0q1tUComRdwPShMJRsPBPFTCowBTxUjiRShRVdhz1qzIFqHbn5jVLYiS1G8 +4qVUyPypIxzVkKOvahscYtlfac8VLzgEU5gp6daRam9yrWBjjAqs4zkCrLjIyOtVznODnFI0a0Ij +F6fjSYI96sqOCahI5NNsSjYY3eoSMnNWRjFQSEg5HaiIT3uNAYDBq1GRgc1XJyM0+I5+lURKzQ5w +FYE0jSbRx2qSSPcCc9KrDcevSrRlsM87c561MFO4Gmqi9qsoOOaG7Ak27j06DHpUjYxx6VHFxkHt +StkD9azZrDQrzn5GrlrpgHJ/2q6e4PyNmuRuGAmfng1dFXY63wGpZy7gAOTWlExBFYVm2GB6c4xW +3AVbHtVyVmZxl7SHmiy4Zvm7VVlX5hV8AMCDVaQc/SuatFSizpwk+WaJLUnitm3561jW5xjNa1uw +wCOteDNWlY+iTujRTNTrwKqoScGrEYYikxWLAPGKCOKaKcSKGwI3qHpU7HrUJA5qGUivJn8zVOYY +zV9lqpMM8VmzWLM6U9R61HwOv4VYmX1quQKnrqWIy7+tQ4IYH0qZSaUgEg1FVJoUXZjBjrRHwT9T +SnBJJpqAgk5rDlszVMkGOlTJwelVkzuNSqTnFZobHN978acuOlMySce1SRjJ+lb0u5lU2sUbhcsP +Y1BJuUDFW58BzUDrnFeiorlPLk/eLFiDnpxUt6wWJu3FWLJAI+cGqWrOEic/7NTUdlob0UeZa6+6 +c/WsMk/lWrq0geZjn1rJNdlH4UY1/iYvYn6U00oGaStTEMcdRSUUUxB7UUU9IpZA7IhZUGWIHQe9 +ADOKKckbOSF7KzH8BSKQCCRkAjI9aAEop3HGenfFB2gsFJK5OCe4oASkpaXpSASilzSUAFLmikoA +KUE0YAwaOOlABSc5peOlKaBjaWkpaBCUUUUAKGIzRntSUvtQMQAk4FL6cUhx2OaBQBICgDk5DbcL +imYpc+lAJGaYBSc8UtL6frSAbVqaza3trSd2w1xvZU7hVOA34nP5VW6cn1q9rGpf2pci4EKwoIo4 +kjU5CqgAFHUCj2pfcmm0UASI+OnUfrTvOPX86jXGfWj5eO/NAy5DdFDz61ZmlSUDGCevFZPPJqZH +2556imJjnY8/Wo8gDjk/ypxwxJFNIPapGKjHj9TTyR0HTmmA9Pxp+D/Lg1XQkQZ6e1al0JVslVun +9nqV+hlrNA4Gc1elkdrRg/8ADZbVPt5tCvf7vzQ3sfWNrI0g5GD6V5d4oiK6pc9iCufyFeqRrg5F +eX+Kstq16D2f+lcmM/hfP/M6sH/E+RzmBzURJ5B79KsHA7fWoHPOO/avGdj1URqckCnNjpnHNG3A +56mk28nPHrRHTQbE3BeKeCM8np0pg49KeMZyfamIDzzj8aUM3OBSEqvTsaVcEE9c4qlowa0FGTgg +HGam2qw5qNSM4PfFTDGOPStrmLRF5QqXZwPagcf40bl4FJ3Q0AAAwOfWnN0JqMHnr3oP8qxk+5oM +k4BNYd6csQTWyxJBH51i3hBJOM4PWiC7Frcbbcf59K0rcsSQenasuHOD2zV63J6UmtS5Drxhx61m +TN744q7dOOnUVRmK7eR071f2iPskUTMWGTnBroYv9R36VztuQZAAuB710kYHkrjjinOymD+FGc7H +fx1rRtM7RWdNwwOO+Kv2x4BHQiol0F0LnYisfVLZ3RtoPANaytk9M4pzRiRTkdq6KMrPU5qqbWh5 +6yyK+D61t6YHylXrrSUd9yip7Sx8vGa3xDSVkRQT3ZfhzjipeaRF2qAaXrXGtrHQGDn6imHOcZzU +pxkUxh8wxSaQkJggDqKQgj1qTOTnoKaQw/E81Ls9ikKrE4yeTUnBGTzziowM0ZI4pwExxB55zmoZ +UDoVYdKlJzyfypDgr61pexDRyepaaASyjrWT9lOcN26V2U6eYCD271kXdsqcgdq6IVejMpUzISyj +ODjHFXYdOzg9hUHmqhwfwqwuoCJcdRW6lc55QtsSm3VVGeCaqTwqM85pJtXTHHUVlz6iz5A4zWqu +9jJ+Y+4ZE44qjJKDxUbysxznNRnJrVRM3IGYk8nNJSc0tWQOQkEGuz8KX/luEY8GuLHWtjSZvKlQ +56GubFQ5oHXhJWdj2izmDKCO+K0EYEcmua0i6WWJMHsK3omzXLTd0jokrMtcetRnHSjJxzSYzWhK +AAipVGTmmEHipFHSptqMlA4FO5wB6U36U/ORVIhkDqaoygbq0X6VnzDLUMuJYtwpxiryp61Rthir +yNxSihTJFQZqUQiog1SCStVYydxsluvXFU5IwKvNMMVSncGjRocGyo+OlQF1pJpDnFUZrkIOOtRY +6Iq5dMgXHNKLhMVkGV39amRtuOaSZfIX2mqCWVSMConmOMCnQpvIJqhqNh1vCztk9a2LaMgVFDEi +gEdatp0FFtTOcrlhMCn5qJcU6mYNEimlzUe/FJvoJsSZpwqIkmlVqAsSUvGKbkUtJiDrSGlFJSQC +Cko6UmRTtoA096gdqsNiqc3ei2g0V53yD2rOkbOcVclNVD83Aq4q49EhIE8w5q990AdqigTYOamz +zzXdRjZHl4qpd2FHTFSKcVHycUozitjkQ7dnimOwPBowR9aQA56UyXdkZDZp8YP5U4jnFOA7U2xq +I4Uwg5p5B7UgB6GpKZHyetKKkdAopq0E2Y7nFQsBzVjPHNV3oQ5bEMnFQltvNSNzURGOtapGI8S5 +oZjnFNCYGRSlckGnoJtjlHFRS8ZqYdKgn+77ULcTMy6b735VTUHOSeeanuGBJqCNSc54Oc10LRGM +mXI8jA61aHC5qvAMgA1O2ACKh7gtiNycGqrbiR6VIzcED1pqjNMpMfGpzzU6qeMUyKPBFWdvGKhv +U01sMwD9anRBxUa+tShwMVLY4q+414wTQseKcWU5pwPHtSuNpCEY4pEAzQx5qSMdKQ7EiL04pzLx +TlIxTJHGDmp6lpKxBIyngVDtp0nJ4pBkfjVki4wPX3oAPWlPXApegNCJkNI7ipkAHWofrTw5zTZK +dmSsBiqkg5qSRz0qEsMkUkipNCKMCpM4pAKUiqIkCjJzUnlhu1NjAzmpxgUmVBJkLRAZ9KgPXirb +v1+lVTkt7GmmKUUthwGakT3poB64qT3pMIoa2TTWU08jmkOOaYnuQkHJpuG71PtzQUGORRcaiyLJ +XAzxTCRgGlfimbs0xIkxkUnTr0pc4FRlj0NJFMeFJpWQVH5mPenF880NMaaEAJOOlTIlQhiSPSrM +Y6UPYFqyXgUEijpTGNSOTK82eapuDzV4gHg1VmHzVaZPL1IlBNSDPFKoXin7AScdOlO5L3EbGBio +ydvWpynFVbj5OaEJpohllw3tTonU89/WqFxMD0pbef1rRx0FGpZmodoX1p0ZHFQBwQPpUiso/Kos +EpX1LQpHIxUSvxUcjYNK2pd/dGSydfes6RiSQOPeppTk9qgU81slYw3ZEyuR75qJ1J5J5ABq6wGM +1RmJJzVRdxTgkPVR1PNTpGvUdhTYQGxkVbWNQOlJsFHQavygg/hUijOPWnqgJqcp3rNs1jBtEC4+ +tWU+bHtUO0elTQAcZpS2Kjo7FlR0FK/Ap6DikfGOPSs0VLcoysBUakmnSgkgikVe4qxJMfgZwBU8 +a+tRY9KkWTGKl6oadmTMo7VGuMMGHPaneYpzzzUJPOPShIU5Jki8YqXmokPepRQx0+ww9s1FIuMV +O3XNROfWmiGiPaT2p3l7utOU+1TptxyKG7FQimVDHtNTRr+VOlFNUnpSvcHZbEgGc0MOKBnFIynH +9KnqaL4SB1IBPrSB2UZJqZsFeDUWM1Rn6AJCT61IeeRSJH2p5TAo0G7vUVD2NSBhioUHXtTvY0rA +nZg4LcimHPSn4YggULjkUJhMYnWpt20c1CwwQRSuScEelDVxKViQuDkClU8c1WU8kmplORmhod7i +yNx1xVdmyalkJwCfWq57mkjRvQk344ppPODUeXYjAJz2FGT19cUBcfg9aglOTgVYHI44xVaVMZOe +1OIqhEGLDAq1DnHpVQAVeh6fWrZnHckXv71XYbScirLYUcVBK24A+1KJL0FXnmrYC4GKz0c8Gp/N +IGKJJmkaitYlbKnND/dpgJYc9qeD2pMlblW53CNvpXHXigy7j/ersL0gRtXIXgUuT1zVUXaRpVXu +k0MigADkgVu6dmTkda5eCZVO3nmuj0uTBxnqK2qLQ5aD5Z2ZtJ8vFRyovUU84PPIpDgge1cr1R1L +3ZECZ3Y9K0bcnj2rPPDGrlu2D714teNps+ioy5oJmoj8D2qyjdOapIRjmrEWeM1iaWLisM80/INQ +LzTxSs0A5hUZXrTy1NqWNEGD1xUEy/zq22BVWXIPWs2XEoTLnNVmAzk+lXphmqUoA565qLGhGRya +cnzDHeoycfnSoTmq0ehL0GkfNjGKB1I5p5HJqM8E4rjnFqWprF3RKu0fWnKBknNQAkHn8qer4PNQ +tChzDBqWE4qDIY4qxFGPrXRFK9jGexXnTcSarOTgfWrc7hBg9aouSzD65r0E1ax5kviNq0yYlOKz +dcVvIkB9K0rKT5QuOMVW1yPfbvjqRWdRXR1U3Y8f1FdsjDdkk9B2rPNaWqoyXD4OMGsw/nXdS+FH +LW+NhxS4pKcB1+uK0MxOgPTkY+lNpxptABTlkkQMqsQHGGA7j3pBjBye3HvQKYg5HQ0lFFAC0lFF +ABRRSjFABRS8UUhiUUpB60lAC5zSDrRRz/hQAo4oozTsHBOOlFwGU4rtCnP3lz+tIRRnPHp0oASi +lxSUAFFJSgkdKAF7daSl429euKSgBaMUlKcgkEYIOCDQA70PvRle3TtTQaCT/KgB4wQaawxj60DF +I2DQAmaXNNpaAFGaXrSDABz6cUoNAAMf/XpfxpDQOuKAFGc09WPfpUdOPH9aAHBgTUoYNj9agB5p ++eKEBMoUnGcDpV66CC1AHH+gZ/8AItUYyBg9u9XXdpLSTcATHZsoPr+8B/Sn/X4i6H1rHXlniw41 +e8/3/wCleqJXlPisf8Ta87nzTXJi/wCF8/8AM68H/E+RgOeKhyvcU6RsDIHOaiJJ5PSvHaseqiYB +cYpCozx3qNXzz74phZtxHtTi7iZKUXnHI4NJg4P401XzlTTxjAYn8KcrAmxpAwDnk04KAD9aYMZP +PNP54rNdymOjJGascge/aqoOCcVMHxkHniqVQhxJee9RurA08MOvrStzx7USk2gSsV8c8GlJbpmp +QqHJ71E+QePSsrPcu5DKcZzWDcybXOa3pfuE5PIrnbvPmc100loC+ImhZcE1fhA24HcDFZsGdo45 +71pwYVeTkmlJamjKt0SGzVG4Y7SePSrt24yCTxWfMwwcdKuKvIh7D7NBvAzXSR8Qge1c1ZE7h9a6 +ZFJiH0pSV5il8KM2X7+O2RV+3B2iqUg2vjrzmtGAfIB1rOW4dCVRg9OtWBkioo1OeelTgZGBVJdT +OREUBOT0p2xV7805gcjbTSc9+a0buTYTdTPp6047R1pqMG4rNsqw/PGe/rTccj607Bxg0nP61O4w +OPocUBl6etNlYKpPaqomAOB60rDRoHp6UwD8aFJZRQAc57VSelybaiNTckYPbvUrLwT24qDII4qo +67iInVjn0qrNCjrtar4AJpskasMjrxQ3YVrnI6hZujFl7dKobWK46GuyuLQSKc1g3Fk0JyB1Irrp +zujCUTnpreQZaqhU85rqBDG6njGazbuy2NkLjn867ITujknGzMnZ0FAXPFXlg8wABee9MNtsOSOl +VzkcpVaFl60wqa0Nm7GD060r2qsM9KFMTgZo4q3buI3XByOKJLN057UQxHOfenJpoqkmpaHoXhq+ +3JsPGOldrDLwD615do9z9nkTPA4zXoVhOHVee1eZF8smj0Zq6ubCuSMVIoPBqsjDqKsK2B1ro1MS +VV55qRcZFMRgakAxQIeMClOO1MpwHNMRHLuXnGR3rPmxuyDWm2cHNULiL+IcdyKGOLsx8DcDmrSt +WMJHjOferUd5wBS1KauaW7Hek81qqC4U0jTj1p3JsWmlFVJZSQaiefB4qu8+e9O5SiQ3EpBPrWey +u7Zq267zkmlCdMDmhm0XYrojccVZjt5G7cVYtrYsQT2rTjhAXpUocqlijHaKMZHNTLAM8Cr3lDGc +UCPFXrYy5yNEZRxzUykdDTgnFGw0WIbHZ/nTgajAIp/OKCWL9Kb1oHTFOXv6UMVxCcU3zCDzT9tM +K0W0DQlVqk3ZqBeKlBJNIljxRSgUHNBI09KZg1J1pp70wGMaqTVafiqkpGKRSKExPNQRjLVNL1p8 +UQxurooq7Mq8+WI9RxzTsUqjFOANd60PHk+ZiqARzSkCgZyaTdjtQD0QxuOlKgyOaacGk3bT1p9C +YuzJSKAMZpA4OCKcKkq9wpygdaTgU3OKB3sSMAeaYAM00tk5pwI7UWC9xXIxxVZ6sMOtV2HJqokT +uNCbuaRoxinhgMUjtmq1uDUbEBGOtIDSucmkHJqjF7juc5qvdMFUmrHQ5NUbxgcinHVlW0M+Rd5y +KckWOe9SRBeakK5xjtW1zKcVuEa7eaV+aUDgE0x3wCKRCIyBmhYySKT7x45qxEtJuxokmSRrxzUh +GOtNHFNLd6gpiFsHFN3ljikbJ601VKnNMRZjGevNSkcY6UyPHepMiobKsJtyacoI68UopjPigpom +JH51DK4qPzKiLknFCQDlOetOGT1pqc1Jg0+obADmlI/Kj8OaTnFMzG8gk0wk9elTbc8+1ROCKaFZ +oYSadt703HeplzihjQKvemk44FPzioHyG60IlserEUvnVHg4NM2MDn1p2BNokaQnmlTrmosNU6Lk +dKGF2yVeRTjxQoH0pXIAqOpp0IyxpmacxFRM1URcmU4pz4I47Cqnm+tIZ2HSjlLU9BsmSeO1A4FO +Azz604rjpTJW40k44qJ8jmpDwMUwKScHpQgauNG49aUcnpUhTbSqKLhYci1aiWoVFWlJxjpUSZcR +j5qFzipm6Gq75zmhEyI2kFQOwJokJB4qMZPWtLDUiVB3qTn15pi8UrMoFIhknmAAZNZ1/KNpwadL +cbc9wBWTc3HmNtq4w1DnTViFiSx9Klh3J16U6CJXPOKufZ8HFaOSM/ZPcYkjnr0qwH4qDDA/SnYI +x6YpMlIseaccU13LcnpTFB4wKRgwP4VK3NZO0SKXp+NVmbB4qwxY8d6qSI5PrkVouxhK+6EM5PXi +mplyOetJ5Z5471NBG+4MO3NPRIaTb1LUEWzGec1Y4+mKIxgAEUMMEms73NJaIcGxUm7ctV8MfpSq +TkUrBz6E3zZqxEveoI8hsGrkYBHHWokXBakqg4570jDin9qbkk81CLkU5lAJqGM9fSppztOOtRYz +0q1sCJF54/KkOfrSjJ9sU9Rk0E2ZGoPGPxobOc1ZEf5VHJHgcUJ6kuD3EUgcZqdCCKrpkcEVMnpS +Y4PWw6QccVC/SrDAYqBwc5PShDnoyINjAP51KZemKiPzGnbfxqnYlNokLbx+lMHBxS7T2oGOfWkN +3JEbJ9qk9aiHB9qlwcZFRIuntqNIH+NREHPapTTW45Apol7jkIHuKc5UgY71AJCB+NKsgI/lRYtS +0FPHApw6gnjtUWRUoJYDNBA4E5xSAYPNOA7UEd6RpJXVxpUZpuAM04k8YpQR60zNEW0DPHWlXO38 +alI4pg7jFK5bjYids9OtR4zkGnvnPFMx696B9BpXHQ0i5PUVMVABPtUS4HTvTvcOWyJOgqq6nd16 +irG7IqI4Byec0RuOVnuM2f8A16sRfLx1pGwRxSocgVREklqiV/m+mMGoNo9al7cVG3rQiZq+pDgr +8vY807aT+VK+cZFPRgQPXHSqZHUWJGHU8VIQRnPepYk3DimyIy8ms2zVQa1KF+4ELZ9K4y6cByAe +tddqh/cMK4i4xuYd+grWgupVVvlsPicb1yeM8V09hwAeenU1ykQbcM+34V0+myHywAc4xW89jiTs +zoUKsvFLjnGOCOtQ2rcYqwSc461yPRnY/eSZWkABzU8BpjgNSx8GvLxcbO7PbwM+aFjRQk1ajY8Z +qpGw4q2oBHH51wI7i0jZUU4HFMReKk21cloIXFGBjmj2pQAQazeoELjmq8gNXGHBqvIOoIqGrFJl +OQdc1Rm78cVoPyDVJ0INZyNEU+rfSn4wM0MoByaRTkY9KqO4SJc5FQkLUicDioyGyawrx1uOm+g1 +etNJ5x9KXjdwfrUYY765k7vU1sSjePxq1EcLnNVUyTirBzsOPSt6TvK5jV0iU523n+dRqPmz2zil +ZWySfwpM9M5xXpLQ8zdmpBkBcHGe9JqjYhOTkY79qjhY8fSq+rS4hINZ3VzqS0R5prsG2Z2H3c5r +ErqtWRZQe+Mn61zEq7WI967aexzVNxi0h6/jTl6UhxWhkIcUlFHtQIOKKSloADj0pKWjgj+tACUU +UUwFoqeCzvLlXaCF3CAlioJxiofrQMUbcHJ+g9aQUc0oxSAQ5pKecelNoASj3FBooASn5HPrkflT +aWmAvv8A5NB5xz0pOxopAOAzkAZIBNN4oFDYoAQ4pcd+1Hp356UnFABSnjFGMAe9JQAetFLSUAFF +FHvQAtJ14oooAKBRSgZoAUYzkjI4yKSl45FIfpQAZpBS0lADxz1oNOQAfe5HpSEDjdQAgHNSjBX1 +NRDvUid+PWmA8HGM1oT7BYt/ea0Df+RcVQQBm2kgZPerk277JLn/AJ9gB+Ego7AfXMdeVeKVb+1b +xj085hXqkfavKvFXOrXp/wCmhrlxf8L5/wCZ1YP42c1LtwR+eagOSRipZtwbAPU0xlIxg8mvIPVQ +1jtHApBk4zxTiCc/hxUbHj3zQnYLDxgtntzS7z0ycdKbnHGOvWkLYx71LGhQ20jnNSb/AOdVsfMO +aeGPSkktimWRz0p5KnqOgqCM5xnvU3PSs3uKxIrce4qXf1x0qEYyKcSOnvTXckkUA596jkwcn0py +tkE1E7cd6uysK5DN901zl8f3gJJxiugnk+VscnFc/ebWk/GtqKtuVF6j7VsgGtZANuQOlZFtn5R2 +rYhI2H6Up7lyZnX9ZTvnPXjtWtfAbj/Ksx0zyMjvW1OyM3sTaecP/SusUqYQfauSs1O4cV0aMwiA +6ZqJO07hLVFaQ4k/HrWhbnKjHpzWW2fMwD1rSh3YAPtWM/iH0LakHgdMVJ6ewqJDjI7Y61KG4/zx +VtJmbH5z9ajPyk5oyQT9KTgnNaW6EDXOR9aaOMUp65PFGBxgVEo9i0yQnpj8KbnPHSl2EjOelO2g +kVm1qBXuB8pxxWeFkD46jritZwOmOveohCpOfei6WhSCDcFHp3qyo5pETaBn1qRcYOaSJZHJkCqw ++9gd6nl5HHBqIKe/UVp6EocoC/WkJ5xT9hABzz3phU596JPoCEcfL9azbqJNpJHfNaZBFVJwHB+l +Om7SFJaGJtjVsfpSTpHIhGOaraj5kTE/rUMN3kKDXepPc5HG5GsCxtketTm3jfoOTSvsb5gcYFNM +o6Z5q+ZXuiHErvZsMkdjVZmkRiGrWimTkN1NVb6GLhlxnFUnfRmbVinJIMAmqhl2nINDs3TtVdmP +FWoi5rO6L8N4ykY4wa7zw9qBkQKzcjtXmiFsg5xW7o980EqHdxXPiKWnMuh20KnOuVnr0Dhhmrsf +OKwNLvVnjU561tRSZrOLUldBJNMupgCpBzUKEEc1MvtVIzY7FOWk5xTgKrqIYzAHFROoapWTNIRx +Sb1GihLAGziqjW7qePWtV16Go2AJpcxaM3MqUm+T9KuOnPtUW1eQapFFNmk61DtdicVpmFTUsVqu +elFkPmsZYjcEcGrEcLHHFaqWi+lTfZ0UcCiyYvaIrwRFQKuKABzSKhAp4FFjNu4UYPfrTxS1ZNxg +9KUYpSAaMUCG0uKMGgZ70aAJ35ozilNMIFIBxNJ1phPNN8wDvUgSEZqRTjFVGmA70qzg8VLeo+Vl +4GlzVdJAcCpQadyLD88UhNJzSNTAikJ5qlKeSatyZqjN39qZSKx5bFXlQBRVEdc1eVsqPWuuiceK +elhpxmnKMUgIyacOM11nm21A+1MI69qkzmmPjFCCRB7GmlSeakxmk24xV3M7AnpU1RAAc08ZPWpZ +aGO2D70zf1p7jmmGPvTVhajlY96lB4qBRUgPFJjQ4n1qB26kU534AqNv51SRMncj8w596RmJ5oKd +6aewqzJsZk5JpysSc0u0d6Pu0wSEkbAzWXdTEsKuzycGsed3ZsDpmtKcRVZ2RPC1W061QgQ559a0 +EXA+tVKxkm2ObABqs/XmrDgniq8ijPpUopDFBzVwdBUEY4zUpOF60nqWtBWcfjUYbJxUbOc5oVs8 +iiw0yTqfWpVXv702IfrVjaMelS2WJnbTTIKR2wP5VVLE0rC0uWvOpju3Y1GgLCn4xQUNyelAGetN +5JqRQaYlqSRmpQCQc01Binnj8aSCb0EOR059aTNBOe9Rs/HFOxlexNx1qOTBFRCU5xTs5otYvmTQ +oXJqQA4pqkU4YxigXQa54FNCg0SegpFbaaZHUmWLPvSNGM9OKBJipoZlSRWPTPNS7mq5bWKe0EnF +SrSNIskjyBdqk8D2paZnbUeM01ic4pe1MJ/GhIuT0GMeaZgHinPjP40L04qiErshaPmmKvNTtjrU +eBnH5UXKcUiRc4p3vimr0NPPT8KQ4rQi4Gc00ADvRI3GPWoueoqlsT1LG7mnLyaqhmIFWYjwKTVg +vcsLipFxgmmoAaeykLxWbNIrQhkYHpUJ3VI3XkU0g4BqkTa7K7x96jC1ZdeD9KjGcc00w5bABgVW +uGwDipi20VnXUpGcHtVxWplNlW5m7His4MCzc8ZpZmYsaWGIsRn3roSSRzubvY0Lc4wfarIlyMd6 +pKGT5R0qzEGx/WoaNVUdtQLZJzT+uBTli3Y4qdIQD7UmxLcjAIGKaxwOeuatMnGBVdl6jvmpRrN6 +FKXJxj8aVdnf0p0w56c1Wkd15NaWutDKMkmTYXdwO1WYET8apwFnb61pQJgflUyVkaKV2ShMimNH +x9asBcAZphxnHoazTKkiNEyMGn+WPTpSqRkEGn5UUNsairEYXmrUXA5qJF54qwi4xUvYUdyTnbk1 +E7Y6VOR8vFV5MVKLkUpSxyaaueKfJyaRcDAqxRJRninqQSPWmquMGnHrwetIHdMsbuMGom6VDvcd +aXeeaOUUp3Q9T1FOVs+xqIEbqkABwKbRKepJkY96jY1JgcVG4pIuWxGfpUigEfjUZTI4609G28U2 +TF2epOQoGagbqSKeZBjFRlhnjvUpMuUkPXbjFSjOBUSYqVfehigBHNNYdjUjetRNnHPrQhS0ZGU5 +x6GhYz+Ap65qRQO9NsIxuQlFpV4461LIvSouRSTuNxsSjtSnkZpFyAKkCg4qWWtURYzTPu1ORjgV +BL0qkZvQPNBGKTfk8VVPDE1ICc80WHzXHE880h603v60vcmgtsUnios8nFIzNjrTFOSfwoSE3oSZ +6Go2Bzj8akxkcimP1Ax1yM00KWwwS4JGcmnrJ+tQ+WWbPTBp+CMd6uxk32LCsSMYoYcc00dKeDni +pZpF3VmNUc4PSlX5WI9+KdgjB70pBHzU7kNWZZik2imTuGC4qHccZqF5T0zUcvU1U+hQ1aTbGw7n +NcZK37xs9z+ldZq/MRPtXHythzjtzW9LRE1NUTIRgL71t6VIM46H3rnI5DvHGeea3LAkOGHyknua +2a0Oao1dJHUQMQQPWtEAMvNZkOSFIrRhbK9a5J9zpov7IwoB15oQYp7jvTRkZ9a4cWrxuengJWly +lyIhsdxVxCBxVGDcBira5GK8hPU9gvREYGakJBqvHk1Nxjitb6CDdgUo5pjenrTlAAxWTAViQKgc +Zqc1XeofmNFZwT0HNVZsjANXmAxVOQc4/WokaIpuBzxUXA/GrLr1qDaBwe1CuNiKefWnuBTM7SMV +IOc1TXNGzM72ZWbgk1Chy2cVLNgHHpUMJ5P5159SPK7HVF3RODjHY1I7EDHrUBPPXv1qQHIwe1bY +ZXaRjXdokTc8UxsDAp0pUGmIcuB713t2PNSuy/AeB7Vna5KEhYHuOK0V46Vg+JJCIfpWcZK52pHK +SzM5YN9DWXewqoDDFTGfLMc4yabIwlUgfhXfF6HHNamYRim96cwx2pvIrUxYlFFFAhKKWjimAdKS +lpKQBS0lLzTAliuLmDIhlePPXaSP5VHRRSGGO/4UDilHAORQKACk+lOxk8UmDmgBKSnUh4oASl+t +J/nNFADh3+lOK4GaQZFHJyKAGilySRnn60n1pcYzQAhpPrT8ZGaZxQAUUdqKADNLSUc0ALgUYoo5 +oATFLRzQxzjvQAlKMUnrSjvn8KAHY/lQcZ/wpcEdc000DE/ClXbzn0NJzTtrA4z2B4oEOGKaTShS +wYgE4GTSKSOaAFXAz9KePbikzjvnnHHSkNAyQEcY5zV6Y/6I2RybQH6/vRVBMnGeec4rSvo2jgIP +T7BER+Mg/rQv6+9A9D61jryjxgcaveAf3wP0r1dOteT+L/m1e9wf+Wn9K5sV/C+f+Z0YT+J8jmHY +k5z0oDjnmoZAQ5/u5oXrzXkyVloesidvu+9QY+YfWpSSFGee1VyCzetShko5II49qaxAHPbvTsYw +PfpSc96nW4xp2kgn0pNynp0oYk8YHuaTAzjPTFLdldCxGRggetWF9SBxVVRj1zUy56A/jUPclom+ +7z1pMnsOtNyeMetKP5U2ImXGCCail6AdKeDjp+NMfaTmmr9BdSjNlVb2rAuj8/oc9K6KcfIxrm7j +Hm5OMZrqpLQafvFi1wcdu1bFuowaybTH0FbFvjacjrUt+8VPYzr8HJx0yaz2zjjpV++ODxWfMOmO +uc1rbWxnf3SxZDLDPQV0OB5ePWucss7h610C/wCrx221jJ2mU1oiiRlxz3/KtGHOwCqHO8A9604R +8qj25NYzeo+hMvTHWpOMUwMPwoGM8nFXGRm0K2ccdvWmAn64p/rz3pu0jGatPUkTPXt6UobIHFIQ +Dn2NIucjrVStYEThePenBec0ZB2k9TSD5eSahjHYGMGo9wUjNS5BOc1ExBNZ+Yx+8kYFLuA4NR4w +R+QpzbQPU09WGgxmHWhcHFRFmz+tSJgADrmqv0E0TcY6+9NyCBTd4poJUnH1pPXUQr4IqBkGGPX0 +qcnpmo3BI4ptroOxz+qw7lPHY1zTsFO01291b7wegGK5fUbFlcso4713UJ3VmctRWd0LasGHJyMV +FcIOWFQxSSINvQ1at4/MDbvwqrcruPSSMwzyKSvbPaonnmGQxqe5iCTe2aW5twYlZccCt04qxzuL +tcoO55FREnFShc5FPFu7/dra6Rg4tlcE1NFKyEc082U47Zpv2d16ihuLHDmT0On0DVnhkVC3y5r0 +ixuVkRWB4xXjNtvRgQTXeeH9TbCRO3HFedVjyT5lselF+0hd7nfo+ce9WEbnFZlvMHUHParqSA1a +aMWi6p45pwNQKalU5FUmQx2QDSEelB7UzNKQEbE5xURI5qSTjNVyRyTU7GiF68VGQOop3Bz603eP +ypopChsY4q7BjFV0RWxVqNQKpomTRYXpTjTAe9Iz8VdjOw/NNLgVF5maACeaBqJIGJp4Oaj+VRTG +uEQZpDtfYsUEis+S/RelV31E1Q1SkzYMiDvUbXEajqKw2vJn5XNKsd5Nzg0XH7JLdmlJfRDvVSXU +4x0NR/2fKc7jzVG+szGM0crYL2d7FptTUng1QudYMVV4FcsVbpmn3VpG46dqnkvuVeKlaxBHqc9y +3y55NblnFMQCe9ZWn2Cq/tmupt0UKBjpWbjrqXUkktBYldetTrnilAWlGelOxzNjxQcYpvSgkU0Q +QyGqM4x0q7JVKfNUhorLww5q0r1VUZarKY49a76C0uedi3rYkHNSqOKZUi5rdnJFajSRk1GwA605 +mwahZ+1NImTJkwBSPiolfijOTRYfMrWFGOKdznpxSLTuAM+1DBCYU0EcU3dzxS5GKBoaBT/6UcCk +JoDYYVyaAnWlUjPWnE9aeorKxC21c5qE4zUkpH40zAAFWjB7jTjFMYgD8KkbGMVWnbAx3zTWo1oU +5nySBUQiLHkUsmN1Txfdya22RnvuNWMgHiphlcd6UHOM0MRUt3ItYYxz04xUZGaVuOn40melBaeg +/pgU1+fenA+lAUk0jREO3J5pQnfFThcHOKeBzQ2LQEXaAaezjGKQkYxUDH3qdxiuc5FNWMfmaVQT +UyqBinsFxVjwKawHPpUhNRMeopDRF3qdFPFMQAkZqdRihjWgoXHelPA5owKU4ORmkiJO7I8Z6VDK +rCrIU5prrxVJk8pUA6inoKXb3pwx2602JId9KXP8qP0obikNjCVzUb04fMSadsOc9aomzZCSyn2o +BPPNStGKixk80XB3TJlHFOB7VGpI6U5SB70mhrUkZiBUZcdKVmyDioHNCQ5DTJTBIwPWgjOaDH6V +WhKuKZM05egFRKpHFTqtGw7tjucUhw1KM59hTJODxUlbIaV60hB7CjdilVvWmNWSEC81YjUdqjAB +JqeMYob0J3ZPHiiQkDigYWo5XyMVna7NNkQO4LUb8c1Ezj/Cm7sD1rS2hnclcmomIoDDvTJCqg9q +EO9yKaXAOKxricljz61YvLlcHms073xnrW0I6Gbeoctj3q3CjE9xzRDCcA/pVyCDoT61Tehhytsk +jgBAwM5q0IMBeKsW8QPUfSrTRACsXPU6FS0uU4owOCKn2qOgpQmDUoXjNS2JKzK5TtULoFGcZNXs +CoJMelCZU1oZcqjJ4qo0OfxrRm2g81X3KxNap2MWkRQwlW9fStCMEdqiiHOasKB1pSZUNGOb7uaq +yMM+9TknFV3BLc0olzeuhGDjgHnNToxxnHNNSLPJqYLj6UNolJksVWUx161Xj65qwvp0rNmkdyTg +Dmq8g68Zqzxiq8lJFy3KzA8UwKAcmnyNxUa+hqhqxKoyfanYFImAPrRg5BoIluKqZ4pNh5NTIBji +nttApXBQTRUHXkVKCOxqNiBgU7AJ4qiLWJV5znoKcR096anse9PPSpvqa7obgAe9Q8ZOOeamAJP9 +KjA+Y00ZMYELZpCp2471bVMkUySPB+lLm1LcHYgTcDVhRnvUABqdOMU2StyXAxn0qJh1NSHoRUZz +061ES5jMqPpTC5Gcdae654qMIehq7E3YvmZoyc0ojBzmlK4o0C7JE4xmpQOM96iXHANTKR0zUsqA +EZ/GoZVGDU54B71Xfnk0IHuVsA9O1ISQPftUpCjkU2Tp296dxuNiJt3HsaGJpygFvUU5lHSgbRVb +IGKYjAHnjmppM9Kr4+YVS1E4tFhWHUdM0HGST0pq9qcQCKS3B/CiRFDYx0pXixk0kRI46DFTyMOO +e1JtpjUYtFJTt4NPU880yTGc+nanoMrkVZls9CcHOfSnKvr3pE6GpCcqAOvrUGkveVyBsBtoHWmM +qMuTUrgkg+lIVG0j04ptkxV2YmrbRGcjsa4q6IDHnnP5V2Wt5EZycVxVz1yDnnFbUtrmsl0EhDFg +fpW/aI2BnuKw7JMuB1Ga6q2jwBnjitXKyOSpTc5WTL9nOQoQnnjmtWE8jPQ1jQgK49cjFbcDq6g+ +1YVB020WSOOKaOelPUqVx0pgBDe1cdaN4NHo4eSVRMsIelWFbp6VWXGRU4wea8WSsz3o7FyMgVOr +A/hVONiR0qdeO9VF6AyVqBnrSZp4xioe4DWJ/Co2HGKk+WmHms2u4IgYLjFV5AQeKslQDUL4yDSS +NEVCpGc9agdG6rVxgGJBqFxgfjipejKKzg44700DBFTEAiosAcmtNtjNjJFXB9aprgMfxq9nr7iq +Mp2sTXNiI7NGtJ9Az82Papv4cdaqxklxnvVx8Io+lGGWpGIdoldl3Z+tNiAR1A9aUb+oFCY8wV2y +2PPjfmLu4cE+lc14mf5OK6EqDzXK+JGYkiueN+ZHf0OLZzuOD3p/mbVcddwx9OaikHzH0puQfvZx +XppHBLcjc80ylPpmkrQyYtJRR09qACijpQKBC4JBPpik7UuKPrzQA2lo6HigUALjNLzQCenrR0oG +Lg9aPp+dOOOKP60xC4OKQ+lOAxmmkHPFAxrE5APYU2nkA8+lBx2pAMz2pVUk4GSfaj/JoUlSGUkE +HIIoAe8UkLmORCjr1VhgijtT7i5ubyYz3MrSSvjc7cngYpnU56mgYEHaCeaYxPI96n5KHH4VXPXn +igBySMoOPcU0nJOPWkOM8cUcc0IQUdKSnHoKBCUtJRQMXmj9KKM0AFJS+9BxQAUEkkk5JJ5NJS8U +AOXPr0oIHb8KQUuCfyNACYBpy80maN34cfnQMcSTwOlID1pAc96eBzxzSATAx+NSPk847CkAG3J6 +ilz+vWgBVHNaNxMklmQV+ZLIKfwk/wDris3P+RVpuLWbqCbYZ/7+Cmm7r5fmD1R9epXkXi4j+1b4 +D/nq1euJXkXi7adWv/aU1y4z+F81+p04P4zl264qNHw2AM1KRyRnimbFA7V5Nz1RGdiM0gP54pzg +YAHpUfOODQgJgSAKQt1H4UxXY/hTtwPHp1rNlB14PtUfG44HWlLDGQwz1pAMt9aSGiYFuPbvUqg4 +qErjBJ61MvQHpxSe4EnOM+nanDkH0FQ5J7/lU0Zo3JY9Wxwe9NOc8cjNOGevpSDHvinbQRXuQShx +6Vy84/enPY9a6u627OvWuYuseYxB711UdgjuT22Bjj3rXiIEeaxLcitm3BZcnoKlq0ip7GbdEl+e +mapy8kE9qt3XDnPuaoyt2PJrZXbJ6Fq0GGBHIJFbZI2Vg2Tgkc1uDHlg4rnqJ8xb2Il5YZrVhA2A +ispDlxnmtiL/AFY+lYz3Jew498dqbg9cVLjjA5zSbeOvNNNkkZB4Pamk4GeuKfj1pm39aq+oWDce +M05cZ+lMwO3XNOU4PP0rRsRKmTnGaUnIxQp4HPJoPX2rN7XGOByOR14pqgZ5pxPBz601Ac/jUagS +YGOnSoZCQfWrDcDHSoW6kflVrbUkrkfhxSgkc4pWGMgUAHiiK7lC4NOwQc/Sm4NSgcDtzTuiSNjz +jFMZgBj6VLIu0+9RhS2T60tRoQqGXjvWZe2fmKSB2rUUsDio5gWDDsTV03ykSVzi5oPKc5HTNTwO +qrtrTvLHILYz3rIMZR8HIrtTU46mCvFlW+U/fHFRwzhozG34VbnhkIGfu1Qe2cfdzW0UmrGd2mV3 +Taxx61es1wRkcVWWGduMHNXbdJF6qRTm9LExRoIyEfdyKqXQhOT3z0qyiuR05PFQyQq/3j+VTG6H +ZNmW5IPy8c1es7ySMryRile1iA60woF59O9ErSVmawbi9DvNF1ZZECu3NdTDMGAIPFeQ2t48DqwY +8YrutF1hZ1AJ+auWzpvXY1lHmV0dijCp1ORWdBMpGc1bR81sjmaJ2cEUlM3D1oDde9JgNkbrVZsH +NTSHFVnP86FqWh6sPpTguetRx9iasJgHmqTBsfGAoxUwY9qjA7inkrinuIerHPNKxFVZbpY6pyX+ +TgGrRSg2ahZBTGuEQcVkNeZ/iqFp2c4Bpq5apdy/NqGDxVN7lnyc0iW1xMRxxVyLSXOCxo2KcoQK +Uayzdia07bTmYAtV22s0jGMVoIgGKLts5qld9CithGP4RUyIiDFWiKieInNXY5nJvchbB6Vm3sO8 +E+1aRUJwap3UyKpAOaLlQi76HPfNCzA+tLuMp4HepH+dialggbINTI9CMUldlu1gCgGtNMAAVWhX +jmrCismYzdyYUoNMGeaD6UuhlYkyKYx4zSEmoyTnHajcVhHOM1TkJzVp84PpVaTBpx3AjiXn86mA +waSJRTznNenR+E8vFfEOB9adnimbgOKTcBWpzJiOxzULetSM3amFScGqWhDV2RrnJFTKePpTOnNP +UU2CRIPems3WndsVE3SpRb2GbqepzUQxnPrT81TJRJkkZqMvwadnimMOuKSQSYwSAHPSnGQ4qBkO +aditLIy5mLktRzjFCD3oJweKBIYx2iqE8uMmrj5HXvWbcHJIq4q4ptpFYyDdzV2IjGBVIRktk1dj +yOtaSMUydQOcimt8vWnY4pj5JqC1qRMQelAHPNOKgU4D14ouWkIuBninKQelIVYigAjipGyYHIp2 +Bimp6U7tUlWInHpTP51NjcelPKA07g0QxgjBNSnHWjaccUhOBzQyVqI5FQ9aViTTlUZzQVceq4qQ +dOKaGHWnUh9BM4pfegnjFRsWH1qrGTeo/f3oL7hULE5oDnOKLFJhgtmpFXHakGaevHJoYJCnAFRy +ZJzT25BNRN2oRMhgbGc1Mrdu1QMeOKaJfSqauEXYtErUPGc0wsTnJpy5FJKwSlceKQ8UZNK3IoGt +iNn4NQEkn0pznHFRnOc1SRN9SVSO9OY+lQqcZapNxIpWLurCqPXipFNNUGn5xg0mKPcRm4qFsYIq +R/bmmjnHFCKepDtf0p6K3ANWRGDzSmICnzCcbDUXtVhFIpka5NSnjNSxLcaxxUEhzn0qZjxVd+TQ +ipEJX1pvqKnIGKrscVSZPL1Inl249DVG7uxjGcVJczIgye1YdxcAtnOfatYwuZylZD5ZC7dc8cVJ +BGWIHvUEShip688VrWsRwtaPRER1Y9IjxnpVpFK470YOfpT8cg+tZXHomXrcjANW+NtUY8gHHTNT +b/lP4Vk1qbKegpOGp2expuO9KTxQT1ENQytwaexPOKrSNwaaWpUtirM1QIMmpXRmalWMr+VamdnY +fGBwKsAYHHOahjGPwNTE+9SxxGuQBgVDjP8AjUr8YNR5x+dJFS3Jox8tPwv40xWwMGlL8fjS1uNt +WHoMYqyhzwagToKnQGpYR3JSRVeTocVI2aibnI71MS5lObjmmoScHtT5R6mmrnpWhMSZO9ObjGKa +O1SUgluNV6Qyg8deaGU03acninZE3YjYPNPj5ppTGPpTlyuMUMnUnVfSn4601S3Bp+etQzaOwhGK +i5B6U4lqbzTRm9yRXxSM+cioi2PemgnB9qLFczsLx+VSr0BqEEjFShjTZJKT3pmO9Lu4xSN2qEav +VDHUUIvt04peO9Kpxn0qjNWuTBOBxUbpinCRQOtNY7uhqepo7WGrg81KnHPWol/rUoJ/CmyI7jzj +nPpUMhBFSFs1BIQB70kXLchLAH6UjMCKjbk+9NyadgvckXk05mIP9aagOc9qbKxz16CgGyOR1Jqu ++M8Hp3pJCd2c1D5g6VSiNz0sWwSBzUmcr9aiiPy/MKlC8YHBp9SN42G7gpx61HLO6tgc09lOM03Y +HxmqVupnqCvuGSKkRsYX+dKsfFDo4+YCloPlfUtDNPXJqGLLKCanU4AqGi4PoRuOtR5AzU7HjHeq +8oC5x9aQLRmDrbfIfbrXE3DEtx68V1utS/eFciwLOf0ropLQpyLVkSpHat+CdFjXPXFYVvhcZ7Ct +BXyQP1rdxvucM6jUtOpuRNvAI+orYsjuUD2rDsnbAHUYrYsmIPQVhURdN3NNOKRs59jSBmz2zTmz +jmuaSO2jIkUbiDVlB71WQ9KsDPUdK8WvG0j6CjK8SwvHen7jwKjU5qRT61jc1JMtTgw70zfzmnj1 +oeuwC8d6OMfWl9qPeo6gRNUEnXpVhx3qF8UmUiq+AaicZBIqxJjj3qA8VOxZB/ezUTDHSpn25P61 +G7LtFWpaWYmiMDPvVe4iDDIGDU4Jok7g96JxTTJTtIzgrbh7VLKzKCDQy7XH1pbrBxj61hRjbUWI +ehCj5FEKnzCc801cAdcZqSD7xBrsl8OhxQ+LUuH5evSuP8TSDcVAyTXWsTjrXE+JCXcqfoDngVzw +1mjva91s5aUlmJ/lURzipW4J9aib1Femjz5eYw0lBpecVZmBB5YA7AcZ+tJknrRzz7daSmIWj0pB +15pe3vmkAZpTSUc8UDDrS0lFAD8c8c+/rQPzpuTS5xQBICmQDSP19aYpx9adk9aYDiRjAJpUxnmm +HP1pQD3osIfgbuPypGU4JHXrQxNBOAMUMEREN/OngHHSm4P51IkjqAMk7TkDtmkMjYYNA4NPI4zU +Z60ASBuoqI5zTqCCzHnk5JoGMpf6UvSkwaBCYooooEFHNFFABRSU7igBKX1zRSUDClycnFBGCR1w +cZFJQA7NKcYPODkcetIKPpQMSilx2pCOlAgFOywA+tN6UvOPoaQyRXwR3ApS2ScfhTBgjk8g0g6/ +1pWGTKWUqVPPNa0qKulzEkMwt485PIBcYH4VkrkhQx6dKttvWzmDD71sCPp5oprcG9GfXiV4/wCL +edXv/wDrq1ewJ1rxvxa3/E21Dv8Av3rnxf8AB+a/U6cF/Efoc8xHfjikP06CmMS5wKVcZ55x2rxr +anq9BHI49+tMGM4+tEjY6VGW9/ai7tqFiUEd+hpGJye9MD8kc+1L1HXmoZSQnJ7cZzTkzn6U046i +nA4x70ugycFsd8mng5/KmxCJlbcxGMYxSg4HHpTavqLyHBvmyBUvb1qtkkj2OTVhXz7UluSx4zgD +NPTpzUQAz1qRTgkYpxvsJla7bCH071zVydz5PXdXRXmAjfTpXNTf6wk+v5V10khx3LNugwD6c1rw +FkQ5/Gsq3Kgg1qRN8gx6UvtDlsULr5mI96z5hnB59qv3H329u1UZj0zWkb8xL2JrPOQOv9K2wW8v +04BFZFkOR71tOu2PjtWFSzkW9iGPBcN75rYhOEGehFYkb/vPStuHOwDPNYvezJlsSAkcfmaVmIwa +QcdRS45yTUokjJpMEgUr4wSKj8w4wfWm9AQvSmhuefWgsuQP1ppxjI69a06AS5z19acWA71F/CD3 +9KdlhkmotYZJkdc5qROp5quAR+PWpojzj3pNATvgiqhJ3H0HNTzNgVW3H04qmrIlCHORzwacuQAP +1pmfX8Kfz/Wknpcdh6gbjThuP4c0xAfoc1MBn8KE2xMjbimKSOc8jippBxxUQ44PFJvW4LYAuQCa +a6jgenanc8mmEnnv61aegrERjB+X1FZN9Ycl1HTk1skZ+uKjdCw5q41GKUTnYihOx+oqytjAwpb7 +T3JLxjmqYnu7f5Xzj1rV8z1ixJRLyWEKncVHHaoGjQSBQvU1F/aT9gantTLK+cdxReSXvC5Fcna2 +wmfasidWViDXSyKY4+ewrDuWRnYdPatYy01ZMYq+xRKbh16UjQOB3wDxVpIwTj1q95CGOhT1sW4J +I53aQ+Mc5rRsLp7Zwynv3qK4jw59BUS7ugqpWktRxXKejaVqSTIvzfNXQwylhmvLtLu3ikXaePSu +40++8xBzzWUW0+VmdSHVHQg5FKrDvVWGUNUoYZzWu5hYkY5FVXJGfrVnGenSq8oOTTuCGK5qdGqm +Tt4qQTBepplF0yhRmqU992FVbq8ABANY098cntT2NadO+ppS3pOc1CrSTHCjPNZ1rOk0u1u9dRZ2 +8I2lRQpX0KqTVMrwabcSjJ4rRtdLCHLcn3rTt1UAVO20dK1itDinXm9COG2RBwKsCMAUisOlPBzV +GDbe5HjaeBUq80jDikVloDcf0pGIwc1FLMqAnNZl1qQX5QeaLlwpSk9CW9nC9DWJJI7seeKkeRp+ +SaEiPfmpud1OmoIYkRJ4rQgh455pkUfTFXEUikxTkKEwKdginY6ClXFS10MbgAcZobpTxxQQKSVi +bkYB/CkP0qTrTHo8xET9KrOOanc1XkPYmrjqJ6CxnilBJ4po46U8c16VNWR5FZ3kIV796Qg4pw4G +aaT1zWiMXohvUingDGKizg0/cDTaHFoa3DUoJzSjmlwKLk21EJ4pME9aOaMgDFIpDGApegpDjtSg +cUxW1EyacBmm5FSLgCmC1InA7VGe4qVyKj6A96pGUrXDB6imnjNOGccd6jkYgetMS7kMze9UCCWI +9asTOB9agVsnNapWRm3dj1i28/pUgHIp68rg0gFITSvoPztH4VESOhNOJqIn5jigpC4JPrUm08Ux +CetSg9PWpZaYuOgNNIOcCpMAmnBMVNzQYMgUhapDwKrls+1CB2RKpxzUgbFQKTjmpF6etOxlzEjF +SOKjbPIxRmkJpFoZinDig/doTJzQOw5eadntSYINKM0yJPoA5xmlZQRx1pOGNSADB4PWhsSVyq0b +Dio+Ac96tvgcDrUO0E1SZLjZipkinjFIoNOIGMipZS2EPHemMCRQSSDmmjOetUiN2N2sc1E0TDpV +4J+tNdcdaFIrkdingjFSJ+lBHzUc0yB5IFNY8UhPrTCR0osX0EyDnNRbAc04E5OamGKd7AlcrqhA +6U9FIOc9alIB4FNC9/SlcTSRIoIoakzSMeM5pFRsRsT2PXNPjHrUYBGM+mKCWByOlML2ZbVuDmnY +BHWq6MSKmXPFTYblfQlXgYFDDjik5xSMwxSEiN2NQM3PWnSMOtVpZB0q0hNkpkAGDxVWedVB5qJ5 ++CazLy5zkDirjAlzKt7c8kA1SVWkZfrQyySHnk5q/BCQoziuhWSMJ8zJbODHJ6ccitiBAAMetVbZ +SBx1rQQDAwOKym7mlJJCEAkCpQi8Gl2jrUwUAAVlcbWoKvy08Dg59DTgM4p/lgjNS2VFMiJIFJv4 +BNJIDULPwfamkJ3Qsjkc1XkJPSlZmaoiR1qrFLVD4uDg1MwGPrVYNzlakDg9aGmPmVrDsY6DNLnj +BFCtzmkYniglb3GMetNznkGn+tRgAn6U0J3uKN5PHSpFznHvUioMDigpg8fWle43F2LEWOKsBRVa +MHHNWFJ4rNlx3B89qruDzVhiPyqB+5pIqW5XYAg+tNXrQxA/CkjzmrYImxmnYIoA45pxGB70kKSI +8nP1qRU7mowBzTvMJ+lNkxaQ9l/KosEHAp2/PFHGaEOTTHpu71MBxzTEPFSDkZqWOAzHFRt157VK +c1G4yaEKW43GSKXy/SlXqOKsrt2ihuw4wTKZQgUKTUsnPFQ8Z/GmncTSWxKvNBHFInXHankdqT3K +TvEi5z7U0ntnFSY60wj5himQyM7icVKucU5EBNPKY6UNoaTsNGRT8k8VHyGwakGAPekwQvAz61C+ +STmpOTUR5zSsWyAj9KiIJbirG3P0pqoc000PlGpkZBqOQEZ5qZhUTHHFMLFKZcjHqar+WwIz71Zk +JLGmbST79KtPQza1JICwwrdqt9MVTVTk54HSrUXzDFKQ4aOzA9frQBtNSYOAT1pkgPJoJasyaMrx +nmpDtINVEZgefSnedzzU8upfPoSRkhsHtUxPNVhn71TDoDTaM0+oOeMd6hlyVzU/qarzZCnH50rm +lupyWuZDN6Y6Vzq/M3A5ziug1xxk1z0ZCsSPXvXVT2FcsJ178dq0bdd3DHH9apxd8jrnFaVvjAJ9 +cVrzHDON3qbFpCSAexNaCgqwIqnayfKq1eSQEZxzXM27nU4xSVi+oyAanAJXNVbdw3Xg1cXp1rCR +pS3Gx8dasZ6elV8ENx3qZAOOeleXikkz3cJK8Syhz0qUEt17VBH71OD6Vw7M7B5AxgUql/Q00lum +eKemKYdBw9aViKT6UEipEMOOajIz17VIf60wjIpFFdx0JquynP0q04HSq7cZ9ql9i0VJflOagYZN +Ty85qE9hU2sUKFJBx2NNYc04MMmkI56VsndamLTTKs42vn1qvOxBB7VckVT15NUp2A4IpcqT0M6k +roYuDTo9yuO4pqjp61IpwRirfw6HPD4iyWJFcN4mk/eEYrtmY7SV9DXA+IgfOOT+FY0V753Tfus5 +/P8AOmv0H6U7jGc+oxQzN5e3jBIJ/CvTR571IqKSirMwopcE4A79KSgAooooAWj0o7UlIBeM0voQ +abS0wCl9evSkpaQAKk7D3HSmY4FOHPFPQBeR+VHPuKM8+opfSgALZ/nSfUUEe/NNPH0pALmpIsmo +uOKntyufm9aaGNlVl61EM9as3LIWwvpVf8O1IEJSEUvv2zQOaAEOMnbnHbPpR696UjkkdM8ZoOPy +oAaRTaf6U0igBKOaXB6UYoEFFJS0AFB556UUUDEpeKDjJx+VFACjjinCm04nGKQ0IetIPSlPODSU +AFLniko5HHoaYC57GlU80YOMj8aQfypAWN2VH1zV+5BW068PYq+PT99WZnjGa07uZZrUbQAE0+JC +PcS0LfX+tRvY+t061434u41i/Pbz2z+dexx9a8c8WH/ibX//AF3f+dc+L/hfNfqdGD+NnMFvmJGe +O9IDwM+tK2M47Zpuea8d7nrLYRzzUZY9MilY9R71Gx3EYPPFPoCJABnk9+tOXI/CozzT8gYB79az +ZSH4HPrmlHOfwxTQR+lLvU4HapsBIMjj2p4xtHNQAk9DxTwenPSmtgJDwee9SrtBBzxzUJwf8aFy +AfrQ1oItKCSPwp7ZwAKiR89TmpeozTjuRIoXjYBzXPyFd7Lg8mt++IwRjGOhrnpOZTiuunqOBZg5 +I7d81rRbSme1ZMeOAO1aSFhG2PSk9yplKbO8/WqU3bHFTzMS+P1qtKfrVxVmJ7F7TzyPrWxICE46 +YrEsgc8f/qrYYnbk9MVzVLc5b2IYAd4GOc1uRggDPWsSAjeMda24vujNZy1ZD2JgB1604n+WKaua +CCajVkkbAHtxUWwcE9egqXhTt74zTT1p62GQbTk56Uc5/DipWAPPUYpCE6nrVR1C4i5JOeQKd+op +Rt/KngKSfQU9hXG4boRUqDoTSDGMigNk1N7sBJeelQD1qZ8ZqFs4GOmapiQoIODmpAM81EOuD0zU +mQOBmpaGSL6U/cOahxzjqRSglTzSXcTB5OmaYZM8UOBzn600f4Um7FJDs9vSnAAg46mm/wAqUnjP +aqT1ExnIFOQA9fSl65pFOM5px7gxjxqwH41Vms434ZQau9OlMIHJPeru7i0M8abbddvpVuO2ijPy +rTxjPSp0XcOKTnKT1CySK06jyytcxcDEpAHWurvOIye9crcY80445rojsFPcdCuWrQPyx568VRi9 +q0Cp8s5GOKI/EORi3LfN3Hc1EMLnOeadcY3tjpzTFA49K26AWrQfNnpzXTWdx5Sgk4rnLbIIIFaz +FvLz6VzSu5jlblOssr1ZAOc1qLIG/KvPLDU3gm2FuM12dldCVRzmto1Pss5pwtqa6HjFDDJ56VAk +mMZqwDuFWrmNiCWIEZHvVCcMvFaxUkVC9uG64qkxxdjmrguCcHis94nlbvXUzabGTnGc1Te0RD06 +VZ0xmuhgi2aE7uRg1r2urCJQGPIplzGuDkdKxp1IJINGl7jcOdanaWOrvIQOuTW7FIXAzXA6RNhg +Ce/eu3t5l2Kc9qqM9Tiq0+VmiqinAhetVBdxqOTVS41JR0NXzoyjSlJmpJOijk1k3OoqhO01nTXk +sp68Gq4R3fvRe5108MlrItPe3Ew9qRIXfrkkVPb2/wDeFXFhVAcUKJo5RjoipFDt6iphGM9KmyKV +aNDNyYiJipxTRTuKlt3MmwpwpB1pQKloQvPNGTSZHelGRSbEHOKY3NOY1EzHtQIjaoGAY81K5Gai +PJrSna5M9g+7xSoSDSEU4da9OOx4078wp6VFISoqQ5qJz1FWjOTICWzz0p6560mD+dOAORVMhEq5 +FPzUZ7Cg9KmxomNZ8HFN3En2prcnpQoxT0J6kgOaazEdDTvf2qMgce9CG9hu7BqRXqIjNNw3NXYy +5mSls9KPaminZ5NAhQRjNVpm4PNWC2PyqlcH9acVqOTtEozMck5qJH5GPWlcbj3606OI9+nbFdHQ +5upcU8CnnIFNjHQVI49fSsmWiFyB+NMwDzT2ANMC0FoevpinhjnA70BQalSMDGallDkG7FS4AFR4 +x2p+f0qGaRI2UmmCM59asKMkUpVQKLjkivsxS4FPbPFRsaoyEJGKaWFNLdQKauTwaC0Sj5jipQo/ +xpEXipAQOKQxmBg1GxwcA1I2aiZe/NUjFscrBaf5lV+eaaC3PtTsCdidmzSioU561Nxilaw73FGe +1B4NOXGBTWFIp7DX6cUxSOtOfHaomBqjNk6uKazBhVbJ7npS7qOUfNoPB7dKBn600EGnCgFqxG4N +QsRuK+gzUx96qSkq28duv0pobsKxNPDdqFUEA04p+FNsSWgKxzTxnOaYMZqTApDQvY1G/Rj+H504 +0xhwBmkU9AXr7VJ5bNjiiIA8elW1HFJuw1G5AIyKeM81KQMVHgDNF7ktWHnp15qJz2pScCoXPp1p +JARykdKpzemanfnmqkzACtIktXKVxKEDDPSsSWXzJBg49avXsq4x61mqDvBrpitDGT5S/bxgjkVf +hjHAqvahWxzWgqcAAcZqHoW5J6oswRIAMVaRPyqGFR1q1GvGKykxx3F24xUmCRmlApO1SORJH0xm +pcjHPeqykjHpSSy8dcVLVzSMkkJOyquRWez5zUk8vHXiqYbcf51rFGVRpkm85K+velAKn9aEAYg1 +LtDECmxIjwSeKVQRzUwQ5xQUA4pXGosavBHYUpBpQnPrTmx0pNjiQ885605EAOTQcqfrS5xTF1LC +MKU4zUKHnrUvtUWL5iZMHp6VKn8qrqMVOp4qWOO4rYqvN3NTsRjFVpCAMelERyKjkg09FOc0HnpT +owBz61bFsWByOaXIpADilOe1QipbDOAKjPLcHvUrdKaig5qrmWrYKp4NPNSrHxUbgjrSTLcbD0xj +FSAe9V1Y44qZCc0mgi9bDj70wjtTyPxqNj14pIchu4A0hlOMUx8kio9mTk1diE7Mm35NJjB+tIEP +BxQMg/jQFyRcj25qZcnrUeB61IPepZcBjDHWomNTNz1qE+3NCFJakiEZH0qXIqsrYyaZ5jE8UOJS +nZE7AZzSZHrUZbIxSpj8KfQlsfux3qFzjpT2Ge9RtipLewgbIpMmomwoJ9xTx0De1Fir6WHHr+FV +pCR9asHkVWcZzQge5C5NIpycZ5pSvbrTcYPTpVrYl7k23jnmpY+MfnUCPk4qxE3anZktpu6J8ZAx +0qPAPFOWkbORSXYcldXK7krx14wKbECRkn5gcVKyKxJp0UYJI9Ku+hkk2x4Bxz0p6kEEU/YMU3bt +P9Ki9y+TlBcjrUExIVv0qdu5NVrljsOMe9LdlLY47WCG3Z55NYaMSQuNo61r6ocs5+tY0anJyw4/ +WuuC0IlsX4VIAJGDzWjCpyCeB1qrbKMZPPFXYl4Zep681d9DimrTLCSbevB7VqW7bgO9ZBhUgDJG +OTWpajAUe1RJKw4t7M1ICNwz+lXumCKoRZwDV5clRXLI64Me5wB9alj4P1quWIB71NDnGa4MXH3b +nsYKepcQbqlAqBWH5VKpz9K8vS56hLgmnjgVGrU7PNSA/wBKMc8UClBp6XEMP0pjGpcA0x8c+lJj +KshqB8kA1bZQc1AykAmosWmVJNpqo4OSR2q86nkVUfIOPzqWkVcjBxzT+vNMPTNKhIFaR00JktBj +hs8GqEq5cVovzxWfc5DcfSn9owqfCR/5FOUnke1N4wM9e1M3gEjvWk9EYUleRYV/kJY4Hf2rhfEL +Aymu0cZQ46AVweuODOfY1jQT9odlS3IzHGMnPv09aTPH0zSE80djXpnntjVO1g2AcEHBpCckmiiq +IAUUuaSgAPJJ6ZooooAWkoooAUggkHgikopyBScMcDnmgBtOFSPEY1zlGBIwyn+nX8xSMkkeVfKM +MgqeuaQDc5NHGKbnvS5zQA9SR3xnrS7gTz+NN7GjPYUwFzzSH3pD7Uv0/CkMbxTgT9KD69KbkUAP +5PNITikzSdaAAYpx4JIGBzwabS80AKPr+FAAP4UnNL0FAD3TYQD1wCfxqMilJzzSHGDRcBKTNKTR +kYPH40AJ1opVYqcgDPPUZ/nSdKBBnjFBxnjJGeM+lFJQAv8AWnhIzFv8weZvC+Xg9Mdc9KZQKBi0 +vekzzSikMTP86BgUppKADsPUGjnp3oHvRTAXPUeuKUU3qc04daQDu4rRmC/Ysp2skDfXzjVAqQdp +HI9avTIUtXDdrNeR/wBdaED2PrpOteL+K2/4m+oDn/Xyfzr2lK8V8Wjdq2o/9fMn8658X/C+f+Z1 +YL42c8cEjPcikLdxTecc9aY2T/WvIZ6g2XBz781GAM+2KGLkDimg5zj8qpaIZNyCO2B0pSyk7f1p +uQcHpTefvdMVFk0Mkyc4pwwfqaj54zx6U8AEcdelD2GhRnjOKcmRnNM5A+lP25HBxUppbgxxOMBe +/FPFNHXtxUi5J4/OlJ9BIcu0YB5+tWN2feq7LznvTlbgD86aJZWvjgN61zzZEh9q3b4rg8VhMR5h +z61109gitS3CGyMHtWgrYQ9+KzoTxjvV8fcz7VL+IcihKRvYmqkuc+3NWZc7iM96qSud/wCYrWG4 +maVgMkDrk1ry4VOnJrJ00gFfbmtScnb1rmlbndy5EMI/eZ962oTkAfjWFbkmTPoa24i2FrGd+a5L +2LYU456UjZHFKpOOe/SkOOaNiCNs5zTCeTxT3wfyqJjxx35zSaGh3H1o2+lMz0IOfWnZoQCDd0xi +pVGR7HrUYPpUq57fjR1AkwAPwqIkduvep8fLnv2qq2Rk9KaEKc4P6U0KTz3pqn1p/qRTdgG9CKdj +8+1NIyc4p3GQO4qehRIBTwiAEsT04pq5B5p2Rz607K5LIn6/pUZH6d6eSenpzQNvUDmo3GiNiQef +Wo2djnPHFTFTk5FRsnBz+FUtNBixlitOAPao13AjmpuOMU1JAxHIHA9DmoiW/DFSsB3qPljj0pcw +Au0kDpVqPgVXjXHNW1OABilfXUTRUvc+W2OmK5Odv3pFdbfuAh9MVyVxt8w/U5rrp7BTWpLB1H1r +Sk5iOOeOKzoMbxitNwRH17UJ6jkjBlU7mpgGenrUs5w7CmDOfc1rfQC3aLlh/Wtwxgx49qx7QEso +9+K3wP3I7cVzt+/cJ7HM3ayRyZFb2i6i64VjjoOazLpAXYU+0UqQR1rS90Q1pY76CdXA55q/Gw4F +crZTsoXNbcFweDmtU9DmcTWBGKbj1pkMgYCpTjrTWpD0EbBH0qlcR55HNWC/PtTH/OrjLUuOhhXC +NmsySBic7c+tdBcIAc1X8oN24q+VNnVCWhjwI0bDHrmtqG9n2hc9KYLZcHAqxDa8jI4xU8lncqXK +9x4mmkwc8VKkLPyanigVRz61KEAya0ijNyXQhFuDyatRQouM0hbgYpvm4OKZDbZeBUVG8g6VUabj +rTEkLEim2RyFsEdamQAVBGM4qyvFQ2RJjvl7UDk03NKBzSuRYeo60GnL0pMUmIaQOKM4oIpjc0AB +ao2PFI6sBSEYFANEbGmBsmhsjio1OW5rWktTKq7RLA560v3aYrH8Kk616S2PIe4gPem4Vs0hPFND +HmqIW411xQo70NluTSjpVdCWk2L0FN6jilOcEU3vSK8hpB4oHHWn5AHvTCTTE1YcaAmetJkcCpFK +0ArMjKgDpUZqZiKiABJqkZySvoC44pcCkIFKwGMmgUUROVwR+FUpiKsyEfrVORsnOa0ijOb1I9mT +9amVaZG3Oe1WTjGapg0rDeB0FKWIBpAwpCe/tSJQwkUqj5R600n6VLGBjPoKTNEOiX1qztAqFSAc +96f5naoZcbdRrHB46U4MKjLdTTd2KLDvYsqyjNNaT0qv5h5FISxFPlJchzPzTWIpvPekPPFNghpG +4nHapY19aiB5qeM+tIGWE9SaGx096RcDpSMRmktwew1j6Ug5FOwKcAKohasiIxUZUDNW8LUDhaSZ +UoqwwY7CpBTF71MMMKbJjuNbGBQcdT6UpxTDSQ5DetDLmjmpARimJK5AVAzUZA6VYkYDPaq/cGmm +EopC4GBilHy9aCeKQtmmCGs45FM+Umhs8+9N3DHFOwt2PUCMgdFP6VISKhLBgQaQHIGetTYvm0H8 +A/jTic9PSo+nNJnpTEiXdx71FuOR9ad2zSqqnPtQgkSxsuRnr0q0rCqmwk5p4JHFS1cFKxYJ61Ga +Tk8UEgjAoHe4xj2qtIxzUkjAVSlkYnGeDVxRDY92G047Csu5m6jP1qxJLsBOe1ZFyzMfqK1hEhzK +ksu5hjnmnW8fcjkmpobZj26c1eht1PB61rdI55XbuEEZ6jOK0IkOPxp0VuFAI746VYWPHBrGUrmq +ixY0GOtWkGajQDpUycGs5M0joP5X6Uw57VIehIqHP3vpUoqRG7hRzVOaZVySalmJ2kd6zZct8pIr +aMTGUmmO8zeSO2akjj9u9QRRnOe2OK0baNSBmiTtsXBX3HKmAO3FSKoODjpU2xRimsUUDFZ3uW9G +OUKKSXZjNRtIB3qu8rHikkPm0Hh+SKaSWbrTVPf8KUdRVshAeWz1o2kmnFe9SoM4pXC12JGh5p5O +PfiplRQKZIBn6VN7svkshUYGplBxUCDmrKjFSxxGEdc1A/U571YbNV5Np60Ib3Iflyacq/hSZUcU +9Rnj0pg9idVPWhlpAGFSEDbUj3RCeBTU4/KpWxzmoOR9KszvYtCTC89ajY5znmoiWwDmkG/NJRsU +5OxIvpUyg8VCg9fWphuIFDEmPyOahbPNSYP1pjDtUouWqICwB561KgBFMZFFPUjpVPYiO+pMFUio +ZcduKcXAwfamOwIz7UluXKzQinI5qVcMMGoV5wBUi+lNkx0Y+RDt3gjrgjvURHHFSHPFN5pIckQn +PAFASnkZbn8KkVCad7EpXISpxxSLuqwVUCoD7UXuPlaFJGAaYSKd1/KmEDdj2pFkDKGOfQdKkQYB +B59KRwe340q5xyKBtagcgc1Ukbk4q2d2KpzFR+BoQMaCSaVgeCaaHbg1Lw3WqREiIKVb3NTrkEH1 +xSBef51Iy8A1VyeVkq8cmlbnPNMXkDmpByKguP8AKM4weKRDg07GCRQV5BpkPRlhZFxg0xyDyKrS +F1I54PSnITjJ70cthudyVjwKp3JwjGrPXk+tU73iJvehb2KWxyGpE5Ydu9Y6j5+BWlqmSeO4rOiy +Wz1rsgtDOcro1bMB155wa0YYxuP5c1nWYO7PbOK1AvzY7daTepyy96NxYgcgMck1uWkaNhfQVioM +NnoCK0LWbA+lZzTaNaMop6mxsUU+FyCQaorcbj1ORVpSdyn1rFp9TVyTehOT1Gc1LCSRz2qJs49q +kiIzzXJiFeJ6GDlaRYDc1IGHT9ahyDSE7QTXiy3ue9HVFtGwAeoHWplYE5rOilJOB2q4hHHrUp2Q +NFlafg9ajRs1KTjrVIhjdvemuPWpDimMpIFD0AhZcjPpULc/SrJHUd6hZcZqWikV3QEZFUZUIPSr +6scbT1HBprqHB9alWuVqjNYDpSDC8etTSLg4qMAZGaoAbpzVC5QE1okDknkYrPuw2OKcn3M5R0KD +ElqFVepoIIJJpdrUTlZGVGN5aj5HXynA64Nef6z/AK5/Wu8mGIm+h6VwWrH983+9xSw38Q3rL3DL +BwTnHINO4KH1549qaeTT2yAw9O9ekecQ8UlKaOMH145pkiDtSnHOOlJSnHamAmOlFKSc5NJQAUpB +GfaljkeJ0kQ4ZGDL9RT7ieW6nmuJSDJNI0jkDuxyeKQEVL1OBSUUwHAntUk0jOTlixbDsT1JqLOM +Y9OaCaQCUtJRTAdk9KVsZ4pBkkAd6Cc80gH4YbSR1GQfUUh7U33pc8deaBgeaSnD0pDnpQA2lyaM +ZoxQAcDmnfNjJHHam84/GgnpQAvGaQ/ypPWlyQD70AFJRRyaYg5o5oopAJS0UUwCkopcHANACUtF +FIYtKBSDrTuaQ0NNFKTmkoAM0UvvS7DtDfwkkUAIOmacB69KAM9PWnBRg5oGOHBGeRWjeMGgcqAF +FjEqgdh5lZ6Dt174rSvBE1sVifcFsYs5/vGTJpLcTdkfWqV4p4sz/auogHGLmT+de1R9a8U8VtnV +tQ/6+Zc/nWGK/h/M6sH8bOeOKRsH8aa3GaM8Z/nXktM9QhcYPA61EME8cVK5PPNQrjv15p9Bon3Y +HI60Nnp2pvp3pPUZNSMcMk4NSj5Rg9u9QL2xUnUgZpNDJAR0qRfXmohjdxT0JAIPAqGA4cdexpwH +G7FRsSwwKerA/KPWlYRMpXHNOzwSOmOtNHUdxStjHt6VpFdyWUrzG0msMgbyeorauzxWJn5zx3Jr +pp7DjuW4hyK0MLsx1xVCIDirnIj6cY4NQ9xsz5cbjgZ54NVJQN2atyEljj1qpKuWz6Dmt4bkyNLT +OGX3rUuAdvHNZemjpk1qXG1VxmueafMypEUCFZCr8MDgj3rYjx26YrFt85FbMP3awn8QnsWkf5Rm +gkEEVGpHH1p1GljMQ8g0xs8cZxTsY6fU0pK4P+cVNrlXsQe1PCjBzTD94H86fvGB2ouNgoweOanV +s4yOtQZA4Hepo93U0xEpYbR7VVk5OanmPGB39KqvuJHT3pIS7iEdB+dPzuGRxzTAV6U/Izireoxe +wFOxzTMleKf29wamwbEgAPXvQcrmm5z0pSeM0tbAMLDtSEjr3FICM5oZuaS0GPyG/KmMw57D0qPe +O3FNLDvSHYdx2/GlyQcCmfQ9OaA+BiiwEm485780Lg/X1qPdxyenanIxPNVFaCZIuRz2zVhe9Vx6 +GplJ6VK1YmV9QYCPpXJzn527cmuovziM1y8vLnPrXZHccESWoywxzzWw6sIycc4rLtQQ4xWw5Uw4 +74qlbmFI5u4wHIOQKRAM59aW5++fTOaRM5FW9hmharyPrW9z5J78VhWudy9xWwWKx5Gelcr+IJbG +ZcDLHHrVi0VSPfPSq8pyc4q1Zc4460Ju42tDTX5VAFWoLjadpNVV24PvUMhKkEcV0pXRzM6W3uFb +pV5JgRXK2d4d2CenFbdvOG9KSdiJIvORnNMLZGKbktRnFaruJEUq7uBVYZXj3qy2ccVH3rRMuDsK +CO/GanjdarspahQwxVXXQ10Zob1A96aZgBxVf94fypvzYqrk2RKZWajOcZpqpIfpUqwtSbByQxQz +HAFWYYz3FPii2jJqYYHQVF2Zylceo7CnqDxmkFPwaNTJgFFPxxSbcU7PajZEsQdacOab3py8UgYF +KTbzUlNPFPoTchcVA5xU7nNVnNFhleTIzTUOTmkkbmlj7100E7mFf4CwpHSnE8VGoPX0oYmu9I8l +sYzEcUwE/nQc5NA5xmrMyUHApelNGOlBOBSKQ1jUecfjQzZyaj+bPrzVWIbJAS1OxgUgU8UHpSGM +L808P6dqgYcnFKMrnNXymfMyVnzScfjTd9PGetAr3FwabIeOKlU8VBKaS3KeiKkzYziqUjc8VZmI +GarFNxziuiJzvUWEsTyat9hUEKEZz1NTjNJiQcCmZ3U5qbgCkXFCBcGpxwKYoOen41L0NQzToN34 +4I6UnXBFIQW6UDd0pDWwrYxz3pMdPSpAo4zTiBjFK5ViHApRt6UHg0hPaqIGvkYqJiPxpxJNMVSc +0x7EiJmrCqajjGMelWhjFS2CGgEc0hyeRTicUdj60ITG8YpuT1NLzzmo3L+lOxNyTdUTcnAo64pe +aLDuIM5xUw245qMDOM1IUwuaGOKEJWmOcA0bqjJz1ppENibsfWnb/wAKYy9SBUfzA07XBMkdw3FN +yBxUeck9qeqg4zTsF7jjTSaccDGKiPGc9aSGxjNnjHNMCnGAPzqVRkmpNuRxTvYaiV+maBnNSEAd +qFHNFxctmHOMHvSqpP0oVc8U8KfWkVshMZIqVYuRSAVZiTOKTYkriBCBimOuPSrRXAqCTGKlMuUb +IiLYqMuc+lBOKgZ+tVYgbK/UGs92OfrViVxtqiz8+hzitYIzm7CShmXFRLaM3Jq4qsccVaij4wap +ysTGN2UorfHWrkduD2zzUwiHAx+FTRgA1LkChrZjoogBxwKeVp60OwPFZX1OmysRIDmpgAMUwMM0 +4mhmVgJxVeVhzipGP5VUmkAGKqKHPYikfOaqyBSc980rvhh/OkT5sd8mtdjJWe4+NT1q/ACMdqgh +SrajgVEmaxSuSlhiq0pFTHpVZm5qUOdmxr5INQEbT61aABFRlQTTTFJaBH708jBFNwOKeuM4PNDF +FCk9qdGxA570w56+lIC1FhX1LfndqYTuOKgz061OoyB2qWrFczZLHjFTA9/ao1xipOoqWVHcGyRV +aXCirDtiq8oLAUkVLcqNzk9qmQ8fjTdnJzTlyB7VZD2LG7tS5POKRRkA0tSyojcjpmoz6VJtJzmk +waojUEjzwalEXtT1A4qU7ccc1DZpGCsVNpBp6jrTnHWmqQeKdyWrEo6ZFNdRzThjHWmvmpNN0QEd +TULM3Y1NJgVDgkketaIwY1XPQ+tOzT1jHSnGPjAouirOxChPFTgnI+lR7MZqVeKBajuTTSSKkGMU +w4NSi5bDfTvUyuOnpUJGOlMZyBn1ptXFF2J3YHNV85NJ5hNN79aErA5XHZBppb5sUDI4qOQkc1Jq +hec0oNQ7zwD3p6noadht3Y98cVWmQ98YqdmNQyHIwaSHZEagU8ZyaYjMGwRxU6lelXsZuzQkZ2nB +5qdipH4VCeM5pC2Bii1xc2lhwYK2KlVsdfpVbOc+vapoyD16ihk36kpzjI/Om8HI704Ht2oPHJoQ +5a6kWwNwT24p4XgUg64qZU3DOaGxRhcqvySPWql7gwnnoKvuvNULzhD9KFqymrI4nUOZDz0Jqmvy +nNaV8uHYjqTWeMb8e9dsbGOnLqaNsRkEYPNaikkcccc1kWzbfTGRWvb5YdMZqZ6MxprmTQ/dJtyf +arMMgCnjkDioUQ5OKmi+Y4qWTG6LMJkyOM1rRfMozx0qlaR4IHtWoIiBWM2dMIu1xofPHpTVch8H +pmmsjK3tRwSD6GsZxujooyakXhzg9vSmuRg0I3HHpUczgA5rway5Wz6ai+aKIYpMMcHvWpCckGuZ +WfbNye9b1rIGHB4rGJrNGipxUgNQpUuRVGRJkYox0waalP5zgU3cRE4Gagck81aYZFV5EP4UpIpF +RuoIpN5HBpXBU8c1ExJXNZ2LsRSsd3FQ55/WpJGOcCmA/nTDYfn5eetVJ1y1XccCoLhM4I603Imx +mSqqsKZgZAzgE81aZFO7PXNVnGGwemKU3fQzpwsyG4/1TH2zXn+qMDM31ru7ziJjnGK8/wBQYmZj +n+I1WET5myq7tApDA5Bx1FKW+XA9TTTuAHbPIpDkcHrmvSPOuJSnaSdox6ChFZzhRk4Jx9KMNkkZ +45JHamIaKWgY/UUGgQlFKACDyBgdD3oNMBKXBGM9+lBxk46UnpQAc0UvrSUAFFFLjOfagBKWkpcG +gBSCACehGRSHGTS469v60hoAKKVVLFVXqTik5NACig4pPrRSAXNHWkOc0DPagYUUZJpRTASkpT60 +lIQtFBooADjJxyO1JS0UAFJS0UAGKKSlpgKQAOcg8HHtQOnvSUvNIYoPBpfXNNFOwe9IpCUmKWlw +KBBgcEUY4zSjpSgcdqBigYwKDgnn2o64peaAAHnnNaEwVbQled1kufr5prPA3Dj8au3AP2RiOF8h +Bjv/AKw0WFLY+u468S8VAnV9Q9PtEv8AM17aleJeKMDVtRBPP2mX+Zrmxf8AD+Z1YP42c3IpBx2p +gG4HGTT2PzHimbsZxXmM9Mik+9we1Rjnj3pZOnvUYOTTsO9ifOBigZOaap3cfrUikYxUPQoVfl6i +nqOAajwp65p67sDrjNJgh5PzUBsGo8jp+OaCcDA60uUdyXcM/linKR/CKrhwMZ9OfapVKnGMilyi +uW13ZpXOeP1pqk4GfxpxBANNeZDZn3ZwCDWTwH4Fal4Tzx9KygQWJPBNdNPYuO5biwOtaDHbHz6V +nwlcjHP1q87fuz71FveCTMx8B8VWlwWweasvwWz1qpISCSeeK3gtSWadgcYFX5TlR7Vn2WSAe1XZ +Sox1Nc8leZUthbbkjJ71rpxj6Vk2xGfTmtONsDaetYzVpEvYnVvzqYcA4qFODnFTBlApEDWPfFRc +g8/nTz39OKYSM8880JXQ0L83pmkCjvSsSBxTMnqe1RpuUOVSMA1OhwPXNVt2OTzinpIRz0zVITJX +YjI9jVVmHPNSu3HNQOABuWlZWBC9cmpFIz61D1xxSxlup5p7FFkDvSnOeKRSxHtSgjBPWh6bEijg +Hp700scZpSQfYmjaMeopPQCJcnJPvS4B75obII9KZk8duaTYwbNIcHFK3frUbbsih2Qx46H0FLzj +mkUFiFyFz1J7U51VWK5BHTI6GjpdB1IST+PNPj3Cg9cUvzcdqOgyyvQDNSYA571BHwRVkfMDRHWR +EjN1EnYa5tmO8j3rpdRHyn0rmScsSPWuxDpluA4Ycc5q/MwEX4VQtgNwq7cjMfFJfEEjAnOWPbnj +FOjI4OcUsy5Jz70yNefXFbPYDVtDllBrZdR5Y57VjWJww6VsvnyxzXH9thJaIyJceYavWCjjNUJf +vc+taFivAPvVJjexp45GKrTgE/hVrJxnpUOc8mujmsjnsUJUnjAZfyq/puoBjtY/MPWlKK3HbFU5 +LMq+5OD3olFNXJv3Orimzj3qwMN061z9jcuAA55rYhkGBzRBu9iWiYLikaMgZqVCOB1qbaCP6Von +cTdiiCRx71Mig094ge1IkZGaodyURrwRT0hGaapIAzU0bUcwtRwQDAoCg07cOKXjORTTEIAeRUiq +aRRzkVIvNITYoBFSheKAKWrIAYpDgUoBNBBptaCE60oz+FLilqbaDEzQTxSA012wKaJIZWAqpIxw +TU0zjk5qjLJ70upaRGx564qaIniqbPk81agJ2g12UEcmKfulsdKY2e1OIOMimFq7UeWxuDk5pAM8 +0/qM0KBTJaE5FMJLVMcU1QM0XCxF5ee3elVMVYIXHWmjGeKLg0hu3im4qTOM01Tk+1AWI2iPUVEy +449KuMwFV2OTVxbM5xSIx04p6570gxninjPemyIq7BmAFVZHB6dqllYGqzMKcUKb6ETYY809IRj6 +0wdTU6MMVbFG3Uj27eBSZPanswNKAMD2oJa10I8FfxpBgnHbNK2frQv0oKRKq0rgYz3oXtSOc1HU +0S0GhehpxGKVDxSN1pdStLBuHQ07IxUJyfamlj61VjO9x7kHFNyKZnNBNDHFCHn2pyLnimDBOKmR +SKAkxwU4qZMjg0AcZx2owc8etINhSCaRetPyvQ0u0HmgVrjdmaa6nI9qtBOKjZR2qeYvkVimcA05 +e1DgE0IPWrMraj8YphJz9KlxTH4pFNWRGcVGSDkU8gVGAKszJF9KjYEdqeuMU1j6cUjTQrnIbpUh +JAFJ9etIeaohDj04qIketPzxUTHJpDbH7iKUuB3qEk54ppLD3qrDUrInBDHmnDHao1yRxUqqetSx +rUePp1pwXOKFUkDHpUgHFSEhoAqwjbcVDjmgtxQ9QTsWGlBGM1Vdufzphc81GXyDQo2G5XEkk9Kq +yMaV2PNVnb8a1SM2yOV+3rUIOTzUjFmIowuckYzWiM2rliP9KtxD+dVohke2auRDH4VnIunuPxgc +9abkbqkznrUZ28/pUoJbji/GKQODxUbMAMGhBnmnYVyZQd3t61JuGKhDY/Chn4pWC4kj4FUp9vXP +vU7n8qpynJJBq4oc9iuw3Nn8KsRRtjNJEm4561orEAtOUrEwhoQwjHfrVpWNQbewqRc1DNI6Mex4 +zVZzz2qwcAHNUpN2SPrREc9xwkC04uvy4HNVRuz+NTRgbhVNEc7JwASKftGeKaMDmn9qgpLQb65p +FUmlHWpYlobsKKuwSHpUhXFThVC1G5AFQpMuUUhyg4p4yQBTEJqTOcY60mEdyNwcHNQOfSrLg496 +ruKEVLcjAFOO3p600Fec0KymqDSxMgGKfjBqMMB+NP69+tJiiITg8Um3vTiCB9aYTtFCJluSK4Xr +TjMoqvu4pMbjTaGmyRpAefWk3AYpjA5APGDQOtFhXJkPU08txTAfQ07A61JcdrELgGmDr+NSnGTU +ZHTirRn1J0wOnpSkg9Kg37elL5hPAqWi1MVsZxSrzkH0pm716ilU0yb3JARikPpilHWlbpmpRb2I +m3Y5qM809t3Smquasz3Yw8dBSHmp9vBJqAnaeaVyuVrccpHFQSEZwPWpXIPC1Aec9iKSNOggOeoq +ZT8uMVHtGKkVume1DHHVkMhx14qBpfXmp5MNVORecr1FOKFKRLGdxFTgnPJxiqsQJwc/hVpBu61T +M46sf16c1Eyk59fWp+lR7QD1oQPcao9BTlJzjFTwopPPSlkjUdDSuVy9RFGTkHHBPPtT2ORx7UxO +Rg8YqQfpSY47WIzgHNPD59sUwgHI6VE5IXjOadrkJ2Y+R+R9azr9sKfarAJbGao6g5xgelOC1sVN +vluczfAu+eR1rO3IGyD9K0rsckn6ms3bub0712o44stwlcgrnJ5Ircs3XoRjisSFSMNzgHGa17Rh +uBNKa0JhNxncunII44qVFwS3vTjg8+1LGNyn2rG+hpNWldF21cBhjtWsHBXOOa5+JirCtH7Q2AAw +zWc4a3NoVdLFxyCtVufwp8bkjmhhnPWs2tLFwlqTxNx/Oo7l1K46HpRG21cZ5qpqE4SMkV4mLVpH +0uE1ijIuZUW4GK3bGT5Qc1zCxSySF271sWVwUIjPWuNeZ3yWljpoJScZq2uD3rKifgZq9FJnFaan +M0WhnOafTFb0p+CaZDEOTTHAx6VNjigrnGfSiwXKDpzVdo8ZrTaMVA8fBqWi1Ix5VPWoQ3PpVudS +M1nMSr59azlpqaLU0IsEAd6JogF98VFC/cVLNJhRnmhPuS07mVMSH6VTdjknHSr0+CapOQM7qmWq +BfEUNQlxE3PauCvGDSNxyWGCK7bU/lhcnuDXDXJjOOofcd3pjtj9a6MItWzPEu0bFdVLkgY4BPJ9 +BSEUcZpK9A85io7I6upwykEH0IpM0DHOfwpQSAfcYoEJSU87cJjGcc4zxz3pp4JHWmAlFOYMpwfQ +H86bQAAE0UUcUALx3pKXBxntnFJQAUtJRSAKXJ7ZpKXimAUlKPzooASlpKWgBRjHvSUpoz06dKQC +liwUcDAxxTaKDQAUvFJRTAKSnZyAMDqefWkpAFFFFACUtHFFABSUtFABxRSUtABS0gpw68UDQACn +kjHQ5yMGmilPpSKEOKQU7FHHI9qAsFOBG0k5z2pgzSjv9KAHdevHNGKBjFKcdqAFGSFHoTV+ds2T +bRgC3jQn33k1nqRkcCr1w6vbP2HkxA/99mmhS2PrpK8P8VMG1fUfa5l/nXuKV4T4pDf2tqZ/6eZf +/Qq5sV/D+Z1YL42YbuD+FRsRg8U8jPXtTHGRgV5etz02QMfwpqkEgUkuQfSkXDHjtV9AViRccnOM +Gnj1PrSKABkdTTd2OKyeuxZJlvwpQTjGelR7hjrS5J7/AEp20AfuB6noKQZPX2oGDV3TrB7+5SFW +AU43Mf4RSS1shNpK7KJ65qRM1Y1O1gtLqSGBmaNdpy3XkZqsnoKqpHlfKxRlzK6LSMxIwfpUjyFA +O/FQRkngeuadICVqY26iZVupYtkm5cllwpz90561jg5b2q/djA6VQjxu57CuqPwjgi3GcEfWrkjf +JjpxmqUZ6Zq0/wBz14xisnoymUmbJqs5BYZPNWWADH6VVfl62gQzTsew61cnINUbInP4dqtzMPrW +MtymLbPyBWxFn5ayLXG6tmMkjHHBJrCT1E9iZAfwFSgdQaiUnOKm7ZqfNEERXnHPpTcAH61N2OO9 +RMDknpgUvIdwO0Drmk2k49KaGORTslRnPFTqUxjDmnYxgnpjmmk9G9u1KG3AjHNUAj8jOfeoC3Bz +U7529OfSqwHXOCc8U0BKNuBT1UCo0HHPSpV3buKGgJVHGOmaaHGeac3Qn6ZqsT82e3Wl5CLOd2Mf +pR9PypgPGaduPBJ5oe9gEk9ag3Hj61OT0+lQsOPes7FIcG6gd6YwHAzS9PwowT9KYCKcdKcp5JJp ++3j2phZVptJoLgwGc5pR65qMvk4HHeljOePWnpawWLCgnNWkA2iq8ft0qcZAyPSphuTIy9VJCEH8 +65Z2IY10uqNlfwrmXVmJPoa7qfmEdjRsGBbmtOdk8ocDOKx7MPnFaUobYcd6W0tBy1RjzEbj+NRx +hmOM0+5GHzSR8GtHsBo2K/MoBz71tyKPKFYtkcOMVtS/cHuK438Y5GNL94j3rSsDtAU8g9RWfMVD +f55rRsMcYFV10CWxpbUwMHA9DSCNfU/lSoAcZ6U44BrZPUwY1VXPI49aXaO/Sl65NKD0+vem27Ek +Xl7GDAVct5egNQt6Co1LKeuTmnsK1zaikx71YSbms63fOMmr0frVJktE2/JxT8DnFMAz+VKAelUl +fURIMYpV4pgJ9KcFo31GSg8YNSqOlRrUyCmlclj1XNSKuKRBUgHvWiRDYozS7c0DinCqIADFLgUu +aCKoQ3GKaakJ9ajY0mNDOhqKUjmpHYCq0jjBpDK0rDBrOmbB69KtXDjJ5rKuJCAc9aS1KvYDMCcZ +rUtDwPpXNC4BkCg966OzJ2qfau6jHqcGLkXW6YqFjUjEmoic11xPNluODHpT17VEM5znvUwPHFDE +gOMYqOnsO1RktQkDYu6l3etRjJ60/AGTT0JuxGY9aQOOeaaxPPtUXOQc00gbJ2fjNM3Zpp54FKCO +9NENscByDTmJApqg0SEijqNaIryk1UdvmAHerMvSqZUseK1ijCTbF8zBp4fOOetNEXFO2harQWo7 +PNPVs0wY4pwGKllRA0i570pHfNN5zgGkWPzg5NL1pCM+1SKhzUstaCjgUm3v6U8ikPApDbuRsAeK +rtn1qaQntUXXk1SJcRmTzTTu7VJjOaUD1FMHoIi9Ksxr3piKMYqdFwOKTEtSUYpOP1pQD3prAjpU +IqTGnGafnFRYIPNA3H8KqxncnEmKGbPSoOpp2GFKxXMMc9x1poPtTsdaQKeaolbjg/tTWwelGABT +XJxxSRUthjHJAzTGB60HO6hvarM9yLzWHApGkOf0pGA600D0qtA1RIOnPWmnOPpTuMe9NJPakWNJ +yMUm0kdaDyeKUE5/CgEBUikCdM0rNnvTl5OOtGoOw6NBU+3I4piLipwOwqWUthE4GKfgcGlAFGDk +CkT1EbtTHHH0qbav5VHLtxxSuVyFV8jFQSyFVOeMU+ZwDWfPKTnJrWKuZy0Eln/WoS3cVC0m7Ip6 +k4544rVKxnz3Y9G59TU64bA/KqZYL3qxG54H0oaBSRbjBANWEY8ZqJMMMjj2qZegrJlwWo5mxxUR +dhinuOeKibNCCe4v38H3qQA4pka8jFWgh60N2HCF0QMxzTC4p84Aqoxx+FNakPQV5V9aqSEZOMc0 +rMx7Zzim7TmrWg27xLVr096ubiBg1Ti4+tTbycZqGtRxlpYdnBJqRGPfioASWIqYKcZpMcXqOdgR +j8KrbeSKmc4BzUIfcc0LYqWrEERBycUvGcU7IxTWIz9KZPKrEvan9gB1qNAT0p6+lSVHYQ8dKkRi +vWmbcnmm4OfoaLXIvYteYSOKTcWHPFRD1xTxnODStYpyuSo1TKfX86hVcVIOBjOeallR3FP51Ec1 +IW4wKhY0kORAy/MTQvBJNS4BIFOMYHUVVxJNkQOT171YXGKiAGalHAzSYR0YrDJBqKTpipOvJNRn +k8UIcyP296lUDFRDOfepQ2B9KbFGw5gD2qPvTjKDTRzzSQ5JdCT+H609emKQAEU8ZFJhEYV61GRi +psdxxUcnemmTJEWDS7BQvcdc1KB0pthGNyIjHWjuOetSsFzUIODxTTuDViZO4PapOMGokPSpM5GP +aoaNI7ELkdKQbR1okJxnFQMzD61VrkXsyd2/+tULc1H5nNLnJotYtyuAGf8AGk2jn1pxIXgGm7+a +jUtWQ4rgDmmjA/GgtkAAfjR6Uxqw11wCapkAMfpVyQngVXYYOacRSswC4xU8eec00jKg+vWljOKr +dGclZkg5pjLnmnrupSuOTRewPXUbG5HvinySjGO9R4P0yajdWosTzaEyNlvrVhcGqaDvVqM8jvQ0 +JNphIB9KrsOoq2wBquyn9aSLa1IDg9OgrOvNuG45rScDr9eKyrpiAR0qo7jeiszn7kZJz1qmoBYF +u/erlyGZi3OB1PtVUucbAMDIPv8AnXatjh0TLKxosZ4O/cpH65rRtR8qe2KoRO21lU/e4P8AOtGz +Kk85PFQ72FJxbsjSj5XBpqHaTyQPSkBYEDFPcEY96y62N/iimhysu8EdKuJGHOc4qgoOVPv1rWto ++9KTsTBXJYYxwBzT5Mg49atRwcZApssIA3Vg2mzp5GtSspxxWbqLKSFJxWoVxz61y/iieS2QMn51 +5mNhroe7l81yj2uIIVySOOoqtFqsUcyyDBwwOK4ufUrh9wLE5qFbyYNndXEsPJ7s73iYLQ9Zh1hb +kg4wPSta3ulavKtP1t49qsfSuvsNXjk288nFQ1KDsy0lJXR3MUg/CpwWPPYVjWtwWAwcZFa0LZFU +tTGSsWf8KQk4oFIappGY0kdajYginNkVEWxmoLM+8xWO5G78a1r1uMdqyeGfgVjK7ehvHYtW5Ax6 +UXL+np+VInHHTFNkBIpqwralRiPx71VlwAeec1cbjmqNxnrUSBLUytUceQw6DGK4dljabEj7FJ5b +GcfhXZ6ucQHPeuIm5c47murBrQwxWwxwm9ghLL2JGM0w8U9eeKQjtXeeewkjkiYpIpVhjINIu45V +Rktxik780AEkADJJwBQISl2tzweOT7UUEAEjOcHFMBKUknqc0lGTjHagBysoyCMgj9abRRQA4Fdj +DJ3blwO2Oc02iigApaSjikAo285/D2rQ0XSZ9ZvorKFgrPkkn0HWs7Bqe0vLuxmW4tZWilUEB1PI +zQwVguifOdTH5ewlNnpj+tQ06WWSaR5ZGLPIxZmPcnrTab30BBSUtBGMHjkUgFAz+vWkoooAXnAO +ODxmkoooAKKPwooGHHFGVJ6dqXA60maYCUc0UUCF5pKWjmkAoYBSNoJJGD6UlFJQAoxRQB744NKA +CcZA+tAAATwBnqfyopM+lKKBjs8CnA54pu4YHtQpoGONN5FOJUgcHdk5PbFN96QCgUuONxPem0oH +GR+NAxVzmndhTQMn+dOyRgjtigQfdJDc9eB61oSon2G6bIyIoD78t/IVnjAIJ5A5qxPMWgwva3VW +x/vk01qTJ2R9gpXhviZS2r6gAMn7TKAPX5q9ySvCvE0rrrF+ynDLdykH0w1c2K/hnXg/jZgN8uQc +jHBpOgwCKV3aRy7tlm5J96Zz1HPPNeY1Z6Hqboryrgk01BjvxTpASeRweeaUHGKp7Ah4JxtqNwep +5we1SjopI+lLtHT3zWd7MsgG4+v0qQZBweg7U4gZJ68Cm9MH3xRe4Img8kOpk5XuK37fUtOiZjHK +VjUr8pH3jjnA5rnOn/1qFYHt1rSnUcNjOdNT3Jbh5J5Wlc/M5yce1NUnNLngDtTkIBAqJPm1ZSsl +YkT1xT2yQc9MUKCKeckfSpSEzLvT8p6VmoCSSe/rWlfdDWdEctwveumCtEqBYAyy+gq10T1JqsnB +7VbLfJ9aiW4FNxzkdKqvyeCc1bc9veqsmMj0ya0gJ7mhYjp+Aqe4BAYnjmobD+VT3RTBGe2ay+2O +QlngMD1rcjOQCBzWLZ7TjsR3rZjwBnPJrKavKwnsSbsVKGUKDVYt1B5Jp6nAzUNkW0Jd2Rx2qNif +WnA8Z7UzBJ/rSuhoMhRjv60FuOaQkE/SmM2KFe4xwboO2aUbc5qAv83WnKxbpQx2JmIPfJFQnd1P +FKGOBnio3dc471I7D06euTUyngEkdarjAyRUiseAatJCZMzZHvURGScdacMHtSgHnNTsAgYjigMe +OlIOCaVuOmaT20GPXnr0pvrnmgHOM8UpIxgfnSihMYcUBsMBjmmlsn2xT8L170rdBjy+FFQltx7U +rdse9RkkH1FX0EhWJ79RTkcjk9arsx5p0RLdafUfQvRt69sVYLfLxVWN1+6auR7QPY0qcfe1Im9D +F1HkEnrWCF+brnnmul1UKEPQGuc4BJ9660uVDpu6NSwijY4FX7qKOOPjuKzLF8OBWhdyZjp03Z6k +zTvoc7c7i5A4FNiye/enTDL01FGapu5aNGzPzr19hWzLzGMVk2Qw/HStaTGwfSuV7jkY8ud5rT08 +AgH8qz5GGT9a0tPAxjpmp7WB7GkMAfSmF85PpUnGDmovpW8e5gAdvwqRWUVGDjjrTu9V01JY4sTQ +AoNKOmSKY+R0o5eoXJ0l2sBmtSGRWA5rCBOQRVyCYggZqupLVzbU5qVMEVTik3Dg1ZicZ6VRBMF4 +4pACKcCvWg4NVELj1I5qZAMDmq4GOlTp2qkwZOtTCoFqYYxVrUzYvSgHmjimE5qhEm4UpYVDmjca +QWHM3NML9aaz1E8mPpSuOwskgqnNMMECnSSAdazLidVySaPMpEdxORWFeXuCRmnX98EByelcvd3r +uxwacFdiZt2Lma4T6121omFWuB0AtJMpNegW2Qq16NM8zF7osEZBqDBzU/IpOM81ujhauxgHQ1Iu +efSkPFL0H1oFazA5NN2c08ZPFSbVxmlexSjcqkEEA0pxjFOcDNMweKdyeXUZt5pGQflVhY+MUjov +TvTTFKOhV2kc07PNSFBimAbf61ZmlqOzge9RMSc0526Y/Gq7vTihTlbQjdjkinJHmmHBqRWwKt7E +RtfUftABqBiKkZ6gJ3HFCHNroP4xxRnAzTRwKGJxxQJC7silAyeKiJxUkZzSZaJkXtUvFKoxTJDj +pWe5o1YQt1HaoyQRTGYjmot1XYgczYph5IPvSNg03PQCmCZOuB+NOXGRUAJyAKnXpzRYlyuTooqd +RioosVL0z71DZcV1EOaM9qAfWj+KgT1E2A4pwjPanLjOKm2gClcpQuVfL55oIyalcUzaO1NMhxsN +C9TRs79qmUDHFBANK44oqMDmo2wKnkwM1VlNWiJMYW5xQD+WKjZgBk9aj87Ax3qmgi0SuB0qPafw +pNxJFPBwMmgHqwJ6CmM2OOlPyKZ1OKaBkeT2puCKmKDtSbMjkU7hYQA8VYiTBzUaLirKqB0qWwSJ +FAIxUmAKSMAdafUM0Ww3gUwmlb86gkfH5U0jNslMmBjPaoHk6gmoHlx3qB5D6+9VyjUxs75GKoOQ +cgk+1SyOTnNRYU8d61SsZyuyDac889ak7UMMHmlwWAqzK1gVOQc85qdQMnFOjQdhUwjIPFS2VyNE +sYOOKsICetRJgfjU8eeQBWcjWGjGyKVqEk+nFWZMHrULjnpQhT3FiIzntVjzRiqh+Vah85h+FPlu +JTa0JrmUAjJ4qi8gINE7s2SeAagyTxirjHQzlO7JNzN+NTInIpkMeavxxqBz0pSZp9kiEYUAg5qQ +Rjk9+1SqqEmn8AVDY4xuQBcGn7xiopJMEgH2qLLcEUWvuO1mPkYN+dQZ5p+Dzn1qMjOT0qkSx+8Y +xTkHIJpioOMVICooE2yZSBxUijJ4piYI5qcADrUM0inYbtHJpVUE80N3Ap0fTNIFvqSpCMZzQYwK +mVhtpjHrUXZo4pIjQdafyPxpnQ09eetNkrcQ/WonGKkYYzUDk9evahFSY5CBmpGKsKr5FNLtnrTt +cFLQlJycU4YwBUAPepFagnQn9h0qNhzSq+T1oOec1Jb1RGxwKY2SOtPNA7A/hVmdrsjUHPNSAZ9h +Twg445pWUUr6jsxyZwKmGTUKH9KlTGMVLCO4My1DJjFSPx/WoXamhzIfMKtjvUokGAR171XYHNIc +9KtoiMrE/mbvpSYOfamIG9KlxxUjbHgdBUmMdKjBAAqRfrSY4siYdc1BLz+FWGA6modgc5poGm9E +V9uM+9NXIPNWXQdqh2H9adylFi59+tRAkE81IwApgqUaD1zjNISB19KFzTTkk5/CkhuyQ3ORmoy2 +Dg9Kdzg/Wo2+bgVdjJsespBPp2p6tnnt1qFF9eanAOB/IVWhm3cnUZqQgnk1FGc+xqcH8cCoe5pF +9CHqaAqk4JqUqtM4U5xRclR1GNG244FOi7ipScgYqL5e9FypRS2JTjvUOeeaeMYOecVDIcHjgUho +SQfeNYl7jOOvNakknXHcVlXeRzkZrWnEzrTMadmU4U8MMNVNgc96v3BGc45zVN8N65HJrricdTcL +cNuzntg+9acBKtn1HSoLeDJOB1q8IVA49KUmiVGUndFuNg+01bYKVAwDVGI4HPBBqzvGFGc8ZrGS +OqlJbCxhiQOgGa07ZwMAc1nQBtx4zVyPcnA4H86mSuJaM2EkPXP4U2RlIwTzVNZGCgmmiXLZzmsO +Q6PaXRYHzDHeuS8Xr+4Ge5rqVbBGeKwPFkYe0LY6Vy4mF0ehgKlpWPMZSxbnsAKZk06ThiKZXOtj +pluPVmre0SaTzUGeMisBa1NLkMcyGsqqVjqwzfMetaew2IfatyF+BXK6XcB4057V0VvICF5rmTT1 +R0yRqKaG570xCB+VOPIpmNiF27GoWJ5qZl9KhkGBWeq1LRnXoPrVKKM5JPrVy6yadFGCAcVNlc0v +ZFYgDmkABBNTyxH8qjUcEDtStcVzPn+8B6GqM4IOCav3QKn3rMuXxknrWb3KT1MXWJCI2/lXGyne +7duprqdalzGR71ybkkn1ruwq93Q5cU+gqkAHPJ4prdsUuMdeKHx1rrOIZ2oBIII4x0pR0bpyO9No +EOz6UgC4OSc44+tGCAD60lMBSc9scDpSUdKXjPFACUUo4I9qUlSFAGCAcn1oATDAkEEEZBFJRRQA +p254zjA60AgZ4zkce1JRSAOaKUggkHgjg0YwSD79KYCUUvAPHPQ0AcE5HHb1oABjn6cUfhSU9yHO +QoXgDA9h/WgBtHPHv0pKXk0AJS0UUgClxnPtScUp2kkjgZOBQAY4z9aTtTwNhVmAI4bGeo9OKZQA +lFFFMApaSikAvNJS9/SkoAWil4wRjnPBpKYBRSgDnPHFJQAqkZ55FSOFDfLyKjopDHHkdenalyvT +B6Ug70dSMUDuOCkjPRecZ9qEyfl3YBI69KQFl46Bx+lS3MD20gRmVtyhlZDkMD0P+cUCIckH6U/J +/wDrVFz1p4JOeOooAcCMirkhK2cke1R8iHPc5Y96qgHnFW7uIxQyL1zBbvx23c0JXFLbU+vUrwjx +Pj+1dRbOP9Jl/wDQjXu8deDeJ/8AkK6ifS5l/wDQjXNivgOvB/xGYQ578UnTOOc9KUfeBPrSk8cc +cYryz1Cux4HfApqnrinOABnr1qNcg5NPSw0SqWIqUZPfvUGeRk1KNp6elS0UIT0x3phz36c4p+Dj +NIQetCEwzgc0oOQOxpoHFKufqKYEn0xUkfUE8e9RAHnsDT4zzik1oIt7ew6kdaXAAA96RTgZAz6U +gbHUURRJm3+QD3FZ0YOc/nWpqBGM1mQnnn8K6I/CXAspgsB3NTvhVx3quobIwKmflcngioe4FZ8k +nHNVicnJqZ8jn25qvubPrmtYIl7mrZHAqe4CMCcVDZDgdBU1xgVz/bZchLMdMetbCA471mWXBBIH +JNaqsQv4dKiSuyGxMkHinbSTUbMM+3rTw+PwFQxDuenp3oLdR04pjHjjpUZJ69KSS2AUHr1pHJPf +g0gz1P4UuCcnjBp2sUQkEfypwYg85p20scHHrRs7/Xmk9SkBPB5/Co8D6VNsByQcVGxGf5URWoMF +btjvU/OPQVCijr0qcc471SRLFXjg96kj+YN/SmgAA1JHsx3+lT6gxNo4xx60qp3NKeRhfWkYngCl +YREwCtk0bfqRinFSev1p3GPfFJLUdyBge3NOBI56ZpG4OCccUbv5cU+oDmc4qHPUgU9icUwZJGKb +00ARlJGOmaSNSDjPapHPIA79aUDHT15pxAXoRj86nWRwOtQgHPtUuKI6O5LM/UpWK4z0rFBw3Na2 +pnC9vpWSpPJJFdPqVHYuWZ+fNXrwjZjPaqFocMPrVq7b5ePQU4ky3MaRvn4APNJG/vRJj8e5pqZz +xVdC7mvYEZX2rTmOU5rK04HcDn61sTITHn1rkluwkzHbJbFa1jjC4rN25kAGASQMmteyiki+YgbQ +eGHRselVFXtYU2rF47SMVCRj5ven7TtqM9c9ea1TRgN56jrnpTt2MU4UcY/Gh2FcFJPNI5x9acOn +FNZM1S7CEXg49alDADioQCMd6kGScZ461T0Gi/A7gCr8cnIyenaqdugZRip/LdOeoP6VSWhD3Lyy +jAqUMDVBGODU0ch709tRF1WAxUykEVQ37TmrcUgwKpCaLANP3moQwpwIq9iGS7hSZqPcM4oLgZ5o +vdCFYnFRmVqRpVxVd5aGNDnlPSoJJu2ahmmAzzWfJdbc80tii1NcYByaw76+Cg81He6miA/NzXNX +l80rHBzmlcaQ2+v2kLANWekUkjjIPWpViLnLdM1p2lsCVA+lXF2Bo1vD0BWQbvwruoFAUVzGkQhC +OK6eLgDPpXo0vhPHxPxjn9qbkDFOJ6moWLA1ujjbsyQnNIuTSA5pw4oAfnFO3DFRNmms2OlKw+aw +pPJpoPNNLZ/CmlyCKpIlss78VGWyahDEnipRwOaaVhOVwJOaY54p55qGQ7RTRJC7Cq8j46U+Q5Oa +rk5NapGEnqIZO/50qzkjaDil8rK5IpphI5HFVoSk0S5bFCjgmmAkAjvT1Y0mMUE/lTCw6dqUtyc0 +gBJ9qRpYACeKnjUikQA1YAFQ2WtBwO2oZWBzUjMAKquc89aSQ276DWNRdyKfg80mADyKoVrAB0pN +vPpUq9OaXHWhA0NSPnNTKBQoHSpAnSi5FiRFOBTyOKReBzQT6dKg02QemaaeuaQk5xTWPWqsZtko +cCpBISM5qnuINPVjQ4lKZYZywxmmAn86j3c0Z60rCbuywGAFNL8VBvJ70xpMZBosVfQWaSqjvnip +GcHk9qjIGcitFoZtXZE6k4qIpzirW0Hv0pjqKaY3EjU96k4xTB6U4YNDBDTgHk0BgDQcHn9aiJI+ +tAMsA55PSlzUKkEYNSegpWsFyRRU8Y74qABgeatR+9JgtWS/L2oOKXgCmMQc1CLkMfpVWQ9c81O5 +NVJWxzmtEZtFaVuc1WZiWx6frT5nxVVjyPXmtUZ7DmwT1pN+OfSjHGPaom3An9apIG2tiQkMR6mg +gr93vSD5h9KcQBnNMm99SzAR061YO0gVQR8dO1WInJPPHFZuJan0LapU8YNRR8A561MjdvaoZUdx +HFMYHr7VI/bmkIPWhBNakB9qrMCTwOKulR/9eomAHNUmTyNme/BIIpqpuwQOakmUFs8802IgtWnQ +jladmW4FA57mrmVC/SqkZxg04yZB7Vk9TSOmg4yBTUbzHsahkcnmmKGOCapRDmsWD5ckaYwH3/mK +VVYUkKYPNWcCpGnfUh2cfjTAik1K0g5FQBzkinqLS+pKygL6UxcfrSl+MGkUHPoKEOVuhOmAKlB4 +pqqNop4BqGUthpznilDYAxS4z9aZtbOO5pkEolz1NSZyKhRCOD0qXHBpOxQozwalXFRrjNPHBqWO +INznNVnU59KstUMgPOOKUS5EB6nNNYEmnsjZz1p20VZK3ITkdBilTJz2p5wfwo2BSDSG0OUmpM0w +c07BpNFJ30Gnke9ODDv1pNvekoILCkZpG56VB5uP0pQzc0uUrn0F71IGxioh1JPelBpsjqSE5P1F +QuOTUo5Bx1AqNs8U0XLVEbY44pQmcUNx2p8Z9RTexmrNj1QYpGXv6VMD8uOKjJX6VCbNGlYbwe1O +zjimZx0pwx1qiFuNZiOKiU8/jSt1zUROGPaixV9SYkYNQ9elNMvakVj2qbWNk09BxOTzTetKxwMm +m7umKQwHygUuCcGjGaBuHFMCNgQT71Ftycd6tFMBW9aYyrgmqizCS1GRrwAfrU6gjmoo/lOasggj +FNlRSaI+jVKvTmmPt60JknrSJejJu3oagkPXn3qVvTNQyr2H50Icu4CReOabkMeOai2Ht70ihgSD +1p2FfuWl4pkhHShc469aQjnIqWXBFO5XaM+/Ws6YblOD0GBWpdjKH1OaxZXKhl4Bremro5q8ktyp +Opxx1OOKqtHg+w6VcyeM96ikjPccYrdOzsYvWncsWXHXvzVzK5I9az4QY+T6dKVZyz7c8t0pOLbu +KFRKGpdRsE59etTphiM+nSqjkgrjOelTxB92exxUyRVOXvF9MKQeeBVvK7QaqwYI9asDJBHWstze +atIsDDKRnI70wQnOR370QNjKt7VciVWyKhuw4pyZTfchGazddBls3HfbW5NF1rLvog8LoeeCKzlZ +o6KacJXPJLhdsjDHQ1EMkjFX9Ti8u4kB/vHFUQK8+S5W0era49Fq7bKd49hmqyIT0q5ChDfQVhUe +h2UY2Ow0S8yqqTnFdhaTfdArzfTJvJdecAmu306cOq4Oa4lpI7Gro6mBicZq0OlZ1u4IHPSrqMSO +a1TOaSFfOMiqr8DmrLZxVaTJ61MrjRm3GSeOlWoU+QYqtcYyBVy3zsWoSKkyKZGANVIjy2a0ZwQp +rMPyuafoC1RVu8cnNYN1vOcHnpW1cty3H0rHuGyCOh55rK2upa0OX1VjtYH0rnG6muk1VOCc1zzo +3NehQVonFiXeQ1c0N0pVUj5sHGcE+lK2M810HKRDpSU45/KkBI6cdaBBSCloBI5HBpgPZofLjCKR +IN29s8HPTAqP6UtJQAUcUCigAooooAKKXBOfYc0lABRRRQAUUUUALxxgfWlyxXGflU5x9abS4oAS +lweuO9JS/hQAU+aKaFgsqFCUVwD3DDIP40wDg9qVmdzlmJOMc0AJ60ZpKXFIBOaUggkHtQSWJJ5y +aVVd2VEUszEAAdSTQA2ilYMpKsMMDgikpgLRQKSkAvrnmiil56CgYnPJo4oooEPDuoYA8MMH6ZzT +KKKBi9qKKSgBw4FKc+uaT6UDGRigAP5elKM0mOv40Z4/rQA44xSc5+vek9aXJPzE5Occ0ASqvy7u +wIB/Grl4++2LHOfIt1/75yP6VSXPQfjWnrAQKwTAUQWfA91zTW5MtkvM+tkrwbxMP+JrqH/X1L/M +17yleD+J1/4mmoH/AKeZf/QjXLivgOzB/wARnPZO4ntTty7gM4z601jkjAPWmnLE564xXmNJs9Qi +lIY4HakUjH9acVHPH501Sv61XQYuCPpTwQOKXbxmkbGRUbjJA2AR3PeoyWB9O1JuJ9qOcAChABI/ +IYpyYAFNIHSgZyDx2FAyZVY5+nSnxqQ2cUinH4VNGQ2e31qXsSTp93p1qLBGT7mplxjP0ph53fnR +HUlmTf57k96owjr7cVoahjnn3rPhUZzXVH4SoFxCcr+QqWeP5ORUCYUj25qWWTK5qLagUpAecdKr +qGz9KtNhlI4qsCBgDrnJNbR2FLc17HG0frU06jp6dKhsG+X69KfcsBxXK0+YqTJ7MY9zmtLPBxWV +aOBgjn2rRDDH86h/ESxwIbA6+tSEccelQo2DjH5VOWXHpxWchEarjA7UpXljTi4O3HTtR8ij2pa9 +B3I1yTinYGD6YoAHX0pxIK474qvNgREjPPanggDJ6+lR9wBThzQyhSQTkcetQvjdnHXHSrAQLzUT +DIpLcAXJwPzqYYJHp2qBMqPWphyaG7q4EmQQaTceRSA5/PFDUriHh+mfzo3E8nkVEM5NPzyR0pXe +wNDgyn2xQDzk9MVE24EYFPGO/Q9qYhpxnj3p2Fx93604Dnj0pRgDr9aNwuQ8L1PWk4JGOBT5ADzi +o1wOSeR0p+g0PkUDFMjbPHvTpG4GDUSkk80KNgJsgE8fSpMkAA1GhLmp1UHg00tdRSZkajlh+dZI +B59q3tRRoxkHnNYoAyfrXRsEWmia0yGxjv1q3dfKp44xUVonzcVPeKcYPpVJ7ie5iuBmmg8jtUrj +rUI4I9qpaotmzp45HNas7KE4PasmwyNtaE7bRk8VyJe8xS3KEjDeRWla5AB7day25ORgnNatkDtA +Pen1QS2NAnOPccVHwDikLDA7YpFYE5PetPMxsO4wKUe/rSHOOn40nPQ/nTtcQpJHSmhucHpTm21E +zDtVxXYncl5xjtSx8sM/hTd/QVPborEY9ap6hsjQtnHAPFakahlx1rO8kqoarltLjrVr3WQ9UMnh +MZyPyqFZPz6VpsFcc1VktQcleK0aUiU7bjQ2VwalilxjNU3DRcN09aQXCAjkYocRp6Gr5o7Gjz+a +zDcL68Uhu1PpS2FoannDrmmmcDPOeKyJL5AOtVpdRRRy1PQTNh7lMdaqSXgXPzViPqilsbuTTVaS +c9eDmlzdB2LlzfDGQaybmeZ+meavJbdcjqKV7VdpGOfWi4HJXf2gk9cVUWNyTXVz6erDgc1nPYEE +4HOKG1YakUYFxwa2rNVBHfNUPs7x9R3q9bDaRng04q7CT0Om05fatqNgOtY+l8rWypH44r1KXwni +Yh++K5A4quSCeamfmk2Z5rZM5mrjF4NSdqYEOfrTyAooYkhjntUBLE1NI23mogck00K2oq5o2jvT +1welOIFFwcboZinDJpPanIKoi2ohU5JqCVjVxgAtUZuelOOoT0RWmIFRx8ZzTm64pu4DNamK3uWQ +Fx1pj8D2qETgECkeTdmpS1NHJNaCZGckd6fgdqjBHSnZI6VRmkLwc05cfpTM5zSr2NSzRIsKMYp+ +4Y4NRKTikYgnioLsEkhPAqI5FKM5yelLjkVQIMcZNBHIp+MUhA60IlsVeuKDnmk3YFKOTnpQJskQ +CpV9R1qNVPFWFQ96THEM/LyKYScZp7e1MxwTSQSYwZJzSbW5p4GalWMY57027ExjcrbaM81O6gHF +VZGx0pp3BxsPyBRn9ai3cH60u4Yp2EhzHHeon9z1pSQRUTNjrQhydhjH04pvmYPNBUkHNM2Y69av +QhX3JPMphbcQab/WnBf/ANdCKd2PJB6UucZ4pq0GkMQ5JpAjGlHJxjpUygGhuwJXIlTB/CpBTmGB +xTVQ5pXuDVtieNQ1ToOwqFBip16VLHEU+9REgE09iaqyufpSSCQ2RjnNU5XPPeiSba1V5JDzn8K1 +SJurFeVyW47UxNzEHnrzUpXcM+tGCCf51onoZNO9xucUxhyamAznvimMq4IpoHqhi7ep6mnMwO0G +mdccdKXv+FMhXHqRnjvViMEY/OoETOPwq4oxjvxik2NJk6Z7npVhaqruxVqMjArKRtB6iuM4701s +7eB7U5g1IelJCmRliKjkdcHHWldsDmqUsgz8p4NUo3Ep2Gvk/nTQuKbuzzQhOSODWhLepaVgvTsK +azZ461GA2PrTlGKmxS2HJGW7VKYmwPaljIHXg1OrIykd6ltlWVrjFUcHoacWIB75qPv6Cgk5A7UE +p6kbZ/HNREHcTirRUGmNHj8aaYncizzzUqYYjH40pQ4xinxBQenek2OzJFz061ODge1MGOlOPWoZ +pFaAQTSAUbj0py4JIoJWpKid6GAHSnxkDNDBTUX1NXFWIRnNTheAaYFBNWE9D0ptkLcQJnmo3Q9D +VkFVqJyCahbmktioyc1HzmrLgZ+tR4HFaIx6kIUZ+tO2knp0p+0ZzSg4NAwUAY4qTb6UKMgn2qTn +rUs0iiAr14phQYqww71Fgk07kvch2fjSqpWp9p5pSoxzRzByNlVl6HNPUHpSsoBxSZ4+lO4thx9q +YR3pc/ypGY46Ui90NbI7UBqFzySKbjniqMyVZyu4AdRiossc5pRGTzjrTvLHFLRDu7DeNwxUhOPx +qPG0596cecn0oYREbA61VlPPtU7Y4FRMMn2FNaDe5XXJJIz1qYYwe1MIKnHrThgjFJs0iJITimj3 +5pxHalAAFSWBJ7dqbuOTSkDIGaZwCaEDHM2MHP0FOycfWoWI6DtUi8qPaqRlLcXnJxzxRvYc0Acn ++VIQDwRVozdxVkJzn61JGaaqcinMtAWJ19/Shl3AUxc44pSTjFQzSOwzZ83FGzuaXJByRUwweDwK +G2OMLvUrBcevFAPUVIxUZqLIzU7mishtwo25HQVgX21W9M1t3Mir16dKxL0xlcn8RXRSTOPESTKX +3Wz0z0q3sDp06VS4wDjkcfrWjACyjFaz01MqGrcSrJGFXFQwKS5OCKsXO7J9ADTbMAHnHJqk9Lmb +heXKWWDhRx6VJC3Qj+E4qSZVAHPUVCmFGPXmoTujWUeTY0bXGML0q4MjafWqNsQpAA4JFaJBIA9q +xejOl+9G4n3WFWYnxgnuarN096dG5Ix3qXqiItplp2XGaoTAZII60+WSTGBmoWcvjnOKnlNlO7PP +fEluEuGIHXNYQA4xXZeJ7XcS46EciuTVOTkcCvOre7I9qh70Ux0Y/wDrVaiHOf1qBUIP1qzDjcRn +5e+K45s9CCsW4gcn2IrpNFvMnaSegrnIRt/qa39EiDHd3rl3Z0bI7eyk3DmtVPesexBGM1rR81r0 +Oee5LVafgVY55qvP0OaHsQtzMmPzVetuUGaoXA61bsixQHNTHcuS0JbjgfpWTKTurWnztrImJ3mp +YR2KN2eCTWDdOT3xz1rfvAGXbXPXUZycVOt7FoxNTI2/hWK2M/U9K1tZbH5Vhl/eu6jscdf4ify8 +jk9qglX+VTROOKkdd4J7ZxW1zmsZ2KBgHkdjU7wkZxUJUjNUmS1YRVZsgDJwT+VGOCaSlIxjBB4B +4piHIrPkAgDgnJpmDT4ljdsO+xdrHOM8gcD8elNNACUUUUAFHFGDwe1HrQAUc0UpJJyeSec0AJRR +il9eaAEpeKSigAooooAU44/WkoooAdubaFJ4BJA+tA2g/MCeDTaVcZAPAzSASn5GwAZPJyOw+lMp +aAEpQWUggkMDkEdqKSgBcHGfej8KSimAUUUUALS57dvSk60UgCiiigAozRRQAufzoxSUooGA/pRy +M0UUAKOoOO9Pm2eZJ5YIj3naD6Z4pnOOBRgmgBO9L9KTmnLtDLv+7kZx1xQA/jcK1tb2oZEQ/dht +AT/wGstHKlmXkNxz2q7fP5kU7nkyeUxJ7ZJP8qE9bCa0R9dpXgviNgdT1A+tzL/6Ea96TpXgniQr +/aeoDH/LzL/M1zYr4Drwfxv0MDIyPY96k6gcdyKjx82R2xTixHOM/SvMZ6hDKp6Z7DrUalQT3p7n +I9PWmIVz05qnsNFkED06UhHYUi/pSMQOfWoQbCAE9s04LnnJxmmg8YHrTssMDGaBiFGJ/wAKNrdB +0pxweOPwpy45ouA8YA7Hmno2OaadhpqkdMUiS6Dhc9zTOQTzwaaH2gd+KN2Tnr3oSJM/UMD3xVCH +qR3Jq9qBB+uKoxdc+ldEfhLii0i5IHU9adKuFOOlMjJzU0mCvHWkgb1KGMdc8VASc8VZc4z79qp5 +G7rz1rWGopaM2LHAAOelOuR8xOKZZnAHenSt685JxXO/iKYtqxH51eV+56CqUOM8VdVQQD0x2rOb +1ESBznHarG4tx7daroAD/SpyCF2jrWbSuIM9COKc2cVCMnjP4VIS2OOeKWzAVTnrTiePQZ7VGnXF +ObJGKduoCYB5HWnqMcH86iGcc9qkI4B5pt9AHnkcVG7dvSnbx92myAHGOKSG9gjwPfNPC56GqyHr +mpkb9aflYCYdf1phHofelOcgUhU546ipVwEDHOewqQYxmmjGcH8ad6daaV9BXFPXJ4FGMHOKb1zn +inkjIPejlSC4AsDg8e1I2SeOppWOSDTcsDgcU1uA1wajPXA9KfJmo1+maLW2BMRtxHHemZPoOKmZ +GGAOKiCkMP1ppX2HcniIwD+dTqwyfpUEfbNWABjg81PUTKGoyZQjHSsdRmtDUWbGevbFZ8YJzit0 +OOxoWPXNSagQFNR2gxyOtN1FvlxVRJe5mE+hGahyA3vQWPpikA5J71aVi2bFgoOOat3YYLiqmnDg +VoT/AHcVyp2bCW5lru3ewNbVrnYDWOcbxitizPyAelPqKWxOxHIPpUatuOKkkz9D61EvXpjFa30M +UiwpyuPSjnjNNXAHWn9qSS2E2RMRUOealbg1FxnHrWisKxIrDg+tXbRgrDPtVFAv1qZW2cihu+oz +o0O9fwqLlHxVO2vBgA9fSr77WUMOtaRfMrGbVncsRSZOKmJwDis+KU5wKuI24U46aCaKt1G75+lY +91DPHyp4rpGC1Ruo1YE4rVbAmclcanc245HSqi+IGY46Yrav7BJkIxzmuUv9InhLFATS5b7F6dUX +bnXI0Q4Nc/da/cOTtY4rMvFuI2KvnFU810Qpq2pxVKzT0NeHV5xIGY+ldto+oR3KLg/hXmQNbOja +mbSRc9KzrUdLxKo1r+7I9TUBhUyxg8Vm6bex3EasD1rXTBHFc8TdlZ7duarS2vHStbYCAe9M8nIx +3qtCDBktugIyaWO3wfQVsvbDOajNuc5q4LUmT0LGnLtUVrKRjNZtsNuBjpWghO2vUgtDx6z98XIz +TzjFQk80/d2q7GXMKM0jk4pBSSdPwpkkDsScUi5HWmnOTTzniqEx6ZBzxUvUfjVcvj2pyueKVg5t +LDjmpEXvTUGTzUmMA4oFHuNdiM1Tl71ZYnk+lU5W7CrijKo7lU5J/GmSZ9KteWDj1qORDjmtU0Z8 +jKA3hjn86epLce+KlZccVGO/B5qrkWY4A8nPSnrnvSDgdM09QCahs2jEVQc8Cn7fzpUGOnelb5ag +2SSGjPNI315pGcZ6YoAyAaBOQ4fdp3GOKFXA5/KlximS2AOTmm7Tk1IoJqUJ0NF7E2uV9vrxUqIB +xTivenDFFxWHooBzUpP0qNccUEmo3ZotED9KYT0xQXycVFk1SM2xxcKfxqZZOKpSMc0CQgYFNxuE +ZWLUjDk1TYkmkMrGkBPfGaaVglK4ZJzjpTscUhPekZgPxpsIjCxFM3nPNK55xUJbk5polslzn3pT +ioQ9OLbhjpQ1qUnoJj0pQDj605T2qTAouCQwAZpGAznpT8kZwKjfOD9aEDG7gCAakVzxmoSDkY6i +nhX6nrTsiVJk+TTlBxxUa96njQg5qWO9yVFGRUhJUZpgpHbgVBcRkj96pSSgZJbHXHvUk0hzxxVK +Vyc561pFEN6kch3H2qM4yOaVNx69KPLOcGtCOg9OBk9qawH60uQDj0qNmXPHbrSSHzaC4A6CmNkA +5/CgHnI9abK+T69qrqTfS4gYcYANIGO4dKYCMkdqcBz+HU0yL3LcLKOetWhgciqEb4Az2NXI3DCo +aNVK6LKBTUqqMcVDFzVjB4xUMcNRG4701mBBPYU5s96jkOBQkE9ynO/JHas6RjuGD9a0JSTyB7VS +dBnP5VvE53cRDn5eueaeFK89eaYB8wxU/OMdqGWk2iRWGKMLjOaYdox3pdhP0JqR62Hqw6VZXOKg +jiB+gwaupGMVLsNNtEQJOKdgZ6051HXpUTHOAKTKjuKxxxTS3bFIzYGOpxUPmkfWiwXSZZ3Aj3oU +NkdqhXcxHpVhVNIHqTBh0xzTutNUA/U07GM1JotiI8HFPTNDKaQZBxTM9icOe9PB7ioRmpR2qWi7 +jg2T9KkVqg5qQZwKlgmTE45pjtjpSZ9etMYjmkkaPYac9aF5qN2alVs1VjNbkm3rTCBUg6ZqJiCa +SLaRIp4NPzk9qgzj3p4OaGKJI2KiZiCOlLuOeahfOTimkKTJg/apCwxVTcQKQSHPNFioy0JHI9aj +DDtTS2RTVzwaqxDlclGRn3p3bmmjrjrUmKTLi9CM4JoC9KXByaUcc0GfUmRARih1xQjAA4pruCMV +Gtzb3bELEA460vy7R9KYQOlPXgc81RC3GGoWHP4VJL2+lQh8mgvS4uASAaTaB360oKnOaQ9TU63N +LoYcg4oIbvSr8x5pzYp31BkZHOaaScc1J8pz9DTCCenI65oTF0GlM89c0DKnmnqNo+bNP2gjPHTi +quZuAgJyBin7R1/SmknjFOB54pkyXUkVQQMdKlZBtqHdtOM08y4yMgjJpNMpNWIxwcU49Acd6buU +t6U45PehkrfQY4ORinbj+FNamNk/XHanYObUVmJbHamt14puCBx196XIxk0rF30Kd0r5x6msq6yw +K4rdmUNz6Csu6j7kV0QaRyVIOWxkojgnkYq/CSuB3xVTB3HPSrCFgefWtZaoxp+5MdLG0nPuaZAA +m8d15NXSmU2k/jVUpmZVA+Z8rk+/FSndFzTjMnMm4jPfpimPzge1RYlyCOAKfJ87ls5wcfWi1iXJ +y1L1vhAO/TBrWiJI9axoFZeHBHQ4PpWrbPkY61jPudNF/ZJCBmgLtIb1p5GTnpQ25l46ioE1Zgy7 ++AOageLbyKsQnHFTOqFPSk3Y1pxuctrkHm25OOcVwzx7HPX6V6RqUYaCQD3NcDcJtkYe9eZit7nu +YH4bFZFfdgd6tRIc1HGh3VYQ8kep5rzpyPViiZU+UkHFb2ig447GsZB8vv0FbGisVfmsoPU0lsdf +aO3Ge1a0T9OeTWNb/lWnC3HFarTc55IugioJcHg0/cT0qOXPQc9aJMhIzrqprFvlxUVyOtFjxnmp +S6ly+EtXDDbWNO4BOfWtec8H3rGlVS3Xik7t6CTSRRml3EqazLlMkmtK5CbuKzJi2T9KTTTFCXNq +cprbDdjNYhNa+s7jIAAcE8e9Z7WN+M5gkBXJI2nIx6iu+gvcRyV37xCpINSpJ2quT+FArVowuX1k +Zo9oAHzZz7/Wo2iU555zioBKwBXPy5BIqRJB1P5Uh7kbRnOajIIq78jYbp6U14t2CAKaYrFOip3h +I6VFtbOMZ70yRtFFFMAooooAKKWkoAKKKKACiiigAooooAO2ffpS9fujtSDjBooAPaiiigAoopeO +aAEooooAXtRQDgH3FJSAWk780UvzHgd+KYB60YIxkYzyKOuaPSgApR/Og7dqgDnkk0ncZ6UAFFJR +QAtKMUdAOnPNHekApxzjNGMDnrnFHIyKXPGPxoGITzjtTixYc+mPypvpikoAd8nGckY7UnOAO3Wm +85zTywJBAxxQA4E5Hb/61XbkN9lcADOIOnoA1UkGWAOOuOtaN3A4tZinPlR2xkOezg4/nQrXB7H1 +0leCeJedSv8AA63Eh/U170nevBfEZB1K/wA9riTH5mubE/AdWD/iP0MHAB9ecYoOcmjnPTvQ3HNe +a9z1CCTgHimKN2cfe9qmfBxx2qIYBwOlNbDuTKTggnAoYjkEfSm9Bk/hQSQcH2qLdRiYwRjvinMx +xgZ5pvU5NBxjGeeKpITHBqVSxI/GogDnjp3p6nHAzSaAsKSB+eRSAnPNIpP1oxyPSloIn5wKFY9+ +aBkjB7dqaOvFCsKxRvSpLY7jNVYsZqe/IB4qrDk966EvdLiyzjkHJp7sdvHfmo4/vCpZe2O9Q2BR +kcE9ORVUY3A85zVqZRk59D0qCMYbn14rohaxnLWRrWnKcZ+tJLmltgduB93FLKCK5dOY0ZLbjHUd +auqeCMdBVGAnbmrmeOayluJosIFyCOnc1NjOe/vVSNm3Y7d6n3HIGeM1DFYaQM5WpFGevTvSdO+T +Tuccnk0guIcY4PU0jFVHWncA4HpULDB9weaaBCrySSeaeSSKjBB7dakwpGDyfehjI2JzwO9KORyT +xQVXBHftSjd19u9Cb3H0GFcHANSocjb34poXPXtU0QAbkdhTuhC/N0FKSfTnjrUoXHSkbFTzXegh +ijqT3pR6CpRgADrQExkZ56ULzFchY5wB709Txg0pGTg9+9IBnpjiqYXDaDzQemcYp4TufSlOT+VN +CK7dw31qHHPpU7KRn9ah6de3rTlqhokOcY9BUSg7uentUmeOaSPO4ccUk9AJQBnindAece9LgH29 +KGB2/QVNmmBh6ixJK9gaqxnAqfUT3/DFU0YnAP4V0RWha+E07NgOf4s0y/Oe3altFHU1DfA5qlcj +S5nkdj+VKBk8dajUk9809W5GOlU0WzX04EYNXbk/KQOtVtOZQqirF1t6rXI+rE9ygT8wrWswcDPP +FZAJLgE1sWudoxQ9xyehafv9Kh57DnNTMeKjGAcitVdmI8DIANL8w4zQuMA9807k9D1oJImHX8qj +2uM9s1Pgc96TmrWwEYyCKeW4x+dJjHIoJwNp+tFroYKWUgg1p2l4D8rVlb8Ant6UgkMZyO9NPsS1 +c3SwQ5U9atwy8ViQ3gcYYdKtR3IWtea6uTbozZLceuTUbgEGqK3Wec8VILgGrUw5WK8QOTWbdWm7 +PuK2U2yfjRLa7lzWiVwulueb63pSOGOMYFcXPGYnKntXrGtW6pG5bjAry3UCDcP9a6aaaWpyYhLd +FSnKxUgim0Voch1Wgau8bpGzV6HZ3KyKpzkYFeMQytG6sD0rvPD+r+YoRm5FcFanyPmR6FKfPGz3 +R3qHI609VWs+CbcFOauo2T6VA7EhUHtSmKnpg07k1pB63M5ECKAeKsjOKhxhs1KuCDXqU/hPHrfE +NY+lIpbNO2kn60DGa1OfW44Z5qKVqmwMVXl54oQ2tCMMcmpN3TimKBUwUHrT6id7EWM/hUiDPvS7 +OaeoGMU2QOHTIo3cUu3FRPnOaS1KeiEc4HNVGOTippHOOaqnOetaJGLepYUjvwaR9uD3qs0hHemi +U880+UpTVhkpqLJzUmVYmnBPUZqr2ItcaORmpolzSrHU8a1DZqkxAuM1G/IP41ZZeKgbnipRbK+C +elSIBSBccU9Rg1RmKTjoKQk5Bx3p4GMn1pHYUIlj0qbdiqYkOak3E4NJoqMtCbPOfzppPNN96d24 +oQbscH2/WlL5HFMwAM+lRbiMihIbdkSZApnNMyakXH409iErjCpNMK4qzjioJO9CYOFiE4FGckGk +4B9aFwDzVkWHexprHt1oY5qNmNI02Qx2IP0pjYYU4nmnAetUSlcgYEHFKm7NTMg/qKEXvjii+gNW +YqZzUnOfWheDTzleaTBaIYeMe9R5BY0OTgg01QQc0WC92TiOnFO1CN6nPFSDJ5FTqU7bDAmOfSpU +PQYpygE80HAzjrQ2TYC2Oaglk5z6U53IqpK4A/OhLUq+hFLID064qtuLHHvTnyTTQvf1zWqVjJu7 +JF54ApxAGGNCjHbqKc3IFIroQScn+dQN3HpVhkAz60xgCO1UmQyIHA9Ka3C80455yDgU1myvA4Jx +VCvbQiOME45pN3cU/vjrTfUYqiHoPXOR6datwZ5Wq0QJ98VdiUAdeamTCKZbiHA5qzHnioIhgc1Z +X1FYs2juLIAOvNVZsYqy+e9V5QMelEQnqyhIcdvwquWXIzU0+BxVXitkjJO2g8EA5+tS8EfhUCk4 +yaeDnBHtQ0UnoP4JHep1BAx61DGAMGrOORipY1ZonhUcfWrRAAqnG+OO9StJ8oJNZvVmsbJDZmxV +RmzyOvrT5H3HrUWwk8nvVLQkMscCnCLIH1zTwoXmpVHTNO+hHUEjKjjninrx170Hpz6YpUGRipuV +ayJEz1xU23NIq4wKf0HFZs0jsRlaQDkD0peTT1A79aZNriiMUrqRU0YGOaeyjGfWo5tTRQ0KozxU +m3IHrRjBFSAAd6bZNhoXA59aayHn0qcAZ5pJAMYFJPU0a90pletN+6KnIHpUTVRiIJADimsRSEHq +Kafl+lOw+Ycnr61MMioV7HPWpAx6UmVEXrmo2B61IxAGaYcMKEKRHzjAoAzkdMUo6gdqlC8mm2KK +uyvtZckU1T7VYdQTUZRR0oTBxsKO1S4JApqg4pwPNJlRY0gjIppJxipTgmonGM+9NEyEBO0U3fk9 +6d1xTGBHSnYVxCTnFPBPINM56nmlBzSY1uMkJqsd+eKsyDpioPmJz70LYsUBsc0c4oHJP505sYwB ++NI0REOKfuz1/Coip9aco4FIEKSQcjikyg6HjHIockdT9KZjIyDTSQNscMU5nAHHekPHSo2DN04q +krmTk0SoR354qUL0x2qqqyCrSk4wD1pNWGnceUY9OahbPbsalDlMg0xhkk+lNE2sJnvUq7SPambM +gU4Zxihjje92KSTUXYfXrUwxz60zr2xikh2uyXZE0BI++Diq7KQvTml5B/GndASaS3KeiK0jcc9l +wazLmQE9OKuTsSCBWRLIQQM8Z5rohG5hKpZEcnTPTkirEIDBB1FVmCsvXOTmrNquVBxWz0RxqV2X +wVK1VkQ7sjgg5B9KsIp4HcUkkeOetYxaTOuonKKkRmITAuv3iTuUdQfp6UzypMAkELxgnvQTgnbn +1qbJPJOeO9VdoyjGMmMG7dliT061o2zHIxxnFZ2ScNVyFhhc84pS1Q17srmirMQaRXYMRmiLB6cU +5kwePzrDyOmeuoAhTUpkUr9BUBBAyOaad+3jjihq5ClZ6EF1sZSvXOa4bUINkzHpya7Zgd2DnvXM +avCPMI71wY2KUbntZdNt2MNFJbHr1qwincMUqxj61IEwR6YrxpyPdjEmjUkda0NMYq5GehqmiZPH +f0qxbHyph71lCWpUlodjauSqk1qwnArFsnJReK2IugroWuxzyLinOaa4HJpyqNuaZIeOfSmzMzrl ++vHJNJZNyfrTLo5yBSWhIyKhXNHsWrliVrNETSscHpV26cgVRW5EJJ+tVFpS1Mpp8mhRvovKYZ61 +RlQeWW9sVburn7RJx+NQ3AVYjjoBzUVXZ3RNC9rM4fVZQsjIRuj3ZK+nuD61kkNDKMOQOCHXrg9/ +8mr2rn98wHrWaXZlVSchc4r0KXwI5q/xiyuZJHc5yxJOaZmikrbcxHZ3HLHr1NKGQYyCabkjcOOe +KKQEgk5GBge1TxyjoelVAaUNzSaHc0BscH3p09jJC2yRCrEZwapJKQQCcc81c+2yzBBI5by0CJ7D +OcfShOwyBrbBOPTOKgKOme2RWlG6v1PJ7U54FIwR1HH1oEzHx0pK0hZx7h5udnOdvX9aqPAy544q +iSCinFSBn3ptABRRRQADg5o4x70UUAKcZpOKKKACiiigAoopSSSSaAEooooAKKKKACiiigApR69M +d6SigApaSlHrSAOetPV3wyL0bGR9KZ14ooGJS0Uc0xBQKKKQxaWm07C7SS3zZAC+ooEGfajjHXk5 +oBAIOAR6HvSdRyR1AoYw78UvGRSEAHA7d6UnOAe360AKuO1X7l820pKdWtePop/nWeOorSuM/ZJM +lcn7LyfTaRQtwex9eJXgniIhtRvuM/v5f5170leC+I3Q6neBRx58n8zXPifgOnCfGYRHzYPag4FJ +IVz+dN56+vSvMerPUGsOw6460zg445GaexwMioWPJwMZpxDqSA5496Q4zn3pEOc4zxSZIJz70mi0 +PGG6dcUEd8UnzZFPYcDFMTIznPFPVR+femRtxzz2qZcYOOuaUgQ/nHHYU/Hf6VHkYOPpT1YA81mB +Lzt4pm8HI+lOZuBzwemKiCkHnnJ5pxJKF9t2kY7cVVjyBVu9wMjNU4SMjqOOa6o/CVEtRnn6VI7c +e9RRqGb8eafMMDJHPY1DVwK8g65HvVVDknHrirEhyDnvVdPato7Ev4jYtfuqPSnXOAuaZbE7QB0o +lbPH1rm+0VIlgzjn2qzg4FQW4Bqy2RgVlLVjuLxkHPtmpQRxz0qLd2oXC1NhE4BJxnrT1Zeg6VCh +Jyc04AknFJXTuLyJOv8ASoyGI5PWpOhx2GKRlGBihAIMEgj0qcAcEemKrqGDH6mn5wB1FDjd2GSO +BxUZPOB9KMjilGCPf1oWjAReuTT1YDOTk54puAue9NHUDNUlpqIthxgAUEjpUS5I4p27GR+dRYCV +SemKd2z0Jpiue3HWpAfyFNJJEsazDrmlBGM9eajbB5FCruwKq2giccg9qRuMflTgOlEmMdOtCsBC +WHI6n1qq4JGBU7AYxiomyB61TfUaGIc5Bzx1p69cimorYOfypy+/WldWGTrhskd6JDhKjj75pz4K +4zwKh73Doc9qTNuOOlZ8cpB+lXtRwWxz1rPRcsCOhNddO3KVrY2rJgRg+lQ3rdgPxqS0yAOtQXxw +fl696URdSh3J6U9e2Bk1GW4/EU+M8jmrewX1NmwbHJ4qa6c7feq9mQ2PapLnBzXHbUp7laE5bOc8 +1uWbZQcdq5+Ijd7ZrftCMAdqtrUmWxLJkjrUSk5zUzgfhUaZzmrWpkSgnoafu/lSYpQMAigQzeMZ +z9aFJ/WkIwcYxmgjsOtUtgJMrtxmoiCfwB5p4z+dNPfNPdCGbvXrTW579BTvp1HrUTMRximr2Akz +gDaccU1rhkyc5qJpUVcEgYNZl9qcMaEbhnpVKLvoKTS3NX+1FTALY9qv2t4spB3da8zuNTmdyVJF +SWut3UGPmNdKoS3MvrEdj2GFx8pB4q+k6lTn0rzHT/FjIVVzxXSw+ILKWLIkAYihXTB+8rlfxZer +HE4B615bOxeRj6mum8Tap57lUbIrljXbH4Tiqu7sJSrjPNJRQZBV2yvJbeRWDHiqVGamUVJWZUJu +Duj1HRNUS4RRuya6OKYY4ryXRL9reUAtwcV6RYXayIpznIry5wdOfKekpKceZHQRuCM1Lu5FZ8Mg +PersbZFaRZnJDXPzDHWpFPFNcelIuR0r1aErxseRiI2lcsqpxmkO1TSxnAprEE5Nbq5zSsIWPNRN +k0rHrimBu1MFsOCipkX5ahHrmplPHNBN1cNuOc9aegzzTAc1IoxQxLcVjioHIFTtnvzVaXuacSZs +qSP82KqyE9RzVmRcsD3qCRSOTWyMeVspu7jpT0JI57ikIAbNJtbPXHtV3JSJY1qyo4FRRr0qcAZG +KzlqzaKshyAk1ZQCo1XkVIemKhmkUI7VXZlanSEk4qLbgkdaEhSY7B7U9RkZpFOBzSnpkUyfMCcD +rULEHrS8mjbkiqI3Iuc1IhOQD604jGMUKB29aLg1YnTcfpmpNv60yPPT1qZgAKhlRICBTCKec9qj +JNUiZMYeO9CPt96Rvb86iLHtVWEnYtM9Qu+aiDtz3pOWpKI3K4uMikpMntQMetMSDOKjOMEelOJB +FR4OT700gYmecGpFYYPrTPLBoUMppuwldEoy1OAxTVBzz0qUDpxSC+oq/wAqa5FOyO9NOO3NJFO9 +iEnnmk6mpPLzUqw5xTbJSZHGp4q0rADmk8vaB70hx0qdGGqHZ71GzHNOY8EVXcn1oGkNkY5qB+cH +rzzTm4z1zQBkc8VaBkYizyaGTpUikjrSkqaLu4cqaIl64qUgAAim7RuBqTkD1psFoyFwp/Kq5qw9 +VjweaEhX1GNg8VFnHAqRuSMciopOPu5q0Zt9RCeSOnTrRtyfmJ5phOfanL0HfFUK1yxGo4x2q4qj +AqlERkA/WrqMRx+NQy1axZjJ4qyvrVeM1YXGMk8is5FR3Bs4PvVS44X9atuQOTVKZgQQacSahny5 +xiq/zL3qxNk/hUYGfqOMVujEQBmBzT0UqMD8aeBjg+lG3IwKVylFjlwMfzqfftx71CufqKf1qHuX +ayHMzZyOtJvJPNPSMkUrwnBP40tAsyFuTketPjIxzSEFR70qnj60FbD93r0FSBg/I5qEcnPanR5U +46ZoaFFlkAVIg5qFM/WrKLxzUPQpu48ZNOAbk5pyoB0p2BUNmkdEQ7e9OTGaG9qaM59KZHUsCQY+ +lBfIqCk5qbF8zsScfrT17VCOTn2qVfanYm5MKGAHNCjihwMVBr0IT3qPH41I2KYvWqMxNg6LTXjw +PrVgAD60km3HWi+pbirFTbyMU9c96Xbg07bmm2QtwwMVGw9KmwcVG3ekhyRCMg1KJB+VQ529aYTg +n3q2rkxdiwzg5NRFvXmmbjnNIOn0NCVhydywp4+tOGfwqFTnipUHFJiiOPTimsBjnn2qTgdKiOTk +0kOS1EwOopWXIpq9cfnUxK7QTQyklYrcjikbj8ac/J45pvGPpQCWpG5I/A0zmnsRn9KGxQWkiMAg +9aVgTxml680UtRq2xFt7U7Bp5ABwOaQZNA+WxC6nOaUcDninsCT04pOeAeaCbCAD9M1IACD0pIx1 +pSMf/Wq0ZyQpQj8KQHBqXeMY9KjyCeaVxtaDz3JGaZnnmpRHlN2QeOlRHtQBINu3PFIOOnrTA2Bz +xQhxzSKbQ/2700kUjHkeppjttwM0AhwPajPNInIJpJSuDVRFV2KU+TuArN+zCRiTyK0JyN2R0NNh +XDEnua6E7I43HnkkVhbBV6Y7U6MbenfqK0GWNl461Rf5WwPxpRlzFTpKC0JI+GA61JKhxnOO1NAw +QeOKc0gIz1pPe5VNpxaZXZcgEdjmmyHaoxzU8RyxUj0OailyuV9/0q+pje2xFGzMASMVdtwe/QHF +QQryM9asY25IpSGr31NKIgAVMw3cjgVSiZ+p9auRksuSawkrHTT1VmCDBwehFAAU0vQ474pWAdfe +kK1mQyrkZGORXOaxEN+SOcV0mAvB9azNXjVk4Ga5MWk4NM9LAtqaOT2fNkDpSrGS2fapmTax70hK +odx6da+eqOz0PpobEoKqNx4IFUpL5POUL1B61Sv9RZiURsAVTs1eeUEitaVB25pEyqpPlR6Po90s +qA5x0roYW4Brj9Ht5ogD6dq6y26AHPrVq6M5GihIGDSSHg4pm44zTGk459KTa2M7FO5IHSqltIwk +IzxU1xIpJPWqcDgOT6GovqaW0Ll1JnjNZdwwwc96kuLlQ2M1QknLEjtUqV5ET92IsUJ3bwelF3xE +2fSrFs2VFRagD5TduKmo3cmkjzrUzmd8etZ1X9Q5mbA71Q716tL4UcVb4wo9qOMH1pK0MQpaASCP +bmg0AJRRRTAWntxyWBJGeKau0YOc88r7VPe3MF1IskVukACBSqdCR3pDGJMyn6VcW5zjdWdmnjJG +Qenak0NM11kVvmp5jRhmspJmXj6VdhuNwAzQmFiOa2BBIHQ4Aqm8LLzitlDuH4U2W3RvmFVvsIwy +MUlXp7Ug8DmqbKVJ9qQhtFFFMAooooAKKKKACijHGaKACiiigA4opaOlAAQR1oxxn3xQT60UAFJR +RQAoxznPTiikpelABS5GCMAk459KT1pKAFpKKeHOApA25J6c80hiHoAB06+9NpfXFJTELRSUUAOx +05pTuOB78Ck6UvY4pDEIIJB4IPIpS27+EDjtQWZsk8kkkn1pMHAP1oELyPzq9cY+xE5Bz5H4cNVL +Ofqau3CBLMjqS1ufplWNC3B7H2AmK8B8Qk/2hfE9fPk/U176vT8K+f8AX8m/vOf+W8n8658Svc+Z +14P42YLEZ980bjxk01wQTg4NOX36+9ec7Hpoc+WGT+FQMjEg9/Sp8+lRseRjpREBF9ulHU+1L1z2 +xSp/I0mxoFBOST0HHvUmDjHqOKZ8uevAqSMM3HGe2TS1H6kZBzT146A4pnGc05SG5z60PQEP46Uo +bAxUZY9qQMSelTYC0CWX0x2pSRn61GjHkZx7U3Lbs8mhKwihfg8k1Xg5JHapr4hv0qG3wM9a6l8A +4lmLcrc06RsqfrSR45JNMmJH6Cs92OxXkOMjHXNV48lun1qxIRgjpzVeP7/NdEdjN/EbFv8AdAxR +Jhcn04FOtCAvrxTZ8+tci+I0kyWAjjFXcoR16AVmw8A5zVsHgdqznHXQVyUbOM9afxjHao1zlSeQ +BTt3T60r2BoUDBzTlbH480xTzgnjFGScY6dKe4i2p4z170uCcDoOuKhVhmn78DPc1k73AOCTjnFO +6Z+lRhu/HvUmc9O9XdbAMIbjH40cKST+VKMkkAUrL7ZoeuwXGFz2P1pEbJ5PNRliGxjvSjHJFNaL +QZZDr/8AqpA2TnrjNCDjjrTG4bpj1oS01Je5YDEgntT1fAA6461XVsnaT708NtzRYCX+Rp6YI681 +CGOQKeuQcDvTdhFkE4HNNZiSc9KaCRzTJH3Z5xgc0rC6iZB+YDjIGaax4Ix1pFNHTAH60mklcY1t +oz61D5mD1FSPwMD15qvg5zTWrGWFbGM06Q4U9uKRApHB5zTJc4PPHNK2oI5/UHO49faqULEuBVy7 +5c8d6iiiANdcWlGxVnubFtt2cjkVQvSST+lXosKmOnFZt3w2ffms6YupTYED1p8ROc07AIwRTVHI +9M1ve6FbU27D7oGeKfcnJI6U2wB29e1FyT0IrgfxFvcghVVYdjW1AflFYkRDOAD09a2rc5Ax+NXa +71JlsTMeaanXNK5wcU1d3HHNaqOhjctZ6ZFLke3Sq7vjBzyeKC3AxTtcVxzHjP4U3cODUTOMdTTg +VosBOp4PoelMYkZ+tIrDHWoJrhUBJ6DtRYQ9mAByapXF3HH1OKo3+qxIpAYZrmbvUZZmPJropUHL +cynWUTT1HVzyqH2rBkuJZSdx6moixbrSV3RpxjscM6spsXmkooqzMUEipVuZ0+6xqGihpMak1sOZ +2fljmm0UUCCiiigQUUUlAyaBirg+4rt9DvsKqk9MVwinBBrc0y4KMvvXLiYXVzrw87e6emW0ysAc +1pRS1ythdZVea27eXcODXHF9DoZsEgrTB1NRRyHGM1Kp/WvSwsujPMxcSQPt6/WlL5FRnHOabuwK +9A8zqKTjFJwOfek7jB4qQDNA2+gmRUgzmmBTz9amUHFMhjlGfY1OoFQgYqUc1LKiIcVWkFWCearO +RmqiRJkW1c1FKo5FSbgM5qJ3UkjNXYlSsUnG09M0IPbtVhlDdacsYqrhuxqLnFSquKeiYxxUpTvU +Njs2KgFObGKVV6UrDFQaxKrjmmbecirDDmon+XtVIhrqMKnrSNmpN2RzULEHrTRL0QinrmnqQRx0 +qHcFoSQD2p2YlKxOwpVA61EJTUykUbA3cnToKeRUakDFOLDrU2K6EbK1RPjpU5PFRtiqTIaIMZGP +WoyhqyQvJ700gUXKUCmUIJpRkAYpzlcnmmdD1zVmdrCdKKdnPXjPFNyaC9LCEDNSRoCaQYB56Zqx +lDjHpSbEtyMw45NMZSO1WdwqJmGaSuOViPA5qQsQOKToKAcjIpkJB1pme1ObkcUn1oRTY6PnANW4 +1XFVomHQ1Y3qBUyKi1Ye4XvVaQgZqR5M5qq7Ek0JClYY8mPpmoiwORikbAODzTVYg5rSxFx6g9+t +SGPtSx/MKmHvUtlorbeD7VXLYyRVyQfrVVkBB4qkRcQPnpU4yaqr8pwBVgEnFDBDXHB71Ukxzjrm +rvFUpgd1VET0IuAMmmMN3Jp5BwTSPt4I4qyGV3wcgcYNGeKRiec8ClHTiqM2x6sf1q5ESQuPaqyL +nFW4hgHAxikxl6LjAq0pBzxVKMlsGrSkgVjI1p7iS4PXvVOX1q45UA5qjcHK465pwCqU5HwRUa5z +x696a+eAPxpF3ZyenStrWMFJtlgscepoDHp+NQMxAHf1pQx4+tTY1UrFtQo5NSInIA781EjdOo4q +zED1FS9C9yxDGM59alkVRk/lUYY9abJKNvWsrO5pzKxXfqaaBnApxI5Oc1IigjirIktBFQZ4qRYt +xyPxp6IBzU6R4+lS5EqLuMEQGBUqgDvTitRE9R0qb3KcbE4Yc04HOaiBwKcGzU2NIitjvTCQKUmm +HmmQx45pQMk0iHkZqXFDZSiQ9OKkXgZpjnqDTA/T0oJasy0rA0MetRocZpS3GKk2XwjGJpinFKST +ScDFUZdR+/8AOjdx0zUTN/8AXpORRYfMSg/rUgIxVfdyDUobpQ0C3HnFQMwycipQ3JFQuCeaSsVL +Ygc7sHNKB6005U8VIrHuKszQCNSM00qq1KCAKa2O1JGjSsNXaOlTqRjnrUC5zzUqg0MhbknBHFRN +x+dPGR1prdKSKkRbiCaPMHAzQdvPrUJxyaqxNx7MCxxRximAgninE56UrFRZExxzijdxQT36VH3O +aCkx4Yc4OadkUxOM0vFJlLYD14pVIPPtUTt60qE846UNaAmPbOKTcOc0pyc81ET/ADpJFN2Jlxwe +9Ow3fpTEOeOvNTY4xVoxltcgcnk1FvbgVPIq4/CoPLOQTT0JuSJJ26Gnk46UxNuTjnilyMD60uo1 +sNkJxxRGx796ccYKn0puADwKB77Euahfbn3qRcnNNIHOetLqVrYRGwMeppWbAIIyajLbT9KeW+Xj +8aoV+hVkQHnHQ0DjntUjHnnvUTMR8tabnPfldxXdVHuagkwVBIx60x0lZsjoDSgsoIIycVaViZTb +VxwK4JNOQjA461Ah+bBPPvU8e0cd+lDFB6kpRQOcCoJAc5/CrB5HNRHlSO9JMc42kPt0Q4qxKqBc +81WhbYefzqV5FPB6VLTuaRceUWBwWIzV+I9ayo22uD6nFakeOopTRMJa3LDqm0MPvVGrckGnA56/ +SmYweazRvPXVDW7g/Wql4QY2B7VckAwMVn3B+Vs9gSazqxTib4abUzmbmVISWY4Fc/f6kzsVQ4Az +VnxBdMJjGD8o9PeueLEmvGhh1zczPoJ4m0bRJSzSN/jXTeH7NZGVmHHrXMwIWdQPWvQ/D8Coi9uB +TrO2iFQ1vJm/awIqgD0rTjwAtV4lwARVhOMH0rB+RuTkgCqk0wAPsakd+p9KzryYbTionJIcVdle +a55IHNMdxHH74psUTE+Y3FNnyR7VilfQuckihJJvY0nUZPehh83rzTlUcj8a0jFo4alTmLlvtwuB +2qLU2BhYnsKsxqqRqap35Vomz6Gsp/EdVP4bnnl+T5rfU1Rq7qH+uf2NUq9en8KPOq/EJSkUUlWZ +CkYJGQcHqKSiloASiiigBcnj2pKdx+NJz6UBYSlG7PGcjnj2opKAHswYhh1I+b605JGXFRjGRnpR +QNM0IrjjrjHSr0U+78OKw93pVmK4ZSOelLqPc2niR8n2rPntF+b+lSw3WeverJ2OP1obQWOddGQk +Gm1q3NrkE45zWa6FDg1RIyiiigApfr+FJRQAoxnmjJxjt6UnOM0UAKTkk9KKSikA4GnL5O795nbg +/d60zB60ZJoADRkmlxuJyQOCeabQAvGB685pKKWmAlFOBI5BI4xx70BWbG1c5zjHtSASijBxn0xS +UwF47DtQCcH3pRtzyOMGm0AFFFFAC0UlL1oAPely3TPApKd8m3vuz+lACUc0o7ijH/6qQx6g5XDd +vyq3c/8AHq3JPzW4/wDHWqmuQa0L4f6LIeBh7VcfSM5oW4PY+u16V8/67zfXZ6Ezyfzr6AXp+FfP +munN9d98zP8AzrnxP8P5nVg177MQ53GnYOAehxQducfjTS3OO/SvOdz0xOcg03kcnmg54pCd3HSg +BeWB96QHHX16UD0HJpQBnPWhoaFLcHvT1BI4P1poHBzT1I+apbGNKZzzSqCvahj39aAw470XbQhc +A5+vNG0g4oH/AOqncH6ikBJt7e1NIAz75qQKyjJGM8g01jx+BqVuMy70gng+vSmQAk579qddjnI6 +UyHPrXWvgFFlgHHemSsD09qeq8jNNlVRwR3qEUQSEbT61XTG7I9cVNP049KihXc4A9q2j8Jm/iNS +3O1fUimTSAnHOfWnqhUckccVDIpLDPasElfUqRZgCkD1NW8Nx6VRgJOAOBV8E7R6isZ3TGIpbvnm +pC1R8MM+1ByAeancBxPzde9CN1puGJ9qMEE9qe4iRSMjJp+8kiohk8dKcDjmpeoybIPHapF6D8Kq +oT/jVgZ/wqJRGSEHqM9cU5VPI9aaoIXr0qVRwCOtO7RLK7ochjUYAOce9WnK9CKgdep7VSv1AemA +cCkbjJPSmr+I+lOILcdsU09RMgVizH61aTnr17iq4VVYEE8d6mSQqcg4NOTTBE4Vcg08nFVd5z6V +LuyPXpUOyWoE6vnNMkwMk96aGOBx1pHbd146U4tCaDIAHvSZGPQimbxnp0phbrT6AybIwM1Hhewz +3pCcDjrUcbktz0zQtwLaDC7qguMhWOeKlDcVDOyhWoWstQOfnYbzinR9uuTmmXG3fjpnnFOh5wDX +Q9jRbGjGRtxjHBrOugN2AelaKZ2+2KzLtvnAx0op7Gb3Icn9P0pFIzzSEjpSx4Jyc9RWltA6m5Z4 +2j6Uy6INFpkL61HdHn0zXIty+oyBsOBW1BjaKwoMb+a3bc4X6jitNLky2JHI4x2pV45P1qJ/bigM +SAe2K0SMWPYnrSk9CKj6UobBqrWJ3AgHPY0zdt5OabJKq9/esi/1VIgQpGRTjFt2QnKyuy/c38cK +nLdK5y+1lmJCE1nXV9JOSc4qkTk5NdlOglqzjqV29ESyTSSHk1FmgEikrotY5m7hRRRQAUUUUAFK +DgMMA5GPpSUUCCiiimwCiiikAUUUUAFW7WUqy+tVKejbSKmSujSErM7XTrnhecdK6S1nHBrgdOvA +pANdZYT7tuOlebKPKzvTurnTwyhquRtntWLBLgDNaVvMDXXh5WZyYmN4l1sccU0gcUbwen0ppIzX +qJ6HkONmOx05qVVyfrUK4q1FgYNAWDYRSqDnFPZh+dIo59KEzOW48CnkYFA4605iMA0iktCu/BNQ +OO9TSH9agkP41ojFkD57VCASeasH6UxUJNVclIFXp3qRE5zT9mBilyF6GpuaW7iheOaXmm7gRS5x +SHckBIpzY201elIx7VLNFsRmo2UnmnbufxqQLkZNVsS3cgINQODzVzYRx7VGV600yGrlIpkEioip +6/QVeKHnFQPH2q1IlxIlPtViNhUKjFKTzxxTYki6HGMUzdmqxcrQ0hHWpsVJk5kAPWmPKBVUu560 +bz3qrEolM+BTfO3ciq7BvWkAbOadkF2TZzn09adgHGKagJANSgdDSY0hm3nj0pdp69qfzg4ppLHj +tTRLG9RSqSKcI/Q9aRoyPqaCQ359gKbkmmuCKUe/rQNseB68U4D+VLt4FPFSy0iMD/8AVRtzUmD6 +UqqSeaZDIgADSl+SKlKgCq8mM5FG4aodvFQtyT70bjkUpHPrRsO90QkckGm4APT0qcjn9KGX8Kq4 +rW1Fi4FTAgc1CpxwalBFSykxWwRULKDkVOcYqPjOeDQhdSq8W3kUICBzUrkMT0qLvk8Cq6D0HHIH +FVn+bOe3arLFegqtJkZxQgdiPjFQPgHHvTi4Jps23jHXvWiM5MhO1ue1SIpwOaiLAE+tPSQHj8qo +jQsRhSeB2q4i4I4qlEyg571oRnI96iRrFKxMi5FPTJwTxTVJB+op69KzbBLUSXp7VnTsMcVduM7f +rWfNyGxVwIqlZ88k/Sk2gGjPT/Z4zSk9K1M4pC7SffNOSAnHNOX+VWYwDg+uKi5pyodDCO/WrKgK +KapXHP4UF8cD6VDdyktAZwOKrMScmpwNx5FDp7UAk2RIoqzEvFRRqSatIAOtJspxHIo7/Wp1YKKr +7sc0biRxUtXCLsydmFMIB69ag3uMVIH5otYJSvoTr0+lP+XFMHpTuelSy4jW+uahzUrdeKbgdaaI +e44duKcHJpjsAo9aaG55pWGpNEjcmmooB9qUEY60q4oES46UjJxTxkGnHOM1JqtUVyuM03GTU7DP +XimFQKaZm1qRhCfwpWjPUVMoH405hii+pShdFNh09acowKWQDP0oB7U7k2sx4wOajcjnil3Z4FNP +fNJGj2IW4pm7kZ4xTnOB6VHgn61ojEcWp3PShUy2alCY+tLQrVjQpzUq8ACm4xUmARUsEBxUTDn6 +U8nnBpGwRSRT1K+D3ppVeTUpHQ00jk807go6EOew/Gl3Gg4zxSMwPApgkMcjHvTRlhzxTwM5zz3p +dvGOlO41G41RjJpSByBSjGacfap6lW0K5GenNA3Y4qXGKbjj6U2wURvQDPemMF6nrUh5wD2ppBoH +a4+NRxip+tV4zjg1YUc0EvsMbPcU0LnvmpHB5+hpiHByabJilfUQoM8DHBpcL+IpzMv/ANemtjqa +k0sIArGho8A0q9AcfWlLE5yabbFFKwzBxjOMimc5+lSHFMLD+lJajehBL1OBzmlQjBokBANCZIrX +oc7dmIy5IPao5EJbnpirO3dz7Uxx8oyOlUmKcUQBBmnNCwGcdadHjNMmmwD/ACpNu5VOMbalIjYx +z3NPeUrtI/Gq00oyMnrSLLk8itbHO9HoaCPv60uMnp61FETwD0xmnFiH4FQtGbT96KYrHaSKiw5Y +r2Bp0p+bcBninQKDgnn0q+hitydMFcY6Yq/aspU5NQCPK5xSoViY9lNZN3NeVouZGcDildTjNQmR +Qc5zSmdMDPNRY1i7rlHYBGPzqjc/cYDrg1MJgz8dM1Hc7eT7VM1oOk7S0PMNaDC5cH1PFZdbniJA +Llj681iV589z2d0jR0qEyTL6V6PpUO1AcdhXB6CuZQccZ616PYKNoA9K4ausj0qStBGpCOAakIHa +hBgAfnSnAGRWTKK0xPNZkg3vjtmr9xIoBNZrzBfm9awm1fU0V7CzSLGnHWmgbo8+vNVnYNzmpomG +wgVlGd5E1VaBVcfNjFTJCOKiYYYg+vFWITyM9M12Q03PNe5ZZCq7TWRqjBIX7cVut0BrA1tsxNj0 +rmk/fsd9P4Tz+6yZHPqTVarNyVDnHvnPaq1exDY86p8QvJzzkAU2l4oGMjJIGecVRAUUUUAFJRRQ +IXr0o5pfQ8dcU2gYtFHQ/SlVd7KuQMkDJ6DNAhtLQeuOtFMA5pcnp6UnaikMljkK1dt7nnk1m04O +ck/jSsO5uq/mhhngCqV1ADyOait7opn3Bq4ro4x+VNO+jCxjspUkGm1euYOpzk1SIINCE0JRRRQI +UAnPtzRyaKSgYUvPSkpe1AgGMjOcd6SiimAUUtHFIAxRSUuDQAdfwpQzKQwJDDoRRtbAYg4JIzSD +HegY6SSSVi7sWY9Se9NpSMdweKkgiEsioXVFJALMcAD1ouBER3oz6VYmeAbkjUOg4WQ5B7Z4z09O +O9V6Yh8sTQvsbG4BScHPUZplFFIYUc/mKKSgQvJpRjpSVI3lAJtzu2nfn1yf6YoGNHX1pQAduSQu +eSO1JxSlSvB5GOKAHJ1HvWxrMUaNfIpIVZrdunTMZwKx1AbLZ6dqv38zT2zuTk7rVfyQ0uoM+u16 +H6V896yCbu5PrK/86+hF6fhXz3rD/wClXPH/AC0f+dYYl/u/mdeD+JmPuPK4B5BppUg5H1pW+Xn8 +aQljj8681s9NDRnJpMELkc0oOOaec5x09qdxMhHXPtUgPI78cUhxz+tC9QRwOlD1BaDlJ9umakGe +p+tMw24elKxbOBUWuUNduMd+2Kahz19aXnIpQPXFUIcOcelKSTjBpASRSoMng9KiwFnzWdVBPCji +o9u7PbinLhDzzS5BOagZl3ijkCoolAPOMdKnu+GPdagjPHPNdavygiwikccc0yQZIqSPGOPSmSd+ +albjKk33SPqahh+9kc81YmGAcetV4gcg1vH4TNr3jXhI2c9ailK7sA05SwXmoWZc5I+btWCWty2W +YBgg9qtjIHbBqpAeimrWOD+HSspbgyRSgGOcmgjnikHB4pSePrUWsIU/yoxwfWhSGGB2pzcDj2pe +oxuAeTSOD07UhP454pWP6UxDkx61aXlRVFWAIzmrq4G3nGe1DsNko5HrmpE6Djn+VMVhj2qXAxkV +GtxEMmAcY60zC/41JJyOeMCmJwPmFX0EgVVHA9aTao4LEfQU4AdQetKu0E7lz1A9qSlqNjAsZ43c +euOlKUyTjOBwM1LsQjjjjoajIxwfWqTERlcFcdakXgc005Uk/hSg9Qecmhq4iTPAxTSf14oGOB3p +rnqfahJXsDuIfWmnBwaaHJ9uaUMDx9aYAckGljU/lSgA0IhB9KncZKM4H86rXQ+UnFXBnqRVa5xs +OT+FNasRztx9/JPfFPiPTnvUVx981JCckV0P4S1saYP7sHrxWTctl/UZrV3Dym7cYrGuS28n60Uk +R1GMRxjmljY7qjzwfpzSxfM1bW0F1Ny1ZtnTtUU+cg9qsW4Hl556Zqrct8x9O1caWpd9RsLHfjj6 +1tQPtUVhwtyCK2ImG0ZPpVW1FPYmfHJpgfkA9qRnHfFR7lwfStV2MGT7i3tiopbmOMEnpjiqVxfr +CCcjmuevNVklJAPFb06bkYTqKJe1HVgGZUNc9NM8rEk9TTXdnJJpldsYKK0OKdRyCiiiqICiiimI +KKKKQwooooEFFFFMAooopAFFJS0AFFFFMAooopDLEUpUg+lb+m6iQygmuYBxU0UzRkEVhVpKSOin +Vtoz060uVkUcjpWrBIcivO9P1goyq1dTZarG+Bnk1hSTg7M0qrmWh1sb5p/uKo20wdRtq0GPAr14 +7HizWpJ7ipEc55qPOTUuOc1ojGTJQzHFSBulQqO9Srx1pMlak27imM4xims4AqtLKOaEipOyHySA +nimblIzVF7naTQkmR1q+UiL1LhweR+FPUDNV42JqXcRSsU3qSkgdaidhzil5NNIoQmNUk1KpJwKi +xtqRcHn0oYkTZIqFyxOKl5IxSbGJqUavYjRCanAwKXYR0pwXHShitYaVyKixg1OaYwANCJZCQKhd +R0qduOabjdVITZWKYNJtxVopu5phTGaq4kVGU9aiKkmrbKeeKhIOT71SIkyLBxSBeTSng4pRk9aY +07DCODSKmcCpdueKeFAouJ6gkZA4pwU4p4p5U96m41sQ8AUnAIp7dSKj6N160yWSqKcQKhLEZxSe +YcUmi1YHAzzzSbRxxxSk/rSoC1O5L3sPVWIFSBOKVAcVIFzU3La0G7KkSPjmnKDmpFx0qWwiiF04 +IqhKMZxWo+MGs6ZSKcWOSRXB4OaUHp2pCMc0nTnFWTYdgZp3GKh3CkEmOD607CuS4XtThgY461Hu +p4PAzSDQfmo365xTs8dKa59aEKRXZ+aAVNI469+aZHnv3qxDyeMmq0z4qwxAPBqrKdwOaaJexWB5 +NITxk0rL7e9Nw2OetaIybIm657804FRgn1oYf3abxjnv2qtxN6aFhSOoGO9XIpGqginHvVuEScCo +aKuzRj3E81OMVXjbFS7sdTWTNIkU7Cs2Zzkgcn2q7O2KzZyR0rSCIqsiLfMcjFSfOMEVGATkn1NW +IkLLjsKtkIfGAwPvip1Hy49KjWPbz2xU0SsevSoZS1JACcflUm0cU6NR3FO2rjBqGzVbChV60j4A +zQfl5Haoy2akqO4J1qZQe5psajFS4IzS6lSIySfzpDkYp7DAGacIw34indGaTIeT1qVEPFS+UMe9 +MGVPNK9xtNbkoB7U/BpoNOPY1LLiIwPFMYcc04nnFRsxzQiZbidaeqHHSkj681ZVQRihuxUY3K/C +jmheKdInpTRx+FO5LTTJUPr61IGPIzUS54z3p9QzSIhyTTc+tKeT9KiPHFUiHuSqwGM0rS56VW3Y +/OmEv2o5RqehNktuIGdvJpqnv61GrFGVgOQRTtzMzOQBuPQU7CurEo9KRuh9KFIpGAPSp6mis0V5 +O2OlCDOKeQMZpq8cjtVmfUsIo6mpCtRqxxinl/lI/I1m73Nrqw1sZ5pM+tITmlHNUZPcUlfyqJsg +4FSMAAfpUWRn8KEU9hOAcelMY4OKViOuOtQswpkxY7g0wr3PalU44p+CRzQU9SIEDnsaXdzxSMDx +UWSelFgiyXPNOOAaYv55xTuBSZYfL+FQFts6hTwUJYfyp+9l7UxSu53/AIs4osHNoSHHfrScZAal +O3HuajbOeeh/SmA4Yzn0qyhIqln1q1G5wKq2hk3qSt3NVz8vFWOMcVE/NSi/MjJ/nRksB60j8EYp +VyfrQVuIWIFMV2JI7U5v1pu0DpTIJC3HpTV6+wNNJPTtShlFCQ3KxLKiMMg1DCoyadkHjNOjB5x0 +GciqV7GdSzeg8AnNNKYBz3FWIwOuKJBx6Uk9Qa90y2O0+gBrPu5mBIx0rSuBsB754rNmUsQGxW0T +Az3JHPXnNTxEtGCMe4pXh+U44pkahVwDzx+la3TRlKDiy6j9/wADUhf7pC1DD1INTFR8p6DFZPRn +QtaYkjEhW4wakgdBweOaQKpU49KrbgoPrzT3M0+V6mr9qUDHcCqk9yCeD3FUhIxz0BpmHZhnpSVO +xpOsnY0kndwcEdxT1LMcDPFRWse7P0FaNvEFP1qZaDpvUIY+M45omHbFXfKAAxVefH41k3dGsVaZ +wPieyw3mr071zMULSMFA5zXX+JJWZ/LHpWZpln8wZgM15NWUk3c+ho04zii9pGlyRFZOnSu40+PC +L61n2EIVRgZFbMIVfauFu7uduysWVyARUckgAOKHfb74qhdXG0HnHFZzlyoErkF1MpJGc5qk+SMU +0sxYOeeehpSwwD1rinI3iiEjFXIVWOPJ71CAehGRnNXSqiIDHNXh/iM8S/dM5+X/ABq1Eoz+NQBc +OeOauRLgj9a9CK7nlPfQssW8viub1t2ClQcZrpZSoX8K5XxCBsb1x1rmdvaI9Cn8Jw85BZv96ouK +kkBzu7Fj+dRV662PNluFGTgj3zRRxTJCj0o96BzQAlLxzxzSUUCFpKKXtQAc0Ue9FACUUtHvQAlL +xz3oo4oAKTmlNJQA7cM8DHA4FWIpiOp4z3qrS0NDTNaMiRRz9arzWx7DjtUMEpXjNaMUkb5B5pFX +Ml4ypPpUda80IcEgYxWa8bKTTJaIqKWjjnPNAhKOaXOetJQAUtAooASlO3Py56DrSUtMANAzzSUp +J45pAHzYAPTJopKKAFoOMnAIGeAaOMe/eimAUUUcUAKdu0dmGQf8/wD1qQjBIznBxkUlFIApcEYp +KeWLDB9eKYCcYAPXNL1H0ox1FGenNIYvtThg4DHAFJgZ9Bmk6+9ADtjDaf7wz+tXLkf6E6/3JbcZ +9cqxqmnB754xV24jY2soQEnfbsQOwEZJoW4j69XgH6GvnfWADdXHX/WP/Ovoheh+lfOusN/pdxt/ +56vj8658T/D+Z14P4mZbkk8007hx360rkj+dRbsYrzrHqIcTjn2pd2cZ5qMMcZ7U8YyMU9hDmx0P +ekBBO3tQ4DYx1puOfahPQLEqswI9PWntg81H+tOBNQyhoznjvS8859ajOcAjjmn9xnvTsyboXnHr +606POQAMGmqCeKMMG9KQyzgHJP40xjz7YzQM4+pqN+e9TuxlK6fnHXNRw4A9qLgHdzTY8HjpXUku +UIlxM9R6ZxUEmQ3A7UqFhmmv8xqUhX1IZicc9KjjJzj9KkmHBOOetQwgZwPrWsfhIb940wQF/Cqr +vh+anwdufbjNVW+8B+dZxQ5Nl+Ak4I74zV0EnAH1qhAOMVcXpWE0rlEgPf3o7E+tNTPJIqU7fXri +pECNgnPpSM/5cU05ByaSQ9COopDDJ/Ed6cSO/PNRAkk/SnDpj0osMOMZPFTo3QZ7VVbnqafGR1Pp +im1oIvxyBfwzUglJHXpVMEkcc0AkH61FkBdLbh+FMB4HNNBA5p+ASAeKHqrC2Y//ABo+UfUUx/lP +f8KH2ISobJ7/ANaSV1cZISMYFNJXJHXFMDE8/lTWz7e9VFEsVzn34PNA5xkY5ppYDik5PPYdKuwE +4UgY/Wo3BI9qchOPWmPwMUgIM7j9KeuOg60z0Hp3pyDJBNCVx3JVxx2FSKy5HSogAffk07auR0qW +mthFgEnpVW9+7VlSMDA5qleyYVgB61UdxGDOQHOT3zT4RyB+dV5Tl8dKsQMQeOf6V0Ne6aX0NDpG +e/FZFwfmJFarthPwrInJ3MfrTpoi5XODn/Oakt8Fgc81AxOTgd+9S25zjHHOa3kvdIi/eOggkITB +PA6VSuWJc/nViLaI+elZ87fMSTXFCN2aNk0BBYZrYj+59KwoJFUjPpVqTUViVuRxzWvI3LQzqSSW +pfnlRFJY1iXWsFPlU5561n3mqTTZAJArNZmY5PNdtOglqzgqV+iLE95LMckmq5xjIORTaK6UrbHK +23uFFFFBIUUUUAFFFGTQAUUUUDEpaKKBBRRRTAKKKKQBRRRQAUUUUwCiiigAooopDHK5U8Vetb+a +JxhiOaz6VSQeKEl1GpNHqegaj58SgnLAAGujVs815l4ZvvLkVHOAcda9GtpPMUenFdELJWOOtH3r +mhEM5zTyDTFHQZp/OfatUc00KGwKdvGKhLAE+lRNIRnnmnYlEssuM81QmlY8A0PITUO0uapKwPUj +ZmJGfpU0QY4p0cIOAatLDgZqmydh0Yxyal544oVcinAHvUDFINATg0uD+FSDpip2LViAg1JGoPH5 +07aeamhQfSk3oCV2JswOKVBng1OV44FRnC1N7ltWY4qOtR8Amn7iOTTDg0ITY3IPSmOCc08baU4/ +OqJ3K23NOVQMCnlOc0qgbqdybaigDGKjdc81Iec1E5OMUkU9iBxVdlJ471OxNJgcGtL2MrXKrIRg ++lLg4q0Vzj0qFxt6U7icWRqoz1qRVDcUwLnnvUijBpiW5IABjNIzUFs8VG5NSjSWwjHmmHPenqmQ +TRjNUZ2ZFz70gB/KpfLx0pQvNA7Mao9qsRp2NNRDVlEAxUyZUACEdPal4FS4wBj8KRlyc96hMqSI +/elyeDQRg0mOwpkjXkqpMTnrVphVeRapCbZV9qU9CAKeUOc01lIFMpPQruvcUzG4ipSeMe1IsecG +ruRa4bsU8E0jIRg0itSBruSdaa5NKD2pMZ4pDeqIiueRzTMYPFTHIH0qJsMCaoOXQYx5+tROCfyp +249O3rTHb05FUiHYjZO/pUTKc1IzduhHNMbkVSIkluRfdP4Um0jkn3p2R+dISeAOe9WS7WJo+vIq +7EmOneqsPBzmr8ZGM1nJmqjdD404NOfI49aVCQfao5ScnHSp3JehBIc5rOmyen0q5K/Wq2T0rSOh +MlcSJG4zirqoAOO9RxR5xnrV1I8YqZMajpoIkRIxUgi2Cp41AAPrT2C96zvqapKxGOBwKYT+tOwQ +aa4I6UCImbHfOaYnJqRlzREpJqugluToDjipApIp8aHjtUu3jis7mr1RW2ngGngYwRTm4JqMk5/G +jchOxKSAKiJBPSgNnNIOc4oSKcrkoB7UuG4pVz9af6UmESJlPWm981MwPI9aYQAKExPcRTgHtU27 +AHequeaQs3ajlHGVicmovrQpOKXv/SnsJu49evtTzxSc8Ggkk59RUsuInrio2PenE4P1ppweKaIl +uNOCBil2ZFHvUgwBQ3YpRuQMu3rTMkYBqaQZ71FxnBppktWHgn61J0HFRKPyqTJ7d6TLjsMK45pp +wBz0p55pPQjqPWmjN7ibv0pVzSKrZ9fepAhoKGdz9acD3pGXmkXNAhxbNRPUnHSo27ikim9CLcSK +YcY5qYLk9KXysjkU7oFFlZDjtzU4bI+lRtHjApBnBoY0gfuBVW4EgUFegYFvXFWeScGmFj0FCJcW +NjcNtK8jtU2NwGKh+zRNzgj6cZ+tSdsfwikaaWGy4xwefWolGMD1qUoG/Om4qidRcjFRy+o/Gn85 +/nTJBwcdqXUfQRBn+tTI23g1HGMfQmpHUVZm0ybdnmmMTz6UYHHtTTjNQzSLewDLCnhelNAU9DS5 +xgVLNFGyEdc/WoSDx+tTZ7daaVBPocU72EkmR4Pf1zTc9frUvOOaRACferjsYz3I9rgggdRViIgc +GjacDPenRqCMY5FNsz6ki8cA0shPWgALn1pkhJFT1NF8JTu2BGcd6z3Ib8Kt3TMAaypHIycGtoq6 +MHPlYryp069zVZco+eQKjZypywpdzMQDnB61ry2MZ1OZl6ItkH2zU7ZIH65qtG3T6VY5Occ1DWpv +Td4tCI7AEDgY61ExY4HryDUhUlcHt1qEcH2FPzMr20Y+OHLHPQ1N5aAVGrj8OtWYwSOOeKTvc1TX +LoWbJQeeue1akCDNULRNp/HJrUiABBB4rGbKhuLIoAqjcA/rWtIoYVn3EPX9KyT0OhrU5LWLUSPu +AFRafahcZ9a2L+LdjjpTLWPBry8V8R9Fg/4ZftkVQM8VfDDHFQIqKoPtmo57lEBANcEpKJ12uS3M ++wA5zWRcyGXPp0psk7TEgHgUm3jJ9a5KtU1jGwmAFGe1O428mlYHAwPwpdoIwBwTXM3qadB8QJ5q +zLhUxVVAR06dKmYtt9RiujDr3jlxL90rg/N9KsK54qJAoODzU4Ud/wAK9FJ2PMT1JGclc1yniCT9 +3j610znAOPSuQ8QP161yQX7xHpJ+4cnIfmb3Jpg57+tOfkn602vYWx5Utwz2qRHjRJFKBmcABjnK +4P5c1HRTEFFGD+VJQAoxRgmilyw5HHGM0AJg0lLQaBBSkAAevek560UAFFFLhiCQCQOp9KBiUUUA +EkCgQZOMdgTSDGRnpS0lACnGTiij0xSUAOBxU0Uu3knpUFKDQ0M1Um3cUkkSPWcsjDvV2Gbdx19K +S7MZVmgKHjJFQEYrXMauARVG4hKnIHFAWKtFLRTJCiijNAwpKXmkoELRRRxjFAw44x+NHpSUowR6 +HnmgQUf5FL3A6dqSgBV2bl3glcjIHXFOmMBkJhVkj4wrHJH44H8qZQfXrQAZpKWjBBIPamAHHagU +UvNAD/m2j0yaPlKg4PB5puTjr607leOOgPFIYcDGaQY3c9qCQcYH1oHfNADhj/69XrzH2WTBz+8t +enb92apqORx+NXLtGW2lxk4e2JI946FuD2Prxeh+lfN+rSMbu5x/z0f+dfSC9D9DXzTq4zdXAHeV +v51lXV6fzOnCO0mUt2Rj1pg757dKRWAODS8ZBHavNtY9RMACc57GpV6jFMyADT9wxgUnqMUkYA6d +ajwQccc049PSmnGRRYQ7JPXt3qQcjnp6VHgEYI/GnpuAA71LHccwHHekYDOBzTg3Ge9Kdpp30JGg +HB45FOAzgfnSgH9RQAQT6ipGO9cmmkcNUgA+vFQydDxjipW4zPnwGJPrSIBjjH0ptwy5A9806I+v +FdX2RpaFkKMc+lQH7xB7VOpJBFROvzYqEwsQzfdwe+KhhwGwM57VNNjBwahgwXyRW0fhI+0Xx9zJ +6gVXzls+/SrpUbPr1qlt+bHfvWUbDb1LkO7g1bA7ZxmqkBxjrVsZC881jLcYuT0WgEjn1xSZwPxp +uR69akCQOTnj3prHPPXNNycYpjZA/H8qqwhcnJ4xzQWambucU7BODQ0MCMkGnAtxx0oHA9aeF6UX +0AnUEqAKlQKASfxqAE8etTDpz1rJgPD9sVMhz19aqljnLVLGSR14pu4iRiVbd1x0FQ84PrmnNnAP +amFjSWw0SDoO1KDu4PHFIM4x+OKUZBPpUp62BkRGGPTpThzjikdeRznPP0qPJXJ9a1RO5bQgDPtT +JDkZFNQ4XNDtk0l5CaIdhB3dqXPSnEg8Dr61H0IHvVJaDuShiOlOD5wM+tMOMfjURc0WEWxIc8Gq +V4xKtjFTIeMnmq16flb0xTSBaGJMcuSB36VPbt+NVHJ34/nVmHbgcV0yVolmg5/d8+nFY0zEtzzW +tIymPnisaXaHPp1pUiG7MhfJ5FS2/L1EcZHpT0kVetdDWljJNKVzbRvk54GMVmXUigkmmvqChCAc +EVlTXDSHrU0aD3ZlVxCWiLD3hTgHn1qq8zv1NR5NHrXZGCjscM6kp7iUUUVRmFFFFAgooopgFFFF +IAooooAKKKKAEpaSloAKKKKYBRRRQwCiiikAUUUUAFFFFMAoopKQC0UUUwLlhP5UqE+teo6NerLE +mCOgryNSQQa7Pw1qOCqMfStYMzqxvE9GifJ61MzHis+CUMFI71eQFhk1umjgkmRyM2c1XkJPPSrb +IfSoWjJ4NWiLlcLmpo4m9KkS3xgCrSRkDpSbKIo4TxVkRfLSqBUo4qGxpKxCqAZBpcdKXJz7UpIF +Ar2GYxzSbgCTUh2kGoyM0yR4OasRgDmqyjnmrUfapZpEmxxxULjmrAIxUL857CpRpLYrsx6Ug6mh +x6UJnvVmIYGaUYprcfWgNSKQ71zRj0ppbnmnjFAMAuOvWoXAqfio3GSfemtxPYqPwaBzT2HPNN4H +FaGaeoE9qifk804mmt70JDchmBnrTgPm5oC807HNAkhG46elRPk9Kmceg6UxhgU0KQgPGKkQVCp5 +qUN6UNBFocV703GCPrUvUU0Ak0kOTHxrnkmrCdhUYQ8VKpI7d6llRFPAptPbNNHFJA9xMZNBQ/Sn +rzUu0Glew1G6KzR9CaruuSavOKqsBnntVJkyjYrbBzmo24yKtkDHSoioJqriSKTAULnBGankUelQ +YOSDVbivZiN6UwjFDsQPegMGGR607DbADFOY4PpTSTnpQ3I560C6ETOe/So2kB4FOdTgmoTjjrVp +EczFJHU/lUEuex4qQ9Cf0qF8kD0qkiZO5EWI+tLliApphbqBjjOaUHcT+IqiLiHjqcY4pQenPah0 +9fxpoDdCMY609yW9bMkVyhBzxVyCRiDVELxg8n1qzBntUtFJtF9JDjFNkbGDSpg1Wlduc/SpSHci +mPvTYdxb+VAXzDjvVqGI5zjpTeiKs2TRL8w9KuBKIYxx6VPwPpWTZSWhHkqMn8qjkk54p785xVWU +twKEriu0OMuTSs+QDUB4x6d6ccnhaqwXY/O41ZgUnGRUMUeSM1eiAUcVEh9SVAMYFLilUbh0pzLw +azNkroqPknFQkNmrEgPbtUQBz65q0ZNERGDUiKTyOlSKg704DFFwsxw6Uo4JoXHWlyBzmpZcdxGx +g561Cx9qlY8VCxpoU9xp5IoA5BpR1NTqvTim3YmKuQgYFN9PrVhkGKiKkGhMbjYcDxTxjGKYBxmn +dqllxGSHgVGMc561I2M1CWHOe5qlsTLcdu5zRvPSo85yc/SmlmPNOwKRJuzUZx60djxSYG7iiwm2 +SDJx6YqUADoajQZ4qULipZcBhByOKTHtU231pvHShMT3HRrnrVjaoxUC1MDxk1MjSLRBKnPpUIDA +mrEp9KhyDiqWxD3EwxOBUTKQfSpuKYzcc0Jg0rDdwx71IpBA9+lQEClV8HHShoamLIORUJHJFSkl +hz9ajZe4pjiyM9PpTeOaGJyAD2pCy0WBSsPTNITximZA59aVQD1NA9B3Qcd6MUnQY9Kbv60bgtBe +Big9eO9Ivz0Ec8GjqDY+H+tSNjBqFTto8zOcU7akuWg9c9KbzSKRnHfrStwcmhhEM9B0pAQajYnJ +FKOtSaJkmSo4IoUgnNNI60QgHPpQwRJjIx2pOATipCAuPeomYAkevNWtjGT1LKAMvvUX3WODjmiJ +x3PamswLH0oS1HNokyMZzURcAYz0pjswIz0odMA5780WCDumijcHcW5xWc/BIrSuMcY+tZ8wUscn +3NbxOSa3GCBJAW/zzTGhVTkDpUwKjj0pkjBlzVJu45Qio6CI4JA75q3DID8v5Vmx7ue9X7foo7gU +TQYd6j97hmA+lNCElhxUwVQfmp7BeCBjpUpiku5AIMkN6Gr0agKDjBFCRljxyK0EtgQCfaplMuFJ +sbAfmGelXV559KpSDyzwOasK5IzWL1NUrF7cAnNV3w4NPHI5+tQu3XH0qLGsnszKvY+cE8GoYcr1 +qzedDmq0SE4Ld68vFpqR9Bgpfux8tw204qhJ5srEZqeeRAcCoY+c+1eLVlfY9OCBUIB9v1qQA8ZO +aIyCfWpDgHj1rm3NGPYcCmlV255oOOAO9KegFSIFXAyaVnwo9+tCgsOKY3fIrtw60OLFbDQxzUyn +dkelQdenTFTRsOvNdyVtDz+pJIAVOK4rxCw5A7+tdfM2EJPeuK14knk1z01atY70707nON1oLE9T +mhuTikr1kea9w+lHNHHNLzQAlJS0elAC5HoKXe20qScHBx24pDgk9qHChiFOVB4PrQAHbxjPTmkw +cZ7UfjRx3PegAIIJB4I6iiiigQqsyfMCOQRSUlL6/TigAo570DGDnr2pKAFpd3AGBnnn1pOOOc0U +DDilAyQB39aTPWnIjsshBACKGOT1GQKBDRjB9aD2oPJzQevboOlAAKcrkd6ZRQM0LedgME9KmlTz +FyOKzVcr0/GrsMoZetLYopyptYio6uXC55qmaEJoSlpKWmSBpKKWgYlLRSg8EepBoAT8aKPWigQZ +OMUUHj8eaSgBaPekpf50AKu0HJ59qG60lFAC+9GCelJS9D60AFKDRj1oxmgYvP4elGKCACwyDgnk +d6X60ASIuCNwI6EGrFyS1o7HGTLBnj/YNV87inU4AABqe5/49JOn+utx/wCOGktwex9gL0P0r5r1 +df8AS5z/ANNW/nX0mCNp+hr5s1bd9ruADx5jfzqK38P5/wCZ0YX4mZTNjtipFPYfWmuGyM8d6RDk +E5wAQPeuBxutD0oy6MX7pPanjGcn0oK7hkcYpOcHjjqKz3KF3ds009sdDRtPB5oJPGOxoQPQeMMM +d84qX0z6cVAox09alIpSQbiluew549qBnH49qiOQe9TLz07DiiyEPyNuKXNNA70/joajRbFC78Dg +1HLnHHp3qTBOBUU2AD1zSW4zMmGTx+tOjIpkpy3WlGMj9K6raAmXI34PHaonbJ4p8e7GPypjYDAn +is0tSkQTZZev5U23Hzd/epJyNoAqO3zuBz7VqvhM0veNQj93n2qi3LED1q9xs561U5LVjBjkieJS +APerI5A9O1RQoeB14qwFK9RyKykxgymmqBkbh8tTHkAZpNqjv9KlNCISAOaiY8dOKsuAeBVeRT26 +dK0ixDV5yPQ1JyBUYyOgqTPGDRIocGXFG7nr6VFk9PfilGc/WlYXQtRsBjvU+cjI/OqkWQOvWrCv +2I4FRLQAkx36HpQjZ4H50SfMBg9BTE47H6UrDJiTgenNNAPGfxqRcbTTOc0g6jlbmn7gPbNRpjnP +5U7jv+VHL1Qrkbs2eoApAwOM96JOc4NMUYPPaqWwFgMMfhTSxz0yKTJK4NJ0HWiKExcnr+VMBOef +Wnc/WmdyPpVxumJjzk01uKQk0HPUnFN2vcXQdG2Dz0qrqDgqce9WMEDNZ963y8Z54q0riRkOfn/G +rEDc896qn5mOfWp4B8w5zXTJaDuX5XDISPQjNZEr5Oc8ZNaU7hEGTj2rFnlGSRjNOlC5hVqKK1Ee +QL09KhaZs8VGzEnrTa61BI4J1XJjixNNooqzIKKKKACnReV5kfm58vcN+3rjvim0UAWb+a2uLh5L +aHyYiFCp6YGKrUUtUhBRSUUwDk0UvTNJUsBKWkpaQBRRk9aKAEpaOnFFABRRRVAFFFFJgGTgjPBI +JFFFFIYUUUUCDjtRRRQAUUUUAFFFFABV7T7traVWz3qjSqcEGqi7MD1TRr9bmNfm5rp7aQEAV5Ho +epvbyIpPy5Ar0fTr1JlBDDmt4s5KkLam+QGBqPYOaYjk4qfPpVrQ57XBAB2qZQAPrUI4OakDUMFo +DYWkDDvQxyPWoC1Owr2JtyinfLVcGnhjQ0TcexFNyKQjP1pO1AyVMVLG3NVVfHepUk6UmitEXgRS +N0zUcZ4FSMOKz6mqd0V3XvQB6U9hTc7avoZ21GOB164qLJzwKldh+FRb9pyB6Uw0Ac96lQ1XQ8Z9 +TUy0EkoGRUTcVJ0/Go2PNJDlsRNioj3xU20kn9KClWmZ2bKxHIFIQR1qZkwajqiRApPNKBin4oAz +iky4keeTUZ9Kew5pu05qiGxpGaUetS+XxTtmKLgkxq5qQCjH/wBapEBIzUtjQqh8ZFTDBFIvH40/ +PHFQzWKGHpTDmnnvUZzzmmiWOU46VIJBVbIB4oDDNFhxlYmdwBUBbmh2z0po7U0iW7h8wzgUvHpT +s005NA9is461Wcc5HUVbcHmoygwPU1aMncpMB3o4NTvH7VH5Y5NXdCswI4FI2BipDnp1pjKDSKIm +NV3UjPFWcYPPSmSDOSKaYmr6lRcLnPemPyPapWyTgjFNYdau5PLoVymMmmhMDjtUrdKYCRz1qkyX +FBsLZPvxTiDtwcZp6kYB70jDr+NFwcUiLBOB/k1aiU46VEAf1q1HQ2JQuOBP4Gq8r7+D68GpWyci +o9hJyPXpSQWaHwIOKvIAo6VVjUCp1yOfSpepfMyyrkYHapM5zUGfxqTfx6VDQJiO2FzVc4bGetSO +3UVBuwOOeaaWhTtcOdpHenR5JHtS+nrViGNS2aGwtqTRR96sKmDzUsMfFSsmMcVi5GnJpciBGSBT +SwxjNDfLxUTYPNFgRG9KmM9KYetC4BqrCvqWFxTXIwfWm78UjPk80rDclYUMcYpf60wtx0qQe9Ni +i9RDmmMByal4NMwcUkEho4xmp0YcCoaUOBmhhB2ZO2DioWxmk8w5ppY5oSHKVx3J4p208k03rjFS +jOPahiiQmo2A6Cp2UDvUDHBpoJDNmKUIMdKUYyc/lUg5GOlDYRREVxyKjKtkfWrBHpURPIpphKI+ +MY61KPQiowc9+9Tj25qWOAhyetRkinnimN6mhCluNJ4o81sU0ik9qoVxxbOTmoww7UpIpQBQCEyG +4zimP0xipCoOaYwwRmki3tqRHpg9cUzHI5+tSgE8nik2gcmqM7DlA4pXHFMQHdUp+6QTSZUSpJwQ +BUJHJNWGHzU3YOc00wd+hBkcYqQAkZJpSir+NOUDtRcaXcNuRmoWA7VYZgKhYNSQ3uNUnIPSnnkE +96TANLx68gUdRkcjEDpzTFXIGM5qQ8fSlUZ5FVexk4u4gzkHHOKe2OwpGXoaDupNmsENIII9ad6+ +tICc8+9O681Ny7Mb3I9alhXk8VEFyfqatwqKAWjGSD+lRMB970FWZPeoH6kCrizCe9yvzuH16ClL +MGxUvl81DMvzD2qkZu71JHYnpUbSMyjNNMuFIHWod5zz0p20Kg/esV5WOcGqMpG7OeOtWrhupHI7 +1QnZj659K2ijnqbipu54OaCr4YHv0+tS2yliM8Yq20C7ct3o5rMI0nJGbCXDH61dgfB5596jaPDH +HrTogoYjuetN2aCCcJFltxPA7dam/hB/Oo1ySOeKshGKnHTFQW1aTH2zKCM89q0VuFAwKzUTaB2p +SG/hY1nKKZcJuKsXnO4dabG+Dio4A5wH5qQKQxyKl6DvfUtoc1HI23NSRZwPXikkXJIrPqbv4UZd +2SV9KzzcsPl7VpXSnBx2rFmOGNePmTa2Pey1XjqN3lmz+VOWRs/UVCSMnmnKefbArwtz2yzG7YOe +3Sn7+Ouaqoc7uakUke9JLURb3HGTR5h5zzzUO7gc1LxsBPWpatsImV1xnpULvy2aZuBHHNKQSuet +dlDc4sTsCsCDUsXtVcbj079anQ7T9K7o2sed1IryQIhJ7VyWqXUPlXCEEySYCnsAD/Oum1IqyYz1 +FcTquN2AfWopL97c7H/BMs5oxkZHbrSUV6BwMP0oopSTQAY646UlFKBngZJJAAoASpFddux1yvY9 +xTACTx6Ug3A5HBHNAD2QAB1ORnHI6VHTgGbCqCc9hQwUH5TxwaBCUvLbePYUlFAAKKSlGKACkpcc +E+4FHvQAUUlKASQAMknAoAKKCenbAIoJzQAlTW7Woc/aFZk2sMIcEE9D+FQ0UAFKMd6SimAtSxtg +ioacMikxouFsjntVRutSq5/SmOMnPrUrcp7EdFFFUQGaSjiigBaKSimAUtFFIA7H1oxSgfhSUDCi +iigBaSjvRxQAvB7UuP5UnrRmgBRSn14ptO68UAJSjjOaP5UcUATRJI5xGpL9lUdanvFZLeRGzu82 +3J/GM1WhkmibdG5ViNpIPUGrl/kwOW677X/0XQtwex9dA8H2Br5k1Wcfapz/ANNG/nX02o+Vvoa+ +VdUcC6n7/vG/nRKN4P1/zLpT5ZD45A3U5qUxqOnpms6KVQR6VdWUsMHpmvPnFxZ6cHdE64K+1Jx2 +6Cmhhgj65o3ZbA7frWDRruKR8q5/Gm4BNOYY47804ZAwaBjQD65p6gjOaau3JzT8DkCk2FhOoORy +RTkyQQB1FHUc9qVMj6UdAHZ46U4H0FJxyT34pwC7etZ2GOByOKhl5VuPepffPrTJs7eOhFJaOw2t +DGl4kORinDB69KJV+cgelPXaw6Z967G9CVsTp0GPSmNyR3qROme9MbO4VlfUtFe4yM8UlvtJqSbG +MdKZbKN3Wtb+4QviNHO2Oq2758frVkjMeD2qr/H6+1YR2LZpW4Ax7irWAR9RjNV7XgAVZJK/hWEn +dkvcZwp46DPNNG3p0/rT+p59M0m05H1ot1AawP8A9eqshz0q44yPfuaqScEH6VcEgGDIyG9ad96k +IUj+dIScfU1e4DuOh7U4D24FRFh0b86sxFRipkrDQ5B2px+bqakCgKCDRgkkjjAqbaC0It+DyO1O +AY4bkY6UuwA/yp5yvHSn6gIrlaXdk5HSoXbkCnqRj2FKwEocbs44oBGc9vSoN3v1pT09KLCuSE85 +x3qJmGSc0ocdvzprr8uRzVpLZiuTKcj3oBAz71FG2B64p5bjj8alqz0AXjk96QbSfSkyB81ISeSP +wqlexIrfL0/OlXpzTFDMSCfepFIzj2oGMbIPHas6+YBfQkVoOxznHes2/A2n6VpDfUkxtwzzxTzc +JEeDzVaRgATuGQQAO5//AFVVZy3WvQjT5tzkqV+XRFue+MgIqkTmkorZRSVkccpuTuwooopkBRRR +QAUUUUDCiiigQUUUDGRngZ5pgFFHGTjp2opoAop0kbxO8brtdGKsPQim0OwBRRRUgFFJRQMWiiim +hDk2bhvzt74pDjJOMe1JRVIApc4GAcg4JpKSpYC0UUUgCiiigApKWigAoooqlYAooopAFFFFAEkM +jRspHY12nhzVDkRk9eK4cVq6VcmGVT3zWsCZq6PXbafcBV0OBWDpdyJIkbPUCtYMT+dbpHnyVmW/ +MBFOVwTVPec+lPjbmqsZ31LZY9BUTdKcTxk9O9NJzUobVxRinY71EvBqwuMc02CVyLvzTuSKHAz9 +KbnnNAtmNIYdKA+KGGQahZj0/OnYLmjDLzzVsMCDWRFIM9+K0YpCQKykjaDHGo2xUzEYqtJ7ULUm +WhGxHem9c0j0KcirZK1HAe3SpVwOTSL0FOAI61JVhSeKjYjHHWn9c80xlwcmmhMFOTzUmO9Q7tv0 +p4cmhoItdSNx19qiGDUzEmmBTVIh7h1GBR938qcARxSkZGKB9CBgaFXNPI6U9eKZNtRyxjFKUxTl +IHApxIPXtUXdzXSxBsHenBSDxQTz70o+tVqZ2VyUYpeB0pBQag02QyQ4qI7ulTHnrUeBnvVIzZHj +1pGBxUvlk0Oh2jNO4WdiuTnp0pVBpDkcU8ZxTJSFznIpM9fWnAd6Y2AeaRT2I2IJpNozS8ZFLxmm +JbkZTrVd1IJHarbMOlQtz1+tNXHJIh5HIprdsD61JxUbe1UQRN0JqJm4HaiTcM4qBmySP1q0hc1h +GOWIBqN225HenkYG41FJg8jqKpEtsjLYxSBxkntnjNMJzk+maASc56dKuxKbH7xnjipcqe/bNVcc +5qZCCcGnYzcrkifKcmrAdSP61XOeF6U+NeCOvFTYd2kTqGYipwnGRxUaEYFWEIOcVDNE76Ddp4Pr +TlU9DxTyM4pcY60ritqBBFMLHpUpHHWoG60kW0Gd3Wo+R8op5PGKQAnmmHTQkiDHrV6IBSKqxA5+ +lXUBOKiRSLsW3inu2BUKNtxQ7k4zWNtTbm0IpM9SKgbORUzsOlQse1WjMYcU3vTtoNJgdRVEsM0A +09U3UuwigQ1ec1ImTSKD+dSABelJjiA4zTaf7VFnGVpIqQh96j5zx3pWPOBT1Uk0yVqMwetLUvl9 +vemEcii4WaFXGM5qRSMYqLrx+tPUcUmVHcGx0qNvpUhJx0qM5NCHJEZ4Ipd4B5FIcZqNgTx3qrEX +sPLZGc+tNHPJpgz0NO6/hRYbZMoqdelQpk1OpzUsqO4EADpUL8mpznnFRsvUmhMJkGORzmpduRSd +CDUiHFDCCRC680xSc49amlG4n2FQrwcnmhbFNIkYccVE+30qYgHvUUgxihCkMUjpT2XjmowR+NKX +HQ02Edhp4xj8acnNMZh+FPQ80MdkyJxg0o5BNEgO7NRhiMiiwcwNgcULyPamlt1OXbjmmLRsUgYp +jDd7VIRk1HnDe9MV9RNpFIe9BfPB9KAcge9It2DAJ6UseB8vWgDg9qZkDnpQJ6O5KQP0qM7uM0eZ +2zijlhz2oasUnfYQD0p3brTCe1Jk96Virkg5OO1WIyAKqJyTzxU6EqAPanbQjm1HuT+NRjJznrSs ++WNMEmSQfpVJGUtyYJuB7Gqlz8mSfSrAkVRk9jVO6lV1J9+KIp3LlycpCrhs9jzVd5ME57VGJGyc +nFRMzMSCefWtrHMpK+gyeRh36VUklztBBP0qeQMeCfzpnlNgHjIHFaR2JqbssW7KBu5xnpVgTqRj +68mq0a/dHTnGKsCBs8eualpXJhN2sQStgg8jH9aRJACSc5OeaWdXpYkLY9qq2guZtl23bnmtGIDO +B0rORQAB6VbiYjaM1izplHRMk2OpYUqR5OfWkZm3c9PWrMG1iO3pSbsiYwuxyLtwRzTSDu7+tXRG +uOKrzgZHrWakaunYfCxyT606Rh9arI5z14qwzAqeKlrUtP3SjcEYasCfG5s1u3GcH3rBn4Y+uete +NmR7+WfCQBev50oJ+buaQ+9JHjcTXi7ntEgJOAKkTI7+lNUHd6Ggbv1pEljPp+dIH9emTTOi5PSh +MHJ9KGuobFqJG7jip2XA5FMgPA9KklYACu6jFWPNxMrkIABz+dKOeh4zimHOfapF4+lbnFbUzr4N +tPvXF6of3jV3N/yDjFcJqbZlPtRR/iHZJWomfR6Zo6kmjiu44QqZIPMjdxIg2KSQTyfpUOaWgA4p +OaU49KTpQAlLRRQIKMUYooGLxgnPpxRkHJxznj0oALEBQST0ApKAA7eMHtzR6UoHOG6Z5owKBDaW +ilc7mYhQoJzgdBQAlHHal+YjGOBkn8abTAKXJ6UcUlIApcnGM9aSimAUppKKQC0UlKQRkelAD160 +r9qYpxzTjxx6UilsMo45/SjsRSUyQpaSigApaKBn9KYAcc4/ClwcA9iaMUUgFbZubbkrk4z1xS7P +k8wMMB9uO/1xTeKTigYtHHHNJRQIKKSloAXijiiigYo96X8Kb1pwJBBHbpQMO+KXI60nc+5pQM8A +Z47UCFQFmAXkmr2oYME2P+fiID6BDiqkQLEgAHOTmrV/xDKDj5pYH/NM00D+E+vB91voa+TtVI+0 +z/8AXRv519Y/wt/umvlPVI83E2f77fzp3tBhBNy0M2NmwByeavwFu/GapKCCMVajkIPI7VxVNdj0 +aWhbJBG2lXqfpUBcnripFYk1zNHSiU8n6dKUE8e9NBx14zUmRj3NQVcAQc5/Knx9Tn8KjDHODT1O +09Mj+VTJDRNkD5cdaQFTwKXPp1pAoOMCpEOGOvU04qcZ+vFIvy5HrUhIPHNJ67ANwRx0/wDr0xyc +Ee1SdPrUUgJUkfnUJa6lGVcMC2AOeaRQcY/Wmzj5+P0p8XYHPFdu0RLYsxH5Se/rSScn9aWIdOaa +xOSMYrLqUtyKb7pzxiorb7w6YNST9DTLYZIrVfCSn7xp4Gz61UJ+c54qy4IUAcVVUZbn8ayihtml +AenHQVZyepqtbYK49qt4G09yOawd72EJk/iKAc546UmTz2pF+bJIwDSswEkyo2+tVm5bPoKsOBx1 +461BkEk4xntVxTsIZkD/AOtUTHg569qefU1BIDxx6VqkDE3dqmR3Az+lVmcD/Gnh8j2qnDQXMaEc +xOMirQkByfWs+N147fXtVhVJHB96jlFcsYHByKQkc+nrTAG5A+lDLjjPpSsh3GvnjHQU3k4zzUpG +Fwe9NA5wBUDE+bPr2pxBABp2KQktnJ4p6NCuVy2DjmnljjjvSMFI3U35h9BR1AkBwM8UqtwKhD4D +DOakXJ5p31AkfoAee9RtupxI9eaYWJNO6EOyeM9O1LyTkcYpo44PFO5HPapBsaz8/NWLqV0u0jNT +6jeCMFR27Vzk0zyMcmu6hRbfMzjr1rKyGO5Y5plFFdxwBRRRQAUUUlAC0UVLbW1xeSrDAheRgcKP +agCKinzQzW8jwyqUkRirKeoIplAgooooAKKKKYBTlbaytgHBBwe9NooQDnZnZnY5ZiST7mm0UVTd +xJWCkpaSoGFLSUUDFooopiCiilpgJRRRQ0AUUUVIBRRRTAKKKKACiiihAFFFFMAooopAFT2z7XB9 +6g9acn3hVweomekeHbndEqntXVIcqK8+8M3BBC/Su+gclVrqRwVVaRNgnpTwKTvzThjNMysSAkda +RutBx+VN3YIoE9Ayc8DtmpAzDn8qjx3oJPQ0WC5KZAaaGzUJzTkJ707Etk4IPWo3TJpwIxxT8Zx9 +aQ0V1+WrEMrA800qBmkUUmXBs0BIuB3z1qKUY5qKNz3qdyCM1C0ZpJXVysDmnAYNNNAzVMzTJ1Jw +KXPP0qJW4pQec0rDuSimnBzSnFNpIGRv6UzNPKnNIV9KsgATUijJ9sU0AninjikwF25ppyafjFJg +ZzSKZEwpPr1qRvmqMqe9UQwDdacCcdeaYFxS4YfnRYaYpBJqSMEGmg5NSLkdKTGtx4wcj1prkU4D +IpjjjFSty3sNJpVwSMGmHOKA2MVRCepOAKYQTQHGPemlqk0urETAd6aowacTzQAKvoZdRxzUTHOQ +e4qQ9DUbc8ihAyFsDApNxHvTm5phAqiAZjjNMOWHpSng4x2oGaYXGEYGKjbaMj2qZhgg1E4znNND +ZUl3duaglDMdzE5Iq4cEVWb3xWiZm0Qk8Y61CQQT6GpiMe1NYZHpiqQmrlYgZP1o6Db6d6ee2BTT +wMnmmTsxuCcHtinqSOepoHYU8KM4xRcOUUgnB+lTx7Tg46VEME4HNXIlBUcUm9AUbkfzZGOmatRc +nkU3YB1qRSO3tUt3HFNMlGOaazHNA/nTHOB1qUaMczYAxUTknkUxpMUCQNwetNKwnK47dxUkQJNQ +A5OKtW43GiWwQZZij/WrSrilhQE5NTFawbNeXqMAOKa3TnpTyCOKY4OKBELVGx6U9sLUXGDVCSY4 +57UKMnimqc1KinOfWgHuPRegpzg0iHBpZG4zU9TTSxCSRn2pytmmH1pye1UZrce/SoW45PrUpHeo +mBpIcxmcnirEeKgAI7dakViOBTkhQdixxUD07f0qNyG6Uki5NMAead/WmLUgx9aGTF6iE4HFRljg +1Kc1Gw7ihFTITw2T3qQDJJqMjoPepk4IqmRFXY3yxyaTy2zVnC9aa3tUpluKRCoI4qZaQDnNLg4o +ZMdxSG9etM7c1LggHNRPmkipWItwyCaf5g7VExHNMyauxF7E5fqai39/Q00seMc0gXJpWHcnVuhp +r/0pMgUckEdaByI2qBn5NSv0xTCveqSIuIpLU7Jz1pBntSHqM0Fpiu3c1AfxqycbfU1XCnPtQiRm +WBwakTkewphBzUqkYAHemwje444qIgZ57ipSMDJ5qNuQcUkN76kPJPPrUgzkdxSbTjinJge9DYx+ +OKhfGPSp9uf51G4HOO1CGyuRipBk4pwXIyRxSYAOe/ShsqK1AgdelNOKccZOeKaAMUkVIkUZH408 +Hp7U1TwRRkjp1qjJfEBOCD75qEuQSPWng8nPWo5sZB9hVRRnPcY8mM9apzS9B3qxJ83TGapyrkEG +tI2Id2tCsZSWJzg5AwabIxY98VGTyQenWlPGBnjtVmS3sB/hz3qZFJXPQ96Yqhse3SrKcKSQaSeh +dRaiwqu7J7cVdT5uuBVBJcgEDHNP84gYB6UpRbCnOMUS3EanPrTI12dKNzOuT1BpqsQWyOvehJ2F +JpstKQe9TIoAPt0qvArbs9qtIORmplubx1gPbcw68gVJFvBGOaVQD2pV+U/hUvUhNosJcjoeveh3 +Vx71W8phjA79amCkVPKi+e4eWeDT8nvzTVz9MVIRkZ/WokzSCuinc87vpWBcAqxx1JrobgYU/SsK +4HzHHT1rx8yWh72VuyKPJPIzTlPPA6c5p6ICcn8qciAscCvCZ7fMC7h83vSg5OSKApOc9j0pQGx9 +3ODwaGK9x33l5qSNRjBGBigIFXJ4PWnRntSXmJvQu24A4FRT56deakQFFLenFQy5J64rvpfCeXiN +xFJ9OtSKDx9ajHJAP51Oh7decZrdI5iheodpYVwmp/61q7zUWYRnB7V5/flvNbPqanDr32dlV/ui +oaSiivQOAKKKKACl+Uj3pKXNACUUUUAFOyCoGACCST60nfikoAWlJGMY980nPWkoAXOTQTnHtSDk +0tACetBzS7iCc856g96TqaAD196SlooEJiiipIxB96Utgfwr1P49v1+lAyOirMVut1v8kqjIhYq5 +6gc8H6VXOehPTimDVhKKKWgQlLxSUvFACinZpgp1IpDTRS802gQUUUUCF4waKKO1AC8c08yAptMa +7uPm5zx+OP0pg6jIzzzSUDCiilOOMfjQAlGRx7Cg0UAFFAOKKBBS0maWgYueg7Cik4o4oAcCMdKU +k5yODTc9aUEcmgY5fQZx3q5d82rn/prb/wDouqydSyqdoNT3jD7MVHTzYvzCULcTfun19/A3+6a+ +XdV/102B/Ef519R/wN/umvl7Ux+/n45Lsf1qajtA1oK8mYpJBz+VPRgOvalIG7PSmgdPSudu52RR +MuSf0xVhOB9KrqDxj61OpHGc1hM6Iko+bGcU8EE/pUfGM09c1myhcgduak3DrTAe59aVRz7CoYyf +qMipU5BGOagHHQ9KsKy4UAHPc1Ng6CsoAHFJznA/OnbySCMDtSj/AHj61L7CGkbhzUUh+UrUpB54 +79agnyFJ5pJe8V0MiYnzDk9+Keh4PHFMmwWz6U9MYGB6V2PYFsWlBKjPemYOcE09cAc/lUZJB496 +xRa2IZuASO3FLaMN3TFMnb16elPtDz+late4ZxtzGhIQVBzgVUXh8frVuQgryMEdKpp9/ArKOxT3 +NKEccVbHGMnrVeDBAOenIqZ2XisHa+omNLEH1pwyQOfamHGB7nJpcjPXFG4gYqvBPWqxY847Hk0+ +RvT1qHJPA71tHREtj0Ab/wCvTbmNUWMhgS4OQO31qaPBGOvNLMg9OaNhsxpWwcGovPIGB0qW7XAY +ge2ayiz55rtpR5kcVao4s0kuyDgnnsK07e58zHP4VzoZh0PHNX7WY5A6D1qqlNWJpV3ezOiTDL1+ +tOZeaqwsTjHbqauBiR7V58tJWO9aq4zLDkjNJxnI/KgMDnvTsrnAHQ0m0AAZ7dKjdxnH1qXIAPPT +moJMZyOpNJIVxF5GM04gY9BTFyScinMafXQbIipAOB3qVTxknt0qPcv4VJHg89frQ3cQhJYZ96QZ +A4704gGm59RxTtoIAT0qvd3IhRgD2pZphGrHNc7fXbSkgdK6KNHmMK1VRRBc3DyscniqtKc0leil +bQ81u7CiiimIKKKKACikpaBBSq7owdGKsvII6ikooGOkkklYvIxZ25LHqabRRQIKKKKACiiimAUU +UUAFFHFOdChwSD8oPHuM0wvrYbRRRUgFFFFABRRRTAKKKKYBRRRTYBRRRU2AKKKKACiiinYAoooo +QBRRRx2p2AKKKKkApQTx3xSUq4yMnAzyaadmB0Xh6XbKAD1NekWT5j5OcivKNKlKTKfevTdMl3Rp +z2rqgcddamrk4p26mgcUBTWhzDtx70hbHFBBxSEdKEiWxUkJ69KlG0ioAhzkHipVJoYkKeRk9aOR +S0elIq1x69ql+6CajUggCnEnPFIbVh2c/Sm85pcikz+dAXHJz1qUtkVArcipQalmid0IQKMcY9aO +9OOOtBJGcg05aOuaVR0Bp3Eh9KFzSDAp69aRQzbS7cVLxTW5NK4OJGB2xT9vFIMdadximShSuaiI +OOKlOaa1CHKxHgnHbinCMmlAFTIOOaGxKNyDyzmmkZq0wHSoW47UJ3BxsMUVIoNIMDpS5PIFDBId +yKY3NPxxzUbZOcUkVLYjcnpUTHtUpGKhPXHpVoyYoYgcmlLcVGTjijpzTsFx4Pen8nGO1RLzT0J7 +9qQ0KQeO9MccHHWpOuaYetCBkYU9TQEPJNS8GnEDFDYRiUypyaTt9KsMMc+tQ7QATVJkNWGZzUbE +c1J0PPeoZMY/GqW4N6EbovNQMOf5VMc9KjfFVqCsVn65OKicHBxUzjPWoXB6dqtEy2I8dM96YVXm +lY4PrSO3cfjVK5Fk0MDHd7VMpY1VJbODz3qRGOcj0ptEqXQsRuQ3FXoGI+mKztx7elTxyYxUtXKU +rM0GOQaYvHQ/WmI2Rj6Uo+XrU2Bu5OCMD3qOQ5yP1oB980xs59qLalbojZgevPNRZ5x609iPr9KF +TIz61WxnYdCDzmtS2XofWqtvEfTitOJCoFZTkaxi0WogP0qToaZH70/IAzWDN4sY3Aqq8mM8/Sp5 +GBBNUJiAcjmqiiZeQrvkVGvPSmZzxUiqOKvYRIgOKkxjr1pV4GKRuBmkJiFiO/ekZi1IcUlAr6Ds +Z609QMYNRKcc1KhHShgh23Ixmo2HapSePemYOaSLktCOm/U084GaYRVIgNxxxSjGKAMU3HegBwxx +injrn2qMH+dSJzx70mOO4pJxUZyamIHaomU/lSRUhh6Ugag4yKOpP5VViLkgPvRu7Gouc5oB7elF +h3Jl6VIufrUI61KAR0qWNbkjAAVA2anPT3qBuOTSRUiHAPBpGjz0p+eeO9PRc1VyVG5XIIGDSA9x +zU0iYyar4xTTDlaJOtLuwMUwE44pCelIY7aMZ70hQfrTlIOKXgfhRcfLdELA5IFMIyTmpTtzmmuO +pBp3Ehq9CKaVYfhSpgVMRxn1oYR3IHVV570JjH0pZGXOD3pB8uaBta6CsCeO1R7MZwakGDnNMY0x +PcacjikQ4OKeQWB556VGOMUimPLdqb06mg5pARz6+tAWQ/BwB+NMZDxzTww57mm7snk0tTRWI8HH +NKnAJ70A7jgUrHb+IpxJqPTQFBzk+lOUbuppiEsKVeMjr71b2MIv3hWXk46VBNnP86tNgdfqKp3J +O3dk4pxYT7kDcYNQysu09qZJLgH0zxVF3lbIJrVRuZqolGyEk5cgdfWmBWBGeajJO7knJ4q2ozt7 +E+tVsZ83kSxRkgN0wanDY+U9+nvSpgBs9MVC7gOamOprWXVC7B2IFKsB5z61FvJYAVOGIxgU22jF +Q5mPRQEwOc1CSA4H+RUqsW9wDzTNrbtwGPShMco9i1EQBjpVpf8AZ5qpCh4P860IIwQPU1nI3pNW +sLDuyQe9SrEdxx60D5Tj6U8ybSM9DUsXkOUHvTivFOjZX98U9wMZFQ3qaxgnErBcdKlTG3OajGOR +k9aFOCVNJlRdiKfGDWHNt3Njv2rcnztOa564bY5NeRmTsj28s1QIADzg9qRBhmGagV85PIp0chU8 +5+leA5PY9zlLIXg5PemgE5xwOKQSjaeKaCw70nJhyk5XdnmnwpzkU1SqqOMip4WjOMj86cXfciZa +ZV8vFVCNpI6c96ufwmqky7SoPUjP0rtoPmPOxCGcnGalj4qFV471IMjFdDbtc5Ursrakv7onPavP +L3/XP9a7/VZS0bduM1wM0c00zLGpZvmbA9AMmjC6yZ2V9KaKlHFJRzXeeeLmjJPWkpeOv6UAHWjk +UDiigYdquveQ/YI7P7HGsyy+Ybj+Mj0+lUue1HJoAWggY96SlOz5ducgc/WgQCikFOHOT04oGKpw +cjjgim89ulFFACetABpTn14pOaAFIGeAR060Y7mm0vNABxxRSU47c8ZxQIbRSkYPXNFMBKUZJAAy +TRSqzIwZSQwOQRSAbS0lLQApO4k4AyScCgHik70ozxQNAc0nvSnNNoBi8jikopaBBRS+nNJQAUc0 +Uc0AH4UoPOelJRzQAZ4IwOoOaSlweTQMc59OKYCUv/1qKKQB3peNp+XuOaQUoJHp3FAwyep5J60o +z2pOeaVSoPzDPB4z3oAKdnPJ+lNGMjPPrS9qAHJy2BVu93JbmM4/1sbH6lKrovzAA55xmrusBc3B +HX7SP/QaFv8A12FJ6W/rdH1znCP/ALpr5c1Vts8v+8a+oj/q3/3TXy5qi/v5CeV3HNRU+E3w+7Md +m3Nzx1oDAn0HNJL1I9BUag5rJLQ6U7MuREngHjrip1GORzxUEKkgde1TjrgHiuee51RehKPpT0OP +yqNTipF98ZrJlDsjIP5U8HOaZ0A5pUY5z6VDGiZckgj0qdAPx7moMnPAxxU8QOBn6iobGx5IxyMU +g+8VHTtQTkjNAHUg0mKwhyPxNQzgbBgHODn61Yx6+tQT524HFJPUZjTE7zntxTlI44ycdaJQC57U +5Vx+ArtvoCViwp46cUw5zgDrT0+7nHFN5z9elYlIpz5796ms8E/jmknUFvapbMAEA/U1rJ+4RFal +yUZT0qov3uKuzHC9OKpDGcg81jDYfU0YR71OeBg1XgOVxxwOlTqcgj8M1lLcBvzdD2p4weaQnoD+ +FAyQPboKGA1wOQaiIC81K5Jx+VBTgcdeM1cWQ0LGCCDjGTS3Jwn1FKo5BJ6GicA9OT6UdQbMq5Qy +LkflWLLGyNjqa3JCykg981Vlg3cjrXbSly6HJWhzamYQFXB69ants7hwOad9m3cdanhh2lTjFbTm +rGFOnLmNW1fgZ79qtknA7c1TgwAAemamZ+hJzivOnqz01sSA8k9qkDAk5xVQOGIH41OGOM4xms32 +GyQvwMYFQu/PTpSvjg5qLOc801YRJhhg54NLk9CBTFbCjIzmlbPakk7g2NI/nUkbY+UjOah+bgGp +U5yKtkoc396ozJhaJMYI+tZd5dbFwDg4rSEHKyIlJRVyrqN1yVU1kMSetOldnYk1Ga9OEVCNkeXU +m5O4ZoooqiAooooAKKKKACiiigQUUUUDCiiigQUUUUAFFFFMAooooAKKKKACiiikAUUUUAFFFFMA +ooopgFFLRTsAlFFFIAozzRRQgA0UUU3qAUUUUgCiiigAooooAKKKKQFi3do5EPuP1r0bQ7oSxKAe +wFeZqSCCK6jw7fNHKiMetdEJGNWF0eiiQgcdqnU7hVaDDqpHPep4/lPNbpnnSTTJQKXAIOB0p4QH +8aQLzQNeZHtbvU6AY9qNu7g0qgik2C0ArnNNIzT2PHFHB/CkMjBKn6Uu/rmnMBniowDnmmJskUkm +g9aQYAzS470gQijmp1wag6GpY+RzSZpEkAHXFO9qQYxxS/TrUgIBzR70meaXjA45oBCA8807ccik +9cik+Xg96YmShhik3ZqPNOxRYVw3DipCOlNUCpAc0MIoaeKYx7AU9wBz6Uw+9CFIVCKkDAEVDnaO +KTeTiiwKViwXqNufam7gaTOeKEimx4GKcvY01c808deaTBbg2etNxzTiR2pme9CBkbDmk2bs5p/B +yacuM07iSuVmjxURBq64FV3zVJ3FKNhiU8EU0HAINPG3ihiiNLYzTSemaVxxULds9qaE3qTBueKX +zDVZmwCc04MSBRYakyVmz9aibv3oB9aa+OtNEt3ExnHNQuAQR355qTNMY00DKr5Xp+NN4PNLKCfw +60i7efTJxWhmRunYiq0uUP4dKtnHUcjHNQv8xPFNA9ik5OQaaSOwqR0J5XGajVRzmtDNXvqNO3HH +filBxmnbF4w30pWUAE+mTTuK2oqkE4PapIhzzUUZBznrVmMAmk9AXvFhR3pxVhgj05qSKPI9aWRc +fhWd9TSUHuMGcHNABIwad0Ge1OHAJoCPYqFecmpYsZHFNcAA570QN8wzTeqBaSsatsmcVfAbbxVS +34Awc5q4p7VzS3Oi6sA+XrTycimHFGRikIjkIxxVCQnNW5M5NV3UZq4kt3IgDnNWUHIOKjQZ4qcY +FDYIeAMCmvil4zn2pppIcg4447Uwg81IFBp230ovYOW5BtxUiLxSMp/GnrwBTbFbUdjjmk6de9PB +zTWOakp7EZ5pFFOOMZoXHcVVyUtRfLA59aZImM981OGFNfHpUp6mjirFYDnHanrgUU7HQiqM0tRT +0zTSDzTvemkgmki5EZGDSYIP1p7cmkAzincztdibM9Onel2YzUyKBxQ4x2pXNOTS5AvWpQef5VGA +c5FPXGabJW4/OcjpTDginE/zpnGSMVJTIyp7UquRQxwOOtRFz17VVriTsSu5qAj19aYZPegNuPai +1ht3JAKQjmjPA5prn3oQmKHCml3k8VXOc09SSKqxPMO70evpSAnoaU5ApdSkM6E4pxf5eT+FMbkY +/Oo8c45609yG2KSDTw3A/nUbqd3HcUoyKLFJj/rTGI47Upzj8KjbDfhTsJgCwI9KeACQTUQzgZp5 +zxih7AnqI3DcVG3HJ71KwA57GmMofipRo9FYYrtyR+NKz0EBfakOMZNDGth8fU5qRwMfhUMb7Dz3 +pwkR92KrlJc+g1RwfekLbeB2pRyc+lQSTKrHdjjpVbmd7SLBkyOap3EqhGGfrTWnTaW6j0qjLKSD +zxVRRNS9xJHDrgYyOlQYPPc81HvIO7pk96N+c9zzWtmZJR6kT5BAxjPNXoiSFPpVQ8sGq7Bsx0HX +NN7EtpvQnXkHtUZRs++7vVodOFoYLuArNPU2mm4orsiqQQKcQc8Hrmnuq5LHtSqAwGR0NXcw1Ios +5IPHbNWVQAjinx25Jz6c1K0JHNS5I0UHYeNoHC/WrMIAWq6c4XHNXoQoNZSehpT+IMAc460kgyoq +c7cZ6VEwGPrU3LkrMSNth/rUnnKRxVYg4569qaN5yRwaLCUnYm/iyfypGGGyKaS2RnjmnsRgZpMq +LuyKZgwP0rn7vh2PWt6U8EiueuXBlbNeNmb0PfytbkG0A5HUdqUMOnfFRhwCRUsQBPNeBJa3PfHK +R09ak3fL9aj4x25PSgFu/wCdQ2BYDYXHapLfaSDUAzj0xU0QwQ3NOJnI08ny6oy9T1q1yUqq4JP4 +16VFe7c8vEv3gTIwakHP1qMfKv0p6lMGtXqrHMtGZepkiNyewNcLcOQ5wSDk5I9K7XWG/dsQeg5r +h5s7z9avCrVnTiH7iRDRTgvG4525AJ9M02u04QoopaYB7ijmjjvS8DPrSGJRSgdfp0pKBCU7ccYH +GRg470lHU465oAXjt1pM4oooGTW4t/Nj+0FhDuG/b1x7UTmB5JDEhRCxKAnJAPQZpi9DyPpScdTQ +A3nrRUsckaCXfHv3oVBzjafWouaBBRRRQAZ4FJS0lAC8Y988UlLSUAFFO+XaO7H9KbQAUUUtACUo +NKwKkqeoOKTmgYUUUUAJS8UUUAFLSUUAGaKKKACiikoEFL1pKWmAUDHfoaBkYIOMHiikAo60lFFA +wNKMZGeaTJxS80AFPX603kn3wKXnPFA0WLVkEsZcZXI3cdqs6wyO906ng3jbfpjio9PCvPBG+Nry +AH86fqnyG6iwAFvGUD2UYpx3t/WzJlt/XdH10fuP/umvl/VCwlmHON5JHrX1Ax+R8/3TXy/qh/fS +j1Zqyq/CdGG3ZgyHk8Ui5LAZqSRCW49aRE+bnrWd1Y3s2y1D0BFT8A1EoKqMnqKk3dc9K5pas6or +QdjmpMjI/nUYb1654oYkdPwqLF3JTngdqeinGKhjYng1YBAGPWoloUhcspx2qdWOQR0qvn2qZAcD +OOlZsCVnHGPalViCOOKjBPANOy3GOcVLaESZOSKjuAChoDLnJpJm+Q9R0pLcZkOCXOOfSnA88cUO +p3nPfNAAyc12dAWxOuCtIBzT1xs46CoiSCCD71ki7EUxUfzFS2Y6ntUErZP0FWbEjp2zVy+AzjuW +piCv1qmind6irdzwODVSI/MBUR+EOpfiA/DNTgAdqZEuQM85qxgEcc4rB2Y2RuGxkfhSD+VO557U +pU8Dv7U9xDePWlYqAB3qPlc1EZCM9+KuMW3cTLKHoPSnOD14AxVMSgEVKZcrk+lDTQEE0QbBBJqo +29cjFaORgDP4UjQBs5H0rWNRJakOHYzPQ4qRcn/GrbwEDHHSomTZg1bmnsJRsAcDp06U1nJwOwqM +t1oU5OeneoaNCaPJ/wAKnRiFHtUAbjjuMUoYjvUPUCdpOKjOCcD24pN3f04pm4jgc0JCuWFycD3p +5OM1GjGlLdfTFFhXuNLAfWpVYAe4qu2QRinqc9OeKqwgnk2qSenUmuavJ1d5B1zWlqN4QgTngHFY +DtuYmu3DQ0uzhxM9eVDaKKK6zkCiiikAUUUUCCiiimAUUUUAFFGMUUgCiiigYUUUUxBRRRQAUUUU +AFFFJQAtFFFIYUUUUxBRRRT3AKKKKOgBRRS1WghKKWkoaVhhRRRUoAqa5kt5XVoYfKXYAVznJ9ah +qxayWcfn/aITKWiKx4ONrdiaYFeiilZmY5bk4A/IUrAJRRRQAUUUcY/rQAUUUUgCr+nzGOVTnGDV +CpInKMCKuD1E0euaJciaFOc8VtGMcGuB8L6oE2xN1rv4m8xQa6EzhqxtIljYdKewA6VAcqaPM9TV +WMmyQMCfxoY4qPcOooDZp2JuLvwKVXB6Uw9DSKCPxoETgg80x+tOUYAJpSMnpSKsNHSnfLjp0pCO +valXjigLDD60qtg0NxTM9MUWHFllWzyKfmoYzn2qUkY61Ixm45pVPXmm9+elKg6U9BakgIIwaXBx +SAcn2p4HFIdrjNuKkAHegZ6Urcc0XFYBxUgzimqMjNPGRzmkykhjc8Uz2qV6YQe1NEyWozBOTSBe +pxUgXinbO1FxcrK+DnNC5JNPddv0pECjFO4rakijFOyOhpOKUdCalmiA4FRvzyKeaiamiZDcgcZp +6kdahccj0poJHFOwkywx/wAahbJzShjRg01oDdxu00vIp2COlIc4yaQ0Ieagcc8VNnjjim7SefWq +RDRAU6k1GN2fSrpiPp1qNo+M00xOLIM+1K5OBjqKCNtNJ/OmJEZLY96bnIpzt2qM8t6UwYjgEVBt +IJ71Zzmoj1pphJEPBGPSonAFTsO44qu7NjpVoh6LUjIGD+dVmHUfjVokbcHoKh45UVaJepXwQQD0 +71KTxgjNI4wOlIGP4UydhyDpirMbHPPaqoPoamBHFJjTsasLDGae+Dz1rOimIIHrVlZd1Z8tmaOe +gvTFKDgHntSMQajJP61ViE9RshBJ57UQhsg4zTTU9vhjijZFPVmjbE4+lWNxNQwpjvVhR6flWDLV +x64701qkwT2pGTipKsys+OtNXnrSyAqcnmmg/lVdAWhIFAzmlCg0gORS5pFaBxzSHIx70/HFN6n6 +UEsQMVNPDGouMnNNLEdOlOwlKxI2TnmgcUmc9PxpwHakDHc0HNC9cUpPGBSK6ETZz7CmljwaexGK +iJGapEi+YR+FHm7uKgfJ4pUAHPWnYTkTK2Dg1ONpAqoM5qdG7UmhpkmBg44ppGSKercU09ak0exG +2R+NImBye9PaoznqKoz2Jdw20M/AqvualHzAn9KXKVzDs1ID0qM5471IBnB9KGJMdjNMYYBJqSo3 +yaRb2IGJqJsmpGBP503B/wDrVdzOxCyge9NQjOOnNTOq4FREY5NO4JMkJ9OlNbjvQM/h0o4OM0kU +9Rop6gY96TBH508BjzinclxaE29/Sl9c08gkYxUbjaeOopDT0ImxjPSgKeCPSnlQceh7VLt+UADg +U7go3ICD3pjZBAFWHXjFQkY+tK4cocKDURXJzUrYIwOtCAjrTDrYZtOKQ46d6n4wRULevelcpRsR +ljwKAGODQeDxTsnFC0KYxl5qMA5POOeKUls045xkfhTQMidSenGKjjZuRVhfm6+9NK7RnjNaXOdp +9CDzgjNnoKz7mUueD3qa5Pp+NU2HzA8dOK0jEzcx2yVgMHGaUxcHPWpotrLz24qKSRhlfwpp9Aqd +2V1jUDn8vWlSIBiSKSMnd83YZq+vl7eRTlKxMKakZ0yhTnnjAqxbMNoOKjuFyePrUtic47ihu6uU +4qOhoJ93HSldT1HcU1WYNg9M1LzjFZvRmy96JVZZCOmc0+L+71qQbjuH4k01ACT256VV9DC1maMA +AHtUpCkcfjVWOQYx0wKkR3JrFrU6edWJI4xuOanGQeKiAJOal44oZF7MmUZphXk+gpynril3H0qE +aT11K55wvenYAHFKRzkVMFHWm3YIx5io/JzjrSMDtzU8ycZqBcnPpRe6C1mRTE7GHtXOXH335x/W +ujuM7CfauZuAS7HNeLmT0PocrRXBOT7VKD6VCCev1p0ZzmvDkj3EWEcjIPPvUseXwNuSSABUAbuB +kVInbHHSsnuDLRVcDtUsIbGCM+lR44B7dKsQryPWmmjNkyhvLAJqrIzZwOferz8KeKoP1yeK9Ki/ +cR5OI+MQuMAU8Z29OlQjGfaps8Y9K2dramEU7mHrBIRx7Zri5fvGuz1kjy2Pt1rjJANx5q8LszfE +7JEdFFFdpxhS/WkpcZ4HNACUuSAfekooAWjPGP1pKKAHDAByOo4PpRgrg8Hcp49KTk/gKSkAtFGO +M0nFAC9KXtTatW97NbQ3EUZwZimWwM4Ge/40DK1Axzmj5eevtSUCFoH50cYPrkc0lAC8iijk0lAB +RRRTAXGc89KSiigAooooAKWkpaQCUUtGKACikpeOaAF5pKKKBhRRRQIKKKPWgBKXikp6uwRkA+9g +k98CmA2iiikMKACeBRQOTgUCFKuByCKSjJGMU4fORnHTqaBiDIORwcjFOzjp3pvPYdOaUcn8KALd +kyrdW8j/AHfMRj9Aat62h828fjH26QH3OKoQsiSLxuG7A960NZwjXUQbrfyjPbHFC0f9dmKb0/ru +j6zcZik/3Gr5e1EfvpP9419Qv/qZP9w1806hDmaUYHLGs6ztA6MMm5MxPLH4VIsS55FTmMDPPXrS +YA6/TFcLnc9FQRGUxkdsUAYJHripDtIOOaTAbINK5aVhnGcn36U15AME09xjNVJc5Bqoq5EnYtQk +n3yatLjH9Kq2+CAc84qyMjp6ZrOe5cdhS5JB96ljOO1QfNnGc4NTIR1rN7FEpIJyB+FOB9PWmYzj +2pynsves2CEOOvTmmSlQvP41MQR+NVLlvkJ54pw1YPYqMPm6jFKAAeD7Cog678dsVIBgjP1rpasN +bFpPu1Ew/TtUgbIBqLPXpxWaK3K0wwTz361Zsskiqtw3NSWr7TW0leBlB6mjcYxx7VUiYbhn3qSW +VSP51FGQXGOKyitCnua0TYA98VMpBA/DrVRWI79al8zOBWFu5JLjdgilII3UqcU4euOtF7CKzjGf +SqsmPXGetW5iMHNU24565rWGqAiywNShjjrxTQASfpTsBeSOKtsdhyMexqwpOB6YqoOORzVmMnjP +pWM0Uh0h4P0qpLhsgdqndh61VkYAkZFVC5LSIXGR16Uwts6HmlZj+VRNkkn61ukTcnVz0zU3BwT2 +xVNH6Z696sAgLjuamSBMfvxjnrQrAHPr61AGOcGpV7knmnawbliN9oye3WpM5AzxUHUcDp2qTaQD +U9RASM80x3WNScjvRu7dqz9SnKLhfpWkY3djOc+VXM29laSQ496ihjDq+MZwTz7CoXcsc1LDctF+ +APTrXoxSSseXOTbuRMCMZOcj8qbSscnNJTJCiiigAoo4x70UAFFFFMAooooAKKKKGAUUUUgCiiim +AUUUUAFBBBIPUUUUAFJS0UgEpaKKACiiimAUUUUwCiiimAUtJRTELSoIyfnYqMdQM/4U2ikMnlhg +VN8dwj/MBtwQ315GP1qCiigAooopAFFFFMAooopAFFFFABRRRSAKKKKEwNTSbryJkPvXquk3nmQx +n1FeOQNtdT716R4euC8MfzV0xd0YVlodngSDNQPE2cdBTrZ8gZqyyBhwK0TscUkUAGU/jTx/I1M0 +frS+WOop3JSZEaVBk8GpClNUYNIdiTH40uemKPmJpp4HHWkUBx0FOAFQknvUiGmT1EcDpUJ4qZz1 +Paoc8mmhdSWM4IFTAZ61CnOKmA/SpZQbeeKXA4py9zT8DGaQ7XEHUGnDGMGmg4yKAc+5pBcfmlXB +xUYYg+1SrzQPceADS9qaAafnAFIaGfWk9jQxpAeaZPUcmM1LjjIqNTzT94AqWXFqxFIuetRhRUhN +NB5NUiHa4op2etNHFO70MaGnB61G+MVI2Kicgk00TIh5JoIOaeR6UbTjNVchREC9Kk2jvTADn2p4 +PNJjAqKRs4NS8U18460rl20K5pyYJprEdKaG281Rn1LijpUboMcU2OX1p+RyajVGraaKbxnOaiKc +dOausQahfkVomZWSM+Q49qiMp9KtTxjtVGUbQcmtFqSx+/pilOe1VlYj8R0qcPladibjCSTzUTLk +DFSMf1qLvzzVCZA/y9fzqM4UcVMyE5PFR7SeTxirRDdiOUPjP41FnHvVmRQefQVFgfhTQSXYanzE +t+YqQDLcdqTGBmliJByOuaCfUnQdD1FW40OBgdearRKCetaEa5Ax0qJM0ULkWzP4U1+R+FTyxkDP +aqp3YNJaktW0GL9496u26YP5VTTIOD61pW3OPelN2NYxui5GOKnUMKZGvapDgGsWWlYlTnrSSDAp +gfBHNJI/Wos7miatqV5cd6jGBTmOTmkJGDWhD3uIGPNSA9P1qJR3p6mgm7JeSMUxsjAp4NHWkN7D +CB0phXFP5707Zmncm1yIDHWpBxSbcULu55pDSsPwabjH40u7P4UE5+lBXQiaosZ+tTMc9RTQOuKa +ZFhFjyKUxgCpo+n1pzIDjtS5i+RWKoU1KqgUpGDxS7TxTuTawGhzwKCMHNLwBzUl9BmdxPtTSD6U +7r0pBnPNUjNpsb5XGTS7duMCpkGcCnEDjik5FKJB1x2pw44pXXBoUfnQLqHpTXwakwCKYwPpzSNO +hC1NAycmht3SmlhnHSqJjYRlA5qMkHinM2aZ3+tA3uNJxwKapB5J70OpwfWowQD0qkD7lvAwOaeh +HSqwfjmnKT+FTYG+hbNRMOKehyKU4OTQK1kQZxgYp+8Y4pjgqc561C0hB4/Om1cIysTs9RN7mgNn +APWnMARRawr3Yw5o9KUDPPXNNY/lTWpLuhxIwDVckA8044z14FNODj3zQaRuwwM5o3Edqb93Ap2e +hNLoHUjbqfTH50uQAfp0pMkN1zQxVuvrVImbFTac+1SSKu3moA2OR0pJp8DHXjmm07lRmrWZTuEU +sOwGaoTYzx6Zq5M+8ZHJqm+7GW5FdEUcdR9iaMnb+GcVETuIPrUsOCoA5prqMdc8nn60luaVF7qZ +WDDefc9KcszMdnrTNnz5B6nNSRxs75Ix7CraRim76ErQuhIYcmn2kW3OPyq8qO6BnGeMZqFUAkx2 +qOa6LafNqSbQGGc4A5qYDaCaNp/+vTtpxn8Khs1pdURjPB96UxkMPc0oRl5PapDnC56mmZ+QeUGO +AeOKsQxEdaIUHUd6upF8uTzxWcpWNIQbRAcKRTx0z+ApZI84NKoOMVNxtNEsYBFBHb9adGOwpWww +4qOpo9YlZsA9KeJce1EyjbVZ2wQKq1xJtE0jgioVPOOlNDt39aZn5vY0WsO92Jdf6s5PTNc1LgyM +c4Ga6G8/1Te+a5tycnj1rw8yetj6TLF7tyFhyaSLOaQls8U6McmvHex7SJgCOR9alViOKYoBHPSn +YAwTWLeoPYtrnGPxq1b5+XFUwRhR71bhxke9Sk7mc9i5LhUFZkmc8960ZM+X+VZ7sMnH516lL4Ty +a/xCRgd/SnknBwcUqgHFI4HWtZv3TGmveOf1t1EbDmuQfqa6vXGGxsGuTbrWuE+E1xW6QmDjOKSl +5pK6zjFOO3tSUcdqKYBSgEgkDgcmkooAUAnpQMZGenej6+lJQAUtFFIApSCrFTg4JHFJmjNABwKS +l7UnNMA4xRRRxzQAUpxk46UHtRg9qQBx39aSl5NSQeSs0XngmLevmAdduecUBYjxn24PNC9QcA45 +we9auuQ6FE0DaZLuLhjKgJIXpjBPr+OKywzLypxwRx702gG0tJS0AJRk4x29KKKACloopAFJRRTA +KWkooAXrRxzSUUgClopKYBRRTl2bl35255x1xQAlJRRQAtKi72VMgbiBk+9JSUgHEFSQcgjqKSnZ +jKKNuHyxLZ6jtx7UnagYnWlwPpSCl/woAXBxnt3o4/8Ar0go60ATxKDgnv0q9rTL51yAOBeSjn6C +s+EAsM5/Cr2s58y4J73s38hTW/8AXZilt/XdH1vJxBKf9hv5V856iP3j8c7jX0XOdtvOfSNj+lfO +OoSMZHPbJrnxHwo6sJ8T+X6macMccCmgjNPPze9RtweOK4D0QIH1pQMjIGc03DZz7UqsTj2xQO4x +uO/WoWUH5vbip2yR061GeODVrQnS5LCuF46mn4OM+tNjY8VN8ves5N3LG9OgpwYYGaTg8etHJI9K +kCUcgAHFAYZ75qMkgEdPSnBunrSaGmTbvx7VVuhkN61MGY1HcEbCc4AohoxS2MkN8xqcMMevSqpJ +LnBFWY+SB1zXZJEwehYViFx3FABbODShcDA/OgZGTWBoUrnGR9aWFaSb5mAHHNSQDPXitm/dMYr3 +gkJAPvTYHO4fWnyg45/CooslvoaF8I3ubMbAin5OeKggxgg557VKCM/hXI9yizG5wM/hUgYfrxVM +OQCKlVjxz3qWrgFw3QHFU2b8h0q1Lg9AO5PvVUMc81rFCFA3HPSnjHT04pEwce1ScAe+aUtBoZxg +c4AxxThkj+lGDgetO29TUt3KWxA+7NVmY4OecHFW5Ebk57dKqsrYIHc961pvQiRAzK3HrSjB4xwR +SbOc/wCRTSHB69a30Zldod5eMn0NToe2Mn3qBXY9elSocDNTMcWSBF608ADnsfWhWJH1p2QTgnjv +WbLFTGQBwKmOeBUQIx7U4k44OM1PULEErBS2awL6Qs5HWta7lCofXArAlO5ifeu3Dw6nDiZdBlFF +FdRxhRRRQAUUUevFAgooooAKKKKYBRRRQgCiiihgFFFFABRRRQAUUUUAFFFFABRRRSAKKKKYBRRR +TAKKO2aKACiiimAtFKSMkgYGTgelJVCCkoopNgFFLSUrDCiiikBKjwLFMrRbpG27Hz9zB5475qOi +kqhBRRRUsYUUVYtbuazLtFtDMhXcRnGfSgCvRRRQwCiiikA5Tgiuy8N3ZACHvXGZrV0q8MEqnPpW +tMiauj1u0kPGDWrGeK5vTLpZY0K9xW9A3bOa33OBqzJyuab6j0p/AGahc4PWkLYQnuKbu5AFJu5x +UTMc8VVibk27jrQTnimI4B5qQc0AM4zjvTh3xQBzkUUxWYhpvyjpSlgfpSHb+tIdiRRzmplGajjA +xg1KowPxqWULTty4ppK9KbuHT1osFx+QxNNOQTQp7UHigQoxnmplxjrUA65qdRkUmBKo70NkUqnA +5pTzyKk06ER7c0xuB0qUgDvUT8giqRmxu40oeowvvQOKqxNyQsacuaaKeoFJjWo8AEZoB2mjkCmt +UmnQa2MmoypPNOY//XqNiR34qrEMegGMGnkDpUAkwRmpd+TQ0UmrCAdaUAk8ClA5NSjHWgSQzoaY +/SpiBUbBsHFJMbVkVCMVHxzU7An6VCVOfUVojF6ArdhUytjI9ar4INSrnjNDQ02Px39aaRT1Hagj +1NK40irIAaoTxHlq1GAPaqsijoauLsS0ZbRsM8gelCHbyT3q28QOcVUkjYHPoau99BONtRJHDCm9 +cY+lG7HB6U3OOlVsD31FYfrTcYwBT3cEcd6jzzmmrkSSTGkLzSBFK/SnPjkg8cU0MuT60ArDGyoH +cdKaAeD361NIodeOKiIPqeKpEtak0LZIx61pwMAOe9ZUeAM1aicqPfGaiSuXFtF6VlK4qi5APFSm +QdzVaXrntRFETZImNwrUtQMgmsiNh8p962bXAAqahdJl8JgcUxhUqdMUjjFYJ6m7V1cjINQs2RUx +OarycGqRmxhNJkEik56UowRVD6D17mg9acoIFLtHFTcHEF9+lOPIpOAMUuOKA6De9SAgUwj8xRmh +gh7MMGog3agk00g0WCUhx6UvYUgPAB6UvB4FA0MbPrSAmlbAOKTsaZBMjAU5mzVcE9jxSqc0rF8+ +hJjmnp0qI5p43cUMVxx5PAppFPFKR1pFbkO0Z4puKmK1Ecg5NMjYcpqTcB71ESMcU0vjjNJotSJW +IJx+VAFQh2J5NSRt607WFfUlwPpTHHX6U4mkPTPpUl9CrKCM1VbirUvvVdsEZFaIxZGe1OTHOab1 +NOQDcc0MpajnXI+lVJBtOavdQcVWkQZOaSKaIQ+OB61PG2arY5xViPAq2RfUtR9akYd6hTFTbsjF +ZltleTAIz3qFkqy6ZzTfL61aZnZkAxkVJzijA59qcCKGNLUYARUZGc1NwR9TUWMZ9u1CYON2MK7u +R1qPGDknpUx4NRf0ouaRVgyD+dMY8fSlJPUVGXFIaHHnGOmKagP8Rp8YyCDSYOeelWjOprqMbCjr +1qkcluverTbiT3xR5WSOlWnbcx1b0KrgDNVSAwP1q9LHjdnNZ8hbJx+laRImmtyS324P5U6WMgZz +wDUVudufwxVmQ5Qt1oejKtzQ1KTq29WX0xVu3RSR3qEkYxj35qSIkEYNOWqIp6O5rIoZcYxxVOZQ +rDbxU8VwNu0nJqOXBHSs4p3Nqk00Sx5KAipI1xkGo4SSpGPpU0ec80mKm1cRxtOaNu45PGKlaMNz +T0hyDU3KktRYOD3HpV1D6fjVVFxx2pSzqcCpkrlQnYlc/jmkjyCaQZK80R5zj0pW0FJ3ZOhOcGnE +AflTU3dCKeeB71PU0WsSF13Kar7c9at5PIqsTkke9UiBhXH0qFhjoatBODk9TUDDBIzSuXy2KV83 +7vI9MVzjbtzE+pror4kxlR6Vz75DEkV4eY7n0uWaQIMk5x0FPjyR9e9RHPPSnxN6968mS0PXuW1x +j3qQqDtyCc9AKiVhjp7U/ceBXO1qBIFA24NaFunTnNUUI+Xir8HCj1q6cXJpGVSVkSTkhPaqOO/v +Vu4JxjP41SyxyM4FelTSUbI8erJtk8ffFJIevXHpSR8d6ZKWx7U6/wAI8P8AEc3rzDbgDrXLE8mu +m1xiAfqa5rdjdwDkY57V0YRe4PFP3hlFLxRxXWcgHHGBSUUUAFFFFAC0UUA4yaAAY70Y/kTRRQAf +SgZ5HagHrSUgF7Zx+NKeme2TSUpY4Udl6UAJxj3pKKKYC9Me9H86SlNABTnDbgGbLYAOe3tSxEKd +5wdpBAPc1Hn1pAFOyu3GOQevrTacSMBcDgk59aYDaXBNJS5IpASjAjb34qLmjnFFAwoooO3scjFA +CjbzuOODj602lpKBBRRRTAKOKKKACil4pKAFwcZ7EkUlFHpQAUUoI54z6UhoAWikpwGQxyBgZ570 +gEpT/Kjpg470e9AwooHrRntjmgAB5pRSYIpenagC5pwD3VvGR96VBn6mp9ZxvuCMbTqFzj9Kd4fi +E2o2wPQNuJ+nSodRbKE8/wDH3P1/CiO/9dmKT0t/W6PruQ4hlPojV836kT5smPU19Hy/6qTHTY1f +NuoEiSTp1Nc+J+FHXhPifyM5m2jHOaj3HPXFObJ9aixnA6YrjR3sfuzxRjj86QZpcrxjn1oH0EY9 +/Sm4z+dRuTu446cUqlhyelVYncmQnp2qYMPzFQow4qXsSTjpWcikB78e1OXv7c8Uxs/L9KeM/Xip +ew0Lu6kY96VTncfyqMk4yBzilQHI7etFtBomVsjrzUU+dnPTFTqowc9TUVyPl4xUwfvAzGwS341Y +iX1PPQ1E4IY/Wp4xytdknoTGJZBGACcZ4ppPv+VKcHjHAprAYP61zo0exSlbc+Knt8E/Sq8ow3pV +i2HFby+EygtSWXIyKhh+9z3qS4Y/4VDbnDYFSvhG9zTiHy88ZqQAgHk0kWMH0zS57e9c/UYgye3t +UiZzz2/Wmg9xTwOoPU0hiO2enb1qq+c/WrD+3Q4qIrjOO9VHQh7ixnbx1qbllquvUfrUwPT8qUik +SLgkg1IMscelR8AZP504DHTis5FIGXrmoHQZIqVmIHPaos5wevtTVxOwx4kx0qqQin1NWpM9iKrM +eefwraDdiWkRMAOQckmpF6DPrTD1FPXjGR1rR6kpEq/ypScU1cg8U9cYINQPcRfc9KV/XvTtmOe+ +aZI2MHg89KN2D2MrUZOCMGsknJrV1DkZxxWTXo0fhPLr/EFFFFamAUUUlAC0UUUAFFFFABRRRTAK +KKKACiiigAooooAKKKKACiiigAooooAKKKSkAtFBopgOYKMYOeKbRRTYBRRRQAUtJRTuAtApKXNN +CEoopaACkoopDCiiigAoopQrEMQDhRkn0piEoooqWMXtSUUUAFFFFIAooooAKejlTTKKL2A7Lw5q +nlt5btXfWc+4A5rxmznaGQEHvXo+h6gJ41wc+tdFN6HLXjrc7ISAqOelNlBIBHqarQTDpVrBIx1r +TY5iuOD1puc+9PdcE1EDhqolEg9DUy8jmodwbJAxk5x6UBuKWpViwmDQy96iDgcUrSAiiwugw8Um +OR6U1m6cUoIJFMlFhBj6VNUKH1qXP8qkoG7VGw5zTznpSFTjPagQI1O6mmHaBSjk0FIlC1OgwMVC +nWph2+tSw0JMgcCmlsHilGBmkNIp7DTyMVGB6U6gYz9aojdjgpppTvUy80hxzU3L5VYgI5FOFGB3 +5oGBVEWsSZOKY2T1p46Zprc1JT2K8jdcVWdjirEnANVXPWtYmLFVunPerCnoarLU6E9KGCZZT61L +UK9akBrNmqFPtTNxGadmmnHahIGRld1IYx0pecgVNhad7AoplVkI5po55qy2KhIweKaZLQo46U44 +5oxzQRSGQNnpUDDnk1abg5Haq0lWjNkTAc+tU5iCDxVthnrVeQZyAKtCbZQcMO1RO/T8qusj9f0q +tJGcZHBrRC3IDIOPWgEnHNRkNzu70qbhx2qidyRuhx1qHJUkng4qcgHp1x0qJlPpTRLGq5xz0qRS +MDA61EgwOadyBkZ+lMlX3Hd+D+NTR54NRLyBmpUPzYpFcvUsLhsYqOXPINWkQbcio5kb61KeopRd +iCLjAHUdDWvaHgVkR8Ng1q27DgCpmOCsakeRTiMZpiN6/hQz5+tc9jpixpGKgkweamPI5qCTpiqQ +pxIsnPFKhOefxpoXGKkC8+1USS5ow34UwZ/KpA3FSF77i7c8U7jPWhSD+tKFpFITIqNqecg4ppGe +lNEsYuATmnH0FNA60KeaZI9QRTimVPHNCYxRu9KRaI9ppMY46+tSYNNK+lArDcU8CkVc8VMFIHND +Y1G5FgYxTkx0NJIMUicUdBWsyddvWnHGMUwdODSkjFQarYjJHNNYjHNK2AaicZHFWjNjWOcim4yA +e4NSIppdhzTuKzIsULk85pxXk0YUGgLEqEcZp55qHA6inh6llrYY61AYyKtt81QP34qkTYr7BUbY +BxU7YI9KrvjOaEXbsSIcmkcA9aZGRyelOJOaZLK7AgZ96ehyAe9LIvGaiUlTx+VA9y2nFTLnAzVV +HJFWEcYA60hNEmD3ppFPDcc1GSOg9aQ00kM2gUmBx3p/QZNGQaomxGcimE45xUr9DVd27Cgaeo4h +SDULDGe3FBYnH1oOTke1I0vcidh+VRHnpTnPQHiosnsOKtITehbiVduQaVtuTSwgbc0OMHOOtC3I +lrErPgNRvCnI6UkzYOSO9V5H5atLXMlLl2HSy7xgnrWbIMtkdD/SpWYE4x2phXj2zVxjYipPmYQo +zOvHfp6VotHtHqKpKwQ5AqWS6G3bn60Su3cqla1iCYgnp61HCcnH+TUbSFmbtk1NaopJ55qr2Ri4 +p3NCGMdDz0p5TB9vepoIgdtPmhOOg4FZc2pt7K6uQI6rx+FTeYM8VUJ2tg9c1Lgdc0WFdJ6FpXLY +IqRJM57YqOFRjNSsAMYHtUG0xfMKnkdqdv3c1FPuJU05MEjPNHQiKu7EqsBmlR13c9aPL4yvWoGG +0g96Sdy3CxfRuamO1h71mrI1TLIwA9qhoqBMF5NQum1uelO84r+JpJJFIpq5LVmRswHHSq7tkg5p +0nzDC+9Qjdkg0NWVyoyvZFa8YLz1FZEqLIT9eK0r3OCKz1OOPzrxsY03Zn0GDTULlGSFgTxwKij6 +kD1rVG3J75qvJbnJKeteZKHY9SFXoxiEDj2qRTjtnrUao3Q8VIpVc5NcriauWhYQqvPrWhbfvBnH +FZKHJBrYtCFXnmqi1exjUWl2F2iqpPrVKPaxyeoq7eOpXFU0KqRn1r0aeup5VXR2H7DjniopWwmD +26VNvzUNwRtxxz0qa7XQ1wydzlNcfoO1c6a3tbBLHHYZPtWAa68MvcIxXxhRRRXScoZ70UUUAFKc +g49KSigBcEAHsehpKKKADJpTgE4OR2NJS5GDSASiiimAUp5PpSUUAHGPeiiigBfwpKKOaACiiigB +cnGOxNG44C8YBJ/OkpcDGc856UAFGTx7UlFIBaOtJRQAtGD+VJRQAUUuec4HGKSmAUUUUAFFFFAB +QKKKACiijjFAC/LtGAd2Tk0AFjgDJ9qSjmgApcnpQcZOOB2zSUAOLcAelABYgDA+pptLSAX2p0aK +5C/xHP8AKmkljk0KSDkdxigA5pRSUUDL+lblvbRl7TR/zqXWH3PcMD/zELjH6VUtH8qaFx95JFbP +pg1a1YhzO4OVe9nZfxwaIrX+uzCW39d0fW05xbT+0bfyr5qvf9ZJzzk19LT/APHvPzj903P4V803 +4xI+PU1hiPgR1YT4pfIoHOcZpvA4pWIH9aZkHOa4rHoIXjgnnnp603qOuMUYLd6bk8jt0qkSRS5H +bqRj3oB6c+9RsMknpSqAOcYrW2hK3LAPPHpVhDkVVU9BVlGUAZrCaNEO3ZIzTyc4wcYqI5zkcUuR +jHXBqbBcCcA9896ep75NRkg9MjnpUqAH9KT2GSbjjOajuHGzjvTj+Oaim+ZWHTipitRvYzictz1q +eHjj61UYjecVPCeRXXNaExaLpx35zSHrSnPGPSmZPPHaudGhSlxvIHrVqAcCqso+f2q1BwPpW0/h +IgR3JIJ71HADnOKfc8g+uaW2AzgdM01pAj7RoREqMfzp5PzYH6UKuQMHnFKEYZ44rm6lNgpfn61J +v+6T1pqqw7dTSurdenPSkMaRk/LikPpTfnJJH0oYkA4+uaLCEBwc+9SrtI6Ek9qrZBwO9ToQegpy +Q0ThQeDS96avrzTwCMk9D61kykMkxgAc1CQck5qy2AOfwqI+uDTT0FYjcZH1yKqFM+x9avMDgZGS +arsoOR+NaxdtCWiDBFOA4zQ2RjjinJjvzViF6DPGR0pRk/nSEA9PXBoy2Md6TGSbvyFRSY5HrUsS +l+n0qOQbCyn86UdyWZWoA7MelZRrYvwNh71jV6VB+4eZXVphRRRWxgFFFJSAWiikoAWiiigAooop +gFFHeigAooopgFFFFIAoopKAFooooAKKKKACiiigAooopoAoooobAKKKKe4BRRRQgCiiiqVhBRS0 +lDAByRk496KKKQBRRRQAVKZm8pYRwoJZsfxH3+lR8Y96AcbhgcjHPakgYlFFFK4wooooAKKKKEAU +UUUMAwRjPfkVYe3hW0huFnRpHkdGi/iUDofoar8d6KQADium8N6l5MoRm4JrmamtpmikVgcYqouz +E43Vj2K2lDhWzwa1oZARgmuK0HVUuY1Q9QBXTQy+9dK95XOGUeV2Lznmq7Yp2+oWdcmrRkPR+cE0 +ryYqoZBTTMT1p8onItiQ9qBIaqRu3XmpVJINVYlk+4nPpUidqhTtU6D0qWCJ1461IuO/SmKM04jF +QyhxIz6UHngGkPSmA4NBQrDpTlxTC4NOUc0BfsWFx6VKmMVCpxUoOcUmCY72pDnmlJ9OtNOccVKG +yPPUGnKxHBqPqfegk55qzNMshhQzDFQb+KN/H1qbF82g8nvQcnmmq2Wp5709hbjhzzTWpaa57VPU +p7ETgYGKqtt+lWWIquQWJHtmtEZiBOhz1qeL3qJD0NWF56UNhyjwc9KeM0xcdqeRxUMuIwsBTS2c +UPgUwnHSqJbJN3NPDCqpJzn2qTfgYoaGpErdfpTCDmlzmngE9KWwXuNAx1pdoNKVNGCKCtiF1qJk +BqZx3FN2E5qrmTRVaPGag2DNaTREgVXaPBqlIlxaKjxccVXkiFXzHURjHGapMEtTHePJIxURXHOO +laksKiqbxH8K0TuSyr79zS53degFSsm2oSpAJ7VQDl2N2pZEAHAzUIJGT6dak8wEA0D6DRn+L8KV +Dg5PTNNPzc9hQCAKZBpwSKBg96WQhh9KoRzjoe1T+YSMio5dSua6GqPmrSthxmszq3Na1tjAx6Up +sIxuW0bAoMnPWmsCRx0qMcHFZWuVqixuJxUc1Ct0pHbPFCWpfNdEQqfHyg1AvX8KsDdjHahiEIIx +QM9KcFzShcdaQrMQDBqUMajJHQ/hTS/ajcew93Gaj3ZNRsTSpzzRYN2SbT1pCACKfntTTQN2DBNS +7cCmA5walHTmkwjYb17Uh7ipCpwcU3b19aEJoI1FS8HrUanaOaXd6VLWppF2Qxx1FRKDz9amOWpA +g61SZD1EGR1p1AHpRszSZUdiNjnNNOMCnNkcetNJx1qiGPUAVJtyCahDetPEg6UncuLRHIMZqLjg +VM5BqLA4xTRMhQTSnsaRfWgk0dQWw4N2prnnmmkjr3pGJwD3NBLI5PUVVcnqfxqy+70+tV3U8+9V +YpSEVuaeW49KgLFadvPQ0WHJivk9DzUHzKc1LnIqN+e2KqxCepIjggCpAccg1TUgde1TKc80rDZb +RjyfWnYJNMjAIqUChkhjijgEU7FGM9akpEcjDaaqPg/hVsjPOKrug696YkmRArjoe9G7il57Uxjg +D1pl9CGTk4PHNMB5xgkdKVjk5NKoyQR1FUiZFqLHFEjL3PbFRggKB3FRSY7nmi2pX2SK5Bxx+FVS +GPPcDFWZGBU+gqtuJIH4VrHY5pWuN2Z7A0OCAQOT7VYG0Yzz1pkhVASPSlzMt0klczpXZRtPUGmp +83rTJnJY5PXPNPtxuZs9+laNaGUH79hpjdnwOc8mr1tCU9PU1GoCnnrmrYBADL6Um9A5bMvwFVQZ +7dKsO4K5J7Vmxu5BB4qQGToOfesnHW5tCo1GwTfeDDmnIqlQcYqvM5IwMcVNAzEYq+hk9WXojgDp +0pzZ6gc1GhXvT2BI5rPqb7xElJ2A0kZwAaOSMGmKGUn25otoQm0W/NCjIqGTDDPrULF8cjjrTlJO +QelJRsU5t7j0zz7VPHlulVEB3ECrUTc4pSHC97jpAQAaawLJUjng8UijIIzSWxUlqVdrDjrTQRgj +vU+CG56UyZcA444NTJ6F043dzJuycke/SqDgc4Oc1au35qqDznGQa8LEyfMfS4aNoIF6VIpbrTQO +Qe1SDGQCPWuW6N2hpG4HAwxqu8bg8irYHfgcUgIcEH1pSjzFRk4sgVWU4PUYrRgOFAFUjCQ+4dO1 +W7chVOc81zRp2kVOV43EmLE8nvUR24HqKJnwxP41CM969CmrRseVUd5EqM3Wm3BBTPenAjb1+lRz +EFTyaxrrY6sOcjrWAw9axK2dbOZTWNXoYb+GjmxXxhRRRW5zhT38vam372Du/OmUUAAyaKUZHzCk +BHpnrQAUEkkknJPU0UHGTjpQAUYP59KKUjBIznB6igBKM5oooAKOveijPT2oAKVSAQSMgEEj1pCM +Ej0NFAEnyiIAOdxYkr2GO9MU4IOAcHOD3pKU570gEooopgFFFFABRRRQAUUUtIBOaKKKYB2PNFFF +ABRxj3oooAKKKKACiiigAooAPPsKKACndQegxz9abSkEY9+aQCUUU4Y9cUwEoooNIApdpwSAcetH +FODvsKbjtJDbe2RQMaMfpR3op3JAxQBb0yIS3dqrDKmZAR+NWNZC5nIx/wAhC4Ax6cVUsWKXUDD+ +GVT+tWtZ5adum7ULk/yoj8X9dmElpf8ArdH1rP8A8e8//XNv5V8z321ZX9dxzX0vcE/Zrj/rk/8A +KvmS/P71/XJzWOI+BHThPify/UrEg9PpULEjj86XIxzQuG7muPY9AcnAHbFRuGOSelTYQDrzjrTW +53ccDFJPUGUjkcCnDpgnihgevanbeB2zW1yESrnJBBGDipQSMYqFAOTUwKkccc1lItD/AJjn6cUY +I56GkyR7UrN+nFZjtqIMZ/GpkwAcfSoMhsD0qRCT06UMoflj09ar3TAAjNTnpg1TuSFFOmrsmT0K +WORU8Z2kCoVOKkjzuFdUtiEXvM+X6UnBB7UwggDvTSe2cVz2NehWfO/nnmr1soYfhxVCQjcAOKvW +p+UGrqfCTB9Bl1jpjp3ptuRk4pblsnmm2+Plx+NH2CftGlG+R/nipUPOCTzUKKAPSpBkcjjpmuds +osbh6dqRiMkjpUe7KgjvSj7vPrU7hYa3TpwarO/Jz3qdmXJ+lVWJJPua0SQmKDyKljJBzmoRwRjm +rCjPGOtEholRxk1ZXBHTIxVTgfWpUducc1jIsmkAIx0zUI2cn8qcxJ/KoN+OlNLQlj5On51WbqTU +5JxzkmoGIY8d6uImR8cc8ntSqAc461E3XPfNSRNjk1bWgIf39/Wlx+tDseo71GCe5pCJUZo/u/nT +WZW3E9c0vPHtTCBgkdfShAzN1Ejacd6xzWtfngg1lhSzBV5JOBXpUfhPLr/GNooorYwCkpaSkAtF +JS0AFBGCR1oooAKKKKYBRRRQAUUUUAFFFFABSUtFIAooopoAooooAKKKKEAUUUU0AUUUUAFFFFMA +ooooQBRRxRVCFpKKWn0ASiiipuAUUUUhhSnbn5cjgdfWkooAKKKKQBRRRQAUUUUwCiiipYBRQVIA +J75xSUgFoFFFAGvpF89tIuDxXotjdCaNWB5xXk0bbSCOtdp4d1AMBGzYFdNNpHNXhdXR2iyMRTZD +8vFJHhlyDmo5BziulHFIZu7UucnFRng81Io5J69KYkiVOOtSZ6Yqvhl5zUyBce9IbLUYHFW0HNVY +h36VaTjrUMCUYBoLZNJuAppx2pFXFz6UxsrR70nJxQSL7ipoxkUyNDn1zVpFwOaTZVmIOKkQ+1Nw +O1PUCpbGlqO96a3FPph96BsiyPxpO3FLjPFORD07VVzOzZHg0uMVN5YphXHFFx8rEGKfg8Z60zin +8GkxoUEd6aaXtUbFqSKkQu3aoWbJxTpG2kmq7nNapGN9SYEdBVqPkVnoxNXYSf0pSRSepZHTA6Uh +J5FKCaax61maPYYTnj0ppU8UpyOnenLg1RCV9Bm3Iowe9ShRSFaLjaETpT1Y0zBp6jikwiPB70vY +03POKQsRSsU2Nxk09QB9KYG4pQfU02JNCt/SoGGTip2bjrVfnNCCbQ3ZimvGMVN15oPNO5NihLGS +COM1QlU88c1ryJwapSx55rWLMpIzG4qPAxg96tmEc9aj8oHArVGd2VGXiqzhgDWm0WD04qpLCeo4 +qkwd7FUS7cKB14qTcMH1o8k/exzxQy4GaLjSGg88dKsqxxgDNVBwRVyLoB3psiKbHK24g1rWjfKo +rLZMAkVbtJDj6Gs5q6NYOy1Ndjx6+tVXb5vqaV5SFxUW4N9azSG3ctRkEUjsOlMTIBNKSDzRYm41 +Cc1YQkVXU5IxVhT+dJmsSTOKXdxURNR+YSOPWpsO492Bph560YJPWpkQYzinsLci2nIzTxkcAVIw +44po60E7C8Z/CgD9KQnmlLccUh3HjHapABke9RKemak3GpZURzZHSo2YYNOJ44pp6Yx70IJDeQM0 +gYmlPSkUEHJqiR68DjvTgeaZ7ikBxSGSgUZFM3jFOBpFIR0HNMKEg1NkUzGAfShCe5VIZabuNTsu +c0zZkZqyRgYn6UcZo2HpTeQaAJOO1NJ70Zp23NIauyFjjP0pqtn+lPdetRbTVCJSagkX9KmGR3pk +oUjikmO3UosMHJo9Kc/TnrTQwPSmVuiQLmgqBkUq5Jx6d6Q9cZovqJx6laRSCNtKueOalZQelQ9C +aq4RV9y/G3A9KnFU4nHSrYI2ipE1qP4/GmsDnPpSjNIeDyaQ3sJjrnvUMy4FT7hjmoJmH40DViuT +tFQSPjHtUjY59TVeXcQSPpVIprQTKk8d6EJzx60gU8E0q8k9sGqMpLQlJG76VE4PzHsPWnBsnJ69 +KRs4p9Rx1iyE5KkGqjLht3vmrDsck1Wk7nvx1rWJyzY4y7DnANV5ZyyHH4UrAMQQeT1qLyjvJ7Ac +1SSE5ysVy2NpapYSMsKgcNu2/lU9udpzira0M4SfMkWcZIPpzV2LLLj2qqse7nGOeKtQrhSKydrH +RK6lqORsZHqeasqhUHHSoUjUN71oRgEc8VEnYqnC7M90GScVJCmQBnip5o15wahU+WQBQndDlCzL +yRJwOlPMY4+lVxLgdewqQS+/Wody4a6EmwfnUUgwR3pGc547U11LAHNNES7EgGcYpTCT/wDWpYiu +MGrAKkYqW7Fxgmii4CEAVIvGDTplXpUS8A9vWnugtZlv7wHpUeCGqSHBUE+hpjjBPNR1NJbIQmoJ +mGDz2qXqvvVGUsu7moqaRLoXcrGXcEE1Bkjp+VSzkFsnpUfyGvn67vJs+ooq0Rys3fBxUm7p3NNC +nGRgc075xnPUVzo1EJPB6daVdueKTk9/anqgVs9cc00JrQcOoFTBQU685qp8wxtGKcXIyAe1UmjO +SYxx8/PrQev8qeNrfeODShBgtnvXRFq2hw1INO4wgqASKikfKkYzUkpIwAenP1qvISBnpwa56zOr +DrQ5PWTmasrB56cc1o6qwaZqza9GgrU0cmId6jCiiitjABRR9KDjjHpzQA4uxRY8DCszA455x3/C +kyRkeo5pKKACiigY70AFFFFABRRz2ooAKKKKACiiigABIwR2NKzO2NxJwABn0FJRQAUUUUAL6UUl +FACkHvSUoJGPY5pKACilpKACiiigAooooABjIz0ooo4oAKUhl4IIOAfzpKU57+1ACcY96KKKACii +gDP60AFOAXBLehx9abTicgEnJyaAG0UUUAKPzooopAKMd/fFJT3imi5kRl9Mg00YoGApaT+lKMcZ +NAE9s7B1C9dy/nmresZ3Tg53C/uc/pVO3G6WMDuyj9avayD5kyk/MdQuck9O1C3/AK7MJfD/AF5H +1nc8WtwT2if+VfMd4+ZWBz945NfTd3/x53X/AFxf+VfMN9zI/B6msq/wI6ML8T+X6lJjgU1X4/Sm +HOSPxpBuzntXNY77k4dv0pGPBxn5qB35xQCD15qRkZwT+dPQUgUHn3pyjGcelDY0rDlXGBUq549s +0igsMfjUgjA+lZyYw4xj0pCvHrSgc9QOCacSCBnrnAqNhkYzuGPXtUgHpTcAH8akGe1DYxrNkj1q +pdcr1q24wfSq1yBjAq6e5EtigpGfWpoFBYDoKiHUgVZgHPXpXRN2RMUWnChRketV2GQRVor8oJqu +wwODXPFmrKZ4bir1uFCjmqLZ3YHrV6DkDr0rWp8JNO2oy4OM8A0kHUY7UydvXuadbFj+dK3uEt3k +aiEbeM80p4GO1JFyAOtK+Bk1ydSgGT7dabvYYFICMAA596azCrSBjHY5wOpqIMc80jMWbrgHvS45 +56VoloTceuWUHpVhcZyOPaoEGOSeM1YUYBGOtZyLQuCec81OnQHvjOaiA7N1qWNzzu9ABUXRTGSE +jP1qNecE9TUr7evtUSnIIqm9BIY7NjFQFypA7VNMQfaqrcmrgrkSHfIwyp55oUgE88Co+QeDjNG7 +g81o1oSnqTGQ4A7Ak0EnrUIye4I4NPz79KmxRNuAxn60x5Mc9BUQZsjnilZieDQoibMu/YE1n1cv +T82Kp16VJWieVVd5BnNFFFaIyCiiihgFFFFIAopKWgAooooAKKKKYBRRRQAEk0UUUAFFFFIAooop +oAooooAKKKKACiiimAUUUUAFKSCeBjgUlFABRRRVAFFFFHQQUvFJRTuAUUUVO4wopTjtk8DrSUrg +FBNFBJP6UXAKKKKEAUUUtVYQlFFFJsYUUUlQAUtJS0AFFFFABWhp121vICDjBFZ9OVipyKuLsJq5 +6rpN6s8anPbFaDZP1rhPDupeWwjY/nXbxSCRdwrrgzgq0+UaQf4vzpUx371LszmoWyp4rXcxTsSk +5x6VJEozVcN2qxDk9TSa0Kumy4meBVkcAfrVdc5FWFqBNCOeDjiowxyBUj0zBBAx2z9aBLceMHvS +4ximA+hqUGkUSxjGDVnqOKrIam3Hioa1LurDuewpY8YpFIxTgOaGJbjjkDOKYeuakph4NJBIjPUY +qdB2qLg8+9Sq1NijuPKCoCDk5qUuADUTMWPFJXKk0MxTh0NJjnOacaohITgVFIcD0qQlcZqB+aEE +itKd1V261NIPSoDnvWqMSROxq5F1qnCMVbQqcVMi4lgHAoOCKbkUoPH1qC2xpHIqVcAHp0xUPOae +poYQdibFNYUm8YpCSRmlYqUkJ3xS55FC9waXAHNMSE7+1NbkH2pTnrTGoRLDJxTd2SQaTORSVRNx ++SeKAOgpBxkClBP5Uhj8qODRigDPNB4ApFkZx2qu6ZzVgjk0BcirvYztcz3hxk9qqmPkntWs6Dmq +rxAn2qlIUoFEpUbqCMmrphI57VE6dfStEybaGewA/lUTpnmrc0fQjvVaQYIqkRdlMjnBHvViJgpF +Ndc5JNMB55qmOm0XGOVIFSQPtI+tVUmycY79alQqWB+lTbQbeuhrr86/WmbCDSwcjrTz1HFZ3Elq +PQHGPWkYAZpyHp6U2TBOaSeppKNiNSwNTqzEVCOoqYEdqGJCk03BU0hzux+VSINx9KQDkyalAPb6 +U1VIIxT896ljQHIqNmOacwJPtSAA8GgGIo3UHNSKBQR2ouUo6DEyOtSjp71EQeakXkUhbMf2qPOa +cfXsaae9A2JzT8A803JGKkQ57UMcUBU4qJlx0qbI6etRsOfakhySGgDFPUH8KBzTxjAz3oYkGPXn +FJjqfwpSQP501mAzihCZHwePenBabwcmpEPQ+2KGOKTY0oKgZR2q0/0qE4JppjkrMiweaXnpTiPS +mMrd6ZKEwDkn1qM4yKc3eo2YYHY0xPcccVE3pRuGck1HIe4/Oiw07jJVwKg4zmpiMj1qMqACadxk +qnIpCB+tMQ9u1ObB5PaiwXGnIGc8VFIAhx71PlT9Kil5z9KYthqPhutX4mJAPsKy8gYPrV23kyPb +0pNDLobpTS3Wm7ulNbB70IhsGk7VG2Sf50hNA5H65p2BPUgOAee1Qsy9KnlxjnriqrLRHc0bsrjk +yQBTZOoxT0GORTJCSc4q1uQ/hBRjrTydqGmgBgOcUOcDaOab2JpOzsVJOpqrOdxG3HPeppg26oXU +4HHfn61pHuYVFrYYoY9eDUxQbSM1EBjGTjiiSXbkHvQ7vYqnypalaZQCPbPSiE/MoHTP50ydy/Tv +T7cLkevStLaGPMufQ1oYyV6/SplGODTID0x+FTbSBnvWF9Trmk0mhCu1gw78VN5uwAdfekYBsE9q +QoHTI9KNzPZ6DDOCwFI2CR61EIsHjPvU3lg+vHNO1gc22ORuBmpUyQBUQAIAJziposUmODsx5BBG +Ohp4yQR6UYG0GgEHipKmrMRTjB75qUyrtOKgPU4OKjYENx3osJSaZKW35+lMOVGOxpEyBz601/vU +WDm1LUL4A9KfJk4NVojt4zVtSu0nP4VDdmbWuiHJyR7dao3fAz9auOAD9ao3hO3FY13aLOjCK9Qz +HOScDOeTSDBBH1pCTmlUHjnrXztWWp9PBWQ8A5UZp+SMA9D696aCw+tIWy2D06VkrFjtoLA47Zpw +PpyBTeRyPSkVwKTYbj8HqfwphP4GnbycjtTMfWq0JsKSeoxSqSMZPFNOMAntSnJA56VpGTM5wTFI +DZPeqko+Vh9aslnByO1Dp5i84yRmnJcyJS5Dg9T/ANe1UK3NasZo5CcEg5NYhGK9Cl8KRwVviuJR +RRWpkKOeKSilCk5PYcmgAOMmhgRwfQH86ODSUAFFApcNjdjjOM0AJRS4OCccA80nfmgBWUoxU449 +KT6DoOaKKAFwcZ7dM0KMkDIHuaSlz6elACujIQDjkZ4IP8qbQaO2c9zxQAUUUUAFFFFABRRRQAUt +JS0AFJRRQAUUUUAFA/OiigAooowQAccHpQAUUUUAHSiinyIEIAOQVU59yAaAGUqsynKkg4I49D1p +KKACilAJpKAClIUEgHIB4NJS9s0AKo5XoeehpPf3oJG0dc5OfTFHGPegDQu9W1LUYY4ru5klEbEq +GI9P896oUgpeuTSGL/8AWqQoQAoZW/eEKV79P0ppQqAcg5HT603B6HjFIZPbuFkQ4yQynP0q1rG/ +dLuByb24b69KpwqS4A65GB61c1Yt+8JPJvbn+lOO/wDXZik9Lf10PrW6OLW5PpC/8q+Yr7PmPgYG +TX03qHFhekf8+8n8q+Yr47Xf6msq/wAC+f6HRhfify/UovjHuT0qNd33fU5pepNA7HOc1z9DuH9h +S5Iwfam57GjcMYqbDBWJz1qQMPzqIYHIanKTkcgj1oaGmWVyDgfjUpqFO+KmBI+lYSNBNpxgn0pR +39adjPem7eue3SpvcVgwRj1p3JGPemcnp1FL82SaBgT36VVuMgHHereFI5qC5ChcY+lXB2YpK6M9 +M59asQDv6VXAGcVYjGCB+YronsTEuMWIHPvVdiQvTIzUoDYB7ioZQQprCK6Fy2KZyH96vwbduOel +Z4J3fjWhDtC49q1q7E0titOo3ZPT1qe1jxhh3qO4AJzUlo+DilK/ITa0jSXAA96STn6CmmQkZ7Cm +SMcEdq5kncpkZk64pN27J70wk8kjilU4/wAa1sIaVIJxjvU0U8caSq0KO7rtDN1X6e9R4z+tLwBT +T1FZEibqsgjIz0FVIwMjvVpSMetZTLi9BSwJIz1p3ODg9ajYpuyBjilB+nNQ0Uhd3YUhAUYprdeO +9BJP4VdrEXIZJBjpyKhYjgk8kU6UEnPSq5Yr36mtYLQlvUcx/WmHOB6YpTz1OacB2H4GtNiRYy2M +DingZFIgHHGalAFZt6lEOMjvSNwOe3epiFyfeoJSNp74qo6siWxj3Ry57jNQHZtXAIbncSeD/n8a +knPzmoq9GOx5U9woooqiQzmiiimAUUUUmAUUUUgCiiimAUUAZOKKACiigDPT0oAKKKKACiikoYC0 +UUUIAooooAKKKKACiiincAooooAKKKKYBRRRTQgooooAKKKKACiiilqMKKke3uYo4ZpI2WKYMY2I +4bacHH0NR0vMAooooAKKWiqsIMHAPbmkpaSh6AFHWiioYxKKWkpALRRRQAUUUUwCiiigCzaTtC4I +9a9C0O/WeNQTz0rzUE5roPD960UwBPB4renIxrQ5onoytnOe9KY81HbvvUc9qsgevWum55z0disY +wDgdatwgDFR46461NCD0NNgiwB3p6NnIqM8LxSRnDVFi79CzjjmmNyRx2x+VOxwSKYTj8xSHawYx +0FSoRjnrUe7I+tSqo6mkxbDgakDHIpigZxT1wM0CJB/Opl54qNcfjUg4qGXEDTWFOOCaYSckU0Jj +ScYpN4HFIc0wj8qqxNyTzB0NHfjpUfFOGc0WC5Jt6U8AYpq+9PwDUsqKIJOBVd2NW5Bx1qm445NV +EmZCc1FgdDUjN1wajPrmrJQDIJx0q1GQKrLyRVhV280mOJODxjrSc/UU1D2NLn9KQMU9MCmgselP +AzzSqKLiEX3p6469qbt6g04A9qTGhQRS5A60o96R8fqBSLWwmR+FNxyfSnHHelBAoF1IwhNNZSKs +4wKjc5yDQmNwsiDpTlI70cUmCOaZCJRimsRTN3NBOTQkOTFDA/SlzmoiQOlAc9PenYSZIehqAgCp +CxpnQZppCk7jCuRg/lUbxcEetWRg9aHGelCYdDLljwpqi8Q64rZkj3A5FV2tx6elbKRi4tsxnjO7 +rjNQyozflWvNBz0qlInGCK0Urmbjbcox5Vu9XEIUA81AybTkdelSopIznvTZSuato4PerrYwaxrV +yrAVp7iVzWMlqXew3zCueRSeZu71XkYjn3piMWbg4o5Sua5cDD86mGOKhjGQealGKljsSLgkD1qy +qcCoIwDj9Ksx55qGXECBSYFSfL3pmPapQMTbTW9qk69KYeuaYMQZPsaXoTTM9aXeDwKLBccMDrTs +9cCmbhkU7zBigVx3GMYpvC8UhcDGajkahIbY4uBml8xRiqsjVH5pquW5ClqXDLk8Uhk3VS3sD7VI +GbrT5bDcrltXJ4p4aqqMeKmGRUtDiyTce1NPOaTmgkdqQ5DRwfpTvMA/KozyKibPX8Kq1yVKxYaT +I61GWqLBxTc8daLDcicNkg1ISD3qsDgUoehoESMAc1WlH/1qsbs1C/NCEyv83GPXmjB5BqTaBTSP +XvVEq+5D06CmkZHFSZGcflTRzntSNNxgGcCnYoXAODzT8fhTuKxAc88YwaT7w5p54HHemr64ouNI +iKE9ulSRsVOR9KcVJFR4x270XHayLytkDJoPUe1RI+eKshcjNLYm1yA9T+tLwARTnXH41G+MYzzQ +FrFaV8nP61EMF/mztzTpRk89jTVByffpVKw2mT/KuNijGOc81BKVbkYHtUuCAahcNjPSqitSJ3sN +D9eM03cfoKbF1I6UMBnJNXYzWjuQyqc8mos8EDrg1NJ8wx1Paq+TyMcjgGqjsTWdmRAk5Oagfcxw +emc1YCJyOuKdHCzVd0ZRUnsUyjk7iOnHFTRLkjj/AOvVp4QinNQqVXI7dBRe4pQ5XqX7Q98ZPIq7 +tPXsaoWhw3rz+VaO4bSaxludcFemCRk7j3zTtvBA6UsTbiaQsA5HpSuTyjo4Fbp1qRoNo5pUmjHT +rTmuIzwT1FRd3NlGPKZ+NrYPT3qdeBkCoZ3XcCBketPjdOvTNaPYw2dkWOP0puR1z7UuQMfzqFmG +euOalGsr2uLIWB4706PccZpnmAYYjIBGRVg3MbkEKF9hTbIjG7uPEYOTj3qCVPlJ9KnEuAKilYnp +3qE3c2lGNiLvn2xU6kADnrVdEbnr3zS5OAD60MFsSuD1FZt4QQRnmtBnJWs66A5IrkxTtA7sBG8z +PHGaeKftz6UbOpPpXz03qfRR2EUjrnsTTMBTu9c1J5ZwSOKY3GD6cVC1ZQjFsZzjnpS5B69aa4PH +uKaN309aYD955HWjocHoaiZl69O1N3EDrTTuKxMwGeT2pAzdOcUwZOD+lOG7cSPyp3sDH5bvzijz +MfU8VFls8mkHOc8VSWpDWgs0MU3D4ORWBqGiKSDFxnqT0FdAoJOR0B609l6A4PFbwqOJhUppnnks +UsR2sDx0qKu4u9Lhu13ABZAeorl77TLi0Y5U7fWuyFRSOKVNoz6XsPXJ4oYk9aStDMX0pKKKAFG3 +nNKwGFwSeufak4x05z1pOOaAFycY/P3pKKKACiijJxj1OaACilpO3SgApQjlWYKSq43HsM0lOWSR +FdVbCuAGHrjmgBtFFFACjGDk9uKSpWeLyUjCYkEjMze2BgfzqKgBeO3PApKKMZpAFO2Ps37Ts3bd +3bPpSYPOO3WpZpvMEaKu2ONcAe/cn3NAEVH1pKKACjilBAzkA5GKSmAUUUUAHHapGlLqykcbtyjn +C+w/z2qP3ooAKKOKKAClJLHJPPApKX2HtQAlFLkjOO/WjjtQAlFFFABz0PaiiigAp3uBxwKbRSAW +lBPOO+KBtxzz9KKBikk5zk9KPpRxjryOlKMfT0oGWrDd9ptgBkiVSMd8mp9aOXm9P7Qu/wD2Wm6U +2y+tMj5fPiP05FJqvV8n5vtlzn8xSjv/AF2Yn/X4H1nqWf7Ovsf8+0v8q+YLwne4Pqa+n9SyNOvi +OotpSPyr5fvgd7H3NRW+BfP9Dow27KW5NpB+9kYPpTM88dDQR/8AXpQRnkcE1gdqDPvTt3A56nmk +A44p2MD8qQwGcnNPUf44pgJz0qRQ2Af5VDLViwnUHjtUmOgzUCnnB/CpQecj3rGSL6Dwd1KCuaap +HOe/aggdfyzUALnJ4PajdgHnvTckZPQUBwecdadgJBt2kfxZH5d6gucbTzzUidfrUVyABxTj8Qns +UUB71PFguMfWoeO3ryKlizuAGfeuiWwkWcEDJPAqJ2BU57frUpJIwOoqtKTg59OKyirsub0KfG/8 +a0ISoXGR0rP6N9a0IBxW1XYzpbEM554NEB5yO1JOCD9aWIknA6ZxS+yS9y+hypzT+TzUceCAO1Sc +A4xxXM9zToROvWm4OOO3SpWGeaApK46YqkxdSNQzEAeuKUDqCetLwDg9PWlUcdKBAikcjpU4pF4O +D0xTsDpjvWbZS0EbjkUdsjpnFIeSB7UNxihDFypprcdMYpgJyfQmnEjuarqSyCc4BA61V7n29KsS +46UPfSPbrbMse1T94KNx/HrW8FoZSZCMYyacuVwAKYMYBp68nmhjJQV46dadyMjOc0zjgGlGfTFZ +tFkxAA5PWqVw2Af7uKsc7SPwqpdMUQk+nFXTWpnUdosx5DljTKVuppK9JHkvcKKKns7dbu4ht2kE +YkcLvPQZpiIKUsxAB6AYFPmjEUskYcOEYruXocdxUdVYAoo5/KikAUUUe1IAooooAKKKKACiiigA +ooooAKSlooYBRRRTAKKKKQBRRRQAUUUUwCiiigABIooooAKKKKaYBRRRTEFKQVJB4IODSUUAFFFF +KwyZ7q4kt4bZ3JihZ2jU/wAJfGcflUNFFABnjFFFFFrgFFLRVWEFJRRUyd2NBQDggjtRRUAFFJS0 +AFFFFMAooopgGOM0UUUgCrFrMY5A2eR0qvSqSCDVRdmDPTNBvhcQoC2WAFdGFLLnuK818OX3kyqh +PU16LaXKuq+9dUW7HBVp2kPwRU0RBpjlccUqHpVswJjjtUYIznvTw3am8UAtydX6/SmllOc8c0zO +AaTGSKVirk4A7c1KuemetMQHGKmUHAGKliHKtPAI5pVGOtOwBSuXyirT+cYqPqKeCalgg5prYzTs +EU3B700JiYyKFQ85p4GSKkIHU0XBQuV2HtzTeRx39ambjpTMinclqw4DingYFNGaeAMVLLiRSelV +ZKtykYqlKeDVxImU3OCaYGJ69zRIRzzmmDnBH41qZXLMa981YHNV0OMe9TD0BxUMtEoIHanKN3Xi +owemeamXk56VLKSuOQCpCuOaFAPNPPPSpuXy6EOOSKVQf0pSpxxQM+tO5KWovSm8ck9KU0HgfhSR +TIuetKrgdabz69aa2aqxncsbgR1pjHtUQagHnNJIrmFINJ0pRzTsDNMlEZzTWbAqU4xUTCqQmR/W +nACgKeTRjFMVmAB707jvSD3pzCkCE70o200dSKU4WgYhAY/hSFOcU7ijcD+FARIJYh1qi8A5GPpW +o/zD0qBk7D1qosmdmY0luF5xUKgg47VsPb7gaozxMucVqncnYgTAYYPetKJt61lDfnPerttI1EkC +asOulOOKrxlsjtVqc5XFV4x2HWkth2W5ciPQegqfOcfrVePGKmTP1qGhrYsJ6D1qVWNRr0xSg4Pr +zUDuT7ug703fzimE+lITg5osFyXd6UwnkZpoyBSN8/T8aSQ3sK5Unio+Rk0oXNOEZ5+lMm1xhel3 +GlaPjNIF2jHXPNMBMn86Ydx9an2EmjZilcpoqEE8fjQIwRU5XBzTlA9Oaq5CV2QiEbeRSlDjHSp/ +lwOlNYjoKSbLlGw1VHFTKB65qEcVIvvQyVuSHpTD0pcimk4zSRUhjNz6UynHBPPrShR196exNrkR +B69qYcc/Sre3IziqzrzTTG4WEGDSgrnPSmjjpSsR3oBeYu8DpSbstUbetAbpiiwPckKUx1wOKk38 +U2Q5pal6FRuuKUZ6etJIOc00HBGTzTY0iTADHNKetJlWGPbmk46g9aSE2Rvnio1yMmp3FQOSOn41 +QLQlByKjbPNCtnA74oPAwRSsVfoOVlXmrSv0waoHHTNSJJzTsRexbZiRjPNVpWAOM4pS55xzVeQ5 +znmiwbjS5zzzUi7SODVXLZxUiluOeKdg5tCyqjlT09ajlAH1pFkwCWpjSpg5ppMJSVitna7c8Gm7 +yTgHgdahlceYV96M5PBx3raxyt6kpxtzUDPn5fxqRh8uetU2PzfjREuqvd1HPLtzg+9OjnPygniq +0rHJJJOBnioiT8v41py3MI1LO6NF5dwx6nFRr82V9O9VY92R35xirOGVvQ0uW2hTqczLlrwQSepr +RVlIx61mW6kqMVpRIdoFZTN6D6D0dVIPc1FNKoP17ipDE/PFRyQFgD+QpJCbs9SAz7QcE9aesjuP +qKfHbg4qxHbnPA6Dih2BSeyKMxk2huTjFLFk5OeCM1eltztOOKgiUA7SPyoTVhNNMkiBIAOfSkkT +g859alUEH1FP2Hnj6VN+prG7jYrpG2epxTkQhgPxqxGoB5qNgVJ+tFzOwwswPzU9WyBTeHP40uwc +ijQavYljIGRSFFcnNNRsdqUkKeOpqGawGOm1ee3SqE/NX5X4rKmkO4/SvPxsly2PWy+Otxu3oehp +Ruzg1Gu485xT0LHg814ctWe4hfmIOKhKkkntVgg7TUXXC0kBCwIOewqMnHerG3gg1Ds61SQXG/Kw +zyc03AwTkfSpAoAB7dKbx0wOec07IBCMdDTQcDrT8ryDnpimDpR5hYFzzn1qT5QRnO309aYA3BB9 +qRjgfjwKa3JY5XPOOnWnByCABnJpgxxzTgduD0Io5mJolXrkdBxSSQRXCsrgHNNByRUnbHPXrWyl +ZXRjKFzmdT0MqDJCv4Vz7xuhwRjnpXpOI3G0jGaxtV0VZgZIQM9a6oVL6HLOnY4wj09qSrdxaS27 +lWB60lnazXM4iiZVYfNuc4GBW1zCxWAJ/Wk9PepJEEbNH1ZWYEjocelM4xnPfpTFfS4AkdPSpTNE +bdIRCokVyxk7kHtUNFABzjFFFKB69qAD1oyMYwM560fLzwfakoAKKMnGKU8ZHcE0AJQBnP0ooGSc +CgAooooAKKPWigAoope+aQCUUUUwF4pDjPHTtRRQAUUUUAFKASGI7DJpKUEg5FACUcUvB6HB9KOV +POQRQAEAEgHPXmko6UUAFFFFABRRRQAUUUUASsYfKjUYLZZmP16D8P61HwaMHrR6/rSAXnpRSDNL +igYvX+dKO9JkUvSkUWLYqk8TbhgOhJPb1/Kp9YXa8g4/4/rr+YqtbqHljU92Aq1qysd7twTfXf4n +5aEtf67MUtj6v1XP9mah/wBes3/oJr5hvgN7/Wvp/VedM1Af9Osv/oJr5hvdu9uOQTUVvgXz/Q3w +27M8kDj8qbjJNKxLMxb7x5NIBjAHesDsQ8AkcUp3Ag5oXPXP0o5xjHWpLD0xUig01cge4p4IqWUh +Rn6GplPQ+1Q5BznmpFcgEA4yKhopEqnoOgJ5JqU+UASMsfXoP8/lVQOOn06VKM4B7VDVhg7KD8ue +cdaFZQf5VG2ORVm0t4JYbiV7hI2iC7UI5cnsKdhMWNd3OMmoLsbOBzV2PAHviqd5jkdSaiDvIbKS +jJ96evUAZpgJyT+FSJ978MCuhgTZ4IqGfO36dqlIOBz71DKeDmpjuE9iop+bJrSiGFOR0rMX72fe +tGIYXg1dXYilsQ3ODj1FMixTpiuePWiL+eKF8JP2i9H0GMYqYe/5VDDkDkdKlwc9cCuWW5oHBOaT +ODjoKXtj3phPoPTNAXEO3P40oI4Haosfj707PPHbirsJkgZs+wqTPH481EMk8etS98etQyhhPUAU +EEj3xxSkdabyBgfnR6A2AxjGaRsnGeuaaOc5pzEc/wAqqxLK8p4OevSq3O4/WrLj3PvVXueeRxW8 +TF7kg55PtUyySeWYs/KWDEe4pkEUkzCONS0jdAO9LxnIHahlaDw3GO/rSrkjI/KkbjAPWprWU28q +TbQwjcEg9D7VmUQEkAZ71QvGGMZ7VflJLMdu3knaO2ay70j1reilzGFdtRKJoo4oruPMCiiimAUU +UUAFFFFMAooopAFFFFIAooooAKSlooAKKKKACinE5CjA4ptHQAooop9AHrDM8ckqoxjjK72HRc9M +/WmVKlxPHFLCjkRy7d6/3tvSoqQBRRRQgCiijHYUwCiiiiwBRRRRYAooop2AKKKKEAUtJRTAKMHG +aKOcYobEFFFFIYUtJS0xCUUtIQQSD1HFDbQwooOOwoqACiig44+lIAooopgFFFFMAooooAKKKKQB +RRRQBZtZ2hkVs9DXoei6is0KD+LivNVODmt3Q79oJFXPBrenIxrQ5loekLITgHip1bGDVG0lWVQR +ySM1ejB/Cum6OBp7EoPFBxnFIOM5pe+RQIkUgjnmnr1xjtTVqROCKgdieMcYqUHFMUDg04k4yKQx +6sKUt/LrUBbpTlY0rDTJ0/OpM1DGetPzSe5S2HZpDmoy2M5oD45Bp2IbJxgcU8EE4FVw+CPel34O +amxSkOcgZIOQDTRjkU0t2HSlU9aYm0yRQaXk00Gn5pMpEUgHOapTCrsnvVaTk1cTKe5myLk0xBtz +71akUVWIbJrVO5HLbUlTtn3qYZFV4zxz1qYHmk0NbEyrv4BwcZFPSRcD1qvmlU9h04qbDuX0kGMU +vmGqyNgYqYNkCpaL5h4JIpRnFMU44NPJPNSxoCcUhbIpO9Iec0xNjDiiNWkZUH8Rxk07aG56UADH +0pk21G3EYjkIAxzjFR045yTySetKB3prYT1egvbFL35o6UmaRQuBTcdqVs8etMJ4oF1JAoHNNYDr +TQ/WlLZHB5o1KvoJt6U7Kj8Kbu9aASQaZKGkDqKCcijnNNb9aZLGMT0pobPSlK5zmjGOlUSOBFLg +EZpigkipAO1Ia1DA6VWmhVgR3q2BTHUckd6aYSMKeMoemadbkjHer8sG/tVbyWj6VrdNEJMdPyvA +7VVjyCfWp3YlTmoRt3DFHQE2XYzxg9anj65qGJRjmp0GO9ZsonGOKXvUYyD7U9eTg1JVx4XikI6Z +qYAAcUP296m5SjoQcGkVTkgVIdtNHGTTE0KijjNTKgHFQg5wam8ypZUbDXUY59aYMY6dae0isMVH +kcU0KW5Iu3FNcjt260bwKYzLg0BuiJjjn1pgY55OKRjmodxyfrVpGd7Ms7h69KQnv3qDd70bs44o +sNyJ85qUVWTOetTAk96GhJjxzQTSAikZs1Jb2GEdT6U5COKYSO9KCoHvVEJkxPQCoZccnNBfJNRk +g/QUkjRyGk449qaSx6UZ5z2prY496ohO4pwKZvx0pSpOTnpUDFsjHNCRUifziKTzCRzUDEnrwaXP +QVViLjic9+hqGTgZHWpOMYqKTDNweKVi4vQWNuxqXIwMVXO7PFSrSHYkLDGKhfPXr2p+MkelMOR9 +KEGpHFnP17VO2fTNRgZOKmAODRcLMrlcg0xcjmrG3qTUTD+VNMVrjlOOvTtUMjAZp5PSonwSfaga +00GFuhpQTyO3rSYBPTrTsHBqtCJXI5n2/L/OqzMw4YnBH5VNNtIx3zzVaTk8jjsa0ikYyk3oiJsg +/KeKdkbSMDmopX69RyBTN+OT+NWQ7JFiKXIxyaib7xIHBp8IIDdeelOMO4gAUluate4kyq6ZO7pg +45pUi3DA+n0q21m74I6A1Yt7JgefWqcjBQu7MrR2jH5gOasGzcnJHYVsW9uFUcU5oV5FZe01Ol0o +qJVtrUbRkfStGKJQDntUcPHAqyFPX1rOTuEVYY6r2xiomX5ceuastGOPaowoJ/lST0KnHUgiQdMY +xV6NEHX86rN8rY/WpYydvP4UpahBpMSZVYYrNdfmIq+8gAPvVNlwSfWqiE2mSqg49akGcc0wDKj1 +o34HvQwg9RGODxTJieooc87ue1IcsDmgHvYI+Bn3qfapGagjwAAalBBqZGlNq1hhypz+lNIJw1Oc +k5C4phPA+hpN6Dik2V7hgF49Ko8EnIPOKtSnJP8AKoVArxcZUvKyPoMFS5YjQpJHb3p2MZA9cVKA +DjHbv608qRntXmdT0PIr85GRkZ5pCoHX0qfbgZFNweTVJgQ7Dnp0FQyKc8Y461a5yaa8YHfrQBTK +lj06U0oT9KtMqgcfnURUjimBFsI601ueMdM1Y2scGm7AG5p37iK/oTxQwzUrgnHHTimiN+Mn1pJX +GNAzkE0EY4/WlYFSo9aU89Acd6pMTQIGT8qkG7GQM00ZyKkztxjqDVJ6kNCknHT8aerKwOeBimgN +0HNOQDA4q00ZyiVbrT7a5U5QE4PXvmuPvNNuLJ+AQobcCOvFd/wB3qC6s47mMhhya6ITZzTgeaEE +t8x5PUmkPU45FbOqaRJbuxUfLnNY7DGc9a6FK5zuNhBjnikpe1JVEhSrjIyMj0pKKACiiigAoooo +AKMHj3pSSeTSUAFFFHvQAUUVJb+QJY2nVjCHXzNvXHfHvSAZSUrbcnbnbk4zSUwF4x70lFFABRzS +57Y9aSgAooooAKKUkkknkmkoAKMk49hRRQAUUUoxnmgABwQRjikoooAMGjmjJooAKKKKAFBx+VLu +HfpSYopDFyO3pTu1M6U4dAPrQNC4PSjFAJyPrTu9IZb0xd17ZqTwZ4/1Ip+rGTbtdiSLy6z9flpm +mlhe2pUfMJoyPrmk1Jy4LE5Y3dySfrtojv8A15ky/r8D611I/wDEuvj/ANO0v8jXzJeuiTMTGrDn +hs/0r6X1k40nUv8Ar0m/9BNfMN9KXds9RU1vgXr/AJG+G3ZQbr0oU49OlMLZpoYA5/SsbHYmT54o +4qMOR+RpN2etTyl3Jx1x1zUi4wSKhVunPSph14qJFoC3Wjd7cYp20YPHOKjPJ57UlYb0HxkHnqc1 +Nk4Hp3qsmR0+lOOWGPypOOoXFLE5I9qmiP4c1EAcc9utSKpyOetTK1h6l1HIFVLs9fcVKpIxVa7O +7P4HFZ04+8Nsrjke9SRkZqFeO1TJgcHvmuiQInzgYPfHNVpxkGpnz0xxULng5Oc1EFqKexVQjPI7 +1oQtxyKoDG41eh+6M/jWlXYilsRTgE+wohJzjjiiXn86Ih6YFL7IupejPy8+vNOLDIxxUaHHTB6U +rZ7Vztamg7fk4H0ppyvP5Ug9O5p27jmgAGMCgD5vX1qME5qQEntTegWJBjGe4pQMdR3603vT/TP1 +qGAhyBTW4Bz6U8Eck80xz+dCBiAZIFMfPJ607cQPeoyzGrVySKXgcdxVViDwMfjVpgxDegFVWz1A +5Gc1vAyZYiYxuSrYJyMg9iOamCqQaqRhselTqWH9BUyWpS1Q8rzxxTgMHb9aVWBPrTioHzVm2NED +5wR9eKyLtiWOa2ZeFLVh3LZc11YdanLinoQUUUV1nAFFPaR2VEONqAheB3OaZVgFFFFABRRRQgCi +iigAooopWAKKKKACiiikAUUUUgCiiiqS0AKKKKYBQQRj35FHHeikAUUUUgCiiigAooopgFFFFABR +RRTAKKXa23d2zg0lFgFpKKKYgooooQwoopRQo6iAUUfSlUgMCwyARketN6IBtFFFQ2MKKKKkAooo +oAKKOKKpAFFFFABRRRSAKKKKACjjGc/hRRQAVas22yD3xVWrNoB5i/UVpSV2KWx6PorsYk9gK316 +ZrA0bAjX0ArcVuK60jzZSJj+lIpO6m7xxSbiOadiE9SyuMcVKh7VXibkVZVeQahl9CdSeBS80gzT +sZz60gG4zTlBDA0DNSAdKLisOUClOc0i0pI/wqSugxxTFOMntT+tGDVGbI2yaMmpymQMetIUI/Gi +6CzIsnPH51KoJH4UzHH41KvpSYIAMU5qOM0j9FOevapNegxmIxVd2yalbAzVaY+laJGLZG+AxBNV +2I4p7E561ESM1YrhipCTjFRgnpUg5GaA6aCZPrT0PSmHPalRuRmgSRbTGeamWqysCetWF/SoZSJf +QelHNNGaTNSXcfyBmk4br60mc00vjpTFcmAHUUhC0zzOlIzEc0rFXFbqKYaUnNIc00Q3cXPFISet +NGc0pz29aYXEbocnioSSDUp5HNRNnGentTRLF3cfWkGaUDgDFKF5pha7Dvijdg049KZgUh3Fz696 +ACaiLenanB8U7CTTYrEg00k5oY5xilXnimDFXJqUYGaavrS9vrSC9hSTzTDk80uRUTEk8cUIlj8K +RzUDKME0bzUTs2TiqSGmVJgMkdKIo+RmpSm/r1qWJOOnSrb0J6j0HapMelIEOc0dKzKHDOKkUHrU +YIzj1qTPbpSHZEysvb0pGYmoxxzRuOODSsNSAk04Fj+VNUtTqB7hkDn06AU3e2Ka2BTTn86aRDY/ +dnpQGPeozwBz3peTRYQ4nHWoix70/BPWmHcOtMaegj5I4qPZyc1L/hRtFNMlkQQZpxBBqdYweetI +0Z/Ci4+V2IAxBJqRWGeR1phXBBpcEdKARJnk07Bzk0wMoBBX5iMZ9KUtUltaCN1NRscHHpUh5BzS +bd1UZkfJFJztNSlT2pCgAJxRcGmQkjHpTBn8Kc6gdOlMGMYpsavcee/0qEg8kVJuyOaZx+tJFyFC +5zSFW6+1PH6U8gUXDlKrHBx6VGBzmppVH+NREYH402xpDckHinI2Sc00Y4JpCTnNJ7FJXJmwORTD +k5pA3vSZPOKQdQAIA9asIfu1CDwPWngjdzwKAY9sAnFRuuOakz1BqKRhg0AmiJmPQdBUDFieOpNS +Mx6etRsOB7GqRMgjDbuae/A9abGcEZ5H8qWVgVp9RaWIJiOD7CqsjjnuadIST7VXVWLYxxWqRlzp +aDSpYehqaG1Z1HXIqykCsACatwxcgdOlVeyMpe8V4rQYw3rkVcW1BUcVaWADnrVhUXbWTmbQjpYo +xwAA+uKVU9B0q0Ocr0oKAcjpS5u4rLoNV8L09qUZfrx70bAVpEUg+uelId2SKuOvWrKlcCoCv6U+ +JuualjQ8nOeaaQRz7UuPmwO/SnEcY9KXU03iV2HfvRnjFSlQTj2qFsrx/KqMnoQlTQ6kA1IV449e +aY4PequKzYxXIA9aaee9RGUKcZpvmkn0p2BOzJjyv0pUzjmiIZzmpiBgd6m5rNa3IMYJzxngU0uy +j8alOMkHtTSgfPagSGK+QPypZDtHHNMIC9OgqKaUjArnxE+WNzswlPnkRyc8+ppqqxP48UvzHB7V +MqkjNfP1ZOUj6OnHlQqKo7UpHJFKqMcDpUnlnpmsbJK5oQmPHTpSEYOBU7R44prIePWiz6AVxHzz +3pGQcCpipwabsI59MYp+QFYx9sdKTackVaZeQRxUTAn2pK1xkRRR70wqOMjpU2w/WgrgUa2ArlCA +OM+9IULAgHmp8kgZp2wY+WhPsDKjRNgegpm0jAA5q6VIxx2phTuOO1CtsBW2NjPelVc5VqsYGMUx +lAODV8yJtoRg4+XoKlTb3HWmY9PWpAvVu3pTUmJxQ7IyaeegqLjGDUo28ZOauM9TOUdCpdW0ciEM +M5rldU0Vo/3kYyCfyrtHG7I6jGaryRK64IyDxW8ZtMwlBHm0sZQ4I5qOul1nSGB82MZHeucdSpIP +HNdMZXRyzi0Mp6RSSbvLUttUu2B0A6n6CmVLHcXEUcsSOVSUAOB/EBVkEVFFFABRRSrjILcjIyO9 +ACd6KDzz3JNFABjrjoKKKlgt57gssS5wMkkgAfieKAIqKdJHJEzJIpV16g02gAooooAKKU44x+NJ +QAUvc46UlFABRRRQAp28Y9OaSij0oAKKOKKACgAkgDrRSkEYz3HFACUUc9KKACiiigAooooAUY70 +UelFIApwx+lNpR2oGOBp2CaXCqOueSKX07+1SWkWtMZI7uGRvlVHDMSe2ajv1KoAeSLq4/8AZakj +tmjnt0aSMtIwyAQQo/2j0/WjVcEbhwGu7k/qKav/AF8yZH1hrIzpOpds2c3/AKCa+YLtcuxbjrX0 +7rX/ACCNT/69Jv8A0E18y3TR75dwJGCFwcYNRW+BfP8AQ3w3Uy3UE/Wo9pBFSfN0IpKyTOmyY1i2 +STzk5pVBNOPSgY6H8KLlJakkYzjP51MuAx/nUA5qRCM81nJG0WTnOSO4po5O404c5pwXjIrK9h9R +oROp6imrgEfnmnSAg+1Q5JPpgU1qBPnr2waARnIpATjkc04DgnNIe7JCQBz9arT571YGOMVVn3de +cdKIbikyEe/ap48HORyagXnrUqgmtZAiZhkYPSoZMgYx1NTErjH4ioJWAXFRHcJ7FYH5upq/DyoA +9KzlxuzV1GwnNaVERSeg2cgmljY4H5VC75OKfEee4Pak17oJ3ZfUgCkJznJxzUang9elHy5GDgZ7 +1jYscOOhoBOOeKQdDmkPrnpQFx24dh0NSq2V49jVbNOViMcUNAmWMkN6U7P9aiUk9B9Kfn+dQ0Pc +UE9fWg4/z3phOG59KQcE9aLBcVsDbz34pnQHvSt3I6VAzcnHSrSuQOOf51CzLyMYqbPHpzUL9/yr +SJLHIQcj8qnGOBVYZzx1FTb+PelJDQ/kHjNSZyMeveq4k5+lO389M+wqWmCaCfO3p0rCmOXP1rYu +CQhPUDqaxX5NdWHWhxYp6jaKKK6jjCiiimAUUUUMAooop3AKKKKQBRRRVAFFFFIAoooosAUUUVIB +RRRTQBRRRTAKKKKQBRRRSAKKKKYBRRRQAUUUUAFFFFABRRRTAKKKKGAUUUUIApetFHHNUhAaSl47 +0lTJjCiiioAKKKKACiiimAUUUrKVODjoOlMBKKKKQBRRk9O1FABRRRQAAgdRng0UUUAKylTg9cA/ +nVizIEqnFVqmgbDg9s1pTeopbHpWkPvjQ+wFbg+7XMeH5d8aD0rqIzke1daPLlo2JyelIPepduOK +NtO4rD0U8GrcanoeKrxYzVpRUMslUY6VIBiohjinfSpC5JyBS8VHk96fkEfjQDY8cDimk0owOKTv +QD2DjingcU3j9KchFAkSADih16Yo3DpSMRj3qUW7WIiMY96UcHilJ5zSDrzVEPceAOaY3vT1IqNz +1pLcpvQic4JqvJz0qVyKiP8AStFoYsgZRn1qBskfjVsr3qB1GRVomw1QRUg200g9falwecelIroI +e5pu8Zx3oaoHbblqdrkp2ZbjfpVgOehrOSTOKtI3apaLTuXVbj6UpPH0qurcfypyv1FTYbZNn0pp ++bNIrZxmlwaBAOO9O69OlR9TTiTnA70CuP6fTFBOBSL601sZx1pdSugueuOhpRimjH4UA4pgKRnN +RsvFPDg96RiDgChaA7MYoNPxx9aADSE7cYpiWghP8qjOaecnpRtOM0yXqV+QacPSnsozmkCjNMWo +q9eKkCjBpqpzxTjgA5NIpbCDik3H1prZxxTeadiQLGk6/jRtOCfWlA5GaYiPb17VHtIPB4zU7jH1 +xSbPlp3GmRhM1MqqophUjOaduHH0pMEwJOMU3mlzzTG56GgLjxzipADUSg5FWAuKllDSO1Crjin+ +9OUZH60CtdkZPQ/pRn3oK80nBPWkMacg0AHvT8cUo9qdwSI2XvTSccZqYg7agfihDcUh+epNNJ4z +TN57UucimShM8+lKpBNMI603kHp+NMS3LakDvT3Zccc1SEuO9DTelTyl8ysTYU0YIqHf0qVWUjNM +kQhqZlgfbNSkbqQrx0oRXQj3HPepUI4BqLnpinKVGM9qGQiwFFIyjnHUUI9DN6/nU9TXSxVlXpjt +UHJNWZBznNVuhNWiHuN6DBoPAoIIHFMdmwe+KaB6ajwQOD0qTcOlVAxP8qcHxkUOI+bQe2eTmoDn +OQakP9KY2BjHOaGEWIWx1qMseo701jSBsfhQloVfUfk+tLE+11ZxuAOSPUUwnJ6/SkBHBpWB9y0Q +m99gO3ccZ9KN3GDSL04pRg/eoARn5x2xUbdxTyCc81FJyBg5oFEjY5b0x1oKgkEdDTTyeOuKVflw +D+VUJjthAz2qHltwb8KmDFgR61DINv61SMpFdl5685p6L82O3GaazAvkdKmVWPNaXMrXehagVQPl +GBVhNuc96hjIPJqRzxkYFZt3NOVrUuoQy5+tLkbaqwyggA+lSeYc8dKho0iyQ9QRQGOABximlqF5 +HPGaFqgmrMRS2cHvUqrUXRjVmPbkZ60NhCN2DL0xTI2IJq2wQrVV8KcgVKdy5xsP535FSDJGehqA +PkCnhgce1DRMGNZmB47U1yF+Y05yAMjvVSWTI56VSRMtycMv4VFO+FOOar+cF6+9VZ70ElRVKLKj +OKRHIcM2ffFKhOV7mqryZPbipUY5HbOK0s7GMpK+hrwZ6nrU2MZzUVu2FBqTduOCax6nRLVIYwGc +4znilC4GfWlwSRzwKkJG3oKlsuEUU5fl6VSc5bkin31xszWQ90xbrXmY2o9j2MDSsrmsroCB3IqU +ShTx2FYom3dDUokZgOcZFeTJu9z1VE2DPxnilM25R9az1ZsdaUORwe4qJFJFuS4wRQJgelVDhv5U +LjgimFkXN/6UocYx1qsGOT9eaeCufai/ULE475ppABIHOelRls5INAkJOOtDdgsBU5welGzIwKeN +rCl2DPfApJsCMRHnApdu0H86lw47/jR9etF30BkBQtgA/WjyxjHWp9hyKd5YGSOuKNWIqbRnoc0x +1zyf4fSrhhYKGAwDwD61GyHmn6gVQhOR2oHqOKmZTz2pAgH1xQnYHYiP86cnbtQPlHP0FHHAxVxk +rkyWg7jOO1NYDA/WgdSAPWnbVI5rTmRm4laWJSDkZBFctrOlBcyRLnJ5ArsWHAqo8StkECtYz5dT +KUbnmroUODwaTtjt6V02saORumiXPfFc0ylTgiuuMlJaHHOHKxtFFFWQFKWJ6+pOBSZOCB0PWigA +ooyRnB60UAFSrLiGSLn53Rs/7uf8aiooAM5ooooAKKKKACiiigApfl5/SkooAcuSdox82BzSAgdR +ng0lFABRk8ZPTpRSgkcjrQAlFO2swZwp2rgE+mab2FAAeCRnPNFKcCkoAKP50UdOlABRRRQAUUUU +ALRSUopALR26Uv04GKT0oKHjOKdyRn8qaD2p2T26cGkUPiJLqMkDIBx1xVjVQVG0/wAN3dD9RVeN +tsikDo2atazzJIfW9uj+ooW5Mj6s1sA6PqgPT7HN/wCgmvmC5IDsO+TX0/rmP7H1TPT7HP8A+gmv +l+65ZufWpq/Avn+hrh3ZsoyH5j1FNB9KGOSaaMVlbQ6k9SQBjnAJwCTjsKSjI4o47Uix69v0qZVI +wT+FQqAKlR8AjrUSNIsnDAfU04lcH06VHkf/AKqFx1/CsbFhIenvUPGc0SfjxQnBrRKyJuTBhj5u +hqVCGGQMACoQMjjr1qSLcMg9PSs5LQpMl4xnvVO4P61d5wT61UnBz696Ke4S2IBkDPvV+LyZoo41 +IWTOAD69uffvVAYI+tTxBSB9MVrIQM2DzUUpO01NIDj39aryswXBpRQVHoVl61eTGOT/APXqin3q +uR/dwenJrSoZUtiCQc561LCCTjGfaonI3H0qeHB7nrmlL4QhuTrx9KUngfrSjGDj60ZXH0rA1EBH +Q+9DDPr1pvA680bmUdadgDHYetOQHqPfrR8rBc1KgwM96TYCqecdqCR0HqaUAHOM0w8nmptcA3FS +B1pN+4YHam47dQKd0I5qrIQhccCovvZ68U5wBn6/lUa5Gfp1qkhDt4xx1FMJJ46e9SJGjIzM4XA4 +4PJ9P84qFu46mqSJbHqhyO/rUm0AnHTrUanA296lXnAqXcdiIjvnnNOXIGTT2xj0NG3Az2obCxBd +PhPQVjnrWtdn5OfSsg9a6qC904MS7yCiiiug5gooop3AKKKKACiiikAUUUUwCilIIx70lMAooooA +KKKKLgBxgY/GiiihoAoooqUAUUUUwCiijikAUUUU7AFFFFABRRRQAUUUUAFFFFABRRRQAUUUUwCl +pKWnEQlFFFK4woooqWAUUUUgCiiiqSAKKKKYBRRRSAKKKKACjj8aKKQBRQcZOOB6UUAFFFFIApyd +abTl6irhuDOz8NzHAXP1rtYSCorz3w1KA+3Oa7+2OVXHauxHn1o2kyzkZz1pykGmEHNAOO/emyEy +xGRmrK+1U0IyKsqR0qWBJ/jTtw79qaM496T73FITJVYY5709fWolBHFTKOlAh9JxkinDFNYUhvYb +nkCnBuKYcGkIOMVViLkvmCm785zUWf07U7ORSsPmHAljj0qQEciokyD9akAOCaGNDhxUcnvUnYVG +/qe1JFS2K79jTBzSu1NVhj8avoZrcUjsetREc1KWGKYpjyS2cegoQ2kNIAGaZzUg9KOop3J6FaQd +Tmqztn+dXXz3qrKnXArSLIlfoRr1z2qzHIO1VVBUgDp6VMoIxn9KGNMsh8VJ5neq6k08MKixTZZj +Pf1qbPBwfpVNG96mDHaM1LRa2JQccUo7H3qMMCPfFODmkSSH6d6a46Gn5zTC1CGyMnrzQW60p7+t +R4PSqJANxj1qReetM5yPrUqr3oGhcEcnpSMV/Kneoph9qlDewox696cFzntUY9R2p+7gUMasNZee +KaOv9KcT0FIBySKaIe4A9qa2cnPpxTiO3emHnNMGN4amk4pN58zYvQcsaUq361RA5ckU7nn1pFzj +mlXcTg9aQDQPXmndRT9tJgjIoKSK7n9KiON3Bqdgc9aYUOOPzqtCRM88UYOOaUqQKcoORSGkKgIF +SA+tKFUU2puVaw8MMU/I7VX+bOKePXNKwJkjbcVGAKNwak3DoaLDumOOOKQEDOabuPftSEntTsIe +zE/SoH+brSsxpvXg+lNITdw6cUZo5470YB570xIDTGJAwalAPemOp60XE0QNwenrQOcevNSbA2ci +gIOeKq6FqR9G+tTjLYpm0Z6dqlRRg4pMauTIPTpQynFKgxTz0rM16EBUkVDggkmrRHGKhdfQ9KpG +bGq2RShs5BqMrj29DTlz+tMdxG5XGaj4x071McE/Sm9RRcWpAc84qF8irJBxioypNCZb2K3fgUox +jpg08r/+ujYT19aq5FmxOQPXNRuT+dS7MHn61EduCo570mVFO5C2Dn1pCBjnmnkYPNRsDn60rmjQ +g5PsKcBminJjkUrjt0JVz0NOBzxUeCMHPWpRyOaLgkthjkAe3Aqrk9CDViU5GKgOc4qkJq2wH1HS +kOAD9KeBg05lG3iqTMnuRqPunNQyMCTz0NTLnGT1qGc8009SXC6uREKAW9DmpY5eAD3NQbwcg456 +Ui7lOPWrIWhoLPGo/GnNMCCO1ZzFhgCpVLYG70qeWxo6l0WUnCnOan84HHpWZtYtnvV6NCVGRRJI +hNvUuRvuA70/Jzg1DGCpAqR//wBdRszWWsR5IGCOtTRv3qozBR1pFmyw56UNXITsXjKBkZqvI+T1 +zUTS7u9IMtxTUbA5N6k0b5+lWEwDk1WiVgRk81PI4XFJoExs7YGO1UXYjJzkVNLJnj86plxyO1VF +DqoguJi3496qMA2QxweamkAyceuaEQsoPetdEjntJuxXAA61bhZWxn0qKReOw5FS2wYjGB1ovdFO +LTsaluRjrUrdR+FQW/Q1IxrnludUfhAk8HPeo3mIBwfWn45ANVLrKBm9qUrWHTTbsY2o3XzEZ71n +rIWP1p12S0jAdKZFGema8LFS5pH02GjywSLSHI9KsqwOKgVAMH8xVmNWHpXDI60SDnketSDI6+tC +DPanYOcAdeKnUYiZJxUm05xilCnHSpfQY6/rQ9AGBT+dOVeelPwen51OoHAp6PRCIdozilCDH1qR +gDkHilQDNKwEfl7cEd6dg469aeRk/QU0qePSjSwxVGTSENnFPRKU7s9KBCAE4/CgjnIqTbz+FJjF +N3QhBuZSOw6CmNz71KDnP0pPlPXg0LURWZTk03BFWGB7U1lwRSegyqyZYZ6daMdSOTjp9KmKk4x6 +1Gc5I9qLa3YbkWc8jp3pRg8dKcEppK5NUnYTQx+PxqJwuBipHxgdqYzDBGO1WpdGRykLoHBDc5rl +tZ0ryiZY1+XnOO1dX0GSe9MkjWYMrAEYrelU5WY1IXPNiMHHSkra1jS3t2MiDKE1i12xldXOGUbM +UqwAJHB5B9aQknGewwKOaKokO9FFFABQTnA9OKKKADiigEqQQcEHINFABRQTn8gKKACj09qKKADP +BH0oo4x70uWAK9AcZFACUUUUAAx9aKKKAClAZunOBSU794hB5VhgigBBjB559KTjin5jY/NlT3x/ +hxTKAA4ycetFGOnvRQAUY4z7miigAooooAKeMY9/SmUopDF54pabxxil5oAdyOPen5yTjvUYzT+c +fhSZSHpjIHvVnUwQoUnO25uQPzFVos5FT6kxZUJ6me4JP4ihCkfV+u4/sbVc9PsU/wD6Ca+Xbrhn +56Zr6g1//kC6rn/nyn/9BNfLt3ne2ecmlVXuo0obsoNngfrQDzQwwaUfpWZ0LcUGlHbNIR+tAyKR +onqTDIOD+lSAEYbioQOnPWpsOpZWBVlOCD7VnI0iwDHI607cwBz3ppxwPSlyNtSUI3zc4pArDvTQ +TmplHT/OKHoAo4GTUilsc+1INo980gwBWb1KRMOn9arXJP1qyM7eaqXA5NEPiCTIQetTRHP51XAq +aPPH1raS0EmSyenXioJcbcH0qbO5gOnPWopx8vTmpjuKo9ConXirg4UkVUj61dHK+wrSpuRS+Eqt +jJ9qlj4wajfALZz7U6I/MM9qHsKL1LicZpMtggUpOQD2FRlyCDxj3rFI0FBPBJ5p3bPXmo9wbHvk +0p4GOlDQJoerfTjvUoZs+vtVdeenSpUJUg9aUkUmiZtwOKiZzn15oaRn5PFMdiTk4zgdPalGPcls +kU4PXPrQzc5BPSodx6Z5z1pA/anyg2PkyozUOSe/FOkb3qIAnp61cVoQ9SXcSvXv0phz1HNOHXvT +SOnPemDFGc8evNTAgAA9DUSlR9c04nOfTAqWNbEpbnHWjdjvmoBkVKpxzSaHcq3xOAemazK0L85A +ArPrro/CebXfvhQPTpRRWpiFKTnA44GKSimAUUUUAFFFFABRRRVAFFFFABRRS0wEoopccE5HBAxS +YCUUp5JJpKaAKKKKl6AFKACeTgetJR6UwF+Xn9KSiil1AWiiir2EJRS0UmAlHHFFLxikMSiiikAU +qsyHKnBII/A0lFABRRRQAUUUUwClxSUtUkIMkdKSiioYwoooqQCiipYJVi80NGriSMp838Oe49xT +QEVFLSVbXYQUUUVIwooopAFFFFABRRRQAUUUUAFFFFABSikoprcDb0OUJOv1r0ewYlF9cV5fpRIn +THrXpdg37tMkHKg8dq6obHHXWpp57UzrninccGgHBwK1OVbkiA1OgzUKMc/Wp1qGyrEopwUjFNTo +MVKD69aVwtcUACnIOeaAD2pxBpBYcODQcHmjoOabkUIGN5ye1O2HFCjqe2alC02xJXK5Ujmkx0qy +y8cd6ruuPzpp3FKNhRjjHOKlUcVEox06VMuKljiBzjFQSHpUxb1qCUjrTQ5FeTjioskc0sxOR1qL +J/lWljK4/fmmjPWkUjkUHHWnYLkgJzxT84qEHmpF75qShrHPNQsMipWB7e9MI4/CqJS1Kx65FPHX +NOIUHFLxjp0oHYQc8+lByfakPPA703OPw4pkNkgJqVXJwDVdST7U9C3Wiw1ItA8YFLuximqM/hQw +J5FQUmSCQ5p4f1qAHGDQHHP86LDLP3hTSCODSI2R1pzMG79Kkrl0EH604HnPSm8Uox+FMS3BiajL +d8U84IqJgRjHemhSYbyB1pwZcZJqBjjijPpTsRcsZHOacOce1VwxPB4qZG7Ck0UncWTeVJXGR61A +Y3b77H8KtZ4ximMBkZpIciNERRgf/rqRVz1pvyk1MhGMU2EVdke0dPxoBwakJFMOKSCSsL0PHSmt +kmjP6UpxTJRHtJ/GnrGcUZ9qkQ0NlRSInXimAgVM+Pzqszc0LUHoPLDBOcEdBTd+TxURfOfalVsg +Y7U7CuT9eaDjBpFbjFHtSExme4pevWlIxR2470xIBjpS9qBkdBzS5OTSGyLByfSkxxU4wc5pCB2F +O4KJAByM+lOCtuFSKPWn7cChsEiIq2TSAEnmpgDzkUwikDWohVQ3FL5YHPFOUU/AYUNlpIqPjpSr +kCnuvOPQ0g6ZNUQ9x6t3p+7I4qJcVIR744qGWthC5PSoz3B6Gn8DvTT8x9KpEPcQqScc4puMZ46V +Kpz06U7YCBSvYqKuVDnmlJHU06RSMkVFuOfpTE1YdTTgfjSEj6Gm54osU9UGwYOOc0bRj3qPzMYF +PDjFOzGmkMYZ9uKhZcE1MWxw1Ruep7UydL6FfHBz1pp5x6CkkYdPWm7j60rGl0OGKVck8UznjBqQ +NjIHWgSY/d0o3nJ/IVHv3cdyabk5A9KLCvdjiWwaACe3WmknjHQVIh7d8UMtWsAU9uvFLgj8etOQ +7iR3pWHyq3HUimjJ7leRW5x2qvIrECrbZIwPpQIaoFvYoeSQRxT/ACDwcHIq8IcnOKmWLIFXzaGD +VmUUt2Y9KnW3b0HtVxI9pOO9TKmAeOaiUy6dNPczPszD+tSxIACD2q5IoAbAqru2nrRzNoqUEtiU +KBg+1DkbeOlQmTAwelN3M2B2pa7lRSasMJJPBpBweuKeI2zjGe1SNBgjirMZIjHzHFWkhIXH509I +guDUrFduaiUjSFO61K0smzHtUEk+4fhTbyTsKqrJ371SWlyZLldiRnLYIqIkkkdKnGMHA9KjYqCc +8nNWiZu6uQOPm6gdDSNIFUYPtUU0hBOADk1Tlm7g98EVfLcxjUsy0XDZI9Cas2hBUYP0rNjZmZcA +4zya1bKPjjn1okrIalzM0ISf50446ZpVXAzTW6D+Vc0jsp7Djk4NZ1+5AIrRDDbWLqM+GIHJJxXP +XnyxO3CUuaZkPHvJJ9asxwsM8flTVGCDnPOKtICDn1r5+rJtn0UI2Q+JQRVhUxyR2qNFHXpUoPGO +uKybLSJFRY859OBTS3Qe9AJfg/hTtnc80m7jSJEbGM85qRRuPNQYK9KkXPrUgS7DTlznB7UKc9Pe +jgd6q9iepIQpwaAAMU1WBHvQSM02+oDimacAMAUisp74xSHr60r3GPxjn2pu4t17UAttGevpTRv4 +z0pWe6DclANB98U3IP50EdPWnqJi8c4pvJJ7c9KXk07HU4oQEbA/nTXOMU/OTz9BTTuzyOBTVhEW +0dvSmtu5qXrzikYZxSauxkBGe2DTPLB/GpiDnPSo2BAPNNvTQErkDIw4NRuB61O7bhgdjUZznFHN +cLFc+mKXAyPTpTyobnpUWxu5/GqjLUTjoMmhinQo6gjGK43V9LezkLKPkJyK7baO3XFQXNtFcRMj +r1rqp1LOxy1KdzzqitDUrKW1k2kfKOAfbrWfjjPua7U7nDKLTCiiimIKKCckn3ooAKKKKACiiigA +ooooAKKKKACl5459aSigApccE5HBAxSY689KKACjJPU0UUAL1zxkmkoooAKKKU7c/LnGB1oASiii +gApQcH19qSigByjcwGQMkcnpTaKKAFpePWkopDQ8ev6078eKj+lO7ZpDRPbRtLKkY/iPaptSK7FH +pPcY/MVP4fdE1K0LdC+3/voYqvqW8hCwIJmnb8yKEhSex9WeIs/2JquOv2KfH/fJr5cufvMM9Ca+ +ovEJUaJqpbp9in/9BNfLl0QHYjpSqfCjSjuymec0KfWhiBSDrzWZ0p6j24zkEEdRSLikJyeeaBSs +O+pMM9uOKeCfxqIGpR0P51DNkJjkdORThk8D0pnHFOXGCM0hoQbgCM1NEckZ5qME5qRWxjrxUyGi +Q4/CmgjI7AU4njA/GoznkYqEWWUwQcHt1qrPyTg+tTqxxzVaYruPJ6UQXvEyYwAYp8eMn2pmeM9M +06MjArV7BdXJTyQAfrTLg5QUpIOaim+6KmK1FN+6V1681bHTIqpH1/GrgPB+laTJpfDcrNjr3zTl +4waZIRk1JHzTexC3Jk4GPaluWjJXywQoUDBPOe/amD3/AFpMjOMVmty3qIpI4zTyQfpSjnr0P6Uz +HUdqYbC5x071YTGOe4quoB6VLk9PapkUiQbTjsBUTMQwzzzTmIGAD3qJuTj3PNJIT7BnjHGRTQ34 +c0HqDj2pvYfWrSFcexwKbhR34o/zikB+vFCQtx6E8+tKcDFCYzkelDhaXUd9BAR6delP564NMGOM +Zp4JPtg0MBeh7ZpVyQSeO9NB49ef1pwbIx9KljuULw9Kp1bvMbvWqldlP4TzKvxMKVCqspZQwByQ +e9JRWhmFFFFMAooooAKKKKQCrtDAsMrkZHqKSil9/eqASiiijQA60UUUJAFFFFABRRRSuAUUZopu +wBRRRQwCiilpIApKXjFJVMQtBBwM0lSOVKLjqKFqBHRRRSaGFFKaSgAooopAFFAooAKKKXmqVhBS +ZooobCwUUUVmMKKKKaQC0cUUlWIKKKKQwooopAFFFFABRRRRYAoopziMEbGLDapJIxzjn8jSsA2i +lwaesUrcKpOapQlLYTaW5HRVhrO5RdzIQKhVRuAPHNU6co/EJTT2G1JHFJIQFGa6zTPDNjdKrNLk +kA1rXGkabpqqQgOMGtYUob3MJYh3skcxpmlXpkVvLIwa72wR40CsMHtUWjX1jdkoiAFa1pI0BwK0 +jKL2ManPf3hAS2MUo45pFH5U8AVRikSx9Oe9WFPT0qqMcCrCnpUsssBMfNmndQM0wP2zShgeKViW ++xMMnpTxkjnrUanpipRyBSAD79qZgH6U9qbg0Ax46Y7CpUIwM1ApxnvTt340NDjImcjHFVn570/d +xUZz0oSCUrgMdBUmCBTB7dalA4GaGTEaarORls1ZkqrJ1PanEJld+579qYV79alK5+ooC4q7kKJA +QFBNIOSBT264NJjtTE0KoHQU4daRQAfpSlsZxQD2GPgZNQM5Pf8ACpZGyDmqjv17VSRLdh+S2KkU ++lVlJ4PrVlOuKHoNPUXHXNR4x171I3fimLyfahDauIPUU8A8UbQOlABz1pByk6sQM1JnIFQ55FS5 +4zSYIYcHpTAQDzStgkYqJuT+NNIWxZWQYoLYqvuOMGjeSeKXKVzaFtWBxUoyRVNXx+NShzSaGmSH +IyKhYkGp8gioypLDH40ITuR7SeaNuDUwXPSlMfOcUXBQTK27BxUkbHr+lI4pUz0quhK0ZNk4pvXF +O5owDj65qS5EY4J9KcGxzUbFgfqaY2/1p2IUrE+/OaQMTxUSsc9acOtFgbJsCkJ4o5prZwaQIQt3 +o8wce9MbOKbnp607BexKz1Cxz16Clyf0phyRz7U0hNhwc+lKF96FAOfQCnY49/ShgPUHvTxxTFzU +oxUl2AgkCmEFduOlTE46Uz60rjshuM4NLjIyKXaaVQaBNDhtxRwOKTp1pC2eM96Crg3BoLc/jS5z +9KMDIoI6huNMOTTj3ppJwc0DYBiDil3YFMDetIzDGKdgvoKSDTMHg0bgDk0bsnNMQ8VIPQmo1IzT +x3NSy4jHAFR55xUjHOKZwapEPceuBxT92Bk96gG6lYlRuPTOB9aTQ0xJOhzVUnngelWc7hzUTKDV +IVyP1qNn/SnEEZpuDk5oKvdaELtk4FCtkcUj8ZHNMXjFV0JuWPr0psmMU0AnB7UOMDmgFuVXKjJ6 +4qMden51I3Gf0qMA80i1uOB6E9c1ICp7VFjnGOOKlUhe1Iu2gnIGe1KuwsD2FBx+dRs2KZCViRto +Y4xgYppLZ4qDeQx+tTLgnIoVxN6EqPz+FP7En8aiVeT19al3cc+9NohbiBAenUVJGOQDTUPep1AB +HHSn0B/Fcl8sHj1qVYxjGOlICTz6U8Hjg/jWd2XJa3GDCk+lO3qR6U187gKjboeeKdri5rD2YEHF +VJI/mye9SKG6051yMDjvVJWJbuQeTkDHenxwetToARg96sRoBx7UnJjhoyEQhcU91VQKkfK1GzAg +ikmEtGQGTKttzuGMVWknZVcn1OKexQE4PvVC4fkrjrVRp3lzB7W0bIhmnzk4NJCwPrk1BLuc+xNS +QcHHXit7JI5pTk3qXE4G2mSZI5OKRWZc8evNJJuxn61PU1WsSpKRjA5FUCp3FccdRVqR2JbPfFRx +4zgrzzitVojnUbslhTP1PatW0jIIHWq0KAgEdx3q9bkDAHTHaspO5sopMslSowPSoWbOMVM5B+tV +mPzVizpg9BXkCqSaw7hhJISTj5sZq9dS8EdKzDyeOma8vHTsrHtZfTdrsdGFJ2+/WrcS8gHpxmq8 +anp71cAYKCenTNeM5WPZsCxtjJ/CpAD170qAcHsKdgYyOtJjAcCnjj8qbg8YpffNS1cQ8Y/nQRgc +U3np+VODggA076WGAJUgCpQ2aYWTHHXGaFdQKNxEwx06UpC4yfWoweTnvTgc9KfQLDjgnI70oYY/ +Gm8YoPWlewh+Tj8acDhRULHB+tG7ce/FK4IkXbk4pfqaQ/SlJ9etPoIdxmlBHekLDHNKCOfrxTdt +wG8dRS5AGfSm5wwHbNK5A9qd2KxFn1604Dr9KQkNn2ozg49utJ66jEbGeKjbB60/O7I74oCluD61 +I0QMqjp3FRsmR+NWCh9c0mBg+lN6DKhXrnjFMbHORmp3Vsmo2VueKa0EVyRyaQdOv0qRo+nB7dKj +2kfStIyaZLiinqWm/brYvtwA2A3v6Vw93bG2kKHOR1r0ZZHAZMkK2Mjsawde05Zl81R8w6120qhx +VaZx/OMdqMnG3sSDTnUqcGm11I42hKczbsdOBjpQihiQWC/KTk+w6fjSUAFFFFABRRxj+tHQ0AFF +Axzn04ooAKKOMdefSigAoo6UEEYyMZGeaAFDYBGByetHboMg5zSe1FACnGAOO5z3pMk4z24FHFFA +BTgdoYcfMAP602jigA9/WjtmjjtRQAUUUUAKwCkgUEknn0Ap9wAs0qjkK7AH2BqPjjH40XT1QMKK +OKKAFFFJ60v0oAUfhS0lHtSGXtKZEvbVm7TRkf8AfXek1UESbT1Es3H40/RovO1CzQjgyrTdWJLq +eOZJjkd/moXUmT1XzPqjxEN2h6sM4/0Kf9FNfL93glsdc19QeJcLoWrNj/lyn/8AQTXy7dsQzcda +U/hRrS3ZTzS5U9gOB0phJyaM/nUWN1IcTSjODTM0uaVhpkoPAp4JH8sVCCetP3N1BwR3qWjVSHZp +w/wpgPQ+9P5Oallpjs9/wzUg9R0wai5wRT1yc/lUspMmHT070c53CmgMAQaeoJHrWZQ4fdyKqTHJ +4P1q021V5HSqch5+lVBakyDnH0pydPpUYanxnitHsCd3oOJwfrTJScGpMA5NRTEEYHSlHcU3oRR4 +zVrI24HSqaE5q2Puk57U5k0n7pXfls1JGQAAcVE7HdUiGqexMXqTghgRRjHXHcYpm4Dp0FO4OCOt +ZGov5YppJ59Kd0496aTxgUIGOC8jHbrUgAXndUS7hzTsjGaTGmOYjpUZIX/PSl7e/WonbP1pxRLY +5iaOvBPSmA0biM+9VYVx7YP1FGOBSA568YpSQB/KgBy4HHc0hOCQCKTIwaaSOM+vWlYLkgcDP4Yo +yTmozgYH0ozk8jIFOwXJOOcYpdwx6UzJNIxwP0NKwXKl196q9Szkk1FXVBaHnVPiYUUUVZmFFFFM +AooopsAoooqQCiiimAUVPZtZpcRteI0kAzvVDgnjsfrUJxk4oASiiimAUDk4oooaYBRRRSAKKKKQ +BRRRTAKKKKaegBRRRSABS0lLVRQCUUtJQxBRRRSuMKKKKT1AKKKXimAlLRSU+ggoooqGMKKKKEAU +UtJWnTQQUUuDz7UlSMKKKKQC0elJTlUscAZq0riG0talrod/dLuVCAenvWlD4SvDgvwDWsaDe5jL +EU49TmcE9KkjglkOFU12um+G7JZCJ/vbuhrqINC0u3Td5Y45zV+zpp2e5nLEP7KPN7Tw5qF0NwXA +qS48L6lAu7bkV213rNnYPtVR6YrT0y/tNVjK4GRSc4RdnEn981zJnldpaotwqzjChsGvSdI0fRZY +0dEU4FZniXSIYcyxLtPJ4pvhC7Ys0TMce9OonC0oPRjXLVjeW6JvFEFnawttQD6V5tI+XZhxzxXq +Xi63325YV5ZIMOw9zRVb9mmLDRipOxp6VqdzbTJhjjPNdXrDyy26uDwyg1wULYdT3zXoC4utLQ55 +C1lRaUjXE35U0Y/he7MN9sY8NkV6E2GANeVWzPb36leMOK9Rtm3wI2eoqrcs2iauqTJU5AFKeDjt +3qNGOfx6U9sEZrU5x4/nUyGqy5yKnVS3tQJk30p4z1pi9qlA4pEMfHnHNTKc1GvSnCkxoceKaWIF +KcAUlCExpJ6ilBIpwXdSFcCmLUTnHNKKaKco6kGgBwqUDOKiUjtUwxxipZcSNu4NVXHPNWpOCapy +biSelOJMyMnH9acGUjFMNMBq7CUrDnxk0g65oZhwBRkZoF1F4pCAB604jPQ9aTBAwaAZC+WPFVHW +Nsjn61bfocd81Wdef5VaItcRRjA5+tWQFCoQwO7OR6YquqkH2qaPJ/pQyluOYDGD2qLc2QKkY4qH +B55oQO5L1OM9AaUketQhjuFO3DP4UWC+hMvOakyKgVjnIqTqPpSaEmmOJHU1EwOeKcTnil/woQPU +hwwPrmpAvGTUoQHrSlMjincXKyHIyBj8qUH/APXSbSCcml+7QNXHF2zxTlcg1CGOeOcUuefxpWBv +Uuo6kelDMMYqpuAJwaeJRxU8pXNoObB4pR+dRFs9KVSaqxKauWcUcdaZu4zml61JTGuB0puDxSna +OKcoFPYlK7I9mCTT0p5UAUwECi9w5bE5VUVfmy5wSvoKhJPanjpQTxSQ9yBs5zTeoqTP6GkxVE2G +Y45pjelWSuagfjJHahMbjYE5wfanjg5qMdBS7ugIosNMmU4NA6n1pqntTsdSakYufWlyKZwOadxx +igBynnmn5446UwAEVIMY9KkeohGabjgU7pyaYzYpiDJ/ClBGcjioi9NM1OwrlgkfnUbEVF5xI4qN +pMDrzQkN7ErNgUwMD171XMpOAelTJg8VTVhJXY9lz0pDuGKUAgnrRjmlcbVhy55qUZ4FNXIp2f50 +mVAR8fjTOxFSH60xgM/zoREtxOc4AHpUbKSSTUnJOc9etPCGi9hpXIMEDFJjipWHWo88cetNMTiR +uBjiq7788VbK/iaidcfzoKjsU2zk4/Gm7SB9akYfNgdSaOjAVVxqPcANoHFDjK80pIpjH/69IdrM +hYL2qHHfNSSdTUfI4H40tS3bcQknpThyOcYFICcc0jNjrTRMh+ew9M1E7Kc+vejcSSc03IbH60+p +N7oAvzAdzVtFH0JqJdmRVlcYpO5UUuo0ZycUP0xRg9aQnJ9KpMza1IwxVj71ZRiSfaqxIz06d6mj +fOCKZDVi7G2QBT9zDoahiY96Vuo565qLamt/dJGYde9Rn5x6UmWOeeKUL0HOaq1jO9x0anGPSpCv +HNPSMEfSnuoxz6VNylF2IV29DxxUm/aODk1WkkCcetRPOQQORina4tmWmkJyahZj+eaarg9TyaaS +WyM4ppDqFaVgGIqtLhvyqW4bLH2qI4ODWq0RhbmZW2kbiM0iN82astt2lvSqgIDc8dM1SdxSgolk +P8y+h9KJT8pFKMA5x2xUUmOe3FLqXG9mUJSo3HPPNCsQc0su3kgGoY92QD25rS10c/wyNO0YvkN1 +6VpxgKVx3rNt0AAZRzWnEOgNZSNYXbJmJAPGSapu3JBq5IQUOOuKoTYUMe/NYSdlc7KMbuxQuJAX +APAzjioF27uvANMnckke9NQtx+FfP4mXNJn0+GhywRcVBknPNTAkDHWokUFQc9OKmQnvXCzqHqw6 +dDTww6D86jGCffml+Ucf5NOy2Ak3DHy03ng0zcAMHpSjGMZ4NFmMCzVKG4xTRtzg9PWpQq9aEFyM +hiM0o4HuTUoUDC5oAyenTtS8hgjZ70oYjJoCc5HFGzn8abuthC7+h6+lPzzzSbP0FPAXHFLV6iYg +GacRxSbtvTrRknJo0J1BevzU488jtTeO/rTwelHkwuKSP60mOOtKwph3ZApgGcUrHd0oU/Lz1puQ +KEDGbSo68GkPXgmlYjNKCBwPxpW10HcBweKdnpSDB45NOC+npQ9QGspJz7Um0EZp2Dkk07H609AI +dozyPeo2GOasFR2qNkzz3pagViM5xx61EY+v0q40eB71GyjsKfoMp+WSSc89qZLCCpBGQR3q75Y5 +4qKSMDgcVpGTWplONzhNasvs829R8pOaxuhOR613+r2QnhcY+YDIrhZo2jY7vU/WvRpTurM8+tCz +uiKjiiitjAKKSloAKXI+bI5PT2NJRQAUUUUAFFHJ4FGDgnsCBQAUE8D2oooAOO1FFFAhWCjGDnjJ +pKM/yooGFKACGy2MDIHqc0I2xg2Acdj0NL95+SBk8ntQA2ilAznoABn60lADnKOzsqhFzwoz/wDX +/nTQCc4HTrRU0DwRs3mLvUgjHr+Pb8qAEnGGXH8SI31JH+NMTZk7s42np644/WldmkOcAZwAB7cU +0Mu0rt5JBDelCASiijmgAooFKeefzoASnZX5cenOabSnHbngUgNjw4ofVrMDgBifyFU7/JEJb1lw +fxq34ckCapbMcH7wGf8AdqpqGAIgOm6Xn1+amkrMUt0fVniY7dB1cntZT/8AoJr5buchm75zX1F4 +pYLoGrk9Psc3/oNfLtwGLvgcDrUz+FGlLdlHvS8Y6daQ0ZqTZByKKTNAPpQFx4p+eKZn9KXJqWaJ +kmTShitNBIBHHPFL6ipaLuSZ/rT13dTUQPSpAcYB9aho0ROORj1qUFutQo49KkzxWLRaYSNkVRfO +eT1q45+U+pz0qk/XJ49q0poibENSR/yqEkU9PzrRrQUXqWAcioZ8Y605WYA1DMxJ5pRWo6kvdI46 +s5+Wq0ec1Z/hzVS3M6XwlduTUicc1EfvfjUi+1N7Ew3JVI704ZGT04qMbeaVT0z0qGjVMfuJGR1H +SjA6U3OCP0pwz1pWGO6Ypwx2qPLFs55zmnfjSaGmOY+lV29Klf61ATzxTiiZMXOTxSj8qZz9KWrs +QmSZ54PpmkycfjTBSjmlYq4u7BxTST3pxU7SRjaCB+dMPamiWwBNSBvX86j+lOHIGaGNEmeOnBNO +IyMdvWo89h1p+T9agu5RuBhiO1Q1Yus7s1XrphsedU+JhRRRVmYUUUpGADkc9qYCUUUUagFFFFIA +ooopgFFFFABRRRTQBUrRxCFJBIC7OylO647/AI1FRRcAooopAFFFFJgFFFLVWASiiijoAUUUVLAK +WkpatAJRS0lFriCiiipGKcdhjgUlFFABRS0qqW4HX09apbgJSUppKJPoCCiijFRuAUU7aR2pKrla +FcKAM0tbGi6PLqUwUKdo61rGKJlJRVzLS3lkOFUn6U/7HcKOUIxXrOneHdNtI1DIpbHJNXJNG02Y +cIp4xWiVJaM5pVqm6Wh4oUK8YpvrXb+JPDAtt00C8egri3RkYqeooqUVFc0dUa0qyqeqGAE10/hf +SftcolkGUQ9K5yNcsB64r03w5bfZ7BDgAkc1EEFaVolqe/sdMQKVAxxVa18S2k8vl4HJwDXKeJru +VpyoJwDXPx3MsThlOCDRVTjoTRhGUbtHo2p3IEqtGcfMK34yZrTcD/DXliarczFd7ZzjrXp3h8i5 +soyT/DTc9UyZUmoWPPNdS4Fy2SepFdD4PguI8yNkKa6G70PTZZd8gG7rVyKwjgtyIMDjjFaVHGT0 +JjUkocpzvii+URuuR06Vzfhi5K3wyeGOKZ4oN4k7CTO3msnSbloLmJunzAmorJpWNaEU1fuen65A +JrM89q8lvE2TOvvXrjSLc2PHOUry3WYyly4xjk1XxUjGl7tVpmaOtd94eBuNOZD2zXBDNdv4TlZY +JF+tc8L8yaOmtrBmFqMbW95nGMHivQNJuPNs4mP90Vw3iBx9oz7102i3cY06MbsEV0VLc6sYK7pK +5uq4zkHNT7iR0rKt5gzYznntWsgGOOlWY2HKOc1aTGOKgT05qdMdKlgTKvrUgGR+NRpnr0qUE4pC +dh4xzTsHHP501SPSn5OKQkhjYIoAFO56mheaZPUUDB4p7LkUD3p/3gKls0UUVmXFN7jB4qZwKYBi +qTM2iRMU4+1Iq0HpUlrYhdixwaiIZmAHfipH6jFQMxUg+lWjN+Yy6XYwXpgYqv8AdxU0zGQ7mOTi +oeuMdatbEj1IznvS85wetMXNTAdfpQwQDigjdkntThmkPAI9akbIGwT6c1DIxyMdKmfHXvUJK5x1 +qxJjCe4qRM9aZ3z2qVCPxoYdRGIwPeoJOMGrLgEEVAwBOBTQSIstwf1p6L8wPpSheMVIvSnciw8D +pml6UAZxTWYZqSluO6cim7iMk0cYpoPPrTC+pPG7E42kD1NTHHJquH7DNS5yM+tRbuacyewxgvao +25IpzNjNN4xmqM+ogFGMGlBB6dqCpPT8aYSQmKUKOfWpAuR7inbMDJ9KLisyDOMj1qSM9qjZSS3r +kU5AVzRugtZllQpoPSkUZxzTuMYqCpEZ6jNSK2KaeSM8U1mxT3Ji7E+5SM1ETgkVEJOafuHFCRTl +ckHpRzSA8A0pIyCKBIjIFL2pWzio87RRuGxJnioSc8UpfIxTSxFNIbYgOaXof6Ug5OaeQDyKCRVP +51IpqNF7VKFxzSZSFxu59KcE4OaVQcH6U4dKlsaVxg4o3DpTWOMimFs8CgdhzNioixP+FOPpTVAz +k0xdSM7jkU3ngfnUzYyMUw4Bz600DIBnOacVPXrUuBjpQeOlO5PQYqipFAVRTM0bh3oGnYnBHWg4 +61GMGjjk5+lKwNkqkfhUnB6ColxxUnapZURD0x7U0n0qUYI5qL5T+dCCSHJ1pzNjvUYOCKXIIOaG +hxdhr4J68VC/tT2btUfBIpoJDweMjvUcmWpynt6U2Q5phEqynb0796hLjHPWp5QDgmqTcPhehNUt +Rt2JQ+evFLnA6/WogTk8ZGCaUlSMdM0E31GEhs0z5ic5pX2gcdulNBz17GpNrCgDgGlK96XCnpRn +nFMlkLAg8dKRVbknipcqBz35prMvb8KdwaQ9MdxUytzVYfMw6mk3MDx+FOxm5WZaVs9elJKRkYGf +pTYiW5645okPGKLag3oVzJ82O54q1b89aoyI/XOKs2+4bd1aW0MLu9jQB9Kf97IqMdc+1TxAGs2b +Q2sMVcHBqUABufalIGeeKa7bcd6V7kWsWkKr9KimnGDzVaWc7flqkbgtjc3WhQvqac9hJpyCTmov +MZznNRTZPQ/SkjbBGK2SOeU22aMRzzSvu57YpsLLzT5ORz68Vn1NpW5SpOQMc9artIAMd6lmA65P +NZ8rEMTnOc1tFXOaU2h7TNgj1FRZb5cjPSo8tu789aUbt2DVJWJlLmZbEhAx1weKa7Agk/kaAAuD +jikI3fMPyqXY1pt2sVH3Zz2J4FSwQ7mzjJHY0rLk4H+RVq1UDkU29CYxTkaFrbgKMrxVlo9mMGki +cbSPSpXYYz7VzNu51uKI3Uge1ZN25XPcGtOSQYrFvJMNtFc2InyxOzBQcplFk3HJxT40J/CozjOf +XtVmMxlCc/NkAL6j1rwKjbZ9JBWRKgYYAOcVKu/nnINNTuO1SdME8VjZF3AHr2IpVHfNOwp5/Olw +BgAUhDVQ8hqXae3FKAxwe9OCknHpTHcaoI9Kfu7UbBg5600KeeeeuKWoycMOmeaeAoOe9QKOM96k +DjvxSV0hXJCueRwTzSNkYxSqVPNL8vWq6C6gpPTvSjH50hYZLDj2oDD0xilrcB2ec4o547ZoDA4A +6Uc8k8jnFPpoAnU5FLnHFIevFKGAz9KXQVhS4Peg+tNCjPPpTgx9qaTtqFxzYxkcmmYyMGn5cbiu +cH5Tj3qM5z9KG+wDD6U3p97inNtzx1oHPB70mgJAwAA/WlU55Heo1Uc08DHSmkMkAznPrTiBim7s +c07Ix16001YRHg9OtJz35p6gEClxyKEguMxng0wqDkDgZqb5Sc00jqapMLFdk9Kidc5q22PyqB+O +vegRSmUYIx1riNctDHM0ijg13km059KwtatRNAxA5GTW9KVpGFSF0cLRTpFKsR702vQR5rVmJS0U +UwCiijigB0aCRtpdU+VjlunAzj8elNopKBC0UYI696KBhRxRSqxVlYdVIIoASigcmjmgAooooAOK +Sl47e1GDQA5EL0jKVODT4mAcYGO1TSpuXpyKXU1jTUoXW5Vop0gRXYI25QSA2OopvTIzTMgHc5xi +jjjijk0p8vC7Qc4+bPrQAnHaiiigBeMUEYA9xmkooAcPw6Ec0nXnFFFAE1rK8E8UqfeRwR+FT6ic +rBnrmX/0Kq8Cb5FB6Fhk1NqH/LIehl/9CNCQn0Pqnxbk+HtXx/z6Sfyr5fuMq7DOPWvqHxYSPD2s +Ef8APnL/ACr5bus72Oamfwoul8T+X6lQjB5pPag8mjFSaie1FBpfrTAcp/lRzSA4/pS1Ja2HA804 +HtUffNLk9aVilIfn0qUZPPvUKhjkjkDr7VIpHf3qWi4ssJ7elP8ATNQq3WpBjGSayaNug6QnGDVG +RhmrUhqm2M4q6aM6jEzUiH3xUZ6U9MVo9iIvUmGOM9KgmPPFSE4xUEh9amK1KqvQWOp+3NV4jVg/ +dNOW4qb90hP3jmpF7VFnmpkFD2FAOMUCg4BpuBz7VJpcfnrS8fpTcjFGfSgdyRTk0vA5poBPIoIN +SVfQHOfxqEnkVIxGMDtTMEj8KpGctQ3HtSE5NGO1IeKonUdilHvTQRSmkMDmkNFOfAjizncSzfh0 +/wAaaExOmaT0FJnNFAXJQCcU4Y44qIEnpT8j9KlopPQguPrVarEwGM1XreGxxVfiCiiirMgooopg +FFFFABRRRSQBRRRTAKKKKACiiigAooooQBRRRTAKKKKTAKKKWqWwhKKKKTGFFFFSAUUUVSAKWkop +iFpKKKTaGFFFHNJALRSU77xHReBVCG0UoVmIAGSTxVn7G4j3nv0FEYOb0FKcY7lWtzQdFfU5eR8q +nmsXbg/Su88CkeYwHTiqjeDuTUu46DtW8LQRW5eNcEL2rhZojG7KexIr3a6gjuLdlHXBryXxFpxt +LhyOma6/4sPNHFRk6c+V9TCjTcw9zXpPhuBbG080ryRnNcHpkHn3EaerCvSrmBoNPAXstYxjd2N6 +8rIw9a8SzxuYomx1yah0jxPcLKqyOSCe9ctqLOZ23HnNQQOyOpBxg0qsFdo2pP3T2W4EOo2hP3ty +mvKNbszbXEgA4ya9F8MXBnslUnJA4rnPFsHlyM+zgcmtaErwcZHHKPs610chaLmVc+or13TolFim +B/yzryW3cGZSBj5gQK9d0ncbOJT12YNYbSOisnyHmniVGF2/XvWDXX+LrN0nZgMCuQ5zW2IWqaJw +0k4EkZKsPrXpvg25zbbc9DXm1vBLOwVFJruPB/nRSGFhge9YODSubSaaa6m94inkgQujEcZqn4f1 +/wA8+RK3I9aveJLdntSQOxrze1u3s7vduIw1aVI3gpIxotSvFne+J9LjvIGlC84zXmhjaCbaRjBr +1bTb2LULdckHK8isXU/DUbyNN0AzVwlGrCzepkm6Mmnsafh6ZLiyjUnPy4xXP+KdDld2lhTPfima +fqS6PKELfKTzXVw63pd3GNzLn3rKNT2UuSWxc6UpP2kDymPT7x3EYjYMTjpXZ6fa/wBmWeXGGI5r +RvtR0eAs67d3tXK6r4hM+Uj+7ir5oL4QkqtRWasZ2rXKz3JA+7nFa8N3aRWiRo/IGTXKMxcknrTk +Z8gAmslUfNc39kuVI7vR73zDkmutgYED6V5zojTRuD2rvrSXeqcYNbJtmFRKLL65B4qePqM1BGeP +WpxzTMGyZOKeDzUSgjBzUyYzQSx4JBp4JAzmmjuadnnipY0IzdKM9DSHrSZwTTJZOrLnnn2ozgVB +uwRS79wNKxSkOcgmlG01GetPXt60yb6ki8nFK3HNIKGY81Jp0IXIIqB+49akY9zUJYZOatGTGFDT +CBjFTgiomz1FO5XLoMCgEVKnSowD1pwJAzTZHUk4NMYmnZ9KYzYpIJELnrziqpZt1WnIwT1qIqM5 +xnNaIgVAKkVc/jTFU4qdcYqWy0R+tRcbj3qwVBHvUeOc96aExqqvU8e1KByTTj0oyv6UrsrSwox0 +NIypTlOQDSMKZKQ09OKYak7Gm4/nTQpEZDA5FShnIoxzzSnjAobJGE880cgcd80EU31xQC3HAY78 +0ufwpvI5p2MHJoKZNH2qdwWTjnJFV0J/LpUwc4AqGaRtYhdNuajVutSyn9ah9KpbGctydD3FS49a +hjGPpUyj8sUhvYY2KYwNStTcZz6U0ybEG0g809SQMdadg803Hc0Cs0SDpzRkGlA45pp45pFIPWoj +nGTUnOKaetNCYwKMZpDnjFSbc/SkYHOBQFhfl6Yp6etRqMHrUnTGelJlIVQAfrUozgVFT88ZFSyi +RvXtUZPFG4E1ESQetCAVzkihckU04yKlXGBigLjGAxzSdBzU55HSojincTWpGRkU3Ax17U4kZqMg +5BzTJY/d2ppHNP28cd6Qrii5diFsgYphJGAamKkkf1o8vOcD6U7omzZGrEinjP8A9alEZGKd8ox2 +NTKaRpGjKRIAcAinjj8aYCcUCQdDWEqyR0wwsmTHkYpmKYZAMZppl9aj26NXhGyQjkH0ph4zSebk +0x5CelCxCD6kxrMenrTTwD61G7mmCRhVKuhSwbLEeaHxiq4nAHtQZ1I69MVaqpmLw8kLN83fHaqT +gA8duKsNKrA81G20g4PJrWMjKVNkfy5H5UpKg4x1pSOcflTTnnPbpVGezsxki4PHpUeKkc5GRUfI +xnnFQbWHLt7YxTcjk0bsg9u1MJOAPaqRD0HuBg+1Q/jmlyz/AC54NCjBIqkmS5XHx55J4ApzgdR0 +pAOVxz7VJtYZVgQwPINVczabBDtpeGyM9aVRx/KmMOvtSRT2EC+3SpADuB7CnIowMVPt+WqciOTQ +eHyKnjJqBMYxSlm6CpaHB6kryAH61E75Bx1pjHIpFxjHPNCQS0ZC7llIB5qp84OCKtsMHAqCQE8j +6VqmZNNlWaQAHOe9Ph+f86glXjGe9WbQDAHTFV0Iaa0ZpwADGafMeKijJHWknOFNY21OmL90pTkg +E5+7WdId2Afwq7LIGBHt1qku0tzzW8dDlnq7D0j6HFI4wRU/OPfNNZMkYz2NK7NJxSVkAXjkcEU7 +YACR9c04nOMcAdqYXGMZoexNN62IZDggDrntVmB8cg1UwHBI/OrUCNnGcgUdAbaloaMEj8d6meQk +Y6gioI1/h96kcYAzWUrG0bvQhkfCH1rEnO92z71p3EoAI/CsZ5CznGMV5ONqdD3svpaXFRX7/hU6 +cZJH0qNcEj9asKV7CvHk7nsolB4x0qTr1qLIwOOcmnhmIAFQ9hkykfUdKQHI4pobA+lKpH602kxD +19M+4qTnpULZxj34pwbn0x0qeUZLnnBpdq8c1GNx/HvSjcDjtQ1sIlwCcdqDGvHP1pRz+FPIHUUW +JIwMcU5CV696XjjPtS8dqaKD5TnPenhepFC4P4UpJGcd6FYBABTz2HTNN75oJNJXYC4PNG0Ef1pQ +e/4UcYyOnSnfoJkZGeaTG0GpMc8UgzzmkAgPpTTkcml6e1KhKlXKggEHFPYCIheSKRW59yDUjFWZ +yq7Qeg9KTb3FDXYLj1weelO7Uwc8GpPwoQC/L/Omg9aUjjikAAx/ezRbXQY8E4+tAz3pw+lO+tHU +VxgUdhTiB0pQetHGKtICMrg4NQyJyRVrio3Xk96adxFCRFwR+lZ11HuRvftWvIoGTWfLgDnnmhNo +TPPNSgMcz8d8mqNdDr0Hzb8Y7Vzxr0qUuaJ5teNpB6e1FFFamIUUuSRg89OfpSUAFFFFAF0XkVxH +HDeJkIu1Jk++o9McAj68+9QXdu9pPJA7BmQ4JFW5737JLJDaxxIInZFl25Y475OeT7YrPZmcszsS +xJJJ6kmgW+qAgYBB65yPSkooOKBhRRRgkE+nWgBT0A4yO470lHFGT6+1ABRRRQA5Rkj2q5kMmao5 +qRJWUY60LQ2pVFHR9RsikHPZskfSm0HqaKDEKKASKKACigYyM80UAFKOfbikPrRQApooALEAAkng +CkoAkjBO7AyRzVnUOkHIORIf/HzS6QR9vs1cBkadFIPQgnBpNQBAgz3WT/0M0IT3R9TeMSR4c1fH +/Pq9fL10ACcHJNfUXjD/AJFzWMf8+kn8q+Wrrhmx3zSn8KLpv3n8v1Kxo+Xkmmk96O1TY05hTRmi +g0AKDVnfaSBfMjMZUYLR85+oJ6/Qj6VU6Yp+aTGiy1vtV5IGEsQAyR1XPqO36j3qDnNCM8bBkJBH +QirAuLdfmW3Uuck7vuj6AY/UmkXqJAjYkkYYjCMCfcjgfnUa4pHmlfaGPyrnaOw/Cik9iotXJkwT +1xUgwOtQg4p+azaNkwfgVVPU1YZhj8KrEkmrgjOoxx6U5SKjJNOQ1TRMXqSVC9SVE/UilHcKj0HJ +1q15gETJgHd3qrHk8VMQcUpK7Kpv3SHvUyHpUPepEpyFTepI2R1+opnPSnkk4HtTcdahGjF46UAD +n2puemKBjJphcnCgBefvDOKTHHTvTVLU45IJHTIBqHuXfQiYYo7YFK/sabkirRmHPNIcUH0zTT2p +ktigUp65ppzmjPaiwXCnPK8mwMeEXavsM5pmTk0hNMlsWnDFMoBoaBMl7UuM800H0p2fxqWaIilz +g1Wq1J92qtaw2OStuFFFFWYhRRRVAFFFKASQB3NACUUUCkAUcetFFMAooopAFFFFMAooooAKKKKY +BRRRSYBRRRQgCiiikAUUUUAFWobWSZGYDharqMkCuu0XTd9pIxH3hxT5uWw+W6ORZdpI9DTau6lC +YZ3XtmqVORKCiiikhhTjim0VSEFFLTo42kOAKVruwN21Luk2y3NzGjdyK67V9JVLYMo7VzOkkQ3U +RPZgK9LuoFnsHI/uV00pcs+VnFiotrmR5E6FHIPrXceDlaKKSX3rlb+ER3LjtnpXoXhOyjFghc/e +5JoqRUZmvM3Tua9jeln8pu/SsbxXpH2iMyoMkZreI063bduAYVZmSC8tjtORiinNQnoYVIuS5rbH +k2jJ5V9GGHRq9NuovMsSBxlc1wuoWZsb0OBwGFd9ZkXVmOc5TFOfu1LlTfPT5keQ6vCY7l/qaoJj +IzXT+KdMngmZ9uRk81zUaMXUAc5qqsHzXRrQmnA9F8GzKLfb71W8XXDpkxuR16Va8LWjW9oXkyDy +cVgeLLgF9gIyTU01a5nP3qiOatrhreUuoBbBAJ7e4969E8JasrxiBjk44rzPNamk6jJZSpIOgNc8 ++52cvMrM9J8Q6T9uhYqPmxXnE2jXySlDGevFen6VrlnfRLvYA4HWrVwul/f+U1vDEQlHlkcTp1KT +0OO0LRRaRNNOMMR0Na2nwqtwWjAwDyap65rltCjpEwyOMVzFv4kurcnB4JpTk7aFwg5S5meo3fly +wlWYDjg15br9glrOzxuCvWnXXiq+mGAxHbisO4u5bhiXYnNTGq1GzKVBqXMma+ka9Np7jnK9xW/e +eLoZYNoBDYrgs4oyax2ldHRKMZLVFm6u5LiRnJ6mmJczJ0aoKKUpc240raIlaeVurGoqKBjPNIAq +SL76/Wo+9XLSKOSSKM4LSZJP93H6Z/OmgZ0WnBVCMK62wfKjNcfp0iuI9q7R9eK6nTiOma6ItnJN +G9Ee1WkAJA/WqsGOKuIv/wCqtDnH7drMAwYccipFA5pqjAwO9OHvSJaHj3obsRSjbig5P0pD6DDT +SGyKkxgUAfrTuS0RHNKARx0qYICcelNYAU7isxuPenrndUYp65XHehgiTngmhiOlGaRu/rUmvQry +Z44quSTkVZbnjNVXJUH61cTGW4bsZ54pCwxTVmZRIBjLggk+9MB3D6U7DuiUHNOAOfwpig9afnih +ghx2g8k/dOMetRNzTm3BiD1B5puTnFCBjGHtTMdB+NSscAZ9KjOKdwsh6YxipBmokBJqQE5P8qTB +IRie1MzUnPJqMj/IpoliHp0owOBSbSNvIORyPSl7j1piuSAAUrUq9ifypzDvUlIgI600AnqPrUx9 +cUxevNO4mtRyrTig/HtT0UdfSntik2Uo6FV149KiBwcVZccVVYHPHaqRLWo9yCRjgelNOOKYCwNO +4AwKdhMeHNPDmq43E8VIMkg0NCUtB75pint0p7YPPWozmgVydc9ulTDNQI/AHephkde9SzS2grY4 +/WgY7UjDd1puQO9BKZJg0hXHSkEuKQvnr6UtS3awA84oOPy7U0MDyKUjpimQhTjj2puAeo5p3Xr0 +ooAdt4qNlP0qQE8mmNzSK0sM6dacOMZ6U3Byfzo9CKYiXI7UbhzUG79KdnsaTQXHkjpTeSabnOAK +cAc4NAw6fWpY9vXNNC0oUhuaGFtSTtUTjPNS8jjtTWpIpkW0D60zGOtS8DOKacY5p3Eo3EBJ6elK +RkU3d0waTeMHJHFZymkbQoykKQe9IXK8VG0uAPaomkLnPeueeISO2lg+5MzjGfaog/IzzioySeDS +881x1K7eh6NOgkT79xHNDN+veo0A70o5xWDqSepsqaQu49KUn8aAOc/nTsDt+FTzuxXKhoAppyee +akC8ZpNv6UuZ9Q5UQEfhSFTzjH1NTlQTjtUbJ2q1NkuKKUqnPHaqkjsuea0nTOazplxmqVRrUl00 +yvHcnJye9WkuAcc9RWXKNpP1qFZjG3qK6qVe25zVcMpao6INnnrSNuIP1rOt78HA9KvLKH5zXfGa +Z5VWk4vUj5PX1pD1zSt8pxTdxbp+dX5kLsDcA0jfdJ6GgdOnekcnt3qiWhNp4Pr0oCMaU5GOcUuS +Ccdqoiy6li2kEMiSFdwU9KmupY7iZ5VJ+YLnPYgYqvuTylycMCcH1piNvHJNFtbiUrLlJMNzimE4 +Xb3p7YIwOtMIUcA1SInsORsEVY3qVA/OqYJU8dPWnKx34IJHeqaM1LuXVIYD1FNIIwaZGwAx6etS +E8gVI9GxeCo9jSAc8DrTlYdOCaUN81JGk11KsoOTVaZuPerlwQBn1rGuJTnqf8K0SuYqVmOYr1b0 +qa2znI9eapI7NzV21ChsdzVtWRnz80jSUjHeoZz97PQU4EZ3UxsNmsup0QejKLAYJHeodmCxx0/n +VwwqpJBIBPSopQE461smc0kRowx97txUgY9iMjrUJBYkAYxwaDxxTtqS27IVpSAeeM81A7A/jSyD +gjHXmomIxgcnFOwQb5iaLGDnPPSr9vnIz61Rt0dsjIGFJ59q0bTJABHaoloXFXNCJOnFJNwDkVNH +tx7YqC6OBxXLKR304LSxkXsygMoUZ4yaxwHzye9Xb1/nJzniqyDcwNeLjJ3dj6LCQ5YkqHIJAPWp +kI5PrSIoGalABPSvOtqdtxQSdvFSBSc4/CmoOcGpl2kYHfrQwuBQ4GPxp4Xp7Ui5Bx+tPAzmpu+g +JC7PXFLsGTilC7uPSja2cDqKaYg+YHHtSgAnp2oBPIPpQuMn8qaWgDxkZ20uSffihSM9fxqTAHP6 +UuugDApPU4p6qcYo2YBxTlI6HvQMb096XqM0/aORTdpA+hoS7iDIx9KdnI9aQgdc96QMtLyAevTm +jimg08Advxo8gCk5pRsz60vB4ppoLEbf0pAOoH4U9seuOKYd1JoaEx27UDpRnvQV7im5aBYMH5c1 +IARikUFh61IvFKKuJgOcikRQpYnk5p/0pDnr3q7iHY5xTgvOfSkGSadyD6U1YBp6k8d+lGGP0peA +fXNOxVdbgM2Dk5pjY5qY7V69cVE3K0tkBUkVj0qjMCO3NaLHOPfrVO4wM0X7gc3rcGYiT1FcbIMM +RXoN8gkicHuCK4W6i2SMPQ114eerRyYiHu3KtFFFdhwhRRmigAoo7UUAFFFFABRg5xRRk5oAKKKO +OaADB496KUkkAEk7Rge1JQAUu07ScdCKT607cNpXaMlgd3cUAIQMcetIrMpDKSGBBBHalUIT85IH +HIFJQAUUUEEUAHNFFFABxgc8n9KKKKAFUAkZOB60gx35peMUlABRRS4NAFiyfy7q2kwTtlQ4Hsaf +qAwLfP8Acf8A9DNT6DCJ9Tskzj96G/755qC/6W59Uc/+PtSW7E918/0PqbxmSPDesf8AXq9fLl1t +3N69q+ovGhI8Nav/ANezV8uXeNx9jRL4V8/0Kh8T+X6lU9KToaWkpFi0UCg4BpDF4pc+lN+tOFIp +C0ZobGaSgYuaeCT9aZgGnrSZUR2cGnq4xzTM9/wpwxUM1TY1zn0qA9asSYNVj1q4mNRj0RpXSNfv +MQB9TTv3SDh97H06D86iBIII6jBzUkrQnEkZxu+8p/hPfHt6VViObW4u79ajYj+dKDQqiSRV3BMk +Dc3QfWkkVN3Q6LFTtwOvaq8XWpZM4xUyWprB+4RcZqRSKhGc+1Sj0psmDJB2oJyKTik4qDW4UcZp +M0pNMVx6k1Yt7aW73rEATHE8jc4+VRk/lVUHpT1ZkztJBII/OptqVfQa3Bzj1pmc05v5031qkS9x +Dx0pD70vFJ6mmQxMmjr3pKP1pkhzmijOM0h65piHHHFJmko4oC+pItLmmijpUmidkJIciq5qZu+a +iNaROerq7iUUUVRiFFL8uBxzk5NJTABknA5JooopgFFFFIAooooQBRRRT6gFFFFDQBRRRSAKKKKA +CiiimAUUUUIBcHBPbOKSiikAUUUUATW6FnUD1Ar07SLcJZouMkpXm2ngNOmfUV65pyL9nTH90VlU +aujeEfcPNfEcDR3LcdzWGa7jxdarnf8ArXEEc4rpequYdRtFOCipBBKRkKcUlFvYVyGinEEcGkOO +wx0oGORCzAetaOYLeMAfeA5qjD97d6Ukshc9c1cXypsynFykl0LNvNmZW9GFeuaWBcaenPVOa8k0 ++zmuHynOK9V8N71s1VuMChKV1ImryuHKcJ4gtvKuyRxzXWWExtdLiKn+Gs3xJab7gYHVhWjPayJY +Ii9lArpmuaaOZS5aRyeo6zcNcsPMIAOK7Hwlq3nx+S5yR0rza+V0uJA3GGNdP4O3m4378KOtYVo2 +fY642cLM6zxBpizL5ijmqnh7URA32aYgc108klq8XzsOlcRrZs7WQywthhk8VTaqQtfVHPT9yXK1 +ozrNU0i11SIg9x1rnIfBlrbz7mbIHNZ1l40lhUK53VJd+NgwOwc+tTCvNLlZcsM07xNXU7qHTICg +I6YrzXUr17yZpD68VY1PWbm/J3njNZWc03PSxVOlyu7EzTkkdCCpxjnFNorE3L6ardRhAmF2ZxjP +erDa9fuu0ucVkUUrIdyaW4klJLHNQ5NFJQ2xC0Gkp7RlUR8qQ+cAEZGPUUrjGUUUUAFFFFIAJJoo +IIJBGCOCKKACphMoXhcSYC7s9vp69v6d6hooQHQ6U4IUd66/T854IPHWuH0qUlgCeeBXbaafug9K +6I7HLU0Z0lqygruGR6VcTIqjbjpirqnrWhzk468DFPBXvUQORUgHFBNxw6Zo6daFJpp60gY4HBpy +AZzUeSSBUi8NTYluTDFRvgUu4jNMY5qUXJqw3FAzS4zSqMD+dUQOGeAPxprgjNOGQKY+cZz0pFPY +hf5RVZxmrD5I4qPb+tWjJq5VK54zTRuFTunpUWGFXcmzQ5S3TtUnHTNQoQSadn86VikxzN/hTc0E +ADmoi55FAmSuy8fyqLOeKhaQCkDN1zT5R8xaDVIuahQ/yqYHI4qWMdkEGm+oFLzxTlGetBO4zbxT +BjOanK1Ec007jcbEoPHSlP8ASmLwKeeBSCJGc9uKaM9/WnmmYpoHuSq2Pyo3dyahYsBmlVvWiwr9 +BWPWojyMCpX9qiIJOelNEt6jdpByaTbS8nNP4ximNoYFOak24A4p61LtGMEVLY4xTRARUZBJwO1W +ynHIquQcZHWmmKUbAvJqdc5AqJMd6nC8cHmkylsKcDpUbd/XFPweKYQTQSRbj+tOyCKQrnkilCnr +2piuKAORTgDn2FIOuAO9SheKQ0J26U3oTUmBg1E2cc9e1JAwZiOlNLYOeuaQ+maaEPfsaoLjlJOc +0HigE9aaScfjSHYTvmkw2aU53AU70zQ2NIToeO9TIOmKjC55qaM/dB7UmUtyTacCkIIxS5NJyKkb +sHNBX+VKHH50mc5zQCVyFhioJJMHBqeRuOtUZjnOPSs5zSR00KPMxzS//WphfII71DuYYzTh+prz +alV3PYp0UkLznGacFJBPpQFz05qZVyOeK5pSbZ0KKRCqnNSYqQR9PWnbAOtSUR49KXBBz3qXApMc +0bjGjNHtUgU4JHakI6UW7gIOMZpG60uDmilfoAmBTW4Ix3p+O9DAHHFUSV3AI+lUrlOtaLKCMc1W +lTt7UrhYwbiPls1mTgp0roLiHrxWPcR5ye4q1KzsK10UVlZWBrYs52IXfnJGQawWVlzznmrdpIyu +PrXdRm72OTEUrq50DkYx60g4HFA+ZQetKMjiu+LujyGrPUVcjrTGBJ/3RSnP50zcQx+lWkS2hCzA +4qWME8/nUWAScmpIyoz9Ksh9xx6AAc0IrZNLuHQDPNOXpn15qmYoXIOB+dN25OfQU/rxTe/1oiFR +aDcYHApyqRyeT2qRU457Uqpk5qrmSTY4KPU0r9BzyD+VOKlQD1pGwenrS3Hawi5Yj0qbA7VHDy3P +rVlkA5NS3qa7xuUbrGwEen51iy73fAxnPH41uXCcYHPFZqRuJA2QGDZFaxdkc7i2ytDCwOevXir8 +cYDAgc05YzuyeSc5qQKAQR2ocrj9ly6k+1AAexxSELgHgClJH6UznaAB3NSzSnvYrTHkEcEGqsr7 +nP0FWZuBk8ZNVGGMkVpHYwnuORepxzSyDJ9sdaYXIIHQ5NNlfI445waWtzRcvKQSEr19OKjjwSSB +1/WlLbjzzjrQvGQvTitOhkld6FyHnJHYVegIGOmMg1VtV9avLHjpzz1rNsqKZZafHbqMZqtcTLs5 +5606RgMY7Vm3bOoyfyrnqaI7sPrKxm3LlnbHGO1Mi6imO7s54xUkYJHPHY187Xd5H1NFWiXIjkde +anTJ+71qCMcZBq0oxziuW7NWPULzxQMDNOHXBH40u3jI5qkraiBc45FPAz0pdv51IoGOBzSSbAYp +YAYGDjmpExzmniPI5poUA4FK1g3DaCaNg/SnbWOKUAkc0mMj2kc9qXJ79Kk+XkUwmlfqA5W4px45 +BzSdMdhStt4xT3WgXH7jjPrQMkHnrTD19qcOBj1ouA7CkYppAWl4pQPX8KQEYyOlPBbGelKy4xjn +1pvQD60ttB7jlPUUHPQUwjByD0pA7dCKfQY/APf1puSelKKUYJyByaS11EJjHWlAB70vJ4pQuOTT +s7phccoA5FOwc03GOlBDDFUIUnoO1KM4OPWkAY5zTlB9OtNbiaHqeKMGhacOKoVhAARk0hJBNKw6 +Y6UmPXtTtdgIxzz2qOQ9hUvsOahcHik7jK5B5BqrPg5q0/p3qqwDCk7jKMqAgjHbNcVq0OyZq7mU +8fyrktbj+csc9K2oO0jOqrxZzxpKecZppxzjpXoo8prUMEUnvS9aMUAJRSgU6VFjkdUcOqsQGHf3 +piGcUUUvNIBKDjPFLjjNJQAUUUUwCil6c0lABRk0UUAOcqzEqoUHsKbRRQAYOM0UuO9JQAUox6Zp +KKACl96MUqqzEADJNIdicWjsGMckbhQScHHGPQ4NV6uR6ddNhtpFSyaXJHD52eAfmzTszV0J2vYz +uRnnrwaKcQOaTApGNjU8OMU1S0YY4Zj+GDVW/AxbH1R8/wDfZq3oAK3wlAz5Ucrn6BTVXUAAtsD9 +4I+f++zQluwfQ+o/Gxx4a1Y5x+4PP418wXefMYnjvX0744z/AMIxq+P+eH9a+YLnO4nFOXwL5/oO +HxMpmilOKSpLFHPSijt09KWkMSlzSUUALzSjNGaDSKFxTsHNNXPNOxzSLQ7mnjqKjB4/rTl5xUst +MR6rnrVhsEdKrt1q4mVUSgY4oNIKoxvqSCmE+lOGKaaSLexLGPXipW6dKijzxUrdKh7m8PhIe5qQ +VH3p69KbJhuPNJRRxznn0qTRiYNAIpf5UoUYzkcHpTFYOgoz3pcjoKb0PFIpgTSE0cmkpkXCg8Un +OaDTEIT1o47ZxScUUyL6i0nGKKKADPakpaSgQ8E0uaZS0i0wNRMKlPGKjfOTmqRlMZRRxRVmIUUU +UwCiiimAUUUUgCiiiqAKKKKTAKKKKACiiikAUUUUAFFFFABRRRTQAMZ5GaKKKACiiikBf02ORp4y +oJwR0r1fTC3kID6CuP8ACdtC8bFlGR0zXdW0ahcCuaUk3c7IppWZl6vpovFKgc4NcsPB8rP8x4ya +9F2ggcUbFPGK1jWaVjKVLW5x1r4QtUxvG7vzU1/punWUJAVR3rqJtqKT0wK8/wDEupvudFbParhO +UmTKCS1OVvyhmfYMDNVKe7FiSeTTK0lIxSLMEMkisUBNSxaZeTMFEZOTWhoE1oj4lwBnnNdxa3Ok +JHuBTOK0hUp2tLcwm6ik+VaFLSNHXT7TLj526102lRosfUfSuW1jxFbRrtiYHg9KwYvFd9FwGwPS +ictNCYU3K7Z6Je2dk8geQjg1Dc6hpsEW1nBrze58RX9wSWkYelZst/cyZ3OSKOdsr6utmaviC4sZ +ZnMAGSTzWdY6nc2RJjbGaps7E00ZzTnJz3Lp01BWRuzeJNSkGN5+grNnvric/M5Prmq5ZcHK/Nkc ++gFMqFpoi9x24+tN3H6UUnNDYxcmkpQR3pKlAFGaKSkAvFFJRTuMKWjknJ780u1j0FKzAbRSkGko +tqAUUUVIBRRRQAYz7UUZ4Ixz606SN4nZHGGHUelIY2gUUU0I0NNbEgA65rvdL5UDp0rz6xO2VD71 +6BpeCqkdeK6qeqOWudJbkgAVbQjNVIQMHbz6VaUcCrOVkikn2qwueBUKgce1S54pMlEh4NMYg8et +Lz1pDikimJ3wPenBiKb3px6UyQD+tIWyfak68+1JjGKdgbZJnAFP5PUcVGDzUq8ikNCntUMhxxU3 +Y1BIOc9KSKlsRn1pQFbGTzTTTfbNXYzTHSKueKryAf0qbdgVC39aEOT0IlXaeKcCActQy+hoxVEL +QRsEehqF+DnFTHH1qIjdTRLK5ySfrk0AGpDHjpTMEdcEVVwSZPGe1TqPlqtFnNTBqhmnQlyO9PRs +fjUG4U4Ed6Qr6lg4P1qM1GJDyCee1Jk8mhIqUicAZ49KXA7/AFqFSeue1PzmgURp4NNP86cT+lM3 +ZpoTFxkEE0BccUqinEcUXJaGn0ppjxSnK8ign+lMCM9aQD3zzSEnPrQM4pg2O80xkHaSO+O1Txzx +uPlYGq455pUjTJfYDjGTipaHF2LbNnnPFR800sMDH4UBjmhIGxwXnFTKCCKjQ8inHGeKT3K6XJMe +nGKZtJBNLngU4YyB2oJtqMKGm7Wqxt6U1h3pXKcEQLxnPenAnpTSfXikqiFuP3HmmnmihlGBSGxm +MkU5s9PalG3ilIBH0oHFaDJVChccnHNQ81I2c59KiJI600DH9Tml+tRlgO9L79qBolXGTTwTkGox +04pc4pASlgBTC9MOcj0pjSCk2kNRbJd/rTHnAxVZrgciqxkZjiuapWUTvo4ZvcsyXOQOetVySx60 +x1cEZ44pyqT0FcNaq2enSoqKHKCRg1MijvQi+oqZUPQ/nXI3c6VsIkfOanRciljTOM1MqBcE0CIg +q9aG+lTFc9qjZfWkxoj44pcYOadsJPPSjBz0o6FCY79BTCp4NT7TSFOPahvoIhxkigjFSqPQUhGM +UbDGbeKQrnmnjvSHHSiwiNlHFQSryfpVojiq7rnP1oEUZ0bHFZVzb45NbZH51TukJH50K4bHMXEW +CaiiPlkVpXEIBxis51KnkfSumnJpkzV0b1nIHUc1YOM/hWZp74+Q+laTYx+FepSkmjxa8OWQE9AO +45qI4yaGbOfwoNdCOSQdD9afGAcg/jShRn2pwx14qkTLYaThvrUowPfmmHk/jxSA5JzTIRMgLE8Y +61Isf3WIyB2pIc4FWFU9OtJFTWhHyFPFPiC/j0pxRtvFIox09O9UzKLsxzAUxQHyAMU8tu6U0c0I +UncdGhVhVgjI9qijwOvNS5HaoluXDaxUmUDc3rWYXAfAxV67cgfjWTI53cVtFaGTdmXVkzz+VSDP +3j9ayxcnhRzgVb8xiFp8pMqha3EKO9IrDIBqBCSpz1NAJU7u9DQ4SswnI/lVOQsM4wcYqzJgnOfw +qtKRyTjFVEiq9SBpD19R0qPcT3I56UpBznH1/GmsnRR2rTRGOrQ0Ek45zuBzVhBnAA5zniokQscg +epq9FEkahm9ORWc5JG9GLbsWIYskHke1XSQMVni6Q5AI4FNNw5YYPvWDmmdKoSuaDKCOKyr1uAD2 +q2k52nnJqndMrHjtXHiKy5dD0MJh3z6mbg/MT1zxU0Q45HFOSPccnv1qdIl6HGRXhTleR9BFWVhU +U8elWFwtIkaDn3qURbgD+VZFXEBIAA6ZqQZGPTrTdm0fzp6oSPxzQlqFyRSM5/OnA8+lRiLkHODV +hQAcU4olsAz80o28ZxQR0pdoH86Qxw6Gl+TFM54pBux7A0PYB2AMe1MOM1JncCTTcce1HQCMbuPQ +05R2PU0vbikO4YFTpuhhznnipecAVHk5qQYo0uDEIP608HA6/SkyOnX0ppz3xQG47OfWjIyfakAO +SvY80EgfWkmrBYXK9MU0Lxn3pFOT70/kECne4xeKAMfnTeen404beKdrsQqqOtO4BpryIoGaVWV6 +fUBQuTn3p3ak5zThz1osAo9KXbg47YpRQCeneq33EPCjHtS7SSKT5gBTlJyDT2EMxgH2pozjipGx +170xsdO+aFowGe6nFRt9OaCSPoaRm9qEMrPwx9qqy8ValA5P4VVcE8enWk2NIrsMgiuf1yLC55JN +dAc9DWPrS5izjkdq0g7MmSONkXljjjPWo6mlxk4qGvRjseZNWYc0c0etFMgKMflRk0UAGB+OaV0e +NmR1KspwQeooHFGckk5PPJoCw2nDb82fTj60pwST602gdgP5UlOGTx3yaVduTn04NArDfail4H9a +OPSgLCY5oxTjg5KgjHX2pBQFhtLSjHel68UBYEYqT6HqPUUrqu5/K3FATgn0owMGkwelFx8o2jBp +2BzSUXFYSpI28tgStJtYDJBwRShWJx70XKjdO6Ni1uZZxL5SAiKMuwYgYUdcZNV7nUmmi8rnaOg9 +Kzx1xnHB5ox7VXOzeWInJWG9aMdOO1O707b8vNRc57Gz4SDf2pGRyBFJkeoxWRfBsWpPJMR/9DNb +XhZli1WE/wALI4z+FY9/wLUf9Mj/AOhtTjsxT6H1B49z/wAIxqmP+ea5/MV8xXLNluAM8flX054+ +Yjwvqv8A1yUf+PCvmC5zuP41UvhXzFDdlegYNFID369KgsWj2pKUUBccwGBj05po6UZo6UD0FpaQ +UvNIoB7U6minUmUgyMYp9MFOyOlJlJiNwDzUJ5qRyOtQ1cUZVGFAoPrSiqMuo4UhpfpTTSLexMnt +Uj9OlRx1Ix4rN7nRH4SDvUnao++akqmRAcOaXgU0GlyR078VBqmBOKTpikOc0dxTsK4uTS4/lSYF +LQAw5rQsrTT7i2unluRFcRqWjVujYGcfU9Ko0g60yWg4oJ4xSHrQRQJje2O2aSlz6U0nvTIbHZBP +tTlQMjvvUFSvynq2fT6VHmlBA7cUxXuKKbzSkGkPagGKDSmm06kNCE55phpwNMNUiJCUUUVRmFFF +FABRRRTTEB5ooooAKKKKaAKKKKNwCiiikAUUUVTAKKKKTAKKKKQBRRRQApBGCRwRkUlSSSK6wqAQ +UQqf++if61HQAZooooYHWeFLpIn2M33jXoluwZcivG7W8lScSluc5OK9L0DUftMK5PNck1yyv3O6 +D54eh0mOBmmMCDwcZpfMHfv3pspUA4PIFCvcl6GNruoLbRMAe1eX6hctcTMxPeum8VTz7iuT1rjW +JJ5rsjHlRzTlcQ0lFFJkACR0qdbq4A++agopIZIzu3JOaZmiitbtkhRRRQAUelFFDYC0lFFIAoOe +/eiigAoqRY5HxtFDQSr1WrUG0LmVyKl70c0VGqGKATjFXoNNllAOOKpKSCK6nSmV4lBANOLszOo5 +JaGfHo2WUH6VeTR4cfdPStYQjIIFS7QF56dK15n0OZ8z1bOfuNGTHyjFY93YSQHgZFdpsP4VVurV +JlI7U7p6MIynHU4kgjrSVev7QwMcdKo1jOFjshNSV0FLjnnikoyc8VmUSwTS28okQ4YZ6gEH6g0y +R5JJHkkbc7MWYnuTTaXjBOecjigBVQsNx4QMAT6ZptFKDg59KALFrxIpHqK9D0UAKnsK88gfMu7A +AJzgdBXoGjsoRD7ZNdFNnNWR1ELKoFTq6g89qykn2/SkluyoPPStGzBQubAmQHGakE65HPFcjcao +YzndTItZDfxfSpcrFxoN7Ha+avrR5iHpzzXNxakWAO7rV2O8PQEVl7ZI0+rSZsh+akGCKzUuAwFW +FmwMe9Htoi+qyLe1etN256HmmCYYxmngimqqJlh2KUYFMrjcMg+tSIME800Nk5J6DA9hT1xT9ohK +i0DYAx61A7DFTMMn2qB4wxx71UZIidORCzYPFR8D86kZGBphUj3FapowaaGkkflTOc045zSDOcYp +khR169qXA796CAOlBSQx8LUdSkhs4pmBmmT1GYPPeomXnrUrOACBUJIyDTRd0SR5qbb61Ah59qlG +7PNLqJvQUgUhB696fweO1KAME+1BDRDzjnrT1yMDrTto4pRg9O1O4rDsYxRgnjNCmnfLjNSXEYQO +1MA59KkPbHemkYHtTQPQcrAED0qTKkCq2ck46VKG4pNDUgc8YqMkcUrZ4GcVGc5ppEthjdTMkZPv +TCxBIJ4oDZzVpCepL97GOeaepYqVBIBxketRoR0qdV79zSYtSNsADPYUbu4+lLIpOBTVGBx0oEyZ +CMj8al4NQoVPWpalmi2FyachPemAHPtTj0zSJRJvGeTTS/Ue1Q7jnnilz2osPmdgY85o68+lGKBj +imJXuOPGfekYnFIWIHNNJNAMRWz+BpS4xyajLdPrTWz2p2BSY8t29Ka/YdjTQckCkYEAc0ihhB49 +qcppppu7aetDY4xdyyCOoppkwOtVWuQoIzVdrnrzzXPOqonZTwznuXWuAPqKqSXBOcetVmlJJNIC +TjPauGpiHbQ9KlhUiQuSR780qMVYE00Lk81Ii844NckpuW52Rgo7EuTKcmpUBWmIh6VYQD8aztcs +eimpkBIwaYAfqKmjAwKoRIoAH0qVQOtMVD+lTItITG4J4phXip9uenpSbTQ0CIipAApD8tSnNM25 +yaTHcZSY75pxBppBNLqMUcdKQ4P4U4AjtQOv4U1cRE3rTAc1IajOQafQBGFQtjNTe9RslJDICAc8 +ZqvMoxVwqBUTqDSQGLdRZzgVkzx8n8q6a4gBGay7i3HPFXHQRm2pKPmtleVH0rFKsjHIxzWtbPuU +e1ejh5nn4un1QpXkZ79qTHHfipWGcE0w+3pXop6HkuIcgZz2qReB069KiVmI4FS4yOvbrVIzkNyW ++lGFyMGhQOaCvcdeKoi3UtWwbPzdKuhQOlVIcDbnrV0dAaT3K+yMNQuKmJIyahIDEmmjERMnI/ya +eFO6jaAOKMYx9aYiQA4z6U/jqKi3ADAPGabJNheKTRcHZlK9PzccZrHnZixUfTNaF0xYk9qznjYs +MH61vDYwrb6DYY3LDdkH09a1VGMZOOKgt4s/41ZdVA5z1ok1ewKm7XFBRRzUZxnj60wZPbIzQu4+ +1AJ6iS5JH0qGTk4/GrTZA545qtKAcj1FEWOpHqQrggepqQwgnp1FIqnAC9qc8vkpk9sVE58uprSh +zaIaSsK+9UbnUDyBio7u7LnHaqPltJk/lXmYnFX0R7WEwXLqyxHNI7ZGQfSrKSuT82agiiYD34q3 +FH69682VeV9D01QiyWJ3P4VKPnByKYq4x2BqxHH7VhKq29TRQUdiNV2nPUDipkBz83eneX1U/nUq +xsBj0NZmhFtOAB3PNTxsQAO1OCDGTzShOgpLcOg7Dc0qnaBnpSjkZp2wHrSegIdwfb0p5BPQdutR +7SSMdKlA249KrzFYUDI5/Ck+alz6Uo6ilYBM8UpXjjnNKaa2VpLQYzGB9KBz+NPIzx07005H+NLZ +jE4Bwacy8Zo+X9KcdvH0pKwMj6Gn4XOaac4JFAJGDT0AdxzmkJyfWlIyMnrUfIz+lJjHgk047ccd +6aG9sGlB4z3ot3EN5zkdKfkH60bfTjFAA6etJ3SGN68ipFx2FKBxgcULweaqPcGyKWLfipYowgxU +mB0oxnkdav1IbF28UuARTlJ70Y60JIBFHHfNI3y08YA6fWmEE0dNBjlbgUpJ4NRr3HenE8A076BY +fkHmoj3BNIzYFITxmhBYGPGDUfBGaC2Tk0xyBx6UttwIpeOKqtjJNTyY4PvUDlc+poGiFvm4/Wsv +V8eScdcVqHJ3Y4ANY2tt+7wOOtUrt3BnHzY3H3qCp5CVfI65qE16Udjy6m4nFHNLRVECf4UH2pfW +k96BBzz9aO5NHPQ0v+FAWFzk884GBSe9HpSigYn0pcUlKPU0DE5o5BpQDzjHAopBYXcwUp/CSCfq +KT0NHeimAZxg980Y6UUCkAo4NLRgbck856UnpQMBnNGKUE9aDn8KQwHXHSnfKdp69cimjH4UZOB7 +c0AO5PXtR0wSKB3yccUAcUAKPbmnDpg96QHilHHH0pDNbw4udTtcerf+gmszUSNtsPWI/wDobVr+ +FkLalGw/5ZpI/wBeKxr/ADttT6wn/wBDaqh1M56H078QCP8AhF9THQlEA+u4V8x3X3jzX074/APh +bVc8fu05/wCBCvmK54ZvrVy+FEw3ZVOc0UHrQCR+NSUIKM0UGgQ7ilpoNKKTLTF5paOKBjFIpB7U +oPFJ2ooGLSqeMUUmMUhg4qLvUrHjioaqJnU3EpRSUoqjPqOpvenetNpIpk0dPfFMjp7jioe50R+A +iFPHSmjrUgHFDJggweKPrS5pD+tI0Y0DmlIxRTutAkgHpQQRSj0oOM0iraDelNNOOCTTTimiWFIa +CT+VNqjNsKbTu9IaZDEpabS0xId7UlJzRSHcWikpN1MVxc9aaaTNFOxDYUUUUxBRRRQIKKKKBhRR +RTEFLSUUwCiiigAooopAFFFFMAooopAFFFFOwBRRRSAKKKKEAUUUUAKvWu+8IyApjPNcAK7LwhL8 +zLnFY1tjoo9UeiJhgPWl8vfkmqTXiQJlj2p8Gq2cp2hxmseay1NeW+xi+I9K+0ROwHzAGvM7mJoZ +GQ5GDXtTqsoPIIxXDeKdFx++jX64rtpSUlynHUi4u5w9FKylSQeDSUmIKKKKEAUtKqs3QZoKsOoI +rRJiuhKSl70UAFLip7a3M7Fa2YNG4BI/CrUE1cznVUXYwdjk8A0hUjqK65dNhGBt9qr3elxlPlGK +tQi9EzH6w76o5elHWpri3eFiCKh96ycXF2OlNNXR0mkxQNGMgZNWb2zi8t8AVS0dzsA962J8GNs+ +lXBydjjqxSbOLnTY5FRVcvV+c9hmqdTUVmdVN3iKMCt/RJRkIT3rAUZ/CtPSH2Tjtmo1HNXR2XK4 +B4PrTS35UivuUZPJp2eCPatEczGqS3T8qawzn0pQQtAIPPak9Ng30MvUbVXRjjLYwMVy08Ricg13 +Eihs9OT0rnNWtfmLD1rT4o2FTfJLyMSilPBNJXM1Y7QqRE8zgDGB+dR1eskzn3oirsmbsrlNkKnB +ptal7aMBuUVmdM5HOaqUbbChPmQ+NtrA12mh3aFFBNcR0rW0q68pttKMrDnG6PQAVbHPFV7hmA45 +z0qla3+4AE+lXXKTRg8VvGSZzNNHPX7OM4bFUYrjLKPTjPrWhqETYcj8Ky4YyXxWWI2OzCm9ZStn +rxW9bknAJxz1rCsY+Fz17V0NomeDXmubueg4ouQbs/hV4DIqCKMrirka0lNi5UKBxUyHAo25pwQ5 +ApqbJcUPFPGTzTVU9vWngAVSqNEumhOccUuAelLS9MCmqzRDpJjdgqLYORU4Rum4/jQI9oPqec1t +HEMwlhkyqYAOaj8k9qvY7U0qK1WJMJYNFIoR1phTkntV4qMc1E0eeK1VdMylhpIpHg8Coz1q28eM +moHjOelbxqJnNKjJFRm5PNR98irDx9agERz0rRSRnytEyAYB74qXBNRxjjipRwKQ2tBQexFTIgxg +96jUjIqdcZobFFXGlMg1HjFWSOtQkAGkmVKI0Djil9qX2oUYxQJIYVOcimHkGpm9qhzyapEvcj5H +NOBxRycigRtTJDOc7qbTwoOaAO1ArEDA4z2qPgZ96nYgfnUeetUhtCw4zV5BnFUUABq4sm0cVEjS +LSBl65qDnmrBcEe/NQHIpxIm0C9cip1NV+eKmBNJgtiQYpTSDpRg5zSEGBTTnrUgGaCgIxRcbi7E +QJP40MMfhQRjApNu7PNMlBnNDjjj0pMdKdyR0oKYz0FNIP5U+hlpisVzyc5oPv0p+AATUUjADJ70 +rlxiNZwKpzz7e/zCmzXAXODis9jPO4SP5mZsAetclery6HqYbD31ZK07MRn15o3FvxNRAHoePWp0 +HSvLqVWz1YU0kGCRzU0a9/WkVB1BqZFxWF2aWBRmrKIAOKYqYyanTkHtimt9QYu2pFGDSDJFSoOm +aq+gh4UccVMi/hTAKlXdSVhEmB15p45+lNFPUGqYh4B5FNII4o3NmlJNJ9gQ3g8UEcGlUAUjGlsB +HtOaVgMcUDntQ2T0oGN5pDnPNPXvmmvjNK4yBs5+tIccjFPJzTeckdaaQXG84ppzg1LgL701hlcC +lYCE461GQalKkZFReho1GROvHNUZ4Q2R61ov6VA4/PFK+oWMSe3zk+lNgJQ+3StKWPOfeqE0bIcg +V0UqjRlUjzKxbOGXPtxUBBzjNJFMNu3+KpNu4Zr16VRNHiVqbi7EY4NS5yMDoelNYAdRUiKXKruC +5ycntXQnocsl0GLjPPT0qVPQjBpi4PIPNODYOc0xbFuNQSKuKABzVODBwRVtc446d6TFFjH5BxUK +qTz71Ofl69CKiDHJqlsZ6X1J0j74zTJRwR3qWM4BpJSCCalPU0klYpZ61BIzdDU+V5GarzhVBI46 +c1qjn2Ks3T3IqoOWx0qSaTnHWoFwWPPetEiZy1NGEqmM0+RlP0NU1kzkd6er5UH24pcruV7XQljb +k+nNG4A7R6ZzTIg55A+lSbRnJFJtISTkyNySc+lAj9RT3lhjBqlNfr0U1hUrxijrhhpzY6WWOIdq +y55i5GPoRTZpGlOB60qxEcH0ryq+KctEezhsGoashEWcc96sRxHAqZIRjipNjLjPcV5spNs9KMUh +UQdcelThEPT6U1E5XNT/ADHHHJ/rUt3KE2dsZNSRg5pyA5FSANn+dLW2oxwI/wAakTHBz2pqpuqR +F5xR5ishyD1HFSBOPemg4GKlVqE+4Mj2jJOOlLjPT0qUYx603GKWoIYCOtO3dPSnY54+v4UpUHik +l0GMPtTsHrSFCOKOVp21AMnIH50vAIFG5cdOeaa5PGB2pS7gkKeeg7UhzmkzuPpRkA80m7jApz9K +UdgaA5Xmn4BI7cUrWC43npSMKU9wehoOD3oaAaHYD6UvB5o7fWggDgGkrgJ8oIPenKB3pnLADHIp +csDzRp1HqSqCeKcqjpmmAjII7mpevSq30JYgXml2inbckCnBT0NOOgXGqB9TmnkYpACOBUgBPWqi +DGYH40nfFSFSMEUmCapx7EpiHGAaazDjAxgY+tKRTSOKVhoD+dJRjBx600nk54xVPyAUnJppJIpm +aQkAE9s1Nx2GnOahkYg/WpHORn0qvI2cnNTsMjkb1qHIO70pDIGP40LnPSmrsewrjC+grm9bkOPf +3ro5m2Lk9BmuO1ecO5+taU1eREnoYr9SajxUjCmdK9FHmy1YlFL70UyRBSgkZ6cgiigqQBnjI4oE +Jyep7Ype1J6iigAwaKdtOA3Ykj8qTFA7B6e4p235c0gA5z6cUhBHBGMUg2DFHFHTik5oAX+VJzQK +UrimAUpGCe+DijIxjHfOaTJ59KQC80elIO/cUc0DHqpchUGWJwAO9IccY/GjtmggAnnPvSASlApp +pwB/Q0wHKAQc/QUelH3u/PGKUD1FIYq5BGOtL7nrTRnrTgTjFJjNnw3I6ajFsB+dHXHrwayNQBIt +eOlvk/8AfbVq+HMHU7fnGCx/Q1kX27ba89YD/wChtThfUiZ9O/ELjwrqn+4g/wDHhXzHc4LNX018 +RiB4V1L0xGP/AB4V8yXH3mrSXwoiG7K1FHFJSGLRRRSAXinCmU5RwTQyoi0cUnejmkUPyMU2gUuM +0h7jhig8+3NNwf1p31pFX6EbH8qjqbaWyAQMAnn2qGrRjPcKUUlApkD8HGab3p3am0kWyeMDtntT +3HHrimRcdDT3NZvc6I/ARjrTxUQzmpKbFEUk4pOvtRzR7Uig96XOaRuKFoBb2H0c96SkPfPWkU2I +aaadTeM1SM2NowaXGKDTIsAprD2paDzTE9hlGaU0lMgKKUUjUAITSUUlUQLRSUtAhKWkpaACiiig +Yc0UDvRQAUUlLQAUUUUxC8cY/GkoooAKKKKACiiigAooooQBRRRTAKKKKYBRRRUtAFFFHFABXUeE +5QszD2rl61NGvVs5dx6Gs6qvGxrSdpHW65qSohVSQQK5VNVljk3Bjwc0apfi6J2nqays1UYLlsxu +o4vQ7jTPFLLgSnIroDqOn6jEV3DnqDXlCuVORViO/uIvuMRxWTpOLvAv2kZq0jQ1/TktZy8Zyjc/ +SsSrVxe3Fxw7ZFQxRGVgore7lvucztEjpR+taJ03CZ/iHNUCpRsHrWnI1qRGopbG1p1irIrHnPWr +N3pqlTtGKl0w7kQDHStVkDpg9a0jK2xy1LuRw08DwsQe2ah5rotVshyw6iufZSpwaJxW6N6U+Za7 +l7S2VJxnpXXxFWUYHbrXCwPskU+9dnp826Md89Kz62FVj1LhGBwM4qORQykYqXLMOeD3pNpHX3q/ +QwaOc1W0UAso5rBI2nHfNdxcRJKpHUkVyN/B5UjD3q5PmV0XRdnylvRnAk2nua6dlUxjiuO09/Ll +XPrXXxMWQEelZRumVVRy2rJtkIIrLNbusRHO7HWsM9a0qFUXeIlWbSTZKhB71XIAwcg5GcelOXIw +3GM4rI2sdzZOrqpzxip3wDkdKy9IlWSIeorRkVtp59aIts5ZJJlee6hTAY9aIrqOTGDnFc3fSyI7 +DJxk1HZ3skUgJbjvTnoaRp3R1hbk9Oao30O+NxwW7VaglWVFYdhTJRuyMVUJGEkcdOmxyPc1FWnq +cARyw7mszFTVVmdVKV4hWzp0RCqcfjWOK6HTx+7UDp3qYhV2LEsSupB54rnryHy5D711B+vasm/g +3ZI5xWu6sc8HyyuYlT2zFXGPWoWGCRTozhhj1rntZnZ0OjgmKgcmr0epCLCt0xWHEwKqORjrU33t +o6CqMl5m8zQ3Kkg/hVSOzIfI9aht2CjgnP8AOtO2IYg1jWqO1mdOHhZ6F2ztuFPfNbVtGBVC3AA4 +NaUB2gfrXnXu7HeXk7dOlWY+MVXjIqwhxzVkkozzTwcUwMeKkP8AM0APHPNOx0pqjA4p4x0oEIOu +KftOKT0pRkUaAOGaaw9aUn3pueaV2FhCcf40nvS9aCDj2oUh2Q3k0hBpwUjn2pSO9UptEuKZEUUd +6jIXoKnwetMIHOelWqzWxDpJlYxAjpUTQKR0q6AKaRyRW0MS0YTwyZn+SV47UFCB9auleeaYRXVH +FLqck8G+hX+7ipBwM0rAH2xTM44rdVYtHNLDyTJA+4Gm8EZ7CkUA5p2wmrUkRKnIYvXBqTpR5dBX +oKbkiVBob61HgipWz+NR96aZMlqIE5yKm2etNjOTip+MUmyowVis64Bx1FQ5JH41akAPNQsBt4qk +zOUSA1GxHTvmp2XAH61A46Y9apCewgOCe5p4djxUa5Lc0/HIqibk64P1FIdueKcoAGRQwBqQE3DH +vTwVIqIDnFPXAwTQy47EqnIp3f5aYHH4U4HOakRMvvT+O3NQqw5p+/HSpaNE1YilI3VGGPanseaY +Ksze48Dik3AZBpFPWg+tIb8huMmnkjGM9qjZvwpjShetNijuJKcZrLurkDI6YFS3N2oU81hXVxvy +M9elY1JpI9DD0eZiz3AbvxTUIJAznjPFVlBcjNXYY+M/hXkVal2e5TgkrE8Q9KsxqADUcUZyatog +wM+tc6L0BEx0qVUJNPCAEEVKi8jPNDWoDVT1qRFGcCn49aUDGabQCquM1KASRTRjipM4p9LCHD0q +QdPempzTwTxQhMeCQOeKfk/hTD0o5oe+giT+VA5zTQeKXJFLUA4HA6mkbPFHFAOelK/QYgGDR1IN +Kc9qOc80/ILjSDmmEEk5qX6Uw46mpYEbKKZwD71Kc03bnBqtBkePWlxgU/HPrSPnt3pAQ46imFRk +mpTkmmnjIpJq4yBgc81E6cVZ25BzUTr6UeYFRkByaqTx5Ga0CDUUqCmu4WMGVGV8ir0B3R80s8PP +GPrSW6qnBPFd2Hqpuxx4mneIuzJzinEY49qmI9KhkyOevrXrRdzxKkeUYMdvw96eOpzTQw6H8KDk +dTV9SGtLlqEng1fjPFZ1uOpzWhHkDilIiG41iSeenpUJHzGp2XpUEnDevrTTIkiUNgEUxpOPWofm +zwaTJHDHvVcpPNoRl/3mKhncAEdQRSysQw45J5qtM+ByfyrRIzcrMglxjiolU9MY54p4Ytj0yaeN +owW9apyUUJx5noEcRJJweTVjylU8mq7XkaA4PNUpr9jna3XpXPUxKidNHByman2mGHvz61Un1GM8 +DpWV5jMxyeTShNx/pXm1cW3sexRwEY2bHyXDue/Xiom3HH1qVI+cH61KiN0xXBOq29T04UoxWhCk +RY5HrVtF5XI7U6NCDnFWYwMjisXK5okRqq8HtUoVeKkCqT09qlEf45xxUPQohAAI+lTiNeDTvLXI +qQJ8uR24pbgQhW3Cp9vHvQEHBp21sg0gFwMA04bTk0bRgD0p2AOc07uwaC4zyKXbtzSrnNO4/KpG +NX5cD1qUBTyabwRSZIGDRZrUGPIHYc0mGzgUqn1NBz1p3YCdSd1NIz09aduABz+dNPtQtBAYyBSY +Pb2pyk80HPekxjMce+KaRnmnkHOaD0yPyqRjc9AevSg0hz1pST0/OhNsAyRx604KExnnNN7VKiKV +bJ5FC3EyNsZxxkD86TbgUjZXmgkc0pasa2FBUZpdwyKbgY4p+zkGny3C4uMmpUGKaq8ZqRc96pIT +JAM807kYA5pmQv41IDnFWSAFO570NntQuOCaaAUfLTW4BNOJP0pOuaL3EQvxxS59fanOq5AphAzx +TKEbkZ71GwbHPWpug9aicnHJougKzcHJpGOeBnintyDn2qEyNz2qChhlx196qTSD+E9KkkfgiqhJ +JBpLsNIVRuINWlBxkdhUKgrg1DeX0cKEA4NXF2VyZavQqatdrHGwNcfdS+Yxq5qF68zEZyOaynYH +pXTRh1ZhWnZcqGtknJ60g24bPcUGgdK6jiDFKu4EbeD2xRxQMg8Ggdido47besmHlOV2j+H3Pv7V +A53HO4kkDrSHBJ7k0dgOOD/OgQmKOKkSMEjcwVe7HtTQM5oCwHHIBO3JIzSYpSMdwelH+PSgBOe9 +GKXAxRQA0jGaMGlpQCxAAyTwBQKw2lADEAnAJAye1LjiiQLuO3GDyMdqBjcNgkdOlGO1LzjFJQIP +604EgMMcHHPpSYpeO1Aw69asXdjd2LJHcIUZ0DqPY1X9akmmuLghppGdgMAsckAUARfyp4xj9abj +HfrUsUiokysgbeoAJ/hOaQDFyp3L1Ug04jHHc0i5XHHGeQaMfMD2oH0FzwBSqSMH3oO7v24pQDtA +PrkUhmt4a/5CUB9N5OfZTWTeqT9kHT/RyfyZq1vDpxfLkdI5P5VkX5yLP/r3/wDZmqoPczqf1+J9 +MfEn/kVNR4z/AKr/ANCFfM9wRuPHevpr4jnHhTU/pF/6GK+ZbjOT+FXLZEw6lXiinHgmkpDsFFJz +R1oEOpaSl+tSWgAyaU8GkpeOKBoO9P6imcUuRSKTsO5oIIozS5FIvQYwyKiNTNnGe1Q1UTGpa4lK +KSnCqISFApKkC8VGcZpJluNkSx9ae5yKZHQ+cYqLamyfuDB1qUHtUQzmpB2psmA8+1IDSE0VJpfU +XA7UopMmndqBoKaetL6+9Bz1pDGGm+9OOabn+dWjJgf5U2ncc0h4oJYhzR0ozxScdTTJYhopfak9 +aZIU00tJTJYUUlLTEFFFFACUtFFABRRRQIKKKKBhRRRQIKKKSgBaKKKdwCiiimAUUUUWQBRRRSsA +UUUUAFFFFABRRRQAUUUUAFGaKKQxc0Zxg++aSlqhBSUUUmAVc09gJAD3qnT4nKOp9DSBq6sdWI90 +fbkGufvoTHKcDpW5p9x5sac+lQarb5BaumErqxyJckxdGl+UCt5TnPvjFcppUpilKetdPExIGPxF +ZpalVNGJNbh1Oea5TUbVoXY44JrsSc8fWs7UbQSxk4+lawtszFNwfMjjwcHNdHo1wxULWBLGY2Ix +3q7pc5jlAJ4NZyVnqdb96Oh2CSUpZQQc1GhDAfnRjqD0po5mhWGRkdRmsDV4Ry4AzW/jiqGoR+Yh +GO1XB62E73uczbTRxh0MYLMyEOeq464+tdfZkmBCQcMOtcXINsh+tdZpEv8Ao5DcqccehFZvSVje +aTjcg1eH5CRzXLNwxrs75A8TD2rkLlSrkVpLWJFB6tENGcUUVidJvaJOVytdCWLLXH6bKUlA7Guu +QnYp9RzTW5z1tGcxq8O2QnoOtZQOCDXRaxExXPeudPWrqdyqDvE2dNvmBEZPHSt7Ksu44xiuLhdl +ZSD3FdPZTiSMZxWS0CrHqQahErKe/Fc44wSK66dNwIHfiuYvE2SsvvWstYE0XZ2K1aumXexgjH6V +lU9X2sGHGMVznQ1c61HWQcetV54wQcjiqlhfBwEOMirzEED0JreErnLONjnbqLYxPaq6nBBrVv4g +wJ9M1ld6mouqN6UrxsakDArkdam3HHA561VtGJA9qsggc8deBU30Je5YikbjtWvasBtIrGQgkHNa +lo5yAewyK5q0dDrw8tToLfJANaUNZNo+RjFaULdOfavPdnqz0DSiPSraHGMVRiPA9auRtWi8iGif +IzxUg5P0qJakDHt1p3sImBHFKKYo6ZpwI5pbisP4NGeOKaPWgHkg8UMY7rRikHrTutPS4DcAHNKT +mhsZ4pCMcUgFGMUhxxQD29aSl5DA9KYaeRgVGRzSGgwaZzz9aeOppCB3+lF0FhjZ4NRnAHNTAYqN +uc/WhSYcqK8nTiqju4b2NXWX0qtInXitFUYezRLDIDVkYIFZ0RwTV+I8VpGsyZUIj84xTCQetPZe +eaawODW3tmZ/Vosj9aML2oOfypOmOOtWsS0ZSwUWAXBp/PTNRNnmms5Az3qvrJi8CuhKSDkGo+ma +iMjE8mkZz+daLEoylgGPbBB7VAy08uR2pqsDkVrHEIwlg5JESJyTzVlF/nTQoAFPR8Vr7VM5/q8l +uiQrj6U0ilMqdKiaZF/nTU0TKix2Bj3oHvyaja6i45pn2hMkZqk7k8rRaXFLnn61WFwnHNKJ4x0N +Mh7k5bb+FIshPU1AbiPPXrUb3EY6kUBqWWcgdaaG/WqUl9EDye1UptWjjzhhQJK7NozIKglvYx3r +lbvxEig7TWDdeIpmyA1Q5pbnVGhKSO3uNWRTgsM9az5dbU5AbjtXCS6pcyH7xGaILmR25OcVjUxC +todFLCK+p1kmo+YRgmmoTIfmrMtz5gya1bZegrzqtVyPWp0lHYtxRZxir0KYxUMMZGAKvRKciuZr +U36D41zVlUXn0FNWP0qeMY6VKutwBU6ZqQBeCKcop4WnsFxMUu0UuOlO9KYAACcU8DNIoIwRUgB5 +oeohRxThgD3puKXkce1AD/SlwO5poPFL2+tK4DxjGKQ57UtGaEIZk/rSjvS/yNIAelD3GLzj60tI +eABQaAEGMnvTO9PANIBSAbtB+vWgD8qdjAP86bnB9qQCdiP1pufxpWzTSMHIpjGetMYetTEZphA7 +81LQ7keOvYVE454qxgdKidSDQloBAQPSo2UNU5A61FJkD8aRRVljGTiqrLgggYq659KrORgjFXCV +mRKNxqykHBpr4IPp1pjJjJzUayFCQTxXo0cT0Z59fCpq6JDkDmmu30zTi2QT29KjIBOR+VenCV9T +yqkWtCzA2CMVqR4I9CazLbHFaEZ4BzVSMI7kj8d6qyNzg1LI2RxVSUnGcinEVTVkoJIB9DUUvGcd +DTPMHPcetMkmG0jPSnzWYKldFeaQIR9TVGecA/L0FMu5ye59azJLlsEjtVuajuSqEpuyLrXYQYHr +mqst+zHaOlVPNZzz7Uohbg+9edXxZ62HwSWrJ87kJJ+bjikRdx6U9I+CQMmp1i4A9a8yVVs9WFJR +IxFwD0FPRcGrCxjHapBErEGsXLqbqIxVztJHap0TkYqSNR6U/YAOKiTGkMVDjkDFShCCvtT41IAB +6GpQo5468VDeg7akQ4J4qdf1oEQ7fjTtuM5HTIpWGO2g0oB6Z/Cmru6mn55FK+gDuVwCOtAPPTvT +uMDvTtmeelWiRMZoG7/61PAyOKWkA0ZyMU7GTmjJyPzp4GOaNHqMTH92mHjg8VKBQU9ae+ghuB1o +yD16U7b2pNp5zUtjGgAAUAZxnrRjmnkEAUAIAKPmGcHrkUo6800k59u9HmwI8sD7Zp3HU0HJ59KD +UDGjAPNGO4oI4pMgd6psQ7B/SkG4cUnShsnnpSACB/jTcHgUoJPBo44ot1GLnH+NOVielICOlOCj +t3qxMlzilU5PJpnGQP1pUBY8UtdgJ5I3jco/BAFOBxxTUHNP449a0t3JJDjr7UcEU3j6Um7J4ojc +LAwxSZ4oYsab9DxSe4xTgnOaiZhkdae2BzUbDPJwPSqTugGswxkdPSmO4xzTWb5sdsd6iduvNJ9h +is4qtJINp56CkeQjNVZJlA6c96i47Ecjv6jb0pgdU5bmqs9yqAkng1j3erHGFNOKk3ZIbdkbV5qk +cS4U8iuZvdQaYkZ7VTnu3kPJ61VLHrnNddKhbWRy1KyWkSR5N3NRkikJ4zxS5yOfWulKxyuVxVK9 +CO4yfakOOPYUlH6UEinGTjpzjNAwcDOKQGgjGfYUwDjFGaPWj0oAd8wXr8rc/lSAdqN3BH0xQaQw +7E/QUuDn3FHTj9KOnT0oCwnHPaj2pevtTuuKAGY4NH19MU7oQemKAOmDx60AN9qe6SxExyAqeCVP +uKZyMfnQSSck8mgQUueScAe1JgUYIGTwD0oACNpp/lSbN+MLjIJ7844pjEsSSe1B6D1oAMc0oxxS +Zpe1AwUbiBkDPPNOC5BP04pBweacSd2T7Y/pQCEJxxS9hSrsLLvztJGcVJLCY2yrbozyrjof/r0h +sjwOn60ZPfoKOWPOT0o46UgL+lTGG5U4zkMvHuCKpaiAPsmO9uD/AOPGrumbzLhRuyB8v0IJqjf5 +AtO48gY/76NVDdsipsj6Y+JGf+EV1EA4z5X/AKGK+Z7n7x4xX0v8Scf8IrqPt5X/AKGK+aLgjPHH +XNaS2REOpV6HPWgnJ6YoNJSGBpQBSUooF1HgUhzk4pwbjHFJn3qTXSw2lppoFMi46kzRRQO48E0o +I700elHNSXcRiajqR6jqkZz3CnrTcU5abFHcf0FRk05icUykkVNkqHpSt0pEoY/pU9TS/uiCnimC +nUMIinJ60mc4o96SgY4VINuB9OaipwzSaKixxpDmj1o9h3pFMaf0poHanHik9Koza1AA4J9KTrzS +/WkoExvFJ706m0yGHI4IIpDSsSx3E5JPJpKZIhNJSmkpolhRSUtMQlLRRQISloooAKKKKBhRRRQA +UDkgdPeiigQUUUUAJS0UUAFFFFAwooooEFFFFO4BRRR607gGOM/pRRRRYAooopAFFFFIAooooAKK +KKoApVwc5B6cUlOXqKQCiMkU0jBxV+FA2KZc2+AWX1rTkutDJVNbMm0u58tghP0rcuFWaP14rk1J +RgehFdLYXAmiX24pR916k1o3V0Y5zBOGI710lpPvRcGsPUoiGLDp2qxpc7Fdp45q5KzuJe9A6HJP +1HNDAOuDTI36A09hkkdqSMZHN6tborbsflWSrhHBXiuq1G1EiN+dctPH5TkGtJK6ua0ZfZOq0u4E +sYBOema02CbTk89QK5bRroISp5yRXQyPmPcO4JrGLd7DqRSdxjSxsdu4A1HcIdp78GsK6mlSXqeD +mtazn+0RqWOTir1T1JlH3bo5++ULIRgZBrV0aTKhPSq2pQqrknpg1FpM2yXGepp1dNSoe9Cx0s6M +yEdBiuSvkKyNnsa7LIaPnHIrltWjxITVxfNFmUPdmZNHSl4ptc73O0mgfbIp967Oyk8xFGccA8/S +uHB5ro9MuS0agn2oW5lUWhf1KMPExHXFchMpDmuwlJkQg965e9iKOa2esTKk7SsVByRitnS5/m8t +u1Y3tVqykEcqmsb2OiSurHTkZUnPWsHVI1DZFbIYsiHPBFZeoJkGtYu5zL3ZIxqKUqc0lYtHWSRS +MjAiugglWSNW9BXN1s6aymPBbnIwKFozOqtLlm4TKkYrBmQoxFdKfmUisO/j2yVq0mjKlL3gtCMc ++tWsfNwM9eKoWx5PNXhkDOazijSWjJUkIOMcVp2jE4IOQDWKSAR2rQsrgowKtjPX3FY1VobUW0zp +7QAgE8Ac/WtSHtntWNaSBsd614DkgfjXmzsj01qjSi24Bq2nqfYVSQjA7Cp1cHp600gZdXPWphgn +8eKrxsTUwyMU2tSSQ5HNKM9TTQQRThTdkBIM8DpR9aaCacae+4hRilFNHYmlouFhwpO9GT2oHNTc +BnelGR0pxH50w4z1pWtqMU89fSo+c08GmtkGhjQ0k+lKcECk6ZpDU6jEye1NYdCO9OOelIc5xVdA +ImqFlBBqcqc4pjLilF6jKRGGOKsQSZ6npTHUHpURJU+1Vexa1NNWB60/apH41UikGBmraN05qlLS +xLEMAphjzVjOaQgc0xXKbR81HIpIxVsrz/Wmlc0IopLFzzTzEPSrSoOtMfPaquLcpumTgVGEOfer +ZjYsMUpi9etLmYnFFMqcVCzSDIFXHTqKgMZ44701UaM/ZJlfc3INVrhpNpIPStExHBzVeSHctWqz +7kSoxfQwbm5uE6HJrLl1i4TPUYrobq0HUVg32nbgSAfWtoYlmMsNF9CEeIpEOC3Q0HxKeeetYt3Y +ypk4PXNZkiSL1rdYhs5pYaK6HUP4mf1xUD+I5jzu5rmeaVsfLhs5HPsap1ZMj2EF0NqTXrtj96qU +uqXMmfmOTVCik5yZSpxXQkeaR+SajyTRRUFhU9vncKgqaAgMKmWxUPiOjsgOD6Vt26AnI6VgWLHG +DW9bHHGRjA/CuCW56KehqwITx7VcjTHFU7c44NXkI4qVawyxGq45qVVPUUxM1MnXHWmIUDvTxyfS +gAc0445wMc02Au1jijHQU7n8qXt7UgGqMcVIuMUwdfpT8cUXBij1pKVSeKQ8c0PUEOyfwp2SajGc +U8c4pDY8ZxzTsUz2zT88UtRMQj+VJg8UpbpSAjoKGFhcetIRxgc0760dqExDBkAZpDS85zTecfjS +6lCjcRSgDgmhRTsVSJZE1NwO9TdsUzmpsO5Fg9R9KTHUmnkHANI3fFAyMrkZFMbAB5qX3qBufqKS +uMhcnNRMcdalOP1qFh6VHmURvt596rsB2qVu/rUTc/0pN2HYhcVTl+tW3PBHpmqUpwD+taQlZkyj +oU5L14XwfumrEF3HIAVb86yNSY4OM5rIF5LE/De9elRryicFfDKZ3UEu0g9RmryXBH0xzXDw64ww +GPFWv7dwMA9a7frMTzHg5pnXtOqgk81nXN0fmGRxXNya6/rjHSqb6rLJnJ4NOOJjcJYObOi+3bcj +d3wKryX4OcHvz71gmd5DnJp6h2HU+tKeJRrTwjRdluDISetRbS2c96WOJzz9KtrHnAx1rhq4ltno +UcOl0II4VyasJFjPP40/ySBxUiKeh5rjlNs7IwSFCjp+dSKgJHtTQp5wKmQEHJrJGlhQFOOOnNPC +t1p6gZxwPWpNqnGKl6giJd27FTBOD+lG3v16U5QBz71LGPC4HHNCg96cqkjFPUA9O1NAmKrY4p49 +P0puwMeelOKnjGaLLcBdoINBQ9BTgB+FOCk5xQtwGAEdTUgOKTawwaNvcZoaa1QEnTgUuCMd6aM5 +IqT5mAo0Ew+X/wCtSDJFO2jH0oPy80eQhATS7i3BoGKUDoaTGJk//XpRwKMAdaBil1ATbnn9KC3v +0pNwB5pCc+1O/UGL8uCT+FLBF5sgjyAW7mmYXGT1pCSPb1pJ66gLtBU896jbvShsg7u3SmFtx5FJ +6jH+ZxtphA7U0jk49KN3f2pNhYXJJFO3Dn0qIZz1pwJod2BIeM4pp7frSg+9IVJqlsIevWpV96hU +YxUmSBnNGqdxskIBpyDpimKS3WpVIq0yWPxin8EimKQTinfjVXuIcVOaQKM0oI4+tNY96dwFbpUB +74+tSE459ahkb1o3eoCF8mmyMCzHpk9Kjd8/lUfmDByaLlWHM/OfwqvJIMkn0olkx2xxwfWs+e5R +PvHpUO+wIfPMFH61i32oiMHacdaq3+p/eUNWDPcO5OST1q6dFyd3sKdRRRYub6RsnPU1QdyTTCzU +hJ613xgorQ4alZyFbIPIx0P502g5zk0ZrQxuHtT1PBH40ylpAOOMZpue3rQelHWgAwR+NBo5o/pQ +AUvNJk0ooAX0pMZ5ozSDr1oGOBYHjg8j86M03607HHb0oAFIyM804Fh3xUdO56+tABRnigNkbT+F +IcjIPBB5FILi88mgbSfQZpF7UUwHMAGYA5weKTkn8yaT3oyelAheMDtijjrSAjPIyM0tIYvBoDEd +D1pOlHpQMd60pxwKaOtPGO56CkAH19qsQnfFJCQSw+eP69x+I/lUA2sOCQ3JOelCnjPSge4oGMDH +Q0p+Yk55PXHQUjMXJYnJPejPT+dIDU0RP9KO0bisUxBH+6ay9R62vf8A0df5mtzw6jm7eRCN0cEr +4P0xWLfuu23XaMmFDnuMFv51cNV/XkZ1Gtv66n0p8SwT4Vv8HHzRfj8wr5puAQxPGM19K/E0f8Ur +fc4+aL/0IV81XHVvrVy2REOpWNNNO4zSUimNpaSloJFzRnNJRQO4tAo4ozSGFGaOTSUBcdnNKDTR +TulBSYrDimDrTieKZQhSauKetKuKbmgU7CT1HE0ylJpKEJu5MmaGFIlKxqOpsvhGin+1MHNOoYRF +JpOaXik+tA2FPH9KbxS8UmUhaBn9aT2pwoGhrA0Adad1o4+tFwtqMOabmnmmmmiJDc0maWm+1NGb +EpRR2opkgcU2lNJTQmFFFFMQUUUUAFFFFABRRiigA5pQxXOO4xSDjtmimIKKKKACiiikAUUUUDCi +iigAooopiCiiigAooopAFFFFMAooop3AKKKKVgDk8CiiikBetLLzxuqxNpm1CQKNKmA+Q1ruN4Hp +iuinKLVjlq8ylucq8bKSMHjqaaOorSv7cqWK5GetZnIrOpGz0N6U+aNzUsgWGcdxWksSSKcj2rGs +Jtr7T3rdhwduD7/jRCTM6kdTCvLZonJ96saZceW2xujdK1Lm281OnI61gsrQSj2NaSjdcyFTkpLl +Zt3qB4iRg96zbSQRyha0oJPOiAz1rLuYzDJnpg0vijoTT92TizpomyAfarCHp9azLObzI1PXiku7 +wwMAOAOtStVoHLZ2NSVQQ3OSelc1qdm5fKjqa2LO8juBkHmlvIRKjD8auEl1M5Jwlc5OB2ikBHBB +rq7OYyQDPNctcxmORs9zWtpF1gbCeaiS5WdEvejdDNUgw27pTtJk4wT0zV3UEWSE4/WseykaKYj1 +NXPuZ0tYuJoasmY93oKx7aTbMpz6Ct68QywNjkYJrnfuyDnHPFOWsUx0dLxOytiJYhjsKydYhfBY +DirulTZiAp2rJuiPHOOlKEiJrllc40jBNFSTAhzUVRNanWndC1oaY5EgHY1nVYtZPLkU1ANXR1iH +CAHvWHqyEncBW7blXiBPPFUNUiBjzW8NrHHzWlc5rJGQPxpUOGB96G6mkrB3udp0lm++Mc54qG75 +Bqvpso2bfwFS3JGw55OK0i7nNJWkVFty29SPmBx+NU5YmjYg1p2JJbnpk1ensVmB/SqVpaMHJwZz +Vaemo2KG0twSPer9tB5Kg1PJZlSqKSsixtcAemKydRTocVrsPrWbqGSlWknuZR0aMuLAcDPBP6Vo +IylcnqBgAVnKfn/Or8eB+NY9TomV7phkUyCRlZeev6VJdqBVVDg1EkaUmdrpMxOPSujgYZGK4/Q3 +zhTz6V1sBGM15lXSR6kdUaMbGrS/kapREDAq3GRST0GW4iM1ZBqrHgc1OpFUiGS54wO1OHvUQzzj +15p47YouBKtO61H3p+R+NIBRilUCkBBHSlp2EL0o9KOo6Ug9DQwFbHWm4B/Gg9eDTfX6UtBh64pC +BigZPNIetIY31pOc+lLSHHFK1hiEjig57UjY7U1iaBhnvUTZp3J70080XHYYR+RqB0qx7VGw4NGt +hohV2UgdquRSg45qoy8VHudenSlqVubCvnpUnFZsUwGPerqyA45rSOxLRLtpNppwINO46CqJuQkG +gRZ5PFShBnn1p+KAbINgXio3HGKnbio8bjzUtAVymQT3Bpu1RVoxjvUbKQf5VLdthldkGKheM56d +KuFODUbLzQgM+SLIPHeqU1upz8tbLITULxDvVEs5i509WH3RWFe6Mh6D8K7iSDJOKoz2i+n1qlPl +ZLhc84n0yRCcD1qk9vMvJU16JLYpz8o5qnLpKPn5RitlWZjKijgtpHakrrbrQl5IXFY9zpM0ZJVe +K2VRMydJrYyqKleCSPqKiq07mTTW4U+PIINMp0ZAYFhkZ5FD2CO5tWcgAHPQ4retpa5e2fpW3aSE +Ywea4Kqsz0oO6Olhk6H1xV+Nu/oaxbWQHntjmtO3lrJJlGqjcDHpU6cYI61QifJAHfpVtCNuTVMV +izzzTlwetRBww+tKByOaLAS/U4pR0pAMjHuKXIFCAUADNOyMYpue/b0oyAAaEKw/G0cik60Lls0v +TFPUYgzn2xTweabwOtIDipeiAmxn+dGeM00E07kU1sITkmnAdBSHrT8YxRYTYdqMYpM4zRk9qelg +E9qYcZp/X8qT5ahjD6UAnijBGaAABVWuICRmmt0pR6elITxSAaeFqMnt1p7DcKjx60rNFDWOAahf +A6VI+CMGoW5BApblIi96Yw5qQYAz0ph5NJIZAwyRUTr7VO3BqFzk59amS1Gio45x2NU5hjJ7Yq/I +Aw4qlN1P0prRgzC1Loa5yUtuIP8A+qui1E4zXPS4ya6qLMqi0IskUu5s0gBPFSLGxxwetdDsYWEG +7nv0qWKNn/HvU8NuGPNaMNqeBioc0gUGyvDbk8AVejg6ZqzFbhR0AqZVycj0rCdRm0YIijhPSphG +QVFSBSBn3p6pkHnkVjKRsojFXj3p6p0yMdqeE7mn7MfSpuUN8ogf1qQRLgcd6UHnHtTuMc9zSe4W +G7Bk4p+3BGfWlHb3xQQc5pDAMQTUigkgntTAAelSqMc+1KyAcpA60DI5HrTl5qQbehoTFbqCnkel +PK+maTaOKkx29OtOwDQNvbIp4z3FOCkD1pyg0XsIAB6cUBAMU8duKXB4pu4hm0Amlzx7Uu08/jTS +AKHsMdwRzTSCSDj600Nj8KcGwD6GhBsNxg07Pf0o469qUBSKQCgjoelMZQAT2oPTFKM4AYcYpeoD +CRjIpOR2781JtGOlNIx0FCQDSR0qMk59qftziosbcrSY0HHOeKZjBxj3p2QaQFeT1pdAHDPX8KCu +O1HfignjFNvoFgKnP50mcZz0NG/8MUhbjrSiDDOT71ICQKi4HNPVqr0ESZ4yetHJYCmZyakUc0av +cB4FSKCMUwEf0qQcjjNVHsIfyRikU5GDQcAZNMJ71bEiTd+lMLnvSb/amOy4pNMdxxlwCDVeVvSk +YjPWq8k3p60ruwJajpGIGfaq0shAwO4pJJiBg1RkmDZGeab8hkk05AJHNYmoSTOTjOCDWiiu/vTJ +oHx8y8VtCnbVmM61tEcncRT5PBNVGil6YNdY0UWSSKrSW0RbgflW8aiRyy5mcyY37qc0m09xXTG0 +RsDHSmHT4hjKitVNGdjm8HFHvXSLpCuCfTmoG0jnAHehTTE4tGGO9FbLaPJ24qD+ypvx5qroRmUV +fOmzjt6037BOuGKZGQcHvQBTo96stayAfdphhm7rQUQ89qOM80FXUkEUcjtTsTcOaTtSZNKjKGXe +MqCMj1FArjjkgEjAxgGgbecjsabyf8KXn6UrFXCiko569hwTTC4uaXcxH50gxSUgHZxScUZo9/ag +AyBS/LnnpkdKb70opi3DNAoHJAHfAowwxkdeRSGKM09fL2Pu3F+NuOg9c0wbe5pTjHvnn6UAKoLM +AO/T60oyePU0mf1o6kc9eKQxR25oBI4PakwetKTz05oGO+UAEMd3cUDcecHgZPpSH09D0pRx1PFI +DovC/FxcZ/59Jc/pXPX5ybfnOIBz+JrW8PS+VdktnY0MisR2yOP1rJvwVNuD/wA8F/maqG39eRlN +a3/rqfSvxNBPha9/34v/AEIV82TgsxA5JPFfSfxO48K3v+/F/wChV81z8E/jVz2QqfX+uhWNJSkU +2pRTEoopRimISlFLubBXPGc0lABRRS4oAKMUcUmaBi5ozTaKLCuO7ZptFFMVwooooAKKKKAJEpWp +FxQSajqa390B/SnAE0wU8UMcQ5NL0pPr2o470igGM04Dr7c0zPanihjiHvSjrTactIpD8DB/Cm8c +0ucZpOSaRQ3tTafg88Uw5GKaM2NpvenGm1aMmHFHNFJQSLTaU0lNEsKDjJxyM8ZopKYhaKKKBhQO +oopyDLD60mC1ZpWlsjgEjtmludOOCydc9Kt2KnaMitVI1cYx1rj9q4yO/wBgpRONeOSMkEYpldZd +6VHODgYI71gXWnXEB6ZFdMKkZnHOnKO5SopxDKSvfoRTa1MwooopDCiiimIKKKKACiiikMKKKKaE +FLubAUk4GSBSUUAFFFFIYUUUUCCiiigYUUUUASwSGN1b3rft7lZUBB7VzdTwXDxMDnimtNSJx5kb +VztYMB6ZrEnj2sSOlaouElUY9KrTJuzjnFaJpqxjG8GZ6sVOfSt7T51dVrCaNlbABPpViynMUg9C +azacTZpSR1XzMMdQc1k6jaHlwK1bSQSKtS3EQkUit4S6HI7rVHP6dJsbYT6cVY1CFWUso6VTuYXt +pc+9aEbCeE+woT5ZW6MueqU0V9On25SpNQViob1qip+zz/U4rWkxND17ZzSjpKzHUW0kY1ndNBIO +eCcV00MgmQEYPrXITLsc+1aWmahsO1z1rOS5ZXRpJc0blnUrIHc68nrWXasYJlz1yBiulK+YpYfx +CsHULZopN+MAmtXaUTKnLlfKzbyJoj7rWDKrRTHH96tbTZQ0QB5wOaq6hFhsr3oi242Be7Oxbiff +Dg9MdawboYkJ963bPd5QA9Kxb9cSt9aS+EcdKhqaNMMEH8a150SUFex4z6VzOlS7JNvrXS9UyPSi +OjFWWpyV4m2Q8VVrW1OIBi3vWTxTqrU1oyvESnKcEH0pDweKM1ianWaY5MSqeeOakvE3xPxxWZpM +4C7fQ1qyOGQ5rSDszkqR1sclOu1z25qGr2oJtkJ9qo1NRanRTd4l6xk2kjPvU11KB2yO4qhBndxU +k7c9c0RdhSjeRb02QeZz0reUkgEVzNhJsk+tdPCdyjFEdzOqtRjr1o4pzdcD3qM5U571psZ2uI7H +GKzr0NtOfpV6TlsVQv2wjZPalbUpGQOCG9+lX4yMcHpWccbqvW54H0rJbm81pcjuc4P1qp3rQmwU +IPXArPxRJBTeht6PMA4GeK7a0fgcV59psmyRfrXc2TEqvI6V5tePvHp0neJtxMcexxVlAciqUJIx +3q3HnmsTUtoxBAqeM+tVUB6mrK44PrVCZMp5qVcfjUPvUoIwKfUlju9P7U0U7+dNCF+nSnc9aaD6 +07IpgJmmt0p31pGpWuhjATzSDrxSg4OMUYGc0WGBJqMnkGlboR6UzPTPapKHbv60FuaacYpTnAqQ +BuR9KjO7vT+1MZugA7YNMaEwKYcg9acTxxTTkjNK4De340hAzSHj9KUUdSrDWU1Gyg5GKm4/Wmkj +t3o1uIrNuDAjtUsc+MfWkcdDURQjJpjTNWGdW61bUisGOUocmtCO5yMelUpdBSj2NHikJNQpKD3q +VSDVXRFhu0tmgIalwPxpo9DRfoFxjA4qMjvUxBP40mw1Ml2BEG3mm4zxjtU+38e1BQYzQMrsuKhZ +B1xzVpgeKjI68UkBSkUcYFVZIhzx1rRdfUVDJF0Ip7jMuSLvjpVfyiDWo8bc8YqIxc9OaB2M14c8 +Y471UmslkBGOK2miGD61EYOOKd7k2OVvdJV1wBj0rmL7TZbdicGvSXgyMd6zLywjkVsr61pCo4mc +6ae55wRgkUCtfU9MeBiwHfpWXsIGT1zjFdcZqS0OOUHFlu1domSRGIkVsgjtjoa1IJWLbmOWJJJr +HiyMGr8DdPc1z1UddJ6HR2pGPwrQgcggVj20gUDvkDmtOJlP9a5m7G5sxSDIx6VbBIwprMgk5HpV +9JN/XtSu7WCxajJGPepEznmoFbpUwbPPUU9gLAbpQBn61GH7U9TnJ/CncVrDhxSA8nNKCCDTcdc8 +c01sIkDDtQWOaZkAnFO4OaXqMk6j8qQZzzSKcfTHNIQe/Q0CJM4OakzxUK88emKk5A9aAY7rSigd +KOhHpQQLzQAaUnnFGOKNAuIDzim85pflxQBzjNMY7sKQ+lHQml7c0n5CIz1ph5/CpDwCajbPFD1G +g5AphYdMUueM0wnuPpSGiKXHWoTkVM2KiLYyO1Qy1sMI496jkwOlPbmom649KV+wEZBOcelRsMDn +rUhAHTvUMjDPtSa6lXIn4FZtzuXOT3zWhK4xntWNqE6gZ60LUEjHv5gc896xpAS3FX52Ls2B3psd +oSAT611QaijOavoVY4SenT0q9DbMR92rcNoOTjBq/HbqBUyqX2BQKsVuBs+X61eSMKOPSnxxj6VO +E4x1HrUOZViDAxmnABMHHeptgHBNHlf5NZuTsWkRhiSM9qkXA7daUxc0bRjPfih7FDweadhuARSB +SFyeTUi9QKhtBYayhBx1NAySM/lTyC3GOlPEeeR1FU9Q2BVz+FL5ZwD0pVGD9anCA9Oo4qU2wZAE +br+lPQFhjFThCelKEpqwhir60/HTFPCjuKcFwc0coXExkdOnFOCgij6HrTlHI96drMXQcB2FGCCO +KUD5gOlSFec0WuFxg607pnNJjnmlIAAPrTSWxNxCMD0pGCkeuadkcimPn0pMpDGA70EDilPSk5Pt +xSchkbBh0NPRjjBpTwKYAfWkBLketByRUYPelBoT6CsLu9qNwzzSZ9KYSKQCHINRsCc54qQnBBz2 +qNnB49aLajGjPPek4BNKCcHikxz+PNAx/wApLY6ZODTWA7UgP9eKPlx64piAZ7+wzSfKCeePWly+ +DjpUWfXoKFpuMfnIp3QA9eKjV85HrTlOePQ0JdyWSocmphkE4qFTtP1qZD61VgHqcdcc0/LDkVHu +H5UhYjPpRYCXfuwKaSQD9Kj3KePamu5OR6U077iBn6ZqJ3NJI4I+lV5JKGArye/aq0syqrEkHkA1 +HLOFz9Kzp7jOTjrRFag5JItSz7h/KqpkU9eoqgZnySPwpgdjweM1tGByzrX2NqC5RMCrv2i1k4OB +2rnPMdV4z15pftD1d5XsjFtPcv3axFhsqqoANM+0M3bFJ5ink+vFKxaqW0JGj54pfLDdc0wTDOMd +KkWYbcd/5U9AVQeiEKcGnhDxg8+tRJIuevWpQy042SJlNNjgrnJqCQbSCepFTCQL0IOKY48wggjj +Jpu7YJxGAh+2OKV9rgYXIqVIVC9RUscSc+lNXB8hRZIu68iq8ogAIwB2q/KADjHWqsltuquaXUSj +FmeY4GB3Acd6hNrA49K0Gsxg/pVV7ZhytWpNK5Lpx6FddLgZW+b5sjFH9jMRnIqZY5kbjjmrsMrD +8OuaaqMl0jLGi3BzgdBUcmk3QOTk56muqguI9uD3FSJLES2QOc0+dXJszi2064Tqv0qJrSYfw9q7 +adbfA4GabHbW0g5UelPnjYNTiPJlBxg9qXynzyOPWuyaytt3CioJNMST7oFO8WCb7HJ+W/PB4FNI +PQ11Y0cNnjGKhfRVySB70dQ5jmyMdRwR0pMdDW++iSdQPSq82lyr0U59RR6DTuZHNJz9a0jYMoxt +OSKj+wydgfU0XKsU8fjSbeetXvsUg6A80v2GQY+WlcLIp7TwcDijBT+tXRaOQRjFMNswHQ1NyuUq +7TtBxwcge9KAQQducHoam+zuex6UvkSdxTuKxAwP9aUds+vNStEc/d4oMTHnGM54FK47GjonliWd +pMbBCeD65GP1rL1AYNsP+ndf5mtfQ4o3naKU7VZdwPpsOayNQBDW+f8An3X+Zq4f1+BnU6f13Po/ +4pnHhe4zk5miH6184T4ya+kPilj/AIRe43f89ov51833GMmrntH+upFPr/XRFYk0hpTigj86ktjc +Uc0v0o4pkiUc0fyooAUUZpKSiwXFzSUZ7UUxBRRRQAUUUUAFFFFABRRRQA8UGhRSNU9S+gLUnaox +UgpMqAvNJRnmlNIvQQUtAOKBzQNBz6U4U0deO9PB7UmOIc5peRQOKSkWBJ4Jphp/emn2pol6kZpK +cabVGDEpKcaaaaJaEoooqiQooooAKKKKACpYF3MKiq1ZrlxUzdkXTV5I3bNPlUYPvWrHtx7cVn22 +AOKvw8dq8uW56yRYUA9eeeKjmto5AcrkVOmOePpT0ByPShSaJlFM5q+0Mkl4/wAqxZbG5jONpr0H +YGbpTDaQyZ3LzmuqGJa0kcc8PrdHnZhlHVTTdreleif2XbMfuCk/sCxckmMc1rHEQZlKhJHneKSu +4u/CsDIxiBDVyV5Yz2chRxW6akrxMWmnZlSilopiEooooAKdGYw6mQFkzyB1xTaKQxaSiiqvfcQY +oooqQCiig44wPrQAUUUUwAgjrxRT3lkl2bznYoRfoKZSGFFFFAEsUroevFaUTJIMg1kVYgnMZAPS +i9iJxui7NbErkdT0rNZGjbB7VuxMsiD0xUFxaCQFh1rfSaMIzcHrsP0q+xhGNdAHzgjp61xXzwN6 +YrpdNuxMig++ayV4uzNJxTV0GpW5lQsOo5rNspCrNGa3ZV3D1zWFcIYJs9s1u/ejoYQdm4vZhfwj +G8e3NS2MjSR7SecVMSJ4WHtWfbu0UxB6ZxUvVXLjqnEZqMGxyfeqCMVORW5fr5iFqwmGCQaJrS5V +Bu1mdDpd4GQBjjtU+ox+YhbuTXPWspikU5ro9wliGeeKUHaQqsbaoztMcrIyE9c1p3NuZUxjp3rG +VvJnyPWuggfzUWnsxTV7MrRRmIfTtWPqCfMSTknJPtXQuNpIHQ1galncT69asmDvIqWkipIp5yDz +9K6iBw4XqBXIIQpz710+mSrJGKyu7mtRaXGatF8oI56muZcYYiuuvFDxNwenFctcJscg1c9YkUXZ +2IKKWkrA6S3ZSNHIOe4rol3OmTzxmuXRwrAjtiulsZDJGDjPGKuOjMaq6lDUreRgWAyAKxSCDyK6 +q4edUkCMVLIUbHcHqK5mVNrEYqp3aFRfQIc7qJQ+STV3TbUTSKrcciulvNAtDbFlOGC5zUJpaM1d +73RxkbbCG966OzuldVAPUVzs0flSMnoakt7p4TwfSk7oHHmR1nbOeg5qMhnDMBwuM+1UINVjcYbg +4NTi4jccGtFJWuc7i1oK3B9/WsnUJBjbV+WdAGwaxrubzG+lDkrFQjqVe9XbYngdeKpVdthx7Csl +ubT2JpRlCSeegFZp61pyEEEA9qzG61UiaZZtWxIK7jSpPlUHmuFtsAhueDyfSuv0aXcoyOlcOIXU +9Cg7qx1MRBHvVuLIwKowszAE1eTAx3rludBZXBqwhGM9qrpjoKlBPSquBODxUgzioR2qdSPzFNCZ +Ip9OafnkVEKkAzTW5Nh3vxRnOPUUZ42jt3pSOlS9dgE560nJp2cCmH9KfQYnek3YFJyO9NJzQUKT +zmmd804dD70L3FTYYgGSBihsqcDmkJwabndSAC+aYSTSnikOBilbUpIjJbOKTceKU85pAO5ob0GI +cnpSDPen8fTim4B/pQAmCTilx24xRhhR83NAhCuffjNMdcipiM4prj060wKZBGabudD1qy61A6nt +UtIpMsRXDDHNXY7nOM1jfMtPE7Kab0CyZvrJyTT1YY96yYbroCcVcSdeOetWmiHEugjANLiq6yjj +mpN+DTvcmw7jOaTAJxTuuKPWgRFjrjmoyAPrU+KYV5/Gk9ikV2Xn+lMZO9TsCeB2ppFIZW8vPWmG +IAVaI4ppGVpoGUmj74qJkPJq8yk1XdKoCi6gk8VWkiBzV50YZqAg857Vm73KsYV/YiVcY5wa5S90 +0oxKj5a9BlXIOPSsi7tUdSAOauNRxIlC5wnlMhwRirEJxj3rRu9PIJIzn2rPKNG2DW/MpIhR5WaU +Ehyo7VqQSE9/wrCifb36VpW8hOK55Jmy1Oghf5R6gVfiYjpWNbTHofxrShkGc5rO99wsaIfp6VPv +B6VTQ4xVhNp7073YE4J4J60qvyRTOcY7VGW2kH3qg3Lytx/Og4bNQxyZ+lSZ4H5012JYuMgAUqk8 +5+lN78elPwMUr9gFBGPepA+U2Y6kHNRhAAfU0ik9xSux2JsY5FOHrTQTSrzTRLQ8ZFGefelUjv2o +wM5pt9iRfSjJI+tGelIeDSsAqg80ppgJzTj601oJi005zQW4NNBJ/KjqApJ6ZqNifxpzZBNMJzwa +XUob2NREnn2qU4qIjJqWUiIk4xUZBzUxI6VGR3qWiiMg5/CmGpD61DK4XGB0pOyQDH9cdarSuACT +gUtxcKM+wrFu7wlWwaTZSTZJd3gAJB+lYs0jTt9O1SvvlOTT0hyffFNWRVrFNLbceRyTVxLcAYxV +qKHAyRU6IPTNPnuhWIEhCgY9KmC5OOgFS7Ccce1SxQ75ETP3iB9KV76AQBW6YGacFbgE1auII4pn +RDkKcZ9aYU7e+aTTu0yU+qI9v6U7aTx3PFS7BgcZ6Gl24oSKI9hA59qTbnjpmrOARjFGwj8uKlDI +QrLwaULjGOlTohOcjr3p2ztihd2FyIREjnrT1QqBUwTgYpwXIx3p+gXIdh6fjUkQIJ9O5p+0jFPC +gfjVJCFUA9qdsGM0qjHXpT8Z6dKEtRMiC/zpcHoKkVRjFOxnOaoREqZJx607b3p6gigqfzpaWHcY +NxOPwFLvKHBoYGgA9/SjUBd2ePehs8DtSbdv0pS3FIQLkmlIOMUnckdKUdc96Qxu3mmlD1qXIzz+ +FNbnFLWwEJU8UfMR6U4ls8DvRkfnSQ2RfMSR2FSQusbZddw9KMDJ9KYcHpSWmoATkk9M84pDgrTi +Bxmo5NwGQePSrEBA/wAKZtGcUocMBSZHap9BiYANGRjHXtTXOCD6CkVuefrU3toMUkUdDx3ppGMn +3pNzd6rrcB2evPFRFhkijcD+dRgMWAPY0wHgHI571NHknng0xF4APrUygDk00r6Cb6kmDkU4EDju +aarc5zmnEqSfWqXYkOnHamMSeKaHx9786C2eKTaHqgLheB261DJKckilkZcE9qpSSEEjPWhgtSR5 +sZ+lVpJGxgDmmb+TupQVyD2qWwZB5MkgJz1qM2MjDaeavh1A4600zbScDmmqzijKVNyKH9nN0HHN +H9ljPLVf81j06U0l2PoO1P6yyFhkUv7PwMjJ55FQvaNk4FbKAgYPvUqxxkEkU1ik0S8M+hz7WzKM +Y9zUYhP8Q9MV0jxRtnioVtYWzx3rSOIgzN4eRgiMr0puxxkD8a3Xs4+QoqEWe3ORWntYMj2U0ZPK +9KVmdQOM1oG0UnB49aX7Fx69eKalAlwl2Mz96QW6nPSlBk6DOa0zZ4U/LzTPskijd78im3F7ByyK +XmSoo9aeJ5QD9aseQWGcZIpDbEKeO9OyJbZW89j16CnLOTwQKc1tL6dqatu/Oe1P0FfuIZYxwaaG +jJ46U/ycnLDBpfKHOB3qooTZDhCRx361N5MWAelN2gZwKQk5/LildormbJR5KDGcUgAH3T1qIDOS +TzSBiSe2BxTbbEmWSFPBPJpVWRBwelVix9KkDnHWlGT6g9SVkb7wYck8dxUieZkfWoBIcc+tL5jA +bs/Wi/cpSsXlZgM0pwSKpCZwME1Ilz1z1FNS1JLy7CMYFI9tHLg+1VxNHlQSRnqRThN0wetXEQya +zjBG3GR61WNsq596tszHvUR35ApN22LTTViBbZBz+dKbeMsOPrVpIgB79KkjhUsP1qPadC+TqZ8l +mikkVCbEyuAByTgVvNbITk9TVWeHYQB39Kvm6iv0M4acqEhuSKcNNjc84HpWgnTHFOUYOanmQ7My +pNMTdgUxtKDDIFbu6FuO9SKsBHpVXRLbMnS9LCXJJHBjcfjiuR1dCs1unpAo5+pr0y1aKKXd22kf +nXnPiMYvEA/54J/M1rD+vwM6jvb+u59C/FPH/CLz9/30X86+b7g8n2r6P+KhI8MSkf8APxFXzjcE +sSe5NXPaP9dSafX+uhXJ6DjpSEk8sSeMUGkqSwooooEJRS0lMQUlLSUCCiiimAUUUUAFFFFABRQC +R0ooAKKKKAJFxTWpV/lQ2KnqaP4QG3HvnmnA0wU+kxxEp3FHOKbzmgewvenccUwVIMDjHWkykJTx +g9KZingEjiky0LxQccUnNL3pFABkUhFOGMjOe1NPegHsRkZpvNO7001RgxKTil9qbVGbFxTacabT +EwooopiEopaSgQtaNghyDjrWcOta1guNpI6msqztE6cOryNiEKv9K0IgM5FUoASMtxjg1dQhQMd6 +81npFlMY5qVenA6VDGMipgTznpSBjgRxTgB1FIBxTx145NK5NiZFB6fjVhA34cVBGMEE1aQZA6Yq +r2JaJ0iVxgj6VkazoMV6mQoDAcVtxkdKm2h+OtdFKo4O5z1Kakjx3UNKubGQq6nHrWea9mvdKtbt +CsijmuP1XwaVJa2zj0rvjUjNaaM4pRlDc4ikq5d6fc2jFZEII9qqkYqnFrclO+w2gYyCRn2paSlY +AopeaSiwBRRRSAKKKKBhRRRQAUUUUAFFFFABQDRRQBes7nadrH6VsRkSLxzxXMgkc1p6feEMEehP +lM5w5loT3toSN68cVWs53t5Np9a3iEkQHqCDWLeWzxtuXpXRZTiYQlyvlZvxNkZ5NU76HcpYDmod +Pu2ZfL/CtGTa6HjrSg7bkzi09DNsnI+U1Vu08uQOPXFTYaOYYyM1LfIJItw7VfVxHezUkKjCaD1O +KxLmPY5HvWjYSHJQ81FqUQViw71KV4tFJ8tT1M1SAc10OnT74gp7cVztaelSbXwT6VktzaorxH36 +FJAe3NaenSBkGfSqeoZZd1O01+MfhWs1qjCLvA1JDjOKwNRf8+9bzAbePxNZGpRcA96qOpC0kjF7 +1r6TNjKE4IPFZJBLY7k1ZsnKSr9axlodb1R1DAv19MVz+qwhHyO9dBHll69qzNVi3ru9K1hrocib +UkzAx8ucd/ypPT0pX6n26U3tWD0Z2i5rb0qchQufrWJ2q3Yy7JF7A0bEyV0dJIm9evbvWVcWYBPH +Gc1qI+V3E444qCZucH0rVO60OXZkNnsifP8Ad5p17rUuDGG4IxTCrCNmHAArFnJLHNZyinqzqpya +2GSyGVyxqOlpKllChivINPWeVejGo6KQx7TSN1amUUpOTnAHAHFAhO2ccDFSpMY1ddoJbGGOcrj0 +qKigZJ50nPOaYTmkooFZD0Yg49a6XRJjkDsa5gda3NHf94OcdBWNZe6dFB6neWzEqADk9Kvx8day +rR12gitKJ+grgudhcQt1NToc9uKrxnHXvUybuPQ00DLKY6+tPGO1MTpzUoHGaaEOBJp4Jpq8H2NP +4zRuxCgGpMgUxad7U/MQHPao2zUp7Zphx19aLXBEJGMc96MYHWlYYzUYJB5osXcfyM9/Smcg0ueK +XjipYCcdaa2OaCcHFNOT7HtSbKQhph/nTznnvTGep1GhpJGfrTQ2Pagt29abxmlcocxJ6UDNNz0x +T8cfWl1AcTxnNN4xik6HFKcVXQkUCjpQMcUMGppAxjZJyOlMJ7VIw4NR45PvR1EiJ1BHNV3GOatt +kjBqtKuBRq0NEPmMpJ7dqmjuypAJqpIfUdapSSurfSpsy01sdLDdZwauJPuxXIwX54Gevati3uSV +60+ezsU4G6suTgVLu55rMimBxzzVlZOa0TMnEt5z9aa3oKYrZpwORTRNhhz29aTrT8/zph4yKQxj +HPHSkHenZHekA5NHUY0qajZBkg1McjgGmeo70AVZIwM4+lVJI8H0xWiw9arOpOcUmNGe6AZqo8I9 +K0nQc1AY+9S9xmJPbK2cjpWJeWIzkD1rrZYuTVG5tlI6ZNUpNITOO2PGTmrUEgXA+lXbuzxms9VZ +Gwat6oFozYgkHFaFvJjj2rCgkPH1rThkyBWMtCrG5E+4c+lWoyB+VZcMw4FXo5Bxg1KYrF4HtSMD +x0qIN09aec8d60v2Eh6Er0qVGLYqDc34inKSuP5UJ6Ay1zmnAkEDqKiVxnrzUgFMQ/lqUCm4xzTu +R3qb6gOAIpQe3rTeDjNPXGPrTQMcDxgU7OBimYPOKkXJxihIlhgYHrThjvSFT19KaMmr6ksGIB4p +AR3PWjGfpRiiwBkCmk46UHpSAjFJ7gKTkH9Kj/wp5yBTDyDSeoIbmmE0EjAqN5AMUrliFueaid/y +zUc1xgc1nz3ow2GAx+tZN9i0i3NcKgPPas2a/wCDiqMt1JJ+VV9srHJzg0tzRRSWpJNPJJz2zVby +3bgirawHr3qdbcAjFNsLlEQkYI71ZjhI5NW0gHSpfJCkewqbiuVgp4AGMcU8Rt0FTmLPIqVUGCTQ +t7BfQrohUc/eqQIeOMVKIxwfepQopoRXKEjpS7QOT0qyEGM0hQDtVWERbBilaM9utS4BANPVcj6G +kBX8tgBmnbOnerGM9qcEOORiqSsFysuOtSqo70uzaacFP0xSsraBcbt9KeEI5xUoHQGngHjFNJCb +IMZIpSg/SpdhPSjFFh3I8Y4PengHOOtLnj1pRg5p2EJjOKdg4pMc8Gl69abEIcge9GAQaOevpQcH +pU3GJnPHFISOKCOM/Sjk4I9aV9BjcEk0096duFMJzmloCAPilD96YcGgAilrcZNzxn0pOvtim7ji +k75HWm3YQHjP0pnOcCnmm81LVxidPoaaM4/pTmyTz0qN2IoatqCHccUEA/nTARtU07d2FF0lqIaV +K9KjwetSM3BBqME0t2MifORSo3XHpTZOcHNQljkihrsMmZ2XpyaYxHWmlycY6Gk5b6VSEOjAP1qU +KM9OtNRB155qcEfpTSXUGwC8D2pwYYIFMckMQexIxTM4Oe9CEShtue9N3gcjpUO4c+5pCynIpu9r +ASF19ahdwpPNRPJng8VTluOcVLdlqUlfYsy3A6A4qk8rdz25qFnLnqKCOOtZuZagKJDn6frUyMTn +vUBXoT2FOQcjBrNyK5UXGwAKi8wZpS4xg0zyt/IqboaiiQzrjApQ+QDnjOKgkhK9OaBEV6UrDsi6 +suTUynis9crhjz1qRZXJ9qRLiWz9aXeyniqwkYE5pTIxbP6VST2E0ifepOcUrMAKqGRw2KN7Hg+l +aq5DSJWI6nvTgRt3dqrbmOTx6VNEOMYobsQ12Q9ZMk8USZKkVIiAA4pcZ6Cl7R3H7NdSGONRjPep +/KjwOKciE4BpXUjHoKPbSZLoxG/Zo27YpfscZpBLgjmpN7Hoe1aKtKxDoxZXNirHOKQ2IAyBmrab +h+dPAZifQd61hiX1MpYddDK+xLkkDrTGsuwHPNbPlDGMc1G0RyGq3iCFhzFGms9SjTWC9OTWmgKZ +OPWphuamsVdB9WszBOnkNz3NILN+Vx1roGRMDgVCU54GKPrKJ+rvoYjWBHbpSfYpflytb2AMErUi +vG3BSrVeL0J9hI5z7HIDzk08Wu2tuWAuCcVCtmzHngYrX2kTN0pIy/JCfjThDkEmrlxAqrgHnvVc +DaoGc1UZJ7EuLRXKyLyKTzAPvDmppGPHoKYIfMXdina5NxfMAHHem+cyqT6UhRVAB7nr6VAx28DO +Kn1KUmWVu2yDmh5y4JNVQQPqaC/GAO9TqO+pOrDIFTCQY61SDMc8YpAzc5J60Id2XVZS47cd6kVu +ck5HoKz97DJxnmlEjLyetXzW0JNGLf5iYY53DFcPr5Y3aZ6iBBXYW8zF17tXHa7k3at6woa1pPcm +fQ+iPinn/hF5/wDrvF/OvnG4Jzivoz4q5/4RiXBx/pEef1r5ynzmtam0f66ip9f66Fc0lB70fjmp +LEo4pT2pKBBQciikpgFJS+9JQSFFFFMAooooAKKKKACiiigAooGO/vRQBIvAprdacvNNbrUrct7A +KeOKYKdQxxHZptH1opFXuKKcM03B/ClzSGhwHNOH86aOlOqTRBxzRSUuaB3DHShjR060hoB7DDzT +PrTzTeapGMhOKSnYppqiGJiijmimSJRS0hoEFJS0UwHIMkVtWSLgCseEEsK37RcBc1zYh6HbhVpc +0YuB61bUhvY9aqxgkkDketWowa4LncWEJIwBUo9T3qIYX8KkHODj2qREqdPQ08Z3VGCe3IHWplwc +Y9eabYiVckc1ZjyAM81XDCpo9350JtktFyI85q4naq0GMZq1GtaxZnImAyKcACOaavHvUyBSM1rz +NPQzcUyhc6Za3KsroGB9a47V/BKuWkthg9cV6GFBpTGGHSuinXlH0OadJbo8HvtIvbFissZHvVAq +RxXu99pFtdqQ6Ag9a858SeFnsy00Ckr6V1RcZ7HPJuPxHGUlPdWUkHsaZSYwooopAFFFFFgCiiik +AUUUUDCiiigAooooAKASKKKANbT70jCMc+lbB2ypz3rk1ZlOQcVrWV9uCxuelVGTTMalO+qEeM28 +4ftmtiB/MUY6VWuYvMTIzxyMUti4X5emP1rWXcy3jZiXicA+9OjG6LGe1WLpNyk44qnAdwK9OtN9 +GTumUATHOMH8qtXaFofwzVW4Vknz2Bq8x3wn2FO9pDl8KZzz8EiprWTy5Ac4pkylXIpsZwwPvWc9 +zpWqN2ckwknkVHprfOe3NTZDQH6VBYgCRvXOKbeiMFs0bZAI+tVLyLKEdeMYqwQMA9MU2QFhxzVL +e5nLyOWuE2MR0qOM4YE+tXtQhKHPtWfyDSqKzOilLmjc6yxl82NBgE4FLeIGjIIOcGs3Sp+in6Vs +SlSCW75/OlTdtDGqjj512uRTCMHBq9qMW2QkDGarwQNIRxkYoqR943hJctxqQOwOBmkUNG4PpW1B +bbYxms68iKvmhx0JjUvKxsWkodATzxyKfL94A9AKztPmXBBPSrygNk8nmpjexMo+8XxCpsZCf4ul +cndjEhX0Nd0toz2J4+bGa4rUEZJSrZ4Jx+NVe8TSKSZSPWjB64pTjnHPNNrNmiFXbn5skYPSkooq +RhRRRQAYOM+9AUsQoGSeAKCc4HpQCRyDg+1ABRSqzKwZSQwOQR2NJnPNAhRV/TpNsi9OtZ+ckmp7 +dtrD6ipmro0pu0j0Gwfci49BW3CRjOea5fSZcoozXRRH5eteW1aR6G5fRz3qdCeM1SDjINTJIOPe +hjSL6MoqdGz1qgjjg5qwj8+lVzCsXFOcelOxyahV6fkEdap7k2JASMU9WGKiHFPHBGaLgP4OM0HH +bpSZBP0pM9vxoENwM0xgM9O9SEimEGi/caI+M0fzoOOTRmpfkUMPJpDS85NBPakthjSelMIJBp+A +abnGfxpMpEfH1pNuM0/g001PUYnGc5pBgnGaXvikIXOKa1AfxgkUoHHNM4/OgehouIccjP5UuB9D +SHkCjnFK4AcECozk5+tPbionwM1TYkNNQkjBqR9oGRVZ26+lF0hledsHjkVmXJ+97VemkGT+lZd2 +5+YYoWuo0ik0hV+K27G5DqvOOK5yZwDk8Yqewu9rjn6UpJ7mq1R2EcpXBJq7DPnvWRBIrqDV2Dt6 +inFia7mrG5qwjDqapRE4qyhzx7VoZtEx6U0mgkE0047etJrUSGsw/pTN3FNkPXFR57E1LlrYtImL +GjcO9RBuaCfX8KE2Fhxb8eM1GwJHTvTgD1zzS4PIosxFYqDxURjHbtVsp6DvTGQDJ70mBTMft9ah +khABHXNXWGO1RsoP19Ka2EzFuLcHNZF1bA7sCumlRTkEVnzQBs8UrjOZMbIenSp4pCMc4OcVoT2o +5wOcVnyQspHek3cpWNGKQZAFaEMoPFYMcu0j9avwz569amQWNtJGxirCNtx3zWVFKScZ6Grkbjj1 +ouKxb3jPWn9Tj/JqsGBqVD3qxEwJHUVNGx4PaoAwxzUqkfSqEWVPalB7VCrdvWpEIzzQ9SbEgpyi +o93zexp4HPFJ9kBKMcinr0/WmKP5U7nv3xTQmP55FNOTSZzil4H1p2JEwQc0HGKcWAPNRGROe1Pq +SI2PzpuRSM6gZNV3nUd+1JvuMslwOhqB5FHJqpJexrxntWfNqUYJANZymXGJoSTqpOTx2rPuL7HA +NU5LtpeFNNETONx9c1m/eNoxS3GS3Ej9M0xbeRuSPStCK0BwSOKurbJgcdKq3cHNLYyEtCuOKsLb +Ec4rTEIz0qVYMqx6YNHLqJyMsRDuMdqlWFfTvVtoe/pQseByKmzbC5W2c8Uu2rOyk2YzxTasK5V2 +jOMVKsa4z+GKk8sZyadtHbtStpqMg2HB4oQEYBqxtHWmhMmnZsLgBxRgYpwGDS4p2dhDduOaNn4Y +qVRilxnJNPldhXI9oA6daFzmpAozShR2FMBmCeMUbcVKBgjNLsB4pPVgMB7UdKeBx70dfwptDEHU +e9L3pAeo96TOBTTYhSBkdu5pu0c04k5zTc8YouAhUilxSFjwKUk4pLcBD2NN3ECgnikJ44pSfQdh +xYkUxvWm7uaQt2zxUPzKsN7ZpQcdelJ14NJz096F3AUlaQtjpSEcijauM0wQmccetSgZqPZilQsO +P1peoMmOOtNIBoEg5qMtTEDMCcmoz3o3A9aQkfNxSsnrcb0Gv0z3pPMOPfNKx4A9ahfI4zmoa7DR +IxyR9KhaQDIzim+Z0zxTGZd2T6YqlvqFhGYnqTTPmP0HSlyM49qeq5OSadnYL2EUE9evHNTIpzg/ +rShVBxT8HrVCuOUgHB9KaTtP501m681Hk96OlmIl3cHPemM3pUbH9Ka0iruJNNtBuJuGCagedVz+ +NRzTY4HpWdJMSxA9cVnzdi1G5ZllLcg1TY5OD3pjMx6dqUYxz61HmaxVkOXdUwzt49BUase/tUiS +Beoz7HvUu5RHvkQhgcY6GgSODjH4UobmkLDOe9D7DQ/zex7d6lgnIPtVXINSKyjp1Hek4gzRZgwH +9aNq456kdPSqgckDB4zTxIc89KhKzIZIQuM+nWkjcA5HQU1pI8YzzUHQ/WjkHe6LnmggjvjNK0ih +R64qgznNP3N3B+tVaxNizvQsc/Sn7owOe9U85OR6UYOaeocqLDSInSj7Q5OV7dKqneMmpIj0zyKT +T6j5UWvOfaT170q3LZyajLLjB6d6WMIx56dqlx7hoW0u06nNXFljf8RWSYwW455qykbqvXn3p2ts +Q0mWXVDyDzzSD5RVXf05xSrL15zUvUajYuKwJBP0q3HtxWfDtfBq5GoycnrWkIroZT0JSyk1GSOB +SPgZ5qBpAO/SplG7GifePbHajee9VkkhZhU5MfXNNUtAc0mOJbORxQMY5pjsrcg9KrtIxO0fWhUk +xcyL6mMAk04yRjHSs8ecTwOlSCOYjmt4wsZtosPMO3eq7NIfpUkcDA8jNSbVyBiibshJXKM8LuPl +HNRrZzL2rVwtOJAFKNdx2CVHmKA09ZDuIH0qQWcajGKshm6UoBYHNUsTNkPDRKclgjnjtzVZ9PXr +WqVP0pohznJrZYjSzIeHXQw2sgCVxUf2NvTAroPs6HBo8mLOCBR9aS1ZH1Z9DnzaDsOe9MNseBjk +10RiiHUUgggOMD1qvrcdkL6tI542b7sE0rWbY6d63HgSmiFP4uapYiNtRPDyMm1sWZxhSSMn8K4r +X1ZbmL08hQPzNeq2VuC744AjY15d4kVheKMZAgTn05NdNCop3t/WxjVg4Wv/AFue/wDxWyPDL/8A +XzF/WvnKfqfrX0Z8WTjwycd7qP8Aka+cp8ZOPWume0f66szh1IPxpPxoJo9agoPajik+lLQAhoo6 +0lMQtJS0lABRRRnAI45piCiiigAooooAKKKKACiiigB60jUoximnrU9S3sKKeMd6YBwPyp4zQxxA +0CiikUGaUUnvTgfSkNBzTs00U4YHApMtBRRSA0DF7U6RQjEBg4B4YZwfzxTaTNAmN4pKU80lMhhS +EZpSKSmJoaaKUik570zNoKMZopeaAGUU4jPNNpoTVizaLlga34ARj3rGsowSM1uQDgY61xYh3Z6O +HjaJbQcHnrzVqPCgc5x1qumBxViNc1yO250E6/MM+9SqMDPpUSYU/WrK8jA6YpdQYKDwT3qRM7sD +pTVxjHf1qVVOQQc07dxMmUE/nU6ZGMnvUCgjb+dTrkAcU1oSy5E2cY7VdjPTis+I9COlXYmq47mc +kWBUi9AtRjFSIR39KskkSpABgmmL6U4cVa0IHgA1TvbRLmN0YAgjFXk9aUrWsZW1MZxTPGfE3h2e +0leWNfkJrlGUg4r33UtPiu43Rh1HWvKPEfh6exkd41zHmu6DVSOm5yO8HZnL0U4jBIPam1BQUUue +McckGkoAKKKKACiiikMKKKKBBQcdqKKBhRRR/SgQA45p0bFGDDtTQCxAAyTwAKKBnT2kyzRDvx+N +Mj+WYj3rN024KNsPStMgh1fkZrWD0scso8si7Kd0ZzVKAbTg4q0DlAPaq6KvmN7HrVdCFuZ+oqVc +HtxV20w8Sj2qDU04U07Tz8gPem73RW8DMvlAlaqq9RWhqKYkJPfk1njjFKpua0neJtxbjCB/smor +FsSnsSantSkkQA5ytVlOyYAflS+yQm+Zo1J5ti55wafDIsgXnJqvdHdFkZOB/Sq2n3UKGVJAxY42 +EHABzzng/wAxTeiTJjHmuWb+APGT6VzrqVaurdfNTiudvYSjt9ap+9EKTtKzFsJNsgHTNdEG3oM+ +tcrE5RgR610lm2+MHOelZxdmaVVpcgvLbzSvvRbWwhGSKvEe2BjFRkFQeetXuYXaVhSoI6dqyr+E +7c9hWorfe61Vu1Lxt9KSvcezTMW2k8t+TjNbtnIrEDOOlc62Vb8atwXZQrzyKybaujrSTaZ6dCID +bIOoKiuH8RWLRymRSMc1qpq3+iR4PIGK52/1GSclScippSfyLnBLUyj3ptKetB61TJEooopDCiii +kAZIz79aDyT29qKKBBRRRQMKeh+YUyp7eF5GAHrQNbnS6NIVCjHbNdJFNxXPaZZyIAcHHeuhhibA +4rgqR1Z6EHoWBMRnntTknf8AOlW2z/Wn/Z8H3FZchqmh63JqdLsVV8v1FNKN9Klwa2K0ZsQ3SkD3 +q0JRxzXNl3jIxng1YS7k4BpczE4G+JASBUwbnrWJHeetWEvQe9UpKxLgzWDij3qgl2vGDUwuEPAN +PmIcWifr1oJxUPmrmgyL1zTQD26004pu9cnmk3ZpXQwyeaaSevpRTSeuaE3sMDmkzxxSbs0oIApF +CDoaDmk5+lB7UaiGd85oI796DjFNyOtRboVccTzx9KXg9fWmE570bqdlcRMGBFR5568Um8YNIXFK +2oD2IwPeoHY/lSM4GeajeQYNO+gWGytwD2qtI4xx3pzyEA59KoySkZqW9R2I55CMn0rMuJMg4PPN +WbmX8qyZ5eoHaqRVupBO+cAVFFIQ2abISc470+2hZ2A6Ctbe6NPU6bS53kVR2z1rorZc4rntMh8s +DIroYSAPSojGw5MvR/LUytzVITqOtJ9pA+tVzImzLvmAEgUu/wCU881m/aDmnfafeoug5WWpHUZ9 +ai3jqahMwY4pu/t2FS273LSLQcmnjJ61VDntU6EsOPSnvoJokzjrS5OaaTnGaUEjFBIrcUzGc08r +npTcHkUxETAVG4x1qww4wOtRsvHNF7CKUoLGqrx81oumQagZBz7ipbGZbRetVZ7dSMVrsnWq7R5O +MUX7DZz8tuU5wfWo45Co6HPtWzNDnqKoT2yA/Kck9fb2pt3Q0ySCbuTV2O56elYTFozjqOlTx3WA +vOPpSs0h2ub8U249R61aSTp71gRXSkgir8d0v1qVpoJo1lYZGfwqVWGRms5J8jirKzAdaq+hJcz6 +9KmVuKqiVNo6E5p6ycYFUSWskGpVbvVVZRThJz1FILFsNjp3pxYEf41T84Dmmm7Rc1XMTylwyBTn +sKryXiJznms261GNBnNc1fayQTz3qeZvYqMLnWtqcfOW9apSatGMgNXEPrL5+8cVA2pk5JOeKajM +bjFHZS62nQN2rNm1skMqt1rlnvsggNz6VVkuzzg1aoye5DnFHRz6s53YboKz5NTYk5asb7QTnnrU +Xmt61pHDLqS8RbY6e01LBwzcE8101ncwyquMcivNY5yDxW7pWp+Wyjrx0NZ1aLjqi41VPQ9FiVSO +KsrHWRpt4sygg1tRt8oA71CE7oBGPSnBOCOlSgdKk2bulU0LmKZQjtmgIcZNWmQjj9aZtJpbDuV9 +gzSMtWdi9aayE9KnlHcq7CTmlC44qYIeKaRSsVcjI6mkC85qXH1pMHHFC3AbjNJt5x7U9VJ6UoXF +UkJjQvfmk6ZFSgcZ96Mdc0lcQ1VAp2D1pNp69qlIGBg545o1GRYP5d6UgnmnkHv0pKLILgBx74qN +g3btT9w6dqXIAp+QEWDgEU1gal70xjzRdDGxkHhqV89BSDHb0ppzSvoHUQE/lSj5etB4ppbvS23G +BI6U1yelGckmk3Gpvd6jEINIQPxpDj8aUYJFLVLQYh7UZH50MPQ96Xb0pJsHYAoI96MHI4pVB/Kn +8c1dtBDMjPFJUh2jmoycE4pWsAm0DmmtkAn8qXeOgpjn3/CpYxrEcVHnk5P0pxbmojkHNO/QALDv ++FNdtoz6VHIwHJ/Cogxfg96XUYrnIDCmLnP50oAXIqQJnHvTYXGorE5wKnQdzj6UKmDxUpCDGetU +9ibiHAFJkgZpHPAI/Go2fpn8KewC55OajdgDjNNMuelQySL61LAVpccCqk9xjIpk04zwTnmqTu5P +PvUXZpGPUc8jOePpUW480hdhkHv+tMMg6evehI1RMjjBHHPWmsew9aauAOMZp2Rn1PrQMlVlGB+t +POCP6VH5fIzxxn86cQeAPWpW9iRxVMHHH9aj2gjA4NKA2CDSNhD9admCY3aadsYd6Z5m08dyKVpW +5o1HqTR7hz602Rn3EUxZe5pTIrMOce9TZ3CwxWOean34HNNBhyBTsRnNDsxjAcGpS68Y9qaY1Off +FNMfGc0WQromDIO4GcUAjJIOTVYRuVZi2MDIz39qYJZU4P0quS4tC2xINCSY61B53apkKhc5osIV +pSGGefWpYnjHB4qFsMB0quMhs5+lJpNWGjYEiZXkDtU8s0ap17VhrP8AMAamlnbaR17UlBiaRM06 +EnkUiynIUHis5dwbPbnrVlZo078j0quSy0G2a0EoVc9uhqx9q9KykmXZweuDT4ZMgsCCeaOXQykr +stT3Ep5HGarB5GIHJ5/Oo5ZXJx09KRGzj5scjn0qNVuWo6GhAoODVz5FB3Gs+1fA9as4aQAVFmnq +S0iQNu+Ucg1PHAgIJ61EsbL+VTqT0P51KlZ6CcSwoRRjAqQ7O3FRLginggd62UmzJxFJAFRMARkU +5m4IBqNtwB9qmctCox1DnpTSffJpgL9aaWI+tYKTNbEuTwBT1c49qiDCpQVxzVxabJaF80HGaM9x +TDtJzigE8iteaxNiUZPtTHZh1FKXPB6dKJ8B8dsBl+hpuSsFtRhOQc0o3celMwOxqZBxmsVJlNCb +c+9JtTPFOwc4phG3j3q+ZtCsW7LCyt6eW+fyrybxQT9vAzx5KfzNer2xYk7McKc59K8n8UZ/tE+8 +SYr0sD/X4HDjOn9dz3z4t4/4Rrn/AJ+o/wCRr5yn+8fQ19GfF3/kWR/19x/yNfOc5U5x1Br0p7R/ +rqcMepBRmkpcZxjkk9KkYUcUlFABRRR0oAKKKKYBRRRQAUUUlACjiiikoAWiiigAooAJ6UUAOHSk +NKMYpDSRTFBwMU4UwU6kxxY40nvRR9aRYtKKSlpDQtKKQHpRmkUmBbvR2opAaYXHHtTT+tLzSGgT +Fz6U0Zz7UUuQKBBxTadxSGgQhpOOKcaaaaE0IOTTqTkUopiQvWm7RkUtPjGTS2KtzM0bEAgCteID +bis216Y/WtOPJx2rz6ruz06atEsoOQasIDwM8VXTOOvNWY+DWJTJlAznGMVOuAQR2qJQcZx15qVM +YA/Wk9BEpAGDjOalTkA/jUag9+alXoOMZ7U9BEq9P51LH9c1APrxU6e9FiWWIiPSraEgVUjOSKtJ +9a0i3cllmNs+1S7sEY71Apzg+lSrx9M1ZDLCninrTFI5p6nIp6kMlGAOKd0pik04E5q09CLDWGet +Zep6bBeROrqDkVr9aYy8VrCTi7oynBSVjxTxH4fl0+VnRSUJ49q5ogjrXu2raZFexurqDkV5Vr2g +Tae7OoyhPFdqkqqutzls4OzOdopSO1JWZQUUUUDCiiigQUUUUAFFFFABRRRQAAkEEcEUUUUASQsV +dSD3rfWQukZz26Vzq9RW3CrbVbOBitIbmVU0oiCOR60wKA59TToQNuScmhwQ47CtE+hh1KepY8vJ +5561BpsgGVq9eIrRHHpWbYnbJiiW1yobNDtTTPze1ZFb2ox/Lu5xisFuCR70p7F0XpY1tMlGMHtx +RcqI5g3TkVTspCsgHrV+6RpE3g5pQ1Vgn7s0y0pWSIjrkVjsTFLn0NXLOc8oe1RX8YLFx0NO900T +FcszWtplkTHsDVXUYFYZX8ai0qUZ2tWtLGjo4/yKdNq9iKiad0ckw2t+Na2mXJXCkiqV3AY5GwOB +yfamWsvlSA1E1ZnQnzROlLbjnPvR8uc1DFIHUHGacM7sULXYwejAhs8d6im+4Q3AK1KxC7iazb27 +42iqvZiS5tEZs+N5x0zUQp8jBgMDGM1o6VphvCCxwuRWMmr3Z2Qi9hIt724HPymqMkbhjkd69Att +Es0jPP1ok0rRyTuApKrCxbhJ7I88KMOvFJtNehf2LpB+cgY9aifSdGYHgCh1afcShPscBg0vGOvO +eldhJ4csZc+W3NZlx4aukyYzuAFNOEtmJprdGDRViWyuYSQ6EVXxQ1YQUUDGeeKKQCttyNuSMDr6 +96Qknqc9BRRQMcgBODXTaFpvmsrFetc7bqWcCvQtBh+RD0rOcraG1KN1c0orAKuMc1PFEqHJq5gY +qs5wePU1zz8jqgmSELgEdKXj0qEOSRk8VJkkdaxu2zdR0F25BJ4xzTCobp2qYLwAeaDGw+7TaY0V +mi7im+Tx61cWI4zS+WTScQuUfLI/GmNuU8elX2QkYx+NRNEM59KhoaZV8516Z+lOW7kB5PGKkaPP +TpULRc4qHHUd00WBfnoaP7RPrVQxcD1qIxnn6Utdx8sTUXUFbqcd6mW+RgDmuecSjA9KFeUU22Lk +VjpftYPfikNypOM1zX2ude9OGokY55xSvJIXIdH54ycGlMoB9awF1HPf8amGooOCeTzU82ocjNrz +VPekMwOeayDqCrjnrSfbge9Xzi5WajTDHJx2pvnfoKyzeKe9AuQcjNRew+U1BKOBmkM3PrWV9rAI +zxR9qXufpVqQrGl5xyM0plB71l/a1znNH2xSetJPUbRfkmXBx2qvJcHnnrVOS7VRkH8Kpy3eB97r +yKL3CzLrXQyc/hVCe6PPPHeq0l0pB55qlLcH9cU0myrE09z1qi8gbIpjuXGP1pEikbaQM5rVKy1J +FjTzGX69K27K2VccVDY6e5Oa3ra1ZAOKUm3sPYkgGAMAiris5pqQYPocVcjhUilysLpEBDsODUZD +5z1rQEIxR5SgHj60ctwUimEJPPpTimKsiMdqXywc07NBcqlCDmlCnNTbMHnpShPfrUvsO41FOOan +j4zjrTAPTrTwCvNTawN3HA8gVJk4pijJ5p/PPNUmSxw7H86U4waYO9KT2oJEweaaQaduyKO3rQ2B +C4OahMZxVg/eph7kVPkBUdByDULJkdOlXGUHmonXHTr0oSGUJEzkY+lU5YVIAx1rSaPqahZB9KgZ +jT2vfuazZ025xkd810ckY21nz2yYOcVUZaBexirOVAzxirkN6OCfaqF1E4Y496iVZVAUCteVPUdz +pILsvwDz6DvVmO9B69q5qG4e15RcSc/Me30qSK8OfmBPeodO2wzq0u1PfpU63eeAetcit+wZsccD +irMV8x5z0qWmLlOmN5gjnpSHUAMc1z4unYZBPIpTI7Y+nSp1RVkbL6lweaqSag/HPSqQJI607ynb +tRtuFkMmnllJrNntnl5PrWuLfnIFSC3HHFUpNMTOWl098E4NZkqSRHB4613UlorA8AcVgajYgBiB +XTSq33OapA5xnNNLnpTpk2MR6VFx36V2qxwzbTsO3GkzTaKqxFxwapoZjGwNV6UHFJxuOM2mdloO +p4cKT6V31nN5irj2NeOWNwYnUivR9CvxKgy3pXn1YcktD0Iz543OuTmpAcCoIGDADNWgByKRNxuO +KjK9anwOmKUrxmkCZXC4/GkIzUu00hQ9ulBVyuQfT2qNlPbpVtlqLa9SykyMZI96AOtP29qTbjNC +2HcYVxSlcc+9O6YB5pxGccUxEXcCnhdw5pMbck80oJ5xSWmrGwKjAGaaFOcCnUh9RR1AG9KQHIOP +zo4akbjp3pOzdykRng04nimkEgYpc8VPmMQsBx3pOKaT396ZuOMZoukFh/Hbg0h64qPfyDSq2c56 +0b6Idh/HNN4PA7U0nnmm5Pak2h2AqwNIeSPQU4txzTec0OyEIRjPuaTk4qQg4oxjFIYzPanrj9KM +KBml9MU0xASeabklfenEZprY5odgQhY96aSv40wt3zTWOMe/epT7jsBPJqMsKHY49DVcvgccGmMk +Lgd+aY7nGc5qBmIB7YppbPr0otrZAK0jHqKYG54604IW5/KpFTac0JCbHrGSoJHJqRRgc0gZgcds +0pI6Z71TVhXHcjNNYnGaUucbe1Qu5PH5UWtsA12PaoXbjn8KXcTmq0zj15FDv1GPdzjgVQmuPmIz +04qRpGYHn2rPcMGyaV0ykiQyMcleaQbi2D1pqOuD+lOTLHpj3qGrGqEYAZz2pnlgk4HWrG1CN3Sn +7UA9RSUrAVVifgdc0+OLJGe1Tg9h609EBBD5GO6jp/Kjn6A7ilCyh85IABH04BqKQkD5RVhY1QNg +s3BUZHr+NM2uQKT7koqjzSabIkn4ds1dRCTntmo5Cwfb2x1o5i1uUCJskEZFKSw4NXNygHsaayxM +MjFVz+RRU3BSKcXU/XPWpvJQjgim/ZwPfnmndCuhqgY4NO+hxTxDjgHtTPKYUrhcGdwPl7U+DEpY +SSbCFJBPc+lRlWIpPmHJqkl2FImWfnbSloiOn41Dw3J4zT2i70rEuw7ylbkcdqCsicdaRFcAMKsK +G24PpQF7FYM5IBzQ+SBjg+tOd0T3xxVOe4JJ/ugdqaV2NXZYRY1JYkZFJLcrjj/JrNe4cVA9y+Ov +41vGk2RJpastSXLHOai8+Q4qmZcnr3pPNOetbKlYz9sjZhuiUx36VftG2g5bmuZjnbfjt7VuQykx +AdDg9aidKyM/a8z0LTzh2IHUdaYkjBju4qos0a59c9ajMzMTjjmufkOqOptQz88VrW0pIyRzXN2T +Etz07V0EBVQvrXLV0dhuJbeVgOKdE25QSOhqLO7tTwpGSB1NZK7JaLW7jjtTtwxUSIwHrTicDHrW +mqMxQSTUcjGgttGapyzHtzzSkVFE4fAyRSbiTk81CZGKZzS7mUAetRbTQssrtzz0qZSDn2qkhYnr +1qwhx1OacVZ6ikiR2HUUzcCaQsMk5pEYHpV3JSJwwI57UyR1OMcEDFJuABqB5F/wqZPQaiP3H9am +EgqujqelOZgDxWd1YpomDuenamvKR1piHqR3600yDkcVdkSX7OVvmz0ZGXP1rynxNzqB4/5ZJXq1 +jsZZD3RCw+orynxNk6if+uSV62B/r8Dz8b09f8z3z4u/8iyh6f6ZH/6C1fOcpXJwO/NfRfxe58NR +j/p9j/8AQWr50lJO6vTntH+urOCPUr0UUVIwooooAPeiiigAooooAKKKKACgbe+eh6UUUAFFFFAB +RRRQBIm/HyjnnOKjpVOKQ5yc0AO7U2lzSUhsdjGOnIzTqaKcM0mVEKOOKkjgnmz5UbPjJO0E4AqO +kULSjjmkJo/rSKQ6j6UCg0FBxSGjnmigQUHijjrSHPegTEpaSgUxDqTFGTRmkPQU00jrS+9JTExM +UoH40DNOHWgSQmKliGWH1pnFTwAbgcdKiT0NqcfeNK3XAAzWjECMewqjAp4JrQT0FcE3qd6WhKgO +4emauIBuxmqysARVlCpH1FZNrqUyzGOOvepVXuRUCcAetWFbGAelLRakliExqcv09KV2D/MOAKhL +A8ipEPB9+1Cdwt1HKvTn61MMj0xUYwMnPFSgAiqFcmjbmrcecAiqQHT0q7D2qluQywuRzUyngZqH +nipFyOtaIgsKeuKkXgVEvepFJqiGTLn86XOcjvUe4ijcc5pomxIcgUjE0ZyDSjFWmQ0QOAaxtV0u +G8iZWXtW02CahcZ4q41HF3RnKCkjxfXNDl0+VyoJQnIrCxXteq6ZFdxsrr1zXl+uaJNYSsVBKE12 +pqorrc5mnF2Zh0UuDSVBQUUUUAJS0lFAhaKSloAKKKKACikpaAFBIOQa2LSTfGATwKxqvWLnJWri +7MiaujejxtB/lTn5Hv1qC3Z8balO5mwegrRWuc70BlDxFaxOILjrxnrW3sYD05rKvoGyXHrmqs2u +UItJ37mi6ieLjvXO3EfluRWlZ3K42OcHpTL62LncvJPTFSveTRa9yfqZ8AYtlcZVS3PoK2oJRPDn +jPSsa5tbmylaG4QpIACVPvU1ncGJsE/Kaz+F3NZxUkOmDwS5XgE1bbE8Gc0tzF5kYdf1qpayOp8s +mtXo1IxT5o+aEtmMM2Ohz0roUJkTr2rnrlSjA1qabcmRNpOMHFJ2TKa5o3Gajb7gWIH1rDIKNg11 +s6bl9a5y/g8tyR0ptc0dCaUrPlLtjMWTGenWru/t3rEsZSkgHatd2VV3/lWceyKqKzIbqfy0xnnr +WLJIZGyaluZmlckmq9KTNIRsgrVsNQe3UIvFZVTxDkHnrUOKlozaMuVna2FzcTWjnJ5zWHfX88cp +wxGOa3PDsbPbHPSsbxBaiGUkfWlCCNZVGmSwahP9kJLdDWVLqVx5hwxqW3z9mkHvms5x8545zQoI +l1ZJm/pN1dOXbcTtUmpX12aJsN+IqXRbXZb5YHLA1gap8szAeprP2abZbqtLU6CLULO9ba6jmo7r +RLK4UmI7W56VhWEjK5kJ+6OTUx1OeN8hj16UJTjsxNQmuxXvNMuLRjkZX1qjXUWd+t6RDKuc1Dfa +KrAyQ+vStIyUtHozKcHHzOdoAzT5IniYqwwRTKpqxBPbttcGvRdClVok9cV5tGSrCuy8PX4GEJrn +rdzroaqx24NVLnI5FSRSK4BBqC5fP1rJy0OmO42Nm4FXEJIAx6VQjPIJPery5BrFGzJ1XNS7eOKj +i5qwq5HNUQxoXoacYyAPQinqBmgkHOam4rlZ1APtUTYFTyAdc8VCewokuhSI8ZzSMmfyqbavT9Kd +s4pWbQ7lTywTxSGDdVkpjjvS7RkH2qUu4zPa3waY1uD29K0tmc55ppi44FDsFzHktf7o6VUe0Izx +2roDDkcCoXt+CaVtBpnPNBIAPyqFlmGeoroGtwage0BHA5qUu5fMYhebHJ9eaYbiUZrXks16Ac81 +VaxxkCnyIOYoG9ZODTBqLAnnvVmSwJJyvSq0mnnOcUKMR3QHUm9aT+0m7mojYOATihdPkIJ9qpwi +F0SfbyWz2NKL1ucHrUf2F8k4I6/hU0dlgkEHHak1ECNrmRu/eozPIw7+1aKacWAOOcVINNHcdTTS +XUm6MR2kOfzqICR2x3zXRnTFwQBTf7LKnOOnNWhXRlQWbOehxWxbWKkgEVetrVQORWhHboMYFJsk +baWqKMYHFaUUCelMhj2irUfFFyWM8kVIiccU/HGfakU9qd7AKBjg0MgA5pTgUjEcfhQ2Mj20bcEC +nYHUU3qefSou9hjWAx9aAuAKdxkCg8HHah9wGjqPSn5HegLk0pGR1peoAOnFOHbNNxTqBB7UHP6U +nGaRiKEwFHTnik3YpMkgUpII/Gi6sA3JyaQj06UtBqQIm5GMdKjYVMSOlMPehbagVyvOeKruu6rL +K3rxUbLip3AqOvY9Koyx5B71pSJk1EYR6ULTYDEks95yaYbEAZxW75I6daY0IPaq5mtwZz72hbPH +FVhbcke/Wt+RAO1QLa8DjGaFLQq5ivbspYDOO9SwW5GOeta/2RSDlakS0TsKbkJMqRQNgCp1t/Xm +rkcAwKsLGuOlZ8zuNspLbA8n61MsO3HcVaCc+3FPCjuKm7eoFdYR3pwhXtVhFAzR5YGe1MRVMRI9 +MVm3dsrZPXrW2E6iq00OaqO5Mjz7VLUo5PrWORXb6xaKUYgVxkyFGI9zXpUJXVjhrxV7oioooroO +YKKKKAHxuVIrp9C1JkkUZwM1ytW7WZo3U57g8VjWhzRN6E7OzPZ9On81QR6CthORk1xfhy/Esarm +uxhcMo5rig+50yVmTgU4KKReaXn1qnexNxMCmYwPepuMUwrSsNMjwfwpuM5OalwBSMOlKxVyq4O4 +EU1hnmrDgVEw6fypbDvcZjpjrTsk8+1AHIFKfSp9ShjjofzqLIHQVOTx0qEjrmi+g0AzzzRnjApQ +F4zTSOaQxNwH170hOaD7U00thi00kfpSFx15oJzmm9QGNnoKTr7UE803OMVF1cpAyg4puCO9O3AY +pMg4NF76gKc4/lSHNO7YpSuQRRuwuRhSetPCjr3HFJjoad0p2FcTmjjr60u4c4qNmxz70DHdcZpu +4imFzzUZlGKh7jJt3FMLnGKh8wHnpTGcninzXDYcz9ajZ2PFQvI5YAHtTHlK49cc1Nhj2kJJFQSS +c5FBYsentTVXPPrxVX1APmJxUiqCOKckR69qkXA74p21FcAmOR1qTAxznOKFwuc+lM3800SISB9c +UwE59qUuuTmmH8hVX3AVnP8ADUBc8+5pGlC5GTVeSUYFQ52Gk2SSSEjFVny2STQXHaoHlJP1rGUm +2axgSKnqc1XnVFNTDHrUc3SiD1KaK5Cggiph0wMAEVCDz6ip1K4GeATWkkCBVJx65pwjc5xxQAue +DU8fPFYybRVyERuOM/jUi+YB071Y2/KQB1piggYqOa4xEZsfXrTt4544pyLnP6GnxwGUyAMo2ozD +PfHamld6EuwxGGQDwDTHZM4HTsadg9cfWoWAyQTSGkQuqZ9KjAHQ9BVhkVh1/CovKyDg1omkMjwR +gDvmlHmfUVJ5TcZ9OvrTwjKPbNNyAYuehp7YIA96Crg8A4IqMlsH60r6hYkCqOv0pCI6VULDJ4zk +ZqPCLnPpT5mTykipGOT9admPnHTtULAsAwOB0pAr0+ZhyEhYKMDtTZJgwIqSNC454pJLdev8qjnT +epSikVSFwetUp+px6VptECOKo3KY7VvSkmxtaGVJioG6nmrUisetVZOK9GDOKtcbtUjINIUfinJk +1ZVwnBqm7GCjzIqrGwIJq99pMceAecVGSrHtQyrtJ6Y4FS7S3FbkESVsg/SrKsO9UUyrKSBxg4NW +A+FzUTidVGba1NSzYI+D0BFbBulTG3muftWXgk/StATIBjIrhq07y1OlM2be6L8nj2q8krEjHI45 +rAgugOtaltcsWH92uV07PQT1Nj5gAeaiZifxqwoJVfemunAY44rRx00ME9Sm2TnPpUDbe+OKtuoA ++neqUgyTk8A1MtdjSI3eg4pwcnimp5QOeCRnrTxt6/nWba3LHK2RjoafuOAKjLccUHccY7dKaVxM +d82eD3p6ZXjOcmotr4zmnRBt59KrdiLLBQPeoPLQ4yelPlDYPaoUD88/SlJO9gRL8i/X1pwC9Kg2 +OTyetKPMBI9qlR1GyxwOARxUQHJBqNmen7SQSGp8ruCNC0fy1kx3Ur+deW+JiTqB/wCuMf8AKvSY +PM2lRySwP4DNea+JM/2kxPP7uPj8K9XAN3fp/kebjtl6/oz3v4v8eGoj/wBPsf8A6C1fOk3Bbivo +r4wf8i3F/wBfsf8A6C1fO02cuCK9KW0f66nDHqV6KKKQBRRRQAUUUUAHHeiikoAWiikoAWiiigAp +KKWgAooooAKKKKACilpKQCirca2scazORIxJAi5HI/vH0+n6VUFOFJlxLM19fTL5bzP5fH7sHCjH +oo4/Sq/NFAFIoKWk9KWgYU6mg07ikNC54pKSkJNAx2RTTS0hzQJh1/KjGDSUvamIKM0lNoFew/ij +60nFGaAuLjnNANJnPNGaB3JMd6tWwG4ZqopzV63z0A/Ksqmx0UbNmlD6/wA6trkkYNVYVyFq5Htz +3zXny3O5LQlBPSrKZ6Z6cVXGC1TIqgnBpNAWo8gD61OgJ61WVug5qwh7k1PQlolGOvrUkYIySM5p +q8jNSdPlHfrQFyVAAP0qRRgHP4VFyenapQeMU9LEkqHJ54qzCR17VUJ281ZjyQB0q46ksuAgmpAO +PWoUxx+tToO+au1jMlX609TUQIzxUgNWnqSyX07ZpRim5zijuRTXckeM80ufWm59Ka1MQpqIjGac +R1x1pp70xEMmCKx9R023ukZXXINbJXPWopAD2rSE2ndETgpKx5Jr3h97JjJEp2H9K5wjBxXtN/Zx +ToyuoNea69oj2cjPGvyH0rsjJVF5nK04OzMClZi23OOBjgUEEcGkqRhRRRQAUUUUCCjJHTijJooA +KKKKACpYJPLfOcelRUUwOhglyFI7+tW9wyCew5rJ06cEBWNaipkH07Vonoc0lZ6lhfaoriFGUjFM +hdgSCc1YJJ6j2q07MiUTl7hWikOOvrWhaSiZMN1FM1C353D/APVVK2laB+elKas7o1j78LdSS/hf +zGkLFmZiST1NUgSORW9JGtxFnHPNYkqFGI9KJWkuZDpSfws1bObfGB1wKq3CeW5YDGc03T3xKFJw +CavXiBo8jrjmlB9GKa5ZXKUx3oCTzS2Mxjk29ATUan5SpqDcyvn8aUtrFxWrR1gbzFHPbrVG9tfN +jJH3h2qTT5xIi/hVx0zmqhI55RszkcGJ/TBq1LdZQKDUuo24Q7h3rMqZrldzeDU1cU88mkoorM1H +KCxwOtWIlYYqxo8PnT7Sucgir09l5LspXvxTVrFWOu8MxA2oHrVTxNp+5fMx061qeFFBh29DWjq9 +kZonBGeKmGmo5/FY8xhVvLmHeo7S1ee6RcZ+bJrUls2heUAdjxWt4a00NL5rrTl7o/M1orGOC3QA +chOtef60p+0PgfxGvV7uNFQgeleZ61CXvCoHVqpWszNXZmxqY4Ce7GqoDSOAOvStG4jYYjA4Vava +HpJkkEsifL1GazvbU0sP0yz8iJnb7+0mo/7VMUm3queRXReI7iI20YWJEdUKlkGNw7ZFcC3nTSNt +BY+3bnFS4J6lqdkdFc2dtqMPnRAeZjOBXNTRPC7KwOQa1tHuJVfGTt71d1OzivE8yLG4elEJW92Q +pwVuaJzFXrO7aBlwelVJI2jYqw5BpoJFVKN9GRCbi7o7rT9aDLtY9cmtNrkSAEMDXnMVw6EYPSti +z1RhgM3oK46lOS2PQp1YyOzgkBGa0YmLCucs7xXwAcVt28hOKx0Rs7mmmTVlADVNJMVYRwad0Qyf +pn6UztjNAJxTW60xET5qNRnnvT3YZ/CmKRnOalNJlq5KoBxT8cD0pqnH0NSArVgMKjIpcA04jNKu +KQDNuOtBFTcHFIUPbgUmrPQSZEUHP0qJ0B/Op2HOKYVFTa5SKjx+lMCd6u+Xnk+lMMPejpoUUmiH +YfnUTQ8/WtAxkdRxSeUp4pWHczTbDHv61G1opH4itYwjv6UhjA7UJCbMn7GMYx2pBZAD61reX0wO +tHlDHI7UaAZgsU59TS/ZAMDbWiIwBxSmMZH0pJdRXKS24Cj14qQW6ce1WQuccelSeXx6U9FsIp+R +7U4wLirRUCm46VXoBWEQQ4xUyHH508rz60gTrStZjJgQe9SKR2qoCw6VIr8gHvQ2Kxb3Z49KbuUV +CX64oBGeaTY0ifcaQ9KQAcc07OelNMBV9+1LgKD3zSbec1Jxjn8qXmhDSoxxzSEHOe9PzS+xo2AR +VOM00qV4qYDimN34oYrkeOxoBPINKc/rTeeppNoYE0gyQc0cnOaTOOhzSvroAZ7UZOaaeoo70nuM +c/QijJxzxigZpflwT14polkeAeaQjH61Ljg0zGRR1AiK4qJgM81YIJqMrjFTK9horuo49qbs7elW +Si+nWkK4zTWgMrFDUbIen5VZxn8aYwySPSpsMpGNTkHv0pFi6dcetWigOB705U7dqIbiZXEXXinC +JeParO3k0uw8UbgQlNv5UqjPOaeU7j8KNuMjvSY0hAnGaco9aeqkcinBSM+9K1gI8cj8qVhT9p/K +l47imojYwDn0pjIOalXOTQVP51aRMjD1KDfE+AM815/qULJI31r067iypHrXDa5bhWOB36V0UZO5 +z1I3VjmaKcwwTTa7zz2FFFFMApyHBFNopMadmdf4bv8Ay5FUnGcCvS7CdXUc9a8V064MUqnPcV6h +od4ksac9hXn1YuMjvi+eNzrVyaeMHioIXyBzUy44NC8yR2OxpQODQCKcO+aAGYHTrSN0NSc9RUZB +FDAgbvTDmpzg5qI+3WpKRFjHNJ1pcNiom+XpzUs0HEnkU0nOKaXH4nmmluMipe5Vhc4JoJ5wKjzk +il980rjsOyaQ4BBBpp9c0m7sabEI/fFMz+dPbH4VFyM1NhinP401uORnpQCQaXPXJzStdlDe3NLg +UDjjtzSkfjSe2gEi+9LtA6mmD2pd3TPNaLzEBX8qaSKcOck1XdgcqDjBxUvTYQjMMkA0hJxk1ECN +qkDkDNDSgg1mywLjnvULMT3oZwD/ADqu8mD169adx6Dy5XqfcUzzznHvUO4lvpTSp46jnJpJDJN5 +Y5oZS2TSqmBu5qZApziqsS2RBMYBqZFXPApyqCxB70o+U/pVJInVikMMUny8+tBLZ560zcOe1IYM +x6HjmmHCnOaWRkAyT1qlNOBwvak5WBK5bLJyfaqU1wOmeRxio/OZs/Sq+S0pHas+a5aj3JmkLHk5 +ppH146UuMcUpzwe1RJ3NFYikBAzUXlliD2q2ygj6U1Ru49PSpUrIsgA7dOaVl+Uk9hzUxUc4qNl+ +Vu9WnqSymFB71MIhgc03bg9ufWpMEj9KuV7XEmSCPAFPQHOB1pFViKlVNuCfXmspO6GIQw55p+Dx +jrS7iDgCly4K5rO1nYdxVBB9qU4yM8U8EcDGBQWXPrRsIeojwfyquyR7sdTUowRj1qMAZx78VXQW +xG8akc5x6VEIBnrj2q75O7BzUbQndkcUX8xpjBbluhppiZfzwKsruANMfdzxSHdkQB79PSmvtGeP +zqQF+46dKQZY88ZpbDRX4OF6fSkaFecdfWrRjX+GhYCfyoUn0KIDAQFA6AZ/OnxxH0q2kZwFIBx6 +09I2GSeKic3bcSIkjABzTZgD0FWOhFROhz7daiN27j0KbJjpx3qlcKp4rTkXAJ+tZs4JbNdNG7YN +ozpoFXHHBJ6VnywySMFRSSxAUeua3miQIGOMk1lXTSK3cMp4I7EV6NGepzVVdGerbOABmkZyeaay +80mD+tdlkcTbWg5XINOZ+Np6GmAc+nNPcFvwo0uS72Gxls8VZycVCiFSCanX5mxUTN6OiJrcbiBz +xzWgu3AXrmqkSqvXvVlWGPSuWerOtOyLEbICPyrRtrgAjHPNZSmPPy1ajmAICjnvWMo6jOnguTjn +HtUjzMR9c1kW0rHHervmtgAjpWLVlqZ21JuWB5qlJGckk8CpS0hBAqpJ57MQOmazauXEdsXGd3ap +Y2TpVXa4HPep4kbq3frUta7l9CwXjAI4zUiYbB6ZqMQoWySDUyxKBgVcUrGbaGvjGRSRZJ4qaRAF +BqKLjIp3XQXQWaUJxVUTPnPrU0x68f8A16gD4IJrKT1NIrQk8yTg4x70m9s5GakhkiY4Y44NPG3G +ccYq1YluxDlmHehC/IxjFTF41NCyKTgUOzYK5c07OJmPO2Jmry3xJ/yEpO/7uP8AlXq9rgJcAEZ8 +lsV5R4kOdSkPYomPyr1MD1X9dDzsb09f8z3v4wceG4ef+X2P/wBBavnaXq1fRHxhI/4RyH3vo/8A +0Fq+d5Rw2TzkV6M9l/XU4Y9SuaKUBSGycEDI96TikAufXsOKSiigAooooABjnP4UDg0lFABS0cc5 +ooAKKOKKACijjPNFABRSUtABRRRQAUUUUAKKdTadzUspBz1ooooKFPSiig0hhSim5paATHnjim9u +aXNNNIpsUcUE+3FJkUmaZLegvWik96cBwTmgSGmk+tBopiYZpabS0CuFLzSc0UBckXrV+29qz0yD +Wjajisaux14fc04xnBz0Aq2pKgVWiJK4q0o7dhXnyO9EyYOAalQEYI5qFOMf1qxHjHzdTU9BMlQc +59u9WFJ6+lQr0555qZSCRRsg1J024I7nrUnyqevXtUK9cA1JnNIROpA59alAxg1XXOMVOp4/WmhM +lAyKmjyKhBqZCSBVEMuLjp7VIlV0ORUyYxmtCCZetSgj8qhBBFSAjGfWqt1JJc9KM0zdS5HSnclo +kB96T60m7BpCWPOapCsLnqajP604Animt3xT1AjPXimvx+NOINRye1HqLqQOOtY+p2MVxG4ZeoNb +R7j2qpP0xWkJcrInFSR5HqunSWcrcfKTWbXpGs6Yl4jccivP7y1e1kKMO9dd1NXRyW5XZleiiikM +KKKKBBRRRQAUUUUAFFFFMCSGQxsCPWt+0mEigg9q5yr1hceW2Ceppp2JnG6NV38tww9auQvvUZ54 +zVKTZJGfwNOgfy3ZPMDbTtyvQ1re+xzW0JbmIMjYAHpXO3CGNzXUHLAj2NYmpQ7WyKu3NGzCm3GY +WU7MNpPAHSo72H5tw71VgbZIv1rZKJLHk88VnDTRl1E4vmRiREq+cdK2eXi298VnSKsIcfxBhjHX +862LJbN1GZmK+pXn8s4/Wi3Kyp+9G5izI8bByCFJIB7HFQvjORWrqyoSvl58tBhQf1/WsnjBokrD +g7q5f024EbhTnHat8yLtDeoziuRRyjA56c1qtfZiHzc4xUxYqkbjdSuVf5fQ1k1JJIXOSajOO1Kb +uXCPKgoFFKBkioNDofDMXmXQGO2a6XU9PBVJAOgrC8KjZdISOpr0CS2EibSM5qVJps1tsZPhZHjk +Kn1rqryIlD9KztNsxbzZA4Pet2VcxMDzxTi1dmdW/Mjhbqw/fScfeFbejWKxRKQMcVLLbAv7+vtW +jbLGkYHQ0KV2Oomo6FG9j4f0rz/Voc3Zb05r0G9bINcxd2LTSOR1PFJyXNZl04+6c9Yae95KCRnP +rXaR2cFtAihcHApNL09LdAWHQVLeSBVJ9qUtEJvmdkcX4mnHK/UVya+YxKqT8wwfcVs65M003Hcm +swL5Kkn7xprYUlrYkSf7Om1epHNWLLUGV/mJIz0rMZi2frUsEE7kFVOM0pQTHGbTsamr2kbKtxEO +oBNYddPBGZYDETyBXPXELRSMretVF3WpM42ehDUsRbIxSRxtIwUd63bDSS+wtxmpm0kXTi2w06WZ +WX611FpdMME9Kq2+lhMEjGOKtC2Zeg+lcU7PY9KD0szYimjdev1q5G2QOa55HkjxVyG9wOTisrlc +vY3A386RmB5qlFcZAOetWA+eKrmuRZiMR0603nFGRycfnTiCRgZp6MaBWIqZWGMmolXFTKhZCaRQ +HOetPX1NRZqRaL6CZMAKBnp70wMf1p2c4NG5NhpGMe9JtzTjmlXjg00MQJnn2pNh/GpRgfnRx+tJ +aBcjKetN8v09anIzQAMke9NhcqsnPFNKk9fyq3sNNK44pWQXKpBFJtzzU5HU4pNvWotqURFeP6U3 +bntUxpvGKoQgXtRjsfWjP5mmk5xnrQ2OwuB+HpSHFHWkx1xVPRCsHHFMcfN704g9utHNRuNDCM/W +k70/gHHekxS16gCkGnng0BCOR+NO29DRYYq545qVeM/SowuKlUc5H40gY9RwDS8fiBQB8oxSjHWn +sSLk8CnZXjNRnNKOop3aegh+ep7U1u1FNY4PrRuIRiFNNyMEClPPFMPB56VLKQAGkpT/AHsUZ7mk +hibcUvalwSPwzSgZwDTTsIZg5PpTlBpcHOKDxQA4Y/OmkYpynJx3pCT3oTQiM4pGAP40/jpTG9Pr +SGMIDcUmByKdz2pwHbvT3Ag2g5x2phWrOODUZBPHaoauxogCbjmpAg6+9PCc0oBqkBGVU/hTipzg +dM0uDzTsCkloBEyjHFNCjOTU+B+VBQYp2GRgd88U5sAU7aMUY4oENHpS4H6UpAx/OgAVSXcBigAn +8accY5/CnhVprLxSWgnqUp1zmuR12LIPqa7OdSencCub1eL5W7mqi9dCGeezoFcgHPuKiq3eqVkb +PrVSvTg7o82orSCgbecnHBooqiAooooAfG21ga7fwvekMqE964ZTg5rd0S6EUoye9c+IjeNzpw8u +h7DZyBlHParwPvmue0q7EiKc1uxuDiuVPQ2ZOvapOO1Rqfwp4OM09yR3QZppxzS7qYTQxoayg1E4 +GeKmbGOKrNmpZS1GMwFQnHP0qUnp7VE2cE1LNURMB/Km5OKkJHHrUTDJzUsoZ3p+Rn3pn40ceucU +noMcxxgetMOBQzc8+lNLVIDifWkIBOaZuPPpzTgRimkA046Gl2gnr2oxuOaeKdugiIrg05c9e1Ob +FNVx0pW1HceCMUwkAn3o3DqKYzY5/GjoCHb8DNV5NhxkU15ADjP0qGSQ9OMVN2Ow4yDp09KrSP1I +4pjSfyqNixHBpK5Wgpd89c5prKR1pyr/APWqXy+MkciqSE2QorcDAqfy+Qaei45PbtRuAP1p7Et6 +jwo2gCk5Qn60iyDvTGkGQPajR7gO3jIx70hb8MVGzhSDnrSNIgTLkAMDs9SR/SmA4y4zuPPrULSp +gnOearPMxOM1Fk9feuaU3fQ1UO5M7Meh/CqzFqmJOKYVbaG7FsVPMyuUiLABufwqWCNiu49arNGS +4+tX4wduPbAobstB2IwgNSbR0xznNLypxmnDA49aT2DqMZOKg2lc46DtVpz6VAcButSnoNCAHaM0 +mcEA88/nTmPTpRtJII/KqQynKMNz3qSMKeB1qSePcS3pimR8E84NbaNaEE44HrxT1Q9aRVX9KnTt +j9axasxiiM5LAU4KMcjnHepUFK5/hx0qb3FciC8cdaesSHk9aeuMdKQMvTBoYhrRRjp61GI485Pr +VhwGUcVFsUnrTuAjAkfKcVEscn96rG1Cp56CoJMjlTUuS6FIQhk601XbvyKMk9+c1JtPBqblsQvu +wFFOCgjp9aaCA3NWY3iI5okhbEDqCQcUAFcjvVtRC1O8iPOaEuZXuTzFdIpDmpfLcCn7WU8U/a6j +JNChcHIrkEA8dDUEhJ6CrLkZxnrUDnHFXCCWgNkW1XU76zLwEEgDjrWrkYIxwapXUe7kVrBe9YLm +cF3LzWdPERntW2kYzjtTbqCM8d/Wt4T5XcW+hzTRcH1FR+Wev1wa2Z7JhzVFoHHUV1wq3RjKmrlU +REHmn7BtBq0sLkHgfWl8rJHFN1CVTKvlFj6YqSKLkZ6Zq15IXinAImPUEVDqdjSELEiLGo56+tPI +jBJpoZG5PpzUgWLHJzWWpoOAj/CrEQjzx94VAEB4FWI1UYGevFRuIuwyBcAVYafsetVk2r05xxUm +Y24b161jKILUc10ADTPtJ3ZA7UjCMDHAqIH0/Gs5RS2LRI0zNxiniSTFQZYdutShpMDC1m49iyxG +X3Lljj0rRRcgc9qyozLu5zWikkmBx2rSN7XMp7ks8fyfeqCJevU0s0jlcnpUcZJXg9qT30Eth0wT +BqoqKDkk0+43jHNV/wB4TUamkVoW0jjBB9asqsfTpVWJM7TnpUhUAEFuaFcTFlELLjPzZ/SmJ5eQ +BzzUDDkgt9KlgjYt1pq7Hsjcs4gyynuImNeTeJeNSlHYJH/KvWLbKxzgNyYWxXkviLnUZc8/JH/K +vVwD3/rseVjL6f13Pe/jDz4cgH/T9H/6C1fO8w5P1zX0P8YiP+Edt8/8/wAn/oLV87T4ya9KXQ4o +9SGiiikAUUUUAFFGe1JQAUUtJQAtJRRQAUtJS0AFFFFABRRRQAUUUUAFFLxgevrSUAAp3b+dNpwy +KQ0FANFJQMXPanZpvel60hph3oyab3pee9AXHGk/lRmkoBsXI7UmaTNJTsK47NGTgUlFArhRmkoo +ELRSUUDHxyyRMGQ4P86WSTzGL7VXPZRgVHRQFyRMEitS1AwKy0PIrXtSMDHauetsdmGNCI1aQk9O +5qtFxweeatR5IwO/NcLZ3j0wDzzjNToSeMZ7jFQ4IH41Om71AxUN6gSo2B+VThsY/SoF54PrmpgN +xz2FK+uoaFiPhc96fwQCM0yPhc96eDnijoIlQE7RU4NRLknI707OCc9aHuSWAAefWnru6dqiVvXp +2qRfbirViS0p/Kp0/H0qtEeMnt0qdD781aM2Trinrx9Kj47U/PaqRI4kdu9Ln0pnelyO3NNdxDs8 +cdaNx79qbSetO2gE2c96YxxwKAwpOvIqvQkWTbtGOveq5YVPJs2D1qucEZpq/ULEbkDmqs7DOasS +H0qpLQwsUphkc964zxFZDl1HPNdpMeOe1YeqQiVGB71rTnyswqQujzwjFFT3cRilZfeoK6TAKAaK +KACiiigQUUUUAFFFFABSqdpBpKKANa0m3KB+FTgqr56AjFY0UjRnIrREodRjHY4rSLvoYzjZ3NhG +BAIOKpahGZF+nNJbyHHJ/OrEo3jHFaRetjKatqc2cqfetSyuFZdp6iqV3CyMSagjkZCCDUTVmbq0 +4mrdQLJzVizHlqA3ao7aUSqpbtVjGO9VdSRi7rQS9WN42xzxWCw2uy5yM1vuoK4PFYt1HsfPaiWq +HT0disepoyfWhsZ+tJWT3OlBRRR2x70gCpraIzSog6kioa0tFRWvIs/3hUt2KSuzptIsmgnU4OCR +XokUZMKnuV5rnobRflcDoQc1vW0jBAD2AFRKVmaWbSsSxIVPTvV8j5QTyBVaMEjJ4NWv4MZ7VVPc +zqsy5toYYPRefzNMDNjOOKfcjBz6ZqulyFypHFZyVpam6d4kMzBuvrTI7fPz44qUBZm4q0V8pOKq +EE3cipUsrIqysY1x0rG1CRjE/wBDitCeRmJx61WeAyKQRmlUlqOlBpHEy2MjkuwJJ6VW/se8lJ4r +uxZRjHFSLaqMYWmp2KcbnIWnhzbgv161fuLO3tIicAYFdL9n2LvIwa5DxFfqMxhulK8nuSuUykvv +LuOOR0NGpWwl2yKODWOshMgJyea6e0H2i0XPJHFP4ZXH8aKuk6fvdSfauwtbJUA4xiqOk2yr2roA +uFFZS943irEWxQuMe9RsoGRxT2kxx70zkgVzvexukV5EGfcCqrqByCR6itDYcn3qJo1yfes7I0Ts +QQ3TJtB7Vox3QYA55zWW8OG9jTRK6HHpU2adymlI3klBqwGFYUd0VxmtKK4VgvvirU7EcpoqM1Io +GOtV4JRVjcOaq90Ibsw1ShaaDmpV9c8UgbGFTShe1L3p46UCuR+WTwKeBgU8FQeaDzmnZbhcYRn+ +tIcYzTj60cCk0A3IIBqRRzzzUZHp605S3agbJB/WmMKcTxTN3UH8KT0EhrrgVGalYAimY496CkVy +fSkGc08r60BOM07XKGNim4z0qXaQDQE4zStrYBgBpcDoetSbeKTbTERbSKTaxqU54pNpyfSk1qBE +y8gihRgk1KRnmkAAFFgD/CgUvOD6Uq46ip1GOUHg9qkULyajB/SpFyaYmP4K4pDnmlA/Gg+3agka +MmnjNN57dacM449aQMGwPwqNuSB6ipCc5pmBgetMQhA6j60hXOfSn44waDjGcUxkZGc5pB6VKVzS +beDxUsLhjj8KM4/CgE+tJx+dLzGAxnNJ0JNKD6dqU5NK9wEHXJ4zTTn8M0uf0prN6UBYDjFM2ntT +hg0o680egxNv6UhB4wKepBoIFMRHg9RSgcU4dRmkAGaelxjCvOabz+FSEY96bgdfxqdwEweeKTJ7 +1Jk00qT0/KmAhwRR0xzSj6UuM0kxiEUgzS9Ov40o60+txDcHNOwO1L+FB9KeghMZI7UjZp3NNbNH +qJkE3SsDVCuwjrW9cEgc1zGruwB+pov2JsmcZqeN5+tZlX79izn61Qr0qXwnn1viDFFFFaGQUUUu +KAEFWbeUxuDmoAKeg5xmpkroqLs7nc+HtUZdqE/ePWu+s5tyrg15FpTMrp7Yr0vSJt0aEnggVwSh +yyO3n5lc6JGJHXpUoaq6njjuKl7U+hI8ntSc45phbHFIzHHHapfcqw12I/GoWJxTnYmoi/Y1Ny0g +YjFRk5wD6UpNRljUaF2A+/ao24BpzNxTCcUikM3U0n2ofPWoxnpS2Yx5zmjHHXmgZAB60u0N+dLq +AgHNOC9fahwc03OPrVXAdml3YPrTMjp6UzzAKV0FhzNz6ioWYD2pS4OKgkde1KQIl8zimSS8darN +MOcGoJZH6Ckh2JXkBOB+dQM+Tgn6U0b2ODzT1gbOaOXQegwZY1MIxxT0iX8qeQBx71cbdSW9SEKK +lzgfhTSQPlPemFiAPShuwWuSlxTC2OtQvKoGc/hVZ5y/Soch2LRkXFQSSqTtBqEyFj70w5z+tQ6h +SiPMjHND4baF5wozTOexGaVT1z6day9o3dGiihoXkmnDIGacpK9eM80mWNZuRVhxAKYGM1FtG3B7 +GnsT+VNHQ+9CvsMZGpMoPbmrqDBOKhhHLGrP0pykQV36kmmAjsalfBye9RKoyCeR1ov0KQ+Rjj0z +UWSeOuOaldDjNR4J6ccU9BjWk3DnipI26ce9RGMnipgoAHrRpYBkpP8AOoUHzDHOR+tTvtP161XD +7WwK0jsQ9yeNZO/FWkBORmqqvvzzVmMNkD2pNjLKfd61EztuPH1pxLKD3pAcg1i1qCRJHLxyKUyx +5wR3qIDjjinogz83ehXYNJFkyRlQBVeQIRgcetSlo1xweKrSOCSQelDbEkOWNMfe6imm3GOvFMGG +OQelTiMsAu7FK5Ww2O1GM59xUpiGDjrQqSrxmmlZwc07SJvd7jPJbHSnqhAxt/Gms0y8HkVIsjhQ +NtFmUKiYycYpzZ605JMgEihnDe1VsieohyADmlDueKQhSV+lGAOO9NWExrL6Y5zzVOTPPfFXWBHu +KgZSQQB3qla4XKe9x3460jHIORnrT2j/ADqRI16H0q3uMqBeBxTRHuYZHWtAQgelNEYDrgZxVwl0 +IfkZtyGjOGB29qrrDHKMjg1vXkSTxYx0FZ0FvsUjHSqlKPLdBFt6MqfZowCOpqB4iPu4xWm6Ecmq +cuz5vQ1EZts05SoVUZzzxUZEffirB2DHGR6VF+6YnAxXRFsTBFQ9+O9PaNVPB4xSALnI6CnMqZBz +TcrE2FjiyT8/QZHvViJeQSc9eKrLnGAeetWYVUdeuRUNjLmUFOV4eg654qP5Scn0pGwhPsM1kwRM +WjB7HNIXQVACG5xmpDIhXOBwKzsVYeZT/dqVZ+igVB5ylelCEZBOBilYZehkJbG3pV8SKBg1lxuF +OQakFxt7UbPQhxuT3LBhxTYVfAI9armckgDGOKnWUgDmhIe2g2bfnLCoCrcDvUs0vUdwOKr+Y/Yc +1CZavYfvkX7p9qmw+3Jbk9qr+Y2ABS+Y3Ax3p6NhqDhs1LGZOBiozITx3qWCVc8ilyhc04GdFYn0 +2k/XivL/ABD/AMf7n+9HGR+Ven22JUnJz8kZf8BXmHiHH28/9cYv5V6mBVm/66o8zG7L+u57z8Y8 +f8I7bA/8/q/+gNXzvMRk4r6E+MzbdBsx2N6Dn6Ka+e5sZP1r0pdDz4vchooopDCiiigAAJIA6mlZ +WQlWBDA4IPUUnTkUrMzsWYlmJJJPc0AJRS7m2hewJI/GkoAKKKKACiiigAooooAKKKKACiiigAoo +ooAKWkopALRRRQMKXtSUUALRRuOCueODSUAFFFFABSUUUxD1ERRyXw4I2rjr680yigY70AFFFFAB +RRRQAUUUUASR4BrWtCRjPWsmPgite1wR71zV9jtwxoRAcHtVpF4qsgzjFWFPPB6Vwvc7kTL0Az1q +aMY6dar4/Kp0yBzUMZMmSQB3qyvA9s1Xj68cDipx1/GhWEyYMeMjpUi88n3qEc96kTAAB9DUrfUO +hZjxk/Sn9cEVGm386mTjr+VVHUl6EgAwOeaeASDUeW/OnrnrnrTZJPGQCOh9qsKQuPr0qqhFTpzV +rYhk4PFOyccVGCOhp49KokcX4pQw/Gmnjik6cVVwJBnP1oGKjB54p4x1ouKw/OOlJnt0NHy9etHH +WqENIzUJOOv5VKSB/hUL4JNUhELEnioJMDrU7jHNVpeST6VRLKM5x1rHvyME5xWtcMMGsK/k+U/Q +0dSWcjqQHm+vvVCrl+wMhx6mqdda2OV7hRRRTEFFAOP1ooEFFFFABRRRQAUAEkD3oooAKt2bnJUc +nBNVKcrspyPXOKYNXVjTZzGQ4HWr9tIJFHuKoIVljweaSOVoGx2OcVrvqjntf3WWb2BXX8e1YjqV +JFdAD5gHTmsy8t9pLDpVNc6FTfI7MgtpzEwHYnmtmN0IB65rnq0bKcZ2MTjtWKdmbTjfU02UdF71 +m3seBn8a0SQMEHjrVO7wUPr3rY509TJo4xQ2MnFJWLOsKKKKkArU0UH7TGw7EGsuug0GxmeRZBxz +3pMuG56ZaAPCpB/h5q1CQp/GoNJQGMKcdKuzQbQMVm43jcuErS5WO84dulWBdRKnJ7VjzzCIHmsm +5vppCQpwKlSaKlSTNi+voB/FWLcapCpxn1rPuJXKtvkOAelV3FtIyjqTzUyfNuzWCjHQ3rPVICV+ +b61py30TqNp6iuJaBQpaNiGJ6Co49Ru7RtshyKaco/CTKnCbOt3b2IH1qeFB0I4PNZNlepMFYHOc +VvxyIUC8ZqYyUndlT91WK5h549atQ2wA3sPemAkMD2zU802yPrW0Uluc9SctkYuvX62sLY615jeS +S3UrHk8112vTPOX3NwOlcpI6RZ29fWtLiUWkQR2wU7nx61s6XdRIwi7GsGSZ26k061maORW9xUTT +aLpyUWekaftXOMVpk/Iee1c5p1yCiHPBFbaShl61zp9zrRHxk5qSLmoGJB4qzCgI9Kyklc2Ww8IB +nHSkMWBz3qwE6c05k4qbW1C5nmHg/Wqzwgsa1PLwtV5YwAT3Pek0NMzZY/0NMWV4yOatvjkYqhKc +YqLFpmhbagehPGetacd2p5rkHmaM8VLFqEikBjxioaZTidjHcrgZqUXHBP5VzUOpK2MmrsV4rAc8 +U1IzcTaSfsakWQnHPWspbnn731qZbjBwT2pxYrGjv3U8P2rPE2cYqVJR3NVfqKxc3Z4pTjiqwlGR +zTw/TJp8wmiXgcU3OOlIWzmjnikAFifwoLfhTeegFN5zz61QyUMMe9JUe45zSg1L3GhDmnrjjimE +9/ypykGqvYYp6nNO2DAoz+dOBxj0pjExt+lNwMinN83PalwOtJvsBEV559abg5qVvSkxigRHjgim +7Tipghzkcg8UntUtCuRHOMU3JzU+Mio2BXpRbQLgoB71IM+tRZ/HNSA0hsk7cflTT7dzzQT0A/Gn +LznFAhq1JkfhTNppy0XBiE/hRz0zS4yetLgUANOelNzzinNn/GkxjBHpRYQfxd6XqPxpTzSc7TSa +Ab7diKQnAGKU0EA5oGIvUGkPqKAMCgnkfSlokAgzk0ueMUnbORQMjmjqMTgE+1Gc0vB6Ubcd6AEG +O1HOKcOmaOgp+gCd+KOpNKecUnJzS1EBI/I0n9adwRTfqelMY7AINIRQM9fakY8YNJO4Dc847UDI +zQPanrnpRuwEIBA96T1px6mkOaYCqKcQpGB1pgZs4qQgDrTSSJYzG05pGAIB6GpMVGxqiSpP3zXL +at3zXTXTbQea5XVZepJHFNJN3Fqc3dWRfLbeKyHjKEg9q6dZo2Rw3p0rFmi82QhR1NenTinHQ8yo +3ztMzwpJxVy00u8uziKMmuo0Hwo9yUeUcZzXpGleHLS3UYQDFacsVuZSn2PLbTwVqE5G4Yrcg+HT +uoLMeleqRafAmMKKtpboOgo9olshe8zyKT4cOoyrGse88Faha5IGcV7uYIz2qldWEMqnKiqVZPdC +95dTwe3s57OUCRTwePrXcaLL8oAIPSr2t6LGMlVx1NYNm72cgQ8DNYYiCaujroVOZWO1hfI61ZB4 +xmsq1nUqOevSrquCOvNeczqsTsfWmbjyM0124680wvxn1pFJAxI6VGxJ4pSSaZg9ce9SzRIbkjIz +Tc8etPwxppx0qShoxuNIcY+tBoytCAa2Of0phjH508jkelGCDjP0oYyPBAw3rQzbefSlJyTk9KYz +HmpQxS38qYX4B70hIqFiexpPuCHM+DUbOcdc1G0uDikJO3rkUkMRpeOvFMLsRnPSlK5zjHWm7W5H +vQkK5EQSc9qckYbrUgGeOuOtLgqM+vFXoIb5YUZqQHjrxTTnHXio3faPWkndASkgNSM4Gc+lVnnO +D6iq7TnqD6VPNYdrlmSUA4zVWW6YdPxqGRnYHn1Jqm7ZOCalyuy1Anadmzz24pYTnJzVcbssAema +mgOAxPUVnPY0UUTbueOxoGSSf501Tu61ImMHnvWewDQyqTnqDSgg5Pr1po5J9Caf8yrzU6DF6gc0 +8YOAaRgNinjJFIByD7UtAFcBu+MVGFPrT2PzD8qG+UDtmmr7BcmgGRmpypxn8Kjt/ugGpT0Jolrs +QtCBlGOT0zSRbCGFOmPynFQxBsE0vMvoPOPujt1qJsqRnpUuCOcYppTOe9WkIZjBz605sDn8qVRw +PY05hnuKWlx3KzEnpyQeKrHdvIPFWwmCQOM96hkTbIrZ46VpF9EJsnijVuOhxV6KFsZ6VFbBOCcc +1dDRkbRxSZLbG+Q5z83rUbQPHjv61ZBGOuBQVyAd3epauF2Visg425qdA5A45xzTlVt3Bq4kZwCc +U4xuxSloUT15XHNRmNCeV61pOgPT2ppTjFNxEpFHyovp3qVIgzKFODmpvKyelOWJeTmiMAciJotr +FWPzCnKOCDzUxRSPeowhycnApuNnfoJMgk6jjOaApIqVo1HQ5xSKp2jJpW6IdyPYVzil28HI4qQI +x96MNg57UN9gIhtzg8Z6U9kHFDKuM4pvmYpNtDEK8mmEd/apThuTTCFxT0FcrGJS3BoEQ9amx3NI +OuO3SrTuDuNK/MFzwacIhnOTS5/Xin5AFLdgRsoPGeKhaNFHFTs/HA5qtLMRkMv0qW7FRVypcFeg +z7VRkGT0q/K7NxtxVd8MMbeelXC26KbKTbOnbNNEcZNWpETIBHSmBI+eK6EyCv5atn5sU0xsMEH8 +an8pTnBo8oEjBochqxCiPkHNXIEwck4qLygOc1YSPaclql2uDd0She9MIyf607kjAPFRPuGeakES +AooAIpNsYJLHFRvKX27go2oF4HXHc+9OG0jAP0qbWZSJk8vHGakCJn1psfl8VZkQRELIMMVBx3FZ +6juEaxEgdBT2VAAtNQLn0p7FBg9aRI3ZEvOOtPAUj0ppkRiAB7VMuNp7007AyrKdpOBz2qEMeM9K +sTsu7pTBtAAI96zZa2GeYegHUU8Nnk9R0FSKA3QYxTlTrmqjoJ7kWVODj2xUq7eDigDH8PA5pcc0 +m7C3NCxYMl3nj/R3ry/Xyft7+nlxD/x0V6jY48m9z1+zOa8u8QbftzAAD91Fk/8AAa9TAO6+/wDQ +8/HdP67nu3xn/wCQDZn/AKfR/wCgmvnqXknNfQnxmP8AxI7Lrj7YM/8AfJr57myT+NelLoebDr/X +QioowelHNIoKKKB9M0AFFFFABRRRQAelXGNpcW8rLAIZYsNlSSrAnGMEnn8fwqnUsUqIk6MuRIgA +P90g5z/T8aEJkVFFFAwooooAKKKKACiiigAooooAKKKKAClpKKQC0UlLQMKSiigQtJRRQAUUUUAF +FFHvTAKKVgoYhW3AHg+tJQAUUUUAFFFFAEkfJHbmta1xwPpWRH1rUtsY4/OuetsduGNSPtzxirIH +PHSqkXGO+eKtLnH8q4JKx3IlXkZ5qcZOAOw61GpyFqRDgnmoZROqscD3xip14XFQKRgH3qQMBx9K +m9tWSSgE4wOtTIMYFRKWwMVMu6hsRInXIqVSetRKBgZ6mpBtHFO+giXBx1qQVGu3jJ5qVSvT3pkj +1PSpo25qAEfjSq/JA7VeqFYt7jkVIXHTP41VRjjNS9s1akrEtEu8fpRvHBqINj8aTPOfQ1W4rE4P +WnF+aiUkjIpetCAkz9aUkf8A1qjBP5Uox3NMkcehOM1C5Iqz5iCIqPvZqnIwOAaroIjdjyR3qrIx +GTUznnrVaU8c8jFNEtFCdgc1z2pONjeuK3brpwa5jVZQFI6VUdyJOyObuG3SN9aipWOST70ldaOR +7hRRxRTAKKKKBBRRRTA2dG1TRdNim+1aaLyaUhcuw2qvsMHmqGoSafLdTSWMTw2zHKI5yV/GqtFC +0B6hRRRQAUUUHHagCe3mKNj1q1KodQc89azqu2soIKHvVQlZmdSPVE9pcEHY3Y1cmjDqeck1mzoU +O9OOavWswkUA9R1qlpK5nNcyuZE8Zjcj3qNWKkEdRWjfRE5OBnNZx6+lKotbmtOV0a0FwZEyewAp +twRg+nNUIJWjbg8VNNKCCc9aUWRKFnoVG6mkoPJoqWbIKKSlpAOQZYfWvQdAtAkCN1BUV5/Hw65G +ORXqvhZYZrWMccCpklezLTsrm1Yoy4K1qS4ZD9KqKPKIAGRmlmuAIm55xTVluTK7d0Y16d7lR0Br +NmVkXcO3ars8gxk9zWZcymThTjpmspWvodUb2My68ws7A/e7VXheXgnOAK0HUsSB2zTUgkxyBSdr +WGrorZkIjAzx8zfSmyhJFJcYGcCrpRFYbhjNNaFeD27UJoHqZlvLPZTj5jsJrrrO5ZkDA1zlzbkq +So5FaGkTsU2Hr0qJxXxItO6szofNJpkru4xuNCLkA+1PWBnyfyppNsh2Ri3Omxz53c9zWZJ4bgOe +vIrsUs8g7uKU28CcswraLklqzGUonDN4WhPAzTG8O28YBJxjk11V9f2VupAYDHSuQ1PXSxKoc9aT +nK9kNU1uXRGsER2NkDpUtpqQyFY4x0rDs7ySeORWOTiqjXDpKDnHNY8rfqdMZJaHcJNvY+5FaMBB +AzXJabf+ZjJya6e1fd3rnlozotoaagYyKU4psbdDTyenpTJI2Hf0FVZFOfw5q6+0cmoCnBOPvdqT +2GmZ8sRPC1VeBifwrYEQzxR9m3Hn1pND5jnZLI55HvVVrN1yMda642i56VDLZKe1NxGps5MxyJ68 +VIk06qeTW9LZKRwvWq5sQNw2jkYqWlsVzmdHfSrjJOatJqQyCTioprHA6d6oPBKm7bnp0qfZ3Y04 +s3o9SXH3utWYr8HvXJASrjrnpTxPMvep5Gh2XQ7Fb1T37VZju145riBfyL3qQ6s6gYOMd6VpBypn +dJcKe9TCUEZJrhotcYADNaFvrasBlqfM0L2bOqEnvxQSSKyYNQSQdavRy7gCKakQ4tE3FAbIx6U0 +MDn1pu8DpV36gP3U4Y4/OowwP405TQUTf4Uuc9aapNKaGCAs2R7Gl3flTGFIrDvQMl3c/SlOOCKh +3gcU8E0mxWJADTtg4NMHepA2ABTWqIY0qBULevrUrEHrUT54waJCQz2pQM0/aMD1pQpqUWNFPXPa +lCc08KKdhNjeacOKUCl69aLWFcafftSADnFPIOKTigBCpxTehxUh9KZznjvQwExzQW4xQOtIeppd +AG9M0Z4oIxScZxU6jFwOAfxpCADwaOKRgT1poBD0x60wc5+tLg8+tGOefrSaATpwKfnK5o2nB96X +oRmhILiL3pTg4x1pQAOhyKXHeqtoK43ApOR9aU45oJ9aFoMOCOabmnHBpD25pWBMTJxQelA6/WkI +4x3oAAAccU4Z5pFHI9qcAO9FguN7/wBaQk/XNOI449aNpOab12C4An0qTqvHWmADqaU5p3ROog9K +hkIHucVIT/I1VuJNowKSYjPv58Kea43U7rJbNbeqXRGV7GuVmEkzEDnmt6MHNk1JKMSujSyPtXPJ +rs/D/h5ZWSSRSaoaBo3nSI7gkZ6V6npOnpBGgAr00lBWR5dSd2Lp+lxWwUKMYrbiiVRSxxKB0qVR +isnJshINtL0pxphqSwpCoI5pRTiKAMy9tElUgjrmuB1ywNuxYD6V6XIAa53XbISxscdjVp30Yo+7 +K5yGm3mfkPUV0MMmR9a5SWOGzkBSQsxIyMdPxrZsbneBzXFVhyyPRi7q6Nb3pvHr9Kbkn8qdxjNZ +NI0Q4GkLZHPrSgdKQgdanqNCGmEc5pzHFMLDFLcoRulRnH0o3A5qJ2H60pOyKSH/AFqRU3qSOwqm +ZAPrSecy5wTzS5gsSMRkio2YdfSq8k7Zx3pDID9e9QirEhkJz7VC7Pg96Tnr2NB6jtQJsaMkc/Sg +ccUpwOnOaRcgjFFkFxfagDH0NIcZGTSNJtGM+9VZdCbisQKb5wHDdutQtLk8HmoxuOCfxqbjsTPI +e3viqxkZmPpmp1Gcn0pPL2nHrUc3YditIPlLHIpi4I/CrEy4GP51WB2qcc1i20aLYbNx0qj1LE/S +rbsScn6VW6sT2pxv1NECfxelSxj5T+tMHTmnKcKBjGDQxkqYUVKgXbz1zTIx8hzUoXKVLRNxV5Ge +lKyEDPbFCgcflUjITgfSpcRXIOeAfxp564FOKncD+FCgFifbmlZFXIsgkL0pkxbgDpUhALEkcUyX +OQPSnFag2XID8g7cCpyBgVXj+VRng1MZD0xxSb1sQQuPXkUietEpGeaWPJHt/Kh32KWw125GfWmc +9frTpDnGOajcMB7UIfQTLEj0qUqSMjvUcTDr1xUu7pjrTdriv2G/PxxzUF5F8obuOasq/wA/1ouc +NGRjoPzq4e6yZFe1diu3r71pRg8Hr0rItXXnHrWmkhHNVJa7CVy2jg8YpH+XmolkUEEnkU9m3HIP +4VnJ3eoLQdGw3DBNXV7YNVY2QEZq0CpxVImQ8AHAz9aGUgA7qiwMls02SXAwOeKbaEkS+aACvWow +zFulV/M5qRWzjBpphaxaDAHkUpMJB9ahLEgc5pR0p69BWEdVJzSEDG3pSO/oOaj3nrWb0di1qPwD +3pwGFpiupHSlJWm7BqEikg4qILx81SnbjJpMLQBGQAKYSAPrUzKOKjYA8U7gQ/MelLkg5Jp+CAfT +tUbdRnnvTWisG447jjNL0HrR8oxzml+U80AMfzOwFVHV2OevXmrgZcHmoSIyAM1DsWiBlbge1QPu +3LgZGeatEJg4NV3U5yK0jZiZXkPU4pmOM4xmpSpIOMGkAIGSBitL9RJEWxcc9aNiDkHsKk+Xmm9D +04xRzDSHusTEbV24UA+59fxpyRr0JNM2g4NToeB60XutAeghCgHFR4GOetTOQMg5xjP41GD1yPSl +ewlqRNHHkZ6cVKFhUDH3qcChyBTwAM7gDSuUKqp1x+NSbfNOTknJOaATtxt5qVMgdOtJ3uIQL7Up +QkAYzUqbicEVKHHpzUOy1FdlRF2vkrnrxVsHAGV7Ui53DI71YcNt4qrKwru5QlVmyQvaowjDG5e1 +Wsyr0x3poMznkAVlY0TGruAGFqUqQM7c+tPHnA4wDT8kjGOaErLUm5XbOMqKkVFfqMcVJhyeB0qd +Iywxjmmo3E5WH26okN3tAOYiD9D1ryfxD/yEZf8ArnF/6CK9bQlYLk458sj868m8RjGoycYzHF/6 +CK9TAbP5/ocGM2R7j8aM/wBi2GO93/7Ka+fZepB9a+gfjQSNHsMcf6Uf/QTXz9LnPJzXoy2R50N5 +ev6IiooopFhRRRQAUUDGeemDSUAKTntiiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAWk +oooAKKKKACl4pKKQBRzRRTAKWkpaQCUUtFACUUUUwCiikoAWiiigCSLqK1IOMHpWVH1rUtz056Vz +1tjtw2xoxsCR2x2qwuSenA44qtHj8e1WlGSccd64GdyJUbpz2qYDOKr7CQCcVNHkDB55qGtCky0h +6DqBUuxWx+FQrnB4wTUqfliptoT1JU3ZFTruHU1DHjt6VLhjx3pLXQTJwBkdzUibOCfxqsvbPB61 +LuBI9adwaLK44ozg1GpwfpUq8nNN9kSSKcZPWnjB59abwaUYFWlYTJFbjkVITjjrwOlQZC7akU/i +aNRMcMnGaXPr0o4GM0DHar2QhVbging9Ki6d6cNwpq7BkpJHSm5Jz700HJNDEcYp3JaF3Y69ahZg +cmpGb5faoDgH1qr2JsMdgRiq0vOfpzUzk854qnPJgHmmrksz7ycrGy8cnOccjFcbq0xZiua6bUJP +lOeOa42/k3yEDtW1NNvUxm7RKdFFJXUcwtFFFAgooopgFGTz70UUgCiiigAooooAKKKKAClBIORS +UUwLkcokXa3bpTUkkt3yKrxttYH3q+yJImR2FVGz0ZlL3XckklWVD64rMcbTTwzIxGeKWTBBPpRr +sxxXK7ohoyaKKg0CnyzSztvkYs2MZplGOAfcigAoopWXaSMg4JGR3oAejM7ruJPQZPoK9A8LzNFH +hTmvP4lZ2AHUnpXcaBZzRIrNxkVnUubU7O6Z3Ud0vG41T1GePYxUckVEhyN2Kiux+6dvas4yZpyJ +GfJ+8RMtg+lRFNqFmwTjrS9FU4zxUEhZlcDNGpehWl8xU+Q5JP6VGHuy64yB3oeOY+W44wKvRSIF +UNjPNJtJaoevQhbe8bNIMckKfpToXO0AnkcVWuZ2VgEOQTwKZbyO24kn71T0GaGAdwNQaY0a3BUH +q1O81h1IINVLecR3Z+tUvhaFpc7u2ji25qfMSDPasu2ut6DFOkYlTzW6nZaHG4SctWOur0oGIrmd +S1W8wQmea15+UIB7GuT1Nb2PLL0qF75vGKgZV9cXsxO4k8ms0xzE8g81ZkvJQSG61H9tkqlddDOW +vUu6ZFMjHcCARVO8yshH6Vcsr9y+DVO/O6Zj+VC3G7pFrTbjZIuT3xXb2E6sq4rzmFirDB711mlX +RwoJ7Vy14a3OyhPmjY7OJhjrxVhe2frWZbTKygd8itBGXFZJo0ZKwXr6UznuODQxHNM3dPpRJgiR +QMVKAuBxmq+7JwKmRuh70gJMA9eKGjDU3JyKlA3E1WtrBYhaEEdO9QPbjJOKv7Sc+gpfL4HAo3EZ +L2oweKqS2CMp+X5j3rfMIPApjQg5yKEgucs+nLnheaqzaYc8DFda1uo/hqB7YZ5pPQpSZxzaW4yQ +KqyabNzwa7g26kZxTPsaEH5apWHzM4I2Nyhzt4qSK2uQen0rtG0+PP3RkU0aeox8oodilMyrKOdA +Mj0rcgDgAUqWyjBqwiDFZ2QOVxNzYxSjPftTyo/E0mP50NJIVxw7VIvXd68VEBT19DQFyYH8qU84 +9qYDwRTgTxSutmMUk9BSKD35pdvXNA44oaKuNCndz0xT+OooGTz25pSvTFC1FcUHijcMUnbFIece +opXZLEbPP8qF5pcDOTTh7UO4IUA8A0/HP4UwYzine9ICXgDFJx070wHNOJIWquTYU9Mjil71Gegx +3pR70X7ASDp9aQjBwKd2yaTjNHqIZg96AOCaVsZBpORQkMYRR607bxQBiiwXGYzSbRzmndPxoIGB +RYLkfJP4Uopw60uzNK2oEeMnI7UEH86m24pNppsLkIJzSj0FP29aTHOemKTXQBOc49KQ46UvTPNH +HegYntSYJpxBHGKDkc0ARnilbGR6CncdqQjk0SBMQdTRgmlFPK9KH5A2NC8Y6U4YAx1pDlTxS/L2 +6dKaaExuMdaXIJPpSHFIc84oCwHikJHFICeDTvvCp1AjZhWfdyYDVbmfaDisK9ueoJo1bBGLf7pX +Kj1rQ0rQY5drMuelZm9nmyf71dvohjYLivUoJRicGKm9kaGmaNHBggYrpoYwgAxUVogKirqrjFXK +VzkSHAUuaXimmoLHU1hQGHQ0A5pAOUU4ikFOxxQBEV71Qvow0bDHatEnFVLnBRvpVRdmJnmGtwlJ +n2+tTaUTt9+Ks6+nzsfUmq2mA449ayrnbQ+E20zxkVLgjBpqAY5607JArlbsdCHcimOQOfWjeMjk +DOOaryyD1qH5DRKW3CoJHXGAelRmbGOaikYY7VDkWkOaQ5xzUbyVA0h6/WmF2YfgalJlj3fJqPe2 +Pfmhj09+tISCMZ5oYrgwJ2mjAz6UZH+FNDYzmi1gH56/zoz3PfNMDDuetQtKMk9BRfuImyoprSKu +R3qnJOO3So1djksalz5R8ty40+48cYqu0pzzng00sQetNJ+YZ9ahzGok33iTUijGKhU5wc1YTvU3 +00GydQAPakbJJIwOaiL8Y+tIWb8+KGybDZuc8VUIOD7ZqYsTgEc5oKnrz71HmaIpSYHTmoF4B/Gr +TgDcfeoFxjp3oT00NEIo4JNS8bQcYB7CmEcfSnsQFA9eaNxskQAKPYVOvyr7GoBwoqbIwB7VF9SW +O3qAFNKZlBwKqtuaTr+FSAYbOKG+gWLashAzTMLltvemR5JPrRyMk8ClqkK2o/Aznr60NEpYHg8i +okkPPenxOxcA5I71UXqKSdiyy4A7Y4pAvt70rE5wRxmlZx90elOTsyVcrSjHPXJpVOF5qQhTxwaT +jnPNS7F3GAKT3+lKdpBzxTyFIz3qIsoABxzwKHYLjFCZ4FPweT2puBwc4pA+CeeDTvd6h6C4YnI6 +U+U5jbIpN6gEUM45HqOKE9QZn2pVXYe9a8IBAJrEwY58jue1bMR6Y71tPa5KLDKmRnpUZcLjH5Ur +A9ORioCGznrjNc7b2KUUTxNuJ9O1TF2AJ6VBCrnHtVgoSvTNOzsDauQG4I5zyeKY0jnoeTTmh3E8 +c00RFOecGjlkNWHKZOlS75QSSuKjQKvWkkeQgBTTTJauyeOZySCOPWpTPgAdxUMcZKjcec0/Y2/A +xjNNxJ0BpNxz+lR/PnJ/CrBCjnANSKIyOQKainowvYrx4FPwSfvdKe5jQfdqPKk5Ao0tYLjtp/Sg +Kfy6UpdQFz1zQuM8Gi1wA5waaOPxpJFPXdUXckGqdwSHtjI461ESOw7UpJbOOvSm7G4z1qL3ZVhQ +cc+1IHINNKsAc9c0wKSOvPWr1uGhKcYOB1qFgMHinfvB/F+dV5DKTuznPes29SkhzBAM1Aw4PpTv +3v59KY2/OMc1qmKwm3g4PU0hDAAg5oDgnG2kLBj17VV7itYYd5P1pQ30pq4yQGxTlGASGA96SGwJ +9BVmM8cjn1qFNpwc5qZFPX0qntoSxsjHrjH9KiZjwAamnPVe9RRoGFJvoEdhoL5HpUylsjjmgBR8 +oPQ1NCUznOam42Kizbs1ZwwOR60RmLIyas4gxnNFla5LZWJlH5U1fNbgkDvVhxERkNTEWL+9Ssug +JjV8xWHNTyMwXO4ciowkLHGenNFwVVevSk72H1IlkZjjIp53YzuqnE8atk8CrZkhIHBrOLLaHIZe +Pm9qezED71NV4fvHjFDNEfmqna1iSeIHru71aUtgc9KpxlODmrkYB6H61UexEiZQxt7w9xETXkfi +Fp5dSeLlsLEqqPUqOlevI22G7Gf+WTH9DXj2vsRqc7A4IWLB/wCAivTwS3/rscOL6HuHxq/5BGnD +/p6b/wBBrwCYYavfvjVn+ydN/wCvl/8A0GvAZetehLaPp+p58N5ev6IiooopFhRRRQAUUUUAFJRS +0AFFJS0AFHNJS0AFFFFABRRRQAUUfpSUALRRRQAUUUGgAooooAKKKKACiiigAooooAKKKKQC0UlL +xQMSiiigQUUUUwCiiigCSPqK0rdgAazY8ZrQgJJrCqdmG2NGI4HvVoEgA1SjJHGKsxbjwTxgVwyR +3Isg4xnn29amQLkZPpmoFPTvU6kcD3rNlFhcDGDkGpQN2MdKhXIJz19KlTjj3pMSJ06/hU67hVNS +Rx3zV2IwGOTzCwlG0pjofXNSk2DHAHHvUoVahTnvmnq3INAmScADFSoefaogwzjvTwcDrmqs7kk3 +J5HpTgTUaf06UfMaWtwJs54NPz0qJeOp6VIG5wau1nqIkpx6cdajyMZFOycetUmmSx3B60mcn8aT +JxSZ/wDr07gSA4+lMZqQnn1phOORRvoFgZ+Kj3Hk0jElc1EzrxT03ExJHAyazp5epFWp24NY91Ky +g59atPsZ2MvVLjaHJbt0rlJWLMT6mtXVJ92efWseuyktLnJVd3YSlo4x70VqZBRRSUALRRRQAUUU +UCEpaKKACikooAWiijBOfbrQAcUUcYAxzk80UAFW7eQkbSeM1UqWJwpNApK6CbhsilLDaQepHFE2 +Dg1DVy3uKKugoooqCgopKWgAoopSQQuFxgYPvTA1dCtjPdqP7vNem2WntsAA5xmvLtIvfsc6yZ71 +6RpXiG3lVRuGT61jKdpao2UZON4m3Fp77Rmi5sMoR7GpYtSjYAVO1yjIR61pGUG7mUnVRxk0MkZc +HjBOKqNKwkVT3Brd1FU3k9Aaw5Y0U5HAFRNK+h0QbktRj5UFT371SkEqyIQTtGBmriTxNndjrhRT +ZYd2CjcVlc1KQhZN5JznpUkS7EAzjcetB3pklsnsKY7k/IT2yDTVwJicD5vwNULdt1zx61M8kkUT +Z54OKfplpI7GTHBNNRdmTezOhtHCjrV3BfAHeqKKFVRjkE8+tXIJ9hB64qE7bhJPdCtayYPy/WqF +zah1IZOtbR1CBQASATVWW/suQWGea1bgjJOfVHF3+gb9zxjDdxXNz2lxAxV1I969JmubJwwVxWHq +AtJvvYPWqVWOzE6T3RyVnnzlqS8Q+Ya0ksbcSF0bHNNubcMxPXFS5q+jGoNoy4IySK3LNzGQMfhV +eG3AxgGrUUTDB6muarPm0OujDlN6zuwAoNbsE4YDHWuUiRlwc1rWszgA556VztWN2kzebAHrUbnn +PpTI5lYYzzihmLcZq7oi2pIpHWp1B7VXUdPap0YHHNPcdidVI49KmUc5FRowPB4qZSOcU79BD060 +vcikBPtQcHBpN9hDgBzTSoz7CnBqXjHBp3ERFN34VCYznGOKtU3BzzSuykVvKA6UFR1HFWduDTGH +60DuVSnT9aAg71Pt5x603aelK7uVoRbBiggY4p7KetRsc4qbjF4FHGPxpP5UmeRxxQ3oAYFOGe9N +XmpMc5x0pbiHqetKPX0oXk8cU+mFw69aXbxj60uBgU7jpS1vYLjFx09+aVvUUuOf5UDrTtpcLjcY +x9KTkHFSFRjPvTdpAyKfoSxAPWlPFGeQcUtJ6AJjgc8072pOgHegDFLlGOI6U49MU35ulOBOOTQm +JjcCgYPrTm9BTefpmqAduo3DmmE0LQ2Kw/ilY8celNzgYpO/JpXAU4Ao570gJ6dqMnPUdaLDA4pr +DgjtTjnFN602CFSn5GM0zdjH0pxI6ULXUGhxI6+tJgHOKOwppyDmi4rCkAflTDnmn7s8GmE84pJg +hMDn3o4pe3FNzjrQ2OwZORijPNB6cd6QHAo5gsH0+tAYf0prHgUZAxQ9hjhgcU7JqPPJo6Yz0pNh +YeTyT+dNPpQSe9NzjNCsA49M0nBx2oyMClzSAMcDjtTDxnFOLnNNOad0xFObL5FYOoW8pVmFb8id +T6Csq8nVYWDda3opJ6mVWTS0OXEhjYZ9a67w9O2QT7cVxdw/731Oa6zw0VZkx613rVaHDN3u2elW +bfIKuBuKo2gO1fpV1QahmSHbs0mc0u05pdtADHU0kZOeamIpNmKAHil5pBSmkUNYVUuBwfpVosKq +XbYRqaEzhfEA+c/WqumcL9TUmuShpCOvNM0/IUVnVktjsor3TXQ/LTjIOfpUAc4B7VG8lcjd2bxQ +93FVZHHNDuQODzjmoGcms32NUhS/Q1A7EEGgvnPtSYzSsUJu3Eg0u08Y6UYAB9eaTcBxnrS2YgI7 +598U1dwFRTXMcZwfpVSbUUXOGFAK5oFgpFQs45xzzWcb13xj0pVlJHv71m5FKJbe4HI/OqzyF8nt +0qLncSTmlORzU8zaKskRMxyQT9DUifXNREbs56cVKu0dTzUSZaJQx/XmmFtz5+lIScD601gcjmkg +LUYLA49RVkHbwaqQZCqxPU4IqwWzk5p2IY7gmkZiN3pTA5zkmkaTPFJt2BII8lsk8YqVtuDVeLcG +NPclRhqjyK6lJ88npTFBxz2qSTByM8U1ieB+tM0QhByB64p8gUECm/xVIRuI496LgO6YHWnr2A61 +G3DAnvT1zvOO9LcljgvzH1FPwM5NMViDu/CnbsnPPBqNQJVO3Jz+NMfG0E9xT12kZPHNMnKsMg1T +EiOMKo55qa3Ubi2faoF+6fep7XgE0LTVhIsqu58HjPHPrUWTkj2604Oc7vTmkQ8E/gKLskZncxx1 +pzDAyevrR0ORznsKa7MePTvSuVuSuI0VNj7iUy/HQ+lUm5fA6VOjHDY6VA5O5R2pt36ArkoUgYFM +ZcdOKVc0rtjPtUlDUV+/Q04qCAfTmhDknHWn7TjpzVNoko3EbB1f0NasLpsTap3Y5qtOgZM+gp9m +4wFJ6da2VnGzM22TvI3II9qYOfpVl0GOCKaE5HTFYSjZlpqwkQPHXNW2I29aaF4FKwOOeabbQtyv +IWz8pqPzHGQ3pU/GOnXimPGjd6T8hoRHV+1SOYVX7vTrUcUKjo3vUjIGHWnFu1gaVx8TwsAelDmI +Hg1CiyJwDkUx0kB55qudi5VcGZSTh8c1Yj34bDDgZFU1RtwytXEjO3gZqFe5T0QHzO9IDIDwKcI3 +PXP0pojdT171diBf3rnkUqCQZJHFIA3r1pS7fdB/GjrsPyGvKcldtIBgZKk0NvznORSmZtpA61UX +3F6DQFycA9aaJADtx608O3IBpAOc5pWQDHdN3IpoePBYU9scE+tRl15XGabtsNIVpINvJ5qBzAeA +eOKHyRytR+Xu6r0qG2WkgI5BB60whhyDmlAUnB7091jAAzinFg2QMHHp07U08clTipNhJOG4prgq +MZrWOwiPjn5fY035DkAUpd+aarMOT3zVbAPHlpgDOcVYjIxUG7dwR171OrYGOlLqJoZPtPJ65pi/ +Ku7tTZjgZNMicFNvOP8ACluPoTKEbk9M1KVhGOcGoUeMY+lP3g9sDNDDUsxeWuN2fUVZEkOVFU/M +Tnj6U9WUdRn3paisWj5JzyeKb+6Xj3pocdcYz0pm5+oXik7sSLQeI4wO1JIUx8wyKig8wnds7mnz +SyqOFpNO12Gl7DClseg96USRD5dvAqGSdsEFcU1Lrr8ueKhstJsuJ5Ln7uakzb5wVxxmqsVwf7vF +O8/L/dqlLQnlLkfkM3HQ1bQJ0qhHKDgYq0sqqORWkWZyRbEai2vWJ6QkD8a8d8QY/tKcA/wRf+gC +vWDcqba8TH/LFj+VeS66d2oTH/Yi/wDQBXoYN3b/AK7HFi00ke4/Gsj+ytNB73D/AMq8BmxuNe/f +GzH9l6YD/wA/D/yrwGXGTXoz2j6fqzz4by9f0RHRRRUlhRRRQAUUUUAFJS0c4oASilpKACloooAK +KKKACiiigAooooAKKKKAF4pKKKACiiigAooooAKKKKACiiigAoooycY9KACjiiigAooooAKKKKAF +ALEBQST0AoZWQ4YYNOjleISBQPnQqc+lMzQBJFjOa0IcjBBrPj6ir8DYBNYVTrw7L6EDvzUyk8Y6 +1VQ8DNWEycGuOR3ItK+eO3PNWEZWPvgVUU7cH8KmQ4bsRWTSKLYJIK/jUikgj9KgVsHjjinqx4qG +MsqcnkdqmVvQ+3NVkJ43cDNTps+nNJCZYjcE4qQFWB6Dg1Ao7g1KHBxmnsIlwAc09Wz0FRAg9qcu +cjj1p7iJlcnj9akJHGKr89uKcDjjrT8hFg84OadnPFQqeM+lOVtwOKBMmBPT0p+7vUKk96VmB4os +IkLZx6UvUmo9wxgU3cen5VQEpIxUTMcU1pT79aYz5+tHNcLDmJC57dqryMDUruPLIPUVQllAPtRq +0LqDy4/KsPUJuG/OrtxPwccVzuoXRCsDycYrWEbsym7K5jXcgeRscc1XpXO4k+tJXopWRwSd2JS0 +UlMQUtJS0AJS0DGRnp3ooAKKKKBBRRSUALRRRQAUAkciiigAoopQzAEA8EYNACUDg0lLQA92zTKK +KbYCUtFFIAopKWgAooooAcoORjrXQ6QNjKWPPpWFFtUhu/b2rodCge4lDH7owc1M9jaludvYsWVc +8HArWU5XB61n2kDYAUegrQ2tHjNYqL3RpJopXVqbgNjt0rnL1ZLfeknfoa7iOM4z681h63axyK3F +dCgnEwVVqXKcg0bby4OUUZqUM4ULnnbTDFdQNgcr6UplfIJjPpWLi77HUtiv5rZGR6jNSNgKC3Qd +KZNnkrGeTmpILSecfN7UkmD8xIEa8lEY5Wux0+whgiUY7VkabYRwlT3zk10AleNQGAxjjFawkrnN +Wu9iK5suhjql8yEqwwelayTx/lUc8EcoJHBPOaqcITWhNKtKOkjltTkeI5JOPUVzN3c3W4kMceor +tL+z3qVbpXE6hby2krDB25JFQoLZnQ5u2hT+33AByxzSC4mk4LU5I0uDjGDntV+20w5HHWom4RCC +qSYy3WQ4yegrRSB3AH61Pb2G049Dzir8VuB0rknK7OuMbIpw2u3AA6dauxWIc4A5q3HCcjI6jP1q +1HHtIIrPVvUdykbMxnBFSxwYANWyjMxye9P2DH86d7BdldcrjtxUyzYx9KGXqT1HSomAyMg560JI +e5bR93WrKEAVnRSHP061oRFTimiieMnFTK56etQrgEnkDtmpBg1XQRKrNk0/eMDoKhBPTpTx0/Wk +hMlUkkZpc81HuzTlbH40WEPyKF5z1po7U7OM0aCHc5x+VIV/GhSaeMZ47UWYEZT0FNZcc89Klx39 +6VwDiiwXKrKSBioWQ9aslSDx2prYzSauUmVwODSbfWpiAetJjrxR0sO4wLjNSLjNIPSlyBmp21GO +FLnHNN3DGKAT+FNhYdmnD3qPilyT9KLahYeKcRwDUe7JzSjBoCw7tilJ6Ugx+VKWOMDnByaQrBik +YcU7OAaTg/hTt0EIvOKeOmTSdxikGcc+tIBc4NKTgA0mQaGIxjFO3YQnXNLgcHPFIOeelKM0mMcQ +DTf55p3XOKT3o9QQn9OtHv3oyM0E8ciiwWEph/KnnA5o4OaTdh2Ac9KTH5mlzilBzzT0vqAgHSlP +NK3SmihWAOaXORxS44ppOBkUITDIxTTx3ppZs0wsaL20BIk3DBpm4Hr1pmTigZzk+lS9SrEnWjmm +5IP1o65NNCF9j9aaw5xmlJPHtTOSfWgY44HXtSg8Cm4pw4xipbAGoGAeead6U3kHimxARxx1pMkd +ac3bFAU9KYhvA6UEHFP2ilI4xTSBsrOh2msHU4CUaukwT+VZ97CGBzzVRlYzaPO7hNkpzXU+GZF3 +KBWNqdrskY445qTRrryJkUHFd0JXic1SCueyWL5RcelaK4rC0a4EsKHNbaHOMU9zltbQmAFLTRTq +ADik4pKKBjqQ9KTNBbigRCxIrJ1O6EcTfStKeQKCa47Xr9VDKDQ3YcYuTOdvZ/PuD35q7aggD06V +lQIZJCxzjPFbEQAWuebud0VZWLYccVE7An68U3PGKYSM5FYtGqEZsdqr85PJzzUjHtUUjqD1zis3 +oaJhtGOKRmVeOKrS3qD9az7jUBzzipctRqLZpTXManBPWs251IIpw2KyZ9RYng9azbi5dgeeDzVx +pOb1G7RWpcutVYkgHJqtFdM5GT71lO5YmprdzkV1ewjGJhCvzSsdFA+fyq/H05rNtWBCjA6YrTYh +U9682pdPQ7EBK/e70jnlfypiuCQD261NjI6ZqXYNiDGeOgBqQjGQKjY/MAB3qTJx+HepZQhY/dp6 +p39DzTQASMdak+UDPQ5OTSbsDFjB7dBVjOFx61DEpLcHjjirHynAx7U9yGNx8tQgk9fpmrTgbeKp +lyvGOpNLRjRNBnJHHXillGAQfzptvk59OtBO4e9IHuV5MYXnmm46Z/CpHXDYI4pmRu+nFK5aIwMu +D6ZqZT8x55xUQIZjUqYBJPbvQxsYuTJ7VaABDfpVZHBZiBVhGLZxzmhksNhUE54NC9O3ekYlRikQ +gYzzmoewInBYBV65qOYjjAqfrtpkmA4C9v50KzF1IiAAPTpmposCP+dQSHOF96sgAIMelO2gMFyV +JpyjCnnFNH8Kj6mnsMLkdv1o5VYV9SNHO7I/HNPYZGQKjUgce9IZHwM1OxTQ4kqBt4qschtzdPSr +fDD2FVJfvYHpzTtqNEiEcHv6U4gHrTYgAM9TikJJxnuaS3BlhUCZIIOMUjsdxAp0YO3NI+0EEdzz +T0uSIdzIRjOKpQNslxmtHcMEAf8A16x9ypdDecKTW1PaxLNrzPyqaORCOap5jI4Py9qBIQSvbisp +XTsUkrGooBOc/hQ2QetV4XbHJ60+WVcDB5pJ6E2dxTv/AApCoY8npSCUY5qB5MdM4zS5uqGkyySi +D1pQykFR0qpufk4JqxHIcAYPSquDQMwTGOwprSNjI74FSZBPI7UErjjFNiK6ytk/WrUczAYqq5jX +JFPSRGHFSmthtF0XOe1Rs+/JAxUOQDj3p4bJAB6mtFLUmwBvUGlG3krT1UnNDKOwptIVxh2g49fS +kUW+DnpRjg03bkc0r2Y7DtsB+bJ54pq7OgPNNc4UbRmohuBLEUtbjJDECclqia2XOQ1SZZgPzphw +Kp2sCuKtuzA/MKQwSAU4FRjqKV5CvTpxUOyQ022QG3kHSmtFJkZXoKsbl7NzQZX3cEYojYG2VSm3 +llxzUMijqRV92d8jFQybiOVzWsdEK5RRV3egpWjyBzn0q2kaHkjmkMcR4FVe47lVBxxip9jYGeMD +ilSKMMOe9WCqY5NF1cTMu6Zj8tQw7x0HvU10vzH26U2KJzyGFJF9CVDITnaKlw5IOBihInwOeM1O +I34wRR1uS2RIr56CrXluFHTpTVTAz6UHeCPm4oYtxWLgdqejPkAYqEqe7dKaiEv97HSpb6jsakZk +VegzUM3nE8AGnD5Uxv7VUkdwTh+tOciYoJEkbqMU1YJgOMYp8e44ywINKS6EANnJrPRaliIk4OCK +m8uTAO3mmhpD0I571LiYDBYU1Z6oTv1Fi80YBHSpJJGxnA47VCvnE4zk9KlMMuOec5qkm9CdLiHM +tveAcfuHJP0FeX64MX8v+5D/AOgCvVESX7PegDpbvz+BryzXeNQmz/ch/wDQBXo4HY4sa9Ee4fGz +/kF6X/13k/lXgUuM1758bT/xLdK/67y/yFeBydTXpT2j6fqzzYby9f0RHRRRUlhRRRQAUUUUAFFO +2fKWyOCBjPPNMoAWiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiijHFABRRRQA +UUUcYHr3oAKKKKACiiigAooopAFFFFAEkec+1XYj6GqUdXIxgVlUOqjsWo2zj17VaQ+lVIyMZ+lT +qzDGO55Ncs0dsS6u0gA9RUihe3Wq8bKeAetTIDnPPpWDNUWVK4yR9KkjOf5ioEYHjpxVlAcZHfFT +bQRL1GBzUyL6VEoUY96eCOMcGkIsruAOOnSlGaiQnHB4qTBXv1pWEShmHWpQ2QKrqcjHpTlZhwaa +0AlLnoODilXI7gUz5ep9qFJJ46Zo21FcmG78OakDdx9KiUnvT8jj36VS2JY8Nj64pd569OaZnBz6 +UZz0p6JhuSEnP1ppb8gaTd69qaTwTnA6U7ahcRznkGoi7c0jEge3Y1GXPbtzSsAF/Wqs74yT1zTp +SFxhucVRmmzn1zQhFW6kIJwa5m+m3uR2rXvpjgkcY6mufmOTk9Oa7aMepy15WViKkpaSuo5BaSlp +KAFpKWigAopKKAFooooAKPrRRQIKKKOMDg5zyaACiiigAoopKAFooooGFFFFABRRRQAUUUUCDkda +KCSetFAEkQLEKO9d94csdka54OATXG6bEryoW+6Dk12MOrw2abVrOcrM3hFtaHYwvHCNuRxU3nrK +MgjriuFbxA8rfKcDPNbOjXb3TA54zU80r2B0klzNnUkgID7Vi30hckepq9cOyrjPasuZwx9aucrK +xNKF9WUfsyucAZIqxb2cB+V1FSwlFzjvUo2DaRwalMue1gn0m22Aqg96ynhWN9oHAro9+Y8D0rHu +VIYnHStavvQujGhJ3aY2LYEz3HNSGd2HPpkVVXJfC9Kt/ZHZCR1A5FYwTa0Np2T1Kk1y69DzUMWv +Ij7JPzpt0pUEegrlL5mVmxnIJpWdyrRtqd/9ptrtRtIPFY+paZHKpzXI2mrXVs3DGums9Z+1Jtfq +eKJVJR0kEaV/hZmwaQUfPpW3b2IRRxVuGNH+Yd6smLbiuac3LU64xsrFEwqhpymNck9u3rU0kbZ4 +74qB4WPaps2aWViYTKNq46ZP508TrnOR6Vnskmc5xULGRO/TpUNMXIjcRgwOKkGCK59buRCPmq/b +3wPU9aTVgcGaDLyRUcicjH40qSKwBzmlYg9O9G+wrEO3HI+tW4XIAHtTAg7VKITjNWkMnRgcHNSq +2DVUIwHFTKeMnqKGmBZBB696Xdxiq4cUoc9z9KNhWJxjvTtxHHf1qDccZFOBJyc07rYCbdgcnNKH +zmoh7U4HqKAsTZ/KpFbjNVwevtSq+fxp6k2JmfOKTdTOD+AzSbqOo0h2c0mBgjvSc44pCe/rQ0MO +KYRg+1B+ajI/KkNCHPFGBjFH8u1Ax37UihBxSgmkxxxRuOeaBjv0oGRTe1LnPGaWoWF5ApM84NHN +I1IEiQA7SaAffApobK7c96T29qXULE2ce/FGTyR1qMZGDnNPU5z79arQloXPfuaUZxzTeaeOB+FC +0ExBjp2p+FC5ph75pMnFCfYTQ/J49aQkUzcaN2aN9xEmTilBOAKi3D8aXn8BSGO4zRweKaScgUnA +OKBinrijdikzg5pRjHNJoBwORTl2iowR09KUMOppgPPrTCcd6aZAOneoy5zxSYExc4phfr6VC0nO +KQtnvmi47DyTmm5pCxoJ/Wk+7AD2pQRxnpimHHejPT0AouMlLHA4pN3b1pvXvS80X6MQ/wBaBj6U +1cn6U7H/ANahPqAgznNL7U05zUiEZFNWaE9BAcg0oHf1peOgpQDkc02hCbf507gU7AxnrzTsY44p +pCuRkUAZGKUd6UetDSSExmBmqs4yDVzA696gkUHp1ppiOV1S2DAsc1zqAwTZxgA13d1AGUgjNcnq +VusZJx1Jropy6Gcjs/DOphgsZNd1A4YAivENK1JrSUfNwDXpui63FOiDcM1opdzlqQtqjqs0oNVo +51cdamDr61ZiOPFNBpGamF1XvQBIahklCA5OKhlu40HLVzer67FCrfMOKTdhxTexa1bVo4lYBq4W +9vHupsDnJrO1PX2uJCAeKdpjiXDNk1lOZ106fKjas4tqj9avgYB/SqsZVQBTnmCjJP0rnlKxtFMk +LDH0NRNMoz6VnTXwXOD2rLuNTPzAHisnJ9DaNNs15rxFzzg9azJ9SIBx3rImvnb1NU3nds89aI0p +N3ZpypF+S+dieeaqyTMc5PWq+eOvakZq3VNIblYazsSCDjHeoJs4APpxUrH/APXUEzEnntxW8Fqc +tXYrE81YgzVb19qswdq1lsclH4zcsjkD8K13x5Yx1rJs1OFHvWt8qoPevIq/EeutiNBwSRVlD+lV +w2MAfnUgYkHHesmDRG/3sgdT0qTbgU0Kd469QalY4GPWple5XQYgGeKkIAznpSKcCkY5GKm92DTJ +ICMnnHHSp8liMevFQxLzkAdKnBG4UyGPZeCOtVXwGHGKtN04PWqkuARVMIlmBR5fvUZUKwPPepYi +BH196bIR1PrSWugaldhuINR4G48VYTDMSe3aonHJwMUmikyBVG5vQU4H7xzjrxSB8Kaa0gCYPv8A +hRbUoAV5P6VKhIwOntVQSdPSpROdwH5Gq5QZOzEEADNLzkH1pgO5qeD3HQVDQtSVHOSaiacZz9ah +M5zkU0EPnuTQodxj1ZpGHYCtHJC4/CorW2Cru71IzY4obs1Yz3EVwgYDJz1Jp8uRGO2aZE0eRnk9 +qdMxbAx1qW2xpakQyeM4704Hdj0qPkN9KlCHqTjnPFT6lCs2PaqyhS2fxzVhwCBTBFxRfQa0HqtR +4555wamCjB/lTSAGH60orVhcmVsL6YqJsc4PSnYO3k4wPzpoXvnBpkjRIAR+VZ96EDhxVqQNu71W +v0Jj3AdBW9N+8TJE9vLuUZ7ipwQe3NULA5HJI7VfBQMD61NXSQ4EgJGF5oJYgA+tWYVjY8mpZIEJ +OCMGsbNormRR+f145pTG/DBvatCG1HXrSvAOQOlUoO2oudX0K8akDLHNKJCGwFzTynPXimtGcZz6 +0+UV+495Fxnb1HWqjyc9KeQ397JphVlwcZFJt9RpINu7PNSRRqM4PTrTFDnNSqnT5aEne4NjwpI4 +pQr+1KF6daeQAeTj0qrO1ybiKJAPWlLMozjimkdcMRUZLjjNCTDQDI2TxTWLYyQc01y+evQcULJJ +jk5pSWpXQC7YJNQtK2OPxqcF+c85prhQMnHSiyC4xHIUHNOLjIOetM3dFC9qQuowNtCWgyfzk/Wm +ySA5x2qH5D0B9aesSN1z0ptNgkkRNKOn506Fgwpxt1AOD2pFgcDIPfikk0N2ZZUx8jH403ajNnNM +MTr/ABZzQN44z2q1J7GbiiTYMgKRUboAcelIrTqRx3p8kqsp4q09dSbMh4BAxzTvbFJEVLZNTOV2 +k/hTsPqY92cNin26ngr+dOmCs3Jq7apFsIyOKS1LbsiIHb1zUoYYNOYR5IB/Gmbe27g1bXUi4/K7 +QMEetKRCQuMht3PpipPJG0HdxihlVVQq4Oc7h6UbCvcryYBpQIvvc8E4p4yxJOODQqjnBxU2Hcej +KV5z0qpLExY4JFXVUAcnk9KVQVYHg9qXqCdtinHC2QSTigxMWJyeOlaiYbGF4pTERngUOF1oHtHc +zgrLg5PrViMoRy2DUjLtyCtHkhhkAA1KjroPm7lm3ggHO7NWWRB3qpApTrVhwGwcciuhPozJ7kkc +W6C+Abn7O4rybXBEupTAqXkxCAvb7g/H+VetWoCxXvHW3f8AlXkHiDJ1O5I7CL/0EV24PZnHi3se +1/GwE2GlL282Y/oK8FlzuNe8fG/P2HRyP+es38hXg8nWu+e0fT9WcMepHRSqNzBcgZIGT2pOeoqS +g47UUUUCEopaKBhSUtJQAtFAOKSgBQCSAOSTgCikpaACigYyM9O9FABRRRQAUlFLQAlLRSUALRRR +QAUUUUAFFFFABRRRQAUUUUAFFFFABR9KKKACiiigAooooAKKKKAHocGriMRiqic44HFWV5rKZ00t +iwDxn1JFWIz92qqe9TxE5/wrnmjriy9Hj8M8VYU44OeKoq2Rkc4qeI9zXO0bJlpR07k1ZRsqB74q +qrjlsjIqUODj3qBlscEY7ipI8EDPT/Gq6uPXv1qZGBJz64qWgfkWFX0pxLEj6VGHKt14xS71HOaE +xWJFOBnqTT1I4zVfzF654o+0qB16UC1LJPQL2xUgHcelU/tUQByacLxAevFMVmWlyAM04Mx/Cqy3 +cZPUVMsiHJyKNELUlDYzmnBl5561GDnkEUuepzmq9BMdu5PSmlgM/jTSeTzTGbqAelK47CO4xgVA +7gZ5pXcgE4PSq0h4zQhCSyLx61nXLqMtn04qaeU46cCs65Y9m7VpGNyZaIzL2QnPPrWWxz/Or9wE +b70gU57g/wBAapymMsBH91RjJ6n3r0Kasjgqu7I6KKK0MgpKWkoAWiiigBKKWigAopKKBC0UUUAF +FFFAABmiiigAooooASloooASloooAKKKSgBaKKKACjmiigCeCZ4wQvenGeWRhyahjUu2KsJF5a72 +H0pcqLUnYto/lgJ19a7nw2MQhz0xXnURLyIvqRmvRdLJgtkUelTLRlauNjWuLnOVNUxIpbjFUL/U +Fjz83IrMTUyWT5vvGspN3N4RsjrHhBTeh7VV3kcZzVi3kD24YHtWZdy7MntWkopxTMYSbk0zTguN +w25pt0Ac/Subi1QxzoN3Brckn82IN1GKKUrrlYqkOSfMig05iYE+9a1perKu0HrXMajMVDEeuapW +mrNDMMt8tRrF3RrOCmjqr+E8sK4rWF2Pke9drDdw3UOQwJI6VzmrwoWI4rVzUtTKKa91nMYD4K9e +9bOkxuCpNUorc+YMdK3bFdrKCOuM1zVpaWR1UIWdzo7IMUC+hzir/l5xVW1AIU+tX1UZyOTWMUbt +kYiB6elNaEDjHvV4RcD19ajkQgVqoEqVzPaBaqzWycjFaZxz7VHtB5NTtoWYUtoMHHWq5iaMAjoM +V0EkIOeKqzWqY+pqXG41KxnQ3Tr8rdq0YLlZMAms+S2GeByOlRpvjJHPXArGzvoaWTR0iEMOKtxA +EAVh2102ACeRWrb3UZ2impdyXEurGPrQYRUsckZxyKkwh6Gtk1YzuUZIsAEVEVarz4BqMqpNKw7l +YhvfFOBYdam2LTNoAIqXFbhcA46VJvAHH4+1RYXnNMI7CjlEWQ54GaQNjnNVC5B6037Qoyualsdj +RBzkjrim596prdDpmpROp+anz6aBZlkuTgGkLdqjEgOOaCwPejRAOZsU3NNbH6U1mxiqb6jRLu4+ +lOHAqBW5yaeGB79KW7KJRzQRn8qYH7ZzzTi3Wld7FJCEUhPHNIzj19qQtwM+tHQY7PWjnrUTNilD +Db9aHYLEoGCM4pSR24qHPSpO5GaWwmOG7FSLj9aj3dBT1I7UiWOwBjNOI9KYCc5607PPH0ouSKxI +H1pnSjfikJzQgAnGaYDTvQGmn0piHqc0bieKb2NKOnoaAHZ+melJubv1pp7mm7jzUPRjRJnuaXeO +9Rbiabu7j0oe2oybzME4pjSdRUYakyetAWHMe/ekyccDnNNJPrS80WGNbpyOc04Uf1pDnOQamzTG +OPTp0pDg4PoKT3pTiqtoIB70c4NAzgU9R3NCXUGxO/FAycjNO4p3AosnqhCDIwKXmnAD8KXsapIV +xnHpS7f504dKXA4zRYVwUU4jjFKMZ9qCTiq6CBSRkUvBNGRg470lKxNxpJFAOaHI+tRlhx7Uxoky +B71GxBpA/Jz6VHu5NTdCsRz4IOa5XWRgHA6ZNdLPJ29a5zV8lX57VSdmKxxs1y8bHHGK1dK1+a2Z +fmNYF4TvPGOaqh2Xoa7VG8TllPllY9i0/wAWoyqGcdK24fE1uRguOleER3c6Ywxq0uq3QAw5qHCa +2D92z3F/EtsB98VRuPFMKDhxXjx1i7P8ZqF9QuX6uaXJUYWpI9E1LxdkNteuM1DXbi6YksfSsVpp +Gzk5pmauNK24nUS0iW45izcnrXVaVKI1UmuQg6jNa8dyyjGeMYrKun0OiguZanUyaggHB5rPudUJ +Bw2BWLJdsx68elRNKxHX8K5lSb3OxRSLU945JGarNLuySe1VSxLdadknpW6ppE89x7Pk5+lJketM +JJYntTx0q7WBSuKMc0080pJOS3JJzn1pnehITBs+9V5anJyKryVcdznq/CQVatl3YFVe9XbVSSO1 +aVHoc+HV5m5afKMjJq+7ZH4VStwcD24q7IAFWvGqfEeuloQ56Z4NSq3TFQsVwMcGpI85yOTSexRa +jBJGetSSoNoOKgjLbxjOavbCVHHvUWIbsykQcU1G4x9eKtvH8vTpmqjjaR70IadyxEc7jUqknGTU +cONrd/Sn7h64qHe4MmboPc1Vl++c9qlZxj6ciq7uhOe9FwSZeRFaMD6UyRGwOajFzhVAprTMcjPF +NMmzuOQhWNRyNjcajV2ye5qF3JV8nHNFncqwbsdcc1HIRge9MyfWk3DgHmtFGzKFXgn9KRcb/pTi +wBBXtzTOjHHeqAn345HWnK7MCPWoGyq+9MDELS5QJ/ljQ7uW5xS2vzntVKZ3JGDwau2gEabvXtQ1 +aNyX2NZZERevHeomdWUkdOwqBmOKTPFc7u9xpJFi2+btVjy1PX8Kit1VRk1Y7c0ri6lZ4yp45zTw +QNoNSjORSsi5BFLqBF8hJFLkAc/hUyQKRn1pZYhjjmkwuiDK/h3NMQDJ70OpUZ9O1PhUj5m6UJtF +O1hHzkA9qF4zSuR9c0xj0xTWhBEzAOe4706UK8LA1D0b8asDDJtHpVRfvXHJaGdZcsR71piNc4Ir +Ng3LOV9a10D8bRmtKyb2Ii7D4wvpT/M6Y7U3Y/XFMclefXisXdFqzLSTPjIqGa4lJIqNZdoPPbGK +azNJ09OapLS7FbUd5z55IqVdzA564qBIsHnr2qwrIKd11B+Qxg+eBkUvzbfu1N5kWOOtV2udp2g4 +FJyQJMQEjnPNPWdgvPWmJLGSc4pZJIjwKnbYdrkhuyjbFIbBxkd6nSQyKcrVeJI8g4q0rRYIAq07 +u9yGkgVexWl8kdSOMYqRGjXljT5JY+MGtFytEO5WeONugphgUn7pxVneq+lK0wxnjFN2aHd9CkYu +tQtFzy1XmbIB4qFox161m11KTKrR7cHNNCD8TVlhkBcd6j8sg5xQiriBGPTHOKHDj2qVMjkilYDH +OabC5VG/qRTyRjpQOSQTTscZqFYogbJPzZpy4I5NPKZHHapYoycggVUUJsgD+/FJ87BmxkDv6VM0 +AJ6daiMBBxyPWqXmTdCRLng1K+Qp70wIEYYyKJT8vFXqIzZVLPux3qzAhGcjgVEVbceeatLuCDB+ +tSi5ClVH9aVSjYApCzMSO5pUjdGDDpzVxZDHF8dqarKevWpGBPIpuDjgcik3YQ0+X75o2cZJ4zQo +fdz1FTA/3gO1NMbJY/s7AZznHWopFXdkN8oI5qYq2Mhe3Soj2LL+FEm+pKt0LcMcOAQ+KcVXBw/e +qYY7doBoVpF7Gpc290Pk8yd4zn79IQ4xhs1HvQkg5BqRXiOKV9RtFiHzHGKlbzVGc80kZVAMU52T +15rbSxl1Ega4Ed0xXjyH/lXkmv5/tK4z6R/+gCvXo8fZb0hv+WZ6/Q15Hrz41K7AwdwjGT/ujpXd +hNjjxe6PZ/jfn7Fo/p5k/wDJa8IkzuNe7fG/P2TRxn+Of+S14XKo3cHNd89o+n6s449SGiggg4NH +FSMKk8h9u5WVxz0PP5df0qOigAw3oaSlyRnHfg0lABS0UlAC0UlFAC54opKWgApKKWgAooooASil +pKAFopKKAFopKWgAooooAKKKKACiiigAooooAAcUuRgetJRQAUUUUAFFFFABRRRQAUUUUASR9qsr +jOKqLmrCms5I6KT0LAbFSxnPSqwxzUynoB2A/SsZI6YstxknrVpSeD3AqlE6gg+x4q0jnGc1zyRv +FliPI61LG6gnrg1CGyCBSoMcnrWbLRbRgevTn8amQkDrzmqq5OM+tToNuOamwMmLE4A9Ka2RwO1H +vShByTnOaFFNibGksRjpTdr/AIU9tqckj3qCS5GPlp2sK/YJAegqFt5PUYqKW4ycg4qq87Y69qtI +Tdi0ZiMjdilF/LHjL9aynmOSec9KbuOB3NV7JPcn2jN+LVjnBPWrsepxNxu71yGXIGCaUSSL0zxz +Q6PYPaJ7ncJPGwznNNaTnGfWuQi1CeMgbuKvJq3GG4qHCa6FKz2ZuszZNVpm71SXUo3B+bHGTTDd +qSckcips7g0OlJPf6Vm3LcYJ7VYeZT1OKz7iQc459K3poxqSKFw3zEDp61XqSTrz1qOu6Ksjz5u7 +CkpaKokKSiigBaSiigQUUUUALSUtJQAtFJRQAtFJSnAJAORng0DCjjiikoEFLSUtABRRRxgc856U +AFFFFABRRRQAUUpAFNoGLRRRQIfE2x1PvV64KSRNIWIxtCgDrn8v61nVowSxvbyQKp3OoViT1AIP +H4/Wlsyt1Yj09N9wmexrtjeLDCTnGF7VyVjCIny3BB61Jfag20xjpWU9ZaG0VZXYX9+0rnB49arr +c7ZFGenpVDdzmlDENn1/rVcisT7R3PStLu1a1Ug8YrN1i6ChwDjA4qjpN6kcGwsQKq6lc+azHPtU +xlpylctm5IzXuXLhgfxrqdMvxJbYY9BXGFGzV60lmh+X2olpqg1krGrqU6lXArnmdt3HY1oTP5gx +3qr5PzZ96SkVysuWWoXEXCsccVdkuGn6/jVKC3PsfWrqIAMVjKST0N4x7kSjZzjjpWlaN827pnrV +E4Jxz1q9bZGOgrKTZtBJHS2LMQM+netBMhuazbPG0YNaPTFVDYmW5eUjaKSVVYHPFVxLgAZp5kzW +yIsU5MK2KapB/Dmi427gTTUznHtWc0jVbEnPP5UxlDcYqUDO39ak8oHFR0GZ8kG4GojaAcgVreVk +Uhj9qVu4rmUtsAenNJteNsitIoM5A/CoJFIz+lHKnoNSZGt06EZNTf2ngjJxVCVG49qqSqeRk5qH +HsaKz3Ng6mmcZ4pP7RTPDCsB/MOcenWq/wC9XoTxU8silGLOqGop0LCj7ch7gVym+4ySPanrJO3G +TjpTXNcTgjpGvlXjOab9vXjn8awD5nvTsTfL3xVLmuTyxNeS+GTg96rPegmqOJGB605YGIJGe1HK +GiLAviGBzk1dguXYD9KoQ2rnk9K1ILcKAKlQtsNyRYjkJ5PepzL0AqAR45qXZxTUWToSiQdO1Idp +PNR7SOPxowcD271ROw5s9ByKAQOtIWGBTc5PtSuUmWFapBVZWweelTqQaZVw4yT7cU057djTsYBp +OR7Uh3Eam8Dil9cmmZJoe1wuPDA1IG9ahxzn3p3SpV0J2JRnNOGOajBOBTsnv0xxT6ktkyldvP4U +nHIz2pDMmxVxyKiL4560tBak2RigMMZ9Kg8wkGm7zzSbAsswwCKZuB5quZv0phc9ulF7isWTIOKD +LxjPNU2Y9zzSFzkY5qbu9x2LZlBpN4zn8KqM9IrMcmmmgsXVIOad8oHuKqh8YPvT1lFOQrEpHpSY +bPHSmeYKBJ1odthodg8e1OVsY7n+dR7venFhxxzRsA7PHvTRyaC1NBA96GwHEYPWjmkH6+tPA9aP +IBRnvTxzTB19KfwBmmJh6GnEE8U3IyaC+3j2oS1AeO+KXPGO9Qh+ppAxJzmmIscUemTUW7p60bz+ +dCfQGSh1OfpRvOOelQ/hQSVpisWA2BTSwPf3qLzOlNY/nmmKw9n9aiJINHbr2pmc9aQx+T2phP8A +KncZ4Pao2YdPWiwiKY54Nc9q5XacelbVzOFB56A1yWsXgI+9+FNavQRy17jzD6VUqad97E+9Q16M +Njz6jvIKKKKogOaKKKAFUMxwvJNKqk0gGTViNB+VTJ2RcIOTHxJjrU4JHWlCrt4+9n8qTnnNc7dz +0oR5UBPIpGNNyaXPrnb0OKLFOQzNTBhtx/Fiq+OetTAZyabREG2B65pw6UxgaUDHHrUmgckYzSAU +uPwpaBDCBVeWp2qvKa0juc9bYhHWtWxTkHGcCsteta9h0HrRXdomeFXvGtDu4PerMhO0VXQE4qys +eVAP515MrXPUREUzgn8alhXnIqORChGSO1S2/rUvQd9C5CmGyewq3E/8qij+bnvimsxQ5zioM9y0 +ygrjgc1Slhydx7VbV1Kjn61HKy8021oJXRWiBUUrhs/KO2aXjA2+tMO7BGehqH3NEAAK8VVcdcVZ +3YyB6dTUDjrnHPBFCY0ICdoPWlVm9aCpABpmRnFUMEc5Y1HI6gNnr2oQEE56Go5hgHDda0SVwYws +OKNw+U89abgYHUijG0AD8a0sgJgeRTivX8ajVgD34qb5hk9utQ9BEMu/HPemtjAzRKcnBPGKikk6 +YqkrlWJHYzS7m5J649auqAAB6VQt8g5P41aLjjB5xzU1U3oJJXLmR06Y60xyGII4qAF2PHpU0C5z +vrHlsBdgYHaoq0xGQPwqpApGSKmJ+as7EtakqsfTFCtluKa+QAQfwogUF8mkItohxmlwrHrjFNLk +DHTHFV2kwM9MGlsK1y4Yom4qCSNQDgVFHIc4J4qzsDL+FF29B2sUGGccUuxiPu1YKgHFTR4ZegrR +dmJyM3ynz0/Cr1tZsRlgADViOEK2T0zUjzKvAp2S3JlJvYxLyFYrjIwM96vwE8EYIqjqu9tsg7fr +TrOUlBWmlk0JJ2NQnjpUTQ7uSetO85dmB2FRxnJyxx6UmkCuhRaAZJ6VHKI4z8lWXkDL19qoybi2 +etKSWyHFt7ixylicjHanFWI4pgB44q1HKoHI4FQtNy35Fc28rnPbHFDW0hABH1NWxPEeOlI9zEBj +NN8thXkVUtyrc0424Bz1BpVnzmpdx4ArNNFO5IiLsGR0xUpEeAAMGmR5HB5p/lu3SttbaGT31G4x +xTlVSO9P246ip1CAfNVRjqJsqsq8A0ggZuSeAas7Fc54FOUIBitOVJ6i5mVCPambXbPBIHWrTBRx +UbyoFIA5zUOCuCbIRDzjOKJYwgHNKsiHBPX0qORgxJJ6Ue7YrW47IKjHPrTXV2HFIHAIwcU8y8Hk +HBxUuw9SuEPGcZzVhFBAGBUfzE/lmpBlRUobGtGpPA6UCPaCQaYZSCQeKUOxIAPUVF+49RVZs4Bp +XjfBwRQTjjigyNyKtEsidJMqD9ailRhyBU7OBy3WoGlY9D0q7odmQhSCTipkAPPSofO52VIrkH29 +aE0DTI5H8tuBS+bkY5pz+WfxoUKBVaCFGQOT17Uu9Rxn60ow3Tv0pskTAfMOxqWlYa3HI8bOQamC +pk/NVOCE5z2q1s3HAFXHRCdrkxYIPvUxn3HOc1E6MMA8+1RlMDnI6Vm9BpFpM9c0/LnoRxVAvj1x +To5Svc1LHymgIWbBIFOWF+uBxVD7W2QA3rVqOfIwX5pprsJxaLa5HUU1mUdabvOPvdqgkMh6EfWr +lLTQlI0YVQ2l/wBceUTXkOvEHUbkbQP9X+iivU4JJhZ6hlgf3OK8q1vJ1C4PX7nP/ARXpYN3icOL +Wp7V8bgDb6MP9q4/9lrwuXIY/rXunxtx9n0YH+9cf+y14TLjJxXdLZHFHYYfbpSUUUhhRRRQAUlF +FABRS8UlABS0UlAC0lLRQAlLSUtABSUUUALRRSUAFFLRQAUUUlAC0UUlAC0UUUAFFFFABSUtFABR +RRQAUUUlAC0UUUAFFFFABRRRQA5OtTgdKgXPapx2NZyN6exIOPepVyQOfWoe31qRGIrNnRFlodAM +1OhC4HbvVRc4HPQflVmPB79utYSRvFlxHO1gOjDB+lSDnH+c1AuMY7VYQIPesbGhNGuQQfY1Oinc +v51FHtVgBUrSBQRkZzUdQZI5UY9qrS3GRxxUUk+SR+VQO3YnpVJIRI05YYqsz54pCcZHpSMCqqzD +huRVqJLYAhsAmoHVSTtP51JyevSk2DOOnFUtGLcjEfPTOaURE545NTBSM59akC459aHJiUUVDAOc +Hmm+V61dKYwR9aa2On+TRzMHFFJoe46VA6FfyzWkVB/HIqIxrwCO9XGZDj2M7c6k8nBpBOw5zVl4 +1zgDvVZ4wM5rVNMzbkthDcOTyajeYmmFajOa1UUc8pvqKxzTaKK0MWFFFFACUUtJQAUUtFABSUUU +ALRRRQIKKSigYtJRRQAUUtJQIWjBPSitTSLeOR8uAQaTdlcqMXJ2Rl4IorrLzS7cwu4QAgZrlXUo +zKeoOKaaaugcWnZjaXY57GpLdQ0qA9M11Nvp9uU+6ORUuSWg1BtXRyW0+lJXYyaXCwOF6GsXUNM8 +oF17dqpSi+onGSMng4+lGD1pVXDAH1rWMURg4Azipckg5W1dGPRgirESASYIp0kOeVo5kNRZVpyM +UIIqQW8pPAp4tJTjjrQ5IFGRbiulaPB61Rmyzk9eeKtR2zAge9Sra7jg+2KzUlE1cXIzljY9qlWB +ielaaWeCMD1q1HZhSPpUyq2KjRKVsjKoAz7VKYi3J+laKW4AHFONuD9ysXM6FS0MhbY9akEQGMcG +tEwY7UzysZ568VLmylTRQMfOcc09LZjye1WxBzkVYSMdOlDk0NRII4wgpxOCD071M2OewqF/unvU +dSiNdpcfWr8KkFR2qkAcir0XPA6+tIpG5YsD36GtdQGB71gWrFce3FbVu+RzTi7aENCupAz0pm4r +34q2wDA471Wlj4IraMiStKwbBPakRiDwKimJTimwyetTN9S4mlGPX8atqBjpxVKFg2Pwq7GalAyQ +AU11qRcZ6U9wMcda06EXKLJ1pjRZq4Uz+FHljHFStyrma8HqOM1XltVI6ZxWsVznimGMc5oaQ02Y +RswT0NJ9hUk8c1ueUuaQ2+egoQ+ZmH9g7AcZpUsOelbghwOlIIRnOKNEF2ZH2LkAfjTvsY/GtYQC +l8kDBIzmkl1EZX2IDOBipUtF6d60fK7YpPKwOOTmm9gRUjgAB4+tWFTGMU8RmnqKllWG7ATmnbBg +e1Sqo6etGOcHtSe4iPy+tMaPI+lWcY5H401gM+tICk0Z/Coiu35v0q8y8HAquyc5oAjUsT+FPR8G +mlPTimBG60W00GmWt/HPSkzn6dKgDECnebwPeovqO4/5upPelx7VHvJ5pwJPBp3C4+gcjPpSDvS8 +0kDYgJ596XcelKBwOOaUjvRZ3sK4zJPtR83FPPr+NHbmm0K5G2QfXikzyPpT8cikKcg0vUZHjOMe +tJsHepcYpeemKVguReWDRtC5AFSqp7U7aecjilbqBAY+noaPLH0qxs9aXaMfhTSsK5UEfTPNOwOg +qxtAWo8A+1FmkO5CVNHJP1qXjOKcE9KLCuRIpyRn3FO5qQKBijZ+lFtAuR4HNKeBTjtPA603PQGj +RLUBV4/Gn5xUfGQKfgdPaiwgLDPJpN3GKYwA60mSQPYVL0KH78Uu4Hg+1RgbutLyRxV+gh27sKAT +zim85p3Jo3YDgxOBTgTTQDzTwNpz261duoric9/Wl9vzpx55/GkPNDENGRkU0nAOPSgsBk/hUTyB +Tk0rpBuSZGOaYXUd+lVJr6NcjvWZdaqqdD060uYfKzYa4RARms641ONCcmuduNb+9hqyJ9TkfJDH +nNP2cpg+WK1ZuX2sjB+auXu7tpicmq8szMcmoTmuulRUdzlq1r6RE65NJS4OKMGug5LCUUYopiCg +AmgVYSM4BFJuxUIuTBEFWo4wOc84pgQYpw/KueTud9OCiTBV69qY64Jp4Zegpr4PPrzWavc6LaEX +enYBptPyBVslIjI5/GpQPX1pmetOGM5oYkktgBOcU4gj3NJySKU4yaktLQjJ7dhTmZnLMe5yabyT +RnjGaom418VWlzVlwdoPWqshrSBy1noMA+bHvWvYqByfSshOGBrVszj8qmv8IYTc17cnoKvqQvX0 +rOtpFzV7dk8eleTUWp6diObBYc1LAUBx+VVZm+Y49adHKcg45oadh20NiJuSaguZOeuKZHN8p+gF +VpXLMx7Vmr3JUepaW4AA/OnPKWyKpbjj5umRTy/v3ocR21LiEY59KQ45Ht1qNWGBmlXBzn65qH5h +YOAefWmM+SeMAHpT/kz/AEqOQHJ+vFUtg6iMQAPTvUR5NSFeBQifNTv1HYh5H4UyRQcmrDJtYnrU +Lhm7ZzxxVReugyLHy4zmmujA/hU0QZvzp06FTz6cVd9bAyFRk881OSQqikQLT3K4OemKlu7EZsrc +k9s5xURkGRnvT5mAzj1qH5eK64rQGW02hcnilV2DYPXpVcSkEA9qVJFZvc1DgwuaMMpXr6CrsJU9 +PqKowQlwTVyONkxXNOPYTaL0IAznpSyFVbC+vWqQuWXoe2KVJMnJNZuAi5y/0FLHxUaTwqM5p4mh +PQ9aVri1JTMCDxUMpyMetNZlBJzkU0kMeDRotRpEkPYnrxVwvhQB6VTjXpz0qdzwOaiSBkisGzu9 +6djYMg96q7jk4707LHHX6UlJpWE46lkXLetRyTHv+FRqrDnrTiu5eRiizYaIrXIEkRBOMVWtZR5Z +C9jilvpGiQkdOaoafOWdhnvXXCLcbshtJm2kpxjGKenmHJC1XQ/MvpVpLlouq5rJ2K9AI45z+NEc +SqcljnrTWufNOAMdKQSNjgZo1voGpKQpzjgnp9aMFRkniq7zkdqYZ93HPrUtvdDSLIxyRj2qrIzB +h79acJPQ0hOTnNJt21KSsMVmzVhZBxmoB5hBIxgcGlBORu61N2txtXL6y4BIPGaspO/HPFUYypAG +OamV48kYxVqRk0XhOw9DmnecSMbRVNWQkDtmnMccA1om1qTZEskwXPHT0qH7XGMnFRMrEHLZqPys +jjvRdsaiiz9qh4OfwqM3UDbuPxqt5LZPp605YG4z0pc8th8sRXlhx8vWmLIMDJp/kHPC5pPKI/hN +DuNWHM6Dvz6Ug4PXr1ppjG7kdqcRHjuDUvzHcXe4PGPalBfIB6VEMbuP1p53djx61DQxzJnB7UsZ +VTjvTBJIQB6UFnPJHvRcLFhmVhxTVCA81AGY9qTzACM5FNSb1DlHzBDzVN9oJANTuyAdT0qjIec5 +9apvoEULlQ+QetWkCsQuRWcuCx5qzH8pH6VeyBotGE84pvlsOPShJGPTkik37j0p3ViLMBKf7vTt +SGVz2NNMqDORzR5ydOTmpdtikmSxFz04wasNJ8vHUVBFKMEipQykgZ61aaJaY0u2RnOM1OVjZeM0 +1ljA+9UDXLxjA6UnJJhZsY/y9+9R84OGpHlZ+TikRW+9j3FQpGltByqFIPWpQxDduahO7sOKcsTh +uRz70eQF3ccEZFRDzM5zxSCKRyeoxTWDR45I9adiF5GharutNR3cfuGry3W8fb7j/gHP/ARXqFu5 +az1AA4/cN/I15hrhH9oz45+5/wCgivUwVuU8/Gbo9n+N2PI0cd/9I/8AZa8Ll617p8bseTo31uP/ +AGWvDJSORjrjmu+XQ4Y7ERxnj0FFFFIYVO13O1qlmdvlJIZB8o3ZI9etQUUAFFFFABRSUUALRRSU +ALRRSUALRRSUALRRRQAUlLSUALRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAlLgjGR16UUUAF +FFFABxRSUtABRRRQA9alWoVqZelRI2pjxzyBT1HPWmcn+tOXoKzZvEtAjjjtViLODnn2qou/rVhN +/ODWEkbxZcVvbtxVhMYHH41VXcSCe9SqQvU+tYs1RZ8wDoelVpJi3A7mo2ctxmmbj1PNCjbcTZIW +OPpSbzjae9RMxJx2pcgYz61VkTqPB6/SkCM3OO9IC5P5VJlh1pDsNVVGKXavPel+Un9aUf5FK47C +xjIwemacVGORxTlG0UFsjB544pX1HYacADA7UhB6mnbQF+nNLwoOeSaBPQjITBA61AxU8ZqbHGc4 +PakKDn2prQRV2ZqNohk5q4VwufU4qIqTnIrRSIaKLw9SelVpIPT8603AIA/OojGCSOK1jNoxlTTM +pkYGmc1ovEvJqu0NbqaZzSpNbFaipDGcUwqR2q7mbi0NpaKKYgopKWgBKWikoAWikpaACkoq1Z2F +7fmVbWMyGKMyMB2ANAirS0E0UDCiinIMmgFqBGK2tFaPGCDkHNZE2Afwq3YzGLHueKzqfDoa0tJH +VTSKyEHoRXG3i7Zn+tbJv1OVz0rIvDvct61FJ20LrR6kETFXUjsa6m1vR5fUcCuVXrmrkczBcU6i +uKi7bm22sYJH51BcXKzjkDmspY3d6vxW7EZOaydom695bGebZ9+RVyGCbgfpWjDag+/pVqO2w2fU +VMq1yo0rGXFp/wA27FTLZqMgj6+9aog2kGoyADyOtZubNFTSKItE4IpfJHy9M1aO8nAFSLFuxge9 +Tdj5EUxbhyDjmpo7TAyRzV5IBkE1YWHJ56GhvQEkmUUtcKD14zx2qXyB+daAhH5ihogfur0pblJl +Dyh27ULF1NWmTb1ppQY9MUhlZosnIqNoyByPpVsKB/So5R6elFxFUIM8d+tOYKCAKXbz+tKQOaHc +CEofXFMcfWpucH600qT2oTFYiUEHH0q3CRkA9qrD73PrUy5zQxpGnC2ME/hWpbPwDWLCScelacEm +MA0uoGurLgUrAY/Gq8bZHFTg5GCa0ZNipcWwdSazvKkiJBrc2g5z3qCa2BBqtQTsVbcjgk1oI9ZP +lyQuT61bt5fU/nUpW0Kfc1EY4/KpecVUR8gZNTo/bvVXM2P9aUc59KbnFKGwBQxCHBphAI9aex5x +UbHv2ouUhAtPG00xTycmlyaTfUqxIVxikwtNVm6UbgcGhMdg2g80vdfalAJPtTmHHHajcLDR5fOa +Zt4NPwKMAU7hsNC0uwDn2p+M8GlJAAH4UdQuRjrilPU07bg0d/Sk0Fxo9D60mOuKXHp1oxjjNShi +cEY71EyVKRzRgEc9qLaaiICgIpNn5VPgHIFJjOaNgKpi5xTBDg1dKjHTpTdoOc8U7dwKoj6GpAhN +S4OKXaOopWsxjAoIOe1JtI5qbjpTGPBzSdkgQ0EGk55zSEgc5pCxPTvQ2gsOB4xTScU3PWm785zS +voFiVF3MAO/ShgVJB6imIWUg+lO5YnPNK4BzilGM5pecUhzRsA8ECkznJo9R3xSDrijUWg/jHNAI +5ppB9ehpOe/NCAeTkc9Kj255HFLk4AFIWxn9KGroQnTrS5H4U05PSoyTxQMm3etN35GaYCTmlGBj +0zTTFYQE5pcEnJ7Ue3TmncADHPNFhhkZ9hRwcGmnAPNGQRRqArc8GmnuaMnGO1MYnOBzQwRISOKT +PPtUfr6Yo5xnPINCAmyM/hTwBVcevtTxJg4NUmFi2Mdxmggc4qv5uCGzTWnI70OSIsTMxHSo2mGD +25qu1wars7Nn61Lktxk0s4xwc1XZ3kz+VIwPH1qVVHSo1b1Kei0KEsO4+9ZWo2pVGYHtmukMQzn2 +qvc2nmIykcEVcd7k3Z5pcM6sQajjG84ro9R0CXcWUZqhFo9yG6d+9dqkuU5ZRbYttpHmgNV9dBh6 +nntV6ytJ0VQRyDWgLWbpWE6s7msaSsYh0S0ABwOOtRSaXZgZxzW+9nISQfSoXsSRU+0kV7KJyd5Y +xJnaKyShBruZdLBUg1QfSI85wPcVrGvyrUynQT2OajhZiDjirax4wDx/StV7JI+gwOtUZVG7pQ6v +M9DSlQ5SMgAZHvTO1PbuKjz29aaN3ZDlOCKdg8n2pF5A9M805uOe9J7jGDpQcDjFGeaUnj8KYdCP +rTh6H60AdKeCAB9KGxJAAMZppYfSn845qFjQtxy0HcU33peCKaw5pozkISccmq0nerLe9VZDzWkN +zmr7DU61qW5OBn2rMTk1p22OKVbYrCbmpb4PXqeSa0lwUJ9MDiqNuBgcdRV5BgHng15FR6nokMiL +82OnWmIozxippCMEfhVYbhx+tJaootM22PGKrhmOc09mO3B5qPpyO5FEUMlQ7hg0FgCffimxntTi +gY59xRewmi0m0jnnpS4ycDoDk1Gg2kVJnr9axe4C5B6D2pG+7754pSAF4PamnOBj1paIEhD2p6bd +2D6U3aeM05VHJNK9hgQCWqF0wPxqYkhTmmiPK5PrxTTsBDAACR70+5GW/SpEjCkECnuq5yRVc2ou +pX2BF9arSOefer20HAA4xioJrU8sOBjAFXFq+oIyZeT04pgwTj0qy0Z3YpI4CzniutSVgaK3lnkd +fWrEdseGPGKseVtcHFSnYAB65oc7ohsmidYk9aZJeIoJPU1SmmCLway5J2bqamFHm1E2luahu8kk +cDNO+1sQNueBWZbyA8mpPMznt7Vboq4e0TNE3DtgCpo52GCT9ayllfOO1WI3U1EqdilK5pNOcjBx +To5iCM+9Z+/LY7YqYDjrzWLgijYhkDjOfapmJ7elZUchjA9M1oJJ5i59ulYyjYkkRs9eBU/AH4VB +Gh/KpQcDnp7VlJq9gFEmARUTyevrSO+057VAzbgB79aFbcdiWWNJoyOvFc/OrWUjHnOc1toJIzn1 +6VX1C1W5Qkda6qFTl92RjUg1qivY33nnBODWpnoCwxxXMtaTWvzgnrWnZXBmGGODV1KSXvR2HCd9 +zWQ9cc1IC4zx71Wjk2nGQwFWVmHfFcz1LE2ls5WnJ5H8S9KQO+SRyPSkBYEkgcmmnoBMYYCOKqyq +gyc8mpzI2DnmoXUPwelKTbQ46MrEsvFPAbGc5NLsj3Hk1JsUd+tTy9Smwi3+uatRpIcY696gWHnK +mrCrMBnNUotENpjsOGGRSfMTnGRUoWRgOhqeOMqMkdatQuyHKxXA7kVOogH3u1OMbk8ClFu2Oma0 +UJJENpleVoOinFNRVbHzYqw1ttGdvFQMm3jFTJO+pSa6FhViHG6hmj2AAjNVtm40GI5znik5dECS +DBOeabjHX60wBlPDcUFXPKms5XLSAls/dpeD24pv75VNMVpSCMVN2OxJtUkY4NMZCOh709DjjFOJ +i43DnFVa+4XIf3g5FMCMTux3qygic4Bqylsh6kVUabb0YnO25nbeDleR0qlKnqDzXQPbKucVRmh9 +qtwaEpmLtUMRz7mpQC3U1ZKIpJxyacFRsDGMAGi1ynIrDepIBxT9khXO45NS7Y8k461JHEkg5OKO +VdQcupW8pyc7ulBi4PqKt/Z0HG7NRSw9MNjtUvsCYiKwGRx2pPMkXPtUixttA3Ux48H72TUtdB31 +I/tDnjrzSMZMD5eKaYzninhmUY70KyK3HKI8jcOv61Z82HaFxVZD5n1FTGMlWPAJIFCv0JdgV4vT +r0qRGQk/XrSLEMY74NR+W5Pf1qkk1qK5eDLjIprqjkZbrQilUyeOKhcqO3fAovYlItrAY7O9ZDnM +ZBP1Bry3Wj/xMLnjuv8AIV6nA6tYahGfveUGH4V5jq8Re/umLBVUoCW+lepgmrHBjFqj2P4348rR +vrcf+y14bLjccV7j8bz+70b/ALeP/Za8NlPzV3y6HDHYjycAelFFFIYUUUUAFFFFABSUUtABRRRQ +AlLRRQAlLRRQAUUUUAFFFFABRRRQAlLRRQAUUUUAFFFFABRRRQAUUUUAFFFFACUtFJQAtFFFABRR +RQAUUlLQA5cVKD0FRDNSDtUM1gSA9KeOffmoxnNSrkDPvWbOiJNGck/lViN+R9arLu7etThzgLis +ZI2iWtw6jjFMaRhn3qIFhjHTH5UAKTx1FRyl3HB2x0696Mtkg/nTQGyM+4p4FDBDlPpyKkCqcCmL +2p+QSeOlQ2UkOVDnrwKU8k+nSkHPfAFPyccVN2OwowMjHWgjJyKbhs56Cnbu/vRcYpJIHtSr15BO +aicn6Z6mlErgg9PQ0+ghzErxTckikd8kE0c/nQF+4ZHTHNKDkYPX1oUAc/rQTQ7gOxx68Uwhc8jn +IGaCTyB6U0ZPtxQvMTGMuenNRMMkEirBB7GmGPPPX+tWmQ1crsgHQfjTWgJ9uKulFHPpTSD0qlK2 +xLgUTABxUb249K0GXvULKTxzVKbM3TRmvb4qEwsK1TEMnrUbxfwitVUMpUUZhRh2pMGtAxCo2hXH +tmtFUM3SZSoqfyx0phTFVzIzcGN/d7O+/d+GKbTtvWkINMmzEp8U08DboZGRsYypIOPwpmKMUwCi +nBWPanCFyQPWk2hqLI6emc1KICMZ71ILc9DUuaNI02V2DOc1IikYqwITj8al8pRzj8KzdRGsaTvc +rAMRmmmPd161d8joce9PFsCSACBnODU+0SL9m2iiIORxVqK0Y8/nV6O1HynaKvR2/vWUqxrCikU7 +ezAXOORWhFbKAferEVuOc9Kl2qjD09awcmzVRSII4AvPQ04DbkntUu0/nSMFA59c1Og9hq/M305x +TfJ3k464z+VSIACcVIqMc46079AK4hHDEde1WI4hxgdKmWMsBViOPHajzBkKQ8jNTCMCp9gXGaUr +gjFK/VCIivHHTHNNHQ4BqRuo9utMB64707aiK7g8j8aj+bPHTmrLdDk96g+YAkdaVuxQw5x1qJyC +CamIqCX5Q2O9NICDODR16imKCTzU6phecUJgyJxgZ9zTBznpxj8alZScg0wgr14ouIaY+3404/Li +l5HNIfcc9aYFq3yB9TV6NmGOe/NZsLkEg/hVtGZuM4PrSH1NaKTIAHSrQJI6+9ZluWB57YrQi3cG +qjdodrFhd2AakAz1pijipAD1FaJdiGirLCG4Iqq8DIe/BrVCZzmmvEpHIoYigkrLwasJLgZzSPbh +j0qPyJAD6ZosxaF5ZN3FOyD0qorMv4Cl83B6U0SydnPJqNmPXPQUxpMg1GXA71LuykWEP41JnsKq +CTHNSK/rzmlfQosLweeaRuKTcCMD86azjHWheY0PD4GBS7zj1qqJBnHvS7z+VTcdiwWxzRv71V35 +zzS+d2FNMdi2rnOSaGk59qqBznJ9aGkPBpc2gralzzRikDlqpiUnipA3AFOMrg1Ys7gaMjOP1qud +y4pWcDbzRdoViQsKXeBVdmP6U3d2NLmAtBgDxRkg596hDDpS7/xFCYE26jANQlxineZxRzBZjm4P +1pucAA01jnHrTSRnJpt3KQ7cetRsx/GgkCkzkCpbAQkDAx3pDyTik6nOeKUHmk0FxB1xmnAZOcUo +VevenhTikloJjdpNPUEdKUIOPbmn4FXoxXGkHApPXmnFh0pDtz9aTEMOcHtTd2Dz+dPY8fSom55o +egyTeO1NZ+celEYJJB96ZjnHNCuIfuxj3pOSfbHSgDkVIB1z271SV2AzbyRSFecelSAZP0pWIwM0 +NaAQqpHJp+0YBP1oPpSE9qnS4CcnpQenFN4HNGRk0l3GITx9KQYBwaRjgcc0wv1ptu4EhIwSDTRg +cmoGlGMjiqz3eOM81LkCRfLIOevNMaVVOKyXvG6A96Z9rZn56UlNlcpseeqng1G02SPWszzWYAU8 +MeKLtitYvmU4PPQUm9iDioB2z+JqZcYHrmmlrcQgLZ5FSKM0gUfXNSYC/Wi3cQ7bnpUiLuzSKBwQ +anAwDjrTSuIYEpfLzmnqD3p4ABz600wsVZLZWzkDkVD9hi67a0e5pu3Ixiq5mLlRTS1QdhTvJXFW +toAppBxSvfQLFfyhznk1C0SgZIq0/AAHrVdyfwNTLbQdipIqg4xVGZRhj0q/ItU7jGBnvUNvqWkj +KusBT6YrnppPmx2rdvyVQ4rn5F+Y4reiurHLRaDCx64oAJNH+TTx+ldGxCVxQMAUMf0peo9BTT6V +KNH5AKDz0pVyDkClyB2oJsM6U4Yppz1pOfpTC9h5biozzTuQAaTv0poT1FUdqa2cVKoyOKYynPFJ +PUUloRHOOarP1NWHOKrvyM9q2gcdbYIvvYrTthk4rMizurTt/pxUVtjXCGxbA8elXSW7DIqlbkEA +d6u4wATxivInvqeiRyKartywqxK5Ix0qtht4Ge3NOI0SyEKoHWosjkHNSOCAD/OoBjd9aaWgEyk5 +HbHWrdrHbySqs8vlR92AzVRcZ+lKWO4Z5pdQZY7sASVBODUyjgflUKk5/DmrCE4ANZPuIMKAe/pS +gA49RilcAAYpoHJPtWdtRrYdtyD9KRR17joKeMBc0wnA445pdBjsDGOOakWNSAO1MA3de9TruBUd +ql36AKYVwDUMi4OBVs89KglUFvxqk9bEohjQE/Q1K0ZI7UItWNmcc4ok2BlvafNyKiEBV9wBrWdF +I/Sq7L97PpVwk2DZkXEmw5PTPSqE12cYXjnvWhd27MSDzmqS2qbiDmu6mo2uzNsoS3DN1qoz5rbm +01CCaoSaZKvI5zXXTlCxzVJSZVSUL1p4m5FK9hcDnrUP2W4yRtNaWizHnkiXzh2qZJyMfh1qp9nl +HVTUoiIA96mUYmsKsmXklJPrV+2bfgGsyAEFRWlEQASO1clVLZHXFt7l0bCMeg4q7b429egzWMJS +CMVdt5yBg1x1IysacqNcMoHXtUDyZJwfwqBXLHAPenlAFJPWsOR7hoP6rgmo92w896bleOaTcD1x +mh7AiypDEfrUm0YwBnPc1XjODVlTnr+VOJMindW6spyOuawpgbZwUPGa6d1BGTWBqEAAbv8ASu2j +K+jMWraktvfBxjjqOTV8TJtHze1cokpgkNXFvd+MHk1U6D6bGkJxludGknJw1PefoAetYUN0AGDZ +3dB7Uj3j4GDWDoM00ubwlZiFJHanGRsY6cVz0d7IvPep11BzzSdGS6D5Tax6L+FKp5x0qhDqK55/ +KrIvYm7VD0eqE4s0I2jXHrilkf8Au/jVNLuPjvVyCe0kBzimrbMzaadyWA55LcVdXlfvVXi+yHAB +FW444COGq4WWlzOb1BXdemKnExRcsBUfkx5+9zTvs+9cbq6IxfQybQ03iNlSlRtJDj7tPNqwPBqN +4ZMcDkUmpod49BvlxHnpQ0MRHXPoaQeYDyOKmEiY5Ws0nuxmfLAuCQcVAInxweorSd4Txim5gIIF +S4xvctSZRMUuBzxxThFL1q2uxqmSMHnNSqakxubSKGyQYOMinFCQdy4NaKwknA6VL5IweBWqooh1 +DFjQhgWXitGOKN8nOM1ZECEfdpREo5xVxp2ZMp3K0lsezVm3aOOA1bUkYIHNZN7DyTmiotBwepl7 +J3PrQPOQgYzWhbxgHcOvvSvA2S2O9ZRirGjnqUlZj/DUxKj+HtVhYyBjbSHHORTaSFfUrrJGoO4d +ajdt6u6oSqAFvbJxUpXOcLULoewIBrOxasSRMu09frTSiMTUsEWVIYVbjtoiOlVyCcrMppBGxwWp +Gto84BrSW1t89MU1oIgTnODRKFthKepS+yKuSrDpzSlAQi91JOfrV37PGcYOMimGyH97vRyO+gud +dSIRn170+OMhuRmpBbOOhqVIJQeOlJU5NDc0NIGMEVTkIXover5WQde9Up0l42rmk4tBFixuPJu8 +j/l2k6V5drJP9oXP+8P5V6jDBN9nu8g828leXazn+0LrP94D9BXo4KLUXc4cY1zKx7R8b/uaN9J/ +/Za8Nl6n1r3D44/d0Yf7Nx/7LXh8gOc9jXoS6HFHYYRj06ZpKKKQwooooAKKKKACikpaAEpaSigQ +tJRS0DCiikoAWiiigAooooAKKSloAKKKKACiiigBKWiigAooooAKKKKACikpaACiiigAooooAKKK +SgApaKKAHinAUwelSDNQzSI8cVKv+NQjOanAAFZs6Ikm7C1IGOfWoByMVOOBge9Zs1TJRtPsCBzQ +owT6DpTARjjr2p3J4I/Gs2aD+mT19KAd360mMgChcDH45pDRKGwOadHgkAnGT1NRjH8R7UFlwcf/ +AKqlopMsTosbtGHDgHG5ehpAwz1+tQ7j+VKCQfbFFhpk3mA8H0pu4c+tR7sk544NHOeM4pJAx7MM +8UnPHNMB25xUu5SPyo2AFByafg9RxSbl6g804sNuM9etC8wsNZl/wpvOOOKQjOaU8j8cUE2FwPXv +R9PpRggcfjTscfWi6AAAwyeTnrRxnNPXGOuKaNrHg0rhYYT+FIPXqetO+TkU33poBjdc0AY6d6cc +UvyAdM00xNaEZxzUWO5HU9alJGOvWm446j1qloSV2HTPHpTCP51Z29cfnQY+ATVqRLiUdnPpmgxg +4HbvVwxjP6UvlDFPnJ5DNMXUUhhbvWosKk4zThbhty4+6M/hT9qT7Eyxbk/ninpbDnPTFaIiC54p +MAKOOaTqsaoorJbD+7Uwt1AwB+NTD+dO+QcBuetQ5stQRV8of409Fwc4yc1OoIJxxk9fanJHkk49 +6TkWoFfYpIPvipBCM5U5U5xVlYkzmpUh5Bxlc9DUOZXKVkhy3A/+vVuO3I4288GrKRBTxjirKoGx +iocrjtYrJCBwasrEu3pjHeniPBJp67gTnkYqdxiBeAB70pTHbpTgMH8KXk/lQ30Aj75x0NNZc8jp +mn4POOlKuD1poBkaA/jVlEHNIqcgCrMQXNNNXJYgX5QafjHJ/CnBeM5oIf8AKhrQBxI7/hQ44JWm +D5ie1DdaS3AjfGPyqM4A59OaV2BOO1N6+3QU2MQkMMdKjIIzTmxkH8zSjB69aSu9QZEarz4AJPNW +nwRVeYfL0prcTKakE81ZXByfQVXZSrfSpUfjniq0AHBzmowBnLCpGOetR4Oe/FLlAViMY9KbjOcZ +9Kcw49+1CqxxinZCuC9v1qzCRmoNuMn6VJC21hQWjYt+x/CtGJMjI7VQtSCorUi29KuOoNWHKmPo +akUAjHvSoM8VIqH8qqxNxoHTvT9gNPAHGRTsA8UMm5GIsYNHkZ7VYK4xmgcD2oIZTNtUD2+enatE +4NNC/nVbCMhoJBmqzB1znmt4xA/SoZLNTmloxpmLv9alD4AqWaybniqzQTK2ahx7GsZIsCU9qCx/ +Oq3zg4A6Uu5ufzqPeQ9B5PIpctn8Kb97rSjdg8U7dQuNywwBR5hzz3pfmAIA5zTWRuh6nvSs7BcU +yfj0p4buaiCMMk0YP60kgbJd4BGKesoVlY1WLc1GZOeOtS2wNAzoST601pox1rLe525Ge1UpL/B5 +btTcri5Wbr3UYzzTPtIPQ5rmWvyc4ap7G6dpBk5B4qdbF8h0fmnAxTvNOPwogjUrz3qZoemBW3Jo +Rch80Y570LIT1qRoRjgdKgaJgankY+YkD9Dml833qqdykjtSZbjNDTQIt7yR1poY1ACx9vapF9O9 +Ta4x+QP607tTcDqe1OycCmtQHgnjJp+fSoiT2pNzAAUNhYsZ/KkZx0FRFxgjNMJ/Klcmw8tx160g +b86Zn1p2DjIqUmmOw7JbvT8cUxc4p2KtMli9vp3pQoyKOcCjP5U9gDilViePwpMgio92DQ2wSJSc +U0uuMH1phk4yfaoTJk8Umx2J964x+VRlxzULNk/SozJjqaVx2LJc4wKiMgGearS3HyjBxzVSa8RB +96pb6DsX2mx1PFVpLoYPPesmfVEUcNWbLqZYna30o5W+gWNmW9A/i71Se5DZIasprpn75p0btVcr +W4XSNASMfrUyEnr61Vjq9CpxyOc0kDZOnBBHFWEwenWoVTnPSrUaAUrCJEzke9TqPWo0Qj8e9TLm +mriYqqoOaeAOvajBI5p4Xim1diFTqMelSLu3EUxRgEd6eB0780ICXt60uOKYjVJkEcU3uAg46Uuf +QUmKXpj2prQBvA4pjHAIpzHpio3HNTsA1iMVXOMtn61MRkVXkBJxStYaK0zNmqMuctV2fv6VnzkE +HNS2rlIydQkyhUHgkViMFGMEHIrT1A4yOx61m4znFdFLRDaIzgc0vSkPU0qjrWxKTuL6/wAqOPXt +RSHP9KQ3dEgxx61GSfalIxxTOpxTSBsUkDt9KQc0rKc800DBNMjW470pM85pT+fNGO/agGOXHT86 +CcrSDinMq7Qcndk8e1Ib2KzVWfrVt6qP1raBxVyz9iu44Ibt1xDMxVW9xV22HT+VZ6TzukcTuxjj +4Vc8DnNaNquSp+lZ19jbCmraqQRxWky/Jx171RtsArjnnitIkbf515FR+8d7KEgwAT0ph2ZByDn0 +7VLMygCoFHNUtikOkPA+lQgj/wCtUrkDNRIRkYHenHYB4IBIHPPNOHJGe1G0EntxQikENnpRoBZU +nbT1LE1GpO3HYmp0wKwbGxzE4X9aUAGg4IyKUdOlQ9hDQDjFKOoGOvNOHI468UrcYzS6DJFGMZ4O +alVl3AelQKck4qRFBbP5VL30EWU2jJ/KoJT83samAI9KiJX5s00+hIxcE8VaHTjntUKJnkHtVhUx +g9fWm5aAxjAbc4qrKVH+FXmUhTmqUsY31UBMruFbnFVWgA5HrV4DOeOtNMRK4rpUrEMzXwvFRsQR +n3q1dW5UgkEcVVMRAHPWtE76hZWI9wAzjgVC8qE/dq35eRtAoWyTGWPOO9PmS1YnFFEsrD7vWmeQ +X7c1pi1tx3oZoUGR70/a9gUClFb4wfzp8h2DA5pxlBHB7CoGJJ5oV27s1SsM3nP4VPDPj9KYiKe2 +KHiGCR+VN2ehV+hfju1GNvepftTOSM8Y6Vlxna2KuIynk+lY1IISsWQ3PP4Uu4ZPeolPTFOwG/Gs +bFeZbRhx74q5GU5I54qnApxgHnOKtJkN7k8VGhLHOO5HHNVLm1Do2V4Paru4cetSOBtORWlOVmZT +WhyQh08PJDdAiNzkSLyyEZ7dx61mW0TCVcngHjjP+RXRT28Zd271TSFQ428cmu6nXTVjCVJ3uh0d +hcPnJzkk5qKSwnXpW7b4WID6ioZ5AuRxUSqWZpHmZzzRTJxg+1GZB1BrbMaEZ4pTFFyNoPvR7VPd +GnvGIs5U1YaYxHaWByARg1els4SM7aqyWaKuRTvGQKchqXxHOasRXozkNWebYdqWOHk845qXTg0V +7TXVG2t9jHzdDVuLU5F6vxXPGFx93tzQizk4Den4Vk6C3uNzjsdYmqLkZbt1q7DqcI/irhw9wh+Y +85p4urhMZzT9nNbMnlizum1JAB89Kuop61w7X7kLnuKcuoSZHOOalwqbi9nGx3AvUPSonuQc1yK6 +nL0DHrzTv7Qlx94jvQ1O1mCpo6jzF60qyxd+tcyupSrwWGP8aUao2fvUrSWyD2Z1SNAT71aQJjj1 +rlY9WXAz61eTW4wAD1xTVS26JlSfQ3izL0p25iODWIusI/U1ZjvYjghxiq9oiPZyNgOQBSNN6Diq +a3Mbcbx0zSiZfUcVfOtiOVlgyA8VXmiWTnpTGvIlP3hQb+2PBIyaOeL3Y+SXRDBEirxUZzkY4qbz +IHzhqaTHxilo1cNeoqgEfeqF2C570/y0YfexUTxhT1patXGrXBGUclcg1HKQ3RanETAYByKTYeva +pcXsVdCQY4GO2DVzCDHHFRIFReBTdz5rXZWRG7LGIjSeWh79KFYYHFSbgB05otdCIxEp/OneSfXm +pBJEAeKQSKDTsguwWPGPmqYYGcmkUxHr+FGEqlsSxrMG6c1C8bEirAjTPWk2Y6HikoX1Y7oYQVtb +s9MQmvGta/5CV5zn96a9kmEn2a954Fu1eM6xk6hef9dWrrw/U5MQtUz2X44f8wbn+Gf/ANlrxGTq +frXt3xv5bSB22TH9RXiMg547muuW6OWGxHRRRSKCkpaKACiiigBKWkooAKWkpaACikpaACkpaSgB +aKKSgApaKKAEpaSloAKKKSgBaKKSgAoopaACiiigBKWikoAKWiigAopKKAFooooASloooAKKKKAH +CpE7VGKkXHrUM1gSrwQcZweh70//ABpi0/jrk1mzoiPA5FPUnBHtTRnpTweuOKzZohQe3PJp+9QO +TUXXP86UD+9zSsUmShgckHvTi/68VFkKDSbxkfhipsXcmPOB0FG7H+FRBhzknk08ke9FhCsxGfXv +TvMOBjriovvZyfwpeB05osgvqSh2z/s84pFJPQ5+tMGe/TFPB6NnrU2GmOG44xThgcd+tMXr35p/ +IBpMEHzE5qUHJPH4VH979KcMg5560hj8NgZ70udox1zSZ7k9etIzKQOeBSAVc5574p5PPFRBunPN +LvyMjtSYIecjmmgg01mHrS529DwaewXQ4kD3qMv2+tPKqVYlgMdB61FjB9cU0hXFyQPrSbwCRSH8 +6Qc/nTE2JuHYcUhJz9eakKAik2469OtMQm0YGOMmnbSOp54xikGTnjpninbTgZPShsaBcHNSIpIx +0FNVcZPJqxBMFDqR1FS9NSt0VcDdgHjrin5B/Sk2EbjnBob7oHtQKwEAkH0HSmgA4o3Mf8adt9+u +KPIYgQ804CpEXPHrUyQDPB7VLZSI1jyAcdKsRxYyeaFiYcY71aReAMVLYeZGkAHYVOkYAxUka4xU +oUNwBzmluDGqmBShTzilOcY5pyAg/rTAcOgBHpS9ulIxxlsUqsG6VNgH8EGmsvy8HnFSYIHNNx+O +KLWAixj2py7SfzqQKcetGwKDinvoAiAAnmp48FhUYA6mngEHigLFg4GKZk9qjJYdaUvz6UutxWJO +x9ajY9807O7n0pjCnoBGRnJ96jyRxnHNStnB5Iz6VEQcAE5OOtU1oT1G4wwqU5I4qFQ2cZ4qwq8H +sAKm3QbIXAyKjKgKferBX07UwpzmmhGbKu059aahJb2qzOo5JFVMFTk9PWqGtiZh83PemknOAaDn +g0ityAaSEIff0qUYwAKicc47dqfCf6jFO/UAIHT16URnEg606QKvPXApqt0PNN7FRZtWe5go961o +eCaxrFvukVtREYGKUe5TLaY4z0qTjtUIINOBIzWtzMdk89qcGGaYCKCeaHYRMHUkD0pd1Vt34U9X +PQ0hNEjN79KcDVcuM4pyv2p3JsWBzx06UHB4qv52PemGdeuaIsViwyqageFGqH7UvPNRfa+pqeaz +K5GPktUzxULWhJo+2DJpfti9TSc11HaQi2y9BThAozR9ri4OaPtcXc1SnETUhfKHAppiH601ruJA +ee9VpL6McA1LmraDUWWGUE8VE+1VOe1UpdTjB6/Ws251ddpGe/NRz3LUGaE06qCaz5rxRnn2zWVN +qLHOM46VSlupH4HPrSipNmnKkjQnvTjCn3NUTLK/HWlhhkkOSK1bawBPK9hWij3JlJJGdFbyuOc8 +VrWFqwKnnir0VkqAcZOeavwWwHbA61VkJSLVopAAPNXulQW6be1WcFiMCjUTGBck5qN4wDmrCjbw +KYw70umodSnJGKrtEcj1rQYYyD2qB1FJhYq4J6jvUgU8UpHSl46VC7lWHAA9RzTsZxgUg60496AG +lQB+FM6Hn0p7MuBmoztbkelHoAmVoLA9aZgUDnHFHURIMCpRgDB6VDuIpGlAFFxMnyAfY0u8flVM +zqB9KiN4nPNJyVwszQMg/kMU1phwM96zmulzye1NN0vXdRcLGg0vHWommHbrWebxcHkVE1/GAeaL +jsaJlOM1B54zjNZc2pxKDk8CsubWAuArd6Em+hWh0b3aqM5AqlPqUYz81czPq7NnnvWdLfSNnmtI +0JszlVhHc6O51hEyFbrWTcao7/xGsh5mcnJqPdXRDDJbnNPFdi3Jdu5+8TSxz/eBySRx7GqVSxdR +WzgkjGNaTepoxNkj044q9FjjFUYlyB7VpQL69xXJUOyGpcgHQE1fjyB1zVWNOnGTV2FQCPSsGali +MA9e1WkXgZ61GoHXtxVhAMDNIW44DGOpFTJgA1GOnrzUyUJ6gOXPGRUgXpTVPXipOSRgVVhAR+NL +gEUp70q8cU7XFewmCOKcMY4p3J5owOPamgFHpTGz196fwKY3qKGluMjY9zUZXcc5qbHSo370mgGM +cCqzscHNWGI/Sq7n2qGxpFSdgR0xWdOQK0ZuKzLo5De9TqUc/qDbn46VSGcZqe7f94fxquDkE11x +XuhcQk9zSqaYevFKD0q+gJ6jzTevWlzmkYjJpIb7ikcDtTcjNKOR15pB1zmmLfYGJ70mDzTvrSbh +3pidgHvSZpu7mlGc0WIvdjxS/N60biBnvzTc8HPFIpkUneqj5zVqQgD61VbrW0Dhrsltx8305rVt +cEjB5FZcGM4rUtuuenSsa504Ve6bVsMEEVdJ4x7VRtTyo9qugkkfQ9a8qe9ztZWlUcd/aohHzu7V +aMYyCfXpTXK9MYoUh+hTPcn1psf3h6VPJjj0xUaDoO1XfQY4hmJ7U9RtIzUwRSmSOaaqk+9Zt6AO +Yipl7Y6YqLGePepR6j6VnJASZwKAODkU4L68cUqZ2n+VQ9EAmDwR+NLxkE+nNPzkgDj+lN25JFJW +YXEzycelSwjP4dc0xQM47VNF3POam9gH8gU3HH4U/nbTDn8qa0AID1q4mScfjVOMdPY1bUnqPahq ++xL3HyYx+FVDFuJPYirZ5BpjLxn9KqOiJKixHJ9BVlI1YcinIMk1YRQPYVanoRIpXlqkoHsMVnNp +sjDjpWy4AzUW4DjpQqsojS0Mj7BMAcDpVKeC4DYPrW+8yg4z3rPu2yc1aqNlJMy1ikzgnFMaHGef +xq7hcZPoahO3Iz2zWqmPUoMuwYpgxxnmrkqgqcDrVJ18s5zW0XcaJhhenTHWnA9j0pikmnDPGaTK +GMBnip4s8Y5qLHIx3qzHx/Spm9BDyMEAMDnk+1Sx4JGfSmDLkbichcD2pQ23J/WsZDRowjgD3qYA +A561QilII9KtRyZYjHtWNrCdy0gJPFSv90k+lV4y24jPFSTlhET2xVRMpIw7phlvaoIWJJ471NMr +ODjjA5qjHI4kxjv+ddMFoU9jZQ4jz7VUclyB1qZT8h96jVfc9eaTaJirDyCgH4c01WJzipSOAM80 +6YWqP+4LFNi53dQcc/rSirq476lWVyuR37VE75X8OadOVPPOaiPC1aWxRHk4x701GVXxUgBIyT3q +AfLIc856VohFnPOOvfFPjVcYHrTR1/DrSoWBzUahZDmXaQe4HSmMhP8AnpUrZ4qTYNoyKHJisih9 +nBYdvSnSR7j90DgDj6VYeMjnt/KmNkHk8VfM7CSKxjGDwaZJHIRkk+gNWSD9aUROylsZUYyfSmpD +sUCjjFQs0oOMmtIp1GO4oESvgYAxiq50S0zODyJjGanSd+M9eBV9LLcRx2NIbVVJ4ySD+dNuLEpS +K8dyV5z+FPF5LgndjGOPrTfsxyTSrbkkDnPrUOMGWpssRahKP4jxVtNXkXcrN8pB/A1R+zhQQOcn +rSi1Zvl7dTWfJC5XNpqTPeyOOGJNRrdzEgl8AHkmopIDGoGTzg00qWwFXGQARR7KKDnL0epTpyGq +wusyGseRXUMhGGBHXqKavTgcij2KDmTN2PVvnzmrJ1KAjJb0rl98ilwO4GaaZJACCKPZPoL3Tpf7 +Y2kKrU8auD1auTEr4GeKkWRh6ik6Fh3gdjFqseMbutTx3W9uG69K5AOwGc9uKmhvdmfmNLlkiXGL +2OzTeADnNTpO4HSuTGruqj5s1KuuyL7+tUpa6EOk2dUr9PlpxePHI5rnI9efuvpUx1kHI689faj2 +lugvZM3fMjx70u5MVgf2wv5dKcuswr1qfaB7Fm7kevrSgLjlqx11OFz97Gaeb635+erVSLJcJI1J +Qgtbvc3BiYD8q8a1fIv7xc5HnNXrBniexuWDZADfyrybVznULzHQzNXbhdY3OPFKzR7J8bv9ZpHq +I5j+orxKUfMa9r+N7DztJX/pjKf1FeKSfeOK7J7o44fD9/5kdFFFIoKKKKACigYJAJxUiW87pvVf +lzjPb86AI6KDxRQAlFFLQAUUUUAFFFJQAtFFFABRRRQAUUUUAFFFFABSUtObZztz944+lADaKU7M +LjOcfNn1pKACig7e3pSUALRRRQAUUUUAFFFFABg8Ejr096SlooAKSlpKACloooActTDFQipFqGaw +ZMuOKeM1FxinqTxWbOhMlx609cHpxUWckH0qQE44zwKhmiaHEjr19qTsKaCeeKAeKVhpj93H1xTQ +2MZphY9qM5/CnYLsk4J9OaXPTP500Z4PvS7+Bn1pWBMUZ4/Q0mRx6YpQSMZ4GKa3OQO9IGx+/p7U +qnOR7VGFOOfrT0zkEd6GhpkoZs5p29gQPeomdhnjHalBGM9+OaixSaJ13EjGOKcrEnGOah3kEEcU +u4/pSsO5OeSR7Emo2OeOntSbvl46UgPT1z1osA4cYx2peMe+c5pN3+TSY65Pel1EPABJzQ3oKbk5 +yD7U4ZwDxQxi9efQUwg5+hpc8k9utIA3rzTEN5qRf9nvSYHcfjTgAOnrSAOeme9GCfr0px+bgfnT +gMdKLhYaq4PNPKg8+go+8eKd2PsKnUpJEecAY9aRSTTsqDg+uaUJt5HJ5pXHYbnqMdKZtBOean2H +igRk89CKYEIVsg1YVR3oVGAJJ61KiDgGi4WGhPwq1EnGe4OKRVyee1TqOOPrUNDDy2z9etSLGCTj +tTk3dTUkY+tElcQvQDFLhVxT8GkC5wfQ8UWAQnB9s0q/Nz0pDnJp6/N0A9DQ9Bg6kpwOoxTERkAx +Vj5himdyKXQLjl68emKOnA7+tIdwHXimg4Iwe1DAkHKk+tKABxjtTQWHvkYqUcjB4xxRewWIyCDn +FOBIAzjHWnDgkUqqOOevShCEyM5IpMZ69qU8e4oHtxxTWu4C9D160rcjr7UzIAFKcsBRZPQTYxsZ +HpSMoIzmlYEgdfSmAEZBpeYDfXPBzxUqfXrTSo/SkzgrRcCbio2PJ49qeDQe2BxTFYpyoxBGOMHm +s+TIbA4ArWZWLAdqpzoAad2xplVcdWp2UBprfKMUgyOvWgY/Pc01Btb9aAc4z3oOAQCe4p9BEjBT +n6U3KkDB5AoKnr71HnbkUPYEaNlKAwGe9dDA/H1rj45SrDHat2xuDgDOaNi3qbyNwPXNP3g8VV3p +8uxiRtBOexpwervYzJwcZFLu4PaoQ/ejdyO1PoJk3ytSE4NR7sU7OaGxCkjFIH25oIPWmNkD3oGM +klxUDSE5wabIxBoVc/U0eY0MAJOetIY2yOoqcbQMetKqgnOelVypDuyo0ZAPrUDK3rWk6DGaheIc +jFQ4RBNmVI0oBwapSXM4zgnNbbW+ecVVktFJIAxS5FsVzGJJqFxjHPWoTd3LE9a2W0wNnI7Uf2ao +6ij2UQ9oYLG4ck81A0Fw+4muo+wr6UGwB7dKpRihe0bOUFlMxz7VetdMbgkV0C2C8fLVmO1xgY68 +VWiE2zOtrBVHTjNaUNvjgjgCrKwAcVZijAHPNDt0JsRJAOOM5q1Hb4qRFHFT4GMgVKAi2BacDjgU +4nmozn9aTY1qBbrTN3INKeM5pjHgilcoWdwzZAwahxj8qXd60wuMjNJ26h6CHJxkU3GMnsKQtk57 +UpORiluMUkdu9ICeaaTxmk6AH3pXVwuD5wD70mRjAoLe/vUMkip3ppIVx5PpUbyBRgnFVZb5IwST +WRd6xGAcGpeuiA2ZrpU5JrPn1NQOvSubutYdx96sqS/kb+LqOa0jRlLUh1YR3OrbWE7t3qu+roWy +G6c1yzXLk9ajMz1qsLfcyeKj0OoOsqc89qgbWn9cVzvmv600yMatYaJDxXY3X1ckYBqq+qTHgGsv +JxSVaoRRm8TLoX3vpGzknNVXmZjmos9aK0UEjKVWTFLZ60lFFWZhRSUtABUkXWo6fH1pPYcdzWtg +CAM1pwY4GelZdv0HNakAOfeuCpuelT2NGFRgEdRV2MHHr/SqVvx06VpRZxxWO5oyYZxViMPx9aii +zVhBnnvxTa7iQ9Qe1SBP0pFXrUik8jrSSHcXHXFSqMAGmLknFSKcVXmICCck0gJ49qdnIpcceoo2 +EKuacc44pBkDinFTj1psBAO/tTSoFO+YggU05yQTRe+gxhzzj8KibrzUpzx+VMYZ/DvUsZAQDk54 +Haomweamfgniq0mOaloaKs5BP4dayLtyFatOc461j3xAU9TUrew7HPXBzIfrUeR24p8vLe5qPgCu +1bC2GgfhmlwQRS5p/HXHencEhgABOaUDPJpG68dM0o6fSkPTYDgAijOaDSDaB3Lfyph1AnjFRn3p +7ZApgpomQbT1pwFO/CgDNFxKIu3IHPao24/wqfBAOahkGDSi9RzViB8fMGByBgfX3qsetWHzVc9a +6IHnVdyxbhTgAHOTk1rWwxgc1mWnUVsQAnn0rlxDO7DL3TUtBuwOc1bOEPPpVayO1u9WpVycnkV5 +kt7nU9yvJLzjt61GTxx68ZpJMg498Ux3UAgU0ikISW5p8K9CfWoFDZyD0qymc/N9actBsmbge1Ro +wBwakBGCKYoBIPeswRJ3+vSptvFRDjB71MCpx1rNsGB4p8fIz3NRnOR71JGDgntSewEhwDz17U7j +kjnimMM4wfrT04yM9RzWe2oxB0Panxgnmoy2OKkiztyKLXE9iXopHX2qLv15p24lfSmNzjFO99BE +iDn096sxnsfXFVkxkEnFWAw4x3pN6itoOLDOBQSS2P1phxuI7UDA57dqrcTHoDk+verCP1BqrE2S +QfWp8jBp7ktETtye+apux3EdqlkZiSei81VJ/eZzn0qJJmkUI3DVWnPBNTu449+agkYEHNXHR6DI +OSq4qBhgn2qdXHAHcVDMxByK6Fe9hDCcZJ61Un25B7HFXPvAVBOo2n61rB2YEEeTTgw6Hp2qFcgn +FOUkmtWhok3cD1Aqfcy7WHGCKrZAwanUnA/WokgJ/t90OsjHjoTmmrfE/fhRhk8gYPP0/wDr1AxA +OSOKryzhMY9OacU2DsakTF/njy0YPPqv1q1HKFYZ71z8N68ThkYqRyCDWrb3/wBpYCUByTgN/Fn6 +/wCOampRXoRzM11kGRjrRe3BERyex6Vn7zkc80l3MxiIPOKwiugNFSSYjOe4yKitlDyZ96pM/BGc +1csFbeMk4IyPeupwUYiexoZIQjHUjmpIUBP0pZQEQD6GmxMvUVg3oJEzquCQKquTye+aWaYgYHeq +rysAMmiKfQpLUSXkj5hSkALyevSqc07Z56E08TEqAa25HYCwQFGQeTUIA35PTtSIzECkJ+bimlZi +LDSIMAcVGkmGweKY2449aTb84AB9MUWVgLQk/AVYDAgkHOKpvjGOlXLe3zG00rhIlOOvLH0AqOW4 +N21IJJcHnp3qBJs9OT0xUl0rgbtu1Wyy1QiKh2D5XAOMf3u1axgrE3SLqyDIz2HFTxzum/YSodSr +AdxVNHYjgelSxrnvjn8qnltsVuTZQgjj0GaSJowaTBwR6U1QoUDHOc5qegaGpDNB3FRyPExOPWqI +apFIOBSsTyol2LimYG/A6Cmbm3etSDBYZpbbjJlRc8c5p6x89ce1QGRY+AeKmj8xzuzVLbUl3Fkh +DgD0NRtaDPAwO1WkDKQ3B5zg96CzVLmGpRa1IO0jmoFjUE1fkZicGoQhyT0pxbHcpyQjORTTF8nT +vVwKMZPc0FVycenNXzAZ4hAqbyFxjbyak28n9KFOG5p8wWGSQKB16ioDAcFsZ6VeYLIO+c08W64B +NDlYRm+We/A9qTYePetOSJm5b0x+VQm3I49KfMguyshcE5zU4udo/Cn+R61E8TZGcUrxYw+0rn5u +tSrJH1HcVX8kk85pApGf5UOERqTLSSKSRmoTPtbGSaaWUEsvAPamEbskikoIfMzatpf+JRfvu5HB +/HFcJqW5b65PfzWIIrs7YqNO1AHuowPXgmuL1E7b28Ck4Mrg/nXfh0lCx5uLbcj2P43EfadLyf8A +l3k/nXi0mM17N8bz/pelj/p3f+deMyYya6p7r0X5HDT+H5v8yOiiipLCiiigBKUljgE5xwKKSgBa +KSloAKKKKACikpaACikooEFLSUtAwopKWgApKWkoAWikpaACiiigAoopKAFoz0pKKAFoopKAFpKW +koAWiikoAWkoooELRRRQMSloooAUGngio6cKloqLJgacGqENxzTwwwalo2jImD8/yp6uxFVw/Sng +8GocTRSJSxz6009ajLUFhgUWHzEhbr37UbjUQalBPNHKHOTBief0pdw4z2qINwPalDilYdybJbA5 +pwB+uKiU4HH407ceo7damxdyTj260uQKYGA7Z60f5NTYLjyR3wc805SMZqPOQAccE0oIA6UWGmS5 +zk+lKCCPQ4qME9R05p4yQO+eakdxSRjA7YpRkY96jB2g4696kVgR1xmhgKSeB+VGWwaMbm+Xk9fw +pByd3alYd+g8YAFOJ4yPWo//ANdLkcfWk0MXP0pw4NM6kA1JgdPagQox09BS4OD15pO4K88Dinbg +3QcjIP1qWPcVMKCc0o2HGDSbAO9KBz9aRQnJ6cU8AEfhSso7jrRjHGD1/lRcBNo6+1PUEEAcmlKg +gU+PhhxnikykxMHJqTywQfWgqp4FSAcD1NK7AhAYdamVR19aNpI6cZ696mAAxTYDFVgCQc9qmQYG +aTaO341MqnAFJNdRXBASfr1FTRgde9NGFHHXNO6jI7GjcCQMRkk59KFOSD681HnPBp4AwD+dJNoT +FOCfxoAIPB70jkcYp/biiSuNC7yMAjpTeTjNO+Vj/Ok2nntQ3fQaYvUEEfSmAZIAp4BAFJwDkHrU +6hcUNzhuefyqXdwM4+tRHFHOOT9KeomS8An6Ugbqfpimc5Apcgd+OtJ2GSAlhgHrSEkA57GkikwT +kU1zk9PWq6CA9P0p4yFz1qEbvyqTcRn6UgY7d7fhTCobBz1phLZ9uaVeMD6GkBIAOBmkK56DgUoO +MDvTugxjrTeiEtxFXjHvzTguOaVTT22g4oW9wfYhI74qCZFbt+VWCGBx1ppHBGKq6JMmWMAnAwah +ZWA7+laU0anI6HFVHQDAJz1qrK40yrllPrSE5x70+Uc5HOBiomPIzUsosDOBnvUUpJ+o7U6JweO3 +NEowWIppXJvqRK3PNado5yMHpWSoOfQ1oWr4YDpSkUtjfglJHNW0cE+9ULb5gCeKvKq449RVIlk6 +gk/hT9pHakQciphkECrRLI9mf504CnkD86TBGfrU9bAG08DNRupwfXFTYxQcUN6DM6RDnnvSovIH +pVl14zioNu05NVEGI6n8+ajDkHmpnYYqrKSB71q7NAnYnLk8imgj681VEhGRmplJ49/SsupaRMAD +2pPKBB9qcv8A+urEacVW4noVhAME4prQZ4NX9i4qMoSabITKXkDOad5S+hFWto6kYqPGKmxSI1hA +qQRhSBinLz9Kk4paANVPzqUJxx+VIGA/Cn71o6hqHBOaXeQOaYWwPeoi1JsEiZm9KZvNM8wgE00u +D9aSZViQkHk1Ez4zzTGeoZHJ7UPVDSFMnOKiaQjP1qN5MZNV3mG08+tQMsGYjij7QB9496zGnINV +JrojOTyalXBm212inG7IqFtRjXq3rXI3OqujEbu9Z0uqzEkhquNGUtSHOK3Z2c2rxrjB6Csy51wY +OG6Vykl9KxzuP0qu07t37VtHDPqYyxMFsbNzqzuThjWXJdyN371WLE0ldMaUYnLPESlsOLkmm5NF +FaWMW2wooopiCiiigAooooAKKSloAKKKSgApaSloAKdH1ptOTqKT2HHc1YMDB9K1bdiDxxnjNZNr +0BrVtxjH51xVFdno0zShOOT61oxYHIPOOazYMEqD+NaEPXisWaF2LJx7VZABOeOarR7sVYUHjnqa +V9AsTjNOVeeaaAeoqVeucUdB3HhBkH2p2M5pygc0mKom4mAVpwxxntTu2KTAAFIQKeDTuSKj+YZz +TxTtqA4ccUw4pwwOKac9aPUYz/Go2OBT8GmNx9KGgIZDxkVWdx+nFTykYqnKSBk9s1nK5aKcz9qx +NQchWzitWc5BJODWLqDDBHfpSi7spIxpCSxbPGaRgcU1sZpcniu0kRSM+pNSdhjOcc0wdfxp57fS +kxpaDCCaco5pO/XNKOPQ0MegeuOKUoRg8cjNGOvHOKcMc8Umx2I2GPSm/Wnt2plUiGAzSjrimnOa +UYHAoBMk/XAqNxnk07IH5U0kHrQglZleQVWPWrMzZzVbvW8Njzq/xFq3JBGDWxak4HPHpWPB2Na9 +rkqK5sRsd+G+E1rViSKtyZ4Heq1nhcZ71eZAQSe9eXLV2OllB4yRk4zVdhgnPc1dfauQRVWTOc+1 +VEaEU/8A66dHjPJ/Cotw4x0zTkOCT+lNrQdiYnAyaVGyeKhYtg0sZUNzUuOgy0pJwT9Km3Ljnr3q +urdBVgAEH3rLQTuId78np6VKp2ioxTlAI49azGShwxAHBpVBySahBIbOKlU8896LKwC9Bk9c1LFg +qcVDg4bHUGpIuhJNKXkIdkqpB6VEH5p0nzLx2pm3C/hRZIETIcipw4jKtgEDsao78YHvUu8cD2qG +mgtcnMhZtx7mkaUZx04qAttIqIz5yT9KYcpdjlxkZ+pp/nDnms5JSDipUcAtRqDiEsuGxVYuwcEc +c9KRn+Zs9KYZBuAPpWiWtx20HyyZIHWopG+Xn0pJSueKaSDkHv3rRIRFGwJps2c5Hc05F5P1ptwc +DPX0rVfEK2o1BxTZQ2D6U2Jix5NSyjA/rVbMdjO5yRUijvTCpDd81KoLY+grdvQBFGTUoAC8MOh/ +GmmPn2PWpVUOvIPI/KpbVhPcpXU+zC57VmyTbgTu5BxirN6hDEHr/jVARsdxABAHOfeuyjBWOOvU +lshVlOeK0bOUAgE4rPWNlGSOtWrcnI/ziqqJNE0ZSvqbYmbHTj1FE7nYcelRr0Q+lLMf3ZI/KvOs +r6Hb0Mlieh9TitTS9zsMnOBhQew9KyW6nHNamkElhj2rqq/CZmvdqxUdOKqQ5GQfyrSuUJTPp3rN +jABOOnSuLoUnoR3bNge5qHazL6067YZANNic5CliF/lmtEvdKKbht4xTtr7QccZIFPYZfiickAYB +GMdK2vshD4cbKePv8jGaZbMoHTj3p2fm568YqHuJrQnKqSM9aY64anbvmHPWiU+lK2ohHxgEfjUy +YZBzxioWzs5qWPoAOmBQFxZZCygEhlxjBrOmSMncPlZTnB5BrQ5IIxis+7RgDV0pdCWh8GM7c9Ku +oi4B4/CsaCTmtWF8gdqKisy1qTKoY0u3apAGKRTt5Ip/3uayExqJ1J4xTlIibdtDAZwD3+tOC8HP +HrSsuACOeBRcCIR9X6DOAKa3y/NTz0/Wqc045Xvg07OTHsKz72VfcVo2+VGO1UbWFflYuGLDdgdu +e9aS8dOBzRNfZJvqSM5AOKbl1UHqKYXycZ6UF+oPGQR+dZoBjbmb6HNKxYAdM96VVKgD3pxG4qT1 +Oc5qlZie5GBxyKaRjIxUzkDGOT0xQ3G0jg5zinuBWK8bqY0e47vWrDquAoo8sIAO1NDbI4UIwG/C +rG4cYqPA/KpxGFGeM4pN3YtBrEdu3SmhO5560uOpx0NBJXr1pbBYa6jBJqJF3nJqwwyAe3pUarjF +MAMORwoHrTPs2c8VaVWxuOcUp+771TbQkUJLdegAHvQkAxxxzV4joeOaUgY5GBnFF9Bglqv2G+J6 +qqkY9eRXB6iSl9e/9dpR+tejRhjp9+QvDhVX8K851XP268Gc/v5Dn8a9DDP3TzsV8R7H8aomkvNN +x2tmH/j1eMzQuCeDXu3xXRXu7HIzi3/qa8sns1bqv4V2ySdvkcUW0jlSCO1JXQPp6ccYqA6cuD8v +fij2fYfMY1FajaWewph0uTk44pezY+ZGdRVxtPmHaozZzjnbxnFL2cg5kV6KlNvMOqmmFHHY1Li0 +O6GUtLtPpSYpWAKKMGnvDLGAzqQD0zQMZRRRQAUUUUAFFFFACUUtFABRRRQAlFLSUALRRRQAUUUU +AFFJS0AFFFFABRRQpAIJUMAQcHoaAEpadKyPI7IgRSxIUH7o9OabQISilooGJS0UlAC0tJQaAFzS +n0puaXNKw7jwxpdx/Co6MmlYpSJNwo3cVHk0UWHzkuaAcdajp1Kw1IkLAU4EcZ9aiyOlOT5mUZCg +kDJ7UrFqRLuxTt/BFQ7s/hS7s4qeU0UifdtHU807cCCM96r7j+XSnhjgk1LiUpEud30pc5JAqEN0 +I9Kcrdz3pWHcmXA6Ht1p5YHHtUCsB+XNPLHGCO3WpaGmSjB/Wnggj+dQhsAD3qZJNoYHvUNWKQsc +ksEiyRsVdTuDDtSO4Ykngkk4HSm7v1ppII6/SmBKCf0oHHX3pidutO4J4pNFXFzk8U8E8knGKYQV +HBoBzkD64pCJQwwMU4Kfy61GpJP0p4Yng8e9SykODdR+VSISQeegqIDcM56Yp/z5BFJlEoPIzk09 +lZTjGMgH8DTFIPSncDH6VD3HoORS+eQNqk8nGf8A69Oj27snpTcrSoQelHQZKMZx6k08dRx361Em +VI9ulTZztHSh7gSKAox+VOYqAKi65PSnAjjHNCuxMeCv51Mhxz+NVwTnkcVOvNDVmA49/qKkC4OB +061Fu5+nXNSI2BzRawhzZ7Uu4jjtSrzj2NRNRYZMecUYzz6UwHj696cCAPfil1EOU4HNLuHBzxTN +xP5dKX5cYoasMexB4FN+lMDn17UDJznjAprYVx2TwPSl8wZ56Hmo2xgYpvAAHenvoBY3c8fSgkHH +0xUStgfSlyfqKmwEw6ce+aOcj3qMentQQRkHIYEgin0AerfhTxg5qEHJ9eacWANS9h9RzbevftSc +dc0zOcYpG5zg46UrASx8k5+oqTDdufQ1XVyPlNTg89fanqA5Q3HHtUoXJ5pVAOAKeEwMng1ViRu0 +AdaYyn6VKy4xxmo2LcE0WSEViituLfnVJ4/vD3rRcZB/M1TlHJxxTjZ7hsUJF4PNVG64zxWg6ntV +N48E1QCRjB9jUhUkZJzioRgH2FOMhPr1oBojdSOvrU0EnzK2eM1ExBbp1FNDAHFJq5SZ01lKrqOe +nStJGLYrnLKbBUZ4zW5BJvyfapsNo0UwD71Lkjp1qvG3T1IqdTWlyLEg7fXmlPekGe/FB6f0pgNz +Qc4pQuetLtGcGkAz0qN1B5qRlFNxkc0LcCu8ZPIqnOrccYrVwMZAqKaFW5Iq4+Yr2MXI3defSrMU +mRRPanBIGDVVd8R59aU1YuLTRpo1WEfgY9Kz0lHB9asrIhUAE7s/pUJq2g2XQw65oLA1XDgc5pwk +zn1qlJkNDmbHFQk4bHbNOZ85qu78jFJvUaJ94PTtUnmcYqoHGeT70vmDPXk0ubqUkWS+OaazgYxU +JfH0pjvxSbBIsGQ/WmGQZz6VAsu7vjA6UxnGQc1N9LDLDS561H5oycGqck4HU/jUDz89Tik5AkXn +uB61Xludox3qnNMDgLwehqtIZDg9qdmPQtPcA5x2NQb8tUC+YCDzj+dSg4Jx3OBQ4tbibGNnkZrP +umxnHYcVfkOCcVm3fINOK1M5PQ5u7kJkJ9zVUkmp7v8A1jfWq9elFaHmzbbCiij09qogKKSloAKK +KSgBaKKKACiiigBKWiigAooooAKKSloAKKKKAClXqKSlXqKGC3NW1PTv2rVhIJA7Csm0wFIOOxrT +t8lh1xXDUSuehTehqQcHg5960oc7uuKzYMcAe3NakPBHrWWxsWk4NWUBP+NQIOBmrCA8e1IRMO1T +pg9qiTnGalXoKdgH9/0p+B+NMxu5FO7e+eaWoDjjpTDkdKdxSE4p7gNwP0p2cYpp5HOKcuRQITk8 ++1NOOaf6ioz/AJFNghGz0qKSpC5AqJ2pPyGV5MEnmqU5PTNXJDVGZuvr6VkUijO2OepxWBqD4OOn +NbUzd88+lYWoNk8mnT+I06GceTRg+tIMdBQTzxXYRoOAX3zSk9R3pqlqUZ/WkNCjGD7UvyjimqSK +dmkxic9f0p3AGKbuJ444p49/yoZSGPimAY5HpTm9cdMUi9CR2/WqWxm9xvSkzzxTj78UymS32HZG +RmmkilpOcEe3NMUiGUggYznHNVqnkqE446+9bR2PPq/EWrftWxa5OO3Tmsm37Vq254HrXJiD0cN8 +Js2m3GanefB61UgI2470yZmUH615trs6bEzSq2SeahYjA5qAFjn06UrbiM5q+QoQ9SRUkZxyfXpU +Kk8cHOalQ4xmnJDJcZNIox9aBkMSM55z7U9cEZFQxEoI4AHpVpCSDnsarxnJ6VZzgEdOM1jJoTGO +MHHTNSJ93j86jJOc/SpAcKPb9aiTHYOjemBRGTk5/CmllDUinJORjmmtQH7+CachO0EcGosHHtTv +4CfeptZj0HkgJknrmo9+BjPNNySp55FGRt59qAH/ACYz3709icD8KjLDAOMiiSTpjn1oe4Dm3E7f +wqMocc1IrjOf0pvnZJ9qNg1IMkEgdqUFjk5pCfm4puSCR1q7DEaTLdaZn5we1I338mmtuDY7960S +Bjp9vBFGc4z6VHIRuAz6VIDnpTtoIERt7A8EHB9qSdBjjk05W+cgHvSXByoNC+IkrxnnGPrUrjKn +Hfmq27BFWQRs5PNXNdSigw+YgU9cjgDmnScNj0Jp0Skuox6ZrVvQCUKCFzUqKh6e9Pk8tQKAgxkV +jch9zN1C3LFn9T26VktHt6dc10wi84PuydgyQB29apT2UL7CmQcYOe9ddKryrUxnC5jlXIAq1awO +SGINaMenxgZP5VPsijUqBRLEJqyCNJrUiGAvamy5CGlL/wAPSnTLmHd7dTWCeuprsY0nBP1rV0dT +uz71lyEbiAOa2NHUsw/DNdNT4CDcnGYifUdKyB1JHStu7Hl2/wCFYJf73pXK1oODuVLpsuATwOtK +OADUc5JZT71I6Mq88YHTIz+Va20RZGpy+BTrnAA5xUUch3EY/GkuHLAVdveF0JoSuB24FScZB/Kq +0O4/nUjE7x/Kpa1DoTSk4GPqKYZMDkZ4qd0UqvTnt6VHJGoHrSTROgK+6M9gRjntToWZRkdCTUIY +AYXFSRSKVAGcgmnbQCwX4BxxVO6G4dfUYqcE9/XNMkw4YnJPOTRHQJaGYIypbkHGOhq9BKVAB5qm +QQfcU+E/MCfatpq6Jjoaayf3hz3qVJF79KjUK6igp0xXNY0LDSAgjNRmTIAz7CmBCc464pVCqd3J +IHH1oS1FoQTS7Qx/KqCb5X71YlQv0IxkjFT29i64JAwQCCK20jEiTLEEYCrjrkVegUTyKpdUHPzN +06VXIZFOKidyoGKx1bHbQmGclvwpWb1+tQMWGeoOagMr5OfpStrcfmaAkGPXFKkw3E9cHpVFZWK+ +mKFfI9PSnbuFi2825sClkkG5Vz2GapKWOCcYJIH4U4yHdzzQ49ALbSD5cetEjggDr61WJOcD7vBo +MgJxnpRa4rFsAYPFTDlQT14qkZCAOeMVOkxYD2GaVrisxzjHfGaiUyM3PTFDSg5IPSkRxn6VSSDo +TKGORnsaR127cEHr07UjSLnG7HPWmpIGyfehbCaJN5GM55pzybn9+nFJIrZAY0HAbPWpvcdkhw9D +2oLqO3t9KCzHJ6nqTUXAIPXFNIRoqqnStQOT8u0AfU151qRX7fe7wT++lAwfc4r0OEGTTNRA5JEX +HrzXnOpf8f17/wBfEv8A6FXoYb4DgxfxHvfxQUG8s8/8+/T8TXm8i7ScjvXpXxObF7a56fZh/M15 +u7ZJ4rvOJEO0dCPam7VJ4XipEIYkelIow2D3oTG4iCFMHHGacIFIHHOakjKk496mUAcg1V2TZFcW +ak8rwaDZow4X3z61cXoPajcOgFCkxOKM86chJyvvVZ9Nj5+WtfD+uM0eWzHOPWruTymDJpUf90Zx +VdtLH93OK6YwMTz9c0ht+uR2pPXQdrHKDThE2duevFLfRzSxRwICFQlzn1P+HNdR9jDHhc0j2SMS +QtHLFsXM0cM1lOP4fpTfsk/9w13Y02PGNvfPNINMH90d6Xs4h7SRwbW069VNRlWHUV3r6SrY+Wqc ++iqxwF5pexj3H7V9TjaK6ObQ3DAheQapS6PcZzjHtUuiylViZNFXm0y6XqpqFrO5U4KGp9lLsVzI +r0VKYJlOCpphRx1FRysd0NowaXBHUUlKwwwTRR0ooAKKKKACiiigAooooAKSlooAKSlooAKKKKAC +iiigAooo+lABRRRQAUUUUAFLmkooAWjNJRSC47NLmmUUWHck3cYpwJqGlBpWKUiXJpd3FRZNLmlY +pTJQxFKpPrUQPv3FKGGRSaKUifJA+tSKw7mq2/0pd3I+tS4mikWcjJ/Wl3HBx0BqDOP8aUM3ap5S +lImyaeGYDqMVX3DoO/akD0co+Ys78d+tPU9ye9Vd/AqRWB+o71LiNSLO7ggc0gYevNQb8DnrilDb +f8ajlL5i2rD1HHapMEgGqqSqPfNTiRfpUtFLYmAAH9KAwzxwM1GX3cDPBpBIoqehRZBX9O9O3Kc5 +GarBxjrS7xj3pNDuWSQRx0ojYZyBnrVbe2OvXNTxEcAY70mNMlDZ71Ln+QqsrY/DNSbsCk0O5Puw +c+tORjk+vIqvvUnuaUMd2BQtGJlxSMc0/cvGO1U953DJ4AqwjKcE8DgZoaETIuRk1KCMHHPSq8kg +UnbyBxTg4x6UgWxYBG3GeaTrxUXmBSc8UeYCfyxQ2wJM4o3ZGAaZuUZPXtSbx096TV9RkoIxyeR2 +p8fznA65qAMO/el3FORwcUrCJiwVmyOe1Axzz83eoQ+cVICCCT27+tUtADcMgdc8UmFP17mm7wBg +dc0eYT0pbodhMkGpFdTx1+tRZGfakJ4x05qlqImD/pT9x3ZOeetVmZ1OGGM4/EGnB+DS2VmBP0O7 +1pwYkfpUG8sB7Ypd4wQKNLASBwpGB2pjOOvvTCw2nnNM3ZB59BUjsWV5J9qvRqNuOuazY3CgVfhc +YpibLKDP1xipe3tUUbg+3tUwOeO9USAB6HvTWi9qmI4GeKDz+VVbURSkQY47DFUpowMn1rTdAcg1 +UljHIFD7gZrgjj8aqyA5xV2VSGz+FQOgOWNCbQ2VChwfSoivy8cVbZGPHUVC64xwR600LoVWdgBn +GM4pAQec0+UcdM1X3YJANK3YpMv28hQ9cVv2M+cD6VzSOSR9K07KbBGTUOyLWp1cJBq0oXvWVBMD +jnjitKNh1z2q0S0SjrzTsUgYUhYZ9qp2JFyPTimn0pc84PWkbFK1wGmgN600nHWm7uaVgJRyKDzn +6VFu9acHGPeqENZAwNQT2sbLkCrG9TxS5UjHHWhSFYxngdc+3Sow7r145xW0yKwziq0tspPtTcbj +Uymsxxinpcd896c1qKQWpHB71PIPmQ4zjnnpxULyr1LVIbf35qJ7dv8A61FujEmhPOU/nQJlHJ9a +YYCMnHaomjOMHrScWWpIsC5Uk+lNM+T1qoUZeM4pvzA8moe5RYaQ8kHApnnMeDUO4qD+lRNLtODz +zSsBOz7sjPSo8bs4qMMzOeOtTxKDnNL1AYI89elTpAp5xx604oFXNWIDuABGa2gRLYia2AAxyCKp +TxbCK2HOBgis65PzVpJXRmtzNkLEntVC4wwPvWjJndg9DyDWfPyGB6Cso7jkczertkNVeeavX6/N +nNUTXfDY8+orSCiiirICggjBOORminnyPLXbu8z+LPT8KAGUlLRQAUUlLQAUUUUAFFFFABSUtFAC +UUtFACUUtFAgoFFFAzTtMYz37Vq24x7isey6jNbVuoBHPBxXHUWp30noacGOOK1YF3cisyDtnkVr +QgqoNYGrLSD171aXIHtmqyjOMVYXjFLXqBKpBI9qmUAj09aiXGBUyggc00rjHcLTic/jTff3FOJB +4oTbFYMUhznp7UucY+lBxxz2p3QDcLzmgHOe1B6cdKTtQ9dgHYHb0ph5p4PXIphIwaVgIznoelQP +j8qmLEiqzt1pN62KIJCeQKozZ+Y1abgZNU5iCSe3YVk3YpIzrncNxHGcjNc7dtudh710FyeoFc5c +n5z9a0or3im9CDqaQmjJxzSGushscORn3xilIPIpBkY9DTx90jHoaTGkIueAPWg5xTgF9PWmnP50 +uo+gLT+wpgzg+9P47ikx62GN6DpikABxSnGfYUYHrVCGYPWgg4FKTjj1pppkBzzTTnFOBpppoiRX +kqNSRnk4IwfepJTUQrdbHDU+Iu2/YVpw7QQvT0rNtlJI6cZPJ9K0oAeCe2K46x6VD4TThXjt0p0i +NnPoKkiUBBilkACn3rzr66HQUSp4604t8hXHOR82akWM7silkgbbnp0yKvmQyuBluOKVQARTlXHT +0P60qpTbKAZJx+dTKBlQRTURcE+9SALkVnIVx6nLccirG7I+uKgjOGBAqyRv68Hrn1rJoGyInByK +fuXbyeBTHxg5OMVCz8DHekoj3RMOWPPAGakjweOPxqmJCGxU0TDHr607WQNFjPBwM0xmkCHIxSRy +DaaJGBT8Km1mA1MheTz3oZxgY54qLPGaTdxjn60+S4ydmIAz0oJGUx0xUTHIHNBbBWkohYnkKgj0 +xUSHDnnApsj5INRhiT1p8ugWJ1I380MeT2BpqY3H1xTz1wPSi3UVyu33+tRufmH86sHG/mopAA4P +ccitENMZPgyZBzk5qQAY9M5NRsegFSBqqTbQhEHzHjrSzA46UisA3PGaSVhtxU9RWIUhLqGzT/LZ +AcnmpLY7amlwwJ/I03N81hmYxAY+1Am2HIqR05ye9NERzu/Hmtk11B7EElwWwR7nr1q3b3GBgn8K +oyxuCT6UyJ23YPrWsoKS0M72dmbZIcZB6mq8mVIJqJJtgz7HFIZ93Fc6g0XYe0rEYB4xTN7EAE56 +1HuBOMZqRFPPertYGPihzkntk0+6cLDj8KQPs4/Gorl1ZeD9KSTctSDLc5bPrW7ouQ3TisjaM9O/ +atjSAc5963qu8SGbWpELAoHeufZflJHNa2pSEjafTIrKUqFI/IVzpjgrISzh0+drn7ZKYwkJdCPW +q8ju5dzjLEkgdOahnc7x6UO525A7V0dEh2s2xkJ3Oc9cdfSlut2VGeMDH402EfMc9e9SSqxyf7oy +ap/EJbD4RsWo2bDj2qdThMVXBySB0JBqVvconaSQr/Wm+YzDGaZIzKp5xmlXLAEnGBSSVgBQxIHe +p0XYSW71FGcHOM05nJIND10JLXBAzTZI5FVWKkKw4J6GmBxgHtStLJIqo0jFV6L2H0pR0eoSKTxS +MWKjpyajVmX5f7xFW33DjJAOCfeq0ikNkdPatk7mWxahmIwMdTirO84A+lZykKTjkDv61MZfvYzt +A/Ss5Q1NU9C5vx2zxTHmAIA56ZqqLhscHk8UK4JznpU8nVg2W4IFYhzWpGERfrWYk2cemKn888Dq +Kmd2SkXDszULIjMcdKRXU0gZA3y+1RfQYsiKB61XWIcnFSuSe/SmZO4c01fYBfs6EYNBiRV5HqKe +zNxUUrFutCbuOwLFxkdqVIwGDFQ2PWl8wqnOcdaYJiB1x/8AXqhajxEwOTzmo5IzkYXmpYpeORSN +ICxx2oTB3GeWcgEEfWnsrj7uacMEfWn7uGH4ZpiK7B8fh2piB1yccVPkHhuR7U4BR24p8wbFYs3c +0sTkEEEU9kDE49KaqADJ60tLFXJpZ95B6EDFRi6bcR2FMADOc+nFNCDeCRkZpcqQmy0soxyeKTzc +kmmMnHBqIq/bNNK9xGlFdAWt7D/z0jBB91NcLqI/068B5P2iQZ/4FXZxRr9h1CfHKRxqv/Amrir/ +AJvLw85+0SfzNduGVonBi7XR7z8UmxfWg/6dh/M15w7gf0r0b4p4+32gP/PqP5mvN9pJINd72OSK +Gqxzn9KfkZz6ikWInnvUyQEccc0KISYxAw5zxnmpVJbIHc1MtueBUy2+BVrQhshVW46mnhOD65q2 +kWBiniMYOOtVaxLZWEZz7VKI8cip1i45pwXHTpiktiXIgMX4GkEQz0zVsKT0pVi9fWnsF7lcQ+1L +5B7DrVlVK5zQu4Z4pCIQhzz2o2n061Pye1KR0HFUIhVFPbgUNCpGcVYAXpxThjFFxFHyFbqKabOJ +sjHWtEBScenNIUA75ovqFjLk0+MjGOarvpkZAyoyOpraIGMfrTSinimpMTirnPPpMGCdvWq76LC2 +flArpTGAOlN2L3xRzMOU5GXQEPIGKqyeHiBwDXceXGeopjxrjpRzIaUl1PPJdCuUJ61Uk026TPyn +ivRngRu3XvVWayjPbk5pcsJManNHnTQTJ1U01lZeoINd5JpMUg+6KqS6Eh5xxSdGPRlKq+pxmKK6 +d/D4JbFU5tClU/LUOg+hSrRMSitKTR7lcEAkGoG0+6XJ21DpT7FKcSpRUpt5h1U0wxuP4TU8kuxV +0NoxmlwaSpsxhRRRQAUUUUAFHGD60UUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAC0tNopD +uOyaXcKZRRYLkm6lDGo8nOaM0rFczJdwNG7mo80ZpWK5yYN3p6sTULSZCjA+UY/WkD+tLlKUy2rE +nmguTyDyKriQ07fU8poposLIBUokHQdfeqe4Gl3d+hqXApTLiyYH86cXUn731qpu7UocjoelTyFq +ZcD9AKezYxk1T3k4BOaf5nbNQ4l81y1vB6VLEyk9aoiQdM5p6vjPNJxGpF7eB+dPL5Xis8S4yakE +pCDp1IqeUfMWlkOetP8AMH0qn5yr19OMU5ZVOeeAc0uXqPmLgkxnnml8wfj6VSMoB+lP8znI9etJ +xC5d8w/LzUsb8c1QMvyg04TYxmlZsaZom43/AHu3FHmqPbkVRWRuvSpd3c1PQZpERiGNxKrM/DJ3 +WoDj171XD8ZzzS788kjNMLEwk2k+nWnLNz9aqGQc+gNBlA6cAUWd9BepfWUDJp3ndRnqazRcc4PY +Yp3nr9KTQF15MdPWk8wYBzjvVQy56UecMEUJDLqspJNBYY9DnJquJR27YpC465/Cm0BOWGMjikBJ +FQB1yee3FKJMH+dJgWQeTk+tLnHzA9agEoP45pu/qfemgLJJ4HoKj3c8Z561GZDgUnmLuzml5AW0 +J9KtxSd8YzVCNxnINTrJx6UhGkj8j06VYVwCCazEk5655qdZiTTQmjSVlbgn6Uu4HI9KpJKemeOK +k83v14qroRYbb0qvKB06d6cZGPP5VE7kjHGaa1EVJR296hKDpUrNzlunGTUTOAcdM0JgyIr379MV +C65/nVjzPTrUbt05piKMq8EHGeKpzLjPpWjJtbIzzjmqkycc9jTewFdJNuATVyKYAg/SqDghsinR +uQOeoNTJFxkdXZXK8ZOcYrYhmB49q460uACMnpW/a3AIGahOxb1NwOQOtPDDHHpWckue9T+ce1Xz +GZZVs5JoL9TVXzsDIphnwcZpMRbZjg5qJpFwB3qAz7sj603ecdfxp9BWJTN/Om+djFQkk/jUZ3Ut +SkWvtIHHpThcdvSqTbqid2H5Un5Dsav2hMentSGdemeRWHLebeBUX9okfXpUuckwVM6DzENL5ikV +gx6hz1qwt6rcZxVqo2hOBp7xTGYA9O1U1uUBIL08ypxyDScmLlsSMy1CxzgjikMgx+lRmfA496FI +LDZAMHvmoJMAZ6etOebnPvUJEkhO0cGp1ZaIpHJzj8qjWJnJzmrkdlIevcCrcNiV4q1Ed0itFbEY +PXirCx7ccVdW3wOKZJGV+tNqwrlR2wCDRbyqAQabLuxmqnmbM9uKnoVbQ0JpV7/hWfI/J9af5jMA +RzUb45PfrTcmZ2sV3I/KqMwyp4zzV6QBgT05qlLkZA6d6aJZz+or9B61mVt30ZcNnjFYrLgke9dt +L4Thqr3hKKKK1MgooooAKSlooAKKKKACg47c0UUAFFFFABSUtFABRRRQAcUlLR7UAJS0lLQBesuv +NblsSNvcGsWxHIJrctx8wGeMcVx1dzto7GnAOcZzWtDkD2rOt07/AI1qQjAA68Vhe7Ny3EuOvAq1 +GAKgj5x7VYUdfem9EIcFx0qVVwBmmhR2qVe2aaC40jHPrTgO9PHI6Uyk0NMMYpDjpUnXFIQO9FgI +jnOB2pecdaXBzzSYwOelF7iv0AHj8DUZPNOJGSKY+Bk0WGRuxAwKrSEY+vFWHPAIqrJ7fjUNa3KR +XlYKMHmqE/fBq3IBg4J96oznBzmpe5asZt621WxXPyn5jiugufmBI9KwJV+YmtaWjBkRB5NGMn2p +2egpo5rckUE4wPc/nTuR0oHHP6UH1pFoeMDpUeST9KcDwfQ008HBoQMcvTP4UpPAA/OkHAowPXpS +GIccj9aRiSSe7cnFAGadgc5NMgjbjqKYTn86c3PTpTcCrRDEJo4PXijH60EjmmQytKc4HtTFGTT5 +P8mmpgnG3PDfy/pWy2OGfxF236qOnH51qxAAAdc1kwY4Poa1oXBHJ5xXFXPUofCbEGDGPwFEi9vy +pIMmMHinMT39O1ea7pm5GODkUTfcJ6+1MkI4xTGJ25JppDQ3ODjNODEe9RZyDSgkYzV2KJAwxmpV +wOce1VBIM49asI5I4qZRYiVeMHjr+VT7xjAPU1XU5wDUiqM9am3cliNgZNVn5IweuauFQRyeKpyg +A8d6cUNMjycnnvUkT8EGoBkk9qVePyrRodywsg2lRUhYeXj2xVRCMGnFzs6+tQ46gSh/lGaTdwf0 +pkfK9ac5IHpRbUYuemTSs4GDUDMxIFLIMEGny9x3JWbJFKCSwqJvl2EnqOPpSqT+lJxsgTJ0fLHH +br70qt85NRLIF44560ofc+egxSaESTFQRzVaVwSAPUU+TJfn1qFjhgPenBAhx4FSKWAAFRvnaMc1 +LFllI74JpvYAUfMO9SS4wMUxAUb61JI68VD3FcbEvrUjsAOO9RowHanykYyPSpadxlIlieatQIG4 +qooy5yatxPtxWswYS25BP1qq1qgJbGMVeecfXFU2l60QlKxDiV58KOKrK+D9RU8w3cA9KiSE9zzm +umNrajuTQjJyenap9hIzTEQg4qy64j44rKUtQK/lO2fSo5IygOeKkge4D7W6ZpblSW44p3adibXK +TADGPU1uaSPlGOtYrY471vaUFC7h6d6qo3YmexJfDdzWUQFB/OtO9fkj1OKzpgMYHYVkhx0Rly53 +5/yKc2duewpr5389ckYp0gYR8+ldfYQy3OWxU8+CwGcDk81HZqvJYjNOkIDjHNKXxCWxPkbMEY46 +1VBG7HB5H6VY3tsOMDnOfpVXneSKUEUyaRsgKecU0NhfSmSE4pCcg9uaajoFxyNz97mnySANyeO1 +QI2B05qCYsz4FWoXZlOXKi/5ygDnPNPeSIORG+9B0bHWskCccAZp4+0J269av2aRh7fXU1NykAcV +E+0nrVQSzxnDqRxn9KQ3QA57VKpsp1VYnJwTz2FN3KQMdc1Va4B5PNAnXJB6VpyMn2qRZB/Wp4gO +Dj8aqJNFnlgelWVnUHAIxWcosuM7lwFeMHk1IDjk1VWeP5TkU8zgDgjOaxcWjVSRaSQMSCacTtB+ +bHWqsbLgn0p0smV9OaXLqPmRIZW//VSqX3ZPTrUHI/8ArVYjf5PrSskHMO3tkjuKjLHe3Xp+VO3A +AnpjpUUZ5JPNKxVyWRj8y57cD3po7Up2M/OQM/jihdufpRsgZJnGB1IHNRYbJPepG+6T68UxR0Hc +cU0hNkw2qrZzntSJ82QPWlHQZHXpUiqqjOBSVibkXPP14FSnftBxQNhNI7na2Dx2obGRmQjjJ4pP +MOCDxUbHj1JpcOcUJDY4YAI4JqFpDvwKlQMR+dRKn7zODT9RFkSsisBj5uDSBiGVuR0PFIyrxnvQ +EzgDnIxQlqBdHy6VqBP8flgfUHNcPfBPtt7uJH76XGB3z+FegSwMmiXqt99Zkz7dK8/1Bj9rvF4/ +4+JD+prvofDY87Eu7PfviXF5l/a+gtx/6Ea4JbQ85GK9L8fQiS8t/wDrgP5muONvjmu9bHE5MyEt +xjGKsC3YjpxV9YVAzjnoaese7jtTJuUPJPWphHkVdWEZwBSiMDtzQJsp+UR0pyxn0q35XekZTwel +Mm9yvsPGKNh6VOBnJpdpBB9aAIBuApeDz0qYoO/amlRjgUARU4D1pcE0EH9KLagtgwG9qAq8Z9aM +HrRk460ALgAnFJtwcZ/CmhjTjyc+1AC496TGee9NzjPrTd2MfzpDQ7p+VR5OTzSbiRmk5bmi4WFJ +wMk1Huwc9qUqc0mKLDuGeDRndinhFIxS+XwRQkDYzaWx6Ck8kMcnk4qdUJAAp2zB6UCK5gXAFIbb +seask4I4pcH/AAp3Aqi1Uc0jWSN2FXRmlxyQfSmmS0ZrafGQTjrVaTS4uhFbPGelMZV/io5hchz8 +mkW5P3B7VVfQImPArpggzyM0jKB271amxchyMnhyNgcDv+VU5fDjduDXclQaY0CdMdaFJdQ95dTg +X8PTKeAemc1XfRLkZIHFeiPaoRjA+tRNaR7emaVoPoVzzR5w+l3K9BULWVwnVT7V6R9gj4O0fSq8 +2mRNj5R9Kl04DVSfU87MMg/hNMKsOtdzJpEXPyAVVfRYufl71Doroy1V7nH4NFdRLoAOSvSqx0F+ +eKToPox+1iYFKBkge9az6JMOgxVd9LuUz8uah0pIpTiyhRU5tJwcFaa1vMvVTUuEl0KuiKilKsOt +JipsMKKKKACiiigAooooABj6UUUUAFFFFABRRRQAUUUUAGaXNJRg4zjigBc04GmUtKw0x4al3VHx +S5NKxSkyUNxSq2aiGTV6zs3nPFCjd2RXPYhBNLk10NvoJYAsKll0KMKcelX7CQvrEUc1ux35FOD4 +NWrnT3jJ2jvT7GJI1uvMg8xngZIj/dYnr+WfxrN0mnZmiqq1ynuHeneZxge9RywSxE7hUO498VDg +1uWqiZaMhJBz2pfMAH5VVD4NG/0pco+dFwTcYNSGZdpqiWxg/lQJD39ankK9oaCyjA70GXOMGqO8 +8U/fnGKnkKVQ0Fm6c4+tTebx7VmI5HWpBIc496h0yvaGgJTjr+VBkK9KpNKckdM84oMvv6UuRj50 +XPMbHXGaTzD0z261WEmePWmtKOo4o5WLmLJfH5g0qykZqmWXOaPN/HFHIPmLwmbhfbpTvNHryKzl +k255pVlZqOSwc9zR87jAznNJ9o4xVAS4pTKD0O7ijkZXMi+JeMnnjtSids8GqPnenak85gR9KnkY ++ZGnHOBx/KjzsEVnibj0oM3HHajlYcxf84nPNIJhnGe9UPOxnnoKTz+RRyC5zXjlKn8anFxk4rFj +uMd8k1Os/fNJxY00bUc46jpVgTL+BrBW6xwDUqXQwCT0NRZorQ30lB4z0qVJF6E9axY7v3/Gpkuh +nOe1HW4mmbG8sOtRuapJdDoDxSm7HHNNbkll2z7A1VkGTxxStcR8du4ppkU96pbEsgLsODzzTS/B +yee1NlkA+naqjy+lNRBsnZ++KhMgYZHTvUDzgd6i84ZPPrVCTHTEEH8DUI65BPfimGZep700PnBG +OvanYSauXoJGV1BrftHZwPXFc1bAu4rasJdp/SspKzNlLQ3o2PBqbceg4qKA8CrQQCiyIuyPlhk9 +jSbNx471YCcZ6ClVRnHQdKoaIliODUixZAFTBRinIoH50kBX8odKXyfSrXXoPWlVBikrjaKZg3c1 +WntzjjritUrio2jDCqSTFsc5Pasc+1UjbOemfTNdS9spzxUL2i9MUco+Zo5kwFTxkYpNsq49q3ms +854/Go/sIz09aHFFc5i+ZPn6c1Msk+B1rTNgCOR9KljsBgfhU8quHMjPAmYZ560+O3kY9/rWxHZj +HFWEtF644qlBEuRkR2THGe1XoLEntWgtqB0qykW0Cr5UZuZTjtAOq4xUn2f2q8FApGU5oEmygYh3 +7VBNCOfpWi4HUVWm56CloWmYlzGVBrLlBBbnr0rbusEN14HFZEo6n8qybszWLI0yAvPpTmLHP0oU +fLk9aVl+TPrQlczluV2yOvpxVN1BBHPXmrrg4/LNVnU+uec1aJZl3a9iPrWPNbhiTW7OOPqKypMq +341005WOarG5mtC69qJpTM+8qqkKi4Xp8oxWmsaOuD1qnc2rI2R+NdfKmro5Ho7MqUUUVAwooooA +KKKKAEpaKKACiiigAoopKAFopKWgAopKKAFoFJT0BJFALU0bEdM9DW7bqMADtWRZKF2sR2NbluBg +Y5Jrjm7s7qa0NK1BXrWpD0HvWbbKSSDwtaUXb9KyS6mty3H169atqBVSPaMHHNWU6E/lVBbQsKOO +KcQOPao1JAHrUik9D9aXkFh/OKTB4zSjGPYU3cc0WAXtTfYUrHI6Y7UnQ8Un5AJ7UnUUZ4NHHIz7 +0mIb0zUUman479cVAxz19aG9NCkQHGMVXmzz71YbIznFVpSeMdqluyKRUmJ9wKozsozV2XPJJqhN +g1m3ZlooS8559aw7hQHbt1rckIHJrGueWORWtPcOpW24BwaQYFKemKRc5zXQIcB6UoXJ60f1PSkJ +/lzUlCr6Z49KTHNL2zTQvNMB3AxSdc/jTsKenHcU0k96SBjRuA3c4PAP0p3HX60i9R2pelNkoYw9 +KbjipG2nj0qMnmqRMgHTmmyEsWJxzTqY4qkZy2K7EqfwNMXkinSGmp1rZbHDL4i9bjpWtAoxz25r +JhHTHNbMK/KCOfX2rhrs9Sj8JfhfCjPAx0qRpRsKgEEkc5qFF4A9acM4GRXB6G4zDZHp6U2Xo2D6 +VZwuPvd6py5JIzTi7lCJtOe3HWkJ4wDTRgD3xSHsPzq7ajEUHOTVgcfSoFOPXrUpboo70SV2JlmN +xkZq0BH1PpWahbIH1qzmQDnpWbViWiR8AHmqUjNj6HippHDcfSq7njj1pxQ0JyOSOvSkQ8nP6U4d +PmOOlM6Nx0rSwwHegbtpHHelVQST9KVhgDigQ+Acde1SuFKAjriq8TEcGpzkofpUS3AgAOeafLxt +z0xTQOhFOdSQM9qb3GK/KxOSOmPyNKvD7c8Y4PqKjOQAPxFPZsFSR1Sm7NCGMR5hx0qRCc/jioh1 +pVJBHFJookdlJwaikx+tI/LjNJIeRjtRFWAcxOBjjPpUsZ4GOKrHlRz3qxEmVoktAJM/OT645psx +AHpTcENnPSiU9x06VCWogjJxjP1qRzx17VXUknH51M54/Cm1qMplyCRmp1lY4H5VXYKrjocinq4H +9K1cboZNkkVGeScU4sQPWmpnnFSkSw2d+uaNmDz0qTIz7UHB4z0ouxWGKxPT8avRkMvJ7Vn8g4qe +FzyM5pSQPYseWM8YFVLkEEAn1qx5vrVS6fcR7UoXuJIr8Z7dQRW5ZhkjBHTisJcFx9a3oD+59jWl +QmRWnl3uc1HKAQc+lNl/1mBnGabI3Bye1TYZnEfvmHfNPuMlevT0pqqBI3c064A2e9dPVC6EMGPp +SyH5/bnFJBgDPQHvT2QhwSOMA1T3EtidANik881WfG84xwc1ZyNuO1VWbLN0qIbsqwj5PJ9cUh4H +UcikfGOvHcUnAGentWiQh0QyfUU1kzITj64p0W7JPpTlBZ2PtzRszGSJrSHc2cVotACCWAJPNQae +nOe/WtErn8q5ak3zF8isY88aKc7T74qi8APIHrWvcKu4llyMHj8KrhVA5HWtoVGkT7OLM37KrA9q +RLCRzkdK02iHUD8KntYQyY6dKt12kZvDxZitYypg1GLeUnH8WK3rqMDAA96iggycnGKca7auxSoJ +bGQ0N0mDg4pAbgkHBreliXbtwM8io7e3UnlRQqya2F7FrqY6z3A49AakF3LgEg+ta09vECo2jkjm +pRpsEiAhe1HtYPoLkmjIW96EipftwODjip205BIV24A70yTTCBlRjjii9Nh76GPeoeF9BTo7mLpu ++tQpp8pPAGenNNOmXK8Ag8dRVckO4vaSNKBnmdYY+Wc8Lkc091eBzHIuJM4xWQLW+ifIyGHQjtTZ +HvMkuxYgADPfmj2aew/bNGwJkI6gVJG6HJJB9K55pZ1AyMcdfWnrdzLwAcmpdDsNVl1Og8zoRj2o +aU7ePyrD+3yDB7YwKemoM33+ean2LRXtYs2lkG3k8mkkYYGO9ZQvl6Fu4p5v03cYx71PsmWqqLo5 +bNScjgHr6Vni6jJ69asJMjEHI4pOLQcyZdTg59qapIPI4qFbhck05J4icUrMd0SOcsPpSw7g2Vzk +HjFRCSPPXvQrgHg/WhRYX0ND7Q7WN5Cc42q2fxFcLqH/AB+3f/XxJ/Ou2A/0G4lxwpGffJFcTf8A +/H5d/wDXeT+dd1D4ThxVuZWPpnxkm66h9fJH8zXJlFxXYeLhm5iPbyh/M1y7IOfrXctjzXe5U8sG +jySOlWNpGaXbx9au5LuQbTnikKkA1KV5yOlDYwKQEQB/xpCCetSVGx5/lQA0JkjHFBGDinMTjimk +9MUNjQZHIPNMP6UdDTW4Ix3oAOMUw9ODTsjOfamknsKY9hcnGDSEdqT60o60hCEHGMUoHr6UUpPT +1xTHYjPAPFNAqTNN469qBjdpp+zjj8aXg80ZyfWgQ0qOMUhUc07IBxn3pdw4zRsJiKAPwpSmcGjj +t6U7JpX1CzEAx09KFyTz0pOoz0pNxHNFx2H4HGOaB1z2pnmcelNV+TQFibgDnrz0ppI7c0wOeec0 +m49aLhYeSRTOvXNNDkgE0hbjGaOoW0HnqKaOKbvFNLn8qeoWJVKnH1pOM1GDxmj5qA6Dy3pScnrR +zn8KcFGPwpgtBu0cYpu0dPepcYwBSMrGkxkBhXnvmozCB2/CrDK+0Y/Go2WTjIJ70WFoRpCrZG3r +TTbr2WpAHBzUiozY70BylFraPuKjezibgrWh5DgdPeneQ2M4707sXKjEbS4Sc7elRvpULZ4FdALS +Rh9aQ2L4+tNSYnFHLSaDAwzjnFUZNCUNwDXbiyOPbHSkOnluSKd77gtNmcFJoXGRmqraPKMgdq9B +OmYJOKT+y0Pahxi+g1KXc85bTZ17GoTZXC5+WvR5NIjIzioTpMP92pdOA1UZ579km/umk+yz/wB0 +16GNHgI+ZcmlGj2y9VHFT7OA/as86+zTD+E00wSj+E16Suj2p+8opDodo275BTdKAe2fY818t/Q0 +m0+lejnw9aYPyioG8NWpXlcdcUvYx7h7byPPsUV2cnhmNc8Cqr+GeMjrzU+wfRlKtE5ait5/Dsw6 +ZzVSXRrpM4XNQ6MivaRMyjB49+lTyWlxHwVNRbHHUGocZLoVdDaKdsb0qRLeV+imjlYyKnKjNWna +6PPPg7T71vW3h7jOzNWqT6kucUc5a2LykcHGa6vSNNVRluDxWjaaGIgML6GtaGwZAMCtVFR2M3U5 +tGQCFQABVWdQeK1/skmMYwKadPLYOOlNslWOcmtFkzlfpTIbFV/h6CumGmHrTk0vGeO3Wi4Nq1jg +NUtstgfSsJ7aQYO3jFeozaEshOV61A/hyEjBTnNEoRk9So1eVHmPkyEgAGlWCXj5TXpB8NQA8IKP ++EdjB4Tg1HsY9y/bnnZtZj/CeKlSwuGGdtehf8I7EuCU4NSro0Sbfk6UvZRD255//Zl4QMqefWp0 +0a6IGVPI71340+PONuQKsf2fHj7tP2URe3Z58uiXIXpTZNIuVHAORXo6aeoGNtK2nRc/LR7KHUf1 +iR5k+n3ORuBPAFV2tbhTjB54r1L+xo2PKjFMfQLds/IDUujAr6yzy1g6dRjHaovMxnNek3Pha1Zc +hexrnr7wo6BmjqHhuxaxMXucuZPSkLAk7ckZ/SpbqxubYkOpAqkWI4rGVNxdmbqomiUyHPNHmY46 +n0qEbmOB1wT+VJk0uUOcs+Z17UpkP8qqq3PpS7sUuQaqFnzCcgegoD8kD14NV95p2dvXIOAeaOUa +mT7z39akDjHP4VVDZGKXfzjtUuJSmTlqQt3qHcPrmnbuBjtmjlFzC72U8U4TtgDPeocjj1pMjBp8 +qJ52WftBUYpwuW/LP41T3DHv600sc0ezQe1aNIXr4HPHFTDUCBj1PWsff60m9qXskUq7RuLqJGM9 ++tO/tL35rBMh7U3zD70vYIPrB0B1MgD5qQ6qcdawDI3rSb29afsES8QbUuqBiPpVV9QkIxms7JpM +mrVJIzdZsuNeue9MNy/HJqtRVKCJdSRYNwzHJqWO55GelUqATQ4JoFUaZtRS8gg9q1LSYqwz9a5i +KZlIrTt7kjvjpmuapTOulUud1YTBwta0Z3cntXI6dehcAmujt7kOOtc6bvqbNGj8v4YpNq5JHAqA +S559qeH4qrgSZOfxp3c4qHPA5xRn1oSZVydSQfSnhsYqAHNKH9KAJ884pwUHpUStxzTg9NEskCZp +DGMml3dMUpwe/aqvoRYiMK4JpnlL1NTF+oFNDjI4p3GrkXkZFSrCOKeGHY96lUjNCEyNY8CpkXtR +kAUiseQaHoLckCrnntUqLuIA71Bux1pySbefypXCxZni8kge1VWJJxT5Z2kIJPNVmc/WndAr9Qc4 +47VWmfANSPIQOe1UbiT5TUN2NIq5XuSOfcGsl/vcc1clkJOB+NMgtZJ5NqKSeuKi/YvZakKRHgno +amWKKQPvlEYVcqMZ3H0qZ4imUIwy5BB7GoHT8KV7PUyepTZO5qs6EtjOBnGKtyDtVd1BA/WrTBmf +coDnb9KxrlcNnNbswPOax7pM81tFmMiGB8FffvVuSLepGM5HFZ8RYOPrWtDz36jiuyEnc5pwOeuI +Hic5qAAnpz1ro7y13KTjpWDPH5ZIrSUVujFMiooorMoKKSloASlopKAFooooAKKKKACiiigAoooo +AKsQLkj1quKuWyjIJ/Kpk9C4K7NS3UALyMkdK2LZTgenasq3Azg4xWtbKVGc1xTO6KNGIHj3rRgz +kZ7VQtstgenArShTjmlexRZQcZqxGDUKDpViMHrTTAkX07VIvHBpmAAT708EZwO9DEKOPoadjAz3 +o46DpRzxSu0Fhp/TNJkc0rZHFNP9aBjOtGBnHrS4weKT3pLzAaWOT6YqB854PNTtgZNVm6cUrjRG ++euaruT3qVyelV3OSc/hWbKRWnZqoTE9e1XZ35xVC4bg0rFJlCZjkjr6VkXGd5P1rUkOMkVlTH5j +mtad7jIOcf0pw24FNPIpw6CtgQHr7Unp3xSnpSIDn3oGOYkCmBsZzSnPFAyQAegJP50LYHuLn8aQ +n1pCDRjApiYoFGfmx2o+nQdaGxQIaepph6j0oJxQPSqIdmKOvpUbninGo36U0tTOb0IH60JnNI/W +nR4zW3Q4ftF+3U4GK1bc8jNZlupJGM9a04uCMfjXn1z16S0NVFIX8OKiYscinRsdh9h+dQklWIHr +XEtTVCszAdarEE5HfNTPnHTPNQFuauKKFRSSe56CrEESuJSRyFJFV16EfjSCWRD1I3Aim03sA8DJ +xSnAI6UwHHKjJokxkEUWdwJ02bhVpwSvHsapISzZPHPatH74J4BI7VMtCGU5AeSB+FQDPOav7do5 +qlLyW7URZSIjwCaAwyP1ppyBjqKUKMrng4rQZIuA3vnpQzHdimZIYj0pY8ufwpW6gPiwCc96kZuD +jrSIoBGaCV5x2qHuIIlyCfSllBxx9KWLgH+VNlLYz70X1AY+flNPl2lI2ZgTzmoCSRnFB5IPXNaL +QBwxnrS9GwajXO7nipDtDDPPApMpCkAkfWom+8VIPJqZeSBSToqkY9BzST1ERbWUfgKmifgA1C2N +o5606PJX0ptXQEzEluKRy23npUeSG/KnvnbweCKmwhit2FT5yMCqoIHNWU4BBGCMg57USVhlGU/O +aVGOBmknwG4pIzuAGMAE1t9kCftUYc5x6GlH16+lJ/FnHU1KsBKDxmlAzkHrTOBipkXjJ7j8qluw +hhHNLynI5obhqdhmOe1K4Au4kHmq9yTvOKsb/mAA6VTdtzsffFVBaiCMDeufWughX90B7YrBiIEg +x14rdDHyRj0p1CZGfJgy4wTyQMevaqsxA/OppC/mH3qrOWHBoihkcJLE9+aLkHbu7Co4pD93JxRO +7YAz1raz5hX0HQjcpA46YpHA3AGnQnYM+tMdhvx78U92JE7H5MVW/iqY4CkmoFIBzz9aUUNiOOhB +4zSPt2Z53ZAxTj945HoB+NRv05rRCZJD39KfBnLkVHFgA544qxAMKx6VMna5D3NKwQAHnvV3r0ql +ZH5eKuc44FccviLKtyoINUCRgLk/eOfSrV3K+WGOp61nAsWBPcitqadgS1LZYBSQeR3q1Zrlc/Sq +ZUCP0BFX7XKqOemKiew2Jdc5BAGAKitVKFT1GQcUt1Id2R1qa1jBA7UdBOwThSvvRDG2eBntSsDx +znnNXbaRFHTvSvZEvRGfcK24ZHerdtlcA1JdxrJhgefSoMMox7UXWwboumKIsG28dKSWKMADAIqr +FM4Xbu61YWROjtS5mtyXCwC0hKFhxUXkZOR27VKzbO+V9KalwmSCo9qfMxKLInjiJII5FVZbODAI +HPNWnlj3EqB0I596QOpT1IpqTDkMlrZfmVuFJBP4VGtnEWPy1sC2ZsnHXtVcRBC3HOTWnPJC5Isz +HsIj2+lRvp6g4GRnvW55ZdQSMU1oT1I6VXtXaxPs43MBtOKgkEg80w2D7QwY5z0rdMZKnjvQkBK4 +Iz0qvbyF7FHPG1nGKkW3uE56jFbcsA4wOaZsCgqenXFP2zYvY9jE/wBKXpkfSkWWfoTjAIrZMcfR +RkEZpv2RCOmaftY9UL2Uu5kJeTg/exwaet/IDyCeavtYICflqM6dFgdQc81fPBom1RGjbXQk0W+P +8azR/kWFcpff8fd1/wBd5P511draqmm6ggGNzQH/AMerlL7/AI+7r/rtJ/Ouilbl0OWtfm1PqPxX +jzoh/wBMv61zLV03iv8A18X/AFzH865ZyQcCutbI4pbkZz0FNZj0pHOORxTGb1qhDiR1Bpu4VETw +aaWAH607CsSEgUxiqjIphlBOfyqJpOuKQyXeO9NZhwc9KhZz8v40wuaASJgcknvSF+ST3qv5uMmm +mQZHegdicuvOKA4wc1XM2B6CovOB4FGw7FtnH0xQGHWqYkPOelSCTpjpQgsyzvAppfmod2SaQvzT +H0Ji5Xik3Yxj0qLeOpoyeo6UCtYmWQjOeafn9arFjRvPSgCcMOQaQuKgLtzjvQC57UBYm3nPWguB +UO1+fWmMJOlKw9CYyDqDxTfNwfaqx3r24pU+YZJ+lMVkTmTnrRuY8dKQRg9eanEQP1oC6IdxGc9K +XJOBzVkQLkehqdIIwOAOaQuZIoAP0p3lyNg4rUS3jz0qQW6LnFHkJyMkRSntzThBI2cg1srAoGae +I0HYU7hzaGOto/pmpBamtUInGaXavQUri5mZ62h9KUWx71o+XkcUvl4GMdKLg2ymltGak+zRYHGa +c+U6VC1yV60XElcm+zJjpTTaxkjiohfLjilN1zSuNwY42sfPFNW3RTnHtikkuuOtVmvwCBTvoNQZ +oLBF6UeTF3AqguoJ698VJ9tQ857UrhyMuLEpOMUpRAOlUvtfekN4MDnk0XYcpZKJknpTTt4x0qmb +vtupVn/E0XY+QtMqnt0qIxFjkcUCUVMrr1/OqvYnlKkiHk4qEgHrV9yCMYqnKME4FIaIiq1VkO3J +qx84zUcsTODQykir9rCkDOKet6PWqc1q+eO9Q+RKOTnik0+hXumt9qGKja6AyCazx5nXoAKa+8kf +rS1Hyq5aN4h6mhrgMvFQLbFto71ZSyc4GOtC5htQQ1ZFIGOaPLD849KuRaeysPlq7HYjjI4qldGb +5TFGnpKQWQdfSqjaFG8jYTArsEsxkYFP+yAZOKvmM7djkY9Ag7qOtX4NDtgPuAVvfZwCMinoqL2x +U847FS202JMAKKvx2UajpU0O3GO9WU2moch2IFtk4JFTrAtTKFFP4qbhYhFuh7Uq2q5qbcq0nmqK +OYfKNFuo6Cl8hKUzKBUX2jmhXDlFMSCoH2Z9aGmLZPrUTyelNBYGUcEUg2kY4pv49aMHtTFYmCK4 +xxTFjQmmruBHpUqqce9LYdkMESg5xS+QKnVT36VMqjildhYrLb8elPW3q4qZp4jGelLmCxVFuvWn ++SvpVkIKXYMUrjsVGiQA8VUmtUKn5RWk681EyHGMU02JxRx+raSk6t8vavNdZ02S1lbC/Lk17jNb +bxgjrWBqfh63ugQ8YJrZNTVpExk4HiZ3A80bnAKZIBIJHbIrttX8ICIM8We/Fcdc20ts5R1xisp0 +XFX6G8KqlsRHPXt0pM0rspY7cqm4lVJ6ZptY2NLjs0u4UyiiwXH7qNxplFFguSbqXeetRUUrD5mS +ZNG7mo80U7BzDs0Emm0UWFcXcaTNFFMQUUUUAFFFFABRSUtABRRRQAUUlLQAU9ZGB60yik0NNo1L +S7ZSMnvXTafqB2j5q4YNir1temLAzxXNVo31idtGutpHoa3QYcGpluR61yVtqynA3Vox30Zwcg1y +e8tzqsnsdEtyp6GnrIG5zWAt2Og6Cp0u89T6UczuLlNsyYHXvTllGfwrLF2vIzxQLoZx70X6gbAl +BGKcJBxWT9rAOM1KtxkU1Lowsavmr270hk96z1nwR60/zc4ppiaLokzjNAcVQ8707mkWfnGadwNR +WXg1LvHArPWXAPPNSiUUcwNFvzBxSb+fcVWeXp+FM87PXoDVXFYu+YPWgyYxzVIzDimGcDIzUt20 +FYvGcZ570juAAQfes8zfxU1pHPHNUpX0CxI8xHuM1Udmc/L37VPsLdakW2xziptrqPmsU1ibuM+t +SrHs5PSrwi2gccVGydeOKNtjNu5WIUZz61A6g5B9KuOB6VVlGQal+Q0UJVweaqspzjPBq5Kpz+FQ +Op64oXkWVJkGOayLtRnjvW2+SOn1rJvAQfxzW8GrGMtzEmyjg960rNyQDmqFypzmpbJ+imummzCS +NoMXUjGQa53VFxJXQwEEHFZWrwbvmA5710rWJzy3MM45x0oopKyAWiikoAWiikoELRRSUALRSUtA +wooooASlpKWgByjJrSt1w3XPPas6POa1bXPAHpWUzakX4E289q0YcYBFUoAON1aEIQYOPwrlkdkS +/bnAz0rUhY/yrMgwcCtKPsMdKiO42XU56VOuQagiwACKsrjrV6iHjkY9aeBzn0pvGPxp44xik1cY +/gcGmkZHNKe2KTFAkJnjBprYoYEHrTXpWGIetIT2o5+uO9NJBP6UMBp6moW5PNSsTyBVWRz2pOyG +ROeDnsaruTj60sj8/Wq+85P9az66F2IZd341QuGLcelW5OMk5OSapTd+KTQ0UJiSD2xWXIct3wa1 +ZztUj1FZDKc5rakAnXjFOJ49MUgGTimk/rWo0OzS8E5pvGKT3osO484weR16UfNjjoOtN980uO9F +h3uIOeOnGaTPNDHGRTD296aREmSgjJxgZzwKQY3DcPlzyB3poYY96OPWiwrpoDs25z8xY8elNweo +6dM0px3ppz07elUiGIMEgHjtk1G/ANSdRimuOM49KpGc1oVW4PFOj/rTW60sfWtehxr4jStjhkrX +i+6RWTbrwMda2Id23c3J7mvOrnrU9Ik8IGOvQ0x+HFSwj8ahnba3I71ypamo+Q/LVRiQSetPdyVH +1qFsk+4FXFFW0JlPyrmmHr2xQp6dhQ2ccU7agKjYJp7Eseajjxkk098FgPpQ9wJFZcDA61dQ4XNU +kzkDpVzIx6CspEsbM3pVNs5OKtTH5VyKqdyMc+lOGw0NVW289fWg9adtO36Hmo2zgcd60W4DnBB+ +tEDBW65NIMnAFMUMJOKLXVhlxFLsf0pnklWPGalt/lc570+R13HA+tZ3s7InW4JtRecZI5xVWRuC +KlJJLc8CoHxjnvTitR2GhjjnvSZx06E0mSMcU4E8cfWtBoXqfTHNPJJPrTP4h2xinkjjHeoYCscE +c9BTZSTgClb5e2feo3wetCQMQrlRg1NGBx6VGMBT+NSJtA9MmnLYBSBuwTwaVlAGPUVGxO4ZqRzx ++FTYRXHDcetWkztOPxqsCM/QmrC4AI69qcxlC4zk/XIpEOc4GOABUtyuSccfjUUfPfpWyfuiJhjC +inDrTABj1OaVcKefSptcLkpA65qeIfKT7VCoPB4PGcelWojkEY4rKWgPYquBuOKcCABz702UHP8A +Sm5bjGOKdroCQoOTmqeRuyPUirZ3FeuTVA5zn3rSCJSJUyJR7kVslv3YHPA71jQkGUetbDD91+FT +UEyi+1m4qtP05qViN5qC6bCk1UFqUyrGefqaJu2KIemffrSv8z7R3INdH2jN7EqD5R7VGVJfI+lW +doUfhUCsuTj1qE92UOY7V/Cq69W7d6sTHKc9ahjHbinHYXUG5PHPGT7VG56Zp+45PI4FMbGc1ogb +0LCBTGcjB9akjyIzj1pij92SKeGHlgYz6CsnqQ9y9aHgn1rSGFQVm2fQegq8zELn2rlkveLKF+4x +Wcr/ADew4qa8di2M8etQQqXfFdFONogWZ3OzkntVy1csgANZ91hVAHWp7NyEzgfWonH3NA6kshZm +x1Ofxq5b4wB3qj5heTI4ORir0OQBUNaAx0xYsMnJNTRnaobuOaryMWdR71NwQaTta7Jt0IA2ZDz0 +qds8DPHc1VZgJSFHUnNTOT5ZPbpRYbGRZ5x+FP8ALkmlSOMZY5IFMh6g9hSS5Mg4/E0J66jJJsq2 +zIJGRkUxFJkYZ/Gkb5ccdeaQOBnjFGgJEhJ+YdeaeoA61ApBIpWDHIGetO1wsaEbgNkEAGmzRo+S +OtVj5ioM+3NPWT5Mmm7mfLbVEB3rhT+FPEsgz83bGKR33MPxqPcDuxSRYplYcmpo5gB2JAqrIWKg +HihQw246UWCyLlw0jJwvY1nB2bII9qvC4wpBqNkViD2PWmkkLYgVVwOCDnrV5PJEfvULIozs+7nj +6CrCIPLHvzmqJepBkdQec4xSKikDjkmlfbn5e1KxHHtQBoJEiaZfPgEERj8jXnmo83t4R0E8n8zX +oO8jSr0f7v8AMV55fkm8uz6zyfzrvwz904MSrSPp/wAXOFuIgf8AnkP5muTeUDdz0rpPGr4uoh/0 +xH8zXGvJx+ld8dkee1qStMcVEZuetVmkbHPFRlzgVQ+UstNjvTTKD71VJJyaAWxQHQmMmeuBQHIN +RbTxUkaHBJpsVkBycGmHpjnNWFTtTmio3Fcz9r5ximNlRWiYcmq8sPXigEzPLNkfSkJPy0+SFlPF +LGucUmWRkyY561LG+cDNWRCGHSoWtyhyvSiy6C5tSYLxk0vlZ+lV47hlyrcVZE4PTnilfuFmM2Y4 +pyoBge9OLAjPFNLZBx+FUmK19yXanQ800qo4pFOTg+lDN2HXFFxbDWIXtjnFSR7Se3FVJ2659KiS +cg4BouPlubMaofQ1IbZGGcVQt592MnFaUUynilzEuLKr23BGMVUkt2TGOfStpmU8eoqpIowe9UJG +YWZevY1LHcDvSTRk+1VcOM/SlY0VjSMuVAphvRHx6VSEj4xUDBpM47VDGkjaTUk4zVxLxHrl0Vx0 +z1q5CzAHnikkxuKtob32sCgXgHesZp2P0qPzHpsXKjfW7U/nUiTpnmsGKWQE59amWZwc5xzSVw5U +dIjx8AU52XFYaXTjoe1TfbSRj2paicS/JtOMdaoXCbqabofWozLkGrRNrFVgyHIp6N680r5bpSJG +3JxTfcd9BWJGapyxOxyMitHZTTATzTC7RimKZTkHNOj88nOa11tB6U9bVQelKyH7R9SlGJT9P51O +InP5VejgTt1FTCJeDilZCczLWzkz3qylpJxkd60lReakAGMUaEuTM8W7g1KkBxyKuhAcUu0Z7UmO +7KnlE8U0246VcypzTeMk0XEUTaA002nArQC54IprAD296L6hqZzWSkdKryWQz0HWtY5+8KjYA8Dr +VXFqYclmBmqklsQc9sV0Ekec1Vkjzxt5oKUjLjwvJ65q/A6cZxmo3gxxUZR0zipaZpozYjMZA54z +VqMITg1hQ3DLwegq5HeHINTdidPsbIRc5GM8U5lXJzVGG8Ujk1Z+0oxxQnqS1Yc0akZqFowBU4kQ +jg9aaQKdxbFdWZamjnxzUbr+lRcge1DQ00aC3AI9qeJQelZwds4pwk7ZpWGW2mbNR+Y3eosnAJoL +A8/hTsTceZWNNVyai3YzmkRuvanbQLkuSOBTxjtUa4znFTKM4oYCBe9OCE08L2qVFI6ilcLESKc/ +SplU8VIqVIENS2NDAvbFSheOlOCk1JjHFTcYiU7vQSBUbSDmgCTcBSFl9apyT4FVzcNxRYZp5WjK +1m+c+BzTHuXQcmizFY03K1WmCEdRWVNqMq1lXWtTLkYp+8h+z5i5qiIVfkdK8q8RogmJU8Emuk1T +XLsgr61xV9LPO+5warnk42sNUeV3KJwTkce1J2604Kc4Jx9abWRoFBI7dM0UUABySSe9FFFABRRR +QAUUUUAFFFFABRRRxQAUUUUAFAx3oooAKKKKACkpaKAEpaKSgBaCMHHvRRQAUUUUAPWRxVmO9kXu +ap0VDgnuaRqyjsbCakeMnpVpdWX1rns0u9qyeHizZYqXU6YashwM9KkGqxsRk81yodqd5retS8Mm +WsV3OsGpx8fMB/WrMOpRngNXFiZ+maniu3Ujk1Dw1i1iYtndR3oJyTVmO7RuvArkbW6ZsfMc5rYh +kJGF+tYuLRtzJmz5q7uDTg6gk1nIcgVZQORgila+4XSLazc8HFSrcjv0qmsbZxipfKY5BquRgpos +m5zj2qMys2cdMU1bc5xVhLViMdMUct0LnRA0jHAHSnKrye9W1tx0qdIdvHanyq9yebsVlhY4FWEh +zwRVhUA59qlVfWnYlu5CsIAAqTy+1SYpXPT2qrEldl/SoXHSrD4JJxjjAqBzUtDRA2P6VWcfK2as +SVXk3Hvmod0UipIrHNV3UnJNXHx0/GqsgwTU+pRXYHGKzLvHOa1jkjOO1Zl9tCHHvWkNyWjBuhxj +g7eOKr2zFXGOamn6ntVWI4euqGxzy31N6FumPypbpVkjII5qKEjg5qw4GPXit+mhk7M5eeMo5B46 +9ahrR1CPknBHNZ1JO5nJWYlLRR2PNMQUUlLQAUlLRQAlLRSUALRRSUALRRQKAJErTs/mK+tZQxWl +YOdwrKptc3pb2NuFeAB1q9AMADuDVKAgDI/Gr0OGII+tcl0diNCFVx+NaUIAHWs+E5FaEIOB9KFY +lsuRgVOPbpVePtU4yAPrVNASYGOaeoApnpTuRgikMeM5x2zQeD9RSgk00nPJ70LQBhJzmmE04kKa +Yepx+NK12MXPQUxyFPA/Gk5z7UpBJJ7VOwyEv1qrKD1NW2ADH6VXl5GevFTbuHoUZBk8d6iYFeat +EY+uKqyOAcflUtLdDu2VZjtycdTWfMwyTV2Ut0P4Vm3BP8ulG5aKFzJyapMeTirFxgfWoBs2vubG +F+UepyK3gtBkWScml57Ue560o4/nWghOmKcOmOtMz60/OBikxpjc8804Hg1Hn8qfgYbtxxTaBMae +9RvmpGyCQcgjOaaw45600Zy1IgW/WpRiowKkxVMiKYc4zSDIPSn0EcA4wf51NyrDCB1zUTMcEA9e +DUmCajcYq4mVTYrnrToxzTWxz9elPi61q9jkh8Rp2/IArZt1/dEexrGt/wCEVtRB9megxXm19z1o +bEsXyq1Q3GGI75qVMAEe1QybiSeprmW5rYr5PfmmHdkHipHwOOnGahyeeelbLuUWFOBk1GxJwCKB +03UA5IBzyKSQmPjHPWnMRvx+tNGQDSHk+gwM0uoEysoPPrVsH5T2qkh6E881bVlIx04yaymuwmMm +YY61VJwxxVlgcA4quxwxz2qoDQqsCppuMjJ9aSM/e46UrZ2/KOAaq1mAueRjHTimjIkPpSxhsg1I +yBX+nWi9hsfDyxApzgBs9TTIyQ2egp8hy3B+lR1ExgyWPofSoZTxjvjipVkCkqe1V5GHPfPWrjuC +Gru4p+SemaYpIB4pcnA9atjQ44yOtSj+HNRDHFSAsCM9qhgOmA4qFuAc5OelSyjp2qKTqBxREQ44 +Cjrk0BuAKTqKaoIyfQ0wHkncDUpPHNRZYuPepmC7R9Klh1K0Z+Y596uAcEfhVRV+bNWV+71omO5V +uR0/OooSeh5zUs2ckde9V1PYZrWK92wic8Gl78fjSDk8+tP2YY5yD3zSAcFJ4PoM1ZhHDCq64zVy +3UEcZ9xWUhPYqvnPcjNNO0jHOeoOasSx7eaqSMM+lOLuPRk/lN5TN68VnkFXYMCCOMH1q2sjeU3P +AFURycnr1rWmt7iRZtQTIMjr0rYl+WHJrHsceb78c1s3Z2JtPdc/nUVPiJ6mQcZ6d6r3JHAJwOlW +4znPTjmqdxz+FaQ+IctiGENihiodCAQR1qQAgEH5SDiqzN85PSt1q2Q9i2ZMr74qKHbupzEbcnk9 +qSHGT6GoSsmPqOnwFyKhUsRgVPPjbx0xUAxgnPanHYL6iNnr6k/WmdTigk7ic9acuSQfStNiS7ws +QB9M1G+CqgZp7jMag/exSPnC1iga1NGxX5Rk9e3rVmY4U4qC1bYqgdhRPP2+tcru5F2Mu4Pz++aS +2BzntUcsmZOcnmp7VTkHsa63pESEuHLOoxx0q02IogO571FexqsoXcRxnn6ZH502SQ+WB2xg1DV0 +gjuKjnPHrWnG2QPpWLAxLZ9zWpE/AHoazqqw1qx0hAk/wqwJDt5qm7HzPWnNIwUn1FZu7Q7Df+Wh +IPWpJWBRcZ3dzVdCGyamkbGyqa1C2pYiIAHfimu/zkfwk5pVlBZmxjPJFQPIHl446Ura6CS7kshO +ehxiolzg571eWOMk7z0ziqjAJn2JpXWw0LHuBBHan5ZSSBwT1qIMoFOYnpmmJj5J3KEmm+ZtQg98 +Y/Gom9CSM0HO5V6AfrT2BIC/zH1FSoVIOeBUfkv8xHpSDIAQjHNNoRLJt4wM1IyjA7dKh2nKnqfS +pm/gzg5GfpS1sIhkwuMZ4/WnK/GMenAokGeR+tJngZ9aNQ6E8ab1HYZOanKBQPQVU3yINg9T0pwk +3EE9OlVcizIpplBJPbGKkR/M5UYHWllWF8YGablVAAOBTvpoMvgA6dfn/ZiGPXJrz68BN3dd/wB9 +If1r0EF/7MvpM5yYVH4H/CvPrt2+1XJBxmV+n1rvw/wnnYr4v68j6S8cY+1xf9cR/M1xUhwSO1dl +46bF7EP+mA/ma4e4YrkjpXoLZHCKXUjnrTVJOB6d6qPLgE80sdx+H1ouymtLlxuOPUUnpUfm5wfS +l80HkmmTYlGenWplIGBVUSKoJPrQJc5xQFi6GXPNPDjv61Q80E09ZRnBovYOW5bZlGCDUZIxUJly +fwoJz9KLi5bEUyBug9aq7NpBzg5q6cEH1qExnr+NF7jWgsU2Dinu4YGq5XHSnjj8qWw2kyCaMGmR +h06VYxzzSECm0uoJ2HIcjOeDTxnP8qAoC9aFJzj8KGK4oDZ570jg8Yp9KOT05oAqvHu600W+MAVa +Kjp+tJ04NMBIoiOgq5EMCq4OMfWpkbnGah2HqWQWNBQmlRlXrUo2nFVckqGHcD7VCbQnt0rRCAHN +O2KKLk3dzJ+x89KPsgx05rW8tDSGPHXFA7tGV9kGM4xTfs5XPHHpWsIvakaJOvrTDmZk+Qecik8k +ZArUZF6EVFswTQFyoFVfzp4UdvapjGCM460wFc/LyB1pWsVoGDjinYbgAULgmph3o6CuQhD6U8Ln +jvjNTBcHn0pxUdqAuVvrTgy96maIHp0pjRUCE3D39qeHz3xTPKbtTdrcZ+lA7InDD1oEgBxUGWU4 +OeaA3zc0CsWg4AzTg/Squ7n6U7JpAXPN79qUTgdaqZyeaQn86XUdjQWcetIZhnrVDecUnmMTnPNO +wrF8yj1pDN05qokg/KnB80WAteY2eKaW9c1CrdqcWweKLAPD4FISePWmcGgEkge3WhisOPvUZQNU +pUninBc8elNAU2hY/So3g6EVobPWjyhjpxRcDINufTml8kjtjFaTRDPFKIRjkc0nYfOzMRXBHbJq +VpZA1WzAC2aZNb8niiy6D5+5Gl6wwPSp1vRkenHNVPs3X86i8txSsXdM1PtSnkfSmmRSCc1l/MBy +etL5hHFK7QnFdDS303eFHXrVFZj0NPDFj7elCE1YuiY4waXzB09agA3VKqn8apCeo8cmnoBmlSPg +4qaOLJ+lJisNC4qeNDgZpyxL3HNWI4s84pNgMVPWp1SpFhON1OUCouMYsZHNSgdqUU6kAgFDEUjM +BzUEkmelIYsknaq8jk0NzzUbGqQhj803AApWPemMcmqsIQselQyZIHepGyTxUbd+apCKUqFs1Slt +t2QR2rUfHFM2A896odznZdJjkHK1nT+HYnbIWuwEan8KQxL2GafNYWrR5/ceFQT8o5xms+TwzOuc +ZFem+Qp5xUZs0Y5K+tO6a1QryXU8sk0C8T+Emq0mk3qZ+Q160dPibqB1qGXSoWH3RS5Ydh+0meRm +zuB1U0wwyr1U16q2h27ZGwdapS+Hbc/wjrR7GHcPbPseabT6UmK9Al8MwEnC8VWl8KxYJHUVLoLo +ylWXY4iiuom8LOM7ewqjJ4eulzj1PFS6EuhaqxMWitM6LeDOB0qB9Nu0Jyh4pexn2Hzx7lOipTbz +r1UioypHUVDjJdCk0xKKMUVIwooxx70UAFFFFABRRRQAUlLRQAUUUUAFFJRQAtFFJQAtFFFABRRn +FFABQKKKAL1nLtI71vWknAJPfArmYG2sK2raQ4HPFctWOtzrpS0OgiYkr6Cr0Tgmse3fpz1rQhkA +PH51hszd6mqi5IPap1UcH1qjFKeOatLKFHWn5kWLSqOAPWpQev0qsJR+dSh1yOaadwsWB04qTJ4q +sHx065p+/jrUlE4PGPWpMnOPaq6uO1OEgGM+tNBYn69KVlbBbqKiEh5o812BGflz0qr6E2GHIJJP +0qFiSakY569qj5OeegyKTYyJs4FQMAOtSuc96glZcYPape1wTIH65qu4ByKmcnAqvITuJNRZdS9S +J9oGKy7/AO6cY5Facpj2ZGdwwD6Vk3pAU8jpVdRmFPn5qpcB89jVuctk/lVI5yciuuGxy1dzYtG+ +Qc9s1eHIz6isyzcEcnNaCH7uTketbp6GTKN2gIIPuaxXXaSK37rHPNZFwnOfzqW0nYJRbVyrySAK +KKKoyEpaSigBaKSigBaSlooAKSiloAKVfWkp6Dg0IBvFWrM4b2qqetT2/wB4VE9jSm/eOkt2yFI/ +KtG35xWRZv685rWt3PUAVxSR3rY04MngevFaMIAxms6HJwelaETLgCnFWJZeQcY9KlU5/A1WQk4z +U6Uxk4x+Ip2c4qIMMYNPHr6UAP559KQnHFIGyMd6jcnODUvQEhz8gUwdMUvvTdxpDDsaYW7U/nGP +eo3wMdqetrgI2DVVz1qdmAzVeQnBIFZvcZXfr7Yqm3OcVYfAySevSqpbHTtSdhorTj5eeOazp/um +tCbJBb07VmTMTkUolmXPu3HPAqs1XLkdKpN1rqhsK+gc0oAzQe2KAMAGqGkHOefbinA7QSMZww59 +6Ac5pD0pBYaBmn+opqg9O9Lz+dDGthDSN0oPAxSNnjNMh2Ex0xTu570meeKXODQIX2PagkYoyx96 +TGcAUDGsRUEh7VM3t2qGTpmric9TYgNSQjJwKjzyCRnB6VLF1J6DNay2OWn8RpW5Awe9bNuW2ZJ/ +Csm1TpW1Eo8rI9K8yva560Nh0YGck5FMfuR2pqh8nB4pRtYfzrntqaFSUNgHrUQUrwe/erEg5x+V +QHGP8K3jsUSL0GKTvk9ulMVhj8hUnXBPfvSeg7jgeDnmmHIPFPX2/GmggsTSEPQtwRxirkaqVJ6c +VUQHj61eRRtOfSs5sGQuw4Bqs4+f8alkJyAOmajJ+f3xTiCGocZHXinMcJjnk0n3Q340jEurkDgD +JHoKpLUBwf7oOeM1Iz5bcefaq6AcD9frUh5cfWhgTx43dKY2fM79OtOXAcdOvNMkwJCOvSoQEfDM +eagbOWFS4IbdTdoZmPoMmtYgN+YD1oA6etPGP50mQNuOnencBdqrjPrUvUrUZHIx+FOJ2kA+tQ9Q +JnAJAHHGahcfNycU9s5U5zTJic5x3NKIh42hKhB4qYL8gz3qLBXP1poYAncuamc8ZqHnge/Sn7gA +PfNJoAjYGpwmRk9qrIctVqN1xt45qZ3WwFO5xn25xVVM5xVy6C9RVNT+PFb0/hFfUsp1Ppintimx +5wcdzUg5IHrioe4x0a4wTV2KRV4FU1OCDUiNuYt6dBWUrsTVxLl2bPrVFj17461NJgscn2qBtigg +53E8H8DW1NJIGSAN5JJ71VBxn1xmrf3LfJ71R3EjPr2rSGtxFmyYb+PWtS7clF5OQuD7/wCRWRac +MdtXppMpg5yBUT+IS1ZCrJzjrzVO4ZsirQIxk9KpzcsKumtRti5YgbjmoVGXOeev51YOVAA546VW +XKyZNaxMpFhgdvH0xToQcfjUbYK+1Pjzjjv2qXsV1GzngAnimhcAHjFLKp/EGnBQqg8ZPanshrcj +KpubA4zx9KQBfxyKd3OO9Igy6/UU7gy04yq0jcso+lPuMfIB2xxTUwX6e3NZLa5K1Zcjc7fwqOZj +zuznBqRRxgDOeKjlViD681itzRszCuWx+VXbMZIB7etVXUA4wQQTyP0qe0zk4PFdM9YkoS+bEuM5 +xgZPcVG7ZQY70t3vaXJ5Ock0xhhB+PAprZEq5LaKCSeprUijBGelZlnwetaSsVHHSuete9i4jHVQ +5A7UkgJX0zUaPuc855NSyEbRgY61D0ZYy1KhlLLkZ5HrVvyxJ/sgCq0WAMr129KeJSpYYzkYHtRL +cllgoqqRn8aqKAJTipixI9sVCgO4nqKUWBYDtuOe3BqNyhGB3NIoJLknikOB83VR270LcByqST3p +2WBPOOopI+/P1FMfO4U+oCyHcwGepyT6UZweuT0pjnlSDnIzilweCetPcWxciusZzz2pkrR7gwHW +oIkLfnT5V2ADvxQTZXJBIF2kD6U1pcuMe+aiB3MBTtoD4FLRDshdwINNJI5pMZPHSlby8AA00x2Q +5pQRzTQ55HOKj7keven7uD7cUxW0JA2QF6Ypjlg20YycUi42sccngH0qNuT6c01YRqxuP7Eux/03 +jP5muBus/aJ/+ur/AM675k26HOT3uk/lXAT/AOul/wB9v5134dNR1/rVnmYr41/XY+j/AB4Cb+LH +/PBf5muHnVzkCvQPGihr1M8/ulrkHgXB4r0Faxw81jDMbjtxUaKfTvWxLCMbQKrmEA+lOw+Yp4kX +k9KXJqwyZHGKbtXIFKw+YhJYikDP2qYhRn26UzA74piuAPvxUmT61F8v0pwbn+VFh3JGOR+VKJGx +iovM460hcHpSAseYBRvzmqpk69KTzznjtRfUVrkzEknFLk5BqqZQcn8aGmAAxyaLofKy1uHB96Ov +NVRNjjvQbgkEZo5l0DlLIanBgvNUxLjjqTUkxlhC7+CeRmle+w+UtGQg8/SnBgB1rLNyxJ3UpuG9 +c4pX7j5DT3jj2pCQcg1nC7Off0pReY74zRcXKXy3T1oEpWqguFJBHNL5hOTnjrRe4WaNBbnGAe9T +JcngmskyEgEcinCZu1GoWTNwXCdKXztx9hWIs5z1yakF105obFyG2sw6D86d5mec1lLdLj3IqZJ/ +Q0XFyl8t0FBORiqqzcnJp+8cHNUTYlbGOmaQrzSAg8ZpS+PzpiGlO3f0pgiCjgCpsAkUvGcUaAVt +ozxkU8bhUoX09aAuaGCdhqEck9alDAD6U0J604xEjilYABGAT607AP5UxlI60hyKAsS7VxR5Snjt +USuQMe9P80dqVwsIYQSaZ5J5qcOKXIPtTug1Khj556Uu3OBVjYDmmFMUxeRDt2/ypecn2p+0DAPe +lwAMUOwyFun40Ip6VJgUAAUBcjZSoFGTj8aefmyD2phpDHDt+VSZBxzzULe3NPHrQFiUqO1PUD07 +UxSNpp68UtUFkPwaeCMfhTevFPB4x600ybD1HAzSheufwoGO9PHSkDG+WDgkUmwZ4qVfrRhR9aLg +Q7ADTXXmpT9ajfJOTTQWuV3Womjqduuc0m1c5pisym0GcY54pht2rSMS5BH4UGJqLj1RleQ9SJCy +nNaQgHHFPWAc5FLQbkynFC3B96upD0NSpb4+lWEi4HvUtgRRw+1Txxc9KmSMdKmSLmpbGQCIdamV +MYqXZxRgCpbGGTjFNxinE0x3xSAU8fU0wyEVC0pqPeT1p2YEjP1yaiJoOKaSOaaQmI5BqJyQeOgp +3Y1GT1GeKtIQ1jgU36U7g0w4zxTsAh9zzUZ7U/6+tMfJPFNCGMMj9aj5yal5xjsKaeR6YoAjwRzm +ne9JkDjqaTjP1oaHcfjjikAK0gOBinAg5pDFA4+tAU457mlXHU04EZFO4nsXba1gaMlhVKW2jLHA +wM8VbQ4TrwaYVUAmkm0JpFQWqHIIqJrRc9K0doxn2pNhIzT5hWMiSzHJx9agkso2xgAcVsugAx3N +VzGOapSYrIyRp8PoKjfS7ds/IOa1mTH1pcDGKfMx8qObl0O2bqgqjL4btmOdg6V2HlrnAFNMIycD +inzsSjY4aTwtbt0yKqSeEzj5T616D5C9MUjQIei0lK71K16M82fwvOAOcZqs/h27Xgc16cbVDkY5 +pv2KEc7aPdfQOaSPKn0W9Q/dPSoG067U4KGvV209G/hHtUL6XAR/qxmlyUx88jylrW4UZKGozHIO +qmvUpdEt3/5Ziqsvh+3P8A96l0oW0H7R9jzbaR1FJXfv4bt8EFaoT+GEySvFL2PZjVXucfRXQTeH +Jk6ZqnLo10nOD0qHSki1UizLoq01hdKcbTUJt5h1U1PJJdCrojopSrDqDSUmmtxhRRRSAKKVW2sG +wDg5welNoAWiiigBynBrQt5+AtZo96kRyKicbo0pyszfhuMY+bpWjDc5GM8ZrmI5ypBzVyG8bjLH +HYVzSg07nUppnURXAOTnirccueM1zkF8Bxmr0V6MEkisrtGptrMTjmrCzDFYiXajH54qf7WSTg1O +gWZsLPz1qQT8jJrH+0cDmp1nBA5p81ws0ayzH607zDWaJsdKlWQfe3DilzahY0BNjrQZuvPWqfm9 +waPNHTvTvYRa8wAZzzTN5HOetVzJ2pjSEAine4rErOOfrVeRx3pDICDVdpM81Nxg8hOMHtULyZBN +BdSRj171G5TufrRbSxRDK7bTWXdSDBx7ir00gVTzmsq4kB6jNNFGdOcHn1zVORmJHTjgfnVyTbye +5NUZDkmuumcdUuWjNmtFSSAO2ax7YgHvWpGQRkGt1sZDphkH3rOmGc/jzWizZ69zVSVR29KzluaL +Yy3HPFNqxKvNV8Vad0YSVmFFFFMkKSlooAM4oooGMjPFABg4BxxzzQKDjJAOeetFAgpwOBTaXt0p +oYhqWI4bPpUVPQ81L2Kjublm27GW9K17Vueua561J9e9btq2RXFNO53wd0bVu5YYHFX4lIAGcVm2 +x4wPStCLnFStRl2MmrC5NVlI7fnU6Z4q7CJe30qRW49KjGe/Q04Y54+lJ+Qx4Zeo4pjY65pTmmZx +n35qdRgTjAphYAe9KR09aQ4GKXkMcDnvUbnrTvcU1j1pXbdgsRAjBHrUEhGMVM5AH4VWdv8A61SB +BJj7v6VUck+3qKtOeeO1Vpl4yPxpWux3Ks2Occism4bnjitSU/KT+dY13IFb696tRC5WmBZfxqow +IPNXA24HHpVSQNnmt7WZMXcjLDNL070bePpSUy9R3YUnOPpRlulGe1AXF5IHtS9KMnAGaTPWkUNJ +/lSs7OEU9EGAPSgY6mk45pksO9BzmjI5xQTxmmId0xg54z9KTtQO+aQ96QdBpNQyHipDUMh4xWkU +c9WWhDU8J9KgqxAATWktjmpfEaVsSMdq2V3CIVjQEB1B6Zrb/wCWXB7AV5lbc9eGiGKcqe1CZ556 +GhMj3FNGctg1h0NCGYk/nUBYngVO455/KoR1z154rWOwwAI5zTix4+tDEEehoJBAzTEO3EDNJvww +x3FAfIIxxTFwT83XGaVhliMnHrjkmrSvxxVVMYGOhqxsPUdMVnJXExrKTg1D1Yg9atOfl61VHL4o +i9AQw4ILE9CaZj17VJjAODxTOxPfFaIomVCFyODSMDuWpVICqD3qOUc5Hes03ckaM7s57U8Al+en +WmDO4DoP50pBz16UykKRjOTVVmyWqZn57VCOpz3NXFAOXeRk9DnFK2eP0pqnK4qTJYcU3uAd17Yp +zc4pUhlkJ8tC+FZzjsF6n6VG5546e9TYQ/cTtz60rngDrTCRxSsx6Dr7UWEShsLUQORnvTixKZFR +oeTmkloMcxAwfbk1IkbzRySIMiMAn2FRM7ICRxwadbrJlRHktnIxT0tdiZFuYMcVZXOBUUgjErhD +8oc4+gqRCOM9BRPyGiKYjYaqr970xVq4JI+YcACqh6j19K0p7AWYzx1qYckktzioY8ZBPAp7MBn1 +9KiS1EHmAkjPNTRs3buKqDGferUHUdKUkkhEMud/PFVzu3YzU0zDcfY1CpYsB0rSK0H0LFzhYgD7 +VRzjOeSau3bHYPbFUCuef506WwrlyxU1PPkKR1+lJZDaue9ST7Qox3zWcn74IqDdtBNVZTh+OOav +YyhqhKfn+nFa09WTLYe+7bnrxUKbs89c4IqZshKjh5JP4fWtFsS9xzZwB+dTxxgoWXoCAT6ZqvJj +cAOvrVpM7fwqZbFLcryn5hmn8bPbBqKUHfz6mlbCqO/Bp20QdwDcY9KdHtypByO+exqJcHJJH09c +06M/OKbRLdy1O65A/Wlt1LN171BIf3gFW7OP5h65rKWkQi9S5tI6cYqNsZPvUrEZ+lVmDd+OO1YR +uyyjIpVmBHOO9S2xC8moZC249OfWpIc49xXRJe6CBjuck+tQzEgkVYXksT69KrzMZJXbAXcxIA6D +NVHcV9CxaBk7Z4xz71cZWKHB471HbIgVSOSQM/WpZ3CrtB7VhN3kOJHGCpzyOafLytNi5H86WXnI +zjjNT1KEQdu/8qRCzOR1PPFPXG35qZEhyTk9aYXJ2JEZx+VNgwBg/jSOxxTocbScd81FrIGKxOGx +3qNshQcd8U4k4JFMfkCmgHo2RnoCKQ7gfm6HpQAVX8uaNpJ609BdRgOH6cU9iSDzjgYqNsBuDnNO +Xdz1z0pgyzCQgXPc1M7QyAnHOKpF2yB171Kjbc96mzJY0qwb260DHzE9cYq0jKwYkDmqr4PQcGhd +gTE3FRt7A5HtTCcnK08LkdcU37rkn04qrdRoTaSQR04pSr8k8U8OuRgDGalaVSmBgkUXsLUhOcAe +p6UmMHPbjH40pySMimblJA4wOlUhM1pW3aHL/wBfSAe1efSkiaRh2kYj8679SDo0yn/nvGf1Fefy +/wCsf/eNd+H1h/XmeZivjXz/AEPovx9deTqSL/0xX+tcxHext3FbXxI51Mf9cE/rXAebKjDBxkgA +V2NtJHJGKkjqTLG44qKQLWJFfEdetSm/yCppqYOk0XHxziq7Pjmqz3R4yahe4JHpVcyBRfUsvNjB +70wy47/WqbSZyQeKYZOcHpUttFqKLZnIyOD6UhuG+mKpsTgHJ9qN2M+tK47Is+fk9aUznp371Wzx +xSBl5o5tQ5Sx5pz1NI8mGU+9QqQM57jimsOetGr0CxMZCzdflxSFiMZNRck+9ObgDn3oAk3sCcGk +3E7ce1MyPzp2PlyT06UILD1chgfQ1Lc3s1wQX7cVVBPbnjigHcD60rLcethQxbnFIWftkc0o6emK +RgOOOoo0EQ+Y6EEfWopbh3O7ODntVhlXGMHOaqumDRYCRJ3UHJz0qzHdjA55NZvPPtSAnP64rO7u +XZWN1LrgYqWORTnJHNYqSjBBqYXOAAO1NNolxuapOBx1odt3TtVRZSwBzUqkk8VqnoQ1YnUsuD1p +8c7Z9Peq4DU4KQOPrQ0K5oLOcgVOs2DgVlbnBqRZW4HrRsg9DVWWpBJnvWZFKQcGrCyjFPm0JtqX +FkbNSeZ+dUhJnvTw55zQhF0Pg47U8OBn1qlvbOKduZT+FDEkatp5Dt+8bAAodkLYU8Z4rNEvTHSp +VmG3PpSBpFzaOf60hiz05qFZi3NTpID+FMmxF5R5phiwfxq2pDdO5odApxTuF2imMrnHFO3VYeJc +ZFRmIc4p6BcarA4pdwPfpTGjYD0pnzLS1CyZLgdfej5N2KjV85yKexAGc0ahYQ4BIHXFNyM/WkLD +PFMLE8CmNIdnrmgYxk9aj3ZoLL0zSuFh/PT1pwC4x70xWXueO9SK6UML2HqM9KfyOtMBGTj8aUsO +KBakyYwCadkZFVvM4pvnHJx0FDQ0X2yAM9+hoV16e9Z73r4CnoKat1zyKWth8pqF8DijzBnJNZ/2 +n3p3nZ79KQrF3dnvTJOvFQrN61IW3YPtTFbQQj9aVV659KcOcCpAgP1oARVBx+lTKAaVEx1qdIxx +SAYI+BUqxCnqmOamVKhsdiMRYNSqlSBRTsClcdhEA604cHNGMCm7hSAU0xmHFMeTnrUTMTzmnYB7 +ORxUZYmms2cg0zcMYp21Fcd8uOajfHWkLdM01264qrCELkUEmot/PtRu7UWC48k9u9MP50pxTQcV +QmxGBpgFPOOlNIOaYhKQgU/rimkDk0DuRkDtR68fhTsfzpcDn6UAiEJnnHSmsB3qUjHSmkA8YouB +FjnnjFOHJFP2jOelIQBS6jFwATSqnc0g6jFPAJoGWFUBCaTcOlEbAIyEdaZx+NCYmSBu1APemcml +zxSEIfeotlS59aawHFO4WIHXH1pvy9/Sp2ANNKgUxkQC5zS4GT70pXnmikMZgdx3pCB/9an46dqa +woAbs704KAMYpRwOlOXpijYExm1RxTdoPGKmKgmnBO+OlFwZX8sHt3pTAuTxVtU/Wn+UOKLiM82i +nJxUTWKHtWqI8/WlMXTinzCsYj6aGGQKgbSUb+EcV0YjA+lIYRycUcwHLPokJIygqvJ4ftmBO0Zr +rzCtRtCvcVSmybHET+GoG/gHNYd/4ZZQWjGfavTmgzmq89pEw5Ap8yejFqndHi1zYz27MGU8VVIN +en6tosTK7KgLcmuKvNNMBPGB/OsqkFvE2hUvozFxRVw2/T3pPs471g3Y1uVKKtm36mozA3pS5kF0 +QUoxnnpUvkNke9N8mT0p3Q7jTkEg9jjiniQimmNwASOtJg5paMpSaJ1mYc5qwl7IOM1QwQcUcipc +EzSNVo1kv29asx6i2Bz+NYQdlweRTg5rJ0UbRrnRR6kB1ParEepN0JrmBIfWpBM3y9azlQNlWTOt +TUd2MtVhb5Cww2TXHpcv6ntUy3kgI5NZui0XzRZ2H24f3qcL1DjJrk0vW4APWpVv2PAPYVPs5dR+ +6dO12D09aR7s54Nc4L5vp2pftzcYziizsLQ6E3K9/SoGuAR1xzWN9sY96DclT7elJphoaTzg8gmo +2uAee9ZxuDnP6VE0455z6VaTEXZZuvT6VnStyR7UNLnv9KicjOc5z/hVRiDloRNyD3qnLncatuRj +pVSU9a6IHJV2CI81oQvjFZQJq3A7dfStdmZRZoZ3cetNYcED6VGGOBnrmpT3IrGo9TeC0KUinPPS +qjrgZ464rRlHFUZRyTVwZnUiQ0UvQ0lamAUUUUAFFFFABRRRQAUtAycAfpSnI6igBtOXrTaUUmNb +l63fB61t2cnAzXPRMdw/Kte0kI2jtxXNVR2UpHSWzjPXmtGJuePasa1fIGD2rVt244+tYJ2NmaMZ +GKsoRiqakmrMZwBk1beugrFkHJ9qXJ55qNGGcGncAcUNgSKePpTGBJpMnHBozzkntUXGkIeCATTC +Caf1PFMGcEe9CvcYbgKjY9+1Snbxiojxmp1uBGxPYVA3NTNnnAqJx+tJgVJMrnjniq0rkdatSqBl +jVCVuPWqegIqXT8cY5rBvZMMPfmti4JxnPOM1gXzkMc1pBXkKTtEntm3A/zqOX7xBo09gePenXKj +f9a2mupnTepBnPHsKZnnpS85xTd3UVKRtcd2pKOuacB7fSgocdoC85yOnpSY60Env2xSHpk0hiHH +GKYetPAByR2puD6VSM2HQ0tGOvtR0we9A1cN2Pf+tJkgZ45p5UA/UZx6Uwj/ABoE2RnvmoHqY55q +Jx1rSJyVdiKrFvgZqvViAZOBVT2M6PxmlAVLLWwrfu9v51j24+YYrTQqV54rza61PWhsPjx19M0h +bkipY9vP41AR85PYVjuXcSTqMfnVYkdqsS44xUQAx+NaRehQAZH4cUmBg+tKSACRTRnOcUxDwPlN +RgFs4p5LYIOfao1B3HmmgLKMdo9jVjLY9qqIwJ9zVteAR24rKS1EEjHaBUKMAenIGKkkJ2AGqxbB +wKUVoND29fXvTTtwOe9D/wCrx3PSosHjFaJDLbD7o9cUxsb6C/Cj0pMnfyOtQkJjiCD64xSHBYet +KQcjNIoJkwMnFMaZFJhXPbNQjGT65qaUfPkcmoTkkk+laR2DqSjBQ4xQCMnAxk8Cmqfl6YpckEfh +SsMtfPEPkYqWBVsdweoqs+dwANSyu2FB6VE5BIqY3JsDMuBilZvlHqaacrj2prnGOlUkBMudn+FJ +HjOR37/Wmhsr1xRGcilYY58jg8D1qRGbYyjgH071ATuIB7VKOBSa0ENAFSx4+tVuQ1Tw5GaJLQYs +3KkVQDfMa0pcbevas+RIxHFIr5dncOg/hAxj86ulqiW7D920hRzinFgQc8kn86jTeOVznk5+lS4Q +x5JIYAYAFNrULjQPkD7lPzYxUkTYOPaocgDkGnISCD1xRJXQIWU5z9aihxv6U5uc8j0zSW33x609 +osGSXZydtVOTjPrVm5HzioAUyCc4BqofCI1Io0VOvYHOPWo52GOM1Mjb7cP/AHSq89wen5YqB8kZ +K8AisH8QRegzA2tz0GaonBfB4ycA1dk/dgjqOazw3zn61vTW7FIllb5MUQrxkUyb7o4pYzIT7mqt +7pN9RJD823H0qeP7v1xUDhS24ZPtUqnjvzjmiWw1uMYkuSeWpGxg/SkYgtgJtwACBnn3570jZC4p +2BPQaAencU9AVfBPUdvemLnHfpT4FyxpvYRIuGk49eatwHa1VoxiUkfgatQYLdKxqPQIll2IGQOv +FVXkbOSenHNWZGOMYx9KqSAgNz1rKC7lyIJZTJK8jkFj1IFTQgBSfaoFjeZ9qDJ9/eplPyeuR1ra +WqBIapHJ96gwHf3pyNg8+5p0YBfIPJJFUtCehehG0D6U2Taz4JqREbAbPy81DtZpT1rBbldCzEpz +kjtUUy/Nn17VZiIA57dMVWcbmyOuaiL1uFyRVGw5IzjpTIwCQe9K2QMjiliJBFPoMJgMUqN8vXrk +02ZhxySeOPagABe/NFtBjt2eh4pGByRjig8Dngg0m7BpWAkbbsA9qYODgU/luvehY+GP4UJCuV8A +kn8KXjZ+NPOOcdBimcc988CqAUfeA44B5p68ZOeKbgDt2pY2RuHYhTnnHfFO1ySeEZBI5zSspAyf +wFMtmlAYD7rYU/TrVnbvIGTSYupVZiBj1FQg7mGRV8WyZAJ61HLAsXTqeoouCd9CANwOgA6EUEja +MHrmmggkgc5xSbTxjPFMY4k8nHpTcDv3pcNx17cUEnK85xxmhAaAYnS7oYziWHk/7wrg5Pvv/vGu +7L4sJIsY82SM5+hFcHJ99v8AeNd+Gd4f15nmYte+v67HvvxGb/ibbT08hK4CYDBOeldz8SCf7Yb0 +EUf8q4GVgDgd67G+hzQSsNLdDShvfpTMhT6ilAGCxP0AqVc0dkLvLHBpS3GPemfLzxg9aQj8+tNM +Vh54HtQd1BPQeg5pM446e9P1ELlSBng5oYoDxyaTAJwfrSZH4+lLrcY4ZAJpACWpexGOlHGOO/Sm +tBBnA46igqSDg0AE8U4AjPei7ewCDgdetJyffFOIPC0gB5GM0AOGMHHGMUmM854o69R60oX1FDVw +uBx75FKBn8cU7b2x1NOjT15GabVxX1GEZJC8jtS8EAAc9DUgQ7hin+SeTRZhcrtGxx7ioZoTjitL +yT1x70G3L/gOKolsxGjODULIex781tTWTL0Bqs8G08L1FJrqHMZ4Ruo59fanA4YCrP2Z+1J9mIz2 +qGrlcyHI3rxVuNgQDVQROMVai3KQMdRTWgm7lsbeMdMVMq5qKPGcH2qyAAelPoZvcb5WeccYo8rj +Ixx0qUD1p3ene4tisUIOcU5dwAzirJAOeKb5YGDTsF9RFOfaplGKhK7funmnbz360ajLKt+tPGf0 +qBXzUwZaLiFwBTui8GgFSeeaO3FMGhVcjjPaphKMcVVIOKjDFeppMNDTSYcDODUvnAkHNZAlNSCc +8E0gcdDWMqkdaTeOPWszzsHOaf54wMGmTyl0sDmonA7VD5wOM0GQEU0wtYGODmjeenWmb8kdqRvr +TBIduH40ueOeDUYYdSKerA5oAMHrik255qZdvrT8A/0pBcrFSBScirJWk8te9FguRB2wakBLDOaR +lHaheB70bDYc5IpSv4ZpV6sakJHFDEivIgHT86ZglvYd6s4ByPWkEXX609AuyuY+eDxUqIwwKsxR +oDyM8VMkIPTtUMd2RJEe/NWRHwDipY481ZWE8UXEyusWT0qZIxVhIsVII6m4EQQYBp6LUojp2zHW +lcBqipAKUKBS+1TcYAUoIprGo2cUDHlutRF+TTGbOfWoyw4ppCbHMwNRMfQ0hbIphPP1qhClvSmF +wc1GzEGmbgc807AP3Z79KCRyO9QtgdO9LvGc0dRCk8mjntTQQCaUg5NUA/rSDHamcj61IrKRQKw1 +lxg9aXsDS5/Gk+tAAcYpCMj+dSGNyobHHrUZ9KAG7eB+NISOlOLdjzTdlADePxpNo/Gn4AFL29KQ +EYz0xSFTjinkn0owccUxoaPalUnr1pMMDj8KTJXikBLk4HNKTnk8UwEHnNIG6g80wZKuOc0ADrUe +49u1KCSR2oAexGOetNz39aCAaB09qNAG9fwpGPFPPt0ppUkUw6EZ5+lGCenapcDHTvTTgkikAzAo +wD1p2BS47UDGhcmn7ODSkAfUUoBNIQgUYqRVI+lAUCnjii4WAL1px3HGKQU/IpAhBjt+NOAzSDAp +cjOTQA7aOlNPTIoLYApcjjvQBGRuppU1KAeTS46UAQFcjHrTGiHerWF6UxsUyTNntlk7dq5fV9LD +5IWu2KDOcVnXturq3FaJkWadzyy4tPLJFVzFjpjHtXU6rZsrE7eK51wFYjFc9SNjoi7q5XMWc8+t +NER5496nHIJ7U3gkgc4xXO9yuhD5a4yTSeWfSpgMjsKUnjHbilsFyr5SntTTAM8D1q4uW46UpQHk +AU7juUfs4I4GfWmtbkYwK0DGKljt0dHPTaKLhzWMfyOvtQIOcc1eZVHQdaQL3HApttDUin5PHH5+ +tJ5Jx1q+I1+vvThHwBxjPelqVzmdsbNLsfkdDmrciDPpTAoJwPrSuWqhDtcE8dqUbgRU7BT9KPLz +yPXrRuilWI1LY69cmnqTtGTSMCvTilII61LRaqj9yhBjls0FieTkY4oQnJHfoatSRxpAuMGRjyfS +pa6FKpcplz+OcUzeRnml/T3prKTinYOcMknNKCWx3pCOmaUjHTvRYfOhknU1Ukzk1dcZGV69aqSI +ea0gZVHcg5qaJj0/nUeD09KcnH+FasxRdibP61Ofu8Gq0eRgepqwpABrCe51QegknYHg4qnKo5A5 +HvVtxubg44qrMKIBUKvfmlozyaBz/Wug5RP1pKcRTaACilwcFuwIH50lBIUUUUDCnN60FixBOMgA +cDHSlbnpQA3jA65yaQUUUATIecmtG2kII+lZi5FW4GOR9axqLQ6aTOjs2Bxz1rXgcjvXOWshGDWx +BLuxn1rke52bm1HIeOc4q4j+tZULVdQ8cUX0JZeVh2+tO34zVeI8nPSpMgH8cU2MmU8Z96G54HrU +YY9Kfwdvsal7DHZX8qAOTnrQcD0+lJuOTVLTcl6jXIBzUbMMjPNPbHc8ionwMVLGkNbvioc5zUx6 +E+1Vm74qfNjsQT8rycVmyAc478YrRlGRyMHvVKRQvPWqsJGbcdDx61zt/wAtn6V0N73XHFc/ejj1 +rWk/eIqL3Rlifm9KvXSsAD7VmWzFX4rWmO5Aevat57GNJ6mceaZzU/y7sDpxTDGcM3bIqEzoavqg +UHGcdKdEYw3zglcHgfSm8DikHXFIpD855pmON1PwOSTSdRgUIb1FVcjAOOCT6cUzkU4g5x7UhGR6 +cUCew3OaN3QdqTawOMUNVE3HE5xTSeaXnBPHUcU056dxRYTkMJFQyHNStjnnmoXrSJy1XoMqxAKr +1atwTinPYij8RqQbeMDBq6uNtUrcZPtV7G1OPSvOqPU9aK0HoxwQPrTHLAmljyc4pdpPX6Vj1LIf +mII9ufakGQFGO9TMgXNRH7oPrVJ3GNbnAHfmgbhnI496ax4OPWl3PgKegyRntmrE7gdxA+v5UwHB +Y/nTi/y898UkS5GCeaeyGPjOW6Vb5I9zUSIRt+pxVhwBj3x0rKTTeghsv3Rx6VV43NxV903AH24q +k4wxPHSlFjQnOw56dKQ4AX3pM/KRQScDPPSrsMXOCM+lSg/Ngc8Uw/eHc05G+b5hUsB54fLdqYNo +kJJ7GnOV4bIOQcgdR9argjfzxQkIdI2WJ9uaiAGCTTmB3k0zpnvWi2AkVfl9M96X5RtHA65NMXO3 +5fTFNJJIz64osOxNLKGKrgDAqOQ8470hznJ9BSc7h/OhILivnA9x0pG5UZ60khxg+tKTwB+tMQ7d +hTkUqE9Pek3FSMHkYPFIucDHrS6AOf8AXPFPAyvvTGIzyemalH3fr2qXohlYdWGce/vVyAfLmqnO +WI4zVu3DbCBzjniipsAsxypPoOayz1/HFajn5Wz1INZjgA5/yKqiS9CYqV2k5GRxSFug9Kc808/k +iV2ZY1CLn+EDtSlQOT2qnYWpGfmJoXPTNOYBR+dJ3z1PSmthkb55A/GprfAOcd6hbOTxgd6sW64w +D9KJfCLqRXDEuc8HHNQDJYAc1PcKuWYt8wYAL6+pqKMkMOcdRx71UVaIr3NBGKxhA3y5B/Khzux+ +gpwT5AMfjSMMH5smsL6lJjJl4/DpWdlVJAHvWhcH5Tj8BWbnJHHOTW1LYiW4rsG6+h49aajECmy+ +p+lC4xxW1tDPm94Nzbs81Ox4zjtimRq0h+Zs9cZqRlwMdx+tTK1yo7EKnDHvTpSRgYxwKEU4LBTj +JFK4ZiMDpin1BbAOmPSpEO0tnHXrUeCBjp3qUD5Cfr+NS7DdxYC5du3HercKhTzVKEgFvoKswHJP +41nUW4Uy0ymoZFAVunSpVkDHHQnApJgBn09axV07Ft3M4Yz6c1YIYLjocZ/Oo8bTgc8kmnk4X8K2 +eoIrZGD13EnNPtslhjjJqBs54NWbQDPPTNXLSNzJPU0d3y7RVdAfMPvT2zmmR5JJAzyea50tDUst +lQcGq8TEtipZi2PwqK1Bz+dEVowZZdeMgYFNQdD7VKxIUU0gYB+nSpAhlzkA08n5VA7YqOTccEA8 +mnjOMntT6DA88Uwdeal4Yj1yfxpoU5PFId7EkZUZ3ZxtOMevakLgjilchcYHOKh55FAvMePmRvXk +CmhTtH41Mi/JwuT3pjAgdMHpmi4mNB3HA6YoCEodozjmo9p5IPPp60pLqBVMLE8bBVAHXPSrDShc +EVVG3I/Gncs2PQVNrsklec/eP3uOlVnmduc0MGBY4GKj/wAmqsNWHrjGec5p/Vh37UgxgcZpEOSS +cHgj6Uhj8kjn6UKOcnApU3Hg/d6Z9KV9owBj60CLTsfsygj/AJbIM/UiuDf7zfU16Fndpf0vI/6V +56/Lsf8AaNehhvg/rzPMxbvNf12PdPiSu7W5B/0yj/lXByglmOOld/8AEhS+sye0UfP4VwUmcYbk +jGBXTOSvYxgvdK5btjAoB4NKE5znPekCnr60ubsXbQeoPbvQMcigbsjJJ7AelKq/liquiRvzYH1x +TuhHfinhdxA7d6mSIntxVCsVlyc5p+DlcA9etWBbtndjmnrbMccHFDaEisUOPfvQsPIPpzV/7Icc +Dkc09bUr260WtqJszynzDtmkCHkd61DYE/NUgsG7CqSFzamUIyQAKUQsDwOK2E05gAB7VOmmnuM8 +0xcyMT7O5zx3p62z1vDTzkZqQaeMdKehPOjBFrIRjFSizc8VvR2GBgirC2Kg9KexLmYCWRAHH0qZ +LFsYxxW+louRx0qcW69cCldC5mc+lizZG2pv7OIHHatwQKMGnGLilzCuzn5LE7QSKy7i0Vc8V18k +Qwe1YuoRAK2OtUncSbuc40XGB60JGO9NnZ42PPFMjufmArO6W5tZsti3UjgU77PxUkUqHj2q0o3Y +6UXTJd0UREw7cCpl3DFWmiFN8o9qpoL3GfexjtTgp/HvQFI/Onp6VIWEVT+FO2DtzSgHH0pnIJx3 +qk9BNXH7c5puzLVIMd6X5c0rjtYrhducGnq+Dz1qYoCMjrTdg4oDcN/ORUgbtUZVenrShT6UXC1y +XaPXmomRj07U/LDnFOBHGDVCsV9hOabjnvirO3APvSbBiloF2Qc8j1ozjj3qTbz700oAfxp2uFw3 +nJo3nOKaQQxpMdPWgCQyjOaQSk/TvTCKaASPfNIZL5gBxTllHXNVypPam4PFDuFluXllAJqVJhtx +3NZ+GBqRc7jnigfKX/OXpigyjGe1UAz9+lO3sMDmlcXKXC67c5FN80DpVXL9ueaeFyMd6aBoshx1 +/OnZzjAznioFjlxnnGasxocj1Bp+ZLRIU+YAdqkUN07VIkZODjmrCwn04pXEiGOPrn8aspGP/rU5 +Iz3qdUxzSuIbEh44q4qEAUxFwRVnHSs2y0hgFPVBQMEZp4qbjsJikIpS2OlN3DHNAhfSml16UxnH +WmMw5pgDP1xUTO1Bbrmoi2KpITFMn50zJ60m4c1Hu55ppCYFiKTzMnFRtz+FMHWmIex6A9aTIApC +xPNM55p7gOYqRTOODScj6dqVfanbQQvPWnDJApPp0oBzx0pFMTmjIFOOD06UFeBimIcpGKM8j3pn +6U4Eg0ATrOAjR1Dx+lHGfwoOB0pIbG/xZpwNBIA96aOM5oCwY/KggDmlNJk9KAsxuCT7UrHgUpxS +Fu1ADRz+tRvkYqTdTecc+9ADepFKMjtTiMACkFO6AXNL6UAZNLilfULDgvHvTtvGKbkCl3dKAFwO +gox+tIGxn0pCc59KYICcD2pmQBzSEn1pC3PrSCwqgU4bR070g54pOn4Uhj8889aevSoQ35U8NnNN +iRJ7+hpwP5VFu45/KnLgUhjww5x+FJuxj61GWAPWm5yODQJIsB+MUFhiqu8j6U4NxzQOxa3ClBAG +fSoAc4NOye1AifePalDVCDxk0b/5UATcEUgIqLzMd6GlABIpBYdxUMqqfxpDNTJGY8incXLcyNRs +1kRuPWuMv7EozcYA6V6A+ZNwII7c96xr+x83IA471puiVeOhwDKyBgOhABpufXita/s/KZvQd6yy +uOMDr+dcsoWNlqNPcmm5II9OacQCOKTb0/GsmFh4bBBHQd6XI4FIB930FMPpz+NSxpIkyOh9BUgl +CRuvdsCosdx1xSbd6/Q9aNxNDOB0Ge1LnIzjrTmTjA/KoyMED86dhkicDB+mKk4OBUAyCM9amGex +OfWjzE0MZCf/AK9RlBk1a25GT600x013Ar9B6ULnHHSnOpzg8Ug4+lHUfTUdtyKaVH0zT85IHUk8 +Ug+Y5Yd6AuRMMZx7U4P1UkkGnmMEn3ppQY603HqJSYxsjPGRTcnGO2al4AwetRnA5qSrsRwAo985 +pmT0HbnJpxUEYPNKEGaFYfMxByDUTICOnOashOMe9JtQ/lTVkDkU2jPXFG3HOO1XDGPbjNRMnXH5 +VTbEmRo5+XI+6KmznnFNCj1p+0jI68dahq5p7SwrKQisf484HsO9V5ec8Vb5kIZsdABj2FJJECD6 +04pdAlVMooacinP5VdNsMjGckUht9v4CtbkJoqMhwe1REda3ItC1KeOOcRfuHAYuCDgZ64HP6Vky +xMjEEYIJBFHS5ZDg0lP20m3mi4mhtFLijFMQgpzdqQU8jI4pAR04jAUhgcgk47e1JilOMkgYHamA +q56irMWc8d6gUZ9OlWIgMepPSs5G9M0rckdO1alsxyKy7YjAyPrWnASCp4xXJJanbF6GtA3QHvV2 +KTn1xWfE/T+VXYmxyKVhMvK69c+lPySKrI+TViMjPIqethk6MQCfanAE01ctgA1KPWhb2ATaTz1p +DjFG4AnnrSk8YNDQhgGetMYcfjT9xHemZGBn8qLDuN4ANV2yKs8ENUL81FtRlWUHBz1qhMMA4q/I +vPPPFVJxnpVdbEmNd5I71i3ScNx0HNbd4Dg/Xmsa6O4YrSnoxVNjNjIDitUFTGee1ZQGWxV4ErGB +6EGupq6OaLsB+Ug9ueKjJDc+woXLAg0BCDismrHTGdxDt70oHtRtBPrTgKDVDc4Bz3FJ9PzqTZuH +5GmYx/WlcGrMCeppvJ4FOZQT1pNvI+tNEu4HnJ70Hn60YPI7UpDcD3zQLoMK4yM55xmkKMoUnHzD +Ip5GcnjmmEehqkyGiFqibvVgrwagcY4PHFaRZy1EMHBz6Vatxx61AR907gSwzx2571ctce1Ko9B0 +F7xoW6Hr361dJIGD1A61HaR8DPJ7VZlQAf54rzZyvI9RbWI4h3FKWO7Hv0pYV7UMozn8qjqUMlK4 +JHU9faq25jweKkYN83fPaoypGOMVpFJAKflU4PXNIgxweQMZp20nGe9OMa7Nwf5s4C+3rT8gIW42 +gCnxYJLU54+AeOlNj+Uf0ovoCLa/w8VK7ZAA65qCPkL1qdl+XjvWL0BjmfAH0qoeQxz9KsOR8vqa +jI4bFKI9iBQAPWmtjcPSp2CHpxk9KjZQXGeatPUYYAcHrRxuJzTyvzDP0qIIDuOevamgFj+ZjTdv +zfQmnRAZPqKNpyxz9afUCIn5iOvUUzdkH9akwASeTTcAAmrBbDkztzSNjOPTmg5xwaaoZmH0NKwh +0hAK/hTWGPzpzHOBn2puPmxTQCOpO3JHU/pSE8n0pzrnHrSEHb70xC8BTjmiMs2epwCSBTtvy/yp +I0xnn1paWGwZVOD6Yp6kgcjoOlMfqPbipQPlGKT2AgYkHnuOlX1iaOONhypUZIPc8/pVFx83NX7d +QqZOOlKbSQDXGVNZ0gO5gM4HJrT4Y4qpeIobilTdnYUtSBCuBjvTiwxn/PFEe3aenekJHTHJrXqI +Rjzn6dabvA6dqVgSBUTHOapLQGO71bt+n4Gq0a5wOOBV6EBUyyk5yKio9LAmUJMliTzTUzvAp8mN +xI9aSMMzrVrYTNWMAqgGST0xSTKSy/SnQjgflRIMOOe1ct9SkUbncoPbjis9ckk+9aF5yvJqkm9d +wU5XPUd8V1UvhM5bkTbiQKeAQpxkZ4NNIOc1MAMcjNaN6EJIbHuT61K2dvPYUkS7sA8deafKvyqo +qG9TRbESDj096MtG+UYjjGR71Oi4TB/CoyMlxgHJ6+lClqDWlhrYxgcEdaduJQ5PUY5ph/8ArVKY +2CbADuzjHfNApEcAyGNWoBjJqC3xt7etXkhkiO1gRuVXGe4I4qKj3CBIoyeahmOFAY+vNTFhyR34 +qnct1HvWUVdlvuQ5xxxzkU2Tft70qBSRg5qWWVFt2i2AkyK4fuMA8fj/AEro6kPYphFYnbnHv3q7 +axgDI71UhHzMD1I61dhXjA6Z60qr0JhqTYGGJ7iiEHjmnEHZ2yO9OiUgDPXNc99DZjZsFSKSEcDB +wOOKlnK7R0GaS32c7lJyuBg9D60k9BMnGzbl87R1A601F4OM4xUi4wApUMMH5u4/lS7cOxXleduM +4wP6UW90OpVdDuVh+dSBSBjtSnlsce1TKhJx260ugNkO0ZPfgc00AY75q15Yz+FRyKFBK9hQF7kD +cg57U0AY60oOSTnrT/LOMCmMbuIHcU3liKkkXaOvGaamM/hQLoRHGcfnSM2CO1WIrSe6dxFjcqM2 +CfSqzqcrxjNXbqK/QkBHyhetT/LuPHNV02qw9qnIds7e9T0sIlSITfrSTWe0DByRSQyNEeeMVZeW +PywQQWbt6UXZOqZncoSOPQ0+OIsrEYwOTTZNzZ6cHtTPMP3RxxigtbEm7A9T6U0lTknPTNAy3Gfz +pD1z/D60JdQNWP8A5BB463sdeeHkmvQkZf7LUf8AT8n6V56RivSofB/XmeZiviPpfxZoF9ql4Z4k +B+ULyfSuQm8Fa0zH9wMf7wr1+QBqgaJaJUlKXNcyjUaVjx9vBOuA8QDH+8KYfBfiAjiEevUf417D +5K+lHkr6VShbqHtDxseCfEPJ8ke2CP8AGnjwbr6cfZ8/8CH+New+SvpQYV9KfKLnPI4/B+tjBMP6 +irK+E9XXgw5/EV6n5C0GFfSnZi5jzNPC+pgcwnP1FP8A+Ea1JRjyf1Fek+SvpR5K+lPUWh5yvhzU +e8WPxFSjw9egD90Sa9B8laTykzii8u4tDhF0G7BO6PHp0qX+xLof8s/5V23krnOKUwr6U7yQWRxQ +0e6/55H9KVdKuw2PJP14rtBCvpR5K+lHNLuLlRx50m6HSM/pSjTLrH+rP6V1/kr6UeStHNLuHLE5 +NdNuu8ZpVsLoDmMiur8lfSgwr6Ury7hyo5dbC5x9w0GxuuoQ11AhWjyV9KLsOVHL/Yrr+4aX7FcD ++A10/lKaPJWi8h2RyrWNwf8AlmTWfdaLeyAhYzzXdeSvpSGFeuKfNJdSeSJ5NdeFNZlzttyefas8 ++DfEfGLVuD6j/GvafJX0o8haHJstWR4/D4X8RpjNsfzH+NX49A11OtufzFeo+SvpR5C+lTqF0eaD +RNaHBtm/SnjQtW7wN29K9I8lfSjyF9Krml3FZHmx0LVecW7daadC1YYxA3evS/JX0o8hfSjmYWR5 +sNC1fa2bdvam/wBhasP+WDY9K9L8hfSkEKZPHSldhZHmraHq+AfIanDQ9V/54N616T5C+lHkr6U7 +sNDzcaLqw58hvpS/2LqfA8hhXo/kLR5C56Uc0hWR502i6kTxA3A9Ka2j6n/z7ufwr0fyF9KPIX0o +5pDsjzf+x9SzgwN+VB0fUxjEDn8K9I8hfSjyF9KOaQWR5x/ZGp/xQOM+1IdJ1H/ng/5V6P5CelL5 +C+lHMwsjzZtI1TIP2d+npTTpOqD/AJd5D+Fel+QvpSeQg7U+eQrI82XSNROCYH/I0p0XUMlvIf8A +I16R9nT0o8hPSjmkOyPN10a95BhcY9qX+x7zr5Tfka9H+zp6UeQnpS5pCsjzf+yLoY3QOB/umkOk +3RwBC559K9Ie2Q4449KT7NH/AHRT55Byo87GjXZyTE35GmnSLvn9y/X0NekfZ0Haj7OnpRzyCyPO +xo90QP3T857Gk/se67xN+Rr0XyF9KPs6elHPILI86/si7XGImx9DUg0q7GT5bdB2r0H7OnpR9nT0 +pc8gsjgxptzgExN+RqeOxnH/ACzb8q7byE9KT7OmelHNIXKjkks5ePkb8qnWBgOVI49K6b7OnpR9 +nU9qV5D5YnOCA/3TTxGfQ4+ldB9nT0o+zp6UryDlRhhCOx/Kpdh7Ctf7OmOlL5CelL3h2RjEH0NN +Ak9D19K2/IT0o+zqe1GorIwT5mfut09KYyyn+EgfSuh+zp6UeQvpT1DlRzZSXBODSbH67Tx7V0n2 +ZM9KU26elF5Byo5Zkkz91vyphilA5UiurFug7UG3T0p3kHKjkGhmxwrc0CGfH3CMe1dd9mT0pTbJ +6U+Zi5Ucc1vP12H8qi+zyg/dbH0rtvs8fpR9nT0o5mHIjh2guB/A35ULb3B4KN+RruTbJ6Ugt09K +OeQckTh2t5yOUb8jR9nuB/C3btXb/ZY/SlNunpRzyDkRxPkzEY2H8jTRDLkgIeK7f7LH1xR9mT0o +55ByI4wW056KT+FH2eb+635V2f2ZOu0Uv2aP+6KOaQcqOJNvMP4T+VN8mXOAp4ruGtoz1GaaLZR2 +p88g5EcYIpccg0eVK2cDpXafZY/7oo+zJnIFLmkHKjjBFJ/dpTA2QMV2JtYz1Ao+yR+go5pByI43 +yX6Y5pPIkz0Oa7P7LGf4aUW0f90Uc0g5UcR5MnpTvJkHG3k9K7Q2sfpS/ZY/SjmkHIjiDC4GP0pp +jcdjiu4NrH6UfZY/7tHMw5UcOUbrg0qwv3HXtXb/AGSI/wAIo+yx/wB0Uc0h8qOK8qQHgHHegxsO +cV2xtkxjFJ9ljx90UczFyo4ny24IFNaNwy4zXb/ZIv7opTaxf3aFKQcqOK2Oo5FMEbGu4+yx+lBt +Iz2o55Byo4jyiQW9DSeVk9Oa7j7JF2UU02kI52ijnkHIjjFtXx+tNMDgniu2FnF2UUv2SL+6KOaQ ++VHDlCDxRscniu3+yRf3RSfYof7oo5pByo4pYpCelGxuma7b7HF02ik+xQdlFLmkHKjiTG3oaBC9 +dv8AY4v7opPscP8AdFPmkLkRxJhYgDFAibniu4+yQ/3RTfsUOfuijmYcqOKCn/CnYNdl9hg4+QUv +2KD+6KXNIORHG556cCmMGFdn9gt8/cFL9htz/AOaOZj5EcRhs57UwmQZxXciwtxx5Y/Kj+z7X/nm +v5U+eQcqOHRT1Ipj547HPFd39gth0jXn2oOnWp5Ma/lRzSDlRwm3nB9OKhmiznIxXoB0+27xr+VH +9n2pABjXH0p88hciZ5NfaaJ+FFcxfaTMhOFPFe/f2ZZ84iX8qQ6XZNy0KH8KJTlJWYRgonzg1ncK +eVPalFtNk/L1r6M/sfTT/wAu8f8A3yKP7G03A/0aP/vkVk43L0PnVrWXoBSfZHyBj0r6K/sbTD/y +7R/98ik/sTTM/wDHtH/3yKXIxWR88fZJApO3jNC2cw7GvogaLpgzi2j5/wBkUHRtNJz9nj9Puijk +YWR88fZpeRt7U4WsvUdcc19Cf2Jpec/ZY8/7oo/sPS/+fWP/AL5FPlYuVHzu1nIDyvNSJavj7uK+ +hP7F0vr9mi/75FB0TS+9tF/3yKXIx2R8+/Z5OmM0fZ3xyO/WvoH+w9L/AOfWLn/ZFH9g6SBj7LF/ +3yKOVi5UfPptZHySvNV2tH/nX0T/AGFpP/PrF/3yKP7B0j/n0h/74H+FHKx8qPnf7JKMcEc0LbOM +cV9D/wBgaP0+yRfTaKUaDo//AD6Q/wDfI/wo5GFkfPLQvwNtN8hzxjn2r6IOgaN0+xw4/wBwf4U3 +/hHtG6/Y4f8Avkf4UcrFyo+djbS8gjjpTTaP+YFfRg8P6MP+XOH/AL4H+FI3h7RSD/oUGP8AcX/C +jkY7I+dPsrY6c0q20nULX0QPDmif8+cP/fA/wpf+Ec0P/nyh5/2B/hRysLI+eRby54GKDanHHWvo +b/hHNF/58oPf5B/hSDw5of8Az5Qf98L/AIU+VhZHzz9mkH05FMNtIei19Ejw1oQzixg5/wBgf4Uf +8I3on/PlD/3wP8KOVhZHzl9lkz04NTLayZ6fKBya+hP+EW8P4/48YP8Avgf4Uv8AwjOg4I+ww8/7 +Ao5WJxPn4Wrjtnmk+zuT9a+gv+EZ0Hj/AEGH0+4Kb/wi/h//AJ8Yf++BU8jDlR4D9nfjAzTGtHbA +x1OK+gf+EW8PYI+ww/8AfIo/4RXw92sIP++RVWkCikfPojniP7pmX5R0NVp7SZ2ZnyWYksT1ya+i +P+EU8PE/8eMPX+6KaPCOgEfPZwsfXaKLMpHzgbRuc8YI4phtZeTtOMc+1fSf/CIeGu+nwf8AfIpo +8HeGc5/s+D/vkUWZV0fNXkMCMrn2NM8h+OK+mG8GeFmOTpsH/fApv/CE+FP+gbB/3yKeotD5q8o8 +DbjA5PrUghbHPUZr6QPgjwoT/wAg2D/vmj/hCPCn/QOh/wC+aeoaHzWYmzxR5TenavpT/hB/Cn/Q +Oh/75oPgjwn202D/AL5o1DQ+bhA2CfSp44n+XI69q+if+EH8K/8AQPh9OlA8EeFgMDT4cfSpcWy1 +NI8HtoiSBjjpmtaCNRz69K9kHgzwyOljGKePB/h0cCzQD8axdGRsq8UeSJG2cHoD1q8itgD2r0// +AIRTQuALVR3704eF9EGP9GXj61PsZFe3geaIp/E81YQPjI/GvRP+EX0UHItwPzpw8N6RggQAZ9z/ +AI0vYSD6xE4BPlzUoOTXdf8ACN6SRjyf1NA8OaVwfJ/U/wCNHsJB9YicKFyelGGruv8AhHNL7Rfq +f8aX/hHtMP8Ayx/U0OhIFiInBFfamMhPNd+fDmlnH7r9T/jQPDulYx5X6n/Gh4eTBYiJwOGAx7VC +VYAgivQ/+EZ0n/nl+p/xoPhrSW6w/qf8aX1eXQf1iB5rIPQZqhPG+0/nXqx8L6Mf+WP6n/GmN4S0 +J+tvn8T/AI0/YSF9YieLXMbEnA4NY1zExyMYwO9e/N4K8OPndajnryf8agbwD4VfhrMHp/E3+NXC +lJbkyrxaPnlYjuHHFWyh2bRk+le9f8K+8IlQv2Ecd8tn+dL/AMK/8J9PsY/76b/Gt7GPMjwOG3fc +MjjrU7W+CTjIz0r3UeAfCw6Wg/76b/Gl/wCEC8L55tM/8Cb/ABqJQb2NIVYrc8G+zuxZhj5cZFN8 +o5xiveB8P/Cn/PmP++m/xoPw98KZyLT/AMeb/Go9lI2+swPCDG3amiM17ufh94V4/wBF/wDHm/xp +f+Fe+FeP9FP/AH03+NL2Ug+sxPBmhIPPGDigQyEbse1e7n4deEznNsf++m/xo/4V14U6C2YAf7bf +40/ZyF9YieDrG3I/CgpJk17wfh34UbObZsk/32/xpP8AhXfhTp9mb/vpv8aPZyD6xE8GMTYNM8ps +9K96Pw38KH/l3b/vo/40f8K48Kdfs7f99H/Gq5JEutBngZjeoZVdiGbJJA/SvoE/Dbwmetu3P+0f +8aiPww8In/l3f/vs1SUkZTnGR4AsZ61pWkLEZxmvbR8L/CI/5d3/AO+zUyfDnwvGAFhfH+8amcZS +Wg6VSMHqeS2q7c/SnzBvr6164vgLw8udsbjP+0aH8BeHmGDG/wD30a5nhZ3udX1uB5BFnnFPCknm +vWx4A8PDpG4z/tGlHgPQP7j5/wB40vqsyvrcDyBof6dKiMTbgDXsh8B6B3jfn/aNIfAHh89Uf/vo +0/q0w+twPG2Q/l3pPKIPXsK9lPw/8PZz5b/99Gj/AIQDw5/zyf8A76NP6vOwvrkDxtk3KPbpTEVj +1+lezf8ACAeHj/yzf/vo0g+Hvh1c4jf/AL6NH1edg+t0zyGNGBA96sbDxmvV/wDhX+gDor/99Up8 +BaCeqyf99VLws2P65A8kZTlc59KAmFavW/8AhA9DJ5R8f7xpf+EB0DDDZJg/7VL6rMFjKZ48VYDH +rTSp3qPevYP+Ff8Ah7psf86T/hXvh3IOyTP+9TWFmP65TPJGQluai8s/N2PWvYf+EA8PEk7ZP++q +ibwDoCkALIWY8DdQsLMX1ymeSRRkk00pjdXsC/D7w+pyFkGR/eob4feHuBtkyec7v/rU/q0x/XKZ +42EOCOvak2EA9hmvYj8PdAUHCyH/AIF/9alHw68OsvIlGR/e/wDrVX1eYvrdM8bIbAGKcqvnbjkc +CvYf+Fc+Hzj/AFuP97/61A+HOgg5BmH/AAIf4Uvq8x/W6Z49tbf07UjRtuz7V7Gfhz4fPOZs/wC8 +P8Kb/wAK40En703b+If4UewmL63TPH/LYsOuaGTkZ6V7AfhzoJ/ilH4j/Cmt8NdBPWSb35H+FHsJ +h9bpnkJjO096FjIHTg16+PhxoQ/jmP4j/ClHw60NRgPNj6j/AApewmH1umePsh4GO9TrGyryK9Y/ +4VxohwTJNn6j/ClPw50YjHmzfmP8KPYVB/W6Z48V3Mc5HvVyMAIQK9R/4VrofeSY/iP8Kevw60dQ +cSzfmP8AClLDzaD63TPLURg/TvzVW+QkjHpXro+Huk5J8yXpjqP8Kjl+G+kS8GaYe+R/hSjh5p3E +8VTPGwF2jH38nI9u3+cU3DZH517CPhdoYI/fz/mP8KP+FYaH/wA9pvzH+Fa+ykL61A8hOcYFR7CT +7c17H/wrHRP+es35j/Cmj4X6L3nmP4j/AAo9lJA8TTZ5PHGAB+FWkRgjEehzXqY+GuijpNN+n+FP +Pw60nay+dNg9en+FQ6E2x/WqZ40wOT7mlhQ5Hc167/wrHRMjE0w/Ef4Uo+GOjIcrPNn3x/hV+ynY +X1qB5zDGcYPoKiZMOQegr1Nfh7pq/wDLeTj6f4U0/DvTCWbzpefpx+lYfVqnYpYqn3PILxTyAKpx +KenrXssnw00qXGbibj6f4VGPhdo/a4mz36f4VvGlNKxLxNO9zx3ZlyCKlaLCjFeuL8LtIU7hcTZ9 +fl/wpT8MNKYHNxN146f4U3TmJYin3PJYkbqOPp2p0qqSB0wOT6160vwy0oDHny559P8ACkf4Y6Y3 +/LxLn14qfYzuP6zTseUOo29O5NQBDlj3r14/DPTiMC5kGOmAKjHwv0wDH2mX9KFSmh/Wafc8jKHO +Bz7U51YAk5Oa9ab4X6YSD9ol47YFDfC/TSMfapcfQU/ZzE8RTfU8nijCR5HJ9KtQq2OM/WvTR8ML +DoLqT8hUg+GtmuMXT8dMgVM6M2OOJppHmLZAJ7np7VTnzkZPXrXrQ+G1nnLXLnjHIFQSfC2zc5F4 +4/4CKUaM09gliab6nk6Iw+bj0FOlTIAHOcc+leqD4V2g5F4+f90U7/hV1r1F4/p90Vp7Odyfbwtu +eVrAAcDscZHerkUJAz6V6Uvwztgc/am78BR/jT/+FcQYx9qb/vn/AOvWcqVRhGvTXU81YZXipIVB +Uc9K9GPw2gOc3bf98/8A16F+HUacC6J/4D/9ep9hPsafWafc81nBYdz0FOgU4r0iT4bQSAZu2BHo +v/16E+HEaYxdkcY+7/8AXo9hO1rB9Zp9zzpwSRjtxTxjZtb259K9E/4V1FgD7U3/AHz/APXoPw6h +7XTZz/d/+vR7CfYX1mn3PNlB38Z68Zq6gUc/lXdD4dRK2RdMf+A//XqQfD9BjF0f++f/AK9J0J9g ++sU31OCYHkiq8iuVx1r0b/hAV4/0k/8AfP8A9ek/4V/H0+0n/vn/AOvS9hU7B9Yp9zzeOI5yasOU +QYzz0rvv+Ferz/pPP+7/APXpj/DpXH/H4ff5f/r0ewqX2D6xT7nnsgGO55qJFwT7c16MPhyvGbvO +P9n/AOvQfhyvIF0cHr8v/wBemqE+wfWKfc89jedHEiNhgcg1CYXZs5z1r0gfDoAf8fZ/75/+vTv+ +FdKP+Xs/Tb/9eq9lU7C9vT7nnMcBZ8GrLeXGCoHau9X4fkNj7Vxg8hf/AK9Mf4cbju+2HP8Au/8A +16n2E77B9Yp9zzo5c+3JprMThRxXo3/CuEwd12ST0wv/ANegfDiMf8vRz/u//Xp+wnbYf1in3POS +Cp+XOD1H4U3AXj8K9JHw6Uc/a25GDhev60w/DeM/8vRHP93/AOvT9jPsP6zT7nnIHU+tOXdgAdO4 +r0T/AIV1HyftXr/D/wDXqOXwBFEhYXJJHJ+X/wCvQqFTohPE07bnI/Z9llbvI5G6cPjsQOAfzrz0 +g5PHTrXqGt6xomnKbOaOQ7YwAB/FgYx/WvMHYuzMerEk120ouKszz601N3R9jmkIp1JVmQzb0NLj +IzTqTGOKAExSYp1Jg5BoATFLilooATHWkxTqMUANxUccKqS3Vj1JqajigBuMGjAp1FADcUuKWigB +MUYpab/EaAFwKMCjqaTHvQAAdaXijHSloAQAc0g5p1JQAmKXFLRQA3FGKdRQA3FGKXtS0ANIpcUt +FACYFGBS0UANxRinUY4oAbijAp1FADcUYFOooATFJinUUANxS4paMUAJijFLRQAmBRinUmKAG4ox +Tu9GKAGgUuKWigBuKMU7FFACYFJinUUAJtpMCnUYoAbilxS0UAJgUYFLRQAmKMUtLQA3FGBS4ooA +TFJxTu1AoATAo707FIKAEAoxThzSUAJijAp1FADcUYp1FADQKMU6igBuKMU7GaDxQA3FGKdRQA3A +oxS0tADcUYp2KKAG4FGKdjk0UANwKTFPpKAG4pcU6igBuKMU7oaKAG4oxSt0ooATApAKfSYoATAp +MU/FJ1oAaB60uBTqKAG4BoxS+tLQA3AoxS0tADcUbRS0UAJgUm0U+jHagBuKMU6koATFGKdRxQA3 +FJtFPooAbikwKfSUAJijAp1JigBuMUYFOooAbijAp9JigBuAaNtOpaAGbRRgU+koAbijbT6TFADd +tGBTqKAGbRS7RTqKAG4pNop+KMUANx1o2inUUAN2gUbadRQA3aKNop1HegBu2jAp3cUUAM2il2in +GigBu0UbRTqKAG7RSYFPpBQAhUUbRTqMUAM2ijbT6KAGYFG0U+igBu0Um0U+igBm0UbRTqWgBmBR +tFPxzRigBm2jAp+KKAGbRRtFPxRQAzaKNop+KSgBu0Um0dakxSUAM2jpS7RT8Uh4oAbtFJtGc0/F +LQAzaKNop9IcgcUAN2jNG0c070paAGbRRtFPxiigBm0UbRT8UUAN2ik2in0UgGYFG0U/FGKYDdgp +NoqT2pMUAM2igqKfRQAzaKNop+KKAGbBQVFPooAZtFG0U+igBm0UhUU+jGaAGBRRtFPxRigBmwUb +RUmKMUAR7RRtGTT8UEZoAj2il2Cn4ooAZsFGwU+jFADNoo2Cn4ooAZsFG0U/Ao46etADNgo2Cn0t +AEewDijYM0/FFAEewGl2CpMUUAR7BRsFSUUAR7BRtFSUlADNgo2Cn4oxQAzYKNgwaeKMUAVzCc8M +c0bZB2BqxijFAFUMqsdwK5pVQPIXxwBgVYKgigYxQBBNEzphTg5FLHHkZPOOKnPSmpjYPpQMbsFL +sFO6DmkOT7UCG7BS7BTwKWgCPYMUbBUlFAEewUbBUmKSgBmwUbBUmKSgBmwUbB+dSYpKAGbBRsFS +YpKAI9go2CpcUlAEewUbAakxmgDgUAR7BRsFSYoxQBHsFGwVLjpSUAR7BRsFSdqKAGbBSbBUtJjv +SAj2CjYKkxRimBHsFGwVJiigCPYKNgqTFGKAI9go2CpOKMUARCMd6UoKkxQB2pAR+WvpRsFSEUUw +IzGKPLFSYoxSAiEYpRGKkxQBTAi8taDGKmIo4pAReWKTy1zUoFGKYyLy1pfLFSd6KQiIxijyxUuK +MCgCLy1o8takpcUDIfLFHlipqTHNAEflik8sVNSY4oEReWKPLFS4owKAIvLWjy1qXFGKYEXlikMY +qbFJQBF5YpDGKmwKMUAQ+WKTyx6VNgcUEUDuV/KFVruJfJk4/hNXyKrXgHkSf7pprcTPnLx4uNSG +P9quTrrvH3/IRH/Aq5GnLcSPsqkpTSVIBRS0lAw6UUxsl1A6DJNPoABSUtFACUUtJ3oAKKWigBKT +FOooATtRRS0AJSEUtBoAKT0p1BFACUetGKWgAHSkpaKADtRQaKACiiigBKWiigAoo70UAFFFFAAa +KPWigAFFFFABSc96WigQdhRRRQMKKKKACijmigAooooAPSiiigAooooEFJS0UDCiiigAoo70daAC +jtR3ooAKKKPSgQUUZooGFFFFABRRRQAUUY5NFAgFFFL60DEooooAKOKPWigQUUUtADNxHUUo5Gac +BSUDCiloNACUUtJQAelHeij1oAKKWkoAO9Heij3oAKKWigBKKKKACiiigA7UUUUAFFFFABRS0lAB +RRRQAUYoo7UAFFFFAB2ooooAKKBRQAGilpKACiiigAooo+lABRS0lABRR7UUAHailpOtABRQaKAA +d6O9FHvQAHrRRR2oAOlFB7UUAFFFFABRRRQAlFLRQAUUUHpQAUUi5wKWgAooooAKKKKACiiigA9a +KKBQAUd6KKADvRRQKACkByBRS0AJRxzS0mM0AFFLQKAEpaO9FACUtFFABRR6UdqAEpaKKAA+lJSm +igBKDS0UAJR2paKAEPSijtigUAHpS0UUAJR3paKAGvu2nb160gcFS3QUrMq9TioJ5RhVAzk0wH+Y ++c7eKkU5Gaji8wD5qmGKQBRRk80DpzQAUUUUAJS0UGgAoo60UAGKKKKACiiigBKWig0AJRS0lABS +0UUAJRRS0AJQelAooABRQKDQAHpRjtS0UAJRS0lABSjpRRQAlFFLQAUUUUAJRS0UAJig0tFACUUt +FACUtFFACetLR3ooAKaV5+tOooAbj3pjLs5/h71LRQAwAcGnVA3mI+AMr1FSCQjGVNAD6WkBBFKK +ACig0UAFJS0UAJRS0UAAooooASjFLij1oASkAIzk9+KdSGgAFL3pMGloATFLRRQAUlLRQAUUUUAF +FFFACUUtFACUtFFACUtFFACUtHeigAoopKACiijnvQAtJS0Y5oASilooADSUtFACUUtIOKACiloo +ASilpKAE4zSijFLQA2lopaAGnAB9qKST7p/DP070UALRQKKADpR2petJQAlFLRQAlFLSUAJRS0lA +CVVvf9RL/umrR6VWvP8AUyf7pprcTPnHx4T/AGgAevzVyVdd4/GNSH/A65GnLcSPsqg0elIakYtJ +S0lAxpHzA/nTqKKACiiigAooo96ACjmiigAooooASloFFABRRRQAUUUUAFFFFABRRRQAUUUUABoo +ooAKO9FFABRRRQAUUd6KBBRQRRQMKWkooAKKKKAAZxzS0UUAJRzRQaACilo9aBCdKWik70DCiiig +AoopaBCGilpKBhRRRQIPWl70UUDEFFKKKAENFHc0UAIaWijigApe1J70tAhKKU0UDEpaKSgQtFFF +AxKMUpooAO4ooooAKKKKAEopfakxQIWiikoAWjtRR6UAFGBRRQMKSlooAKKO9FAB70UUUAFB54o9 +aKAEpaSloASjijrzQKACilNFAhKWiigYlLQKKACjiijrQAlFLSUAFHpS0lABS0GigAFJ3paKACko +peKADvSUtJQAtFHHNFACUtFJigBaTvS0UAFFFFABRRRQAUlHeloAKSlpPegAopaSgA70UGl7UAJR +2xRS0AJSdee1KehoHAoABmiiigAooo4oAKKWigBKKWigBPUUCigUAGRkjNFN2KGLY+Y9TT6AEoop +aAEooooAO9FFFABRRRQA1yyqSBnHalByAfanYpOKACiig0AFAoooAKO1FLQAlFFFABRRRQAUY6ii +igBACABkn3NKKKBQAUUUUAFFFFAEciMSGXqMjFQEMrgsowB296t0x0J5BweaYDlIK8UvpTI02DFP +pAAooooAKDS0GgBKO9HaigAooNFABRS0n1oAKKKBQAUdjR70UANU5HuKd1oAH50UAHNFFFABRRRQ +AUHvRRzmgAooooAKKKMUAFFFFACY5paKPWgAooo7UAFFFHrQAe1HeiigAo9KKKADijFA96PSgAoF +FFABiiiigAoo96KACiigUANZdwx+VOAoooAOvNFFFABSikxzmigAoFFJ3HvQAvrRQaWgBKKWkoAK +PWigUAFFFAoAKKO9FABRRRQAUUo6UlAAaKKKADrRR3FKOtACUUetFABQaKWgBKKKKADtQKKKAGuC +VIBwfWmeVjoxqWigBPSloooAKD1oFFAAaKWk96AD0oooNABRRQaAFpKBQaACiij3oASl7UUUAFJS +0lAAQCKYFI4zkdqkpKADpRSntSCgApKWigBKKOKKACkpaSgApKWkoADVW84hk/3TVqqt7zBJn+6a +a3Ez5z8ff8hBT/v1yLAAkA5GeDXXePh/xMAf96uRpy3Etj7JoooqSgoFFFAhKKDRQMKO1FFABRRR +QAUdKKKACiiigAooooAKKKBQAUUe1FABRS0lABRR2oPOKACilpKAClPSjtSdqAFpKKKACilooAKP +WkHOMUpoASloooAKKSloEJkcZoqNVYtufr2FS0DCj1oooADRR70UCENLR2ooAQUUCloGJ7UtJS0A +JRRiloAKSlpKBCjpSA8kUUUDFpBS0UAFFHqKPSgBKWiigAoooNABRRRQAUGiigA7UnfFLRQACiii +gBOc0tFAoADRRRQAUUUUAAINFIAAcCloATGCT60tLSUCDmijvRQAUUdqKBh3oooNABRRRQAUUCig +AooooAKKSloAMUUUUAFFFFABRRRQAUUUUAFJ0zS0UAFFFFACd6WiigAooooAOaKKKACiiigAoooo +AKKKKACkpaKACiiigAooooEFFAooGHtRSd80tABRRRQAUevtR0pOf0oAUc0UUd6ACkz1paKAE570 +Uc0UAFLSUvagBBS0UUAFHakpfagAooooAKKKSgAopaKACiikoAWkNFLQAUlLRQAlL60UlAC0lLRQ +AUnNLxRQAlBo70tACUtFJQAUUtIQe3rQAe1FJjmloAKKPSigBaSiloASiiloAKKPaigBKO1LRQAn +alFFFACUtJSigApGYAAHucUU2VN6FRwex9COlACqadUFtJ5i5xg5II9CKnNABSdzS0hoAKKWgUAJ +RRR6UAFFHTFFABRR1ooAWkpaSgAopaSgAoopp3gjHIzQA6iiigApfWiigBKDS0nagAoNHpQaAClp +KWgAoopKAD1opaSgApaSloATmlpDxS0AJRRRQAtFFFABRRRQAh60tJRQAtFJS0AFJS0UAFJRTSrk +n5vyoAHkVR6n0py8jNMWNQc96fQACgUYoFABS0neigApRRSc0AFLQaKACk70tFABRRSUAL6UlKaK +AEFLRgUUAIKWgcUCgBKWkNLQAUUUUAFFHej2oASlpDS0AJRS9qOtABSUtJQAUd6KKAFoooFACUtI +eKUUAFJS96KAEooo96ACiiigAooooADRRRQAUnWiigAOaKWkNABRRRQAUnOKWkoAKKKKADNJS0lA +CVVvP9RL/umrLdOKq3vFvL/uGmtxM+dPHxzfgehfmuRyefeut8dFvt3QbSSfxrlvOcKFAXA/2Rn+ +VN7iWx9jUlL2pKkYUUUUDA0lLRQAlFFGOaAFpKWkoELRSUtACUUUtAxKKKWgBDS0lHPFAhaKKKBi +GloooASlpKWgAooo7UCCiijvQMKKKKACkPelo60CIoJopk3xnK5I/I1LTVRUGFAHJ6U6gAo70Ud6 +ACjvRRQMSloooAKKKKACijFFABRRR1oABRzR2ooAKKKTrkUCFopPanUDEopMjOKUUAFFJmloAKKK +KACiiigAopTRQISg9aPeloGJS0lL2oASiiigAooooEHpS0lKaBiUUd6KAFpKXtSUAFFFFAB70UUU +CDNFFFAw5oopaAEGaKX0oNACUUp4pKBBRRRQMOhoo70HpQIKKB1PtRQMQ0popaAE5pPanUlAB3oo +70UAFFFFABS0gooAKKWkoAWkpaSgBaSiloASg0UtACUUUUAIc9hmlFFHegAopaDQAlFKaKAEoooo +AKX6UlFABS0UlACikoooAKMZoNAoABRQaWgBKDRR60AFFBwKKACijtRQAUUp6YpBQAUUUUAFAyMZ +60UvY0AJRQKXFACUdqPeloASiiigAooooAKOeaKBQAdqKKKAFpKKKACiiigAooooAKKKKACiijpQ +ACiiigBPpS0mOaWgBMUUtFACUtFFAB70dqKDQAUUCigAooooAKKKKACkpec0hoAKUUCjvQACkpTR +QBWgOJLgdMSf0FWBUTwKx3AlW4yR3psTyB3jc5ZeQfUGmInJA60A5FRSnLxoOucn6U5WK8EdOM0g +JKKQHOCKWgYd6KKWgBKQnFP6DOM1XkY5J7UASil9aZGcin0AFFFFABSUoooASilooAO2KSl9aKAC +gUCigAooPApBQAtBzRRQAUUlLQAUGiigAooHegdTQAlLSD1paAD3oo70UAFFFFABRRRQAUUCigAx +RRSA5P0oAUd6KKKACiiigAPNHeiigAooooAKKKKACiiigAooooAOaKKKACijvRQAUUtJQAelFAoo +AKKKKACg0CigAooooAPeilpOlAAOKKD04ox0oAD0pKX2ooADSZNKaKACjpRRQAUUUUAFFFHegAoo +o60AFFAooAKSlooAKPSkpaAE96KKWgBKO1FFABSUvtRQAUlKaKACiiigBKQ06k9KAEoopaAEpKWk +oASql+D5Eo/2DVs1Uvv9RL/ummtxM+dfHbgXvl453E5rkK67x1s/tH5sgZOSPrXJjytpJJ3c8D9K +ctxI+x6WikqRhR60tHegYlHSikIB6+tAC0UUCgQUUnSloGFFFBoEFFHFFAwooooASiiloEFHaigU +DCjvRRQAUUUUAFL7UhooAKKKWgQgooooGIBgYpaKKBBRRR1oGFFFFAB2opGycAevNOoASiiigApa +KKAE5ooooELSUe1LQMKSiigQUUdqKBh3opaSgBOBzS9qKKADFIeCD606koAKXtRRQISlpKD0oGLR +RQe1ABR2oooASilPpRQISilpKBi0lLRQAnSiil9KBCUtHeg0AFFFFAw9qKKTvQIWijjmkoAWj1op +KBhS0lLQAlFHekzzQA40UmBiloAKT0paKACjtQKSgBaKKSgBaapzkHqDS01vlO/t3oBD6SlFFABS +d6KXvQAlL3oo9qBB3ooooGJRS0UAJ9aWkpaACiiigAopB3FLQAUlLSUAFLSUtABSUtHegAoopKAF +oNApDQAUUUFehoAWiiigAopKWgA7GkHSlFJQAdaWkpaAEopaSgAPejmiloATtiilpM0AHWigUUAG +KKWigBO9FLRQAlLRRQAUUUe1ACGlopM0AL3opPU0UAGKBS0lAC0UUUAFFJRQAooopKADig0d6OMU +AFFApaAEopaSgAo9aWkoAKPWijigAo6UUUAFFFIWA6/lQA3neOeCCfyp9MGSwbGMZp5oAO1FLRQA +nrS0nGfrRQAUtA6UlABQaKWgBBQKKWgBKKXikoAKY8SuQeQR3FSUlAEWFi+bBOeppysjDIOc0+mi +NAcgAGgBB8r7exyaf2pFUA56k0tAB6UtFFADgaglXripaQ80AMiBAqTtTQMfjTvWgBPaijtRQAUU +UUAISAOaRWBJFIerH04pygde9AC+lHakY4xSjFAAKKKKACkp3pSdKAFpKX2pKACjpS0lABRR60da +ADpRS0UAJRRRQAd6PWlpKAFopKKACilooASloo70AJTcYLHPfNPpD0oARXU9DS1EihkU9DinqeSD +1FAD6KSigAooo9qACjpSnrSHmgAo4paQ0AFLSUvagBKWigUAFJS0hoAKWkozQAtFJS0AJQaWkoAD +RS0UAJRS0YoASijpRQAtFJS0AJRS0UAFFFJQAtJS0lAC0UUlAC0lLRQAUnalooAQUUUtACUUUtAB +SUUUAFFFL60AJRRRQAUh7Gl7UlABRRQTQAhHSlpaSgAooooASilooASk4pc0HoKAEpKWigBpqjqb +mO0nYDOEPFXj0qpfY+zy5/umnHcTPnPx0spvYyVOX3YA+tclzXbfEBwZ4kA5EjHNcW5HyjOcAc02 +JH2Qe1JS0VJQCiikoEFFFLQAlFHfNFABRRRQAUUUUDCg+1FHWgAooo4oAKKKO9AgooooGFFFFAgo +opaBiUUUUCCiiigA4xRS0UDCjqaKSgBfWkpaQ0CDvRRRQMWij3pPSgBaKTil9aBCd6XvSHNLQAlF +HrR70DFpKWkoEFFLRQMSlpKWgQgwaBR3paBhSUtFAAaTtRRQAtHaijvQAneloooEFFFFAwpB1paT +vQAtJS0UCCiigUAFJRRigYtBoooAKKKKBBRR3ooGAooo9aADrSUd8UtAg60lLR3oASj2paKAE6Ut +FFABRSd80tABRSE44pQcigAo9aKO9AwFFJS0AFIQCCOvFL70lACKDgZ64pQMHk0tHagAooooAPWg +UUhoELSHPGKWigYUelFJ1oEBpaaxIUn0oVtyhh0IyKBjqKOgooEJ6mloo4oGJSmkpT2xQIKKKSgY +tJ6UtFABRQKKBBRxRR7UDEpTR70elAB70UUlABxS0xlZiMNgU7pQIXjiiiigA6UUlL60AFFFFAxK +KWigA4pKXiigBKWiigAooooAKTtmlpO1AC0UUUAFBoooASlpMjpSigAooooAKSlooAKBRRQAUlLR +QAlLRRQAUUd6KADtSUmDnOfwpwoAKKKSgBaKKKAEopaKACkHFLRQAlGKWigBO1LR6UUAFFJS+9AB +SUtJQAUtFHUUAFFJS0AJ3pTRRQAUCiigA6ZpKKWgAooooAKQelL3pKAFoqGByy/N94cN9alzzQAt +NIzTqKAGcggH86dmggEEGloATjNL3pKU0AJS0lL3oAY3B+tAO1c0488Go8HIBPGaAFKhsHvQhJyP +QkU+mpwMdxwaAH0mOc0etLQAUdqBR60AHako7UUAFFLRQAlFFFAC0lLRQAlLRRQAUUUUAFJ7UtFA +BRQKQ57UALRRSUALTJCQjEdhTqDjGKAEXAA+lLxmgAflS0AFJS0GgBOtLRRzQAlHFLSDpQAtFFFA +AfSiikoAWjtSYPFFAC0UUUAFFFIKAFo70UGgBMjJHcDNLQaTtigBaTjrRzS0AHFHekpaACj1oooA +Pek60tA9KACiikoAWig0UAFBoooAKKOOlHegA4ooooAKT2pfSkoAWij0ooAKKPWigBKKBRQAtJSn +rSUAFFFFACUvFFISAMmgAPSijk0UAFLSUUAFFFFABRRR3oASiiigBO9FHpRQA01S1FFe3lz2U4q6 +elVL7/j3l/3DTjuJnzp483/bVGcgFhXI11njnP8AaGD/ALdclTluCPsukpaKkApKWigBKWkpaBid +KKKBQAUvpSUtACUUUdKACiiloEJRRRQAUUUGgBetJRRQMOlFHtRQIO9LSY5FLQAlHalooAKSlooA +SloooAQUEZ/GlooGFFJS0AJSMOQR60vvS0AFFFFABxSUHrS0AFFJS0AJS9qKPWgBKB7jrS0UAJS0 +lLQIKKSloGJR3opaADiiiigQU09RinfWk70DFHcUnSl96KACg0UUCD3o70UCgYUUUUAFFFFAgooo +FAwooFFAgooo70AFFFFABRRRQAe9FFFABRRRQAUUUUDCiiigAo6UUUCCgUUUDD0pB1OOlLQaBBii +iigY1huI9jmnCj1ooAKKO9FABRRQKBB7UUUe9Aw9aKSlNABxgUCjmigA5oopPUUCAjrUa/ugEI+U +dDUtJjNADfMT1FG9M4yKUorDBFJ5aY4UUAOBHWiq7s1uQf8AlkTg+2f6VYBBoAWiijigYUUUUAFF +FFABRRRQAUCjtRnHNAB7UUUUAFFFFAgooooGFHeigUAFFFFABRRRQAUUelFAB2ooooASlPTFFFAB +iiiigAo7UmecUtABRR3ooAKKKO1ABRRRQAUUUUAFFFFABQKKKACiiigQUUUUDCiiigAooooAKSlo +oASilooAM80d6THNLzQAHpRRRQAUUUUAHSij2o7UAFHSiigAooooEFAoo6ZoGAFHrRRQAUUUUAFF +FFABR1pBS0AFFFHpQAUUUUARNCpbcOG9RTwMACnUUCCiigUDEpaPWigBO1LQaKACikpaAEoopaAE +pMfMT6gCnUUAHSig0UAHeg0UUAHSiiigAo70e1B60AFFFFACUtHfiigAooooAO9FHSigAooooAKK +SloAKKBRQAUUUcDmgA4opKWgAoopOeaAF60UCgUAHtRRRQAUdaKO9ABj9KKKKACig8UmcUALRRRQ +AUUUUAFFFHWgAooooABRRRQAdKBzRRQAUUUUAFFAo70AFIcmlooAKKKKACiiigA9KKOaKAD3o64p +aSgAoFFFAB60DrRRQAdzSd6WigAooooAKSlo60AFJRRQAUhAIweaU8UdqACkpRSUAGKKWigApMUU +ZGKACiiigBKKWkoASilpKAGmqt7/AMe83+4atHvVPUA3kSY/ummtxM+dfHSf6cXHQEiuR711njhX +a/Y543MetcmBnJweBk+1N7gj7KzSHpS0GpASloooAKSloFACUtJS0DEpaQUUCFpO9LSUALRRSDpQ +AUUdKWgYlHalo9qBCCilo9KAEoopaACiiigAooooGHaiij0oEFFFFABRRQaBgaKKKACiiigQCiii +gYUUUUCDjNFFFAAKKKKADmiiigYlLRRQAUUUUAIfWlpKWgAooooAKKKKBBRRRQMKKDRQIBRRR3oA +DRQ1B7UDCiiigAooooAKKKKACiiigAooFFAgooPpR2oGFFFB7UCCiiigYUUGigQUUUUAIKWiigAo +7UUUDDtRRR0oAKKKKACiiigQd6D2oooAKKKKAA9KKKDjGaACikU5GfUUtABRS0negYdqOoo7Uo6U +AJRTUBGcnPJP506gAooooAZIiurI3Qgg0yDzANjjleM+tTUcUCCijvQetAwooooEFFHGKKACiiig +YUUUUCCiiigYUUdqKADviiij1oAKKKOlAB60UGigAoNFAoAKSlo9qACiiigAooooAOKOlFFAB3oo +ooEFFFFAwooooAKKKKACiiigA70etHvRQAUUUHrQAHtRRRQAUUUUAHXmij2oPAoAKKKKACijpRQA +UUUUAFFFFABRRQKADvg0UdTRQAGijrRQAdKKKKAA0UmKWgAoPSg0UAHaiiigAooooAKO9BooAOlF +HWigA60UUdqACj1oooAKKQ5yKWgAooo9KACiiigAooooAKKKKACijvRQAUUUUAFFHPFFAB39qKAB +RQAc0UUUAFBoo60AFFBo9KACj0oooAKKO9FABRR7UcUAHpRQe1BoATmlo7CigA/woxRR7UAFFHei +gAozRRxQAUUUUAFHvRRQAUUUcUAAooooAKKKKADtSUtFABRRRQAUUUUAFAoooAKKKKACiiigAo70 +tJQAUd6KX3oAKSjvRQAUUUUAFFLSY6UAA5opaSgAoopaAEoooPr6UAAooFFABRRRQAUUUdqAA0Ud +6O9ABRRRQAUlLRQAlJTqSgBM80UcUuO9ABQKKKAE60daKKACjiiigApKWkoAKSiigBtVb3/USf7p +q1VW9P7iX/dNNbiZ85+PMi/IBwDuz781yJ7cYxXZ+Npo49Tidow6pvBU9+a40huSR+NN7iR9kkE4 +opaSpGFFHajtQAmc0tJil6UDCijtR2oAaoC4Ap1FHpQIKSlooGFFFFABSGl70d6BBRRR3oAKKKKA +CiiigAooooGFFHFHrQIBSUtFAwooooAKKPeigAooooAKKOlFAg70UUtAxKKO9FAgooooGFFFGKBB +RRRQMDRQaOtABRRR3oAKKKWgBKKKKBAaKKKBhRRRQIWkFFLQMSlpOPzo9KACjsaKWgQlFFFAw7UU +UtACUUtFACUUtJQIKKWkoGFL/WjvRxmgBOnFFFFAgooooGFFHejvQAUUtJQIKKWkoGFFLSUCCilp +KADvRS8UUAFJS0lAw5oo4pfWgQlFFLQMSjjFFLQAgAopelFACUdzR3ooAKKWigBO1FBzxR3oAOaK +WkoABTGYhlGODxT6Dg9aBBR3zS0lAwoPQ/SlpPagQgxgUtFLQMSilpKADij3o+tHagQUUUUDCigU +UALSUUtACUUUdqACiiigAxRRS0AJRS0CgBKBS0UAJS0lFABS0lFABRS0UAJRS0lABjvR1pe1JQAo +pO9FLQAlLSUtACUUtJQAUjMBj3OKdSYz19aAF60npS0hoAO9FBpaACkxS0UAJRRRQAUUUetABRQe +lLQAnFHrRS0AJR3o60UAFFFFABRxRR2oAWkpv7zeORtx096dQAvFJRRQAUUUtACUUGjNABRRS0AJ +QaAeKKAGpu2jd97vinUUtACUdqWkoAO1FFFABRS0lABRRRQAUUUGgAFFFFABRRRQAUUtIKACjtRR +QAdqKKKACigUtACH0oFHU0UAFHFFFABRRR2oAKPeiigAooooAWkpaSgAoNLRQAnpSmmjPfrTqAEo +oooAPeilpPSgAo70UcUAAo4oFHvQAUUd6PegAo46Ud6O9ABRRR2oAPeijrS0AJS0lFAC+9JS0UAF +FFHWkAlHelo70wE55opaB1oAKSlooAKKKKACkpaKACiiikAUUUe1MBKKXuaBQAUUGigBD1paKKAE +PFBpT2oNACUUtBoASj3o7UUAHpRnkCkxRhRyKAFFFFFABkUUYo9qACiiigApDS0e1ACYzRS0lABR +RR2oASilooAQ0UppKAA0006jrQAlJ60tFADap3/+ol/3TVw1Uvv9RL/ummtxM+dPHZUX2PUN27g1 +yTPvMjMoy3pxg59BXV+PD/pwz6tjjrXJ7dxYICQMn8BTluJH2TRRRUjDtRRxRQMKO1FFAgFFFFAw +NHaiigApKWigBD2pe1IaWgQelJS9qKBhRRRQIKKKKACiiigYUUCigAooooEFFFFABRRRQMKKKKBB +RRRQAdMUGigUDClpKDQACiil7GgQlFAooGHvRRRQIKPSgd6KAEx0paKWgYlFIy5xyRSBSMHcTQA6 +ijFHagAooo9qBBRS0lABRRS0AJSNkDjrTqSgAoopaAEooooGFHSiigQUGiigYUp4NA6UUAFJS0lA +BS0UUCEopaKADikoooAWkoooGFFFFAgooooGFFLSH+dAhaSiloASlpKKBhS96KSgANFHej1oAa2F ++YfjTgaD0waAAMY7UAFL2o7UlABS0gzzRQAUd6KWgBCcEe9FAUZ96KACilpKACiiigAooooAKKKW +gApKDRQIKKKKBi0lFLQAUgpaSgAopeKPSgBuKWlooASj2pfekoAWg0UUAJnpRRS0AFGOtFFACDvR +S9KTvQAUtJS0AFJS0lAC0lLSUCCj3opaBhSUtJQAtHaijtQAlFFLQAUUmOaWgBKKWkNABRRRQAHP +NHaiigApaKO1AgooFFAwoopKACk70760g60AFHrRRQAUvtSUvegBKWkHpS+tACdiKD2opaAEPSii +g0AFFFFAAaKKKAAUUUUAH9KKDxRQAUClpKAClopKACilooATvRS0hyBx1oAKKKPegAFHOaBRQAc5 +paT3ooAKKKKADrRRRQAdKKWkoAO9FBooAKKWkoAKPSlpKACiijtQAUUUdzQAUUtIKAFpD2paKAEo +o/pR2oAKKKX2oASj1oooAOtHailoASlpKWgBpHNLRiloAKKSigApaSloAKQnH40UUAHY0CilxQAl +ApaOlACZFFBUNSAEHk5oAWg+lHSgjnFABS0lLQAUUUUAFJRS0AFA6migUAFFHc0lAC0nrRS0AFHr +RRQAUlLSUALRRQKAEopaKAEFLR2PtQOlAB1oooGKACgUnQ0o70AHek96WigAoooOMUAFHrRR3oAS +ilooASjtQKWgBBQaO9FAC0lFGBQAUUUUAFFFFABRRRQAlFFFABRRRQAneilpKACiig80AJSdKWg+ +tADaqX3/AB7y/wC6att7VUv/APj3l/3TTjuJnzn49ZzfqOoXfg/U1yIOM4JHBHFdX47J/tDHYlj+ +tcqTkDgDAxx3pvcFsfZPpRR6UVIB60UGigAoooFABRRRQAUdqKKACg0neloAKKKOtACUtFFAwooo +oEFFFFABRRRQAdKOlFFABRR15ooGHrRRS0CEoooNABRR0ooGFHeiigQCiiigYUUUUCCiijvQMPpR +70UUCCiiigAooooAKKKKACilpKAA0UUUDFpKKKBC0hpRSY60DF7UgpaKBBRSUtAxKKO1HOKBC0Un +eloAQGilpKAFpKKWgBKWkpaBhSUvaigQUdqKBQAgopaSgApaKKBiUUvek70AFLRSUCCilooGFJ1I +paSgQUtJS8UAJS0go5oAO9FFB6H1oGBoooNAC0dqPWigQlLSUtAxKWkpaBCUtFFAwpKWkoELSUpp +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 +urFgP4Tg0+iigYlLRRQAUd6KKACiiigAooooAKPSiigAooooASl70UUAFFFFABQKKKACiiigAooo +oAQUtFFAg9KQ0UUDFPaiiigQUUUUAFFFFAxKWiigApOcUUUALQKKKAA0UUUCCiiigYUc4oooEHrS +d6KKBi0lFFAC96O9FFABR1oooAMdKSiigBaKKKACiiigApDRRQAUtFFABR3oooAKT1oooELR60UU +DExk0UUUABOKQZ6miikAtLRRTATtS0UUAFHeiigBDQKKKAD3paKKACkPNFFABwRigDAxRRQAUtFF +ABRRRQAgpaKKACiiigAooooASloooAKP60UUAFHaiigAFFFFABRRRQAlLRRQAUlFFAC0HrRRQAUU +UUAFGKKKACiiigAo60UUAFAoooAKKKKACiiigAooooAKKKKACj1oooAKKKKADpRRRQAUd6KKAF60 +UUUAHTik60UUAHIooooAKKKKACkzzRRQAuOKOaKKAFpKKKQB3zRRRTAKKKKQB60UUUwCiiigBGZV +BLHGe9AORRRQA6k70UUgCiiimACjvRRQAUUUUAJRRRSAKKKKYBSetFFABRRRQAlFFFACdqKKKAEa +qd9/qJR/sGiimtxPY+cPHmP7RHH97+dcoeeaKKb3BbH/2Q== + +--Apple-Mail=_DFB76792-9186-414D-9967-BF0B2DE95C41-- + +--Apple-Mail=_FA35638F-D64D-4ED4-889D-75BE5D17E6E8-- + +--Apple-Mail=_DE28DB41-A56D-40AC-BF02-D9E5C62F2877 +Content-Transfer-Encoding: 7bit +Content-Disposition: attachment; + filename=signature.asc +Content-Type: application/pgp-signature; + name=signature.asc +Content-Description: Message signed with OpenPGP using GPGMail + +-----BEGIN PGP SIGNATURE----- +Comment: GPGTools - http://gpgtools.org + +iF4EAREKAAYFAlGtBSMACgkQ5YJxMm+fSTcQagD8D4xN4U/xRYkP0RWZQElWo1TG +bNRDzTAD3fFnokDOiOAA/3CZZZjpypON2Bdw5yrJ0/m76rGvcn6lbHlLIX3+roqJ +=G/Gr +-----END PGP SIGNATURE----- + +--Apple-Mail=_DE28DB41-A56D-40AC-BF02-D9E5C62F2877-- \ No newline at end of file diff --git a/Test/Issues/Issue_130.eml b/Test/Issues/Issue_130.eml new file mode 100644 index 00000000..67098d73 --- /dev/null +++ b/Test/Issues/Issue_130.eml @@ -0,0 +1,96 @@ +Message-ID: <4E44BF19.1040502@gpgtools.org> +Date: Fri, 12 Aug 2011 07:50:17 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: Issue/130 +X-Enigmail-Version: 1.2 +Content-Type: multipart/mixed; + boundary="------------010500080106060703050804" + +This is a multi-part message in MIME format. +--------------010500080106060703050804 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 7bit + +http://gpgtools.lighthouseapp.com/projects/65764/tickets/130 + +--------------010500080106060703050804 +Content-Type: application/octet-stream; x-mac-type="0"; x-mac-creator="0"; + name="gpgmail.png.gpg" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png.gpg" + +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 +mIuQ +--------------010500080106060703050804-- diff --git a/Test/Issues/Issue_286.eml b/Test/Issues/Issue_286.eml new file mode 100644 index 00000000..963d05b9 --- /dev/null +++ b/Test/Issues/Issue_286.eml @@ -0,0 +1,46 @@ +Return-Path: +Received: from xx.xx.xxx (xx.xx.xxx [111.111.111.111]) + by mx.google.com with ESMTPS id 22sm841995fay.28.2011.08.24.06.38.46 + (version=TLSv1/SSLv3 cipher=OTHER); + Wed, 24 Aug 2011 06:38:48 -0700 (PDT) +Content-Type: application/pkcs7-mime; name=smime.p7m; smime-type=enveloped-data +Subject: Issue 286 +Mime-Version: 1.0 (Apple Message framework v1244.3) +Content-Disposition: attachment; filename=smime.p7m +From: xxx xxx +Date: Wed, 24 Aug 2011 15:38:43 +0200 +Content-Transfer-Encoding: base64 +Message-Id: +To: test@gpgtools.org +X-Mailer: Apple Mail (2.1244.3) + +MIAGCSqGSIb3DQEHA6CAMIACAQAxggM7MIIBiwIBADBzMGsxGjAYBgNVBAMMEUdQR1Rvb2xzIFRl +c3QgS2V5MREwDwYDVQQKDAhHUEdUb29sczELMAkGA1UECwwCUUExCzAJBgNVBAYTAkRFMSAwHgYJ +KoZIhvcNAQkBFhF0ZXN0QGdwZ3Rvb2xzLm9yZwIEGqpIITANBgkqhkiG9w0BAQEFAASCAQBMcRkd +yyv10G3BPQx4SAUX24evr5oy+S4LrSJ5QhxvdiAiFMsmIP6uD3NZsisZhVW2luAbUvdpKohQexkn +ixOpuMPMdEF5B8DG23B7Rsb7u1fkDNtq0lSaOvrnDk9fRlz/ygKk2UI50muB9gpgpVAtVfsefJza +JYDXEmM5BGxRJBt5ov/wvZYIR2C+K2msfj8jQaFZg4fIfsCv7B2nkdnxi7bTn7EgYufEKOP/XSDJ +ShZZkrG2ddqfaoeENqgQ//7h2dZLtzoElxXXvH3w6lPskPusJwe5i1JxDYTDdEvkRLd78ZU9Jy7C +412XH+rpjJc7nIoVHia0UiNquuA5Q1TgMIIBqAIBADCBjzB8MQswCQYDVQQGEwJERTEcMBoGA1UE +ChMTVEMgVHJ1c3RDZW50ZXIgR21iSDElMCMGA1UECxMcVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMSBM +MSBDQTEoMCYGA1UEAxMfVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMSBMMSBDQSBJWAIPAKgIAAEAAs/Q +9gcMAVsrMA0GCSqGSIb3DQEBAQUABIIBACFG3pI1JX+HEz5FXYpICyOyCiAbu4NjgpQzka27/oiu +/p4f7IWTB7J40WfkQBlGpDF/PuLOSZjyjMcupCsbbiLfE5C0ywNzICrQG/BhJjecL0/ZgQAeKtcr +vzpQ0Pdz25phAZyH1drjsqbAr6d73aMtG7RECWuHYNUT5uQPYGCd7bmbbvCzqbqJZJ6KdHTuxU+0 +h3xX+lTgihtWx8h0yvpzrWQGUa9TPYzITksi/EGDmiU1ukjRO+YyudZIT5ryYejzg9vO4axMVzxf +XBdx37/7q6iA3pim/aoqxLT6kcUyEOJkVbEp3tiU2uTCj9QdBdjjbXBfpLpX9B34qeP/5ZUwgAYJ +KoZIhvcNAQcBMBQGCCqGSIb3DQMHBAj5y2rXqB5FYqCABBiO5BkS5qKds3G4XnfP/oa65dozgNFw +FOAECAiZc1w6MF4rBBjdXiyflqUldYs2eVG4oxRhUSKrYl1GwioEEDfsrs7d/m6OU21+74hrLxkE +CA+LEsHNUKPxBBhviFPXDMhJkmqub0jcC6uWNt7UW4wnsgcECBQsHrxlOjNdBCAsPJ2AiHWQEjBR +gyByR2v1CEMhda1C6nmezeq1vSfQhgQIjD6lsFS5og8EKClfJfEoybK9do3n69jHUMDm7JE1xaus +wzKCDmGN9a3IwygS4WCsbjIEQEkunpm0cBiosaXm/avPuXOFnOyjEz784iyRbl4ZiiZTLjhkuAKh +ZOJqSzdGQACvt1xpJicPPA4M1Wr49BFAKHcEQJC7BqmQ3ED5s/FoJNxAvx0TeeVvgrx0psiGyVs0 +rWvzm0rRQPUyDJ9rHopMppo/WJD9a9bY9cEqXpnjewW3/wcECK0r+N0dexw/BECKIwqqyF1lhaLA +fKRPRuT7BiDE0OYQusmun02ynPBbt8A7is+Rl0OkPdvYlJc6Ht4olI/gZEzCpxEXm3b4dFa5BEAv +UrxT4cbyXO0Jzx1OwWu8XE2RhqzcrDc1BK+iakbkPKLKOmYwCdjwVa411mT/Zene5aggE/3S7+f0 +6tGQCWJCBEA/1QMQEdd6saSqgerq9LWLTVovoKELhzb1i2CPlJ4qJqkRmYX8Ix3PAtY3VBumr3kS +Phwel4vXjX8LutZ2jaxCBEDHQpvWmK/FuwJMM4fhTT2O5dCweqYCGUWR0ZBEwPQK0ISWYm6BOH6b +SVs0jbgIoxW2XfVMDU9m3na8/4Z2hFFTBAgQbYbx6lO5/QRAA009/203ps4kB5Lw6YN25kKJpYOu +UsJMOcke4HouAM/c3bjlLZen/HLMgRjenBh8NVVqkdJVT+liBPa9m6qWDAQIS+uH9ee8UhEECL+5 +x9OCmLaqBBhZz8MSX7QrOlVKdrO19ogq/QqqMRpGtZIECGQnndlO01A+BAg6TDA6BksR/AAAAAAA +AAAAAAA= diff --git a/Test/Issues/Issue_290.eml b/Test/Issues/Issue_290.eml new file mode 100644 index 00000000..7beb534a --- /dev/null +++ b/Test/Issues/Issue_290.eml @@ -0,0 +1,56 @@ +Return-Path: +X-Sieve: cmu-sieve 2.0 +X-IAI-Env-From: : [123.123.243.82] +Received: from xxx.xxx.xx (unknown [123.123.243.82]) + by xxx.xxx.xx (Postfix) with ESMTP + id 2188B5C401; Tue, 23 Aug 2011 16:17:01 +0200 (MEST) + (envelope-from xxx@xxx.xx) + (envelope-to VARIOUS) (2) + (internal use: ta=1, tu=1, te=1, am=P, au=xxx) +Subject: XXXX +Mime-Version: 1.0 (Apple Message framework v1244.3) +Content-Type: text/plain; charset=iso-8859-1 +From: XXX +In-Reply-To: <4DE8D067.60701@xxx.xxx.xx> +Date: Tue, 23 Aug 2011 16:17:01 +0200 +Content-Transfer-Encoding: quoted-printable +Message-Id: <5E242891-B2D5-49B9-9CE1-B9ACB20BA34A@xx.xxx.xx> +References: <4DE8D067.60701@xxx.xxx.xx> +To: XXX +X-Mailer: Apple Mail (2.1244.3) + +Hallo XXX, + +Test123 + +Viele Gr=FC=DFe, Alex + +[1] = +XXXX + +On 03.06.2011, at 14:15, XXX wrote: + +> -----BEGIN PGP SIGNED MESSAGE----- +> Hash: SHA1 +>=20 +> Hallo zusammen, +>=20 +> XXX +>=20 +>=20 +> - --=20 +> ____________________________________________________________________ +> XXX>=20 +> XXX +> -----BEGIN PGP SIGNATURE----- +> Version: GnuPG v1.4.9 (Darwin) +> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ +>=20 +> iEYEARECAAYFAk3o0GcACgkQtxPbwczvF9XgRgCgjtUb8n3AAtnT7N5t/ywCZmqi +> LuIAnR+jpxTGiyN7G+FGCATc/n9mhHNC +> =3DCUIa +> -----END PGP SIGNATURE----- +> + +-- +XXX diff --git a/Test/Keys/OpenPGP.asc b/Test/Keys/OpenPGP.asc new file mode 100644 index 00000000..5876b41d --- /dev/null +++ b/Test/Keys/OpenPGP.asc @@ -0,0 +1,103 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org + +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 +Hb6n8CtnCz80WDJxUTM/og== +=sUBS +-----END PGP PUBLIC KEY BLOCK----- +-----BEGIN PGP PRIVATE KEY BLOCK----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org + +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 +VLa7kVcdvqfwK2cLPzRYMnFRMz+i +=Jf/Z +-----END PGP PRIVATE KEY BLOCK----- diff --git a/Test/Keys/X509.p12 b/Test/Keys/X509.p12 new file mode 100644 index 00000000..4c58cc6a Binary files /dev/null and b/Test/Keys/X509.p12 differ diff --git a/Test/Scripts/generateResultTable.php b/Test/Scripts/generateResultTable.php new file mode 100644 index 00000000..76949b03 --- /dev/null +++ b/Test/Scripts/generateResultTable.php @@ -0,0 +1,181 @@ +%s|%s|%s|\n"; + /* ---------------------------------------------------------------------- */ + + /* results -------------------------------------------------------------- */ + $send_status = $result[$a][$b][$c][$d][$e][SEND] ? + $result[$a][$b][$c][$d][$e][SEND] : + STATUS_TBT; + $recv_status = $result[$a][$b][$c][$d][$e][RECV] ? + $result[$a][$b][$c][$d][$e][RECV] : + STATUS_TBT; + $comment = $result[$a][$b][$c][$d][$e][COMMENT] ? + $result[$a][$b][$c][$d][$e][COMMENT] : + ""; + /* ---------------------------------------------------------------------- */ + + /* generic rules -------------------------------------------------------- */ + if ("NN" == $b && "VT" == $c && ("NA" == $d || "VA" == $d)) { + $comment = "Important and simple use case."; + } + if ("M" == substr($a, 0, 1) && "NN" != $b) { + $send_status = STATUS_INV; + $recv_status = STATUS_INV; + $comment = "Can't use MIME twice"; + } + if ("NN" == $a) { + $send_status = STATUS_INV; + $recv_status = STATUS_INV; + $comment .= " (No testing needed)"; + } + if ("I" == substr($a, 0, 1)) { + $send_status = STATUS_INV; + $comment .= " (Sending PGP/Inline not supported)"; + } + /* ---------------------------------------------------------------------- */ + + /* set the color -------------------------------------------------------- */ + if (STATUS_TBT == $send_status) {$send_color=COLOR_TBT; ++$stats[STATUS_TBT];} + if (STATUS_TBT == $recv_status) {$recv_color=COLOR_TBT; ++$stats[STATUS_TBT];} + if (STATUS_INV == $send_status) {$send_color=COLOR_INV; ++$stats[STATUS_INV];} + if (STATUS_INV == $recv_status) {$recv_color=COLOR_INV; ++$stats[STATUS_INV];} + if (STATUS_OK == $send_status) {$send_color=COLOR_OK; ++$stats[STATUS_OK];} + if (STATUS_OK == $recv_status) {$recv_color=COLOR_OK; ++$stats[STATUS_OK];} + if (STATUS_NYI == $send_status) {$send_color=COLOR_NYI; ++$stats[STATUS_NYI];} + if (STATUS_NYI == $recv_status) {$recv_color=COLOR_NYI; ++$stats[STATUS_NYI];} + if ("#" == substr($send_status, 0, 1)) { + $nr = substr($send_status, 1); + $send_status = "#$nr"; + $send_color=COLOR_ISSUE; + ++$stats[STATUS_ISSUE]; + } + if ("#" == substr($recv_status, 0, 1)) { + $nr = substr($recv_status, 1); + $recv_status = "#$nr"; + $recv_color=COLOR_ISSUE; + ++$stats[STATUS_ISSUE]; + } + /* ---------------------------------------------------------------------- */ + + + /* ---------------------------------------------------------------------- */ + if (! (STATUS_INV == $send_status && STATUS_INV == $recv_status)) { + if (STATUS_INV != $send_status) ++$j; + if (STATUS_INV != $recv_status) ++$j; + ++$i; + printf ($template, $i, $a, $b, $c, $d, $e, + $send_color, $send_status, $recv_color, $recv_status, $comment); + } + /* ---------------------------------------------------------------------- */ +} + +/* main --------------------------------------------------------------------- */ +$i = 0; +$stats = array(); +foreach ($openpgp as $a) { + foreach ($smime as $b) { + foreach ($message as $c) { + foreach ($attachment as $d) { + foreach ($receiver as $e) { + printRow($a, $b, $c, $d, $e, &$i, &$stats, &$result); + } + } + } + } +} +/* -------------------------------------------------------------------------- */ + +echo "\n"; +echo " * Seems to work (" . STATUS_OK ."): ". $stats[STATUS_OK] ."\n"; +echo " * To be tested (" . STATUS_TBT ."): ". $stats[STATUS_TBT] ."\n"; +echo " * Has issues (" . STATUS_ISSUE ."): ". $stats[STATUS_ISSUE] ."\n"; +//echo " * Not yet implemented (" . STATUS_NYI ."): ". $stats[STATUS_NYI] ."\n"; +echo " * Combination not possible, out of scope or no testing needed (" . STATUS_INV ."): ". $stats[STATUS_INV] ."\n"; + +?> diff --git a/Test/Testcases/#GPGMail-testcases.md b/Test/Testcases/#GPGMail-testcases.md new file mode 100644 index 00000000..7101bc78 --- /dev/null +++ b/Test/Testcases/#GPGMail-testcases.md @@ -0,0 +1,324 @@ +# GPGMail Test Cases + +All test cases for GPGMail. We would very much appreciate any feedback for tests with the status "TBT" - in particular for those with the comment "Important and simple use case". If possible provide your result in this syntax: +
+$result["ME"]["NN"]["VT"]["NA"]["S"][SEND] = STATUS_OK;
+$result["MS"]["NN"]["MT"]["NA"]["S"][RECV] = "#240";
+
+ +## Legend + +We've at least five variables for the sending and for the receiving part and therefore 864 (6*4*2*3*3*2) possible combinations. But fortunately we do not have to test every combination (only 324, see table below). + + * A = OpenPGP method + * **ME**: mime encrypted + * **MS**: mime signed + * **MB**: mime both + * **IE**: inline encrypted + * **IS**: inline signed + * **IB**: inline both + * B = S/MIME method + * **NN** nothing + * **EE**: encrypted + * **SS**: signed + * **BB**: both + * C = Message type + * **VT**: valid text + * **MT**: modified text + * Later maybe: **VH** valid HTML and **MH** modified HTML + * D = Attachment type + * **NA** none + * **VA** valid attachment + * **MA** modified attachment + * E = Receiver type + * **S**ingle + * **M**ultiple + * **B**CC + +That means for example ME/NN/VT/NA/S is an OpenPGP/MIME encrypted message with a valid unmodified text and without an attachment sent to a single person. + +## Table + +This was generated automatically - please do not edit. Invalid tests (e.g. OpenPGP/MIME + S/MIME) were removed. + +### Overview + + * Seems to work (OK): 37 + * To be tested (TBT): 278 + * Has issues (#xxx): 9 + * Combination not possible, out of scope or no testing needed (INV): 540 + +### Details + +|Nr. |Test |Sending |Receiving |Comment | +|-----|---------------|---------------------------------|---------------------------------|--------------------| +|0001|ME/NN/VT/NA/S|OK|OK|Important and simple use case.| +|0002|ME/NN/VT/NA/M|OK|OK|Important and simple use case.| +|0003|ME/NN/VT/NA/B|OK|OK|Important and simple use case.| +|0004|ME/NN/VT/VA/S|OK|OK|Important and simple use case.| +|0005|ME/NN/VT/VA/M|OK|OK|Important and simple use case.| +|0006|ME/NN/VT/VA/B|TBT|TBT|Important and simple use case.| +|0007|ME/NN/VT/MA/S|TBT|OK|| +|0008|ME/NN/VT/MA/M|TBT|TBT|| +|0009|ME/NN/VT/MA/B|TBT|TBT|| +|0010|ME/NN/MT/NA/S|TBT|OK|| +|0011|ME/NN/MT/NA/M|TBT|TBT|| +|0012|ME/NN/MT/NA/B|TBT|TBT|| +|0013|ME/NN/MT/VA/S|TBT|TBT|| +|0014|ME/NN/MT/VA/M|TBT|TBT|| +|0015|ME/NN/MT/VA/B|TBT|TBT|| +|0016|ME/NN/MT/MA/S|TBT|OK|| +|0017|ME/NN/MT/MA/M|TBT|TBT|| +|0018|ME/NN/MT/MA/B|TBT|TBT|| +|0019|MS/NN/VT/NA/S|OK|OK|Important and simple use case.| +|0020|MS/NN/VT/NA/M|OK|OK|Important and simple use case.| +|0021|MS/NN/VT/NA/B|TBT|TBT|Important and simple use case.| +|0022|MS/NN/VT/VA/S|OK|OK|Important and simple use case.| +|0023|MS/NN/VT/VA/M|TBT|TBT|Important and simple use case.| +|0024|MS/NN/VT/VA/B|TBT|TBT|Important and simple use case.| +|0025|MS/NN/VT/MA/S|TBT|OK|| +|0026|MS/NN/VT/MA/M|TBT|TBT|| +|0027|MS/NN/VT/MA/B|TBT|TBT|| +|0028|MS/NN/MT/NA/S|TBT|OK|| +|0029|MS/NN/MT/NA/M|TBT|TBT|| +|0030|MS/NN/MT/NA/B|TBT|TBT|| +|0031|MS/NN/MT/VA/S|TBT|TBT|| +|0032|MS/NN/MT/VA/M|TBT|TBT|| +|0033|MS/NN/MT/VA/B|TBT|TBT|| +|0034|MS/NN/MT/MA/S|TBT|OK|| +|0035|MS/NN/MT/MA/M|TBT|TBT|| +|0036|MS/NN/MT/MA/B|TBT|TBT|| +|0037|MB/NN/VT/NA/S|OK|OK|Important and simple use case.| +|0038|MB/NN/VT/NA/M|TBT|TBT|Important and simple use case.| +|0039|MB/NN/VT/NA/B|TBT|TBT|Important and simple use case.| +|0040|MB/NN/VT/VA/S|OK|OK|Important and simple use case.| +|0041|MB/NN/VT/VA/M|TBT|TBT|Important and simple use case.| +|0042|MB/NN/VT/VA/B|TBT|TBT|Important and simple use case.| +|0043|MB/NN/VT/MA/S|TBT|OK|| +|0044|MB/NN/VT/MA/M|TBT|TBT|| +|0045|MB/NN/VT/MA/B|TBT|TBT|| +|0046|MB/NN/MT/NA/S|TBT|OK|| +|0047|MB/NN/MT/NA/M|TBT|TBT|| +|0048|MB/NN/MT/NA/B|TBT|TBT|| +|0049|MB/NN/MT/VA/S|TBT|TBT|| +|0050|MB/NN/MT/VA/M|TBT|TBT|| +|0051|MB/NN/MT/VA/B|TBT|TBT|| +|0052|MB/NN/MT/MA/S|TBT|OK|| +|0053|MB/NN/MT/MA/M|TBT|TBT|| +|0054|MB/NN/MT/MA/B|TBT|TBT|| +|0055|IE/NN/VT/NA/S|INV|OK|Important and simple use case. (Sending PGP/Inline not supported)| +|0056|IE/NN/VT/NA/M|INV|TBT|Important and simple use case. (Sending PGP/Inline not supported)| +|0057|IE/NN/VT/NA/B|INV|TBT|Important and simple use case. (Sending PGP/Inline not supported)| +|0058|IE/NN/VT/VA/S|INV|#280|Important and simple use case. (Sending PGP/Inline not supported)| +|0059|IE/NN/VT/VA/M|INV|TBT|Important and simple use case. (Sending PGP/Inline not supported)| +|0060|IE/NN/VT/VA/B|INV|TBT|Important and simple use case. (Sending PGP/Inline not supported)| +|0061|IE/NN/VT/MA/S|INV|#280| (Sending PGP/Inline not supported)| +|0062|IE/NN/VT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0063|IE/NN/VT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0064|IE/NN/MT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0065|IE/NN/MT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0066|IE/NN/MT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0067|IE/NN/MT/VA/S|INV|OK| (Sending PGP/Inline not supported)| +|0068|IE/NN/MT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0069|IE/NN/MT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0070|IE/NN/MT/MA/S|INV|OK| (Sending PGP/Inline not supported)| +|0071|IE/NN/MT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0072|IE/NN/MT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0073|IE/EE/VT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0074|IE/EE/VT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0075|IE/EE/VT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0076|IE/EE/VT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0077|IE/EE/VT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0078|IE/EE/VT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0079|IE/EE/VT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0080|IE/EE/VT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0081|IE/EE/VT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0082|IE/EE/MT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0083|IE/EE/MT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0084|IE/EE/MT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0085|IE/EE/MT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0086|IE/EE/MT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0087|IE/EE/MT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0088|IE/EE/MT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0089|IE/EE/MT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0090|IE/EE/MT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0091|IE/SS/VT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0092|IE/SS/VT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0093|IE/SS/VT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0094|IE/SS/VT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0095|IE/SS/VT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0096|IE/SS/VT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0097|IE/SS/VT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0098|IE/SS/VT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0099|IE/SS/VT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0100|IE/SS/MT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0101|IE/SS/MT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0102|IE/SS/MT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0103|IE/SS/MT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0104|IE/SS/MT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0105|IE/SS/MT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0106|IE/SS/MT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0107|IE/SS/MT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0108|IE/SS/MT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0109|IE/BB/VT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0110|IE/BB/VT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0111|IE/BB/VT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0112|IE/BB/VT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0113|IE/BB/VT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0114|IE/BB/VT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0115|IE/BB/VT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0116|IE/BB/VT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0117|IE/BB/VT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0118|IE/BB/MT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0119|IE/BB/MT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0120|IE/BB/MT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0121|IE/BB/MT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0122|IE/BB/MT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0123|IE/BB/MT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0124|IE/BB/MT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0125|IE/BB/MT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0126|IE/BB/MT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0127|IS/NN/VT/NA/S|INV|OK|Important and simple use case. (Sending PGP/Inline not supported)| +|0128|IS/NN/VT/NA/M|INV|TBT|Important and simple use case. (Sending PGP/Inline not supported)| +|0129|IS/NN/VT/NA/B|INV|TBT|Important and simple use case. (Sending PGP/Inline not supported)| +|0130|IS/NN/VT/VA/S|INV|#266|Important and simple use case. (Sending PGP/Inline not supported)| +|0131|IS/NN/VT/VA/M|INV|TBT|Important and simple use case. (Sending PGP/Inline not supported)| +|0132|IS/NN/VT/VA/B|INV|TBT|Important and simple use case. (Sending PGP/Inline not supported)| +|0133|IS/NN/VT/MA/S|INV|#283| (Sending PGP/Inline not supported)| +|0134|IS/NN/VT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0135|IS/NN/VT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0136|IS/NN/MT/NA/S|INV|OK| (Sending PGP/Inline not supported)| +|0137|IS/NN/MT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0138|IS/NN/MT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0139|IS/NN/MT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0140|IS/NN/MT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0141|IS/NN/MT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0142|IS/NN/MT/MA/S|INV|#281| (Sending PGP/Inline not supported)| +|0143|IS/NN/MT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0144|IS/NN/MT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0145|IS/EE/VT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0146|IS/EE/VT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0147|IS/EE/VT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0148|IS/EE/VT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0149|IS/EE/VT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0150|IS/EE/VT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0151|IS/EE/VT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0152|IS/EE/VT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0153|IS/EE/VT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0154|IS/EE/MT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0155|IS/EE/MT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0156|IS/EE/MT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0157|IS/EE/MT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0158|IS/EE/MT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0159|IS/EE/MT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0160|IS/EE/MT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0161|IS/EE/MT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0162|IS/EE/MT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0163|IS/SS/VT/NA/S|INV|#244| (Sending PGP/Inline not supported)| +|0164|IS/SS/VT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0165|IS/SS/VT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0166|IS/SS/VT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0167|IS/SS/VT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0168|IS/SS/VT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0169|IS/SS/VT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0170|IS/SS/VT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0171|IS/SS/VT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0172|IS/SS/MT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0173|IS/SS/MT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0174|IS/SS/MT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0175|IS/SS/MT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0176|IS/SS/MT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0177|IS/SS/MT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0178|IS/SS/MT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0179|IS/SS/MT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0180|IS/SS/MT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0181|IS/BB/VT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0182|IS/BB/VT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0183|IS/BB/VT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0184|IS/BB/VT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0185|IS/BB/VT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0186|IS/BB/VT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0187|IS/BB/VT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0188|IS/BB/VT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0189|IS/BB/VT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0190|IS/BB/MT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0191|IS/BB/MT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0192|IS/BB/MT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0193|IS/BB/MT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0194|IS/BB/MT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0195|IS/BB/MT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0196|IS/BB/MT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0197|IS/BB/MT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0198|IS/BB/MT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0199|IB/NN/VT/NA/S|INV|OK|Important and simple use case. (Sending PGP/Inline not supported)| +|0200|IB/NN/VT/NA/M|INV|TBT|Important and simple use case. (Sending PGP/Inline not supported)| +|0201|IB/NN/VT/NA/B|INV|TBT|Important and simple use case. (Sending PGP/Inline not supported)| +|0202|IB/NN/VT/VA/S|INV|#239|Important and simple use case. (Sending PGP/Inline not supported)| +|0203|IB/NN/VT/VA/M|INV|TBT|Important and simple use case. (Sending PGP/Inline not supported)| +|0204|IB/NN/VT/VA/B|INV|TBT|Important and simple use case. (Sending PGP/Inline not supported)| +|0205|IB/NN/VT/MA/S|INV|#279| (Sending PGP/Inline not supported)| +|0206|IB/NN/VT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0207|IB/NN/VT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0208|IB/NN/MT/NA/S|INV|OK| (Sending PGP/Inline not supported)| +|0209|IB/NN/MT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0210|IB/NN/MT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0211|IB/NN/MT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0212|IB/NN/MT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0213|IB/NN/MT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0214|IB/NN/MT/MA/S|INV|OK| (Sending PGP/Inline not supported)| +|0215|IB/NN/MT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0216|IB/NN/MT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0217|IB/EE/VT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0218|IB/EE/VT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0219|IB/EE/VT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0220|IB/EE/VT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0221|IB/EE/VT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0222|IB/EE/VT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0223|IB/EE/VT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0224|IB/EE/VT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0225|IB/EE/VT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0226|IB/EE/MT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0227|IB/EE/MT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0228|IB/EE/MT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0229|IB/EE/MT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0230|IB/EE/MT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0231|IB/EE/MT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0232|IB/EE/MT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0233|IB/EE/MT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0234|IB/EE/MT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0235|IB/SS/VT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0236|IB/SS/VT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0237|IB/SS/VT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0238|IB/SS/VT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0239|IB/SS/VT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0240|IB/SS/VT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0241|IB/SS/VT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0242|IB/SS/VT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0243|IB/SS/VT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0244|IB/SS/MT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0245|IB/SS/MT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0246|IB/SS/MT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0247|IB/SS/MT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0248|IB/SS/MT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0249|IB/SS/MT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0250|IB/SS/MT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0251|IB/SS/MT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0252|IB/SS/MT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0253|IB/BB/VT/NA/S|INV|#286| (Sending PGP/Inline not supported)| +|0254|IB/BB/VT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0255|IB/BB/VT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0256|IB/BB/VT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0257|IB/BB/VT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0258|IB/BB/VT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0259|IB/BB/VT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0260|IB/BB/VT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0261|IB/BB/VT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0262|IB/BB/MT/NA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0263|IB/BB/MT/NA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0264|IB/BB/MT/NA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0265|IB/BB/MT/VA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0266|IB/BB/MT/VA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0267|IB/BB/MT/VA/B|INV|TBT| (Sending PGP/Inline not supported)| +|0268|IB/BB/MT/MA/S|INV|TBT| (Sending PGP/Inline not supported)| +|0269|IB/BB/MT/MA/M|INV|TBT| (Sending PGP/Inline not supported)| +|0270|IB/BB/MT/MA/B|INV|TBT| (Sending PGP/Inline not supported)| diff --git a/Test/Testcases/IB_NN_MT_MA_S.eml b/Test/Testcases/IB_NN_MT_MA_S.eml new file mode 100644 index 00000000..5a759a80 --- /dev/null +++ b/Test/Testcases/IB_NN_MT_MA_S.eml @@ -0,0 +1,117 @@ +Message-ID: <4E4466F2.5050603@gpgtools.org> +Date: Fri, 12 Aug 2011 01:34:10 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IB/NN/MT/MA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/mixed; + boundary="------------030104040504050907080609" + +This is a multi-part message in MIME format. +--------------030104040504050907080609 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit + +-----BEGIN PGP MESSAGE----- +Charset: ISO-8859-1 +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQf+L9rLSDUhq9F202yIf9Fdxdtw96Lm+Avgeu6jofS9ADSC +xSmr0PIjKDFSKB5Z+itcnD/D/Bo3yUxK1nZ8JTGMHoKS+qZ8O6g8JYGkDxmagH1p +7+4NIN6UqJYfyKtUlHa/7bld8hdlhha6h9xooE0wQa4+mr6ccd7VpTrtmEKerxOR +kkS3EXXaeqmvGjZp3BR/UoOGfRRI5ghFmRzQUAoQ1DBPwwtknkn6RAgbkZrhriXA +RA4kDQ7uH2epg/VRXsrlhhbZY4a+ztIcNFa+IJk45b0BP2NdgdOQc2IhgH2IBfWk +xGi6SAzN1I4HRC32whmkeCtrSX7CUPOUrTp9UEj0ytLAuwE8i3KuFhtuwQOTu+2U +19+KnidoomC/Lg6PsSLvZ6u0HHReuo2QenRoEh0Zwj3pMUll9NQdaKrdfXPe7rdV +hbJsZoq5BGyHkZt77M8VAGK8/96Z+J/LDt5/2yQ0TI30lbOioaLnFiTXwBOOTAZd +GXiGILt0pe4COZp6d+80U9QiZWhsOkBFAzvlP8WlrbrT08MBZ1v6+VuNG2kltAcM +g7BFFx6jLP+KFRgWkbfAUIiFSPKbJUhmXPhDmssT6D1COMk2B6YsQKeq9aHXx7JQ +qryJzGP5IrILj0NW5lbhs0GlX1j+lacw6TAglJebdQG1QSxS5MNkldXzB6ixXPIO +SyW+QguT/wsbmWy+SrrE4BoB+CgtDkO8CCPLFt5yn8xDQjnNsmKZPnSndcOjlxpF +sGuAFkbC8NmM3mA1melSd3AiiF4M1jPhGi+LN9CqMB1w19zvLWW1O4HbtYLK+UiF +LpjFIoQ3GOmAtxUekxNpFkWHgVwzm9EdmZDQM+A= +=uug/ +-----END PGP MESSAGE----- + +--------------030104040504050907080609 +Content-Type: application/octet-stream; + name="gpgmail.png.pgp" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png.pgp" + +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 ++RGgfmQmL97HxJxQOg== +--------------030104040504050907080609-- diff --git a/Test/Testcases/IB_NN_MT_NA_S.eml b/Test/Testcases/IB_NN_MT_NA_S.eml new file mode 100644 index 00000000..e7803adb --- /dev/null +++ b/Test/Testcases/IB_NN_MT_NA_S.eml @@ -0,0 +1,33 @@ +Message-ID: <4E44637C.9000905@gpgtools.org> +Date: Fri, 12 Aug 2011 01:19:24 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IB/NN/MT/NA/S +X-Enigmail-Version: 1.2 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit + +-----BEGIN PGP MESSAGE----- +Charset: ISO-8859-1 +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQf9GfUs0it4yA/ZAI56d/fX/715ADvvRlE+G1N+d/K1Z5Kk ++iJPmPXIXiXYg7lYpc1vyIt2F6Jnhk33ZzeRyBJqvDv6G0fNbRxz0ZFtPUAP94yK +V+osWkbU9yb9BIvbY9uDUPeOz6U09aBVK8jnf66fSQuXI6FK8KDfGPjbGhqSMxYf +8nCgZrD95e0efp80VUFtcLtzQgXQxUK+T+E755eyyUT3DnYrnowUfbzkijR1+Enq +30YhEj/6JIDS+neZfzXMmUh+LZA6JAKh+Mm1b21s5Ge6kPRR/yL37T8aZMaMet1k +Z40r/Ht3+NcjTE9hM56i2qTU0gmm04kDlyUlmDlbiNLAuwHjmud6T1MBCIJdGv5y +jFa7W0/qHyRjGGWvSrJaxePZK6w3gSKLM1AnK47F4NPUdfR+Fb/cAP0gkKiArY8Y +nYAZD6sZmRUd5Qcwt2AE/LNQ9EYWo6eViU4dmt4vOmuc/BaFBzrPqJbb5Nz76IGO +uSVBb53MosHgNcUvpMFd183kyVPUHUgCnTyf7AbtGOZuBc+1SE8ukHU7NxK4W5Tm +NyzZjd8srQwB8TaHiqTLZXPP/EXdryUIeOagyLpbGw1DNIEjrWlQrbro0PMiGhLl +7vUxyNnvo8tVsGsIaUgpHnHiQAIDV4InC0Jeh587XqNcVZSfJ+4ndYbKGgyFx/IT +o7p+WdouemF/9pPFtOyGBSY8MuvC39j7YvEvB0WziK189Ltr3NnMWMyVTLhxk6b9 +bwb1/x8OJ/Z+2BZzXqRoLjLS3gMoE2HPDGZctV7XR6fl36fzXmP4Tcn0azXXmINv +oEJu4iBF6tiedyQFRiM1Adso3lsiSIDzR5gr8GM= +=6gyb +-----END PGP MESSAGE----- diff --git a/Test/Testcases/IB_NN_VT_MA_S.eml b/Test/Testcases/IB_NN_VT_MA_S.eml new file mode 100644 index 00000000..d1b8ebd4 --- /dev/null +++ b/Test/Testcases/IB_NN_VT_MA_S.eml @@ -0,0 +1,117 @@ +Message-ID: <4E4466F2.5050603@gpgtools.org> +Date: Fri, 12 Aug 2011 01:34:10 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IB/NN/VT/MA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/mixed; + boundary="------------030104040504050907080609" + +This is a multi-part message in MIME format. +--------------030104040504050907080609 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit + +-----BEGIN PGP MESSAGE----- +Charset: ISO-8859-1 +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQf+L9rLSDUhq9F202yIf9Fdxdtw96Lm+Avgeu6jofS9ADSC +XSmr0PIjKDFSKB5Z+itcnD/D/Bo3yUxK1nZ8JTGMHoKS+qZ8O6g8JYGkDxmagH1p +7+4NIN6UqJYfyKtUlHa/7bld8hdlhha6h9xooE0wQa4+mr6ccd7VpTrtmEKerxOR +kkS3EXXaeqmvGjZp3BR/UoOGfRRI5ghFmRzQUAoQ1DBPwwtknkn6RAgbkZrhriXA +RA4kDQ7uH2epg/VRXsrlhhbZY4a+ztIcNFa+IJk45b0BP2NdgdOQc2IhgH2IBfWk +xGi6SAzN1I4HRC32whmkeCtrSX7CUPOUrTp9UEj0ytLAuwE8i3KuFhtuwQOTu+2U +19+KnidoomC/Lg6PsSLvZ6u0HHReuo2QenRoEh0Zwj3pMUll9NQdaKrdfXPe7rdV +hbJsZoq5BGyHkZt77M8VAGK8/96Z+J/LDt5/2yQ0TI30lbOioaLnFiTXwBOOTAZd +GXiGILt0pe4COZp6d+80U9QiZWhsOkBFAzvlP8WlrbrT08MBZ1v6+VuNG2kltAcM +g7BFFx6jLP+KFRgWkbfAUIiFSPKbJUhmXPhDmssT6D1COMk2B6YsQKeq9aHXx7JQ +qryJzGP5IrILj0NW5lbhs0GlX1j+lacw6TAglJebdQG1QSxS5MNkldXzB6ixXPIO +SyW+QguT/wsbmWy+SrrE4BoB+CgtDkO8CCPLFt5yn8xDQjnNsmKZPnSndcOjlxpF +sGuAFkbC8NmM3mA1melSd3AiiF4M1jPhGi+LN9CqMB1w19zvLWW1O4HbtYLK+UiF +LpjFIoQ3GOmAtxUekxNpFkWHgVwzm9EdmZDQM+A= +=uug/ +-----END PGP MESSAGE----- + +--------------030104040504050907080609 +Content-Type: application/octet-stream; + name="gpgmail.png.pgp" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png.pgp" + +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 ++RGgfmQmL97HxJxQOg== +--------------030104040504050907080609-- diff --git a/Test/Testcases/IB_NN_VT_NA_S.eml b/Test/Testcases/IB_NN_VT_NA_S.eml new file mode 100644 index 00000000..54c5acdd --- /dev/null +++ b/Test/Testcases/IB_NN_VT_NA_S.eml @@ -0,0 +1,33 @@ +Message-ID: <4E44637C.9000905@gpgtools.org> +Date: Fri, 12 Aug 2011 01:19:24 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IB/NN/VT/NA/S +X-Enigmail-Version: 1.2 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit + +-----BEGIN PGP MESSAGE----- +Charset: ISO-8859-1 +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQf9GfUs0it4yA/ZAI56d/fX/715ADvvRlE+G1N+d/K1Z5Kk ++iJPmPXIXiXYg7lYpc1vyIt2F6Jnhk33ZzeRyBJqvDv6G0fNbRxz0ZFtPUAP94yK +V+osWkbU9yb9BIvbY9uDUPeOz6U09aBVK8jnf66fSQuXI6FK8KDfGPjbGhqSMxYf +7nCgZrD95e0efp80VUFtcLtzQgXQxUK+T+E755eyyUT3DnYrnowUfbzkijR1+Enq +30YhEj/6JIDS+neZfzXMmUh+LZA6JAKh+Mm1b21s5Ge6kPRR/yL37T8aZMaMet1k +Z40r/Ht3+NcjTE9hM56i2qTU0gmm04kDlyUlmDlbiNLAuwHjmud6T1MBCIJdGv5y +jFa7W0/qHyRjGGWvSrJaxePZK6w3gSKLM1AnK47F4NPUdfR+Fb/cAP0gkKiArY8Y +nYAZD6sZmRUd5Qcwt2AE/LNQ9EYWo6eViU4dmt4vOmuc/BaFBzrPqJbb5Nz76IGO +uSVBb53MosHgNcUvpMFd183kyVPUHUgCnTyf7AbtGOZuBc+1SE8ukHU7NxK4W5Tm +NyzZjd8srQwB8TaHiqTLZXPP/EXdryUIeOagyLpbGw1DNIEjrWlQrbro0PMiGhLl +7vUxyNnvo8tVsGsIaUgpHnHiQAIDV4InC0Jeh587XqNcVZSfJ+4ndYbKGgyFx/IT +o7p+WdouemF/9pPFtOyGBSY8MuvC39j7YvEvB0WziK189Ltr3NnMWMyVTLhxk6b9 +bwb1/x8OJ/Z+2BZzXqRoLjLS3gMoE2HPDGZctV7XR6fl36fzXmP4Tcn0azXXmINv +oEJu4iBF6tiedyQFRiM1Adso3lsiSIDzR5gr8GM= +=6gyb +-----END PGP MESSAGE----- diff --git a/Test/Testcases/IB_NN_VT_VA_S.eml b/Test/Testcases/IB_NN_VT_VA_S.eml new file mode 100644 index 00000000..7ad379f3 --- /dev/null +++ b/Test/Testcases/IB_NN_VT_VA_S.eml @@ -0,0 +1,117 @@ +Message-ID: <4E4466F2.5050603@gpgtools.org> +Date: Fri, 12 Aug 2011 01:34:10 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IB/NN/VT/VA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/mixed; + boundary="------------030104040504050907080609" + +This is a multi-part message in MIME format. +--------------030104040504050907080609 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit + +-----BEGIN PGP MESSAGE----- +Charset: ISO-8859-1 +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQf+L9rLSDUhq9F202yIf9Fdxdtw96Lm+Avgeu6jofS9ADSC +XSmr0PIjKDFSKB5Z+itcnD/D/Bo3yUxK1nZ8JTGMHoKS+qZ8O6g8JYGkDxmagH1p +7+4NIN6UqJYfyKtUlHa/7bld8hdlhha6h9xooE0wQa4+mr6ccd7VpTrtmEKerxOR +kkS3EXXaeqmvGjZp3BR/UoOGfRRI5ghFmRzQUAoQ1DBPwwtknkn6RAgbkZrhriXA +RA4kDQ7uH2epg/VRXsrlhhbZY4a+ztIcNFa+IJk45b0BP2NdgdOQc2IhgH2IBfWk +xGi6SAzN1I4HRC32whmkeCtrSX7CUPOUrTp9UEj0ytLAuwE8i3KuFhtuwQOTu+2U +19+KnidoomC/Lg6PsSLvZ6u0HHReuo2QenRoEh0Zwj3pMUll9NQdaKrdfXPe7rdV +hbJsZoq5BGyHkZt77M8VAGK8/96Z+J/LDt5/2yQ0TI30lbOioaLnFiTXwBOOTAZd +GXiGILt0pe4COZp6d+80U9QiZWhsOkBFAzvlP8WlrbrT08MBZ1v6+VuNG2kltAcM +g7BFFx6jLP+KFRgWkbfAUIiFSPKbJUhmXPhDmssT6D1COMk2B6YsQKeq9aHXx7JQ +qryJzGP5IrILj0NW5lbhs0GlX1j+lacw6TAglJebdQG1QSxS5MNkldXzB6ixXPIO +SyW+QguT/wsbmWy+SrrE4BoB+CgtDkO8CCPLFt5yn8xDQjnNsmKZPnSndcOjlxpF +sGuAFkbC8NmM3mA1melSd3AiiF4M1jPhGi+LN9CqMB1w19zvLWW1O4HbtYLK+UiF +LpjFIoQ3GOmAtxUekxNpFkWHgVwzm9EdmZDQM+A= +=uug/ +-----END PGP MESSAGE----- + +--------------030104040504050907080609 +Content-Type: application/octet-stream; + name="gpgmail.png.pgp" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png.pgp" + +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 ++RGgfmQmL97HxJxQOg== +--------------030104040504050907080609-- diff --git a/Test/Testcases/IE_NN_MT_MA_S.eml b/Test/Testcases/IE_NN_MT_MA_S.eml new file mode 100644 index 00000000..883c6a59 --- /dev/null +++ b/Test/Testcases/IE_NN_MT_MA_S.eml @@ -0,0 +1,105 @@ +Message-ID: <4E4466CC.5040103@gpgtools.org> +Date: Fri, 12 Aug 2011 01:33:32 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IE/NN/MT/MA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/mixed; + boundary="------------070402070209050003040009" + +This is a multi-part message in MIME format. +--------------070402070209050003040009 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit + +-----BEGIN PGP MESSAGE----- +Charset: ISO-8859-1 +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQf/cnHtMyzK/ZuXZu9SlP6gPQL86W557pzRLXVoUVwq2WGr ++94m0m/itruJdbpn61kB3g99YY70geHsrfGPoYPik1366HTtv8DvKRcr/CypBuJy +xGa8KI8qaV0dknSgh6DfQwlwBJOaP2bWUK5pfSPE8hH+G4qn+XlmG0Y9ZEvV7teg +UJm5DcycSF69syXc1nwVVfZlmyaxcQb8vClaZDAanqP5eUK2Y17OLeaZXQG7Eduq +8f1xAc91/Zr0vLWVvq0gmzM9+Z3DsfVEtMRLj/qTq3sqdj16KDwnpmQUtBsGZnmg +jGaohThQc8sbE1g/ydUj7WwtdwjH4zwXFNpmkyZmH9JKAUiZ8s1HHY41h4QkicOl +DFpSw3FggjgcgD8yx8rKmOAaY4EqvGwDzE4KvRPj5q1yCVvKNJj4xc4Lbr+pnLV0 +o++Wdzuq/p3OEJs= +=h6iw +-----END PGP MESSAGE----- + +--------------070402070209050003040009 +Content-Type: application/octet-stream; + name="gpgmail.png.pgp" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png.pgp" + +hQEMA1JrCfEKo9qCAQf9HbTw2rdxY/AqGPHvpwmFSkYzz7rkUFH90xj1zqaLiNKATtKNCIIW ++1VbBMo5BELlWTVJAHmWxtFN5kjMYY5jwH3DH57dUy0uT0DjJMwIpui1SFYe3HO8wSHSOw40 +e+Xv3Ng8fM6rVUkIz7bPS4EF2glTmWlieC/cGh5x9EgAPUtDRx8xJWrgX3Utji4iKaGddcsY +bXbQY+hKyne6Bp5dwOpKv0CrvDc+klgg7i1xx86+GmMKzwW3yw+eiCL2gPeXIQbNeddhFpJF +X4/1yZFv6rFdQblye1OvHUgQYK4RvXO59CcSsgLwxTM/O6BP7Bbn76svSbxBFVTwEHO8nL99 +FdLrAc8Z38wo8LGPL6SLf05gOT6VbGQGFi6Ic2f+P1d0Wb8rq1S0hjpmP3Z7i6YSVJgamyyk +YDsuHI9458/ablml4SQLr3bwg0dkIgfTi9l1yI+vUQ/+ANXVjyNrl3y184BtXbihJC5ezyil +LNbNVVH7I+b5+5SjPzq3JDBXDCdDoH4oKPyocrrz1Bhe9vxufnjRXnSkwx0Qiam9Nujk4pK/ +xBAgHBQSsvdz9wqGfmhLhltuTFGFbxfL5fmGif7/j7PS2Rm/HKC7D9lM90v6V4g+9W5njG19 +509sGH0ZT2i15CM01URbJUcz53+URgeU/l9k6Yt34PKOKBo/qa/BqfsWhOmr6l9UjeuwQ97E ++OpqibATipaql9eKackTOzMDAUzHPYZ2bgho++0ZFHcrn1pWZTcSn/TM+hcZsZae0O/CdYcN +3RuAH2ULfyKipqoQJPDqHHC7aufgr1dssimekU9+eAzhl0ppdQ1GfQQGi02NNDmma5amFrxr +MNQDXddkfdVxfuVHG1P4psM/nFMf0K53dHA8qlolRaHPt4LhTpo0ROwc/HDZnCxrqmOXyYsj +iAB4UtGeBgj+EjUFCh8/7vMs+qXFvY7lzEFG01i5gsBtRldnhW3KUyCKh5RyYEfDAjerIBaa +JscZX2YWhQkNM4veDs4h0nL0rqySae/MuWqcuiTdfuw2tKHCVGfpAt0Os9DVpy5uzgRdyttq +quzFUhNUkdxVzPjD5//uyNDvGRkbHI4Vo2JGGVlZAMS/zVVsb0NL7WzyTBzqYiK8d3+aAudc +jTW3ekKLt/pnXSkUdGUjQSPYKewlgFZQSgW4uhBP03CGiMK4e6g0E+UtDxTADGc+X1QjRU0A +CZ2P9HtdryUJWCyfTeiI44KXTYXCLaTgQYsExFpKO9hzrtlM2tFvvGxjHVUmhAUSUMcke5MB +I3AgMpORF7ksq0y2E6uxkGm88XxaiRGeXKa7sa7Ut+NGzj7z915x0ofJYi4utFZcwaZ33oWp +SAHsBShwzssIfRMPLo54it0jnu/ZBcjDst1v0yDY5NwHRc68v7z6vTKogA6WIVUCRe7VKtxT +jxfU+mvX6kJxu/4wx7OgwCb/pp3fvk/GTgo5JWCDuNlcpjspT5isuIFaQ9JZMmALcUbKw30Y ++QMyFL8CUHgCa4RztT4uyrfy0xxLQTAzPaaU/8Kcc4MrzRzFyWihK51Wlo/VaQwjkYSxh4aX +v/deHlI7DwbJbvsRBTgkyZ+dAkSy0CsXDCl8Cxp+I10b+WMUq4hS0LJjIzvV+LDBCk/6IfwF +07NLf4uiH/fulJ4TMtxY9e7N4wA4czjxgRgubKkkAwPMClz2S0zOBsRNIo5OovAAyC31sE5Q +WIshRbdzp5LdaY/Y6mwyqFzfnmNJmkeKslPRSkscNlDFtNcNbs1NVUyGTFEN778Rb1zk11Zb +w/kmSpTTfaH7LBBGE/grLJLepmhXRoEXKCszaLDiGwDmtvScMrVZI0EKIhZHljRaz/xurY25 +cy4BaCaB+kreFPk5MNZvxpDo2Srd/E6xetRkfBOu4JESM0TVuGMc2ERd8XUlfCEFhf8WVGBX +vEPRqB6dMFo6SqXBTskUaNRYOYJFvpJjcWWKlEz8O0awLrxKyaFPx8G1m/STSL0w8HxaS+oC +piZVgdpyFYK9NfZWmFxAiXLvEwFLZNJq+xqAfIhSczEPH5phKMTmfrtDSo0vdlYOyVm03IaZ +6BW2rRE6a0Q/7vU+6bhw95M5SFu62OGGhynjtdXjjJMw/CIIWYvS5wCmrACofWMf/BuuNYd4 +GN0U4g5ru0Z+kXHEe296yMlXKethTgLh1L4h6z3zvEc0V2SY6TgX7zsP1KyJUVaWfa5KMSRm +xwuoJJ9Op0KPCJQbxEO+JBQifwfLl5RDFJ4Z1R0qeko5dViLqGosXI8XahbmLwWXxwbEk9AY +46oqLvI2evey5oDmzghAcOgm/iBU3w2BF2o4KFzWYKOgqeOXRnvMJh8jjCl57XeZ2JGjAUdR +n9oFGbxNI5zBjWkTbH7OuA+WJZpmWOp7hXsbdwrp8i1ryEPBTt57mtJROk9j9wWyv59668mS +JzevzzatJzMiT8tuAiVrShlFXiFYWrZ+vjOh4vZAQhM7NhXyCF496XhluIjwsSxQ1F9sqrSU +LbZsQBttATdGBwwhaGKDSA0Y++2B9E5C7pUPSKCOreHaAt4ySHPMPuaqtWBGFyDbYKlNTZ2i +B0q4YXzbGO7MVsPYxopkv0ePBXRQzqPEaxuoIcHGiFiMGLH6K8Dz0+kx96Z6VoSWc5YfOGkZ +CX5P6G1mflJvNNcSoHkOLYVDXz4zuUfKKyJOkzIVDqfY4dJ+m6wIm4Wt5HOjavUbZYAzA+uZ +5b8pcdo9ZzGlCtVHi/Pa1X0Y518IJkj5KTelEe9i0lmvLWplzv8rv7fKw2k8P0Tkx8LVe0E4 +2DxZFoQy+XynThfQ+wIOSVn9KMTSdrFCPW/Ij2vfQo9R/iNKSFvpr2EFqM38dg4eMh2bQUmM +n8oT/B6wgRS1hrsk0TADUZQErN7gAwYs/z3tgJOzIDyiDa5j4/S576M5tHhc0tTFvcq2sNTT +PvbwFEFc2eBqclyZdayM7AjxIFGs8SR+9JSSIeSxkNqdCFFTns4c7+enAMeQzQILCsWPJdqC +MB5X+s/c7BtEflMAuLSN/BO9oW8ULqy4OxPbPCSqmfq/c+9UlA4kaXxlpK450ZIAytsGO3Lq +QwIVZy7SWpVzoSEC4gYGQN9K30afn4Nld2KRZeU4nEDPUzk0jDnlvZj9vq/o2viYTpwY+oyy +El+6yS1ftJE5gyBEt4tB2VfILSTZPxMx8y9xlyEb1pAirQbcOMI/oORAd3XhmgeKSK0roIwt +IRLXzLajQTA6hHEzjUbFyvFuzpP+IqMVoGPnMaUgkgqGxnpUJhWr4APFUV+W8BWiiL5szYYA +euEx8wDg6PM4rPRCi7KEC+7cGJfi4tulvlyUd06cp+5smATppTdJLGCPvLPHK17MVLVVcR/u +yteQe6KC6A31nxkZfdFJkezavQ6p1qx79Vz5X858TI1oRSrSTCtacY2RX3cBXY+0eXEkVjxK +RGfSmBLf1b/8YQZkLRn3C6WoO94CG+svbIXGklALQXLbmTZOzcfsl5k2vzIWddGBm/DRiqCI +bAEpd85fpXpKIT97Np9igpcNAzE6hDSuF1SIeISCqdXxZS+eNbH/HTl5JinR75FgWBn7zVYN +xDYUoXFpmp8MvvEjfXJ6gsHZJ2mkiEHay6Al54QcIsnmwXIYxmYRiIyILDG7sv2f8UdlZdOc +KHRdEoupsnjhPDSM7CJydC6U0U9gmNoAiA1RFGeeiI0yLU3/VaVhI296nf/wXG5hb9PFKmq4 +j/PT97EOBvMfpJ6N+05s7jjJulKuY5nipFiNy3AzVpipHfMhhwapkTgRENVM83SSgSHDWyKV +EsfQOCyxCNFbyxfWlC/v4LR68aKNxNtQJ34b7WPpAgg24bzQj53PuDH3ybEr9DUcxMoULjZi +ZUZ6S2vrNmTBHc7ivcABVo3xVPWaKVl4Ol9GixbmO7t6ioFkyQLjqZ7AdRKxQALzNKPxhRAr +Umn3cv4di14IQXj0qDPDfCNjcL8Wn3zV85jKT4miKN4M+pvLvD18U7HyPxE7L8c/43hGid2N +br6eTyK2cHEX7ZvkEd42+nm7q+cBUployzlOfDoQ0PJVXE08o+hHqFK4nht/iDr/CGlftila +5GZoM7HuqrLpZod/8iie2OoRN/OSF5ro/YDFFPqlYzQeZ2QimTmkgL5j8lZH0GZ3promhfy2 +MqE9Srt9tPdPAe023MicOiFo6+R2NIiIydrKUjOkuExR/GYIZt+ac3nJ/PXpLapPT330qmQQ +hTYv0ge2nrEI5rHdB4FjMadRlTWBez64B2pCgN0GmhOXq4fRp+GvCDzC+pbRsZ5rYK7Zv7YH +j3ZTQMPWO04Yytkco1COODDJHEYzfYOrj9HxUwoIFafd7Na3y3484ShqUSj7H4K6ZPVQyFh2 +bNVEm/LKc5NtRDXjEH8DPFhn0J2Psw7BKUvsyOAoVTvx1gdJMt0WgUNek/44pO6qrN2u+VmU +R+LTgDwb8gC5hvSVW7gxu7iJLTm+tf7NjhV46hlnu0liin5PPEVAHBDCSse/90YAieISe3SG +m6WK9TJZ2Wh1HMvfmXYUm81Q0BGrJb7EY+m9PNmLDlHdHQ== +--------------070402070209050003040009-- diff --git a/Test/Testcases/IE_NN_MT_NA_S.eml b/Test/Testcases/IE_NN_MT_NA_S.eml new file mode 100644 index 00000000..a1eda78e --- /dev/null +++ b/Test/Testcases/IE_NN_MT_NA_S.eml @@ -0,0 +1,27 @@ +Message-ID: <4E446349.9000705@gpgtools.org> +Date: Fri, 12 Aug 2011 01:18:33 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IE/NN/MT/NA/S +X-Enigmail-Version: 1.2 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit + +-----BEGIN PGP MESSAGE----- +Charset: ISO-8859-1 +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQf+LNQpS3sUhIc9wMWR2x06Nh2m5qiGXt/1bcbV3aXZ0TBW +3bM8uf9/jxvN8LqOcUNxQbw1BH7rxaJPsupe/bJojtdzTk4lsd7VmG4un5JDtbF0 +yYtUmxw4Q6rBAxIJ6A6IDC+99VqNqY8e318qGGQOIsgVK15KxZ38ozxH7n8+Dgyl +uWzB8m2WDWHizF0VFyiydwjAX8u0UVB20yTKIx7ZbXO+A92sctLRURhOmFaZIgk4 +38sNNKDoA5RzGhDwjydzk69SuRqbNhOUixYORO/bw1K3tOidLsBaTdhVOSMD820c +LL+npYATjRpkN98xk2fuvt1XxK4/vz/PMCthSbFmG9JKARsyHpmJwnl3VTaUx8Y0 +bOQdireGm3uY6al850/lecZz141vrWgGkpR3cH9PV0PcBPTxGPIg2dII9h/NN6ub +ycC3XpeedrPmDq0= +=OEjD +-----END PGP MESSAGE----- diff --git a/Test/Testcases/IE_NN_VT_MA_S.eml b/Test/Testcases/IE_NN_VT_MA_S.eml new file mode 100644 index 00000000..f009758d --- /dev/null +++ b/Test/Testcases/IE_NN_VT_MA_S.eml @@ -0,0 +1,105 @@ +Message-ID: <4E4466CC.5040103@gpgtools.org> +Date: Fri, 12 Aug 2011 01:33:32 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IE/NN/VT/MA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/mixed; + boundary="------------070402070209050003040009" + +This is a multi-part message in MIME format. +--------------070402070209050003040009 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit + +-----BEGIN PGP MESSAGE----- +Charset: ISO-8859-1 +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQf/cnHtMyzK/ZuXZu9SlP6gPQL86W557pzRLXVoUVwq2WGr ++94m0m/itruJdbpn61kB3g99YY70geHsrfGPoYPik1366HTtv8DvKRcr/CypBuJy +xGa8KI8qaV0dknSgh6DfQwlwBJOaP2bWUK5pfSPE8hH+G4qn+XlmG0Y9ZEvV7teg +UJm5DcycSF69syXc1nwVVfZlmyaxcQb8vClaZDAanqP5eUK2Y17OLeaZXQG7Eduq +9f1xAc91/Zr0vLWVvq0gmzM9+Z3DsfVEtMRLj/qTq3sqdj16KDwnpmQUtBsGZnmg +jGaohThQc8sbE1g/ydUj7WwtdwjH4zwXFNpmkyZmH9JKAUiZ8s1HHY41h4QkicOl +DFpSw3FggjgcgD8yx8rKmOAaY4EqvGwDzE4KvRPj5q1yCVvKNJj4xc4Lbr+pnLV0 +o++Wdzuq/p3OEJs= +=h6iw +-----END PGP MESSAGE----- + +--------------070402070209050003040009 +Content-Type: application/octet-stream; + name="gpgmail.png.pgp" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png.pgp" + +hQEMA1JrCfEKo9qCAQf9HbTw2rdxY/AqGPHvpwmFSkYzz7rkUFH90xj1zqaLiNKATtKNCIIW ++1VbBMo5BELlWTVJAHmWxtFN5kjMYY5jwH3DH57dUy0uT0DjJMwIpui1SFYe3HO8wSHSOw40 +e+Xv3Ng8fM6rVUkIz7bPS4EF2glTmWlieC/cGh5x9EgAPUtDRx8xJWrgX3Utji4iKaGddcsY +bXbQY+hKyne6Bp5dwOpKv0CrvDc+klgg7i1xx86+GmMKzwW3yw+eiCL2gPeXIQbNeddhFpJF +X4/1yZFv6rFdQblye1OvHUgQYK4RvXO59CcSsgLwxTM/O6BP7Bbn76svSbxBFVTwEHO8nL99 +FdLrAc8Z38wo8LGPL6SLf05gOT6VbGQGFi6Ic2f+P1d0Wb8rq1S0hjpmP3Z7i6YSVJgamyyk +YDsuHI9458/ablml4SQLr3bwg0dkIgfTi9l1yI+vUQ/+ANXVjyNrl3y184BtXbihJC5ezyil +LNbNVVH7I+b5+5SjPzq3JDBXDCdDoH4oKPyocrrz1Bhe9vxufnjRXnSkwx0Qiam9Nujk4pK/ +xBAgHBQSsvdz9wqGfmhLhltuTFGFbxfL5fmGif7/j7PS2Rm/HKC7D9lM90v6V4g+9W5njG19 +509sGH0ZT2i15CM01URbJUcz53+URgeU/l9k6Yt34PKOKBo/qa/BqfsWhOmr6l9UjeuwQ97E ++OpqibATipaql9eKackTOzMDAUzHPYZ2bgho++0ZFHcrn1pWZTcSn/TM+hcZsZae0O/CdYcN +3RuAH2ULfyKipqoQJPDqHHC7aufgr1dssimekU9+eAzhl0ppdQ1GfQQGi02NNDmma5amFrxr +MNQDXddkfdVxfuVHG1P4psM/nFMf0K53dHA8qlolRaHPt4LhTpo0ROwc/HDZnCxrqmOXyYsj +iAB4UtGeBgj+EjUFCh8/7vMs+qXFvY7lzEFG01i5gsBtRldnhW3KUyCKh5RyYEfDAjerIBaa +JscZX2YWhQkNM4veDs4h0nL0rqySae/MuWqcuiTdfuw2tKHCVGfpAt0Os9DVpy5uzgRdyttq +quzFUhNUkdxVzPjD5//uyNDvGRkbHI4Vo2JGGVlZAMS/zVVsb0NL7WzyTBzqYiK8d3+aAudc +jTW3ekKLt/pnXSkUdGUjQSPYKewlgFZQSgW4uhBP03CGiMK4e6g0E+UtDxTADGc+X1QjRU0A +CZ2P9HtdryUJWCyfTeiI44KXTYXCLaTgQYsExFpKO9hzrtlM2tFvvGxjHVUmhAUSUMcke5MB +I3AgMpORF7ksq0y2E6uxkGm88XxaiRGeXKa7sa7Ut+NGzj7z915x0ofJYi4utFZcwaZ33oWp +SAHsBShwzssIfRMPLo54it0jnu/ZBcjDst1v0yDY5NwHRc68v7z6vTKogA6WIVUCRe7VKtxT +jxfU+mvX6kJxu/4wx7OgwCb/pp3fvk/GTgo5JWCDuNlcpjspT5isuIFaQ9JZMmALcUbKw30Y ++QMyFL8CUHgCa4RztT4uyrfy0xxLQTAzPaaU/8Kcc4MrzRzFyWihK51Wlo/VaQwjkYSxh4aX +v/deHlI7DwbJbvsRBTgkyZ+dAkSy0CsXDCl8Cxp+I10b+WMUq4hS0LJjIzvV+LDBCk/6IfwF +07NLf4uiH/fulJ4TMtxY9e7N4wA4czjxgRgubKkkAwPMClz2S0zOBsRNIo5OovAAyC31sE5Q +WIshRbdzp5LdaY/Y6mwyqFzfnmNJmkeKslPRSkscNlDFtNcNbs1NVUyGTFEN778Rb1zk11Zb +w/kmSpTTfaH7LBBGE/grLJLepmhXRoEXKCszaLDiGwDmtvScMrVZI0EKIhZHljRaz/xurY25 +cy4BaCaB+kreFPk5MNZvxpDo2Srd/E6xetRkfBOu4JESM0TVuGMc2ERd8XUlfCEFhf8WVGBX +vEPRqB6dMFo6SqXBTskUaNRYOYJFvpJjcWWKlEz8O0awLrxKyaFPx8G1m/STSL0w8HxaS+oC +piZVgdpyFYK9NfZWmFxAiXLvEwFLZNJq+xqAfIhSczEPH5phKMTmfrtDSo0vdlYOyVm03IaZ +6BW2rRE6a0Q/7vU+6bhw95M5SFu62OGGhynjtdXjjJMw/CIIWYvS5wCmrACofWMf/BuuNYd4 +GN0U4g5ru0Z+kXHEe296yMlXKethTgLh1L4h6z3zvEc0V2SY6TgX7zsP1KyJUVaWfa5KMSRm +xwuoJJ9Op0KPCJQbxEO+JBQifwfLl5RDFJ4Z1R0qeko5dViLqGosXI8XahbmLwWXxwbEk9AY +46oqLvI2evey5oDmzghAcOgm/iBU3w2BF2o4KFzWYKOgqeOXRnvMJh8jjCl57XeZ2JGjAUdR +n9oFGbxNI5zBjWkTbH7OuA+WJZpmWOp7hXsbdwrp8i1ryEPBTt57mtJROk9j9wWyv59668mS +JzevzzatJzMiT8tuAiVrShlFXiFYWrZ+vjOh4vZAQhM7NhXyCF496XhluIjwsSxQ1F9sqrSU +LbZsQBttATdGBwwhaGKDSA0Y++2B9E5C7pUPSKCOreHaAt4ySHPMPuaqtWBGFyDbYKlNTZ2i +B0q4YXzbGO7MVsPYxopkv0ePBXRQzqPEaxuoIcHGiFiMGLH6K8Dz0+kx96Z6VoSWc5YfOGkZ +CX5P6G1mflJvNNcSoHkOLYVDXz4zuUfKKyJOkzIVDqfY4dJ+m6wIm4Wt5HOjavUbZYAzA+uZ +5b8pcdo9ZzGlCtVHi/Pa1X0Y518IJkj5KTelEe9i0lmvLWplzv8rv7fKw2k8P0Tkx8LVe0E4 +2DxZFoQy+XynThfQ+wIOSVn9KMTSdrFCPW/Ij2vfQo9R/iNKSFvpr2EFqM38dg4eMh2bQUmM +n8oT/B6wgRS1hrsk0TADUZQErN7gAwYs/z3tgJOzIDyiDa5j4/S576M5tHhc0tTFvcq2sNTT +PvbwFEFc2eBqclyZdayM7AjxIFGs8SR+9JSSIeSxkNqdCFFTns4c7+enAMeQzQILCsWPJdqC +MB5X+s/c7BtEflMAuLSN/BO9oW8ULqy4OxPbPCSqmfq/c+9UlA4kaXxlpK450ZIAytsGO3Lq +QwIVZy7SWpVzoSEC4gYGQN9K30afn4Nld2KRZeU4nEDPUzk0jDnlvZj9vq/o2viYTpwY+oyy +El+6yS1ftJE5gyBEt4tB2VfILSTZPxMx8y9xlyEb1pAirQbcOMI/oORAd3XhmgeKSK0roIwt +IRLXzLajQTA6hHEzjUbFyvFuzpP+IqMVoGPnMaUgkgqGxnpUJhWr4APFUV+W8BWiiL5szYYA +euEx8wDg6PM4rPRCi7KEC+7cGJfi4tulvlyUd06cp+5smATppTdJLGCPvLPHK17MVLVVcR/u +yteQe6KC6A31nxkZfdFJkezavQ6p1qx79Vz5X858TI1oRSrSTCtacY2RX3cBXY+0eXEkVjxK +RGfSmBLf1b/8YQZkLRn3C6WoO94CG+svbIXGklALQXLbmTZOzcfsl5k2vzIWddGBm/DRiqCI +bAEpd85fpXpKIT97Np9igpcNAzE6hDSuF1SIeISCqdXxZS+eNbH/HTl5JinR75FgWBn7zVYN +xDYUoXFpmp8MvvEjfXJ6gsHZJ2mkiEHay6Al54QcIsnmwXIYxmYRiIyILDG7sv2f8UdlZdOc +KHRdEoupsnjhPDSM7CJydC6U0U9gmNoAiA1RFGeeiI0yLU3/VaVhI296nf/wXG5hb9PFKmq4 +j/PT97EOBvMfpJ6N+05s7jjJulKuY5nipFiNy3AzVpipHfMhhwapkTgRENVM83SSgSHDWyKV +EsfQOCyxCNFbyxfWlC/v4LR68aKNxNtQJ34b7WPpAgg24bzQj53PuDH3ybEr9DUcxMoULjZi +ZUZ6S2vrNmTBHc7ivcABVo3xVPWaKVl4Ol9GixbmO7t6ioFkyQLjqZ7AdRKxQALzNKPxhRAr +Umn3cv4di14IQXj0qDPDfCNjcL8Wn3zV85jKT4miKN4M+pvLvD18U7HyPxE7L8c/43hGid2N +br6eTyK2cHEX7ZvkEd42+nm7q+cBUployzlOfDoQ0PJVXE08o+hHqFK4nht/iDr/CGlftila +5GZoM7HuqrLpZod/8iie2OoRN/OSF5ro/YDFFPqlYzQeZ2QimTmkgL5j8lZH0GZ3promhfy2 +MqE9Srt9tPdPAe023MicOiFo6+R2NIiIydrKUjOkuExR/GYIZt+ac3nJ/PXpLapPT330qmQQ +hTYv0ge2nrEI5rHdB4FjMadRlTWBez64B2pCgN0GmhOXq4fRp+GvCDzC+pbRsZ5rYK7Zv7YH +j3ZTQMPWO04Yytkco1COODDJHEYzfYOrj9HxUwoIFafd7Na3y3484ShqUSj7H4K6ZPVQyFh2 +bNVEm/LKc5NtRDXjEH8DPFhn0J2Psw7BKUvsyOAoVTvx1gdJMt0WgUNek/44pO6qrN2u+VmU +R+LTgDwb8gC5hvSVW7gxu7iJLTm+tf7NjhV46hlnu0liin5PPEVAHBDCSse/90YAieISe3SG +m6WK9TJZ2Wh1HMvfmXYUm81Q0BGrJb7EY+m9PNmLDlHdHQ== +--------------070402070209050003040009-- diff --git a/Test/Testcases/IE_NN_VT_NA_S.eml b/Test/Testcases/IE_NN_VT_NA_S.eml new file mode 100644 index 00000000..a4de0555 --- /dev/null +++ b/Test/Testcases/IE_NN_VT_NA_S.eml @@ -0,0 +1,27 @@ +Message-ID: <4E446349.9000705@gpgtools.org> +Date: Fri, 12 Aug 2011 01:18:33 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IE/NN/VT/NA/S +X-Enigmail-Version: 1.2 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit + +-----BEGIN PGP MESSAGE----- +Charset: ISO-8859-1 +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQf+LNQpS3sUhIc9wMWR2x06Nh2m5qiGXt/1bcbV3aXZ0TBW +3bM8uf9/jxvN8LqOcUNxQbw1BH7rxaJPsupe/bJojtdzTk4lsd7VmG4un5JDtbF0 +xYtUmxw4Q6rBAxIJ6A6IDC+99VqNqY8e318qGGQOIsgVK15KxZ38ozxH7n8+Dgyl +uWzB8m2WDWHizF0VFyiydwjAX8u0UVB20yTKIx7ZbXO+A92sctLRURhOmFaZIgk4 +38sNNKDoA5RzGhDwjydzk69SuRqbNhOUixYORO/bw1K3tOidLsBaTdhVOSMD820c +LL+npYATjRpkN98xk2fuvt1XxK4/vz/PMCthSbFmG9JKARsyHpmJwnl3VTaUx8Y0 +bOQdireGm3uY6al850/lecZz141vrWgGkpR3cH9PV0PcBPTxGPIg2dII9h/NN6ub +ycC3XpeedrPmDq0= +=OEjD +-----END PGP MESSAGE----- diff --git a/Test/Testcases/IE_NN_VT_VA_S.eml b/Test/Testcases/IE_NN_VT_VA_S.eml new file mode 100644 index 00000000..972942c8 --- /dev/null +++ b/Test/Testcases/IE_NN_VT_VA_S.eml @@ -0,0 +1,105 @@ +Message-ID: <4E4466CC.5040103@gpgtools.org> +Date: Fri, 12 Aug 2011 01:33:32 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IE/NN/VT/VA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/mixed; + boundary="------------070402070209050003040009" + +This is a multi-part message in MIME format. +--------------070402070209050003040009 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit + +-----BEGIN PGP MESSAGE----- +Charset: ISO-8859-1 +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQf/cnHtMyzK/ZuXZu9SlP6gPQL86W557pzRLXVoUVwq2WGr ++94m0m/itruJdbpn61kB3g99YY70geHsrfGPoYPik1366HTtv8DvKRcr/CypBuJy +xGa8KI8qaV0dknSgh6DfQwlwBJOaP2bWUK5pfSPE8hH+G4qn+XlmG0Y9ZEvV7teg +UJm5DcycSF69syXc1nwVVfZlmyaxcQb8vClaZDAanqP5eUK2Y17OLeaZXQG7Eduq +9f1xAc91/Zr0vLWVvq0gmzM9+Z3DsfVEtMRLj/qTq3sqdj16KDwnpmQUtBsGZnmg +jGaohThQc8sbE1g/ydUj7WwtdwjH4zwXFNpmkyZmH9JKAUiZ8s1HHY41h4QkicOl +DFpSw3FggjgcgD8yx8rKmOAaY4EqvGwDzE4KvRPj5q1yCVvKNJj4xc4Lbr+pnLV0 +o++Wdzuq/p3OEJs= +=h6iw +-----END PGP MESSAGE----- + +--------------070402070209050003040009 +Content-Type: application/octet-stream; + name="gpgmail.png.pgp" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png.pgp" + +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 +--------------070402070209050003040009-- diff --git a/Test/Testcases/IS_NN_MT_MA_S.eml b/Test/Testcases/IS_NN_MT_MA_S.eml new file mode 100644 index 00000000..e287437d --- /dev/null +++ b/Test/Testcases/IS_NN_MT_MA_S.eml @@ -0,0 +1,113 @@ +Message-ID: <4E4466B1.2070003@gpgtools.org> +Date: Fri, 12 Aug 2011 01:33:05 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IS/NN/MT/MA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/mixed; + boundary="------------010302050603000003030602" + +This is a multi-part message in MIME format. +--------------010302050603000003030602 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 7bit + +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +IS/NN/MT/MA/S +-----BEGIN PGP SIGNATURE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +iQEcBAEBAgAGBQJORGawAAoJEFJrCfEKo9qC3t4H/0EkRqCDLSD7svxSFvBJZf5Y +m693vIyftLtfo/M0TXXCsh92gm/SXbI6+sQkoFuQnmQ5Z547fOvykk244fIzF+js +VMTxZmitMTCN1zoUlPQIY2IvpkOoVP5moVA1P63j1kpEyQsEQdA2RgKL6eo9FpoJ +K6mC+Rlp1rfBb5+3nPApVgQE0Ks5yhAaEjnRlUqox9KdKRgaZjWgg7D61D2XJvYF +4bPbsxNtzRTT3uySurA0S9uRYrUnsLSDmVoNj5BtLzwAMwaxCzgw9F64AFEx51T1 +UuFDm98vqYdu2ADIi1D5DZYtF99drthunPJxRUD1nOsoDV+JZef0bET0V4KPTbU= +=NBgL +-----END PGP SIGNATURE----- + +--------------010302050603000003030602 +Content-Type: image/png; + name="gpgmail.png" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png" + +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 +aElFTkSuQmCC +--------------010302050603000003030602 +Content-Type: application/octet-stream; x-mac-type="0"; x-mac-creator="0"; + name="gpgmail.png.sig" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png.sig" + +iQEcBAABAgAGBQJORGawAAoJEFJrCfEKo9qCxzYIAJkxKyl0HN1B6pqFK9JarXmWRiwhCCvY +k3UmADJXMbz3dn5cPjUEUKtCKChbAoynqWtVV+wgMU+yrahgpGbdlFnK6bg2DJwUfjAOww24 +iiFz7utAdaQQVEcH8bcTpExMIaRPpCo5m76ieRvpR329VZzD8eX6AJtUSt/o9fD5MrYddBZf +pfVYRtJ18f+c1uCxyI2umgOYN1n3XOiNMvS8oJ8XL+6XWen7xSjbgh1F/g2DkTEb/8wnLlb5 +JPae8ZJMMl3gihFyHm9Oh5m58ul5Cw+O/u+88srFxrWs/hQE+m8aM/7XomywG+W1zWx5f/Bb +tExEniZuVhZ/w1tJnM8tAJM= +--------------010302050603000003030602-- diff --git a/Test/Testcases/IS_NN_MT_NA_S.eml b/Test/Testcases/IS_NN_MT_NA_S.eml new file mode 100644 index 00000000..2dd767ff --- /dev/null +++ b/Test/Testcases/IS_NN_MT_NA_S.eml @@ -0,0 +1,28 @@ +Message-ID: <4E446367.9000202@gpgtools.org> +Date: Fri, 12 Aug 2011 01:19:03 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IS/NN/MT/NA/S +X-Enigmail-Version: 1.2 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 7bit + +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +IS/NN/MT/NA/S +-----BEGIN PGP SIGNATURE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +iQEcBAEBAgAGBQJORGNmAAoJEFJrCfEKo9qCWzQIAL3BN/CctmxXsFMK6PnaSdNZ +O5UFfdaCCGQg33LxkihsiiMdwfDKUs4AAtdZqPD84M1t2nVXGYxbaEBhAl9TscS7 +Y72HhwcS0xGBMikkM8ODfZYR+B1p5lmmMtq6tscaQOc3LDPljF0ObQgTQizorNjG +zZ+qOQiN9oTVZ/qPuGYzt3Iizucr5tyyTP2YR9H0lBRV71hPTrw68qiRXdm9SLyU +N3wJ5W2GYNYbUAirDsUN56knW5lkLZ9OUtS9n0W43ZDzCcr+WTarxRLpjPLeT4q1 +rI+8tL9/5iwlo1KY1AKETO5Pnf9Q0NDnK3Izub/CoKcMFoIGPPJ60qF2uuDIG4g= +=1MNH +-----END PGP SIGNATURE----- diff --git a/Test/Testcases/IS_NN_VT_MA_S.eml b/Test/Testcases/IS_NN_VT_MA_S.eml new file mode 100644 index 00000000..1259b6fe --- /dev/null +++ b/Test/Testcases/IS_NN_VT_MA_S.eml @@ -0,0 +1,113 @@ +Message-ID: <4E4466B1.2070003@gpgtools.org> +Date: Fri, 12 Aug 2011 01:33:05 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IS/NN/VT/MA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/mixed; + boundary="------------010302050603000003030602" + +This is a multi-part message in MIME format. +--------------010302050603000003030602 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 7bit + +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +IS/NN/VT/VA/S +-----BEGIN PGP SIGNATURE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +iQEcBAEBAgAGBQJORGawAAoJEFJrCfEKo9qC3t4H/0EkRqCDLSD7svxSFvBJZf5Y +m693vIyftLtfo/M0TXXCsh92gm/SXbI6+sQkoFuQnmQ5Z547fOvykk244fIzF+js +VMTxZmitMTCN1zoUlPQIY2IvpkOoVP5moVA1P63j1kpEyQsEQdA2RgKL6eo9FpoJ +K6mC+Rlp1rfBb5+3nPApVgQE0Ks5yhAaEjnRlUqox9KdKRgaZjWgg7D61D2XJvYF +4bPbsxNtzRTT3uySurA0S9uRYrUnsLSDmVoNj5BtLzwAMwaxCzgw9F64AFEx51T1 +UuFDm98vqYdu2ADIi1D5DZYtF99drthunPJxRUD1nOsoDV+JZef0bET0V4KPTbU= +=NBgL +-----END PGP SIGNATURE----- + +--------------010302050603000003030602 +Content-Type: image/png; + name="gpgmail.png" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png" + +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 +aElFTkSuQmCC +--------------010302050603000003030602 +Content-Type: application/octet-stream; x-mac-type="0"; x-mac-creator="0"; + name="gpgmail.png.sig" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png.sig" + +iQEcBAABAgAGBQJORGawAAoJEFJrCfEKo9qCxzYIAJkxKyl0HN1B6pqFK9JarXmWRiwhCCvY +k3UmADJXMbz3dn5cPjUEUKtCKChbAoynqWtVV+wgMU+yrahgpGbdlFnK6bg2DJwUfjAOww24 +iiFz7utAdaQQVEcH8bcTpExMIaRPpCo5m76ieRvpR329VZzD8eX6AJtUSt/o9fD5MrYddBZf +pfVYRtJ18f+c1uCxyI2umgOYN1n3XOiNMvS8oJ8XL+6XWen7xSjbgh1F/g2DkTEb/8wnLlb5 +JPae8ZJMMl3gihFyHm9Oh5m58ul5Cw+O/u+88srFxrWs/hQE+m8aM/7XomywG+W1zWx5f/Bb +tExEniZuVhZ/w1tJnM8tAJM= +--------------010302050603000003030602-- diff --git a/Test/Testcases/IS_NN_VT_NA_S.eml b/Test/Testcases/IS_NN_VT_NA_S.eml new file mode 100644 index 00000000..d53d3e66 --- /dev/null +++ b/Test/Testcases/IS_NN_VT_NA_S.eml @@ -0,0 +1,28 @@ +Message-ID: <4E446367.9000202@gpgtools.org> +Date: Fri, 12 Aug 2011 01:19:03 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IS/NN/VT/NA/S +X-Enigmail-Version: 1.2 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 7bit + +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +IS/NN/VT/NA/S +-----BEGIN PGP SIGNATURE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +iQEcBAEBAgAGBQJORGNmAAoJEFJrCfEKo9qCWzQIAL3BN/CctmxXsFMK6PnaSdNZ +O5UFfdaCCGQg33LxkihsiiMdwfDKUs4AAtdZqPD84M1t2nVXGYxbaEBhAl9TscS7 +Y72HhwcS0xGBMikkM8ODfZYR+B1p5lmmMtq6tscaQOc3LDPljF0ObQgTQizorNjG +zZ+qOQiN9oTVZ/qPuGYzt3Iizucr5tyyTP2YR9H0lBRV71hPTrw68qiRXdm9SLyU +N3wJ5W2GYNYbUAirDsUN56knW5lkLZ9OUtS9n0W43ZDzCcr+WTarxRLpjPLeT4q1 +rI+8tL9/5iwlo1KY1AKETO5Pnf9Q0NDnK3Izub/CoKcMFoIGPPJ60qF2uuDIG4g= +=1MNH +-----END PGP SIGNATURE----- diff --git a/Test/Testcases/IS_NN_VT_VA_S.eml b/Test/Testcases/IS_NN_VT_VA_S.eml new file mode 100644 index 00000000..fc2c93e0 --- /dev/null +++ b/Test/Testcases/IS_NN_VT_VA_S.eml @@ -0,0 +1,113 @@ +Message-ID: <4E4466B1.2070003@gpgtools.org> +Date: Fri, 12 Aug 2011 01:33:05 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: IS/NN/VT/VA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/mixed; + boundary="------------010302050603000003030602" + +This is a multi-part message in MIME format. +--------------010302050603000003030602 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 7bit + +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +IS/NN/VT/VA/S +-----BEGIN PGP SIGNATURE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +iQEcBAEBAgAGBQJORGawAAoJEFJrCfEKo9qC3t4H/0EkRqCDLSD7svxSFvBJZf5Y +m693vIyftLtfo/M0TXXCsh92gm/SXbI6+sQkoFuQnmQ5Z547fOvykk244fIzF+js +VMTxZmitMTCN1zoUlPQIY2IvpkOoVP5moVA1P63j1kpEyQsEQdA2RgKL6eo9FpoJ +K6mC+Rlp1rfBb5+3nPApVgQE0Ks5yhAaEjnRlUqox9KdKRgaZjWgg7D61D2XJvYF +4bPbsxNtzRTT3uySurA0S9uRYrUnsLSDmVoNj5BtLzwAMwaxCzgw9F64AFEx51T1 +UuFDm98vqYdu2ADIi1D5DZYtF99drthunPJxRUD1nOsoDV+JZef0bET0V4KPTbU= +=NBgL +-----END PGP SIGNATURE----- + +--------------010302050603000003030602 +Content-Type: image/png; + name="gpgmail.png" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png" + +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 +AElFTkSuQmCC +--------------010302050603000003030602 +Content-Type: application/octet-stream; x-mac-type="0"; x-mac-creator="0"; + name="gpgmail.png.sig" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png.sig" + +iQEcBAABAgAGBQJORGawAAoJEFJrCfEKo9qCxzYIAJkxKyl0HN1B6pqFK9JarXmWRiwhCCvY +k3UmADJXMbz3dn5cPjUEUKtCKChbAoynqWtVV+wgMU+yrahgpGbdlFnK6bg2DJwUfjAOww24 +iiFz7utAdaQQVEcH8bcTpExMIaRPpCo5m76ieRvpR329VZzD8eX6AJtUSt/o9fD5MrYddBZf +pfVYRtJ18f+c1uCxyI2umgOYN1n3XOiNMvS8oJ8XL+6XWen7xSjbgh1F/g2DkTEb/8wnLlb5 +JPae8ZJMMl3gihFyHm9Oh5m58ul5Cw+O/u+88srFxrWs/hQE+m8aM/7XomywG+W1zWx5f/Bb +tExEniZuVhZ/w1tJnM8tAJM= +--------------010302050603000003030602-- diff --git a/Test/Testcases/MB_NN_MT_MA_S.eml b/Test/Testcases/MB_NN_MT_MA_S.eml new file mode 100644 index 00000000..17287f23 --- /dev/null +++ b/Test/Testcases/MB_NN_MT_MA_S.eml @@ -0,0 +1,123 @@ +Message-ID: <4E44672F.2060706@gpgtools.org> +Date: Fri, 12 Aug 2011 01:35:11 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: MB/NN/MT/MA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/encrypted; + protocol="application/pgp-encrypted"; + boundary="------------enigBCFB27AA45E66B616D552BFD" + +This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156) +--------------enigBCFB27AA45E66B616D552BFD +Content-Type: application/pgp-encrypted +Content-Description: PGP/MIME version identification + +Version: 1 + +--------------enigBCFB27AA45E66B616D552BFD +Content-Type: application/octet-stream; name="encrypted.asc" +Content-Description: OpenPGP encrypted message +Content-Disposition: inline; filename="encrypted.asc" + +-----BEGIN PGP MESSAGE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +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 +=yQaQ +-----END PGP MESSAGE----- + +--------------enigBCFB27AA45E66B616D552BFD-- diff --git a/Test/Testcases/MB_NN_MT_NA_S.eml b/Test/Testcases/MB_NN_MT_NA_S.eml new file mode 100644 index 00000000..50d1c994 --- /dev/null +++ b/Test/Testcases/MB_NN_MT_NA_S.eml @@ -0,0 +1,49 @@ +Message-ID: <4E44630C.10003@gpgtools.org> +Date: Fri, 12 Aug 2011 01:17:32 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: MB/NN/MT/NA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/encrypted; + protocol="application/pgp-encrypted"; + boundary="------------enig7618AB5A6CE45664FC5C450B" + +This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156) +--------------enig7618AB5A6CE45664FC5C450B +Content-Type: application/pgp-encrypted +Content-Description: PGP/MIME version identification + +Version: 1 + +--------------enig7618AB5A6CE45664FC5C450B +Content-Type: application/octet-stream; name="encrypted.asc" +Content-Description: OpenPGP encrypted message +Content-Disposition: inline; filename="encrypted.asc" + +-----BEGIN PGP MESSAGE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQgAmVhoy+emXhWzNGCes1zdpvshyUdsgTafLoeTc5iZthos +GtlUll8wiw8oa9CIINeRMfO04y3oBnFll+yMjeAsb1DlvMFgrg58VFQicDRD/icN +19bYf3m49ivljapnmmojlWiVMHf5zy2bLqqI7/0dbc8xjDjPG4MzSN69gT8eIHAp +xQJwm4rtpMXEX6QODcHBH3aP3efxsk0r3YHAYCEVBj2kr/W2iCBtq1IwRD6le405 +bnvdOnBlQngLNe+d8l/h7RCHEDPknBndddaVXpNy5e3lw22qAzwIPp8gBSg9R8Fa +UMtG2hXYGLGBqz2AMskzVX5HWLiXcLQl7n7FHq9eYNLBGAHNudjlExaRytDy3zRZ +2bU3FctW1kgZFBcSYDGvuQvAqdN1vLVbIpTo6//l4eXHg/aAtjCIMjFkaptoJfOu +03CHV3Q/gtZycitc4YZzDnrwq9UaoMHz4LhRlLMKRd4GFKJcu/smMJ6Fsn3hv8z9 +y4tNMDtYj3gKGwkvLZtRp1+87J+2zpYeI5sCKvMw5XxJqWjrbWXH3Dej2Rc9ywWY +3flJW/zZBAV14dAUMS05EJeL6OXLG0M6HDB2Ov8PWGIL8Rpjx5gqG8fElfO8BHi0 +G9Qt8mBuC7Wr/6cxS+8pMogHzftpcGNqb1xNdLm0lf9QM5W0v5R/VnS0a5iLV/oo +uPDaYG1O7trG3enf4J1IjlfzyBp+/xCkyfB2z7N2k8+5TsGimRsL9JgscrA6FepX +QKF+Qin2UyVOYqAGwlkloyfWEzyGy7oraDDzUu18p2U17elagqLUqWJ8zhJA9yqz +N2834TQzkk9GI3sywCcZtkA0X44UbGinYhmeCsVU5ItjdR90PuCD1PrYw0PsVXXw +JmlsCjXO+Fm6LxrlMP5n3/POh2kOuGbKjaXY57jsCpehPv7r/AqOz9TBStZUBr6u +Zd7g/Vkl2zZ+P3Rag7CA6l65T0A8Ia/EbJo= +=6ls1 +-----END PGP MESSAGE----- + +--------------enig7618AB5A6CE45664FC5C450B-- diff --git a/Test/Testcases/MB_NN_VT_MA_S.eml b/Test/Testcases/MB_NN_VT_MA_S.eml new file mode 100644 index 00000000..d40ab5b6 --- /dev/null +++ b/Test/Testcases/MB_NN_VT_MA_S.eml @@ -0,0 +1,123 @@ +Message-ID: <4E44672F.2060706@gpgtools.org> +Date: Fri, 12 Aug 2011 01:35:11 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: MB/NN/VT/MA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/encrypted; + protocol="application/pgp-encrypted"; + boundary="------------enigBCFB27AA45E66B616D552BFD" + +This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156) +--------------enigBCFB27AA45E66B616D552BFD +Content-Type: application/pgp-encrypted +Content-Description: PGP/MIME version identification + +Version: 1 + +--------------enigBCFB27AA45E66B616D552BFD +Content-Type: application/octet-stream; name="encrypted.asc" +Content-Description: OpenPGP encrypted message +Content-Disposition: inline; filename="encrypted.asc" + +-----BEGIN PGP MESSAGE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +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 +=yQaQ +-----END PGP MESSAGE----- + +--------------enigBCFB27AA45E66B616D552BFD-- diff --git a/Test/Testcases/MB_NN_VT_NA_S.eml b/Test/Testcases/MB_NN_VT_NA_S.eml new file mode 100644 index 00000000..2b30c402 --- /dev/null +++ b/Test/Testcases/MB_NN_VT_NA_S.eml @@ -0,0 +1,49 @@ +Message-ID: <4E44630C.10003@gpgtools.org> +Date: Fri, 12 Aug 2011 01:17:32 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: MB/NN/VT/NA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/encrypted; + protocol="application/pgp-encrypted"; + boundary="------------enig7618AB5A6CE45664FC5C450B" + +This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156) +--------------enig7618AB5A6CE45664FC5C450B +Content-Type: application/pgp-encrypted +Content-Description: PGP/MIME version identification + +Version: 1 + +--------------enig7618AB5A6CE45664FC5C450B +Content-Type: application/octet-stream; name="encrypted.asc" +Content-Description: OpenPGP encrypted message +Content-Disposition: inline; filename="encrypted.asc" + +-----BEGIN PGP MESSAGE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQgAmVhoy+emXhWzNGCes1zdpvshyUdsgTafLoeTc5iZthos +GtlUll8wiw8oa9CIINeRMfO04y3oBnFll+yMjeAsb1DlvMFgrg58VFQicDRD/icN +19bYf3m49ivljapnmmojlWiVMHf5zy2bLqqI7/0dbc8xjDjPG4MzSN69gT8eIHAp +yQJwm4rtpMXEX6QODcHBH3aP3efxsk0r3YHAYCEVBj2kr/W2iCBtq1IwRD6le405 +bnvdOnBlQngLNe+d8l/h7RCHEDPknBndddaVXpNy5e3lw22qAzwIPp8gBSg9R8Fa +UMtG2hXYGLGBqz2AMskzVX5HWLiXcLQl7n7FHq9eYNLBGAHNudjlExaRytDy3zRZ +2bU3FctW1kgZFBcSYDGvuQvAqdN1vLVbIpTo6//l4eXHg/aAtjCIMjFkaptoJfOu +03CHV3Q/gtZycitc4YZzDnrwq9UaoMHz4LhRlLMKRd4GFKJcu/smMJ6Fsn3hv8z9 +y4tNMDtYj3gKGwkvLZtRp1+87J+2zpYeI5sCKvMw5XxJqWjrbWXH3Dej2Rc9ywWY +3flJW/zZBAV14dAUMS05EJeL6OXLG0M6HDB2Ov8PWGIL8Rpjx5gqG8fElfO8BHi0 +G9Qt8mBuC7Wr/6cxS+8pMogHzftpcGNqb1xNdLm0lf9QM5W0v5R/VnS0a5iLV/oo +uPDaYG1O7trG3enf4J1IjlfzyBp+/xCkyfB2z7N2k8+5TsGimRsL9JgscrA6FepX +QKF+Qin2UyVOYqAGwlkloyfWEzyGy7oraDDzUu18p2U17elagqLUqWJ8zhJA9yqz +N2834TQzkk9GI3sywCcZtkA0X44UbGinYhmeCsVU5ItjdR90PuCD1PrYw0PsVXXw +JmlsCjXO+Fm6LxrlMP5n3/POh2kOuGbKjaXY57jsCpehPv7r/AqOz9TBStZUBr6u +Zd7g/Vkl2zZ+P3Rag7CA6l65T0A8Ia/EbJo= +=6ls1 +-----END PGP MESSAGE----- + +--------------enig7618AB5A6CE45664FC5C450B-- diff --git a/Test/Testcases/MB_NN_VT_VA_S.eml b/Test/Testcases/MB_NN_VT_VA_S.eml new file mode 100644 index 00000000..4273ceda --- /dev/null +++ b/Test/Testcases/MB_NN_VT_VA_S.eml @@ -0,0 +1,123 @@ +Message-ID: <4E44672F.2060706@gpgtools.org> +Date: Fri, 12 Aug 2011 01:35:11 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: MB/NN/VT/VA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/encrypted; + protocol="application/pgp-encrypted"; + boundary="------------enigBCFB27AA45E66B616D552BFD" + +This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156) +--------------enigBCFB27AA45E66B616D552BFD +Content-Type: application/pgp-encrypted +Content-Description: PGP/MIME version identification + +Version: 1 + +--------------enigBCFB27AA45E66B616D552BFD +Content-Type: application/octet-stream; name="encrypted.asc" +Content-Description: OpenPGP encrypted message +Content-Disposition: inline; filename="encrypted.asc" + +-----BEGIN PGP MESSAGE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +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 +=yQaQ +-----END PGP MESSAGE----- + +--------------enigBCFB27AA45E66B616D552BFD-- diff --git a/Test/Testcases/ME_NN_MT_MA_S.eml b/Test/Testcases/ME_NN_MT_MA_S.eml new file mode 100644 index 00000000..fe289661 --- /dev/null +++ b/Test/Testcases/ME_NN_MT_MA_S.eml @@ -0,0 +1,114 @@ +Message-ID: <4E44674B.50202@gpgtools.org> +Date: Fri, 12 Aug 2011 01:35:39 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: ME/NN/MT/MA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/encrypted; + protocol="application/pgp-encrypted"; + boundary="------------enig8B609B69188C09E68B88EB5F" + +This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156) +--------------enig8B609B69188C09E68B88EB5F +Content-Type: application/pgp-encrypted +Content-Description: PGP/MIME version identification + +Version: 1 + +--------------enig8B609B69188C09E68B88EB5F +Content-Type: application/octet-stream; name="encrypted.asc" +Content-Description: OpenPGP encrypted message +Content-Disposition: inline; filename="encrypted.asc" + +-----BEGIN PGP MESSAGE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +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 +QwHJEvSF2Smh +=RCEZ +-----END PGP MESSAGE----- + +--------------enig8B609B69188C09E68B88EB5F-- diff --git a/Test/Testcases/ME_NN_MT_NA_S.eml b/Test/Testcases/ME_NN_MT_NA_S.eml new file mode 100644 index 00000000..5b53c3d9 --- /dev/null +++ b/Test/Testcases/ME_NN_MT_NA_S.eml @@ -0,0 +1,43 @@ +Message-ID: <4E4462FD.3050407@gpgtools.org> +Date: Fri, 12 Aug 2011 01:17:17 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: ME/NN/MT/NA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/encrypted; + protocol="application/pgp-encrypted"; + boundary="------------enigF601DD3F3CB236B7D002A0EE" + +This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156) +--------------enigF601DD3F3CB236B7D002A0EE +Content-Type: application/pgp-encrypted +Content-Description: PGP/MIME version identification + +Version: 1 + +--------------enigF601DD3F3CB236B7D002A0EE +Content-Type: application/octet-stream; name="encrypted.asc" +Content-Description: OpenPGP encrypted message +Content-Disposition: inline; filename="encrypted.asc" + +-----BEGIN PGP MESSAGE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQgAqIWNNtwtujOqta2BBrf39BK05PX1pCX1rIHOOCXk/6E9 +fewwhwvNs8PkNm5i1XbkohT3/InzmPD+9RO6C6iHVpitYWBRRucJXR1OgvN8+tNE +iwmgdJ4j3C/45Dm8wcpKuGuUs3pFpYjEoHU92E6lybkvQIKFLnDVT+Nawv5ABOOH +lWpCY11TbRn1yBVE4i/FuSCgFWamgziLs9oMsg4Pg3AiESssToKK1Plak2+pNUal +8EWKLEbnas2X0X9IkYASxbb7vfBQ9121g+rZIFhuN9QZrH4vByIoMvHaIVWym5Ty +csSzGKX8000KoapFuu9ilFbx33xO0bnhBgZDNZPxltKgAeZN7eDTCzaXrJ6x1Wul +VtnRgpiQc13OpY9pXyyRPmjZMs4SJmonfDJNZovTq2fTcJMMXs5wFnSS/PQJCALk +ygvEhuFA7YgwxDRaVyRaAhx5YUPxtyGhC1OfsS/6pZ877OHUhbyaT3tj1qFTCpy7 +PClxrwMwpRBaw/NQvKgiHRw9SQH7wdnbAw0WfTEe6rB1BXctwt+8qojaaVNCgMuu +3A== +=6ryS +-----END PGP MESSAGE----- + +--------------enigF601DD3F3CB236B7D002A0EE-- diff --git a/Test/Testcases/ME_NN_VT_MA_S.eml b/Test/Testcases/ME_NN_VT_MA_S.eml new file mode 100644 index 00000000..9adec4de --- /dev/null +++ b/Test/Testcases/ME_NN_VT_MA_S.eml @@ -0,0 +1,114 @@ +Message-ID: <4E44674B.50202@gpgtools.org> +Date: Fri, 12 Aug 2011 01:35:39 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: ME/NN/VT/MA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/encrypted; + protocol="application/pgp-encrypted"; + boundary="------------enig8B609B69188C09E68B88EB5F" + +This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156) +--------------enig8B609B69188C09E68B88EB5F +Content-Type: application/pgp-encrypted +Content-Description: PGP/MIME version identification + +Version: 1 + +--------------enig8B609B69188C09E68B88EB5F +Content-Type: application/octet-stream; name="encrypted.asc" +Content-Description: OpenPGP encrypted message +Content-Disposition: inline; filename="encrypted.asc" + +-----BEGIN PGP MESSAGE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +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 +QwHJEvSF2Smh +=RCEZ +-----END PGP MESSAGE----- + +--------------enig8B609B69188C09E68B88EB5F-- diff --git a/Test/Testcases/ME_NN_VT_NA_S.eml b/Test/Testcases/ME_NN_VT_NA_S.eml new file mode 100644 index 00000000..18565760 --- /dev/null +++ b/Test/Testcases/ME_NN_VT_NA_S.eml @@ -0,0 +1,43 @@ +Message-ID: <4E4462FD.3050407@gpgtools.org> +Date: Fri, 12 Aug 2011 01:17:17 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: ME/NN/VT/NA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/encrypted; + protocol="application/pgp-encrypted"; + boundary="------------enigF601DD3F3CB236B7D002A0EE" + +This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156) +--------------enigF601DD3F3CB236B7D002A0EE +Content-Type: application/pgp-encrypted +Content-Description: PGP/MIME version identification + +Version: 1 + +--------------enigF601DD3F3CB236B7D002A0EE +Content-Type: application/octet-stream; name="encrypted.asc" +Content-Description: OpenPGP encrypted message +Content-Disposition: inline; filename="encrypted.asc" + +-----BEGIN PGP MESSAGE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +hQEMA1JrCfEKo9qCAQgAqIWNNtwtujOqta2BBrf39BK05PX1pCX1rIHOOCXk/6E9 +fewwhwvNs8PkNm5i1XbkohT3/InzmPD+9RO6C6iHVpitYWBRRucJXR1OgvN8+tNE +hwmgdJ4j3C/45Dm8wcpKuGuUs3pFpYjEoHU92E6lybkvQIKFLnDVT+Nawv5ABOOH +lWpCY11TbRn1yBVE4i/FuSCgFWamgziLs9oMsg4Pg3AiESssToKK1Plak2+pNUal +8EWKLEbnas2X0X9IkYASxbb7vfBQ9121g+rZIFhuN9QZrH4vByIoMvHaIVWym5Ty +csSzGKX8000KoapFuu9ilFbx33xO0bnhBgZDNZPxltKgAeZN7eDTCzaXrJ6x1Wul +VtnRgpiQc13OpY9pXyyRPmjZMs4SJmonfDJNZovTq2fTcJMMXs5wFnSS/PQJCALk +ygvEhuFA7YgwxDRaVyRaAhx5YUPxtyGhC1OfsS/6pZ877OHUhbyaT3tj1qFTCpy7 +PClxrwMwpRBaw/NQvKgiHRw9SQH7wdnbAw0WfTEe6rB1BXctwt+8qojaaVNCgMuu +3A== +=6ryS +-----END PGP MESSAGE----- + +--------------enigF601DD3F3CB236B7D002A0EE-- diff --git a/Test/Testcases/ME_NN_VT_VA_S.eml b/Test/Testcases/ME_NN_VT_VA_S.eml new file mode 100644 index 00000000..61a33e1d --- /dev/null +++ b/Test/Testcases/ME_NN_VT_VA_S.eml @@ -0,0 +1,114 @@ +Message-ID: <4E44674B.50202@gpgtools.org> +Date: Fri, 12 Aug 2011 01:35:39 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: ME/NN/VT/VA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/encrypted; + protocol="application/pgp-encrypted"; + boundary="------------enig8B609B69188C09E68B88EB5F" + +This is an OpenPGP/MIME encrypted message (RFC 2440 and 3156) +--------------enig8B609B69188C09E68B88EB5F +Content-Type: application/pgp-encrypted +Content-Description: PGP/MIME version identification + +Version: 1 + +--------------enig8B609B69188C09E68B88EB5F +Content-Type: application/octet-stream; name="encrypted.asc" +Content-Description: OpenPGP encrypted message +Content-Disposition: inline; filename="encrypted.asc" + +-----BEGIN PGP MESSAGE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +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 +QwHJEvSF2Smh +=RCEZ +-----END PGP MESSAGE----- + +--------------enig8B609B69188C09E68B88EB5F-- diff --git a/Test/Testcases/MS_NN_MT_MA_S.eml b/Test/Testcases/MS_NN_MT_MA_S.eml new file mode 100644 index 00000000..2627f02f --- /dev/null +++ b/Test/Testcases/MS_NN_MT_MA_S.eml @@ -0,0 +1,111 @@ +Message-ID: <4E44670C.50905@gpgtools.org> +Date: Fri, 12 Aug 2011 01:34:36 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: MS/NN/MT/MA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/signed; micalg=pgp-sha1; + protocol="application/pgp-signature"; + boundary="------------enig9CCBF0736BC423611F275DCD" + +This is an OpenPGP/MIME signed message (RFC 2440 and 3156) +--------------enig9CCBF0736BC423611F275DCD +Content-Type: multipart/mixed; + boundary="------------000209090407090505030006" + +This is a multi-part message in MIME format. +--------------000209090407090505030006 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: quoted-printable + +MS/NN/MT/MA/S + +--------------000209090407090505030006 +Content-Type: image/png; + name="gpgmail.png" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png" + +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 +AElFTkSuQmCC +--------------000209090407090505030006-- + +--------------enig9CCBF0736BC423611F275DCD +Content-Type: application/pgp-signature; name="signature.asc" +Content-Description: OpenPGP digital signature +Content-Disposition: attachment; filename="signature.asc" + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +iQEcBAEBAgAGBQJORGcNAAoJEFJrCfEKo9qCO7sIAI3oPss4EwSNdlHzwF1eWx91 +scncDi2bLM6cgvsixoQY9KOE7hozOloGjQ3Nr8QaDmr60jG8LMzOI+z/eQNRKY0V +nWTIJd1NrK7mWTSJfFgxTe8TEfCdSYo8nPKbbIRtX7ghpuutFYX90LvEyzELHm99 +5UFeeYevKN/f2dOimfq8ucZoAajy0w2XBVMIKDjquy8/Dhpb6YphXtJsEavmi1D9 +pSxpI9IH19KU7JODt6u1Z0MrIVrDwGR/qgMWG0JooGUgHI9CAhZEnAT+KBr+8diN +Cyx8C++m3ftt3yd4sMvuxv0uYPlo7tGTAyalH3iM1nb5Q8V520ctw/JM0a6C4Dk= +=tuNs +-----END PGP SIGNATURE----- + +--------------enig9CCBF0736BC423611F275DCD-- diff --git a/Test/Testcases/MS_NN_MT_NA_S.eml b/Test/Testcases/MS_NN_MT_NA_S.eml new file mode 100644 index 00000000..b397fc61 --- /dev/null +++ b/Test/Testcases/MS_NN_MT_NA_S.eml @@ -0,0 +1,40 @@ +Message-ID: <4E4462EA.9070603@gpgtools.org> +Date: Fri, 12 Aug 2011 01:16:58 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: MS/NN/MT/NA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/signed; micalg=pgp-sha1; + protocol="application/pgp-signature"; + boundary="------------enig2A81578011ECF54877A8D30E" + +This is an OpenPGP/MIME signed message (RFC 2440 and 3156) +--------------enig2A81578011ECF54877A8D30E +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: quoted-printable + +MS/NN/MT/NA/S + + +--------------enig2A81578011ECF54877A8D30E +Content-Type: application/pgp-signature; name="signature.asc" +Content-Description: OpenPGP digital signature +Content-Disposition: attachment; filename="signature.asc" + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +iQEcBAEBAgAGBQJORGLrAAoJEFJrCfEKo9qCiUUH/iU0sEiDc0iLDYzIPb6DFt1q ++0XBGQNK+cs5EvXwYH/Nixk5QB6RjCsSwQlychYDJ1dzP5muu38Qrs3M3yAig4fT +01glbAc62b0KbRGCMW/jKLG8MDVW1YyV/NsMUeXOHiM5dhzXJxsDp40oguVl/FVT +TZzob4RIazd4IJYrpSV4ZDkhk1vaOuA/rTdsimWOqZXyJmS6T4p8FkzF2L+O6w6b +vZuRL9LKrtOZmaQgylYh4jdnsxPjUjgxCtuYOiGCn1OYOM6PiprEEqcftr0TpUru +Thy97z2eVYWjgmw4aqvIYjvyF8nlMT+hORSZDYkBw1it4XqoEMEVgs+hIY9kaG8= +=5fa+ +-----END PGP SIGNATURE----- + +--------------enig2A81578011ECF54877A8D30E-- diff --git a/Test/Testcases/MS_NN_VT_MA_S.eml b/Test/Testcases/MS_NN_VT_MA_S.eml new file mode 100644 index 00000000..47344ef8 --- /dev/null +++ b/Test/Testcases/MS_NN_VT_MA_S.eml @@ -0,0 +1,111 @@ +Message-ID: <4E44670C.50905@gpgtools.org> +Date: Fri, 12 Aug 2011 01:34:36 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: MS/NN/VT/MA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/signed; micalg=pgp-sha1; + protocol="application/pgp-signature"; + boundary="------------enig9CCBF0736BC423611F275DCD" + +This is an OpenPGP/MIME signed message (RFC 2440 and 3156) +--------------enig9CCBF0736BC423611F275DCD +Content-Type: multipart/mixed; + boundary="------------000209090407090505030006" + +This is a multi-part message in MIME format. +--------------000209090407090505030006 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: quoted-printable + +MS/NN/VT/VA/S + +--------------000209090407090505030006 +Content-Type: image/png; + name="gpgmail.png" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png" + +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 +AElFTkSuQmCC +--------------000209090407090505030006-- + +--------------enig9CCBF0736BC423611F275DCD +Content-Type: application/pgp-signature; name="signature.asc" +Content-Description: OpenPGP digital signature +Content-Disposition: attachment; filename="signature.asc" + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +iQEcBAEBAgAGBQJORGcNAAoJEFJrCfEKo9qCO7sIAI3oPss4EwSNdlHzwF1eWx91 +scncDi2bLM6cgvsixoQY9KOE7hozOloGjQ3Nr8QaDmr60jG8LMzOI+z/eQNRKY0V +nWTIJd1NrK7mWTSJfFgxTe8TEfCdSYo8nPKbbIRtX7ghpuutFYX90LvEyzELHm99 +5UFeeYevKN/f2dOimfq8ucZoAajy0w2XBVMIKDjquy8/Dhpb6YphXtJsEavmi1D9 +pSxpI9IH19KU7JODt6u1Z0MrIVrDwGR/qgMWG0JooGUgHI9CAhZEnAT+KBr+8diN +Cyx8C++m3ftt3yd4sMvuxv0uYPlo7tGTAyalH3iM1nb5Q8V520ctw/JM0a6C4Dk= +=tuNs +-----END PGP SIGNATURE----- + +--------------enig9CCBF0736BC423611F275DCD-- diff --git a/Test/Testcases/MS_NN_VT_NA_S.eml b/Test/Testcases/MS_NN_VT_NA_S.eml new file mode 100644 index 00000000..0034cd2b --- /dev/null +++ b/Test/Testcases/MS_NN_VT_NA_S.eml @@ -0,0 +1,40 @@ +Message-ID: <4E4462EA.9070603@gpgtools.org> +Date: Fri, 12 Aug 2011 01:16:58 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: MS/NN/VT/NA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/signed; micalg=pgp-sha1; + protocol="application/pgp-signature"; + boundary="------------enig2A81578011ECF54877A8D30E" + +This is an OpenPGP/MIME signed message (RFC 2440 and 3156) +--------------enig2A81578011ECF54877A8D30E +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: quoted-printable + +MS/NN/VT/NA/S + + +--------------enig2A81578011ECF54877A8D30E +Content-Type: application/pgp-signature; name="signature.asc" +Content-Description: OpenPGP digital signature +Content-Disposition: attachment; filename="signature.asc" + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +iQEcBAEBAgAGBQJORGLrAAoJEFJrCfEKo9qCiUUH/iU0sEiDc0iLDYzIPb6DFt1q ++0XBGQNK+cs5EvXwYH/Nixk5QB6RjCsSwQlychYDJ1dzP5muu38Qrs3M3yAig4fT +01glbAc62b0KbRGCMW/jKLG8MDVW1YyV/NsMUeXOHiM5dhzXJxsDp40oguVl/FVT +TZzob4RIazd4IJYrpSV4ZDkhk1vaOuA/rTdsimWOqZXyJmS6T4p8FkzF2L+O6w6b +vZuRL9LKrtOZmaQgylYh4jdnsxPjUjgxCtuYOiGCn1OYOM6PiprEEqcftr0TpUru +Thy97z2eVYWjgmw4aqvIYjvyF8nlMT+hORSZDYkBw1it4XqoEMEVgs+hIY9kaG8= +=5fa+ +-----END PGP SIGNATURE----- + +--------------enig2A81578011ECF54877A8D30E-- diff --git a/Test/Testcases/MS_NN_VT_VA_S.eml b/Test/Testcases/MS_NN_VT_VA_S.eml new file mode 100644 index 00000000..6709e325 --- /dev/null +++ b/Test/Testcases/MS_NN_VT_VA_S.eml @@ -0,0 +1,111 @@ +Message-ID: <4E44670C.50905@gpgtools.org> +Date: Fri, 12 Aug 2011 01:34:36 +0200 +From: GPGTools Test Key +User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:5.0) Gecko/20110624 Thunderbird/5.0 +MIME-Version: 1.0 +To: test@gpgtools.org +Subject: MS/NN/VT/VA/S +X-Enigmail-Version: 1.2 +Content-Type: multipart/signed; micalg=pgp-sha1; + protocol="application/pgp-signature"; + boundary="------------enig9CCBF0736BC423611F275DCD" + +This is an OpenPGP/MIME signed message (RFC 2440 and 3156) +--------------enig9CCBF0736BC423611F275DCD +Content-Type: multipart/mixed; + boundary="------------000209090407090505030006" + +This is a multi-part message in MIME format. +--------------000209090407090505030006 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: quoted-printable + +MS/NN/VT/VA/S + +--------------000209090407090505030006 +Content-Type: image/png; + name="gpgmail.png" +Content-Transfer-Encoding: base64 +Content-Disposition: attachment; + filename="gpgmail.png" + +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 +AElFTkSuQmCC +--------------000209090407090505030006-- + +--------------enig9CCBF0736BC423611F275DCD +Content-Type: application/pgp-signature; name="signature.asc" +Content-Description: OpenPGP digital signature +Content-Disposition: attachment; filename="signature.asc" + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG/MacGPG2 v2.0.17 (Darwin) +Comment: GPGTools - http://gpgtools.org +Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ + +iQEcBAEBAgAGBQJORGcNAAoJEFJrCfEKo9qCO7sIAI3oPss4EwSNdlHzwF1eWx91 +scncDi2bLM6cgvsixoQY9KOE7hozOloGjQ3Nr8QaDmr60jG8LMzOI+z/eQNRKY0V +nWTIJd1NrK7mWTSJfFgxTe8TEfCdSYo8nPKbbIRtX7ghpuutFYX90LvEyzELHm99 +5UFeeYevKN/f2dOimfq8ucZoAajy0w2XBVMIKDjquy8/Dhpb6YphXtJsEavmi1D9 +pSxpI9IH19KU7JODt6u1Z0MrIVrDwGR/qgMWG0JooGUgHI9CAhZEnAT+KBr+8diN +Cyx8C++m3ftt3yd4sMvuxv0uYPlo7tGTAyalH3iM1nb5Q8V520ctw/JM0a6C4Dk= +=tuNs +-----END PGP SIGNATURE----- + +--------------enig9CCBF0736BC423611F275DCD-- diff --git a/Unit Tests/Data/PGPInlineDataASCIIGood.txt b/Unit Tests/Data/PGPInlineDataASCIIGood.txt new file mode 100644 index 00000000..3bd2c366 --- /dev/null +++ b/Unit Tests/Data/PGPInlineDataASCIIGood.txt @@ -0,0 +1,9 @@ +Now is the time for all good men to come to the aid of the party. + +-----BEGIN PGP MESSAGE----- + +the contents here are not being tested + +-----END PGP MESSAGE----- + +Now is the time for all good men to come to the aid of the party. diff --git a/Unit Tests/Data/PGPInlineDataASCIIquoted.txt b/Unit Tests/Data/PGPInlineDataASCIIquoted.txt new file mode 100644 index 00000000..c3d5bc1e --- /dev/null +++ b/Unit Tests/Data/PGPInlineDataASCIIquoted.txt @@ -0,0 +1,9 @@ +Now is the time for all good men to come to the aid of the party. + +>>-----BEGIN PGP MESSAGE----- +>> +>>the contents here are not being tested +>> +>>-----END PGP MESSAGE----- + +Now is the time for all good men to come to the aid of the party. diff --git a/Unit Tests/Data/PGPInlineDataUTF8Good.txt b/Unit Tests/Data/PGPInlineDataUTF8Good.txt new file mode 100644 index 00000000..4a36f85e --- /dev/null +++ b/Unit Tests/Data/PGPInlineDataUTF8Good.txt @@ -0,0 +1,9 @@ +Überprüft die OpenPGP Signatur der E-Mail + +-----BEGIN PGP MESSAGE----- + +the contents here are not being tested + +-----END PGP MESSAGE----- + +Überprüft die OpenPGP Signatur der E-Mail diff --git a/Unit Tests/Data/PGPInlineDataUTF8quoted.txt b/Unit Tests/Data/PGPInlineDataUTF8quoted.txt new file mode 100644 index 00000000..60eb8541 --- /dev/null +++ b/Unit Tests/Data/PGPInlineDataUTF8quoted.txt @@ -0,0 +1,9 @@ +Überprüft die OpenPGP Signatur der E-Mail + +>>-----BEGIN PGP MESSAGE----- +>> +>>the contents here are not being tested +>> +>>-----END PGP SIGNATURE----- + +Überprüft die OpenPGP Signatur der E-Mail diff --git a/Unit Tests/Data/PGPInlineSignatureASCIIGood.txt b/Unit Tests/Data/PGPInlineSignatureASCIIGood.txt new file mode 100644 index 00000000..ddd31d8a --- /dev/null +++ b/Unit Tests/Data/PGPInlineSignatureASCIIGood.txt @@ -0,0 +1,9 @@ +Now is the time for all good men to come to the aid of the party. + +-----BEGIN PGP SIGNED MESSAGE----- + +the contents here are not being tested + +-----END PGP SIGNATURE----- + +Now is the time for all good men to come to the aid of the party. diff --git a/Unit Tests/Data/PGPInlineSignatureASCIIquoted.txt b/Unit Tests/Data/PGPInlineSignatureASCIIquoted.txt new file mode 100644 index 00000000..2cd899bd --- /dev/null +++ b/Unit Tests/Data/PGPInlineSignatureASCIIquoted.txt @@ -0,0 +1,9 @@ +Now is the time for all good men to come to the aid of the party. + +>>-----BEGIN PGP SIGNED MESSAGE----- +>> +>>the contents here are not being tested +>> +>>-----END PGP SIGNATURE----- + +Now is the time for all good men to come to the aid of the party. diff --git a/Unit Tests/Data/PGPInlineSignatureUTF8Good.txt b/Unit Tests/Data/PGPInlineSignatureUTF8Good.txt new file mode 100644 index 00000000..aa0429af --- /dev/null +++ b/Unit Tests/Data/PGPInlineSignatureUTF8Good.txt @@ -0,0 +1,9 @@ +Überprüft die OpenPGP Signatur der E-Mail + +-----BEGIN PGP SIGNED MESSAGE----- + +the contents here are not being tested + +-----END PGP SIGNATURE----- + +Überprüft die OpenPGP Signatur der E-Mail diff --git a/Unit Tests/Data/PGPInlineSignatureUTF8quoted.txt b/Unit Tests/Data/PGPInlineSignatureUTF8quoted.txt new file mode 100644 index 00000000..5ca26015 --- /dev/null +++ b/Unit Tests/Data/PGPInlineSignatureUTF8quoted.txt @@ -0,0 +1,9 @@ +Überprüft die OpenPGP Signatur der E-Mail + +>>-----BEGIN PGP SIGNED MESSAGE----- +>> +>>the contents here are not being tested +>> +>>-----END PGP SIGNATURE----- + +Überprüft die OpenPGP Signatur der E-Mail diff --git a/Unit Tests/Data/PGPMessageBlockBad.txt b/Unit Tests/Data/PGPMessageBlockBad.txt new file mode 100644 index 00000000..992d5faf --- /dev/null +++ b/Unit Tests/Data/PGPMessageBlockBad.txt @@ -0,0 +1,3 @@ +-----BEGIN PGP MESSAGE + +----- END PGP MESSAGE ----- diff --git a/Unit Tests/Data/PGPMessageBlockGood.txt b/Unit Tests/Data/PGPMessageBlockGood.txt new file mode 100644 index 00000000..3cf1c7a2 --- /dev/null +++ b/Unit Tests/Data/PGPMessageBlockGood.txt @@ -0,0 +1,5 @@ +-----BEGIN PGP MESSAGE----- + +-----END PGP MESSAGE----- + +the quick brown fox... diff --git a/Unit Tests/Data/PGPMessageBlockGood2.txt b/Unit Tests/Data/PGPMessageBlockGood2.txt new file mode 100644 index 00000000..97bf266e --- /dev/null +++ b/Unit Tests/Data/PGPMessageBlockGood2.txt @@ -0,0 +1,6 @@ +-----BEGIN PGP SIGNATURE----- +-----BEGIN PGP MESSAGE----- + +-----END PGP MESSAGE----- + +THE END diff --git a/Unit Tests/Data/PGPPublicKey.txt b/Unit Tests/Data/PGPPublicKey.txt new file mode 100644 index 00000000..285784fc --- /dev/null +++ b/Unit Tests/Data/PGPPublicKey.txt @@ -0,0 +1,7 @@ +the quick brown fox + +-----BEGIN PGP PUBLIC KEY BLOCK----- + +-----END PGP PUBLIC KEY BLOCK----- + +jumps over the lazy dog diff --git a/Unit Tests/Data/PGPSignatureASCIIGood.txt b/Unit Tests/Data/PGPSignatureASCIIGood.txt new file mode 100644 index 00000000..7f85b27e --- /dev/null +++ b/Unit Tests/Data/PGPSignatureASCIIGood.txt @@ -0,0 +1,9 @@ +Now is the time for all good men to come to the aid of the party. + +-----BEGIN PGP SIGNATURE----- + +the contents here are not being tested + +-----END PGP SIGNATURE----- + +Now is the time for all good men to come to the aid of the party. diff --git a/Unit Tests/Data/PGPSignatureBlockBad.txt b/Unit Tests/Data/PGPSignatureBlockBad.txt new file mode 100644 index 00000000..59e7ce2f --- /dev/null +++ b/Unit Tests/Data/PGPSignatureBlockBad.txt @@ -0,0 +1,3 @@ +-----BEGIN PGP SIGNATURE----- + +-----END PGP MESSAGE----- diff --git a/Unit Tests/Data/PGPSignatureBlockGood.txt b/Unit Tests/Data/PGPSignatureBlockGood.txt new file mode 100644 index 00000000..546427c8 --- /dev/null +++ b/Unit Tests/Data/PGPSignatureBlockGood.txt @@ -0,0 +1,5 @@ +abcdef +-----BEGIN PGP SIGNATURE----- + +-----END PGP SIGNATURE----- +hijklm diff --git a/Unit Tests/Data/PGPSignatureUTF8Good.txt b/Unit Tests/Data/PGPSignatureUTF8Good.txt new file mode 100644 index 00000000..6cb4654e --- /dev/null +++ b/Unit Tests/Data/PGPSignatureUTF8Good.txt @@ -0,0 +1,9 @@ +Überprüft die OpenPGP Signatur der E-Mail + +-----BEGIN PGP SIGNATURE----- + +the contents here are not being tested + +-----END PGP SIGNATURE----- + +Überprüft die OpenPGP Signatur der E-Mail diff --git a/Unit Tests/IntegrationHooks.m b/Unit Tests/IntegrationHooks.m new file mode 100644 index 00000000..967d6c4b --- /dev/null +++ b/Unit Tests/IntegrationHooks.m @@ -0,0 +1,82 @@ +/* IntegrationHooks.m created by Lukas Pitschl (@lukele) on Mon 24-Jun-2013 */ + +/* + * Copyright (c) 2000-2013, GPGTools Team + * All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of GPGTools nor the names of GPGMail + * contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE GPGTools Team ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE GPGTools Team BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import "TestHelpers.h" +#import "GMCodeInjector.h" + +@interface IntegrationHooks : XCTestCase + +@end + +@implementation IntegrationHooks + ++ (void)setUp { + [super setUp]; + + [TestHelpers loadGPGMail]; +} + +- (void)testRequiredFrameworksExist { + NSArray *frameworks = [TestHelpers requiredFrameworks]; + for(__strong id framework in frameworks) { + NSError * __autoreleasing error; + // Try to load the framework. + NSBundle *frameworkBundle = [NSBundle bundleWithPath:framework]; + BOOL success = [frameworkBundle loadAndReturnError:&error]; + XCTAssertTrue(success && frameworkBundle != nil, @"Framework couldn't be loaded at path: %@\nError: %@", framework, !success && error ? error : @"N/A"); + } +} + +- (void)testRequiredHooksExist { + // Make sure the GMCodeInjector is available. + XCTAssertTrue(NSClassFromString(@"GMCodeInjector") != nil, @"Fuck this!"); + NSDictionary *hooks = [NSClassFromString(@"GMCodeInjector") hooks]; + for(NSString *className in hooks) { + NSArray *selectorNames = hooks[className]; + + // Firt check if the class is from frameworks or form Mail.app itself. + id mailClass = [TestHelpers classWithName:className]; + // Make sure the class exists. + XCTAssertNotNil(mailClass, @"Class %@ doesn't exist. This will lead to problems!", className); + // Test all the selectors. + for(id selectorName in selectorNames) { + NSString *newSelectorName = [selectorName isKindOfClass:[NSArray class]] ? selectorName[1] : selectorName; + unsigned int match = 0; + if([TestHelpers instancesOfClass:mailClass respondToSelectorWithName:newSelectorName]) + match += 1; + if([TestHelpers class:mailClass respondsToSelectorWithName:newSelectorName]) + match += 1; + + XCTAssertTrue(match, @"Class %@ doesn't implement selector %@", className, newSelectorName); + } + } +} + +@end diff --git a/Unit Tests/NSData+GPGMailTest.m b/Unit Tests/NSData+GPGMailTest.m new file mode 100644 index 00000000..ea08f361 --- /dev/null +++ b/Unit Tests/NSData+GPGMailTest.m @@ -0,0 +1,196 @@ +// +// NSData+GPGMailTest.m +// GPGMail +// +// Created by Chris Fraire on 3/5/12. +// Copyright (c) 2012 Chris Fraire. All rights reserved. +// + +#import +#import "TestHelpers.h" +#import "NSData+GPGMail.h" + +@interface NSData_GPGMailTest : XCTestCase + +- (NSData *)dataForResourceAtPath:(NSString *)path ofType:(NSString *)rtype; + +@end + +@implementation NSData_GPGMailTest + ++ (void)setUp { + [super setUp]; + + [TestHelpers loadGPGMail]; +} + +- (NSData *)dataForResourceAtPath:(NSString *)path ofType:(NSString *)rtype { + NSBundle *execBundl = [NSBundle bundleForClass:[self class]]; + NSString *file = [execBundl pathForResource:path ofType:rtype]; + NSData *data = [NSData dataWithContentsOfFile:file]; + return data; +} + +- (void)testMightContainPGPEncryptedDataOrSignatures_1 { + NSData *data = [self dataForResourceAtPath:@"PGPMessageBlockGood" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + BOOL rc = [data mightContainPGPEncryptedDataOrSignatures]; + XCTAssertTrue(rc, @"Unexpected rc!"); +} + +- (void)testMightContainPGPEncryptedDataOrSignatures_2 { + NSData *data = [self dataForResourceAtPath:@"PGPMessageBlockBad" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + BOOL rc = [data mightContainPGPEncryptedDataOrSignatures]; + XCTAssertFalse(rc, @"Unexpected rc!"); +} + +- (void)testMightContainPGPEncryptedDataOrSignatures_3 { + NSData *data = [self dataForResourceAtPath:@"PGPMessageBlockGood2" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + BOOL rc = [data mightContainPGPEncryptedDataOrSignatures]; + XCTAssertTrue(rc, @"Unexpected rc!"); +} + +- (void)testMightContainPGPEncryptedDataOrSignatures_4 { + NSData *data = [self dataForResourceAtPath:@"PGPSignatureBlockGood" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + BOOL rc = [data mightContainPGPEncryptedDataOrSignatures]; + XCTAssertTrue(rc, @"Unexpected rc!"); +} + +- (void)testMightContainPGPEncryptedDataOrSignatures_5 { + NSData *data = [self dataForResourceAtPath:@"PGPSignatureBlockBad" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + BOOL rc = [data mightContainPGPEncryptedDataOrSignatures]; + XCTAssertFalse(rc, @"Unexpected rc!"); +} + +- (void)testRangeOfPGPPublicKey { + NSData *data = [self dataForResourceAtPath:@"PGPPublicKey" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + NSRange match = [data rangeOfPGPPublicKey]; + XCTAssertEqual(21ul, match.location, @"Did not match public key!"); + XCTAssertEqual(72ul, match.length, @"Did not match public key!"); +} + +- (void)testRangeOfPGPInlineSignaturesUTF8Good { + NSData *data = [self dataForResourceAtPath:@"PGPInlineSignatureUTF8Good" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + NSRange match = [data rangeOfPGPInlineSignatures]; + XCTAssertTrue(match.location != NSNotFound, @"Did not find signature as expected!"); + + NSData *signature = [data subdataWithRange:match]; + // This first does a UTF8 guess, so it's good + NSString *decoded = [[NSString alloc] initWithData:signature encoding:NSUTF8StringEncoding]; + // existing implementation should pass, but was broken before RegexKit + XCTAssertTrue([decoded hasPrefix:PGP_SIGNED_MESSAGE_BEGIN], @"%@", decoded); + XCTAssertTrue([decoded hasSuffix:PGP_MESSAGE_SIGNATURE_END], @"%@", decoded); +} + +- (void)testRangeOfPGPInlineSignaturesASCIIGood { + NSData *data = [self dataForResourceAtPath:@"PGPInlineSignatureASCIIGood" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + NSRange match = [data rangeOfPGPInlineSignatures]; + XCTAssertTrue(match.location != NSNotFound, @"Did not find signature as expected!"); + + NSData *signature = [data subdataWithRange:match]; + NSString *decoded = [[NSString alloc] initWithData:signature encoding:NSASCIIStringEncoding]; + XCTAssertTrue([decoded hasPrefix:PGP_SIGNED_MESSAGE_BEGIN], @"%@", decoded); + XCTAssertTrue([decoded hasSuffix:PGP_MESSAGE_SIGNATURE_END], @"%@", decoded); +} + +- (void)testRangeOfPGPInlineSignaturesUTF8quoted { + NSData *data = [self dataForResourceAtPath:@"PGPInlineSignatureUTF8quoted" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + NSRange match = [data rangeOfPGPInlineSignatures]; + XCTAssertTrue(match.location == NSNotFound, @"Found unexpected signature!"); +} + +- (void)testRangeOfPGPInlineSignaturesASCIIquoted { + NSData *data = [self dataForResourceAtPath:@"PGPInlineSignatureASCIIquoted" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + NSRange match = [data rangeOfPGPInlineSignatures]; + XCTAssertTrue(match.location == NSNotFound, @"Found unexpected signature!"); +} + +- (void)testRangeOfPGPSignaturesUTF8Good { + NSData *data = [self dataForResourceAtPath:@"PGPSignatureUTF8Good" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + NSRange match = [data rangeOfPGPSignatures]; + XCTAssertTrue(match.location != NSNotFound, @"Did not find signature as expected!"); + + NSData *signature = [data subdataWithRange:match]; + NSString *decoded = [[NSString alloc] initWithData:signature encoding:NSUTF8StringEncoding]; + // existing implementation should pass, but was broken before RegexKit + XCTAssertTrue([decoded hasPrefix:PGP_MESSAGE_SIGNATURE_BEGIN], @"%@", decoded); + XCTAssertTrue([decoded hasSuffix:PGP_MESSAGE_SIGNATURE_END], @"%@", decoded); +} + +- (void)testRangeOfPGPSignaturesASCIIGood { + NSData *data = [self dataForResourceAtPath:@"PGPSignatureASCIIGood" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + NSRange match = [data rangeOfPGPSignatures]; + XCTAssertTrue(match.location != NSNotFound, @"Did not find signature as expected!"); + + NSData *signature = [data subdataWithRange:match]; + NSString *decoded = [[NSString alloc] initWithData:signature encoding:NSASCIIStringEncoding]; + XCTAssertTrue([decoded hasPrefix:PGP_MESSAGE_SIGNATURE_BEGIN], @"%@", decoded); + XCTAssertTrue([decoded hasSuffix:PGP_MESSAGE_SIGNATURE_END], @"%@", decoded); +} + +- (void)testRangeOfPGPInlineEncryptedDataUTF8Good { + NSData *data = [self dataForResourceAtPath:@"PGPInlineDataUTF8Good" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + NSRange match = [data rangeOfPGPInlineEncryptedData]; + XCTAssertTrue(match.location != NSNotFound, @"Did not find data as expected!"); + + NSData *pgpBlock = [data subdataWithRange:match]; + NSString *decoded = [[NSString alloc] initWithData:pgpBlock encoding:NSUTF8StringEncoding]; + // existing implementation should pass, but was broken before RegexKit + XCTAssertTrue([decoded hasPrefix:PGP_MESSAGE_BEGIN], @"%@", decoded); + XCTAssertTrue([decoded hasSuffix:PGP_MESSAGE_END], @"%@", decoded); +} + +- (void)testRangeOfPGPInlineEncryptedDataASCIIGood { + NSData *data = [self dataForResourceAtPath:@"PGPInlineDataASCIIGood" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + NSRange match = [data rangeOfPGPInlineEncryptedData]; + XCTAssertTrue(match.location != NSNotFound, @"Did not find data as expected!"); + + NSData *pgpBlock = [data subdataWithRange:match]; + NSString *decoded = [[NSString alloc] initWithData:pgpBlock encoding:NSASCIIStringEncoding]; + // existing implementation should pass, but was broken before RegexKit + XCTAssertTrue([decoded hasPrefix:PGP_MESSAGE_BEGIN], @"%@", decoded); + XCTAssertTrue([decoded hasSuffix:PGP_MESSAGE_END], @"%@", decoded); +} + +- (void)testRangeOfPGPInlineEncryptedDataUTF8quoted { + NSData *data = [self dataForResourceAtPath:@"PGPInlineDataUTF8quoted" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + NSRange match = [data rangeOfPGPInlineEncryptedData]; + XCTAssertTrue(match.location == NSNotFound, @"Found unexpected data!"); +} + +- (void)testRangeOfPGPInlineEncryptedDataASCIIquoted { + NSData *data = [self dataForResourceAtPath:@"PGPInlineDataASCIIquoted" ofType:@"txt"]; + XCTAssertNotNil(data, @"Did not read Resource!"); + NSRange match = [data rangeOfPGPInlineEncryptedData]; + XCTAssertTrue(match.location == NSNotFound, @"Found unexpected data!"); +} + +- (void)testPGPVersionMarker { + NSString *case1 = @"éúêø version: 1 Å"; + NSData *encoded = [case1 dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:FALSE]; + XCTAssertNotNil(encoded, @"Failed to UTF8 encode!"); + XCTAssertTrue([encoded containsPGPVersionMarker:1], @"version match failed!"); + XCTAssertFalse([encoded containsPGPVersionMarker:2], @"version match passed unexpectedly!"); + + case1 = @"éúêø VERSION : 1 Å"; + encoded = [case1 dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:TRUE]; + XCTAssertNotNil(encoded, @"Failed to ASCII-lossy encode!"); + XCTAssertTrue([encoded containsPGPVersionMarker:1], @"version match failed!"); + XCTAssertFalse([encoded containsPGPVersionMarker:2], @"version match passed unexpectedly!"); +} + +@end diff --git a/Unit Tests/TestHelpers.h b/Unit Tests/TestHelpers.h new file mode 100644 index 00000000..03ef374e --- /dev/null +++ b/Unit Tests/TestHelpers.h @@ -0,0 +1,22 @@ +// +// TestHelpers.h +// GPGMail +// +// Created by Lukas Pitschl on 06.08.13. +// +// + +#import + +@interface TestHelpers : NSObject + ++ (NSArray *)requiredFrameworks; ++ (void)loadFrameworks; ++ (void)loadBundleAtPath:(NSString *)path; ++ (void)loadGPGMail; ++ (NSArray *)mailClasses; ++ (id)classWithName:(NSString *)name; ++ (BOOL)class:(id)class respondsToSelectorWithName:(NSString *)selectorName; ++ (BOOL)instancesOfClass:(id)class respondToSelectorWithName:(NSString *)selectorName; + +@end diff --git a/Unit Tests/TestHelpers.m b/Unit Tests/TestHelpers.m new file mode 100644 index 00000000..febe1433 --- /dev/null +++ b/Unit Tests/TestHelpers.m @@ -0,0 +1,119 @@ +// +// TestHelpers.m +// GPGMail +// +// Created by Lukas Pitschl on 06.08.13. +// +// + +#import +#import "TestHelpers.h" +#import "CDMachOFile.h" +#import "CDOCClass.h" +#import "CDObjectiveCProcessor.h" +#import + +@implementation TestHelpers + ++ (NSArray *)requiredFrameworks { + NSArray *frameworks = @[@"/System/Library/PrivateFrameworks/CoreMessage.framework", + @"/System/Library/PrivateFrameworks/IMAP.framework", + @"/System/Library/Frameworks/Message.framework"]; + if(floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_8) { + frameworks = @[@"/System/Library/PrivateFrameworks/MailCore.framework", + @"/System/Library/PrivateFrameworks/Mail.framework", + @"/System/Library/PrivateFrameworks/MailUI.framework"]; + } + return frameworks; +} + ++ (NSString *)systemRootPath { + return @"/"; +} + ++ (void)loadFrameworks { + for(NSString *frameworkPath in [self requiredFrameworks]) + [self loadBundleAtPath:[[TestHelpers systemRootPath] stringByAppendingString:frameworkPath]]; +} + ++ (void)loadBundleAtPath:(NSString *)path { + NSBundle *bundle; + bundle = [NSBundle bundleWithPath:path]; + + // Try to load the bundle but with load instead of loadAndReturnError, + // since that appears to reveal more information on why the bundle couldn't be loaded. + if(![bundle load]) + return; +} + ++ (void)loadGPGMail { + NSString *GPGMailPath = [[NSBundle bundleForClass:[self class]] pathForResource:@"GPGMail" ofType:@"mailbundle" inDirectory:nil]; + // First, load the frameworks otherwise GPGMailBundle won't load, since it depends on them. + [self loadFrameworks]; + [self loadBundleAtPath:GPGMailPath]; + [self loadMail]; +} + ++ (void)loadMail { + [self mailClasses]; +} + ++ (NSArray *)mailClasses { + static dispatch_once_t onceToken; + static NSArray *_mailClasses; + dispatch_once(&onceToken, ^{ + NSString *cdPath = [[NSBundle bundleForClass:[self class]] pathForResource:@"cd-bundle" ofType:@"bundle" inDirectory:nil]; + [self loadBundleAtPath:cdPath]; + + NSString *mailPath = [[TestHelpers systemRootPath] stringByAppendingString:@"/Applications/Mail.app/Contents/MacOS/Mail"]; + + CDMachOFile *file = (CDMachOFile *)[NSClassFromString(@"CDFile") fileWithContentsOfFile:mailPath searchPathState:nil]; + CDObjectiveCProcessor *processor = [[[file processorClass] alloc] initWithMachOFile:file]; + [processor process]; + + _mailClasses = processor.classes; + }); + return _mailClasses; +} + ++ (id)classWithName:(NSString *)name { + return NSClassFromString(name) ? : [self classFromMailAppWithName:name]; +} + ++ (CDOCClass *)classFromMailAppWithName:(NSString *)name { + for(id class in [self mailClasses]) + if([[class name] isEqualToString:name]) + return class; + return nil; +} + ++ (BOOL)class:(id)class respondsToSelectorWithName:(NSString *)selectorName { + if(![class isKindOfClass:[NSClassFromString(@"CDOCClass") class]]) + return [class respondsToSelector:NSSelectorFromString(selectorName)]; + + __block BOOL found = NO; + [[class classMethods] enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { + if([[obj name] isEqualToString:selectorName]) { + found = YES; + *stop = YES; + } + }]; + return found; +} + ++ (BOOL)instancesOfClass:(id)class respondToSelectorWithName:(NSString *)selectorName { + if(![class isKindOfClass:[NSClassFromString(@"CDOCClass") class]]) + return class_getInstanceMethod(class, NSSelectorFromString(selectorName)) != NULL; + + __block BOOL found = NO; + [[class instanceMethods] enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { + if([[obj name] isEqualToString:selectorName]) { + found = YES; + *stop = YES; + } + }]; + return found; +} + + +@end diff --git a/Unit Tests/Unit Tests-Info.plist b/Unit Tests/Unit Tests-Info.plist new file mode 100644 index 00000000..bff1e6c5 --- /dev/null +++ b/Unit Tests/Unit Tests-Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + org.gpgtools.gpgmail.${PRODUCT_NAME:rfc1034identifier} + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + + diff --git a/Unit Tests/Unit Tests-Prefix.pch b/Unit Tests/Unit Tests-Prefix.pch new file mode 100644 index 00000000..926a42b4 --- /dev/null +++ b/Unit Tests/Unit Tests-Prefix.pch @@ -0,0 +1,9 @@ +// +// Prefix header +// +// The contents of this file are implicitly included at the beginning of every source file. +// + +#ifdef __OBJC__ + #import +#endif diff --git a/Unit Tests/cd-bundle.bundle/Contents/Info.plist b/Unit Tests/cd-bundle.bundle/Contents/Info.plist new file mode 100644 index 00000000..c19d3f7d --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Info.plist @@ -0,0 +1,58 @@ + + + + + BuildMachineOSBuild + 12E55 + CFBundleDevelopmentRegion + English + CFBundleExecutable + cd-bundle + CFBundleIdentifier + org.gpgtools.gpgmail.tests.cd-bundle + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + cd-bundle + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + CFPlugInDynamicRegisterFunction + + CFPlugInDynamicRegistration + NO + CFPlugInFactories + + 00000000-0000-0000-0000-000000000000 + MyFactoryFunction + + CFPlugInTypes + + 00000000-0000-0000-0000-000000000000 + + 00000000-0000-0000-0000-000000000000 + + + CFPlugInUnloadFunction + + DTCompiler + com.apple.compilers.llvm.clang.1_0 + DTPlatformBuild + 5A11314m + DTPlatformVersion + GM + DTSDKBuild + 13A476n + DTSDKName + macosx10.9 + DTXcode + 0500 + DTXcodeBuild + 5A11314m + + diff --git a/Unit Tests/cd-bundle.bundle/Contents/MacOS/cd-bundle b/Unit Tests/cd-bundle.bundle/Contents/MacOS/cd-bundle new file mode 100755 index 00000000..fd8655e6 Binary files /dev/null and b/Unit Tests/cd-bundle.bundle/Contents/MacOS/cd-bundle differ diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDExtensions.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDExtensions.h new file mode 100644 index 00000000..d989f952 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDExtensions.h @@ -0,0 +1,12 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import "CDTopoSortNode.h" +#import "NSArray-CDExtensions.h" +#import "NSData-CDExtensions.h" +#import "NSData-CDExtensions.h" +#import "NSError-CDExtensions.h" +#import "NSScanner-CDExtensions.h" +#import "NSString-CDExtensions.h" diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDFatArch.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDFatArch.h new file mode 100644 index 00000000..9ae796c6 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDFatArch.h @@ -0,0 +1,36 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +#import "CDFile.h" // For CDArch + +@class CDDataCursor; +@class CDFatFile, CDMachOFile; + +@interface CDFatArch : NSObject + +- (id)initWithMachOFile:(CDMachOFile *)machOFile; +- (id)initWithDataCursor:(CDDataCursor *)cursor; + +@property (assign) cpu_type_t cputype; +@property (assign) cpu_subtype_t cpusubtype; +@property (assign) uint32_t offset; +@property (assign) uint32_t size; +@property (assign) uint32_t align; + +@property (nonatomic, readonly) cpu_type_t maskedCPUType; +@property (nonatomic, readonly) cpu_subtype_t maskedCPUSubtype; +@property (nonatomic, readonly) BOOL uses64BitABI; +@property (nonatomic, readonly) BOOL uses64BitLibraries; + +@property (weak) CDFatFile *fatFile; + +@property (nonatomic, readonly) CDArch arch; +@property (nonatomic, readonly) NSString *archName; + +@property (nonatomic, readonly) CDMachOFile *machOFile; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDFatFile.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDFatFile.h new file mode 100644 index 00000000..316fe5bc --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDFatFile.h @@ -0,0 +1,17 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import "CDFile.h" + +@class CDFatArch, CDMachOFile; + +@interface CDFatFile : CDFile + +@property (readonly) NSMutableArray *arches; +@property (nonatomic, readonly) NSArray *archNames; + +- (void)addArchitecture:(CDFatArch *)fatArch; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDFile.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDFile.h new file mode 100644 index 00000000..e3e293b1 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDFile.h @@ -0,0 +1,39 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +#include // For cpu_type_t, cpu_subtype_t + +typedef struct { + cpu_type_t cputype; + cpu_subtype_t cpusubtype; +} CDArch; + +@class CDMachOFile, CDSearchPathState; + +NSString *CDNameForCPUType(cpu_type_t cputype, cpu_subtype_t cpusubtype); +CDArch CDArchFromName(NSString *name); +BOOL CDArchUses64BitABI(CDArch arch); +BOOL CDArchUses64BitLibraries(CDArch arch); + +@interface CDFile : NSObject + +// Returns CDFatFile or CDMachOFile ++ (id)fileWithContentsOfFile:(NSString *)filename searchPathState:(CDSearchPathState *)searchPathState; + +- (id)initWithData:(NSData *)data filename:(NSString *)filename searchPathState:(CDSearchPathState *)searchPathState; + +@property (readonly) NSString *filename; +@property (readonly) NSData *data; +@property (readonly) CDSearchPathState *searchPathState; + +- (BOOL)bestMatchForLocalArch:(CDArch *)oArchPtr; +- (BOOL)bestMatchForArch:(CDArch *)ioArchPtr; +- (CDMachOFile *)machOFileWithArch:(CDArch)arch; + +@property (nonatomic, readonly) NSString *architectureNameDescription; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDMachOFile.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDMachOFile.h new file mode 100644 index 00000000..6f3cb10d --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDMachOFile.h @@ -0,0 +1,93 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import "CDFile.h" + +#include // For cpu_type_t, cpu_subtype_t +#include + +typedef enum : NSUInteger { + CDByteOrder_LittleEndian = 0, + CDByteOrder_BigEndian = 1, +} CDByteOrder; + +@class CDLCSegment, CDMachOFileDataCursor; +@class CDLCDyldInfo, CDLCDylib, CDMachOFile, CDLCSymbolTable, CDLCDynamicSymbolTable, CDLCVersionMinimum, CDLCSourceVersion; + +@protocol CDMachOFileDelegate +- (void)machOFile:(CDMachOFile *)machOFile loadDylib:(CDLCDylib *)dylibCommand; +@end + +@interface CDMachOFile : CDFile + +@property (readonly) CDByteOrder byteOrder; + +@property (readonly) uint32_t magic; +@property (assign) cpu_type_t cputype; +@property (assign) cpu_subtype_t cpusubtype; +@property (readonly) uint32_t filetype; +@property (readonly) uint32_t flags; + +@property (nonatomic, readonly) cpu_type_t maskedCPUType; +@property (nonatomic, readonly) cpu_subtype_t maskedCPUSubtype; + +@property (readonly) NSArray *loadCommands; +@property (readonly) NSArray *dylibLoadCommands; +@property (readonly) NSArray *segments; +@property (readonly) NSArray *runPaths; +@property (readonly) NSArray *dyldEnvironment; +@property (readonly) NSArray *reExportedDylibs; + +@property (strong) CDLCSymbolTable *symbolTable; +@property (strong) CDLCDynamicSymbolTable *dynamicSymbolTable; +@property (strong) CDLCDyldInfo *dyldInfo; +@property (strong) CDLCVersionMinimum *minVersionMacOSX; +@property (strong) CDLCVersionMinimum *minVersionIOS; +@property (strong) CDLCSourceVersion *sourceVersion; + +@property (readonly) BOOL uses64BitABI; +- (NSUInteger)ptrSize; + +- (NSString *)filetypeDescription; +- (NSString *)flagDescription; + +@property (nonatomic, readonly) CDLCDylib *dylibIdentifier; + +- (CDLCSegment *)segmentWithName:(NSString *)segmentName; +- (CDLCSegment *)segmentContainingAddress:(NSUInteger)address; +- (NSString *)stringAtAddress:(NSUInteger)address; + +- (NSUInteger)dataOffsetForAddress:(NSUInteger)address; + +- (const void *)bytes; +- (const void *)bytesAtOffset:(NSUInteger)offset; + +@property (nonatomic, readonly) NSString *importBaseName; + +@property (nonatomic, readonly) BOOL isEncrypted; +@property (nonatomic, readonly) BOOL hasProtectedSegments; +@property (nonatomic, readonly) BOOL canDecryptAllSegments; + +- (NSString *)loadCommandString:(BOOL)isVerbose; +- (NSString *)headerString:(BOOL)isVerbose; + +@property (nonatomic, readonly) NSString *uuidString; +@property (nonatomic, readonly) NSString *archName; + +- (Class)processorClass; +- (void)logInfoForAddress:(NSUInteger)address; + +- (NSString *)externalClassNameForAddress:(NSUInteger)address; +- (BOOL)hasRelocationEntryForAddress:(NSUInteger)address; + +// Checks compressed dyld info on 10.6 or later. +- (BOOL)hasRelocationEntryForAddress2:(NSUInteger)address; +- (NSString *)externalClassNameForAddress2:(NSUInteger)address; + +@property (nonatomic, readonly) BOOL hasObjectiveC1Data; +@property (nonatomic, readonly) BOOL hasObjectiveC2Data; +@property (nonatomic, readonly) Class processorClass; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCCategory.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCCategory.h new file mode 100644 index 00000000..247dd7d7 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCCategory.h @@ -0,0 +1,15 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import "CDOCProtocol.h" + +@interface CDOCCategory : CDOCProtocol + +@property (strong) NSString *className; + +- (NSString *)methodSearchContext; +- (void)recursivelyVisit:(CDVisitor *)visitor; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCClass.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCClass.h new file mode 100644 index 00000000..33b1ca30 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCClass.h @@ -0,0 +1,21 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import "CDOCProtocol.h" + +#import "CDTopologicalSortProtocol.h" + +@interface CDOCClass : CDOCProtocol + +@property (strong) NSString *superClassName; +@property (strong) NSArray *ivars; +@property (assign) BOOL isExported; + +- (void)registerTypesWithObject:(CDTypeController *)typeController phase:(NSUInteger)phase; + +- (NSString *)methodSearchContext; +- (void)recursivelyVisit:(CDVisitor *)visitor; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCIvar.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCIvar.h new file mode 100644 index 00000000..d11de3e0 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCIvar.h @@ -0,0 +1,22 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@class CDType, CDTypeController; + +@interface CDOCIvar : NSObject + +- (id)initWithName:(NSString *)name type:(NSString *)type offset:(NSUInteger)offset; + +@property (readonly) NSString *name; +@property (readonly) NSString *type; +@property (readonly) NSUInteger offset; + +@property (nonatomic, readonly) CDType *parsedType; + +- (void)appendToString:(NSMutableString *)resultString typeController:(CDTypeController *)typeController; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCMethod.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCMethod.h new file mode 100644 index 00000000..6488fc75 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCMethod.h @@ -0,0 +1,25 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@class CDTypeController; + +@interface CDOCMethod : NSObject + +- (id)initWithName:(NSString *)name type:(NSString *)type imp:(NSUInteger)imp; +- (id)initWithName:(NSString *)name type:(NSString *)type; + +@property (readonly) NSString *name; +@property (readonly) NSString *type; +@property (assign) NSUInteger imp; + +- (NSArray *)parsedMethodTypes; + +- (void)appendToString:(NSMutableString *)resultString typeController:(CDTypeController *)typeController; + +- (NSComparisonResult)ascendingCompareByName:(CDOCMethod *)otherMethod; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCModule.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCModule.h new file mode 100644 index 00000000..086e275e --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCModule.h @@ -0,0 +1,18 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@class CDOCSymtab; + +@interface CDOCModule : NSObject + +@property (assign) uint32_t version; +@property (strong) NSString *name; +@property (strong) CDOCSymtab *symtab; + +- (NSString *)formattedString; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCProperty.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCProperty.h new file mode 100644 index 00000000..0497dfe8 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCProperty.h @@ -0,0 +1,35 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@class CDType; + +@interface CDOCProperty : NSObject + +- (id)initWithName:(NSString *)name attributes:(NSString *)attributes; + +@property (readonly) NSString *name; +@property (readonly) NSString *attributeString; +@property (readonly) CDType *type; +@property (readonly) NSArray *attributes; + +@property (strong) NSString *attributeStringAfterType; + +@property (nonatomic, readonly) NSString *defaultGetter; +@property (nonatomic, readonly) NSString *defaultSetter; + +@property (strong) NSString *customGetter; +@property (strong) NSString *customSetter; + +@property (nonatomic, readonly) NSString *getter; +@property (nonatomic, readonly) NSString *setter; + +@property (readonly) BOOL isReadOnly; +@property (readonly) BOOL isDynamic; + +- (NSComparisonResult)ascendingCompareByName:(CDOCProperty *)otherProperty; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCProtocol.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCProtocol.h new file mode 100644 index 00000000..8f2f5905 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCProtocol.h @@ -0,0 +1,48 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@class CDTypeController; +@class CDVisitor, CDVisitorPropertyState; +@class CDOCMethod, CDOCProperty; + +@interface CDOCProtocol : NSObject + +@property (strong) NSString *name; + +@property (readonly) NSArray *protocols; +- (void)addProtocol:(CDOCProtocol *)protocol; +- (void)removeProtocol:(CDOCProtocol *)protocol; +@property (nonatomic, readonly) NSArray *protocolNames; +@property (nonatomic, readonly) NSString *protocolsString; + +@property (nonatomic, readonly) NSArray *classMethods; // TODO: NSArray vs. NSMutableArray +- (void)addClassMethod:(CDOCMethod *)method; + +@property (nonatomic, readonly) NSArray *instanceMethods; +- (void)addInstanceMethod:(CDOCMethod *)method; + +@property (nonatomic, readonly) NSArray *optionalClassMethods; +- (void)addOptionalClassMethod:(CDOCMethod *)method; + +@property (nonatomic, readonly) NSArray *optionalInstanceMethods; +- (void)addOptionalInstanceMethod:(CDOCMethod *)method; + +@property (nonatomic, readonly) NSArray *properties; +- (void)addProperty:(CDOCProperty *)property; + +@property (nonatomic, readonly) BOOL hasMethods; + +- (void)registerTypesWithObject:(CDTypeController *)typeController phase:(NSUInteger)phase; +- (void)registerTypesFromMethods:(NSArray *)methods withObject:(CDTypeController *)typeController phase:(NSUInteger)phase; + +- (NSComparisonResult)ascendingCompareByName:(CDOCProtocol *)otherProtocol; + +- (NSString *)methodSearchContext; + +- (void)visitMethods:(CDVisitor *)visitor propertyState:(CDVisitorPropertyState *)propertyState; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCSymtab.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCSymtab.h new file mode 100644 index 00000000..bb91c57c --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDOCSymtab.h @@ -0,0 +1,18 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@class CDOCCategory, CDOCClass; + +@interface CDOCSymtab : NSObject + +@property (readonly) NSMutableArray *classes; +- (void)addClass:(CDOCClass *)aClass; + +@property (readonly) NSMutableArray *categories; +- (void)addCategory:(CDOCCategory *)category; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDObjectiveC1Processor.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDObjectiveC1Processor.h new file mode 100644 index 00000000..d27a69c1 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDObjectiveC1Processor.h @@ -0,0 +1,30 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import "CDObjectiveCProcessor.h" + +@class CDOCCategory, CDOCClass, CDOCProtocol, CDOCSymtab; + +@interface CDObjectiveC1Processor : CDObjectiveCProcessor + +- (id)initWithMachOFile:(CDMachOFile *)machOFile; + +- (void)process; + +// Formerly private +- (void)processModules; +- (CDOCSymtab *)processSymtabAtAddress:(uint32_t)address; +- (CDOCClass *)processClassDefinitionAtAddress:(uint32_t)address; +- (NSArray *)uniquedProtocolListAtAddress:(uint32_t)address; +- (NSArray *)processMethodsAtAddress:(uint32_t)address; +- (NSArray *)processMethodsAtAddress:(uint32_t)address isFromProtocolDefinition:(BOOL)isFromProtocolDefinition; +- (CDOCCategory *)processCategoryDefinitionAtAddress:(uint32_t)address; +- (CDOCProtocol *)protocolAtAddress:(uint32_t)address; + +- (void)loadProtocols; + +- (CDSection *)objcImageInfoSection; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDObjectiveC2Processor.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDObjectiveC2Processor.h new file mode 100644 index 00000000..ea14b9c7 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDObjectiveC2Processor.h @@ -0,0 +1,30 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import "CDObjectiveCProcessor.h" + +@class CDOCClass, CDOCCategory, CDOCProtocol; + +@interface CDObjectiveC2Processor : CDObjectiveCProcessor + +- (void)loadProtocols; +- (void)loadClasses; +- (void)loadCategories; + +- (CDOCProtocol *)protocolAtAddress:(uint64_t)address; +- (CDOCCategory *)loadCategoryAtAddress:(uint64_t)address; +- (CDOCClass *)loadClassAtAddress:(uint64_t)address; + +- (NSArray *)loadPropertiesAtAddress:(uint64_t)address; +- (NSArray *)loadMethodsOfMetaClassAtAddress:(uint64_t)address; + +- (NSArray *)loadMethodsAtAddress:(uint64_t)address; +- (NSArray *)loadIvarsAtAddress:(uint64_t)address; + +- (NSArray *)uniquedProtocolListAtAddress:(uint64_t)address; + +@property (nonatomic, readonly) CDSection *objcImageInfoSection; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDObjectiveCProcessor.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDObjectiveCProcessor.h new file mode 100644 index 00000000..68c9b638 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDObjectiveCProcessor.h @@ -0,0 +1,46 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@class CDMachOFile, CDSection, CDTypeController; +@class CDClassDump, CDVisitor; +@class CDOCClass, CDOCCategory, CDOCProtocol; + +@interface CDObjectiveCProcessor : NSObject + +- (id)initWithMachOFile:(CDMachOFile *)machOFile; + +@property (readonly) CDMachOFile *machOFile; +@property (nonatomic, readonly) BOOL hasObjectiveCData; +@property (nonatomic, readonly) NSArray *classes; + +@property (nonatomic, readonly) CDSection *objcImageInfoSection; +@property (nonatomic, readonly) NSString *garbageCollectionStatus; + +- (void)addClass:(CDOCClass *)aClass withAddress:(uint64_t)address; +- (CDOCClass *)classWithAddress:(uint64_t)address; + +- (void)addClassesFromArray:(NSArray *)array; +- (void)addCategoriesFromArray:(NSArray *)array; + +- (CDOCProtocol *)protocolWithAddress:(uint64_t)address; +- (void)setProtocol:(CDOCProtocol *)aProtocol withAddress:(uint64_t)address; + +- (CDOCProtocol *)protocolForName:(NSString *)name; + +- (void)addCategory:(CDOCCategory *)category; + +- (void)process; +- (void)loadProtocols; +- (void)loadClasses; +- (void)loadCategories; + +- (void)registerTypesWithObject:(CDTypeController *)typeController phase:(NSUInteger)phase; +- (void)recursivelyVisit:(CDVisitor *)visitor; + +- (void)createUniquedProtocols; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDRelocationInfo.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDRelocationInfo.h new file mode 100644 index 00000000..2b3b48a0 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDRelocationInfo.h @@ -0,0 +1,26 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +#include + +typedef enum : NSUInteger { + CDRelocationInfoSize_8Bit = 0, + CDRelocationInfoSize_16Bit = 1, + CDRelocationInfoSize_32Bit = 2, + CDRelocationInfoSize_64Bit = 3, +} CDRelocationSize; + +@interface CDRelocationInfo : NSObject + +- (id)initWithInfo:(struct relocation_info)info; + +@property (nonatomic, readonly) NSUInteger offset; +@property (nonatomic, readonly) CDRelocationSize size; +@property (nonatomic, readonly) uint32_t symbolnum; +@property (nonatomic, readonly) BOOL isExtern; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDSection.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDSection.h new file mode 100644 index 00000000..f590e779 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDSection.h @@ -0,0 +1,29 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@class CDDataCursor, CDMachOFile, CDLCSegment32; + +@interface CDSection : NSObject + +@property (retain) NSString *segmentName; +@property (retain) NSString *sectionName; + +@property (nonatomic, strong) NSData *data; + +@property (assign) BOOL hasLoadedData; +- (void)loadData; +- (void)unloadData; + +@property (nonatomic, readonly) NSUInteger addr; +@property (nonatomic, readonly) NSUInteger size; + +- (CDMachOFile *)machOFile; + +- (BOOL)containsAddress:(NSUInteger)address; +- (NSUInteger)fileOffsetForAddress:(NSUInteger)address; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDSection32.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDSection32.h new file mode 100644 index 00000000..37139dd9 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDSection32.h @@ -0,0 +1,17 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import "CDSection.h" + +@class CDMachOFileDataCursor, CDLCSegment32; + +@interface CDSection32 : CDSection + +- (id)initWithDataCursor:(CDMachOFileDataCursor *)cursor segment:(CDLCSegment32 *)segment; + +@property (weak, readonly) CDLCSegment32 *segment; +@property (nonatomic, readonly) uint32_t offset; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDSection64.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDSection64.h new file mode 100644 index 00000000..1736ea6e --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDSection64.h @@ -0,0 +1,21 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import "CDSection.h" + +@class CDMachOFileDataCursor, CDLCSegment64; + +@interface CDSection64 : CDSection + +- (id)initWithDataCursor:(CDMachOFileDataCursor *)cursor segment:(CDLCSegment64 *)segment; + +@property (weak, readonly) CDLCSegment64 *segment; + +- (void)loadData; + +- (BOOL)containsAddress:(NSUInteger)address; +- (NSUInteger)fileOffsetForAddress:(NSUInteger)address; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDSymbol.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDSymbol.h new file mode 100644 index 00000000..61fd9531 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDSymbol.h @@ -0,0 +1,45 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +#include + +extern NSString *const ObjCClassSymbolPrefix; + +@class CDMachOFile, CDSection, CDLCDylib; + +@interface CDSymbol : NSObject + +- (id)initWithName:(NSString *)name machOFile:(CDMachOFile *)machOFile nlist32:(struct nlist)nlist32; +- (id)initWithName:(NSString *)name machOFile:(CDMachOFile *)machOFile nlist64:(struct nlist_64)nlist64; + +@property (nonatomic, readonly) uint64_t value; +@property (readonly) NSString *name; +@property (nonatomic, readonly) CDSection *section; +@property (nonatomic, readonly) CDLCDylib *dylibLoadCommand; + +@property (nonatomic, readonly) BOOL isExternal; +@property (nonatomic, readonly) BOOL isPrivateExternal; +@property (nonatomic, readonly) NSUInteger stab; +@property (nonatomic, readonly) NSUInteger type; +@property (nonatomic, readonly) BOOL isDefined; +@property (nonatomic, readonly) BOOL isAbsolute; +@property (nonatomic, readonly) BOOL isInSection; +@property (nonatomic, readonly) BOOL isPrebound; +@property (nonatomic, readonly) BOOL isIndirect; +@property (nonatomic, readonly) BOOL isCommon; +@property (nonatomic, readonly) BOOL isInTextSection; +@property (nonatomic, readonly) BOOL isInDataSection; +@property (nonatomic, readonly) BOOL isInBssSection; +@property (nonatomic, readonly) NSUInteger referenceType; +@property (nonatomic, readonly) NSString *referenceTypeName; +@property (nonatomic, readonly) NSString *shortTypeDescription; +@property (nonatomic, readonly) NSString *longTypeDescription; + +- (NSComparisonResult)compare:(CDSymbol *)aSymbol; +- (NSComparisonResult)nameCompare:(CDSymbol *)aSymbol; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDTopoSortNode.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDTopoSortNode.h new file mode 100644 index 00000000..23b7d84f --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDTopoSortNode.h @@ -0,0 +1,33 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import +#import "CDTopologicalSortProtocol.h" + +typedef enum : NSUInteger { + CDNodeColor_White = 0, + CDNodeColor_Gray = 1, + CDNodeColor_Black = 2, +} CDNodeColor; + +@interface CDTopoSortNode : NSObject + +- (id)initWithObject:(id )object; + +@property (nonatomic, readonly) NSString *identifier; +@property (readonly) id sortableObject; + +- (NSArray *)dependancies; +- (void)addDependancy:(NSString *)identifier; +- (void)removeDependancy:(NSString *)identifier; +- (void)addDependanciesFromArray:(NSArray *)identifiers; +@property (nonatomic, readonly) NSString *dependancyDescription; + +@property (assign) CDNodeColor color; + +- (NSComparisonResult)ascendingCompareByIdentifier:(CDTopoSortNode *)otherNode; +- (void)topologicallySortNodes:(NSDictionary *)nodesByIdentifier intoArray:(NSMutableArray *)sortedArray; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDTopologicalSortProtocol.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDTopologicalSortProtocol.h new file mode 100644 index 00000000..8b001960 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDTopologicalSortProtocol.h @@ -0,0 +1,12 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +// A rather clunky way to avoid warnings in CDTopoSortNode.m regarding -retain not implemented by protocols +@protocol CDTopologicalSort +@property (nonatomic, readonly) NSString *identifier; +@property (nonatomic, readonly) NSArray *dependancies; +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/CDVisitorPropertyState.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDVisitorPropertyState.h new file mode 100644 index 00000000..5e68c7ba --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/CDVisitorPropertyState.h @@ -0,0 +1,21 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@class CDOCProperty; + +@interface CDVisitorPropertyState : NSObject + +- (id)initWithProperties:(NSArray *)properties; + +- (CDOCProperty *)propertyForAccessor:(NSString *)str; + +- (BOOL)hasUsedProperty:(CDOCProperty *)property; +- (void)useProperty:(CDOCProperty *)property; + +@property (nonatomic, readonly) NSArray *remainingProperties; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/NSArray-CDExtensions.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/NSArray-CDExtensions.h new file mode 100644 index 00000000..ef5fee25 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/NSArray-CDExtensions.h @@ -0,0 +1,24 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@interface NSArray (CDExtensions) + +- (NSArray *)reversedArray; + +@end + +@interface NSArray (CDTopoSort) + +- (NSArray *)topologicallySortedArray; + +@end + +@interface NSMutableArray (CDTopoSort) + +- (void)sortTopologically; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/NSData-CDExtensions.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/NSData-CDExtensions.h new file mode 100644 index 00000000..a6f30962 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/NSData-CDExtensions.h @@ -0,0 +1,13 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@interface NSData (CDExtensions) + +- (NSString *)hexString; +- (NSData *)SHA1Digest; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/NSError-CDExtensions.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/NSError-CDExtensions.h new file mode 100644 index 00000000..52be639c --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/NSError-CDExtensions.h @@ -0,0 +1,12 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@interface NSError (CDExtensions) + +@end + +extern NSString *NSErrorDomain_ClassDump; diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/NSScanner-CDExtensions.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/NSScanner-CDExtensions.h new file mode 100644 index 00000000..881ed42d --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/NSScanner-CDExtensions.h @@ -0,0 +1,23 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@interface NSScanner (CDExtensions) + ++ (NSCharacterSet *)cdOtherCharacterSet; ++ (NSCharacterSet *)cdIdentifierStartCharacterSet; ++ (NSCharacterSet *)cdIdentifierCharacterSet; ++ (NSCharacterSet *)cdTemplateTypeCharacterSet; + +- (NSString *)peekCharacter; +- (unichar)peekChar; +- (BOOL)scanCharacter:(unichar *)value; +- (BOOL)scanCharacterFromSet:(NSCharacterSet *)set intoString:(NSString **)value; +- (BOOL)my_scanCharactersFromSet:(NSCharacterSet *)set intoString:(NSString **)value; + +- (BOOL)scanIdentifierIntoString:(NSString **)stringPointer; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/NSString-CDExtensions.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/NSString-CDExtensions.h new file mode 100644 index 00000000..d0a5b3d3 --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/NSString-CDExtensions.h @@ -0,0 +1,33 @@ +// -*- mode: ObjC -*- + +// This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files. +// Copyright (C) 1997-1998, 2000-2001, 2004-2012 Steve Nygard. + +#import + +@interface NSString (CDExtensions) + ++ (NSString *)stringWithFileSystemRepresentation:(const char *)str; ++ (NSString *)spacesIndentedToLevel:(NSUInteger)level; ++ (NSString *)spacesIndentedToLevel:(NSUInteger)level spacesPerLevel:(NSUInteger)spacesPerLevel; ++ (NSString *)stringWithUnichar:(unichar)character; + +- (BOOL)isFirstLetterUppercase; + +- (void)print; + +- (NSString *)executablePathForFilename; + +- (NSString *)SHA1DigestString; + +- (BOOL)hasUnderscoreCapitalPrefix; +- (NSString *)capitalizeFirstCharacter; + +@end + +@interface NSMutableString (CDExtensions) + +- (void)appendSpacesIndentedToLevel:(NSUInteger)level; +- (void)appendSpacesIndentedToLevel:(NSUInteger)level spacesPerLevel:(NSUInteger)spacesPerLevel; + +@end diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/cd_objc2.h b/Unit Tests/cd-bundle.bundle/Contents/Resources/cd_objc2.h new file mode 100644 index 00000000..49b088ff --- /dev/null +++ b/Unit Tests/cd-bundle.bundle/Contents/Resources/cd_objc2.h @@ -0,0 +1,80 @@ +struct cd_objc2_list_header { + uint32_t entsize; + uint32_t count; +}; + +struct cd_objc2_image_info { + uint32_t version; + uint32_t flags; +}; + + +// +// 64-bit, also holding 32-bit +// + +struct cd_objc2_class { + uint64_t isa; + uint64_t superclass; + uint64_t cache; + uint64_t vtable; + uint64_t data; // points to class_ro_t + uint64_t reserved1; + uint64_t reserved2; + uint64_t reserved3; +}; + +struct cd_objc2_class_ro_t { + uint32_t flags; + uint32_t instanceStart; + uint32_t instanceSize; + uint32_t reserved; // *** this field does not exist in the 32-bit version *** + uint64_t ivarLayout; + uint64_t name; + uint64_t baseMethods; + uint64_t baseProtocols; + uint64_t ivars; + uint64_t weakIvarLayout; + uint64_t baseProperties; +}; + +struct cd_objc2_method { + uint64_t name; + uint64_t types; + uint64_t imp; +}; + +struct cd_objc2_ivar { + uint64_t offset; + uint64_t name; + uint64_t type; + uint32_t alignment; + uint32_t size; +}; + +struct cd_objc2_property { + uint64_t name; + uint64_t attributes; +}; + +struct cd_objc2_protocol { + uint64_t isa; + uint64_t name; + uint64_t protocols; + uint64_t instanceMethods; + uint64_t classMethods; + uint64_t optionalInstanceMethods; + uint64_t optionalClassMethods; + uint64_t instanceProperties; // So far, always 0 +}; + +struct cd_objc2_category { + uint64_t name; + uint64_t class; + uint64_t instanceMethods; + uint64_t classMethods; + uint64_t protocols; + uint64_t instanceProperties; + uint64_t v7; + uint64_t v8; +}; diff --git a/Unit Tests/cd-bundle.bundle/Contents/Resources/en.lproj/InfoPlist.strings b/Unit Tests/cd-bundle.bundle/Contents/Resources/en.lproj/InfoPlist.strings new file mode 100644 index 00000000..5e45963c Binary files /dev/null and b/Unit Tests/cd-bundle.bundle/Contents/Resources/en.lproj/InfoPlist.strings differ diff --git a/Unit Tests/en.lproj/InfoPlist.strings b/Unit Tests/en.lproj/InfoPlist.strings new file mode 100644 index 00000000..477b28ff --- /dev/null +++ b/Unit Tests/en.lproj/InfoPlist.strings @@ -0,0 +1,2 @@ +/* Localized versions of Info.plist keys */ + diff --git a/Version.config b/Version.config new file mode 100644 index 00000000..ff065568 --- /dev/null +++ b/Version.config @@ -0,0 +1,5 @@ +MAJOR=2 +MINOR=6 +REVISION=5 + +VERSION="${MAJOR}.${MINOR}${REVISION:+.$REVISION}${PRERELEASE}" diff --git a/create-mail-headers.sh b/create-mail-headers.sh new file mode 100755 index 00000000..54b21637 --- /dev/null +++ b/create-mail-headers.sh @@ -0,0 +1,17 @@ +if [ -z "$1" ]; then + echo "Output directory has to be specified!" + exit 1 +fi + +ROOT="/" +OUTDIR="$1" + +if [[ -n "$2" && -d "$2" ]]; then + ROOT="$2" +fi + +class-dump -I -H -o "$OUTDIR/MailUI" "$ROOT/Applications/Mail.app/Contents/MacOS/Mail" +class-dump -I -H -o "$OUTDIR/EmailAddressing" "$ROOT/System/Library/PrivateFrameworks/EmailAddressing.framework/EmailAddressing" +class-dump -I -H -o "$OUTDIR/MailCore" "$ROOT/System/Library/PrivateFrameworks/MailCore.framework/MailCore" +class-dump -I -H -o "$OUTDIR/MailUIFW" "$ROOT/System/Library/PrivateFrameworks/MailUI.framework" +class-dump -I -H -o "$OUTDIR/MailFW" "$ROOT/System/Library/PrivateFrameworks/Mail.framework"